diff --git a/.cursorignore b/.cursorignore index d79104d045..e69de29bb2 100644 --- a/.cursorignore +++ b/.cursorignore @@ -1,10 +0,0 @@ -# Add directories or file patterns to ignore during indexing (e.g. foo/ or *.csv) -deps/ -build_*/ -build/ -localization/ -sandboxes/ -resources/* -!resources/web/ -!resources/dailytip -!resources/shaders diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 64ede0af2f..9bb40be44d 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,5 +1,5 @@ { - "name": "OrcaSlicer", + "name": "Snapmaker_Orca", "build": { "dockerfile": "Dockerfile", "args": { diff --git a/.doxygen b/.doxygen index fb8ae5f045..401baa876c 100644 --- a/.doxygen +++ b/.doxygen @@ -42,7 +42,7 @@ DOXYFILE_ENCODING = UTF-8 # title of most generated pages and in a few other places. # The default value is: My Project. -PROJECT_NAME = OrcaSlicer +PROJECT_NAME = Snapmaker_Orca # The PROJECT_NUMBER tag can be used to enter a project or revision number. This # could be handy for archiving the generated documentation or if some version @@ -54,14 +54,14 @@ PROJECT_NUMBER = 1.6.3 # for a project that appears at the top of each page and should give viewer a # quick idea about the purpose of the project. Keep the description short. -PROJECT_BRIEF = OrcaSlicer +PROJECT_BRIEF = Snapmaker_Orca # With the PROJECT_LOGO tag one can specify a logo or an icon that is included # in the documentation. The maximum height of the logo should not exceed 55 # pixels and the maximum width should not exceed 200 pixels. Doxygen will copy # the logo to the output directory. -PROJECT_LOGO = ./resources/images/OrcaSlicer_32px.png +PROJECT_LOGO = ./resources/images/Snapmaker_Orca_32px.png # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path # into which the generated documentation will be written. If a relative path is @@ -184,7 +184,7 @@ FULL_PATH_NAMES = YES # will be relative from the directory where doxygen is started. # This tag requires that the tag FULL_PATH_NAMES is set to YES. -STRIP_FROM_PATH = /Users/runner/work/OrcaSlicer/OrcaSlicer +STRIP_FROM_PATH = /Users/runner/work/Snapmaker_Orca/Snapmaker_Orca # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the # path mentioned in the documentation of a class, which tells the reader which @@ -193,7 +193,7 @@ STRIP_FROM_PATH = /Users/runner/work/OrcaSlicer/OrcaSlicer # specify the list of include paths that are normally passed to the compiler # using the -I flag. -STRIP_FROM_INC_PATH = /Users/runner/work/OrcaSlicer/OrcaSlicer +STRIP_FROM_INC_PATH = /Users/runner/work/Snapmaker_Orca/Snapmaker_Orca # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but # less readable) file names. This can be useful is your file systems doesn't @@ -1286,7 +1286,7 @@ GENERATE_HTML = YES # The default directory is: html. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_OUTPUT = OrcaSlicer_Dev_Document +HTML_OUTPUT = Snapmaker_Orca_Dev_Document # The HTML_FILE_EXTENSION tag can be used to specify the file extension for each # generated HTML page (for example: .htm, .php, .asp). diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index b8477e12c6..a45e33dc30 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -5,7 +5,7 @@ body: - type: markdown attributes: value: | - **Thank you for using Orca Slicer and wanting to report a bug.** + **Thank you for using Snapmaker Orca and wanting to report a bug.** Please note that this is not the place to make feature requests or ask for help. For this, please use the [Feature request](https://github.com/SoftFever/OrcaSlicer/issues/new?assignees=&labels=&projects=&template=feature_request.yml) issue type or you can discuss your idea on our [Discord server](https://discord.gg/P4VE9UY9gJ) with others. @@ -21,8 +21,8 @@ body: - type: input id: version attributes: - label: OrcaSlicer Version - description: Which version of Orca Slicer are you running? You can see the full version in `Help` -> `About Orca Slicer`. + label: Snapmaker_Orca Version + description: Which version of Snapmaker Orca are you running? You can see the full version in `Help` -> `About Snapmaker Orca`. placeholder: e.g. 1.9.0 validations: required: true @@ -100,10 +100,10 @@ body: You can export the project file from the application menu in `File`->`Save project as...`, then zip it * A **log file** for crashes and similar issues. You can find your log file here: - Windows: `%APPDATA%\OrcaSlicer\log` or usually `C:\Users\\AppData\Roaming\OrcaSlicer\log` - MacOS: `$HOME/Library/Application Support/OrcaSlicer/log` - Linux: `$HOME/.config/OrcaSlicer/log` - If Orca Slicer still starts, you can also reach this directory from the application menu in `Help` -> `Show Configuration Folder` + Windows: `%APPDATA%\Snapmaker_Orca\log` or usually `C:\Users\\AppData\Roaming\Snapmaker_Orca\log` + MacOS: `$HOME/Library/Application Support/Snapmaker_Orca/log` + Linux: `$HOME/.config/Snapmaker_Orca/log` + If Snapmaker Orca still starts, you can also reach this directory from the application menu in `Help` -> `Show Configuration Folder` You can zip the log directory, or just select the newest logs when this issue happens, and zip them - type: textarea id: file_uploads diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml index 4ae8a24faa..0de4028376 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yml +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -1,5 +1,5 @@ name: 🚀 Feature Request / Enhancement -description: Suggest an improvement to make Orca Slicer even better! +description: Suggest an improvement to make Snapmaker Orca even better! labels: ["enhancement"] body: - type: markdown diff --git a/.github/workflows/build_all.yml b/.github/workflows/build_all.yml index ea72150189..55556c4668 100644 --- a/.github/workflows/build_all.yml +++ b/.github/workflows/build_all.yml @@ -4,6 +4,7 @@ on: push: branches: - main + - 2.2.0 - release/* paths: - 'deps/**' @@ -18,6 +19,7 @@ on: pull_request: branches: - main + - 2.1.0 - release/* paths: - 'deps/**' @@ -106,23 +108,23 @@ jobs: shell: bash - uses: flathub-infra/flatpak-github-actions/flatpak-builder@master with: - bundle: OrcaSlicer-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak - manifest-path: scripts/flatpak/io.github.softfever.OrcaSlicer.yml + bundle: Snapmaker_Orca-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak + manifest-path: scripts/flatpak/io.github.softfever.Snapmaker_Orca.yml cache: true arch: ${{ matrix.variant.arch }} upload-artifact: false - name: Upload artifacts Flatpak uses: actions/upload-artifact@v4 with: - name: OrcaSlicer-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak - path: '/__w/OrcaSlicer/OrcaSlicer/OrcaSlicer-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak' + name: Snapmaker_Orca-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak + path: '/__w/Snapmaker_Orca/Snapmaker_Orca/Snapmaker_Orca-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak' - name: Deploy Flatpak to nightly release if: ${{github.ref == 'refs/heads/main'}} uses: WebFreak001/deploy-nightly@v3.2.0 with: - upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label} + upload_url: https://uploads.github.com/repos/Snapmaker/OrcaSlicer/releases/137995723/assets{?name,label} release_id: 137995723 - asset_path: /__w/OrcaSlicer/OrcaSlicer/OrcaSlicer-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak - asset_name: OrcaSlicer-Linux-flatpak_nightly_${{ matrix.variant.arch }}.flatpak + asset_path: /__w/Snapmaker_Orca/Snapmaker_Orca/Snapmaker_Orca-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak + asset_name: Snapmaker_Orca-Linux-flatpak_nightly_${{ matrix.variant.arch }}.flatpak asset_content_type: application/octet-stream max_releases: 1 # optional, if there are more releases than this matching the asset_name, the oldest ones are going to be deleted diff --git a/.github/workflows/build_deps.yml b/.github/workflows/build_deps.yml index 629fdde2e7..a33b234f2e 100644 --- a/.github/workflows/build_deps.yml +++ b/.github/workflows/build_deps.yml @@ -140,7 +140,7 @@ jobs: path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep_ubuntu_*.tar.gz build_orca: - name: Build OrcaSlicer + name: Build Snapmaker_Orca needs: [build_deps] if: ${{ !cancelled() && !inputs.build-deps-only && inputs.force-build || (inputs.valid-cache == true && needs.build_deps.result == 'skipped') || (inputs.valid-cache != true && success()) }} uses: ./.github/workflows/build_orca.yml diff --git a/.github/workflows/build_orca.yml b/.github/workflows/build_orca.yml index bebcaba1b2..d7224c7765 100644 --- a/.github/workflows/build_orca.yml +++ b/.github/workflows/build_orca.yml @@ -16,13 +16,12 @@ on: jobs: build_orca: - name: Build OrcaSlicer + name: Build Snapmaker_Orca runs-on: ${{ inputs.os }} env: date: ver: ver_pure: - ORCA_UPDATER_SIG_KEY: ${{ secrets.ORCA_UPDATER_SIG_KEY }} steps: - name: Checkout @@ -44,7 +43,7 @@ jobs: - name: Get the version and date on Ubuntu and macOS if: inputs.os != 'windows-latest' run: | - ver_pure=$(grep 'set(SoftFever_VERSION' version.inc | cut -d '"' -f2) + ver_pure=$(grep 'set(Snapmaker_VERSION' version.inc | cut -d '"' -f2) if [[ "${{ github.event_name }}" == "pull_request" ]]; then ver="PR-${{ github.event.number }}" else @@ -67,7 +66,7 @@ jobs: $ver = "PR" + $prNumber } else { $versionContent = Get-Content version.inc -Raw - if ($versionContent -match 'set\(SoftFever_VERSION "(.*?)"\)') { + if ($versionContent -match 'set\(Snapmaker_VERSION "(.*?)"\)') { $ver = $matches[1] } $ver = "V$ver" @@ -102,7 +101,7 @@ jobs: # Thanks to RaySajuuk, it's working now - name: Sign app and notary - if: (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')) && inputs.os == 'macos-14' + if: (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/') || github.ref == 'refs/heads/2.2.0') && inputs.os == 'macos-14' working-directory: ${{ github.workspace }} env: BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }} @@ -119,94 +118,94 @@ jobs: security import $CERTIFICATE_PATH -P $P12_PASSWORD -A -t cert -f pkcs12 -k $KEYCHAIN_PATH security list-keychain -d user -s $KEYCHAIN_PATH security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $P12_PASSWORD $KEYCHAIN_PATH - codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer.app - # Sign OrcaSlicer_profile_validator.app if it exists - if [ -f "${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ]; then - codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app + codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build/universal/Snapmaker_Orca/Snapmaker Orca.app + # Sign Snapmaker_Orca_profile_validator.app if it exists + if [ -f "${{ github.workspace }}/build/universal/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app/Contents/MacOS/Snapmaker_Orca_profile_validator" ]; then + codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build/universal/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app fi - # Create main OrcaSlicer DMG without the profile validator helper - mkdir -p ${{ github.workspace }}/build/universal/OrcaSlicer_dmg - rm -rf ${{ github.workspace }}/build/universal/OrcaSlicer_dmg/* - cp -R ${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer.app ${{ github.workspace }}/build/universal/OrcaSlicer_dmg/ - ln -sfn /Applications ${{ github.workspace }}/build/universal/OrcaSlicer_dmg/Applications - hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build/universal/OrcaSlicer_dmg -ov -format UDZO OrcaSlicer_Mac_universal_${{ env.ver }}.dmg - codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" OrcaSlicer_Mac_universal_${{ env.ver }}.dmg + # Create main Snapmaker Orca DMG without the profile validator helper + mkdir -p ${{ github.workspace }}/build/universal/Snapmaker_Orca_dmg + rm -rf ${{ github.workspace }}/build/universal/Snapmaker_Orca_dmg/* + cp -R ${{ github.workspace }}/build/universal/Snapmaker_Orca/Snapmaker Orca.app ${{ github.workspace }}/build/universal/Snapmaker_Orca_dmg/ + ln -sfn /Applications ${{ github.workspace }}/build/universal/Snapmaker_Orca_dmg/Applications + hdiutil create -volname "Snapmaker_Orca" -srcfolder ${{ github.workspace }}/build/universal/Snapmaker_Orca_dmg -ov -format UDZO Snapmaker_Orca_Mac_universal_${{ env.ver }}.dmg + codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" Snapmaker_Orca_Mac_universal_${{ env.ver }}.dmg - # Create separate OrcaSlicer_profile_validator DMG if the app exists - if [ -f "${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ]; then - mkdir -p ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg - rm -rf ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg/* - cp -R ${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg/ - ln -sfn /Applications ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg/Applications - hdiutil create -volname "OrcaSlicer Profile Validator" -srcfolder ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg -ov -format UDZO OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg - codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg + # Create separate Snapmaker_Orca_profile_validator DMG if the app exists + if [ -f "${{ github.workspace }}/build/universal/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app/Contents/MacOS/Snapmaker_Orca_profile_validator" ]; then + mkdir -p ${{ github.workspace }}/build/universal/Snapmaker_Orca_profile_validator_dmg + rm -rf ${{ github.workspace }}/build/universal/Snapmaker_Orca_profile_validator_dmg/* + cp -R ${{ github.workspace }}/build/universal/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app ${{ github.workspace }}/build/universal/Snapmaker_Orca_profile_validator_dmg/ + ln -sfn /Applications ${{ github.workspace }}/build/universal/Snapmaker_Orca_profile_validator_dmg/Applications + hdiutil create -volname "Snapmaker_Orca Profile Validator" -srcfolder ${{ github.workspace }}/build/universal/Snapmaker_Orca_profile_validator_dmg -ov -format UDZO Snapmaker_Orca_profile_validator_Mac_universal_${{ env.ver }}.dmg + codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" Snapmaker_Orca_profile_validator_Mac_universal_${{ env.ver }}.dmg fi # Notarize main DMG xcrun notarytool store-credentials "notarytool-profile" --apple-id "${{ secrets.APPLE_DEV_ACCOUNT }}" --team-id "${{ secrets.TEAM_ID }}" --password "${{ secrets.APP_PWD }}" - xcrun notarytool submit "OrcaSlicer_Mac_universal_${{ env.ver }}.dmg" --keychain-profile "notarytool-profile" --wait - xcrun stapler staple OrcaSlicer_Mac_universal_${{ env.ver }}.dmg + xcrun notarytool submit "Snapmaker_Orca_Mac_universal_${{ env.ver }}.dmg" --keychain-profile "notarytool-profile" --wait + xcrun stapler staple Snapmaker_Orca_Mac_universal_${{ env.ver }}.dmg # Notarize profile validator DMG if it exists - if [ -f "OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg" ]; then - xcrun notarytool submit "OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg" --keychain-profile "notarytool-profile" --wait - xcrun stapler staple OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg + if [ -f "Snapmaker_Orca_profile_validator_Mac_universal_${{ env.ver }}.dmg" ]; then + xcrun notarytool submit "Snapmaker_Orca_profile_validator_Mac_universal_${{ env.ver }}.dmg" --keychain-profile "notarytool-profile" --wait + xcrun stapler staple Snapmaker_Orca_profile_validator_Mac_universal_${{ env.ver }}.dmg fi - name: Create DMG without notary - if: github.ref != 'refs/heads/main' && inputs.os == 'macos-14' + if: github.ref != 'refs/heads/main' && inputs.os == 'macos-14' && github.ref != 'refs/heads/2.2.0' working-directory: ${{ github.workspace }} run: | - mkdir -p ${{ github.workspace }}/build/universal/OrcaSlicer_dmg - rm -rf ${{ github.workspace }}/build/universal/OrcaSlicer_dmg/* - cp -R ${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer.app ${{ github.workspace }}/build/universal/OrcaSlicer_dmg/ - ln -sfn /Applications ${{ github.workspace }}/build/universal/OrcaSlicer_dmg/Applications - hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build/universal/OrcaSlicer_dmg -ov -format UDZO OrcaSlicer_Mac_universal_${{ env.ver }}.dmg + mkdir -p ${{ github.workspace }}/build/universal/Snapmaker_Orca_dmg + rm -rf ${{ github.workspace }}/build/universal/Snapmaker_Orca_dmg/* + cp -R ${{ github.workspace }}/build/universal/Snapmaker_Orca/Snapmaker Orca.app ${{ github.workspace }}/build/universal/Snapmaker_Orca_dmg/ + ln -sfn /Applications ${{ github.workspace }}/build/universal/Snapmaker_Orca_dmg/Applications + hdiutil create -volname "Snapmaker_Orca" -srcfolder ${{ github.workspace }}/build/universal/Snapmaker_Orca_dmg -ov -format UDZO Snapmaker_Orca_Mac_universal_${{ env.ver }}.dmg - # Create separate OrcaSlicer_profile_validator DMG if the app exists - if [ -f "${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ]; then - mkdir -p ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg - rm -rf ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg/* - cp -R ${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg/ - ln -sfn /Applications ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg/Applications - hdiutil create -volname "OrcaSlicer Profile Validator" -srcfolder ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg -ov -format UDZO OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg + # Create separate Snapmaker_Orca_profile_validator DMG if the app exists + if [ -f "${{ github.workspace }}/build/universal/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app/Contents/MacOS/Snapmaker_Orca_profile_validator" ]; then + mkdir -p ${{ github.workspace }}/build/universal/Snapmaker_Orca_profile_validator_dmg + rm -rf ${{ github.workspace }}/build/universal/Snapmaker_Orca_profile_validator_dmg/* + cp -R ${{ github.workspace }}/build/universal/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app ${{ github.workspace }}/build/universal/Snapmaker_Orca_profile_validator_dmg/ + ln -sfn /Applications ${{ github.workspace }}/build/universal/Snapmaker_Orca_profile_validator_dmg/Applications + hdiutil create -volname "Snapmaker_Orca Profile Validator" -srcfolder ${{ github.workspace }}/build/universal/Snapmaker_Orca_profile_validator_dmg -ov -format UDZO Snapmaker_Orca_profile_validator_Mac_universal_${{ env.ver }}.dmg fi - name: Upload artifacts mac if: inputs.os == 'macos-14' uses: actions/upload-artifact@v4 with: - name: OrcaSlicer_Mac_universal_${{ env.ver }} - path: ${{ github.workspace }}/OrcaSlicer_Mac_universal_${{ env.ver }}.dmg + name: Snapmaker_Orca_Mac_universal_${{ env.ver }} + path: ${{ github.workspace }}/Snapmaker_Orca_Mac_universal_${{ env.ver }}.dmg - - name: Upload OrcaSlicer_profile_validator DMG mac + - name: Upload Snapmaker_Orca_profile_validator DMG mac if: inputs.os == 'macos-14' uses: actions/upload-artifact@v4 with: - name: OrcaSlicer_profile_validator_Mac_universal_DMG_${{ env.ver }} - path: ${{ github.workspace }}/OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg + name: Snapmaker_Orca_profile_validator_Mac_universal_DMG_${{ env.ver }} + path: ${{ github.workspace }}/Snapmaker_Orca_profile_validator_Mac_universal_${{ env.ver }}.dmg if-no-files-found: ignore - name: Deploy Mac release - if: github.ref == 'refs/heads/main' && inputs.os == 'macos-14' + if: (github.ref == 'refs/heads/main' || github.ref == "refs/heads/2.2.0") && inputs.os == 'macos-14' uses: WebFreak001/deploy-nightly@v3.2.0 with: - upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label} - release_id: 137995723 - asset_path: ${{ github.workspace }}/OrcaSlicer_Mac_universal_${{ env.ver }}.dmg - asset_name: OrcaSlicer_Mac_universal_nightly.dmg + upload_url: https://uploads.github.com/repos/Snapmaker/OrcaSlicer/releases/169912305/assets{?name,label} + release_id: 169912305 + asset_path: ${{ github.workspace }}/Snapmaker_Orca_Mac_universal_${{ env.ver }}.dmg + asset_name: Snapmaker_Orca_Mac_universal_nightly.dmg asset_content_type: application/octet-stream max_releases: 1 # optional, if there are more releases than this matching the asset_name, the oldest ones are going to be deleted - - name: Deploy Mac OrcaSlicer_profile_validator DMG release - if: github.ref == 'refs/heads/main' && inputs.os == 'macos-14' + - name: Deploy Mac Snapmaker_Orca_profile_validator DMG release + if: (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/2.2.0') && inputs.os == 'macos-14' uses: WebFreak001/deploy-nightly@v3.2.0 with: - upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label} - release_id: 137995723 - asset_path: ${{ github.workspace }}/OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg - asset_name: OrcaSlicer_profile_validator_Mac_universal_nightly.dmg + upload_url: https://uploads.github.com/repos/Snapmaker/OrcaSlicer/releases/169912305/assets{?name,label} + release_id: 169912305 + asset_path: ${{ github.workspace }}/Snapmaker_Orca_profile_validator_Mac_universal_${{ env.ver }}.dmg + asset_name: Snapmaker_Orca_profile_validator_Mac_universal_nightly.dmg asset_content_type: application/octet-stream max_releases: 1 @@ -239,7 +238,7 @@ jobs: if: inputs.os == 'windows-latest' working-directory: ${{ github.workspace }}/build shell: cmd - run: '"C:/Program Files/7-Zip/7z.exe" a -tzip OrcaSlicer_Windows_${{ env.ver }}_portable.zip ${{ github.workspace }}/build/OrcaSlicer' + run: '"C:/Program Files/7-Zip/7z.exe" a -tzip Snapmaker_Orca_Windows_${{ env.ver }}_portable.zip ${{ github.workspace }}/build/Snapmaker_Orca' - name: Pack PDB if: inputs.os == 'windows-latest' @@ -251,15 +250,15 @@ jobs: if: inputs.os == 'windows-latest' uses: actions/upload-artifact@v4 with: - name: OrcaSlicer_Windows_${{ env.ver }}_portable - path: ${{ github.workspace }}/build/OrcaSlicer + name: Snapmaker_Orca_Windows_${{ env.ver }}_portable + path: ${{ github.workspace }}/build/Snapmaker_Orca - name: Upload artifacts Win installer if: inputs.os == 'windows-latest' uses: actions/upload-artifact@v4 with: - name: OrcaSlicer_Windows_${{ env.ver }} - path: ${{ github.workspace }}/build/OrcaSlicer*.exe + name: Snapmaker_Orca_Windows_${{ env.ver }} + path: ${{ github.workspace }}/build/Snapmaker_Orca*.exe - name: Upload artifacts Win PDB if: inputs.os == 'windows-latest' @@ -268,43 +267,43 @@ jobs: name: PDB path: ${{ github.workspace }}/build/src/Release/Debug_PDB_${{ env.ver }}_for_developers_only.7z - - name: Upload OrcaSlicer_profile_validator Win + - name: Upload Snapmaker_Orca_profile_validator Win if: inputs.os == 'windows-latest' uses: actions/upload-artifact@v4 with: - name: OrcaSlicer_profile_validator_Windows_${{ env.ver }} - path: ${{ github.workspace }}/build/src/Release/OrcaSlicer_profile_validator.exe + name: Snapmaker_Orca_profile_validator_Windows_${{ env.ver }} + path: ${{ github.workspace }}/build/src/Release/Snapmaker_Orca_profile_validator.exe - name: Deploy Windows release portable - if: github.ref == 'refs/heads/main' && inputs.os == 'windows-latest' + if: (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/2.2.0') && inputs.os == 'windows-latest' uses: WebFreak001/deploy-nightly@v3.2.0 with: - upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label} - release_id: 137995723 - asset_path: ${{ github.workspace }}/build/OrcaSlicer_Windows_${{ env.ver }}_portable.zip - asset_name: OrcaSlicer_Windows_nightly_portable.zip + upload_url: https://uploads.github.com/repos/Snapmaker/OrcaSlicer/releases/169912305/assets{?name,label} + release_id: 169912305 + asset_path: ${{ github.workspace }}/build/Snapmaker_Orca_Windows_${{ env.ver }}_portable.zip + asset_name: Snapmaker_Orca_Windows_nightly_portable.zip asset_content_type: application/x-zip-compressed max_releases: 1 - name: Deploy Windows release installer - if: github.ref == 'refs/heads/main' && inputs.os == 'windows-latest' + if: (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/2.2.0') && inputs.os == 'windows-latest' uses: WebFreak001/deploy-nightly@v3.2.0 with: - upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label} - release_id: 137995723 - asset_path: ${{ github.workspace }}/build/OrcaSlicer_Windows_Installer_${{ env.ver }}.exe - asset_name: OrcaSlicer_Windows_Installer_nightly.exe + upload_url: https://uploads.github.com/repos/Snapmaker/OrcaSlicer/releases/169912305/assets{?name,label} + release_id: 169912305 + asset_path: ${{ github.workspace }}/build/Snapmaker_Orca_Windows_Installer_${{ env.ver }}.exe + asset_name: Snapmaker_Orca_Windows_Installer_nightly.exe asset_content_type: application/x-msdownload max_releases: 1 - - name: Deploy Windows OrcaSlicer_profile_validator release - if: github.ref == 'refs/heads/main' && inputs.os == 'windows-latest' + - name: Deploy Windows Snapmaker_Orca_profile_validator release + if: (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/2.2.0') && inputs.os == 'windows-latest' uses: WebFreak001/deploy-nightly@v3.2.0 with: - upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label} - release_id: 137995723 - asset_path: ${{ github.workspace }}/build/src/Release/OrcaSlicer_profile_validator.exe - asset_name: OrcaSlicer_profile_validator_Windows_nightly.exe + upload_url: https://uploads.github.com/repos/Snapmaker/OrcaSlicer/releases/169912305/assets{?name,label} + release_id: 169912305 + asset_path: ${{ github.workspace }}/build/src/Release/Snapmaker_Orca_profile_validator.exe + asset_name: Snapmaker_Orca_profile_validator_Windows_nightly.exe asset_content_type: application/x-msdownload max_releases: 1 @@ -326,7 +325,7 @@ jobs: - name: Install dependencies from build_linux.sh if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04' shell: bash - run: sudo env "ORCA_UPDATER_SIG_KEY=$ORCA_UPDATER_SIG_KEY" ./build_linux.sh -ur + run: sudo ./build_linux.sh -ur - name: Fix permissions if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04' @@ -340,15 +339,15 @@ jobs: ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }} run: | ./build_linux.sh -isr - mv -n ./build/OrcaSlicer_Linux_V${{ env.ver_pure }}.AppImage ./build/OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage - chmod +x ./build/OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage + mv -n ./build/Snapmaker_Orca_Linux_V${{ env.ver_pure }}.AppImage ./build/Snapmaker_Orca_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage + chmod +x ./build/Snapmaker_Orca_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage - name: Build orca_custom_preset_tests - if: github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-24.04' + if: (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/2.2.0') && inputs.os == 'ubuntu-24.04' working-directory: ${{ github.workspace }}/build/src/Release shell: bash run: | - ./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -g 1 + ./Snapmaker_Orca_profile_validator -p ${{ github.workspace }}/resources/profiles -g 1 cd ${{ github.workspace }}/resources/profiles zip -r orca_custom_preset_tests.zip user/ @@ -359,32 +358,32 @@ jobs: ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }} uses: actions/upload-artifact@v4 with: - name: OrcaSlicer_Linux_ubuntu_${{ env.ubuntu-ver }}_${{ env.ver }} - path: './build/OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage' + name: Snapmaker_Orca_Linux_ubuntu_${{ env.ubuntu-ver }}_${{ env.ver }} + path: './build/Snapmaker_Orca_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage' - - name: Upload OrcaSlicer_profile_validator Ubuntu + - name: Upload Snapmaker_Orca_profile_validator Ubuntu if: ${{ ! env.ACT && inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04' }} env: ubuntu-ver: ${{ (inputs.os == 'ubuntu-20.04' && '2004') || (inputs.os == 'ubuntu-24.04' && '2404') || '' }} uses: actions/upload-artifact@v4 with: - name: OrcaSlicer_profile_validator_Linux_ubuntu_${{ env.ubuntu-ver }}_${{ env.ver }} - path: './build/src/Release/OrcaSlicer_profile_validator' + name: Snapmaker_Orca_profile_validator_Linux_ubuntu_${{ env.ubuntu-ver }}_${{ env.ver }} + path: './build/src/Release/Snapmaker_Orca_profile_validator' - name: Deploy Ubuntu release - if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && (inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04') }} + if: ${{ ! env.ACT && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/2.2.0') && (inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04') }} env: ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }} uses: WebFreak001/deploy-nightly@v3.2.0 with: - upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label} - release_id: 137995723 - asset_path: ./build/OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage - asset_name: OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_nightly.AppImage + upload_url: https://uploads.github.com/repos/Snapmaker/OrcaSlicer/releases/169912305/assets{?name,label} + release_id: 169912305 + asset_path: ./build/Snapmaker_Orca_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage + asset_name: Snapmaker_Orca_Linux_AppImage${{ env.ubuntu-ver-str }}_nightly.AppImage asset_content_type: application/octet-stream max_releases: 1 # optional, if there are more releases than this matching the asset_name, the oldest ones are going to be deleted - name: Deploy Ubuntu release - if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-24.04' }} + if: ${{ ! env.ACT && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/2.2.0') && inputs.os == 'ubuntu-24.04' }} uses: rickstaa/action-create-tag@v1 with: tag: "nightly-builds" @@ -392,25 +391,25 @@ jobs: force_push_tag: true message: "nightly-builds" - - name: Deploy Ubuntu OrcaSlicer_profile_validator release - if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && (inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04') }} + - name: Deploy Ubuntu Snapmaker_Orca_profile_validator release + if: ${{ ! env.ACT && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/2.2.0') && (inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04') }} env: ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }} uses: WebFreak001/deploy-nightly@v3.2.0 with: - upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label} - release_id: 137995723 - asset_path: ./build/src/Release/OrcaSlicer_profile_validator - asset_name: OrcaSlicer_profile_validator_Linux${{ env.ubuntu-ver-str }}_nightly + upload_url: https://uploads.github.com/repos/Snapmaker/OrcaSlicer/releases/169912305/assets{?name,label} + release_id: 169912305 + asset_path: ./build/src/Release/Snapmaker_Orca_profile_validator + asset_name: Snapmaker_Orca_profile_validator_Linux${{ env.ubuntu-ver-str }}_nightly asset_content_type: application/octet-stream max_releases: 1 - name: Deploy orca_custom_preset_tests - if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-24.04' }} + if: ${{ ! env.ACT && (github.ref == 'refs/heads/main' || github.ref == 'refs/heads/2.2.0') && inputs.os == 'ubuntu-24.04' }} uses: WebFreak001/deploy-nightly@v3.2.0 with: - upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label} - release_id: 137995723 + upload_url: https://uploads.github.com/repos/Snapmaker/OrcaSlicer/releases/169912305/assets{?name,label} + release_id: 169912305 asset_path: ${{ github.workspace }}/resources/profiles/orca_custom_preset_tests.zip asset_name: orca_custom_preset_tests.zip asset_content_type: application/octet-stream diff --git a/.github/workflows/check_locale.yml b/.github/workflows/check_locale.yml index 5eed883792..3f0b8d9f53 100644 --- a/.github/workflows/check_locale.yml +++ b/.github/workflows/check_locale.yml @@ -25,15 +25,15 @@ jobs: - name: Check translation format run: | echo $PWD - pot_file="./localization/i18n/OrcaSlicer.pot" + pot_file="./localization/i18n/Snapmaker_Orca.pot" for dir in ./localization/i18n/*/ do dir=${dir%*/} # remove the trailing "/" lang=${dir##*/} # extract the language identifier - if [ -f "$dir/OrcaSlicer_${lang}.po" ]; then + if [ -f "$dir/Snapmaker_Orca_${lang}.po" ]; then mkdir -p ./resources/i18n/${lang}/ - msgfmt --check-format -o ./resources/i18n/${lang}/OrcaSlicer.mo $dir/OrcaSlicer_${lang}.po + msgfmt --check-format -o ./resources/i18n/${lang}/Snapmaker_Orca.mo $dir/Snapmaker_Orca_${lang}.po # Check the exit status of the msgfmt command if [ $? -ne 0 ]; then echo "Error encountered with msgfmt command for language ${lang}." diff --git a/.github/workflows/check_profiles.yml b/.github/workflows/check_profiles.yml index f1d75d818f..047bb92a0e 100644 --- a/.github/workflows/check_profiles.yml +++ b/.github/workflows/check_profiles.yml @@ -31,20 +31,20 @@ jobs: - name: Download working-directory: ${{ github.workspace }} run: | - curl -LJO https://github.com/SoftFever/Orca_tools/releases/download/1/OrcaSlicer_profile_validator - chmod +x ./OrcaSlicer_profile_validator + curl -LJO https://github.com/SoftFever/Orca_tools/releases/download/1/Snapmaker_Orca_profile_validator + chmod +x ./Snapmaker_Orca_profile_validator # validate profiles - name: validate system profiles run: | - ./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2 + ./Snapmaker_Orca_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2 - name: validate custom presets working-directory: ${{ github.workspace }} run: | curl -LJO https://github.com/SoftFever/OrcaSlicer/releases/download/nightly-builds/orca_custom_preset_tests.zip unzip ./orca_custom_preset_tests.zip -d ${{ github.workspace }}/resources/profiles - ./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2 + ./Snapmaker_Orca_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2 diff --git a/.gitignore b/.gitignore index 9c59ebdab5..239289a502 100644 --- a/.gitignore +++ b/.gitignore @@ -26,7 +26,7 @@ deps/build*/* install_* build_*/ SVG -src/OrcaSlicer-doc/ +src/Snapmaker_Orca-doc/ .idea/ /.cache/ *.mo diff --git a/.idea/OrcaSlicer.iml b/.idea/OrcaSlicer.iml deleted file mode 100644 index f08604bb65..0000000000 --- a/.idea/OrcaSlicer.iml +++ /dev/null @@ -1,2 +0,0 @@ - - \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index f58a5876ed..f952571c3a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -53,7 +53,7 @@ if (APPLE) message(STATUS "CMAKE_OSX_DEPLOYMENT_TARGET: ${CMAKE_OSX_DEPLOYMENT_TARGET}") endif () -project(OrcaSlicer) +project(Snapmaker_Orca) include("version.inc") include(GNUInstallDirs) @@ -89,11 +89,11 @@ else() endif() endif() -option(SLIC3R_STATIC "Compile OrcaSlicer with static libraries (Boost, TBB, glew)" ${SLIC3R_STATIC_INITIAL}) -option(SLIC3R_GUI "Compile OrcaSlicer with GUI components (OpenGL, wxWidgets)" 1) -option(SLIC3R_FHS "Assume OrcaSlicer is to be installed in a FHS directory structure" 0) +option(SLIC3R_STATIC "Compile Snapmaker_Orca with static libraries (Boost, TBB, glew)" ${SLIC3R_STATIC_INITIAL}) +option(SLIC3R_GUI "Compile Snapmaker_Orca with GUI components (OpenGL, wxWidgets)" 1) +option(SLIC3R_FHS "Assume Snapmaker_Orca is to be installed in a FHS directory structure" 0) option(SLIC3R_WX_STABLE "Build against wxWidgets stable (3.0) as oppsed to dev (3.1) on Linux" 0) -option(SLIC3R_PROFILE "Compile OrcaSlicer with an invasive Shiny profiler" 0) +option(SLIC3R_PROFILE "Compile Snapmaker_Orca with an invasive Shiny profiler" 0) option(SLIC3R_PCH "Use precompiled headers" 1) option(SLIC3R_MSVC_COMPILE_PARALLEL "Compile on Visual Studio in parallel" 1) option(SLIC3R_MSVC_PDB "Generate PDB files on MSVC in Release mode" 1) @@ -127,7 +127,7 @@ if (APPLE) if (CMAKE_MACOSX_BUNDLE) set(CMAKE_INSTALL_RPATH @executable_path/../Frameworks) endif() - SET(CMAKE_XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER "com.softfever3d.orca-slicer") + SET(CMAKE_XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER "com.snapmaker.snapmaker-orca") message(STATUS "Orca: IS_CROSS_COMPILE: ${IS_CROSS_COMPILE}") endif () @@ -201,7 +201,7 @@ if (MINGW) endif () if (NOT MSVC) - # ARMs (Raspberry PI) use an unsigned char by default. Let's make it consistent for OrcaSlicer on all platforms. + # ARMs (Raspberry PI) use an unsigned char by default. Let's make it consistent for Snapmaker_Orca on all platforms. add_compile_options(-fsigned-char) endif () @@ -236,7 +236,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON) if(NOT WIN32) # Add DEBUG flags to debug builds. - add_compile_definitions("$,DEBUG,NDEBUG>") + add_compile_options("$<$:-DDEBUG>") endif() # To be able to link libslic3r with the Perl XS module. @@ -421,7 +421,7 @@ if(WIN32) if(MSVC) # BOOST_ALL_NO_LIB: Avoid the automatic linking of Boost libraries on Windows. Rather rely on explicit linking. add_definitions(-DBOOST_ALL_NO_LIB -DBOOST_USE_WINAPI_VERSION=0x602 -DBOOST_SYSTEM_USE_UTF8 ) - # Force the source code encoding to UTF-8. See OrcaSlicer GH pull request #5583 + # Force the source code encoding to UTF-8. See Snapmaker_Orca GH pull request #5583 add_compile_options("$<$:/utf-8>") add_compile_options("$<$:/utf-8>") endif(MSVC) @@ -433,7 +433,7 @@ add_definitions(-DwxUSE_UNICODE -D_UNICODE -DUNICODE -DWXINTL_NO_GETTEXT_MACRO) add_definitions(-DwxNO_UNSAFE_WXSTRING_CONV) if (SLIC3R_PROFILE) - message("OrcaSlicer will be built with a Shiny invasive profiler") + message("Snapmaker_Orca will be built with a Shiny invasive profiler") add_definitions(-DSLIC3R_PROFILE) endif () @@ -631,7 +631,7 @@ set(BBL_L18N_DIR "${CMAKE_CURRENT_SOURCE_DIR}/localization/i18n") add_custom_target(gettext_make_pot COMMAND xgettext --keyword=L --keyword=_L --keyword=_u8L --keyword=L_CONTEXT:1,2c --keyword=_L_PLURAL:1,2 --add-comments=TRN --from-code=UTF-8 --no-location --debug --boost -f "${BBL_L18N_DIR}/list.txt" - -o "${BBL_L18N_DIR}/OrcaSlicer.pot" + -o "${BBL_L18N_DIR}/Snapmaker_Orca.pot" COMMAND hintsToPot ${SLIC3R_RESOURCES_DIR} ${BBL_L18N_DIR} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} COMMENT "Generate pot file from strings in the source tree" @@ -640,13 +640,13 @@ add_custom_target(gettext_merge_po_with_pot WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} COMMENT "Merge localization po with new generted pot file" ) -file(GLOB BBL_L10N_PO_FILES "${BBL_L18N_DIR}/*/OrcaSlicer*.po") +file(GLOB BBL_L10N_PO_FILES "${BBL_L18N_DIR}/*/Snapmaker_Orca*.po") foreach(po_file ${BBL_L10N_PO_FILES}) GET_FILENAME_COMPONENT(po_dir "${po_file}" DIRECTORY) - SET(po_new_file "${po_dir}/OrcaSlicer_.po") + SET(po_new_file "${po_dir}/Snapmaker_Orca_.po") add_custom_command( TARGET gettext_merge_po_with_pot PRE_BUILD - COMMAND msgmerge -N -o ${po_file} ${po_file} "${BBL_L18N_DIR}/OrcaSlicer.pot" + COMMAND msgmerge -N -o ${po_file} ${po_file} "${BBL_L18N_DIR}/Snapmaker_Orca.pot" DEPENDS ${po_file} ) endforeach() @@ -654,11 +654,11 @@ add_custom_target(gettext_po_to_mo WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} COMMENT "Generate localization po files (binary) from mo files (texts)" ) -file(GLOB L10N_PO_FILES "${BBL_L18N_DIR}/*/OrcaSlicer*.po") +file(GLOB L10N_PO_FILES "${BBL_L18N_DIR}/*/Snapmaker_Orca*.po") foreach(po_file ${BBL_L10N_PO_FILES}) GET_FILENAME_COMPONENT(SECOND_FOLDER_ABSOLUTE ${po_file} DIRECTORY) string(REGEX REPLACE ".*/(.*)" "\\1" po_dir "${SECOND_FOLDER_ABSOLUTE}" ) - SET(mo_file "${L10N_DIR}/${po_dir}/OrcaSlicer.mo") + SET(mo_file "${L10N_DIR}/${po_dir}/Snapmaker_Orca.mo") add_custom_command( TARGET gettext_po_to_mo PRE_BUILD COMMAND msgfmt ARGS --check-format -o ${mo_file} ${po_file} @@ -699,7 +699,7 @@ else() endif() set(TOP_LEVEL_PROJECT_DIR ${PROJECT_SOURCE_DIR}) -function(orcaslicer_copy_dlls target config postfix output_dlls) +function(Snapmaker_Orca_copy_dlls target config postfix output_dlls) if ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "AMD64") set(_arch "x64") elseif ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "X86") @@ -799,7 +799,7 @@ endfunction() # libslic3r, OrcaSlicer GUI and the OrcaSlicer executable. add_subdirectory(deps_src) add_subdirectory(src) -set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT OrcaSlicer_app_gui) +set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT Snapmaker_Orca_app_gui) add_dependencies(gettext_make_pot hintsToPot) @@ -819,7 +819,7 @@ if(BUILD_TESTS) endif() if (NOT WIN32 AND NOT APPLE) - set(SLIC3R_APP_CMD "orca-slicer") + set(SLIC3R_APP_CMD "snapmaker-orca") configure_file(${LIBDIR}/dev-utils/platform/unix/build_appimage.sh.in ${CMAKE_CURRENT_BINARY_DIR}/build_appimage.sh USE_SOURCE_PERMISSIONS @ONLY) endif() @@ -832,49 +832,49 @@ if (WIN32) install (PROGRAMS ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS} DESTINATION ".") elseif (SLIC3R_FHS) # CMAKE_INSTALL_FULL_DATAROOTDIR: read-only architecture-independent data root (share) - set(SLIC3R_FHS_RESOURCES "${CMAKE_INSTALL_FULL_DATAROOTDIR}/OrcaSlicer") + set(SLIC3R_FHS_RESOURCES "${CMAKE_INSTALL_FULL_DATAROOTDIR}/Snapmaker_Orca") install(DIRECTORY ${SLIC3R_RESOURCES_DIR}/ DESTINATION ${SLIC3R_FHS_RESOURCES} PATTERN "*/udev" EXCLUDE ) - install(FILES src/dev-utils/platform/unix/OrcaSlicer.desktop DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/applications) + install(FILES src/dev-utils/platform/unix/Snapmaker_Orca.desktop DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/applications) foreach(SIZE 32 128 192) - install(FILES ${SLIC3R_RESOURCES_DIR}/images/OrcaSlicer_${SIZE}px.png - DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/${SIZE}x${SIZE}/apps RENAME OrcaSlicer.png + install(FILES ${SLIC3R_RESOURCES_DIR}/images/Snapmaker_Orca_${SIZE}px.png + DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/${SIZE}x${SIZE}/apps RENAME Snapmaker_Orca.png ) endforeach() elseif (CMAKE_MACOSX_BUNDLE) - # install(DIRECTORY "${SLIC3R_RESOURCES_DIR}/" DESTINATION "${CMAKE_INSTALL_PREFIX}/OrcaSlicer.app/Contents/resources") + # install(DIRECTORY "${SLIC3R_RESOURCES_DIR}/" DESTINATION "${CMAKE_INSTALL_PREFIX}/Snapmaker Orca.app/Contents/resources") else () - install(FILES src/dev-utils/platform/unix/OrcaSlicer.desktop DESTINATION ${CMAKE_INSTALL_PREFIX}/resources/applications) + install(FILES src/dev-utils/platform/unix/Snapmaker_Orca.desktop DESTINATION ${CMAKE_INSTALL_PREFIX}/resources/applications) install(DIRECTORY "${SLIC3R_RESOURCES_DIR}/" DESTINATION "${CMAKE_INSTALL_PREFIX}/resources") endif () install(FILES ${CMAKE_SOURCE_DIR}/LICENSE.txt DESTINATION ".") configure_file(${LIBDIR}/dev-utils/platform/unix/fhs.hpp.in ${LIBDIR_BIN}/dev-utils/platform/unix/fhs.hpp) -set (CPACK_PACKAGE_NAME "OrcaSlicer") -set (CPACK_PACKAGE_VENDOR "SoftFever") +set (CPACK_PACKAGE_NAME "Snapmaker_Orca") +set (CPACK_PACKAGE_VENDOR "Snapmaker") set (CPACK_PACKAGE_VERSION_MAJOR "${ORCA_VERSION_MAJOR}") set (CPACK_PACKAGE_VERSION_MINOR "${ORCA_VERSION_MINOR}") set (CPACK_PACKAGE_VERSION_PATCH "${ORCA_VERSION_PATCH}") -set (CPACK_PACKAGE_FILE_NAME "OrcaSlicer_Windows_Installer_V${SoftFever_VERSION}") -set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Orca Slicer is an open source slicer for FDM printers") -set (CPACK_PACKAGE_HOMEPAGE_URL "https://github.com/SoftFever/OrcaSlicer") +set (CPACK_PACKAGE_FILE_NAME "Snapmaker_Orca_Windows_Installer_V${Snapmaker_VERSION}") +set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Snapmaker Orca is an open source slicer for FDM printers") +set (CPACK_PACKAGE_HOMEPAGE_URL "https://github.com/Snapmaker/OrcaSlicer") set (CPACK_PACKAGE_INSTALL_DIRECTORY ${CPACK_PACKAGE_NAME}) -set (CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/resources/images\\\\OrcaSlicer.ico") +set (CPACK_PACKAGE_ICON "${CMAKE_SOURCE_DIR}/resources/images\\\\Snapmaker_Orca.ico") set (CPACK_NSIS_MUI_ICON "${CPACK_PACKAGE_ICON}") set (CPACK_NSIS_MUI_UNIICON "${CPACK_PACKAGE_ICON}") -set (CPACK_NSIS_INSTALLED_ICON_NAME "$INSTDIR\\\\orca-slicer.exe") +set (CPACK_NSIS_INSTALLED_ICON_NAME "$INSTDIR\\\\snapmaker orca.exe") set(CPACK_NSIS_EXTRA_INSTALL_COMMANDS " - CreateShortCut \\\"$DESKTOP\\\\OrcaSlicer.lnk\\\" \\\"$INSTDIR\\\\orca-slicer.exe\\\" + CreateShortCut \\\"$DESKTOP\\\\Snapmaker Orca.lnk\\\" \\\"$INSTDIR\\\\snapmaker-orca.exe\\\" ") set (CPACK_PACKAGE_CHECKSUM SHA256) -set (CPACK_PACKAGE_INSTALL_REGISTRY_KEY "OrcaSlicer") +set (CPACK_PACKAGE_INSTALL_REGISTRY_KEY "Snapmaker_Orca") set (CPACK_NSIS_ENABLE_UNINSTALL_BEFORE_INSTALL ON) set (CPACK_NSIS_EXECUTABLES_DIRECTORY ".") # set (CPACK_NSIS_MODIFY_PATH "ON") -set(CPACK_PACKAGE_EXECUTABLES "orca-slicer;OrcaSlicer") -set(CPACK_CREATE_DESKTOP_LINKS "orca-slicer") +set(CPACK_PACKAGE_EXECUTABLES "snapmaker-orca;Snapmaker Orca") +set(CPACK_CREATE_DESKTOP_LINKS "snapmaker-orca") set (CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/LICENSE.txt) # must also include in install command set(CPACK_WIX_UPGRADE_GUID "058245e8-20e0-4a95-9ab7-1acfe17ad511") diff --git a/README.md b/README.md index ca3666da50..3388d905d4 100644 --- a/README.md +++ b/README.md @@ -1,157 +1,84 @@ -
- - OrcaSlicer logo - +

Snapmaker Orca

-SoftFever%2FOrcaSlicer | Trendshift +[![Build all](https://github.com/Snapmaker/OrcaSlicer/actions/workflows/build_all.yml/badge.svg?branch=main)](https://github.com/Snapmaker/OrcaSlicer/actions/workflows/build_all.yml) +
Snapmaker Orca is an open source slicer for FDM printers based on OrcaSlicer. + -[![GitHub Repo stars](https://img.shields.io/github/stars/SoftFever/OrcaSlicer)](https://github.com/SoftFever/OrcaSlicer/stargazers) [![Build all](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_all.yml/badge.svg?branch=main)](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_all.yml) - -OrcaSlicer: an open source Next-Gen Slicing Software for Precision 3D Prints. -Optimize your prints with ultra-fast slicing, intelligent support generation, and seamless printer compatibility—engineered for perfection. -

- -# Official links and community - -#### Official Website: -OrcaSlicer.com - -#### Github Repository: -GitHub Logo - -#### Follow us: -X Logo - -#### Join our Discord community: -discord logo - - - - - -
-⚠️ CAUTION:

-There are several clickbait and malicious websites pretending to be Official OrcaSlicer. These sites may redirect you to dangerous downloads or contain misleading information. -

-If you come across any of these in search results, please report them as unsafe or phishing to help keep the community secure. -
- -

- -# Main features - -- **[Advanced Calibration Tools](https://github.com/SoftFever/OrcaSlicer/wiki/Calibration)** - Comprehensive suite: temperature towers, flow rate, retraction & more for optimal performance. -- **[Precise Wall](https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_precision#precise-wall) and [Seam Control](https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_seam)** - Adjust outer wall spacing and apply scarf seams to enhance print accuracy. -- **[Sandwich Mode](https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_wall_and_surfaces#innerouterinner) and [Polyholes](https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_precision#polyholes) Support** - Use varied infill [patterns](https://github.com/SoftFever/OrcaSlicer/wiki/strength_settings_patterns) and accurate hole shapes for improved clarity. -- **[Overhang](https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_overhangs) and [Support Optimization](https://github.com/SoftFever/OrcaSlicer/wiki#support-settings)** - Modify geometry for printable overhangs with precise support placement. -- **[Granular Controls](https://github.com/SoftFever/OrcaSlicer/wiki#process-settings) and Customization** - Fine-tune print speed, layer height, pressure, and temperature with precision. -- **Network Printer Support** - Seamless integration with Klipper, PrusaLink, and OctoPrint for remote control. -- **[Mouse Ear Brims](https://github.com/SoftFever/OrcaSlicer/wiki/others_settings_brim) & Adaptive Bed Mesh** - Automatic brims and adaptive mesh calibration ensure consistent adhesion. -- **User-Friendly Interface** - Intuitive drag-and-drop design with pre-made profiles for popular printers. -- **[Open-Source](https://github.com/SoftFever/OrcaSlicer) & [Community Driven](https://discord.gg/P4VE9UY9gJ)** - Regular updates fueled by continuous community contributions. -- **Wide Printer Compatibility** - Supports a broad range of printers: Bambu Lab, Prusa, Creality, Voron, and more. -- Additional features can be found in the [change notes](https://github.com/SoftFever/OrcaSlicer/releases/). - -# Wiki - -The wiki below aims to provide a detailed explanation of the slicer settings, including how to maximize their use and how to calibrate and set up your printer. - -Please note that the wiki is a work in progress. We appreciate your patience as we continue to develop and improve it! - -- **[Access the wiki here](https://github.com/SoftFever/OrcaSlicer/wiki)** -- **[Contribute to the wiki](https://github.com/SoftFever/OrcaSlicer/wiki/How-to-wiki)** # Download -## Stable Release - -📥 **[Download the Latest Stable Release](https://github.com/SoftFever/OrcaSlicer/releases/latest)** -Visit our GitHub Releases page for the latest stable version of OrcaSlicer, recommended for most users. - -## Nightly Builds - -🌙 **[Download the Latest Nightly Build](https://github.com/SoftFever/OrcaSlicer/releases/tag/nightly-builds)** -Explore the latest developments in OrcaSlicer with our nightly builds. Feedback on these versions is highly appreciated. +### Stable Release +📥 **[Download the Latest Stable Release](https://github.com/Snapmaker/OrcaSlicer/releases/latest)** +Visit our GitHub Releases page for the latest stable version of Snapmaker Slicer, recommended for most users. # How to install - -## Windows - -Download the **Windows Installer exe** for your preferred version from the [releases page](https://github.com/SoftFever/OrcaSlicer/releases). - - - *For convenience there is also a portable build available.* -
- Troubleshooting - +**Windows**: +1. Download the installer for your preferred version from the [releases page](https://github.com/Snapmaker/OrcaSlicer/releases). + - *For convenience there is also a portable build available.* - *If you have troubles to run the build, you might need to install following runtimes:* - - [MicrosoftEdgeWebView2RuntimeInstallerX64](https://github.com/SoftFever/OrcaSlicer/releases/download/v1.0.10-sf2/MicrosoftEdgeWebView2RuntimeInstallerX64.exe) - - [Details of this runtime](https://aka.ms/webview2) - - [Alternative Download Link Hosted by Microsoft](https://go.microsoft.com/fwlink/p/?LinkId=2124703) - - [vcredist2019_x64](https://github.com/SoftFever/OrcaSlicer/releases/download/v1.0.10-sf2/vcredist2019_x64.exe) - - [Alternative Download Link Hosted by Microsoft](https://aka.ms/vs/17/release/vc_redist.x64.exe) - - This file may already be available on your computer if you've installed visual studio. Check the following location: `%VCINSTALLDIR%Redist\MSVC\v142` -
- -Windows Package Manager - -```shell -winget install --id=SoftFever.OrcaSlicer -e -``` - -## Mac - -1. Download the DMG for your computer: `arm64` version for Apple Silicon and `x86_64` for Intel CPU. -2. Drag OrcaSlicer.app to Application folder. -3. *If you want to run a build from a PR, you also need to follow the instructions below:* - -
- Quarantine + - [MicrosoftEdgeWebView2RuntimeInstallerX64](https://github.com/SoftFever/OrcaSlicer/releases/download/v1.0.10-sf2/MicrosoftEdgeWebView2RuntimeInstallerX64.exe) + - [Details of this runtime](https://aka.ms/webview2) + - [Alternative Download Link Hosted by Microsoft](https://go.microsoft.com/fwlink/p/?LinkId=2124703) + - [vcredist2019_x64](https://github.com/SoftFever/OrcaSlicer/releases/download/v1.0.10-sf2/vcredist2019_x64.exe) + - [Alternative Download Link Hosted by Microsoft](https://aka.ms/vs/17/release/vc_redist.x64.exe) + - This file may already be available on your computer if you've installed visual studio. Check the following location: `%VCINSTALLDIR%Redist\MSVC\v142` +**Mac**: +1. Download the DMG for your computer: `arm64` version for Apple Silicon and `x86_64` for Intel CPU. +2. Drag OrcaSlicer.app to Application folder. +3. *If you want to run a build from a PR, you also need to follow the instructions below:* +
- Option 1 (You only need to do this once. After that the app can be opened normally.): - Step 1: Hold _cmd_ and right click the app, from the context menu choose **Open**. - - Step 2: A warning window will pop up, click _Open_ - - - Option 2: - Execute this command in terminal: - - ```shell - xattr -dr com.apple.quarantine /Applications/OrcaSlicer.app + - Step 2: A warning window will pop up, click _Open_ + + - Option 2: + Execute this command in terminal: `xattr -dr com.apple.quarantine /Applications/OrcaSlicer.app` + ```console + softfever@mac:~$ xattr -dr com.apple.quarantine /Applications/OrcaSlicer.app ``` - - - Option 3: + - Option 3: - Step 1: open the app, a warning window will pop up - ![mac_cant_open](./SoftFever_doc/mac_cant_open.png) + ![image](./SoftFever_doc/mac_cant_open.png) - Step 2: in `System Settings` -> `Privacy & Security`, click `Open Anyway`: - ![mac_security_setting](./SoftFever_doc/mac_security_setting.png) + ![image](./SoftFever_doc/mac_security_setting.png)
+ +**Linux (Ubuntu)**: + 1. If you run into trouble executing it, try this command in the terminal: + `chmod +x /path_to_appimage/Snapmaker_Orca_Linux.AppImage` + +# How to compile +- Windows 64-bit + - Tools needed: Visual Studio 2019, Cmake, git, git-lfs, Strawberry Perl. + - You will require cmake version 3.14 or later, which is available [on their website](https://cmake.org/download/). + - Strawberry Perl is [available on their GitHub repository](https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/). + - Run `build_release.bat` in `x64 Native Tools Command Prompt for VS 2019` + - Note: Don't forget to run `git lfs pull` after cloning the repository to download tools on Windows -## Linux (Ubuntu) +- Mac 64-bit + - Tools needed: Xcode, Cmake, git, gettext, libtool, automake, autoconf, texinfo + - You can install most of them by running `brew install cmake gettext libtool automake autoconf texinfo` + - run `build_release_macos.sh` + - To build and debug in Xcode: + - run `Xcode.app` + - open ``build_`arch`/OrcaSlicer.Xcodeproj`` + - menu bar: Product => Scheme => OrcaSlicer + - menu bar: Product => Scheme => Edit Scheme... + - Run => Info tab => Build Configuration: `RelWithDebInfo` + - Run => Options tab => Document Versions: uncheck `Allow debugging when browsing versions` + - menu bar: Product => Run - 1. If you run into trouble executing it, try this command in the terminal: - `chmod +x /path_to_appimage/OrcaSlicer_Linux.AppImage` +- Ubuntu + - Dependencies **Will be auto-installed with the shell script**: `libmspack-dev libgstreamerd-3-dev libsecret-1-dev libwebkit2gtk-4.0-dev libosmesa6-dev libssl-dev libcurl4-openssl-dev eglexternalplatform-dev libudev-dev libdbus-1-dev extra-cmake-modules libgtk2.0-dev libglew-dev libudev-dev libdbus-1-dev cmake git texinfo` + - run 'sudo ./BuildLinux.sh -u' + - run './BuildLinux.sh -dsir' -# How to Compile - -All updated build instructions for Windows, macOS, and Linux are now available on the official [OrcaSlicer Wiki - How to build](https://github.com/SoftFever/OrcaSlicer/wiki/How-to-build) page. - -Please refer to the wiki to ensure you're following the latest and most accurate steps for your platform. - -# Klipper Note +# Note: If you're running Klipper, it's recommended to add the following configuration to your `printer.cfg` file. - -```gcode +``` # Enable object exclusion [exclude_object] @@ -160,53 +87,34 @@ If you're running Klipper, it's recommended to add the following configuration t resolution: 0.1 ``` -# Supports - -**OrcaSlicer** is an open-source project and I'm deeply grateful to all my sponsors and backers. -Their generous support enables me to purchase filaments and other essential 3D printing materials for the project. -Thank you! :) - -## Sponsors: - - - - - - -
- - QIDI - - - - BIGTREE TECH - -
- -## Backers: - -**Ko-fi supporters** ☕: [Backers list](https://github.com/user-attachments/files/16147016/Supporters_638561417699952499.csv) - -## Support me - - - - ## Some background +Snapmaker Orca is originally forked from OrcaSlicer. -OrcaSlicer was originally forked from Bambu Studio, it was previously known as BambuStudio-SoftFever. +OrcaSlicer is originally forked from Bambu Studio, it was previously known as BambuStudio-SoftFever. +Bambu Studio is forked from [PrusaSlicer](https://github.com/prusa3d/PrusaSlicer) by Prusa Research, which is from [Slic3r](https://github.com/Slic3r/Slic3r) by Alessandro Ranellucci and the RepRap community. +Orca Slicer incorporates a lot of features from SuperSlicer by @supermerill +Orca Slicer's logo is designed by community member Justin Levine(@freejstnalxndr) -[Bambu Studio](https://github.com/bambulab/BambuStudio) is forked from [PrusaSlicer](https://github.com/prusa3d/PrusaSlicer) by Prusa Research, which is from [Slic3r](https://github.com/Slic3r/Slic3r) by Alessandro Ranellucci and the RepRap community. -OrcaSlicer incorporates a lot of features from [SuperSlicer](https://github.com/supermerill/SuperSlicer) by @supermerill -OrcaSlicer's logo is designed by community member Justin Levine (@freejstnalxndr). # License +Snapmaker Orca is licensed under the GNU Affero General Public License, version 3. Orca Slicer is based on OrcaSlicer by SoftFever -- **OrcaSlicer** is licensed under the GNU Affero General Public License, version 3. OrcaSlicer is based on Bambu Studio by BambuLab. -- **Bambu Studio** is licensed under the GNU Affero General Public License, version 3. Bambu Studio is based on PrusaSlicer by PrusaResearch. -- **PrusaSlicer** is licensed under the GNU Affero General Public License, version 3. PrusaSlicer is owned by Prusa Research. PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci. -- **Slic3r** is licensed under the GNU Affero General Public License, version 3. Slic3r was created by Alessandro Ranellucci with the help of many other contributors. -- The **GNU Affero General Public License**, version 3 ensures that if you use any part of this software in any way (even behind a web server), your software must be released under the same license. -- OrcaSlicer includes a **pressure advance calibration pattern test** adapted from Andrew Ellis' generator, which is licensed under GNU General Public License, version 3. Ellis' generator is itself adapted from a generator developed by Sineos for Marlin, which is licensed under GNU General Public License, version 3. -- The **Bambu networking plugin** is based on non-free libraries from BambuLab. It is optional to the OrcaSlicer and provides extended functionalities for Bambulab printer users. +Orca Slicer is licensed under the GNU Affero General Public License, version 3. Orca Slicer is based on Bambu Studio by BambuLab. + +Bambu Studio is licensed under the GNU Affero General Public License, version 3. Bambu Studio is based on PrusaSlicer by PrusaResearch. + +PrusaSlicer is licensed under the GNU Affero General Public License, version 3. PrusaSlicer is owned by Prusa Research. PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci. + +Slic3r is licensed under the GNU Affero General Public License, version 3. Slic3r was created by Alessandro Ranellucci with the help of many other contributors. + +The GNU Affero General Public License, version 3 ensures that if you use any part of this software in any way (even behind a web server), your software must be released under the same license. + +Orca Slicer includes a pressure advance calibration pattern test adapted from Andrew Ellis' generator, which is licensed under GNU General Public License, version 3. Ellis' generator is itself adapted from a generator developed by Sineos for Marlin, which is licensed under GNU General Public License, version 3. + +The Bambu networking plugin is based on non-free libraries from BambuLab. It is optional to the Orca Slicer and provides extended functionalities for Bambulab printer users. + +# Feedback & Contribution +We greatly value feedback and contributions from our users. Your feedback will help us to further develop Snapmaker Orca for our community. +- To submit a bug or feature request, file an issue in GitHub Issues or email us at support@snapmaker.com. +- To contribute some code, make sure you have read and followed our guidelines for contributing. diff --git a/SECURITY.md b/SECURITY.md index 73f8578620..cd1b813132 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -1,13 +1,7 @@ -# Security Policy +POLICY: Our security policy is to avoid leaving the ecosystem worse than we found it. Meaning we are not planning to introduce vulnerabilities into the ecosystem. +The Snapmaker_Orca team and community take all security bugs in Snapmaker_Orca seriously. Thank you for improving the security of Snapmaker_Orca. We appreciate your efforts to disclose the issue responsibly, and will make every effort to acknowledge your contributions. -At OrcaSlicer, we are committed to maintaining the security of our ecosystem. Our policy is to ensure that we do not introduce vulnerabilities and that any security issues are addressed promptly and responsibly. We appreciate your help in improving the security of OrcaSlicer and thank you for your responsible disclosure. -Reporting Security Bugs - -## To report a security bug, please follow these guidelines: - - * Email Security Bugs: - Send an email to the lead maintainer at softfeverever@gmail.com. - Include the word "SECURITY" in the subject line of your email. +Report security bugs by emailing the lead maintainer at softfeverever@gmail.com and include the word "SECURITY" in the subject line. * Response Times: The lead maintainer will acknowledge receipt of your email within one week (7 days). @@ -17,31 +11,28 @@ Reporting Security Bugs * Information and Collaboration: We may request additional information or guidance as we work on addressing the issue. - * Handling the Report: - OrcaSlicer will confirm the problem and determine the affected versions. - We will audit the code to find any similar issues and prepare fixes for all releases still under maintenance. - Fixes will be released as quickly as possible. +Snapmaker_Orca will confirm the problem and determine the affected versions. +Snapmaker_Orca will audit code to find any similar problems. +Snapmaker_Orca will prepare fixes for all releases still under maintenance. These fixes will be released as fast as possible. +Report security bugs in third-party modules to the person or team maintaining the module. - * Third-Party Modules: - Report security issues in third-party modules to the respective maintainer of those modules. +SECURITY DISCLOSURE: Your responsibility is to report vulnerabilities to us using the guidelines outlined below. +Please give detailed steps on how to disclose the vulnerability. Keep these OWASP guidelines in mind ( https://www.owasp.org/index.php/Vulnerability_Disclosure_Cheat_Sheet ) when creating your disclosure policy. -## Security Disclosure Guidelines +Below are some recommendations for security disclosures: -When disclosing a vulnerability, please follow these steps to ensure your report is clear and actionable: +Snapmaker_Orca security contact { contact: mailto:softfeverever@gmail.com] } +When disclosing vulnerabilities please do the following: +Your name and affiliation (if any). +Include scope of vulnerability. Let us know who could use this exploit. +Document steps to identify the vulnerability. It is important that we can reproduce your findings. +Show how to exploit vulnerability, give us an attack scenario. +Snapmaker_Orca Checklist: Security Recommendations +Follow these steps to improve security when using Snapmaker_Orca. - * Provide Detailed Information: - Scope: Clearly define the scope of the vulnerability. - Potential Impact: Let us know who could be affected by this exploit. - Reproduction Steps: Document detailed steps to reproduce the vulnerability. +...SEE SOMETHING +...SAY SOMETHING +1)...SEE SOMETHING +We suggest you goto #2 if this happens. - Reference OWASP Guidelines: - Follow the OWASP Vulnerability Disclosure Cheat Sheet for best practices in vulnerability disclosure. - -## Security Recommendations - -To enhance security when using OrcaSlicer, we recommend following these steps: - - * SEE SOMETHING: If you notice anything suspicious or have concerns, please report it. - * SAY SOMETHING: If you have any doubts or need assistance, do not hesitate to contact us. - -### Thank you for your commitment to the security of OrcaSlicer. Your efforts help us maintain a safe and reliable ecosystem. +Why? Through experience we have found it is best to goto #2 in this situation. diff --git a/SoftFever_doc/sponsor_logos/Phrozen_Logo圓_.png b/SoftFever_doc/sponsor_logos/Phrozen_Logo圓_.png new file mode 100644 index 0000000000..2bf62bef54 Binary files /dev/null and b/SoftFever_doc/sponsor_logos/Phrozen_Logo圓_.png differ diff --git a/build_linux.sh b/build_linux.sh index a696177938..7058796bcc 100755 --- a/build_linux.sh +++ b/build_linux.sh @@ -246,11 +246,11 @@ if [[ -n "${BUILD_ORCA}" ]] ; then else cmake --build build --config Release --target OrcaSlicer fi - echo "Building OrcaSlicer_profile_validator .." + echo "Building Snapmaker_Orca_profile_validator .." if [[ -n "${BUILD_DEBUG}" ]] ; then - cmake --build build --config Debug --target OrcaSlicer_profile_validator + cmake --build build --config Debug --target Snapmaker_Orca_profile_validator else - cmake --build build --config Release --target OrcaSlicer_profile_validator + cmake --build build --config Release --target Snapmaker_Orca_profile_validator fi ./scripts/run_gettext.sh echo "done" diff --git a/build_release.bat b/build_release.bat index 6317e277c9..3a8a3450c0 100644 --- a/build_release.bat +++ b/build_release.bat @@ -38,13 +38,13 @@ cmake --build . --config %build_type% --target deps -- -m if "%1"=="deps" exit /b 0 :slicer -echo "building Orca Slicer..." +echo "building Snapmaker Orca..." cd %WP% mkdir %build_dir% cd %build_dir% -echo cmake .. -G "Visual Studio 16 2019" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=%build_type% -cmake .. -G "Visual Studio 16 2019" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 %SIG_FLAG% -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=%build_type% -DWIN10SDK_PATH="C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0" +echo cmake .. -G "Visual Studio 16 2019" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./Snapmaker_Orca" -DCMAKE_BUILD_TYPE=%build_type% +cmake .. -G "Visual Studio 16 2019" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 %SIG_FLAG% -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./Snapmaker_Orca" -DCMAKE_BUILD_TYPE=%build_type% -DWIN10SDK_PATH="C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0" cmake --build . --config %build_type% --target ALL_BUILD -- -m cd .. call scripts/run_gettext.bat diff --git a/build_release_macos.sh b/build_release_macos.sh index e336da09c7..b6857974e4 100755 --- a/build_release_macos.sh +++ b/build_release_macos.sh @@ -176,7 +176,7 @@ function build_slicer() { -DORCA_TOOLS=ON \ ${ORCA_UPDATER_SIG_KEY:+-DORCA_UPDATER_SIG_KEY="$ORCA_UPDATER_SIG_KEY"} \ -DCMAKE_PREFIX_PATH="$DEPS/usr/local" \ - -DCMAKE_INSTALL_PREFIX="$PWD/OrcaSlicer" \ + -DCMAKE_INSTALL_PREFIX="$PWD/Snapmaker_Orca" \ -DCMAKE_BUILD_TYPE="$BUILD_CONFIG" \ -DCMAKE_MACOSX_RPATH=ON \ -DCMAKE_INSTALL_RPATH="${DEPS}/usr/local" \ @@ -193,42 +193,42 @@ function build_slicer() { ./scripts/run_gettext.sh ) - echo "Fix macOS app package..." - ( - cd "$PROJECT_BUILD_DIR" - mkdir -p OrcaSlicer - cd OrcaSlicer - # remove previously built app - rm -rf ./OrcaSlicer.app - # fully copy newly built app - cp -pR "../src$BUILD_DIR_CONFIG_SUBDIR/OrcaSlicer.app" ./OrcaSlicer.app - # fix resources - resources_path=$(readlink ./OrcaSlicer.app/Contents/Resources) - rm ./OrcaSlicer.app/Contents/Resources - cp -R "$resources_path" ./OrcaSlicer.app/Contents/Resources - # delete .DS_Store file - find ./OrcaSlicer.app/ -name '.DS_Store' -delete - - # Copy OrcaSlicer_profile_validator.app if it exists - if [ -f "../src$BUILD_DIR_CONFIG_SUBDIR/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ]; then - echo "Copying OrcaSlicer_profile_validator.app..." - rm -rf ./OrcaSlicer_profile_validator.app - cp -pR "../src$BUILD_DIR_CONFIG_SUBDIR/OrcaSlicer_profile_validator.app" ./OrcaSlicer_profile_validator.app + echo "Fix macOS app package..." + ( + cd "$PROJECT_BUILD_DIR" + mkdir -p Snapmaker_Orca + cd Snapmaker_Orca + # remove previously built app + rm -rf "./Snapmaker Orca.app" + # fully copy newly built app + cp -pR "../src$BUILD_DIR_CONFIG_SUBDIR/Snapmaker Orca.app" "./Snapmaker Orca.app" + # fix resources + resources_path=$(readlink "./Snapmaker Orca.app/Contents/Resources") + rm "./Snapmaker Orca.app/Contents/Resources" + cp -R "$resources_path" "./Snapmaker Orca.app/Contents/Resources" + # delete .DS_Store file + find "./Snapmaker Orca.app/" -name '.DS_Store' -delete + + # Copy Snapmaker_Orca_profile_validator.app if it exists + if [ -f "../src$BUILD_DIR_CONFIG_SUBDIR/Snapmaker_Orca_profile_validator.app/Contents/MacOS/Snapmaker_Orca_profile_validator" ]; then + echo "Copying Snapmaker_Orca_profile_validator.app..." + rm -rf ./Snapmaker_Orca_profile_validator.app + cp -pR "../src$BUILD_DIR_CONFIG_SUBDIR/Snapmaker_Orca_profile_validator.app" ./Snapmaker_Orca_profile_validator.app # delete .DS_Store file - find ./OrcaSlicer_profile_validator.app/ -name '.DS_Store' -delete + find ./Snapmaker_Orca_profile_validator.app/ -name '.DS_Store' -delete fi ) - # extract version - # export ver=$(grep '^#define SoftFever_VERSION' ../src/libslic3r/libslic3r_version.h | cut -d ' ' -f3) - # ver="_V${ver//\"}" - # echo $PWD - # if [ "1." != "$NIGHTLY_BUILD". ]; - # then - # ver=${ver}_dev - # fi + # extract version + # export ver=$(grep '^#define Snapmaker_VERSION' ../src/libslic3r/libslic3r_version.h | cut -d ' ' -f3) + # ver="_V${ver//\"}" + # echo $PWD + # if [ "1." != "$NIGHTLY_BUILD". ]; + # then + # ver=${ver}_dev + # fi - # zip -FSr OrcaSlicer${ver}_Mac_${_ARCH}.zip OrcaSlicer.app + # zip -FSr Snapmaker_Orca${ver}_Mac_${_ARCH}.zip OrcaSlicer.app fi done @@ -242,40 +242,40 @@ function build_universal() { # Create universal binary echo "Creating universal binary..." # PROJECT_BUILD_DIR="$PROJECT_DIR/build_Universal" - mkdir -p "$PROJECT_BUILD_DIR/OrcaSlicer" - UNIVERSAL_APP="$PROJECT_BUILD_DIR/OrcaSlicer/OrcaSlicer.app" + mkdir -p "$PROJECT_BUILD_DIR/Snapmaker_Orca" + UNIVERSAL_APP="$PROJECT_BUILD_DIR/Snapmaker_Orca/Snapmaker Orca.app" rm -rf "$UNIVERSAL_APP" - cp -R "$PROJECT_DIR/build/arm64/OrcaSlicer/OrcaSlicer.app" "$UNIVERSAL_APP" + cp -R "$PROJECT_DIR/build/arm64/Snapmaker_Orca/Snapmaker Orca.app" "$UNIVERSAL_APP" # Get the binary path inside the .app bundle - BINARY_PATH="Contents/MacOS/OrcaSlicer" + BINARY_PATH="Contents/MacOS/Snapmaker_Orca" # Create universal binary using lipo lipo -create \ - "$PROJECT_DIR/build/x86_64/OrcaSlicer/OrcaSlicer.app/$BINARY_PATH" \ - "$PROJECT_DIR/build/arm64/OrcaSlicer/OrcaSlicer.app/$BINARY_PATH" \ + "$PROJECT_DIR/build/x86_64/Snapmaker_Orca/Snapmaker Orca.app/$BINARY_PATH" \ + "$PROJECT_DIR/build/arm64/Snapmaker_Orca/Snapmaker Orca.app/$BINARY_PATH" \ -output "$UNIVERSAL_APP/$BINARY_PATH" echo "Universal binary created at $UNIVERSAL_APP" # Create universal binary for profile validator if it exists - if [ -f "$PROJECT_DIR/build/arm64/OrcaSlicer/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ] && \ - [ -f "$PROJECT_DIR/build/x86_64/OrcaSlicer/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ]; then - echo "Creating universal binary for OrcaSlicer_profile_validator..." - UNIVERSAL_VALIDATOR_APP="$PROJECT_BUILD_DIR/OrcaSlicer/OrcaSlicer_profile_validator.app" + if [ -f "$PROJECT_DIR/build/arm64/Snapmaker_Orca/Snapmaker_Orca.app/Contents/MacOS/Snapmaker_Orca_profile_validator" ] && \ + [ -f "$PROJECT_DIR/build/x86_64/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app/Contents/MacOS/Snapmaker_Orca_profile_validator" ]; then + echo "Creating universal binary for Snapmaker_Orca_profile_validator..." + UNIVERSAL_VALIDATOR_APP="$PROJECT_BUILD_DIR/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app" rm -rf "$UNIVERSAL_VALIDATOR_APP" - cp -R "$PROJECT_DIR/build/arm64/OrcaSlicer/OrcaSlicer_profile_validator.app" "$UNIVERSAL_VALIDATOR_APP" + cp -R "$PROJECT_DIR/build/arm64/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app" "$UNIVERSAL_VALIDATOR_APP" # Get the binary path inside the profile validator .app bundle - VALIDATOR_BINARY_PATH="Contents/MacOS/OrcaSlicer_profile_validator" + VALIDATOR_BINARY_PATH="Contents/MacOS/Snapmaker_Orca_profile_validator" # Create universal binary using lipo lipo -create \ - "$PROJECT_DIR/build/x86_64/OrcaSlicer/OrcaSlicer_profile_validator.app/$VALIDATOR_BINARY_PATH" \ - "$PROJECT_DIR/build/arm64/OrcaSlicer/OrcaSlicer_profile_validator.app/$VALIDATOR_BINARY_PATH" \ + "$PROJECT_DIR/build/x86_64/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app/$VALIDATOR_BINARY_PATH" \ + "$PROJECT_DIR/build/arm64/Snapmaker_Orca/Snapmaker_Orca_profile_validator.app/$VALIDATOR_BINARY_PATH" \ -output "$UNIVERSAL_VALIDATOR_APP/$VALIDATOR_BINARY_PATH" - echo "Universal binary for OrcaSlicer_profile_validator created at $UNIVERSAL_VALIDATOR_APP" + echo "Universal binary for Snapmaker_Orca_profile_validator created at $UNIVERSAL_VALIDATOR_APP" fi } diff --git a/build_release_vs2022.bat b/build_release_vs2022.bat index b9c377488f..488f02fe07 100644 --- a/build_release_vs2022.bat +++ b/build_release_vs2022.bat @@ -1,4 +1,4 @@ -@REM OrcaSlicer build script for Windows +@REM Snapmaker_Orca build script for Windows @echo off set WP=%CD% @@ -54,13 +54,13 @@ cmake --build . --config %build_type% --target deps -- -m if "%1"=="deps" exit /b 0 :slicer -echo "building Orca Slicer..." +echo "building Snapmaker Orca..." cd %WP% mkdir %build_dir% cd %build_dir% echo on -cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DORCA_TOOLS=ON %SIG_FLAG% -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=%build_type% -DWIN10SDK_PATH="%WindowsSdkDir%Include\%WindowsSDKVersion%\" +cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DORCA_TOOLS=ON %SIG_FLAG% -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./Snapmaker_Orca" -DCMAKE_BUILD_TYPE=%build_type% -DWIN10SDK_PATH="%WindowsSdkDir%Include\%WindowsSDKVersion%\" cmake --build . --config %build_type% --target ALL_BUILD -- -m @echo off cd .. diff --git a/cmake/modules/MacOSXBundleInfo.plist.in b/cmake/modules/MacOSXBundleInfo.plist.in index 2f010c8a82..9bf9d62262 100644 --- a/cmake/modules/MacOSXBundleInfo.plist.in +++ b/cmake/modules/MacOSXBundleInfo.plist.in @@ -11,7 +11,7 @@ CFBundleIconFile ${MACOSX_BUNDLE_ICON_FILE} CFBundleIdentifier - com.softfever3d.orca-slicer + com.snapmaker.snapmaker-orca CFBundleInfoDictionaryVersion 6.0 CFBundleLongVersionString @@ -32,10 +32,10 @@ CFBundleURLName - OrcaSlicer Downloads + Snapmaker Orca Downloads CFBundleURLSchemes - orcaslicer + Snapmaker Orca @@ -65,7 +65,7 @@ OBJ CFBundleTypeIconFile - images/OrcaSlicer.icns + images/Snapmaker_Orca.icns CFBundleTypeName STL CFBundleTypeRole @@ -82,7 +82,7 @@ AMF CFBundleTypeIconFile - images/OrcaSlicer.icns + images/Snapmaker_Orca.icns CFBundleTypeName AMF CFBundleTypeRole @@ -99,7 +99,7 @@ 3MF CFBundleTypeIconFile - images/OrcaSlicer.icns + images/Snapmaker_Orca.icns CFBundleTypeName 3MF CFBundleTypeRole diff --git a/deps/Blosc/Blosc.cmake b/deps/Blosc/Blosc.cmake index af4f015e5f..30f6b0a8be 100644 --- a/deps/Blosc/Blosc.cmake +++ b/deps/Blosc/Blosc.cmake @@ -7,7 +7,7 @@ else() endif() if(IS_CROSS_COMPILE AND APPLE) - orcaslicer_add_cmake_project(Blosc + Snapmaker_Orca_add_cmake_project(Blosc #URL https://github.com/Blosc/c-blosc/archive/refs/tags/v1.17.0.zip #URL_HASH SHA256=7463a1df566704f212263312717ab2c36b45d45cba6cd0dccebf91b2cc4b4da9 URL https://github.com/tamasmeszaros/c-blosc/archive/refs/heads/v1.17.0_tm.zip @@ -26,7 +26,7 @@ if(IS_CROSS_COMPILE AND APPLE) -DDEACTIVATE_AVX2=ON ) else() - orcaslicer_add_cmake_project(Blosc + Snapmaker_Orca_add_cmake_project(Blosc #URL https://github.com/Blosc/c-blosc/archive/refs/tags/v1.17.0.zip #URL_HASH SHA256=7463a1df566704f212263312717ab2c36b45d45cba6cd0dccebf91b2cc4b4da9 URL https://github.com/tamasmeszaros/c-blosc/archive/refs/heads/v1.17.0_tm.zip diff --git a/deps/Boost/Boost.cmake b/deps/Boost/Boost.cmake index f3c23b77c7..d0086f2025 100644 --- a/deps/Boost/Boost.cmake +++ b/deps/Boost/Boost.cmake @@ -10,7 +10,7 @@ if (APPLE AND CMAKE_OSX_ARCHITECTURES) set(_context_arch_line "-DBOOST_CONTEXT_ARCHITECTURE:STRING=${CMAKE_OSX_ARCHITECTURES}") endif () -orcaslicer_add_cmake_project(Boost +Snapmaker_Orca_add_cmake_project(Boost URL "https://github.com/boostorg/boost/releases/download/boost-1.84.0/boost-1.84.0.tar.gz" URL_HASH SHA256=4d27e9efed0f6f152dc28db6430b9d3dfb40c0345da7342eaa5a987dde57bd95 LIST_SEPARATOR | diff --git a/deps/CGAL/CGAL.cmake b/deps/CGAL/CGAL.cmake index 73eee6701b..ff8ea1f74c 100644 --- a/deps/CGAL/CGAL.cmake +++ b/deps/CGAL/CGAL.cmake @@ -2,7 +2,7 @@ if (IN_GIT_REPO) set(CGAL_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_CGAL-prefix/src/dep_CGAL) endif () -orcaslicer_add_cmake_project( +Snapmaker_Orca_add_cmake_project( CGAL # GIT_REPOSITORY https://github.com/CGAL/cgal.git # GIT_TAG bec70a6d52d8aacb0b3d82a7b4edc3caa899184b # releases/CGAL-5.0 diff --git a/deps/CMakeLists.txt b/deps/CMakeLists.txt index df099e7db4..1bbd244f17 100644 --- a/deps/CMakeLists.txt +++ b/deps/CMakeLists.txt @@ -1,12 +1,12 @@ # -# This CMake project downloads, configures and builds OrcaSlicer dependencies on Unix and Windows. +# This CMake project downloads, configures and builds Snapmaker_Orca dependencies on Unix and Windows. # # When using this script, it's recommended to perform an out-of-source build using CMake. # # All the dependencies are installed in a `destdir` directory in the root of the build directory, # in a traditional Unix-style prefix structure. The destdir can be used directly by CMake -# when building OrcaSlicer - to do this, set the CMAKE_PREFIX_PATH to ${destdir}/usr/local. -# Warning: On UNIX/Linux, you also need to set -DSLIC3R_STATIC=1 when building OrcaSlicer. +# when building Snapmaker_Orca - to do this, set the CMAKE_PREFIX_PATH to ${destdir}/usr/local. +# Warning: On UNIX/Linux, you also need to set -DSLIC3R_STATIC=1 when building Snapmaker_Orca. # # For better clarity of console output, it's recommended to _not_ use a parallelized build # for the top-level command, ie. use `make -j 1` or `ninja -j 1` to force single-threaded top-level @@ -34,7 +34,7 @@ if(POLICY CMP0135) # DOWNLOAD_EXTRACT_TIMESTAMP cmake_policy(SET CMP0135 NEW) endif() -project(OrcaSlicer-deps) +project(Snapmaker_Orca-deps) include(ExternalProject) include(ProcessorCount) @@ -87,9 +87,9 @@ endif () # Slic3r compiles with a different version which will cause runtime errors. # option(DEP_BUILD_IGL_STATIC "Build IGL as a static library. Might cause link errors and increase binary size." OFF) -message(STATUS "OrcaSlicer deps DESTDIR: ${DESTDIR}") -message(STATUS "OrcaSlicer download dir for source packages: ${DEP_DOWNLOAD_DIR}") -message(STATUS "OrcaSlicer deps debug build: ${DEP_DEBUG}") +message(STATUS "Snapmaker_Orca deps DESTDIR: ${DESTDIR}") +message(STATUS "Snapmaker_Orca dowload dir for source packages: ${DEP_DOWNLOAD_DIR}") +message(STATUS "Snapmaker_Orca deps debug build: ${DEP_DEBUG}") find_package(Git REQUIRED) @@ -101,7 +101,7 @@ if (NOT _is_multi AND NOT CMAKE_BUILD_TYPE) message(STATUS "Forcing CMAKE_BUILD_TYPE to Release as it was not specified.") endif () -function(orcaslicer_add_cmake_project projectname) +function(Snapmaker_Orca_add_cmake_project projectname) cmake_parse_arguments(P_ARGS "" "INSTALL_DIR;BUILD_COMMAND;INSTALL_COMMAND" "CMAKE_ARGS" ${ARGN}) set(_configs_line -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}) @@ -148,7 +148,7 @@ elseif(FLATPAK) # the only reason this is here is because of the HACK at the bottom for ci # # note for future devs: shared libs may actually create a size reduction - # but orcaslicer_deps tends to get really funny regarding linking after that (notably boost) + # but Snapmaker_Orca_deps tends to get really funny regarding linking after that (notably boost) # so, as much as I would like to use that, it's not happening ExternalProject_Add( dep_${projectname} @@ -199,7 +199,7 @@ else() endif() -endfunction(orcaslicer_add_cmake_project) +endfunction(Snapmaker_Orca_add_cmake_project) if (MSVC) diff --git a/deps/CURL/CURL.cmake b/deps/CURL/CURL.cmake index a5ae1b9d00..1a2cde9223 100644 --- a/deps/CURL/CURL.cmake +++ b/deps/CURL/CURL.cmake @@ -56,7 +56,7 @@ else() set(_curl_static ON) endif() -orcaslicer_add_cmake_project(CURL +Snapmaker_Orca_add_cmake_project(CURL # GIT_REPOSITORY https://github.com/curl/curl.git # GIT_TAG curl-7_75_0 URL https://github.com/curl/curl/archive/refs/tags/curl-7_75_0.zip diff --git a/deps/Cereal/Cereal.cmake b/deps/Cereal/Cereal.cmake index 7f87121f55..d5344cb678 100644 --- a/deps/Cereal/Cereal.cmake +++ b/deps/Cereal/Cereal.cmake @@ -2,7 +2,7 @@ #/|/ #/|/ PrusaSlicer is released under the terms of the AGPLv3 or higher #/|/ -orcaslicer_add_cmake_project(Cereal +Snapmaker_Orca_add_cmake_project(Cereal URL "https://github.com/USCiLab/cereal/archive/refs/tags/v1.3.0.zip" URL_HASH SHA256=71642cb54658e98c8f07a0f0d08bf9766f1c3771496936f6014169d3726d9657 CMAKE_ARGS diff --git a/deps/EXPAT/EXPAT.cmake b/deps/EXPAT/EXPAT.cmake index fd5c4c5c4d..ee9258cef9 100644 --- a/deps/EXPAT/EXPAT.cmake +++ b/deps/EXPAT/EXPAT.cmake @@ -1,4 +1,4 @@ -orcaslicer_add_cmake_project(EXPAT +Snapmaker_Orca_add_cmake_project(EXPAT # GIT_REPOSITORY https://github.com/nigels-com/glew.git # GIT_TAG 3a8eff7 # 2.1.0 SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/expat diff --git a/deps/FREETYPE/FREETYPE.cmake b/deps/FREETYPE/FREETYPE.cmake index 4a37752ac1..a6d19e17fb 100644 --- a/deps/FREETYPE/FREETYPE.cmake +++ b/deps/FREETYPE/FREETYPE.cmake @@ -10,7 +10,7 @@ else() set(_ft_disable_zlib "-D FT_DISABLE_ZLIB=TRUE") endif() -orcaslicer_add_cmake_project(FREETYPE +Snapmaker_Orca_add_cmake_project(FREETYPE URL https://github.com/SoftFever/orca_deps/releases/download/freetype-2.12.1.tar.gz/freetype-2.12.1.tar.gz URL_HASH SHA256=efe71fd4b8246f1b0b1b9bfca13cfff1c9ad85930340c27df469733bbb620938 #DEPENDS ${ZLIB_PKG} diff --git a/deps/GLEW/GLEW.cmake b/deps/GLEW/GLEW.cmake index cef56e72e2..79482958bc 100644 --- a/deps/GLEW/GLEW.cmake +++ b/deps/GLEW/GLEW.cmake @@ -2,7 +2,7 @@ set(OpenGL_GL_PREFERENCE "LEGACY") # to prevent a nasty warning by cmake find_package(OpenGL QUIET REQUIRED) -orcaslicer_add_cmake_project( +Snapmaker_Orca_add_cmake_project( GLEW SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/glew ) diff --git a/deps/GLFW/GLFW.cmake b/deps/GLFW/GLFW.cmake index 8196791033..da753bac75 100644 --- a/deps/GLFW/GLFW.cmake +++ b/deps/GLFW/GLFW.cmake @@ -12,7 +12,7 @@ else() set(_glfw_use_wayland "-DGLFW_USE_WAYLAND=FF") endif() -orcaslicer_add_cmake_project(GLFW +Snapmaker_Orca_add_cmake_project(GLFW URL https://github.com/glfw/glfw/archive/refs/tags/3.3.7.zip URL_HASH SHA256=e02d956935e5b9fb4abf90e2c2e07c9a0526d7eacae8ee5353484c69a2a76cd0 #DEPENDS dep_Boost diff --git a/deps/JPEG/JPEG.cmake b/deps/JPEG/JPEG.cmake index 82b0ca5565..5eca464b23 100644 --- a/deps/JPEG/JPEG.cmake +++ b/deps/JPEG/JPEG.cmake @@ -11,7 +11,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") endif () endif() -orcaslicer_add_cmake_project(JPEG +Snapmaker_Orca_add_cmake_project(JPEG URL https://github.com/libjpeg-turbo/libjpeg-turbo/archive/refs/tags/3.0.1.zip URL_HASH SHA256=d6d99e693366bc03897677650e8b2dfa76b5d6c54e2c9e70c03f0af821b0a52f DEPENDS ${ZLIB_PKG} diff --git a/deps/NLopt/NLopt.cmake b/deps/NLopt/NLopt.cmake index fdd6341f2b..b069308364 100644 --- a/deps/NLopt/NLopt.cmake +++ b/deps/NLopt/NLopt.cmake @@ -1,4 +1,4 @@ -orcaslicer_add_cmake_project(NLopt +Snapmaker_Orca_add_cmake_project(NLopt URL "https://github.com/stevengj/nlopt/archive/v2.5.0.tar.gz" URL_HASH SHA256=c6dd7a5701fff8ad5ebb45a3dc8e757e61d52658de3918e38bab233e7fd3b4ae CMAKE_ARGS diff --git a/deps/NanoSVG/NanoSVG.cmake b/deps/NanoSVG/NanoSVG.cmake index 5c833e3249..ae6550d831 100644 --- a/deps/NanoSVG/NanoSVG.cmake +++ b/deps/NanoSVG/NanoSVG.cmake @@ -3,7 +3,7 @@ # for rasterizing svg files from their original size to a squared power of two texture on Windows systems using # AMD Radeon graphics cards -orcaslicer_add_cmake_project(NanoSVG +Snapmaker_Orca_add_cmake_project(NanoSVG DEPENDS dep_Boost URL https://github.com/SoftFever/nanosvg/archive/863f6aa97ef62028126fa2c19bd4350394c2e15e.zip URL_HASH SHA256=8d9c1624ad6518dd6dfa31e4f8dc7da9ec243d88bae595c7a037450617fec851 diff --git a/deps/OCCT/OCCT.cmake b/deps/OCCT/OCCT.cmake index 98c6efc98d..24f9231a37 100644 --- a/deps/OCCT/OCCT.cmake +++ b/deps/OCCT/OCCT.cmake @@ -8,9 +8,9 @@ if (IN_GIT_REPO) set(OCCT_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_OCCT-prefix/src/dep_OCCT) endif () -orcaslicer_add_cmake_project(OCCT +Snapmaker_Orca_add_cmake_project(OCCT URL https://github.com/Open-Cascade-SAS/OCCT/archive/refs/tags/V7_6_0.zip - URL_HASH SHA256=28334f0e98f1b1629799783e9b4d21e05349d89e695809d7e6dfa45ea43e1dbc + URL_HASH SHA256=28334F0E98F1B1629799783E9B4D21E05349D89E695809D7E6DFA45EA43E1DBC #PATCH_COMMAND ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-OCCT-fix.patch PATCH_COMMAND git apply ${OCCT_DIRECTORY_FLAG} --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-OCCT-fix.patch #DEPENDS dep_Boost diff --git a/deps/OpenCSG/OpenCSG.cmake b/deps/OpenCSG/OpenCSG.cmake index 2181ba0955..83fe5afa18 100644 --- a/deps/OpenCSG/OpenCSG.cmake +++ b/deps/OpenCSG/OpenCSG.cmake @@ -1,5 +1,5 @@ -orcaslicer_add_cmake_project(OpenCSG +Snapmaker_Orca_add_cmake_project(OpenCSG # GIT_REPOSITORY https://github.com/floriankirsch/OpenCSG.git # GIT_TAG 83e274457b46c9ad11a4ee599203250b1618f3b9 #v1.4.2 URL https://github.com/floriankirsch/OpenCSG/archive/refs/tags/opencsg-1-4-2-release.zip diff --git a/deps/OpenCV/OpenCV.cmake b/deps/OpenCV/OpenCV.cmake index 3794094fcf..537fd43a84 100644 --- a/deps/OpenCV/OpenCV.cmake +++ b/deps/OpenCV/OpenCV.cmake @@ -8,7 +8,7 @@ if (IN_GIT_REPO) set(OpenCV_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_OpenCV-prefix/src/dep_OpenCV) endif () -orcaslicer_add_cmake_project(OpenCV +Snapmaker_Orca_add_cmake_project(OpenCV URL https://github.com/opencv/opencv/archive/refs/tags/4.6.0.tar.gz URL_HASH SHA256=1ec1cba65f9f20fe5a41fda1586e01c70ea0c9a6d7b67c9e13edf0cfe2239277 PATCH_COMMAND git apply ${OpenCV_DIRECTORY_FLAG} --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-vs2022.patch ${CMAKE_CURRENT_LIST_DIR}/0002-clang19-macos.patch diff --git a/deps/OpenEXR/OpenEXR.cmake b/deps/OpenEXR/OpenEXR.cmake index dd754d3a38..7c4084fb4d 100644 --- a/deps/OpenEXR/OpenEXR.cmake +++ b/deps/OpenEXR/OpenEXR.cmake @@ -36,7 +36,7 @@ else () set(_patch_cmd "") endif () -orcaslicer_add_cmake_project(OpenEXR +Snapmaker_Orca_add_cmake_project(OpenEXR # GIT_REPOSITORY https://github.com/openexr/openexr.git URL https://github.com/AcademySoftwareFoundation/openexr/archive/refs/tags/v2.5.5.zip URL_HASH SHA256=0307a3d7e1fa1e77e9d84d7e9a8694583fbbbfd50bdc6884e2c96b8ef6b902de diff --git a/deps/OpenVDB/OpenVDB.cmake b/deps/OpenVDB/OpenVDB.cmake index df6ad9c913..911867a665 100644 --- a/deps/OpenVDB/OpenVDB.cmake +++ b/deps/OpenVDB/OpenVDB.cmake @@ -10,11 +10,10 @@ if (IN_GIT_REPO) set(OPENVDB_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_OpenVDB-prefix/src/dep_OpenVDB) endif () -orcaslicer_add_cmake_project(OpenVDB +Snapmaker_Orca_add_cmake_project(OpenVDB # support vs2022, update to 8.2 URL https://github.com/tamasmeszaros/openvdb/archive/a68fd58d0e2b85f01adeb8b13d7555183ab10aa5.zip URL_HASH SHA256=f353e7b99bd0cbfc27ac9082de51acf32a8bc0b3e21ff9661ecca6f205ec1d81 - PATCH_COMMAND git apply ${OPENVDB_DIRECTORY_FLAG} --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-clang19.patch DEPENDS dep_TBB dep_Blosc dep_OpenEXR dep_Boost CMAKE_ARGS -DCMAKE_POSITION_INDEPENDENT_CODE=ON diff --git a/deps/PNG/PNG.cmake b/deps/PNG/PNG.cmake index 332fdfe274..99d6e9994b 100644 --- a/deps/PNG/PNG.cmake +++ b/deps/PNG/PNG.cmake @@ -7,7 +7,7 @@ endif () if(APPLE AND IS_CROSS_COMPILE) # TODO: check if it doesn't create problem when compiling from arm to x86_64 - orcaslicer_add_cmake_project(PNG + Snapmaker_Orca_add_cmake_project(PNG GIT_REPOSITORY https://github.com/glennrp/libpng.git GIT_TAG v1.6.35 DEPENDS ${ZLIB_PKG} @@ -26,7 +26,7 @@ set(_patch_step "") if (APPLE) set(_patch_step PATCH_COMMAND ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/PNG.patch ${CMAKE_CURRENT_LIST_DIR}/0002-clang19-macos.patch) endif () - orcaslicer_add_cmake_project(PNG + Snapmaker_Orca_add_cmake_project(PNG # GIT_REPOSITORY https://github.com/glennrp/libpng.git # GIT_TAG v1.6.35 URL https://github.com/glennrp/libpng/archive/refs/tags/v1.6.35.zip diff --git a/deps/Qhull/Qhull.cmake b/deps/Qhull/Qhull.cmake index 9376700428..978165c5d4 100644 --- a/deps/Qhull/Qhull.cmake +++ b/deps/Qhull/Qhull.cmake @@ -1,5 +1,5 @@ include(GNUInstallDirs) -orcaslicer_add_cmake_project(Qhull +Snapmaker_Orca_add_cmake_project(Qhull URL "https://github.com/qhull/qhull/archive/v8.0.1.zip" URL_HASH SHA256=5287f5edd6a0372588f5d6640799086a4033d89d19711023ef8229dd9301d69b CMAKE_ARGS diff --git a/deps/TBB/TBB.cmake b/deps/TBB/TBB.cmake index 13d40c0573..43f96b0fcd 100644 --- a/deps/TBB/TBB.cmake +++ b/deps/TBB/TBB.cmake @@ -4,7 +4,7 @@ else() set(_patch_command "") endif() -orcaslicer_add_cmake_project( +Snapmaker_Orca_add_cmake_project( TBB URL "https://github.com/oneapi-src/oneTBB/archive/refs/tags/v2021.5.0.zip" URL_HASH SHA256=83ea786c964a384dd72534f9854b419716f412f9d43c0be88d41874763e7bb47 diff --git a/deps/ZLIB/ZLIB.cmake b/deps/ZLIB/ZLIB.cmake index 0d5497e414..0191f7bc13 100644 --- a/deps/ZLIB/ZLIB.cmake +++ b/deps/ZLIB/ZLIB.cmake @@ -1,6 +1,6 @@ set(patch_command git init && ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-Respect-BUILD_SHARED_LIBS.patch) -orcaslicer_add_cmake_project(ZLIB +Snapmaker_Orca_add_cmake_project(ZLIB # GIT_REPOSITORY https://github.com/madler/zlib.git # GIT_TAG v1.2.11 #URL https://github.com/madler/zlib/archive/refs/tags/v1.2.11.zip diff --git a/deps/libnoise/libnoise.cmake b/deps/libnoise/libnoise.cmake index 0e19f26926..c0ba327394 100644 --- a/deps/libnoise/libnoise.cmake +++ b/deps/libnoise/libnoise.cmake @@ -1,4 +1,4 @@ -orcaslicer_add_cmake_project(libnoise +Snapmaker_Orca_add_cmake_project(libnoise URL https://github.com/SoftFever/Orca-deps-libnoise/archive/refs/tags/1.0.zip URL_HASH SHA256=96ffd6cc47898dd8147aab53d7d1b1911b507d9dbaecd5613ca2649468afd8b6 ) \ No newline at end of file diff --git a/deps/wxWidgets/wxWidgets.cmake b/deps/wxWidgets/wxWidgets.cmake index 247381726c..923e76b3b9 100644 --- a/deps/wxWidgets/wxWidgets.cmake +++ b/deps/wxWidgets/wxWidgets.cmake @@ -22,7 +22,7 @@ endif () # ** THIS INCLUDES BUILD ARGS. ** # ...if you can find a way around this size limitation, be my guest. -orcaslicer_add_cmake_project( +Snapmaker_Orca_add_cmake_project( wxWidgets GIT_REPOSITORY "https://github.com/SoftFever/Orca-deps-wxWidgets" GIT_SHALLOW ON diff --git a/doc/Home.md b/doc/Home.md index 7e2e0bf2f0..a5de5ce227 100644 --- a/doc/Home.md +++ b/doc/Home.md @@ -1,160 +1,38 @@ -# Welcome to the OrcaSlicer WIKI! +Welcome to the Snapmaker_Orca WIKI! -OrcaSlicer is a powerful open source slicer for FFF (FDM) 3D Printers. This wiki page aims to provide an detailed explanation of the slicer settings, how to get the most out of them as well as how to calibrate and setup your printer. +Snapmaker Orca is a powerful open source slicer for FFF (FDM) 3D Printers. This wiki page aims to provide an detailed explanation of the slicer settings, how to get the most out of them as well as how to calibrate and setup your printer. -- [Printer Settings](#printer-settings) -- [Material Settings](#material-settings) -- [Process Settings](#process-settings) - - [Quality Settings](#quality-settings) - - [Strength Settings](#strength-settings) - - [Speed Settings](#speed-settings) - - [Support Settings](#support-settings) - - [Multimaterial Settings](#multimaterial-settings) - - [Others Settings](#others-settings) -- [Prepare](#prepare) -- [Calibrations](#calibrations) -- [Developer Section](#developer-section) +The Wiki is work in progress so bear with us while we get it up and running! -> [!WARNING] -> This wiki is community-maintained. -> Some pages may be **outdated** while others may be **newer** and present only in [nightly build](https://github.com/SoftFever/OrcaSlicer/releases/tag/nightly-builds) or [latest release](https://github.com/SoftFever/OrcaSlicer/releases). +## Print Settings, Tips and Tricks (Work In Progress) +The below sections provide a detailed settings explanation as well as tips and tricks in setting these for optimal print results. -> [!NOTE] -> Please consider contributing to the wiki following the [How to contribute to the wiki](How-to-wiki) guide. +### Quality Settings +- [Layer Height Settings](quality_settings_layer_height) +- [Line Width Settings](quality_settings_line_width) +- [Seam Settings](quality_settings_seam) +- [Precise wall](Precise-wall) -## Printer Settings +### Speed Settings +- [Extrusion rate smoothing](extrusion-rate-smoothing) -![printer-preset](https://github.com/SoftFever/OrcaSlicer/blob/main/doc/images/GUI/printer-preset.png?raw=true) - -![printer](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/printer.svg?raw=true) Settings related to the 3D printer hardware and its configuration. +### Multi material +- [Single Extruder Multimaterial](semm) +### Printer Settings: - [Air filtration/Exhaust fan handling](air-filtration) - [Auxiliary fan handling](Auxiliary-fan) - [Chamber temperature control](chamber-temperature) - [Adaptive Bed Mesh](adaptive-bed-mesh) - [Using different bed types in Orca](bed-types) - -## Material Settings - -![filament-preset](https://github.com/SoftFever/OrcaSlicer/blob/main/doc/images/GUI/filament-preset.png?raw=true) - -![filament](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/filament.svg?raw=true) Settings related to the 3D printing material. - -- [Single Extruder Multimaterial](semm) - [Pellet Printers (pellet flow coefficient)](pellet-flow-coefficient) -## Process Settings - -![process-preset](https://github.com/SoftFever/OrcaSlicer/blob/main/doc/images/GUI/process-preset.png?raw=true) - -![process](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/process.svg?raw=true) Settings related to the 3D printing process. - -### Quality Settings - -![custom-gcode_quality](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/custom-gcode_quality.svg?raw=true) Settings related to print quality and aesthetics. -![process-quality](https://github.com/SoftFever/OrcaSlicer/blob/main/doc/images/GUI/process/process-quality.png?raw=true) - -- ![param_layer_height](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_layer_height.svg?raw=true) [Layer Height Settings](quality_settings_layer_height) -- ![param_line_width](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_line_width.svg?raw=true) [Line Width Settings](quality_settings_line_width) -- ![param_seam](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_seam.svg?raw=true) [Seam Settings](quality_settings_seam) -- ![param_precision](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_precision.svg?raw=true) [Precision](quality_settings_precision) -- ![param_ironing](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_ironing.svg?raw=true) [Ironing](quality_settings_ironing) -- ![param_wall_generator](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_wall_generator.svg?raw=true) [Wall generator](quality_settings_wall_generator) -- ![param_wall_surface](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_wall_surface.svg?raw=true) [Walls and surfaces](quality_settings_wall_and_surfaces) -- ![param_bridge](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_bridge.svg?raw=true) [Bridging](quality_settings_bridging) -- ![param_overhang](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_overhang.svg?raw=true) [Overhangs](quality_settings_overhangs) - -### Strength Settings - -![custom-gcode_strength](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/custom-gcode_strength.svg?raw=true) Settings related to print strength and durability. -![process-strength](https://github.com/SoftFever/OrcaSlicer/blob/main/doc/images/GUI/process/process-strength.png?raw=true) - -- ![param_wall](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_wall.svg?raw=true) [Walls](strength_settings_walls) -- ![param_shell](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_shell.svg?raw=true) [Top and Bottom Shells](strength_settings_top_bottom_shells) -- ![param_infill](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_infill.svg?raw=true) [Infill](strength_settings_infill) - - ![param_concentric](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_concentric.svg?raw=true) [Fill Patterns](strength_settings_patterns) - - ![param_gcode](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_gcode.svg?raw=true) [Template Metalanguage for infill rotation](strength_settings_infill_rotation_template_metalanguage) -- ![param_advanced](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_advanced.svg?raw=true) [Advanced](strength_settings_advanced) - -### Speed Settings - -![custom-gcode_speed](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/custom-gcode_speed.svg?raw=true) Settings related to print speed and movement. -![process-speed](https://github.com/SoftFever/OrcaSlicer/blob/main/doc/images/GUI/process/process-speed.png?raw=true) - -- ![param_speed_first](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_speed_first.svg?raw=true) [Initial Layer Speed](speed_settings_initial_layer_speed) -- ![param_speed](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_speed.svg?raw=true) [Other Layers Speed](speed_settings_other_layers_speed) -- ![param_overhang_speed](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_overhang_speed.svg?raw=true) [Overhang Speed](speed_settings_overhang_speed) -- ![param_travel_speed](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_travel_speed.svg?raw=true) [Travel Speed](speed_settings_travel) -- ![param_acceleration](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_acceleration.svg?raw=true) [Acceleration](speed_settings_acceleration) -- ![param_jerk](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_jerk.svg?raw=true) [Jerk (XY)](speed_settings_jerk_xy) -- ![param_advanced](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_advanced.svg?raw=true) [Advanced / Extrusion rate smoothing](speed_settings_advanced) - -### Support Settings - -![custom-gcode_support](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/custom-gcode_support.svg?raw=true) Settings related to support structures and their properties. -![process-support](https://github.com/SoftFever/OrcaSlicer/blob/main/doc/images/GUI/process/process-support.png?raw=true) - -- ![param_support](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_support.svg?raw=true) [Support](support_settings_support) -- ![param_raft](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_raft.svg?raw=true) [Raft](support_settings_raft) -- ![param_support_filament](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_support_filament.svg?raw=true) [Support Filament](support_settings_filament) -- ![param_ironing](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_ironing.svg?raw=true) [Support Ironing](support_settings_ironing) -- ![param_advanced](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_advanced.svg?raw=true) [Advanced](support_settings_advanced) -- ![param_support_tree](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_support_tree.svg?raw=true) [Tree Supports](support_settings_tree) - -### Multimaterial Settings - -![custom-gcode_multi_material](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/custom-gcode_multi_material.svg?raw=true) Settings related to multimaterial printing. -![process-multimaterial](https://github.com/SoftFever/OrcaSlicer/blob/main/doc/images/GUI/process/process-multimaterial.png?raw=true) - -- ![param_tower](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_tower.svg?raw=true) [Prime Tower](multimaterial_settings_prime_tower) -- ![param_filament_for_features](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_filament_for_features.svg?raw=true) [Filament for Features](multimaterial_settings_filament_for_features) -- ![param_ooze_prevention](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_ooze_prevention.svg?raw=true) [Ooze Prevention](multimaterial_settings_ooze_prevention) -- ![param_flush](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_flush.svg?raw=true) [Flush Options](multimaterial_settings_flush_options) -- ![param_advanced](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_advanced.svg?raw=true) [Advanced](multimaterial_settings_advanced) - -### Others Settings - -![custom-gcode_other](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/custom-gcode_other.svg?raw=true) Settings related to various other print settings. -![process-others](https://github.com/SoftFever/OrcaSlicer/blob/main/doc/images/GUI/process/process-others.png?raw=true) - -- ![param_skirt](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_skirt.svg?raw=true) [Skirt](others_settings_skirt) -- ![param_adhension](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_adhension.svg?raw=true) [Brim](others_settings_brim) -- ![param_special](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_special.svg?raw=true) [Special Mode](others_settings_special_mode) -- ![fuzzy_skin](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/fuzzy_skin.svg?raw=true) [Fuzzy Skin](others_settings_fuzzy_skin) -- ![param_gcode](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_gcode.svg?raw=true) [G-Code Output](others_settings_g_code_output) -- ![param_gcode](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/param_gcode.svg?raw=true) [Post Processing Scripts](others_settings_post_processing_scripts) -- ![note](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/note.svg?raw=true) [Notes](others_settings_notes) - -## Prepare - -![tab_3d_active](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/tab_3d_active.svg?raw=true) First steps to prepare your model/s for printing. - -- [STL Transformation](stl-transformation) - -## Calibrations - -![tab_calibration_active](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/tab_calibration_active.svg?raw=true) The [Calibration Guide](Calibration) outlines Orca’s key calibration tests and their suggested order of execution. - -- [Temperature](temp-calib) -- [Flow Rate](flow-rate-calib) -- [Pressure Advance](pressure-advance-calib) - - [Adaptive Pressure Advance Guide](adaptive-pressure-advance-calib) -- [Retraction](retraction-calib) -- [Tolerance](tolerance-calib) -- Advanced: - - [Volumetric Speed](volumetric-speed-calib) - - [Cornering (Jerk & Junction Deviation)](cornering-calib) - - [Input Shaping](input-shaping-calib) - - [VFA](vfa-calib) +## Printer Calibration +The guide below takes you through the key calibration tests in Orca - flow rate, pressure advance, print temperature, retraction, tolerances and maximum volumetric speed +- [Calibration Guide](./Calibration) +- [Adaptive Pressure Advance Guide](adaptive-pressure-advance) ## Developer Section - -![im_code](https://github.com/SoftFever/OrcaSlicer/blob/main/resources/images/im_code.svg?raw=true) This is a documentation from someone exploring the code and is by no means complete or even completely accurate. Please edit the parts you might find inaccurate. This is probably going to be helpful nonetheless. - -- [How to build OrcaSlicer](How-to-build) +- [How to build Orca Slicer](./How-to-build) - [Localization and translation guide](Localization_guide) -- [How to create profiles](How-to-create-profiles) -- [How to contribute to the wiki](How-to-wiki) -- [Preset, PresetBundle and PresetCollection](Preset-and-bundle) -- [Plater, Sidebar, Tab, ComboBox](plater-sidebar-tab-combobox) -- [Slicing Call Hierarchy](slicing-hierarchy) +- [Developer Reference](https://github.com/SoftFever/OrcaSlicer/blob/main/doc/developer-reference/Home.md) diff --git a/doc/developer-reference/How-to-create-profiles.md b/doc/developer-reference/How-to-create-profiles.md index cc368bdeba..7e33c46374 100644 --- a/doc/developer-reference/How-to-create-profiles.md +++ b/doc/developer-reference/How-to-create-profiles.md @@ -379,13 +379,13 @@ The process is the same if you want to add a new brand filament profile into the #### Example ```shell -./OrcaSlicer_profile_validator -p ~/codes/OrcaSlicer/resources/profiles -l 2 -v Custom +./Snapmaker_Orca_profile_validator -p ~/codes/OrcaSlicer/resources/profiles -l 2 -v Custom ``` #### Sample result with errors ```shell -PS D:\codes\OrcaSlicer> ."D:/codes/OrcaSlicer/build/src/Release/OrcaSlicer_profile_validator.exe" --path d:\codes\OrcaSlicer\resources\profiles -l 2 -v Custom +PS D:\codes\OrcaSlicer> ."D:/codes/OrcaSlicer/build/src/Release/Snapmaker_Orca_profile_validator.exe" --path d:\codes\OrcaSlicer\resources\profiles -l 2 -v Custom [2024-02-28 21:23:06.102138] [0x0000a4e8] [error] Slic3r::ConfigBase::load_from_json: parse d:\codes\OrcaSlicer\resources\profiles/Custom/machine/fdm_klipper_common.json got a nlohmann::detail::parse_error, reason = [json.exception.parse_error.101] parse error at line 9, column 38: syntax error while parsing object - unexpected string literal; expected '}' ... Validation failed @@ -394,12 +394,12 @@ Validation failed #### Sample result with success ```shell -PS D:\codes\OrcaSlicer\build\src\RelWithDebInfo> ."D:/codes/OrcaSlicer/build/src/Release/OrcaSlicer_profile_validator.exe" --path d:\codes\OrcaSlicer\resources\profiles -l 2 -v Custom +PS D:\codes\OrcaSlicer\build\src\RelWithDebInfo> ."D:/codes/OrcaSlicer/build/src/Release/Snapmaker_Orca_profile_validator.exe" --path d:\codes\OrcaSlicer\resources\profiles -l 2 -v Custom Validation completed successfully ``` > [!WARNING] -> Use `OrcaSlicer_profile_validator` on Ubuntu and `OrcaSlicer_profile_validator.exe` on Windows. +> Use `Snapmaker_Orca_profile_validator` on Ubuntu and `Snapmaker_Orca_profile_validator.exe` on Windows. --- diff --git a/localization/i18n/Snapmaker_Orca.pot b/localization/i18n/Snapmaker_Orca.pot new file mode 100644 index 0000000000..ff92b61c7b --- /dev/null +++ b/localization/i18n/Snapmaker_Orca.pot @@ -0,0 +1,14647 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-07-30 10:20+0900\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" + +msgid "Supports Painting" +msgstr "" + +msgid "Alt + Mouse wheel" +msgstr "" + +msgid "Section view" +msgstr "" + +msgid "Reset direction" +msgstr "" + +msgid "Ctrl + Mouse wheel" +msgstr "" + +msgid "Pen size" +msgstr "" + +msgid "Left mouse button" +msgstr "" + +msgid "Enforce supports" +msgstr "" + +msgid "Right mouse button" +msgstr "" + +msgid "Block supports" +msgstr "" + +msgid "Shift + Left mouse button" +msgstr "" + +msgid "Erase" +msgstr "" + +msgid "Erase all painting" +msgstr "" + +msgid "Highlight overhang areas" +msgstr "" + +msgid "Gap fill" +msgstr "" + +msgid "Perform" +msgstr "" + +msgid "Gap area" +msgstr "" + +msgid "Tool type" +msgstr "" + +msgid "Smart fill angle" +msgstr "" + +msgid "On overhangs only" +msgstr "" + +msgid "Circle" +msgstr "" + +msgid "Sphere" +msgstr "" + +msgid "Fill" +msgstr "" + +msgid "Gap Fill" +msgstr "" + +#, possible-boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "" + +msgid "Highlight faces according to overhang angle." +msgstr "" + +msgid "Auto support threshold angle: " +msgstr "" + +msgid "No auto support" +msgstr "" + +msgid "Support Generated" +msgstr "" + +msgid "Gizmo-Place on Face" +msgstr "" + +msgid "Lay on face" +msgstr "" + +#, possible-boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" + +msgid "Color Painting" +msgstr "" + +msgid "Pen shape" +msgstr "" + +msgid "Paint" +msgstr "" + +msgid "Key 1~9" +msgstr "" + +msgid "Choose filament" +msgstr "" + +msgid "Edge detection" +msgstr "" + +msgid "Triangles" +msgstr "" + +msgid "Filaments" +msgstr "" + +msgid "Brush" +msgstr "" + +msgid "Smart fill" +msgstr "" + +msgid "Bucket fill" +msgstr "" + +msgid "Height range" +msgstr "" + +msgid "Alt + Shift + Enter" +msgstr "" + +msgid "Toggle Wireframe" +msgstr "" + +msgid "Shortcut Key " +msgstr "" + +msgid "Triangle" +msgstr "" + +msgid "Height Range" +msgstr "" + +msgid "Vertical" +msgstr "" + +msgid "Horizontal" +msgstr "" + +msgid "Remove painted color" +msgstr "" + +#, possible-boost-format +msgid "Painted using: Filament %1%" +msgstr "" + +msgid "Move" +msgstr "" + +msgid "Gizmo-Move" +msgstr "" + +msgid "Rotate" +msgstr "" + +msgid "Gizmo-Rotate" +msgstr "" + +msgid "Optimize orientation" +msgstr "" + +msgid "Apply" +msgstr "" + +msgid "Scale" +msgstr "" + +msgid "Gizmo-Scale" +msgstr "" + +msgid "Error: Please close all toolbar menus first" +msgstr "" + +msgid "in" +msgstr "" + +msgid "mm" +msgstr "" + +msgid "Position" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "" + +msgid "Scale ratios" +msgstr "" + +msgid "Object Operations" +msgstr "" + +msgid "Volume Operations" +msgstr "" + +msgid "Translate" +msgstr "" + +msgid "Group Operations" +msgstr "" + +msgid "Set Position" +msgstr "" + +msgid "Set Orientation" +msgstr "" + +msgid "Set Scale" +msgstr "" + +msgid "Reset Position" +msgstr "" + +msgid "Reset Rotation" +msgstr "" + +msgid "World coordinates" +msgstr "" + +msgid "Object coordinates" +msgstr "" + +msgid "°" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "" + +msgid "%" +msgstr "" + +msgid "uniform scale" +msgstr "" + +msgid "Planar" +msgstr "" + +msgid "Dovetail" +msgstr "" + +msgid "Auto" +msgstr "" + +msgid "Manual" +msgstr "" + +msgid "Plug" +msgstr "" + +msgid "Dowel" +msgstr "" + +msgid "Snap" +msgstr "" + +msgid "Prism" +msgstr "" + +msgid "Frustum" +msgstr "" + +msgid "Square" +msgstr "" + +msgid "Hexagon" +msgstr "" + +msgid "Keep orientation" +msgstr "" + +msgid "Place on cut" +msgstr "" + +msgid "Flip upside down" +msgstr "" + +msgid "Connectors" +msgstr "" + +msgid "Type" +msgstr "" + +msgid "Style" +msgstr "" + +msgid "Shape" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "" + +msgid "Groove" +msgstr "" + +msgid "Width" +msgstr "" + +msgid "Flap Angle" +msgstr "" + +msgid "Groove Angle" +msgstr "" + +msgid "Part" +msgstr "" + +msgid "Object" +msgstr "" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" + +msgid "Move cut plane" +msgstr "" + +msgid "Mode" +msgstr "" + +msgid "Change cut mode" +msgstr "" + +msgid "Tolerance" +msgstr "" + +msgid "Drag" +msgstr "" + +msgid "Draw cut line" +msgstr "" + +msgid "Left click" +msgstr "" + +msgid "Add connector" +msgstr "" + +msgid "Right click" +msgstr "" + +msgid "Remove connector" +msgstr "" + +msgid "Move connector" +msgstr "" + +msgid "Add connector to selection" +msgstr "" + +msgid "Remove connector from selection" +msgstr "" + +msgid "Select all connectors" +msgstr "" + +msgid "Cut" +msgstr "" + +msgid "Rotate cut plane" +msgstr "" + +msgid "Remove connectors" +msgstr "" + +msgid "Bulge" +msgstr "" + +msgid "Bulge proportion related to radius" +msgstr "" + +msgid "Space" +msgstr "" + +msgid "Space proportion related to radius" +msgstr "" + +msgid "Confirm connectors" +msgstr "" + +msgid "Cancel" +msgstr "" + +msgid "Build Volume" +msgstr "" + +msgid "Flip cut plane" +msgstr "" + +msgid "Groove change" +msgstr "" + +msgid "Reset" +msgstr "" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "" + +msgid "Cut position" +msgstr "" + +msgid "Reset cutting plane" +msgstr "" + +msgid "Edit connectors" +msgstr "" + +msgid "Add connectors" +msgstr "" + +msgid "Reset cut" +msgstr "" + +msgid "Reset cutting plane and remove connectors" +msgstr "" + +msgid "Upper part" +msgstr "" + +msgid "Lower part" +msgstr "" + +msgid "Keep" +msgstr "" + +msgid "Flip" +msgstr "" + +msgid "After cut" +msgstr "" + +msgid "Cut to parts" +msgstr "" + +msgid "Perform cut" +msgstr "" + +msgid "Warning" +msgstr "" + +msgid "Invalid connectors detected" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "" +msgstr[1] "" + +#, possible-c-format, possible-boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "" +msgstr[1] "" + +msgid "Some connectors are overlapped" +msgstr "" + +msgid "Select at least one object to keep after cutting." +msgstr "" + +msgid "Cut plane is placed out of object" +msgstr "" + +msgid "Cut plane with groove is invalid" +msgstr "" + +msgid "Connector" +msgstr "" + +msgid "Cut by Plane" +msgstr "" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" + +msgid "Repairing model object" +msgstr "" + +msgid "Cut by line" +msgstr "" + +msgid "Delete connector" +msgstr "" + +msgid "Mesh name" +msgstr "" + +msgid "Detail level" +msgstr "" + +msgid "Decimate ratio" +msgstr "" + +#, possible-boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" + +msgid "Simplify model" +msgstr "" + +msgid "Simplify" +msgstr "" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" + +msgid "Error" +msgstr "" + +msgid "Extra high" +msgstr "" + +msgid "High" +msgstr "" + +msgid "Medium" +msgstr "" + +msgid "Low" +msgstr "" + +msgid "Extra low" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%d triangles" +msgstr "" + +msgid "Show wireframe" +msgstr "" + +#, possible-boost-format +msgid "%1%" +msgstr "" + +msgid "Can't apply when process preview." +msgstr "" + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "" + +msgid "Face recognition" +msgstr "" + +msgid "Perform Recognition" +msgstr "" + +msgid "Brush size" +msgstr "" + +msgid "Brush shape" +msgstr "" + +msgid "Enforce seam" +msgstr "" + +msgid "Block seam" +msgstr "" + +msgid "Seam painting" +msgstr "" + +msgid "Remove selection" +msgstr "" + +msgid "Entering Seam painting" +msgstr "" + +msgid "Leaving Seam painting" +msgstr "" + +msgid "Paint-on seam editing" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "" + +msgid "Thickness" +msgstr "" + +msgid "Text Gap" +msgstr "" + +msgid "Angle" +msgstr "" + +msgid "" +"Embeded\n" +"depth" +msgstr "" + +msgid "Input text" +msgstr "" + +msgid "Surface" +msgstr "" + +msgid "Horizontal text" +msgstr "" + +msgid "Shift + Mouse move up or down" +msgstr "" + +msgid "Rotate text" +msgstr "" + +msgid "Text shape" +msgstr "" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "" + +msgid "Set Mirror" +msgstr "" + +msgid "Embossed text" +msgstr "" + +msgid "Enter emboss gizmo" +msgstr "" + +msgid "Leave emboss gizmo" +msgstr "" + +msgid "Embossing actions" +msgstr "" + +msgid "Emboss" +msgstr "" + +msgid "NORMAL" +msgstr "" + +msgid "SMALL" +msgstr "" + +msgid "ITALIC" +msgstr "" + +msgid "SWISS" +msgstr "" + +msgid "MODERN" +msgstr "" + +msgid "First font" +msgstr "" + +msgid "Default font" +msgstr "" + +msgid "Advanced" +msgstr "" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" + +msgid "Embossed text cannot contain only white spaces." +msgstr "" + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" + +msgid "Text input doesn't show font skew." +msgstr "" + +msgid "Text input doesn't show font boldness." +msgstr "" + +msgid "Text input doesn't show gap between lines." +msgstr "" + +msgid "Too tall, diminished font height inside text input." +msgstr "" + +msgid "Too small, enlarged font height inside text input." +msgstr "" + +msgid "Text doesn't show current horizontal alignment." +msgstr "" + +msgid "Revert font changes." +msgstr "" + +#, possible-boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "" + +msgid "Operation" +msgstr "" + +msgid "Join" +msgstr "" + +msgid "Click to change text into object part." +msgstr "" + +msgid "You can't change a type of the last solid part of the object." +msgstr "" + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "" + +msgid "Click to change part type into negative volume." +msgstr "" + +msgid "Modifier" +msgstr "" + +msgid "Click to change part type into modifier." +msgstr "" + +msgid "Change Text Type" +msgstr "" + +#, possible-boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "" + +msgid "Name can't be empty." +msgstr "" + +msgid "Name has to be unique." +msgstr "" + +msgid "OK" +msgstr "" + +msgid "Rename style" +msgstr "" + +msgid "Rename current style." +msgstr "" + +msgid "Can't rename temporary style." +msgstr "" + +msgid "First Add style to list." +msgstr "" + +#, possible-boost-format +msgid "Save %1% style" +msgstr "" + +msgid "No changes to save." +msgstr "" + +msgid "New name of style" +msgstr "" + +msgid "Save as new style" +msgstr "" + +msgid "Only valid font can be added to style." +msgstr "" + +msgid "Add style to my list." +msgstr "" + +msgid "Save as new style." +msgstr "" + +msgid "Remove style" +msgstr "" + +msgid "Can't remove the last existing style." +msgstr "" + +#, possible-boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "" + +#, possible-boost-format +msgid "Delete \"%1%\" style." +msgstr "" + +#, possible-boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "" + +#, possible-boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "" + +#, possible-boost-format +msgid "Modified style \"%1%\"" +msgstr "" + +#, possible-boost-format +msgid "Current style is \"%1%\"" +msgstr "" + +#, possible-boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" + +msgid "Not valid style." +msgstr "" + +#, possible-boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "" + +msgid "Unset italic" +msgstr "" + +msgid "Set italic" +msgstr "" + +msgid "Unset bold" +msgstr "" + +msgid "Set bold" +msgstr "" + +msgid "Revert text size." +msgstr "" + +msgid "Revert embossed depth." +msgstr "" + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" + +msgid "Revert using of model surface." +msgstr "" + +msgid "Revert Transformation per glyph." +msgstr "" + +msgid "Set global orientation for whole text." +msgstr "" + +msgid "Set position and orientation per glyph." +msgstr "" + +msgctxt "Alignment" +msgid "Left" +msgstr "" + +msgctxt "Alignment" +msgid "Center" +msgstr "" + +msgctxt "Alignment" +msgid "Right" +msgstr "" + +msgctxt "Alignment" +msgid "Top" +msgstr "" + +msgctxt "Alignment" +msgid "Middle" +msgstr "" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "" + +msgid "Revert alignment." +msgstr "" + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "" + +msgid "Revert gap between characters" +msgstr "" + +msgid "Distance between characters" +msgstr "" + +msgid "Revert gap between lines" +msgstr "" + +msgid "Distance between lines" +msgstr "" + +msgid "Undo boldness" +msgstr "" + +msgid "Tiny / Wide glyphs" +msgstr "" + +msgid "Undo letter's skew" +msgstr "" + +msgid "Italic strength ratio" +msgstr "" + +msgid "Undo translation" +msgstr "" + +msgid "Distance of the center of the text to the model surface." +msgstr "" + +msgid "Undo rotation" +msgstr "" + +msgid "Rotate text Clock-wise." +msgstr "" + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Select from True Type Collection." +msgstr "" + +msgid "Set text to face camera" +msgstr "" + +msgid "Orient the text towards the camera." +msgstr "" + +#, possible-boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" + +msgid "No symbol" +msgstr "" + +msgid "Loading" +msgstr "" + +msgid "In queue" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "" + +msgid "Enter SVG gizmo" +msgstr "" + +msgid "Leave SVG gizmo" +msgstr "" + +msgid "SVG actions" +msgstr "" + +msgid "SVG" +msgstr "" + +#, possible-boost-format +msgid "Opacity (%1%)" +msgstr "" + +#, possible-boost-format +msgid "Color gradient (%1%)" +msgstr "" + +msgid "Undefined fill type" +msgstr "" + +msgid "Linear gradient" +msgstr "" + +msgid "Radial gradient" +msgstr "" + +msgid "Open filled path" +msgstr "" + +msgid "Undefined stroke type" +msgstr "" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" + +#, possible-boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "" + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, possible-boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "" + +#, possible-boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "" + +#, possible-boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "" + +msgid "Face the camera" +msgstr "" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "" + +#, possible-boost-format +msgid "SVG file path is \"%1%\"" +msgstr "" + +msgid "Reload SVG file from disk." +msgstr "" + +msgid "Change file" +msgstr "" + +msgid "Change to another .svg file" +msgstr "" + +msgid "Forget the file path" +msgstr "" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "" + +msgid "Save as" +msgstr "" + +msgid "Save SVG file" +msgstr "" + +msgid "Save as '.svg' file" +msgstr "" + +msgid "Size in emboss direction." +msgstr "" + +#. TRN: The placeholder contains a number. +#, possible-boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "" + +msgid "Width of SVG." +msgstr "" + +msgid "Height of SVG." +msgstr "" + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "" + +msgid "Reset scale" +msgstr "" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "" + +msgid "Reset distance" +msgstr "" + +msgid "Reset rotation" +msgstr "" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" + +msgid "Mirror vertically" +msgstr "" + +msgid "Mirror horizontally" +msgstr "" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "" + +msgid "Choose SVG file for emboss:" +msgstr "" + +#, possible-boost-format +msgid "File does NOT exist (%1%)." +msgstr "" + +#, possible-boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "" + +#, possible-boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "" + +#, possible-boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "" + +msgid "Vertex" +msgstr "" + +msgid "Edge" +msgstr "" + +msgid "Plane" +msgstr "" + +msgid "Point on edge" +msgstr "" + +msgid "Point on circle" +msgstr "" + +msgid "Point on plane" +msgstr "" + +msgid "Center of edge" +msgstr "" + +msgid "Center of circle" +msgstr "" + +msgid "ShiftLeft mouse button" +msgstr "" + +msgid "Select feature" +msgstr "" + +msgid "Select point" +msgstr "" + +msgid "Delete" +msgstr "" + +msgid "Restart selection" +msgstr "" + +msgid "Esc" +msgstr "" + +msgid "Unselect" +msgstr "" + +msgid "Measure" +msgstr "" + +msgid "Edit to scale" +msgstr "" + +msgctxt "Verb" +msgid "Scale" +msgstr "" + +msgid "None" +msgstr "" + +msgid "Diameter" +msgstr "" + +msgid "Length" +msgstr "" + +msgid "Selection" +msgstr "" + +msgid "Copy to clipboard" +msgstr "" + +msgid "Perpendicular distance" +msgstr "" + +msgid "Distance" +msgstr "" + +msgid "Direct distance" +msgstr "" + +msgid "Distance XYZ" +msgstr "" + +msgid "Ctrl+" +msgstr "" + +msgid "Notice" +msgstr "" + +msgid "Undefined" +msgstr "" + +#, possible-boost-format +msgid "%1% was replaced with %2%" +msgstr "" + +msgid "The configuration may be generated by a newer version of Snapmaker_Orca." +msgstr "" + +msgid "Some values have been replaced. Please check them:" +msgstr "" + +msgid "Process" +msgstr "" + +msgid "Filament" +msgstr "" + +msgid "Machine" +msgstr "" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" + +#, possible-boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" + +msgid "" +"Snapmaker_Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" + +msgid "Fatal error" +msgstr "" + +msgid "" +"Snapmaker_Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" + +msgid "Critical error" +msgstr "" + +#, possible-boost-format +msgid "Snapmaker_Orca got an unhandled exception: %1%" +msgstr "" + +msgid "Untitled" +msgstr "" + +msgid "Downloading Bambu Network Plug-in" +msgstr "" + +msgid "Login information expired. Please login again." +msgstr "" + +msgid "Incorrect password" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" + +msgid "WebView2 Runtime" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" + +msgid "Remember my choice" +msgstr "" + +msgid "Loading configuration" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Click to download new version in default browser: %s" +msgstr "" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "" + +msgid "This is the newest version." +msgstr "" + +msgid "Info" +msgstr "" + +msgid "" +"The Snapmaker_Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker_Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" + +msgid "Rebuild" +msgstr "" + +msgid "Loading current presets" +msgstr "" + +msgid "Loading a mode view" +msgstr "" + +msgid "Choose one file (3mf):" +msgstr "" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "" + +msgid "Choose ZIP file" +msgstr "" + +msgid "Choose one file (gcode/3mf):" +msgstr "" + +msgid "Some presets are modified." +msgstr "" + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" + +msgid "User logged out" +msgstr "" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" + +msgid "Open Project" +msgstr "" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" + +msgid "Privacy Policy Update" +msgstr "" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" + +msgid "Sync user presets" +msgstr "" + +msgid "Loading user preset" +msgstr "" + +msgid "Switching application language" +msgstr "" + +msgid "Select the language" +msgstr "" + +msgid "Language" +msgstr "" + +msgid "*" +msgstr "" + +msgid "The uploads are still ongoing" +msgstr "" + +msgid "Stop them and continue anyway?" +msgstr "" + +msgid "Ongoing uploads" +msgstr "" + +msgid "Select a G-code file:" +msgstr "" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" + +msgid "Import File" +msgstr "" + +msgid "Choose files" +msgstr "" + +msgid "New Folder" +msgstr "" + +msgid "Open" +msgstr "" + +msgid "Rename" +msgstr "" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "" + +#, possible-boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "" + +msgid "Quality" +msgstr "" + +msgid "Shell" +msgstr "" + +msgid "Infill" +msgstr "" + +msgid "Support" +msgstr "" + +msgid "Flush options" +msgstr "" + +msgid "Speed" +msgstr "" + +msgid "Strength" +msgstr "" + +msgid "Top Solid Layers" +msgstr "" + +msgid "Top Minimum Shell Thickness" +msgstr "" + +msgid "Bottom Solid Layers" +msgstr "" + +msgid "Bottom Minimum Shell Thickness" +msgstr "" + +msgid "Ironing" +msgstr "" + +msgid "Fuzzy Skin" +msgstr "" + +msgid "Extruders" +msgstr "" + +msgid "Extrusion Width" +msgstr "" + +msgid "Wipe options" +msgstr "" + +msgid "Bed adhesion" +msgstr "" + +msgid "Add part" +msgstr "" + +msgid "Add negative part" +msgstr "" + +msgid "Add modifier" +msgstr "" + +msgid "Add support blocker" +msgstr "" + +msgid "Add support enforcer" +msgstr "" + +msgid "Add text" +msgstr "" + +msgid "Add negative text" +msgstr "" + +msgid "Add text modifier" +msgstr "" + +msgid "Add SVG part" +msgstr "" + +msgid "Add negative SVG" +msgstr "" + +msgid "Add SVG modifier" +msgstr "" + +msgid "Select settings" +msgstr "" + +msgid "Hide" +msgstr "" + +msgid "Show" +msgstr "" + +msgid "Del" +msgstr "" + +msgid "Delete the selected object" +msgstr "" + +msgid "Load..." +msgstr "" + +msgid "Cube" +msgstr "" + +msgid "Cylinder" +msgstr "" + +msgid "Cone" +msgstr "" + +msgid "Disc" +msgstr "" + +msgid "Torus" +msgstr "" + +msgid "Orca Cube" +msgstr "" + +msgid "3DBenchy" +msgstr "" + +msgid "Autodesk FDM Test" +msgstr "" + +msgid "Voron Cube" +msgstr "" + +msgid "Stanford Bunny" +msgstr "" + +msgid "Orca String Hell" +msgstr "" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" + +msgid "Text" +msgstr "" + +msgid "Height range Modifier" +msgstr "" + +msgid "Add settings" +msgstr "" + +msgid "Change type" +msgstr "" + +msgid "Set as an individual object" +msgstr "" + +msgid "Set as individual objects" +msgstr "" + +msgid "Fill bed with copies" +msgstr "" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "" + +msgid "Printable" +msgstr "" + +msgid "Fix model" +msgstr "" + +msgid "Export as one STL" +msgstr "" + +msgid "Export as STLs" +msgstr "" + +msgid "Reload from disk" +msgstr "" + +msgid "Reload the selected parts from disk" +msgstr "" + +msgid "Replace with STL" +msgstr "" + +msgid "Replace the selected part with new STL" +msgstr "" + +msgid "Change filament" +msgstr "" + +msgid "Set filament for selected items" +msgstr "" + +msgid "Default" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Filament %d" +msgstr "" + +msgid "current" +msgstr "" + +msgid "Scale to build volume" +msgstr "" + +msgid "Scale an object to fit the build volume" +msgstr "" + +msgid "Flush Options" +msgstr "" + +msgid "Flush into objects' infill" +msgstr "" + +msgid "Flush into this object" +msgstr "" + +msgid "Flush into objects' support" +msgstr "" + +msgid "Edit in Parameter Table" +msgstr "" + +msgid "Convert from inch" +msgstr "" + +msgid "Restore to inch" +msgstr "" + +msgid "Convert from meter" +msgstr "" + +msgid "Restore to meter" +msgstr "" + +msgid "Assemble" +msgstr "" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "" + +msgid "Assemble the selected objects to an object with single part" +msgstr "" + +msgid "Mesh boolean" +msgstr "" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "" + +msgid "Along X axis" +msgstr "" + +msgid "Mirror along the X axis" +msgstr "" + +msgid "Along Y axis" +msgstr "" + +msgid "Mirror along the Y axis" +msgstr "" + +msgid "Along Z axis" +msgstr "" + +msgid "Mirror along the Z axis" +msgstr "" + +msgid "Mirror object" +msgstr "" + +msgid "Edit text" +msgstr "" + +msgid "Ability to change text, font, size, ..." +msgstr "" + +msgid "Edit SVG" +msgstr "" + +msgid "Change SVG source file, projection, size, ..." +msgstr "" + +msgid "Invalidate cut info" +msgstr "" + +msgid "Add Primitive" +msgstr "" + +msgid "Add Handy models" +msgstr "" + +msgid "Add Models" +msgstr "" + +msgid "Show Labels" +msgstr "" + +msgid "To objects" +msgstr "" + +msgid "Split the selected object into multiple objects" +msgstr "" + +msgid "To parts" +msgstr "" + +msgid "Split the selected object into multiple parts" +msgstr "" + +msgid "Split" +msgstr "" + +msgid "Split the selected object" +msgstr "" + +msgid "Auto orientation" +msgstr "" + +msgid "Auto orient the object to improve print quality." +msgstr "" + +msgid "Select All" +msgstr "" + +msgid "select all objects on current plate" +msgstr "" + +msgid "Delete All" +msgstr "" + +msgid "delete all objects on current plate" +msgstr "" + +msgid "Arrange" +msgstr "" + +msgid "arrange current plate" +msgstr "" + +msgid "Reload All" +msgstr "" + +msgid "reload all from disk" +msgstr "" + +msgid "Auto Rotate" +msgstr "" + +msgid "auto rotate current plate" +msgstr "" + +msgid "Delete Plate" +msgstr "" + +msgid "Remove the selected plate" +msgstr "" + +msgid "Clone" +msgstr "" + +msgid "Simplify Model" +msgstr "" + +msgid "Center" +msgstr "" + +msgid "Edit Process Settings" +msgstr "" + +msgid "Edit print parameters for a single object" +msgstr "" + +msgid "Change Filament" +msgstr "" + +msgid "Set Filament for selected items" +msgstr "" + +msgid "Unlock" +msgstr "" + +msgid "Lock" +msgstr "" + +msgid "Edit Plate Name" +msgstr "" + +msgid "Name" +msgstr "" + +msgid "Fila." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "" +msgstr[1] "" + +#, possible-c-format, possible-boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "" +msgstr[1] "" + +msgid "Remaining errors" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "" +msgstr[1] "" + +msgid "Right click the icon to fix model object" +msgstr "" + +msgid "Right button click the icon to drop the object settings" +msgstr "" + +msgid "Click the icon to reset all settings of the object" +msgstr "" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" + +msgid "Click the icon to toggle printable property of the object" +msgstr "" + +msgid "Click the icon to edit support painting of the object" +msgstr "" + +msgid "Click the icon to edit color painting of the object" +msgstr "" + +msgid "Click the icon to shift this object to the bed" +msgstr "" + +msgid "Loading file" +msgstr "" + +msgid "Error!" +msgstr "" + +msgid "Failed to get the model data in the current file." +msgstr "" + +msgid "Generic" +msgstr "" + +msgid "Add Modifier" +msgstr "" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" + +msgid "Delete connector from object which is a part of cut" +msgstr "" + +msgid "Delete solid part from object which is a part of cut" +msgstr "" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" + +msgid "Delete all connectors" +msgstr "" + +msgid "Deleting the last solid part is not allowed." +msgstr "" + +msgid "The target object contains only one part and can not be splited." +msgstr "" + +msgid "Assembly" +msgstr "" + +msgid "Cut Connectors information" +msgstr "" + +msgid "Object manipulation" +msgstr "" + +msgid "Group manipulation" +msgstr "" + +msgid "Object Settings to modify" +msgstr "" + +msgid "Part Settings to modify" +msgstr "" + +msgid "Layer range Settings to modify" +msgstr "" + +msgid "Part manipulation" +msgstr "" + +msgid "Instance manipulation" +msgstr "" + +msgid "Height ranges" +msgstr "" + +msgid "Settings for height range" +msgstr "" + +msgid "Layer" +msgstr "" + +msgid "Selection conflicts" +msgstr "" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" + +msgid "The type of the last solid object part is not to be changed." +msgstr "" + +msgid "Negative Part" +msgstr "" + +msgid "Support Blocker" +msgstr "" + +msgid "Support Enforcer" +msgstr "" + +msgid "Type:" +msgstr "" + +msgid "Choose part type" +msgstr "" + +msgid "Enter new name" +msgstr "" + +msgid "Renaming" +msgstr "" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "" +msgstr[1] "" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "" +msgstr[1] "" + +msgid "Repairing was canceled" +msgstr "" + +msgid "Additional process preset" +msgstr "" + +msgid "Remove parameter" +msgstr "" + +msgid "to" +msgstr "" + +msgid "Remove height range" +msgstr "" + +msgid "Add height range" +msgstr "" + +msgid "Invalid numeric." +msgstr "" + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" + +msgid "multiple cells copy is not supported" +msgstr "" + +msgid "Outside" +msgstr "" + +msgid "Layer height" +msgstr "" + +msgid "Wall loops" +msgstr "" + +msgid "Infill density(%)" +msgstr "" + +msgid "Auto Brim" +msgstr "" + +msgid "Mouse ear" +msgstr "" + +msgid "Outer brim only" +msgstr "" + +msgid "Inner brim only" +msgstr "" + +msgid "Outer and inner brim" +msgstr "" + +msgid "No-brim" +msgstr "" + +msgid "Outer wall speed" +msgstr "" + +msgid "Plate" +msgstr "" + +msgid "Brim" +msgstr "" + +msgid "Object/Part Setting" +msgstr "" + +msgid "Reset parameter" +msgstr "" + +msgid "Multicolor Print" +msgstr "" + +msgid "Line Type" +msgstr "" + +msgid "More" +msgstr "" + +msgid "Open Preferences." +msgstr "" + +msgid "Open next tip." +msgstr "" + +msgid "Open Documentation in web browser." +msgstr "" + +msgid "Color" +msgstr "" + +msgid "Pause" +msgstr "" + +msgid "Template" +msgstr "" + +msgid "Custom" +msgstr "" + +msgid "Pause:" +msgstr "" + +msgid "Custom Template:" +msgstr "" + +msgid "Custom G-code:" +msgstr "" + +msgid "Custom G-code" +msgstr "" + +msgid "Enter Custom G-code used on current layer:" +msgstr "" + +msgid "Jump to Layer" +msgstr "" + +msgid "Please enter the layer number" +msgstr "" + +msgid "Add Pause" +msgstr "" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "" + +msgid "Add Custom G-code" +msgstr "" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "" + +msgid "Add Custom Template" +msgstr "" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "" + +msgid "Filament " +msgstr "" + +msgid "Change filament at the beginning of this layer." +msgstr "" + +msgid "Delete Pause" +msgstr "" + +msgid "Delete Custom Template" +msgstr "" + +msgid "Edit Custom G-code" +msgstr "" + +msgid "Delete Custom G-code" +msgstr "" + +msgid "Delete Filament Change" +msgstr "" + +msgid "No printer" +msgstr "" + +msgid "..." +msgstr "" + +msgid "Failed to connect to the server" +msgstr "" + +msgid "Check the status of current system services" +msgstr "" + +msgid "code" +msgstr "" + +msgid "Failed to connect to cloud service" +msgstr "" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "" + +msgid "Failed to connect to the printer" +msgstr "" + +msgid "Connection to printer failed" +msgstr "" + +msgid "Please check the network connection of the printer and Orca." +msgstr "" + +msgid "Connecting..." +msgstr "" + +msgid "?" +msgstr "" + +msgid "/" +msgstr "" + +msgid "Empty" +msgstr "" + +msgid "AMS" +msgstr "" + +msgid "Auto Refill" +msgstr "" + +msgid "AMS not connected" +msgstr "" + +msgid "Load" +msgstr "" + +msgid "Unload" +msgstr "" + +msgid "Ext Spool" +msgstr "" + +msgid "Tips" +msgstr "" + +msgid "Guide" +msgstr "" + +msgid "Retry" +msgstr "" + +msgid "Calibrating AMS..." +msgstr "" + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" + +msgid "Calibrate again" +msgstr "" + +msgid "Cancel calibration" +msgstr "" + +msgid "Idling..." +msgstr "" + +msgid "Heat the nozzle" +msgstr "" + +msgid "Cut filament" +msgstr "" + +msgid "Pull back current filament" +msgstr "" + +msgid "Push new filament into extruder" +msgstr "" + +msgid "Purge old filament" +msgstr "" + +msgid "Feed Filament" +msgstr "" + +msgid "Confirm extruded" +msgstr "" + +msgid "Check filament location" +msgstr "" + +msgid "Grab new filament" +msgstr "" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" + +msgid "Edit" +msgstr "" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" + +msgid "No arrangable objects are selected." +msgstr "" + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" + +msgid "Arranging..." +msgstr "" + +msgid "Arranging" +msgstr "" + +msgid "Arranging canceled." +msgstr "" + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" + +msgid "Arranging done." +msgstr "" + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" + +msgid "Orienting..." +msgstr "" + +msgid "Orienting" +msgstr "" + +msgid "Orienting canceled." +msgstr "" + +msgid "Filling" +msgstr "" + +msgid "Bed filling canceled." +msgstr "" + +msgid "Bed filling done." +msgstr "" + +msgid "Searching for optimal orientation" +msgstr "" + +msgid "Orientation search canceled." +msgstr "" + +msgid "Orientation found." +msgstr "" + +msgid "Logging in" +msgstr "" + +msgid "Login failed" +msgstr "" + +msgid "Please check the printer network connection." +msgstr "" + +msgid "Abnormal print file data. Please slice again." +msgstr "" + +msgid "Task canceled." +msgstr "" + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" + +msgid "Cloud service connection failed. Please try again." +msgstr "" + +msgid "Print file not found. please slice again." +msgstr "" + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" + +msgid "Failed to send the print job. Please try again." +msgstr "" + +msgid "Failed to upload file to ftp. Please try again." +msgstr "" + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" + +msgid "Sending print job over LAN" +msgstr "" + +msgid "Sending print job through cloud service" +msgstr "" + +msgid "Print task sending times out." +msgstr "" + +msgid "Service Unavailable" +msgstr "" + +msgid "Unknown Error." +msgstr "" + +msgid "Sending print configuration" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "" + +msgid "Sending gcode file over LAN" +msgstr "" + +msgid "Sending gcode file to sdcard" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "" + +msgid "Importing SLA archive" +msgstr "" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" + +msgid "Importing canceled." +msgstr "" + +msgid "Importing done." +msgstr "" + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "" + +msgid "Please check your object list before preset changing." +msgstr "" + +msgid "Attention!" +msgstr "" + +msgid "Downloading" +msgstr "" + +msgid "Download failed" +msgstr "" + +msgid "Cancelled" +msgstr "" + +msgid "Install successfully." +msgstr "" + +msgid "Installing" +msgstr "" + +msgid "Install failed" +msgstr "" + +msgid "Portions copyright" +msgstr "" + +msgid "Copyright" +msgstr "" + +msgid "License" +msgstr "" + +msgid "Snapmaker Orca is licensed under " +msgstr "" + +msgid "GNU Affero General Public License, version 3" +msgstr "" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "" + +msgid "Libraries" +msgstr "" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "About %s" +msgstr "" + +msgid "Snapmaker Orca " +msgstr "" + +msgid "Snapmaker_Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "" + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "" + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "" + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" + +msgid "Version" +msgstr "" + +msgid "AMS Materials Setting" +msgstr "" + +msgid "Confirm" +msgstr "" + +msgid "Close" +msgstr "" + +msgid "Colour" +msgstr "" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" + +msgid "max" +msgstr "" + +msgid "min" +msgstr "" + +#, possible-boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "" + +msgid "SN" +msgstr "" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "" + +msgid "PA Profile" +msgstr "" + +msgid "Factor K" +msgstr "" + +msgid "Factor N" +msgstr "" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "" + +msgid "Are you sure you want to clear the filament information?" +msgstr "" + +msgid "You need to select the material type and color first." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" + +msgid "Other Color" +msgstr "" + +msgid "Custom Color" +msgstr "" + +msgid "Dynamic flow calibration" +msgstr "" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" + +msgid "Nozzle Diameter" +msgstr "" + +msgid "Bed Type" +msgstr "" + +msgid "Nozzle temperature" +msgstr "" + +msgid "Bed Temperature" +msgstr "" + +msgid "Max volumetric speed" +msgstr "" + +msgid "℃" +msgstr "" + +msgid "Bed temperature" +msgstr "" + +msgid "mm³" +msgstr "" + +msgid "Start calibration" +msgstr "" + +msgid "Next" +msgstr "" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" + +msgid "Save" +msgstr "" + +msgid "Last Step" +msgstr "" + +msgid "Example" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Calibrating... %d%%" +msgstr "" + +msgid "Calibration completed" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%s does not support %s" +msgstr "" + +msgid "Dynamic flow Calibration" +msgstr "" + +msgid "Step" +msgstr "" + +msgid "AMS Slots" +msgstr "" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" + +msgid "Enable AMS" +msgstr "" + +msgid "Print with filaments in the AMS" +msgstr "" + +msgid "Disable AMS" +msgstr "" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "" + +msgid "Current Cabin humidity" +msgstr "" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" + +msgid "Filament used in this print job" +msgstr "" + +msgid "AMS slot used for this filament" +msgstr "" + +msgid "Click to select AMS slot manually" +msgstr "" + +msgid "Do not Enable AMS" +msgstr "" + +msgid "Print using materials mounted on the back of the case" +msgstr "" + +msgid "Print with filaments in ams" +msgstr "" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" + +msgid "Group" +msgstr "" + +msgid "The printer does not currently support auto refill." +msgstr "" + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" + +msgid "DRY" +msgstr "" + +msgid "WET" +msgstr "" + +msgid "AMS Settings" +msgstr "" + +msgid "Insertion update" +msgstr "" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" + +msgid "Power on update" +msgstr "" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" + +msgid "Update remaining capacity" +msgstr "" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" + +msgid "AMS filament backup" +msgstr "" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" + +msgid "Air Printing Detection" +msgstr "" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" + +msgid "File" +msgstr "" + +msgid "Calibration" +msgstr "" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" + +msgid "click here to see more info" +msgstr "" + +msgid "Please home all axes (click " +msgstr "" + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" + +msgid "Go Home" +msgstr "" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" + +msgid "Please save project and restart the program. " +msgstr "" + +msgid "Processing G-Code from Previous file..." +msgstr "" + +msgid "Slicing complete" +msgstr "" + +msgid "Access violation" +msgstr "" + +msgid "Illegal instruction" +msgstr "" + +msgid "Divide by zero" +msgstr "" + +msgid "Overflow" +msgstr "" + +msgid "Underflow" +msgstr "" + +msgid "Floating reserved operand" +msgstr "" + +msgid "Stack overflow" +msgstr "" + +msgid "Running post-processing scripts" +msgstr "" + +msgid "Successfully executed post-processing script" +msgstr "" + +msgid "Unknown error occured during exporting G-code." +msgstr "" + +#, possible-boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" + +#, possible-boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" + +#, possible-boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" + +#, possible-boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" + +#, possible-boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" + +#, possible-boost-format +msgid "G-code file exported to %1%" +msgstr "" + +msgid "Unknown error when export G-code." +msgstr "" + +#, possible-boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "" + +#, possible-boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" + +msgid "Device" +msgstr "" + +msgid "Task Sending" +msgstr "" + +msgid "Task Sent" +msgstr "" + +msgid "Edit multiple printers" +msgstr "" + +msgid "Select connected printers (0/6)" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "" + +msgid "Offline" +msgstr "" + +msgid "No task" +msgstr "" + +msgid "View" +msgstr "" + +msgid "N/A" +msgstr "" + +msgid "Edit Printers" +msgstr "" + +msgid "Device Name" +msgstr "" + +msgid "Task Name" +msgstr "" + +msgid "Device Status" +msgstr "" + +msgid "Actions" +msgstr "" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" + +msgid "Add" +msgstr "" + +msgid "Idle" +msgstr "" + +msgid "Printing" +msgstr "" + +msgid "Upgrading" +msgstr "" + +msgid "Incompatible" +msgstr "" + +msgid "syncing" +msgstr "" + +msgid "Printing Finish" +msgstr "" + +msgid "Printing Failed" +msgstr "" + +msgid "Printing Pause" +msgstr "" + +msgid "Prepare" +msgstr "" + +msgid "Slicing" +msgstr "" + +msgid "Pending" +msgstr "" + +msgid "Sending" +msgstr "" + +msgid "Sending Finish" +msgstr "" + +msgid "Sending Cancel" +msgstr "" + +msgid "Sending Failed" +msgstr "" + +msgid "Print Success" +msgstr "" + +msgid "Print Failed" +msgstr "" + +msgid "Removed" +msgstr "" + +msgid "Resume" +msgstr "" + +msgid "Stop" +msgstr "" + +msgid "Task Status" +msgstr "" + +msgid "Sent Time" +msgstr "" + +msgid "There are no tasks to be sent!" +msgstr "" + +msgid "No historical tasks!" +msgstr "" + +msgid "Loading..." +msgstr "" + +msgid "No AMS" +msgstr "" + +msgid "Send to Multi-device" +msgstr "" + +msgid "Preparing print job" +msgstr "" + +msgid "Abnormal print file data. Please slice again" +msgstr "" + +msgid "There is no device available to send printing." +msgstr "" + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" + +msgid "Use External Spool" +msgstr "" + +msgid "Use AMS" +msgstr "" + +msgid "Select Printers" +msgstr "" + +msgid "Ams Status" +msgstr "" + +msgid "Printing Options" +msgstr "" + +msgid "Bed Leveling" +msgstr "" + +msgid "Timelapse" +msgstr "" + +msgid "Flow Dynamic Calibration" +msgstr "" + +msgid "Send Options" +msgstr "" + +msgid "Send to" +msgstr "" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" + +msgid "Wait" +msgstr "" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" + +msgid "Send" +msgstr "" + +msgid "Name is invalid;" +msgstr "" + +msgid "illegal characters:" +msgstr "" + +msgid "illegal suffix:" +msgstr "" + +msgid "The name is not allowed to be empty." +msgstr "" + +msgid "The name is not allowed to start with space character." +msgstr "" + +msgid "The name is not allowed to end with space character." +msgstr "" + +msgid "The name length exceeds the limit." +msgstr "" + +msgid "Origin" +msgstr "" + +msgid "Size in X and Y of the rectangular plate." +msgstr "" + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" + +msgid "Rectangular" +msgstr "" + +msgid "Circular" +msgstr "" + +msgid "Load shape from STL..." +msgstr "" + +msgid "Settings" +msgstr "" + +msgid "Texture" +msgstr "" + +msgid "Remove" +msgstr "" + +msgid "Not found:" +msgstr "" + +msgid "Model" +msgstr "" + +msgid "Choose an STL file to import bed shape from:" +msgstr "" + +msgid "Invalid file format." +msgstr "" + +msgid "Error! Invalid model" +msgstr "" + +msgid "The selected file contains no geometry." +msgstr "" + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "" + +msgid "Choose an STL file to import bed model from:" +msgstr "" + +msgid "Bed Shape" +msgstr "" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" + +msgid "Please check.\n" +msgstr "" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr "" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" + +msgid "Auto bed leveling" +msgstr "" + +msgid "Heatbed preheating" +msgstr "" + +msgid "Sweeping XY mech mode" +msgstr "" + +msgid "Changing filament" +msgstr "" + +msgid "M400 pause" +msgstr "" + +msgid "Paused due to filament runout" +msgstr "" + +msgid "Heating hotend" +msgstr "" + +msgid "Calibrating extrusion" +msgstr "" + +msgid "Scanning bed surface" +msgstr "" + +msgid "Inspecting first layer" +msgstr "" + +msgid "Identifying build plate type" +msgstr "" + +msgid "Calibrating Micro Lidar" +msgstr "" + +msgid "Homing toolhead" +msgstr "" + +msgid "Cleaning nozzle tip" +msgstr "" + +msgid "Checking extruder temperature" +msgstr "" + +msgid "Printing was paused by the user" +msgstr "" + +msgid "Pause of front cover falling" +msgstr "" + +msgid "Calibrating the micro lida" +msgstr "" + +msgid "Calibrating extrusion flow" +msgstr "" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "" + +msgid "Filament unloading" +msgstr "" + +msgid "Skip step pause" +msgstr "" + +msgid "Filament loading" +msgstr "" + +msgid "Motor noise calibration" +msgstr "" + +msgid "Paused due to AMS lost" +msgstr "" + +msgid "Paused due to low speed of the heat break fan" +msgstr "" + +msgid "Paused due to chamber temperature control error" +msgstr "" + +msgid "Cooling chamber" +msgstr "" + +msgid "Paused by the Gcode inserted by user" +msgstr "" + +msgid "Motor noise showoff" +msgstr "" + +msgid "Nozzle filament covered detected pause" +msgstr "" + +msgid "Cutter error pause" +msgstr "" + +msgid "First layer error pause" +msgstr "" + +msgid "Nozzle clog pause" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Fatal" +msgstr "" + +msgid "Serious" +msgstr "" + +msgid "Common" +msgstr "" + +msgid "Update successful." +msgstr "" + +msgid "Downloading failed." +msgstr "" + +msgid "Verification failed." +msgstr "" + +msgid "Update failed." +msgstr "" + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" + +msgid "Failed to start printing job" +msgstr "" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" + +msgid "Current flowrate cali param is invalid" +msgstr "" + +msgid "Selected diameter and machine diameter do not match" +msgstr "" + +msgid "Failed to generate cali gcode" +msgstr "" + +msgid "Calibration error" +msgstr "" + +msgid "TPU is not supported by AMS." +msgstr "" + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "" + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" + +msgid "default" +msgstr "" + +#, possible-boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" + +msgid "Search gcode placeholders" +msgstr "" + +msgid "Add selected placeholder to G-code" +msgstr "" + +msgid "Select placeholder" +msgstr "" + +msgid "[Global] Slicing State" +msgstr "" + +msgid "Read Only" +msgstr "" + +msgid "Read Write" +msgstr "" + +msgid "Slicing State" +msgstr "" + +msgid "Print Statistics" +msgstr "" + +msgid "Objects Info" +msgstr "" + +msgid "Dimensions" +msgstr "" + +msgid "Temperatures" +msgstr "" + +msgid "Timestamps" +msgstr "" + +#, possible-boost-format +msgid "Specific for %1%" +msgstr "" + +msgid "Presets" +msgstr "" + +msgid "Print settings" +msgstr "" + +msgid "Filament settings" +msgstr "" + +msgid "SLA Materials settings" +msgstr "" + +msgid "Printer settings" +msgstr "" + +msgid "parameter name" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%s can't be percentage" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Value %s is out of range, continue?" +msgstr "" + +msgid "Parameter validation" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "" + +msgid "Value is out of range." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" + +#, possible-boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" + +msgid "Input value is out of range" +msgstr "" + +msgid "Some extension in the input is invalid" +msgstr "" + +#, possible-boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "" + +msgid "Layer Height" +msgstr "" + +msgid "Line Width" +msgstr "" + +msgid "Fan Speed" +msgstr "" + +msgid "Temperature" +msgstr "" + +msgid "Flow" +msgstr "" + +msgid "Tool" +msgstr "" + +msgid "Layer Time" +msgstr "" + +msgid "Layer Time (log)" +msgstr "" + +msgid "Height: " +msgstr "" + +msgid "Width: " +msgstr "" + +msgid "Speed: " +msgstr "" + +msgid "Flow: " +msgstr "" + +msgid "Layer Time: " +msgstr "" + +msgid "Fan: " +msgstr "" + +msgid "Temperature: " +msgstr "" + +msgid "Loading G-codes" +msgstr "" + +msgid "Generating geometry vertex data" +msgstr "" + +msgid "Generating geometry index data" +msgstr "" + +msgid "Statistics of All Plates" +msgstr "" + +msgid "Display" +msgstr "" + +msgid "Flushed" +msgstr "" + +msgid "Tower" +msgstr "" + +msgid "Total" +msgstr "" + +msgid "Total Estimation" +msgstr "" + +msgid "Total time" +msgstr "" + +msgid "Total cost" +msgstr "" + +msgid "Color Scheme" +msgstr "" + +msgid "Time" +msgstr "" + +msgid "Percent" +msgstr "" + +msgid "Used filament" +msgstr "" + +msgid "Layer Height (mm)" +msgstr "" + +msgid "Line Width (mm)" +msgstr "" + +msgid "Speed (mm/s)" +msgstr "" + +msgid "Fan Speed (%)" +msgstr "" + +msgid "Temperature (°C)" +msgstr "" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "" + +msgid "Travel" +msgstr "" + +msgid "Seams" +msgstr "" + +msgid "Retract" +msgstr "" + +msgid "Unretract" +msgstr "" + +msgid "Filament Changes" +msgstr "" + +msgid "Wipe" +msgstr "" + +msgid "Options" +msgstr "" + +msgid "travel" +msgstr "" + +msgid "Extruder" +msgstr "" + +msgid "Filament change times" +msgstr "" + +msgid "Cost" +msgstr "" + +msgid "Print" +msgstr "" + +msgid "Color change" +msgstr "" + +msgid "Printer" +msgstr "" + +msgid "Custom g-code" +msgstr "" + +msgid "ToolChange" +msgstr "" + +msgid "Time Estimation" +msgstr "" + +msgid "Normal mode" +msgstr "" + +msgid "Total Filament" +msgstr "" + +msgid "Model Filament" +msgstr "" + +msgid "Prepare time" +msgstr "" + +msgid "Model printing time" +msgstr "" + +msgid "Switch to silent mode" +msgstr "" + +msgid "Switch to normal mode" +msgstr "" + +msgid "Variable layer height" +msgstr "" + +msgid "Adaptive" +msgstr "" + +msgid "Quality / Speed" +msgstr "" + +msgid "Smooth" +msgstr "" + +msgid "Radius" +msgstr "" + +msgid "Keep min" +msgstr "" + +msgid "Left mouse button:" +msgstr "" + +msgid "Add detail" +msgstr "" + +msgid "Right mouse button:" +msgstr "" + +msgid "Remove detail" +msgstr "" + +msgid "Shift + Left mouse button:" +msgstr "" + +msgid "Reset to base" +msgstr "" + +msgid "Shift + Right mouse button:" +msgstr "" + +msgid "Smoothing" +msgstr "" + +msgid "Mouse wheel:" +msgstr "" + +msgid "Increase/decrease edit area" +msgstr "" + +msgid "Sequence" +msgstr "" + +msgid "Mirror Object" +msgstr "" + +msgid "Tool Move" +msgstr "" + +msgid "Tool Rotate" +msgstr "" + +msgid "Move Object" +msgstr "" + +msgid "Auto Orientation options" +msgstr "" + +msgid "Enable rotation" +msgstr "" + +msgid "Optimize support interface area" +msgstr "" + +msgid "Orient" +msgstr "" + +msgid "Arrange options" +msgstr "" + +msgid "Spacing" +msgstr "" + +msgid "0 means auto spacing." +msgstr "" + +msgid "Auto rotate for arrangement" +msgstr "" + +msgid "Allow multiple materials on same plate" +msgstr "" + +msgid "Avoid extrusion calibration region" +msgstr "" + +msgid "Align to Y axis" +msgstr "" + +msgid "Add plate" +msgstr "" + +msgid "Auto orient" +msgstr "" + +msgid "Arrange all objects" +msgstr "" + +msgid "Arrange objects on selected plates" +msgstr "" + +msgid "Split to objects" +msgstr "" + +msgid "Split to parts" +msgstr "" + +msgid "Assembly View" +msgstr "" + +msgid "Select Plate" +msgstr "" + +msgid "Assembly Return" +msgstr "" + +msgid "return" +msgstr "" + +msgid "Paint Toolbar" +msgstr "" + +msgid "Explosion Ratio" +msgstr "" + +msgid "Section View" +msgstr "" + +msgid "Assemble Control" +msgstr "" + +msgid "Total Volume:" +msgstr "" + +msgid "Assembly Info" +msgstr "" + +msgid "Volume:" +msgstr "" + +msgid "Size:" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" + +msgid "An object is layed over the boundary of plate." +msgstr "" + +msgid "A G-code path goes beyond the max print height." +msgstr "" + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "" + +msgid "Only the object being edit is visible." +msgstr "" + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" + +msgid "Calibration step selection" +msgstr "" + +msgid "Micro lidar calibration" +msgstr "" + +msgid "Bed leveling" +msgstr "" + +msgid "Vibration compensation" +msgstr "" + +msgid "Motor noise cancellation" +msgstr "" + +msgid "Calibration program" +msgstr "" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" + +msgid "Calibration Flow" +msgstr "" + +msgid "Start Calibration" +msgstr "" + +msgid "Completed" +msgstr "" + +msgid "Calibrating" +msgstr "" + +msgid "No step selected" +msgstr "" + +msgid "Auto-record Monitoring" +msgstr "" + +msgid "Go Live" +msgstr "" + +msgid "Liveview Retry" +msgstr "" + +msgid "Resolution" +msgstr "" + +msgid "Enable" +msgstr "" + +msgid "Hostname or IP" +msgstr "" + +msgid "Custom camera source" +msgstr "" + +msgid "Show \"Live Video\" guide page." +msgstr "" + +msgid "720p" +msgstr "" + +msgid "1080p" +msgstr "" + +msgid "ConnectPrinter(LAN)" +msgstr "" + +msgid "Please input the printer access code:" +msgstr "" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" + +msgid "Invalid input." +msgstr "" + +msgid "New Window" +msgstr "" + +msgid "Open a new window" +msgstr "" + +msgid "Application is closing" +msgstr "" + +msgid "Closing Application while some presets are modified." +msgstr "" + +msgid "Logging" +msgstr "" + +msgid "Preview" +msgstr "" + +msgid "Multi-device" +msgstr "" + +msgid "Project" +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "No" +msgstr "" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "" + +msgid "Slice plate" +msgstr "" + +msgid "Print plate" +msgstr "" + +msgid "Slice all" +msgstr "" + +msgid "Export G-code file" +msgstr "" + +msgid "Export plate sliced file" +msgstr "" + +msgid "Export all sliced file" +msgstr "" + +msgid "Print all" +msgstr "" + +msgid "Send all" +msgstr "" + +msgid "Keyboard Shortcuts" +msgstr "" + +msgid "Show the list of the keyboard shortcuts" +msgstr "" + +msgid "Setup Wizard" +msgstr "" + +msgid "Show Configuration Folder" +msgstr "" + +msgid "Show Tip of the Day" +msgstr "" + +msgid "Check for Update" +msgstr "" + +msgid "Open Network Test" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "&About %s" +msgstr "" + +msgid "Upload Models" +msgstr "" + +msgid "Download Models" +msgstr "" + +msgid "Default View" +msgstr "" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "" + +msgid "Top View" +msgstr "" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "" + +msgid "Bottom View" +msgstr "" + +msgid "Front" +msgstr "" + +msgid "Front View" +msgstr "" + +msgid "Rear" +msgstr "" + +msgid "Rear View" +msgstr "" + +msgid "Left" +msgstr "" + +msgid "Left View" +msgstr "" + +msgid "Right" +msgstr "" + +msgid "Right View" +msgstr "" + +msgid "Start a new window" +msgstr "" + +msgid "New Project" +msgstr "" + +msgid "Start a new project" +msgstr "" + +msgid "Open a project file" +msgstr "" + +msgid "Recent projects" +msgstr "" + +msgid "Save Project" +msgstr "" + +msgid "Save current project to file" +msgstr "" + +msgid "Save Project as" +msgstr "" + +msgid "Shift+" +msgstr "" + +msgid "Save current project as" +msgstr "" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "" + +msgid "Load a model" +msgstr "" + +msgid "Import Zip Archive" +msgstr "" + +msgid "Load models contained within a zip archive" +msgstr "" + +msgid "Import Configs" +msgstr "" + +msgid "Load configs" +msgstr "" + +msgid "Import" +msgstr "" + +msgid "Export all objects as one STL" +msgstr "" + +msgid "Export all objects as STLs" +msgstr "" + +msgid "Export Generic 3MF" +msgstr "" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "" + +msgid "Export current sliced file" +msgstr "" + +msgid "Export all plate sliced file" +msgstr "" + +msgid "Export G-code" +msgstr "" + +msgid "Export current plate as G-code" +msgstr "" + +msgid "Export Preset Bundle" +msgstr "" + +msgid "Export current configuration to files" +msgstr "" + +msgid "Export" +msgstr "" + +msgid "Quit" +msgstr "" + +msgid "Undo" +msgstr "" + +msgid "Redo" +msgstr "" + +msgid "Cut selection to clipboard" +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Copy selection to clipboard" +msgstr "" + +msgid "Paste" +msgstr "" + +msgid "Paste clipboard" +msgstr "" + +msgid "Delete selected" +msgstr "" + +msgid "Deletes the current selection" +msgstr "" + +msgid "Delete all" +msgstr "" + +msgid "Deletes all objects" +msgstr "" + +msgid "Clone selected" +msgstr "" + +msgid "Clone copies of selections" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Selects all objects" +msgstr "" + +msgid "Deselect all" +msgstr "" + +msgid "Deselects all objects" +msgstr "" + +msgid "Use Perspective View" +msgstr "" + +msgid "Use Orthogonal View" +msgstr "" + +msgid "Show &G-code Window" +msgstr "" + +msgid "Show g-code window in Previce scene" +msgstr "" + +msgid "Show 3D Navigator" +msgstr "" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "" + +msgid "Reset Window Layout" +msgstr "" + +msgid "Reset to default window layout" +msgstr "" + +msgid "Show &Labels" +msgstr "" + +msgid "Show object labels in 3D scene" +msgstr "" + +msgid "Show &Overhang" +msgstr "" + +msgid "Show object overhang highlight in 3D scene" +msgstr "" + +msgid "Preferences" +msgstr "" + +msgid "Help" +msgstr "" + +msgid "Temperature Calibration" +msgstr "" + +msgid "Pass 1" +msgstr "" + +msgid "Flow rate test - Pass 1" +msgstr "" + +msgid "Pass 2" +msgstr "" + +msgid "Flow rate test - Pass 2" +msgstr "" + +msgid "Flow rate" +msgstr "" + +msgid "Pressure advance" +msgstr "" + +msgid "Retraction test" +msgstr "" + +msgid "Orca Tolerance Test" +msgstr "" + +msgid "Max flowrate" +msgstr "" + +msgid "VFA" +msgstr "" + +msgid "More..." +msgstr "" + +msgid "Tutorial" +msgstr "" + +msgid "Calibration help" +msgstr "" + +msgid "More calibrations" +msgstr "" + +msgid "&Open G-code" +msgstr "" + +msgid "Open a G-code file" +msgstr "" + +msgid "Re&load from Disk" +msgstr "" + +msgid "Reload the plater from disk" +msgstr "" + +msgid "Export &Toolpaths as OBJ" +msgstr "" + +msgid "Export toolpaths as OBJ" +msgstr "" + +msgid "Open &Slicer" +msgstr "" + +msgid "Open Slicer" +msgstr "" + +msgid "&Quit" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Quit %s" +msgstr "" + +msgid "&File" +msgstr "" + +msgid "&View" +msgstr "" + +msgid "&Help" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "" + +msgid "Overwrite file" +msgstr "" + +msgid "Yes to All" +msgstr "" + +msgid "No to All" +msgstr "" + +msgid "Choose a directory" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +msgstr[1] "" + +msgid "Export result" +msgstr "" + +msgid "Select profile to load:" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +msgstr[1] "" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" + +msgid "Import result" +msgstr "" + +msgid "File is missing" +msgstr "" + +msgid "The project is no longer available." +msgstr "" + +msgid "Filament Settings" +msgstr "" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" + +msgid "Synchronization" +msgstr "" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" + +msgid "Please confirm if the printer is connected." +msgstr "" + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" + +msgid "Printer camera is malfunctioning." +msgstr "" + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" + +msgid "Please enter the IP of printer to connect." +msgstr "" + +msgid "Initializing..." +msgstr "" + +msgid "Connection Failed. Please check the network and try again" +msgstr "" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" + +msgid "The printer has been logged out and cannot connect." +msgstr "" + +msgid "Stopped." +msgstr "" + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" + +msgid "Downloading Virtual Camera Tools" +msgstr "" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "" + +msgid "Network unreachable" +msgstr "" + +msgid "Information" +msgstr "" + +msgid "Playing..." +msgstr "" + +msgid "Year" +msgstr "" + +msgid "Month" +msgstr "" + +msgid "All Files" +msgstr "" + +msgid "Group files by year, recent first." +msgstr "" + +msgid "Group files by month, recent first." +msgstr "" + +msgid "Show all files, recent first." +msgstr "" + +msgid "Switch to timelapse files." +msgstr "" + +msgid "Video" +msgstr "" + +msgid "Switch to video files." +msgstr "" + +msgid "Switch to 3mf model files." +msgstr "" + +msgid "Delete selected files from printer." +msgstr "" + +msgid "Download" +msgstr "" + +msgid "Download selected files from printer." +msgstr "" + +msgid "Select" +msgstr "" + +msgid "Batch manage files." +msgstr "" + +msgid "Refresh" +msgstr "" + +msgid "Reload file list from printer." +msgstr "" + +msgid "No printers." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Connect failed [%d]!" +msgstr "" + +msgid "Loading file list..." +msgstr "" + +msgid "No files" +msgstr "" + +msgid "Load failed" +msgstr "" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Initialize failed (%s)!" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +msgstr[1] "" + +msgid "Delete files" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "" + +msgid "Delete file" +msgstr "" + +msgid "Fetching model infomations ..." +msgstr "" + +msgid "Failed to fetch model information from printer." +msgstr "" + +msgid "Failed to parse model information." +msgstr "" + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" + +msgid "Download waiting..." +msgstr "" + +msgid "Play" +msgstr "" + +msgid "Open Folder" +msgstr "" + +msgid "Download finished" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Downloading %d%%..." +msgstr "" + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" + +msgid "File does not exist." +msgstr "" + +msgid "File checksum error. Please retry." +msgstr "" + +msgid "Not supported on the current printer version." +msgstr "" + +msgid "Storage unavailable, insert SD card." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Error code: %d" +msgstr "" + +msgid "Speed:" +msgstr "" + +msgid "Deadzone:" +msgstr "" + +msgid "Options:" +msgstr "" + +msgid "Zoom" +msgstr "" + +msgid "Translation/Zoom" +msgstr "" + +msgid "3Dconnexion settings" +msgstr "" + +msgid "Swap Y/Z axes" +msgstr "" + +msgid "Invert X axis" +msgstr "" + +msgid "Invert Y axis" +msgstr "" + +msgid "Invert Z axis" +msgstr "" + +msgid "Invert Yaw axis" +msgstr "" + +msgid "Invert Pitch axis" +msgstr "" + +msgid "Invert Roll axis" +msgstr "" + +msgid "Printing Progress" +msgstr "" + +msgid "0" +msgstr "" + +msgid "Layer: N/A" +msgstr "" + +msgid "Clear" +msgstr "" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" + +msgid "How do you like this printing file?" +msgstr "" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" + +msgid "Rate" +msgstr "" + +msgid "Camera" +msgstr "" + +msgid "SD Card" +msgstr "" + +msgid "Camera Setting" +msgstr "" + +msgid "Switch Camera View" +msgstr "" + +msgid "Control" +msgstr "" + +msgid "Printer Parts" +msgstr "" + +msgid "Print Options" +msgstr "" + +msgid "100%" +msgstr "" + +msgid "Lamp" +msgstr "" + +msgid "Aux" +msgstr "" + +msgid "Cham" +msgstr "" + +msgid "Bed" +msgstr "" + +msgid "Debug Info" +msgstr "" + +msgid "No SD Card" +msgstr "" + +msgid "SD Card Abnormal" +msgstr "" + +msgid "Cancel print" +msgstr "" + +msgid "Are you sure you want to cancel this print?" +msgstr "" + +msgid "Downloading..." +msgstr "" + +msgid "Cloud Slicing..." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Layer: %s" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Layer: %d/%d" +msgstr "" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" + +msgid "Still unload" +msgstr "" + +msgid "Still load" +msgstr "" + +msgid "Please select an AMS slot before calibration" +msgstr "" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" + +msgid "This only takes effect during printing" +msgstr "" + +msgid "Silent" +msgstr "" + +msgid "Standard" +msgstr "" + +msgid "Sport" +msgstr "" + +msgid "Ludicrous" +msgstr "" + +msgid "Can't start this without SD card." +msgstr "" + +msgid "Rate the Print Profile" +msgstr "" + +msgid "Comment" +msgstr "" + +msgid "Rate this print" +msgstr "" + +msgid "Add Photo" +msgstr "" + +msgid "Delete Photo" +msgstr "" + +msgid "Submit" +msgstr "" + +msgid "Please click on the star first." +msgstr "" + +msgid "InFo" +msgstr "" + +msgid "Get oss config failed." +msgstr "" + +msgid "Upload Pictrues" +msgstr "" + +msgid "Number of images successfully uploaded" +msgstr "" + +msgid " upload failed" +msgstr "" + +msgid " upload config prase failed\n" +msgstr "" + +msgid " No corresponding storage bucket\n" +msgstr "" + +msgid " can not be opened\n" +msgstr "" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" + +msgid "info" +msgstr "" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" + +msgid "Upload failed\n" +msgstr "" + +msgid "obtaining instance_id failed\n" +msgstr "" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" + +msgid "error message: " +msgstr "" + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" + +msgid "You can select up to 16 images." +msgstr "" + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" + +msgid "Status" +msgstr "" + +msgid "Update" +msgstr "" + +msgid "Don't show again" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%s error" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%s has encountered an error" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%s warning" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%s has a warning" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%s info" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%s information" +msgstr "" + +msgid "Skip" +msgstr "" + +msgid "Newer 3mf version" +msgstr "" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker_Orca " +"version." +msgstr "" + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" + +msgid "Download Beta Version" +msgstr "" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" + +msgid "Current Version: " +msgstr "" + +msgid "Latest Version: " +msgstr "" + +msgid "Not for now" +msgstr "" + +msgid "3D Mouse disconnected." +msgstr "" + +msgid "Configuration can update now." +msgstr "" + +msgid "Detail." +msgstr "" + +msgid "Integration was successful." +msgstr "" + +msgid "Integration failed." +msgstr "" + +msgid "Undo integration was successful." +msgstr "" + +msgid "New network plug-in available." +msgstr "" + +msgid "Details" +msgstr "" + +msgid "New printer config available." +msgstr "" + +msgid "Wiki" +msgstr "" + +msgid "Undo integration failed." +msgstr "" + +msgid "Exporting." +msgstr "" + +msgid "Software has New version." +msgstr "" + +msgid "Goto download page." +msgstr "" + +msgid "Open Folder." +msgstr "" + +msgid "Safely remove hardware." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "" +msgstr[1] "" + +#, possible-c-format, possible-boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "" +msgstr[1] "" + +#, possible-c-format, possible-boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "" +msgstr[1] "" + +msgid "ERROR" +msgstr "" + +msgid "COMPLETED" +msgstr "" + +msgid "CANCELED" +msgstr "" + +msgid "Cancel upload" +msgstr "" + +msgid "Jump to" +msgstr "" + +msgid "Error:" +msgstr "" + +msgid "Warning:" +msgstr "" + +msgid "Export successfully." +msgstr "" + +msgid "Model file downloaded." +msgstr "" + +msgid "Serious warning:" +msgstr "" + +msgid " (Repair)" +msgstr "" + +msgid " Click here to install it." +msgstr "" + +msgid "WARNING:" +msgstr "" + +msgid "Your model needs support ! Please make support material enable." +msgstr "" + +msgid "Gcode path overlap" +msgstr "" + +msgid "Support painting" +msgstr "" + +msgid "Color painting" +msgstr "" + +msgid "Cut connectors" +msgstr "" + +msgid "Layers" +msgstr "" + +msgid "Range" +msgstr "" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" + +msgid "Please upgrade your graphics card driver." +msgstr "" + +msgid "Unsupported OpenGL version" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" + +msgid "Error loading shaders" +msgstr "" + +msgctxt "Layers" +msgid "Top" +msgstr "" + +msgctxt "Layers" +msgid "Bottom" +msgstr "" + +msgid "Enable AI monitoring of printing" +msgstr "" + +msgid "Sensitivity of pausing is" +msgstr "" + +msgid "Enable detection of build plate position" +msgstr "" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" + +msgid "First Layer Inspection" +msgstr "" + +msgid "Auto-recovery from step loss" +msgstr "" + +msgid "Allow Prompt Sound" +msgstr "" + +msgid "Filament Tangle Detect" +msgstr "" + +msgid "Nozzle Clumping Detection" +msgstr "" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" + +msgid "Nozzle Type" +msgstr "" + +msgid "Stainless Steel" +msgstr "" + +msgid "Hardened Steel" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%.1f" +msgstr "" + +msgid "Global" +msgstr "" + +msgid "Objects" +msgstr "" + +msgid "Advance" +msgstr "" + +msgid "Compare presets" +msgstr "" + +msgid "View all object's settings" +msgstr "" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "" + +msgid "Auto orient objects on current plate" +msgstr "" + +msgid "Arrange objects on current plate" +msgstr "" + +msgid "Unlock current plate" +msgstr "" + +msgid "Lock current plate" +msgstr "" + +msgid "Edit current plate name" +msgstr "" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "" + +#, possible-boost-format +msgid " plate %1%:" +msgstr "" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "" + +msgid "Sliced Info" +msgstr "" + +msgid "Used Filament (m)" +msgstr "" + +msgid "Used Filament (mm³)" +msgstr "" + +msgid "Used Filament (g)" +msgstr "" + +msgid "Used Materials" +msgstr "" + +msgid "Estimated time" +msgstr "" + +msgid "Filament changes" +msgstr "" + +msgid "Click to edit preset" +msgstr "" + +msgid "Connection" +msgstr "" + +msgid "Bed type" +msgstr "" + +msgid "Flushing volumes" +msgstr "" + +msgid "Add one filament" +msgstr "" + +msgid "Remove last filament" +msgstr "" + +msgid "Synchronize filament list from AMS" +msgstr "" + +msgid "Set filaments to use" +msgstr "" + +msgid "Search plate, object and part." +msgstr "" + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" + +msgid "Sync filaments with AMS" +msgstr "" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" + +msgid "Sync" +msgstr "" + +msgid "Resync" +msgstr "" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "" + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" + +#, possible-boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "" + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "" + +msgid "Restore" +msgstr "" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" + +msgid "Expand sidebar" +msgstr "" + +msgid "Collapse sidebar" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Loading file: %s" +msgstr "" + +msgid "The 3mf is not supported by Snapmaker_Orca, load geometry data only." +msgstr "" + +msgid "Load 3mf" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" + +msgid "You'd better upgrade your software.\n" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" + +msgid "Invalid values found in the 3mf:" +msgstr "" + +msgid "Please correct them in the param tabs" +msgstr "" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" + +msgid "Modified G-codes" +msgstr "" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" + +msgid "Customized Preset" +msgstr "" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "" + +msgid "The name may show garbage characters!" +msgstr "" + +msgid "Remember my choice." +msgstr "" + +#, possible-boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" + +msgid "Objects with zero volume removed" +msgstr "" + +msgid "The volume of the object is zero" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" + +msgid "Object too small" +msgstr "" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" + +msgid "Multi-part object detected" +msgstr "" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "" + +msgid "Object with multiple parts was detected" +msgstr "" + +msgid "The file does not contain any geometry data." +msgstr "" + +msgid "" +"Your object appears to be too large. It will be scaled down to fit the heat " +"bed automatically." +msgstr "" + +msgid "Object too large" +msgstr "" + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" + +msgid "Export STL file:" +msgstr "" + +msgid "Export AMF file:" +msgstr "" + +msgid "Save file as:" +msgstr "" + +msgid "Export OBJ file:" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" + +msgid "Confirm Save As" +msgstr "" + +msgid "Delete object which is a part of cut object" +msgstr "" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" + +msgid "The selected object couldn't be split." +msgstr "" + +msgid "Another export job is running." +msgstr "" + +msgid "Unable to replace with more than one volume" +msgstr "" + +msgid "Error during replace" +msgstr "" + +msgid "Replace from:" +msgstr "" + +msgid "Select a new file" +msgstr "" + +msgid "File for the replace wasn't selected" +msgstr "" + +msgid "Please select a file" +msgstr "" + +msgid "Do you want to replace it" +msgstr "" + +msgid "Message" +msgstr "" + +msgid "Reload from:" +msgstr "" + +msgid "Unable to reload:" +msgstr "" + +msgid "Error during reload" +msgstr "" + +msgid "There are warnings after slicing models:" +msgstr "" + +msgid "warnings" +msgstr "" + +msgid "Invalid data" +msgstr "" + +msgid "Slicing Canceled" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Slicing Plate %d" +msgstr "" + +msgid "Please resolve the slicing errors and publish again." +msgstr "" + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" + +msgid "Creating a new project" +msgstr "" + +msgid "Load project" +msgstr "" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" + +msgid "Save project" +msgstr "" + +msgid "Importing Model" +msgstr "" + +msgid "prepare 3mf file..." +msgstr "" + +msgid "Download failed, unknown file format." +msgstr "" + +msgid "downloading project ..." +msgstr "" + +msgid "Download failed, File size exception." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Project downloaded %d%%" +msgstr "" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" + +msgid "Import SLA archive" +msgstr "" + +msgid "The selected file" +msgstr "" + +msgid "does not contain valid gcode." +msgstr "" + +msgid "Error occurs while loading G-code file" +msgstr "" + +#. TRN %1% is archive path +#, possible-boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "" + +#. TRN: First argument = path to file, second argument = error description +#, possible-boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "" + +#, possible-boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" + +msgid "Drop project file" +msgstr "" + +msgid "Please select an action" +msgstr "" + +msgid "Open as project" +msgstr "" + +msgid "Import geometry only" +msgstr "" + +msgid "Only one G-code file can be opened at the same time." +msgstr "" + +msgid "G-code loading" +msgstr "" + +msgid "G-code files can not be loaded with models together!" +msgstr "" + +msgid "Can not add models when in preview mode!" +msgstr "" + +msgid "All objects will be removed, continue?" +msgstr "" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" + +msgid "Number of copies:" +msgstr "" + +msgid "Copies of the selected object" +msgstr "" + +msgid "Save G-code file as:" +msgstr "" + +msgid "Save SLA file as:" +msgstr "" + +msgid "The provided file name is not valid." +msgstr "" + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "" + +msgid "Save Sliced file as:" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" + +#, possible-boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "" + +#, possible-boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "" + +#, possible-boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "" + +#, possible-boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "" + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" + +msgid "Private protection" +msgstr "" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" + +msgid "Upload and Print" +msgstr "" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" + +msgid "Send G-code" +msgstr "" + +msgid "Send to printer" +msgstr "" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" + +msgid "Optimize Rotation" +msgstr "" + +msgid "Invalid number" +msgstr "" + +msgid "Plate Settings" +msgstr "" + +#, possible-boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "" + +#, possible-boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "" + +#, possible-boost-format +msgid "Part name: %1%\n" +msgstr "" + +#, possible-boost-format +msgid "Object name: %1%\n" +msgstr "" + +#, possible-boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "" + +#, possible-boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "" + +#, possible-boost-format +msgid "Volume: %1% in³\n" +msgstr "" + +#, possible-boost-format +msgid "Volume: %1% mm³\n" +msgstr "" + +#, possible-boost-format +msgid "Triangles: %1%\n" +msgstr "" + +msgid "Tips:" +msgstr "" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" + +msgid "Switching the language requires application restart.\n" +msgstr "" + +msgid "Do you want to continue?" +msgstr "" + +msgid "Language selection" +msgstr "" + +msgid "Changing application language" +msgstr "" + +msgid "Changing the region will log out your account.\n" +msgstr "" + +msgid "Region selection" +msgstr "" + +msgid "Second" +msgstr "" + +msgid "Browse" +msgstr "" + +msgid "Choose Download Directory" +msgstr "" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker_Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "" + +msgid "Asia-Pacific" +msgstr "" + +msgid "China" +msgstr "" + +msgid "Europe" +msgstr "" + +msgid "North America" +msgstr "" + +msgid "Others" +msgstr "" + +msgid "Login Region" +msgstr "" + +msgid "Stealth Mode" +msgstr "" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" + +msgid "Enable network plugin" +msgstr "" + +msgid "Check for stable updates only" +msgstr "" + +msgid "Metric" +msgstr "" + +msgid "Imperial" +msgstr "" + +msgid "Units" +msgstr "" + +msgid "Allow only one Snapmaker_Orca instance" +msgstr "" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" + +msgid "" +"If this is enabled, when starting Snapmaker_Orca and another instance of the " +"same Snapmaker_Orca is already running, that instance will be reactivated " +"instead." +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Default Page" +msgstr "" + +msgid "Set the page opened on startup." +msgstr "" + +msgid "Touchpad" +msgstr "" + +msgid "Camera style" +msgstr "" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" + +msgid "Zoom to mouse position" +msgstr "" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" + +msgid "Use free camera" +msgstr "" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" + +msgid "Reverse mouse zoom" +msgstr "" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" + +msgid "Show splash screen" +msgstr "" + +msgid "Show the splash screen during startup." +msgstr "" + +msgid "Show \"Tip of the day\" notification after start" +msgstr "" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "" + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "" + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "" + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "" + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "" + +msgid "Remember printer configuration" +msgstr "" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" + +msgid "Auto arrange plate after cloning" +msgstr "" + +msgid "Auto arrange plate after object cloning" +msgstr "" + +msgid "Network" +msgstr "" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" + +msgid "User Sync" +msgstr "" + +msgid "Update built-in Presets automatically." +msgstr "" + +msgid "System Sync" +msgstr "" + +msgid "Clear my choice on the unsaved presets." +msgstr "" + +msgid "Associate files to Snapmaker_Orca" +msgstr "" + +msgid "Associate .3mf files to Snapmaker_Orca" +msgstr "" + +msgid "If enabled, sets Snapmaker_Orca as default application to open .3mf files" +msgstr "" + +msgid "Associate .stl files to Snapmaker_Orca" +msgstr "" + +msgid "If enabled, sets Snapmaker_Orca as default application to open .stl files" +msgstr "" + +msgid "Associate .step/.stp files to Snapmaker_Orca" +msgstr "" + +msgid "If enabled, sets Snapmaker_Orca as default application to open .step files" +msgstr "" + +msgid "Associate web links to Snapmaker_Orca" +msgstr "" + +msgid "Associate URLs to Snapmaker_Orca" +msgstr "" + +msgid "Maximum recent projects" +msgstr "" + +msgid "Maximum count of recent projects" +msgstr "" + +msgid "Clear my choice on the unsaved projects." +msgstr "" + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "" + +msgid "Auto-Backup" +msgstr "" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" + +msgid "every" +msgstr "" + +msgid "The peroid of backup in seconds." +msgstr "" + +msgid "Downloads" +msgstr "" + +msgid "Dark Mode" +msgstr "" + +msgid "Enable Dark mode" +msgstr "" + +msgid "Develop mode" +msgstr "" + +msgid "Skip AMS blacklist check" +msgstr "" + +msgid "Home page and daily tips" +msgstr "" + +msgid "Show home page on startup" +msgstr "" + +msgid "Sync settings" +msgstr "" + +msgid "User sync" +msgstr "" + +msgid "Preset sync" +msgstr "" + +msgid "Preferences sync" +msgstr "" + +msgid "View control settings" +msgstr "" + +msgid "Rotate of view" +msgstr "" + +msgid "Move of view" +msgstr "" + +msgid "Zoom of view" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Mouse wheel reverses when zooming" +msgstr "" + +msgid "Enable SSL(MQTT)" +msgstr "" + +msgid "Enable SSL(FTP)" +msgstr "" + +msgid "Internal developer mode" +msgstr "" + +msgid "Log Level" +msgstr "" + +msgid "fatal" +msgstr "" + +msgid "error" +msgstr "" + +msgid "warning" +msgstr "" + +msgid "debug" +msgstr "" + +msgid "trace" +msgstr "" + +msgid "Host Setting" +msgstr "" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "" + +msgid "Product host" +msgstr "" + +msgid "debug save button" +msgstr "" + +msgid "save debug settings" +msgstr "" + +msgid "DEBUG settings have saved successfully!" +msgstr "" + +msgid "Switch cloud environment, Please login again!" +msgstr "" + +msgid "System presets" +msgstr "" + +msgid "User presets" +msgstr "" + +msgid "Incompatible presets" +msgstr "" + +msgid "AMS filaments" +msgstr "" + +msgid "Click to pick filament color" +msgstr "" + +msgid "Please choose the filament colour" +msgstr "" + +msgid "Add/Remove presets" +msgstr "" + +msgid "Edit preset" +msgstr "" + +msgid "Project-inside presets" +msgstr "" + +msgid "Add/Remove filaments" +msgstr "" + +msgid "Add/Remove materials" +msgstr "" + +msgid "Select/Remove printers(system presets)" +msgstr "" + +msgid "Create printer" +msgstr "" + +msgid "The selected preset is null!" +msgstr "" + +msgid "End" +msgstr "" + +msgid "Customize" +msgstr "" + +msgid "Other layer filament sequence" +msgstr "" + +msgid "Please input layer value (>= 2)." +msgstr "" + +msgid "Plate name" +msgstr "" + +msgid "Same as Global Print Sequence" +msgstr "" + +msgid "Print sequence" +msgstr "" + +msgid "Same as Global" +msgstr "" + +msgid "Disable" +msgstr "" + +msgid "Spiral vase" +msgstr "" + +msgid "First layer filament sequence" +msgstr "" + +msgid "Same as Global Plate Type" +msgstr "" + +msgid "Same as Global Bed Type" +msgstr "" + +msgid "By Layer" +msgstr "" + +msgid "By Object" +msgstr "" + +msgid "Accept" +msgstr "" + +msgid "Log Out" +msgstr "" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "" + +msgid "Packing project data into 3mf file" +msgstr "" + +msgid "Uploading 3mf" +msgstr "" + +msgid "Jump to model publish web page" +msgstr "" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "" + +msgid "Publish" +msgstr "" + +msgid "Publish was cancelled" +msgstr "" + +msgid "Slicing Plate 1" +msgstr "" + +msgid "Packing data to 3mf" +msgstr "" + +msgid "Jump to webpage" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Save %s as" +msgstr "" + +msgid "User Preset" +msgstr "" + +msgid "Preset Inside Project" +msgstr "" + +msgid "Name is unavailable." +msgstr "" + +msgid "Overwrite a system profile is not allowed" +msgstr "" + +#, possible-boost-format +msgid "Preset \"%1%\" already exists." +msgstr "" + +#, possible-boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "" + +msgid "Please note that saving action will replace this preset" +msgstr "" + +msgid "The name cannot be the same as a preset alias name." +msgstr "" + +msgid "Save preset" +msgstr "" + +msgctxt "PresetName" +msgid "Copy" +msgstr "" + +#, possible-boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "" + +#, possible-boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "" + +#, possible-boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "" + +#, possible-boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "" + +#, possible-boost-format +msgid "Simply switch to \"%1%\"" +msgstr "" + +msgid "Task canceled" +msgstr "" + +msgid "(LAN)" +msgstr "" + +msgid "Search" +msgstr "" + +msgid "My Device" +msgstr "" + +msgid "Other Device" +msgstr "" + +msgid "Online" +msgstr "" + +msgid "Input access code" +msgstr "" + +msgid "Can't find my devices?" +msgstr "" + +msgid "Log out successful." +msgstr "" + +msgid "Busy" +msgstr "" + +msgid "Bambu Cool Plate" +msgstr "" + +msgid "PLA Plate" +msgstr "" + +msgid "Bambu Engineering Plate" +msgstr "" + +msgid "Bambu Smooth PEI Plate" +msgstr "" + +msgid "High temperature Plate" +msgstr "" + +msgid "Bambu Textured PEI Plate" +msgstr "" + +msgid "Send print job to" +msgstr "" + +msgid "Flow Dynamics Calibration" +msgstr "" + +msgid "Click here if you can't connect to the printer" +msgstr "" + +msgid "send completed" +msgstr "" + +msgid "Error code" +msgstr "" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "" + +msgid "Connecting to server" +msgstr "" + +msgid "Synchronizing device information" +msgstr "" + +msgid "Synchronizing device information time out" +msgstr "" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" + +msgid "The printer is busy on other print job" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" + +msgid "An SD card needs to be inserted before printing." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "" + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" + +msgid "Cannot send the print job for empty plate" +msgstr "" + +msgid "This printer does not support printing all plates" +msgstr "" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" + +msgid "Errors" +msgstr "" + +msgid "Please check the following:" +msgstr "" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "nozzle in preset: %s %s" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "" + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "" + +msgid "Modifying the device name" +msgstr "" + +msgid "Bind with Pin Code" +msgstr "" + +msgid "Send to Printer SD card" +msgstr "" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "" + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "" + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "" + +msgid "The printer does not support sending to printer SD card." +msgstr "" + +msgid "Slice ok." +msgstr "" + +msgid "View all Daily tips" +msgstr "" + +msgid "Failed to create socket" +msgstr "" + +msgid "Failed to connect socket" +msgstr "" + +msgid "Failed to publish login request" +msgstr "" + +msgid "Get ticket from device timeout" +msgstr "" + +msgid "Get ticket from server timeout" +msgstr "" + +msgid "Failed to post ticket to server" +msgstr "" + +msgid "Failed to parse login report reason" +msgstr "" + +msgid "Receive login report timeout" +msgstr "" + +msgid "Unknown Failure" +msgstr "" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" + +msgid "Can't find Pin Code?" +msgstr "" + +msgid "Pin Code" +msgstr "" + +msgid "Binding..." +msgstr "" + +msgid "Please confirm on the printer screen" +msgstr "" + +msgid "Log in failed. Please check the Pin Code." +msgstr "" + +msgid "Log in printer" +msgstr "" + +msgid "Would you like to log in this printer with current account?" +msgstr "" + +msgid "Check the reason" +msgstr "" + +msgid "Read and accept" +msgstr "" + +msgid "Terms and Conditions" +msgstr "" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" + +msgid "and" +msgstr "" + +msgid "Privacy Policy" +msgstr "" + +msgid "We ask for your help to improve everyone's printer" +msgstr "" + +msgid "Statement about User Experience Improvement Program" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" + +msgid "Statement on User Experience Improvement Plan" +msgstr "" + +msgid "Log in successful." +msgstr "" + +msgid "Log out printer" +msgstr "" + +msgid "Would you like to log out the printer?" +msgstr "" + +msgid "Please log in first." +msgstr "" + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "" + +msgid "Failed to log out." +msgstr "" + +#. TRN "Save current Settings" +#, possible-c-format, possible-boost-format +msgid "Save current %s" +msgstr "" + +msgid "Delete this preset" +msgstr "" + +msgid "Search in preset" +msgstr "" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" + +msgid "Still print by object?" +msgstr "" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" + +msgid "Are you sure you want to enable this option?" +msgstr "" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" + +msgid "Adjust to the set range automatically? \n" +msgstr "" + +msgid "Adjust" +msgstr "" + +msgid "Ignore" +msgstr "" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" + +msgid "Line width" +msgstr "" + +msgid "Seam" +msgstr "" + +msgid "Precision" +msgstr "" + +msgid "Wall generator" +msgstr "" + +msgid "Walls and surfaces" +msgstr "" + +msgid "Bridging" +msgstr "" + +msgid "Overhangs" +msgstr "" + +msgid "Walls" +msgstr "" + +msgid "Top/bottom shells" +msgstr "" + +msgid "Initial layer speed" +msgstr "" + +msgid "Other layers speed" +msgstr "" + +msgid "Overhang speed" +msgstr "" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" + +msgid "Bridge" +msgstr "" + +msgid "Set speed for external and internal bridges" +msgstr "" + +msgid "Travel speed" +msgstr "" + +msgid "Acceleration" +msgstr "" + +msgid "Jerk(XY)" +msgstr "" + +msgid "Raft" +msgstr "" + +msgid "Support filament" +msgstr "" + +msgid "Tree supports" +msgstr "" + +msgid "Multimaterial" +msgstr "" + +msgid "Prime tower" +msgstr "" + +msgid "Filament for Features" +msgstr "" + +msgid "Ooze prevention" +msgstr "" + +msgid "Skirt" +msgstr "" + +msgid "Special mode" +msgstr "" + +msgid "G-code output" +msgstr "" + +msgid "Post-processing Scripts" +msgstr "" + +msgid "Notes" +msgstr "" + +msgid "Frequent" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +msgstr[1] "" + +msgid "Reserved keywords found" +msgstr "" + +msgid "Setting Overrides" +msgstr "" + +msgid "Retraction" +msgstr "" + +msgid "Basic information" +msgstr "" + +msgid "Recommended nozzle temperature" +msgstr "" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" + +msgid "Flow ratio and Pressure Advance" +msgstr "" + +msgid "Print chamber temperature" +msgstr "" + +msgid "Print temperature" +msgstr "" + +msgid "Nozzle" +msgstr "" + +msgid "Left Nozzle" +msgstr "" + +msgid "Right Nozzle" +msgstr "" + +msgid "Nozzle temperature when printing" +msgstr "" + +msgid "Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" + +msgid "Textured PEI Plate" +msgstr "" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" + +msgid "Volumetric speed limitation" +msgstr "" + +msgid "Cooling" +msgstr "" + +msgid "Cooling for specific layer" +msgstr "" + +msgid "Part cooling fan" +msgstr "" + +msgid "Min fan speed threshold" +msgstr "" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" + +msgid "Max fan speed threshold" +msgstr "" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" + +msgid "Auxiliary part cooling fan" +msgstr "" + +msgid "Exhaust fan" +msgstr "" + +msgid "During print" +msgstr "" + +msgid "Complete print" +msgstr "" + +msgid "Filament start G-code" +msgstr "" + +msgid "Filament end G-code" +msgstr "" + +msgid "Wipe tower parameters" +msgstr "" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "" + +msgid "Ramming settings" +msgstr "" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "" + +msgid "Printable space" +msgstr "" + +#. TRN: First argument is parameter name, the second one is the value. +#, possible-boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "" + +msgid "G-code flavor is switched" +msgstr "" + +msgid "Cooling Fan" +msgstr "" + +msgid "Fan speed-up time" +msgstr "" + +msgid "Extruder Clearance" +msgstr "" + +msgid "Adaptive bed mesh" +msgstr "" + +msgid "Accessory" +msgstr "" + +msgid "Machine gcode" +msgstr "" + +msgid "Machine start G-code" +msgstr "" + +msgid "Machine end G-code" +msgstr "" + +msgid "Printing by object G-code" +msgstr "" + +msgid "Before layer change G-code" +msgstr "" + +msgid "Layer change G-code" +msgstr "" + +msgid "Time lapse G-code" +msgstr "" + +msgid "Change filament G-code" +msgstr "" + +msgid "Change extrusion role G-code" +msgstr "" + +msgid "Pause G-code" +msgstr "" + +msgid "Template Custom G-code" +msgstr "" + +msgid "Motion ability" +msgstr "" + +msgid "Normal" +msgstr "" + +msgid "Speed limitation" +msgstr "" + +msgid "Acceleration limitation" +msgstr "" + +msgid "Jerk limitation" +msgstr "" + +msgid "Single extruder multimaterial setup" +msgstr "" + +msgid "Number of extruders of the printer." +msgstr "" + +msgid "" +"Single Extruder Multi Material is selected, \n" +"and all extruders must have the same diameter.\n" +"Do you want to change the diameter for all extruders to first extruder " +"nozzle diameter value?" +msgstr "" + +msgid "Nozzle diameter" +msgstr "" + +msgid "Wipe tower" +msgstr "" + +msgid "Single extruder multimaterial parameters" +msgstr "" + +msgid "" +"This is a single extruder multimaterial printer, diameters of all extruders " +"will be set to the new value. Do you want to proceed?" +msgstr "" + +msgid "Layer height limits" +msgstr "" + +msgid "Lift Z Enforcement" +msgstr "" + +msgid "Retraction when switching material" +msgstr "" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" + +msgid "Firmware Retraction" +msgstr "" + +msgid "Detached" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" + +#. TRN Remove/Delete +#, possible-boost-format +msgid "%1% Preset" +msgstr "" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "" +msgstr[1] "" + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" + +#, possible-boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "" + +msgid "All" +msgstr "" + +msgid "Set" +msgstr "" + +msgid "Click to reset current value and attach to the global value." +msgstr "" + +msgid "Click to drop current modify and reset to saved value." +msgstr "" + +msgid "Process Settings" +msgstr "" + +msgid "Undef" +msgstr "" + +msgid "Unsaved Changes" +msgstr "" + +msgid "Transfer or discard changes" +msgstr "" + +msgid "Old Value" +msgstr "" + +msgid "New Value" +msgstr "" + +msgid "Transfer" +msgstr "" + +msgid "Don't save" +msgstr "" + +msgid "Discard" +msgstr "" + +msgid "Click the right mouse button to display the full text." +msgstr "" + +msgid "All changes will not be saved" +msgstr "" + +msgid "All changes will be discarded." +msgstr "" + +msgid "Save the selected options." +msgstr "" + +msgid "Keep the selected options." +msgstr "" + +msgid "Transfer the selected options to the newly selected preset." +msgstr "" + +#, possible-boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" + +#, possible-boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" + +#, possible-boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "" + +#, possible-boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" + +#, possible-boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" + +#, possible-boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "" + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" + +msgid "You have previously modified your settings." +msgstr "" + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" + +msgid "Extruders count" +msgstr "" + +msgid "General" +msgstr "" + +msgid "Capabilities" +msgstr "" + +msgid "Show all presets (including incompatible)" +msgstr "" + +msgid "Select presets to compare" +msgstr "" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" + +msgid "Transfer values from left to right" +msgstr "" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" + +msgid "Add File" +msgstr "" + +msgid "Set as cover" +msgstr "" + +msgid "Cover" +msgstr "" + +#, possible-boost-format +msgid "The name \"%1%\" already exists." +msgstr "" + +msgid "Basic Info" +msgstr "" + +msgid "Pictures" +msgstr "" + +msgid "Bill of Materials" +msgstr "" + +msgid "Assembly Guide" +msgstr "" + +msgid "Author" +msgstr "" + +msgid "Model Name" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%s Update" +msgstr "" + +msgid "A new version is available" +msgstr "" + +msgid "Configuration update" +msgstr "" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "" + +msgid "Description:" +msgstr "" + +msgid "Configuration incompatible" +msgstr "" + +msgid "the configuration package is incompatible with current application." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Exit %s" +msgstr "" + +msgid "the Configuration package is incompatible with current APP." +msgstr "" + +msgid "Configuration updates" +msgstr "" + +msgid "No updates available." +msgstr "" + +msgid "The configuration is up to date." +msgstr "" + +msgid "Obj file Import color" +msgstr "" + +msgid "Specify number of colors:" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "" + +msgid "Recommended " +msgstr "" + +msgid "Current filament colors:" +msgstr "" + +msgid "Quick set:" +msgstr "" + +msgid "Color match" +msgstr "" + +msgid "Approximate color matching." +msgstr "" + +msgid "Append" +msgstr "" + +msgid "Add consumable extruder after existing extruders." +msgstr "" + +msgid "Reset mapped extruders." +msgstr "" + +msgid "Cluster colors" +msgstr "" + +msgid "Map Filament" +msgstr "" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" + +msgid "Ramming customization" +msgstr "" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" + +msgid "Total ramming time" +msgstr "" + +msgid "s" +msgstr "" + +msgid "Total rammed volume" +msgstr "" + +msgid "Ramming line width" +msgstr "" + +msgid "Ramming line spacing" +msgstr "" + +msgid "Auto-Calc" +msgstr "" + +msgid "Re-calculate" +msgstr "" + +msgid "Flushing volumes for filament change" +msgstr "" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "" + +msgid "Multiplier" +msgstr "" + +msgid "unloaded" +msgstr "" + +msgid "loaded" +msgstr "" + +msgid "Filament #" +msgstr "" + +msgid "From" +msgstr "" + +msgid "To" +msgstr "" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "" + +msgid "Click here to download it." +msgstr "" + +msgid "Login" +msgstr "" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "" + +msgid "Configuration package changed" +msgstr "" + +msgid "Toolbar" +msgstr "" + +msgid "Objects list" +msgstr "" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "" + +msgid "Shift+G" +msgstr "" + +msgid "Paste from clipboard" +msgstr "" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "" + +msgid "Switch table page" +msgstr "" + +msgid "Show keyboard shortcuts list" +msgstr "" + +msgid "Global shortcuts" +msgstr "" + +msgid "Rotate View" +msgstr "" + +msgid "Pan View" +msgstr "" + +msgid "Mouse wheel" +msgstr "" + +msgid "Zoom View" +msgstr "" + +msgid "Shift+A" +msgstr "" + +msgid "Shift+R" +msgstr "" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" + +msgid "Shift+Tab" +msgstr "" + +msgid "Collapse/Expand the sidebar" +msgstr "" + +msgid "Any arrow" +msgstr "" + +msgid "Movement in camera space" +msgstr "" + +msgid "Select a part" +msgstr "" + +msgid "Select multiple objects" +msgstr "" + +msgid "Shift+Left mouse button" +msgstr "" + +msgid "Select objects by rectangle" +msgstr "" + +msgid "Arrow Up" +msgstr "" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "" + +msgid "Arrow Down" +msgstr "" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "" + +msgid "Arrow Left" +msgstr "" + +msgid "Move selection 10 mm in negative X direction" +msgstr "" + +msgid "Arrow Right" +msgstr "" + +msgid "Move selection 10 mm in positive X direction" +msgstr "" + +msgid "Shift+Any arrow" +msgstr "" + +msgid "Movement step set to 1 mm" +msgstr "" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "" + +msgid "Camera view - Default" +msgstr "" + +msgid "Camera view - Top" +msgstr "" + +msgid "Camera view - Bottom" +msgstr "" + +msgid "Camera view - Front" +msgstr "" + +msgid "Camera view - Behind" +msgstr "" + +msgid "Camera Angle - Left side" +msgstr "" + +msgid "Camera Angle - Right side" +msgstr "" + +msgid "Select all objects" +msgstr "" + +msgid "Gizmo move" +msgstr "" + +msgid "Gizmo scale" +msgstr "" + +msgid "Gizmo rotate" +msgstr "" + +msgid "Gizmo cut" +msgstr "" + +msgid "Gizmo Place face on bed" +msgstr "" + +msgid "Gizmo SLA support points" +msgstr "" + +msgid "Gizmo FDM paint-on seam" +msgstr "" + +msgid "Gizmo Text emboss / engrave" +msgstr "" + +msgid "Zoom in" +msgstr "" + +msgid "Zoom out" +msgstr "" + +msgid "Switch between Prepare/Preview" +msgstr "" + +msgid "Plater" +msgstr "" + +msgid "Move: press to snap by 1mm" +msgstr "" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "" + +msgid "Support/Color Painting: adjust section position" +msgstr "" + +msgid "Gizmo" +msgstr "" + +msgid "Set extruder number for the objects and parts" +msgstr "" + +msgid "Delete objects, parts, modifiers " +msgstr "" + +msgid "Select the object/part and press space to change the name" +msgstr "" + +msgid "Mouse click" +msgstr "" + +msgid "Select the object/part and mouse click to change the name" +msgstr "" + +msgid "Objects List" +msgstr "" + +msgid "Vertical slider - Move active thumb Up" +msgstr "" + +msgid "Vertical slider - Move active thumb Down" +msgstr "" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "" + +msgid "On/Off g-code window" +msgstr "" + +msgid "Move slider 5x faster" +msgstr "" + +msgid "Shift+Mouse wheel" +msgstr "" + +msgid "Horizontal slider - Move to start position" +msgstr "" + +msgid "Horizontal slider - Move to last position" +msgstr "" + +msgid "Release Note" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "version %s update information :" +msgstr "" + +msgid "Network plug-in update" +msgstr "" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "" + +msgid "New version of Snapmaker Orca" +msgstr "" + +msgid "Skip this Version" +msgstr "" + +msgid "Done" +msgstr "" + +msgid "resume" +msgstr "" + +msgid "Resume Printing" +msgstr "" + +msgid "Resume Printing(defects acceptable)" +msgstr "" + +msgid "Resume Printing(problem solved)" +msgstr "" + +msgid "Stop Printing" +msgstr "" + +msgid "Check Assistant" +msgstr "" + +msgid "Filament Extruded, Continue" +msgstr "" + +msgid "Not Extruded Yet, Retry" +msgstr "" + +msgid "Finished, Continue" +msgstr "" + +msgid "Load Filament" +msgstr "" + +msgid "Filament Loaded, Resume" +msgstr "" + +msgid "View Liveview" +msgstr "" + +msgid "Confirm and Update Nozzle" +msgstr "" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" + +msgid "IP" +msgstr "" + +msgid "Access Code" +msgstr "" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" + +msgid "Test" +msgstr "" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" + +msgid "Model:" +msgstr "" + +msgid "Serial:" +msgstr "" + +msgid "Version:" +msgstr "" + +msgid "Update firmware" +msgstr "" + +msgid "Beta version" +msgstr "" + +msgid "Latest version" +msgstr "" + +msgid "Updating" +msgstr "" + +msgid "Updating failed" +msgstr "" + +msgid "Updating successful" +msgstr "" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" + +msgid "Extension Board" +msgstr "" + +msgid "Saving objects into the 3mf failed." +msgstr "" + +msgid "Only Windows 10 is supported." +msgstr "" + +msgid "Failed to initialize the WinRT library." +msgstr "" + +msgid "Exporting objects" +msgstr "" + +msgid "Failed loading objects." +msgstr "" + +msgid "Repairing object by Windows service" +msgstr "" + +msgid "Repair failed." +msgstr "" + +msgid "Loading repaired objects" +msgstr "" + +msgid "Exporting 3mf file failed" +msgstr "" + +msgid "Import 3mf file failed" +msgstr "" + +msgid "Repaired 3mf file does not contain any object" +msgstr "" + +msgid "Repaired 3mf file contains more than one object" +msgstr "" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "" + +msgid "Repair finished" +msgstr "" + +msgid "Repair canceled" +msgstr "" + +#, possible-boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" + +msgid "Configuration package: " +msgstr "" + +msgid " updated to " +msgstr "" + +msgid "Open G-code file:" +msgstr "" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" + +#, possible-boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "" + +#, possible-boost-format +msgid "Object: %1%" +msgstr "" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" + +msgid "No object can be printed. Maybe too small" +msgstr "" + +msgid "" +"Your print is very close to the priming regions. Make sure there is no " +"collision." +msgstr "" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" + +#, possible-boost-format +msgid "Generating G-code: layer %1%" +msgstr "" + +msgid "Inner wall" +msgstr "" + +msgid "Outer wall" +msgstr "" + +msgid "Overhang wall" +msgstr "" + +msgid "Sparse infill" +msgstr "" + +msgid "Internal solid infill" +msgstr "" + +msgid "Top surface" +msgstr "" + +msgid "Bottom surface" +msgstr "" + +msgid "Internal Bridge" +msgstr "" + +msgid "Gap infill" +msgstr "" + +msgid "Support interface" +msgstr "" + +msgid "Support transition" +msgstr "" + +msgid "Multiple" +msgstr "" + +#, possible-boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" + +msgid "undefined error" +msgstr "" + +msgid "too many files" +msgstr "" + +msgid "file too large" +msgstr "" + +msgid "unsupported method" +msgstr "" + +msgid "unsupported encryption" +msgstr "" + +msgid "unsupported feature" +msgstr "" + +msgid "failed finding central directory" +msgstr "" + +msgid "not a ZIP archive" +msgstr "" + +msgid "invalid header or corrupted" +msgstr "" + +msgid "unsupported multidisk" +msgstr "" + +msgid "decompression failed" +msgstr "" + +msgid "compression failed" +msgstr "" + +msgid "unexpected decompressed size" +msgstr "" + +msgid "CRC check failed" +msgstr "" + +msgid "unsupported central directory size" +msgstr "" + +msgid "allocation failed" +msgstr "" + +msgid "file open failed" +msgstr "" + +msgid "file create failed" +msgstr "" + +msgid "file write failed" +msgstr "" + +msgid "file read failed" +msgstr "" + +msgid "file close failed" +msgstr "" + +msgid "file seek failed" +msgstr "" + +msgid "file stat failed" +msgstr "" + +msgid "invalid parameter" +msgstr "" + +msgid "invalid filename" +msgstr "" + +msgid "buffer too small" +msgstr "" + +msgid "internal error" +msgstr "" + +msgid "file not found" +msgstr "" + +msgid "archive too large" +msgstr "" + +msgid "validation failed" +msgstr "" + +msgid "write callback failed" +msgstr "" + +#, possible-boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" + +#, possible-boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "" + +#, possible-boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "" + +msgid " is too close to others, there may be collisions when printing." +msgstr "" + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" + +msgid "Prime Tower" +msgstr "" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr "" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" + +msgid "No extrusions under current settings." +msgstr "" + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" + +#, possible-boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "" + +#, possible-boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" + +msgid "Variable layer height is not supported with Organic supports." +msgstr "" + +msgid "" +"Different nozzle diameters and different filament diameters may not work " +"well when the prime tower is enabled. It's very experimental, so please " +"proceed with caution." +msgstr "" + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" + +msgid "" +"Ooze prevention is only supported with the wipe tower when " +"'single_extruder_multi_material' is off." +msgstr "" + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "" + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" + +msgid "Too small line width" +msgstr "" + +msgid "Too large line width" +msgstr "" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" + +msgid "Generating skirt & brim" +msgstr "" + +msgid "Exporting G-code" +msgstr "" + +msgid "Generating G-code" +msgstr "" + +msgid "Failed processing of the filename_format template." +msgstr "" + +msgid "Printable area" +msgstr "" + +msgid "Bed exclude area" +msgstr "" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" + +msgid "Bed custom texture" +msgstr "" + +msgid "Bed custom model" +msgstr "" + +msgid "Elephant foot compensation" +msgstr "" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" + +msgid "Elephant foot compensation layers" +msgstr "" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" + +msgid "layers" +msgstr "" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" + +msgid "Printable height" +msgstr "" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "" + +msgid "Preferred orientation" +msgstr "" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" + +msgid "Printer preset names" +msgstr "" + +msgid "Use 3rd-party print host" +msgstr "" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" + +msgid "Hostname, IP or URL" +msgstr "" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" + +msgid "Device UI" +msgstr "" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" + +msgid "API Key / Password" +msgstr "" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" + +msgid "Name of the printer" +msgstr "" + +msgid "HTTPS CA File" +msgstr "" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" + +msgid "User" +msgstr "" + +msgid "Password" +msgstr "" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" + +msgid "Names of presets related to the physical printer" +msgstr "" + +msgid "Authorization Type" +msgstr "" + +msgid "API key" +msgstr "" + +msgid "HTTP digest" +msgstr "" + +msgid "Avoid crossing wall" +msgstr "" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" + +msgid "Avoid crossing wall - Max detour length" +msgstr "" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" + +msgid "mm or %" +msgstr "" + +msgid "Other layers" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" + +msgid "°C" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" + +msgid "Initial layer" +msgstr "" + +msgid "Initial layer bed temperature" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" + +msgid "Bed types supported by the printer" +msgstr "" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "" + +msgid "Other layers print sequence" +msgstr "" + +msgid "The number of other layers print sequence" +msgstr "" + +msgid "Other layers filament sequence" +msgstr "" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "" + +msgid "Bottom shell layers" +msgstr "" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" + +msgid "Bottom shell thickness" +msgstr "" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" + +msgid "Apply gap fill" +msgstr "" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" + +msgid "Everywhere" +msgstr "" + +msgid "Top and bottom surfaces" +msgstr "" + +msgid "Nowhere" +msgstr "" + +msgid "Force cooling for overhang and bridge" +msgstr "" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" + +msgid "Fan speed for overhang" +msgstr "" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" + +msgid "Cooling overhang threshold" +msgstr "" + +#, possible-c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" + +msgid "Bridge infill direction" +msgstr "" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" + +msgid "Bridge density" +msgstr "" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" + +msgid "Bridge flow ratio" +msgstr "" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" + +msgid "Internal bridge flow ratio" +msgstr "" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" + +msgid "Top surface flow ratio" +msgstr "" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" + +msgid "Bottom surface flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" + +msgid "Precise wall" +msgstr "" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" + +msgid "Only one wall on top surfaces" +msgstr "" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" + +msgid "One wall threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" + +msgid "Only one wall on first layer" +msgstr "" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" + +msgid "Extra perimeters on overhangs" +msgstr "" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" + +msgid "Reverse on odd" +msgstr "" + +msgid "Overhang reversal" +msgstr "" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" + +msgid "Reverse only internal perimeters" +msgstr "" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" + +msgid "Bridge counterbore holes" +msgstr "" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" + +msgid "Partially bridged" +msgstr "" + +msgid "Sacrificial layer" +msgstr "" + +msgid "Reverse threshold" +msgstr "" + +msgid "Overhang reversal threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" + +msgid "Classic mode" +msgstr "" + +msgid "Enable this option to use classic mode" +msgstr "" + +msgid "Slow down for overhang" +msgstr "" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" + +msgid "Slow down for curled perimeters" +msgstr "" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" + +msgid "mm/s or %" +msgstr "" + +msgid "External" +msgstr "" + +msgid "Speed of bridge and completely overhang wall" +msgstr "" + +msgid "mm/s" +msgstr "" + +msgid "Internal" +msgstr "" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" + +msgid "Brim width" +msgstr "" + +msgid "Distance from model to the outermost brim line" +msgstr "" + +msgid "Brim type" +msgstr "" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" + +msgid "Brim-object gap" +msgstr "" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" + +msgid "Brim ears" +msgstr "" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "" + +msgid "Brim ear max angle" +msgstr "" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" + +msgid "Brim ear detection radius" +msgstr "" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" + +msgid "Compatible machine" +msgstr "" + +msgid "upward compatible machine" +msgstr "" + +msgid "Compatible machine condition" +msgstr "" + +msgid "Compatible process profiles" +msgstr "" + +msgid "Compatible process profiles condition" +msgstr "" + +msgid "Print sequence, layer by layer or object by object" +msgstr "" + +msgid "By layer" +msgstr "" + +msgid "By object" +msgstr "" + +msgid "Intra-layer order" +msgstr "" + +msgid "Print order within a single layer" +msgstr "" + +msgid "As object list" +msgstr "" + +msgid "Slow printing down for better layer cooling" +msgstr "" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" + +msgid "Normal printing" +msgstr "" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" + +msgid "mm/s²" +msgstr "" + +msgid "Default filament profile" +msgstr "" + +msgid "Default filament profile when switch to this machine profile" +msgstr "" + +msgid "Default process profile" +msgstr "" + +msgid "Default process profile when switch to this machine profile" +msgstr "" + +msgid "Activate air filtration" +msgstr "" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" + +msgid "Speed of exhaust fan after printing completes" +msgstr "" + +msgid "No cooling for the first" +msgstr "" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" + +msgid "Don't support bridges" +msgstr "" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" + +msgid "Thick bridges" +msgstr "" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" + +msgid "Thick internal bridges" +msgstr "" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" + +msgid "Don't filter out small internal bridges (beta)" +msgstr "" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" + +msgid "Disabled" +msgstr "" + +msgid "Limited filtering" +msgstr "" + +msgid "No filtering" +msgstr "" + +msgid "Max bridge length" +msgstr "" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" + +msgid "End G-code" +msgstr "" + +msgid "End G-code when finish the whole printing" +msgstr "" + +msgid "Between Object Gcode" +msgstr "" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" + +msgid "End G-code when finish the printing of this filament" +msgstr "" + +msgid "Ensure vertical shell thickness" +msgstr "" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" + +msgid "Critical Only" +msgstr "" + +msgid "Moderate" +msgstr "" + +msgid "Top surface pattern" +msgstr "" + +msgid "Line pattern of top surface infill" +msgstr "" + +msgid "Concentric" +msgstr "" + +msgid "Rectilinear" +msgstr "" + +msgid "Monotonic" +msgstr "" + +msgid "Monotonic line" +msgstr "" + +msgid "Aligned Rectilinear" +msgstr "" + +msgid "Hilbert Curve" +msgstr "" + +msgid "Archimedean Chords" +msgstr "" + +msgid "Octagram Spiral" +msgstr "" + +msgid "Bottom surface pattern" +msgstr "" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "" + +msgid "Internal solid infill pattern" +msgstr "" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" + +msgid "Small perimeters" +msgstr "" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" + +msgid "Small perimeters threshold" +msgstr "" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" + +msgid "Walls printing order" +msgstr "" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" + +msgid "Inner/Outer" +msgstr "" + +msgid "Outer/Inner" +msgstr "" + +msgid "Inner/Outer/Inner" +msgstr "" + +msgid "Print infill first" +msgstr "" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" + +msgid "Wall loop direction" +msgstr "" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" + +msgid "Counter clockwise" +msgstr "" + +msgid "Clockwise" +msgstr "" + +msgid "Height to rod" +msgstr "" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" + +msgid "Height to lid" +msgstr "" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" + +msgid "Nozzle height" +msgstr "" + +msgid "The height of nozzle tip." +msgstr "" + +msgid "Bed mesh min" +msgstr "" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker_Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Bed mesh max" +msgstr "" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker_Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Probe point distance" +msgstr "" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" + +msgid "Mesh margin" +msgstr "" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" + +msgid "Extruder Color" +msgstr "" + +msgid "Only used as a visual help on UI" +msgstr "" + +msgid "Extruder offset" +msgstr "" + +msgid "Flow ratio" +msgstr "" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" + +msgid "Enable pressure advance" +msgstr "" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" + +msgid "Enable adaptive pressure advance (beta)" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"With increasing print speeds (and hence increasing volumetric flow through " +"the nozzle) and increasing accelerations, it has been observed that the " +"effective PA value typically decreases. This means that a single PA value is " +"not always 100% optimal for all features and a compromise value is usually " +"used that does not cause too much bulging on features with lower flow speed " +"and accelerations while also not causing gaps on faster features.\n" +"\n" +"This feature aims to address this limitation by modeling the response of " +"your printer's extrusion system depending on the volumetric flow speed and " +"acceleration it is printing at. Internally, it generates a fitted model that " +"can extrapolate the needed pressure advance for any given volumetric flow " +"speed and acceleration, which is then emmited to the printer depending on " +"the current print conditions.\n" +"\n" +"When enabled, the pressure advance value above is overriden. However, a " +"reasonable default value above is strongly recomended to act as a fallback " +"and for when tool changing.\n" +"\n" +msgstr "" + +msgid "Adaptive pressure advance measurements (beta)" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Add sets of pressure advance (PA) values, the volumetric flow speeds and " +"accelerations they were measured at, separated by a comma. One set of values " +"per line. For example\n" +"0.04,3.96,3000\n" +"0.033,3.96,10000\n" +"0.029,7.91,3000\n" +"0.026,7.91,10000\n" +"\n" +"How to calibrate:\n" +"1. Run the pressure advance test for at least 3 speeds per acceleration " +"value. It is recommended that the test is run for at least the speed of the " +"external perimeters, the speed of the internal perimeters and the fastest " +"feature print speed in your profile (usually its the sparse or solid " +"infill). Then run them for the same speeds for the slowest and fastest print " +"accelerations,and no faster than the recommended maximum acceleration as " +"given by the klipper input shaper.\n" +"2. Take note of the optimal PA value for each volumetric flow speed and " +"acceleration. You can find the flow number by selecting flow from the color " +"scheme drop down and move the horizontal slider over the PA pattern lines. " +"The number should be visible at the bottom of the page. The ideal PA value " +"should be decreasing the higher the volumetric flow is. If it is not, " +"confirm that your extruder is functioning correctly.The slower and with less " +"acceleration you print, the larger the range of acceptable PA values. If no " +"difference is visible, use the PA value from the faster test.3. Enter the " +"triplets of PA values, Flow and Accelerations in the text box here and save " +"your filament profile\n" +"\n" +msgstr "" + +msgid "Enable adaptive pressure advance for overhangs (beta)" +msgstr "" + +msgid "" +"Enable adaptive PA for overhangs as well as when flow changes within the " +"same feature. This is an experimental option, as if the PA profile is not " +"set accurately, it will cause uniformity issues on the external surfaces " +"before and after overhangs.\n" +msgstr "" + +msgid "Pressure advance for bridges" +msgstr "" + +msgid "" +"Pressure advance value for bridges. Set to 0 to disable. \n" +"\n" +" A lower PA value when printing bridges helps reduce the appearance of " +"slight under extrusion immediately after bridges. This is caused by the " +"pressure drop in the nozzle when printing in the air and a lower PA helps " +"counteract this." +msgstr "" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" + +msgid "Keep fan always on" +msgstr "" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" + +msgid "Don't slow down outer walls" +msgstr "" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" + +msgid "Default color" +msgstr "" + +msgid "Default filament color" +msgstr "" + +msgid "Filament notes" +msgstr "" + +msgid "You can put your notes regarding the filament here." +msgstr "" + +msgid "Required nozzle HRC" +msgstr "" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" + +msgid "mm³/s" +msgstr "" + +msgid "Filament load time" +msgstr "" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" + +msgid "Filament unload time" +msgstr "" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" + +msgid "Loading speed" +msgstr "" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "" + +msgid "Loading speed at the start" +msgstr "" + +msgid "Speed used at the very beginning of loading phase." +msgstr "" + +msgid "Unloading speed" +msgstr "" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" + +msgid "Unloading speed at the start" +msgstr "" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" + +msgid "Delay after unloading" +msgstr "" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" + +msgid "Number of cooling moves" +msgstr "" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" + +msgid "Stamping loading speed" +msgstr "" + +msgid "Speed used for stamping." +msgstr "" + +msgid "Stamping distance measured from the center of the cooling tube" +msgstr "" + +msgid "" +"If set to nonzero value, filament is moved toward the nozzle between the " +"individual cooling moves (\"stamping\"). This option configures how long " +"this movement should be before the filament is retracted again." +msgstr "" + +msgid "Speed of the first cooling move" +msgstr "" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "" + +msgid "Minimal purge on wipe tower" +msgstr "" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" + +msgid "Speed of the last cooling move" +msgstr "" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" + +msgid "Ramming parameters" +msgstr "" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" + +msgid "Enable ramming for multitool setups" +msgstr "" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" + +msgid "Multitool ramming volume" +msgstr "" + +msgid "The volume to be rammed before the toolchange." +msgstr "" + +msgid "Multitool ramming flow" +msgstr "" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "" + +msgid "Density" +msgstr "" + +msgid "Filament density. For statistics only" +msgstr "" + +msgid "g/cm³" +msgstr "" + +msgid "The material type of filament" +msgstr "" + +msgid "Soluble material" +msgstr "" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" + +msgid "Support material" +msgstr "" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" + +msgid "Softening temperature" +msgstr "" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" + +msgid "Price" +msgstr "" + +msgid "Filament price. For statistics only" +msgstr "" + +msgid "money/kg" +msgstr "" + +msgid "Vendor" +msgstr "" + +msgid "Vendor of filament. For show only" +msgstr "" + +msgid "(Undefined)" +msgstr "" + +msgid "Sparse infill direction" +msgstr "" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" + +msgid "Solid infill direction" +msgstr "" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" + +msgid "Rotate solid infill direction" +msgstr "" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "" + +msgid "Sparse infill density" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" + +msgid "Sparse infill pattern" +msgstr "" + +msgid "Line pattern for internal sparse infill" +msgstr "" + +msgid "Grid" +msgstr "" + +msgid "Line" +msgstr "" + +msgid "Cubic" +msgstr "" + +msgid "Tri-hexagon" +msgstr "" + +msgid "Gyroid" +msgstr "" + +msgid "Honeycomb" +msgstr "" + +msgid "Adaptive Cubic" +msgstr "" + +msgid "3D Honeycomb" +msgstr "" + +msgid "Support Cubic" +msgstr "" + +msgid "Lightning" +msgstr "" + +msgid "Cross Hatch" +msgstr "" + +msgid "Sparse infill anchor length" +msgstr "" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" + +msgid "0 (no open anchors)" +msgstr "" + +msgid "1000 (unlimited)" +msgstr "" + +msgid "Maximum length of the infill anchor" +msgstr "" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" + +msgid "0 (Simple connect)" +msgstr "" + +msgid "Acceleration of outer walls" +msgstr "" + +msgid "Acceleration of inner walls" +msgstr "" + +msgid "Acceleration of travel moves" +msgstr "" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" + +msgid "mm/s² or %" +msgstr "" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" + +msgid "Enable accel_to_decel" +msgstr "" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "" + +msgid "accel_to_decel" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" + +msgid "Jerk of outer walls" +msgstr "" + +msgid "Jerk of inner walls" +msgstr "" + +msgid "Jerk for top surface" +msgstr "" + +msgid "Jerk for infill" +msgstr "" + +msgid "Jerk for initial layer" +msgstr "" + +msgid "Jerk for travel" +msgstr "" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Initial layer height" +msgstr "" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" + +msgid "Speed of initial layer except the solid infill part" +msgstr "" + +msgid "Initial layer infill" +msgstr "" + +msgid "Speed of solid infill part of initial layer" +msgstr "" + +msgid "Initial layer travel speed" +msgstr "" + +msgid "Travel speed of initial layer" +msgstr "" + +msgid "Number of slow layers" +msgstr "" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" + +msgid "Initial layer nozzle temperature" +msgstr "" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" + +msgid "Full fan speed at layer" +msgstr "" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" + +msgid "layer" +msgstr "" + +msgid "Support interface fan speed" +msgstr "" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" + +msgid "Contour" +msgstr "" + +msgid "Contour and hole" +msgstr "" + +msgid "All walls" +msgstr "" + +msgid "Fuzzy skin thickness" +msgstr "" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" + +msgid "Fuzzy skin point distance" +msgstr "" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" + +msgid "Apply fuzzy skin to first layer" +msgstr "" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "" + +msgid "Filter out tiny gaps" +msgstr "" + +msgid "Layers and Perimeters" +msgstr "" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" + +msgid "Precise Z height" +msgstr "" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" + +msgid "Arc fitting" +msgstr "" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" + +msgid "Add line number" +msgstr "" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" + +msgid "Scan first layer" +msgstr "" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" + +msgid "Nozzle type" +msgstr "" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" + +msgid "Undefine" +msgstr "" + +msgid "Hardened steel" +msgstr "" + +msgid "Stainless steel" +msgstr "" + +msgid "Brass" +msgstr "" + +msgid "Nozzle HRC" +msgstr "" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" + +msgid "HRC" +msgstr "" + +msgid "Printer structure" +msgstr "" + +msgid "The physical arrangement and components of a printing device" +msgstr "" + +msgid "CoreXY" +msgstr "" + +msgid "I3" +msgstr "" + +msgid "Hbot" +msgstr "" + +msgid "Delta" +msgstr "" + +msgid "Best object position" +msgstr "" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" + +msgid "Only overhangs" +msgstr "" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "" + +msgid "Fan kick-start time" +msgstr "" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" + +msgid "Time cost" +msgstr "" + +msgid "The printer cost per hour" +msgstr "" + +msgid "money/h" +msgstr "" + +msgid "Support control chamber temperature" +msgstr "" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" + +msgid "Support air filtration" +msgstr "" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "G-code flavor" +msgstr "" + +msgid "What kind of gcode the printer is compatible with" +msgstr "" + +msgid "Klipper" +msgstr "" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" + +msgid "Label objects" +msgstr "" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" + +msgid "Exclude objects" +msgstr "" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "" + +msgid "Verbose G-code" +msgstr "" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" + +msgid "Infill combination" +msgstr "" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" + +msgid "Filament to print internal sparse infill." +msgstr "" + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Infill/Wall overlap" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" + +msgid "Speed of internal sparse infill" +msgstr "" + +msgid "Interface shells" +msgstr "" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" + +msgid "Maximum width of a segmented region" +msgstr "" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" + +msgid "Interlocking depth of a segmented region" +msgstr "" + +msgid "" +"Interlocking depth of a segmented region. It will be ignored if " +"\"mmu_segmented_region_max_width\" is zero or if " +"\"mmu_segmented_region_interlocking_depth\"is bigger then " +"\"mmu_segmented_region_max_width\". Zero disables this feature." +msgstr "" + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" + +msgid "No ironing" +msgstr "" + +msgid "Top surfaces" +msgstr "" + +msgid "Topmost surface" +msgstr "" + +msgid "All solid layer" +msgstr "" + +msgid "Ironing Pattern" +msgstr "" + +msgid "The pattern that will be used when ironing" +msgstr "" + +msgid "Ironing flow" +msgstr "" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" + +msgid "Ironing line spacing" +msgstr "" + +msgid "The distance between the lines of ironing" +msgstr "" + +msgid "Ironing speed" +msgstr "" + +msgid "Print speed of ironing lines" +msgstr "" + +msgid "Ironing angle" +msgstr "" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" + +msgid "Supports silent mode" +msgstr "" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" + +msgid "Emit limits to G-code" +msgstr "" + +msgid "Machine limits" +msgstr "" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" + +msgid "This G-code will be used as a custom code" +msgstr "" + +msgid "Small area flow compensation (beta)" +msgstr "" + +msgid "Enable flow compensation for small infill areas" +msgstr "" + +msgid "Flow Compensation Model" +msgstr "" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" + +msgid "Maximum speed X" +msgstr "" + +msgid "Maximum speed Y" +msgstr "" + +msgid "Maximum speed Z" +msgstr "" + +msgid "Maximum speed E" +msgstr "" + +msgid "Maximum X speed" +msgstr "" + +msgid "Maximum Y speed" +msgstr "" + +msgid "Maximum Z speed" +msgstr "" + +msgid "Maximum E speed" +msgstr "" + +msgid "Maximum acceleration X" +msgstr "" + +msgid "Maximum acceleration Y" +msgstr "" + +msgid "Maximum acceleration Z" +msgstr "" + +msgid "Maximum acceleration E" +msgstr "" + +msgid "Maximum acceleration of the X axis" +msgstr "" + +msgid "Maximum acceleration of the Y axis" +msgstr "" + +msgid "Maximum acceleration of the Z axis" +msgstr "" + +msgid "Maximum acceleration of the E axis" +msgstr "" + +msgid "Maximum jerk X" +msgstr "" + +msgid "Maximum jerk Y" +msgstr "" + +msgid "Maximum jerk Z" +msgstr "" + +msgid "Maximum jerk E" +msgstr "" + +msgid "Maximum jerk of the X axis" +msgstr "" + +msgid "Maximum jerk of the Y axis" +msgstr "" + +msgid "Maximum jerk of the Z axis" +msgstr "" + +msgid "Maximum jerk of the E axis" +msgstr "" + +msgid "Minimum speed for extruding" +msgstr "" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "" + +msgid "Minimum travel speed" +msgstr "" + +msgid "Minimum travel speed (M205 T)" +msgstr "" + +msgid "Maximum acceleration for extruding" +msgstr "" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "" + +msgid "Maximum acceleration for retracting" +msgstr "" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "" + +msgid "Maximum acceleration for travel" +msgstr "" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" + +msgid "Max" +msgstr "" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" + +msgid "Extrusion rate smoothing" +msgstr "" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" + +msgid "mm³/s²" +msgstr "" + +msgid "Smoothing segment length" +msgstr "" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" + +msgid "Minimum speed for part cooling fan" +msgstr "" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" + +msgid "Min" +msgstr "" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" + +msgid "Min print speed" +msgstr "" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" + +msgid "Diameter of nozzle" +msgstr "" + +msgid "Configuration notes" +msgstr "" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" + +msgid "Host Type" +msgstr "" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" + +msgid "Nozzle volume" +msgstr "" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "" + +msgid "Cooling tube position" +msgstr "" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "" + +msgid "Cooling tube length" +msgstr "" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" + +msgid "High extruder current on filament swap" +msgstr "" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" + +msgid "Filament parking position" +msgstr "" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" + +msgid "Extra loading distance" +msgstr "" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" + +msgid "Start end points" +msgstr "" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "" + +msgid "Reduce infill retraction" +msgstr "" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" + +msgid "" +"This option will drop the temperature of the inactive extruders to prevent " +"oozing." +msgstr "" + +msgid "Filename format" +msgstr "" + +msgid "User can self-define the project file name when export" +msgstr "" + +msgid "Make overhangs printable" +msgstr "" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "" + +msgid "Make overhangs printable - Maximum angle" +msgstr "" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" + +msgid "Make overhangs printable - Hole area" +msgstr "" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" + +msgid "mm²" +msgstr "" + +msgid "Detect overhang wall" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Speed of inner wall" +msgstr "" + +msgid "Number of walls of every layer" +msgstr "" + +msgid "Alternate extra wall" +msgstr "" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" + +msgid "Printer notes" +msgstr "" + +msgid "You can put your notes regarding the printer here." +msgstr "" + +msgid "Raft contact Z distance" +msgstr "" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" + +msgid "Raft expansion" +msgstr "" + +msgid "Expand all raft layers in XY plane" +msgstr "" + +msgid "Initial layer density" +msgstr "" + +msgid "Density of the first raft or support layer" +msgstr "" + +msgid "Initial layer expansion" +msgstr "" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" + +msgid "Raft layers" +msgstr "" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" + +msgid "Travel distance threshold" +msgstr "" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" + +msgid "Retract amount before wipe" +msgstr "" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" + +msgid "Retract when change layer" +msgstr "" + +msgid "Force a retraction when changes layer" +msgstr "" + +msgid "Retraction Length" +msgstr "" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" + +msgid "Long retraction when cut(experimental)" +msgstr "" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" + +msgid "Retraction distance when cut" +msgstr "" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" + +msgid "Z hop when retract" +msgstr "" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" + +msgid "Z hop lower boundary" +msgstr "" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" + +msgid "Z hop upper boundary" +msgstr "" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" + +msgid "Z hop type" +msgstr "" + +msgid "Slope" +msgstr "" + +msgid "Spiral" +msgstr "" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" + +msgid "Only lift Z below" +msgstr "" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" + +msgid "On surfaces" +msgstr "" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" + +msgid "All Surfaces" +msgstr "" + +msgid "Top Only" +msgstr "" + +msgid "Bottom Only" +msgstr "" + +msgid "Top and Bottom" +msgstr "" + +msgid "Extra length on restart" +msgstr "" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" + +msgid "Retraction Speed" +msgstr "" + +msgid "Speed of retractions" +msgstr "" + +msgid "Deretraction Speed" +msgstr "" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" + +msgid "Use firmware retraction" +msgstr "" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" + +msgid "Show auto-calibration marks" +msgstr "" + +msgid "Disable set remaining print time" +msgstr "" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" + +msgid "Seam position" +msgstr "" + +msgid "The start position to print each part of outer wall" +msgstr "" + +msgid "Nearest" +msgstr "" + +msgid "Aligned" +msgstr "" + +msgid "Back" +msgstr "" + +msgid "Random" +msgstr "" + +msgid "Staggered inner seams" +msgstr "" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" + +msgid "Seam gap" +msgstr "" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" + +msgid "Scarf joint seam (beta)" +msgstr "" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" + +msgid "Conditional scarf joint" +msgstr "" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" + +msgid "Conditional angle threshold" +msgstr "" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" + +msgid "Conditional overhang threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" + +msgid "Scarf joint speed" +msgstr "" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" + +msgid "Scarf joint flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" + +msgid "Scarf start height" +msgstr "" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" + +msgid "Scarf around entire wall" +msgstr "" + +msgid "The scarf extends to the entire length of the wall." +msgstr "" + +msgid "Scarf length" +msgstr "" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" + +msgid "Scarf steps" +msgstr "" + +msgid "Minimum number of segments of each scarf." +msgstr "" + +msgid "Scarf joint for inner walls" +msgstr "" + +msgid "Use scarf joint for inner walls as well." +msgstr "" + +msgid "Role base wipe speed" +msgstr "" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" + +msgid "Wipe on loops" +msgstr "" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" + +msgid "Wipe before external loop" +msgstr "" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" + +msgid "Wipe speed" +msgstr "" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" + +msgid "Skirt distance" +msgstr "" + +msgid "Distance from skirt to brim or object" +msgstr "" + +msgid "Skirt height" +msgstr "" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "" + +msgid "Draft shield" +msgstr "" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" + +msgid "Limited" +msgstr "" + +msgid "Enabled" +msgstr "" + +msgid "Skirt loops" +msgstr "" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "" + +msgid "Skirt speed" +msgstr "" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" + +msgid "Skirt minimum extrusion length" +msgstr "" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" + +msgid "Minimum sparse infill threshold" +msgstr "" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" + +msgid "Smooth Spiral" +msgstr "" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" + +msgid "Max XY Smoothing" +msgstr "" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" + +msgid "Traditional" +msgstr "" + +msgid "Temperature variation" +msgstr "" + +#. TRN PrintSettings : "Ooze prevention" > "Temperature variation" +msgid "" +"Temperature difference to be applied when an extruder is not active. The " +"value is not used when 'idle_temperature' in filament settings is set to non " +"zero value." +msgstr "" + +msgid "Preheat time" +msgstr "" + +msgid "" +"To reduce the waiting time after tool change, Orca can preheat the next tool " +"while the current tool is still in use. This setting specifies the time in " +"seconds to preheat the next tool. Orca will insert a M104 command to preheat " +"the tool in advance." +msgstr "" + +msgid "Preheat steps" +msgstr "" + +msgid "" +"Insert multiple preheat commands(e.g. M104.1). Only useful for Prusa XL. For " +"other printers, please set it to 1." +msgstr "" + +msgid "Start G-code" +msgstr "" + +msgid "Start G-code when start the whole printing" +msgstr "" + +msgid "Start G-code when start the printing of this filament" +msgstr "" + +msgid "Single Extruder Multi Material" +msgstr "" + +msgid "Use single nozzle to print multi filament" +msgstr "" + +msgid "Manual Filament Change" +msgstr "" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" + +msgid "Purge in prime tower" +msgstr "" + +msgid "Purge remaining filament into prime tower" +msgstr "" + +msgid "Enable filament ramming" +msgstr "" + +msgid "No sparse layers (beta)" +msgstr "" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" + +msgid "Prime all printing extruders" +msgstr "" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" + +msgid "Slice gap closing radius" +msgstr "" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" + +msgid "Slicing Mode" +msgstr "" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" + +msgid "Regular" +msgstr "" + +msgid "Even-odd" +msgstr "" + +msgid "Close holes" +msgstr "" + +msgid "Z offset" +msgstr "" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" + +msgid "Enable support" +msgstr "" + +msgid "Enable support generation." +msgstr "" + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" + +msgid "normal(auto)" +msgstr "" + +msgid "tree(auto)" +msgstr "" + +msgid "normal(manual)" +msgstr "" + +msgid "tree(manual)" +msgstr "" + +msgid "Support/object xy distance" +msgstr "" + +msgid "XY separation between an object and its support" +msgstr "" + +msgid "Pattern angle" +msgstr "" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" + +msgid "On build plate only" +msgstr "" + +msgid "Don't create support on model surface, only on build plate" +msgstr "" + +msgid "Support critical regions only" +msgstr "" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" + +msgid "Remove small overhangs" +msgstr "" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "" + +msgid "Top Z distance" +msgstr "" + +msgid "The z gap between the top support interface and object" +msgstr "" + +msgid "Bottom Z distance" +msgstr "" + +msgid "The z gap between the bottom support interface and object" +msgstr "" + +msgid "Support/raft base" +msgstr "" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" + +msgid "Avoid interface filament for base" +msgstr "" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Interface use loop pattern" +msgstr "" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" + +msgid "Support/raft interface" +msgstr "" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" + +msgid "Top interface layers" +msgstr "" + +msgid "Number of top interface layers" +msgstr "" + +msgid "Bottom interface layers" +msgstr "" + +msgid "Number of bottom interface layers" +msgstr "" + +msgid "Same as top" +msgstr "" + +msgid "Top interface spacing" +msgstr "" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "" + +msgid "Bottom interface spacing" +msgstr "" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" + +msgid "Speed of support interface" +msgstr "" + +msgid "Base pattern" +msgstr "" + +msgid "Line pattern of support" +msgstr "" + +msgid "Rectilinear grid" +msgstr "" + +msgid "Hollow" +msgstr "" + +msgid "Interface pattern" +msgstr "" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" + +msgid "Rectilinear Interlaced" +msgstr "" + +msgid "Base pattern spacing" +msgstr "" + +msgid "Spacing between support lines" +msgstr "" + +msgid "Normal Support expansion" +msgstr "" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "" + +msgid "Speed of support" +msgstr "" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" + +msgid "Snug" +msgstr "" + +msgid "Tree Slim" +msgstr "" + +msgid "Tree Strong" +msgstr "" + +msgid "Tree Hybrid" +msgstr "" + +msgid "Organic" +msgstr "" + +msgid "Independent support layer height" +msgstr "" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" + +msgid "Threshold angle" +msgstr "" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" + +msgid "Tree support branch angle" +msgstr "" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" + +msgid "Preferred Branch Angle" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" + +msgid "Tree support branch distance" +msgstr "" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" + +msgid "Branch Density" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" + +msgid "Adaptive layer height" +msgstr "" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" + +msgid "Auto brim width" +msgstr "" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" + +msgid "Tree support brim width" +msgstr "" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "" + +msgid "Tip Diameter" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "" + +msgid "Tree support branch diameter" +msgstr "" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "" + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" + +msgid "Branch Diameter with double walls" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" + +msgid "Support wall loops" +msgstr "" + +msgid "This setting specify the count of walls around support" +msgstr "" + +msgid "Tree support with infill" +msgstr "" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" + +msgid "Activate temperature control" +msgstr "" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" + +msgid "Chamber temperature" +msgstr "" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "" + +msgid "Detect thin wall" +msgstr "" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Speed of top surface infill which is solid" +msgstr "" + +msgid "Top shell layers" +msgstr "" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" + +msgid "Top solid layers" +msgstr "" + +msgid "Top shell thickness" +msgstr "" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "" + +msgid "Wipe while retracting" +msgstr "" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" + +msgid "Wipe Distance" +msgstr "" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" + +msgid "Purging volumes" +msgstr "" + +msgid "Flush multiplier" +msgstr "" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" + +msgid "Prime volume" +msgstr "" + +msgid "The volume of material to prime extruder on tower." +msgstr "" + +msgid "Width of prime tower" +msgstr "" + +msgid "Wipe tower rotation angle" +msgstr "" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "" + +msgid "Stabilization cone apex angle" +msgstr "" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" + +msgid "Maximum wipe tower print speed" +msgstr "" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" + +msgid "Purging volumes - load/unload volumes" +msgstr "" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" + +msgid "Maximal bridging distance" +msgstr "" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "" + +msgid "Wipe tower purge lines spacing" +msgstr "" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "" + +msgid "Extra flow for purging" +msgstr "" + +msgid "" +"Extra flow used for the purging lines on the wipe tower. This makes the " +"purging lines thicker or narrower than they normally would be. The spacing " +"is adjusted automatically." +msgstr "" + +msgid "Idle temperature" +msgstr "" + +msgid "" +"Nozzle temperature when the tool is currently not used in multi-tool setups." +"This is only used when 'Ooze prevention' is active in Print Settings. Set to " +"0 to disable." +msgstr "" + +msgid "X-Y hole compensation" +msgstr "" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" + +msgid "X-Y contour compensation" +msgstr "" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" + +msgid "Convert holes to polyholes" +msgstr "" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" + +msgid "Polyhole detection margin" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" + +msgid "Polyhole twist" +msgstr "" + +msgid "Rotate the polyhole every layer." +msgstr "" + +msgid "G-code thumbnails" +msgstr "" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" + +msgid "Format of G-code thumbnails" +msgstr "" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" + +msgid "Use relative E distances" +msgstr "" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" + +msgid "Classic" +msgstr "" + +msgid "Arachne" +msgstr "" + +msgid "Wall transition length" +msgstr "" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" + +msgid "Wall transitioning filter margin" +msgstr "" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" + +msgid "Wall transitioning threshold angle" +msgstr "" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" + +msgid "Wall distribution count" +msgstr "" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" + +msgid "Minimum feature size" +msgstr "" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" + +msgid "Minimum wall length" +msgstr "" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" + +msgid "First layer minimum wall width" +msgstr "" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" + +msgid "Minimum wall width" +msgstr "" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" + +msgid "Detect narrow internal solid infill" +msgstr "" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" + +msgid "invalid value " +msgstr "" + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "" + +msgid "too large line width " +msgstr "" + +msgid " not in range " +msgstr "" + +msgid "Minimum save" +msgstr "" + +msgid "export 3mf with minimum size." +msgstr "" + +msgid "No check" +msgstr "" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" + +msgid "Ensure on bed" +msgstr "" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" + +msgid "Orient Options" +msgstr "" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "" + +msgid "Rotate around Y" +msgstr "" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "" + +msgid "Data directory" +msgstr "" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" + +msgid "Load custom gcode" +msgstr "" + +msgid "Load custom gcode from json" +msgstr "" + +msgid "Current z-hop" +msgstr "" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "" + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" + +msgid "Extra deretraction" +msgstr "" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" + +msgid "Absolute E position" +msgstr "" + +msgid "" +"Current position of the extruder axis. Only used with absolute extruder " +"addressing." +msgstr "" + +msgid "Current extruder" +msgstr "" + +msgid "Zero-based index of currently used extruder." +msgstr "" + +msgid "Current object index" +msgstr "" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" + +msgid "Has wipe tower" +msgstr "" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "" + +msgid "Initial extruder" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" + +msgid "Initial tool" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" + +msgid "Is extruder used?" +msgstr "" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" + +msgid "Has single extruder MM priming" +msgstr "" + +msgid "Are the extra multi-material priming regions used in this print?" +msgstr "" + +msgid "Volume per extruder" +msgstr "" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" + +msgid "Total toolchanges" +msgstr "" + +msgid "Number of toolchanges during the print." +msgstr "" + +msgid "Total volume" +msgstr "" + +msgid "Total volume of filament used during the entire print." +msgstr "" + +msgid "Weight per extruder" +msgstr "" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" + +msgid "Total weight" +msgstr "" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" + +msgid "Total layer count" +msgstr "" + +msgid "Number of layers in the entire print." +msgstr "" + +msgid "Number of objects" +msgstr "" + +msgid "Total number of objects in the print." +msgstr "" + +msgid "Number of instances" +msgstr "" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" + +msgid "Scale per object" +msgstr "" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" + +msgid "Input filename without extension" +msgstr "" + +msgid "Source filename of the first object, without extension." +msgstr "" + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" + +msgid "First layer convex hull" +msgstr "" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" + +msgid "Bottom-left corner of first layer bounding box" +msgstr "" + +msgid "Top-right corner of first layer bounding box" +msgstr "" + +msgid "Size of the first layer bounding box" +msgstr "" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "" + +msgid "Top-right corner of print bed bounding box" +msgstr "" + +msgid "Size of the print bed bounding box" +msgstr "" + +msgid "Timestamp" +msgstr "" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "" + +msgid "Day" +msgstr "" + +msgid "Hour" +msgstr "" + +msgid "Minute" +msgstr "" + +msgid "Print preset name" +msgstr "" + +msgid "Name of the print preset used for slicing." +msgstr "" + +msgid "Filament preset name" +msgstr "" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" + +msgid "Printer preset name" +msgstr "" + +msgid "Name of the printer preset used for slicing." +msgstr "" + +msgid "Physical printer name" +msgstr "" + +msgid "Name of the physical printer used for slicing." +msgstr "" + +msgid "Number of extruders" +msgstr "" + +msgid "" +"Total number of extruders, regardless of whether they are used in the " +"current print." +msgstr "" + +msgid "Layer number" +msgstr "" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" + +msgid "Layer z" +msgstr "" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" + +msgid "Maximal layer z" +msgstr "" + +msgid "Height of the last layer above the print bed." +msgstr "" + +msgid "Filament extruder ID" +msgstr "" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "" + +msgid "Error in zip archive" +msgstr "" + +msgid "Generating walls" +msgstr "" + +msgid "Generating infill regions" +msgstr "" + +msgid "Generating infill toolpath" +msgstr "" + +msgid "Detect overhangs for auto-lift" +msgstr "" + +msgid "Generating support" +msgstr "" + +msgid "Checking support necessity" +msgstr "" + +msgid "floating regions" +msgstr "" + +msgid "floating cantilever" +msgstr "" + +msgid "large overhangs" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" + +msgid "Optimizing toolpath" +msgstr "" + +msgid "Slicing mesh" +msgstr "" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "" + +msgid "Support: detect overhangs" +msgstr "" + +msgid "Support: generate contact points" +msgstr "" + +msgid "Support: propagate branches" +msgstr "" + +msgid "Support: draw polygons" +msgstr "" + +msgid "Support: generate toolpath" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Support: generate polygons at layer %d" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Support: fix holes at layer %d" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Support: propagate branches at layer %d" +msgstr "" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" + +msgid "Loading of a model file failed." +msgstr "" + +msgid "The supplied file couldn't be read because it's empty" +msgstr "" + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" + +msgid "Canceled" +msgstr "" + +msgid "load_obj: failed to parse" +msgstr "" + +msgid "load mtl in obj: failed to parse" +msgstr "" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "" + +msgid "The file contains polygons with less than 2 vertices." +msgstr "" + +msgid "The file contains invalid vertex index." +msgstr "" + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "" + +msgid "Flow Rate Calibration" +msgstr "" + +msgid "Max Volumetric Speed Calibration" +msgstr "" + +msgid "Manage Result" +msgstr "" + +msgid "Manual Calibration" +msgstr "" + +msgid "Result can be read by human eyes." +msgstr "" + +msgid "Auto-Calibration" +msgstr "" + +msgid "We would use Lidar to read the calibration result" +msgstr "" + +msgid "Prev" +msgstr "" + +msgid "Recalibration" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Finish" +msgstr "" + +msgid "How to use calibration result?" +msgstr "" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" + +msgid "Calibration not supported" +msgstr "" + +msgid "Error desc" +msgstr "" + +msgid "Extra info" +msgstr "" + +msgid "Flow Dynamics" +msgstr "" + +msgid "Flow Rate" +msgstr "" + +msgid "Max Volumetric Speed" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" + +msgid "The name cannot be empty." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "The selected preset: %s is not found." +msgstr "" + +msgid "The name cannot be the same as the system preset name." +msgstr "" + +msgid "The name is the same as another existing preset name" +msgstr "" + +msgid "create new preset failed." +msgstr "" + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" + +msgid "No Printer Connected!" +msgstr "" + +msgid "Printer is not connected yet." +msgstr "" + +msgid "Please select filament to calibrate." +msgstr "" + +msgid "The input value size must be 3." +msgstr "" + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" + +msgid "Connecting to printer..." +msgstr "" + +msgid "The failed test result has been dropped." +msgstr "" + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" + +msgid "Internal Error" +msgstr "" + +msgid "Please select at least one filament for calibration" +msgstr "" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" + +msgid "About this calibration" +msgstr "" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "" + +msgid "Over-extrusion or under extrusion" +msgstr "" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "" + +msgid "materials with inaccurate filament diameter" +msgstr "" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" + +msgid "Failed" +msgstr "" + +msgid "Please enter the name you want to save to printer." +msgstr "" + +msgid "The name cannot exceed 40 characters." +msgstr "" + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" + +msgid "Please find the best line on your plate" +msgstr "" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "" + +msgid "Input Value" +msgstr "" + +msgid "Save to Filament Preset" +msgstr "" + +msgid "Preset" +msgstr "" + +msgid "Record Factor" +msgstr "" + +msgid "We found the best flow ratio for you" +msgstr "" + +msgid "Flow Ratio" +msgstr "" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "" + +msgid "Please enter the name of the preset you want to save." +msgstr "" + +msgid "Calibration1" +msgstr "" + +msgid "Calibration2" +msgstr "" + +msgid "Please find the best object on your plate" +msgstr "" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "" + +msgid "Skip Calibration2" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "flow ratio : %s " +msgstr "" + +msgid "Please choose a block with smoothest top surface" +msgstr "" + +msgid "Please choose a block with smoothest top surface." +msgstr "" + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "" + +msgid "Calibration Type" +msgstr "" + +msgid "Complete Calibration" +msgstr "" + +msgid "Fine Calibration based on flow ratio" +msgstr "" + +msgid "Title" +msgstr "" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" + +msgid "Printing Parameters" +msgstr "" + +msgid "Plate Type" +msgstr "" + +msgid "filament position" +msgstr "" + +msgid "External Spool" +msgstr "" + +msgid "Filament For Calibration" +msgstr "" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" + +msgid "Pattern" +msgstr "" + +msgid "Method" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "%s is not compatible with %s" +msgstr "" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "" + +msgid "Connecting to printer" +msgstr "" + +msgid "From k Value" +msgstr "" + +msgid "To k Value" +msgstr "" + +msgid "Step value" +msgstr "" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "" + +msgid "From Volumetric Speed" +msgstr "" + +msgid "To Volumetric Speed" +msgstr "" + +msgid "Flow Dynamics Calibration Result" +msgstr "" + +msgid "New" +msgstr "" + +msgid "No History Result" +msgstr "" + +msgid "Success to get history result" +msgstr "" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "" + +msgid "Action" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "" + +msgid "Edit Flow Dynamics Calibration" +msgstr "" + +msgid "New Flow Dynamic Calibration" +msgstr "" + +msgid "Ok" +msgstr "" + +msgid "The filament must be selected." +msgstr "" + +msgid "Network lookup" +msgstr "" + +msgid "Address" +msgstr "" + +msgid "Hostname" +msgstr "" + +msgid "Service name" +msgstr "" + +msgid "OctoPrint version" +msgstr "" + +msgid "Searching for devices" +msgstr "" + +msgid "Finished" +msgstr "" + +msgid "Multiple resolved IP addresses" +msgstr "" + +#, possible-boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" + +msgid "PA Calibration" +msgstr "" + +msgid "DDE" +msgstr "" + +msgid "Bowden" +msgstr "" + +msgid "Extruder type" +msgstr "" + +msgid "PA Tower" +msgstr "" + +msgid "PA Line" +msgstr "" + +msgid "PA Pattern" +msgstr "" + +msgid "Start PA: " +msgstr "" + +msgid "End PA: " +msgstr "" + +msgid "PA step: " +msgstr "" + +msgid "Print numbers" +msgstr "" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" + +msgid "Temperature calibration" +msgstr "" + +msgid "PLA" +msgstr "" + +msgid "ABS/ASA" +msgstr "" + +msgid "PETG" +msgstr "" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "" + +msgid "PA-CF" +msgstr "" + +msgid "PET-CF" +msgstr "" + +msgid "Filament type" +msgstr "" + +msgid "Start temp: " +msgstr "" + +msgid "End temp: " +msgstr "" + +msgid "Temp step: " +msgstr "" + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" + +msgid "Max volumetric speed test" +msgstr "" + +msgid "Start volumetric speed: " +msgstr "" + +msgid "End volumetric speed: " +msgstr "" + +msgid "step: " +msgstr "" + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "VFA test" +msgstr "" + +msgid "Start speed: " +msgstr "" + +msgid "End speed: " +msgstr "" + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "Start retraction length: " +msgstr "" + +msgid "End retraction length: " +msgstr "" + +msgid "mm/mm" +msgstr "" + +msgid "Send G-Code to printer host" +msgstr "" + +msgid "Upload to Printer Host with the following filename:" +msgstr "" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "" + +msgid "Upload to storage" +msgstr "" + +msgid "Switch to Device tab after upload." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "" + +msgid "Upload" +msgstr "" + +msgid "Print host upload queue" +msgstr "" + +msgid "ID" +msgstr "" + +msgid "Progress" +msgstr "" + +msgid "Host" +msgstr "" + +msgctxt "OfFile" +msgid "Size" +msgstr "" + +msgid "Filename" +msgstr "" + +msgid "Cancel selected" +msgstr "" + +msgid "Show error message" +msgstr "" + +msgid "Enqueued" +msgstr "" + +msgid "Uploading" +msgstr "" + +msgid "Cancelling" +msgstr "" + +msgid "Error uploading to print host" +msgstr "" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "" + +msgid "Mesh Boolean" +msgstr "" + +msgid "Union" +msgstr "" + +msgid "Difference" +msgstr "" + +msgid "Intersection" +msgstr "" + +msgid "Source Volume" +msgstr "" + +msgid "Tool Volume" +msgstr "" + +msgid "Subtract from" +msgstr "" + +msgid "Subtract with" +msgstr "" + +msgid "selected" +msgstr "" + +msgid "Part 1" +msgstr "" + +msgid "Part 2" +msgstr "" + +msgid "Delete input" +msgstr "" + +msgid "Network Test" +msgstr "" + +msgid "Start Test Multi-Thread" +msgstr "" + +msgid "Start Test Single-Thread" +msgstr "" + +msgid "Export Log" +msgstr "" + +msgid "Snapmaker_Orca Version:" +msgstr "" + +msgid "System Version:" +msgstr "" + +msgid "DNS Server:" +msgstr "" + +msgid "Test Snapmaker_Orca(GitHub)" +msgstr "" + +msgid "Test Snapmaker_Orca(GitHub):" +msgstr "" + +msgid "Test Bing.com" +msgstr "" + +msgid "Test bing.com:" +msgstr "" + +msgid "Log Info" +msgstr "" + +msgid "Select filament preset" +msgstr "" + +msgid "Create Filament" +msgstr "" + +msgid "Create Based on Current Filament" +msgstr "" + +msgid "Copy Current Filament Preset " +msgstr "" + +msgid "Basic Information" +msgstr "" + +msgid "Add Filament Preset under this filament" +msgstr "" + +msgid "We could create the filament presets for your following printer:" +msgstr "" + +msgid "Select Vendor" +msgstr "" + +msgid "Input Custom Vendor" +msgstr "" + +msgid "Can't find vendor I want" +msgstr "" + +msgid "Select Type" +msgstr "" + +msgid "Select Filament Preset" +msgstr "" + +msgid "Serial" +msgstr "" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "" + +msgid "Filament Preset" +msgstr "" + +msgid "Create" +msgstr "" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "" + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" + +msgid "Filament type is not selected, please reselect type." +msgstr "" + +msgid "Filament serial is not inputed, please input serial." +msgstr "" + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" + +msgid "The vendor can not be a number. Please re-enter." +msgstr "" + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" + +msgid "Create Printer/Nozzle" +msgstr "" + +msgid "Create Printer" +msgstr "" + +msgid "Create Nozzle for Existing Printer" +msgstr "" + +msgid "Create from Template" +msgstr "" + +msgid "Create Based on Current Printer" +msgstr "" + +msgid "Import Preset" +msgstr "" + +msgid "Create Type" +msgstr "" + +msgid "The model is not found, place reselect vendor." +msgstr "" + +msgid "Select Model" +msgstr "" + +msgid "Select Printer" +msgstr "" + +msgid "Input Custom Model" +msgstr "" + +msgid "Can't find my printer model" +msgstr "" + +msgid "Rectangle" +msgstr "" + +msgid "Printable Space" +msgstr "" + +msgid "Hot Bed STL" +msgstr "" + +msgid "Load stl" +msgstr "" + +msgid "Hot Bed SVG" +msgstr "" + +msgid "Load svg" +msgstr "" + +msgid "Max Print Height" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "" + +msgid "Exception in obtaining file size, please import again." +msgstr "" + +msgid "Preset path is not find, please reselect vendor." +msgstr "" + +msgid "The printer model was not found, please reselect." +msgstr "" + +msgid "The nozzle diameter is not found, place reselect." +msgstr "" + +msgid "The printer preset is not found, place reselect." +msgstr "" + +msgid "Printer Preset" +msgstr "" + +msgid "Filament Preset Template" +msgstr "" + +msgid "Deselect All" +msgstr "" + +msgid "Process Preset Template" +msgstr "" + +msgid "Back Page 1" +msgstr "" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" + +msgid "The custom printer or model is not inputed, place input." +msgstr "" + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" + +msgid "You need to select at least one filament preset." +msgstr "" + +msgid "You need to select at least one process preset." +msgstr "" + +msgid "Create filament presets failed. As follows:\n" +msgstr "" + +msgid "Create process presets failed. As follows:\n" +msgstr "" + +msgid "Vendor is not find, please reselect." +msgstr "" + +msgid "Current vendor has no models, please reselect." +msgstr "" + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" + +msgid "Please check bed printable shape and origin input." +msgstr "" + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" + +msgid "Create Printer Successful" +msgstr "" + +msgid "Create Filament Successful" +msgstr "" + +msgid "Printer Created" +msgstr "" + +msgid "Please go to printer settings to edit your presets" +msgstr "" + +msgid "Filament Created" +msgstr "" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" + +msgid "Printer Setting" +msgstr "" + +msgid "Printer config bundle(.orca_printer)" +msgstr "" + +msgid "Filament bundle(.orca_filament)" +msgstr "" + +msgid "Printer presets(.zip)" +msgstr "" + +msgid "Filament presets(.zip)" +msgstr "" + +msgid "Process presets(.zip)" +msgstr "" + +msgid "initialize fail" +msgstr "" + +msgid "add file fail" +msgstr "" + +msgid "add bundle structure file fail" +msgstr "" + +msgid "finalize fail" +msgstr "" + +msgid "open zip written fail" +msgstr "" + +msgid "Export successful" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" + +msgid "Only display the filament names with changes to filament presets." +msgstr "" + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" + +msgid "Please select at least one printer or filament." +msgstr "" + +msgid "Please select a type you want to export" +msgstr "" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" + +msgid "Edit Filament" +msgstr "" + +msgid "Filament presets under this filament" +msgstr "" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" + +msgid "Presets inherited by other presets can not be deleted" +msgstr "" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" + +msgid "Delete Preset" +msgstr "" + +msgid "Are you sure to delete the selected preset?" +msgstr "" + +msgid "Delete preset" +msgstr "" + +msgid "+ Add Preset" +msgstr "" + +msgid "Delete Filament" +msgstr "" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" + +msgid "Delete filament" +msgstr "" + +msgid "Add Preset" +msgstr "" + +msgid "Add preset for new printer" +msgstr "" + +msgid "Copy preset from filament" +msgstr "" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "" + +msgid "[Delete Required]" +msgstr "" + +msgid "Edit Preset" +msgstr "" + +msgid "For more information, please check out Wiki" +msgstr "" + +msgid "Collapse" +msgstr "" + +msgid "Daily Tips" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "" + +msgid "Need select printer" +msgstr "" + +msgid "The start, end or step is not valid value." +msgstr "" + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" + +msgid "Physical Printer" +msgstr "" + +msgid "Print Host upload" +msgstr "" + +msgid "Could not get a valid Printer Host reference" +msgstr "" + +msgid "Success!" +msgstr "" + +msgid "Are you sure to log out?" +msgstr "" + +msgid "Refresh Printers" +msgstr "" + +msgid "View print host webui in Device tab" +msgstr "" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "" + +msgid "Open CA certificate file" +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" + +msgid "Login/Test" +msgstr "" + +msgid "Connection to printers connected via the print host failed." +msgstr "" + +#, possible-c-format, possible-boost-format +msgid "Mismatched type of print host: %s" +msgstr "" + +msgid "Connection to AstroBox works correctly." +msgstr "" + +msgid "Could not connect to AstroBox" +msgstr "" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "" + +msgid "Connection to Duet works correctly." +msgstr "" + +msgid "Could not connect to Duet" +msgstr "" + +msgid "Unknown error occured" +msgstr "" + +msgid "Wrong password" +msgstr "" + +msgid "Could not get resources to create a new connection" +msgstr "" + +msgid "Upload not enabled on FlashAir card." +msgstr "" + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "" + +msgid "Could not connect to FlashAir" +msgstr "" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" + +msgid "Connection to MKS works correctly." +msgstr "" + +msgid "Could not connect to MKS" +msgstr "" + +msgid "Connection to OctoPrint works correctly." +msgstr "" + +msgid "Could not connect to OctoPrint" +msgstr "" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "" + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "" + +msgid "Could not connect to Prusa SLA" +msgstr "" + +msgid "Connection to PrusaLink works correctly." +msgstr "" + +msgid "Could not connect to PrusaLink" +msgstr "" + +msgid "Storages found" +msgstr "" + +#. TRN %1% = storage path +#, possible-boost-format +msgid "%1% : read only" +msgstr "" + +#. TRN %1% = storage path +#, possible-boost-format +msgid "%1% : no free space" +msgstr "" + +#. TRN %1% = host +#, possible-boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" + +msgid "Connection to Prusa Connect works correctly." +msgstr "" + +msgid "Could not connect to Prusa Connect" +msgstr "" + +msgid "Connection to Repetier works correctly." +msgstr "" + +msgid "Could not connect to Repetier" +msgstr "" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "" + +#, possible-boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" + +#, possible-boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" + +#, possible-boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" + +msgid "Connected to Obico successfully!" +msgstr "" + +msgid "Could not connect to Obico" +msgstr "" + +msgid "Connected to SimplyPrint successfully!" +msgstr "" + +msgid "Could not connect to SimplyPrint" +msgstr "" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" + +msgid "Connection to Flashforge works correctly." +msgstr "" + +msgid "Could not connect to Flashforge" +msgstr "" + +msgid "The provided state is not correct." +msgstr "" + +msgid "Please give the required permissions when authorizing this application." +msgstr "" + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" + +msgid "User cancelled." +msgstr "" + +msgid "Nozzle Bind" +msgstr "" + +msgid "The target machine model has been detected as" +msgstr "" + +msgid "Please bind the nozzle information" +msgstr "" + +msgid "Machine Disconnected" +msgstr "" + +msgid "Connection has been disconnected and recovery attempt failed. Please reconnect." +msgstr "" + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "Precise wall\nDid you know that turning on precise wall can improve precision and layer consistency?" +msgstr "" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "Sandwich mode\nDid you know that you can use sandwich mode (inner-outer-inner) to improve precision and layer consistency if your model doesn't have very steep overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "Chamber temperature\nDid you know that Snapmaker_Orca supports chamber temperature?" +msgstr "" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "Calibration\nDid you know that calibrating your printer can do wonders? Check out our beloved calibration solution in Snapmaker_Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "Auxiliary fan\nDid you know that Snapmaker_Orca supports Auxiliary part cooling fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "Air filtration/Exhaust Fan\nDid you know that Snapmaker_Orca can support Air filtration/Exhaust Fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "G-code window\nYou can turn on/off the G-code window by pressing the C key." +msgstr "" + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "Switch workspaces\nYou can switch between Prepare and Preview workspaces by pressing the Tab key." +msgstr "" + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "How to use keyboard shortcuts\nDid you know that Snapmaker Orca offers a wide range of keyboard shortcuts and 3D scene operations." +msgstr "" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "Reverse on odd\nDid you know that Reverse on odd feature can significantly improve the surface quality of your overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "Cut Tool\nDid you know that you can cut a model at any angle and position with the cutting tool?" +msgstr "" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "Fix Model\nDid you know that you can fix a corrupted 3D model to avoid a lot of slicing problems on the Windows system?" +msgstr "" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "Timelapse\nDid you know that you can generate a timelapse video during each print?" +msgstr "" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "Auto-Arrange\nDid you know that you can auto-arrange all objects in your project?" +msgstr "" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "Auto-Orient\nDid you know that you can rotate objects to an optimal orientation for printing by a simple click?" +msgstr "" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "Lay on Face\nDid you know that you can quickly orient a model so that one of its faces sits on the print bed? Select the \"Place on face\" function or press the F key." +msgstr "" + +#: resources/data/hints.ini: [hint:Object List] +msgid "Object List\nDid you know that you can view all objects/parts in a list and change settings for each object/part?" +msgstr "" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "Search Functionality\nDid you know that you use the Search tool to quickly find a specific Snapmaker Orca setting?" +msgstr "" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "Simplify Model\nDid you know that you can reduce the number of triangles in a mesh using the Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "Slicing Parameter Table\nDid you know that you can view all objects/parts on a table and change settings for each object/part?" +msgstr "" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "Split to Objects/Parts\nDid you know that you can split a big object into small ones for easy colorizing or printing?" +msgstr "" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:STEP] +msgid "STEP\nDid you know that you can improve your print quality by slicing a STEP file instead of an STL?\nSnapmaker Orca supports slicing STEP files, providing smoother results than a lower resolution STL. Give it a try!" +msgstr "" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "Z seam location\nDid you know that you can customize the location of the Z seam, and even paint it on your print, to have it in a less visible location? This improves the overall look of your model. Check it out!" +msgstr "" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "Fine-tuning for flow rate\nDid you know that flow rate can be fine-tuned for even better-looking prints? Depending on the material, you can improve the overall finish of the printed model by doing some fine-tuning." +msgstr "" + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "Split your prints into plates\nDid you know that you can split a model that has a lot of parts into individual plates ready to print? This will simplify the process of keeping track of all the parts." +msgstr "" + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer Height] +msgid "Speed up your print with Adaptive Layer Height\nDid you know that you can print a model even faster, by using the Adaptive Layer Height option? Check it out!" +msgstr "" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "Support painting\nDid you know that you can paint the location of your supports? This feature makes it easy to place the support material only on the sections of the model that actually need it." +msgstr "" + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "Different types of supports\nDid you know that you can choose from multiple types of supports? Tree supports work great for organic models, while saving filament and improving print speed. Check them out!" +msgstr "" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "Printing Silk Filament\nDid you know that Silk filament needs special consideration to print it successfully? Higher temperature and lower speed are always recommended for the best results." +msgstr "" + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "Brim for better adhesion\nDid you know that when printing models have a small contact interface with the printing surface, it's recommended to use a brim?" +msgstr "" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "Set parameters for multiple objects\nDid you know that you can set slicing parameters for all selected objects at one time?" +msgstr "" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "Stack objects\nDid you know that you can stack objects as a whole one?" +msgstr "" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "Flush into support/objects/infill\nDid you know that you can save the wasted filament by flushing them into support/objects/infill during filament change?" +msgstr "" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "Improve strength\nDid you know that you can use more wall loops and higher sparse infill density to improve the strength of the model?" +msgstr "" + +#: resources/data/hints.ini: [hint:When need to print with the printer door opened] +msgid "When need to print with the printer door opened\nDid you know that opening the printer door can reduce the probability of extruder/hotend clogging when printing lower temperature filament with a higher enclosure temperature. More info about this in the Wiki." +msgstr "" + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "Avoid warping\nDid you know that when printing materials that are prone to warping such as ABS, appropriately increasing the heatbed temperature can reduce the probability of warping." +msgstr "" diff --git a/localization/i18n/ca/Snapmaker_Orca_ca.po b/localization/i18n/ca/Snapmaker_Orca_ca.po new file mode 100644 index 0000000000..4ff29d483d --- /dev/null +++ b/localization/i18n/ca/Snapmaker_Orca_ca.po @@ -0,0 +1,17416 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: 2024-07-07 18:43+0200\n" +"Last-Translator: \n" +"Language-Team: \n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 3.4.4\n" + +msgid "Supports Painting" +msgstr "Pintar suports" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Roda del ratolí" + +msgid "Section view" +msgstr "Vista de secció" + +msgid "Reset direction" +msgstr "Restablir direcció" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Roda del ratolí" + +msgid "Pen size" +msgstr "Mida del llapis" + +msgid "Left mouse button" +msgstr "Botó esquerre del ratolí" + +msgid "Enforce supports" +msgstr "Imposar suports" + +msgid "Right mouse button" +msgstr "Botó dret del ratolí" + +msgid "Block supports" +msgstr "Blocar suports" + +msgid "Shift + Left mouse button" +msgstr "Maj + botó esquerre del ratolí" + +msgid "Erase" +msgstr "Esborrar" + +msgid "Erase all painting" +msgstr "Esborrar tota el pintat" + +msgid "Highlight overhang areas" +msgstr "Ressaltar zones en voladís" + +msgid "Gap fill" +msgstr "Farcir el buit" + +msgid "Perform" +msgstr "Realitzar" + +msgid "Gap area" +msgstr "Emplenar àrea" + +msgid "Tool type" +msgstr "Tipus d'eina" + +msgid "Smart fill angle" +msgstr "Angle de farciment intel·ligent" + +msgid "On overhangs only" +msgstr "Només als voladissos" + +msgid "Auto support threshold angle: " +msgstr "Angle llindar de suport automàtic: " + +msgid "Circle" +msgstr "Cercle" + +msgid "Sphere" +msgstr "Esfera" + +msgid "Fill" +msgstr "Farcir" + +msgid "Gap Fill" +msgstr "Farcir el buit" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Permet pintar només les facetes seleccionades per: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Ressalteu les cares segons l'angle del voladís." + +msgid "No auto support" +msgstr "No suports automàtics" + +msgid "Support Generated" +msgstr "Suport generat" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo-Recolzar sobre la Cara" + +msgid "Lay on face" +msgstr "Recolzar sobre la Cara" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"El recompte de filaments supera el nombre màxim que admet l'eina de pintura. " +"Només els primers filaments %1% estaran disponibles a l'eina de pintura." + +msgid "Color Painting" +msgstr "Pintura en color" + +msgid "Pen shape" +msgstr "Forma del llapis" + +msgid "Paint" +msgstr "Pintar" + +msgid "Key 1~9" +msgstr "Tecla 1~9" + +msgid "Choose filament" +msgstr "Tria el filament" + +msgid "Edge detection" +msgstr "Detecció de contorn" + +msgid "Triangles" +msgstr "Triangles" + +msgid "Filaments" +msgstr "Filaments" + +msgid "Brush" +msgstr "Pinzell" + +msgid "Smart fill" +msgstr "Farciment intel·ligent" + +msgid "Bucket fill" +msgstr "Farciment de cubs" + +msgid "Height range" +msgstr "Rang d'alçada" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Majúscules + Retorn" + +msgid "Toggle Wireframe" +msgstr "Commuta Malla Alàmbrica" + +msgid "Shortcut Key " +msgstr "Tecla de drecera " + +msgid "Triangle" +msgstr "Triangle" + +msgid "Height Range" +msgstr "Rang d'alçada" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Horizontal" +msgstr "Horitzontal" + +msgid "Remove painted color" +msgstr "Elimina el color pintat" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Pintat amb: Filament %1%" + +msgid "Move" +msgstr "Moure" + +msgid "Gizmo-Move" +msgstr "Gizmo-Moviment" + +msgid "Rotate" +msgstr "Rotar" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-Rotació" + +msgid "Optimize orientation" +msgstr "Optimitzar l'orientació" + +msgid "Apply" +msgstr "Aplicar" + +msgid "Scale" +msgstr "Escalar" + +msgid "Gizmo-Scale" +msgstr "Gizmo-Escalar" + +msgid "Error: Please close all toolbar menus first" +msgstr "Error: Tanqueu primer tots els menús de la barra d'eines" + +msgid "in" +msgstr "polç" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Posició" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Rotació" + +msgid "Scale ratios" +msgstr "Ràtios d'escala" + +msgid "Object Operations" +msgstr "Operacions amb objectes" + +msgid "Volume Operations" +msgstr "Operacions de volum" + +msgid "Translate" +msgstr "Traduir" + +msgid "Group Operations" +msgstr "Operacions de grup" + +msgid "Set Position" +msgstr "Establir Posició" + +msgid "Set Orientation" +msgstr "Establir Orientació" + +msgid "Set Scale" +msgstr "Establir Escala" + +msgid "Reset Position" +msgstr "Restableix la Posició" + +msgid "Reset Rotation" +msgstr "Restableix la Rotació" + +msgid "World coordinates" +msgstr "Coordenades cartesianes" + +msgid "Object coordinates" +msgstr "Coordenades de l'objecte" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Mida" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "escala uniforme" + +msgid "Planar" +msgstr "Planar" + +msgid "Dovetail" +msgstr "Matxembrat" + +msgid "Auto" +msgstr "Automàtic" + +msgid "Manual" +msgstr "Manual" + +msgid "Plug" +msgstr "Connectar" + +msgid "Dowel" +msgstr "Pivot" + +msgid "Snap" +msgstr "Acoblar" + +msgid "Prism" +msgstr "Prisma" + +msgid "Frustum" +msgstr "Con" + +msgid "Square" +msgstr "Quadrat" + +msgid "Hexagon" +msgstr "Hexàgon" + +msgid "Keep orientation" +msgstr "Mantenir l'orientació" + +msgid "Place on cut" +msgstr "Col·locar en la posició de tall" + +msgid "Flip upside down" +msgstr "Capgirar" + +msgid "Connectors" +msgstr "Connectors" + +msgid "Type" +msgstr "Tipus" + +msgid "Style" +msgstr "Estil" + +msgid "Shape" +msgstr "Forma" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Profunditat" + +msgid "Groove" +msgstr "Solc" + +msgid "Width" +msgstr "Amplada" + +msgid "Flap Angle" +msgstr "Angle de solapa" + +msgid "Groove Angle" +msgstr "Angle del solc" + +msgid "Part" +msgstr "Peça" + +msgid "Object" +msgstr "Objecte" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Feu clic per capgirar el pla de tall\n" +"Arrossegueu per moure el pla tallat" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Feu clic per capgirar el pla de tall\n" +"Arrossegueu per moure el pla tallat\n" +"Feu clic amb el botó dret a una part per assignar-la a l'altre costat" + +msgid "Move cut plane" +msgstr "Moure pla de tall" + +msgid "Mode" +msgstr "Mode" + +msgid "Change cut mode" +msgstr "Canvia el mode de tall" + +msgid "Tolerance" +msgstr "Tolerància" + +msgid "Drag" +msgstr "Arrossegar" + +msgid "Draw cut line" +msgstr "Dibuixar línia de tall" + +msgid "Left click" +msgstr "Clic esquerre" + +msgid "Add connector" +msgstr "Afegeix un connector" + +msgid "Right click" +msgstr "Clic dret" + +msgid "Remove connector" +msgstr "Suprimeix el connector" + +msgid "Move connector" +msgstr "Moure el connector" + +msgid "Add connector to selection" +msgstr "Afegir connector a la selecció" + +msgid "Remove connector from selection" +msgstr "Suprimeix el connector de la selecció" + +msgid "Select all connectors" +msgstr "Seleccioneu tots els connectors" + +msgid "Cut" +msgstr "Retalla" + +msgid "Rotate cut plane" +msgstr "Girar el pla tallat" + +msgid "Remove connectors" +msgstr "Suprimir connectors" + +msgid "Bulge" +msgstr "Bony" + +msgid "Bulge proportion related to radius" +msgstr "Proporció del bony en relació al radi" + +msgid "Space" +msgstr "Espai" + +msgid "Space proportion related to radius" +msgstr "Proporció espacial en relació al radi" + +msgid "Confirm connectors" +msgstr "Confirmar connectors" + +msgid "Cancel" +msgstr "Cancel·lar" + +msgid "Build Volume" +msgstr "Volum de construcció" + +msgid "Flip cut plane" +msgstr "Capgira el pla de tall" + +msgid "Groove change" +msgstr "Canvi de solc" + +msgid "Reset" +msgstr "Restablir" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Editat" + +msgid "Cut position" +msgstr "Posició de tall" + +msgid "Reset cutting plane" +msgstr "Restableix el pla de tall" + +msgid "Edit connectors" +msgstr "Editar connectors" + +msgid "Add connectors" +msgstr "Afegir connectors" + +msgid "Reset cut" +msgstr "Restableix el tall" + +msgid "Reset cutting plane and remove connectors" +msgstr "Restableix el pla de tall i elimina els connectors" + +msgid "Upper part" +msgstr "Part superior" + +msgid "Lower part" +msgstr "Part inferior" + +msgid "Keep" +msgstr "Mantenir" + +msgid "Flip" +msgstr "Capgirar" + +msgid "After cut" +msgstr "Després del tall" + +msgid "Cut to parts" +msgstr "Separa en parts" + +msgid "Perform cut" +msgstr "Realitzar tall" + +msgid "Warning" +msgstr "Advertència" + +msgid "Invalid connectors detected" +msgstr "S'han detectat connectors no vàlids" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "%1$d connector està for del contorn de tall" +msgstr[1] "%1$d connectors estan fora del contorn de tall" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "%1$d connector està fora de l'objecte" +msgstr[1] "%1$d connectors estan fora de l'objecte" + +msgid "Some connectors are overlapped" +msgstr "Alguns connectors se superposen" + +msgid "Select at least one object to keep after cutting." +msgstr "Seleccioneu almenys un objecte a conservar després del tall." + +msgid "Cut plane is placed out of object" +msgstr "El pla de tall està situat fora de l'objecte" + +msgid "Cut plane with groove is invalid" +msgstr "El pla de tall amb solc no és vàlid" + +msgid "Connector" +msgstr "Connector" + +msgid "Cut by Plane" +msgstr "Tallar pel pla" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"les vores amb plecs poden ser causades per l'eina de tall, voleu solucionar-" +"ho ara?" + +msgid "Repairing model object" +msgstr "Reparació d'un objecte model" + +msgid "Cut by line" +msgstr "Tall per línia" + +msgid "Delete connector" +msgstr "Suprimeix el connector" + +msgid "Mesh name" +msgstr "Nom de la malla" + +msgid "Detail level" +msgstr "Nivell de detall" + +msgid "Decimate ratio" +msgstr "Relació de decimació" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"El processament del model '%1%' amb més d'1M de triangles podria ser lent. " +"És molt recomanable simplificar el model." + +msgid "Simplify model" +msgstr "Simplificar el model" + +msgid "Simplify" +msgstr "Simplificar" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"La simplificació de moment només es permet quan se selecciona una sola peça" + +msgid "Error" +msgstr "Error" + +msgid "Extra high" +msgstr "Extra alt" + +msgid "High" +msgstr "Alto" + +msgid "Medium" +msgstr "Mig" + +msgid "Low" +msgstr "Baix" + +msgid "Extra low" +msgstr "Extra baix" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d triangles" + +msgid "Show wireframe" +msgstr "Mostra estructura de xarxa" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "No es pot aplicar quan es previsualitza el processament." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Operació ja cancel·lada. Si us plau, espereu uns segons." + +msgid "Face recognition" +msgstr "Reconeixement facial" + +msgid "Perform Recognition" +msgstr "Realitzar reconeixement" + +msgid "Brush size" +msgstr "Mida del pinzell" + +msgid "Brush shape" +msgstr "Forma del pinzell" + +msgid "Enforce seam" +msgstr "Força la costura" + +msgid "Block seam" +msgstr "Bloqueja la costura" + +msgid "Seam painting" +msgstr "Pintat de costures" + +msgid "Remove selection" +msgstr "Eliminar selecció" + +msgid "Entering Seam painting" +msgstr "Entrant a pintat de Costura" + +msgid "Leaving Seam painting" +msgstr "Sortint de pintat de Costura" + +msgid "Paint-on seam editing" +msgstr "Edició de pintat de Costura" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Tipus de lletra" + +msgid "Thickness" +msgstr "Gruix" + +msgid "Text Gap" +msgstr "Espaiat de text" + +msgid "Angle" +msgstr "Angle" + +msgid "" +"Embeded\n" +"depth" +msgstr "" +"Profunditat\n" +"integrada" + +msgid "Input text" +msgstr "Text d'entrada" + +msgid "Surface" +msgstr "Superfície" + +msgid "Horizontal text" +msgstr "Text horitzontal" + +msgid "Shift + Mouse move up or down" +msgstr "Majúscules + Ratolí pujar o baixar" + +msgid "Rotate text" +msgstr "Rotar text" + +msgid "Text shape" +msgstr "Forma del text" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Rotació de Text" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Desplaçament de Text" + +msgid "Set Mirror" +msgstr "Establir reflex" + +msgid "Embossed text" +msgstr "Text en relleu" + +msgid "Enter emboss gizmo" +msgstr "Entrar gizmo de relleu" + +msgid "Leave emboss gizmo" +msgstr "Sortir de gizmo de relleu" + +msgid "Embossing actions" +msgstr "Accions de relleu" + +msgid "Emboss" +msgstr "Relleu" + +msgid "NORMAL" +msgstr "NORMAL" + +msgid "SMALL" +msgstr "PETIT" + +msgid "ITALIC" +msgstr "ITÀLIC" + +msgid "SWISS" +msgstr "SUÍS" + +msgid "MODERN" +msgstr "MODERN" + +msgid "First font" +msgstr "Primer tipus de lletra" + +msgid "Default font" +msgstr "Tipus de lletra predeterminat" + +msgid "Advanced" +msgstr "Avançat" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"El text no es pot escriure amb el tipus de lletra seleccionat. Proveu de " +"triar un tipus de lletra diferent." + +msgid "Embossed text cannot contain only white spaces." +msgstr "El text en relleu NO pot contenir només espais en blanc." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" +"El text conté caràcters Símbol ( representat per '?' ) desconeguts pel tipus " +"de lletra." + +msgid "Text input doesn't show font skew." +msgstr "L'entrada de text no mostra lletra inclinada." + +msgid "Text input doesn't show font boldness." +msgstr "L'entrada de text no mostra lletra negreta." + +msgid "Text input doesn't show gap between lines." +msgstr "L'entrada de text no mostra espai entre línies." + +msgid "Too tall, diminished font height inside text input." +msgstr "Massa alt, alçada de lletra reduïda a l'entrada de text." + +msgid "Too small, enlarged font height inside text input." +msgstr "Massa baix, alçada de lletra augmentada a l'entrada de text." + +msgid "Text doesn't show current horizontal alignment." +msgstr "El text no mostra l'alineació horitzontal actual." + +msgid "Revert font changes." +msgstr "Revertir els canvis de tipus de lletra." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "El tipus de lletra \"%1%\" no es pot seleccionar." + +msgid "Operation" +msgstr "Operació" + +msgid "Join" +msgstr "Unir" + +msgid "Click to change text into object part." +msgstr "Feu clic per canviar el text a la peça de l'objecte." + +msgid "You can't change a type of the last solid part of the object." +msgstr "No podeu canviar el tipus de l'última part sòlida de l'objecte." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Retalla" + +msgid "Click to change part type into negative volume." +msgstr "Feu clic per canviar el tipus de peça en volum negatiu." + +msgid "Modifier" +msgstr "Modificador" + +msgid "Click to change part type into modifier." +msgstr "Feu clic per canviar el tipus de peça al modificador." + +msgid "Change Text Type" +msgstr "Canvia el tipus de text" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Canviar el nom de l'estil ( %1% ) per al text en relleu" + +msgid "Name can't be empty." +msgstr "El nom no pot estar buit." + +msgid "Name has to be unique." +msgstr "El nom ha de ser únic." + +msgid "OK" +msgstr "D'acord" + +msgid "Rename style" +msgstr "Canviar el nom de l'estil" + +msgid "Rename current style." +msgstr "Canvieu el nom de l'estil actual." + +msgid "Can't rename temporary style." +msgstr "No es pot canviar el nom de l'estil temporal." + +msgid "First Add style to list." +msgstr "Primer Afegiu l'estil a la llista." + +#, boost-format +msgid "Save %1% style" +msgstr "Desa estil %1%" + +msgid "No changes to save." +msgstr "No hi ha canvis per desar." + +msgid "New name of style" +msgstr "Nou nom d'estil" + +msgid "Save as new style" +msgstr "Desa com a nou estil" + +msgid "Only valid font can be added to style." +msgstr "Només es pot afegir un tipus de lletra vàlid a l'estil." + +msgid "Add style to my list." +msgstr "Afegeix estil a la meva llista." + +msgid "Save as new style." +msgstr "Desa com a nou estil." + +msgid "Remove style" +msgstr "Suprimeix l'estil" + +msgid "Can't remove the last existing style." +msgstr "No es pot eliminar l'últim estil existent." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "Estàs segur que vols eliminar permanentment l'estil \"%1%\"?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "Suprimeix l'estil \"%1%\"." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "No es pot suprimir \"%1%\". És l'últim estil." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "No es pot suprimir l'estil temporal \"%1%\"." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Estil modificat \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "L'estil actual és \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"El canvi d'estil a \"%1%\" descartarà les modificacions a l'estil actual.\n" +"\n" +"Vols continuar de totes maneres?" + +msgid "Not valid style." +msgstr "Estil no vàlid." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "L'estil \"%1%\" no es pot utilitzar i se suprimirà de la llista." + +msgid "Unset italic" +msgstr "Desmarcar Cursiva" + +msgid "Set italic" +msgstr "Establir cursiva" + +msgid "Unset bold" +msgstr "Desmarcar Negreta" + +msgid "Set bold" +msgstr "Posar negreta" + +msgid "Revert text size." +msgstr "Revertir la mida del text." + +msgid "Revert embossed depth." +msgstr "Revertir la profunditat en relleu." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"Les opcions avançades no es poden modificar per la lletra seleccionada.\n" +"Trieu una altra lletra." + +msgid "Revert using of model surface." +msgstr "Revertir l'ús de la superfície del model." + +msgid "Revert Transformation per glyph." +msgstr "Revertir la transformació per Símbol." + +msgid "Set global orientation for whole text." +msgstr "Definiu l'orientació global per al text complet." + +msgid "Set position and orientation per glyph." +msgstr "Estableix la posició i l'orientació per Símbol." + +msgctxt "Alignment" +msgid "Left" +msgstr "Esquerra" + +msgctxt "Alignment" +msgid "Center" +msgstr "Centre" + +msgctxt "Alignment" +msgid "Right" +msgstr "Dreta" + +msgctxt "Alignment" +msgid "Top" +msgstr "Part superior" + +msgctxt "Alignment" +msgid "Middle" +msgstr "Al mig" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Part inferior" + +msgid "Revert alignment." +msgstr "Revertir l'alineació." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "punts" + +msgid "Revert gap between characters" +msgstr "Revertir l'espai entre caràcters" + +msgid "Distance between characters" +msgstr "Distància entre lletres" + +msgid "Revert gap between lines" +msgstr "Revertir l'espai entre línies" + +msgid "Distance between lines" +msgstr "Distància entre línies" + +msgid "Undo boldness" +msgstr "Desfer negreta" + +msgid "Tiny / Wide glyphs" +msgstr "Símbols Petits / Amples" + +msgid "Undo letter's skew" +msgstr "Desfer lletra inclinada" + +msgid "Italic strength ratio" +msgstr "Relació de força itàlica" + +msgid "Undo translation" +msgstr "Desfer la traducció" + +msgid "Distance of the center of the text to the model surface." +msgstr "Distància del centre de text des de la superfície del model." + +msgid "Undo rotation" +msgstr "Desfer la rotació" + +msgid "Rotate text Clock-wise." +msgstr "Rotar el text segons agulles del rellotge." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"Desbloquejar la rotació del text quan es mou el text per la superfície de " +"l'objecte." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" +"Bloquejar la rotació del text quan es mou el text per la superfície de " +"l'objecte." + +msgid "Select from True Type Collection." +msgstr "Seleccionar de la Col·lecció True Type." + +msgid "Set text to face camera" +msgstr "Establir text de cara a la cámara" + +msgid "Orient the text towards the camera." +msgstr "Orientar/alinear el text vers la càmera." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"No es pot carregar exactament el mateix tipus de lletra( \"%1%\" ), " +"L'aplicació ha seleccionat un de similar( \"%2%\" ). Heu d'especificar el " +"tipus de lletra per habilitar edició de text." + +msgid "No symbol" +msgstr "Sense símbol" + +msgid "Loading" +msgstr "Carregant" + +msgid "In queue" +msgstr "A la cua" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Alçada" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Usar superfície" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "Per Símbol" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Alineació" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Espai de caràcter" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Espai de línia" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Negreta" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Grau d'inclinació" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Des de la superfície" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "Mantenir a dalt" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Col·lecció" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "Rotació de SVG" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "Desplaçament de SVG" + +msgid "Enter SVG gizmo" +msgstr "Entrar al gizmo SVG" + +msgid "Leave SVG gizmo" +msgstr "Sortir del gizmo SVG" + +msgid "SVG actions" +msgstr "Accions SVG" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Opacitat ( %1% )" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Gradient de color ( %1% )" + +msgid "Undefined fill type" +msgstr "Tipus de farciment indefinit" + +msgid "Linear gradient" +msgstr "Gradient lineal" + +msgid "Radial gradient" +msgstr "Gradient radial" + +msgid "Open filled path" +msgstr "Recorregut obert" + +msgid "Undefined stroke type" +msgstr "Tipus de traç indefinit" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "Ruta no reparable per auto-intersecció i punts múltiples." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"La forma final conté auto-interseccions o múltiples punts amb les mateixes " +"coordenades." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "La forma està marcada com a invisible ( %1% )." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "El farciment de la forma( %1% ) conté elements no compatibles: %2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "" +"El traç de forma ( %1% ) és massa prim ( l'amplada mínima és de %2% mm )." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "Traç de forma ( %1% ) conté elements no compatibles: %2%." + +msgid "Face the camera" +msgstr "Encarar la càmera" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Nom de fitxer desconegut" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "La ruta del fitxer SVG és \"%1%\"" + +msgid "Reload SVG file from disk." +msgstr "Tornar a carregar el fitxer SVG des del disc." + +msgid "Change file" +msgstr "Canviar fitxer" + +msgid "Change to another .svg file" +msgstr "Canviar a un altre fitxer .svg" + +msgid "Forget the file path" +msgstr "Oblidar la ruta del fitxer" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"NO deseu la ruta local al fitxer 3MF.\n" +"També desactiva l'opció 'recarregar des del disc'." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Fixar" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Fixar al model com a part ineditable" + +msgid "Save as" +msgstr "Anomena i desa" + +msgid "Save SVG file" +msgstr "Desar el fitxer SVG" + +msgid "Save as '.svg' file" +msgstr "Desar com a fitxer \".svg\"" + +msgid "Size in emboss direction." +msgstr "Mida en direcció del relleu." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "Escalar també canvia la quantitat de mostres corbes ( %1% )" + +msgid "Width of SVG." +msgstr "Amplada de SVG." + +msgid "Height of SVG." +msgstr "Alçada del SVG." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "Bloquejar/desbloquejar la relació d'aspecte del SVG." + +msgid "Reset scale" +msgstr "Reinicialitza l'escala" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "Distància del centre del SVG a la superfície del model." + +msgid "Reset distance" +msgstr "Restableix la distància" + +msgid "Reset rotation" +msgstr "Reinicialitza la rotació" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" +"Bloquejar / desbloquejar l'angle de rotació quan s'arrossega per sobre de la " +"superfície." + +msgid "Mirror vertically" +msgstr "Mirall vertical" + +msgid "Mirror horizontally" +msgstr "Mirall horitzontal" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "Canvia el tipus SVG" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Mirall" + +msgid "Choose SVG file for emboss:" +msgstr "Triar el fitxer SVG pel relleu:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "El fitxer NO existeix ( %1% )." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "El nom del fitxer ha d'acabar amb \".svg\", però heu seleccionat %1%" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "L'analitzador Nano SVG no es pot carregar des del fitxer ( %1% )." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "El fitxer SVG NO conté una sola ruta per gravar en relleu( %1% )." + +msgid "Vertex" +msgstr "Vèrtex" + +msgid "Edge" +msgstr "Aresta" + +msgid "Plane" +msgstr "Pla" + +msgid "Point on edge" +msgstr "Punt a l'aresta" + +msgid "Point on circle" +msgstr "Punt al cercle" + +msgid "Point on plane" +msgstr "Punt al pla" + +msgid "Center of edge" +msgstr "Centre de l'aresta" + +msgid "Center of circle" +msgstr "Centre del cercle" + +msgid "ShiftLeft mouse button" +msgstr "Màj+Botó esquerre del ratolí" + +msgid "Select feature" +msgstr "Seleccioneu una característica" + +msgid "Select point" +msgstr "Seleccionar el punt" + +msgid "Delete" +msgstr "Esborrar" + +msgid "Restart selection" +msgstr "Reinicia la selecció" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "Desmarcar" + +msgid "Measure" +msgstr "Mesurar" + +msgid "Edit to scale" +msgstr "Editar a escala" + +msgctxt "Verb" +msgid "Scale" +msgstr "Escalar" + +msgid "None" +msgstr "Cap" + +msgid "Diameter" +msgstr "Diàmetre" + +msgid "Length" +msgstr "Longitut" + +msgid "Selection" +msgstr "Selecció" + +msgid "Copy to clipboard" +msgstr "Copiar al porta-retalls" + +msgid "Perpendicular distance" +msgstr "Distància perpendicular" + +msgid "Distance" +msgstr "Distància" + +msgid "Direct distance" +msgstr "Distància directa" + +msgid "Distance XYZ" +msgstr "Distància XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Avís" + +msgid "Undefined" +msgstr "Indefinit" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% ha estat substituït per %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" +"La configuració podria haver estat generada per una versió més recent " +"d'Snapmaker Orca." + +msgid "Some values have been replaced. Please check them:" +msgstr "Alguns valors han estat substituïts. Si us plau, comproveu-los:" + +msgid "Process" +msgstr "Processar" + +msgid "Filament" +msgstr "Filament" + +msgid "Machine" +msgstr "Màquina" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"Ha estat carregat el paquet de configuració, però alguns valors no s'han " +"pogut reconèixer." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Ha estat carregat el fitxer de configuració \"%1%\", però alguns valors no " +"s'han pogut reconèixer." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca es tancarà perqué s'ha quedat sense memòria. Pot ser un bug. " +"S'agrairà que informeu del problema al nostre equip." + +msgid "Fatal error" +msgstr "Error fatal" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca es tancarà a causa d'un error de localització/traducció. Us " +"agrairà que informeu de l'escenari específic en què s'ha produït aquest " +"problema." + +msgid "Critical error" +msgstr "Error crític" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca ha tingut una excepció no gestionada: %1%" + +msgid "Untitled" +msgstr "Sense títol" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Descarregant el Plug-in de Xarxa de Bambu" + +msgid "Login information expired. Please login again." +msgstr "" +"La informació d'inici de sessió ha caducat. Si us plau, inicieu sessió de " +"nou." + +msgid "Incorrect password" +msgstr "Contrasenya incorrecta" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "La connexió %s ha fallat! [SN:%s, codi=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca requereix el Microsoft WebView2 Runtime per fer servir " +"determinades funcions.\n" +"Feu clic a Sí per instal·lar-lo ara." + +msgid "WebView2 Runtime" +msgstr "WebView2 Runtime" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Voleu continuar?" + +msgid "Remember my choice" +msgstr "Recorda la meva elecció" + +msgid "Loading configuration" +msgstr "S'està carregant la configuració" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "Feu clic per descarregar la nova versió al navegador predeterminat: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "L'Snapmaker Orca necessita una actualització" + +msgid "This is the newest version." +msgstr "Aquesta és la versió més recent." + +msgid "Info" +msgstr "Informació" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"El fitxer de configuració d'Snapmaker Orca podria estar corromput i no es pot " +"analitzar.\n" +"Snapmaker Orca ha intentat tornar a crear el fitxer de configuració.\n" +"Tingueu en compte que la configuració de l'aplicació es perdrà, però els " +"perfils d'impressora no es veuran afectats." + +msgid "Rebuild" +msgstr "Reconstruint" + +msgid "Loading current presets" +msgstr "Carregant els valors perfils actuals" + +msgid "Loading a mode view" +msgstr "Carregant un mode de visualització" + +msgid "Choose one file (3mf):" +msgstr "Tria un fitxer ( 3mf ):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "Trieu un o més fitxers ( 3mf/step/stl/svg/obj/amf/usd*/abc/ply ):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Trieu un o més fitxers ( 3mf/step/stl/svg/obj/amf ):" + +msgid "Choose ZIP file" +msgstr "Trieu el fitxer ZIP" + +msgid "Choose one file (gcode/3mf):" +msgstr "Trieu un fitxer ( gcode/3mf ):" + +msgid "Some presets are modified." +msgstr "Alguns perfils s'han modificat." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Podeu mantenir les modificacions dels perfils al nou projecte, descartar o " +"desar els canvis com a nous perfils." + +msgid "User logged out" +msgstr "L'usuari ha tancat la sessió" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" +"crear o obrir un fitxer de projecte nou no està permès durant el " +"processament de laminat!" + +msgid "Open Project" +msgstr "Obrir Projecte" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"La versió de l'Snapmaker Orca és massa antiga i s'ha d'actualitzar a la versió " +"més recent abans que es pugui utilitzar amb normalitat" + +msgid "Privacy Policy Update" +msgstr "Actualització de la política de privadesa" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"El nombre de perfils d'usuari emmagatzemats a memòria cau al núvol ha " +"superat el límit superior, els perfils d'usuari acabats de crear només es " +"poden utilitzar localment." + +msgid "Sync user presets" +msgstr "Sincronitzar perfils d'usuari" + +msgid "Loading user preset" +msgstr "Carregant perfil d'usuari" + +msgid "Switching application language" +msgstr "Canvi d'idioma de l'aplicació" + +msgid "Select the language" +msgstr "Seleccioneu l'idioma" + +msgid "Language" +msgstr "Idioma" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Les càrregues encara estan en curs" + +msgid "Stop them and continue anyway?" +msgstr "Aturar-les i continuar igualment?" + +msgid "Ongoing uploads" +msgstr "Càrregues en curs" + +msgid "Select a G-code file:" +msgstr "Seleccioneu un fitxer de Codi-G:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"No s'ha pogut iniciar la descàrrega d'URL. La carpeta de destinació no està " +"definida. Trieu la carpeta de destinació a l'Auxiliar de configuració." + +msgid "Import File" +msgstr "Importar arxiu" + +msgid "Choose files" +msgstr "Trieu fitxers" + +msgid "New Folder" +msgstr "Carpeta nova" + +msgid "Open" +msgstr "Obrir" + +msgid "Rename" +msgstr "Renombrar" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "" +"La inicialització de la interfície gràfica d'usuari d'Snapmaker Orca ha fallat" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Error fatal, excepció detectada: %1%" + +msgid "Quality" +msgstr "Qualitat" + +msgid "Shell" +msgstr "Carcassa" + +msgid "Infill" +msgstr "Farciment" + +msgid "Support" +msgstr "Suport" + +msgid "Flush options" +msgstr "Opcions de purga" + +msgid "Speed" +msgstr "Velocitat" + +msgid "Strength" +msgstr "Força" + +msgid "Top Solid Layers" +msgstr "Capes sòlides superiors" + +msgid "Top Minimum Shell Thickness" +msgstr "Gruix Mínim de la Carcassa Superior" + +msgid "Bottom Solid Layers" +msgstr "Capes sòlides inferiors" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Gruix Mínim de la Carcassa Inferior" + +msgid "Ironing" +msgstr "Planxat" + +msgid "Fuzzy Skin" +msgstr "Pell difusa" + +msgid "Extruders" +msgstr "Extrusors" + +msgid "Extrusion Width" +msgstr "Amplada de l'extrusió" + +msgid "Wipe options" +msgstr "Opcions de purga" + +msgid "Bed adhesion" +msgstr "Adhesió al llit" + +msgid "Add part" +msgstr "Afegir peça" + +msgid "Add negative part" +msgstr "Afegir part negativa" + +msgid "Add modifier" +msgstr "Afegir modificador" + +msgid "Add support blocker" +msgstr "Afegir bloqueig de suports" + +msgid "Add support enforcer" +msgstr "Afegir forçat de suports" + +msgid "Add text" +msgstr "Afegir text" + +msgid "Add negative text" +msgstr "Afegir text negatiu" + +msgid "Add text modifier" +msgstr "Afegir modificador de text" + +msgid "Add SVG part" +msgstr "Afegir una peça SVG" + +msgid "Add negative SVG" +msgstr "Afegir SVG negatiu" + +msgid "Add SVG modifier" +msgstr "Afegir un modificador SVG" + +msgid "Select settings" +msgstr "Selecciona una configuració" + +msgid "Hide" +msgstr "Amagar" + +msgid "Show" +msgstr "Mostrar" + +msgid "Del" +msgstr "Esborrar" + +msgid "Delete the selected object" +msgstr "Eliminar l'objecte seleccionat" + +msgid "Load..." +msgstr "Carregar..." + +msgid "Cube" +msgstr "Cub" + +msgid "Cylinder" +msgstr "Cilindre" + +msgid "Cone" +msgstr "Con" + +msgid "Disc" +msgstr "Disc" + +msgid "Torus" +msgstr "Tor" + +msgid "Orca Cube" +msgstr "Cub d'Orca" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Prova FDM d'Autodesk" + +msgid "Voron Cube" +msgstr "Cub de Voron" + +msgid "Stanford Bunny" +msgstr "Conill de Stanford" + +msgid "Orca String Hell" +msgstr "Infern de Fils d'Orca" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Aquest model compta amb relleu de text a la superfície superior. Per obtenir " +"resultats òptims, és recomanable establir el \"Llindar d'una paret " +"(min_width_top_surface)\" a 0 perquè \"Només una paret a les superfícies " +"superiors\" funcioni millor.\n" +"Sí: Canviar aquesta configuració automàticament\n" +"No - No canviar aquesta configuració" + +msgid "Text" +msgstr "Text" + +msgid "Height range Modifier" +msgstr "Modificador Rang d'Alçada" + +msgid "Add settings" +msgstr "Afegeix una configuració" + +msgid "Change type" +msgstr "Canvia el tipus" + +msgid "Set as an individual object" +msgstr "Definir com a objecte individual" + +msgid "Set as individual objects" +msgstr "Definir com a objectes individuals" + +msgid "Fill bed with copies" +msgstr "Omplir llit amb còpies" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Ompliu la zona restant del llit amb còpies de l'objecte seleccionat" + +msgid "Printable" +msgstr "Imprimible" + +msgid "Fix model" +msgstr "Repara el model" + +msgid "Export as one STL" +msgstr "Exporta com un STL" + +msgid "Export as STLs" +msgstr "Exporta com a STLs" + +msgid "Reload from disk" +msgstr "Recarregar des del disc" + +msgid "Reload the selected parts from disk" +msgstr "Tornar a carregar les parts seleccionades des del disc" + +msgid "Replace with STL" +msgstr "Substitueix per STL" + +msgid "Replace the selected part with new STL" +msgstr "Substituir la peça seleccionada per un nou STL" + +msgid "Change filament" +msgstr "Canviar filament" + +msgid "Set filament for selected items" +msgstr "Definir filament per als elements seleccionats" + +msgid "Default" +msgstr "Per defecte" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filament %d" + +msgid "current" +msgstr "actual" + +msgid "Scale to build volume" +msgstr "Escalar per a la impressió del volum" + +msgid "Scale an object to fit the build volume" +msgstr "Escalar un objecte perquè s'ajusti al volum d'impressió" + +msgid "Flush Options" +msgstr "Opcions de purga" + +msgid "Flush into objects' infill" +msgstr "Purgar al farciment dels objectes" + +msgid "Flush into this object" +msgstr "Purgar a l'objecte" + +msgid "Flush into objects' support" +msgstr "Purgar al suport dels objectes" + +msgid "Edit in Parameter Table" +msgstr "Editar a la taula de paràmetres" + +msgid "Convert from inch" +msgstr "Converteix des de polzades" + +msgid "Restore to inch" +msgstr "Restaurar a polzades" + +msgid "Convert from meter" +msgstr "Convertir des de metres" + +msgid "Restore to meter" +msgstr "Restaurar a metres" + +msgid "Assemble" +msgstr "Ensamblar" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Ensamblar els objectes seleccionats a un objecte amb diverses peces" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Ensamblar els objectes seleccionats a un objecte amb una sola peça" + +msgid "Mesh boolean" +msgstr "Booleà de malla" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Operacions booleanes de malla incloent unió i resta" + +msgid "Along X axis" +msgstr "Al llarg de l'eix X" + +msgid "Mirror along the X axis" +msgstr "Mirall al llarg de l'eix X" + +msgid "Along Y axis" +msgstr "Al llarg de l'eix Y" + +msgid "Mirror along the Y axis" +msgstr "Mirall al llarg de l'eix Y" + +msgid "Along Z axis" +msgstr "Al llarg de l'eix Z" + +msgid "Mirror along the Z axis" +msgstr "Mirall al llarg de l'eix Z" + +msgid "Mirror object" +msgstr "Emmirallar objecte" + +msgid "Edit text" +msgstr "Editar el text" + +msgid "Ability to change text, font, size, ..." +msgstr "Habilitat per canviar text, tipus de lletra, mida, ..." + +msgid "Edit SVG" +msgstr "Editar SVG" + +msgid "Change SVG source file, projection, size, ..." +msgstr "Canvieu el fitxer d'origen SVG, la projecció, la mida, ..." + +msgid "Invalidate cut info" +msgstr "Invalidar la informació de tall" + +msgid "Add Primitive" +msgstr "Afegir primitiva" + +msgid "Add Handy models" +msgstr "Afegir models Handy" + +msgid "Add Models" +msgstr "Afegir models" + +msgid "Show Labels" +msgstr "Mostrar etiquetes" + +msgid "To objects" +msgstr "Als objectes" + +msgid "Split the selected object into multiple objects" +msgstr "Partir l'objecte seleccionat en diversos objectes" + +msgid "To parts" +msgstr "A les peces" + +msgid "Split the selected object into multiple parts" +msgstr "Partir l'objecte seleccionat en diverses parts" + +msgid "Split" +msgstr "Partir" + +msgid "Split the selected object" +msgstr "Partir l'objecte seleccionat" + +msgid "Auto orientation" +msgstr "Orientació automàtica" + +msgid "Auto orient the object to improve print quality." +msgstr "" +"Orientar/alinear automàticament l'objecte per millorar la qualitat " +"d'impressió." + +msgid "Select All" +msgstr "Seleccionar-ho tot" + +msgid "select all objects on current plate" +msgstr "seleccionar tots els objectes de la placa actual" + +msgid "Delete All" +msgstr "Suprimir-les totes" + +msgid "delete all objects on current plate" +msgstr "eliminar tots els objectes de la placa actual" + +msgid "Arrange" +msgstr "Ordenar" + +msgid "arrange current plate" +msgstr "organitza la placa actual" + +msgid "Reload All" +msgstr "Torna-ho a carregar Tot" + +msgid "reload all from disk" +msgstr "torna a carregar-ho tot des del disc" + +msgid "Auto Rotate" +msgstr "Rota automàticament" + +msgid "auto rotate current plate" +msgstr "rotar automàticament la placa actual" + +msgid "Delete Plate" +msgstr "Suprimir la placa" + +msgid "Remove the selected plate" +msgstr "Eliminar la placa seleccionada" + +msgid "Clone" +msgstr "Clonar" + +msgid "Simplify Model" +msgstr "Simplificar el model" + +msgid "Center" +msgstr "Centre" + +msgid "Edit Process Settings" +msgstr "Editar la configuració de Processat" + +msgid "Edit print parameters for a single object" +msgstr "Editar paràmetres d'impressió per a un sol objecte" + +msgid "Change Filament" +msgstr "Canviar el filament" + +msgid "Set Filament for selected items" +msgstr "Definir el filament per als elements seleccionats" + +msgid "Unlock" +msgstr "Desbloquejar" + +msgid "Lock" +msgstr "Bloquejar" + +msgid "Edit Plate Name" +msgstr "Editar el nom de la placa" + +msgid "Name" +msgstr "Nom" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d error reparat" +msgstr[1] "%1$d errors reparats" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Error: %1$d aresta no moldejada." +msgstr[1] "Error: %1$d arestes no moldejades." + +msgid "Remaining errors" +msgstr "Errors restants" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d aresta no moldejada" +msgstr[1] "%1$d arestes no moldejades" + +msgid "Right click the icon to fix model object" +msgstr "Feu clic amb el botó dret a la icona per reparar l'objecte del model" + +msgid "Right button click the icon to drop the object settings" +msgstr "" +"Botó dret: feu clic a la icona per descartar la configuració de l'objecte" + +msgid "Click the icon to reset all settings of the object" +msgstr "Feu clic a la icona per restablir tots els paràmetres de l'objecte" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Feu clic amb el botó dret a la icona per descartar la propietat imprimible " +"de l'objecte" + +msgid "Click the icon to toggle printable property of the object" +msgstr "Feu clic a la icona per commutar la propietat imprimible de l'objecte" + +msgid "Click the icon to edit support painting of the object" +msgstr "Feu clic a la icona per editar la pintura de suport de l'objecte" + +msgid "Click the icon to edit color painting of the object" +msgstr "Feu clic a la icona per editar la pintura en color de l'objecte" + +msgid "Click the icon to shift this object to the bed" +msgstr "Feu clic a la icona per situar aquest objecte al llit" + +msgid "Loading file" +msgstr "S'està carregant el fitxer" + +msgid "Error!" +msgstr "Error!" + +msgid "Failed to get the model data in the current file." +msgstr "No s'han pogut obtenir les dades del model al fitxer actual." + +msgid "Generic" +msgstr "Genèric" + +msgid "Add Modifier" +msgstr "Afegir modificador" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Canviar al mode de configuració per objecte per editar la configuració dels " +"modificadors." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Canvar al mode de configuració per objecte per editar la configuració de " +"processament dels objectes seleccionats." + +msgid "Delete connector from object which is a part of cut" +msgstr "Suprimir el connector de l'objecte que forma part del tall" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Eliminar la part sòlida de l'objecte que forma part del tall" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Suprimir el volum negatiu de l'objecte que forma part del tall" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Per desar la correspondència de tall, podeu eliminar tots els connectors de " +"tots els objectes relacionats." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"Aquesta acció interromprà una correspondència de tall.\n" +"Després d'això, no es pot garantir la consistència del model.\n" +"\n" +"Per manipular peces sòlides o volums negatius primer cal invalidar la " +"informació de tall." + +msgid "Delete all connectors" +msgstr "Suprimir tots els connectors" + +msgid "Deleting the last solid part is not allowed." +msgstr "No es permet suprimir l'última part sòlida." + +msgid "The target object contains only one part and can not be splited." +msgstr "L'objecte final conté només una part i no es pot partir." + +msgid "Assembly" +msgstr "Muntatge" + +msgid "Cut Connectors information" +msgstr "Informació dels connectors de tall" + +msgid "Object manipulation" +msgstr "Manipulació d'objecte" + +msgid "Group manipulation" +msgstr "Manipulació de grup" + +msgid "Object Settings to modify" +msgstr "Ajustaments d'objecte modificables" + +msgid "Part Settings to modify" +msgstr "Ajustaments de peça modificables" + +msgid "Layer range Settings to modify" +msgstr "Ajustaments de capa modificables" + +msgid "Part manipulation" +msgstr "Manipulació de peces" + +msgid "Instance manipulation" +msgstr "Manipulació d'instàncies" + +msgid "Height ranges" +msgstr "Intervals d'alçada" + +msgid "Settings for height range" +msgstr "Configuració de l'interval d'alçada" + +msgid "Layer" +msgstr "Capa" + +msgid "Selection conflicts" +msgstr "Conflictes a la selecció" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Si el primer element seleccionat és un objecte, el segon també ho ha de ser." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Si el primer element seleccionat és una peça, el segon ha de ser una peça " +"del mateix objecte." + +msgid "The type of the last solid object part is not to be changed." +msgstr "El tipus de l'última peça de l'objecte sòlid no s'ha de canviar." + +msgid "Negative Part" +msgstr "Peça negativa" + +msgid "Support Blocker" +msgstr "Bloquejador de Suport" + +msgid "Support Enforcer" +msgstr "Reforçador de Suport" + +msgid "Type:" +msgstr "Tipus:" + +msgid "Choose part type" +msgstr "Tria el tipus de peça" + +msgid "Enter new name" +msgstr "Introduïu un nom nou" + +msgid "Renaming" +msgstr "Reanomenar" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "S'ha reparat el següent objecte del model" +msgstr[1] "S'han reparat els següents objectes del model" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "No s'ha pogut reparar el següent objecte del model" +msgstr[1] "No s'han pogut reparar els següents objectes del model" + +msgid "Repairing was canceled" +msgstr "S'ha cancel·lat la reparació" + +msgid "Additional process preset" +msgstr "Perfil de processament addicional" + +msgid "Remove parameter" +msgstr "Suprimeix el paràmetre" + +msgid "to" +msgstr "a" + +msgid "Remove height range" +msgstr "Suprimir interval d'alçada" + +msgid "Add height range" +msgstr "Afegir un interval d'alçada" + +msgid "Invalid numeric." +msgstr "Entrada numèrica no vàlida." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"una cel·la només es pot copiar a una o diverses cel·les de la mateixa columna" + +msgid "multiple cells copy is not supported" +msgstr "no s'admet la còpia de diverses cel·les" + +msgid "Outside" +msgstr "Fora" + +msgid "Layer height" +msgstr "Alçada de capa" + +msgid "Wall loops" +msgstr "Bucles de perímetre" + +msgid "Infill density(%)" +msgstr "Densitat de farciment( % )" + +msgid "Auto Brim" +msgstr "Vora d'Adherència Automàtica" + +msgid "Mouse ear" +msgstr "Orella de ratolí" + +msgid "Outer brim only" +msgstr "Només la Vora d'Adherència exterior" + +msgid "Inner brim only" +msgstr "Només la Vora d'Adherència interior" + +msgid "Outer and inner brim" +msgstr "Vora d'Adherència interior i exterior" + +msgid "No-brim" +msgstr "Sense Vora d'Adherència" + +msgid "Outer wall speed" +msgstr "Velocitat del perímetre exterior" + +msgid "Plate" +msgstr "Safata" + +msgid "Brim" +msgstr "Vora d'Adherència" + +msgid "Object/Part Setting" +msgstr "Configuració de l'objecte/peça" + +msgid "Reset parameter" +msgstr "Restableix el paràmetre" + +msgid "Multicolor Print" +msgstr "Impressió multicolor" + +msgid "Line Type" +msgstr "Tipus de línia" + +msgid "More" +msgstr "Més" + +msgid "Open Preferences." +msgstr "Obrir Preferències." + +msgid "Open next tip." +msgstr "Obre el següent consell." + +msgid "Open Documentation in web browser." +msgstr "Obre la Documentació al navegador web." + +msgid "Color" +msgstr "Color" + +msgid "Pause" +msgstr "Pausa" + +msgid "Template" +msgstr "Plantilla" + +msgid "Custom" +msgstr "Personalitzat" + +msgid "Pause:" +msgstr "Pausa:" + +msgid "Custom Template:" +msgstr "Plantilla personalitzada:" + +msgid "Custom G-code:" +msgstr "Codi-G personalitzat:" + +msgid "Custom G-code" +msgstr "Codi-G personalitzat" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Introdueix el Codi-G personalitzat utilitzat a la capa actual:" + +msgid "Jump to Layer" +msgstr "Saltar a la Capa" + +msgid "Please enter the layer number" +msgstr "Si us plau, introdueix el número de capa" + +msgid "Add Pause" +msgstr "Afegeix una Pausa" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Inserir una ordre de pausa al començament d'aquesta capa." + +msgid "Add Custom G-code" +msgstr "Afegir Codi-G Personalitzat" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Inserir Codi-G personalitzat al començament d'aquesta capa." + +msgid "Add Custom Template" +msgstr "Afegir Plantilla Personalitzada" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "" +"Inserir la plantilla de Codi-G personalitzat al començament d'aquesta capa." + +msgid "Filament " +msgstr "Filament " + +msgid "Change filament at the beginning of this layer." +msgstr "Canviar el filament al principi d'aquesta capa." + +msgid "Delete Pause" +msgstr "Eliminar Pausa" + +msgid "Delete Custom Template" +msgstr "Suprimeix la Plantilla Personalitzada" + +msgid "Edit Custom G-code" +msgstr "Editar Codi-G Personalitzat" + +msgid "Delete Custom G-code" +msgstr "Eliminar Codi-G Personalitzat" + +msgid "Delete Filament Change" +msgstr "Suprimir el Canvi de Filament" + +msgid "No printer" +msgstr "Sense impressora" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "No s'ha pogut connectar al servidor" + +msgid "Check the status of current system services" +msgstr "Comprovar l'estat dels serveis actuals del sistema" + +msgid "code" +msgstr "codi" + +msgid "Failed to connect to cloud service" +msgstr "No s'ha pogut connectar al servei al núvol" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "" +"Feu clic a l'hipervincle anterior per veure l'estat del servei al núvol" + +msgid "Failed to connect to the printer" +msgstr "No s'ha pogut connectar a la impressora" + +msgid "Connection to printer failed" +msgstr "S'ha produït un error de connexió amb la impressora" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Comproveu la connexió de xarxa de la impressora i l'Orca." + +msgid "Connecting..." +msgstr "Connectant..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Buit" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Recàrrega automàtica" + +msgid "AMS not connected" +msgstr "AMS no connectat" + +msgid "Load" +msgstr "Carregar" + +msgid "Unload" +msgstr "Descarregar" + +msgid "Ext Spool" +msgstr "Bobina Ext" + +msgid "Tips" +msgstr "Consells" + +msgid "Guide" +msgstr "Guiar" + +msgid "Retry" +msgstr "Reintentar" + +msgid "Calibrating AMS..." +msgstr "Calibrant AMS..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"S'ha produït un problema durant el calibratge. Feu clic per veure la solució." + +msgid "Calibrate again" +msgstr "Calibrar de nou" + +msgid "Cancel calibration" +msgstr "Cancel·la el calibratge" + +msgid "Idling..." +msgstr "En espera..." + +msgid "Heat the nozzle" +msgstr "Escalfar el broquet" + +msgid "Cut filament" +msgstr "Tallar filament" + +msgid "Pull back current filament" +msgstr "Extraieu el filament actual" + +msgid "Push new filament into extruder" +msgstr "Empenyeu el nou filament cap a l'extrusora" + +msgid "Purge old filament" +msgstr "Purgar el filament vell" + +msgid "Feed Filament" +msgstr "Carregar Filament" + +msgid "Confirm extruded" +msgstr "Confirmació d'extrussió" + +msgid "Check filament location" +msgstr "Comprovar la localització del filament" + +msgid "Grab new filament" +msgstr "Agafar filament nou" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Trieu una ranura AMS i premeu el botó \"Carregar\" o \"Descarregar\" per " +"carregar o descarregar els filaments automàticament." + +msgid "Edit" +msgstr "Editar" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Tots els objectes seleccionats es troben a la placa bloquejada,\n" +"No podem fer auto-arranjaments sobre aquests objectes." + +msgid "No arrangable objects are selected." +msgstr "No heu seleccionat objectes arranjables." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Aquesta placa està bloquejada,\n" +"No podem fer auto-arranjaments en aquesta placa." + +msgid "Arranging..." +msgstr "Organitzant..." + +msgid "Arranging" +msgstr "Organitzant" + +msgid "Arranging canceled." +msgstr "S'ha cancel·lat l'ordenació." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"L'arranjament s'ha fet, però hi ha articles sense empaquetar. Reduïu " +"l'espaiat i torneu-ho a provar." + +msgid "Arranging done." +msgstr "S'ha fet l'arranjament." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Arranjament fallit. S'han trobat algunes excepcions a l'hora de processar " +"geometries dels objectes." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"L'arranjament ignora els objectes següents que no poden cabre en un sol " +"llit:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Tots els objectes seleccionats es troben a la placa bloquejada,\n" +"No podem fer auto-orientació sobre aquests objectes." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Aquesta placa està bloquejada,\n" +"No podem fer auto-orientació en aquesta placa." + +msgid "Orienting..." +msgstr "Orientant..." + +msgid "Orienting" +msgstr "Orientant" + +msgid "Orienting canceled." +msgstr "Orientació cancel·lada." + +msgid "Filling" +msgstr "Omplint" + +msgid "Bed filling canceled." +msgstr "S'ha cancel·lat l'ompliment del llit." + +msgid "Bed filling done." +msgstr "Ompliment del llit fet." + +msgid "Searching for optimal orientation" +msgstr "Buscant una orientació òptima" + +msgid "Orientation search canceled." +msgstr "S'ha cancel·lat la cerca d'orientació." + +msgid "Orientation found." +msgstr "S'ha trobat l'orientació." + +msgid "Logging in" +msgstr "Iniciant sessió" + +msgid "Login failed" +msgstr "L'inici de sessió ha fallat" + +msgid "Please check the printer network connection." +msgstr "Comproveu la connexió de xarxa de la impressora." + +msgid "Abnormal print file data. Please slice again." +msgstr "Dades anormals del fitxer d'impressió. Si us plau, torneu a laminar." + +msgid "Task canceled." +msgstr "Tasca cancel·lada." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"L'intent de càrrega ha trigat massa. Comproveu l'estat de la xarxa i torneu-" +"ho a provar." + +msgid "Cloud service connection failed. Please try again." +msgstr "La connexió del servei al núvol ha fallat. Torneu-ho a provar." + +msgid "Print file not found. please slice again." +msgstr "No s'ha trobat el fitxer d'impressió. Si us plau, torneu a laminar." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"El fitxer d'impressió supera la mida màxima permesa ( 1 GB ). Si us plau, " +"simplifiqueu el model i torneu a laminar." + +msgid "Failed to send the print job. Please try again." +msgstr "No s'ha pogut enviar el treball d'impressió. Torneu-ho a provar." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "No s'ha pogut carregar el fitxer a ftp. Torneu-ho a provar." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Comproveu l'estat actual del servidor bambu fent clic a l'enllaç superior." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"La mida del fitxer d'impressió és massa gran. Ajusteu la mida del fitxer i " +"torneu-ho a provar." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" +"No s'ha trobat el fitxer d'impressió, torneu-lo a laminar i imprimiu-lo." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"No s'ha pogut carregar el fitxer d'impressió a FTP. Comproveu l'estat de la " +"xarxa i torneu-ho a provar." + +msgid "Sending print job over LAN" +msgstr "Enviant el treball d'impressió a través de LAN" + +msgid "Sending print job through cloud service" +msgstr "Enviant el treball d'impressió a través del servei al núvol" + +msgid "Print task sending times out." +msgstr "Ha expirat el temps d'enviament de la tasca d'impressió." + +msgid "Service Unavailable" +msgstr "Servei no disponible" + +msgid "Unknown Error." +msgstr "Error desconegut." + +msgid "Sending print configuration" +msgstr "Enviant configuració d'impressió" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "" +"Enviat correctament. Saltarà automàticament a la pàgina del dispositiu en %ss" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "" +"Enviat correctament. Saltarà automàticament a la pàgina següent en %s s" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "Cal inserir una targeta SD abans d'imprimir mitjançant LAN." + +msgid "Sending gcode file over LAN" +msgstr "Enviant el fitxer gcode a través de LAN" + +msgid "Sending gcode file to sdcard" +msgstr "Enviant el fitxer gcode a sdcard" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Enviat correctament. Tanca la pàgina actual en %s s" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Cal inserir una targeta SD abans d'enviar a la impressora." + +msgid "Importing SLA archive" +msgstr "S'està important l'arxiu SLA" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"El fitxer SLA no conté cap perfil. Si us plau, primer activeu algun perfil " +"de la impressora SLA abans d'importar aquest fitxer SLA." + +msgid "Importing canceled." +msgstr "S'ha cancel·lat la importació." + +msgid "Importing done." +msgstr "S'ha fet la importació." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"El fitxer SLA importat no contenia cap perfil. Els perfils actuals de SLA " +"s'han utilitzat com a alternativa." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "No pots carregar un projecte SLA amb objectes multi-peça al llit" + +msgid "Please check your object list before preset changing." +msgstr "Comproveu la llista d'objectes abans de canviar el perfil." + +msgid "Attention!" +msgstr "Atenció!" + +msgid "Downloading" +msgstr "Descarregant" + +msgid "Download failed" +msgstr "Descàrrega fallida" + +msgid "Cancelled" +msgstr "Cancel·lat" + +msgid "Install successfully." +msgstr "Instal·lació correcta." + +msgid "Installing" +msgstr "S'està instal·lant" + +msgid "Install failed" +msgstr "S'ha produït un error en la instal·lació" + +msgid "Portions copyright" +msgstr "Porcions del copyright" + +msgid "Copyright" +msgstr "Copyright" + +msgid "License" +msgstr "Llicència" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca té llicència sota " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, versió 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca is Based on Orca Slicer" + +msgid "Libraries" +msgstr "Llibreries" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Aquest programari utilitza components de codi obert els drets d'autor i " +"altres drets de propietat els quals pertanyen als seus respectius propietaris" + +#, c-format, boost-format +msgid "About %s" +msgstr "Sobre %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca es basa en BambuStudio, PrusaSlicer i SuperSlicer." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "BambuStudio es basa originalment en PrusaSlicer de PrusaResearch." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer està originalment basat en Slic3r d'Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r va ser creat per Alessandro Ranellucci amb l'ajuda de molts altres " +"col·laboradors." + +msgid "Version" +msgstr "Versió" + +msgid "AMS Materials Setting" +msgstr "Configuració de materials AMS" + +msgid "Confirm" +msgstr "Confirmar" + +msgid "Close" +msgstr "Tancar" + +msgid "Colour" +msgstr "Color" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "Temperatura del broquet( nozzle )" + +msgid "max" +msgstr "màx" + +msgid "min" +msgstr "mín" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "El valor d'entrada ha de ser superior a %1% i inferior a %2%" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "" +"No es permet la configuració de la informació de les ranures AMS mentre " +"s'imprimeix" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Factors de Calibratge de les Dinàmiques de Flux" + +msgid "PA Profile" +msgstr "Perfil PA( Pressure Advance )" + +msgid "Factor K" +msgstr "Factor K" + +msgid "Factor N" +msgstr "Factor N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "" +"No es permet la configuració de la informació de les ranures virtuals mentre " +"s'imprimeix" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Estàs segur que vols esborrar la informació del filament?" + +msgid "You need to select the material type and color first." +msgstr "Primer heu de seleccionar el tipus de material i el color." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "Introduïu un valor vàlid (K a %.1f~%.1f)" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "Introduïu un valor vàlid (K a %.1f~%.1f, N a %.1f~%.1f)" + +msgid "Other Color" +msgstr "Un altre color" + +msgid "Custom Color" +msgstr "Color Personalitzat" + +msgid "Dynamic flow calibration" +msgstr "Calibratge dinàmic de flux" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"La temperatura del broquet i la velocitat volumètrica màxima afectaran els " +"resultats del calibratge. Si us plau, omple els mateixos valors de la " +"impressió actual. Es poden omplir automàticament seleccionant un perfil de " +"filament." + +msgid "Nozzle Diameter" +msgstr "Diàmetre del broquet( nozzle )" + +msgid "Bed Type" +msgstr "Tipus de llit" + +msgid "Nozzle temperature" +msgstr "Temperatura del broquet( nozzle )" + +msgid "Bed Temperature" +msgstr "Temperatura del llit" + +msgid "Max volumetric speed" +msgstr "Velocitat volumètrica màxima" + +msgid "℃" +msgstr "°C" + +msgid "Bed temperature" +msgstr "Temperatura del llit" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Iniciar el calibratge" + +msgid "Next" +msgstr "Següent" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Calibratge completat. Trobeu la línia d'extrusió més uniforme al vostre llit " +"calent com la imatge següent i ompliu el valor del seu costat esquerre al " +"quadre d'entrada del factor K." + +msgid "Save" +msgstr "Desar" + +msgid "Last Step" +msgstr "Últim pas" + +msgid "Example" +msgstr "Exemple" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Calibrant... %d%%" + +msgid "Calibration completed" +msgstr "Calibratge completat" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s no admet %s" + +msgid "Dynamic flow Calibration" +msgstr "Calibratge dinàmic de flux" + +msgid "Step" +msgstr "Pas" + +msgid "AMS Slots" +msgstr "Ranures AMS" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Nota: Només es poden seleccionar les ranures AMS carregades amb el mateix " +"tipus de material." + +msgid "Enable AMS" +msgstr "Habilitar AMS" + +msgid "Print with filaments in the AMS" +msgstr "Imprimir amb filaments en l'AMS" + +msgid "Disable AMS" +msgstr "Desactiva AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Imprimeix amb el filament muntat a la part posterior del xassís" + +msgid "Current Cabin humidity" +msgstr "Humitat de la cabina" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Si us plau, canvieu el dessecant quan estigui massa humit. És possible que " +"l'indicador no representi amb precisió en els casos següents: quan la tapa " +"està oberta o es canvia el paquet dessecant. Es necessiten hores per " +"absorbir la humitat, les baixes temperatures també alenteixen el procés." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Configureu quina ranura AMS s'ha d'utilitzar per a un filament utilitzat en " +"el treball d'impressió" + +msgid "Filament used in this print job" +msgstr "Filament utilitzat en aquest treball d'impressió" + +msgid "AMS slot used for this filament" +msgstr "Ranura AMS utilitzada per a aquest filament" + +msgid "Click to select AMS slot manually" +msgstr "Feu clic per seleccionar la ranura AMS manualment" + +msgid "Do not Enable AMS" +msgstr "No habilitis AMS" + +msgid "Print using materials mounted on the back of the case" +msgstr "Imprimir amb materials muntats a la part posterior de la carcassa" + +msgid "Print with filaments in ams" +msgstr "Imprimir amb filaments en ams" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Impressió amb filaments muntats a la part posterior del xassís" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Quan s'esgoti el material actual, la impressora continuarà imprimint en " +"l'ordre següent." + +msgid "Group" +msgstr "Agrupar" + +msgid "The printer does not currently support auto refill." +msgstr "Actualment, la impressora no admet la recàrrega automàtica." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"La còpia de seguretat del filament AMS no està habilitada, activeu-la a la " +"configuració d'AMS." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"Si hi ha dos filaments idèntics en AMS, s'habilitarà la còpia de seguretat " +"del filament AMS. \n" +"( Actualment només admet el subministrament automàtic de consumibles amb la " +"mateixa marca, tipus de material i color )" + +msgid "DRY" +msgstr "SEC" + +msgid "WET" +msgstr "HUMIT" + +msgid "AMS Settings" +msgstr "Configuració AMS" + +msgid "Insertion update" +msgstr "Actualització de la inserció" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"L'AMS llegirà automàticament la informació del filament en inserir un nou " +"filament de Bambu Lab. Això triga uns 20 segons." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Nota: si s'insereix un filament nou durant la impressió, l'AMS no llegirà " +"automàticament cap informació fins que es completi la impressió." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"En inserir un filament nou, l'AMS no llegirà automàticament la seva " +"informació, deixant-la en blanc perquè la introduïu manualment." + +msgid "Power on update" +msgstr "Actualització d'encesa" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"L'AMS llegirà automàticament la informació del filament inserit en iniciar-" +"se. Trigarà aproximadament 1 minut. El procés de lectura farà rodar les " +"bobines de filament." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"L'AMS no llegirà automàticament la informació del filament inserit durant " +"l'inici i continuarà utilitzant la informació registrada abans de l'última " +"aturada." + +msgid "Update remaining capacity" +msgstr "Actualitzar la capacitat restant" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"L'AMS estimarà la capacitat restant del filament de Bambu després " +"d'actualitzar la informació del filament. Durant la impressió, la capacitat " +"restant s'actualitzarà automàticament." + +msgid "AMS filament backup" +msgstr "Còpia de seguretat del filament AMS" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"AMS continuarà a una altra bobina amb les mateixes propietats del filament " +"automàticament quan s'esgoti el filament actual" + +msgid "Air Printing Detection" +msgstr "Detecció d'Impressió Aèria" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Detecta obstrucció i abrasió de filaments, aturant la impressió " +"immediatament per estalviar temps i filament." + +msgid "File" +msgstr "Fitxer" + +msgid "Calibration" +msgstr "Calibratge" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"No s'ha pogut descarregar el connector. Comproveu la configuració del " +"tallafoc i el programari VPN, comproveu-ho i torneu-ho a provar." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"No s'ha pogut instal·lar el connector. Comproveu si el programari antivirus " +"l'ha bloquejat o suprimit." + +msgid "click here to see more info" +msgstr "feu clic aquí per veure més informació" + +msgid "Please home all axes (click " +msgstr "Si us plau, enviar a l'inici tots els eixos ( feu clic " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") per localitzar la posició del capçal. Això evita que el dispositiu es " +"mogui més enllà del límit imprimible i causi desgast de l'equip." + +msgid "Go Home" +msgstr "Ves a l'inici" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"S'ha produït un error. Potser la memòria del sistema no és suficient o és un " +"error del programa" + +msgid "Please save project and restart the program. " +msgstr "Deseu el projecte i reinicieu el programa. " + +msgid "Processing G-Code from Previous file..." +msgstr "Processant el Codi-G del fitxer anterior..." + +msgid "Slicing complete" +msgstr "Laminat completat" + +msgid "Access violation" +msgstr "Violació d'accés" + +msgid "Illegal instruction" +msgstr "Instrucció il·legal" + +msgid "Divide by zero" +msgstr "Divisió per zero" + +msgid "Overflow" +msgstr "Debordament( Overflow )" + +msgid "Underflow" +msgstr "Debordament inferior( Underflow )" + +msgid "Floating reserved operand" +msgstr "Operand reservat flotant" + +msgid "Stack overflow" +msgstr "Desbordament de pila( Stack overflow )" + +msgid "Running post-processing scripts" +msgstr "Executant scripts de postprocessament" + +msgid "Successfully executed post-processing script" +msgstr "Executats scripts de post-processament satisfactòriament" + +msgid "Unknown error occured during exporting G-code." +msgstr "S'ha produït un error desconegut durant l'exportació del codi-G." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Error en copiar el codi-G temporal al codi-G de sortida. Potser la targeta " +"SD està bloquejada contra escriptura?\n" +"Missatge d'error: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"Error en copiar el codi-G temporal al codi-G de sortida. Hi pot haver un " +"problema amb el dispositiu de destinació, intenteu exportar novament o " +"utilitzeu un dispositiu diferent. El codi-G de sortida malmès és a %1%.tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"El canvi de nom del codi-G després de copiar a la carpeta de destinació " +"seleccionada ha fallat. La ruta actual és %1%.tmp. Intenta exportar de nou." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"La còpia del codi-G temporal ha finalitzat, però el codi original en %1% no " +"s'ha pogut obrir durant la verificació de còpia. El codi-G de sortida és a " +"%2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"La còpia del codi-G temporal ha finalitzat, però el codi exportat no s'ha " +"pogut obrir durant la verificació de la còpia. El codi-G de sortida és a %1%." +"tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "Fitxer de codi-G exportat a %1%" + +msgid "Unknown error when export G-code." +msgstr "Error desconegut en exportar el Codi-G." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"No s'ha pogut desar el fitxer gcode.\n" +"Missatge d'error: %1%.\n" +"Fitxer origen %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Error en copiar el Codi-G temporal al Codi-G de sortida" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Pujada planificada a `%1%`. Mira Finestra -> Puja a la cua del gestor " +"d'impressió" + +msgid "Device" +msgstr "Dispositiu" + +msgid "Task Sending" +msgstr "Enviant Tasca" + +msgid "Task Sent" +msgstr "Tasca enviada" + +msgid "Edit multiple printers" +msgstr "Editar diverses impressores" + +msgid "Select connected printers (0/6)" +msgstr "Seleccionar impressores connectades (0/6)" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "Seleccionar Impressores Connectades (%d/6)" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "El nombre màxim d'impressores que es poden seleccionar és de %d" + +msgid "Offline" +msgstr "Offline" + +msgid "No task" +msgstr "Sense tasca" + +msgid "View" +msgstr "Vista" + +msgid "N/A" +msgstr "N/D" + +msgid "Edit Printers" +msgstr "Editar Impressores" + +msgid "Device Name" +msgstr "Nom del dispositiu" + +msgid "Task Name" +msgstr "Nom de la tasca" + +msgid "Device Status" +msgstr "Estat del dispositiu" + +msgid "Actions" +msgstr "Accions" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" +"Seleccioneu aquí els dispositius que voleu gestionar (fins a 6 dispositius)" + +msgid "Add" +msgstr "Afegir" + +msgid "Idle" +msgstr "Inactiu" + +msgid "Printing" +msgstr "Imprimint" + +msgid "Upgrading" +msgstr "Actualitzant" + +msgid "Incompatible" +msgstr "Incompatible" + +msgid "syncing" +msgstr "sincronitzant" + +msgid "Printing Finish" +msgstr "Finalitzar Impressió" + +msgid "Printing Failed" +msgstr "Impressió Fallida" + +msgid "Printing Pause" +msgstr "Pausar Impressió" + +msgid "Prepare" +msgstr "Preparació" + +msgid "Slicing" +msgstr "Laminant" + +msgid "Pending" +msgstr "Pendent" + +msgid "Sending" +msgstr "Enviant" + +msgid "Sending Finish" +msgstr "Finalitzar Enviament" + +msgid "Sending Cancel" +msgstr "Cancel·lar Enviament" + +msgid "Sending Failed" +msgstr "Enviament Fallit" + +msgid "Print Success" +msgstr "Impressió Exitosa" + +msgid "Print Failed" +msgstr "Impressió Fallida" + +msgid "Removed" +msgstr "Eliminat" + +msgid "Resume" +msgstr "Reprendre" + +msgid "Stop" +msgstr "Aturar" + +msgid "Task Status" +msgstr "Estat de la tasca" + +msgid "Sent Time" +msgstr "Temps d'Enviament" + +msgid "There are no tasks to be sent!" +msgstr "No hi ha tasques per enviar!" + +msgid "No historical tasks!" +msgstr "Sense tasques històriques!" + +msgid "Loading..." +msgstr "Carregant…" + +msgid "No AMS" +msgstr "Sense AMS" + +msgid "Send to Multi-device" +msgstr "Enviar a multidispositiu" + +msgid "Preparing print job" +msgstr "Preparant el treball d'impressió" + +msgid "Abnormal print file data. Please slice again" +msgstr "Dades anormals del fitxer d'impressió. Si us plau, torneu a laminar" + +msgid "There is no device available to send printing." +msgstr "No hi ha cap dispositiu disponible per enviar la impressió." + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "El nombre d'impressores en ús simultàniament no pot ser igual a 0." + +msgid "Use External Spool" +msgstr "Utilitzar la Bobina Externa" + +msgid "Use AMS" +msgstr "Utilitzar AMS" + +msgid "Select Printers" +msgstr "Seleccionar Impressores" + +msgid "Ams Status" +msgstr "Estat AMS" + +msgid "Printing Options" +msgstr "Opcions d'Impressió" + +msgid "Bed Leveling" +msgstr "Anivellament del llit" + +msgid "Timelapse" +msgstr "Timelapse" + +msgid "Flow Dynamic Calibration" +msgstr "Calibratge de Dinàmiques de Flux" + +msgid "Send Options" +msgstr "Opcions d'Enviament" + +msgid "Send to" +msgstr "Enviar a" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"impressores al mateix temps. (Depèn de quants dispositius es puguin escalfar " +"alhora.)" + +msgid "Wait" +msgstr "Espereu" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minut cada lot. (Depèn del temps que es trigui a completar la calefacció.)" + +msgid "Send" +msgstr "Enviar" + +msgid "Name is invalid;" +msgstr "El nom no és vàlid;" + +msgid "illegal characters:" +msgstr "caràcters no permesos:" + +msgid "illegal suffix:" +msgstr "sufix no permès:" + +msgid "The name is not allowed to be empty." +msgstr "No es permet que el nom estigui buit." + +msgid "The name is not allowed to start with space character." +msgstr "No es permet que el nom comenci amb caràcter d'espai." + +msgid "The name is not allowed to end with space character." +msgstr "No es permet que el nom acabi amb caràcter d'espai." + +msgid "The name length exceeds the limit." +msgstr "La longitud del nom supera el límit." + +msgid "Origin" +msgstr "Origen" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Grandària en X i Y de la placa rectangular." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" +"Distància de la coordenada 0,0 del Codi-G de 0,0 de la cantonada frontal " +"esquerra del rectangle." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Diàmetre del llit d'impressió. Se suposa que l'origen ( 0,0 ) està ubicat al " +"centre." + +msgid "Rectangular" +msgstr "Rectangular" + +msgid "Circular" +msgstr "Circular" + +msgid "Load shape from STL..." +msgstr "Carregar forma des de l'STL..." + +msgid "Settings" +msgstr "Configuració" + +msgid "Texture" +msgstr "Textura" + +msgid "Remove" +msgstr "Eliminar" + +msgid "Not found:" +msgstr "No trobat:" + +msgid "Model" +msgstr "Model" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Escolliu un fitxer STL per importar la forma del llit:" + +msgid "Invalid file format." +msgstr "Format de fitxer invàlid." + +msgid "Error! Invalid model" +msgstr "Error! Model invàlid" + +msgid "The selected file contains no geometry." +msgstr "El fitxer seleccionat no conté geometria." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"El fitxer seleccionat conté diverses àrees disjuntes. Això no està suportat." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "" +"Escolliu un fitxer per importar la textura de la placa d'impressió ( PNG/" +"SVG ):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Escolliu un fitxer STL per importar el model de la placa d'impressió:" + +msgid "Bed Shape" +msgstr "Forma de la placa d'impressió" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"La temperatura mínima recomanada és inferior a 190 graus o la màxima " +"recomanada és superior a 300 graus.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"La temperatura mínima recomanada no pot ser superior a la temperatura màxima " +"recomanada.\n" + +msgid "Please check.\n" +msgstr "Comproveu-ho.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"El broquet es pot bloquejar quan la temperatura està fora del rang " +"recomanat.\n" +"Assegureu-vos d'utilitzar la temperatura per imprimir.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"La temperatura recomanada del broquet d'aquest tipus de filament és de [%d, " +"%d] graus centígrads" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Velocitat volumètrica màxima massa petita.\n" +"Restableix a 0.5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"La temperatura actual de la cambra és superior a la temperatura segura del " +"material, pot provocar un estovament i obstrucció del material. La " +"temperatura màxima segura per al material és %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Alçada de capa massa petita.\n" +"Restableix a 0.2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Espaiat de planxa massa petit.\n" +"Restableix a 0.1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"L'alçada inicial zero de la capa no és vàlida.\n" +"\n" +"L'alçada de la primera capa es restablirà a 0,2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Aquest ajustament només s'utilitza per a la sintonització de mida del model " +"amb valor reduït en alguns casos.\n" +"Per exemple, quan la mida del model té un error petit i difícil de muntar.\n" +"Per a l'afinació de grans dimensions, utilitzeu la funció d'escala del " +"model.\n" +"\n" +"El valor es restablirà a 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Una compensació massa gran de Peu d'Elefant no és raonable.\n" +"Si realment teniu un efecte greu de Peu d'Elefant, comproveu altres " +"configuracions.\n" +"Per exemple, si la temperatura del llit és massa alta.\n" +"\n" +"El valor es restablirà a 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" +"El perímetre addicional alternat no funciona correctament amb 'Assegurar el " +"gruix de la carcassa vertical' establert a Tots. " + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"Canviar aquesta configuració automàticament? \n" +"Sí - Cambiar 'Assegurar el gruix de la carcassa vertical' a 'Moderat' " +"activar 'perímetre addicional alternat'\n" +"No - No utilitzar perímetre addicional alternat" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"La Torre de Purga no funciona quan l'Alçada de Capa Adaptativa o l'alçada de " +"la capa de suport independent estan activades.\n" +"Què vols conservar?\n" +"SÍ - Mantenir la Torre de Purga\n" +"NO: Mantenir l'alçada de la capa adaptativa i l'alçada de la capa de suport " +"independent" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"La Torre de Purga no funciona quan l'Alçada de Capa Adaptativa està " +"activada.\n" +"Què vols conservar?\n" +"SÍ - Mantenir la Torre de Purga\n" +"NO - Mantenir l'alçada de la capa adaptativa" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"La Torre de Purga no funciona quan l'alçada de la capa de suport independent " +"està activada.\n" +"Què vols conservar?\n" +"SÍ - Mantenir la Torre de Purga\n" +"NO - Mantenir l'alçada de la capa de suport independent" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Mentre s'imprimeix per Objecte, l'extrusora pot xocar amb la faldilla.\n" +"Per tant, restabliu la capa de faldilla a 1 per evitar-ho." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"seam_slope_start_height ha de ser més petit que layer_height.\n" +"Restablert a 0." + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"El mode espiral només funciona quan els bucles de perímetre és 1, el suport " +"està desactivat, les capes superiors de l'intèrpret d'ordres són 0, la " +"densitat de farciment escassa és 0 i el tipus timelapse és tradicional." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " Però les màquines amb estructura I3 no generaran vídeos timelapse." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Canviar aquesta configuració automàticament? \n" +"Sí: canviar aquesta configuració i activar el mode d'espiral automàticament\n" +"No - Renunciar a utilitzar el mode espiral aquesta vegada" + +msgid "Auto bed leveling" +msgstr "Anivellament de llit automàtic" + +msgid "Heatbed preheating" +msgstr "Preescalfament de llits calefactables" + +msgid "Sweeping XY mech mode" +msgstr "Escombrat en XY en mode mecànic" + +msgid "Changing filament" +msgstr "Canviant filament" + +msgid "M400 pause" +msgstr "Pausa M400" + +msgid "Paused due to filament runout" +msgstr "Pausa a causa de l'esgotament del filament" + +msgid "Heating hotend" +msgstr "Escalfant broquet" + +msgid "Calibrating extrusion" +msgstr "Calibrant extrusió" + +msgid "Scanning bed surface" +msgstr "Escanejant superfície del llit" + +msgid "Inspecting first layer" +msgstr "Inspeccionant la primera capa" + +msgid "Identifying build plate type" +msgstr "Identificant el tipus de placa d'impressió" + +msgid "Calibrating Micro Lidar" +msgstr "Calibrant Micro Lidar" + +msgid "Homing toolhead" +msgstr "Col·locant capçal al punt d'origen" + +msgid "Cleaning nozzle tip" +msgstr "Netejant punta del broquet" + +msgid "Checking extruder temperature" +msgstr "Comprovant la temperatura de l'extrusora" + +msgid "Printing was paused by the user" +msgstr "L'usuari ha posat en pausa la impressió" + +msgid "Pause of front cover falling" +msgstr "Pausa en caure la coberta frontal" + +msgid "Calibrating the micro lida" +msgstr "Calibrant el micro lidar" + +msgid "Calibrating extrusion flow" +msgstr "Calibrant el flux d'extrusió" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "En pausa a causa d'un mal funcionament de la temperatura del broquet" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "" +"En pausa a causa d'un mal funcionament de la temperatura del llit de " +"calefactat" + +msgid "Filament unloading" +msgstr "Descàrrega de filament" + +msgid "Skip step pause" +msgstr "Omet la pausa del pas" + +msgid "Filament loading" +msgstr "Càrrega de filament" + +msgid "Motor noise calibration" +msgstr "Calibratge de soroll del motor" + +msgid "Paused due to AMS lost" +msgstr "En pausa a causa de la pèrdua de l'AMS" + +msgid "Paused due to low speed of the heat break fan" +msgstr "" +"Pausat a causa de la baixa velocitat del ventilador de dissipació de calor" + +msgid "Paused due to chamber temperature control error" +msgstr "En pausa a causa d'un error de control de temperatura de la cambra" + +msgid "Cooling chamber" +msgstr "Refredant cambra" + +msgid "Paused by the Gcode inserted by user" +msgstr "Pausat pel Gcode inserit per l'usuari" + +msgid "Motor noise showoff" +msgstr "Avaluació soroll del motor" + +msgid "Nozzle filament covered detected pause" +msgstr "Pausa per detecció de broquet cobert de filament" + +msgid "Cutter error pause" +msgstr "Pausa d'error de tallador" + +msgid "First layer error pause" +msgstr "Pausa d'error de la primera capa" + +msgid "Nozzle clog pause" +msgstr "Pausa d'obstrucció del broquet" + +msgid "Unknown" +msgstr "Desconegut" + +msgid "Fatal" +msgstr "Fatal" + +msgid "Serious" +msgstr "Seriós" + +msgid "Common" +msgstr "Comú" + +msgid "Update successful." +msgstr "L'actualització s'ha realitzat correctament." + +msgid "Downloading failed." +msgstr "S'ha produït un error en la descàrrega." + +msgid "Verification failed." +msgstr "La verificació ha fallat." + +msgid "Update failed." +msgstr "S'ha produït un error en l'actualització." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"La temperatura actual de la cambra o la temperatura de la cambra objectiu " +"supera els 45 °C. Per evitar l'obstrucció de l'extrusora, no es permet " +"carregar filaments de baixa temperatura ( PLA / PETG / TPU )." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"El filament de baixa temperatura ( PLA/PETG/TPU ) está carregat a " +"l'extrusor. Per evitar l'obstrucció de l'extrusora, no es permet establir la " +"temperatura de la cambra per sobre dels 45 °C." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Quan establiu la temperatura de la cambra per sota dels 40 °C, el control de " +"temperatura de la cambra no s'activarà. I la temperatura de la cambra " +"objectiu s'establirà automàticament a 0 °C." + +msgid "Failed to start printing job" +msgstr "No s'ha pogut començar a imprimir" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" +"Aquest calibratge no admet el diàmetre del broquet seleccionat actualment" + +msgid "Current flowrate cali param is invalid" +msgstr "El paràmetre de cabal actual no és vàlid" + +msgid "Selected diameter and machine diameter do not match" +msgstr "El diàmetre seleccionat i el diàmetre de la màquina no coincideixen" + +msgid "Failed to generate cali gcode" +msgstr "No s'ha pogut generar el gcode cali" + +msgid "Calibration error" +msgstr "Error de calibratge" + +msgid "TPU is not supported by AMS." +msgstr "El TPU no és compatible amb AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF no és compatible amb AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"El PVA humit es tornarà flexible i quedarà atrapat dins d'AMS, tingueu cura " +"d'assecar-lo abans d'utilitzar-lo." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"Els filaments CF / GF són durs i trencadissos, És fàcil trencar-se o quedar-" +"se atrapat en AMS, si us plau, utilitzeu amb precaució." + +msgid "default" +msgstr "per defecte" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Editar el codi-G personalitzat (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" +"Placeholders integrats (feu doble clic a l'element per afegir-lo al codi-G)" + +msgid "Search gcode placeholders" +msgstr "Cercar placeholders( Variables ) de codi-G" + +msgid "Add selected placeholder to G-code" +msgstr "Afegir el placeholder( Variable ) seleccionat al codi-G" + +msgid "Select placeholder" +msgstr "Seleccionar placeholder( Variable )" + +msgid "[Global] Slicing State" +msgstr "[Global] Estat de laminació" + +msgid "Read Only" +msgstr "Només lectura" + +msgid "Read Write" +msgstr "Lectura i Escriptura" + +msgid "Slicing State" +msgstr "Estat del laminació" + +msgid "Print Statistics" +msgstr "Estadístiques d'impressió" + +msgid "Objects Info" +msgstr "Informació dels objectes" + +msgid "Dimensions" +msgstr "Dimensions" + +msgid "Temperatures" +msgstr "Temperatures" + +msgid "Timestamps" +msgstr "Marques de temps" + +#, boost-format +msgid "Specific for %1%" +msgstr "Específic per a %1%" + +msgid "Presets" +msgstr "Perfils" + +msgid "Print settings" +msgstr "Configuració d'impressio" + +msgid "Filament settings" +msgstr "Configuració del Filament" + +msgid "SLA Materials settings" +msgstr "Configuració dels materials SLA" + +msgid "Printer settings" +msgstr "Configuració de la Impressora" + +msgid "parameter name" +msgstr "nom del paràmetre" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s no pot ser un percentatge" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "Valor %s està fora de rang, continuar?" + +msgid "Parameter validation" +msgstr "Validació de paràmetres" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "El valor %s està fora de rang. El rang vàlid és de %d a %d." + +msgid "Value is out of range." +msgstr "El valor introduït és fora de rang." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"És %s%% or %s %s?\n" +"SÍ per %s%%. \n" +"NO per %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Format d'entrada invàlid. Esperat vector de dimensions en el format següent: " +"\"%1%\"" + +msgid "Input value is out of range" +msgstr "El valor introduït és fora de rang" + +msgid "Some extension in the input is invalid" +msgstr "Alguna extensió de l'entrada no és vàlida" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Format no vàlid. Format vectorial esperat: \"%1%\"" + +msgid "Layer Height" +msgstr "Alçada de capa" + +msgid "Line Width" +msgstr "Amplada de la línia" + +msgid "Fan Speed" +msgstr "Velocitat del ventilador" + +msgid "Temperature" +msgstr "Temperatura" + +msgid "Flow" +msgstr "Fluxe" + +msgid "Tool" +msgstr "Eina" + +msgid "Layer Time" +msgstr "Temps de capa" + +msgid "Layer Time (log)" +msgstr "Temps de capa ( log )" + +msgid "Height: " +msgstr "Alçada: " + +msgid "Width: " +msgstr "Amplada: " + +msgid "Speed: " +msgstr "Velocitat: " + +msgid "Flow: " +msgstr "Fluxe: " + +msgid "Layer Time: " +msgstr "Temps de capa ( lineal ): " + +msgid "Fan: " +msgstr "Ventilador: " + +msgid "Temperature: " +msgstr "Temperatura: " + +msgid "Loading G-codes" +msgstr "Carregant codis G" + +msgid "Generating geometry vertex data" +msgstr "Generació de dades de vèrtexs de la geometria" + +msgid "Generating geometry index data" +msgstr "Generació de dades d'índexs de geometria" + +msgid "Statistics of All Plates" +msgstr "Estadístiques de totes les plaques" + +msgid "Display" +msgstr "Pantalla" + +msgid "Flushed" +msgstr "Descarregat" + +msgid "Tower" +msgstr "Torre" + +msgid "Total" +msgstr "Total" + +msgid "Total Estimation" +msgstr "Estimació total" + +msgid "Total time" +msgstr "Temps total" + +msgid "Total cost" +msgstr "Cost total" + +msgid "up to" +msgstr "fins a" + +msgid "above" +msgstr "sobre" + +msgid "from" +msgstr "des de" + +msgid "Color Scheme" +msgstr "Esquema de color" + +msgid "Time" +msgstr "Temps" + +msgid "Percent" +msgstr "Percentatge" + +msgid "Used filament" +msgstr "Filament usat" + +msgid "Layer Height (mm)" +msgstr "Alçada de capa ( mm )" + +msgid "Line Width (mm)" +msgstr "Amplada de línia ( mm )" + +msgid "Speed (mm/s)" +msgstr "Velocitat ( mm/s )" + +msgid "Fan Speed (%)" +msgstr "Velocitat Ventilador ( % )" + +msgid "Temperature (°C)" +msgstr "Temperatura ( °C )" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Taxa de flux volumètric ( mm³/seg )" + +msgid "Travel" +msgstr "Recorregut" + +msgid "Seams" +msgstr "Costures" + +msgid "Retract" +msgstr "Retracció" + +msgid "Unretract" +msgstr "Sense retracció" + +msgid "Filament Changes" +msgstr "Canvis de filament" + +msgid "Wipe" +msgstr "Netejar" + +msgid "Options" +msgstr "Opcions" + +msgid "travel" +msgstr "recorregut" + +msgid "Extruder" +msgstr "Extrusor" + +msgid "Filament change times" +msgstr "Canvis de filament" + +msgid "Cost" +msgstr "Cost" + +msgid "Color change" +msgstr "Canvi de color" + +msgid "Print" +msgstr "Imprimir" + +msgid "Printer" +msgstr "Impressora" + +msgid "Custom g-code" +msgstr "Codi-G personalitzat" + +msgid "ToolChange" +msgstr "Canvi d'eina" + +msgid "Time Estimation" +msgstr "Estimació temporal" + +msgid "Normal mode" +msgstr "Mode Normal" + +msgid "Total Filament" +msgstr "Filament Total" + +msgid "Model Filament" +msgstr "Filament del Model" + +msgid "Prepare time" +msgstr "Planificar el temps" + +msgid "Model printing time" +msgstr "Temps d'impressió del model" + +msgid "Switch to silent mode" +msgstr "Canviar al mode silenciós" + +msgid "Switch to normal mode" +msgstr "Canviar al mode normal" + +msgid "Variable layer height" +msgstr "Alçada de capa variable" + +msgid "Adaptive" +msgstr "Adaptativa" + +msgid "Quality / Speed" +msgstr "Qualitat / Velocitat" + +msgid "Smooth" +msgstr "Suau" + +msgid "Radius" +msgstr "Radi" + +msgid "Keep min" +msgstr "Mantenir mínim" + +msgid "Left mouse button:" +msgstr "Botó esquerre del ratolí:" + +msgid "Add detail" +msgstr "Afegir detall" + +msgid "Right mouse button:" +msgstr "Botó dret del ratolí:" + +msgid "Remove detail" +msgstr "Retirar detall" + +msgid "Shift + Left mouse button:" +msgstr "Maj + botó esquerre del ratolí:" + +msgid "Reset to base" +msgstr "Tornar a la base" + +msgid "Shift + Right mouse button:" +msgstr "Maj + botó dret del ratolí:" + +msgid "Smoothing" +msgstr "Suavitzat" + +msgid "Mouse wheel:" +msgstr "Roda del ratolí:" + +msgid "Increase/decrease edit area" +msgstr "Incrementar/reduir àrea edició" + +msgid "Sequence" +msgstr "Seqüència" + +msgid "Mirror Object" +msgstr "Reflectir objecte" + +msgid "Tool Move" +msgstr "Moviment d'eina" + +msgid "Tool Rotate" +msgstr "Rotació d'eina" + +msgid "Move Object" +msgstr "Moure objecte" + +msgid "Auto Orientation options" +msgstr "Opcions d'orientació automàtica" + +msgid "Enable rotation" +msgstr "Habilitar la rotació" + +msgid "Optimize support interface area" +msgstr "Optimitzar l'àrea d'interfície de suport" + +msgid "Orient" +msgstr "Orientar/alinear" + +msgid "Arrange options" +msgstr "Opcions d'ordenació" + +msgid "Spacing" +msgstr "Espaiat" + +msgid "0 means auto spacing." +msgstr "0 significa espaiat automàtic." + +msgid "Auto rotate for arrangement" +msgstr "Gir automàtic per a l'arranjament" + +msgid "Allow multiple materials on same plate" +msgstr "Permetre diversos materials en una mateixa placa" + +msgid "Avoid extrusion calibration region" +msgstr "Evitar la regió de calibratge d'extrusió" + +msgid "Align to Y axis" +msgstr "Alinear a l'eix Y" + +msgid "Add plate" +msgstr "Afegir placa" + +msgid "Auto orient" +msgstr "Auto-orientació" + +msgid "Arrange all objects" +msgstr "Ordenar tots els objectes" + +msgid "Arrange objects on selected plates" +msgstr "Ordenar els objectes en plaques seleccionades" + +msgid "Split to objects" +msgstr "Separar en objectes" + +msgid "Split to parts" +msgstr "Separar en peces" + +msgid "Assembly View" +msgstr "Vista de muntatge" + +msgid "Select Plate" +msgstr "Seleccioneu Placar" + +msgid "Assembly Return" +msgstr "Tornar a Agrupar" + +msgid "return" +msgstr "tornar" + +msgid "Paint Toolbar" +msgstr "Barra d'eines de pintura" + +msgid "Explosion Ratio" +msgstr "Relació d'explosió" + +msgid "Section View" +msgstr "Vista de secció" + +msgid "Assemble Control" +msgstr "Control d'ensamblatge" + +msgid "Total Volume:" +msgstr "Volum total:" + +msgid "Assembly Info" +msgstr "Informació sobre l'ensamblatge" + +msgid "Volume:" +msgstr "Volum:" + +msgid "Size:" +msgstr "Mida:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"S'han trobat conflictes de rutes gcode a la capa %d, z = %.2lf mm. Si us " +"plau, separeu els objectes conflictius més lluny ( %s <-> %s )." + +msgid "An object is layed over the boundary of plate." +msgstr "Un objecte està col·locat sobre el límit de la placa." + +msgid "A G-code path goes beyond the max print height." +msgstr "Una trajectòria de Codi-G va més enllà de l'alçada màxima d'impressió." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Una trajectòria de Codi-G va més enllà del límit de placa." + +msgid "Only the object being edit is visible." +msgstr "Només és visible l'objecte que s'està editant." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Un objecte està col·locat sobre el límit de la placa o supera el límit " +"d'alçada.\n" +"Resoleu el problema movent-lo totalment sobre o fora de la placa i " +"confirmant que l'alçada es troba dins del volum de construcció." + +msgid "Calibration step selection" +msgstr "Selecció del pas de calibratge" + +msgid "Micro lidar calibration" +msgstr "Calibratge micro lidar" + +msgid "Bed leveling" +msgstr "Anivellament del llit" + +msgid "Vibration compensation" +msgstr "Compensació de vibracions" + +msgid "Motor noise cancellation" +msgstr "Cancel·lació de soroll del motor" + +msgid "Calibration program" +msgstr "Programa de calibratge" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"El programa de calibratge detecta l'estat del dispositiu automàticament per " +"minimitzar la desviació.\n" +"Manté el dispositiu funcionant de manera òptima." + +msgid "Calibration Flow" +msgstr "Flux de calibratge" + +msgid "Start Calibration" +msgstr "Iniciar el calibratge" + +msgid "Completed" +msgstr "Completat" + +msgid "Calibrating" +msgstr "Calibrant" + +msgid "No step selected" +msgstr "No hi ha pas seleccionat" + +msgid "Auto-record Monitoring" +msgstr "Monitorització de gravació automàtica" + +msgid "Go Live" +msgstr "Entra en directe" + +msgid "Liveview Retry" +msgstr "Reintentar Lifeview" + +msgid "Resolution" +msgstr "Resolució" + +msgid "Enable" +msgstr "Activar" + +msgid "Hostname or IP" +msgstr "Nom d'equip o IP" + +msgid "Custom camera source" +msgstr "Font de la càmera personalitzada" + +msgid "Show \"Live Video\" guide page." +msgstr "Mostra la pàgina de guia \"Vídeo en directe\"." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Connectar Impressora( LAN )" + +msgid "Please input the printer access code:" +msgstr "Introduïu el codi d'accés a la impressora:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"El podeu trobar a \"Configuració > Xarxa > Codi de connexió\"\n" +"a la impressora, tal com es mostra a la figura:" + +msgid "Invalid input." +msgstr "Entrada no vàlida." + +msgid "New Window" +msgstr "Finestra nova" + +msgid "Open a new window" +msgstr "Obre una finestra nova" + +msgid "Application is closing" +msgstr "L'aplicació s'està tancant" + +msgid "Closing Application while some presets are modified." +msgstr "Tancant l'aplicació mentre s'han modificat alguns perfils." + +msgid "Logging" +msgstr "Registrant" + +msgid "Preview" +msgstr "Previsualització" + +msgid "Multi-device" +msgstr "Multidispositiu" + +msgid "Project" +msgstr "Projecte" + +msgid "Yes" +msgstr "Sí" + +msgid "No" +msgstr "No" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "es tancarà abans de crear un nou model. Vols continuar?" + +msgid "Slice plate" +msgstr "Laminar placa" + +msgid "Print plate" +msgstr "Imprimir placa d'impressió" + +msgid "Slice all" +msgstr "Laminar-ho tot" + +msgid "Export G-code file" +msgstr "Exportar el fitxer del Codi-G" + +msgid "Export plate sliced file" +msgstr "Exportar fitxer de la placa laminada" + +msgid "Export all sliced file" +msgstr "Exportar el fitxer amb tot laminat" + +msgid "Print all" +msgstr "Imprimeix-ho tot" + +msgid "Send all" +msgstr "Envia-ho tot" + +msgid "Keyboard Shortcuts" +msgstr "Dreceres de teclat" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Mostrar la llista de les dreceres de teclat" + +msgid "Setup Wizard" +msgstr "Assistent per a la instal·lació" + +msgid "Show Configuration Folder" +msgstr "Mostra la Carpeta Configuració" + +msgid "Show Tip of the Day" +msgstr "Mostra Consell del dia" + +msgid "Check for Update" +msgstr "Comprovar si hi ha actualitzacions" + +msgid "Open Network Test" +msgstr "Obrir Test de Xarxa" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&Sobre %s" + +msgid "Upload Models" +msgstr "Pujar models" + +msgid "Download Models" +msgstr "Descarregar models" + +msgid "Default View" +msgstr "Vista per omissió" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Superior" + +msgid "Top View" +msgstr "Vista superior" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Inferior" + +msgid "Bottom View" +msgstr "Vista inferior" + +msgid "Front" +msgstr "Frontal" + +msgid "Front View" +msgstr "Vista frontal" + +msgid "Rear" +msgstr "Al darrere" + +msgid "Rear View" +msgstr "Vista del darrere" + +msgid "Left" +msgstr "Esquerra" + +msgid "Left View" +msgstr "Vista esquerra" + +msgid "Right" +msgstr "Dreta" + +msgid "Right View" +msgstr "Vista dreta" + +msgid "Start a new window" +msgstr "Obre una finestra nova" + +msgid "New Project" +msgstr "Nou Projecte" + +msgid "Start a new project" +msgstr "Començar un nou projecte" + +msgid "Open a project file" +msgstr "Obrir un fitxer de projecte" + +msgid "Recent projects" +msgstr "Projectes recents" + +msgid "Save Project" +msgstr "Desar projecte" + +msgid "Save current project to file" +msgstr "Desar el projecte actual a un fitxer" + +msgid "Save Project as" +msgstr "Desa el projecte com a" + +msgid "Shift+" +msgstr "Màj+" + +msgid "Save current project as" +msgstr "Desar el projecte actual com" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Importar 3MF STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Carregar un model" + +msgid "Import Zip Archive" +msgstr "Importar fitxer ZIP" + +msgid "Load models contained within a zip archive" +msgstr "Carregar models continguts dins d'un arxiu zip" + +msgid "Import Configs" +msgstr "Importar Configuracions" + +msgid "Load configs" +msgstr "Carregar Configuracions" + +msgid "Import" +msgstr "Importar" + +msgid "Export all objects as one STL" +msgstr "Exportar tots els objectes com a un STL" + +msgid "Export all objects as STLs" +msgstr "Exportar tots els objectes com a diferents STLs" + +msgid "Export Generic 3MF" +msgstr "Exportar 3MF Genèric" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Exportar el fitxer 3mf sense utilitzar algunes extensions" + +msgid "Export current sliced file" +msgstr "Exportar el fitxer laminat actual" + +msgid "Export all plate sliced file" +msgstr "Exportar el fitxer laminat actual" + +msgid "Export G-code" +msgstr "Exportar el Codi-G" + +msgid "Export current plate as G-code" +msgstr "Exportar placa actual com a Codi-G" + +msgid "Export Preset Bundle" +msgstr "Exportar el Paquet de Perfil" + +msgid "Export current configuration to files" +msgstr "Exportar la configuració actual a fitxers" + +msgid "Export" +msgstr "Exportar" + +msgid "Quit" +msgstr "Surt" + +msgid "Undo" +msgstr "Desfer" + +msgid "Redo" +msgstr "Refer" + +msgid "Cut selection to clipboard" +msgstr "Tallar la selecció al porta-retalls" + +msgid "Copy" +msgstr "Copiar" + +msgid "Copy selection to clipboard" +msgstr "Copia la selecció al porta-retalls" + +msgid "Paste" +msgstr "Enganxar" + +msgid "Paste clipboard" +msgstr "Enganxa el porta-retalls" + +msgid "Delete selected" +msgstr "Esborra la selecció" + +msgid "Deletes the current selection" +msgstr "Suprimeix la selecció actual" + +msgid "Delete all" +msgstr "Eliminar tot" + +msgid "Deletes all objects" +msgstr "Suprimeix tots els objectes" + +msgid "Clone selected" +msgstr "Clonar el selecciona" + +msgid "Clone copies of selections" +msgstr "Clonar còpies de seleccions" + +msgid "Select all" +msgstr "Selecciona-ho tot" + +msgid "Selects all objects" +msgstr "Selecciona tots els objectes" + +msgid "Deselect all" +msgstr "Deseleccionar-ho tot" + +msgid "Deselects all objects" +msgstr "Desmarca tots els objectes" + +msgid "Use Perspective View" +msgstr "Utilitzar la vista de perspectiva" + +msgid "Use Orthogonal View" +msgstr "Utilitzar la vista ortogonal" + +msgid "Show &G-code Window" +msgstr "Mostra Finestra %Codi-G" + +msgid "Show g-code window in Previce scene" +msgstr "Mostra la finestra de Codi-g a l'escena prèvia" + +msgid "Show 3D Navigator" +msgstr "Mostrar el navegador 3D" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "Mostrar el navegador 3D en Preparació i Previsualització" + +msgid "Reset Window Layout" +msgstr "Restableix el disseny de la finestra" + +msgid "Reset to default window layout" +msgstr "Restableix el disseny predeterminat de la finestra" + +msgid "Show &Labels" +msgstr "Mostrar &Etiquetes" + +msgid "Show object labels in 3D scene" +msgstr "Mostrar etiquetes d'objecte en escena 3D" + +msgid "Show &Overhang" +msgstr "Mostrar %Voladís" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Mostra el ressaltat del voladís de l'objecte a l'escena 3D" + +msgid "Preferences" +msgstr "Preferències" + +msgid "Help" +msgstr "Ajuda" + +msgid "Temperature Calibration" +msgstr "Calibratge de temperatura" + +msgid "Pass 1" +msgstr "Pas 1" + +msgid "Flow rate test - Pass 1" +msgstr "Test de Flux - Pas 1" + +msgid "Pass 2" +msgstr "Pas 2" + +msgid "Flow rate test - Pass 2" +msgstr "Test de Flux - Pas 2" + +msgid "Flow rate" +msgstr "Ratio de Flux" + +msgid "Pressure advance" +msgstr "Avanç de Pressió Lineal( Pressure advance )" + +msgid "Retraction test" +msgstr "Prova de retracció" + +msgid "Orca Tolerance Test" +msgstr "Prova de tolerància d'Orca" + +msgid "Max flowrate" +msgstr "Cabal màxim" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Més..." + +msgid "Tutorial" +msgstr "Tutorial" + +msgid "Calibration help" +msgstr "Ajuda per calibratge" + +msgid "More calibrations" +msgstr "Més calibratges" + +msgid "&Open G-code" +msgstr "&Obrir Codi-G" + +msgid "Open a G-code file" +msgstr "Obrir un fitxer de Codi-G" + +msgid "Re&load from Disk" +msgstr "Re%carregar des del disc" + +msgid "Reload the plater from disk" +msgstr "Carregar la placa des del disc" + +msgid "Export &Toolpaths as OBJ" +msgstr "Exportar &Trajectòries d'eina com OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Exportar trajectòries d'eines com a OBJ" + +msgid "Open &Slicer" +msgstr "Obrir &Slicer" + +msgid "Open Slicer" +msgstr "Obrir Slicer" + +msgid "&Quit" +msgstr "&Sortir" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Sortir %s" + +msgid "&File" +msgstr "&Arxiu" + +msgid "&View" +msgstr "&Vista" + +msgid "&Help" +msgstr "&Ajuda" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "Existeix un fitxer amb el mateix nom: %s, el voleu sobreescriure." + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "Hi ha una configuració amb el mateix nom: %s, la voleu sobreescriure." + +msgid "Overwrite file" +msgstr "Sobreescriure el fitxer" + +msgid "Yes to All" +msgstr "Sí a Tot" + +msgid "No to All" +msgstr "No a Tot" + +msgid "Choose a directory" +msgstr "Trieu un directori" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +"Hi ha %d configuració exportada. ( Només configuracions que no siguin del " +"sistema )" +msgstr[1] "" +"Hi ha %d configuracions exportades. ( Només configuracions que no siguin del " +"sistema )" + +msgid "Export result" +msgstr "Resultat de l'exportació" + +msgid "Select profile to load:" +msgstr "Seleccioneu el perfil que voleu carregar:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +"Hi ha %d configuració importada. ( Només configuracions que no siguin del " +"sistema i compatibles )" +msgstr[1] "" +"Hi ha %d configuracions importades. ( Només configuracions que no siguin del " +"sistema i compatibles )" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"Consell: Assegureu-vos que heu afegit la impressora corresponent abans " +"d'importar les configuracions." + +msgid "Import result" +msgstr "Resultat de la importació" + +msgid "File is missing" +msgstr "No es troba el fitxer" + +msgid "The project is no longer available." +msgstr "El projecte ja no està disponible." + +msgid "Filament Settings" +msgstr "Configuració del Filament" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Vols sincronitzar les teves dades personals des de Bambu Cloud? \n" +"Conté la següent informació:\n" +"1. Els perfils de Procés\n" +"2. Els perfils de Filament\n" +"3. Els perfils de la Impressora" + +msgid "Synchronization" +msgstr "Sincronització" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "El dispositiu no pot gestionar més dades. Torneu-ho a provar més tard." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" +"El reproductor funciona malament. Torneu a instal·lar el reproductor del " +"sistema." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"El reproductor no està carregat, feu clic al botó \"reproduir\" per tornar-" +"ho a provar." + +msgid "Please confirm if the printer is connected." +msgstr "Confirmeu si la impressora està connectada." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"La impressora està ocupada descarregant, espereu que finalitzi la descàrrega." + +msgid "Printer camera is malfunctioning." +msgstr "La càmera de la impressora funciona malament." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Ha ocorregut un problema. Actualitzeu el firmware de la impressora i torneu-" +"ho a provar." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"Liveview Només per LAN està desactivat. Activeu la pantalla de Lifeview a la " +"impressora." + +msgid "Please enter the IP of printer to connect." +msgstr "Introduïu la IP de la impressora amb la que connectar." + +msgid "Initializing..." +msgstr "Inicialitzant..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "" +"S'ha produït un error de connexió. Comproveu la xarxa i torneu-ho a provar" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Comproveu la xarxa i torneu-ho a provar. Podeu reiniciar o actualitzar la " +"impressora si el problema persisteix." + +msgid "The printer has been logged out and cannot connect." +msgstr "La impressora ha tancat la sessió i no es pot connectar." + +msgid "Stopped." +msgstr "Aturat." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "" +"S'ha produït un error en la connexió LAN ( no s'ha pogut iniciar la " +"visualització en directe )" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Virtual Camera Tools és necessari per a aquesta tasca!\n" +"Vols instal·lar-les?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Descarregant Virtual Camera Tools" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Una altra Càmera Virtual està funcionant.\n" +"Snapmaker Orca només admet una sola Càmera Virtual.\n" +"Vols aturar aquesta Càmera Virtual?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Inicialització fallida de la Càmera Virtual ( %s )!" + +msgid "Network unreachable" +msgstr "Xarxa inaccessible" + +msgid "Information" +msgstr "Informació" + +msgid "Playing..." +msgstr "Reproduint..." + +msgid "Year" +msgstr "Any" + +msgid "Month" +msgstr "Mes" + +msgid "All Files" +msgstr "Tots els fitxers" + +msgid "Group files by year, recent first." +msgstr "Agrupar els fitxers per any, primer els recents." + +msgid "Group files by month, recent first." +msgstr "Agrupar els fitxers per mes, primer els recents." + +msgid "Show all files, recent first." +msgstr "Mostrar tots els fitxers, primers els recents." + +msgid "Switch to timelapse files." +msgstr "Canvieu als fitxers timelapse." + +msgid "Video" +msgstr "Vídeo" + +msgid "Switch to video files." +msgstr "Canviar a fitxers de vídeo." + +msgid "Switch to 3mf model files." +msgstr "Canviar a fitxers model 3mf." + +msgid "Delete selected files from printer." +msgstr "Suprimir els fitxers seleccionats de la impressora." + +msgid "Download" +msgstr "Descarregar" + +msgid "Download selected files from printer." +msgstr "Baixeu els fitxers seleccionats de la impressora." + +msgid "Select" +msgstr "Seleccionar" + +msgid "Batch manage files." +msgstr "Gestió per lots de fitxers." + +msgid "Refresh" +msgstr "Actualitzar" + +msgid "Reload file list from printer." +msgstr "Tornar a carregar la llista de fitxers des de la impressora." + +msgid "No printers." +msgstr "No hi ha cap Impressora." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Connexió fallida [%d]!" + +msgid "Loading file list..." +msgstr "Carregant llista de fitxers..." + +msgid "No files" +msgstr "No hi ha fitxers" + +msgid "Load failed" +msgstr "Càrrega fallida" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "" +"Inicialització fallida ( la connexió del Dispositiu no està preparada )!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"L'exploració de fitxers a la targeta SD no és compatible amb el firmware " +"actual. Actualitzeu el firmware de la impressora." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" +"Inicialització fallida (emmagatzematge no disponible, inseriu la targeta " +"SD.)!" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "Ha fallat la connexió LAN (no s'ha pogut visualitzar sdcard)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "" +"L'exploració de fitxers a la targeta SD no és compatible amb el mode només " +"LAN." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Inicialització fallida ( %s )!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +"Esteu a punt de suprimir %u fitxer de la impressora. Segur que vols " +"continuar?" +msgstr[1] "" +"Esteu a punt de suprimir %u fitxers de la impressora. Segur que vols " +"continuar?" + +msgid "Delete files" +msgstr "Suprimir els fitxers" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Vols esborrar el fitxer '%s' de la impressora?" + +msgid "Delete file" +msgstr "Suprimir el fitxer" + +msgid "Fetching model infomations ..." +msgstr "Obtenint infomacions del model ..." + +msgid "Failed to fetch model information from printer." +msgstr "No s'ha pogut obtenir la informació del model de la impressora." + +msgid "Failed to parse model information." +msgstr "No s'ha pogut analitzar la informació del model." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +"El fitxer .gcode.3mf no conté dades de Codi-G. Lamineu-lo amb Snapmaker Orca i " +"exporteu un nou fitxer .gcode.3mf." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "L'arxiu '%s' s'ha perdut! Si us plau, descarregueu-lo de nou." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"Arxiu: %s\n" +"Títol: %s\n" + +msgid "Download waiting..." +msgstr "Descàrrega en espera..." + +msgid "Play" +msgstr "Reproduir" + +msgid "Open Folder" +msgstr "Obrir la carpeta" + +msgid "Download finished" +msgstr "Descàrrega finalitzada" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Descarregant %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Tornant a connectar la impressora. L'operació no es pot completar " +"immediatament. Torneu-ho a provar més tard." + +msgid "File does not exist." +msgstr "El fitxer no existeix." + +msgid "File checksum error. Please retry." +msgstr "Error de checksum de fitxer. Si us plau, torna-ho a intentar." + +msgid "Not supported on the current printer version." +msgstr "No és compatible amb la versió actual de la impressora." + +msgid "Storage unavailable, insert SD card." +msgstr "Emmagatzematge no disponible, inseriu la targeta SD." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Codi d'error: %d" + +msgid "Speed:" +msgstr "Velocitat:" + +msgid "Deadzone:" +msgstr "Zona morta:" + +msgid "Options:" +msgstr "Opcions:" + +msgid "Zoom" +msgstr "Zoom" + +msgid "Translation/Zoom" +msgstr "Trasllat/Zoom" + +msgid "3Dconnexion settings" +msgstr "Configuració de connexió 3D" + +msgid "Swap Y/Z axes" +msgstr "Intercanviar eixos Y/Z" + +msgid "Invert X axis" +msgstr "Invertir l'eix X" + +msgid "Invert Y axis" +msgstr "Invertir l'eix Y" + +msgid "Invert Z axis" +msgstr "Invertir l'eix Z" + +msgid "Invert Yaw axis" +msgstr "Invertir eix de Guinyada" + +msgid "Invert Pitch axis" +msgstr "Invertir eix de Capcineig" + +msgid "Invert Roll axis" +msgstr "Invertir eix de Balanceig" + +msgid "Printing Progress" +msgstr "Progrés de la impressió" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Capa: N/A" + +msgid "Clear" +msgstr "Buidar" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"Heu acabat d'imprimir el model de mostra, \n" +"Però la sincronització de la informació de valoració ha fallat." + +msgid "How do you like this printing file?" +msgstr "Què us sembla aquest fitxer imprimible?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"( El model ja ha estat valorat. La vostra puntuació sobreescriurà la " +"puntuació anterior. )" + +msgid "Rate" +msgstr "Taxa" + +msgid "Camera" +msgstr "Càmera" + +msgid "SD Card" +msgstr "Targeta SD" + +msgid "Camera Setting" +msgstr "Configuració de la càmera" + +msgid "Switch Camera View" +msgstr "Canviar Vista de Càmera" + +msgid "Control" +msgstr "Control" + +msgid "Printer Parts" +msgstr "Peces d'Impressora" + +msgid "Print Options" +msgstr "Opcions d'impressió" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Llum" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Cambra" + +msgid "Bed" +msgstr "Llit" + +msgid "Debug Info" +msgstr "Informació de depuració" + +msgid "No SD Card" +msgstr "Sense targeta SD" + +msgid "SD Card Abnormal" +msgstr "Targeta SD anormal" + +msgid "Cancel print" +msgstr "Cancel·la la impressió" + +msgid "Are you sure you want to cancel this print?" +msgstr "Estàs segur que vols cancel·lar aquesta impressió?" + +msgid "Downloading..." +msgstr "Descarregant..." + +msgid "Cloud Slicing..." +msgstr "Laminat al núvol..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "A la cua de laminat al núvol, hi ha %s tasques per davant." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Capa: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Capa: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Escalfeu el broquet per sobre dels 170 graus abans de carregar o descarregar " +"el filament." + +msgid "Still unload" +msgstr "Encara descarregat" + +msgid "Still load" +msgstr "Encara carregat" + +msgid "Please select an AMS slot before calibration" +msgstr "Seleccioneu una ranura AMS abans del calibratge" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"No es pot llegir la informació del filament: el filament està carregat al " +"capçal de l'eina, descarregueu el filament i torneu-ho a provar." + +msgid "This only takes effect during printing" +msgstr "Això només té efecte durant la impressió" + +msgid "Silent" +msgstr "Silenciós" + +msgid "Standard" +msgstr "Estàndard" + +msgid "Sport" +msgstr "Esportiu" + +msgid "Ludicrous" +msgstr "Insensat" + +msgid "Can't start this without SD card." +msgstr "No es pot iniciar sense la targeta SD." + +msgid "Rate the Print Profile" +msgstr "Valora el Perfil d'Impressió" + +msgid "Comment" +msgstr "Comentar" + +msgid "Rate this print" +msgstr "Valorar aquesta impressió" + +msgid "Add Photo" +msgstr "Afegir una foto" + +msgid "Delete Photo" +msgstr "Eliminar Foto" + +msgid "Submit" +msgstr "Enviar" + +msgid "Please click on the star first." +msgstr "Feu clic les estrelles, primer." + +msgid "InFo" +msgstr "Informació" + +msgid "Get oss config failed." +msgstr "No s'ha pogut obtenir la configuració del Sistema Operatiu." + +msgid "Upload Pictrues" +msgstr "Pujar Imatges" + +msgid "Number of images successfully uploaded" +msgstr "Nombre d'imatges carregades correctament" + +msgid " upload failed" +msgstr " la càrrega ha fallat" + +msgid " upload config prase failed\n" +msgstr " error a la càrrega de configuració\n" + +msgid " No corresponding storage bucket\n" +msgstr " No hi ha cub d'emmagatzematge corresponent\n" + +msgid " can not be opened\n" +msgstr " no es pot obrir\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"S'han produït els següents problemes durant el procés de càrrega d'imatges. " +"Vols ignorar-los?\n" +"\n" + +msgid "info" +msgstr "informació" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"Sincronitzant els resultats d'impressió. Torneu-ho a provar en uns segons." + +msgid "Upload failed\n" +msgstr "S'ha produït un error en la pujada\n" + +msgid "obtaining instance_id failed\n" +msgstr "error en obtenir instance_id \n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"El resultat del comentari no es pot penjar per la següent raó:\n" +"\n" +"Codi d'error: " + +msgid "error message: " +msgstr "missatge d'error: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Voleu redirigir a la pàgina web per valorar-la?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Algunes de les vostres imatges no s'han pogut penjar. Voleu redirigir a la " +"pàgina web per valorar-la?" + +msgid "You can select up to 16 images." +msgstr "Podeu seleccionar fins a 16 imatges." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"Es requereix com a mínim un registre d'impressió correcte d'aquest perfil " +"d'impressió \n" +"per donar una valoració positiva( 4 o 5 estrelles )." + +msgid "Status" +msgstr "Estat" + +msgid "Update" +msgstr "Actualitzar" + +msgid "Don't show again" +msgstr "No tornis a mostrar" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s error" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s hi ha hagut un error" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s advertència" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s té un avís" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s informació" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s informació" + +msgid "Skip" +msgstr "Omet" + +msgid "Newer 3mf version" +msgstr "Nova versió 3mf" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" +"La versió d'arxiu 3mf està en Beta i és més recent que la versió actual " +"d'Snapmaker Orca." + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "Si voleu provar Snapmaker Orca Beta, podeu fer clic a" + +msgid "Download Beta Version" +msgstr "Descarregar Versió Beta" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" +"La versió del fitxer 3mf és més nova que la versió actual de l'Snapmaker Orca." + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" +"Actualitzar el vostre Snapmaker Orca podria habilitar totes les funcionalitats " +"al fitxer 3mf." + +msgid "Current Version: " +msgstr "Versió actual: " + +msgid "Latest Version: " +msgstr "Última Versió: " + +msgid "Not for now" +msgstr "No per ara" + +msgid "3D Mouse disconnected." +msgstr "S'ha desconnectat el ratolí 3D." + +msgid "Configuration can update now." +msgstr "La configuració es pot actualitzar ara." + +msgid "Detail." +msgstr "Detall." + +msgid "Integration was successful." +msgstr "La integració s'ha realitzat correctament." + +msgid "Integration failed." +msgstr "La integració ha fallat." + +msgid "Undo integration was successful." +msgstr "L'operació de desfer s'ha dut a terme amb èxit." + +msgid "New network plug-in available." +msgstr "Nou plug-in de xarxa disponible." + +msgid "Details" +msgstr "Detalls" + +msgid "New printer config available." +msgstr "Nova configuració d'impressora disponible." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "L'operació de desfer ha fallat." + +msgid "Exporting." +msgstr "Exportant." + +msgid "Software has New version." +msgstr "El programari té una nova versió." + +msgid "Goto download page." +msgstr "Aneu a la pàgina de descàrrega." + +msgid "Open Folder." +msgstr "Obrir la carpeta." + +msgid "Safely remove hardware." +msgstr "Traieu el maquinari de manera segura." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d Object té suports personalitzats." +msgstr[1] "%1$d Objectes tenen suports personalitzats." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d L'objecte té pintura en color." +msgstr[1] "%1$d Els objectes tenen pintura en color." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d L'objecte s'ha carregat com a part de l'objecte de tall." +msgstr[1] "%1$d Els objectes s'han carregat com a parts de l'objecte de tall" + +msgid "ERROR" +msgstr "ERROR" + +msgid "COMPLETED" +msgstr "COMPLETAT" + +msgid "CANCELED" +msgstr "CANCEL·LAT" + +msgid "Cancel upload" +msgstr "Cancel·lar càrrega" + +msgid "Jump to" +msgstr "Saltar a" + +msgid "Error:" +msgstr "Error:" + +msgid "Warning:" +msgstr "Advertència:" + +msgid "Export successfully." +msgstr "Exportació amb èxit." + +msgid "Model file downloaded." +msgstr "Arxiu de model descarregat." + +msgid "Serious warning:" +msgstr "Advertència greu:" + +msgid " (Repair)" +msgstr " ( Reparació )" + +msgid " Click here to install it." +msgstr " Feu clic aquí per instal·lar-lo." + +msgid "WARNING:" +msgstr "AVÍS:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "" +"El teu model necessita suports! Si us plau, habiliteu el material de suport." + +msgid "Gcode path overlap" +msgstr "Superposició de la trajectòria del Codi-G" + +msgid "Support painting" +msgstr "Pintura de suport" + +msgid "Color painting" +msgstr "Pintura en color" + +msgid "Cut connectors" +msgstr "Connectors de tall" + +msgid "Layers" +msgstr "Capes" + +msgid "Range" +msgstr "Rang" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"L'aplicació no es pot executar amb normalitat perquè la versió d'OpenGL és " +"inferior a la 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Actualitzeu el controlador de la targeta gràfica." + +msgid "Unsupported OpenGL version" +msgstr "Versió OpenGL no admesa" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"No es poden carregar shaders:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Error en carregar ombres" + +msgctxt "Layers" +msgid "Top" +msgstr "Superior" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Inferior" + +msgid "Enable AI monitoring of printing" +msgstr "Habilitar el monitoratge de la impressió per IA" + +msgid "Sensitivity of pausing is" +msgstr "La sensibilitat de la pausa és" + +msgid "Enable detection of build plate position" +msgstr "Activar detecció de la posició de la placa" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"S'ha detectat l'etiqueta de localització de la placa, la impressió es posarà " +"en pausa si l'etiqueta no està en un rang perfil." + +msgid "First Layer Inspection" +msgstr "Inspecció de Primera Capa" + +msgid "Auto-recovery from step loss" +msgstr "Recuperació automàtica de la pèrdua de passos" + +msgid "Allow Prompt Sound" +msgstr "Permet senyals acústics" + +msgid "Filament Tangle Detect" +msgstr "Detecció de filament enredat" + +msgid "Nozzle Clumping Detection" +msgstr "Detecció d'Obstrucció de Broquet" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" +"Comproveu si el broquet està obstruit per filament o altres objectes " +"estranys." + +msgid "Nozzle Type" +msgstr "Tipus de broquet" + +msgid "Stainless Steel" +msgstr "Acer Inoxidable" + +msgid "Hardened Steel" +msgstr "Acer Endurit" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Global" + +msgid "Objects" +msgstr "Objectes" + +msgid "Advance" +msgstr "Avançat" + +msgid "Compare presets" +msgstr "Comparar els perfils" + +msgid "View all object's settings" +msgstr "Veure tots els paràmetres de l'objecte" + +msgid "Material settings" +msgstr "Configuració del Material" + +msgid "Remove current plate (if not last one)" +msgstr "Treure la placa actual ( si no és l'última )" + +msgid "Auto orient objects on current plate" +msgstr "Auto-orientar objectes a la placa actual" + +msgid "Arrange objects on current plate" +msgstr "Ordenar els objectes a la placa actual" + +msgid "Unlock current plate" +msgstr "Desbloquejar la placa actual" + +msgid "Lock current plate" +msgstr "Bloquejar la placa actual" + +msgid "Edit current plate name" +msgstr "Editar el nom de la placa actual" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "Personalitzar la placa actual" + +#, boost-format +msgid " plate %1%:" +msgstr " placa %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Nom no vàlid, no es permeten els següents caràcters:" + +msgid "Sliced Info" +msgstr "Informació de laminació" + +msgid "Used Filament (m)" +msgstr "Filament Usat ( m )" + +msgid "Used Filament (mm³)" +msgstr "Filament Usat ( mm³ )" + +msgid "Used Filament (g)" +msgstr "Filament Usat ( g )" + +msgid "Used Materials" +msgstr "Materials usats" + +msgid "Estimated time" +msgstr "Temps estimat" + +msgid "Filament changes" +msgstr "Canvis de filaments" + +msgid "Click to edit preset" +msgstr "Feu clic per editar el perfil" + +msgid "Connection" +msgstr "Connexió" + +msgid "Bed type" +msgstr "Tipus de llit" + +msgid "Flushing volumes" +msgstr "Volums de purga" + +msgid "Add one filament" +msgstr "Afegir un filament" + +msgid "Remove last filament" +msgstr "Eliminar l'últim filament" + +msgid "Synchronize filament list from AMS" +msgstr "Sincronitzar la llista de filaments des d'AMS" + +msgid "Set filaments to use" +msgstr "Configurar els filaments a utilitzar" + +msgid "Search plate, object and part." +msgstr "Cercar placa, objecte i peça." + +msgid "Pellets" +msgstr "Pellets" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Sense filaments AMS. Seleccioneu una impressora a la pàgina \"Dispositiu\" " +"per carregar informació AMS." + +msgid "Sync filaments with AMS" +msgstr "Sincronitzar filaments amb AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Sincronitzar filaments amb AMS eliminarà tots els perfils de filament i " +"colors. Voleu continuar?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Ja heu fet una sincronització, voleu sincronitzar només els canvis o tornar " +"a sincronitzar-los tots?" + +msgid "Sync" +msgstr "Sincronitzar" + +msgid "Resync" +msgstr "Resincronitzar" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "No hi ha filaments compatibles i la sincronització no s'ha realitzat." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Hi ha alguns filaments desconeguts assignats al perfil genèric. Actualitzeu " +"Snapmaker Orca o reinicieu Snapmaker Orca per comprovar si hi ha una actualització " +"dels perfils del sistema." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Vols desar els canvis a \"%1%\"?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Desmuntat amb èxit. El dispositiu %s ( %s ) ara es pot retirar de manera " +"segura de l'ordinador." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "L'expulsió del dispositiu %s( %s ) ha fallat." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "S'ha detectat un projecte anterior no desat, voleu restaurar-lo?" + +msgid "Restore" +msgstr "Restaurar" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"La temperatura actual del llit és relativament alta. El broquet es pot " +"obstruir en imprimir aquest filament en un recinte tancat. Obriu la porta " +"principal i/o traieu el vidre superior." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"La duresa del broquet que requereix el filament és superior a la duresa del " +"broquet predeterminat de la impressora. Substituïu per un broquet endurit o " +"el filament, en cas contrari, el broquet es desgastarà o es farà malbé." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Habilitar la fotografia tradicional timelapse pot causar imperfeccions a la " +"superfície. Es recomana canviar al mode suau." + +msgid "Expand sidebar" +msgstr "Expandir la barra lateral" + +msgid "Collapse sidebar" +msgstr "Replegar barra lateral" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Carregant fitxer: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "" +"El 3mf no és compatible amb Snapmaker Orca, només carrega dades de geometria." + +msgid "Load 3mf" +msgstr "Carregar 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"La versió de 3mf %s és més nova que la versió de %s %s, S'han trobat les " +"següents claus no reconegudes:" + +msgid "You'd better upgrade your software.\n" +msgstr "És millor que actualitzeu el vostre programari.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"La versió de 3mf %s és més nova que la versió de %s %s, es suggereix que " +"actualitzis el teu programari." + +msgid "Invalid values found in the 3mf:" +msgstr "Valors no vàlids trobats en el 3mf:" + +msgid "Please correct them in the param tabs" +msgstr "Corregiu-los a les pestanyes de paràmetres" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" +"El fitxer 3mf ha realitzat les següents modificacions al Codi-G de filament " +"o impressora:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Confirmeu que aquests Codis-G modificats són segurs per evitar danys a la " +"màquina!" + +msgid "Modified G-codes" +msgstr "Codis-G modificats" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" +"El fitxer 3mf té els perfils personalitzats de filament o impressora " +"següents:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Confirmeu que els Codis-G d'aquests perfils són segurs per evitar danys a la " +"màquina!" + +msgid "Customized Preset" +msgstr "Perfil personalitzat" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "El nom dels components dins del fitxer de passos no té format UTF8!" + +msgid "The name may show garbage characters!" +msgstr "El nom pot mostrar caràcters no vàlids!" + +msgid "Remember my choice." +msgstr "Recordar la meva elecció." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Error en carregar el fitxer \"%1%\". S'ha trobat una configuració no vàlida." + +msgid "Objects with zero volume removed" +msgstr "Objectes amb volum zero eliminats" + +msgid "The volume of the object is zero" +msgstr "El volum de l'objecte és zero" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"L'objecte del fitxer %s és massa petit, i potser en metres o polzades.\n" +" Vols escalar a mil·límetres?" + +msgid "Object too small" +msgstr "Objecte massa petit" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Aquest fitxer conté diversos objectes col·locats a diverses alçades.\n" +"En lloc de considerar-los com a objectes múltiples, s'hauria de carregar\n" +"el fitxer com un sol objecte amb múltiples peces?" + +msgid "Multi-part object detected" +msgstr "Objecte de múltiples peces detectat" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "Carregar aquests fitxers com un sol objecte amb diverses peces?\n" + +msgid "Object with multiple parts was detected" +msgstr "S'ha detectat un objecte amb múltiples peces" + +msgid "The file does not contain any geometry data." +msgstr "El fitxer no conté cap dada de geometria." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"El teu objecte sembla ser massa gran, Vols reduir-lo per adaptar-lo " +"automàticament al llit?" + +msgid "Object too large" +msgstr "Objecte massa gran" + +msgid "Export STL file:" +msgstr "Exportar el fitxer STL:" + +msgid "Export AMF file:" +msgstr "Exportar el fitxer AMF:" + +msgid "Save file as:" +msgstr "Desa el fitxer com a:" + +msgid "Export OBJ file:" +msgstr "Exportar el fitxer OBJ:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"El fitxer %s ja existeix\n" +"Vols substituir-lo?" + +msgid "Confirm Save As" +msgstr "Confirmar Desar Com" + +msgid "Delete object which is a part of cut object" +msgstr "Eliminar l'objecte que forma part de l'objecte tallat" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Estàs provant d'eliminar un objecte que forma part d'un objecte tallat.\n" +"Aquesta acció trencarà una correspondència de tall.\n" +"Després d'això, no es podrà garantir la coherència del model." + +msgid "The selected object couldn't be split." +msgstr "L'objecte seleccionat no s'ha pogut partir." + +msgid "Another export job is running." +msgstr "S'està executant un altre treball d'exportació." + +msgid "Unable to replace with more than one volume" +msgstr "No es pot substituir per més d'un volum" + +msgid "Error during replace" +msgstr "S'ha produït un error durant la substitució" + +msgid "Replace from:" +msgstr "Substituir des de:" + +msgid "Select a new file" +msgstr "Seleccioneu un fitxer nou" + +msgid "File for the replace wasn't selected" +msgstr "No s'ha seleccionat el fitxer per a la substitució" + +msgid "Please select a file" +msgstr "Seleccioneu un fitxer, si us plau" + +msgid "Do you want to replace it" +msgstr "Voleu substituir-lo" + +msgid "Message" +msgstr "Missatge" + +msgid "Reload from:" +msgstr "Torna a carregar des de:" + +msgid "Unable to reload:" +msgstr "No es pot tornar a carregar:" + +msgid "Error during reload" +msgstr "S'ha produït un error durant la recàrrega" + +msgid "There are warnings after slicing models:" +msgstr "Hi ha advertències després de laminar els models:" + +msgid "warnings" +msgstr "advertències" + +msgid "Invalid data" +msgstr "Les dades no són vàlides" + +msgid "Slicing Canceled" +msgstr "Laminat cancel·lat" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Laminant Base %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Resoleu els errors de laminat i torneu a publicar." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"No s'ha detectat el Plug-in de Xarxa. Les funcions relacionades amb la Xarxa " +"no estan disponibles." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Mode de previsualització\n" +"El fitxer carregat només conté Codi-G, no pot accedir a la pàgina de " +"Preparació" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "Podeu mantenir els perfils modificats al projecte nou o descartar-los" + +msgid "Creating a new project" +msgstr "Creant un nou projecte" + +msgid "Load project" +msgstr "Carregar projecte" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"No s'ha pogut guardar el projecte.\n" +"Comproveu si la carpeta existeix en línia o si altres programes tenen obert " +"el fitxer del projecte." + +msgid "Save project" +msgstr "Desar projecte" + +msgid "Importing Model" +msgstr "Important Model" + +msgid "prepare 3mf file..." +msgstr "preparar el fitxer 3MF..." + +msgid "Download failed, unknown file format." +msgstr "S'ha produït un error en la baixada, format de fitxer desconegut." + +msgid "downloading project ..." +msgstr "descarregant projecte ..." + +msgid "Download failed, File size exception." +msgstr "S'ha produït un error en la baixada, excepció mida del Fitxer." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Projecte descarregat %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"La importació a Snapmaker Orca ha fallat. Descarregueu el fitxer manualment i " +"importeu-lo." + +msgid "Import SLA archive" +msgstr "Importar fitxer SLA" + +msgid "The selected file" +msgstr "El fitxer seleccionat" + +msgid "does not contain valid gcode." +msgstr "no conté Codi-G vàlid." + +msgid "Error occurs while loading G-code file" +msgstr "Es produeix un error en carregar el fitxer de Codi-G" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "La càrrega d'un arxiu ZIP a la ruta %1% ha fallat." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "No s'ha pogut descomprimir el fitxer al %1%: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"No s'ha pogut trobar el fitxer descomprimit a %1%. La descompressió de " +"l'arxiu ha fallat." + +msgid "Drop project file" +msgstr "Deixar anar el fitxer del projecte" + +msgid "Please select an action" +msgstr "Si us plau, selecciona una acció" + +msgid "Open as project" +msgstr "Obre com a projecte" + +msgid "Import geometry only" +msgstr "Importar només la geometria" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Només es pot obrir un fitxer de Codi-G al mateix temps." + +msgid "G-code loading" +msgstr "Càrrega del Codi-G" + +msgid "G-code files can not be loaded with models together!" +msgstr "Els fitxers de Codi-G no es poden carregar amb els models junts!" + +msgid "Can not add models when in preview mode!" +msgstr "No es poden afegir models en mode de previsualització!" + +msgid "All objects will be removed, continue?" +msgstr "Tots els objectes seran eliminats, vols continuar?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"El projecte actual té canvis no guardats, guardar-los abans de continuar?" + +msgid "Number of copies:" +msgstr "Nombre de còpies:" + +msgid "Copies of the selected object" +msgstr "Còpies de l'objecte seleccionat" + +msgid "Save G-code file as:" +msgstr "Desa el fitxer de Codi-G com a:" + +msgid "Save SLA file as:" +msgstr "Desar el fitxer SLA com a:" + +msgid "The provided file name is not valid." +msgstr "El nom del fitxer proporcionat no és vàlid." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "El sistema de fitxers FAT no permet els caràcters següents:" + +msgid "Save Sliced file as:" +msgstr "Desa el fitxer Laminat com a:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"El fitxer %s s'ha enviat a l'emmagatzematge de la impressora i es pot " +"visualitzar a la impressora." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"No s'ha pogut realitzar l'operació booleana a les malles del model. Només " +"s'exportaran les parts positives. Proveu d'arreglar les malles i tornar-ho a " +"provar." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Motiu: la part \"%1%\" està buida." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Motiu: la part \"%1%\" no conté cap volum." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Motiu: la part \"%1%\" té autointersecció." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Motiu: \"%1%\" i una altra peça no tenen intersecció." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"Esteu segur que voleu emmagatzemar els SVG originals amb les seves rutes " +"locals al fitxer 3MF?\n" +"Si premeu \"NO\", tots els SVG del projecte ja no es podran editar més." + +msgid "Private protection" +msgstr "Protecció privada" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" +"La impressora està preparada? La làmina d'impressió està al seu lloc, buida " +"i neta?" + +msgid "Upload and Print" +msgstr "Enviar i imprimir" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Imprimir Per Objecte: \n" +"Utilitzeu l'ordenació automàtica per evitar col·lisions en imprimir." + +msgid "Send G-code" +msgstr "Enviar el Codi-G" + +msgid "Send to printer" +msgstr "Enviar a la impressora" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" +"Els suports personalitzats i la pintura de color s'han eliminat abans de " +"reparar-los." + +msgid "Optimize Rotation" +msgstr "Optimitzar Rotació" + +msgid "Invalid number" +msgstr "Número no vàlid" + +msgid "Plate Settings" +msgstr "Configuració de la placa" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Nombre de peces seleccionades actualment: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Nombre d'objectes seleccionats actualment: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Nom de la peça: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Nom de l'objecte: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Tamany: %1% x %2% x %3% polç\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Tamany: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Volum: %1% polç³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Volum: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Triangles: %1%\n" + +msgid "Tips:" +msgstr "Consells:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"Actualment, la funció \"Reparar el model\" només es troba a Windows. Repareu " +"el model a l'Snapmaker Orca ( windows ) o programes de CAD." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Placa% d: %s no és adequada per imprimir el filament %s( %s ). Si encara " +"voleu fer aquesta impressió, configureu la temperatura del llit d'aquest " +"filament a un nombre superior a zero." + +msgid "Switching the language requires application restart.\n" +msgstr "Per canviar d'idioma cal reiniciar l'aplicació.\n" + +msgid "Do you want to continue?" +msgstr "Voleu continuar?" + +msgid "Language selection" +msgstr "Selecció d'idiomes" + +msgid "Switching application language while some presets are modified." +msgstr "Canviant l'idioma de l'aplicació mentre es modifiquen alguns perfils." + +msgid "Changing application language" +msgstr "Canviant de l'idioma de l'aplicació" + +msgid "Changing the region will log out your account.\n" +msgstr "Si canvieu la regió, es tancarà la sessió del vostre compte.\n" + +msgid "Region selection" +msgstr "Selecció de regió" + +msgid "Second" +msgstr "Segon" + +msgid "Browse" +msgstr "Navega" + +msgid "Choose Download Directory" +msgstr "Triar el Directori de Descàrrega" + +msgid "Associate" +msgstr "Associar" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "amb Snapmaker Orca perquè Orca pugui obrir models des de" + +msgid "Current Association: " +msgstr "Associació actual: " + +msgid "Current Instance" +msgstr "Instància actual" + +msgid "Current Instance Path: " +msgstr "Ruta de la Instància Actual: " + +msgid "General Settings" +msgstr "Configuració general" + +msgid "Asia-Pacific" +msgstr "Àsia-Pacífic" + +msgid "China" +msgstr "Xina" + +msgid "Europe" +msgstr "Europa" + +msgid "North America" +msgstr "Nord-America" + +msgid "Others" +msgstr "Altres" + +msgid "Login Region" +msgstr "Regió d'inici de sessió" + +msgid "Stealth Mode" +msgstr "Mode Silenciós" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" +"Això atura la transmissió de dades als serveis en el núvol de Bambu. Els " +"usuaris que no utilitzen màquines BBL o només utilitzen el mode LAN poden " +"activar aquesta funció de manera segura." + +msgid "Enable network plugin" +msgstr "Habilita el plugin de xarxa" + +msgid "Check for stable updates only" +msgstr "Comprovar només si hi ha actualitzacions estables" + +msgid "Metric" +msgstr "Mètric" + +msgid "Imperial" +msgstr "Imperial" + +msgid "Units" +msgstr "Unitats" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "Permet només una instància Snapmaker Orca" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"A OSX, sempre hi ha una sola instància d'aplicació que s'executa per " +"defecte. Tanmateix, es permet executar diverses instàncies de la mateixa " +"aplicació des de la línia de comandes. En aquest cas, aquesta configuració " +"permetrà només una instància." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" +"Si això està habilitat, i en iniciar Snapmaker Orca i una altra instància del " +"mateix Snapmaker Orca que ja s'està executant, aquesta instància es tornarà a " +"activar." + +msgid "Home" +msgstr "Inici" + +msgid "Default Page" +msgstr "Pàgina predeterminada" + +msgid "Set the page opened on startup." +msgstr "Definiu la pàgina a obrir a l'inici." + +msgid "Touchpad" +msgstr "Ratolí tàctil" + +msgid "Camera style" +msgstr "Estil de càmera" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"Seleccioneu l'estil de navegació de la càmera.\n" +"Per defecte: Botó Esquerre del Ratolí + moure per rotar, Botó Dret del " +"Ratolí/Botó Mig del Ratolí + moure per a panoràmica.\n" +"Ratolí tàctil: Alt+moure per rotar, Majúscules+moure per a panoràmica." + +msgid "Zoom to mouse position" +msgstr "Fer zoom a la posició del ratolí" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Fer zoom cap a la posició del punter del ratolí a la vista 3D, en lloc del " +"centre de la finestra 2D." + +msgid "Use free camera" +msgstr "Usar la càmera lliure" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Si està activat, fa servir la càmera lliure. Si no està activat, fa servir " +"la càmera restringida." + +msgid "Reverse mouse zoom" +msgstr "Zoom invers del ratolí" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" +"Si està habilitat, inverteix la direcció del zoom amb la roda del ratolí." + +msgid "Show splash screen" +msgstr "Mostrar pantalla de presentació" + +msgid "Show the splash screen during startup." +msgstr "Mostra la pantalla de presentació durant l'inici." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Mostrar la notificació de \"Consell del dia\" després de l'inici" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Si s'activa, es mostren consells útils a l'inici." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "" +"Volums de purga: calcular automàticament cada vegada que canvia el color." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "" +"Si està activat, fa els clculs automàticament cada vegada que canviï el " +"color." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "" +"Volums de purga: calcular automàticament cada vegada que canvia el filament." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "" +"Si està activat, fa els càlculs automàticament cada vegada que canvia el " +"filament" + +msgid "Remember printer configuration" +msgstr "Recordar la configuració de la impressora" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" +"Si està habilitada, l'Orca recordarà i canviarà automàticament la " +"configuració del filament/procés per a cada impressora." + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "Gestió multidispositiu(Entra en vigor després de reiniciar Studio)." + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"Amb aquesta opció habilitada, podeu enviar una tasca a diversos dispositius " +"alhora i gestionar múltiples dispositius." + +msgid "Network" +msgstr "Xarxa" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Sincronització automàtica dels perfils de l'usuari ( Impressora/Filament/" +"Processament )" + +msgid "User Sync" +msgstr "Sincronització d'usuari" + +msgid "Update built-in Presets automatically." +msgstr "Actualitzar els perfils de fàbrica automàticament." + +msgid "System Sync" +msgstr "Sincronitzar del Sistema" + +msgid "Clear my choice on the unsaved presets." +msgstr "Esborrar la meva elecció als perfils no desats." + +msgid "Associate files to Snapmaker Orca" +msgstr "Associar fitxers a Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Associar .3mf fitxers a Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Si està habilitat, defineix Snapmaker Orca com a l'aplicació predeterminada per " +"obrir fitxers .3mf" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Associar fitxers .stl a Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Si està habilitada, defineix Snapmaker Orca com a l'aplicació predeterminada per " +"obrir fitxers .stl" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Associar fitxers .step/.stp a Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Si està habilitada, defineix Snapmaker Orca com a l'aplicació predeterminada per " +"obrir fitxers .step" + +msgid "Associate web links to Snapmaker Orca" +msgstr "Associar enllaços web a Snapmaker Orca" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "Associeu URLs a Snapmaker Orca" + +msgid "Maximum recent projects" +msgstr "Màxim projectes recents" + +msgid "Maximum count of recent projects" +msgstr "Màxima quantitat de projectes recents" + +msgid "Clear my choice on the unsaved projects." +msgstr "Esborrar la meva elecció sobre els projectes no desats." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "No hi ha avisos en carregar 3MF amb Codis-G modificats" + +msgid "Auto-Backup" +msgstr "Còpia de seguretat automàtica" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Feu còpies de seguretat del vostre projecte periòdicament per restaurar en " +"cas de fallida ocasional." + +msgid "every" +msgstr "cada" + +msgid "The peroid of backup in seconds." +msgstr "Freqüència de còpia de seguretat en segons." + +msgid "Downloads" +msgstr "Descàrregues" + +msgid "Dark Mode" +msgstr "Mode fosc" + +msgid "Enable Dark mode" +msgstr "Habilitar el mode fosc" + +msgid "Develop mode" +msgstr "Mode de desenvolupament" + +msgid "Skip AMS blacklist check" +msgstr "Omet la comprovació de la llista negra AMS" + +msgid "Home page and daily tips" +msgstr "Pàgina d'inici i consells diaris" + +msgid "Show home page on startup" +msgstr "Mostra la pàgina d'inici a l'inici" + +msgid "Sync settings" +msgstr "Configuració de sincronització" + +msgid "User sync" +msgstr "Sincronització de l'usuari" + +msgid "Preset sync" +msgstr "Sincronització de perfil" + +msgid "Preferences sync" +msgstr "Sincronització de preferències" + +msgid "View control settings" +msgstr "Veure la configuració del control" + +msgid "Rotate of view" +msgstr "Rotació de la vista" + +msgid "Move of view" +msgstr "Moviment de la vista" + +msgid "Zoom of view" +msgstr "Zoom de la vista" + +msgid "Other" +msgstr "Altre" + +msgid "Mouse wheel reverses when zooming" +msgstr "La roda del ratolí s'inverteix quan es fa zoom" + +msgid "Enable SSL(MQTT)" +msgstr "Habilitar SSL ( MQTT )" + +msgid "Enable SSL(FTP)" +msgstr "Habilitar SSL ( FTP )" + +msgid "Internal developer mode" +msgstr "Mode de desenvolupador intern" + +msgid "Log Level" +msgstr "Nivell d'enregistrament" + +msgid "fatal" +msgstr "fatal" + +msgid "error" +msgstr "error" + +msgid "warning" +msgstr "advertència" + +msgid "debug" +msgstr "depurar" + +msgid "trace" +msgstr "traça" + +msgid "Host Setting" +msgstr "Configuració de l'amfitrió( host )" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "Amfitrió DEV: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "Amfitrió de Control de Qualitat( QA ): api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "Amfitrió PRE: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Amfitrió del producte" + +msgid "debug save button" +msgstr "botó de desar depuració" + +msgid "save debug settings" +msgstr "desar la configuració de depuració" + +msgid "DEBUG settings have saved successfully!" +msgstr "La configuració de DEPURACIÓ s'ha desat correctament!" + +msgid "Switch cloud environment, Please login again!" +msgstr "L'entorn del núvol ha canviat, torneu a iniciar sessió!" + +msgid "System presets" +msgstr "Perfils del sistema" + +msgid "User presets" +msgstr "Perfils d'usuari" + +msgid "Incompatible presets" +msgstr "Perfils incompatibles" + +msgid "AMS filaments" +msgstr "Filaments AMS" + +msgid "Click to pick filament color" +msgstr "Feu clic per triar el color del filament" + +msgid "Please choose the filament colour" +msgstr "Si us plau, tria el color del filament" + +msgid "Add/Remove presets" +msgstr "Afegir o Suprimir perfils" + +msgid "Edit preset" +msgstr "Editar el perfil" + +msgid "Project-inside presets" +msgstr "Perfils interns del projecte" + +msgid "Add/Remove filaments" +msgstr "Afegir o Suprimir filaments" + +msgid "Add/Remove materials" +msgstr "Afegir o Suprimir materials" + +msgid "Select/Remove printers(system presets)" +msgstr "Seleccionar/eliminar impressores ( perfils del sistema )" + +msgid "Create printer" +msgstr "Crear impressora" + +msgid "The selected preset is null!" +msgstr "El perfil seleccionat és nul!" + +msgid "End" +msgstr "Final" + +msgid "Customize" +msgstr "Personalitzar" + +msgid "Other layer filament sequence" +msgstr "Seqüència d'impressió de l'altra capa" + +msgid "Please input layer value (>= 2)." +msgstr "Introduïu el valor de capa (>= 2)." + +msgid "Plate name" +msgstr "Nom de la placa" + +msgid "Same as Global Print Sequence" +msgstr "El mateix que la Seqüència General d'Impressió" + +msgid "Print sequence" +msgstr "Seqüència d'impressió" + +msgid "Same as Global" +msgstr "El mateix que Global" + +msgid "Disable" +msgstr "Deshabilitar" + +msgid "Spiral vase" +msgstr "Gerro en Espiral" + +msgid "First layer filament sequence" +msgstr "Seqüència d'impressió de la primera capa" + +msgid "Same as Global Plate Type" +msgstr "Igual que el Tipus de Base General" + +msgid "Same as Global Bed Type" +msgstr "Igual que el Tipus de Llit General" + +msgid "By Layer" +msgstr "Per Capa" + +msgid "By Object" +msgstr "Per Objecte" + +msgid "Accept" +msgstr "Acceptar" + +msgid "Log Out" +msgstr "Desconnectar-se" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "Laminar tota la placa per obtenir estimació de temps i filament" + +msgid "Packing project data into 3mf file" +msgstr "Empaquetar les dades del projecte en un fitxer 3mf" + +msgid "Uploading 3mf" +msgstr "Pujant 3mf" + +msgid "Jump to model publish web page" +msgstr "Anar a la pàgina web de publicació de models" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "" +"Nota: La preparació pot trigar uns quants minuts. Si us plau, sigui pacient." + +msgid "Publish" +msgstr "Publicar" + +msgid "Publish was cancelled" +msgstr "La publicació ha estat cancel·lada" + +msgid "Slicing Plate 1" +msgstr "Laminant Base 1" + +msgid "Packing data to 3mf" +msgstr "Empaquetant dades a 3mf" + +msgid "Jump to webpage" +msgstr "Anar a la pàgina web" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Desar %s com a" + +msgid "User Preset" +msgstr "Perfil d'usuari" + +msgid "Preset Inside Project" +msgstr "Perfil intern del Projecte" + +msgid "Name is unavailable." +msgstr "El nom no està disponible." + +msgid "Overwrite a system profile is not allowed" +msgstr "No es permet sobreescriure un perfil del sistema" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "El Perfil \"%1%\" ja existeix." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "" +"El Perfil \"%1%\" ja existeix i és incompatible amb la impressora actual." + +msgid "Please note that saving action will replace this preset" +msgstr "Tingueu en compte que l'acció de desar substituirà aquest perfil" + +msgid "The name cannot be the same as a preset alias name." +msgstr "El nom no pot ser el mateix que un àlies preestablert." + +msgid "Save preset" +msgstr "Desar el perfil" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Copiar" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "La impressora \"%1%\" està seleccionada amb el perfil \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Trieu una acció amb el perfil \"%1%\" després de desar." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Per a \"%1%\", canviar \"%2%\" per \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Per a \"%1%\", afegir \"%2%\" com a perfil nou" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Simplement canviar a \"%1%\"" + +msgid "Task canceled" +msgstr "Tasca cancel·lada" + +msgid "(LAN)" +msgstr "( LAN )" + +msgid "Search" +msgstr "Cercar" + +msgid "My Device" +msgstr "El Meu Dispositiu" + +msgid "Other Device" +msgstr "Un Altre Dispositiu" + +msgid "Online" +msgstr "Online" + +msgid "Input access code" +msgstr "Introduir el codi d'accés" + +msgid "Can't find my devices?" +msgstr "No puc trobar els meus dispositius?" + +msgid "Log out successful." +msgstr "Tancament de sessió correcte." + +msgid "Busy" +msgstr "Ocupat" + +msgid "Bambu Cool Plate" +msgstr "Base Freda Bambu" + +msgid "PLA Plate" +msgstr "Base PLA" + +msgid "Bambu Engineering Plate" +msgstr "Base d'Enginyeria Bambu" + +msgid "Bambu Smooth PEI Plate" +msgstr "Base PEI Llisa de Bambu" + +msgid "High temperature Plate" +msgstr "Base d'Alta Temperatura" + +msgid "Bambu Textured PEI Plate" +msgstr "Base PEI amb Textura Bambu" + +msgid "Send print job to" +msgstr "Enviar treball d'impressió a" + +msgid "Flow Dynamics Calibration" +msgstr "Calibratge de Dinàmiques de Flux" + +msgid "Click here if you can't connect to the printer" +msgstr "Feu clic aquí si no us podeu connectar a la impressora" + +msgid "send completed" +msgstr "enviament completat" + +msgid "Error code" +msgstr "Codi d'error" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "" +"No hi ha compte d'inici de sessió, només es mostren impressores en mode LAN" + +msgid "Connecting to server" +msgstr "Connectant amb el servidor" + +msgid "Synchronizing device information" +msgstr "Sincronitzant informació del dispositiu" + +msgid "Synchronizing device information time out" +msgstr "" +"Finalització del temps de sincronització de la informació del dispositiu" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"No es pot enviar el treball d'impressió quan la impressora està actualitzant " +"el firmware" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"La impressora està executant instruccions. Reinicieu la impressió un cop " +"finalitzi" + +msgid "The printer is busy on other print job" +msgstr "La impressora està ocupada en altres treballs d'impressió" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"El filament %s supera el nombre de ranures AMS. Actualitzeu el firmware de " +"la impressora per a que admeti l'assignació de ranures AMS." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"El filament supera el nombre de ranures AMS. Actualitzeu el firmware de la " +"impressora per a que admeti l'assignació de ranures AMS." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"S'han establert mapeigs de filaments a ranures AMS. Podeu fer clic a un " +"filament de dalt per canviar la vostra assignació de ranura AMS" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Feu clic a cada filament de dalt per especificar la vostra assignació de " +"ranura AMS abans d'enviar el treball d'impressió" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"El filament %s no coincideix amb el filament de la ranura AMS %s. " +"Actualitzeu el firmware de la impressora per a que admeti l'assignació de " +"ranures AMS." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"El filament no coincideix amb el filament de la ranura AMS. Actualitzeu el " +"firmware de la impressora per a que admeti l'assignació de ranures AMS." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"El firmware de la impressora només admet el mapejat seqüencial de filament " +"=> ranura AMS." + +msgid "An SD card needs to be inserted before printing." +msgstr "Cal inserir una targeta SD abans d'imprimir." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"La impressora seleccionada (%s) és incompatible amb el perfil d'impressora " +"escollit al laminador (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "Cal inserir una targeta SD per gravar el timelapse." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"No es pot enviar el treball d'impressió a una impressora el firmware de la " +"qual necessita una actualització." + +msgid "Cannot send the print job for empty plate" +msgstr "No es pot enviar el treball d'impressió d'una Base Buida" + +msgid "This printer does not support printing all plates" +msgstr "Aquesta impressora no admet impressió de Totes les Plaques" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"Quan s'habilita el mode Gerro Espiral, les màquines amb estructura I3 no " +"generaran vídeos timelapse." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"El timelapse no està suportat perquè la seqüència d'impressió està " +"configurada \"Per objecte\"." + +msgid "Errors" +msgstr "Errors" + +msgid "Please check the following:" +msgstr "Si us plau, comproveu el següent:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"El tipus d'impressora seleccionat en generar el Codi-G no és coherent amb la " +"impressora seleccionada actualment. Es recomana utilitzar el mateix tipus " +"d'impressora per laminar." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"Hi ha alguns filaments desconeguts en els mapejats AMS. Comproveu si són els " +"filaments requerits. Si estan bé, premeu \"Confirmar\" per començar a " +"imprimir." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "broquet del perfil: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "broquet memoritzat: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"El diàmetre del broquet del perfil no és coherent amb el diàmetre del " +"broquet memoritzat. Si heu canviat el broquet darrerament, aneu a Dispositiu " +"> Parts de la impressora per canviar la configuració." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"La impressió de material a alta temperatura (material %s) amb %s pot causar " +"danys al broquet" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "" +"Corregiu l'error de dalt, en cas contrari, la impressió no pot continuar." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Feu clic al botó de confirmació si encara voleu continuar amb la impressió." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Connectant amb la impressora. No es pot cancel·lar durant el procés de " +"connexió." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Precaució d'ús! El calibratge del flux a la Base PEI amb Textura pot fallar " +"a causa de la superfície irregular." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Calibratge automàtic de flux mitjançant Micro Lidar" + +msgid "Modifying the device name" +msgstr "Modificant el nom del dispositiu" + +msgid "Bind with Pin Code" +msgstr "Enllaçar amb codi PIN" + +msgid "Send to Printer SD card" +msgstr "Enviar a la targeta SD de la impressora" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "" +"No es pot enviar la tasca d'impressió quan l'actualització està en curs" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "" +"La impressora seleccionada és incompatible amb els perfils de la impressora " +"escollits." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "Cal inserir una targeta SD abans d'enviar-lo a la impressora." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "" +"Es requereix que la impressora estigui a la mateixa LAN que Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "La impressora no admet l'enviament a la targeta SD de la impressora." + +msgid "Slice ok." +msgstr "Laminat ok." + +msgid "View all Daily tips" +msgstr "Veure tots els consells diaris" + +msgid "Failed to create socket" +msgstr "No s'ha pogut crear el socket" + +msgid "Failed to connect socket" +msgstr "No s'ha pogut connectar el socket" + +msgid "Failed to publish login request" +msgstr "No s'ha pogut publicar la sol·licitud d'inici de sessió" + +msgid "Get ticket from device timeout" +msgstr "Temps d'espera excedit per obtenir un ticket des del dispositiu" + +msgid "Get ticket from server timeout" +msgstr "Temps d'espera excedit per obtenir un ticket des del servidor" + +msgid "Failed to post ticket to server" +msgstr "No s'ha pogut enviar el ticket al servidor" + +msgid "Failed to parse login report reason" +msgstr "No s'ha pogut analitzar l'informe d'inici de sessió" + +msgid "Receive login report timeout" +msgstr "Excedit el temps d'espera de l'informe d'inici de sessió" + +msgid "Unknown Failure" +msgstr "Falla desconeguda" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Trobeu el codi PIN a la pàgina del compte a la pantalla de la impressora,\n" +" i escriviu el codi PIN de sota." + +msgid "Can't find Pin Code?" +msgstr "No trobes el codi PIN?" + +msgid "Pin Code" +msgstr "Codi PIN" + +msgid "Binding..." +msgstr "Enllaçant..." + +msgid "Please confirm on the printer screen" +msgstr "Si us plau, confirmeu-ho a la pantalla de la impressora" + +msgid "Log in failed. Please check the Pin Code." +msgstr "S'ha produït un error en l'inici de sessió. Comproveu el codi PIN." + +msgid "Log in printer" +msgstr "Iniciar sessió a la impressora" + +msgid "Would you like to log in this printer with current account?" +msgstr "Voleu iniciar sessió en aquesta impressora amb el compte actual?" + +msgid "Check the reason" +msgstr "Comprova el motiu" + +msgid "Read and accept" +msgstr "Llegir i acceptar" + +msgid "Terms and Conditions" +msgstr "Termes i Condicions" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Gràcies per comprar un dispositiu Bambu Lab. Abans d'utilitzar el vostre " +"dispositiu Bambu Lab, llegiu els termes i condicions. En fer clic per " +"acceptar l'ús del vostre dispositiu Bambu Lab, accepteu complir la Política " +"de privadesa i les Condicions d'ús ( generalizant, les \"Condicions\" ). Si " +"no compleix o està d'acord amb la Política de Privacitat de Bambu Lab, si us " +"plau, no utilitzi l'equip i els serveis de Bambu Lab." + +msgid "and" +msgstr "i" + +msgid "Privacy Policy" +msgstr "Política de Privadesa" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Us demanem la vostra ajuda per millorar la impressora de tots" + +msgid "Statement about User Experience Improvement Program" +msgstr "Declaració sobre el Programa de Millora de l'Experiència d'Usuari" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"A la comunitat d'impressió 3D, aprenem dels èxits i fracassos dels altres " +"per ajustar els nostres propis paràmetres i configuracions de laminat. %s " +"segueix el mateix principi i utilitza machine learning per millorar el seu " +"rendiment a partir dels èxits i fracassos de la gran quantitat d'impressions " +"dels nostres usuaris. Estem entrenant %s a ser més intel·ligent alimentant-" +"lo de les dades del món real. Si ho desitja, aquest servei accedirà a la " +"informació dels seus registres d'errors i registres d'ús, que poden incloure " +"l'informació descrita en la Política de Privacitat. No recopilarem cap dada " +"personal mitjançant la qual es pugui identificar una persona directament o " +"indirectament, inclosos, sense limitació, noms, adreces, informació de " +"pagament o números de telèfon. En habilitar aquest servei, accepteu aquests " +"termes i la declaració sobre la Política de privadesa." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Declaració sobre el Pla de Millora de l'Experiència d'Usuari" + +msgid "Log in successful." +msgstr "Inici sessió correcte." + +msgid "Log out printer" +msgstr "Tancar sessió de la impressora" + +msgid "Would you like to log out the printer?" +msgstr "Voleu tancar la sessió de la impressora?" + +msgid "Please log in first." +msgstr "Si us plau, primer inicieu sessió." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "" +"Hi ha hagut un problema en connectar-se a la impressora. Torneu-ho a provar." + +msgid "Failed to log out." +msgstr "No s'ha pogut tancar la sessió." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Desa l'actual %s" + +msgid "Delete this preset" +msgstr "Suprimeix aquest perfil" + +msgid "Search in preset" +msgstr "Cercar al perfil" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Feu clic per restablir tots els paràmetres a l'última configuració desada." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"La Torre de Purga és necessària per a un timelapse suau. Pot haver-hi " +"defectes en el model sense Torre de Purga. Esteu segur que voleu desactivar " +"la Torre de Purga?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"La Torre de Purga és necessària per a un timelapse suau. Pot haver-hi " +"defectes en el model sense Torre de Purga. Vols habilitar la Torre de Purga?" + +msgid "Still print by object?" +msgstr "Continuar imprimint per objecte?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Hem afegit l'estil experimental \"Arbres Prims\" que presenta un volum de " +"suport més petit però una resistència més feble.\n" +"Recomanem utilitzar-lo amb: 0 capes d'interfície, 0 distància superior, 2 " +"perímetres." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Canviar aquesta configuració automàticament? \n" +"Sí: Canviar aquesta configuració automàticament\n" +"No - No canviar aquesta configuració" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Per als estils \"Arbres Forts\" i \"Arbres Híbrids\", recomanem la " +"configuració següent: almenys 2 capes d'interfície, almenys 0.1 mm de " +"distància z superior o utilitzar materials de suport a la interfície." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"Quan utilitzeu material de suport per a la interfície de suport, recomanem " +"la configuració següent:\n" +"0 distància superior Z, 0 espaiat de la interfície, patró concèntric i " +"desactivar alçada de suport independent d'alçada de capa" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"Si activeu aquesta opció, es modificarà la forma del model. Si la impressió " +"requereix dimensions precises o forma part d'un muntatge, és important " +"comprovar si aquest canvi de geometria afecta la funcionalitat de la " +"impressió." + +msgid "Are you sure you want to enable this option?" +msgstr "Estàs segur que vols activar aquesta opció?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"L'alçada de la capa és massa petita.\n" +"Es posarà a min_layer_height\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"L'alçada de la capa supera el límit a Configuració de la Impressora -> " +"Extrusora -> Límits d'alçada de la capa, això pot causar problemes de " +"qualitat d'impressió." + +msgid "Adjust to the set range automatically? \n" +msgstr "Voleu ajustar el rang automàticament? \n" + +msgid "Adjust" +msgstr "Ajustar" + +msgid "Ignore" +msgstr "Ignorar" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Característica experimental: Retreure i tallar el filament a major distància " +"durant els canvis de filaments per minimitzar el flux. Tot i que pot reduir " +"notablement el flux, també pot elevar el risc d'esclops de broquets o altres " +"complicacions d'impressió." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Característica experimental: Retreure i tallar el filament a major distància " +"durant els canvis de filaments per minimitzar el rentat. Tot i que pot " +"reduir notablement el rentat, també pot elevar el risc d'obstruccions del " +"broquet o altres complicacions d'impressió. Utilitzeu amb el firmware de la " +"impressora més recent." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"Quan graveu timelapse sense capçal d'impressió, es recomana afegir una " +"\"Torre de Purga Timelapse\" \n" +"fent clic amb el botó dret a una posició buida de la placa i triant \"Afegir " +"primitiva\"->\"Torre de Purga Timelapse\"." + +msgid "Line width" +msgstr "Amplada de línia" + +msgid "Seam" +msgstr "Costura" + +msgid "Precision" +msgstr "Precisió" + +msgid "Wall generator" +msgstr "Generador de perímetre" + +msgid "Walls and surfaces" +msgstr "Parets i superfícies" + +msgid "Bridging" +msgstr "Ponts" + +msgid "Overhangs" +msgstr "Voladissos" + +msgid "Walls" +msgstr "Parets" + +msgid "Top/bottom shells" +msgstr "Carcasses superior/inferior" + +msgid "Initial layer speed" +msgstr "Velocitat de la capa inicial" + +msgid "Other layers speed" +msgstr "Velocitat d'altres capes" + +msgid "Overhang speed" +msgstr "Velocitat de voladís" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Aquesta és la velocitat per a diversos graus de voladís. Els graus de " +"voladís s'expressen com un percentatge de l'amplada de la línia. La " +"velocitat 0 vol dir que no hi ha alentiment per al rang de graus de voladís " +"i s'utilitza la velocitat del perímetre" + +msgid "Bridge" +msgstr "Pont" + +msgid "Set speed for external and internal bridges" +msgstr "Establir la velocitat dels ponts externs i interns" + +msgid "Travel speed" +msgstr "Velocitat de desplaçament" + +msgid "Acceleration" +msgstr "Acceleració" + +msgid "Jerk(XY)" +msgstr "Sacsejada( XY )-Jerk( XY )" + +msgid "Raft" +msgstr "Vora d'Adherència" + +msgid "Support filament" +msgstr "Filament de suport" + +msgid "Tree supports" +msgstr "Suports d'arbre" + +msgid "Skirt" +msgstr "Faldilla" + +msgid "Prime tower" +msgstr "Torre de Purga" + +msgid "Special mode" +msgstr "Ajustos especials" + +msgid "G-code output" +msgstr "Codi-G de Sortida" + +msgid "Post-processing Scripts" +msgstr "Scripts de postprocessament" + +msgid "Notes" +msgstr "Notes" + +msgid "Frequent" +msgstr "Freqüent" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"La següent línia %s conté paraules clau reservades.\n" +"Si us plau, elimineu-la o no serà possible la visualització del Codi-G i " +"l'estimació del temps d'impressió." +msgstr[1] "" +"Les següents línies %s contenen paraules clau reservades.\n" +"Si us plau, elimineu-les o no serà possible la visualització del Codi-G i " +"l'estimació del temps d'impressió." + +msgid "Reserved keywords found" +msgstr "Trobades paraules clau reservades" + +msgid "Setting Overrides" +msgstr "Anul·lacions de configuració" + +msgid "Retraction" +msgstr "Retracció" + +msgid "Basic information" +msgstr "Informació bàsica" + +msgid "Recommended nozzle temperature" +msgstr "Temperatura recomanada del broquet" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Rang de temperatures del broquet recomanat per a aquest filament. 0 " +"significa que no es configura" + +msgid "Print chamber temperature" +msgstr "Temperatura de la cambra d'impressió" + +msgid "Print temperature" +msgstr "Temperatura d'impressió" + +msgid "Nozzle" +msgstr "Broquet( nozzle )" + +msgid "Nozzle temperature when printing" +msgstr "Temperatura del broquet en imprimir" + +msgid "Cool plate" +msgstr "Base Freda" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Temperatura del llit quan s'instal·la la Base Freda. El valor 0 significa " +"que el filament no admet imprimir a la Base Freda" + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "Base d'enginyeria" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Temperatura del llit quan s'instal·la la Base d'Enginyeria. El valor 0 " +"significa que el filament no admet imprimir a la Base d'Enginyeria" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Base PEI Llisa / Base d'Alta Temperatura" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Temperatura del llit quan s'instal·la la placa PEI Llisa/Base d'Alta " +"Temperatura. El valor 0 significa que el filament no admet imprimir a la " +"Base PEI Llisa/Base d'Alta Temperatura" + +msgid "Textured PEI Plate" +msgstr "Base PEI amb Textura" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Temperatura del llit quan s'instal·la la placa PEI amb Textura. El valor 0 " +"significa que el filament no admet imprimir a la placa PEI amb Textura" + +msgid "Volumetric speed limitation" +msgstr "Limitació de la velocitat volumètrica" + +msgid "Cooling" +msgstr "Refrigeració" + +msgid "Cooling for specific layer" +msgstr "Refrigeració per a capes específiques" + +msgid "Part cooling fan" +msgstr "Ventilador de refrigeració de peces" + +msgid "Min fan speed threshold" +msgstr "Llindar de velocitat mínima del ventilador" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"La velocitat del ventilador de refrigeració de la peça començarà a funcionar " +"a la velocitat mínima quan el temps estimat de la capa no sigui superior al " +"temps de la capa configurat. Quan el temps de capa és inferior al llindar, " +"la velocitat del ventilador s'interpola entre la velocitat mínima i màxima " +"del ventilador segons el temps d'impressió de la capa" + +msgid "Max fan speed threshold" +msgstr "Llindar de velocitat màxima del ventilador" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"La velocitat del ventilador de refrigeració de la peça serà màxima quan el " +"temps estimat de capa sigui inferior al valor configurat" + +msgid "Auxiliary part cooling fan" +msgstr "Ventilador auxiliar de refrigeració de peces" + +msgid "Exhaust fan" +msgstr "Ventiladord'extracció" + +msgid "During print" +msgstr "Durant la impressió" + +msgid "Complete print" +msgstr "Impressió completada" + +msgid "Filament start G-code" +msgstr "Codi-G Inicial del Filament" + +msgid "Filament end G-code" +msgstr "Codi-G Final del Filament" + +msgid "Multimaterial" +msgstr "Multimaterial" + +msgid "Wipe tower parameters" +msgstr "Paràmetres de la Torre de Purga" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "Paràmetres del canvi d'eina per a impressores d'un únic extrusor MM" + +msgid "Ramming settings" +msgstr "Configuració de Moldejat de punta( Ramming )" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "Paràmetres del canvi d'eina per a impressores multi-extrusor MM" + +msgid "Printable space" +msgstr "Espai imprimible" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "Valor no vàlid proporcionat per al paràmetre %1%: %2%" + +msgid "G-code flavor is switched" +msgstr "El tipus de codi-G s'ha canviat" + +msgid "Cooling Fan" +msgstr "Ventilador de refrigeració" + +msgid "Fan speed-up time" +msgstr "Temps d'acceleració del ventilador" + +msgid "Extruder Clearance" +msgstr "Espai lliure de l'extrusor" + +msgid "Adaptive bed mesh" +msgstr "Malla de placa adaptativa" + +msgid "Accessory" +msgstr "Accessori" + +msgid "Machine gcode" +msgstr "Codi-G de màquina" + +msgid "Machine start G-code" +msgstr "Codi-G d'arrencada de la màquina" + +msgid "Machine end G-code" +msgstr "Codi-G final de màquina" + +msgid "Printing by object G-code" +msgstr "Codi-G d'impressió per objecte" + +msgid "Before layer change G-code" +msgstr "Codi-G per abans d'un canvi de capa" + +msgid "Layer change G-code" +msgstr "Codi-G per després d'un canvi de capa" + +msgid "Time lapse G-code" +msgstr "Codi-G time lapse" + +msgid "Change filament G-code" +msgstr "Codi-G de canvi de filament" + +msgid "Change extrusion role G-code" +msgstr "Codi-G de canvi del rol d'extrusió" + +msgid "Pause G-code" +msgstr "Codi-G de pausa" + +msgid "Template Custom G-code" +msgstr "Codi-G de canvi de plantilla" + +msgid "Motion ability" +msgstr "Capacitat de moviment" + +msgid "Normal" +msgstr "Normal" + +msgid "Speed limitation" +msgstr "Limitació de velocitat" + +msgid "Acceleration limitation" +msgstr "Limitació d'acceleració" + +msgid "Jerk limitation" +msgstr "Limitació de la sacsejada( Jerk )" + +msgid "Single extruder multimaterial setup" +msgstr "Configuració d'extrusor únic multimaterial" + +msgid "Wipe tower" +msgstr "Torre de Purga" + +msgid "Single extruder multimaterial parameters" +msgstr "Paràmetres d'extrusor únic multimaterial" + +msgid "Layer height limits" +msgstr "Límits d'alçada de capa" + +msgid "Lift Z Enforcement" +msgstr "Forçar elevació Z" + +msgid "Retraction when switching material" +msgstr "Retracció en canviar de material" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"L'opció Netejar no està disponible quan utilitzeu el mode Retracció de " +"firmware. El desactivo per habilitar la Retracció de firmware?" + +msgid "Firmware Retraction" +msgstr "Retracció de Fimware" + +msgid "Detached" +msgstr "Separat" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"El perfil de Filament %d i el perfil de Procés %d estan adjunts a aquesta " +"impressora. Aquests perfils se suprimirien si se suprimeix la impressora." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "Els perfils heretats per altres perfils no es poden eliminar!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Els següent perfil hereta aquesta d'aquest altre." +msgstr[1] "Els següents perfils hereten d'aquest altre." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Perfil" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "El següent perfil també se suprimirà." +msgstr[1] "Els següents perfils també se suprimiran." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Esteu segur que voleu suprimir el perfil seleccionat? \n" +"Si el perfil correspon a un filament que s'utilitza actualment a la " +"impressora, restabliu la informació del filament per a aquesta ranura." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Segur que voleu %1% el perfil seleccionat?" + +msgid "All" +msgstr "Tots" + +msgid "Set" +msgstr "Establir" + +msgid "Click to reset current value and attach to the global value." +msgstr "Feu clic per esborrar el valor actual i agafar el valor global." + +msgid "Click to drop current modify and reset to saved value." +msgstr "Feu clic per ignorar la modificació actual i restablir el valor desat." + +msgid "Process Settings" +msgstr "Configuració del procés" + +msgid "Undef" +msgstr "No definit" + +msgid "Unsaved Changes" +msgstr "Canvis no desats" + +msgid "Transfer or discard changes" +msgstr "Transferir o descartar canvis" + +msgid "Old Value" +msgstr "Valor antic" + +msgid "New Value" +msgstr "Valor nou" + +msgid "Transfer" +msgstr "Transferir" + +msgid "Don't save" +msgstr "No desar" + +msgid "Discard" +msgstr "Descartar" + +msgid "Click the right mouse button to display the full text." +msgstr "Feu clic amb el botó dret del ratolí per mostrar el text complet." + +msgid "All changes will not be saved" +msgstr "Els canvis no es desaran" + +msgid "All changes will be discarded." +msgstr "Els canvis seran descartats." + +msgid "Save the selected options." +msgstr "Desar les opcions seleccionades." + +msgid "Keep the selected options." +msgstr "Mantenir les opcions seleccionades." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Transferir les opcions seleccionades al nou perfil seleccionat." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Desar les opcions seleccionades al perfil \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Transferir les opcions seleccionades al nou perfil seleccionat \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "El perfil \"%1%\" conté els següents canvis no desats:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"El perfil \"%1%\" no és compatible amb el nou perfil d'impressora i conté " +"els següents canvis no desats:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"El perfil \"%1%\" no és compatible amb el nou perfil de procés i conté els " +"següents canvis no desats:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "" +"Heu canviat alguns paràmetres de la configuració predeterminada \"%1%\". " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"Podeu desar o descartar els valors predefinits que heu modificat." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" +"\n" +"Podeu desar o descartar els valors predefinits que heu modificat o bé " +"transferir els valors que heu modificat a la nova configuració " +"predeterminada." + +msgid "You have previously modified your settings." +msgstr "Has modificat prèviament la configuració." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"Podeu descartar els valors predefinits que heu modificat o transferir els " +"valors modificats al nou projecte" + +msgid "Extruders count" +msgstr "Nombre d'extrusors" + +msgid "General" +msgstr "General" + +msgid "Capabilities" +msgstr "Capacitats" + +msgid "Show all presets (including incompatible)" +msgstr "Mostra tots els perfils ( inclosos els incompatibles )" + +msgid "Select presets to compare" +msgstr "Seleccioneu els perfils a comparar" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "Només es pot transferir al perfil actiu actual perquè s'ha modificat." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"Transferiu les opcions seleccionades des del perfil a l'esquerra cap a la " +"dreta.\n" +"Nota: Els nous perfils modificats se seleccionaran a les pestanyes de " +"configuració després de tancar aquest quadre de diàleg." + +msgid "Transfer values from left to right" +msgstr "Transfereix valors d'esquerra a dreta" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" +"Si està habilitat, aquest diàleg es pot utilitzar per transferir els valors " +"seleccionats del perfil esquerra cap a la dreta." + +msgid "Add File" +msgstr "Afegir arxiu" + +msgid "Set as cover" +msgstr "Establir com a coberta" + +msgid "Cover" +msgstr "Coberta" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "El nom \"%1%\" ja existeix." + +msgid "Basic Info" +msgstr "Informació Bàsica" + +msgid "Pictures" +msgstr "Imatges" + +msgid "Bill of Materials" +msgstr "Llista de materials" + +msgid "Assembly Guide" +msgstr "Guia de muntatge" + +msgid "Author" +msgstr "Autor" + +msgid "Model Name" +msgstr "Nom del model" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Actualització" + +msgid "A new version is available" +msgstr "Una nova versió està disponible" + +msgid "Configuration update" +msgstr "Actualització de la configuració" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "Un nou paquet de configuració està disponible, Vols instal·lar-lo?" + +msgid "Description:" +msgstr "Descripció:" + +msgid "Configuration incompatible" +msgstr "Configuració incompatible" + +msgid "the configuration package is incompatible with current application." +msgstr "el paquet de configuració és incompatible amb l'aplicació actual." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"El paquet de configuració és incompatible amb l'aplicació actual.\n" +"%s actualitzarà el paquet de configuració, En cas contrari no podrà iniciar-" +"se" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Sortir %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "el paquet Configuració és incompatible amb l'aplicació actual." + +msgid "Configuration updates" +msgstr "Actualitzacions de configuració" + +msgid "No updates available." +msgstr "No hi ha actualitzacions disponibles." + +msgid "The configuration is up to date." +msgstr "La configuració està actualitzada." + +msgid "Obj file Import color" +msgstr "Importar color de l'arxiu Obj" + +msgid "Specify number of colors:" +msgstr "Especificar el nombre de colors:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "El recompte de colors ha d'estar en rang [%d, %d]." + +msgid "Recommended " +msgstr "Recomanat " + +msgid "Current filament colors:" +msgstr "Color del filament predeterminat:" + +msgid "Quick set:" +msgstr "Configuració ràpida:" + +msgid "Color match" +msgstr "Concordança de color" + +msgid "Approximate color matching." +msgstr "Concordança aproximada de color." + +msgid "Append" +msgstr "Afegir" + +msgid "Add consumable extruder after existing extruders." +msgstr "Afegiu extrusora consumible després dels extrusors existents." + +msgid "Reset mapped extruders." +msgstr "Restableix els extrusors mapejats." + +msgid "Cluster colors" +msgstr "Colors del clúster" + +msgid "Map Filament" +msgstr "Mapejar Filament" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Nota: El color ha estat seleccionat, podeu triar D'acord \n" +" per continuar-lo o ajustar-lo manualment." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Advertència:El recompte de nous afegits i \n" +" Els extrusors de corrent superen els 16." + +msgid "Ramming customization" +msgstr "Configuració de Moldejat de punta( Ramming )" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"Moldejat de punta( Ramming ) es refereix a l'extrusió ràpida just abans d'un " +"canvi de filament en una impressora Multi-Material d'un sol extrusor. El seu " +"propòsit és assegurar una forma adequada per a la punta del filament que es " +"descarregarà, perquè no hi hagi problemes en inserir-ne un de nou i perquè " +"es pugui tornar a inserir aquest més tard. Aquesta fase és important i " +"diferents materials poden necessitar diferents velocitats per obtenir la " +"forma correcta. Per aquest motiu, les velocitats extrusió durant el Moldejat " +"de punta( Ramming ) són ajustables.\n" +"\n" +"Aquest és un ajustament per a experts, ajustar-lo incorrectament podria " +"produir embussos, que el pinyó de l'extrusor malmeti el filament, etc." + +msgid "Total ramming time" +msgstr "Temps total de moldejat de punta( ramming )" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "Volum de moldejat de punta( ramming ) total" + +msgid "Ramming line width" +msgstr "Ample de la línia de moldejat de punta( ramming )" + +msgid "Ramming line spacing" +msgstr "Espai entre línies de Moldejat de punta( Ramming )" + +msgid "Auto-Calc" +msgstr "Calcular Automàticament" + +msgid "Re-calculate" +msgstr "Tornar a calcular" + +msgid "Flushing volumes for filament change" +msgstr "Volums de purga per al canvi de filament" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Orca tornarà a calcular els volums de purga cada vegada que canviï el color " +"del filament. Podeu desactivar el recàlcul automàtic a Snapmaker Orca > " +"Preferències" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Volum de purga ( mm³ ) per a cada parell de filaments." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Suggeriment: Volum de Purga en el rang [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "El multiplicador ha d'estar en el rang [%.2f, %.2f]." + +msgid "Multiplier" +msgstr "Multiplicador" + +msgid "unloaded" +msgstr "descarregat" + +msgid "loaded" +msgstr "carregat" + +msgid "Filament #" +msgstr "Filament #" + +msgid "From" +msgstr "Des de" + +msgid "To" +msgstr "A" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" +"El Windows Media Player és necessari per a aquesta tasca. Voleu habilitar el " +"\"Windows Media Player\" per al vostre sistema operatiu?" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" +"BambuSource no s'ha registrat correctament per a la reproducció multimèdia! " +"Premeu Sí per tornar-lo a registrar. Seràs promocionat dues vegades" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" +"Falta el component BambuSource registrat per a la reproducció multimèdia! " +"Torneu a instal·lar BambuStutio o busqueu ajuda postvenda." + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" +"Utilitzar un BambuSource des d'una instal·lació diferent, la reproducció de " +"vídeo pot no funcionar correctament! Premeu Sí per solucionar-ho." + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" +"Al vostre sistema li falten còdecs H.264 per al GStreamer, necessaris per " +"reproduir vídeo. (Proveu d'instal·lar els paquets gstreamer1.0-plugins-bad " +"o gstreamer1.0-libav i, a continuació, reinicieu Snapmaker Orca?)" + +msgid "Bambu Network plug-in not detected." +msgstr "No s'ha detectat el Plug-In de Xarxa Bambu." + +msgid "Click here to download it." +msgstr "Feu clic aquí per descarregar-lo." + +msgid "Login" +msgstr "Iniciar sessió" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "" +"El paquet de configuració s'ha canviat a la Guia de Configuració anterior" + +msgid "Configuration package changed" +msgstr "S'ha canviat el paquet de configuració" + +msgid "Toolbar" +msgstr "Barra d’eines" + +msgid "Objects list" +msgstr "Llista d'objectes" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Importar dades de geometria des de fitxers STL/STEP/3MF/OBJ/AMF" + +msgid "⌘+Shift+G" +msgstr "⌘+Maj+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Maj+G" + +msgid "Paste from clipboard" +msgstr "Enganxa des del porta-retalls" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "" +"Mostrar/Amagar quadre de diàleg Configuració de Dispositius 3Dconnexion" + +msgid "Switch table page" +msgstr "Canviar de pàgina de taula" + +msgid "Show keyboard shortcuts list" +msgstr "Mostrar la llista de dreceres de teclat" + +msgid "Global shortcuts" +msgstr "Dreceres Globals" + +msgid "Rotate View" +msgstr "Rotar la vista" + +msgid "Pan View" +msgstr "Vista Panoràmica" + +msgid "Mouse wheel" +msgstr "Roda del ratolí" + +msgid "Zoom View" +msgstr "Vista amb Zoom" + +msgid "Shift+A" +msgstr "Maj+A" + +msgid "Shift+R" +msgstr "Maj+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Orienta/alinea automàticament els objectes seleccionats o tots els objectes. " +"Si hi ha objectes seleccionats, només orientarà/alinearà els seleccionats. " +"En cas contrari, orientarà/alinearà tots els objectes de la placa actual." + +msgid "Shift+Tab" +msgstr "Maj+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Replegar/Expandir barra lateral" + +msgid "⌘+Any arrow" +msgstr "⌘+Qualsevol fletxa" + +msgid "Movement in camera space" +msgstr "Moviment a l'espai de la càmera" + +msgid "⌥+Left mouse button" +msgstr "⌥+Botó esquerre del ratolí" + +msgid "Select a part" +msgstr "Seleccionar una peça" + +msgid "⌘+Left mouse button" +msgstr "⌘+Botó esquerre del ratolí" + +msgid "Select multiple objects" +msgstr "Seleccionar múltiples objectes" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+Qualsevol fletxa" + +msgid "Alt+Left mouse button" +msgstr "Alt+Botó esquerre del ratolí" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+Botó esquerre del ratolí" + +msgid "Shift+Left mouse button" +msgstr "Maj+Botó esquerre del ratolí" + +msgid "Select objects by rectangle" +msgstr "Seleccionar objectes per rectangle" + +msgid "Arrow Up" +msgstr "Fletxa cap amunt" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Moure la selecció 10 mm en direcció Y positiva" + +msgid "Arrow Down" +msgstr "Fletxa cap avall" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Moure la selecció 10 mm en direcció Y negativa" + +msgid "Arrow Left" +msgstr "Fletxa cap a l’esquerra" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Moure la selecció 10 mm en direcció X negativa" + +msgid "Arrow Right" +msgstr "Fletxa cap a la dreta" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Moure la selecció 10 mm en direcció X positiva" + +msgid "Shift+Any arrow" +msgstr "Maj+Qualsevol fletxa" + +msgid "Movement step set to 1 mm" +msgstr "Pas de moviment configurat a 1 mm" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "teclat 1-9: establir filament per a objecte/peça" + +msgid "Camera view - Default" +msgstr "Vista de càmera - Predeterminada" + +msgid "Camera view - Top" +msgstr "Vista de càmera - Part Superior" + +msgid "Camera view - Bottom" +msgstr "Vista de càmera - Part Inferior" + +msgid "Camera view - Front" +msgstr "Vista de càmera - Frontal" + +msgid "Camera view - Behind" +msgstr "Vista de càmera - Darrere" + +msgid "Camera Angle - Left side" +msgstr "Angle de càmera - Costat Esquerre" + +msgid "Camera Angle - Right side" +msgstr "Angle de càmera - Costat Dret" + +msgid "Select all objects" +msgstr "Seleccionar tots els objectes" + +msgid "Gizmo move" +msgstr "Gizmo de Moviment" + +msgid "Gizmo scale" +msgstr "Gizmo d'Escala" + +msgid "Gizmo rotate" +msgstr "Gizmo de Rotació" + +msgid "Gizmo cut" +msgstr "Gizmo de Tall" + +msgid "Gizmo Place face on bed" +msgstr "Gizmo de Recolzament sobre la Cara a la placa" + +msgid "Gizmo SLA support points" +msgstr "Gizmo de Punts de suport SLA" + +msgid "Gizmo FDM paint-on seam" +msgstr "Eina de Pintat de costures FDM" + +msgid "Gizmo Text emboss / engrave" +msgstr "Gizmo de Text en relleu / gravat" + +msgid "Zoom in" +msgstr "Augmentar zoom" + +msgid "Zoom out" +msgstr "Reduir zoom" + +msgid "Switch between Prepare/Preview" +msgstr "Canviar entre Preparar/Previsualitzar" + +msgid "Plater" +msgstr "Plataforma" + +msgid "Move: press to snap by 1mm" +msgstr "Moure: Clicka per ajustar en passos d'1 mm" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Roda del ratolí" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Suport/Pintat de color: configuració del radi de la ploma" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Roda del ratolí" + +msgid "Support/Color Painting: adjust section position" +msgstr "Suport/Pintat de color: configuració de la posició de la secció" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Roda del ratolí" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Roda del ratolí" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Establir el número d'extrusor per als objectes i les peces" + +msgid "Delete objects, parts, modifiers " +msgstr "Eliminar objectes, peces, modificadors " + +msgid "Select the object/part and press space to change the name" +msgstr "Seleccioneu l'objecte/peça i premeu espai per canviar-ne el nom" + +msgid "Mouse click" +msgstr "Feu clic amb el ratolí" + +msgid "Select the object/part and mouse click to change the name" +msgstr "Seleccioneu l'objecte/peça i feu clic amb el ratolí per canviar el nom" + +msgid "Objects List" +msgstr "Llista d'Objectes" + +msgid "Vertical slider - Move active thumb Up" +msgstr "" +"Barra de desplaçament Vertical - Mou el barra de desplaçament actiu cap Amunt" + +msgid "Vertical slider - Move active thumb Down" +msgstr "" +"Barra de desplaçament Vertical - Mou el barra de desplaçament actiu cap Avall" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "" +"Barra de desplaçament Horitzontal - Mou el barra de desplaçament actiu cap a " +"l'Esquerra" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "" +"Barra de desplaçament Horitzontal - Mou la barra de desplaçament activa cap " +"a la Dreta" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "" +"Activar/desactivar el mode de capa única de la barra de desplaçament vertical" + +msgid "On/Off g-code window" +msgstr "Activar/Desactivar finestra de Codi-G" + +msgid "Move slider 5x faster" +msgstr "Moure la barra de desplaçament 5 vegades més ràpid" + +msgid "Shift+Mouse wheel" +msgstr "Maj+Roda del ratolí" + +msgid "Horizontal slider - Move to start position" +msgstr "Control lliscant horitzontal - Mou fins a la posició inicial" + +msgid "Horizontal slider - Move to last position" +msgstr "Control lliscant horitzontal - Mou a l'última posició" + +msgid "Release Note" +msgstr "Notes de la versió" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "informació d'actualització de la versió %s:" + +msgid "Network plug-in update" +msgstr "Actualització del plugin de Xarxa" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Feu clic a D'acord per actualitzar el plugin de Xarxa la propera vegada que " +"s'executi Snapmaker Orca." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "Un nou plugin de Xarxa( %s ) disponible, Vols instal·lar-lo?" + +msgid "New version of Snapmaker Orca" +msgstr "Nova versió d'Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Omet aquesta versió" + +msgid "Done" +msgstr "Fet" + +msgid "resume" +msgstr "reprendre" + +msgid "Resume Printing" +msgstr "Reprendre Impressió" + +msgid "Resume Printing(defects acceptable)" +msgstr "Reprendre la impressió (defectes acceptables)" + +msgid "Resume Printing(problem solved)" +msgstr "Reprendre la impressió (problema resolt)" + +msgid "Stop Printing" +msgstr "Deixar d'imprimir" + +msgid "Check Assistant" +msgstr "Assistent de comprovació" + +msgid "Filament Extruded, Continue" +msgstr "Filament Extruït, Continuar" + +msgid "Not Extruded Yet, Retry" +msgstr "Encara no s'ha Extruït, Tornar a Intentar-ho" + +msgid "Finished, Continue" +msgstr "Finalitzat, Continuar" + +msgid "Load Filament" +msgstr "Carregar Filament" + +msgid "Filament Loaded, Resume" +msgstr "Filament carregat, reprendre" + +msgid "View Liveview" +msgstr "Veure Liveview" + +msgid "Confirm and Update Nozzle" +msgstr "Confirmar i Actualitzar el broquet" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "" +"S'ha produït un error en la Connexió de Xarxa LAN ( Enviant un fitxer " +"d'impressió )" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Pas 1: Confirmeu que Snapmaker Orca i la impressora es troben a la mateixa LAN." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Pas 2: Si la IP i el Codi d'Accés següent són diferents dels valors reals de " +"la impressora, corregiu-los." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Clau d'Accés" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "On podeu trobar la IP i el Codi d'Accés de la impressora?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"Pas 3: Feu ping a l'adreça IP per comprovar si hi ha pèrdua de paquets i " +"latència." + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP i Codi d'Accés verificats! Podeu tancar la finestra" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "S'ha produït un error de Connexió, comproveu la IP i el Codi d'Accés" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Ha fallat la connexió! Si la teva IP i el teu Codi d'Accés són correctes, \n" +"Aneu al pas 3 per resoldre problemes de xarxa" + +msgid "Model:" +msgstr "Model:" + +msgid "Serial:" +msgstr "Número de Sèrie:" + +msgid "Version:" +msgstr "Versió:" + +msgid "Update firmware" +msgstr "Actualitzar el firmware" + +msgid "Beta version" +msgstr "Versió beta" + +msgid "Latest version" +msgstr "Última versió" + +msgid "Updating" +msgstr "Actualitzant" + +msgid "Updating failed" +msgstr "S'ha produït un error en l'actualització" + +msgid "Updating successful" +msgstr "Actualització correcta" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Segur que vols actualitzar? Trigarà uns 10 minuts. No l'apagueu mentre la " +"impressora s'actualitza." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"S'ha detectat una actualització important i s'ha d'executar abans que la " +"impressió pugui continuar. Vols actualitzar ara? També podeu actualitzar més " +"endavant des de \"Actualitzar el firmware\"." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"La versió del firmware és anormal. Cal reparar i actualitzar-lo abans " +"d'imprimir. Vols actualitzar-lo ara? També podeu actualitzar-lo més endavant " +"a la impressora o actualitzar-lo la propera vegada que s'iniciï l'Orca." + +msgid "Extension Board" +msgstr "Targeta d'Ampliació" + +msgid "Saving objects into the 3mf failed." +msgstr "El desament d'objectes al 3mf no ha funcionat." + +msgid "Only Windows 10 is supported." +msgstr "Només s'admet Windows 10." + +msgid "Failed to initialize the WinRT library." +msgstr "No s'ha pogut inicialitzar la biblioteca WinRT." + +msgid "Exporting objects" +msgstr "Exportant objectes" + +msgid "Failed loading objects." +msgstr "Error en la càrrega d'objectes." + +msgid "Repairing object by Windows service" +msgstr "Reparant l'objecte pel servei de Windows" + +msgid "Repair failed." +msgstr "No s'ha pogut reparar." + +msgid "Loading repaired objects" +msgstr "Carregant els objectes reparats" + +msgid "Exporting 3mf file failed" +msgstr "S'ha produït un error en l'exportació del fitxer 3mf" + +msgid "Import 3mf file failed" +msgstr "S'ha produït un error en l'importació del fitxer 3mf" + +msgid "Repaired 3mf file does not contain any object" +msgstr "El fitxer 3MF reparat no conté cap objecte" + +msgid "Repaired 3mf file contains more than one object" +msgstr "El fitxer 3MF reparat conté més d'un objecte" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "El fitxer 3MF reparat no conté cap volum" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "El fitxer 3MF reparat conté més d'un volum" + +msgid "Repair finished" +msgstr "Reparació finalitzada" + +msgid "Repair canceled" +msgstr "Reparació cancel·lada" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "La còpia del fitxer %1% a %2% ha fallat: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" +"Cal comprovar els canvis no desats abans de les actualitzacions de " +"configuració." + +msgid "Configuration package: " +msgstr "Paquet de configuració: " + +msgid " updated to " +msgstr " actualitzat a " + +msgid "Open G-code file:" +msgstr "Obre el fitxer de Codi-G:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Un objecte té la capa inicial buida i no es pot imprimir. Si us plau, talleu " +"el fons o activeu els suports." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "" +"L'objecte no es pot imprimir degut a que hi ha una capa buida entre %1% i " +"%2%." + +#, boost-format +msgid "Object: %1%" +msgstr "Objecte: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Potser parts de l'objecte a aquesta alçada són massa primes, o l'objecte té " +"una malla defectuosa" + +msgid "No object can be printed. Maybe too small" +msgstr "No es pot imprimir cap objecte. Potser que sigui massa petit" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"No s'ha pogut generar el Codi-G per un Codi-G personalitzat no vàlid.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" +"Comproveu el Codi-G personalitzat o utilitzeu el Codi-G personalitzat " +"predeterminat." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Generant Codi-G: capa %1%" + +msgid "Inner wall" +msgstr "Perímetre interior" + +msgid "Outer wall" +msgstr "Perímetre exterior" + +msgid "Overhang wall" +msgstr "Perímetre de voladís" + +msgid "Sparse infill" +msgstr "Farciment poc dens" + +msgid "Internal solid infill" +msgstr "Farciment sòlid intern" + +msgid "Top surface" +msgstr "Farciment sòlid superior" + +msgid "Bottom surface" +msgstr "Farciment sòlid inferior" + +msgid "Internal Bridge" +msgstr "Pont Interior" + +msgid "Gap infill" +msgstr "Ompliment de buits" + +msgid "Support interface" +msgstr "Interfície de suport" + +msgid "Support transition" +msgstr "Transició de suport" + +msgid "Multiple" +msgstr "Múltiple" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"No s'ha pogut calcular l'amplada de línia de %1%. No es pot obtenir valor de " +"\"%2%\" " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Espaiat no vàlid subministrat a Flow::with_spacing( ), comproveu l'alçada " +"de la capa i l'amplada d'extrusió" + +msgid "undefined error" +msgstr "error indefinit" + +msgid "too many files" +msgstr "massa arxius" + +msgid "file too large" +msgstr "fitxer massa gran" + +msgid "unsupported method" +msgstr "mètode no compatible" + +msgid "unsupported encryption" +msgstr "encriptació no compatible" + +msgid "unsupported feature" +msgstr "característica no compatible" + +msgid "failed finding central directory" +msgstr "no s'ha trobat el directori central" + +msgid "not a ZIP archive" +msgstr "no és un arxiu ZIP" + +msgid "invalid header or corrupted" +msgstr "capçalera no vàlida o malmesa" + +msgid "unsupported multidisk" +msgstr "multidisk no compatible" + +msgid "decompression failed" +msgstr "la descompressió ha fallat" + +msgid "compression failed" +msgstr "la compressió ha fallat" + +msgid "unexpected decompressed size" +msgstr "mida de descompressió inesperada" + +msgid "CRC check failed" +msgstr "Ha fallat la comprovació del CRC" + +msgid "unsupported central directory size" +msgstr "mida del directori central no compatible" + +msgid "allocation failed" +msgstr "assignació fallida" + +msgid "file open failed" +msgstr "obertura del fitxer fallida" + +msgid "file create failed" +msgstr "creació del fitxer fallida" + +msgid "file write failed" +msgstr "escriptura del fitxer fallida" + +msgid "file read failed" +msgstr "lectura del fitxer fallida" + +msgid "file close failed" +msgstr "tancament del fitxer fallit" + +msgid "file seek failed" +msgstr "cerca de ftitxer fallit" + +msgid "file stat failed" +msgstr "estadística de fitxers fallida" + +msgid "invalid parameter" +msgstr "paràmetre no vàlid" + +msgid "invalid filename" +msgstr "el nom del fitxer no és vàlid" + +msgid "buffer too small" +msgstr "buffer massa petit" + +msgid "internal error" +msgstr "error intern" + +msgid "file not found" +msgstr "arxiu no trobat" + +msgid "archive too large" +msgstr "arxiu massa gran" + +msgid "validation failed" +msgstr "ha fallat la validació" + +msgid "write callback failed" +msgstr "la trucada de recuperació de l'escriptura ha fallat" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% està massa a prop de l'àrea d'exclusió, pot haver-hi col·lisions en " +"imprimir." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% està massa a prop d'altres i es poden produir col·lisions." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% és massa alt i es provocaran col·lisions." + +msgid " is too close to others, there may be collisions when printing." +msgstr " està massa a prop dels altres, pot haver-hi col·lisions en imprimir." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" està massa a prop de l'àrea d'exclusió, pot haver-hi col·lisions en " +"imprimir." + +msgid "Prime Tower" +msgstr "Torre de Purga" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " està massa a prop dels altres, i es poden causar col·lisions.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" +" està massa a prop de la zona d'exclusió, i es provocaran col·lisions.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"No es poden imprimir junts múltiples filaments que tinguin una gran " +"diferència de temperatura. En cas contrari, l'extrusor i el broquet es poden " +"bloquejar o danyar durant la impressió" + +msgid "No extrusions under current settings." +msgstr "No hi ha extrusions a la configuració actual." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"El mode suau de timelapse no està permès quan la seqüència \"Per objecte\" " +"està habilitada." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Seleccioneu la seqüència d'impressió \"Per objecte\" per imprimir diversos " +"objectes en mode Gerro en Espiral." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"El mode Gerro en Espiral no funciona quan un objecte conté més d'un material." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "L'objecte %1% supera l'alçada màxima del volum de construcció." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"Tot i que l'objecte %1% s'adapta al volum de construcció, la seva última " +"capa supera l'alçada màxima del volum de construcció." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"Potser voleu reduir la mida del model o canviar la configuració d'impressió " +"actual i tornar-ho a provar." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "Alçada de Capa Variable no és compatible amb suports Orgànics." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"No es permeten diferents diàmetres de broquet i diferents diàmetres de " +"filament quan s'habilita la Torre de Purga." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"Actualment, la Torre de Purga només és compatible amb el direccionament " +"relatiu de l'extrusor ( use_relative_e_distances=1 )." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"Actualment, la Prevenció d'Ooze( goteig ) no és compatible amb la Torre de " +"Purga habilitada." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"Actualment, la Torre de Purga només és compatible amb els tipus de Codi-G " +"Marlin, RepRap/Sprinter, RepRapFirmware i Repetier." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "La Torre de Purga no està suportada en la impressió \"Per objecte\"." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"La Torre de Purga no està suportada quan l'Alçada de Capa Adaptativa està " +"activada. Requereix que tots els objectes tinguin la mateixa alçada de capa." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"La Torre de Purga requereix que el \"distància de suport\" sigui múltiple de " +"l'alçada de capa" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" +"La Torre de Purga requereix que tots els objectes tinguin les mateixes " +"alçades de capa" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"La Torre de Purga requereix que tots els objectes s'imprimeixin sobre el " +"mateix nombre de capes de Vora d'Adherència" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"La Torre de Purga requereix que tots els objectes estiguin laminats amb les " +"mateixes alçades de capa." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"La Torre de Purga només està suportat si tots els objectes tenen la mateixa " +"alçada variable de capa" + +msgid "Too small line width" +msgstr "Amplada de línia massa petita" + +msgid "Too large line width" +msgstr "Amplada de línia massa gran" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"La Torre de Purga requereix que el suport tingui la mateixa alçada de capa " +"amb objecte." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"El diàmetre de la punta de l'arbre de suport orgànic no ha de ser menor que " +"l'amplada d'extrusió del material de suport." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"El diàmetre de la branca de suport orgànic no ha de ser inferior a 2x " +"l'amplada d'extrusió del material de suport." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"El diàmetre de la branca de suport orgànic no ha de ser més petit que el " +"diàmetre de la punta de l'arbre de suport." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"S'usen suports forçats, però el suport no està habilitat. Si us plau, " +"habiliteu el suport." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "L'alçada de la capa no pot superar el diàmetre del broquet" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"El direccionament relatiu de l'extrusor requereix restablir la posició de " +"l'extrusor a cada capa per evitar la pèrdua de precisió de coma flotant. " +"Afegiu \"G92 E0\" a layer_gcode." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"\"G92 E0\" s'ha trobat a before_layer_gcode, el qual és incompatible amb el " +"direccionament absolut d'extrusor." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"\"G92 E0\" s'ha trobat a layer_gcode, el qual és incompatible amb el " +"direccionament absolut d'extrusor." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "La placa %d: %s no admet el filament %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" +"Establir la velocitat de sacsejada( Jerk ) massa baixa podria conduir a " +"defectes en superfícies corbes" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"La configuració de la sacsejada( Jerk ) supera la sacsejada màxima de la " +"impressora (machine_max_jerk_x/machine_max_jerk_y).\n" +"L'Orca limitarà automàticament la velocitat de sacsejada per assegurar-se " +"que no superi les capacitats de la impressora.\n" +"Podeu ajustar la configuració de sacsejada màxima a la configuració de la " +"impressora per obtenir velocitats més altes." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"La configuració d'acceleració supera l'acceleració màxima " +"(machine_max_acceleration_extruding).\n" +"L'Orca limitarà automàticament la velocitat d'acceleració per assegurar-se " +"que no superi les capacitats de la impressora.\n" +"Podeu ajustar el valor machine_max_acceleration_extruding a la configuració " +"de la impressora per obtenir velocitats més altes." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"La configuració de l'acceleració de deplaçament supera l'acceleració màxima " +"de desplaçament (machine_max_acceleration_travel) de la impressora.\n" +"L'Orca limitarà automàticament la velocitat d'acceleració de viatge per " +"assegurar-se que no superi les capacitats de la impressora.\n" +"Podeu ajustar el valor machine_max_acceleration_travel a la configuració de " +"la impressora per obtenir velocitats més altes." + +msgid "Generating skirt & brim" +msgstr "Generant Faldilla i Vora d'Adherència" + +msgid "Exporting G-code" +msgstr "Exportant el Codi-G" + +msgid "Generating G-code" +msgstr "Generant el Codi-G" + +msgid "Failed processing of the filename_format template." +msgstr "Error en el processament de la plantilla filename_format." + +msgid "Printable area" +msgstr "Àrea imprimible" + +msgid "Bed exclude area" +msgstr "Zona d'exclusió de la placa" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Àrea no imprimible en el plànol XY. Per exemple, les impressores de la sèrie " +"X1 utilitzen la cantonada frontal esquerra per tallar el filament durant el " +"canvi de filament. L'àrea s'expressa com a polígon per punts en el format " +"següent: \"XxY, XxY, ...\"" + +msgid "Bed custom texture" +msgstr "Textura personalitzada de la placa" + +msgid "Bed custom model" +msgstr "Model personalitzat de la placa" + +msgid "Elephant foot compensation" +msgstr "Compensació de Peu d'Elefant" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Redueix la capa inicial a la placa d'impressió per compensar l'efecte de Peu " +"d'Elefant" + +msgid "Elephant foot compensation layers" +msgstr "Capes de compensació de Peu d'Elefant" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"El nombre de capes sobre les quals estarà activa la compensació de Peu " +"d'Elefant. La primera capa es reduirà pel valor de compensació de Peu " +"d'Elefant, després les següents capes es reduiran linealment menys, fins a " +"la capa indicada per aquest valor." + +msgid "layers" +msgstr "capes" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Alçada de laminat per a cada capa. Una alçada de capa més petita significa " +"més precisió i més temps d'impressió" + +msgid "Printable height" +msgstr "Alçada imprimible" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "L'alçada màxima imprimible està limitada pel mecanisme d'impressora" + +msgid "Preferred orientation" +msgstr "Orientació preferida" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" +"Orientar automàticament els stls a l'eix Z després de la importació inicial" + +msgid "Printer preset names" +msgstr "Noms de perfils de la impressora" + +msgid "Use 3rd-party print host" +msgstr "Utilitzeu l'amfitrió d'impressió de 3a part" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" +"Permetre controlar la impressora de BambuLab a través d'amfitrions " +"d'impressió de 3 ª part" + +msgid "Hostname, IP or URL" +msgstr "Nom d'equip, IP o URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca pot pujar fitxers G-Code a una impressora. Aquest camp hauria de " +"contenir el nom de Host, l'adreça IP o l'URL de la instància de la " +"impressora. Es pot accedir a la impressora darrere d'un proxy amb " +"l'autenticació bàsica activada per un nom d'usuari i contrasenya a la URL en " +"el format següent: https://nomusuari:contrasenya@adreça-octopi/" + +msgid "Device UI" +msgstr "Interfície d'Usuari del dispositiu" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Especifiqueu l'URL de la interfície d'usuari del dispositiu si no és el " +"mateix que print_host" + +msgid "API Key / Password" +msgstr "Clau API / Contrasenya" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca pot pujar fitxers de Codi-G a una impressora. Aquest camp ha de " +"contenir la clau API o la contrasenya necessària per a l'autenticació." + +msgid "Name of the printer" +msgstr "Nom de la impressora" + +msgid "HTTPS CA File" +msgstr "Arxiu HTTPS CA" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Un fitxer de certificat CA personalitzat pot ser especificat per a " +"connexions HTTPS d'OctoPrint, en format crt/pem. Si es deixa en blanc, el " +"repositori de certificats CA del SO serà usat." + +msgid "User" +msgstr "Usuari" + +msgid "Password" +msgstr "Contrasenya" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Ignorar les comprovacions de revocació de certificats HTTPS" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ignorar les comprovacions de revocació de certificats HTTPS en cas que " +"faltin punts de distribució o estiguin desconnectats. Hom pot voler " +"habilitar aquesta opció per als certificats autosignats si la connexió falla." + +msgid "Names of presets related to the physical printer" +msgstr "Noms dels perfils relacionats amb la impressora física" + +msgid "Authorization Type" +msgstr "Tipus d'autorització" + +msgid "API key" +msgstr "Codi API" + +msgid "HTTP digest" +msgstr "HTTP-Digest" + +msgid "Avoid crossing wall" +msgstr "Evitar creuar perímetre" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Desviar i evitar travessar el perímetre ja que podria produir grumolls a la " +"superfície" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Evitar creuar el perímetre - Longitud màxima del desviament" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Distància màxima de desviament per evitar creuar perímetres. No desviar si " +"la distància del desviament és major que aquest valor. La longitud del " +"desviament es pot especificar com a valor absolut o com a percentatge ( per " +"exemple, el 50% ) d'una trajectòria de desplaçament directa. Zero per " +"desactivar" + +msgid "mm or %" +msgstr "mm o %" + +msgid "Other layers" +msgstr "Altres capes" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Temperatura del llit de les capes excepte la inicial. El valor 0 significa " +"que el filament no admet imprimir a una Base Freda" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Temperatura del llit de les capes excepte la inicial. El valor 0 significa " +"que el filament no admet imprimir a la Base d'Enginyeria" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Temperatura del llit de les capes excepte la inicial. El valor 0 significa " +"que el filament no admet imprimir a la Base d'Alta Temperatura" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Temperatura del llit de les capes excepte la inicial. El valor 0 significa " +"que el filament no admet imprimir a la Base PEI amb Textura" + +msgid "Initial layer" +msgstr "Capa inicial" + +msgid "Initial layer bed temperature" +msgstr "Temperatura del llit en la capa inicial" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Temperatura del llit en la capa inicial. El valor 0 significa que el " +"filament no admet imprimir a la Base Freda" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Temperatura del llit en la capa inicial. El valor 0 significa que el " +"filament no admet imprimir a la Base d'Enginyeria" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Temperatura del llit en la capa inicial. El valor 0 significa que el " +"filament no admet imprimir a la Base d'Alta Temperatura" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Temperatura del llit en la capa inicial. El valor 0 significa que el " +"filament no admet imprimir a la Base PEI amb Textura" + +msgid "Bed types supported by the printer" +msgstr "Tipus de llit suportats per la impressora" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "Base d'Enginyeria" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "Seqüència d'impressió de primera capa" + +msgid "Other layers print sequence" +msgstr "Seqüència d'impressió d'altres capes" + +msgid "The number of other layers print sequence" +msgstr "El nombre d'altres capes de la seqüència d'impressió" + +msgid "Other layers filament sequence" +msgstr "Seqüència de filaments d'altres capes" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "Aquest Codi-G s'insereix en cada canvi de capa abans d'aixecar z" + +msgid "Bottom shell layers" +msgstr "Capes de la carcassa inferior" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Aquest és el nombre de capes sòlides de la carcassa inferior, inclosa la " +"capa superficial inferior. Quan el gruix calculat per aquest valor sigui més " +"prim que el gruix de la carcassa inferior, s'augmentaran les capes inferiors " +"de la carcassa" + +msgid "Bottom shell thickness" +msgstr "Gruix mínim de la carcassa inferior" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"El nombre de capes sòlides inferiors s'incrementa en laminar si el gruix " +"calculat per les capes inferiors de la carcassa és més prim que aquest " +"valor. Això pot evitar tenir una carcassa massa fina quan l'alçada de la " +"capa és petita. 0 significa que aquest ajustament està desactivat i que el " +"gruix de la carcassa inferior està absolutament determinat per les capes " +"inferiors de la carcassa" + +msgid "Apply gap fill" +msgstr "Aplicar farciment de buits" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"Habilita farciment de buits per a les superfícies seleccionades. El mínim " +"del forat que s'omplirà es pot controlar des de l'opció filtrar forats " +"petits a continuació.\n" +"\n" +"Opcions:\n" +"1. A tot arreu: aplica farciment de buits a superfícies sòlides superiors, " +"inferiors i internes\n" +"2. Superfícies superiors i inferiors: aplica farciment de buit només a " +"superfícies superiors i inferiors\n" +"3. Enlloc: desactiva el farciment de buits\n" + +msgid "Everywhere" +msgstr "A tot arreu" + +msgid "Top and bottom surfaces" +msgstr "Superfícies superior i inferior" + +msgid "Nowhere" +msgstr "Enlloc" + +msgid "Force cooling for overhang and bridge" +msgstr "Força la refrigeració per voladís i pont" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Activeu aquesta opció per optimitzar la velocitat del ventilador de " +"refrigeració de peces per a Voladís i Pont i obtenir una millor refrigeració" + +msgid "Fan speed for overhang" +msgstr "Velocitat del ventilador per voladís" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Forçar el ventilador de refrigeració de la peça a tenir aquesta velocitat " +"quan imprimeix un pont o un perímetre voladís que tingui un gran grau de " +"voladís. Forçar la refrigeració per voladís i pont pot millorar la qualitat " +"de les peces" + +msgid "Cooling overhang threshold" +msgstr "Llindar de voladís de refrigeració" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Força el ventilador de refrigeració a una velocitat específica quan el grau " +"de voladís de la peça impresa excedeix aquest valor. Expressat com a " +"percentatge, indica l'amplada de la línia sense suport de la capa inferior. " +"0%% significa forçar la refrigeració de tot el perímetre exterior sense " +"importar el grau de voladís" + +msgid "Bridge infill direction" +msgstr "Angle del farciment del pont" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Sobreescriptura de l'angle de pont. Si es deixa a zero, l'angle de pont es " +"calcularà automàticament. En cas contrari, l'angle proporcionat s'utilitzarà " +"per als ponts externs. Utilitzeu 180° per a l'angle zero." + +msgid "Bridge density" +msgstr "Densitat del pont" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Densitat dels ponts exteriors. 100% significa pont sòlid. Per defecte és del " +"100%." + +msgid "Bridge flow ratio" +msgstr "Ratio de flux del pont" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Disminuïu lleugerament aquest valor ( per exemple 0,9 ) per reduir la " +"quantitat de material per al pont, per millorar l'enfonsament" + +msgid "Internal bridge flow ratio" +msgstr "Ratio de flux del pont intern" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"Aquest valor regeix el gruix de la capa de pont intern. Aquesta és la " +"primera capa sobre el farciment poc dens. Disminuïu lleugerament aquest " +"valor ( per exemple 0,9 ) per millorar la qualitat de la superfície sobre el " +"farciment poc dens." + +msgid "Top surface flow ratio" +msgstr "Ratio de flux superficial superior" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Aquest factor afecta la quantitat de material per al farciment sòlid " +"superior. Podeu disminuir-lo lleugerament per tenir un acabat superficial " +"suau" + +msgid "Bottom surface flow ratio" +msgstr "Ratio de flux superficial inferior" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" +"Aquest factor afecta la quantitat de material per al farciment sòlid inferior" + +msgid "Precise wall" +msgstr "Perímetre precís" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"Millora la precisió de la carcassa ajustant l'espaiat del perímetre més " +"exterior. Això també millora la consistència de la capa.\n" +"Nota: Aquest paràmetre només tindrà efecte si la seqüència de paret està " +"configurada a Interior-Exterior" + +msgid "Only one wall on top surfaces" +msgstr "Només un perímetre a les superfícies superiors" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Utilitzeu només un perímetre a la superfície superior plana per donar més " +"espai al patró de farciment superior" + +msgid "One wall threshold" +msgstr "Llindar d'un sol perímetre" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Si s'ha d'imprimir una superfície superior i està parcialment coberta per " +"una altra capa, no es considerarà una capa superior si la seva amplada és " +"inferior a aquest valor. Això pot ser útil per no deixar que el \"perímetre " +"a la part superior\" s'activi quan les superfícies estan pensades per ser " +"cobertes només per perímetres. Aquest valor es pot especificar en mm o com a " +"% de l'amplada d'extrusió perimetral.\n" +"Advertència: Si està activat, es poden produir artefactes si teniu alguna " +"característica fina a la capa següent, com ara lletres. Establiu aquest " +"paràmetre a 0 per eliminar aquests artefactes." + +msgid "Only one wall on first layer" +msgstr "Només un perímetre a la primera capa" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Utilitzeu només una perímetre a la primera capa per donar més espai al patró " +"de farciment inferior" + +msgid "Extra perimeters on overhangs" +msgstr "Perímetres addicionals en voladissos ( Experimental )" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Crear camins perimetrals addicionals sobre voladissos pronunciats i zones on " +"no es poden ancorar ponts. " + +msgid "Reverse on odd" +msgstr "Invertir en capes senars" + +msgid "Overhang reversal" +msgstr "Inversió del voladís" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"Extruir perímetres que tenen una part sobre un voladís en sentit invers en " +"capes senars. Aquest patró alternatiu pot millorar dràsticament els " +"voladissos pronunciats.\n" +"\n" +"Aquest ajustament també pot ajudar a reduir la deformació( warping ) de " +"peces a causa de la reducció de les tensions a les parets de la peça." + +msgid "Reverse only internal perimeters" +msgstr "Invertir només els perímetres interns" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"Aplicar la lògica dels perímetres inversos només sobre perímetres interns. \n" +"\n" +"Aquest ajustament redueix considerablement les tensions de les peces, ja que " +"ara es distribueixen en direccions alternes. Això hauria de reduir la " +"deformació( warping ) de peces alhora que manté la qualitat de la paret " +"externa. Aquesta característica pot ser molt útil per a material propens al " +"warping, com ABS / ASA, i també per a filaments elàstics, com TPU i Silk " +"PLA. També pot ajudar a reduir la deformació( warping ) de les regions " +"flotants sobre els suports.\n" +"\n" +"Perquè aquest ajustament sigui més efectiu, es recomana establir el llindar " +"invers a 0 de manera que totes els perímetres interns s'imprimeixin en " +"direccions alternes en capes senars, independentment del seu grau de voladís." + +msgid "Bridge counterbore holes" +msgstr "Pont pels forats esbocats( contraforats )" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"Aquesta opció crea ponts per a forats de contraforat, permetent imprimir-los " +"sense suport. Els modes disponibles son els següents:\n" +"1. Cap: No es crea cap pont.\n" +"2. Pont parcial: Només una part de la zona no suportada serà pontejada.\n" +"3. Capa de sacrifici: Es crea una capa de pont de sacrifici completa." + +msgid "Partially bridged" +msgstr "Pont parcial" + +msgid "Sacrificial layer" +msgstr "Capa de sacrifici" + +msgid "Reverse threshold" +msgstr "Llindar invers" + +msgid "Overhang reversal threshold" +msgstr "Llindar d'inversió en voladís" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Nombre de mm que ha de tenir el voladís perquè la inversió es consideri " +"útil. Pot ser un % o de l'amplada perimetral.\n" +"El valor 0 permet la inversió en totes les capes senars independentment." + +msgid "Classic mode" +msgstr "Mode clàssic" + +msgid "Enable this option to use classic mode" +msgstr "Activeu aquesta opció per utilitzar el mode clàssic" + +msgid "Slow down for overhang" +msgstr "Alentir la velocitat als voladissos" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Activeu aquesta opció per alentir la impressió per a diferents graus de " +"voladís" + +msgid "Slow down for curled perimeters" +msgstr "Alentir la velocitat per a perímetres corbats" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Activeu aquesta opció per alentir la impressió en zones on potencialment " +"poden existir perímetres corbats" + +msgid "mm/s or %" +msgstr "mm/s o %" + +msgid "External" +msgstr "Extern" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Velocitat per a ponts i perímetres completament en voladís" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "Intern" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Velocitat del pont intern. Si el valor s'expressa en percentatge, es " +"calcularà a partir de la bridge_speed. El valor predeterminat és del 150%." + +msgid "Brim width" +msgstr "Ample de la Vora d'Adherència" + +msgid "Distance from model to the outermost brim line" +msgstr "Distància del model a la línia de la Vora d'Adherència més exterior" + +msgid "Brim type" +msgstr "Tipus de Vora d'Adherència" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Això controla la generació de la Vora d'Adherència a la cara exterior i/o " +"interior dels models. Auto significa que l'amplada de la Vora d'Adherència " +"s'analitza i es calcula automàticament." + +msgid "Brim-object gap" +msgstr "Espai entre la Vora d'Adherència i l'objecte" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Un espai entre la línia de la Vora d'Adherència més interna i l'objecte pot " +"fer que la Vora d'Adherència s'elimini més fàcilment" + +msgid "Brim ears" +msgstr "Orelles de la Vora d'Adherència" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "" +"Només dibuixar la Vora d'Adherència sobre les vores afilades del model." + +msgid "Brim ear max angle" +msgstr "Angle màxim de l'orella" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Angle màxim per deixar aparèixer una orella. \n" +"Si s'estableix en 0, no es crearà cap Vora d'Adherència. \n" +"Si s'estableix a ~ 180, es crearà Vora d'Adherència arreu menys en seccions " +"rectes." + +msgid "Brim ear detection radius" +msgstr "Radi de detecció de l'orella" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"La geometria serà reduïda abans de detectar angles aguts. Aquest paràmetre " +"especifica la longitud mínima de la desviació per a la reducció.\n" +"0 per desactivar" + +msgid "Compatible machine" +msgstr "Màquina compatible" + +msgid "upward compatible machine" +msgstr "màquina compatible ascendent" + +msgid "Compatible machine condition" +msgstr "Condició de màquina compatible" + +msgid "Compatible process profiles" +msgstr "Perfils de processos compatibles" + +msgid "Compatible process profiles condition" +msgstr "Condició de perfils de procés compatibles" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Seqüència d'impressió, capa per capa o objecte per objecte" + +msgid "By layer" +msgstr "Capa" + +msgid "By object" +msgstr "Objecte" + +msgid "Intra-layer order" +msgstr "Ordre intracapa" + +msgid "Print order within a single layer" +msgstr "Ordre d'impressió dins d'una sola capa" + +msgid "As object list" +msgstr "Com a llista d'objectes" + +msgid "Slow printing down for better layer cooling" +msgstr "" +"Reduir la velocitat d'impressió per millorar la refrigeració de les capes" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Activeu aquesta opció per reduir la velocitat d'impressió perquè el temps de " +"la capa final no sigui inferior al llindar de temps de capa a \"Llindar " +"màxim de velocitat del ventilador\", de manera que la capa es pugui refredar " +"durant més temps. Això pot millorar la qualitat de refrigeració de punxes i " +"petits detalls" + +msgid "Normal printing" +msgstr "Impressió normal" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"L'acceleració predeterminada tant de la impressió normal com dels viatges " +"excepte a la capa inicial" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Perfil de filament predeterminat" + +msgid "Default filament profile when switch to this machine profile" +msgstr "" +"Perfil de filament predeterminat quan canvieu a aquest perfil de màquina" + +msgid "Default process profile" +msgstr "Perfil de procés predeterminat" + +msgid "Default process profile when switch to this machine profile" +msgstr "Perfil de procés predeterminat quan canvieu a aquest perfil de màquina" + +msgid "Activate air filtration" +msgstr "Activar la filtració d'aire" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" +"Activar-lo per a una millor filtració de l'aire. Comanda de Codi-G: M106 P3 " +"S( 0-255 )" + +msgid "Fan speed" +msgstr "Velocitat del ventilador" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Velocitat del ventilador d'extracció durant la impressió. Aquesta velocitat " +"sobreescriurà la velocitat del Codi-G personalitzat del filament" + +msgid "Speed of exhaust fan after printing completes" +msgstr "Velocitat del ventilador d'extracció després de completar la impressió" + +msgid "No cooling for the first" +msgstr "Sense refrigeració per a les primeres" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Apagar tots el ventiladors de refrigeració per a les primeres capes. El " +"ventilador de refrigeració de la primera capa ha d'estar apagat per obtenir " +"una millor adhesió a la placa d'impressió" + +msgid "Don't support bridges" +msgstr "No suportar ponts" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"No posar suports a tot el pont, reduint la quantitat de suports necessaris. " +"Els ponts normalment es poden imprimir directament sense suports si no són " +"molt llargs" + +msgid "Thick bridges" +msgstr "Ponts gruixuts" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Si esta activat, els ponts seran més fiables, poden abastar distàncies més " +"llargues però poden tenir pitjor aspecte. Si es desactiva, els ponts es " +"veuran millor però només seran fiables per a distàncies de pont més curtes." + +msgid "Thick internal bridges" +msgstr "Ponts interiors gruixuts" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"Si està habilitat, s'utilitzaran ponts interns gruixuts. Normalment es " +"recomana tenir activada aquesta funció. Tanmateix, penseu a desactivar-lo si " +"utilitzeu broquets grans." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "No filtrar els petits ponts interns ( beta )" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"Aquesta opció pot ajudar a reduir la formació de forats a les superfícies " +"superiors en models molt inclinats o corbats.\n" +"\n" +"Per defecte, es filtren petits ponts interns i el farciment sòlid intern " +"s'imprimeix directament sobre el farciment poc dens. Això funciona bé en la " +"majoria dels casos, accelerant la impressió sense comprometre massa la " +"qualitat superior de la superfície. \n" +"\n" +"No obstant això, en models molt inclinats o corbats, especialment on " +"s'utilitza una densitat de farciment massa baixa i escassa, això pot " +"resultar en l'enrotllament del farciment sòlid no suportat, causant formació " +"de forats\n" +"\n" +"Si activeu aquesta opció, s'imprimirà la capa de pont intern sobre un " +"farciment sòlid intern lleugerament sense suport. Les opcions següents " +"controlen la quantitat de filtratge, és a dir, la quantitat de ponts interns " +"creats.\n" +"\n" +"Desactivat: desactiva aquesta opció. Aquest és el comportament predeterminat " +"i funciona bé en la majoria dels casos.\n" +"\n" +"Filtratge limitat: crea ponts interns en superfícies molt inclinades, alhora " +"que evita crear ponts interns innecessaris. Això funciona bé per als models " +"més difícils.\n" +"\n" +"Sense filtratge: crea ponts interns sobre tots els voladissos interns " +"potencials. Aquesta opció és útil per a models de superfície superior molt " +"inclinats. No obstant això, en la majoria dels casos crea massa ponts " +"innecessaris." + +msgid "Disabled" +msgstr "Deshabilitat" + +msgid "Limited filtering" +msgstr "Filtratge limitat" + +msgid "No filtering" +msgstr "Sense filtres" + +msgid "Max bridge length" +msgstr "Longitud màxima del pont" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Longitud màxima del pont que no necessita suport. Establiu-lo a 0 si voleu " +"que s'admetin tots els ponts i establiu-lo a un valor molt gran si no voleu " +"que s'admeti cap pont." + +msgid "End G-code" +msgstr "Codi-G Final" + +msgid "End G-code when finish the whole printing" +msgstr "Codi-G Final en acabar tota la impressió" + +msgid "Between Object Gcode" +msgstr "Codi-G entre Objectes" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Inserir Codi-G entre objectes. Aquest paràmetre només s'aplicarà quan " +"imprimiu els models objecte per objecte" + +msgid "End G-code when finish the printing of this filament" +msgstr "Codi-G Final en acabar la impressió d'aquest filament" + +msgid "Ensure vertical shell thickness" +msgstr "Assegurar el gruix de la carcassa vertical" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"Afegir un farciment sòlid a prop de superfícies inclinades per garantir el " +"gruix vertical de la carcassa (capes sòlides superior + inferior)\n" +"Cap: No s'afegirà cap farciment sòlid enlloc. Precaució: utilitzeu aquesta " +"opció amb cura si el vostre model té superfícies inclinades\n" +"Només crític: Evitar afegir farciment sòlid per a parets\n" +"Moderada: Afegir farciment sòlid només per a superfícies molt inclinades\n" +"Tot: Afegir farciment sòlid per a totes les superfícies inclinades aptes\n" +"El valor per defecte és Tot." + +msgid "Critical Only" +msgstr "Només Crític" + +msgid "Moderate" +msgstr "Moderat" + +msgid "Top surface pattern" +msgstr "Patró de superfície superior" + +msgid "Line pattern of top surface infill" +msgstr "Patró de línia del farciment de la superfície superior" + +msgid "Concentric" +msgstr "Concèntric" + +msgid "Rectilinear" +msgstr "Rectilini" + +msgid "Monotonic" +msgstr "Monotònic" + +msgid "Monotonic line" +msgstr "Línia mononotònica" + +msgid "Aligned Rectilinear" +msgstr "Alineat Rectilini" + +msgid "Hilbert Curve" +msgstr "Corba de Hilbert" + +msgid "Archimedean Chords" +msgstr "Acords d'Arquimedes" + +msgid "Octagram Spiral" +msgstr "Octograma en Espiral" + +msgid "Bottom surface pattern" +msgstr "Patró de superfície inferior" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "" +"Patró de línia del farciment de la superfície inferior, no del farciment de " +"pont" + +msgid "Internal solid infill pattern" +msgstr "Patró de farciment sòlid intern" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"Patró lineal de farciment sòlid intern. Si s'habilita la detecció de " +"farciment sòlid intern estret, s'utilitzarà el patró concèntric per a l'àrea " +"petita." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Amplada de línia del perímetre exterior. Si s'expressa en %, es calcularà " +"sobre el diàmetre del broquet." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Velocitat del perímetre més exterior i visible. S'utilitza per ser més lent " +"que la velocitat del perímetre interior a efecte d'obtenir una millor " +"qualitat." + +msgid "Small perimeters" +msgstr "Petits perímetres" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"Aquest ajustament independent afectarà la velocitat dels perímetres amb radi " +"<= small_perimeter_threshold ( normalment orificis ). Si s'expressa com a " +"percentatge ( per exemple: 80% ) es calcula sobre l'ajustament de velocitat " +"del perímetre exterior anterior. Poseu-lo a zero per automàtic." + +msgid "Small perimeters threshold" +msgstr "Llindar de perímetres petits" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"Això estableix el llindar per a la longitud perimetral petita. El llindar " +"predeterminat és de 0mm" + +msgid "Walls printing order" +msgstr "Ordre d'impressió de perímetres" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"Seqüència d'impressió dels perímetres interns ( interior ) i externs " +"( exterior ). \n" +"\n" +"Utilitzeu Interior/Exterior per obtenir els millors voladissos. Això es deu " +"al fet que els perímetres voladissos poden adherir-se a un perímetre proper " +"durant la impressió. No obstant això, aquesta opció es tradueix en una " +"qualitat superficial lleugerament reduïda, ja que el perímetre exterior es " +"deforma en ser aixafat contra el perímetre intern.\n" +"\n" +"Utilitzeu Interior/Exterior/Interior per obtenir el millor acabat " +"superficial extern i precisió dimensional, ja que el perímetre extern " +"s'imprimeix sense problemes des d'un perímetre intern. No obstant això, el " +"rendiment del voladís es reduirà, ja que no hi ha cap perímetre intern " +"contra el qual imprimir el perímetre exterior. Aquesta opció requereix un " +"mínim de 3 perímetres per ser efectiva ja que imprimeix primer els " +"perímetres interiors a partir del 3r perímetre, després el perímetre " +"exterior i, finalment, el primer perímetre intern. Aquesta opció es recomana " +"contra l'opció Exterior/Interior en la majoria dels casos. \n" +"\n" +"Utilitzeu Exterior/Interior per obtenir els mateixos avantatges de qualitat " +"de paret externa i precisió dimensional de l'opció Interior/Exterior/" +"Interior. No obstant això, les costures z semblaran menys consistents a " +"mesura que la primera extrusió d'una nova capa comenci en una superfície " +"visible.\n" +"\n" +" " + +msgid "Inner/Outer" +msgstr "Interior/Exterior" + +msgid "Outer/Inner" +msgstr "Exterior/Interior" + +msgid "Inner/Outer/Inner" +msgstr "Interior/Exterior/Interior" + +msgid "Print infill first" +msgstr "Imprimir primer el farciment" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" +"Ordre de perímetre/farciment. Quan es desmarca la casella, primer " +"s'imprimeixen els perímetres, cosa que funciona millor en la majoria dels " +"casos.\n" +"\n" +"Imprimir el farciment primer pot ajudar amb voladissos extrems, ja que els " +"perímetres tenen el farciment veí per adherir-s'hi. Tanmateix, el farciment " +"empenyerà lleugerament les parets impreses on s'uneix, cosa que provocarà un " +"pitjor acabat superficial extern. També pot fer que el farciment ressalti a " +"través de les superfícies externes de la peça." + +msgid "Wall loop direction" +msgstr "Direcció del bucle de perímetre" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"La direcció en què s'extrudeixen els bucles de perímetre quan es mira cap " +"avall des de la part superior.\n" +"\n" +"Per defecte, totes les parets s'extrudeixen en sentit contrari a les agulles " +"del rellotge, tret que \"Parets invertides en capes imparells\" estigui " +"habilitat. Triar una opció que no sigui Auto forçarà la direcció de la paret " +"malgrat s'habiliti \"Parets invertides en capes imparells\".\n" +"\n" +"Aquesta opció es desactivarà si el mode gerro en espiral està habilitat." + +msgid "Counter clockwise" +msgstr "En sentit contrari a les agulles del rellotge" + +msgid "Clockwise" +msgstr "En el sentit de les agulles del rellotge" + +msgid "Height to rod" +msgstr "Alçada a la tija" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Distància de la punta del broquet a la part baixa de la tija. S'utilitza per " +"evitar col·lisions en impressions per objecte." + +msgid "Height to lid" +msgstr "Alçada a la tapa" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Distància de la punta del broquet a la tapa. S'utilitza per evitar " +"col·lisions en impressions per objecte." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Radi d'espai lliure al voltant de l'extrusora. S'utilitza per evitar " +"col·lisions en impressió per objecte." + +msgid "Nozzle height" +msgstr "Alçada del broquet" + +msgid "The height of nozzle tip." +msgstr "L'alçada de la punta del broquet." + +msgid "Bed mesh min" +msgstr "Malla de llit mínim" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Aquesta opció estableix el punt mínim per a la zona de malla de llit " +"permesa. A causa del desplaçament XY de la sonda, la majoria de les " +"impressores no poden sondejar tot el llit. Per assegurar-se que el punt de " +"sonda no surti de la zona del llit, s'han d'establir adequadament els punts " +"mínims i màxims de la malla del llit. Snapmaker Orca garanteix que els valors de " +"adaptive_bed_mesh_min/adaptive_bed_mesh_max no superin aquests punts mínim/" +"màxim. Normalment, aquesta informació es pot obtenir del fabricant de la " +"impressora. La configuració predeterminada és (-99999, -99999), cosa que " +"significa que no hi ha límits, el qual permet sondejar tot el llit." + +msgid "Bed mesh max" +msgstr "Malla de llit màxim" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Aquesta opció estableix el punt màxim per a la zona de malla de llit " +"permesa. A causa del desplaçament XY de la sonda, la majoria de les " +"impressores no poden sondejar tot el llit. Per assegurar-se que el punt de " +"sonda no surti de la zona del llit, s'han d'establir adequadament els punts " +"mínims i màxims de la malla del llit. Snapmaker Orca garanteix que els valors de " +"adaptive_bed_mesh_min/adaptive_bed_mesh_max no superin aquests punts mínim/" +"màxim. Normalment, aquesta informació es pot obtenir del fabricant de la " +"impressora. La configuració predeterminada és (99999, 99999), cosa que " +"significa que no hi ha límits, el qual permet sondejar tot el llit." + +msgid "Probe point distance" +msgstr "Distància entre els punts de sondeig" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"Aquesta opció estableix la distància preferida entre els punts de sondeig " +"(mida de la quadrícula ) per a les direccions X i Y, amb el valor per " +"defecte de 50 mm tant per a X com per a Y." + +msgid "Mesh margin" +msgstr "Marge de malla" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" +"Aquesta opció determina la distància addicional per la qual s'ha d'ampliar " +"l'àrea de malla de llit adaptativa en les direccions XY." + +msgid "Extruder Color" +msgstr "Color de l'extrusor" + +msgid "Only used as a visual help on UI" +msgstr "Només s'utilitza com a ajuda visual a la Interfície d'Usuari" + +msgid "Extruder offset" +msgstr "Separació de l'extrusor" + +msgid "Flow ratio" +msgstr "Relació de flux" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"El material pot tenir un canvi volumètric després de canviar entre estat fos " +"i estat cristal·lí. Aquest ajustament canvia proporcionalment tot el flux " +"d'extrusió d'aquest filament en Codi-G. L'interval de valors recomanat està " +"entre 0,95 i 1,05. Potser podeu ajustar aquest valor per obtenir una " +"superfície ben plana quan hi ha un lleuger excés o dèficit de flux" + +msgid "Enable pressure advance" +msgstr "Activar l'Avanç de Pressió Lineal" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Habilitar l'Avanç de Pressió Lineal, el resultat del calibratge automàtic se " +"sobreescriurà un cop activat." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "Avanç de Pressió Lineal( Klipper ) AKA Factor d'Avanç Lineal( Marlin )" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"Amplada de línia predeterminada si altres amplades de línia estan definides " +"com a 0. Si s'expressa en %, es calcularà sobre el diàmetre del broquet." + +msgid "Keep fan always on" +msgstr "Mantenir el ventilador sempre encès" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Si activeu aquest ajustament, el ventilador de refrigeració de peces no " +"s'aturarà mai i funcionarà almenys a una velocitat mínima per reduir la " +"freqüència d'arrencada i aturada" + +msgid "Don't slow down outer walls" +msgstr "No freneu a les parets exteriors" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" +"Si està habilitada, aquesta configuració garantirà que els perímetres " +"externs no s'alenteixin per complir el temps mínim de capa. Això és " +"particularment útil en els escenaris següents:\n" +"\n" +"1. Per evitar canvis de brillantor en imprimir filaments brillants \n" +"2. Evitar canvis en la velocitat de la paret externa que poden crear " +"artefactes de paret lleugers que semblen bandes z \n" +"3. Evitar imprimir a velocitats que provoquen VFAs (artefactes fins) a les " +"parets externes\n" +"\n" + +msgid "Layer time" +msgstr "Temps de capa" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"S'habilitarà el ventilador de refrigeració de peces per a capes el temps " +"estimat de les quals sigui inferior a aquest valor. La velocitat del " +"ventilador s'interpola entre les velocitats mínima i màxima del ventilador " +"segons el temps d'impressió per capes" + +msgid "Default color" +msgstr "Color predeterminat" + +msgid "Default filament color" +msgstr "Color del filament predeterminat" + +msgid "Filament notes" +msgstr "Notes de filament" + +msgid "You can put your notes regarding the filament here." +msgstr "Podeu posar les vostres notes sobre el filament aquí." + +msgid "Required nozzle HRC" +msgstr "HRC( duresa ) de Broquet obligatori" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"HRC( duresa ) mínim de broquet necessari per imprimir el filament. Zero " +"significa que no hi ha comprovació de l'HRC del broquet." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Aquest ajustament representa la quantitat de volum de filament que es pot " +"fondre i extruir per segon. La velocitat d'impressió està limitada per la " +"velocitat volumètrica màxima, en cas de configuració de velocitat massa alta " +"i poc raonable. No pot ser zero" + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Temps de càrrega del filament" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Temps per carregar nou filament quan canvia de filament. Només per a " +"estadístiques" + +msgid "Filament unload time" +msgstr "Temps de descàrrega del filament" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Temps per descarregar filament vell en canviar de filament. Només per a " +"estadístiques" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"El diàmetre del filament s'utilitza per calcular l'extrusió en Codi-G, per " +"la qual cosa és important i ha de ser precís" + +msgid "Pellet flow coefficient" +msgstr "Coeficient de flux de pellets" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" +"El coeficient de flux de pellets es deriva empíricament i permet calcular el " +"volum per a impressores de pellets.\n" +"\n" +"Internament es converteix en filament_diameter. La resta de càlculs de volum " +"continuen sent els mateixos.\n" +"\n" +"filament_diameter = m²( (4 * pellet_flow_coefficient) / PI )" + +msgid "Shrinkage" +msgstr "Encongiment" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Introduïu el percentatge de contracció que obtindrà el filament després del " +"refredament ( 94% i si mesureu 94mm en lloc de 100mm ). La peça s'escalarà " +"en xy per compensar. Només es té en compte el filament utilitzat per al " +"perímetre.\n" +"Assegureu-vos de deixar prou espai entre objectes, ja que aquesta " +"compensació es fa després de les comprovacions." + +msgid "Loading speed" +msgstr "Velocitat de càrrega" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Velocitat emprada per carregar el filament a la Torre de Purga." + +msgid "Loading speed at the start" +msgstr "Velocitat de càrrega a l'inici" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Velocitat utilitzada a l'inici de la fase de càrrega." + +msgid "Unloading speed" +msgstr "Velocitat de descàrrega" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Velocitat emprada per descarregar el filament a la Torre de Purga ( no " +"afecta la fase inicial de la descàrrega, només després del Moldejat de " +"Punta( Ramming )." + +msgid "Unloading speed at the start" +msgstr "Velocitat de descàrrega a l'inici" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Velocitat utilitzada per descarregar la punta del filament immediatament " +"després del Moldejat de Punta( Ramming )." + +msgid "Delay after unloading" +msgstr "Retard després de la descàrrega" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Temps d'espera després que el filament s'ha descarregat. Pot ajudar a " +"aconseguir canvis d'eina fiables amb materials flexibles que poden " +"necessitar més temps per encongir-se a la seva mida original." + +msgid "Number of cooling moves" +msgstr "Nombre de moviments de refredament" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"El filament es refreda en ser mogut cap endavant i cap enrere als tubs de " +"refredament. Especifica el nombre que vulgueu d'aquests moviments." + +msgid "Speed of the first cooling move" +msgstr "Velocitat del primer moviment de refredament" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "" +"Els moviments de refredament s'acceleren gradualment començant a aquesta " +"velocitat." + +msgid "Minimal purge on wipe tower" +msgstr "Purga mínima a la Torre de Purga" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"Després d'un canvi d'eina, és possible que no es conegui la posició exacta " +"del filament recentment carregat dins del broquet i que la pressió del " +"filament encara no sigui estable. Abans de purgar el capçal d'impressió en " +"un farciment o un objecte de sacrifici, Snapmaker Orca sempre imprimirà aquesta " +"quantitat de material a la Torre de Purga per produir successives extrusions " +"d'objectes de farciment o sacrifici de manera fiable." + +msgid "Speed of the last cooling move" +msgstr "Velocitat de l'últim moviment de refredament" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "" +"Els moviments de refredament s'acceleren gradualment cap a aquesta velocitat." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Temps perquè el firmware de la impressora ( o la Unitat Multi Material 2.0 ) " +"carregui un filament durant un canvi d'eina ( en executar el Codi-T ). " +"Aquest temps s'afegeix al temps d'impressió total mitjançant l'estimador de " +"temps del Codi-G." + +msgid "Ramming parameters" +msgstr "Paràmetres de Moldejat de Punta( Ramming )" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"RammingDialog processa aquesta cadena i conté paràmetres específics de " +"Moldejat de Punta( Ramming )" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Temps perquè el firmware de la impressora ( o la Unitat Multi Material 2.0 ) " +"descarregui un filament durant un canvi d'eina ( en executar el Codi-T ). " +"Aquest temps s'afegeix al temps d'impressió total mitjançant l'estimador de " +"temps del Codi-G." + +msgid "Enable ramming for multitool setups" +msgstr "" +"Habilita el Moldejat de Punta( Ramming ) per a configuracions multieina" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Realitzar el Moldejat de Punta( Ramming ) quan s'utilitzi una impressora " +"multieina ( és a dir, quan el \"Multimaterial d'un sol extrusor\" a la " +"configuració de la impressora no està marcat ). Quan està marcat, " +"s'extrusionarà ràpidament una petita quantitat de filament a la Torre de " +"Purga just abans del canvi d'eina. Aquesta opció només s'utilitza quan la " +"Torre de Purga està habilitada." + +msgid "Multitool ramming volume" +msgstr "Volum de Moldejat de Punta( Ramming ) multieina" + +msgid "The volume to be rammed before the toolchange." +msgstr "El volum de Moldejat de Punta( Ramming ) abans del canvi d'eina." + +msgid "Multitool ramming flow" +msgstr "Flux de Moldejat de Punta( Ramming ) multieina" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "" +"Flux utilitzat pel Moldejat de Punta( Ramming ) de filament abans del canvi " +"d'eina." + +msgid "Density" +msgstr "Densitat" + +msgid "Filament density. For statistics only" +msgstr "Densitat del filament. Només per a estadístiques" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "El tipus de material del filament" + +msgid "Soluble material" +msgstr "Material soluble" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"El material soluble s'utilitza habitualment per imprimir interfície de " +"suport i suport" + +msgid "Support material" +msgstr "Material de suport" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"El material de suport s'utilitza habitualment per imprimir interfície de " +"suport i suport" + +msgid "Softening temperature" +msgstr "Temperatura d'estovament" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"El material s'estova a aquesta temperatura, per la qual cosa quan la " +"temperatura del llit és igual o superior a ella, és molt recomanable obrir " +"la porta principal i/o treure el vidre superior per evitar obstruccions." + +msgid "Price" +msgstr "Preu" + +msgid "Filament price. For statistics only" +msgstr "Preu del filament. Només per a estadístiques" + +msgid "money/kg" +msgstr "diners/kg" + +msgid "Vendor" +msgstr "Fabricant" + +msgid "Vendor of filament. For show only" +msgstr "Fabricant del filament. Només per a mostrar" + +msgid "(Undefined)" +msgstr "( Indefinit )" + +msgid "Sparse infill direction" +msgstr "Direcció de farciment poc dens" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Angle per a un patró de farciment poc dens, que controla l'inici o la " +"direcció principal de la línia" + +msgid "Solid infill direction" +msgstr "Direcció de farciment sòlid" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Angle per al patró de farciment sòlid, que controla l'inici o la direcció " +"principal de la línia" + +msgid "Rotate solid infill direction" +msgstr "Rotar la direcció de farciment sòlid" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "Rotar la direcció de farciment sòlid 90° per a cada capa." + +msgid "Sparse infill density" +msgstr "Densitat de farciment poc dens" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"Densitat de farciment poc dens, converteix el 100% tu el teu farciment poc " +"dens en farciment sòlid i s'utilitzarà el patró de farciment sòlid intern" + +msgid "Sparse infill pattern" +msgstr "Patró farciment poc dens" + +msgid "Line pattern for internal sparse infill" +msgstr "Patró de línia per al farciment poc dens" + +msgid "Grid" +msgstr "Graella" + +msgid "Line" +msgstr "Lineal" + +msgid "Cubic" +msgstr "Cúbic" + +msgid "Tri-hexagon" +msgstr "Tri-hexàgon" + +msgid "Gyroid" +msgstr "Giroide" + +msgid "Honeycomb" +msgstr "Panal d'abella" + +msgid "Adaptive Cubic" +msgstr "Cúbic adaptatiu" + +msgid "3D Honeycomb" +msgstr "Panal d'abella 3D" + +msgid "Support Cubic" +msgstr "Suport Cúbic" + +msgid "Lightning" +msgstr "Llampec" + +msgid "Cross Hatch" +msgstr "Quadrícula" + +msgid "Sparse infill anchor length" +msgstr "Longitud d'ancoratge de farciment poc dens" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"Connectar una línia de farciment a un perímetre intern amb un segment curt " +"d'un perímetre addicional. Si s'expressa en percentatge ( per exemple: 15% ) " +"es calcula sobre l'amplada d'extrusió de farciment. Snapmaker Orca intenta " +"connectar dues línies de farciment properes a un segment perimetral curt. Si " +"no es troba aquest segment perimetral més curt que infill_anchor_max, la " +"línia de farciment es connecta a un segment perimetral a un sol costat i la " +"longitud del segment perimetral pres es limita a aquest paràmetre, però no " +"més de anchor_length_max. \n" +"Establiu aquest paràmetre a zero per desactivar els perímetres d'ancoratge " +"connectats a una sola línia de farciment." + +msgid "0 (no open anchors)" +msgstr "0 ( sense ancoratges oberts )" + +msgid "1000 (unlimited)" +msgstr "1000 ( il·limitat )" + +msgid "Maximum length of the infill anchor" +msgstr "Màxima longitud de l'ancoratge de farciment" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"Connectar una línia de farciment a un perímetre intern amb un segment curt " +"d'un perímetre addicional. Si s'expressa en percentatge ( per exemple: 15% ) " +"es calcula sobre l'amplada d'extrusió de farciment. Snapmaker Orca intenta " +"connectar dues línies de farciment properes a un segment perimetral curt. Si " +"no es troba aquest segment perimetral més curt que aquest paràmetre, la " +"línia de farciment es connecta a un segment perimetral a un sol costat i la " +"longitud del segment perimetral pres es limita a infill_anchor, però no més " +"llarga que aquest paràmetre. \n" +"Si s'estableix a 0, s'utilitzarà l'algorisme antic per a la connexió de " +"farciment, hauria de crear el mateix resultat que amb 1000 i 0." + +msgid "0 (Simple connect)" +msgstr "0 ( Connexió simple )" + +msgid "Acceleration of outer walls" +msgstr "Acceleració en perímetres exteriors" + +msgid "Acceleration of inner walls" +msgstr "Acceleració en perímetres interiors" + +msgid "Acceleration of travel moves" +msgstr "Acceleració en desplaçaments" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Acceleració del farciment superficial superior. L'ús d'un valor inferior pot " +"millorar la qualitat de la superfície superior" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Acceleració del perímetre exterior. L'ús d'un valor inferior pot millorar la " +"qualitat" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Acceleració de ponts. Si el valor s'expressa en percentatge ( per exemple, " +"50% ), es calcularà a partir de l'acceleració del perímetre exterior." + +msgid "mm/s² or %" +msgstr "mm/s o %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Acceleració del farciment poc dens. Si el valor s'expressa en percentatge " +"( per exemple, 100% ), es calcularà a partir de l'acceleració predeterminada." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"Acceleració del farciment sòlid intern. Si el valor s'expressa en " +"percentatge ( per exemple, 100% ), es calcularà a partir de l'acceleració " +"predeterminada." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Acceleració de la capa inicial. L'ús d'un valor inferior pot millorar " +"l'adherència de la placa d'impressió" + +msgid "Enable accel_to_decel" +msgstr "Habilita accel_to_decel" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "El max_accel_to_decel de Klipper s'ajustarà automàticament" + +msgid "accel_to_decel" +msgstr "accel_to_decel" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "El max_accel_to_decel de Klipper s'ajustarà a aquest %% d'acceleració" + +msgid "Jerk of outer walls" +msgstr "Sacsejada( Jerk ) de perímetres exteriors" + +msgid "Jerk of inner walls" +msgstr "Sacsejada( Jerk ) de perímetres interiors" + +msgid "Jerk for top surface" +msgstr "Sacsejada( Jerk ) per a la superfície superior" + +msgid "Jerk for infill" +msgstr "Sacsejada( Jerk ) per farciment" + +msgid "Jerk for initial layer" +msgstr "Sacsejada( Jerk ) per a la capa inicial" + +msgid "Jerk for travel" +msgstr "Sacsejada( Jerk ) per deplaçament" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Amplada de línia de la capa inicial. Si s'expressa en %, es calcularà sobre " +"el diàmetre del broquet." + +msgid "Initial layer height" +msgstr "Alçada de la capa inicial" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Alçada de la capa inicial. Fer que l'alçada inicial de la capa sigui " +"lleugerament més gruixuda pot millorar l'adherència de la placa d'impressió" + +msgid "Speed of initial layer except the solid infill part" +msgstr "Velocitat de la capa inicial excepte la part de farciment sòlid" + +msgid "Initial layer infill" +msgstr "Farciment de la capa inicial" + +msgid "Speed of solid infill part of initial layer" +msgstr "Velocitat de farciment sòlid de la capa inicial" + +msgid "Initial layer travel speed" +msgstr "Velocitat de desplaçament de la capa inicial" + +msgid "Travel speed of initial layer" +msgstr "Velocitat de desplaçament de la capa inicial" + +msgid "Number of slow layers" +msgstr "Nombre de capes lentes" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"Les primeres capes s'imprimeixen més lentament del normal. La velocitat " +"augmenta gradualment de manera lineal sobre el nombre especificat de capes." + +msgid "Initial layer nozzle temperature" +msgstr "Temperatura del broquet a la capa inicial" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" +"Temperatura del broquet per imprimir la capa inicial quan s'utilitza aquest " +"filament" + +msgid "Full fan speed at layer" +msgstr "Velocitat màxima del ventilador a la capa" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"La velocitat del ventilador augmentarà linealment de zero a la capa " +"\"close_fan_the_first_x_layers\" al màxim a la capa \"full_fan_speed_layer" +"\". S'ignorarà \"full_fan_speed_layer\" si és inferior a " +"\"close_fan_the_first_x_layers\", en aquest cas el ventilador funcionarà a " +"la velocitat màxima permesa a la capa \"close_fan_the_first_x_layers\" + 1." + +msgid "layer" +msgstr "capa" + +msgid "Support interface fan speed" +msgstr "Velocitat del ventilador a la interfície de suport" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"Aquesta velocitat del ventilador s'aplica durant totes les interfícies de " +"suport, per poder debilitar la seva unió amb una alta velocitat del " +"ventilador.\n" +"Definiu en -1 per desactivar aquesta sobreescriptura.\n" +"Només es pot anul·lar per disable_fan_first_layers." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Tremolor( Jitter ) Aleatori mentre imprimeix el perímetre, de manera que la " +"superfície tingui un aspecte rugós. Aquest ajustament controla la posició " +"difusa" + +msgid "Contour" +msgstr "Contorn" + +msgid "Contour and hole" +msgstr "Contorn i forat" + +msgid "All walls" +msgstr "Tots els perímetres" + +msgid "Fuzzy skin thickness" +msgstr "Gruix de la Pell Difusa" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"L'amplada dins de la qual Tremolar( Jitter ). Es recomana que estigui per " +"sota de l'amplada de la línia del perímetre exterior" + +msgid "Fuzzy skin point distance" +msgstr "Distància del punt de la Pell Difusa" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"La distància mitjana entre els punts aleatoris introduïts en cada segment de " +"línia" + +msgid "Apply fuzzy skin to first layer" +msgstr "Aplicar Pell Difusa a la primera capa" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "Si s'ha d'aplicar Pell Difusa a la primera capa" + +msgid "Filter out tiny gaps" +msgstr "Filtrar els buits minúsculs" + +msgid "Layers and Perimeters" +msgstr "Capes i Perímetres" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "Filtrar els buits més petits que el llindar especificat" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Velocitat de farciment de buits. El buit sol tenir una amplada de línia " +"irregular i s'ha d'imprimir més lentament" + +msgid "Precise Z height" +msgstr "Alçada Z precisa" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Habiliteu-lo per obtenir una alçada z precisa de l'objecte després de " +"laminar-lo. Obtindrà l'alçada precisa de l'objecte ajustant finament les " +"altures de capa de les últimes capes. Tingueu en compte que es tracta d'un " +"paràmetre experimental." + +msgid "Arc fitting" +msgstr "Ajustament en Arc( Arc fitting )" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" +"Habiliteu-lo per obtenir un fitxer de codi-G que tingui moviments G2 i G3. " +"La tolerància d'ajust és la mateixa que la resolució. \n" +"\n" +"Nota: Per a les màquines de sabatilles, es recomana desactivar aquesta " +"opció. Klipper no es beneficia de les ordres arc, ja que aquestes es " +"divideixen de nou en segments de línia pel firmware. Això resulta en una " +"reducció de la qualitat de la superfície, ja que els segments de línia es " +"converteixen en arcs per la talladora i després tornen als segments de línia " +"pel firmware." + +msgid "Add line number" +msgstr "Afegir número de línia" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Habiliteu això per afegir el número de línia ( Nx ) al començament de cada " +"línia de Codi-G" + +msgid "Scan first layer" +msgstr "Escanejar la primera capa" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Habiliteu-ho per permetre que la càmera de la impressora comprovi la " +"qualitat de la primera capa" + +msgid "Nozzle type" +msgstr "Tipus de broquet" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"El material metàl·lic del broquet. Això determina la resistència abrasiva " +"del broquet i quin tipus de filament es pot imprimir" + +msgid "Undefine" +msgstr "Indefinit" + +msgid "Hardened steel" +msgstr "Acer endurit" + +msgid "Stainless steel" +msgstr "Acer inoxidable" + +msgid "Brass" +msgstr "Llautó" + +msgid "Nozzle HRC" +msgstr "HRC del Broquet" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"La duresa del broquet. Zero significa que no es comprova la duresa del " +"broquet durant el laminat." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Estructura de la impressora" + +msgid "The physical arrangement and components of a printing device" +msgstr "La disposició física i els components d'un dispositiu d'impressió" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "Millor posició de l'objecte" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Millor auto posicionament dels objectes a l'interval [0,1] respecte a la " +"forma del llit." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"Activeu aquesta opció si la màquina té ventilador auxiliar de refrigeració " +"de peces. Comanda de Codi-G: M106 P2 S ( 0-255 )." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Engegar el ventilador aquest nombre de segons abans de l'hora d'inici " +"programat ( podeu utilitzar segons fraccionats ). Assumeix una acceleració " +"infinita per a aquesta estimació temporal, i només tindrà en compte els " +"moviments G1 i G0 ( Ajustament en Arc( arc fitting ) no és compatible ).\n" +"No mourà comandes de ventilador des de Codis-G personalitzats ( actuen com " +"una mena de \"barrera\" ).\n" +"No mourà comandes de ventilador des de Codis-G d'inici si s'activa el 'només " +"Codi-G d'inici personalitzat'.\n" +"Utilitzeu 0 per desactivar." + +msgid "Only overhangs" +msgstr "Només voladissos" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "" +"Només es tindrà en compte el retard per al refredament dels voladissos." + +msgid "Fan kick-start time" +msgstr "Temps d'arrencada del ventilador" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Emet una ordre de velocitat màxima del ventilador durant aquesta quantitat " +"de segons abans de reduir-la a la velocitat objectiu per engegar el " +"ventilador de refrigeració.\n" +"Això és útil per a ventiladors en que una baixa potència PWM pot ser " +"insuficient per començar a fer girar el ventilador des d'una parada o per " +"aconseguir que el ventilador s'acceleri més ràpidament.\n" +"Poseu-lo a 0 per desactivar-lo." + +msgid "Time cost" +msgstr "Cost per Temps" + +msgid "The printer cost per hour" +msgstr "El cost de la impressora per hora" + +msgid "money/h" +msgstr "diners/h" + +msgid "Support control chamber temperature" +msgstr "Admet Control de temperatura de la cambra" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Aquesta opció està habilitada si la màquina admet el control de la " +"temperatura de la cambra\n" +"Comanda de Codi-G: M141 S ( 0-255 )" + +msgid "Support air filtration" +msgstr "Admet filtració d'aire" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Habiliteu-lo si la impressora admet la filtració d'aire\n" +"Comanda de Codi-G: M106 P3 S ( 0-255 )" + +msgid "G-code flavor" +msgstr "Tipus de Codi-G" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Amb quin tipus de Codi-G és compatible la impressora" + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "Impressora modificada de pellets" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" +"Activeu aquesta opció si la impressora utilitza pellets en lloc de filaments" + +msgid "Support multi bed types" +msgstr "Admetre diversos tipus de llits" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "Activa aquesta opció si vols utilitzar diversos tipus de llit" + +msgid "Label objects" +msgstr "Etiquetar objectes" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"Habilita això per afegir els comentaris al Codi-G, etiquetant moviments " +"d'impressió amb l'objecte al què pertanyen, cosa que és útil per al plugin " +"Octoprint CancelObject. Aquesta configuració NO és compatible amb la " +"configuració d'Extrusor Únic Multi Material i Netejar en Objecte / Netejar " +"en Farciment." + +msgid "Exclude objects" +msgstr "Excloure objectes" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "Activeu aquesta opció per afegir l'ordre EXCLUDE OBJECT al Codi-G" + +msgid "Verbose G-code" +msgstr "Codi-G detallat" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Habiliteu-lo per obtenir un fitxer de Codi-G comentat, amb cada línia " +"explicada per un text descriptiu. Si imprimiu des d'una targeta SD, el pes " +"addicional del fitxer podria alentir el vostre firmware." + +msgid "Infill combination" +msgstr "Combinació de farciment" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Combinar automàticament el farciment poc dens de diverses capes per imprimir " +"juntes i reduir el temps. El perímetre serà impresa amb l'alçada de la capa " +"original." + +msgid "Filament to print internal sparse infill." +msgstr "Filament per imprimir farciment poc dens intern." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Amplada de línia de farciment poc dens intern. Si s'expressa en %, es " +"calcularà sobre el diàmetre del broquet." + +msgid "Infill/Wall overlap" +msgstr "Superposició de farciment/perímetre" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" +"L'àrea de farciment s'amplia lleugerament per superposar-se amb la paret per " +"a una millor unió. El valor percentual és relatiu a l'amplada de línia de " +"farciment poc dens. Establiu aquest valor a ~ 10-15% per minimitzar la " +"potencial sobreextrusió i acumulació de material que resulti en superfícies " +"superiors rugoses." + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "Farciment superposat a paret superior/inferior\"" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"L'àrea superior de farciment sòlid s'amplia lleugerament per superposar-se " +"amb la paret per a una millor unió i minimitzar l'aparició de forats on el " +"farciment superior es troba amb les parets. Un valor de 25-30% és un bon " +"punt de partida, minimitzant l'aparició de forats. El valor percentual és " +"relatiu a l'amplada de línia del farciment poc dens" + +msgid "Speed of internal sparse infill" +msgstr "Velocitat de farciment poc dens intern" + +msgid "Interface shells" +msgstr "Carcasses d'interfície" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Forçar la generació de carcasses sòlides entre materials/volums adjacents. " +"Això és útil per a impressions de múltiples extrusores amb materials " +"translúcids o material de suport soluble manual" + +msgid "Maximum width of a segmented region" +msgstr "Amplada màxima d'una regió segmentada" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Amplada màxima d'una regió segmentada. El zero desactiva aquesta funció." + +msgid "Interlocking depth of a segmented region" +msgstr "Profunditat d'entrellaçament d'una regió segmentada" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Profunditat d'entrellaçament d'una regió segmentada. Zero desactiva aquesta " +"funció." + +msgid "Use beam interlocking" +msgstr "Utilitzar feixos d'entrellaçament" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" +"Generar una estructura de feixos d'entrellaçament en els llocs on toquen " +"diferents filaments. Això millora l'adherència entre filaments, especialment " +"els models impresos en diferents materials." + +msgid "Interlocking beam width" +msgstr "Amplada dels feixos d'entrellaçament" + +msgid "The width of the interlocking structure beams." +msgstr "L'amplada dels feixos de l'estructura entrellaçada." + +msgid "Interlocking direction" +msgstr "Direcció d'entrellaçament" + +msgid "Orientation of interlock beams." +msgstr "Orientació de feixos d'entrellaçament." + +msgid "Interlocking beam layers" +msgstr "Capes de feixos d'entrellaçament" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" +"L'alçada dels feixos de l'estructura entrellaçada. mesurada en nombre de " +"capes. Menys capes és més forta, però més propensa als defectes." + +msgid "Interlocking depth" +msgstr "Profunditat d'entrellaçament" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" +"La distància del límit entre filaments per generar una estructura " +"entrellaçada, mesurada en cel·les. Massa poques cel·les donaran lloc a una " +"mala adhesió." + +msgid "Interlocking boundary avoidance" +msgstr "Evitació de límits entrellaçats" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" +"La distància a l'exterior d'un model on no es generaran estructures " +"entrellaçades, mesurades en cel·les." + +msgid "Ironing Type" +msgstr "Tipus de planxat" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"El planxat consisteix a utilitzar un flux petit per imprimir a la mateixa " +"alçada de superfície de nou per fer la superfície plana més llisa. Aquest " +"ajustament controla quina capa s'està planxant" + +msgid "No ironing" +msgstr "Sense planxat" + +msgid "Top surfaces" +msgstr "Totes les superfícies superiors" + +msgid "Topmost surface" +msgstr "Només la última superfície superior" + +msgid "All solid layer" +msgstr "Tota la capa sòlida" + +msgid "Ironing Pattern" +msgstr "Patró de planxat" + +msgid "The pattern that will be used when ironing" +msgstr "El patró que s'utilitzarà a l'hora de planxar" + +msgid "Ironing flow" +msgstr "Flux de planxa" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"La quantitat de material a extruir durant el planxat. Relatiu al flux de " +"l'alçada normal de la capa. Un valor massa alt provoca una sobreextrusió a " +"la superfície" + +msgid "Ironing line spacing" +msgstr "Interlineat entre línies de planxa" + +msgid "The distance between the lines of ironing" +msgstr "La distància entre les línies de planxa" + +msgid "Ironing speed" +msgstr "Velocitat de planxat" + +msgid "Print speed of ironing lines" +msgstr "Velocitat d'impressió de les línies de planxat" + +msgid "Ironing angle" +msgstr "Angle de planxat" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"El planxat angular es fa a. Un nombre negatiu desactiva aquesta funció i " +"utilitza el mètode predeterminat." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"Aquesta part de Codi-G s'insereix en cada canvi de capa després de " +"l'aixecament z" + +msgid "Supports silent mode" +msgstr "Admet el mode silenciós" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Si la màquina admet el mode silenciós en el qual la màquina utilitza una " +"acceleració més baixa per imprimir" + +msgid "Emit limits to G-code" +msgstr "Emissió de límits al Codi-G" + +msgid "Machine limits" +msgstr "Límits de la màquina" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"Si està habilitat, els límits de la màquina s'emetran al fitxer de Codi-G.\n" +"Aquesta opció s'ignorarà si el tipus de Codi-G està definit com a Klipper." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Aquest Codi-G s'utilitzarà com a codi per a la pausa d'impressió. L'usuari " +"pot inserir el Codi-G de pausa al visualitzador de Codi-G" + +msgid "This G-code will be used as a custom code" +msgstr "Aquest Codi-G s'utilitzarà com a codi personalitzat" + +msgid "Small area flow compensation (beta)" +msgstr "Compensació de flux d'àrea petita( beta )" + +msgid "Enable flow compensation for small infill areas" +msgstr "Activar la compensació de flux per a petites àrees de farciment" + +msgid "Flow Compensation Model" +msgstr "Model de Compensació de Flux" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"Model de Compensació de Flux, utilitzat per ajustar el flux per a petites " +"àrees de farciment. El model s'expressa com un parell de valors separats per " +"comes per a la longitud d'extrusió i els factors de correcció de flux, un " +"per línia, en el següent format: \"1.234,5.678\"" + +msgid "Maximum speed X" +msgstr "Velocitat màxima X" + +msgid "Maximum speed Y" +msgstr "Velocitat màxima Y" + +msgid "Maximum speed Z" +msgstr "Velocitat màxima Z" + +msgid "Maximum speed E" +msgstr "Velocitat màxima E" + +msgid "Maximum X speed" +msgstr "Velocitat màxima a l'eix X" + +msgid "Maximum Y speed" +msgstr "Velocitat màxima a l'eix Y" + +msgid "Maximum Z speed" +msgstr "Velocitat màxima a l'eix Z" + +msgid "Maximum E speed" +msgstr "Velocitat màxima a l'eix E" + +msgid "Maximum acceleration X" +msgstr "Màxima acceleració X" + +msgid "Maximum acceleration Y" +msgstr "Màxima acceleració Y" + +msgid "Maximum acceleration Z" +msgstr "Màxima acceleració Z" + +msgid "Maximum acceleration E" +msgstr "Màxima acceleració E" + +msgid "Maximum acceleration of the X axis" +msgstr "Màxima acceleració a l'eix X" + +msgid "Maximum acceleration of the Y axis" +msgstr "Màxima acceleració a l'eix Y" + +msgid "Maximum acceleration of the Z axis" +msgstr "Màxima acceleració a l'eix Z" + +msgid "Maximum acceleration of the E axis" +msgstr "Màxima acceleració a l'eix E" + +msgid "Maximum jerk X" +msgstr "Màxim sacsejada( Jerk ) X" + +msgid "Maximum jerk Y" +msgstr "Màxim sacsejada( Jerk ) Y" + +msgid "Maximum jerk Z" +msgstr "Màxim sacsejada( Jerk ) Z" + +msgid "Maximum jerk E" +msgstr "Màxim sacsejada( Jerk ) E" + +msgid "Maximum jerk of the X axis" +msgstr "Màxim sacsejada( Jerk ) a l'eix X" + +msgid "Maximum jerk of the Y axis" +msgstr "Màxim sacsejada( Jerk ) a l'eix Y" + +msgid "Maximum jerk of the Z axis" +msgstr "Màxim sacsejada( Jerk ) a l'eix Z" + +msgid "Maximum jerk of the E axis" +msgstr "Màxim sacsejada( Jerk ) a l'eix E" + +msgid "Minimum speed for extruding" +msgstr "Velocitat mínima d'extrusió" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Velocitat mínima d'extrusió ( M205 S )" + +msgid "Minimum travel speed" +msgstr "Velocitat mínima de desplaçament" + +msgid "Minimum travel speed (M205 T)" +msgstr "Velocitat mínima de desplaçament ( M205 T )" + +msgid "Maximum acceleration for extruding" +msgstr "Màxima acceleració d'extrusió" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Màxima acceleració d'extrusió ( M204 P )" + +msgid "Maximum acceleration for retracting" +msgstr "Màxima acceleració de retracció" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Màxima acceleració de retracció ( M204 R )" + +msgid "Maximum acceleration for travel" +msgstr "Màxima acceleració de desplaçament" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" +"Màxima acceleració de desplaçament ( M204 T ), només s'aplica a Marlin 2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"La velocitat del ventilador de refrigeració de peça es pot augmentar quan " +"s'habilita la refrigeració automàtica. Aquesta és la limitació de velocitat " +"màxima del ventilador de refrigeració de peça" + +msgid "Max" +msgstr "Màx" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"La major alçada de capa imprimible per a l'extrusor. S'utilitza per limitar " +"l'alçada màxima de la capa quan s'habilita l'Alçada de Capa Adaptativa" + +msgid "Extrusion rate smoothing" +msgstr "Suavitzat de la velocitat d'extrusió" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Aquest paràmetre suavitza els canvis sobtats de velocitat d'extrusió que es " +"produeixen quan la impressora passa d'imprimir una extrusió d'alt flux " +"( alta velocitat/amplada més gran ) a una extrusió de menor flux ( menor " +"velocitat/amplada més petita ) i viceversa.\n" +"\n" +"Defineix la velocitat màxima a la qual el flux volumètric extruït en mm3/seg " +"pot canviar amb el temps. Els valors més alts signifiquen que es permeten " +"canvis de velocitat d'extrusió més alts, cosa que resulta en transicions de " +"velocitat més ràpides.\n" +"\n" +"Un valor 0 desactiva la característica. \n" +"\n" +"Per a una impressora d'extrusió directa d'alta velocitat i alt flux ( com " +"Bambu Lab o Voron ) aquest valor normalment no és necessari. No obstant " +"això, pot proporcionar algun benefici marginal en certs casos en què les " +"velocitats de les característiques varien molt. Per exemple, quan hi ha " +"desacceleracions agressives a causa dels voladissos. En aquests casos es " +"recomana un valor elevat d'uns 300-350mm3/s2, ja que això permet un " +"suavitzat suficient per ajudar a avançar la pressió a aconseguir una " +"transició de flux més suau.\n" +"\n" +"Per a impressores més lentes sense Avanç de Pressió, el valor s'ha " +"d'establir molt més baix. Un valor de 10-15mm3/s2 és un bon punt de partida " +"per als extrusors d'extrusió directa i 5-10mm3/s2 per al tipus Bowden. \n" +"\n" +"Aquesta característica es coneix com a Equalitzador de Pressió a Prusa " +"slicer.\n" +"\n" +"Nota: aquest paràmetre desactiva l'Ajustament en Arc( arc fitting )." + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "Longitud del segment de suavitzat" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Un valor més baix dóna lloc a transicions de velocitat d'extrusió més suaus. " +"Tanmateix, això resulta en un fitxer gcode significativament més gran i més " +"instruccions per processar per a la impressora. \n" +"\n" +"El valor predeterminat a 3 funciona bé en la majoria dels casos. Si la " +"impressora s'entrebanca, augmenteu aquest valor per reduir el nombre " +"d'ajustos realitzats\n" +"\n" +"Valors permesos: 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "Velocitat mínima per al ventilador de refrigeració de peces" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Velocitat del ventilador auxiliar de refrigeració de peces. El ventilador " +"auxiliar funcionarà a aquesta velocitat durant la impressió, excepte les " +"primeres capes que es defineixen sense capes de refrigeració.\n" +"Activeu auxiliary_fan a la configuració de la impressora per utilitzar " +"aquesta funció. Comanda de Codi-G: M106 P2 S ( 0-255 )" + +msgid "Min" +msgstr "Mín" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"L'alçada de capa imprimible més baixa per a l'extrusor. S'utilitza per " +"limitar l'alçada mínima de la capa quan s'activa l'Alçada de Capa Adaptativa" + +msgid "Min print speed" +msgstr "Velocitat d'impressió mínima" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"La velocitat mínima d'impressió a la qual la impressora disminuirà per " +"intentar mantenir el temps mínim de capa anterior, quan \"alentir per a un " +"millor refredament de la capa\" està habilitat." + +msgid "Nozzle diameter" +msgstr "Diàmetre del broquet( nozzle )" + +msgid "Diameter of nozzle" +msgstr "Diàmetre del broquet" + +msgid "Configuration notes" +msgstr "Notes de configuració" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Podeu posar les vostres notes personals aquí. Aquest text s'afegirà al Codi-" +"G com a comentaris." + +msgid "Host Type" +msgstr "Tipus d'amfitrió( host )" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca pot carregar fitxers de Codi-G a un amfitrió( host ) " +"d'impressora. Aquest camp ha de contenir el tipus d'amfitrió( host )." + +msgid "Nozzle volume" +msgstr "Volum del broquet" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Volum del broquet entre la talladora i l'extrem del broquet" + +msgid "Cooling tube position" +msgstr "Posició del tub de refrigeració" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "" +"Distància des del centre del tub de refredament a la punta de l'extrusor." + +msgid "Cooling tube length" +msgstr "Longitud del tub de refredament" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Longitud del tub de refredament per limitar l'espai per a moviments de " +"refredament dins del mateix." + +msgid "High extruder current on filament swap" +msgstr "Alt corrent d'extrusió durant el canvi de filament" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Pot ser beneficiós augmentar el corrent del motor de l'extrusor durant la " +"seqüència d'intercanvi de filaments per permetre velocitats d'alimentació de " +"Moldejat de Punta( Ramming ) ràpides i superar la resistència quan es " +"carrega un filament amb una punta amb forma lletja." + +msgid "Filament parking position" +msgstr "Posició d'aturada de filament" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Distància de la punta de l'extrusor des de la posició on el filament està " +"aturat quan es descarrega. Això hauria de coincidir amb el valor al firmware " +"de la impressora." + +msgid "Extra loading distance" +msgstr "Distància de càrrega addicional" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Quan s'estableix a zero, la distància que el filament es mou des de la " +"posició d'aturada durant la càrrega és exactament la mateixa que s'ha fet " +"servir durant la descàrrega. Quan és positiu, es carrega més lluny, si és " +"negatiu, el moviment de càrrega és més curt que el de baixada." + +msgid "Start end points" +msgstr "Punts d'inici i final" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "" +"Els punts d'inici i final, que és des de la zona de tall fins a la galleda " +"d'escombraries." + +msgid "Reduce infill retraction" +msgstr "Reduir la retracció de farciment" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"No retrau quan el desplaçament està totalment a la zona de farciment. Això " +"vol dir que l'oozing( goteig ) queda amagat. Això pot reduir els temps de " +"retracció per a models complexos i estalviar temps d'impressió, però fer que " +"el laminat i la generació de Codi-G siguin més lents" + +msgid "Filename format" +msgstr "Format del nom del fitxer" + +msgid "User can self-define the project file name when export" +msgstr "L'usuari pot definir el nom del fitxer del projecte quan exporta" + +msgid "Make overhangs printable" +msgstr "Fer voladissos imprimibles( sense suports )" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "" +"Modifica la geometria per imprimir voladissos sense material de suport." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Fer voladissos imprimibles - Angle màxim( Sense suports )" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Angle màxim dels voladissos per fer imprimibles voladissos més " +"pronunciats.90 ° no canviarà el model en absolut i permetrà qualsevol " +"voladís, mentre que 0 substituirà tots els voladissos per material cònic." + +msgid "Make overhangs printable - Hole area" +msgstr "Fer voladissos imprimibles - Zona de forats( Sense suports )" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Àrea màxima d'un forat a la base del model abans que s'ompli amb material " +"cònic. Un valor de 0 omplirà tots els forats de la base del model." + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Detectar voladís de perímetre" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Detectar el percentatge de voladís en relació amb l'amplada de la línia i " +"utilitzar una velocitat diferent per imprimir. Per al voladís del 100%%, " +"s'utilitza la velocitat de pont." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Amplada de línia del perímetre interior. Si s'expressa en %, es calcularà " +"sobre el diàmetre del broquet." + +msgid "Speed of inner wall" +msgstr "Velocitat del perímetre interior" + +msgid "Number of walls of every layer" +msgstr "Nombre de perímetres de cada capa" + +msgid "Alternate extra wall" +msgstr "Perímetre addicional alternant" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"Aquest ajustament afegeix un perímetre addicional a totes les altres capes. " +"D'aquesta manera, el farciment s'encaixa verticalment entre les parets, " +"donant lloc a impressions més fortes. \n" +"\n" +"Quan aquesta opció està habilitada, cal desactivar l'opció 'Assegurar el " +"gruix de la carcassa vertical'. \n" +"\n" +"No es recomana l'ús de farciment de Llampec juntament amb aquesta opció, ja " +"que hi ha un farciment limitat per ancorar els perímetres addicionals." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Si voleu processar el Codi-G de sortida a través de scripts personalitzats, " +"simplement enumereu les vostres rutes absolutes aquí. Separeu diversos " +"scripts amb punt i coma. Als scripts se'ls passarà la ruta absoluta al " +"fitxer Codi-G com a primer argument, i poden accedir als paràmetres de " +"configuració d'Snapmaker Orca llegint variables d'entorn." + +msgid "Printer notes" +msgstr "Notes de la impressora" + +msgid "You can put your notes regarding the printer here." +msgstr "Podeu posar les vostres notes sobre la impressora aquí." + +msgid "Raft contact Z distance" +msgstr "Distància Z de contacte de la Vora d'Adherència" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"Distància Z entre l'objecte i la Vora d'Adherència. S'ignorarà per a " +"interfície soluble" + +msgid "Raft expansion" +msgstr "Expansió de la Vora d'Adherència" + +msgid "Expand all raft layers in XY plane" +msgstr "Expandir totes les capes de Vora d'Adherència en el pla XY" + +msgid "Initial layer density" +msgstr "Densitat de la primera capa" + +msgid "Density of the first raft or support layer" +msgstr "Densitat de la primera Vora d'Adherència o capa de suport" + +msgid "Initial layer expansion" +msgstr "Expansió de la primera capa" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Expandir la primera Vora d'Adherència o capa de suport per millorar " +"l'adherència de la placa d'impressió" + +msgid "Raft layers" +msgstr "Capes de Vora d'Adherència" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"L'objecte serà elevat per aquest nombre de capes de suport. Utilitzar " +"aquesta funció per evitar deformacions( warping ) quan imprimiu ABS" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"La trajectòria del Codi-G es genera després de simplificar el contorn del " +"model per evitar massa punts i línies de Codi-G al fitxer gcode. Un valor " +"més petit significa una major resolució i més temps de laminació" + +msgid "Travel distance threshold" +msgstr "Llindar de distància de desplaçament" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Només s'activa la retracció quan la distància de desplaçament és superior a " +"aquest llindar" + +msgid "Retract amount before wipe" +msgstr "Quantitat de retracció abans de netejar" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"La longitud de retracció ràpida abans de la neteja, en relació amb la " +"longitud de retracció" + +msgid "Retract when change layer" +msgstr "Retracció quan canvia de capa" + +msgid "Force a retraction when changes layer" +msgstr "Forçar una retracció quan canvia de capa" + +msgid "Retraction Length" +msgstr "Longitud de Retracció" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Una certa quantitat de material en l'extrusora es tira cap enrere per evitar " +"l'Ooze( goteig ) durant el llarg desplaçament. Definiu zero per desactivar " +"la retracció" + +msgid "Long retraction when cut(experimental)" +msgstr "Retracció llarga en tallar(experimental)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Característica experimental. Retreure i tallar el filament a més distància " +"durant els canvis per minimitzar la purga. Tot i que això redueix " +"significativament el flux, també pot augmentar el risc d'obstruccions del " +"broquet o altres problemes d'impressió." + +msgid "Retraction distance when cut" +msgstr "Distància de retracció quan es talla" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Característica experimental. Longitud de retracció abans de tallar durant el " +"canvi de filament" + +msgid "Z hop when retract" +msgstr "Salt en Z quan hi ha retracció" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Cade vegada que es fa una retracció, s'aixeca una mica el broquet per crear " +"espai lliure entre el broquet i la impressió. Evita que el broquet colpegi " +"la impressió en els desplaçaments. L'ús de la línia espiral per aixecar z " +"pot evitar l'aparició de fils" + +msgid "Z hop lower boundary" +msgstr "Límit inferior de salt en Z" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"El salt en Z només s'aplicarà quan Z estigui per sobre d'aquest valor i " +"estigui per sota del paràmetre: \"Límit superior de salt en Z\"" + +msgid "Z hop upper boundary" +msgstr "Límit superior de salt en Z" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Si aquest valor és positiu, el salt en Z només s'aplicarà quan Z estigui per " +"sobre del paràmetre: \"Límit inferior de salt en Z\" i estigui per sota " +"d'aquest valor" + +msgid "Z hop type" +msgstr "Tipus de salt en Z" + +msgid "Slope" +msgstr "Pendent" + +msgid "Spiral" +msgstr "Espiral" + +msgid "Traveling angle" +msgstr "Angle de viatge" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" +"Angle de viatge per al tipus Salt en Z de Pendent i Espiral. Si l'establiu a " +"90°, es produeix un Aixecament Normal" + +msgid "Only lift Z above" +msgstr "Només aixecar Z per sobre" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Si establiu un valor positiu, Z només tindrà lloc per sobre de la Z absoluta " +"especificada." + +msgid "Only lift Z below" +msgstr "Només aixecar Z per sota" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Si establiu un valor positiu, Z només tindrà lloc per sota de la Z absoluta " +"especificada." + +msgid "On surfaces" +msgstr "A les superfícies" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Forçar el comportament de salt en Z. Aquest ajustament es veu afectada per " +"la configuració anterior ( Només aixecar Z per sobre/per sota )." + +msgid "All Surfaces" +msgstr "Totes les superfícies" + +msgid "Top Only" +msgstr "Només a dalt" + +msgid "Bottom Only" +msgstr "Només a baix" + +msgid "Top and Bottom" +msgstr "A dalt i a baix" + +msgid "Extra length on restart" +msgstr "Longitud addicional en reiniciar" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Quan la retracció es compensa després d'un desplaçament, l'extrusor " +"introduirà una quantitat addicional de filament. Aquest ajustament rarament " +"es necessita." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Quan la retracció es compensa després d'un canvi d'eina, l'extrusor " +"introduirà una quantitat addicional de filament." + +msgid "Retraction Speed" +msgstr "Velocitat de retracció" + +msgid "Speed of retractions" +msgstr "Velocitat de les retraccions" + +msgid "Deretraction Speed" +msgstr "Velocitat de detracció" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Velocitat de recàrrega del filament a l'extrusora. Zero significa la mateixa " +"velocitat amb la retracció" + +msgid "Use firmware retraction" +msgstr "Utilitza la retracció del firmware" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"Aquest ajustament experimental utilitza comandes G10 i G11 perquè el " +"firmware gestioni la retracció. Això només té suport en les versions més " +"recents de Marlin." + +msgid "Show auto-calibration marks" +msgstr "Mostra les marques de calibratge automàtic" + +msgid "Disable set remaining print time" +msgstr "Desactivar el temps d'impressió restant" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" +"Desactivar la generació del M73: establir el temps d'impressió restant al " +"gcode final" + +msgid "Seam position" +msgstr "Posició de la costura" + +msgid "The start position to print each part of outer wall" +msgstr "La posició inicial per imprimir cada capa del perímetre exterior" + +msgid "Nearest" +msgstr "Més proper" + +msgid "Aligned" +msgstr "Alineat" + +msgid "Back" +msgstr "Darrera" + +msgid "Random" +msgstr "Aleatori" + +msgid "Staggered inner seams" +msgstr "Costures interiors esglaonades" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Aquesta opció fa que les costures interiors es desplacin cap enrere en " +"funció de la seva profunditat, formant un patró en ziga-zaga." + +msgid "Seam gap" +msgstr "Espai entre costures" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Per reduir la visibilitat de la costura en una extrusió de bucle tancat, el " +"bucle s'interromp i s'escurça en una quantitat especificada.\n" +"Aquesta quantitat es pot especificar en mil·límetres o en percentatge del " +"diàmetre actual de l'extrusora. El valor predeterminat d'aquest paràmetre és " +"del 10%." + +msgid "Scarf joint seam (beta)" +msgstr "Unió en Bisell de costura( beta )" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Utilitzeu Unió en Bisell per minimitzar la visibilitat de la costura i " +"augmentar la resistència de les costures." + +msgid "Conditional scarf joint" +msgstr "Unió en Bisell condicional" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Aplicar Unions en Bisell només per suavitzar perímetres on les costures " +"tradicionals no ocultin eficaçment les costures a les cantonades afilades." + +msgid "Conditional angle threshold" +msgstr "Llindar d'angle condicional" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"Aquesta opció estableix l'angle llindar per aplicar una Unió en Bisell " +"condicional.\n" +"Si l'angle màxim dins del bucle perimetral supera aquest valor (que indica " +"l'absència de cantonades afilades), s'utilitzarà una Unió en Bisell. El " +"valor per defecte és de 155°." + +msgid "Conditional overhang threshold" +msgstr "Llindar d'angle condicional" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"Aquesta opció determina el llindar de voladís per a l'aplicació de costures " +"d'Unió en Bisell. Si la porció no suportada del perímetre és inferior a " +"aquest llindar, s'aplicaran costures de juntes d'Unió en Bisell. El llindar " +"per defecte s'estableix en 40% de l'amplada del perímetre extern. A causa de " +"consideracions de rendiment, s'estima el grau de voladís." + +msgid "Scarf joint speed" +msgstr "Velocitat d'Unió en Bisell" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"Aquesta opció estableix la velocitat d'impressió de les Unions en Bisell. Es " +"recomana imprimir Unions en Bisell a velocitat lenta (menys de 100 mm / s). " +"També és recomanable habilitar el \"suavitzat de la velocitat d'extrusió\" " +"si la velocitat establerta varia significativament de la velocitat dels " +"perímetres exteriors o interiors. Si la velocitat especificada aquí és " +"superior a la velocitat dels perímetres exteriors o interiors, la impressora " +"predeterminarà la més lenta de les dues velocitats. Quan s'especifica com a " +"percentatge (per exemple, 80%), la velocitat es calcula en funció de la " +"velocitat del perímetre exterior o interior respectiva. El valor per defecte " +"s'estableix al 100%." + +msgid "Scarf joint flow ratio" +msgstr "Relació de flux de l'Unió en Bisell" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" +"Aquest factor afecta la quantitat de material per a les Unions en Bisell." + +msgid "Scarf start height" +msgstr "Alçada d'inici de l'Unió en Bisell" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Alçada d'inici de l'Unió en Bisell.\n" +"Aquesta quantitat es pot especificar en mil·límetres o en percentatge de " +"l'alçada actual de la capa. El valor per defecte d'aquest paràmetre és 0." + +msgid "Scarf around entire wall" +msgstr "Unió en Bisell al voltant de tota la paret" + +msgid "The scarf extends to the entire length of the wall." +msgstr "L'Unió en Bisell s'estén a tota la longitud de la paret." + +msgid "Scarf length" +msgstr "Longitud de l'Unió en Bisell" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Longitud de l'Unió en Bisell. Establir aquest paràmetre a zero desactiva " +"efectivament l'Unió en Bisell." + +msgid "Scarf steps" +msgstr "Passos de l'Unió en Bisell" + +msgid "Minimum number of segments of each scarf." +msgstr "Nombre mínim de segments de cada Unió en Bisell." + +msgid "Scarf joint for inner walls" +msgstr "Unió en Bisell per a parets interiors" + +msgid "Use scarf joint for inner walls as well." +msgstr "Utilitzar també l'Unió en Bisell per a les parets interiors." + +msgid "Role base wipe speed" +msgstr "Velocitat de neteja basada en l'acció" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"La velocitat de neteja està determinada per la velocitat de l'acció " +"d'extrusió actual, per exemple. Si s'executa una acció de neteja " +"immediatament després d'una extrusió de perímetre exterior, s'utilitzarà la " +"velocitat d'extrusió del perímetre exterior per a l'acció de neteja." + +msgid "Wipe on loops" +msgstr "Neteja en bucles" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Per minimitzar la visibilitat de la costura en una extrusió de bucle tancat, " +"s'executa un petit moviment cap a l'interior abans que l'extrusora surti del " +"bucle." + +msgid "Wipe before external loop" +msgstr "Netejar abans del bucle extern" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"Per minimitzar la visibilitat de la possible sobreextrusió a l'inici d'un " +"perímetre extern en imprimir amb ordre d'impressió de perímetre Exterior/" +"Interior o Interior/Exterior/Interior, la deretracció es realitza " +"lleugerament a l'interior des de l'inici del perímetre exterior. D'aquesta " +"manera, qualsevol potencial sobreextrusió queda amagada de la superfície " +"exterior. \n" +"\n" +"Això és útil quan s'imprimeix amb ordre d'impressió de perfil Exterior/" +"Interior o Interior/Exterior/Interior, ja que en aquests modes és més " +"probable que un perímetre extern s'imprimeixi immediatament després d'un " +"moviment de detracció." + +msgid "Wipe speed" +msgstr "Velocitat de neteja" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"La velocitat de neteja està determinada per l'ajustament de velocitat " +"especificada en aquesta configuració. Si el valor s'expressa en percentatge " +"( per exemple, 80% ), es calcularà en funció de la configuració de velocitat " +"de desplaçament anterior. El valor predeterminat d'aquest paràmetre és del " +"80%" + +msgid "Skirt distance" +msgstr "Distància de la faldilla" + +msgid "Distance from skirt to brim or object" +msgstr "Distància de la faldilla a la Vora d'Adherència o a l'objecte" + +msgid "Skirt height" +msgstr "Alçada de la faldilla" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Quantes capes de faldilla. Normalment només una capa" + +msgid "Draft shield" +msgstr "Escut contra corrents d'aire" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"Un escut contra corrents d'aire és útil per protegir una impressió ABS o ASA " +"de la deformació i el despreniment del llit d'impressió a causa del corrent " +"d'aire. Normalment només es necessita amb impressores de marc obert, és a " +"dir, sense tancament. \n" +"\n" +"Opcions:\n" +"Habilitat = la faldilla és tan alta com l'objecte imprès més alt.\n" +"Limitat = la faldilla és tan alta com especifica l'alçada de la faldilla.\n" +"\n" +"Nota: Amb l'escut contra corrents d'aire actiu, la faldilla s'imprimirà a " +"distància de faldilla de l'objecte. Per tant, si les vores d'adherència " +"estan actives pot creuar-se amb elles. Per evitar-ho, augmenteu el valor de " +"distància de la faldilla.\n" + +msgid "Limited" +msgstr "Limitat" + +msgid "Enabled" +msgstr "Habilitat" + +msgid "Skirt loops" +msgstr "Voltes de la faldilla" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "" +"Nombre de voltes per a la faldilla. Zero significa faldilla desactivada" + +msgid "Skirt speed" +msgstr "Velocitat de la faldilla" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" +"Velocitat de la faldilla, en mm/s. Zero significa utilitzar la velocitat " +"predeterminada d'extrusió de capa." + +msgid "Skirt minimum extrusion length" +msgstr "Longitud mínima d'extrusió de la faldilla" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"Longitud mínima d'extrusió del filament en mm en imprimir la faldilla. Zero " +"significa que aquesta funció està desactivada.\n" +"\n" +"L'ús d'un valor diferent de zero és útil si la impressora està configurada " +"per imprimir sense una línia principal." + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"La velocitat d'impressió en el Codi-G exportat s'alentirà, quan el temps " +"estimat de capa sigui més curt que aquest valor, per obtenir un millor " +"refredament d'aquestes capes" + +msgid "Minimum sparse infill threshold" +msgstr "Llindar mínim de farciment poc dens" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"L'àrea de farciment poc dens que sigui més petita que el valor del llindar " +"serà substituït per un farciment sòlid intern" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Amplada de línia de farciment sòlid intern. Si s'expressa en %, es calcularà " +"sobre el diàmetre del broquet." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"Velocitat de farciment sòlid intern, no de la superfície superior i inferior" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"L'espiralització suavitza els moviments z del contorn exterior. I converteix " +"un model sòlid en una sola impressió de perímetre amb capes inferiors " +"sòlides. El model generat final no té costura" + +msgid "Smooth Spiral" +msgstr "Suavitzar l'Espiral" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Suavitzar l'Espiral suavitza també els moviments X i Y, de manera que no " +"s'aprecia cap costura, ni tan sols a les direccions XY en parets que no són " +"verticals" + +msgid "Max XY Smoothing" +msgstr "Suavitzat màxim XY" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Distància màxima per moure punts en XY per intentar aconseguir una espiral " +"suau. Si s'expressa en %, es calcularà sobre el diàmetre del broquet" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Si se selecciona el mode suau o tradicional, es generarà un vídeo timelapse " +"per a cada impressió. Després d'imprimir cada capa, es fa una instantània " +"amb la càmera de la cambra. Totes aquestes instantànies s'uneixen en un " +"vídeo timelapse quan es completa la impressió. Si se selecciona el mode " +"suau, el capçal d'impressió es mourà a la rampa d'excés després d'imprimir " +"cada capa i, a continuació, farà una instantània. Com que el filament fos " +"pot sortir del broquet durant el procés de fer una instantània, cal una " +"Torre de Purga per al mode suau per netejar el broquet." + +msgid "Traditional" +msgstr "Tradicional" + +msgid "Temperature variation" +msgstr "Variació de temperatura" + +msgid "Start G-code" +msgstr "Codi-G inicial" + +msgid "Start G-code when start the whole printing" +msgstr "Codi-G inicial quan comença tota la impressió" + +msgid "Start G-code when start the printing of this filament" +msgstr "Codi-G inicial quan comença la impressió d'aquest filament" + +msgid "Single Extruder Multi Material" +msgstr "Extrusor únic multimaterial" + +msgid "Use single nozzle to print multi filament" +msgstr "Utilitza un sol broquet per imprimir multifilament" + +msgid "Manual Filament Change" +msgstr "Canvi manual de filament" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Activeu aquesta opció per ometre el Codi-G Personalitzat de Canvi de " +"Filament només al començament de la impressió. La comanda de canvi d'eina " +"( per exemple, T0 ) s'ometrà durant tota la impressió. Això és útil per a la " +"impressió manual multimaterial, on utilitzem M600/PAUSE per activar l'acció " +"de canvi manual de filament." + +msgid "Purge in prime tower" +msgstr "Purgar a la Torre de Purga" + +msgid "Purge remaining filament into prime tower" +msgstr "Purga el filament restant a la Torre de Purga" + +msgid "Enable filament ramming" +msgstr "Habilitar Moldejat de punta( Ramming ) de filament" + +msgid "No sparse layers (beta)" +msgstr "Sense capes poc denses( beta )" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Si està habilitat, la Torre de Purga no s'imprimeix en capes sense canvis " +"d'eina. En capes amb canvi d'eina, l'extrusor es desplaçarà cap avall per " +"imprimir la Torre de Purga. L'usuari és responsable de garantir que no hi " +"hagi col·lisió amb la impressió." + +msgid "Prime all printing extruders" +msgstr "Purgar tots els extrusors d'impressió" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Si està habilitat, tots els extrusors d'impressió seran purgats a la vora " +"frontal del llit d'impressió al començament de la impressió." + +msgid "Slice gap closing radius" +msgstr "Radi de tancament dels buits en laminar" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Les esquerdes de menys de dues vegades el radi de tancament de buits " +"s'omplen durant el laminat de la malla triangular. L'operació de tancament " +"de buits pot reduir la resolució de la impressió, per tant, és aconsellable " +"mantenir aquest valor raonablement baix." + +msgid "Slicing Mode" +msgstr "Mode de laminat" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Utilitzeu \"Parell-imparell\" per als models d'avió 3DLabPrint. Utilitzeu " +"\"Tancar forats\" per tancar tots els forats del model." + +msgid "Regular" +msgstr "Normal" + +msgid "Even-odd" +msgstr "Parell-imparell" + +msgid "Close holes" +msgstr "Tancar els forats" + +msgid "Z offset" +msgstr "Separació Z" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Aquest valor serà sumat ( o restat ) de totes les coordenades Z al Codi-G de " +"sortida. S'usa per compensar una mala posició del final de carrera Z: per " +"exemple, si el teu final de carrera deixa el broquet a 0.3mm de la placa " +"d'impressió, ajusta'l a -0.3 ( o repara el final de carrera )." + +msgid "Enable support" +msgstr "Habilitar suports" + +msgid "Enable support generation." +msgstr "Habilitar la generació de suports." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"normal( auto ) i arbre( auto ) s'utilitzen per generar suports " +"automàticament. Si se selecciona normal( manual ) o arbre( manual ), només " +"es generen suports forçats" + +msgid "normal(auto)" +msgstr "normal( auto )" + +msgid "tree(auto)" +msgstr "arbre( auto )" + +msgid "normal(manual)" +msgstr "normal( manual )" + +msgid "tree(manual)" +msgstr "arbre( manual )" + +msgid "Support/object xy distance" +msgstr "Distància suport/objecte a xy" + +msgid "XY separation between an object and its support" +msgstr "Separació XY entre un objecte i el seu suport" + +msgid "Pattern angle" +msgstr "Angle del patró" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Utilitzeu aquest paràmetre per rotar el patró de suport sobre el pla " +"horitzontal." + +msgid "On build plate only" +msgstr "Només a la placa d'impressió" + +msgid "Don't create support on model surface, only on build plate" +msgstr "" +"No crear suport a la superfície del model, només a la placa d'impressió" + +msgid "Support critical regions only" +msgstr "Suports només a regions crítiques" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Només crear suports a regions crítiques, incloent cua afilada, voladís, etc." + +msgid "Remove small overhangs" +msgstr "Eliminar els voladissos petits" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "Eliminar els voladissos petits que possiblement no necessiten suports." + +msgid "Top Z distance" +msgstr "Distància Z superior" + +msgid "The z gap between the top support interface and object" +msgstr "La distància z entre la interfície de suport superior i l'objecte" + +msgid "Bottom Z distance" +msgstr "Distància Z inferior" + +msgid "The z gap between the bottom support interface and object" +msgstr "La distància z entre la interfície de suport inferior i l'objecte" + +msgid "Support/raft base" +msgstr "Base del Suport/Vora d'Adherència" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filament per imprimir base del suport i Vora d'Adherència. \"Per defecte\" " +"significa que no s'utilitza cap filament específic per al suport i s'usarà " +"el filament actual" + +msgid "Avoid interface filament for base" +msgstr "Evitar el filament de la interfície per a la base" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Evitar utilitzar filament d'interfície de suport per imprimir la base de " +"suport si és possible." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Amplada de línia de suport. Si s'expressa en %, es calcularà sobre el " +"diàmetre del broquet." + +msgid "Interface use loop pattern" +msgstr "La interfície usa patró de bucle" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Cobrir la capa de contacte superior dels suports amb bucles. Desactivat per " +"defecte." + +msgid "Support/raft interface" +msgstr "Interfície de Suport/Vora d'Adherència" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filament per imprimir interfície de suport. \"Per defecte\" vol dir que no " +"hi ha filament específic per a la interfície de suport i s'utilitza el " +"filament actual" + +msgid "Top interface layers" +msgstr "Capes de la interfície superior" + +msgid "Number of top interface layers" +msgstr "Nombre de capes d'interfície superior" + +msgid "Bottom interface layers" +msgstr "Capes de la interfície inferior" + +msgid "Number of bottom interface layers" +msgstr "Nombre de capes de la interfície inferior" + +msgid "Same as top" +msgstr "Igual que la part superior" + +msgid "Top interface spacing" +msgstr "Espai entre línies de la interfície superior" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "" +"Espaiat de les línies de la interfície. Zero significa interfície sòlida" + +msgid "Bottom interface spacing" +msgstr "Espai entre línies de la interfície inferior" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Espaiat de les línies inferiors de la interfície. Zero significa interfície " +"sòlida" + +msgid "Speed of support interface" +msgstr "Velocitat de la interfície de suport" + +msgid "Base pattern" +msgstr "Patró de la base" + +msgid "Line pattern of support" +msgstr "Patró lineal del suport" + +msgid "Rectilinear grid" +msgstr "Quadrícula rectilínia" + +msgid "Hollow" +msgstr "Buit" + +msgid "Interface pattern" +msgstr "Patró de la interfície" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Patró de línia de la interfície de suport. El patró predeterminat per a la " +"interfície de suport no soluble és Rectilini, mentre que el patró " +"predeterminat per a la interfície de suport soluble és Concèntric" + +msgid "Rectilinear Interlaced" +msgstr "Entrellaçat Rectilini" + +msgid "Base pattern spacing" +msgstr "Espaiat del patró base" + +msgid "Spacing between support lines" +msgstr "Espaiat entre línies de suport" + +msgid "Normal Support expansion" +msgstr "Expansió de Suport Normal" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "" +"Augmentar ( + ) o disminuir ( - ) l'expansió horitzontal dels suports normals" + +msgid "Speed of support" +msgstr "Velocitat del suport" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"Estil i forma del suport. Per a un suport normal, projectar els suports en " +"una quadrícula normal crearà suports més estables ( per defecte ), mentre " +"que les torres de suport ajustades estalviaran material i reduiran les " +"cicatrius dels objectes.\n" +"Per al suport en arbre, els estils prim i orgànic fusionaran les branques de " +"manera més agressiva i estalviarà molt material ( orgànic per defecte ), " +"mentre que l'estil híbrid crearà una estructura similar al suport normal " +"sota grans voladissos plans." + +msgid "Snug" +msgstr "Ajustat" + +msgid "Tree Slim" +msgstr "Arbre Prim" + +msgid "Tree Strong" +msgstr "Arbre Fort" + +msgid "Tree Hybrid" +msgstr "Arbre Híbrid" + +msgid "Organic" +msgstr "Orgànic" + +msgid "Independent support layer height" +msgstr "Alçada de la capa de suport independent" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"La capa de suport utilitza una alçada de capa independent de la capa " +"d'objecte. Això permet que la distància Z s'ajusti individualment i estalvia " +"temps d'impressió. Aquesta opció no serà vàlida quan la Torre de Purga " +"estigui habilitada." + +msgid "Threshold angle" +msgstr "Pendent màxim" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Es generarà un suport per a voladissos l'angle de pendent dels quals estigui " +"per sota del llindar." + +msgid "Tree support branch angle" +msgstr "Angle de branca de suport en arbre" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Aquest ajustament determina l'angle màxim de voladís que les branques del " +"suport en arbre permeten fer. Si s'augmenta l'angle, les branques es poden " +"imprimir més horitzontalment, cosa que permet que arribin més lluny." + +msgid "Preferred Branch Angle" +msgstr "Angle de branca preferit" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"L'angle preferit de les branques, quan no han d'evitar el model. Utilitzeu " +"un angle inferior per fer-los més verticals i més estables. Utilitzeu un " +"angle més alt perquè les branques es fusionin més ràpidament." + +msgid "Tree support branch distance" +msgstr "Distància de la branca de suport en arbre" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"Aquest ajustament determina la distància entre els nodes veïns de suport en " +"arbre." + +msgid "Branch Density" +msgstr "Densitat de branques" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"Ajusta la densitat de l'estructura de suport utilitzada per generar les " +"puntes de les branques. Un valor més alt dóna com a resultat millors " +"voladissos, però els suports són més difícils d'eliminar, per la qual cosa " +"es recomana habilitar interfícies de suport superior en lloc d'un alt valor " +"de densitat de branques si es necessiten interfícies denses." + +msgid "Adaptive layer height" +msgstr "Alçada de Capa Adaptativa" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"Si activeu aquesta opció, l'alçada de la capa de suport en arbre, excepte la " +"primera, es calcularà automàticament " + +msgid "Auto brim width" +msgstr "Amplada de la Vora d'Adherència automàtica" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"Si activeu aquesta opció, es calcularà automàticament l'amplada de la Vora " +"d'Adherència per al suport en arbre" + +msgid "Tree support brim width" +msgstr "Amplada de la Vora d'Adherència del suport en arbre" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "" +"Distància de la branca de l'arbre a la línia de la Vora d'Adherència més " +"externa" + +msgid "Tip Diameter" +msgstr "Diàmetre de la punta" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Diàmetre de la punta de la branca per a suports orgànics." + +msgid "Tree support branch diameter" +msgstr "Diàmetre de la branca del suport en arbre" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Aquest ajustament determina el diàmetre inicial dels nodes de suport." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Angle de diàmetre de la branca" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"L'angle del diàmetre de les branques a mesura que es fan més gruixudes cap a " +"la part inferior. Un angle de 0 farà que les branques tinguin un gruix " +"uniforme sobre la seva longitud. Una mica d'angle pot augmentar " +"l'estabilitat del suport orgànic." + +msgid "Branch Diameter with double walls" +msgstr "Diàmetre de branca amb parets dobles" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"Les branques amb una àrea més gran que l'àrea d'un cercle d'aquest diàmetre " +"s'imprimiran amb parets dobles per a millorar l'estabilitat. Establiu aquest " +"valor a zero per a cap paret doble." + +msgid "Support wall loops" +msgstr "Parets al voltant del suport" + +msgid "This setting specify the count of walls around support" +msgstr "" +"Aquest ajustament especifica el nombre de perímetres al voltant del suport" + +msgid "Tree support with infill" +msgstr "Suport en arbre amb farciment" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Aquest paràmetre especifica si s'ha d'afegir farciment dins de grans buits " +"de suport en arbre" + +msgid "Activate temperature control" +msgstr "Activar el control de temperatura" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Activeu aquesta opció per al control de temperatura de la cambra. S'afegirà " +"una comanda M191 abans de \"machine_start_gcode\"\n" +"Comandes de Codi-G: M141 / M191 S ( 0-255 )" + +msgid "Chamber temperature" +msgstr "Temperatura de la cambra" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Una temperatura de cambra més alta pot ajudar a suprimir o reduir la " +"deformació( warping ) i potencialment conduir a una major resistència d'unió " +"entre capes per a materials d'alta temperatura com ABS, ASA, PC, PA, etc. Al " +"mateix temps, la filtració d'aire d'ABS i ASA empitjorarà. Mentre que per a " +"PLA, PETG, TPU, PVA i altres materials de baixa temperatura, la temperatura " +"real de la cambra no hauria de ser alta per evitar obstruccions, pel que 0, " +"que significa apagar, és molt recomanable" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Temperatura del broquet per les capes després de l'inicial" + +msgid "Detect thin wall" +msgstr "Detectar perímetres prims" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Detecta un perímetre prim que no pugui contenir dues línies d'amplada. I " +"utilitzar una sola línia per imprimir. Potser no s'imprimeix gaire bé, " +"perquè no és de bucle tancat" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Aquest Codi-G s'insereix quan canvia el filament, inclosa la comanda T per " +"activar el canvi d'eina" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "Aquest Codi-G s'insereix quan es canvia el rol d'extrusió" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Amplada de línia per a les superfícies superiors. Si s'expressa en %, es " +"calcularà sobre el diàmetre del broquet." + +msgid "Speed of top surface infill which is solid" +msgstr "Velocitat del farciment de la superfície superior que és sòlida" + +msgid "Top shell layers" +msgstr "Capes sòlides de la carcassa superior" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Aquest és el nombre de capes sòlides de la carcassa superior, inclosa la " +"capa superficial superior. Quan el gruix calculat per aquest valor sigui més " +"prim que el gruix de la carcassa superior, s'incrementaran les capes " +"superiors de la carcassa" + +msgid "Top solid layers" +msgstr "Capes sòlides superiors" + +msgid "Top shell thickness" +msgstr "Gruix mínim de la carcassa superior" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"El nombre de capes sòlides superiors s'incrementa en laminar si el gruix " +"calculat per les capes superiors de la carcassa és més prim que aquest " +"valor. Això pot evitar tenir una carcassa massa fina quan l'alçada de la " +"capa és petita. 0 vol dir que aquest ajustament està desactivat i que el " +"gruix de la carcassa superior està absolutament determinat per les capes de " +"la carcassa superior" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Velocitat de desplaçament més ràpida i sense extrusió" + +msgid "Wipe while retracting" +msgstr "Netejar durant retracció" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Moure el broquet al llarg de l'última trajectòria d'extrusió en les " +"retraccions per netejar el material que vessi del broquet. Això pot " +"minimitzar grumolls quan s'imprimeix una peça nova després del desplaçament" + +msgid "Wipe Distance" +msgstr "Distància de Neteja" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"Descriu quant de temps es mourà el broquet al llarg de l'última trajectòria " +"en les retraccions. \n" +"\n" +"Depenent de quant de temps trigui l'operació de neteja, de la rapidesa i de " +"quant de temps siguin els paràmetres de retracció de l'extrusora/filament, " +"pot ser necessari un moviment de retracció per retirar el filament " +"restant. \n" +"\n" +"Establint un valor a la quantitat de retracció abans de l'ajustament de " +"neteja següent, es realitzarà una retracció de l'excés abans de la neteja, " +"en cas contrari es realitzarà després." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"La Torre de Purga es pot utilitzar per netejar els residus al broquet i " +"estabilitzar la pressió de la cambra dins del broquet, per tal d'evitar " +"defectes d'aparença en imprimir objectes." + +msgid "Purging volumes" +msgstr "Volums de purga" + +msgid "Flush multiplier" +msgstr "Multiplicador de neteja" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"El volum de neteja real és igual al valor del multiplicador de neteja " +"multiplicat pels volums de neteja especificats a la taula." + +msgid "Prime volume" +msgstr "Volum de purga" + +msgid "The volume of material to prime extruder on tower." +msgstr "" +"El volum de material que l'extrusora ha de descarregar a la Torre de Purga." + +msgid "Width of prime tower" +msgstr "Amplada de la Torre de Purga" + +msgid "Wipe tower rotation angle" +msgstr "Angle de rotació de la Torre de Purga" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Angle de rotació de la Torre de Purga pel que fa a l'eix X." + +msgid "Stabilization cone apex angle" +msgstr "Angle de vèrtex del con d'estabilització" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Angle del vèrtex del con que s'utilitza per estabilitzar la Torre de Purga. " +"Un angle més gran significa una base més ampla." + +msgid "Wipe tower purge lines spacing" +msgstr "Espaiat de les línies de la Torre de Purga" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Espaiat de les línies de purga de la Torre de Purga." + +msgid "Maximum wipe tower print speed" +msgstr "Velocitat màxima d'impressió de la torre de purga" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"La velocitat màxima d'impressió en purgar a la torre de purga i imprimir a " +"la torre de purga capes poc denses. En la purga, si la velocitat de " +"farciment poc dens o la velocitat calculada de la màxima velocitat " +"volumètrica del filament és menor, s'utilitzarà la més baixa.\n" +"\n" +"En imprimir les capes poc denses, si la velocitat perimetral interna o la " +"velocitat calculada de la màxima velocitat volumètrica del filament és " +"menor, s'utilitzarà la més baixa.\n" +"\n" +"L'augment d'aquesta velocitat pot afectar l'estabilitat de la torre, així " +"com augmentar la força amb què el broquet xoca amb els grumolls que s'hagin " +"pogut formar a la torre de purga.\n" +"\n" +"Abans d'augmentar aquest paràmetre més enllà del valor per defecte de 90 mm/" +"segon, assegureu-vos que la impressora pugui fer un pont de manera fiable a " +"les velocitats augmentades i que el degoteig quan es produeixi el canvi " +"d'eina estigui ben controlat.\n" +"\n" +"Per als perímetres externs de la torre de purga, s'utilitza la velocitat " +"perimetral interna independentment d'aquesta configuració." + +msgid "Wipe tower extruder" +msgstr "Extrusor de la Torre de Purga" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"L'extrusora a usar per imprimir el perímetre de la Torre de Purga. Establiu " +"0 per utilitzar el que estigui disponible ( no soluble, preferentment )." + +msgid "Purging volumes - load/unload volumes" +msgstr "Volums de purga - volums de càrrega/descàrrega" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"Aquest vector desa els volums necessaris per canviar des de/fins a cada eina " +"utilitzada a la Torre de Purga. Aquests valors es fan servir per simplificar " +"la creació dels volums totals de purga a continuació." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"La purga després del canvi de filament es farà dins dels farciments dels " +"objectes. Això pot reduir la quantitat de residus i disminuir el temps " +"d'impressió. Si els perímetres estan impresos amb filament transparent, el " +"farciment de color mixt es veurà a l'exterior. No tindrà cap efecte, tret " +"que s'habiliti la Torre de Purga." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"La purga després del canvi de filament es farà dins del suport dels " +"objectes. Això pot reduir la quantitat de residus i disminuir el temps " +"d'impressió. No tindrà cap efecte, tret que s'habiliti la Torre de Purga." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Aquest objecte s'utilitzarà per purgar el broquet després d'un canvi de " +"filament per estalviar filament i disminuir el temps d'impressió. Com a " +"resultat, es barrejaran els colors dels objectes. No tindrà cap efecte, tret " +"que s'habiliti la Torre de Purga." + +msgid "Maximal bridging distance" +msgstr "Distància màxima dels ponts" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "Distància màxima entre suports a les seccions amb farciment poc dens." + +msgid "X-Y hole compensation" +msgstr "Compensació de forat( contorn intern ) X-Y" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Els forats( contorns interns ) de l'objecte creixeran o es reduiran en el " +"pla XY segons el valor configurat. Un valor positiu fa que els forats siguin " +"més grans. Un valor negatiu fa que els forats siguin més petits. Aquesta " +"funció s'utilitza per ajustar lleugerament la mida quan l'objecte té " +"problemes d'ensamblatge( encaix )" + +msgid "X-Y contour compensation" +msgstr "Compensació del contorn X-Y" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"El contorn( exterior ) de l'objecte creixerà o es reduirà en el pla XY " +"segons valor configurat. Un valor positiu fa que el contorn sigui més gran. " +"Un valor negatiu fa que el contorn sigui més petit. Aquesta funció " +"s'utilitza per ajustar lleugerament la mida quan l'objecte té problemes " +"d'ensamblatge( encaix )" + +msgid "Convert holes to polyholes" +msgstr "Converteix forats en poliforats" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Cerca forats gairebé circulars que abastin més d'una capa i converteix la " +"geometria en poliforats. Utilitza la mida del broquet i el diàmetre ( més " +"gran ) per calcular el poliforat.\n" +"Veure http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "Marge de detecció de poliforats" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Desviació màxima d'un punt respecte al radi estimat del cercle.\n" +"Com que els cilindres sovint s'exporten com a triangles de mida variable, " +"els punts poden no estar a la circumferència del cercle. Aquest ajustament " +"us permet un cert marge de maniobra per ampliar la detecció.\n" +"En mm o en % o del radi." + +msgid "Polyhole twist" +msgstr "Gir del poliforat" + +msgid "Rotate the polyhole every layer." +msgstr "Rotar el poliforat a cada capa." + +msgid "G-code thumbnails" +msgstr "Mida Miniatures al Codi-G" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Mides de la imatge que s'emmagatzemarà en fitxers .gcode i .sl1 / .sl1s, en " +"el format següent: \"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "Format de les miniatures del Codi-G" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Format de les miniatures del Codi-G: PNG per a la millor qualitat, JPG per a " +"un menor tamany( pes ), QOI per a firmware de baixa memòria" + +msgid "Use relative E distances" +msgstr "Utilitzar distàncies E relatives" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"Es recomana l'extrusió relativa quan s'utilitza l'opció \"label_objects\". " +"Alguns extrusors funcionen millor amb aquesta opció sense marcar( mode " +"d'extrusió absoluta ). La Torre de Purga només és compatible amb el mode " +"relatiu. Es recomana a la majoria d'impressores. Per defecte està marcat" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"El generador de perímetres Clàssic produeix perímetres amb amplada " +"d'extrusió constant i per a zones molt primes s'usa el farciment de buits. " +"El motor Aràcne produeix perímetres amb amplada d'extrusió variable" + +msgid "Classic" +msgstr "Clàssic" + +msgid "Arachne" +msgstr "Aràcne" + +msgid "Wall transition length" +msgstr "Longitud de transició de perímetre" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Quan es fa la transició entre diferents números de perímetres a mesura que " +"la peça es fa més prima, s'assigna una certa quantitat d'espai per separar o " +"unir els segments de perímetre. S'expressa en percentatge sobre el diàmetre " +"del broquet" + +msgid "Wall transitioning filter margin" +msgstr "Marge de filtre de transició de perímetre" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Evita la transició d'anada i tornada entre un perímetre addicional i un de " +"menys. Aquest marge amplia el rang d'amplades d'extrusió que segueixen a " +"[Amplada Mínima de Perímetre - marge, 2 * Amplada Mínima de Perímetre + " +"marge]. L'augment d'aquest marge redueix el nombre de transicions, cosa que " +"redueix el nombre d'arrencades/aturades d'extrusió i el temps de " +"desplaçament. No obstant això, una gran variació de l'amplada d'extrusió pot " +"provocar problemes de subextrusió o sobreextrusió. S'expressa en percentatge " +"sobre el diàmetre del broquet" + +msgid "Wall transitioning threshold angle" +msgstr "Angle llindar de transició de perímetre" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Quan crear transicions entre nombres parells i senars de perímetres. Una " +"forma en falca amb un angle més gran que aquest ajustament no tindrà " +"transicions i no s'imprimiran perímetres al centre per omplir l'espai " +"restant. La reducció d'aquest ajustament redueix el nombre i la longitud " +"d'aquests perímetres centrals, però pot deixar buits o sobreextruir" + +msgid "Wall distribution count" +msgstr "Recompte de distribució de perímetres" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"El nombre de perímetres, comptats des del centre, sobre els quals cal " +"estendre la variació. Els valors més baixos signifiquen que els perímetres " +"exteriors no canvien d'amplada" + +msgid "Minimum feature size" +msgstr "Mida mínima de l'element" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Gruix mínim dels elements fins. Els elements del model que siguin més prims " +"que aquest valor no s'imprimiran, mentre que les entitats més gruixudes que " +"la mida mínima s'ampliaran a l'amplada mínima del perímetre. S'expressa en " +"percentatge sobre el diàmetre del broquet" + +msgid "Minimum wall length" +msgstr "Longitud mínima del perímetre" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"Ajusteu aquest valor per evitar que s'imprimeixin perímetres curts sense " +"tancar, cosa que podria augmentar el temps d'impressió. Els valors més alts " +"eliminen més perímetres i més llargs.\n" +"\n" +"NOTA: Les superfícies inferior i superior no es veuran afectades per aquest " +"valor per evitar buits visuals a la part exterior del model. Ajusteu " +"\"Llindar d'un sol perímetre\" a la configuració avançada següent per " +"ajustar la sensibilitat del que es considera una superfície superior. " +"L'ajustament del \"Llindar d'un sol perímetre\" només és visible si aquesta " +"opció de configuració s'estableix per sobre del valor predeterminat de 0,5 o " +"si les superfícies superiors d'un sol perímetre estan habilitades." + +msgid "First layer minimum wall width" +msgstr "Amplada mínima del perímetre de la primera capa" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"Es recomana que l'amplada mínima del perímetre que s'ha d'utilitzar per a la " +"primera capa sigui de la mateixa mida que el broquet. S'espera que aquest " +"ajustament millori l'adhesió." + +msgid "Minimum wall width" +msgstr "Amplada mínima del perímetre" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Amplada del perímetre que substituirà als elements prims ( segons la mida " +"mínima de l'element ) del model. Si l'amplada mínima del perímetre és més " +"fina que el gruix de l'element el perímetre esdevindrà tan gruixut com el " +"propi element. S'expressa en percentatge sobre el diàmetre del broquet" + +msgid "Detect narrow internal solid infill" +msgstr "Detectar de farciment sòlid intern estret" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Aquesta opció detectarà automàticament una àrea de farciment sòlid intern " +"estret. Si està habilitat, s'utilitzarà un patró concèntric a l'àrea per " +"accelerar la impressió. En cas contrari, el patró rectilini s'utilitzará per " +"defecte." + +msgid "invalid value " +msgstr "valor no vàlid " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Valor no vàlid quan el mode Gerro en Espiral està habilitat: " + +msgid "too large line width " +msgstr "amplada de línia massa gran " + +msgid " not in range " +msgstr " fora de rang " + +msgid "Minimum save" +msgstr "Guardat mínim" + +msgid "export 3mf with minimum size." +msgstr "exportar 3MF amb la mida mínima." + +msgid "No check" +msgstr "No comprovar" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"No executar cap comprovació de validesa, com ara la comprovació de " +"conflictes de trajectòria al Codi-G." + +msgid "Ensure on bed" +msgstr "Assegurar a la placa" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Aixeca l'objecte per sobre del llit quan estigui parcialment a sota. " +"Desactivat per defecte" + +msgid "Orient Options" +msgstr "Opcions d'orientació" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "Opcions d'orientació: 0-deshabilitar, 1-habilitar, altres-auto" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Angle de rotació al voltant de l'eix Z en graus." + +msgid "Rotate around Y" +msgstr "Rotar al voltant de l'eix Y" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Angle de rotació al voltant de l'eix Y en graus." + +msgid "Data directory" +msgstr "Directori de dades" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Carrega i emmagatzema configuracions al directori donat. Això és útil per " +"mantenir diferents perfils o incloure configuracions des d'un emmagatzematge " +"de xarxa." + +msgid "Load custom gcode" +msgstr "Carregar Codi-G personalitzat" + +msgid "Load custom gcode from json" +msgstr "Carregar el Codi-G personalitzat des de json" + +msgid "Current z-hop" +msgstr "Salt-z actual" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "Conté el salt-z present al principi del bloc de codi-G personalitzat." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Posició de l'extrusora al començament del bloc de codi-G personalitzat. Si " +"el codi-G personalitzat es mou a un altre lloc, s'hauria d'escriure a " +"aquesta variable perquè PrusaSlicer sàpiga des d'on es mou quan recuperi el " +"control." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"Estat de retracció al començament del bloc de codi-G personalitzat. Si el " +"codi-G personalitzat mou l'eix de l'extrusora, hauria d'escriure a aquesta " +"variable perquè PrusaSlicer es retiri correctament quan recuperi el control." + +msgid "Extra deretraction" +msgstr "Deretracció extra" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" +"En l'actualitat es preveu un cebament addicional de l'extrusora després de " +"la deretracció." + +msgid "Current extruder" +msgstr "Extrusora actual" + +msgid "Zero-based index of currently used extruder." +msgstr "Índex de base zero de l'extrusora utilitzada actualment." + +msgid "Current object index" +msgstr "Índex de l'objecte actual" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Específic per a impressió seqüencial. Índex basat en zero de l'objecte " +"imprès actualment." + +msgid "Has wipe tower" +msgstr "Té torre de neteja" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Si s'està generant o no torre de neteja a la impressió." + +msgid "Initial extruder" +msgstr "Extrusora inicial" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Índex basat en zero de la primera extrusora utilitzada en la impressió. El " +"mateix que initial_tool." + +msgid "Initial tool" +msgstr "Eina inicial" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Índex basat en zero de la primera extrusora utilitzada en la impressió. El " +"mateix que initial_extruder." + +msgid "Is extruder used?" +msgstr "S'utilitza extrusora?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" +"Vector de booleans que indica si s'utilitza un extrusor donat en la " +"impressió." + +msgid "Volume per extruder" +msgstr "Volum per extrusora" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" +"Volum total de filament extruït per extrusora durant tota la impressió." + +msgid "Total toolchanges" +msgstr "Nombre Total de canvis d'eina" + +msgid "Number of toolchanges during the print." +msgstr "Nombre de canvis d'eina durant la impressió." + +msgid "Total volume" +msgstr "Volum total" + +msgid "Total volume of filament used during the entire print." +msgstr "Volum total de filament utilitzat durant tota la impressió." + +msgid "Weight per extruder" +msgstr "Pes per extrusora" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" +"Pes per extrusora extrusionada durant tota la impressió. Calculat a partir " +"de filament_density, valor a Configuració del Filament." + +msgid "Total weight" +msgstr "Pes total" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" +"Pes total de la impressió. Calculat a partir de filament_density valor a " +"Configuració del Filament." + +msgid "Total layer count" +msgstr "Recompte total de capes" + +msgid "Number of layers in the entire print." +msgstr "Nombre de capes en tota la impressió." + +msgid "Number of objects" +msgstr "Nombre d'objectes" + +msgid "Total number of objects in the print." +msgstr "Nombre total d'objectes de la impressió." + +msgid "Number of instances" +msgstr "Nombre d'instàncies" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" +"Nombre total d'instàncies d'objectes de la impressió, sumades a tots els " +"objectes." + +msgid "Scale per object" +msgstr "Escalat per objecte" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"Conté una cadena amb la informació sobre quin escalat s'ha aplicat als " +"objectes individuals. La indexació dels objectes es basa en zero (el primer " +"objecte té índex 0).\n" +"Exemple: 'x:100% y:50% z:100'." + +msgid "Input filename without extension" +msgstr "Nom del fitxer d'entrada sense extensió" + +msgid "Source filename of the first object, without extension." +msgstr "Nom del fitxer font del primer objecte, sense extensió." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "El vector té dos elements: coordenades x i y del punt. Valors en mm." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" +"El vector té dos elements: dimensió x i y de la caixa delimitadora. Valors " +"en mm." + +msgid "First layer convex hull" +msgstr "Casc convex de la primera capa" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"Vector de punts de la primera capa del casc convex. Cada element té el " +"següent format:'[x, y]' (x i y són nombres de coma flotant en mm)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "" +"Cantonada inferior esquerra de la caixa delimitadora de la primera capa" + +msgid "Top-right corner of first layer bounding box" +msgstr "Cantonada superior dreta de la caixa delimitadora de la primera capa" + +msgid "Size of the first layer bounding box" +msgstr "Mida de la caixa delimitadora de la primera capa" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "" +"Cantonada inferior esquerra de la caixa delimitadora del llit d'impressió" + +msgid "Top-right corner of print bed bounding box" +msgstr "Cantonada superior dreta de la caixa delimitadora del llit d'impressió" + +msgid "Size of the print bed bounding box" +msgstr "Mida de la caixa delimitadora del llit d'impressió" + +msgid "Timestamp" +msgstr "Marca de temps" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "Cadena que conté l'hora actual en format yyyyMMdd-hhmmss." + +msgid "Day" +msgstr "Dia" + +msgid "Hour" +msgstr "Hora" + +msgid "Minute" +msgstr "Minut" + +msgid "Print preset name" +msgstr "Nom del perfil d'impressió" + +msgid "Name of the print preset used for slicing." +msgstr "Nom del perfil d'impressió usat per laminar." + +msgid "Filament preset name" +msgstr "Nom del perfil de filament" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Noms dels perfils de filament utilitzats per laminar. La variable és un " +"vector que conté un nom per a cada extrusora." + +msgid "Printer preset name" +msgstr "Noms del perfil d'impressora" + +msgid "Name of the printer preset used for slicing." +msgstr "Nom del perfil de la impressora utilitzada per laminar." + +msgid "Physical printer name" +msgstr "Nom de la impressora física" + +msgid "Name of the physical printer used for slicing." +msgstr "Nom de la impressora física utilitzada per laminar." + +msgid "Layer number" +msgstr "Número de capa" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" +"Índex de la capa actual. Basat en 1( és a dir, la primera capa és el número " +"1 )." + +msgid "Layer z" +msgstr "Capa Z" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Alçada de la capa actual sobre el llit d'impressió, mesurada a la part " +"superior de la capa." + +msgid "Maximal layer z" +msgstr "Capa màxima Z" + +msgid "Height of the last layer above the print bed." +msgstr "Alçada de l'última capa sobre el llit d'impressió." + +msgid "Filament extruder ID" +msgstr "Identificador de l'extrusora de filament" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "L'identificador actual de l'extrusora. El mateix que current_extruder." + +msgid "Error in zip archive" +msgstr "Error amb el fitxer ZIP" + +msgid "Generating walls" +msgstr "Generant perímetres" + +msgid "Generating infill regions" +msgstr "Generant zones de farciment" + +msgid "Generating infill toolpath" +msgstr "Generant la trajectòria de l'eina de farciment" + +msgid "Detect overhangs for auto-lift" +msgstr "Detectar voladissos per a l'elevació automàtica" + +msgid "Generating support" +msgstr "Generant suport" + +msgid "Checking support necessity" +msgstr "Comprovació de la necessitat de suport" + +msgid "floating regions" +msgstr "regions flotants" + +msgid "floating cantilever" +msgstr "voladís flotant" + +msgid "large overhangs" +msgstr "grans voladissos" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Sembla que l'objecte %s té %s. Si us plau, reorienteu l'objecte o habiliteu " +"la generació de suport." + +msgid "Optimizing toolpath" +msgstr "Optimitzant la trajectòria de l'eina" + +msgid "Slicing mesh" +msgstr "Laminat de malla" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"No s'han detectat capes. És possible que vulgueu reparar els fitxers STL o " +"comprovar-ne la mida o el gruix i tornar-ho a provar.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"No s'utilitzarà la compensació de mida XY d'un objecte perquè també està " +"pintat en colors.\n" +"La compensació de mida XY no es pot combinar amb la pintura en color." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Suport: generar trajectòria d'eina a la capa %d" + +msgid "Support: detect overhangs" +msgstr "Suport: detectar voladissos" + +msgid "Support: generate contact points" +msgstr "Suport: generar punts de contacte" + +msgid "Support: propagate branches" +msgstr "Suport: propagar branques" + +msgid "Support: draw polygons" +msgstr "Suport: dibuixar polígons" + +msgid "Support: generate toolpath" +msgstr "Suport: generar trajectòria d'eina" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Suport: generar polígons a la capa %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Suport: reparar forats a la capa %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Suport: propagar branques a la capa %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Format de fitxer desconegut. El fitxer d'entrada ha de tenir extensió .stl, ." +"obj, .amf( .xml )." + +msgid "Loading of a model file failed." +msgstr "La càrrega d'un fitxer de model ha fallat." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "El fitxer subministrat no s'ha pogut llegir perquè està buit" + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Format de fitxer desconegut. El fitxer d'entrada ha de tenir extensió .3mf " +"o .zip.amf." + +msgid "Canceled" +msgstr "Cancel·lat" + +msgid "load_obj: failed to parse" +msgstr "load_obj: no s'ha pogut analitzar" + +msgid "load mtl in obj: failed to parse" +msgstr "carrega mtl a obj: no s'ha pogut analitzar" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "El fitxer conté polígons amb més de 4 vèrtexs." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "El fitxer conté polígons amb menys de 2 vèrtexs." + +msgid "The file contains invalid vertex index." +msgstr "El fitxer conté índex de vèrtex no vàlid." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Aquest fitxer OBJ no s'ha pogut llegir perquè està buit." + +msgid "Flow Rate Calibration" +msgstr "Calibratge de Ratio de Flux" + +msgid "Max Volumetric Speed Calibration" +msgstr "Calibratge de Velocitat Volumètrica Màxima" + +msgid "Manage Result" +msgstr "Gestionar els resultats" + +msgid "Manual Calibration" +msgstr "Calibratge manual" + +msgid "Result can be read by human eyes." +msgstr "El resultat pot ser llegit pels ulls humans." + +msgid "Auto-Calibration" +msgstr "Calibratge automàtic" + +msgid "We would use Lidar to read the calibration result" +msgstr "El Micro-Lidar s'utilitzarà per llegir el resultat del calibratge" + +msgid "Prev" +msgstr "Ant" + +msgid "Recalibration" +msgstr "Recalibratge" + +msgid "Calibrate" +msgstr "Calibrar" + +msgid "Finish" +msgstr "Acabar" + +msgid "How to use calibration result?" +msgstr "Com usar el resultat del calibratge?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"Podeu canviar el Factor de Calibratge de Dinàmiques de Flux en l'edició de " +"materials" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"La versió actual del firmware de la impressora no admet el calibratge.\n" +"Actualitzeu el firmware de la impressora." + +msgid "Calibration not supported" +msgstr "No s'admet calibratge" + +msgid "Error desc" +msgstr "Descripció de l'error" + +msgid "Extra info" +msgstr "Informació addicional" + +msgid "Flow Dynamics" +msgstr "Dinàmiques de Flux" + +msgid "Flow Rate" +msgstr "Ratio de Flux" + +msgid "Max Volumetric Speed" +msgstr "Velocitat Volumètrica Màxima" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Introduïu valors vàlids:\n" +"Valor inicial: >= %.1f\n" +"Valor final: <= %.1f\n" +"Valor final: > Valor inicial\n" +"Valor de pas: >= %.3f )" + +msgid "The name cannot be empty." +msgstr "El nom no pot estar buit." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "El perfil seleccionat: %s no es troba." + +msgid "The name cannot be the same as the system preset name." +msgstr "El nom no pot ser el mateix que el nom de perfil del sistema." + +msgid "The name is the same as another existing preset name" +msgstr "El nom és el mateix que d'un altre perfil existent" + +msgid "create new preset failed." +msgstr "s'ha produït un error en la creació d'un nou perfil." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Estàs segur de cancel·lar el calibratge actual i tornar a la pàgina d'inici?" + +msgid "No Printer Connected!" +msgstr "No hi ha cap impressora connectada!" + +msgid "Printer is not connected yet." +msgstr "La impressora encara no està connectada." + +msgid "Please select filament to calibrate." +msgstr "Seleccioneu el filament per calibrar." + +msgid "The input value size must be 3." +msgstr "El valor de mida d'entrada ha de ser 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"Aquest tipus de màquina només pot contenir 16 resultats històrics per " +"broquet. Podeu suprimir els resultats de l'historial existents i, a " +"continuació, iniciar el calibratge. O podeu continuar el calibratge, però no " +"podeu crear nous resultats històrics de calibratge. \n" +"Encara vols continuar amb el calibratge?" + +msgid "Connecting to printer..." +msgstr "Connectant amb la impressora..." + +msgid "The failed test result has been dropped." +msgstr "El resultat de la prova fallida ha estat descartat." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "" +"El resultat del Calibratge de les Dinàmiques de Flux s'ha desat a la " +"impressora" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"Ja hi ha un resultat històric de calibratge amb el mateix nom: %s. Només es " +"guarda un dels resultats amb el mateix nom. Estàs segur que vols " +"sobreescriure el resultat històric?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"Aquest tipus de màquina només pot contenir %d resultats de l'historial per " +"broquet. Aquest resultat no es guardarà." + +msgid "Internal Error" +msgstr "Error intern" + +msgid "Please select at least one filament for calibration" +msgstr "Seleccioneu com a mínim un filament per al calibratge" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "El resultat del calibratge del Ratio de Flux s'ha desat al perfil" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"El resultat del calibratge de velocitat volumètrica màxima s'ha desat al " +"perfil" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Quan necessiteu el Calibratge de les Dinàmiques de Flux" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Hem afegit el calibratge automàtic per a diferents filaments, el qual està " +"totalment automatitzat i el resultat es guardarà a la impressora per al seu " +"ús futur. Només cal fer el calibratge en els següents casos:\n" +"1. Si introdueixes un filament nou de diferents marques/models o el filament " +"està humit;\n" +"2. Si el broquet està desgastat o es substitueix per un de nou;\n" +"3. Si es canvia la velocitat volumètrica màxima o la temperatura d'impressió " +"a la configuració del filament." + +msgid "About this calibration" +msgstr "Sobre aquest calibratge" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" +"Trobeu els detalls del calibratge de la dinàmica de flux al nostre wiki.\n" +"\n" +"Normalment el calibratge és innecessari. Quan inicieu una impressió d'un sol " +"color/material, amb l'opció \"calibratge de dinàmica de flux\" marcada al " +"menú d'inici d'impressió, la impressora seguirà la forma antiga, calibrarà " +"el filament abans de la impressió; Quan inicieu una impressió multicolor/" +"material, la impressora utilitzarà el paràmetre de compensació predeterminat " +"per al filament durant cada canvi de filament, el qual tindrà un bon " +"resultat en la majoria dels casos.\n" +"\n" +"Tingueu en compte que hi ha alguns casos que poden fer que els resultats del " +"calibratge no siguin fiables, com ara una adhesió insuficient a la placa de " +"construcció. Es pot aconseguir millorar l'adhesió rentant la placa de " +"construcció o aplicant cola. Per obtenir més informació sobre aquest tema, " +"consulteu el nostre Wiki.\n" +"\n" +"Els resultats del calibratge tenen al voltant d'un 10 per cent de tremolor " +"en la nostra prova, el que pot fer que el resultat no sigui exactament el " +"mateix en cada calibratge. Encara estem investigant la causa arrel per fer " +"millores amb noves actualitzacions." + +msgid "When to use Flow Rate Calibration" +msgstr "Quan s'ha d'utilitzar el Calibratge del Ratio de Flux" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"Després d'utilitzar el Calibratge de Dinàmiques de Flux, és possible que " +"encara hi hagi alguns problemes d'extrusió, com ara:\n" +"1. Sobreextrusió: Excés de material a l'objecte imprès, formant grumolls, o " +"que les capes semblin més gruixudes del que s'esperava i no uniformes.\n" +"2. Subextrusió: Capes molt fines, farciment poc resistent o buits a la capa " +"superior del model, fins i tot quan s'imprimeix lentament.\n" +"3. Mala Qualitat de la Superfície: la superfície de les impressions sembla " +"rugosa o desigual.\n" +"4. Integritat Estructural Feble: les impressions es trenquen fàcilment o no " +"semblen tan resistents com haurien de ser." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"A més, el Calibratge del Ratio de Flux és crucial per als materials " +"escumosos com el LW-PLA utilitzat en avions RC. Aquests materials " +"s'expandeixen molt quan s'escalfen i el calibratge proporciona un ratio de " +"flux de referència útil." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"El Calibratge del Ratio de Flux mesura la relació entre els volums " +"d'extrusió esperats i els reals. La configuració predeterminada funciona bé " +"a les impressores Bambu Lab i als filaments oficials, ja que s'han calibrat " +"prèviament i s'han ajustat amb precisió. Per a un filament normal, " +"normalment no necessitareu realitzar un Calibratge del Ratio de Flux tret " +"que encara vegeu els defectes esmentats després d'haver fet altres " +"calibratges. Per a més detalls, consulteu l'article wiki." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"El Calibratge del Ratio de Flux Automàtic utilitza la tecnologia Micro-Lidar " +"de Bambu Lab, mesurant directament els patrons de calibratge. No obstant " +"això, tingueu en compte que l'eficàcia i la precisió d'aquest mètode es " +"poden veure compromeses amb tipus específics de materials. En particular, " +"els filaments transparents o semitransparents, amb partícules brillants o " +"amb un acabat altament reflectant poden no ser adequats per a aquest " +"calibratge i poden produir resultats poc desitjables.\n" +"\n" +"Els resultats del calibratge poden variar entre cada calibratge o filament. " +"Encara estem millorant la precisió i la compatibilitat d'aquest calibratge " +"mitjançant actualitzacions de firmware al llarg del temps.\n" +"\n" +"Precaució: El Calibratge del Ratio de Flux és un procés avançat, que només " +"han d'usar aquells que entenguin completament el seu propòsit i " +"implicacions. L'ús incorrecte pot provocar impressions de qualitat inferior " +"o danys a la impressora. Assegureu-vos de llegir atentament i entendre el " +"procés abans de fer-ho." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Quan necessiti Calibratge de Velocitat Volumètrica Màxima" + +msgid "Over-extrusion or under extrusion" +msgstr "Sobre extrusió o infra extrusió" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"Es recomana calibrar la Velocitat Volumètrica Màxima quan s'imprimeix amb:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "material amb contracció/expansió tèrmica significativa, com ara..." + +msgid "materials with inaccurate filament diameter" +msgstr "materials amb diàmetre de filament inexacte" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "Hem trobat el millor Factor de Calibratge de Dinàmiques de Flux" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Part del calibratge ha fallat! Hauríeu de netejar la placa i tornar-ho a " +"intentar. El resultat fallit de la prova serà descartat." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Us recomanem afegir marca, material, tipus i fins i tot nivell d'humitat al " +"Nom" + +msgid "Failed" +msgstr "Ha fallat" + +msgid "Please enter the name you want to save to printer." +msgstr "Introduïu el nom que voleu assignar a la impressora." + +msgid "The name cannot exceed 40 characters." +msgstr "El nom no pot superar els 40 caràcters." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Només es desarà un dels resultats amb el mateix nom. Estàs segur que vols " +"anul·lar els altres resultats?" + +msgid "Please find the best line on your plate" +msgstr "Busqueu la millor línia a la placa" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Busqueu la cantonada amb un grau d'extrusió perfecte" + +msgid "Input Value" +msgstr "Valor d'entrada" + +msgid "Save to Filament Preset" +msgstr "Desar Perfil de Filament" + +msgid "Preset" +msgstr "Perfil" + +msgid "Record Factor" +msgstr "Factor de guardat" + +msgid "We found the best flow ratio for you" +msgstr "Hem trobat la millor Ratio de Flux per a tú" + +msgid "Flow Ratio" +msgstr "Ratio de Flux" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Introduïu un valor vàlid ( 0.0 < Ratio de Flux < 2.0 )" + +msgid "Please enter the name of the preset you want to save." +msgstr "Introduïu el nom del perfil que voleu desar." + +msgid "Calibration1" +msgstr "Calibratge1" + +msgid "Calibration2" +msgstr "Calibratge2" + +msgid "Please find the best object on your plate" +msgstr "Busqueu el millor objecte a la placa" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "" +"Emplenar el valor que hi ha a sobre del bloc amb la superfície superior més " +"llisa" + +msgid "Skip Calibration2" +msgstr "Saltar calibratge2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "ratio de flux : %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Trieu un bloc amb la superfície superior més llisa" + +msgid "Please choose a block with smoothest top surface." +msgstr "Trieu un bloc amb la superfície superior més llisa." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "Introduïu un valor vàlid ( 0 <= Velocitat Volumètrica Màxima <= 60 )" + +msgid "Calibration Type" +msgstr "Tipus de calibratge" + +msgid "Complete Calibration" +msgstr "Calibratge Complet" + +msgid "Fine Calibration based on flow ratio" +msgstr "Calibratge Fi basat en la Ratio de Flux" + +msgid "Title" +msgstr "Títol" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"S'imprimirà un model de prova. Elimineu la placa d'impressió i torneu-la a " +"col·locar al llit calent abans del calibratge." + +msgid "Printing Parameters" +msgstr "Paràmetres d'impressió" + +msgid "Plate Type" +msgstr "Tipus de placa" + +msgid "filament position" +msgstr "posició del filament" + +msgid "External Spool" +msgstr "Bobina Externa" + +msgid "Filament For Calibration" +msgstr "Filament per al Calibratge" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Consells per al material de calibratge: \n" +"- Materials que poden compartir la mateixa temperatura de llit\n" +"- Marca i família de filaments diferents ( Marca = Bambu, Família = Bàsic, " +"Mate )" + +msgid "Pattern" +msgstr "Patró" + +msgid "Method" +msgstr "Mètode" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s no és compatible amb %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "" +"TPU no és compatible amb el Calibratge Automàtic de Dinàmiques de Flux." + +msgid "Connecting to printer" +msgstr "Connectant amb la impressora" + +msgid "From k Value" +msgstr "Des del valor k" + +msgid "To k Value" +msgstr "Al valor k" + +msgid "Step value" +msgstr "Valor del pas" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "" +"El diàmetre del broquet s'ha sincronitzat des de la configuració d'impressora" + +msgid "From Volumetric Speed" +msgstr "Des de la Velocitat Volumètrica" + +msgid "To Volumetric Speed" +msgstr "A la Velocitat Volumètrica" + +msgid "Flow Dynamics Calibration Result" +msgstr "Resultat del Calibratge de Dinàmiques de Flux" + +msgid "New" +msgstr "Nou" + +msgid "No History Result" +msgstr "Sense Resultats Històrics" + +msgid "Success to get history result" +msgstr "Èxit per obtenir resultats històrics" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "" +"Actualitzar els registres històrics de Calibratge de Dinàmiques de Flux" + +msgid "Action" +msgstr "Acció" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "" +"Aquest tipus de màquina només pot contenir %d resultats de l'historial per " +"broquet." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Editeu el Calibratge de Dinàmiques de Flux" + +msgid "New Flow Dynamic Calibration" +msgstr "Calibratge de Dinàmiques de Flux" + +msgid "Ok" +msgstr "D’acord" + +msgid "The filament must be selected." +msgstr "S'ha de seleccionar el filament." + +msgid "Network lookup" +msgstr "Cerca de xarxa" + +msgid "Address" +msgstr "Adreça" + +msgid "Hostname" +msgstr "Nom d'amfitrió( host )" + +msgid "Service name" +msgstr "Nom del servei" + +msgid "OctoPrint version" +msgstr "Versió d'Octoprint" + +msgid "Searching for devices" +msgstr "Cercant dispositius" + +msgid "Finished" +msgstr "Finalitzat" + +msgid "Multiple resolved IP addresses" +msgstr "Múltiples adreces IP resoltes" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"Hi ha diverses adreces IP que responen al nom d'amfitrió( host ) %1%.\n" +"Seleccioneu-ne la que s'hagi d'utilitzar." + +msgid "PA Calibration" +msgstr "Calibratge PA( Pressure Advance )" + +msgid "DDE" +msgstr "DDE( Direct Drive Extruder )" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "Tipus d'extrusora" + +msgid "PA Tower" +msgstr "Torre PA( Pressure Advance )" + +msgid "PA Line" +msgstr "Línia PA( Pressure Advance )" + +msgid "PA Pattern" +msgstr "Patró PA( Pressure Advance )" + +msgid "Start PA: " +msgstr "Inici PA( Pressure Advance ): " + +msgid "End PA: " +msgstr "Final PA( Pressure Advance ): " + +msgid "PA step: " +msgstr "Pas de PA( Pressure Advance ): " + +msgid "Print numbers" +msgstr "Imprimir números" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Introduïu valors vàlids:\n" +"Inici PA( Pressure Advance ): >= 0,0\n" +"Final PA( Pressure Advance ): > Inici PA\n" +"Pas de PA( Pressure Advance ): >= 0,001 )" + +msgid "Temperature calibration" +msgstr "Calibratge de temperatura" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "PCTG" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Tipus de filament" + +msgid "Start temp: " +msgstr "Temperatura Inicial: " + +msgid "End temp: " +msgstr "Temperatura final: " + +msgid "Temp step: " +msgstr "Pas de temperatura: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Introduïu valors vàlids:\n" +"Temperatura inicial: <= 350\n" +"Temperatura final: >= 170\n" +"Temperatura inicial > Temperatura final + 5 )" + +msgid "Max volumetric speed test" +msgstr "Prova de velocitat volumètrica màxima" + +msgid "Start volumetric speed: " +msgstr "Velocitat volumètrica incial: " + +msgid "End volumetric speed: " +msgstr "Velocitat volumètrica final: " + +msgid "step: " +msgstr "pas: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Introduïu valors vàlids:\n" +"Inici > 0 \n" +"pas >= 0\n" +"final > inici + pas )" + +msgid "VFA test" +msgstr "Prova VFA( Artefactes Verticals Fins )" + +msgid "Start speed: " +msgstr "Velocitat d'inici: " + +msgid "End speed: " +msgstr "Velocitat final: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Introduïu valors vàlids:\n" +"Inici > 10 \n" +"pas >= 0\n" +"final >inici + pas )" + +msgid "Start retraction length: " +msgstr "Longitud de la retracció d'inici: " + +msgid "End retraction length: " +msgstr "Longitud de la retracció final: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "Enviar el Codi-G al amfitrió( host ) d'impressió" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Pujar al host amb el següent nom de fitxer:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "" +"Utilitzeu barres inclinades ( / ) com a separador de directoris si cal." + +msgid "Upload to storage" +msgstr "Pujar a l'emmagatzematge" + +msgid "Switch to Device tab after upload." +msgstr "Canvieu a la pestanya Dispositiu després de penjar-lo." + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "El nom del fitxer que vol pujar no acaba amb \"%s\". Voleu continuar?" + +msgid "Upload" +msgstr "Pujar" + +msgid "Print host upload queue" +msgstr "Cua de pujada de l'amfitrió( host ) d'impressió" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Progrés" + +msgid "Host" +msgstr "Amfitrió( Host )" + +msgctxt "OfFile" +msgid "Size" +msgstr "Mida" + +msgid "Filename" +msgstr "Nom del fitxer" + +msgid "Cancel selected" +msgstr "Cancel·lar selecció" + +msgid "Show error message" +msgstr "Mostra missatge d'error" + +msgid "Enqueued" +msgstr "A la cua" + +msgid "Uploading" +msgstr "Pujant" + +msgid "Cancelling" +msgstr "Cancel·lant" + +msgid "Error uploading to print host" +msgstr "Error en pujar a la impressora" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "No es pot realitzar una operació booleana amb les peces seleccionades" + +msgid "Mesh Boolean" +msgstr "Booleà de malla" + +msgid "Union" +msgstr "Unió" + +msgid "Difference" +msgstr "Diferència" + +msgid "Intersection" +msgstr "Intersecció" + +msgid "Source Volume" +msgstr "Volum original" + +msgid "Tool Volume" +msgstr "Volum de l'eina" + +msgid "Subtract from" +msgstr "Restar de" + +msgid "Subtract with" +msgstr "Restar amb" + +msgid "selected" +msgstr "sel·leccionat" + +msgid "Part 1" +msgstr "Part 1" + +msgid "Part 2" +msgstr "Part 2" + +msgid "Delete input" +msgstr "Esborrar entrada" + +msgid "Network Test" +msgstr "Prova de Xarxa" + +msgid "Start Test Multi-Thread" +msgstr "Inicia la prova Multi-Thread" + +msgid "Start Test Single-Thread" +msgstr "Inicia la prova Single-Thread" + +msgid "Export Log" +msgstr "Exportar Registre( Log )" + +msgid "Snapmaker Orca Version:" +msgstr "Versió d'Snapmaker Orca:" + +msgid "System Version:" +msgstr "Versió del Sistema:" + +msgid "DNS Server:" +msgstr "Servidor DNS:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "Prova Snapmaker Orca (GitHub)" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "Prova Snapmaker Orca (GitHub):" + +msgid "Test Bing.com" +msgstr "Prova Bing.com" + +msgid "Test bing.com:" +msgstr "Prova bing.com:" + +msgid "Log Info" +msgstr "Informació del Registre" + +msgid "Select filament preset" +msgstr "Seleccioneu el perfil de filament" + +msgid "Create Filament" +msgstr "Crear filament" + +msgid "Create Based on Current Filament" +msgstr "Crear Basat en el Filament Actual" + +msgid "Copy Current Filament Preset " +msgstr "Copiar el Perfil del Filament Actual " + +msgid "Basic Information" +msgstr "Informació bàsica" + +msgid "Add Filament Preset under this filament" +msgstr "Afegir Perfil de Filament sota aquest filament" + +msgid "We could create the filament presets for your following printer:" +msgstr "" +"Podem crear els perfils de filament per a la vostra impressora següent:" + +msgid "Select Vendor" +msgstr "Seleccionar Proveïdor" + +msgid "Input Custom Vendor" +msgstr "Introduir Proveïdor Personalitzat" + +msgid "Can't find vendor I want" +msgstr "No trobo el proveïdor que vull" + +msgid "Select Type" +msgstr "Seleccionar Tipus" + +msgid "Select Filament Preset" +msgstr "Seleccionar Perfil de Filament" + +msgid "Serial" +msgstr "Número de Sèrie" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "per exemple, Bàsic, Mat, Seda, Marbre" + +msgid "Filament Preset" +msgstr "Perfil de Filament" + +msgid "Create" +msgstr "Crear" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "El proveïdor no està seleccionat, torneu a seleccionar el proveïdor." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" +"El proveïdor personalitzat no s'ha introduït, introduïu un proveïdor " +"personalitzat." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" o \"Genèric\" no es poden utilitzar com a proveïdor de filaments " +"personalitzats." + +msgid "Filament type is not selected, please reselect type." +msgstr "" +"El tipus de filament no està seleccionat, torneu a seleccionar el tipus." + +msgid "Filament serial is not inputed, please input serial." +msgstr "" +"No s'ha introduït el número de sèrie del filament, si us plau, introduïu-lo." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"Pot haver-hi caràcters d'escapament en el proveïdor o a la introducció del " +"número de sèrie del filament. Si us plau, suprimiu-los i torneu a introduir-" +"los." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Totes les entrades de proveïdor personalitzat o de números de sèrie són " +"espais. Si us plau, torneu a introduir-los." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "El proveïdor no pot ser un número. Si us plau, torneu a introduir-lo." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"Encara no heu seleccionat una impressora o un perfil. Si us plau, " +"seleccioneu-ne almenys un." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"El nom de Filament %s que heu creat ja existeix. \n" +"Si continueu creant-lo, el perfil creat es mostrarà amb el seu nom complet. " +"Vols continuar?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "" +"Alguns perfils existents no s'han pogut crear, com s'indica tot seguit:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Vols reescriure'l?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"Canviaríem el nom dels perfils seleccionats com a \"Proveïdor Tipus " +"Número_de_Sèrie @impressora\". \n" +"Per afegir perfils per a més impressores, aneu a la selecció d'impressora" + +msgid "Create Printer/Nozzle" +msgstr "Crear Impressora/Broquet" + +msgid "Create Printer" +msgstr "Crear impressora" + +msgid "Create Nozzle for Existing Printer" +msgstr "Crear Broquet per a una Impressora Existent" + +msgid "Create from Template" +msgstr "Crear des de plantilla" + +msgid "Create Based on Current Printer" +msgstr "Crear Basat en la Impressora Actual" + +msgid "Import Preset" +msgstr "Importar Perfil" + +msgid "Create Type" +msgstr "Crea un Tipus" + +msgid "The model is not found, place reselect vendor." +msgstr "El model no s'ha trobat, torneu a triar proveïdor." + +msgid "Select Model" +msgstr "Seleccionar Model" + +msgid "Select Printer" +msgstr "Seleccionar Impressora" + +msgid "Input Custom Model" +msgstr "Introduir Model Personalitzat" + +msgid "Can't find my printer model" +msgstr "No es troba el model d'impressora" + +msgid "Rectangle" +msgstr "Rectangle" + +msgid "Printable Space" +msgstr "Espai Imprimible" + +msgid "Hot Bed STL" +msgstr "STL del Llit" + +msgid "Load stl" +msgstr "Carregar stl" + +msgid "Hot Bed SVG" +msgstr "SVG del Llit" + +msgid "Load svg" +msgstr "Carregar svg" + +msgid "Max Print Height" +msgstr "Alçada Màxima d'Impressió" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "El fitxer supera els %d MB, torneu a importar." + +msgid "Exception in obtaining file size, please import again." +msgstr "" +"S'ha produït una excepció obtenint la mida del fitxer, si us plau, torneu a " +"importar-lo." + +msgid "Preset path is not find, please reselect vendor." +msgstr "No es troba la ruta predeterminada, torneu a seleccionar el proveïdor." + +msgid "The printer model was not found, please reselect." +msgstr "No s'ha trobat el model d'impressora, torneu a seleccionar." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "El diàmetre del broquet no s'ha trobat, torneu a seleccionar-lo." + +msgid "The printer preset is not found, place reselect." +msgstr "El perfil de la impressora no s'ha trobat, torneu a seleccionar-lo." + +msgid "Printer Preset" +msgstr "Perfil d'Impressora" + +msgid "Filament Preset Template" +msgstr "Plantilla de Perfil de Filament" + +msgid "Deselect All" +msgstr "Deseleccionar-ho tot" + +msgid "Process Preset Template" +msgstr "Plantilla de Perfil de Processament" + +msgid "Back Page 1" +msgstr "Tornar a la Pàgina 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Encara no heu triat el perfil d'impressora en la que voleu Basar la seva " +"creació. Trieu el proveïdor i el model de la impressora" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"Heu introduït una entrada il·legal a la secció d'àrea imprimible de la " +"primera pàgina. Comproveu-ho abans de crear-lo." + +msgid "The custom printer or model is not inputed, place input." +msgstr "" +"La impressora o el model personalitzats no s'han introduït, introduïu-lo." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"El perfil d'impressora que heu creat ja té un perfil amb el mateix nom. Vols " +"sobreescriure'l?\n" +"\tSí: Sobreescriviu el perfil d'impressora amb el mateix nom, els perfils de " +"filament i procés amb el mateix nom de perfil es tornaran a crear \n" +"i es reservaran els perfils de filaments i processos sense el mateix nom de " +"perfil.\n" +"\tCancel·lar: No crear perfil i tornar a la interfície de creació." + +msgid "You need to select at least one filament preset." +msgstr "Heu de seleccionar almenys un perfil de filament." + +msgid "You need to select at least one process preset." +msgstr "Heu de seleccionar com a mínim un perfil de processament." + +msgid "Create filament presets failed. As follows:\n" +msgstr "" +"S'ha produït un error en la creació de perfils de filament. Pel següent:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "" +"S'ha produït un error en la creació de perfils de processament. Pel " +"següent:\n" +"\n" + +msgid "Vendor is not find, please reselect." +msgstr "El proveïdor no es troba, torneu a seleccionar-ne un." + +msgid "Current vendor has no models, please reselect." +msgstr "El proveïdor actual no té models, torneu a seleccionar." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"No heu seleccionat el proveïdor i el model o n heu introduït el proveïdor i " +"el model personalitzats." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"És possible que hi hagi caràcters d'escapament al proveïdor/marca " +"d'impressora o model personalitzats. Si us plau, suprimiu-los i torneu a " +"introduir-los." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"Totes les entrades del proveïdor/marca o model d'impressora personalitzats " +"són espais. Si us plau, torneu a introduir-los." + +msgid "Please check bed printable shape and origin input." +msgstr "Comproveu la forma imprimible del llit i l'entrada d'origen." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Encara no heu seleccionat la impressora per substituir el broquet, trieu-la." + +msgid "Create Printer Successful" +msgstr "Èxit Creant Impressora" + +msgid "Create Filament Successful" +msgstr "Èxit Crear Filament" + +msgid "Printer Created" +msgstr "Impressora Creada" + +msgid "Please go to printer settings to edit your presets" +msgstr "Aneu a la configuració de la impressora per editar els perfils" + +msgid "Filament Created" +msgstr "Filament Creat" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Aneu a la configuració del filament per editar els perfils si ho " +"necessiteu.\n" +"Tingueu en compte que la temperatura del broquet, la temperatura del llit i " +"la velocitat volumètrica màxima tenen un impacte significatiu en la qualitat " +"d'impressió. Si us plau, configureu-los amb cura." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"L'Orca ha detectat que la funció de sincronització de perfils no està " +"habilitada, cosa que pot provocar una configuració de filament incorrecta a " +"la pàgina Dispositiu. \n" +"Feu clic a \"Sincronitzar els perfils d'usuari\" per habilitar la funció de " +"sincronització." + +msgid "Printer Setting" +msgstr "Configuració de la Impressora" + +msgid "Printer config bundle(.orca_printer)" +msgstr "Paquet de configuració d'impressores( .orca_printer )" + +msgid "Filament bundle(.orca_filament)" +msgstr "Paquet de filament( .orca_filament )" + +msgid "Printer presets(.zip)" +msgstr "Perfils d'impressora( .zip )" + +msgid "Filament presets(.zip)" +msgstr "Perfils de filament( .zip )" + +msgid "Process presets(.zip)" +msgstr "Perfils de processament( .zip )" + +msgid "initialize fail" +msgstr "error d'inicialització" + +msgid "add file fail" +msgstr "error en afegir fitxer" + +msgid "add bundle structure file fail" +msgstr "error en afegir un fitxer d'estructura del paquet" + +msgid "finalize fail" +msgstr "error de finalització" + +msgid "open zip written fail" +msgstr "error en escriure de fitxer zip" + +msgid "Export successful" +msgstr "Exportació correcta" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"La carpeta '%s' ja existeix al directori actual. Voleu esborrar-la i " +"sobreescriure-la?.\n" +"Si no, s'afegirà un sufix de temps i podeu modificar el nom després de la " +"creació." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"La Impressora i tots els perfils de filament&processament que pertanyen a la " +"impressora. \n" +"Es pot compartir amb altres persones." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Conjunt de perfils de filament de l'usuari. \n" +"Es pot compartir amb altres persones." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Mostrar només els noms de les impressores amb canvis als perfils " +"d'impressora, filament i processament." + +msgid "Only display the filament names with changes to filament presets." +msgstr "" +"Mostrar només els noms dels filaments amb canvis en els perfils de filament." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Només es mostraran els noms de les impressores amb perfils d'impressora " +"d'usuari i cada perfil que trieu s'exportarà com a fitxer zip." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Només es mostraran els noms dels filaments amb perfils de filament " +"d'usuari, \n" +"i tots els perfils de filament d'usuari de cada nom de filament que " +"seleccioneu s'exportaran com a zip." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Només es mostraran els noms de les impressores amb perfils de processament " +"modificats, \n" +"I tots els valors perfils del procés d'usuari de cada nom d'impressora que " +"seleccioneu s'exportaran com a ZIP." + +msgid "Please select at least one printer or filament." +msgstr "Seleccioneu com a mínim una impressora o filament." + +msgid "Please select a type you want to export" +msgstr "Seleccioneu el tipus que voleu exportar" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" +"No s'ha pogut crear una carpeta temporal, torneu a provar Exportar " +"Configuracions." + +msgid "Edit Filament" +msgstr "Edita el Filament" + +msgid "Filament presets under this filament" +msgstr "Perfils de filament sota aquest filament" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Nota: Si se suprimeix l'únic perfil sota aquest filament, el filament se " +"suprimirà en sortir del diàleg." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "Els perfils heretats per altres perfils no es poden suprimir" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "El següent perfil hereta d'aquest perfil." +msgstr[1] "Els següents perfils hereten d'aquest perfil." + +msgid "Delete Preset" +msgstr "Suprimir Perfil" + +msgid "Are you sure to delete the selected preset?" +msgstr "Esteu segur que voleu suprimir el perfil seleccionat?" + +msgid "Delete preset" +msgstr "Suprimir perfil" + +msgid "+ Add Preset" +msgstr "+ Afegeix perfil" + +msgid "Delete Filament" +msgstr "Suprimeix el Filament" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Se suprimirien tots els perfils de filament que pertanyen a aquest " +"filament. \n" +"Si esteu utilitzant aquest filament a la impressora, restabliu la informació " +"del filament per a aquesta ranura." + +msgid "Delete filament" +msgstr "Suprimeix el filament" + +msgid "Add Preset" +msgstr "Afegir Perfil" + +msgid "Add preset for new printer" +msgstr "Afegir perfil per a una impressora nova" + +msgid "Copy preset from filament" +msgstr "Copiar perfil des del filament" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "Perfil de filament no trobat, si us plau, seleccioneu-ne un altre" + +msgid "[Delete Required]" +msgstr "[Esborrar obligatori]" + +msgid "Edit Preset" +msgstr "Edita el Perfil" + +msgid "For more information, please check out Wiki" +msgstr "Per obtenir més informació, consulteu la Wiki" + +msgid "Collapse" +msgstr "Replegar" + +msgid "Daily Tips" +msgstr "Consells diaris" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "broquet memoritzat: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"El diàmetre del broquet del perfil no és coherent amb el diàmetre del " +"broquet memoritzat. Has canviat el broquet recentment?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*El material d'impressió %s amb %s podria causar danys al broquet" + +msgid "Need select printer" +msgstr "És necessari que seleccioneu una impressora" + +msgid "The start, end or step is not valid value." +msgstr "L'inici, el final o el pas no tenen un valor vàlid." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"No es pot calibrar: potser perquè l'interval de valors de calibratge " +"establert és massa gran o perquè el pas és massa petit" + +msgid "Physical Printer" +msgstr "Impressora Física" + +msgid "Print Host upload" +msgstr "Pujada al amfitrió( host ) d'impressió" + +msgid "Could not get a valid Printer Host reference" +msgstr "" +"No s'ha pogut aconseguir una referència vàlida d'amfitrió( host ) " +"d'impressora" + +msgid "Success!" +msgstr "Èxit!" + +msgid "Are you sure to log out?" +msgstr "Estàs segur de tancar sessió?" + +msgid "Refresh Printers" +msgstr "Refrescar Impressores" + +msgid "View print host webui in Device tab" +msgstr "Veure el host d'impressió webui a la pestanya Dispositiu" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" +"Substituïu la pestanya del dispositiu BambuLab pel host d'impressió webui" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"El fitxer HTTPS CA és opcional. Només es necessita si uses HTTPS amb un " +"certificat autosignat." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "" +"Fitxers de certificat ( *.crt, *.pem )|*.crt;*.pem|Tots els fitxers|*.*" + +msgid "Open CA certificate file" +msgstr "Obrir fitxer de certificat CA" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"En aquest sistema, %s utilitza certificats HTTPS del magatzem de certificats " +"o clauer del sistema." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Per utilitzar un fitxer CA personalitzat, importa el teu fitxer CA al " +"Magatzem de Certificats / Clauer." + +msgid "Login/Test" +msgstr "Iniciar Sessió/Provar" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"No s'ha pogut connectar a les impressores connectades mitjançant " +"l'amfitrió( host ) d'impressió especificat." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Tipus d'amfitrió( host ) d'impressió no coincident: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "La connexió a Astrobox funciona correctament." + +msgid "Could not connect to AstroBox" +msgstr "No s'ha pogut connectar a AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Nota: Es requereix com a mínim la versió d'AstroBox 1.1.0." + +msgid "Connection to Duet works correctly." +msgstr "La connexió amb Duet funciona correctament." + +msgid "Could not connect to Duet" +msgstr "No s'ha pogut connectar amb Duet" + +msgid "Unknown error occured" +msgstr "S'ha produït un error desconegut" + +msgid "Wrong password" +msgstr "Contrasenya incorrecta" + +msgid "Could not get resources to create a new connection" +msgstr "No s'han pogut obtenir recursos per crear una connexió nova" + +msgid "Upload not enabled on FlashAir card." +msgstr "Pujada no activada a targeta FlashAir." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "" +"La connexió a FlashAir funciona correctament i la pujada està habilitada." + +msgid "Could not connect to FlashAir" +msgstr "No s'ha pogut connectar a FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Nota: Requereix FlashAir amb firmware 2.00.02 o posterior i la funció de " +"pujada activada." + +msgid "Connection to MKS works correctly." +msgstr "La connexió amb MKS funciona correctament." + +msgid "Could not connect to MKS" +msgstr "No s'ha pogut connectar amb MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "La connexió amb OctoPrint funciona correctament." + +msgid "Could not connect to OctoPrint" +msgstr "No s'ha pogut connectar a OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Nota: Es requereix com a mínim la versió d'OctoPrint 1.1.0." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "La connexió a Prusa SL1 / SL1S funciona correctament." + +msgid "Could not connect to Prusa SLA" +msgstr "No s'ha pogut connectar amb Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "La connexió amb PrusaLink funciona correctament." + +msgid "Could not connect to PrusaLink" +msgstr "No s'ha pogut connectar a PrusaLink" + +msgid "Storages found" +msgstr "Emmagatzematges trobats" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : només lectura" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : no hi ha espai lliure" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "La pujada ha fallat. No s'ha trobat cap emmagatzematge adequat a %1%." + +msgid "Connection to Prusa Connect works correctly." +msgstr "La connexió a Prusa Connect funciona correctament." + +msgid "Could not connect to Prusa Connect" +msgstr "No s'ha pogut connectar a Prusa Connect" + +msgid "Connection to Repetier works correctly." +msgstr "La connexió amb Repetier funciona correctament." + +msgid "Could not connect to Repetier" +msgstr "No s'ha pogut connectar amb Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Nota: Cal la versió 0.90.0 de Repetier com a mínim." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"Estat HTTP: %1%\n" +"Cos del missatge: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"L'anàlisi de resposta de l'amfitrió( host ) ha fallat.\n" +"Cos del missatge: \"%1%\"\n" +"Error: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"L'enumeració de les impressores de l'amfitrió( host ) ha fallat.\n" +"Cos del missatge: \"%1%\"\n" +"Error: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"Té una alçada de capa petita i produeix línies de capa gairebé " +"insignificants i una alta qualitat d'impressió. És adequat per a la majoria " +"dels casos d'impressió generals." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,2 mm, té " +"velocitats i acceleracions més baixes, i el patró de farciment poc dens és " +"Giroide. Això es tradueix en una qualitat d'impressió molt més alta, però un " +"temps d'impressió molt més llarg." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,2 mm, té una " +"alçada de capa lleugerament més gran i resulta en línies de capa gairebé " +"insignificants i un temps d'impressió lleugerament més curt." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,2 mm, té una " +"alçada de capa més gran i resulta en línies de capa lleugerament visibles, " +"però un temps d'impressió més curt." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,2 mm, té una " +"alçada de capa més petita i resulta en línies de capes gairebé invisibles i " +"una qualitat d'impressió més alta, però un temps d'impressió més curt." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,2 mm, té línies " +"de capa més petites, velocitats i acceleracions més baixes, i el patró de " +"farciment poc dens és Giroide. Això es tradueix en línies de capa gairebé " +"invisibles i una qualitat d'impressió molt més gran, però un temps " +"d'impressió molt més llarg." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,2 mm, té una " +"alçada de capa més petita i produeix línies de capa mínimes i una qualitat " +"d'impressió més alta, però un temps d'impressió més curt." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,2 mm, té línies " +"de capa més petites, velocitats i acceleracions més baixes, i el patró de " +"farciment poc dens és Giroide. Això es tradueix en línies de capa mínimes i " +"una qualitat d'impressió molt més alta, però un temps d'impressió molt més " +"llarg." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"Té una alçada general de capa, i produeix línies de capa i qualitat " +"d'impressió generals. És adequat per a la majoria dels casos d'impressió " +"generals." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,4 mm, té més " +"bucles de paret i una densitat de farciment més gran. Això es tradueix en " +"una major resistència de les impressions, però més consum de filaments i un " +"temps d'impressió més llarg." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,4 mm, té una " +"alçada de capa més gran i produeix línies de capa més aparents i una " +"qualitat d'impressió més baixa, però un temps d'impressió lleugerament més " +"curt." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,4 mm, té una " +"alçada de capa més gran i produeix línies de capa més aparents i una " +"qualitat d'impressió més baixa, però un temps d'impressió més curt." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,4 mm, té una " +"alçada de capa més petita i produeix línies de capa menys aparents i una " +"qualitat d'impressió més alta, però un temps d'impressió més llarg." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,4 mm, té una " +"alçada de capa més petita, velocitats i acceleració més baixes, i el patró " +"de farciment poc dens és Giroide. Això es tradueix en línies de capa menys " +"aparents i una qualitat d'impressió molt més gran, però un temps d'impressió " +"molt més llarg." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,4 mm, té una " +"alçada de capa més petita i produeix línies de capa gairebé insignificants i " +"una qualitat d'impressió més alta, però un temps d'impressió més llarg." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,4 mm, té una " +"alçada de capa més petita, velocitats i acceleració més baixes, i el patró " +"de farciment poc dens és Giroide. Això produeix línies de capa gairebé " +"insignificants i una qualitat d'impressió molt més gran, però un temps " +"d'impressió molt més llarg." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,4 mm, té una " +"alçada de capa més petita i produeix línies de capa gairebé insignificants i " +"un temps d'impressió més llarg." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"Té una gran alçada de capa i produeix línies de capa aparents i qualitat " +"d'impressió i temps d'impressió ordinaris." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,6 mm, té més " +"bucles de paret i una densitat de farciment més gran. Per tant, es tradueix " +"en una major resistència de les impressions, però més consum de filaments i " +"un temps d'impressió més llarg." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,6 mm, té una " +"alçada de capa més gran i produeix línies de capa més aparents i una " +"qualitat d'impressió més baixa, però un temps d'impressió més curt en alguns " +"casos d'impressió." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,6 mm, té una " +"alçada de capa més gran i produeix línies de capa molt més aparents i una " +"qualitat d'impressió molt menor, però un temps d'impressió més curt en " +"alguns casos d'impressió." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,6 mm, té una " +"alçada de capa més petita i produeix línies de capa menys aparents i una " +"lleugera qualitat d'impressió més alta, però un temps d'impressió més llarg." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,6 mm, té una " +"alçada de capa més petita i produeix línies de capa menys aparents i una " +"qualitat d'impressió més alta, però un temps d'impressió més llarg." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"Té una alçada de capa molt gran i produeix línies de capa molt aparents, " +"baixa qualitat d'impressió i temps d'impressió general." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,8 mm, té una " +"alçada de capa més gran i produeix línies de capa molt aparents i una " +"qualitat d'impressió molt menor, però un temps d'impressió més curt en " +"alguns casos d'impressió." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,8 mm, té una " +"alçada de capa molt més gran, i produeix línies de capa extremadament " +"aparents i una qualitat d'impressió molt menor, però un temps d'impressió " +"molt més curt en alguns casos d'impressió." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,8 mm, té una " +"alçada de capa lleugerament més petita i produeix línies de capa " +"lleugerament inferiors però encara aparents i una qualitat d'impressió " +"lleugerament superior, però un temps d'impressió més llarg en alguns casos " +"d'impressió." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"En comparació amb el perfil predeterminat del broquet de 0,8 mm, té una " +"alçada de capa més petita i produeix línies de capa menys però encara " +"aparents i una qualitat d'impressió lleugerament superior, però un temps " +"d'impressió més llarg en alguns casos d'impressió." + +msgid "Connected to Obico successfully!" +msgstr "Connectat amb Obico amb èxit!" + +msgid "Could not connect to Obico" +msgstr "No s'ha pogut connectar a Obico" + +msgid "Connected to SimplyPrint successfully!" +msgstr "Connectat a SimplyPrint amb èxit!" + +msgid "Could not connect to SimplyPrint" +msgstr "No s'ha pogut connectar a SimplyPrint" + +msgid "Internal error" +msgstr "Error intern" + +msgid "Unknown error" +msgstr "Error desconegut" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" +"No s'ha enllaçat el compte de SimplyPrint. Aneu a Opcions de Connexió per " +"configurar-lo." + +msgid "Connection to Flashforge works correctly." +msgstr "La connexió amb Flashforge funciona correctament." + +msgid "Could not connect to Flashforge" +msgstr "No s'ha pogut connectar a Flashforge" + +msgid "The provided state is not correct." +msgstr "L'estat proporcionat no és correcte." + +msgid "Please give the required permissions when authorizing this application." +msgstr "Doneu els permisos necessaris quan autoritzeu aquesta aplicació." + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" +"Alguna cosa inesperada ha passat en intentar iniciar sessió, torneu-ho a " +"provar." + +msgid "User cancelled." +msgstr "Usuari cancel·lat." + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"Perímetre precís\n" +"Sabies que activar Perímetre Precís pot millorar la precisió i la " +"consistència de la capa?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"Mode Sandvitx\n" +"Sabíeu que podeu utilitzar el Mode Sandvitx (interior-exterior-interior) per " +"millorar la precisió i la consistència de la capa si el vostre model no té " +"voladissos molt pronunciats?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"Temperatura de la cambra\n" +"Sabíeu que Snapmaker Orca admet la funcionalitat Temperatura de Cambra?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"Calibratge\n" +"Sabies que calibrar la teva impressora pot fer meravelles? Fes una ullada a " +"la nostra preuada solució de calibratge a Snapmaker Orca." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"Ventilador auxiliar\n" +"Sabíeu que Snapmaker Orca admet la funcionalitat de Ventilador Auxiliar de " +"refrigeració de peces?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"Filtració d'Aire/Ventilador d'Extracció\n" +"Sabíeu que Snapmaker Orca admet la funcionalitat de Filtració d'Aire/Ventilador " +"d'Extracció?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"Finestra del Codi-G\n" +"Podeu activar/desactivar la finestra del Codi-G prement la tecla C ." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"Canviar d'Espai de Treball\n" +"Podeu canviar entre els Espais de Treball Preparar i " +"Previsualitzar prement la tecla de tabulació ." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"Com utilitzar les Dreceres de Teclat\n" +"Sabíeu que Snapmaker Orca ofereix una àmplia gamma de dreceres de teclat i " +"operacions en escenes 3D." + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"Parets invertides en capes imparells\n" +"Sabíeu que la funció Parets invertides en capes imparells pot " +"millorar significativament la qualitat de la superficie dels voladissos?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Eina de tall\n" +"Sabies que pots tallar un model en qualsevol angle i posició amb l'eina de " +"tall?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Corregir Model\n" +"Sabíeu que podeu arreglar un model 3D danyat per evitar molts problemes de " +"laminat al sistema Windows?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Timelapse\n" +"Sabies que pots generar un vídeo timelapse durant cada impressió?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Ordenació Automàtica\n" +"Sabies que pots ordenar automàticament tots els objectes del teu projecte?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Auto-Orientació\n" +"Sabies que pots rotar objectes amb un simple clic a una orientació òptima " +"per imprimir?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Recolzar sobre la Cara\n" +"Sabíeu que podeu orientar ràpidament un model perquè una de les seves cares " +"es recolzi sobre el llit d'impressió? Seleccioneu la funció \"Recolzar sobre " +"la Cara\" o premeu la tecla F ." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Llista d'objectes\n" +"Sabíeu que podeu veure tots els objectes/peces a una llista i canviar la " +"configuració de cada objecte/peça?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"Funcionalitat de Cerca\n" +"Sabíeu que podeu usar l'eina de Cerca per trobar ràpidament un paràmetre " +"específic d'Snapmaker Orca?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"Simplificar Model\n" +"Sabíeu que podeu reduir el nombre de triangles d'una malla mitjançant la " +"funció Simplificar la Malla? Feu clic amb el botó dret al model i " +"seleccioneu Simplificar el Model." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Taula de Paràmetres de Laminació\n" +"Sabies que pots veure tots els objectes/peces a una taula i canviar la " +"configuració de cada objecte/peça?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Dividir en Objectes/Peces\n" +"Sabíeu que podeu dividir un objecte gran en petits per pintar-lo o imprimir-" +"lo fàcilment?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"Restar una Peça\n" +"Sabies que pots restar una malla a una altra utilitzant el modificador de " +"peces Negatives? D'aquesta manera, per exemple, podeu crear forats fàcilment " +"redimensionables directament a Snapmaker Orca." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP\n" +"Sabíeu que podeu millorar la vostra qualitat d'impressió laminant a un " +"fitxer STEP en lloc d'un STL?\n" +"Snapmaker Orca permet laminar a fitxers STEP, proporcionant resultats més fins " +"que un STL de menor resolució. Prova-ho!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Ubicació de la costura Z\n" +"Sabies que pots personalitzar la ubicació de la costura Z, i fins i tot " +"pintar-la a la teva impressió, per tenir-la en un lloc menys visible? Això " +"millora l'aspecte general del vostre model. Comprova-ho!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Ajust Fi del Ratio de Flux\n" +"Sabíeu que el Ratio de Flux es pot ajustar per a obtenir impressions encara " +"més boniques? Depenent del material, podeu millorar l'acabat general del " +"model imprès fent una mica d'ajust fi." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Partir les impressions en varies plaques\n" +"Sabíeu que podeu partir un model que tingui moltes peces en plaques " +"individuals preparades per imprimir? Això simplificarà el procés de fer un " +"seguiment de totes les peces." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Accelereu la impressió amb l'Alçada de Capa Adaptativa\n" +"Sabíeu que podeu imprimir un model encara més ràpidament mitjançant l'opció " +"Alçada de Capa Adaptativa? Comprova-ho!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Pintura de suport\n" +"Sabies que pots pintar la ubicació dels teus suports? Aquesta característica " +"facilita la col·locació del material de suport només a les seccions del " +"model que realment el necessiten." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Diferents tipus de suports\n" +"Sabies que pots triar entre múltiples tipus de suports? Els suports en Arbre " +"funcionen molt bé per a models orgànics, alhora que estalvien filament i " +"milloren la velocitat d'impressió. Fes-hi un cop d'ull!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Impressió de Filament de Seda( Silk )\n" +"Sabies que el Filament de Seda( Silk ) necessita una consideració especial " +"per imprimir-lo amb èxit? Sempre es recomana una temperatura més alta i una " +"velocitat més baixa per obtenir els millors resultats." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Vora d'Adherència per a una millor subjecció\n" +"Sabíeu que quan els models d'impressió tenen una interfície de contacte " +"petita amb la superfície d'impressió, es recomana utilitzar una Vora " +"d'Adherència?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Definir paràmetres per a múltiples objectes\n" +"Sabíeu que podeu establir paràmetres de laminació per a tots els objectes " +"seleccionats alhora?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Apilar objectes\n" +"Sabies que pots apilar objectes en un de sol?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Neteja al suport/objectes/farciment\n" +"Sabies que pots estalviar filament desaprofitat purgant-lo al suport/" +"objectes/farciment durant el canvi de filament?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Millorar la força\n" +"Sabíeu que podeu utilitzar més bucles de perímetre i una densitat de " +"farciment més alta per millorar la resistència del model?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Quan cal imprimir amb la porta de la impressora oberta\n" +"Sabíeu que obrir la porta de la impressora pot reduir la probabilitat " +"d'obstrucció de l'extrusora/broquet en imprimir filaments a baixa " +"temperatura amb una temperatura de cambra més alta. Més informació al " +"respecte a la Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Evitar la deformació( warping )\n" +"Sabíeu que quan imprimiu materials propensos a deformar-se, com ara l'ABS, " +"augmentar adequadament la temperatura del llit pot reduir la probabilitat de " +"deformació." + +#~ msgid "Associate prusaslicer://" +#~ msgstr "Associar prusaslicer://" + +#~ msgid "Not associated to any application" +#~ msgstr "No associar a cap aplicació" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "models from Printable.com" +#~ msgstr "" +#~ "Associar Snapmaker Orca amb els enllaços prusaslicer:// perquè Orca pugui " +#~ "obrir models des de Printable.com" + +#~ msgid "Associate bambustudio://" +#~ msgstr "Associar bambustudio://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with bambustudio:// links so that Orca can open " +#~ "models from makerworld.com" +#~ msgstr "" +#~ "Associar Snapmaker Orca amb els enllaços bambustudio:// perquè Orca pugui " +#~ "obrir models des de makerworld.com" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "La connexió local de la impressora ha fallat, torneu-ho a provar." + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Ja hi ha un resultat històric de calibratge amb el mateix nom: %s. Només " +#~ "es pot guardar un dels resultats amb el mateix nom. Estàs segur que vols " +#~ "sobreescriure el resultat històric?" + +#~ msgid "" +#~ "File size exceeds the 100MB upload limit. Please upload your file through " +#~ "the panel." +#~ msgstr "" +#~ "La mida del fitxer supera el límit de pujada de 100 MB. Si us plau, " +#~ "carregueu el vostre fitxer a través del panell." + +#~ msgid "X" +#~ msgstr "X" + +#~ msgid "Y" +#~ msgstr "Y" + +#~ msgid "V" +#~ msgstr "V" + +#, fuzzy +#~ msgid "Maximum print speed when purging" +#~ msgstr "Màxima velocitat d'impressió en purgar" + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca es basa en BambuStudio de Bambulab, que és de PrusaSlicer de " +#~ "Prusa Research. PrusaSlicer és de Slic3r d'Alessandro Ranellucci i la " +#~ "comunitat RepRap" + +#~ msgid "Export &Configs" +#~ msgstr "Exportar &Configuracions" + +#~ msgid "Open &Studio" +#~ msgstr "Obrir &Studio" + +#~ msgid "Open Studio" +#~ msgstr "Obrir Studio" + +#, fuzzy +#~ msgid "" +#~ "Over 4 systems/handy are using remote access, you can close some and try " +#~ "again." +#~ msgstr "" +#~ "Hi ha més de 4 sistemes / pràctics que utilitzen accés remot, podeu " +#~ "tancar-ne alguns i tornar-ho a provar." + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Habiliteu-lo per obtenir un fitxer de Codi-G que tingui moviments G2 i " +#~ "G3. I la tolerància de curvatura és la mateixa que la resolució" + +#~ msgid "Export Configs" +#~ msgstr "Exportar Configuracions" + +#~ msgid "Unload Filament" +#~ msgstr "Descarregar Filament" + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "Placa Base" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#, fuzzy +#~| msgid "Unsaved Changes" +#~ msgid "Actions For Unsaved Changes" +#~ msgstr "Canvis no desats" + +#, fuzzy +#~| msgid "Reset scale" +#~ msgid "Preset Value" +#~ msgstr "Valor predefinit esquerre" + +#, fuzzy +#~| msgid "Modified G-codes" +#~ msgid "Modified Value" +#~ msgstr "Valor modificat" + +#, fuzzy +#~| msgid "User Preset" +#~ msgid "Use Preset Value" +#~ msgstr "Perfil d'usuari" + +#, fuzzy +#~| msgid "Save file as:" +#~ msgid "Save Modified Value" +#~ msgstr "Desa el fitxer com a:" + +#, fuzzy +#~ msgid "" +#~ "\n" +#~ "Would you like to save these changed settings(modified value)?" +#~ msgstr "" +#~ "\n" +#~ "Voleu desar aquests paràmetres canviats (valor modificat)?" + +#, fuzzy +#~| msgid "" +#~| "You have changed some preset settings. \n" +#~| "Would you like to keep these changed settings (new value) after " +#~| "switching preset?" +#~ msgid "" +#~ "\n" +#~ "Would you like to keep these changed settings(modified value) after " +#~ "switching preset?" +#~ msgstr "" +#~ "Heu canviat algunes opcions de configuració del perfil. \n" +#~ "Voleu mantenir aquests paràmetres modificats després de canviar el perfil?" + +#, fuzzy +#~ msgid "" +#~ "\n" +#~ "Do you want to keep your current modified settings, or use preset " +#~ "settings?" +#~ msgstr "" +#~ "\n" +#~ "Voleu mantenir la configuració modificada actual o utilitzar la " +#~ "configuració predeterminada?" + +#, fuzzy +#~ msgid "" +#~ "\n" +#~ "Do you want to save your current modified settings?" +#~ msgstr "" +#~ "\n" +#~ "Voleu desar la configuració modificada actual?" + +#~ msgid "- ℃" +#~ msgstr "- °C" + +#~ msgid "0.5" +#~ msgstr "0,5" + +#~ msgid "0.005" +#~ msgstr "0,005" + +#~ msgid "active" +#~ msgstr "actiu" + +#~ msgid "Jump to layer" +#~ msgstr "Saltar a la capa" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "El verd significa que la humitat AMS és normal, el taronja representa que " +#~ "la humitat és alta, el vermell representa que la humitat és excessiva. " +#~ "( Higròmetre: com més baix millor. )" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "Un estat del dessecant inferior a dues barres indica que el dessecant pot " +#~ "estar inactiu. Si us plau, canvieu el dessecant. ( Les barres: com més " +#~ "altes millor. )" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Nota: Quan la tapa està oberta o es canvia el paquet dessecant, pot " +#~ "trigar hores o una nit a absorbir la humitat. Les baixes temperatures " +#~ "també alenteixen el procés. Durant aquest temps, és possible que " +#~ "l'indicador no representi la cambra amb precisió." + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Inicialització fallida ( No hi ha dispositiu )!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Inicialització fallida ( Sense Dispositiu de Càmera )!" + +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "" +#~ "Inicialització fallida ( No és compatible amb la versió actual de la " +#~ "impressora )!" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Inicialització fallida ( no accessible en mode només LAN )!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "Inicialització fallida ( Manca la IP LAN de la impressora )!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Aturat [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "La càrrega ha fallat [%d]!" + +#~ msgid "Connection lost. Please retry." +#~ msgstr "S'ha perdut la connexió. Si us plau, torna-ho a intentar." + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Heu canviat alguns paràmetres del perfil \"%1%\". \n" +#~ "Voleu mantenir aquests paràmetres modificats després de canviar el perfil?" + +#~ msgid " ℃" +#~ msgstr " °C" + +#~ msgid "" +#~ "The speed setting exceeds the printer's maximum speed " +#~ "(machine_max_speed_x/machine_max_speed_y).\n" +#~ "Orca will automatically cap the print speed to ensure it doesn't surpass " +#~ "the printer's capabilities.\n" +#~ "You can adjust the maximum speed setting in your printer's configuration " +#~ "to get higher speeds." +#~ msgstr "" +#~ "La configuració de velocitat supera la velocitat màxima de la impressora " +#~ "(machine_max_speed_x/machine_max_speed_y).\n" +#~ "L'Orca limitarà automàticament la velocitat d'impressió per assegurar-se " +#~ "que no superi les capacitats de la impressora.\n" +#~ "Podeu ajustar la configuració de velocitat màxima a la configuració de la " +#~ "impressora per obtenir velocitats més altes." + +#~ msgid "Studio Version:" +#~ msgstr "Versió d'Studio:" + +#~ msgid "Test BambuLab" +#~ msgstr "Prova BambuLab" + +#~ msgid "Test BambuLab:" +#~ msgstr "Prova BambuLab:" + +#~ msgid "Test HTTP" +#~ msgstr "Prova HTTP" + +#~ msgid "Test HTTP Service:" +#~ msgstr "Prova el servei HTTP:" + +#~ msgid "Test storage" +#~ msgstr "Prova d'emmagatzematge" + +#~ msgid "Test Storage Upload:" +#~ msgstr "Prova de càrrega d'emmagatzematge:" + +#~ msgid "Test storage upgrade" +#~ msgstr "Prova d'actualització de l'emmagatzematge" + +#~ msgid "Test Storage Upgrade:" +#~ msgstr "Prova d'Actualització de l'Emmagatzematge:" + +#~ msgid "Test storage download" +#~ msgstr "Prova de descàrrega des de l'emmagatzematge" + +#~ msgid "Test Storage Download:" +#~ msgstr "Prova de Descàrrega des de l'Emmagatzematge:" + +#~ msgid "Test plugin download" +#~ msgstr "Prova de descàrrega de plugins" + +#~ msgid "Test Plugin Download:" +#~ msgstr "Prova de Descàrrega de Plugins:" + +#~ msgid "Test Storage Upload" +#~ msgstr "Prova de pujada a l'emmagatzematge" + +#~ msgid "Resize" +#~ msgstr "Redimensionar" + +#~ msgid " " +#~ msgstr " " + +#~ msgid "The Config can not be loaded." +#~ msgstr "La Configuració no es pot carregar." + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "El 3mf està generat amb una versió d'Snapmaker Orca antiga, només carrega " +#~ "dades de geometria." + +#~ msgid "Configuration package updated to " +#~ msgstr "Paquet de configuració actualitzat a " + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Afegir farciment sòlid a prop de les superfícies inclinades per garantir " +#~ "el gruix vertical requerit ( capes sòlides superior+inferior )." + +#~ msgid "" +#~ "The minimum printing speed for the filament when slow down for better " +#~ "layer cooling is enabled, when printing overhangs and when feature speeds " +#~ "are not specified explicitly." +#~ msgstr "" +#~ "La velocitat mínima d'impressió del filament quan l'alentiment per a un " +#~ "millor refredament de la capa està habilitat, quan els voladissos " +#~ "d'impressió i quan les velocitats de les característiques no " +#~ "s'especifiquen explícitament." + +#~ msgid "End end: " +#~ msgstr "Final: " diff --git a/localization/i18n/cs/Snapmaker_Orca_cs.po b/localization/i18n/cs/Snapmaker_Orca_cs.po new file mode 100644 index 0000000000..bdf142a2d3 --- /dev/null +++ b/localization/i18n/cs/Snapmaker_Orca_cs.po @@ -0,0 +1,16860 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: 2023-09-30 15:15+0200\n" +"Last-Translator: René Mošner \n" +"Language-Team: \n" +"Language: cs_CZ\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n>=2 && n<=4 ? 1 : 2);\n" +"X-Generator: Poedit 3.3.2\n" + +msgid "Supports Painting" +msgstr "Malování podpěr" + +msgid "Alt + Mouse wheel" +msgstr "Alt + kolečko myši" + +msgid "Section view" +msgstr "Zobrazení sekce" + +msgid "Reset direction" +msgstr "Resetovat směr" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + kolečko myši" + +msgid "Pen size" +msgstr "Velikost pera" + +msgid "Left mouse button" +msgstr "Levé tlačítko myši" + +msgid "Enforce supports" +msgstr "Vynucení podpěr" + +msgid "Right mouse button" +msgstr "Pravé tlačítko myši" + +msgid "Block supports" +msgstr "Blokování podpěr" + +msgid "Shift + Left mouse button" +msgstr "Shift + levé tlačítko myši" + +msgid "Erase" +msgstr "Vymazat" + +msgid "Erase all painting" +msgstr "Vymazat všechny malby" + +msgid "Highlight overhang areas" +msgstr "Zvýraznit převisy" + +msgid "Gap fill" +msgstr "Výplň tenkých stěn" + +msgid "Perform" +msgstr "Provést" + +msgid "Gap area" +msgstr "Oblast mezery" + +msgid "Tool type" +msgstr "Typ nástroje" + +msgid "Smart fill angle" +msgstr "Úhel chytrého vybarvení" + +msgid "On overhangs only" +msgstr "Pouze na převisech" + +msgid "Auto support threshold angle: " +msgstr "Auto podpěry hraniční úhlel: " + +msgid "Circle" +msgstr "Kruh" + +msgid "Sphere" +msgstr "Koule" + +msgid "Fill" +msgstr "Výplň" + +msgid "Gap Fill" +msgstr "Výplň tenkých stěn" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Umožňuje malovat pouze na fasety vybrané pomocí: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Zvýrazněte plochy podle úhlu převisů." + +msgid "No auto support" +msgstr "Žádné automatické podpěry" + +msgid "Support Generated" +msgstr "Vygenerovat podpěry" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo-Umístit plochou na podložku" + +msgid "Lay on face" +msgstr "Plochou na podložku" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Počet filamentů překračuje maximální počet, který nástroj pro malování " +"podporuje. Pouze prvních %1% filamentů bude k dispozici v nástroji pro " +"malování." + +msgid "Color Painting" +msgstr "Barevná malba" + +msgid "Pen shape" +msgstr "Tvar pera" + +msgid "Paint" +msgstr "Malovat" + +msgid "Key 1~9" +msgstr "Klávesa 1~9" + +msgid "Choose filament" +msgstr "Vyberte Filament" + +msgid "Edge detection" +msgstr "Detekce hran" + +msgid "Triangles" +msgstr "Trojúhelníky" + +msgid "Filaments" +msgstr "Filamenty" + +msgid "Brush" +msgstr "Štětec" + +msgid "Smart fill" +msgstr "Chytré vybarvení" + +msgid "Bucket fill" +msgstr "Vylití barvou" + +msgid "Height range" +msgstr "Rozsah výšky" + +msgid "Alt + Shift + Enter" +msgstr "" + +msgid "Toggle Wireframe" +msgstr "Přepnout drátový model" + +msgid "Shortcut Key " +msgstr "Klávesová Zkratka " + +msgid "Triangle" +msgstr "Trojúhelník" + +msgid "Height Range" +msgstr "Rozsah výš" + +msgid "Vertical" +msgstr "Verikální" + +msgid "Horizontal" +msgstr "Horizontální" + +msgid "Remove painted color" +msgstr "Odbarvení" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Namalováno pomocí: Filament %1%" + +msgid "Move" +msgstr "Přesunout" + +msgid "Gizmo-Move" +msgstr "Gizmo-Posuv" + +msgid "Rotate" +msgstr "Otočit" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-Otáčení" + +msgid "Optimize orientation" +msgstr "Optimalizovat orientaci" + +msgid "Apply" +msgstr "Použít" + +msgid "Scale" +msgstr "Měřítko" + +msgid "Gizmo-Scale" +msgstr "Gizmo-Měřítko" + +msgid "Error: Please close all toolbar menus first" +msgstr "Chyba: Nejprve prosím zavřete všechny nabídky panelu nástrojů" + +msgid "in" +msgstr "v" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Pozice" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Otáčení" + +msgid "Scale ratios" +msgstr "Poměry měřítka" + +msgid "Object Operations" +msgstr "Operace s objektem" + +msgid "Volume Operations" +msgstr "Operace s objemem" + +msgid "Translate" +msgstr "Posunout" + +msgid "Group Operations" +msgstr "Skupinové operace" + +msgid "Set Position" +msgstr "Nastavení pozice" + +msgid "Set Orientation" +msgstr "Změna orientace" + +msgid "Set Scale" +msgstr "Nastavení měřítka" + +msgid "Reset Position" +msgstr "Resetovat pozici" + +msgid "Reset Rotation" +msgstr "Výchozí Natočení" + +msgid "World coordinates" +msgstr "Světové souřadnice" + +msgid "Object coordinates" +msgstr "Souřadnice objektu" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Rozměr" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "jednotné měřítko" + +msgid "Planar" +msgstr "Rovinný" + +msgid "Dovetail" +msgstr "Rybinový spoj" + +msgid "Auto" +msgstr "Automaticky" + +msgid "Manual" +msgstr "Ručně" + +msgid "Plug" +msgstr "Čep" + +msgid "Dowel" +msgstr "Kolík" + +msgid "Snap" +msgstr "Zaklapávací" + +msgid "Prism" +msgstr "Hranol" + +msgid "Frustum" +msgstr "Středový jehlan" + +msgid "Square" +msgstr "Čtverec" + +msgid "Hexagon" +msgstr "Šestiúhelník" + +msgid "Keep orientation" +msgstr "Zachovat orientaci" + +msgid "Place on cut" +msgstr "Umístit řezem na podložku" + +msgid "Flip upside down" +msgstr "Obrácení vzhůru nohama" + +msgid "Connectors" +msgstr "Spojky" + +msgid "Type" +msgstr "Typ" + +msgid "Style" +msgstr "Styl" + +msgid "Shape" +msgstr "Tvar" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Hloubka" + +msgid "Groove" +msgstr "Drážka" + +msgid "Width" +msgstr "Šířka" + +msgid "Flap Angle" +msgstr "Úhel patky" + +msgid "Groove Angle" +msgstr "Úhel drážky" + +msgid "Part" +msgstr "Dílů" + +msgid "Object" +msgstr "Objekt" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Kliknutím překlopíte rovinu řezu\n" +"Tažením myši posunete rovinu řezu" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Kliknutím otočíte rovinu řezu\n" +"Přesunete rovinu řezu tažením myši\n" +"Kliknutím pravým tlačítkem myši na díl jej přiřadíte na druhou stranu" + +msgid "Move cut plane" +msgstr "Přesun roviny řezu" + +msgid "Mode" +msgstr "Režim" + +msgid "Change cut mode" +msgstr "Změna režimu řezání" + +msgid "Tolerance" +msgstr "Tolerance" + +msgid "Drag" +msgstr "Táhnutí" + +msgid "Draw cut line" +msgstr "" + +msgid "Left click" +msgstr "Levý klik" + +msgid "Add connector" +msgstr "Přidat spojku" + +msgid "Right click" +msgstr "Pravý klik" + +msgid "Remove connector" +msgstr "Odstranit spojku" + +msgid "Move connector" +msgstr "Přesunout spojku" + +msgid "Add connector to selection" +msgstr "Přidat spojku do výběru" + +msgid "Remove connector from selection" +msgstr "Odebrat spojku z výběru" + +msgid "Select all connectors" +msgstr "Vybrat všechny spojky" + +msgid "Cut" +msgstr "Řezat" + +msgid "Rotate cut plane" +msgstr "Otáčení roviny řezu" + +msgid "Remove connectors" +msgstr "Odstranit spojky" + +msgid "Bulge" +msgstr "Vyboulení" + +msgid "Bulge proportion related to radius" +msgstr "Poměr vyboulení v závislosti na poloměru" + +msgid "Space" +msgstr "Mezerník" + +msgid "Space proportion related to radius" +msgstr "Velikost mezery vůči poloměru" + +msgid "Confirm connectors" +msgstr "Potvrzení spojek" + +msgid "Cancel" +msgstr "Zrušit" + +msgid "Build Volume" +msgstr "Maximální rozměry tisku" + +msgid "Flip cut plane" +msgstr "Otočit řezovou rovinu" + +msgid "Groove change" +msgstr "Změna drážky" + +msgid "Reset" +msgstr "Výchozí" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Upraveno" + +msgid "Cut position" +msgstr "Pozice řezu" + +msgid "Reset cutting plane" +msgstr "Obnovit řezovou rovinu" + +msgid "Edit connectors" +msgstr "Upravit spojky" + +msgid "Add connectors" +msgstr "Přidat spojky" + +msgid "Reset cut" +msgstr "Resetovat řez" + +msgid "Reset cutting plane and remove connectors" +msgstr "Reset řezné roviny a odstranění konektorů" + +msgid "Upper part" +msgstr "Horní část" + +msgid "Lower part" +msgstr "Spodní část" + +msgid "Keep" +msgstr "Ponechat" + +msgid "Flip" +msgstr "Otočit" + +msgid "After cut" +msgstr "Po řezu" + +msgid "Cut to parts" +msgstr "Rozřezat na díly" + +msgid "Perform cut" +msgstr "Provést řez" + +msgid "Warning" +msgstr "Varování" + +msgid "Invalid connectors detected" +msgstr "Byly zjištěny neplatné spojky" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +msgid "Some connectors are overlapped" +msgstr "Některé spojky se překrývají" + +msgid "Select at least one object to keep after cutting." +msgstr "Vyberte alespoň jeden objekt, který bude po řezu zachován." + +msgid "Cut plane is placed out of object" +msgstr "Rovina řezu je umístěna mimo objekt" + +msgid "Cut plane with groove is invalid" +msgstr "Řezová rovina s drážkou je neplatná" + +msgid "Connector" +msgstr "Spojka" + +msgid "Cut by Plane" +msgstr "Řez Rovinou" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" + +msgid "Repairing model object" +msgstr "Oprava objektu modelu" + +msgid "Cut by line" +msgstr "Řez podle přímky" + +msgid "Delete connector" +msgstr "Smazat konektor" + +msgid "Mesh name" +msgstr "Název sítě" + +msgid "Detail level" +msgstr "Úroveň detailu" + +msgid "Decimate ratio" +msgstr "Procento decimace" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Zpracování modelu '%1%' s více než 1 milionem trojúhelníků může být pomalé. " +"Je to Vřele doporučujeme pro zjednodušení modelu." + +msgid "Simplify model" +msgstr "Zjednodušit model" + +msgid "Simplify" +msgstr "Zjednodušit" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"Zjednodušení je v současné době povoleno pouze pokud je vybrán jeden díl" + +msgid "Error" +msgstr "Chyba" + +msgid "Extra high" +msgstr "Extra vysoká" + +msgid "High" +msgstr "Vysoká" + +msgid "Medium" +msgstr "Střední" + +msgid "Low" +msgstr "Nízká" + +msgid "Extra low" +msgstr "Extra nízká" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d trojúhelníků" + +msgid "Show wireframe" +msgstr "Zobrazit drátěný model" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "Nelze použít při náhledu procesu." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Operace se ukončuje. Prosíme o chvíli strpení." + +msgid "Face recognition" +msgstr "Rozpoznávání tváře" + +msgid "Perform Recognition" +msgstr "Provést rozpoznávání" + +msgid "Brush size" +msgstr "Velikost štětce" + +msgid "Brush shape" +msgstr "Tvar štětce" + +msgid "Enforce seam" +msgstr "Vynucení švu" + +msgid "Block seam" +msgstr "Blokace švu" + +msgid "Seam painting" +msgstr "Malování pozice švu" + +msgid "Remove selection" +msgstr "Odebrat výběr" + +msgid "Entering Seam painting" +msgstr "Vstup do módu Malování pozice švu" + +msgid "Leaving Seam painting" +msgstr "Opuštění módu Malování pozice švu" + +msgid "Paint-on seam editing" +msgstr "Editace pozice švu" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Písmo" + +msgid "Thickness" +msgstr "Tloušťka" + +msgid "Text Gap" +msgstr "Mezera v textu" + +msgid "Angle" +msgstr "Úhel" + +msgid "" +"Embeded\n" +"depth" +msgstr "" +"Vloženo\n" +"hloubka" + +msgid "Input text" +msgstr "Vložit text" + +msgid "Surface" +msgstr "Povrch" + +msgid "Horizontal text" +msgstr "Vodorovný text" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + pohyb myši nahoru nebo dolů" + +msgid "Rotate text" +msgstr "Otočit text" + +msgid "Text shape" +msgstr "Tvar textu" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Otáčení textu" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Přesun textu" + +msgid "Set Mirror" +msgstr "Zrcadlení" + +msgid "Embossed text" +msgstr "Embossovaný text" + +msgid "Enter emboss gizmo" +msgstr "Vstup do Ebosování textu" + +msgid "Leave emboss gizmo" +msgstr "Opuštění Ebosování textu" + +msgid "Embossing actions" +msgstr "Emobosovací akce" + +msgid "Emboss" +msgstr "Embosování" + +msgid "NORMAL" +msgstr "NORMÁLNÍ" + +msgid "SMALL" +msgstr "MALÝ" + +msgid "ITALIC" +msgstr "KURZIVA" + +msgid "SWISS" +msgstr "SWISS" + +msgid "MODERN" +msgstr "MODERNÍ" + +msgid "First font" +msgstr "První písmo" + +msgid "Default font" +msgstr "Výchozí písmo" + +msgid "Advanced" +msgstr "Pokročilé" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "Text nelze napsat zvoleným typem písma. Zkuste vybrat jiné písmo." + +msgid "Embossed text cannot contain only white spaces." +msgstr "Reliéfní text nesmí obsahovat pouze bílé znaky." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" +"Text obsahuje znakový glyf (reprezentovaný znakem \"?\"), který písmo nezná." + +msgid "Text input doesn't show font skew." +msgstr "Při zadávání textu se nezobrazuje zkosení písma." + +msgid "Text input doesn't show font boldness." +msgstr "Při zadávání textu se nezobrazuje tučné formátování písma." + +msgid "Text input doesn't show gap between lines." +msgstr "Při zadávání textu se nezobrazuje mezera mezi řádky." + +msgid "Too tall, diminished font height inside text input." +msgstr "Příliš vysoká, zmenšená výška písma uvnitř textového vstupu." + +msgid "Too small, enlarged font height inside text input." +msgstr "Příliš malé, zvěte výšku písma uvnitř textového vstupu." + +msgid "Text doesn't show current horizontal alignment." +msgstr "Text nezobrazuje aktuální vodorovné zarovnání." + +msgid "Revert font changes." +msgstr "Vrátit změny písma." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "Písmo \"%1%\" nelze vybrat." + +msgid "Operation" +msgstr "Operace" + +msgid "Join" +msgstr "Přidat" + +msgid "Click to change text into object part." +msgstr "Kliknutím změníte text na část objektu." + +msgid "You can't change a type of the last solid part of the object." +msgstr "Nelze změnit typ poslední plné části objektu." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Řezat" + +msgid "Click to change part type into negative volume." +msgstr "Kliknutím změníte typ části modelu na negativní objem." + +msgid "Modifier" +msgstr "Modifikátor" + +msgid "Click to change part type into modifier." +msgstr "Kliknutím změníte typ části modelu na modifikátor." + +msgid "Change Text Type" +msgstr "Změnit typ operace s textem" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Přejmenování stylu(%1%) pro reliéfní text" + +msgid "Name can't be empty." +msgstr "Název nesmí být prázdný." + +msgid "Name has to be unique." +msgstr "Jméno musí být unikátní." + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "Přejmenovat styl" + +msgid "Rename current style." +msgstr "Přejmenování aktuálního stylu." + +msgid "Can't rename temporary style." +msgstr "Nelze přejmenovat dočasný styl." + +msgid "First Add style to list." +msgstr "Nejprve do seznamu přidejte styl." + +#, boost-format +msgid "Save %1% style" +msgstr "Uložit styl %1%" + +msgid "No changes to save." +msgstr "Žádné změny k uložení." + +msgid "New name of style" +msgstr "Nový název stylu" + +msgid "Save as new style" +msgstr "Uložit jako nový styl" + +msgid "Only valid font can be added to style." +msgstr "Do stylu lze přidat pouze platné písmo." + +msgid "Add style to my list." +msgstr "Přidat styl na můj seznam." + +msgid "Save as new style." +msgstr "Uložit jako nový styl" + +msgid "Remove style" +msgstr "Odstranit styl" + +msgid "Can't remove the last existing style." +msgstr "Nelze odstranit poslední existující styl." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "Opravdu chcete trvale odstranit styl \"%1%\"?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "Odstranění stylu \"%1%\"." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "Styl \"%1%\" nelze odstranit, protože je to poslední styl." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "Nelze odstranit dočasný styl \"%1%\"." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Upravený styl \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "Aktuální styl je \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"Změna stylu na \"%1%\" zruší aktuální úpravy stylu.\n" +"\n" +"Chcete přesto pokračovat?" + +msgid "Not valid style." +msgstr "Neplatný styl." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "Styl \"%1%\" nelze použít a bude ze seznamu odstraněn." + +msgid "Unset italic" +msgstr "Odnastavení kurzívy" + +msgid "Set italic" +msgstr "Nastavení kurzívy" + +msgid "Unset bold" +msgstr "Odstranění tučného písma" + +msgid "Set bold" +msgstr "Nastavení tučného písma" + +msgid "Revert text size." +msgstr "Vrátit velikost textu." + +msgid "Revert embossed depth." +msgstr "Obnovit původní hloubku." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"Pro vybrané písmo nelze měnit pokročilé možnosti nastavení.\n" +"Vyberte jiné písmo." + +msgid "Revert using of model surface." +msgstr "Vrátit použití povrchu modelu." + +msgid "Revert Transformation per glyph." +msgstr "Vrátit transformaci po znacích." + +msgid "Set global orientation for whole text." +msgstr "Nastavení globální orientace pro celý text." + +msgid "Set position and orientation per glyph." +msgstr "Nastavení polohy a orientace pro každý znak zvlášť." + +msgctxt "Alignment" +msgid "Left" +msgstr "Zleva" + +msgctxt "Alignment" +msgid "Center" +msgstr "Střed" + +msgctxt "Alignment" +msgid "Right" +msgstr "Zprava" + +msgctxt "Alignment" +msgid "Top" +msgstr "Horní" + +msgctxt "Alignment" +msgid "Middle" +msgstr "Doprostřed" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Spodní" + +msgid "Revert alignment." +msgstr "Vrátit zarovnání." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "body" + +msgid "Revert gap between characters" +msgstr "Vrátit mezeru mezi znaky" + +msgid "Distance between characters" +msgstr "Vzdálenost mezi znaky" + +msgid "Revert gap between lines" +msgstr "Vrátit mezeru mezi extruzemi" + +msgid "Distance between lines" +msgstr "Vzdálenost mezi extruzemi" + +msgid "Undo boldness" +msgstr "Akce zpět Tučné písmo" + +msgid "Tiny / Wide glyphs" +msgstr "Drobné / široké glyfy" + +msgid "Undo letter's skew" +msgstr "Akce zpět Zkosení písma" + +msgid "Italic strength ratio" +msgstr "Míra zkosení kurzívy" + +msgid "Undo translation" +msgstr "Akce zpět Posun" + +msgid "Distance of the center of the text to the model surface." +msgstr "Vzdálenost středu textu od povrchu modelu." + +msgid "Undo rotation" +msgstr "Akce zpět Rotace" + +msgid "Rotate text Clock-wise." +msgstr "Otáčení textu ve směru hodinových ručiček." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "Odemknout natočení textu při pohybu textu po povrchu objektu." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "Uzamknout natočení textu při pohybu textu po povrchu objektu." + +msgid "Select from True Type Collection." +msgstr "Vyberte z kolekce True Type." + +msgid "Set text to face camera" +msgstr "Natočit text kolmo ke kameře" + +msgid "Orient the text towards the camera." +msgstr "Orientovat text směrem ke kameře." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"Nelze načíst přesně stejné písmo(\"%1%\"). Aplikace vybrala podobné " +"písmo(\"%2%\"). Musíte zadat písmo pro povolení editace textu." + +msgid "No symbol" +msgstr "Žádný symbol" + +msgid "Loading" +msgstr "Načítání" + +msgid "In queue" +msgstr "Ve frontě" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Výška" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Použít povrch" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "Na znak" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Zarovnání" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Mezera mezi znaky" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Řádkování" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Tučnost" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Míra zkosení" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Z povrchu" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "Držet směr" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Kolekce" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "Otáčení SVG" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "Přesun SVG" + +msgid "Enter SVG gizmo" +msgstr "Vstup do SVG nástroje" + +msgid "Leave SVG gizmo" +msgstr "Opuštění SVG nástroje" + +msgid "SVG actions" +msgstr "SVG akce" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Průhlednost (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Barevný gradient (%1%)" + +msgid "Undefined fill type" +msgstr "Nedefinovaný typ výplně" + +msgid "Linear gradient" +msgstr "Lineární gradient" + +msgid "Radial gradient" +msgstr "Radiální gradient" + +msgid "Open filled path" +msgstr "Otevřená vyplněná cesta" + +msgid "Undefined stroke type" +msgstr "Nedefinovaný typ obrysu" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "Cestu nelze opravit z křížení sama sebe a více bodů." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"Konečný tvar obsahuje vlastní průsečík nebo více bodů se stejnou souřadnicí." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "Tvar je označen jako neviditelný (%1%)." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "Výplň tvaru (%1%) obsahuje nepodporované: %2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "Obrys tvaru (%1%) je příliš tenký (minimální šířka je %2% mm)." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "Obrys tvaru (%1%) obsahuje nepodporované: %2%." + +msgid "Face the camera" +msgstr "Kolmo ke kameře" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Neznámý název souboru" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "Cesta k SVG souboru je \"%1%\"." + +msgid "Reload SVG file from disk." +msgstr "Znovu načíst SVG z disku." + +msgid "Change file" +msgstr "Změnit soubor" + +msgid "Change to another .svg file" +msgstr "Změnit na jiný .svg soubor" + +msgid "Forget the file path" +msgstr "Zapomenout cestu k souboru" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"Neukládat místní cestu k 3MF souboru.\n" +"Také znemožní funkci \"Znovu načíst z disku\"." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Zapéct" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Zapéct do modelu jako neupravitelnou část" + +msgid "Save as" +msgstr "Uložit jako" + +msgid "Save SVG file" +msgstr "Uložit SVG soubor" + +msgid "Save as '.svg' file" +msgstr "Uložit jako soubor '.svg'" + +msgid "Size in emboss direction." +msgstr "Velikost ve směru embosování." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "Změna velikosti současně mění jemnost diskretizace oblouků (%1%)" + +msgid "Width of SVG." +msgstr "Šířka SVG." + +msgid "Height of SVG." +msgstr "Výška SVG." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "Zamknout/odemknout poměr stran SVG." + +msgid "Reset scale" +msgstr "Výchozí měřítko" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "Vzdálenost mezi středem SVG a povrchem modelu." + +msgid "Reset distance" +msgstr "Obnovit vzdálenost" + +msgid "Reset rotation" +msgstr "Výchozí natočení" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "Zamknutí/odemknutí úhlu natočení při přetahování nad povrchem." + +msgid "Mirror vertically" +msgstr "Zrcadlit vertikálně" + +msgid "Mirror horizontally" +msgstr "Zrcadlit horizontálně" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "Změna typu SVG" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Zrcadlit" + +msgid "Choose SVG file for emboss:" +msgstr "Vyberte SVG soubor pro embosování:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "Soubor neexistuje (%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "Název souboru musí končit \".svg\", ale vy jste vybrali %1%." + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "Nano SVG parser nemůže číst ze souboru (%1%)." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "SVG soubor neobsahuje jedinou cestu, kterou lze embosovat (%1%)." + +msgid "Vertex" +msgstr "Vertex" + +msgid "Edge" +msgstr "Hrana" + +msgid "Plane" +msgstr "Rovina" + +msgid "Point on edge" +msgstr "Bod na hraně" + +msgid "Point on circle" +msgstr "Bod na kružnici" + +msgid "Point on plane" +msgstr "Bod v rovině" + +msgid "Center of edge" +msgstr "Střed hrany" + +msgid "Center of circle" +msgstr "Střed kruhu" + +msgid "ShiftLeft mouse button" +msgstr "" + +msgid "Select feature" +msgstr "Vyberat objekt" + +msgid "Select point" +msgstr "Zvolte bod" + +msgid "Delete" +msgstr "Smazat" + +msgid "Restart selection" +msgstr "Zrušit výběr" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "Zrušení výběru" + +msgid "Measure" +msgstr "Měření" + +msgid "Edit to scale" +msgstr "Změna rozměru" + +msgctxt "Verb" +msgid "Scale" +msgstr "Měřítko" + +msgid "None" +msgstr "Žádné" + +msgid "Diameter" +msgstr "Průměr" + +msgid "Length" +msgstr "Vzdálenost" + +msgid "Selection" +msgstr "Výběr" + +msgid "Copy to clipboard" +msgstr "Kopírovat do schránky" + +msgid "Perpendicular distance" +msgstr "Kolmá vzdálenost" + +msgid "Distance" +msgstr "Vzdálenost" + +msgid "Direct distance" +msgstr "Přímá vzdálenost" + +msgid "Distance XYZ" +msgstr "Vzdálenost XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Oznámení" + +msgid "Undefined" +msgstr "Nedefinováno" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% bylo nahrazeno %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "Konfiguraci může generovat novější verze Snapmaker Orca." + +msgid "Some values have been replaced. Please check them:" +msgstr "Některé hodnoty byly nahrazeny. Zkontrolujte je prosím:" + +msgid "Process" +msgstr "Proces" + +msgid "Filament" +msgstr "Filament" + +msgid "Machine" +msgstr "Stroj" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"Konfigurační balíček byl načten, ale některé hodnoty nebyly rozpoznány." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Konfigurační soubor \" %1% \" byl načten, ale některé hodnoty nebyly " +"rozpoznány." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca se ukončí z důvodu nedostatku paměti. Může to být chyba. Uvítáme, " +"když problém nahlásíte našemu týmu." + +msgid "Fatal error" +msgstr "Fatální chyba" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca se ukončí kvůli chybě lokalizace. Bude to Oceňujeme, pokud " +"nahlásíte konkrétní scénář, kdy k tomuto problému došlo." + +msgid "Critical error" +msgstr "Kritická chyba" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca dostal neošetřenou výjimku: %1%" + +msgid "Untitled" +msgstr "Bez názvu" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Stahování Bambu Network Plug-in" + +msgid "Login information expired. Please login again." +msgstr "Platnost přihlašovacích údajů vypršela. Přihlaste se prosím znovu." + +msgid "Incorrect password" +msgstr "Nesprávné heslo" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "Připojení %s selhalo! [SN:%s, kód=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca vyžaduje Microsoft WebView2 Runtime pro provádění určitých " +"funkcí.\n" +"Klikněte na Ano pro jeho nainstalování nyní." + +msgid "WebView2 Runtime" +msgstr "WebView2 Runtime" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Chcete pokračovat?" + +msgid "Remember my choice" +msgstr "Zapamatovat moji volbu" + +msgid "Loading configuration" +msgstr "Načítání konfigurace" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "Kliknutím stáhnete novou verzi ve výchozím prohlížeči: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca potřebuje aktualizaci" + +msgid "This is the newest version." +msgstr "Toto je nejnovější verze." + +msgid "Info" +msgstr "Info" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"Soubor konfigurace programu Snapmaker Orca může být poškozen a nelze ho " +"analyzovat.\n" +"Snapmaker Orca se pokusil znovu vytvořit konfigurační soubor.\n" +"Všimněte si, že nastavení aplikace bude ztraceno, ale profily tiskárny " +"nebudou ovlivněny." + +msgid "Rebuild" +msgstr "Obnovit" + +msgid "Loading current presets" +msgstr "Načítání aktuálních předvoleb" + +msgid "Loading a mode view" +msgstr "Načítání zobrazení režimu" + +msgid "Choose one file (3mf):" +msgstr "Vyberte jeden soubor (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "" +"Vyberte jeden nebo více souborů (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Vyberte jeden nebo více souborů (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "Vyberte ZIP soubor" + +msgid "Choose one file (gcode/3mf):" +msgstr "Vyberte jeden soubor (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "Některé předvolby jsou upraveny." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Předvolby modifield můžete ponechat pro nový projekt, zahodit nebo uložit " +"změny jako nové předvolby." + +msgid "User logged out" +msgstr "Uživatel odhlášen" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" +"během procesu Slicovaní není povolen nový nebo otevřený soubor projektu!" + +msgid "Open Project" +msgstr "Otevřít projekt" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"Verze Snapmaker Orca je příliš nízká a je třeba ji aktualizovat na nejnovější " +"verze předtím, než ji lze normálně používat" + +msgid "Privacy Policy Update" +msgstr "Aktualizace zásad ochrany osobních údajů" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" + +msgid "Sync user presets" +msgstr "" + +msgid "Loading user preset" +msgstr "Načítání uživatelské předvolby" + +msgid "Switching application language" +msgstr "Přepínání jazyka aplikace" + +msgid "Select the language" +msgstr "Výběr jazyka" + +msgid "Language" +msgstr "Jazyk" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Nahrávání stále probíhá" + +msgid "Stop them and continue anyway?" +msgstr "Chcete i přesto pokračovat a zastavit nahrávání?" + +msgid "Ongoing uploads" +msgstr "Probíhá nahrávání" + +msgid "Select a G-code file:" +msgstr "Vyberte soubor s G-kódem:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"Nelze spustit stahování z URL. Cílová složka není nastavena. Zvolte cílovou " +"složku v průvodci nastavení." + +msgid "Import File" +msgstr "Importovat soubor" + +msgid "Choose files" +msgstr "Vyberte soubory" + +msgid "New Folder" +msgstr "Nová složka" + +msgid "Open" +msgstr "Otevřít" + +msgid "Rename" +msgstr "Přejmenovat" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Inicializace grafického rozhraní Snapmaker Orca se nezdařila" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Závažná chyba, zachycená výjimka: %1%" + +msgid "Quality" +msgstr "Kvalita" + +msgid "Shell" +msgstr "Skořepina" + +msgid "Infill" +msgstr "Výplň" + +msgid "Support" +msgstr "Podpěry" + +msgid "Flush options" +msgstr "Možnosti Čištění" + +msgid "Speed" +msgstr "Rychlost" + +msgid "Strength" +msgstr "Pevnost" + +msgid "Top Solid Layers" +msgstr "Horní plné vrstvy" + +msgid "Top Minimum Shell Thickness" +msgstr "Minimální tloušťka skořepiny nahoře" + +msgid "Bottom Solid Layers" +msgstr "Spodní plné vrstvy" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Minimální tloušťka skořepiny dole" + +msgid "Ironing" +msgstr "Žehlení" + +msgid "Fuzzy Skin" +msgstr "Členitý povrch" + +msgid "Extruders" +msgstr "Extrudery" + +msgid "Extrusion Width" +msgstr "Šířka Extruze" + +msgid "Wipe options" +msgstr "Možnosti čištění" + +msgid "Bed adhesion" +msgstr "Přilnavost k Podložce" + +msgid "Add part" +msgstr "Přidat díl" + +msgid "Add negative part" +msgstr "Přidat negativní díl" + +msgid "Add modifier" +msgstr "Přidat modifikátor" + +msgid "Add support blocker" +msgstr "Přidat blokátor podpěr" + +msgid "Add support enforcer" +msgstr "Přidat vynucení podpěr" + +msgid "Add text" +msgstr "Přidat text" + +msgid "Add negative text" +msgstr "Přidat text jako negativní objem" + +msgid "Add text modifier" +msgstr "Přidat textový modifikátor" + +msgid "Add SVG part" +msgstr "Přidat SVG část" + +msgid "Add negative SVG" +msgstr "Přidat negativní SVG" + +msgid "Add SVG modifier" +msgstr "Přidání SVG modifikátoru" + +msgid "Select settings" +msgstr "Vybrat nastavení" + +msgid "Hide" +msgstr "Skrýt" + +msgid "Show" +msgstr "Zobrazit" + +msgid "Del" +msgstr "Smazat" + +msgid "Delete the selected object" +msgstr "Smazat vybraný objekt" + +msgid "Load..." +msgstr "Načíst..." + +msgid "Cube" +msgstr "Kostka" + +msgid "Cylinder" +msgstr "Válec" + +msgid "Cone" +msgstr "Kužel" + +msgid "Disc" +msgstr "" + +msgid "Torus" +msgstr "" + +msgid "Orca Cube" +msgstr "Orca Kostka" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Autodesk FDM Test" + +msgid "Voron Cube" +msgstr "Voron Kostka" + +msgid "Stanford Bunny" +msgstr "" + +msgid "Orca String Hell" +msgstr "" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" + +msgid "Text" +msgstr "Text" + +msgid "Height range Modifier" +msgstr "Modifikátor výškového rozsahu" + +msgid "Add settings" +msgstr "Přidat nastavení" + +msgid "Change type" +msgstr "Změnit typ" + +msgid "Set as an individual object" +msgstr "Nastavit jako samostatný objekt" + +msgid "Set as individual objects" +msgstr "Nastavit jako jednotlivé objekty" + +msgid "Fill bed with copies" +msgstr "Vyplnit tiskovou plochu kopiemi" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Vyplní zbývající tiskovou plochu kopiemi vybraného objektu" + +msgid "Printable" +msgstr "Tisknout objekt" + +msgid "Fix model" +msgstr "Opravit model" + +msgid "Export as one STL" +msgstr "" + +msgid "Export as STLs" +msgstr "" + +msgid "Reload from disk" +msgstr "Znovu načíst z disku" + +msgid "Reload the selected parts from disk" +msgstr "Znovu načíst vybrané části z disku" + +msgid "Replace with STL" +msgstr "Nahradit STL souborem" + +msgid "Replace the selected part with new STL" +msgstr "Nahradit vybranou část novým STL" + +msgid "Change filament" +msgstr "Změnit filament" + +msgid "Set filament for selected items" +msgstr "Nastavit filament pro vybrané položky" + +msgid "Default" +msgstr "Výchozí" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filament %d" + +msgid "current" +msgstr "proud" + +msgid "Scale to build volume" +msgstr "Škálovat na sestavení objemu" + +msgid "Scale an object to fit the build volume" +msgstr "Přizpůsobte objekt tak, aby odpovídal objemu sestavy" + +msgid "Flush Options" +msgstr "Možnosti Čištění" + +msgid "Flush into objects' infill" +msgstr "Čištění do výplně objektů" + +msgid "Flush into this object" +msgstr "Čištění do tohoto objektu" + +msgid "Flush into objects' support" +msgstr "Čištění do podpěr objektů" + +msgid "Edit in Parameter Table" +msgstr "Upravit v tabulce Parametrů" + +msgid "Convert from inch" +msgstr "Převést z palce" + +msgid "Restore to inch" +msgstr "Obnovit na palec" + +msgid "Convert from meter" +msgstr "Převést z mm" + +msgid "Restore to meter" +msgstr "Obnovit do mm" + +msgid "Assemble" +msgstr "Sestavit" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Sestavte vybrané objekty do objektu s více částmi" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Sestavte vybrané objekty do objektu s jednou částí" + +msgid "Mesh boolean" +msgstr "Booleovská síť" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Booleovské operace na mřížce včetně sjednocení a odečítání" + +msgid "Along X axis" +msgstr "Podél osy X" + +msgid "Mirror along the X axis" +msgstr "Zrcadlit podél osy X" + +msgid "Along Y axis" +msgstr "Podél osy Y" + +msgid "Mirror along the Y axis" +msgstr "Zrcadlit podél osy Y" + +msgid "Along Z axis" +msgstr "Podél osy Z" + +msgid "Mirror along the Z axis" +msgstr "Zrcadlit podél osy Z" + +msgid "Mirror object" +msgstr "Zrcadlit objekt" + +msgid "Edit text" +msgstr "Upravit text" + +msgid "Ability to change text, font, size, ..." +msgstr "Možnost měnit text, písmo, velikost, ..." + +msgid "Edit SVG" +msgstr "Upravit SVG" + +msgid "Change SVG source file, projection, size, ..." +msgstr "Změna zdrojového souboru SVG, projekce, velikosti, ..." + +msgid "Invalidate cut info" +msgstr "Zneplatnění informací o řezu" + +msgid "Add Primitive" +msgstr "Přidat Primitivní" + +msgid "Add Handy models" +msgstr "" + +msgid "Add Models" +msgstr "Přidat modely" + +msgid "Show Labels" +msgstr "Zobrazit štítky" + +msgid "To objects" +msgstr "Na objekty" + +msgid "Split the selected object into multiple objects" +msgstr "Rozdělit vybraný objekt na více objektů" + +msgid "To parts" +msgstr "Na části" + +msgid "Split the selected object into multiple parts" +msgstr "Rozdělit vybraný objekt na více částí" + +msgid "Split" +msgstr "Rozdělit" + +msgid "Split the selected object" +msgstr "Rozdělit vybraný objekt" + +msgid "Auto orientation" +msgstr "Automatická orientace" + +msgid "Auto orient the object to improve print quality." +msgstr "Automaticky orientovat objekt pro zlepšení kvality tisku." + +msgid "Select All" +msgstr "Vybrat vše" + +msgid "select all objects on current plate" +msgstr "vybrat všechny objekty na aktuální desce" + +msgid "Delete All" +msgstr "Smazat vše" + +msgid "delete all objects on current plate" +msgstr "smazat všechny objekty na aktuální desce" + +msgid "Arrange" +msgstr "Uspořádat" + +msgid "arrange current plate" +msgstr "uspořádat aktuální podložku" + +msgid "Reload All" +msgstr "" + +msgid "reload all from disk" +msgstr "" + +msgid "Auto Rotate" +msgstr "Automatické otáčení" + +msgid "auto rotate current plate" +msgstr "automatické otáčení aktuální podložky" + +msgid "Delete Plate" +msgstr "Smazat Podložku" + +msgid "Remove the selected plate" +msgstr "Odstranit vybranou podložku" + +msgid "Clone" +msgstr "Klonovat" + +msgid "Simplify Model" +msgstr "Zjednodušit model" + +msgid "Center" +msgstr "Střed" + +msgid "Edit Process Settings" +msgstr "Upravit nastavení procesu" + +msgid "Edit print parameters for a single object" +msgstr "Upravit parametry tisku pro jeden objekt" + +msgid "Change Filament" +msgstr "Změnit Filament" + +msgid "Set Filament for selected items" +msgstr "Nastavit Filament pro vybrané položky" + +msgid "Unlock" +msgstr "Odemknout" + +msgid "Lock" +msgstr "Zamknout" + +msgid "Edit Plate Name" +msgstr "Upravit název podložky" + +msgid "Name" +msgstr "Název" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d chyba opravena" +msgstr[1] "%1$d opravených chyb" +msgstr[2] "%1$d opraveno chyb" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Chyba: %1$d nespojitelná hrana." +msgstr[1] "Chyba: %1$d nespojitelné hrany." +msgstr[2] "Chyba: %1$d nespojitelných hran." + +msgid "Remaining errors" +msgstr "Zbylé chyby" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d nespojitelná hrana" +msgstr[1] "%1$d nespojitelné hrany" +msgstr[2] "%1$d nespojitelných hran" + +msgid "Right click the icon to fix model object" +msgstr "Kliknutím pravým tlačítkem na ikonu opravíte objekt modelu" + +msgid "Right button click the icon to drop the object settings" +msgstr "Kliknutím pravým tlačítkem na ikonu zrušíte nastavení objektu" + +msgid "Click the icon to reset all settings of the object" +msgstr "Kliknutím na ikonu resetujete všechna nastavení objektu" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Kliknutím pravým tlačítkem na ikonu odstraníte vlastnost pro tisk objektu" + +msgid "Click the icon to toggle printable property of the object" +msgstr "Kliknutím na ikonu přepnete tisknutelné vlastnosti objektu" + +msgid "Click the icon to edit support painting of the object" +msgstr "Kliknutím na ikonu upravíte malování podpěr objektu" + +msgid "Click the icon to edit color painting of the object" +msgstr "Kliknutím na ikonu upravíte barevnou malbu objektu" + +msgid "Click the icon to shift this object to the bed" +msgstr "Klikněte na ikonu pro přesunutí tohoto objektu na podložku" + +msgid "Loading file" +msgstr "Načítání souboru" + +msgid "Error!" +msgstr "Chyba!" + +msgid "Failed to get the model data in the current file." +msgstr "Nepodařilo se získat data modelu v aktuálním souboru." + +msgid "Generic" +msgstr "Obecný" + +msgid "Add Modifier" +msgstr "Přidat modifikátor" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Přepněte do režimu nastavení pro jednotlivé objekty pro úpravu nastavení " +"modifikátoru." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Přepněte do režimu nastavení pro jednotlivé objekty a upravte procesní " +"nastavení vybraných předmětů." + +msgid "Delete connector from object which is a part of cut" +msgstr "Odstranění spojky z objektu, který je částí řezu" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Smazat pevnou část objektu, která je součástí řezu" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Smazat negativní objem z objektu, který je součástí řezu" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Chcete-li uchovat informace o řezu, můžete odstranit všechny spojky ze všech " +"souvisejících objektů." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"Tato akce způsobí ztrátu informací o řezu.\n" +"Po této akci nelze zaručit konzistenci modelu. \n" +"\n" +"Chcete-li manipulovat s částmi modelu nebo negativními objemy, musíte " +"nejprve zneplatnit informace o řezu modelu." + +msgid "Delete all connectors" +msgstr "Smazat všechny spojky" + +msgid "Deleting the last solid part is not allowed." +msgstr "Smazání poslední pevné části není povoleno." + +msgid "The target object contains only one part and can not be splited." +msgstr "Cílový objekt obsahuje pouze jednu část a nelze jej rozdělit." + +msgid "Assembly" +msgstr "Sestavení" + +msgid "Cut Connectors information" +msgstr "Informace o spojkách řezu" + +msgid "Object manipulation" +msgstr "Manipulace s objektem" + +msgid "Group manipulation" +msgstr "Manipulace se skupinou" + +msgid "Object Settings to modify" +msgstr "Změna nastavení objektu" + +msgid "Part Settings to modify" +msgstr "Změna nastavení části" + +msgid "Layer range Settings to modify" +msgstr "Nastavení pro vrstvy v rozsahu" + +msgid "Part manipulation" +msgstr "Manipulace s částmi" + +msgid "Instance manipulation" +msgstr "Manipulace s instancí objektu" + +msgid "Height ranges" +msgstr "Výškové rozsahy" + +msgid "Settings for height range" +msgstr "Nastavení pro výškový rozsah" + +msgid "Layer" +msgstr "Vrstva" + +msgid "Selection conflicts" +msgstr "Konflikty výběru" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "Pokud je první vybraná položka objekt, druhá by měla být také objekt." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Pokud je tato možnost povolena, zobrazí se při spuštění aplikace užitečné " +"tipy." + +msgid "The type of the last solid object part is not to be changed." +msgstr "Typ poslední části pevného objektu nelze změnit." + +msgid "Negative Part" +msgstr "Negativní díl" + +msgid "Support Blocker" +msgstr "Blokátor podpěr" + +msgid "Support Enforcer" +msgstr "Vynucení podpěr" + +msgid "Type:" +msgstr "Typ:" + +msgid "Choose part type" +msgstr "Vyberte typ dílu" + +msgid "Enter new name" +msgstr "Zadejte nový název" + +msgid "Renaming" +msgstr "Přejmenování" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "Následující objekt modelu byl opraven" +msgstr[1] "Následující objekty modelu byly opraveny" +msgstr[2] "Následující objekty modelu byly opraveny" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Nepodařilo se opravit následující objekt modelu" +msgstr[1] "Nepodařilo se opravit následující objekty modelu" +msgstr[2] "Nepodařilo se opravit následující objekty modelu" + +msgid "Repairing was canceled" +msgstr "Oprava byla zrušena" + +msgid "Additional process preset" +msgstr "Další přednastavení procesu" + +msgid "Remove parameter" +msgstr "Odebrat parametr" + +msgid "to" +msgstr "do" + +msgid "Remove height range" +msgstr "Odstranit rozsah výšky" + +msgid "Add height range" +msgstr "Přidat rozsah výšky" + +msgid "Invalid numeric." +msgstr "Neplatné číslo." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"jednu buňku lze zkopírovat pouze do jedné nebo více buněk ve stejném sloupci" + +msgid "multiple cells copy is not supported" +msgstr "kopírování více buněk není podporováno" + +msgid "Outside" +msgstr "Mimo" + +msgid "Layer height" +msgstr "Výška vrstvy" + +msgid "Wall loops" +msgstr "Počet perimetrů/stěn" + +msgid "Infill density(%)" +msgstr "Hustota výplně (%)" + +msgid "Auto Brim" +msgstr "Auto Límec" + +msgid "Mouse ear" +msgstr "Uši myši" + +msgid "Outer brim only" +msgstr "Pouze vnější" + +msgid "Inner brim only" +msgstr "Pouze vnitřní Límec" + +msgid "Outer and inner brim" +msgstr "Vnější a vnitřní límec" + +msgid "No-brim" +msgstr "Bez límce" + +msgid "Outer wall speed" +msgstr "Rychlost vnější stěny" + +msgid "Plate" +msgstr "Podložka" + +msgid "Brim" +msgstr "Límec" + +msgid "Object/Part Setting" +msgstr "Nastavení objektu/dílů" + +msgid "Reset parameter" +msgstr "Resetovat parametr" + +msgid "Multicolor Print" +msgstr "Vícebarevný tisk" + +msgid "Line Type" +msgstr "Typ Linky" + +msgid "More" +msgstr "Více" + +msgid "Open Preferences." +msgstr "Otevřít Nastavení." + +msgid "Open next tip." +msgstr "Otevřít další tip." + +msgid "Open Documentation in web browser." +msgstr "Otevřít dokumentaci ve webovém prohlížeči." + +msgid "Color" +msgstr "Barva" + +msgid "Pause" +msgstr "Pozastavení" + +msgid "Template" +msgstr "" + +msgid "Custom" +msgstr "Vlastní" + +msgid "Pause:" +msgstr "Pauza:" + +msgid "Custom Template:" +msgstr "Vlastní šablona:" + +msgid "Custom G-code:" +msgstr "Vlastní G-kód:" + +msgid "Custom G-code" +msgstr "Vlastní G-kód" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Zadejte vlastní G-kód použitý na aktuální vrstvě:" + +msgid "Jump to Layer" +msgstr "Přejít na vrstvu" + +msgid "Please enter the layer number" +msgstr "Zadejte prosím číslo vrstvy" + +msgid "Add Pause" +msgstr "Přidat pauzu" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Vložte příkaz pro pozastavení na začátek této vrstvy." + +msgid "Add Custom G-code" +msgstr "Přidat vlastní G-kód" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Vložte vlastní G-kód na začátek této vrstvy." + +msgid "Add Custom Template" +msgstr "Přidat vlastní šablonu" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Vložte vlastní G-kód šablony na začátek této vrstvy." + +msgid "Filament " +msgstr "Filament " + +msgid "Change filament at the beginning of this layer." +msgstr "Změna filamentu na začátku této vrstvy." + +msgid "Delete Pause" +msgstr "Odstranit pozastavení" + +msgid "Delete Custom Template" +msgstr "Odstranit vlastní šablonu" + +msgid "Edit Custom G-code" +msgstr "Upravit vlastní G-kód" + +msgid "Delete Custom G-code" +msgstr "Odstranit vlastní G-kód" + +msgid "Delete Filament Change" +msgstr "Odstranit změnu filamentu" + +msgid "No printer" +msgstr "Žádná tiskárna" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Nepodařilo se připojit k serveru" + +msgid "Check the status of current system services" +msgstr "Zkontrolujte stav aktuálních systémových služeb" + +msgid "code" +msgstr "kód" + +msgid "Failed to connect to cloud service" +msgstr "Selhalo připojení ke cloudové službě" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "Prosím, klikněte na odkaz výše pro zobrazení stavu cloudové služby" + +msgid "Failed to connect to the printer" +msgstr "Nepodařilo se připojit k tiskárně" + +msgid "Connection to printer failed" +msgstr "Připojení k tiskárně selhalo" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Prosím, zkontrolujte síťové připojení tiskárny a Studia." + +msgid "Connecting..." +msgstr "Připojuji se..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Prázdný" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Automatické Doplnění" + +msgid "AMS not connected" +msgstr "AMS není připojen" + +msgid "Load" +msgstr "Načíst" + +msgid "Unload" +msgstr "Vysunout" + +msgid "Ext Spool" +msgstr "Ext Cívka" + +msgid "Tips" +msgstr "Tipy" + +msgid "Guide" +msgstr "Průvodce" + +msgid "Retry" +msgstr "Zkusit znovu" + +msgid "Calibrating AMS..." +msgstr "Kalibruji AMS..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "Během kalibrace došlo k problému. Kliknutím zobrazíte řešení." + +msgid "Calibrate again" +msgstr "Znovu kalibrovat" + +msgid "Cancel calibration" +msgstr "Zrušit kalibraci" + +msgid "Idling..." +msgstr "Čekání..." + +msgid "Heat the nozzle" +msgstr "Zahřejte trysku" + +msgid "Cut filament" +msgstr "Vyjmout Filament" + +msgid "Pull back current filament" +msgstr "Vytáhněte aktuální filament" + +msgid "Push new filament into extruder" +msgstr "Zatlačte nový filament do extruderu" + +msgid "Purge old filament" +msgstr "Vyčistit starý filament" + +msgid "Feed Filament" +msgstr "Zavádění filamentu" + +msgid "Confirm extruded" +msgstr "Potvrdit extruzi" + +msgid "Check filament location" +msgstr "Zkontrolovat polohu filamentu" + +msgid "Grab new filament" +msgstr "Vezměte nový filament" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" + +msgid "Edit" +msgstr "Upravit" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Všechny vybrané objekty jsou na uzamčené desce,\n" +"Tyto objekty nelze automaticky uspořádat." + +msgid "No arrangable objects are selected." +msgstr "Nejsou vybrány žádné aranžovatelné objekty." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Tato podložka je zamčená.\n" +"Nemůžeme automaticky uspořádat tuto podložku." + +msgid "Arranging..." +msgstr "Uspořádávání..." + +msgid "Arranging" +msgstr "Uspořádávání" + +msgid "Arranging canceled." +msgstr "Uspořádávání zrušeno." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Zajištění je hotovo, ale jsou tam rozbalené položky. Zmenšete mezery a " +"zkuste to znovu." + +msgid "Arranging done." +msgstr "Uspořádávání dokončeno." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Uspořádání se nezdařilo. Při zpracování geometrií objektů bylo nalezeno " +"několik výjimek." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"Uspořádání ignorovalo následující objekty, které se nevejdou na jednu " +"podložku:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Všechny vybrané objekty jsou na uzamčené podložce,\n" +"Nemůžeme automaticky orientovat tyto objekty." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Tato podložka je zamčená.\n" +"Nemůžeme automaticky orientovat tuto podložku." + +msgid "Orienting..." +msgstr "Orientování..." + +msgid "Orienting" +msgstr "Orientování" + +msgid "Orienting canceled." +msgstr "" + +msgid "Filling" +msgstr "" + +msgid "Bed filling canceled." +msgstr "Vyplnění podložky zrušeno." + +msgid "Bed filling done." +msgstr "Vyplnění podložky je dokončené." + +msgid "Searching for optimal orientation" +msgstr "Hledání optimální orientace" + +msgid "Orientation search canceled." +msgstr "Hledání optimální orientace zrušeno." + +msgid "Orientation found." +msgstr "Orientace nalezena." + +msgid "Logging in" +msgstr "Přihlášení" + +msgid "Login failed" +msgstr "Přihlášení se nezdařilo" + +msgid "Please check the printer network connection." +msgstr "Zkontrolujte prosím síťové připojení tiskárny." + +msgid "Abnormal print file data. Please slice again." +msgstr "Abnormální data tiskového souboru. Prosím znovu slicovat." + +msgid "Task canceled." +msgstr "Úloha zrušena." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"Čas pro nahrávání úlohy vypršel. Zkontrolujte stav sítě a zkuste to znovu." + +msgid "Cloud service connection failed. Please try again." +msgstr "Připojení ke cloudové službě se nezdařilo. Zkuste to prosím znovu." + +msgid "Print file not found. please slice again." +msgstr "Tiskový soubor nebyl nalezen. Prosím znovu slicovat." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"Tiskový soubor překračuje maximální povolenou velikost (1 GB). Zjednodušte " +"prosím model a znovu slicujte." + +msgid "Failed to send the print job. Please try again." +msgstr "Nepodařilo se odeslat tiskovou úlohu. Zkuste to prosím znovu." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Selhalo nahrání souboru na FTP. Zkuste to prosím znovu." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "Zkontrolujte aktuální stav serveru bambu kliknutím na odkaz výše." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"Velikost tiskového souboru je příliš velká. Upravte velikost souboru a " +"zkuste to znovu." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" +"Tiskový soubor nebyl nalezen. Prosím, slicujte jej znovu a pošlete k tisku." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Selhalo nahrání tiskového souboru na FTP. Zkontrolujte stav sítě a zkuste to " +"znovu." + +msgid "Sending print job over LAN" +msgstr "Odesílání tiskové úlohy přes LAN" + +msgid "Sending print job through cloud service" +msgstr "Odesílání tiskové úlohy prostřednictvím cloudové služby" + +msgid "Print task sending times out." +msgstr "" + +msgid "Service Unavailable" +msgstr "Služba není k dispozici" + +msgid "Unknown Error." +msgstr "Neznámá chyba." + +msgid "Sending print configuration" +msgstr "Odesílání konfigurace tisku" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "Úspěšně odesláno. Automaticky přejde na stránku zařízení v %ss" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "Úspěšně odesláno. Automaticky přejde na další stránku za %ss" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "Před tiskem přes LAN je třeba vložit SD kartu." + +msgid "Sending gcode file over LAN" +msgstr "Odesílání souboru gkód přes LAN" + +msgid "Sending gcode file to sdcard" +msgstr "Odesílání souboru gkód na sd kartu" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Úspěšně odesláno. Zavřít aktuální stránku za %s s" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Před odesláním do tiskárny je třeba vložit SD kartu." + +msgid "Importing SLA archive" +msgstr "Importuje se SLA archiv" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"SLA archiv neobsahuje žádné přednastavení. Před importem tohoto SLA archivu " +"nejprve aktivujte některé přednastavení SLA tiskárny." + +msgid "Importing canceled." +msgstr "Import zrušen." + +msgid "Importing done." +msgstr "Import dokončen." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"Importovaný archiv SLA neobsahoval žádné přednastavení. Aktuální SLA " +"přednastavení bylo použito jako záložní." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "" +"Nelze načíst SLA projekt s objektem na podložce, který je složený z více " +"částí" + +msgid "Please check your object list before preset changing." +msgstr "Před změnou nastavení zkontrolujte prosím seznam objektů." + +msgid "Attention!" +msgstr "Pozor!" + +msgid "Downloading" +msgstr "Stahování" + +msgid "Download failed" +msgstr "Stahování se nezdařilo" + +msgid "Cancelled" +msgstr "Zrušeno" + +msgid "Install successfully." +msgstr "Instalace proběhla úspěšně." + +msgid "Installing" +msgstr "Instalace" + +msgid "Install failed" +msgstr "Instalace se nezdařila" + +msgid "Portions copyright" +msgstr "Autorská práva" + +msgid "Copyright" +msgstr "Autorská práva" + +msgid "License" +msgstr "Licence" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca je licencován pod " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, verze 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "" + +msgid "Libraries" +msgstr "Knihovny" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Tento software používá komponenty s otevřeným zdrojovým kódem, jejichž " +"autorská práva a další vlastnická práva náleží jejich příslušným vlastníkům" + +#, c-format, boost-format +msgid "About %s" +msgstr "O %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca je založen na BambuStudio, PrusaSlicer a SuperSlicer." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "BambuStudio je původně založeno na PrusaSlicer od PrusaResearch." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer je původně založen na Slic3r od Alessandra Ranellucciho." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r vytvořil Alessandro Ranellucci s pomocí mnoha dalších přispěvatelů." + +msgid "Version" +msgstr "Verze" + +msgid "AMS Materials Setting" +msgstr "Nastavení materiálů AMS" + +msgid "Confirm" +msgstr "Potvrdit" + +msgid "Close" +msgstr "Zavřít" + +msgid "Colour" +msgstr "Barva" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Tryska\n" +"Teplota" + +msgid "max" +msgstr "max" + +msgid "min" +msgstr "min" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "Vstupní hodnota by měla být větší než %1% a menší než %2%" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "Nastavení informací o slotu AMS při tisku není podporováno" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Faktory Kalibrace Dynamiky Průtoku" + +msgid "PA Profile" +msgstr "Profil PA" + +msgid "Factor K" +msgstr "Faktor K" + +msgid "Factor N" +msgstr "Faktor N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "Nastavení informací o virtuálním slotu během tisku není podporováno" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Jste si jistý, že chcete vymazat informace o filamentu?" + +msgid "You need to select the material type and color first." +msgstr "Nejprve musíte vybrat typ materiálu a barvu." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" + +msgid "Other Color" +msgstr "Jiná Barva" + +msgid "Custom Color" +msgstr "Vlastní Barva" + +msgid "Dynamic flow calibration" +msgstr "Kalibrace dynamického průtoku" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"Teplota trysky a maximální objemová rychlost ovlivní výsledky kalibrace. " +"Vyplňte prosím stejné hodnoty jako při skutečném tisku. Mohou to být " +"automaticky plněno výběrem předvolby filamentu." + +msgid "Nozzle Diameter" +msgstr "Průměr trysky" + +msgid "Bed Type" +msgstr "Typ Podložky" + +msgid "Nozzle temperature" +msgstr "Teplota trysky" + +msgid "Bed Temperature" +msgstr "Teplota Podložky" + +msgid "Max volumetric speed" +msgstr "Maximální objemová rychlost" + +msgid "℃" +msgstr "℃" + +msgid "Bed temperature" +msgstr "Teplota podložky" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Spustit kalibraci" + +msgid "Next" +msgstr "Další" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Kalibrace dokončena. Najděte nejjednotnější linii extruze na své horké " +"podložce jako na obrázku níže a vyplňte hodnotu na její levé straně do " +"vstupního pole faktoru K." + +msgid "Save" +msgstr "Uložit" + +msgid "Last Step" +msgstr "Poslední krok" + +msgid "Example" +msgstr "Příklad" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Kalibruji... %d%%" + +msgid "Calibration completed" +msgstr "Kalibrace dokončena" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s nepodporuje %s" + +msgid "Dynamic flow Calibration" +msgstr "Kalibrace dynamického průtoku" + +msgid "Step" +msgstr "Krok" + +msgid "AMS Slots" +msgstr "AMS sloty" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "Poznámka: Lze vybrat pouze sloty AMS se stejným typem materiálu." + +msgid "Enable AMS" +msgstr "Povolit AMS" + +msgid "Print with filaments in the AMS" +msgstr "Tisk s filamenty v AMS" + +msgid "Disable AMS" +msgstr "Zakázat AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Tisk s filamentem namontovaným na zadní straně podvozku" + +msgid "Current Cabin humidity" +msgstr "" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Nastavit, který slot AMS by měl být použit pro filament použitý v tiskové " +"úloze" + +msgid "Filament used in this print job" +msgstr "V této tiskové úloze použit filament" + +msgid "AMS slot used for this filament" +msgstr "Slot AMS použitý pro tento filament" + +msgid "Click to select AMS slot manually" +msgstr "Kliknutím vyberte slot AMS ručně" + +msgid "Do not Enable AMS" +msgstr "Nepovolovat AMS" + +msgid "Print using materials mounted on the back of the case" +msgstr "Tisk s použitím materiálů namontovaných na zadní straně pouzdra" + +msgid "Print with filaments in ams" +msgstr "Tisk s filamenty v ams" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Tisk s filamenty namontovanými na zadní straně šasi" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Když současný materiál dojde, tiskárna bude pokračovat v tisku v " +"následujícím pořadí." + +msgid "Group" +msgstr "Skupina" + +msgid "The printer does not currently support auto refill." +msgstr "" +"Tiskárna v současné době nepodporuje automatické doplňování (auto refill)." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"Záloha AMS filamentu není povolena, prosím, povolte ji v nastavení AMS." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"Pokud v AMS existují dva identické filamenty, bude povolena záloha AMS " +"filamentu. \n" +"(Aktuálně podporuje automatické doplňování spotřebního materiálu stejné " +"značky, typu materiálu a barvy)" + +msgid "DRY" +msgstr "" + +msgid "WET" +msgstr "" + +msgid "AMS Settings" +msgstr "Nastavení AMS" + +msgid "Insertion update" +msgstr "Aktualizace vložení" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"AMS automaticky přečte informace o filamentu při vložení Nový filament Bambu " +"Lab. To trvá asi 20 sekund." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Při vkládání nového filamentu AMS automaticky nepřečte jeho informace, " +"ponechte je prázdné, abyste je mohli zadat ručně." + +msgid "Power on update" +msgstr "Aktualizovat při spuštění" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"AMS automaticky přečte informace o vloženém filamentu při spuštění. Bude to " +"trvat asi 1 minutu. Proces čtení bude navíjet cívku filamentu." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"AMS nebude automaticky číst informace z vloženého filamentu při spuštění a " +"bude nadále používat informace zaznamenané před posledním vypnutí." + +msgid "Update remaining capacity" +msgstr "Aktualizovat zbývající kapacitu" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"AMS odhadne zbývající kapacitu filamentu Bambu po filamentu informace jsou " +"aktualizovány. Během tisku bude aktualizována zbývající kapacita automaticky." + +msgid "AMS filament backup" +msgstr "AMS záloha filamentů" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"AMS bude pokračovat na další cívku se stejnými vlastnostmi filamentu " +"automaticky, když dojde aktuální filament" + +msgid "Air Printing Detection" +msgstr "" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" + +msgid "File" +msgstr "Soubor" + +msgid "Calibration" +msgstr "Kalibrace" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Stažení pluginu se nezdařilo. Zkontrolujte prosím nastavení brány firewall a " +"vpn software, zkontrolujte a zkuste to znovu." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Nepodařilo se nainstalovat plugin. Zkontrolujte, zda není blokován nebo " +"odstraněn antivirovým softwarem." + +msgid "click here to see more info" +msgstr "kliknutím sem zobrazíte více informací" + +msgid "Please home all axes (click " +msgstr "Prosím domů všechny osy (klikněte " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +"), abyste našli polohu nástrojové hlavy. Tím zabráníte pohybu zařízení za " +"tisknutelné hranice a způsobující opotřebení zařízení." + +msgid "Go Home" +msgstr "Jít Domů" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "Došlo k chybě. Možná paměť systému nestačí nebo je to chyba program" + +msgid "Please save project and restart the program. " +msgstr "Uložte projekt a restartujte program. " + +msgid "Processing G-Code from Previous file..." +msgstr "Zpracovává se G-kód z předchozího souboru..." + +msgid "Slicing complete" +msgstr "Slicování dokončeno" + +msgid "Access violation" +msgstr "Porušení přístupu" + +msgid "Illegal instruction" +msgstr "Nepovolený příkaz" + +msgid "Divide by zero" +msgstr "Dělení nulou" + +msgid "Overflow" +msgstr "Přetečení" + +msgid "Underflow" +msgstr "Podtečení" + +msgid "Floating reserved operand" +msgstr "Plovoucí rezervovaný operand" + +msgid "Stack overflow" +msgstr "Přetečení zásobníku" + +msgid "Running post-processing scripts" +msgstr "Vykonávají se postprodukční skripty" + +msgid "Successfully executed post-processing script" +msgstr "" + +msgid "Unknown error occured during exporting G-code." +msgstr "Během exportu G-codu došlo k neznámé chybě." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Kopírování dočasného G-codu do výstupního G-codu se nezdařilo. Není SD karta " +"chráněná proti zápisu?\n" +"Chybová hláška: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"Kopírování dočasného G-codu do výstupního G-codu se nezdařilo. Může to být " +"problém s cílovým zařízením. Zkuste exportovat znovu nebo použijte jiné " +"zařízení. Poškozený výstupní G-code je v %1%.tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"Přejmenování G-codu po zkopírování do vybrané cílové složky se nezdařilo. " +"Aktuální cesta je %1%.tmp. Zkuste to prosím znovu." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"Kopírování dočasného G-codu bylo dokončeno, ale původní G-code na %1% nemohl " +"být během kontroly kopírování otevřen. Výstupní G-code je v %2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"Kopírování dočasného G-codu bylo dokončeno, ale exportovaný G-code nemohl " +"být během kontroly kopírování otevřen. Výstupní G-cod je v %1%.tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "G-code byl exportován do %1%" + +msgid "Unknown error when export G-code." +msgstr "Neznámá chyba při exportu G-kódu." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Soubor gkód se nepodařilo uložit.\n" +"Chybová zpráva: %1%.\n" +"Zdrojový soubor %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Kopírování dočasného G-kódu do výstupního G-kódu selhalo" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Plánování nahrávání do `%1%`. Viz Okno -> Fronta nahrávaní do tiskového " +"serveru" + +msgid "Device" +msgstr "Zařízení" + +msgid "Task Sending" +msgstr "" + +msgid "Task Sent" +msgstr "" + +msgid "Edit multiple printers" +msgstr "" + +msgid "Select connected printers (0/6)" +msgstr "" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "" + +msgid "Offline" +msgstr "Offline" + +msgid "No task" +msgstr "" + +msgid "View" +msgstr "Zobrazení" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "" + +msgid "Device Name" +msgstr "" + +msgid "Task Name" +msgstr "" + +msgid "Device Status" +msgstr "" + +msgid "Actions" +msgstr "" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" + +msgid "Add" +msgstr "Přidat" + +msgid "Idle" +msgstr "Nečinný" + +msgid "Printing" +msgstr "Tisk" + +msgid "Upgrading" +msgstr "" + +msgid "Incompatible" +msgstr "Nekompatibilní" + +msgid "syncing" +msgstr "" + +msgid "Printing Finish" +msgstr "" + +msgid "Printing Failed" +msgstr "" + +msgid "Printing Pause" +msgstr "" + +msgid "Prepare" +msgstr "Připravit" + +msgid "Slicing" +msgstr "Slicování" + +msgid "Pending" +msgstr "" + +msgid "Sending" +msgstr "" + +msgid "Sending Finish" +msgstr "" + +msgid "Sending Cancel" +msgstr "" + +msgid "Sending Failed" +msgstr "" + +msgid "Print Success" +msgstr "" + +msgid "Print Failed" +msgstr "" + +msgid "Removed" +msgstr "" + +msgid "Resume" +msgstr "Pokračovat" + +msgid "Stop" +msgstr "Zastavit" + +msgid "Task Status" +msgstr "" + +msgid "Sent Time" +msgstr "" + +msgid "There are no tasks to be sent!" +msgstr "" + +msgid "No historical tasks!" +msgstr "" + +msgid "Loading..." +msgstr "Načítání..." + +msgid "No AMS" +msgstr "" + +msgid "Send to Multi-device" +msgstr "" + +msgid "Preparing print job" +msgstr "Příprava tiskové úlohy" + +msgid "Abnormal print file data. Please slice again" +msgstr "Abnormální data tiskového souboru. Prosím znovu slicovat" + +msgid "There is no device available to send printing." +msgstr "" + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" + +msgid "Use External Spool" +msgstr "" + +msgid "Use AMS" +msgstr "" + +msgid "Select Printers" +msgstr "" + +msgid "Ams Status" +msgstr "" + +msgid "Printing Options" +msgstr "" + +msgid "Bed Leveling" +msgstr "Vyrovnání podložky" + +msgid "Timelapse" +msgstr "Časosběr" + +msgid "Flow Dynamic Calibration" +msgstr "" + +msgid "Send Options" +msgstr "" + +msgid "Send to" +msgstr "" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" + +msgid "Wait" +msgstr "Zaneprázdněn" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" + +msgid "Send" +msgstr "Odeslat" + +msgid "Name is invalid;" +msgstr "Jméno je neplatné;" + +msgid "illegal characters:" +msgstr "nepovolené znaky:" + +msgid "illegal suffix:" +msgstr "nelegální přípona:" + +msgid "The name is not allowed to be empty." +msgstr "Název nesmí být prázdný." + +msgid "The name is not allowed to start with space character." +msgstr "Název nesmí začínat mezerou." + +msgid "The name is not allowed to end with space character." +msgstr "Název nesmí končit mezerou." + +msgid "The name length exceeds the limit." +msgstr "Délka názvu překračuje limit." + +msgid "Origin" +msgstr "Počátek" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Rozměr obdélníkové tiskové podložky v ose X a Y." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "Vzdálenost souřadnice 0,0 G-kódu od předního levého rohu obdélníku." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Průměr tiskové podložky. Předpokládaný počátek (0,0) je umístěn uprostřed." + +msgid "Rectangular" +msgstr "Obdélníkový" + +msgid "Circular" +msgstr "Kruhový" + +msgid "Load shape from STL..." +msgstr "Načíst tvar ze souboru STL…" + +msgid "Settings" +msgstr "Nastavení" + +msgid "Texture" +msgstr "Textura" + +msgid "Remove" +msgstr "Odebrat" + +msgid "Not found:" +msgstr "Nenalezeno:" + +msgid "Model" +msgstr "Model" + +msgid "Choose an STL file to import bed shape from:" +msgstr "" +"Vyberte STL soubor, ze kterého chcete importovat tvar tiskové podložky:" + +msgid "Invalid file format." +msgstr "Neplatný formát souboru." + +msgid "Error! Invalid model" +msgstr "Chyba! Neplatný model" + +msgid "The selected file contains no geometry." +msgstr "Vybraný soubor neobsahuje geometrii." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"Vybraný soubor obsahuje několik nespojených ploch. Tato možnost není " +"podporována." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "" +"Vyberte soubor, ze kterého chcete importovat texturu pro tiskovou podložku " +"(PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Vyberte STL soubor, ze kterého chcete importovat model podložky:" + +msgid "Bed Shape" +msgstr "Tvar Podložky" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" + +msgid "Please check.\n" +msgstr "" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"Tryska se může ucpat, když je teplota mimo doporučený rozsah.\n" +"Ujistěte se, zda chcete použít tuto teplotu k tisku.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"Doporučená teplota trysky pro tento typ filamentu je [%d, %d]stupňů Celsia" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Příliš malá maximální objemová rychlost.\n" +"Obnovit na 0,5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"Aktuální teplota komory je vyšší než bezpečná teplota materiálu,může to " +"způsobit změkčení materiálu a jeho ucpaní. Maximální bezpečná teplota pro " +"tento materiál je %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Příliš malá výška vrstvy.\n" +"Obnovit na 0,2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Příliš malá rozteč žehlení.\n" +"Obnovit na 0,1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"Nula počáteční výška vrstvy je neplatná.\n" +"\n" +"Výška první vrstvy bude resetována na 0,2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Toto nastavení se používá pouze pro ladění velikosti modelu s malou hodnotou " +"v některých případech.\n" +"Například, když velikost modelu má malou chybu a je obtížné sestavit.\n" +"Pro ladění velkých rozměrů použijte funkci měřítka modelu.\n" +"\n" +"Hodnota bude resetována na 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Hodnota kompenzace sloní nohy je příliš vysoká.\n" +"Pokud se vyskytnou závažné problémy se sloní nohou, zkontrolujte prosím " +"další nastavení.\n" +"Teplota podložky může být například příliš vysoká.\n" +"\n" +"Hodnota bude resetována na 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"Čistící věž nefunguje při adaptivní výšce vrstvy nebo když je zapnutá výška " +"nezávislé podpůrné vrstvy.\n" +"Kterou si chcete ponechat?\n" +"ANO - Zachovat čistící věž\n" +"NE - Zachovat výšku adaptivní vrstvy a výšku nezávislé podpůrné vrstvy" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"Čistící věž nefunguje, když je zapnutá adaptivní výška vrstvy.\n" +"Kterou si chcete ponechat?\n" +"ANO - Zachovat čistící věž\n" +"NE - zachovat výšku adaptivní vrstvy" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"Čistící věž nefunguje, když je zapnutá výška nezávislé podpůrné vrstvy.\n" +"Kterou si chcete ponechat?\n" +"ANO - Zachovat čistící věž\n" +"NE - Zachovat výšku nezávislé podpůrné vrstvy" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Během tisku podle objektu může extruder narazit na obrys.\n" +"Takže resetujte vrstvu obrysu na 1, abyste tomu zabránili." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Spirálový režim funguje pouze tehdy, když je 1 smyčka na stěně, podpěry jsou " +"deaktivovány, horní skořepina vrstvy jsou 0, hustota vnitřní výplně je 0 a " +"typ časosběru je tradiční." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " Ale stroje s I3 strukturou nevytvářejí časosběrná videa." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Změnit tato nastavení automaticky? \n" +"Ano - Změňte tato nastavení a povolte režim spirála/váza automaticky\n" +"Ne - zrušit povolení spirálového režimu" + +msgid "Auto bed leveling" +msgstr "Automatické vyrovnávání podložky" + +msgid "Heatbed preheating" +msgstr "Předehřev vyhřívané podložky" + +msgid "Sweeping XY mech mode" +msgstr "Sweeping XY mech mode" + +msgid "Changing filament" +msgstr "Výměna filamentu" + +msgid "M400 pause" +msgstr "M400 pauza" + +msgid "Paused due to filament runout" +msgstr "Pozastaveno kvůli docházejícího filamentu" + +msgid "Heating hotend" +msgstr "Vytápění hotend" + +msgid "Calibrating extrusion" +msgstr "Kalibrace extruze" + +msgid "Scanning bed surface" +msgstr "Skenování povrchu podložky" + +msgid "Inspecting first layer" +msgstr "Kontrola první vrstvy" + +msgid "Identifying build plate type" +msgstr "Identifikace typu sestavení podložky" + +msgid "Calibrating Micro Lidar" +msgstr "Kalibrace Micro Lidar" + +msgid "Homing toolhead" +msgstr "Nástrojová hlava" + +msgid "Cleaning nozzle tip" +msgstr "Čištění špičky trysky" + +msgid "Checking extruder temperature" +msgstr "Kontrola teploty extruderu" + +msgid "Printing was paused by the user" +msgstr "Tisk byl pozastaven uživatelem" + +msgid "Pause of front cover falling" +msgstr "Pozastavení při pádu předního krytu" + +msgid "Calibrating the micro lida" +msgstr "Kalibrace mikro lida" + +msgid "Calibrating extrusion flow" +msgstr "Kalibrace extruze průtoku" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Pozastaveno kvůli poruše teploty trysky" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Pozastaveno kvůli poruše teploty topné podložky" + +msgid "Filament unloading" +msgstr "Vysunutí filamentu" + +msgid "Skip step pause" +msgstr "Přeskočit krok pauza" + +msgid "Filament loading" +msgstr "Zavedení filamentu" + +msgid "Motor noise calibration" +msgstr "Kalibrace zvuku motoru" + +msgid "Paused due to AMS lost" +msgstr "Pozastaveno kvůli ztrátě AMS" + +msgid "Paused due to low speed of the heat break fan" +msgstr "Pozastaveno kvůli nízké rychlosti ventilátoru heat break" + +msgid "Paused due to chamber temperature control error" +msgstr "Pozastaveno kvůli chybě v řízení teploty komory" + +msgid "Cooling chamber" +msgstr "Chlazení komory" + +msgid "Paused by the Gcode inserted by user" +msgstr "Pozastaveno uživatelem vloženým G-kódem" + +msgid "Motor noise showoff" +msgstr "Předvedení zvuku motoru" + +msgid "Nozzle filament covered detected pause" +msgstr "" + +msgid "Cutter error pause" +msgstr "" + +msgid "First layer error pause" +msgstr "" + +msgid "Nozzle clog pause" +msgstr "" + +msgid "Unknown" +msgstr "Neznámý" + +msgid "Fatal" +msgstr "Fatální" + +msgid "Serious" +msgstr "Vážně" + +msgid "Common" +msgstr "Běžný" + +msgid "Update successful." +msgstr "Aktualizace úspěšná." + +msgid "Downloading failed." +msgstr "Stahování se nezdařilo." + +msgid "Verification failed." +msgstr "Ověření se nezdařilo." + +msgid "Update failed." +msgstr "Aktualizace se nezdařila." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"Aktuální teplota komory nebo cílová teplota komory přesahuje 45℃. Aby se " +"předešlo ucpaní extruderu, není povoleno načítání nízkoteplotního filamentu " +"(PLA/PETG/TPU)." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Do extruderu je načten nízkoteplotní filament (PLA/PETG/TPU). Aby se " +"předešlo ucpaní extruderu, není povoleno nastavovat teplotu komory nad 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Pokud nastavíte teplotu komory pod 40℃, řízení teploty komory se neaktivuje " +"a cílová teplota komory bude automaticky nastavena na 0℃." + +msgid "Failed to start printing job" +msgstr "Nepodařilo se spustit tiskovou úlohu" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" +"Tento typ kalibrace není kompatibilní s aktuálně vybraným průměrem trysky" + +msgid "Current flowrate cali param is invalid" +msgstr "Aktuální parametr kalibrace průtoku je neplatný" + +msgid "Selected diameter and machine diameter do not match" +msgstr "Vybraný průměr se neshoduje s průměrem stroje" + +msgid "Failed to generate cali gcode" +msgstr "Selhalo generování kalibračního G-kódu" + +msgid "Calibration error" +msgstr "Chyba kalibrace" + +msgid "TPU is not supported by AMS." +msgstr "AMS nepodporuje TPU." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "AMS nepodporuje Bambu PET-CF/PA6-CF." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Vlhké PVA se stane pružné a může se zaseknout uvnitř AMS, prosím, pečlivě je " +"usušte před použitím." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"Filamenty CF/GF jsou tvrdé a křehké, snadno se mohou zlomit nebo zaseknout v " +"AMS, používejte je s opatrností." + +msgid "default" +msgstr "výchozí" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Upravit Vlastní G-code (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "Vestavěné zástupné symboly (dvojklikem na položku přidáte do G-code)" + +msgid "Search gcode placeholders" +msgstr "" + +msgid "Add selected placeholder to G-code" +msgstr "Přidat vybraný zástupný symbol do G-code" + +msgid "Select placeholder" +msgstr "Vyberte zástupný symbol" + +msgid "[Global] Slicing State" +msgstr "" + +msgid "Read Only" +msgstr "" + +msgid "Read Write" +msgstr "" + +msgid "Slicing State" +msgstr "" + +msgid "Print Statistics" +msgstr "" + +msgid "Objects Info" +msgstr "" + +msgid "Dimensions" +msgstr "Rozměry" + +msgid "Temperatures" +msgstr "Teploty" + +msgid "Timestamps" +msgstr "Časová razítka" + +#, boost-format +msgid "Specific for %1%" +msgstr "Specifické pro %1%" + +msgid "Presets" +msgstr "Předvolby" + +msgid "Print settings" +msgstr "Nastavení tisku" + +msgid "Filament settings" +msgstr "Nastavení filamentu" + +msgid "SLA Materials settings" +msgstr "Nastavení SLA materiálů" + +msgid "Printer settings" +msgstr "Nastavení tiskárny" + +msgid "parameter name" +msgstr "název parametru" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s nemůže být procento" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "Hodnota %s je mimo rozsah, pokračovat?" + +msgid "Parameter validation" +msgstr "Validace parametru" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "" + +msgid "Value is out of range." +msgstr "Hodnota je mimo rozsah." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"Je to %s%% or %s %s?\n" +"ANO pro %s%%, \n" +"NE pro %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Neplatný vstupní formát. Očekává se vektor rozměrů v následujícím formátu: " +"\"%1%\"" + +msgid "Input value is out of range" +msgstr "Zadaná hodnota je mimo rozsah" + +msgid "Some extension in the input is invalid" +msgstr "Některá přípona ve vstupu je neplatná" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Neplatný formát. Očekávaný vektorový formát: \"%1%\"" + +msgid "Layer Height" +msgstr "Výška vrstvy" + +msgid "Line Width" +msgstr "Šířka Extruze" + +msgid "Fan Speed" +msgstr "Rychlost ventilátoru" + +msgid "Temperature" +msgstr "Teplota" + +msgid "Flow" +msgstr "Průtok" + +msgid "Tool" +msgstr "Nástroj" + +msgid "Layer Time" +msgstr "Čas vrstvy" + +msgid "Layer Time (log)" +msgstr "Čas vrstvy (protokol)" + +msgid "Height: " +msgstr "Výška: " + +msgid "Width: " +msgstr "Šířka: " + +msgid "Speed: " +msgstr "Rychlost: " + +msgid "Flow: " +msgstr "Průtok: " + +msgid "Layer Time: " +msgstr "Čas vrstvy: " + +msgid "Fan: " +msgstr "Ventilátor: " + +msgid "Temperature: " +msgstr "Teplota: " + +msgid "Loading G-codes" +msgstr "Načítání G-kódů" + +msgid "Generating geometry vertex data" +msgstr "Generování dat vrcholů geometrie" + +msgid "Generating geometry index data" +msgstr "Generování dat indexu geometrie" + +msgid "Statistics of All Plates" +msgstr "Statistiky všech Podložek" + +msgid "Display" +msgstr "Displej" + +msgid "Flushed" +msgstr "Čištění" + +msgid "Tower" +msgstr "" + +msgid "Total" +msgstr "Celkem" + +msgid "Total Estimation" +msgstr "Celkový odhad" + +msgid "Total time" +msgstr "Celkový čas" + +msgid "Total cost" +msgstr "Celková cena" + +msgid "up to" +msgstr "až do" + +msgid "above" +msgstr "nad" + +msgid "from" +msgstr "z" + +msgid "Color Scheme" +msgstr "Barevné schéma" + +msgid "Time" +msgstr "Čas" + +msgid "Percent" +msgstr "Procento" + +msgid "Used filament" +msgstr "Použito filamentu" + +msgid "Layer Height (mm)" +msgstr "Výška vrstvy (mm)" + +msgid "Line Width (mm)" +msgstr "Šířka Extruze (mm)" + +msgid "Speed (mm/s)" +msgstr "Rychlost (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Rychlost ventilátoru (%)" + +msgid "Temperature (°C)" +msgstr "Teplota (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Objemový průtok (mm³/s)" + +msgid "Travel" +msgstr "Rychloposun" + +msgid "Seams" +msgstr "Švy" + +msgid "Retract" +msgstr "Retrakce" + +msgid "Unretract" +msgstr "Deretrakce" + +msgid "Filament Changes" +msgstr "Výměna Filamentu" + +msgid "Wipe" +msgstr "Čištění" + +msgid "Options" +msgstr "Možnosti" + +msgid "travel" +msgstr "Cestování" + +msgid "Extruder" +msgstr "Extruder" + +msgid "Filament change times" +msgstr "Doby výměny Filamentu" + +msgid "Cost" +msgstr "Náklady" + +msgid "Color change" +msgstr "Změna barvy" + +msgid "Print" +msgstr "Tisk" + +msgid "Printer" +msgstr "Tiskárna" + +msgid "Custom g-code" +msgstr "" + +msgid "ToolChange" +msgstr "" + +msgid "Time Estimation" +msgstr "Časový odhad" + +msgid "Normal mode" +msgstr "Normální režim" + +msgid "Total Filament" +msgstr "" + +msgid "Model Filament" +msgstr "" + +msgid "Prepare time" +msgstr "Čas přípravy" + +msgid "Model printing time" +msgstr "Doba tisku modelu" + +msgid "Switch to silent mode" +msgstr "Přepnout do tichého režimu" + +msgid "Switch to normal mode" +msgstr "Přepnout do normálního režimu" + +msgid "Variable layer height" +msgstr "Variabilní výška vrstvy" + +msgid "Adaptive" +msgstr "Adaptivní" + +msgid "Quality / Speed" +msgstr "Kvalita / Rychlost" + +msgid "Smooth" +msgstr "Vyhladit" + +msgid "Radius" +msgstr "Rádius" + +msgid "Keep min" +msgstr "Zachovat minima" + +msgid "Left mouse button:" +msgstr "Levé tlačítko myši:" + +msgid "Add detail" +msgstr "Přidat detail" + +msgid "Right mouse button:" +msgstr "Pravé tlačítko myši:" + +msgid "Remove detail" +msgstr "Ubrat detail" + +msgid "Shift + Left mouse button:" +msgstr "Shift + Levé tlačítko myši:" + +msgid "Reset to base" +msgstr "Obnovit na výchozí" + +msgid "Shift + Right mouse button:" +msgstr "Shift + Pravé tlačítko myši:" + +msgid "Smoothing" +msgstr "Vyhlazení" + +msgid "Mouse wheel:" +msgstr "Kolečko myši:" + +msgid "Increase/decrease edit area" +msgstr "Zvětšit/Zmenšit oblast úprav" + +msgid "Sequence" +msgstr "Sekvence" + +msgid "Mirror Object" +msgstr "Zrcadlit Objekt" + +msgid "Tool Move" +msgstr "Přesun nástroje" + +msgid "Tool Rotate" +msgstr "Nástroj Otočit" + +msgid "Move Object" +msgstr "Posunutí Objektu" + +msgid "Auto Orientation options" +msgstr "Možnosti automatické orientace" + +msgid "Enable rotation" +msgstr "Povolit rotaci" + +msgid "Optimize support interface area" +msgstr "Optimalizovat oblast kontaktní vrstvy podpěr" + +msgid "Orient" +msgstr "Orientace" + +msgid "Arrange options" +msgstr "Volby uspořádání" + +msgid "Spacing" +msgstr "Vzdálenost" + +msgid "0 means auto spacing." +msgstr "" + +msgid "Auto rotate for arrangement" +msgstr "Automatické otočení pro uspořádání" + +msgid "Allow multiple materials on same plate" +msgstr "Povolit více materiálů na stejné podložce" + +msgid "Avoid extrusion calibration region" +msgstr "Vyhněte se oblasti kalibrace extruze" + +msgid "Align to Y axis" +msgstr "Zarovnat podle osy Y" + +msgid "Add plate" +msgstr "Přidat Podložku" + +msgid "Auto orient" +msgstr "Automatická orientace" + +msgid "Arrange all objects" +msgstr "Uspořádat všechny objekt" + +msgid "Arrange objects on selected plates" +msgstr "Uspořádat objekty na vybraných podložkách" + +msgid "Split to objects" +msgstr "Rozdělit na objekty" + +msgid "Split to parts" +msgstr "Rozdělit na části" + +msgid "Assembly View" +msgstr "Zobrazení sestavy" + +msgid "Select Plate" +msgstr "Vybrat Podložku" + +msgid "Assembly Return" +msgstr "Návrat k sestavení" + +msgid "return" +msgstr "Návrat" + +msgid "Paint Toolbar" +msgstr "Panel nástrojů Malování" + +msgid "Explosion Ratio" +msgstr "Poměr výbušnosti" + +msgid "Section View" +msgstr "Sekce Zobrazení" + +msgid "Assemble Control" +msgstr "Ovládání sestavy" + +msgid "Total Volume:" +msgstr "Celkový objem:" + +msgid "Assembly Info" +msgstr "Informace o sestavení" + +msgid "Volume:" +msgstr "Objem:" + +msgid "Size:" +msgstr "Velikost:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"Byly zjištěny konflikty cest g-kódu na vrstvě %d, z = %.2lf mm. Prosím " +"oddělte konfliktní objekty dále od sebe (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "Objekt je položen přes hranici podložky." + +msgid "A G-code path goes beyond the max print height." +msgstr "Cesta G-kódu přesahuje maximální výšku tisku." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Cesta G-kódu přesahuje hranici podložky." + +msgid "Only the object being edit is visible." +msgstr "Viditelný je pouze objekt, který se právě upravuje." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Objekt je položen přes hranici podložky nebo překračuje limit výšky.\n" +"Prosím, vyřešte problém tím, že jej úplně přesunete na podložku nebo mimo ní " +"a potvrďte, že výška je v rámci objemu stavby." + +msgid "Calibration step selection" +msgstr "Výběr kroku kalibrace" + +msgid "Micro lidar calibration" +msgstr "Micro lidar kalibrace" + +msgid "Bed leveling" +msgstr "Vyrovnání podložky" + +msgid "Vibration compensation" +msgstr "Kompenzace vibrací" + +msgid "Motor noise cancellation" +msgstr "Potlačení hluku motoru" + +msgid "Calibration program" +msgstr "Kalibrační program" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"Kalibrační program automaticky zjistí stav vašeho zařízení, aby " +"minimalizoval odchylky.\n" +"Udržuje optimální výkon zařízení." + +msgid "Calibration Flow" +msgstr "Kalibrace průtoku" + +msgid "Start Calibration" +msgstr "Spustit kalibraci" + +msgid "Completed" +msgstr "Dokončeno" + +msgid "Calibrating" +msgstr "Kalibruji" + +msgid "No step selected" +msgstr "Není vybrán žádný krok" + +msgid "Auto-record Monitoring" +msgstr "Monitorování automatického nahrávání" + +msgid "Go Live" +msgstr "Přejít naživo" + +msgid "Liveview Retry" +msgstr "" + +msgid "Resolution" +msgstr "Rozlišení" + +msgid "Enable" +msgstr "Zapnout" + +msgid "Hostname or IP" +msgstr "" + +msgid "Custom camera source" +msgstr "" + +msgid "Show \"Live Video\" guide page." +msgstr "Zobrazit stránku průvodce \" Živé video \" ." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Připojit tiskárnu (LAN)" + +msgid "Please input the printer access code:" +msgstr "Zadejte přístupový kód tiskárny:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Najdete jej v \" Nastavení > Síť > Přístupový kód \" \n" +"na tiskárně, jak je znázorněno na obrázku:" + +msgid "Invalid input." +msgstr "Neplatný vstup." + +msgid "New Window" +msgstr "Nové okno" + +msgid "Open a new window" +msgstr "Otevřít nové okno" + +msgid "Application is closing" +msgstr "Uzavření aplikace" + +msgid "Closing Application while some presets are modified." +msgstr "Uzavření aplikace, zatímco některé přednastavení jsou upraveny." + +msgid "Logging" +msgstr "Protokolování" + +msgid "Preview" +msgstr "Náhled" + +msgid "Multi-device" +msgstr "" + +msgid "Project" +msgstr "Projekt" + +msgid "Yes" +msgstr "Ano" + +msgid "No" +msgstr "Ne" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "bude uzavřen před vytvořením nového modelu. Chcete pokračovat?" + +msgid "Slice plate" +msgstr "Slicuj Podložku" + +msgid "Print plate" +msgstr "Tisk podložky" + +msgid "Slice all" +msgstr "Slicuj Vše" + +msgid "Export G-code file" +msgstr "Exportovat soubor s G-kódem" + +msgid "Export plate sliced file" +msgstr "Exportovat soubor slicované na podložce" + +msgid "Export all sliced file" +msgstr "Exportovat všechny slicované soubory" + +msgid "Print all" +msgstr "Vytisknout vše" + +msgid "Send all" +msgstr "Odeslat vše" + +msgid "Keyboard Shortcuts" +msgstr "Klávesové zkratky" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Zobrazit seznam klávesových zkratek" + +msgid "Setup Wizard" +msgstr "Průvodce nastavením" + +msgid "Show Configuration Folder" +msgstr "Zobrazit konfigurační složku" + +msgid "Show Tip of the Day" +msgstr "Ukázat Tip Dne" + +msgid "Check for Update" +msgstr "Zkontrolovat aktualizace" + +msgid "Open Network Test" +msgstr "Otevřít test sítě" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&O %s" + +msgid "Upload Models" +msgstr "Nahrát model" + +msgid "Download Models" +msgstr "Stáhnout modely" + +msgid "Default View" +msgstr "Výchozí zobrazení" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Shora" + +msgid "Top View" +msgstr "Pohled svrchu" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Zespod" + +msgid "Bottom View" +msgstr "Pohled zespod" + +msgid "Front" +msgstr "Zepředu" + +msgid "Front View" +msgstr "Pohled zepředu" + +msgid "Rear" +msgstr "Zezadu" + +msgid "Rear View" +msgstr "Pohled zezadu" + +msgid "Left" +msgstr "Zleva" + +msgid "Left View" +msgstr "Pohled zleva" + +msgid "Right" +msgstr "Zprava" + +msgid "Right View" +msgstr "Pohled zprava" + +msgid "Start a new window" +msgstr "Začít nové okno" + +msgid "New Project" +msgstr "Nový Projekt" + +msgid "Start a new project" +msgstr "Vytvořit nový projekt" + +msgid "Open a project file" +msgstr "Otevřít soubor s projektem" + +msgid "Recent projects" +msgstr "Nedávné projekty" + +msgid "Save Project" +msgstr "Uložit projekt" + +msgid "Save current project to file" +msgstr "Uložit aktuální projekt do souboru" + +msgid "Save Project as" +msgstr "Uložit projekt jako" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Uložit aktuální projekt jako" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Importovat 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Načíst model" + +msgid "Import Zip Archive" +msgstr "" + +msgid "Load models contained within a zip archive" +msgstr "" + +msgid "Import Configs" +msgstr "Importovat konfigurace" + +msgid "Load configs" +msgstr "Načíst konfigurace" + +msgid "Import" +msgstr "Importovat" + +msgid "Export all objects as one STL" +msgstr "" + +msgid "Export all objects as STLs" +msgstr "" + +msgid "Export Generic 3MF" +msgstr "Exportovat generický 3MF" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Exportovat soubor 3mf bez použití některých rozšíření 3mf" + +msgid "Export current sliced file" +msgstr "Exportovat aktuální Slicovaný soubor" + +msgid "Export all plate sliced file" +msgstr "Exportovat všechny soubor slicované na podložce" + +msgid "Export G-code" +msgstr "Exportovat G-kód" + +msgid "Export current plate as G-code" +msgstr "Exportovat stávající plochu do G-kód" + +msgid "Export Preset Bundle" +msgstr "" + +msgid "Export current configuration to files" +msgstr "Exportovat aktuální konfiguraci do souborů" + +msgid "Export" +msgstr "Exportovat" + +msgid "Quit" +msgstr "Ukončit" + +msgid "Undo" +msgstr "Zpět" + +msgid "Redo" +msgstr "Vpřed" + +msgid "Cut selection to clipboard" +msgstr "Vyjmout výběr do schránky" + +msgid "Copy" +msgstr "Kopírovat" + +msgid "Copy selection to clipboard" +msgstr "Kopírovat výběr do schránky" + +msgid "Paste" +msgstr "Vložit" + +msgid "Paste clipboard" +msgstr "Vložit ze schránky" + +msgid "Delete selected" +msgstr "Smazat vybrané" + +msgid "Deletes the current selection" +msgstr "Smaže aktuální výběr" + +msgid "Delete all" +msgstr "Smazat vše" + +msgid "Deletes all objects" +msgstr "Smazat všechny objekty" + +msgid "Clone selected" +msgstr "Vybráno klonování" + +msgid "Clone copies of selections" +msgstr "Klonovat kopie výběrů" + +msgid "Select all" +msgstr "Vybrat vše" + +msgid "Selects all objects" +msgstr "Vybrat všechny objekty" + +msgid "Deselect all" +msgstr "Odznačit vše" + +msgid "Deselects all objects" +msgstr "Odznačit všechny objekty" + +msgid "Use Perspective View" +msgstr "Použít perspektivní pohled" + +msgid "Use Orthogonal View" +msgstr "Použít ortogonální zobrazení" + +msgid "Show &G-code Window" +msgstr "" + +msgid "Show g-code window in Previce scene" +msgstr "" + +msgid "Show 3D Navigator" +msgstr "" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "" + +msgid "Reset Window Layout" +msgstr "" + +msgid "Reset to default window layout" +msgstr "" + +msgid "Show &Labels" +msgstr "Zobrazit &Popisky" + +msgid "Show object labels in 3D scene" +msgstr "Zobrazit popisky objektů ve 3D scéně" + +msgid "Show &Overhang" +msgstr "Zobrazit &Převis" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Zobrazit zvýraznění převisů objektu ve 3D scéně" + +msgid "Preferences" +msgstr "Nastavení" + +msgid "Help" +msgstr "Nápověda" + +msgid "Temperature Calibration" +msgstr "Kalibrace teploty" + +msgid "Pass 1" +msgstr "Postup 1" + +msgid "Flow rate test - Pass 1" +msgstr "Test průtoku - Postup 1" + +msgid "Pass 2" +msgstr "Postup 2" + +msgid "Flow rate test - Pass 2" +msgstr "Test průtoku - Postup 2" + +msgid "Flow rate" +msgstr "Průtok" + +msgid "Pressure advance" +msgstr "Předstih tlaku" + +msgid "Retraction test" +msgstr "Test Retrakce" + +msgid "Orca Tolerance Test" +msgstr "Orca Test Tolerance" + +msgid "Max flowrate" +msgstr "Max. průtok" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Více..." + +msgid "Tutorial" +msgstr "Výukový program" + +msgid "Calibration help" +msgstr "Nápověda ke kalibraci" + +msgid "More calibrations" +msgstr "Další kalibrace" + +msgid "&Open G-code" +msgstr "&Otevřít G-kód" + +msgid "Open a G-code file" +msgstr "Otevřít G-kód" + +msgid "Re&load from Disk" +msgstr "Znovu &načíst z disku" + +msgid "Reload the plater from disk" +msgstr "Znovu načíst podložku z disku" + +msgid "Export &Toolpaths as OBJ" +msgstr "Exportovat &Trasy extruderu jako OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Exportovat trasy extruderu jako OBJ" + +msgid "Open &Slicer" +msgstr "Otevřít &Studio" + +msgid "Open Slicer" +msgstr "Otevřít Studio" + +msgid "&Quit" +msgstr "&Ukončit" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Ukončit %s" + +msgid "&File" +msgstr "&Soubor" + +msgid "&View" +msgstr "&Zobrazení" + +msgid "&Help" +msgstr "&Pomoc" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "Existuje soubor se stejným názvem: %s, chcete jej přepsat." + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "Existuje konfigurace se stejným názvem: %s, chcete ji přepsat." + +msgid "Overwrite file" +msgstr "Přepsat soubor" + +msgid "Yes to All" +msgstr "Ano všem" + +msgid "No to All" +msgstr "Ne všem" + +msgid "Choose a directory" +msgstr "Zvolte adresář" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "Byla exportována %d konfigurace. (Pouze ne-systémové konfigurace)" +msgstr[1] "Byla exportována %d konfigurace. (Pouze ne-systémové konfigurace)" +msgstr[2] "Byla exportována %d konfigurace. (Pouze ne-systémové konfigurace)" + +msgid "Export result" +msgstr "Exportovat výsledek" + +msgid "Select profile to load:" +msgstr "Vyberte profil k načtení:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +"Byla importována %d konfigurace. (Pouze ne-systémové a kompatibilní " +"konfigurace)" +msgstr[1] "" +"Bylo importováno %d konfigurací. (Pouze ne-systémové a kompatibilní " +"konfigurace)" +msgstr[2] "" +"Bylo importováno %d konfigurací. (Pouze ne-systémové a kompatibilní " +"konfigurace)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" + +msgid "Import result" +msgstr "Importovat výsledek" + +msgid "File is missing" +msgstr "Soubor chyb" + +msgid "The project is no longer available." +msgstr "Projekt již není dostupný." + +msgid "Filament Settings" +msgstr "Nastavení Filamentu" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Chcete synchronizovat svá osobní data z Bambu Cloud? \n" +"Obsahuje následující informace:\n" +"1. Předvolby procesu\n" +"2. Předvolby filamentu\n" +"3. Předvolby tiskárny" + +msgid "Synchronization" +msgstr "Synchronizace" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" + +msgid "Please confirm if the printer is connected." +msgstr "" + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" + +msgid "Printer camera is malfunctioning." +msgstr "" + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" + +msgid "Please enter the IP of printer to connect." +msgstr "" + +msgid "Initializing..." +msgstr "Inicializace..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" + +msgid "The printer has been logged out and cannot connect." +msgstr "" + +msgid "Stopped." +msgstr "Zastaveno." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "Připojení LAN se nezdařilo (nepodařilo se spustit živé zobrazení)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Pro tento úkol jsou vyžadovány nástroje virtuální kamery!\n" +"Chcete je nainstalovat?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Stahování nástrojů virtuální kamery" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Je spuštěna další virtuální kamera.\n" +"Snapmaker Orca podporuje pouze jednu virtuální kameru.\n" +"Chcete zastavit tuto virtuální kameru?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Inicializace virtuální kamery selhala (%s)!" + +msgid "Network unreachable" +msgstr "Nedostupná síť" + +msgid "Information" +msgstr "Informace" + +msgid "Playing..." +msgstr "Hraje..." + +msgid "Year" +msgstr "Rok" + +msgid "Month" +msgstr "Měsíc" + +msgid "All Files" +msgstr "Všechny soubory" + +msgid "Group files by year, recent first." +msgstr "Seskupit soubory podle roku, poslední první." + +msgid "Group files by month, recent first." +msgstr "Seskupit soubory podle měsíce, poslední první." + +msgid "Show all files, recent first." +msgstr "Zobrazit všechny soubory, poslední první." + +msgid "Switch to timelapse files." +msgstr "Přepnout na soubory časosběru." + +msgid "Video" +msgstr "Video" + +msgid "Switch to video files." +msgstr "Přepnout na video soubory." + +msgid "Switch to 3mf model files." +msgstr "Přepnout na 3mf modelové soubory." + +msgid "Delete selected files from printer." +msgstr "Smazat vybrané soubory z tiskárny." + +msgid "Download" +msgstr "Stáhnout" + +msgid "Download selected files from printer." +msgstr "Stáhnout vybrané soubory z tiskárny." + +msgid "Select" +msgstr "Vybrat" + +msgid "Batch manage files." +msgstr "Dávková správa souborů." + +msgid "Refresh" +msgstr "Obnovit" + +msgid "Reload file list from printer." +msgstr "" + +msgid "No printers." +msgstr "Žádné tiskárny." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Spojení selhalo [%d]!" + +msgid "Loading file list..." +msgstr "Načítání seznamu souborů..." + +msgid "No files" +msgstr "" + +msgid "Load failed" +msgstr "" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Inicializace se nezdařila (Připojení zařízení není připraveno)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "" + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Inicializace se nezdařila (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "Chystáte se smazat %u soubor z tiskárny. Opravdu chcete pokračovat?" +msgstr[1] "" +"Chystáte se smazat %u soubory z tiskárny. Opravdu chcete pokračovat?" +msgstr[2] "" +"Chystáte se smazat %u souborů z tiskárny. Opravdu chcete pokračovat?" + +msgid "Delete files" +msgstr "Smazat soubory" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Chcete smazat soubor '%s' z tiskárny?" + +msgid "Delete file" +msgstr "Smazat soubor" + +msgid "Fetching model infomations ..." +msgstr "Načítání informací o modelu ..." + +msgid "Failed to fetch model information from printer." +msgstr "" + +msgid "Failed to parse model information." +msgstr "" + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +"Soubor .gcode.3mf neobsahuje žádná G-kód data. Prosím, slicujte ho pomocí " +"Snapmaker Orcau a exportujte nový soubor .gcode.3mf." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "Soubor '%s' byl ztracen! Stáhněte si jej prosím znovu." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" + +msgid "Download waiting..." +msgstr "Čekání na stahování..." + +msgid "Play" +msgstr "Přehrát" + +msgid "Open Folder" +msgstr "Otevřít složku" + +msgid "Download finished" +msgstr "Stahování dokončeno" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Stahování %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" + +msgid "File does not exist." +msgstr "" + +msgid "File checksum error. Please retry." +msgstr "" + +msgid "Not supported on the current printer version." +msgstr "Není podporováno ve stávající verzi tiskárny." + +msgid "Storage unavailable, insert SD card." +msgstr "Úložiště není k dispozici, vložte SD kartu." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "" + +msgid "Speed:" +msgstr "Rychlost:" + +msgid "Deadzone:" +msgstr "Mrtvá zóna:" + +msgid "Options:" +msgstr "Možnosti:" + +msgid "Zoom" +msgstr "Zoom" + +msgid "Translation/Zoom" +msgstr "Překlad/Zvětšení" + +msgid "3Dconnexion settings" +msgstr "Nastavení 3DConnexion" + +msgid "Swap Y/Z axes" +msgstr "Zaměnit osy Y/Z" + +msgid "Invert X axis" +msgstr "Obrátit osu X" + +msgid "Invert Y axis" +msgstr "Obrátit osu Y" + +msgid "Invert Z axis" +msgstr "Obrátit osu Z" + +msgid "Invert Yaw axis" +msgstr "Obrátit osu Otáčení" + +msgid "Invert Pitch axis" +msgstr "Obrátit osu Náklonu" + +msgid "Invert Roll axis" +msgstr "Obrátit osu Rotace" + +msgid "Printing Progress" +msgstr "Průběh tisku" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Vrstva: N/A" + +msgid "Clear" +msgstr "Vymazat" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"Dokončili jste tisk malého modelu, \n" +"ale synchronizace informací o hodnocení selhala." + +msgid "How do you like this printing file?" +msgstr "Jak se vám líbí tento tiskový soubor?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "(Model již byl ohodnocen. Vaše hodnocení přepíše předchozí hodnocení.)" + +msgid "Rate" +msgstr "Ohodnotit" + +msgid "Camera" +msgstr "Kamera" + +msgid "SD Card" +msgstr "SD karta" + +msgid "Camera Setting" +msgstr "Nastavení Kamery" + +msgid "Switch Camera View" +msgstr "" + +msgid "Control" +msgstr "Ovládání" + +msgid "Printer Parts" +msgstr "" + +msgid "Print Options" +msgstr "Možnosti tisku" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Lampa" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Komora" + +msgid "Bed" +msgstr "Podložka" + +msgid "Debug Info" +msgstr "Informace o ladění" + +msgid "No SD Card" +msgstr "Žádná SD karta" + +msgid "SD Card Abnormal" +msgstr "SD karta Abnormální" + +msgid "Cancel print" +msgstr "Zrušit tisk" + +msgid "Are you sure you want to cancel this print?" +msgstr "Opravdu chcete zrušit tento tisk?" + +msgid "Downloading..." +msgstr "Stahuji..." + +msgid "Cloud Slicing..." +msgstr "Probíhá Slicování v cloudu..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "Ve frontě pro Slicování v cloudu je %s úkolů před vámi." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Vrstva: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Vrstva: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" + +msgid "Still unload" +msgstr "Stále vysunovat" + +msgid "Still load" +msgstr "Stále zavádět" + +msgid "Please select an AMS slot before calibration" +msgstr "Před kalibrací vyberte slot AMS" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Nelze přečíst informace o filamentu: filament je vložen do hlavy nástroje, " +"prosím vyjměte filament a zkuste to znovu." + +msgid "This only takes effect during printing" +msgstr "Toto se projeví pouze během tisku" + +msgid "Silent" +msgstr "Tichý" + +msgid "Standard" +msgstr "Běžné" + +msgid "Sport" +msgstr "Sport" + +msgid "Ludicrous" +msgstr "Směšné" + +msgid "Can't start this without SD card." +msgstr "Nelze to spustit bez SD karty." + +msgid "Rate the Print Profile" +msgstr "Ohodnoťte tiskový profil" + +msgid "Comment" +msgstr "Komentář" + +msgid "Rate this print" +msgstr "Ohodnoťte tento tisk" + +msgid "Add Photo" +msgstr "Přidat fotku" + +msgid "Delete Photo" +msgstr "Smazat fotku" + +msgid "Submit" +msgstr "Odeslat" + +msgid "Please click on the star first." +msgstr "Prosím, nejprve klikněte na hvězdu." + +msgid "InFo" +msgstr "Informace" + +msgid "Get oss config failed." +msgstr "Získání konfigurace OSS se nezdařilo." + +msgid "Upload Pictrues" +msgstr "Nahrát obrázky" + +msgid "Number of images successfully uploaded" +msgstr "Počet úspěšně nahrávaných obrázků" + +msgid " upload failed" +msgstr " nahrávání selhalo" + +msgid " upload config prase failed\n" +msgstr " nahrávání konfigurace se nepodařilo zpracovat\n" + +msgid " No corresponding storage bucket\n" +msgstr " Žádný odpovídající úložný prostor\n" + +msgid " can not be opened\n" +msgstr " nelze otevřít\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"Během procesu nahrávání obrázků došlo k následujícím problémům. Chcete je " +"ignorovat?\n" +"\n" + +msgid "info" +msgstr "informace" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"Probíhá synchronizace výsledků tisku. Prosím, zkuste to znovu za pár sekund." + +msgid "Upload failed\n" +msgstr "Nahrávání selhalo\n" + +msgid "obtaining instance_id failed\n" +msgstr "získání instance_id selhalo\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Váš komentář nemohl být nahrán kvůli několika důvodům. Následuje:\n" +"\n" +" chybový kód: " + +msgid "error message: " +msgstr "chybová zpráva: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Chcete přesměrovat na webovou stránku pro hodnocení?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Některé z vašich obrázků se nepodařilo nahrát. Chcete přesměrovat na webovou " +"stránku pro hodnocení?" + +msgid "You can select up to 16 images." +msgstr "Můžete vybrat až 16 obrázků." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"Je vyžadován alespoň jeden úspěšný tiskový záznam tohoto tiskového profilu \n" +"pro udělení pozitivního hodnocení (4 nebo 5 hvězdiček)." + +msgid "Status" +msgstr "Stav" + +msgid "Update" +msgstr "Aktualizovat" + +msgid "Don't show again" +msgstr "Znovu Nezobrazovat" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s chyba" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s Došlo k chybě v programu" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s varování" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s obsahuje varování" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s info" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s informace" + +msgid "Skip" +msgstr "Přeskočit" + +msgid "Newer 3mf version" +msgstr "Novější verze 3mf" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" + +msgid "Download Beta Version" +msgstr "" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" + +msgid "Current Version: " +msgstr "" + +msgid "Latest Version: " +msgstr "" + +msgid "Not for now" +msgstr "" + +msgid "3D Mouse disconnected." +msgstr "3D myš odpojena." + +msgid "Configuration can update now." +msgstr "Konfiguraci lze nyní aktualizovat." + +msgid "Detail." +msgstr "Podrobnosti." + +msgid "Integration was successful." +msgstr "Integrace byla úspěšná." + +msgid "Integration failed." +msgstr "Integrace se nezdařila." + +msgid "Undo integration was successful." +msgstr "Vrácení zpět integrace bylo úspěšné." + +msgid "New network plug-in available." +msgstr "K dispozici je nový síťový zásuvný modul." + +msgid "Details" +msgstr "Podrobnosti" + +msgid "New printer config available." +msgstr "" + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "Vrácení zpět integrace se nezdařilo." + +msgid "Exporting." +msgstr "Exportování." + +msgid "Software has New version." +msgstr "Software má novou verzi." + +msgid "Goto download page." +msgstr "Přejít na stránku stahování." + +msgid "Open Folder." +msgstr "Otevřít složku." + +msgid "Safely remove hardware." +msgstr "Bezpečně odebrat hardware." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d Objekt má vlastní podpěry." +msgstr[1] "%1$d Objekty mají vlastní podpěry." +msgstr[2] "%1$d Objektů má vlastní podpěry." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d Objekt má barevné malování." +msgstr[1] "%1$d Objekty mají barevné malování." +msgstr[2] "%1$d Objektů má barevné malování." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d objekt byl načten jako součást rozříznutého objektu." +msgstr[1] "%1$d objekty byly načteny jako součást rozříznutého objektu." +msgstr[2] "%1$d objekty byly načteny jako součást rozříznutého objektu." + +msgid "ERROR" +msgstr "CHYBA" + +msgid "COMPLETED" +msgstr "DOKONČENO" + +msgid "CANCELED" +msgstr "ZRUŠENO" + +msgid "Cancel upload" +msgstr "Zrušit nahrávání" + +msgid "Jump to" +msgstr "Přejít na" + +msgid "Error:" +msgstr "Chyba:" + +msgid "Warning:" +msgstr "Varování:" + +msgid "Export successfully." +msgstr "Export úspěšně." + +msgid "Model file downloaded." +msgstr "Soubor modelu byl stažen." + +msgid "Serious warning:" +msgstr "Vážné varování:" + +msgid " (Repair)" +msgstr " (Oprava)" + +msgid " Click here to install it." +msgstr " Klikněte zde pro instalaci." + +msgid "WARNING:" +msgstr "VAROVÁNÍ:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "Váš model potřebuje podpěry ! Povolte prosím podpůrný materiál." + +msgid "Gcode path overlap" +msgstr "Překrytí cesty G-kódu" + +msgid "Support painting" +msgstr "Malování podpěr" + +msgid "Color painting" +msgstr "Barevná malba" + +msgid "Cut connectors" +msgstr "Říznout spojky" + +msgid "Layers" +msgstr "Vrstvy" + +msgid "Range" +msgstr "Rozsah" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"Aplikace nemůže běžet normálně, protože máte nižší verzi OpenGL než 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Prosím aktualizujte ovladač grafické karty." + +msgid "Unsupported OpenGL version" +msgstr "Nepodporovaná verze OpenGL" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Nelze načíst stíny:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Chyba při načítání shaderů" + +msgctxt "Layers" +msgid "Top" +msgstr "Horní" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Spodní" + +msgid "Enable AI monitoring of printing" +msgstr "Povolit AI monitorování tisku" + +msgid "Sensitivity of pausing is" +msgstr "Citlivost pauzy je" + +msgid "Enable detection of build plate position" +msgstr "Povolit detekci polohy stavební desky" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"Je detekována lokalizační značka stavební desky a tisk se pozastaví, pokud " +"značka není v předdefinovaném rozsahu." + +msgid "First Layer Inspection" +msgstr "Kontrola první vrstvy" + +msgid "Auto-recovery from step loss" +msgstr "Automatické obnovení po ztrátě kroku" + +msgid "Allow Prompt Sound" +msgstr "Povolit zvuky upozornění" + +msgid "Filament Tangle Detect" +msgstr "" + +msgid "Nozzle Clumping Detection" +msgstr "" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" + +msgid "Nozzle Type" +msgstr "" + +msgid "Stainless Steel" +msgstr "" + +msgid "Hardened Steel" +msgstr "" + +#, c-format, boost-format +msgid "%.1f" +msgstr "" + +msgid "Global" +msgstr "Globální" + +msgid "Objects" +msgstr "Objekty" + +msgid "Advance" +msgstr "Pokročilé" + +msgid "Compare presets" +msgstr "Porovnání přednastavení" + +msgid "View all object's settings" +msgstr "Zobrazit všechna nastavení objektu" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "Odebrat aktuální podložku (pokud není poslední)" + +msgid "Auto orient objects on current plate" +msgstr "Automaticky orientovat objekty na aktuální podložce" + +msgid "Arrange objects on current plate" +msgstr "Uspořádat objekty na aktuální podložce" + +msgid "Unlock current plate" +msgstr "Odemknout aktuální podložku" + +msgid "Lock current plate" +msgstr "Zamknout aktuální podložku" + +msgid "Edit current plate name" +msgstr "" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "Přizpůsobit aktuální podložku" + +#, boost-format +msgid " plate %1%:" +msgstr " podložka %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Neplatné jméno, následující znaky nejsou povoleny:" + +msgid "Sliced Info" +msgstr "Informace o slicování" + +msgid "Used Filament (m)" +msgstr "Použito Filamentu (m)" + +msgid "Used Filament (mm³)" +msgstr "Použito Filamentu (mm³)" + +msgid "Used Filament (g)" +msgstr "Použito Filamentu (g)" + +msgid "Used Materials" +msgstr "Použité materiály" + +msgid "Estimated time" +msgstr "Odhadovaný čas" + +msgid "Filament changes" +msgstr "Výměna filamentu" + +msgid "Click to edit preset" +msgstr "Klikněte pro editaci přednastavení" + +msgid "Connection" +msgstr "Připojení" + +msgid "Bed type" +msgstr "Typ podložky" + +msgid "Flushing volumes" +msgstr "Čistící objem" + +msgid "Add one filament" +msgstr "Přidat jeden filament" + +msgid "Remove last filament" +msgstr "Odstranit poslední filament" + +msgid "Synchronize filament list from AMS" +msgstr "Synchronizovat seznam filamentů z AM" + +msgid "Set filaments to use" +msgstr "Nastavit filamenty k použití" + +msgid "Search plate, object and part." +msgstr "" + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Žádné filamenty AMS. Chcete-li načíst informace AMS, vyberte tiskárnu na " +"stránce Zařízení." + +msgid "Sync filaments with AMS" +msgstr "Synchronizovat filamenty s AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Synchronizace filamentů s AMS zruší všechny aktuálně vybrané předvolby " +"filamentů a barvy. Chcete pokračovat?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Synchronizace již proběhla, chcete synchronizovat pouze změny nebo znovu " +"synchronizovat Všechno?" + +msgid "Sync" +msgstr "Synchronizovat" + +msgid "Resync" +msgstr "Znovu synchronizovat" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "" +"Neexistují žádná kompatibilní filamenty a synchronizace není provedena." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Existují některé neznámé filamenty na mapovaná na generickou předvolbu. " +"Aktualizujte prosím Snapmaker Orca nebo restartujte Snapmaker Orca a zkontrolujte, " +"zda existuje aktualizace systému předvolby." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Chcete uložit změny do \"%1%\"?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Odpojení proběhlo úspěšné. Zařízení %s(%s) lze nyní bezpečně odebrat z " +"počítače." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "Vysunutí zařízení %s(%s) se nezdařilo." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "Byly zjištěny dříve neuložené položky. Chcete je obnovit?" + +msgid "Restore" +msgstr "Obnovit" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"Aktuální teplota podložky je relativně vysoká. Při tisku tohoto materiálu v " +"uzavřené komoře by mohlo dojít k ucpání trysky. Doporučujeme otevřít přední " +"dveře a/nebo odstranit horní sklo." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"Tvrdost trysky požadovaná filamentem je vyšší než výchozí tvrdost trysky " +"tiskárny. Vyměňte tvrzenou trysku nebo filament, jinak se tryska opotřebuje " +"nebo poškodí." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Povolení tradičního časosběrného fotografování může způsobit povrchové " +"nedokonalosti. Doporučuje se přepnout na hladký režim." + +msgid "Expand sidebar" +msgstr "Rozbalit postranní panel" + +msgid "Collapse sidebar" +msgstr "Sbalit postranní panel" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Načítání souboru: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "" +"Formát 3MF není podporován programem Snapmaker Orca, lze načíst pouze " +"geometrická data." + +msgid "Load 3mf" +msgstr "Načíst 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"Verze 3mf %s je novější než verze %s %s, byly nalezeny následující klíče " +"nerozpoznaný:" + +msgid "You'd better upgrade your software.\n" +msgstr "Měli byste aktualizovat software.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"Verze %s zařízení 3mf je novější než verze %s %s, navrhněte upgrade vašeho " +"software." + +msgid "Invalid values found in the 3mf:" +msgstr "V 3mf byly nalezeny neplatné hodnoty:" + +msgid "Please correct them in the param tabs" +msgstr "Opravte je prosím na kartách parametrů" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" + +msgid "Modified G-codes" +msgstr "" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" + +msgid "Customized Preset" +msgstr "" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "Názvy součástí v souboru kroku nejsou ve formátu UTF8!" + +msgid "The name may show garbage characters!" +msgstr "Kvůli nepodporovanému kódování textu se mohou objevit nesmyslné znaky!" + +msgid "Remember my choice." +msgstr "Zapamatovat si mou volbu." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Nepodařilo se načíst soubor \"%1%\" . Byla nalezena neplatná konfigurace." + +msgid "Objects with zero volume removed" +msgstr "Objekty s nulovým objemem odstraněny" + +msgid "The volume of the object is zero" +msgstr "Objem objektu je nulový" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"Objekt ze souboru %s je příliš malý a možná v metrech nebo palcích.\n" +"Chcete změnit měřítko na milimetry?" + +msgid "Object too small" +msgstr "Objekt je příliš malý" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Tento soubor obsahuje několik objektů umístěných v různých výškách.\n" +"Místo toho, aby se s nimi pracovalo jako se separátními objekty, \n" +"mají být načteny jako jeden objekt, který má více částí?" + +msgid "Multi-part object detected" +msgstr "Detekován objekt obsahující více částí" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "Načíst tyto soubory jako jeden objekt s více částmi?\n" + +msgid "Object with multiple parts was detected" +msgstr "Byl detekován objekt s více částmi" + +msgid "The file does not contain any geometry data." +msgstr "Soubor neobsahuje žádná geometrická data." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Váš objekt se zdá být příliš velký, chcete jej zmenšit, aby se vešel na " +"vyhřívanou podložku automaticky?" + +msgid "Object too large" +msgstr "Objekt je příliš velký" + +msgid "Export STL file:" +msgstr "Exportovat STL soubor:" + +msgid "Export AMF file:" +msgstr "Exportovat AMF soubor:" + +msgid "Save file as:" +msgstr "Uložit soubor jako:" + +msgid "Export OBJ file:" +msgstr "Exportovat OBJ soubor:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" + +msgid "Confirm Save As" +msgstr "" + +msgid "Delete object which is a part of cut object" +msgstr "Odstranění objektu, který je součástí řezaného objektu" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Pokoušíte se odstranit objekt, který je součástí rozříznutého objektu.\n" +"Tato akce způsobí ztrátu informací o řezu.\n" +"Po této akci nelze zaručit konzistenci modelu." + +msgid "The selected object couldn't be split." +msgstr "Vybraný objekt nelze rozdělit." + +msgid "Another export job is running." +msgstr "Probíhá další exportní úloha." + +msgid "Unable to replace with more than one volume" +msgstr "Nelze nahradit více než jednou částí" + +msgid "Error during replace" +msgstr "Chyba při nahrazení" + +msgid "Replace from:" +msgstr "Nahradit z:" + +msgid "Select a new file" +msgstr "Vyberte nový soubor" + +msgid "File for the replace wasn't selected" +msgstr "Soubor pro nahrazení nebyl vybrán" + +msgid "Please select a file" +msgstr "Vyberte prosím soubor" + +msgid "Do you want to replace it" +msgstr "Chcete udělat náhradu" + +msgid "Message" +msgstr "Zpráva" + +msgid "Reload from:" +msgstr "Znovu načíst z:" + +msgid "Unable to reload:" +msgstr "Nelze znovu načíst:" + +msgid "Error during reload" +msgstr "Chyba při opětovném načtení souboru" + +msgid "There are warnings after slicing models:" +msgstr "Po slicování modelů jsou varování:" + +msgid "warnings" +msgstr "varování" + +msgid "Invalid data" +msgstr "Neplatná data" + +msgid "Slicing Canceled" +msgstr "Slicování Zrušeno" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Podložka na slicování %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Vyřešte prosím chyby slicování a publikujte znovu." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Nebyl detekován síťový modul plug-in. Funkce související se sítí jsou " +"nedostupné." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Režim pouze náhled:\n" +"Načtený soubor obsahuje pouze gkód, nelze vstoupit na stránku Příprava" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "Upravené předvolby si můžete ponechat pro nový projekt nebo je zahodit" + +msgid "Creating a new project" +msgstr "Vytváření nového projektu" + +msgid "Load project" +msgstr "Načíst projekt" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Projekt se nepodařilo uložit.\n" +"Zkontrolujte, zda složka existuje online nebo zda jiné programy otevírají " +"soubor projektu." + +msgid "Save project" +msgstr "Uložit projekt" + +msgid "Importing Model" +msgstr "Import modelu" + +msgid "prepare 3mf file..." +msgstr "připravte soubor 3mf..." + +msgid "Download failed, unknown file format." +msgstr "" + +msgid "downloading project ..." +msgstr "stahuji projekt ..." + +msgid "Download failed, File size exception." +msgstr "" + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Projekt stažen %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"Import do Snapmaker Orcau selhal. Stáhněte soubor a proveďte jeho ruční import." + +msgid "Import SLA archive" +msgstr "Importovat SLA archiv" + +msgid "The selected file" +msgstr "Vybraný soubor" + +msgid "does not contain valid gcode." +msgstr "neobsahuje platný G-kód." + +msgid "Error occurs while loading G-code file" +msgstr "Při načítání souboru G-kód došlo k chybě" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "Načítání ZIP archivu z %1% se nezdařilo." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "Nepodařilo se rozbalit soubor do %1%: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"Nepodařilo se najít rozbalený soubor na cestě %1%. Rozbalení souboru se " +"nezdařilo." + +msgid "Drop project file" +msgstr "Zrušit soubor projektu" + +msgid "Please select an action" +msgstr "Vyberte prosím akci" + +msgid "Open as project" +msgstr "Otevřít jako projekt" + +msgid "Import geometry only" +msgstr "Importovat pouze modely" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Najednou lze otevřít pouze jeden soubor s G-kódem." + +msgid "G-code loading" +msgstr "Načítání G-kódu" + +msgid "G-code files can not be loaded with models together!" +msgstr "Soubory G-kódu a modely nelze načíst společně!" + +msgid "Can not add models when in preview mode!" +msgstr "Nelze přidat modely v režimu náhledu!" + +msgid "All objects will be removed, continue?" +msgstr "Všechny objekty budou odebrány, pokračovat?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "Aktuální projekt má neuložené změny, uložit je před pokračováním?" + +msgid "Number of copies:" +msgstr "Počet kopií:" + +msgid "Copies of the selected object" +msgstr "Kopie vybraného modelu" + +msgid "Save G-code file as:" +msgstr "Uložit G-kód jako:" + +msgid "Save SLA file as:" +msgstr "Uložit soubor SLA jako:" + +msgid "The provided file name is not valid." +msgstr "Název souboru, který byl zadán, není platný." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "Následující znaky nejsou v souborovém systému FAT povoleny:" + +msgid "Save Sliced file as:" +msgstr "Uložit Slicovaný soubor jako:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"Soubor %s byl odeslán do úložného prostoru tiskárny a lze jej zobrazit na " +"tiskárně." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "" + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "" + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "" + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "" + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Nelze provést logickou operaci nad mashí modelů. Budou exportovány pouze " +"kladné části." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"Jste si jisti, že chcete do souboru 3MF uložit původní SVG s lokální cestou " +"k souboru?\n" +"Pokud stisknete \"NE\", všechny SVG v projektu již nebude možné upravovat." + +msgid "Private protection" +msgstr "Ochrana soukromí" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "Je tiskárna připravená k tisku? Je podložka prázdná a čistá?" + +msgid "Upload and Print" +msgstr "Nahrát a Tisknout" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Tisk podle objektu: \n" +"Doporučujeme použít automatické uspořádání, aby se předešlo kolizím při " +"tisku." + +msgid "Send G-code" +msgstr "Odeslat G-kód" + +msgid "Send to printer" +msgstr "Odeslat do tiskárny" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "Vlastní podpěry a barevné malby byly před opravou odstraněny." + +msgid "Optimize Rotation" +msgstr "" + +msgid "Invalid number" +msgstr "Neplatné číslo" + +msgid "Plate Settings" +msgstr "Nastavení Podložky" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Počet aktuálně vybraných částí: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Počet aktuálně vybraných objektů: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Název dílu: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Název objektu: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Velikost: %1% x %2% x %3% v\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Velikost: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Objem %1% v³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Objem %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Trojúhelníky: %1%\n" + +msgid "Tips:" +msgstr "Tipy:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"Funkce \"Opravit model\" je momentálně pouze v systému Windows. Opravte " +"prosím model na Snapmaker Orca (windows) nebo CAD software." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Plate% d: %s se nedoporučuje používat k tisku filamentu %s(%s). Pokud Přesto " +"chcete tento tisk provést, nastavte prosím teplotu podložky tohoto filamentu " +"ne na nulovou." + +msgid "Switching the language requires application restart.\n" +msgstr "Přepínání jazyků vyžaduje restartování aplikace.\n" + +msgid "Do you want to continue?" +msgstr "Chcete pokračovat?" + +msgid "Language selection" +msgstr "Výběr jazyka" + +msgid "Switching application language while some presets are modified." +msgstr "Přepínání jazyka aplikace při změně některých předvoleb." + +msgid "Changing application language" +msgstr "Změna jazyka aplikace" + +msgid "Changing the region will log out your account.\n" +msgstr "Změna regionu vás odhlásí z vašeho účtu.\n" + +msgid "Region selection" +msgstr "Výběr regionu" + +msgid "Second" +msgstr "Sekund" + +msgid "Browse" +msgstr "Procházet" + +msgid "Choose Download Directory" +msgstr "Vyberte adresář pro stahování" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "Obecná nastavení" + +msgid "Asia-Pacific" +msgstr "Asie-Pacifik" + +msgid "China" +msgstr "Čína" + +msgid "Europe" +msgstr "Evropa" + +msgid "North America" +msgstr "Severní Amerika" + +msgid "Others" +msgstr "Ostatní" + +msgid "Login Region" +msgstr "Región přihlášení" + +msgid "Stealth Mode" +msgstr "Tajný Režim" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" + +msgid "Enable network plugin" +msgstr "" + +msgid "Check for stable updates only" +msgstr "" + +msgid "Metric" +msgstr "Metrický" + +msgid "Imperial" +msgstr "Imperiální" + +msgid "Units" +msgstr "Jednotky" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"Na OSX je ve výchozím nastavení vždy spuštěna pouze jedna instance aplikace. " +"Je však povoleno spouštět více instancí stejné aplikace z příkazového řádku. " +"V takovém případě toto nastavení povolí pouze jednu instanci." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" + +msgid "Home" +msgstr "Home" + +msgid "Default Page" +msgstr "" + +msgid "Set the page opened on startup." +msgstr "" + +msgid "Touchpad" +msgstr "" + +msgid "Camera style" +msgstr "" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" + +msgid "Zoom to mouse position" +msgstr "Přiblížit na pozici myši" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "Přiblížit se ke kurzoru myši ve 3D zobrazení, na místo středu 2D okna." + +msgid "Use free camera" +msgstr "Použít volnou kameru" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Pokud je povoleno, použijte volnou kameru. Pokud není povoleno, použijte " +"omezenou kameru." + +msgid "Reverse mouse zoom" +msgstr "" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" + +msgid "Show splash screen" +msgstr "Zobrazovat úvodní obrazovku" + +msgid "Show the splash screen during startup." +msgstr "" + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Zobrazovat \"Tip dne\" po spuštění" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Pokud je povoleno, při spuštění se zobrazí užitečné rady." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "" + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "" + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "" + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "" + +msgid "Remember printer configuration" +msgstr "" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" + +msgid "Network" +msgstr "Síť" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Automatická synchronizace uživatelských předvoleb (Tiskárna/Filament/Proces)" + +msgid "User Sync" +msgstr "Synchronizace uživatelů" + +msgid "Update built-in Presets automatically." +msgstr "Automaticky aktualizovat vestavěné předvolby." + +msgid "System Sync" +msgstr "Synchronizace systému" + +msgid "Clear my choice on the unsaved presets." +msgstr "Vymazat mé volby neuložených předvoleb." + +msgid "Associate files to Snapmaker Orca" +msgstr "Přidružit soubory k Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Přidružit soubory .3mf k Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Pokud je povoleno, nastaví Snapmaker Orca jako výchozí aplikaci pro otevírání " +"souborů .3mf" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Přidružit .stl soubory k Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Pokud je povoleno, nastaví Snapmaker Orca jako výchozí aplikaci pro otevírání " +"souborů .stl" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Přidružit soubory .step/.stp k Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Pokud je povoleno, nastaví Snapmaker Orca jako výchozí aplikaci pro otevírání " +"souborů .step" + +msgid "Associate web links to Snapmaker Orca" +msgstr "" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "" + +msgid "Maximum recent projects" +msgstr "Maximální počet nedávných projektů" + +msgid "Maximum count of recent projects" +msgstr "Maximální počet nedávných projektů" + +msgid "Clear my choice on the unsaved projects." +msgstr "Vymazat moje volby pro neuložené projekty." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "" + +msgid "Auto-Backup" +msgstr "Automatické zálohování" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Zálohujte svůj projekt pravidelně pro obnovu při případném pádu programu." + +msgid "every" +msgstr "každých" + +msgid "The peroid of backup in seconds." +msgstr "Doba zálohování v sekundách." + +msgid "Downloads" +msgstr "Stahování" + +msgid "Dark Mode" +msgstr "Tmavý režim" + +msgid "Enable Dark mode" +msgstr "Povolit tmavý režim" + +msgid "Develop mode" +msgstr "Režim vývojáře" + +msgid "Skip AMS blacklist check" +msgstr "Přeskočit kontrolu černé listiny AMS" + +msgid "Home page and daily tips" +msgstr "Domovská stránka a denní tipy" + +msgid "Show home page on startup" +msgstr "Zobrazit domovskou stránku při spuštění" + +msgid "Sync settings" +msgstr "Nastavení synchronizace" + +msgid "User sync" +msgstr "Uživatelská synchronizace" + +msgid "Preset sync" +msgstr "Přednastavená synchronizace" + +msgid "Preferences sync" +msgstr "Předvolby synchronizace" + +msgid "View control settings" +msgstr "Zobrazit nastavení ovládání" + +msgid "Rotate of view" +msgstr "Otočit pohled" + +msgid "Move of view" +msgstr "Posun pohledu" + +msgid "Zoom of view" +msgstr "Zvětšení pohledu" + +msgid "Other" +msgstr "Ostatní" + +msgid "Mouse wheel reverses when zooming" +msgstr "Kolečkem myši se při zoomování otáčí" + +msgid "Enable SSL(MQTT)" +msgstr "Povolit SSL (MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Povolit SSL (FTP)" + +msgid "Internal developer mode" +msgstr "Interní vývojářský režim" + +msgid "Log Level" +msgstr "Úroveň protokolu" + +msgid "fatal" +msgstr "fatální" + +msgid "error" +msgstr "chyba" + +msgid "warning" +msgstr "varování" + +msgid "debug" +msgstr "ladit" + +msgid "trace" +msgstr "stopa" + +msgid "Host Setting" +msgstr "Nastavení hostitele" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "Hostitel DEV: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA hostitel: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "Hostitel PRE: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Produktový hostitel" + +msgid "debug save button" +msgstr "tlačítko uložení ladění" + +msgid "save debug settings" +msgstr "uložit nastavení ladění" + +msgid "DEBUG settings have saved successfully!" +msgstr "Nastavení LADĚNÍ byla úspěšně uložena!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Přepněte cloudové prostředí, přihlaste se prosím znovu!" + +msgid "System presets" +msgstr "Systémová přednastavení" + +msgid "User presets" +msgstr "Uživatelská přednastavení" + +msgid "Incompatible presets" +msgstr "Nekompatibilní předvolby" + +msgid "AMS filaments" +msgstr "AMS Filament" + +msgid "Click to pick filament color" +msgstr "Kliknutím vyberte barvu Filamentu" + +msgid "Please choose the filament colour" +msgstr "Vyberte prosím barvu vlákna" + +msgid "Add/Remove presets" +msgstr "Přidat/Odebrat přednastavení" + +msgid "Edit preset" +msgstr "Upravit přednastavení" + +msgid "Project-inside presets" +msgstr "Předvolby uvnitř projektu" + +msgid "Add/Remove filaments" +msgstr "Přidání/Odebrání filamentů" + +msgid "Add/Remove materials" +msgstr "Přidání/Odebrání materiálů" + +msgid "Select/Remove printers(system presets)" +msgstr "" + +msgid "Create printer" +msgstr "" + +msgid "The selected preset is null!" +msgstr "Vybrané přednastavení je nula!" + +msgid "End" +msgstr "Konec" + +msgid "Customize" +msgstr "Přizpůsobit" + +msgid "Other layer filament sequence" +msgstr "" + +msgid "Please input layer value (>= 2)." +msgstr "" + +msgid "Plate name" +msgstr "Název Podložky" + +msgid "Same as Global Print Sequence" +msgstr "Stejné jako globální tisková sekvence" + +msgid "Print sequence" +msgstr "Tisková sekvence" + +msgid "Same as Global" +msgstr "" + +msgid "Disable" +msgstr "" + +msgid "Spiral vase" +msgstr "Spirálová váza" + +msgid "First layer filament sequence" +msgstr "Sekvence filamentu první vrstvy" + +msgid "Same as Global Plate Type" +msgstr "Stejné jako Globální Typ podložky" + +msgid "Same as Global Bed Type" +msgstr "Stejné jako globální typ Podložky" + +msgid "By Layer" +msgstr "Podle vrstvy" + +msgid "By Object" +msgstr "Podle objektu" + +msgid "Accept" +msgstr "Přijmout" + +msgid "Log Out" +msgstr "Odhlásit se" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "Slicujte všechny podložky, abyste získali odhad času a filamentu" + +msgid "Packing project data into 3mf file" +msgstr "Zabalení dat projektu do souboru 3mf" + +msgid "Uploading 3mf" +msgstr "Nahrávání 3mf" + +msgid "Jump to model publish web page" +msgstr "Přejít na webovou stránku pro publikování modelu" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "Poznámka: Příprava může trvat několik minut. Buďte prosím trpěliví." + +msgid "Publish" +msgstr "Publikovat" + +msgid "Publish was cancelled" +msgstr "Publikování bylo zrušeno" + +msgid "Slicing Plate 1" +msgstr "Slicuj Podložku 1" + +msgid "Packing data to 3mf" +msgstr "Zabalení dat do 3mf" + +msgid "Jump to webpage" +msgstr "Přejít na webovou stránku" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Uložit %s jako" + +msgid "User Preset" +msgstr "Uživatelská předvolba" + +msgid "Preset Inside Project" +msgstr "Projekt uvnitř přednastavení" + +msgid "Name is unavailable." +msgstr "Jméno není k dispozici." + +msgid "Overwrite a system profile is not allowed" +msgstr "Přepsání systémového profilu není povoleno" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "Předvolba \" %1% \" již existuje." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "" +"Předvolba \"%1%\" již existuje a není kompatibilní s aktuální tiskárnou." + +msgid "Please note that saving action will replace this preset" +msgstr "Upozorňujeme, že akce uložení nahradí toto přednastavení" + +msgid "The name cannot be the same as a preset alias name." +msgstr "Název se nesmí shodovat s názvem aliasem přednastavení." + +msgid "Save preset" +msgstr "Uložit přednastavení" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Kopírovat" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "Tiskárna \"%1%\" je vybrána s předvolbou \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Po uložení vyberte akci s přednastaveným \"%1%\"." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Pro \"%1%\" změňte \"%2%\" na \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Pro \"%1%\" přidejte \"%2%\" jako novou předvolbu" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Jednoduše přepněte na \"%1%\"" + +msgid "Task canceled" +msgstr "Úloha zrušena" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Vyhledávání" + +msgid "My Device" +msgstr "Moje zařízení" + +msgid "Other Device" +msgstr "Jiné zařízení" + +msgid "Online" +msgstr "Online" + +msgid "Input access code" +msgstr "Zadejte přístupový kód" + +msgid "Can't find my devices?" +msgstr "Nemohu najít moje zařízení?" + +msgid "Log out successful." +msgstr "Odhlášení proběhlo úspěšně." + +msgid "Busy" +msgstr "Zaneprázdněn" + +msgid "Bambu Cool Plate" +msgstr "Bambu Cool Podložka" + +msgid "PLA Plate" +msgstr "PLA Podložka" + +msgid "Bambu Engineering Plate" +msgstr "Bambu Engineering Podložka" + +msgid "Bambu Smooth PEI Plate" +msgstr "" + +msgid "High temperature Plate" +msgstr "High temperature Podložka" + +msgid "Bambu Textured PEI Plate" +msgstr "" + +msgid "Send print job to" +msgstr "Odeslat tiskovou úlohu na" + +msgid "Flow Dynamics Calibration" +msgstr "Kalibrace Dynamiky Průtoku" + +msgid "Click here if you can't connect to the printer" +msgstr "Klikněte sem, pokud se nemůžete připojit k tiskárně" + +msgid "send completed" +msgstr "odeslat dokončeno" + +msgid "Error code" +msgstr "Chybový kód" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "Žádný přihlašovací účet, jsou zobrazeny pouze tiskárny v režimu LAN" + +msgid "Connecting to server" +msgstr "Připojování k serveru" + +msgid "Synchronizing device information" +msgstr "Synchronizuji informace o zařízení" + +msgid "Synchronizing device information time out" +msgstr "Vypršel časový limit synchronizace informací o zařízení" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "Nelze odeslat tiskovou úlohu, když tiskárna aktualizuje firmware" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "Tiskárna provádí pokyny. Po dokončení restartujte tisk" + +msgid "The printer is busy on other print job" +msgstr "Tiskárna je zaneprázdněna jinou tiskovou úlohou" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament %s překračuje počet AMS slotů. Aktualizujte prosím tiskárnu " +"firmware pro podporu přiřazení slotu AMS." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Filament překračuje počet slotů AMS. Aktualizujte prosím firmware tiskárny " +"pro podporu přiřazení slotů AMS." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Mapování filamentů na sloty AMS byla vytvořena. Můžete kliknout na Filament " +"nahoře pro změnu jeho mapovacího slotu AMS" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Kliknutím na každý filament výše určete jeho mapovací slot AMS před odeslání " +"tiskové úlohy" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"Filament %s neodpovídá filamentu ve slotu AMS %s. Aktualizujte prosím " +"firmware tiskárny pro podporu přiřazení slotu AMS." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament se neshoduje s filamentem ve slotu AMS. Aktualizujte prosím " +"tiskárnu firmware pro podporu přiřazení slotu AMS." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"Firmware tiskárny podporuje pouze sekvenční mapování filamentu => AMS slot." + +msgid "An SD card needs to be inserted before printing." +msgstr "Před tiskem je třeba vložit SD kartu." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "Pro záznam časosběru je třeba vložit SD kartu." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Nelze odeslat tiskovou úlohu na tiskárnu, jejíž firmware je vyžadován k " +"získání aktualizováno." + +msgid "Cannot send the print job for empty plate" +msgstr "Nelze odeslat tiskovou úlohu pro prázdnou podložku" + +msgid "This printer does not support printing all plates" +msgstr "Tato tiskárna nepodporuje tisk všech podložek" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"Při povolení režimu spirálové vázy stroje s I3 strukturou nevytvoří " +"časosběrná videa." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" + +msgid "Errors" +msgstr "Chyby" + +msgid "Please check the following:" +msgstr "Zkontrolujte prosím následující:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"Vybraný typ tiskárny při generování G-kódu není shodný s aktuálně vybranou " +"tiskárnou. Doporučuje se použít stejný typ tiskárny pro slicování." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"V mapování AMS jsou nějaké neznámé filamenty. Zkontrolujte prosím, zda jsou " +"to požadované filamenty. Pokud jsou v pořádku, stiskněte \"Potvrdit\" pro " +"zahájení tisku." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "" + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Pokud stále chcete pokračovat v tisku, klikněte prosím na tlačítko Potvrdit." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "Připojování k tiskárně. Nelze zrušit během procesu připojování." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Pozor při použití! Kalibrace průtoku na Texturované PEI podložce může selhat " +"kvůli rozptýlenému povrchu." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Automatická kalibrace průtoku pomocí Mikro Lidar" + +msgid "Modifying the device name" +msgstr "Úprava názvu zařízení" + +msgid "Bind with Pin Code" +msgstr "" + +msgid "Send to Printer SD card" +msgstr "Odeslat do tiskárny SD kartu" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "Nelze odeslat tiskovou úlohu, když probíhá aktualizace" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "" +"Vybraná tiskárna není kompatibilní s vybranými přednastaveními tiskárny." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "Před odesláním na SD kartu do tiskárny je třeba vložit SD kartu." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "Tiskárna musí být ve stejné síti LAN jako Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "Tiskárna nepodporuje odesílání na SD kartu tiskárny." + +msgid "Slice ok." +msgstr "Slicování Dokončeno." + +msgid "View all Daily tips" +msgstr "" + +msgid "Failed to create socket" +msgstr "Nepodařilo se vytvořit socket" + +msgid "Failed to connect socket" +msgstr "Nepodařilo se připojit socket" + +msgid "Failed to publish login request" +msgstr "Nepodařilo se publikovat požadavek na přihlášení" + +msgid "Get ticket from device timeout" +msgstr "Časový limit pro získání lístku ze zařízení vypršel" + +msgid "Get ticket from server timeout" +msgstr "Časový limit pro získání lístku ze serveru vypršel" + +msgid "Failed to post ticket to server" +msgstr "Nepodařilo se zaslání lístku na server" + +msgid "Failed to parse login report reason" +msgstr "Nepodařilo se zpracování důvodu hlášení o přihlášení" + +msgid "Receive login report timeout" +msgstr "Časový limit pro obdržení hlášení o přihlášení vypršel" + +msgid "Unknown Failure" +msgstr "Neznámá chyba" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" + +msgid "Can't find Pin Code?" +msgstr "" + +msgid "Pin Code" +msgstr "" + +msgid "Binding..." +msgstr "" + +msgid "Please confirm on the printer screen" +msgstr "" + +msgid "Log in failed. Please check the Pin Code." +msgstr "" + +msgid "Log in printer" +msgstr "Přihlaste se k tiskárně" + +msgid "Would you like to log in this printer with current account?" +msgstr "Chcete se přihlásit k této tiskárně pomocí aktuálního účtu?" + +msgid "Check the reason" +msgstr "Zkontrolujte důvod" + +msgid "Read and accept" +msgstr "Přečíst a přijmout" + +msgid "Terms and Conditions" +msgstr "Obchodní podmínky" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Děkujeme za zakoupení zařízení Bambu Lab. Před použitím svého zařízení Bambu " +"Lab si prosím přečtěte všeobecné obchodní podmínky. Kliknutím na souhlas s " +"používáním zařízení Bambu Lab souhlasíte s dodržováním zásad ochrany " +"osobních údajů a podmínek používání (celkem \"Podmínky\"). Pokud " +"nesouhlasíte nebo nepřijímáte zásady ochrany osobních údajů Bambu Lab, " +"prosím nevyužívejte zařízení a služby Bambu Lab." + +msgid "and" +msgstr "a" + +msgid "Privacy Policy" +msgstr "Zásady ochrany osobních údajů" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Žádáme o vaši pomoc ke zlepšení tiskárny pro všechny" + +msgid "Statement about User Experience Improvement Program" +msgstr "Prohlášení o programu zlepšování uživatelské zkušenosti" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"V komunitě 3D tisku se učíme z úspěchů a neúspěchů ostatních, abychom mohli " +"upravit naše vlastní parametry a nastavení pro slicování. %s následuje " +"tentýž princip a pomocí strojového učení se snaží zlepšit svůj výkon na " +"základě úspěchů a neúspěchů mnoha tisků našich uživatelů. Trénujeme %s, aby " +"byl chytřejší, pomocí reálných dat z reálného světa. Pokud s tím souhlasíte, " +"tento servis bude mít přístup k informacím z chybových a uživatelských " +"protokolů, což může zahrnovat informace popsané v Zásadách ochrany osobních " +"údajů. Nebudeme sbírat žádná osobní data, pomocí kterých by bylo možné " +"identifikovat jednotlivce přímo nebo nepřímo, včetně jmen, adres, platebních " +"informací nebo telefonních čísel. Aktivací tohoto servisu souhlasíte s " +"těmito podmínkami a prohlášením o Zásadách ochrany osobních údajů." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Prohlášení o plánu zlepšení uživatelské zkušenosti" + +msgid "Log in successful." +msgstr "Přihlášení proběhlo úspěšně." + +msgid "Log out printer" +msgstr "Odhlásit tiskárnu" + +msgid "Would you like to log out the printer?" +msgstr "Chcete odhlásit tiskárnu?" + +msgid "Please log in first." +msgstr "Nejprve se prosím přihlaste." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "Došlo k problému s připojením k tiskárně. Zkuste to prosím znovu." + +msgid "Failed to log out." +msgstr "Nepodařilo se odhlásit." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Uložit stávající %s" + +msgid "Delete this preset" +msgstr "Smazat přednastavení" + +msgid "Search in preset" +msgstr "Hledat v předvolbě" + +msgid "Click to reset all settings to the last saved preset." +msgstr "Kliknutím obnovíte všechna nastavení na poslední uloženou předvolbu." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"Pro hladký průběh časové roviny je vyžadována čistící věž. Mohou být chyby " +"na model bez čistící věže. Opravdu chcete hlavní věž deaktivovat?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"Pro hladký časosběr je vyžadována čistící věž. Na model bez hlavní věže. " +"Chcete aktivovat čistící věž?" + +msgid "Still print by object?" +msgstr "" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Přidali jsme experimentální styl \" Tree Slim \" , který obsahuje menší " +"podporovat objem, ale slabší sílu.\n" +"Doporučujeme jej používat s: 0 vrstvami rozhraní, 0 horní vzdáleností, 2 " +"stěnami." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Změnit tato nastavení automaticky? \n" +"Ano – tato nastavení změnit automaticky\n" +"Ne - tato nastavení za mě neměňte" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Pro styly \"Tree Strong\" a \"Tree Hybrid\" doporučujeme následující " +"nastavení: alespoň 2 vrstvy rozhraní, alespoň 0,1 mm horní z vzdálenost nebo " +"používání podpůrných materiálů na rozhraní." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"Při použití podpůrného materiálu pro kontaktní vrstvu podpěr doporučujeme " +"následující nastavení:\n" +"0 horní z vzdálenost, 0 rozestup rozhraní, koncentrický vzor a vypnutí " +"nezávislé výšky podpůrné vrstvy" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" + +msgid "Are you sure you want to enable this option?" +msgstr "" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" + +msgid "Adjust to the set range automatically? \n" +msgstr "" + +msgid "Adjust" +msgstr "" + +msgid "Ignore" +msgstr "Ignorovat" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"Při nahrávání časosběru bez nástrojové hlavy se doporučuje přidat " +"\"Timelapse Wipe Tower\" \n" +"klikněte pravým tlačítkem na prázdnou pozici stavební desky a vyberte " +"\"Přidat primitivní\" -> \"Timelapse Wipe Tower\" ." + +msgid "Line width" +msgstr "Šířka Extruze" + +msgid "Seam" +msgstr "Šev" + +msgid "Precision" +msgstr "Přesnost" + +msgid "Wall generator" +msgstr "Generátor stěny" + +msgid "Walls and surfaces" +msgstr "" + +msgid "Bridging" +msgstr "" + +msgid "Overhangs" +msgstr "" + +msgid "Walls" +msgstr "Stěny" + +msgid "Top/bottom shells" +msgstr "Horní/spodní skořepiny" + +msgid "Initial layer speed" +msgstr "Rychlost první vrstvy" + +msgid "Other layers speed" +msgstr "Rychlost ostatních vrstev" + +msgid "Overhang speed" +msgstr "Rychlost převisů" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Toto je rychlost pro různé stupně převisů. Stupně převisů jsou vyjádřeny " +"jako procento šířky extruze. 0 rychlost znamená žádné zpomalení pro používá " +"s rozsahy stupňů převisů a rychlost stěny" + +msgid "Bridge" +msgstr "Most" + +msgid "Set speed for external and internal bridges" +msgstr "Nastavit rychlost pro vnější a vnitřní mosty" + +msgid "Travel speed" +msgstr "Cestovní rychlost" + +msgid "Acceleration" +msgstr "Zrychlení" + +msgid "Jerk(XY)" +msgstr "Jerk-Ryv(XY)" + +msgid "Raft" +msgstr "Raft" + +msgid "Support filament" +msgstr "Filament na podpěry" + +msgid "Tree supports" +msgstr "Stromové podpěry" + +msgid "Skirt" +msgstr "Obrys" + +msgid "Prime tower" +msgstr "Čistící věž" + +msgid "Special mode" +msgstr "Speciální režim" + +msgid "G-code output" +msgstr "Výstup G-kódu" + +msgid "Post-processing Scripts" +msgstr "Post-processing Scripts" + +msgid "Notes" +msgstr "Poznámky" + +msgid "Frequent" +msgstr "Časté" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"Následující řádek %s obsahuje vyhrazená klíčová slova.\n" +"Prosím, odstraňte ho, jinak to může ovlivnit vizualizaci G-kódu a odhad času " +"tisku." +msgstr[1] "" +"Následující řádky %s obsahují vyhrazená klíčová slova.\n" +"Prosím, odstraňte je, jinak to může ovlivnit vizualizaci G-kódu a odhad času " +"tisku." +msgstr[2] "" +"Následující řádky %s obsahují vyhrazená klíčová slova.\n" +"Prosím, odstraňte je, jinak to může ovlivnit vizualizaci G-kódu a odhad času " +"tisku." + +msgid "Reserved keywords found" +msgstr "Byla nalezena vyhrazená klíčová slova" + +msgid "Setting Overrides" +msgstr "Přepsání nastavení" + +msgid "Retraction" +msgstr "Retrakce" + +msgid "Basic information" +msgstr "Základní informace" + +msgid "Recommended nozzle temperature" +msgstr "Doporučená teplota trysky" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Doporučený rozsah teploty trysky tohoto filamentu. 0 znamená nenastaveno" + +msgid "Print chamber temperature" +msgstr "Teplota v tiskové komoře" + +msgid "Print temperature" +msgstr "Teplota tisku" + +msgid "Nozzle" +msgstr "Tryska" + +msgid "Nozzle temperature when printing" +msgstr "Teplota trysky při tisku" + +msgid "Cool plate" +msgstr "Cool podložka" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Toto je teplota podložky, když je Cool podložka. Hodnota 0 znamená, že " +"filament nepodporuje tisk na Cool Podložku" + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "Engineering podložka" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Teplota podložky při instalaci Engineering podložky. Hodnota 0 znamená " +"filament nepodporuje tisk na Engineering Podložku" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Smooth PEI Podložka / High Temp Podložka" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Teplota podložky, když je nainstalována Smooth PEI Podložka/High temperature " +"Podložka. Hodnota 0 znamená, že filament není podporován pro tisk na Smooth " +"PEI Podložka/High temperature Podložka" + +msgid "Textured PEI Plate" +msgstr "Textured PEI Podložka" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Teplota podložky při instalaci Textured PEI Podložky. Hodnota 0 znamená " +"filament nepodporuje tisk na Textured PEI Podložku" + +msgid "Volumetric speed limitation" +msgstr "Omezení objemové rychlosti" + +msgid "Cooling" +msgstr "Chlazení" + +msgid "Cooling for specific layer" +msgstr "Chlazení pro konkrétní vrstvu" + +msgid "Part cooling fan" +msgstr "Ventilátor chlazení části" + +msgid "Min fan speed threshold" +msgstr "Min rychlosti ventilátoru" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"Ventilátor chlazení části poběží na minimální rychlost ventilátoru, když se " +"odhadne doba vrstvy je delší než prahová hodnota. Když je doba vrstvy kratší " +"než hraniční hodnota, rychlost ventilátoru bude interpolována mezi minimální " +"a maximální rychlost ventilátoru podle doby tisku vrstvy" + +msgid "Max fan speed threshold" +msgstr "Max rychlosti ventilátoru" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"Rychlost ventilátoru chlazení části bude maximální, když bude odhadovaná " +"doba vrstvy kratší než nastavená hodnota" + +msgid "Auxiliary part cooling fan" +msgstr "Přídavný ventilátor chlazení" + +msgid "Exhaust fan" +msgstr "Odsávací ventilátor" + +msgid "During print" +msgstr "Během tisku" + +msgid "Complete print" +msgstr "Dokončit tisk" + +msgid "Filament start G-code" +msgstr "Filament Začátek G-kók" + +msgid "Filament end G-code" +msgstr "Filament Konec G-kód" + +msgid "Multimaterial" +msgstr "Multimateriál" + +msgid "Wipe tower parameters" +msgstr "Parametry čistící věže" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "Parametry při výměně (Multi Material s jedním extruderem)" + +msgid "Ramming settings" +msgstr "Nastavení rapidní extruze" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "Parametry při výměně (Multi Material s více extrudery)" + +msgid "Printable space" +msgstr "Prostor pro tisk" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "Neplatná hodnota zadaná pro parametr %1%: %2%" + +msgid "G-code flavor is switched" +msgstr "G-code flavor je přepnutá" + +msgid "Cooling Fan" +msgstr "Ventilátor chlazení" + +msgid "Fan speed-up time" +msgstr "Čas zrychlení ventilátoru" + +msgid "Extruder Clearance" +msgstr "Vzdálenost extruderu" + +msgid "Adaptive bed mesh" +msgstr "" + +msgid "Accessory" +msgstr "Příslušenství" + +msgid "Machine gcode" +msgstr "G-kód stroje" + +msgid "Machine start G-code" +msgstr "Stroj start G-kód" + +msgid "Machine end G-code" +msgstr "Stroj end G-kód" + +msgid "Printing by object G-code" +msgstr "" + +msgid "Before layer change G-code" +msgstr "G-kód Před změnou vrstvy" + +msgid "Layer change G-code" +msgstr "G-kód Změna vrstvy" + +msgid "Time lapse G-code" +msgstr "Časosběrný G-kód" + +msgid "Change filament G-code" +msgstr "G-kód Změny filamentu" + +msgid "Change extrusion role G-code" +msgstr "Změnit G-kód pro úlohu extruze" + +msgid "Pause G-code" +msgstr "G-kód Pauzy" + +msgid "Template Custom G-code" +msgstr "Šablona s vlastním G-kódem" + +msgid "Motion ability" +msgstr "Schopnost pohybu" + +msgid "Normal" +msgstr "Normální" + +msgid "Speed limitation" +msgstr "Omezení rychlosti" + +msgid "Acceleration limitation" +msgstr "Omezení zrychlení" + +msgid "Jerk limitation" +msgstr "Omezení Jerk-Ryv" + +msgid "Single extruder multimaterial setup" +msgstr "Nastavení multimateriálu s jedním extruderem" + +msgid "Wipe tower" +msgstr "Čistící věž" + +msgid "Single extruder multimaterial parameters" +msgstr "Parametry jednoho multimateriálového extruderu" + +msgid "Layer height limits" +msgstr "Výškové limity vrstvy" + +msgid "Lift Z Enforcement" +msgstr "Vynutit Zvednout Z" + +msgid "Retraction when switching material" +msgstr "Retrakce při změně materiálu" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"Možnost čištění není k dispozici při použití režimu retrakce z firmwaru.\n" +"\n" +"Mám ji deaktivovat, aby bylo možné povolit retrakce z firmwaru?" + +msgid "Firmware Retraction" +msgstr "Firmware Retrakce" + +msgid "Detached" +msgstr "Odpojeno" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Přednastavení" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "Následující předvolba bude také smazána." +msgstr[1] "Následující předvolby budou také smazány." +msgstr[2] "" + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Opravdu chcete %1% vybrané předvolby?" + +msgid "All" +msgstr "Všechny" + +msgid "Set" +msgstr "Nastavit" + +msgid "Click to reset current value and attach to the global value." +msgstr "" +"Klikněte pro resetování aktuální hodnoty a připojení ke globální hodnotě." + +msgid "Click to drop current modify and reset to saved value." +msgstr "Kliknutím zrušíte aktuální úpravu a obnovíte uloženou hodnotu." + +msgid "Process Settings" +msgstr "Nastavení procesu" + +msgid "Undef" +msgstr "Nedefinováno" + +msgid "Unsaved Changes" +msgstr "Neuložené změny" + +msgid "Transfer or discard changes" +msgstr "Zahodit nebo ponechat změny" + +msgid "Old Value" +msgstr "Stará hodnota" + +msgid "New Value" +msgstr "Nová hodnota" + +msgid "Transfer" +msgstr "Přenést" + +msgid "Don't save" +msgstr "Neukládat" + +msgid "Discard" +msgstr "Zahodit" + +msgid "Click the right mouse button to display the full text." +msgstr "Kliknutím pravým tlačítkem myši zobrazíte celý text." + +msgid "All changes will not be saved" +msgstr "Všechny změny nebudou uloženy" + +msgid "All changes will be discarded." +msgstr "Všechny změny budou zahozeny." + +msgid "Save the selected options." +msgstr "Uložte vybrané možnosti." + +msgid "Keep the selected options." +msgstr "Ponechat vybrané možnosti." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Přenést vybrané možnosti do nově vybrané předvolby." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Uložte vybrané možnosti do přednastavení \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Přenést vybrané možnosti do nově vybrané předvolby \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "Předvolba \"%1%\" obsahuje následující neuložené změny:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"Předvolba \"%1%\" není kompatibilní s novým profilem tiskárny a je obsahuje " +"následující neuložené změny:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"Předvolba \"%1%\" není kompatibilní s novým procesním profilem a je obsahuje " +"následující neuložené změny:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "" + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" + +msgid "You have previously modified your settings." +msgstr "" + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" + +msgid "Extruders count" +msgstr "Počet extruderů" + +msgid "General" +msgstr "Obecné" + +msgid "Capabilities" +msgstr "Možnosti" + +msgid "Show all presets (including incompatible)" +msgstr "Zobrazit všechna přednastavení (včetně nekompatibilních)" + +msgid "Select presets to compare" +msgstr "Zvolte přednastavení k porovnání" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"Přeneste vybrané možnosti z levého přednastavení do pravého.\n" +"Poznámka: Po zavření tohoto dialogu budou na kartách nastavení vybrány nové " +"upravené předvolby." + +msgid "Transfer values from left to right" +msgstr "Přenést hodnoty zleva doprava" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" + +msgid "Add File" +msgstr "Přidat soubor" + +msgid "Set as cover" +msgstr "Nastavit jako kryt" + +msgid "Cover" +msgstr "Obálka" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "Název \"%1%\" již existuje." + +msgid "Basic Info" +msgstr "Základní informace" + +msgid "Pictures" +msgstr "Obrázky" + +msgid "Bill of Materials" +msgstr "Seznam materiálu" + +msgid "Assembly Guide" +msgstr "Průvodce montáží" + +msgid "Author" +msgstr "Autor" + +msgid "Model Name" +msgstr "Název modelu" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Aktualizace" + +msgid "A new version is available" +msgstr "K dispozici je nová verze" + +msgid "Configuration update" +msgstr "Aktualizace nastavení" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "Je k dispozici nový konfigurační balíček. Chcete jej nainstalovat?" + +msgid "Description:" +msgstr "Popis:" + +msgid "Configuration incompatible" +msgstr "Konfigurace není kompatibilní" + +msgid "the configuration package is incompatible with current application." +msgstr "konfigurační balíček je nekompatibilní s aktuální aplikací." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"Konfigurační balíček není kompatibilní s aktuální aplikací.\n" +"%s aktualizuje konfigurační balíček, aby umožnil spuštění aplikace" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Ukončit %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "konfigurační balíček je nekompatibilní s aktuální aplikací." + +msgid "Configuration updates" +msgstr "Aktualizace nastavení" + +msgid "No updates available." +msgstr "Žádné aktualizace nejsou dostupné." + +msgid "The configuration is up to date." +msgstr "Konfigurace je aktuální." + +msgid "Obj file Import color" +msgstr "" + +msgid "Specify number of colors:" +msgstr "" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "" + +msgid "Recommended " +msgstr "" + +msgid "Current filament colors:" +msgstr "" + +msgid "Quick set:" +msgstr "" + +msgid "Color match" +msgstr "" + +msgid "Approximate color matching." +msgstr "" + +msgid "Append" +msgstr "" + +msgid "Add consumable extruder after existing extruders." +msgstr "" + +msgid "Reset mapped extruders." +msgstr "" + +msgid "Cluster colors" +msgstr "" + +msgid "Map Filament" +msgstr "" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" + +msgid "Ramming customization" +msgstr "Přizpůsobení rapidní extruze" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"Rapidní extruze označuje rychlé vytlačení filamentu těsně před jeho výměnou " +"za jiný v multi material tiskárně s jedním extruderem. Účelem je správně " +"vytvarovat konec vysouvaného filamentu tak, aby neblokoval zasunutí nového " +"filamentu a také mohl být sám později opětovně zasunut. Tento proces je " +"důležitý a rozdílné materiály mohou pro získání optimálního tvaru vyžadovat " +"různé rychlosti extruze. Z tohoto důvodu jsou objemové průtoky při rapidní " +"extruzi uživatelsky upravitelné.\n" +"\n" +"Toto nastavení je určeno pro pokročilé uživatele, nesprávné nastavení velmi " +"pravděpodobně povede k zaseknutí filamentu, vybroušení filamentu podávacím " +"kolečkem, atd." + +msgid "Total ramming time" +msgstr "Celkový čas rapidní extruze" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "Celkový objem rapidní extruze" + +msgid "Ramming line width" +msgstr "Šířka linky při rapidní extruzi" + +msgid "Ramming line spacing" +msgstr "Rozestup linek při rapidní extruzi" + +msgid "Auto-Calc" +msgstr "Automatický výpočet" + +msgid "Re-calculate" +msgstr "" + +msgid "Flushing volumes for filament change" +msgstr "Čistící objemy pro výměnu filamentu" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Čistící objem (mm³) pro každý pár filamentů." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Návrh: Objem čištění v rozsahu [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "Násobitel by měl být v rozsahu [%.2f, %.2f]." + +msgid "Multiplier" +msgstr "Multiplikátor" + +msgid "unloaded" +msgstr "vyjmuto" + +msgid "loaded" +msgstr "zaváděn" + +msgid "Filament #" +msgstr "Filament #" + +msgid "From" +msgstr "Z" + +msgid "To" +msgstr "Do" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "" + +msgid "Click here to download it." +msgstr "" + +msgid "Login" +msgstr "Přihlášení" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "Konfigurační balíček byl změněn v předchozím průvodci konfigurací" + +msgid "Configuration package changed" +msgstr "Konfigurační balíček změněn" + +msgid "Toolbar" +msgstr "Panel nástrojů" + +msgid "Objects list" +msgstr "Seznam objektů" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Import geometrických dat ze souborů STL/STEP/3MF/OBJ/AMF" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Vložit ze schránky" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "Zobrazit / skrýt dialogové okno nastavení zařízení 3Dconnexion" + +msgid "Switch table page" +msgstr "" + +msgid "Show keyboard shortcuts list" +msgstr "Zobrazit přehled klávesových zkratek" + +msgid "Global shortcuts" +msgstr "Globální zkratky" + +msgid "Rotate View" +msgstr "Otočit pohled" + +msgid "Pan View" +msgstr "Zobrazení panorama" + +msgid "Mouse wheel" +msgstr "Kolečko myši" + +msgid "Zoom View" +msgstr "Zvětšit zobrazení" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Toto automaticky orientuje vybrané objekty nebo všechny objekty. Pokud jsou " +"vybrány objekty, pouze zorientuje vybrané. Jinak zorientuje všechny objekty " +"v aktuální desce." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Sbalit/Rozbalit postranní panel" + +msgid "⌘+Any arrow" +msgstr "⌘+libovolná šipka" + +msgid "Movement in camera space" +msgstr "Posun výběru v ortogonálním prostoru kamery" + +msgid "⌥+Left mouse button" +msgstr "⌥+levé tlačítko myši" + +msgid "Select a part" +msgstr "Vyberte část" + +msgid "⌘+Left mouse button" +msgstr "⌘+levé tlačítko myši" + +msgid "Select multiple objects" +msgstr "Vyberte více objektů" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+libovolná šipka" + +msgid "Alt+Left mouse button" +msgstr "Alt+levé tlačítko myši" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+levé tlačítko myši" + +msgid "Shift+Left mouse button" +msgstr "Shift+levé tlačítko myši" + +msgid "Select objects by rectangle" +msgstr "Vyberte objekty podle obdélníku" + +msgid "Arrow Up" +msgstr "Šipka nahoru" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Posunout výběr o 10 mm v kladném směru Y" + +msgid "Arrow Down" +msgstr "Šipka dolů" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Posunout výběr o 10 mm v záporném směru Y" + +msgid "Arrow Left" +msgstr "Šipka vlevo" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Posunout výběr o 10 mm v záporném směru X" + +msgid "Arrow Right" +msgstr "Šipka vpravo" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Posunout výběr o 10 mm v kladném směru X" + +msgid "Shift+Any arrow" +msgstr "Shift+libovolná šipka" + +msgid "Movement step set to 1 mm" +msgstr "Krok pro posun výběru o velikosti 1 mm" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "klávesnice 1-9: nastavení filamentu pro objekt/díl" + +msgid "Camera view - Default" +msgstr "Zobrazení kamery - výchozí" + +msgid "Camera view - Top" +msgstr "Pohled z kamery - Nahoře" + +msgid "Camera view - Bottom" +msgstr "Pohled z kamery - Dole" + +msgid "Camera view - Front" +msgstr "Pohled z kamery - Přední strana" + +msgid "Camera view - Behind" +msgstr "Pohled z kamery - zezadu" + +msgid "Camera Angle - Left side" +msgstr "Úhel kamery - levá strana" + +msgid "Camera Angle - Right side" +msgstr "Úhel kamery - pravá strana" + +msgid "Select all objects" +msgstr "Vybrat všechny objekty" + +msgid "Gizmo move" +msgstr "Gizmo posuv" + +msgid "Gizmo scale" +msgstr "Gizmo Měřítko" + +msgid "Gizmo rotate" +msgstr "Gizmo rotace" + +msgid "Gizmo cut" +msgstr "Gizmo řez" + +msgid "Gizmo Place face on bed" +msgstr "Gizmo Umístit plochou na podložku" + +msgid "Gizmo SLA support points" +msgstr "Gizmo SLA podpěrné body" + +msgid "Gizmo FDM paint-on seam" +msgstr "Gizmo FDM malování pozice švu" + +msgid "Gizmo Text emboss / engrave" +msgstr "Gizmo Text emboss / gravírování" + +msgid "Zoom in" +msgstr "Přiblížit" + +msgid "Zoom out" +msgstr "Oddálit" + +msgid "Switch between Prepare/Preview" +msgstr "Přepnout mezi Přípravou/Náhledem" + +msgid "Plater" +msgstr "Podložka" + +msgid "Move: press to snap by 1mm" +msgstr "Posunout: stisknutím přitáhnete o 1 mm" + +msgid "⌘+Mouse wheel" +msgstr "⌘+kolečko myši" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Podpěry/Barva: upravit poloměr pera" + +msgid "⌥+Mouse wheel" +msgstr "⌥+kolečko myši" + +msgid "Support/Color Painting: adjust section position" +msgstr "Podpěry/Barva: upravit polohu sekce" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+kolečko myši" + +msgid "Alt+Mouse wheel" +msgstr "Alt+kolečko myši" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Nastavit číslo extruderu pro objekty a díly" + +msgid "Delete objects, parts, modifiers " +msgstr "Smazat objekty, díly, modifikátory " + +msgid "Select the object/part and press space to change the name" +msgstr "Vyberte objekt/díl a stiskněte mezerník pro změnu názvu" + +msgid "Mouse click" +msgstr "Kliknutí myší" + +msgid "Select the object/part and mouse click to change the name" +msgstr "Vyberte objekt/díl a kliknutím myši změňte název" + +msgid "Objects List" +msgstr "Seznam Objektů" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Vertikální posuvník - Pohyb aktivním ukazatelem nahoru" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Vertikální posuvník - Pohyb aktivním ukazatelem dolů" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Horizontální posuvník - Pohyb aktivním ukazatelem vlevo" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Horizontální posuvník - Pohyb aktivním ukazatelem vpravo" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "Zapnou/vypnout režim jedné vrstvy vertikálního posuvníku" + +msgid "On/Off g-code window" +msgstr "Zapnout/Vypnout okno g-kód" + +msgid "Move slider 5x faster" +msgstr "Posunout posuvník 5x rychleji" + +msgid "Shift+Mouse wheel" +msgstr "Shift+kolečko myši" + +msgid "Horizontal slider - Move to start position" +msgstr "" + +msgid "Horizontal slider - Move to last position" +msgstr "" + +msgid "Release Note" +msgstr "Poznámka k vydání" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "informace o aktualizaci verze %s:" + +msgid "Network plug-in update" +msgstr "Aktualizace síťového zásuvného modulu" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Klepnutím na OK aktualizujte síťový zásuvný modul při příštím spuštění Orca " +"Sliceru." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "Nový síťový plug-in (%s) k dispozici, chcete jej nainstalovat?" + +msgid "New version of Snapmaker Orca" +msgstr "Nová verze Snapmaker Orca" + +msgid "Skip this Version" +msgstr "" + +msgid "Done" +msgstr "Hotovo" + +msgid "resume" +msgstr "" + +msgid "Resume Printing" +msgstr "" + +msgid "Resume Printing(defects acceptable)" +msgstr "" + +msgid "Resume Printing(problem solved)" +msgstr "" + +msgid "Stop Printing" +msgstr "" + +msgid "Check Assistant" +msgstr "" + +msgid "Filament Extruded, Continue" +msgstr "" + +msgid "Not Extruded Yet, Retry" +msgstr "" + +msgid "Finished, Continue" +msgstr "" + +msgid "Load Filament" +msgstr "Zavézt Filament" + +msgid "Filament Loaded, Resume" +msgstr "" + +msgid "View Liveview" +msgstr "" + +msgid "Confirm and Update Nozzle" +msgstr "" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "Připojení k síti LAN se nezdařilo (odesílání tiskového souboru)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Krok 1, potvrďte, že Snapmaker Orca a vaše tiskárna jsou ve stejné síti LAN." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Krok 2, pokud se IP a přístupový kód níže liší od skutečných hodnot na " +"tiskárně, opravte je." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Přístupový kód" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Kde najít IP a přístupový kód vaší tiskárny?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" + +msgid "Model:" +msgstr "Model:" + +msgid "Serial:" +msgstr "Sériové číslo:" + +msgid "Version:" +msgstr "Verze:" + +msgid "Update firmware" +msgstr "Aktualizovat firmware" + +msgid "Beta version" +msgstr "" + +msgid "Latest version" +msgstr "Nejnovější verze" + +msgid "Updating" +msgstr "Probíhá aktualizace" + +msgid "Updating failed" +msgstr "Aktualizace se nezdařila" + +msgid "Updating successful" +msgstr "Aktualizace úspěšná" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Opravdu chcete aktualizovat? Bude to trvat asi 10 minut. Nevypněte napájení " +"během aktualizace tiskárny." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Byla zjištěna důležitá aktualizace a před tiskem je třeba ji spustit a " +"pokračovat. Chcete provést aktualizaci nyní? Aktualizaci můžete provést také " +"později v části Upgrade firmware." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"Verze firmwaru je abnormální. Oprava a aktualizace jsou nutné před tisk. " +"Chcete provést aktualizaci nyní? Aktualizaci můžete provést také později na " +"tiskárně nebo aktualizovat při příštím spuštění studia." + +msgid "Extension Board" +msgstr "Rozšiřující deska" + +msgid "Saving objects into the 3mf failed." +msgstr "Ukládání objektů do 3mf se nezdařilo." + +msgid "Only Windows 10 is supported." +msgstr "Podporován je pouze Windows 10." + +msgid "Failed to initialize the WinRT library." +msgstr "Nepodařilo se inicializovat knihovnu WinRT." + +msgid "Exporting objects" +msgstr "Exportování objektů" + +msgid "Failed loading objects." +msgstr "Selhalo načítání objektů." + +msgid "Repairing object by Windows service" +msgstr "Oprava objektu službou Windows" + +msgid "Repair failed." +msgstr "Oprava se nezdařila." + +msgid "Loading repaired objects" +msgstr "Načítání opravených objektů" + +msgid "Exporting 3mf file failed" +msgstr "Export souboru 3mf se nezdařil" + +msgid "Import 3mf file failed" +msgstr "Import souboru 3mf se nezdařil" + +msgid "Repaired 3mf file does not contain any object" +msgstr "Opravený soubor 3mf neobsahuje žádný objekt" + +msgid "Repaired 3mf file contains more than one object" +msgstr "Opravený soubor 3mf obsahuje více než jeden objekt" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "Opravený soubor 3mf neobsahuje žádný svazek" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "Opravený soubor 3mf obsahuje více než jeden svazek" + +msgid "Repair finished" +msgstr "Oprava dokončena" + +msgid "Repair canceled" +msgstr "Oprava zrušena" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Kopírování souboru %1% do %2% selhalo: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "Před aktualizacemi konfigurace je třeba zkontrolovat neuložené změny." + +msgid "Configuration package: " +msgstr "" + +msgid " updated to " +msgstr "" + +msgid "Open G-code file:" +msgstr "Otevřít soubor s G-kódem:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Jeden objekt má prázdnou úvodní vrstvu a nelze jej vytisknout. Ořízněte " +"prosím spodní část nebo povolte podpěry." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "Objekt má prázdné vrstvy mezi %1% a %2% ​​a nelze jej vytisknout." + +#, boost-format +msgid "Object: %1%" +msgstr "Objekt: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Části objektu v těchto výškách mohou být příliš tenké nebo objekt může mít " +"chybnou síť" + +msgid "No object can be printed. Maybe too small" +msgstr "Nelze vytisknout žádný objekt. Možná je příliš malý" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Nepodařilo se vygenerovat G-kód pro neplatný vlastní G-kód.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "Zkontrolujte prosím vlastní G-kód nebo použijte výchozí vlastní G-kód." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Generování G-kódu: vrstva %1%" + +msgid "Inner wall" +msgstr "Vnitřní stěna" + +msgid "Outer wall" +msgstr "Vnější stěna" + +msgid "Overhang wall" +msgstr "Převislá stěna" + +msgid "Sparse infill" +msgstr "Vnitřní výplň" + +msgid "Internal solid infill" +msgstr "Vnitřní plná výplň" + +msgid "Top surface" +msgstr "Horní plocha" + +msgid "Bottom surface" +msgstr "Spodní plocha" + +msgid "Internal Bridge" +msgstr "Vnitřní most" + +msgid "Gap infill" +msgstr "Výplň mezery" + +msgid "Support interface" +msgstr "Kontaktní vrstva podpěr" + +msgid "Support transition" +msgstr "Přechod Podpěr" + +msgid "Multiple" +msgstr "Vícenásobné" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Nepodařilo se vypočítat šířku extruze %1%. Nelze získat hodnotu \"%2%\" " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Chybná mezera poskytnuta funkcí Flow::with_spacing(), zkontrolujte vaši " +"vrstvovou výšku a šířku extruze" + +msgid "undefined error" +msgstr "nedefinovaná chyba" + +msgid "too many files" +msgstr "příliš mnoho souborů" + +msgid "file too large" +msgstr "soubor je příliš velký" + +msgid "unsupported method" +msgstr "nepodporovaná metoda" + +msgid "unsupported encryption" +msgstr "nepodporované šifrování" + +msgid "unsupported feature" +msgstr "nepodporovaná funkce" + +msgid "failed finding central directory" +msgstr "selhalo nalezení kořenového adresáře" + +msgid "not a ZIP archive" +msgstr "není ZIP archiv" + +msgid "invalid header or corrupted" +msgstr "neplatné záhlaví nebo poškozené" + +msgid "unsupported multidisk" +msgstr "nepodporovaný multidisk" + +msgid "decompression failed" +msgstr "dekomprese se nezdařila" + +msgid "compression failed" +msgstr "komprese se nezdařila" + +msgid "unexpected decompressed size" +msgstr "neočekávaná dekomprimovaná velikost" + +msgid "CRC check failed" +msgstr "Kontrola CRC se nezdařila" + +msgid "unsupported central directory size" +msgstr "nepodporovaná velikost centrálního adresáře" + +msgid "allocation failed" +msgstr "alokace selhala" + +msgid "file open failed" +msgstr "otevření souboru selhalo" + +msgid "file create failed" +msgstr "vytvoření souboru selhalo" + +msgid "file write failed" +msgstr "zápis souboru se nezdařil" + +msgid "file read failed" +msgstr "čtení souboru se nezdařilo" + +msgid "file close failed" +msgstr "zavření souboru selhalo" + +msgid "file seek failed" +msgstr "hledání souboru selhalo" + +msgid "file stat failed" +msgstr "statistika souboru selhala" + +msgid "invalid parameter" +msgstr "neplatný parametr" + +msgid "invalid filename" +msgstr "neplatný název souboru" + +msgid "buffer too small" +msgstr "buffer je příliš malý" + +msgid "internal error" +msgstr "interní chyba" + +msgid "file not found" +msgstr "soubor nenalezen" + +msgid "archive too large" +msgstr "archiv je příliš velký" + +msgid "validation failed" +msgstr "validace selhala" + +msgid "write callback failed" +msgstr "zpětný zápis se nezdařil" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% je příliš blízko oblasti vyloučení, při tisku může docházet ke kolizím." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% je příliš blízko ostatním a může dojít ke kolizím." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% je příliš vysoké a budou způsobeny kolize." + +msgid " is too close to others, there may be collisions when printing." +msgstr " je příliš blízko ostatním, při tisku může docházet ke kolizím." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" je příliš blízko oblasti vyloučení, při tisku může docházet ke kolizím." + +msgid "Prime Tower" +msgstr "Čistící Věž" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " je příliš blízko ostatním a může dojít ke kolizím.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr " je příliš blízko oblasti vyloučení a dojde ke kolizi.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Nelze tisknout více filamentů, které mají velké teplotní rozdíly společně. " +"Jinak může dojít k zablokování nebo poškození extruderu a trysky během tisku" + +msgid "No extrusions under current settings." +msgstr "Žádné extruze pod aktuálním nastavením." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"Plynulý režim časosběru není podporován, když \"podle objektu\" sekvence je " +"povoleno." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Vyberte prosím \"Podle objektu\" tiskovou sekvenci pro tisk více objektů v " +"režimu spirálové vázy." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"Režim spirálové vázy nefunguje, když objekt obsahuje více než jeden materiál." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "Objekt %1% přesahuje maximální výšku tiskového objemu." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"Ačkoli samotný objekt %1% se vejde do tiskového objemu, jeho poslední vrstva " +"překračuje maximální výšku tiskového objemu." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"Možná budete chtít zmenšit velikost vašeho modelu nebo změnit aktuální " +"tisková nastavení a zkusit to znovu." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "Variabilní výška vrstvy není podporována s organickými podpěrami." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"Čistící věž je v současné době možná pouze v případě relativního adresování " +"exruderu (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "Čistící Věž není podporován v tisku \"Podle objektu\" ." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"Čistící Věž není podporována, když je zapnutá výška adaptivní vrstvy. " +"Vyžaduje že všechny objekty mají stejnou výšku vrstvy." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"Čistící věž vyžaduje, aby jakákoli \"podpěrná mezera\" byla násobkem výšky " +"vrstvy" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "Čistící věž vyžaduje, aby všechny objekty měly stejnou výšku vrstvy" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"Čistící věž vyžaduje, aby byly všechny objekty vytištěny přes stejné číslo z " +"raftových vrstev" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"Čistící věž vyžaduje, aby všechny objekty byly slicovány na stejnou výšku " +"vrstvy." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"Čistící věž je podporována pouze v případě, že všechny objekty mají stejnou " +"proměnnou výšku vrstvy" + +msgid "Too small line width" +msgstr "Příliš malá šířka extruze" + +msgid "Too large line width" +msgstr "Příliš velká šířka extruze" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"Čistící věž vyžaduje, aby podpěry měly stejnou výšku vrstvy jako objekt." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"Průměr špičky organické podpěry nesmí být menší než je šířka extruze podpěr." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"Průměr organické větve nesmí být menší než je dvojnásobek šířky extruze " +"podpěr." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"Průměr organické podpůrné větve nesmí být menší než průměr špičky větve." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Vynucené podpěry jsou použity, ale podpěry nejsou povoleny. Povolte prosím " +"podpěry." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "Výška vrstvy nemůže překročit průměr trysky" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"Absolutní adresování extrudéru vyžaduje resetování pozice extrudéru na každé " +"vrstvě, aby se zabránilo ztrátě přesnosti pohyblivé desetinné čárky. " +"Přidejte \"G92 E0\" do layer_gcode." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"\"G92 E0\" bylo nalezeno v before_layer_gcode, což je nekompatibilní s " +"absolutním adresováním extrudéru." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"\"G92 E0\" bylo nalezeno v layer_gcode, což je nekompatibilní s absolutním " +"adresováním extrudéru." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Podložka %d: %s nepodporuje filament %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" + +msgid "Generating skirt & brim" +msgstr "Generování Obrysu a Límce" + +msgid "Exporting G-code" +msgstr "Exportování souboru G-kódu" + +msgid "Generating G-code" +msgstr "Generování G-kódu" + +msgid "Failed processing of the filename_format template." +msgstr "Zpracování šablony filename_format se nezdařilo." + +msgid "Printable area" +msgstr "Oblast pro tisk" + +msgid "Bed exclude area" +msgstr "Podložka mimo prostor" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Nepotisknutelná oblast v rovině XY. Například tiskárny řady X1 používají " +"přední levý roh pro vyjmutí filamentu během výměny filamentu. Oblast je " +"vyjádřena jako polygon podle bodů v následujícím formátu: \"XxY, XxY, ... \"" + +msgid "Bed custom texture" +msgstr "Vlastní textura podložky" + +msgid "Bed custom model" +msgstr "Vlastní model podložky" + +msgid "Elephant foot compensation" +msgstr "Kompenzace rozplácnutí první vrstvy" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "Snižte první vrstvu na podložce, abyste kompenzovali efekt sloní nohy" + +msgid "Elephant foot compensation layers" +msgstr "Vrstvy kompenzace sloní nohy" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"Počet vrstev, na kterých bude aktivní kompenzace sloní nohy. První vrstva " +"bude zmenšena o hodnotu kompenzace sloní nohy, následující vrstvy budou " +"lineárně zmenšeny méně, až do vrstvy, která je označena touto hodnotou." + +msgid "layers" +msgstr "vrstva(y)" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Toto je výška každé vrstvy. Menší výšky vrstvy dávají větší přesnost, ale " +"delší doba tisku" + +msgid "Printable height" +msgstr "Výška pro tisk" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "Maximální tisknutelná výška, která je omezena mechanismem tiskárny" + +msgid "Preferred orientation" +msgstr "" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" + +msgid "Printer preset names" +msgstr "Názvy přednastavení tiskáren" + +msgid "Use 3rd-party print host" +msgstr "" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" + +msgid "Hostname, IP or URL" +msgstr "Název serveru, IP nebo URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca může nahrávat G-kódy do tiskového serveru. Toto pole by mělo " +"obsahovat název hostitele, IP adresu nebo URL tiskového serveru. K " +"tiskovému serveru za HAProxy se zapnutým ověřením basic auth lze přistupovat " +"zadáním uživatelského jména a hesla do adresy URL v následujícím formátu: " +"https://username: password@your-octopi-address/" + +msgid "Device UI" +msgstr "Uživatelské rozhraní zařízení" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Uveďte URL uživatelského rozhraní vašeho zařízení, pokud není stejné jako " +"print_host" + +msgid "API Key / Password" +msgstr "API klíč / Heslo" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca může nahrát soubory do tiskového serveru. Toto pole by mělo " +"obsahovat klíč API požadovaný pro ověření." + +msgid "Name of the printer" +msgstr "Název tiskárny" + +msgid "HTTPS CA File" +msgstr "Soubor HTTPS CA" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Pro HTTPS připojení OctoPrintu lze zadat vlastní CA certifikát ve formátu " +"crt/pem. Pokud zůstane pole prázdné, použije se výchozí úložiště certifikátů " +"OS CA." + +msgid "User" +msgstr "Uživatel" + +msgid "Password" +msgstr "Heslo" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Ignorování kontrol revokace HTTPS certifikátu" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ignorování kontrol revokace HTTPS certifikátu v případě chybějících nebo " +"offline distribučních bodů. Tuto možnost lze povolit pro certifikáty " +"podepsané vlastním podpisem v případě, že se připojení nezdaří." + +msgid "Names of presets related to the physical printer" +msgstr "Názvy přednastavení souvisejících s fyzickou tiskárnou" + +msgid "Authorization Type" +msgstr "Typ oprávnění" + +msgid "API key" +msgstr "API klíč" + +msgid "HTTP digest" +msgstr "HTTP digest" + +msgid "Avoid crossing wall" +msgstr "Vyhněte se přejíždění stěn" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Objeďte a vyhněte se přejíždění přes stěny, což může způsobit skvrny na " +"povrchu" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Vyhněte se přejíždění stěn - Maximální délka objížďky" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Maximální vzdálenost objížďky pro vyhnutí se přejezdu přes stěny. " +"Neobjíždějte, pokud vzdálenost objížďky je větší než tato hodnota. Lze zadat " +"délku objížďky buď jako absolutní hodnotu, nebo jako procento (například 50 " +"%) přímého cestovní cesta. Nula k deaktivaci" + +msgid "mm or %" +msgstr "mm or %" + +msgid "Other layers" +msgstr "Ostatní vrstvy" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Toto je teplota podložky pro vrstvy kromě první. Hodnota 0 znamená, že " +"filament nepodporuje tisk na Cool Podložku" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Toto je teplota Podložky pro vrstvy kromě první. Hodnota 0 znamená, že " +"Filament nepodporuje tisk na Engineering Podložku" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Toto je teplota Podložky pro vrstvy kromě první. Hodnota 0 znamená, že " +"filament nepodporuje tisk na High Temp Podložku" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Toto je teplota Podložky pro vrstvy kromě první. Hodnota 0 znamená, že " +"filament nepodporuje tisk na Textured PEI Podložku" + +msgid "Initial layer" +msgstr "První vrstva" + +msgid "Initial layer bed temperature" +msgstr "Teplota podložky první vrstvy" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Toto je teplota podložky první vrstvy. Hodnota 0 znamená filament " +"nepodporuje tisk na Cool Podložku" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Toto je teplota podložky první vrstvy. Hodnota 0 znamená filament " +"nepodporuje tisk na Engineering Podložku" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Toto je teplota podložky první vrstvy. Hodnota 0 znamená filament " +"nepodporuje tisk na High Temp Podložku" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Toto je teplota podložky první vrstvy. Hodnota 0 znamená filament " +"nepodporuje tisk na Textured PEI Podložku" + +msgid "Bed types supported by the printer" +msgstr "Typy podložek podporované tiskárnou" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "Engineering Podložka" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "Sekvence tisku první vrstvy" + +msgid "Other layers print sequence" +msgstr "" + +msgid "The number of other layers print sequence" +msgstr "" + +msgid "Other layers filament sequence" +msgstr "" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "Tento G-kód se vkládá při každé změně vrstvy před zvednutím z" + +msgid "Bottom shell layers" +msgstr "Spodní vrstvy skořepiny" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Toto je počet pevných vrstev spodní skořepiny, včetně spodní povrchové " +"vrstvy. Když je tloušťka vypočítaná touto hodnotou tenčí než tloušťka spodní " +"skořepiny, spodní vrstvy skořepiny se zvětší" + +msgid "Bottom shell thickness" +msgstr "Tloušťka spodní skořepiny" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"Počet spodních pevných vrstev se při krájení zvýší, pokud je tloušťka " +"vypočítaná podle spodních vrstev skořepiny tenčí než tato hodnota. Tím se " +"lze vyhnout příliš tenké skořepině, když je výška vrstvy malá. 0 znamená, že " +"toto nastavení je zakázáno a tloušťka spodní skořepiny je absolutně určován " +"spodními vrstvami pláště" + +msgid "Apply gap fill" +msgstr "" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" + +msgid "Everywhere" +msgstr "Všude" + +msgid "Top and bottom surfaces" +msgstr "" + +msgid "Nowhere" +msgstr "" + +msgid "Force cooling for overhang and bridge" +msgstr "Vynucené chlazení pro převisy a mosty" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Povolením této možnosti optimalizujete rychlost ventilátoru chlazení dílů " +"pro převis a most, abyste získali lepší chlazení" + +msgid "Fan speed for overhang" +msgstr "Rychlost ventilátoru pro převisy" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Vynutit ventilátor chlazení na tuto rychlost, když tisknete most nebo " +"převislou stěnu, která má velký přesah. Vynucení chlazení převisu a mostu " +"může získat lepší kvalitu těchto dílů" + +msgid "Cooling overhang threshold" +msgstr "Hranice chlazení převisů" + +#, fuzzy, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Vynutit chladicí ventilátor na určitou rychlost, když stupeň převisu " +"tištěného dílu překročí tuto hodnotu. Vyjádřeno v procentech, které udává, " +"jak velká šířka extruze bez podpěry spodní vrstvy. 0% znamená vynucení " +"chlazení pro celou vnější stěnu bez ohledu na míru převisu" + +msgid "Bridge infill direction" +msgstr "Směr výplně mostu" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Přepsání úhlu přemostění. Pokud je ponecháno na nule, úhel přemostění bude " +"vypočítán automaticky. Jinak bude poskytnutý úhel použit pro vnější mosty. " +"Pro nulový úhel použijte 180°." + +msgid "Bridge density" +msgstr "Hustota mostu" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Hustota externích mostů. 100 % znamená pevný most. Výchozí hodnota je 100 %." + +msgid "Bridge flow ratio" +msgstr "Průtok mostu" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Snižte tuto hodnotu mírně (například 0,9), abyste snížili množství materiálu " +"pro most a zlepšili prověšení" + +msgid "Internal bridge flow ratio" +msgstr "" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" + +msgid "Top surface flow ratio" +msgstr "Poměr průtoku horní vrstvy" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Tento faktor ovlivňuje množství materiálu pro vrchní plnou výplň. Můžete jej " +"mírně snížit, abyste měli hladký povrch" + +msgid "Bottom surface flow ratio" +msgstr "Poměr průtoku spodní vrstvy" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "Tento faktor ovlivňuje množství materiálu pro spodní plnou výplň" + +msgid "Precise wall" +msgstr "Přesná stěna" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" + +msgid "Only one wall on top surfaces" +msgstr "Pouze jedna stěna na horních plochách" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Používejte pouze jednu stěnu na rovném horním povrchu, abyste získali více " +"prostoru pro horní vzor výplně" + +msgid "One wall threshold" +msgstr "Hranice jedné stěny" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Pokud má být tisknuta horní plocha a je částečně zakrytá jinou vrstvou, " +"nebude brána v úvahu jako horní vrstva, pokud je její šířka nižší než tato " +"hodnota. Toto může být užitečné, aby se zabránilo spuštění funkce 'jeden " +"perimetr nahoře' na ploše, která by měla být pokryta pouze perimetry. Tato " +"hodnota může být udávána v mm nebo jako % o šířky extruze perimetru.\n" +"Varování: Pokud je tato funkce povolena, mohou vzniknout artefakty, pokud " +"máte na následující vrstvě nějaké tenké prvky, například písmena. Tuto volbu " +"nastavte na 0, abyste se tyto artefakty odstranili." + +msgid "Only one wall on first layer" +msgstr "Pouze jedna stěna v první vrstvě" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Používejte pouze jednu stěnu na první vrstvě, abyste získali více prostoru " +"pro spodní výplňový vzor" + +msgid "Extra perimeters on overhangs" +msgstr "Dodatečné perimetry u převisů" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Vytvořte další perimetry přes strmé převisy a oblasti, kde mosty nelze " +"ukotvit. " + +msgid "Reverse on odd" +msgstr "Obrátit na lichých" + +msgid "Overhang reversal" +msgstr "Obrácení převisu" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" + +msgid "Reverse only internal perimeters" +msgstr "" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" + +msgid "Bridge counterbore holes" +msgstr "" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" + +msgid "Partially bridged" +msgstr "" + +msgid "Sacrificial layer" +msgstr "" + +msgid "Reverse threshold" +msgstr "Hranice obrácení" + +msgid "Overhang reversal threshold" +msgstr "Hranice obrácení převisu" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Počet milimetrů, o které musí být převis pro zvážení, zda je obrácení " +"užitečné. Může to být určité % o z obvodové šířky.\n" +"Hodnota 0 umožňuje obrácení na každé liché vrstvě bez ohledu na jiné faktory." + +msgid "Classic mode" +msgstr "Klasický režim" + +msgid "Enable this option to use classic mode" +msgstr "Povolte tuto možnost pro použití klasického režimu" + +msgid "Slow down for overhang" +msgstr "Zpomalení u převisů" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "Povolte tuto volbu pro zpomalení tisku pro různé stupně převisů" + +msgid "Slow down for curled perimeters" +msgstr "Zpomalení pro zakroucené obvody" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Povolte tuto možnost pro zpomalení tisku na místech, kde mohou existovat " +"potenciální zakroucené obvody" + +msgid "mm/s or %" +msgstr "mm/s or %" + +msgid "External" +msgstr "Vnější" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Rychlost mostu a zcela převislé stěny" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "Vnitřní" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Rychlost vnitřního mostu. Pokud je hodnota vyjádřena jako procento, bude " +"vypočítána na základě most_speed. Výchozí hodnota je 150 %." + +msgid "Brim width" +msgstr "Šířka límce" + +msgid "Distance from model to the outermost brim line" +msgstr "Vzdálenost od modelu k nejvzdálenějšímu okraji límce" + +msgid "Brim type" +msgstr "Typ límce" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Toto ovládá generování límce na vnější a/nebo vnitřní straně modelů. Možnost " +"Auto znamená, že šířka límce je automaticky analyzována a vypočítána." + +msgid "Brim-object gap" +msgstr "Mezera mezi Límcem a Objektem" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Mezera mezi nejvnitřnějším límcem a předmětem může usnadnit odstranění límce" + +msgid "Brim ears" +msgstr "Uši límce" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "Pouze kreslit límec (brim) přes ostré hrany modelu." + +msgid "Brim ear max angle" +msgstr "Maximální úhel uší límce" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Maximální úhel, při kterém se můžou objevit uši límce.\n" +"Pokud je nastaveno na 0, nebude vytvořen žádný límec.\n" +"Pokud je nastaveno na ~180, límec bude vytvořen na všem kromě rovných úseků." + +msgid "Brim ear detection radius" +msgstr "Poloměr detekce uší límce" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"Geometrie bude zredukována před detekcí ostrých úhlů. Tento parametr udává " +"minimální délku odchylky pro redukci.\n" +"0 pro deaktivaci" + +msgid "Compatible machine" +msgstr "Kompatibilní stroj" + +msgid "upward compatible machine" +msgstr "nahoru kompatibilní stroj" + +msgid "Compatible machine condition" +msgstr "Stav kompatibilního stroje" + +msgid "Compatible process profiles" +msgstr "Kompatibilní profily procesů" + +msgid "Compatible process profiles condition" +msgstr "Podmínka kompatibilních procesních profilů" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Tisková sekvence, vrstva po vrstvě nebo objekt po objektu" + +msgid "By layer" +msgstr "Podle vrstvy" + +msgid "By object" +msgstr "Podle objektu" + +msgid "Intra-layer order" +msgstr "" + +msgid "Print order within a single layer" +msgstr "" + +msgid "As object list" +msgstr "" + +msgid "Slow printing down for better layer cooling" +msgstr "Zpomalte tisk pro lepší chlazení vrstvy" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Povolením této možnosti zpomalíte rychlost tisku, aby se zkrátila doba " +"poslední vrstvy ne kratší než časová hranice vrstvy v \"Hranice max " +"rychlosti ventilátoru\", takže vrstva může být chlazena po delší dobu. To " +"může zlepšit kvalitu chlazení jehly a malých detailů" + +msgid "Normal printing" +msgstr "Normální tisk" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "Výchozí zrychlení normálního tisku i pohybu kromě počáteční vrstvy" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Výchozí profil filamentu" + +msgid "Default filament profile when switch to this machine profile" +msgstr "Výchozí profil filamentu při přepnutí na tento profil stroje" + +msgid "Default process profile" +msgstr "Výchozí profil procesu" + +msgid "Default process profile when switch to this machine profile" +msgstr "Výchozí profil procesu při přepnutí na tento profil stroje" + +msgid "Activate air filtration" +msgstr "Aktivovat filtrování vzduchu" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "Aktivovat pro lepší filtrování vzduchu. G-kód příkaz: M106 P3 S(0-255)" + +msgid "Fan speed" +msgstr "Rychlost ventilátoru" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Rychlost odsávacího ventilátoru během tisku. Tato rychlost přepíše rychlost " +"v g-kódu pro filament" + +msgid "Speed of exhaust fan after printing completes" +msgstr "Rychlost odsávacího ventilátoru po dokončení tisku" + +msgid "No cooling for the first" +msgstr "První bez chlazení" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Zavřete všechny chladicí ventilátory pro první určité vrstvy. Chladicí " +"ventilátor první vrstvy býval uzavřen, aby se dosáhlo lepší přilnavosti " +"stavební desky" + +msgid "Don't support bridges" +msgstr "Nevytvářet podpěry pod mosty" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Nepodpírejte celou oblast mostu, díky čemuž je podpěra velmi velká. Most " +"obvykle může tisknout přímo bez podpěry, pokud není příliš dlouhý" + +msgid "Thick bridges" +msgstr "Silné přemostění" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Pokud je povoleno, jsou mosty spolehlivější, mohou překlenout delší " +"vzdálenosti, ale mohou vypadat hůře.\n" +"Pokud je zakázáno, mosty vypadají lépe, ale jsou spolehlivé jen pro kratší " +"přemostění." + +msgid "Thick internal bridges" +msgstr "" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" + +msgid "Don't filter out small internal bridges (beta)" +msgstr "" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" + +msgid "Disabled" +msgstr "Zakázáno" + +msgid "Limited filtering" +msgstr "" + +msgid "No filtering" +msgstr "" + +msgid "Max bridge length" +msgstr "Maximální délka mostu" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Maximální délka mostů, které nepotřebují podpěru. Pokud chcete všechny, " +"nastavte ji na 0 mosty, které mají být podporovány, a pokud nechcete, " +"nastavte ji na velmi vysokou hodnotu všechny mosty, které mají být podepřeny." + +msgid "End G-code" +msgstr "Konec G-kódu" + +msgid "End G-code when finish the whole printing" +msgstr "Konec G-kód po dokončení celého tisku" + +msgid "Between Object Gcode" +msgstr "" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" + +msgid "End G-code when finish the printing of this filament" +msgstr "Konec G-kód po dokončení tisku tohoto filamentu" + +msgid "Ensure vertical shell thickness" +msgstr "Zajistit tloušťku svislých stěn" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" + +msgid "Critical Only" +msgstr "" + +msgid "Moderate" +msgstr "" + +msgid "Top surface pattern" +msgstr "Vzor horního povrchu" + +msgid "Line pattern of top surface infill" +msgstr "Čárový vzor výplně horní plochy" + +msgid "Concentric" +msgstr "Koncentrický" + +msgid "Rectilinear" +msgstr "Přímočarý" + +msgid "Monotonic" +msgstr "Monotónní" + +msgid "Monotonic line" +msgstr "Monotónní linka" + +msgid "Aligned Rectilinear" +msgstr "Zarovnaný přímočarý" + +msgid "Hilbert Curve" +msgstr "Hilbertova křivka" + +msgid "Archimedean Chords" +msgstr "Archimédské akordy" + +msgid "Octagram Spiral" +msgstr "Oktagramová spirála" + +msgid "Bottom surface pattern" +msgstr "Vzor spodního povrchu" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "Čárový vzor výplně spodní plochy, nikoli výplně mostů" + +msgid "Internal solid infill pattern" +msgstr "Vzor vnitřní plné výplně" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"Čárový vzor vnitřní plné výplně. Pokud je povolena detekce úzké vnitřní plné " +"výplně, bude pro malou plochu použit koncentrický vzor." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Šířka extruze vnější stěny. Pokud je vyjádřena jako %, vypočítá se vzhledem " +"k průměru trysky." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Rychlost vnější stěny, která je nejkrajnější a viditelná. Pro lepší kvalitu " +"bývala nižší než rychlost vnitřní stěny." + +msgid "Small perimeters" +msgstr "Malé perimetry" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"Toto samostatné nastavení ovlivní rychlost obvodů s poloměrem <= " +"small_perimeter_threshold (obvykle otvory). Je-li vyjádřeno v procentech " +"(například: 80 %), bude vypočítáno podle výše uvedeného nastavení rychlosti " +"vnější stěny. Nastavte na nulu pro auto." + +msgid "Small perimeters threshold" +msgstr "Hranice malého perimetru" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"Toto nastavuje hraniční hodnotu pro malou délku obvodu. Výchozí hranice je 0 " +"mm" + +msgid "Walls printing order" +msgstr "" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" + +msgid "Inner/Outer" +msgstr "" + +msgid "Outer/Inner" +msgstr "" + +msgid "Inner/Outer/Inner" +msgstr "" + +msgid "Print infill first" +msgstr "" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" + +msgid "Wall loop direction" +msgstr "" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" + +msgid "Counter clockwise" +msgstr "" + +msgid "Clockwise" +msgstr "" + +msgid "Height to rod" +msgstr "Výška k Ose X" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Vzdálenost hrotu trysky k Ose X (X Gantry). Používá se pro zamezení kolize v " +"tisk podle objektu." + +msgid "Height to lid" +msgstr "Výška po víko" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Vzdálenost hrotu trysky k víčku. Používá se pro zamezení kolizi při tisku " +"vedlejších objektů." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Poloměr vůle kolem extruderu. Používá se pro zamezení kolizi při tisku " +"vedlejších objektů." + +msgid "Nozzle height" +msgstr "" + +msgid "The height of nozzle tip." +msgstr "" + +msgid "Bed mesh min" +msgstr "" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Bed mesh max" +msgstr "" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Probe point distance" +msgstr "" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" + +msgid "Mesh margin" +msgstr "" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" + +msgid "Extruder Color" +msgstr "Barva extruderu" + +msgid "Only used as a visual help on UI" +msgstr "Používá se pouze jako vizuální nápověda v uživatelském rozhraní" + +msgid "Extruder offset" +msgstr "Odsazení extruderu" + +msgid "Flow ratio" +msgstr "Poměr průtoku" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"Materiál může mít objemovou změnu po přepnutí mezi roztaveným a krystalickým " +"stavem. Toto nastavení proporcionálně změní veškerý vytlačovací tok tohoto " +"filamentu v gkódu. Doporučený rozsah hodnot je mezi 0,95 a 1,05. Možná " +"můžete tuto hodnotu vyladit, abyste získali pěkně rovný povrch, když dochází " +"k mírnému přetečení nebo podtečení" + +msgid "Enable pressure advance" +msgstr "Povolit předstih tlaku" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Povolte předstih tlaku, po povolení bude výsledek automatické kalibrace " +"přepsán." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "Předstih tlaku (Klipper) AKA Lineární faktor předstihu (Marlin)" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"Výchozí šířka extruze, pokud jsou ostatní šířky extruze nastaveny na 0. " +"Pokud je vyjádřeno jako %, bude vypočteno na základě průměru trysky." + +msgid "Keep fan always on" +msgstr "Ventilátor vždy zapnutý" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Pokud povolíte toto nastavení, ventilátor chlazení součástí se nikdy " +"nezastaví a poběží alespoň na minimální rychlost, aby se snížila frekvence " +"spouštění a zastavování" + +msgid "Don't slow down outer walls" +msgstr "" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "Čas vrstvy" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"Ventilátor chlazení části bude povolen pro vrstvy, jejichž odhadovaná doba " +"je kratší než tato hodnota. Rychlost ventilátoru je interpolována mezi " +"minimální a maximální rychlost ventilátoru podle doby tisku vrstvy" + +msgid "Default color" +msgstr "Výchozí barva" + +msgid "Default filament color" +msgstr "Výchozí barva filamentu" + +msgid "Filament notes" +msgstr "Poznámky k filamentu" + +msgid "You can put your notes regarding the filament here." +msgstr "Zde můžete vložit poznámky týkající se filamentu." + +msgid "Required nozzle HRC" +msgstr "Požadovaná tryska HRC" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"Minimální HRC trysky potřebné k tisku filamentu. Nula znamená žádnou " +"kontrolu HRC trysky." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Toto nastavení znamená, kolik objemu filamentu lze roztavit a extrudováno za " +"sekundu. Rychlost tisku je omezena maximální objemovou rychlostí, v případ " +"příliš vysoké a nepřiměřené rychlosti nastavení. Nemůže být nula" + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Doba zavádění filamentu" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Čas na zavedení nového filamentu při výměně filamentu. Pouze pro statistiku" + +msgid "Filament unload time" +msgstr "Doba vysouvání filamentu" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Čas vytažení starého filamentu při výměně filamentu. Pouze pro statistiku" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Průměr filamentu se používá k výpočtu extruze v gkódu, takže je důležitý a " +"měl by být přesný" + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "Smrštění" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Zadejte procento smrštění, které filament získá po ochlazení (94% i pokud " +"naměříte 94mm místo 100mm). Část bude pro kompenzaci zmenšena v xy. Bere se " +"v úvahu pouze filamentu použit pro obvod.\n" +"Ujistěte se aby byl mezi objekty dostatek prostoru, protože tato kompenzace " +"se provádí po kontrolách." + +msgid "Loading speed" +msgstr "Rychlost zavádění" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Rychlost použitá pro zavádění filamentu na čistící věž." + +msgid "Loading speed at the start" +msgstr "Počáteční rychlost zavádění" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Rychlost použitá na samém počátku zaváděcí fáze." + +msgid "Unloading speed" +msgstr "Rychlost vysunutí" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Rychlost vysouvání filamentu při výměně na čistící věži (úvodní část " +"vysunutí okamžitě po rapidní extruzi není ovlivněna)." + +msgid "Unloading speed at the start" +msgstr "Počáteční rychlost vysouvání filamentu" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Rychlost použitá při vysouvání špičky filamentu bezprostředně po rapidní " +"extruzi." + +msgid "Delay after unloading" +msgstr "Zpoždění po vyjmutí" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Doba čekání po vysunutí filamentu. Může pomoci ke spolehlivé změně extruderu " +"s flexibilními materiály, které potřebují více času ke smrštění na původní " +"rozměry." + +msgid "Number of cooling moves" +msgstr "Počet chladících pohybů" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"Filament je chlazen pohyby tam a zpět v chladicí trubičce. Zadejte " +"požadovaný počet těchto pohybů." + +msgid "Speed of the first cooling move" +msgstr "Rychlost prvního pohybu chlazení" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "Chladicí pohyby se postupně zrychlují a začínají touto rychlostí." + +msgid "Minimal purge on wipe tower" +msgstr "Minimální vytlačený objem na čistící věži" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"Po výměně nástroje nemusí být známa přesná poloha nově zavedeného filamentu " +"uvnitř trysky a tlak filamentu pravděpodobně ještě není stabilní. Před " +"vyčištěním tiskové hlavy do výplně nebo do objektu bude Snapmaker Orca toto " +"množství materiálu vždy vytlačovat do čistící věže, aby se spolehlivě " +"vytvořily následné výplně nebo objekty." + +msgid "Speed of the last cooling move" +msgstr "Rychlost posledního pohybu chlazení" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "Chladící pohyby se postupně zrychlují až k této rychlosti." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Doba, po kterou firmware tiskárny (nebo jednotka Multi Material 2.0) zavádí " +"nový filament během jeho výměny (při provádění kódu T). Tento čas je přidán " +"k celkové době tisku pomocí G-kódu odhadovače tiskového času." + +msgid "Ramming parameters" +msgstr "Parametry rapidní extruze" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Tento řetězec je upravován dialogem RammingDialog a obsahuje specifické " +"parametry pro rapidní extruzi." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Doba, po kterou firmware tiskárny (nebo jednotka Multi Material 2.0) vysouvá " +"filament během jeho výměny (při provádění kódu T). Tento čas je přidán k " +"celkové době tisku pomocí G-kódu odhadovače tiskového času." + +msgid "Enable ramming for multitool setups" +msgstr "Povolení rapidní extruze tiskárny s více nástroji" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Provedení rapidní extruze při použití tiskárny s více nástroji (tj. když " +"není v nastavení tiskárny zaškrtnuto políčko Single Extruder Multimaterial). " +"Pokud je tato možnost zaškrtnuta, je na čistící věži těsně před výměnou " +"nástroje rychle vytlačeno malé množství filamentu. Tato volba se uplatní " +"pouze tehdy, když je povolena čistící věž." + +msgid "Multitool ramming volume" +msgstr "Objem rapidní extruze pro tiskárnu s více nástroji" + +msgid "The volume to be rammed before the toolchange." +msgstr "Objem, který se má před výměnou nástroje extrudovat." + +msgid "Multitool ramming flow" +msgstr "Průtok při rapidní extruzi pro více nástrojů" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "Průtok pro rapidní extruzi před výměnou nástroje." + +msgid "Density" +msgstr "Hustota" + +msgid "Filament density. For statistics only" +msgstr "Hustota Filamentu. Pouze pro statistiku" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "Typ materiálu filamentu" + +msgid "Soluble material" +msgstr "Rozpustný materiál" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"Rozpustný materiál se běžně používá k tisku podpěr a kontaktní vrstvy podpěr" + +msgid "Support material" +msgstr "Podpěry" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"Materiál podpěr se běžně používá k tisku podpěr a kontaktní vrstvy podpěr" + +msgid "Softening temperature" +msgstr "Teplota měknutí" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"Materiál při této teplotě měkne, takže když je teplota podložky rovna nebo " +"vyšší než tato hodnota, vřele doporučujeme otevřít přední dvířka a/nebo " +"odebrat horní sklo, abyste předešli ucpávkám." + +msgid "Price" +msgstr "Cena" + +msgid "Filament price. For statistics only" +msgstr "Cena Filamentu. Pouze pro statistiku" + +msgid "money/kg" +msgstr "Kč/kg" + +msgid "Vendor" +msgstr "Výrobce" + +msgid "Vendor of filament. For show only" +msgstr "Výrobce filamentu. Pouze pro zobrazení" + +msgid "(Undefined)" +msgstr "(Nedefinováno)" + +msgid "Sparse infill direction" +msgstr "" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Úhel pro vzor vnitřní výplně, který řídí začátek nebo hlavní směr linky" + +msgid "Solid infill direction" +msgstr "" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" + +msgid "Rotate solid infill direction" +msgstr "" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "" + +msgid "Sparse infill density" +msgstr "Hustota vnitřní výplně" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" + +msgid "Sparse infill pattern" +msgstr "Vzor vnitřní výplně" + +msgid "Line pattern for internal sparse infill" +msgstr "Vzor linek pro vnitřní výplň" + +msgid "Grid" +msgstr "Mřížka" + +msgid "Line" +msgstr "Čára" + +msgid "Cubic" +msgstr "Kubický" + +msgid "Tri-hexagon" +msgstr "Tri-šestiúhelník" + +msgid "Gyroid" +msgstr "Gyroid" + +msgid "Honeycomb" +msgstr "Plástev" + +msgid "Adaptive Cubic" +msgstr "Kubický adaptivní" + +msgid "3D Honeycomb" +msgstr "3D Plástev" + +msgid "Support Cubic" +msgstr "Kubický podepíraný" + +msgid "Lightning" +msgstr "Blesky" + +msgid "Cross Hatch" +msgstr "" + +msgid "Sparse infill anchor length" +msgstr "Délka kotvy vnitřní výplně" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"Připojení výplně k vnitřnímu perimetru krátkým segmentem dalšího perimetru. " +"Pokud je vyjádřeno v procentech (příklad: 15%), vypočítává se z šířky " +"extruze výplně. Snapmaker Orca se pokouší spojit dvě blízké výplňová čáry " +"krátkým obvodovým perimetrem. Pokud není nalezen žádný takový obvodový " +"perimetr kratší než infill_anchor_max, je výplňová čára spojena s obvodovým " +"perimetrem pouze na jedné straně a délka odebraného obvodového perimetru je " +"omezena na tento parametr, ale ne dále než anchor_length_max. \n" +"Nastavením tohoto parametru na nulu deaktivujete kotvící perimetry připojené " +"k jedné výplňové čáře." + +msgid "0 (no open anchors)" +msgstr "0 (žádné otevřené kotvy)" + +msgid "1000 (unlimited)" +msgstr "1 000 (neomezeně)" + +msgid "Maximum length of the infill anchor" +msgstr "Maximální délka výplňové kotvy" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"Připojení výplně k vnitřnímu perimetru krátkým segmentem dalšího perimetru. " +"Pokud je vyjádřeno v procentech (příklad: 15%), vypočítává se z šířky " +"extruze výplně. Snapmaker Orca se pokouší spojit dvě blízké výplňová linky " +"krátkým obvodovým perimetrem. Pokud není nalezen žádný takový obvodový " +"perimetr kratší než tento parametr, je výplňová čára spojena s obvodovým " +"perimetrem pouze na jedné straně a délka odebraného obvodového perimetru je " +"omezena na infill_anchor, ale ne delší než tento parametr. \n" +" Pokud je nastaveno na 0, použije se starý algoritmus pro výplň připojení, " +"měl by vytvořit stejný výsledek jako s 1000 & 0." + +msgid "0 (Simple connect)" +msgstr "0 (Jednoduché spojení)" + +msgid "Acceleration of outer walls" +msgstr "Zrychlení vnějších stěny" + +msgid "Acceleration of inner walls" +msgstr "Zrychlení vnitřních stěn" + +msgid "Acceleration of travel moves" +msgstr "Zrychlení cestovních pohybů" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Zrychlení výplně horního povrchu. Použití nižší hodnoty může zlepšit kvalitu " +"povrchu" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "Zrychlení vnější stěny. Použití nižší hodnoty může zlepšit kvalitu" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Zrychlení mostů. Pokud je hodnota vyjádřena v procentech (např. 50%), bude " +"vypočítána na základě zrychlení vnější stěny." + +msgid "mm/s² or %" +msgstr "mm/s² or %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Zrychlení vnitřní výplně. Pokud je hodnota vyjádřena v procentech (např. 100 " +"%), bude vypočítána na základě výchozího zrychlení." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"Zrychlení vnitřní pevné výplně. Pokud je hodnota vyjádřena v procentech " +"(např. 100 %), bude vypočítána na základě výchozího zrychlení." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Zrychlení počáteční vrstvy. Použití nižší hodnoty může zlepšit lepidlo na " +"vytvoření desky" + +msgid "Enable accel_to_decel" +msgstr "Povolit accel_to_decel" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "Klipper max_accel_to_decel bude upraven automaticky" + +msgid "accel_to_decel" +msgstr "accel_to_decel" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "Klipper max_accel_to_decel bude upraven na toto %% o zrychlení" + +msgid "Jerk of outer walls" +msgstr "Jerk-Ryv na vnější stěny" + +msgid "Jerk of inner walls" +msgstr "Jerk-Ryv na vnitřní stěny" + +msgid "Jerk for top surface" +msgstr "Jerk-Ryv pro horní plochy" + +msgid "Jerk for infill" +msgstr "Jerk-Ryv pro výplně" + +msgid "Jerk for initial layer" +msgstr "Jerk-Ryv pro první vrstvu" + +msgid "Jerk for travel" +msgstr "Jerk-Ryv pro cestování" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Šířka extruze pro první vrstvu. Pokud je vyjádřena jako %, vypočítá se " +"vzhledem k průměru trysky." + +msgid "Initial layer height" +msgstr "Výška první vrstvy" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Výška první vrstvy. Mírně tlustá první vrstva může zlepšit přilnavost k " +"podložce" + +msgid "Speed of initial layer except the solid infill part" +msgstr "Rychlost první vrstvy kromě plné výplně" + +msgid "Initial layer infill" +msgstr "Výplň první vrstvy" + +msgid "Speed of solid infill part of initial layer" +msgstr "Rychlost plné výplně v první vrstvě" + +msgid "Initial layer travel speed" +msgstr "Rychlost pohybu první vrstvy" + +msgid "Travel speed of initial layer" +msgstr "Cestovní rychlost počáteční vrstvy" + +msgid "Number of slow layers" +msgstr "Počet pomalých vrstev" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"První několik vrstev se tiskne pomaleji než obvykle. Rychlost se postupně " +"zvyšuje lineárně během určeného počtu vrstev." + +msgid "Initial layer nozzle temperature" +msgstr "Teplota trysky první vrstvy" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "Teplota trysky pro tisk první vrstvy při použití tohoto filamentu" + +msgid "Full fan speed at layer" +msgstr "Maximální otáčky ventilátoru ve vrstvě" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"Otáčky ventilátoru se lineárně zvýší z nuly ve vrstvě " +"\"close_fan_first_layers\" na maximum ve vrstvě \"full_fan_speed_layer\". " +"Hodnota \"full_fan_speed_layer\" bude ignorována, pokud je nižší než " +"\"close_fan_first_layers\", v takovém případě se bude ventilátor točit na " +"maximální povolenou hodnotu ve vrstvě \"close_fan_first_layers\" + 1." + +msgid "layer" +msgstr "" + +msgid "Support interface fan speed" +msgstr "Rychlost ventilátoru kontaktních vrstev podpěr" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"Tato rychlost ventilátoru je uplatněna během všech kontaktních vrstev, aby " +"bylo možné oslabit jejich spojení vysokou rychlostí ventilátoru.\n" +"Nastavte hodnotu -1 pro zrušení tohoto přepisu.\n" +"Tuto hodnotu lze přepsat pouze pomocí disable_fan_first_layers." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Náhodné chvění při tisku na stěnu, takže povrch má hrubý vzhled. Toto " +"nastavení řídí neostrou polohu" + +msgid "Contour" +msgstr "Obrys" + +msgid "Contour and hole" +msgstr "Obrys a otvor" + +msgid "All walls" +msgstr "Všechny stěny" + +msgid "Fuzzy skin thickness" +msgstr "Tloušťka členitého povrchu" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"Šířka, ve které se má chvět. Je nepřípustné, aby byla pod šířkou extruze " +"vnější stěny" + +msgid "Fuzzy skin point distance" +msgstr "Vzdálenosti bodů členitého povrchu" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"Průměrná vzdálenost mezi náhodnými body zavedenými na každém segmentu linky" + +msgid "Apply fuzzy skin to first layer" +msgstr "" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "" + +msgid "Filter out tiny gaps" +msgstr "Odfiltrujte drobné mezery" + +msgid "Layers and Perimeters" +msgstr "Vrstvy a perimetry" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "Filtrovat mezery menší než stanovená hranice" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Rychlost vyplňování mezery. Mezera má obvykle nepravidelnou šířku extruze a " +"měla by být vytištěna pomaleji" + +msgid "Precise Z height" +msgstr "" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" + +msgid "Arc fitting" +msgstr "Přizpůsobení oblouku" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" + +msgid "Add line number" +msgstr "Přidat číslo řádku" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Povolte toto, chcete-li přidat číslo řádku (Nx) na začátek každého řádku G-" +"kódu" + +msgid "Scan first layer" +msgstr "Skenovat první vrstvu" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Povolením této možnosti umožníte Kameře na tiskárně kontrolovat kvalitu " +"první vrstvy" + +msgid "Nozzle type" +msgstr "Typ trysky" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"Kovový materiál trysky. To určuje odolnost trysky proti otěru a jaký druh " +"filamentu lze tisknout" + +msgid "Undefine" +msgstr "Nedefinováno" + +msgid "Hardened steel" +msgstr "Kalená ocel" + +msgid "Stainless steel" +msgstr "Nerezová ocel" + +msgid "Brass" +msgstr "Mosaz" + +msgid "Nozzle HRC" +msgstr "Tryska HRC" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"Tvrdost trysky. Nula znamená žádnou kontrolu tvrdosti trysky během slicování." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Struktura tiskárny" + +msgid "The physical arrangement and components of a printing device" +msgstr "Fyzické uspořádání a komponenty tiskového zařízení" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "Nejlepší pozice objektu" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Nejlepší automatická uspořádávací pozice v rozsahu [0,1] vzhledem k tvaru " +"podložky." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"Povolte tuto možnost, pokud stroj disponuje pomocným ventilátorem pro " +"chlazení dílů. G-kódový příkaz: M106 P2 S(0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Spustit ventilátor po tuto dobu v sekundách před cílovým časem spuštění " +"(můžete použít desetinná čísla). Předpokládá se nekonečné zrychlení pro " +"odhad této doby a budou brány v úvahu pouze pohyby G1 a G0 (křivkové tvary " +"nejsou podporovány).\n" +"Nepřesouvá příkazy ventilátoru z vlastních G-kódů (působí jako druh " +"'bariéry').\n" +"Nepřesouvá příkazy ventilátoru do startovacího G-kódu, pokud je aktivována " +"volba 'pouze vlastní startovací G-kódy'.\n" +"Pro deaktivaci použijte hodnotu 0." + +msgid "Only overhangs" +msgstr "Pouze převisy" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "Bude brát v úvahu zpoždění pro ochlazování převisů." + +msgid "Fan kick-start time" +msgstr "Čas spuštění ventilátoru" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Před snížením na cílovou rychlost vyšlete po tuto dobu příkaz maximální " +"rychlosti ventilátoru, aby se nastartoval chladicí ventilátor.\n" +"To je užitečné pro ventilátory, kde nízké PWM/výkon nemusí stačit k tomu, " +"aby se ventilátor začal točit od zastavení nebo aby se ventilátor rozběhl " +"rychleji.\n" +"Pro deaktivaci nastavte na 0." + +msgid "Time cost" +msgstr "Náklady na čas" + +msgid "The printer cost per hour" +msgstr "Náklady tiskárny za hodinu" + +msgid "money/h" +msgstr "Kč/h" + +msgid "Support control chamber temperature" +msgstr "Podpora řízení teploty komory" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Tato možnost je povolena, pokud stroj podporuje ovládání teploty komory\n" +"G-kódový příkaz: M141 S(0-255)" + +msgid "Support air filtration" +msgstr "Podpora filtrace vzduchu" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Povolte tuto možnost, pokud tiskárna podporuje filtraci vzduchu\n" +"G-kódový příkaz: M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "Druh G-kódu" + +msgid "What kind of gcode the printer is compatible with" +msgstr "S jakým typem gkódu je tiskárna kompatibilní" + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" + +msgid "Label objects" +msgstr "Označování objektů" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"Zapněte tuto možnost, chcete-li do G-kódu přidávat komentáře, které budou " +"určovat, příslušnost tiskových pohybů k jednotlivým objektům. To je užitečné " +"pro Octoprint plugin CancelObject. Nastavení NENÍ kompatibilní se Single " +"Extruder Multi Material konfigurací a s čištěním trysky do objektu / výplně." + +msgid "Exclude objects" +msgstr "Vynechat objekty" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "Povolit tuto možnost pro přidání příkazu VYNECHAT OBJEKT do g-kódu" + +msgid "Verbose G-code" +msgstr "Komentáře do G-kódu" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Aktivací získáte komentovaný soubor G-kódu, přičemž každý řádek je doplněn " +"popisným textem. Pokud tisknete z SD karty, dodatečné informace v souboru " +"můžou zpomalit firmware." + +msgid "Infill combination" +msgstr "Kombinace výplně" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Automaticky zkombinujte vnitřní výplň několika vrstev pro tisk dohromady, " +"abyste zkrátili čas. Stěna se stále tiskne s původní výškou vrstvy." + +msgid "Filament to print internal sparse infill." +msgstr "Filament pro tisk vnitřní výplně." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Šířka extruze pro vnitřní výplně. Pokud je vyjádřena jako %, vypočítá se " +"vzhledem k průměru trysky." + +msgid "Infill/Wall overlap" +msgstr "Výplň/Přesah stěny" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" + +msgid "Speed of internal sparse infill" +msgstr "Rychlost vnitřní výplně" + +msgid "Interface shells" +msgstr "Mezilehlé stěny" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Vynucení vytváření pevných skořepin mezi sousedními materiály/objemy. " +"Užitečné pro tisk s více extrudery s průsvitnými materiály nebo ručně " +"rozpustným podpůrným materiálem" + +msgid "Maximum width of a segmented region" +msgstr "Maximální šířka segmentované oblasti" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "Maximální šířka segmentované oblasti. Nula tuto funkci vypne." + +msgid "Interlocking depth of a segmented region" +msgstr "Hloubka propojení segmentované oblasti" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "Způsob žehlení" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"Žehlení využívá malý průtok k tisku na stejnou výšku povrchu, aby byl rovný " +"povrch hladší. Toto nastavení určuje, která vrstva se bude žehlit" + +msgid "No ironing" +msgstr "Nežehlit" + +msgid "Top surfaces" +msgstr "Horní plochy" + +msgid "Topmost surface" +msgstr "Nejvyšší plochy" + +msgid "All solid layer" +msgstr "Všechny pevné vrstvy" + +msgid "Ironing Pattern" +msgstr "Vzor Žehlení" + +msgid "The pattern that will be used when ironing" +msgstr "Vzor, který bude použit při žehlení" + +msgid "Ironing flow" +msgstr "Průtok žehlení" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"Množství materiálu, které se má vytlačit během žehlení. V poměru k průtoku " +"normální výšky vrstvy. Příliš vysoká hodnota vede k nadměrné extruzi na " +"povrchu" + +msgid "Ironing line spacing" +msgstr "Řádkování žehlení" + +msgid "The distance between the lines of ironing" +msgstr "Vzdálenost mezi žehlicími linkami" + +msgid "Ironing speed" +msgstr "Rychlost žehlení" + +msgid "Print speed of ironing lines" +msgstr "Rychlost tisku žehlících linek" + +msgid "Ironing angle" +msgstr "Úhel žehlení" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"Úhel, pod kterým se provádí žehlení. Záporné číslo tuto funkci zakáže a " +"použije výchozí metodu." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "Tato část gkódu je vložena při každé změně vrstvy po zvednutí z" + +msgid "Supports silent mode" +msgstr "Podporuje tichý režim" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Zda stroj podporuje tichý režim, ve kterém stroj používá k tisku nižší " +"zrychlení" + +msgid "Emit limits to G-code" +msgstr "" + +msgid "Machine limits" +msgstr "Limity stroje" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Tento G-kód bude použit jako kód pro pozastavený tisk. Uživatel může vložit " +"pauzu G-kód do prohlížeče gkódu" + +msgid "This G-code will be used as a custom code" +msgstr "Tento G-kód bude použit jako vlastní kód" + +msgid "Small area flow compensation (beta)" +msgstr "" + +msgid "Enable flow compensation for small infill areas" +msgstr "" + +msgid "Flow Compensation Model" +msgstr "" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" + +msgid "Maximum speed X" +msgstr "Maximální rychlost X" + +msgid "Maximum speed Y" +msgstr "Maximální rychlost Y" + +msgid "Maximum speed Z" +msgstr "Maximální rychlost Z" + +msgid "Maximum speed E" +msgstr "Maximální rychlost E" + +msgid "Maximum X speed" +msgstr "Maximální rychlost X" + +msgid "Maximum Y speed" +msgstr "Maximální rychlost Y" + +msgid "Maximum Z speed" +msgstr "Maximální rychlost Z" + +msgid "Maximum E speed" +msgstr "Maximální rychlost E" + +msgid "Maximum acceleration X" +msgstr "Maximální zrychlení X" + +msgid "Maximum acceleration Y" +msgstr "Maximální zrychlení Y" + +msgid "Maximum acceleration Z" +msgstr "Maximální zrychlení Z" + +msgid "Maximum acceleration E" +msgstr "Maximální zrychlení E" + +msgid "Maximum acceleration of the X axis" +msgstr "Maximální zrychlení osy X" + +msgid "Maximum acceleration of the Y axis" +msgstr "Maximální zrychlení osy Y" + +msgid "Maximum acceleration of the Z axis" +msgstr "Maximální zrychlení osy Z" + +msgid "Maximum acceleration of the E axis" +msgstr "Maximální zrychlení osy E" + +msgid "Maximum jerk X" +msgstr "Maximální Jerk-Ryv X" + +msgid "Maximum jerk Y" +msgstr "Maximální Jerk-Ryv Y" + +msgid "Maximum jerk Z" +msgstr "Maximální Jerk-Ryv Z" + +msgid "Maximum jerk E" +msgstr "Maximální Jerk-Ryv E" + +msgid "Maximum jerk of the X axis" +msgstr "Maximální Jerk-Ryv osy X" + +msgid "Maximum jerk of the Y axis" +msgstr "Maximální Jerk-Ryv osy Y" + +msgid "Maximum jerk of the Z axis" +msgstr "Maximální Jerk-Ryv osy Z" + +msgid "Maximum jerk of the E axis" +msgstr "Maximální Jerk-Ryv osy E" + +msgid "Minimum speed for extruding" +msgstr "Minimální rychlost pro extruzi" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Minimální rychlost pro extruzi (M205 S)" + +msgid "Minimum travel speed" +msgstr "Minimální cestovní rychlost" + +msgid "Minimum travel speed (M205 T)" +msgstr "Minimální cestovní rychlost (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Maximální zrychlení pro extruzi" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Maximální zrychlení pro extruzi (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Maximální zrychlení pro retrakci" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Maximální zrychlení pro retrakci (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Maximální zrychlení pro cestování" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "Maximální zrychlení pro cestování (M204 T), platí pouze pro Marlin 2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"Rychlost ventilátoru chlazení součásti může být zvýšena, když je povoleno " +"automatické chlazení. Toto je omezení maximální rychlosti ventilátoru " +"chlazení součásti" + +msgid "Max" +msgstr "Max" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"Největší výška tisknutelné vrstvy pro extruder. Používá se k omezení " +"maximální výšky vrstvy při povolení adaptivní výšky vrstvy" + +msgid "Extrusion rate smoothing" +msgstr "Vyhlazení rychlosti extruze" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Tato hodnota vyhlazuje náhlé změny extruzní rychlosti, které nastávají, když " +"tiskárna přechází z extruze s vysokým průtokem (vysoká rychlost/větší šířka) " +"na extruzi s nižším průtokem (nižší rychlost/menší šířka) a naopak.\n" +"\n" +"Definuje maximální rychlost, kterou může objemový průtok extrudovaného " +"materiálu v mm3/s měnit v čase. Vyšší hodnoty znamenají, že jsou povoleny " +"větší změny extruzní rychlosti, což vede k rychlejším přechodům rychlosti.\n" +"\n" +"Hodnota 0 funkci zakáže. \n" +"\n" +"Pro tiskárny s přímým pohonem a vysokou rychlostí a průtokem (např. Bambu " +"lab nebo Voron) tato hodnota obvykle není potřebná. Nicméně v některých " +"případech, kde se rychlosti funkcí výrazně liší, může poskytnout marginální " +"přínos. Například při agresivních zpomaleních způsobených přesahy. V těchto " +"případech se doporučuje vysoká hodnota kolem 300-350 mm3/s2, protože to " +"umožňuje dostatečné vyhlazení pro pomoc při dosažení plynulejšího přechodu " +"tlaku při extruzi.\n" +"\n" +"Pro pomalejší tiskárny bez tlakového předstihu by měla být hodnota nastavena " +"mnohem nižší. Pro přímé pohony je hodnota 10-15 mm3/s2 dobrým výchozím " +"bodem, a pro styl Bowden 5-10 mm3/s2. \n" +"\n" +"Tato funkce je známa jako Pressure Equalizer v programu Prusa Slicer.\n" +"\n" +"Poznámka: Tato hodnota zakazuje obloukové přizpůsobení." + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "Délka úseku pro vyhlazení" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Nižší hodnota způsobí hladší přechody rychlosti extruze. To však má za " +"následek výrazně větší soubor G-kódu a více instrukcí pro tiskárnu. \n" +"\n" +"Výchozí hodnota 3 dobře funguje ve většině případů. Pokud vaše tiskárna má " +"problémy, zkuste zvýšit tuto hodnotu, abyste snížili počet úprav\n" +"\n" +"Povolené hodnoty: 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "Minimální rychlost ventilátoru chlazení dílů" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Rychlost ventilátoru pro doplňkové chlazení částí. Ventilátor pro doplňkové " +"chlazení bude běžet touto rychlostí během tisku, s výjimkou prvních několika " +"vrstev, které jsou definovány vrstvami bez chlazení.\n" +"Pro použití této funkce povolte ventilátor pro doplňkové chlazení v " +"nastavení tiskárny. G-kódový příkaz: M106 P2 S(0-255)" + +msgid "Min" +msgstr "Min" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"Nejnižší výška tisknutelné vrstvy pro extruder. Používá se k omezení " +"minimální výšky vrstvy při povolení adaptivní výšky vrstvy" + +msgid "Min print speed" +msgstr "Minimální rychlost tisku" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" + +msgid "Nozzle diameter" +msgstr "Průměr trysky" + +msgid "Diameter of nozzle" +msgstr "Průměr trysky" + +msgid "Configuration notes" +msgstr "Poznámky k nastavení" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Zde můžete zadat své osobní poznámky. Tento text bude přidán do komentáře " +"záhlaví G-kódu." + +msgid "Host Type" +msgstr "Typ tiskového serveru" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca může nahrát soubory G-kódu do tiskového serveru. Toto pole musí " +"obsahovat druh tiskového serveru." + +msgid "Nozzle volume" +msgstr "Objem trysky" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Objem trysky mezi frézou a koncem trysky" + +msgid "Cooling tube position" +msgstr "Pozice chladící trubičky" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "Vzdálenost ze středu chladící trubičky ke špičce extruderu." + +msgid "Cooling tube length" +msgstr "Délka chladící trubičky" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Délka kovové trubičky určené pro ochlazení a zformování filamentu po " +"vytažení z extruderu." + +msgid "High extruder current on filament swap" +msgstr "Zvýšený proud do extruderového motoru při výměně filamentu" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Může být užitečné zvýšit proud motoru extruderu během sekvence výměny " +"filamentu, aby se umožnily vysoké rychlosti zavádění filamentu a aby se " +"překonal odpor při zavádění filamentu s ošklivě tvarovanou špičkou." + +msgid "Filament parking position" +msgstr "Parkovací pozice filamentu" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Vzdálenost špičky extruderu od místa, kde je zaparkován filament při " +"vytažení. Měla by se shodovat s hodnotou ve firmware tiskárny." + +msgid "Extra loading distance" +msgstr "Extra délka při zavádění" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Když je hodnota nastavena na nulu, vzdálenost o kterou se filament posune " +"během zavádění, je stejná, jako zpětný posun během vysouvání filamentu. Je-" +"li hodnota kladná, je filament posunut více,. Je-li hodnota záporná, posun " +"při zavádění je kratší než při vysouvání." + +msgid "Start end points" +msgstr "Začátek konec body" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "Počáteční a koncový bod, který je od oblasti řezačky po popelnici." + +msgid "Reduce infill retraction" +msgstr "Omezení retrakcí ve výplni" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Omezte retrakce, když je pohyb v oblasti výplně absolutně. To znamená, že " +"vytékání není vidět. To může zkrátit dobu retrakcí u složitého modelu a " +"ušetřit čas tisku, ale zpomalit krájení a generování G-kódu" + +msgid "Filename format" +msgstr "Formát názvu souboru" + +msgid "User can self-define the project file name when export" +msgstr "Uživatel může sám definovat název souboru projektu při exportu" + +msgid "Make overhangs printable" +msgstr "Umožnit tisk převisů" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "Upravit geometrii pro tisk převisů bez podpůrného materiálu." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Umožnit tisk převisů maximálního úhlu" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Maximální úhel převisů, který bude povolen pro umožnění tisku strmějších " +"převisů. 90° nezmění model vůbec a umožní jakýkoli převis, zatímco 0 nahradí " +"všechny převisy kuželovým materiálem." + +msgid "Make overhangs printable - Hole area" +msgstr "Oblast otvoru pro tisk převisu bez podpěr" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Maximální plocha otvoru v základně modelu před tím, než bude vyplněna " +"kuželovým materiálem. Hodnota 0 vyplní všechny díry v základně modelu." + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Detekovat převisy stěn" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Zjistěte procento převisů vzhledem k šířce extruze a použijte jinou rychlost " +"tisku. Pro 100%% převisy se použije rychlost mostu." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Šířka extruze vnitřní stěny. Pokud je vyjádřena jako %, vypočítá se vzhledem " +"k průměru trysky." + +msgid "Speed of inner wall" +msgstr "Rychlost vnitřní stěny" + +msgid "Number of walls of every layer" +msgstr "Počet perimetrů/stěn každé vrstvy" + +msgid "Alternate extra wall" +msgstr "" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Pokud chcete výstupní G-kód zpracovat pomocí vlastních skriptů, stačí zde " +"uvést jejich absolutní cesty. Více skriptů oddělte středníkem. Skriptu bude " +"předána absolutní cesta k souboru G-kódu jako první argument a mohou přístup " +"k nastavení konfigurace Snapmaker Orca čtením proměnných prostředí." + +msgid "Printer notes" +msgstr "Poznámky o tiskárně" + +msgid "You can put your notes regarding the printer here." +msgstr "Zde můžete uvést poznámky týkající se tiskárny." + +msgid "Raft contact Z distance" +msgstr "Mezera mezi objektem a raftem v ose Z" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "Mezera Z mezi objektem a raftem. Ignorováno pro rozpustné rozhraní" + +msgid "Raft expansion" +msgstr "Rozšíření raftu" + +msgid "Expand all raft layers in XY plane" +msgstr "Rozšířit všechny vrstvy raftu v rovině XY" + +msgid "Initial layer density" +msgstr "Počáteční hustota vrstvy" + +msgid "Density of the first raft or support layer" +msgstr "Hustota prvního vrstvy raftu nebo podpůrné vrstvy" + +msgid "Initial layer expansion" +msgstr "Rozšíření první vrstvy" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Rozšiřte první raft nebo podpůrnou vrstvu pro zlepšení přilnavosti k podložce" + +msgid "Raft layers" +msgstr "Vrstev raftu" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"Objekt bude zvednut o tento počet podpůrných vrstev. Tuto funkci použijte, " +"abyste se vyhnuli obtékání při tisku ABS" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"Cesta G-kódu se generuje po zjednodušení obrysu modelu, aby se předešlo " +"příliš velkému počtu bodů a Linek gkódu v souboru gkód. Menší hodnota " +"znamená vyšší rozlišení a více času na slicování" + +msgid "Travel distance threshold" +msgstr "Hranice cestovní vzdálenosti" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Spusťte retrakci pouze tehdy, když je dráha jízdy delší než tato hraniční " +"hodnota" + +msgid "Retract amount before wipe" +msgstr "Délka retrakce před očištěním" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "Délka rychlé retrakce před očištěním, vzhledem k délce retrakce" + +msgid "Retract when change layer" +msgstr "Retrakce při změně vrstvy" + +msgid "Force a retraction when changes layer" +msgstr "Vynutit retrakci při změně vrstvy" + +msgid "Retraction Length" +msgstr "Vzdálenost retrakce" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Některé množství materiálu v extruderu je staženo zpět, aby se zabránilo " +"slizu při dlouhém pohybu. Nastavte nulu, abyste zablokovali retrakce" + +msgid "Long retraction when cut(experimental)" +msgstr "" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" + +msgid "Retraction distance when cut" +msgstr "" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" + +msgid "Z hop when retract" +msgstr "Z hop při retrakci" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Kdykoli je retrakce provedena, tryska se trochu zvedne, aby se vytvořila " +"mezera mezi tryskou a tiskem. Zabraňuje tomu, aby tryska zasáhla tisk při " +"pohybu. Použití spirálové linky ke zvednutí z může zabránit stringování" + +msgid "Z hop lower boundary" +msgstr "Dolní mez Z hop" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Zvýšení Z bude mít vliv na Z hop pouze tehdy, pokud je hodnota Z nad touto " +"mezí a zároveň podle parametru: \"Horní mez Z hop\"" + +msgid "Z hop upper boundary" +msgstr "Horní mez Z hop" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Pokud je tato hodnota kladná, Z hop bude mít vliv pouze tehdy, pokud je " +"hodnota Z nad dolní mezí Z hop a zároveň pod touto hodnotou" + +msgid "Z hop type" +msgstr "Typ Z hop" + +msgid "Slope" +msgstr "Sklon" + +msgid "Spiral" +msgstr "Spirála" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "Zvednout Z pouze nad" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Zadání kladné hodnoty se zdvih Z uskuteční pouze nad zadanou absolutní " +"hodnotou Z." + +msgid "Only lift Z below" +msgstr "Zvednout Z pouze pod" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Zadání kladné hodnoty se zdvih Z uskuteční pouze pod zadanou absolutní " +"hodnotou Z." + +msgid "On surfaces" +msgstr "Na površích" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Povolit chování Z Hop. Tato volba je ovlivněna výše uvedenými nastaveními " +"(Pouze zvednout Z nad/pod)." + +msgid "All Surfaces" +msgstr "Všechny povrchy" + +msgid "Top Only" +msgstr "Pouze Horní" + +msgid "Bottom Only" +msgstr "Pouze Spodní" + +msgid "Top and Bottom" +msgstr "Horní a Spodní" + +msgid "Extra length on restart" +msgstr "Extra vzdálenost při návratu" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Když je retrakce kompenzována po rychloposunu, extruder vytlačuje toto další " +"množství filamentu. Toto nastavení je zřídkakdy potřeba." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Když je retrakce kompenzována po změně nástroje, extruder vytlačuje toto " +"další množství filamentu." + +msgid "Retraction Speed" +msgstr "Rychlost Retrakce" + +msgid "Speed of retractions" +msgstr "Rychlost Retrakce" + +msgid "Deretraction Speed" +msgstr "Rychlost Deretrakce" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Rychlost pro opětovné vkládání filamentu do extruderu. Nula znamená stejnou " +"rychlost jako pro retrakce" + +msgid "Use firmware retraction" +msgstr "Použít retrakce z firmwaru" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"Toto experimentální nastavení používá příkazy G10 a G11, aby si firmware " +"poradil s retrakcí. Toto je podporováno pouze v posledních verzích firmwaru " +"Marlin." + +msgid "Show auto-calibration marks" +msgstr "Zobrazit automatické kalibrační značky" + +msgid "Disable set remaining print time" +msgstr "" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" + +msgid "Seam position" +msgstr "Pozice švu" + +msgid "The start position to print each part of outer wall" +msgstr "Počáteční pozice pro tisk každé části vnější stěny" + +msgid "Nearest" +msgstr "Nejbližší" + +msgid "Aligned" +msgstr "Zarovnaný" + +msgid "Back" +msgstr "Zezadu" + +msgid "Random" +msgstr "Náhodný" + +msgid "Staggered inner seams" +msgstr "Odstupňované vnitřní švy" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Tato možnost způsobí, že vnitřní švy budou posunuty dozadu na základě jejich " +"hloubky, vytvářející střídavý (zigzag) vzor." + +msgid "Seam gap" +msgstr "Mezera švu" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Aby se snížila viditelnost spoje při uzavřené extruzi, je smyčka přerušena a " +"zkrácena o stanovenou hodnotu.\n" +"Tato hodnota může být zadána v milimetrech nebo jako procento aktuálního " +"průměru trysky. Výchozí hodnota pro tento parametr je 10%." + +msgid "Scarf joint seam (beta)" +msgstr "" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" + +msgid "Conditional scarf joint" +msgstr "" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" + +msgid "Conditional angle threshold" +msgstr "" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" + +msgid "Conditional overhang threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" + +msgid "Scarf joint speed" +msgstr "" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" + +msgid "Scarf joint flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" + +msgid "Scarf start height" +msgstr "" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" + +msgid "Scarf around entire wall" +msgstr "" + +msgid "The scarf extends to the entire length of the wall." +msgstr "" + +msgid "Scarf length" +msgstr "" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" + +msgid "Scarf steps" +msgstr "" + +msgid "Minimum number of segments of each scarf." +msgstr "" + +msgid "Scarf joint for inner walls" +msgstr "" + +msgid "Use scarf joint for inner walls as well." +msgstr "" + +msgid "Role base wipe speed" +msgstr "Rychlost čištění podle role" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"Rychlost čištění je určena rychlostí aktuální role extruze, např. pokud je " +"činnost čištění provedena bezprostředně po extruzi vnější stěny, rychlost " +"extruze vnější stěny bude využita pro činnost čištění." + +msgid "Wipe on loops" +msgstr "Čistit na smyčce" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Aby byla minimalizována viditelnost švu při extruzi s uzavřenou smyčkou, je " +"proveden malý pohyb dovnitř předtím, než vytlačovací stroj opustí smyčku." + +msgid "Wipe before external loop" +msgstr "" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" + +msgid "Wipe speed" +msgstr "Rychlost čištění" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"Rychlost čištění je určena nastavením rychlosti specifikovaným v této " +"konfiguraci. Pokud je hodnota vyjádřena v procentech (např. 80%), bude " +"vypočítána na základě výše nastavené rychlosti jízdy. Výchozí hodnota pro " +"tento parametr je 80%" + +msgid "Skirt distance" +msgstr "Vzdálenost obrysu" + +msgid "Distance from skirt to brim or object" +msgstr "Vzdálenost od Obrysu k Límci nebo předmětu" + +msgid "Skirt height" +msgstr "Výška obrysu" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Kolik vrstev Obrysu. Obvykle pouze jedna vrstva" + +msgid "Draft shield" +msgstr "Ochranný štít" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" + +msgid "Limited" +msgstr "Omezeno" + +msgid "Enabled" +msgstr "Povoleno" + +msgid "Skirt loops" +msgstr "Obrysové smyčky" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "Počet smyček pro obrys. Nula znamená deaktivaci obrysu" + +msgid "Skirt speed" +msgstr "Rychlost obrysu" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" +"Rychlost obrysu, v mm/s. Nula znamená použít výchozí rychlost vrstvy extruze." + +msgid "Skirt minimum extrusion length" +msgstr "" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"Rychlost tisku v exportovaném kódu gkód se zpomalí, když je odhadovaná doba " +"vrstvy kratší než tato hodnota, aby se dosáhlo lepšího chlazení pro tyto " +"vrstvy" + +msgid "Minimum sparse infill threshold" +msgstr "Minimální hranice vnitřní výplně" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"Řídká oblast výplně, která je menší než hraniční hodnota, je nahrazena " +"vnitřní plnou výplní" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Šířka extruze pro vnitřní výplň. Pokud je vyjádřena jako %, bude vypočtena " +"vzhledem k průměru trysky." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "Rychlost vnitřní plné výplně, nikoli horní a spodní plochy" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Spiralize vyhlazuje pohyby z vnějšího obrysu. A přemění pevný model na " +"jednostěnný tisk s pevnými spodními vrstvami. Konečný vygenerovaný model " +"nemá žádný šev" + +msgid "Smooth Spiral" +msgstr "" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" + +msgid "Max XY Smoothing" +msgstr "" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Pokud je vybrán plynulý nebo tradiční režim, pro každý tisk se vygeneruje " +"časosběrné video. Po vytištění každé vrstvy je pořízen snímek komorovou " +"kamerou. Všechny tyto snímky jsou po dokončení tisku složeny do časosběrného " +"videa. Pokud je vybrán hladký režim, nástrojová hlava se po vytištění každé " +"vrstvy přesune do přebytečného skluzu a poté pořídí snímek. Kvůli tomu, že " +"se během procesu tavení filamentu může unikat z trysky, pro hladký režim je " +"vyžadována čistící věž pro otření trysky." + +msgid "Traditional" +msgstr "Tradiční" + +msgid "Temperature variation" +msgstr "Kolísání teploty" + +msgid "Start G-code" +msgstr "Začátek G-kódu" + +msgid "Start G-code when start the whole printing" +msgstr "Start G-kód při spuštění celého tisku" + +msgid "Start G-code when start the printing of this filament" +msgstr "Start G-kód při zahájení tisku tohoto filamentu" + +msgid "Single Extruder Multi Material" +msgstr "MultiMaterial tisk s jedním extruderem" + +msgid "Use single nozzle to print multi filament" +msgstr "Použít jednu trysku pro tisk s více filamenty" + +msgid "Manual Filament Change" +msgstr "Manuální výměna filamentu" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Povolte tuto volbu k zneplatnění vlastního Změnit filament G-kódu pouze na " +"začátku tisku. Příkaz pro změnu nástroje (např. T0) bude přeskočen po celou " +"délku tisku. Toto je užitečné pro manuální tisk s více materiály, kde " +"používáme M600/PAUZA k vyvolání akce manuální změny filamentu." + +msgid "Purge in prime tower" +msgstr "Očistit do čistící věže" + +msgid "Purge remaining filament into prime tower" +msgstr "Očistěte zbývající filament do čistící věže" + +msgid "Enable filament ramming" +msgstr "Povolit rapidní extruzi filamentu" + +msgid "No sparse layers (beta)" +msgstr "" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Pokud je tato možnost povolena, nebude čistící věž vytištěna ve vrstvách bez " +"změny barvy. U vrstev s výměnou sjede extruder směrem dolů a vytiskne vrstvu " +"čistící věže. Uživatel je odpovědný za to, že nedojde ke kolizi tiskové " +"hlavy s tiskem." + +msgid "Prime all printing extruders" +msgstr "Příprava všech tiskových extruderů" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Pokud je tato možnost povolena, všechny tiskové extrudery na začátku tisku " +"vytlačí na předním okraji podložky malé množství materiálu." + +msgid "Slice gap closing radius" +msgstr "Poloměr uzavření mezery v tiskové vrstvě" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Praskliny menší než 2x poloměr uzavření mezery se vyplní během slicování " +"trojúhelníkových sítí. Operace uzavírání mezery může snížit konečné " +"rozlišení tisku, proto je vhodné udržovat rozumně nízkou hodnotu." + +msgid "Slicing Mode" +msgstr "Režim Slicování" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Pro modely letadel 3DLabPrint použijte \"Paritní vyplňování\". Použijte " +"\"Uzavírání děr\" pro uzavření všech otvorů v modelu." + +msgid "Regular" +msgstr "Obvyklý" + +msgid "Even-odd" +msgstr "Paritní vyplňování" + +msgid "Close holes" +msgstr "Uzavírání děr" + +msgid "Z offset" +msgstr "Odsazení Z" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Tato hodnota bude přidána (nebo odečtena) ze všech souřadnic Z ve výstupním " +"G-kódu. Používá se ke kompenzování špatné pozice endstopu Z. Například pokud " +"endstop 0 skutečně ponechá trysku 0,3 mm daleko od tiskové podložky, " +"nastavte hodnotu -0,3 (nebo dolaďte svůj koncový doraz)." + +msgid "Enable support" +msgstr "Povolit podpěry" + +msgid "Enable support generation." +msgstr "Povolit generování podpěr." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"Normální(auto) a Strom(auto) se používají k automatickému generování podpěr. " +"Pokud je vybrána možnost Normální(manual) nebo Strom(manual), budou " +"generovány pouze vynucené podpěry" + +msgid "normal(auto)" +msgstr "Normální (auto)" + +msgid "tree(auto)" +msgstr "Strom (auto)" + +msgid "normal(manual)" +msgstr "Normální (manuální)" + +msgid "tree(manual)" +msgstr "Strom (manuální)" + +msgid "Support/object xy distance" +msgstr "Podpěry/Objekt xy vzdálenost" + +msgid "XY separation between an object and its support" +msgstr "XY vzdálenost mezi objektem a podpěrami" + +msgid "Pattern angle" +msgstr "Úhel vzoru" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "Použijte toto nastavení k otočení vzoru podpěr ve vodorovné rovině." + +msgid "On build plate only" +msgstr "Pouze na podložce" + +msgid "Don't create support on model surface, only on build plate" +msgstr "Nevytvářejte podpěry na povrchu modelu, pouze na podložce" + +msgid "Support critical regions only" +msgstr "Podpěry pouze pro kritické oblasti" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Vytvářejte podpěry pouze pro kritické oblasti včetně ostrého ocasu, konzoly " +"atd." + +msgid "Remove small overhangs" +msgstr "Odstranit malé převisy" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "Odstranit malé převisy, které pravděpodobně nepotřebují podpěry." + +msgid "Top Z distance" +msgstr "Vzdálenost horní Z" + +msgid "The z gap between the top support interface and object" +msgstr "Z Mezera mezi horním kontaktní vrstvou podpěr a objektem" + +msgid "Bottom Z distance" +msgstr "Vzdálenost dolní Z" + +msgid "The z gap between the bottom support interface and object" +msgstr "Z Mezera mezi spodní kontaktní vrstvou podpěr a objektem" + +msgid "Support/raft base" +msgstr "Podpěry/raft základna" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filament pro tiskové podpěry základen a raftu. \"Výchozí\" znamená, že pro " +"podpěry není použit žádný konkrétní filament a je použit aktuální filament" + +msgid "Avoid interface filament for base" +msgstr "" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Šířka extruze pro podpěry. Pokud je vyjádřena jako %, bude vypočtena " +"vzhledem k průměru trysky." + +msgid "Interface use loop pattern" +msgstr "Použijte vzor smyčky" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Zakrýt smyčkami horní kontaktní vrstvu podpěr. Ve výchozím nastavení " +"zakázáno." + +msgid "Support/raft interface" +msgstr "Podpěry/raft kontaktní vrstva" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filament k tisku kontaktních vrstev podpěr. \"Výchozí\" znamená, že pro " +"kontaktní vrstvy podpěr není použit žádný konkrétní filament a je použit " +"aktuální filament" + +msgid "Top interface layers" +msgstr "Vrchní kontaktní vrstvy" + +msgid "Number of top interface layers" +msgstr "Počet nejvyšších vrstev" + +msgid "Bottom interface layers" +msgstr "Spodní kontaktní vrstvy" + +msgid "Number of bottom interface layers" +msgstr "" + +msgid "Same as top" +msgstr "Stejné jako vrchní" + +msgid "Top interface spacing" +msgstr "Horní rozestup" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "Rozestup linek. Nula znamená pevné rozhraní" + +msgid "Bottom interface spacing" +msgstr "Spodní rozestup" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "Rozestup linek spodního. Nula znamená plné rozhraní" + +msgid "Speed of support interface" +msgstr "Rychlost pro kontaktní vrstvy podpěr" + +msgid "Base pattern" +msgstr "Základní vzor" + +msgid "Line pattern of support" +msgstr "Čárový vzor podpěry" + +msgid "Rectilinear grid" +msgstr "Přímočará mřížka" + +msgid "Hollow" +msgstr "Dutá" + +msgid "Interface pattern" +msgstr "Vzor kontaktní vrstvy" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Vzor čáry pro kontaktní vrstvy podpěr. Výchozí vzor pro rozhraní nerozpustné " +"podpěry je přímočarý, zatímco výchozí vzor pro rozhraní rozpustné podpěry je " +"koncentrický" + +msgid "Rectilinear Interlaced" +msgstr "Přímočarý Prokládaný" + +msgid "Base pattern spacing" +msgstr "Rozestup základního vzoru" + +msgid "Spacing between support lines" +msgstr "Mezery mezi podpůrnými linkami" + +msgid "Normal Support expansion" +msgstr "Rozšíření normální podpěry" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "Rozšířit (+) nebo zmenšit (-) vodorovné rozpětí normální podpěry" + +msgid "Speed of support" +msgstr "Rychlost podpěr" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"Styl a tvar podpěr. Pro běžnou podpěru, projekce podpěry do pravidelné " +"mřížky vytvoří stabilnější podpěry (výchozí), zatímco pevné věže pro podpěru " +"ušetří materiál a sníží poškození objektu.\n" +"Pro stromovou podpěru, tenký a organický styl bude agresivněji slučovat " +"větve a ušetří mnoho materiálu (výchozí organický), zatímco hybridní styl " +"vytvoří podobnou strukturu jako běžná podpěra pod velkými plochými převisy." + +msgid "Snug" +msgstr "Přiléhavý" + +msgid "Tree Slim" +msgstr "Strom Tenký" + +msgid "Tree Strong" +msgstr "Strom Silný" + +msgid "Tree Hybrid" +msgstr "Strom Hybrid" + +msgid "Organic" +msgstr "Organické" + +msgid "Independent support layer height" +msgstr "Výška nezávislé podpůrné vrstvy" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Vrstva podpěry používá nezávislou výšku vrstvy vzhledem k vrstvě objektu. " +"Tímto je umožněno upravit mezeru ve směru osy Z a zároveň ušetřit čas tisku. " +"Tato možnost bude neplatná, pokud je povolena věž pro čištění trysky." + +msgid "Threshold angle" +msgstr "Hraniční úhel" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Podpěry budou generovány pro převisy, jejichž úhel sklonu je pod hraniční " +"hodnotou." + +msgid "Tree support branch angle" +msgstr "Úhel větve podpěr stromu" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Toto nastavení určuje maximální úhel převisů, který mohou větve podpěry " +"stromu dělat. Pokud se úhel zvětší, větve mohou být vytištěny více " +"vodorovně, což jim umožní dosáhnout dále." + +msgid "Preferred Branch Angle" +msgstr "Preferovaný úhel větve" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"Upřednostňovaný úhel větví, pokud se větve musí vyhnout modelu. Použijte " +"menší úhel, aby byly svislejší a stabilnější. Použijte vyšší úhel, aby se " +"větve dříve spojovaly." + +msgid "Tree support branch distance" +msgstr "Vzdálenost větví podpěr stromů" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "Toto nastavení určuje vzdálenost mezi sousedními uzly podpěr stromů." + +msgid "Branch Density" +msgstr "Hustota větví" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"Upravuje hustotu podpěrných špiček větví. Vyšší hodnota vede k lepším " +"převisům, ale podpěry se hůře odstraňují. Proto se doporučuje povolit vrchní " +"kontaktní vrstvy podpěr namísto vysoké hodnoty hustoty větví." + +msgid "Adaptive layer height" +msgstr "Adaptivní výška vrstvy" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"Povolení této možnosti znamená, že výška stromové podpůrné vrstvy kromě " +"první bude automaticky vypočtena " + +msgid "Auto brim width" +msgstr "Automatická šířka límce" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"Povolení této možnosti znamená, že šířka límce pro podpěry stromu budou " +"automaticky vypočítány" + +msgid "Tree support brim width" +msgstr "Šířka Límce podpěr stromů" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "Vzdálenost od větve stromu k nejvzdálenější linii Límce" + +msgid "Tip Diameter" +msgstr "Průměr hrotu" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Průměr vrcholu špičky větví organických podpěr." + +msgid "Tree support branch diameter" +msgstr "Průměr větve podpěr stromů" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Toto nastavení určuje počáteční průměr uzlů podpěr." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Úhel definující průměr větve" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"Úhel, který udává průměr větví, jak se postupně zesilují směrem dolů. Úhel 0 " +"způsobí, že větve budou mít po celé délce stejnou tloušťku. Trochu větší " +"úhel může zvýšit stabilitu organických podpěr." + +msgid "Branch Diameter with double walls" +msgstr "Průměr větve s dvojitými stěnami" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"Větve s plochou větší, než je plocha kruhu o zadaném průměru, budou kvůli " +"stabilitě tištěny s dvojitými stěnami. Nastavte tuto hodnotu na nulu, abyste " +"zakázali dvojité stěny." + +msgid "Support wall loops" +msgstr "" + +msgid "This setting specify the count of walls around support" +msgstr "" + +msgid "Tree support with infill" +msgstr "Podpěry stromu s výplní" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Toto nastavení určuje, zda se má přidat výplň do velkých dutin podpěr stromů" + +msgid "Activate temperature control" +msgstr "Aktivovat řízení teploty" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Zapněte tuto volbu pro řízení teploty v komoře. Příkaz M191 bude přidán před " +"\"machine_start_gcode\"\n" +"G-kód příkazy: M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "Teplota v komoře" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Vyšší teplota komory může pomoci potlačit nebo snížit odchlipování a " +"potenciálně vést k vyšší pevnosti spojů mezi vrstvami pro materiály s " +"vysokou teplotou, jako je ABS, ASA, PC, PA a další. Zároveň se však zhorší " +"filtrace vzduchu pro ABS a ASA. Naopak pro PLA, PETG, TPU, PVA a další " +"materiály s nízkou teplotou by teplota komory neměla být vysoká, aby se " +"předešlo zanášení, takže je velmi doporučeno použít hodnotu 0, která znamená " +"vypnutí" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Teplota trysky pro vrstvy po počáteční" + +msgid "Detect thin wall" +msgstr "Detekce tenkých stěn" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Detekujte tenkou stěnu, která nemůže obsahovat dvě šířky extruze. A k tisku " +"použijte jednu linku. Možná se to nevytiskne moc dobře, protože to není " +"uzavřená smyčka" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Tento gkód se vloží při výměně filamentu, včetně příkazu T ke spuštění " +"výměny nástroje" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "Tento G-kód je vložen při změně role extruze" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Šířka extruze pro horní plochy. Pokud je vyjádřena jako %, bude vypočtena " +"vzhledem k průměru trysky." + +msgid "Speed of top surface infill which is solid" +msgstr "Rychlost výplně horních ploch, která je plná" + +msgid "Top shell layers" +msgstr "Vrchní vrstvy skořepiny" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Toto je počet pevných vrstev vrchní skořepiny, včetně vrchní povrchové " +"vrstvy. Když je tloušťka vypočtená touto hodnotou tenčí než tloušťka vrchní " +"skořepiny, vrchní vrstvy skořepiny se zvětší" + +msgid "Top solid layers" +msgstr "Vrchních plných vrstev" + +msgid "Top shell thickness" +msgstr "Tloušťka horní skořepiny" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"Počet vrchních pevných vrstev se při krájení zvýší, pokud je tloušťka " +"vypočítaná horními vrstvami skořepiny tenčí než tato hodnota. Tím se lze " +"vyhnout příliš tenké skořepině, když je výška vrstvy malá. 0 znamená, že " +"toto nastavení je zakázáno a tloušťka vrchní skořepiny je absolutně určován " +"vrchními vrstvami pláště" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Rychlost pohybu, která je rychlejší a bez extruze" + +msgid "Wipe while retracting" +msgstr "Očistit při retrakci" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Při retrakci přesuňte trysku podél poslední dráhy extruze, abyste vyčistili " +"uniklý materiál na trysce. To může minimalizovat skvrny při tisku nového " +"dílu po cestě" + +msgid "Wipe Distance" +msgstr "Vzdálenost čištění" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"Věž pro čištění se může použít k čištění zbytků na trysce a stabilizaci " +"tlaku v trysce, aby se předešlo vzniku vad při tisku objektů." + +msgid "Purging volumes" +msgstr "Objemy čištění" + +msgid "Flush multiplier" +msgstr "Čistit multiplikátor" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"Skutečný objem čištění se rovná multiplikátoru čištění vynásobenému objemy " +"čištění v tabulce." + +msgid "Prime volume" +msgstr "Základní objem" + +msgid "The volume of material to prime extruder on tower." +msgstr "Objem materiálu k naplnění extruderu na věži." + +msgid "Width of prime tower" +msgstr "Šířka pro čistící věž" + +msgid "Wipe tower rotation angle" +msgstr "Úhel natočení čistící věže" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Úhel natočení čistící věže s ohledem na osu X." + +msgid "Stabilization cone apex angle" +msgstr "Úhel vrcholu stabilizačního kužele" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Úhel na vrcholu kužele, který se používá ke stabilizaci čistící věže. Větší " +"úhel znamená širší základnu." + +msgid "Wipe tower purge lines spacing" +msgstr "Rozteč čistících linek v čistící věži" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Rozteč čistících linek v čistící věži." + +msgid "Maximum wipe tower print speed" +msgstr "" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" + +msgid "Wipe tower extruder" +msgstr "Extruder čistící věže" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"Extruder, který se použije při tisku obvodu čistící věže. Nastavte na 0, " +"abyste použili ten, který je k dispozici (přednostně s nerozpustným " +"filamentem)." + +msgid "Purging volumes - load/unload volumes" +msgstr "Objemy čištění - zaváděné/vyjmuté objemy" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"Tento vektor ukládá potřebné objemy pro změnu z/na každý extruder používaný " +"na čistící věži. Tyto hodnoty jsou použity pro zjednodušení vytvoření " +"celkových objemů čištění níže." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Čištění po výměně filamentu bude provedeno uvnitř výplní objektů. To může " +"snížit množství odpadu a zkrátit dobu tisku. Pokud jsou stěny potištěny " +"průhledným filamentem, výplň smíšených barev bude vidět venku. Neprojeví se " +"to pokud není povolena čistící věž." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"Čištění po výměně filamentu bude provedeno uvnitř podpěry objektů. To může " +"snížit množství odpadu a zkrátit dobu tisku. Neprojeví se, pokud není " +"aktivována čistící věž." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Tento objekt bude použit k očištění trysky po výměně filamentu, aby se " +"ušetřil filament a zkrátila se doba tisku. V důsledku toho budou barvy " +"objektů smíšené. Neprojeví se to, pokud není aktivována čistící věž." + +msgid "Maximal bridging distance" +msgstr "Maximální vzdálenost přemostění" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "Maximální vzdálenost mezi podpěrami u částí s řídkou výplní." + +msgid "X-Y hole compensation" +msgstr "X-Y Kompenzace otvoru" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Díry objektu se zvětší nebo zmenší v rovině XY o nakonfigurovanou hodnotu. " +"Kladná hodnota zvětší díry. Záporná hodnota díry zmenšuje. Tato funkce se " +"používá k mírné úpravě velikosti, když má objekt problém se sestavováním" + +msgid "X-Y contour compensation" +msgstr "X-Y Kompenzace obrysu" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"Kontura objektu se zvětší nebo zmenší v rovině XY o nakonfigurovanou " +"hodnotu. Kladná hodnota zvětší obrys. Záporná hodnota zmenší obrys. Tato " +"funkce se používá k mírné úpravě velikosti, když má objekt problém se " +"sestavováním" + +msgid "Convert holes to polyholes" +msgstr "Převést otvor na polyotvor (Mnohoúhelníkový-Otvor)" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Hledá téměř kruhové otvory, které zasahují do více než jedé vrstvy a převede " +"geometrii na polyotvory (Mnohoúhelníkový Otvor). Pro výpočet polyotvoru " +"použijte velikost trysky a (největší) průměr.\n" +"Viz http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "Míra detekce polyotvoru" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Maximální odchylka bodu od odhadovaného poloměru kruhu.\n" +"Protože válce jsou často exportovány jako trojúhelníky různé velikosti, body " +"se nemusí nacházet na obvodu kruhu. Toto nastavení vám umožňuje určitou " +"pružnost pro rozšíření detekce.\n" +"V mm nebo v % o poloměru." + +msgid "Polyhole twist" +msgstr "Otočit polyotvor" + +msgid "Rotate the polyhole every layer." +msgstr "Otočit polyotvor každou vrstvu." + +msgid "G-code thumbnails" +msgstr "Náhledy G-kódu" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Velikosti obrázků budou uloženy do souborů .gcode / .sl1 / .sl1s, v " +"následujícím formátu: \"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "Formát náhledových obrázků G-kódu" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Formát náhledových obrázků G-kódu: Pro nejlepší kvalitu PNG, pro nejmenší " +"velikost JPG, pro firmware s malou pamětí QOI" + +msgid "Use relative E distances" +msgstr "Použít relativní E vzdálenosti" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"Klasický generátor stěn produkuje stěny s konstantní extruzní šířkou a pro " +"velmi tenké oblasti se používá gap-fill. Arachne engine produkuje stěny s " +"proměnnou extruzní šířkou." + +msgid "Classic" +msgstr "Klasický" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Délka přechodu stěny" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Při přechodu mezi různými počty stěn, jak se díl ztenčuje, je vyhrazeno " +"určité množství prostoru pro rozdělení nebo spojení segmentů stěny. " +"Vyjadřuje se jako procento průměru trysky" + +msgid "Wall transitioning filter margin" +msgstr "Filtr přechodového rozpětí stěny" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Zabránit přechodu mezi jednou dodatečnou stěnou a jednou méně. Tato mez " +"rozšiřuje rozsah šířek extruze na [Minimální šířka stěny - mezera, 2 * " +"Minimální šířka stěny + mezera]. Zvýšení této mezery snižuje počet přechodů, " +"což zase snižuje počet začátků/konec extruze a čas cestování. Nicméně velké " +"rozdíly ve šířce extruze mohou vést k nedostatečné nebo přílišné extruzi. Je " +"vyjádřena jako procento nad průměrem trysky" + +msgid "Wall transitioning threshold angle" +msgstr "Hraniční úhel přechodu stěny" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Kdy vytvořit přechody mezi sudým a lichým počtem stěn. Klínový tvar s úhlem " +"větším, než je toto nastavení, nebude mít přechody a do středu se " +"nevytisknou žádné stěny, které vyplní zbývající prostor. Zmenšením tohoto " +"nastavení se sníží počet a délka těchto středových stěn, ale může zanechat " +"mezery nebo přečnívat" + +msgid "Wall distribution count" +msgstr "Počet ovlivněných stěn" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"Počet stěn, počítáno od středu, přes které je třeba rozložit variaci. Nižší " +"hodnoty znamenají, že vnější stěny se nemění na šířku" + +msgid "Minimum feature size" +msgstr "Minimální velikost prvku" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Minimální tloušťka tenkých prvků. Prvky modelu, které jsou tenčí než tato " +"hodnota, nebudou vytištěny, zatímco prvky tlustší než minimální velikost " +"prvku budou rozšířeny na minimální šířku stěny. Vyjadřuje se jako procento " +"průměru trysky" + +msgid "Minimum wall length" +msgstr "" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" + +msgid "First layer minimum wall width" +msgstr "Minimální šířka stěny první vrstvy" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"Minimální šířka stěny, která by měla být použita pro první vrstvu, se " +"doporučuje nastavit na stejnou velikost jako tryska. Toto nastavení by mělo " +"zvýšit přilnavost." + +msgid "Minimum wall width" +msgstr "Minimální šířka stěny" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Šířka stěny, která nahradí tenké prvky (podle Minimální velikosti prvku) " +"modelu. Pokud je minimální šířka stěny tenčí než tloušťka prvku, zeď bude " +"stejně tlustá jako prvek samotný. Vyjadřuje se jako procento nad průměr " +"trysky" + +msgid "Detect narrow internal solid infill" +msgstr "Detekovat úzkou vnitřní plnou výplň" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Tato možnost automaticky rozpozná úzkou vnitřní plnou výplňovou oblast. Je-" +"li povolena, bude pro oblast použit soustředný vzor, aby se urychlil tisk. V " +"opačném případě se ve výchozím nastavení použije přímočarý vzor." + +msgid "invalid value " +msgstr "neplatná hodnota " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Neplatná hodnota, když je povolen režim spirálové vázy: " + +msgid "too large line width " +msgstr "příliš velká šířka extruze " + +msgid " not in range " +msgstr " není v dosahu " + +msgid "Minimum save" +msgstr "Uložit minimum" + +msgid "export 3mf with minimum size." +msgstr "exportovat 3mf s minimální velikostí." + +msgid "No check" +msgstr "Žádná kontrola" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"Neprovádět žádné kontrolní testy, například kontrolu konfliktů cesty g-kódu." + +msgid "Ensure on bed" +msgstr "Zajistit na podložce" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Zvedněte objekt nad podložku, když je částečně pod ní. Výchozí stav je " +"vypnutý" + +msgid "Orient Options" +msgstr "Orientační možnosti" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "Orientační možnosti: 0-vypnuto, 1-zapnuto, ostatní-auto" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Úhel rotace kolem osy Z v stupních." + +msgid "Rotate around Y" +msgstr "Rotace kolem osy Y" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Úhel rotace kolem osy Y v stupních." + +msgid "Data directory" +msgstr "Složka Data" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Načtěte a uložte nastavení z/do daného adresáře. To je užitečné pro " +"udržování různých profilů nebo konfigurací ze síťového úložiště." + +msgid "Load custom gcode" +msgstr "Načíst vlastní G-kód" + +msgid "Load custom gcode from json" +msgstr "Načíst vlastní G-kód z JSON" + +msgid "Current z-hop" +msgstr "Aktuální z-hop" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "Obsahuje z-hop na začátku vlastního bloku G-code." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Poloha extruderu na začátku vlastního bloku G-code. Pokud vlastní G-code " +"vytváří pohyb, měl by pohyb zapsat do této proměnné, aby PrusaSlicer věděl, " +"odkud se pohybuje, až získá zpět kontrolu." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"Stav retrakce na začátku vlastního G-code. Pokud vlastní G-code pohybuje " +"osou extruderu, měl by do této proměnné zapisovat, aby PrusaSlicer správně " +"zrušil deretrakce, když mu bude znovu předáno řízení." + +msgid "Extra deretraction" +msgstr "Extra deretrakce" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "Současně naplánované extra čištění extruderu po deretrakci." + +msgid "Current extruder" +msgstr "Aktuální extruder" + +msgid "Zero-based index of currently used extruder." +msgstr "Index aktuálně používaného extrudéru (počítáno do nuly)." + +msgid "Current object index" +msgstr "Aktuální index objektu" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Specifické pro sekvenční tisk. Index aktuálně tištěného objektu (počítáno do " +"nuly)." + +msgid "Has wipe tower" +msgstr "Má čistící věž" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Zda se v tisku generuje čistící věž." + +msgid "Initial extruder" +msgstr "Počáteční extruder" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Index prvního extruderu použitého při tisku (počítáno do nuly). Stejně jako " +"initial_tool." + +msgid "Initial tool" +msgstr "Počáteční nástroj" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Index prvního extruderu použitého při tisku (počítáno do nuly). Stejně jako " +"initial_extruder." + +msgid "Is extruder used?" +msgstr "Je extruder použitý?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" + +msgid "Volume per extruder" +msgstr "Objem pro každý extruder" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" +"Celkový objem filamentu vytlačeného daným extruderem během celého tisku." + +msgid "Total toolchanges" +msgstr "" + +msgid "Number of toolchanges during the print." +msgstr "Počet výměn nástrojů během tisku." + +msgid "Total volume" +msgstr "Celkový objem" + +msgid "Total volume of filament used during the entire print." +msgstr "Celkový objem filamentu použitý během celého tisku." + +msgid "Weight per extruder" +msgstr "Hmotnost pro každý extruder" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" + +msgid "Total weight" +msgstr "Celková hmotnost" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" + +msgid "Total layer count" +msgstr "Celkový počet vrstev" + +msgid "Number of layers in the entire print." +msgstr "Počet vrstev v celém tisku." + +msgid "Number of objects" +msgstr "Počet objektů" + +msgid "Total number of objects in the print." +msgstr "Celkový počet objektů v tisku." + +msgid "Number of instances" +msgstr "Počet instancí" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "Celkový počet instancí objektu v tisku, sečtený pro všechny objekty." + +msgid "Scale per object" +msgstr "Měřítko pro každý objekt" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" + +msgid "Input filename without extension" +msgstr "Název vstupního souboru bez přípony" + +msgid "Source filename of the first object, without extension." +msgstr "Název zdrojového souboru prvního objektu bez přípony." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "Vektor má dva prvky: souřadnice x a y bodu. Hodnoty v mm." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" +"Vektor má dva prvky: rozměr x a y ohraničujícího rámečku. Hodnoty v mm." + +msgid "First layer convex hull" +msgstr "Konvexní obal první vrstvy" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" + +msgid "Bottom-left corner of first layer bounding box" +msgstr "Levý dolní roh ohraničujícího rámečku v první vrstvě" + +msgid "Top-right corner of first layer bounding box" +msgstr "Pravý horní roh ohraničujícího rámečku v první vrstvě" + +msgid "Size of the first layer bounding box" +msgstr "Velikost ohraničujícího rámečku v první vrstvě" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "Levý dolní roh ohraničujícího rámečku tiskové podložky" + +msgid "Top-right corner of print bed bounding box" +msgstr "Pravý horní roh ohraničujícího rámečku tiskové podložky" + +msgid "Size of the print bed bounding box" +msgstr "Velikost ohraničujícího rámečku tiskové podložky" + +msgid "Timestamp" +msgstr "Časové razítko" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "Řetězec obsahující aktuální čas ve formátu rrrrMMdd-hhmmss." + +msgid "Day" +msgstr "Den" + +msgid "Hour" +msgstr "Hodina" + +msgid "Minute" +msgstr "Minuta" + +msgid "Print preset name" +msgstr "Název přednastavení tisku" + +msgid "Name of the print preset used for slicing." +msgstr "Název přednastavení tisku použitého pro slicování." + +msgid "Filament preset name" +msgstr "Název přednastavení filamentu" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Názvy přednastavení filamentu používaných pro slicování. Proměnná je vektor " +"obsahující jeden název pro každý extruder." + +msgid "Printer preset name" +msgstr "Název přednastavení tiskárny" + +msgid "Name of the printer preset used for slicing." +msgstr "Název přednastavení tiskárny použité pro slicování." + +msgid "Physical printer name" +msgstr "Fyzický název tiskárny" + +msgid "Name of the physical printer used for slicing." +msgstr "Název fyzické tiskárny použité pro slicování." + +msgid "Layer number" +msgstr "Číslo vrstvy" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" + +msgid "Layer z" +msgstr "" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Výška aktuální vrstvy nad tiskovou podložkou, měřeno k hornímu okraji vrstvy." + +msgid "Maximal layer z" +msgstr "" + +msgid "Height of the last layer above the print bed." +msgstr "Výška poslední vrstvy nad tiskovou podložkou." + +msgid "Filament extruder ID" +msgstr "" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "" + +msgid "Error in zip archive" +msgstr "Chyba v archivu zip" + +msgid "Generating walls" +msgstr "Generování stěn" + +msgid "Generating infill regions" +msgstr "Generování oblastí výplně" + +msgid "Generating infill toolpath" +msgstr "Generování výplně dráhy nástroje" + +msgid "Detect overhangs for auto-lift" +msgstr "Detekovat převisy pro automatické zvedání" + +msgid "Generating support" +msgstr "Generování podpěr" + +msgid "Checking support necessity" +msgstr "Zkontroluji nutnost podpěr" + +msgid "floating regions" +msgstr "levitující oblasti" + +msgid "floating cantilever" +msgstr "levitující konstrukce" + +msgid "large overhangs" +msgstr "velké převisy" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Zdá se, že objekt %s má %s. Změňte orientaci objektu nebo povolte generování " +"podpěr." + +msgid "Optimizing toolpath" +msgstr "Optimalizace dráhy nástroje" + +msgid "Slicing mesh" +msgstr "Slicování sítě" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"Nebyly zjištěny žádné vrstvy. Možná budete chtít opravit své soubory STL " +"nebo zkontrolovat jejich velikost či tloušťku a zkusit to znovu.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"Kompenzace velikosti XY objektu nebude použita, protože je také barevně " +"natřený.\n" +"Korekci velikosti XY nelze kombinovat s barevnou malbou." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Generování dráhy nástroje ve vrstvě %d" + +msgid "Support: detect overhangs" +msgstr "Podpěry: detekovat převisy" + +msgid "Support: generate contact points" +msgstr "Podpěry: generování kontaktních bodů" + +msgid "Support: propagate branches" +msgstr "Podpěry: propagovat větve" + +msgid "Support: draw polygons" +msgstr "Podpěry: kreslení polygonů" + +msgid "Support: generate toolpath" +msgstr "Podpěry: generování dráhy nástroje" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Podpěry: generování polygonů na vrstvě %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Podpěry: oprava děr ve vrstvě %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Podpěry: šíření větví na vrstvě %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Neznámý formát souboru. Vstupní soubor musí mít příponu .stl, .obj nebo ." +"amf(.xml)" + +msgid "Loading of a model file failed." +msgstr "Nahrávání souboru modelu selhalo." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "Nahraný soubor nemohl být načten, protože je prázdný" + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Neznámý formát souboru. Vstupní soubor musí mít příponu .3mf nebo .zip.amf." + +msgid "Canceled" +msgstr "Zrušeno" + +msgid "load_obj: failed to parse" +msgstr "load_obj: nepodařilo se zpracovat" + +msgid "load mtl in obj: failed to parse" +msgstr "" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "Soubor obsahuje polygon s více než 4 vrcholy." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "Soubor obsahuje polygon s méně než 2 vrcholy." + +msgid "The file contains invalid vertex index." +msgstr "Soubor obsahuje neplatný index vrcholu." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Tento soubor formátu OBJ nemohl být načten, protože je prázdný." + +msgid "Flow Rate Calibration" +msgstr "Kalibrace průtoku" + +msgid "Max Volumetric Speed Calibration" +msgstr "Kalibrace max objemové rychlosti" + +msgid "Manage Result" +msgstr "Spravovat výsledek" + +msgid "Manual Calibration" +msgstr "Ruční kalibrace" + +msgid "Result can be read by human eyes." +msgstr "Výsledek lze číst lidskýma očima." + +msgid "Auto-Calibration" +msgstr "Automatická kalibrace" + +msgid "We would use Lidar to read the calibration result" +msgstr "Použijeme Lidar ke čtení výsledku kalibrace" + +msgid "Prev" +msgstr "Předchozí" + +msgid "Recalibration" +msgstr "Rekalibrace" + +msgid "Calibrate" +msgstr "Kalibrovat" + +msgid "Finish" +msgstr "Dokončit" + +msgid "How to use calibration result?" +msgstr "Jak použít výsledek kalibrace?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "Můžete změnit faktor kalibrace dynamiky průtoku při úpravě materiálu" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"Aktuální verze firmwaru tiskárny nepodporuje kalibraci.\n" +"Prosím, aktualizujte firmware tiskárny." + +msgid "Calibration not supported" +msgstr "Kalibrace není podporována" + +msgid "Error desc" +msgstr "Popis chyby" + +msgid "Extra info" +msgstr "Další informace" + +msgid "Flow Dynamics" +msgstr "Dynamika Průtoku" + +msgid "Flow Rate" +msgstr "Průtok" + +msgid "Max Volumetric Speed" +msgstr "Maximální objemová rychlost" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Prosím, zadejte platné hodnoty:\n" +"Počáteční hodnota: >= %.1f\n" +"Koncová hodnota: <= %.1f\n" +"Koncová hodnota: > Počáteční hodnota\n" +"Krok hodnoty: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "Název nemůže být prázdný." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "" + +msgid "The name cannot be the same as the system preset name." +msgstr "Název nemůže být stejný jako název systémové předvolby." + +msgid "The name is the same as another existing preset name" +msgstr "Název je stejný jako název jiné existující předvolby" + +msgid "create new preset failed." +msgstr "Vytvoření nové předvolby selhalo." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Jste si jistí, že chcete zrušit aktuální kalibraci a vrátit se na domovskou " +"stránku?" + +msgid "No Printer Connected!" +msgstr "Není připojena žádná tiskárna!" + +msgid "Printer is not connected yet." +msgstr "Tiskárna je zatím nepřipojena." + +msgid "Please select filament to calibrate." +msgstr "Vyberte prosím filament pro kalibraci." + +msgid "The input value size must be 3." +msgstr "Velikost vstupní hodnoty musí být 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" + +msgid "Connecting to printer..." +msgstr "Připojování k tiskárně..." + +msgid "The failed test result has been dropped." +msgstr "Výsledek neúspěšného testu byl zahozen." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Výsledek kalibrace dynamiky průtoku byl uložen do tiskárny" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" + +msgid "Internal Error" +msgstr "Interní chyba" + +msgid "Please select at least one filament for calibration" +msgstr "Vyberte prosím alespoň jeden filament pro kalibraci" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "Výsledek kalibrace průtoku byl uložen do předvolby" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"Výsledek kalibrace maximální objemové rychlosti byl uložen do předvolby" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Kdy potřebujete kalibraci dynamiky průtoku" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Nyní jsme přidali automatickou kalibraci pro různé filamenty, která je plně " +"automatizovaná a výsledek bude uložen do tiskárny pro budoucí použití. " +"Kalibraci musíte provést pouze v následujících omezených případech:\n" +"1. Pokud použijete nový filament jiné značky/modelu nebo je filament vlhký;\n" +"2. Pokud je tryska opotřebená nebo nahrazena novou;\n" +"3. Pokud je maximální objemová rychlost nebo tisková teplota změněna v " +"nastavení filamentu." + +msgid "About this calibration" +msgstr "O této kalibraci" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "Kdy použít kalibraci průtoku" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"Použitím kalibrace průtoku dynamiky se mohou stále objevit některé problémy " +"s extruzí, jako například:\n" +"1. Přeextruze: Přebytečný materiál na vašem tištěném objektu, vytváření " +"bobrů nebo pupínků nebo se zdá, že vrstvy jsou tlustší než je očekáváno a " +"nejsou rovnoměrné.\n" +"2. Nedostatečná extruze: Velmi tenké vrstvy, slabá pevnost výplně nebo " +"mezery na horní vrstvě modelu, i když tisknete pomalu.\n" +"3. Slabá kvalita povrchu: Povrch vašich výtisků se zdá být drsný nebo " +"nevyrovnaný.\n" +"4. Slabá strukturální integrita: Výtisky se snadno lámají nebo se nezdají " +"být tak odolné, jak by měly být." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Kromě toho je kalibrace průtoku klíčová pro pěnové materiály, jako je LW-PLA " +"používaný u modelů RC letadel. Tyto materiály se při zahřátí výrazně " +"rozšiřují a kalibrace poskytuje užitečný referenční průtok." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"Kalibrace průtoku měří poměr očekávaných a skutečných objemů extruze. " +"Výchozí nastavení dobře funguje u tiskáren Bambu Lab a oficiálních " +"filamentů, protože byly předem zkalibrovány a jemně vyladěny. Pro běžný " +"filament obvykle nebudete potřebovat provádět kalibraci průtoku, pokud po " +"provedení jiných kalibrací stále vidíte uvedené nedostatky. Pro více " +"informací se podívejte do článku na naší wiki." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Automatizovaná kalibrace průtoku využívá Mikro-Lidar technologii Bambu Lab, " +"která přímo měří kalibrační vzory. Nicméně, mějte na paměti, že účinnost a " +"přesnost této metody mohou být ovlivněny určitými typy materiálů. Zejména " +"filamenty, které jsou průhledné nebo poloprůhledné, s jiskřícími částicemi " +"nebo s vysokým odrazivým povrchem, nemusí být vhodné pro tuto kalibraci a " +"mohou produkovat méně než optimální výsledky.\n" +"\n" +"Výsledky kalibrace se mohou lišit mezi jednotlivými kalibracemi nebo " +"filamenty. Nadále zlepšujeme přesnost a kompatibilitu této kalibrace pomocí " +"aktualizací firmwaru.\n" +"\n" +"Pozor: Kalibrace průtoku je pokročilý proces, který by měl být prováděn " +"pouze těmi, kteří plně rozumí jejímu účelu a důsledkům. Nesprávné použití " +"může vést k nepovedeným tiskům nebo poškození tiskárny. Před provedením " +"kalibrace si pečlivě přečtěte a porozumějte procesu." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Kdy potřebujete kalibraci maximální objemové rychlosti" + +msgid "Over-extrusion or under extrusion" +msgstr "Nadměrná extruze nebo podextruze" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "Kalibraci max objemové rychlosti doporučujeme při tisku s:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "materiál s významným tepelným smrštěním/nárůstem, například..." + +msgid "materials with inaccurate filament diameter" +msgstr "materiály s nepřesným průměrem filamentu" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "Našli jsme nejlepší kalibrační faktor pro průtok" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Část kalibrace selhala! Můžete podložku vyčistit a zkusit to znovu. Selhání " +"testovacího výsledku bude zahozeno." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Doporučujeme přidat do názvu také značku, materiál, typ a dokonce i úroveň " +"vlhkosti" + +msgid "Failed" +msgstr "Selhalo" + +msgid "Please enter the name you want to save to printer." +msgstr "Zadejte název, který chcete uložit do tiskárny." + +msgid "The name cannot exceed 40 characters." +msgstr "Název nemůže překročit 40 znaků." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" + +msgid "Please find the best line on your plate" +msgstr "Najděte nejlepší linku na své podložce" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "" + +msgid "Input Value" +msgstr "Vstupní hodnota" + +msgid "Save to Filament Preset" +msgstr "Uložit do předvolby Filamentu" + +msgid "Preset" +msgstr "Předvolba" + +msgid "Record Factor" +msgstr "Záznamový faktor" + +msgid "We found the best flow ratio for you" +msgstr "Našli jsme pro vás nejlepší poměr průtoku" + +msgid "Flow Ratio" +msgstr "Poměr průtoku" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Zadejte platnou hodnotu (0,0 < poměr průtoku < 2,0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Zadejte název předvolby, kterou chcete uložit." + +msgid "Calibration1" +msgstr "Kalibrace1" + +msgid "Calibration2" +msgstr "Kalibrace2" + +msgid "Please find the best object on your plate" +msgstr "Najděte nejlepší objekt na své podložce" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Vyplňte hodnotu nad blokem s nejhladším horním povrchem" + +msgid "Skip Calibration2" +msgstr "Přeskočit kalibraci 2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "poměr průtoku: %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Vyberte blok s nejhladším horním povrchem" + +msgid "Please choose a block with smoothest top surface." +msgstr "Vyberte blok s nejhladším horním povrchem." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "Zadejte platnou hodnotu (0 <= Max objemová rychlost <= 60)" + +msgid "Calibration Type" +msgstr "Typ kalibrace" + +msgid "Complete Calibration" +msgstr "Dokončená kalibrace" + +msgid "Fine Calibration based on flow ratio" +msgstr "Jemná kalibrace na základě poměru průtoku" + +msgid "Title" +msgstr "Název" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Bude proveden tisk testovacího modelu. Před kalibrací prosím vyčistěte " +"stavební podložku a umístěte ji zpět na vyhřívaný podstavec." + +msgid "Printing Parameters" +msgstr "Parametry tisku" + +msgid "Plate Type" +msgstr "Typ Podložky" + +msgid "filament position" +msgstr "pozice filamentu" + +msgid "External Spool" +msgstr "Externí cívka" + +msgid "Filament For Calibration" +msgstr "Filament pro kalibraci" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Tipy na kalibrační materiál: \n" +"- Materiály, které mohou sdílet stejnou teplotu podložky\n" +"- Různá značka a skupina filamentu (Značka = Bambu, Skupina = Základní, " +"Matný)" + +msgid "Pattern" +msgstr "Vzor" + +msgid "Method" +msgstr "Metoda" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s není kompatibilní s %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "TPU není podporováno pro automatickou kalibraci dynamiky průtoku." + +msgid "Connecting to printer" +msgstr "Připojování k tiskárně" + +msgid "From k Value" +msgstr "Od hodnoty k" + +msgid "To k Value" +msgstr "Do hodnoty k" + +msgid "Step value" +msgstr "Krok hodnoty" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "Průměr trysky byl synchronizován z Nastavení tiskárny" + +msgid "From Volumetric Speed" +msgstr "Z objemové rychlosti" + +msgid "To Volumetric Speed" +msgstr "Do objemové rychlosti" + +msgid "Flow Dynamics Calibration Result" +msgstr "Výsledek kalibrace dynamiky průtoku" + +msgid "New" +msgstr "Nový" + +msgid "No History Result" +msgstr "Žádný historický výsledek" + +msgid "Success to get history result" +msgstr "Úspěšně načtený historický výsledek kalibrace dynamiky průtoku" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Aktualizace historických záznamů kalibrace dynamiky průtoku probíhá" + +msgid "Action" +msgstr "Akce" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "" + +msgid "Edit Flow Dynamics Calibration" +msgstr "Upravit kalibraci dynamiky průtoku" + +msgid "New Flow Dynamic Calibration" +msgstr "" + +msgid "Ok" +msgstr "" + +msgid "The filament must be selected." +msgstr "" + +msgid "Network lookup" +msgstr "Vyhledávání v síti" + +msgid "Address" +msgstr "Adresa" + +msgid "Hostname" +msgstr "Název hostitele" + +msgid "Service name" +msgstr "Název služby" + +msgid "OctoPrint version" +msgstr "Verze OctoPrintu" + +msgid "Searching for devices" +msgstr "Vyhledávání zařízení" + +msgid "Finished" +msgstr "Dokončeno" + +msgid "Multiple resolved IP addresses" +msgstr "Nejednoznačná IP adresa" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"Překlad doménového jména %1% na IP adresu je nejednoznačný.\n" +"Vyberte prosím tu, která má být použita." + +msgid "PA Calibration" +msgstr "PA Kalibrace" + +msgid "DDE" +msgstr "DDE" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "Typ Extruderu" + +msgid "PA Tower" +msgstr "PA Věž" + +msgid "PA Line" +msgstr "PA Linky" + +msgid "PA Pattern" +msgstr "PA Vzor" + +msgid "Start PA: " +msgstr "Spustit PA: " + +msgid "End PA: " +msgstr "Konec PA: " + +msgid "PA step: " +msgstr "PA Krok: " + +msgid "Print numbers" +msgstr "Tisk čísel" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Zadejte prosím platné hodnoty:\n" +"Spustit PA: >= 0,0\n" +"Ukončit PA: > Spustit PA\n" +"PA krok: >= 0,001)" + +msgid "Temperature calibration" +msgstr "Kalibrace teploty" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Typ Filamentu" + +msgid "Start temp: " +msgstr "Počáteční teplota: " + +msgid "End temp: " +msgstr "Konec konce: " + +msgid "Temp step: " +msgstr "Teplotní krok: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Prosím zadejte platné hodnoty:\n" +"Startovní teplota: <= 350\n" +"Koncová teplota: >= 170\n" +"Startovní teplota > Koncová teplota + 5)" + +msgid "Max volumetric speed test" +msgstr "Test maximální objemové rychlosti" + +msgid "Start volumetric speed: " +msgstr "Spustit objemovou rychlost: " + +msgid "End volumetric speed: " +msgstr "Konec objemové rychlosti: " + +msgid "step: " +msgstr "krok: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Zadejte prosím platné hodnoty:\n" +"start > 0 \n" +"krok >= 0\n" +"konec > začátek + krok)" + +msgid "VFA test" +msgstr "VFA test" + +msgid "Start speed: " +msgstr "Počáteční rychlost: " + +msgid "End speed: " +msgstr "Koncová rychlost: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Zadejte prosím platné hodnoty:\n" +"start > 10 \n" +"krok >= 0\n" +"konec > začátek + krok)" + +msgid "Start retraction length: " +msgstr "Délka retrakce na začátku: " + +msgid "End retraction length: " +msgstr "Délka retrakce na konci: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "Odeslat G-Kód do tiskového serveru" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Nahrát do tiskového serveru s následujícím názvem souboru:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "Pokud je to nutné, použijte pro oddělení složek lomítko (/)." + +msgid "Upload to storage" +msgstr "Nahrát do úložiště" + +msgid "Switch to Device tab after upload." +msgstr "" + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "Název nahrávaného souboru neskončí s \"%s\". Přejete si pokračovat?" + +msgid "Upload" +msgstr "Nahrát" + +msgid "Print host upload queue" +msgstr "Fronta nahrávání tiskového serveru" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Postup" + +msgid "Host" +msgstr "Hostitel" + +msgctxt "OfFile" +msgid "Size" +msgstr "Velikost" + +msgid "Filename" +msgstr "Název souboru" + +msgid "Cancel selected" +msgstr "Zrušit vybrané" + +msgid "Show error message" +msgstr "Zobrazit chybové hlášení" + +msgid "Enqueued" +msgstr "Ve frontě" + +msgid "Uploading" +msgstr "Nahrávání" + +msgid "Cancelling" +msgstr "Ruší se" + +msgid "Error uploading to print host" +msgstr "Chyba při nahrávání do tiskového serveru" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Nelze provést booleovskou operaci na vybraných částech" + +msgid "Mesh Boolean" +msgstr "Booleovská síť" + +msgid "Union" +msgstr "Sjednocení" + +msgid "Difference" +msgstr "Rozdíl" + +msgid "Intersection" +msgstr "Průsečík" + +msgid "Source Volume" +msgstr "Zdrojový objem" + +msgid "Tool Volume" +msgstr "Objem nástroje" + +msgid "Subtract from" +msgstr "Odečíst od" + +msgid "Subtract with" +msgstr "Odečíst s" + +msgid "selected" +msgstr "vybráno" + +msgid "Part 1" +msgstr "Část 1" + +msgid "Part 2" +msgstr "Část 2" + +msgid "Delete input" +msgstr "Smazat vstup" + +msgid "Network Test" +msgstr "" + +msgid "Start Test Multi-Thread" +msgstr "" + +msgid "Start Test Single-Thread" +msgstr "" + +msgid "Export Log" +msgstr "" + +msgid "Snapmaker Orca Version:" +msgstr "" + +msgid "System Version:" +msgstr "" + +msgid "DNS Server:" +msgstr "" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "" + +msgid "Test Bing.com" +msgstr "" + +msgid "Test bing.com:" +msgstr "" + +msgid "Log Info" +msgstr "" + +msgid "Select filament preset" +msgstr "" + +msgid "Create Filament" +msgstr "" + +msgid "Create Based on Current Filament" +msgstr "" + +msgid "Copy Current Filament Preset " +msgstr "" + +msgid "Basic Information" +msgstr "" + +msgid "Add Filament Preset under this filament" +msgstr "" + +msgid "We could create the filament presets for your following printer:" +msgstr "" + +msgid "Select Vendor" +msgstr "" + +msgid "Input Custom Vendor" +msgstr "" + +msgid "Can't find vendor I want" +msgstr "" + +msgid "Select Type" +msgstr "" + +msgid "Select Filament Preset" +msgstr "" + +msgid "Serial" +msgstr "" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "" + +msgid "Filament Preset" +msgstr "" + +msgid "Create" +msgstr "" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "" + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" + +msgid "Filament type is not selected, please reselect type." +msgstr "" + +msgid "Filament serial is not inputed, please input serial." +msgstr "" + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" + +msgid "The vendor can not be a number. Please re-enter." +msgstr "" + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" + +msgid "Create Printer/Nozzle" +msgstr "" + +msgid "Create Printer" +msgstr "" + +msgid "Create Nozzle for Existing Printer" +msgstr "" + +msgid "Create from Template" +msgstr "" + +msgid "Create Based on Current Printer" +msgstr "" + +msgid "Import Preset" +msgstr "" + +msgid "Create Type" +msgstr "" + +msgid "The model is not found, place reselect vendor." +msgstr "" + +msgid "Select Model" +msgstr "" + +msgid "Select Printer" +msgstr "" + +msgid "Input Custom Model" +msgstr "" + +msgid "Can't find my printer model" +msgstr "" + +msgid "Rectangle" +msgstr "" + +msgid "Printable Space" +msgstr "" + +msgid "Hot Bed STL" +msgstr "" + +msgid "Load stl" +msgstr "" + +msgid "Hot Bed SVG" +msgstr "" + +msgid "Load svg" +msgstr "" + +msgid "Max Print Height" +msgstr "" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "" + +msgid "Exception in obtaining file size, please import again." +msgstr "" + +msgid "Preset path is not find, please reselect vendor." +msgstr "" + +msgid "The printer model was not found, please reselect." +msgstr "" + +msgid "The nozzle diameter is not found, place reselect." +msgstr "" + +msgid "The printer preset is not found, place reselect." +msgstr "" + +msgid "Printer Preset" +msgstr "" + +msgid "Filament Preset Template" +msgstr "" + +msgid "Deselect All" +msgstr "" + +msgid "Process Preset Template" +msgstr "" + +msgid "Back Page 1" +msgstr "" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" + +msgid "The custom printer or model is not inputed, place input." +msgstr "" + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" + +msgid "You need to select at least one filament preset." +msgstr "" + +msgid "You need to select at least one process preset." +msgstr "" + +msgid "Create filament presets failed. As follows:\n" +msgstr "" + +msgid "Create process presets failed. As follows:\n" +msgstr "" + +msgid "Vendor is not find, please reselect." +msgstr "" + +msgid "Current vendor has no models, please reselect." +msgstr "" + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" + +msgid "Please check bed printable shape and origin input." +msgstr "" + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" + +msgid "Create Printer Successful" +msgstr "" + +msgid "Create Filament Successful" +msgstr "" + +msgid "Printer Created" +msgstr "" + +msgid "Please go to printer settings to edit your presets" +msgstr "" + +msgid "Filament Created" +msgstr "" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" + +msgid "Printer Setting" +msgstr "" + +msgid "Printer config bundle(.orca_printer)" +msgstr "" + +msgid "Filament bundle(.orca_filament)" +msgstr "" + +msgid "Printer presets(.zip)" +msgstr "" + +msgid "Filament presets(.zip)" +msgstr "" + +msgid "Process presets(.zip)" +msgstr "" + +msgid "initialize fail" +msgstr "" + +msgid "add file fail" +msgstr "" + +msgid "add bundle structure file fail" +msgstr "" + +msgid "finalize fail" +msgstr "" + +msgid "open zip written fail" +msgstr "" + +msgid "Export successful" +msgstr "" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" + +msgid "Only display the filament names with changes to filament presets." +msgstr "" + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" + +msgid "Please select at least one printer or filament." +msgstr "" + +msgid "Please select a type you want to export" +msgstr "" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" + +msgid "Edit Filament" +msgstr "" + +msgid "Filament presets under this filament" +msgstr "" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" + +msgid "Presets inherited by other presets can not be deleted" +msgstr "" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +msgid "Delete Preset" +msgstr "" + +msgid "Are you sure to delete the selected preset?" +msgstr "" + +msgid "Delete preset" +msgstr "Smazat přednastavení" + +msgid "+ Add Preset" +msgstr "" + +msgid "Delete Filament" +msgstr "" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" + +msgid "Delete filament" +msgstr "" + +msgid "Add Preset" +msgstr "" + +msgid "Add preset for new printer" +msgstr "" + +msgid "Copy preset from filament" +msgstr "" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "" + +msgid "[Delete Required]" +msgstr "" + +msgid "Edit Preset" +msgstr "" + +msgid "For more information, please check out Wiki" +msgstr "" + +msgid "Collapse" +msgstr "Sbalit" + +msgid "Daily Tips" +msgstr "" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "" + +msgid "Need select printer" +msgstr "Je nutné vybrat tiskárnu" + +msgid "The start, end or step is not valid value." +msgstr "Počáteční, koncová nebo kroková hodnota není platná." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Nelze provést kalibraci: možná je rozsah kalibračních hodnot nastaven příliš " +"velký nebo krok je příliš malý" + +msgid "Physical Printer" +msgstr "Fyzická tiskárna" + +msgid "Print Host upload" +msgstr "Nahrávání do tiskového serveru" + +msgid "Could not get a valid Printer Host reference" +msgstr "Nelze získat platný odkaz na tiskový server" + +msgid "Success!" +msgstr "Úspěch!" + +msgid "Are you sure to log out?" +msgstr "" + +msgid "Refresh Printers" +msgstr "Obnovit tiskárny" + +msgid "View print host webui in Device tab" +msgstr "" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"Soubor HTTPS CA je volitelný. Je nutný pouze pokud použijte HTTPS certifikát " +"s vlastním podpisem." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Soubory s certifikátem (*.crt, *.pem)|*.crt;*.pem|Všechny soubory|*.*" + +msgid "Open CA certificate file" +msgstr "Otevřít soubor s certifikátem CA" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"V tomto systému používá %s certifikáty HTTPS ze systému Certificate Store " +"nebo Keychain." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Chcete-li použít vlastní soubor CA, importujte soubor CA do Certificate " +"Store / Keychain." + +msgid "Login/Test" +msgstr "" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"Připojení k tiskárnám připojených prostřednictvím tiskového serveru se " +"nezdařilo." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Nesprávný typ tiskového serveru: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "Připojení k AstroBoxu funguje správně." + +msgid "Could not connect to AstroBox" +msgstr "Nelze se připojit k AstroBoxu" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Poznámka: Je vyžadována verze AstroBoxu nejméně 1.1.0." + +msgid "Connection to Duet works correctly." +msgstr "Připojení k Duet funguje správně." + +msgid "Could not connect to Duet" +msgstr "Nelze se připojit k Duet" + +msgid "Unknown error occured" +msgstr "Došlo k neznámé chybě" + +msgid "Wrong password" +msgstr "Chybné heslo" + +msgid "Could not get resources to create a new connection" +msgstr "Nelze získat prostředky pro vytvoření nového spojení" + +msgid "Upload not enabled on FlashAir card." +msgstr "Na kartě FlashAir není nahrávání povoleno." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "Připojení k FlashAir funguje správně a nahrávání je povoleno." + +msgid "Could not connect to FlashAir" +msgstr "Nelze se spojit s FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Poznámka: Vyžaduje se FlashAir s firmwarem 2.00.02 nebo novějším a " +"aktivovanou funkcí nahrávání." + +msgid "Connection to MKS works correctly." +msgstr "Připojení k MKS funguje správně." + +msgid "Could not connect to MKS" +msgstr "Nelze se připojit k MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "Připojení k OctoPrint pracuje správně." + +msgid "Could not connect to OctoPrint" +msgstr "Nelze se spojit s OctoPrintem" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Poznámka: Je vyžadován OctoPrint ve verzi alespoň 1.1.0." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Připojení k tiskárně Prusa SL1 /SL1S funguje správně." + +msgid "Could not connect to Prusa SLA" +msgstr "Nelze se připojit k Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "Připojení k PrusaLinku funguje správně." + +msgid "Could not connect to PrusaLink" +msgstr "Nelze se připojit k PrusaLinku" + +msgid "Storages found" +msgstr "Úložiště nalezeno" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : pouze pro čtení" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : nedostatek volného místa" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" +"Nahrání se nezdařilo. Na adrese %1% nebylo nalezeno žádné vhodné úložiště." + +msgid "Connection to Prusa Connect works correctly." +msgstr "Připojení k Prusa Connectu funguje správně." + +msgid "Could not connect to Prusa Connect" +msgstr "Nelze se připojit k Prusa Connectu" + +msgid "Connection to Repetier works correctly." +msgstr "Připojení k Repetieru funguje správně." + +msgid "Could not connect to Repetier" +msgstr "Nelze se připojit k Repetieru" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Poznámka: Je vyžadována verze Repetier alespoň 0.90.0." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP stavový kód: %1%\n" +"Tělo zprávy: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Parsování odpovědi od hostitele se nezdařilo.\n" +"Tělo zprávy: \"%1%\"\n" +"Chyba: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Výčet tiskových serverů se nezdařil.\n" +"Tělo zprávy: \"%1%\"\n" +"Chyba: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" + +msgid "Connected to Obico successfully!" +msgstr "" + +msgid "Could not connect to Obico" +msgstr "" + +msgid "Connected to SimplyPrint successfully!" +msgstr "" + +msgid "Could not connect to SimplyPrint" +msgstr "" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" + +msgid "Connection to Flashforge works correctly." +msgstr "" + +msgid "Could not connect to Flashforge" +msgstr "" + +msgid "The provided state is not correct." +msgstr "" + +msgid "Please give the required permissions when authorizing this application." +msgstr "" + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" + +msgid "User cancelled." +msgstr "" + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Nástroj pro řezání\n" +"Věděli jste, že můžete pomocí řezacího nástroje provádět řezy modelu pod " +"různými úhly a pozicemi?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Časosběr\n" +"Věděli jste, že můžete během každého tisku vytvářet časosběrné video?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Automatické uspořádání\n" +"Věděli jste, že můžete automaticky uspořádat všechny objekty ve vašem " +"projektu?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Automatická Orientace\n" +"Věděli jste, že můžete pomocí jednoho kliknutí otočit objekty do optimálního " +"natočení pro tisk?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Plochou na podložku\n" +"Věděli jste, že můžete rychle nastavit orientaci modelu tak, aby jedna z " +"jeho stěn spočívala na tiskovém podloží? Vyberte funkci \"Plochou na podložku" +"\" nebo stiskněte klávesu F." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Seznam objektů\n" +"Věděli jste, že si můžete zobrazit všechny objekty/části v seznamu a upravit " +"nastavení pro každý objekt/část zvlášť?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Tabulka parametrů pro Slicování\n" +"Věděli jste, že můžete zobrazit všechny objekty/části v tabulce a změnit " +"nastavení pro každý objekt/část?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Rozdělit na objekty/části\n" +"Věděli jste, že můžete rozdělit velký objekt na menší části pro snadné " +"barevné zpracování nebo tisk?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP\n" +"Věděli jste, že můžete zlepšit kvalitu svého tisku tím, že rozdělíte soubor " +"STEP namísto STL?\n" +"Snapmaker Orca podporuje rozdělování souborů STEP, což poskytuje hladší " +"výsledky než s nižším rozlišením STL. Vyzkoušejte to!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Z poloha švu\n" +"Věděli jste, že můžete přizpůsobit umístění Z spoje a dokonce ho na svém " +"tisku namalovat, aby byl ve méně viditelné poloze? Tím se zlepší celkový " +"vzhled vašeho modelu. Podívejte se na to!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Jemné doladění pro rychlost průtoku\n" +"Věděli jste, že průtokovou rychlost lze jemně doladit pro ještě lepší vzhled " +"tisku? V závislosti na materiálu můžete zlepšit celkový povrch tištěného " +"modelu pomocí drobného doladění." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Rozdělte své tisky na podložky\n" +"Věděli jste, že můžete rozdělit model s mnoha díly na jednotlivé podložky " +"připravené k tisku? Tímto zjednodušíte proces sledování všech dílů." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Zrychlete svůj 3D tisk pomocí adaptivní výšky vrstvy\n" +"Věděli jste, že můžete ještě rychleji vytisknout své 3D modely pomocí " +"možnosti adaptivní výšky vrstvy? Tímto způsobem dosáhnete zkrácení celkového " +"času tisku!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Malování podpěr\n" +"Věděli jste, že můžete malovat umístění podpěr? Tato funkce umožňuje snadné " +"umístění podpůrného materiálu pouze na části modelu, které ho skutečně " +"potřebují." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Různé typy podpěr\n" +"Věděli jste, že můžete vybírat z různých typů podpěr? Stromové podpěry se " +"skvěle hodí pro organické modely a zároveň šetří filament a zlepšuje " +"rychlost tisku. Podívejte se na ně!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Tisk hedvábného filamentu\n" +"Věděli jste, že tisk hedvábného filamentu vyžaduje zvláštní zvážení pro " +"úspěšné provedení? Vždy se doporučuje vyšší teplota a nižší rychlost pro " +"dosažení nejlepších výsledků." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Límec pro lepší přilnavost\n" +"Věděli jste, že při tisku modelů s malým kontaktním rozhraním s tiskovou " +"plochou se doporučuje použití Límce (brim)?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Nastavte parametry pro více objektů\n" +"Věděli jste, že můžete najednou nastavit parametry pro všechny vybrané " +"objekty?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Seskupit objekty\n" +"Věděli jste, že můžete objekty seskupit do jednoho celku?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Čištit do podpěr/objektů/výplně\n" +"Věděli jste, že můžete ušetřit zahozené filamenty tím, že je očistíte do " +"podpěr/objektů/výplně během výměny filamentu?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Zvýšení pevnosti\n" +"Věděli jste, že můžete použít více opakování stěn a vyšší hustotu řídké " +"výplně pro zvýšení pevnosti modelu?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "Lokální připojení k tiskárně selhalo, zkuste to znovu." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Najdete podrobnosti o kalibraci průtoku dynamiky v naší wiki.\n" +#~ "\n" +#~ "Obvykle kalibrace není potřebná. Při spuštění tisku s jednobarevným/" +#~ "materiálovým filamentem a zaškrtnutou volbou \"kalibrace průtoku dynamiky" +#~ "\" v menu spuštění tisku, tiskárna bude postupovat podle staré metody a " +#~ "zkalibruje filament před tiskem. Při spuštění tisku s vícebarevným/" +#~ "materiálovým filamentem bude tiskárna při každé změně filamentu používat " +#~ "výchozí kompenzační parametr pro filament, což má většinou dobrý " +#~ "výsledek.\n" +#~ "\n" +#~ "Všimněte si, že existují některé případy, které mohou způsobit, že " +#~ "výsledek kalibrace nebude spolehlivý: použití texturované podložky pro " +#~ "kalibraci; podložka nemá dobrou adhezi (prosím umyjte podložku nebo " +#~ "naneste lepidlo!) ... Více informací najdete v naší wiki.\n" +#~ "\n" +#~ "Výsledky kalibrace mají v našich testech asi 10% fluktuaci, což může " +#~ "způsobit, že výsledek nebude přesně stejný u každé kalibrace. Stále " +#~ "zkoumáme kořenovou příčinu, abychom mohli provést zlepšení v nových " +#~ "aktualizacích." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Bude uložen pouze jeden z výsledků se stejným názvem. Opravdu chcete " +#~ "přepsat ostatní výsledky?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Už existuje historický kalibrační výsledek se stejným názvem: %s. Bude " +#~ "uložen pouze jeden z výsledků se stejným názvem. Opravdu chcete přepsat " +#~ "historický výsledek?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Prosím, najděte roh s dokonalým stupněm extruze" + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca je založen na BambuStudio od Bambulab, které je od " +#~ "PrusaSlicer od Prusa Research. PrusaSlicer je od Slic3r od Alessandra " +#~ "Ranellucciho a komunita RepRap" + +#~ msgid "Export &Configs" +#~ msgstr "Exportovat &konfigurace" + +#~ msgid "Infill direction" +#~ msgstr "Směr výplně" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Povolte toto, abyste získali soubor G-kódu, který má pohyby G2 a G3. A " +#~ "tolerance montáže je stejná s rozlišením" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "Oblast výplně je mírně zvětšena, aby se překrývala se stěnou pro lepší " +#~ "lepení. Procentuální hodnota je vztažena k šířce extruze vnitřní výplně" + +#~ msgid "Unload Filament" +#~ msgstr "Vysunout Filament" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Vyberte slot AMS a poté stiskněte \" Načíst \" nebo \" Uvolnit \" pro " +#~ "automatické načtení nebo vyjměte vlákno." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "Základní deska" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "- ℃" +#~ msgstr "- ℃" + +#~ msgid "0.5" +#~ msgstr "0.5" + +#~ msgid "0.005" +#~ msgstr "0.005" + +#~ msgid "active" +#~ msgstr "aktivní" + +#~ msgid "Jump to layer" +#~ msgstr "Přeskočit do vrstvy" + +#~ msgid "Cabin humidity" +#~ msgstr "Vlhkost v kabině" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "Zelená znamená, že vlhkost AMS je normální, oranžová znamená vlhkost " +#~ "vysokou Červená znamená, že vlhkost je příliš vysoká. (Vlhkoměr: čím " +#~ "nižší, tím lepší.)" + +#~ msgid "Desiccant status" +#~ msgstr "Stav vysoušedla" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "Stav vysoušedla nižší než dva pruhy znamená, že vysoušedlo může být " +#~ "neaktivní. Vyměňte prosím vysoušedlo. (Čáry: čím vyšší, tím lepší.)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Poznámka: Když je víko otevřené nebo je vyměněno balení vysoušedla, může " +#~ "to trvat hodiny nebo noc absorbovat vlhkost. Nízké teploty také zpomalují " +#~ "proces. Během této doby indikátor nemusí představovat komoru přesně." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Poznámka: Pokud se během tisku vloží nový filament, AMS nebude " +#~ "automaticky číst všechny informace, dokud tisk neskončí." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "Úspěšný export G-kódu do %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Inicializace se nezdařila (žádné zařízení)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Inicializace se nezdařila (žádné kamerové zařízení)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "Tiskárna je zaneprázdněna stahováním, počkejte prosím na dokončení " +#~ "stahování." + +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "" +#~ "Inicializace se nezdařila (Není podporováno ve stávající verzi tiskárny)!" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Inicializace se nezdařila (není přístupné v režimu pouze LAN)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "Inicializace se nezdařila (chybějící LAN IP tiskárny)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Zastaveno [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "Načítání selhalo [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "Žádné soubory [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Načítání selhalo [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Nepodařilo se načíst informace o modelu z tiskárny." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Nepodařilo se zpracovat informace o modelu." + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Změnili jste některá nastavení předvolby \"%1%\" . \n" +#~ "Přejete si po přepnutí zachovat tato změněná nastavení (nová " +#~ "hodnota)přednastavení?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Změnili jste některá přednastavená nastavení. \n" +#~ "Přejete si po přepnutí zachovat tato změněná nastavení (nová " +#~ "hodnota)přednastavení?" + +#~ msgid " ℃" +#~ msgstr " ℃" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Přidá plnou výplň u šikmých ploch pro garanci tloušťky svislých stěn " +#~ "(vrchních a spodních plných vrstev)" + +#~ msgid " " +#~ msgstr " " + +#~ msgid "Configuration package updated to " +#~ msgstr "Konfigurační balíček aktualizován na " + +#~ msgid "" +#~ "Improve shell precision by adjusting outer wall spacing. This also " +#~ "improves layer consistency." +#~ msgstr "" +#~ "Zlepšete přesnost skořepiny úpravou vzdálenosti vnějších stěn. To také " +#~ "zlepšuje konzistence vrstev." + +#~ msgid "" +#~ "The minimum printing speed for the filament when slow down for better " +#~ "layer cooling is enabled, when printing overhangs and when feature speeds " +#~ "are not specified explicitly." +#~ msgstr "" +#~ "Minimální rychlost tisku pro filament, když je povoleno zpomalení pro " +#~ "lepší chlazení vrstev, při tisku převisů a pokud rychlosti prvků nejsou " +#~ "explicitně určeny." + +#~ msgid "No sparse layers (EXPERIMENTAL)" +#~ msgstr "Bez řídkých vrstev (EXPERIMENTÁLNÍ)" + +#~ msgid "The Config can not be loaded." +#~ msgstr "Nelze načíst konfiguraci." + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "3mf je generován starým Snapmaker Orcaem, načtěte pouze geometrická data." + +#~ msgid "" +#~ "Relative extrusion is recommended when using \"label_objects\" option." +#~ "Some extruders work better with this option unckecked (absolute extrusion " +#~ "mode). Wipe tower is only compatible with relative mode. It is always " +#~ "enabled on BambuLab printers. Default is checked" +#~ msgstr "" +#~ "Při použití volby \"label_objects\" se doporučuje relativní extruzi. " +#~ "Některé extrudery fungují lépe, když je tato možnost odškrtnuta (režim " +#~ "absolutní extruze). Čistící věž je kompatibilní pouze s relativním " +#~ "režimem. Na tiskárnách BambuLab je vždy povolen. Výchozí je zaškrtnuto" + +#~ msgid "Movement:" +#~ msgstr "Přejezd:" + +#~ msgid "Movement" +#~ msgstr "Přejezd" + +#~ msgid "Auto Segment" +#~ msgstr "Automatický segment" + +#~ msgid "Depth ratio" +#~ msgstr "Poměr hloubky" + +#~ msgid "Prizm" +#~ msgstr "Hranol" + +#~ msgid "connector is out of cut contour" +#~ msgstr "spojka je mimo obrys řezu" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "spojky jsou mimo obrys řezu" + +#~ msgid "connector is out of object" +#~ msgstr "spojka je mimo objekt" + +#~ msgid "connectors is out of object" +#~ msgstr "spojky jsou mimo objekt" + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Neplatný stav. \n" +#~ "Není vybrána žádná část pro zachování po řezu" + +#~ msgid "Edit Text" +#~ msgstr "Upravit text" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Chyba! Nelze vytvořit vlákno!" + +#~ msgid "Exception" +#~ msgstr "Výjimka" + +#~ msgid "Choose SLA archive:" +#~ msgstr "Vyberte SLA archiv:" + +#~ msgid "Import file" +#~ msgstr "Importovat soubor" + +#~ msgid "Import model and profile" +#~ msgstr "Importovat model a profil" + +#~ msgid "Import profile only" +#~ msgstr "Importovat pouze profil" + +#~ msgid "Import model only" +#~ msgstr "Importujte pouze model" + +#~ msgid "Accurate" +#~ msgstr "Přesné" + +#~ msgid "Balanced" +#~ msgstr "Vyvážené" + +#~ msgid "Quick" +#~ msgstr "Rychlé" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Popište, jak dlouho se bude tryska při retrakci pohybovat po poslední " +#~ "dráze" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Zjednodušit model\n" +#~ "Věděli jste, že můžete snížit počet trojúhelníků v síti pomocí funkce " +#~ "Zjednodušit síť? Klikněte pravým tlačítkem na model a vyberte možnost " +#~ "Zjednodušit model. Více informací najdete v dokumentaci." + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "Odečíst část\n" +#~ "Věděli jste, že můžete odečíst jednu síťovinu od druhé pomocí negativního " +#~ "modifikátoru části? Tímto způsobem můžete například vytvářet snadno " +#~ "nastavitelné otvory přímo v programu Snapmaker Orca. Přečtěte si více v " +#~ "dokumentaci." + +#~ msgid "Filling bed " +#~ msgstr "Vyplňování podložky " + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "%1% vzor výplně nepodporuje 100%% hustotu." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "Přepnout na přímočarý vzor?\n" +#~ "Ano - přepnout na přímočarý vzor automaticky\n" +#~ "Ne - automaticky resetovat hustotu na výchozí ne 100% hodnotu" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "Před vložením filamentu zahřejte trysku na více než 170 stupňů." + +#~ msgid "Show g-code window" +#~ msgstr "Zobrazit okno s G-kódem" + +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "Pokud je povoleno, zobrazí se okno s G-kódem." + +#, fuzzy, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "Hustota vnitřní výplně, 100% znamená celistvou v celém rozsahu" + +#~ msgid "Tree support wall loops" +#~ msgstr "Stěnové smyčky na podpěry stromů" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "Toto nastavení určuje počet stěn kolem podpěry stromu" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " nefunguje při 100%% hustotě " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Nástroj-Plochou na podložku" + +#~ msgid "Export as STL" +#~ msgstr "Exportovat jako STL" + +#~ msgid "Check cloud service status" +#~ msgstr "Zkontrolujte stav cloudové služby" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Zadejte prosím platnou hodnotu (K v 0~0,5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "Zadejte platnou hodnotu (K v 0~0,5, N v 0,6~2,0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Exportovat všechny objekty jako STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "3mf není kompatibilní, načtěte pouze geometrická data!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Nekompatibilní 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "Přidat/Odebrat tiskárny" + +#~ msgid "" +#~ "When print by object, machines with I3 structure will not generate " +#~ "timelapse videos." +#~ msgstr "" +#~ "Při tisku podle objektu stroje s I3 strukturou nevytvoří časosběrná videa." + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s není systémem AMS podporován." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Tuto verzi mi znovu nepřipomínat" + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Cchyb: IP nebo přístupový kód nejsou správné" + +#~ msgid "" +#~ "Extrude perimeters that have a part over an overhang in the reverse " +#~ "direction on odd layers. This alternating pattern can drastically improve " +#~ "steep overhang." +#~ msgstr "" +#~ "Extrudovat perimetry, které mají část přes převis ve směru opačném na " +#~ "lichých vrstvách. Toto střídání může výrazně zlepšit strmý převis." + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Pořadí vnitřní stěny/vnější stěny/výplně" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "Tisková sekvence vnitřní stěny, vnější stěny a výplně. " + +#~ msgid "inner/outer/infill" +#~ msgstr "vnitřní/vnější/výplň" + +#~ msgid "outer/inner/infill" +#~ msgstr "vnější/vnitřní/výplň" + +#~ msgid "infill/inner/outer" +#~ msgstr "výplň/vnitřní/vnější" + +#~ msgid "infill/outer/inner" +#~ msgstr "výplň/vnější/vnitřní" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "vnitřní-vnější-vnitřní/výplň" + +#, c-format, boost-format +#~ msgid "%%" +#~ msgstr "%%" + +#~ msgid "Export 3MF" +#~ msgstr "Exportovat 3MF" + +#~ msgid "Export project as 3MF." +#~ msgstr "Exportovat projekt jako 3MF." + +#~ msgid "Export slicing data" +#~ msgstr "Exportovat data Slicování" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Exportovat data Slicování do složky." + +#~ msgid "Load slicing data" +#~ msgstr "Načíst data Slicování" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Načíst data dělení z mezipaměti z adresáře" + +#~ msgid "Export STL" +#~ msgstr "Exportovat STL" + +#~ msgid "Export the objects as multiple STL." +#~ msgstr "Exportovat objekty jako více STL souborů." + +#~ msgid "Slice" +#~ msgstr "Slicovat" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "" +#~ "Slicovat podložky: 0-všechny podložky, i- podložku i, ostatní-neplatné" + +#~ msgid "Show command help." +#~ msgstr "Zobrazit nápovědu k příkazu." + +#~ msgid "UpToDate" +#~ msgstr "Aktualizováno" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "Aktualizujte konfigurační hodnoty 3mf na nejnovější." + +#~ msgid "Load default filaments" +#~ msgstr "Načíst výchozí filamenty" + +#~ msgid "Load first filament as default for those not loaded" +#~ msgstr "Načíst první filament jako výchozí pro ty, které nebyly načteny" + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "max počet trojúhelníků na podložku pro slicování." + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "max čas slicování na podložku v sekundách." + +#~ msgid "Normative check" +#~ msgstr "Normativní kontrola" + +#~ msgid "Check the normative items." +#~ msgstr "Kontrola normativních prvků." + +#~ msgid "Output Model Info" +#~ msgstr "Info o výstupním modelu" + +#~ msgid "Output the model's information." +#~ msgstr "Vytisknout informace o modelu." + +#~ msgid "Export Settings" +#~ msgstr "Nastavení exportu" + +#~ msgid "Export settings to a file." +#~ msgstr "Exportovat nastavení do souboru." + +#~ msgid "Send progress to pipe" +#~ msgstr "Poslat průběh do roury" + +#~ msgid "Send progress to pipe." +#~ msgstr "Poslat průběh do roury." + +#~ msgid "Arrange Options" +#~ msgstr "Volby uspořádání" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Volby uspořádání: 0-zakázat, 1-povolit, ostatní-automaticky" + +#~ msgid "Repetions count" +#~ msgstr "Počet opakování" + +#~ msgid "Repetions count of the whole model" +#~ msgstr "Počet opakování celého modelu" + +#~ msgid "Convert Unit" +#~ msgstr "Převést jednotku" + +#~ msgid "Convert the units of model" +#~ msgstr "Převést jednotky modelu" + +#~ msgid "Rotate around X" +#~ msgstr "Rotace kolem osy X" + +#~ msgid "Rotation angle around the X axis in degrees." +#~ msgstr "Úhel rotace kolem osy X v stupních." + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Měřítko modelu pomocí plovoucího faktoru" + +#~ msgid "Load General Settings" +#~ msgstr "Načíst obecná nastavení" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "Načíst nastavení procesu/stroje ze zadaného souboru" + +#~ msgid "Load Filament Settings" +#~ msgstr "Načíst nastavení filamentu" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "Načíst nastavení filamentu ze zadaného seznamu souborů" + +#~ msgid "Skip Objects" +#~ msgstr "Přeskočit objekty" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Přeskočit některé objekty při tisku" + +#~ msgid "load uptodate process/machine settings when using uptodate" +#~ msgstr "Načítat aktuální nastavení procesu/stroje při použití aktuálního" + +#~ msgid "" +#~ "load uptodate process/machine settings from the specified file when using " +#~ "uptodate" +#~ msgstr "" +#~ "Načítat aktuální nastavení procesu/stroje ze zadaného souboru při použití " +#~ "aktuálního" + +#~ msgid "Output directory" +#~ msgstr "Výstupní adresář" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Výstupní adresář pro exportované soubory." + +#~ msgid "Debug level" +#~ msgstr "Úroveň ladění" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Nastaví úroveň protokolování ladění. 0:fatal, 1:error, 2:warning, 3:info, " +#~ "4:debug, 5:sledovat\n" + +#, boost-format +#~ msgid "The selected preset: %1% is not found." +#~ msgstr "Vybraná předvolba: %1% nebyla nalezena." + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "Operace v 3D scéně\n" +#~ "Věděli jste, že můžete ovládat zobrazení a výběr objektů nebo částí " +#~ "pomocí myši a dotykového panelu v 3D scéně?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Opravit model\n" +#~ "Věděli jste, že můžete opravit poškozený 3D model a vyhnout se tak mnoha " +#~ "problémům při slicování?" + +#~ msgid "" +#~ "When need to print with the printer door opened\n" +#~ "Opening the printer door can reduce the probability of extruder/hotend " +#~ "clogging when printing lower temperature filament with a higher enclosure " +#~ "temperature. More info about this in the Wiki." +#~ msgstr "" +#~ "Kdy potřebujete tisknout s otevřenými dveřmi tiskárny\n" +#~ "Otevření dveří tiskárny může snížit pravděpodobnost ucpaní extruderu/" +#~ "hotendu při tisku filamentu s nižší teplotou a vyšší teplotě uzavřeného " +#~ "prostoru. Další informace naleznete ve Wiki." + +#~ msgid "Embeded" +#~ msgstr "Vloženo" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "Konfigurační soubor Snapmaker Orca může být poškozen a nelze jej analyzovat." +#~ "Smažte soubor a zkuste to znovu." + +#~ msgid "Online Models" +#~ msgstr "Online modely" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "Zobrazit online modely vybrané týmem na úvodní stránce" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "Minimální rychlost tisku při zpomalení kvůli chlazení" + +#~ msgid "" +#~ "There are currently no identical spare consumables available, and " +#~ "automatic replenishment is currently not possible. \n" +#~ "(Currently supporting automatic supply of consumables with the same " +#~ "brand, material type, and color)" +#~ msgstr "" +#~ "Aktuálně nejsou k dispozici žádné shodné náhradní spotřební materiály a " +#~ "automatické doplnění momentálně není možné. \n" +#~ "(Aktuálně podporuje automatické dodávky spotřebních materiálů se stejnou " +#~ "značkou, typem materiálu a barvou)" + +#~ msgid "Invalid nozzle diameter" +#~ msgstr "Neplatný průměr trysky" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "Teplota podložky překračuje teplotu vitrifikace filamentu. Prosím. Před " +#~ "tiskem otevřete přední dvířka tiskárny, aby nedošlo k ucpání trysky." + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Teplota vitrifikace" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "Materiál při této teplotě změkne. Vyhřívaná podložka tedy nemůže být " +#~ "teplejší než tato teplota" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "Povolte tuto možnost, pokud má stroj pomocný chladicí ventilátor" + +#~ msgid "" +#~ "This option is enabled if machine support controlling chamber temperature" +#~ msgstr "" +#~ "Tato možnost je povolena, pokud stroj podporuje řízení teploty komory" + +#~ msgid "Enable this if printer support air filtration" +#~ msgstr "Povolte to, pokud tiskárna podporuje filtraci vzduchu" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "Rychlost chladicího ventilátoru pomocné části. Pomocný ventilátor poběží " +#~ "touto rychlostí během tisku kromě prvních několika vrstev, které nejsou " +#~ "definovány žádnými chladicími vrstvami" + +#~ msgid "" +#~ "Filter out gaps smaller than the threshold specified. This setting won't " +#~ "affect top/bottom layers" +#~ msgstr "" +#~ "Vyfiltrované mezery menší než stanovený práh. Toto nastavení neovlivní " +#~ "vrstvy horního/spodního povrchu" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "" +#~ "Prázdné vrstvy kolem dna jsou nahrazeny nejbližšími normálními vrstvami." + +#~ msgid "The model has too many empty layers." +#~ msgstr "Model má příliš mnoho prázdných vrstev." + +#~ msgid "Cali" +#~ msgstr "Kalibrace" + +#~ msgid "Calibration of extrusion" +#~ msgstr "Kalibrace extruze" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Zasuňte nový filament do extruderu" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "Teplota podložky ostatních vrstev je nižší než teplota podložky první " +#~ "vrstvy o více než %d stupňů Celsia.\n" +#~ "To může způsobit, že se modely během tisku uvolní z podložky" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "Teplota podložky je vyšší než teplota vitrifikace tohoto filamentu.\n" +#~ "To může způsobit ucpání trysky a selhání tisku\n" +#~ "Nechte tiskárnu během procesu tisku otevřenou, abyste zajistili cirkulaci " +#~ "vzduchu nebo snížení teploty podložky" + +#~ msgid "Total Time Estimation" +#~ msgstr "Celkový odhad času" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Identifikace rezonanční frekvence" + +#~ msgid "Immediately score" +#~ msgstr "Okamžitě ohodnotit" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "Prosím, ohodnoťte svůj oblíbený model z Bambu Market." + +#~ msgid "Score" +#~ msgstr "Hodnocení" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Bambu vysoká teplota Podlozky" + +#~ msgid "Can't connect to the printer" +#~ msgstr "Nelze se připojit k tiskárně" + +#~ msgid "Recommended temperature range" +#~ msgstr "Doporučený teplotní rozsah" + +#~ msgid "High Temp Plate" +#~ msgstr "High Temp Podložka" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "Toto je teplota podložky, když je instalována konstrukční podložka. " +#~ "Hodnota 0 znamená, že filament nepodporuje tisk na High Temp Podložku" + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Tloušťka vnitřní podpěry mostu" + +#~ msgid "" +#~ "If enabled, support loops will be generated under the contours of " +#~ "internal bridges.These support loops could prevent internal bridges from " +#~ "extruding over the air and improve the top surface quality, especially " +#~ "when the sparse infill density is low.This value determines the thickness " +#~ "of the support loops. 0 means disable this feature" +#~ msgstr "" +#~ "Pokud je povoleno, podpůrné smyčky budou generovány pod obrysy interních " +#~ "mostů. Tyto podpůrné smyčky mohou zabránit extruzi materiálu do vzduchu a " +#~ "zlepšit kvalitu horního povrchu, zejména když je nízká hustota výplně. " +#~ "Tato hodnota určuje tloušťku podpůrných smyček. Hodnota 0 znamená, že " +#~ "tato funkce je zakázána." + +#, fuzzy, c-format, boost-format +#~ msgid "" +#~ "Klipper's max_accel_to_decel will be adjusted to this % of acceleration" +#~ msgstr "Klipper max_accel_to_decel bude upraven na toto % zrychlení" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Styl a tvar podpěry. Pro normální podpěru vytvoří promítnutí podpěr do " +#~ "pravidelné mřížky stabilnější podpěry (výchozí), zatímco přiléhavé " +#~ "podpěrné věže šetří materiál a omezují zjizvení objektů.\n" +#~ "Pro podpěru stromu se tenký styl spojí větví se agresivněji a ušetří " +#~ "spoustu materiálu (výchozí), zatímco hybridní styl vytvoří podobnou " +#~ "strukturu jako normální podpěr a pod velkými plochými převisy." + +#~ msgid "Target chamber temperature" +#~ msgstr "Cílová teplota v komoře" + +#~ msgid "Bed temperature difference" +#~ msgstr "Rozdíl teplot podložky" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "Nedoporučujeme, aby teplota podložky jiné vrstvy byla nižší než počáteční " +#~ "vrstva o více než tento limit. Příliš nízká teplota podložky jiné vrstvy " +#~ "může způsobit, že se model uvolní z vyhřívané podložky" + +#~ msgid "Orient the model" +#~ msgstr "Orientujte model" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 0 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Zadejte prosím platné hodnoty:\n" +#~ "start > 0 krok >= 0\n" +#~ "konec > začátek + krok)" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 10 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Zadejte prosím platné hodnoty:\n" +#~ "start > 10 kroků >= 0\n" +#~ "konec > začátek + krok)" diff --git a/localization/i18n/de/Snapmaker_Orca_de.po b/localization/i18n/de/Snapmaker_Orca_de.po new file mode 100644 index 0000000000..776f5f9811 --- /dev/null +++ b/localization/i18n/de/Snapmaker_Orca_de.po @@ -0,0 +1,18527 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: Heiko Liebscher \n" +"Language-Team: \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n==1) ? 0 : 1;\n" +"X-Generator: Poedit 3.4.2\n" + +msgid "Supports Painting" +msgstr "Stützen aufmalen" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Mausrad" + +msgid "Section view" +msgstr "Abschnittsansicht" + +msgid "Reset direction" +msgstr "Ausrichtung zurücksetzen" + +msgid "Ctrl + Mouse wheel" +msgstr "Strg + Mausrad" + +msgid "Pen size" +msgstr "Pinselgröße" + +msgid "Left mouse button" +msgstr "linke Maustaste" + +msgid "Enforce supports" +msgstr "Support erzwingen" + +msgid "Right mouse button" +msgstr "rechte Maustaste" + +msgid "Block supports" +msgstr "Support blockieren" + +msgid "Shift + Left mouse button" +msgstr "Shift + linke Maustaste" + +msgid "Erase" +msgstr "Löschen" + +msgid "Erase all painting" +msgstr "Alles gemalte löschen" + +msgid "Highlight overhang areas" +msgstr "Bereiche mit Überhang hervorheben" + +msgid "Gap fill" +msgstr "Lücken füllen" + +msgid "Perform" +msgstr "Ausführen" + +msgid "Gap area" +msgstr "Füllbereich" + +msgid "Tool type" +msgstr "Werkzeugtyp" + +msgid "Smart fill angle" +msgstr "Intelligenter Füllwinkel" + +msgid "On overhangs only" +msgstr "Nur an Überhängen" + +msgid "Auto support threshold angle: " +msgstr "Winkel für automatische Supports: " + +msgid "Circle" +msgstr "Kreis" + +msgid "Sphere" +msgstr "Kugel" + +msgid "Fill" +msgstr "Ausfüllen" + +msgid "Gap Fill" +msgstr "Lücken füllen" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "" +"Erlaubt das malen nur auf Seiten, welche ausgewählt wurden durch: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Markieren der Flächen entsprechend dem Überhangwinkel." + +msgid "No auto support" +msgstr "Kein automatischer Support" + +msgid "Support Generated" +msgstr "Support generiert" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo auf Fläche platzieren" + +msgid "Lay on face" +msgstr "Auf Fläche legen" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Die Anzahl der Filamente übersteigt die maximale Anzahl, die das Malwerkzeug " +"unterstützt. Nur die ersten %1% der Filamente werden im Malwerkzeug " +"verfügbar sein." + +msgid "Color Painting" +msgstr "Farben malen" + +msgid "Pen shape" +msgstr "Pinselform" + +msgid "Paint" +msgstr "Malen" + +msgid "Key 1~9" +msgstr "Schlüssel 1~9" + +msgid "Choose filament" +msgstr "Filament wählen" + +msgid "Edge detection" +msgstr "Kantenerkennung" + +msgid "Triangles" +msgstr "Dreiecke" + +msgid "Filaments" +msgstr "Filamente" + +msgid "Brush" +msgstr "Pinsel" + +msgid "Smart fill" +msgstr "Intelligentes Füllen" + +msgid "Bucket fill" +msgstr "Flächenfüllung" + +msgid "Height range" +msgstr "Höhenbereich" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "Gittermodell ein-/ausblenden" + +msgid "Shortcut Key " +msgstr "Tastenkürzel" + +msgid "Triangle" +msgstr "Dreieck" + +msgid "Height Range" +msgstr "Höhenbereich" + +msgid "Vertical" +msgstr "Vertikal" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Remove painted color" +msgstr "Gemalte Farbe entfernen" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Gemalt mit: Filament %1%" + +msgid "Move" +msgstr "Bewegen" + +msgid "Gizmo-Move" +msgstr "Gizmo-Bewegen" + +msgid "Rotate" +msgstr "Drehen" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-Drehen" + +msgid "Optimize orientation" +msgstr "Optimiere Ausrichtung" + +msgid "Apply" +msgstr "Anwenden" + +msgid "Scale" +msgstr "Skalieren" + +msgid "Gizmo-Scale" +msgstr "Gizmo-Skalieren" + +msgid "Error: Please close all toolbar menus first" +msgstr "Fehler: Bitte schließen sie zuerst alle Werkzeugleistenmenüs" + +msgid "in" +msgstr "in" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Position" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Drehung" + +msgid "Scale ratios" +msgstr "Skalierungsverhältnisse" + +msgid "Object Operations" +msgstr "Objekt-Operationen" + +msgid "Volume Operations" +msgstr "Volumen Operationen" + +msgid "Translate" +msgstr "Versetzen" + +msgid "Group Operations" +msgstr "Gruppen Operationen" + +msgid "Set Position" +msgstr "Position setzen" + +msgid "Set Orientation" +msgstr "Ausrichtung festlegen" + +msgid "Set Scale" +msgstr "Skalierung festlegen" + +msgid "Reset Position" +msgstr "Position zurücksetzen" + +msgid "Reset Rotation" +msgstr "Rotation zurücksetzen" + +msgid "World coordinates" +msgstr "Weltkoordinaten" + +msgid "Object coordinates" +msgstr "Objektkoordinaten" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Größe" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "einheitliche Skalierung" + +msgid "Planar" +msgstr "Planar" + +msgid "Dovetail" +msgstr "Schwalbenschwanz" + +msgid "Auto" +msgstr "Automatisch" + +msgid "Manual" +msgstr "Manuell" + +msgid "Plug" +msgstr "Einstecken" + +msgid "Dowel" +msgstr "Dübel" + +msgid "Snap" +msgstr "Einrasten" + +msgid "Prism" +msgstr "Prisma" + +msgid "Frustum" +msgstr "Frustum" + +msgid "Square" +msgstr "Quadrat" + +msgid "Hexagon" +msgstr "Sechseck" + +msgid "Keep orientation" +msgstr "Ausrichtung beibehalten" + +msgid "Place on cut" +msgstr "auf den Schnitt legen" + +msgid "Flip upside down" +msgstr "Auf den Kopf stellen" + +msgid "Connectors" +msgstr "Verbinder" + +msgid "Type" +msgstr "Typ" + +msgid "Style" +msgstr "Stil" + +msgid "Shape" +msgstr "Form" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Tiefe" + +msgid "Groove" +msgstr "Nut" + +msgid "Width" +msgstr "Breite" + +msgid "Flap Angle" +msgstr "Flügelwinkel" + +msgid "Groove Angle" +msgstr "Nutwinkel" + +msgid "Part" +msgstr "Teil" + +msgid "Object" +msgstr "Objekt" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Klicken Sie, um die Schnittebene umzudrehen\n" +"Ziehen Sie, um die Schnittebene zu bewegen" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Klicken Sie, um die Schnittebene umzudrehen\n" +"Ziehen Sie, um die Schnittebene zu bewegen\n" +"Klicken Sie mit der rechten Maustaste auf ein Teil, um es der anderen Seite " +"zuzuordnen" + +msgid "Move cut plane" +msgstr "Schnittfläche bewegen" + +msgid "Mode" +msgstr "Modus" + +msgid "Change cut mode" +msgstr "Schnittmodus ändern" + +msgid "Tolerance" +msgstr "Toleranz" + +msgid "Drag" +msgstr "Ziehen" + +msgid "Draw cut line" +msgstr "Schnittlinie zeichnen" + +msgid "Left click" +msgstr "Linksklick" + +msgid "Add connector" +msgstr "Verbinder zufügen" + +msgid "Right click" +msgstr "Rechtsklick" + +msgid "Remove connector" +msgstr "Verbinder entfernen" + +msgid "Move connector" +msgstr "Verbinder bewegen" + +msgid "Add connector to selection" +msgstr "Verbinder zur Auswahl hinzufügen" + +msgid "Remove connector from selection" +msgstr "Verbinder aus der Auswahl entfernen" + +msgid "Select all connectors" +msgstr "Alle Verbinder auswählen" + +msgid "Cut" +msgstr "Schneiden" + +msgid "Rotate cut plane" +msgstr "Schnittfläche drehen" + +msgid "Remove connectors" +msgstr "Verbinder entfernen" + +msgid "Bulge" +msgstr "Wölbung" + +msgid "Bulge proportion related to radius" +msgstr "Wölbungsverhältnis in Bezug auf den Radius" + +msgid "Space" +msgstr "Platz" + +msgid "Space proportion related to radius" +msgstr "Platzverhältnis in Bezug auf den Radius" + +msgid "Confirm connectors" +msgstr "Bestätige Verbinder" + +msgid "Cancel" +msgstr "Abbrechen" + +msgid "Build Volume" +msgstr "Bau Volumen" + +msgid "Flip cut plane" +msgstr "Schnittfläche umdrehen" + +msgid "Groove change" +msgstr "Nut ändern" + +msgid "Reset" +msgstr "Zurücksetzen" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Bearbeitet" + +msgid "Cut position" +msgstr "Schnittposition" + +msgid "Reset cutting plane" +msgstr "Schnittfläche zurücksetzen" + +msgid "Edit connectors" +msgstr "Verbinder ändern" + +msgid "Add connectors" +msgstr "Verbinder zufügen" + +msgid "Reset cut" +msgstr "Schnitt zurücksetzen" + +msgid "Reset cutting plane and remove connectors" +msgstr "Schnittfläche zurücksetzen und Verbinder entfernen" + +msgid "Upper part" +msgstr "Oberes Teil" + +msgid "Lower part" +msgstr "Unteres Teil" + +msgid "Keep" +msgstr "Behalten" + +msgid "Flip" +msgstr "umdrehen" + +msgid "After cut" +msgstr "nach dem Schnitt" + +msgid "Cut to parts" +msgstr "In Teile schneiden" + +msgid "Perform cut" +msgstr "Schnitt ausführen" + +msgid "Warning" +msgstr "Warnung" + +msgid "Invalid connectors detected" +msgstr "Fehlerhafte Verbinder gefunden" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "%1$d Verbinder ist außerhalb des Schnittkontur" +msgstr[1] "%1$d Verbinder sind außerhalb des Schnittkontur" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "%1$d Verbinder ist außerhalb des Objekts" +msgstr[1] "%1$d Verbinder sind außerhalb des Objekts" + +msgid "Some connectors are overlapped" +msgstr "Einige Verbinder überlappen sich" + +msgid "Select at least one object to keep after cutting." +msgstr "" +"Wählen Sie mindestens ein Objekt aus, das nach dem Schneiden erhalten " +"bleiben soll." + +msgid "Cut plane is placed out of object" +msgstr "Schnittfläche ist außerhalb des Objekts platziert" + +msgid "Cut plane with groove is invalid" +msgstr "Schnittfläche mit Nut ist ungültig" + +msgid "Connector" +msgstr "Verbinder" + +msgid "Cut by Plane" +msgstr "Schnitt durch Ebene" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"Nicht-manifold Kanten durch Schneidwerkzeug verursacht, möchten Sie es jetzt " +"beheben?" + +msgid "Repairing model object" +msgstr "Modellobjekt reparieren" + +msgid "Cut by line" +msgstr "Schnitt durch Linie" + +msgid "Delete connector" +msgstr "Verbinder löschen" + +msgid "Mesh name" +msgstr "Netzname" + +msgid "Detail level" +msgstr "Detailgrad" + +msgid "Decimate ratio" +msgstr "Dezimierungsverhältnis" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Die Verarbeitung des Modells '%1%' mit mehr als 1M Dreiecken könnte langsam " +"sein. Es wird dringend empfohlen, das Modell zu vereinfachen." + +msgid "Simplify model" +msgstr "Modell vereinfachen" + +msgid "Simplify" +msgstr "Vereinfachen" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"Die Vereinfachung ist derzeit nur möglich, wenn ein einzelnes Teil " +"ausgewählt ist" + +msgid "Error" +msgstr "Fehler" + +msgid "Extra high" +msgstr "Extra hoch" + +msgid "High" +msgstr "Hoch" + +msgid "Medium" +msgstr "Mittel" + +msgid "Low" +msgstr "Niedrig" + +msgid "Extra low" +msgstr "Sehr niedrig" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d Dreiecke" + +msgid "Show wireframe" +msgstr "Gittermodell anzeigen" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "Kann nicht angewendet werden, wenn die Vorschau angezeigt wird." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Operation wird bereits abgebrochen. Bitte warten Sie einige Sekunden." + +msgid "Face recognition" +msgstr "Gesichtserkennung" + +msgid "Perform Recognition" +msgstr "Erkennung durchführen" + +msgid "Brush size" +msgstr "Pinselgröße" + +msgid "Brush shape" +msgstr "Pinselform" + +msgid "Enforce seam" +msgstr "Naht erzwingen" + +msgid "Block seam" +msgstr "Naht blockieren" + +msgid "Seam painting" +msgstr "Naht aufmalen" + +msgid "Remove selection" +msgstr "Auswahl entfernen" + +msgid "Entering Seam painting" +msgstr "Beginne Naht aufmalen" + +msgid "Leaving Seam painting" +msgstr "Verlasse Naht aufmalen" + +msgid "Paint-on seam editing" +msgstr "Aufgemalte Naht bearbeiten" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Schiftart" + +msgid "Thickness" +msgstr "Dicke" + +msgid "Text Gap" +msgstr "Textabstand" + +msgid "Angle" +msgstr "Winkel" + +msgid "" +"Embeded\n" +"depth" +msgstr "" +"Eingebettete\n" +"Tiefe" + +msgid "Input text" +msgstr "Text eingeben" + +msgid "Surface" +msgstr "Oberfläche" + +msgid "Horizontal text" +msgstr "Horizontaler Text" + +msgid "Shift + Mouse move up or down" +msgstr "Umschalttaste + Mausbewegung nach oben oder unten" + +msgid "Rotate text" +msgstr "Text drehen" + +msgid "Text shape" +msgstr "Text zufügen" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Text drehen" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Text verschieben" + +msgid "Set Mirror" +msgstr "Spiegel setzen" + +msgid "Embossed text" +msgstr "Geprägter Text" + +msgid "Enter emboss gizmo" +msgstr "Geprägten Teil eingeben" + +msgid "Leave emboss gizmo" +msgstr "Geprägten Teil verlassen" + +msgid "Embossing actions" +msgstr "Geprägte Aktionen" + +msgid "Emboss" +msgstr "Prägen" + +msgid "NORMAL" +msgstr "Normal" + +msgid "SMALL" +msgstr "Schmal" + +msgid "ITALIC" +msgstr "kursiv" + +msgid "SWISS" +msgstr "swiss" + +msgid "MODERN" +msgstr "modern" + +msgid "First font" +msgstr "erste Schriftart" + +msgid "Default font" +msgstr "Standard-Schriftart" + +msgid "Advanced" +msgstr "Erweiterte Einstellungen" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"Der Text kann nicht mit der ausgewählten Schriftart geschrieben werden. " +"Versuchen Sie es mit einer anderen Schriftart." + +msgid "Embossed text cannot contain only white spaces." +msgstr "Der geprägte Text darf nicht nur Leerzeichen enthalten." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "Text enthält ein Zeichen, das von der Schriftart nicht erkannt wird." + +msgid "Text input doesn't show font skew." +msgstr "Texteingabe zeigt keine Schriftneigung an." + +msgid "Text input doesn't show font boldness." +msgstr "Texteingabe zeigt keine Schriftstärke an." + +msgid "Text input doesn't show gap between lines." +msgstr "Texteingabe zeigt keinen Abstand zwischen den Zeilen." + +msgid "Too tall, diminished font height inside text input." +msgstr "Zu groß, verkleinerte Schriftgröße innerhalb der Texteingabe." + +msgid "Too small, enlarged font height inside text input." +msgstr "Zu klein, vergrößerte Schriftgröße innerhalb der Texteingabe." + +msgid "Text doesn't show current horizontal alignment." +msgstr "Text zeigt aktuelle horizontale Ausrichtung nicht an." + +msgid "Revert font changes." +msgstr "Rückgängig machen der Schriftartänderungen." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "Schriftart \"%1%\" kann nicht ausgewählt werden." + +msgid "Operation" +msgstr "Operation" + +msgid "Join" +msgstr "Zusammenfügen" + +msgid "Click to change text into object part." +msgstr "Klicken Sie hier, um den Text in ein Objektteil zu ändern." + +msgid "You can't change a type of the last solid part of the object." +msgstr "Sie können den Typ des letzten festen Teils des Objekts nicht ändern." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Ausschneiden" + +msgid "Click to change part type into negative volume." +msgstr "Klicken Sie hier, um den Teiltyp in ein negatives Volumen zu ändern." + +msgid "Modifier" +msgstr "Modifizierer" + +msgid "Click to change part type into modifier." +msgstr "Klicken Sie hier, um den Teiltyp in einen Modifizierer zu ändern." + +msgid "Change Text Type" +msgstr "Ändere Texttyp" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Umbenennen des Stils (%1%) für geprägten Text" + +msgid "Name can't be empty." +msgstr "Name darf nicht leer sein." + +msgid "Name has to be unique." +msgstr "Name muss eindeutig sein." + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "Benenne Stil um" + +msgid "Rename current style." +msgstr "Benenne aktuellen Stil um." + +msgid "Can't rename temporary style." +msgstr "Kann temporären Stil nicht umbenennen." + +msgid "First Add style to list." +msgstr "Erst Stil zur Liste hinzufügen." + +#, boost-format +msgid "Save %1% style" +msgstr "Speichere %1% Stil" + +msgid "No changes to save." +msgstr "Keine Änderungen zum Speichern." + +msgid "New name of style" +msgstr "Neuer Name des Stils" + +msgid "Save as new style" +msgstr "Speichern als neuen Stil" + +msgid "Only valid font can be added to style." +msgstr "Nur gültige Schriftarten können dem Stil hinzugefügt werden." + +msgid "Add style to my list." +msgstr "Addiere Stil zu meiner Liste." + +msgid "Save as new style." +msgstr "Speichern als neuen Stil." + +msgid "Remove style" +msgstr "Entferne Stil" + +msgid "Can't remove the last existing style." +msgstr "Kann den letzten vorhandenen Stil nicht entfernen." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "Sie möchten den Stil \"%1%\" wirklich dauerhaft entfernen?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "Lösche \"%1%\" Stil." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "Kann \"%1%\" nicht löschen. Es ist der letzte Stil." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "Kann temporären Stil \"%1%\" nicht löschen." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Modifizierter Stil \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "Aktueller Stil ist \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"Das Ändern des Stils zu \"%1%\" verwirft die aktuelle Stiländerung.\n" +"\n" +"Möchten Sie trotzdem fortfahren?" + +msgid "Not valid style." +msgstr "Kein gültiger Stil." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "" +"Stil \"%1%\" kann nicht verwendet werden und wird aus der Liste entfernt." + +msgid "Unset italic" +msgstr "Kursiven Text aufheben" + +msgid "Set italic" +msgstr "Setze kursiven Text" + +msgid "Unset bold" +msgstr "Schriftstärke aufheben" + +msgid "Set bold" +msgstr "Setze fette Schrift" + +msgid "Revert text size." +msgstr "Rückgängig machen der Textgröße." + +msgid "Revert embossed depth." +msgstr "Rückgängig machen der geprägten Tiefe." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"Erweiterte Optionen können für die ausgewählte Schriftart nicht geändert " +"werden.\n" +"Wählen Sie eine andere Schriftart." + +msgid "Revert using of model surface." +msgstr "Benutzen der Oberfläche des Modells rückgängig machen." + +msgid "Revert Transformation per glyph." +msgstr "Transformation pro Zeichen rückgängig machen." + +msgid "Set global orientation for whole text." +msgstr "Setze globale Ausrichtung für den gesamten Text." + +msgid "Set position and orientation per glyph." +msgstr "Setze Position und Ausrichtung pro Zeichen." + +msgctxt "Alignment" +msgid "Left" +msgstr "Links" + +msgctxt "Alignment" +msgid "Center" +msgstr "Zentriert" + +msgctxt "Alignment" +msgid "Right" +msgstr "Rechts" + +msgctxt "Alignment" +msgid "Top" +msgstr "Oben" + +msgctxt "Alignment" +msgid "Middle" +msgstr "Mitte" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Boden" + +msgid "Revert alignment." +msgstr "Ausrichtung rückgängig machen." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "Punkte" + +msgid "Revert gap between characters" +msgstr "Abstand zwischen den Zeichen rückgängig machen" + +msgid "Distance between characters" +msgstr "Abstand zwischen den Zeichen" + +msgid "Revert gap between lines" +msgstr "Abstand zwischen den Zeilen rückgängig machen" + +msgid "Distance between lines" +msgstr "Abstand zwischen den Zeilen" + +msgid "Undo boldness" +msgstr "Dicke rückgängig machen" + +msgid "Tiny / Wide glyphs" +msgstr "Tiny / Wide glyphs" + +msgid "Undo letter's skew" +msgstr "Rückgängig machen der Schriftneigung" + +msgid "Italic strength ratio" +msgstr "Neigungsverhältnis" + +msgid "Undo translation" +msgstr "Übersetzung rückgängig machen" + +msgid "Distance of the center of the text to the model surface." +msgstr "Abstand des Textmittelpunkts zur Modell-Oberfläche." + +msgid "Undo rotation" +msgstr "Rotation rückgängig machen" + +msgid "Rotate text Clock-wise." +msgstr "im Uhrzeigersinn drehen." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"Entsperren Sie die Rotation des Textes beim Verschieben des Textes entlang " +"der Oberfläche des Objekts." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" +"Verriegeln Sie die Rotation des Textes beim Verschieben des Textes entlang " +"der Oberfläche des Objekts." + +msgid "Select from True Type Collection." +msgstr "Sammlung von True Type auswählen." + +msgid "Set text to face camera" +msgstr "Setze Text zur Kamera" + +msgid "Orient the text towards the camera." +msgstr "Ortne den Text zur Kamera aus." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"Kann genau dieselbe Schriftart (\"%1%\") nicht laden. Die Anwendung hat eine " +"ähnliche (\"%2%\") ausgewählt. Sie müssen eine Schriftart angeben, um die " +"Textbearbeitung zu aktivieren." + +msgid "No symbol" +msgstr "Kein Symbol" + +msgid "Loading" +msgstr "Lade" + +msgid "In queue" +msgstr "In Warteschlange" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Höhe" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Benutze Oberfläche" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "pro Zeichen" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Ausrichtung" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Zeichenabstand" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Linienabstand" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Durchschlag" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Winkelverhältnis" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Von Oberfläche" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "Behalte oben" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Sammlung" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "SVG drehen" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "SVG verschieben" + +msgid "Enter SVG gizmo" +msgstr "SVG-Gizmo eingeben" + +msgid "Leave SVG gizmo" +msgstr "SVG-Gizmo verlassen" + +msgid "SVG actions" +msgstr "SVG-Aktionen" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Deckkraft (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Farbverlauf (%1%)" + +msgid "Undefined fill type" +msgstr "Unbestimmter Fülltyp" + +msgid "Linear gradient" +msgstr "Linearer Farbverlauf" + +msgid "Radial gradient" +msgstr "Radialer Farbverlauf" + +msgid "Open filled path" +msgstr "ausgefüllten Pfad öffnen" + +msgid "Undefined stroke type" +msgstr "Undefinierter Strich-Typ" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" +"Pfad kann nicht von Selbstüberschneidungen und mehreren Punkten geheilt " +"werden." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"Die endgültige Form enthält Selbstüberschneidungen oder mehrere Punkte mit " +"den gleichen Koordinaten." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "Shape ist als unsichtbar markiert (%1%)." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "Füllung der Form (%1%) enthält nicht unterstützte: %2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "Striche der Form (%1%) ist zu dünn (minimale Breite ist %2% mm)." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "Striche der Form (%1%) enthält nicht unterstützte: %2%." + +msgid "Face the camera" +msgstr "Gesicht zur Kamera" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Unbekannter Dateiname" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "SVG-Dateipfad ist \"%1%\"" + +msgid "Reload SVG file from disk." +msgstr "Neu laden der SVG-Datei von der Festplatte." + +msgid "Change file" +msgstr "Datei wechseln" + +msgid "Change to another .svg file" +msgstr "Wechsel zu einer anderen .svg-Datei" + +msgid "Forget the file path" +msgstr "Dateipfad vergessen" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"Lokalen Pfad nicht in 3MF-Datei speichern.\n" +"Deaktiviert auch die Option 'Von Festplatte neu laden'." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Einbrennen" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Einbrennen in das Modell als nicht editierbares Teil" + +msgid "Save as" +msgstr "Speichern als" + +msgid "Save SVG file" +msgstr "SVG-Datei speichern" + +msgid "Save as '.svg' file" +msgstr "Speichern als '.svg'-Datei" + +msgid "Size in emboss direction." +msgstr "Größe in Prägerichtung." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "Skalierung ändert auch die Anzahl der Kurvensamples (%1%)" + +msgid "Width of SVG." +msgstr "Weite des SVG." + +msgid "Height of SVG." +msgstr "Höhe des SVG." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "Verriegeln/Entriegeln des Seitenverhältnisses des SVG." + +msgid "Reset scale" +msgstr "Skalierung zurücksetzen" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "Distanz des SVG-Mittelpunkts zur Modell-Oberfläche." + +msgid "Reset distance" +msgstr "Distanz zurücksetzen" + +msgid "Reset rotation" +msgstr "Rotation zurücksetzen" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" +"Verriegeln/Entriegeln des Rotationswinkels beim Ziehen über die Oberfläche." + +msgid "Mirror vertically" +msgstr "Spiegeln vertikal" + +msgid "Mirror horizontally" +msgstr "Spiegeln horizontal" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "Wechsel SVG-Typ" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Spiegeln" + +msgid "Choose SVG file for emboss:" +msgstr "Wählen sie eine SVG-Datei zum Prägen:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "Datei existiert nicht (%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "Dateiname muss mit \".svg\" enden, aber Sie haben %1% ausgewählt" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "Nano SVG-Parser kann nicht aus Datei laden (%1%)." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "SVG-Datei enthält keinen einzigen Pfad zum Prägen (%1%)." + +msgid "Vertex" +msgstr "Eckpunkt" + +msgid "Edge" +msgstr "Kante" + +msgid "Plane" +msgstr "Ebene" + +msgid "Point on edge" +msgstr "Punkt auf Kante" + +msgid "Point on circle" +msgstr "Punkt auf Kreis" + +msgid "Point on plane" +msgstr "Punkt auf Ebene" + +msgid "Center of edge" +msgstr "Zentrum der Kante" + +msgid "Center of circle" +msgstr "Zentrum des Kreises" + +msgid "ShiftLeft mouse button" +msgstr "Umschalttaste + Linksklick" + +msgid "Select feature" +msgstr "Feature auswählen" + +msgid "Select point" +msgstr "Punkt auswählen" + +msgid "Delete" +msgstr "Löschen" + +msgid "Restart selection" +msgstr "Auswahl neu starten" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "Abwählen" + +msgid "Measure" +msgstr "Messen" + +msgid "Edit to scale" +msgstr "Bearbeiten auf Skala" + +msgctxt "Verb" +msgid "Scale" +msgstr "Skalieren" + +msgid "None" +msgstr "Keine" + +msgid "Diameter" +msgstr "Durchmesser" + +msgid "Length" +msgstr "Länge" + +msgid "Selection" +msgstr "Auswahl" + +msgid "Copy to clipboard" +msgstr "In Zwischenablage kopieren" + +msgid "Perpendicular distance" +msgstr "Senkrechte Entfernung" + +msgid "Distance" +msgstr "Entfernung" + +msgid "Direct distance" +msgstr "Direkte Entfernung" + +msgid "Distance XYZ" +msgstr "Entfernung XYZ" + +msgid "Ctrl+" +msgstr "Strg +" + +msgid "Notice" +msgstr "Hinweis" + +msgid "Undefined" +msgstr "Undefiniert" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% wurde mit %2% getauscht" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" +"Die Konfiguration wurde möglicherweise mit einer neueren Version von Orca " +"Slicer generiert." + +msgid "Some values have been replaced. Please check them:" +msgstr "Einige Werte sind ersetzt worden. Bitte überprüfen Sie diese:" + +msgid "Process" +msgstr "Prozess" + +msgid "Filament" +msgstr "Filament" + +msgid "Machine" +msgstr "Maschine" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"Konfigurationspaket wurde geladen, aber einige Werte wurden nicht erkannt." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Konfigurationsdatei \"%1%\" wurde geladen, aber einige Werte wurden nicht " +"erkannt." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca wird wegen Arbeitsspeichermangels beendet, was ein Bug sein kann. " +"Bitte melden Sie diesen Fehler dem technischen Support." + +msgid "Fatal error" +msgstr "Schwerwiegender Fehler" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca wird aufgrund eines Lokalisierungsfehlers beendet.Bitte melden " +"Sie diesen Fehler dem technischen Support." + +msgid "Critical error" +msgstr "Kritischer Fehler" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca hat eine unbehandelte Ausnahme erzeugt: %1%" + +msgid "Untitled" +msgstr "Unbenannt" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Lade Orca Network Plug-in herunter" + +msgid "Login information expired. Please login again." +msgstr "Login abgelaufen. Bitte neu einloggen." + +msgid "Incorrect password" +msgstr "Falsches Passwort" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "Verbindung zu %s fehlgeschlagen! [SN:%s, code=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca benötigt die Microsoft WebView2-Runtime, um bestimmte Funktionen " +"auszuführen.\n" +"Klicken Sie auf Ja, um sie jetzt zu installieren." + +msgid "WebView2 Runtime" +msgstr "WebView2-Runtime" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Möchten Sie fortfahren?" + +msgid "Remember my choice" +msgstr "Meine Auswahl merken" + +msgid "Loading configuration" +msgstr "Lade Konfiguration" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "" +"Klicken Sie hier, um die neueste Version im Standardbrowser herunterzuladen: " +"%s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca benötigt ein Upgrade" + +msgid "This is the newest version." +msgstr "Dies ist die neueste Version." + +msgid "Info" +msgstr "Info" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"Die Snapmaker Orca-Konfigurationsdatei ist möglicherweise beschädigt und kann " +"nicht analysiert werden.\n" +"Snapmaker Orca hat versucht, die Konfigurationsdatei neu zu erstellen.\n" +"Bitte beachten Sie, dass die Anwendungseinstellungen verloren gehen, die " +"Druckerprofile jedoch nicht betroffen sind." + +msgid "Rebuild" +msgstr "Wiederaufbau" + +msgid "Loading current presets" +msgstr "Aktuelle Profile laden" + +msgid "Loading a mode view" +msgstr "Laden einer Modusansicht" + +msgid "Choose one file (3mf):" +msgstr "Wählen sie eine Datei (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "" +"Wählen sie eine oder mehrere Dateien (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Wählen sie eine oder mehrere Dateien (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "ZIP Datei wählen" + +msgid "Choose one file (gcode/3mf):" +msgstr "Wählen sie eine Datei (3mf):" + +msgid "Some presets are modified." +msgstr "Einige Profileinstellungen wurden geändert." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Sie können die geänderten Profile in das neue Projekt übernehmen, verwerfen " +"oder als neue Profile speichern." + +msgid "User logged out" +msgstr "Benutzer abgemeldet" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" +"Während des Slicingvorgangs kann keine neue Datei erstellt oder geöffnet " +"werden!" + +msgid "Open Project" +msgstr "Projekt öffnen" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"Die Version von Snapmaker Orca ist veraltet und muss auf die neueste Version " +"aktualisiert werden, bevor sie normal verwendet werden kann" + +msgid "Privacy Policy Update" +msgstr "Datenschutzrichtlinien-Update" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"Die Anzahl der im Cloud-Cache gespeicherten Benutzerprofile hat das Limit " +"überschritten. Neu erstellte Benutzerprofile können nur lokal verwendet " +"werden." + +msgid "Sync user presets" +msgstr "Benutzerprofile synchronisieren" + +msgid "Loading user preset" +msgstr "Benutzerprofil wird geladen" + +msgid "Switching application language" +msgstr "Wechsel der Sprache" + +msgid "Select the language" +msgstr "Sprache wählen" + +msgid "Language" +msgstr "Spache" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Die Uploads sind noch nicht abgeschlossen." + +msgid "Stop them and continue anyway?" +msgstr "Stoppen und trotzdem fortsetzen?" + +msgid "Ongoing uploads" +msgstr "Laufende Uploads" + +msgid "Select a G-code file:" +msgstr "Wähle eine G-Code Datei:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"Der URL-Download konnte nicht gestartet werden. Der Zielordner ist nicht " +"festgelegt. Bitte wählen Sie den Zielordner im Konfigurationsassistenten." + +msgid "Import File" +msgstr "Datei importieren" + +msgid "Choose files" +msgstr "Dateien auswählen" + +msgid "New Folder" +msgstr "Neuer Ordner" + +msgid "Open" +msgstr "Öffnen" + +msgid "Rename" +msgstr "Umbenennen" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Initialisierung der Snapmaker Orca GUI ist fehlgeschlagen" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Schwerwiegender Fehler, Ausnahme: %1%" + +msgid "Quality" +msgstr "Qualität" + +msgid "Shell" +msgstr "Schale" + +msgid "Infill" +msgstr "Füllung" + +msgid "Support" +msgstr "Stützen" + +msgid "Flush options" +msgstr "Optionen für die Düsenreinigung" + +msgid "Speed" +msgstr "Geschwindigkeit" + +msgid "Strength" +msgstr "Struktur" + +msgid "Top Solid Layers" +msgstr "Obere volle Schichten" + +msgid "Top Minimum Shell Thickness" +msgstr "Obere minimale Schalendicke" + +msgid "Bottom Solid Layers" +msgstr "Untere volle Schichten" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Minimale Dicke der unteren Schichten" + +msgid "Ironing" +msgstr "Glätten" + +msgid "Fuzzy Skin" +msgstr "Fuzzy Skin" + +msgid "Extruders" +msgstr "Extruder" + +msgid "Extrusion Width" +msgstr "Extrusionsbreite" + +msgid "Wipe options" +msgstr "Wischoptionen" + +msgid "Bed adhesion" +msgstr "Druckbetthaftung" + +msgid "Add part" +msgstr "Teil hinzufügen" + +msgid "Add negative part" +msgstr "Negatives Teil hinzufügen" + +msgid "Add modifier" +msgstr "Modifizierer hinzufügen" + +msgid "Add support blocker" +msgstr "Supportblocker hinzufügen" + +msgid "Add support enforcer" +msgstr "Supportverstärker hinzufügen" + +msgid "Add text" +msgstr "Text hinzufügen" + +msgid "Add negative text" +msgstr "Negativen Text hinzufügen" + +msgid "Add text modifier" +msgstr "Textmodifizierer hinzufügen" + +msgid "Add SVG part" +msgstr "SVG Teil hinzufügen" + +msgid "Add negative SVG" +msgstr "Negatives SVG hinzufügen" + +msgid "Add SVG modifier" +msgstr "SVG Modifizierer hinzufügen" + +msgid "Select settings" +msgstr "Wähle Einstellungen" + +msgid "Hide" +msgstr "Ausblenden" + +msgid "Show" +msgstr "Anzeigen" + +msgid "Del" +msgstr "Entf" + +msgid "Delete the selected object" +msgstr "Ausgewähltes Objekt löschen" + +msgid "Load..." +msgstr "Laden..." + +msgid "Cube" +msgstr "Würfel" + +msgid "Cylinder" +msgstr "Zylinder" + +msgid "Cone" +msgstr "Kegel" + +msgid "Disc" +msgstr "Scheibe" + +msgid "Torus" +msgstr "Torus" + +msgid "Orca Cube" +msgstr "Orca Würfel" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Autodesk FDM Test" + +msgid "Voron Cube" +msgstr "Voron Würfel" + +msgid "Stanford Bunny" +msgstr "Stanford Hase" + +msgid "Orca String Hell" +msgstr "Orca String Hell" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Dieses Modell verfügt über eine Textprägung auf der Oberfläche. Für optimale " +"Ergebnisse wird empfohlen, die 'One Wall Threshold (min_width_top_surface)' " +"für 'Nur eine Wand auf Oberflächen' auf 0 zu setzen, um das Beste zu " +"erreichen.\n" +"Ja - Ändern Sie diese Einstellungen automatisch\n" +"Nein - Ändern Sie diese Einstellungen nicht für mich" + +msgid "Text" +msgstr "T" + +msgid "Height range Modifier" +msgstr "Höhen Modifizieren" + +msgid "Add settings" +msgstr "Einstellungen hinzufügen" + +msgid "Change type" +msgstr "Typ ändern" + +msgid "Set as an individual object" +msgstr "Als eigenes Objekt definieren" + +msgid "Set as individual objects" +msgstr "Als eigene Objekte definieren" + +msgid "Fill bed with copies" +msgstr "Bett mit Kopien füllen" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "" +"Füllen des verbleibenden Bettbereich mit Kopien des ausgewählten Objekts" + +msgid "Printable" +msgstr "Druckbar" + +msgid "Fix model" +msgstr "Modell reparieren" + +msgid "Export as one STL" +msgstr "Exportieren als eine STL" + +msgid "Export as STLs" +msgstr "Exportieren als STLs" + +msgid "Reload from disk" +msgstr "Von der Festplatte neu laden" + +msgid "Reload the selected parts from disk" +msgstr "Die ausgewählten Teile von der Festplatte neu laden" + +msgid "Replace with STL" +msgstr "Durch STL Datei austauschen" + +msgid "Replace the selected part with new STL" +msgstr "Ausgewähltes Teil durch eine neue STL ersetzen." + +msgid "Change filament" +msgstr "Filament wechseln" + +msgid "Set filament for selected items" +msgstr "Filament für ausgewählte Elemente festlegen" + +msgid "Default" +msgstr "Standard" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filament %d" + +msgid "current" +msgstr "Aktuell" + +msgid "Scale to build volume" +msgstr "Auf Druckvolumen skalieren" + +msgid "Scale an object to fit the build volume" +msgstr "Objekt so so skalieren, dass es in den Druckraum passt" + +msgid "Flush Options" +msgstr "Optionen für die Düsenreinigung" + +msgid "Flush into objects' infill" +msgstr "Düse in der Füllung des Objekts reinigen" + +msgid "Flush into this object" +msgstr "Düse in diesem Objekt reinigen" + +msgid "Flush into objects' support" +msgstr "Düse in der Stützstruktur des Objekts reinigen" + +msgid "Edit in Parameter Table" +msgstr "Bearbeiten in der Parametertabelle" + +msgid "Convert from inch" +msgstr "Von Inch umrechnen" + +msgid "Restore to inch" +msgstr "Zu Inch zurücksetzen" + +msgid "Convert from meter" +msgstr "Von Metern umrechnen" + +msgid "Restore to meter" +msgstr "Auf Meter zurücksetzen" + +msgid "Assemble" +msgstr "Zusammenbauen" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "" +"Die ausgewählten Objekte zu einem Objekt mit mehreren Teilen zusammenfügen" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Zusammenfügen der ausgewählten Objekte zu einem Objekt mit einem Teil" + +msgid "Mesh boolean" +msgstr "Mesh-Boolesche Operationen" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Mesh-Boolesche Operationen, einschließlich Vereinigung und Subtraktion" + +msgid "Along X axis" +msgstr "Entlang der X Achse" + +msgid "Mirror along the X axis" +msgstr "An der X-Achse spiegeln" + +msgid "Along Y axis" +msgstr "Entlang der Y Achse" + +msgid "Mirror along the Y axis" +msgstr "An der Y-Achse spiegeln" + +msgid "Along Z axis" +msgstr "Entlang der Z Achse" + +msgid "Mirror along the Z axis" +msgstr "An der Z-Achse spiegeln" + +msgid "Mirror object" +msgstr "Objekt spiegeln" + +msgid "Edit text" +msgstr "Text bearbeiten" + +msgid "Ability to change text, font, size, ..." +msgstr "Möglichkeit, Text, Schriftart, Größe, ... zu ändern" + +msgid "Edit SVG" +msgstr "SVG bearbeiten" + +msgid "Change SVG source file, projection, size, ..." +msgstr "Ändern der SVG-Quelldatei, Projektion, Größe, ..." + +msgid "Invalidate cut info" +msgstr "Fehlerhafte Schnitt Info" + +msgid "Add Primitive" +msgstr "Primitiv hinzufügen" + +msgid "Add Handy models" +msgstr "Modelle hinzufügen" + +msgid "Add Models" +msgstr "Modelle hinzufügen" + +msgid "Show Labels" +msgstr "Bezeichnung anzeigen" + +msgid "To objects" +msgstr "Zu Objekten" + +msgid "Split the selected object into multiple objects" +msgstr "Das ausgewählte Objekt in mehrere Objekte aufteilen" + +msgid "To parts" +msgstr "Zu Teilen" + +msgid "Split the selected object into multiple parts" +msgstr "Das ausgewählte Objekt in mehrere Teile aufteilen" + +msgid "Split" +msgstr "Teilen" + +msgid "Split the selected object" +msgstr "Das ausgewählte Objekt teilen" + +msgid "Auto orientation" +msgstr "Automatische Ausrichtung" + +msgid "Auto orient the object to improve print quality." +msgstr "" +"Automatische Ausrichtung des Objekts zur Verbesserung der Druckqualität." + +msgid "Select All" +msgstr "Alle auswählen" + +msgid "select all objects on current plate" +msgstr "Alle Objekte auf der aktuellen Druckplatte auswählen" + +msgid "Delete All" +msgstr "Alles löschen" + +msgid "delete all objects on current plate" +msgstr "Alle Objekte auf der aktuellen Druckplatte löschen" + +msgid "Arrange" +msgstr "Anordnen" + +msgid "arrange current plate" +msgstr "Aktuelle Druckplatte anordnen" + +msgid "Reload All" +msgstr "Alles neu laden" + +msgid "reload all from disk" +msgstr "Alles von der Festplatte neu laden" + +msgid "Auto Rotate" +msgstr "Automatisch rotieren" + +msgid "auto rotate current plate" +msgstr "Aktuelle Druckplatte automatisch rotieren" + +msgid "Delete Plate" +msgstr "Platte löschen" + +msgid "Remove the selected plate" +msgstr "Aktuelle Druckplatte entfernen" + +msgid "Clone" +msgstr "Duplizieren" + +msgid "Simplify Model" +msgstr "Modell vereinfachen" + +msgid "Center" +msgstr "Zur Mitte" + +msgid "Edit Process Settings" +msgstr "Prozesseinstellungen" + +msgid "Edit print parameters for a single object" +msgstr "Druckparameter für ein einzelnes Objekt bearbeiten" + +msgid "Change Filament" +msgstr "Filament wechseln" + +msgid "Set Filament for selected items" +msgstr "Filament für ausgewählte Elemente festlegen" + +msgid "Unlock" +msgstr "Entsperren" + +msgid "Lock" +msgstr "Sperren" + +msgid "Edit Plate Name" +msgstr "Ändere Plattenname" + +msgid "Name" +msgstr "Name" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d Fehler repariert" +msgstr[1] "%1$d Fehler repariert" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Fehler: %1$d „non-manifold\" Kante." +msgstr[1] "Fehler: %1$d „non-manifold\" Kanten." + +msgid "Remaining errors" +msgstr "Verbleibende Fehler" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d „non-manifold\" Kante" +msgstr[1] "%1$d „non-manifold\" Kanten" + +msgid "Right click the icon to fix model object" +msgstr "" +"Klicken Sie mit der rechten Maustaste auf das Symbol, um das Modellobjekt zu " +"reparieren" + +msgid "Right button click the icon to drop the object settings" +msgstr "" +"Klicken Sie mit der rechten Maustaste auf das Symbol, um die " +"Objekteinstellungen zu löschen" + +msgid "Click the icon to reset all settings of the object" +msgstr "" +"Klicken Sie auf das Symbol, um alle Einstellungen des Objekts zurückzusetzen" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Klicken Sie mit der rechten Maustaste auf das Symbol, um die druckbare " +"Eigenschaft des Objekts zu löschen" + +msgid "Click the icon to toggle printable property of the object" +msgstr "" +"Klicken Sie auf das Symbol, um die druckbare Eigenschaft des Objekts " +"einzuschalten" + +msgid "Click the icon to edit support painting of the object" +msgstr "" +"Klicken Sie auf das Symbol, um die aufgemalten Stützen des Objekts zu " +"bearbeiten" + +msgid "Click the icon to edit color painting of the object" +msgstr "" +"Klicken Sie auf das Symbol, um die Farbgebung des Objekts zu bearbeiten" + +msgid "Click the icon to shift this object to the bed" +msgstr "" +"Klicken Sie auf das Symbol, um dieses Objekt auf das Bett zu verschieben." + +msgid "Loading file" +msgstr "Lade Datei" + +msgid "Error!" +msgstr "Fehler!" + +msgid "Failed to get the model data in the current file." +msgstr "Fehler beim Abrufen der Modell-Daten in der aktuellen Datei." + +msgid "Generic" +msgstr "Generisch" + +msgid "Add Modifier" +msgstr "Modifizierer hinzufügen" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Wechseln Sie in den objektbezogenen Einstellungsmodus, um die " +"Modifikatoreinstellungen zu bearbeiten." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Wechseln Sie in den objektbezogenen Einstellungsmodus, um die " +"Prozesseinstellungen der ausgewählten Objekte zu bearbeiten." + +msgid "Delete connector from object which is a part of cut" +msgstr "Lösche den Verbinder aus dem Objekt, das Teil des Schnitts ist." + +msgid "Delete solid part from object which is a part of cut" +msgstr "Lösche den massiven Teil aus dem Objekt, das Teil des Schnitts ist." + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Lösche das negative Volumen aus dem Objekt, das Teil des Schnitts ist." + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Um die Schnittkorrespondenz zu speichern, können Sie alle Verbinder von " +"allen zugehörigen Objekten löschen." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"Durch diese Aktion wird eine Schnittkorrespondenz unterbrochen.\n" +"Danach kann die Modellkonsistenz nicht garantiert werden.\n" +"\n" +"Um mit massiven Teilen oder negativen Volumen zu arbeiten, \n" +"müssen Sie zuerst die Schnittinformationen ungültig machen." + +msgid "Delete all connectors" +msgstr "Lösche alle Verbinder" + +msgid "Deleting the last solid part is not allowed." +msgstr "Das Löschen des letzten festen Teils ist nicht erlaubt." + +msgid "The target object contains only one part and can not be splited." +msgstr "Das Zielobjekt enthält nur einen Teil und kann nicht geteilt werden." + +msgid "Assembly" +msgstr "Zusammenbau" + +msgid "Cut Connectors information" +msgstr "Informationen zu den Schnitt-Verbindern" + +msgid "Object manipulation" +msgstr "Objektmanipulation" + +msgid "Group manipulation" +msgstr "Gruppenmanipulation" + +msgid "Object Settings to modify" +msgstr "Objekteinstellungen zum Bearbeiten" + +msgid "Part Settings to modify" +msgstr "Teileeinstellungen zum Bearbeiten" + +msgid "Layer range Settings to modify" +msgstr "Einstellungen zum Bearbeiten des Layer-Bereichs" + +msgid "Part manipulation" +msgstr "Teilemanipulation" + +msgid "Instance manipulation" +msgstr "Instanzenmanipulation" + +msgid "Height ranges" +msgstr "Höhenbereiche" + +msgid "Settings for height range" +msgstr "Einstellungen für den Höhenbereich" + +msgid "Layer" +msgstr "Schicht" + +msgid "Selection conflicts" +msgstr "Auswahlkonflikte" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Wenn das erste ausgewählte Element ein Objekt ist, sollte das zweite " +"ebenfalls ein Objekt sein." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Wenn das erste ausgewählte Element ein Teil ist, sollte das zweite ein Teil " +"desselben Objekts sein." + +msgid "The type of the last solid object part is not to be changed." +msgstr "Der Typ des letzten festen Objektteils darf nicht geändert werden." + +msgid "Negative Part" +msgstr "Negatives Teil" + +msgid "Support Blocker" +msgstr "Stützblocker" + +msgid "Support Enforcer" +msgstr "Stützverstärker" + +msgid "Type:" +msgstr "Typ:" + +msgid "Choose part type" +msgstr "Bauteiltyp auswählen" + +msgid "Enter new name" +msgstr "Neuen Namen eingeben" + +msgid "Renaming" +msgstr "Wird umbenannt" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "Das folgende Modellobjekt wurde repariert" +msgstr[1] "Die folgenden Modellobjekte wurde repariert" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Reparatur des folgenden Modellobjekts fehlgeschlagen" +msgstr[1] "Reparatur der folgenden Modellobjekte fehlgeschlagen" + +msgid "Repairing was canceled" +msgstr "Reparieren wurde abgebrochen" + +msgid "Additional process preset" +msgstr "Zusätzliche Prozesseinstellung" + +msgid "Remove parameter" +msgstr "Parameter entfernen" + +msgid "to" +msgstr "bis" + +msgid "Remove height range" +msgstr "Höhenbereich entfernen" + +msgid "Add height range" +msgstr "Höhenbereich hinzufügen" + +msgid "Invalid numeric." +msgstr "Ungültige Zahl." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"eine Zelle kann nur in eine oder mehrere Zellen in derselben Spalte kopiert " +"werden" + +msgid "multiple cells copy is not supported" +msgstr "Das Kopieren mehrerer Zellen wird nicht unterstützt" + +msgid "Outside" +msgstr "Außenseite" + +msgid "Layer height" +msgstr "Schichthöhe" + +msgid "Wall loops" +msgstr "Wandschleifen" + +msgid "Infill density(%)" +msgstr "Füllungsdichte(%)" + +msgid "Auto Brim" +msgstr "Automatische Umrandung" + +msgid "Mouse ear" +msgstr "Mausohren" + +msgid "Outer brim only" +msgstr "Nur Außen" + +msgid "Inner brim only" +msgstr "Nur Innenrand" + +msgid "Outer and inner brim" +msgstr "Äußere und innere Randleiste" + +msgid "No-brim" +msgstr "Keine Umrandung" + +msgid "Outer wall speed" +msgstr "Geschwindigkeit Außenwand" + +msgid "Plate" +msgstr "Aktuelle Platte drucken" + +msgid "Brim" +msgstr "Umrandung" + +msgid "Object/Part Setting" +msgstr "Objekt/Teil Einstellungen" + +msgid "Reset parameter" +msgstr "Parameter zurücksetzen" + +msgid "Multicolor Print" +msgstr "Mehrfarbiger Druck" + +msgid "Line Type" +msgstr "Linientyp" + +msgid "More" +msgstr "Mehr" + +msgid "Open Preferences." +msgstr "Einstellungen." + +msgid "Open next tip." +msgstr "Öffne nächsten Tip." + +msgid "Open Documentation in web browser." +msgstr "Öffne Dokumentation im Webbrowser." + +msgid "Color" +msgstr "Farbe" + +msgid "Pause" +msgstr "Pause" + +msgid "Template" +msgstr "Vorlage" + +msgid "Custom" +msgstr "Benutzerdefiniert" + +msgid "Pause:" +msgstr "Pause:" + +msgid "Custom Template:" +msgstr "Benutzerdefinierte Vorlage:" + +msgid "Custom G-code:" +msgstr "Benutzerdefinierter G-Code:" + +msgid "Custom G-code" +msgstr "Benutzerdefinierter G-Code" + +msgid "Enter Custom G-code used on current layer:" +msgstr "" +"Den auf der aktuellen Ebene zu verwendeten benutzerdefinierten G-Code " +"eingeben:" + +msgid "Jump to Layer" +msgstr "Wechsle zu Layer" + +msgid "Please enter the layer number" +msgstr "Bitte die Schichtnummer eingeben" + +msgid "Add Pause" +msgstr "Pause hinzufügen" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Fügen Sie am Anfang dieses Layers einen Pause-Befehl ein." + +msgid "Add Custom G-code" +msgstr "Benutzerdefinierten G-Code hinzufügen" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Fügen Sie am Anfang dieses Layers benutzerdefinierten G-Code ein." + +msgid "Add Custom Template" +msgstr "Benutzerdefinierte Vorlage hinzufügen" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "" +"Fügen Sie am Anfang dieses Layers benutzerdefinierten G-Code aus einer " +"Vorlage ein." + +msgid "Filament " +msgstr "Filament " + +msgid "Change filament at the beginning of this layer." +msgstr "Wechseln Sie am Anfang dieses Layers das Filament." + +msgid "Delete Pause" +msgstr "Pause löschen" + +msgid "Delete Custom Template" +msgstr "Benutzerdefinierte Vorlage löschen" + +msgid "Edit Custom G-code" +msgstr "Benutzerdefinierten G-Code bearbeiten" + +msgid "Delete Custom G-code" +msgstr "Benutzerdefinierten G-Code löschen" + +msgid "Delete Filament Change" +msgstr "Filamentwechsel löschen" + +msgid "No printer" +msgstr "Kein Drucker" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Verbindung zum Server fehlgeschlagen" + +msgid "Check the status of current system services" +msgstr "Überprüfen Sie den Status der aktuellen Systemdienste" + +msgid "code" +msgstr "Code" + +msgid "Failed to connect to cloud service" +msgstr "Verbindung zum Cloud-Dienst fehlgeschlagen" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "" +"Bitte klicken Sie auf den obigen Hyperlink, um den Status des Cloud-Dienstes " +"einzusehen" + +msgid "Failed to connect to the printer" +msgstr "Verbindung zum Drucker fehlgeschlagen" + +msgid "Connection to printer failed" +msgstr "Verbindung zum Drucker ist fehlgeschlagen" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Bitte überprüfen Sie die Netzwerkverbindung von Drucker und Studio." + +msgid "Connecting..." +msgstr "Verbinden..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Leer" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Automatisch nachfüllen" + +msgid "AMS not connected" +msgstr "AMS nicht verbunden" + +msgid "Load" +msgstr "Laden" + +msgid "Unload" +msgstr "Entladen" + +msgid "Ext Spool" +msgstr "Externe Spule" + +msgid "Tips" +msgstr "Tipps" + +msgid "Guide" +msgstr "Anleitung" + +msgid "Retry" +msgstr "Wiederholen" + +msgid "Calibrating AMS..." +msgstr "AMS kalibrieren..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"Während der Kalibrierung ist ein Problem aufgetreten. Klicken Sie hier, um " +"die Lösung zu sehen." + +msgid "Calibrate again" +msgstr "Erneut Kalibrieren" + +msgid "Cancel calibration" +msgstr "Kalibrierung abbrechen" + +msgid "Idling..." +msgstr "Pause..." + +msgid "Heat the nozzle" +msgstr "Düse aufheizen" + +msgid "Cut filament" +msgstr "Filament abschneiden" + +msgid "Pull back current filament" +msgstr "Ziehen Sie das aktuelle Filament zurück" + +msgid "Push new filament into extruder" +msgstr "Neues Filament in den Extruder schieben" + +msgid "Purge old filament" +msgstr "Altes Filament entfernen" + +msgid "Feed Filament" +msgstr "Filament zuführen" + +msgid "Confirm extruded" +msgstr "Bestätigen es wurde extrudiert" + +msgid "Check filament location" +msgstr "Überprüfen Sie das Filament" + +msgid "Grab new filament" +msgstr "Neues Filament holen" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Wählen Sie einen AMS-Steckplatz aus und drücken Sie dann die Schaltfläche " +"„Laden“ oder „Entladen“, um Filamente automatisch zu laden oder zu entladen." + +msgid "Edit" +msgstr "Bearbeiten" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Alle ausgewählten Objekte befinden sich auf einer gesperrten Druckplatte.\n" +"Die Objekte können nicht automatisch angeordnet werden." + +msgid "No arrangable objects are selected." +msgstr "Es sind keine anordnungsfähigen Objekte ausgewählt." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Diese Druckplatte ist gesperrt.\n" +"Wir können diese Druckplatte nicht automatisch anordnen." + +msgid "Arranging..." +msgstr "Anordnen..." + +msgid "Arranging" +msgstr "Anordnen" + +msgid "Arranging canceled." +msgstr "Anordnen abgebrochen." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Das Anordnen ist abgeschlossen, aber einige Elemente konnten nicht " +"angeordnet werden. Verringern Sie die Abstände und versuchen Sie es erneut." + +msgid "Arranging done." +msgstr "Anordnung beendet." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Anordnen fehlgeschlagen. Bei der Verarbeitung von Objektgeometrien wurden " +"einige Ausnahmen gefunden." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"Die folgenden Objekte, die nicht auf ein einzelnes Druckbett passen, wurden " +"bei der Anordnung ignoriert:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Alle ausgewählten Objekte befinden sich auf einer gesperrten Druckplatte.\n" +"Die Objekte können nicht automatisch ausgerichtet werden." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Diese Druckplatte ist gesperrt.\n" +"Wir können diese Druckplatte nicht automatisch ausrichten." + +msgid "Orienting..." +msgstr "Ausrichten..." + +msgid "Orienting" +msgstr "Ausrichten" + +msgid "Orienting canceled." +msgstr "Ausrichten abgebrochen." + +msgid "Filling" +msgstr "Füllen" + +msgid "Bed filling canceled." +msgstr "Bettfüllung abgebrochen." + +msgid "Bed filling done." +msgstr "Bettfüllung fertig." + +msgid "Searching for optimal orientation" +msgstr "Suche nach optimaler Ausrichtung" + +msgid "Orientation search canceled." +msgstr "Suche nach Ausrichtung abgebrochen." + +msgid "Orientation found." +msgstr "Ausrichtung gefunden." + +msgid "Logging in" +msgstr "Einloggen" + +msgid "Login failed" +msgstr "Anmeldung fehlgeschlagen" + +msgid "Please check the printer network connection." +msgstr "Bitte überprüfen Sie die Netzwerkverbindung des Druckers." + +msgid "Abnormal print file data. Please slice again." +msgstr "Abnormale Daten in der Druckdatei. Bitte slicen Sie erneut" + +msgid "Task canceled." +msgstr "Aufgabe abgebrochen." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"Zeitüberschreitung beim Upload. Bitte überprüfen Sie den Netzwerkstatus und " +"versuchen Sie es erneut." + +msgid "Cloud service connection failed. Please try again." +msgstr "" +"Die Verbindung zum Cloud-Dienst ist fehlgeschlagen. Bitte versuche es erneut." + +msgid "Print file not found. please slice again." +msgstr "Druckdatei nicht gefunden. Bitte erneut slicen" + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"Die Druckdatei überschreitet die maximal zulässige Größe (1 GB). Bitte " +"vereinfachen Sie das Modell und slicen Sie diese erneut." + +msgid "Failed to send the print job. Please try again." +msgstr "" +"Der Druckauftrag konnte nicht gesendet werden. Bitte versuchen Sie es erneut." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "" +"Datei konnte nicht auf FTP hochgeladen werden. Bitte versuchen Sie es erneut." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Überprüfen Sie den aktuellen Status des Bambu Lab-Servers, indem Sie auf den " +"obigen Link klicken." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"Die Größe der Druckdatei ist zu groß. Bitte passen Sie die Dateigröße an und " +"versuchen Sie es erneut." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "Druckdatei nicht gefunden. Bitte erneut slicen und zum Drucken senden." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Druckdatei konnte nicht über FTP hochgeladen werden. Bitte überprüfen Sie " +"den Netzwerkstatus und versuchen Sie es erneut." + +msgid "Sending print job over LAN" +msgstr "Druckauftrag über LAN senden" + +msgid "Sending print job through cloud service" +msgstr "Druckauftrag über den Cloud-Dienst senden" + +msgid "Print task sending times out." +msgstr "Zeitüberschreitung beim Senden des Druckauftrags." + +msgid "Service Unavailable" +msgstr "Der Dienst ist nicht verfügbar" + +msgid "Unknown Error." +msgstr "Unbekannter Fehler." + +msgid "Sending print configuration" +msgstr "Druckkonfiguration senden" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "Erfolgreich gesendet. Springt automatisch auf die Geräteseite in %ss" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "Erfolgreich gesendet. Springt automatisch auf die nächste Seite in %ss" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "Vor dem Drucken über LAN muss eine MicroSD-Karte eingelegt werden." + +msgid "Sending gcode file over LAN" +msgstr "Sende Gcode-Datei über LAN" + +msgid "Sending gcode file to sdcard" +msgstr "Sende Gcode-Datei an SDKarte" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Erfolgreich gesendet. Aktuelle Seite wird in %s s geschlossen" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Vor dem Senden an den Drucker muss eine SD-Karte eingelegt werden." + +msgid "Importing SLA archive" +msgstr "SLA-Archiv importieren" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"Die SLA-Archivdatei enthält keine Voreinstellungen. Bitte aktivieren Sie " +"zuerst einige SLA-Druckervoreinstellungen, bevor Sie das SLA-Archiv " +"importieren." + +msgid "Importing canceled." +msgstr "Import abgebrochen." + +msgid "Importing done." +msgstr "Import erfolgreich." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"Das importierte SLA-Archiv enthält keine Voreinstellungen. Die aktuellen SLA-" +"Voreinstellungen wurden als Ersatz verwendet." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "" +"Du kannst kein SLA-Projekt mit einem mehrteiligen Objekt auf dem Druckbett " +"laden." + +msgid "Please check your object list before preset changing." +msgstr "" +"Bitte überprüfen Sie Ihre Objektliste vor der Änderung der Voreinstellungen." + +msgid "Attention!" +msgstr "Achtung!" + +msgid "Downloading" +msgstr "Herunterladen" + +msgid "Download failed" +msgstr "Download fehlgeschlagen" + +msgid "Cancelled" +msgstr "Abgebrochen" + +msgid "Install successfully." +msgstr "Erfolgreich installiert" + +msgid "Installing" +msgstr "Installieren" + +msgid "Install failed" +msgstr "Installation fehlgeschlagen" + +msgid "Portions copyright" +msgstr "Informationen zum Urheberrecht" + +msgid "Copyright" +msgstr "Urheberrecht" + +msgid "License" +msgstr "Lizenz" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca ist lizenziert unter " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, Version 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca is Based on Orca Slicer" + +msgid "Libraries" +msgstr "Bibliotheken" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Diese Software verwendet Open-Source-Komponenten, deren Urheberrechte und " +"andere Eigentumsrechte den jeweiligen Eigentümern gehören" + +#, c-format, boost-format +msgid "About %s" +msgstr "Über %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca basiert auf BambuStudio, PrusaSlicer und SuperSlicer." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "BambuStudio basiert ursprünglich auf PrusaSlicer von PrusaResearch." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer basiert ursprünglich auf Slic3r von Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r wurde von Alessandro Ranellucci mit Hilfe vieler anderer Mitwirkender " +"entwickelt." + +msgid "Version" +msgstr "Version" + +msgid "AMS Materials Setting" +msgstr "AMS Material Einstellung" + +msgid "Confirm" +msgstr "Bestätigen" + +msgid "Close" +msgstr "Schließen" + +msgid "Colour" +msgstr "Farbe" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "Düsentemperatur" + +msgid "max" +msgstr "max" + +msgid "min" +msgstr "min" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "Der Eingabewert sollte größer als %1% und kleiner als %2% sein" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "" +"Das Einstellen von AMS-Slot-Informationen während des Drucks wird nicht " +"unterstützt." + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Dynamische Flusskalibrierungsfaktoren" + +msgid "PA Profile" +msgstr "PA-Profil" + +msgid "Factor K" +msgstr "Faktor K" + +msgid "Factor N" +msgstr "Faktor N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "" +"Das Einstellen von virtuellen Slot-Informationen während des Druckens wird " +"nicht unterstützt." + +msgid "Are you sure you want to clear the filament information?" +msgstr "Sind Sie sicher, dass Sie die Filamentinformationen löschen möchten?" + +msgid "You need to select the material type and color first." +msgstr "Sie müssen zuerst den Materialtyp und die Farbe auswählen." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "Bitte geben Sie einen gültigen Wert ein (K in %.1f~%.1f)" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" +"Bitte geben Sie einen gültigen Wert ein (K in %.1f~%.1f, N in %.1f~%.1f)" + +msgid "Other Color" +msgstr "Andere Farbe" + +msgid "Custom Color" +msgstr "Benutzerdefinierte Farbe" + +msgid "Dynamic flow calibration" +msgstr "Dynamische Flusskalibrierung" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"Die Düsentemperatur und die maximale volumetrische Geschwindigkeit " +"beeinflussen die Kalibrierungsergebnisse. Bitte geben Sie die gleichen Werte " +"ein wie beim tatsächlichen Druck. Sie können automatisch ausgefüllt werden, " +"indem Sie eine Filamentprofil auswählen." + +msgid "Nozzle Diameter" +msgstr "Düsendurchmesser" + +msgid "Bed Type" +msgstr "Druckbetttyp" + +msgid "Nozzle temperature" +msgstr "Düsentemperatur" + +msgid "Bed Temperature" +msgstr "Druckbetttemperatur" + +msgid "Max volumetric speed" +msgstr "Maximale Volumengeschwindigkeit" + +msgid "℃" +msgstr "℃" + +msgid "Bed temperature" +msgstr "Druckbetttemperatur" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Kalibrierung starten" + +msgid "Next" +msgstr "Weiter" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Kalibrierung abgeschlossen. Bitte suchen Sie die gleichmäßigste " +"Extrusionslinie auf Ihrem Druckbett, wie in der Abbildung unten dargestellt " +"und tragen Sie den Wert auf der linken Seite in das Eingabefeld für den " +"Faktor K ein." + +msgid "Save" +msgstr "Speichern" + +msgid "Last Step" +msgstr "Zurück" + +msgid "Example" +msgstr "Beispiel" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Kalibrierung... %d%%" + +msgid "Calibration completed" +msgstr "Kalibrierung fertiggestellt" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s unterstützt %s nicht" + +msgid "Dynamic flow Calibration" +msgstr "Dynamische Flusskalibrierung" + +msgid "Step" +msgstr "Schritt" + +msgid "AMS Slots" +msgstr "AMS Slots" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Hinweis: Es können nur die AMS-Slots ausgewählt werden, die mit demselben " +"Materialtyp geladen sind." + +msgid "Enable AMS" +msgstr "AMS aktivieren" + +msgid "Print with filaments in the AMS" +msgstr "Mit Filament aus dem AMS drucken" + +msgid "Disable AMS" +msgstr "AMS deaktivieren" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Druck mit dem Filament auf der Rückseite des Chassis" + +msgid "Current Cabin humidity" +msgstr "Aktuelle Kabinenfeuchtigkeit" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Wechseln Sie das Trockenmittel, wenn es zu feucht ist. Der Indikator kann " +"nicht genau in folgenden Fällen angezeigt werden: wenn der Deckel geöffnet " +"ist oder das Trockenmittelbeutel gewechselt wird. Es dauert Stunden, um die " +"Feuchtigkeit aufzunehmen, niedrige Temperaturen verlangsamen den Prozess." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Legen Sie fest, welcher AMS-Slot für das im Druckauftrag genutzte Filament " +"verwendet werden soll." + +msgid "Filament used in this print job" +msgstr "Für diesen Druckauftrag verwendetes Filament" + +msgid "AMS slot used for this filament" +msgstr "Für dieses Filament verwendeter AMS-Slot" + +msgid "Click to select AMS slot manually" +msgstr "Klicken Sie hier, um den AMS-Slot manuell auszuwählen" + +msgid "Do not Enable AMS" +msgstr "AMS nicht aktivieren" + +msgid "Print using materials mounted on the back of the case" +msgstr "" +"Drucken mit Materialien, die an der Rückseite des Gehäuses montiert sind" + +msgid "Print with filaments in ams" +msgstr "Drucken mit Materialien im AMS" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Drucken mit Filamenten, die an der Rückseite des Chassis montiert sind" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Wenn das aktuelle Material leer ist, druckt der Drucker in folgender " +"Reihenfolge weiter." + +msgid "Group" +msgstr "Gruppe" + +msgid "The printer does not currently support auto refill." +msgstr "Der Drucker unterstützt derzeit kein automatisches Nachfüllen." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"Das AMS-Filament-Backup ist nicht aktiviert. Bitte aktivieren Sie es in den " +"AMS-Einstellungen." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"Wenn sich zwei identische Filamente im AMS befinden, wird das AMS-Filament-" +"Backup aktiviert. \n" +"(Derzeit wird die automatische Versorgung mit Verbrauchsmaterialien mit " +"derselben Marke, demselben Materialtyp und derselben Farbe unterstützt)" + +msgid "DRY" +msgstr "Trocken" + +msgid "WET" +msgstr "Feucht" + +msgid "AMS Settings" +msgstr "AMS-Einstellungen" + +msgid "Insertion update" +msgstr "Update einfügen" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"Die AMS liest automatisch die Filamentinformationen, wenn ein neues Bambu " +"Lab Filament eingesetzt wird. Dies dauert etwa 20 Sekunden." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Hinweis: Wenn während des Drucks neues Filament eingelegt wird, liest das " +"AMS die Informationen nicht automatisch ein, bis der Druckvorgang " +"abgeschlossen ist." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Hinweis: Wenn während des Drucks neues Filament eingelegt wird, liest das " +"AMS die Informationen nicht automatisch ein, bis der Druckvorgang " +"abgeschlossen ist." + +msgid "Power on update" +msgstr "Update beim Einschalten" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"Das AMS liest beim Einschalten automatisch die Informationen über das " +"eingelegte Filament. Der Lesevorgang dauert ca. 1 Minute und lässt die " +"Filamentspulen rotieren." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"Das AMS liest während dem Start nicht automatisch Informationen vom " +"eingesetzten Filament und verwendet weiterhin die vor dem letzten " +"Ausschalten aufgezeichneten Informationen." + +msgid "Update remaining capacity" +msgstr "Restkapazität aktualisieren" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"Das AMS schätzt die verbleibende Kapazität des Bambu-Filaments, nachdem die " +"Filamentinformationen aktualisiert wurden. Während des Drucks wird die " +"verbleibende Kapazität automatisch aktualisiert." + +msgid "AMS filament backup" +msgstr "AMS Filament Backup" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"AMS wechselt automatisch zu einer anderen Spule mit denselben " +"Filamenteigenschaften, wenn das aktuelle Filament leer ist." + +msgid "Air Printing Detection" +msgstr "Luftdruckerkennung" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Erkennt Verstopfungen und Filamentabrieb und stoppt den Druck sofort, um " +"Zeit und Filament zu sparen." + +msgid "File" +msgstr "Datei" + +msgid "Calibration" +msgstr "Kalibrierung" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Der Download des Plugins ist fehlgeschlagen. Bitte überprüfen Sie Ihre " +"Firewall-Einstellungen und VPN-Software und versuchen Sie es erneut." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Die Installation des Plugins ist fehlgeschlagen. Bitte prüfen Sie, ob es von " +"einer Antiviren-Software blockiert oder gelöscht wurde." + +msgid "click here to see more info" +msgstr "Klicken Sie hier, um weitere Informationen zu erhalten" + +msgid "Please home all axes (click " +msgstr "Bitte alle Achsen referenzieren (Klick" + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +"), um die Position des Werkzeugkopfs zu ermitteln. Dadurch wird verhindert, " +"dass sich das Gerät über die Bewegungsgrenzen bewegt und das Gerät " +"beschädigt wird." + +msgid "Go Home" +msgstr "Werkzeugkopf zur Referenzposition fahren" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Ein Fehler ist aufgetreten. Vielleicht reicht der Arbeitsspeicher des " +"Systems nicht aus oder es handelt sich um einen Fehler im Programm." + +msgid "Please save project and restart the program. " +msgstr "Bitte speichern Sie das Projekt und starten Sie das Programm neu. " + +msgid "Processing G-Code from Previous file..." +msgstr "Verarbeite G-Code der vorherigen Datei..." + +msgid "Slicing complete" +msgstr "Slicing abgeschlossen" + +msgid "Access violation" +msgstr "Zugriffsverletzung" + +msgid "Illegal instruction" +msgstr "Unzulässiger Befehl" + +msgid "Divide by zero" +msgstr "Division durch Null" + +msgid "Overflow" +msgstr "Überlauf" + +msgid "Underflow" +msgstr "Unterlauf" + +msgid "Floating reserved operand" +msgstr "Reservierter Gleitkomma-Operand" + +msgid "Stack overflow" +msgstr "Stapelüberlauf" + +msgid "Running post-processing scripts" +msgstr "Ausführen von Nachbearbeitungsskripten" + +msgid "Successfully executed post-processing script" +msgstr "Nachbearbeitungsskript erfolgreich ausgeführt" + +msgid "Unknown error occured during exporting G-code." +msgstr "Unbekannter Fehler beim Exportieren des G-Codes aufgetreten." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Das Kopieren des temporären G-Codes in den Ausgabe-G-Code ist " +"fehlgeschlagen. Ist die SD-Karte schreibgeschützt?\n" +"Fehlermeldung: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"Das Kopieren des temporären G-Codes in den Ausgabe-G-Code ist " +"fehlgeschlagen. Es könnte ein Problem mit dem Zielgerät geben. Versuchen Sie " +"es erneut oder verwenden Sie ein anderes Gerät. Der beschädigte Ausgabe-G-" +"Code befindet sich in %1%.tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"Das Umbenennen des G-Codes nach dem Kopieren in den ausgewählten Zielordner " +"ist fehlgeschlagen. Der aktuelle Pfad ist %1%.tmp. Bitte versuchen Sie es " +"erneut." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"Das Kopieren des temporären G-Codes wurde abgeschlossen, aber der " +"ursprüngliche Code unter %1% konnte während der Überprüfung des " +"Kopiervorgangs nicht geöffnet werden. Der Ausgabe-G-Code befindet sich in " +"%2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"Das Kopieren des temporären G-Codes wurde abgeschlossen, aber der " +"exportierte Code konnte während der Überprüfung des Kopiervorgangs nicht " +"geöffnet werden. Der Ausgabe-G-Code befindet sich in %1%.tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "G-Code-Datei exportiert nach %1%" + +msgid "Unknown error when export G-code." +msgstr "Unbekannter Fehler beim exportieren des G-Code." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Speichern der G-Code Datei fehlgeschlagen.\n" +"Fehlernachricht: %1%.\n" +"Ursprungsdatei %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "" +"Das Kopieren des temporären G-Codes in den Ausgabe-G-Code ist fehlgeschlagen." + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Planen des Uploads auf `%1%`. Siehe Fenster -> Host-Upload-Druckwarteschlange" + +msgid "Device" +msgstr "Gerät" + +msgid "Task Sending" +msgstr "Aufgabe senden" + +msgid "Task Sent" +msgstr "Aufgabe gesendet" + +msgid "Edit multiple printers" +msgstr "Mehrere Drucker bearbeiten" + +msgid "Select connected printers (0/6)" +msgstr "Verbundene Drucker auswählen (0/6)" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "Verbundene Drucker auswählen (%d/6)" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "" +"Die maximale Anzahl von Druckern, die ausgewählt werden können, beträgt %d" + +msgid "Offline" +msgstr "Offline" + +msgid "No task" +msgstr "Keine Aufgabe" + +msgid "View" +msgstr "Ansicht" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "Drucker bearbeiten" + +msgid "Device Name" +msgstr "Gerätename" + +msgid "Task Name" +msgstr "Aufgabenname" + +msgid "Device Status" +msgstr "Gerätestatus" + +msgid "Actions" +msgstr "Aktionen" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" +"Wählen Sie hier die Geräte aus, die Sie verwalten möchten (bis zu 6 Geräte)" + +msgid "Add" +msgstr "Hinzufügen" + +msgid "Idle" +msgstr "Inaktiv" + +msgid "Printing" +msgstr "Drucken" + +msgid "Upgrading" +msgstr "Aktualisieren" + +msgid "Incompatible" +msgstr "Inkompatibel" + +msgid "syncing" +msgstr "synchronisieren" + +msgid "Printing Finish" +msgstr "Druck beendet" + +msgid "Printing Failed" +msgstr "Druck fehlgeschlagen" + +msgid "Printing Pause" +msgstr "Druck pausiert" + +msgid "Prepare" +msgstr "Vorbereiten" + +msgid "Slicing" +msgstr "Slicen" + +msgid "Pending" +msgstr "Ausstehend" + +msgid "Sending" +msgstr "Sende" + +msgid "Sending Finish" +msgstr "Senden beendet" + +msgid "Sending Cancel" +msgstr "Senden abbrechen" + +msgid "Sending Failed" +msgstr "Senden fehlgeschlagen" + +msgid "Print Success" +msgstr "Druck erfolgreich" + +msgid "Print Failed" +msgstr "Druck fehlgeschlagen" + +msgid "Removed" +msgstr "Entfernt" + +msgid "Resume" +msgstr "Fortsetzen" + +msgid "Stop" +msgstr "Stop" + +msgid "Task Status" +msgstr "Aufgabenstatus" + +msgid "Sent Time" +msgstr "Sende Zeit" + +msgid "There are no tasks to be sent!" +msgstr "Es gibt keine Aufgaben, die gesendet werden sollen!" + +msgid "No historical tasks!" +msgstr "Keine historischen Aufgaben!" + +msgid "Loading..." +msgstr "Laden..." + +msgid "No AMS" +msgstr "Kein AMS" + +msgid "Send to Multi-device" +msgstr "An Multi-Gerät senden" + +msgid "Preparing print job" +msgstr "Druckauftrag vorbereiten" + +msgid "Abnormal print file data. Please slice again" +msgstr "Fehlerhafte Daten in der Druckdatei. Bitte slicen Sie erneut" + +msgid "There is no device available to send printing." +msgstr "Es ist kein Gerät verfügbar, um den Druck zu senden." + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" +"Die Anzahl der gleichzeitig verwendeten Drucker darf nicht gleich 0 sein." + +msgid "Use External Spool" +msgstr "Externe Spule verwenden" + +msgid "Use AMS" +msgstr "AMS verwenden" + +msgid "Select Printers" +msgstr "Drucker auswählen" + +msgid "Ams Status" +msgstr "AMS-Status" + +msgid "Printing Options" +msgstr "Druckoptionen" + +msgid "Bed Leveling" +msgstr "Druckbettnivellierung" + +msgid "Timelapse" +msgstr "Zeitraffer" + +msgid "Flow Dynamic Calibration" +msgstr "Dynamische Flusskalibrierung" + +msgid "Send Options" +msgstr "Senden-Optionen" + +msgid "Send to" +msgstr "Senden an" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"Drucker gleichzeitig drucken.(Es hängt davon ab, wie viele Geräte " +"gleichzeitig erhitzt werden können.)" + +msgid "Wait" +msgstr "Warten" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"Minute pro Charge.(Es hängt davon ab, wie lange es dauert, die Erhitzung " +"abzuschließen.)" + +msgid "Send" +msgstr "Senden" + +msgid "Name is invalid;" +msgstr "Der Name ist ungültig;" + +msgid "illegal characters:" +msgstr "unzulässige Zeichen:" + +msgid "illegal suffix:" +msgstr "unzulässiger Zusatz:" + +msgid "The name is not allowed to be empty." +msgstr "Der Name darf nicht leer sein." + +msgid "The name is not allowed to start with space character." +msgstr "Der Name darf nicht mit einem Leerzeichen beginnen." + +msgid "The name is not allowed to end with space character." +msgstr "Der Name darf nicht mit einem Leerzeichen enden." + +msgid "The name length exceeds the limit." +msgstr "Die Namenslänge überschreitet das Limit." + +msgid "Origin" +msgstr "Nullpunkt" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Größe der rechteckigen Druckplatte in X und Y." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" +"Abstand der 0,0 G-Code-Koordinate von der linken vorderen Ecke des Rechtecks." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Durchmesser des Druckbettes. Es wird angenommen, dass der Ursprung (0,0) " +"sich im Mittelpunkt befindet." + +msgid "Rectangular" +msgstr "Rechteckig" + +msgid "Circular" +msgstr "Kreisförmig" + +msgid "Load shape from STL..." +msgstr "Lade Form von STL..." + +msgid "Settings" +msgstr "Einstellungen" + +msgid "Texture" +msgstr "Textur" + +msgid "Remove" +msgstr "Entfernen" + +msgid "Not found:" +msgstr "Nicht gefunden:" + +msgid "Model" +msgstr "Modell" + +msgid "Choose an STL file to import bed shape from:" +msgstr "" +"Wählen Sie eine STL-Datei aus, aus der Sie die Druckbettform importieren " +"möchten:" + +msgid "Invalid file format." +msgstr "Ungültiges Dateiformat." + +msgid "Error! Invalid model" +msgstr "Fehler! Ungültiges Modell" + +msgid "The selected file contains no geometry." +msgstr "Die ausgewählte Datei enthält keine Geometrie." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"Die ausgewählte Datei enthält mehrere nicht zusammenhängende Bereiche. Dies " +"wird nicht unterstützt." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "" +"Wählen Sie eine Datei aus, die Sie als Druckbetttextur importieren möchten " +"(PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "" +"Wählen Sie eine STL-Datei aus, die Sie als Druckbettmodell importieren " +"möchten:" + +msgid "Bed Shape" +msgstr "Druckbettform" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"Die empfohlene Mindesttemperatur liegt unter 190 Grad oder die empfohlene " +"Maximaltemperatur liegt über 300 Grad.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"Die empfohlene Mindesttemperatur darf nicht höher sein als die empfohlene " +"Maximaltemperatur.\n" + +msgid "Please check.\n" +msgstr "Bitte überprüfen.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"Die Düse kann verstopfen, wenn die Temperatur außerhalb des empfohlenen " +"Bereichs liegt.\n" +"Vergewissern Sie sich, ob Sie wirklich diese Temperatur zum Drucken " +"verwenden möchten.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"Die empfohlene Düsentemperatur für diesen Filamenttyp beträgt [%d, %d] °C" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Zu kleine maximale volumetrische Geschwindigkeit.\n" +"Wert wurde auf 0,5 zurückgesetzt" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"Die aktuelle Kammer-Temperatur ist höher als die sichere Temperatur des " +"Materials, dies kann zu Materialerweichung und Verstopfung führen. Die " +"maximale sichere Temperatur für das Material beträgt %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Zu geringe Schichthöhe.\n" +"Auf 0,2 zurücksetzen" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Zu kleiner Ironing-Abstand.\n" +"Auf 0,1 zurückgesetzt" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"Eine erste Schichthöhe von Null ist ungültig.\n" +"\n" +"Die erste Schichthöhe wird auf 0,2 zurückgesetzt." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Diese Einstellung wird für Anpassung der Modellgröße an kleinere Werte " +"verwendet.\n" +"Zum Beispiel, wenn die Modellgröße leicht abweicht oder schwer zu montieren " +"ist.\n" +"Für große Anpassungen verwenden Sie bitte die Modellskalierung.\n" +"\n" +"Der Wert 0 setz zurück." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Der Elefantenfußausgleich ist zu groß.\n" +"Wenn der Elefantenfuß-Effekt wirklich gravierend ist, überprüfen Sie bitte " +"andere Einstellungen.\n" +"Zum Beispiel, ob die Betttemperatur zu hoch ist.\n" +"\n" +"Der Wert wird auf 0 zurückgesetzt." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" +"Der alternative zusätzliche Wandmodus funktioniert nicht gut, wenn die " +"vertikale Wanddicke auf Alle eingestellt ist." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"Diese Einstellungen automatisch ändern? \n" +"Ja - Ändern Sie die vertikale Wanddicke auf Moderate und aktivieren Sie " +"alternative zusätzliche Wand\n" +"Nein - Verwenden Sie keine alternative zusätzliche Wand" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"Der Reinigungsturm funktioniert nicht, wenn adaptive Schichthöhen oder " +"unabhängige Stütz-Schichthöhen aktiviert sind.\n" +"Was möchten Sie beibehalten?\n" +"JA - Reinigungsturm beibehalten\n" +"NEIN - Adaptive Schichthöhen und Unabhängige Stütz-Schichthöhen beibehalten" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"Der Reinigungsturm funktioniert nicht, wenn adaptive Schichthöhen aktiviert " +"sind.\n" +"Was möchten Sie beibehalten?\n" +"Ja - Reinigungsturm beibehalten\n" +"NEIN - Adaptive Schichthöhen beibehalten" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"Reinigungsturm funktioniert nicht, wenn unabhängige Stütz-Schichthöhen " +"aktiviert sind.\n" +"Was möchten Sie beibehalten?\n" +"JA - Reinigungsturm beibehalten\n" +"NEIN - unabhängige Stütz-Schichthöhen beibehalten" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Während des Druckens mit einem Objekt kann der Extruder auf den Rand " +"stoßen.\n" +"Daher sollten die Skirt-Ebenen zurückgesetzt werden." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"seam_slope_start_height muss kleiner als layer_height sein.\n" +"auf 0 gesetzt" + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Der Spiralmodes funktioniert nur, wenn die Wand-Schleifen auf 1 gesetzt " +"sind,\n" +"die Unterstützung deaktiviert ist, die oberen Schalenlagen auf 0 gesetzt " +"sind, \n" +"die Dichte des dünnen Innenfülls auf 0 gesetzt ist und der Typ des " +"Zeitraffers auf \n" +"traditional steht." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " Maschinen mit I3-Struktur erzeugen jedoch keine Zeitraffer-Videos." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Diese Einstellungen automatisch ändern? \n" +"Ja - Diese Einstellungen ändern und den Spiralmodus automatisch aktivieren\n" +"Nein - Spiralmodus nicht aktivieren" + +msgid "Auto bed leveling" +msgstr "Automatische Druckbettnivellierung" + +msgid "Heatbed preheating" +msgstr "Heizbett vorheizen" + +msgid "Sweeping XY mech mode" +msgstr "Frequenzmessung der XY-Mechanik" + +msgid "Changing filament" +msgstr "Filament wechseln" + +msgid "M400 pause" +msgstr "M400 Pause" + +msgid "Paused due to filament runout" +msgstr "Pausiert aufgrund leerem Filaments" + +msgid "Heating hotend" +msgstr "Heizen des Hotend" + +msgid "Calibrating extrusion" +msgstr "Kalibrierung der Extrusion" + +msgid "Scanning bed surface" +msgstr "Scan der Druckbettoberfläche" + +msgid "Inspecting first layer" +msgstr "Überprüfung der ersten Schicht" + +msgid "Identifying build plate type" +msgstr "Identifikation der Druckplatte" + +msgid "Calibrating Micro Lidar" +msgstr "Kalibrierung des Mikro-Lidars" + +msgid "Homing toolhead" +msgstr "Referenzfahrt des Werkzeugkopfes" + +msgid "Cleaning nozzle tip" +msgstr "Reinigen der Düse" + +msgid "Checking extruder temperature" +msgstr "Überprüfen der Extruder Temperatur" + +msgid "Printing was paused by the user" +msgstr "Der Druckvorgang wurde vom Benutzer angehalten" + +msgid "Pause of front cover falling" +msgstr "Pause, da die Abdeckung des Werkzeugkopfes abgefallen ist" + +msgid "Calibrating the micro lida" +msgstr "Kalibrierung des Mikro-Lidars" + +msgid "Calibrating extrusion flow" +msgstr "Kalibrieren des Materialflusses" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Pausiert aufgrund einer Fehlfunktion der Düsentemperatur" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Pausiert aufgrund einer Fehlfunktion der Heizbetttemperatur" + +msgid "Filament unloading" +msgstr "Entladen des Filaments" + +msgid "Skip step pause" +msgstr "Überspringen der Pause" + +msgid "Filament loading" +msgstr "Laden des Filaments" + +msgid "Motor noise calibration" +msgstr "Motorgeräuschkalibrierung" + +msgid "Paused due to AMS lost" +msgstr "Pausiert aufgrund eines AMS-Verlustes" + +msgid "Paused due to low speed of the heat break fan" +msgstr "" +"Pausiert aufgrund einer zu niedrigen Geschwindigkeit des Heatbreak-Lüfters" + +msgid "Paused due to chamber temperature control error" +msgstr "Pausiert aufgrund eines Fehlers bei der Kammer-Temperaturregelung" + +msgid "Cooling chamber" +msgstr "Kühlung der Kammer" + +msgid "Paused by the Gcode inserted by user" +msgstr "Pausiert durch den vom Benutzer eingefügten G-Code" + +msgid "Motor noise showoff" +msgstr "Motorgeräusch-Showoff" + +msgid "Nozzle filament covered detected pause" +msgstr "Pause bei Erkennung von der Düsenfilamentabdeckung" + +msgid "Cutter error pause" +msgstr "Pause bei Cutter-Fehler" + +msgid "First layer error pause" +msgstr "Pause bei Fehler der ersten Schicht" + +msgid "Nozzle clog pause" +msgstr "Pause bei Düsenverstopfung" + +msgid "Unknown" +msgstr "Unbekannt" + +msgid "Fatal" +msgstr "Fatal" + +msgid "Serious" +msgstr "Ernst" + +msgid "Common" +msgstr "Parameter" + +msgid "Update successful." +msgstr "Update erfolgreich." + +msgid "Downloading failed." +msgstr "Herunterladen fehlgeschlagen." + +msgid "Verification failed." +msgstr "Authentifizierung fehlgeschlagen." + +msgid "Update failed." +msgstr "Update fehlgeschlagen." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"Die aktuelle Kammer-Temperatur oder die Ziel-Kammer-Temperatur überschreitet " +"45℃. Um ein Verstopfen des Extruders zu vermeiden, ist es nicht erlaubt, " +"Filament mit niedriger Temperatur (PLA/PETG/TPU) zu laden." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Filament mit niedriger Temperatur (PLA/PETG/TPU) ist im Extruder geladen. Um " +"ein Verstopfen des Extruders zu vermeiden, ist es nicht erlaubt, die " +"Kammertemperatur über 45℃ einzustellen." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Wenn Sie die Kammertemperatur unter 40℃ einstellen, wird die " +"Kammertemperaturregelung nicht aktiviert. Die Ziel-Kammertemperatur wird " +"automatisch auf 0℃ eingestellt." + +msgid "Failed to start printing job" +msgstr "Druckauftrag konnte nicht gestartet werden" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" +"Diese Kalibrierung unterstützt den derzeit ausgewählten Düsendurchmesser " + +msgid "Current flowrate cali param is invalid" +msgstr "Aktueller Durchflusskalibrierungsparameter ist ungültig" + +msgid "Selected diameter and machine diameter do not match" +msgstr "" +"Ausgewählter Durchmesser und Maschinendurchmesser stimmen nicht überein" + +msgid "Failed to generate cali gcode" +msgstr "Fehler beim Generieren des Kalibrierungs-G-Codes" + +msgid "Calibration error" +msgstr "Kalibrierungsfehler" + +msgid "TPU is not supported by AMS." +msgstr "TPU wird von AMS nicht unterstützt." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF wird von AMS nicht unterstützt." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Feuchtes PVA wird flexibel und bleibt im AMS stecken, bitte trocknen Sie es " +"vor dem Gebrauch." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"CF/GF-Filamente sind hart und spröde. Sie brechen leicht oder bleiben im AMS " +"stecken. Bitte verwenden Sie sie mit Vorsicht." + +msgid "default" +msgstr "Standard" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Benutzerdefinierten G-Code bearbeiten (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" +"Eingebaute Platzhalter (Doppelklicken Sie auf ein Element, um es zum G-Code " +"hinzuzufügen)" + +msgid "Search gcode placeholders" +msgstr "G-Code-Platzhalter suchen" + +msgid "Add selected placeholder to G-code" +msgstr "Ausgewählten Platzhalter zum G-Code hinzufügen" + +msgid "Select placeholder" +msgstr "Platzhalter auswählen" + +msgid "[Global] Slicing State" +msgstr "[Global] Slicing-Status" + +msgid "Read Only" +msgstr "Nur lesen" + +msgid "Read Write" +msgstr "Lesen Schreiben" + +msgid "Slicing State" +msgstr "Slicing-Status" + +msgid "Print Statistics" +msgstr "Druckstatistiken" + +msgid "Objects Info" +msgstr "Objektinformationen" + +msgid "Dimensions" +msgstr "Abmessungen" + +msgid "Temperatures" +msgstr "Temperaturen" + +msgid "Timestamps" +msgstr "Zeitstempel" + +#, boost-format +msgid "Specific for %1%" +msgstr "Spezifisch für %1%" + +msgid "Presets" +msgstr "Voreinstellungen" + +msgid "Print settings" +msgstr "Druckeinstellungen" + +msgid "Filament settings" +msgstr "Filamenteinstellungen" + +msgid "SLA Materials settings" +msgstr "SLA-Material-Einstellungen" + +msgid "Printer settings" +msgstr "Drucker-Einstellungen" + +msgid "parameter name" +msgstr "Parametername" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s kann nicht Prozent sein" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "Wert %s ist außerhalb der Reichweite, fortfahren?" + +msgid "Parameter validation" +msgstr "Parameterüberprüfung" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "" +"Wert %s ist außerhalb des Bereichs. Der gültige Bereich liegt zwischen %d " +"und %d." + +msgid "Value is out of range." +msgstr "Wert ist außerhalb der Reichweite." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"Heißt es %s%% oder %s %s?\n" +"Ja für %s%%, \n" +"Nein für %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Ungültiges Eingabeformat. Erwarteter Vektor der Abmessungen im folgenden " +"Format: \"%1%\"" + +msgid "Input value is out of range" +msgstr "Der Eingabewert ist nicht im gültigen Bereich" + +msgid "Some extension in the input is invalid" +msgstr "Erweiterung in der Eingabe ist ungültig" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Ungültiges Format. Erwartetes Vektorformat: \"%1%\"" + +msgid "Layer Height" +msgstr "Schichthöhe" + +msgid "Line Width" +msgstr "Linienbreite" + +msgid "Fan Speed" +msgstr "Lüftergeschwindigkeit" + +msgid "Temperature" +msgstr "Temperatur" + +msgid "Flow" +msgstr "Fluss" + +msgid "Tool" +msgstr "Werkzeug" + +msgid "Layer Time" +msgstr "Schichtdauer" + +msgid "Layer Time (log)" +msgstr "Layerzeit (log)" + +msgid "Height: " +msgstr "Höhe: " + +msgid "Width: " +msgstr "Breite: " + +msgid "Speed: " +msgstr "Geschwindigkeit " + +msgid "Flow: " +msgstr "Durchfluss: " + +msgid "Layer Time: " +msgstr "Schichtdauer:" + +msgid "Fan: " +msgstr "Lüftergeschwindigkeit: " + +msgid "Temperature: " +msgstr "Temperatur: " + +msgid "Loading G-codes" +msgstr "Laden von G-Codes" + +msgid "Generating geometry vertex data" +msgstr "Erzeugen von Geometrie-Eckpunktdaten" + +msgid "Generating geometry index data" +msgstr "Erzeugung von Geometrie-Indexdaten" + +msgid "Statistics of All Plates" +msgstr "Statistiken aller Platten" + +msgid "Display" +msgstr "Anzeigen" + +msgid "Flushed" +msgstr "Gereinigt" + +msgid "Tower" +msgstr "Turm" + +msgid "Total" +msgstr "Gesamt" + +msgid "Total Estimation" +msgstr "Gesamtschätzung" + +msgid "Total time" +msgstr "Gesamtdauer" + +msgid "Total cost" +msgstr "Geamtkosten" + +msgid "up to" +msgstr "bis zu" + +msgid "above" +msgstr "über" + +msgid "from" +msgstr "von" + +msgid "Color Scheme" +msgstr "Farbschema" + +msgid "Time" +msgstr "Zeit" + +msgid "Percent" +msgstr "Prozent" + +msgid "Used filament" +msgstr "Genutztes Filament" + +msgid "Layer Height (mm)" +msgstr "Schichthöhe (mm)" + +msgid "Line Width (mm)" +msgstr "Linienbreite (mm)" + +msgid "Speed (mm/s)" +msgstr "Geschwindigkeit (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Lüftergeschwindigkeit (%)" + +msgid "Temperature (°C)" +msgstr "Temperatur (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Volumetrische Flussrate (mm³/s)" + +msgid "Travel" +msgstr "Eilgang" + +msgid "Seams" +msgstr "Nähte" + +msgid "Retract" +msgstr "Rückzug" + +msgid "Unretract" +msgstr "Einzug" + +msgid "Filament Changes" +msgstr "Filamentwechsel" + +msgid "Wipe" +msgstr "Reinigen" + +msgid "Options" +msgstr "Optionen" + +msgid "travel" +msgstr "Bewegung" + +msgid "Extruder" +msgstr "Extruder" + +msgid "Filament change times" +msgstr "Filamentwechselzeiten" + +msgid "Cost" +msgstr "Kosten" + +msgid "Color change" +msgstr "Farbwechsel" + +msgid "Print" +msgstr "aktuelle Platte drucken" + +msgid "Printer" +msgstr "Drucker" + +msgid "Custom g-code" +msgstr "Benutzerdefinierter G-Code" + +msgid "ToolChange" +msgstr "Werkzeugwechsel" + +msgid "Time Estimation" +msgstr "Geschätzte Zeit" + +msgid "Normal mode" +msgstr "Normaler Modus" + +msgid "Total Filament" +msgstr "Gesamtfilament" + +msgid "Model Filament" +msgstr "Modellfilament" + +msgid "Prepare time" +msgstr "Vorbereitungszeit" + +msgid "Model printing time" +msgstr "Druckzeit des Modells" + +msgid "Switch to silent mode" +msgstr "Zum Leisemodus wechseln" + +msgid "Switch to normal mode" +msgstr "Zum normalen Modus wechseln" + +msgid "Variable layer height" +msgstr "Variable Schichthöhe" + +msgid "Adaptive" +msgstr "Adaptiv" + +msgid "Quality / Speed" +msgstr "Qualität / Geschwindigkeit" + +msgid "Smooth" +msgstr "Höhenunterschiede glätten" + +msgid "Radius" +msgstr "Radius" + +msgid "Keep min" +msgstr "Minimum beibehalten" + +msgid "Left mouse button:" +msgstr "Linke Maustaste:" + +msgid "Add detail" +msgstr "Detail hinzufügen" + +msgid "Right mouse button:" +msgstr "Rechte Maustaste:" + +msgid "Remove detail" +msgstr "Detail entfernen" + +msgid "Shift + Left mouse button:" +msgstr "Gross + linke Maustaste:" + +msgid "Reset to base" +msgstr "Auf Ausgangsposition zurücksetzen" + +msgid "Shift + Right mouse button:" +msgstr "Gross + rechte Maustaste:" + +msgid "Smoothing" +msgstr "Glättung" + +msgid "Mouse wheel:" +msgstr "Mausrad:" + +msgid "Increase/decrease edit area" +msgstr "Bearbeitungsbereich vergrößern/verkleinern" + +msgid "Sequence" +msgstr "Reihenfolge" + +msgid "Mirror Object" +msgstr "Objekt spiegeln" + +msgid "Tool Move" +msgstr "Werkzeugbewegung" + +msgid "Tool Rotate" +msgstr "Werkzeug wechseln" + +msgid "Move Object" +msgstr "Objekt bewegen" + +msgid "Auto Orientation options" +msgstr "Auto-Ausrichtungsoptionen" + +msgid "Enable rotation" +msgstr "Drehung aktivieren" + +msgid "Optimize support interface area" +msgstr "Optimieren des Stützen-Schnittstellbereichs" + +msgid "Orient" +msgstr "Orientieren" + +msgid "Arrange options" +msgstr "Anordnungsoptionen" + +msgid "Spacing" +msgstr "Abstand" + +msgid "0 means auto spacing." +msgstr "0 bedeutet automatischer Abstand." + +msgid "Auto rotate for arrangement" +msgstr "Automatische Rotation für die Anordnung" + +msgid "Allow multiple materials on same plate" +msgstr "Erlaube mehrere Materialien auf einer Druckplatte" + +msgid "Avoid extrusion calibration region" +msgstr "Vermeiden Sie den Bereich der Extrusionskalibrierung" + +msgid "Align to Y axis" +msgstr "An Y-Achse ausrichten" + +msgid "Add plate" +msgstr "Druckplatte hinzufügen" + +msgid "Auto orient" +msgstr "Automatische Ausrichtung" + +msgid "Arrange all objects" +msgstr "Alle Objekte anordnen" + +msgid "Arrange objects on selected plates" +msgstr "Objekte auf ausgewählten Druckplatten anordnen" + +msgid "Split to objects" +msgstr "In Objekte trennen" + +msgid "Split to parts" +msgstr "In Teile trennen" + +msgid "Assembly View" +msgstr "Montageansicht" + +msgid "Select Plate" +msgstr "Druckplatte wählen" + +msgid "Assembly Return" +msgstr "Zurücksetzen der Montage" + +msgid "return" +msgstr "Zurück" + +msgid "Paint Toolbar" +msgstr "Malwerkzeuge" + +msgid "Explosion Ratio" +msgstr "Explosionsverhältnis" + +msgid "Section View" +msgstr "Schnittansicht" + +msgid "Assemble Control" +msgstr "Montagekontrolle" + +msgid "Total Volume:" +msgstr "Gesamtvolumen:" + +msgid "Assembly Info" +msgstr "Montageinfo" + +msgid "Volume:" +msgstr "Volumen:" + +msgid "Size:" +msgstr "Größe:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"Konflikte von G-Code-Pfaden wurden bei Layer %d, z = %.2lf mm gefunden.Bitte " +"trennen Sie die konfliktbehafteten Objekte weiter voneinander (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "Ein Objekt ragt über die Begrenzung der Druckplatte." + +msgid "A G-code path goes beyond the max print height." +msgstr "Ein G-Code-Pfad überschreitet die maximale Druckhöhe." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Ein G-Code-Pfad geht über die Begrenzung der Druckplatte hinaus." + +msgid "Only the object being edit is visible." +msgstr "Nur das bearbeitete Modell ist sichtbar." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Ein Objekt wurde über die Begrenzung der Druckplatte gelegt oder " +"überschreitet die Höhengrenze.\n" +"Lösen Sie das Problem, indem Sie das Objekt vollständig auf die Druckplatte " +"oder von der Druckplatte wegbewegen und stellen Sie sicher, dass die Höhe " +"innerhalb des Bauvolumens liegt." + +msgid "Calibration step selection" +msgstr "Auswahl des Kalibrierungsschritts" + +msgid "Micro lidar calibration" +msgstr "Mikro-Lidar Kalibrierung" + +msgid "Bed leveling" +msgstr "Druckbettnivellierung" + +msgid "Vibration compensation" +msgstr "Vibrationskompensation" + +msgid "Motor noise cancellation" +msgstr "Motorgeräuschunterdrückung" + +msgid "Calibration program" +msgstr "Kalibrierungsprogramm" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"Das Kalibrierungsprogramm erkennt den Status Ihres Geräts automatisch, um " +"Abweichungen zu minimieren. Es sorgt für eine optimale Leistung des Geräts." + +msgid "Calibration Flow" +msgstr "Durchfluss-Kalibrierung" + +msgid "Start Calibration" +msgstr "Kalibrierung starten" + +msgid "Completed" +msgstr "Abgeschlossen" + +msgid "Calibrating" +msgstr "Kalibrieren" + +msgid "No step selected" +msgstr "Kein Schritt ausgewählt" + +msgid "Auto-record Monitoring" +msgstr "Überwachung automatisch aufzeichnen" + +msgid "Go Live" +msgstr "Live-Übertragung starten" + +msgid "Liveview Retry" +msgstr "Live-Ansicht erneut versuchen" + +msgid "Resolution" +msgstr "Auflösung" + +msgid "Enable" +msgstr "Aktivieren" + +msgid "Hostname or IP" +msgstr "Hostname oder IP" + +msgid "Custom camera source" +msgstr "Benutzerdefinierte Kameraquelle" + +msgid "Show \"Live Video\" guide page." +msgstr "Anleitungsseite „Live-Video“ anzeigen." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Drucker anschließen (LAN)" + +msgid "Please input the printer access code:" +msgstr "Bitte geben Sie den Zugangscode zum Drucker ein:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Sie finden ihn unter \"Einstellungen > Netzwerk > Verbindungscode\".\n" +"auf dem Drucker, wie in der Abbildung gezeigt:" + +msgid "Invalid input." +msgstr "Ungültige Eingabe" + +msgid "New Window" +msgstr "Neues Fenster" + +msgid "Open a new window" +msgstr "Ein neues Fenster öffnen" + +msgid "Application is closing" +msgstr "Anwendung wird geschlossen" + +msgid "Closing Application while some presets are modified." +msgstr "" +"Schließen der Anwendung, während einige Profileinstellungen geändert wurden" + +msgid "Logging" +msgstr "Protokollierung" + +msgid "Preview" +msgstr "Vorschau" + +msgid "Multi-device" +msgstr "Multi-Gerät" + +msgid "Project" +msgstr "Projekt" + +msgid "Yes" +msgstr "Ja" + +msgid "No" +msgstr "Nein" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "" +"Bevor ein neues Modell erstellt wird, wird %1% geschlossen. Möchten Sie " +"fortfahren?" + +msgid "Slice plate" +msgstr "Aktuelle Platte slicen" + +msgid "Print plate" +msgstr "Aktuelle Platte drucken" + +msgid "Slice all" +msgstr "Alle Platten slicen" + +msgid "Export G-code file" +msgstr "G-Code als Datei exportieren" + +msgid "Export plate sliced file" +msgstr "Exportiere aktuelle Platte als STL Datei" + +msgid "Export all sliced file" +msgstr "Exportiere alle Platten als STL Dateien" + +msgid "Print all" +msgstr "Alle Platten drucken" + +msgid "Send all" +msgstr "Sende alle" + +msgid "Keyboard Shortcuts" +msgstr "Tastaturkürzel" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Liste der Tastaturkürzel anzeigen" + +msgid "Setup Wizard" +msgstr "Einrichtungsassistent" + +msgid "Show Configuration Folder" +msgstr "Konfigurationsordner anzeigen" + +msgid "Show Tip of the Day" +msgstr "Tipp des Tages anzeigen" + +msgid "Check for Update" +msgstr "Nach Updates suchen" + +msgid "Open Network Test" +msgstr "Netzwerktest öffnen" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&Über %s" + +msgid "Upload Models" +msgstr "Modelle hochladen" + +msgid "Download Models" +msgstr "Modelle herunterladen" + +msgid "Default View" +msgstr "Standardansicht" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Oben" + +msgid "Top View" +msgstr "Ansicht von oben" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Unten" + +msgid "Bottom View" +msgstr "Ansicht von unten" + +msgid "Front" +msgstr "Vorne" + +msgid "Front View" +msgstr "Frontalansicht" + +msgid "Rear" +msgstr "Hinten" + +msgid "Rear View" +msgstr "Ansicht von Hinten" + +msgid "Left" +msgstr "Links" + +msgid "Left View" +msgstr "Anicht von Links" + +msgid "Right" +msgstr "Rechts" + +msgid "Right View" +msgstr "Ansicht von rechts" + +msgid "Start a new window" +msgstr "Neues Fenster öffnen" + +msgid "New Project" +msgstr "Neues Projekt" + +msgid "Start a new project" +msgstr "Ein neues Projekt beginnen" + +msgid "Open a project file" +msgstr "Projektdatei öffnen" + +msgid "Recent projects" +msgstr "Letzte Projekte" + +msgid "Save Project" +msgstr "Projekt speichern" + +msgid "Save current project to file" +msgstr "Aktuelles Projekt in Datei speichern" + +msgid "Save Project as" +msgstr "Projekt speichern als" + +msgid "Shift+" +msgstr "Umschalt+" + +msgid "Save current project as" +msgstr "Aktuelles Projekt speichern als" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Importiere 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Lade ein Modell" + +msgid "Import Zip Archive" +msgstr "Zip-Archiv importieren" + +msgid "Load models contained within a zip archive" +msgstr "Modelle aus einem Zip-Archiv laden" + +msgid "Import Configs" +msgstr "Konfigurationen importieren" + +msgid "Load configs" +msgstr "Konfigurationen laden" + +msgid "Import" +msgstr "Importieren" + +msgid "Export all objects as one STL" +msgstr "Exportiere alle Objekte als eine STL" + +msgid "Export all objects as STLs" +msgstr "Exportiere alle Objekte als STLs" + +msgid "Export Generic 3MF" +msgstr "Generisches 3MF exportieren" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Exportieren einer 3mf-Datei ohne Verwendung von 3mf-Erweiterungen" + +msgid "Export current sliced file" +msgstr "Aktuelle Slice-Datei exportieren" + +msgid "Export all plate sliced file" +msgstr "Exportieren aller gesliceten Druckplatten" + +msgid "Export G-code" +msgstr "Exportiere G-Code" + +msgid "Export current plate as G-code" +msgstr "Aktuelle Druckplatte als G-Code exportieren" + +msgid "Export Preset Bundle" +msgstr "Preset-Bundle exportieren" + +msgid "Export current configuration to files" +msgstr "Aktuelle Konfiguration in Dateien exportieren" + +msgid "Export" +msgstr "Exportieren" + +msgid "Quit" +msgstr "Beenden" + +msgid "Undo" +msgstr "Rückgängig machen" + +msgid "Redo" +msgstr "Wiederholen" + +msgid "Cut selection to clipboard" +msgstr "Auswahl in die Zwischenablage ausschneiden" + +msgid "Copy" +msgstr "Kopieren" + +msgid "Copy selection to clipboard" +msgstr "Auswahl in Zwischenablage kopieren" + +msgid "Paste" +msgstr "Einfügen" + +msgid "Paste clipboard" +msgstr "Aus Zwischenablage einfügen" + +msgid "Delete selected" +msgstr "Auswahl löschen" + +msgid "Deletes the current selection" +msgstr "Löscht die aktuelle Auswahl" + +msgid "Delete all" +msgstr "Alles löschen" + +msgid "Deletes all objects" +msgstr "Alle Objekte löschen" + +msgid "Clone selected" +msgstr "Auswahl duplizieren" + +msgid "Clone copies of selections" +msgstr "Ausgewählte Kopien duplizieren" + +msgid "Select all" +msgstr "Alles auswählen" + +msgid "Selects all objects" +msgstr "Alle Objekte auswählen" + +msgid "Deselect all" +msgstr "Alles abwählen" + +msgid "Deselects all objects" +msgstr "Alle Objekte abwählen" + +msgid "Use Perspective View" +msgstr "Perspektivische Ansicht verwenden" + +msgid "Use Orthogonal View" +msgstr "Orthogonale Ansicht verwenden" + +msgid "Show &G-code Window" +msgstr "&G-Code-Fenster anzeigen" + +msgid "Show g-code window in Previce scene" +msgstr "G-Code-Fenster in der Vorschau anzeigen" + +msgid "Show 3D Navigator" +msgstr "3D-Navigator anzeigen" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "3D-Navigator in Vorbereitungs- und Vorschauansicht anzeigen" + +msgid "Reset Window Layout" +msgstr "Window-Layout zurücksetzen" + +msgid "Reset to default window layout" +msgstr "Reset auf Standard-Layout" + +msgid "Show &Labels" +msgstr "&Bezeichnung anzeigen" + +msgid "Show object labels in 3D scene" +msgstr "Objektbeschriftungen in 3D-Szene anzeigen" + +msgid "Show &Overhang" +msgstr "Zeige Überhang" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Hervorhebung des Objektüberhangs in einer 3D-Szene anzeigen" + +msgid "Preferences" +msgstr "Einstellungen" + +msgid "Help" +msgstr "Hilfe" + +msgid "Temperature Calibration" +msgstr "Temperaturkalibrierung" + +msgid "Pass 1" +msgstr "Durchgang 1" + +msgid "Flow rate test - Pass 1" +msgstr "Durchflussratentests - Teil 1" + +msgid "Pass 2" +msgstr "Durchgang 2" + +msgid "Flow rate test - Pass 2" +msgstr "Durchflussratentests - Teil 1" + +msgid "Flow rate" +msgstr "Durchflussrate" + +msgid "Pressure advance" +msgstr "Pressure advance" + +msgid "Retraction test" +msgstr "Rückzugslängen Test" + +msgid "Orca Tolerance Test" +msgstr "Orca Toleranz Test" + +msgid "Max flowrate" +msgstr "Maximale Durchflussrate" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Mehr..." + +msgid "Tutorial" +msgstr "Anleitung" + +msgid "Calibration help" +msgstr "Kalibrierungshilfe" + +msgid "More calibrations" +msgstr "Weitere Kalibrierungen" + +msgid "&Open G-code" +msgstr "&Öffne G-Code" + +msgid "Open a G-code file" +msgstr "Öffne eine G-Code-Datei" + +msgid "Re&load from Disk" +msgstr "Neu&laden von Festplatte" + +msgid "Reload the plater from disk" +msgstr "Druckplatte neu von der Festplatte laden" + +msgid "Export &Toolpaths as OBJ" +msgstr "Werkzeugwege als OBJ exportieren" + +msgid "Export toolpaths as OBJ" +msgstr "Werkzeugweg als OBJ exportieren" + +msgid "Open &Slicer" +msgstr "Öffne &Studio" + +msgid "Open Slicer" +msgstr "Öffne Studio" + +msgid "&Quit" +msgstr "&Beenden" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "%s verlassen" + +msgid "&File" +msgstr "&Datei" + +msgid "&View" +msgstr "&Anzeige" + +msgid "&Help" +msgstr "&Hilfe" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "" +"Es existiert bereits eine Datei mit demselben Namen: %s. Möchten Sie sie " +"überschreiben?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "" +"Eine Konfiguration mit dem gleichen Namen existiert bereits: %s. Möchten Sie " +"sie überschreiben?" + +msgid "Overwrite file" +msgstr "Datei überschreiben" + +msgid "Yes to All" +msgstr "Ja zu allem" + +msgid "No to All" +msgstr "Nein zu allem" + +msgid "Choose a directory" +msgstr "Ordner auswählen" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +"Es ist %d Konfiguration exportiert worden. (Nur Nicht-Systemkonfigurationen)" +msgstr[1] "" +"Es sind %d Konfigurationen exportiert worden. (Nur Nicht-" +"Systemkonfigurationen)" + +msgid "Export result" +msgstr "Ergebnis exportieren" + +msgid "Select profile to load:" +msgstr "Wählen Sie das zu ladende Profil:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +"Es ist %d Konfig importiert. (Nur nicht-systemische und kompatible " +"Konfigurationen)" +msgstr[1] "" +"Es sind %d Konfigurationen importiert. (Nur nicht-systemische und kompatible " +"Konfigurationen)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"Tipp: Stellen Sie sicher, dass Sie den entsprechenden Drucker hinzugefügt " +"haben, bevor Sie die Konfigurationen importieren." + +msgid "Import result" +msgstr "Ergebnis importieren" + +msgid "File is missing" +msgstr "Datei fehlt" + +msgid "The project is no longer available." +msgstr "Das Projekt ist nicht mehr verfügbar." + +msgid "Filament Settings" +msgstr "Filamenteinstellungen" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Möchten Sie Ihre persönlichen Daten aus Bambu Cloud synchronisieren?\n" +"Es enthält die folgenden Informationen:\n" +"1. Die Prozessvoreinstellungen\n" +"2. Die Filament-Voreinstellungen\n" +"3. Die Drucker-Voreinstellungen" + +msgid "Synchronization" +msgstr "Synchronisierung" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" +"Das Gerät kann keine weiteren Gespräche führen. Bitte versuchen Sie es " +"später erneut." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" +"Die Wiedergabe funktioniert nicht richtig. Bitte installieren Sie den " +"Systemplayer neu." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"Der Player ist nicht geladen. Klicken Sie auf die Schaltfläche „Wiedergabe“, " +"um es erneut zu versuchen." + +msgid "Please confirm if the printer is connected." +msgstr "Bitte bestätigen Sie, ob der Drucker verbunden ist." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"Der Drucker ist derzeit mit dem Herunterladen beschäftigt. Bitte versuchen " +"Sie es erneut, nachdem es beendet ist." + +msgid "Printer camera is malfunctioning." +msgstr "Die Druckerkamera funktioniert nicht richtig." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Problem aufgetreten. Bitte aktualisieren Sie die Drucker-Firmware und " +"versuchen Sie es erneut." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"LAN-Only-Liveview ist ausgeschaltet. Bitte schalten Sie die Live-Ansicht auf " +"dem Druckerbildschirm ein." + +msgid "Please enter the IP of printer to connect." +msgstr "" +"Bitte geben Sie die IP des Druckers ein, um eine Verbindung herzustellen." + +msgid "Initializing..." +msgstr "Initialisieren..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "" +"Verbindung fehlgeschlagen. Bitte überprüfen Sie das Netzwerk und versuchen " +"Sie es erneut" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Bitte überprüfen Sie das Netzwerk und versuchen Sie es erneut. Sie können " +"den Drucker neu starten oder aktualisieren, wenn das Problem weiterhin " +"besteht." + +msgid "The printer has been logged out and cannot connect." +msgstr "Der Drucker wurde abgemeldet und kann keine Verbindung herstellen." + +msgid "Stopped." +msgstr "Gestoppt." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "LAN-Verbindung fehlgeschlagen (Liveview konnte nicht gestartet werden)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Virtuelle Kamerawerkzeuge werden für diese Aufgabe benötigt!\n" +"Möchten Sie diese installieren?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Herunterladen des virtuellen Kameratools" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Eine weitere virtuelle Kamera wird verwendet.\n" +"Snapmaker Orca unterstützt nur eine einzige virtuelle Kamera.\n" +"Möchten Sie diese virtuelle Kamera stoppen?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Die Initialisierung der virtuellen Kamera ist fehlgeschlagen (%s)!" + +msgid "Network unreachable" +msgstr "Netzwerk nicht erreichbar" + +msgid "Information" +msgstr "Informationen" + +msgid "Playing..." +msgstr "Laufend..." + +msgid "Year" +msgstr "Jahr" + +msgid "Month" +msgstr "Monat" + +msgid "All Files" +msgstr "Alle Dateien" + +msgid "Group files by year, recent first." +msgstr "Dateien nach Jahr gruppieren, neuste zuerst." + +msgid "Group files by month, recent first." +msgstr "Dateien nach Monat gruppieren, neueste zuerst." + +msgid "Show all files, recent first." +msgstr "Alle Dateien anzeigen, die neuesten zuerst." + +msgid "Switch to timelapse files." +msgstr "Wechseln zu Zeitrafferdateien." + +msgid "Video" +msgstr "Video" + +msgid "Switch to video files." +msgstr "Wechseln Sie zu Videodateien." + +msgid "Switch to 3mf model files." +msgstr "Wechsel zu 3mf-Modelldateien." + +msgid "Delete selected files from printer." +msgstr "Ausgewählte Dateien vom Drucker löschen." + +msgid "Download" +msgstr "Herunterladen" + +msgid "Download selected files from printer." +msgstr "Ausgewählte Dateien vom Drucker herunterladen." + +msgid "Select" +msgstr "Auswählen" + +msgid "Batch manage files." +msgstr "Batch-Verwaltung von Dateien." + +msgid "Refresh" +msgstr "Aktualisieren" + +msgid "Reload file list from printer." +msgstr "Dateiliste vom Drucker neu laden." + +msgid "No printers." +msgstr "Keine Drucker." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Verbindung fehlgeschlagen [%d]!" + +msgid "Loading file list..." +msgstr "Dateiliste laden..." + +msgid "No files" +msgstr "Keine Dateien" + +msgid "Load failed" +msgstr "Laden fehlgeschlagen" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "" +"Die Initialisierung ist fehlgeschlagen (Geräteverbindung nicht bereit)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"Das Durchsuchen von Dateien auf der MicroSD-Karte wird in der aktuellen " +"Firmware nicht unterstützt. Bitte aktualisieren Sie die Drucker-Firmware." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" +"Initialisierung fehlgeschlagen (Speicher nicht verfügbar, MicroSD-Karte " +"einlegen.)!" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "LAN-Verbindung fehlgeschlagen (SD-Karte konnte nicht angezeigt werden)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "" +"Das durchsuchen von Dateien auf der MicroSD-Karte wird im LAN-Only-Modus " +"nicht unterstützt." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Initialisierung ist fehlgeschlagen (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "Sie werden %u Datei vom Drucker löschen. Möchten Sie fortfahren?" +msgstr[1] "Sie werden %u Dateien vom Drucker löschen. Möchten Sie fortfahren?" + +msgid "Delete files" +msgstr "Dateien löschen" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Möchten Sie die Datei '%s' vom Drucker löschen?" + +msgid "Delete file" +msgstr "Datei löschen" + +msgid "Fetching model infomations ..." +msgstr "Modellinformationen werden abgerufen..." + +msgid "Failed to fetch model information from printer." +msgstr "Abrufen von Modellinformationen vom Drucker fehlgeschlagen." + +msgid "Failed to parse model information." +msgstr "Analysieren von Modellinformationen fehlgeschlagen." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +"Die .gcode.3mf-Datei enthält keine G-Code-Daten. Bitte slicen Sie sie mit " +"Snapmaker Orca und exportieren Sie eine neue .gcode.3mf-Datei." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "" +"Die Datei '%s' ist verloren gegangen! Bitte laden Sie diese erneut herunter." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"Datei: %s\n" +"Titel: %s\n" + +msgid "Download waiting..." +msgstr "Auf Download warten..." + +msgid "Play" +msgstr "Abspielen" + +msgid "Open Folder" +msgstr "Ordner öffnen" + +msgid "Download finished" +msgstr "Herunterladen abgeschlossen" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "%d%% wird heruntergeladen..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Der Drucker wird neu verbunden, die Operation kann nicht sofort " +"abgeschlossen werden. Bitte versuchen Sie es später erneut." + +msgid "File does not exist." +msgstr "Datei existiert nicht." + +msgid "File checksum error. Please retry." +msgstr "Prüfsummenfehler. Bitte versuchen Sie es erneut." + +msgid "Not supported on the current printer version." +msgstr "Nicht unterstützt auf der aktuellen Druckerversion." + +msgid "Storage unavailable, insert SD card." +msgstr "Speicher nicht verfügbar, MicroSD-Karte einlegen." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Fehlercode: %d" + +msgid "Speed:" +msgstr "Geschwindigkeit:" + +msgid "Deadzone:" +msgstr "Todeszone:" + +msgid "Options:" +msgstr "Optionen:" + +msgid "Zoom" +msgstr "Vergrößern" + +msgid "Translation/Zoom" +msgstr "Verschiebung/Zoom" + +msgid "3Dconnexion settings" +msgstr "3Dconnexion Einstellungen" + +msgid "Swap Y/Z axes" +msgstr "Y/Z-Achsen vertauschen" + +msgid "Invert X axis" +msgstr "Invertiere X-Achse" + +msgid "Invert Y axis" +msgstr "Invertiere Y-Achse" + +msgid "Invert Z axis" +msgstr "Invertiere Z-Achse" + +msgid "Invert Yaw axis" +msgstr "Invertiere Yaw-Achse" + +msgid "Invert Pitch axis" +msgstr "Invertiere Pitch-Achse" + +msgid "Invert Roll axis" +msgstr "Invertiere Roll-Achse" + +msgid "Printing Progress" +msgstr "Druckprozess" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Schicht: N/A" + +msgid "Clear" +msgstr "Löschen" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"Sie haben den Druck des Mustermodells abgeschlossen, \n" +"aber die Synchronisierung der Bewertungsinformationen ist fehlgeschlagen." + +msgid "How do you like this printing file?" +msgstr "Wie gefällt Ihnen diese Druckdatei?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"(Das Modell wurde bereits bewertet. Ihre Bewertung überschreibt die " +"vorherige Bewertung.)" + +msgid "Rate" +msgstr "Bewerten" + +msgid "Camera" +msgstr "Kamera" + +msgid "SD Card" +msgstr "MicroSD-Karte" + +msgid "Camera Setting" +msgstr "Kameraeinstellung" + +msgid "Switch Camera View" +msgstr "Schalte Kameraperspektive" + +msgid "Control" +msgstr "Steuerung" + +msgid "Printer Parts" +msgstr "Drucker-Teile" + +msgid "Print Options" +msgstr "Druckoptionen" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Lampe" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Cham" + +msgid "Bed" +msgstr "Druckbett" + +msgid "Debug Info" +msgstr "Debug-Informationen" + +msgid "No SD Card" +msgstr "Keine MicroSD-Karte" + +msgid "SD Card Abnormal" +msgstr "SD-Karte fehlerhaft" + +msgid "Cancel print" +msgstr "Druck abbrechen" + +msgid "Are you sure you want to cancel this print?" +msgstr "Möchten Sie diesen Druck wirklich abbrechen?" + +msgid "Downloading..." +msgstr "Herunterladen..." + +msgid "Cloud Slicing..." +msgstr "Cloud Slicing..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "" +"In der Cloud-Slicing-Warteschlange befinden sich %s Aufgaben vor Ihnen." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Schicht: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Schicht: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Heizen Sie die Düse vor dem Laden oder Entladen des Filaments auf über 170 " +"Grad." + +msgid "Still unload" +msgstr "Entlade immer noch" + +msgid "Still load" +msgstr "Lade immer noch" + +msgid "Please select an AMS slot before calibration" +msgstr "Bitte wählen Sie einen AMS-Slot vor der Kalibrierung aus" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Filamentinformationen können nicht gelesen werden: Das Filament ist in den " +"Werkzeugkopf geladen, bitte entladen Sie das Filament und versuchen Sie es " +"erneut." + +msgid "This only takes effect during printing" +msgstr "Diese Funktion ist nur während des Druckens wirksam." + +msgid "Silent" +msgstr "Leise" + +msgid "Standard" +msgstr "Standard" + +msgid "Sport" +msgstr "Sport" + +msgid "Ludicrous" +msgstr "Verrückt" + +msgid "Can't start this without SD card." +msgstr "Kann ohne MicroSD-Karte nicht gestartet werden." + +msgid "Rate the Print Profile" +msgstr "Bewerten Sie das Druckprofil" + +msgid "Comment" +msgstr "Kommentar" + +msgid "Rate this print" +msgstr "Bewerten Sie diesen Druck" + +msgid "Add Photo" +msgstr "Foto hinzufügen" + +msgid "Delete Photo" +msgstr "Foto löschen" + +msgid "Submit" +msgstr "Übermitteln" + +msgid "Please click on the star first." +msgstr "Bitte klicken Sie zuerst auf den Stern." + +msgid "InFo" +msgstr "InFo" + +msgid "Get oss config failed." +msgstr "Fehler beim Abrufen der OSS-Konfiguration." + +msgid "Upload Pictrues" +msgstr "Bilder hochladen" + +msgid "Number of images successfully uploaded" +msgstr "Bilder erfolgreich hochgeladenen " + +msgid " upload failed" +msgstr "Hochladen fehlgeschlagen" + +msgid " upload config prase failed\n" +msgstr " Hochladen der Konfiguration fehlgeschlagen\n" + +msgid " No corresponding storage bucket\n" +msgstr " Kein entsprechender Speicher\n" + +msgid " can not be opened\n" +msgstr " Kann nicht geöffnet werden\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"Die folgenden Probleme sind während des Upload-Vorgangs aufgetreten. Möchten " +"Sie sie ignorieren?\n" +"\n" + +msgid "info" +msgstr "Infos" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"Die Druckergebnisse werden synchronisiert. Bitte versuchen Sie es in wenigen " +"Sekunden erneut." + +msgid "Upload failed\n" +msgstr "Hochladen fehlgeschlagen\n" + +msgid "obtaining instance_id failed\n" +msgstr "Abrufen der Instanz-ID fehlgeschlagen\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Ihr Kommentarergebnis kann aus einigen Gründen nicht hochgeladen werden. Wie " +"folgt:\n" +"\n" +" Fehlercode: " + +msgid "error message: " +msgstr "Fehlermeldung: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Möchten Sie zur Webseite für die Bewertung weitergeleitet werden?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Einige Ihrer Bilder konnten nicht hochgeladen werden. Möchten Sie zur " +"Webseite für die Bewertung weitergeleitet werden?" + +msgid "You can select up to 16 images." +msgstr "Sie können bis zu 16 Bilder auswählen." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"Um eine positive Bewertung (4 oder 5 Sterne) abzugeben, ist mindestens ein " +"erfolgreicher Druck dieses Druckprofils erforderlich." + +msgid "Status" +msgstr "Status" + +msgid "Update" +msgstr "Update" + +msgid "Don't show again" +msgstr "Nicht erneut anzeigen" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s Fehler" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s ist auf einen Fehler gestoßen" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s Warnung" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s hat eine Warnmeldung" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s Info" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s Information" + +msgid "Skip" +msgstr "Überspringen" + +msgid "Newer 3mf version" +msgstr "Neuere 3mf-Version" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" +"Die 3mf-Dateiversion ist in der Beta und neuer als die aktuelle Snapmaker Orca- " +"Version." + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" +"Wenn Sie Snapmaker Orca Beta ausprobieren möchten, können Sie hier klicken" + +msgid "Download Beta Version" +msgstr "Beta-Version herunterladen" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "Die 3mf-Dateiversion ist neuer als die aktuelle Snapmaker Orca Version." + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" +"Ein Update von Snapmaker Orca ermöglicht die Nutzung aller Funktionen in der " +"3mf-Datei." + +msgid "Current Version: " +msgstr "Aktuelle Version: " + +msgid "Latest Version: " +msgstr "Neueste Version: " + +msgid "Not for now" +msgstr "Nicht jetzt" + +msgid "3D Mouse disconnected." +msgstr "3D-Maus nicht angeschlossen." + +msgid "Configuration can update now." +msgstr "Eine neue Konfiguration ist verfügbar. Jetzt aktualisieren?" + +msgid "Detail." +msgstr "Detail." + +msgid "Integration was successful." +msgstr "Die Integration war erfolgreich." + +msgid "Integration failed." +msgstr "Die Integration ist gescheitert." + +msgid "Undo integration was successful." +msgstr "Integration erfolgreich rückgängig gemacht." + +msgid "New network plug-in available." +msgstr "Neues Netzwerk-Plugin verfügbar" + +msgid "Details" +msgstr "Details" + +msgid "New printer config available." +msgstr "Neue Druckerkonfiguration verfügbar." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "Die Integration konnte nicht rückgängig gemacht werden." + +msgid "Exporting." +msgstr "Exportieren." + +msgid "Software has New version." +msgstr "Ein Update ist verfügbar!" + +msgid "Goto download page." +msgstr "Zur Download-Seite gehen." + +msgid "Open Folder." +msgstr "Ordner öffnen." + +msgid "Safely remove hardware." +msgstr "Hardware sicher entfernen" + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d Objekt hat benutzerdefinierte Stützstrukturen." +msgstr[1] "%1$d Objekte haben benutzerdefinierte Stützstrukturen." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d Objekt hat gemalte Farben." +msgstr[1] "%1$d Objekte haben gemalte Farben." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d Objekt wurde als Teil des geschnittenen Objekts geladen." +msgstr[1] "%1$d Objekte wurden als Teile des geschnittenen Objekts geladen." + +msgid "ERROR" +msgstr "FEHLER" + +msgid "COMPLETED" +msgstr "ERLEDIGT" + +msgid "CANCELED" +msgstr "ABGEBROCHEN" + +msgid "Cancel upload" +msgstr "Upload abbrechen" + +msgid "Jump to" +msgstr "Wechsle zu" + +msgid "Error:" +msgstr "Fehler:" + +msgid "Warning:" +msgstr "Warnung:" + +msgid "Export successfully." +msgstr "Export erfolgreich." + +msgid "Model file downloaded." +msgstr "Modelldatei heruntergeladen." + +msgid "Serious warning:" +msgstr "Wichtige Warnung:" + +msgid " (Repair)" +msgstr " (Reparatur)" + +msgid " Click here to install it." +msgstr " Klicken Sie hier, um es zu installieren." + +msgid "WARNING:" +msgstr "WARNUNG:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "" +"Ihr Modell braucht Stützstrukturen! Bitte aktivieren Sie das Stützmaterial." + +msgid "Gcode path overlap" +msgstr "G-Code Pfadüberlappung" + +msgid "Support painting" +msgstr "Stützen malen" + +msgid "Color painting" +msgstr "Farbe malen" + +msgid "Cut connectors" +msgstr "Schnittstellenverbindungen" + +msgid "Layers" +msgstr "Schichten" + +msgid "Range" +msgstr "Reichweite" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"Die Anwendung kann nicht normal ausgeführt werden, weil die OpenGL-Version " +"niedriger als 2.0 ist.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Bitte aktualisieren Sie Ihren Grafiktreiber." + +msgid "Unsupported OpenGL version" +msgstr "Nicht unterstützte OpenGL Version" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Shader können nicht geladen werden:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Fehler beim Laden der Shader" + +msgctxt "Layers" +msgid "Top" +msgstr "Obere" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Untere" + +msgid "Enable AI monitoring of printing" +msgstr "AI-Überwachung des Druckvorgangs aktivieren" + +msgid "Sensitivity of pausing is" +msgstr "Die Sensibilität der Pause ist" + +msgid "Enable detection of build plate position" +msgstr "Positionserkennung der Druckplatte aktivieren" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"Die Erkennungsmarke auf den Druckplatten wird erkannt und der Druckvorgang " +"unterbrochen, falls die Marke nicht im definierten Bereich liegt." + +msgid "First Layer Inspection" +msgstr "Inspektion der ersten Schicht" + +msgid "Auto-recovery from step loss" +msgstr "Automatische Wiederherstellung bei Positionsverlust (Schrittverlust)" + +msgid "Allow Prompt Sound" +msgstr "Erlaube akustische Signale" + +msgid "Filament Tangle Detect" +msgstr "Filamentverwicklung erkannt" + +msgid "Nozzle Clumping Detection" +msgstr "Düsenverklumpen-Erkennung" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" +"Überprüfen Sie, ob die Düse durch Filament oder andere Fremdkörper verklumpt " +"ist." + +msgid "Nozzle Type" +msgstr "Düsentyp" + +msgid "Stainless Steel" +msgstr "Edelstahl" + +msgid "Hardened Steel" +msgstr "Gehärteter Stahl" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Allgemein" + +msgid "Objects" +msgstr "Objekte" + +msgid "Advance" +msgstr "Erweitert" + +msgid "Compare presets" +msgstr "Profile vergleichen" + +msgid "View all object's settings" +msgstr "Alle Einstellungen des Objekts anzeigen" + +msgid "Material settings" +msgstr "Material-Einstellungen" + +msgid "Remove current plate (if not last one)" +msgstr "entferne aktuelle Platte (wenn nicht die letzte)" + +msgid "Auto orient objects on current plate" +msgstr "Automatische Ausrichtung der Objekte auf der aktuellen Platte" + +msgid "Arrange objects on current plate" +msgstr "Ausrichtung der Objekte auf der aktuellen Platte" + +msgid "Unlock current plate" +msgstr "Entsperre aktuelle Platte " + +msgid "Lock current plate" +msgstr "Speere aktuelle Platte" + +msgid "Edit current plate name" +msgstr "Bearbeite den Namen der aktuellen Platte" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "Aktuelle Platte anpassen" + +#, boost-format +msgid " plate %1%:" +msgstr " Druckplatte %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Ungültiger Name, die folgenden Zeichen sind nicht erlaubt:" + +msgid "Sliced Info" +msgstr "Slice-Info" + +msgid "Used Filament (m)" +msgstr "Filamentbedarf (Meter)" + +msgid "Used Filament (mm³)" +msgstr "Filamentbedarf (mm³)" + +msgid "Used Filament (g)" +msgstr "Filamentbedarf (g)" + +msgid "Used Materials" +msgstr "Genutztes Material" + +msgid "Estimated time" +msgstr "Geschätzte Zeit" + +msgid "Filament changes" +msgstr "Filamentwechsel" + +msgid "Click to edit preset" +msgstr "Klicken Sie hier, um das Profil zu bearbeiten" + +msgid "Connection" +msgstr "Verbindung" + +msgid "Bed type" +msgstr "Druckbetttyp" + +msgid "Flushing volumes" +msgstr "Reinigungsvolumen" + +msgid "Add one filament" +msgstr "Ein Filament hinzufügen" + +msgid "Remove last filament" +msgstr "Letztes Filament entfernen" + +msgid "Synchronize filament list from AMS" +msgstr "Filamentliste von AMS synchronisieren" + +msgid "Set filaments to use" +msgstr "Zu verwendende Filamente einstellen" + +msgid "Search plate, object and part." +msgstr "Suche Platte, Objekt und Teil." + +msgid "Pellets" +msgstr "Pellets" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Keine AMS-Filamente. Bitte wählen Sie auf der Seite \"Gerät\" einen Drucker " +"aus, um AMS-Informationen zu laden." + +msgid "Sync filaments with AMS" +msgstr "Filamente mit AMS synchronisieren" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Bei der Synchronisierung von Filamenten mit dem AMS werden alle aktuell " +"ausgewählten Filamentprofile und Farben gelöscht. Möchten Sie fortfahren?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Es wurde bereits eine Synchronisation durchgeführt. Möchtest du nur " +"Änderungen synchronisieren oder alles neu synchronisieren?" + +msgid "Sync" +msgstr "Sync" + +msgid "Resync" +msgstr "Resync" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "" +"Es gibt keine kompatiblen Filamente und die Synchronisierung wird nicht " +"ausgeführt." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Es gibt einige unbekannte Filamente, die generischen Voreinstellungen " +"zugeordnet sind. Bitte aktualisieren Sie Snapmaker Orca oder starten Sie " +"Snapmaker Orca neu, um zu überprüfen, ob es ein Update für " +"Systemvoreinstellungen gibt." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Möchten Sie die Änderungen unter \" %1% \" speichern?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Erfolgreich ausgeworfen. Das Gerät %s(%s) kann jetzt sicher vom Computer " +"entfernt werden." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "Das Auswerfen des Geräts %s(%s) ist fehlgeschlagen." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "" +"Ein ungespeichertes Projekt wurde entdeckt, möchten Sie es wiederherstellen?" + +msgid "Restore" +msgstr "Wiederherstellen" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"Die aktuelle Temperatur des Druckbetts ist relativ hoch. Die Düse kann " +"verstopft sein, wenn dieses Filament in einem geschlossenen Gehäuse gedruckt " +"wird. Bitte öffnen Sie die Vordertür und/oder entfernen Sie das obere Glas." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"Die für das Filament erforderliche Düsenhärte ist höher als die Standard-" +"Düsenhärte des Druckers. Bitte wechseln Sie zu einer gehärteten Düse oder " +"ändern Sie das Filament, da sich sonst die Düse abgenutzt oder beschädigt " +"wird." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Die Aktivierung der traditionellen Zeitrafferfotografie kann zu " +"Oberflächenfehlern führen. Es wird empfohlen, in den Smooth-Modus zu " +"wechseln." + +msgid "Expand sidebar" +msgstr "Seitenleiste erweitern" + +msgid "Collapse sidebar" +msgstr "Seitenleiste reduzieren" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Datei wird geladen: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "Der 3mf stammt nicht vom Snapmaker Orca, lade nur die Geometriedaten." + +msgid "Load 3mf" +msgstr "Lade 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"Die Version %s von 3mf ist neuer als die Version %s von %s, folgende " +"Schlüssel wurden nicht erkannt:" + +msgid "You'd better upgrade your software.\n" +msgstr "Sie sollten Ihre Software aktualisieren.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"Die Version %s der 3mf ist neuer als die Version %s %s. Bitte Ihre Software " +"aktualisieren." + +msgid "Invalid values found in the 3mf:" +msgstr "Ungültige Werte in der 3MF-Datei gefunden:" + +msgid "Please correct them in the param tabs" +msgstr "Bitte korrigieren Sie sie in den Parameter-Einstellungen." + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" +"Die 3mf hat folgende modifizierte G-Codes in Filament- oder Druckerprofilen:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Bitte bestätigen Sie, dass diese modifizierten G-Codes sicher sind, um " +"Schäden an der Maschine zu vermeiden!" + +msgid "Modified G-codes" +msgstr "Modifizierte G-Codes" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "Die 3mf hat folgende benutzerdefinierte Filament- oder Druckerprofile:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Bitte bestätigen Sie, dass die G-Codes innerhalb dieser Profile sicher sind, " +"um Schäden an der Maschine zu vermeiden!" + +msgid "Customized Preset" +msgstr "Benutzerdefinierte Profile" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "Der Name der Komponenten in der Step-Datei ist nicht im UTF8-Format!" + +msgid "The name may show garbage characters!" +msgstr "" +"Aufgrund der nicht unterstützten Textkodierung können unbrauchbare Zeichen " +"erscheinen!" + +msgid "Remember my choice." +msgstr "Meine Auswahl merken." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Das Laden der Datei \"%1%\" ist fehlgeschlagen. Es wurde eine ungültige " +"Konfiguration erkannt." + +msgid "Objects with zero volume removed" +msgstr "Objekte mit nicht vorhandenem Volumen entfernt" + +msgid "The volume of the object is zero" +msgstr "Das Volumen des Objekts ist Null" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"Das Objekt aus der Datei %s ist zu klein und vielleicht in Metern oder Zoll " +"angeben.\n" +" Möchten Sie auf Millimeter skalieren?" + +msgid "Object too small" +msgstr "Objekt zu klein" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Diese Datei enthält mehrere Objekte, die auf verschiedenen Höhen " +"positioniert sind.\n" +"Soll die Datei, anstatt sie als mehrere Objekte zu betrachten, als ein " +"einziges Objekt mit mehreren Teilen geladen werden?" + +msgid "Multi-part object detected" +msgstr "Mehrteiliges Objekt erkannt" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "Diese Dateien als ein einziges Objekt mit mehreren Teilen laden?\n" + +msgid "Object with multiple parts was detected" +msgstr "Objekt mit mehreren Teilen wurde entdeckt" + +msgid "The file does not contain any geometry data." +msgstr "Die Datei enthält keine Geometriedaten." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Ihr Objekt scheint zu groß zu sein. Möchten Sie es verkleinern, um es " +"automatisch an das Druckbett anzupassen?" + +msgid "Object too large" +msgstr "Objekt zu groß" + +msgid "Export STL file:" +msgstr "Exportiere STL Datei:" + +msgid "Export AMF file:" +msgstr "Exportiere AMF Datei:" + +msgid "Save file as:" +msgstr "Speichere Datei als:" + +msgid "Export OBJ file:" +msgstr "Exportiere OBJ Datei:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"Die Datei %s existiert bereits\n" +"Möchten Sie sie ersetzen?" + +msgid "Confirm Save As" +msgstr "Bestätigen Sie Speichern unter" + +msgid "Delete object which is a part of cut object" +msgstr "Lösche Objekt, das Teil des geschnittenen Objekts ist." + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Sie versuchen, ein Objekt zu löschen, das Teil eines geschnittenen Objekts " +"ist.\n" +"Diese Aktion wird die Schnittstellenverbindung unterbrechen.\n" +"Danach kann die Modellkonsistenz nicht garantiert werden." + +msgid "The selected object couldn't be split." +msgstr "Das ausgewählte Objekt konnte nicht geteilt werden." + +msgid "Another export job is running." +msgstr "Ein weiterer Exportauftrag läuft gerade." + +msgid "Unable to replace with more than one volume" +msgstr "Kann nicht mit mehr als einem Volumen ersetzt werden" + +msgid "Error during replace" +msgstr "Fehler beim Ersetzen" + +msgid "Replace from:" +msgstr "Ersetzen von:" + +msgid "Select a new file" +msgstr "Wählen Sie eine neue Datei aus" + +msgid "File for the replace wasn't selected" +msgstr "Datei für das Ersetzen wurde nicht ausgewählt" + +msgid "Please select a file" +msgstr "Bitte wählen Sie eine Datei" + +msgid "Do you want to replace it" +msgstr "Möchten Sie es ersetzen" + +msgid "Message" +msgstr "Mitteilung" + +msgid "Reload from:" +msgstr "Neu laden von:" + +msgid "Unable to reload:" +msgstr "Kann nicht neu geladen werden:" + +msgid "Error during reload" +msgstr "Fehler beim Neuladen" + +msgid "There are warnings after slicing models:" +msgstr "Es gibt Warnungen nach dem slicen des Modells:" + +msgid "warnings" +msgstr "Warnungen" + +msgid "Invalid data" +msgstr "Ungültige Daten" + +msgid "Slicing Canceled" +msgstr "Slicing abgebrochen" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Slicen der Druckplatte %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Bitte beheben Sie die Slicing-Fehler und veröffentlichen Sie erneut." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Das Netzwerk-Plugin wurde nicht erkannt. Netzwerkbezogene Funktionen sind " +"nicht verfügbar." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Vorschaumodus:\n" +"Die geladene Datei enthält nur G-Code Befehle. Die Seite \"Vorbereiten\" " +"kann nicht aufgerufen werden." + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" +"Sie können die geänderten Profile in das neue Projekt übernehmen oder sie " +"verwerfen es" + +msgid "Creating a new project" +msgstr "Neues Projekt erstellen" + +msgid "Load project" +msgstr "Projekt laden" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Das Projekt konnte nicht gespeichert werden.\n" +"Bitte prüfen Sie, ob der Ordner online existiert oder ob andere Programme " +"die Projektdatei geöffnet haben." + +msgid "Save project" +msgstr "Projekt speichern" + +msgid "Importing Model" +msgstr "Modell importieren" + +msgid "prepare 3mf file..." +msgstr "3mf-Datei vorbereiten…" + +msgid "Download failed, unknown file format." +msgstr "Download fehlgeschlagen, unbekanntes Dateiformat." + +msgid "downloading project ..." +msgstr "Projekt wird heruntergeladen..." + +msgid "Download failed, File size exception." +msgstr "Download fehlgeschlagen, Dateigröße nicht erlaubt." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "" +"Projekt heruntergeladen %d%%Der Import in Snapmaker Orca ist fehlgeschlagen. " +"Bitte laden Sie die Datei herunter und importieren Sie sie manuell." + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"Der Import in Snapmaker Orca ist fehlgeschlagen. Bitte laden Sie die Datei " +"manuell herunter und importieren Sie sie." + +msgid "Import SLA archive" +msgstr "SLA-Archiv importieren" + +msgid "The selected file" +msgstr "Die ausgewählte Datei" + +msgid "does not contain valid gcode." +msgstr "enthält keinen gültigen G-Code." + +msgid "Error occurs while loading G-code file" +msgstr "Beim Laden der G-Code-Datei ist ein Fehler aufgetreten." + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "Das Laden eines ZIP-Archivs auf dem Pfad %1% ist fehlgeschlagen." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "Entpacken der Datei nach %1%: %2% fehlgeschlagen" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"Die entpackte Datei bei %1% konnte nicht gefunden werden. Das Entpacken der " +"Datei ist fehlgeschlagen." + +msgid "Drop project file" +msgstr "Projektdatei ablegen" + +msgid "Please select an action" +msgstr "Bitte wählen Sie eine Aktion" + +msgid "Open as project" +msgstr "Als Projekt öffnen" + +msgid "Import geometry only" +msgstr "Nur Geometrie importieren" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Es kann immer nur eine G-Code-Datei gleichzeitig geöffnet werden." + +msgid "G-code loading" +msgstr "G-Code wird geladen" + +msgid "G-code files can not be loaded with models together!" +msgstr "G-Code-Dateien und Modelle können nicht zusammen geladen werden!" + +msgid "Can not add models when in preview mode!" +msgstr "Modelle können im Vorschaumodus nicht hinzugefügt werden" + +msgid "All objects will be removed, continue?" +msgstr "Alle Objekte werden entfernt, fortfahren?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"Das aktuelle Projekt enthält nicht gespeicherte Änderungen. Möchten Sie " +"speichern, bevor Sie fortfahren?" + +msgid "Number of copies:" +msgstr "Anzahl der Kopien:" + +msgid "Copies of the selected object" +msgstr "Kopien des ausgewählten Objekts" + +msgid "Save G-code file as:" +msgstr "Speichere G-Code Datei als:" + +msgid "Save SLA file as:" +msgstr "Speichere SLA Datei als:" + +msgid "The provided file name is not valid." +msgstr "Der angegebene Dateiname ist ungültig." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "Folgende Zeichen werden vom FAT Dateisystem nicht unterstützt:" + +msgid "Save Sliced file as:" +msgstr "Geslicte Datei speichern unter:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"Die Datei %s wurde an den Speicher des Druckers gesendet und kann auf dem " +"Drucker angezeigt werden." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Die Boolesche Operation auf den Modellnetzen kann nicht durchgeführt werden. " +"Nur positive Teile werden beibehalten. Sie können die Netze reparieren und " +"es erneut versuchen." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Grund: Teil \"%1%\" ist leer." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Grund: Teil \"%1%\" hat kein Volumen." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Grund: Teil \"%1%\" hat Selbstüberschneidung." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Grund: \"%1%\" und ein anderes Teil haben keine Schnittmenge." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Eine boolesche Operation kann für Modellnetze nicht ausgeführt werden. Es " +"werden nur positive Teile exportiert." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"Möchten Sie die Original-SVGs mit ihren lokalen Pfaden in die 3MF-Datei " +"speichern?\n" +"Wenn Sie auf \"NEIN\" klicken, können alle SVGs im Projekt nicht mehr " +"bearbeitet werden." + +msgid "Private protection" +msgstr "Privatsphäre" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" +"Ist der Drucker bereit? Ist die Druckplatte eingelegt, leer und sauber?" + +msgid "Upload and Print" +msgstr "Hochladen und Drucken" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Nach Objekt drucken: \n" +"Es wird vorgeschlagen, die automatische Anordnung zu verwenden, um " +"Kollisionen beim Drucken zu vermeiden." + +msgid "Send G-code" +msgstr "Sende G-code" + +msgid "Send to printer" +msgstr "Zum Drucker senden" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" +"Benutzerdefinierte Stützstrukturen und Farbgebungen wurden vor der Reparatur " +"entfernt." + +msgid "Optimize Rotation" +msgstr "Rotation optimieren" + +msgid "Invalid number" +msgstr "Ungültige Nummer" + +msgid "Plate Settings" +msgstr "Druck-Platteneinstellungen" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Anzahl der aktuell ausgewählten Teile: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Anzahl der aktuell ausgewählten Objekte: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Name des Teils: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Objektname: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Größe: %1% x %2% x %3% in\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Größe: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Volumen: %1% in³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Volumen: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Dreiecke: %1%\n" + +msgid "Tips:" +msgstr "Tipps:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"Die Funktion \"Modell reparieren\" ist derzeit nur unter Windows verfügbar. " +"Bitte reparieren Sie das Modell in Snapmaker Orca (Windows) oder CAD-Software." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Plate %d: %s wird nicht empfohlen, um Filament %s (%s) zu drucken. Wenn Sie " +"dennoch diesen Druck durchführen möchten, stellen Sie bitte die " +"Betttemperatur dieses Filaments auf einen Wert größer als Null." + +msgid "Switching the language requires application restart.\n" +msgstr "Der Wechsel der Sprache erfordert einen Neustart der Anwendung.\n" + +msgid "Do you want to continue?" +msgstr "Möchten Sie fortfahren?" + +msgid "Language selection" +msgstr "Sprachauswahl" + +msgid "Switching application language while some presets are modified." +msgstr "" +"Umschalten der Anwendungssprache, während einige Profile geändert werden." + +msgid "Changing application language" +msgstr "Anwendungssprache ändern" + +msgid "Changing the region will log out your account.\n" +msgstr "Wenn Sie die Region ändern, werden Sie von Ihrem Konto abgemeldet.\n" + +msgid "Region selection" +msgstr "Auswahl der Region" + +msgid "Second" +msgstr "Sekunde" + +msgid "Browse" +msgstr "Suchen" + +msgid "Choose Download Directory" +msgstr "Wählen Sie das Download-Verzeichnis" + +msgid "Associate" +msgstr "Zuordnen" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "mit Snapmaker Orca, damit öffnet Orca Modelle von" + +msgid "Current Association: " +msgstr "Aktuelle Zuordnung: " + +msgid "Current Instance" +msgstr "Aktuelle Instanz" + +msgid "Current Instance Path: " +msgstr "Aktueller Instanzpfad: " + +msgid "General Settings" +msgstr "Allgemeine Einstellungen" + +msgid "Asia-Pacific" +msgstr "Asien-Pazifik" + +msgid "China" +msgstr "China" + +msgid "Europe" +msgstr "Europa" + +msgid "North America" +msgstr "Nordamerika" + +msgid "Others" +msgstr "Sonstiges" + +msgid "Login Region" +msgstr "Login-Region" + +msgid "Stealth Mode" +msgstr "Unsichtbarer Modus" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" +"Dies stoppt die Übertragung von Daten an die Cloud-Dienste von Bambu. " +"Benutzer, die keine BBL-Maschinen verwenden oder nur den LAN-Modus " +"verwenden, können diese Funktion sicher aktivieren." + +msgid "Enable network plugin" +msgstr "Netzwerk-Plugin aktivieren" + +msgid "Check for stable updates only" +msgstr "Nur nach stabilen Updates suchen" + +msgid "Metric" +msgstr "Metrisch" + +msgid "Imperial" +msgstr "Imperial" + +msgid "Units" +msgstr "Einheiten" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "Nur eine Snapmaker Orca-Instanz zulassen" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"Auf OSX läuft standardmäßig immer nur eine Instanz der App. Es ist jedoch " +"möglich, mehrere Instanzen derselben App von der Befehlszeile aus zu " +"starten. In diesem Fall erlaubt diese Einstellung nur eine Instanz." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" +"Wenn dies aktiviert ist und Snapmaker Orca gestartet wird, während bereits eine " +"andere Instanz von Snapmaker Orca läuft, wird diese Instanz stattdessen " +"reaktiviert." + +msgid "Home" +msgstr "Startseite" + +msgid "Default Page" +msgstr "Standardseite" + +msgid "Set the page opened on startup." +msgstr "Legen Sie die Seite fest, die beim Start geöffnet wird." + +msgid "Touchpad" +msgstr "Touchpad" + +msgid "Camera style" +msgstr "Kamerastil" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"Wählen Sie den Kameranavigationsstil aus.\n" +"Standard: LMB+Verschieben für Rotation, RMB/MMB+Verschieben für Schwenken.\n" +"Touchpad: Alt+Verschieben für Rotation, Shift+Verschieben für Schwenken." + +msgid "Zoom to mouse position" +msgstr "Zum Mausposition zoomen" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Vergrößere die Ansicht in Richtung der Mauszeigerposition im 3D-Modus " +"anstatt auf das Zentrum des 2D-Fensters." + +msgid "Use free camera" +msgstr "Freie Kamera verwenden" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "Wenn aktiviert, wird die freie Kamera verwendet." + +msgid "Reverse mouse zoom" +msgstr "Maus-Zoom umkehren" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "Wenn aktiviert, wird die Richtung des Zooms mit dem Mausrad umgekehrt." + +msgid "Show splash screen" +msgstr "Splash-Screen anzeigen" + +msgid "Show the splash screen during startup." +msgstr "Zeige den Splash-Screen beim Start." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Benachrichtigung \"Tipp des Tages\" nach dem Start anzeigen" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Wenn aktiviert, werden beim Start nützliche Hinweise angezeigt." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "Reinigungsvolumen: Auto-Berechnung bei jeder Farbänderung." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "Wenn aktiviert, wird bei jeder Farbänderung automatisch berechnet." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "Reinigungsvolumen: Auto-Berechnung bei jedem Filamentwechsel." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "Wenn aktiviert, wird bei jedem Filamentwechsel automatisch berechnet." + +msgid "Remember printer configuration" +msgstr "Druckerkonfiguration merken" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" +"Wenn aktiviert, merkt sich Orca die Filament-/Prozesskonfiguration für jeden " +"Drucker und wechselt automatisch." + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "Multi-Geräte-Verwaltung (nach Neustart von Studio wirksam)." + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"Wenn diese Option aktiviert ist, können Sie eine Aufgabe gleichzeitig an " +"mehrere Geräte senden und mehrere Geräte verwalten." + +msgid "Network" +msgstr "Netzwerk" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "Benutzerprofile automatisch synchronisieren (Drucker/Filament/Prozess)" + +msgid "User Sync" +msgstr "Benutzer-Synchronisation" + +msgid "Update built-in Presets automatically." +msgstr "Aktualisiere integrierte Voreinstellungen automatisch." + +msgid "System Sync" +msgstr "System-Synchronisation " + +msgid "Clear my choice on the unsaved presets." +msgstr "Meine Auswahl bei den nicht gespeicherten Voreinstellungen löschen." + +msgid "Associate files to Snapmaker Orca" +msgstr "Dateien mit Snapmaker Orca verknüpfen" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Dateiendung .3mf mit Snapmaker Orca verknüpfen" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Wenn aktiviert, wird Snapmaker Orca als Standardanwendung zum Öffnen von .3mf-" +"Dateien festgelegt" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Dateiendung .stl mit Snapmaker Orca verknüpfen" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Wenn aktiviert, wird Snapmaker Orca als Standardanwendung zum Öffnen von .stl-" +"Dateien festgelegt" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Dateiendung .step/.stp mit Snapmaker Orca verknüpfen" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Wenn aktiviert, wird Snapmaker Orca als Standardanwendung zum Öffnen von .step-" +"Dateien festgelegt" + +msgid "Associate web links to Snapmaker Orca" +msgstr "Web-Links mit Snapmaker Orca verknüpfen" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "URLs mit Snapmaker Orca verknüpfen" + +msgid "Maximum recent projects" +msgstr "Höchstanzahl an letzten Projekten" + +msgid "Maximum count of recent projects" +msgstr "Maximale Anzahl an zuletzt geöffneten Projekten" + +msgid "Clear my choice on the unsaved projects." +msgstr "Meine Auswahl für nicht gespeicherte Projekte löschen." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "Keine Warnungen beim Laden von 3MF mit modifizierten G-Codes" + +msgid "Auto-Backup" +msgstr "Automatische Datensicherung" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Erstellen Sie regelmäßig Sicherungskopien Ihres Projekts,um es im Falle " +"eines Absturzes wiederherstellen zu können." + +msgid "every" +msgstr "jede/r/s" + +msgid "The peroid of backup in seconds." +msgstr "Die Zeitdauer für die Sicherung in Sekunden." + +msgid "Downloads" +msgstr "Downloads" + +msgid "Dark Mode" +msgstr "Dunkler Modus" + +msgid "Enable Dark mode" +msgstr "Dunklen Modus aktivieren" + +msgid "Develop mode" +msgstr "Entwicklermodus" + +msgid "Skip AMS blacklist check" +msgstr "Überspringen der AMS Blacklist-Prüfung" + +msgid "Home page and daily tips" +msgstr "Startseite und tägliche Tipps" + +msgid "Show home page on startup" +msgstr "Startseite beim Starten anzeigen" + +msgid "Sync settings" +msgstr "Synchronisationseinstellungen" + +msgid "User sync" +msgstr "Benutzer-Synchronisation" + +msgid "Preset sync" +msgstr "Profil Synchronisation" + +msgid "Preferences sync" +msgstr "Synchronisierung der Einstellungen" + +msgid "View control settings" +msgstr "Ansicht-Steuerungseinstellungen" + +msgid "Rotate of view" +msgstr "Drehen der Ansicht" + +msgid "Move of view" +msgstr "Pan-Ansicht" + +msgid "Zoom of view" +msgstr "Zoom der Ansicht" + +msgid "Other" +msgstr "Sonstiges" + +msgid "Mouse wheel reverses when zooming" +msgstr "Scrollrichtung beim Zoomen umkehren" + +msgid "Enable SSL(MQTT)" +msgstr "SSL aktivieren (MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "SSL aktivieren (FTP)" + +msgid "Internal developer mode" +msgstr "Interner Entwicklermodus" + +msgid "Log Level" +msgstr "Protokollstufe" + +msgid "fatal" +msgstr "verhängnisvoll" + +msgid "error" +msgstr "Fehler" + +msgid "warning" +msgstr "Warnung" + +msgid "debug" +msgstr "Fehlersuche" + +msgid "trace" +msgstr "Spurensuche" + +msgid "Host Setting" +msgstr "Host-Einstellung" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEV host: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA host: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "PRE host: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Produkt Moderator" + +msgid "debug save button" +msgstr "Debug Speicher-Taste" + +msgid "save debug settings" +msgstr "Debug-Einstellungen speichern" + +msgid "DEBUG settings have saved successfully!" +msgstr "DEBUG-Einstellungen wurden erfolgreich gespeichert!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Cloud-Umgebung gewechselt; Bitte erneut anmelden!" + +msgid "System presets" +msgstr "Systemvoreinstellungen" + +msgid "User presets" +msgstr "Benutzerdefinierte Profile" + +msgid "Incompatible presets" +msgstr "Inkompatible Profile" + +msgid "AMS filaments" +msgstr "AMS Filament" + +msgid "Click to pick filament color" +msgstr "Klicken Sie hier, um die Filamentfarbe auszuwählen" + +msgid "Please choose the filament colour" +msgstr "Bitte wählen Sie die Filamentfarbe aus." + +msgid "Add/Remove presets" +msgstr "Profil hinzufügen/entfernen" + +msgid "Edit preset" +msgstr "Profil bearbeiten" + +msgid "Project-inside presets" +msgstr "Projektinternes Profil" + +msgid "Add/Remove filaments" +msgstr "Filament hinzufügen/entfernen" + +msgid "Add/Remove materials" +msgstr "Materialien hinzufügen/entfernen" + +msgid "Select/Remove printers(system presets)" +msgstr "Systemdrucker auswählen/entfernen" + +msgid "Create printer" +msgstr "Drucker erstellen" + +msgid "The selected preset is null!" +msgstr "Das selektierte Profil ist leer!" + +msgid "End" +msgstr "Ende" + +msgid "Customize" +msgstr "Anpassen" + +msgid "Other layer filament sequence" +msgstr "Andere Filament-Schichtsequenz" + +msgid "Please input layer value (>= 2)." +msgstr "Bitte geben Sie einen Schichtwert (>= 2) ein." + +msgid "Plate name" +msgstr "Platten-Name" + +msgid "Same as Global Print Sequence" +msgstr "Gleich wie globale Drucksequenz" + +msgid "Print sequence" +msgstr "Druckreihenfolge" + +msgid "Same as Global" +msgstr "Gleich wie global" + +msgid "Disable" +msgstr "Deaktivieren" + +msgid "Spiral vase" +msgstr "Vasenmodus" + +msgid "First layer filament sequence" +msgstr "Erste Filament-Schichtsequenz" + +msgid "Same as Global Plate Type" +msgstr "Entspricht dem globalen Plattentyp" + +msgid "Same as Global Bed Type" +msgstr "Entspricht dem allgemeinen Bettyp" + +msgid "By Layer" +msgstr "Nach Schicht" + +msgid "By Object" +msgstr "Nach Objekt" + +msgid "Accept" +msgstr "Bestätigt" + +msgid "Log Out" +msgstr "Ausloggen" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "" +"Slicen Sie alle Druckplatten, um Zeit- und Filamentschätzungen zu erhalten" + +msgid "Packing project data into 3mf file" +msgstr "Packen der Projektdaten in eine 3mf-Datei" + +msgid "Uploading 3mf" +msgstr "Hochladen der 3mf" + +msgid "Jump to model publish web page" +msgstr "Zur Modellveröffentlichungs-Webseite springen" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "" +"Hinweis: Die Vorbereitung kann einige Minuten dauern. Bitte haben Sie Geduld." + +msgid "Publish" +msgstr "Veröffentlichen" + +msgid "Publish was cancelled" +msgstr "Veröffentlichung wurde abgebrochen" + +msgid "Slicing Plate 1" +msgstr "Slicen der Druckplatte 1" + +msgid "Packing data to 3mf" +msgstr "Daten in 3mf packen" + +msgid "Jump to webpage" +msgstr "Zu einer Website springen" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "%s speichern als" + +msgid "User Preset" +msgstr "Benutzer-Profil" + +msgid "Preset Inside Project" +msgstr "Projektbasiertes Profil" + +msgid "Name is unavailable." +msgstr "Der Name ist nicht verfügbar." + +msgid "Overwrite a system profile is not allowed" +msgstr "Überschreiben eines Systemprofils ist nicht erlaubt" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "Profil \"%1%\" existiert bereits." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "" +"Profil \"%1%\" existiert bereits und ist mit dem aktuellen Drucker nicht " +"kompatibel." + +msgid "Please note that saving action will replace this preset" +msgstr "Bitte beachten Sie, dass das Speichern dieses Profil überschreibt." + +msgid "The name cannot be the same as a preset alias name." +msgstr "Der Name kann nicht mit einem Profil-Aliasnamen identisch sein." + +msgid "Save preset" +msgstr "Profil speichern" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Kopieren" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "Drucker \"%1%\" ist mit Profil \"%2%\" ausgewählt" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "" +"Bitte wählen Sie nach dem Speichern eine Aktion mit dem Profil \"%1%\"." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Für \"%1%\", ändern Sie \"%2%\" in \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Für \"%1%\", fügen Sie \"%2%\" als neues Profil hinzu" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Wechseln Sie einfach zu \"%1%\"" + +msgid "Task canceled" +msgstr "Auftrag abgebrochen" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Suche" + +msgid "My Device" +msgstr "Mein Gerät" + +msgid "Other Device" +msgstr "Anderes Gerät" + +msgid "Online" +msgstr "Online" + +msgid "Input access code" +msgstr "Zugangscode eingeben" + +msgid "Can't find my devices?" +msgstr "Kann das Geräte nicht finden?" + +msgid "Log out successful." +msgstr "Abmeldung erfolgreich." + +msgid "Busy" +msgstr "Beschäftigt" + +msgid "Bambu Cool Plate" +msgstr "Bambu kalte Druckplatte" + +msgid "PLA Plate" +msgstr "PLA-Platte" + +msgid "Bambu Engineering Plate" +msgstr "Bambu technische Druckplatte" + +msgid "Bambu Smooth PEI Plate" +msgstr "Bambu glatte PEI-Platte" + +msgid "High temperature Plate" +msgstr "Hochtemperaturplatte" + +msgid "Bambu Textured PEI Plate" +msgstr "Bambu strukturierte PEI-Platte" + +msgid "Send print job to" +msgstr "Druckauftrag senden an" + +msgid "Flow Dynamics Calibration" +msgstr "Dynamische Flusskalibrierung" + +msgid "Click here if you can't connect to the printer" +msgstr "" +"Klicken Sie hier, wenn Sie keine Verbindung zum Drucker herstellen können" + +msgid "send completed" +msgstr "Senden abgeschlossen" + +msgid "Error code" +msgstr "Fehlercode" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "Kein Login-Konto, nur Drucker im LAN-Modus werden angezeigt" + +msgid "Connecting to server" +msgstr "Verbindung zum Server wird hergestellt" + +msgid "Synchronizing device information" +msgstr "Geräteinformationen synchronisieren" + +msgid "Synchronizing device information time out" +msgstr "Zeitüberschreitung bei der Synchronisierung von Geräteinformationen" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"Druckauftrag kann nicht gesendet werden, während die Firmware des Druckers " +"aktualisiert wird" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"Der Drucker führt gerade Befehle aus. Bitte starten Sie den Druckvorgang " +"nach deren Beendigung erneut" + +msgid "The printer is busy on other print job" +msgstr "Der Drucker ist mit einem anderen Druckauftrag beschäftigt." + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament %s überschreitet die Anzahl der AMS-Slots. Bitte aktualisieren Sie " +"die Druckerfirmware, um die AMS-Slots-Zuordnung zu unterstützen." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Filament überschreitet die Anzahl der AMS-Slots. Bitte aktualisieren Sie die " +"Druckerfirmware, um die AMS-Slots-Zuordnung zu unterstützen." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Die Zuordnung von Filamenten zu AMS-Slots wurde eingerichtet. Sie können " +"oben auf ein Filament klicken, um dessen Zuordnung zu ändern" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Bitte klicken Sie oben auf jedes Filament, um den zugehörigen AMS-Slot " +"anzugeben, bevor Sie den Druckauftrag abschicken" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"Filament %s stimmt nicht mit dem Filament in AMS-Slot %s überein. Bitte " +"aktualisieren Sie die Druckerfirmware, um die AMS-Slot-Zuordnung zu " +"unterstützen." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament stimmt nicht mit dem Filament in AMS-Slot überein. Bitte " +"aktualisieren Sie die Druckerfirmware, um die AMS-Slot-Zuordnung zu " +"unterstützen." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"Die Drucker-Firmware unterstützt nur die sequentielle Zuordnung von Filament " +"=> AMS-Slot." + +msgid "An SD card needs to be inserted before printing." +msgstr "Vor dem Drucken muss eine MicroSD-Karte eingelegt werden." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"Der ausgewählte Drucker (%s) ist mit dem gewählten Druckerprofil im Slicer " +"(%s) nicht kompatibel." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "" +"Für die Aufnahme eines Zeitraffers muss eine MicroSD-Karte eingelegt werden." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Der Druckauftrag kann nicht an einen Drucker gesendet werden, dessen " +"Firmware aktualisiert werden muss." + +msgid "Cannot send the print job for empty plate" +msgstr "" +"Ein Druckauftrag für eine leere Druckplatte kann nicht gesendet werden." + +msgid "This printer does not support printing all plates" +msgstr "Dieser Drucker unterstützt nicht den Druck aller Platten" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"Wenn der Spiral-Vase-Modus aktiviert ist, werden bei Maschinen mit I3-" +"Struktur keine Zeitraffervideos erstellt." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Zeitraffer wird nicht unterstützt, da die Druckreihenfolge auf \"Nach Objekt" +"\" eingestellt ist." + +msgid "Errors" +msgstr "Fehler" + +msgid "Please check the following:" +msgstr "Bitte überprüfen Sie Folgendes:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"Der ausgewählte Druckertyp beim Generieren des G-Codes stimmt nicht mit dem " +"derzeit ausgewählten Drucker überein. Es wird empfohlen, für das Slicing " +"denselben Druckertyp zu verwenden." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"Es gibt einige unbekannte Filamente in den AMS-Zuordnungen. Bitte prüfen " +"Sie, ob es sich um die erforderlichen Filamente handelt. Wenn diese in " +"Ordnung sind, klicken Sie auf \"Bestätigen\", um den Druck zu starten." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "Düse im Profil: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "Düse gemerkt: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Ihr Düsendurchmesser in der gesliceten Datei stimmt nicht mit der gemerkten " +"Düse überein. Wenn Sie Ihre Düse kürzlich gewechselt haben, gehen Sie zu " +"Gerät > Drucker-Teile, um die Einstellungen zu ändern." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Das Drucken von Hochtemperaturmaterial (%s Material) mit %s kann zu einer " +"Beschädigung der Düse führen" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "" +"Bitte beheben Sie den obigen Fehler, sonst kann der Druck nicht fortgesetzt " +"werden." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Bitte klicken Sie auf die Bestätigungsschaltfläche, wenn Sie den " +"Druckvorgang trotzdem fortsetzen möchten." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Verbindung zum Drucker wird hergestellt. Während des Verbindungsvorgangs " + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Vorsicht bei der Verwendung! Die Flusskalibrierung auf einer strukturierten " + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Automatische Flusskalibrierung mit Micro Lidar" + +msgid "Modifying the device name" +msgstr "Den Gerätenamen ändern" + +msgid "Bind with Pin Code" +msgstr "Mit Pin-Code verbinden" + +msgid "Send to Printer SD card" +msgstr "An MicroSD-Karte des Druckers senden" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "" +"Der Druckauftrag kann nicht gesendet werden, während ein Update ausgeführt " +"wird" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "Der ausgewählte Drucker ist mit den gewählten Druckerprofilen nicht " + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "" +"Bevor Sie die Datei an die SD-Karte des Druckers senden können, muss eine SD-" +"Karte eingelegt werden." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "Der Drucker muss sich im selben LAN befinden wie Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "" +"Der Drucker unterstützt nicht das Senden an die MicroSD-Karte des Druckers." + +msgid "Slice ok." +msgstr "Slice ok." + +msgid "View all Daily tips" +msgstr "Zeige alle täglichen Tipps" + +msgid "Failed to create socket" +msgstr "Socket konnte nicht erstellt werden" + +msgid "Failed to connect socket" +msgstr "Verbindung zum Socket fehlgeschlagen" + +msgid "Failed to publish login request" +msgstr "Anmeldeanfrage konnte nicht gesendet werden" + +msgid "Get ticket from device timeout" +msgstr "Zeitüberschreitung beim Abrufen des Tickets vom Gerät" + +msgid "Get ticket from server timeout" +msgstr "Zeitüberschreitung beim Abrufen des Tickets vom Server" + +msgid "Failed to post ticket to server" +msgstr "Ticket konnte nicht auf den Server übertragen werden" + +msgid "Failed to parse login report reason" +msgstr "Der Grund für den Anmeldebericht konnte nicht analysiert werden" + +msgid "Receive login report timeout" +msgstr "Zeitüberschreitung beim Empfang des Anmeldeberichts" + +msgid "Unknown Failure" +msgstr "Unbekannter Fehler" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Bitte finden Sie den Pin-Code auf der Konto-Seite auf dem Druckerbildschirm " +"und geben Sie den Pin-Code unten ein." + +msgid "Can't find Pin Code?" +msgstr "Können Sie den Pin-Code nicht finden?" + +msgid "Pin Code" +msgstr "Pin-Code" + +msgid "Binding..." +msgstr "Bindung..." + +msgid "Please confirm on the printer screen" +msgstr "Bitte bestätigen Sie auf dem Druckerbildschirm" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Anmeldung fehlgeschlagen. Bitte überprüfen Sie den Pin-Code." + +msgid "Log in printer" +msgstr "Drucker anmelden" + +msgid "Would you like to log in this printer with current account?" +msgstr "" +"Möchten Sie sich bei diesem Drucker mit Ihrem aktuellen Konto anmelden?" + +msgid "Check the reason" +msgstr "Überprüfe den Grund" + +msgid "Read and accept" +msgstr "Gelesen und akzeptieren" + +msgid "Terms and Conditions" +msgstr "Allgemeine Geschäftsbedingungen" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Vielen Dank für den Kauf eines Bambu Lab Geräts. Bevor Sie Ihr Bambu Lab " +"Gerät verwenden, lesen Sie bitte die Allgemeinen Geschäftsbedingungen. Indem " +"Sie zustimmen klicken, erklären Sie sich mit der Datenschutzrichtlinie und " +"den Nutzungsbedingungen (zusammen die „Bedingungen“) einverstanden, um so " +"Ihr Bambu Lab Gerät verwenden zu können. Wenn Sie die Datenschutzrichtlinien " +"von Bambu Lab nicht einhalten oder diesen zustimmen, verwenden Sie bitte " +"keine Geräte und Dienstleistungen von Bambu Lab." + +msgid "and" +msgstr "und" + +msgid "Privacy Policy" +msgstr "Datenschutzerklärung" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Wir bitten Sie um Ihre Hilfe, um den Drucker für alle zu verbessern" + +msgid "Statement about User Experience Improvement Program" +msgstr "Erklärung zum Programm zur Verbesserung der Benutzererfahrung" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"In der 3D-Druck-Community lernen wir von den Erfolgen und Misserfolgen der " +"anderen, um unsere eigenen Slicing-Parameter und Einstellungen anzupassen. " +"%s folgt demselben Prinzip und nutzt maschinelles Lernen, um seine Leistung " +"anhand der Erfolge und Misserfolge der riesigen Anzahl von Drucken unserer " +"Nutzer zu verbessern. Wir trainieren %s, um schlauer zu werden, indem wir es " +"mit realen Daten füttern. Wenn Sie einverstanden sind, greift dieser Dienst " +"auf Informationen aus Ihren Fehlerprotokollen und Nutzungsprotokollen zu, " +"die die in der Datenschutzrichtlinie beschriebenen Informationen enthalten " +"können. Wir werden keine persönlichen Daten sammeln, durch die eine Person " +"direkt oder indirekt identifiziert werden kann, wie Namen, Adressen, " +"Zahlungsinformationen oder Telefonnummern. Durch die Aktivierung dieses " +"Dienstes erklären Sie sich mit diesen Bedingungen und der Erklärung zum " +"Datenschutz einverstanden." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Erklärung zum Plan zur Verbesserung der Benutzererfahrung" + +msgid "Log in successful." +msgstr "Anmeldung erfolgreich." + +msgid "Log out printer" +msgstr "Drucker abmelden" + +msgid "Would you like to log out the printer?" +msgstr "Möchten Sie den Drucker abmelden?" + +msgid "Please log in first." +msgstr "Bitte loggen Sie sich zuerst ein." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "" +"Bei der Verbindung mit dem Drucker ist ein Problem aufgetreten. Bitte " +"versuchen Sie es erneut." + +msgid "Failed to log out." +msgstr "Abmeldung fehlgeschlagen." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Aktuelles %s speichern" + +msgid "Delete this preset" +msgstr "Dieses Profil löschen" + +msgid "Search in preset" +msgstr "In Profilen suchen" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Klicken Sie hier, um alle Einstellungen auf die zuletzt gespeicherten " +"Parameter zurückzusetzen." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"Ein Reinigungsturm ist für den gewählten Zeitraffer-Modus erforderlich. Ohne " +"Reinigungsturm kann es zu Fehlern am Modell kommen. Sind Sie sicher, dass " +"Sie den Reinigungsturm deaktivieren möchten?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"Für den gewählten Zeitraffermodus ist ein Reinigungsturm erforderlich. Ohne " +"Reinigungsturm kann es zu Fehlern am Modell kommen. Möchten Sie den " +"Reinigungsturm aktivieren?" + +msgid "Still print by object?" +msgstr "Trotzdem nach Objekt drucken?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Wir haben einen experimentellen Stil \"Baum schmal\" hinzugefügt, der ein " +"geringeres Stützvolumen benötigt, aber dafür eine geringere Stärke " +"aufweist.\n" +"Wir empfehlen folgende Einstellungen: 0 Oberflächenschichten, 0 oberer " +"Abstand, 2 Wände." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Diese Einstellungen automatisch ändern?\n" +"Ja - Diese Einstellungen automatisch ändern.\n" +"Nein - Diese Einstellungen für mich nicht ändern." + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Für die Stile \"Baumstützen Stark\" und \"Baumstützen Hybrid\" empfehlen wir " +"die folgenden Einstellungen: Mindestens 2 Schnittstellschichten, mindestens " +"0,1 mm oberer Z-Abstand oder die Verwendung von Stützmaterialien bei der " +"Schnittstelle." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"Bei Verwendung von Supportmaterial für die Supportoberfläche empfehlen wir " +"die folgenden Einstellungen:\n" +" 0 Abstand nach oben (top z distance), 0 Abstand zwischen Oberflächen " +"(interface spacing), konzentrisches Muster und deaktivieren Sie " +"dieunabhängige Einstellung der Support-Lagenhöhe (independent support layer " +"height)." + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"Wenn Sie diese Option aktivieren, wird die Form des Modells geändert. Wenn " +"Ihr Druck präzise Abmessungen erfordert oder Teil einer Baugruppe ist, ist " +"es wichtig, zu überprüfen, ob diese Änderung der Geometrie die " +"Funktionalität Ihres Drucks beeinträchtigt." + +msgid "Are you sure you want to enable this option?" +msgstr "Sind Sie sicher, dass Sie diese Option aktivieren möchten?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"Die Schichthöhe ist zu klein.\n" +"Sie wird auf min_layer_height gesetzt\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"Die Schichthöhe überschreitet das Limit in Druckereinstellungen -> Extruder -" +"> Schichthöhenlimits. Dies kann zu Problemen mit der Druckqualität führen." + +msgid "Adjust to the set range automatically? \n" +msgstr "Automatisch an den eingestellten Bereich anpassen? \n" + +msgid "Adjust" +msgstr "Anpassen" + +msgid "Ignore" +msgstr "Ignorieren" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Experimentelle Funktion: Filament beim Filamentwechsel weiter zurückziehen " +"und abschneiden, um den Flush zu minimieren. Obwohl dies den Flush deutlich " +"reduzieren kann, kann es auch das Risiko von Düsenverstopfungen oder anderen " +"Druckkomplikationen erhöhen." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Experimentelle Funktion: Filament beim Filamentwechsel weiter zurückziehen " +"und abschneiden, um den Flush zu minimieren. Obwohl dies den Flush deutlich " +"reduzieren kann, kann es auch das Risiko von Düsenverstopfungen oder anderen " +"Druckkomplikationen erhöhen. Bitte verwenden Sie die Funktion mit der " +"neuesten Drucker-Firmware." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"Wenn Sie einen Zeitraffer ohne Werkzeugkopf aufnehmen, wird empfohlen, einen " +"\"Timelapse Wischturm\" hinzuzufügen, indem Sie mit der rechten Maustaste " +"auf die leere Position der Bauplatte klicken und \"Primitiv hinzufügen\"->" +"\"Timelapse Wischturm\" wählen." + +msgid "Line width" +msgstr "Breite der Linie" + +msgid "Seam" +msgstr "Naht" + +msgid "Precision" +msgstr "Präzision" + +msgid "Wall generator" +msgstr "Wandgenerator" + +msgid "Walls and surfaces" +msgstr "Wände und Oberflächen" + +msgid "Bridging" +msgstr "Brücken" + +msgid "Overhangs" +msgstr "Überhänge" + +msgid "Walls" +msgstr "Wände" + +msgid "Top/bottom shells" +msgstr "Obere/Untere Schichten" + +msgid "Initial layer speed" +msgstr "Geschwindigkeit der ersten Schicht" + +msgid "Other layers speed" +msgstr "Geschwindigkeit der restlichen Schichten" + +msgid "Overhang speed" +msgstr "Überhanggeschwindigkeit" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Dies ist die Geschwindigkeit für verschiedene Überhangsgrade. Überhangsgrade " +"werden als Prozentsatz der Linienbreite ausgedrückt. Eine Geschwindigkeit " +"von 0 bedeutet keine Verlangsamung für den Überhangsbereich und es wird die " +"Wandgeschwindigkeit verwendet." + +msgid "Bridge" +msgstr "Überbrückung" + +msgid "Set speed for external and internal bridges" +msgstr "Setze Geschwindigkeit für externe und interne Brücken" + +msgid "Travel speed" +msgstr "Fahrgeschwindigkeit" + +msgid "Acceleration" +msgstr "Beschleunigung" + +msgid "Jerk(XY)" +msgstr "Jerk(XY)" + +msgid "Raft" +msgstr "Druckbasis (Raft)" + +msgid "Support filament" +msgstr "Supportfilament" + +msgid "Tree supports" +msgstr "Baumstützen" + +msgid "Skirt" +msgstr "Saum" + +msgid "Prime tower" +msgstr "Reinigungsturm" + +msgid "Special mode" +msgstr "Spezialmodus" + +msgid "G-code output" +msgstr "G-Code-Ausgabe" + +msgid "Post-processing Scripts" +msgstr "Post-Processing Scripts" + +msgid "Notes" +msgstr "Notizen" + +msgid "Frequent" +msgstr "Häufig" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"Die folgende Zeile %s enthält reservierte Schlüsselwörter.\n" +"Bitte entfernen Sie diese, da sonst die Visualisierung des G-Codes und die " +"Schätzung der Druckzeit nicht mehr möglich sind." +msgstr[1] "" +"Die folgende Zeilen %s enthalten reservierte Schlüsselwörter.\n" +"Bitte entfernen Sie diese, da sonst die Visualisierung des G-Codes und die " +"Schätzung der Druckzeit nicht mehr möglich sind." + +msgid "Reserved keywords found" +msgstr "Reservierte Schlüsselwörter gefunden" + +msgid "Setting Overrides" +msgstr "Überschreiben der Einstellungen" + +msgid "Retraction" +msgstr "Rückzug" + +msgid "Basic information" +msgstr "Grundlegende Informationen" + +msgid "Recommended nozzle temperature" +msgstr "Empfohlene Düsentemperatur" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Empfohlener Düsentemperaturbereich für dieses Filament. 0 bedeutet nicht " +"gesetzt" + +msgid "Print chamber temperature" +msgstr "Druckkammertemperatur" + +msgid "Print temperature" +msgstr "Drucktemperatur" + +msgid "Nozzle" +msgstr "Düse" + +msgid "Nozzle temperature when printing" +msgstr "Düsentemperatur beim Drucken" + +msgid "Cool plate" +msgstr "Kalte Druckplatte" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Dies ist die Betttemperatur, wenn die kalte Druckplatte installiert ist. Ein " +"Wert von 0 bedeutet, dass das Filament auf der kalten Druckplatte nicht " +"unterstützt." + +msgid "Textured Cool plate" +msgstr "Texturierte kalte Druckplatte" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" +"Dies ist die Betttemperatur, wenn die kalte Druckplatte installiert ist. Ein " +"Wert von 0 bedeutet, dass das Filament auf der texturierten kalten " +"Druckplatte nicht unterstützt wird." + +msgid "Engineering plate" +msgstr "Technische Druckplatte" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Dies ist die Betttemperatur, wenn die technische Druckplatte installiert " +"wird. Ein Wert von 0 bedeutet, dass das Filament auf der technischen " +"Druckplatte nicht unterstützt wird." + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Glatte PEI-Platte / Hochtemperaturplatte" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Dies ist die Betttemperatur, wenn die glatte PEI-Platte installiert ist. Ein " +"Wert von 0 bedeutet, dass das Filament auf der glatten PEI-/Hochtemperatur " +"Platte nicht unterstützt wird." + +msgid "Textured PEI Plate" +msgstr "Texturierte PEI-Platte" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Betttemperatur, wenn die texturierte PEI-Platte installiert ist. 0 bedeutet, " +"dass das Filament nicht auf der texturierten PEI-Platte unterstützt wird." + +msgid "Volumetric speed limitation" +msgstr "Volumetrische Geschwindigkeitsbegrenzung" + +msgid "Cooling" +msgstr "Kühlung" + +msgid "Cooling for specific layer" +msgstr "Kühlung für eine bestimmte Schicht" + +msgid "Part cooling fan" +msgstr "Bauteillüfter" + +msgid "Min fan speed threshold" +msgstr "Minimale Lüftergeschwindigkeit" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"Der Bauteillüfter beginnt mit der Mindestdrehzahl zu laufen, wenn die " +"geschätzte Schichtzeit nicht länger als der dafür eingestellte Wert ist. " +"Wenn die Schichtzeit kürzer als der eingestellte Wert ist, wird die " +"Lüftergeschwindigkeit zwischen der minimalen und maximalen Geschwindigkeit " +"entsprechend der Schichtzeit interpoliert." + +msgid "Max fan speed threshold" +msgstr "Schwellenwert für die maximale Lüftergeschwindigkeit" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"Der Bauteillüfter wird auf maximaler Drehzahl laufen, wenn die geschätzte " +"Schichtzeit kürzer ist als der eingestellte Wert." + +msgid "Auxiliary part cooling fan" +msgstr "Hilfslüfter" + +msgid "Exhaust fan" +msgstr "Abluftventilator" + +msgid "During print" +msgstr "Während des Drucks" + +msgid "Complete print" +msgstr "Druck abgeschlossen" + +msgid "Filament start G-code" +msgstr "Filament Start G-Code" + +msgid "Filament end G-code" +msgstr "Filament End G-Code" + +msgid "Multimaterial" +msgstr "Multimaterial" + +msgid "Wipe tower parameters" +msgstr "Reinigungsturm-Parameter" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "Toolchange-Parameter bei Single-Extruder-MM-Druckern" + +msgid "Ramming settings" +msgstr "Ramming-Einstellungen" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "Toolchange-Parameter bei Multi-Extruder-MM-Druckern" + +msgid "Printable space" +msgstr "Druckbarer Raum" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "Ungültiger Wert für Parameter %1%: %2% angegeben" + +msgid "G-code flavor is switched" +msgstr "G-Code-Variante wird umgeschaltet" + +msgid "Cooling Fan" +msgstr "Kühlung" + +msgid "Fan speed-up time" +msgstr "Lüfter Beschleunigungszeit" + +msgid "Extruder Clearance" +msgstr "Freiraum des Extruders" + +msgid "Adaptive bed mesh" +msgstr "Adaptives Bett Gitter" + +msgid "Accessory" +msgstr "Zubehör" + +msgid "Machine gcode" +msgstr "Maschinen G-Code" + +msgid "Machine start G-code" +msgstr "Maschinen Start G-Code" + +msgid "Machine end G-code" +msgstr "Maschine Ende G-Code" + +msgid "Printing by object G-code" +msgstr "Drucken nach Objekt G-Code" + +msgid "Before layer change G-code" +msgstr "G-Code vor dem Schichtwechsel" + +msgid "Layer change G-code" +msgstr "Schichtwechsel G-Code" + +msgid "Time lapse G-code" +msgstr "Zeitraffer G-Code" + +msgid "Change filament G-code" +msgstr "Filamentwechsel G-Code" + +msgid "Change extrusion role G-code" +msgstr "Ändere den G-Code der Extrusionsart" + +msgid "Pause G-code" +msgstr "Pausen G-Code" + +msgid "Template Custom G-code" +msgstr "Vorlage Benutzerdefinierter G-Code" + +msgid "Motion ability" +msgstr "Bewegungseinstellung" + +msgid "Normal" +msgstr "Normal" + +msgid "Speed limitation" +msgstr "Geschwindigkeitsbegrenzung" + +msgid "Acceleration limitation" +msgstr "Beschleunigungsbegrenzung" + +msgid "Jerk limitation" +msgstr "Jerkbegrenzung" + +msgid "Single extruder multimaterial setup" +msgstr "Single-Extruder-Multimaterial-Einstellung" + +msgid "Wipe tower" +msgstr "Reinigungsturm" + +msgid "Single extruder multimaterial parameters" +msgstr "Single-Extruder-Multimaterial-Parameter" + +msgid "Layer height limits" +msgstr "Höhenbegrenzungen für Schichten" + +msgid "Lift Z Enforcement" +msgstr "Z-Höhe einhalten" + +msgid "Retraction when switching material" +msgstr "Rückzug bei Materialwechsel" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"Die Wipe-Option ist bei Verwendung des Firmware-Retractionsmodus nicht " +"verfügbar. Soll ich sie deaktivieren, um den Firmware-Retractionsmodus zu " +"aktivieren?" + +msgid "Firmware Retraction" +msgstr "Filament Rückzug durch Firmware" + +msgid "Detached" +msgstr "Losgelöst" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"%d Filament Profil und %d Prozess Profil sind diesem Drucker zugeordnet. " +"Diese Profile werden gelöscht, wenn der Drucker gelöscht wird." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "" +"Voreinstellungen, die von anderen Voreinstellungen geerbt wurden, können " +"nicht gelöscht werden!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Die folgenden Profile erben dieses Profil." +msgstr[1] "Das folgende Profil erbt dieses Profil." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Profil" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "Das folgende Profil wird ebenfalls gelöscht." +msgstr[1] "Die folgenden Profile werden ebenfalls gelöscht." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Sind Sie sicher, dass Sie das ausgewählte Profil löschen möchten? \n" +"Wenn das Profil einem Filament entspricht, das derzeit auf Ihrem Drucker " +"verwendet wird, setzen Sie bitte die Filamentinformationen für diesen Slot " +"zurück." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Sind sie sicher, dass sie das ausgewählte Profil %1% wollen?" + +msgid "All" +msgstr "Alle" + +msgid "Set" +msgstr "Festlegen" + +msgid "Click to reset current value and attach to the global value." +msgstr "" +"Klicken Sie hier, um den aktuellen Wert zurückzusetzen und ihn dem globalen " +"Wert zuzuordnen." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Klicken Sie hier, um die aktuellen Änderungen zu verwerfen und auf den " +"gespeicherten Wert zurückzusetzen." + +msgid "Process Settings" +msgstr "Prozesseinstellungen" + +msgid "Undef" +msgstr "Undefiniert" + +msgid "Unsaved Changes" +msgstr "Nicht gespeicherte Änderungen" + +msgid "Transfer or discard changes" +msgstr "Änderungen verwerfen oder beibehalten" + +msgid "Old Value" +msgstr "Alter Wert" + +msgid "New Value" +msgstr "Neuer Wert" + +msgid "Transfer" +msgstr "Übertragen" + +msgid "Don't save" +msgstr "Nicht speichern" + +msgid "Discard" +msgstr "Verwerfen" + +msgid "Click the right mouse button to display the full text." +msgstr "" +"Klicken Sie mit der rechten Maustaste, um den vollständigen Text anzuzeigen." + +msgid "All changes will not be saved" +msgstr "Keine Änderungen werden gespeichert" + +msgid "All changes will be discarded." +msgstr "Alle Änderungen werden verworfen." + +msgid "Save the selected options." +msgstr "Speichern der ausgewählten Optionen." + +msgid "Keep the selected options." +msgstr "Behalten Sie die ausgewählten Optionen bei." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "" +"Übertragen Sie die ausgewählten Optionen auf das neu ausgewählte Profil." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Speichern der ausgewählten Optionen in dem Profil\n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Übertragen Sie die ausgewählten Optionen auf das neu ausgewählte Profil \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "Profil \"%1%\" enthält die folgenden ungespeicherten Änderungen:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"Profil \"%1%\" ist nicht mit dem neuen Druckerprofil kompatibel und enthält " +"die folgenden nicht gespeicherten Änderungen:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"Profil \"%1%\" ist nicht mit dem neuen Prozessprofil kompatibel und enthält " +"die folgenden nicht gespeicherten Änderungen:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "Sie haben einige Einstellungen des Profils \"%1%\" geändert. " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"Sie können die geänderten Profilwerte speichern oder verwerfen." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" +"\n" +"Sie können die geänderten Profilwerte speichern oder verwerfen oder wählen, " +"ob Sie die geänderten Werte in das neue Profil übertragen möchten." + +msgid "You have previously modified your settings." +msgstr "Sie haben Ihre Einstellungen zuvor geändert." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"Sie können die geänderten Profilwerte verwerfen oder wählen, ob Sie die " +"geänderten Werte in das neue Projekt übertragen möchten." + +msgid "Extruders count" +msgstr "Anzahl der Extruder" + +msgid "General" +msgstr "Allgemein" + +msgid "Capabilities" +msgstr "Fähigkeiten" + +msgid "Show all presets (including incompatible)" +msgstr "Alle Profile anzeigen (auch inkompatible)" + +msgid "Select presets to compare" +msgstr "Wähle Voreinstellungen zum Vergleich aus" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" +"Sie können nur in das aktuelle aktive Profil übertragen, da es geändert " +"wurde." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"Übertragen Sie die ausgewählten Optionen vom linken Profil auf das rechte.\n" +"Hinweis: Neue geänderte Profile werden in den Einstellungsregisterkarten " +"ausgewählt, nachdem Sie dieses Dialogfeld geschlossen haben." + +msgid "Transfer values from left to right" +msgstr "Werte von links nach rechts übertragen" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" +"Wenn aktiviert, kann dieses Dialogfeld verwendet werden, um ausgewählte " +"Werte von links nach rechts zu übertragen." + +msgid "Add File" +msgstr "Datei hinzufügen" + +msgid "Set as cover" +msgstr "Als Abdeckung einstellen" + +msgid "Cover" +msgstr "Abdeckung" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "Der Name \"%1%\" existiert bereits." + +msgid "Basic Info" +msgstr "Basis-Info" + +msgid "Pictures" +msgstr "Bilder" + +msgid "Bill of Materials" +msgstr "Materialliste" + +msgid "Assembly Guide" +msgstr "Montageanleitung" + +msgid "Author" +msgstr "Autor" + +msgid "Model Name" +msgstr "Modellname" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Aktualisieren" + +msgid "A new version is available" +msgstr "Eine neue Version ist verfügbar" + +msgid "Configuration update" +msgstr "Konfigurationsupdate" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "" +"Ein neues Konfigurationspaket ist verfügbar. Möchten Sie es installieren?" + +msgid "Description:" +msgstr "Beschreibung:" + +msgid "Configuration incompatible" +msgstr "Konfiguration nicht kompatibel" + +msgid "the configuration package is incompatible with current application." +msgstr "" +"das Konfigurationspaket ist mit der aktuellen Anwendung nicht kompatibel." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"Das Konfigurationspaket ist mit der aktuellen Anwendung nicht kompatibel.\n" +"%s wird das Konfigurationspaket aktualisieren, andernfalls wird es nicht " +"starten können" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "%s beenden" + +msgid "the Configuration package is incompatible with current APP." +msgstr "Das Konfigurationspaket ist mit der aktuellen APP nicht kompatibel." + +msgid "Configuration updates" +msgstr "Konfigurationsupdates" + +msgid "No updates available." +msgstr "Keine Updates verfügbar." + +msgid "The configuration is up to date." +msgstr "Die Konfiguration ist auf dem neuesten Stand." + +msgid "Obj file Import color" +msgstr "Obj file Import color" + +msgid "Specify number of colors:" +msgstr "Specify number of colors:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "The color count should be in range [%d, %d]." + +msgid "Recommended " +msgstr "Recommended " + +msgid "Current filament colors:" +msgstr "Current filament colors:" + +msgid "Quick set:" +msgstr "Quick set:" + +msgid "Color match" +msgstr "Color match" + +msgid "Approximate color matching." +msgstr "Approximate color matching." + +msgid "Append" +msgstr "Append" + +msgid "Add consumable extruder after existing extruders." +msgstr "Add consumable extruder after existing extruders." + +msgid "Reset mapped extruders." +msgstr "Reset mapped extruders." + +msgid "Cluster colors" +msgstr "Cluster colors" + +msgid "Map Filament" +msgstr "Map Filament" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Warning: The count of newly added and \n" +" current extruders exceeds 16." + +msgid "Ramming customization" +msgstr "Ramming-Anpassung" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"Ramming bezeichnet die schnelle Extrusion kurz vor einem Werkzeugwechsel bei " +"einem Single-Extruder-MM-Drucker. Sein Zweck ist es, das Ende des entladenen " +"Filaments so zu formen, dass es das Einsetzen des neuen Filaments nicht " +"verhindert und selbst später wieder eingeführt werden kann.\n" +"\n" +"Dies ist eine Einstellung für Experten, eine falsche Einstellung führt " +"wahrscheinlich zu Verstopfungen, schleifendem Extruderrad, usw." + +msgid "Total ramming time" +msgstr "Summe der Ramming-Zeit" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "Summe des Ramming-Volumens" + +msgid "Ramming line width" +msgstr "Ramming-Linienbreite" + +msgid "Ramming line spacing" +msgstr "Ramming-Linienabstand" + +msgid "Auto-Calc" +msgstr "Automatisch berechnen" + +msgid "Re-calculate" +msgstr "Neu berechnen" + +msgid "Flushing volumes for filament change" +msgstr "Reinigungsvolumen für Filamentwechsel" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Orca würde jedes Mal die Reinigungsvolumen neu berechnen, wenn sich die " +"Farbe des Filaments ändert. Sie können die automatische Berechnung in Orca " +"Slicer > Einstellungen deaktivieren" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Reinigungsvolumen (mm³) für jedes Filamentpaar." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Anmerkung: Reinigungsvolumen im Bereich [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "Der Multiplikator sollte im Bereich [%.2f, %.2f] liegen." + +msgid "Multiplier" +msgstr "Multiplikator " + +msgid "unloaded" +msgstr "entladen" + +msgid "loaded" +msgstr "geladen" + +msgid "Filament #" +msgstr "Filament #" + +msgid "From" +msgstr "Von" + +msgid "To" +msgstr "Zu" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" +"Windows Media Player wird für diese Aufgabe benötigt! Möchten Sie 'Windows " +"Media Player' für Ihr Betriebssystem aktivieren?" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" +"BambuSource wurde nicht korrekt für das Abspielen von Medien registriert! " +"Drücken Sie Ja, um es erneut zu registrieren. Sie werden zweimal aufgefordert" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" +"Fehlendes BambuSource-Komponente für das Abspielen von Medien registriert! " +"Bitte installieren Sie BambuStudio erneut oder suchen Sie nach " +"Kundendiensthilfe." + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" +"Verwendung eines BambuSource aus einer anderen Installation, das Abspielen " +"von Videos funktioniert möglicherweise nicht korrekt! Drücken Sie Ja, um es " +"zu beheben." + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" +"Ihr System fehlt H.264-Codecs für GStreamer, die zum Abspielen von Videos " +"erforderlich sind. (Versuchen Sie, die Pakete gstreamer1.0-plugins-bad oder " +"gstreamer1.0-libav zu installieren und starten Sie Snapmaker Orca neu?)" + +msgid "Bambu Network plug-in not detected." +msgstr "Bambu Network Plugin nicht erkannt." + +msgid "Click here to download it." +msgstr "Hier klicken um es herunterzuladen." + +msgid "Login" +msgstr "Anmelden" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "" +"Das Konfigurationspaket wurde im vorherigen Konfigurationsleitfaden geändert" + +msgid "Configuration package changed" +msgstr "Konfigurationspaket geändert" + +msgid "Toolbar" +msgstr "Werkzeugleiste" + +msgid "Objects list" +msgstr "Liste der Objekte" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Importiere Geometriedaten aus STL/STEP/3MF/OBJ/AMF-Dateien" + +msgid "⌘+Shift+G" +msgstr "⌘+Umschalttaste+G" + +msgid "Ctrl+Shift+G" +msgstr "Strg+Umschalt+G" + +msgid "Paste from clipboard" +msgstr "Aus Zwischenablage einfügen" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "Dialogfeld für 3Dconnexion Geräteeinstellungen anzeigen/ausblenden" + +msgid "Switch table page" +msgstr "Seitenwechsel" + +msgid "Show keyboard shortcuts list" +msgstr "Liste der Tastaturkürzel anzeigen" + +msgid "Global shortcuts" +msgstr "Globale Tastaturkürzel" + +msgid "Rotate View" +msgstr "Drehen der Ansicht" + +msgid "Pan View" +msgstr "Pan-Ansicht" + +msgid "Mouse wheel" +msgstr "Mausrad" + +msgid "Zoom View" +msgstr "Ansicht zoomen" + +msgid "Shift+A" +msgstr "Umschalt+A" + +msgid "Shift+R" +msgstr "Umschalt+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Diese Funktion richtet ausgewählte Objekte oder alle Objekte automatisch " +"aus. Wenn es ausgewählte Objekte gibt, werden nur die ausgewählten Objekte " +"ausgerichtet. Andernfalls werden alle Objekte auf der aktuellen Druckplatte " +"ausgerichtet." + +msgid "Shift+Tab" +msgstr "Umschalt+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Seitenleiste zu-/aufklappen" + +msgid "⌘+Any arrow" +msgstr "⌘+beliebiger Pfeil" + +msgid "Movement in camera space" +msgstr "Bewegung im Kameraraum" + +msgid "⌥+Left mouse button" +msgstr "⌥+Linke Maustaste" + +msgid "Select a part" +msgstr "Teil auswählen" + +msgid "⌘+Left mouse button" +msgstr "⌘+Linke Maustaste" + +msgid "Select multiple objects" +msgstr "Mehrere Objekte auswählen" + +msgid "Ctrl+Any arrow" +msgstr "Strg + beliebige Pfeiltaste" + +msgid "Alt+Left mouse button" +msgstr "Alt + Linke Maustaste" + +msgid "Ctrl+Left mouse button" +msgstr "Strg + Linke Maustaste" + +msgid "Shift+Left mouse button" +msgstr "Umschalt+Linke Maustaste" + +msgid "Select objects by rectangle" +msgstr "Objekte per Rechteck auswählen" + +msgid "Arrow Up" +msgstr "Pfeil hoch" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Auswahl 10 mm in positiver Y-Richtung verschieben" + +msgid "Arrow Down" +msgstr "Pfeil runter" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Auswahl 10 mm in negativer Y-Richtung verschieben" + +msgid "Arrow Left" +msgstr "Pfeil links" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Auswahl 10 mm in negativer X-Richtung verschieben" + +msgid "Arrow Right" +msgstr "Pfeil rechts" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Auswahl 10 mm in positiver X-Richtung verschieben" + +msgid "Shift+Any arrow" +msgstr "Umschalt+beliebige Pfeiltaste" + +msgid "Movement step set to 1 mm" +msgstr "Bewegungsschritt auf 1 mm eingestellt" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "Tastatur 1-9: Filament für Objekt/Teil einstellen" + +msgid "Camera view - Default" +msgstr "Kameraperspektive - Standard" + +msgid "Camera view - Top" +msgstr "Kameraperspektive - Oben" + +msgid "Camera view - Bottom" +msgstr "Kameraperspektive - Unten" + +msgid "Camera view - Front" +msgstr "Kameraperspektive - Vorderseite" + +msgid "Camera view - Behind" +msgstr "Kameraperspektive - Hinten" + +msgid "Camera Angle - Left side" +msgstr "Kameraperspektive - Links" + +msgid "Camera Angle - Right side" +msgstr "Kameraperspektive - Rechts" + +msgid "Select all objects" +msgstr "Alle Objekte auswählen" + +msgid "Gizmo move" +msgstr "Bewegen" + +msgid "Gizmo scale" +msgstr "Skalieren" + +msgid "Gizmo rotate" +msgstr "Rotieren" + +msgid "Gizmo cut" +msgstr "Trennen" + +msgid "Gizmo Place face on bed" +msgstr "Fläche auf Druckbett platzieren" + +msgid "Gizmo SLA support points" +msgstr "SLA Stützpunkte" + +msgid "Gizmo FDM paint-on seam" +msgstr "FDM Naht aufmalen" + +msgid "Gizmo Text emboss / engrave" +msgstr "Text prägen / gravieren" + +msgid "Zoom in" +msgstr "Vergrößern" + +msgid "Zoom out" +msgstr "Verkleinern" + +msgid "Switch between Prepare/Preview" +msgstr "Zwischen Vorbereiten/ Vorschau wechseln" + +msgid "Plater" +msgstr "Druckplatte" + +msgid "Move: press to snap by 1mm" +msgstr "Verschieben: Drücken, um in 1 mm einzurasten" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Mausrad" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Stützen/Farbmalen: Stiftradius einstellen" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Mausrad" + +msgid "Support/Color Painting: adjust section position" +msgstr "Stützen/Farbmalen: Position des Abschnitts anpassen" + +msgid "Ctrl+Mouse wheel" +msgstr "Strg + Mausrad" + +msgid "Alt+Mouse wheel" +msgstr "Alt + Mausrad" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Extrudernummer für die Objekte und Teile einstellen" + +msgid "Delete objects, parts, modifiers " +msgstr "Objekte, Teile, Modifikatoren löschen " + +msgid "Select the object/part and press space to change the name" +msgstr "" +"Wähle das Objekt/Teil aus und drücke die Leertaste, um den Namen zu ändern" + +msgid "Mouse click" +msgstr "Mausklick" + +msgid "Select the object/part and mouse click to change the name" +msgstr "" +"Wähle das Objekt/Teil aus und klicke mit der Maus, um den Namen zu ändern" + +msgid "Objects List" +msgstr "Objektliste" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Vertikaler Schieberegler - Aktiven Schieber nach oben bewegen" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Vertikaler Schieberegler - Aktiven Schieber nach unten bewegen" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Horizontaler Schieberegler - Aktiven Schieber nach links bewegen" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Horizontaler Schieberegler - Aktiven Schieber nach rechts bewegen" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "Ein/Aus Einschichtmodus des vertikalen Schiebereglers" + +msgid "On/Off g-code window" +msgstr "Ein-/Ausblenden des G-Code-Fensters" + +msgid "Move slider 5x faster" +msgstr "Schieberegler 5x schneller bewegen" + +msgid "Shift+Mouse wheel" +msgstr "Umschalt+Mausrad" + +msgid "Horizontal slider - Move to start position" +msgstr "Horizontaler Schieberegler - Zur Startposition bewegen" + +msgid "Horizontal slider - Move to last position" +msgstr "Horizontaler Schieberegler - Zur letzten Position bewegen" + +msgid "Release Note" +msgstr "Hinweis zur Veröffentlichung" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "Version %s Update-Informationen:" + +msgid "Network plug-in update" +msgstr "Aktualisierung des Netzwerk-Plugins" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Klicken Sie auf OK, um das Netzwerk-Plugin beim nächsten Start von Orca " +"Slicer zu aktualisieren." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "" +"Ein neues Netzwerk-Plug-in (%s) verfügbar, möchten Sie es installieren?" + +msgid "New version of Snapmaker Orca" +msgstr "Neue Version von Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Überspringe diese Version" + +msgid "Done" +msgstr "Erledigt" + +msgid "resume" +msgstr "Fortsetzen" + +msgid "Resume Printing" +msgstr "Druck fortsetzen" + +msgid "Resume Printing(defects acceptable)" +msgstr "Druck fortsetzen (Fehler akzeptabel)" + +msgid "Resume Printing(problem solved)" +msgstr "Druck fortsetzen (Problem gelöst)" + +msgid "Stop Printing" +msgstr "Druck abbrechen" + +msgid "Check Assistant" +msgstr "Assistent überprüfen" + +msgid "Filament Extruded, Continue" +msgstr "Filament extrudiert, fortsetzen" + +msgid "Not Extruded Yet, Retry" +msgstr "Noch nicht extrudiert, erneut versuchen" + +msgid "Finished, Continue" +msgstr "Fertig, fortsetzen" + +msgid "Load Filament" +msgstr "Laden" + +msgid "Filament Loaded, Resume" +msgstr "Filament geladen, fortsetzen" + +msgid "View Liveview" +msgstr "Live-Ansicht anzeigen" + +msgid "Confirm and Update Nozzle" +msgstr "Bestätigen und Düse aktualisieren" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "LAN-Verbindung fehlgeschlagen (Senden einer Druckdatei)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Schritt 1: Vergewissern Sie sich, dass Snapmaker Orca und Ihr Drucker sich im " +"selben LAN befinden." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Schritt 2: Wenn die IP und der Zugriffscode unten von den tatsächlichen " +"Werten Ihres Druckers abweichen, korrigieren Sie diese bitte." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Zugangscode" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Wo finde ich die IP-Adresse und den Zugriffscode meines Druckers?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "Schritt 3: Pingen Sie die IP-Adresse, um Paketverlust und Latenz zu " + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP und Zugriffscode verifiziert! Sie können das Fenster schließen" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "Verbindung fehlgeschlagen, bitte überprüfen Sie IP und Zugriffscode" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Verbindung fehlgeschlagen! Wenn Ihre IP und Ihr Zugriffscode korrekt sind, \n" +"gehen Sie bitte zu Schritt 3, um Netzwerkprobleme zu beheben" + +msgid "Model:" +msgstr "Modell:" + +msgid "Serial:" +msgstr "Seriennummer:" + +msgid "Version:" +msgstr "Version:" + +msgid "Update firmware" +msgstr "Firmware aktualisieren" + +msgid "Beta version" +msgstr "Beta-Version" + +msgid "Latest version" +msgstr "Neueste Version" + +msgid "Updating" +msgstr "Aktualiseren" + +msgid "Updating failed" +msgstr "Aktualisierung fehlgeschlagen" + +msgid "Updating successful" +msgstr "Erfolgreich aktualisiert" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Sind Sie sicher, dass Sie die Aktualisierung jetzt durchführen möchten? " +"Dieser Vorgang dauert etwa 10 Minuten. Schalten Sie den Drucker nicht aus, " +"während er aktualisiert wird." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Ein wichtiges Update wurde erkannt und muss ausgeführt werden, bevor der " +"Druck fortgesetzt werden kann. Möchten Sie jetzt aktualisieren? Sie können " +"auch später über „Firmware aktualisieren“ aktualisieren." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"Die Firmware-Version ist nicht korrekt. Vor dem Drucken müssen Sie die " +"Firmware reparieren und aktualisieren. Möchten Sie diese jetzt " +"aktualisieren? Sie können das Update auch später auf dem Drucker oder beim " +"nächsten Start vom Snapmaker Orca durchführen." + +msgid "Extension Board" +msgstr "Erweiterungsboard" + +msgid "Saving objects into the 3mf failed." +msgstr "Das Speichern von Objekten in der 3mf ist fehlgeschlagen." + +msgid "Only Windows 10 is supported." +msgstr "Es wird nur Windows 10 unterstützt." + +msgid "Failed to initialize the WinRT library." +msgstr "Die WinRT-Bibliothek konnte nicht initialisiert werden." + +msgid "Exporting objects" +msgstr "Objekte exportieren" + +msgid "Failed loading objects." +msgstr "Das Laden der Objekte ist fehlgeschlagen." + +msgid "Repairing object by Windows service" +msgstr "Objekt durch Windows-Dienst reparieren" + +msgid "Repair failed." +msgstr "Reparatur fehlgeschlagen." + +msgid "Loading repaired objects" +msgstr "Reparierte Objekte laden" + +msgid "Exporting 3mf file failed" +msgstr "Exportieren der 3mf-Datei fehlgeschlagen" + +msgid "Import 3mf file failed" +msgstr "Importieren der 3mf-Datei fehlgeschlagen" + +msgid "Repaired 3mf file does not contain any object" +msgstr "Reparierte 3mf-Datei enthält kein Objekt" + +msgid "Repaired 3mf file contains more than one object" +msgstr "Reparierte 3mf-Datei enthält mehr als ein Objekt" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "Reparierte 3mf-Datei enthält kein Volumen" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "Reparierte 3mf-Datei enthält mehr als ein Volumen" + +msgid "Repair finished" +msgstr "Reparatur abgeschlossen" + +msgid "Repair canceled" +msgstr "Reparatur abgebrochen" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Kopieren der Datei %1% nach %2% fehlgeschlagen: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" +"Vor der Aktualisierung der Konfiguration müssen die nicht gespeicherten " +"Änderungen überprüft werden." + +msgid "Configuration package: " +msgstr "Konfigurationspaket:" + +msgid " updated to " +msgstr " aktualisiert auf " + +msgid "Open G-code file:" +msgstr "Öffne G-Code-Datei:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Ein Objekt hat eine leere erste Schicht und kann nicht gedruckt werden. " +"Bitte schneiden Sie den Boden ab oder aktivieren Sie die Stützstrukturen." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "" +"Objekt kann aufgrund leerer Schichten zwischen %1% und %2% nicht gedruckt " +"werden." + +#, boost-format +msgid "Object: %1%" +msgstr "Objekt: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Vielleicht sind Teile des Objekts in dieser Höhe zu dünn, oder das Objekt " +"hat ein fehlerhaftes Netz" + +msgid "No object can be printed. Maybe too small" +msgstr "" +"Es kann kein Objekt gedruckt werden. Vielleicht sind die Objekte zu klein." + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"G-Code für ungültigen benutzerdefinierten G-Code konnte nicht erzeugt " +"werden.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" +"Bitte überprüfen Sie den benutzerdefinierten G-Code oder verwenden Sie den " +"standardmäßigen benutzerdefinierten G-Code." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "G-Code wird generiert: Schicht %1%" + +msgid "Inner wall" +msgstr "Innere Wand" + +msgid "Outer wall" +msgstr "Außenwand" + +msgid "Overhang wall" +msgstr "Überhang Wand" + +msgid "Sparse infill" +msgstr "Füllung" + +msgid "Internal solid infill" +msgstr "Innere massive Füllung" + +msgid "Top surface" +msgstr "Obere Oberfläche" + +msgid "Bottom surface" +msgstr "Untere Fläche" + +msgid "Internal Bridge" +msgstr "Interne Brücke" + +msgid "Gap infill" +msgstr "Lückenfüllung" + +msgid "Support interface" +msgstr "Stützstruktur-Schnittstelle" + +msgid "Support transition" +msgstr "Stützenübergang" + +msgid "Multiple" +msgstr "Mehrere" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Berechnung der Linienbreite von %1% fehlgeschlagen. Kann den Wert von \"%2%" +"\" nicht abrufen" + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Ungültiger Abstand für Flow::with_spacing() übergeben, überprüfen Sie Ihre " +"Schichthöhe und Extrusionsbreite" + +msgid "undefined error" +msgstr "unbekannter Fehler" + +msgid "too many files" +msgstr "zu viele Dateien" + +msgid "file too large" +msgstr "Datei zu groß" + +msgid "unsupported method" +msgstr "nicht unterstützte Methode" + +msgid "unsupported encryption" +msgstr "nicht unterstützte Verschlüsselung" + +msgid "unsupported feature" +msgstr "nicht unterstützte Funktion" + +msgid "failed finding central directory" +msgstr "Zentrales Verzeichnis nicht gefunden" + +msgid "not a ZIP archive" +msgstr "kein ZIP Archiv" + +msgid "invalid header or corrupted" +msgstr "ungültiger Header oder beschädigt" + +msgid "unsupported multidisk" +msgstr "Das Speichern auf RAID wird nicht unterstützt." + +msgid "decompression failed" +msgstr "Dekomprimierung fehlgeschlagen" + +msgid "compression failed" +msgstr "Komprimierung fehlgeschlagen" + +msgid "unexpected decompressed size" +msgstr "unerwartete dekomprimierte Größe" + +msgid "CRC check failed" +msgstr "CRC-Prüfung fehlgeschlagen" + +msgid "unsupported central directory size" +msgstr "nicht unterstützte zentrale Verzeichnisgröße" + +msgid "allocation failed" +msgstr "Zuordnung fehlgeschlagen" + +msgid "file open failed" +msgstr "Öffnen der Datei fehlgeschlagen" + +msgid "file create failed" +msgstr "Dateierzeugen fehlgeschlagen" + +msgid "file write failed" +msgstr "Schreiben der Datei fehlgeschlagen" + +msgid "file read failed" +msgstr "Lesen der Datei fehlgeschlagen" + +msgid "file close failed" +msgstr "Datei schließen fehlgeschlagen" + +msgid "file seek failed" +msgstr "Dateizugriff fehlgeschlagen" + +msgid "file stat failed" +msgstr "Zugriff auf Dateieigenschaften fehlgeschlagen" + +msgid "invalid parameter" +msgstr "ungültiger Parameter" + +msgid "invalid filename" +msgstr "ungültiger Dateiname" + +msgid "buffer too small" +msgstr "Puffer zu klein" + +msgid "internal error" +msgstr "interner Fehler" + +msgid "file not found" +msgstr "Datei nicht gefunden" + +msgid "archive too large" +msgstr "Archiv zu groß" + +msgid "validation failed" +msgstr "Überprüfung fehlgeschlagen" + +msgid "write callback failed" +msgstr "Schreib-Callback fehlgeschlagen" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% liegt zu nahe an einem ausgeschlossenen Bereich. Beim Drucken kann es zu " +"Kollisionen kommen." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% ist zu nah an anderen, was Kollisionen verursachen kann." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% ist zu hoch und es kommt zu Kollisionen." + +msgid " is too close to others, there may be collisions when printing." +msgstr " zu nahe an anderen; Beim Drucken kann es zu Kollisionen kommen." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" befindet sich zu nahe an einem Sperrbereich. Beim Drucken kann es zu " +"Kollisionen kommen." + +msgid "Prime Tower" +msgstr "Reinigungsturm" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " ist zu nah an anderen und es können Kollisionen verursacht werden.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr " ist zu nahe am Sperrbereich und es werden Kollisionen verursacht.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Es können nicht mehrere Filamente mit einem großen Temperaturunterschied " +"zusammen gedruckt werden. Andernfalls können der Extruder und die Düse " +"während des Drucks blockiert oder beschädigt werden." + +msgid "No extrusions under current settings." +msgstr "Keine Extrusion unter den aktuellen Einstellungen." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"Der gewählte Zeitraffermodus wird nicht unterstützt, wenn die Sequenz \"nach " +"Objekt\" aktiviert ist." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Bitte wählen Sie die Druckreihenfolge \"Nach Objekt\", um mehrere Objekte im " +"Spiralvasenmodus zu drucken." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"Der Vasen-Modus funktioniert nicht, wenn ein Objekt mehr als ein Material " +"enthält." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "Das Objekt %1% überschreitet die maximale Bauvolumenhöhe." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"Obwohl das Objekt %1% selbst in das Bauvolumen passt, überschreitet seine " +"letzte Schicht die maximale Bauvolumenhöhe." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"Sie möchten möglicherweise die Größe Ihres Modells reduzieren oder die " +"aktuellen Druckeinstellungen ändern und es erneut versuchen." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "" +"Variable Schichthöhe wird nicht mit organischen Stützstrukturen unterstützt." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Unterschiedliche Düsendurchmesser und unterschiedliche Filamentdurchmesser " +"sind nicht zulässig, wenn der Reinigungsturm aktiviert ist." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"Der Reinigungsturm wird derzeit nur mit der relativen Extruderadressierung " +"unterstützt (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "Ooze Prevention wird derzeit nicht mit dem Reinigungsturm unterstützt." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"Der Reinigungsturm wird derzeit nur für die Marlin-, RepRap/Sprinter-, " +"RepRapFirmware- und Repetier-G-Code-Varianten unterstützt." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "Der Reinigungsturm wird im \"Nach Objekt\"-Druck nicht unterstützt." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"Der Reinigungsturm wird nicht unterstützt, wenn die adaptive Schichthöhe " +"aktiviert ist. Er erfordert, dass alle Objekte die gleiche Schichthöhe haben." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"Der Reinigungsturm erfordert einen \"Stützabstand\", der ein Vielfaches der " +"Schichthöhe sein muss." + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" +"Der Reinigungsturm setzt voraus, dass alle Objekte die gleiche Schichthöhe " +"haben." + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"Der Reinigungsturm erfordert, dass alle Objekte über der gleichen Anzahl von " +"Floßschichten gedruckt werden." + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"Der Reinigungsturm setzt voraus, dass alle Objekte mit der gleichen " +"Schichthöhe geslicet werden." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"Der Reinigungsturm wird nur unterstützt, wenn alle Objekte die gleiche " +"variable Schichthöhe haben" + +msgid "Too small line width" +msgstr "Zu geringe Linienbreite" + +msgid "Too large line width" +msgstr "Zu große Linienbreite" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"Der Reinigungsturm erfordert, dass die Stützstrukturen die gleiche " +"Schichthöhe wie das Objekt haben." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"Der Durchmesser der Spitze des organischen Stützbaums darf nicht kleiner " +"sein als die Extrusionsbreite des Stützmaterials." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"Der Durchmesser des organischen Stützbaums darf nicht kleiner sein als 2x " +"die Extrusionsbreite des Stützmaterials." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"Der Durchmesser des organischen Stützbaums darf nicht kleiner sein als der " +"Durchmesser der Spitze des Stützbaums." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Stützerzwinger werden verwendet, aber die Stützstrukturen sind nicht " +"aktiviert. Bitte aktivieren Sie die Stützstruktur-Funktion." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "Schichthöhe darf den Düsendurchmesser nicht überschreiten." + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"Relative Extruderadressierung erfordert das Zurücksetzen der " +"Extruderposition bei jeder Schicht, um einen Verlust der Genauigkeit von " +"Gleitkommazahlen zu verhindern. Fügen Sie \"G92 E0\" zu layer_gcode hinzu." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"\"G92 E0\" wurde in before_layer_gcode gefunden, was mit absoluter " +"Extruderadressierung nicht kompatibel ist." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"\"G92 E0\" wurde in layer_gcode gefunden, was mit absoluter " +"Extruderadressierung nicht kompatibel ist." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Druckplatte %d: %s unterstützt kein Filament %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" +"Das Einstellen der Ruckgeschwindigkeit zu niedrig kann zu Artefakten auf " +"gebogenen Oberflächen führen" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"Die Ruckgeschwindigkeitseinstellung überschreitet den maximalen Ruck des " +"Druckers (machine_max_jerk_x/machine_max_jerk_y).\n" +"Orca wird automatisch die Ruckgeschwindigkeit begrenzen, um sicherzustellen, " +"dass sie nicht die Fähigkeiten des Druckers überschreitet.\n" +"Sie können die maximale Ruckgeschwindigkeitseinstellung in der Konfiguration " +"Ihres Druckers anpassen, um höhere Geschwindigkeiten zu erreichen." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"Die Beschleunigungseinstellung überschreitet die maximale Beschleunigung des " +"Druckers (machine_max_acceleration_extruding).\n" +"Orca wird automatisch die Beschleunigungsgeschwindigkeit begrenzen, um " +"sicherzustellen, dass sie nicht die Fähigkeiten des Druckers überschreitet.\n" +"Sie können den Wert von machine_max_acceleration_extruding in der " +"Konfiguration Ihres Druckers anpassen, um höhere Geschwindigkeiten zu " +"erreichen." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"Die Beschleunigungseinstellung für das Verfahren überschreitet die maximale " +"Verfahrensbeschleunigung des Druckers (machine_max_acceleration_travel).\n" +"Orca wird automatisch die Verfahrensbeschleunigungsgeschwindigkeit " +"begrenzen, um sicherzustellen, dass sie nicht die Fähigkeiten des Druckers " +"überschreitet.\n" +"Sie können den Wert von machine_max_acceleration_travel in der Konfiguration " +"Ihres Druckers anpassen, um höhere Geschwindigkeiten zu erreichen." + +msgid "Generating skirt & brim" +msgstr "Generieren von Schürze und Rand (skirt & brim)" + +msgid "Exporting G-code" +msgstr "Exportiere G-Code" + +msgid "Generating G-code" +msgstr "Generiere G-Code" + +msgid "Failed processing of the filename_format template." +msgstr "Verarbeitung der Vorlage filename_format fehlgeschlagen." + +msgid "Printable area" +msgstr "Druckbarer Bereich" + +msgid "Bed exclude area" +msgstr "ausgenommene Druckbettfläche" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Unbedruckbarer Bereich in der XY-Ebene. Bei Druckern der X1 Serie wird zum " +"Beispiel die vordere linke Ecke verwendet, um das Filament während des " +"Filamentwechsels zu schneiden. Der Bereich wird als Polygon durch Punkte im " +"folgenden Format ausgedrückt: \"XxY, XxY, ...\"" + +msgid "Bed custom texture" +msgstr "Benutzerdefinierte Textur des Druckbettes" + +msgid "Bed custom model" +msgstr "Benutzerspezifisches Druckbettmodell" + +msgid "Elephant foot compensation" +msgstr "Elefantenfußkompensation" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Schrumpft die erste Schicht auf der Druckplatte, um den Elefantenfuß-Effekt " +"auszugleichen." + +msgid "Elephant foot compensation layers" +msgstr "Elefantenfußkompensationsschichten" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"Die Anzahl der Schichten, in denen die Elefantenfußkompensation aktiv ist. " +"Die erste Schicht wird um den Wert der Elefantenfußkompensation verkleinert, " +"dann werden die nächsten Schichten linear weniger verkleinert, bis zur " +"Schicht, die durch diesen Wert angegeben ist." + +msgid "layers" +msgstr "Schichten" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Definiert die Höhe der einzelnen Schichten. Eine geringe Schichthöhe " +"steigert die Genauigkeit und verringert die Sichtbarkeit der einzelnen " +"Schichten, verlängert dafür aber die Druckzeit." + +msgid "Printable height" +msgstr "Druckbare Höhe" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "" +"Maximale bedruckbare Höhe, die durch den Bauraum des Druckers begrenzt ist." + +msgid "Preferred orientation" +msgstr "Bevorzugte Ausrichtung" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "Automatische Ausrichtung von STLs auf der Z-Achse beim Import" + +msgid "Printer preset names" +msgstr "Drucker Profilname" + +msgid "Use 3rd-party print host" +msgstr "Benutze Drittanbieter-Druck-Hosts" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" +"Erlauben Sie die Steuerung von BambuLab-Druckern durch Drittanbieter-Druck-" +"Hosts" + +msgid "Hostname, IP or URL" +msgstr "Hostname, IP oder URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca kann G-Code-Dateien auf einen Drucker-Host hochladen. Dieses " +"Feld sollte den Hostnamen, die IP-Adresse oder die URL der Drucker-Host-" +"Instanz enthalten. Auf einen Drucker-Host hinter HAProxy mit aktivierter " +"Basisauthentifizierung kann zugegriffen werden, indem Benutzername und " +"Passwort in die URL in folgendem Format eingegeben werden: https://username:" +"password@Ihre-octopi-Adresse/" + +msgid "Device UI" +msgstr "Gerät" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Bitte geben Sie die URL der Benutzeroberfläche Ihres Geräts an, falls sie " +"nicht mit print_host identisch ist." + +msgid "API Key / Password" +msgstr "API-Schlüssel / Passwort" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca kann G-Code-Dateien auf einen Drucker-Host hochladen. Dieses " +"Feld sollte den API-Schlüssel oder das für die Authentifizierung " +"erforderliche Passwort enthalten." + +msgid "Name of the printer" +msgstr "Name des Druckers" + +msgid "HTTPS CA File" +msgstr "HTTPS CA-Datei" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Für HTTPS OctoPrint-Verbindungen kann eine eigene CA-Zertifikatsdatei im crt/" +"pem-Format hinterlegt werden. Wenn das Feld leer gelassen wird, wird das " +"Standard CA-Zertifikat des Betriebssystems genutzt." + +msgid "User" +msgstr "Benutzer" + +msgid "Password" +msgstr "Passwort" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "HTTPS-Zertifikatssperrprüfungen ignorieren" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ignorieren Sie HTTPS-Zertifikatssperrprüfungen im Fall von fehlenden oder " +"offline Verteilungspunkten. Sie können diese Option für selbst signierte " +"Zertifikate aktivieren, wenn die Verbindung fehlschlägt." + +msgid "Names of presets related to the physical printer" +msgstr "Namen der Profile, die sich auf den physischen Drucker beziehen" + +msgid "Authorization Type" +msgstr "Autorisierungstyp" + +msgid "API key" +msgstr "API-Schlüssel" + +msgid "HTTP digest" +msgstr "HTTP-Digest" + +msgid "Avoid crossing wall" +msgstr "Vermeiden von Wandüberquerungen" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Fahren Sie einen Umweg und vermeiden Sie es, über die Wand zu fahren, was zu " +"Tropfenbildung auf der Oberfläche führen kann" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Vermeide das Überqueren der Wand - Maximale Umleitungslänge" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Maximale Umleitstrecke zur Vermeidung einer Wandüberquerung: Der Drucker " +"fährt keinen Umweg, wenn die Umleitstrecke größer als dieser Wert ist. Die " +"Umleitstrecke kann entweder als absoluter Wert oder als Prozentsatz (z. B. " +"50 %) eines direkten Fahrwegs angegeben werden. Ein Wert von 0 deaktiviert " +"diese Funktion." + +msgid "mm or %" +msgstr "mm or %" + +msgid "Other layers" +msgstr "Andere Schichten" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Dies ist die Betttemperatur für Schichten mit Ausnahme der Ersten. Ein Wert " +"von 0 bedeutet, dass das Filament auf der kalten Druckplatte nicht " +"unterstützt wird." + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" +"Dies ist die Betttemperatur für Schichten mit Ausnahme der Ersten. Ein Wert " +"von 0 bedeutet, dass das Filament auf der strukturierten kalten Druckplatte " +"nicht unterstützt wird." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Dies ist die Betttemperatur für Schichten mit Ausnahme der Ersten. Ein Wert " +"von 0 bedeutet, dass das Filament auf der technischen Druckplatte nicht " +"unterstützt wird." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Dies ist die Betttemperatur für Schichten mit Ausnahme der Ersten. Ein Wert " +"von 0 bedeutet, dass das Filament auf der Hochtemperaturdruckplatte nicht " +"unterstützt wird." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Druckbetttemperatur nach der ersten Schicht. 0 bedeutet, dass das Filament " +"nicht auf der texturierten PEI-Platte unterstützt wird." + +msgid "Initial layer" +msgstr "Erste Schicht" + +msgid "Initial layer bed temperature" +msgstr "Druckbettemperatur für die erste Schicht" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Dies ist die Betttemperatur der ersten Schicht. Ein Wert von 0 bedeutet, " +"dass das Filament auf der kalten Druckplatte nicht unterstützt wird." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" +"Dies ist die Betttemperatur der ersten Schicht. Ein Wert von 0 bedeutet, " +"dass das Filament auf der strukturierten kalten Druckplatte nicht " +"unterstützt wird." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Dies ist die Betttemperatur der ersten Schicht. Ein Wert von 0 bedeutet, " +"dass das Filament auf der technischen Druckplatte nicht unterstützt wird." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Dies ist die Betttemperatur der ersten Schicht. Ein Wert von 0 bedeutet, " +"dass das Filament auf der Hochtemperatur-Druckplatte nicht unterstützt wird." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Druckbetttemperatur der ersten Schicht. 0 bedeutet, dass das Filament nicht " +"auf der texturierten PEI-Platte unterstützt wird." + +msgid "Bed types supported by the printer" +msgstr "Vom Drucker unterstützte Druckbettypen" + +msgid "Smooth Cool Plate" +msgstr "Glatte kalte Druckplatte" + +msgid "Engineering Plate" +msgstr "Technische Druckplatte" + +msgid "Smooth High Temp Plate" +msgstr "Glatte Hochtemperatur-Druckplatte" + +msgid "Textured Cool Plate" +msgstr "Strukturierte kalte Druckplatte" + +msgid "First layer print sequence" +msgstr "Erste Schicht Druckreihenfolge" + +msgid "Other layers print sequence" +msgstr "Andere Schichten Druckreihenfolge" + +msgid "The number of other layers print sequence" +msgstr "Die Anzahl der anderen Schichten Druckreihenfolge" + +msgid "Other layers filament sequence" +msgstr "Andere Schichten Filamentreihenfolge" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "" +"Dieser G-Code wird bei jedem Schichtwechsel vor dem anheben von Z eingefügt." + +msgid "Bottom shell layers" +msgstr "Untere Schalenschichten" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Dies ist die Anzahl der massiven Schichten der Unterschale, einschließlich " +"der ersten Schicht. Wenn die mit diesem Wert berechnete Dicke dünner ist als " +"die Dicke der unteren Schale, werden die unteren Schalenschichten erhöht." + +msgid "Bottom shell thickness" +msgstr "Dicke der unteren Schale" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"Die Anzahl der unteren festen Schichten wird beim Slicen erhöht, wenn die " +"untere Schalenstärke dünner als dieser Wert ist. Dies kann verhindern, dass " +"die Schale zu dünn wird, wenn eine geringe Schichthöhe verwendet wird. 0 " +"bedeutet, dass diese Einstellung deaktiviert ist und die Dicke der unteren " +"Schale absolut durch die unteren Schalenschichten bestimmt wird." + +msgid "Apply gap fill" +msgstr "Lückenfüllung anwenden" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"Schaltet die Lückenfüllung für die ausgewählten Oberflächen ein. Die " +"minimale Länge der Lücke, die gefüllt wird, kann über die Option \"winzige " +"Lücken herausfiltern\" unten gesteuert werden.\n" +"\n" +"Optionen:\n" +"1. Überall: Füllt Lücken in oberen, unteren und inneren massiven Oberflächen " +"aus\n" +"2. Obere und untere Oberflächen: Füllt Lücken nur in oberen und unteren " +"Oberflächen aus\n" +"3. Nirgendwo: Deaktiviert die Lückenfüllung\n" + +msgid "Everywhere" +msgstr "Überall" + +msgid "Top and bottom surfaces" +msgstr "Obere und untere Oberflächen" + +msgid "Nowhere" +msgstr "Nirgendwo" + +msgid "Force cooling for overhang and bridge" +msgstr "Zwangskühlung für Überhänge und Brücken" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Aktivieren Sie diese Option, um die Lüftergeschwindigkeit für Überhänge und " +"Brücken zu optimieren, um eine bessere Kühlung zu erreichen" + +msgid "Fan speed for overhang" +msgstr "Lüftergeschwindigkeit für Überhänge" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Erzwinge diese Lüftergeschwindigkeit beim Drucken von Brücken oder Wänden, " +"die einen großen Überhang aufweisen. Erzwungene Kühlung für Überhänge und " +"Brücken kann eine bessere Qualität für diese Abschnitte erzielen." + +msgid "Cooling overhang threshold" +msgstr "Schwellenwert für die Kühlung von Überhängen" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Erzwingt eine bestimmte Lüftergeschwindigkeit, wenn der Winkel des Überhangs " +"des gedruckten Teils diesen Wert überschreitet. Dies wird als Prozentsatz " +"ausgedrückt, der angibt, wie groß die Breite der Linie ohne Unterstützung " +"durch die untere Schicht ist. 0%% bedeutet, dass die Kühlung für die gesamte " +"Außenwand erzwungen wird, unabhängig vom Winkel des Überhangs." + +msgid "Bridge infill direction" +msgstr "Brückenfüllrichtung" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Überbrückungswinkel überschreiben. 0 bedeutet, dass der Überbrückungswinkel " +"automatisch berechnet wird. Andernfalls wird der angegebene Winkel für " +"externe Brücken verwendet. Verwenden Sie 180° für keinen Winkel." + +msgid "Bridge density" +msgstr "Brückendichte" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Die Standard-Einstellung für Density of external bridges ist 100%, was " +"bedeutet, dass die Brücke als massives Material gedruckt wird. Diese " +"Einstellung kann jedoch je nach Druckanforderungen und Objekt variieren und " +"angepasst werden." + +msgid "Bridge flow ratio" +msgstr "Brücken Flussrate" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Verringern Sie diesen Wert geringfügig (z. B. 0,9), um die Materialmenge für " +"die Brücke zu verringern und den Durchhang zu minimieren" + +msgid "Internal bridge flow ratio" +msgstr "Interne Brücken Flussrate" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"Dieser Wert bestimmt die Dicke der internen Brückenschicht. Dies ist die " +"erste Schicht über der dünnen Füllung. Verringern Sie diesen Wert leicht (z. " +"B. 0,9), um die Oberflächenqualität über der dünnen Füllung zu verbessern." + +msgid "Top surface flow ratio" +msgstr "Durchflussverhältnis obere Fläche" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Dieser Faktor beeinflusst die Menge des Materials für die obere Füllung. Sie " +"können ihn leicht verringern, um eine glatte Oberflächenbeschichtung zu " +"erhalten" + +msgid "Bottom surface flow ratio" +msgstr "Durchflussverhältnis untere Fläche" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" +"Dieser Faktor beeinflusst die Menge des Materials für die untere Füllung" + +msgid "Precise wall" +msgstr "Exakte Wand" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"Verbessern Sie die Schalenpräzision, indem Sie den Abstand der äußeren Wand " +"anpassen. Dies verbessert auch die Schichtkonsistenz.\n" +"Hinweis: Diese Einstellung wird nur wirksam, wenn die Wandsequenz auf Inner-" +"Outer konfiguriert ist." + +msgid "Only one wall on top surfaces" +msgstr "Nur eine Wand auf den oberen Flächen" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Verwenden Sie nur eine Wand auf der Oberfläche, um mehr Platz für das obere " +"Füllungsmuster zu schaffen" + +msgid "One wall threshold" +msgstr "Schwellenwert für eine Wand" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Wenn eine obere Oberfläche gedruckt werden muss und sie teilweise von einer " +"anderen Schicht bedeckt ist, wird sie nicht als obere Schicht betrachtet, " +"wenn ihre Breite unterhalb dieses Werts liegt. Dies kann nützlich sein, um " +"das Auslösen von 'einem Umfang oben' zu verhindern, wenn Oberflächen nur von " +"Umfängen bedeckt werden sollen. Dieser Wert kann in Millimetern oder als " +"Prozentsatz der Extrusionsbreite des Umfangs angegeben werden.\n" +"Warnung: Wenn aktiviert, können Artefakte entstehen, wenn Sie dünnere " +"Merkmale auf der nächsten Schicht haben, z. B. Buchstaben. Setzen Sie diesen " +"Wert auf 0, um diese Artefakte zu entfernen." + +msgid "Only one wall on first layer" +msgstr "Nur eine Wand in der ersten Schicht" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Verwenden Sie nur eine Wand in der ersten Schicht, um dem Muster der unteren " +"Füllung mehr Platz zu geben" + +msgid "Extra perimeters on overhangs" +msgstr "Extra Umfänge bei Überhängen" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Erstellen Sie zusätzliche Umfangspfade über steile Überhänge und Bereiche, " +"in denen Brücken nicht verankert werden können." + +msgid "Reverse on odd" +msgstr "Umkehren bei ungeraden Schichten" + +msgid "Overhang reversal" +msgstr "Überhangsumkehr" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"Extrudieren Sie Umfänge, die einen Überhang haben in die entgegen gesetzte " +"Richtung in ungeraden Schichten. Dieses abwechselnde Muster kann steile " +"Überhänge drastisch verbessern.\n" +"\n" +"Diese Einstellung kann auch dazu beitragen, das Verziehen von Teilen zu " +"verringern, da die Spannungen in den Teilwänden reduziert werden." + +msgid "Reverse only internal perimeters" +msgstr "Nur interne Umfänge umkehren" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"Wenden Sie die Logik der umgekehrten Umfänge nur auf interne Umfänge an.\n" +"\n" +"Diese Einstellung reduziert die Spannungen in den Teilen erheblich, da sie " +"jetzt in abwechselnden Richtungen verteilt werden. Dies sollte das Verziehen " +"von Teilen reduzieren und gleichzeitig die Qualität der Außenwand " +"sicherstellen. Diese Funktion kann für Materialien, die zum Verziehen neigen " +"wie ABS/ASA, und auch für elastische Filamente wie TPU und Silk PLA sehr " +"nützlich sein. Sie kann auch dazu beitragen, das Verziehen in schwebenden " +"Bereichen über Stützstrukturen zu reduzieren.\n" +"\n" +"Damit diese Einstellung am effektivsten ist, wird empfohlen, den " +"Umkehrschwellenwert auf 0 zu setzen, damit alle internen Wände in ungeraden " +"Schichten unabhängig von ihrem Überhangsgrad in abwechselnden Richtungen " +"gedruckt werden." + +msgid "Bridge counterbore holes" +msgstr "Brücken für Senkungen" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"Diese Option erstellt Brücken für Senkungen, die es ermöglichen, sie ohne " +"Unterstützung zu drucken. Die verfügbaren Modi sind:\n" +"1. Keine: Es wird keine Brücke erstellt.\n" +"2. Teilweise überbrückt: Nur ein Teil des nicht unterstützten Bereichs wird " +"überbrückt.\n" +"3. Opferschicht: Es wird eine vollständige opfernde Brückenschicht erstellt." + +msgid "Partially bridged" +msgstr "Teilweise überbrückt" + +msgid "Sacrificial layer" +msgstr "Opferschicht" + +msgid "Reverse threshold" +msgstr "Umkehrschwelle" + +msgid "Overhang reversal threshold" +msgstr "Schwellenwert für die Überhangsumkehr" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Anzahl der mm, die der Überhang haben muss, damit die Umkehr als nützlich " +"angesehen wird. Kann ein % der Umfangsbreite sein.\n" +"Wert 0 aktiviert die Umkehr in jeder ungeraden Schicht." + +msgid "Classic mode" +msgstr "Klassicher Modus" + +msgid "Enable this option to use classic mode" +msgstr "Diese Option aktivieren, um den klassischen Modus zu verwenden" + +msgid "Slow down for overhang" +msgstr "Verlangsamen bei Überhängen" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Aktivieren Sie diese Option, um den Druck für verschiedene Überhangsgrade zu " +"verlangsamen" + +msgid "Slow down for curled perimeters" +msgstr "Langsamer Druck für gekrümmte Umfänge" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Aktivieren Sie diese Option, um den Druck in Bereichen zu verlangsamen, in " +"denen möglicherweise gekrümmte Umfänge vorhanden sind" + +msgid "mm/s or %" +msgstr "mm/s o. %" + +msgid "External" +msgstr "Extern" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Geschwindigkeit für Brücken und vollständig überhängende Wände." + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "Intern" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Geschwindigkeit der internen Brücke. Wenn der Wert als Prozentsatz angegeben " +"ist, wird er basierend auf der Brückengeschwindigkeit berechnet. " +"Standardwert ist 150%." + +msgid "Brim width" +msgstr "Randbreite" + +msgid "Distance from model to the outermost brim line" +msgstr "Abstand vom Modell zur äußersten Randlinie" + +msgid "Brim type" +msgstr "Randtyp" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Dies steuert die Erstellung des Brims an der äußeren und/oder inneren " +"Seitevon Modellen. Auto bedeutet, dass die Breite des Brims automatisch " +"analysiert und berechnet wird." + +msgid "Brim-object gap" +msgstr "Lücke zwischen Rand und Objekt" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Eine Lücke zwischen der innersten Randlinie und dem Objekt kann das Abnehmen " +"des Randes erleichtern" + +msgid "Brim ears" +msgstr "Brim Ohren" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "Zeichne den Brim nur über die scharfen Kanten des Modells." + +msgid "Brim ear max angle" +msgstr "Maximaler Winkel für Brim-Ohren" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Höchster Winkel, bei dem ein Brim-Ohr erscheinen soll.\n" +"Wenn auf 0 gesetzt, wird kein Brim erstellt.\n" +"Wenn auf etwa 180 gesetzt, wird ein Brim auf allem außer geraden Abschnitten " +"erstellt." + +msgid "Brim ear detection radius" +msgstr "Radius für die Erkennung von Brim-Ohren" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"Die Geometrie wird vor der Erkennung von scharfen Winkeln reduziert. " +"DieserParameter gibt die minimale Länge der Abweichung für die Reduzierung " +"an.\n" +"0, um die Reduzierung zu deaktivieren." + +msgid "Compatible machine" +msgstr "Kompatible Maschine" + +msgid "upward compatible machine" +msgstr "Aufwärtskompatible Maschine" + +msgid "Compatible machine condition" +msgstr "Kompatibler Maschinenzustand" + +msgid "Compatible process profiles" +msgstr "Kompatible Prozessprofile" + +msgid "Compatible process profiles condition" +msgstr "Bedingung für kompatible Prozessprofile" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Druckreihenfolge, Schicht für Schicht oder Objekt für Objekt" + +msgid "By layer" +msgstr "Nach Ebene" + +msgid "By object" +msgstr "Nach Objekt" + +msgid "Intra-layer order" +msgstr "Intra-Schicht-Reihenfolge" + +msgid "Print order within a single layer" +msgstr "Druckreihenfolge innerhalb einer einzelnen Schicht" + +msgid "As object list" +msgstr "Als Objektliste" + +msgid "Slow printing down for better layer cooling" +msgstr "Verlangsamen Sie den Druck für eine bessere Schichtkühlung" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Aktivieren Sie diese Option, um die Druckgeschwindigkeit zu verlangsamen, so " +"dass die endgültige Schichtzeit nicht kürzer als die Mindestschichtzeit in " +"\"Maximale Lüftergeschwindigkeit\" ist, so dass die Schichten länger gekühlt " +"werden können. Dies kann die Druckqualität für Spitzen und kleine Details " +"verbessern." + +msgid "Normal printing" +msgstr "Normales Drucken" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"Die Standardbeschleunigung für den normalen Druck und den Eilgang nach der " +"ersten Schicht." + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Standard-Filamentprofil" + +msgid "Default filament profile when switch to this machine profile" +msgstr "Standard-Filamentprofil beim Wechsel zu diesem Maschinenprofil" + +msgid "Default process profile" +msgstr "Standard-Prozessprofil" + +msgid "Default process profile when switch to this machine profile" +msgstr "Standard-Prozessprofil beim Wechsel zu diesem Maschinenprofil" + +msgid "Activate air filtration" +msgstr "Aktiviere Luftfilterung" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" +"aktivieren für eine bessere Luftfilterung. G-Code Befehl: M106 P3 S(0-255)" + +msgid "Fan speed" +msgstr "Lüftergeschwindigkeit" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Geschwindigkeit des Abluftventilators während des Drucks. Diese Geschwindig-" +"keit überschreibt die Geschwindigkeit im Filament-Benutzerdefinierten G-Code" + +msgid "Speed of exhaust fan after printing completes" +msgstr "Geschwindigkeit des Abluftventilators nach Abschluss des Drucks" + +msgid "No cooling for the first" +msgstr "Keine Kühlung für die erste" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Schalte alle Lüfter für die ersten Schichten aus. Dies kann genutzt werden, " +"um die Betthaftung zu verbessern." + +msgid "Don't support bridges" +msgstr "Brücken nicht unterstützen" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Stützt den Brückenbereich nicht ab, was die die Menge der benötigten Stützen " +"reduziert. Brücken können in der Regel direkt ohne Stützen gedruckt werden, " +"wenn diese nicht sehr lang sind." + +msgid "Thick bridges" +msgstr "Dicke Brücken" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Wenn diese Option aktiviert ist, sind die Brücken zuverlässiger und können " +"größere Entfernungen überbrücken, sehen aber möglicherweise schlechter aus. " +"Wenn deaktiviert, sehen Brücken besser aus, sind aber nur für kürzere " +"Entfernungen zuverlässig." + +msgid "Thick internal bridges" +msgstr "Dicke interne Brücken" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"Wenn diese Option aktiviert ist, werden dicke interne Brücken verwendet. Es " +"wird normalerweise empfohlen, diese Funktion zu aktivieren. Wenn Sie jedoch " +"große Düsen verwenden, sollten Sie diese Funktion deaktivieren." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "Kleine interne Brücken nicht herausfiltern (experimentell)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"Diese Option kann dazu beitragen, das Polstern auf Oberflächen mit stark " +"geneigten oder gekrümmten Modellen zu reduzieren.\n" +"\n" +"Standardmäßig werden kleine interne Brücken herausgefiltert und das interne " +"massive Infill wird direkt über dem dünnen Infill gedruckt. Dies " +"funktioniert in den meisten Fällen gut und beschleunigt den Druck ohne zu " +"große Kompromisse bei der Qualität der Oberfläche.\n" +"\n" +"In stark geneigten oder gekrümmten Modellen, insbesondere bei zu geringer " +"Dichte des dünnen Infill, kann dies jedoch zu einer Krümmung des " +"ununterstützten massiven Infill führen, was zu Polstern führt.\n" +"\n" +"Wenn Sie diese Option aktivieren, wird die interne Brückenschicht über dem " +"leicht ununterstützten internen massiven Infill gedruckt. Die folgenden " +"Optionen steuern die Menge der Filterung, d.h. die Menge der erstellten " +"internen Brücken.\n" +"\n" +"Deaktiviert - Deaktiviert diese Option. Dies ist das Standardverhalten und " +"funktioniert in den meisten Fällen gut.\n" +"\n" +"Begrenzte Filterung - Erstellt interne Brücken auf stark geneigten Flächen, " +"vermeidet jedoch die Erstellung von unnötigen internen Brücken. Dies " +"funktioniert gut für die meisten schwierigen Modelle.\n" +"\n" +"Keine Filterung - Erstellt interne Brücken auf jedem potenziellen internen " +"Überhang. Diese Option ist für stark geneigte Oberflächenmodelle nützlich. " +"In den meisten Fällen werden jedoch zu viele unnötige Brücken erstellt." + +msgid "Disabled" +msgstr "Deaktiviert" + +msgid "Limited filtering" +msgstr "Begrenzte Filterung" + +msgid "No filtering" +msgstr "Keine Filterung" + +msgid "Max bridge length" +msgstr "Max Überbrückungslänge" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Maximale Länge der Brücken, die keine Unterstützung benötigen. Setzen Sie " +"den Wert auf 0, wenn alle Brücken unterstützt werden sollen und legen Sie " +"einen sehr großen Wert fest, wenn keine Brücken unterstützt werden sollen." + +msgid "End G-code" +msgstr "End G-Code" + +msgid "End G-code when finish the whole printing" +msgstr "End G-Code nach dem fertigstellen des Drucks hinzufügen." + +msgid "Between Object Gcode" +msgstr "Zwischen Objekt G-Code" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Füge G-Code zwischen den Objekten ein. Dieser Parameter wird nur wirksam, " +"wenn Sie Ihre Modelle Objekt für Objekt drucken." + +msgid "End G-code when finish the printing of this filament" +msgstr "End-G-Code hinzufügen, wenn der Druck dieses Filaments beenden ist." + +msgid "Ensure vertical shell thickness" +msgstr "Sicherstellung der vertikalen Wanddicke" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"Fügen Sie massives Infill in der Nähe von geneigten Oberflächen hinzu, um " +"die vertikale Wanddicke (obere + untere feste Schichten) zu garantieren\n" +"Keine: Kein massives Infill wird irgendwo hinzugefügt. Vorsicht: Verwenden " +"Sie diese Option vorsichtig, wenn Ihr Modell geneigte Oberflächen hat\n" +"Nur kritisch: Vermeiden Sie das Hinzufügen von massivem Infill für Wände\n" +"Moderat: Fügen Sie massives Infill nur für stark geneigte Oberflächen hinzu\n" +"Alle: Fügen Sie massives Infill für alle geeigneten geneigten Oberflächen " +"hinzu\n" +"Der Standardwert ist Alle." + +msgid "Critical Only" +msgstr "Nur kritisch" + +msgid "Moderate" +msgstr "Moderat" + +msgid "Top surface pattern" +msgstr "Muster der Oberfläche" + +msgid "Line pattern of top surface infill" +msgstr "Füllmuster der obersten Fläche" + +msgid "Concentric" +msgstr "Konzentrisch" + +msgid "Rectilinear" +msgstr "Geradlinig" + +msgid "Monotonic" +msgstr "Monotonisch" + +msgid "Monotonic line" +msgstr "Monotonische Linie" + +msgid "Aligned Rectilinear" +msgstr "Geradlinig ausgerichtet" + +msgid "Hilbert Curve" +msgstr "Hilbert-Kurve" + +msgid "Archimedean Chords" +msgstr "Archimedische Akkorde" + +msgid "Octagram Spiral" +msgstr "Oktagramm Spirale" + +msgid "Bottom surface pattern" +msgstr "Muster der unteren Fläche" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "Linienmuster der Bodenfüllung. Brückenfüllung nicht eingeschlossen" + +msgid "Internal solid infill pattern" +msgstr "Muster für das interne feste Füllmuster" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"Linienmuster des internen festen Füllmusters. Wenn die Erkennung von " +"schmalem internen festen Infill aktiviert ist, wird das konzentrische Muster " +"für den kleinen Bereich verwendet." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Linienbreite der Außenwand. Wenn als Prozentsatz angegeben, wird sie in " +"Bezug auf den Düsendurchmesser berechnet." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Geschwindigkeit der äußersten Wand, welche später sichtbar ist. Wird in der " +"Regel langsamer als die Innenwände gedruckt, um eine bessere Qualität zu " +"erzielen." + +msgid "Small perimeters" +msgstr "Feine Strukturen" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"Diese separate Einstellung beeinflusst die Geschwindigkeit von Umfängen mit " +"einem Radius <= small_perimeter_threshold (normalerweise Löcher). Wenn es " +"als Prozentsatz ausgedrückt wird (z.B. 80%), wird es auf die oben genannte " +"Einstellung der Geschwindigkeit der Außenwand berechnet. Setzen Sie es auf " +"Null für automatisch." + +msgid "Small perimeters threshold" +msgstr "Schwelle für kleine Strukturen" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"Dies legt die Schwelle für eine kleine Umfangslänge fest. Der Standardwert " +"für die Schwelle beträgt 0 mm." + +msgid "Walls printing order" +msgstr "Anordnung der Wände" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"Druckreihenfolge der inneren und äußeren Wände.\n" +"\n" +"Verwenden Sie Innen/Außen für die besten Überhänge. Dies liegt daran, dass " +"die überhängenden Wände beim Drucken an eine benachbarte Umfangsfläche " +"haften können. Diese Option führt jedoch zu einer geringfügig reduzierten " +"Oberflächenqualität, da die Außenwand durch das Zusammendrücken der " +"Innenwand verformt wird.\n" +"\n" +"Verwenden Sie Innen/Außen/Innen für die beste Oberflächenqualität und " +"dimensionale Genauigkeit, da die Außenwand ungestört von einer inneren Wand " +"gedruckt wird. Die Überhangsleistung wird jedoch verringert, da keine innere " +"Wand vorhanden ist, um die Außenwand zu drucken. Diese Option erfordert ein " +"Minimum von 3 Wänden, um wirksam zu sein, da die inneren Wände ab der 3. " +"Umfangsfläche zuerst gedruckt werden, dann die äußere Umfangsfläche und " +"schließlich die erste innere Umfangsfläche. Diese Option wird in den meisten " +"Fällen gegen die Option Außen/Innen empfohlen.\n" +"\n" +"Verwenden Sie Außen/Innen für die gleiche externe Wandqualität und " +"dimensionale Genauigkeit wie die Option Innen/Außen/Innen. Die Z-Nähte " +"werden jedoch weniger konsistent erscheinen, da die erste Extrusion einer " +"neuen Schicht auf einer sichtbaren Oberfläche beginnt.\n" +"\n" +" " + +msgid "Inner/Outer" +msgstr "Innen/Außen" + +msgid "Outer/Inner" +msgstr "Außen/Innen" + +msgid "Inner/Outer/Inner" +msgstr "Innenwand/Außenwand/Innenwand" + +msgid "Print infill first" +msgstr "Drucke zuerst die Füllung" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" +"Reihenfolge der Wand/Füllung. Wenn das Kontrollkästchen nicht aktiviert ist," +"werden die Wände zuerst gedruckt, was in den meisten Fällen am besten " +"funktioniert.\n" +"\n" +"Das Drucken der Füllung zuerst kann bei extremen Überhängen helfen, da die " +"Wände an die benachbarte Füllung haften. Die Füllung drückt jedoch leicht " +"gegen die gedruckten Wände, an denen sie befestigt ist, was zu einer " +"schlechteren Oberflächenqualität führt. Es kann auch dazu führen, dass die " +"Füllung durch die äußeren Oberflächen des Teils scheint." + +msgid "Wall loop direction" +msgstr "Druck-Richtung der Wand" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"Die Richtung, in der die Wand-Schleifen extrudiert werdenStandardmäßig " +"werden alle Wände gegen den Uhrzeigersinn extrudiert, es sei denn, die " +"Umkehrung bei ungeraden Schichten ist aktiviert. Wenn Sie dies auf eine " +"Option außer Auto setzen, wird die Wandrichtung unabhängig von der Umkehrung " +"bei ungeraden Schichten erzwungen.\n" +"Diese Option wird deaktiviert, wenn der Spiral-Vase-Modus aktiviert ist." + +msgid "Counter clockwise" +msgstr "Gegen den Uhrzeigersinn" + +msgid "Clockwise" +msgstr "Im Uhrzeigersinn" + +msgid "Height to rod" +msgstr "Höhe zur Führung" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Abstand zwischen der Düsenspitze und dem unteren Stab. Wird zur " +"Kollisionsvermeidung beim objektweisen Drucken verwendet." + +msgid "Height to lid" +msgstr "Höhe zum Deckel" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Abstand von der Düsenspitze zum Deckel. Dient zur Kollisionsvermeidung beim " +"objektweisen Drucken." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Sicherheitsradius um den Extruder: Dient zur Kollisionsvermeidung beim " +"objektweisen Drucken." + +msgid "Nozzle height" +msgstr "Düsenhöhe" + +msgid "The height of nozzle tip." +msgstr "Die Höhe der Düsenspitze." + +msgid "Bed mesh min" +msgstr "Bett Min Abtastbereich" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Diese Option legt den minimalen Punkt für den erlaubten Bett-Mesh-Bereich " +"fest. Aufgrund des XY-Offsets der Sonde sind die meisten Drucker nicht in " +"der Lage, das gesamte Bett abzutasten. Um sicherzustellen, dass der " +"Abtastpunkt nicht außerhalb des Bettbereichs liegt, sollten die minimalen " +"und maximalen Punkte des Bett-Mesh entsprechend festgelegt werden. " +"Snapmaker Orca stellt sicher, dass die Werte adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max diese Min-/Max-Punkte nicht überschreiten. Diese " +"Informationen können in der Regel vom Druckerhersteller bezogen werden. Die " +"Standardeinstellung ist (-99999, -99999), was bedeutet, dass es keine " +"Grenzen gibt und somit das Abtasten über das gesamte Bett ermöglicht wird." + +msgid "Bed mesh max" +msgstr "Bett Max Abtastbereich" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Diese Option legt den maximalen Punkt für den erlaubten Bett-Mesh-Bereich " +"fest. Aufgrund des XY-Offsets der Sonde sind die meisten Drucker nicht in " +"der Lage, das gesamte Bett abzutasten. Um sicherzustellen, dass der " +"Abtastpunkt nicht außerhalb des Bettbereichs liegt, sollten die minimalen " +"und maximalen Punkte des Bett-Mesh entsprechend festgelegt werden. " +"Snapmaker Orca stellt sicher, dass die Werte adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max diese Min-/Max-Punkte nicht überschreiten. Diese " +"Informationen können in der Regel vom Druckerhersteller bezogen werden. Die " +"Standardeinstellung ist (99999, 99999), was bedeutet, dass es keine Grenzen " +"gibt und somit das Abtasten über das gesamte Bett ermöglicht wird." + +msgid "Probe point distance" +msgstr "Abstand der Abtastpunkte" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"Diese Option legt den bevorzugten Abstand zwischen den Abtastpunkten (Raster-" +"Größe) für die X- und Y-Richtung fest, wobei der Standardwert für beide X " +"und Y 50 mm beträgt." + +msgid "Mesh margin" +msgstr "Abtastbereich" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" +"Diese Option bestimmt den zusätzlichen Abstand, um den der adaptive Bett-" +"Mesh-Bereich in den XY-Richtungen erweitert werden soll." + +msgid "Extruder Color" +msgstr "Extruder Farbe" + +msgid "Only used as a visual help on UI" +msgstr "Nur als visuelle Hilfe auf der UI verwendet" + +msgid "Extruder offset" +msgstr "Extruder-Versatz" + +msgid "Flow ratio" +msgstr "Flussverhältnis" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"Das Material kann sich nach dem Wechsel zwischen geschmolzenem und " +"kristallinem Zustand volumetrisch verändern. Mit dieser Einstellung werden " +"alle Extrusionsströme dieses Filaments im G-Code proportional geändert. Der " +"empfohlene Wertebereich liegt zwischen 0,95 und 1,05. Sie können diesen Wert " +"anpassen, um eine schöne flache Oberfläche zu erhalten, wenn es eine leichte " +"Über- oder Unterextrusion gibt." + +msgid "Enable pressure advance" +msgstr "Pressure advance aktivieren" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Wenn Pressure Advance aktiviert ist,werden Auto-Kalibrierungsergebnisse " +"überschrieben." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "Pressure advance(Klipper)AKA Linear advance Faktor(Marlin)" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"Standardmäßige Linienbreite, wenn andere Linienbreiten auf 0 gesetzt sind. " +"Wenn als Prozentsatz angegeben, wird sie in Bezug auf den Düsendurchmesser " +"berechnet." + +msgid "Keep fan always on" +msgstr "Lüfter ständig laufen lassen" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Wenn diese Einstellung aktiviert ist, wird der Teillüfter nie abgeschaltet " +"und läuft zumindest mit minimaler Geschwindigkeit, um die Häufigkeit des " +"Ein- und Ausschaltens zu reduzieren" + +msgid "Don't slow down outer walls" +msgstr "Äußere Wände nicht verlangsamen" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" +"Wenn diese Einstellung aktiviert ist, wird sichergestellt, dass die externen " +"Umfänge nicht verlangsamt werden, um die Mindestschichtzeit zu erreichen. " +"Dies ist besonders hilfreich in den folgenden Szenarien:\n" +"\n" +" 1. Um Änderungen im Glanz beim Drucken von glänzenden Filamenten zu " +"vermeiden\n" +"2. Um Änderungen in der Geschwindigkeit der äußeren Wand zu vermeiden, die " +"leichte Wandartefakte erzeugen können, die wie Z-Banding aussehen\n" +"3. Um das Drucken mit Geschwindigkeiten zu vermeiden, die VFAs (feine " +"Artefakte) an den äußeren Wänden verursachen\n" +"\n" + +msgid "Layer time" +msgstr "Schichtdauer" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"Der Bauteillüfter wird für Schichten aktiviert, deren geschätzte Zeit kürzer " +"als dieser Wert ist. Die Lüftergeschwindigkeit wird zwischen der minimalen " +"und maximalen Geschwindigkeit entsprechend der Druckzeit der Schicht " +"interpoliert." + +msgid "Default color" +msgstr "Standardfarbe" + +msgid "Default filament color" +msgstr "Standard-Filamentfarbe" + +msgid "Filament notes" +msgstr "Filamentnotizen" + +msgid "You can put your notes regarding the filament here." +msgstr "Sie können hier Ihre Notizen zum Filament eintragen." + +msgid "Required nozzle HRC" +msgstr "Erforderliche Düse HRC" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"Mindest-HRC der Düse, die zum Drucken des Filaments erforderlich ist. Ein " +"Wert von 0 bedeutet, dass die HRC der Düse nicht geprüft wird." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Diese Einstellung ist das Volumen des Filaments, das pro Sekunde geschmolzen " +"und extrudiert werden kann. Die Druckgeschwindigkeit wird durch die maximale " +"volumetrische Geschwindigkeit begrenzt, falls die Geschwindigkeit zu hoch " +"und unangemessen eingestellt ist. Dieser Wert kann nicht Null sein." + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Ladedauer des Filaments" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Zeit zum Laden des neuen Filaments, beim Wechseln des Filaments. Nur für " +"statistische Zwecke." + +msgid "Filament unload time" +msgstr "Entladezeit des Filaments" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Zeit zum Entladen des alten Filaments, beim Wechseln des Filaments. Nur für " +"statistische Zwecke." + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Der Filamentdurchmesser wird für die Berechnung der Extrusion im G-Code " +"verwendet, er ist also wichtig und sollte genau sein" + +msgid "Pellet flow coefficient" +msgstr "Pellet-Flusskoeffizient" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" +"Der Pellet-Flusskoeffizient wird empirisch abgeleitet und ermöglicht die " +"Volumenberechnung für Pellet-Drucker.\n" +"\n" +"Intern wird er in den Filamentdurchmesser umgerechnet. Alle anderen " +"Volumenberechnungen bleiben gleich.\n" +"\n" +"Filamentdurchmesser = sqrt( (4 * Pellet-Flusskoeffizient) / PI )" + +msgid "Shrinkage" +msgstr "Schrumpfung" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Gib das Schrumpfungsprozent ein, das der Filament nach dem Abkühlen haben " +"wird(94%, wenn du 94mm anstatt 100mm misst). Das Teil wird in der xy-Ebene " +"skaliert, um zukompensieren. Nur das Filament, das für den Umfang verwendet " +"wird, wird berücksichtigt.Stelle sicher, dass genügend Platz zwischen den " +"Objekten vorhanden ist, da diese Kompensation nach den Überprüfungen " +"durchgeführt wird." + +msgid "Loading speed" +msgstr "Lade-Geschwindigkeit" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Lade-Geschwindigkeit für das Filament im Wischturm." + +msgid "Loading speed at the start" +msgstr "Lade-Geschwindigkeit am Anfang" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Geschwindigkeit, die am Anfang der Lade-Phase verwendet wird." + +msgid "Unloading speed" +msgstr "Entlade-Geschwindigkeit" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Geschwindigkeit, die zum Entladen des Filaments im Wischturm verwendet wird " +"(beeinflusst nicht den Anfang des Entladens direkt nach dem Rammen)." + +msgid "Unloading speed at the start" +msgstr "Entlade-Geschwindigkeit am Anfang" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Geschwindigkeit, die zum Entladen der Spitze des Filaments unmittelbar nach " +"dem Rammen verwendet wird." + +msgid "Delay after unloading" +msgstr "Verzögerung nach dem Entladen" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Wartezeit nach dem Entladen des Filaments. Kann helfen, zuverlässige " +"Werkzeugwechsel mit flexiblen Materialien zu erhalten, die möglicherweise " +"mehr Zeit benötigen, um auf die ursprünglichen Abmessungen zu schrumpfen." + +msgid "Number of cooling moves" +msgstr "Anzahl der Kühlbewegungen" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"Das Filament wird gekühlt, indem es in den Kühlrohren hin und her bewegt " +"wird. Geben Sie die gewünschte Anzahl dieser Bewegungen an." + +msgid "Speed of the first cooling move" +msgstr "Geschwindigkeit der ersten Kühlbewegung" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "Kühlbewegungen beschleunigen allmählich ab dieser Geschwindigkeit." + +msgid "Minimal purge on wipe tower" +msgstr "Minimale Wischmenge im Wischturm" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"Nach einem Werkzeugwechsel ist die genaue Position des neu geladenen " +"Filaments im Düsenkopf möglicherweise unbekannt und der Filamentdruck ist " +"wahrscheinlich noch nicht stabil. Bevor Snapmaker Orca den Druckkopf in ein " +"Infill oder ein opferbares Objekt spült, wird immer diese Menge Material in " +"den Wipe-Turm gefüllt, um zuverlässige nachfolgende Infill- oder opferbare " +"Objekt-Extrusionen zu erzeugen. So wird sichergestellt, dass das Drucken " +"nicht gestört wird und die Qualität des Drucks erhalten bleibt." + +msgid "Speed of the last cooling move" +msgstr "Geschwindigkeit der letzten Kühlbewegung" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "Kühlbewegungen beschleunigen allmählich auf diese Geschwindigkeit." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Zeit für die Drucker-Firmware (oder die Multi Material Unit 2.0), um ein " +"neues Filament während eines Werkzeugwechsels zu laden (wenn der T-Code " +"ausgeführt wird). Diese Zeit wird zur Gesamt-Druckzeit vom G-Code-Zeit-" +"Schätzer hinzugefügt." + +msgid "Ramming parameters" +msgstr "Ramming-Parameter" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Dieser String wird von RammingDialog bearbeitet und enthält ramming-" +"spezifische Parameter." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Zeit für die Drucker-Firmware (oder die Multi Material Unit 2.0), um ein " +"Filament während eines Werkzeugwechsels zu entladen (wenn der T-Code " +"ausgeführt wird). Diese Zeit wird zur Gesamt-Druckzeit vom G-Code-Zeit-" +"Schätzer hinzugefügt." + +msgid "Enable ramming for multitool setups" +msgstr "Ermöglicht das Rammen für Multitool-Setups" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Rammen beim Einsatz eines Multitool-Druckers (d.h. wenn die Option 'Single " +"Extruder Multimaterial' in den Druckereinstellungen nicht aktiviert ist). " +"Wenn diese Option aktiviert ist, wird eine kleine Menge Filament kurz vor " +"dem Werkzeugwechsel schnell auf den Wischturm extrudiert. Diese Option wird " +"nur verwendet, wenn der Wischturm aktiviert ist." + +msgid "Multitool ramming volume" +msgstr "Multitool-Ramming-Volumen" + +msgid "The volume to be rammed before the toolchange." +msgstr "Das Volumen, das vor dem Werkzeugwechsel gerammt werden soll." + +msgid "Multitool ramming flow" +msgstr "Multitool-Ramming-Fluss" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "" +"Fluss, der zum Rammen des Filaments vor dem Werkzeugwechsel verwendet wird." + +msgid "Density" +msgstr "Dichte" + +msgid "Filament density. For statistics only" +msgstr "Filamentdichte. Nur für statistische Zwecke." + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "Filament-Materialtyp" + +msgid "Soluble material" +msgstr "Lösliches Material" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"Lösliches Material wird in der Regel für den Druck von Stützen und Stütz-" +"Schnittstellen verwendet" + +msgid "Support material" +msgstr "Stützmaterial" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"Stützmaterial wird üblicherweise zum Drucken von Stützen und Stütz-" +"Schnittstellen verwendet." + +msgid "Softening temperature" +msgstr "Erweichungstemperatur" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"Das Material wird bei dieser Temperatur weich, daher wird dringend " +"empfohlen, die vordere Tür zu öffnen und/oder das obere Glas zu entfernen, " +"wenn die Betttemperatur gleich oder größer als diese Temperatur ist, um " +"Verstopfungen zu vermeiden." + +msgid "Price" +msgstr "Preis" + +msgid "Filament price. For statistics only" +msgstr "Filamentpreis. Nur für statistische Zwecke." + +msgid "money/kg" +msgstr "Kosten/kg" + +msgid "Vendor" +msgstr "Hersteller" + +msgid "Vendor of filament. For show only" +msgstr "Hersteller des Filaments. Nur zur Anzeige." + +msgid "(Undefined)" +msgstr "(undefiniert)" + +msgid "Sparse infill direction" +msgstr "Richtung des einfachereren Fülling" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "Winkel des Füllmusters, das die Richtung der Linien bestimmt." + +msgid "Solid infill direction" +msgstr "Richtung des massiven Füllmusters" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Winkel des massiven Füllmusters, der die Start- oder Hauptrichtung der Linie " +"steuert." + +msgid "Rotate solid infill direction" +msgstr "Massives Füllmuster drehen" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "Drehe das massive Füllmuster um 90° für jede Schicht." + +msgid "Sparse infill density" +msgstr "Fülldichte" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"Dichte der internen Füllung, 100% verwandelt alle interne Füllung in massive " +"Füllung und das interne massive Füllmuster wird verwendet." + +msgid "Sparse infill pattern" +msgstr "Füllmuster" + +msgid "Line pattern for internal sparse infill" +msgstr "Linienmuster für innere Füllung." + +msgid "Grid" +msgstr "Gitternetz" + +msgid "Line" +msgstr "Linie" + +msgid "Cubic" +msgstr "Kubisch" + +msgid "Tri-hexagon" +msgstr "Tri-Hexagon" + +msgid "Gyroid" +msgstr "Gyroid" + +msgid "Honeycomb" +msgstr "Bienenwabe" + +msgid "Adaptive Cubic" +msgstr "Adaptiv kubisch" + +msgid "3D Honeycomb" +msgstr "3D-Waben" + +msgid "Support Cubic" +msgstr "Kubisch Stützen" + +msgid "Lightning" +msgstr "Blitz" + +msgid "Cross Hatch" +msgstr "Kreuzschraffur" + +msgid "Sparse infill anchor length" +msgstr "Länge des Infill-Ankers" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"Verbindet eine Infill-Linie mit einem kurzen Segment eines zusätzlichen " +"Perimeters mit einem internen Perimeter. Wenn sie als Prozentsatz " +"ausgedrückt wird (Beispiel: 15%), wird sie über die Breite der Infill-" +"Extrusion berechnet. Snapmaker Orca versucht, zwei nahe beieinander liegende " +"Infill-Linien mit einem kurzen Perimetersegment zu verbinden. Wenn kein " +"solches Perimetersegment gefunden wird, das kürzer als infill_anchor_max " +"ist, wird die Infill-Linie nur an einer Seite mit einem Perimetersegment " +"verbunden und die Länge des genommenen Perimetersegments ist auf diesen " +"Parameter begrenzt, aber nicht länger als anchor_length_max. Setzen Sie " +"diesen Parameter auf Null, um die Verankerung von Perimetern zu " +"deaktivieren, die mit einer einzelnen Infill-Linie verbunden sind." + +msgid "0 (no open anchors)" +msgstr "0 (keine offenen Anker)" + +msgid "1000 (unlimited)" +msgstr "1000 (unbegrenzt)" + +msgid "Maximum length of the infill anchor" +msgstr "Maximale Länge des Infill-Ankers" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"Verbindet eine Infill-Linie mit einem kurzen Segment eines zusätzlichen " +"Perimeters mit einem internen Perimeter. Wenn sie als Prozentsatz " +"ausgedrückt wird (Beispiel: 15%), wird sie über die Breite der Infill-" +"Extrusion berechnet. Snapmaker Orca versucht, zwei nahe beieinander liegende " +"Infill-Linien mit einem kurzen Perimetersegment zu verbinden. Wenn kein " +"solches Perimetersegment gefunden wird, das kürzer als dieser Parameter ist, " +"wird die Infill-Linie nur an einer Seite mit einem Perimetersegment " +"verbunden und die Länge des genommenen Perimetersegments wird auf " +"infill_anchor begrenzt, aber nicht länger als dieser Parameter. Setzen Sie " +"diesen Parameter auf Null, um die Verankerung zu deaktivieren." + +msgid "0 (Simple connect)" +msgstr "0 (Einfache Verbindung)" + +msgid "Acceleration of outer walls" +msgstr "Beschleunigung Außenwände" + +msgid "Acceleration of inner walls" +msgstr "Beschleunigung Innenwände" + +msgid "Acceleration of travel moves" +msgstr "Beschleunigung Bewegung" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Dies ist die Beschleunigung der Füllung von der obersten Schicht. Die " +"Verwendung eines niedrigeren Werts kann die Qualität der Oberfläche " +"verbessern." + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Beschleunigung der Außenwand: Die Verwendung eines niedrigeren Wertes kann " +"die Qualität verbessern." + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Beschleunigung der Brücken. Wenn der Wert als Prozentwert angegeben wird (z." +"B. 50%), wird er auf der Grundlage der Beschleunigung der Außenwand " +"berechnet." + +msgid "mm/s² or %" +msgstr "mm/s² or %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Beschleunigung der spärlichen Innenfüllung. Wenn der Wert als Prozentwert " +"angegeben wird (z.B. 100%), wird er auf der Grundlage der " +"Standardbeschleunigung berechnet." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"Beschleunigung des internen massiven Innenfülls. Wenn der Wert als " +"Prozentwert angegeben wird (z.B. 100%), wird er auf der Grundlage der " +"Standardbeschleunigung berechnet." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Beschleunigung der ersten Schicht. Die Verwendung eines niedrigeren Wertes " +"kann die Druckbetthaftung verbessern" + +msgid "Enable accel_to_decel" +msgstr "Beschleunigung zu Verzögerung einschalten" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "" +"Die maximale Beschleunigung und Verzögerung von Klipper wird automatisch " +"angepasst" + +msgid "accel_to_decel" +msgstr "Beschleunigung zu Verzögerung" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" +"Klipper's max_accel_to_decel wird auf diesen %% der Beschleunigung verändert" + +msgid "Jerk of outer walls" +msgstr "Ruckwert Außenwand" + +msgid "Jerk of inner walls" +msgstr "Ruckwert Innenwand" + +msgid "Jerk for top surface" +msgstr "Ruckwert Oberseiten" + +msgid "Jerk for infill" +msgstr "Ruckwert Füllung" + +msgid "Jerk for initial layer" +msgstr "Ruckwert erste Schicht" + +msgid "Jerk for travel" +msgstr "Jerk for Bewegung" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Linienbreite der ersten Schicht. Wenn als Prozentsatz angegeben, wird sie in " +"Bezug auf den Düsendurchmesser berechnet." + +msgid "Initial layer height" +msgstr "Höhe der ersten Schicht" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Höhe der ersten Schicht. Eine etwas dickere erste Schicht kann die Haftung " +"der Druckplatte verbessern" + +msgid "Speed of initial layer except the solid infill part" +msgstr "Geschwindigkeit der ersten Schicht mit Ausnahme der massiven Füllung." + +msgid "Initial layer infill" +msgstr "Füllung" + +msgid "Speed of solid infill part of initial layer" +msgstr "Geschwindigkeit des massiven Füllung der ersten Schicht." + +msgid "Initial layer travel speed" +msgstr "Bewegung" + +msgid "Travel speed of initial layer" +msgstr "Bewegungsgeschwindigkeit der ersten Schicht" + +msgid "Number of slow layers" +msgstr "Anzahl der lansamen Schichten" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"Die ersten paar Schichten werden langsamer als normal gedruckt. Die " +"Geschwindigkeitwird allmählich linear über die angegebene Anzahl von " +"Schichten erhöht." + +msgid "Initial layer nozzle temperature" +msgstr "Düsentemperatur für die erste Schicht" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" +"Düsentemperatur zum Drucken der ersten Schicht bei Verwendung dieses " +"Filaments" + +msgid "Full fan speed at layer" +msgstr "Volle Lüfterdrehzahl ab Schicht" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"Die Lüftergeschwindigkeit wird linear von Null bei der Schicht" +"\"close_fan_the_first_x_layers\" auf das Maximum bei der Schicht " +"\"full_fan_speed_layer\" erhöht. \"full_fan_speed_layer\" wird ignoriert, " +"wenn es niedriger ist als \"close_fan_the_first_x_layers\",in diesem Fall " +"läuft der Lüfter bei Schicht \"close_fan_the_first_x_layers\"+ 1 mit maximal " +"zulässiger Geschwindigkeit." + +msgid "layer" +msgstr "Schicht" + +msgid "Support interface fan speed" +msgstr "Stützstruktur-Schnittstelle" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"Diese Lüftergeschwindigkeit wird während der Stützstruktur verwendet.\n" +"Setzen Sie es auf -1, um dies zu deaktivieren.\n" +"Kann nur durch disable_fan_first_layers außer Kraft gesetzt werden." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Diese Einstellung bewirkt, dass der Werkzeugkopf beim Drucken von Wänden " +"zufällig zittert, so dass die Oberfläche ein raues, strukturiertes Aussehen " +"erhält. Diese Einstellung steuert die Fuzzy-Position." + +msgid "Contour" +msgstr "Kontur" + +msgid "Contour and hole" +msgstr "Kontur und Loch" + +msgid "All walls" +msgstr "Alle Wände" + +msgid "Fuzzy skin thickness" +msgstr "Fuzzy Skin Stärke" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"Die Breite, innerhalb der gezittert werden soll. Sie sollte unter der Breite " +"der Außenwandlinie liegen." + +msgid "Fuzzy skin point distance" +msgstr "Fuzzy Skin Punktabstand" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"Der durchschnittliche Abstand zwischen den auf jedem Linienabschnitt " +"eingeführten Zufallspunkten" + +msgid "Apply fuzzy skin to first layer" +msgstr "Fuzzy Skin auf die erste Schicht anwenden" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "Ob Fuzzy Skin auf die erste Schicht angewendet werden soll" + +msgid "Filter out tiny gaps" +msgstr "Filtert winzige Lücken aus" + +msgid "Layers and Perimeters" +msgstr "Schichten und Perimeter" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "Filtert Lücken aus, die kleiner als der angegebene Schwellenwert sind" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Geschwindigkeit für die Lückenfüllung. Lücken haben normalerweise eine " +"unregelmäßige Linienbreite und sollten deshalb langsamer gedruckt werden." + +msgid "Precise Z height" +msgstr "Präzise Z-Höhe" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Aktivieren Sie diese Option, um die genaue Z-Höhe des Objekts nach dem " +"Slicen zu erhalten. Es wird die genaue Objekthöhe durch Feinabstimmung der " +"Schichthöhen der letzten Schichten erhalten. Beachten Sie, dass dies ein " +"experimenteller Parameter ist." + +msgid "Arc fitting" +msgstr "Als Bogen drucken" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" +"Aktivieren Sie diese Option, um eine G-Code-Datei zu erhalten, die G2- und " +"G3-Bewegungen enthält. Die Passungstoleranz entspricht der Auflösung. \n" +"\n" +"Hinweis: Für Klipper-Maschinen wird empfohlen, diese Option zu deaktivieren. " +"Klipper profitiert nicht von Bogenbefehlen, da diese von der Firmware wieder " +"in Linienabschnitte aufgeteilt werden. Dies führt zu einer Verringerung der " +"Oberflächenqualität, da Linienabschnitte vom Slicer in Bögen umgewandelt und " +"dann von der Firmware wieder in Linienabschnitte umgewandelt werden." + +msgid "Add line number" +msgstr "Liniennummer hinzufügen" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Aktivieren Sie diese Option, um die Zeilennummer (Nx) am Anfang jeder G-Code-" +"Zeile einzufügen" + +msgid "Scan first layer" +msgstr "Erste Schicht scannen" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Aktivieren Sie diese Option, damit die Kamera des Druckers die Qualität der " +"ersten Schicht überprüft." + +msgid "Nozzle type" +msgstr "Düsentyp" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"Das metallische Material der Düse. Dies bestimmt die Abriebfestigkeit der " +"Düse und welche Art von Filamenten gedruckt werden kann." + +msgid "Undefine" +msgstr "Undefiniert" + +msgid "Hardened steel" +msgstr "Gehärteter Stahl" + +msgid "Stainless steel" +msgstr "Edelstahl" + +msgid "Brass" +msgstr "Messing" + +msgid "Nozzle HRC" +msgstr "Düse HRC" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"Die Härte der Düse. Null bedeutet, dass die Düsenhärte beim Slicen nicht " +"geprüft wird." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Druckerstruktur" + +msgid "The physical arrangement and components of a printing device" +msgstr "Die physische Anordnung und Komponenten eines Druckers" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "Beste Objektposition" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Beste automatische Positionierung im Bereich [0,1] bezogen auf das Bett." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"Aktivieren Sie diese Option, wenn der Drucker einen zusätzlichen Lüfter für " +"die Kühlung von Teilen hat. G-Code-Befehl: M106 P2 S(0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Starte den Lüfter diese Anzahl an Sekunden früher. (du kannst auch Milli-" +"Sekunden verwenden). Dabei wird eine unendliche Beschleunigung angenommenund " +"nur G1- und G0-Bewegungen berücksichtigt (Kurvenanpassung wird nicht " +"unterstützt).Fan-Befehle in benutzerdefinierten G-Codes werden nicht " +"verschoben (sie wirken wie eine Art 'Barriere').Fan-Befehle werden nicht in " +"den Start-G-Code verschoben, wenn nur benutzerdefinierterStart-G-Code " +"aktiviert ist. Verwende 0, um den Lüfter zu deaktivieren." + +msgid "Only overhangs" +msgstr "Nur an Überhängen" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "Berücksichtigt nur die Verzögerung für die Kühlung von Überhängen." + +msgid "Fan kick-start time" +msgstr "Lüfter Anlaufzeit" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Gib für die angegebene Zeit einen Befehl zur maximalen Lüftergeschwindigkeit " +"aus, bevor die Geschwindigkeit auf die Zielgeschwindigkeit reduziert wird, " +"um den Kühlventilator anzuschubsen.Dies ist bei Lüftern nützlich, bei denen " +"eine niedrige PWM-Leistung möglicherweise nicht ausreicht, um den Lüfter vom " +"Stillstand aus zu starten oder um den Lüfter schneller auf Touren zu bringen." +"Setze den Wert auf 0, um diese Funktion zu deaktivieren." + +msgid "Time cost" +msgstr "Druckzeit Kosten" + +msgid "The printer cost per hour" +msgstr "Die Druckkosten pro Stunde" + +msgid "money/h" +msgstr "Kosten/h" + +msgid "Support control chamber temperature" +msgstr "Druckkammer-Temperatursteuerung" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Diese Option ist aktiviert, wenn der Drucker die Temperatur der Druckkammer " +"steuern kann\n" +"G-Code-Befehl: M141 S(0-255)" + +msgid "Support air filtration" +msgstr "Luftfilterung unterstützen" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Aktivieren Sie diese Option, wenn der Drucker die Luft filtern kann\n" +"G-Code-Befehl: M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "G-Code Typ" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Mit welcher Art von G-Code ist der Drucker kompatibel" + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "Pellet-Modifizierter Drucker" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "aktivieren Sie diese Option, wenn Ihr Drucker Pellets anstelle von Filamenten verwendet" + +msgid "Support multi bed types" +msgstr "Unterstützung mehrerer Betttypen" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" +"Aktivieren Sie diese Option, wenn Sie mehrere Betttypen verwenden möchten" + +msgid "Label objects" +msgstr "Objekte beschriften" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"Aktivieren Sie diese Option, um Kommentare in den G-Code einzufügen, die die " +"Druckbewegungen mit dem zugehörigen Objekt kennzeichnen. Dies ist nützlich " +"für das Octoprint CancelObject-Plugin. Diese Einstellung ist NICHT " +"kompatibel mit der Einzeldruckerdüsen-Mehrmaterial-Konfiguration und mit der " +"Option zum Wischen in das Objekt / in den Innenfüllbereich." + +msgid "Exclude objects" +msgstr "Objekte ausschließen" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "" +"Aktivieren Sie diese Option, um den Befehl EXCLUDE OBJECT im G-Code " +"hinzuzufügen." + +msgid "Verbose G-code" +msgstr "ausführlicher G-Code" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Aktivieren Sie diese Option, um eine kommentierte G-Code-Datei zu erhalten, " +"in der jede Zeile durch einen beschreibenden Text erklärt wird. Wenn Sie von " +"der SD-Karte drucken, kann das zusätzliche Gewicht der Datei dazu führen, " +"dass Ihre Firmware langsamer wird." + +msgid "Infill combination" +msgstr "Kombinieren der Füllung" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Kombinieren Sie automatisch die Füllung von mehreren Schichten, um diese " +"gemeinsam zu drucken und Zeit zu sparen. Die Wand wird weiterhin mit der " +"ursprünglichen Schichthöhe gedruckt." + +msgid "Filament to print internal sparse infill." +msgstr "Filament für den Druck der inneren Füllung." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Linienbreite des internen geringen Füllmusters. Wenn als Prozentsatz " +"angegeben, wird sie in Bezug auf den Düsendurchmesser berechnet." + +msgid "Infill/Wall overlap" +msgstr "Überlappung Füllung/Wand" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" +"Die Füllfläche wird leicht vergrößert, um mit der Wand zu überlappen und " +"eine bessere Haftung zu gewährleisten. Der Prozentwert bezieht sich auf die " +"Linienbreite der spärlichen Füllung. Setzen Sie diesen Wert auf ~10-15%, um " +"eine mögliche Überextrusion und Materialansammlung zu minimieren, die zu " +"rauen Oberflächen führen kann." + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "Überlappung des oberen/unteren massiven Füllung/Wand" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"Der obere massive Füllbereich wird leicht vergrößert, um mit der Wand zu " +"überlappen und eine bessere Haftung zu gewährleisten und das Auftreten von " +"Pinholes zu minimieren, wo die obere Füllung auf die Wände trifft. Ein Wert " +"von 25-30% ist ein guter Ausgangspunkt, um das Auftreten von Pinholes zu " +"minimieren. Der Prozentwert bezieht sich auf die Linienbreite der spärlichen " +"Füllung." + +msgid "Speed of internal sparse infill" +msgstr "Geschwindigkeit der inneren Füllung" + +msgid "Interface shells" +msgstr "Support-Verbindung" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Erzwingen der Erstellung von festen Hüllen zwischen benachbarten Materialien/" +"Volumina“ ist eine Funktion, die bei Drucken mit mehreren Extrudern " +"verwendet werden kann, insbesondere bei Drucken mit durchsichtigen " +"Materialien oder manuell lösbaren Unterstützungsmaterialien" + +msgid "Maximum width of a segmented region" +msgstr "Maximale Breite eines segmentierten Bereichs" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Maximale Breite eines segmentierten Bereichs. Null deaktiviert diese " +"Funktion." + +msgid "Interlocking depth of a segmented region" +msgstr "Interlock-Struktur-Tiefe eines segmentierten Bereichs" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Interlock-Struktur-Tiefe eines segmentierten Bereichs. Null deaktiviert diese " +"Funktion." + +msgid "Use beam interlocking" +msgstr "Verwende Interlock-Strukturen" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" +"Erzeugen Sie eine verzahnte Struktur an den Stellen, an denen sich " +"unterschiedliche Filamente berühren. Dies verbessert die Haftung zwischen den " +"Filamenten, insbesondere bei Modellen, die aus verschiedenen Materialien " +"gedruckt werden." + +msgid "Interlocking beam width" +msgstr "Interlock-Struktur-Breite" + +msgid "The width of the interlocking structure beams." +msgstr "Die Breite der Interlock-Strukturen." + +msgid "Interlocking direction" +msgstr "Interlock-Struktur Ausrichtung" + +msgid "Orientation of interlock beams." +msgstr "Ausrichtung der Interlock-Strukturen." + +msgid "Interlocking beam layers" +msgstr "Interlock-Struktur Schichten" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" +"Die Höhe der Balken der Interlock-Strukture, gemessen in Anzahl von " +"Schichten. Weniger Schichten sind stärker, aber anfälliger für Fehler." + +msgid "Interlocking depth" +msgstr "Interlock-Struktur Tiefe" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" +"Der Abstand von der Grenze zwischen den Filamenten, um die Interlock-Strukturen-" +"zu generieren, gemessen in Zellen. Zu wenige Zellen führen zu einer schlechten " +"Haftung." + +msgid "Interlocking boundary avoidance" +msgstr "Vermeidung von Interlock-Strukturgrenzen" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" +"Der Abstand von der Außenseite eines Modells, an dem keine Interlock-Strukturen " +"generiert werden, gemessen in Zellen." + +msgid "Ironing Type" +msgstr "Glättungsmethode" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"Beim Glätten wird ein kleiner Fluss verwendet, um die gleiche Höhe der " +"Oberfläche erneut zu bedrucken und die Oberfläche glatter zu machen. Diese " +"Einstellung steuert, welche Schicht geglättet wird" + +msgid "No ironing" +msgstr "Kein Glätten" + +msgid "Top surfaces" +msgstr "Obere Oberflächen" + +msgid "Topmost surface" +msgstr "Oberste Oberfläche" + +msgid "All solid layer" +msgstr "Alle soliden Schichten" + +msgid "Ironing Pattern" +msgstr "Bügelmuster" + +msgid "The pattern that will be used when ironing" +msgstr "Das Muster, das beim Glätten verwendet wird" + +msgid "Ironing flow" +msgstr "Materialmenge" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"Die Materialmenge, die während des Glättens extrudiert wird. Dies ist " +"relativ zum Fluss der normalen Schichthöhe. Ein zu hoher Wert führt zu einer " +"Überextrusion der Oberfläche." + +msgid "Ironing line spacing" +msgstr "Abstand der Glättlinien" + +msgid "The distance between the lines of ironing" +msgstr "Der Abstand zwischen den Linien beim Glätten" + +msgid "Ironing speed" +msgstr "Geschwindigkeit beim Glätten" + +msgid "Print speed of ironing lines" +msgstr "Druckgeschwindigkeit der Glättlinien" + +msgid "Ironing angle" +msgstr "Glättwinkel" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"Der Winkel, in dem das Glätten durchgeführt wird. Eine negative Zahl " +"deaktiviert diese Funktion und verwendet die Standardmethode." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"Dieser G-Code wird bei jedem Schichtwechsel nach dem anheben von Z eingefügt." + +msgid "Supports silent mode" +msgstr "Unterstützt den Leise-Modus" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Ob das Gerät den Leisen-Modus unterstützt, bei dem das Gerät eine geringere " +"Beschleunigung zum Drucken verwendet" + +msgid "Emit limits to G-code" +msgstr "Werte im G-Code ausgeben" + +msgid "Machine limits" +msgstr "Maschinengrenzen" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"Wenn diese Option aktiviert ist, werden die Maschinengrenzen in die G-Code-" +"Datei ausgegeben.\n" +"Diese Option wird ignoriert, wenn der G-Code-Typ auf Klipper eingestellt ist." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Dieser G-Code wird für die Druckpause verwendet. Benutzer können den Pausen-" +"G-Code in dem G-Code-Viewer einfügen." + +msgid "This G-code will be used as a custom code" +msgstr "Dieser G-Code wird als benutzerdefinierter Code verwendet" + +msgid "Small area flow compensation (beta)" +msgstr "Kleine Flächen-Flusskompensation (Beta)" + +msgid "Enable flow compensation for small infill areas" +msgstr "Flusskompensation für kleine Füllbereiche aktivieren" + +msgid "Flow Compensation Model" +msgstr "Flusskompensationsmodell" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"Flusskompensationsmodell, das verwendet wird, um den Fluss für kleine " +"Füllbereiche anzupassen. Das Modell wird als durch Komma getrenntes Paar von " +"Werten für die Extrusionslänge und die Flusskorrekturfaktoren, eine pro " +"Zeile, im folgenden Format ausgedrückt: \"1.234,5.678\"" + +msgid "Maximum speed X" +msgstr "Maximale Geschwindigkeit X" + +msgid "Maximum speed Y" +msgstr "Maximale Geschwindigkeit Y" + +msgid "Maximum speed Z" +msgstr "Maximale Geschwindigkeit Z" + +msgid "Maximum speed E" +msgstr "Maximale Geschwindigkeit E" + +msgid "Maximum X speed" +msgstr "Maximale Geschwindigkeit X" + +msgid "Maximum Y speed" +msgstr "Maximale Geschwindigkeit Y" + +msgid "Maximum Z speed" +msgstr "Maximale Geschwindigkeit Z" + +msgid "Maximum E speed" +msgstr "Maximale Geschwindigkeit E" + +msgid "Maximum acceleration X" +msgstr "Maximale Beschleunigung X" + +msgid "Maximum acceleration Y" +msgstr "Maximale Beschleunigung Y" + +msgid "Maximum acceleration Z" +msgstr "Maximale Beschleunigung Z" + +msgid "Maximum acceleration E" +msgstr "Maximale Beschleunigung E" + +msgid "Maximum acceleration of the X axis" +msgstr "Maximale Beschleunigung der X-Achse" + +msgid "Maximum acceleration of the Y axis" +msgstr "Maximale Beschleunigung der Y-Achse" + +msgid "Maximum acceleration of the Z axis" +msgstr "Maximale Beschleunigung der Z-Achse" + +msgid "Maximum acceleration of the E axis" +msgstr "Maximale Beschleunigung der E-Achse" + +msgid "Maximum jerk X" +msgstr "Maximaler Ruck X" + +msgid "Maximum jerk Y" +msgstr "Maximaler Ruck Y" + +msgid "Maximum jerk Z" +msgstr "Maximaler Ruck Z" + +msgid "Maximum jerk E" +msgstr "Maximaler Ruck E" + +msgid "Maximum jerk of the X axis" +msgstr "Maximaler Ruck auf der X-Achse" + +msgid "Maximum jerk of the Y axis" +msgstr "Maximaler Ruck auf der Y-Achse" + +msgid "Maximum jerk of the Z axis" +msgstr "Maximaler Ruck auf der Z-Achse" + +msgid "Maximum jerk of the E axis" +msgstr "Maximaler Ruck auf der E-Achse" + +msgid "Minimum speed for extruding" +msgstr "Mindestgeschwindigkeit beim Extrudieren" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Mindestgeschwindigkeit beim Extrudieren (M205 S)" + +msgid "Minimum travel speed" +msgstr "Minimale Fahrgeschwindigkeit" + +msgid "Minimum travel speed (M205 T)" +msgstr "Minimale Fahrgeschwindigkeit (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Maximale Beschleunigung beim Extrudieren" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Maximale Beschleunigung beim Extrudieren (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Maximale Beschleunigung beim Rückziehen" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Maximale Beschleunigung beim Rückziehen (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Maximale Fahrgeschwindigkeit" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "Maximale Fahrgeschwindigkeit (M204 T), gilt nur für Marlin 2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"Die Drehzahl des Bauteillüfters kann sich erhöhen, wenn die automatische " +"Kühlung aktiviert ist. Dies ist die maximale Drehzahlbegrenzung des " +"Bauteillüfters." + +msgid "Max" +msgstr "Maximal" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"Die größte druckbare Schichthöhe für den Extruder. Wird verwendet, um die " +"maximale Schichthöhe zu begrenzen, wenn die adaptive Schichthöhe aktiviert " +"ist" + +msgid "Extrusion rate smoothing" +msgstr "Glättung der Extrusionsrate" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Dieser Parameter gleicht plötzliche Änderungen der Extrusionsrate aus, die " +"auftreten, wenn der Drucker von einer hohen Flussrate (hohe Geschwindigkeit/" +"größere Breite) zu einer niedrigeren Flussrate (niedrigere Geschwindigkeit/" +"kleinere Breite) und umgekehrt wechselt.\n" +"\n" +"Es definiert die maximale Rate, mit der sich der extrudierte Volumenstrom in " +"mm3/s über die Zeit ändern kann. Höhere Werte bedeuten, dass höhere " +"Extrusionsratenänderungen zulässig sind, was zu schnelleren " +"Geschwindigkeitsübergängen führt.\n" +"\n" +"Ein Wert von 0 deaktiviert die Funktion. \n" +"\n" +"Für einen Hochgeschwindigkeits-, Hochfluss-Direktantriebsdrucker (wie den " +"Bambu-Labor- oder Voron-Drucker) ist dieser Wert normalerweise nicht " +"erforderlich. Er kann jedoch in bestimmten Fällen einen geringfügigen " +"Vorteil bieten, in denen sich die Funktionen stark unterscheiden. Zum " +"Beispiel, wenn es aggressive Verlangsamungen aufgrund von Überhängen gibt. " +"In diesen Fällen wird ein hoher Wert von ca. 300-350mm3/s2 empfohlen, da " + +msgid "mm³/s²" +msgstr "m" + +msgid "Smoothing segment length" +msgstr "Segmentlänge für die Glättung" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Ein niedrigerer Wert führt zu glatteren Extrusionsratenübergängen. Dies " +"führt jedoch zu einer deutlich größeren G-Code-Datei und mehr Anweisungen " +"für den Drucker, die verarbeitet werden müssen. \n" +"\n" +"Der Standardwert von 3 funktioniert für die meisten Fälle gut. Wenn Ihr " +"Drucker stottert, erhöhen Sie diesen Wert, um die Anzahl der Anpassungen zu " +"reduzieren\n" +"\n" +"Zulässige Werte: 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "Mindestdrehzahl der Bauteilkühlung" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Geschwindigkeit des Hilfsventilators für die Bauteilkühlung. Der Hilfsventi-" +"lator läuft mit dieser Geschwindigkeit während des Druckens, außer in den " +"ersten Schichten, die durch die Option \"Keine Kühlung\" definiert sind.\n" +"Bitte aktivieren Sie den Hilfsventilator in den Druckereinstellungen, um " +"diese Funktion zu verwenden. G-Code-Befehl: M106 P2 S(0-255)" + +msgid "Min" +msgstr "Min" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"Die niedrigste druckbare Schichthöhe für den Extruder. Wird verwendet, um " +"die minimale Schichthöhe zu begrenzen, wenn die adaptive Schichthöhe " +"aktiviert ist" + +msgid "Min print speed" +msgstr "Minimale Druckgeschwindigkeit" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"Die minimale Druckgeschwindigkeit, die der Drucker einhält, um zu versuchen, " +"die minimale Schichtzeit einzuhalten, wenn die Verlangsamung für eine " +"bessere Schichtkühlung aktiviert ist." + +msgid "Nozzle diameter" +msgstr "Düsendurchmesser" + +msgid "Diameter of nozzle" +msgstr "Düsendurchmesser" + +msgid "Configuration notes" +msgstr "Konfigurationsnotizen" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Hier können Sie Ihre persönlichen Notizen eintragen. Dieser Text wird den " +"Kommentaren im G-Code-Kopf hinzugefügt." + +msgid "Host Type" +msgstr "Host-Typ" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca kann G-Code-Dateien auf einen Drucker-Host hochladen. Dieses " +"Feld muss die Art des Hosts enthalten." + +msgid "Nozzle volume" +msgstr "Volumen der Düse" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Volumen der Düse zwischen dem Messer und dem Ende der Düse" + +msgid "Cooling tube position" +msgstr "Position des Kühlrohrs" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "Entfernung des Mittelpunkts des Kühlrohrs von der Düsenspitze." + +msgid "Cooling tube length" +msgstr "Kühlrohrlänge" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Länge des Kühlrohrs, um den Platz für Kühlbewegungen darin zu begrenzen." + +msgid "High extruder current on filament swap" +msgstr "Hoher Extruderstrom beim Filamentwechsel" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Es kann vorteilhaft sein, den Extrudermotorstrom während der Filamentwechsel-" +"Sequenz zu erhöhen, um schnelle Vorschubgeschwindigkeiten zu ermöglichen und " +"um den Widerstand beim Laden eines Filaments mit einer unförmigen Spitze zu " +"überwinden." + +msgid "Filament parking position" +msgstr "Filament Parkposition" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Entfernung der Düsenspitze von der Position, an der das Filament geparkt " +"wird, wenn es entladen ist. Dies sollte dem Wert in der Drucker-Firmware " +"entsprechen." + +msgid "Extra loading distance" +msgstr "Zusätzliche Länge beim Laden" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Wenn der Wert auf Null gesetzt ist, ist die Entfernung, die das Filament " +"während des Ladevorgangs von der Parkposition bewegt wird, genau die gleiche " +"wie beim Rückwärtsbewegen während des Entladens. Wenn der Wert positiv ist, " +"wird es weiter geladen, wenn er negativ ist, ist der Ladevorgang kürzer als " +"das Entladen." + +msgid "Start end points" +msgstr "Anfangs- und Endpunkte" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "Die Start- und Endpunkte, vom Schnittbereich bis zum Auswurfschacht." + +msgid "Reduce infill retraction" +msgstr "Rückzug bei der Füllung verringern" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Kein Rückzug, wenn sich die Bewegung des Druckkopfes vollständig in einem " +"Füllbereich befindet. Das bedeutet, dass das herauslaufen des Filaments " +"nicht zu sehen ist. Dies kann die Zeit für das zurückziehen des Filaments " +"bei komplexeren Modellen verkürzen und Druckzeit sparen, verlangsamt aber " +"das Slicen und die G-Code Generierung." + +msgid "Filename format" +msgstr "Format des Dateinamens" + +msgid "User can self-define the project file name when export" +msgstr "Der Benutzer kann den Projektdateinamen beim Export selbst bestimmen" + +msgid "Make overhangs printable" +msgstr "Überhang druckbar machen" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "Die Geometrie anpassen, um Überhänge ohne Stützmaterial zu drucken." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Maximaler Winkel für druckbare Überhänge" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Maximaler Winkel der Überhänge, die erlaubt sind, nachdem steilere Überhänge " +"druckbar gemacht wurden. 90° wird das Modell überhaupt nicht verändern und " +"jeden Überhang erlauben, während 0 alle Überhänge durch konisches Material " +"ersetzt." + +msgid "Make overhangs printable - Hole area" +msgstr "Flächenbereich für druckbare Überhänge von Löchern" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Maximaler Flächenbereich eines Lochs in der Basis des Modells, bevor es mit " +"konischem Material gefüllt wird. Ein Wert von 0 füllt alle Löcher in der " +"Basis des Modells." + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Erkennen von Wandüberhängen" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Erkennt den Prozentsatz des Überhangs im Verhältnis zur Linienbreite und " +"verwenden hierfür eine unterschiedliche Druckgeschwindigkeiten. Bei einem " +"100%% Überhang wird die Brückengeschwindigkeit verwendet." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Linienbreite der inneren Wand. Wenn als Prozentsatz angegeben, wird sie in " +"Bezug auf den Düsendurchmesser berechnet." + +msgid "Speed of inner wall" +msgstr "Druckgeschwindigkeit der Innenwand" + +msgid "Number of walls of every layer" +msgstr "Anzahl der Wände jeder Schicht" + +msgid "Alternate extra wall" +msgstr "Abwechselnde zusätzliche Wand" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"Diese Einstellung fügt jeder zweiten Schicht eine zusätzliche Wand hinzu. " +"Damit wird die Füllung vertikal zwischen den Wänden eingeklemmt, was zu " +"stärkeren Drucken führt. \n" +"\n" +"Wenn diese Option aktiviert ist, muss die Option zur Sicherstellung der " +"vertikalen Schalendicke deaktiviert werden. \n" +"\n" +"Die Verwendung von Lightning Infill zusammen mit dieser Option wird nicht " +"empfohlen, da die Füllung begrenzt ist, um die zusätzlichen Umfänge zu " +"verankern." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Wenn Sie die Ausgabe-G-Code-Datei durch benutzerdefinierte Skripts " +"verarbeiten möchten, geben Sie hier die absoluten Pfade auf. Trennen Sie " +"mehrere Skripts durch ein Semikolon. Die Skripts erhalten den absoluten Pfad " +"zur G-Code-Datei als erstes Argument und können die Snapmaker Orca-" +"Konfigurationseinstellungen durch Lesen von Umgebungsvariablen abrufen." + +msgid "Printer notes" +msgstr "Druckernotizen" + +msgid "You can put your notes regarding the printer here." +msgstr "Sie können hier Ihre Notizen zum Drucker eintragen." + +msgid "Raft contact Z distance" +msgstr "Z Abstand Objekt Druckbasis " + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"Z-Abstand zwischen Objekt und Druckbasis. Bei löslicher Oberfläche ignoriert" + +msgid "Raft expansion" +msgstr "Druckbasis Erweiterung" + +msgid "Expand all raft layers in XY plane" +msgstr "Druckbasis in der XY-Ebene erweitern" + +msgid "Initial layer density" +msgstr "Dichte der ersten Schicht" + +msgid "Density of the first raft or support layer" +msgstr "Dichte der ersten Schicht der Druckbasis oder Support" + +msgid "Initial layer expansion" +msgstr "Ausdehnung der ersten Schicht" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Ausdehnung der ersten Druckbasis oder Support-Schicht um die " +"Druckplattenhaftung zu verbessern" + +msgid "Raft layers" +msgstr "Druckbasisschichten" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"Das Objekt wird um diese Anzahl von Stützschichten erhöht. Verwenden Sie " +"diese Funktion, um ein verziehen bei ABS zu vermeiden." + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"Der G-Code-Pfad wird nach der Vereinfachung der Kontur des Modells " +"generiert, um zu viele Punkte und G-Code Befehle in der G-Code-Datei zu " +"vermeiden. Ein kleinerer Wert bedeutet eine höhere Auflösung und mehr Zeit " +"zum Slicen" + +msgid "Travel distance threshold" +msgstr "Schwellenwert für die Fahrstrecke" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "Rückzug nur auslösen, wenn der Fahrweg länger als diese Schwelle ist" + +msgid "Retract amount before wipe" +msgstr "Rückzugsmenge vor der Reinigung" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"Die Länge des schnellen Rückzugs vor dem Abwischen, relativ zur " +"Rückzugslänge." + +msgid "Retract when change layer" +msgstr "Zurückziehen beim Schichtwechsel" + +msgid "Force a retraction when changes layer" +msgstr "Erzwingen eines Rückzugs beim Schichtwechsel" + +msgid "Retraction Length" +msgstr "Rückzugslänge" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Menge an Material im Extruder zurückgezogen wird, um ein herauslaufen des " +"Filaments bei langen Verfahrwegen zu vermeiden. Null deaktiviert dein " +"Rückzug." + +msgid "Long retraction when cut(experimental)" +msgstr "Langer Rückzug beim Schneiden (experimentell)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Experimentelle Funktion. Rückzug und Abschneiden des Filaments bei einem " +"längeren Abstand während des Wechsels, um den Reinigungsvorgang zu " +"minimieren. Obwohl dies den Reinigungsvorgang erheblich reduziert, kann es " +"auch das Risiko von Düsenverstopfungen oder anderen Druckproblemen erhöhen." + +msgid "Retraction distance when cut" +msgstr "Rückzugslänge beim Schneiden" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Experimentelle Funktion. Rückzugslänge vor dem Abschneiden beim Filament-" +"Wechsel" + +msgid "Z hop when retract" +msgstr "Z-Hop beim Rückzug" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Bei jedem Rückzug wird die Düse ein wenig angehoben, um einen Abstand " +"zwischen Düse und Druck zu schaffen. Dadurch wird verhindert, dass die Düse " +"bei der Verfahrbewegung gegen den Druck stößt. Die Verwendung einer " +"Spirallinie zum Anheben von z kann Fadenbildung verhindern." + +msgid "Z hop lower boundary" +msgstr "Z-Hub untere Grenze" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Z-Hub wird nur wirksam, wenn Z über diesem Wert liegt und unter dem " +"Parameter: \"Z-Hub obere Grenze\" liegt" + +msgid "Z hop upper boundary" +msgstr "Z-Hub obere Grenze" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Wenn dieser Wert positiv ist, wird der Z-Hub nur wirksam, wenn Z über dem " +"Parameter: \"Z-Hub untere Grenze\" liegt und unter diesem Wert liegt" + +msgid "Z hop type" +msgstr "Z-Hub Typ" + +msgid "Slope" +msgstr "Steigung" + +msgid "Spiral" +msgstr "Spirale" + +msgid "Traveling angle" +msgstr "Bewegungswinkel" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" +"Bewegungswinkel für den Z-Hub-Typ \"Steigung\" und \"Spirale\". Wenn Sie es " +"auf 90° einstellen, erhalten Sie eine normale Anhebung" + +msgid "Only lift Z above" +msgstr "Nur Z anheben über" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Wenn Sie diesen Wert auf einen positiven Wert setzen, wird das Z-Heben nur " +"oberhalb des angegebenen absoluten Z-Wertes erfolgen." + +msgid "Only lift Z below" +msgstr "Nur Z anheben unter" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Wenn Sie diesen Wert auf einen positiven Wert setzen, wird das Z-Heben nur " +"unterhalb des angegebenen absoluten Z-Wertes erfolgen." + +msgid "On surfaces" +msgstr "Auf Oberflächen" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Verhalten des Z-Hops erzwingen. Diese Einstellung wird von den oben " +"genannten Einstellungen (Nur Z überheben oberhalb/unterhalb) beeinflusst." + +msgid "All Surfaces" +msgstr "Alle Oberflächen" + +msgid "Top Only" +msgstr "Nur Oben" + +msgid "Bottom Only" +msgstr "Nur Unten" + +msgid "Top and Bottom" +msgstr "Oben und Unten" + +msgid "Extra length on restart" +msgstr "Zusätzliche Länge beim Neustart" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Wenn die Rückzugskompensation nach dem Reisemove durchgeführt wird, wird der " +"Extruder diese zusätzliche Menge an Filament schieben. Diese Einstellung " +"wird nur selten benötigt." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Wenn die Rückzugskompensation nach dem Wechsel des Werkzeugs durchgeführt " +"wird, wird der Extruder diese zusätzliche Menge an Filament schieben." + +msgid "Retraction Speed" +msgstr "Rückzugsgeschwindigkeit" + +msgid "Speed of retractions" +msgstr "Geschwindigkeit für den Rückzug" + +msgid "Deretraction Speed" +msgstr "Wiedereinzugsgeschwindigkeit" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Geschwindigkeit für das Einziehen von Filament in den Extruder nach einem " +"Rückzug. Null bedeutet die gleiche Geschwindigkeit wie der Rückzug." + +msgid "Use firmware retraction" +msgstr "Filament Rückzug durch Firmware" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"Diese experimentelle Einstellung nutzt die Befehle G10 und G11, um die " +"Firmware das Zurückziehen zu handhaben.Dies wird nur von aktuellen Marlin-" +"Firmware unterstützt." + +msgid "Show auto-calibration marks" +msgstr "Zeige automatische Kalibrierungsmarkierungen" + +msgid "Disable set remaining print time" +msgstr "Deaktiviere die verbleibende Druckzeit" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" +"Deaktiviert das Generieren von M73: Setze die verbleibende Druckzeit im " +"endgültigen G-Code" + +msgid "Seam position" +msgstr "Nahtposition" + +msgid "The start position to print each part of outer wall" +msgstr "Die Startposition für den Druck jedes Teils der Außenwand" + +msgid "Nearest" +msgstr "Nächste" + +msgid "Aligned" +msgstr "Ausgerichtet" + +msgid "Back" +msgstr "Rückseite" + +msgid "Random" +msgstr "Zufall" + +msgid "Staggered inner seams" +msgstr "Versetzte innere Nähte" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Durch diese Option werden die inneren Nähte basierend auf ihrer Tiefe nach " +"hinten verschoben und bilden ein Zickzack-Muster." + +msgid "Seam gap" +msgstr "Naht Zwischenraum" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Um die Sichtbarkeit der Naht in einer geschlossenen Schleifenextrusion zu " +"reduzieren, wird die Schleife unterbrochen und um eine bestimmte Menge " +"verkürzt.\n" +"Diese Menge kann in Millimetern oder als Prozentsatz des aktuellen " +"Extruderdurchmessers angegeben werden.\n" +"Der Standardwert für diesen Parameter beträgt 10%. Dies wird durchgeführt, " +"um das endgültige Produkt glatter und nahtloser aussehen zu lassen." + +msgid "Scarf joint seam (beta)" +msgstr "Schrägnaht (Beta)" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Benutze die Schrägnaht um die Sichtbarkeit der Naht zu minimieren und die " +"Nahtstärke zu erhöhen." + +msgid "Conditional scarf joint" +msgstr "Bedingte Schrägnaht" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Wenden Sie Schrägnähte nur auf glatte Umfänge an, bei denen traditionelle " +"Nahtstellen die Nähte an scharfen Ecken nicht effektiv verbergen." + +msgid "Conditional angle threshold" +msgstr "Winkel-Schwellenwert" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"Diese Option legt den Schwellenwinkel für das Anwenden einer bedingten " +"Schrägnaht fest.\n" +"Wenn der maximale Winkel innerhalb der Umfangsschleife diesen Wert " +"überschreitet (was auf das Fehlen von scharfen Ecken hinweist), wird eine " +"Schrägnaht verwendet. Der Standardwert beträgt 155°." + +msgid "Conditional overhang threshold" +msgstr "Bedingte Überstandsschwelle" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"Diese Option bestimmt den Überhangsschwellenwert für die Anwendung von " +"Schrägnahtnähten. Wenn der nicht unterstützte Teil des Umfangs kleiner als " +"dieser Schwellenwert ist, werden Schrägnahtnähte angewendet. Der " +"Standardwert für die Schwelle beträgt 40% der Breite der äußeren Wand. Auf " +"Grund von Leistungserwägungen wird der Grad des Überhangs geschätzt." + +msgid "Scarf joint speed" +msgstr "Schrägnaht Geschwindigkeit" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"Diese Option legt die Druckgeschwindigkeit für Schrägnähte fest. Es wird " +"empfohlen, Schrägnähte mit einer langsamen Geschwindigkeit (weniger als 100 " +"mm/s) zu drucken. Es ist auch ratsam, die 'Glättung der Extrusionsrate' zu " +"aktivieren, wenn die eingestellte Geschwindigkeit erheblich von der " +"Geschwindigkeit der äußeren oder inneren Wände abweicht. Wenn die hier " +"angegebene Geschwindigkeit höher ist als die Geschwindigkeit der äußeren " +"oder inneren Wände, wird der Drucker auf die langsamere der beiden " +"Geschwindigkeiten zurückgesetzt. Wenn sie als Prozentsatz angegeben wird (z." +"B. 80%), wird die Geschwindigkeit auf der Grundlage der jeweiligen " +"Geschwindigkeit der äußeren oder inneren Wand berechnet. Der Standardwert " +"ist auf 100% eingestellt." + +msgid "Scarf joint flow ratio" +msgstr "Schrägnaht Flussverhältnis" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "Dieser Faktor beeinflusst die Menge an Material für Schrägnähte." + +msgid "Scarf start height" +msgstr "Starthöhe der Schrägnaht" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Start Höhe der Schrägnaht.\n" +"Diese Menge kann in Millimetern oder als Prozentsatz der aktuellen " +"Schichthöhe angegeben werden.\n" +"Der Standardwert für diesen Parameter beträgt 0." + +msgid "Scarf around entire wall" +msgstr "Schrägnaht um die gesamte Wand" + +msgid "The scarf extends to the entire length of the wall." +msgstr "Die Schrägnaht erstreckt sich über die gesamte Länge der Wand." + +msgid "Scarf length" +msgstr "Länge der Schrägnaht" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Länge der Schrägnaht. Das Einstellen dieses Parameters auf Null deaktiviert " +"effektiv die Schrägnaht." + +msgid "Scarf steps" +msgstr "Schrägnaht Schritte" + +msgid "Minimum number of segments of each scarf." +msgstr "Mindestanzahl von Segmenten jeder Schrägnaht." + +msgid "Scarf joint for inner walls" +msgstr "Schrägnaht für innere Wände" + +msgid "Use scarf joint for inner walls as well." +msgstr "Verwenden Sie Schrägnaht auch für innere Wände." + +msgid "Role base wipe speed" +msgstr "Rollenbasierte Wipe Geschwindigkeit" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"Die Wischengeschwindigkeit wird durch die Geschwindigkeit der aktuellen " +"Extrusion bestimmt.\n" +"z.B. wenn eine Wischenaktion unmittelbar nach einer äußeren Wand-Extrusion " +"ausgeführt wird, wird die Geschwindigkeit der äußeren Wand-Extrusion für die " +"Wischenaktion verwendet." + +msgid "Wipe on loops" +msgstr "Wischbewegung nach innen" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Um die Sichtbarkeit der Naht in einer geschlossenen Schleifen-Extrusion zu " +"minimieren, wird vor dem Verlassen der Schleife eine kleine Bewegung nach " +"innen ausgeführt." + +msgid "Wipe before external loop" +msgstr "Wischbewegung vor äußerer Schleife" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"Um die Sichtbarkeit einer möglichen Überextrusion am Anfang eines äußeren " +"Umfangs zu minimieren, wenn mit der Druckreihenfolge \"Außen/Innen\" oder " +"\"Innen/Außen/Innen\" gedruckt wird, wird der Rückzug etwas nach innen vom " +"Anfang des äußeren Umfangs ausgeführt. Auf diese Weise wird eine mögliche " +"Überextrusion von der Außenfläche verdeckt. \n" +"\n" +"Dies ist nützlich, wenn mit der Druckreihenfolge \"Außen/Innen\" oder " +"\"Innen/Außen/Innen\" gedruckt wird, da in diesen Modi ein äußerer Umfang " +"unmittelbar nach einem Rückzug gedruckt wird." + +msgid "Wipe speed" +msgstr "Wipe Geschwindigkeit" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"Die Wischengeschwindigkeit wird durch die im Konfigurationsmenü angegebene " +"Geschwindigkeit bestimmt.Wenn der Wert als Prozentsatz (z.B. 80%) angegeben " +"ist, wird er aufgrund der oben angegebenen Reisegeschwindigkeit berechnet. " +"Der Standardwert für diesen Parameter beträgt 80%" + +msgid "Skirt distance" +msgstr "Abstand der Umrandung" + +msgid "Distance from skirt to brim or object" +msgstr "Abstand von der Umrandung zum Rand oder zum Objekt" + +msgid "Skirt height" +msgstr "Höhe der Umrandungsringe" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Wie viele Schichten des Skirts. Normalerweise nur eine Schicht." + +msgid "Draft shield" +msgstr "Luftzug-Schutz" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"Ein Luftzugs-Schutz ist nützlich, um einen ABS- oder ASA-Druck vor Verzug " +"und Ablösen vom Druckbett aufgrund von Luftzug zu schützen. Er wird " +"normalerweise nur bei offenen Druckern benötigt, d.h. ohne Gehäuse. \n" +"\n" +"Optionen:\n" +"Aktiviert = Umrandung ist so hoch wie das höchste gedruckte Objekt.\n" +"Begrenzt = Umrandung ist so hoch wie durch die Höhe der Umrandung " +"angegeben.\n" +"\n" +"Hinweis: Mit dem aktiven Luftzug-Schutz wird die Umrandung in der " +"Umrandungsdistanz vom Objekt gedruckt. Daher kann es bei aktiven Rändern zu " +"Überschneidungen kommen. Um dies zu vermeiden, erhöhen Sie den Wert " +"derUmrandungsdistanz. \n" + +msgid "Limited" +msgstr "Begrenzt" + +msgid "Enabled" +msgstr "Aktiviert" + +msgid "Skirt loops" +msgstr "Anzahl Umrandungsringe" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "" +"Anzahl der Ringe für die Umrandung. Null bedeutet Deaktivierung der Umrandung" + +msgid "Skirt speed" +msgstr "Druckgeschwindigkeit der Umrandung" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" +"Geschwindigkeit der Umrandung in mm/s. Null bedeutet Verwendung der Standard-" +"Schichtextrusionsgeschwindigkeit." + +msgid "Skirt minimum extrusion length" +msgstr "Minimale Extrusionslänge der Umrandung" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"Minimale Filamentextrusionslänge in mm beim Drucken der Umrandung. Null " +"bedeutet, dass diese Funktion deaktiviert ist.\n" +"\n" +"Die Verwendung eines Werts ungleich Null ist nützlich, wenn der Drucker so " +"eingestellt ist, dass er ohne eine Primelinie druckt." + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"Die Druckgeschwindigkeit im exportierten G-Code wird verlangsamt, wenn die " +"geschätzte Schichtzeit kürzer als dieser Wert ist, um eine bessere Kühlung " +"für diese Schichten zu erreichen" + +msgid "Minimum sparse infill threshold" +msgstr "Mindestschwelle für Füllung" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"Innere Füllbereiche, die kleiner als dieser Wert sind, werden durch massive " +"Füllungen ersetzt." + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Linienbreite des internen massiven Infill. Wenn als Prozentsatz angegeben, " +"wird sie in Bezug auf den Düsendurchmesser berechnet." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"Geschwindigkeit der inneren massiven Füllungen, ohne die obere oder untere " +"Oberfläche." + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Aktiviert die Spiralisierung, welche die Z-Bewegungen der Außenkontur " +"glättet und verwandelt ein Volumenmodell in einen einwandigen Druck mit " +"soliden unteren Schichten. Das endgültig erzeugte Modell hat dadurch keine " +"Naht." + +msgid "Smooth Spiral" +msgstr "Gleichmäßig Spirale" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Die gleichmäßige Spirale glättet auch die X- und Y-Bewegungen, so dass keine " +"Naht sichtbar ist, auch nicht in den XY-Richtungen an Wänden, die nicht " +"senkrecht sind." + +msgid "Max XY Smoothing" +msgstr "Maximale XY-Glättung" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Maximaler Abstand, um Punkte in XY zu verschieben, um eine glatte Spirale zu " +"erreichen. Wenn als Prozentsatz angegeben, wird er in Bezug auf den " +"Düsendurchmesser berechnet." + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Wenn der Modus \"Gleichmäßig\" oder \"Traditionell\" ausgewählt ist, wird " +"für jeden Druck ein Zeitraffer-Video generiert. Nachdem jede Schicht " +"gedruckt wurde, wird eine Momentaufnahme mit der Kamerakammer erstellt. Alle " +"diese Schnappschüsse werden zu einem Zeitraffer-Video zusammengesetzt, wenn " +"der Druck abgeschlossen ist. Wenn der Modus \"Gleichmäßig\" ausgewählt ist, " +"bewegt sich der Druckkopf nach dem Drucken jeder Schicht zum Überschusskanal " +"und nimmt dann eine Momentaufnahme auf. Da das geschmolzene Filament während " +"des Aufnahmeprozesses aus der Düse austreten kann, ist ein Reinigungsturm " +"erforderlich, damit der Druckkopf gereinigt wird." + +msgid "Traditional" +msgstr "Traditionell" + +msgid "Temperature variation" +msgstr "Temperaturvariation" + +msgid "Start G-code" +msgstr "Start G-Code" + +msgid "Start G-code when start the whole printing" +msgstr "G-Code hinzufügen, wenn der Druckvorgang beginnt" + +msgid "Start G-code when start the printing of this filament" +msgstr "G-Code hinzufügen, wenn der Druck dieses Filaments beginnt" + +msgid "Single Extruder Multi Material" +msgstr "Einzelner Extruder, mehrere Materialien" + +msgid "Use single nozzle to print multi filament" +msgstr "Benutze eine einzelne Düse zum Drucken mit mehreren Filamenten" + +msgid "Manual Filament Change" +msgstr "Manueller Filamentwechsel" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Diese Option aktivieren, um den benutzerdefinierten G-Code für den " +"Filamentwechsel nur am Anfang des Drucks zu überspringen. Der " +"Werkzeugwechselbefehl (z.B. T0) wird während des gesamten Drucks " +"übersprungen. Dies ist nützlich für den manuellen Mehrmaterialdruck, bei dem " + +msgid "Purge in prime tower" +msgstr "Reinige im Reinigungsturm" + +msgid "Purge remaining filament into prime tower" +msgstr "Reinige das restliche Filament im Reinigungsturm" + +msgid "Enable filament ramming" +msgstr "Filamentrammen aktivieren" + +msgid "No sparse layers (beta)" +msgstr "Keine dünnen Schichten (Beta)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Wenn aktiviert, wird der Reinigungsturm nicht auf Schichten ohne " +"Werkzeugwechsel gedruckt. Auf Schichten mit einem Werkzeugwechsel wird der " +"Extruder nach unten fahren, um den Reinigungsturm zu drucken. Der Benutzer " +"ist dafür verantwortlich, dass es keine Kollision mit dem Druck gibt." + +msgid "Prime all printing extruders" +msgstr "Reinige alle Druckextruder" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Wenn aktiviert, werden alle Druckextruder am vorderen Rand des Druckbetts am " +"Anfang des Drucks gereinigt." + +msgid "Slice gap closing radius" +msgstr "Slice-Lückenschlussradius" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Risse, die kleiner als das 2-fache des Lückenschlussradius sind, werden beim " +"Slicen des Modellnetzes gefüllt. Der Vorgang des Lückenschließens kann die " +"endgültige Druckauflösung verringern, daher ist es ratsam, den Wert relativ " +"niedrig zu halten." + +msgid "Slicing Mode" +msgstr "Slicing-Modus" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Verwenden Sie \"Gerade-ungerade\" für 3DLabPrint-Flugzeugmodelle. Verwenden " +"Sie \"Löcher schließen\", um alle Löcher im Modell zu schließen." + +msgid "Regular" +msgstr "Regulär" + +msgid "Even-odd" +msgstr "Gerade-ungerade" + +msgid "Close holes" +msgstr "Löcher schließen" + +msgid "Z offset" +msgstr "Z-Offset" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Dieser Wert wird zu allen Z-Koordinaten im Ausgabe-G-Code addiert (oder " +"subtrahiert). Er wird verwendet, um die schlechte Z-Endschalterposition zu " +"kompensieren: Wenn Ihr Endschalter-Nullpunkt tatsächlich die Düse 0,3 mm vom " +"Druckbett entfernt lässt, setzen Sie diesen Wert auf -0,3 (oder korrigieren " +"Sie Ihren Endschalter)." + +msgid "Enable support" +msgstr "Stützstrukturen aktivieren" + +msgid "Enable support generation." +msgstr "Erzeugung von Stützstrukturen aktivieren." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"Normal (auto) und Baum (auto) werden verwendet, um automatisch " +"Stützstrukturen zu generieren. Wenn Normal (manuell) oder Baum (manuell) " +"ausgewählt ist, werden nur Stützerzwinger erzeugt." + +msgid "normal(auto)" +msgstr "Normal (auto)" + +msgid "tree(auto)" +msgstr "Baum (auto)" + +msgid "normal(manual)" +msgstr "Normal (manuell)" + +msgid "tree(manual)" +msgstr "Baum (manuell)" + +msgid "Support/object xy distance" +msgstr "Stützen/Objekt XY-Abstand" + +msgid "XY separation between an object and its support" +msgstr "XY-Abstand zwischen einem Objekt und seinen Stützstrukturen." + +msgid "Pattern angle" +msgstr "Winkel des Musters" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Verwenden Sie diese Einstellung, um das Stützmuster in der horizontalen " +"Ebene zu drehen." + +msgid "On build plate only" +msgstr "Nur auf Druckplatte" + +msgid "Don't create support on model surface, only on build plate" +msgstr "" +"Stützen nicht auf der Modelloberfläche, sondern nur auf der Druckplatte " +"erzeugen" + +msgid "Support critical regions only" +msgstr "Nur kritische Bereiche stützen" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Erstelle nur Stützstrukturen für kritische Bereiche, z. B. für steile " +"Kanten, Ausragungen, usw." + +msgid "Remove small overhangs" +msgstr "Kleine Überhänge entfernen" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "" +"Kleine Überhänge entfernen, die möglicherweise keine Stützstrukturen " +"benötigen." + +msgid "Top Z distance" +msgstr "Oberer Z-Abstand" + +msgid "The z gap between the top support interface and object" +msgstr "Der Z-Abstand zwischen der oberen Stütz-Schnittstelle und dem Objekt" + +msgid "Bottom Z distance" +msgstr "Unterer Z-Abstand" + +msgid "The z gap between the bottom support interface and object" +msgstr "Der Z-Abstand zwischen der unteren Stütz-Schnittstelle und dem Objekt" + +msgid "Support/raft base" +msgstr "Stütz-/Basis-Objekt" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filament zum Drucken von Stützbasen und Flöße. \"Standard\" bedeutet, dass " +"kein spezielles Filament für die Stützen verwendet wird, sondern das " +"aktuelle Filament." + +msgid "Avoid interface filament for base" +msgstr "Schnittstellenfilament für die Basis verringern" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Vermeiden Sie es, Stütz-Schnittstellenfilament für die Basis zu verwenden" + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Linienbreite der Stützstrukturen. Wenn als Prozentsatz angegeben, wird sie " +"in Bezug auf den Düsendurchmesser berechnet." + +msgid "Interface use loop pattern" +msgstr "Schleifenmuster-Schnittstelle" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Deckt die obere Kontaktschicht der Stützstrukturen mit Schleifen ab. " +"Standardmäßig deaktiviert." + +msgid "Support/raft interface" +msgstr "Stütz-/Raft-Schnittstelle" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filament zum Drucken von Stütz-Schnittstellen. \"Standard\" bedeutet, dass " +"kein spezielles Filament für die Stütz-Schnittstellen vorhanden ist und das " +"aktuelle Filament verwendet wird." + +msgid "Top interface layers" +msgstr "Obere Schnittstellenschichten" + +msgid "Number of top interface layers" +msgstr "Anzahl der oberen Schnittstellenschichten" + +msgid "Bottom interface layers" +msgstr "Untere Schnittstellenschichten" + +msgid "Number of bottom interface layers" +msgstr "Anzahl der unteren Schnittstellenschichten" + +msgid "Same as top" +msgstr "Gleich wie oben" + +msgid "Top interface spacing" +msgstr "Oberer Schnittstellenabstand" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "Abstand der Schnittstellenlinien. Null bedeutet feste Schnittstelle" + +msgid "Bottom interface spacing" +msgstr "Abstand der unteren Schnittstelle" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Abstand der unteren Trennschichtlinien der Stützstrukturen. Null bedeutet " +"eine solide Schnittstelle." + +msgid "Speed of support interface" +msgstr "Geschwindigkeit der Stützstruktur-Schnittstellen." + +msgid "Base pattern" +msgstr "Basismuster" + +msgid "Line pattern of support" +msgstr "Linienmuster der Stützstrukturen" + +msgid "Rectilinear grid" +msgstr "Rechtwinkliges Gitter" + +msgid "Hollow" +msgstr "Hohl" + +msgid "Interface pattern" +msgstr "Schnittstellenmuster" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Linienmuster der Stützstruktur-Schnittstelle. Das Standardmuster für nicht " +"lösliche Schnittstellen ist Geradlinig, während das Standardmuster für " +"lösliche Schnittstellen konzentrisch ist." + +msgid "Rectilinear Interlaced" +msgstr "Rechteckiges Wechselmuster" + +msgid "Base pattern spacing" +msgstr "Abstand des Grundmusters" + +msgid "Spacing between support lines" +msgstr "Abstände zwischen den Stützlinien" + +msgid "Normal Support expansion" +msgstr "Normale Stützerweiterung" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "" +"Vergrößern (+) oder Verkleinern (-) der horizontalen Spannweite der normalen " +"Stützen" + +msgid "Speed of support" +msgstr "Druckgeschwindigkeit für Stützstrukturen." + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"Stil und Form der Stützstrukturen. Für normale Stützstrukturen erzeugt die " +"Projektion der Stützstrukturen in ein regelmäßiges Gitter stabilere " +"Stützstrukturen (Standard), während schlanke Stütztürme Material sparen und " +"Objektverletzungen reduzieren.\n" +"Für Baumstützen werden die schlanken und organischen Stile die Äste " +"aggressiver zusammenführen und viel Material sparen (Standardorganisch), " +"während der Hybridstil eine ähnliche Struktur wie normale Stützstrukturen " +"unter großen flachen Überhängen erzeugt." + +msgid "Snug" +msgstr "Nahtlos" + +msgid "Tree Slim" +msgstr "Baum schlank" + +msgid "Tree Strong" +msgstr "Baum stark" + +msgid "Tree Hybrid" +msgstr "Baum-Hybrid" + +msgid "Organic" +msgstr "Organisch" + +msgid "Independent support layer height" +msgstr "Unabhängige Stützstruktur-Schichthöhe" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Die Stützschicht verwendet eine unabhängige Schichthöhe im Vergleich zur " +"Objektschicht. Dadurch kann der Z-Abstand individuell angepasst und " +"Druckzeit gespart werden. Diese Option ist ungültig, wenn der Prime-Tower " +"aktiviert ist." + +msgid "Threshold angle" +msgstr "Schwellenwinkel" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Für Überhänge, deren Neigungswinkel unter diesem Wert liegt, werden Stützen " +"generiert." + +msgid "Tree support branch angle" +msgstr "Baumstütze Astwinkel" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Diese Einstellung legt den maximalen Überhangwinkel fest, den die Äste der " +"Baumstütze haben dürfen: Je größer der Winkel, desto horizontaler können die " +"Äste gedruckt werden und desto weiter reichen sie." + +msgid "Preferred Branch Angle" +msgstr "Bevorzugter Astwinkel" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"Der bevorzugte Winkel der Äste, wenn sie das Modell nicht vermeiden müssen. " +"Verwenden Sie einen niedrigeren Winkel, um sie vertikaler und stabiler zu " +"machen. Verwenden Sie einen höheren Winkel, damit die Äste schneller " +"zusammenwachsen." + +msgid "Tree support branch distance" +msgstr "Abstand der Baumstützenäste" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"Mit dieser Einstellung wird der Abstand zwischen benachbarten Baum-" +"Stützknoten festgelegt." + +msgid "Branch Density" +msgstr "Ast-Dichte" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"Stellt die Dichte der Stützstruktur ein, die zum Erzeugen der Spitzen der " +"Äste verwendet wird. Ein höherer Wert ergibt bessere Überhänge, aber die " +"Stützen sind schwerer zu entfernen. Daher wird empfohlen, stattdessen obere " +"Stützschnittstellen zu aktivieren, wenn dichte Schnittstellen benötigt " +"werden." + +msgid "Adaptive layer height" +msgstr "Adaptive Schichthöhe" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"Wenn Sie diese Option aktivieren, wird die Höhe der Baumstützschicht außer " +"der ersten automatisch berechnet." + +msgid "Auto brim width" +msgstr "Automatische Randbreite" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"Das Aktivieren dieser Option bedeutet, dass die Breite des Brims für " +"Baumstützstrukturen automatisch durch die 3D-Drucksoftware berechnet wird." + +msgid "Tree support brim width" +msgstr "Baumsupport mit Füllung" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "Abstand vom Modell zur äußersten Randlinie" + +msgid "Tip Diameter" +msgstr "Durchmesser der Spitze" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Astspitzen-Durchmesser für organische Stützstrukturen." + +msgid "Tree support branch diameter" +msgstr "Durchmesser des Stützastes eines Baumes" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Diese Einstellung bestimmt den Anfangsdurchmesser der Stützknoten." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Ast-Verjüngungs-Winkel" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"Der Winkel des Ast-Durchmessers, da sie sich allmählich zum Boden hin " +"verdicken. Ein Winkel von 0 bewirkt, dass die Äste über ihre Länge eine " +"gleichmäßige Dicke haben. Ein kleiner Winkel kann die Stabilität der " +"organischen Stütze erhöhen." + +msgid "Branch Diameter with double walls" +msgstr "Doppelte Wände für Ast-Durchmesser ab" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"Äste mit einer Fläche, die größer ist als die Fläche eines Kreises mit " +"diesem Durchmesser, werden mit doppelten Wänden für die Stabilität gedruckt. " +"Setzen Sie diesen Wert auf Null, um keine doppelten Wände zu erhalten." + +msgid "Support wall loops" +msgstr "Wände um Stützstrukturen" + +msgid "This setting specify the count of walls around support" +msgstr "Diese Einstellung gibt die Anzahl der Wände um die Stützstrukturen an" + +msgid "Tree support with infill" +msgstr "Baumsupport mit Füllung" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "Diese Einstellung gibt die Anzahl der Wände um den Baumsupport an" + +msgid "Activate temperature control" +msgstr "aktiviere Temperaturkontrolle" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Diese Option aktivieren, um die Temperatur der Druckkammer zu steuern. Ein " +"M191-Befehl wird vor \"machine_start_gcode\" hinzugefügt\n" +"G-Code-Befehle: M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "Druckraum Temperatur" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Eine höhere Druckraumtemperatur kann das Verziehen unterdrücken oder " +"reduzieren und möglicherweise zu einer höheren " +"Zwischenschichtbindungsfestigkeit für Hochtemperaturmaterialien wie ABS, " +"ASA, PC, PA und so weiter führen. Gleichzeitig wird die Luftfiltration von " +"ABS und ASA schlechter. Für PLA, PETG, TPU, PVA und andere Materialien mit " +"niedriger Temperatur sollte die tatsächliche Druckraumtemperatur nicht hoch " +"sein, um Verstopfungen zu vermeiden, daher wird 0, was für das Ausschalten " +"steht, dringend empfohlen." + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Düsentemperatur nach der ersten Schicht" + +msgid "Detect thin wall" +msgstr "Dünne Wand erkennen" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Erkennt dünne Wände, die keine zwei Linienbreiten enthalten können. Und " +"verwendet eine einzelne Linie zum Drucken. Diese wird vielleicht nicht sehr " +"gut gedruckt, weil es keine geschlossene Schleife ist." + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Dieser G-Code wird beim Filamentwechsel eingefügt, einschließlich des T-" +"Befehls zum Auslösen des Werkzeugwechsels" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "Dieser G-Code wird beim Wechsel der Extrusionsart eingefügt" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Linienbreite für obere Oberflächen. Wenn als Prozentsatz angegeben, wird sie " +"in Bezug auf den Düsendurchmesser berechnet." + +msgid "Speed of top surface infill which is solid" +msgstr "Geschwindigkeit der massiven Füllung der Oberseite." + +msgid "Top shell layers" +msgstr "Obere Schalenschichten" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Dies ist die Anzahl der massiven Schichten der oberen Schale, einschließlich " +"der Oberflächenschicht. Wenn die mit diesem Wert berechnete Dicke dünner ist " +"als die Dicke der oberen Schale, werden die Schichten der oberen Schale " +"erhöht." + +msgid "Top solid layers" +msgstr "Obere massive Schichten" + +msgid "Top shell thickness" +msgstr "Dicke der oberen Schale" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"Die Anzahl der oberen festen Schichten wird beim Slicen erhöht, wenn die " +"obere Schalenstärke dünner als dieser Wert ist. Dies kann verhindern, dass " +"die Schale zu dünn wird, wenn eine geringe Schichthöhe verwendet wird. 0 " +"bedeutet, dass diese Einstellung deaktiviert ist und die Dicke der oberen " +"Schale absolut durch die oberen Schalenschichten bestimmt wird." + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Eilgeschwindigkeit, wenn nicht extrudiert wird." + +msgid "Wipe while retracting" +msgstr "Während des Rückzugs wischen" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Bewegen Sie die Düse beim Zurückziehen entlang des letzten Extrusionsweges, " +"um ausgetretenes Material an der Düse zu reinigen. Dies kann die Bildung von " +"Tropfen an einem neuen Teil nach der Fahrt minimieren." + +msgid "Wipe Distance" +msgstr "Wischabstand" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"Beschreibt, wie lange die Düse entlang des letzten Pfades bewegt wird, wenn " +"zurückgezogen wird. \n" +"\n" +"Je nachdem, wie lange die Wischoperation dauert, wie schnell und wie lange " +"die Einstellungen für den Extruder-/Filamentrückzug sind, kann ein " +"Rückzugsbefehl erforderlich sein, um das verbleibende Filament " +"zurückzuziehen. \n" +"\n" +"Wenn ein Wert in der Einstellung \"Rückzugsmenge vor dem Wischen\" unten " +"angegeben ist, wird ein überschüssiger Rückzug vor dem Wischen ausgeführt, " +"ansonsten wird er danach ausgeführt." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"The Wiping Tower kann verwendet werden, um Rückstände auf der Düse zu " +"entfernen und den Kammerdruck im Inneren der Düse zu stabilisieren, um " +"Erscheinungsdefekte beim Drucken von Objekten zu vermeiden." + +msgid "Purging volumes" +msgstr "Reinigungsvolumen" + +msgid "Flush multiplier" +msgstr "Multiplikator der Düsenreinigung" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"Das tatsächliche Reinigungsvolumen entspricht dem Wert des " +"Reinigungsmultiplikators multipliziert mit den in der Tabelle angegebenen " +"Reinigungsvolumen." + +msgid "Prime volume" +msgstr "Reinigungsvolumen" + +msgid "The volume of material to prime extruder on tower." +msgstr "Das Volumen des Materials, das der Extruder am Turm entladen soll." + +msgid "Width of prime tower" +msgstr "Breite des Reinigungsturms." + +msgid "Wipe tower rotation angle" +msgstr "Winkel der Reinigungsturmrotation" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Winkel der Reinigungsturmrotation in Bezug auf die X-Achse." + +msgid "Stabilization cone apex angle" +msgstr "Winkel des Stabilisierungskegels" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Winkel an der Spitze des Kegels, der zum Stabilisieren des Reinigungsturms " +"verwendet wird. Ein größerer Winkel bedeutet eine breitere Basis." + +msgid "Wipe tower purge lines spacing" +msgstr "Wischabstand der Reinigungsturmpurges" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Abstand der Reinigungsturmpurges." + +msgid "Maximum wipe tower print speed" +msgstr "Maximale Druckgeschwindigkeit des Reinigungsturms" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"Die maximale Druckgeschwindigkeit beim Reinigen im Reinigungsturm und beim " +"Drucken der dünnen Schichten des Reinigungsturms. Beim Reinigen wird, wenn " +"die Geschwindigkeit des dünnen Infill oder die berechnete Geschwindigkeit " +"aus der maximalen Volumengeschwindigkeit des Filaments niedriger ist, die " +"niedrigste verwendet.\n" +"\n" +"Beim Drucken der dünnen Schichten wird, wenn die Geschwindigkeit des inneren " +"Umfangs oder die berechnete Geschwindigkeit aus der maximalen " +"Volumengeschwindigkeit des Filaments niedriger ist, die niedrigste " +"verwendet.\n" +"\n" +"Das Erhöhen dieser Geschwindigkeit kann die Stabilität des Turms " +"beeinträchtigen sowie die Kraft erhöhen, mit der die Düse auf mögliche " +"Klumpen trifft, die sich auf dem Reinigungsturm gebildet haben.\n" +"\n" +"Bevor Sie diesen Parameter über den Standardwert von 90 mm/s erhöhen, " +"stellen Sie sicher, dass Ihr Druckerzuverlässig bei den erhöhten " +"Geschwindigkeiten Brücken drucken kann und dass das Auslaufen beim " +"Werkzeugwechsel gut kontrolliert wird.\n" +"\n" +"Für die äußeren Umfänge des Reinigungsturms wird die Geschwindigkeit des " +"inneren Umfangs unabhängig von dieser Einstellung verwendet." + +msgid "Wipe tower extruder" +msgstr "Reinigungsturm-Extruder" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"Der Extruder, der zum Drucken des Umfangs des Reinigungsturms verwendet " +"wird. Auf 0 setzen, um den verfügbaren Extruder zu verwenden (nicht " +"lösliches Filament wird bevorzugt)." + +msgid "Purging volumes - load/unload volumes" +msgstr "Reinigungsvolumen - Lade-/Entladevolumen" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"Dieser Vektor speichert die erforderlichen Volumina zum Wechseln von / zu " +"jedem Werkzeug, das auf dem Reinigungsturm verwendet wird. Diese Werte " +"werden verwendet, um die Erstellung der vollständigen Reinigungsvolumina " +"unten zu vereinfachen." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Die Reinigung nach dem Filamentwechsel erfolgt innerhalb der Objektfüllung. " +"Dies kann die Abfallmenge verringern und die Druckzeit verkürzen. Wenn die " +"Wände mit transparentem Filament gedruckt werden, sind die unterschiedlichen " +"Farben der Füllung sichtbar. Die Funktion ist nur dann wirksam, wenn der " +"Reinigungsturm aktiviert ist." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"Die Reinigung nach dem Filamentwechsel erfolgt innerhalb der " +"Stützstrukturen. Dies kann die Abfallmenge verringern und die Druckzeit " +"verkürzen. Die Funktion ist nur dann wirksam, wenn der Reinigungsturm " +"aktiviert ist." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Dieses Objekt wird verwendet, um die Düse nach einem Filamentwechsel zu " +"reinigen, Filament zu sparen und die Druckzeit zu verkürzen. Die Farben der " +"Objekte werden dadurch gemischt. Dies wird nur wirksam, wenn der " +"Reinigungsturm aktiviert ist." + +msgid "Maximal bridging distance" +msgstr "Maximale Brückenlänge" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "Maximaler Abstand zwischen Stützstrukturen auf dünnem Infill." + +msgid "X-Y hole compensation" +msgstr "X-Y-Loch-Kompensation" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Die Löcher des Objekts werden in der XY-Ebene um den eingestellten Wert " +"vergrößert oder verkleinert. Ein positiver Wert macht die Löcher größer, ein " +"negativer Wert macht die Löcher kleiner. Diese Funktion wird verwendet, um " +"die Größe geringfügig anzupassen, wenn Objekte Montageprobleme haben." + +msgid "X-Y contour compensation" +msgstr "X-Y-Konturkompensation" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"Die Kontur von Objekten wird in der XY-Ebene um den eingestellten Wert " +"vergrößert oder verkleinert. Positive Werte vergrößern Konturen, negative " +"Werte verkleinern Konturen. Diese Funktion wird verwendet, um die Größe " +"geringfügig anzupassen, wenn Objekte Probleme bei der Montage haben." + +msgid "Convert holes to polyholes" +msgstr "Konvertiere Löcher zu Polyholes" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Suchen Sie nach fast kreisförmigen Löchern, die sich über mehr als eine " +"Schicht erstrecken, und konvertieren Sie die Geometrie in Polyholes. " +"Verwenden Sie die Düsengröße und den (größten) Durchmesser, um das Polyhole " +"zu berechnen.\n" +"Siehe http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "ab Wert erkenne Polyhole" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Maximale Abweichung eines Punktes vom geschätzten Radius des Kreises.\n" +"Da Zylinder oft als Dreiecke unterschiedlicher Größe exportiert werden, " +"liegen die Punkte möglicherweise nicht auf dem Umfang des Kreises. Diese " +"Einstellung ermöglicht es Ihnen, die Erkennung zu erweitern.\n" +"In mm oder in % des Radius." + +msgid "Polyhole twist" +msgstr "Polyhole verdrehen" + +msgid "Rotate the polyhole every layer." +msgstr "Polyhole in jeder Schicht drehen." + +msgid "G-code thumbnails" +msgstr "G-Code Vorschaubilder" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Bildgrößen, die in eine .gcode und .sl1 / .sl1s-Datei gespeichert werden " +"sollen, im folgenden Format: „XxY, XxY, …" + +msgid "Format of G-code thumbnails" +msgstr "Format der G-Code-Vorschaubilder" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Format der G-Code-Vorschaubilder: PNG für beste Qualität, JPG für kleinste " +"Größe, QOI für Firmware mit geringem Speicherbedarf" + +msgid "Use relative E distances" +msgstr "Relative Extrusion" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"Relative Extrusion wird empfohlen, wenn die Option \"label_objects\" " +"verwendet wird. Einige Extruder arbeiten besser mit dieser Option " +"deaktiviert (absoluter Extrusionsmodus). Der Reinigungsturm ist nur mit dem " +"relativen Modus kompatibel. Es wird auf den meisten Druckern empfohlen. " +"Standardmäßig ist es aktiviert." + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"Der klassische Wandgenerator erzeugt Wände mit konstanter Extrusionsbreite, " +"wobei für sehr dünne Bereiche die Lückenfüllung verwendet wird. Die Arachne-" +"Engine erzeugt Wände mit variabler Extrusionsbreite." + +msgid "Classic" +msgstr "Klassisch" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Länge des Wandübergangs" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Beim Übergang zwischen verschiedenen Wandstärken, wenn das Teil dünner wird, " +"wird eine bestimmte Menge an Platz zum Trennen oder Verbinden der " +"Wandsegmente zugewiesen. Wird als Prozentsatz des Düsendurchmessers " +"ausgedrückt." + +msgid "Wall transitioning filter margin" +msgstr "Filter für die Größe des Wandübergangs" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Verhindern Sie das Hin- und Herwechseln zwischen einer zusätzlichen Wand und " +"einer weniger. Diese Spanne erweitert den Bereich der Extrusionsbreiten auf " +"[Mindestwandbreite - Spanne, 2 * Mindestwandbreite + Spanne]. Durch die " +"Vergrößerung dieses Bereichs wird die Anzahl der Übergänge reduziert, was " +"die Anzahl der Extrusionsstarts/-stopps und die Verfahrzeit verringert. Eine " +"große Variation der Extrusionsbreite kann jedoch zu Unter- oder " +"Überextrusionsproblemen führen. Er wird als Prozentsatz des " +"Düsendurchmessers ausgedrückt" + +msgid "Wall transitioning threshold angle" +msgstr "Schwellenwinkel für den Wandübergang" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Wenn Übergänge zwischen einer geraden und einer ungeraden Anzahl von Wänden " +"erstellt werden sollen. Eine Keilform mit einem größeren Winkel als dieser " +"Einstellung hat keine Übergänge und es werden keine Wände in der Mitte " +"gedruckt, um den verbleibenden Raum zu füllen. Wenn Sie diese Einstellung " +"verringern, wird die Anzahl und Länge der mittleren Wände reduziert, was " +"jedoch Lücken oder Überextrusion verursachen kann." + +msgid "Wall distribution count" +msgstr "Anzahl der Wände" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"Die Anzahl der Wände, von der Mitte aus gezählt, über die die Veränderung " +"verteilt werden muss. Niedrigere Werte bedeuten, dass sich die Außenwände " +"nicht in der Breite verändern." + +msgid "Minimum feature size" +msgstr "Minimale Merkmalgröße" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Mindestdicke für dünne Features. Modellfeatures, die dünner als dieser Wert " +"sind, werden nicht gedruckt, während Features, die dicker als die " +"Mindestfeaturegröße sind, auf die Mindestwandbreite verbreitert werden. " +"Bezogen als Prozentsatz auf Düsendurchmesser." + +msgid "Minimum wall length" +msgstr "Minimale Wandlänge" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"Passen Sie diesen Wert an, um zu verhindern, dass kurze, offene Wände " +"gedruckt werden, was die Druckzeit erhöhen könnte. Höhere Werte entfernen " +"mehr und längere Wände.\n" +"\n" +"HINWEIS: Die unteren und oberen Oberflächen werden von diesem Wert nicht " +"beeinflusst, um visuelle Lücken an der Außenseite des Modells zu vermeiden. " +"Passen Sie die \"One wall threshold\" in den erweiterten Einstellungen unten " +"an, um die Empfindlichkeit dessen anzupassen, was als obere Oberfläche " +"angesehen wird. \"One wall threshold\" ist nur sichtbar, wenn diese " +"Einstellung über den Standardwert von 0,5 gesetzt ist oder wenn einzelne " +"Wände für die Oberfläche aktiviert sind." + +msgid "First layer minimum wall width" +msgstr "Erste Schicht minimale Wandbreite" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"Die minimale Wandbreite, die für die erste Schicht verwendet werden soll, " +"sollte auf die gleiche Größe wie die Düse eingestellt werden. Diese " +"Anpassung soll die Haftung verbessern." + +msgid "Minimum wall width" +msgstr "Minimale Wandbreite" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Breite der Wand, die dünne Features (entsprechend der Mindest-Featuregröße) " +"des Modells ersetzen wird. Wenn die minimale Wandbreite dünner ist als die " +"Dicke des Features, wird die Wand so dick wie das Feature selbst. Wird als " +"Prozentsatz des Düsendurchmessers angegeben." + +msgid "Detect narrow internal solid infill" +msgstr "Erkennen einer schmalen internen soliden Füllung" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Mit dieser Option wird ein schmaler innerer Füllbereich automatisch erkannt. " +"Wenn diese Option aktiviert ist, wird ein konzentrisches Muster für den " +"Bereich verwendet, um den Druck zu beschleunigen. Andernfalls wird " +"standardmäßig ein geradliniges Muster verwendet." + +msgid "invalid value " +msgstr "Ungültiger Wert" + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Ungültiger Wert, wenn der Spiral-Vase-Modus aktiviert ist: " + +msgid "too large line width " +msgstr "Zu große Linienbreite" + +msgid " not in range " +msgstr "nicht im Bereich" + +msgid "Minimum save" +msgstr "Minimale Speicherung" + +msgid "export 3mf with minimum size." +msgstr "Exportieren Sie 3mf mit minimaler Größe." + +msgid "No check" +msgstr "Keine Überprüfung" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"Führe keine Gültigkeitsprüfungen durch, wie beispielsweise die Überprüfung " +"von G-Code-Pfadkonflikten." + +msgid "Ensure on bed" +msgstr "Auf dem Bett stellen" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Heben Sie das Objekt über das Bett, wenn es teilweise darunter liegt. " +"Standardmäßig deaktiviert" + +msgid "Orient Options" +msgstr "Orientierungsoptionen" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "Orientierungsoptionen: 0-deaktiviert; 1-aktiviert; andere-automatisch" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Rotationswinkel um die Z-Achse in Grad." + +msgid "Rotate around Y" +msgstr "Rotieren um Y" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Rotationswinkel um die Y-Achse in Grad." + +msgid "Data directory" +msgstr "Datenverzeichnis" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Laden und Speichern von Einstellungen im angegebenen Verzeichnis. Dies ist " +"nützlich, um verschiedene Profile beizubehalten oder Konfigurationen aus " +"einem Netzwerkspeicher einzubeziehen." + +msgid "Load custom gcode" +msgstr "Lade benutzerdefinierten G-Code" + +msgid "Load custom gcode from json" +msgstr "Lade benutzerdefinierten G-Code aus json" + +msgid "Current z-hop" +msgstr "Aktuelles Z-Hop" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "Enthält den Z-Hop am Anfang des benutzerdefinierten G-Codes." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Position des Extruders am Anfang des benutzerdefinierten G-Codes. Wenn der " +"benutzerdefinierte G-Code irgendwohin reist, sollte er in diese Variable " +"schreiben, damit PrusaSlicer weiß, wo er herkommt, wenn er die Kontrolle " +"wiedererlangt." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"Rückzugszustand am Anfang des benutzerdefinierten G-Codes. Wenn der " +"benutzerdefinierte G-Code die Extruderachse bewegt, sollte er in diese " +"Variable schreiben, damit PrusaSlicer den Rückzug korrekt durchführt, wenn " +"er die Kontrolle wiedererlangt." + +msgid "Extra deretraction" +msgstr "Zusätzlicher Rückzug" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "Derzeit geplantes zusätzliches Extruder-Priming nach dem Rückzug." + +msgid "Current extruder" +msgstr "Aktueller Extruder" + +msgid "Zero-based index of currently used extruder." +msgstr "Nullbasierter Index des aktuell verwendeten Extruders." + +msgid "Current object index" +msgstr "Aktueller Objektindex" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Spezifisch für das sequentielle Drucken. Nullbasierter Index des aktuell " +"gedruckten Objekts." + +msgid "Has wipe tower" +msgstr "Hat Reinigungsturm" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Ob ein Reinigungsturm im Druck generiert wird oder nicht." + +msgid "Initial extruder" +msgstr "Erster Extruder" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Nullbasierter Index des ersten Extruders, der im Druck verwendet wird. " +"Gleichbedeutend mit initial_tool." + +msgid "Initial tool" +msgstr "Erstes Werkzeug" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Nullbasierter Index des ersten Extruders, der im Druck verwendet wird. " +"Gleichbedeutend mit initial_extruder." + +msgid "Is extruder used?" +msgstr "Wird der Extruder verwendet?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" +"Vektor von Booleschen Werten, die angeben, ob ein bestimmter Extruder im " +"Druck verwendet wird." + +msgid "Volume per extruder" +msgstr "Volumen pro Extruder" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" +"Gesamtes Filamentvolumen, das pro Extruder während des gesamten Drucks " +"extrudiert wird." + +msgid "Total toolchanges" +msgstr "Gesamte Anzahl der Werkzeugwechsel" + +msgid "Number of toolchanges during the print." +msgstr "Anzahl der Werkzeugwechsel während des Drucks." + +msgid "Total volume" +msgstr "Gesamtvolumen" + +msgid "Total volume of filament used during the entire print." +msgstr "Gesamtvolumen des während des gesamten Drucks verwendeten Filaments." + +msgid "Weight per extruder" +msgstr "Gewicht pro Extruder" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" +"Gewicht pro Extruder, das während des gesamten Drucks extrudiert wurde. " +"Berechnet aus dem Filamentdichtewert in den Filament-Einstellungen." + +msgid "Total weight" +msgstr "Gesamtgewicht" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" +"Gesamtgewicht des Drucks. Berechnet aus dem Filamentdichtewert in den " +"Filament-Einstellungen." + +msgid "Total layer count" +msgstr "Gesamtanzahl der Schichten" + +msgid "Number of layers in the entire print." +msgstr "Anzahl der Schichten im gesamten Druck." + +msgid "Number of objects" +msgstr "Anzahl der Objekte" + +msgid "Total number of objects in the print." +msgstr "Gesamtanzahl der Objekte im Druck." + +msgid "Number of instances" +msgstr "Anzahl der Instanzen" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "Gesamtanzahl der Objektinstanzen im Druck, summiert über alle Objekte." + +msgid "Scale per object" +msgstr "Skalierung pro Objekt" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"Enthält eine Zeichenfolge mit Informationen darüber, welche Skalierung auf " +"die einzelnen Objekte angewendet wurde. Die Indizierung der Objekte ist " +"nullbasiert (das erste Objekt hat den Index 0).\n" +"Beispiel: 'x:100% y:50% z:100'." + +msgid "Input filename without extension" +msgstr "Eingabedateiname ohne Erweiterung" + +msgid "Source filename of the first object, without extension." +msgstr "Quelldateiname des ersten Objekts, ohne Erweiterung." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" +"Der Vektor hat zwei Elemente: x- und y-Koordinate des Punktes. Werte in mm." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" +"Der Vektor hat zwei Elemente: x- und y-Dimension der Begrenzungsbox. Werte " +"in mm." + +msgid "First layer convex hull" +msgstr "Konvexe Hülle der ersten Schicht" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"Vektor von Punkten der konvexen Hülle der ersten Schicht. Jedes Element hat " +"das folgende Format: '[x, y]' (x und y sind Gleitkommazahlen in mm)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "Untere linke Ecke der Begrenzungsbox der ersten Schicht" + +msgid "Top-right corner of first layer bounding box" +msgstr "Obere rechte Ecke der Begrenzungsbox der ersten Schicht" + +msgid "Size of the first layer bounding box" +msgstr "Größe der Begrenzungsbox der ersten Schicht" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "Untere linke Ecke der Begrenzungsbox des Druckbetts" + +msgid "Top-right corner of print bed bounding box" +msgstr "Obere rechte Ecke der Begrenzungsbox des Druckbetts" + +msgid "Size of the print bed bounding box" +msgstr "Größe der Begrenzungsbox des Druckbetts" + +msgid "Timestamp" +msgstr "Zeitstempel" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "Zeichenfolge, die die aktuelle Zeit im Format yyyyMMdd-hhmmss enthält." + +msgid "Day" +msgstr "Tag" + +msgid "Hour" +msgstr "Stunde" + +msgid "Minute" +msgstr "Minute" + +msgid "Print preset name" +msgstr "Name des Druckvorgaben" + +msgid "Name of the print preset used for slicing." +msgstr "Name der Druckvorgabe, die zum Slicen verwendet wird." + +msgid "Filament preset name" +msgstr "Name des Filamentvorgaben" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Name der Filamentvorgabe, die zum Slicen verwendet wird. Die Variable ist " +"ein Vektor, der einen Namen für jeden Extruder enthält." + +msgid "Printer preset name" +msgstr "Name des Druckervorgaben" + +msgid "Name of the printer preset used for slicing." +msgstr "Name der Druckervorgabe, die zum Slicen verwendet wird." + +msgid "Physical printer name" +msgstr "Name des physischen Druckers" + +msgid "Name of the physical printer used for slicing." +msgstr "Name des physischen Druckers, der zum Slicen verwendet wird." + +msgid "Layer number" +msgstr "Schichtnummer" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" +"Index der aktuellen Schicht. Einsbasiert (d.h. die erste Schicht ist Nummer " +"1)." + +msgid "Layer z" +msgstr "Layer z" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Höhe der aktuellen Schicht über dem Druckbett, gemessen an der Oberseite der " +"Schicht." + +msgid "Maximal layer z" +msgstr "Maximale Schichtdicke z" + +msgid "Height of the last layer above the print bed." +msgstr "Höhe der letzten Schicht über dem Druckbett." + +msgid "Filament extruder ID" +msgstr "Extruder-ID des Filaments" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "Die aktuelle Extruder-ID. Gleichbedeutend mit current_extruder." + +msgid "Error in zip archive" +msgstr "Fehler im Zip-Archiv" + +msgid "Generating walls" +msgstr "Generieren von Wänden" + +msgid "Generating infill regions" +msgstr "Generieren von Füllbereichen" + +msgid "Generating infill toolpath" +msgstr "Füllbewegungen generieren" + +msgid "Detect overhangs for auto-lift" +msgstr "Erkennen der Überhänge für das automatische Anheben" + +msgid "Generating support" +msgstr "Generieren von Stützstrukturen" + +msgid "Checking support necessity" +msgstr "Überprüfung der Notwendigkeit von Stützen" + +msgid "floating regions" +msgstr "schwebende Regionen" + +msgid "floating cantilever" +msgstr "schwebender Überhang." + +msgid "large overhangs" +msgstr "Großer Überhang." + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Es scheint, dass das Objekt %s %s hat. Bitte orientieren Sie das Objektneu " +"oder aktivieren Sie die Support-Generierung." + +msgid "Optimizing toolpath" +msgstr "Optimieren des Werkzeugwegs" + +msgid "Slicing mesh" +msgstr "Slicen des Netzes" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"Es wurden keine Schichten erkannt. Möglicherweise möchten Sie Ihre STL-" +"Datei(en) reparieren oder ihre Größe oder Dicke überprüfen und es erneut " +"versuchen.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"Die XY-Größenkompensation eines Objekts wird nicht verwendet, da es auch " +"farblich lackiert wurde.\n" +"Die XY-Größenkompensation kann nicht mit Farbmalerei kombiniert werden." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Stützen: Werkzeugpfad auf Ebene %d erzeugen" + +msgid "Support: detect overhangs" +msgstr "Stützen: Überhänge erkennen" + +msgid "Support: generate contact points" +msgstr "Stützen: Kontaktstellen erstellen" + +msgid "Support: propagate branches" +msgstr "Stützen: Zweige vermehren" + +msgid "Support: draw polygons" +msgstr "Stützen: Polygone zeichnen" + +msgid "Support: generate toolpath" +msgstr "Stützen: Werkzeugweg generieren" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Stützen: Polygone auf Ebene %d erzeugen" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Stützen: Löcher in Schicht %d repairieren" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Stützen: Verbreiten von Zweigen auf Ebene %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Unbekanntes Dateiformat: Die Eingabedatei muss die Endung .stl, .obj oder ." +"amf(.xml) haben." + +msgid "Loading of a model file failed." +msgstr "Das Laden der Modelldatei ist fehlgeschlagen." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "Die angegebene Datei konnte nicht gelesen werden, weil sie leer ist." + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Unbekanntes Dateiformat: Die Eingabedatei muss die Endung .3mf oder .zip.amf " +"haben." + +msgid "Canceled" +msgstr "Abgebrochen" + +msgid "load_obj: failed to parse" +msgstr "load_obj: konnte nicht analysiert werden" + +msgid "load mtl in obj: failed to parse" +msgstr "Laden von mtl in obj: konnte nicht analysiert werden" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "Die Datei enthält Polygone mit mehr als 4 Eckpunkten." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "Die Datei enthält Polygone mit weniger als 2 Eckpunkten." + +msgid "The file contains invalid vertex index." +msgstr "Die Datei enthält einen ungültigen Scheitelpunktindex." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Diese OBJ-Datei konnte nicht gelesen werden, da sie leer ist." + +msgid "Flow Rate Calibration" +msgstr "Kalibrierung der Flussrate" + +msgid "Max Volumetric Speed Calibration" +msgstr "Maximale volumetrische Geschwindigkeitskalibrierung" + +msgid "Manage Result" +msgstr "Ergebnis verwalten" + +msgid "Manual Calibration" +msgstr "Manuelle Kalibrierung" + +msgid "Result can be read by human eyes." +msgstr "Ergebnis kann mit bloßem Auge gelesen werden." + +msgid "Auto-Calibration" +msgstr "Automatische Kalibrierung" + +msgid "We would use Lidar to read the calibration result" +msgstr "Wie würden Lidar verwenden, um das Kalibrierungsergebnis zu lesen" + +msgid "Prev" +msgstr "Vorherige" + +msgid "Recalibration" +msgstr "Rekalibrierung" + +msgid "Calibrate" +msgstr "Kalibrieren" + +msgid "Finish" +msgstr "Fertig" + +msgid "How to use calibration result?" +msgstr "Wie wird das Kalibrierungsergebnis verwendet?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"Sie können den Flussdynamik-Kalibrierungsfaktor in der Materialbearbeitung " + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"Die aktuelle Firmware-Version des Druckers unterstützt keine Kalibrierung.\n" +"Bitte aktualisieren Sie die Drucker-Firmware." + +msgid "Calibration not supported" +msgstr "Kalibrierung nicht unterstützt" + +msgid "Error desc" +msgstr "Fehlerbeschreibung" + +msgid "Extra info" +msgstr "Extra Info" + +msgid "Flow Dynamics" +msgstr "Flussdynamik" + +msgid "Flow Rate" +msgstr "Flussrate" + +msgid "Max Volumetric Speed" +msgstr "Maximale volumetrische Geschwindigkeit" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Geben Sie bitte gültige Werte ein:\n" +"Startwert: >= %.1f\n" +"Endwert: <= %.1f\n" +"Endwert: > Startwert\n" +"Werteschritt: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "Der Name darf nicht leer sein." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "Die ausgewählte Voreinstellung: %s wurde nicht gefunden." + +msgid "The name cannot be the same as the system preset name." +msgstr "" +"Der Name darf nicht mit dem Namen der Systemvoreinstellung übereinstimmen." + +msgid "The name is the same as another existing preset name" +msgstr "" +"Der Name ist der gleiche wie ein anderer vorhandener Voreinstellungsname" + +msgid "create new preset failed." +msgstr "erstellen einer neuen Voreinstellung fehlgeschlagen." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Sind Sie sicher, dass Sie die aktuelle Kalibrierung abbrechen und zur " +"Startseite zurückkehren möchten?" + +msgid "No Printer Connected!" +msgstr "Kein Drucker verbunden!" + +msgid "Printer is not connected yet." +msgstr "Der Drucker ist noch nicht angeschlossen." + +msgid "Please select filament to calibrate." +msgstr "Bitte wählen Sie das Filament zur Kalibrierung aus." + +msgid "The input value size must be 3." +msgstr "Die Eingabewertgröße muss 3 sein." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"Dieser Maschinentyp kann nur 16 historische Ergebnisse pro Düse speichern. " +"Sie können die vorhandenen historischen Ergebnisse löschen und dann die " +"Kalibrierung starten. Oder Sie können die Kalibrierung fortsetzen, aber Sie " +"können keine neuen Kalibrierungshistorien erstellen. \n" +"Möchten Sie die Kalibrierung dennoch fortsetzen?" + +msgid "Connecting to printer..." +msgstr "Verbindung zum Drucker wird hergestellt..." + +msgid "The failed test result has been dropped." +msgstr "Das fehlgeschlagene Testergebnis wurde verworfen." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Flussdynamik-Kalibrierungsergebnis wurde auf dem Drucker gespeichert" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"Es gibt bereits ein historisches Kalibrierungsergebnis mit dem gleichen " +"Namen: %s. Nur eines der Ergebnisse mit dem gleichen Namen wird gespeichert. " +"Sind Sie sicher, dass Sie das historische Ergebnis überschreiben möchten?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"Dieser Maschinentyp kann nur %d historische Ergebnisse pro Düse speichern. " +"Dieses Ergebnis wird nicht gespeichert." + +msgid "Internal Error" +msgstr "Interner Fehler" + +msgid "Please select at least one filament for calibration" +msgstr "Bitte wählen Sie mindestens ein Filament zur Kalibrierung aus" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "Flussraten-Kalibrierungsergebnis wurde in Voreinstellung gespeichert" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"Maximale volumetrische Geschwindigkeitskalibrierungsergebnis wurde in " +"Voreinstellung gespeichert" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Wann benötigen Sie die Kalibrierung der Flussdynamik" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Wir haben jetzt die automatische Kalibrierung für verschiedene Filamente " +"hinzugefügt, die vollautomatisch ist und das Ergebnis wird in den Drucker " +"für die zukünftige Verwendung gespeichert. Sie müssen die Kalibrierung nur " +"in den folgenden begrenzten Fällen durchführen:\n" +"1. Wenn Sie ein neues Filament von verschiedenen Marken/Modellen einführen " +"oder das Filament feucht ist;\n" +"2. wenn die Düse abgenutzt ist oder durch eine neue ersetzt wird;\n" +"3. Wenn die maximale volumetrische Geschwindigkeit oder die Drucktemperatur " +"in der Filament-Einstellung geändert wird." + +msgid "About this calibration" +msgstr "Über diese Kalibrierung" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" +"Bitte finden Sie die Details zur Flussdynamik-Kalibrierung in unserem Wiki.\n" +"\n" +"Normalerweise ist die Kalibrierung nicht erforderlich. Wenn Sie einen Druck " +"mit einer einzigen Farbe/einem einzigen Material starten und die Option " +"\"Flussdynamik-Kalibrierung\" im Druckstartmenü aktiviert ist, folgt der " +"Drucker dem alten Weg, kalibriert das Filament vor dem Druck; Wenn Sie einen " +"Druck mit mehreren Farben/Materialien starten, verwendet der Drucker den " +"Standardkompensationsparameter für das Filament bei jedem Filamentwechsel, " +"was in den meisten Fällen zu einem guten Ergebnis führt.\n" +"\n" +"Bitte beachten Sie, dass es einige Fälle gibt, die die " +"Kalibrierungsergebnisse unzuverlässig machen können, wie z.B. unzureichende " +"Haftung auf dem Druckbett. Eine Verbesserung der Haftung kann durch Waschen " +"des Druckbetts oder Auftragen von Klebstoff erreicht werden. Weitere " +"Informationen zu diesem Thema finden Sie in unserem Wiki.\n" +"\n" +"Die Kalibrierungsergebnisse haben in unserem Test etwa 10 Prozent Jitter, " +"was dazu führen kann, dass das Ergebnis bei jeder Kalibrierung nicht genau " +"dasselbe ist. Wir untersuchen immer noch die Ursache, um mit neuen Updates " +"Verbesserungen vorzunehmen." + +msgid "When to use Flow Rate Calibration" +msgstr "Wann soll die Flussratenkalibrierung verwendet werden" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"Nach der Verwendung der Flussdynamik-Kalibrierung kann es immer noch zu " +"einigen Extrusionsproblemen kommen, wie z.B.:\n" +"1. Überextrusion: Überschüssiges Material auf Ihrem gedruckten Objekt, das " +"Klumpen oder Pickel bildet, oder die Schichten scheinen dicker als erwartet " + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Darüber hinaus ist die Flussratenkalibrierung für schäumende Materialien wie " +"LW-PLA, die in RC-Flugzeugen verwendet werden, von entscheidender Bedeutung. " +"Diese Materialien dehnen sich stark aus, wenn sie erhitzt werden, und die " +"Kalibrierung bietet eine nützliche Referenzflussrate." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"Die Flussratenkalibrierung misst das Verhältnis von erwartetem zu " +"tatsächlich extrudiertem Volumen. Die Standardeinstellung funktioniert gut " +"bei Bambu Lab-Druckern und offiziellen Filamenten, da sie vorab kalibriert " +"und feinabgestimmt wurden. Für ein normales Filament müssen Sie " +"normalerweise keine Flussratenkalibrierung durchführen, es sei denn, Sie " +"sehen immer noch die aufgeführten Mängel, nachdem Sie andere Kalibrierungen " +"durchgeführt haben. Weitere Details finden Sie im Wiki-Artikel." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Die automatische Flussratenkalibrierung nutzt die Micro-Lidar-Technologie " +"von Bambu Lab und misst die Kalibrierungsmuster direkt. Bitte beachten Sie " +"jedoch, dass die Wirksamkeit und Genauigkeit dieser Methode bei bestimmten " +"Materialtypen beeinträchtigt sein kann. Insbesondere Filamente, die " +"transparent oder halbtransparent, funkelnd oder hochreflektierend sind, sind " +"möglicherweise nicht für diese Kalibrierung geeignet und können weniger als " +"wünschenswerte Ergebnisse liefern.\n" +"\n" +"Die Kalibrierungsergebnisse können zwischen jeder Kalibrierung oder jedem " +"Filament variieren. Wir verbessern die Genauigkeit und Kompatibilität dieser " +"Kalibrierung jedoch im Laufe der Zeit durch Firmware-Updates.\n" +"\n" +"Vorsicht: Die Flussratenkalibrierung ist ein fortgeschrittener Prozess, der " +"nur von Personen durchgeführt werden sollte, die ihren Zweck und ihre " +"Auswirkungen vollständig verstehen. Eine falsche Verwendung kann zu " +"unterdurchschnittlichen Drucken oder zu Beschädigungen des Druckers führen. " +"Bitte lesen und verstehen Sie den Prozess sorgfältig, bevor Sie ihn " +"durchführen." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "" +"Wann Sie die Kalibrierung der maximalen volumetrischen Geschwindigkeit " +"benötigen" + +msgid "Over-extrusion or under extrusion" +msgstr "Überextrusion oder Unterextrusion" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"Maximale volumetrische Geschwindigkeitskalibrierung wird empfohlen, wenn Sie " +"mit drucken:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "" +"Material mit signifikanter thermischer Schrumpfung/Expansion, wie z.B..." + +msgid "materials with inaccurate filament diameter" +msgstr "Materialien mit ungenauem Filamentdurchmesser" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "Wir haben den besten Flussdynamik-Kalibrierungsfaktor gefunden" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Ein Teil der Kalibrierung ist fehlgeschlagen! Sie können die Platte reinigen " +"und es erneut versuchen. Das fehlgeschlagene Testergebnis wird verworfen." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Wir empfehlen Ihnen, Marke, Material, Typ und sogar Feuchtigkeitsgehalt in " +"den Namen aufzunehmen" + +msgid "Failed" +msgstr "Fehlgeschlagen" + +msgid "Please enter the name you want to save to printer." +msgstr "" +"Bitte geben Sie den Namen ein, unter dem Sie ihn auf dem Drucker speichern " +"möchten." + +msgid "The name cannot exceed 40 characters." +msgstr "Der Name darf 40 Zeichen nicht überschreiten." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Es wird nur eines der Ergebnisse mit demselben Namen gespeichert. Sind Sie " +"sicher, dass Sie die anderen Ergebnisse überschreiben möchten?" + +msgid "Please find the best line on your plate" +msgstr "Bitte finden Sie die beste Linie auf Ihrer Platte" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Bitte finden Sie die Ecke mit dem perfekten Extrusionsgrad" + +msgid "Input Value" +msgstr "Eingabewert" + +msgid "Save to Filament Preset" +msgstr "Speichern in Filament-Voreinstellung" + +msgid "Preset" +msgstr "Voreinstellung" + +msgid "Record Factor" +msgstr "Aufzeichnungsfaktor" + +msgid "We found the best flow ratio for you" +msgstr "Wir haben das beste Flussverhältnis für Sie gefunden" + +msgid "Flow Ratio" +msgstr "Durchflussverhältnis" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Bitte geben Sie einen gültigen Wert ein (0,0 < Flussverhältnis < 2,0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "" +"Bitte geben Sie den Namen der Voreinstellung ein, die Sie speichern möchten." + +msgid "Calibration1" +msgstr "Kalibrierung1" + +msgid "Calibration2" +msgstr "Kalibrierung2" + +msgid "Please find the best object on your plate" +msgstr "Bitte finden Sie das beste Objekt auf Ihrer Platte" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Füllen Sie den Wert über dem Block mit der glattesten Oberfläche aus" + +msgid "Skip Calibration2" +msgstr "Überspringen Sie die Kalibrierung2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "Flussverhältnis: %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Bitte wählen Sie einen Block mit glattester Oberfläche" + +msgid "Please choose a block with smoothest top surface." +msgstr "Bitte wählen Sie einen Block mit glattester Oberfläche." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "" +"Bitte geben Sie einen gültigen Wert ein (0 <= Maximale volumetrische " +"Geschwindigkeit <= 60)" + +msgid "Calibration Type" +msgstr "Kalibrierungstyp" + +msgid "Complete Calibration" +msgstr "Komplette Kalibrierung" + +msgid "Fine Calibration based on flow ratio" +msgstr "Feinkalibrierung basierend auf dem Flussverhältnis" + +msgid "Title" +msgstr "Titel" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Ein Testmodell wird gedruckt. Bitte reinigen Sie die Bauplatte und legen Sie " +"sie vor der Kalibrierung wieder auf das Heizbett." + +msgid "Printing Parameters" +msgstr "Druckparameter" + +msgid "Plate Type" +msgstr "Druckbetttyp" + +msgid "filament position" +msgstr "Filamentposition" + +msgid "External Spool" +msgstr "Externe Spule" + +msgid "Filament For Calibration" +msgstr "Filament zur Kalibrierung" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Tipps für Kalibrierungsmaterial:\n" +"- Materialien, die dieselbe Heizbetttemperatur haben können\n" +"- Verschiedene Filamentmarken und -familien (Marke = Bambu, Familie = Basic, " +"Matte)" + +msgid "Pattern" +msgstr "Pattern" + +msgid "Method" +msgstr "Methode" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s ist nicht kompatibel mit %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "" +"TPU wird nicht für die automatische Flussdynamik-Kalibrierung unterstützt." + +msgid "Connecting to printer" +msgstr "Verbindung zum Drucker wird hergestellt" + +msgid "From k Value" +msgstr "vom k Wert" + +msgid "To k Value" +msgstr "bis zum k Wert" + +msgid "Step value" +msgstr "Schrittweite" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "Der Düsendurchmesser wurde aus den Druckereinstellungen synchronisiert" + +msgid "From Volumetric Speed" +msgstr "Vom volumetrischen Speed" + +msgid "To Volumetric Speed" +msgstr "zur volumetrischen Geschwindigkeit" + +msgid "Flow Dynamics Calibration Result" +msgstr "Flussdynamik-Kalibrierungsergebnis" + +msgid "New" +msgstr "Neu" + +msgid "No History Result" +msgstr "Kein historisches Ergebnis" + +msgid "Success to get history result" +msgstr "Ergebnis der Vergangenheit erfolgreich erhalten" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Erneuern der historischen Flussdynamik-Kalibrierungsdatensätze" + +msgid "Action" +msgstr "Aktivität" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "" +"Dieser Maschinentyp kann nur %d historische Ergebnisse pro Düse speichern." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Ändern der Flussdynamik-Kalibrierung" + +msgid "New Flow Dynamic Calibration" +msgstr "Neue Flussdynamik-Kalibrierung" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "Das Filament muss ausgewählt werden." + +msgid "Network lookup" +msgstr "Netzwerk durchsuchen" + +msgid "Address" +msgstr "IP Adresse" + +msgid "Hostname" +msgstr "Hostname" + +msgid "Service name" +msgstr "Service Name" + +msgid "OctoPrint version" +msgstr "OctoPrint Version" + +msgid "Searching for devices" +msgstr "Suche nach Geräten" + +msgid "Finished" +msgstr "Erledigt" + +msgid "Multiple resolved IP addresses" +msgstr "Mehrere aufgelöste IP-Adressen" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"Es gibt mehrere IP-Adressen, die zu Hostname %1% auflösen.\n" +"Bitte wählen Sie eine aus, die verwendet werden soll." + +msgid "PA Calibration" +msgstr "PA Kalibrierung" + +msgid "DDE" +msgstr "DDE" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "Extruder Typ" + +msgid "PA Tower" +msgstr "PA Turm" + +msgid "PA Line" +msgstr "PA Linie" + +msgid "PA Pattern" +msgstr "PA Muster" + +msgid "Start PA: " +msgstr "Start PA: " + +msgid "End PA: " +msgstr "Ende PA:" + +msgid "PA step: " +msgstr "PA Schritte:" + +msgid "Print numbers" +msgstr "Anzahl der Drucke" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Bitte geben Sie gültige Werte ein:\n" +"Start PA: >= 0.0\n" +"Ende PA: > Start PA\n" +"PA Schritt: >= 0.001" + +msgid "Temperature calibration" +msgstr "Temperatur Test" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "PCTG" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Filamenttyp" + +msgid "Start temp: " +msgstr "Starttemperatur" + +msgid "End temp: " +msgstr "Endtemperatur" + +msgid "Temp step: " +msgstr "Temp Schrittweite" + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Bitte geben Sie gültige Werte ein:\n" +"Starttemperatur: <= 350\n" +"Endtemperatur: >= 170\n" +"Starttemperatur > Endtemperatur + 5)" + +msgid "Max volumetric speed test" +msgstr "Test zur maximalen Volumengeschwindigkeit" + +msgid "Start volumetric speed: " +msgstr "Start-Volumengeschwindigkeit" + +msgid "End volumetric speed: " +msgstr "End-Volumengeschwindigkeit" + +msgid "step: " +msgstr "Schrittweite" + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Bitte geben Sie gültige Werte ein:\n" +"Start > 0 \n" +"Schritt >= 0\n" +"Ende > Start + Schritt)" + +msgid "VFA test" +msgstr "VFA TEST" + +msgid "Start speed: " +msgstr "Startgeschwindigkeit" + +msgid "End speed: " +msgstr "Endgeschwindigkeit" + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Bitte geben Sie gültige Werte ein:\n" +"Start > 10 \n" +"Schritt >= 0\n" +"Ende > Start + Schritt)" + +msgid "Start retraction length: " +msgstr "Start Rückzugslänge" + +msgid "End retraction length: " +msgstr "Ende Rückzugslänge" + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "Senden Sie G-Code an den Drucker-Host" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Mit folgendem Dateinamen auf den Drucker-Host hochladen:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "" +"Verwenden Sie bei Bedarf Schrägstriche (/) als Verzeichnistrennzeichen." + +msgid "Upload to storage" +msgstr "Hochladen in den Speicher" + +msgid "Switch to Device tab after upload." +msgstr "Wechseln Sie nach dem Hochladen zum Geräte-Tab." + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "" +"Der Dateiname für den Upload endet nicht mit \"%s\". Möchten Sie den Vorgang " +"fortsetzen?" + +msgid "Upload" +msgstr "Hochladen" + +msgid "Print host upload queue" +msgstr "Druck-Host-Upload-Warteschlange" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Fortschritt" + +msgid "Host" +msgstr "Host" + +msgctxt "OfFile" +msgid "Size" +msgstr "Größe" + +msgid "Filename" +msgstr "Dateiname" + +msgid "Cancel selected" +msgstr "Ausgewählten abbrechen" + +msgid "Show error message" +msgstr "Fehlermeldung Anzeigen" + +msgid "Enqueued" +msgstr "In Warteschlange" + +msgid "Uploading" +msgstr "Hochladen" + +msgid "Cancelling" +msgstr "Wird abgebrochen" + +msgid "Error uploading to print host" +msgstr "Fehler beim Hochladen zum Druck-Host" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "" +"Die boolesche Operation kann auf den ausgewählten Teilen nicht durchgeführt " +"werden" + +msgid "Mesh Boolean" +msgstr "Mesh-Boolesche Operation" + +msgid "Union" +msgstr "Vereinigen" + +msgid "Difference" +msgstr "Differenz" + +msgid "Intersection" +msgstr "Schnittmenge" + +msgid "Source Volume" +msgstr "Quellvolumen" + +msgid "Tool Volume" +msgstr "Werkzeugvolumen" + +msgid "Subtract from" +msgstr "Abziehen von" + +msgid "Subtract with" +msgstr "Abziehen mit" + +msgid "selected" +msgstr "Ausgewählt" + +msgid "Part 1" +msgstr "Teil 1" + +msgid "Part 2" +msgstr "Teil 2" + +msgid "Delete input" +msgstr "Eingabe löschen" + +msgid "Network Test" +msgstr "Netzwerktest" + +msgid "Start Test Multi-Thread" +msgstr "Starten Sie den Test mit mehreren Threads" + +msgid "Start Test Single-Thread" +msgstr "Starten Sie den Test mit einem Thread" + +msgid "Export Log" +msgstr "Protokoll exportieren" + +msgid "Snapmaker Orca Version:" +msgstr "Snapmaker Orca Version:" + +msgid "System Version:" +msgstr "System Version:" + +msgid "DNS Server:" +msgstr "DNS Server:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "Test Snapmaker Orca(GitHub)" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "Test Snapmaker Orca(GitHub):" + +msgid "Test Bing.com" +msgstr "Test Bing.com" + +msgid "Test bing.com:" +msgstr "Test bing.com:" + +msgid "Log Info" +msgstr "Protokoll Info" + +msgid "Select filament preset" +msgstr "Filament-Voreinstellung auswählen" + +msgid "Create Filament" +msgstr "Filament erstellen" + +msgid "Create Based on Current Filament" +msgstr "Erstellen Sie basierend auf dem aktuellen Filament" + +msgid "Copy Current Filament Preset " +msgstr "Aktuelle Filament-Voreinstellung kopieren" + +msgid "Basic Information" +msgstr "Grundlegende Informationen" + +msgid "Add Filament Preset under this filament" +msgstr "Filament-Voreinstellung unter diesem Filament hinzufügen" + +msgid "We could create the filament presets for your following printer:" +msgstr "" +"Sie könnten die Filament-Voreinstellungen für Ihren folgenden Drucker " +"erstellen:" + +msgid "Select Vendor" +msgstr "Hersteller auswählen" + +msgid "Input Custom Vendor" +msgstr "Benutzerdefinierten Hersteller eingeben" + +msgid "Can't find vendor I want" +msgstr "Ich kann den Hersteller, den ich möchte, nicht finden" + +msgid "Select Type" +msgstr "Typ auswählen" + +msgid "Select Filament Preset" +msgstr "Filament-Voreinstellung auswählen" + +msgid "Serial" +msgstr "Seriennummer" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "z.B. Basic, Matte, Silk, Marble" + +msgid "Filament Preset" +msgstr "Filament-Voreinstellung" + +msgid "Create" +msgstr "Erstellen" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Hersteller ist nicht ausgewählt, bitte Hersteller erneut auswählen." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" +"Benutzerdefinierter Hersteller ist nicht eingegeben, bitte " +"benutzerdefinierten Hersteller eingeben." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" oder \"Generic\" kann nicht als Hersteller für benutzerdefinierte " +"Filamente verwendet werden." + +msgid "Filament type is not selected, please reselect type." +msgstr "Filamenttyp ist nicht ausgewählt, bitte Filamenttyp erneut auswählen." + +msgid "Filament serial is not inputed, please input serial." +msgstr "" +"Filament-Seriennummer ist nicht eingegeben, bitte Seriennummer eingeben." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"In der Eingabe des Herstellers oder der Seriennummer des Filaments können " +"Escape-Zeichen vorhanden sein. Bitte löschen und erneut eingeben." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Alle Eingaben im benutzerdefinierten Hersteller oder in der Seriennummer " +"bestehen aus Leerzeichen. Bitte erneut eingeben." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "Der Hersteller kann keine Zahl sein. Bitte erneut eingeben." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"Sie haben noch keinen Drucker oder keine Voreinstellung ausgewählt. Bitte " +"wählen Sie mindestens einen aus." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"Der Filamentname %s, den Sie erstellt haben, existiert bereits. \n" +"Wenn Sie mit der Erstellung fortfahren, wird die erstellte Voreinstellung " +"mit ihrem vollständigen Namen angezeigt. Möchten Sie fortfahren?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "" +"Einige vorhandene Voreinstellungen konnten nicht erstellt werden, wie " +"folgt:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Möchten Sie es überschreiben?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"Wir würden die Voreinstellungen als \"Hersteller Typ Seriennummer @Drucker, " +"den Sie ausgewählt haben\" umbenennen. \n" +"Um Voreinstellungen für weitere Drucker hinzuzufügen, gehen Sie bitte zur " +"Druckerauswahl" + +msgid "Create Printer/Nozzle" +msgstr "Drucker/Düse erstellen" + +msgid "Create Printer" +msgstr "Drucker erstellen" + +msgid "Create Nozzle for Existing Printer" +msgstr "Düse für vorhandenen Drucker erstellen" + +msgid "Create from Template" +msgstr "Aus Vorlage erstellen" + +msgid "Create Based on Current Printer" +msgstr "Erstellen Sie basierend auf dem aktuellen Drucker" + +msgid "Import Preset" +msgstr "Voreinstellung importieren" + +msgid "Create Type" +msgstr "Typ erstellen" + +msgid "The model is not found, place reselect vendor." +msgstr "Das Modell ist nicht gefunden, bitte Hersteller erneut auswählen." + +msgid "Select Model" +msgstr "Modell auswählen" + +msgid "Select Printer" +msgstr "Drucker auswählen" + +msgid "Input Custom Model" +msgstr "Benutzerdefiniertes Modell eingeben" + +msgid "Can't find my printer model" +msgstr "Ich kann mein Druckermodell nicht finden" + +msgid "Rectangle" +msgstr "Rechteck" + +msgid "Printable Space" +msgstr "Druckbarer Raum" + +msgid "Hot Bed STL" +msgstr "Hot Bed STL" + +msgid "Load stl" +msgstr "STL laden" + +msgid "Hot Bed SVG" +msgstr "Hot Bed SVG" + +msgid "Load svg" +msgstr "SVG laden" + +msgid "Max Print Height" +msgstr "Maximale Druckhöhe" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "Die Datei überschreitet %d MB, bitte erneut importieren." + +msgid "Exception in obtaining file size, please import again." +msgstr "Ausnahme beim Abrufen der Dateigröße, bitte erneut importieren." + +msgid "Preset path is not find, please reselect vendor." +msgstr "Voreinstellungspfad nicht gefunden, bitte Hersteller erneut auswählen." + +msgid "The printer model was not found, please reselect." +msgstr "Das Druckermodell wurde nicht gefunden, bitte erneut auswählen." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "Der Düsendurchmesser ist nicht gefunden, bitte erneut auswählen." + +msgid "The printer preset is not found, place reselect." +msgstr "Die Druckervoreinstellung ist nicht gefunden, bitte erneut auswählen." + +msgid "Printer Preset" +msgstr "Druckervoreinstellung" + +msgid "Filament Preset Template" +msgstr "Filament-Vorlagenvoreinstellung" + +msgid "Deselect All" +msgstr "Alle abwählen" + +msgid "Process Preset Template" +msgstr "Prozess Vorlagen Voreinstellung" + +msgid "Back Page 1" +msgstr "Zurück Seite 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Sie haben noch nicht ausgewählt, welche Druckervoreinstellung erstellt " +"werden soll. Bitte wählen Sie den Hersteller und das Modell des Druckers" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"Sie haben eine ungültige Eingabe im Bereich des druckbaren Bereichs auf der " +"ersten Seite eingegeben. Bitte überprüfen Sie es, bevor Sie es erstellen." + +msgid "The custom printer or model is not inputed, place input." +msgstr "" +"Der benutzerdefinierte Drucker oder das Modell ist nicht eingegeben, bitte " +"eingeben." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"Die von Ihnen erstellte Druckervoreinstellung hat bereits eine " +"Voreinstellung mit dem gleichen Namen. Möchten Sie es überschreiben?\n" +"\tJa: Überschreiben Sie die Druckervoreinstellung mit dem gleichen Namen, " +"und Filament- und Prozessvoreinstellungen mit dem gleichen Voreinstellungs- " +"und Filament- und Prozessvornamen werden neu erstellt \n" +"und Filament- und Prozessvoreinstellungen ohne den gleichen " +"Voreinstellungsnamen werden beibehalten.\n" +"\tAbbrechen: Erstellen Sie keine Voreinstellung, kehren Sie zur Erstellungs-" +"Schnittstelle zurück." + +msgid "You need to select at least one filament preset." +msgstr "Sie müssen mindestens eine Filament-Voreinstellung auswählen." + +msgid "You need to select at least one process preset." +msgstr "Sie müssen mindestens eine Prozess-Voreinstellung auswählen." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Erstellen von Filament-Voreinstellungen fehlgeschlagen. Wie folgt:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "Erstellen von Prozess-Voreinstellungen fehlgeschlagen. Wie folgt:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Hersteller nicht gefunden, bitte erneut auswählen." + +msgid "Current vendor has no models, please reselect." +msgstr "Der aktuelle Hersteller hat keine Modelle, bitte erneut auswählen." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"Sie haben den Hersteller und das Modell nicht ausgewählt oder den " +"benutzerdefinierten Hersteller und das Modell eingegeben." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"In der benutzerdefinierten Druckerhersteller- oder Modellzeichenfolge können " +"Escape-Zeichen vorhanden sein. Bitte löschen und erneut eingeben." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"Alle Eingaben im benutzerdefinierten Druckerhersteller oder Modell bestehen " +"aus Leerzeichen. Bitte erneut eingeben." + +msgid "Please check bed printable shape and origin input." +msgstr "" +"Bitte überprüfen Sie die Eingabe der druckbaren Form und des Ursprungs." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Sie haben den Drucker, der die Düse ersetzen soll, noch nicht ausgewählt, " +"bitte wählen Sie." + +msgid "Create Printer Successful" +msgstr "Drucker erfolgreich erstellt" + +msgid "Create Filament Successful" +msgstr "Filament erfolgreich erstellt" + +msgid "Printer Created" +msgstr "Drucker erstellt" + +msgid "Please go to printer settings to edit your presets" +msgstr "" +"Bitte gehen Sie zu den Druckereinstellungen, um Ihre Voreinstellungen zu " +"bearbeiten" + +msgid "Filament Created" +msgstr "Filament erstellt" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Bitte gehen Sie zu den Filament-Einstellungen, um Ihre Voreinstellungen zu " +"bearbeiten, wenn Sie dies benötigen.\n" +"Bitte beachten Sie, dass die Düsentemperatur, die Heizbetttemperatur und die " +"maximale volumetrische Geschwindigkeit einen erheblichen Einfluss auf die " +"Druckqualität haben. Bitte stellen Sie sie sorgfältig ein." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"Studio hat festgestellt, dass Ihre Benutzervoreinstellungen-" +"Synchronisierungs-Funktion nicht aktiviert ist, was zu fehlerhaften Filament-" +"Einstellungen auf der Geräteseite führen kann. \n" +"Klicken Sie auf \"Benutzervoreinstellungen synchronisieren\", um die " +"Synchronisierungsfunktion zu aktivieren." + +msgid "Printer Setting" +msgstr "Druckereinstellung" + +msgid "Printer config bundle(.orca_printer)" +msgstr "Drucker-Konfigurationsbündel (.orca_printer)" + +msgid "Filament bundle(.orca_filament)" +msgstr "Filament-Bündel (.orca_filament)" + +msgid "Printer presets(.zip)" +msgstr "Druckervoreinstellungen (.zip)" + +msgid "Filament presets(.zip)" +msgstr "Filament-Voreinstellungen (.zip)" + +msgid "Process presets(.zip)" +msgstr "Prozess-Voreinstellungen (.zip)" + +msgid "initialize fail" +msgstr "Initialisierung fehlgeschlagen" + +msgid "add file fail" +msgstr "Datei hinzufügen fehlgeschlagen" + +msgid "add bundle structure file fail" +msgstr "Hinzufügen der Bündelstrukturdatei fehlgeschlagen" + +msgid "finalize fail" +msgstr "Finalisierung fehlgeschlagen" + +msgid "open zip written fail" +msgstr "ZIP-Schreibfehler" + +msgid "Export successful" +msgstr "Export erfolgreich" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"Der Ordner '%s' existiert bereits im aktuellen Verzeichnis. Möchten Sie ihn " +"löschen und neu erstellen.\n" +"Wenn nicht, wird ein Zeitstempel hinzugefügt, und Sie können den Namen nach " +"der Erstellung ändern." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"Drucker und alle Filament- und Prozessvoreinstellungen, die zum Drucker " +"gehören. \n" +"Kann mit anderen geteilt werden." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Benutzerfüllung Voreinstellung eingestellt. \n" +"Kann mit anderen geteilt werden." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Nur Druckernamen mit Änderungen an Drucker-, Filament- und Prozessvorlagen " +"werden angezeigt." + +msgid "Only display the filament names with changes to filament presets." +msgstr "" +"Nur die Filamentnamen mit Änderungen an den Filamentvorlagen werden " +"angezeigt." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Nur Druckernamen mit Benutzerdruckervoreinstellungen werden angezeigt, und " +"jede Voreinstellung, die Sie auswählen, wird als ZIP exportiert." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Nur die Filamentnamen mit Benutzerfilamentvorlagen werden angezeigt, \n" +"und alle Benutzerfilamentvorlagen in jedem Filamentnamen, den Sie auswählen, " + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Nur Druckernamen mit geänderten Prozessvorlagen werden angezeigt, \n" +"und alle Benutzerprozessvorlagen in jedem Druckernamen, den Sie auswählen, " +"werden als ZIP exportiert." + +msgid "Please select at least one printer or filament." +msgstr "Bitte wählen Sie mindestens einen Drucker oder ein Filament aus." + +msgid "Please select a type you want to export" +msgstr "Bitte wählen Sie einen Typ aus, den Sie exportieren möchten" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" +"Es konnte kein temporärer Ordner erstellt werden, bitte versuchen Sie es " +"erneut." + +msgid "Edit Filament" +msgstr "Filament bearbeiten" + +msgid "Filament presets under this filament" +msgstr "Filamentvoreinstellungen unter diesem Filament" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Hinweis: Wenn die einzige Voreinstellung unter diesem Filament gelöscht " +"wird, wird das Filament nach dem Verlassen des Dialogfelds gelöscht." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "" +"Voreinstellungen, die von anderen Voreinstellungen geerbt wurden, können " +"nicht gelöscht werden" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Die folgenden Voreinstellungen erben diese Voreinstellung." +msgstr[1] "Die folgende Voreinstellung erbt diese Voreinstellung." + +msgid "Delete Preset" +msgstr "Voreinstellung löschen" + +msgid "Are you sure to delete the selected preset?" +msgstr "Möchten Sie die ausgewählte Voreinstellung wirklich löschen?" + +msgid "Delete preset" +msgstr "Voreinstellung löschen" + +msgid "+ Add Preset" +msgstr "+ Voreinstellung hinzufügen" + +msgid "Delete Filament" +msgstr "Filament löschen" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Alle Filamentvoreinstellungen, die zu diesem Filament gehören, werden " +"gelöscht. \n" +"Wenn Sie dieses Filament auf Ihrem Drucker verwenden, setzen Sie bitte die " +"Filamentinformationen für diesen Schacht zurück." + +msgid "Delete filament" +msgstr "Filament löschen" + +msgid "Add Preset" +msgstr "Voreinstellung hinzufügen" + +msgid "Add preset for new printer" +msgstr "Voreinstellung für neuen Drucker hinzufügen" + +msgid "Copy preset from filament" +msgstr "Voreinstellung vom Filament kopieren" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "" +"Die Filamentauswahl findet keine Filamentvoreinstellung, bitte neu auswählen" + +msgid "[Delete Required]" +msgstr "[Löschen erforderlich]" + +msgid "Edit Preset" +msgstr "Voreinstellung bearbeiten" + +msgid "For more information, please check out Wiki" +msgstr "Für weitere Informationen besuchen Sie bitte Wiki" + +msgid "Collapse" +msgstr "Zuklappen" + +msgid "Daily Tips" +msgstr "Tägliche Tipps" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "Düse gemerkt: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Ihr Düsendurchmesser im Profil stimmt nicht mit dem gemerkten " +"Düsendurchmesser überein. Haben Sie Ihre Düse kürzlich gewechselt?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "" +"*Drucken von %s Material mit %s kann zu einer Beschädigung der Düse führen" + +msgid "Need select printer" +msgstr "Drucker auswählen" + +msgid "The start, end or step is not valid value." +msgstr "Der Start, das Ende oder der Schritt ist kein gültiger Wert." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Kalibrierung nicht möglich: Möglicherweise, weil der eingestellte " +"Kalibrierungswertebereich zu groß ist oder der Schritt zu klein ist" + +msgid "Physical Printer" +msgstr "Drucker" + +msgid "Print Host upload" +msgstr "Hochladen zum Druck-Host" + +msgid "Could not get a valid Printer Host reference" +msgstr "Konnte keine gültige Referenz zum Druck-Host erhalten" + +msgid "Success!" +msgstr "Erfolgreich!" + +msgid "Are you sure to log out?" +msgstr "Sind Sie sicher, dass Sie sich abmelden möchten?" + +msgid "Refresh Printers" +msgstr "Drucker aktualisieren" + +msgid "View print host webui in Device tab" +msgstr "Druck-Host-Webui im Geräte-Tab anzeigen" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "Ersetzen Sie den BambuLab-Geräte-Tab durch das Druck-Host-Webui" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"Die HTTPS-CA-Datei ist optional. Sie wird nur benötigt, wenn Sie HTTPS mit " +"einem selbstsignierten Zertifikat verwenden." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Zertifikatdateien (*.crt, *.pem)|*.crt;*.pem|Alle Dateien|*.*" + +msgid "Open CA certificate file" +msgstr "Öffnen Sie die CA-Zertifikatsdatei." + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"Auf diesem System verwendet %s HTTPS-Zertifikate aus dem " +"Systemzertifikatspeicher oder dem Schlüsselbund." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Um eine benutzerdefinierte CA-Datei zu verwenden, importieren Sie bitte Ihre " +"CA-Datei in den Zertifikatspeicher / das Schlüsselbund." + +msgid "Login/Test" +msgstr "Login/Test" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"Die Verbindung zu den über den Druck-Host verbundenen Druckern ist " +"fehlgeschlagen." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Typ des Druck-Hosts: %s ist falsch" + +msgid "Connection to AstroBox works correctly." +msgstr "Verbindung zum AstroBox funktioniert korrekt." + +msgid "Could not connect to AstroBox" +msgstr "Konnte keine Verbindung zum AstroBox herstellen" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Hinweis: AstroBox Version mindestens 1.1.0 ist erforderlich." + +msgid "Connection to Duet works correctly." +msgstr "Verbindung zu Duet funktioniert korrekt." + +msgid "Could not connect to Duet" +msgstr "Konnte keine Verbindung zu Duet herstellen" + +msgid "Unknown error occured" +msgstr "Unbekannter Fehler aufgetreten" + +msgid "Wrong password" +msgstr "Falsches Passwort" + +msgid "Could not get resources to create a new connection" +msgstr "Konnte keine Ressourcen zum Erstellen einer neuen Verbindung erzeugen" + +msgid "Upload not enabled on FlashAir card." +msgstr "Upload auf FlashAir-Karte nicht aktiviert." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "Verbindung zu FlashAir funktioniert korrekt und Upload ist aktiviert." + +msgid "Could not connect to FlashAir" +msgstr "Konnte keine Verbindung zu FlashAir herstellen" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Hinweis: FlashAir mit Firmware 2.00.02 oder neuer und aktivierter Upload-" +"Funktion ist erforderlich." + +msgid "Connection to MKS works correctly." +msgstr "Verbindung zu MKS funktioniert korrekt." + +msgid "Could not connect to MKS" +msgstr "Konnte keine Verbindung zu MKS herstellen" + +msgid "Connection to OctoPrint works correctly." +msgstr "Verbindung zu OctoPrint funktioniert korrekt." + +msgid "Could not connect to OctoPrint" +msgstr "Konnte keine Verbindung zu OctoPrint herstellen" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Hinweis: OctoPrint Version mindestens 1.1.0 ist erforderlich." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Verbindung zu Prusa SL1 / SL1S funktioniert korrekt." + +msgid "Could not connect to Prusa SLA" +msgstr "Konnte keine Verbindung zu Prusa SLA herstellen" + +msgid "Connection to PrusaLink works correctly." +msgstr "Verbindung zu PrusaLink funktioniert korrekt." + +msgid "Could not connect to PrusaLink" +msgstr "Konnte keine Verbindung zu PrusaLink herstellen" + +msgid "Storages found" +msgstr "Speicher gefunden" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : Nur-Lesen" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : kein freier Speicherplatz" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" +"Der Upload ist fehlgeschlagen. Es wurde kein geeigneter Speicherplatz unter " +"%1% gefunden." + +msgid "Connection to Prusa Connect works correctly." +msgstr "Verbindung zu Prusa Connect funktioniert korrekt." + +msgid "Could not connect to Prusa Connect" +msgstr "Konnte keine Verbindung zu Prusa Connect herstellen" + +msgid "Connection to Repetier works correctly." +msgstr "Verbindung zu Repetier funktioniert korrekt." + +msgid "Could not connect to Repetier" +msgstr "Konnte keine Verbindung zu Repetier herstellen" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Hinweis: Repetier Version mindestens 0.90.0 ist erforderlich." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP-Status: %1%\n" +"Nachrichtentext: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Das Parsen der Host-Antwort ist fehlgeschlagen.\n" +"Nachrichtentext: \"%1%\"\n" +"Fehler: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Die Aufzählung der Drucker des Hosts ist fehlgeschlagen.\n" +"Nachrichtentext: \"%1%\"\n" +"Fehler: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"Es hat eine kleine Schichthöhe und führt zu fast vernachlässigbaren " +"Schichtlinien und hoher Druckqualität. Es ist für die meisten allgemeinen " +"Druckfälle geeignet." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,2 mm Düse hat es niedrigere " +"Geschwindigkeiten und Beschleunigungen, und das spärliche Füllmuster ist " +"Gyroid. Daher ergibt sich eine wesentlich höhere Druckqualität, aber eine " +"viel längere Druckzeit." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,2 mm Düse hat es eine etwas größere " +"Schichthöhe und führt zu fast vernachlässigbaren Schichtlinien und einer " +"etwas kürzeren Druckzeit." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,2 mm Düse hat es eine größere " +"Schichthöhe und führt zu leicht sichtbaren Schichtlinien, aber einer " +"kürzeren Druckzeit." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,2 mm Düse hat es eine kleinere " +"Schichthöhe und führt zu fast unsichtbaren Schichtlinien und einer höheren " +"Druckqualität, aber einer kürzeren Druckzeit." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,2 mm Düse hat es kleinere Schicht-" +"linien, niedrigere Geschwindigkeiten und Beschleunigungen, und das spärliche " +"Füllmuster ist Gyroid. Daher ergibt sich fast unsichtbare Schichtlinien und " +"eine wesentlich höhere Druckqualität, aber eine wesentlich längere Druckzeit." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,2 mm Düse hat es eine kleinere " +"Schichthöhe und führt zu minimalen Schichtlinien und einer höheren " +"Druckqualität, aber einer kürzeren Druckzeit." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,2 mm Düse hat es kleinere Schicht-" +"linien, niedrigere Geschwindigkeiten und Beschleunigungen, und das spärliche " +"Füllmuster ist Gyroid. Daher ergibt sich minimale Schichtlinien und eine " +"wesentlich höhere Druckqualität, aber eine wesentlich längere Druckzeit." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"Es hat eine allgemeine Schichthöhe und führt zu allgemeinen Schichtlinien " +"und Druckqualität. Es ist für die meisten allgemeinen Druckfälle geeignet." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,4 mm Düse hat es mehr Wand-Schleifen " +"und eine höhere spärliche Fülldichte. Daher ergibt sich eine höhere " +"Festigkeit der Drucke, aber mehr Filamentverbrauch und eine längere " +"Druckzeit." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,4 mm Düse hat es eine größere " +"Schichthöhe und führt zu deutlicheren Schichtlinien und einer niedrigeren " +"Druckqualität, aber einer etwas kürzeren Druckzeit." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,4 mm Düse hat es eine größere " +"Schichthöhe und führt zu deutlicheren Schichtlinien und einer niedrigeren " +"Druckqualität, aber einer kürzeren Druckzeit." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,4 mm Düse hat es eine kleinere " +"Schichthöhe und führt zu weniger deutlichen Schichtlinien und einer höheren " +"Druckqualität, aber einer längeren Druckzeit." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,4 mm Düse hat es eine kleinere " +"Schichthöhe, niedrigere Geschwindigkeiten und Beschleunigungen, und das " +"spärliche Füllmuster ist Gyroid. Daher ergibt sich weniger deutliche " +"Schichtlinien und eine wesentlich höhere Druckqualität, aber eine wesentlich " +"längere Druckzeit." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,4 mm Düse hat es eine kleinere " +"Schichthöhe und führt zu fast vernachlässigbaren Schichtlinien und einer " +"höheren Druckqualität, aber einer längeren Druckzeit." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,4 mm Düse hat es eine kleinere " +"Schichthöhe, niedrigere Geschwindigkeiten und Beschleunigungen, und das " +"spärliche Füllmuster ist Gyroid. Daher ergibt sich fast vernachlässigbare " +"Schichtlinien und eine wesentlich höhere Druckqualität, aber eine wesentlich " +"längere Druckzeit." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,4 mm Düse hat es eine kleinere " +"Schichthöhe und führt zu fast vernachlässigbaren Schichtlinien und einer " +"längeren Druckzeit." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"Es hat eine große Schichthöhe und führt zu deutlichen Schichtlinien und " +"normaler Druckqualität und Druckzeit." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,6 mm Düse hat es mehr Wand-Schleifen " +"und eine höhere spärliche Fülldichte. Daher ergibt sich eine höhere " +"Festigkeit der Drucke, aber mehr Filamentverbrauch und eine längere " +"Druckzeit." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,6 mm Düse hat es eine größere " +"Schichthöhe und führt zu deutlicheren Schichtlinien und einer niedrigeren " +"Druckqualität, aber einer kürzeren Druckzeit in einigen Druckfällen." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,6 mm Düse hat es eine größere " +"Schichthöhe und führt zu wesentlich deutlicheren Schichtlinien und einer " +"viel niedrigeren Druckqualität, aber einer kürzeren Druckzeit in einigen " +"Druckfällen." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,6 mm Düse hat es eine kleinere " +"Schichthöhe und führt zu weniger deutlichen Schichtlinien und einer leicht " +"höheren Druckqualität, aber einer längeren Druckzeit." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,6 mm Düse hat es eine kleinere " +"Schichthöhe und führt zu weniger deutlichen Schichtlinien und einer höheren " +"Druckqualität, aber einer längeren Druckzeit." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"Es hat eine sehr große Schichthöhe und führt zu sehr deutlichen " +"Schichtlinien, niedriger Druckqualität und allgemeiner Druckzeit." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,8 mm Düse hat es eine größere " +"Schichthöhe und führt zu sehr deutlichen Schichtlinien und einer viel " +"niedrigeren Druckqualität, aber einer kürzeren Druckzeit in einigen " +"Druckfällen." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,8 mm Düse hat es eine viel größere " +"Schichthöhe und führt zu extrem deutlichen Schichtlinien und einer viel " +"niedrigeren Druckqualität, aber einer wesentlich kürzeren Druckzeit in " +"einigen Druckfällen." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,8 mm Düse hat es eine etwas kleinere " +"Schichthöhe und führt zu etwas weniger, aber immer noch deutlichen " +"Schichtlinien und einer leicht höheren Druckqualität, aber einer längeren " +"Druckzeit in einigen Druckfällen." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"Im Vergleich zum Standardprofil einer 0,8 mm Düse hat es eine kleinere " +"Schichthöhe und führt zu weniger, aber immer noch deutlichen Schichtlinien " +"und einer leicht höheren Druckqualität, aber einer längeren Druckzeit in " +"einigen Druckfällen." + +msgid "Connected to Obico successfully!" +msgstr "Erfolgreich mit Obico verbunden!" + +msgid "Could not connect to Obico" +msgstr "Konnte keine Verbindung zu Obico herstellen" + +msgid "Connected to SimplyPrint successfully!" +msgstr "Erfolgreich mit SimplyPrint verbunden!" + +msgid "Could not connect to SimplyPrint" +msgstr "Konnte keine Verbindung zu SimplyPrint herstellen" + +msgid "Internal error" +msgstr "Interner Fehler" + +msgid "Unknown error" +msgstr "Unbekannter Fehler" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" +"SimplyPrint-Konto nicht verknüpft. Gehen Sie zu den Verbindungsoptionen, um " +"es einzurichten." + +msgid "Connection to Flashforge works correctly." +msgstr "Verbindung zu Flashforge funktioniert korrekt." + +msgid "Could not connect to Flashforge" +msgstr "Konnte keine Verbindung zu Flashforge herstellen" + +msgid "The provided state is not correct." +msgstr "Der bereitgestellte Status ist nicht korrekt." + +msgid "Please give the required permissions when authorizing this application." +msgstr "" +"Bitte geben Sie die erforderlichen Berechtigungen an, wenn Sie diese " +"Anwendung autorisieren." + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" +"Es ist etwas Unerwartetes passiert, als Sie versucht haben, sich anzumelden. " +"Bitte versuchen Sie es erneut." + +msgid "User cancelled." +msgstr "Benutzer abgebrochen." + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"Präzise Wand\n" +"Wussten Sie, dass Sie durch das Einschalten der präzisen Wand die Präzision " +"und die Schichtkonsistenz verbessern können?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"Sandwich-Modus\n" +"Wussten Sie, dass Sie den Sandwich-Modus (innen-außen-innen) verwenden " +"können, um die Präzision und die Schichtkonsistenz zu verbessern, wenn Ihr " +"Modell keine sehr steilen Überhänge hat?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"Kammertemperatur\n" +"Wussten Sie, dass Snapmaker Orca die Kammertemperatur unterstützt?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"Kalibrierung\n" +"Wussten Sie, dass die Kalibrierung Ihres Druckers Wunder bewirken kann? " +"Schauen Sie sich unsere beliebte Kalibrierungslösung in Snapmaker Orca an." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"Hilfsventilator\n" +"Wussten Sie, dass Snapmaker Orca einen Hilfskühlventilator unterstützt?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"Luftfiltration/Abluftventilator\n" +"Wussten Sie, dass Snapmaker Orca eine Luftfiltration/Abluftventilator " +"unterstützen kann?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"G-Code-Fenster\n" +"Sie können das G-Code-Fenster ein- und ausschalten, indem Sie die Taste " +"C drücken." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"Arbeitsbereiche wechseln\n" +"Sie können zwischen den Arbeitsbereichen Vorbereiten und Preview wechseln, indem Sie die Taste Tab drücken." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"Tastenkombinationen verwenden\n" +"Wussten Sie, dass Snapmaker Orca eine Vielzahl von Tastenkombinationen und 3D-" +"Szenenoperationen bietet." + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"Umkehrung bei ungeraden\n" +"Wussten Sie, dass die Funktion Umkehrung bei ungeraden die " +"Oberflächenqualität Ihrer Überhänge erheblich verbessern kann?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Schneidwerkzeug\n" +"Wussten Sie, dass Sie ein Modell mit dem Schneidwerkzeug in jedem Winkel und " +"an jeder Position schneiden können?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Modell reparieren\n" +"Wussten Sie, dass Sie ein beschädigtes 3D-Modell reparieren können, um eine " +"Vielzahl von Slicing-Problemen auf dem Windows-System zu vermeiden?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Zeitraffer\n" +"Wussten Sie, dass Sie während jedes Drucks ein Zeitraffervideo erstellen " +"können?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Automatisch anordnen\n" +"Wussten Sie, dass Sie alle Objekte in Ihrem Projekt automatisch anordnen " +"können?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Automatisch ausrichten\n" +"Wussten Sie, dass Sie Objekte durch einen einfachen Klick in eine optimale " +"Druckausrichtung drehen können?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Auf Fläche legen\n" +"Wussten Sie, dass Sie ein Modell schnell so ausrichten können, dass eine " +"seiner Flächen auf dem Druckbett liegt? Wählen Sie die Funktion \"Auf Fläche " +"legen\" oder drücken Sie die Taste F." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Objekt-Liste\n" +"Wussten Sie, dass Sie alle Objekte/Teile in einer Liste anzeigen und die " +"Einstellungen für jedes Objekt/Teil ändern können?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"Suchfunktion\n" +"Wussten Sie, dass Sie das Suchwerkzeug verwenden können, um schnell eine " +"bestimmte Snapmaker Orca-Einstellung zu finden?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"Modell vereinfachen\n" +"Wussten Sie, dass Sie die Anzahl der Dreiecke in einem Netz mithilfe der " +"Funktion \"Netz vereinfachen\" reduzieren können? Klicken Sie mit der " +"rechten Maustaste auf das Modell und wählen Sie \"Modell vereinfachen\"." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Parametertabelle für das Slicen\n" +"Wussten Sie, dass Sie alle Objekte/Teile in einer Tabelle anzeigen und die " +"Einstellungen für jedes Objekt/Teil ändern können?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"In Objekte/Teile aufteilen\n" +"Wussten Sie, dass Sie ein großes Objekt in kleine Teile aufteilen können, um " +"es leichter einzufärben oder drucken zu können?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"Teile entfernen\n" +"Wussten Sie, dass Sie ein Netz von einem anderen abziehen können, indem Sie " +"den negativen Teilmodifikator verwenden? Auf diese Weise können Sie " +"beispielsweise direkt in Snapmaker Orca leicht skalierbare Löcher erstellen." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP\n" +"Wussten Sie, dass Sie Ihre Druckqualität verbessern können, indem Sie eine " +"STEP-Datei anstelle einer STL-Datei slicen?\n" +"Snapmaker Orca unterstützt das Slicen von STEP-Dateien und liefert glattere " +"Ergebnisse als eine STL mit geringerer Auflösung. Probiere es aus!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Position der Z-Naht\n" +"Wussten Sie, dass Sie die Position der Z-Naht anpassen und sie sogar auf " +"Ihren Druck malen können, um sie an einer weniger sichtbaren Stelle " +"anzubringen? Dadurch wird das Gesamtbild Ihres Modells verbessert. Probiere " +"es aus!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Feineinstellung der Flussrate\n" +"Wussten Sie, dass die Flussgeschwindigkeit des Filament fein eingestellt " +"werden kann, um noch besser aussehende Drucke zu erhalten? Je nach Material " +"können Sie das Gesamtergebnis des gedruckten Modells verbessern, indem Sie " +"eine Feineinstellung vornehmen." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Drucke in mehrere Druckplatten aufteilen\n" +"Wussten Sie, dass Sie ein Modell, das aus vielen Teilen besteht, in einzelne " +"Druckplatten aufteilen können? Dadurch wird es einfacher, den Überblick über " +"alle Teile zu behalten." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Beschleunigen Sie Ihren Druck mit adaptiver Schichthöhe\n" +"Wussten Sie, dass Sie ein Modell noch schneller drucken können, indem Sie " +"die Option Adaptive Schichthöhe verwenden? Probiere es aus!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Stützen malen\n" +"Wussten Sie, dass Sie die Position der Stützen aufmalen können? Diese " +"Funktion macht es möglich, das Stützmaterial nur auf die Bereiche des " +"Modells zu platzieren, die es tatsächlich benötigen." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Verschiedene Arten von Stützstrukturen\n" +"Wussten Sie, dass Sie zwischen verschiedenen Arten von Stützen wählen " +"können? Baumstützen eignet sich hervorragend für organische Modelle, sparen " +"Filament und erhöhen die Druckgeschwindigkeit. Probiere sie aus!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Drucken von Seidenfilament\n" +"Wussten Sie, dass Seidenfilament besondere Überlegungen erfordert, um es " +"erfolgreich zu drucken? Höhere Temperaturen und niedrigere Geschwindigkeiten " +"werden immer für die besten Ergebnisse empfohlen." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Rand für bessere Haftung\n" +"Wussten Sie, dass bei gedruckten Modellen, die eine kleine Kontaktfläche mit " +"der Druckoberfläche haben, die Verwendung eines Randes empfohlen wird?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Parameter für mehrere Objekte festlegen\n" +"Wussten Sie schon, dass Sie die Slicingparameter für alle ausgewählten " +"Objekte gleichzeitig festlegen können?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Objekte stapeln\n" +"Wussten Sie, dass Sie Objekte als Ganzes stapeln können?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Reinigen in Stützstrukturen/Objekten/Füllungen\n" +"Wussten Sie schon, dass Sie die Menge an verschwendetem Filament reduzieren " +"können, indem Sie es während des Filamentwechsels in Stützstrukturen/" +"Objekten/Füllungen reinigen?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Festigkeit verbessern\n" +"Wussten Sie, dass Sie die Festigkeit des Modells durch mehr Wandschleifen " +"und eine höhere Dichte der Füllung verbessern können?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Wenn mit geöffneter Druckertür gedruckt werden muss\n" +"Wussten Sie, dass das Öffnen der Druckertür die Wahrscheinlichkeit eines " +"Verstopfens des Extruders/Hotends beim Drucken von Filamenten mit niedriger " +"Temperatur und höherer Gehäusetemperatur verringern kann. Weitere " +"Informationen dazu finden Sie im Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Verwerfungen vermeiden\n" +"Wussten Sie, dass beim Drucken von Materialien, die zu Verwerfungen neigen, " +"wie z.B. ABS, durch eine entsprechende Erhöhung der Heizbetttemperatur die " +"Wahrscheinlichkeit von Verwerfungen verringert werden kann." + +#~ msgid "Current association: " +#~ msgstr "Aktuelle Zuordnung:" + +#~ msgid "Associate prusaslicer://" +#~ msgstr "prusaslicer:// verknüpfen" + +#~ msgid "Not associated to any application" +#~ msgstr "Nicht mit einer Anwendung verknüpft" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "models from Printable.com" +#~ msgstr "" +#~ "Verknüpfen Sie Snapmaker Orca mit prusaslicer://-Links, damit Orca Modelle " +#~ "von Printable.com öffnen kann." + +#~ msgid "Associate bambustudio://" +#~ msgstr "Verknüpfen mit bambustudio://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with bambustudio:// links so that Orca can open " +#~ "models from makerworld.com" +#~ msgstr "" +#~ "Verknüpfen Sie Snapmaker Orca mit bambustudio://-Links, damit Orca Modelle " +#~ "von makerworld.com öffnen kann." + +#~ msgid "Associate cura://" +#~ msgstr "cura:// verknüpfen" + +#~ msgid "" +#~ "Associate Snapmaker Orca with cura:// links so that Orca can open models from " +#~ "thingiverse.com" +#~ msgstr "" +#~ "Verknüpfen Sie Snapmaker Orca mit cura://-Links, damit Orca Modelle von " +#~ "thingiverse.com öffnen kann." + +#~ msgid "" +#~ "File size exceeds the 100MB upload limit. Please upload your file through " +#~ "the panel." +#~ msgstr "" +#~ "Die Dateigröße überschreitet das 100-MB-Upload-Limit. Bitte laden Sie " +#~ "Ihre Datei über das Panel hoch." + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Bitte geben Sie einen gültigen Wert ein (K in 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Bitte geben Sie einen gültigen Wert ein (K in 0~0.3, N in 0.6~2.0)" + +#~ msgid "Select connected printetrs (0/6)" +#~ msgstr "Wählen die verbundenen Drucker (0/6)" + +#, c-format, boost-format +#~ msgid "Select Connected Printetrs (%d/6)" +#~ msgstr "Wählen die verbundenen Drucker (%d/6)" + +#~ msgid "PrintingPause" +#~ msgstr "Druckpause" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "" +#~ "Die lokale Verbindung des Druckers ist fehlgeschlagen. Bitte versuchen " +#~ "Sie es erneut." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Sie finden die Details der Dynamischen-Kalibrierung in unserem Wiki.\n" +#~ "\n" +#~ "Normalerweise ist die Kalibrierung nicht erforderlich. Wenn Sie einen " +#~ "Einzel-Farb-/Materialdruck mit der Option \"Flussdynamik-Kalibrierung\" " +#~ "im Druckstartmenü starten, wird der Drucker den alten Weg gehen und das " +#~ "Filament vor dem Druck kalibrieren; Wenn Sie einen Mehrfarben-/" +#~ "Materialdruck starten, verwendet der Drucker den Standard-" +#~ "Kompensationsparameter für das Filament während jedes Filamentwechsels, " +#~ "was in den meisten Fällen zu einem guten Ergebnis führt.\n" +#~ "\n" +#~ "Bitte beachten Sie, dass es einige Fälle gibt, in denen das Kalibrierungs-" +#~ "Ergebnis nicht zuverlässig ist: Verwendung einer Texturplatte zur " +#~ "Kalibrierung; Die Bauplatte hat keine gute Haftung (bitte waschen Sie die " +#~ "Bauplatte oder tragen Sie Klebestift auf!) ... Sie finden mehr in unserem " +#~ "Wiki.\n" +#~ "\n" +#~ "Die Kalibrierungsergebnisse haben in unserem Test etwa 10 Prozent " +#~ "Schwankungen, was dazu führen kann, dass das Ergebnis nicht genau bei " +#~ "jeder Kalibrierung gleich ist. Wir untersuchen immer noch die Ursache, um " +#~ "mit neuen Updates Verbesserungen vorzunehmen." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Nur eines der Ergebnisse mit dem gleichen Namen wird gespeichert. Sind " +#~ "Sie sicher, dass Sie die anderen Ergebnisse überschreiben möchten?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Es gibt bereits ein historisches Kalibrierungsergebnis mit dem gleichen " +#~ "Namen: %s. Nur eines der Ergebnisse mit dem gleichen Namen wird " +#~ "gespeichert. Sind Sie sicher, dass Sie das historische Ergebnis " +#~ "überschreiben möchten?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Bitte finden Sie die Ecke mit perfektem Extrusionsgrad" + +#~ msgid "X" +#~ msgstr "X" + +#~ msgid "Y" +#~ msgstr "Y" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "PrusaSlicer links from Printable.com" +#~ msgstr "" +#~ "Verknüpfen Sie Snapmaker Orca mit prusaslicer://-Links, damit Orca " +#~ "PrusaSlicer-Links von Printable.com öffnen kann." + +#~ msgid "" +#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed " +#~ "first, which works best in most cases.\n" +#~ "\n" +#~ "Printing walls first may help with extreme overhangs as the walls have " +#~ "the neighbouring infill to adhere to. However, the infill will slighly " +#~ "push out the printed walls where it is attached to them, resulting in a " +#~ "worse external surface finish. It can also cause the infill to shine " +#~ "through the external surfaces of the part." +#~ msgstr "" +#~ "Reihenfolge der Wand/Füllung. Wenn das Kontrollkästchen nicht aktiviert " +#~ "ist, werden die Wände zuerst gedruckt, was in den meisten Fällen am " +#~ "besten funktioniert.\n" +#~ "\n" +#~ "Das Drucken der Wände zuerst kann bei extremen Überhängen hilfreich sein, " +#~ "da die Wände die benachbarte Füllung haben, an der sie haften können. Die " +#~ "Füllung drückt jedoch die gedruckten Wände leicht heraus, wo sie an ihnen " +#~ "befestigt ist, was zu einer schlechteren Oberflächenqualität führt. Es " +#~ "kann auch dazu führen, dass die Füllung durch die äußeren Oberflächen des " +#~ "Teils schimmert." + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "Maximum print speed when purging" +#~ msgstr "Maximale Druckgeschwindigkeit beim Reinigen" + +#~ msgid "" +#~ "The maximum print speed when purging in the wipe tower. If the sparse " +#~ "infill speed or calculated speed from the filament max volumetric speed " +#~ "is lower, the lowest speed will be used instead.\n" +#~ "Increasing this speed may affect the tower's stability, as purging can be " +#~ "performed over sparse layers. Before increasing this parameter beyond the " +#~ "default of 90mm/sec, make sure your printer can reliably bridge at the " +#~ "increased speeds." +#~ msgstr "" +#~ "Die maximale Druckgeschwindigkeit beim Reinigen im Reinigungsturm. Wenn " +#~ "die Geschwindigkeit des dünnen Infill oder die berechnete Geschwindigkeit " +#~ "aus der maximalen Volumengeschwindigkeit des Filaments niedriger ist, " +#~ "wird die niedrigste Geschwindigkeit verwendet.\n" +#~ "Das Erhöhen dieser Geschwindigkeit kann die Stabilität des Turms " +#~ "beeinträchtigen, da das Reinigen über dünnen Schichten erfolgen kann. " +#~ "Bevor Sie diesen Parameter über den Standardwert von 90 mm/s erhöhen, " +#~ "stellen Sie sicher, dass Ihr Drucker die erhöhten Geschwindigkeiten " +#~ "zuverlässig überbrücken kann." + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca basiert auf BambuStudio von Bambulab, welches von PrusaSlicer " +#~ "von Prusa Research stammt. PrusaSlicer wiederum basiert auf Slic3r von " +#~ "Alessandro Ranellucci und der RepRap-Community." + +#~ msgid "Export &Configs" +#~ msgstr "Exportieren &Konfigurieren" + +#~ msgid "" +#~ "Over 4 systems/handy are using remote access, you can close some and try " +#~ "again." +#~ msgstr "" +#~ "Mehr als 4 Systeme/Handy verwenden den Remote-Zugriff. Sie können einige " +#~ "schließen und es erneut versuchen." + +#~ msgid "Infill direction" +#~ msgstr "Richtung der Füllung" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Aktivieren Sie dies, um eine G-Code-Datei zu erhalten, die G2 und G3 " +#~ "Befehle enthält. Die Bogentoleranz ist die gleiche wie die Auflösung." + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "Der Bereich der Füllung wird leicht vergrößert, damit er sich mit der " +#~ "Wand überlappt, um eine bessere Haftung zu erreichen. Der Prozentwert " +#~ "bezieht sich auf die Linienbreite der inneren Füllung." + +#~ msgid "Export Configs" +#~ msgstr "Konfigurationen exportieren" + +#~ msgid "Actions For Unsaved Changes" +#~ msgstr "Aktivitäten für nicht gespeicherte Änderungen" + +#~ msgid "Preset Value" +#~ msgstr "voreingestellter Wert" + +#~ msgid "Modified Value" +#~ msgstr "geänderter Wert" + +#~ msgid "Transfer Modified Value" +#~ msgstr "geänderten Wert übertragen" + +#~ msgid "Use Preset Value" +#~ msgstr "voreingestellten Wert verwenden" + +#~ msgid "Save Modified Value" +#~ msgstr "geänderten Wert speichern" + +#~ msgid "" +#~ "\n" +#~ "Would you like to save these changed settings(modified value)?" +#~ msgstr "" +#~ "\n" +#~ "Möchten Sie diese geänderten Einstellungen (geänderter Wert) speichern?" + +#~ msgid "" +#~ "\n" +#~ "Would you like to keep these changed settings(modified value) after " +#~ "switching preset?" +#~ msgstr "" +#~ "\n" +#~ "Möchten Sie diese geänderten Einstellungen (geänderter Wert) nach dem " +#~ "Wechsel des Profils beibehalten?" + +#~ msgid "" +#~ "You have previously modified your settings and are about to overwrite " +#~ "them with new ones." +#~ msgstr "" +#~ "Sie haben Ihre Einstellungen zuvor geändert und sind dabei, sie durch " +#~ "neue zu überschreiben." + +#~ msgid "" +#~ "\n" +#~ "Do you want to keep your current modified settings, or use preset " +#~ "settings?" +#~ msgstr "" +#~ "\n" +#~ "Möchten Sie Ihre aktuellen geänderten Einstellungen beibehalten oder die " +#~ "voreingestellten Einstellungen verwenden?" + +#~ msgid "" +#~ "\n" +#~ "Do you want to save your current modified settings?" +#~ msgstr "" +#~ "\n" +#~ "Möchten Sie Ihre aktuellen geänderten Einstellungen speichern?" + +#~ msgid "Unload Filament" +#~ msgstr "Entladen" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Wählen Sie einen AMS-Slot und drücken Sie dann \"Laden\" oder \"Entladen" +#~ "\", um automatisch Filament zu laden oder zu entladen." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "Mainboard" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "- ℃" +#~ msgstr "- ℃" + +#~ msgid "0.5" +#~ msgstr "0,5" + +#~ msgid "0.005" +#~ msgstr "0,005" + +#~ msgid "New Flow Dynamics Calibration" +#~ msgstr "Neue Flussdynamik-Kalibrierung" + +#~ msgid "" +#~ "The 3mf file version is in Beta and it is newer than the current " +#~ "Snapmaker Orca version." +#~ msgstr "" +#~ "Die 3mf-Dateiversion ist in Beta und neuer als die aktuelle Bambu Studio-" +#~ "Version." + +#~ msgid "active" +#~ msgstr "Aktiv" + +#~ msgid "Jump to layer" +#~ msgstr "Wechsle zu Layer" + +#~ msgid "Cabin humidity" +#~ msgstr "Luftfeuchtigkeit in der Druck-Kammer" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "Grün bedeutet, dass die AMS-Luftfeuchtigkeit normal ist, orange bedeutet, " +#~ "dass die Luftfeuchtigkeit hoch ist, und rot bedeutet, dass die " +#~ "Luftfeuchtigkeit zu hoch ist. (Hygrometer: je niedriger, desto besser.)" + +#~ msgid "Desiccant status" +#~ msgstr "Trockenmittelstatus" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "Ein Trockenmittelstatus von weniger als zwei Balken bedeutet, dass das " +#~ "Trockenmittel möglicherweise inaktiv ist. Bitte tauschen Sie das " +#~ "Trockenmittel aus. (Je höher, desto besser.)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Hinweis: Wenn der Deckel geöffnet ist oder die Trockenmittelpackung " +#~ "gewechselt wird, kann es Stunden oder gar eine Nacht dauern, bis die " +#~ "Feuchtigkeit aufgenommen wurde. Niedrige Temperaturen verlangsamen den " +#~ "Prozess ebenfalls. Während dieser Zeit stellt der Indikator die Werte der " +#~ "Kammer möglicherweise nicht genau dar." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Hinweis: Wenn während des Drucks neues Filament eingelegt wird, liest das " +#~ "AMS nicht automatisch die Informationen ein, bis der Druckvorgang " +#~ "abgeschlossen ist." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "Erfolgreich G-Code nach %1% exportiert" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Initialisierung fehlgeschlagen (Kein Gerät)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Initialisierung fehlgeschlagen (keine Kamera)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "Der Drucker ist mit dem Herunterladen beschäftigt; Bitte warten Sie, bis " +#~ "der Download beendet ist." + +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "" +#~ "Initialisierung fehlgeschlagen (Nicht unterstützt auf der aktuellen " +#~ "Druckerversion)!" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Initialisierung fehlgeschlagen (Kein Zugriff im reinen LAN-Modus)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "Initialisierung fehlgeschlagen (Fehlende LAN IP des Druckers)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "[%d] gestoppt!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "Laden fehlgeschlagen [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "Keine Dateien [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Laden fehlgeschlagen [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Die Modellinformationen konnten nicht vom Drucker abgerufen werden." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Modellinformationen konnten nicht analysiert werden" + +#~ msgid "Connection lost. Please retry." +#~ msgstr "Verbindung verloren. Bitte versuchen Sie es erneut." + +#~ msgid "File not exists." +#~ msgstr "Datei existiert nicht." + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Sie haben einige Einstellungen des Profils \"%1%\" geändert.\n" +#~ "Möchten Sie diese geänderten Einstellungen (neuer Wert) nach einem " +#~ "Wechsel der Profile beibehalten?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Sie haben einige Profileinstellungen geändert.\n" +#~ "Möchten Sie diese geänderten Einstellungen (neuer Wert) nach einem " +#~ "Wechseln der Profile beibehalten?" + +#~ msgid " ℃" +#~ msgstr " ℃" + +#~ msgid "" +#~ "Please go to filament setting to edit your presets if you need.\n" +#~ "Please note that nozzle temperature, hot bed temperature, and maximum " +#~ "volumetric speed have a significant impact on printing quality. Please " +#~ "set them carefully." +#~ msgstr "" +#~ "Bitte gehen Sie zu den Filament-Einstellungen, um Ihre Voreinstellungen " +#~ "zu bearbeiten, wenn Sie dies benötigen.\n" +#~ "Bitte beachten Sie, dass die Düsentemperatur, die Heizbetttemperatur und " +#~ "die maximale volumetrische Geschwindigkeit einen erheblichen Einfluss auf " +#~ "die Druckqualität haben. Bitte stellen Sie sie sorgfältig ein." + +#~ msgid "Timeout when authenticating with the account server." +#~ msgstr "Zeitüberschreitung bei der Authentifizierung mit dem Kontoserver." + +#~ msgid "Studio Version:" +#~ msgstr "Studio Version:" + +#~ msgid "Test BambuLab" +#~ msgstr "Test BambuLab" + +#~ msgid "Test BambuLab:" +#~ msgstr "Test BambuLab:" + +#~ msgid "Test HTTP" +#~ msgstr "Test HTTP" + +#~ msgid "Test HTTP Service:" +#~ msgstr "Test HTTP Service:" + +#~ msgid "Test storage" +#~ msgstr "Test Speicher" + +#~ msgid "Test Storage Upload:" +#~ msgstr "Test Speicher hochladen:" + +#~ msgid "Test storage upgrade" +#~ msgstr "Test Speicher Upgrade" + +#~ msgid "Test Storage Upgrade:" +#~ msgstr "Test Speicher Upgrade:" + +#~ msgid "Test storage download" +#~ msgstr "Test Speicher Download" + +#~ msgid "Test Storage Download:" +#~ msgstr "Test Speicher Download:" + +#~ msgid "Test plugin download" +#~ msgstr "Test Plugin Download" + +#~ msgid "Test Plugin Download:" +#~ msgstr "Test Plugin Download:" + +#~ msgid "Test Storage Upload" +#~ msgstr "Test Speicher hochladen" + +#~ msgid "" +#~ "The speed setting exceeds the printer's maximum speed " +#~ "(machine_max_speed_x/machine_max_speed_y).\n" +#~ "Orca will automatically cap the print speed to ensure it doesn't surpass " +#~ "the printer's capabilities.\n" +#~ "You can adjust the maximum speed setting in your printer's configuration " +#~ "to get higher speeds." +#~ msgstr "" +#~ "Die Geschwindigkeitseinstellung überschreitet die maximale " +#~ "Geschwindigkeit des Druckers (machine_max_speed_x/machine_max_speed_y).\n" +#~ "Orca wird automatisch die Druckgeschwindigkeit begrenzen, um " +#~ "sicherzustellen, dass sie nicht die Fähigkeiten des Druckers " +#~ "überschreitet.\n" +#~ "Sie können die maximale Geschwindigkeitseinstellung in der Konfiguration " +#~ "Ihres Druckers anpassen, um höhere Geschwindigkeiten zu erreichen." + +#~ msgid "" +#~ "Alternate extra wall only works with ensure vertical shell thickness " +#~ "disabled. " +#~ msgstr "" +#~ "Die alternative zusätzliche Wand funktioniert nur, wenn die vertikale " +#~ "Schalendicke deaktiviert ist." + +#~ msgid "" +#~ "Change these settings automatically? \n" +#~ "Yes - Disable ensure vertical shell thickness and enable alternate extra " +#~ "wall\n" +#~ "No - Dont use alternate extra wall" +#~ msgstr "" +#~ "Diese Einstellungen automatisch ändern? \n" +#~ "Ja - Vertikale Schalendicke deaktivieren und alternative zusätzliche Wand " +#~ "aktivieren\n" +#~ "Nein - Keine alternative zusätzliche Wand verwenden" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "In der Nähe von schrägen Flächen massive Füllungen hinzufügen, um die " +#~ "vertikale Wanddicke zu gewährleisten (obere + untere massive Schichten)." + +#~ msgid "Further reduce solid infill on walls (beta)" +#~ msgstr "Weitere Reduzierung des festen Infill an den Wänden (experimentell)" + +#~ msgid "" +#~ "Further reduces any solid infill applied to walls. As there will be very " +#~ "limited infill supporting solid surfaces, make sure that you are using " +#~ "adequate number of walls to support the part on sloping surfaces.\n" +#~ "\n" +#~ "For heavily sloped surfaces this option is not suitable as it will " +#~ "generate too thin of a top layer and should be disabled." +#~ msgstr "" +#~ "Reduziert das feste Infill an den Wänden weiter. Da nur sehr wenig Infill " +#~ "zur Unterstützung der massiven Oberflächen verwendet wird, stellen Sie " +#~ "sicher, dass Sie eine ausreichende Anzahl von Wänden verwenden, um das " +#~ "Teil auf schrägen Oberflächen zu stützen.\n" +#~ "\n" +#~ "Für stark geneigte Oberflächen ist diese Option nicht geeignet, da sie " +#~ "eine zu dünne obere Schicht erzeugt und deaktiviert werden sollte." + +#~ msgid "Scale per instance" +#~ msgstr "Skalierung pro Instanz" + +#~ msgid " " +#~ msgstr " " + +#~ msgid "Text-Rotate" +#~ msgstr "Text-Drehen" + +#~ msgid "SVG-Rotate" +#~ msgstr "SVG-Drehen" + +#~ msgid "Resize" +#~ msgstr "Größe zurücksetzen" + +#~ msgid "Configuration package updated to " +#~ msgstr "Konfigurationspaket aktualisiert auf " + +#~ msgid "" +#~ "Improve shell precision by adjusting outer wall spacing. This also " +#~ "improves layer consistency." +#~ msgstr "" +#~ "Durch Anpassen des Abstands der Außenwand kann die Präzision der Schale " +#~ "verbessert werden. Dadurch wird auch die Schichtkonsistenz verbessert." + +#~ msgid "" +#~ "The minimum printing speed for the filament when slow down for better " +#~ "layer cooling is enabled, when printing overhangs and when feature speeds " +#~ "are not specified explicitly." +#~ msgstr "" +#~ "Die minimale Druckgeschwindigkeit für das Filament, wenn die " +#~ "Verlangsamung für eine bessere Schichtkühlung aktiviert ist, beim Drucken " +#~ "von Überhängen und wenn die Funktionen nicht explizit angegeben sind." + +#~ msgid "No sparse layers (EXPERIMENTAL)" +#~ msgstr "Keine dünnen Schichten (EXPERIMENTELL)" + +#~ msgid "" +#~ "We would rename the presets as \"Vendor Type Serial @printer you selected" +#~ "\". \n" +#~ "To add preset for more prinetrs, Please go to printer selection" +#~ msgstr "" +#~ "Wir würden die Voreinstellungen als \"Hersteller Typ Seriennummer " +#~ "@Drucker den Sie ausgewählt haben\" umbenennen. \n" +#~ "Um Voreinstellungen für mehr Drucker hinzuzufügen, gehen Sie bitte zur " +#~ "Druckerauswahl" + +#~ msgid "The Config can not be loaded." +#~ msgstr "Die Konfiguration kann nicht geladen werden." + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "Die 3mf wurde mit einer alten Version von Snapmaker Orca generiert, lade nur " +#~ "die Geometriedaten." + +#~ msgid "wiki" +#~ msgstr "wiki" + +#~ msgid "" +#~ "Relative extrusion is recommended when using \"label_objects\" option." +#~ "Some extruders work better with this option unckecked (absolute extrusion " +#~ "mode). Wipe tower is only compatible with relative mode. It is always " +#~ "enabled on BambuLab printers. Default is checked" +#~ msgstr "" +#~ "Die relative Extrusion wird empfohlen, wenn die Option „label_objects“ " +#~ "verwendet wird. Einige Extruder funktionieren besser, wenn diese Option " +#~ "deaktiviert ist (Absolute Extrusion). Der Wipe-Turm ist nur im relativen " +#~ "Modus kompatibel. Er ist immer auf BambuLab-Druckern aktiviert" + +#~ msgid "Movement:" +#~ msgstr "Bewegung:" + +#~ msgid "Movement" +#~ msgstr "Bewegung" + +#~ msgid "Auto Segment" +#~ msgstr "Automatische Segmentierung" + +#~ msgid "Depth ratio" +#~ msgstr "Tiefenverhältnis" + +#~ msgid "Prizm" +#~ msgstr "Prisma" + +#~ msgid "connector is out of cut contour" +#~ msgstr "Der Verbinder ist außerhalb des Schnittfläche" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "Verbinder sind außerhalb des Schnittfläche" + +#~ msgid "connector is out of object" +#~ msgstr "Der Verbinder ist außerhalb des Objekts" + +#~ msgid "connectors is out of object" +#~ msgstr "Verbinder sind außerhalb des Objekts" + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Ungültiger Zustand. \n" +#~ "Kein Teil ist ausgewählt, was nach dem Schneiden behalten wird." + +#~ msgid "Recalculate" +#~ msgstr "Neu berechnen" + +#~ msgid "" +#~ "Orca recalculates your flushing volumes everytime the filament colors " +#~ "change. You can change this behavior in Preferences." +#~ msgstr "" +#~ "Orca berechnet Ihre Reinigungsvolumen jedes Mal neu, wenn sich die " +#~ "Filamentfarben ändern. Sie können dieses Verhalten in den Einstellungen " +#~ "ändern." + +#~ msgid "" +#~ "The printer timed out while receiving a print job. Please check if the " +#~ "network is functioning properly and send the print again." +#~ msgstr "" +#~ "Der Drucker hat beim Empfangen eines Druckauftrags eine " +#~ "Zeitüberschreitung erhalten. Bitte überprüfen Sie, ob das Netzwerk " +#~ "ordnungsgemäß funktioniert, und senden Sie den Druck erneut." + +#~ msgid "The beginning of the vendor can not be a number. Please re-enter." +#~ msgstr "" +#~ "Der Anfang des Herstellers darf keine Zahl sein. Bitte erneut eingeben." + +#~ msgid "Edit Text" +#~ msgstr "Text bearbeiten" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Fehler. Thread kann nicht erstellt werden." + +#~ msgid "Exception" +#~ msgstr "Ausnahme" + +#~ msgid "Choose SLA archive:" +#~ msgstr "SLA-Archiv auswählen:" + +#~ msgid "Import file" +#~ msgstr "Datei importieren" + +#~ msgid "Import model and profile" +#~ msgstr "Modell und Profil importieren" + +#~ msgid "Import profile only" +#~ msgstr "Nur Profil importieren" + +#~ msgid "Import model only" +#~ msgstr "Importiere nur das Modell" + +#~ msgid "Accurate" +#~ msgstr "Genau" + +#~ msgid "Balanced" +#~ msgstr "Gleichmäßig" + +#~ msgid "Quick" +#~ msgstr "Schnell" + +#~ msgid "Print sequence of inner wall and outer wall. " +#~ msgstr "Druckreihenfolge der Innen- und Außenwand." + +#~ msgid "Order of wall/infill. false means print wall first. " +#~ msgstr "" +#~ "Reihenfolge der Wand/Füllung. false bedeutet, dass die Wand zuerst " +#~ "gedruckt wird." + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Beschreibt, wie weit sich die Düse während dem Rückzug entlang der " +#~ "letzten Bahn bewegt." + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Modell vereinfachen\n" +#~ "Wussten Sie schon, dass Sie die Anzahl der Dreiecke in einem Netz mit der " +#~ "Funktion \"Netz vereinfachen\" reduzieren können? Klicken Sie mit der " +#~ "rechten Maustaste auf das Modell und wählen Sie \"Modell vereinfachen\". " +#~ "Weitere Informationen finden Sie in der Dokumentation." + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "Ein Teil subtrahieren\n" +#~ "Wussten Sie, dass Sie mit dem \"negatives Teil Modifikator\" ein Netz von " +#~ "einem anderen subtrahieren können? Auf diese Weise können Sie z.B. leicht " +#~ "veränderbare Löcher direkt in Snapmaker Orca erstellen. Lesen Sie mehr dazu " +#~ "in der Dokumentation." + +#~ msgid " search results" +#~ msgstr " Suchergebnisse" + +#~ msgid "Filling bed " +#~ msgstr "Bett füllen" + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "Das %1% Füllmuster unterstützt keine 100%% Dichte." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "Zu geradlinigen Mustern wechseln?\n" +#~ "Ja - Automatisches auf das geradlinige Muster wechseln\n" +#~ "Nein - Dichte automatisch auf den Standardwert unter 100% zurücksetzen" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "" +#~ "Bitte heizen Sie die Düse auf über 170 Grad auf, bevor Sie Filament laden." + +#, c-format, boost-format +#~ msgid "This slicer file version %s is newer than %s's version:" +#~ msgstr "Diese Slicer-Dateiversion %s ist neuer als die Version von %s:" + +#~ msgid "" +#~ "Would you like to update your Snapmaker Orca software to enable all " +#~ "functionality in this slicer file?\n" +#~ msgstr "" +#~ "Möchten Sie Ihre Software aktualisieren, um alle Funktionen in dieser " +#~ "Slicer-Datei zu aktivieren?\n" + +#, c-format, boost-format +#~ msgid "" +#~ "This slicer file version %s is newer than %s's version.\n" +#~ "\n" +#~ "Would you like to update your Snapmaker Orca software to enable all " +#~ "functionality in this slicer file?" +#~ msgstr "" +#~ "Diese Slicer-Dateiversion %s ist neuer als die Version von %s.\n" +#~ "\n" +#~ "Möchten Sie Ihre Software aktualisieren, um alle Funktionen in dieser " +#~ "Slicer-Datei zu aktivieren?" + +#~ msgid "Show g-code window" +#~ msgstr "Zeige G-Code Fenster" + +#, fuzzy +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "Wenn aktiviert, werden beim Start nützliche Hinweise angezeigt." + +#~ msgid "" +#~ "Layer height cannot exceed the limit in Printer Settings -> Extruder -> " +#~ "Layer height limits" +#~ msgstr "" +#~ "Die Schichthöhe darf das Limit in Druckereinstellungen -> Extruder -> " +#~ "Schichthöhenlimits nicht überschreiten" + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "Dichte der inneren Füllung, 100%% bedeuten eine solide Füllung" + +#~ msgid "No interface filament for body" +#~ msgstr "Kein Filament für die Schnittstelle des Körpers" + +#~ msgid "Don't use support interface filament to print support body" +#~ msgstr "" +#~ "verwende kein Filament für die Stützstruktur-Schnittstelle um den Körper " +#~ "zu drucken" + +#~ msgid "Tree support wall loops" +#~ msgstr "Wandschleifen für Baumstützen" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "Diese Einstellung gibt die Anzahl der Wände um die Baumstütze an." + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " doesn't work at 100%% density " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Strg + Umschalt + Eingabetaste" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Werkzeug-lege auf Fläche" + +#~ msgid "Export as STL" +#~ msgstr "Als STL exportieren" + +#~ msgid "Check cloud service status" +#~ msgstr "Status des Cloud-Dienstes prüfen" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "" +#~ "Bitte geben Sie einen gültigen Wert ein (K im Bereich von 0 bis 0,5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "" +#~ "Bitte geben Sie einen gültigen Wert ein (K im Bereich von 0 bis 0,5, N im " +#~ "Bereich von 0,6 bis 2,0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Alle Objekte als STL exportieren" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "Der 3mf ist nicht kompatibel, lade nur die Geometriedaten!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Inkompatible 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "Drucker hinzufügen/entfernen" + +#~ msgid "" +#~ "When print by object, machines with I3 structure will not generate " +#~ "timelapse videos." +#~ msgstr "" +#~ "Wenn nach Objekt gedruckt wird, werden bei Maschinen mit I3-Struktur " +#~ "keine Zeitraffervideos erstellt." + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s wird von AMS nicht unterstützt." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Erinnern Sie mich nicht mehr an diese Version." + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Fehler: IP oder Zugangscode sind nicht korrekt" + +#~ msgid "" +#~ "Extrude perimeters that have a part over an overhang in the reverse " +#~ "direction on odd layers. This alternating pattern can drastically improve " +#~ "steep overhang." +#~ msgstr "" +#~ "Extrudieren Sie Umfänge, die einen Teil über einem Überhang in die " +#~ "entgegen gesetzte Richtung in ungeraden Schichten haben. Dieses " +#~ "abwechselnde Muster kann steile Überhänge drastisch verbessern." + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Reihenfolge Innenwand/Außenwand/Füllung" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "Druckreihenfolge von Innenwand, Außenwand und Füllung. " + +#~ msgid "inner/outer/infill" +#~ msgstr "Innen/Außen/Füllung" + +#~ msgid "outer/inner/infill" +#~ msgstr "Außen/Innen/Füllung" + +#~ msgid "infill/inner/outer" +#~ msgstr "Füllung/Innen/Außen" + +#~ msgid "infill/outer/inner" +#~ msgstr "Füllung/Außen/Innen" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "Innen-Außen-Innen/Füllung" + +#, c-format, boost-format +#~ msgid "%%" +#~ msgstr "%%" + +#~ msgid "Export 3MF" +#~ msgstr "3mf exportieren" + +#~ msgid "Export project as 3MF." +#~ msgstr "Projekt als 3mf exportieren." + +#~ msgid "Export slicing data" +#~ msgstr "Slicing-Daten exportieren" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Exportieren von Slicing-Daten in einen Ordner" + +#~ msgid "Load slicing data" +#~ msgstr "Slicing-Daten laden" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Zwischengespeicherte Slicing-Daten aus dem Verzeichnis laden" + +#~ msgid "Export STL" +#~ msgstr "Export STL" + +#~ msgid "Export the objects as multiple STL." +#~ msgstr "Die Objekte als mehrere STL-Dateien exportieren." + +#~ msgid "Slice" +#~ msgstr "Slice" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "" +#~ "Slicen sie die Druckplatten: 0-alle Druckplatten; i-Druckplatte i; andere " +#~ "ungültig" + +#~ msgid "Show command help." +#~ msgstr "Befehlshilfe anzeigen." + +#~ msgid "UpToDate" +#~ msgstr "Auf dem neuesten Stand" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "Aktualisierung der 3mf Konfigurationswerte auf die neueste Version." + +#~ msgid "Load default filaments" +#~ msgstr "Standard-Filamente laden" + +#~ msgid "Load first filament as default for those not loaded" +#~ msgstr "Das erste Filament als Standard für nicht geladene übernehmen" + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "Maximale Anzahl von Dreiecken pro Bauplattform für das Slicing." + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "Das maximale Slicing-Zeitlimit pro Plate in Sekunden." + +#~ msgid "Normative check" +#~ msgstr "Normative Überprüfung" + +#~ msgid "Check the normative items." +#~ msgstr "Überprüfen Sie die normativen Elemente." + +#~ msgid "Output Model Info" +#~ msgstr "Ausgabe Modellinformationen" + +#~ msgid "Output the model's information." +#~ msgstr "Geben Sie die Informationen des Modells aus." + +#~ msgid "Export Settings" +#~ msgstr "Einstellungen exportieren" + +#~ msgid "Export settings to a file." +#~ msgstr "Einstellungen in eine Datei exportieren." + +#~ msgid "Send progress to pipe" +#~ msgstr "Fortschritt an die Leitung senden" + +#~ msgid "Send progress to pipe." +#~ msgstr "Fortschritt an die Leitung senden" + +#~ msgid "Arrange Options" +#~ msgstr "Anordnungsoptionen" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Anordnungsoptionen: 0-deaktiviert; 1-aktiviert; andere-automatisch" + +#~ msgid "Repetions count" +#~ msgstr "Anzahl der Wiederholungen" + +#~ msgid "Repetions count of the whole model" +#~ msgstr "Anzahl der Wiederholungen des gesamten Modells" + +#~ msgid "Convert Unit" +#~ msgstr "Einheit umrechnen" + +#~ msgid "Convert the units of model" +#~ msgstr "Einheiten des Modells umrechnen" + +#~ msgid "Rotate around X" +#~ msgstr "Rotieren um X" + +#~ msgid "Rotation angle around the X axis in degrees." +#~ msgstr "Rotationswinkel um die X-Achse in Grad." + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Skalierung des Modells um einen Faktor" + +#~ msgid "Load General Settings" +#~ msgstr "Allgemeine Einstellungen laden" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "Laden von Prozess-/Maschineneinstellungen aus der angegebenen Datei" + +#~ msgid "Load Filament Settings" +#~ msgstr "Filamenteinstellungen laden" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "Filamenteinstellungen aus der angegebenen Dateiliste laden" + +#~ msgid "Skip Objects" +#~ msgstr "Objekte überspringen" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Einige Objekte in diesem Druck überspringen" + +#~ msgid "load uptodate process/machine settings when using uptodate" +#~ msgstr "" +#~ "Aktuelle Prozess-/Maschineneinstellungen laden, wenn 'Aktuell' verwendet " +#~ "wird" + +#~ msgid "" +#~ "load uptodate process/machine settings from the specified file when using " +#~ "uptodate" +#~ msgstr "" +#~ "Aktuelle Prozess-/Maschineneinstellungen aus der angegebenen Datei laden, " +#~ "wenn Aktuell verwendet wird" + +#~ msgid "Output directory" +#~ msgstr "Ausgabeverzeichnis" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Ausgabeverzeichnis für die exportierten Dateien." + +#~ msgid "Debug level" +#~ msgstr "Fehlersuchstufe" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Legt die Stufe der Fehlerprotokollierung fest. 0:fatal, 1:error, 2:" +#~ "warning, 3:info, 4:debug, 5:trace\n" + +#, boost-format +#~ msgid "The selected preset: %1% is not found." +#~ msgstr "Die ausgewählte Voreinstellung: %1% wurde nicht gefunden." + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "3D-Szenenbedienung\n" +#~ "Wissen Sie, wie Sie die Ansicht und die Auswahl von Objekten/Teilen in " +#~ "der 3D-Szene mit der Maus und dem Touchpad steuern können?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Modell reparieren\n" +#~ "Wussten Sie, dass Sie ein beschädigtes 3D-Modell reparieren können, um " +#~ "viele Probleme beim Slicen zu vermeiden?" + +#~ msgid "" +#~ "When need to print with the printer door opened\n" +#~ "Opening the printer door can reduce the probability of extruder/hotend " +#~ "clogging when printing lower temperature filament with a higher enclosure " +#~ "temperature. More info about this in the Wiki." +#~ msgstr "" +#~ "Wenn mit geöffneter Druckertür gedruckt werden muss\n" +#~ "Das Öffnen der Druckertür kann die Wahrscheinlichkeit einer Verstopfung " +#~ "des Extruders/Hotends beim Drucken von Filamenten mit niedrigerer " +#~ "Temperatur bei höherer Gehäusetemperatur verringern. Weitere " +#~ "Informationen dazu finden Sie in der Wiki." + +#~ msgid "Embeded" +#~ msgstr "Eingebettet" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "Die Snapmaker Orca-Konfigurationsdatei ist möglicherweise beschädigt und kann " +#~ "nicht geladen werden. Bitte löschen Sie die Datei und versuchen Sie es " +#~ "erneut." + +#~ msgid "Online Models" +#~ msgstr "Online-Modelle" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "" +#~ "Von Mitarbeitern ausgewählte Online-Models auf der Startseite anzeigen" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "" +#~ "Die minimale Druckgeschwindigkeit wenn diese für eine bessere Kühlung " +#~ "verringert wird." + +#~ msgid "" +#~ "There are currently no identical spare consumables available, and " +#~ "automatic replenishment is currently not possible. \n" +#~ "(Currently supporting automatic supply of consumables with the same " +#~ "brand, material type, and color)" +#~ msgstr "" +#~ "Derzeit sind keine identischen Ersatzverbrauchsmaterialien verfügbar, und " +#~ "eine automatische Auffüllung ist derzeit nicht möglich. \n" +#~ "(Derzeit wird die automatische Versorgung mit Verbrauchsmaterialien " +#~ "desselben Herstellers, Materialtyps und Farbe unterstützt)" + +#~ msgid "Invalid nozzle diameter" +#~ msgstr "Falscher Düsendurchmesser" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "Die Druckbetttemperatur überschreitet die Verglasungstemperatur des " +#~ "Filaments. Bitte öffnen Sie die Vordertür des Druckers vor dem Druck, um " +#~ "ein Verstopfen der Düse zu vermeiden." + +#~ msgid "Activate for better air filtration" +#~ msgstr "Aktivieren Sie die Luftfilterung für eine bessere Luftfiltration" + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Verglasungstemperatur" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "Bei dieser Temperatur wird das Material weich. Daher kann das Heizbett " +#~ "nicht heißer als diese Temperatur sein" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "" +#~ "Aktivieren Sie diese Option, wenn die Maschine über ein zusätzliches " +#~ "Kühlgebläse verfügt" + +#~ msgid "" +#~ "This option is enabled if machine support controlling chamber temperature" +#~ msgstr "" +#~ "Diese Option ist aktiviert, wenn die Maschine die Steuerung der " +#~ "Kammertemperatur unterstützt" + +#~ msgid "Enable this if printer support air filtration" +#~ msgstr "" +#~ "Aktivieren Sie diese Option, wenn der Drucker die Luftfilterung " +#~ "unterstützt" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "Geschwindigkeit des Hilfslüfters für die Teilekühlung. Der Hilfslüfter " +#~ "läuft während des Drucks mit dieser Geschwindigkeit, mit Ausnahme der " +#~ "ersten Schichten, für die keine Kühlung vorgesehen ist." + +#~ msgid "" +#~ "Filter out gaps smaller than the threshold specified. This setting won't " +#~ "affect top/bottom layers" +#~ msgstr "" +#~ "Filtert Lücken aus, die kleiner als der festgelegte Schwellenwert sind. " +#~ "Diese Einstellung beeinflusst die obersten/untersten Schichten nicht" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "" +#~ "Die leeren Ebenen im unteren Bereich werden durch die nächstgelegenen " +#~ "normalen Ebenen ersetzt." + +#~ msgid "The model has too many empty layers." +#~ msgstr "Das Modell hat zu viele leere Ebenen." + +#~ msgid "Cali" +#~ msgstr "Kalibrierung" + +#~ msgid "Calibration of extrusion" +#~ msgstr "Kalibrierung der Extrusion" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Neues Filament in den Extruder schieben" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "Die Betttemperatur der anderen Schicht ist um mehr als %d Grad Celsius " +#~ "niedriger als die Betttemperatur der ersten Schicht.\n" +#~ "Dies kann dazu führen, dass sich das Modell während des Drucks von der " +#~ "Druckplatte löst" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "Die Druckbetttemperatur ist höher als die Verglasungstemperatur dieses " +#~ "Filaments.\n" +#~ "Dies kann zu einer Verstopfung der Düse und zu Druckfehlern führen.\n" +#~ "Bitte lassen Sie den Drucker während des Druckvorgangs geöffnet, um die " +#~ "Luftzirkulation zu gewährleisten, oder reduzieren Sie die Temperatur des " +#~ "Heizbetts." + +#~ msgid "Total Time Estimation" +#~ msgstr "Geschätzte Gesamtdauer" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Resonanzfrequenzidentifikation" + +#~ msgid "Immediately score" +#~ msgstr "Direktpunktzahl" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "" +#~ "Bitte geben Sie eine Punktzahl für Ihr Lieblingsmodell von Bambu Market " +#~ "ab." + +#~ msgid "Score" +#~ msgstr "Punktzahl" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Bambu Hochtemperaturdruckplatte" + +#~ msgid "Can't connect to the printer" +#~ msgstr "Es kann keine Verbindung zum Drucker hergestellt werden" + +#~ msgid "Recommended temperature range" +#~ msgstr "Empfohlener Temperaturbereich" + +#~ msgid "High Temp Plate" +#~ msgstr "Hochtemperaturdruckplatte" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "Dies ist die Betttemperatur, wenn die Hochtemperatur-Druckplatte " +#~ "installiert ist. Ein Wert von 0 bedeutet, dass das Filament auf der " +#~ "Hochtemperatur-Druckplatte nicht unterstützt wird." + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Dicke der internen Brückenstützen" + +#~ msgid "" +#~ "If enabled, support loops will be generated under the contours of " +#~ "internal bridges.These support loops could prevent internal bridges from " +#~ "extruding over the air and improve the top surface quality, especially " +#~ "when the sparse infill density is low.This value determines the thickness " +#~ "of the support loops. 0 means disable this feature" +#~ msgstr "" +#~ "Wenn aktiviert, werden Stützschleifen unter den Konturen interner Brücken " +#~ "erzeugt. Diese Stützschleifen könnten verhindern, dass interne Brücken " +#~ "über die Luft hinausragen und die Oberflächenqualität verbessern, " +#~ "insbesondere wenn die Fülldichte des Sparmodus niedrig ist. Dieser Wert " +#~ "bestimmt die Dicke der Stützschleifen. 0 bedeutet, diese Funktion zu " +#~ "deaktivieren." + +#, fuzzy, c-format, boost-format +#~ msgid "" +#~ "Klipper's max_accel_to_decel will be adjusted to this % of acceleration" +#~ msgstr "" +#~ "Klipper’s max_accel_to_decel wird auf % of Prozentsatz der " +#~ "Beschleunigung eingestellt" + +#~ msgid "Target chamber temperature" +#~ msgstr "Druckraum Temperatur" + +#~ msgid "Bed temperature difference" +#~ msgstr "Druckbetttemperaturdifferenz" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "Es wird nicht empfohlen, dass die Druckbetttemperatur der anderen " +#~ "Schichten um mehr als diesen Schwellenwert niedriger ist als die der " +#~ "ersten Schicht. Eine zu niedrige Betttemperatur einer anderen Schicht " +#~ "kann dazu führen, dass sich das Modell von der Bauplatte löst." + +#~ msgid "Orient the model" +#~ msgstr "Das Modell ausrichten" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 0 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Bitte geben Sie gültige Werte ein:\n" +#~ "Start > 0 Schrittweite >= 0\n" +#~ "Ende > Start + Schrittweite)" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 10 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Bitte geben Sie gültige Werte ein:\n" +#~ "Start > 10 Schrittweite >= 0\n" +#~ "Ende > Start + Schrittweite)" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Stil und Form der Stützstruktur. Bei normalem Stützen führt die " +#~ "Projektion in ein regelmäßiges Raster zu stabileren Stützen " +#~ "(Standardeinstellung), während eng anliegende Stütztürme Material sparen " +#~ "und die Narbenbildung am Objekt verringern.\n" +#~ "Bei Baumstützen führt der schlanke Stil zu einer aggressiveren " +#~ "Zusammenführung der Äste und spart viel Material (Standard), während der " +#~ "Hybridmodus bei großen überhängenden Flächen eine ähnliche Struktur wie " +#~ "bei normalen Stützstrukturen erzeugt." diff --git a/localization/i18n/en/Snapmaker_Orca_en.po b/localization/i18n/en/Snapmaker_Orca_en.po new file mode 100644 index 0000000000..69ef8c9a29 --- /dev/null +++ b/localization/i18n/en/Snapmaker_Orca_en.po @@ -0,0 +1,16491 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: \n" +"Language-Team: \n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n==1) ? 0 : 1;\n" +"X-Generator: Poedit 3.4.1\n" + +msgid "Supports Painting" +msgstr "Support Painting" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Mouse wheel" + +msgid "Section view" +msgstr "Section view" + +msgid "Reset direction" +msgstr "Reset direction" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Mouse wheel" + +msgid "Pen size" +msgstr "Pen size" + +msgid "Left mouse button" +msgstr "Left mouse button" + +msgid "Enforce supports" +msgstr "Enforce supports" + +msgid "Right mouse button" +msgstr "Right mouse button" + +msgid "Block supports" +msgstr "Block supports" + +msgid "Shift + Left mouse button" +msgstr "Shift + Left mouse button" + +msgid "Erase" +msgstr "Erase" + +msgid "Erase all painting" +msgstr "Erase all painting" + +msgid "Highlight overhang areas" +msgstr "Highlight overhangs" + +msgid "Gap fill" +msgstr "Gap fill" + +msgid "Perform" +msgstr "Apply" + +msgid "Gap area" +msgstr "Gap area" + +msgid "Tool type" +msgstr "Tool type" + +msgid "Smart fill angle" +msgstr "Smart fill angle" + +msgid "On overhangs only" +msgstr "On overhangs only" + +msgid "Auto support threshold angle: " +msgstr "Auto support threshold angle: " + +msgid "Circle" +msgstr "Circle" + +msgid "Sphere" +msgstr "Sphere" + +msgid "Fill" +msgstr "Fill" + +msgid "Gap Fill" +msgstr "Gap Fill" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Allows painting only on facets selected by: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Highlight faces according to overhang angle." + +msgid "No auto support" +msgstr "No auto support" + +msgid "Support Generated" +msgstr "Support generated" + +msgid "Gizmo-Place on Face" +msgstr "" + +msgid "Lay on face" +msgstr "Lay on Face" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Filament count exceeds the maximum number that painting tool supports. Only " +"the first %1% filaments will be available in painting tool." + +msgid "Color Painting" +msgstr "Color painting" + +msgid "Pen shape" +msgstr "Pen shape" + +msgid "Paint" +msgstr "Paint" + +msgid "Key 1~9" +msgstr "Key 1~9" + +msgid "Choose filament" +msgstr "Choose filament" + +msgid "Edge detection" +msgstr "Edge detection" + +msgid "Triangles" +msgstr "Triangles" + +msgid "Filaments" +msgstr "Filaments" + +msgid "Brush" +msgstr "Brush" + +msgid "Smart fill" +msgstr "Smart fill" + +msgid "Bucket fill" +msgstr "Bucket fill" + +msgid "Height range" +msgstr "Height range" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "Toggle Wireframe" + +msgid "Shortcut Key " +msgstr "Shortcut Key " + +msgid "Triangle" +msgstr "Triangle" + +msgid "Height Range" +msgstr "Height Range" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Remove painted color" +msgstr "Remove painted color" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Painted using: Filament %1%" + +msgid "Move" +msgstr "Move" + +msgid "Gizmo-Move" +msgstr "" + +msgid "Rotate" +msgstr "Rotate" + +msgid "Gizmo-Rotate" +msgstr "" + +msgid "Optimize orientation" +msgstr "Optimize orientation" + +msgid "Apply" +msgstr "Apply" + +msgid "Scale" +msgstr "Scale" + +msgid "Gizmo-Scale" +msgstr "" + +msgid "Error: Please close all toolbar menus first" +msgstr "Error: Please close all toolbar menus first" + +msgid "in" +msgstr "in" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Position" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Rotation" + +msgid "Scale ratios" +msgstr "Scale ratios" + +msgid "Object Operations" +msgstr "Object operations" + +msgid "Volume Operations" +msgstr "Volume operations" + +msgid "Translate" +msgstr "Translate" + +msgid "Group Operations" +msgstr "Group operations" + +msgid "Set Position" +msgstr "Set position" + +msgid "Set Orientation" +msgstr "Set orientation" + +msgid "Set Scale" +msgstr "Set scale" + +msgid "Reset Position" +msgstr "Reset position" + +msgid "Reset Rotation" +msgstr "Reset rotation" + +msgid "World coordinates" +msgstr "World coordinates" + +msgid "Object coordinates" +msgstr "" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Size" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "Uniform scale" + +msgid "Planar" +msgstr "Planar" + +msgid "Dovetail" +msgstr "Dovetail" + +msgid "Auto" +msgstr "Auto" + +msgid "Manual" +msgstr "Manual" + +msgid "Plug" +msgstr "Plug" + +msgid "Dowel" +msgstr "Dowel" + +msgid "Snap" +msgstr "Snap" + +msgid "Prism" +msgstr "" + +msgid "Frustum" +msgstr "Frustum" + +msgid "Square" +msgstr "Square" + +msgid "Hexagon" +msgstr "Hexagon" + +msgid "Keep orientation" +msgstr "Keep orientation" + +msgid "Place on cut" +msgstr "Place on cut" + +msgid "Flip upside down" +msgstr "" + +msgid "Connectors" +msgstr "Connectors" + +msgid "Type" +msgstr "Type" + +msgid "Style" +msgstr "Style" + +msgid "Shape" +msgstr "Shape" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Depth" + +msgid "Groove" +msgstr "Groove" + +msgid "Width" +msgstr "Width" + +msgid "Flap Angle" +msgstr "Flap Angle" + +msgid "Groove Angle" +msgstr "Groove Angle" + +msgid "Part" +msgstr "Part" + +msgid "Object" +msgstr "Object" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" + +msgid "Move cut plane" +msgstr "" + +msgid "Mode" +msgstr "Mode" + +msgid "Change cut mode" +msgstr "" + +msgid "Tolerance" +msgstr "Tolerance" + +msgid "Drag" +msgstr "Drag" + +msgid "Draw cut line" +msgstr "" + +msgid "Left click" +msgstr "Left click" + +msgid "Add connector" +msgstr "Add connector" + +msgid "Right click" +msgstr "Right click" + +msgid "Remove connector" +msgstr "Remove connector" + +msgid "Move connector" +msgstr "Move connector" + +msgid "Add connector to selection" +msgstr "Add connector to selection" + +msgid "Remove connector from selection" +msgstr "Remove connector from selection" + +msgid "Select all connectors" +msgstr "Select all connectors" + +msgid "Cut" +msgstr "Cut" + +msgid "Rotate cut plane" +msgstr "" + +msgid "Remove connectors" +msgstr "Remove connectors" + +msgid "Bulge" +msgstr "Bulge" + +msgid "Bulge proportion related to radius" +msgstr "" + +msgid "Space" +msgstr "Space" + +msgid "Space proportion related to radius" +msgstr "" + +msgid "Confirm connectors" +msgstr "Confirm connectors" + +msgid "Cancel" +msgstr "Cancel" + +msgid "Build Volume" +msgstr "" + +msgid "Flip cut plane" +msgstr "" + +msgid "Groove change" +msgstr "" + +msgid "Reset" +msgstr "Reset" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "" + +msgid "Cut position" +msgstr "" + +msgid "Reset cutting plane" +msgstr "" + +msgid "Edit connectors" +msgstr "Edit connectors" + +msgid "Add connectors" +msgstr "Add connectors" + +msgid "Reset cut" +msgstr "" + +msgid "Reset cutting plane and remove connectors" +msgstr "" + +msgid "Upper part" +msgstr "Upper part" + +msgid "Lower part" +msgstr "Lower part" + +msgid "Keep" +msgstr "Keep" + +msgid "Flip" +msgstr "Flip" + +msgid "After cut" +msgstr "After cut" + +msgid "Cut to parts" +msgstr "Cut to parts" + +msgid "Perform cut" +msgstr "Perform cut" + +msgid "Warning" +msgstr "Warning" + +msgid "Invalid connectors detected" +msgstr "Invalid connectors detected" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "" +msgstr[1] "" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "" +msgstr[1] "" + +msgid "Some connectors are overlapped" +msgstr "Some connectors are overlapped" + +msgid "Select at least one object to keep after cutting." +msgstr "" + +msgid "Cut plane is placed out of object" +msgstr "" + +msgid "Cut plane with groove is invalid" +msgstr "" + +msgid "Connector" +msgstr "Connector" + +msgid "Cut by Plane" +msgstr "" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "Non-manifold edges be caused by cut tool: do you want to fix now?" + +msgid "Repairing model object" +msgstr "Repairing model object" + +msgid "Cut by line" +msgstr "" + +msgid "Delete connector" +msgstr "" + +msgid "Mesh name" +msgstr "Mesh name" + +msgid "Detail level" +msgstr "Detail level" + +msgid "Decimate ratio" +msgstr "Decimate ratio" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." + +msgid "Simplify model" +msgstr "Simplify model" + +msgid "Simplify" +msgstr "Simplify" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"Simplification is currently only allowed when a single part is selected" + +msgid "Error" +msgstr "Error" + +msgid "Extra high" +msgstr "Extra high" + +msgid "High" +msgstr "High" + +msgid "Medium" +msgstr "Medium" + +msgid "Low" +msgstr "Low" + +msgid "Extra low" +msgstr "Extra low" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d triangles" + +msgid "Show wireframe" +msgstr "Show wireframe" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "Unable to apply when processing preview" + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Operation already cancelling. Please wait few seconds." + +msgid "Face recognition" +msgstr "Face recognition" + +msgid "Perform Recognition" +msgstr "Perform Recognition" + +msgid "Brush size" +msgstr "Brush size" + +msgid "Brush shape" +msgstr "Brush shape" + +msgid "Enforce seam" +msgstr "Enforce seam" + +msgid "Block seam" +msgstr "Block seam" + +msgid "Seam painting" +msgstr "Seam painting" + +msgid "Remove selection" +msgstr "Remove selection" + +msgid "Entering Seam painting" +msgstr "Entering seam painting" + +msgid "Leaving Seam painting" +msgstr "Leaving Seam Painting" + +msgid "Paint-on seam editing" +msgstr "Paint-on seam editing" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Font" + +msgid "Thickness" +msgstr "Thickness" + +msgid "Text Gap" +msgstr "Text Gap" + +msgid "Angle" +msgstr "Angle" + +msgid "" +"Embeded\n" +"depth" +msgstr "Embedded depth" + +msgid "Input text" +msgstr "Input text" + +msgid "Surface" +msgstr "Surface" + +msgid "Horizontal text" +msgstr "Horizontal text" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Mouse move up or down" + +msgid "Rotate text" +msgstr "Rotate text" + +msgid "Text shape" +msgstr "Text shape" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "" + +msgid "Set Mirror" +msgstr "" + +msgid "Embossed text" +msgstr "" + +msgid "Enter emboss gizmo" +msgstr "" + +msgid "Leave emboss gizmo" +msgstr "" + +msgid "Embossing actions" +msgstr "" + +msgid "Emboss" +msgstr "" + +msgid "NORMAL" +msgstr "" + +msgid "SMALL" +msgstr "" + +msgid "ITALIC" +msgstr "" + +msgid "SWISS" +msgstr "" + +msgid "MODERN" +msgstr "" + +msgid "First font" +msgstr "" + +msgid "Default font" +msgstr "" + +msgid "Advanced" +msgstr "Advanced" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" + +msgid "Embossed text cannot contain only white spaces." +msgstr "" + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" + +msgid "Text input doesn't show font skew." +msgstr "" + +msgid "Text input doesn't show font boldness." +msgstr "" + +msgid "Text input doesn't show gap between lines." +msgstr "" + +msgid "Too tall, diminished font height inside text input." +msgstr "" + +msgid "Too small, enlarged font height inside text input." +msgstr "" + +msgid "Text doesn't show current horizontal alignment." +msgstr "" + +msgid "Revert font changes." +msgstr "" + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "" + +msgid "Operation" +msgstr "" + +msgid "Join" +msgstr "" + +msgid "Click to change text into object part." +msgstr "" + +msgid "You can't change a type of the last solid part of the object." +msgstr "" + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Cut" + +msgid "Click to change part type into negative volume." +msgstr "" + +msgid "Modifier" +msgstr "Modifier" + +msgid "Click to change part type into modifier." +msgstr "" + +msgid "Change Text Type" +msgstr "" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "" + +msgid "Name can't be empty." +msgstr "" + +msgid "Name has to be unique." +msgstr "" + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "" + +msgid "Rename current style." +msgstr "" + +msgid "Can't rename temporary style." +msgstr "" + +msgid "First Add style to list." +msgstr "" + +#, boost-format +msgid "Save %1% style" +msgstr "" + +msgid "No changes to save." +msgstr "" + +msgid "New name of style" +msgstr "" + +msgid "Save as new style" +msgstr "" + +msgid "Only valid font can be added to style." +msgstr "" + +msgid "Add style to my list." +msgstr "" + +msgid "Save as new style." +msgstr "" + +msgid "Remove style" +msgstr "" + +msgid "Can't remove the last existing style." +msgstr "" + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "" + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "" + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "" + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" + +msgid "Not valid style." +msgstr "" + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "" + +msgid "Unset italic" +msgstr "" + +msgid "Set italic" +msgstr "" + +msgid "Unset bold" +msgstr "" + +msgid "Set bold" +msgstr "" + +msgid "Revert text size." +msgstr "" + +msgid "Revert embossed depth." +msgstr "" + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" + +msgid "Revert using of model surface." +msgstr "" + +msgid "Revert Transformation per glyph." +msgstr "" + +msgid "Set global orientation for whole text." +msgstr "" + +msgid "Set position and orientation per glyph." +msgstr "" + +msgctxt "Alignment" +msgid "Left" +msgstr "Left" + +msgctxt "Alignment" +msgid "Center" +msgstr "Center" + +msgctxt "Alignment" +msgid "Right" +msgstr "Right" + +msgctxt "Alignment" +msgid "Top" +msgstr "Top" + +msgctxt "Alignment" +msgid "Middle" +msgstr "" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Bottom" + +msgid "Revert alignment." +msgstr "" + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "" + +msgid "Revert gap between characters" +msgstr "" + +msgid "Distance between characters" +msgstr "" + +msgid "Revert gap between lines" +msgstr "" + +msgid "Distance between lines" +msgstr "" + +msgid "Undo boldness" +msgstr "" + +msgid "Tiny / Wide glyphs" +msgstr "" + +msgid "Undo letter's skew" +msgstr "" + +msgid "Italic strength ratio" +msgstr "" + +msgid "Undo translation" +msgstr "" + +msgid "Distance of the center of the text to the model surface." +msgstr "" + +msgid "Undo rotation" +msgstr "" + +msgid "Rotate text Clock-wise." +msgstr "" + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Select from True Type Collection." +msgstr "" + +msgid "Set text to face camera" +msgstr "" + +msgid "Orient the text towards the camera." +msgstr "" + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" + +msgid "No symbol" +msgstr "" + +msgid "Loading" +msgstr "Loading" + +msgid "In queue" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Height" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "" + +msgid "Enter SVG gizmo" +msgstr "" + +msgid "Leave SVG gizmo" +msgstr "" + +msgid "SVG actions" +msgstr "" + +msgid "SVG" +msgstr "" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "" + +msgid "Undefined fill type" +msgstr "" + +msgid "Linear gradient" +msgstr "" + +msgid "Radial gradient" +msgstr "" + +msgid "Open filled path" +msgstr "" + +msgid "Undefined stroke type" +msgstr "" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "" + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "" + +msgid "Face the camera" +msgstr "" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "" + +msgid "Reload SVG file from disk." +msgstr "" + +msgid "Change file" +msgstr "" + +msgid "Change to another .svg file" +msgstr "" + +msgid "Forget the file path" +msgstr "" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "" + +msgid "Save as" +msgstr "" + +msgid "Save SVG file" +msgstr "" + +msgid "Save as '.svg' file" +msgstr "" + +msgid "Size in emboss direction." +msgstr "" + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "" + +msgid "Width of SVG." +msgstr "" + +msgid "Height of SVG." +msgstr "" + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "" + +msgid "Reset scale" +msgstr "" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "" + +msgid "Reset distance" +msgstr "" + +msgid "Reset rotation" +msgstr "" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" + +msgid "Mirror vertically" +msgstr "" + +msgid "Mirror horizontally" +msgstr "" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Mirror" + +msgid "Choose SVG file for emboss:" +msgstr "" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "" + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "" + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "" + +msgid "Vertex" +msgstr "Vertex" + +msgid "Edge" +msgstr "Edge" + +msgid "Plane" +msgstr "Plane" + +msgid "Point on edge" +msgstr "Point on edge" + +msgid "Point on circle" +msgstr "Point on circle" + +msgid "Point on plane" +msgstr "Point on plane" + +msgid "Center of edge" +msgstr "Center of edge" + +msgid "Center of circle" +msgstr "Center of circle" + +msgid "ShiftLeft mouse button" +msgstr "" + +msgid "Select feature" +msgstr "Select feature" + +msgid "Select point" +msgstr "Select point" + +msgid "Delete" +msgstr "Delete" + +msgid "Restart selection" +msgstr "Restart selection" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "" + +msgid "Measure" +msgstr "Measure" + +msgid "Edit to scale" +msgstr "Edit to scale" + +msgctxt "Verb" +msgid "Scale" +msgstr "Scale" + +msgid "None" +msgstr "None" + +msgid "Diameter" +msgstr "Diameter" + +msgid "Length" +msgstr "Length" + +msgid "Selection" +msgstr "Selection" + +msgid "Copy to clipboard" +msgstr "Copy to clipboard" + +msgid "Perpendicular distance" +msgstr "Perpendicular distance" + +msgid "Distance" +msgstr "Distance" + +msgid "Direct distance" +msgstr "Direct distance" + +msgid "Distance XYZ" +msgstr "Distance XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Notice" + +msgid "Undefined" +msgstr "Undefined" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% was replaced with %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" + +msgid "Some values have been replaced. Please check them:" +msgstr "Some values have been replaced. Please check them:" + +msgid "Process" +msgstr "Process" + +msgid "Filament" +msgstr "Filament" + +msgid "Machine" +msgstr "Machine" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"The configuration package was loaded, but some values were not recognized." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"The configuration file “%1%” was loaded, but some values were not recognized." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" + +msgid "Fatal error" +msgstr "Fatal error" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" + +msgid "Critical error" +msgstr "Critical error" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "" + +msgid "Untitled" +msgstr "Untitled" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Downloading Bambu Network Plug-in" + +msgid "Login information expired. Please login again." +msgstr "Login information expired. Please login again." + +msgid "Incorrect password" +msgstr "Incorrect password" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "Connect %s failed! [SN:%s, code=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" + +msgid "WebView2 Runtime" +msgstr "" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Do you want to continue?" + +msgid "Remember my choice" +msgstr "Remember my choice" + +msgid "Loading configuration" +msgstr "Loading configuration" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "Click to download new version in default browser: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca needs an update" + +msgid "This is the newest version." +msgstr "This is the newest version." + +msgid "Info" +msgstr "Info" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" + +msgid "Rebuild" +msgstr "Rebuild" + +msgid "Loading current presets" +msgstr "Loading current presets" + +msgid "Loading a mode view" +msgstr "Loading a mode view" + +msgid "Choose one file (3mf):" +msgstr "Choose one file (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Choose one or more files (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "" + +msgid "Choose one file (gcode/3mf):" +msgstr "" + +msgid "Some presets are modified." +msgstr "Some presets are modified." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"You can keep the modified presets for the new project, discard, or save " +"changes as new presets." + +msgid "User logged out" +msgstr "User logged out" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "new or open project file is not allowed during the slicing process!" + +msgid "Open Project" +msgstr "Open Project" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" + +msgid "Privacy Policy Update" +msgstr "Privacy Policy Update" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." + +msgid "Sync user presets" +msgstr "Sync user presets" + +msgid "Loading user preset" +msgstr "Loading user preset" + +msgid "Switching application language" +msgstr "Switching application language" + +msgid "Select the language" +msgstr "Select the language" + +msgid "Language" +msgstr "Language" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "The uploads are still ongoing" + +msgid "Stop them and continue anyway?" +msgstr "Stop them and continue anyway?" + +msgid "Ongoing uploads" +msgstr "Ongoing uploads" + +msgid "Select a G-code file:" +msgstr "Select a G-code file:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" + +msgid "Import File" +msgstr "Import File" + +msgid "Choose files" +msgstr "Choose files" + +msgid "New Folder" +msgstr "New Folder" + +msgid "Open" +msgstr "Open" + +msgid "Rename" +msgstr "Rename" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Snapmaker Orca GUI initialization failed" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Fatal error, exception: %1%" + +msgid "Quality" +msgstr "Quality" + +msgid "Shell" +msgstr "Shell" + +msgid "Infill" +msgstr "Infill" + +msgid "Support" +msgstr "Support" + +msgid "Flush options" +msgstr "Flush options" + +msgid "Speed" +msgstr "Speed" + +msgid "Strength" +msgstr "Strength" + +msgid "Top Solid Layers" +msgstr "Top solid layers" + +msgid "Top Minimum Shell Thickness" +msgstr "Top minimum shell thickness" + +msgid "Bottom Solid Layers" +msgstr "Bottom solid layers" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Bottom minimum shell thickness" + +msgid "Ironing" +msgstr "Ironing" + +msgid "Fuzzy Skin" +msgstr "Fuzzy skin" + +msgid "Extruders" +msgstr "Extruders" + +msgid "Extrusion Width" +msgstr "Extrusion width" + +msgid "Wipe options" +msgstr "Wipe options" + +msgid "Bed adhesion" +msgstr "Bed adhesion" + +msgid "Add part" +msgstr "Add Part" + +msgid "Add negative part" +msgstr "Add Negative Part" + +msgid "Add modifier" +msgstr "Add Modifier" + +msgid "Add support blocker" +msgstr "Add Support Blocker" + +msgid "Add support enforcer" +msgstr "Add Support Enforcer" + +msgid "Add text" +msgstr "" + +msgid "Add negative text" +msgstr "" + +msgid "Add text modifier" +msgstr "" + +msgid "Add SVG part" +msgstr "" + +msgid "Add negative SVG" +msgstr "" + +msgid "Add SVG modifier" +msgstr "" + +msgid "Select settings" +msgstr "Select settings" + +msgid "Hide" +msgstr "Hide" + +msgid "Show" +msgstr "Show" + +msgid "Del" +msgstr "Del" + +msgid "Delete the selected object" +msgstr "Delete the selected object" + +msgid "Load..." +msgstr "Load..." + +msgid "Cube" +msgstr "Cube" + +msgid "Cylinder" +msgstr "Cylinder" + +msgid "Cone" +msgstr "Cone" + +msgid "Disc" +msgstr "Disc" + +msgid "Torus" +msgstr "Torus" + +msgid "Orca Cube" +msgstr "" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "" + +msgid "Voron Cube" +msgstr "" + +msgid "Stanford Bunny" +msgstr "" + +msgid "Orca String Hell" +msgstr "" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" + +msgid "Text" +msgstr "" + +msgid "Height range Modifier" +msgstr "Height Range Modifier" + +msgid "Add settings" +msgstr "Add Settings" + +msgid "Change type" +msgstr "Change Type" + +msgid "Set as an individual object" +msgstr "Set as An Individual Object" + +msgid "Set as individual objects" +msgstr "Set as Individual Objects" + +msgid "Fill bed with copies" +msgstr "Fill bed with copies" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Fill the remaining area of bed with copies of the selected object" + +msgid "Printable" +msgstr "Printable" + +msgid "Fix model" +msgstr "Fix Model" + +msgid "Export as one STL" +msgstr "Export as one STL" + +msgid "Export as STLs" +msgstr "Export as STLs" + +msgid "Reload from disk" +msgstr "Reload from disk" + +msgid "Reload the selected parts from disk" +msgstr "Reload the selected parts from disk" + +msgid "Replace with STL" +msgstr "Replace with STL" + +msgid "Replace the selected part with new STL" +msgstr "Replace the selected part with new STL" + +msgid "Change filament" +msgstr "Change filament" + +msgid "Set filament for selected items" +msgstr "Set filament for selected items" + +msgid "Default" +msgstr "Default" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filament %d" + +msgid "current" +msgstr "current" + +msgid "Scale to build volume" +msgstr "Scale to build volume" + +msgid "Scale an object to fit the build volume" +msgstr "Scale an object to fit the build volume" + +msgid "Flush Options" +msgstr "Flush Options" + +msgid "Flush into objects' infill" +msgstr "Flush into objects' infill" + +msgid "Flush into this object" +msgstr "Flush into this object" + +msgid "Flush into objects' support" +msgstr "Flush into objects' support" + +msgid "Edit in Parameter Table" +msgstr "Edit in Parameter Table" + +msgid "Convert from inch" +msgstr "Convert from Inches" + +msgid "Restore to inch" +msgstr "Restore to Inch" + +msgid "Convert from meter" +msgstr "Convert from Meters" + +msgid "Restore to meter" +msgstr "Restore to Meter" + +msgid "Assemble" +msgstr "Assemble" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Assemble the selected objects into an object with multiple parts" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Assemble the selected objects into an object with single part" + +msgid "Mesh boolean" +msgstr "Mesh boolean" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Mesh boolean operations including union and subtraction" + +msgid "Along X axis" +msgstr "Along X Axis" + +msgid "Mirror along the X axis" +msgstr "Mirror along the X Axis" + +msgid "Along Y axis" +msgstr "Along Y Axis" + +msgid "Mirror along the Y axis" +msgstr "Mirror along the Y Axis" + +msgid "Along Z axis" +msgstr "Along Z Axis" + +msgid "Mirror along the Z axis" +msgstr "Mirror along the Z Axis" + +msgid "Mirror object" +msgstr "Mirror object" + +msgid "Edit text" +msgstr "" + +msgid "Ability to change text, font, size, ..." +msgstr "" + +msgid "Edit SVG" +msgstr "" + +msgid "Change SVG source file, projection, size, ..." +msgstr "" + +msgid "Invalidate cut info" +msgstr "Invalidate cut info" + +msgid "Add Primitive" +msgstr "Add Primitive" + +msgid "Add Handy models" +msgstr "" + +msgid "Add Models" +msgstr "Add Models" + +msgid "Show Labels" +msgstr "Show Labels" + +msgid "To objects" +msgstr "To Objects" + +msgid "Split the selected object into multiple objects" +msgstr "Split the selected object into multiple objects" + +msgid "To parts" +msgstr "To Parts" + +msgid "Split the selected object into multiple parts" +msgstr "Split the selected object into multiple parts" + +msgid "Split" +msgstr "Split" + +msgid "Split the selected object" +msgstr "Split the selected object" + +msgid "Auto orientation" +msgstr "Auto orientation" + +msgid "Auto orient the object to improve print quality." +msgstr "Auto orient the object to improve print quality." + +msgid "Select All" +msgstr "Select All" + +msgid "select all objects on current plate" +msgstr "Select all objects on the current plate" + +msgid "Delete All" +msgstr "Delete All" + +msgid "delete all objects on current plate" +msgstr "Delete all objects on the current plate" + +msgid "Arrange" +msgstr "Arrange" + +msgid "arrange current plate" +msgstr "Arrange current plate" + +msgid "Reload All" +msgstr "" + +msgid "reload all from disk" +msgstr "" + +msgid "Auto Rotate" +msgstr "Auto Rotate" + +msgid "auto rotate current plate" +msgstr "Auto rotate current plate" + +msgid "Delete Plate" +msgstr "Delete Plate" + +msgid "Remove the selected plate" +msgstr "Remove the selected plate" + +msgid "Clone" +msgstr "Clone" + +msgid "Simplify Model" +msgstr "Simplify Model" + +msgid "Center" +msgstr "Center" + +msgid "Edit Process Settings" +msgstr "Edit Process Settings" + +msgid "Edit print parameters for a single object" +msgstr "Edit print parameters for a single object" + +msgid "Change Filament" +msgstr "Change Filament" + +msgid "Set Filament for selected items" +msgstr "Set Filament for selected items" + +msgid "Unlock" +msgstr "Unlock" + +msgid "Lock" +msgstr "Lock" + +msgid "Edit Plate Name" +msgstr "Edit Plate Name" + +msgid "Name" +msgstr "Name" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d error repaired" +msgstr[1] "%1$d errors repaired" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Error: %1$d non-manifold edge." +msgstr[1] "Error: %1$d non-manifold edges." + +msgid "Remaining errors" +msgstr "Remaining errors" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d non-manifold edge" +msgstr[1] "%1$d non-manifold edges" + +msgid "Right click the icon to fix model object" +msgstr "Right click the icon to fix model object" + +msgid "Right button click the icon to drop the object settings" +msgstr "Right click the icon to drop the object settings" + +msgid "Click the icon to reset all settings of the object" +msgstr "Click the icon to reset all settings of the object" + +msgid "Right button click the icon to drop the object printable property" +msgstr "Right click the icon to drop the object printable property" + +msgid "Click the icon to toggle printable property of the object" +msgstr "Click the icon to toggle printable properties of the object" + +msgid "Click the icon to edit support painting of the object" +msgstr "Click the icon to edit support painting of the object" + +msgid "Click the icon to edit color painting of the object" +msgstr "Click the icon to edit color painting for the object" + +msgid "Click the icon to shift this object to the bed" +msgstr "Click the icon to shift this object to the bed" + +msgid "Loading file" +msgstr "Loading file" + +msgid "Error!" +msgstr "Error!" + +msgid "Failed to get the model data in the current file." +msgstr "Failed to get the model data in the current file." + +msgid "Generic" +msgstr "Generic" + +msgid "Add Modifier" +msgstr "Add Modifier" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "Switch to per-object setting mode to edit modifier settings." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." + +msgid "Delete connector from object which is a part of cut" +msgstr "Delete connector from object which is a part of cut" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Delete solid part from object which is a part of cut" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Delete negative volume from object which is a part of cut" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"To save cut correspondence you can delete all connectors from all related " +"objects." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"This action will break a cut correspondence.\n" +"After that, model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut information first." + +msgid "Delete all connectors" +msgstr "Delete all connectors" + +msgid "Deleting the last solid part is not allowed." +msgstr "Deleting the last solid part is not allowed." + +msgid "The target object contains only one part and can not be splited." +msgstr "The target object contains only one part and cannot be split." + +msgid "Assembly" +msgstr "Assembly" + +msgid "Cut Connectors information" +msgstr "Cut Connectors information" + +msgid "Object manipulation" +msgstr "Object manipulation" + +msgid "Group manipulation" +msgstr "Group manipulation" + +msgid "Object Settings to modify" +msgstr "Object Settings to Modify" + +msgid "Part Settings to modify" +msgstr "Part Settings to Modify" + +msgid "Layer range Settings to modify" +msgstr "Layer Range Settings to Modify" + +msgid "Part manipulation" +msgstr "Part manipulation" + +msgid "Instance manipulation" +msgstr "Instance manipulation" + +msgid "Height ranges" +msgstr "Height ranges" + +msgid "Settings for height range" +msgstr "Settings for height range" + +msgid "Layer" +msgstr "Layer" + +msgid "Selection conflicts" +msgstr "Selection conflicts" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"If the first selected item is an object, the second one should also be an " +"object." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"If the first selected item is a part, the second one should be a part in the " +"same object." + +msgid "The type of the last solid object part is not to be changed." +msgstr "The type of the last solid object part cannot be changed." + +msgid "Negative Part" +msgstr "Negative Part" + +msgid "Support Blocker" +msgstr "Support Blocker" + +msgid "Support Enforcer" +msgstr "Support Enforcer" + +msgid "Type:" +msgstr "Type:" + +msgid "Choose part type" +msgstr "Choose part type" + +msgid "Enter new name" +msgstr "Enter new name" + +msgid "Renaming" +msgstr "Renaming" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "The following model object has been repaired" +msgstr[1] "The following model objects have been repaired" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Failed to repair the following model object" +msgstr[1] "Failed to repair the following model objects" + +msgid "Repairing was canceled" +msgstr "Repairing was canceled" + +msgid "Additional process preset" +msgstr "Additional process preset" + +msgid "Remove parameter" +msgstr "Remove parameter" + +msgid "to" +msgstr "to" + +msgid "Remove height range" +msgstr "Remove height range" + +msgid "Add height range" +msgstr "Add height range" + +msgid "Invalid numeric." +msgstr "Invalid numeric." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "One cell can only be copied to one or more cells in the same column." + +msgid "multiple cells copy is not supported" +msgstr "Copying multiple cells is not supported." + +msgid "Outside" +msgstr "Outside" + +msgid "Layer height" +msgstr "Layer height" + +msgid "Wall loops" +msgstr "Wall loops" + +msgid "Infill density(%)" +msgstr "Infill density(%)" + +msgid "Auto Brim" +msgstr "Auto Brim" + +msgid "Mouse ear" +msgstr "" + +msgid "Outer brim only" +msgstr "Outer brim only" + +msgid "Inner brim only" +msgstr "Inner brim only" + +msgid "Outer and inner brim" +msgstr "Outer and inner brim" + +msgid "No-brim" +msgstr "No-brim" + +msgid "Outer wall speed" +msgstr "Outer wall speed" + +msgid "Plate" +msgstr "Plate" + +msgid "Brim" +msgstr "Brim" + +msgid "Object/Part Setting" +msgstr "Object/part setting" + +msgid "Reset parameter" +msgstr "Reset parameter" + +msgid "Multicolor Print" +msgstr "Multicolor Print" + +msgid "Line Type" +msgstr "Line Type" + +msgid "More" +msgstr "More" + +msgid "Open Preferences." +msgstr "Open Preferences" + +msgid "Open next tip." +msgstr "Open next tip" + +msgid "Open Documentation in web browser." +msgstr "Open documentation in web browser" + +msgid "Color" +msgstr "Color" + +msgid "Pause" +msgstr "Pause" + +msgid "Template" +msgstr "Template" + +msgid "Custom" +msgstr "Custom" + +msgid "Pause:" +msgstr "Pause:" + +msgid "Custom Template:" +msgstr "Custom Template:" + +msgid "Custom G-code:" +msgstr "Custom G-code:" + +msgid "Custom G-code" +msgstr "Custom G-code" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Enter Custom G-code used on current layer:" + +msgid "Jump to Layer" +msgstr "Jump to layer" + +msgid "Please enter the layer number" +msgstr "Please enter the layer number." + +msgid "Add Pause" +msgstr "Add Pause" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Insert a pause command at the beginning of this layer." + +msgid "Add Custom G-code" +msgstr "Add Custom G-code" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Insert custom G-code at the beginning of this layer." + +msgid "Add Custom Template" +msgstr "Add Custom Template" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Insert template custom G-code at the beginning of this layer." + +msgid "Filament " +msgstr "Filament " + +msgid "Change filament at the beginning of this layer." +msgstr "Change filament at the beginning of this layer." + +msgid "Delete Pause" +msgstr "Delete Pause" + +msgid "Delete Custom Template" +msgstr "Delete Custom Template" + +msgid "Edit Custom G-code" +msgstr "Edit Custom G-code" + +msgid "Delete Custom G-code" +msgstr "Delete Custom G-code" + +msgid "Delete Filament Change" +msgstr "Delete Filament Change" + +msgid "No printer" +msgstr "No printer" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Failed to connect to the server" + +msgid "Check the status of current system services" +msgstr "Check the status of current system services" + +msgid "code" +msgstr "code" + +msgid "Failed to connect to cloud service" +msgstr "Failed to connect to cloud service" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "Please click on the hyperlink above to view the cloud service status" + +msgid "Failed to connect to the printer" +msgstr "Failed to connect to the printer" + +msgid "Connection to printer failed" +msgstr "Connection to printer failed" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Please check the network connection of the printer and Orca." + +msgid "Connecting..." +msgstr "Connecting..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Empty" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Auto Refill" + +msgid "AMS not connected" +msgstr "AMS not connected" + +msgid "Load" +msgstr "Load" + +msgid "Unload" +msgstr "Unload" + +msgid "Ext Spool" +msgstr "Ext Spool" + +msgid "Tips" +msgstr "Tips" + +msgid "Guide" +msgstr "Guide" + +msgid "Retry" +msgstr "Retry" + +msgid "Calibrating AMS..." +msgstr "Calibrating AMS..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "A problem occurred during calibration. Click to view the solution." + +msgid "Calibrate again" +msgstr "Calibrate again" + +msgid "Cancel calibration" +msgstr "Cancel calibration" + +msgid "Idling..." +msgstr "Idling..." + +msgid "Heat the nozzle" +msgstr "Heat the nozzle" + +msgid "Cut filament" +msgstr "Cut filament" + +msgid "Pull back current filament" +msgstr "Pull back the current filament" + +msgid "Push new filament into extruder" +msgstr "Push new filament into extruder" + +msgid "Purge old filament" +msgstr "Purge old filament" + +msgid "Feed Filament" +msgstr "Feed Filament" + +msgid "Confirm extruded" +msgstr "Confirm extruded" + +msgid "Check filament location" +msgstr "Check filament location" + +msgid "Grab new filament" +msgstr "Grab new filament" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filament." + +msgid "Edit" +msgstr "Edit" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"All the selected objects are on a locked plate.\n" +"Cannot auto-arrange these objects." + +msgid "No arrangable objects are selected." +msgstr "No arrangable objects are selected." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"This plate is locked.\n" +"We cannot auto-arrange this plate." + +msgid "Arranging..." +msgstr "Arranging..." + +msgid "Arranging" +msgstr "Arranging" + +msgid "Arranging canceled." +msgstr "Arranging canceled." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Arranging complete, but some items were not able to be arranged. Reduce " +"spacing and try again." + +msgid "Arranging done." +msgstr "Arranging done." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Arrange failed. Found some exceptions when processing object geometries." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"All the selected objects are on a locked plate,\n" +"We cannot auto-orient these objects." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"This plate is locked.\n" +"We cannot auto-orient this plate." + +msgid "Orienting..." +msgstr "Orienting..." + +msgid "Orienting" +msgstr "Orienting" + +msgid "Orienting canceled." +msgstr "" + +msgid "Filling" +msgstr "Filling" + +msgid "Bed filling canceled." +msgstr "Bed filling canceled." + +msgid "Bed filling done." +msgstr "Bed filling done." + +msgid "Searching for optimal orientation" +msgstr "" + +msgid "Orientation search canceled." +msgstr "" + +msgid "Orientation found." +msgstr "" + +msgid "Logging in" +msgstr "Logging in" + +msgid "Login failed" +msgstr "Login failed" + +msgid "Please check the printer network connection." +msgstr "Please check the printer network connection." + +msgid "Abnormal print file data. Please slice again." +msgstr "Abnormal print file data: please slice again." + +msgid "Task canceled." +msgstr "Task canceled." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "Upload task timed out. Please check the network status and try again." + +msgid "Cloud service connection failed. Please try again." +msgstr "Cloud service connection failed. Please try again." + +msgid "Print file not found. please slice again." +msgstr "Print file not found; please slice again." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." + +msgid "Failed to send the print job. Please try again." +msgstr "Failed to send the print job. Please try again." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Failed to upload file to ftp. Please try again." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Check the current status of the Bambu Lab server by clicking on the link " +"above." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"The size of the print file is too large. Please adjust the file size and try " +"again." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "Print file not found; please slice it again and send it for printing." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Failed to upload print file via FTP. Please check the network status and try " +"again." + +msgid "Sending print job over LAN" +msgstr "Sending print job over LAN" + +msgid "Sending print job through cloud service" +msgstr "Sending print job through cloud service" + +msgid "Print task sending times out." +msgstr "Print task sending times out." + +msgid "Service Unavailable" +msgstr "Service Unavailable" + +msgid "Unknown Error." +msgstr "Unknown Error." + +msgid "Sending print configuration" +msgstr "Sending print configuration" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "Successfully sent. Will automatically jump to the device page in %ss" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "Successfully sent. Will automatically jump to the next page in %ss" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "A MicroSD card needs to be inserted before printing via LAN." + +msgid "Sending gcode file over LAN" +msgstr "Sending G-code file over LAN" + +msgid "Sending gcode file to sdcard" +msgstr "Sending G-code file to MicroSD card" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Successfully sent. Close current page in %s s" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "A MicroSD card needs to be inserted before sending to printer." + +msgid "Importing SLA archive" +msgstr "Importing SLA archive" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer presets first before importing that SLA archive." + +msgid "Importing canceled." +msgstr "Importing canceled." + +msgid "Importing done." +msgstr "Importing done." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "You cannot load an SLA project with a multi-part object on the bed" + +msgid "Please check your object list before preset changing." +msgstr "Please check your object list before preset changing." + +msgid "Attention!" +msgstr "Attention!" + +msgid "Downloading" +msgstr "Downloading" + +msgid "Download failed" +msgstr "Download failed" + +msgid "Cancelled" +msgstr "Canceled" + +msgid "Install successfully." +msgstr "Installed successfully" + +msgid "Installing" +msgstr "Installing" + +msgid "Install failed" +msgstr "Install failed" + +msgid "Portions copyright" +msgstr "License Info" + +msgid "Copyright" +msgstr "Copyright" + +msgid "License" +msgstr "License" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca is licensed under " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, version 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "" + +msgid "Libraries" +msgstr "Libraries" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" + +#, c-format, boost-format +msgid "About %s" +msgstr "About %s" + +msgid "Snapmaker Orca " +msgstr "" + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "" + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "" + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." + +msgid "Version" +msgstr "Version" + +msgid "AMS Materials Setting" +msgstr "AMS Materials Setting" + +msgid "Confirm" +msgstr "Confirm" + +msgid "Close" +msgstr "Close" + +msgid "Colour" +msgstr "Color" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Nozzle\n" +"Temperature" + +msgid "max" +msgstr "max" + +msgid "min" +msgstr "min" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "The input value should be greater than %1% and less than %2%" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "Setting AMS slot information while printing is not supported" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Factors of Flow Dynamics Calibration" + +msgid "PA Profile" +msgstr "PA Profile" + +msgid "Factor K" +msgstr "Factor K" + +msgid "Factor N" +msgstr "Factor N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "Setting Virtual slot information while printing is not supported" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Are you sure you want to clear the filament information?" + +msgid "You need to select the material type and color first." +msgstr "You need to select the material type and color first." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" + +msgid "Other Color" +msgstr "Other Color" + +msgid "Custom Color" +msgstr "Custom Color" + +msgid "Dynamic flow calibration" +msgstr "Dynamic flow calibration" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." + +msgid "Nozzle Diameter" +msgstr "Nozzle Diameter" + +msgid "Bed Type" +msgstr "Plate Type" + +msgid "Nozzle temperature" +msgstr "Nozzle temperature" + +msgid "Bed Temperature" +msgstr "Bed Temperature" + +msgid "Max volumetric speed" +msgstr "Max volumetric speed" + +msgid "℃" +msgstr "" + +msgid "Bed temperature" +msgstr "Bed temperature" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Start" + +msgid "Next" +msgstr "Next" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." + +msgid "Save" +msgstr "Save" + +msgid "Last Step" +msgstr "Back" + +msgid "Example" +msgstr "Example" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Calibrating... %d%%" + +msgid "Calibration completed" +msgstr "Calibration completed" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s does not support %s" + +msgid "Dynamic flow Calibration" +msgstr "Dynamic flow calibration" + +msgid "Step" +msgstr "Step" + +msgid "AMS Slots" +msgstr "AMS Slots" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Note: Only the AMS slots loaded with the same material type can be selected." + +msgid "Enable AMS" +msgstr "Enable AMS" + +msgid "Print with filaments in the AMS" +msgstr "Print with filament in the AMS" + +msgid "Disable AMS" +msgstr "Disable AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Print with filament on external spool" + +msgid "Current Cabin humidity" +msgstr "Current Cabin humidity" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases: when the lid is open or the " +"desiccant pack is changed. It takes a few hours to absorb the moisture, and " +"low temperatures also slow down the process." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Configure which AMS slot should be used for a filament used in the print job." + +msgid "Filament used in this print job" +msgstr "Filament used in this print job" + +msgid "AMS slot used for this filament" +msgstr "AMS slot used for this filament" + +msgid "Click to select AMS slot manually" +msgstr "Click to select AMS slot manually" + +msgid "Do not Enable AMS" +msgstr "Do not Enable AMS" + +msgid "Print using materials mounted on the back of the case" +msgstr "Print using filament on external spool." + +msgid "Print with filaments in ams" +msgstr "Print with filament in AMS" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Print with filament on external spool" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"When the current material run out, the printer will continue to print in the " +"following order." + +msgid "Group" +msgstr "Group" + +msgid "The printer does not currently support auto refill." +msgstr "The printer does not currently support auto refill." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"AMS filament backup is not enabled; please enable it in the AMS settings." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"If there are two identical filaments in an AMS, AMS filament backup will be " +"enabled. \n" +"(This currently supports automatic supply of consumables with the same " +"brand, material type, and color)" + +msgid "DRY" +msgstr "DRY" + +msgid "WET" +msgstr "WET" + +msgid "AMS Settings" +msgstr "AMS Settings" + +msgid "Insertion update" +msgstr "Insertion update" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament spool. This takes about 20 seconds." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." + +msgid "Power on update" +msgstr "Update on startup" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will rotate the " +"filament spools." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." + +msgid "Update remaining capacity" +msgstr "Update remaining capacity" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." + +msgid "AMS filament backup" +msgstr "AMS filament backup" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"AMS will continue to another spool with the same filament properties " +"automatically when current filament runs out." + +msgid "Air Printing Detection" +msgstr "Air Printing Detection" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." + +msgid "File" +msgstr "File" + +msgid "Calibration" +msgstr "Calibration" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software and retry." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Failed to install the plug-in. Please check whether it is blocked or has " +"been deleted by anti-virus software." + +msgid "click here to see more info" +msgstr "click here to see more info" + +msgid "Please home all axes (click " +msgstr "Please home all axes (click " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." + +msgid "Go Home" +msgstr "Go Home" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"An error occurred. The system may have run out of memory, or a bug may have " +"occurred." + +msgid "Please save project and restart the program. " +msgstr "Please save your project and restart the application." + +msgid "Processing G-Code from Previous file..." +msgstr "Processing G-Code from previous file…" + +msgid "Slicing complete" +msgstr "Slicing complete" + +msgid "Access violation" +msgstr "Access violation" + +msgid "Illegal instruction" +msgstr "Illegal instruction" + +msgid "Divide by zero" +msgstr "Divide by zero" + +msgid "Overflow" +msgstr "Overflow" + +msgid "Underflow" +msgstr "Underflow" + +msgid "Floating reserved operand" +msgstr "Floating reserved operand" + +msgid "Stack overflow" +msgstr "Stack overflow" + +msgid "Running post-processing scripts" +msgstr "Running post-processing scripts" + +msgid "Successfully executed post-processing script" +msgstr "Successfully executed post-processing script" + +msgid "Unknown error occured during exporting G-code." +msgstr "" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "" + +msgid "Unknown error when export G-code." +msgstr "Unknown error with G-code export" + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Failed to save G-code file.\n" +"Error message: %1%.\n" +"Source file %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Copying of the temporary G-code to the output G-code failed." + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" + +msgid "Device" +msgstr "Device" + +msgid "Task Sending" +msgstr "Task Sending" + +msgid "Task Sent" +msgstr "Task Sent" + +msgid "Edit multiple printers" +msgstr "" + +msgid "Select connected printers (0/6)" +msgstr "" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "" + +msgid "Offline" +msgstr "Offline" + +msgid "No task" +msgstr "No task" + +msgid "View" +msgstr "View" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "" + +msgid "Device Name" +msgstr "Device Name" + +msgid "Task Name" +msgstr "Task Name" + +msgid "Device Status" +msgstr "Device Status" + +msgid "Actions" +msgstr "Actions" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" + +msgid "Add" +msgstr "Add" + +msgid "Idle" +msgstr "Idle" + +msgid "Printing" +msgstr "Printing" + +msgid "Upgrading" +msgstr "" + +msgid "Incompatible" +msgstr "Incompatible" + +msgid "syncing" +msgstr "" + +msgid "Printing Finish" +msgstr "" + +msgid "Printing Failed" +msgstr "" + +msgid "Printing Pause" +msgstr "" + +msgid "Prepare" +msgstr "Prepare" + +msgid "Slicing" +msgstr "Slicing" + +msgid "Pending" +msgstr "" + +msgid "Sending" +msgstr "Sending" + +msgid "Sending Finish" +msgstr "" + +msgid "Sending Cancel" +msgstr "" + +msgid "Sending Failed" +msgstr "" + +msgid "Print Success" +msgstr "" + +msgid "Print Failed" +msgstr "" + +msgid "Removed" +msgstr "" + +msgid "Resume" +msgstr "Resume" + +msgid "Stop" +msgstr "Stop" + +msgid "Task Status" +msgstr "Task Status" + +msgid "Sent Time" +msgstr "Sent Time" + +msgid "There are no tasks to be sent!" +msgstr "There are no tasks to be sent!" + +msgid "No historical tasks!" +msgstr "No historical tasks!" + +msgid "Loading..." +msgstr "Loading..." + +msgid "No AMS" +msgstr "No AMS" + +msgid "Send to Multi-device" +msgstr "Send to Multi-device" + +msgid "Preparing print job" +msgstr "Preparing print job" + +msgid "Abnormal print file data. Please slice again" +msgstr "Abnormal print file data. Please slice again" + +msgid "There is no device available to send printing." +msgstr "" + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" + +msgid "Use External Spool" +msgstr "Use External Spool" + +msgid "Use AMS" +msgstr "Use AMS" + +msgid "Select Printers" +msgstr "Select Printers" + +msgid "Ams Status" +msgstr "AMS Status" + +msgid "Printing Options" +msgstr "Printing Options" + +msgid "Bed Leveling" +msgstr "Bed leveling" + +msgid "Timelapse" +msgstr "Timelapse" + +msgid "Flow Dynamic Calibration" +msgstr "" + +msgid "Send Options" +msgstr "Send Options" + +msgid "Send to" +msgstr "" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"printers at the same time. (It depends on how many devices can undergo " +"heating at the same time.)" + +msgid "Wait" +msgstr "Wait" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minute each batch. (It depends on how long it takes to complete heating.)" + +msgid "Send" +msgstr "Send" + +msgid "Name is invalid;" +msgstr "Name is invalid;" + +msgid "illegal characters:" +msgstr "Illegal characters:" + +msgid "illegal suffix:" +msgstr "Illegal suffix:" + +msgid "The name is not allowed to be empty." +msgstr "The name field is not allowed to be empty." + +msgid "The name is not allowed to start with space character." +msgstr "The name is not allowed to start with a space." + +msgid "The name is not allowed to end with space character." +msgstr "The name is not allowed to end with a space." + +msgid "The name length exceeds the limit." +msgstr "The name length exceeds the limit." + +msgid "Origin" +msgstr "Origin" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Size in X and Y of the rectangular plate." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." + +msgid "Rectangular" +msgstr "Rectangular" + +msgid "Circular" +msgstr "Circular" + +msgid "Load shape from STL..." +msgstr "Load shape from STL..." + +msgid "Settings" +msgstr "Settings" + +msgid "Texture" +msgstr "Texture" + +msgid "Remove" +msgstr "Remove" + +msgid "Not found:" +msgstr "Not found:" + +msgid "Model" +msgstr "Model" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Choose an STL file to import bed shape from:" + +msgid "Invalid file format." +msgstr "Invalid file format." + +msgid "Error! Invalid model" +msgstr "Error: invalid model" + +msgid "The selected file contains no geometry." +msgstr "The selected file contains no geometry." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"The selected file contains several disjointed areas. This is not supported." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "Choose a file to import bed texture from (PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Choose an STL file to import bed model from:" + +msgid "Bed Shape" +msgstr "Bed Shape" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" + +msgid "Please check.\n" +msgstr "Please check.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"The nozzle may become clogged when the temperature is out of the recommended " +"range.\n" +"Please make sure whether to use this temperature to print.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"The recommended nozzle temperature for this filament type is [%d, %d] " +"degrees centigrade" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Too small max volumetric speed.\n" +"Value was reset to 0.5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"Current chamber temperature is higher than the material's safe temperature; " +"this may result in material softening and nozzle clogs.The maximum safe " +"temperature for the material is %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Layer height too small\n" +"It has been reset to 0.2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Ironing spacing too small\n" +"It has been reset to 0.1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"Zero first layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"This setting is only used for tuning model size by small amounts.\n" +"For example, when the model size has small errors or when tolerances are " +"incorrect. For large adjustments, please use the model scale function.\n" +"\n" +"The value will be reset to 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"The elephant foot compensation value is too large.\n" +"If there are significant elephant foot issues, please check other settings.\n" +"The bed temperature may be too high, for example.\n" +"\n" +"The value will be reset to 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"While printing by object, the extruder may collide with a skirt.\n" +"Thus, reset the skirt layer to 1 to avoid collisions." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " But machines with I3 structure will not generate timelapse videos." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral/vase mode automatically\n" +"No - Cancel enabling spiral mode" + +msgid "Auto bed leveling" +msgstr "Auto bed leveling" + +msgid "Heatbed preheating" +msgstr "Heatbed preheating" + +msgid "Sweeping XY mech mode" +msgstr "Sweeping XY mech mode" + +msgid "Changing filament" +msgstr "Changing filament" + +msgid "M400 pause" +msgstr "M400 pause" + +msgid "Paused due to filament runout" +msgstr "Paused due to filament runout" + +msgid "Heating hotend" +msgstr "Heating hotend" + +msgid "Calibrating extrusion" +msgstr "Calibrating extrusion" + +msgid "Scanning bed surface" +msgstr "Scanning bed surface" + +msgid "Inspecting first layer" +msgstr "Inspecting first layer" + +msgid "Identifying build plate type" +msgstr "Identifying build plate type" + +msgid "Calibrating Micro Lidar" +msgstr "Calibrating Micro Lidar" + +msgid "Homing toolhead" +msgstr "Homing toolhead" + +msgid "Cleaning nozzle tip" +msgstr "Cleaning nozzle tip" + +msgid "Checking extruder temperature" +msgstr "Checking extruder temperature" + +msgid "Printing was paused by the user" +msgstr "Printing was paused by the user" + +msgid "Pause of front cover falling" +msgstr "Pause of front cover falling" + +msgid "Calibrating the micro lida" +msgstr "Calibrating the micro lidar" + +msgid "Calibrating extrusion flow" +msgstr "Calibrating extrusion flow" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Paused due to nozzle temperature malfunction" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Paused due to heat bed temperature malfunction" + +msgid "Filament unloading" +msgstr "Filament unloading" + +msgid "Skip step pause" +msgstr "Skip step pause" + +msgid "Filament loading" +msgstr "Filament loading" + +msgid "Motor noise calibration" +msgstr "Motor noise calibration" + +msgid "Paused due to AMS lost" +msgstr "Paused due to AMS lost" + +msgid "Paused due to low speed of the heat break fan" +msgstr "Paused due to low speed of the heat break fan" + +msgid "Paused due to chamber temperature control error" +msgstr "Paused due to chamber temperature control error" + +msgid "Cooling chamber" +msgstr "Cooling chamber" + +msgid "Paused by the Gcode inserted by user" +msgstr "Paused by the Gcode inserted by user" + +msgid "Motor noise showoff" +msgstr "Motor noise showoff" + +msgid "Nozzle filament covered detected pause" +msgstr "Nozzle filament covered detected pause" + +msgid "Cutter error pause" +msgstr "Cutter error pause" + +msgid "First layer error pause" +msgstr "First layer error pause" + +msgid "Nozzle clog pause" +msgstr "Nozzle clog pause" + +msgid "Unknown" +msgstr "Unknown" + +msgid "Fatal" +msgstr "Fatal" + +msgid "Serious" +msgstr "Serious" + +msgid "Common" +msgstr "Common" + +msgid "Update successful." +msgstr "Update successful." + +msgid "Downloading failed." +msgstr "Downloading failed." + +msgid "Verification failed." +msgstr "Verification failed." + +msgid "Update failed." +msgstr "Update failed." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃. In order to avoid extruder clogging, low temperature filament (PLA/PETG/" +"TPU) is not allowed to be loaded." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Low temperature filament (PLA/PETG/TPU) is loaded in the extruder. In order " +"to avoid extruder clogging, it is not allowed to set the chamber temperature " +"above 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated, and the target chamber temperature will " +"automatically be set to 0℃." + +msgid "Failed to start printing job" +msgstr "Failed to start print job" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" +"This calibration does not support the currently selected nozzle diameter" + +msgid "Current flowrate cali param is invalid" +msgstr "Current flowrate cali param is invalid" + +msgid "Selected diameter and machine diameter do not match" +msgstr "Selected diameter and machine diameter do not match" + +msgid "Failed to generate cali gcode" +msgstr "Failed to generate cali gcode" + +msgid "Calibration error" +msgstr "Calibration error" + +msgid "TPU is not supported by AMS." +msgstr "TPU is not supported by AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF is not supported by AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." + +msgid "default" +msgstr "default" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" + +msgid "Search gcode placeholders" +msgstr "" + +msgid "Add selected placeholder to G-code" +msgstr "" + +msgid "Select placeholder" +msgstr "" + +msgid "[Global] Slicing State" +msgstr "" + +msgid "Read Only" +msgstr "" + +msgid "Read Write" +msgstr "" + +msgid "Slicing State" +msgstr "" + +msgid "Print Statistics" +msgstr "" + +msgid "Objects Info" +msgstr "" + +msgid "Dimensions" +msgstr "" + +msgid "Temperatures" +msgstr "" + +msgid "Timestamps" +msgstr "" + +#, boost-format +msgid "Specific for %1%" +msgstr "" + +msgid "Presets" +msgstr "Presets" + +msgid "Print settings" +msgstr "Print settings" + +msgid "Filament settings" +msgstr "Filament settings" + +msgid "SLA Materials settings" +msgstr "" + +msgid "Printer settings" +msgstr "Printer settings" + +msgid "parameter name" +msgstr "parameter name" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s can’t be a percentage" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "Value %s is out of range, continue?" + +msgid "Parameter validation" +msgstr "Parameter validation" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "Value %s is out of range. The valid range is from %d to %d." + +msgid "Value is out of range." +msgstr "Value is out of range." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" + +msgid "Input value is out of range" +msgstr "" + +msgid "Some extension in the input is invalid" +msgstr "" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Invalid format. Expected vector format: \"%1%\"" + +msgid "Layer Height" +msgstr "Layer Height" + +msgid "Line Width" +msgstr "Line Width" + +msgid "Fan Speed" +msgstr "Fan Speed" + +msgid "Temperature" +msgstr "Temperature" + +msgid "Flow" +msgstr "Flow" + +msgid "Tool" +msgstr "Tool" + +msgid "Layer Time" +msgstr "Layer Time" + +msgid "Layer Time (log)" +msgstr "Layer Time (log)" + +msgid "Height: " +msgstr "Height: " + +msgid "Width: " +msgstr "Width: " + +msgid "Speed: " +msgstr "Speed: " + +msgid "Flow: " +msgstr "Flow: " + +msgid "Layer Time: " +msgstr "Layer Time: " + +msgid "Fan: " +msgstr "Fan: " + +msgid "Temperature: " +msgstr "Temperature: " + +msgid "Loading G-codes" +msgstr "Loading G-code" + +msgid "Generating geometry vertex data" +msgstr "Generating geometry vertex data" + +msgid "Generating geometry index data" +msgstr "Generating geometry index data" + +msgid "Statistics of All Plates" +msgstr "Statistics of All Plates" + +msgid "Display" +msgstr "Display" + +msgid "Flushed" +msgstr "Flushed" + +msgid "Tower" +msgstr "Tower" + +msgid "Total" +msgstr "Total" + +msgid "Total Estimation" +msgstr "Total estimation" + +msgid "Total time" +msgstr "Total time" + +msgid "Total cost" +msgstr "Total cost" + +msgid "up to" +msgstr "up to" + +msgid "above" +msgstr "above" + +msgid "from" +msgstr "from" + +msgid "Color Scheme" +msgstr "Color scheme" + +msgid "Time" +msgstr "Time" + +msgid "Percent" +msgstr "Percent" + +msgid "Used filament" +msgstr "Used filament" + +msgid "Layer Height (mm)" +msgstr "Layer height (mm)" + +msgid "Line Width (mm)" +msgstr "Line width (mm)" + +msgid "Speed (mm/s)" +msgstr "Speed (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Fan speed (%)" + +msgid "Temperature (°C)" +msgstr "Temperature (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Volumetric flow rate (mm³/s)" + +msgid "Travel" +msgstr "Travel" + +msgid "Seams" +msgstr "Seams" + +msgid "Retract" +msgstr "Retract" + +msgid "Unretract" +msgstr "Unretract" + +msgid "Filament Changes" +msgstr "Filament changes" + +msgid "Wipe" +msgstr "Wipe" + +msgid "Options" +msgstr "Options" + +msgid "travel" +msgstr "Travel" + +msgid "Extruder" +msgstr "Extruder" + +msgid "Filament change times" +msgstr "Filament change times" + +msgid "Cost" +msgstr "Cost" + +msgid "Color change" +msgstr "Color change" + +msgid "Print" +msgstr "Print" + +msgid "Printer" +msgstr "Printer" + +msgid "Custom g-code" +msgstr "" + +msgid "ToolChange" +msgstr "" + +msgid "Time Estimation" +msgstr "Time Estimation" + +msgid "Normal mode" +msgstr "Normal mode" + +msgid "Total Filament" +msgstr "Total Filament" + +msgid "Model Filament" +msgstr "Model Filament" + +msgid "Prepare time" +msgstr "Prepare time" + +msgid "Model printing time" +msgstr "Model printing time" + +msgid "Switch to silent mode" +msgstr "Switch to silent mode" + +msgid "Switch to normal mode" +msgstr "Switch to normal mode" + +msgid "Variable layer height" +msgstr "Variable layer height" + +msgid "Adaptive" +msgstr "Adaptive" + +msgid "Quality / Speed" +msgstr "Quality / Speed" + +msgid "Smooth" +msgstr "Smooth" + +msgid "Radius" +msgstr "Radius" + +msgid "Keep min" +msgstr "Keep min" + +msgid "Left mouse button:" +msgstr "Left mouse button:" + +msgid "Add detail" +msgstr "Add Detail" + +msgid "Right mouse button:" +msgstr "Right mouse button:" + +msgid "Remove detail" +msgstr "Remove detail" + +msgid "Shift + Left mouse button:" +msgstr "Shift + Left mouse button:" + +msgid "Reset to base" +msgstr "Reset to base" + +msgid "Shift + Right mouse button:" +msgstr "Shift + Right mouse button:" + +msgid "Smoothing" +msgstr "Smoothing" + +msgid "Mouse wheel:" +msgstr "Mouse wheel:" + +msgid "Increase/decrease edit area" +msgstr "Increase/decrease edit area" + +msgid "Sequence" +msgstr "Sequence" + +msgid "Mirror Object" +msgstr "Mirror object" + +msgid "Tool Move" +msgstr "Tool move" + +msgid "Tool Rotate" +msgstr "Tool Rotate" + +msgid "Move Object" +msgstr "Move object" + +msgid "Auto Orientation options" +msgstr "Auto orientation options" + +msgid "Enable rotation" +msgstr "Enable rotation" + +msgid "Optimize support interface area" +msgstr "Optimize support interface area" + +msgid "Orient" +msgstr "Orient" + +msgid "Arrange options" +msgstr "Arrange options" + +msgid "Spacing" +msgstr "Spacing" + +msgid "0 means auto spacing." +msgstr "0 means auto spacing." + +msgid "Auto rotate for arrangement" +msgstr "Auto rotate for arrangement" + +msgid "Allow multiple materials on same plate" +msgstr "Allow multiple materials on same plate" + +msgid "Avoid extrusion calibration region" +msgstr "Avoid extrusion calibration region" + +msgid "Align to Y axis" +msgstr "Align to Y axis" + +msgid "Add plate" +msgstr "Add Plate" + +msgid "Auto orient" +msgstr "Auto Orient" + +msgid "Arrange all objects" +msgstr "Arrange all objects" + +msgid "Arrange objects on selected plates" +msgstr "Arrange objects on selected plates" + +msgid "Split to objects" +msgstr "Split to Objects" + +msgid "Split to parts" +msgstr "Split to Parts" + +msgid "Assembly View" +msgstr "Assembly View" + +msgid "Select Plate" +msgstr "Select Plate" + +msgid "Assembly Return" +msgstr "Assembly Return" + +msgid "return" +msgstr "return" + +msgid "Paint Toolbar" +msgstr "Paint Toolbar" + +msgid "Explosion Ratio" +msgstr "Explosion Ratio" + +msgid "Section View" +msgstr "Section View" + +msgid "Assemble Control" +msgstr "Assembly Control" + +msgid "Total Volume:" +msgstr "Total Volume:" + +msgid "Assembly Info" +msgstr "Assembly Info" + +msgid "Volume:" +msgstr "Volume:" + +msgid "Size:" +msgstr "Size:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" + +msgid "An object is layed over the boundary of plate." +msgstr "An object is laid over the boundary of the plate." + +msgid "A G-code path goes beyond the max print height." +msgstr "A G-code path goes beyond the max print height." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "A G-code path goes beyond plate boundaries." + +msgid "Only the object being edit is visible." +msgstr "Only the object being edited is visible." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"An object is laid over the boundary of the plate or exceeds the height " +"limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." + +msgid "Calibration step selection" +msgstr "Calibration step selection" + +msgid "Micro lidar calibration" +msgstr "Micro lidar calibration" + +msgid "Bed leveling" +msgstr "Bed leveling" + +msgid "Vibration compensation" +msgstr "Vibration compensation" + +msgid "Motor noise cancellation" +msgstr "Motor noise cancellation" + +msgid "Calibration program" +msgstr "Calibration program" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." + +msgid "Calibration Flow" +msgstr "Calibration Flow" + +msgid "Start Calibration" +msgstr "Start Calibration" + +msgid "Completed" +msgstr "Completed" + +msgid "Calibrating" +msgstr "Calibrating" + +msgid "No step selected" +msgstr "No step selected" + +msgid "Auto-record Monitoring" +msgstr "Auto-record Monitoring" + +msgid "Go Live" +msgstr "Go Live" + +msgid "Liveview Retry" +msgstr "Liveview Retry" + +msgid "Resolution" +msgstr "Resolution" + +msgid "Enable" +msgstr "Enable" + +msgid "Hostname or IP" +msgstr "" + +msgid "Custom camera source" +msgstr "" + +msgid "Show \"Live Video\" guide page." +msgstr "Show \"Live Video\" guide page." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Connect Printer (LAN)" + +msgid "Please input the printer access code:" +msgstr "Please input the printer access code:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"You can find it in \"Settings > Network > Access code\"\n" +"on the printer, as shown in the figure:" + +msgid "Invalid input." +msgstr "Invalid input" + +msgid "New Window" +msgstr "New Window" + +msgid "Open a new window" +msgstr "Open a new window" + +msgid "Application is closing" +msgstr "Closing application" + +msgid "Closing Application while some presets are modified." +msgstr "Closing Application while some presets are modified." + +msgid "Logging" +msgstr "Logging" + +msgid "Preview" +msgstr "Preview" + +msgid "Multi-device" +msgstr "Multi-device" + +msgid "Project" +msgstr "Project" + +msgid "Yes" +msgstr "Yes" + +msgid "No" +msgstr "No" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "will be closed before creating a new model. Do you want to continue?" + +msgid "Slice plate" +msgstr "Slice plate" + +msgid "Print plate" +msgstr "Print plate" + +msgid "Slice all" +msgstr "Slice all" + +msgid "Export G-code file" +msgstr "Export G-code file" + +msgid "Export plate sliced file" +msgstr "Export plate sliced file" + +msgid "Export all sliced file" +msgstr "Export all sliced file" + +msgid "Print all" +msgstr "Print all" + +msgid "Send all" +msgstr "Send all" + +msgid "Keyboard Shortcuts" +msgstr "Keyboard Shortcuts" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Show the list of keyboard shortcuts" + +msgid "Setup Wizard" +msgstr "Setup Wizard" + +msgid "Show Configuration Folder" +msgstr "Show Configuration Folder" + +msgid "Show Tip of the Day" +msgstr "Show Tip of the Day" + +msgid "Check for Update" +msgstr "Check for Updates" + +msgid "Open Network Test" +msgstr "Open Network Test" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&About %s" + +msgid "Upload Models" +msgstr "Upload Models" + +msgid "Download Models" +msgstr "Download Models" + +msgid "Default View" +msgstr "Default View" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Top" + +msgid "Top View" +msgstr "Top View" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Bottom" + +msgid "Bottom View" +msgstr "Bottom View" + +msgid "Front" +msgstr "Front" + +msgid "Front View" +msgstr "Front View" + +msgid "Rear" +msgstr "Rear" + +msgid "Rear View" +msgstr "Rear View" + +msgid "Left" +msgstr "Left" + +msgid "Left View" +msgstr "Left View" + +msgid "Right" +msgstr "Right" + +msgid "Right View" +msgstr "Right View" + +msgid "Start a new window" +msgstr "Start a new window" + +msgid "New Project" +msgstr "New Project" + +msgid "Start a new project" +msgstr "Start a new project" + +msgid "Open a project file" +msgstr "Open a project file" + +msgid "Recent projects" +msgstr "Recent Projects" + +msgid "Save Project" +msgstr "Save Project" + +msgid "Save current project to file" +msgstr "Save current project to file" + +msgid "Save Project as" +msgstr "Save Project as" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Save current project as" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Import 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Load a model" + +msgid "Import Zip Archive" +msgstr "" + +msgid "Load models contained within a zip archive" +msgstr "" + +msgid "Import Configs" +msgstr "Import Configs" + +msgid "Load configs" +msgstr "Load configs" + +msgid "Import" +msgstr "Import" + +msgid "Export all objects as one STL" +msgstr "Export all objects as one STL" + +msgid "Export all objects as STLs" +msgstr "Export all objects as STLs" + +msgid "Export Generic 3MF" +msgstr "Export Generic 3MF" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Export 3mf file without using some 3mf-extensions" + +msgid "Export current sliced file" +msgstr "Export current sliced file" + +msgid "Export all plate sliced file" +msgstr "Export all plate sliced file" + +msgid "Export G-code" +msgstr "Export G-code" + +msgid "Export current plate as G-code" +msgstr "Export current plate as G-code" + +msgid "Export Preset Bundle" +msgstr "" + +msgid "Export current configuration to files" +msgstr "Export current configuration to files" + +msgid "Export" +msgstr "Export" + +msgid "Quit" +msgstr "Quit" + +msgid "Undo" +msgstr "Undo" + +msgid "Redo" +msgstr "Redo" + +msgid "Cut selection to clipboard" +msgstr "Cut selection to clipboard" + +msgid "Copy" +msgstr "Copy" + +msgid "Copy selection to clipboard" +msgstr "Copy selection to clipboard" + +msgid "Paste" +msgstr "Paste" + +msgid "Paste clipboard" +msgstr "Paste clipboard" + +msgid "Delete selected" +msgstr "Delete Selected" + +msgid "Deletes the current selection" +msgstr "Deletes the current selection" + +msgid "Delete all" +msgstr "Delete All" + +msgid "Deletes all objects" +msgstr "Deletes all objects" + +msgid "Clone selected" +msgstr "Clone Selected" + +msgid "Clone copies of selections" +msgstr "Clone copies of selections" + +msgid "Select all" +msgstr "Select All" + +msgid "Selects all objects" +msgstr "Selects all objects" + +msgid "Deselect all" +msgstr "Deselect All" + +msgid "Deselects all objects" +msgstr "Deselects all objects" + +msgid "Use Perspective View" +msgstr "Use Perspective View" + +msgid "Use Orthogonal View" +msgstr "Use Orthogonal View" + +msgid "Show &G-code Window" +msgstr "" + +msgid "Show g-code window in Previce scene" +msgstr "" + +msgid "Show 3D Navigator" +msgstr "" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "" + +msgid "Reset Window Layout" +msgstr "" + +msgid "Reset to default window layout" +msgstr "" + +msgid "Show &Labels" +msgstr "Show &Labels" + +msgid "Show object labels in 3D scene" +msgstr "Show object labels in 3D scene" + +msgid "Show &Overhang" +msgstr "Show &Overhang" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Show object overhang highlight in 3D scene" + +msgid "Preferences" +msgstr "Preferences" + +msgid "Help" +msgstr "Help" + +msgid "Temperature Calibration" +msgstr "Temperature Calibration" + +msgid "Pass 1" +msgstr "Pass 1" + +msgid "Flow rate test - Pass 1" +msgstr "Flow rate test - Pass 1" + +msgid "Pass 2" +msgstr "Pass 2" + +msgid "Flow rate test - Pass 2" +msgstr "Flow rate test - Pass 2" + +msgid "Flow rate" +msgstr "Flow rate" + +msgid "Pressure advance" +msgstr "Pressure advance" + +msgid "Retraction test" +msgstr "Retraction test" + +msgid "Orca Tolerance Test" +msgstr "Orca Tolerance Test" + +msgid "Max flowrate" +msgstr "Max flowrate" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "More..." + +msgid "Tutorial" +msgstr "Tutorial" + +msgid "Calibration help" +msgstr "Calibration help" + +msgid "More calibrations" +msgstr "More calibrations" + +msgid "&Open G-code" +msgstr "&Open G-code" + +msgid "Open a G-code file" +msgstr "Open a G-code file" + +msgid "Re&load from Disk" +msgstr "Re&load from Disk" + +msgid "Reload the plater from disk" +msgstr "Reload the plater from disk" + +msgid "Export &Toolpaths as OBJ" +msgstr "Export &Toolpaths as OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Export toolpaths as OBJ" + +msgid "Open &Slicer" +msgstr "Open &Slicer" + +msgid "Open Slicer" +msgstr "Open Slicer" + +msgid "&Quit" +msgstr "&Quit" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Quit %s" + +msgid "&File" +msgstr "&File" + +msgid "&View" +msgstr "&View" + +msgid "&Help" +msgstr "&Help" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "A file exists with the same name: %s. Do you want to override it?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "A config exists with the same name: %s. Do you want to override it?" + +msgid "Overwrite file" +msgstr "Overwrite file" + +msgid "Yes to All" +msgstr "Yes to All" + +msgid "No to All" +msgstr "No to All" + +msgid "Choose a directory" +msgstr "Choose a directory" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +msgstr[1] "" + +msgid "Export result" +msgstr "Export Result" + +msgid "Select profile to load:" +msgstr "Select profile to load:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +msgstr[1] "" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" + +msgid "Import result" +msgstr "Import result" + +msgid "File is missing" +msgstr "File is missing" + +msgid "The project is no longer available." +msgstr "The project is no longer available." + +msgid "Filament Settings" +msgstr "Filament settings" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. Process presets\n" +"2. Filament presets\n" +"3. Printer presets" + +msgid "Synchronization" +msgstr "Synchronization" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "The device cannot handle more conversations. Please retry later." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "Player is malfunctioning. Please reinstall the system player." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "The player is not loaded; please click the \"play\" button to retry." + +msgid "Please confirm if the printer is connected." +msgstr "Please confirm if the printer is connected." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"The printer is currently busy downloading. Please try again after it " +"finishes." + +msgid "Printer camera is malfunctioning." +msgstr "Printer camera is malfunctioning." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "A problem occurred. Please update the printer firmware and try again." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." + +msgid "Please enter the IP of printer to connect." +msgstr "Please enter the IP of the printer to connect." + +msgid "Initializing..." +msgstr "Initializing..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "Connection Failed. Please check the network and try again" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Please check the network and try again. You can restart or update the " +"printer if the issue persists." + +msgid "The printer has been logged out and cannot connect." +msgstr "The printer has been logged out and cannot connect." + +msgid "Stopped." +msgstr "Stopped." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "LAN Connection Failed (Failed to start liveview)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Downloading Virtual Camera Tools" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Virtual camera initialize failed (%s)!" + +msgid "Network unreachable" +msgstr "Network unreachable" + +msgid "Information" +msgstr "Information" + +msgid "Playing..." +msgstr "Playing..." + +msgid "Year" +msgstr "Year" + +msgid "Month" +msgstr "Month" + +msgid "All Files" +msgstr "All Files" + +msgid "Group files by year, recent first." +msgstr "Group files by year, recent first." + +msgid "Group files by month, recent first." +msgstr "Group files by month, recent first." + +msgid "Show all files, recent first." +msgstr "Show all files, recent first." + +msgid "Switch to timelapse files." +msgstr "Switch to timelapse files." + +msgid "Video" +msgstr "Video" + +msgid "Switch to video files." +msgstr "Switch to video files." + +msgid "Switch to 3mf model files." +msgstr "Switch to 3mf model files." + +msgid "Delete selected files from printer." +msgstr "Delete selected files from printer." + +msgid "Download" +msgstr "Download" + +msgid "Download selected files from printer." +msgstr "Download selected files from printer." + +msgid "Select" +msgstr "Select" + +msgid "Batch manage files." +msgstr "Batch manage files." + +msgid "Refresh" +msgstr "Refresh" + +msgid "Reload file list from printer." +msgstr "Reload file list from printer." + +msgid "No printers." +msgstr "No printers." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Connection failed [%d]!" + +msgid "Loading file list..." +msgstr "Loading file list..." + +msgid "No files" +msgstr "No files" + +msgid "Load failed" +msgstr "Load failed" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Initialization failed (Device connection not ready)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "LAN Connection Failed (Failed to view sdcard)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "Browsing file in SD card is not supported in LAN Only Mode." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Initialization failed (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +msgstr[1] "" + +msgid "Delete files" +msgstr "Delete files" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Do you want to delete the file '%s' from printer?" + +msgid "Delete file" +msgstr "Delete file" + +msgid "Fetching model infomations ..." +msgstr "Fetching model information..." + +msgid "Failed to fetch model information from printer." +msgstr "Failed to fetch model information from printer." + +msgid "Failed to parse model information." +msgstr "Failed to parse model information." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "File '%s' was lost! Please download it again." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"File: %s\n" +"Title: %s\n" + +msgid "Download waiting..." +msgstr "Download waiting..." + +msgid "Play" +msgstr "Play" + +msgid "Open Folder" +msgstr "Open Folder" + +msgid "Download finished" +msgstr "Download finished" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Downloading %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." + +msgid "File does not exist." +msgstr "File does not exist." + +msgid "File checksum error. Please retry." +msgstr "File checksum error. Please retry." + +msgid "Not supported on the current printer version." +msgstr "Not supported on the current printer version." + +msgid "Storage unavailable, insert SD card." +msgstr "Storage unavailable, insert Micro SD card." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Error code: %d" + +msgid "Speed:" +msgstr "Speed:" + +msgid "Deadzone:" +msgstr "Deadzone:" + +msgid "Options:" +msgstr "Options:" + +msgid "Zoom" +msgstr "Zoom" + +msgid "Translation/Zoom" +msgstr "Translation/Zoom" + +msgid "3Dconnexion settings" +msgstr "3Dconnexion settings" + +msgid "Swap Y/Z axes" +msgstr "Swap Y/Z axes" + +msgid "Invert X axis" +msgstr "" + +msgid "Invert Y axis" +msgstr "" + +msgid "Invert Z axis" +msgstr "" + +msgid "Invert Yaw axis" +msgstr "" + +msgid "Invert Pitch axis" +msgstr "" + +msgid "Invert Roll axis" +msgstr "" + +msgid "Printing Progress" +msgstr "Printing progress" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Layer: N/A" + +msgid "Clear" +msgstr "Clear" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"You have completed printing the mall model, \n" +"but synchronizing rating information has failed." + +msgid "How do you like this printing file?" +msgstr "How do you like this printing file?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" + +msgid "Rate" +msgstr "Rate" + +msgid "Camera" +msgstr "Camera" + +msgid "SD Card" +msgstr "MicroSD Card" + +msgid "Camera Setting" +msgstr "Camera Setting" + +msgid "Switch Camera View" +msgstr "" + +msgid "Control" +msgstr "Control" + +msgid "Printer Parts" +msgstr "Printer Parts" + +msgid "Print Options" +msgstr "Print Options" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Lamp" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Cham" + +msgid "Bed" +msgstr "Bed" + +msgid "Debug Info" +msgstr "Debug Info" + +msgid "No SD Card" +msgstr "No MicroSD Card" + +msgid "SD Card Abnormal" +msgstr "MicroSD Card Abnormal" + +msgid "Cancel print" +msgstr "Cancel print" + +msgid "Are you sure you want to cancel this print?" +msgstr "Are you sure you want to cancel this print?" + +msgid "Downloading..." +msgstr "Downloading..." + +msgid "Cloud Slicing..." +msgstr "Cloud Slicing..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "In Cloud Slicing Queue, there are %s tasks ahead of you." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Layer: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Layer: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." + +msgid "Still unload" +msgstr "Still unload" + +msgid "Still load" +msgstr "Still load" + +msgid "Please select an AMS slot before calibration" +msgstr "Please select an AMS slot before calibration." + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Cannot read filament info: the filament is loaded to the tool head. Please " +"unload the filament and try again." + +msgid "This only takes effect during printing" +msgstr "This only takes effect during printing" + +msgid "Silent" +msgstr "Silent" + +msgid "Standard" +msgstr "Standard" + +msgid "Sport" +msgstr "Sport" + +msgid "Ludicrous" +msgstr "Ludicrous" + +msgid "Can't start this without SD card." +msgstr "Can't start without MicroSD card." + +msgid "Rate the Print Profile" +msgstr "Rate the Print Profile" + +msgid "Comment" +msgstr "Comment" + +msgid "Rate this print" +msgstr "Rate this print" + +msgid "Add Photo" +msgstr "Add Photo" + +msgid "Delete Photo" +msgstr "Delete Photo" + +msgid "Submit" +msgstr "Submit" + +msgid "Please click on the star first." +msgstr "Please click on the star first." + +msgid "InFo" +msgstr "Info" + +msgid "Get oss config failed." +msgstr "Get oss config failed." + +msgid "Upload Pictrues" +msgstr "Upload Pictures" + +msgid "Number of images successfully uploaded" +msgstr "Number of images successfully uploaded" + +msgid " upload failed" +msgstr " upload failed" + +msgid " upload config prase failed\n" +msgstr " upload config prase failed\n" + +msgid " No corresponding storage bucket\n" +msgstr " No corresponding storage bucket\n" + +msgid " can not be opened\n" +msgstr " cannot be opened\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" + +msgid "info" +msgstr "info" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "Synchronizing the printing results. Please retry a few seconds later." + +msgid "Upload failed\n" +msgstr "Upload failed\n" + +msgid "obtaining instance_id failed\n" +msgstr "Obtaining instance_id failed\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Your comment result cannot be uploaded due to the following reasons:\n" +"\n" +" error code: " + +msgid "error message: " +msgstr "error message: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Would you like to redirect to the webpage to give a rating?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" + +msgid "You can select up to 16 images." +msgstr "You can select up to 16 images." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating (4 or 5 stars)." + +msgid "Status" +msgstr "Status" + +msgid "Update" +msgstr "Update" + +msgid "Don't show again" +msgstr "Don't show again" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s error" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s has encountered an error" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s warning" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s has a warning" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s info" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s information" + +msgid "Skip" +msgstr "Skip" + +msgid "Newer 3mf version" +msgstr "Newer 3mf version" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" + +msgid "Download Beta Version" +msgstr "Download Beta Version" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" + +msgid "Current Version: " +msgstr "Current Version: " + +msgid "Latest Version: " +msgstr "Latest Version: " + +msgid "Not for now" +msgstr "Not for now" + +msgid "3D Mouse disconnected." +msgstr "3D Mouse disconnected." + +msgid "Configuration can update now." +msgstr "A new configuration is available. Update now?" + +msgid "Detail." +msgstr "More" + +msgid "Integration was successful." +msgstr "Integration was successful." + +msgid "Integration failed." +msgstr "Integration failed." + +msgid "Undo integration was successful." +msgstr "Undo integration was successful." + +msgid "New network plug-in available." +msgstr "New network plug-in available" + +msgid "Details" +msgstr "Details" + +msgid "New printer config available." +msgstr "New printer config available." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "Undo integration failed." + +msgid "Exporting." +msgstr "Exporting" + +msgid "Software has New version." +msgstr "An update is available!" + +msgid "Goto download page." +msgstr "Go to download page" + +msgid "Open Folder." +msgstr "Open Folder." + +msgid "Safely remove hardware." +msgstr "Safely remove hardware." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d Object has custom supports." +msgstr[1] "%1$d Objects have custom supports." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d Object has color painting." +msgstr[1] "%1$d Objects have color painting." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "" +msgstr[1] "" + +msgid "ERROR" +msgstr "ERROR" + +msgid "COMPLETED" +msgstr "COMPLETED" + +msgid "CANCELED" +msgstr "CANCELED" + +msgid "Cancel upload" +msgstr "Cancel upload" + +msgid "Jump to" +msgstr "Jump to" + +msgid "Error:" +msgstr "Error:" + +msgid "Warning:" +msgstr "Warning:" + +msgid "Export successfully." +msgstr "Exported successfully" + +msgid "Model file downloaded." +msgstr "Model file downloaded." + +msgid "Serious warning:" +msgstr "Serious warning:" + +msgid " (Repair)" +msgstr " (Repair)" + +msgid " Click here to install it." +msgstr " Click here to install it." + +msgid "WARNING:" +msgstr "WARNING:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "Your model needs support! Please enable support material." + +msgid "Gcode path overlap" +msgstr "G-code path overlap" + +msgid "Support painting" +msgstr "Support Painting" + +msgid "Color painting" +msgstr "Color Painting" + +msgid "Cut connectors" +msgstr "Cut connectors" + +msgid "Layers" +msgstr "Layers" + +msgid "Range" +msgstr "Range" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"The application cannot run normally because your OpenGL version is lower " +"than 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Please upgrade your graphics card driver." + +msgid "Unsupported OpenGL version" +msgstr "Unsupported OpenGL version" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Unable to load shaders:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Error loading shaders" + +msgctxt "Layers" +msgid "Top" +msgstr "Top" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Bottom" + +msgid "Enable AI monitoring of printing" +msgstr "Enable AI monitoring of printing" + +msgid "Sensitivity of pausing is" +msgstr "Sensitivity of pausing is" + +msgid "Enable detection of build plate position" +msgstr "Enable detection of build plate position" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"The localization tag of the build plate will be detected, and printing will " +"be paused if the tag is not in predefined range." + +msgid "First Layer Inspection" +msgstr "First Layer Inspection" + +msgid "Auto-recovery from step loss" +msgstr "Auto-recover from step loss" + +msgid "Allow Prompt Sound" +msgstr "Allow Prompt Sound" + +msgid "Filament Tangle Detect" +msgstr "Filament Tangle Detection" + +msgid "Nozzle Clumping Detection" +msgstr "Nozzle Clumping Detection" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "Check if the nozzle is clumping by filament or other foreign objects." + +msgid "Nozzle Type" +msgstr "Nozzle Type" + +msgid "Stainless Steel" +msgstr "Stainless Steel" + +msgid "Hardened Steel" +msgstr "Hardened Steel" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Global" + +msgid "Objects" +msgstr "Objects" + +msgid "Advance" +msgstr "Advanced" + +msgid "Compare presets" +msgstr "Compare presets" + +msgid "View all object's settings" +msgstr "View all object's settings" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "" + +msgid "Auto orient objects on current plate" +msgstr "" + +msgid "Arrange objects on current plate" +msgstr "" + +msgid "Unlock current plate" +msgstr "" + +msgid "Lock current plate" +msgstr "" + +msgid "Edit current plate name" +msgstr "" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "" + +#, boost-format +msgid " plate %1%:" +msgstr " plate %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Invalid name, the following characters are not allowed:" + +msgid "Sliced Info" +msgstr "Sliced Info" + +msgid "Used Filament (m)" +msgstr "Used Filament (m)" + +msgid "Used Filament (mm³)" +msgstr "Used Filament (mm³)" + +msgid "Used Filament (g)" +msgstr "Used Filament (g)" + +msgid "Used Materials" +msgstr "Used Materials" + +msgid "Estimated time" +msgstr "Estimated time" + +msgid "Filament changes" +msgstr "Filament changes" + +msgid "Click to edit preset" +msgstr "Click to edit preset" + +msgid "Connection" +msgstr "Connection" + +msgid "Bed type" +msgstr "Bed type" + +msgid "Flushing volumes" +msgstr "Flushing volumes" + +msgid "Add one filament" +msgstr "Add one filament" + +msgid "Remove last filament" +msgstr "Remove last filament" + +msgid "Synchronize filament list from AMS" +msgstr "Synchronize filament list from AMS" + +msgid "Set filaments to use" +msgstr "Set filaments to use" + +msgid "Search plate, object and part." +msgstr "Search plate, object and part." + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." + +msgid "Sync filaments with AMS" +msgstr "Sync filaments with AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Already did a synchronization; do you want to sync only changes or resync " +"all?" + +msgid "Sync" +msgstr "Sync" + +msgid "Resync" +msgstr "Resync" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "There are no compatible filaments, and sync is not performed." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Do you want to save changes to \"%1%\"?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "Ejecting of device %s(%s) has failed." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "" +"Previously unsaved items have been detected. Do you want to restore them?" + +msgid "Restore" +msgstr "Restore" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"The current heatbed temperature is relatively high. The nozzle may clog when " +"printing this filament in a closed environment. Please open the front door " +"and/or remove the upper glass." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be worn down or damaged." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." + +msgid "Expand sidebar" +msgstr "" + +msgid "Collapse sidebar" +msgstr "" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Loading file: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "The 3mf is not supported by Snapmaker Orca, loading geometry data only." + +msgid "Load 3mf" +msgstr "Load 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" + +msgid "You'd better upgrade your software.\n" +msgstr "You should update your software.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." + +msgid "Invalid values found in the 3mf:" +msgstr "Invalid values found in the 3mf:" + +msgid "Please correct them in the param tabs" +msgstr "Please correct them in the Param tabs" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "The 3mf has following modified G-code in filament or printer presets:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" + +msgid "Modified G-codes" +msgstr "Modified G-code" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "The 3mf has following customized filament or printer presets:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" + +msgid "Customized Preset" +msgstr "Customized Preset" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "Component name(s) inside step file not in UTF8 format!" + +msgid "The name may show garbage characters!" +msgstr "Because of unsupported text encoding, garbage characters may appear!" + +msgid "Remember my choice." +msgstr "Remember my choice." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "Failed loading file \"%1%\". An invalid configuration was found." + +msgid "Objects with zero volume removed" +msgstr "Objects with zero volume removed" + +msgid "The volume of the object is zero" +msgstr "The volume of the object is zero" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"The object from file %s is too small, and may be in meters or inches.\n" +" Do you want to scale to millimeters?" + +msgid "Object too small" +msgstr "Object too small" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object with multiple parts?" + +msgid "Multi-part object detected" +msgstr "Multi-part object detected" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "Load these files as a single object with multiple parts?\n" + +msgid "Object with multiple parts was detected" +msgstr "An object with multiple parts was detected" + +msgid "The file does not contain any geometry data." +msgstr "The file does not contain any geometry data." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"print bed automatically?" + +msgid "Object too large" +msgstr "Object too large" + +msgid "Export STL file:" +msgstr "Export STL file:" + +msgid "Export AMF file:" +msgstr "Export AMF file:" + +msgid "Save file as:" +msgstr "Save file as" + +msgid "Export OBJ file:" +msgstr "Export OBJ file:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"The file %s already exists.\n" +"Do you want to replace it?" + +msgid "Confirm Save As" +msgstr "Confirm Save As" + +msgid "Delete object which is a part of cut object" +msgstr "Delete object which is a part of cut object" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"You are trying to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that, model consistency can't be guaranteed." + +msgid "The selected object couldn't be split." +msgstr "The selected object couldn't be split." + +msgid "Another export job is running." +msgstr "Another export job is running." + +msgid "Unable to replace with more than one volume" +msgstr "Unable to replace with more than one volume" + +msgid "Error during replace" +msgstr "Error during replacement" + +msgid "Replace from:" +msgstr "Replace from:" + +msgid "Select a new file" +msgstr "Select a new file" + +msgid "File for the replace wasn't selected" +msgstr "File for the replacement wasn't selected" + +msgid "Please select a file" +msgstr "Please select a file" + +msgid "Do you want to replace it" +msgstr "Do you want to replace it?" + +msgid "Message" +msgstr "Message" + +msgid "Reload from:" +msgstr "Reload from:" + +msgid "Unable to reload:" +msgstr "Unable to reload:" + +msgid "Error during reload" +msgstr "Error during reload" + +msgid "There are warnings after slicing models:" +msgstr "There are warnings after slicing models:" + +msgid "warnings" +msgstr "warnings" + +msgid "Invalid data" +msgstr "Invalid data" + +msgid "Slicing Canceled" +msgstr "Slicing Canceled" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Slicing Plate %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Please resolve the slicing errors and publish again." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Network Plug-in is not detected. Network related features are unavailable." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Preview only mode:\n" +"The loaded file contains G-code only, cannot enter the Prepare page" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "You can keep the modified presets for the new project or discard them" + +msgid "Creating a new project" +msgstr "Creating a new project" + +msgid "Load project" +msgstr "Load project" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs have the " +"project file open." + +msgid "Save project" +msgstr "Save project" + +msgid "Importing Model" +msgstr "Importing Model" + +msgid "prepare 3mf file..." +msgstr "preparing 3mf file..." + +msgid "Download failed, unknown file format." +msgstr "Download failed; unknown file format." + +msgid "downloading project ..." +msgstr "downloading project ..." + +msgid "Download failed, File size exception." +msgstr "Download failed; File size exception." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Project downloaded %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" + +msgid "Import SLA archive" +msgstr "" + +msgid "The selected file" +msgstr "The selected file" + +msgid "does not contain valid gcode." +msgstr "Does not contain valid G-code." + +msgid "Error occurs while loading G-code file" +msgstr "An Error has occurred while loading the G-code file." + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "" + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" + +msgid "Drop project file" +msgstr "Drop project file" + +msgid "Please select an action" +msgstr "Please select an action" + +msgid "Open as project" +msgstr "Open as project" + +msgid "Import geometry only" +msgstr "Import geometry only" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Only one G-code file can be opened at a time." + +msgid "G-code loading" +msgstr "G-code loading" + +msgid "G-code files can not be loaded with models together!" +msgstr "G-code files and models cannot be loaded together!" + +msgid "Can not add models when in preview mode!" +msgstr "Unable to add models in preview mode" + +msgid "All objects will be removed, continue?" +msgstr "All objects will be removed, continue?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"The current project has unsaved changes. Would you like to save before " +"continuing?" + +msgid "Number of copies:" +msgstr "Number of copies:" + +msgid "Copies of the selected object" +msgstr "Copies of the selected object" + +msgid "Save G-code file as:" +msgstr "Save G-code file as:" + +msgid "Save SLA file as:" +msgstr "Save SLA file as:" + +msgid "The provided file name is not valid." +msgstr "The provided file name is not valid." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "The following characters are not allowed by a FAT file system:" + +msgid "Save Sliced file as:" +msgstr "Save Sliced file as:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Reason: part \"%1%\" is empty." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Reason: part \"%1%\" does not bound a volume." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Reason: part \"%1%\" has self intersection." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Reason: \"%1%\" and another part have no intersection." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" + +msgid "Private protection" +msgstr "" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" + +msgid "Upload and Print" +msgstr "" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Print By Object: \n" +"We suggest using auto-arrange to avoid collisions when printing." + +msgid "Send G-code" +msgstr "Send G-code" + +msgid "Send to printer" +msgstr "Send to printer" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "Custom supports and color painting were removed before repairing." + +msgid "Optimize Rotation" +msgstr "" + +msgid "Invalid number" +msgstr "Invalid number" + +msgid "Plate Settings" +msgstr "Plate Settings" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Number of currently selected parts: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Number of currently selected objects: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Part name: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Object name: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Size: %1% x %2% x %3% in\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Size: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Volume: %1% in³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Volume: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Triangles: %1%\n" + +msgid "Tips:" +msgstr "Tips:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Plate% d: %s is not suggested for use printing filament %s(%s). If you still " +"want to do this print job, please set this filament's bed temperature to a " +"number that is not zero." + +msgid "Switching the language requires application restart.\n" +msgstr "Switching languages requires the application to restart.\n" + +msgid "Do you want to continue?" +msgstr "Do you want to continue?" + +msgid "Language selection" +msgstr "Language selection" + +msgid "Switching application language while some presets are modified." +msgstr "Switching application language while some presets are modified." + +msgid "Changing application language" +msgstr "Changing application language" + +msgid "Changing the region will log out your account.\n" +msgstr "Changing the region will log you out of your account.\n" + +msgid "Region selection" +msgstr "Region selection" + +msgid "Second" +msgstr "Second" + +msgid "Browse" +msgstr "Browse" + +msgid "Choose Download Directory" +msgstr "Choose Download Directory" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "General Settings" + +msgid "Asia-Pacific" +msgstr "Asia-Pacific" + +msgid "China" +msgstr "China" + +msgid "Europe" +msgstr "Europe" + +msgid "North America" +msgstr "North America" + +msgid "Others" +msgstr "Others" + +msgid "Login Region" +msgstr "Login Region" + +msgid "Stealth Mode" +msgstr "" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" + +msgid "Enable network plugin" +msgstr "" + +msgid "Check for stable updates only" +msgstr "" + +msgid "Metric" +msgstr "Metric" + +msgid "Imperial" +msgstr "Imperial" + +msgid "Units" +msgstr "Units" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this setting will allow only one instance." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Default Page" +msgstr "" + +msgid "Set the page opened on startup." +msgstr "" + +msgid "Touchpad" +msgstr "" + +msgid "Camera style" +msgstr "" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" + +msgid "Zoom to mouse position" +msgstr "Zoom to mouse position" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." + +msgid "Use free camera" +msgstr "" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" + +msgid "Reverse mouse zoom" +msgstr "" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" + +msgid "Show splash screen" +msgstr "" + +msgid "Show the splash screen during startup." +msgstr "" + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Show \"Tip of the day\" notification after start" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "If enabled, useful hints are displayed at startup." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "Flushing volumes: Auto-calculate everytime the color changed." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "If enabled, auto-calculate every time the color changes." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "Flushing volumes: Auto-calculate every time the filament is changed." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "If enabled, auto-calculate every time filament is changed" + +msgid "Remember printer configuration" +msgstr "" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." + +msgid "Network" +msgstr "" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "Auto sync user presets (Printer/Filament/Process)" + +msgid "User Sync" +msgstr "User Sync" + +msgid "Update built-in Presets automatically." +msgstr "Update built-in presets automatically." + +msgid "System Sync" +msgstr "System Sync" + +msgid "Clear my choice on the unsaved presets." +msgstr "Clear my choice on the unsaved presets." + +msgid "Associate files to Snapmaker Orca" +msgstr "Associate files to Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Associate .3mf files to Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"If enabled, this sets Snapmaker Orca as the default application to open .3mf " +"files." + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Associate .stl files to Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"If enabled, this sets Snapmaker Orca as the default application to open .stl " +"files." + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Associate .step/.stp files to Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"If enabled, this sets Snapmaker Orca as the default application to open .step " +"files." + +msgid "Associate web links to Snapmaker Orca" +msgstr "" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "" + +msgid "Maximum recent projects" +msgstr "Maximum recent projects" + +msgid "Maximum count of recent projects" +msgstr "Maximum count of recent projects" + +msgid "Clear my choice on the unsaved projects." +msgstr "Clear my choice on the unsaved projects." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "No warnings when loading 3MF with modified G-code" + +msgid "Auto-Backup" +msgstr "Auto-Backup" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Backup your project periodically to help with restoring from an occasional " +"crash." + +msgid "every" +msgstr "every" + +msgid "The peroid of backup in seconds." +msgstr "The period of backup in seconds." + +msgid "Downloads" +msgstr "Downloads" + +msgid "Dark Mode" +msgstr "Dark Mode" + +msgid "Enable Dark mode" +msgstr "Enable Dark Mode" + +msgid "Develop mode" +msgstr "Developer mode" + +msgid "Skip AMS blacklist check" +msgstr "Skip AMS blacklist check" + +msgid "Home page and daily tips" +msgstr "Home page and daily tips" + +msgid "Show home page on startup" +msgstr "Show home page on startup" + +msgid "Sync settings" +msgstr "Sync settings" + +msgid "User sync" +msgstr "User sync" + +msgid "Preset sync" +msgstr "Preset sync" + +msgid "Preferences sync" +msgstr "Preferences sync" + +msgid "View control settings" +msgstr "View control settings" + +msgid "Rotate of view" +msgstr "Rotate View" + +msgid "Move of view" +msgstr "Pan View" + +msgid "Zoom of view" +msgstr "Zoom View" + +msgid "Other" +msgstr "Other" + +msgid "Mouse wheel reverses when zooming" +msgstr "Reverse scroll direction while zooming" + +msgid "Enable SSL(MQTT)" +msgstr "Enable SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Enable SSL(FTP)" + +msgid "Internal developer mode" +msgstr "Internal developer mode" + +msgid "Log Level" +msgstr "Log Level" + +msgid "fatal" +msgstr "fatal" + +msgid "error" +msgstr "error" + +msgid "warning" +msgstr "warning" + +msgid "debug" +msgstr "debug" + +msgid "trace" +msgstr "trace" + +msgid "Host Setting" +msgstr "Host Setting" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEV host: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA host: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "PRE host: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Product host" + +msgid "debug save button" +msgstr "Debug save button" + +msgid "save debug settings" +msgstr "save debug settings" + +msgid "DEBUG settings have saved successfully!" +msgstr "Debug settings have been saved successfully!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Cloud environment switched; please login again!" + +msgid "System presets" +msgstr "System presets" + +msgid "User presets" +msgstr "User presets" + +msgid "Incompatible presets" +msgstr "Incompatible presets" + +msgid "AMS filaments" +msgstr "AMS filament" + +msgid "Click to pick filament color" +msgstr "Click to select filament color" + +msgid "Please choose the filament colour" +msgstr "Please choose the filament color" + +msgid "Add/Remove presets" +msgstr "Add/Remove presets" + +msgid "Edit preset" +msgstr "Edit preset" + +msgid "Project-inside presets" +msgstr "Project-inside presets" + +msgid "Add/Remove filaments" +msgstr "Add/Remove filament" + +msgid "Add/Remove materials" +msgstr "Add/Remove materials" + +msgid "Select/Remove printers(system presets)" +msgstr "Select/Remove printers(system presets)" + +msgid "Create printer" +msgstr "Create printer" + +msgid "The selected preset is null!" +msgstr "The selected preset is null!" + +msgid "End" +msgstr "End" + +msgid "Customize" +msgstr "Customize" + +msgid "Other layer filament sequence" +msgstr "Other layer filament sequence" + +msgid "Please input layer value (>= 2)." +msgstr "Please input layer value (>= 2)." + +msgid "Plate name" +msgstr "Plate name" + +msgid "Same as Global Print Sequence" +msgstr "Same as Global Print Sequence" + +msgid "Print sequence" +msgstr "Print sequence" + +msgid "Same as Global" +msgstr "Same as Global" + +msgid "Disable" +msgstr "Disable" + +msgid "Spiral vase" +msgstr "Spiral vase" + +msgid "First layer filament sequence" +msgstr "First layer filament sequence" + +msgid "Same as Global Plate Type" +msgstr "Same as Global Plate Type" + +msgid "Same as Global Bed Type" +msgstr "Same as Global Plate Type" + +msgid "By Layer" +msgstr "By Layer" + +msgid "By Object" +msgstr "By Object" + +msgid "Accept" +msgstr "Accept" + +msgid "Log Out" +msgstr "Log Out" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "Slice all plates to obtain time and filament estimation" + +msgid "Packing project data into 3mf file" +msgstr "Packing project data into 3mf file" + +msgid "Uploading 3mf" +msgstr "Uploading 3mf" + +msgid "Jump to model publish web page" +msgstr "Jump to model publish web page" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "Note: The preparation may take several minutes. Please be patient." + +msgid "Publish" +msgstr "Publish" + +msgid "Publish was cancelled" +msgstr "Publish was cancelled" + +msgid "Slicing Plate 1" +msgstr "Slicing Plate 1" + +msgid "Packing data to 3mf" +msgstr "Packing data to 3mf" + +msgid "Jump to webpage" +msgstr "Jump to webpage" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Save %s as" + +msgid "User Preset" +msgstr "User Preset" + +msgid "Preset Inside Project" +msgstr "Preset Inside Project" + +msgid "Name is unavailable." +msgstr "Name is unavailable." + +msgid "Overwrite a system profile is not allowed" +msgstr "Overwriting a system profile is not allowed." + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "Preset \"%1%\" already exists." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "" +"Preset \"%1%\" already exists and is incompatible with the current printer." + +msgid "Please note that saving action will replace this preset" +msgstr "Please note that saving will overwrite the current preset." + +msgid "The name cannot be the same as a preset alias name." +msgstr "The name cannot be the same as a preset alias name." + +msgid "Save preset" +msgstr "Save preset" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Copy" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "Printer \"%1%\" is selected with preset \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Please choose an action with \"%1%\" preset after saving." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "For \"%1%\", change \"%2%\" to \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "For \"%1%\", add \"%2%\" as a new preset" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Simply switch to \"%1%\"" + +msgid "Task canceled" +msgstr "Task canceled" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Search" + +msgid "My Device" +msgstr "My Device" + +msgid "Other Device" +msgstr "Other Device" + +msgid "Online" +msgstr "Online" + +msgid "Input access code" +msgstr "Input access code" + +msgid "Can't find my devices?" +msgstr "Can't find devices?" + +msgid "Log out successful." +msgstr "Log out successful." + +msgid "Busy" +msgstr "Busy" + +msgid "Bambu Cool Plate" +msgstr "Bambu Cool Plate" + +msgid "PLA Plate" +msgstr "PLA Plate" + +msgid "Bambu Engineering Plate" +msgstr "Bambu Engineering Plate" + +msgid "Bambu Smooth PEI Plate" +msgstr "" + +msgid "High temperature Plate" +msgstr "High temperature Plate" + +msgid "Bambu Textured PEI Plate" +msgstr "" + +msgid "Send print job to" +msgstr "Send print job to" + +msgid "Flow Dynamics Calibration" +msgstr "Flow Dynamics Calibration" + +msgid "Click here if you can't connect to the printer" +msgstr "Click here if you can't connect to the printer" + +msgid "send completed" +msgstr "Send complete" + +msgid "Error code" +msgstr "Error code" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "No login account, only printers in LAN mode are displayed" + +msgid "Connecting to server" +msgstr "Connecting to server" + +msgid "Synchronizing device information" +msgstr "Synchronizing device information" + +msgid "Synchronizing device information time out" +msgstr "Synchronizing device information timed out" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "Cannot send a print job while the printer is updating firmware" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"The printer is executing instructions. Please restart printing after it ends" + +msgid "The printer is busy on other print job" +msgstr "The printer is busy with another print job." + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." + +msgid "An SD card needs to be inserted before printing." +msgstr "A MicroSD card needs to be inserted before printing." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "A MicroSD card needs to be inserted to record a timelapse." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "Cannot send the print job to a printer whose firmware must be updated." + +msgid "Cannot send the print job for empty plate" +msgstr "Cannot send a print job for an empty plate." + +msgid "This printer does not support printing all plates" +msgstr "This printer does not support printing all plates" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"When spiral vase mode is enabled, machines with I3 structure will not " +"generate timelapse videos." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Timelapse is not supported because Print sequence is set to \"By object\"." + +msgid "Errors" +msgstr "Errors" + +msgid "Please check the following:" +msgstr "Please check the following:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, click \"Confirm\" to " +"start printing." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "nozzle in preset: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "nozzle memorized: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Your nozzle diameter in sliced file is not consistent with the saved nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "Please fix the error above, otherwise printing cannot continue." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Please click the confirm button if you still want to proceed with printing." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Connecting to the printer. Unable to cancel during the connection process." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Automatic flow calibration using Micro Lidar" + +msgid "Modifying the device name" +msgstr "Modifying the device name" + +msgid "Bind with Pin Code" +msgstr "Bind with Pin Code" + +msgid "Send to Printer SD card" +msgstr "Send to Printer MicroSD card" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "Cannot send print tasks when an update is in progress" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "The selected printer is incompatible with the chosen printer presets." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "" +"A MicroSD card needs to be inserted before sending to the printer SD card." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "The printer is required to be on the same LAN as Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "The printer does not support sending to printer MicroSD card." + +msgid "Slice ok." +msgstr "Slice complete" + +msgid "View all Daily tips" +msgstr "View all Daily tips" + +msgid "Failed to create socket" +msgstr "Failed to create socket" + +msgid "Failed to connect socket" +msgstr "Failed to connect socket" + +msgid "Failed to publish login request" +msgstr "Failed to publish login request" + +msgid "Get ticket from device timeout" +msgstr "Timeout getting ticket from device" + +msgid "Get ticket from server timeout" +msgstr "Timeout getting ticket from server" + +msgid "Failed to post ticket to server" +msgstr "Failed to post ticket to server" + +msgid "Failed to parse login report reason" +msgstr "Failed to parse login report reason" + +msgid "Receive login report timeout" +msgstr "Receive login report timeout" + +msgid "Unknown Failure" +msgstr "Unknown Failure" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." + +msgid "Can't find Pin Code?" +msgstr "Can't find Pin Code?" + +msgid "Pin Code" +msgstr "Pin Code" + +msgid "Binding..." +msgstr "Binding..." + +msgid "Please confirm on the printer screen" +msgstr "Please confirm on the printer screen" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Log in failed. Please check the Pin Code." + +msgid "Log in printer" +msgstr "Log in printer" + +msgid "Would you like to log in this printer with current account?" +msgstr "Would you like to log in this printer with the current account?" + +msgid "Check the reason" +msgstr "Check the reason" + +msgid "Read and accept" +msgstr "Read and accept" + +msgid "Terms and Conditions" +msgstr "Terms and Conditions" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Thank you for purchasing a Bambu Lab device. Before using your Bambu Lab " +"device, please read the terms and conditions. By clicking to agree to use " +"your Bambu Lab device, you agree to abide by the Privacy Policy and Terms of " +"Use (collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." + +msgid "and" +msgstr "and" + +msgid "Privacy Policy" +msgstr "Privacy Policy" + +msgid "We ask for your help to improve everyone's printer" +msgstr "We ask for your help to improve everyone's printer" + +msgid "Statement about User Experience Improvement Program" +msgstr "Statement about User Experience Improvement Program" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Statement on User Experience Improvement Plan" + +msgid "Log in successful." +msgstr "Log in successful." + +msgid "Log out printer" +msgstr "Log out printer" + +msgid "Would you like to log out the printer?" +msgstr "Would you like to log out the printer?" + +msgid "Please log in first." +msgstr "Please log in first." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "There was a problem connecting to the printer. Please try again." + +msgid "Failed to log out." +msgstr "Failed to log out." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Save current %s" + +msgid "Delete this preset" +msgstr "Delete this preset" + +msgid "Search in preset" +msgstr "Search in preset" + +msgid "Click to reset all settings to the last saved preset." +msgstr "Click to reset all settings to the last saved preset." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"A Prime tower is required for smooth timeplase mode. There may be flaws on " +"the model without a prime tower. Are you sure you want to disable the prime " +"tower?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"A prime tower is required for smooth timelapse mode. There may be flaws on " +"the model without prime tower. Do you want to enable the prime tower?" + +msgid "Still print by object?" +msgstr "Still print by object?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically.\n" +"No - Do not change these settings for me." + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"When using support material for the support interface, we recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" + +msgid "Are you sure you want to enable this option?" +msgstr "" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." + +msgid "Adjust to the set range automatically? \n" +msgstr "Adjust to the set range automatically? \n" + +msgid "Adjust" +msgstr "Adjust" + +msgid "Ignore" +msgstr "Ignore" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications. Please use with the latest printer firmware." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." + +msgid "Line width" +msgstr "Line width" + +msgid "Seam" +msgstr "Seam" + +msgid "Precision" +msgstr "Precision" + +msgid "Wall generator" +msgstr "Wall generator" + +msgid "Walls and surfaces" +msgstr "" + +msgid "Bridging" +msgstr "" + +msgid "Overhangs" +msgstr "" + +msgid "Walls" +msgstr "Walls" + +msgid "Top/bottom shells" +msgstr "Top/bottom shells" + +msgid "Initial layer speed" +msgstr "First layer speed" + +msgid "Other layers speed" +msgstr "Other layers speed" + +msgid "Overhang speed" +msgstr "Overhang speed" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" + +msgid "Bridge" +msgstr "Bridge" + +msgid "Set speed for external and internal bridges" +msgstr "" + +msgid "Travel speed" +msgstr "Travel speed" + +msgid "Acceleration" +msgstr "Acceleration" + +msgid "Jerk(XY)" +msgstr "Jerk(XY)" + +msgid "Raft" +msgstr "Raft" + +msgid "Support filament" +msgstr "Filament for Supports" + +msgid "Tree supports" +msgstr "" + +msgid "Skirt" +msgstr "" + +msgid "Prime tower" +msgstr "Prime tower" + +msgid "Special mode" +msgstr "Special mode" + +msgid "G-code output" +msgstr "G-code output" + +msgid "Post-processing Scripts" +msgstr "Post-processing Scripts" + +msgid "Notes" +msgstr "Notes" + +msgid "Frequent" +msgstr "Frequent" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or G-code visualization and print time estimation will be " +"broken." +msgstr[1] "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or G-code visualization and print time estimation will " +"be broken." + +msgid "Reserved keywords found" +msgstr "Reserved keywords found" + +msgid "Setting Overrides" +msgstr "Setting Overrides" + +msgid "Retraction" +msgstr "Retraction" + +msgid "Basic information" +msgstr "Basic information" + +msgid "Recommended nozzle temperature" +msgstr "Recommended nozzle temperature" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "Recommended nozzle temperature range of this filament. 0 means not set" + +msgid "Print chamber temperature" +msgstr "" + +msgid "Print temperature" +msgstr "Print temperature" + +msgid "Nozzle" +msgstr "Nozzle" + +msgid "Left Nozzle" +msgstr "Left Nozzle" + +msgid "Right Nozzle" +msgstr "Right Nozzle" + +msgid "Nozzle temperature when printing" +msgstr "Nozzle temperature when printing" + +msgid "Cool plate" +msgstr "Cool plate" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"This is the bed temperature when the cool plate is installed. A value of 0 " +"means the filament does not support printing on the Cool Plate." + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "Engineering plate" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"This is the bed temperature when the engineering plate is installed. A value " +"of 0 means the filament does not support printing on the Engineering Plate." + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Smooth PEI Plate / High Temp Plate" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" + +msgid "Textured PEI Plate" +msgstr "Textured PEI Plate" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Bed temperature when Textured PEI Plate is installed. 0 means the filament " +"is not supported on the Textured PEI Plate" + +msgid "Volumetric speed limitation" +msgstr "Volumetric speed limitation" + +msgid "Cooling" +msgstr "Cooling" + +msgid "Cooling for specific layer" +msgstr "Cooling for specific layer" + +msgid "Part cooling fan" +msgstr "Part cooling fan" + +msgid "Min fan speed threshold" +msgstr "Min fan speed threshold" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"The part cooling fan will run at the minimum fan speed when the estimated " +"layer time is longer than the threshold value. When the layer time is " +"shorter than the threshold, the fan speed will be interpolated between the " +"minimum and maximum fan speed according to layer printing time." + +msgid "Max fan speed threshold" +msgstr "Max fan speed threshold" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"The part cooling fan will run at maximum speed when the estimated layer time " +"is shorter than the threshold value." + +msgid "Auxiliary part cooling fan" +msgstr "Auxiliary part cooling fan" + +msgid "Exhaust fan" +msgstr "Exhaust fan" + +msgid "During print" +msgstr "During print" + +msgid "Complete print" +msgstr "Complete print" + +msgid "Filament start G-code" +msgstr "Filament start G-code" + +msgid "Filament end G-code" +msgstr "Filament end G-code" + +msgid "Multimaterial" +msgstr "" + +msgid "Wipe tower parameters" +msgstr "" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "Toolchange parameters with single extruder MM printers" + +msgid "Ramming settings" +msgstr "" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "" + +msgid "Printable space" +msgstr "Printable space" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "" + +msgid "G-code flavor is switched" +msgstr "" + +msgid "Cooling Fan" +msgstr "" + +msgid "Fan speed-up time" +msgstr "" + +msgid "Extruder Clearance" +msgstr "Extruder Clearance" + +msgid "Adaptive bed mesh" +msgstr "" + +msgid "Accessory" +msgstr "Accessory" + +msgid "Machine gcode" +msgstr "Machine G-code" + +msgid "Machine start G-code" +msgstr "Machine start G-code" + +msgid "Machine end G-code" +msgstr "Machine end G-code" + +msgid "Printing by object G-code" +msgstr "Printing by object G-code" + +msgid "Before layer change G-code" +msgstr "Before layer change G-code" + +msgid "Layer change G-code" +msgstr "Layer change G-code" + +msgid "Time lapse G-code" +msgstr "Time lapse G-code" + +msgid "Change filament G-code" +msgstr "Change filament G-code" + +msgid "Change extrusion role G-code" +msgstr "" + +msgid "Pause G-code" +msgstr "Pause G-code" + +msgid "Template Custom G-code" +msgstr "Template Custom G-code" + +msgid "Motion ability" +msgstr "Motion ability" + +msgid "Normal" +msgstr "Normal" + +msgid "Speed limitation" +msgstr "Speed limitation" + +msgid "Acceleration limitation" +msgstr "Acceleration limitation" + +msgid "Jerk limitation" +msgstr "Jerk limitation" + +msgid "Single extruder multimaterial setup" +msgstr "" + +msgid "Wipe tower" +msgstr "" + +msgid "Single extruder multimaterial parameters" +msgstr "" + +msgid "Layer height limits" +msgstr "Layer height limits" + +msgid "Lift Z Enforcement" +msgstr "" + +msgid "Retraction when switching material" +msgstr "Retraction when switching material" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Disable it in order to enable Firmware Retraction?" + +msgid "Firmware Retraction" +msgstr "Firmware Retraction" + +msgid "Detached" +msgstr "Detached" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "Presets inherited by other presets can not be deleted!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Preset" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "The following preset will be deleted too:" +msgstr[1] "The following presets will be deleted too:" + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Are you sure you want to %1% the selected preset?" + +msgid "All" +msgstr "All" + +msgid "Set" +msgstr "Set" + +msgid "Click to reset current value and attach to the global value." +msgstr "Click to reset current value and attach to the global value." + +msgid "Click to drop current modify and reset to saved value." +msgstr "Click to drop current modifications and reset to saved value." + +msgid "Process Settings" +msgstr "Process Settings" + +msgid "Undef" +msgstr "Undefined" + +msgid "Unsaved Changes" +msgstr "unsaved changes" + +msgid "Transfer or discard changes" +msgstr "Transfer or discard changes" + +msgid "Old Value" +msgstr "Old value" + +msgid "New Value" +msgstr "New Value" + +msgid "Transfer" +msgstr "Transfer" + +msgid "Don't save" +msgstr "Don't save" + +msgid "Discard" +msgstr "Discard" + +msgid "Click the right mouse button to display the full text." +msgstr "Click the right mouse button to display the full text." + +msgid "All changes will not be saved" +msgstr "No changes will be saved." + +msgid "All changes will be discarded." +msgstr "All changes will be discarded." + +msgid "Save the selected options." +msgstr "Save the selected options." + +msgid "Keep the selected options." +msgstr "Keep the selected options." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Transfer the selected options to the newly selected preset." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Save the selected options to preset \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "Preset \"%1%\" contains the following unsaved changes:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "You have changed some settings of preset \"%1%\". " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"You can save or discard the preset values you have modified." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" + +msgid "You have previously modified your settings." +msgstr "You have previously modified your settings." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" + +msgid "Extruders count" +msgstr "Extruder count" + +msgid "General" +msgstr "General" + +msgid "Capabilities" +msgstr "Capabilities" + +msgid "Show all presets (including incompatible)" +msgstr "Show all presets (including incompatible)" + +msgid "Select presets to compare" +msgstr "Select presets to compare" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" + +msgid "Transfer values from left to right" +msgstr "" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" + +msgid "Add File" +msgstr "Add File" + +msgid "Set as cover" +msgstr "Set as cover" + +msgid "Cover" +msgstr "Cover" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "The name \"%1%\" already exists." + +msgid "Basic Info" +msgstr "Basic Info" + +msgid "Pictures" +msgstr "Pictures" + +msgid "Bill of Materials" +msgstr "Bill of Materials" + +msgid "Assembly Guide" +msgstr "Assembly Guide" + +msgid "Author" +msgstr "Author" + +msgid "Model Name" +msgstr "Model Name" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Update" + +msgid "A new version is available" +msgstr "A new version is available" + +msgid "Configuration update" +msgstr "Configuration update" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "A new configuration package is available. Do you want to install it?" + +msgid "Description:" +msgstr "Description:" + +msgid "Configuration incompatible" +msgstr "Configuration incompatible" + +msgid "the configuration package is incompatible with current application." +msgstr "" +"the configuration package is incompatible with the current application." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"The configuration package is incompatible with the current application.\n" +"%s will update the configuration package to allow the application to start." + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Exit %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "" +"The configuration package is incompatible with the current version of Bambu " +"Studio." + +msgid "Configuration updates" +msgstr "Configuration updates" + +msgid "No updates available." +msgstr "No updates available." + +msgid "The configuration is up to date." +msgstr "The configuration is up to date." + +msgid "Obj file Import color" +msgstr "Obj file Import color" + +msgid "Specify number of colors:" +msgstr "Specify number of colors:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "The color count should be in range [%d, %d]." + +msgid "Recommended " +msgstr "Recommended " + +msgid "Current filament colors:" +msgstr "Current filament colors:" + +msgid "Quick set:" +msgstr "Quick set:" + +msgid "Color match" +msgstr "Color match" + +msgid "Approximate color matching." +msgstr "Approximate color matching." + +msgid "Append" +msgstr "Append" + +msgid "Add consumable extruder after existing extruders." +msgstr "Add consumable extruder after existing extruders." + +msgid "Reset mapped extruders." +msgstr "Reset mapped extruders." + +msgid "Cluster colors" +msgstr "Cluster colors" + +msgid "Map Filament" +msgstr "Map Filament" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Warning: The count of newly added and \n" +" current extruders exceeds 16." + +msgid "Ramming customization" +msgstr "" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" + +msgid "Total ramming time" +msgstr "" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "" + +msgid "Ramming line width" +msgstr "" + +msgid "Ramming line spacing" +msgstr "" + +msgid "Auto-Calc" +msgstr "Auto-Calc" + +msgid "Re-calculate" +msgstr "Re-calculate" + +msgid "Flushing volumes for filament change" +msgstr "Flushing volumes for filament change" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Flushing volume (mm³) for each filament pair." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Suggestion: Flushing Volume in range [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "The multiplier should be in range [%.2f, %.2f]." + +msgid "Multiplier" +msgstr "Multiplier" + +msgid "unloaded" +msgstr "unloaded" + +msgid "loaded" +msgstr "loaded" + +msgid "Filament #" +msgstr "Filament #" + +msgid "From" +msgstr "From" + +msgid "To" +msgstr "To" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "Bambu Network plug-in not detected." + +msgid "Click here to download it." +msgstr "Click here to download it." + +msgid "Login" +msgstr "Login" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "The configuration package is changed in previous Config Guide" + +msgid "Configuration package changed" +msgstr "Configuration package changed" + +msgid "Toolbar" +msgstr "Toolbar" + +msgid "Objects list" +msgstr "Objects list" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Import geometry data from STL/STEP/3MF/OBJ/AMF files" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Paste from clipboard" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "Show/Hide 3Dconnexion devices settings dialog" + +msgid "Switch table page" +msgstr "Switch table page" + +msgid "Show keyboard shortcuts list" +msgstr "Show keyboard shortcuts list" + +msgid "Global shortcuts" +msgstr "Global shortcuts" + +msgid "Rotate View" +msgstr "Rotate View" + +msgid "Pan View" +msgstr "Pan View" + +msgid "Mouse wheel" +msgstr "Mouse wheel" + +msgid "Zoom View" +msgstr "Zoom View" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"This auto orients selected objects or all objects. If there are selected " +"objects, it just orients the selected ones. Otherwise, it will orient all " +"objects in the current plate." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Collapse/Expand the sidebar" + +msgid "⌘+Any arrow" +msgstr "⌘+Any arrow" + +msgid "Movement in camera space" +msgstr "Movement in camera space" + +msgid "⌥+Left mouse button" +msgstr "⌥+Left mouse button" + +msgid "Select a part" +msgstr "Select a part" + +msgid "⌘+Left mouse button" +msgstr "⌘+Left mouse button" + +msgid "Select multiple objects" +msgstr "Select multiple objects" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+Any arrow" + +msgid "Alt+Left mouse button" +msgstr "Alt+Left mouse button" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+Left mouse button" + +msgid "Shift+Left mouse button" +msgstr "Shift+Left mouse button" + +msgid "Select objects by rectangle" +msgstr "Select objects by rectangle" + +msgid "Arrow Up" +msgstr "Arrow Up" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Move selection 10mm in positive Y direction" + +msgid "Arrow Down" +msgstr "Arrow Down" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Move selection 10mm in negative Y direction" + +msgid "Arrow Left" +msgstr "Arrow Left" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Move selection 10mm in negative X direction" + +msgid "Arrow Right" +msgstr "Arrow Right" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Move selection 10mm in positive X direction" + +msgid "Shift+Any arrow" +msgstr "Shift+Any arrow" + +msgid "Movement step set to 1 mm" +msgstr "Movement step set to 1mm" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "Keyboard 1-9: set filament for object/part" + +msgid "Camera view - Default" +msgstr "Camera view - Default" + +msgid "Camera view - Top" +msgstr "Camera view - Top" + +msgid "Camera view - Bottom" +msgstr "Camera view - Bottom" + +msgid "Camera view - Front" +msgstr "Camera view - Front" + +msgid "Camera view - Behind" +msgstr "Camera view - Behind" + +msgid "Camera Angle - Left side" +msgstr "Camera Angle - Left side" + +msgid "Camera Angle - Right side" +msgstr "Camera Angle - Right side" + +msgid "Select all objects" +msgstr "Select all objects" + +msgid "Gizmo move" +msgstr "Gizmo move" + +msgid "Gizmo scale" +msgstr "Gizmo scale" + +msgid "Gizmo rotate" +msgstr "Gizmo rotate" + +msgid "Gizmo cut" +msgstr "Gizmo cut" + +msgid "Gizmo Place face on bed" +msgstr "Gizmo Place face on bed" + +msgid "Gizmo SLA support points" +msgstr "Gizmo SLA support points" + +msgid "Gizmo FDM paint-on seam" +msgstr "Gizmo FDM paint-on seam" + +msgid "Gizmo Text emboss / engrave" +msgstr "" + +msgid "Zoom in" +msgstr "" + +msgid "Zoom out" +msgstr "" + +msgid "Switch between Prepare/Preview" +msgstr "" + +msgid "Plater" +msgstr "Plater" + +msgid "Move: press to snap by 1mm" +msgstr "Move: press to snap by 1mm" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Mouse wheel" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Support/Color Painting: adjust pen radius" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Mouse wheel" + +msgid "Support/Color Painting: adjust section position" +msgstr "Support/Color Painting: adjust section position" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Mouse wheel" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Mouse wheel" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Set extruder number for the objects and parts" + +msgid "Delete objects, parts, modifiers " +msgstr "Delete objects, parts, modifiers" + +msgid "Select the object/part and press space to change the name" +msgstr "Select the object/part and press space to change the name" + +msgid "Mouse click" +msgstr "Mouse click" + +msgid "Select the object/part and mouse click to change the name" +msgstr "Select the object/part and mouse click to change the name" + +msgid "Objects List" +msgstr "Objects List" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Vertical slider - Move active thumb Up" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Vertical slider - Move active thumb Down" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Horizontal slider - Move active thumb Left" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Horizontal slider - Move active thumb Right" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "On/Off one layer mode of the vertical slider" + +msgid "On/Off g-code window" +msgstr "" + +msgid "Move slider 5x faster" +msgstr "Move slider 5x faster" + +msgid "Shift+Mouse wheel" +msgstr "Shift+Mouse wheel" + +msgid "Horizontal slider - Move to start position" +msgstr "" + +msgid "Horizontal slider - Move to last position" +msgstr "" + +msgid "Release Note" +msgstr "Release Note" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "version %s update information:" + +msgid "Network plug-in update" +msgstr "Network plug-in update" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Click OK to update the Network plug-in the next time Snapmaker Orca launches." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "A new network plug-in (%s) is available. Do you want to install it?" + +msgid "New version of Snapmaker Orca" +msgstr "New version of Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Skip this Version" + +msgid "Done" +msgstr "Done" + +msgid "resume" +msgstr "resume" + +msgid "Resume Printing" +msgstr "Resume Printing" + +msgid "Resume Printing(defects acceptable)" +msgstr "Resume Printing (defects acceptable)" + +msgid "Resume Printing(problem solved)" +msgstr "Resume Printing (problem solved)" + +msgid "Stop Printing" +msgstr "Stop Printing" + +msgid "Check Assistant" +msgstr "Check Assistant" + +msgid "Filament Extruded, Continue" +msgstr "Filament Extruded, Continue" + +msgid "Not Extruded Yet, Retry" +msgstr "Not Extruded Yet, Retry" + +msgid "Finished, Continue" +msgstr "Finished, Continue" + +msgid "Load Filament" +msgstr "Load" + +msgid "Filament Loaded, Resume" +msgstr "Filament Loaded, Resume" + +msgid "View Liveview" +msgstr "View Liveview" + +msgid "Confirm and Update Nozzle" +msgstr "Confirm and Update Nozzle" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "LAN Connection Failed (Sending print file)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Step 1, please confirm that Snapmaker Orca and your printer are on the same LAN." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Access Code" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Where to find your printer's IP and Access Code?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "Step 3: Ping the IP address to check for packet loss and latency." + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP and Access Code Verified! You may close the window" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "Connection failed, please double check IP and Access Code" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" + +msgid "Model:" +msgstr "Model:" + +msgid "Serial:" +msgstr "Serial:" + +msgid "Version:" +msgstr "Version:" + +msgid "Update firmware" +msgstr "Update firmware" + +msgid "Beta version" +msgstr "Beta version" + +msgid "Latest version" +msgstr "Latest version" + +msgid "Updating" +msgstr "Updating" + +msgid "Updating failed" +msgstr "Updating failed" + +msgid "Updating successful" +msgstr "Update successful" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Update " +"firmware'." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on the " +"printer or update next time you start Snapmaker Orca." + +msgid "Extension Board" +msgstr "Extension Board" + +msgid "Saving objects into the 3mf failed." +msgstr "Saving objects into the 3mf failed." + +msgid "Only Windows 10 is supported." +msgstr "Only Windows 10 is supported." + +msgid "Failed to initialize the WinRT library." +msgstr "Failed to initialize the WinRT library." + +msgid "Exporting objects" +msgstr "Exporting objects" + +msgid "Failed loading objects." +msgstr "Failed loading objects." + +msgid "Repairing object by Windows service" +msgstr "Repairing object by Windows service" + +msgid "Repair failed." +msgstr "Repair failed." + +msgid "Loading repaired objects" +msgstr "Loading repaired objects" + +msgid "Exporting 3mf file failed" +msgstr "Exporting 3mf file failed" + +msgid "Import 3mf file failed" +msgstr "Import 3mf file failed" + +msgid "Repaired 3mf file does not contain any object" +msgstr "The repaired 3mf file does not contain any objects." + +msgid "Repaired 3mf file contains more than one object" +msgstr "The repaired 3mf file contains more than one object." + +msgid "Repaired 3mf file does not contain any volume" +msgstr "The repaired 3mf file does not contain any volume." + +msgid "Repaired 3mf file contains more than one volume" +msgstr "The repaired 3mf file contains more than one volume." + +msgid "Repair finished" +msgstr "Repair finished" + +msgid "Repair canceled" +msgstr "Repair canceled" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Copying of file %1% to %2% failed: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "Please check any unsaved changes before updating the configuration." + +msgid "Configuration package: " +msgstr "" + +msgid " updated to " +msgstr "" + +msgid "Open G-code file:" +msgstr "Open G-code file:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "The object has empty layers between %1% and %2% and can’t be printed." + +#, boost-format +msgid "Object: %1%" +msgstr "Object: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Parts of the object at these heights may be too thin or the object may have " +"a faulty mesh." + +msgid "No object can be printed. Maybe too small" +msgstr "No object can be printed. It may be too small." + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Failed to generate G-code for invalid custom G-code.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "Please check the custom G-code or use the default custom G-code." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Generating G-code: layer %1%" + +msgid "Inner wall" +msgstr "Inner wall" + +msgid "Outer wall" +msgstr "Outer wall" + +msgid "Overhang wall" +msgstr "Overhang wall" + +msgid "Sparse infill" +msgstr "Sparse infill" + +msgid "Internal solid infill" +msgstr "Internal solid infill" + +msgid "Top surface" +msgstr "Top surface" + +msgid "Bottom surface" +msgstr "Bottom surface" + +msgid "Internal Bridge" +msgstr "" + +msgid "Gap infill" +msgstr "Gap infill" + +msgid "Support interface" +msgstr "Support interface" + +msgid "Support transition" +msgstr "Support transition" + +msgid "Multiple" +msgstr "Multiple" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "Failed to calculate line width of %1%. Cannot get value of “%2%” " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" + +msgid "undefined error" +msgstr "undefined error" + +msgid "too many files" +msgstr "too many files" + +msgid "file too large" +msgstr "File too large" + +msgid "unsupported method" +msgstr "unsupported method" + +msgid "unsupported encryption" +msgstr "unsupported encryption" + +msgid "unsupported feature" +msgstr "unsupported feature" + +msgid "failed finding central directory" +msgstr "failed finding central directory" + +msgid "not a ZIP archive" +msgstr "not a ZIP archive" + +msgid "invalid header or corrupted" +msgstr "invalid header or corrupted" + +msgid "unsupported multidisk" +msgstr "Saving to RAID is not supported." + +msgid "decompression failed" +msgstr "decompression failed" + +msgid "compression failed" +msgstr "compression failed" + +msgid "unexpected decompressed size" +msgstr "unexpected decompressed size" + +msgid "CRC check failed" +msgstr "CRC check failed" + +msgid "unsupported central directory size" +msgstr "unsupported central directory size" + +msgid "allocation failed" +msgstr "allocation failed" + +msgid "file open failed" +msgstr "file open failed" + +msgid "file create failed" +msgstr "file create failed" + +msgid "file write failed" +msgstr "file write failed" + +msgid "file read failed" +msgstr "file read failed" + +msgid "file close failed" +msgstr "file close failed" + +msgid "file seek failed" +msgstr "file seek failed" + +msgid "file stat failed" +msgstr "file stat failed" + +msgid "invalid parameter" +msgstr "invalid parameter" + +msgid "invalid filename" +msgstr "invalid filename" + +msgid "buffer too small" +msgstr "Buffer too small" + +msgid "internal error" +msgstr "internal error" + +msgid "file not found" +msgstr "file not found" + +msgid "archive too large" +msgstr "Archive too large" + +msgid "validation failed" +msgstr "validation failed" + +msgid "write callback failed" +msgstr "write callback failed" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% is too close to exclusion area. There may be collisions when printing." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% is too close to others, and collisions may be caused." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% is too tall, and collisions will be caused." + +msgid " is too close to others, there may be collisions when printing." +msgstr " is too close to others; there may be collisions when printing." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" is too close to exclusion area, there may be collisions when printing." + +msgid "Prime Tower" +msgstr "Prime Tower" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " is too close to others, and collisions may be caused.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr " is too close to an exclusion area, and collisions will be caused.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Unable to print multiple filaments which have large temperature differences " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing." + +msgid "No extrusions under current settings." +msgstr "No extrusions under current settings." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"Spiral (vase) mode does not work when an object contains more than one " +"material." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "" + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" + +msgid "Variable layer height is not supported with Organic supports." +msgstr "Variable layer height is not supported with Organic supports." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"Ooze prevention is currently not supported with the prime tower enabled." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "A prime tower is not supported in “By object” print." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"A prime tower is not supported when adaptive layer height is on. It requires " +"that all objects have the same layer height." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"A prime tower requires any “support gap” to be a multiple of layer height." + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "A prime tower requires that all objects have the same layer height." + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"A prime tower requires that all objects are printed over the same number of " +"raft layers." + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"A prime tower requires that all objects are sliced with the same layer " +"height." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"The prime tower is only supported if all objects have the same variable " +"layer height" + +msgid "Too small line width" +msgstr "Line width too small" + +msgid "Too large line width" +msgstr "Line width too large" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"A prime tower requires that support has the same layer height as the object." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Support enforcers are used but support is not enabled. Please enable support." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "Layer height cannot exceed nozzle diameter." + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Plate %d: %s does not support filament %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" + +msgid "Generating skirt & brim" +msgstr "Generating skirt & brim" + +msgid "Exporting G-code" +msgstr "Exporting G-code" + +msgid "Generating G-code" +msgstr "Generating G-code" + +msgid "Failed processing of the filename_format template." +msgstr "Processing of the filename_format template failed." + +msgid "Printable area" +msgstr "Printable area" + +msgid "Bed exclude area" +msgstr "Excluded bed area" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" + +msgid "Bed custom texture" +msgstr "Bed custom texture" + +msgid "Bed custom model" +msgstr "Bed custom model" + +msgid "Elephant foot compensation" +msgstr "Elephant foot compensation" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"This shrinks the first layer on the build plate to compensate for elephant " +"foot effect." + +msgid "Elephant foot compensation layers" +msgstr "" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" + +msgid "layers" +msgstr "layers" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"This is the height for each layer. Smaller layer heights give greater " +"accuracy but longer printing time." + +msgid "Printable height" +msgstr "Printable height" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "" +"This is the maximum printable height which is limited by the height of the " +"build area." + +msgid "Preferred orientation" +msgstr "" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" + +msgid "Printer preset names" +msgstr "Printer preset names" + +msgid "Use 3rd-party print host" +msgstr "" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" + +msgid "Hostname, IP or URL" +msgstr "Hostname, IP or URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" + +msgid "Device UI" +msgstr "Device UI" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Specify the URL of your device user interface if it's not same as print_host" + +msgid "API Key / Password" +msgstr "API Key / Password" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." + +msgid "Name of the printer" +msgstr "Name of the printer" + +msgid "HTTPS CA File" +msgstr "HTTPS CA File" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." + +msgid "User" +msgstr "User" + +msgid "Password" +msgstr "Password" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Ignore HTTPS certificate revocation checks" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ignore HTTPS certificate revocation checks in the case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." + +msgid "Names of presets related to the physical printer" +msgstr "Names of presets related to the physical printer" + +msgid "Authorization Type" +msgstr "Authorization Type" + +msgid "API key" +msgstr "API key" + +msgid "HTTP digest" +msgstr "HTTP digest" + +msgid "Avoid crossing wall" +msgstr "Avoid crossing walls" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"This detours to avoid traveling across walls, which may cause blobs on the " +"surface" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Avoid crossing walls - Max detour length" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Maximum detour distance for avoiding crossing wall: The printer won't detour " +"if the detour distance is larger than this value. Detour length could be " +"specified either as an absolute value or as percentage (for example 50%) of " +"a direct travel path. A value of 0 will disable this." + +msgid "mm or %" +msgstr "mm or %" + +msgid "Other layers" +msgstr "Other layers" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"This is the bed temperature for layers except for the first one. A value of " +"0 means the filament does not support printing on the Cool Plate." + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"This is the bed temperature for layers except for the first one. A value of " +"0 means the filament does not support printing on the Engineering Plate." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"This is the bed temperature for layers except for the first one. A value of " +"0 means the filament does not support printing on the High Temp Plate." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Bed temperature after the first layer. 0 means the filament is not supported " +"on the Textured PEI Plate." + +msgid "Initial layer" +msgstr "First layer" + +msgid "Initial layer bed temperature" +msgstr "First layer bed temperature" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"This is the bed temperature of the first layer. A value of 0 means the " +"filament does not support printing on the Cool Plate." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"This is the bed temperature of the first layer. A value of 0 means the " +"filament does not support printing on the Engineering Plate." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"This is the bed temperature of the first layer. A value of 0 means the " +"filament does not support printing on the High Temp Plate." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Bed temperature of the first layer 0 means the filament is not supported on " +"the Textured PEI Plate." + +msgid "Bed types supported by the printer" +msgstr "Bed types supported by the printer" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "Engineering Plate" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "First layer print sequence" + +msgid "Other layers print sequence" +msgstr "Other layers print sequence" + +msgid "The number of other layers print sequence" +msgstr "The number of other layers print sequence" + +msgid "Other layers filament sequence" +msgstr "Other layers filament sequence" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "This G-code is inserted at every layer change before lifting z." + +msgid "Bottom shell layers" +msgstr "Bottom shell layers" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" + +msgid "Bottom shell thickness" +msgstr "Bottom shell thickness" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin a shell when layer height is small. 0 means that this " +"setting is disabled and the thickness of the bottom shell is determined " +"simply by the number of bottom shell layers." + +msgid "Apply gap fill" +msgstr "" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" + +msgid "Everywhere" +msgstr "" + +msgid "Top and bottom surfaces" +msgstr "" + +msgid "Nowhere" +msgstr "" + +msgid "Force cooling for overhang and bridge" +msgstr "Force cooling for overhangs and bridges" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Enable this option to optimize the part cooling fan speed for overhangs and " +"bridges to get better cooling" + +msgid "Fan speed for overhang" +msgstr "Fan speed for overhangs" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Force part cooling fan to be this speed when printing bridges or overhang " +"walls which have a large overhang degree. Forcing cooling for overhangs and " +"bridges can achieve better quality for these parts." + +msgid "Cooling overhang threshold" +msgstr "Cooling overhang threshold" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Force cooling fan to be a specific speed when overhang degree of printed " +"part exceeds this value. This is expressed as a percentage which indicates " +"how much width of the line without support from lower layer. 0% means " +"forcing cooling for all outer wall no matter the overhang degree." + +msgid "Bridge infill direction" +msgstr "" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Bridging angle override. 0 means the bridging angle will be calculated " +"automatically. Otherwise the provided angle will be used for external " +"bridges. Use 180° for zero angle." + +msgid "Bridge density" +msgstr "" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" + +msgid "Bridge flow ratio" +msgstr "Bridge flow ratio" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Decrease this value slightly (for example 0.9) to reduce the amount of " +"material extruded for bridges to avoid sagging." + +msgid "Internal bridge flow ratio" +msgstr "" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" + +msgid "Top surface flow ratio" +msgstr "Top surface flow ratio" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" + +msgid "Bottom surface flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" + +msgid "Precise wall" +msgstr "" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" + +msgid "Only one wall on top surfaces" +msgstr "Only one wall on top surfaces" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Use only one wall on flat top surfaces, to give more space to the top infill " +"pattern" + +msgid "One wall threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" + +msgid "Only one wall on first layer" +msgstr "Only one wall on first layer" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" + +msgid "Extra perimeters on overhangs" +msgstr "" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" + +msgid "Reverse on odd" +msgstr "" + +msgid "Overhang reversal" +msgstr "" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" + +msgid "Reverse only internal perimeters" +msgstr "" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" + +msgid "Bridge counterbore holes" +msgstr "" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" + +msgid "Partially bridged" +msgstr "" + +msgid "Sacrificial layer" +msgstr "" + +msgid "Reverse threshold" +msgstr "" + +msgid "Overhang reversal threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" + +msgid "Classic mode" +msgstr "" + +msgid "Enable this option to use classic mode" +msgstr "" + +msgid "Slow down for overhang" +msgstr "Slow down for overhangs" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Enable this option to slow down when printing overhangs. The speeds for " +"different overhang percentages are set below." + +msgid "Slow down for curled perimeters" +msgstr "" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" + +msgid "mm/s or %" +msgstr "mm/s or %" + +msgid "External" +msgstr "" + +msgid "Speed of bridge and completely overhang wall" +msgstr "This is the speed for bridges and 100% overhang walls." + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" + +msgid "Brim width" +msgstr "Brim width" + +msgid "Distance from model to the outermost brim line" +msgstr "This is the distance from the model to the outermost brim line." + +msgid "Brim type" +msgstr "Brim type" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analyzed and calculated automatically." + +msgid "Brim-object gap" +msgstr "Brim-object gap" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"This creates a gap between the innermost brim line and the object and can " +"make the brim easier to remove." + +msgid "Brim ears" +msgstr "" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "" + +msgid "Brim ear max angle" +msgstr "" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" + +msgid "Brim ear detection radius" +msgstr "" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" + +msgid "Compatible machine" +msgstr "Compatible machine" + +msgid "upward compatible machine" +msgstr "upward compatible machine" + +msgid "Compatible machine condition" +msgstr "Compatible machine condition" + +msgid "Compatible process profiles" +msgstr "Compatible process profiles" + +msgid "Compatible process profiles condition" +msgstr "Compatible process profiles condition" + +msgid "Print sequence, layer by layer or object by object" +msgstr "" +"This determines the print sequence, allowing you to print layer-by-layer or " +"object-by-object." + +msgid "By layer" +msgstr "By layer" + +msgid "By object" +msgstr "By object" + +msgid "Intra-layer order" +msgstr "" + +msgid "Print order within a single layer" +msgstr "" + +msgid "As object list" +msgstr "" + +msgid "Slow printing down for better layer cooling" +msgstr "Slow printing down for better layer cooling" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Enable this option to slow printing speed down to ensure that the final " +"layer time is not shorter than the layer time threshold in \"Max fan speed " +"threshold\", so that the layer can be cooled for a longer time. This can " +"improve the quality for small details." + +msgid "Normal printing" +msgstr "Normal printing" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"This is the default acceleration for both normal printing and travel after " +"the first layer." + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Default filament profile" + +msgid "Default filament profile when switch to this machine profile" +msgstr "Default filament profile when switching to this machine profile" + +msgid "Default process profile" +msgstr "Default process profile" + +msgid "Default process profile when switch to this machine profile" +msgstr "Default process profile when switching to this machine profile" + +msgid "Activate air filtration" +msgstr "Activate air filtration" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "Fan speed" +msgstr "Fan speed" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Speed of exhaust fan during printing.This speed will override the speed in " +"filament custom g-code" + +msgid "Speed of exhaust fan after printing completes" +msgstr "" + +msgid "No cooling for the first" +msgstr "No cooling for the first" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Turn off all cooling fans for the first few layers. This can be used to " +"improve bed adhesion." + +msgid "Don't support bridges" +msgstr "Don't support bridges" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"This disables supporting bridges, which decreases the amount of support " +"required. Bridges can usually be printed directly without support over a " +"reasonable distance." + +msgid "Thick bridges" +msgstr "Thick bridges" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"If enabled, bridges are more reliable and can bridge longer distances but " +"may look worse. If disabled, bridges look better but are reliable only for " +"shorter distances." + +msgid "Thick internal bridges" +msgstr "" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" + +msgid "Don't filter out small internal bridges (beta)" +msgstr "" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" + +msgid "Disabled" +msgstr "" + +msgid "Limited filtering" +msgstr "" + +msgid "No filtering" +msgstr "" + +msgid "Max bridge length" +msgstr "Max bridge length" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"This is the maximum length of bridges that don't need support. Set it to 0 " +"if you want all bridges to be supported, and set it to a very large value if " +"you don't want any bridges to be supported." + +msgid "End G-code" +msgstr "End G-code" + +msgid "End G-code when finish the whole printing" +msgstr "Add end G-Code when finishing the entire print." + +msgid "Between Object Gcode" +msgstr "Between Object Gcode" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" + +msgid "End G-code when finish the printing of this filament" +msgstr "Add end G-code when finishing the printing of this filament." + +msgid "Ensure vertical shell thickness" +msgstr "Ensure vertical shell thickness" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" + +msgid "Critical Only" +msgstr "" + +msgid "Moderate" +msgstr "" + +msgid "Top surface pattern" +msgstr "Top surface pattern" + +msgid "Line pattern of top surface infill" +msgstr "This is the line pattern for top surface infill." + +msgid "Concentric" +msgstr "Concentric" + +msgid "Rectilinear" +msgstr "Rectilinear" + +msgid "Monotonic" +msgstr "Monotonic" + +msgid "Monotonic line" +msgstr "Monotonic line" + +msgid "Aligned Rectilinear" +msgstr "Aligned Rectilinear" + +msgid "Hilbert Curve" +msgstr "Hilbert Curve" + +msgid "Archimedean Chords" +msgstr "Archimedean Chords" + +msgid "Octagram Spiral" +msgstr "Octagram Spiral" + +msgid "Bottom surface pattern" +msgstr "Bottom surface pattern" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "" +"This is the line pattern of bottom surface infill, not including bridge " +"infill." + +msgid "Internal solid infill pattern" +msgstr "Internal solid infill pattern" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"This is the printing speed for the outer walls of parts. These are generally " +"printed slower than inner walls for higher quality." + +msgid "Small perimeters" +msgstr "Small perimeters" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" + +msgid "Small perimeters threshold" +msgstr "" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" + +msgid "Walls printing order" +msgstr "" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" + +msgid "Inner/Outer" +msgstr "" + +msgid "Outer/Inner" +msgstr "" + +msgid "Inner/Outer/Inner" +msgstr "" + +msgid "Print infill first" +msgstr "Print infill first" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" + +msgid "Wall loop direction" +msgstr "" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" + +msgid "Counter clockwise" +msgstr "" + +msgid "Clockwise" +msgstr "" + +msgid "Height to rod" +msgstr "Height to rod" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Distance from the nozzle tip to the lower rod. Used for collision avoidance " +"in by-object printing." + +msgid "Height to lid" +msgstr "Height to lid" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Distance from the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Clearance radius around extruder: used for collision avoidance in by-object " +"printing." + +msgid "Nozzle height" +msgstr "Nozzle height" + +msgid "The height of nozzle tip." +msgstr "The height of nozzle tip." + +msgid "Bed mesh min" +msgstr "" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Bed mesh max" +msgstr "" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Probe point distance" +msgstr "" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" + +msgid "Mesh margin" +msgstr "" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" + +msgid "Extruder Color" +msgstr "Extruder Color" + +msgid "Only used as a visual help on UI" +msgstr "Only used as a visual help on UI" + +msgid "Extruder offset" +msgstr "Extruder offset" + +msgid "Flow ratio" +msgstr "Flow ratio" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"The material may have volumetric change after switching between molten and " +"crystalline states. This setting changes all extrusion flow of this filament " +"in G-code proportionally. The recommended value range is between 0.95 and " +"1.05. You may be able to tune this value to get a nice flat surface if there " +"is slight overflow or underflow." + +msgid "Enable pressure advance" +msgstr "Enable pressure advance" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" + +msgid "Keep fan always on" +msgstr "Keep fan always on" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Enabling this setting means that part cooling fan will never stop entirely " +"and will instead run at least at minimum speed to reduce the frequency of " +"starting and stopping." + +msgid "Don't slow down outer walls" +msgstr "" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "Layer time" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"The part cooling fan will be enabled for layers where the estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time." + +msgid "Default color" +msgstr "Default color" + +msgid "Default filament color" +msgstr "Default filament color" + +msgid "Filament notes" +msgstr "Filament notes" + +msgid "You can put your notes regarding the filament here." +msgstr "You can put your notes regarding the filament here." + +msgid "Required nozzle HRC" +msgstr "Required nozzle HRC" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"Minimum HRC of nozzle required to print the filament. A value of 0 means no " +"checking of the nozzle's HRC." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"This setting is the volume of filament that can be melted and extruded per " +"second. Printing speed is limited by max volumetric speed, in case of too " +"high and unreasonable speed setting. This value cannot be zero." + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Filament load time" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Time to load new filament when switching filament, for statistical purposes " +"only." + +msgid "Filament unload time" +msgstr "Filament unload time" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Time to unload old filament when switching filament, for statistical " +"purposes only." + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Filament diameter is used to calculate extrusion variables in G-code, so it " +"is important that this is accurate and precise." + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" + +msgid "Loading speed" +msgstr "" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "" + +msgid "Loading speed at the start" +msgstr "" + +msgid "Speed used at the very beginning of loading phase." +msgstr "" + +msgid "Unloading speed" +msgstr "" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." + +msgid "Unloading speed at the start" +msgstr "" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" + +msgid "Delay after unloading" +msgstr "" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Time to wait after the filament is unloaded. May help to get reliable tool " +"changes with flexible materials that may need more time to shrink to " +"original dimensions." + +msgid "Number of cooling moves" +msgstr "" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" + +msgid "Speed of the first cooling move" +msgstr "" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "" + +msgid "Minimal purge on wipe tower" +msgstr "Minimal purge on wipe tower" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" + +msgid "Speed of the last cooling move" +msgstr "" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" + +msgid "Ramming parameters" +msgstr "" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" + +msgid "Enable ramming for multitool setups" +msgstr "" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" + +msgid "Multitool ramming volume" +msgstr "" + +msgid "The volume to be rammed before the toolchange." +msgstr "" + +msgid "Multitool ramming flow" +msgstr "" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "" + +msgid "Density" +msgstr "Density" + +msgid "Filament density. For statistics only" +msgstr "Filament density, for statistical purposes only." + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "Filament material type" + +msgid "Soluble material" +msgstr "Soluble material" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"Soluble material is commonly used to print support and support interfaces" + +msgid "Support material" +msgstr "Support material" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"Support material is commonly used to print support and support interfaces." + +msgid "Softening temperature" +msgstr "Softening temperature" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than this, it's highly recommended to open the front " +"door and/or remove the upper glass to avoid clogs." + +msgid "Price" +msgstr "Price" + +msgid "Filament price. For statistics only" +msgstr "Filament price, for statistical purposes only." + +msgid "money/kg" +msgstr "money/kg" + +msgid "Vendor" +msgstr "Vendor" + +msgid "Vendor of filament. For show only" +msgstr "Vendor of filament. For show only" + +msgid "(Undefined)" +msgstr "(Undefined)" + +msgid "Sparse infill direction" +msgstr "" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"This is the angle for sparse infill pattern, which controls the start or " +"main direction of lines." + +msgid "Solid infill direction" +msgstr "" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" + +msgid "Rotate solid infill direction" +msgstr "" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "" + +msgid "Sparse infill density" +msgstr "Sparse infill density" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" + +msgid "Sparse infill pattern" +msgstr "Sparse infill pattern" + +msgid "Line pattern for internal sparse infill" +msgstr "This is the line pattern for internal sparse infill." + +msgid "Grid" +msgstr "Grid" + +msgid "Line" +msgstr "Line" + +msgid "Cubic" +msgstr "Cubic" + +msgid "Tri-hexagon" +msgstr "Tri-hexagon" + +msgid "Gyroid" +msgstr "Gyroid" + +msgid "Honeycomb" +msgstr "Honeycomb" + +msgid "Adaptive Cubic" +msgstr "Adaptive Cubic" + +msgid "3D Honeycomb" +msgstr "3D Honeycomb" + +msgid "Support Cubic" +msgstr "Support Cubic" + +msgid "Lightning" +msgstr "Lightning" + +msgid "Cross Hatch" +msgstr "Cross Hatch" + +msgid "Sparse infill anchor length" +msgstr "" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" + +msgid "0 (no open anchors)" +msgstr "0 (no open anchors)" + +msgid "1000 (unlimited)" +msgstr "1000 (unlimited)" + +msgid "Maximum length of the infill anchor" +msgstr "" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" + +msgid "0 (Simple connect)" +msgstr "" + +msgid "Acceleration of outer walls" +msgstr "" + +msgid "Acceleration of inner walls" +msgstr "" + +msgid "Acceleration of travel moves" +msgstr "" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"This is the acceleration of top surface infill. Using a lower value may " +"improve top surface quality." + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "Acceleration of outer wall: using a lower value can improve quality." + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" + +msgid "mm/s² or %" +msgstr "mm/s² or %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"This is the printing acceleration for the first layer. Using limited " +"acceleration can improve build plate adhesion." + +msgid "Enable accel_to_decel" +msgstr "Enable accel_to_decel" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "Klipper's max_accel_to_decel will be adjusted automatically" + +msgid "accel_to_decel" +msgstr "accel_to_decel" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" + +msgid "Jerk of outer walls" +msgstr "Jerk of outer walls" + +msgid "Jerk of inner walls" +msgstr "Jerk of inner walls" + +msgid "Jerk for top surface" +msgstr "" + +msgid "Jerk for infill" +msgstr "" + +msgid "Jerk for initial layer" +msgstr "" + +msgid "Jerk for travel" +msgstr "" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Initial layer height" +msgstr "First layer height" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"This is the height of the first layer. Making the first layer height thicker " +"can improve build plate adhesion." + +msgid "Speed of initial layer except the solid infill part" +msgstr "" +"This is the speed for the first layer except for solid infill sections." + +msgid "Initial layer infill" +msgstr "First layer infill" + +msgid "Speed of solid infill part of initial layer" +msgstr "This is the speed for solid infill parts of the first layer." + +msgid "Initial layer travel speed" +msgstr "" + +msgid "Travel speed of initial layer" +msgstr "" + +#, fuzzy +msgid "Number of slow layers" +msgstr "This is the number of top interface layers." + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" + +msgid "Initial layer nozzle temperature" +msgstr "First layer nozzle temperature" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "Nozzle temperature for printing the first layer with this filament" + +msgid "Full fan speed at layer" +msgstr "Full fan speed at layer" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" + +msgid "layer" +msgstr "" + +msgid "Support interface fan speed" +msgstr "" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"This setting makes the toolhead randomly jitter while printing walls so that " +"the surface has a rough textured look. This setting controls the fuzzy " +"position." + +msgid "Contour" +msgstr "Contour" + +msgid "Contour and hole" +msgstr "Contour and hole" + +msgid "All walls" +msgstr "All walls" + +msgid "Fuzzy skin thickness" +msgstr "Fuzzy skin thickness" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"The width of jittering: it’s recommended to keep this lower than the outer " +"wall line width." + +msgid "Fuzzy skin point distance" +msgstr "Fuzzy skin point distance" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"The average distance between the random points introduced on each line " +"segment" + +msgid "Apply fuzzy skin to first layer" +msgstr "" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "" + +msgid "Filter out tiny gaps" +msgstr "Filter out tiny gaps" + +msgid "Layers and Perimeters" +msgstr "Layers and Perimeters" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"This is the speed for gap infill. Gaps usually have irregular line width and " +"should be printed more slowly." + +msgid "Precise Z height" +msgstr "Precise Z height" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." + +msgid "Arc fitting" +msgstr "Arc fitting" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" + +msgid "Add line number" +msgstr "Add line number" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Enable this to add line number(Nx) at the beginning of each G-Code line." + +msgid "Scan first layer" +msgstr "Scan first layer" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Enable this to allow the camera on the printer to check the quality of the " +"first layer." + +msgid "Nozzle type" +msgstr "Nozzle type" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"The metallic material of the nozzle: This determines the abrasive resistance " +"of the nozzle and what kind of filament can be printed." + +msgid "Undefine" +msgstr "Undefined" + +msgid "Hardened steel" +msgstr "Hardened steel" + +msgid "Stainless steel" +msgstr "Stainless steel" + +msgid "Brass" +msgstr "Brass" + +msgid "Nozzle HRC" +msgstr "Nozzle HRC" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"The nozzle's hardness. Zero means no checking for nozzle hardness during " +"slicing." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Printer structure" + +msgid "The physical arrangement and components of a printing device" +msgstr "The physical arrangement and components of a printing device" + +msgid "CoreXY" +msgstr "" + +msgid "I3" +msgstr "" + +msgid "Hbot" +msgstr "" + +msgid "Delta" +msgstr "" + +msgid "Best object position" +msgstr "Best object position" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "Best auto arranging position in range [0,1] w.r.t. bed shape." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" + +msgid "Only overhangs" +msgstr "" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "" + +msgid "Fan kick-start time" +msgstr "" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" + +msgid "Time cost" +msgstr "" + +msgid "The printer cost per hour" +msgstr "" + +msgid "money/h" +msgstr "" + +msgid "Support control chamber temperature" +msgstr "Support controlling chamber temperature" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" + +msgid "Support air filtration" +msgstr "Support air filtration" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "G-code flavor" +msgstr "G-code flavor" + +msgid "What kind of gcode the printer is compatible with" +msgstr "What kind of G-code the printer is compatible with." + +msgid "Klipper" +msgstr "" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" + +msgid "Label objects" +msgstr "" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" + +msgid "Exclude objects" +msgstr "Exclude objects" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "" + +msgid "Verbose G-code" +msgstr "" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" + +msgid "Infill combination" +msgstr "Infill combination" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Automatically combine sparse infill of several layers to print together in " +"order to reduce time. Walls are still printed with original layer height." + +msgid "Filament to print internal sparse infill." +msgstr "This is the filament for printing internal sparse infill." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Infill/Wall overlap" +msgstr "Infill/wall overlap" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" + +msgid "Speed of internal sparse infill" +msgstr "This is the speed for internal sparse infill." + +msgid "Interface shells" +msgstr "Interface shells" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" + +msgid "Maximum width of a segmented region" +msgstr "Maximum width of a segmented region" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Maximum width of a segmented region. A value of 0 disables this feature." + +msgid "Interlocking depth of a segmented region" +msgstr "Interlocking depth of a segmented region" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "Interlocking depth of a segmented region. Zero disables this feature." + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "Ironing type" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"Ironing uses a small flow to print at the same height of a surface to make " +"flat surfaces smoother. This setting controls which layers are being ironed." + +msgid "No ironing" +msgstr "No ironing" + +msgid "Top surfaces" +msgstr "All top surfaces" + +msgid "Topmost surface" +msgstr "Topmost surface only" + +msgid "All solid layer" +msgstr "All solid layers" + +msgid "Ironing Pattern" +msgstr "Ironing Pattern" + +msgid "The pattern that will be used when ironing" +msgstr "" + +msgid "Ironing flow" +msgstr "Ironing flow" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"This is the amount of material to be extruded during ironing. It is relative " +"to the flow of normal layer height. Too high a value will result in " +"overextrusion on the surface." + +msgid "Ironing line spacing" +msgstr "Ironing line spacing" + +msgid "The distance between the lines of ironing" +msgstr "This is the distance between the lines used for ironing." + +msgid "Ironing speed" +msgstr "Ironing speed" + +msgid "Print speed of ironing lines" +msgstr "This is the print speed for ironing lines." + +msgid "Ironing angle" +msgstr "" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "This G-code is inserted at every layer change after the z lift." + +msgid "Supports silent mode" +msgstr "Silent Mode" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Whether the machine supports silent mode in which machine uses lower " +"acceleration to print more quietly" + +msgid "Emit limits to G-code" +msgstr "" + +msgid "Machine limits" +msgstr "Machine limits" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"This G-code will be used as a code for the pause print. Users can insert " +"pause G-code in the G-code viewer." + +msgid "This G-code will be used as a custom code" +msgstr "This G-code will be used as a custom code" + +msgid "Small area flow compensation (beta)" +msgstr "" + +msgid "Enable flow compensation for small infill areas" +msgstr "" + +msgid "Flow Compensation Model" +msgstr "" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" + +msgid "Maximum speed X" +msgstr "Maximum speed X" + +msgid "Maximum speed Y" +msgstr "Maximum speed Y" + +msgid "Maximum speed Z" +msgstr "Maximum speed Z" + +msgid "Maximum speed E" +msgstr "Maximum speed E" + +msgid "Maximum X speed" +msgstr "Maximum X speed" + +msgid "Maximum Y speed" +msgstr "Maximum Y speed" + +msgid "Maximum Z speed" +msgstr "Maximum Z speed" + +msgid "Maximum E speed" +msgstr "Maximum E speed" + +msgid "Maximum acceleration X" +msgstr "Maximum acceleration X" + +msgid "Maximum acceleration Y" +msgstr "Maximum acceleration Y" + +msgid "Maximum acceleration Z" +msgstr "Maximum acceleration Z" + +msgid "Maximum acceleration E" +msgstr "Maximum acceleration E" + +msgid "Maximum acceleration of the X axis" +msgstr "Maximum acceleration of the X axis" + +msgid "Maximum acceleration of the Y axis" +msgstr "Maximum acceleration of the Y axis" + +msgid "Maximum acceleration of the Z axis" +msgstr "Maximum acceleration of the Z axis" + +msgid "Maximum acceleration of the E axis" +msgstr "Maximum acceleration of the E axis" + +msgid "Maximum jerk X" +msgstr "Maximum jerk X" + +msgid "Maximum jerk Y" +msgstr "Maximum jerk Y" + +msgid "Maximum jerk Z" +msgstr "Maximum jerk Z" + +msgid "Maximum jerk E" +msgstr "Maximum jerk E" + +msgid "Maximum jerk of the X axis" +msgstr "Maximum jerk of the X axis" + +msgid "Maximum jerk of the Y axis" +msgstr "Maximum jerk of the Y axis" + +msgid "Maximum jerk of the Z axis" +msgstr "Maximum jerk of the Z axis" + +msgid "Maximum jerk of the E axis" +msgstr "Maximum jerk of the E axis" + +msgid "Minimum speed for extruding" +msgstr "Minimum speed for extruding" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Minimum speed for extruding (M205 S)" + +msgid "Minimum travel speed" +msgstr "Minimum travel speed" + +msgid "Minimum travel speed (M205 T)" +msgstr "Minimum travel speed (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Maximum acceleration for extruding" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Maximum acceleration for extruding (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Maximum acceleration for retracting" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Maximum acceleration for retracting (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Maximum acceleration for travel" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"The part cooling fan speed may be increased when auto cooling is enabled. " +"This is the maximum speed for the part cooling fan." + +msgid "Max" +msgstr "Max" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"The highest printable layer height for the extruder: this is used to limit " +"the maximum layer height when adaptive layer height is enabled." + +msgid "Extrusion rate smoothing" +msgstr "" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" + +msgid "mm³/s²" +msgstr "" + +msgid "Smoothing segment length" +msgstr "" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" + +msgid "Minimum speed for part cooling fan" +msgstr "Minimum speed for part cooling fan" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" + +msgid "Min" +msgstr "Min" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"The lowest printable layer height for the extruder. This is used to limit " +"the minimum layer height when adaptive layer height is enabled." + +msgid "Min print speed" +msgstr "Min print speed" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" + +msgid "Nozzle diameter" +msgstr "Nozzle diameter" + +msgid "Diameter of nozzle" +msgstr "The diameter of the nozzle" + +msgid "Configuration notes" +msgstr "" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" + +msgid "Host Type" +msgstr "Host Type" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." + +msgid "Nozzle volume" +msgstr "Nozzle volume" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Volume of nozzle between the filament cutter and the end of the nozzle" + +msgid "Cooling tube position" +msgstr "" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "" + +msgid "Cooling tube length" +msgstr "" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" + +msgid "High extruder current on filament swap" +msgstr "" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" + +msgid "Filament parking position" +msgstr "" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" + +msgid "Extra loading distance" +msgstr "" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." + +msgid "Start end points" +msgstr "Start end points" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "" +"The start and end points which are from the cutter area to the excess chute." + +msgid "Reduce infill retraction" +msgstr "Reduce infill retraction" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Don't retract when the travel is entirely in an infill area. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generation slower." + +msgid "Filename format" +msgstr "Filename format" + +msgid "User can self-define the project file name when export" +msgstr "Users can decide project file names when exporting." + +msgid "Make overhangs printable" +msgstr "" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "" + +msgid "Make overhangs printable - Maximum angle" +msgstr "" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" + +msgid "Make overhangs printable - Hole area" +msgstr "" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Detect overhang walls" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"This detects the overhang percentage relative to line width and uses a " +"different speed to print. For 100%% overhang, bridging speed is used." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Speed of inner wall" +msgstr "This is the speed for inner walls." + +msgid "Number of walls of every layer" +msgstr "This is the number of walls per layer." + +msgid "Alternate extra wall" +msgstr "" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" + +msgid "Printer notes" +msgstr "Printer notes" + +msgid "You can put your notes regarding the printer here." +msgstr "You can put your notes regarding the printer here." + +msgid "Raft contact Z distance" +msgstr "Raft contact Z distance" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"This is the Z gap between an object and a raft. It is ignored for soluble " +"interfaces." + +msgid "Raft expansion" +msgstr "Raft expansion" + +msgid "Expand all raft layers in XY plane" +msgstr "This expands all raft layers in XY plane." + +msgid "Initial layer density" +msgstr "First layer density" + +msgid "Density of the first raft or support layer" +msgstr "This is the density of the first raft or support layer." + +msgid "Initial layer expansion" +msgstr "First layer expansion" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "This expands the first raft or support layer to improve bed adhesion." + +msgid "Raft layers" +msgstr "Raft layers" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"Object will be raised by this number of support layers. Use this function to " +"avoid warping when printing ABS." + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"The G-code path is generated after simplifying the contour of models to " +"avoid too many points and G-code lines. Smaller values mean higher " +"resolution and more time required to slice." + +msgid "Travel distance threshold" +msgstr "Travel distance threshold" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Only trigger retraction when the travel distance is longer than this " +"threshold." + +msgid "Retract amount before wipe" +msgstr "Retract amount before wipe" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"This is the length of fast retraction before a wipe, relative to retraction " +"length." + +msgid "Retract when change layer" +msgstr "Retract on layer change" + +msgid "Force a retraction when changes layer" +msgstr "This forces a retraction on layer changes." + +msgid "Retraction Length" +msgstr "Retraction Length" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"This is the amount of filament in the extruder that is pulled back to avoid " +"oozing during long travel distances. Set to 0 to disable retraction." + +msgid "Long retraction when cut(experimental)" +msgstr "Long retraction when cut (experimental)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." + +msgid "Retraction distance when cut" +msgstr "Retraction distance when cut" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Experimental feature. Retraction length before cutting off during filament " +"change" + +msgid "Z hop when retract" +msgstr "Z hop when retracting" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Whenever there is a retraction, the nozzle is lifted a little to create " +"clearance between the nozzle and the print. This prevents the nozzle from " +"hitting the print when traveling more. Using spiral lines to lift z can " +"prevent stringing." + +msgid "Z hop lower boundary" +msgstr "Z hop lower boundary" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" + +msgid "Z hop upper boundary" +msgstr "Z hop upper boundary" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" + +msgid "Z hop type" +msgstr "" + +msgid "Slope" +msgstr "Slope" + +msgid "Spiral" +msgstr "Spiral" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" + +msgid "Only lift Z below" +msgstr "" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" + +msgid "On surfaces" +msgstr "" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" + +msgid "All Surfaces" +msgstr "" + +msgid "Top Only" +msgstr "" + +msgid "Bottom Only" +msgstr "" + +msgid "Top and Bottom" +msgstr "" + +msgid "Extra length on restart" +msgstr "Extra length on restart" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" + +msgid "Retraction Speed" +msgstr "Retraction speed" + +msgid "Speed of retractions" +msgstr "This is the speed for retraction." + +msgid "Deretraction Speed" +msgstr "Deretraction speed" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"The speed for reloading filament into the extruder after a retraction; " +"setting this to 0 means that it will be the same speed as the retraction." + +msgid "Use firmware retraction" +msgstr "Use firmware retraction" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" + +msgid "Show auto-calibration marks" +msgstr "" + +msgid "Disable set remaining print time" +msgstr "" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" + +msgid "Seam position" +msgstr "Seam position" + +msgid "The start position to print each part of outer wall" +msgstr "This is the starting position for each part of the outer wall." + +msgid "Nearest" +msgstr "Nearest" + +msgid "Aligned" +msgstr "Aligned" + +msgid "Back" +msgstr "Back" + +msgid "Random" +msgstr "Random" + +msgid "Staggered inner seams" +msgstr "" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" + +msgid "Seam gap" +msgstr "Seam gap" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" + +msgid "Scarf joint seam (beta)" +msgstr "" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Use scarf joint to minimize seam visibility and increase seam strength." + +msgid "Conditional scarf joint" +msgstr "Conditional scarf joint" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." + +msgid "Conditional angle threshold" +msgstr "Conditional angle threshold" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" + +msgid "Conditional overhang threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" + +msgid "Scarf joint speed" +msgstr "" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" + +msgid "Scarf joint flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" + +msgid "Scarf start height" +msgstr "Scarf start height" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." + +msgid "Scarf around entire wall" +msgstr "Scarf around entire wall" + +msgid "The scarf extends to the entire length of the wall." +msgstr "The scarf extends to the entire length of the wall." + +msgid "Scarf length" +msgstr "Scarf length" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." + +msgid "Scarf steps" +msgstr "Scarf steps" + +msgid "Minimum number of segments of each scarf." +msgstr "Minimum number of segments of each scarf." + +msgid "Scarf joint for inner walls" +msgstr "Scarf joint for inner walls" + +msgid "Use scarf joint for inner walls as well." +msgstr "Use scarf joint for inner walls as well." + +msgid "Role base wipe speed" +msgstr "" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" + +msgid "Wipe on loops" +msgstr "" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" + +msgid "Wipe before external loop" +msgstr "" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" + +msgid "Wipe speed" +msgstr "Wipe speed" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" + +msgid "Skirt distance" +msgstr "Skirt distance" + +msgid "Distance from skirt to brim or object" +msgstr "This is the distance from the skirt to the brim or the object." + +msgid "Skirt height" +msgstr "Skirt height" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Number of skirt layers: usually only one" + +msgid "Draft shield" +msgstr "" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" + +msgid "Limited" +msgstr "" + +msgid "Enabled" +msgstr "" + +msgid "Skirt loops" +msgstr "Skirt loops" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "" +"This is the number of loops for the skirt. 0 means the skirt is disabled." + +msgid "Skirt speed" +msgstr "" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" + +msgid "Skirt minimum extrusion length" +msgstr "" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"The printing speed in exported G-code will be slowed down when the estimated " +"layer time is shorter than this value in order to get better cooling for " +"these layers." + +msgid "Minimum sparse infill threshold" +msgstr "Minimum sparse infill threshold" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"Sparse infill areas which are smaller than this threshold value are replaced " +"by internal solid infill." + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"This is the speed for internal solid infill, not including the top or bottom " +"surface." + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"This enables spiraling, which smooths out the Z moves of the outer contour " +"and turns a solid model into a single walled print with solid bottom layers. " +"The final generated model has no seam." + +msgid "Smooth Spiral" +msgstr "Smooth Spiral" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" + +msgid "Max XY Smoothing" +msgstr "Max XY Smoothing" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Maximum distance to move points in XY to try to achieve a smooth spiral. If " +"expressed as a %, it will be computed over nozzle diameter" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, a prime tower is required for smooth mode to " +"wipe the nozzle." + +msgid "Traditional" +msgstr "Traditional" + +msgid "Temperature variation" +msgstr "Temperature variation" + +msgid "Start G-code" +msgstr "Start G-code" + +msgid "Start G-code when start the whole printing" +msgstr "G-code added when starting a print" + +msgid "Start G-code when start the printing of this filament" +msgstr "G-code added when the printer starts using this filament" + +msgid "Single Extruder Multi Material" +msgstr "" + +msgid "Use single nozzle to print multi filament" +msgstr "" + +msgid "Manual Filament Change" +msgstr "" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" + +msgid "Purge in prime tower" +msgstr "" + +msgid "Purge remaining filament into prime tower" +msgstr "" + +msgid "Enable filament ramming" +msgstr "" + +msgid "No sparse layers (beta)" +msgstr "" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"If enabled, the wipe tower will not be printed on layers with no tool " +"changes. On layers with a tool change, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." + +msgid "Prime all printing extruders" +msgstr "" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" + +msgid "Slice gap closing radius" +msgstr "Slice gap closing radius" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." + +msgid "Slicing Mode" +msgstr "Slicing Mode" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." + +msgid "Regular" +msgstr "Regular" + +msgid "Even-odd" +msgstr "Even-odd" + +msgid "Close holes" +msgstr "Close holes" + +msgid "Z offset" +msgstr "" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" + +msgid "Enable support" +msgstr "Enable support" + +msgid "Enable support generation." +msgstr "This enables support generation." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"Normal(auto) and Tree(auto) are used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" + +msgid "normal(auto)" +msgstr "Normal(auto)" + +msgid "tree(auto)" +msgstr "Tree(auto)" + +msgid "normal(manual)" +msgstr "Normal(manual)" + +msgid "tree(manual)" +msgstr "Tree(manual)" + +msgid "Support/object xy distance" +msgstr "Support/object xy distance" + +msgid "XY separation between an object and its support" +msgstr "This controls the XY separation between an object and its support." + +msgid "Pattern angle" +msgstr "Pattern angle" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Use this setting to rotate the support pattern on the horizontal plane." + +msgid "On build plate only" +msgstr "On build plate only" + +msgid "Don't create support on model surface, only on build plate" +msgstr "This setting only generates supports that begin on the build plate." + +msgid "Support critical regions only" +msgstr "Support critical regions only" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." + +msgid "Remove small overhangs" +msgstr "Remove small overhangs" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "Remove small overhangs that possibly need no supports." + +msgid "Top Z distance" +msgstr "Top Z distance" + +msgid "The z gap between the top support interface and object" +msgstr "This determines the Z gap between top support interfaces and objects." + +msgid "Bottom Z distance" +msgstr "Bottom Z distance" + +msgid "The z gap between the bottom support interface and object" +msgstr "The z gap between the bottom support interface and object" + +msgid "Support/raft base" +msgstr "Support/raft base" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filament to print support bases and rafts. \"Default\" means no specific " +"filament for support, and current filament is used" + +msgid "Avoid interface filament for base" +msgstr "Avoid interface filament for base" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Avoid using support interface filament to print support base if possible." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Interface use loop pattern" +msgstr "Loop pattern interface" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"This covers the top contact layer of the supports with loops. It is disabled " +"by default." + +msgid "Support/raft interface" +msgstr "Support/raft interface" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filament to print support interfaces. \"Default\" means no specific filament " +"for support interface, and current filament is used" + +msgid "Top interface layers" +msgstr "Top interface layers" + +msgid "Number of top interface layers" +msgstr "This is the number of top interface layers." + +msgid "Bottom interface layers" +msgstr "Bottom interface layers" + +msgid "Number of bottom interface layers" +msgstr "Number of bottom interface layers" + +msgid "Same as top" +msgstr "Same as top" + +msgid "Top interface spacing" +msgstr "Top interface spacing" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "This is the spacing of interface lines. 0 means solid interface." + +msgid "Bottom interface spacing" +msgstr "Bottom interface spacing" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"This is the spacing of bottom interface lines. 0 means solid interface." + +msgid "Speed of support interface" +msgstr "This is the speed for support interfaces." + +msgid "Base pattern" +msgstr "Base pattern" + +msgid "Line pattern of support" +msgstr "This is the line pattern for support." + +msgid "Rectilinear grid" +msgstr "Rectilinear grid" + +msgid "Hollow" +msgstr "Hollow" + +msgid "Interface pattern" +msgstr "Interface pattern" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"This is the line pattern for support interfaces. The default pattern for non-" +"soluble support interfaces is Rectilinear while the default pattern for " +"soluble support interfaces is Concentric." + +msgid "Rectilinear Interlaced" +msgstr "Rectilinear Interlaced" + +msgid "Base pattern spacing" +msgstr "Base pattern spacing" + +msgid "Spacing between support lines" +msgstr "This determines the spacing between support lines." + +msgid "Normal Support expansion" +msgstr "Normal support expansion" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "Expand (+) or shrink (-) the horizontal span of normal support" + +msgid "Speed of support" +msgstr "This is the speed for support." + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" + +msgid "Snug" +msgstr "Snug" + +msgid "Tree Slim" +msgstr "Tree Slim" + +msgid "Tree Strong" +msgstr "Tree Strong" + +msgid "Tree Hybrid" +msgstr "Tree Hybrid" + +msgid "Organic" +msgstr "" + +msgid "Independent support layer height" +msgstr "Independent support layer height" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." + +msgid "Threshold angle" +msgstr "Threshold angle" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Support will be generated for overhangs whose slope angle is below this " +"threshold." + +msgid "Tree support branch angle" +msgstr "Tree support branch angle" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"This setting determines the maximum overhang angle that the branches of tree " +"support are allowed to make. If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." + +msgid "Preferred Branch Angle" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" + +msgid "Tree support branch distance" +msgstr "Tree support branch distance" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"This setting determines the distance between neighboring tree support nodes." + +msgid "Branch Density" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" + +msgid "Adaptive layer height" +msgstr "Adaptive layer height" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" + +msgid "Auto brim width" +msgstr "" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" + +msgid "Tree support brim width" +msgstr "Tree support brim width" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "" + +msgid "Tip Diameter" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "" + +msgid "Tree support branch diameter" +msgstr "Tree support branch diameter" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "This setting determines the initial diameter of support nodes." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" + +msgid "Branch Diameter with double walls" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" + +msgid "Support wall loops" +msgstr "Support wall loops" + +msgid "This setting specify the count of walls around support" +msgstr "This setting specify the count of walls around support" + +msgid "Tree support with infill" +msgstr "Tree support with infill" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"This setting specifies whether to add infill inside large hollows of tree " +"support." + +msgid "Activate temperature control" +msgstr "" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" + +msgid "Chamber temperature" +msgstr "Chamber temperature" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on. At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials, the actual chamber temperature should not " +"be high to avoid clogs, so 0 (turned off) is highly recommended." + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Nozzle temperature after the first layer" + +msgid "Detect thin wall" +msgstr "Detect thin walls" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"This detects thin walls which can’t contain two lines and uses a single line " +"to print. It may not print as well because it’s not a closed loop." + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"This G-code is inserted when filament is changed, including T commands to " +"trigger tool change." + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Speed of top surface infill which is solid" +msgstr "This is the speed for solid top surface infill." + +msgid "Top shell layers" +msgstr "Top shell layers" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than the top " +"shell thickness, the top shell layers will be increased" + +msgid "Top solid layers" +msgstr "Top solid layers" + +msgid "Top shell thickness" +msgstr "Top shell thickness" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin a shell when layer height is small. 0 means that this " +"setting is disabled and thickness of top shell is determined simply by the " +"number of top shell layers." + +msgid "Speed of travel which is faster and without extrusion" +msgstr "This is the speed at which traveling is done." + +msgid "Wipe while retracting" +msgstr "Wipe while retracting" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"This moves the nozzle along the last extrusion path when retracting to clean " +"any leaked material on the nozzle. This can minimize blobs when printing a " +"new part after traveling." + +msgid "Wipe Distance" +msgstr "Wipe distance" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"The wiping tower can be used to clean up residue on the nozzle and stabilize " +"the chamber pressure inside the nozzle in order to avoid appearance defects " +"when printing objects." + +msgid "Purging volumes" +msgstr "Purging volumes" + +msgid "Flush multiplier" +msgstr "Flush multiplier" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"The actual flushing volumes is equal to the flush multiplier value " +"multiplied by the flushing volumes in the table." + +msgid "Prime volume" +msgstr "Prime volume" + +msgid "The volume of material to prime extruder on tower." +msgstr "" +"This is the volume of material to prime the extruder with on the tower." + +msgid "Width of prime tower" +msgstr "This is the width of prime towers." + +msgid "Wipe tower rotation angle" +msgstr "" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "" + +msgid "Stabilization cone apex angle" +msgstr "" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" + +msgid "Wipe tower purge lines spacing" +msgstr "" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "" + +msgid "Maximum wipe tower print speed" +msgstr "" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" + +msgid "Wipe tower extruder" +msgstr "" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" + +msgid "Purging volumes - load/unload volumes" +msgstr "" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be visible. " +"It will not take effect unless the prime tower is enabled." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect unless a prime tower is enabled." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colors of the objects will be mixed as " +"a result. It will not take effect unless the prime tower is enabled." + +msgid "Maximal bridging distance" +msgstr "" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "" + +msgid "X-Y hole compensation" +msgstr "X-Y hole compensation" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Holes in objects will be grown or shrunk in the XY plane by the set value. " +"Positive values make holes bigger and negative values make holes smaller. " +"This function is used to adjust size slightly when objects have assembly " +"issues." + +msgid "X-Y contour compensation" +msgstr "X-Y contour compensation" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"The contour of objects will be grown or shrunk in the XY plane by the set " +"value. Positive values make contours bigger, and negative values make " +"contours smaller. This function is used to adjust sizes slightly when " +"objects have assembly issues." + +msgid "Convert holes to polyholes" +msgstr "" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" + +msgid "Polyhole detection margin" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" + +msgid "Polyhole twist" +msgstr "" + +msgid "Rotate the polyhole every layer." +msgstr "" + +msgid "G-code thumbnails" +msgstr "" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" + +msgid "Format of G-code thumbnails" +msgstr "" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" + +msgid "Use relative E distances" +msgstr "Use relative E distances" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"The classic wall generator produces walls with constant extrusion width and " +"for very thin areas, gap-fill is used. The Arachne engine produces walls " +"with variable extrusion width." + +msgid "Classic" +msgstr "Classic" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Wall transition length" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter." + +msgid "Wall transitioning filter margin" +msgstr "Wall transitioning filter margin" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" + +msgid "Wall transitioning threshold angle" +msgstr "Wall transitioning threshold angle" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" + +msgid "Wall distribution count" +msgstr "Wall distribution count" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" + +msgid "Minimum feature size" +msgstr "Minimum feature size" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the minimum " +"feature size will be widened to the minimum wall width. It's expressed as a " +"percentage over nozzle diameter" + +msgid "Minimum wall length" +msgstr "" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" + +msgid "First layer minimum wall width" +msgstr "" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" + +msgid "Minimum wall width" +msgstr "Minimum wall width" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" + +msgid "Detect narrow internal solid infill" +msgstr "Detect narrow internal solid infill" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"This option will auto-detect narrow internal solid infill areas. If enabled, " +"the concentric pattern will be used for the area to speed up printing. " +"Otherwise, the rectilinear pattern will be used by default." + +msgid "invalid value " +msgstr "invalid value " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Invalid value when spiral vase mode is enabled: " + +msgid "too large line width " +msgstr "too large line width " + +msgid " not in range " +msgstr " not in range " + +msgid "Minimum save" +msgstr "" + +msgid "export 3mf with minimum size." +msgstr "" + +msgid "No check" +msgstr "No check" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "Do not run any validity checks, such as G-code path conflicts check." + +msgid "Ensure on bed" +msgstr "" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" + +msgid "Orient Options" +msgstr "" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "" + +msgid "Rotate around Y" +msgstr "" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "" + +msgid "Data directory" +msgstr "" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" + +msgid "Load custom gcode" +msgstr "" + +msgid "Load custom gcode from json" +msgstr "" + +msgid "Current z-hop" +msgstr "" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "" + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" + +msgid "Extra deretraction" +msgstr "" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" + +msgid "Current extruder" +msgstr "" + +msgid "Zero-based index of currently used extruder." +msgstr "" + +msgid "Current object index" +msgstr "" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" + +msgid "Has wipe tower" +msgstr "" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "" + +msgid "Initial extruder" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" + +msgid "Import Profile" +msgstr "Import Profile" + +msgid "Import Web Resource" +msgstr "Import Web Resource" + +msgid "Merge with" +msgstr "Merge with" + +msgid "The following profiles could not be imported due to outdated versions." +msgstr "The following profiles could not be imported due to outdated versions." + +msgid "This web resouce could not be imported due to outdated versions." +msgstr "This web resource could not be imported due to outdated versions." + +msgid "Import Failed" +msgstr "Import Failed" + +msgid "Please choose a system profile package file:" +msgstr "Please choose a system profile package file:" + +msgid "Please choose a web resource package file:" +msgstr "Please choose a web resource package file:" + +msgid "Updating the web resources requires application restart." +msgstr "Updating the web resources requires application restart." + +msgid "Updating the system resources requires application restart." +msgstr "Updating the system resources requires application restart." + +msgid "Print Preprocessing" +msgstr "Print Preprocessing" + +msgid "Pretreat the uploaded content" +msgstr "Pretreat the uploaded content" + +msgid "Initial tool" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" + +msgid "Is extruder used?" +msgstr "" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" + +msgid "Volume per extruder" +msgstr "" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" + +msgid "Total toolchanges" +msgstr "" + +msgid "Number of toolchanges during the print." +msgstr "" + +msgid "Total volume" +msgstr "" + +msgid "Total volume of filament used during the entire print." +msgstr "" + +msgid "Weight per extruder" +msgstr "" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" + +msgid "Total weight" +msgstr "" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" + +msgid "Total layer count" +msgstr "" + +msgid "Number of layers in the entire print." +msgstr "" + +msgid "Number of objects" +msgstr "" + +msgid "Total number of objects in the print." +msgstr "" + +msgid "Number of instances" +msgstr "" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" + +msgid "Scale per object" +msgstr "" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" + +msgid "Input filename without extension" +msgstr "" + +msgid "Source filename of the first object, without extension." +msgstr "" + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" + +msgid "First layer convex hull" +msgstr "" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" + +msgid "Bottom-left corner of first layer bounding box" +msgstr "" + +msgid "Top-right corner of first layer bounding box" +msgstr "" + +msgid "Size of the first layer bounding box" +msgstr "" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "" + +msgid "Top-right corner of print bed bounding box" +msgstr "" + +msgid "Size of the print bed bounding box" +msgstr "" + +msgid "Timestamp" +msgstr "" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "" + +msgid "Day" +msgstr "" + +msgid "Hour" +msgstr "" + +msgid "Minute" +msgstr "" + +msgid "Print preset name" +msgstr "" + +msgid "Name of the print preset used for slicing." +msgstr "" + +msgid "Filament preset name" +msgstr "" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" + +msgid "Printer preset name" +msgstr "" + +msgid "Name of the printer preset used for slicing." +msgstr "" + +msgid "Physical printer name" +msgstr "" + +msgid "Name of the physical printer used for slicing." +msgstr "" + +msgid "Layer number" +msgstr "" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" + +msgid "Layer z" +msgstr "" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" + +msgid "Maximal layer z" +msgstr "" + +msgid "Height of the last layer above the print bed." +msgstr "" + +msgid "Filament extruder ID" +msgstr "" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "" + +msgid "Error in zip archive" +msgstr "Error in zip archive" + +msgid "Generating walls" +msgstr "Generating walls" + +msgid "Generating infill regions" +msgstr "Generating infill regions" + +msgid "Generating infill toolpath" +msgstr "Generating infill toolpath" + +msgid "Detect overhangs for auto-lift" +msgstr "Detect overhangs for auto-lift" + +msgid "Generating support" +msgstr "Generating support" + +msgid "Checking support necessity" +msgstr "Checking support necessity" + +msgid "floating regions" +msgstr "floating regions" + +msgid "floating cantilever" +msgstr "floating cantilever" + +msgid "large overhangs" +msgstr "large overhangs" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." + +msgid "Optimizing toolpath" +msgstr "Optimizing toolpath" + +msgid "Slicing mesh" +msgstr "Slicing mesh" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Support: generate toolpath at layer %d" + +msgid "Support: detect overhangs" +msgstr "Support: detect overhangs" + +msgid "Support: generate contact points" +msgstr "Support: generate contact points" + +msgid "Support: propagate branches" +msgstr "Support: propagate branches" + +msgid "Support: draw polygons" +msgstr "Support: draw polygons" + +msgid "Support: generate toolpath" +msgstr "Support: generate toolpath" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Support: generate polygons at layer %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Support: fix holes at layer %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Support: propagate branches at layer %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Unknown file format: input file must have .stl, .obj, or .amf(.xml) " +"extension." + +msgid "Loading of a model file failed." +msgstr "Loading of model file failed." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "The supplied file couldn't be read because it's empty." + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "Unknown file format: input file must have .3mf or .zip.amf extension." + +msgid "Canceled" +msgstr "Canceled" + +msgid "load_obj: failed to parse" +msgstr "load_obj: failed to parse" + +msgid "load mtl in obj: failed to parse" +msgstr "load mtl in obj: failed to parse" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "The file contains polygons with more than 4 vertices." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "The file contains polygons with less than 2 vertices." + +msgid "The file contains invalid vertex index." +msgstr "The file contains invalid vertex index." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "This OBJ file couldn't be read because it's empty." + +msgid "Flow Rate Calibration" +msgstr "Flow Rate Calibration" + +msgid "Max Volumetric Speed Calibration" +msgstr "Max Volumetric Speed Calibration" + +msgid "Manage Result" +msgstr "Manage Result" + +msgid "Manual Calibration" +msgstr "Manual Calibration" + +msgid "Result can be read by human eyes." +msgstr "Result can be read by human eyes." + +msgid "Auto-Calibration" +msgstr "Auto-Calibration" + +msgid "We would use Lidar to read the calibration result" +msgstr "We would use Lidar to read the calibration result" + +msgid "Prev" +msgstr "Prev" + +msgid "Recalibration" +msgstr "Recalibration" + +msgid "Calibrate" +msgstr "Calibrate" + +msgid "Finish" +msgstr "Finish" + +msgid "How to use calibration result?" +msgstr "How can I use calibration results?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"You could change the Flow Dynamics Calibration Factor in material editing" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." + +msgid "Calibration not supported" +msgstr "Calibration not supported" + +msgid "Error desc" +msgstr "Error desc" + +msgid "Extra info" +msgstr "Extra info" + +msgid "Flow Dynamics" +msgstr "Flow Dynamics" + +msgid "Flow Rate" +msgstr "Flow Rate" + +msgid "Max Volumetric Speed" +msgstr "Max Volumetric Speed" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "The name cannot be empty." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "The selected preset: %s is not found." + +msgid "The name cannot be the same as the system preset name." +msgstr "The name cannot be the same as the system preset name." + +msgid "The name is the same as another existing preset name" +msgstr "The name is the same as another existing preset name" + +msgid "create new preset failed." +msgstr "create new preset failed." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Are you sure to cancel the current calibration and return to the home page?" + +msgid "No Printer Connected!" +msgstr "No Printer Connected!" + +msgid "Printer is not connected yet." +msgstr "Printer is not connected yet." + +msgid "Please select filament to calibrate." +msgstr "Please select filament to calibrate." + +msgid "The input value size must be 3." +msgstr "The input value size must be 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"This machine type can only hold 16 historical results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" + +msgid "Connecting to printer..." +msgstr "Connecting to printer..." + +msgid "The failed test result has been dropped." +msgstr "The failed test result has been dropped." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Flow Dynamics Calibration result has been saved to the printer" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"There is already a previous calibration result with the same name: %s. Only " +"one result with a name is saved. Are you sure you want to overwrite the " +"previous result?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"This machine type can only hold %d historical results per nozzle. This " +"result will not be saved." + +msgid "Internal Error" +msgstr "Internal Error" + +msgid "Please select at least one filament for calibration" +msgstr "Please select at least one filament for calibration" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "Flow rate calibration result has been saved to preset" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "Max volumetric speed calibration result has been saved to preset" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "When do you need Flow Dynamics Calibration" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." + +msgid "About this calibration" +msgstr "About this calibration" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "When to use Flow Rate Calibration" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, have sparkles, or have a highly-reflective finish may not be " +"suitable for this calibration and can produce less-than-desirable results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "When you need Max Volumetric Speed Calibration" + +msgid "Over-extrusion or under extrusion" +msgstr "Over-extrusion or under extrusion" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "Max Volumetric Speed calibration is recommended when you print with:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "material with significant thermal shrinkage/expansion, such as..." + +msgid "materials with inaccurate filament diameter" +msgstr "materials with inaccurate filament diameter" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "We found the best Flow Dynamics Calibration Factor" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" + +msgid "Failed" +msgstr "Failed" + +msgid "Please enter the name you want to save to printer." +msgstr "Please enter the name you want to save to printer." + +msgid "The name cannot exceed 40 characters." +msgstr "The name cannot exceed 40 characters." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to replace the other results?" + +msgid "Please find the best line on your plate" +msgstr "Please find the best line on your plate" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Please find the corner with the perfect degree of extrusion" + +msgid "Input Value" +msgstr "Input Value" + +msgid "Save to Filament Preset" +msgstr "Save to Filament Preset" + +msgid "Preset" +msgstr "Preset" + +msgid "Record Factor" +msgstr "Record Factor" + +msgid "We found the best flow ratio for you" +msgstr "We found the best flow ratio for you" + +msgid "Flow Ratio" +msgstr "Flow Ratio" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Please input a valid value (0.0 < flow ratio < 2.0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Please enter the name of the preset you want to save." + +msgid "Calibration1" +msgstr "Calibration1" + +msgid "Calibration2" +msgstr "Calibration2" + +msgid "Please find the best object on your plate" +msgstr "Please find the best object on your plate" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Fill in the value above the block with smoothest top surface" + +msgid "Skip Calibration2" +msgstr "Skip Calibration2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "flow ratio : %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Please choose a block with smoothest top surface" + +msgid "Please choose a block with smoothest top surface." +msgstr "Please choose a block with smoothest top surface." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "Please input a valid value (0 <= Max Volumetric Speed <= 60)" + +msgid "Calibration Type" +msgstr "Calibration Type" + +msgid "Complete Calibration" +msgstr "Complete Calibration" + +msgid "Fine Calibration based on flow ratio" +msgstr "Fine Calibration based on flow ratio" + +msgid "Title" +msgstr "Title" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." + +msgid "Printing Parameters" +msgstr "Printing Parameters" + +msgid "Plate Type" +msgstr "Plate Type" + +msgid "filament position" +msgstr "filament position" + +msgid "External Spool" +msgstr "External Spool" + +msgid "Filament For Calibration" +msgstr "Filament For Calibration" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" + +msgid "Pattern" +msgstr "Pattern" + +msgid "Method" +msgstr "Method" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s is not compatible with %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "TPU is not supported for Flow Dynamics Auto-Calibration." + +msgid "Connecting to printer" +msgstr "Connecting to printer" + +msgid "From k Value" +msgstr "From k Value" + +msgid "To k Value" +msgstr "To k Value" + +msgid "Step value" +msgstr "" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "The nozzle diameter has been synchronized from the printer Settings" + +msgid "From Volumetric Speed" +msgstr "From Volumetric Speed" + +msgid "To Volumetric Speed" +msgstr "To Volumetric Speed" + +msgid "Flow Dynamics Calibration Result" +msgstr "Flow Dynamics Calibration Result" + +msgid "New" +msgstr "New" + +msgid "No History Result" +msgstr "No History Result" + +msgid "Success to get history result" +msgstr "Success to get history result" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Refreshing the previous Flow Dynamics Calibration records" + +msgid "Action" +msgstr "Action" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "This machine type can only hold %d historical results per nozzle." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Edit Flow Dynamics Calibration" + +msgid "New Flow Dynamic Calibration" +msgstr "New Flow Dynamic Calibration" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "The filament must be selected." + +msgid "Network lookup" +msgstr "Network lookup" + +msgid "Address" +msgstr "Address" + +msgid "Hostname" +msgstr "Hostname" + +msgid "Service name" +msgstr "Service name" + +msgid "OctoPrint version" +msgstr "OctoPrint version" + +msgid "Searching for devices" +msgstr "Searching for devices" + +msgid "Finished" +msgstr "Finished" + +msgid "Multiple resolved IP addresses" +msgstr "" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" + +msgid "PA Calibration" +msgstr "PA Calibration" + +msgid "DDE" +msgstr "" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "" + +msgid "PA Tower" +msgstr "PA Tower" + +msgid "PA Line" +msgstr "PA Line" + +msgid "PA Pattern" +msgstr "PA Pattern" + +msgid "Start PA: " +msgstr "Start PA: " + +msgid "End PA: " +msgstr "End PA: " + +msgid "PA step: " +msgstr "PA step: " + +msgid "Print numbers" +msgstr "Print numbers" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" + +msgid "Temperature calibration" +msgstr "Temperature calibration" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Filament type" + +msgid "Start temp: " +msgstr "Start temp: " + +msgid "End temp: " +msgstr "End temp: " + +msgid "Temp step: " +msgstr "Temp step: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" + +msgid "Max volumetric speed test" +msgstr "Max volumetric speed test" + +msgid "Start volumetric speed: " +msgstr "Start volumetric speed: " + +msgid "End volumetric speed: " +msgstr "End volumetric speed: " + +msgid "step: " +msgstr "step: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "VFA test" +msgstr "VFA test" + +msgid "Start speed: " +msgstr "Start speed: " + +msgid "End speed: " +msgstr "End speed: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "Start retraction length: " +msgstr "Start retraction length: " + +msgid "End retraction length: " +msgstr "End retraction length: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Upload to Printer Host with the following filename:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "Use forward slashes ( / ) as a directory separator if needed." + +msgid "Upload to storage" +msgstr "" + +msgid "Switch to Device tab after upload." +msgstr "" + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "Upload filename doesn't end with \"%s\". Do you wish to continue?" + +msgid "Upload" +msgstr "Upload" + +msgid "Print host upload queue" +msgstr "Print host upload queue" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Progress" + +msgid "Host" +msgstr "Host" + +msgctxt "OfFile" +msgid "Size" +msgstr "Size" + +msgid "Filename" +msgstr "Filename" + +msgid "Cancel selected" +msgstr "Cancel selected" + +msgid "Show error message" +msgstr "Show error message" + +msgid "Enqueued" +msgstr "Queued" + +msgid "Uploading" +msgstr "Uploading" + +msgid "Cancelling" +msgstr "Cancelling" + +msgid "Error uploading to print host" +msgstr "" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Unable to perform boolean operation on selected parts" + +msgid "Mesh Boolean" +msgstr "Mesh Boolean" + +msgid "Union" +msgstr "Union" + +msgid "Difference" +msgstr "Difference" + +msgid "Intersection" +msgstr "Intersection" + +msgid "Source Volume" +msgstr "Source Volume" + +msgid "Tool Volume" +msgstr "Tool Volume" + +msgid "Subtract from" +msgstr "Subtract from" + +msgid "Subtract with" +msgstr "Subtract with" + +msgid "selected" +msgstr "selected" + +msgid "Part 1" +msgstr "Part 1" + +msgid "Part 2" +msgstr "Part 2" + +msgid "Delete input" +msgstr "Delete input" + +msgid "Network Test" +msgstr "Network Test" + +msgid "Start Test Multi-Thread" +msgstr "Start Test Multi-Thread" + +msgid "Start Test Single-Thread" +msgstr "Start Test Single-Thread" + +msgid "Export Log" +msgstr "Export Log" + +msgid "Snapmaker Orca Version:" +msgstr "" + +msgid "System Version:" +msgstr "System Version:" + +msgid "DNS Server:" +msgstr "DNS Server:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "" + +msgid "Test Bing.com" +msgstr "Test Bing.com" + +msgid "Test bing.com:" +msgstr "Test bing.com:" + +msgid "Log Info" +msgstr "Log Info" + +msgid "Select filament preset" +msgstr "Select filament preset" + +msgid "Create Filament" +msgstr "Create Filament" + +msgid "Create Based on Current Filament" +msgstr "Create Based on Current Filament" + +msgid "Copy Current Filament Preset " +msgstr "Copy Current Filament Preset " + +msgid "Basic Information" +msgstr "Basic Information" + +msgid "Add Filament Preset under this filament" +msgstr "Add Filament Preset under this filament" + +msgid "We could create the filament presets for your following printer:" +msgstr "We could create the filament presets for your following printer:" + +msgid "Select Vendor" +msgstr "Select Vendor" + +msgid "Input Custom Vendor" +msgstr "Input Custom Vendor" + +msgid "Can't find vendor I want" +msgstr "Can't find vendor I want" + +msgid "Select Type" +msgstr "Select Type" + +msgid "Select Filament Preset" +msgstr "Select Filament Preset" + +msgid "Serial" +msgstr "Serial" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "e.g. Basic, Matte, Silk, Marble" + +msgid "Filament Preset" +msgstr "Filament Preset" + +msgid "Create" +msgstr "Create" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Vendor is not selected; please reselect vendor." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "Custom vendor missing; please input custom vendor." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." + +msgid "Filament type is not selected, please reselect type." +msgstr "Filament type is not selected, please reselect type." + +msgid "Filament serial is not inputed, please input serial." +msgstr "Filament serial missing; please input serial." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"There may be disallowed characters in the vendor or serial input of the " +"filament. Please delete and re-enter." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "All inputs in the custom vendor or serial are spaces. Please re-enter." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "The vendor can not be a number; please re-enter." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"You have not selected a printer or preset yet. Please select at least one." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"The Filament name %s you created already exists. \n" +"If you continue, the preset created will be displayed with its full name. Do " +"you want to continue?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Some existing presets have failed to be created, as follows:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Do you want to rewrite it?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" + +msgid "Create Printer/Nozzle" +msgstr "Create Printer/Nozzle" + +msgid "Create Printer" +msgstr "Create Printer" + +msgid "Create Nozzle for Existing Printer" +msgstr "Create Nozzle for Existing Printer" + +msgid "Create from Template" +msgstr "Create from Template" + +msgid "Create Based on Current Printer" +msgstr "Create Based on Current Printer" + +msgid "Import Preset" +msgstr "Import Preset" + +msgid "Create Type" +msgstr "Create Type" + +msgid "The model is not found, place reselect vendor." +msgstr "The model was not found; please reselect vendor." + +msgid "Select Model" +msgstr "Select Model" + +msgid "Select Printer" +msgstr "Select Printer" + +msgid "Input Custom Model" +msgstr "Input Custom Model" + +msgid "Can't find my printer model" +msgstr "Can't find my printer model" + +msgid "Rectangle" +msgstr "Rectangle" + +msgid "Printable Space" +msgstr "Printable Space" + +msgid "Hot Bed STL" +msgstr "Hot Bed STL" + +msgid "Load stl" +msgstr "Load stl" + +msgid "Hot Bed SVG" +msgstr "Hot Bed SVG" + +msgid "Load svg" +msgstr "Load svg" + +msgid "Max Print Height" +msgstr "Max Print Height" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "The file exceeds %d MB, please import again." + +msgid "Exception in obtaining file size, please import again." +msgstr "Exception in obtaining file size, please import again." + +msgid "Preset path is not find, please reselect vendor." +msgstr "Preset path was not found; please reselect vendor." + +msgid "The printer model was not found, please reselect." +msgstr "The printer model was not found, please reselect." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "The nozzle diameter was not found; please reselect." + +msgid "The printer preset is not found, place reselect." +msgstr "The printer preset was not found; please reselect." + +msgid "Printer Preset" +msgstr "Printer Preset" + +msgid "Filament Preset Template" +msgstr "Filament Preset Template" + +msgid "Deselect All" +msgstr "Deselect All" + +msgid "Process Preset Template" +msgstr "Process Preset Template" + +msgid "Back Page 1" +msgstr "Back Page 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"You have entered a disallowed character in the printable area section on the " +"first page. Please use only numbers." + +msgid "The custom printer or model is not inputed, place input." +msgstr "The custom printer or model missing; please input." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserved.\n" +"\tCancel: Do not create a preset; return to the creation interface." + +msgid "You need to select at least one filament preset." +msgstr "You need to select at least one filament preset." + +msgid "You need to select at least one process preset." +msgstr "You need to select at least one process preset." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Create filament presets failed. As follows:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "Create process presets failed. As follows:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Vendor was not found; please reselect." + +msgid "Current vendor has no models, please reselect." +msgstr "Current vendor has no models, please reselect." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"You have not selected the vendor and model or input the custom vendor and " +"model." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." + +msgid "Please check bed printable shape and origin input." +msgstr "Please check bed printable shape and origin input." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"You have not yet selected the printer to replace the nozzle for; please " +"choose a printer." + +msgid "Create Printer Successful" +msgstr "Create Printer Successful" + +msgid "Create Filament Successful" +msgstr "Filament Created Successfully" + +msgid "Printer Created" +msgstr "Printer Created" + +msgid "Please go to printer settings to edit your presets" +msgstr "Please go to printer settings to edit your presets" + +msgid "Filament Created" +msgstr "Filament Created" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Please go to filament settings to edit your presets if you need to.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed each have a significant impact on printing quality. Please " +"set them carefully." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" + +msgid "Printer Setting" +msgstr "Printer Setting" + +msgid "Printer config bundle(.orca_printer)" +msgstr "" + +msgid "Filament bundle(.orca_filament)" +msgstr "" + +msgid "Printer presets(.zip)" +msgstr "Printer presets(.zip)" + +msgid "Filament presets(.zip)" +msgstr "Filament presets(.zip)" + +msgid "Process presets(.zip)" +msgstr "Process presets(.zip)" + +msgid "initialize fail" +msgstr "initialize fail" + +msgid "add file fail" +msgstr "add file fail" + +msgid "add bundle structure file fail" +msgstr "add bundle structure file fail" + +msgid "finalize fail" +msgstr "finalize fail" + +msgid "open zip written fail" +msgstr "open zip written fail" + +msgid "Export successful" +msgstr "Export successful" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it?\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"User's fillment preset set. \n" +"Can be shared with others." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Only display printers with changes to printer, filament, and process presets " +"are displayed." + +msgid "Only display the filament names with changes to filament presets." +msgstr "Only display the filament names with changes to filament presets." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." + +msgid "Please select at least one printer or filament." +msgstr "Please select at least one printer or filament." + +msgid "Please select a type you want to export" +msgstr "Please select a preset type you want to export" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "Failed to create temporary folder, please try Export Configs again." + +msgid "Edit Filament" +msgstr "Edit Filament" + +msgid "Filament presets under this filament" +msgstr "Filament presets under this filament" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "Presets inherited by other presets can not be deleted" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" + +msgid "Delete Preset" +msgstr "Delete Preset" + +msgid "Are you sure to delete the selected preset?" +msgstr "Are you sure to delete the selected preset?" + +msgid "Delete preset" +msgstr "Delete preset" + +msgid "+ Add Preset" +msgstr "+ Add Preset" + +msgid "Delete Filament" +msgstr "Delete Filament" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." + +msgid "Delete filament" +msgstr "Delete filament" + +msgid "Add Preset" +msgstr "Add Preset" + +msgid "Add preset for new printer" +msgstr "Add preset for new printer" + +msgid "Copy preset from filament" +msgstr "Copy preset from filament" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "The filament choice not find filament preset, please reselect it" + +msgid "[Delete Required]" +msgstr "[Delete Required]" + +msgid "Edit Preset" +msgstr "Edit Preset" + +msgid "For more information, please check out Wiki" +msgstr "For more information, please check out our Wiki" + +msgid "Collapse" +msgstr "Collapse" + +msgid "Daily Tips" +msgstr "Daily Tips" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "nozzle memorized: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Your nozzle diameter in preset is not consistent with the saved nozzle " +"diameter. Have you changed your nozzle?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*Printing %s material with %s may cause nozzle damage" + +msgid "Need select printer" +msgstr "Need select printer" + +msgid "The start, end or step is not valid value." +msgstr "The start, end or step is not valid value." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" + +#, fuzzy +msgid "Physical Printer" +msgstr "Printer" + +msgid "Print Host upload" +msgstr "Print Host upload" + +msgid "Could not get a valid Printer Host reference" +msgstr "Could not get a valid Printer Host reference" + +msgid "Success!" +msgstr "Success!" + +msgid "Are you sure to log out?" +msgstr "" + +msgid "Refresh Printers" +msgstr "Refresh Printers" + +msgid "View print host webui in Device tab" +msgstr "" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" + +msgid "Open CA certificate file" +msgstr "Open CA certificate file" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." + +msgid "Login/Test" +msgstr "" + +msgid "Connection to printers connected via the print host failed." +msgstr "Connection to printers connected via the print host failed." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Mismatched type of print host: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "Connection to AstroBox is working correctly." + +msgid "Could not connect to AstroBox" +msgstr "Could not connect to AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Note: AstroBox version 1.1.0 or higher is required." + +msgid "Connection to Duet works correctly." +msgstr "Connection to Duet is working correctly." + +msgid "Could not connect to Duet" +msgstr "Could not connect to Duet" + +msgid "Unknown error occured" +msgstr "Unknown error occured" + +msgid "Wrong password" +msgstr "Wrong password" + +msgid "Could not get resources to create a new connection" +msgstr "Could not get resources to create a new connection" + +msgid "Upload not enabled on FlashAir card." +msgstr "Upload not enabled on FlashAir card." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "Connection to FlashAir is working correctly and upload is enabled." + +msgid "Could not connect to FlashAir" +msgstr "Could not connect to FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." + +msgid "Connection to MKS works correctly." +msgstr "Connection to MKS is working correctly." + +msgid "Could not connect to MKS" +msgstr "Could not connect to MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "Connection to OctoPrint is working correctly." + +msgid "Could not connect to OctoPrint" +msgstr "Could not connect to OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Note: OctoPrint version 1.1.0 or higher is required." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Connection to Prusa SL1 / SL1S is working correctly." + +msgid "Could not connect to Prusa SLA" +msgstr "Could not connect to Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "Connection to PrusaLink is working correctly." + +msgid "Could not connect to PrusaLink" +msgstr "Could not connect to PrusaLink" + +msgid "Storages found" +msgstr "" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" + +msgid "Connection to Prusa Connect works correctly." +msgstr "" + +msgid "Could not connect to Prusa Connect" +msgstr "" + +msgid "Connection to Repetier works correctly." +msgstr "Connection to Repetier is working correctly." + +msgid "Could not connect to Repetier" +msgstr "Could not connect to Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Note: Repetier version 0.90.0 or higher is required." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a small layer height, and results in almost negligible layer lines " +"and high print quality. It is suitable for most general printing cases." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. This results in " +"much higher print quality but a much longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height. This results in almost negligible layer lines and " +"slightly longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height. This results in slightly visible layer lines but shorter print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height. This results in almost invisible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost invisible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height. This results in minimal layer lines and higher print quality but " +"longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in minimal layer lines and much higher print quality " +"but much longer print time." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a normal layer height, and results in average layer lines and print " +"quality. It is suitable for most printing cases." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but slightly shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in less apparent layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost negligible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and longer print time." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in much more apparent layer lines and much lower print " +"quality, but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and slightly higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"It has a very big layer height, and results in very apparent layer lines, " +"low print quality and shorter printing time." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height. This results in very apparent layer lines and much lower print " +"quality but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height. This results in extremely apparent layer lines and much lower " +"print quality but much shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height. This results in slightly less but still apparent layer " +"lines and slightly higher print quality, but longer print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height. This results in less but still apparent layer lines and slightly " +"higher print quality, but longer print time in some cases." + +msgid "Connected to Obico successfully!" +msgstr "" + +msgid "Could not connect to Obico" +msgstr "" + +msgid "Connected to SimplyPrint successfully!" +msgstr "" + +msgid "Could not connect to SimplyPrint" +msgstr "" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" + +msgid "Connection to Flashforge works correctly." +msgstr "" + +msgid "Could not connect to Flashforge" +msgstr "" + +msgid "The provided state is not correct." +msgstr "" + +msgid "Please give the required permissions when authorizing this application." +msgstr "" + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" + +msgid "User cancelled." +msgstr "" + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all the objects in your project?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing with a simple click?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster by using the Adaptive " +"Layer Height option? Check it out!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models while saving filament and improving " +"print speed. Check them out!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print " +"successfully? A higher temperature and lower speed are always recommended " +"for the best results." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Brim for better adhesion\n" +"Did you know that when printed models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"once?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Flush into support/objects/infill\n" +"Did you know that you can reduce wasted filament by flushing it into support/" +"objects/infill during filament changes?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"When do you need to print with the printer door opened?\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature? There is more info about this in the Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping?" + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Please input a valid value (K in 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "Printer local connection failed; please try again." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to replace the other results?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "There is already a previous calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to replace the previous result?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Please find the corner with the perfect degree of extrusion" + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "Export &Configs" +#~ msgstr "Export &Configs" + +#~ msgid "Infill direction" +#~ msgstr "Infill direction" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Enable this to get a G-code file with G2 and G3 moves. The fitting " +#~ "tolerance is the same as the resolution." + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "This allows the infill area to be enlarged slightly to overlap with walls " +#~ "for better bonding. The percentage value is relative to line width of " +#~ "sparse infill." + +#~ msgid "Unload Filament" +#~ msgstr "Unload" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" to automatically " +#~ "load or unload filament." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "MainBoard" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "active" +#~ msgstr "active" + +#~ msgid "Jump to layer" +#~ msgstr "Jump to layer" + +#~ msgid "Cabin humidity" +#~ msgstr "Cabin humidity" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "Green means that AMS humidity is normal, orange means that humidity is " +#~ "high, and red means that humidity is too high. (Hygrometer: the lower, " +#~ "the better.)" + +#~ msgid "Desiccant status" +#~ msgstr "Desiccant status" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant. (The higher, the better.)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing has finished." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "Success! G-code exported to %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Initialization failed (No Device)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Initialization failed (No Camera Device)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "Printer is busy downloading; please wait for the download to finish." + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Initialization failed (Not accessible in LAN-only mode)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "Initialization failed (Missing LAN IP of printer)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Stopped [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "Loading failed [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "No files [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Load failed [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Failed to fetch model infomation from printer." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Failed to parse model infomation" + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "presets?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "presets?" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)." + +#~ msgid "Configuration package updated to " +#~ msgstr "Configuration package updated to " + +#~ msgid "The Config can not be loaded." +#~ msgstr "The Config cannot be loaded." + +#~ msgid "Movement:" +#~ msgstr "Movement:" + +#~ msgid "Movement" +#~ msgstr "Movement" + +#~ msgid "Auto Segment" +#~ msgstr "Auto Segment" + +#~ msgid "Depth ratio" +#~ msgstr "Depth ratio" + +#~ msgid "Prizm" +#~ msgstr "Prizm" + +#~ msgid "connector is out of cut contour" +#~ msgstr "connector is out of cut contour" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "connectors are out of cut contour" + +#~ msgid "connector is out of object" +#~ msgstr "connector is out of object" + +#~ msgid "connectors is out of object" +#~ msgstr "Connectors must be on object surface." + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Invalid state. \n" +#~ "No one part is selected to keep after cut" + +#~ msgid "Edit Text" +#~ msgstr "Edit Text" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Error. Unable to create thread." + +#~ msgid "Exception" +#~ msgstr "Exception" + +#~ msgid "Choose SLA archive:" +#~ msgstr "Choose SLA archive:" + +#~ msgid "Import file" +#~ msgstr "Import file" + +#~ msgid "Import model and profile" +#~ msgstr "Import model and profile" + +#~ msgid "Import profile only" +#~ msgstr "Import profile only" + +#~ msgid "Import model only" +#~ msgstr "Import model only" + +#~ msgid "Accurate" +#~ msgstr "Accurate" + +#~ msgid "Balanced" +#~ msgstr "Balanced" + +#~ msgid "Quick" +#~ msgstr "Quick" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "This describes how long the nozzle will move along the last path while " +#~ "retracting." + +#~ msgid "Filling bed " +#~ msgstr "Filling bed" + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "%1% infill pattern doesn't support 100%% density." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - Switch to rectilinear pattern automatically\n" +#~ "No - Reset density to default non 100% value automatically" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "" +#~ "Please heat the nozzle to above 170 degrees before loading filament." + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "" +#~ "This is the density of internal sparse infill. 100% means that the object " +#~ "will be solid throughout." + +#~ msgid "Tree support wall loops" +#~ msgstr "Tree support wall loops" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "This setting specifies the wall count around tree support." + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " doesn't work at 100%% density " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Tool-Lay on Face" + +#~ msgid "Export as STL" +#~ msgstr "Export as STL" + +#~ msgid "Check cloud service status" +#~ msgstr "Check cloud service status" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Please input a valid value (K in 0~0.5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Export All Objects as STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "The 3mf is not compatible, loading geometry data only!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Incompatible 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "Add/Remove printers" + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s is not supported by the AMS." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Don't remind me about this version again." + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Error: IP or Access Code are not correct" + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Order of inner wall/outer wall/infill" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "This is the print sequence of inner walls, outer walls, and infill." + +#~ msgid "inner/outer/infill" +#~ msgstr "inner/outer/infill" + +#~ msgid "outer/inner/infill" +#~ msgstr "outer/inner/infill" + +#~ msgid "infill/inner/outer" +#~ msgstr "infill/inner/outer" + +#~ msgid "infill/outer/inner" +#~ msgstr "infill/outer/inner" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "inner-outer-inner/infill" + +#~ msgid "Export 3MF" +#~ msgstr "Export 3mf" + +#~ msgid "Export project as 3MF." +#~ msgstr "This exports the project as a 3mf file." + +#~ msgid "Export slicing data" +#~ msgstr "Export slicing data" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Export slicing data to a folder" + +#~ msgid "Load slicing data" +#~ msgstr "Load slicing data" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Load cached slicing data from directory" + +#~ msgid "Slice" +#~ msgstr "Slice" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "Slice the plates: 0-all plates, i-plate i, others-invalid" + +#~ msgid "Show command help." +#~ msgstr "This shows command help." + +#~ msgid "UpToDate" +#~ msgstr "UpToDate" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "Update the configs values of 3mf to latest." + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "max triangle count per plate for slicing" + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "max slicing time per plate in seconds" + +#~ msgid "Normative check" +#~ msgstr "Normative check" + +#~ msgid "Check the normative items." +#~ msgstr "Check the normative items." + +#~ msgid "Output Model Info" +#~ msgstr "Output Model Info" + +#~ msgid "Output the model's information." +#~ msgstr "This outputs the model’s information." + +#~ msgid "Export Settings" +#~ msgstr "Export Settings" + +#~ msgid "Export settings to a file." +#~ msgstr "This exports settings to a file." + +#~ msgid "Send progress to pipe" +#~ msgstr "Send progress to pipe" + +#~ msgid "Send progress to pipe." +#~ msgstr "Send progress to pipe." + +#~ msgid "Arrange Options" +#~ msgstr "Arrange Options" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Arrange options: 0-disable, 1-enable, others-auto" + +#~ msgid "Convert Unit" +#~ msgstr "Convert Unit" + +#~ msgid "Convert the units of model" +#~ msgstr "Convert the units of model" + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Scale the model by a float factor" + +#~ msgid "Load General Settings" +#~ msgstr "Load General Settings" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "Load process/machine settings from the specified file" + +#~ msgid "Load Filament Settings" +#~ msgstr "Load Filament Settings" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "Load filament settings from the specified file list" + +#~ msgid "Skip Objects" +#~ msgstr "Skip Objects" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Skip some objects in this print" + +#~ msgid "Output directory" +#~ msgstr "Output directory" + +#~ msgid "Output directory for the exported files." +#~ msgstr "This is the output directory for exported files." + +#~ msgid "Debug level" +#~ msgstr "Debug level" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" + +#~ msgid "Embeded" +#~ msgstr "Embedded" + +#~ msgid "Online Models" +#~ msgstr "Online Models" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "Show online staff-picked models on the home page" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "The minimum printing speed when slowing down for cooling." + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clogs." + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Temperature of vitrification" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "Material becomes soft at this temperature. Thus, the heat bed cannot be " +#~ "hotter than this temperature." + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "Enable this option if the machine has an auxiliary part cooling fan" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "This is the speed of auxiliary part cooling fan. The auxiliary fan will " +#~ "run at this speed during printing except for during the first several " +#~ "layers which may be set to have no part cooling." + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "Empty layers around bottom are replaced by nearest normal layers." + +#~ msgid "The model has too many empty layers." +#~ msgstr "The model has too many empty layers." + +#~ msgid "Cali" +#~ msgstr "Cali" + +#~ msgid "Calibration of extrusion" +#~ msgstr "Calibration of extrusion" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Push new filament into the extruder" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "The bed temperature of other layers is lower than the bed temperature of " +#~ "the first layer by more than %d degrees centigrade.\n" +#~ "This may cause models to break free from the build plate during printing." + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blockage and print failure.\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed." + +#~ msgid "Total Time Estimation" +#~ msgstr "Total Time Estimation" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Resonance frequency identification" + +#~ msgid "Immediately score" +#~ msgstr "Immediately score" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "Please give a score for your favorite Bambu Market model." + +#~ msgid "Score" +#~ msgstr "Score" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Bambu High Temperature Plate" + +#~ msgid "Can't connect to the printer" +#~ msgstr "Can't connect to the printer" + +#~ msgid "Recommended temperature range" +#~ msgstr "Recommended temperature range" + +#~ msgid "High Temp Plate" +#~ msgstr "High Temp Plate" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "This is the bed temperature when the high temperature plate is installed. " +#~ "A value of 0 means the filament does not support printing on the High " +#~ "Temp Plate." + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Internal bridge support thickness" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." + +#~ msgid "Bed temperature difference" +#~ msgstr "Bed temperature difference" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "It is not recommend for bed temperature of other layers to be lower than " +#~ "the first layer by more than this threshold. Too low bed temperature of " +#~ "other layer may cause the model to break free from the build plate." + +#~ msgid "Orient the model" +#~ msgstr "Orient the model" diff --git a/localization/i18n/es/Snapmaker_Orca_es.po b/localization/i18n/es/Snapmaker_Orca_es.po new file mode 100644 index 0000000000..dea859e19f --- /dev/null +++ b/localization/i18n/es/Snapmaker_Orca_es.po @@ -0,0 +1,19910 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: Carlos Fco. Caruncho Serrano \n" +"Language-Team: \n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 3.4.4\n" + +msgid "Supports Painting" +msgstr "Pintar Soportes" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Rueda del ratón" + +msgid "Section view" +msgstr "Vista de la sección" + +msgid "Reset direction" +msgstr "Reiniciar dirección" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Rueda del ratón" + +msgid "Pen size" +msgstr "Tamaño del lápiz" + +msgid "Left mouse button" +msgstr "Botón izquierdo del ratón" + +msgid "Enforce supports" +msgstr "Forzar soportes" + +msgid "Right mouse button" +msgstr "Botón derecho del ratón" + +msgid "Block supports" +msgstr "Bloquear soportes" + +msgid "Shift + Left mouse button" +msgstr "Mayús + Botón izquierdo del ratón" + +msgid "Erase" +msgstr "Borrar" + +msgid "Erase all painting" +msgstr "Borrar todo lo pintado" + +msgid "Highlight overhang areas" +msgstr "Resaltar las zonas de voladizos" + +msgid "Gap fill" +msgstr "Rellenar huecos" + +msgid "Perform" +msgstr "Realizar" + +msgid "Gap area" +msgstr "Rellenar área" + +msgid "Tool type" +msgstr "Tipo de herramienta" + +msgid "Smart fill angle" +msgstr "Ángulo de relleno en puente" + +msgid "On overhangs only" +msgstr "Solo en voladizos" + +msgid "Auto support threshold angle: " +msgstr "Ángulo del umbral de soporte automático: " + +msgid "Circle" +msgstr "Círculo" + +msgid "Sphere" +msgstr "Esfera" + +msgid "Fill" +msgstr "Llenar" + +msgid "Gap Fill" +msgstr "Rellenar huecos" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Permite pintar solo las facetas seleccionadas por: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Resalte las caras según el ángulo del voladizo." + +msgid "No auto support" +msgstr "No auto soportes" + +msgid "Support Generated" +msgstr "Soportes Generados" + +msgid "Gizmo-Place on Face" +msgstr "Situación-Gizmo enfrente" + +msgid "Lay on face" +msgstr "Tumbar boca abajo" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"El recuento de filamentos supera el número máximo que admite la herramienta " +"de pintura. Sólo los primeros %1% de filamentos estarán disponibles en la " +"herramienta de pintura." + +msgid "Color Painting" +msgstr "Pintura en Color" + +msgid "Pen shape" +msgstr "Forma de lápiz" + +msgid "Paint" +msgstr "Pintar" + +msgid "Key 1~9" +msgstr "Tecla 1~9" + +msgid "Choose filament" +msgstr "Elegir filamento" + +msgid "Edge detection" +msgstr "Detección de contorno" + +msgid "Triangles" +msgstr "Triángulos" + +msgid "Filaments" +msgstr "Filamentos" + +msgid "Brush" +msgstr "Cepillo" + +msgid "Smart fill" +msgstr "Relleno inteligente" + +msgid "Bucket fill" +msgstr "Relleno de cubos" + +msgid "Height range" +msgstr "Rango de altura" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Intro" + +msgid "Toggle Wireframe" +msgstr "Alternar Malla Alámbrica" + +msgid "Shortcut Key " +msgstr "Tecla de acceso directo " + +msgid "Triangle" +msgstr "Triángulo" + +msgid "Height Range" +msgstr "Rango de altura" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Remove painted color" +msgstr "Eliminar color pintado" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Pintado con: Filamento %1%" + +msgid "Move" +msgstr "Mover" + +msgid "Gizmo-Move" +msgstr "Movimiento-Gizmo" + +msgid "Rotate" +msgstr "Rotar" + +msgid "Gizmo-Rotate" +msgstr "Rotación-Gizmo" + +msgid "Optimize orientation" +msgstr "Optimizar orientación" + +msgid "Apply" +msgstr "Aplicar" + +msgid "Scale" +msgstr "Escalar" + +msgid "Gizmo-Scale" +msgstr "Reescalar-Gizmo" + +msgid "Error: Please close all toolbar menus first" +msgstr "" +"Error: Por favor, cierre primero todos los menús de la barra de herramientas" + +msgid "in" +msgstr "pulg" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Posición" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Rotación" + +msgid "Scale ratios" +msgstr "Ratios de escala" + +msgid "Object Operations" +msgstr "Operaciones con objetos" + +msgid "Volume Operations" +msgstr "Operaciones de volumen" + +msgid "Translate" +msgstr "Traducir" + +msgid "Group Operations" +msgstr "Operaciones de grupo" + +msgid "Set Position" +msgstr "Establecer Posición" + +msgid "Set Orientation" +msgstr "Establecer Orientación" + +msgid "Set Scale" +msgstr "Establecer Escala" + +msgid "Reset Position" +msgstr "Posición de reinicio" + +msgid "Reset Rotation" +msgstr "Reiniciar rotación" + +msgid "World coordinates" +msgstr "Coordenadas cartesianas" + +msgid "Object coordinates" +msgstr "Coordenadas del objeto" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Tamaño" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "escala uniforme" + +msgid "Planar" +msgstr "Plano" + +msgid "Dovetail" +msgstr "Cola de milano" + +msgid "Auto" +msgstr "Automático" + +msgid "Manual" +msgstr "Manual" + +msgid "Plug" +msgstr "Conectar" + +msgid "Dowel" +msgstr "Clavija" + +msgid "Snap" +msgstr "Instantánea" + +msgid "Prism" +msgstr "Prisma" + +msgid "Frustum" +msgstr "Cono" + +msgid "Square" +msgstr "Cuadrado" + +msgid "Hexagon" +msgstr "Hexágono" + +msgid "Keep orientation" +msgstr "Mantener la orientación" + +msgid "Place on cut" +msgstr "Colocar en la posición de corte" + +msgid "Flip upside down" +msgstr "Dar la vuelta" + +msgid "Connectors" +msgstr "Conectores" + +msgid "Type" +msgstr "Tipo" + +msgid "Style" +msgstr "Estilo" + +msgid "Shape" +msgstr "Forma" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Profundidad" + +msgid "Groove" +msgstr "Ranura" + +msgid "Width" +msgstr "Ancho" + +msgid "Flap Angle" +msgstr "Ángulo de solapa" + +msgid "Groove Angle" +msgstr "Ángulo de Ranura" + +msgid "Part" +msgstr "Pieza" + +msgid "Object" +msgstr "Objeto" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Haga clic para voltear el plano de corte \n" +"Arrastre para mover el plano de corte" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Haga clic para voltear el plano de corte\n" +"Arrastre para mover el plano de corte\n" +"Haga clic con el botón derecho en una pieza para asignarla al otro lado" + +msgid "Move cut plane" +msgstr "Mover plano de corte" + +msgid "Mode" +msgstr "Modo" + +msgid "Change cut mode" +msgstr "Cambiar modo de corte" + +msgid "Tolerance" +msgstr "Toleráncia" + +msgid "Drag" +msgstr "Soltar" + +msgid "Draw cut line" +msgstr "Dibujar línea de corte" + +msgid "Left click" +msgstr "Click izquierdo" + +msgid "Add connector" +msgstr "Añadir conector" + +msgid "Right click" +msgstr "Click derecho" + +msgid "Remove connector" +msgstr "Borrar conector" + +msgid "Move connector" +msgstr "Mover conector" + +msgid "Add connector to selection" +msgstr "Añadir conector a la selección" + +msgid "Remove connector from selection" +msgstr "Borrar conector de la selección" + +msgid "Select all connectors" +msgstr "Seleccionar todos los conectores" + +msgid "Cut" +msgstr "Cortar" + +msgid "Rotate cut plane" +msgstr "Rotar plano de corte" + +msgid "Remove connectors" +msgstr "Borrar conectores" + +msgid "Bulge" +msgstr "Rebasar" + +msgid "Bulge proportion related to radius" +msgstr "Proporción de rebase en relación al radio" + +msgid "Space" +msgstr "Espacio" + +msgid "Space proportion related to radius" +msgstr "Proporción de espacio en relación al radio" + +msgid "Confirm connectors" +msgstr "Confirmar conectores" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Build Volume" +msgstr "Volumen de Construcción" + +msgid "Flip cut plane" +msgstr "Voltear plano de corte" + +msgid "Groove change" +msgstr "Cambio de ranura" + +msgid "Reset" +msgstr "Reiniciar" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Editado" + +msgid "Cut position" +msgstr "Posición de corte" + +msgid "Reset cutting plane" +msgstr "Reiniciar plano de corte" + +msgid "Edit connectors" +msgstr "Editar conectores" + +msgid "Add connectors" +msgstr "Añadir conectores" + +msgid "Reset cut" +msgstr "Reiniciar corte" + +msgid "Reset cutting plane and remove connectors" +msgstr "Reajustar el plano de corte y retirar los conectores" + +msgid "Upper part" +msgstr "Parte alta" + +msgid "Lower part" +msgstr "Parte baja" + +msgid "Keep" +msgstr "Mantener" + +msgid "Flip" +msgstr "Girar" + +msgid "After cut" +msgstr "Después del corte" + +msgid "Cut to parts" +msgstr "Cortar en piezas" + +msgid "Perform cut" +msgstr "Realizar corte" + +msgid "Warning" +msgstr "Peligro" + +msgid "Invalid connectors detected" +msgstr "Conectores inválidos detectados" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "El conector %1$d está fuera del contorno de corte" +msgstr[1] "Los conectores %1$d están fuera del contorno de corte" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "El conector %1$d está fuera del objeto" +msgstr[1] "Los conectores %1$d están fuera del objeto" + +msgid "Some connectors are overlapped" +msgstr "Algunos conectores están solapados" + +msgid "Select at least one object to keep after cutting." +msgstr "Selecciona al menos un objeto para conservarlo después de cortarlo." + +msgid "Cut plane is placed out of object" +msgstr "El plano de corte se sitúa fuera del objeto" + +msgid "Cut plane with groove is invalid" +msgstr "El plano de corte con ranura no es válido" + +msgid "Connector" +msgstr "Conector" + +msgid "Cut by Plane" +msgstr "Corte en Plano" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"Los bordes con pliegues pueden ser causa de la herramienta de corte, " +"¿quieres arreglarlo ahora?" + +msgid "Repairing model object" +msgstr "Reparación de un objeto modelo" + +msgid "Cut by line" +msgstr "Corte en Línea" + +msgid "Delete connector" +msgstr "Borrar Conector" + +msgid "Mesh name" +msgstr "Nombre de la malla" + +msgid "Detail level" +msgstr "Nivel de detalle" + +msgid "Decimate ratio" +msgstr "Relación de decimación" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"El procesamiento del modelo '%1%' con más de 1M de triángulos podría ser " +"lento. Se recomienda encarecidamente simplificar el modelo." + +msgid "Simplify model" +msgstr "Simplificar el modelo" + +msgid "Simplify" +msgstr "Simplificar" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"La simplificación por el momento sólo se permite cuando se selecciona una " +"sola pieza" + +msgid "Error" +msgstr "Error" + +msgid "Extra high" +msgstr "Extra alto" + +msgid "High" +msgstr "Alto" + +msgid "Medium" +msgstr "Medio" + +msgid "Low" +msgstr "Bajo" + +msgid "Extra low" +msgstr "Extra bajo" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d triángulos" + +msgid "Show wireframe" +msgstr "Mostrar estructura de alambre" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "No se puede aplicar cuando la vista previa del proceso." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Operación ya cancelada. Por favor, espere unos segundos." + +msgid "Face recognition" +msgstr "Reconocimiento de caras" + +msgid "Perform Recognition" +msgstr "Realizar el reconocimiento" + +msgid "Brush size" +msgstr "Tamaño del pincel" + +msgid "Brush shape" +msgstr "Forma del pincel" + +msgid "Enforce seam" +msgstr "Reforzar costura" + +msgid "Block seam" +msgstr "Bloquear costura" + +msgid "Seam painting" +msgstr "Pintar costura" + +msgid "Remove selection" +msgstr "Borrar selección" + +msgid "Entering Seam painting" +msgstr "Entrando en la sección de pintado de costura" + +msgid "Leaving Seam painting" +msgstr "Saliendo de la sección de pintado de la costura" + +msgid "Paint-on seam editing" +msgstr "Edición de costuras pintadas" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Fuente" + +msgid "Thickness" +msgstr "Grosor" + +msgid "Text Gap" +msgstr "Espacio de texto" + +msgid "Angle" +msgstr "Ángulo" + +msgid "" +"Embeded\n" +"depth" +msgstr "" +"Profundidad\n" +"Integrada" + +msgid "Input text" +msgstr "Texto de entrada" + +msgid "Surface" +msgstr "Superficie" + +msgid "Horizontal text" +msgstr "Texto horizontal" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Mover ratón arriba u abajo" + +msgid "Rotate text" +msgstr "Rotar texto" + +msgid "Text shape" +msgstr "Forma de texto" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Rotar texto" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Mover texto" + +msgid "Set Mirror" +msgstr "Configurar Espejo" + +msgid "Embossed text" +msgstr "Texto en relieve" + +msgid "Enter emboss gizmo" +msgstr "Entrar herramienta de relieve" + +msgid "Leave emboss gizmo" +msgstr "Abandonar herramienta de relieve" + +msgid "Embossing actions" +msgstr "Acciones de relieve" + +msgid "Emboss" +msgstr "Relieve" + +msgid "NORMAL" +msgstr "NORMAL" + +msgid "SMALL" +msgstr "PEQUEÑA" + +msgid "ITALIC" +msgstr "CURSIVA" + +msgid "SWISS" +msgstr "SUIZA" + +msgid "MODERN" +msgstr "MODERNA" + +msgid "First font" +msgstr "Primera fuente" + +msgid "Default font" +msgstr "Fuente por defecto" + +msgid "Advanced" +msgstr "Avanzado" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"El texto no puede escribirse con la fuente seleccionada. Por favor, intente " +"elegir una fuente diferente." + +msgid "Embossed text cannot contain only white spaces." +msgstr "El texto en relieve no puede contener sólo espacios en blanco." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" +"El texto contiene el glifo de carácter (representado por '?') desconocido " +"por la fuente." + +msgid "Text input doesn't show font skew." +msgstr "La entrada de texto no muestra la inclinación de la fuente." + +msgid "Text input doesn't show font boldness." +msgstr "La entrada de texto no muestra la negrita de la fuente." + +msgid "Text input doesn't show gap between lines." +msgstr "La introducción de texto no muestra el espacio entre líneas." + +msgid "Too tall, diminished font height inside text input." +msgstr "" +"Demasiado alto, altura de fuente disminuida dentro de la entrada de texto." + +msgid "Too small, enlarged font height inside text input." +msgstr "" +"Altura de la fuente demasiado pequeña y aumentada dentro de la entrada de " +"texto." + +msgid "Text doesn't show current horizontal alignment." +msgstr "El texto no muestra la alineación horizontal actual." + +msgid "Revert font changes." +msgstr "Deshacer cambios de fuente." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "No se puede seleccionar la fuente \"%1%\"." + +msgid "Operation" +msgstr "Operación" + +msgid "Join" +msgstr "Ingresar" + +msgid "Click to change text into object part." +msgstr "Haga clic para cambiar el texto en la parte del objeto." + +msgid "You can't change a type of the last solid part of the object." +msgstr "No se puede cambiar el tipo de la última parte sólida del objeto." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Cortar" + +msgid "Click to change part type into negative volume." +msgstr "Haga clic para cambiar el tipo de pieza a volumen negativo." + +msgid "Modifier" +msgstr "Modificador" + +msgid "Click to change part type into modifier." +msgstr "Haga clic para cambiar el tipo de pieza en modificador." + +msgid "Change Text Type" +msgstr "Cambiar tipo de texto" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Renombrar estilo(%1%) para texto en relieve" + +msgid "Name can't be empty." +msgstr "El nombre no puede estar vacío." + +msgid "Name has to be unique." +msgstr "El nombre debe ser único." + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "Renombrar estilo" + +msgid "Rename current style." +msgstr "Renombrar el estilo actual." + +msgid "Can't rename temporary style." +msgstr "No se puede renombrar el estilo temporal." + +msgid "First Add style to list." +msgstr "Primero Añadir estilo a la lista." + +#, boost-format +msgid "Save %1% style" +msgstr "Guardar %1% estilo" + +msgid "No changes to save." +msgstr "No hay cambios que guardar." + +msgid "New name of style" +msgstr "Nuevo nombre del estilo" + +msgid "Save as new style" +msgstr "Guardar como nuevo estilo" + +msgid "Only valid font can be added to style." +msgstr "Sólo se pueden añadir fuentes válidas al estilo." + +msgid "Add style to my list." +msgstr "Añadir estilo a mi lista." + +msgid "Save as new style." +msgstr "Guardar como nuevo estilo." + +msgid "Remove style" +msgstr "Borrar estilo" + +msgid "Can't remove the last existing style." +msgstr "No se puede eliminar el último estilo existente." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "" +"¿Estás seguro de que quieres eliminar permanentemente el estilo \"%1%\"?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "Eliminar el estilo \"%1%\"." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "No se puede eliminar \"%1%\". Es el último estilo." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "No se puede eliminar el estilo temporal \"%1%\"." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Estilo modificado \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "El estilo actual es \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"Cambiar el estilo a \"%1%\" descartará la modificación del estilo actual.\n" +"\n" +"¿Desea continuar de todos modos?" + +msgid "Not valid style." +msgstr "Estilo no válido." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "El estilo \"%1%\" no se puede utilizar y se eliminará de una lista." + +msgid "Unset italic" +msgstr "Desactivar cursiva" + +msgid "Set italic" +msgstr "Aplicar cursiva" + +msgid "Unset bold" +msgstr "Desactivar negrita" + +msgid "Set bold" +msgstr "Aplicar negrita" + +msgid "Revert text size." +msgstr "Deshacer tamaño de texto." + +msgid "Revert embossed depth." +msgstr "Deshacer profundidad en relieve." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"Las opciones avanzadas no pueden modificarse para la fuente seleccionada.\n" +"Seleccione otra fuente." + +msgid "Revert using of model surface." +msgstr "Deshacer el uso de la superficie del modelo." + +msgid "Revert Transformation per glyph." +msgstr "Deshacer Transformación por glifo." + +msgid "Set global orientation for whole text." +msgstr "Establece la orientación global para todo el texto." + +msgid "Set position and orientation per glyph." +msgstr "Establezca la posición y la orientación por glifo." + +msgctxt "Alignment" +msgid "Left" +msgstr "Izquierda" + +msgctxt "Alignment" +msgid "Center" +msgstr "Centro" + +msgctxt "Alignment" +msgid "Right" +msgstr "Derecha" + +msgctxt "Alignment" +msgid "Top" +msgstr "Arriba" + +msgctxt "Alignment" +msgid "Middle" +msgstr "Medio" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Bajo" + +msgid "Revert alignment." +msgstr "Deshacer alineamiento." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "puntos" + +msgid "Revert gap between characters" +msgstr "Deshacer el espacio entre caracteres" + +msgid "Distance between characters" +msgstr "Distancia entre caracteres" + +msgid "Revert gap between lines" +msgstr "Deshacer el espacio entre líneas" + +msgid "Distance between lines" +msgstr "Distancia entre líneas" + +msgid "Undo boldness" +msgstr "Deshacer engrosado" + +msgid "Tiny / Wide glyphs" +msgstr "Glifos minúsculos / anchos" + +msgid "Undo letter's skew" +msgstr "Deshacer la inclinación de letra" + +msgid "Italic strength ratio" +msgstr "Relación de fuerza de cursiva" + +msgid "Undo translation" +msgstr "Deshacer la traducción" + +msgid "Distance of the center of the text to the model surface." +msgstr "Distancia del centro del texto a la superficie del modelo." + +msgid "Undo rotation" +msgstr "Deshacer la rotación" + +msgid "Rotate text Clock-wise." +msgstr "Girar el texto en el sentido de las agujas del reloj." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"Desbloquea la rotación del texto al moverlo a lo largo de la superficie del " +"objeto." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" +"Bloquea la rotación del texto al desplazarlo por la superficie del objeto." + +msgid "Select from True Type Collection." +msgstr "Seleccione de la colección True Type." + +msgid "Set text to face camera" +msgstr "Poner el texto frente a la cámara" + +msgid "Orient the text towards the camera." +msgstr "Orienta el texto hacia la cámara." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"No se puede cargar exactamente la misma fuente(\"%1%\"). La aplicación " +"seleccionó una similar (\"%2%\"). Tiene que especificar la fuente para " +"habilitar la edición de texto." + +msgid "No symbol" +msgstr "Sin símbolo" + +msgid "Loading" +msgstr "Cargando" + +msgid "In queue" +msgstr "En cola" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Altura" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Usar superficie" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "Por glifo" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Alineamiento" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Espacio de carácter" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Espacio de línea" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Negrita" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Relación de inclinación" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Desde la superficie" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "Mantener" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Colección" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "Rotar SVG" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "Mover SVG" + +msgid "Enter SVG gizmo" +msgstr "Introducir el objeto SVG" + +msgid "Leave SVG gizmo" +msgstr "Abandonar el objeto SVG" + +msgid "SVG actions" +msgstr "Acciones SVG" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Opacidad (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Gradiente de color (%1%)" + +msgid "Undefined fill type" +msgstr "Tipo de relleno indefinido" + +msgid "Linear gradient" +msgstr "Gradiente lineal" + +msgid "Radial gradient" +msgstr "Gradiente radial" + +msgid "Open filled path" +msgstr "Abrir camino de relleno" + +msgid "Undefined stroke type" +msgstr "Tipo de golpe indefinido" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" +"El camino no puede curarse de la auto-intersección y los puntos múltiples." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"La forma final contiene auto-intersección o múltiples puntos con la misma " +"coordenada." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "La forma está marcada como invisible (%1%)." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "Relleno de forma (%1%) contiene no soportado: %2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "" +"El trazo de la forma (%1%) es demasiado fino (la anchura mínima es %2% mm)." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "Trazo de forma (%1%) contiene no soportado: %2%." + +msgid "Face the camera" +msgstr "De cara a la cámara" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Nombre de archivo desconocido" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "La ruta del archivo SVG es \"%1%\"." + +msgid "Reload SVG file from disk." +msgstr "Vuelva a cargar el archivo SVG desde el disco." + +msgid "Change file" +msgstr "Cambiar archivo" + +msgid "Change to another .svg file" +msgstr "Cambiar a otro archivo .svg" + +msgid "Forget the file path" +msgstr "Olvidar la ruta del archivo" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"NO guarda la ruta local al archivo 3MF. \n" +"También desactiva la opción 'recargar desde disco'." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Hornear" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Horneado en el modelo como parte no editable" + +msgid "Save as" +msgstr "Guardar como" + +msgid "Save SVG file" +msgstr "Guardar archivo SVG" + +msgid "Save as '.svg' file" +msgstr "Guardar como archivo '.svg" + +msgid "Size in emboss direction." +msgstr "Tamaño en la dirección del relieve." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "La escala también cambia la cantidad de muestras de la curva (%1%)" + +msgid "Width of SVG." +msgstr "Anchura del SVG." + +msgid "Height of SVG." +msgstr "Altura del SVG." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "Bloquear/desbloquear la relación de aspecto del SVG." + +msgid "Reset scale" +msgstr "Restablecer escala" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "Distancia del centro del SVG a la superficie del modelo." + +msgid "Reset distance" +msgstr "Reiniciar distancia" + +msgid "Reset rotation" +msgstr "Reiniciar rotación" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" +"Bloquear/desbloquear el ángulo de rotación al arrastrar por encima de la " +"superficie.Bloquear/desbloquear el ángulo de rotación al arrastrar por " +"encima de la superficie." + +msgid "Mirror vertically" +msgstr "Espejo vertical" + +msgid "Mirror horizontally" +msgstr "Espejo horizontal" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "Cambiar tipo SVG" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Reflejar" + +msgid "Choose SVG file for emboss:" +msgstr "Elegir archivo SVG para el relieve:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "El fichero NO existe (%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "" +"El nombre del archivo debe terminar con \".svg\" pero ha seleccionado %1%" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "El analizador Nano SVG no puede cargar desde el archivo (%1%)." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "El archivo SVG NO contiene una ruta única para el relieve (%1%)." + +msgid "Vertex" +msgstr "Vértice" + +msgid "Edge" +msgstr "Borde" + +msgid "Plane" +msgstr "Plano" + +msgid "Point on edge" +msgstr "Punto en el borde" + +msgid "Point on circle" +msgstr "Punto en el circulo" + +msgid "Point on plane" +msgstr "Punto del plano" + +msgid "Center of edge" +msgstr "Centro de la arista" + +msgid "Center of circle" +msgstr "Centro del círculo" + +msgid "ShiftLeft mouse button" +msgstr "Mayúsculas + Botón izquierdo del ratón" + +msgid "Select feature" +msgstr "Seleccionar característica" + +msgid "Select point" +msgstr "Seleccionar punto" + +msgid "Delete" +msgstr "Borrar" + +msgid "Restart selection" +msgstr "Reiniciar selección" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "Deseleccionar" + +msgid "Measure" +msgstr "Medida" + +msgid "Edit to scale" +msgstr "Editar a escala" + +msgctxt "Verb" +msgid "Scale" +msgstr "Escala" + +msgid "None" +msgstr "Ninguno" + +msgid "Diameter" +msgstr "Diámetro" + +msgid "Length" +msgstr "Largo" + +msgid "Selection" +msgstr "Selección" + +msgid "Copy to clipboard" +msgstr "Copiar al portapapeles" + +msgid "Perpendicular distance" +msgstr "Distancia perpendicular" + +msgid "Distance" +msgstr "Distancia" + +msgid "Direct distance" +msgstr "Distancia directa" + +msgid "Distance XYZ" +msgstr "Distancia XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Aviso" + +msgid "Undefined" +msgstr "Indefinido" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% fue reemplazado por %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" +"La configuración puede ser generada por una versión más reciente de " +"Snapmaker Orca." + +msgid "Some values have been replaced. Please check them:" +msgstr "Algunos valores han sido sustituidos. Por favor, compruébalos:" + +msgid "Process" +msgstr "Proceso" + +msgid "Filament" +msgstr "Filamento" + +msgid "Machine" +msgstr "Máquina" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"El paquete de configuración fue cargado, pero algunos valores no fueron " +"reconocidos." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Se ha cargado el archivo de configuración \"%1%\", pero no se han reconocido " +"algunos valores." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca terminará porque se está quedando sin memoria. Le agradeceremos " +"que comunique el problema a nuestro equipo." + +# msgid "Snapmaker Orca will terminate because of running out of memory.It may be +# a bug. It will be appreciated if you report the issue to our team." +# msgstr "Snapmaker Orca se cerrará porque se está quedando sin memoria. Le +# agradeceremos que informe de ello a nuestro equipo." +msgid "Fatal error" +msgstr "Error fatal" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca se cerrará debido a un error de posición. Le agradeceremos que " +"nos informe del escenario específico en el que se ha producido este problema." + +# msgid "Snapmaker Orca will terminate because of a localization error. It will be +# appreciated if you report the specific scenario this issue happened." +# msgstr "Snapmaker Orca terminará debido a un error de localización. Le +# agradeceríamos que nos informara del escenario específico en el que se ha +# producido este problema" +msgid "Critical error" +msgstr "Error crítico" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca recibió una notificación de excepción no controlada: %1%" + +msgid "Untitled" +msgstr "Sin título" + +# msgid "Snapmaker Orca got an unhandled exception: %1%" +# msgstr "Snapmaker Orca obtuvo una excepción no manejada: %1%" +msgid "Downloading Bambu Network Plug-in" +msgstr "Descargando el complemento de Red Bambú" + +msgid "Login information expired. Please login again." +msgstr "Los datos de acceso han caducado. Por favor, inicie sesión de nuevo." + +msgid "Incorrect password" +msgstr "Contraseña incorrecta" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "¡Conexión %s fallida! [SN:%s, code=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca requiere el tiempo de ejecución de Microsoft WebView2 para " +"operar ciertas características.\n" +"Haga clic en Sí para instalarlo ahora." + +msgid "WebView2 Runtime" +msgstr "Tiempo de ejecución de WebView2" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"¿Quieres continuar?" + +msgid "Remember my choice" +msgstr "Recordar mi selección" + +msgid "Loading configuration" +msgstr "Cargando configuración" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "" +"Haga clic para descargar la nueva versión en el navegador por defecto: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca necesita una actualización" + +msgid "This is the newest version." +msgstr "Esta es la versión más reciente." + +msgid "Info" +msgstr "Información" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"El archivo de configuración de Snapmaker Orca puede estar dañado y no puede ser " +"analizado.\n" +"Snapmaker Orca ha intentado recrear el archivo de configuración.\n" +"Tenga en cuenta que se perderán los ajustes de la aplicación, pero los " +"perfiles de impresora no se verán afectados." + +msgid "Rebuild" +msgstr "Reconstruir" + +msgid "Loading current presets" +msgstr "Carga de los perfiles actuales" + +msgid "Loading a mode view" +msgstr "Cargar un modo de vista" + +msgid "Choose one file (3mf):" +msgstr "Elija un archivo (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "Escoja uno o más archivos (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Elige uno o más archivos (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "Escoger archivo ZIP" + +msgid "Choose one file (gcode/3mf):" +msgstr "Elegir un archivo (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "Algunos perfiles se modificaron." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Puede mantener los perfiles modificados en el nuevo proyecto, descartar o " +"guardar los cambios como nuevos perfiles." + +msgid "User logged out" +msgstr "Usuario desconectado" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" +"¡crear o abrir un archivo de proyecto nuevo no está permitido durante el " +"proceso de laminado!" + +msgid "Open Project" +msgstr "Abrir proyecto" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"La versión de Snapmaker Orca es una versión demasiado antigua y necesita ser " +"actualizada a la última versión antes de poder utilizarla con normalidad" + +msgid "Privacy Policy Update" +msgstr "Actualización de política de privacidad" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"El número de perfiles de usuario almacenados en caché en la nube ha superado " +"el límite superior, los perfiles de usuario recién creados sólo pueden " +"utilizarse localmente." + +msgid "Sync user presets" +msgstr "Sincronizar perfiles de usuario" + +msgid "Loading user preset" +msgstr "Cargando la preselección del usuario" + +msgid "Switching application language" +msgstr "Cambio de idioma de la aplicación" + +msgid "Select the language" +msgstr "Seleccionar el idioma" + +msgid "Language" +msgstr "Idioma" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Las subidas aún están en curso" + +msgid "Stop them and continue anyway?" +msgstr "¿Pararlos y continuar de todas maneras?" + +msgid "Ongoing uploads" +msgstr "Cargas en curso" + +msgid "Select a G-code file:" +msgstr "Seleccionar un archivo de G-Code:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"No se pudo iniciar la descarga del URL. La carpeta de destino no se " +"seleccionó. Por favor escoge una carpeta de destino en el Asistente de " +"Configuración." + +msgid "Import File" +msgstr "Importar Archivo" + +msgid "Choose files" +msgstr "Elija los archivos" + +msgid "New Folder" +msgstr "Nueva Carpeta" + +msgid "Open" +msgstr "Abrir" + +msgid "Rename" +msgstr "Renombrar" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Ha fallado la inicialización de la interfaz gráfica de Snapmaker Orca" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Error fatal, excepción detectada: %1%" + +msgid "Quality" +msgstr "Calidad" + +msgid "Shell" +msgstr "Cubierta" + +msgid "Infill" +msgstr "Relleno" + +msgid "Support" +msgstr "Soportes" + +msgid "Flush options" +msgstr "Opciones de flujo" + +msgid "Speed" +msgstr "Velocidad" + +msgid "Strength" +msgstr "Fuerza" + +msgid "Top Solid Layers" +msgstr "Capas Sólidas Superiores" + +msgid "Top Minimum Shell Thickness" +msgstr "Espesor Mínimo de la Cubierta Superior" + +msgid "Bottom Solid Layers" +msgstr "Capas Sólidas Inferiores" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Espesor Mínimo de la Cubierta Inferior" + +msgid "Ironing" +msgstr "Alisado" + +msgid "Fuzzy Skin" +msgstr "Piel Difusa" + +msgid "Extruders" +msgstr "Extrusores" + +msgid "Extrusion Width" +msgstr "Ancho de Extrusión" + +msgid "Wipe options" +msgstr "Opciones de limpieza" + +msgid "Bed adhesion" +msgstr "Adhesión a la cama" + +msgid "Add part" +msgstr "Añadir pieza" + +msgid "Add negative part" +msgstr "Añadir pieza negativa" + +msgid "Add modifier" +msgstr "Añadir modificador" + +msgid "Add support blocker" +msgstr "Añadir bloqueo de soportes" + +msgid "Add support enforcer" +msgstr "Añadir refuerzo de soportes" + +msgid "Add text" +msgstr "Añadir texto" + +msgid "Add negative text" +msgstr "Añadir texto negativo" + +msgid "Add text modifier" +msgstr "Añadir modificador de texto" + +msgid "Add SVG part" +msgstr "Añadir parte SVG" + +msgid "Add negative SVG" +msgstr "Añadir SVG negativo" + +msgid "Add SVG modifier" +msgstr "Añadir modificador SVG" + +msgid "Select settings" +msgstr "Seleccionar los ajustes" + +msgid "Hide" +msgstr "Ocultar" + +msgid "Show" +msgstr "Mostrar" + +msgid "Del" +msgstr "Borrar" + +msgid "Delete the selected object" +msgstr "Eliminar el objeto seleccionado" + +msgid "Load..." +msgstr "Cargar..." + +msgid "Cube" +msgstr "Cubo" + +msgid "Cylinder" +msgstr "Cilindro" + +msgid "Cone" +msgstr "Cono" + +msgid "Disc" +msgstr "Disco" + +msgid "Torus" +msgstr "Torus" + +msgid "Orca Cube" +msgstr "Cubo Orca" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Prueba Autodesk FDM" + +msgid "Voron Cube" +msgstr "Cubo de Vorón" + +msgid "Stanford Bunny" +msgstr "Conejito Stanford" + +msgid "Orca String Hell" +msgstr "Infierno de cadena Orca" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Este modelo presenta texto en relieve en la superficie superior. Para " +"obtener resultados óptimos, es aconsejable establecer el \"Umbral de " +"perímetro (min_width_top_surface)\" a 0 para que \"Sólo un perímetro en las " +"superficies superiores\" funcione mejor. \n" +"Sí - Cambiar estos ajustes automáticamente \n" +"No - No cambiar estos ajustes para mí" + +msgid "Text" +msgstr "Texto" + +msgid "Height range Modifier" +msgstr "Modificador de rango de Altura" + +msgid "Add settings" +msgstr "Añadir ajustes" + +msgid "Change type" +msgstr "Cambiar tipo" + +msgid "Set as an individual object" +msgstr "Ajustar como objeto individual" + +msgid "Set as individual objects" +msgstr "Ajustar como objetos individuales" + +msgid "Fill bed with copies" +msgstr "Llenar la cama de copias" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Llena el resto del área de la cama con copias del objeto seleccionado" + +msgid "Printable" +msgstr "Imprimible" + +msgid "Fix model" +msgstr "Reparar el modelo" + +msgid "Export as one STL" +msgstr "Exportar como STL único" + +msgid "Export as STLs" +msgstr "Exportar como STLs" + +msgid "Reload from disk" +msgstr "Recargar desde el disco" + +msgid "Reload the selected parts from disk" +msgstr "Recargar las piezas seleccionadas desde el disco" + +msgid "Replace with STL" +msgstr "Reemplazar con STL" + +msgid "Replace the selected part with new STL" +msgstr "Reemplaza la pieza seleccionada con un nuevo STL" + +msgid "Change filament" +msgstr "Cambiar el filamento" + +msgid "Set filament for selected items" +msgstr "Ajustar el filamento para los elementos seleccionados" + +msgid "Default" +msgstr "Por defecto" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filamento %d" + +msgid "current" +msgstr "actual" + +msgid "Scale to build volume" +msgstr "Escala para la impresión del volumen" + +msgid "Scale an object to fit the build volume" +msgstr "Escalar un objeto para que se ajuste al volumen de impresión" + +msgid "Flush Options" +msgstr "Opciones de Flujo" + +msgid "Flush into objects' infill" +msgstr "Purgar en el relleno de objetos" + +msgid "Flush into this object" +msgstr "Purgar en este objeto" + +msgid "Flush into objects' support" +msgstr "Purgar en los soportes de objetos" + +msgid "Edit in Parameter Table" +msgstr "Editar en la Tabla de Parámetros" + +msgid "Convert from inch" +msgstr "Convertir desde pulgadas" + +msgid "Restore to inch" +msgstr "Restaurar a pulgadas" + +msgid "Convert from meter" +msgstr "Convertir desde metros" + +msgid "Restore to meter" +msgstr "Restaurar a metros" + +msgid "Assemble" +msgstr "Agrupar" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Ensamblar los objetos seleccionados en un objeto con múltiples piezas" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Ensamblar los objetos seleccionados en un objeto con una sola pieza" + +msgid "Mesh boolean" +msgstr "Malla booleana" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Las operaciones de malla booleana incluidas en la unión y resta" + +msgid "Along X axis" +msgstr "A lo largo del eje X" + +msgid "Mirror along the X axis" +msgstr "Espejo a lo largo del eje X" + +msgid "Along Y axis" +msgstr "A lo largo del eje Y" + +msgid "Mirror along the Y axis" +msgstr "Espejo a lo largo del eje Y" + +msgid "Along Z axis" +msgstr "A lo largo del eje Z" + +msgid "Mirror along the Z axis" +msgstr "Espejo a lo largo del eje Z" + +msgid "Mirror object" +msgstr "Objeto reflejado" + +msgid "Edit text" +msgstr "Editar texto" + +msgid "Ability to change text, font, size, ..." +msgstr "Habilidad para cambiar texto, fuente, tamaño, ..." + +msgid "Edit SVG" +msgstr "Editar SVG" + +msgid "Change SVG source file, projection, size, ..." +msgstr "Cambiar archivo fuente SVG, proyección, tamaño, ..." + +msgid "Invalidate cut info" +msgstr "Invalidar información de corte" + +msgid "Add Primitive" +msgstr "Añadir Primitivo" + +msgid "Add Handy models" +msgstr "Añadir Modelos Prácticos" + +msgid "Add Models" +msgstr "Añadir Modelos" + +msgid "Show Labels" +msgstr "Mostrar Etiquetas" + +msgid "To objects" +msgstr "En objetos" + +msgid "Split the selected object into multiple objects" +msgstr "Dividir el objeto seleccionado en varios objetos" + +msgid "To parts" +msgstr "En piezas" + +msgid "Split the selected object into multiple parts" +msgstr "Dividir el objeto seleccionado en varias piezas" + +msgid "Split" +msgstr "Dividir" + +msgid "Split the selected object" +msgstr "Dividir el objeto seleccionado" + +msgid "Auto orientation" +msgstr "Orientación automática" + +msgid "Auto orient the object to improve print quality." +msgstr "" +"Orienta automáticamente el objeto para mejorar la calidad de la impresión." + +msgid "Select All" +msgstr "Seleccionar Todo" + +msgid "select all objects on current plate" +msgstr "Seleccionar todos los objetos de la bandeja actual" + +msgid "Delete All" +msgstr "Borrar todo" + +msgid "delete all objects on current plate" +msgstr "Eliminar todos los objetos de la bandeja actual" + +msgid "Arrange" +msgstr "Organizar" + +msgid "arrange current plate" +msgstr "Ordenar la bandeja actual" + +msgid "Reload All" +msgstr "Recargar todo" + +msgid "reload all from disk" +msgstr "Recargar todo desde disco" + +msgid "Auto Rotate" +msgstr "Rotación Automática" + +msgid "auto rotate current plate" +msgstr "Auto rotar la bandeja actual" + +msgid "Delete Plate" +msgstr "Borrar Bandeja" + +msgid "Remove the selected plate" +msgstr "Retirar la bandeja seleccionada" + +msgid "Clone" +msgstr "Clonar" + +msgid "Simplify Model" +msgstr "Simplificar Modelo" + +msgid "Center" +msgstr "Centrar" + +msgid "Edit Process Settings" +msgstr "Editar Ajustes de Procesado" + +msgid "Edit print parameters for a single object" +msgstr "Editar los parámetros de impresión de un solo objeto" + +msgid "Change Filament" +msgstr "Cambiar el Filamento" + +msgid "Set Filament for selected items" +msgstr "Ajustar el filamento para los elementos seleccionados" + +msgid "Unlock" +msgstr "Desbloquear" + +msgid "Lock" +msgstr "Bloquear" + +msgid "Edit Plate Name" +msgstr "Editar nombre de la bandeja" + +msgid "Name" +msgstr "Nombre" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d error reparado" +msgstr[1] "%1$d errores reparados" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Error: %1$d contorno no moldeado." +msgstr[1] "Error: %1$d contornos no moldeados." + +msgid "Remaining errors" +msgstr "Errores restantes" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d contorno no moldeado" +msgstr[1] "%1$d contornos no moldeados" + +msgid "Right click the icon to fix model object" +msgstr "" +"Haga clic con el botón derecho del ratón en el icono para reparar el objeto " +"del modelo" + +msgid "Right button click the icon to drop the object settings" +msgstr "" +"Haga clic con el botón derecho del ratón en el icono para descartar la " +"configuración del objeto" + +msgid "Click the icon to reset all settings of the object" +msgstr "Haga clic en el icono para restablecer todos los ajustes del objeto" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Haga clic con el botón derecho en el icono para descartar la característica " +"imprimible del objeto" + +msgid "Click the icon to toggle printable property of the object" +msgstr "" +"Haga clic en el icono para alternar la característica imprimible del objeto" + +msgid "Click the icon to edit support painting of the object" +msgstr "Haga clic en el icono para editar la pintura de apoyo del objeto" + +msgid "Click the icon to edit color painting of the object" +msgstr "Haga clic en el icono para editar la pintura de color del objeto" + +msgid "Click the icon to shift this object to the bed" +msgstr "Presionar el icono para desplazar este objeto a la cama" + +msgid "Loading file" +msgstr "Cargando archivo" + +msgid "Error!" +msgstr "¡Error!" + +msgid "Failed to get the model data in the current file." +msgstr "Fallo recuperando los datos del modelo del archivo actual." + +msgid "Generic" +msgstr "Genérico" + +msgid "Add Modifier" +msgstr "Añadir modificador" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Cambia al modo de ajuste por objeto para editar los ajustes de los " +"modificadores." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Cambiar al modo de ajuste por objeto para editar los ajustes de proceso de " +"los objetos." + +msgid "Delete connector from object which is a part of cut" +msgstr "Borrar conector del objeto el cual es parte del corte" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Borrar la parte sólida del objeto la cual es parte del corte" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Borrar volumen negativo del objeto el cual es parte del corte" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Para salvar la correspondencia de corte puedes borrar todos los conectores " +"de los objetos relacionados." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"La acción interrumpirá la correspondencia de corte.\n" +"Después de esto la consistencia no podrá ser garantizada.\n" +"\n" +"Para manipular partes sólidas o volúmenes negativos tienes que invalidar la " +"información de corte primero." + +msgid "Delete all connectors" +msgstr "Borrar todos los conectores" + +msgid "Deleting the last solid part is not allowed." +msgstr "No se permite borrar la última parte sólida." + +msgid "The target object contains only one part and can not be splited." +msgstr "El objeto de destino sólo contiene una pieza y no se puede dividir." + +msgid "Assembly" +msgstr "Montaje" + +msgid "Cut Connectors information" +msgstr "Información de Conectores de Corte" + +msgid "Object manipulation" +msgstr "Manipulación de objeto" + +msgid "Group manipulation" +msgstr "Manipulación de grupo" + +msgid "Object Settings to modify" +msgstr "Ajustes de objeto modificables" + +msgid "Part Settings to modify" +msgstr "Ajustes de pieza modificables" + +msgid "Layer range Settings to modify" +msgstr "Ajustes de capa modificables" + +msgid "Part manipulation" +msgstr "Manipulación de piezas" + +msgid "Instance manipulation" +msgstr "Manipulación de instancias" + +msgid "Height ranges" +msgstr "Rangos de altura" + +msgid "Settings for height range" +msgstr "Ajustes de rango de altura" + +msgid "Layer" +msgstr "Capa" + +msgid "Selection conflicts" +msgstr "Conflictos en la selección" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Si el primer elemento seleccionado es un objeto, el segundo también debería " +"serlo." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Si el primer elemento seleccionado es una pieza, el segundo debe ser una " +"pieza en el mismo objeto." + +msgid "The type of the last solid object part is not to be changed." +msgstr "El tipo de la última pieza del objeto sólido no debe cambiarse." + +msgid "Negative Part" +msgstr "Parte negativa" + +msgid "Support Blocker" +msgstr "Bloqueador de soporte" + +msgid "Support Enforcer" +msgstr "Refuerzo de Soportes" + +msgid "Type:" +msgstr "Tipo:" + +msgid "Choose part type" +msgstr "Elija el tipo de pieza" + +msgid "Enter new name" +msgstr "Introduce un nuevo nombre" + +msgid "Renaming" +msgstr "Renombrar" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "Se ha reparado el siguiente modelo de objeto" +msgstr[1] "Se han reparado los siguientes objetos del modelo" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "No se ha podido reparar el siguiente objeto modelo" +msgstr[1] "No se han podido reparar los siguientes objetos del modelo" + +msgid "Repairing was canceled" +msgstr "La reparación fue cancelada" + +msgid "Additional process preset" +msgstr "Perfil de proceso adicional" + +msgid "Remove parameter" +msgstr "Eliminar parámetro" + +msgid "to" +msgstr "a" + +msgid "Remove height range" +msgstr "Borrar rango de altura" + +msgid "Add height range" +msgstr "Añadir rango de altura" + +msgid "Invalid numeric." +msgstr "Numérico inválido." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"una celda sólo puede copiarse en una o varias celdas de la misma columna" + +msgid "multiple cells copy is not supported" +msgstr "no se admite la copia de múltiples celdas" + +msgid "Outside" +msgstr "En el exterior" + +msgid "Layer height" +msgstr "Altura de la capa" + +msgid "Wall loops" +msgstr "Bucles de perímetro" + +msgid "Infill density(%)" +msgstr "Densidad de relleno(%)" + +msgid "Auto Brim" +msgstr "Borde de Adherencia Automático" + +msgid "Mouse ear" +msgstr "Oreja de ratón" + +msgid "Outer brim only" +msgstr "Solo borde de adherencia exterior" + +msgid "Inner brim only" +msgstr "Solo borde de adherencia interior" + +msgid "Outer and inner brim" +msgstr "Borde de adherencia exterior e interior" + +msgid "No-brim" +msgstr "Sin borde de adherencia" + +msgid "Outer wall speed" +msgstr "Velocidad perímetro exterior" + +msgid "Plate" +msgstr "Bandeja" + +msgid "Brim" +msgstr "Borde de adherencia" + +msgid "Object/Part Setting" +msgstr "Ajuste del Objeto/Parte" + +msgid "Reset parameter" +msgstr "Restablecer parámetro" + +msgid "Multicolor Print" +msgstr "Impresión multicolor" + +msgid "Line Type" +msgstr "Tipo de línea" + +msgid "More" +msgstr "Más" + +msgid "Open Preferences." +msgstr "Abrir Preferencias." + +msgid "Open next tip." +msgstr "Abrir siguiente consejo." + +msgid "Open Documentation in web browser." +msgstr "Abrir la Documentación en el navegador." + +msgid "Color" +msgstr "Color" + +msgid "Pause" +msgstr "Pausa" + +msgid "Template" +msgstr "Plantilla" + +msgid "Custom" +msgstr "Personalizado" + +msgid "Pause:" +msgstr "Pausa:" + +msgid "Custom Template:" +msgstr "Plantillas Personalizadas:" + +msgid "Custom G-code:" +msgstr "G-Code personalizado:" + +msgid "Custom G-code" +msgstr "G-Code personalizado" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Inserta el G-Code personalizado usado en la capa actual:" + +msgid "Jump to Layer" +msgstr "Salta a la Capa" + +msgid "Please enter the layer number" +msgstr "Por favor, introduce el número de capa" + +msgid "Add Pause" +msgstr "Añadir Pausa" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Inserta un comando de pausa en el principio de esta capa." + +msgid "Add Custom G-code" +msgstr "Añadir G-Code personalizado" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Insertar G-Code personalizado en el principio de esta capa." + +msgid "Add Custom Template" +msgstr "Añadir Plantilla Personalizada" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Insetar G-Code de plantilla personalizada al principio de esta capa." + +msgid "Filament " +msgstr "Filamento " + +msgid "Change filament at the beginning of this layer." +msgstr "Cargar filamento al principio de esta capa." + +msgid "Delete Pause" +msgstr "Borrar Pausa" + +msgid "Delete Custom Template" +msgstr "Borrar Plantilla Personalizada" + +msgid "Edit Custom G-code" +msgstr "Editar G-Code Personalizado" + +msgid "Delete Custom G-code" +msgstr "Borrar G-Code Personalizado" + +msgid "Delete Filament Change" +msgstr "Borrar Cambio de Filamento" + +msgid "No printer" +msgstr "Sin impresión" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "No se ha podido conectar con el servidor" + +msgid "Check the status of current system services" +msgstr "Comprobar el estado de los servicios actuales del sistema" + +msgid "code" +msgstr "código" + +msgid "Failed to connect to cloud service" +msgstr "Error al conectar con el servicio en la nube" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "" +"Haga clic en el hipervínculo anterior para ver el estado del servicio en la " +"nube" + +msgid "Failed to connect to the printer" +msgstr "No se ha podido conectar a la impresora" + +msgid "Connection to printer failed" +msgstr "Connection to printer failed" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Compruebe la conexión de red de la impresora y Orca." + +msgid "Connecting..." +msgstr "Conectando…" + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Vacío" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Auto Rellenado" + +msgid "AMS not connected" +msgstr "AMS no conectado" + +msgid "Load" +msgstr "Cargar" + +msgid "Unload" +msgstr "Descarga" + +msgid "Ext Spool" +msgstr "Carrete Externo" + +msgid "Tips" +msgstr "Consejos" + +msgid "Guide" +msgstr "Guía" + +msgid "Retry" +msgstr "Reintentar" + +msgid "Calibrating AMS..." +msgstr "Calibración de AMS..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"Se ha producido un problema durante la calibración. Haga clic para ver la " +"solución." + +msgid "Calibrate again" +msgstr "Calibrar de nuevo" + +msgid "Cancel calibration" +msgstr "Cancelar calibración" + +msgid "Idling..." +msgstr "En espera..." + +msgid "Heat the nozzle" +msgstr "Calentar la boquilla" + +msgid "Cut filament" +msgstr "Cortar filamento" + +msgid "Pull back current filament" +msgstr "Extraer el filamento actual" + +msgid "Push new filament into extruder" +msgstr "Introducir nuevo filamento en el extrusor" + +msgid "Purge old filament" +msgstr "Purgar el filamento viejo" + +msgid "Feed Filament" +msgstr "Cargar Filamento" + +msgid "Confirm extruded" +msgstr "Confirmación de extrusión" + +msgid "Check filament location" +msgstr "Probar localización de filamento" + +msgid "Grab new filament" +msgstr "Cargar nuevo filamento" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Elija una ranura AMS y pulse el botón \"Cargar\" o \"Descargar\" para cargar " +"o descargar automáticamente el filamento." + +msgid "Edit" +msgstr "Editar" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Todos los objetos seleccionados están en la bandeja bloqueada,\n" +"No podemos hacer un auto posicionamiento en estos objetos." + +msgid "No arrangable objects are selected." +msgstr "No se han seleccionado objetos posicionables." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Esta bandeja está bloqueada,\n" +"No podemos hacer auto-posicionamiento en esta bandeja." + +msgid "Arranging..." +msgstr "Organizando..." + +msgid "Arranging" +msgstr "Organizando" + +msgid "Arranging canceled." +msgstr "Organización cancelada." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"El posicionamiento está hecho, pero hay artículos sin empaquetar. Reduzca el " +"espacio y vuelva a intentarlo." + +msgid "Arranging done." +msgstr "Organización terminada." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"El posicionamiento ha fallado. Se han encontrado algunas excepciones al " +"procesar las geometrías de los objetos." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"Organizar ignoró los siguientes objetos que no pueden caber en una sola " +"bandeja:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Todos los objetos seleccionados están en la bandeja bloqueada,\n" +"No podemos hacer auto-orientación en estos objetos." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Esta bandeja está bloqueada,\n" +"No podemos hacer auto-orientación en esta bandeja." + +msgid "Orienting..." +msgstr "Orientando..." + +msgid "Orienting" +msgstr "Orientación" + +msgid "Orienting canceled." +msgstr "Orientación cancelada." + +msgid "Filling" +msgstr "Relleno" + +msgid "Bed filling canceled." +msgstr "Relleno de cama cancelado." + +msgid "Bed filling done." +msgstr "Relleno de cama hecho." + +msgid "Searching for optimal orientation" +msgstr "Buscando una orientación óptima" + +msgid "Orientation search canceled." +msgstr "Búsqueda de orientación cancelada." + +msgid "Orientation found." +msgstr "Orientación encontrada." + +msgid "Logging in" +msgstr "Iniciando sesión" + +msgid "Login failed" +msgstr "Fallo en el inicio de sesión" + +msgid "Please check the printer network connection." +msgstr "Por favor, compruebe la conexión de área local." + +msgid "Abnormal print file data. Please slice again." +msgstr "Datos de archivo de impresión anormales. Vuelva a laminar." + +msgid "Task canceled." +msgstr "Tarea cancelada." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"Se ha agotado el tiempo de carga. Compruebe el estado de la red e inténtelo " +"de nuevo." + +msgid "Cloud service connection failed. Please try again." +msgstr "" +"Ha fallado la conexión con el servicio de la nube. Por favor, inténtelo de " +"nuevo." + +msgid "Print file not found. please slice again." +msgstr "" +"No se ha encontrado el archivo de impresión; por favor, lamine de nuevo." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"El archivo de impresión supera el tamaño máximo permitido (1 GB). Por favor, " +"simplifique el modelo y vuelva a laminarlo" + +msgid "Failed to send the print job. Please try again." +msgstr "Fallo enviando el trabajo de impresión. Por favor inténtelo otra vez." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "" +"No se ha podido cargar el archivo en el ftp. Por favor, inténtelo de nuevo." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Compruebe el estado actual del servidor Bambú haciendo clic en el enlace " +"anterior." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"El tamaño del archivo de impresión es demasiado grande. Ajuste el tamaño del " +"archivo e inténtalo de nuevo." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" +"Archivo de impresión no encontrado; por favor, lamínelo de nuevo y envíelo " +"para imprimir." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"No se ha podido cargar el archivo de impresión a través de FTP. Compruebe el " +"estado de la red e inténtelo de nuevo." + +msgid "Sending print job over LAN" +msgstr "Enviando el trabajo de impresión a través de la LAN" + +msgid "Sending print job through cloud service" +msgstr "Enviando trabajo de impresión a través del servicio en la nube" + +msgid "Print task sending times out." +msgstr "Tarea de envío de impresión fallida." + +msgid "Service Unavailable" +msgstr "Servicio No Disponible" + +msgid "Unknown Error." +msgstr "Error Desconocido." + +msgid "Sending print configuration" +msgstr "Enviando la configuración de impresión" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "" +"Envío exitoso. Se alternará automáticamente a la página del dispositivo en " +"%ss" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "Enviado correctamente. Se cargará la siguiente página en %ss" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "Se necesita insertar una tarjeta SD antes de imprimir vía red local." + +msgid "Sending gcode file over LAN" +msgstr "Enviando el archivo de G-Code vía red local" + +msgid "Sending gcode file to sdcard" +msgstr "Enviando el archivo de G-Code a la tarjeta SD" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Envío exitoso. Cierre la página actual en %s s" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Se necesita insertar una tarjeta SD antes de enviar a la impresora." + +msgid "Importing SLA archive" +msgstr "Importando archivo SLA" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"El SLA importado no contiene ningún perfil. Por favor active algunos " +"perfiles de la impresora primero antes de importar ese archivo SLA." + +msgid "Importing canceled." +msgstr "Importación cancelada." + +msgid "Importing done." +msgstr "Importación realizada." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"El SLA importado no contiene ningún perfil. Los perfiles de SLA actuales " +"serán usados como alternativa." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "No puedes cargar un proyecto SLA con objetos multi-pieza en la cama" + +msgid "Please check your object list before preset changing." +msgstr "Por favor comprueba tu lista de objectos antes de cambiar el perfil." + +msgid "Attention!" +msgstr "¡Atención!" + +msgid "Downloading" +msgstr "Descargando" + +msgid "Download failed" +msgstr "Descarga fallida" + +msgid "Cancelled" +msgstr "Cancelado" + +msgid "Install successfully." +msgstr "Instalación exitosa." + +msgid "Installing" +msgstr "Instalando" + +msgid "Install failed" +msgstr "Instalación fallida" + +msgid "Portions copyright" +msgstr "Porciones del copyright" + +msgid "Copyright" +msgstr "Copyright" + +msgid "License" +msgstr "Licencia" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca está licenciada sobre" + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, versión 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca is Based on Orca Slicer" + +msgid "Libraries" +msgstr "Librerías" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Este software utiliza componentes de código abierto cuyos derechos de autor " +"y otros derechos de propiedad pertenecen a sus respectivos propietarios" + +#, c-format, boost-format +msgid "About %s" +msgstr "Acerca de %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca está basado en BambuStudio, PrusaSlicer, y SuperSlicer." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "" +"BambuStudio está basado originalmente en PrusaSlicer por PrusaResearch." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "" +"PrusaSlicer está originalmente basado en Slic3r de Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r fue creado por Alessandro Ranellucci con la ayuda de muchos otros " +"contribuyentes." + +msgid "Version" +msgstr "Versión" + +msgid "AMS Materials Setting" +msgstr "Ajustes de Materiales AMS" + +msgid "Confirm" +msgstr "Confirmar" + +msgid "Close" +msgstr "Cerrar" + +msgid "Colour" +msgstr "Color" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Boquilla\n" +"Temperatura" + +msgid "max" +msgstr "max" + +msgid "min" +msgstr "min" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "El valor de entrada debe ser mayor que %1% y menor que %2%" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "" +"Ajustes de información de ranura AMS mientras la impresión no tenga soportes" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Factores de Calibración de Dinámicas de Flujo" + +msgid "PA Profile" +msgstr "Perfil de Avance de Presión Lineal" + +msgid "Factor K" +msgstr "Factor K" + +msgid "Factor N" +msgstr "Factor N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "" +"Ajuste de información de ranura Virtual mientras la impresión no sea " +"soportada" + +msgid "Are you sure you want to clear the filament information?" +msgstr "¿Estás seguro que quieres limpiar la información de filamento?" + +msgid "You need to select the material type and color first." +msgstr "Necesitas seleccionar el tipo y el color del material primero." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "Por favor, introduzca un valor válido (K in %.1f~%.1f)" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "Introduzca un valor válido (K en %.1f~%.1f, N en %.1f~%.1f)" + +msgid "Other Color" +msgstr "Otro color" + +msgid "Custom Color" +msgstr "Color Personalizado" + +msgid "Dynamic flow calibration" +msgstr "Calibración de flujo dinámico" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"La temperatura y la velocidad volumétrica máxima de la boquilla afectará a " +"los resultados de calibración. Por favor, rellena los mismos valores de la " +"impresión. Ellos pueden ser auto-rellenados seleccionando un perfil de " +"filamento." + +msgid "Nozzle Diameter" +msgstr "Diámetro" + +msgid "Bed Type" +msgstr "Tipo de Cama" + +msgid "Nozzle temperature" +msgstr "Temperatura de la boquilla" + +msgid "Bed Temperature" +msgstr "Temperatura de Cama" + +msgid "Max volumetric speed" +msgstr "Velocidad volumétrica máxima" + +msgid "℃" +msgstr "℃" + +msgid "Bed temperature" +msgstr "Temperatura de cama" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Iniciar calibración" + +msgid "Next" +msgstr "Siguiente" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Calibración completada. Por favor, observe cual es línea de extrusión más " +"uniforme en su cama caliente, parecida a la imagen de abajo, e inserte el " +"valor en el cuadro de texto de su lado izquierdo, donde dice factor K." + +msgid "Save" +msgstr "Guardar" + +msgid "Last Step" +msgstr "Último Paso" + +msgid "Example" +msgstr "Ejemplo" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Calibrando... %d%%" + +msgid "Calibration completed" +msgstr "Calibración completada" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s no soporta %s" + +msgid "Dynamic flow Calibration" +msgstr "Calibración Dinámica de Flujo" + +msgid "Step" +msgstr "Paso" + +msgid "AMS Slots" +msgstr "Ranuras AMS" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Nota: Solo las ranuras AMS cargadas con el mismo tipo de material se pueden " +"seleccionar." + +msgid "Enable AMS" +msgstr "Activar AMS" + +msgid "Print with filaments in the AMS" +msgstr "Imprimir con filamentos en el AMS" + +msgid "Disable AMS" +msgstr "Desactivar AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Imprimir con el filamento montado en la parte posterior del chasis" + +msgid "Current Cabin humidity" +msgstr "Humedad de cabina actual" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Cambie el desecante cuando esté demasiado húmedo. El indicador puede no ser " +"preciso en los siguientes casos: cuando la tapa está abierta o al paquete de " +"desecante. Este tarda horas en absorber la humedad, y las bajas temperaturas " +"también ralentizan el proceso." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Configurar qué ranura AMS debe utilizarse para un filamento utilizado en el " +"trabajo de impresión." + +msgid "Filament used in this print job" +msgstr "Filamento usado en este trabajo de impresión" + +msgid "AMS slot used for this filament" +msgstr "Ranura AMS usada para este filamento" + +msgid "Click to select AMS slot manually" +msgstr "Presiona para seleccionar la ranura AMS manualmente" + +msgid "Do not Enable AMS" +msgstr "No Activar AMS" + +msgid "Print using materials mounted on the back of the case" +msgstr "" +"Imprimir usando materiales montados en la parte de atrás de la cubierta" + +msgid "Print with filaments in ams" +msgstr "Imprimir usando filamentos en AMS" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Imprimir con filamentos montados en la parte de atrás del chasis" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Cuando se termine el filamento actual, la impresora continuará imprimiendo " +"en el siguiente orden." + +msgid "Group" +msgstr "Agrupar" + +msgid "The printer does not currently support auto refill." +msgstr "La impresora no soporta auto recarga actualmente." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"La copia de seguridad de filamento AMS no está activada, por favor actívela " +"en la configuración AMS." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"Si hay dos filamentos idénticos en AMS, se habilitará la copia de seguridad " +"de filamentos AMS. \n" +"(Actualmente admite el suministro automático de consumibles con la misma " +"marca, tipo de material y color)." + +msgid "DRY" +msgstr "SECO" + +msgid "WET" +msgstr "HÚMEDO" + +msgid "AMS Settings" +msgstr "Ajustes del AMS" + +msgid "Insertion update" +msgstr "Actualización de la inserción" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"El AMS leerá automáticamente la información del filamento al insertar un " +"nuevo filamento de Bambu Lab. Esto tardara unos 20 segundos." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Nota: si se inserta un nuevo filamento durante la impresión, el AMS no leerá " +"automáticamente ninguna información hasta que finalice la impresión." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Al insertar un nuevo filamento, el AMS no leerá automáticamente su " +"información, dejándola en blanco para que usted la introduzca manualmente." + +msgid "Power on update" +msgstr "Actualización al encender" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"El AMS leerá automáticamente la información del filamento insertado al " +"arrancar. Tomará aproximadamente 1 minuto. El proceso de lectura hará rodar " +"las bobinas de filamento." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"El AMS no leerá automáticamente la información del filamento insertado " +"durante el arranque y seguirá utilizando la información registrada antes del " +"último apagado." + +msgid "Update remaining capacity" +msgstr "Actualizar capacidad restante" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"El AMS estimará la capacidad del filamento Bambú restante después de que la " +"información sea actualizada. Durante la impresión, la capacidad restante " +"será actualizada automáticamente." + +msgid "AMS filament backup" +msgstr "Copia de Seguridad del Filamento AMS" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"El AMS continuará con otra bobina con las mismas propiedades de filamento " +"automáticamente cuando el filamento se termine" + +msgid "Air Printing Detection" +msgstr "Detección de Aire en Impresión" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Detecta los atascos y el rascado de filamento, deteniendo la impresión " +"inmediatamente para ahorrar tiempo y filamento." + +msgid "File" +msgstr "Archivo" + +msgid "Calibration" +msgstr "Calibración" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Fallo al descargar el complemento. Por favor, compruebe el cortafuegos y la " +"vpn, e inténtelo de nuevo." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Fallo al instalar el complemento. Por favor, compruebe si ha sido bloqueado " +"o borrado por un antivirus." + +msgid "click here to see more info" +msgstr "presiona aquí para mostrar más información" + +msgid "Please home all axes (click " +msgstr "Por favor, mandar a inicio todos los ejes (presione " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") para localizar la posición del cabezal. Esto previene que el dispositivo " +"se mueva más allá de los limites de impresión y cause desgaste en el equipo." + +msgid "Go Home" +msgstr "Ir al Inicio" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Se ha producido un error. Tal vez la memoria del sistema no es suficiente o " +"es un error del programa" + +msgid "Please save project and restart the program. " +msgstr "Guarde el proyecto y reinicie el programa. " + +msgid "Processing G-Code from Previous file..." +msgstr "Procesando el G-Code del archivo anterior..." + +msgid "Slicing complete" +msgstr "Laminado terminado" + +msgid "Access violation" +msgstr "Violación de acceso" + +msgid "Illegal instruction" +msgstr "Instrucción ilegal" + +msgid "Divide by zero" +msgstr "Dividir entre cero" + +msgid "Overflow" +msgstr "Desbordamiento" + +msgid "Underflow" +msgstr "Sin flujo" + +msgid "Floating reserved operand" +msgstr "Operando reservado flotante" + +msgid "Stack overflow" +msgstr "Desbordamiento de pila" + +msgid "Running post-processing scripts" +msgstr "Ejecutando scripts de post-procesado" + +msgid "Successfully executed post-processing script" +msgstr "Script de post-procesamiento ejecutado correctamente" + +msgid "Unknown error occured during exporting G-code." +msgstr "Se produjo un error desconocido durante la exportación del G-Code." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Error al copiar el G-Code temporal en el G-Code de salida. ¿Quizás la " +"tarjeta SD está protegida contra escritura?\n" +"Mensaje de error: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"La copia del G-Code temporal al G-Code de salida ha fallado. Puede haber un " +"problema con el dispositivo de destino, intenta exportar nuevamente o usa un " +"dispositivo diferente. El G-Code de salida dañado está en %1%.tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"El cambio de nombre del G-Code después de copiar en la carpeta de destino " +"seleccionada ha fallado. La ruta actual es %1%.tmp. Intenta exportar de " +"nuevo." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"La copia del G-Code temporal ha finalizado, pero el código original en %1% " +"no se pudo abrir durante la verificación de copia. El G-Code de salida está " +"en %2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"La copia del G-Code temporal ha finalizado, pero el código exportado no se " +"pudo abrir durante la verificación de la copia. El G-Code de salida está en " +"%1%.tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "Archivo de G-Code exportado a %1%" + +msgid "Unknown error when export G-code." +msgstr "Error desconocido al exportar el G-Code." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Fallo al guardar el archivo G-Code.\n" +"Mensaje de error: %1%.\n" +"Archivo fuente %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Copiado del G-Code temporal al G-Code de salida fallido" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Programación de la carga a %1%. Mire la Ventana -> Cola de Impresión del " +"Anfitrión" + +msgid "Device" +msgstr "Dispositivo" + +msgid "Task Sending" +msgstr "Envío de tareas" + +msgid "Task Sent" +msgstr "Tarea enviada" + +msgid "Edit multiple printers" +msgstr "Editar varias impresoras" + +msgid "Select connected printers (0/6)" +msgstr "Seleccionar impresoras conectadas (0/6)" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "Seleccionar Impresoras Conectadas (%d/6)" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "El número máximo de impresoras que se pueden seleccionar es %d" + +msgid "Offline" +msgstr "Fuera de línea" + +msgid "No task" +msgstr "Sin tareas" + +msgid "View" +msgstr "Vista" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "Editar Impresoras" + +msgid "Device Name" +msgstr "Nombre del dispositivo" + +msgid "Task Name" +msgstr "Nombre de la tarea" + +msgid "Device Status" +msgstr "Estado del dispositivo" + +msgid "Actions" +msgstr "Acciones" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" +"Seleccione aquí los dispositivos que desea gestionar (hasta 6 dispositivos)" + +msgid "Add" +msgstr "Añadir" + +msgid "Idle" +msgstr "Inactivo" + +msgid "Printing" +msgstr "Imprimendo" + +msgid "Upgrading" +msgstr "Actualizando" + +msgid "Incompatible" +msgstr "Incompatible" + +msgid "syncing" +msgstr "Sincronizando" + +msgid "Printing Finish" +msgstr "Impresión Finalizada" + +msgid "Printing Failed" +msgstr "Impresión fallida" + +msgid "Printing Pause" +msgstr "Pausa de Impresión" + +msgid "Prepare" +msgstr "Preparar" + +msgid "Slicing" +msgstr "Laminando" + +msgid "Pending" +msgstr "Pendiente" + +msgid "Sending" +msgstr "Enviando" + +msgid "Sending Finish" +msgstr "Envío Finalizado" + +msgid "Sending Cancel" +msgstr "Envío Cancelado" + +msgid "Sending Failed" +msgstr "Envío fallido" + +msgid "Print Success" +msgstr "Impresión exitosa" + +msgid "Print Failed" +msgstr "Error de impresión" + +msgid "Removed" +msgstr "Eliminado" + +msgid "Resume" +msgstr "Reanudar" + +msgid "Stop" +msgstr "Detener" + +msgid "Task Status" +msgstr "Estado de la tarea" + +msgid "Sent Time" +msgstr "Hora de envío" + +msgid "There are no tasks to be sent!" +msgstr "No hay tareas que enviar." + +msgid "No historical tasks!" +msgstr "Sin tareas históricas" + +msgid "Loading..." +msgstr "Cargando..." + +msgid "No AMS" +msgstr "Sin AMS" + +msgid "Send to Multi-device" +msgstr "Enviar a multidispositivo" + +msgid "Preparing print job" +msgstr "Preparando el trabajo de impresión" + +msgid "Abnormal print file data. Please slice again" +msgstr "Datos anormales del archivo de impresión. Por favor, lamine de nuevo" + +msgid "There is no device available to send printing." +msgstr "No hay ningún dispositivo disponible para enviar impresiones." + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "El número de impresoras en uso simultáneamente no puede ser igual a 0." + +msgid "Use External Spool" +msgstr "Utilizar carrete externo" + +msgid "Use AMS" +msgstr "Usar AMS" + +msgid "Select Printers" +msgstr "Seleccionar impresoras" + +msgid "Ams Status" +msgstr "Estado del AMS" + +msgid "Printing Options" +msgstr "Opciones de impresión" + +msgid "Bed Leveling" +msgstr "Nivelación de la cama" + +msgid "Timelapse" +msgstr "Intervalo" + +msgid "Flow Dynamic Calibration" +msgstr "Calibración Dinámica de Flujo" + +msgid "Send Options" +msgstr "Opciones de envío" + +msgid "Send to" +msgstr "Mandar a" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"impresoras al mismo tiempo.(Depende de cuántos aparatos puedan calentarse al " +"mismo tiempo)." + +msgid "Wait" +msgstr "Espere" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "minuto por tanda. (Depende de lo que tarde en terminar de calentarse)." + +msgid "Send" +msgstr "Enviar" + +msgid "Name is invalid;" +msgstr "El nombre es inválido" + +msgid "illegal characters:" +msgstr "Caracteres no permitidos:" + +msgid "illegal suffix:" +msgstr "sufijo no permitido:" + +msgid "The name is not allowed to be empty." +msgstr "No se permite que el nombre esté vacío." + +msgid "The name is not allowed to start with space character." +msgstr "No se permite que el nombre comience con un espacio." + +msgid "The name is not allowed to end with space character." +msgstr "No se permite que el nombre termine con un espacio." + +msgid "The name length exceeds the limit." +msgstr "La longitud del nombre supera el límite." + +msgid "Origin" +msgstr "Origen" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Tamaño en X e Y de la bandeja rectangular." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" +"Distancia de la coordenada 0,0 del G-Code desde la esquina frontal izquierda " +"del rectángulo." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Diámetro de la cama de impresión. Se supone que el origen (0,0) está ubicado " +"en el centro." + +msgid "Rectangular" +msgstr "Rectangular" + +msgid "Circular" +msgstr "Circular" + +msgid "Load shape from STL..." +msgstr "Cargar forma desde STL..." + +msgid "Settings" +msgstr "Ajustes" + +msgid "Texture" +msgstr "Textura" + +msgid "Remove" +msgstr "Eliminar" + +msgid "Not found:" +msgstr "No encontrado:" + +msgid "Model" +msgstr "Modelo" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Escoge un archivo STL para importar la forma de la cama:" + +msgid "Invalid file format." +msgstr "Formato inválido de archivo." + +msgid "Error! Invalid model" +msgstr "Error! Modelo inválido" + +msgid "The selected file contains no geometry." +msgstr "El archivo seleccionado no contiene geometría." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"El archivo seleccionado contiene varias áreas disjuntas. Esto no es " +"compatible." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "" +"Escoge un archivo para importar la textura de la cama de impresión (PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Escoge un archivo STL para importar el modelo de la cama de impresión:" + +msgid "Bed Shape" +msgstr "Forma de la cama de impresión" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"La temperatura mínima recomendada es inferior a 190 grados o la temperatura " +"máxima recomendada es superior a 300 grados.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"La temperatura mínima recomendada no puede ser superior a la temperatura " +"máxima recomendada.\n" +"\n" + +msgid "Please check.\n" +msgstr "Por favor, compruébelo.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"La boquilla puede bloquearse cuando la temperatura está fuera del rango " +"recomendado.\n" +"Por favor, asegúrese de utilizar la temperatura para imprimir.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"La temperatura recomendada de la boquilla de este tipo de filamento es de " +"[%d, %d] grados centígrados" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Velocidad volumétrica máxima demasiado baja.\n" +"Reajustar a 0.5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"La temperatura actual de la cámara es superior a la temperatura de seguridad " +"del material, puede provocar que el material se ablande y se atasque. La " +"temperatura máxima de seguridad para el material es %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Altura de la capa demasiado pequeña.\n" +"Reajustar a 0,2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Espacio de colocación de la plancha demasiado pequeño.\n" +"Reajustar a 0,1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"La altura de primera capa cero no es válida.\n" +"\n" +"La altura de la primera capa se restablecerá a 0,2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Este ajuste sólo se utiliza para afinar el tamaño del modelo con un valor " +"pequeño en algunos casos.\n" +"Por ejemplo, cuando el tamaño del modelo tiene un pequeño error y es difícil " +"de agrupar.\n" +"Para el ajuste de tamaño grande, por favor utilice la función de escala del " +"modelo.\n" +"\n" +"El valor se restablecerá a 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Una compensación de la pata de elefante demasiado grande no es razonable.\n" +"Si realmente tiene un efecto grave de pata de elefante, por favor, compruebe " +"otros ajustes.\n" +"Por ejemplo, si la temperatura de la cama es demasiado alta.\n" +"\n" +"El valor se restablecerá a 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" +"El perímetro adicional alternativo no funciona bien cuando el grosor de la " +"cubierta vertical se establece en Todos. " + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"¿Cambiar estos ajustes automáticamente?\n" +"Sí - Cambie el grosor de la cubierta vertical a Moderado y active el " +"perímetro adicional alternativo\n" +"No - No utilizar el perímetro adicional alternativo" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"La torre de purga no funciona cuando la altura de la capa adaptable o la " +"altura de la capa de soporte independiente están activadas.\n" +"¿Qué desea mantener?\n" +"SÍ - Mantener la torre de purga\n" +"NO - Mantener la altura de capa adaptable y la altura de capa de soporte " +"independiente" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"La torre de purga no funciona cuando la altura de capa adaptativa está " +"activada.\n" +"¿Qué quieres mantener?\n" +"SÍ - Mantener la torre de purga\n" +"NO - Mantener la altura de capa adaptable" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"La torre de purga no funciona cuando la altura de la capa de soporte " +"independiente está activada.\n" +"¿Qué quieres mantener?\n" +"SÍ - Mantener la torre de purga\n" +"NO - Mantener la altura de la capa de soporte independiente" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Mientras se imprime por objeto, el extrusor puede chocar contra la falda.\n" +"En ese caso, reinicie la capa de falda a 1 para evitarlo." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"seam_slope_start_height debe ser menor que layer_height.\n" +"Reiniciar a 0." + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"El modo espiral sólo funciona cuando los bucles de perímetro son 1, el " +"soporte está desactivado, las capas superiores de cubierta son 0, la " +"cantidad de relleno de baja densidad es 0 y el tipo de timelapse es " +"tradicional." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr "" +"Cuando imprima por objeto, las máquinas con estructura I3 no generará videos " +"timelapse." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"¿Cambiar estos ajustes automáticamente? \n" +"Sí - Cambiar estos ajustes y activar el modo espiral automáticamente\n" +"No - Dejar de usar el modo espiral esta vez" + +msgid "Auto bed leveling" +msgstr "Nivelación de cama automática" + +msgid "Heatbed preheating" +msgstr "Precalentamiento de la cama" + +msgid "Sweeping XY mech mode" +msgstr "Barrido en XY modo mecánico" + +msgid "Changing filament" +msgstr "Cambiando el filamento" + +msgid "M400 pause" +msgstr "Pausa M400" + +msgid "Paused due to filament runout" +msgstr "Pausa por agotamiento del filamento" + +msgid "Heating hotend" +msgstr "Calentando boquilla" + +msgid "Calibrating extrusion" +msgstr "Calibrando la extrusión" + +msgid "Scanning bed surface" +msgstr "Escaneando la superficie de la cama" + +msgid "Inspecting first layer" +msgstr "Inspeccionando la primera capa" + +msgid "Identifying build plate type" +msgstr "Identificando el tipo de bandeja de impresión" + +msgid "Calibrating Micro Lidar" +msgstr "Calibrando Micro Lidar" + +msgid "Homing toolhead" +msgstr "Homing del Cabezal" + +msgid "Cleaning nozzle tip" +msgstr "Limpiando la boquilla" + +msgid "Checking extruder temperature" +msgstr "Comprobando la temperatura del extrusor" + +msgid "Printing was paused by the user" +msgstr "El usuario ha interrumpido la impresión" + +msgid "Pause of front cover falling" +msgstr "Pausa al caer la cubierta frontal" + +msgid "Calibrating the micro lida" +msgstr "Calibrando Micro Lidar" + +msgid "Calibrating extrusion flow" +msgstr "Calibrando el flujo de extrusión" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "" +"Pausado debido a un mal funcionamiento de la temperatura de la boquilla" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "" +"Se ha interrumpido debido a un mal funcionamiento de la temperatura de la " +"cama caliente" + +msgid "Filament unloading" +msgstr "Descarga de filamento" + +msgid "Skip step pause" +msgstr "Saltar paso pausa" + +msgid "Filament loading" +msgstr "Carga de filamento" + +msgid "Motor noise calibration" +msgstr "Calibración de ruido de motor" + +msgid "Paused due to AMS lost" +msgstr "Se ha pausado por la pérdida del AMS" + +msgid "Paused due to low speed of the heat break fan" +msgstr "" +"En pausa debido a la baja velocidad del ventilador de disipación de calor" + +msgid "Paused due to chamber temperature control error" +msgstr "Pausado debido a un error en el control de temperatura de cámara" + +msgid "Cooling chamber" +msgstr "Cámara de ventilación" + +msgid "Paused by the Gcode inserted by user" +msgstr "Pausado debido a un G-Code de usuario" + +msgid "Motor noise showoff" +msgstr "Ruido notable del motor" + +msgid "Nozzle filament covered detected pause" +msgstr "Pausa de detección de filamento de boquilla cubierta" + +msgid "Cutter error pause" +msgstr "Pausa de error de cortador" + +msgid "First layer error pause" +msgstr "Pausa de error de primera capa" + +msgid "Nozzle clog pause" +msgstr "Pausa de obstrucción de boquilla" + +msgid "Unknown" +msgstr "Desconocido" + +msgid "Fatal" +msgstr "Fatal" + +msgid "Serious" +msgstr "En serio" + +msgid "Common" +msgstr "Común" + +msgid "Update successful." +msgstr "Actualización exitosa." + +msgid "Downloading failed." +msgstr "La descarga ha fallado." + +msgid "Verification failed." +msgstr "Verificación fallida." + +msgid "Update failed." +msgstr "Actualización fallida." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"La temperatura actual de la cámara o la temperatura objetivo de la cámara " +"excede en 45℃. Para evitar la obstrucción del extrusor,no se permite cargar " +"filamento de baja temperatura(PLA/PETG/TPU)." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"El filamento de baja temperatura (PLA/PETG/TPU) se carga en el extrusor y, " +"para evitar que se atasque, no se permite ajustar la temperatura de la " +"cámara por encima de 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Cuando usted fija la temperatura de la cámara debajo de 40℃, el control de " +"la temperatura de la cámara no será activado. Y la temperatura objetivo de " +"la cámara se ajustará automáticamente a 0℃." + +msgid "Failed to start printing job" +msgstr "Fallo iniciando el trabajo de impresión" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" +"Esta calibración no es compatible con el diámetro de boquilla seleccionado " +"actualmente" + +msgid "Current flowrate cali param is invalid" +msgstr "El parámetro de flujo actual no es válido" + +msgid "Selected diameter and machine diameter do not match" +msgstr "El diámetro seleccionado y el diámetro de la máquina no coinciden" + +msgid "Failed to generate cali gcode" +msgstr "Fallo al generar el G-Code cali" + +msgid "Calibration error" +msgstr "Error de calibración" + +msgid "TPU is not supported by AMS." +msgstr "TPU no soportado por el AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF no soportado por el AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"El PVA húmedo se hará más flexible y se atascará dentro del AMS, por favor, " +"tenga cuidado de secarlo antes de usar." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"Los filamentos CF/GF son duros y quebradizos. Es fácil romperlos o crear " +"atascos en el AMS, por favor úselos con precaución." + +msgid "default" +msgstr "por defecto" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Editar G-Code personalizado (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" +"Marcadores de posición incorporados (haga doble clic en el elemento para " +"añadirlo al G-Code)" + +msgid "Search gcode placeholders" +msgstr "Buscar marcadores de posición G-Code" + +msgid "Add selected placeholder to G-code" +msgstr "Añadir el marcador de posición seleccionado al G-Code" + +msgid "Select placeholder" +msgstr "Seleccionar marcador de posición" + +msgid "[Global] Slicing State" +msgstr "Estado del Laminado [Global]" + +msgid "Read Only" +msgstr "Sólo lectura" + +msgid "Read Write" +msgstr "Lectura Escritura" + +msgid "Slicing State" +msgstr "Estado del Laminado" + +msgid "Print Statistics" +msgstr "Estadísticas de impresión" + +msgid "Objects Info" +msgstr "Información de Objetos" + +msgid "Dimensions" +msgstr "Dimensiones" + +msgid "Temperatures" +msgstr "Temperaturas" + +msgid "Timestamps" +msgstr "Marcas de tiempo" + +#, boost-format +msgid "Specific for %1%" +msgstr "Específico para %1%" + +msgid "Presets" +msgstr "Perfiles" + +msgid "Print settings" +msgstr "Configuración de impresión" + +msgid "Filament settings" +msgstr "Ajustes del filamento" + +msgid "SLA Materials settings" +msgstr "SLA Configuración de los Materiales" + +msgid "Printer settings" +msgstr "Ajustes de la impresora" + +msgid "parameter name" +msgstr "nombre del parámetro" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s no puede ser un porcentaje" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "El valor %s está fuera de rango, ¿continuar?" + +msgid "Parameter validation" +msgstr "Validación de parámetros" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "El valor %s está fuera de rango. El rango válido es de %d a %d." + +msgid "Value is out of range." +msgstr "El valor está fuera de rango." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"¿Es %s%% o %s %s?\n" +"SÍ para %s%%, \n" +"NO para %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Formato de entrada no válido. Se espera un vector de dimensiones con el " +"siguiente formato: \"%1%\"" + +msgid "Input value is out of range" +msgstr "Valor de entrada fuera de rango" + +msgid "Some extension in the input is invalid" +msgstr "Alguna extensión de la entrada no es válida" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Formato inválido. Formato de vector esperado: \"%1%\"" + +msgid "Layer Height" +msgstr "Altura de la capa" + +msgid "Line Width" +msgstr "Ancho de extrusión" + +msgid "Fan Speed" +msgstr "Velocidad del ventilador" + +msgid "Temperature" +msgstr "Temperatura" + +msgid "Flow" +msgstr "Flujo" + +msgid "Tool" +msgstr "Herramienta" + +msgid "Layer Time" +msgstr "Tiempo de capa" + +msgid "Layer Time (log)" +msgstr "Tiempo de capa (log)" + +msgid "Height: " +msgstr "Altura: " + +msgid "Width: " +msgstr "Anchura: " + +msgid "Speed: " +msgstr "Velocidad: " + +msgid "Flow: " +msgstr "Flujo: " + +msgid "Layer Time: " +msgstr "Tiempo de Capa: " + +msgid "Fan: " +msgstr "Velocidad del Ventilador: " + +msgid "Temperature: " +msgstr "Temperatura: " + +msgid "Loading G-codes" +msgstr "Carga de G-Codes" + +msgid "Generating geometry vertex data" +msgstr "Generación de datos de vértices de la geometría" + +msgid "Generating geometry index data" +msgstr "Generación de datos de índices geométricos" + +msgid "Statistics of All Plates" +msgstr "Estadísticas de todas las Bandejas" + +msgid "Display" +msgstr "Pantalla" + +msgid "Flushed" +msgstr "Descargado" + +msgid "Tower" +msgstr "Torre" + +msgid "Total" +msgstr "Total" + +msgid "Total Estimation" +msgstr "Estimación total" + +msgid "Total time" +msgstr "Tiempo total" + +msgid "Total cost" +msgstr "Costo total" + +msgid "up to" +msgstr "hasta" + +msgid "above" +msgstr "sobre" + +msgid "from" +msgstr "desde" + +msgid "Color Scheme" +msgstr "Esquema de colores" + +msgid "Time" +msgstr "Tiempo" + +msgid "Percent" +msgstr "Porcentaje" + +msgid "Used filament" +msgstr "Filamento usado" + +msgid "Layer Height (mm)" +msgstr "Altura de la capa (mm)" + +msgid "Line Width (mm)" +msgstr "Ancho de extrusión (mm)" + +msgid "Speed (mm/s)" +msgstr "Velocidad (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Velocidad Ventilador (%)" + +msgid "Temperature (°C)" +msgstr "Temperatura (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Tasa de flujo volumétrico (mm³/seg)" + +msgid "Travel" +msgstr "Recorrido" + +msgid "Seams" +msgstr "Costuras" + +msgid "Retract" +msgstr "Plegar" + +msgid "Unretract" +msgstr "Desplegar" + +msgid "Filament Changes" +msgstr "Cambios de filamento" + +msgid "Wipe" +msgstr "Limpiar" + +msgid "Options" +msgstr "Opciones" + +msgid "travel" +msgstr "recorrido" + +msgid "Extruder" +msgstr "Extrusor" + +msgid "Filament change times" +msgstr "Tiempos de cambio de filamento" + +msgid "Cost" +msgstr "Coste" + +msgid "Color change" +msgstr "Cambio de color" + +msgid "Print" +msgstr "Imprimir" + +msgid "Printer" +msgstr "Impresora" + +msgid "Custom g-code" +msgstr "G-Code personalizado" + +msgid "ToolChange" +msgstr "Cambio de Herramienta" + +msgid "Time Estimation" +msgstr "Tiempo Estimado" + +msgid "Normal mode" +msgstr "Modo normal" + +msgid "Total Filament" +msgstr "Filamento total" + +msgid "Model Filament" +msgstr "Modelo Filamento" + +msgid "Prepare time" +msgstr "Tiempo estimado" + +msgid "Model printing time" +msgstr "Tiempo de impresión del modelo" + +msgid "Switch to silent mode" +msgstr "Cambiar al modo silencioso" + +msgid "Switch to normal mode" +msgstr "Cambiar al modo normal" + +msgid "Variable layer height" +msgstr "Altura de capa variable" + +msgid "Adaptive" +msgstr "Adaptativo" + +msgid "Quality / Speed" +msgstr "Calidad / Velocidad" + +msgid "Smooth" +msgstr "Suave" + +msgid "Radius" +msgstr "Radio" + +msgid "Keep min" +msgstr "Mantener el mínimo" + +msgid "Left mouse button:" +msgstr "Botón izquierdo del ratón:" + +msgid "Add detail" +msgstr "Añadir detalle" + +msgid "Right mouse button:" +msgstr "Botón derecho del ratón:" + +msgid "Remove detail" +msgstr "Borrar detalle" + +msgid "Shift + Left mouse button:" +msgstr "Shift + botón izquierdo del ratón:" + +msgid "Reset to base" +msgstr "Volver a la base" + +msgid "Shift + Right mouse button:" +msgstr "Shift + Botón derecho del ratón:" + +msgid "Smoothing" +msgstr "Suavidad" + +msgid "Mouse wheel:" +msgstr "Rueda del ratón:" + +msgid "Increase/decrease edit area" +msgstr "Incrementar/disminuir el área de edición" + +msgid "Sequence" +msgstr "Secuencia" + +msgid "Mirror Object" +msgstr "Espejar Objeto" + +msgid "Tool Move" +msgstr "Herramienta Mover" + +msgid "Tool Rotate" +msgstr "Herramienta Rotar" + +msgid "Move Object" +msgstr "Mover Objeto" + +msgid "Auto Orientation options" +msgstr "Opciones de orientación automática" + +msgid "Enable rotation" +msgstr "Activar la rotación" + +msgid "Optimize support interface area" +msgstr "Optimizar el área de la interfaz de soporte" + +msgid "Orient" +msgstr "Orientar" + +msgid "Arrange options" +msgstr "Opciones de Organización" + +msgid "Spacing" +msgstr "Separación" + +msgid "0 means auto spacing." +msgstr "0 significa auto separación." + +msgid "Auto rotate for arrangement" +msgstr "Rotación automática para el posicionamiento" + +msgid "Allow multiple materials on same plate" +msgstr "Permitir varios materiales en la misma bandeja" + +msgid "Avoid extrusion calibration region" +msgstr "Evitar la zona de calibración del extrusor" + +msgid "Align to Y axis" +msgstr "Alinear con el eje Y" + +msgid "Add plate" +msgstr "Añadir bandeja" + +msgid "Auto orient" +msgstr "Orientar automáticamente" + +msgid "Arrange all objects" +msgstr "Ordenar todos los objetos" + +msgid "Arrange objects on selected plates" +msgstr "Colocar los objetos en las bandejas seleccionadas" + +msgid "Split to objects" +msgstr "Separar en objetos" + +msgid "Split to parts" +msgstr "Separar en piezas" + +msgid "Assembly View" +msgstr "Vista de Emsamblado" + +msgid "Select Plate" +msgstr "Seleccione la Bandeja" + +msgid "Assembly Return" +msgstr "Volver a agrupar" + +msgid "return" +msgstr "volver" + +msgid "Paint Toolbar" +msgstr "Barra de herramientas de pintura" + +msgid "Explosion Ratio" +msgstr "Ratio de Explosión" + +msgid "Section View" +msgstr "Vista de Sección" + +msgid "Assemble Control" +msgstr "Control de Ensamblado" + +msgid "Total Volume:" +msgstr "Volumen total:" + +msgid "Assembly Info" +msgstr "Información de Ensamblado" + +msgid "Volume:" +msgstr "Volumen:" + +msgid "Size:" +msgstr "Tamaño:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"Se han encontrado conflictos de rutas G-Code en la capa %d, z = %.2lf mm. " +"Por favor, separe más los objetos en conflicto (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "Un objeto está sobre el límite de la bandeja." + +msgid "A G-code path goes beyond the max print height." +msgstr "Una ruta de G-Code supera la altura máxima de impresión." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Una ruta de G-Code supera el límite de la bandeja." + +msgid "Only the object being edit is visible." +msgstr "Sólo es visible el objeto que se está editando." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Un objeto está colocado en el límite de la bandeja o excede el límite de " +"altura.\n" +"Por favor solucione el problema moviéndolo totalmente fuera o dentro de la " +"bandeja, y confirme que la altura está entre el volumen de construcción." + +msgid "Calibration step selection" +msgstr "Seleccionar paso de calibración" + +msgid "Micro lidar calibration" +msgstr "Calibración Micro Lidar" + +msgid "Bed leveling" +msgstr "Nivelación de Cama" + +msgid "Vibration compensation" +msgstr "Compensación de Vibraciones" + +msgid "Motor noise cancellation" +msgstr "Cancelación de Ruido de Motor" + +msgid "Calibration program" +msgstr "Programa de calibración" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"El programa de calibración detecta el estado de su dispositivo " +"automáticamente para minimizar la desviación.\n" +"Mantiene el dispositivo con un rendimiento óptimo." + +msgid "Calibration Flow" +msgstr "Calibración del Flujo" + +msgid "Start Calibration" +msgstr "Iniciar Calibración" + +msgid "Completed" +msgstr "Completado" + +msgid "Calibrating" +msgstr "Calibrando" + +msgid "No step selected" +msgstr "No se ha seleccionado paso" + +msgid "Auto-record Monitoring" +msgstr "Monitorización de Auto-Grabado" + +msgid "Go Live" +msgstr "Ir A En Vivo" + +msgid "Liveview Retry" +msgstr "Reintentar Video en Vivo" + +msgid "Resolution" +msgstr "Resolución" + +msgid "Enable" +msgstr "Habilitar" + +msgid "Hostname or IP" +msgstr "Nombre de Host o IP" + +msgid "Custom camera source" +msgstr "Fuente de cámara personalizada" + +msgid "Show \"Live Video\" guide page." +msgstr "Mostrar guía de \"Video En vivo\"." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Conectar Impresora (LAN)" + +msgid "Please input the printer access code:" +msgstr "Por favor, introduzca el código de acceso a la impresora:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Puede encontrarse en \"Configuración > Red > Código de conexión\"\n" +"en la impresora, como se muestra en la figura:" + +msgid "Invalid input." +msgstr "Introducción inválida." + +msgid "New Window" +msgstr "Nueva Ventana" + +msgid "Open a new window" +msgstr "Abrir nueva ventana" + +msgid "Application is closing" +msgstr "La aplicación se está cerrando" + +msgid "Closing Application while some presets are modified." +msgstr "Cerrando la aplicación mientras se modifican algunos perfiles." + +msgid "Logging" +msgstr "Registrando" + +msgid "Preview" +msgstr "Previsualización" + +msgid "Multi-device" +msgstr "Multi-dispositivo" + +msgid "Project" +msgstr "Proyecto" + +msgid "Yes" +msgstr "Sí" + +msgid "No" +msgstr "No" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "se cerrará antes de crear un nuevo modelo. ¿Quiere continuar?" + +msgid "Slice plate" +msgstr "Laminar bandeja" + +msgid "Print plate" +msgstr "Imprimir bandeja" + +msgid "Slice all" +msgstr "Laminar todo" + +msgid "Export G-code file" +msgstr "Exportar archivo G-Code" + +msgid "Export plate sliced file" +msgstr "Explorar archivo laminado" + +msgid "Export all sliced file" +msgstr "Exportar todos los archivos laminados" + +msgid "Print all" +msgstr "Imprimir todo" + +msgid "Send all" +msgstr "Mandar todo" + +msgid "Keyboard Shortcuts" +msgstr "Atajos de teclado" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Mostrar la lista de los atajos de teclado" + +msgid "Setup Wizard" +msgstr "Asistente de Configuración" + +msgid "Show Configuration Folder" +msgstr "Mostrar Carpeta de Configuración" + +msgid "Show Tip of the Day" +msgstr "Mostrar Consejo Diario" + +msgid "Check for Update" +msgstr "Comprobar Actualizaciones" + +msgid "Open Network Test" +msgstr "Abrir Test de Red" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&Acerca de %s" + +msgid "Upload Models" +msgstr "Cargar Modelos" + +msgid "Download Models" +msgstr "Descargar Modelos" + +msgid "Default View" +msgstr "Vista por Defecto" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Superior" + +msgid "Top View" +msgstr "Vista superior" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Inferior" + +msgid "Bottom View" +msgstr "Vista inferior" + +msgid "Front" +msgstr "Frontal" + +msgid "Front View" +msgstr "Vista frontal" + +msgid "Rear" +msgstr "Trasera" + +msgid "Rear View" +msgstr "Vista trasera" + +msgid "Left" +msgstr "Izquierda" + +msgid "Left View" +msgstr "Vista izquierda" + +msgid "Right" +msgstr "Derecha" + +msgid "Right View" +msgstr "Vista derecha" + +msgid "Start a new window" +msgstr "Abrir nueva ventana" + +msgid "New Project" +msgstr "Nuevo proyecto" + +msgid "Start a new project" +msgstr "Empezar un nuevo proyecto" + +msgid "Open a project file" +msgstr "Abrir un archivo de proyecto" + +msgid "Recent projects" +msgstr "Proyectos recientes" + +msgid "Save Project" +msgstr "Guardar proyecto" + +msgid "Save current project to file" +msgstr "Guardar el proyecto actual en un archivo" + +msgid "Save Project as" +msgstr "Guardar proyecto como" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Guardar el proyecto actual como" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Importar 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Cargar un modelo" + +msgid "Import Zip Archive" +msgstr "Importar archivo Zip" + +msgid "Load models contained within a zip archive" +msgstr "Cargar modelos contenidos en un archivo zip" + +msgid "Import Configs" +msgstr "Importar configuraciones" + +msgid "Load configs" +msgstr "Cargar configuraciones" + +msgid "Import" +msgstr "Importar" + +msgid "Export all objects as one STL" +msgstr "Exportar todos los objetos como un único STL" + +msgid "Export all objects as STLs" +msgstr "Exportar todos los objetos como varios STL" + +msgid "Export Generic 3MF" +msgstr "Exportar 3MF genérico" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Exporte el archivo 3mf sin usar algunas de las extensiones" + +msgid "Export current sliced file" +msgstr "Exportar archivo laminado actual" + +msgid "Export all plate sliced file" +msgstr "Exportar todo el archivo de bandeja laminada" + +msgid "Export G-code" +msgstr "Exportar G-Code" + +msgid "Export current plate as G-code" +msgstr "Exportar bandeja actual cómo G-Code" + +msgid "Export Preset Bundle" +msgstr "Exportar Paquete de Perfiles" + +msgid "Export current configuration to files" +msgstr "Exportar configuración actual a archivos" + +msgid "Export" +msgstr "Exportar" + +msgid "Quit" +msgstr "Salir del programa" + +msgid "Undo" +msgstr "Deshacer" + +msgid "Redo" +msgstr "Rehacer" + +msgid "Cut selection to clipboard" +msgstr "Cortar selección al portapapeles" + +msgid "Copy" +msgstr "Copiar" + +msgid "Copy selection to clipboard" +msgstr "Copiar selección al portapapeles" + +msgid "Paste" +msgstr "Pegar" + +msgid "Paste clipboard" +msgstr "Pegar portapapeles" + +msgid "Delete selected" +msgstr "Eliminar selección" + +msgid "Deletes the current selection" +msgstr "Borrar la selección actual" + +msgid "Delete all" +msgstr "Eliminar todo" + +msgid "Deletes all objects" +msgstr "Borra todos los objetos" + +msgid "Clone selected" +msgstr "Clon seleccionado" + +msgid "Clone copies of selections" +msgstr "Clonar copias de selecciones" + +msgid "Select all" +msgstr "Seleccionar Todo" + +msgid "Selects all objects" +msgstr "Seleccionar todos los objetos" + +msgid "Deselect all" +msgstr "Deseleccionar todo" + +msgid "Deselects all objects" +msgstr "Deseleccionar todos los objetos" + +msgid "Use Perspective View" +msgstr "Utilizar Vista en Perspectiva" + +msgid "Use Orthogonal View" +msgstr "Utilizar Vista Octogonal" + +msgid "Show &G-code Window" +msgstr "Mostrar Ventana &G-Code" + +msgid "Show g-code window in Previce scene" +msgstr "Mostrar ventana de G-Code en escena previa" + +msgid "Show 3D Navigator" +msgstr "Mostrar Navegador 3D" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "Mostrar navegador 3D en escena Preparar y Vista previa" + +msgid "Reset Window Layout" +msgstr "Reiniciar Diseño de Ventana" + +msgid "Reset to default window layout" +msgstr "Restablecer el diseño de ventana por defecto" + +msgid "Show &Labels" +msgstr "Mostrar Etiquetas(&L)" + +msgid "Show object labels in 3D scene" +msgstr "Mostrar etiquetas en escena 3D" + +msgid "Show &Overhang" +msgstr "Mostrar Voladizo (&O)" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Mostrar resalte de voladizos de objeto en escena 3D" + +msgid "Preferences" +msgstr "Preferencias" + +msgid "Help" +msgstr "Ayuda" + +msgid "Temperature Calibration" +msgstr "Calibración de Temperatura" + +msgid "Pass 1" +msgstr "Paso 1" + +msgid "Flow rate test - Pass 1" +msgstr "Test de Flujo - Paso 1" + +msgid "Pass 2" +msgstr "Paso 2" + +msgid "Flow rate test - Pass 2" +msgstr "Test de Flujo - Paso 2" + +msgid "Flow rate" +msgstr "Test de Flujo" + +msgid "Pressure advance" +msgstr "Avance de Presión Lineal" + +msgid "Retraction test" +msgstr "Test de Retracciones" + +msgid "Orca Tolerance Test" +msgstr "Test de Tolerancia Orca" + +msgid "Max flowrate" +msgstr "Test de Flujo Máximo" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Más..." + +msgid "Tutorial" +msgstr "Tutorial" + +msgid "Calibration help" +msgstr "Ayuda de calibración" + +msgid "More calibrations" +msgstr "Más calibraciones" + +msgid "&Open G-code" +msgstr "Abrir G-Code (&O)" + +msgid "Open a G-code file" +msgstr "Abrir un archivo G-Code" + +msgid "Re&load from Disk" +msgstr "Recargar desde el Disco(&L)" + +msgid "Reload the plater from disk" +msgstr "Cargar la base del disco" + +msgid "Export &Toolpaths as OBJ" +msgstr "Exportar Movimientos como OBJ (&T)" + +msgid "Export toolpaths as OBJ" +msgstr "Exportar trayectorias de herramientas como OBJ" + +msgid "Open &Slicer" +msgstr "Abrir &Laminador" + +msgid "Open Slicer" +msgstr "Abrir Laminador" + +msgid "&Quit" +msgstr "Salir (&Q)" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Salir %s" + +msgid "&File" +msgstr "Archivo(&F)" + +msgid "&View" +msgstr "&Ver" + +msgid "&Help" +msgstr "Ayuda (&H)" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "Existe un archivo con el mismo nombre: %s, ¿desea sobreescribirlo?." + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "" +"Existe una configuración con el mismo nombre: %s, ¿desea sobreescribirla?." + +msgid "Overwrite file" +msgstr "Sobrescribir archivo" + +msgid "Yes to All" +msgstr "Sí a todo" + +msgid "No to All" +msgstr "No a todo" + +msgid "Choose a directory" +msgstr "Elegir un directorio" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +"Hay %d configuración exportada. (solo configuraciones que no sean del " +"sistema)" +msgstr[1] "" +"Hay %d configuraciones exportadas. (solo configuraciones que no sean del " +"sistema)" + +msgid "Export result" +msgstr "Exportar resultado" + +msgid "Select profile to load:" +msgstr "Seleccionar perfil a cargar:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +"Hay %d configuración exportada. (solo configuraciones que no sean del " +"sistema y compatibles)" +msgstr[1] "" +"Hay %d configuraciones importadas. (Solo las configuraciones compatibles y " +"no-del-sistema)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"Sugerencia: Asegúrese de haber añadido la impresora correspondiente antes de " +"importar las configuraciones." + +msgid "Import result" +msgstr "Importar resultado" + +msgid "File is missing" +msgstr "Falta el archivo" + +msgid "The project is no longer available." +msgstr "El proyecto ya no está disponible." + +msgid "Filament Settings" +msgstr "Configuración de Filamento" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"¿Quiere sincronizar sus datos personales desde Bambú Cloud? \n" +"Esta contiene la siguiente información:\n" +"1. Los Perfiles de Proceso\n" +"2. Los Perfiles de Filamento\n" +"3. Los Perfiles de la Impresora" + +msgid "Synchronization" +msgstr "Sincronización" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" +"El dispositivo no puede gestionar más conversaciones. Inténtelo más tarde." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" +"El reproductor no funciona correctamente. Vuelva a instalar el reproductor " +"del sistema." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"El reproductor no se carga; haga clic en el botón \"reproducir\" para volver " +"a intentarlo." + +msgid "Please confirm if the printer is connected." +msgstr "Confirme si la impresora está conectada." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"La impresora está actualmente ocupada descargando. Inténtelo de nuevo cuando " +"finalice." + +msgid "Printer camera is malfunctioning." +msgstr "La cámara de la impresora funciona mal." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Se ha producido un problema. Actualice el firmware de la impresora e " +"inténtelo de nuevo." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"Sólo ver Video en Directo vía LAN está apagado. Por favor, encienda el video " +"en directo en la pantalla de la impresora." + +msgid "Please enter the IP of printer to connect." +msgstr "Por favor, introduzca la IP de la impresora a conectar." + +msgid "Initializing..." +msgstr "Iniciando..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "Conexión fallida. Compruebe la red e inténtelo de nuevo" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Compruebe la red e inténtelo de nuevo. Puede reiniciar o actualizar la " +"impresora si el problema persiste." + +msgid "The printer has been logged out and cannot connect." +msgstr "La impresora se ha desconectado y no puede conectarse." + +msgid "Stopped." +msgstr "Detenido." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "Fallo de Conexión de Red Local (Fallo al iniciar vista en directo)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Virtual Camera Tools es necesario para esta tarea.\n" +"¿Desea instalarlas?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Descargando Herramientas de Cámara Virtual" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Otra cámara virtual se está ejecutando.\n" +"Snapmaker Orca solo soporta una cámara virtual.\n" +"¿Desea detener esta cámara virtual?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Inicialización de cámara virtual (%s)" + +msgid "Network unreachable" +msgstr "Red no disponible" + +msgid "Information" +msgstr "Información" + +msgid "Playing..." +msgstr "Reproduciendo..." + +msgid "Year" +msgstr "Año" + +msgid "Month" +msgstr "Mes" + +msgid "All Files" +msgstr "Todos los Archivos" + +msgid "Group files by year, recent first." +msgstr "Agrupar archivos por año, primero los recientes." + +msgid "Group files by month, recent first." +msgstr "Agrupar archivos por mes, primero los recientes." + +msgid "Show all files, recent first." +msgstr "Mostrar todos los archivos, primero los recientes." + +msgid "Switch to timelapse files." +msgstr "Cambiar a archivos de timelapse." + +msgid "Video" +msgstr "Video" + +msgid "Switch to video files." +msgstr "Cambiar a archivos de video." + +msgid "Switch to 3mf model files." +msgstr "Cambiar a archivos de modelos 3mf." + +msgid "Delete selected files from printer." +msgstr "Borrar archivos seleccionados desde la impresora." + +msgid "Download" +msgstr "Descargar" + +msgid "Download selected files from printer." +msgstr "Descargar achivos seleccionados desde la impresora." + +msgid "Select" +msgstr "Seleccionar" + +msgid "Batch manage files." +msgstr "Arhivos de proceso por lotes." + +msgid "Refresh" +msgstr "Actualizar" + +msgid "Reload file list from printer." +msgstr "Recarga la lista de archivos desde la impresora." + +msgid "No printers." +msgstr "No hay impresoras." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Error de conexión [%d]!" + +msgid "Loading file list..." +msgstr "Cargando lista de archivos..." + +msgid "No files" +msgstr "No hay archivos" + +msgid "Load failed" +msgstr "Carga fallida" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Error de inicialización (conexión del dispositivo no preparada)." + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"La búsqueda de archivos en la tarjeta SD no es compatible con el firmware " +"actual. Actualice el firmware de la impresora." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" +"Error de inicialización (almacenamiento no disponible, inserte una tarjeta " +"SD)." + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "Conexión LAN fallida (no se encuentra la tarjeta SD)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "" +"La búsqueda de archivos en la tarjeta SD no es posible en el modo Sólo LAN." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "¡Fallo al inicializar (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "Va a borrar el archivo %u de la impresora. ¿Estás seguro?" +msgstr[1] "Va a borrar los archivos %u de la impresora. ¿Estás seguro?" + +msgid "Delete files" +msgstr "Borrar archivos" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "¿Desea eliminar el fichero '%s' de la impresora?" + +msgid "Delete file" +msgstr "Borrar archivo" + +msgid "Fetching model infomations ..." +msgstr "Obteniendo información sobre el modelo ..." + +msgid "Failed to fetch model information from printer." +msgstr "No se pudo recuperar la información del modelo de la impresora." + +msgid "Failed to parse model information." +msgstr "No se pudo analizar la información del modelo." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +"El archivo .gcode. 3mf no contiene datos de G-Code. Por favor, lamine con " +"Snapmaker Orca y exporte un nuevo archivo .gcode.3mf." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "¡El archivo '%s' se perdió!\" Por favor, vuelva a descargárselo." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"File: %s\n" +"Title: %s\n" + +msgid "Download waiting..." +msgstr "Descarga esperando..." + +msgid "Play" +msgstr "Reproducir" + +msgid "Open Folder" +msgstr "Abrir Carpeta" + +msgid "Download finished" +msgstr "Descarga finalizada" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Descargando %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Al volver a conectar la impresora, la operación no puede completarse " +"inmediatamente, inténtelo de nuevo más tarde." + +msgid "File does not exist." +msgstr "El archivo no existe." + +msgid "File checksum error. Please retry." +msgstr "Checksum de archivo erróneo. Por favor, reinténtelo." + +msgid "Not supported on the current printer version." +msgstr "No soportado en la actual versión de la impresora." + +msgid "Storage unavailable, insert SD card." +msgstr "Almacenamiento no disponible, inserte la tarjeta SD." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Código de error: %d" + +msgid "Speed:" +msgstr "Velocidad:" + +msgid "Deadzone:" +msgstr "Punto muerto:" + +msgid "Options:" +msgstr "Opciones:" + +msgid "Zoom" +msgstr "Zoom" + +msgid "Translation/Zoom" +msgstr "Conversión/Zoom" + +msgid "3Dconnexion settings" +msgstr "Ajustes de conexión 3D" + +msgid "Swap Y/Z axes" +msgstr "Intercambiar los ejes Y/Z" + +msgid "Invert X axis" +msgstr "Invertir eje X" + +msgid "Invert Y axis" +msgstr "Invertir eje Y" + +msgid "Invert Z axis" +msgstr "Invertir eje Z" + +msgid "Invert Yaw axis" +msgstr "Invertir eje de Guiñada" + +msgid "Invert Pitch axis" +msgstr "Invertir eje de Cabeceo" + +msgid "Invert Roll axis" +msgstr "Invertir eje de Balanceo" + +msgid "Printing Progress" +msgstr "Progreso de impresión" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Capa: N/A" + +msgid "Clear" +msgstr "Vaciar" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"Ha finalizado la impresión del modelo de centro comercial, \n" +"pero la sincronización de la información de valoración ha fallado." + +msgid "How do you like this printing file?" +msgstr "¿Cómo le parece este archivo de impresión?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"(El modelo ya ha sido valorado. Su valoración sobrescribirá la valoración " +"anterior.)" + +msgid "Rate" +msgstr "Valorar" + +msgid "Camera" +msgstr "Cámara" + +msgid "SD Card" +msgstr "Tarjeta SD" + +msgid "Camera Setting" +msgstr "Ajuste de Cámara" + +msgid "Switch Camera View" +msgstr "Cambiar vista de cámara" + +msgid "Control" +msgstr "Control" + +msgid "Printer Parts" +msgstr "Partes de la Impresora" + +msgid "Print Options" +msgstr "Opciones de Impresora" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Luz" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Costura" + +msgid "Bed" +msgstr "Cama" + +msgid "Debug Info" +msgstr "Información de Depuración" + +msgid "No SD Card" +msgstr "Sin tarjeta SD" + +msgid "SD Card Abnormal" +msgstr "Tarjeta SD Anormal" + +msgid "Cancel print" +msgstr "Cancelar Impresión" + +msgid "Are you sure you want to cancel this print?" +msgstr "¿Está seguro que desea cancelar esta impresión?" + +msgid "Downloading..." +msgstr "Descargando…" + +msgid "Cloud Slicing..." +msgstr "Laminado en la Nube..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "Hay %s tareas por delante, en la Cola de Laminado en la Nube." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Capa: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Capa: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Por favor, caliente la boquilla por encima de 170 grados antes de cargar o " +"descargar filamento." + +msgid "Still unload" +msgstr "Aún descargado" + +msgid "Still load" +msgstr "Aún cargado" + +msgid "Please select an AMS slot before calibration" +msgstr "Seleccione una ranura AMS antes de la calibración" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"No se puede leer la información del filamento: el filamento está cargado en " +"el cabezal de la herramienta, por favor, descargue el filamento y vuelva a " +"intentarlo." + +msgid "This only takes effect during printing" +msgstr "Esto solo tendrá efecto durante la impresión" + +msgid "Silent" +msgstr "Silencio" + +msgid "Standard" +msgstr "Estándar" + +msgid "Sport" +msgstr "Deportivo" + +msgid "Ludicrous" +msgstr "Lúdico" + +msgid "Can't start this without SD card." +msgstr "No puede iniciarse sin una tarjeta SD." + +msgid "Rate the Print Profile" +msgstr "Valorar el Perfil de Impresión" + +msgid "Comment" +msgstr "Comentar" + +msgid "Rate this print" +msgstr "Valora esta impresión" + +msgid "Add Photo" +msgstr "Añadir Foto" + +msgid "Delete Photo" +msgstr "Borrar Foto" + +msgid "Submit" +msgstr "Aceptar" + +msgid "Please click on the star first." +msgstr "Por favor presione en las estrellas primero." + +msgid "InFo" +msgstr "Información" + +msgid "Get oss config failed." +msgstr "Falló la obtención de la configuración de oss." + +msgid "Upload Pictrues" +msgstr "Cargar Imágenes" + +msgid "Number of images successfully uploaded" +msgstr "Número de imágenes cargadas satisfactoriamente" + +msgid " upload failed" +msgstr " Carga fallida" + +msgid " upload config prase failed\n" +msgstr " Error en la carga de configuración\n" + +msgid " No corresponding storage bucket\n" +msgstr " Sin cubo de almacenamiento correspondiente\n" + +msgid " can not be opened\n" +msgstr " no es posible abrirlo\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"Se han producido los siguientes problemas durante el proceso de carga de " +"imágenes. ¿Desea ignorarlos?\n" +"\n" + +msgid "info" +msgstr "información" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"Sincronizando los resultados de impresión. Vuelva a intentarlo unos segundos " +"más tarde." + +msgid "Upload failed\n" +msgstr "Carga fallida\n" + +msgid "obtaining instance_id failed\n" +msgstr "Error al obtener instance_id \n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"El resultado de su comentario no se puede cargar debido a algunas razones, " +"que son:\n" +"\n" +" código de error: " + +msgid "error message: " +msgstr "Mensaje de error: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"¿Desea redirigir a la página web de valoración?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Algunas de sus imágenes no se han podido cargar. ¿Desea redirigir a la " +"página web para la valoración?" + +msgid "You can select up to 16 images." +msgstr "Puede seleccionar hasta 16 imágenes." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"Se requiere al menos un registro de impresión correcto de este perfil de " +"impresión \n" +"para otorgar una calificación positiva (4 o 5 estrellas)." + +msgid "Status" +msgstr "Estado" + +msgid "Update" +msgstr "Actualizar" + +msgid "Don't show again" +msgstr "No mostrar de nuevo" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s error" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s ha ocurrido un error" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s aviso" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s tiene un aviso" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s info" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s información" + +msgid "Skip" +msgstr "Saltar" + +msgid "Newer 3mf version" +msgstr "Nueva versión 3mf" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" +"La versión del archivo 3mf está en Beta y es más reciente que la versión " +"actual de Snapmaker Orca." + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "Si desea probar Snapmaker Orca Beta, puede hacer clic en" + +msgid "Download Beta Version" +msgstr "Descargar versión beta" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" +"La versión del archivo 3mf es más reciente que la versión actual de Orca " +"Slicer." + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" +"Actualice su Snapmaker Orca podría habilitar toda la funcionalidad en el " +"archivo 3mf." + +msgid "Current Version: " +msgstr "Versión actual: " + +msgid "Latest Version: " +msgstr "Ultima versión: " + +msgid "Not for now" +msgstr "No por ahora" + +msgid "3D Mouse disconnected." +msgstr "Ratón 3D desconectado." + +msgid "Configuration can update now." +msgstr "La configuración puede actualizarse ahora." + +msgid "Detail." +msgstr "Detalle." + +msgid "Integration was successful." +msgstr "La integración fue un éxito." + +msgid "Integration failed." +msgstr "La integración ha fallado." + +msgid "Undo integration was successful." +msgstr "La operación de deshacer se ha realizado con éxito." + +msgid "New network plug-in available." +msgstr "Nuevo complemento de red disponible." + +msgid "Details" +msgstr "Detalles" + +msgid "New printer config available." +msgstr "Nueva configuración de impresora disponible." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "La operación de deshacer ha fallado." + +msgid "Exporting." +msgstr "Exportando." + +msgid "Software has New version." +msgstr "El software tiene una nueva versión." + +msgid "Goto download page." +msgstr "Ir a la página de descargas." + +msgid "Open Folder." +msgstr "Abrir Carpeta." + +msgid "Safely remove hardware." +msgstr "Quitar hardware con seguridad." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d El objeto tiene soportes personalizados." +msgstr[1] "%1$d Los objetos tienen soportes personalizados." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d El objeto tiene pintura de color." +msgstr[1] "%1$d Los objetos tienen pintura de color." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d El objeto se ha cargado como parte del objeto de corte." +msgstr[1] "%1$d Los objetos se han cargado como partes del objeto de corte" + +msgid "ERROR" +msgstr "ERROR" + +msgid "COMPLETED" +msgstr "COMPLETADO" + +msgid "CANCELED" +msgstr "CANCELADO" + +msgid "Cancel upload" +msgstr "Carga cancelada" + +msgid "Jump to" +msgstr "Ir a" + +msgid "Error:" +msgstr "Error:" + +msgid "Warning:" +msgstr "Advertencia:" + +msgid "Export successfully." +msgstr "Exportación exitosa." + +msgid "Model file downloaded." +msgstr "Archivo de modelo descargado." + +msgid "Serious warning:" +msgstr "Seria advertencia:" + +msgid " (Repair)" +msgstr " (Reparación)" + +msgid " Click here to install it." +msgstr " Presiona aquí para instalarlo." + +msgid "WARNING:" +msgstr "AVISO:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "" +"¡Su modelo necesita soporte! Por favor, haga que el material de apoyo esté " +"habilitado." + +msgid "Gcode path overlap" +msgstr "Superposición de la ruta del G-Code" + +msgid "Support painting" +msgstr "Soporte pintado" + +msgid "Color painting" +msgstr "Pintura en color" + +msgid "Cut connectors" +msgstr "Cortar Conectores" + +msgid "Layers" +msgstr "Capas" + +msgid "Range" +msgstr "Rango" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"La aplicación no puede ejecutarse normalmente porque la versión de OpenGL es " +"inferior a la 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Por favor, actualice el controlador de su tarjeta gráfica." + +msgid "Unsupported OpenGL version" +msgstr "Versión de OpenGL no soportada" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"No se han podido cargar los shaders:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Error al cargar shaders" + +msgctxt "Layers" +msgid "Top" +msgstr "Superior" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Inferior" + +msgid "Enable AI monitoring of printing" +msgstr "Activar monitorización por IA de la impresión" + +msgid "Sensitivity of pausing is" +msgstr "La sensibilidad de pausa es" + +msgid "Enable detection of build plate position" +msgstr "Activar detección de posición de bandeja" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"Se detecta la etiqueta de localización de la bandeja y se detiene la " +"impresión si la etiqueta no se encuentra dentro del intervalo predefinido." + +msgid "First Layer Inspection" +msgstr "Inspección de Primera Capa" + +msgid "Auto-recovery from step loss" +msgstr "Autorecuperar desde pérdida de paso" + +msgid "Allow Prompt Sound" +msgstr "Permitir Sonido de Aviso" + +msgid "Filament Tangle Detect" +msgstr "Detección de Enredos de Filamentos" + +msgid "Nozzle Clumping Detection" +msgstr "Detección de Atascos de Boquilla" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" +"Compruebe si la boquilla está atascada por el filamento u otros objetos " +"extraños." + +msgid "Nozzle Type" +msgstr "Tipo de Boquilla" + +msgid "Stainless Steel" +msgstr "Acero Inoxidable" + +msgid "Hardened Steel" +msgstr "Acero endurecido" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Global" + +msgid "Objects" +msgstr "Objetos" + +msgid "Advance" +msgstr "Avanzado" + +msgid "Compare presets" +msgstr "Comparar perfiles" + +msgid "View all object's settings" +msgstr "Ver todos los ajustes del objeto" + +msgid "Material settings" +msgstr "Configuración de Material" + +msgid "Remove current plate (if not last one)" +msgstr "Quitar bandeja actual (si no es la última)" + +msgid "Auto orient objects on current plate" +msgstr "Auto orientar objetos en la bandeja actual" + +msgid "Arrange objects on current plate" +msgstr "Ordenar objetos en la bandeja actual" + +msgid "Unlock current plate" +msgstr "Desbloquear bandeja actual" + +msgid "Lock current plate" +msgstr "Bloquear bandeja actual" + +msgid "Edit current plate name" +msgstr "Editar el nombre de la bandeja actual" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "Personalizar bandeja actual" + +#, boost-format +msgid " plate %1%:" +msgstr " bandeja %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Nombre no válido, los siguientes caracteres no están permitidos:" + +msgid "Sliced Info" +msgstr "Información del laminado" + +msgid "Used Filament (m)" +msgstr "Filamento Usado (m)" + +msgid "Used Filament (mm³)" +msgstr "Filamento Usado (mm³)" + +msgid "Used Filament (g)" +msgstr "Filamento Usado (g)" + +msgid "Used Materials" +msgstr "Materiales usados" + +msgid "Estimated time" +msgstr "Tiempo estimado" + +msgid "Filament changes" +msgstr "Cambios de filamento" + +msgid "Click to edit preset" +msgstr "Click para cambiar el ajuste inicial" + +msgid "Connection" +msgstr "Conexión" + +msgid "Bed type" +msgstr "Tipo de cama" + +msgid "Flushing volumes" +msgstr "Volúmenes de limpieza" + +msgid "Add one filament" +msgstr "Añadir un filamento" + +msgid "Remove last filament" +msgstr "Borrar último filamento" + +msgid "Synchronize filament list from AMS" +msgstr "Sicronizar filamentos de la lista AMS" + +msgid "Set filaments to use" +msgstr "Elegir filamentos para usar" + +msgid "Search plate, object and part." +msgstr "Buscar bandeja, objeto y parte." + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"No hay filamentos AMS. Por favor, seleccione una impresora en la página " +"'Dispositivos' para cargar información AMS." + +msgid "Sync filaments with AMS" +msgstr "Sincronizar filamentos con AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Sincronizar filamentos con AMS descartará todos los perfiles de filamento y " +"colores. ¿Desea continuar?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Se realizó la sincronización, ¿Desea sincronizar solo los cambios o " +"resincronizar todo?" + +msgid "Sync" +msgstr "Sincronizar" + +msgid "Resync" +msgstr "Resincronizar" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "No hay filamentos compatibles, y no se ha realizado la sincronización." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Hay algunos filamentos desconocidos mapeados en el perfil genérico. Por " +"favor actualice o reinicie Snapmaker Orca para comprobar si hay una " +"actualización de perfiles del sistema." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "¿Quieres guardar los cambios en \"%1%\"?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Desmontado correctamente. El dispositivo %s(%s) ahora puede ser eliminado de " +"forma segura." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "La expulsión del dispositivo %s(%s) ha fallado." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "" +"Se ha detectado un proyecto anterior no guardado, ¿quieres restaurarlo?" + +msgid "Restore" +msgstr "Restaurar" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"La temperatura actual de la cama caliente es relativamente alta. La boquilla " +"puede estar obstruida al imprimir este filamento en un recinto cerrado. Por " +"favor, abra la puerta frontal y/o retire el cristal superior." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"La dureza de la boquilla requerida por el filamento es más alta que la " +"dureza de la boquilla por defecto de la impresora. Por favor, reemplace la " +"boquilla endurecida y el filamento, de otra forma, la boquilla se atascará o " +"se dañará." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Activar la fotografía timelapse tradicional puede causar imperfecciones en " +"la superficie. Se recomienda cambiar al modo suave." + +msgid "Expand sidebar" +msgstr "Expandir barra lateral" + +msgid "Collapse sidebar" +msgstr "Colapsar barra lateral" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Cargando archivo: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "El 3mf no es de Snapmaker Orca, cargar datos de geometría solo." + +msgid "Load 3mf" +msgstr "Cargar 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"La versión de 3mf %s es más nueva que la versión de %s %s, encontradas las " +"siguientes llaves no reconocidas:" + +msgid "You'd better upgrade your software.\n" +msgstr "Debería actualizar el software.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"La versión de 3mf %s es más nueva que la versión de %s %s. Se aconseja " +"actualizar su software." + +msgid "Invalid values found in the 3mf:" +msgstr "Valores inválidos encontrados en el 3mf:" + +msgid "Please correct them in the param tabs" +msgstr "Por favor, corríjalos en las pestañas de parámetros" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" +"El archivo 3mf ha realizado las siguientes modificaciones en el G-Code de " +"los perfiles de filamento o impresora:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"¡Por favor, confirme que esas modificaciones de G-Code son seguras para " +"evitar cualquier daño a la máquina!" + +msgid "Modified G-codes" +msgstr "G-Code modificado" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" +"El archivo 3mf tiene los siguientes perfiles personalizados de filamento o " +"impresora:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"¡Por favor, confirme que el G-Code dentro de los perfiles son seguros para " +"evitar cualquier daño a la máquina!" + +msgid "Customized Preset" +msgstr "Perfil Personalizado" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "" +"¡El nombre de los componentes dentro del archivo de pasos no tiene formato " +"UTF8!" + +msgid "The name may show garbage characters!" +msgstr "¡El nombre puede mostrar caracteres no válidos!" + +msgid "Remember my choice." +msgstr "Recordar mi elección." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Ha fallado la carga del archivo \"%1%\". Se ha encontrado una configuración " +"no válida." + +msgid "Objects with zero volume removed" +msgstr "Objetos con volumen cero eliminados" + +msgid "The volume of the object is zero" +msgstr "El volumen del objeto es cero" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"El objeto del archivo %s es demasiado pequeño, tal vez en metros o " +"pulgadas.\n" +" ¿Quiere escalar a milímetros?" + +msgid "Object too small" +msgstr "Objeto demasiado pequeño" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Este archivo contiene varios objetos colocados a varias alturas.\n" +"En lugar de considerarlos como objetos múltiples, debería \n" +"considerarlo como un único objeto con múltiples piezas?" + +msgid "Multi-part object detected" +msgstr "Objeto multipieza detectado" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "¿Cargar estos archivos como un objeto único con múltiples piezas?\n" + +msgid "Object with multiple parts was detected" +msgstr "Se ha detectado un objeto con varias piezas" + +msgid "The file does not contain any geometry data." +msgstr "El archivo no contiene ninguna información geométrica." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Tu objeto parece demasiado grande, ¿Deseas disminuirlo para que quepa en la " +"cama caliente automáticamente?" + +msgid "Object too large" +msgstr "Objeto demasiado grande" + +msgid "Export STL file:" +msgstr "Exportar archivo STL:" + +msgid "Export AMF file:" +msgstr "Exportar archivo AMF:" + +msgid "Save file as:" +msgstr "Guardar archivo como:" + +msgid "Export OBJ file:" +msgstr "Exportar archivo OBJ:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"El archivo %s ya existe\n" +"¿Desea reemplazarlo?" + +msgid "Confirm Save As" +msgstr "Confirmar Guardar como" + +msgid "Delete object which is a part of cut object" +msgstr "Borrar objeto el cual es una pieza del objeto cortado" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Se intenta eliminar un objeto que forma parte de un objeto cortado.\n" +"Esta acción romperá una correspondencia de corte.\n" +"Después de eso la consistencia del modelo no puede ser garantizada." + +msgid "The selected object couldn't be split." +msgstr "El objeto seleccionado no ha podido ser dividido." + +msgid "Another export job is running." +msgstr "Otro trabajo de exportación está en marcha." + +msgid "Unable to replace with more than one volume" +msgstr "No se puede sustituir con más de un volumen" + +msgid "Error during replace" +msgstr "Error durante el reemplazo" + +msgid "Replace from:" +msgstr "Sustituir desde:" + +msgid "Select a new file" +msgstr "Seleccione un nuevo archivo" + +msgid "File for the replace wasn't selected" +msgstr "El archivo de reemplazo no ha sido seleccionado" + +msgid "Please select a file" +msgstr "Por favor, seleccione un archivo" + +msgid "Do you want to replace it" +msgstr "¿Desea reemplazarlo?" + +msgid "Message" +msgstr "Mensaje" + +msgid "Reload from:" +msgstr "Recargar desde:" + +msgid "Unable to reload:" +msgstr "No es posible recargar:" + +msgid "Error during reload" +msgstr "Error durante la recarga" + +msgid "There are warnings after slicing models:" +msgstr "Hay alertas después de laminar los modelos:" + +msgid "warnings" +msgstr "advertencias" + +msgid "Invalid data" +msgstr "Datos inválidos" + +msgid "Slicing Canceled" +msgstr "Laminado Cancelado" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Bandeja de corte %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Por favor, resuelve los errores de corte y publica de nuevo." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Complemento de red no detectado. Características de red no disponibles." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Previsualizar solo el modo:\n" +"El archivo cargado contiene solo G-Code, no es posible entrar a la página de " +"Preparación" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" +"Puedes mantener los perfiles modificados en el nuevo proyecto o descartarlos" + +msgid "Creating a new project" +msgstr "Creando un nuevo proyecto" + +msgid "Load project" +msgstr "Cargar Proyecto" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Fallo salvando el proyecto.\n" +"Por favor, comprobar si la carpeta existe en línea o si otros programas " +"tienen abierto el archivo de proyecto." + +msgid "Save project" +msgstr "Guardar proyecto" + +msgid "Importing Model" +msgstr "Importando modelo" + +msgid "prepare 3mf file..." +msgstr "Preparar el archivo 3mf..." + +msgid "Download failed, unknown file format." +msgstr "Download failed; unknown file format." + +msgid "downloading project ..." +msgstr "Descargando proyecto..." + +msgid "Download failed, File size exception." +msgstr "Download failed; File size exception." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Proyecto descargado %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"La importación a Snapmaker Orca ha fallado. Descargue el archivo e impórtelo " +"manualmente." + +msgid "Import SLA archive" +msgstr "Importar archivo SLA" + +msgid "The selected file" +msgstr "El archivo seleccionado" + +msgid "does not contain valid gcode." +msgstr "no contiene G-Code válido." + +msgid "Error occurs while loading G-code file" +msgstr "Se produce un error al cargar el archivo de G-Code" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "La carga del archivo ZIP en la ruta %1% ha fallado." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "Fallo al descomprimir el archivo en %1%: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"No se ha encontrado el archivo descomprimido en %1%. No se ha podido " +"descomprimir el archivo." + +msgid "Drop project file" +msgstr "Descartar el archivo de proyecto" + +msgid "Please select an action" +msgstr "Seleccione una acción" + +msgid "Open as project" +msgstr "Abrir como proyecto" + +msgid "Import geometry only" +msgstr "Importar geometría solo" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Sólo se puede abrir un archivo de G-Code al mismo tiempo." + +msgid "G-code loading" +msgstr "Carga del G-Code" + +msgid "G-code files can not be loaded with models together!" +msgstr "¡Los archivos de G-Code no pueden cargarse con los modelos juntos!" + +msgid "Can not add models when in preview mode!" +msgstr "No se pueden añadir modelos en el modo de vista previa!" + +msgid "All objects will be removed, continue?" +msgstr "Todos los objetos serán eliminados, ¿desea continuar?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"El proyecto actual tiene cambios sin guardar, ¿guardarlos antes de continuar?" + +msgid "Number of copies:" +msgstr "Número de copias:" + +msgid "Copies of the selected object" +msgstr "Copias del objeto seleccionado" + +msgid "Save G-code file as:" +msgstr "Guardar archivo G-Code como:" + +msgid "Save SLA file as:" +msgstr "Guardar archivo SLA como:" + +msgid "The provided file name is not valid." +msgstr "El nombre de archivo proporcionado no es válido." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "" +"Los siguientes caracteres no están permitidos por un sistema de archivos FAT:" + +msgid "Save Sliced file as:" +msgstr "Guardar el archivo laminado como:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"El archivo %s ha sido mandado al almacenamiento de la impresora y puede ser " +"visto en la impresora." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"No se pueden realizar operaciones booleanas en las mallas del modelo. Sólo " +"se conservarán las partes positivas. Puede arreglar las mallas e intentarlo " +"de nuevo." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Razón: la parte \"%1%\" está vacía." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Motivo: La pieza \"%1%\" no tiene volumen." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Razón: la parte \"%1%\" se ha intersecado." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Razón: \"%1%\" y otra parte no tienen intersección." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"¿Está seguro que quiere almacenar SVGs originales con sus rutas locales " +"dentro del archivo 3MF?\n" +"Si pulsa 'NO', todos los SVGs en el proyecto no serán editables nunca más." + +msgid "Private protection" +msgstr "Protección privada" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" +"¿Está la impresora preparada? ¿Está la hoja en el sitio. limpia y vacía?" + +msgid "Upload and Print" +msgstr "Cargar e imprimir" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Imprimir por objeto: \n" +"Sugiere utilizar el auto-posicionamiento para evitar colisiones al imprimir." + +msgid "Send G-code" +msgstr "Enviar G-Code" + +msgid "Send to printer" +msgstr "Enviar a la impresora" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" +"Los soportes personalizados y la pintura de color se eliminaron antes de la " +"reparación." + +msgid "Optimize Rotation" +msgstr "Optimizar Rotación" + +msgid "Invalid number" +msgstr "Número inválido" + +msgid "Plate Settings" +msgstr "Configuración de Bandeja" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Número de piezas seleccionadas actualmente: %1%.\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Número de objetos seleccionados actualmente: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Nombre de la pieza: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Nombre del objeto: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Tamaño: %1% x %2% x %3% en\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Tamaño: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "" +"Volumen: %1% pulgadas³\n" +" \n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Volumen: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Triángulos: %1%\n" + +msgid "Tips:" +msgstr "Consejos:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"La característica \"Arreglar Modelo\" está actualmente solo en Windows. Por " +"favor, repare el modelo en Snapmaker Orca(windows) o el programas CAD." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Bandeja% d: %s no está sugerido para ser usado para imprimir filamento " +"%s(%s). Si usted aún quiere imprimir, por favor, seleccione 0 en la " +"temperatura de Bandeja." + +msgid "Switching the language requires application restart.\n" +msgstr "El cambio de idioma requiere el reinicio de la aplicación.\n" + +msgid "Do you want to continue?" +msgstr "¿Quieres continuar?" + +msgid "Language selection" +msgstr "Selección de idiomas" + +msgid "Switching application language while some presets are modified." +msgstr "" +"Cambiando idioma de la aplicación mientras se modifican algunos perfiles." + +msgid "Changing application language" +msgstr "Cambiar el idioma de la aplicación" + +msgid "Changing the region will log out your account.\n" +msgstr "Si cambias de región, saldrás de tu cuenta.\n" + +msgid "Region selection" +msgstr "Selección de región" + +msgid "Second" +msgstr "Segundo" + +msgid "Browse" +msgstr "Explorar" + +msgid "Choose Download Directory" +msgstr "Elegir Directorio de Descarga" + +msgid "Associate" +msgstr "Asociar" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "porque Snapmaker Orca así que no puede abrir modelos desde" + +msgid "Current Association: " +msgstr "Asociación actual:" + +msgid "Current Instance" +msgstr "Instancia actual" + +msgid "Current Instance Path: " +msgstr "Ruta de Instancia Actual:" + +msgid "General Settings" +msgstr "Configuración General" + +msgid "Asia-Pacific" +msgstr "Asia-Pacífico" + +msgid "China" +msgstr "China" + +msgid "Europe" +msgstr "Europa" + +msgid "North America" +msgstr "América del Norte" + +msgid "Others" +msgstr "Otros" + +msgid "Login Region" +msgstr "Región de inicio de sesión" + +msgid "Stealth Mode" +msgstr "Modo invisible" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" +"Esto detiene la transmisión de datos a los servicios en la nube de Bambu. " +"Los usuarios que no utilicen máquinas BBL o que solo utilicen el modo LAN " +"pueden activar esta función de forma segura." + +msgid "Enable network plugin" +msgstr "Activar el plugin de red" + +msgid "Check for stable updates only" +msgstr "Buscar sólo actualizaciones estables" + +msgid "Metric" +msgstr "Métrico" + +msgid "Imperial" +msgstr "Imperial" + +msgid "Units" +msgstr "Unidades" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "Permitir sólo una instancia de Snapmaker Orca" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"En OSX siempre hay una sola instancia de la aplicación ejecutándose por " +"defecto. Sin embargo, está permitido ejecutar varias instancias de la misma " +"aplicación desde la línea de comandos. En tal caso, esta configuración sólo " +"permitirá una instancia." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" +"Si esta opción está activada, al iniciar Snapmaker Orca y otra instancia del " +"mismo Snapmaker Orca ya se está ejecutando, esa instancia se reactivará en su " +"lugar." + +msgid "Home" +msgstr "Página de Inicio" + +msgid "Default Page" +msgstr "Página por defecto" + +msgid "Set the page opened on startup." +msgstr "Establece la página que se abre al inicio." + +msgid "Touchpad" +msgstr "Panel táctil" + +msgid "Camera style" +msgstr "Estilo de cámara" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"Selecciona el estilo de navegación de la cámara:\n" +"Por defecto: LMB+mover para rotación, RMB/MMB+mover para paneo.\n" +"Panel táctil: Alt+mover para rotación, Shift+mover para paneo." + +msgid "Zoom to mouse position" +msgstr "Hacer zoom en la posición del ratón" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Hacer zoom hacia la posición del puntero de ratón en la vista 3D, en vez del " +"centro de la ventana 2D." + +msgid "Use free camera" +msgstr "Usar cámara libre" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Si está activada, utiliza la cámara libre. Si no está activada, utiliza la " +"cámara restringida." + +msgid "Reverse mouse zoom" +msgstr "Invertir el zoom del ratón" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "Si se activa, invierte la dirección del zoom con la rueda del ratón." + +msgid "Show splash screen" +msgstr "Mostrar pantalla de inicio" + +msgid "Show the splash screen during startup." +msgstr "Muestra la página de bienvenida al iniciar." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Mostrar la notificación \"Consejo del Día\" después de empezar" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Si está activado, las sugerencias útiles serán mostradas al inicio." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "Volumenes de descarga: Auto calcular en cada cambio de color." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "Si está activado, auto calcula en cada cambio de color." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "" +"Volúmenes de descarga: Cálculo automático cada vez que se cambia el " +"filamento." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "" +"Si está activada, calcula automáticamente cada vez que se cambia el filamento" + +msgid "Remember printer configuration" +msgstr "Recordar la configuración de la impresora" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" +"Si está activada, Orca recordará y cambiará la configuración de archivos/" +"procesos para cada impresora automáticamente." + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "Gestión multidispositivo (surte efecto tras reiniciar Orca)." + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"Con esta opción activada, puede enviar una tarea a varios dispositivos al " +"mismo tiempo y gestionar varios dispositivos." + +msgid "Network" +msgstr "Red" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Sincronización automática de los perfiles del usuario (Impresora/Filamento/" +"Proceso)" + +msgid "User Sync" +msgstr "Sincronización de usuario" + +msgid "Update built-in Presets automatically." +msgstr "Actualizar perfiles integrados automáticamente." + +msgid "System Sync" +msgstr "Sincronizar sistema" + +msgid "Clear my choice on the unsaved presets." +msgstr "Limpiar mi selección de perfiles no guardados." + +msgid "Associate files to Snapmaker Orca" +msgstr "Asociar archivos a Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Asociar archivos .3mf a Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Si se activa, ajusta Snapmaker Orca como aplicación por defecto para abrir " +"archivos .3mf" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Asociar archivos .stl a Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Si se activa, ajusta Snapmaker Orca como aplicación por defecto para abrir " +"archivos .stl" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Asociar archivos .step/.stp a Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Si se activa, ajusta Snapmaker Orca como aplicación por defecto para abrir " +"archivos .step" + +msgid "Associate web links to Snapmaker Orca" +msgstr "Asociar enlaces web a Snapmaker Orca" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "Asociar URLs a Snapmaker Orca" + +msgid "Maximum recent projects" +msgstr "Máximos proyectos recientes" + +msgid "Maximum count of recent projects" +msgstr "Máxima cantidad de proyectos recientes" + +msgid "Clear my choice on the unsaved projects." +msgstr "Limpiar mi elección de proyectos no guardados." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "No avisar cuando cargue archivos 3MF con G-Codes modificados" + +msgid "Auto-Backup" +msgstr "Copia de seguridad automática" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Haga copia de seguridad periódicamente para restaurar en caso de fallo " +"ocasional." + +msgid "every" +msgstr "Todo" + +msgid "The peroid of backup in seconds." +msgstr "El periodo de copia de seguridad en segundos." + +msgid "Downloads" +msgstr "Descargas" + +msgid "Dark Mode" +msgstr "Modo Oscuro" + +msgid "Enable Dark mode" +msgstr "Activar Modo Oscuro" + +msgid "Develop mode" +msgstr "Modo de desarrollo" + +msgid "Skip AMS blacklist check" +msgstr "Evitar la comprobación de lista negra de AMS" + +msgid "Home page and daily tips" +msgstr "Página de inicio y consejos diarios" + +msgid "Show home page on startup" +msgstr "Mostrar la página de inicio en el arranque" + +msgid "Sync settings" +msgstr "Ajustes de sincronización" + +msgid "User sync" +msgstr "Sincronización del usuario" + +msgid "Preset sync" +msgstr "Sincronización de perfil" + +msgid "Preferences sync" +msgstr "Sincronización de preferencias" + +msgid "View control settings" +msgstr "Ver los ajustes del control" + +msgid "Rotate of view" +msgstr "Rotación de vista" + +msgid "Move of view" +msgstr "Movimiento de la vista" + +msgid "Zoom of view" +msgstr "Zoom de vista" + +msgid "Other" +msgstr "Otro" + +msgid "Mouse wheel reverses when zooming" +msgstr "La rueda del ratón se invierte al hacer zoom" + +msgid "Enable SSL(MQTT)" +msgstr "Enable SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Enable SSL(FTP)" + +msgid "Internal developer mode" +msgstr "Internal developer mode" + +msgid "Log Level" +msgstr "Nivel de registro" + +msgid "fatal" +msgstr "fatal" + +msgid "error" +msgstr "error" + +msgid "warning" +msgstr "advertencia" + +msgid "debug" +msgstr "depurar" + +msgid "trace" +msgstr "traza" + +msgid "Host Setting" +msgstr "Ajuste de cliente" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEV host: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA host: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "PRE host: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Cliente de producto" + +msgid "debug save button" +msgstr "botón de guardar la depuración" + +msgid "save debug settings" +msgstr "guardar los ajustes de depuración" + +msgid "DEBUG settings have saved successfully!" +msgstr "¡Los ajustes de depuración se han guardado con éxito!" + +msgid "Switch cloud environment, Please login again!" +msgstr "¡Cambiado a entorno de nube, Por favor vuelva a autenticarse!" + +msgid "System presets" +msgstr "Perfiles del sistema" + +msgid "User presets" +msgstr "Perfiles de usuario" + +msgid "Incompatible presets" +msgstr "Perfiles incompatibles" + +msgid "AMS filaments" +msgstr "Filamentos AMS" + +msgid "Click to pick filament color" +msgstr "Haga clic para elegir el color del filamento" + +msgid "Please choose the filament colour" +msgstr "Por favor elija el color del filamento" + +msgid "Add/Remove presets" +msgstr "Añadir/Quitar ajustes" + +msgid "Edit preset" +msgstr "Editar ajuste" + +msgid "Project-inside presets" +msgstr "Perfiles internos del proyecto" + +msgid "Add/Remove filaments" +msgstr "Añadir/Borrar filamentos" + +msgid "Add/Remove materials" +msgstr "Añadir/Borrar materiales" + +msgid "Select/Remove printers(system presets)" +msgstr "Seleccionar/Borrar impresoras (perfiles del sistema)" + +msgid "Create printer" +msgstr "Crear impresora" + +msgid "The selected preset is null!" +msgstr "¡El ajuste seleccionado es nulo!" + +msgid "End" +msgstr "Final" + +msgid "Customize" +msgstr "Personalizar" + +msgid "Other layer filament sequence" +msgstr "Secuencia de filamentos de otras capas" + +msgid "Please input layer value (>= 2)." +msgstr "Introduzca el valor de la capa (>= 2)." + +msgid "Plate name" +msgstr "Nombre de Bandeja" + +msgid "Same as Global Print Sequence" +msgstr "Lo mismo que la Secuencia Global de Impresión" + +msgid "Print sequence" +msgstr "Secuencia de impresión" + +msgid "Same as Global" +msgstr "Igual que Global" + +msgid "Disable" +msgstr "Desactivar" + +msgid "Spiral vase" +msgstr "Vaso en espiral" + +msgid "First layer filament sequence" +msgstr "Secuencia de primera capa de filamento" + +msgid "Same as Global Plate Type" +msgstr "Igual que el Tipo de Bandeja Global" + +msgid "Same as Global Bed Type" +msgstr "Lo mismo que el Tipo de Cama Global" + +msgid "By Layer" +msgstr "Por Capa" + +msgid "By Object" +msgstr "Por Objeto" + +msgid "Accept" +msgstr "Aceptar" + +msgid "Log Out" +msgstr "Desconectarse" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "" +"Lamina todas las piezas para obtener una estimación del tiempo y del " +"filamento" + +msgid "Packing project data into 3mf file" +msgstr "Empaquetar los datos del proyecto en un archivo 3mf" + +msgid "Uploading 3mf" +msgstr "Carga de 3mf" + +msgid "Jump to model publish web page" +msgstr "Ir a la página web de publicación de modelos" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "" +"Nota: La preparación puede llevar varios minutos. Por favor, sea paciente." + +msgid "Publish" +msgstr "Publicar" + +msgid "Publish was cancelled" +msgstr "La publicación fue cancelada" + +msgid "Slicing Plate 1" +msgstr "Bandeja de Laminado 1" + +msgid "Packing data to 3mf" +msgstr "Empaquetando datos a 3mf" + +msgid "Jump to webpage" +msgstr "Ir a la página web" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Guardar %s como" + +msgid "User Preset" +msgstr "Perfil de usuario" + +msgid "Preset Inside Project" +msgstr "Perfil interno del proyecto" + +msgid "Name is unavailable." +msgstr "El nombre no está disponible." + +msgid "Overwrite a system profile is not allowed" +msgstr "No se permite sobrescribir un perfil del sistema" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "El perfil \"%1%\" ya existe." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "El perfil \"%1%\" ya existe y es incompatible con la impresora actual." + +msgid "Please note that saving action will replace this preset" +msgstr "Tenga en cuenta que la acción de guardar reemplazará este perfil" + +msgid "The name cannot be the same as a preset alias name." +msgstr "El nombre no puede ser el mismo que el nombre del perfil." + +msgid "Save preset" +msgstr "Guardar perfil" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Copiar" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "La impresora \"%1%\" está seleccionada con el perfil \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Por favor, elija una acción con \"%1%\" perfil después de guardar." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Para \"%1%\", cambia \"%2%\" por \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Para \"%1%\", añada \"%2%\" como un nuevo perfil" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Simplemente cambia a \"%1%\"" + +msgid "Task canceled" +msgstr "Tarea cancelada" + +msgid "(LAN)" +msgstr "(Red local)" + +msgid "Search" +msgstr "Buscar" + +msgid "My Device" +msgstr "Mi dispositivo" + +msgid "Other Device" +msgstr "Otro dispositivo" + +msgid "Online" +msgstr "En línea" + +msgid "Input access code" +msgstr "Introducir el código de acceso" + +msgid "Can't find my devices?" +msgstr "¿No puedo encontrar mis dispositivos?" + +msgid "Log out successful." +msgstr "Cierre de sesión con éxito." + +msgid "Busy" +msgstr "Ocupado" + +msgid "Bambu Cool Plate" +msgstr "Bandeja Fría Bambu" + +msgid "PLA Plate" +msgstr "Bandeja PLA" + +msgid "Bambu Engineering Plate" +msgstr "Bandeja de Ingeniería Bambú" + +msgid "Bambu Smooth PEI Plate" +msgstr "Bandeja PEI Lisa Bambu" + +msgid "High temperature Plate" +msgstr "Bandeja de Alta Temperatura" + +msgid "Bambu Textured PEI Plate" +msgstr "Bandeja PEI Texturizada Bambu" + +msgid "Send print job to" +msgstr "Enviar el trabajo de impresión a" + +msgid "Flow Dynamics Calibration" +msgstr "Calibración de Dinámica de Flujo" + +msgid "Click here if you can't connect to the printer" +msgstr "Presione aquí si no puede conectar a la impresora" + +msgid "send completed" +msgstr "Envío completo" + +msgid "Error code" +msgstr "Código de error" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "Sin cuenta de acceso, sólo se muestran las impresoras en modo LAN" + +msgid "Connecting to server" +msgstr "Conectando al servidor" + +msgid "Synchronizing device information" +msgstr "Sincronizando la información del dispositivo" + +msgid "Synchronizing device information time out" +msgstr "" +"Finalización del tiempo de sincronización de la información del dispositivo" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"No es posible enviar el trabajo cuando la impresora está actualizando el " +"firmware" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"La impresora está ejecutando instrucciones. Por favor, reinicie la impresión " +"cuando termine" + +msgid "The printer is busy on other print job" +msgstr "La impresora está ocupada con otro trabajo de impresión" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"El %s del filamento excede el número de ranuras AMS. Por favor actualice el " +"firmware para que soporte la asignación de ranuras AMS." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"El %s del filamento excede el número de ranuras AMS. Por favor actualice el " +"firmware para que soporte la asignación de ranuras AMS." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Se han establecido mapeos de filamentos a ranuras AMS. Puede hacer clic en " +"un filamento de arriba para cambiar su asignación de ranura AMS" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Por favor, haga clic en cada filamento superior para especificar la " +"asignación de ranura AMS antes de enviar el trabajo de impresión" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"El filamento %s no coincide con el filamento la ranura AMS %s. Por favor " +"actualice el firmware de la impresora para que soporte la asignación de " +"ranuras AMS." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"El %s del filamento excede el número de ranuras AMS. Por favor actualice el " +"firmware de la impresora para que soporte la asignación de ranuras AMS." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"El firmware de la impresora solo soporta el mapeo secuencial de filamento => " +"ranura AMS." + +msgid "An SD card needs to be inserted before printing." +msgstr "Es necesario introducir una tarjeta SD antes de imprimir." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"La impresora seleccionada (%s) es incompatible con el perfil de impresora " +"elegido en la cortadora (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "Es necesario insertar una tarjeta SD para guardar el timelapse." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"No es posible enviar el trabajo de impresión a una impresora la cual " +"necesita una actualización de firmware." + +msgid "Cannot send the print job for empty plate" +msgstr "No es posible enviar el trabajo de impresión a una bandeja vacía" + +msgid "This printer does not support printing all plates" +msgstr "Esta impresora no soporta la impresión en todas las bandejas" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"Cuando active el modo vaso en espiral, las máquinas con estructura I3 no " +"generará videos timelapse." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"El timelapse no está soportado porque la secuencia de impresión está " +"configurada \"Por objeto\"." + +msgid "Errors" +msgstr "Errores" + +msgid "Please check the following:" +msgstr "Por favor compruebe lo siguiente:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"El tipo de impresora seleccionado cuando se genera el G-Code no tiene " +"consistencia con la impresora seleccionada actualmente. Es recomendable que " +"use el mismo tipo de impresora para laminar." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"Hay algunos filamentos desconocidos en los mapeados AMS. Por favor, " +"compruebe si son los filamentos requeridos. Si lo son, presione " +"\"Confirmar\" para empezar a imprimir. Por favor, compruebe si son los " +"filamentos requeridos. Si lo son, presione \"Confirmar\" para empezar a " +"imprimir." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "Boquilla en perfil: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "Boquilla memorizada: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"El diámetro de la boquilla en el archivo laminado no coincide con la " +"boquilla guardada. Si ha cambiado la boquilla últimamente, vaya a " +"Dispositivo > Piezas de la impresora para cambiar la configuración." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"La impresión de material de alta temperatura (%s material) con %s puede " +"causar daños en la boquilla" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "" +"Por favor, corrija el error anterior, de lo contrario la impresión no podrá " +"continuar." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Por favor, presione el botón de confirmar si aún quieres proceder con la " +"impresión." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "Conectando a la impresora. No es posible cancelar durante la conexión." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"¡Precaución! La calibración del flujo en la bandeja PEI texturizada puede " +"fallar debido a la superficie dispersa." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Calibración Automática de Flujo usando Micro Lidar" + +msgid "Modifying the device name" +msgstr "Modificar el nombre del dispositivo" + +msgid "Bind with Pin Code" +msgstr "Vincular con código PIN" + +msgid "Send to Printer SD card" +msgstr "Enviar a la tarjeta SD de la impresora" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "" +"No se puede enviar la tarea de impresión cuando la actualización está en " +"curso" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "" +"La impresora seleccionada es incompatible con los perfiles seleccionados." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "" +"Es necesario insertar una tarjeta SD antes de enviar a la tarjeta SD de la " +"impresora." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "" +"Es necesaria que la impresora esté en la misma red local que Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "La impresora no soporta el envío directo a la tarjeta SD." + +msgid "Slice ok." +msgstr "Laminado correcto." + +msgid "View all Daily tips" +msgstr "Mostrar todos los consejos del día" + +msgid "Failed to create socket" +msgstr "Fallo al crear socket" + +msgid "Failed to connect socket" +msgstr "Error al conectar el socket" + +msgid "Failed to publish login request" +msgstr "Error al publicar la solicitud de inicio de sesión" + +msgid "Get ticket from device timeout" +msgstr "Tiempo de espera para obtener el ticket del dispositivo" + +msgid "Get ticket from server timeout" +msgstr "Tiempo de espera para obtener el ticket del servidor" + +msgid "Failed to post ticket to server" +msgstr "Error al enviar el ticket al servidor" + +msgid "Failed to parse login report reason" +msgstr "Error al analizar el motivo del informe de inicio de sesión" + +msgid "Receive login report timeout" +msgstr "Tiempo de espera para recibir el informe de inicio de sesión" + +msgid "Unknown Failure" +msgstr "Error Desconocido" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Busque el código PIN en la página Cuenta en la pantalla de la impresora \n" +"e introdúzcalo a continuación." + +msgid "Can't find Pin Code?" +msgstr "¿No encuentra el código PIN?" + +msgid "Pin Code" +msgstr "Código Pin" + +msgid "Binding..." +msgstr "Vinculando..." + +msgid "Please confirm on the printer screen" +msgstr "Confirme en la pantalla de la impresora" + +msgid "Log in failed. Please check the Pin Code." +msgstr "No se ha podido iniciar sesión. Por favor, compruebe el código PIN." + +msgid "Log in printer" +msgstr "Iniciar sesión en la impresora" + +msgid "Would you like to log in this printer with current account?" +msgstr "¿Desea iniciar sesión en esta impresora con la cuenta actual?" + +msgid "Check the reason" +msgstr "Compruebe el motivo" + +msgid "Read and accept" +msgstr "Leer y aceptar" + +msgid "Terms and Conditions" +msgstr "Condiciones generales" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Gracias por adquirir un dispositivo Bambu Lab. Antes de utilizar su " +"dispositivo Bambu Lab, lea los términos y condiciones. Al hacer clic para " +"aceptar el uso de su dispositivo Bambu Lab, acepta cumplir la Política de " +"privacidad y las Condiciones de uso (colectivamente, las \"Condiciones\"). " +"Si no cumple o no acepta la Política de privacidad de Bambu Lab, le rogamos " +"que no utilice los equipos y servicios de Bambu Lab." + +msgid "and" +msgstr "y" + +msgid "Privacy Policy" +msgstr "Política de privacidad" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Te pedimos ayuda para mejorar las impresoras de todos" + +msgid "Statement about User Experience Improvement Program" +msgstr "Declaración sobre el Programa de Mejora de la Experiencia del Usuario" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"En la comunidad de impresión 3D, aprendemos de los éxitos y fracasos de los " +"demás para ajustar nuestros propios parámetros y ajustes de corte. %s sigue " +"el mismo principio y utiliza el aprendizaje automático para mejorar su " +"rendimiento a partir de los éxitos y fracasos del gran número de impresiones " +"de nuestros usuarios. Estamos entrenando a %s para que sea más inteligente " +"alimentándole con los datos del mundo real. Si usted lo desea, este servicio " +"accederá a la información de sus registros de errores y de uso, que pueden " +"incluir información descrita en la Política de Privacidad. No recopilaremos " +"ningún Dato Personal por el cual un individuo pueda ser identificado directa " +"o indirectamente, incluyendo sin limitación nombres, direcciones, " +"información de pago o números de teléfono. Al habilitar este servicio, usted " +"acepta estos términos y la declaración sobre la Política de Privacidad." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Declaración sobre el Plan de mejora de la experiencia de los usuarios" + +msgid "Log in successful." +msgstr "Inicio de sesión con éxito." + +msgid "Log out printer" +msgstr "Cerrar la sesión de la impresora" + +msgid "Would you like to log out the printer?" +msgstr "¿Desea cerrar la sesión de la impresora?" + +msgid "Please log in first." +msgstr "Por favor, identifíquese primero." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "" +"Ha habido un problema de conexión con la impresora. Por favor, inténtelo de " +"nuevo." + +msgid "Failed to log out." +msgstr "No se ha podido cerrar la sesión." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Guardar %s actuales" + +msgid "Delete this preset" +msgstr "Borra este perfil" + +msgid "Search in preset" +msgstr "Buscar en el perfil" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Presionar para reiniciar todos los ajustes al perfil guardado por defecto." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"Se requiere la torre de purga para un timelapse suave. Puede haber defectos " +"modelos sin torre de purga.¿Está seguro de que quiere deshabilitar la torre " +"principal?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"La torre de purga es necesaria para que el timelapse sea fluido. Puede haber " +"defectos en el modelo sin torre de purga. ¿Desea activar la torre de purga?" + +msgid "Still print by object?" +msgstr "¿Seguir imprimiendo por objeto?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Hemos añadido el ajuste experimental \"Árboles Delgados\" que presenta " +"volúmenes de soporte más pequeños con menos fuerza.\n" +"Recomendamos usarlo con: 0 capas de interfaz, 0 distancia superior, 2 " +"perímetros." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Cambiar estos ajustes automáticamente? \n" +"Sí - Cambiar estos ajustes automáticamente\n" +"No - No cambiar estos ajustes" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Para \"Árboles fuertes\" y \"Árboles Híbridos\", recomendamos lo siguiente " +"ajustes: al menos 2 capas de interfaz, al menos 0.1mm de distancia superior " +"en z o usar materiales de soporte en la interfaz." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"Cuando se use material de soporte para las interfaces de soporte, " +"recomendamos los siguientes ajustes:\n" +"distancia z0, separación de interfaz 0, patrón concéntrico y desactivar " +"altura de soporte independiente de altura de capa" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"Al activar esta opción modificará la forma del modelo. Si la impresión " +"requiere dimensiones precisas o forma parte de un ensamblado, es importante " +"comprobar si este cambio en la geometría afecta a la funcionalidad de la " +"impresión." + +msgid "Are you sure you want to enable this option?" +msgstr "¿Está seguro de que desea activar esta opción?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"La altura de la capa es demasiado pequeña.\n" +"Se establecerá en min_layer_height\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"La altura de la capa excede el límite en Ajustes de la Impresora -> Extrusor " +"-> Limite de Altura de Capa ,esto puede causar problemas de calidad de " +"impresión." + +msgid "Adjust to the set range automatically? \n" +msgstr "¿Desea ajustar el rango automáticamente?\n" + +msgid "Adjust" +msgstr "Ajustar" + +msgid "Ignore" +msgstr "Ignorar" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Característica experimental: Retraer y cortar el filamento a mayor distancia " +"durante los cambios de filamento para minimizar el flujo. Aunque puede " +"reducir notablemente el flujo, también puede elevar el riesgo de atascos de " +"boquillas u otras complicaciones de impresión." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Característica experimental: Retraer y cortar el filamento a mayor distancia " +"durante los cambios de filamento para minimizar el flujo. Aunque puede " +"reducir notablemente el flujo, también puede elevar el riesgo de atascos de " +"boquilla u otras complicaciones de impresión. Por favor, utilícelo con el " +"último firmware de la impresora." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"Cuando se graba un timelapse sin cabezal, se recomienda añadir una \"Torre " +"de Purga de Timelapse\" haciendo clic con el botón derecho del ratón en la " +"posición vacía de la bandeja de impresión y seleccionando \"Añadir " +"Primitivo\"->Torre de Purga de Timelapse\"." + +msgid "Line width" +msgstr "Ancho de extrusión" + +msgid "Seam" +msgstr "Costura" + +msgid "Precision" +msgstr "Precisión" + +msgid "Wall generator" +msgstr "Generador de perímetros" + +msgid "Walls and surfaces" +msgstr "Perímetros y superficies" + +msgid "Bridging" +msgstr "Puentes" + +msgid "Overhangs" +msgstr "Voladizos" + +msgid "Walls" +msgstr "Perímetros" + +msgid "Top/bottom shells" +msgstr "Cubiertas Superiores/Inferiores" + +msgid "Initial layer speed" +msgstr "Velocidad de la primera capa" + +msgid "Other layers speed" +msgstr "Velocidad de otras capas" + +msgid "Overhang speed" +msgstr "Velocidad del voladizo" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Esta es la velocidad para varios grados de voladizo. Los grados de voladizo " +"se expresan como un porcentaje del ancho de la línea. La velocidad 0 " +"significa que no hay ralentización para el rango de grados de voladizo y se " +"utiliza la velocidad del perímetro" + +msgid "Bridge" +msgstr "Puente" + +msgid "Set speed for external and internal bridges" +msgstr "Configurar velocidad para puentes externos e internos" + +msgid "Travel speed" +msgstr "Velocidad de desplazamiento" + +msgid "Acceleration" +msgstr "Aceleración" + +msgid "Jerk(XY)" +msgstr "Jerk(XY)" + +msgid "Raft" +msgstr "Balsa/capa base de impresión" + +msgid "Support filament" +msgstr "Filamento de soporte" + +msgid "Tree supports" +msgstr "Soportes de árbol" + +msgid "Skirt" +msgstr "Falda" + +msgid "Prime tower" +msgstr "Torre de Purga" + +msgid "Special mode" +msgstr "Ajustes especiales" + +msgid "G-code output" +msgstr "G-Code de salida" + +msgid "Post-processing Scripts" +msgstr "Script de Post-procesado" + +msgid "Notes" +msgstr "Anotaciones" + +msgid "Frequent" +msgstr "Frecuente" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"La siguiente línea %s contiene palabras clave reservadas.\n" +"Por favor, elimínela, o vencerá la visualización del G-Code y la estimación " +"del tiempo de impresión." +msgstr[1] "" +"Las siguientes líneas %s contienen palabras clave reservadas.\n" +"Por favor, elimínelas, o vencerá la visualización del G-Code y la estimación " +"del tiempo de impresión." + +msgid "Reserved keywords found" +msgstr "Palabras clave utilizadas y encontradas" + +msgid "Setting Overrides" +msgstr "Anulaciones de configuración" + +msgid "Retraction" +msgstr "Retracción" + +msgid "Basic information" +msgstr "Información básica" + +msgid "Recommended nozzle temperature" +msgstr "Temperatura recomendada de la boquilla" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Rango de temperatura de boquilla recomendado para este filamento. 0 " +"significa que no se ajusta" + +msgid "Print chamber temperature" +msgstr "Temperatura de la cámara" + +msgid "Print temperature" +msgstr "Temperatura de impresión" + +msgid "Nozzle" +msgstr "Boquilla" + +msgid "Nozzle temperature when printing" +msgstr "Temperatura de la boquilla al imprimir" + +msgid "Cool plate" +msgstr "Bandeja Fría" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Esta es la temperatura de la bandeja cuando la Bandeja Fría está instalada. " +"Un valor de 0 significa que el filamento no admite la impresión en la " +"Bandeja Fría" + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "Bandeja de Ingeniería" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Esta es la temperatura de la cama cuando la Bandeja de Ingeniería está " +"instalada. Un valor de 0 significa que el filamento no admite la impresión " +"en la Bandeja de Ingeniería" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Bandeja PEI suave / Bandeja de Alta Temperatura" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Temperatura de la cama cuando está instalada la bandeja PEI lisa/ Bandeja de " +"Alta Temperatura. El valor 0 significa que el filamento no admite la " +"impresión en la bandeja PEI lisa/bandeja de alta temperatura" + +msgid "Textured PEI Plate" +msgstr "Bandeja PEI Texturizada" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Temperatura de la cama cuando la Bandeja PEI Texturizada está instalada. El " +"valor 0 significa que el filamento no es compatible para imprimir en la " +"Bandeja PEI Texturizada" + +msgid "Volumetric speed limitation" +msgstr "Limitación de la velocidad volumétrica" + +msgid "Cooling" +msgstr "Refrigeración" + +msgid "Cooling for specific layer" +msgstr "Ventilación para la capa específica" + +msgid "Part cooling fan" +msgstr "Ventilador de refrigeración de piezas" + +msgid "Min fan speed threshold" +msgstr "Umbral de velocidad mínima del ventilador" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"La velocidad del ventilador de refrigeración de la pieza comenzará a " +"funcionar a la velocidad mínima cuando el tiempo estimado de la capa no sea " +"superior al tiempo de la capa ajustado. Cuando el tiempo de la capa es " +"inferior al umbral, la velocidad del ventilador se interpola entre la " +"velocidad mínima y máxima del ventilador según el tiempo de impresión de la " +"capa" + +msgid "Max fan speed threshold" +msgstr "Umbral de velocidad máxima del ventilador" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"La velocidad del ventilador de la pieza será máxima cuando el tiempo de capa " +"estimado sea inferior al valor ajustado" + +msgid "Auxiliary part cooling fan" +msgstr "Ventilador de parte auxiliar" + +msgid "Exhaust fan" +msgstr "Ventilador de extracción" + +msgid "During print" +msgstr "Durante la impresión" + +msgid "Complete print" +msgstr "Completar impresión" + +msgid "Filament start G-code" +msgstr "G-Code de inicio de filamento" + +msgid "Filament end G-code" +msgstr "Final del G-Code de filamento" + +msgid "Multimaterial" +msgstr "Multimaterial" + +msgid "Wipe tower parameters" +msgstr "Parámetros de torre de purga" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "Parámetros de cambio de herramienta para impresoras de 1 extrusor MM" + +msgid "Ramming settings" +msgstr "Parámetros de Moldeado de Extremo" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "" +"Parámetros de cambio de herramienta para impresoras de varios extrusores MM" + +msgid "Printable space" +msgstr "Espacio imprimible" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "Valor no válido proporcionado para el parámetro %1%: %2%" + +msgid "G-code flavor is switched" +msgstr "Se cambia tipo de G-Code" + +msgid "Cooling Fan" +msgstr "Ventilador de enfriamento" + +msgid "Fan speed-up time" +msgstr "Tiempo de aumento de velocidad del ventilador" + +msgid "Extruder Clearance" +msgstr "Margen del extrusor" + +msgid "Adaptive bed mesh" +msgstr "Malla adaptativa de cama" + +msgid "Accessory" +msgstr "Accesorio" + +msgid "Machine gcode" +msgstr "G-Code de la máquina" + +msgid "Machine start G-code" +msgstr "G-Code de inicio" + +msgid "Machine end G-code" +msgstr "G-Code final" + +msgid "Printing by object G-code" +msgstr "G-Code de impresión por objeto" + +msgid "Before layer change G-code" +msgstr "G-Code para antes del cambio de capa" + +msgid "Layer change G-code" +msgstr "Cambiar el G-Code tras el cambio de capa" + +msgid "Time lapse G-code" +msgstr "Timelapse G-Code" + +msgid "Change filament G-code" +msgstr "G-Code para el cambio de filamento" + +msgid "Change extrusion role G-code" +msgstr "Cambiar el rol de extrusión Código G" + +msgid "Pause G-code" +msgstr "G-Code de pausa" + +msgid "Template Custom G-code" +msgstr "G-Code para el cambio de plantilla" + +msgid "Motion ability" +msgstr "Capacidad de movimiento" + +msgid "Normal" +msgstr "Normal" + +msgid "Speed limitation" +msgstr "Limitación de velocidad" + +msgid "Acceleration limitation" +msgstr "Limitación de la aceleración" + +msgid "Jerk limitation" +msgstr "Limitación de Jerk" + +msgid "Single extruder multimaterial setup" +msgstr "Configuración de extrusor único multimaterial" + +msgid "Wipe tower" +msgstr "Torre de purga" + +msgid "Single extruder multimaterial parameters" +msgstr "Parámetros de extrusor único multimaterial" + +msgid "Layer height limits" +msgstr "Límites de altura de la capa" + +msgid "Lift Z Enforcement" +msgstr "Forzar elevación Z" + +msgid "Retraction when switching material" +msgstr "Retracción al cambiar de material" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"La opción Wipe no está disponible cuando se utiliza el modo Retracción de " +"Firmware.\n" +"\n" +"Debo desactivarla para activar la retracción de firmware?" + +msgid "Firmware Retraction" +msgstr "Retracción de firmware" + +msgid "Detached" +msgstr "Separado" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"El perfil de Filamento %d y el perfil de Proceso %d están adjuntos a esta " +"impresora. Esos perfiles se borrarían si se elimina la impresora." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "¡Los perfiles heredados de otros perfiles no pueden borrarse!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "El siguiente perfil hereda de este otro." +msgstr[1] "Los siguientes perfiles heredan de este otro." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Preestablecido" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "El siguiente perfil también se eliminará." +msgstr[1] "Los siguientes perfiles también se eliminarán." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"¿Está seguro de que desea eliminar el perfil seleccionado? \n" +"Si el perfil corresponde a un filamento actualmente en uso en su impresora, " +"restablezca la información del filamento para esa ranura." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "¿Está seguro de %1% el perfil seleccionado?" + +msgid "All" +msgstr "Todas" + +msgid "Set" +msgstr "Ajuste" + +msgid "Click to reset current value and attach to the global value." +msgstr "" +"Haga clic para restablecer el valor actual y adjuntarlo al valor global." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Haga clic para dejar la modificación actual y restablecer el valor guardado." + +msgid "Process Settings" +msgstr "Ajustes del proceso" + +msgid "Undef" +msgstr "No definido" + +msgid "Unsaved Changes" +msgstr "Cambios No guardados" + +msgid "Transfer or discard changes" +msgstr "Descartar o mantener los cambios" + +msgid "Old Value" +msgstr "Valor Antiguo" + +msgid "New Value" +msgstr "Nuevo Valor" + +msgid "Transfer" +msgstr "Transferir" + +msgid "Don't save" +msgstr "No guardar" + +msgid "Discard" +msgstr "Descartar" + +msgid "Click the right mouse button to display the full text." +msgstr "Pulse el botón derecho del ratón para mostrar el texto completo." + +msgid "All changes will not be saved" +msgstr "Los cambios no se guardarán" + +msgid "All changes will be discarded." +msgstr "Todos los cambios serán descartados." + +msgid "Save the selected options." +msgstr "Guardar las opciones seleccionadas." + +msgid "Keep the selected options." +msgstr "Mantener las opciones seleccionadas." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "" +"Transfiere las opciones seleccionadas a la nueva preselección seleccionada." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Guardar las opciones seleccionadas en el perfil \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Transfiere las opciones seleccionadas al nuevo perfil seleccionado \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "La preselección \"%1%\" contiene los siguientes cambios no guardados:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"El perfil \"%1%\" no es compatible con el nuevo perfil de la impresora y " +"contiene los siguientes cambios no guardados:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"El perfil \"%1%\" no es compatible con el nuevo perfil de proceso y contiene " +"los siguientes cambios no guardados:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "Ha cambiado algunos ajustes del perfil \"%1%\"." + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"Puede guardar o descartar los perfiles que haya modificado." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" +"\n" +"Puede guardar o descartar los valores perfiles que ha modificado, o elegir " +"transferir los valores que ha modificado al nuevo perfil." + +msgid "You have previously modified your settings." +msgstr "Ha modificado previamente su configuración." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"Puede descartar los valores perfiles que haya modificado, o elegir " +"transferir los valores modificados al nuevo proyecto" + +msgid "Extruders count" +msgstr "Contador de extrusores" + +msgid "General" +msgstr "General" + +msgid "Capabilities" +msgstr "Capacidades" + +msgid "Show all presets (including incompatible)" +msgstr "Mostrar todos los perfiles (incluyendo los compatibles)" + +msgid "Select presets to compare" +msgstr "Seleccionar perfiles para comparar" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" +"Sólo se puede transferir al perfil activo actual porque ha sido modificado." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"Transfiera las opciones seleccionadas del perfil izquierdo al derecho. \n" +"Nota: Los nuevos perfiles modificados se seleccionarán en las pestañas de " +"configuración después de cerrar este cuadro de diálogo." + +msgid "Transfer values from left to right" +msgstr "Transferir valores de izquierda a derecha" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" +"Si se activa, este cuadro de diálogo se puede utilizar para convertir los " +"valores seleccionados de izquierda a derecha perfiles." + +msgid "Add File" +msgstr "Añadir archivo" + +msgid "Set as cover" +msgstr "Ajustar como cubierta" + +msgid "Cover" +msgstr "Cubierta" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "El nombre \"%1%\" ya existe." + +msgid "Basic Info" +msgstr "Información Básica" + +msgid "Pictures" +msgstr "Fotos" + +msgid "Bill of Materials" +msgstr "Lista de materiales" + +msgid "Assembly Guide" +msgstr "Guía de montaje" + +msgid "Author" +msgstr "Autor" + +msgid "Model Name" +msgstr "Nombre del modelo" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Actualizar" + +msgid "A new version is available" +msgstr "Hay una nueva versión disponible" + +msgid "Configuration update" +msgstr "Actualización de configuración" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "Un nuevo paquete de configuración disponible, ¿quieres instalarlo?" + +msgid "Description:" +msgstr "Descripción:" + +msgid "Configuration incompatible" +msgstr "Configuración incompatible" + +msgid "the configuration package is incompatible with current application." +msgstr "el paquete de configuración es incompatible con la aplicación actual." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"El paquete de configuración es incompatible con la aplicación actual.\n" +"%s Actualiza el paquete de configuración, de lo contrario no podrá iniciar" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Salir %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "el paquete de configuración es incompatible con la APP actual." + +msgid "Configuration updates" +msgstr "Actualizaciones de la configuración" + +msgid "No updates available." +msgstr "No hay actualizaciones disponibles." + +msgid "The configuration is up to date." +msgstr "La configuración está actualizada." + +msgid "Obj file Import color" +msgstr "Archivo Obj Importar color" + +msgid "Specify number of colors:" +msgstr "Especifique el número de colores:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "El recuento de colores debe estar en el rango [%d, %d]." + +msgid "Recommended " +msgstr "Recomendado " + +msgid "Current filament colors:" +msgstr "Colores de filamento actuales:" + +msgid "Quick set:" +msgstr "Configurar rápido:" + +msgid "Color match" +msgstr "Combinación de colores" + +msgid "Approximate color matching." +msgstr "Coincidencia de color aproximada." + +msgid "Append" +msgstr "Añadir" + +msgid "Add consumable extruder after existing extruders." +msgstr "Añadir extrusora consumible después de las extrusoras existentes." + +msgid "Reset mapped extruders." +msgstr "Restablecer extrusoras mapeadas." + +msgid "Cluster colors" +msgstr "Colores de grupos" + +msgid "Map Filament" +msgstr "Mapear Filamento" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Nota: Una vez seleccionado el color, puede elegir OK\n" +"para continuar o ajustarlo manualmente." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Advertencia: El recuento de extrusores recién añadidos y \n" +"actuales es superior a 16.Advertencia: El recuento de extrusores recién " +"añadidos y \n" +"actuales es superior a 16." + +msgid "Ramming customization" +msgstr "Personalización de Moldeado de Extremo" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"El moldeado de extremo se refiere a una extrusión rápida justo antes del " +"cambio de herramienta en la impresora MM de extrusor único. Su propósito es " +"dar una forma adecuada al final del filamento descargado para no impedir la " +"inserción del nuevo filamento, y que pueda ser reinsertada por si misma " +"posteriormente." + +msgid "Total ramming time" +msgstr "Tiempo total de Moldeado de Extremo" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "Volumen de moldeado de extremo total" + +msgid "Ramming line width" +msgstr "Ancho de línea de Moldeado de Extremo" + +msgid "Ramming line spacing" +msgstr "Separación de línea de moldeado de extremo" + +msgid "Auto-Calc" +msgstr "Auto-Calc" + +msgid "Re-calculate" +msgstr "Recalcular" + +msgid "Flushing volumes for filament change" +msgstr "Volúmenes de limpieza para el cambio de filamentos" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Orca volverá a calcular sus volúmenes de descarga cada vez que se cambie el " +"color de los filamentos. Puedes desactivar el cálculo automático en Orca " +"Slicer > Preferencias." + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Volumen de limpieza (mm³) para cada par de filamentos." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Sugerencias: Volumen de Flujo en rango [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "El multiplicador debería estar en el rango [%.2f, %.2f]." + +msgid "Multiplier" +msgstr "Multiplicador" + +msgid "unloaded" +msgstr "Descargado" + +msgid "loaded" +msgstr "Cargado" + +msgid "Filament #" +msgstr "Filamento #" + +msgid "From" +msgstr "Desde" + +msgid "To" +msgstr "A" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" +"Para esta tarea se necesita el Reproductor de Windows Media. ¿Desea activar " +"el \"Reproductor de Windows Media\" en su sistema operativo?" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" +"BambuSource no se ha registrado correctamente para la reproducción " +"multimedia. Pulse Sí para volver a registrarlo. Será promocionado dos veces" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" +"Falta el componente BambuSource registrado para la reproducción multimedia. " +"Vuelva a instalar BambuStudio o solicite ayuda posventa." + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" +"Si utiliza una BambuSource de una instalación diferente, es posible que la " +"reproducción de vídeo no funcione correctamente. Pulsa Sí para solucionarlo." + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" +"A tu sistema le faltan los codecs H.264 para GStreamer, necesarios para " +"reproducir vídeo. (Prueba a instalar los paquetes gstreamer1.0-plugins-bad " +"o gstreamer1.0-libav y, a continuación, reinicia Snapmaker Orca...)." + +msgid "Bambu Network plug-in not detected." +msgstr "Plugin Red Bambú no detectado." + +msgid "Click here to download it." +msgstr "Presione aquí para descargarlo." + +msgid "Login" +msgstr "Inicio de sesión" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "" +"El paquete de configuración se cambia en la Guía de configuración anterior" + +msgid "Configuration package changed" +msgstr "Paquete de configuración cambiado" + +msgid "Toolbar" +msgstr "Barra de herramientas" + +msgid "Objects list" +msgstr "Lista de objetos" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Importar datos de geometría de los archivos STL/STEP/3MF/OBJ/AMF" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Pegar desde el portapapeles" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "Mostrar/Ocultar el diálogo de ajustes de los dispositivos 3Dconnexion" + +msgid "Switch table page" +msgstr "Cambiar de página de tabla" + +msgid "Show keyboard shortcuts list" +msgstr "Muestra lista de atajos de teclado" + +msgid "Global shortcuts" +msgstr "Atajos globales" + +msgid "Rotate View" +msgstr "Rotar Vista" + +msgid "Pan View" +msgstr "Vista Panorámica" + +msgid "Mouse wheel" +msgstr "Rueda de ratón" + +msgid "Zoom View" +msgstr "Vista de Zoom" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Orienta automáticamente los objetos seleccionados o todos los objetos.Si hay " +"objetos seleccionados, sólo orienta los seleccionados.En caso contrario, " +"orientará todos los objetos del disco actual." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Ocultar/Expandir barra lateral" + +msgid "⌘+Any arrow" +msgstr "⌘+Cualquier tecla" + +msgid "Movement in camera space" +msgstr "Movimiento en el espacio de la cámara" + +msgid "⌥+Left mouse button" +msgstr "Botón de ratón ⌥+Left" + +msgid "Select a part" +msgstr "Seleccionar una pieza" + +msgid "⌘+Left mouse button" +msgstr "⌘+botón izquierdo de ratón" + +msgid "Select multiple objects" +msgstr "Seleccionar varios objetos" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+Cualquier flecha" + +msgid "Alt+Left mouse button" +msgstr "Alt+Botón izquierdo de ratón" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+Botón izquierdo de ratón" + +msgid "Shift+Left mouse button" +msgstr "Shift+Left+Botón izquierdo de ratón" + +msgid "Select objects by rectangle" +msgstr "Seleccionar objetos por rectángulo" + +msgid "Arrow Up" +msgstr "Flecha hacia arriba" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Mover la selección 10 mm en dirección Y positiva" + +msgid "Arrow Down" +msgstr "Flecha hacia abajo" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Mover la selección 10 mm en dirección Y negativa" + +msgid "Arrow Left" +msgstr "Flecha hacia izquierda" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Mover la selección 10 mm en dirección X negativa" + +msgid "Arrow Right" +msgstr "Flecha hacia derecha" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Mover la selección 10 mm en dirección X positiva" + +msgid "Shift+Any arrow" +msgstr "Mayúsculas+Cualquier flecha" + +msgid "Movement step set to 1 mm" +msgstr "Paso de movimiento configurado a 1 mm" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "teclado 1-9: ajustar el filamento para el objeto/pieza" + +msgid "Camera view - Default" +msgstr "Vista de la cámara - Por defecto" + +msgid "Camera view - Top" +msgstr "Vista de la cámara Superior" + +msgid "Camera view - Bottom" +msgstr "Vista de la cámara - Parte inferior" + +msgid "Camera view - Front" +msgstr "Vista de la cámara - Frontal" + +msgid "Camera view - Behind" +msgstr "Vista de la cámara - Posterior" + +msgid "Camera Angle - Left side" +msgstr "Ángulo de la cámara - Lado izquierdo" + +msgid "Camera Angle - Right side" +msgstr "Ángulo de la cámara - Lado derecho" + +msgid "Select all objects" +msgstr "Seleccionar todos los objetos" + +msgid "Gizmo move" +msgstr "Movimiento Gizmo" + +msgid "Gizmo scale" +msgstr "Escala Gizmo" + +msgid "Gizmo rotate" +msgstr "Rotación Gizmo" + +msgid "Gizmo cut" +msgstr "Corte Gizmo" + +msgid "Gizmo Place face on bed" +msgstr "Situar cara en cama en modo Gizmo" + +msgid "Gizmo SLA support points" +msgstr "Puntos de soporte SLA Gizmo" + +msgid "Gizmo FDM paint-on seam" +msgstr "Costura de pintura Gizmo FDM" + +msgid "Gizmo Text emboss / engrave" +msgstr "Gizmo Texto en relieve / grabado" + +msgid "Zoom in" +msgstr "Acercar" + +msgid "Zoom out" +msgstr "Alejar" + +msgid "Switch between Prepare/Preview" +msgstr "Cambiar entre Preparar/Previsualizar" + +msgid "Plater" +msgstr "Bandeja" + +msgid "Move: press to snap by 1mm" +msgstr "Mover: pulsar para ajustar 1mm" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Rueda del ratón" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Soporte/Pintado en color: ajuste del radio de la pluma" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Rueda del ratón" + +msgid "Support/Color Painting: adjust section position" +msgstr "Soporte/Pintado de color: ajuste de la posición de la sección" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Rueda del ratón" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Rueda del ratón" + +msgid "Gizmo" +msgstr "Artilugio" + +msgid "Set extruder number for the objects and parts" +msgstr "Ajustar el número de extrusor para los objetos y las piezas" + +msgid "Delete objects, parts, modifiers " +msgstr "Eliminar objetos, piezas, modificadores " + +msgid "Select the object/part and press space to change the name" +msgstr "" +"Seleccione el objeto/pieza y pulse la barra espaciadora para cambiar el " +"nombre" + +msgid "Mouse click" +msgstr "Clic del ratón" + +msgid "Select the object/part and mouse click to change the name" +msgstr "" +"Seleccione el objeto/pieza y haga clic con el ratón para cambiar el nombre" + +msgid "Objects List" +msgstr "Lista de Objetos" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Control deslizante vertical - Mover el pulgar activo hacia Arriba" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Control deslizante vertical - Mover el pulgar activo hacia Abajo" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "" +"Control deslizante horizontal - Mover el pulgar activo hacia la Izquierda" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "" +"Control deslizante horizontal - Mover el pulgar activo hacia la Derecha" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "Activar/Desactivar el modo de una capa del control deslizante vertical" + +msgid "On/Off g-code window" +msgstr "Activar/Desactivar ventana de G-Code" + +msgid "Move slider 5x faster" +msgstr "Mover el deslizador 5 veces más rápido" + +msgid "Shift+Mouse wheel" +msgstr "Shit+Rueda de ratón" + +msgid "Horizontal slider - Move to start position" +msgstr "Deslizador horizontal - Desplazarse a la posición inicial" + +msgid "Horizontal slider - Move to last position" +msgstr "Deslizador horizontal - Desplazarse a la última posición" + +msgid "Release Note" +msgstr "Notas de lanzamiento" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "información de actualización de la versión %s:" + +msgid "Network plug-in update" +msgstr "Actualizar plug-in de red" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Click en Aceptar para actualizar el plug-in de red cuando Snapmaker Orca vuelva " +"a iniciarse." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "Un nuevo plug-in de red(%s) está disponible. ¿Desea instalarlo?" + +msgid "New version of Snapmaker Orca" +msgstr "Nueva versión de Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Saltar esta Versión" + +msgid "Done" +msgstr "Hecho" + +msgid "resume" +msgstr "Continuar" + +msgid "Resume Printing" +msgstr "Continuar Imprimiendo" + +msgid "Resume Printing(defects acceptable)" +msgstr "Continuar Imprimiendo (defectos aceptables)" + +msgid "Resume Printing(problem solved)" +msgstr "Continuar Imprimiendo (problema solucionado)" + +msgid "Stop Printing" +msgstr "Dejar de imprimir" + +msgid "Check Assistant" +msgstr "Asistente de Pruebas" + +msgid "Filament Extruded, Continue" +msgstr "Filamento extruido, Continuar" + +msgid "Not Extruded Yet, Retry" +msgstr "Aún no extruido, reintentar" + +msgid "Finished, Continue" +msgstr "Terminado, Continuar" + +msgid "Load Filament" +msgstr "Cargar" + +msgid "Filament Loaded, Resume" +msgstr "Filamento cargado, reanudar" + +msgid "View Liveview" +msgstr "Ver Vista en Directo" + +msgid "Confirm and Update Nozzle" +msgstr "Confirmar y Actualizar la Boquilla" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "Conexión de red fallida (Mandando archivo de impresión)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Paso 1, por favor confirmar que Snapmaker Orca y tu impresora se encuentran en " +"la misma red local." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Paso 2, si la IP y el Código de Acceso de abajo son diferentes de los " +"valores actuales en su impresora, por favor, corríjalos." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Código de Acceso" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "¿Dónde encontrar la IP de su impresora y el Código de Acceso?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"Paso 3: Haga ping a la dirección IP para comprobar la perdida de paquetes y " +"la latencia." + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "¡Ip y Código de Acceso Verificadas! ¡Debería cerrar esta ventana" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "" +"Conexión fallida, por favor, compruebe la dirección IP y el Código de Acceso" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"¡Conexión fallida!, si su dirección IP y el Código de Acceso son correctos.\n" +"por favor, pase al paso 3 para corregir problemas de red" + +msgid "Model:" +msgstr "Modelo:" + +msgid "Serial:" +msgstr "Número de serie:" + +msgid "Version:" +msgstr "Versión:" + +msgid "Update firmware" +msgstr "Actualizar firmware" + +msgid "Beta version" +msgstr "Versión beta" + +msgid "Latest version" +msgstr "Última versión" + +msgid "Updating" +msgstr "Actualizando" + +msgid "Updating failed" +msgstr "Fallo Actualizando" + +msgid "Updating successful" +msgstr "Actualización exitosa" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"¿Estás seguro que deseas actualizar? Esto puede llevar sobre 10 minutos. No " +"apague mientras la impresora está actualizando." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Una actualización importante fue detectada y necesita ejecutarse antes de " +"que la impresión pueda continuar. ¿Quiere actualizar ahora? Puede actualizar " +"después desde \"Actualizar fimware\"." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"La versión de firmware es anormal. Es necesario reparar y actualizar antes " +"de imprimir. ¿Quieres actualizar ahora? Puedes actualizar al iniciar en el " +"siguiente arranque de la impresora o cuando arranque Snapmaker Orca." + +msgid "Extension Board" +msgstr "Placa de Ampliación" + +msgid "Saving objects into the 3mf failed." +msgstr "El guardado de objetos en el 3mf no ha funcionado." + +msgid "Only Windows 10 is supported." +msgstr "Sólo es compatible con Windows 10." + +msgid "Failed to initialize the WinRT library." +msgstr "Ha fallado la inicialización de la biblioteca WinRT." + +msgid "Exporting objects" +msgstr "Exportación de objetos" + +msgid "Failed loading objects." +msgstr "Ha fallado la carga de objetos." + +msgid "Repairing object by Windows service" +msgstr "Reparación del objeto por el servicio de Windows" + +msgid "Repair failed." +msgstr "La reparación no ha funcionado." + +msgid "Loading repaired objects" +msgstr "Carga de objetos reparados" + +msgid "Exporting 3mf file failed" +msgstr "La exportación del archivo 3mf ha fallado" + +msgid "Import 3mf file failed" +msgstr "La importación del archivo 3mf ha fallado" + +msgid "Repaired 3mf file does not contain any object" +msgstr "El archivo 3mf reparado no contiene ningún objeto" + +msgid "Repaired 3mf file contains more than one object" +msgstr "El archivo 3mf reparado contiene más de un objeto" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "El archivo 3mf reparado no contiene ningún volumen" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "El archivo 3mf reparado contiene más de un volumen" + +msgid "Repair finished" +msgstr "Reparación terminada" + +msgid "Repair canceled" +msgstr "Reparación cancelada" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "La copia del archivo %1% a %2% falló: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" +"Es necesario comprobar los cambios no guardados antes de actualizar la " +"configuración." + +msgid "Configuration package: " +msgstr "Paquete de configuración: " + +msgid " updated to " +msgstr " Actualizado a " + +msgid "Open G-code file:" +msgstr "Abrir archivo G-Code:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Un objeto tiene la primera capa vacía y no se puede imprimir. Por favor, " +"corte el fondo o habilite los soportes." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "No se puede imprimir el objeto para la capa vacía entre %1% y %2%." + +#, boost-format +msgid "Object: %1%" +msgstr "Objeto: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Tal vez las piezas del objeto a esa altura son demasiado finas, o el objeto " +"tiene una malla defectuosa" + +msgid "No object can be printed. Maybe too small" +msgstr "No se puede imprimir ningún objeto. Tal vez sea demasiado pequeño" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"La generación ha fallado del G-Code por un G-Code personalizado no válido.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" +"Por favor, compruebe el G-Code personalizado o utilice el G-Code " +"personalizado por defecto." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Generando G-Code: capa %1%" + +msgid "Inner wall" +msgstr "Perímetro interno" + +msgid "Outer wall" +msgstr "Perímetro externo" + +msgid "Overhang wall" +msgstr "Perímetro de voladizo" + +msgid "Sparse infill" +msgstr "Relleno poco denso" + +msgid "Internal solid infill" +msgstr "Relleno sólido interno" + +msgid "Top surface" +msgstr "Relleno sólido superior" + +msgid "Bottom surface" +msgstr "Relleno sólido inferior" + +msgid "Internal Bridge" +msgstr "Puente Interior" + +msgid "Gap infill" +msgstr "Relleno de huecos" + +msgid "Support interface" +msgstr "Interfaz de soporte" + +msgid "Support transition" +msgstr "Apoyo a la transición" + +msgid "Multiple" +msgstr "Múltiple" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Ha fallado el cálculo del ancho de extrusión de %1%. No se puede obtener el " +"valor de \"%2%\". " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Separación no válido suministrado a Flow::with_spacing(), comprueba la " +"altura de su capa y el ancho de extrusión." + +msgid "undefined error" +msgstr "error no definido" + +msgid "too many files" +msgstr "demasiados archivos" + +msgid "file too large" +msgstr "archivo demasiado grande" + +msgid "unsupported method" +msgstr "método no compatible" + +msgid "unsupported encryption" +msgstr "encriptación no compatible" + +msgid "unsupported feature" +msgstr "característica no compatible" + +msgid "failed finding central directory" +msgstr "búsqueda de directorio central fallida" + +msgid "not a ZIP archive" +msgstr "no es un archivo ZIP" + +msgid "invalid header or corrupted" +msgstr "encabezado inválido o corrupto" + +msgid "unsupported multidisk" +msgstr "multidisco no soportado" + +msgid "decompression failed" +msgstr "descompresión fallida" + +msgid "compression failed" +msgstr "compresión fallida" + +msgid "unexpected decompressed size" +msgstr "tamaño de descompresión inesperado" + +msgid "CRC check failed" +msgstr "Comprobación CRC fallida" + +msgid "unsupported central directory size" +msgstr "tamaño del directorio central no compatible" + +msgid "allocation failed" +msgstr "asignación fallida" + +msgid "file open failed" +msgstr "apertura de archivo fallida" + +msgid "file create failed" +msgstr "creación del archivo fallida" + +msgid "file write failed" +msgstr "escritura del archivo fallida" + +msgid "file read failed" +msgstr "lectura del archivo fallida" + +msgid "file close failed" +msgstr "cierre del archivo fallido" + +msgid "file seek failed" +msgstr "búsqueda de archivo fallida" + +msgid "file stat failed" +msgstr "estadística de archivos fallida" + +msgid "invalid parameter" +msgstr "parámetro inválido" + +msgid "invalid filename" +msgstr "nombre de archivo inválido" + +msgid "buffer too small" +msgstr "buffer demasiado pequeño" + +msgid "internal error" +msgstr "error interno" + +msgid "file not found" +msgstr "archivo no encontrado" + +msgid "archive too large" +msgstr "archivo demasiado grande" + +msgid "validation failed" +msgstr "validación fallida" + +msgid "write callback failed" +msgstr "la llamada de recuperación de la escritura ha fallado" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% está muy cerca del área de exclusión, puede conllevar colisiones cuando " +"se imprime." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% está demasiado cerca de otros, y pueden producirse colisiones." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% es demasiado alto, y se producirán colisiones." + +msgid " is too close to others, there may be collisions when printing." +msgstr "" +" está muy cerca de otros, puede conllevar colisiones cuando se imprime." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" está muy cerca del área de exclusión, puede conllevar colisiones cuando se " +"imprime." + +msgid "Prime Tower" +msgstr "Torre de Purga" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " está demasiado cerca de otros, y se pueden producir colisiones.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" +" está demasiado cerca del área de exclusión, y se producirán colisiones.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"No se pueden imprimir juntos varios filamentos que tengan una gran " +"diferencia de temperatura. De lo contrario, el extrusor y la boquilla pueden " +"bloquearse o dañarse durante la impresión" + +msgid "No extrusions under current settings." +msgstr "No hay extrusiones con los ajustes actuales." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"Modo de timelapse suave no está soportado cuando la secuencia \"por objeto\" " +"está activada." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Seleccione la secuencia de impresión \"Por objeto\" para imprimir varios " +"objetos en el modo de jarrón espiral." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"El modo de jarrón en espiral no funciona cuando un objeto contiene más de un " +"material." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "El objeto %1% supera la altura máxima del volumen de construcción." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"Mientras que el objeto %1% se ajusta al volumen de construcción, su última " +"capa excede la altura máxima del volumen de construcción." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"Es posible que desee reducir el tamaño de su modelo o cambiar la " +"configuración de impresión actual y volver a intentarlo." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "" +"La altura de capa variable no es compatible con los soportes orgánicos." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Diámetros de boquillas diferentes y diámetros de filamento diferentes no " +"están permitidos cuando la torre de purga está activada." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"Actualmente, la torre de limpieza sólo es compatible con el direccionamiento " +"relativo del extrusor (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"Actualmente no se puede evitar el rezume con la torre principal activada." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"Actualmente, la torre de purga sólo es compatible con las versiones Marlin, " +"RepRap/Sprinter, RepRapFirmware y Repetier G-Code." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "La torre de purga no es compatible con la impresión \"Por objeto\"." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"La torre de purga no es compatible cuando la altura de capa adaptativa está " +"activada. Requiere que todos los objetos tengan la misma altura de capa." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"La torre de purga requiere que el \"hueco de apoyo\" sea múltiplo de la " +"altura de la capa" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" +"La torre de purga requiere que todos los objetos tengan la misma altura de " +"capa" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"La torre de purga requiere que todos los objetos se impriman sobre el mismo " +"número de capas de balsa( base de impresión)" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"La torre de purga requiere que todos los objetos se corten con las mismas " +"alturas de capa." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"La torre de purga sólo se admite si todos los objetos tienen la misma altura " +"de capa variable" + +msgid "Too small line width" +msgstr "Ancho de extrusión demasiado pequeño" + +msgid "Too large line width" +msgstr "Ancho de extrusión demasiado grande" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"La torre de purga requiere que el soporte tenga la misma altura de capa con " +"el objeto." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"El diámetro de la punta del árbol de soporte orgánico no debe ser menor que " +"el ancho de extrusión del material de soporte." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"El diámetro de la rama de soporte orgánico no debe ser menor que 2x el ancho " +"de extrusión del material de soporte." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"El diámetro de la rama de soporte orgánico no debe ser menor que el diámetro " +"de la punta del árbol de soporte." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Se utilizan las herramientas de aplicación de soporte pero el soporte no " +"está habilitado. Por favor, active el soporte." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "La altura de la capa no puede superar el diámetro de la boquilla" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"El direccionamiento de extrusión relativa requiere reiniciar la posición del " +"extrusor en cada capa para evitar perdidas de precisión de punto flotante. " +"Añade \"G92 E0\" al código de capa." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"Se ha encontrado \"G92 E0\" en before_layer_gcode, el cual es incompatible " +"con el direccionamiento de extrusión absoluta." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"Se ha encontrado \"G92 E0\" en layer_gcode, el cual es incompatible con el " +"direccionamiento de extrusión absoluta." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Bandeja %d: %s no soporta filamento %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" +"Si la velocidad de esquinas (jerk) es demasiado baja, pueden producirse " +"artefactos en superficies curvas" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"El ajuste de jerk supera el jerk máximo de la impresora (machine_max_jerk_x/" +"machine_max_jerk_y). Orca limitará automáticamente la velocidad de tirón " +"para garantizar que no supere las capacidades de la impresora. Puede ajustar " +"el ajuste de jerk máximo en la configuración de la impresora para obtener " +"velocidades más altas." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"El ajuste de aceleración supera la aceleración máxima de la impresora " +"(machine_max_acceleration_extruding). Orca limitará automáticamente la " +"velocidad de aceleración para garantizar que no supere las capacidades de la " +"impresora. Puede ajustar el valor machine_max_acceleration_extruding en la " +"configuración de la impresora para obtener velocidades superiores." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"El ajuste de aceleración de desplazamiento supera la aceleración máxima de " +"desplazamiento de la impresora (machine_max_acceleration_travel).\n" +"Orca limitará automáticamente la velocidad de aceleración de desplazamiento " +"para garantizar que no supere las capacidades de la impresora.\n" +"Puede ajustar el valor de machine_max_acceleration_travel en la " +"configuración de la impresora para obtener velocidades más altas." + +msgid "Generating skirt & brim" +msgstr "Generando falda y borde de adherencia" + +msgid "Exporting G-code" +msgstr "Exportando G-Code" + +msgid "Generating G-code" +msgstr "Generando G-Code" + +msgid "Failed processing of the filename_format template." +msgstr "Procesamiento fallido de la plantilla filename_format." + +msgid "Printable area" +msgstr "Área imprimible" + +msgid "Bed exclude area" +msgstr "Área excluida de la cama" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Área excluida de la impresión en el plano XY. Por ejemplo, las impresoras de " +"la serie X1 utilizan la esquina delantera izquierda para cortar el filamento " +"durante el cambio de filamento. El área la delimita un polígono unido por " +"puntos en el siguiente formato: \"XxY, XxY, ...\"" + +msgid "Bed custom texture" +msgstr "Textura personalizada de cama" + +msgid "Bed custom model" +msgstr "Modelo personalizado de cama" + +msgid "Elephant foot compensation" +msgstr "Compensación del pata de elefante" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Contraer la primera capa en la bandeja de impresión para compensar el efecto " +"de la pata de elefante" + +msgid "Elephant foot compensation layers" +msgstr "Capas de compensación de la pata de elefante" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"El número de capas en las que estará activa la compensación de pata de " +"elefante. La primera capa se encogerá por el valor de compensación de pata " +"de elefante, luego las siguientes capas se encogerán linealmente menos, " +"hasta la capa indicada por este valor." + +msgid "layers" +msgstr "capas" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Altura de corte para cada capa. Una altura de capa más pequeña significa más " +"precisión y más tiempo de impresión" + +msgid "Printable height" +msgstr "Altura imprimible" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "Altura máxima imprimible limitada por el mecanismo de la impresora" + +msgid "Preferred orientation" +msgstr "Orientación preferida" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" +"Orientar automáticamente los stls en el eje Z en la importación inicial" + +msgid "Printer preset names" +msgstr "Nombres de perfiles de la impresora" + +msgid "Use 3rd-party print host" +msgstr "Utilizar host de impresión de terceros" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" +"Permitir el control de la impresora de BambuLab a través de hosts de " +"impresión de terceros" + +msgid "Hostname, IP or URL" +msgstr "Nombre de host, IP o URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca puede subir archivos G-Code a una impresora. Este campo debería " +"contener el nombre de host, la dirección IP o la URL de la instancia de la " +"impresora. Se puede acceder a la impresora detrás de un proX-Y con la " +"autenticación básica activada por un nombre de usuario y contraseña en la " +"URL en el siguiente formato: https://nombredeusuario:" +"contraseña@tudirecciondeoctopi/" + +msgid "Device UI" +msgstr "IU de dispositivo" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Especifica la URL de tu IU de dispositivo si no es el mismo que el host de " +"impresión" + +msgid "API Key / Password" +msgstr "Clave API / Contraseña" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca puede cargar archivos G-Cpde a un host de impresora. Este campo " +"debería contener una clave API o una contraseña requerida para la " +"autenticación." + +msgid "Name of the printer" +msgstr "Nombre de la impresora" + +msgid "HTTPS CA File" +msgstr "Archivo CA HTTPS" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Es posible especificar un archivo Certificado CA personalizado para " +"conexiones, en formato crt/pem. Si se deja en blanco, se usará el " +"reposittorio de certificados CA del SO." + +msgid "User" +msgstr "Usuario" + +msgid "Password" +msgstr "Contraseña" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Ignorar comprobaciones de revocación de certificado HTTPS" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ignorar comprobaciones de certificado de revocación HTTPS en caso de perder " +"o puntos de distribución sin conexión. Se debería activar esta opción de " +"certificados autofirmados si la conexión falla." + +msgid "Names of presets related to the physical printer" +msgstr "Nombres de perfiles relacionados por la impresora física" + +msgid "Authorization Type" +msgstr "Tipo de autorización" + +msgid "API key" +msgstr "Clave API" + +msgid "HTTP digest" +msgstr "Resumen HTTP" + +msgid "Avoid crossing wall" +msgstr "Evitar cruzar perímetro" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Desvíese y evite atravesar el perímetro, ya que puede provocar una mancha en " +"la superficie" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Evitar cruzar perímetro - Longitud de desvío máximo" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Distancia de desvío máximo para evitar cruzar el perímetro. No lo evite si " +"la distancia de desvío es más alta que este valor. La distancia de desvío " +"podría tanto como un valor absoluto como porcentaje (por ejemplo 50%) de una " +"trayectoria de viaje directa. Cero para deshabilitar" + +msgid "mm or %" +msgstr "mm o %" + +msgid "Other layers" +msgstr "Otras capas" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Esta es la temperatura de la cama para las capas excepto la inicial. Un " +"valor de 0 significa que el filamento no admite la impresión en la Bandeja " +"Fría" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Esta es la temperatura de la cama para las capas excepto la inicial. Un " +"valor de 0 significa que el filamento no admite la impresión en la Bandeja " +"de Ingeniería" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Esta es la temperatura de la cama para las capas excepto la inicial. Un " +"valor de 0 significa que el filamento no admite la impresión en la Bandeja " +"de Alta Temperatura" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Temperatura de cama para las capas excepto la inicial. El valor 0 significa " +"que el filamento no es compatible para imprimir en la Bandeja PEI Texturizada" + +msgid "Initial layer" +msgstr "Capa inicial" + +msgid "Initial layer bed temperature" +msgstr "Temperatura inicial de la cama en la capa" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Esta es la temperatura de la cama de la primera capa. Un valor de 0 " +"significa que el filamento no admite la impresión en la Bandeja Fría" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Esta es la temperatura de la cama de la primera capa. Un valor de 0 " +"significa que el filamento no admite la impresión en la Bandeja de Ingeniería" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Esta es la temperatura de la cama de la primera capa. Un valor de 0 " +"significa que el filamento no admite la impresión en la Bandeja de Alta " +"Temperatura" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Temperatura del lecho de la primera capa. El valor 0 significa que el " +"filamento no es compatible para imprimir en la Bandeja PEI Texturizada" + +msgid "Bed types supported by the printer" +msgstr "Tipos de cama que admite la impresora" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "Bandeja de Ingeniería" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "Secuencia de impresión de primera capa" + +msgid "Other layers print sequence" +msgstr "Secuencia de impresión de otras capas" + +msgid "The number of other layers print sequence" +msgstr "El número de secuencias de impresión de otras capas" + +msgid "Other layers filament sequence" +msgstr "Secuencia de filamentos de otras capas" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "Este G-Code se inserta en cada cambio de capa antes de levantar z" + +msgid "Bottom shell layers" +msgstr "Capas inferiores de cubierta" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Es el número de capas sólidas de la cubierta inferior, incluida la capa " +"superficial inferior. Si el grosor calculado por este valor es menor que el " +"grosor de la cubierta inferior, las capas de la cubierta inferior se " +"incrementarán" + +msgid "Bottom shell thickness" +msgstr "Espesor de la cubierta inferior" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"El número de capas sólidas del fondo se incrementa al cortar si el grosor " +"calculado por las capas de la cubierta es más fino que este valor. Esto " +"puede evitar tener una capa demasiado fina cuando la altura de la capa es " +"pequeña. 0 significa que este ajuste está desactivado y el grosor de la capa " +"inferior está absolutamente determinado por las capas de la cubierta inferior" + +msgid "Apply gap fill" +msgstr "Aplicar relleno de huecos" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"Activa el relleno de huecos para las superficies seleccionadas. La longitud " +"mínima de hueco que se rellenará puede controlarse desde la opción filtrar " +"huecos pequeños que aparece más abajo.\n" +"\n" +"Opciones: \n" +"1. En todas partes: Aplica el relleno de huecos a las superficies sólidas " +"superior, inferior e interna \n" +"2. Superficies superior e inferior: Aplica el relleno de huecos sólo a las " +"superficies superior e inferior. \n" +"3. En ninguna parte: Desactiva el relleno de huecos\n" + +msgid "Everywhere" +msgstr "En todas partes" + +msgid "Top and bottom surfaces" +msgstr "Superficies superior e inferior" + +msgid "Nowhere" +msgstr "En ninguna parte" + +msgid "Force cooling for overhang and bridge" +msgstr "Refrigeración forzada para el voladizo y el puente" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Habilite esta opción para optimizar la velocidad del ventilador de " +"refrigeración de la pieza para el voladizo y el puente para obtener una " +"mejor refrigeración" + +msgid "Fan speed for overhang" +msgstr "Velocidad del ventilador para el voladizo" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Forzar el ventilador de la pieza a esta velocidad cuando se imprime el " +"puente o el perímetro del voladizo que tiene un gran grado de voladizo. Al " +"forzar la refrigeración de los voladizos y puentes se puede obtener una " +"mejor calidad para estas piezas" + +msgid "Cooling overhang threshold" +msgstr "Umbral del voladizo de refrigeración" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Fuerza al ventilador de refrigeración a una velocidad específica cuando el " +"grado de voladizo de la pieza impresa excede este valor. Expresado como " +"porcentaje, indica la anchura de la línea sin soporte de la capa inferior. " +"0% m significa forzar la refrigeración de todo el perímetro exterior sin " +"importar el grado de voladizo" + +msgid "Bridge infill direction" +msgstr "Ángulo del relleno en puente" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Anulación del ángulo de puenteo. Si se deja a cero, el ángulo de puente se " +"calculará automáticamente. De lo contrario, se utilizará el ángulo " +"proporcionado para los puentes externos. Utilice 180° para el ángulo cero." + +msgid "Bridge density" +msgstr "Densidad de puente" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Densidad de puentes externos. 100% significa puente sólido. Por defecto es " +"100%." + +msgid "Bridge flow ratio" +msgstr "Ratio de flujo en puentes" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Disminuya este valor ligeramente (por ejemplo 0,9) para reducir la cantidad " +"de material para mejorar o evitar el hundimiento de puentes." + +msgid "Internal bridge flow ratio" +msgstr "Ratio de flujo de puentes internos" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"Este valor regula el grosor de la capa puente interna. Es la primera capa " +"sobre el relleno de baja densidad. Disminuya ligeramente este valor (por " +"ejemplo, 0,9) para mejorar la calidad de la superficie sobre el relleno de " +"baja densidad." + +msgid "Top surface flow ratio" +msgstr "Ratio de flujo en superficie superior" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Este factor afecta a la cantidad de material de para relleno sólido " +"superior. Puede disminuirlo ligeramente para obtener un acabado suave de " +"superficie" + +msgid "Bottom surface flow ratio" +msgstr "Ratio de flujo en superficie inferior" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" +"Este factor afecta a la cantidad de material para el relleno sólido inferior" + +msgid "Precise wall" +msgstr "Perímetro preciso" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"Mejore la precisión de la cubierta ajustando la separación entre perímetros " +"exteriores. Esto también mejora la consistencia de la capa. \n" +"Nota: Este ajuste sólo tendrá efecto si la secuencia de el perímetro está " +"configurada como Interior-Exterior" + +msgid "Only one wall on top surfaces" +msgstr "Sólo un perímetro en las capas superiores" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Sólo un perímetro en la capas superiores, para dar más espacio al patrón de " +"relleno superior" + +msgid "One wall threshold" +msgstr "Umbral para generar un solo perímetro" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Si una superficie superior debe ser impresa y está parcialmente cubierta por " +"otra capa, no será considerada una capa superior donde su anchura esté por " +"debajo ese valor. Esto puede ser de utilidad para que no se active el ajuste " +"perímetro en la parte superior' en las capas que solo deberían ser cubiertas " +"por perímetros. Este valor puede ser en mm o un % o del perímetro de " +"extrusión.\n" +"Advertencia: Si se activa, se pueden crear imperfecciones si tiene alguna " +"característica fina en la siguiente capa, como letras. Ajuste a 0 esta " +"opción para borrar esas imperfecciones." + +msgid "Only one wall on first layer" +msgstr "Solo un perímetro en la primera capa" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Usar solo un perímetro en la primera capa, para dar más espacio en el patrón " +"de relleno inferior" + +msgid "Extra perimeters on overhangs" +msgstr "Perímetros extra en voladizos" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Crear caminos de perímetros adicionales sobre voladizos pronunciados y áreas " +"donde los puentes no pueden ser anclados. " + +msgid "Reverse on odd" +msgstr "Invertir en impar" + +msgid "Overhang reversal" +msgstr "Inversión de voladizo" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"Extruya los perímetros que tienen una parte sobre un voladizo en sentido " +"inverso en las capas impares. Este patrón alterno puede mejorar " +"drásticamente los voladizos pronunciados.\n" +"\n" +"Este ajuste también puede ayudar a reducir la deformación de la pieza debido " +"a la reducción de tensiones en los perímetros de la pieza." + +msgid "Reverse only internal perimeters" +msgstr "Invertir solo los perímetros internos" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"Aplique la lógica de perímetros inversos sólo en los perímetros internos. \n" +"\n" +"Esta configuración reduce en gran medida las tensiones de la pieza, ya que " +"ahora se distribuyen en direcciones alternas. Esto debería reducir " +"deformaciones de la pieza mientras se mantiene la calidad de el perímetro " +"externo. Esta característica puede ser muy útil para materiales propensos a " +"deformarse, como ABS/ASA, y también para filamentos elásticos, como TPU y " +"Silk PLA. También puede ayudar a reducir deformaciones en regiones flotantes " +"en soportes.\n" +"\n" +"Para que este ajuste sea más eficaz, se recomienda establecer el Umbral " +"Inverso en 0 para que todos los perímetros internos se impriman en " +"direcciones alternas en las capas impares, independientemente de su ángulo " +"de voladizo." + +msgid "Bridge counterbore holes" +msgstr "Agujeros del contrafuerte del puente" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"Esta opción crea puentes para los orificios avellanados, lo que permite " +"imprimirlos sin soporte. \n" +"Los modos disponibles son:\n" +" 1. Ninguno: No se crea ningún puente. \n" +"2. Parcialmente Puenteado: Sólo se puentea una parte de la zona sin " +"soporte. \n" +"3. Capa de Sacrificio: Se crea una capa de sacrificio completa." + +msgid "Partially bridged" +msgstr "Parcialmente puenteado" + +msgid "Sacrificial layer" +msgstr "Capa de sacrificio" + +msgid "Reverse threshold" +msgstr "Umbral inverso" + +msgid "Overhang reversal threshold" +msgstr "Umbral de inversión de voladizo" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Número de mm que debe tener el voladizo para que la inversión se considere " +"útil. Puede ser un % o de la anchura del perímetro.\n" +"El valor 0 permite la inversión en todas las capas impares." + +msgid "Classic mode" +msgstr "Modo clásico" + +msgid "Enable this option to use classic mode" +msgstr "Activar esta opción para usar el modo clásico" + +msgid "Slow down for overhang" +msgstr "Disminución de velocidad de voladizo" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Habilite esta opción para ralentizar la impresión para diferentes grados de " +"voladizo" + +msgid "Slow down for curled perimeters" +msgstr "Reducir velocidad para perímetros curvados" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Active está opción para bajar la velocidad de impresión en las áreas donde " +"potencialmente podrían formarse perímetros curvados" + +msgid "mm/s or %" +msgstr "mm/s o %" + +msgid "External" +msgstr "Externo" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Velocidad del puente y perímetro completo en voladizo" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "Interno" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Velocidad del puente interno. Si el valor es expresado como porcentaje, será " +"calculado en base a bridge_speed. El valor por defecto es 150%." + +msgid "Brim width" +msgstr "Ancho del borde de adherencia" + +msgid "Distance from model to the outermost brim line" +msgstr "Distancia del modelo a la línea más externa del borde de adherencia" + +msgid "Brim type" +msgstr "Tipo de borde de adherencia" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Esto controla la generación del borde de adherencia en el lado exterior y/o " +"interior de los modelos. Auto significa que el ancho de borde de adherencia " +"es analizado y calculado automáticamente." + +msgid "Brim-object gap" +msgstr "Espacio borde de adherencia-objeto" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Un hueco entre la línea más interna del borde de adherencia y el objeto " +"puede hacer que el borde de adherencia se retire más fácilmente" + +msgid "Brim ears" +msgstr "Orejas de borde" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "Solo dibujar bordes sobre los bordes afilados del modelo." + +msgid "Brim ear max angle" +msgstr "Máximo ángulo del borde de la oreja" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Máximo ángulo para dejar que el borde de oreja aparezca.\n" +"Si se ajusta a 0, no se creará ningún borde.\n" +"Si se ajusta a ~180, se creará el borde en todo menos en las secciones " +"rectas." + +msgid "Brim ear detection radius" +msgstr "Radio de detección de borde de oreja" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"La geometría se verá diezmada antes de detectar angulos agudos. Este " +"parámetro indica la longitud mínima de desviación para el diezmado\n" +"0 para desactivar" + +msgid "Compatible machine" +msgstr "Máquina compatible" + +msgid "upward compatible machine" +msgstr "máquina compatible ascendente" + +msgid "Compatible machine condition" +msgstr "Condición de máquina compatible" + +msgid "Compatible process profiles" +msgstr "Perfiles de proceso compatibles" + +msgid "Compatible process profiles condition" +msgstr "Condición de los perfiles de proceso compatibles" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Imprimir la secuencia, capa por capa u objeto por objeto" + +msgid "By layer" +msgstr "Por capa" + +msgid "By object" +msgstr "Por objeto" + +msgid "Intra-layer order" +msgstr "Orden dentro de la capa" + +msgid "Print order within a single layer" +msgstr "Orden de impresión en una sola capa" + +msgid "As object list" +msgstr "Como lista de objetos" + +msgid "Slow printing down for better layer cooling" +msgstr "" +"Reducir la velocidad de impresión para mejorar el refrigeración de las capas" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Active esta opción para reducir la velocidad de impresión para que el tiempo " +"de la capa final no sea inferior al umbral de tiempo de la capa en \"Umbral " +"de velocidad máxima del ventilador\", de modo que la capa pueda enfriarse " +"durante más tiempo. Esto puede mejorar la calidad del refrigeración para las " +"agujas y los detalles pequeños" + +msgid "Normal printing" +msgstr "Impresión normal" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"La aceleración por defecto tanto de la impresión normal como del " +"desplazamiento excepto la primera capa" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Perfil de filamento por defecto" + +msgid "Default filament profile when switch to this machine profile" +msgstr "" +"Perfil de filamento por defecto cuando se cambia a este perfil de máquina" + +msgid "Default process profile" +msgstr "Perfil de proceso por defecto" + +msgid "Default process profile when switch to this machine profile" +msgstr "" +"Perfil de proceso por defecto cuando se cambia a este perfil de máquina" + +msgid "Activate air filtration" +msgstr "Activar filtración de aire" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" +"Activar para una mejor filtración del aire. Comando de G-Code: M106 P3 " +"S(0-255)" + +msgid "Fan speed" +msgstr "Velocidad del ventilador" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Velocidad del ventilador de extracción durante la impresión, esta velocidad " +"sobrescribirá la velocidad en el GCode personalizado del filamento" + +msgid "Speed of exhaust fan after printing completes" +msgstr "Velocidad del ventilador de extracción una vez finalizada la impresión" + +msgid "No cooling for the first" +msgstr "No refrigerar las primeras" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Desactivar todos los ventiladores de refrigeración en las primeras capas. El " +"ventilador de la primera capa debe estar apagado para conseguir una mejor " +"adhesión de la bandeja de impresión" + +msgid "Don't support bridges" +msgstr "No soportar puentes" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"No crear soportes en toda el área de los puentes. Los puentes normalmente " +"pueden imprimirse directamente sin soporte si no son muy largos" + +msgid "Thick bridges" +msgstr "Puentes gruesos" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Si están activados, los puentes son más fiables, pueden salvar distancias " +"más largas, pero pueden tener peor aspecto. Si están desactivados, los " +"puentes se ven mejor pero son fiables sólo para distancias más cortas." + +msgid "Thick internal bridges" +msgstr "Puentes gruesos internos" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"Si está activada, se utilizarán puentes internos gruesos. Normalmente se " +"recomienda tener esta función activada. Sin embargo, considera desactivarla " +"si utilizas boquillas grandes." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "No filtrar los pequeños puentes internos (beta)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"Esta opción puede ayudar a reducir el pillowing en superficies superiores en " +"modelos muy inclinados o curvados.\n" +"\n" +"Por defecto, los pequeños puentes internos se filtran y el relleno sólido " +"interno se imprime directamente sobre el relleno de baja densidad. Esto " +"funciona bien en la mayoría de los casos, acelerando la impresión sin " +"comprometer demasiado la calidad de la superficie superior. \n" +"\n" +"Sin embargo, en modelos muy inclinados o curvados, especialmente cuando se " +"utiliza una densidad de relleno de baja densidad demasiado baja, esto puede " +"dar lugar a la curvatura del relleno sólido no soportado, causando " +"pillowing.\n" +"\n" +"Activando esta opción se imprimirá la capa puente interna sobre el relleno " +"sólido interno ligeramente sin soporte. Las opciones siguientes controlan la " +"cantidad de filtrado, es decir, la cantidad de puentes internos creados.\n" +"\n" +"Desactivado - Desactiva esta opción. Este es el comportamiento por defecto y " +"funciona bien en la mayoría de los casos.\n" +"\n" +"Filtrado limitado - Crea puentes internos en superficies muy inclinadas, " +"evitando crear puentes internos innecesarios. Funciona bien en la mayoría de " +"los modelos difíciles.\n" +"\n" +"Sin filtro: crea puentes interiores en todos los posibles voladizos " +"interiores. Esta opción es útil para modelos de superficie superior muy " +"inclinada. Sin embargo, en la mayoría de los casos crea demasiados puentes " +"innecesarios." + +msgid "Disabled" +msgstr "Deshabilitados" + +msgid "Limited filtering" +msgstr "Filtrado limitado" + +msgid "No filtering" +msgstr "Sin filtro" + +msgid "Max bridge length" +msgstr "Distancia máxima de puentes" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Esta es la longitud máxima de los puentes que no necesitan soporte. Ajústalo " +"a 0 si quieres que todos los puentes sean soportados, y ajústalo a un valor " +"muy grande si no quieres que ningún puente sea soportado." + +msgid "End G-code" +msgstr "G-Code final" + +msgid "End G-code when finish the whole printing" +msgstr "Finalizar el G-Code cuando termine la impresión completa" + +msgid "Between Object Gcode" +msgstr "Entre Objetos G-Code" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Insertar G-Code entre objetos. Este parámetro sólo tendrá efecto cuando " +"imprima sus modelos objeto por objeto" + +msgid "End G-code when finish the printing of this filament" +msgstr "Terminar el G-Code cuando se termine de imprimir este filamento" + +msgid "Ensure vertical shell thickness" +msgstr "Detección de perímetros delgados" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"Añadir relleno sólido cerca de superficies inclinadas para garantizar el " +"grosor vertical del perímetro (capas sólidas superior+inferior)\n" +"Ninguno: No se añadirá relleno sólido en ninguna parte.\n" +"Precaución: Utilice esta opción con cuidado si su modelo tiene superficies " +"inclinadas\n" +"Sólo crítico: Evite añadir relleno sólido en perímetros\n" +"Moderado: Añadir relleno sólido sólo para superficies muy inclinadas \n" +"Todas: Añadir relleno sólido para todas las superficies inclinadas " +"adecuadas\n" +"El valor por defecto es Todas." + +msgid "Critical Only" +msgstr "Sólo Críticos" + +msgid "Moderate" +msgstr "Moderado" + +msgid "Top surface pattern" +msgstr "Patrón de relleno cubierta superior" + +msgid "Line pattern of top surface infill" +msgstr "Patrón de líneas del relleno de la superficie superior" + +msgid "Concentric" +msgstr "Concéntrico" + +msgid "Rectilinear" +msgstr "Rectilíneo" + +msgid "Monotonic" +msgstr "Monotónico" + +msgid "Monotonic line" +msgstr "Línea Contínua" + +msgid "Aligned Rectilinear" +msgstr "Alineación Rectilinea" + +msgid "Hilbert Curve" +msgstr "Curva Hilbert" + +msgid "Archimedean Chords" +msgstr "Acordes de Arquímedes" + +msgid "Octagram Spiral" +msgstr "Octograma en Espiral" + +msgid "Bottom surface pattern" +msgstr "Patrón de relleno de cubierta inferior" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "" +"Patrón de líneas del relleno de la superficie de la cubierta inferior, no " +"del relleno del puente" + +msgid "Internal solid infill pattern" +msgstr "Patrón de relleno sólido interno" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"Patrón lineal de relleno sólido interno, si se activa la detección de " +"relleno sólido interno nattow, se utilizará el patrón concéntrico para el " +"área pequeña." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Ancho de extrusión del perímetro externo. Si se expresa cómo %, se calculará " +"sobre el diámetro de la boquilla." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Velocidad del perímetro exterior, que es el más externo y visible. Se " +"utiliza para ser más lento que la velocidad del perímetro interior para " +"obtener una mejor calidad." + +msgid "Small perimeters" +msgstr "Perímetros pequeños" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"Este ajuste independiente afectará a la velocidad de los perímetros con " +"radio <= small_perimeter_threshold (normalmente orificios). Si se expresa " +"como porcentaje (por ejemplo: 80%) se calculará sobre el ajuste de velocidad " +"del perímetro exterior anterior. Póngalo a cero para auto." + +msgid "Small perimeters threshold" +msgstr "Umbral Perímetral Pequeño" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"Esto configura el umbral para longitud de perímetro pequeño. El umbral por " +"defecto es 0mm" + +msgid "Walls printing order" +msgstr "Orden de impresión de perímetros" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"Imprima la secuencia de los perímetros internos (interiores) y externos " +"(exteriores). \n" +"\n" +"Utilice Interior/Exterior para obtener los mejores voladizos. Esto se debe a " +"que los perímetros salientes pueden adherirse a un perímetro vecino durante " +"la impresión. Sin embargo, esta opción da como resultado una calidad de " +"superficie ligeramente reducida, ya que el perímetro externo se deforma al " +"aplastarse contra el perímetro interno.\n" +"\n" +"Utilice Interior/Exterior/Interior para obtener el mejor acabado de " +"superficie exterior y precisión dimensional, ya que el perímetro exterior se " +"imprime sin perturbaciones desde un perímetro interior. Sin embargo, el " +"rendimiento del voladizo se reducirá al no haber un perímetro interno contra " +"el que imprimir el perímetro externo. Esta opción requiere un mínimo de 3 " +"perímetros para ser efectiva, ya que imprime primero los perímetros " +"interiores a partir del 3er perímetro, después el perímetro exterior y, " +"finalmente, el primer perímetro interior. En la mayoría de los casos, se " +"recomienda utilizar esta opción en lugar de la opción Exterior/Interior. \n" +"\n" +"Utilice Exterior/Interior para obtener la misma calidad en los perímetros " +"exteriores y la misma precisión dimensional que con la opción Interior/" +"Exterior/Interior. Sin embargo, las uniones Z parecerán menos consistentes " +"ya que la primera extrusión de una nueva capa comienza en una superficie " +"visible.\n" +" " + +msgid "Inner/Outer" +msgstr "Interno/Externo" + +msgid "Outer/Inner" +msgstr "Externo/Interno" + +msgid "Inner/Outer/Inner" +msgstr "Interno/Externo/Interno" + +msgid "Print infill first" +msgstr "Imprimir relleno primero" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" +"Orden de los perímetros/relleno. Cuando la casilla no está marcada, los " +"muros se imprimen primero, lo que funciona mejor en la mayoría de los " +"casos.\n" +"\n" +"Imprimir primero el relleno puede ayudar con voladizos extremos ya que los " +"muros tienen el relleno vecino al que adherirse. Sin embargo, el relleno " +"empujará ligeramente hacia fuera los perímetros impresos donde se une a " +"ellos, lo que resulta en un peor acabado de la superficie exterior. También " +"puede hacer que el relleno brille a través de las superficies externas de la " +"pieza." + +msgid "Wall loop direction" +msgstr "Dirección del bucle de perímetro" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"La dirección en la que se extruyen los bucles del muro cuando se mira desde " +"arriba.\n" +"\n" +"Por defecto, todos los muros se extruyen en el sentido contrario a las " +"agujas del reloj, a menos que esté activada la opción Invertir en impares. " +"Establecer esta opción a cualquier opción que no sea Auto forzará la " +"dirección de el perímetro independientemente de la opción Invertir en " +"impar.\n" +"\n" +"Esta opción se desactivará si se activa el modo jarrón en espiral." + +msgid "Counter clockwise" +msgstr "En sentido contrario a las agujas del reloj" + +msgid "Clockwise" +msgstr "En el sentido de las agujas del reloj" + +msgid "Height to rod" +msgstr "Altura a la barra" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Distancia de la punta de la boquilla hasta la varilla baja. Usado para " +"evitar colisiones en las impresiones por objeto." + +msgid "Height to lid" +msgstr "Altura hasta la tapa" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Distancia de la punta de la boquilla a la tapa. Usado para evitar la " +"colisión con la impresión por objeto." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"El radio de claridad alrededor del extrusor. Se utiliza para evitar la " +"colisión con la impresión por objeto." + +msgid "Nozzle height" +msgstr "Altura de la boquilla" + +msgid "The height of nozzle tip." +msgstr "La altura de la punta de la boquilla." + +msgid "Bed mesh min" +msgstr "Malla de cama mínimo" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Esta opción establece el punto mínimo para el área de malla de la cama " +"permitida. Debido al desplazamiento XY de la sonda, la mayoría de las " +"impresoras no pueden sondear toda la cama. Para garantizar que el punto de " +"la sonda no salga del área de la cama, los puntos mínimo y máximo de la " +"malla de la cama deben establecerse adecuadamente. Snapmaker Orca se asegura de " +"que los valores de madaptive_bed_mesh_min/adaptive_bed_mesh_max no superen " +"estos puntos mínimo/máximo. Esta información normalmente se puede obtener " +"del fabricante de la impresora. La configuración por defecto es (-99999, " +"-99999), lo que significa que no hay límites, lo que permite el sondeo a " +"través de toda la cama." + +msgid "Bed mesh max" +msgstr "Malla de cama máxima" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Esta opción establece el punto máximo para el área de malla de la cama " +"permitida. Debido al desplazamiento XY de la sonda, la mayoría de las " +"impresoras no pueden sondear todo el lecho. Para garantizar que el punto de " +"la sonda no salga del área de la cama, los puntos mínimo y máximo de la " +"malla de la cama deben establecerse adecuadamente. Snapmaker Orca se asegura de " +"que los valores de daptive_bed_mesh_min/adaptive_bed_mesh_max no superen " +"estos puntos mínimo/máximo. Esta información normalmente se puede obtener " +"del fabricante de la impresora. La configuración por defecto es (99999, " +"99999), lo que significa que no hay límites, lo que permite el sondeo a " +"través de toda la cama." + +msgid "Probe point distance" +msgstr "Distancia de punto de sonda" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"Esta opción establece la distancia preferida entre puntos de sonda (tamaño " +"de cuadrícula) para las direcciones X e Y, siendo el valor predeterminado 50 " +"mm tanto para X como para Y." + +msgid "Mesh margin" +msgstr "Margen de malla" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" +"Esta opción determina la distancia adicional en la que debe expandirse el " +"área de malla del lecho de adaptación en las direcciones XY." + +msgid "Extruder Color" +msgstr "Color del extrusor" + +msgid "Only used as a visual help on UI" +msgstr "Sólo se utiliza como ayuda visual en la interfaz de usuario" + +msgid "Extruder offset" +msgstr "Offset del extrusor" + +msgid "Flow ratio" +msgstr "Proporción de flujo" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"El material puede tener un cambio volumétrico después de cambiar entre " +"estado fundido y estado cristalino. Este ajuste cambia proporcionalmente " +"todo el flujo de extrusión de este filamento en G-Code. El rango de valores " +"recomendado es entre 0.95 y 1.05. Tal vez usted puede ajustar este valor " +"para obtener una superficie plana adecuada cuando hay un ligero sobre flujo " +"o infra flujo" + +msgid "Enable pressure advance" +msgstr "Activar Avance de Presión Lineal" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Al activar Avance de Presión Lineal, el resultado de auto calibración se " +"sobrescribirá." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "Pressure Advance(Klipper) AKA Factor de avance lineal(Marlin)" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"Ancho de extrusión por defecto si otros anchos de línea no están a 0. Si se " +"expresa cómo %, se calculará sobre el diámetro de la boquilla." + +msgid "Keep fan always on" +msgstr "Mantener el ventilador siempre encendido" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Si se activa este ajuste, el ventilador nunca se detendrá y funcionará al " +"menos a la velocidad mínima para reducir la frecuencia de arranque y parada" + +msgid "Don't slow down outer walls" +msgstr "No frenar en los perímetros externos" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" +"Si está activada, esta configuración garantizará que los perímetros externos " +"no se ralenticen para cumplir el tiempo de capa mínimo. Esto es " +"especialmente útil en los siguientes escenarios:\n" +"\n" +" 1. Para evitar cambios de brillo al imprimir filamentos brillantes\n" +"2. Para evitar cambios en la velocidad de el perímetros externo que pueden " +"crear ligeros artefactos de perímetro que aparecen como z banding\n" +"3. Para evitar imprimir a velocidades que provoquen VFA (artefactos finos) " +"en las perímetros externas\n" +"\n" + +msgid "Layer time" +msgstr "Tiempo de capa" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"El ventilador de refrigeración de la pieza se activará para las capas cuyo " +"tiempo estimado sea inferior a este valor. La velocidad del ventilador se " +"interpola entre las velocidades mínima y máxima del ventilador según el " +"tiempo de impresión de las capas" + +msgid "Default color" +msgstr "Color por defecto" + +msgid "Default filament color" +msgstr "Color de filamento por defecto" + +msgid "Filament notes" +msgstr "Anotaciones de filamento" + +msgid "You can put your notes regarding the filament here." +msgstr "Puede colocar sus anotaciones acerca del filamento aquí." + +msgid "Required nozzle HRC" +msgstr "HRC de boquilla requerido" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"HRC mínimo de boquilla requerido para imprimir el filamento. Cero significa " +"no comprobar el HRC de la boquilla." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Este ajuste representa la cantidad de volumen de filamento puede ser " +"derretido extruido por segundo. La velocidad de impresión está limitado por " +"cuanta velocidad, en caso de velocidad demasiado alta o no razonable. No " +"puede ser cero" + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Tiempo de carga de filamento" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Tiempo para cargar un nuevo filamento cuando se cambia de filamento. Sólo " +"para estadísticas" + +msgid "Filament unload time" +msgstr "Tiempo de descarga del filamento" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Tiempo para descargar el filamento viejo cuando se cambia de filamento. Sólo " +"para las estadísticas" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"El diámetro del filamento se utiliza para calcular la extrusión en el G-" +"Code, por lo que es importante y debe ser preciso" + +msgid "Pellet flow coefficient" +msgstr "Coeficiente de Flujo de Pellets" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" +"El coeficiente de flujo de pellets se obtiene de forma empírica y permite " +"calcular el volumen para impresoras de pellets.\n" +"\n" +"Internamente se convierte a filament_diameter. Todos los demás cálculos de " +"volumen siguen siendo los mismos.\n" +"\n" +"diámetro_filamento = sqrt( (4 * coeficiente_flujo_pellets) / PI )" + +msgid "Shrinkage" +msgstr "Contracción" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Introduzca el porcentaje de encogimiento que tendrá el filamento después de " +"enfriarse ('94% i' si mide 94mm en lugar de 100mm). La pieza se escalará en " +"X-Y para compensar. Sólo se tiene en cuenta el filamento utilizado para el " +"perímetro.\n" +"Asegúrese de dejar suficiente espacio entre los objetos, ya que esta " +"compensación se realiza después de las comprobaciones." + +msgid "Loading speed" +msgstr "Velocidad de carga" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Velocidad usada para cargar el filamento de la torre de purga." + +msgid "Loading speed at the start" +msgstr "Velocidad inicial de carga" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Velocidad usada en la fase de carga temprana." + +msgid "Unloading speed" +msgstr "Velocidad de descarga" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Velocidad usada para descargar el filamento en la torre de purga (no afecta " +"a la parte inicial de la descarga justo después del moldeado de extremo)." + +msgid "Unloading speed at the start" +msgstr "Velocidad inicial de descarga" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Velocidad empleada para descargar la punta del filamento justo después del " +"moldeado de extremo." + +msgid "Delay after unloading" +msgstr "Retraso tras descarga" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Tiempo de espera después de la descarga de filamento. Esto debería ayudar a " +"unos cambios de herramienta confiables con materiales flexibles que " +"necesitan más tiempo para encogerse a las dimensiones originales." + +msgid "Number of cooling moves" +msgstr "Cantidad de movimientos de refrigeración" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"El filamento se enfría moviéndose hacía atrás y hacía delante en los tubos " +"de refrigeración. Especifique la cantidad de movimientos." + +msgid "Speed of the first cooling move" +msgstr "Velocidad del primer movimiento de refrigeración" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "" +"Los movimiento de refrigeración van acelerando gradualmente a esta velocidad." + +msgid "Minimal purge on wipe tower" +msgstr "Purga mínima en la torre de purga" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"Tras un cambio de herramienta, es posible que no se conozca la posición " +"exacta del filamento recién cargado dentro de la boquilla y que la presión " +"del filamento aún no sea estable. Antes de purgar el cabezal de impresión en " +"un relleno o un objeto de sacrificio, Snapmaker Orca siempre cebará esta " +"cantidad de material en la torre de purga para producir sucesivas " +"extrusiones de relleno u objetos de sacrificio de forma fiable." + +msgid "Speed of the last cooling move" +msgstr "La velocidad del último movimiento de refrigeración" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "" +"Los movimientos de refrigeración se aceleran gradualmente hacía esta " +"velocidad." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Tiempo que tarda el firmware de la impresora (o la Unidad Multi Material " +"2.0) en cargar un nuevo filamento durante un cambio de herramienta (al " +"ejecutar el T-Code). El estimador de tiempo del G-Code añade este tiempo al " +"tiempo total de impresión." + +msgid "Ramming parameters" +msgstr "Parámetros de moldeado de extremo" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"El Moldeado de ExtremoDialog edita esta cadena y contiene los parámetros " +"específicos de moldeado de extremo." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Tiempo que tarda el firmware (para la unidad Multi Material 2.0) en " +"descargar el filamento durante el cambio de herramienta ( cuando se ejecuta " +"el T-Code). Esta duración se añade a la duración total de impresión estimada " +"del G-Code." + +msgid "Enable ramming for multitool setups" +msgstr "Activar moldeado de extremo para configuraciones multiherramienta" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Llevar a cabo el moldeado de extremo cuando se usa una impresora multi " +"herramienta (es decir, cuando el 'Extrusor Único Multimaterial' en los " +"Ajustes de Impresora está desmarcado). Cuando está marcado, una pequeña " +"cantidad de filamento es extruida rápidamente en la torre de purga, justo " +"antes del cambio de herramienta. Esta opción se usa solamente cuando la " +"torre de purga está activada." + +msgid "Multitool ramming volume" +msgstr "Volumen de Moldeado de Extremo multiherramienta" + +msgid "The volume to be rammed before the toolchange." +msgstr "El volumen de Moldeado de Extremo antes del cambio de herramienta." + +msgid "Multitool ramming flow" +msgstr "Flujo de Moldeado de Extremo multiherramienta" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "" +"Flujo usado por el Moldeado de Extremo de filamento antes del cambio de " +"cabezal." + +msgid "Density" +msgstr "Densidad" + +msgid "Filament density. For statistics only" +msgstr "Densidad del filamento. Sólo para las estadísticas" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "El tipo de material del filamento" + +msgid "Soluble material" +msgstr "Material soluble" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"El material soluble se utiliza habitualmente para imprimir el soporte y la " +"interfaz de soporte" + +msgid "Support material" +msgstr "Material de soporte" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"El material de soporte se utiliza habitualmente para imprimir el soporte e " +"interfaces de soporte" + +msgid "Softening temperature" +msgstr "Temperatura de ablandado" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"El material se reblandece a esta temperatura, por lo que cuando la " +"temperatura de la cama es igual o superior a ella, es muy recomendable abrir " +"la puerta frontal y/o retirar el cristal superior para evitar atascos." + +msgid "Price" +msgstr "Precio" + +msgid "Filament price. For statistics only" +msgstr "Precio del filamento. Sólo para las estadísticas" + +msgid "money/kg" +msgstr "dinero/kg" + +msgid "Vendor" +msgstr "Fabricante" + +msgid "Vendor of filament. For show only" +msgstr "Fabricante del filamento. Para mostrar solamente" + +msgid "(Undefined)" +msgstr "(No definido)" + +msgid "Sparse infill direction" +msgstr "Dirección de relleno de baja densidad" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Ángulo para el patrón de relleno de baja densidad, que controla el inicio o " +"la dirección principal de la línea" + +msgid "Solid infill direction" +msgstr "Dirección del relleno sólido" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Ángulo para el patrón de relleno sólido, que controla el inicio o la " +"dirección principal de la línea" + +msgid "Rotate solid infill direction" +msgstr "Cambiar la dirección del relleno sólido" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "Cambiar 90° la dirección del relleno sólido para cada capa." + +msgid "Sparse infill density" +msgstr "Densidad de relleno de baja densidad" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"Densidad del relleno de baja densidad interno, el 100% convierte el relleno " +"de baja densidad en relleno sólido y se utilizará el patrón de relleno " +"sólido interno" + +msgid "Sparse infill pattern" +msgstr "Patrón de relleno de baja densidad" + +msgid "Line pattern for internal sparse infill" +msgstr "Patrón de líneas para el relleno interno de baja densidad" + +msgid "Grid" +msgstr "Rejilla" + +msgid "Line" +msgstr "Lineal" + +msgid "Cubic" +msgstr "Cúbico" + +msgid "Tri-hexagon" +msgstr "Tri-hexágono" + +msgid "Gyroid" +msgstr "Giroide" + +msgid "Honeycomb" +msgstr "Panal de abeja" + +msgid "Adaptive Cubic" +msgstr "Cúbico Adaptativo" + +msgid "3D Honeycomb" +msgstr "Panal 3D" + +msgid "Support Cubic" +msgstr "Soporte Cúbico" + +msgid "Lightning" +msgstr "Rayo" + +msgid "Cross Hatch" +msgstr "Rayado Cruzado" + +msgid "Sparse infill anchor length" +msgstr "Longitud del anclaje de relleno de baja densidad" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"Conectar una línea de relleno a un perímetro interno con un segmento corto " +"de un perímetro adicional. Si se expresa como porcentaje (ejemplo: 15%) este " +"es calculado sobre el ancho de extrusión de relleno. Snapmaker Orca intenta " +"conectar dos líneas de relleno cercanas a un segmento de perímetro corto. Si " +"no se encuentra ningún segmento más corto que relleno_anclaje_max, la línea " +"de relleno se conecta a un segmento de perímetro en un solo lado y la de " +"relleno se conecta a un segmento de perímetro en un solo lado y la longitud " +"del ancho de segmento de perímetro escogido se limita a este parámetro, pero " +"no más largo que anclage_longitud_max. \n" +"Configure este parámetro a cero para deshabilitar los perímetros de anclaje " +"Configure este parámetro a cero para deshabilitar los perímetros de anclaje " +"conectados a una sola línea de relleno." + +msgid "0 (no open anchors)" +msgstr "0 (no abrir anclajes)" + +msgid "1000 (unlimited)" +msgstr "1000 (ilimitada)" + +msgid "Maximum length of the infill anchor" +msgstr "Máxima longitud de relleno del anclaje" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"Conectar la línea de relleno a un perímetro interno con un segmento corto de " +"un perímetro adicional. Si se expresa como porcentaje (por ejemplo: 15%) " +"este se calcula sobre el ancho de relleno de extrusión. Snapmaker Orca intenta " +"conectar dos líneas de relleno cercanas a un segmento de perímetro corto. Si " +"no hay ningún segmento más corto que este parámetro, esta líena de relleno " +"se conecta a un segmento de perímetro solamente a un lado y la longitud del " +"segmento de perìmetro escogida se limita a relleno_anclaje, pero no más alto " +"que este parámetro. \n" +"Si se deja a 0, el algoritmo antiguo para conexión de relleno se usará, esto " +"debería drear el mismo resultado que con 1000 y 0." + +msgid "0 (Simple connect)" +msgstr "0 (Conexión simple)" + +msgid "Acceleration of outer walls" +msgstr "Aceleración de los perímetros externos" + +msgid "Acceleration of inner walls" +msgstr "Aceleración de los perímetros internos" + +msgid "Acceleration of travel moves" +msgstr "Aceleración de movimiento de viaje" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Aceleración del relleno de la superficie superior. El uso de un valor más " +"bajo puede mejorar la calidad de la superficie superior" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Aceleración del perímetro externo. Usando un valor menor puede mejorar la " +"calidad" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Aceleración de los puentes. Si el valor es expresado como un porcentaje (por " +"ejemplo 50%), se calculará basándose en la aceleración del perímetro externo." + +msgid "mm/s² or %" +msgstr "mm/s² o %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Aceleración de relleno de baja densidad. Si el valor se expresa en " +"porcentaje (por ejemplo 100%), se calculará basándose en la aceleración por " +"defecto." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"Aceleración de relleno sólido interno. Si el valor se expresa como " +"porcentaje (por ejemplo 100%), este se calculará basándose en la aceleración " +"por defecto." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Aceleración de la primera capa. El uso de un valor más bajo puede mejorar la " +"adherencia de la bandeja de impresión" + +msgid "Enable accel_to_decel" +msgstr "Activar acel_a_decel" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "El max_accel_to_decel de Klipper será ajustado automáticamente" + +msgid "accel_to_decel" +msgstr "accel_to_decel" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "El max_accel_to_decel de Klipper se ajustará a este %% de aceleración" + +msgid "Jerk of outer walls" +msgstr "Jerk de los perímetros externos" + +msgid "Jerk of inner walls" +msgstr "Jerk de los perímetros internos" + +msgid "Jerk for top surface" +msgstr "Jerk de la superficie superior" + +msgid "Jerk for infill" +msgstr "Jerk de relleno" + +msgid "Jerk for initial layer" +msgstr "Jerk de la primera capa" + +msgid "Jerk for travel" +msgstr "Jerk de viaje" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Ancho de extrusión de la primera capa. Si se expresa como %, se calculará " +"sobre el diámetro de la boquilla." + +msgid "Initial layer height" +msgstr "Altura de la primera capa" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Altura de la primera capa. Hacer que la altura de la primera capa sea " +"ligeramente gruesa puede mejorar la adherencia de la bandeja de impresión" + +msgid "Speed of initial layer except the solid infill part" +msgstr "Velocidad de la primera capa excepto la parte sólida de relleno" + +msgid "Initial layer infill" +msgstr "Relleno de la primera capa" + +msgid "Speed of solid infill part of initial layer" +msgstr "Velocidad de la parte de relleno sólido de la primera capa" + +msgid "Initial layer travel speed" +msgstr "Velocidad de la primera capa" + +msgid "Travel speed of initial layer" +msgstr "Velocidad de viaje de primera capa" + +msgid "Number of slow layers" +msgstr "Número de capas lentas" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"Las primeras capas se imprimen más lentamente de lo normal. La velocidad se " +"incrementa gradualmente de una forma lineal sobre un número específico de " +"capas." + +msgid "Initial layer nozzle temperature" +msgstr "Temperatura de la boquilla de la primera capa" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" +"Temperatura de la boquilla para imprimir la primera capa cuando se utiliza " +"este filamento" + +msgid "Full fan speed at layer" +msgstr "Velocidad máxima del ventilador en la capa" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"La velocidad de ventilador se incrementará linealmente de cero a " +"\"close_fan_the_first_x_layers\" al máximo de capa \"full_fan_speed_layer\". " +"\"full_fan_speed_layer\" se ignorará si es menor que " +"\"close_fan_the_first_x_layers\", en cuyo caso el ventilador funcionará al " +"máximo permitido de capa \"close_fan_the_first_x_layers\" + 1." + +msgid "layer" +msgstr "Capa" + +msgid "Support interface fan speed" +msgstr "Velocidad de ventilador de interfaz de soporte" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"La velocidad de ventilador se fuerza durante todas interfaces de soporte, " +"será capaz de debilitar sus uniones con una velocidad de ventilador más alta." +"Solo puede ser sobreescrita deshabilitando disable_fan_first_layers." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Se puede imprimir el perímetro de forma aleatoria, de modo que la superficie " +"tenga un aspecto rugoso. Este ajuste controla la posición difusa" + +msgid "Contour" +msgstr "Contorno" + +msgid "Contour and hole" +msgstr "Contorno y orificio" + +msgid "All walls" +msgstr "Todas los perímetros" + +msgid "Fuzzy skin thickness" +msgstr "Distancia del punto de piel difusa" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"La anchura dentro de la cual se va a jitear. Se aconseja que esté por debajo " +"de la anchura de la línea del perímetro exterior" + +msgid "Fuzzy skin point distance" +msgstr "Distancia al punto de superficie irregular" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"La diatancia media entre los puntos aleatorios introducidos en cada segmento " +"de línea" + +msgid "Apply fuzzy skin to first layer" +msgstr "Aplicar piel difusa a la primera capa" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "Si se aplica piel difusa en la primera capa" + +msgid "Filter out tiny gaps" +msgstr "Filtrar pequeños huecos" + +msgid "Layers and Perimeters" +msgstr "Capas y Perímetros" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "" +"Filtra los huecos menores que el umbral especificado. Este ajuste no " +"afectará a las capas superior/inferior" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Velocidad de relleno del hueco. El hueco suele tener una anchura de línea " +"irregular y debe imprimirse más lentamente" + +msgid "Precise Z height" +msgstr "Altura Z Precisa (Experimental)" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Habilite esta opción para obtener la altura Z precisa del objeto después del " +"corte. Obtendrá la altura precisa del objeto ajustando las alturas de las " +"últimas capas. Tenga en cuenta que se trata de un parámetro experimental." + +msgid "Arc fitting" +msgstr "Activar movimientos en arco" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" +"Habilite esta opción para obtener un archivo de G-Code con los movimientos " +"G2 y G3. La tolerancia de ajuste es la misma que la resolución.\n" +"\n" +"Nota: Para máquinas klipper, se recomienda desactivar esta opción. Klipper " +"no se beneficia de los comandos de arco ya que estos son divididos de nuevo " +"en segmentos de línea por el firmware. El resultado es una reducción de la " +"calidad de la superficie, ya que los segmentos de línea son convertidos en " +"arcos por la cortadora y de nuevo en segmentos de línea por el firmware." + +msgid "Add line number" +msgstr "Añadir número de línea" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Active esta opción para añadir el número de línea (Nx) al principio de cada " +"línea de G-Code" + +msgid "Scan first layer" +msgstr "Escanear la primera capa" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Active esta opción para que la cámara de la impresora pueda comprobar la " +"calidad de la primera capa" + +msgid "Nozzle type" +msgstr "Tipo de boquilla" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"El material metálico de la boquilla. Esto determina la resistencia a la " +"abrasión de la boquilla, y qué tipo de filamento se puede imprimir" + +msgid "Undefine" +msgstr "Indefinido" + +msgid "Hardened steel" +msgstr "Acero endurecido" + +msgid "Stainless steel" +msgstr "Acero inoxidable" + +msgid "Brass" +msgstr "Latón" + +msgid "Nozzle HRC" +msgstr "HRC Boquilla" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"La dureza de la boquilla. Cero significa no comprobará la dureza de la " +"boquilla durante el laminado." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Estructura de la impresora" + +msgid "The physical arrangement and components of a printing device" +msgstr "Disposición física y componentes de un dispositivo de impresión" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "Mejor posición de los objetos" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Mejor auto posicionamiento de los objetos en el intervalo [0,1] con respecto " +"a la forma de la cama." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"Activar esta opción si la máquina dispone de ventilador auxiliar de " +"refrigeración de piezas. Comando G-Code: M106 P2 S(0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Inicia el ventilador un número de segundos antes que el tiempo de inicio " +"objetivo (puede usar segundos fraccionales). Se asume aceleración infinita " +"para esta estimación de tiempo, y solo se tendrán en cuenta los movimientos " +"G1 y G0 (no soporta el ajuste de arco).\n" +"Esto no moverá comandos de ventilador desde G-Codes personalizados (estos " +"actúan como un tipo de 'barrera').\n" +"Esto no moverá comandos de ventilador en el G-Code inicial si el 'único G-" +"Code inicial personalizado' está activado\n" +"Usar 0 para desactivar." + +msgid "Only overhangs" +msgstr "Solo voladizos" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "" +"Solo se tomará dentro de la cuenta el retraso para enfriar los voladizos." + +msgid "Fan kick-start time" +msgstr "Tiempo de arranque de ventilador" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Emite un comando de velocidad máxima del ventilador durante esta cantidad de " +"segundos antes de reducir a la velocidad objetivo para poner en marcha el " +"ventilador de refrigeración.\n" +"Esto es útil para ventiladores donde un PWM/potencia baja puede ser " +"insuficiente para que el ventilador comience a girar desde una parada, o " +"para que el ventilador alcance la velocidad más rápido.\n" +"Ajústelo a 0 para desactivarlo." + +msgid "Time cost" +msgstr "Coste dinerario por hora" + +msgid "The printer cost per hour" +msgstr "El coste por hora de la impresora" + +msgid "money/h" +msgstr "dinero/hora" + +msgid "Support control chamber temperature" +msgstr "Soporte de control de temperatura de cámara" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Esta opción se activa si la máquina admite el control de la temperatura de " +"la cámara" + +msgid "Support air filtration" +msgstr "Soportar filtración de aire" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Active esta opción si la impresora admite filtración de aire\n" +"Comando G-Code: M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "Tipo de G-Code" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Con qué tipo de G-Code es compatible la impresora" + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "Impresora Pellet Modificada" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" +"Active esta opción si su impresora utiliza pellets en lugar de filamentos" + +msgid "Support multi bed types" +msgstr "Admite varios tipos de cama" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "Active esta opción si desea utilizar varios tipos de cama" + +msgid "Label objects" +msgstr "Etiquetar objetos" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"Habilite esta opción para añadir comentarios en el G-Code etiquetando los " +"movimientos de impresión con el objeto al que pertenecen, lo cual es útil " +"para el plugin Octoprint CancelObject. Esta configuración NO es compatible " +"con la configuración de Extrusor Único Multi Material y Limpiar en Objeto / " +"Limpiar en Relleno." + +msgid "Exclude objects" +msgstr "Excluir objetos" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "Activar esta opción para añadir el comando EXCLUDE OBJECT en el G-Code" + +msgid "Verbose G-code" +msgstr "G-Code detallado" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Activar esto para escoger un archivo de G-Code comentado, con cada línea " +"explicado por un texto descriptivo. Si imprime desde la tarjeta SD, el peso " +"adicional del archivo podría hacer que tu firmware se ralentice." + +msgid "Infill combination" +msgstr "Combinación de relleno" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Combine automáticamente el relleno de baja densidad de varias capas para " +"imprimirlas juntas y reducir el tiempo. La perímetro se sigue imprimiendo " +"con la altura original de la capa." + +msgid "Filament to print internal sparse infill." +msgstr "Filamento para imprimir el relleno interno de baja densidad." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Ancho de extrusión de la densidad de relleno interna. Si se expresa como %, " +"se calculará sobre el diámetro de la boquilla." + +msgid "Infill/Wall overlap" +msgstr "Superposición de relleno/perímetros" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" +"El área de relleno se amplía ligeramente para solaparse con el perímetro y " +"mejorar la adherencia. El valor porcentual es relativo a la anchura de línea " +"del de baja densidad. Ajuste este valor a ~10-15% para minimizar la " +"sobreextrusión potencial y la acumulación de material que resulta en " +"superficies superiores ásperas." + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "Relleno sólido superior/inferior/solapamiento de perímetros" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"El área de relleno sólido de cubierta superior se amplía ligeramente para " +"solaparse con el perímetro y mejorar la adherencia y minimizar la aparición " +"de agujeros de alfiler donde el relleno de cubierta superior se une a las " +"perímetros. Un valor del 25-30% es un buen punto de partida para minimizar " +"la aparición de agujeros. El valor porcentual es relativo a la anchura de la " +"línea de relleno de baja densidad" + +msgid "Speed of internal sparse infill" +msgstr "Velocidad del relleno interno de baja densidad" + +msgid "Interface shells" +msgstr "Perímetros de interfaz" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Fuerza la generación de perímetro sólidos entre materiales/volúmenes " +"adyacentes. Útil para impresiones con varios extrusores, con materiales " +"translúcidos o material de soporte soluble manualmente" + +msgid "Maximum width of a segmented region" +msgstr "Máximo ancho de una región segmentada" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Máximo ancho de una región segmentada. Cero desactiva está característica." + +msgid "Interlocking depth of a segmented region" +msgstr "Profundidad de entrelazado de una región segmentada" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Profundidad de entrelazado de una región segmentada. Cero desactiva esta " +"característica." + +msgid "Use beam interlocking" +msgstr "Usar entrelazado de vigas" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" +"Genera una estructura de vigas de entrelazado en los lugares donde se tocan " +"los distintos filamentos. Esto mejora la adherencia entre filamentos, " +"especialmente en modelos impresos en distintos materiales." + +msgid "Interlocking beam width" +msgstr "Ancho de viga de entrelazado" + +msgid "The width of the interlocking structure beams." +msgstr "El ancho de estructura de vigas de entrelazado." + +msgid "Interlocking direction" +msgstr "Dirección de entrelazado" + +msgid "Orientation of interlock beams." +msgstr "Orientación de vigas entrelazadas." + +msgid "Interlocking beam layers" +msgstr "Capas de vigas de entrelazado" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" +"La altura de las vigas de la estructura de entrelazado, medida en número de " +"capas. Menos capas es más fuerte, pero más propenso a defectos." + +msgid "Interlocking depth" +msgstr "Profundidad de entrelazado" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" +"La distancia desde el límite entre filamentos para generar estructura " +"entrelazada, medida en celdas. Un número demasiado bajo de celdas dará lugar " +"a una adhesión deficiente." + +msgid "Interlocking boundary avoidance" +msgstr "Evitar los limites de entrelazado" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" +"La distancia desde el exterior de un modelo donde no se generarán " +"estructuras entrelazadas, medida en celdas." + +msgid "Ironing Type" +msgstr "Tipo de alisado" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"El alisado es el uso de un pequeño flujo para imprimir en la misma altura de " +"la superficie de nuevo para hacer la superficie plana más suave. Este ajuste " +"controla la capa que se alisa" + +msgid "No ironing" +msgstr "Sin alisado" + +msgid "Top surfaces" +msgstr "Superficies superiores" + +msgid "Topmost surface" +msgstr "Superficie superior" + +msgid "All solid layer" +msgstr "Todas la capas sólidas" + +msgid "Ironing Pattern" +msgstr "Patrón de Alisado" + +msgid "The pattern that will be used when ironing" +msgstr "Patrón que se usará al alisar" + +msgid "Ironing flow" +msgstr "Flujo de alisado" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"La cantidad de material a extruir durante el alisado. Relativo al flujo de " +"la altura de la capa normal. Un valor demasiado alto provoca una " +"sobreextrusión en la superficie" + +msgid "Ironing line spacing" +msgstr "Espacio entre líneas de alisado" + +msgid "The distance between the lines of ironing" +msgstr "La distancia entre las líneas de alisado" + +msgid "Ironing speed" +msgstr "Velocidad de alisado" + +msgid "Print speed of ironing lines" +msgstr "Velocidad de impresión de las líneas de alisado" + +msgid "Ironing angle" +msgstr "Ángulo de alisado" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"El planchado en ángulo se realiza en. Un número negativo desactiva esta " +"función y utiliza el método por defecto." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"Esta parte de G-Code se inserta en cada cambio de capa después de levantar z" + +msgid "Supports silent mode" +msgstr "Admite el modo silencioso" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Si la máquina admite el modo silencioso en el que la máquina utiliza una " +"menor aceleración para imprimir" + +msgid "Emit limits to G-code" +msgstr "Emitir límites al G-Code" + +msgid "Machine limits" +msgstr "Límites de la máquina" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"Si está activada, los límites de la máquina se emitirán en un archivo G-" +"Code. \n" +"Esta opción se ignorará si el tipo de G-Code es Klipper." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Este G-Code se usará como código para la pausa de impresión. El usuario " +"puede insertar una pausa en el visor de G-Code" + +msgid "This G-code will be used as a custom code" +msgstr "Este G-Code se usará para el código personalizado" + +msgid "Small area flow compensation (beta)" +msgstr "Compensación de flujo en áreas pequeñas (beta)" + +msgid "Enable flow compensation for small infill areas" +msgstr "Permitir la compensación de flujo en zonas con poco relleno" + +msgid "Flow Compensation Model" +msgstr "Modelo de compensación de flujo" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"Modelo de compensación del flujo, utilizado para ajustar el flujo en zonas " +"de relleno pequeñas. El modelo se expresa como un par de valores separados " +"por comas para la longitud de extrusión y los factores de corrección del " +"flujo, uno por línea, en el siguiente formato: \"1.234,5.678\"" + +msgid "Maximum speed X" +msgstr "Velocidad máxima X" + +msgid "Maximum speed Y" +msgstr "Velocidad máxima Y" + +msgid "Maximum speed Z" +msgstr "Velocidad máxima Z" + +msgid "Maximum speed E" +msgstr "Velocidad máxima E" + +msgid "Maximum X speed" +msgstr "Velocidad máxima X" + +msgid "Maximum Y speed" +msgstr "Velocidad máxima en Y" + +msgid "Maximum Z speed" +msgstr "Velocidad máxima de Z" + +msgid "Maximum E speed" +msgstr "Velocidad máxima E" + +msgid "Maximum acceleration X" +msgstr "Máxima aceleración X" + +msgid "Maximum acceleration Y" +msgstr "Máxima aceleración Y" + +msgid "Maximum acceleration Z" +msgstr "Máxima aceleración Z" + +msgid "Maximum acceleration E" +msgstr "Máxima aceleración E" + +msgid "Maximum acceleration of the X axis" +msgstr "Máxima aceleración en el eje X" + +msgid "Maximum acceleration of the Y axis" +msgstr "Máxima aceleración en el eje Y" + +msgid "Maximum acceleration of the Z axis" +msgstr "Máxima aceleración en el eje Z" + +msgid "Maximum acceleration of the E axis" +msgstr "Máxima aceleración en el eje E" + +msgid "Maximum jerk X" +msgstr "Máximo jerk X" + +msgid "Maximum jerk Y" +msgstr "Máximo jerk Y" + +msgid "Maximum jerk Z" +msgstr "Máximo jerk Z" + +msgid "Maximum jerk E" +msgstr "Máximo jerk E" + +msgid "Maximum jerk of the X axis" +msgstr "Maximo jerk del eje Y" + +msgid "Maximum jerk of the Y axis" +msgstr "Maximo jerk del eje Y" + +msgid "Maximum jerk of the Z axis" +msgstr "Maximo jerk del eje Z" + +msgid "Maximum jerk of the E axis" +msgstr "Maximo jerk del eje E" + +msgid "Minimum speed for extruding" +msgstr "Velocidad mínima de extrusión" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Velocidad mínima de extrusión (M205 S)" + +msgid "Minimum travel speed" +msgstr "Velocidad mínima de desplazamiento" + +msgid "Minimum travel speed (M205 T)" +msgstr "Velocidad mínima de desplazamiento (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Aceleración máxima para la extrusión" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Aceleración máxima para la extrusión (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Aceleración máxima de retracción" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Aceleración máxima de retracción (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Aceleración máxima para el desplazamiento" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" +"Aceleración máxima para el desplazamiento (M204 T), sólo se aplica en Marlin " +"2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"La velocidad del ventilador de refrigeración de la pieza puede aumentarse " +"cuando la refrigeración automática está activada. Esta es la limitación de " +"velocidad máxima del ventilador de refrigeración parcial" + +msgid "Max" +msgstr "Max" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"La mayor altura de capa imprimible para el extrusor. Se utiliza para limitar " +"la altura máxima de la capa cuando se habilita la altura de capa adaptativa" + +msgid "Extrusion rate smoothing" +msgstr "Suavizado de la tasa de extrusión" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Este parámetro suaviza los cambios bruscos de velocidad de extrusión que se " +"producen cuando la impresora pasa de imprimir una extrusión de alto flujo " +"(alta velocidad/ancho mayor) a una extrusión de menor flujo (menor velocidad/" +"ancho menor) y viceversa.\n" +"\n" +"Define la velocidad máxima a la que el flujo volumétrico extruido en mm3/seg " +"puede cambiar con el tiempo. Valores más altos significan que se permiten " +"cambios de velocidad de extrusión más altos, lo que resulta en transiciones " +"de velocidad más rápidas.\n" +"\n" +"Un valor de 0 desactiva la función. \n" +"\n" +"Para una impresora de accionamiento directo de alta velocidad y alto flujo " +"(como la Bambu lab o la Voron) este valor no suele ser necesario. Sin " +"embargo, puede proporcionar algún beneficio marginal en ciertos casos en los " +"que las velocidades de las características varían mucho. Por ejemplo, cuando " +"hay ralentizaciones agresivas debidas a voladizos. En estos casos, se " +"recomienda un valor alto de alrededor de 300-350 mm3/s2, ya que esto permite " +"el suavizado suficiente para ayudar al avance de presión a lograr una " +"transición de flujo más suave.\n" +"\n" +"Para impresoras más lentas sin avance de presión, el valor debe fijarse " +"mucho más bajo. Un valor de 10-15mm3/s2 es un buen punto de partida para " +"extrusoras de accionamiento directo y de 5-10mm3/s2 para las de estilo " +"Bowden. \n" +"\n" +"Esta característica es conocida como Pressure Equalizer en Prusa slicer.\n" +"\n" +"Nota: este parámetro desactiva el ajuste de arco." + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "Longitud del segmento de suavizado" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Un valor más bajo resulta en transiciones de velocidad de extrusión más " +"suaves. Sin embargo, esto resulta en un archivo G-Code significativamente " +"más grande y más instrucciones para que la impresora procese. \n" +"\n" +"El valor por defecto de 3 funciona bien en la mayoría de los casos. Si su " +"impresora está tartamudeando, aumente este valor para reducir el número de " +"ajustes realizados.\n" +"\n" +"Valores permitidos: 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "Velocidad mínima del ventilador de refrigeración de la pieza" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Velocidad del ventilador de ventilación de la parte auxiliar. El ventilador " +"auxiliar funcionará a esta velocidad durante la impresión, excepto en las " +"primeras capas, que se define como sin capas de refrigeración.\n" +"Por favor, active auxiliary_fan en la configuración de la impresora para " +"utilizar esta función. Comando G-Code: M106 P2 S(0-255)" + +msgid "Min" +msgstr "Min" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"La menor altura de capa imprimible para el extrusor. Se utiliza para limitar " +"la altura mínima de la capa cuando se activa la altura de capa adaptable" + +msgid "Min print speed" +msgstr "Velocidad de impresión mínima" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"La velocidad mínima de impresión a la que la impresora reducirá la velocidad " +"para intentar mantener el tiempo mínimo de capa anterior, cuando la " +"ralentización para un mejor ventilación de la capa está activada." + +msgid "Nozzle diameter" +msgstr "Diámetro de boquilla" + +msgid "Diameter of nozzle" +msgstr "Diámetro de boquilla" + +msgid "Configuration notes" +msgstr "Anotaciones de configuración" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Puede añadir sus notas personales aquí. Este texto será añadido a los " +"comentarios de G-Code de cabecera." + +msgid "Host Type" +msgstr "Tipo de host" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca puede cargar archivos G-Code a un host de impresora. Este campo " +"puede contener el tipo de host." + +msgid "Nozzle volume" +msgstr "Volumen de la boquilla" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Volumen de la boquilla entre el cortador y el extremo de la boquilla" + +msgid "Cooling tube position" +msgstr "Posición del tubo de refrigeración" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "" +"Distancia del punto central del tubo de refrigeración a la punta del " +"extrusor." + +msgid "Cooling tube length" +msgstr "Longitud del tubo de refrigeración" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Longitud del tubo de refrigeración para limitar el espacio de refrigeración " +"de los movimientos en su interior." + +msgid "High extruder current on filament swap" +msgstr "Aumentar el flujo de extrusión en el cambio de filamento" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Puede ser beneficioso para incrementar el flujo de extrusión durante la " +"secuencia de intercambio de filamento, para permitir ratios rápidos de " +"moldeado de extremos y superar resistencias durante la carga de filamentos " +"con puntas deformadas." + +msgid "Filament parking position" +msgstr "Posición de parada de filamento" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Distancia de la punta del extrusor desde la posición donde el filamento se " +"detiene cuando se descarga. Debería coincidir con el valor del firmware de " +"la impresora." + +msgid "Extra loading distance" +msgstr "Distancia extra de carga" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Cuando se ajusta a cero, la distancia que el filamento se mueve desde la " +"posición de estacionamiento durante la carga es exactamente la misma que se " +"movió hacia atrás durante la descarga. Cuando es positivo, se carga más " +"lejos, si es negativo, el movimiento de carga es más corto que el de " +"descarga." + +msgid "Start end points" +msgstr "Puntos de inicio fin" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "Los puntos de inicio y fin, desde la zona de corte al cubo de basura." + +msgid "Reduce infill retraction" +msgstr "Reducir la retracción del relleno" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"No retrae cuando el viaje está totalmente en el área de relleno. Eso " +"significa que el rezume no se pueda ver. Puede reducir los tiempos de " +"retracción para modelos complejos y ahorrar tiempo de impresión, pero hacer " +"que el corte y la generación de G-Code sea más lento" + +msgid "Filename format" +msgstr "Formato de los archivos" + +msgid "User can self-define the project file name when export" +msgstr "" +"El usuario puede definir por sí mismo el nombre del archivo del proyecto al " +"exportarlo" + +msgid "Make overhangs printable" +msgstr "Voladizos imprimibles sin soporte" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "Modificar la geometría para imprimir voladizos sin soportes." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Máximo ángulo de impresión de voladizos imprimibles sin soporte" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Máximo ángulo de voladizos para permitir voladizos más pronunciados. 90º no " +"cambiará el modelo del todo y permitirá cualquier voladizo, mientras que 0 " +"reemplazará todos lo voladizos con material cónico." + +msgid "Make overhangs printable - Hole area" +msgstr "Área hueca del voladizo imprimible sin soporte" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Máxima área hueca en la base del modelo antes de que se lleno por material " +"cónico. El valor 0 llenará todos los huecos en la base del modelo." + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Detectar el voladizo del perímetro" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Detecta el porcentaje de voladizo en relación con el ancho de la línea y " +"utiliza diferentes velocidades para imprimir. Para el 100%% de voladizo, se " +"utiliza la velocidad de puente." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Ancho de extrusión del perímetro interno. Si se expresa cómo %, se calculará " +"sobre el diámetro de la boquilla." + +msgid "Speed of inner wall" +msgstr "Velocidad del perímetro interior" + +msgid "Number of walls of every layer" +msgstr "Número de perímetros de cada capa" + +msgid "Alternate extra wall" +msgstr "Perímetro adicional alternativo" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"Este ajuste añade una perímetro adicional a cada dos capas. De este modo, el " +"relleno queda encajado verticalmente entre los perímetros, lo que da como " +"resultado impresiones más resistentes.\n" +"\n" +"Cuando esta opción está activada, es necesario desactivar la opción de " +"asegurar el grosor del perímetro vertical.\n" +"\n" +"No se recomienda utilizar el relleno rayo junto con esta opción, ya que el " +"relleno es limitado para anclar los perímetros adicionales." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Si desea procesar el G-Code de salida a través de scripts personalizados, " +"simplemente enumere sus rutas absolutas aquí. Separe varios scripts con " +"punto y coma. A los scripts se les pasará la ruta absoluta al archivo G-Code " +"como primer argumento, y pueden acceder a los ajustes de configuración de " +"Snapmaker Orca leyendo variables de entorno." + +msgid "Printer notes" +msgstr "Anotaciones de la impresora" + +msgid "You can put your notes regarding the printer here." +msgstr "Puede colocar sus notas acerca de la impresora aquí." + +msgid "Raft contact Z distance" +msgstr "Distancia Z de contacto de la balsa(base de impresión)" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"Espacio Z entre el objeto y la balsa(base de impresión). Se ignora para la " +"interfaz soluble" + +msgid "Raft expansion" +msgstr "Expansión de la balsa(base de impresión)" + +msgid "Expand all raft layers in XY plane" +msgstr "Expandir todas las capas de la balsa(base de impresión) en el plano XY" + +msgid "Initial layer density" +msgstr "Densidad de la primera capa" + +msgid "Density of the first raft or support layer" +msgstr "Densidad de la balsa(base de impresión)" + +msgid "Initial layer expansion" +msgstr "Expansión de la primera capa" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Expandir la primera base de impresión o capa de soporte base para mejorar la " +"adherencia de la cama de la bandeja" + +msgid "Raft layers" +msgstr "Capas de balsa (base de impresión)" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"El objeto será elevado por este número de capas de soporte. Utilice esta " +"función para evitar deformaciones al imprimir ABS" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"La ruta del G-Code se genera después de simplificar el contorno del modelo " +"para evitar demasiados puntos y líneas de código en el archivo de G-Code. Un " +"valor más pequeño significa una mayor resolución y más tiempo para cortar" + +msgid "Travel distance threshold" +msgstr "Umbral de distancia de desplazamiento" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Sólo se activa la retracción cuando la distancia de recorrido es superior a " +"este umbral" + +msgid "Retract amount before wipe" +msgstr "Retrae cantidad antes de limpiar" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"La longitud de la retracción rápida antes de la limpieza, en relación con la " +"longitud de la retracción" + +msgid "Retract when change layer" +msgstr "Retracción al cambiar de capa" + +msgid "Force a retraction when changes layer" +msgstr "Forzar una retracción al cambiar de capa" + +msgid "Retraction Length" +msgstr "Longitud de retracción" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Una cierta cantidad de material en el extrusor se extrae para evitar el " +"rezumado durante el recorrido largo. Ajustar el cero para desactivar la " +"retracción" + +msgid "Long retraction when cut(experimental)" +msgstr "Retracción larga al cortar (experimental)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Característica experimental. Retraer y cortar el filamento a mayor distancia " +"durante los cambios para minimizar la purga. Si bien esto reduce " +"significativamente la purga, también puede aumentar el riesgo de atascos de " +"boquillas u otros problemas de impresión." + +msgid "Retraction distance when cut" +msgstr "Distancia de retracción al cortar" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Característica experimental. Longitud de retracción antes del corte durante " +"el cambio de filamento" + +msgid "Z hop when retract" +msgstr "Salto en Z al retraerse" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Cada vez que se realiza la retracción, la boquilla se levanta un poco para " +"crear un espacio libre entre la boquilla y la impresión. Esto evita que la " +"boquilla golpee la impresión cuando se desplaza. El uso de la línea espiral " +"para levantar z puede evitar el encordado" + +msgid "Z hop lower boundary" +msgstr "Límite inferior de salto Z" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Z hop sólo entrará en vigor cuando Z esté por encima de este valor y se " +"encuentre por debajo del parámetro: \"Límite superior del salto Z\"" + +msgid "Z hop upper boundary" +msgstr "Límite superior de salto Z" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Si este valor es positivo, Z hop sólo entrará en vigor cuando Z esté por " +"encima del parámetro \"Límite inferior de salto Z\" y esté por debajo de " +"este valor" + +msgid "Z hop type" +msgstr "Tipo de salto Z" + +msgid "Slope" +msgstr "Pendiente" + +msgid "Spiral" +msgstr "Espiral" + +msgid "Traveling angle" +msgstr "Ángulo de desplazamiento" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" +"Ángulo de desplazamiento para el tipo de salto de Pendiente y Espiral Z. Si " +"se ajusta a 90°, se obtiene una elevación normal." + +msgid "Only lift Z above" +msgstr "Solo elevar Z por encima" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Si lo ajusta a un valor positivo, la elevación de Z sólo tendrá lugar por " +"encima de la Z absoluta especificada." + +msgid "Only lift Z below" +msgstr "Solo elevar Z por debajo" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Si se ajusta a un valor positivo, el levantamiento Z sólo tendrá lugar por " +"debajo de la Z absoluta especificada." + +msgid "On surfaces" +msgstr "En las superficies" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Forzar el comportamiento de Salto Z. Este ajuste se ve afectado por los " +"ajustes anteriores (Sólo levantar Z arriba/abajo)." + +msgid "All Surfaces" +msgstr "Todas las Superficies" + +msgid "Top Only" +msgstr "Solo Superior" + +msgid "Bottom Only" +msgstr "Solo Inferior" + +msgid "Top and Bottom" +msgstr "Superior e Inferior" + +msgid "Extra length on restart" +msgstr "Longitud extra de reinicio" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Cuando la retracción se compensa después de un movimiento de viaje, el " +"extrusor expulsará esa cantidad de filamento adicional. Este ajuste " +"raramente se necesitará." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Cuando se compensa la retracción después de cambiar de herramienta, el " +"extrusor empujará esta cantidad adicional de filamento." + +msgid "Retraction Speed" +msgstr "Velocidad de retracción" + +msgid "Speed of retractions" +msgstr "Velocidad de las retracciones" + +msgid "Deretraction Speed" +msgstr "Velocidad de Desretracción" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Velocidad de recarga del filamento en el extrusor. Cero significa la misma " +"velocidad con la retracción" + +msgid "Use firmware retraction" +msgstr "Usar retracción de firmware" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"Esta configuración experimental utiliza los comandos G10 y G11 para que el " +"firmware se encargue de la retracción. Sólo soportado en versiones recientes " +"de Marlin." + +msgid "Show auto-calibration marks" +msgstr "Muestra marcas de autocalibración" + +msgid "Disable set remaining print time" +msgstr "Desactivar tiempo de impresión restante" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" +"Deshabilitar la generación del M73: Ajustar el tiempo de impresión restante " +"en el G-Code final" + +msgid "Seam position" +msgstr "Posición de la costura" + +msgid "The start position to print each part of outer wall" +msgstr "La posición inicial para imprimir cada parte del perímetro exterior" + +msgid "Nearest" +msgstr "Más cercano" + +msgid "Aligned" +msgstr "Alineado" + +msgid "Back" +msgstr "Trasera" + +msgid "Random" +msgstr "Aleatorio" + +msgid "Staggered inner seams" +msgstr "Costuras interiores escalonadas" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Esta opción causa que las costuras internas sean desplazadas hacía detrás en " +"función de su profundidad, formando un patrón en zigzag." + +msgid "Seam gap" +msgstr "Separación entre costuras" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Para reducir la visibilidad de la costura en una extrusión de bucle cerrado, " +"el bucle se interrumpe y se acorta en una cantidad especificada.\n" +"Esta cantidad puede especificarse en milímetros o como porcentaje del " +"diámetro actual del extrusor. El valor por defecto de este parámetro es 10%." + +msgid "Scarf joint seam (beta)" +msgstr "Costura de unión de bufanda (beta)" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Utilice la unión de bufanda para minimizar la visibilidad de la costura y " +"aumentar su resistencia." + +msgid "Conditional scarf joint" +msgstr "Unión de bufanda condicional" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Aplique juntas de bufanda sólo en perímetros lisos en los que las juntas " +"tradicionales no oculten eficazmente las juntas en esquinas afiladas." + +msgid "Conditional angle threshold" +msgstr "Umbral angular condicional" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"Esta opción establece el ángulo umbral para aplicar una costura de junta de " +"bufanda condicional.\n" +"Si el ángulo máximo dentro del bucle perimetral supera este valor (indicando " +"la ausencia de esquinas afiladas), se utilizará una costura de junta de " +"bufanda. El valor por defecto es 155°." + +msgid "Conditional overhang threshold" +msgstr "Umbral de voladizo condicional" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"Esta opción establece el ángulo umbral para aplicar una costura de unión de " +"bufanda condicional. Si el ángulo máximo dentro del bucle perimetral supera " +"este valor (indicando la ausencia de esquinas finas), se utilizará una " +"costura de unión de bufanda. El valor por defecto es 155°." + +msgid "Scarf joint speed" +msgstr "Velocidad de unión de bufanda" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"Esta opción ajusta la velocidad de impresión para las uniones de bufanda. Se " +"recomienda imprimir las uniones de bufanda a una velocidad lenta (inferior a " +"100 mm/s). También es aconsejable activar la opción \"Suavizado de la " +"velocidad de extrusión\" si la velocidad ajustada varía significativamente " +"de la velocidad de los perímetros exteriores o interiores. Si la velocidad " +"especificada aquí es superior a la velocidad de los perímetros exteriores o " +"interiores, la impresora utilizará por defecto la velocidad más lenta de las " +"dos. Si se especifica como porcentaje (por ejemplo, 80%), la velocidad se " +"calcula en función de la velocidad de el perímetro exterior o interior. El " +"valor predeterminado es 100%." + +msgid "Scarf joint flow ratio" +msgstr "Relación de flujo de la unión de bufanda" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" +"Este factor afecta a la cantidad de material para las uniones de bufanda." + +msgid "Scarf start height" +msgstr "Altura de inicio de la bufanda" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Altura inicial de la bufanda . Esta cantidad puede especificarse en " +"milímetros o como porcentaje de la altura actual de la capa. El valor por " +"defecto de este parámetro es 0." + +msgid "Scarf around entire wall" +msgstr "Espiga alrededor de toda el perímetro" + +msgid "The scarf extends to the entire length of the wall." +msgstr "La bufanda se extiende a lo largo de toda el perímetro." + +msgid "Scarf length" +msgstr "Largo de la bufanda" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Longitud de la bufanda. Si este parámetro se pone a cero, se desactiva la " +"bufanda." + +msgid "Scarf steps" +msgstr "Pasos de la bufanda" + +msgid "Minimum number of segments of each scarf." +msgstr "Número mínimo de segmentos de cada bufanda." + +msgid "Scarf joint for inner walls" +msgstr "Junta de bufanda para perímetros interiores" + +msgid "Use scarf joint for inner walls as well." +msgstr "Utilice también una junta de bufanda para perímetros internos." + +msgid "Role base wipe speed" +msgstr "Velocidad de limpieza según tipo de línea" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"La velocidad de limpieza viene determinada por la velocidad de extrusión " +"actual. Por ejemplo, si se ejecuta una acción de limpieza inmediatamente " +"después de una extrusión del perímetro exterior, se utilizará la velocidad " +"de la extrusión del perímetro exterior para la acción de limpieza." + +msgid "Wipe on loops" +msgstr "Limpieza en contornos curvos" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Para minimizar la visibilidad de la costura en un contorno curvo cerrado, se " +"ejecuta un pequeño movimiento hacia dentro antes de que el extrusor abandone " +"la curva." + +msgid "Wipe before external loop" +msgstr "Limpiar antes del bucle externo" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"Para minimizar la visibilidad de una posible sobreextrusión al inicio de un " +"perímetro externo al imprimir con el orden de impresión de perímetro " +"Exterior/Interior o Interior/Exterior/Interior, la desretracción se realiza " +"ligeramente en el interior desde el inicio del perímetro externo. De esta " +"forma, cualquier posible sobreextrusión queda oculta desde la superficie " +"exterior.\n" +"\n" +"Esto es útil cuando se imprime con orden de impresión Exterior/Interior o " +"Interior/Exterior/Interior ya que en estos modos es más probable que se " +"imprima un perímetro exterior inmediatamente después de un movimiento de " +"desretracción." + +msgid "Wipe speed" +msgstr "Velocidad de limpieza" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"La velocidad de limpieza es determinada por el ajuste de velocidad La " +"velocidad de limpieza es determinada por el ajuste de velocidad especificado " +"en esta configuración. Si el valor se expresa en porcentaje (por ejemplo, " +"80%), se calculará en función del ajuste de velocidad de desplazamiento " +"anterior. El valor por defecto de este parámetro es 80%" + +msgid "Skirt distance" +msgstr "Distancia de falda" + +msgid "Distance from skirt to brim or object" +msgstr "Distancia de la falda al borde de adherencia o al objeto" + +msgid "Skirt height" +msgstr "Altura de falda" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "C capas de falda. Normalmente sólo una capa" + +msgid "Draft shield" +msgstr "Protector contra corrientes de aire" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"Un protector contra corrientes de aire es útil para proteger una impresión " +"en ABS o ASA de la deformación y el desprendimiento de la cama de impresión " +"debido a los flujos de aire. Suele ser necesario solo en impresoras de " +"bastidor abierto, es decir, sin cerramiento.\n" +"\n" +"Opciones:\n" +"Activado = la falda es tan alta como el objeto impreso más alto.\n" +"Limitado = la falda es tan alta cómo se especifica en el ajuste \"Altura de " +"falda\"\n" +"\n" +"Nota: Con el protector contra corrientes de aire activo, la falda se " +"imprimirá a la distancia especificada en \"Distancia de falda\" del objeto. " +"Por lo tanto, si los bordes están activos, puede cruzarse con ellos. Para " +"evitarlo, aumente el valor de la \"Distancia de falda\".\n" +"imprimirá a la distancia especificada en \"Distancia de falda\" del objeto. " +"Por lo tanto, si los bordes están activos, puede cruzarse con ellos. Para " +"evitarlo, aumente el valor de la \"Distancia de la falda\".\n" + +msgid "Limited" +msgstr "Limitado" + +msgid "Enabled" +msgstr "Activado" + +msgid "Skirt loops" +msgstr "Contorno de la falda" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "Número de bucles de la falda. Cero significa desactivar el faldón" + +msgid "Skirt speed" +msgstr "Velocidad de falda" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" +"Velocidad de la falda, en mm/s. Cero significa utilizar la velocidad de capa " +"por defecto." + +msgid "Skirt minimum extrusion length" +msgstr "Longitud mínima de extrusión de la falda" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"Longitud mínima de extrusión de filamento en mm al imprimir la falda. Cero " +"significa que esta función está desactivada.\n" +"\n" +"El uso de un valor distinto de cero es útil si la impresora está configurada " +"para imprimir sin una línea de purga." + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"La velocidad de impresión en el G-Code exportado se ralentizará, cuando el " +"tiempo estimado de la capa sea inferior a este valor, para conseguir una " +"mejor refrigeración de estas capas" + +msgid "Minimum sparse infill threshold" +msgstr "Área umbral de relleno sólido" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"El área de relleno de baja densidad que es menor que el valor del umbral se " +"sustituye por un relleno sólido interno" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Ancho de extrusión del relleno sólido interno. Si se expresa cómo %, se " +"calculará sobre el diámetro de la boquilla." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"Velocidad del relleno sólido interno, no la superficie superior e inferior" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Spiralize suaviza los movimientos z del contorno exterior. Y convierte un " +"modelo sólido en una impresión de una soel perímetro con capas inferiores " +"sólidas. El modelo final generado no tiene costura" + +msgid "Smooth Spiral" +msgstr "Suavizar Espiral" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Suavizar Espiral suaviza también los movimientos X e Y, con lo que no se " +"aprecia ninguna costura, ni siquiera en las direcciones XY en perímetros que " +"no son verticales" + +msgid "Max XY Smoothing" +msgstr "Suavizado XY Máximo" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Distancia máxima a desplazar los puntos en XY para intentar conseguir una " +"espiral suave, si se expresa en %, se calculará sobre el diámetro de la " +"tobera" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Sí se selecciona el modo suave o tradicional, se generará un vídeo time-" +"lapse para cada impresión. Después de imprimir cada capa, se toma una " +"instantánea con la cámara. Todas estas instantáneas se componen en un vídeo " +"time-lapse cuando finaliza la impresión. Si se selecciona el modo suave, el " +"cabezal de la herramienta se moverá a la rampa de exceso después de cada " +"capa se imprime y luego tomar una instantánea. Dado que el filamento fundido " +"puede gotear de la boquilla durante el proceso de tomar una instantánea, la " +"torre de purga es necesaria para el modo suave de limpiar la boquilla." + +msgid "Traditional" +msgstr "Tradicional" + +msgid "Temperature variation" +msgstr "Variación de temperatura" + +msgid "Start G-code" +msgstr "G-Code inicial" + +msgid "Start G-code when start the whole printing" +msgstr "Inicie el G-Code cuando comience la impresión completa" + +msgid "Start G-code when start the printing of this filament" +msgstr "Inicie el G-Code al comenzar la impresión de este filamento" + +msgid "Single Extruder Multi Material" +msgstr "Extrusor Único Multi Material" + +msgid "Use single nozzle to print multi filament" +msgstr "Usa una único boquilla para imprimir multifilamento" + +msgid "Manual Filament Change" +msgstr "Cambio de Filamento Manual" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Active esta opción para omitir el G-Code personalizado Cambiar filamento " +"sólo al principio de la impresión. El comando de cambio de herramienta (por " +"ejemplo, T0) se omitirá durante toda la impresión. Esto es útil para la " +"impresión manual multi-material, donde utilizamos M600/PAUSE para activar la " +"acción manual de cambio de filamento." + +msgid "Purge in prime tower" +msgstr "Purgar en una torre" + +msgid "Purge remaining filament into prime tower" +msgstr "Purgar el filamento restante en una torre" + +msgid "Enable filament ramming" +msgstr "Activar el moldeado de extremo del filamento" + +msgid "No sparse layers (beta)" +msgstr "Sin capas de baja densidad (beta)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Sí está activado, la torre de purga no se imprimirá en las capa sin cambio " +"de herramienta. En las capas con cambio de herramienta, viajará hacía abajo " +"para imprimir la torre de purga. El usuario es responsable de asegurarse que " +"no hay colisiones con la impresión." + +msgid "Prime all printing extruders" +msgstr "Purgar todos los extrusores" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Sí está activada, todos los extrusores serán purgados en el lado delantero " +"de la cama de impresión al inicio de la impresión." + +msgid "Slice gap closing radius" +msgstr "Radio de cierre de laminado" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Las grietas más pequeñas que el radio de cierre 2x se rellenan durante el " +"corte de la malla triangular. La operación de cierre de huecos puede reducir " +"la resolución de impresión final, por lo que es aconsejable mantener el " +"valor razonablemente bajo." + +msgid "Slicing Mode" +msgstr "Modo de laminado" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Utilice \"Par-impar\" para los modelos de avión de 3DLabPrint. Utilice " +"\"Cerrar orificios\" para cerrar todos los orificios del modelo." + +msgid "Regular" +msgstr "Normal" + +msgid "Even-odd" +msgstr "Par-impar" + +msgid "Close holes" +msgstr "Cerrar orificios" + +msgid "Z offset" +msgstr "Desplazamiento de Z" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Este valor se sumará (o restará) de todas las coordenadas Z en el G-Code de " +"salida. Se utiliza para compensar el desfase de Z del “Endstop Z”.\n" +"Por ejemplo, si tu “Endstop cero” deja la boquilla a distancia 0.3mm de la " +"cama de impresión, establecer este valor a -0,3 compensará este desfase." + +msgid "Enable support" +msgstr "Habilitar los soportes" + +msgid "Enable support generation." +msgstr "Habilitar la generación de soportes." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"normal(auto) y Árbol(auto) se utilizan para generar los soportes " +"automáticamente. Si se selecciona normal(manual) o árbol(manual), sólo se " +"generan los refuerzos de apoyo" + +msgid "normal(auto)" +msgstr "Normal(auto)" + +msgid "tree(auto)" +msgstr "Árbol(auto)" + +msgid "normal(manual)" +msgstr "Normal(manual)" + +msgid "tree(manual)" +msgstr "Árbol(manual)" + +msgid "Support/object xy distance" +msgstr "Distancia soporte/objeto X-Y" + +msgid "XY separation between an object and its support" +msgstr "Separación XY entre un objeto y su soporte" + +msgid "Pattern angle" +msgstr "Ángulo del patrón" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Utilice este ajuste para girar el patrón de soporte en el plano horizontal." + +msgid "On build plate only" +msgstr "Sólo en la bandeja de impresión" + +msgid "Don't create support on model surface, only on build plate" +msgstr "" +"No crear soporte en la superficie del modelo, sólo en la bandeja de impresión" + +msgid "Support critical regions only" +msgstr "Añadir soportes en regiones críticas solo" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Cree soportes sólo para las regiones críticas, como la cola afilada, el " +"voladizo, etc." + +msgid "Remove small overhangs" +msgstr "Eliminar voladizos pequeños" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "Elimina los voladizos pequeños que posiblemente no necesiten soportes." + +msgid "Top Z distance" +msgstr "Distancia Z superior" + +msgid "The z gap between the top support interface and object" +msgstr "La distancia z entre la interfaz de soporte superior y el objeto" + +msgid "Bottom Z distance" +msgstr "Distancia Z inferior" + +msgid "The z gap between the bottom support interface and object" +msgstr "La distancia z entre la interfaz de apoyo inferior y el objeto" + +msgid "Support/raft base" +msgstr "Capa base/balsa" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filamento para imprimir la base de soporte y la balsa de impresión. \"Por " +"defecto\" significa que no hay filamento específico para el soporte y se " +"utiliza el filamento actual" + +msgid "Avoid interface filament for base" +msgstr "Evitar el interfaz de filamento para la base" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Evite utilizar filamento de interfaz de soporte para imprimir la base de " +"soporte si es posible." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Ancho de extrusión de los soportes Si se expresa cómo %, se calculará sobre " +"el diámetro de la boquilla." + +msgid "Interface use loop pattern" +msgstr "Uso de la interfaz en forma de bucle" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Cubrir la capa de contacto superior de los soportes con bucles. Desactivado " +"por defecto." + +msgid "Support/raft interface" +msgstr "Interfaz de soporte/balsa" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filamento para imprimir interfaz de soporte. \"Por defecto\" significa que " +"no hay filamento específico para la interfaz de soporte y se utiliza el " +"filamento actual" + +msgid "Top interface layers" +msgstr "Capas de la interfaz superior" + +msgid "Number of top interface layers" +msgstr "Número de capas de interfaz superior" + +msgid "Bottom interface layers" +msgstr "Capas de la interfaz inferior" + +msgid "Number of bottom interface layers" +msgstr "Número de capas de la interfaz inferior" + +msgid "Same as top" +msgstr "Lo mismo que la superior" + +msgid "Top interface spacing" +msgstr "Distancia de la interfaz superior" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "" +"Espacio de las líneas de interfaz. Cero significa que la interfaz es sólida" + +msgid "Bottom interface spacing" +msgstr "Distancia de la interfaz inferior" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Espacio entre las líneas de la interfaz inferior. Cero significa interfaz " +"sólida" + +msgid "Speed of support interface" +msgstr "Velocidad de la interfaz de soporte" + +msgid "Base pattern" +msgstr "Patrón de base" + +msgid "Line pattern of support" +msgstr "Patrón lineal de apoyo" + +msgid "Rectilinear grid" +msgstr "Rejilla rectilínea" + +msgid "Hollow" +msgstr "Hueco" + +msgid "Interface pattern" +msgstr "Patrón de interfaz" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Patrón de líneas de la interfaz de soporte. El patrón por defecto para la " +"interfaz de soporte no soluble es Rectilíneo, mientras que el patrón por " +"defecto para la interfaz de soporte soluble es Concéntrico" + +msgid "Rectilinear Interlaced" +msgstr "Entrelazado rectilíneo" + +msgid "Base pattern spacing" +msgstr "Separación del patrón base" + +msgid "Spacing between support lines" +msgstr "Espacio entre las líneas de apoyo" + +msgid "Normal Support expansion" +msgstr "Expansión de Soporte Normal" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "Ampliar (+) o reducir (-) la expansión horizontal del soporte normal" + +msgid "Speed of support" +msgstr "Velocidad en soportes" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"Estilo y forma del soporte. Para el soporte normal, proyectar los soportes " +"en una cuadrícula regular creará soportes más estables (por defecto), " +"mientras que las torres de soporte ajustadas ahorrarán material y reducirán " +"las cicatrices del objeto.\n" +"Para el soporte arbóreo, el estilo esbelto y orgánico fusionará las ramas de " +"forma más agresiva y ahorrará mucho material (orgánico por defecto), " +"mientras que el estilo híbrido creará una estructura similar a la del " +"soporte normal bajo grandes voladizos planos." + +msgid "Snug" +msgstr "Ajustado" + +msgid "Tree Slim" +msgstr "Árbol Delgado" + +msgid "Tree Strong" +msgstr "Árbol Fuerte" + +msgid "Tree Hybrid" +msgstr "Árbol Híbrido" + +msgid "Organic" +msgstr "Orgánico" + +msgid "Independent support layer height" +msgstr "Altura independiente de la capa de soporte " + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"La capa de soporte utiliza una altura de capa independiente de la capa del " +"objeto. Esta opción no será válida si la torre de purga está activada." + +msgid "Threshold angle" +msgstr "Pendiente máxima" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Se generará un soporte para los voladizos cuyo ángulo de inclinación sea " +"inferior al umbral." + +msgid "Tree support branch angle" +msgstr "Ángulo de la rama de soporte del árbol" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Este ajuste determina el ángulo máximo de voladizo que pueden hacer las " +"ramas del soporte del árbol. Si se aumenta el ángulo, las ramas pueden " +"imprimirse más horizontalmente, permitiendo que lleguen más lejos." + +msgid "Preferred Branch Angle" +msgstr "Pendiente preferida de la rama" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"El ángulo preferido de las ramas, cuando no tienen que evitar el modelo. " +"Utilice un ángulo más bajo para hacerlas más verticales y más estables. " +"Utilice un ángulo más alto para que las ramas se fusionen más rápido." + +msgid "Tree support branch distance" +msgstr "Distancia de la rama de soporte del árbol" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"Este ajuste determina la distancia entre los nodos de soporte del árbol " +"vecinos." + +msgid "Branch Density" +msgstr "Densidad de ramas" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"Ajusta la densidad de la estructura de soporte utilizada para generar las " +"puntas de las ramas. Un valor más alto da como resultado mejores voladizos, " +"pero los soportes son más difíciles de quitar, por lo que se recomienda " +"activar las interfaces de soporte superior en lugar de un valor de densidad " +"de rama alto si se necesitan interfaces densas." + +msgid "Adaptive layer height" +msgstr "Altura de capa adaptable" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"Si se activa esta opción, se calculará automáticamente la altura de todas " +"las capas de soporte de los árboles excepto la primera. " + +msgid "Auto brim width" +msgstr "Ancho de borde de adherencia automático" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"Si activa esta opción, se calculará automáticamente la anchura del borde de " +"adherencia para el soporte del árbol" + +msgid "Tree support brim width" +msgstr "Anchura del borde de adherencia" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "" +"Distancia desde la rama del árbol hasta la línea más externa del borde de " +"adherencia" + +msgid "Tip Diameter" +msgstr "Tamaño de la punta" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Diámetro de la punta de la rama para soportes orgánicos." + +msgid "Tree support branch diameter" +msgstr "Diámetro de la rama de soporte del árbol" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Este ajuste determina el diámetro inicial de los nodos de apoyo." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Ángulo del Diámetro de ramas" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"El ángulo del diámetro de las ramas a medida que se hacen más gruesas hacia " +"la parte inferior. Un ángulo de 0 hará que las ramas tengan un grosor " +"uniforme a lo largo de su longitud. Un poco de ángulo puede aumentar la " +"estabilidad del soporte orgánico." + +msgid "Branch Diameter with double walls" +msgstr "Baja densidad de ramas" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"Las ramas con un área mayor que el área de un círculo de este diámetro se " +"imprimirán con doble perímetro para mayor estabilidad. Establezca este valor " +"en cero para no tener doble perímetro." + +msgid "Support wall loops" +msgstr "Bucles de perímetro de apoyo" + +msgid "This setting specify the count of walls around support" +msgstr "Este ajuste especifica el número de perímetros alrededor del soporte" + +msgid "Tree support with infill" +msgstr "Soporte de árbol con relleno" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Este ajuste especifica si se añade relleno dentro de los grandes huecos del " +"soporte del árbol" + +msgid "Activate temperature control" +msgstr "Activar control de temperatura" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Active esta opción para controlar la temperatura de la cámara. Se añadirá un " +"comando M191 antes de \"machine_start_gcode\"\n" +"Comandos G-Code: M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "Temperatura de cámara" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Una mayor temperatura de la cámara puede ayudar a suprimir o reducir la " +"deformación y potencialmente conducir a una mayor resistencia de unión entre " +"capas para materiales de alta temperatura como ABS, ASA, PC, PA, etc. Al " +"mismo tiempo, la filtración de aire de ABS y ASA empeorará. Mientras que " +"para PLA, PETG, TPU, PVA y otros materiales de baja temperatura, la " +"temperatura real de la cámara no debe ser alta para evitar obstrucciones, " +"por lo que 0, que significa apagar, es muy recomendable" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Temperatura de la boquilla después de la primera capa" + +msgid "Detect thin wall" +msgstr "Detección de perímetros delgados" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Detectar los perímetros delgados que no pueden contener dos líneas de ancho, " +"y utilizar una sola línea para imprimir. Tal vez no se imprima muy bien, " +"debido a que no es de bucle cerrado" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Este G-Code se inserta al cambiar de filamento, incluyendo el comando T para " +"activar el cambio de herramienta" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "Este G-Code se inserta cuando se cambia el rol de extrusión" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Ancho de extrusión de las capas superiores. Si se expresa cómo %, se " +"calculará sobre el diámetro de la boquilla." + +msgid "Speed of top surface infill which is solid" +msgstr "Velocidad del relleno de la superficie superior que es sólida" + +msgid "Top shell layers" +msgstr "Capas de la cubierta superior" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Es el número de capas sólidas de la cubierta superior, incluida la capa " +"superficial superior. Si el grosor calculado por este valor es menor que el " +"grosor de la cubierta superior, las capas de la cubierta superior se " +"incrementarán" + +msgid "Top solid layers" +msgstr "Capas solidas arriba" + +msgid "Top shell thickness" +msgstr "Espesor mínimo de la cubierta superior" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"El número de capas sólidas superiores se incrementa al laminar si el espesor " +"calculado por las capas de la cubierta es más delgado que este valor. Esto " +"puede evitar tener una capa demasiado fina cuando la altura de la capa es " +"pequeña. 0 significa que este ajuste está desactivado y el grosor de la capa " +"superior está absolutamente determinado por las capas de la cubierta superior" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Velocidad de desplazamiento más rápida y sin extrusión" + +msgid "Wipe while retracting" +msgstr "Limpiar mientras se retrae" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Mueva la boquilla a lo largo de la última trayectoria de extrusión cuando se " +"retraiga para limpiar el material filtrado en la boquilla. Esto puede " +"minimizar las manchas cuando se imprime una nueva pieza después del recorrido" + +msgid "Wipe Distance" +msgstr "Distancia de limpieza" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"Describa cuánto tiempo se moverá la boquilla a lo largo de la última " +"trayectoria al retraerse. \n" +"\n" +"Dependiendo de la duración de la operación de barrido y de la velocidad y " +"longitud de los ajustes de retracción del extrusor/filamento, puede ser " +"necesario un movimiento de retracción para retraer el filamento restante. \n" +"\n" +"Fijando un valor en la cantidad de retracción antes del barrido se realizará " +"cualquier exceso de retracción antes del barrido, de lo contrario se " +"realizará después." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"La torre de purga puede utilizarse para limpiar los residuos de la boquilla " +"y estabilizar la presión de la cámara en el interior de la boquilla, con el " +"fin de evitar defectos de aspecto al imprimir objetos." + +msgid "Purging volumes" +msgstr "Volúmenes de purga" + +msgid "Flush multiplier" +msgstr "Multiplicador de flujo" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"El volumen de flujo real es igual al multiplicador de flujo multiplicado por " +"los volúmenes de flujo de la tabla." + +msgid "Prime volume" +msgstr "Tamaño de purga" + +msgid "The volume of material to prime extruder on tower." +msgstr "El volumen de material para cebar la extrusora en la torre." + +msgid "Width of prime tower" +msgstr "Anchura de la torre de purga" + +msgid "Wipe tower rotation angle" +msgstr "Ángulo de rotación de torre de purga" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Ángulo de rotación con respecto al eje X." + +msgid "Stabilization cone apex angle" +msgstr "Ángulo de vértice del cono de estabilización" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Ángulo del vértice del cono que se usa para estabilidad la torre de purga. " +"Un angulo mayor significa una base más ancha." + +msgid "Wipe tower purge lines spacing" +msgstr "Separación de las líneas de la torre de purga" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Separación de las líneas de la torre de purga." + +msgid "Maximum wipe tower print speed" +msgstr "Velocidad máxima de impresión de la torre de purga" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"La velocidad máxima de impresión al purgar en la torre de purga e imprimir " +"las capas dispersas de la torre de purga. Al purgar, si la velocidad de " +"relleno de baja densidad o la velocidad calculada a partir de la velocidad " +"volumétrica máxima del filamento es inferior, se utilizará la velocidad más " +"baja.\n" +"\n" +"Al imprimir las capas dispersas, si la velocidad del perímetro interno o la " +"velocidad calculada a partir de la velocidad volumétrica máxima del " +"filamento es inferior, se utilizará la velocidad más baja.\n" +"\n" +"Aumentar esta velocidad puede afectar a la estabilidad de la torre, así como " +"aumentar la fuerza con la que la boquilla colisiona con las manchas que se " +"hayan podido formar en la torre de purga.\n" +"\n" +"Antes de aumentar este parámetro más allá del valor por defecto de 90mm/seg, " +"asegúrese de que su impresora puede puentear de forma fiable a las " +"velocidades aumentadas y que el rezume al cambiar de herramienta está bien " +"controlado.\n" +"\n" +"Para los perímetros externos de la torre de purga se utiliza la velocidad " +"del perímetro interno independientemente de este ajuste." + +msgid "Wipe tower extruder" +msgstr "Extrusor de torre de purga" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"Extrusor usado para imprimir el perímetro de la torre de purga. Ajuste a 0 " +"para usar el único disponible. (no soluble preferentemente)." + +msgid "Purging volumes - load/unload volumes" +msgstr "Volumenes de purga - carga/descarga de volúmenes" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"Este vector guarda los volúmenes necesarios para cambiar de/a cada " +"herramienta utilizada en la torre de purga. Estos valores se utilizan para " +"simplificar la creación de los volúmenes de purga completos a continuación." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"La purga tras el cambio de filamento se realizará dentro de los rellenos de " +"los objetos. Esto puede reducir la cantidad de residuos y disminuir el " +"tiempo de impresión. Si los perímetros se imprimen con filamento " +"transparente, el relleno de color mixto se verá en el exterior. No tendrá " +"efecto, a menos que la torre de purga esté activada." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"La purga tras el cambio de filamento se realizará dentro del soporte de los " +"objetos. Esto puede reducir la cantidad de residuos y disminuir el tiempo de " +"impresión. No tendrá efecto, a menos que la torre de purga esté activada." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Este objeto se utilizará para purgar la boquilla después de un cambio de " +"filamento para ahorrar filamento y disminuir el tiempo de impresión. Los " +"colores de los objetos se mezclarán como resultado. No tendrá efecto, a " +"menos que la torre de purga esté activada." + +msgid "Maximal bridging distance" +msgstr "Distancia máxima de puenteado" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "" +"Distancia máxima entre los soportes en las sección de relleno de baja " +"densidad." + +msgid "X-Y hole compensation" +msgstr "Compensación de huecos X-Y" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Los huecos del objeto crecerán o se reducirán en el plano XY según el valor " +"configurado. Un valor positivo hace que los huecos sean más grandes. Un " +"valor negativo hace que los huecos sean más pequeños. Esta función se " +"utiliza para ajustar el tamaño ligeramente cuando el objeto tiene problemas " +"de ensamblaje" + +msgid "X-Y contour compensation" +msgstr "Compensación de contornos X-Y" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"El contorno del objeto crecerá o se reducirá en el plano XY según el valor " +"configurado. Un valor positivo hace que el contorno sea más grande. Un valor " +"negativo hace que el contorno sea más pequeño. Esta función se utiliza para " +"ajustar el tamaño ligeramente cuando el objeto tiene problemas de ensamblaje" + +msgid "Convert holes to polyholes" +msgstr "Convertir orificios en poliorificios" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Busque orificios casi circulares que abarquen más de una capa y convierta la " +"geometría en poliorificios. Utilice el tamaño de la boquilla y el diámetro " +"(mayor) para calcular el poliorificio.\n" +"Véase http://hydraraptor.blogspot.com/2011/02/poliorificios.html" + +msgid "Polyhole detection margin" +msgstr "Margen de detección del poliorificio" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Desviación máxima de un punto respecto al radio estimado del círculo.\n" +"Como los cilindros se exportan a menudo como triángulos de tamaño variable, " +"es posible que los puntos no se encuentren en la circunferencia del círculo. " +"Este ajuste le permite cierto margen para ampliar la detección.\n" +"En mm o en % o del radio." + +msgid "Polyhole twist" +msgstr "Giro de poliorificio" + +msgid "Rotate the polyhole every layer." +msgstr "Rotar el poliorificio en todas las capas." + +msgid "G-code thumbnails" +msgstr "Tamaño de miniaturas de G-Code" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Los tamaños de las imágenes se almacenan en archivos .gcode y .sl1 / .sl1s, " +"en el siguiente formato: \"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "Formato de las miniaturas de G-Code" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Formato de las miniaturas de G-Code: PNG para la mejor calidad, JPG para el " +"tamaño más pequeño, QOI para firmware de baja memoria" + +msgid "Use relative E distances" +msgstr "Usar distancias relativas E" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"Se recomienda la extrusión relativa cuando se utiliza la opción " +"\"label_objects\". Algunos extrusores funcionan mejor con esta opción " +"desactivada (modo de extrusión absoluta). La torre de borrado sólo es " +"compatible con el modo relativo. Se recomienda en la mayoría de las " +"impresoras. Por defecto está marcada" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"El generador de perímetros clásico produce perímetros con anchura de " +"extrusión constante y para zonas muy finas se utiliza rellenar-espacio. El " +"motor Arachne produce perímetros con anchura de extrusión variable." + +msgid "Classic" +msgstr "Clásico" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Anchura de transición de perímetro" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Cuando se pasa de un número de perímetros a otro a medida que la pieza se " +"vuelve más fina, se asigna una determinada cantidad de espacio para dividir " +"o unir los segmentos de perímetro. Se expresa como un porcentaje sobre el " +"diámetro de la boquilla" + +msgid "Wall transitioning filter margin" +msgstr "Margen del filtro de transición al perímetro" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Evita la transición entre un perímetro de más y uno de menos. Este margen " +"amplía el rango de anchos de extrusión que siguen a [Ancho mínimo de " +"perímetro - margen, 2 * Ancho mínimo de perímetro + margen]. Aumentando este " +"margen se reduce el número de transiciones, lo que reduce el número de " +"arranques/paradas de extrusión y el tiempo de recorrido. Sin embargo, una " +"gran variación de la anchura de extrusión puede provocar problemas de infra " +"o sobreextrusión. Se expresa en porcentaje sobre el diámetro de la boquilla" + +msgid "Wall transitioning threshold angle" +msgstr "Ángulo del umbral de transición del perímetro" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Cuándo crear transiciones entre números pares e impares de perímetros. Una " +"forma de cuña con un ángulo mayor que este ajuste no tendrá transiciones y " +"no se imprimirán perímetros en el centro para rellenar el espacio restante. " +"La reducción de este ajuste reduce el número y la longitud de estos " +"perímetros centrales, pero puede dejar huecos o sobresalir" + +msgid "Wall distribution count" +msgstr "Recuento de la distribución del perímetro" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"El número de perímetros, contados desde el centro, sobre los que debe " +"repartirse la variación. Los valores más bajos significan que los perímetros " +"exteriores no cambian de anchura" + +msgid "Minimum feature size" +msgstr "Tamaño mínimo del elemento" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Espesor mínimo de los elementos finos. Las características del modelo que " +"sean más finas que este valor no se imprimirán, mientras que las " +"características más gruesas que el Tamaño mínimo del elemento se ensancharán " +"hasta el Ancho mínimo de perímetro. Se expresa en porcentaje sobre el " +"diámetro de la boquilla" + +msgid "Minimum wall length" +msgstr "Longitud mínima de perímetro" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"Ajuste este valor para evitar que se impriman perímetros cortos y no " +"cerrados, lo que podría aumentar el tiempo de impresión. Los valores más " +"altos eliminan más perímetros y más largos.\n" +"\n" +"NOTA: Las superficies inferior y superior no se verán afectadas por este " +"valor para evitar huecos visuales en el exterior del modelo. Ajuste \"Umbral " +"de Perímetro\" en la configuración avanzada para ajustar la sensibilidad de " +"lo que se considera una superficie superior. El \"Umbral de un Solo " +"Perímetro\" sólo es visible si este valor es superior al valor " +"predeterminado de 0,5, o si las superficies superiores de un solo perímetro " +"están activados." + +msgid "First layer minimum wall width" +msgstr "Ancho mínimo del perímetro de la primera capa" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"Se recomienda que el ancho mínimo del perímetro que se debe utilizar para la " +"primera capa se establezca en el mismo tamaño que la boquilla. Se espera que " +"este ajuste mejore la adherencia." + +msgid "Minimum wall width" +msgstr "Ancho mínimo del perímetro" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Anchura del perímetro que sustituirá a los elementos finos (según el tamaño " +"mínimo del elemento) del modelo. Si la anchura mínima del perímetro es menor " +"que el grosor de la característica, el perímetro será tan grueso como la " +"propia característica. Se expresa en porcentaje sobre el diámetro de la " +"boquilla" + +msgid "Detect narrow internal solid infill" +msgstr "Detección de relleno interno estrecho" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Esta opción detectará automáticamente el área de relleno sólido interno " +"estrecho. Si se activa, se utilizará un patrón concéntrico para el área para " +"acelerar la impresión. De lo contrario, se utilizará por defecto un patrón " +"rectilíneo." + +msgid "invalid value " +msgstr "valor inválido " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Valor no válido cuando está activado el modo jarrón espiral: " + +msgid "too large line width " +msgstr "demasiada anchura de línea " + +msgid " not in range " +msgstr " fuera de rango " + +msgid "Minimum save" +msgstr "Salvado mínimo" + +msgid "export 3mf with minimum size." +msgstr "exportar 3mf con el tamaño mínimo." + +msgid "No check" +msgstr "No comprobado" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"No ejecute ninguna comprobación de validez, como la comprobación de " +"conflictos de ruta de G-Code." + +msgid "Ensure on bed" +msgstr "Asegurar en la cama" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Eleva el objeto sobre la cama cuando está parcialmente bajo. Deshabilitado " +"por defecto" + +msgid "Orient Options" +msgstr "Opciones de orientación" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "Opciones de orientación: 0-deshabilitar. 1-habilitar. otros-auto" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "El ángulo de rotación alrededor del eje Z en grados." + +msgid "Rotate around Y" +msgstr "Rotar alrededor de Y" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "El ángulo de rotación alrededor del eje Y en grados." + +msgid "Data directory" +msgstr "Directorio de datos" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Carga y almacena configuraciones en el directorio dado. Esto es útil para " +"mantener diferentes perfiles o incluir configuraciones desde un " +"almacenamiento en red." + +msgid "Load custom gcode" +msgstr "Cargar G-Code personalizado" + +msgid "Load custom gcode from json" +msgstr "Cargar G-Code personalizado desde json" + +msgid "Current z-hop" +msgstr "Z-Hop actual" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "" +"Contiene el z-hop presente al principio del bloque de G-Code personalizado." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Posición del extrusor al comienzo del bloque de G-Code personalizado. Si el " +"G-Code personalizado viaja a otro lugar, debe escribir en esta variable para " +"que Snapmaker Orca sepa desde dónde viaja cuando recupere el control." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"Estado de retracción al comienzo del bloque de G-Code personalizado. Si el G-" +"Code personalizado mueve el eje del extrusor, debe escribir en esta variable " +"para que Snapmaker Orca se retraiga correctamente cuando recupere el control." + +msgid "Extra deretraction" +msgstr "Extra deretraction" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" +"Actualmente está previsto un purgado adicional del extrusor después de la " +"desretracción." + +msgid "Current extruder" +msgstr "Extrusora actual" + +msgid "Zero-based index of currently used extruder." +msgstr "Índice basado en cero del extrusor utilizado actualmente." + +msgid "Current object index" +msgstr "Índice del objeto actual" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Específico para la impresión secuencial. Índice basado en cero del objeto " +"impreso actualmente." + +msgid "Has wipe tower" +msgstr "Tiene torre de purga" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Si se está generando o no torre de purga en la impresión." + +msgid "Initial extruder" +msgstr "Extrusor inicial" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Índice de base cero del primer extrusor utilizado en la impresión. Igual que " +"herramienta inicial." + +msgid "Initial tool" +msgstr "Herramienta inicial" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Índice de base cero del primer extrusor utilizado en la impresión. Igual que " +"extrusor_inicial." + +msgid "Is extruder used?" +msgstr "¿Se utiliza extrusora?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" +"Vector de bools que indica si un determinado extrusor se utiliza en la " +"impresión." + +msgid "Volume per extruder" +msgstr "Volumen por extrusora" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" +"Volumen total de filamento extruido por extrusor durante toda la impresión." + +msgid "Total toolchanges" +msgstr "Total de cambios de herramientas" + +msgid "Number of toolchanges during the print." +msgstr "Número de cambios de herramienta durante la impresión." + +msgid "Total volume" +msgstr "Volumen total" + +msgid "Total volume of filament used during the entire print." +msgstr "Volumen total de filamento utilizado durante toda la impresión." + +msgid "Weight per extruder" +msgstr "Peso por extrusora" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" +"Peso por extrusor extruido durante toda la impresión. Calculado a partir de " +"filament_density en Ajustes de Filamento." + +msgid "Total weight" +msgstr "Peso total" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" +"Peso total de la impresión. Calculado a partir del valor de filament_density " +"en Ajustes de filamento." + +msgid "Total layer count" +msgstr "Recuento total de capas" + +msgid "Number of layers in the entire print." +msgstr "Número de capas en toda la impresión." + +msgid "Number of objects" +msgstr "Número de objetos" + +msgid "Total number of objects in the print." +msgstr "Número total de objetos en la impresión." + +msgid "Number of instances" +msgstr "Número de instancias" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" +"Número total de instancias de objetos en la impresión, sumado sobre todos " +"los objetos." + +msgid "Scale per object" +msgstr "Escala por objeto" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"Contiene una cadena con información sobre la escala aplicada a cada objeto. " +"La indexación de los objetos se basa en cero (el primer objeto tiene índice " +"0). \n" +"Ejemplo: 'x:100% y:50% z:100'." + +msgid "Input filename without extension" +msgstr "Nombre de archivo de entrada sin extensión" + +msgid "Source filename of the first object, without extension." +msgstr "Nombre de archivo de origen del primer objeto, sin extensión." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" +"El vector tiene dos elementos: coordenada x e y del punto. Valores en mm." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" +"El vector tiene dos elementos: dimensión x e y de la caja delimitadora. " +"Valores en mm." + +msgid "First layer convex hull" +msgstr "Casco convexo de primera capa" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"Vector de puntos del perímetro convexo de la primera capa. Cada elemento " +"tiene el siguiente formato:'[x, y]' (x e y son números de coma flotante en " +"mm)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "Esquina inferior izquierda del cuadro delimitador de la primera capa" + +msgid "Top-right corner of first layer bounding box" +msgstr "Esquina superior derecha del cuadro delimitador de la primera capa" + +msgid "Size of the first layer bounding box" +msgstr "Tamaño del cuadro delimitador de la primera capa" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "" +"Esquina inferior izquierda del cuadro delimitador de la cama de impresión" + +msgid "Top-right corner of print bed bounding box" +msgstr "" +"Esquina superior derecha del cuadro delimitador de la cama de impresión" + +msgid "Size of the print bed bounding box" +msgstr "Tamaño del cuadro delimitador de la cama de impresión" + +msgid "Timestamp" +msgstr "Marca de tiempo" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "Cadena que contiene la hora actual en formato aaaammdd-hhmmss." + +msgid "Day" +msgstr "Día" + +msgid "Hour" +msgstr "Hora" + +msgid "Minute" +msgstr "Minuto" + +msgid "Print preset name" +msgstr "Imprimir nombre de perfil" + +msgid "Name of the print preset used for slicing." +msgstr "Nombre del perfil de impresión utilizado para el corte." + +msgid "Filament preset name" +msgstr "Nombre del perfil de filamento" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Nombres de los perfiles de filamento utilizados para el corte. La variable " +"es un vector que contiene un nombre para cada extrusor." + +msgid "Printer preset name" +msgstr "Nombre de perfil de la impresora" + +msgid "Name of the printer preset used for slicing." +msgstr "Nombre del perfil de impresora utilizado para laminar." + +msgid "Physical printer name" +msgstr "Nombre físico de la impresora" + +msgid "Name of the physical printer used for slicing." +msgstr "Nombre de la impresora física utilizada para el corte." + +msgid "Layer number" +msgstr "Número de capa" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" +"Índice de la capa actual. Basado en uno (es decir, la primera capa es la " +"número 1)." + +msgid "Layer z" +msgstr "Capa Z" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Altura de la capa actual sobre la cama de impresión, medida hasta la parte " +"superior de la capa." + +msgid "Maximal layer z" +msgstr "Capa máxima z" + +msgid "Height of the last layer above the print bed." +msgstr "Altura de la última capa sobre la cama de impresión." + +msgid "Filament extruder ID" +msgstr "ID extrusor filamento" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "El ID del extrusor actual. El mismo que current_extruder." + +msgid "Error in zip archive" +msgstr "Error en el archivo zip" + +msgid "Generating walls" +msgstr "Generación de perímetros" + +msgid "Generating infill regions" +msgstr "Generación de zonas de relleno" + +msgid "Generating infill toolpath" +msgstr "Generación de la trayectoria de la herramienta de relleno" + +msgid "Detect overhangs for auto-lift" +msgstr "Detección de voladizos para autoelevación" + +msgid "Generating support" +msgstr "Generar soporte" + +msgid "Checking support necessity" +msgstr "Comprobación de la necesidad de soporte" + +msgid "floating regions" +msgstr "regiones flotantes" + +msgid "floating cantilever" +msgstr "voladizo flotante" + +msgid "large overhangs" +msgstr "voladizos grandes" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Parece que el objeto %s tiene %s. Por favor, reoriente el objeto o active la " +"generación de soporte." + +msgid "Optimizing toolpath" +msgstr "Optimización de la trayectoria de la herramienta" + +msgid "Slicing mesh" +msgstr "Malla de corte" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"No se han detectado capas. Es posible que desee reparar su(s) archivo(s) STL " +"o comprobar su tamaño o grosor y volver a intentarlo.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"La compensación de tamaño XY de un objeto no se utilizará porque también " +"está pintado en color.\n" +"La compensación de tamaño XY no puede combinarse con el pintado en color." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Soporte: generar trayectoria en la capa %d" + +msgid "Support: detect overhangs" +msgstr "Soporte: detectar voladizos" + +msgid "Support: generate contact points" +msgstr "Soporte: generar puntos de contacto" + +msgid "Support: propagate branches" +msgstr "Soporte: propagación de ramas" + +msgid "Support: draw polygons" +msgstr "Soporte: dibujar polígonos" + +msgid "Support: generate toolpath" +msgstr "Soporte: herramienta de generación de trayectoria" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Soporte: generar polígonos en la capa %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Soporte: arreglar huecos en la capa %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Soporte: propagar ramas en la capa %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Formato de archivo desconocido: el archivo de entrada debe tener extensión ." +"stl, .obj o .amf(.xml)." + +msgid "Loading of a model file failed." +msgstr "Error en la carga del fichero modelo." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "El archivo proporcionado no puede ser leído debido a que está vacío" + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Formato de archivo desconocido: el archivo de entrada debe tener " +"extensión .3mf o .zip.amf." + +msgid "Canceled" +msgstr "Cancelado" + +msgid "load_obj: failed to parse" +msgstr "load_obj: fallo al parsear" + +msgid "load mtl in obj: failed to parse" +msgstr "load mtl in obj: fallo parseando" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "El archivo contiene polígonos con más de 4 vértices." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "El archivo contiene polígonos con menos de 2 vértices." + +msgid "The file contains invalid vertex index." +msgstr "El archivo contiene un índice de vértices no válido." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Este archivo OBJ no se ha podido leer porque está vacío." + +msgid "Flow Rate Calibration" +msgstr "Calibración de Ratio de Flujo" + +msgid "Max Volumetric Speed Calibration" +msgstr "Calibración de Velocidad Volumétrica Máxima" + +msgid "Manage Result" +msgstr "Administrar Resultados" + +msgid "Manual Calibration" +msgstr "Calibración Manual" + +msgid "Result can be read by human eyes." +msgstr "El resultado puede leerse con ojos humanos." + +msgid "Auto-Calibration" +msgstr "Auto-Calibración" + +msgid "We would use Lidar to read the calibration result" +msgstr "Deberíamos usar Lidar para leer resultados de calibración" + +msgid "Prev" +msgstr "Ant" + +msgid "Recalibration" +msgstr "Recalibración" + +msgid "Calibrate" +msgstr "Calibración" + +msgid "Finish" +msgstr "Finalizar" + +msgid "How to use calibration result?" +msgstr "¿Cómo usar el resultado de la calibración?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "Deberías cambiar el Factor de Calibración de Dinámicas de Flujo" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"La versión actual de firmware de la impresora no soporta la calibración.\n" +"Por favor, actualice el firmware de la impresora." + +msgid "Calibration not supported" +msgstr "Calibración no soportada" + +msgid "Error desc" +msgstr "Error en la descripción" + +msgid "Extra info" +msgstr "Información extra" + +msgid "Flow Dynamics" +msgstr "Dinámicas de Flujo" + +msgid "Flow Rate" +msgstr "Ratio de Flujo" + +msgid "Max Volumetric Speed" +msgstr "Velocidad Volumétrica Máxima" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Por favor, introduzca valores válidos:\n" +"Valor inicial: >= %.1f\n" +"Valor final <= %.1f\n" +"Valor final: > Valor inicial\n" +"Valor de paso: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "El nombre no puede estar vacío." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "El perfil seleccionado: %s no encontrado." + +msgid "The name cannot be the same as the system preset name." +msgstr "El nombre no puede ser el mismo que el nombre de perfil del sistema." + +msgid "The name is the same as another existing preset name" +msgstr "El nombre coincide con el de otro perfil" + +msgid "create new preset failed." +msgstr "crear un nuevo perfil fallido." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"¿Estás seguro que quiere cancelar la calibración y volver a la página de " +"inicio?" + +msgid "No Printer Connected!" +msgstr "¡No hay Impresoras Conectadas!" + +msgid "Printer is not connected yet." +msgstr "La impresora no está conectada todavía." + +msgid "Please select filament to calibrate." +msgstr "Por favor, seleccione el filamento para calibrar." + +msgid "The input value size must be 3." +msgstr "El valor de tamaño de entrada debe ser 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"This machine type can only hold 16 historical results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" + +msgid "Connecting to printer..." +msgstr "Conectando a la impresora." + +msgid "The failed test result has been dropped." +msgstr "El resultado del test fallido se ha descartado." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "" +"El resultado de la Calibración de Dinámicas de Flujo se ha salvado en la " +"impresora" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"Ya existe un resultado de calibración anterior con el mismo nombre: %s. Sólo " +"se guarda un resultado con un nombre. Está seguro de que desea sobrescribir " +"el resultado anterior?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"Este tipo de máquina sólo puede guardar %d resultados históricos por " +"boquilla. Este resultado no se guardará." + +msgid "Internal Error" +msgstr "Error interno" + +msgid "Please select at least one filament for calibration" +msgstr "Por favor, selecciona al menos un filamento por calibración" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "" +"El resultado de la calibración del ratio de flujo se ha guardado en los " +"perfiles" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"El resultado de la calibración de velocidad volumétrica máxima se ha salvado " +"en los perfiles" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Cuando necesita la Calibración de Dinámicas de Flujo" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Hemos añadido la auto-calibración para diferentes filamentos, los cuales " +"están totalmente automatizados, y los resultados se guardarán en la " +"impresora para futuros usos. Solo necesita calibrar en los siguientes " +"casos:\n" +"1. Sí introduce un nuevo filamento, o de diferentes marcas/modelos, o el " +"filamento está húmedo; \n" +"2. Sí la boquilla está desgastada o se sustituye por otra nueva;\n" +"3. Si la velocidad volumétrica máxima o la temperatura de impresión se " +"cambia en los ajustes de filamento." + +msgid "About this calibration" +msgstr "Acerca de la calibración" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" +"Consulte los detalles de la Calibración de la Dinámica de Flujo en nuestra " +"wiki.\n" +"\n" +"Normalmente la calibración es innecesaria. Cuando se inicia una impresión de " +"un solo color/material, con la opción \"Calibración de Dinámica de Flujo\" " +"marcada en el menú de inicio de impresión, la impresora seguirá el camino " +"antiguo, calibrar el filamento antes de la impresión; cuando se inicia una " +"impresión de varios colores/materiales, la impresora utilizará el parámetro " +"de compensación por defecto para el filamento durante cada cambio de " +"filamento que tendrá un buen resultado en la mayoría de los casos.\n" +"un solo color/material, con la opción \"calibración de la dinámica de flujo" +"\" marcada en el menú de inicio de impresión, la impresora seguirá el camino " +"antiguo, calibrar el filamento antes de la impresión; cuando se inicia una " +"impresión de varios colores/materiales, la impresora utilizará el parámetro " +"de compensación por defecto para el filamento durante cada cambio de " +"filamento que tendrá un buen resultado en la mayoría de los casos.\n" +"\n" +"Tenga en cuenta que hay algunos casos que pueden hacer que los resultados de " +"la calibración no sean fiables, como una adhesión insuficiente en la bandeja " +"de impresión. Se puede mejorar la adherencia lavando la bandeja de impresión " +"o aplicando pegamento. Para obtener más información sobre este tema, " +"consulte nuestra Wiki.\n" +"\n" +"Los resultados de la calibración tienen alrededor de un 10 por ciento de " +"fluctuación en nuestra prueba, lo que puede causar que el resultado no sea " +"exactamente el mismo en cada calibración. Seguimos investigando la causa " +"para realizar mejoras con nuevas actualizaciones." + +msgid "When to use Flow Rate Calibration" +msgstr "Cuando usar la Calibración de Ratio de Flujo" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"Después de usar la Calibración de Dinámicas de Flujo, puede haber algunos " +"Después de usar la Calibración de Dinámicas de Flujo, puede haber algunos " +"problemas de extrusión, como:\n" +"1. Sobre extrusión: Exceso de material en la impresión, formando truños o " +"capas más anchas y no uniformes.\n" +"2. Infra extrusión: Capas muy finas, relleno poco resistente, o huecos en la " +"capa superior del modelo, incluso cuando se imprime despacio.\n" +"3. Calidad pobre de Superficie: La superficie de sus impresiones parece " +"rugosa o irregular\n" +"4. Integridad Estructural Débil: Las impresiones se quiebran con facilidad y " +"no es tan resistente como suele serlo." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Además, la calibración del flujo es crucial para materiales espumosos como " +"el LW-PLA utilizado en los planos RC. Estos materiales se expanden mucho " +"cuando se calientan, y la calibración proporciona un flujo de referencia " +"útil." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"La calibración del flujo mide la relación entre los volúmenes de extrusión " +"esperados y los reales. La configuración predeterminada funciona bien en las " +"impresoras Bambu Lab y en los filamentos oficiales, ya que fueron " +"precalibrados y ajustados con precisión. Para un filamento normal, " +"normalmente no necesitarás realizar una Calibración de Flujo a menos que " +"sigas viendo los defectos listados después de haber realizado otras " +"calibraciones. Para más detalles, consulte el artículo de la wiki." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"La auto Calibración de Ratio de Flujo utiliza la tecnología Micro-Lidar de " +"La auto Calibración de Ratio de Flujo utiliza la tecnología Micro-Lidar de " +"Bambu Lab, midiendo directamente los patrones de calibración. Sin embargo, " +"tenga en cuenta que la eficacia y precisión puede verse comprometida con " +"algunos tipos de material. Particularmente, los filamentos que son " +"transparentes o semi transparentes, o tienen un acabado altamente " +"reflectante pueden no ser adecuados para esta calibración y producir " +"resultados menos que deseables.\n" +"\n" +"Los resultados de la calibración pueden variar entre cada calibración o " +"filamento. Seguimos mejorando la precisión y compatibilidad de esta " +"calibración mediante actualizaciones de firmware a lo largo del tiempo.\n" +"\n" +"Precaución: La Calibración del Flujo es un proceso avanzado, que sólo debe " +"ser realizado por aquellos que entiendan completamente su propósito e " +"implicaciones. Un uso incorrecto puede dar lugar a impresiones de calidad " +"inferior o a daños en la impresora. Por favor asegúrese de leer " +"cuidadosamente y entender el proceso antes de hacerlo." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Cuando necesite Calibrar la Velocidad Volumétrica Máxima" + +msgid "Over-extrusion or under extrusion" +msgstr "Sobre extrusión o infra extrusión" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"Se recomienda calibrar la Velocidad Volumétrica Máxima cuando imprima con:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "Material con importante contracción/expansión térmica, como..." + +msgid "materials with inaccurate filament diameter" +msgstr "Materiales con diámetro de filamento inpreciso" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "Hemos encontrado el mejor Factor de Calibración de Dinámicas de Flujo" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"¡Parte de la calibración ha fallado! Debería limpiar la bandeja y " +"reintentar. El resultado de test fallido va a ser descartado." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Recomendamos añadir marca, material, tipo, e incluso nivel de humedad en el " +"Nombre" + +msgid "Failed" +msgstr "Error" + +msgid "Please enter the name you want to save to printer." +msgstr "Por favor, introduzca el nombre que quiera asignar a la impresora." + +msgid "The name cannot exceed 40 characters." +msgstr "El nombre no puede exceder de 40 caracteres." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Sólo se guardará uno de los resultados con el mismo nombre. ¿Está seguro de " +"que desea reemplazar los otros resultados?" + +msgid "Please find the best line on your plate" +msgstr "Por favor encuentre la mejor línea en su bandeja" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Encuentre la esquina con el grado de extrusión perfecto" + +msgid "Input Value" +msgstr "Valor de entrada" + +msgid "Save to Filament Preset" +msgstr "Guardar Perfil de Filamento" + +msgid "Preset" +msgstr "Perfil" + +msgid "Record Factor" +msgstr "Factor de guardado" + +msgid "We found the best flow ratio for you" +msgstr "Hemos encontrado el mejor ratio de flujo para usted" + +msgid "Flow Ratio" +msgstr "Ratio de Flujo" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Por favor, introduzca un valor válido (0.0 < ratio de flujo <2.0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Por favor, introduzca el nombre del perfil que quiera guardar." + +msgid "Calibration1" +msgstr "Calibración1" + +msgid "Calibration2" +msgstr "Calibración2" + +msgid "Please find the best object on your plate" +msgstr "Por favor, busque el mejor objeto en su bandeja" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "" +"Rellenar el valor encima del bloque con la superficie superior más lisa" + +msgid "Skip Calibration2" +msgstr "Saltar Calibración2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "Ratio de flujo: %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Por favor, escoja un bloque con la superficie superior más lisa" + +msgid "Please choose a block with smoothest top surface." +msgstr "Por favor, escoja un bloque con la superficie superior más lisa." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "" +"Por favor, introduzca un valor válido (0 <= Velocidad Volumétrica Máxima <= " +"60)" + +msgid "Calibration Type" +msgstr "Tipo de Calibración" + +msgid "Complete Calibration" +msgstr "Calibración Completa" + +msgid "Fine Calibration based on flow ratio" +msgstr "Calibración Fina basada en el ratio de flujo" + +msgid "Title" +msgstr "Título" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Se imprimirá n modelo de test. Por favor limpie la bandeja y póngala de " +"nuevo en la cama caliente antes de calibrar." + +msgid "Printing Parameters" +msgstr "Parámetros de Impresión" + +msgid "Plate Type" +msgstr "Tipo de Bandeja" + +msgid "filament position" +msgstr "Posición de filamento" + +msgid "External Spool" +msgstr "Bobina Externa" + +msgid "Filament For Calibration" +msgstr "Filamento para Calibrar" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Consejos para la calibración del material:\n" +"- Los materiales que pueden tener la misma temperatura de cama\n" +"- Las diferentes marcas de filamento y familias(Marca = Bambú. Familia = " +"Básica, Mate)" + +msgid "Pattern" +msgstr "Patrón" + +msgid "Method" +msgstr "Método" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s no es compatible con %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "" +"El filamento TPU no está soportado para la Auto-Calibración de Dinámicas de " +"Flujo." + +msgid "Connecting to printer" +msgstr "Conectando a la impresora" + +msgid "From k Value" +msgstr "Desde el valor k" + +msgid "To k Value" +msgstr "Al valor k" + +msgid "Step value" +msgstr "Valor del paso" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "" +"El diámetro de la boquilla has sido sincronizado desde los ajustes de " +"impresora" + +msgid "From Volumetric Speed" +msgstr "Desde Velocidad Volumétrica" + +msgid "To Volumetric Speed" +msgstr "A Velocidad Volúmetrica" + +msgid "Flow Dynamics Calibration Result" +msgstr "Resultado de Calibración de Dinámicas de Flujo" + +msgid "New" +msgstr "Nuevo" + +msgid "No History Result" +msgstr "Sin Historial de Resultados" + +msgid "Success to get history result" +msgstr "Éxito recuperando el historial de resultados" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "" +"Refrescar el histórico de resultados de Calibración de Dinámicas de Flujo" + +msgid "Action" +msgstr "Acción" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "" +"Este tipo de máquina sólo puede almacenar %d resultados históricos por " +"boquilla." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Editar Calibración de Dinámicas de Flujo" + +msgid "New Flow Dynamic Calibration" +msgstr "Nueva Calibración Dinámica del Flujo" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "Debe seleccionar el filamento." + +msgid "Network lookup" +msgstr "Búsqueda de red" + +msgid "Address" +msgstr "Dirección" + +msgid "Hostname" +msgstr "Nombre de host" + +msgid "Service name" +msgstr "Nombre del servicio" + +msgid "OctoPrint version" +msgstr "Versión de OctoPrint" + +msgid "Searching for devices" +msgstr "Buscando dispositivos" + +msgid "Finished" +msgstr "Terminado" + +msgid "Multiple resolved IP addresses" +msgstr "Múltiples direcciones IP resueltas" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"Hay varias direcciones IP resueltas del nombre del host %1%.\n" +"Por favor, seleccione la que debe usarse." + +msgid "PA Calibration" +msgstr "Calibración PA" + +msgid "DDE" +msgstr "DDE" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "Tipo de extrusor" + +msgid "PA Tower" +msgstr "Torre PA" + +msgid "PA Line" +msgstr "Línea PA" + +msgid "PA Pattern" +msgstr "Modelo PA" + +msgid "Start PA: " +msgstr "Iniciar PA: " + +msgid "End PA: " +msgstr "Finalizar PA: " + +msgid "PA step: " +msgstr "Paso PA: " + +msgid "Print numbers" +msgstr "Imprimir números" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Por favor, introduzca valores válidos:\n" +"Iniciar PA: >=0.0\n" +"Finalizar PA:> Iniciar PA\n" +"Paso PA:>=0.001)" + +msgid "Temperature calibration" +msgstr "Calibración de temperatura" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Tipo de filamento" + +msgid "Start temp: " +msgstr "Temperatura inicial: " + +msgid "End temp: " +msgstr "Temperatura final: " + +msgid "Temp step: " +msgstr "Paso temperatura: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Por favor, introduzca valores válidos:\n" +"Temp inicial: <= 350\n" +"Temp final: >=170\n" +"Temp inicial > Temp final + 5)" + +msgid "Max volumetric speed test" +msgstr "Test de velocidad volumétrica máxima" + +msgid "Start volumetric speed: " +msgstr "Velocidad volumétrica inicial: " + +msgid "End volumetric speed: " +msgstr "Velocidad volumétrica final: " + +msgid "step: " +msgstr "Paso: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Por favor, introduzca valores válidos:\n" +"inicio > 0\n" +"paso >=0\n" +"final > inicio + paso)" + +msgid "VFA test" +msgstr "Test VFA" + +msgid "Start speed: " +msgstr "Velocidad inicial: " + +msgid "End speed: " +msgstr "Velocidad final: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Por favor, introduzca valores válidos:\n" +"inicio > 10\n" +"paso >=0\n" +"final > inicio + paso)" + +msgid "Start retraction length: " +msgstr "Longitud de retracción inicial:" + +msgid "End retraction length: " +msgstr "Longitud de retracción final:" + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "Enviar G-Code al host de impresión" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Subido al Host de Impresión con el siguiente nombre de archivo:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "Use barras oblicuas como separador de directorio si es necesario." + +msgid "Upload to storage" +msgstr "Subir a almacenamiento" + +msgid "Switch to Device tab after upload." +msgstr "Cambie a la pestaña Dispositivo después de la carga." + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "" +"El nombre de archivo que va a cargar no acaba en \"%s\". ¿Desea continuar?" + +msgid "Upload" +msgstr "Cargar" + +msgid "Print host upload queue" +msgstr "Imprimir cola de carga del host" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Progreso" + +msgid "Host" +msgstr "Host" + +msgctxt "OfFile" +msgid "Size" +msgstr "Tamaño" + +msgid "Filename" +msgstr "Nombre de archivo" + +msgid "Cancel selected" +msgstr "Cancelar selección" + +msgid "Show error message" +msgstr "Mostrar mensaje de error" + +msgid "Enqueued" +msgstr "En cola" + +msgid "Uploading" +msgstr "Subiendo" + +msgid "Cancelling" +msgstr "Cancelado" + +msgid "Error uploading to print host" +msgstr "Error al subir al host de impresión" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "" +"No es posible realizar la operación booleana en las partes selecionadas" + +msgid "Mesh Boolean" +msgstr "Malla Booleana" + +msgid "Union" +msgstr "Unión" + +msgid "Difference" +msgstr "Diferencia" + +msgid "Intersection" +msgstr "Intersección" + +msgid "Source Volume" +msgstr "Volumen de origen" + +msgid "Tool Volume" +msgstr "Volumen de herramienta" + +msgid "Subtract from" +msgstr "Restar de" + +msgid "Subtract with" +msgstr "Restar con" + +msgid "selected" +msgstr "seleccionado" + +msgid "Part 1" +msgstr "Parte 1" + +msgid "Part 2" +msgstr "Parte 2" + +msgid "Delete input" +msgstr "Borrado de entrada" + +msgid "Network Test" +msgstr "Prueba de Red" + +msgid "Start Test Multi-Thread" +msgstr "Iniciar Pruebas Multitarea" + +msgid "Start Test Single-Thread" +msgstr "Iniciar Prueba Monotarea" + +msgid "Export Log" +msgstr "Exportar Registro" + +msgid "Snapmaker Orca Version:" +msgstr "Snapmaker Orca Versión:" + +msgid "System Version:" +msgstr "Versión de Sistema:" + +msgid "DNS Server:" +msgstr "Servidor DNS:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "Prueba Snapmaker Orca(GitHub)" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "Prueba Snapmaker Orca(GitHub):" + +msgid "Test Bing.com" +msgstr "Prueba Bing.com" + +msgid "Test bing.com:" +msgstr "Prueba Bing,.com:" + +msgid "Log Info" +msgstr "Información de Registro" + +msgid "Select filament preset" +msgstr "Seleccionar perfil de filamento" + +msgid "Create Filament" +msgstr "Crear Filamento" + +msgid "Create Based on Current Filament" +msgstr "Crear basándose en el filamento actual" + +msgid "Copy Current Filament Preset " +msgstr "Copiar perfil actual de filamento " + +msgid "Basic Information" +msgstr "Información básica" + +msgid "Add Filament Preset under this filament" +msgstr "Añadir perfil de filamento basado en este filamento" + +msgid "We could create the filament presets for your following printer:" +msgstr "Podemos crear los perfiles de filamento para la siguiente impresora:" + +msgid "Select Vendor" +msgstr "Seleccionar Fabricante" + +msgid "Input Custom Vendor" +msgstr "Introducor Fabricante Personalizado" + +msgid "Can't find vendor I want" +msgstr "No es posible encontrar el fabricante que deseamos" + +msgid "Select Type" +msgstr "Seleccionar Tipo" + +msgid "Select Filament Preset" +msgstr "Seleccionar Perfil de Filamento" + +msgid "Serial" +msgstr "Serie" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "Por ejemplo, Básico, Mate, Seda, Mármol" + +msgid "Filament Preset" +msgstr "Perfil de Filamento" + +msgid "Create" +msgstr "Crear" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "" +"El fabricante no ha sido seleccionado, por favor, seleccione otro fabricante." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" +"El fabricante personalizado no ha sido introducido, vuelva a seleccionarlo." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" o \"Genérico\" no pueden ser usados como Fabricante para " +"filamentos personalizados." + +msgid "Filament type is not selected, please reselect type." +msgstr "No se ha seleccionado el tipo de filamento, vuelva a seleccionarlo." + +msgid "Filament serial is not inputed, please input serial." +msgstr "" +"No se ha seleccionado el número de serie de filamento, vuelva a " +"seleccionarlo." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"Puede haber caracteres de escape en la entrada del fabricante o de la serie " +"del filamento. Por favor, elimínelos y vuelva a introducirlos." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Todas las entradas en el fabricante personalizado o serie son espacios. " +"Vuelva a introducirlos." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "El fabricante no puede ser un número. Vuelva a introducirlos." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"Aún no ha seleccionado una impresora o un perfil. Por favor, seleccione al " +"menos uno." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"El nombre del filamento %s que ha creado ya existe. \n" +"Si continúa, el perfil creado se mostrará con su nombre completo. ¿Desea " +"continuar?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "" +"Algunos perfiles existentes no se han podido crear, como se indica a " +"continuación:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"¿Quieres reescribirlo?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"Cambiaremos el nombre de los perfiles a \"Tipo Número de Serie @impresora " +"seleccionados\". \n" +"Para añadir perfiles para más impresoras, vaya a la selección de impresoras" + +msgid "Create Printer/Nozzle" +msgstr "Crear Impresora/Boquilla" + +msgid "Create Printer" +msgstr "Crear Impresora" + +msgid "Create Nozzle for Existing Printer" +msgstr "Crear Boquilla para una Impresora Existente" + +msgid "Create from Template" +msgstr "Crear desde Plantilla" + +msgid "Create Based on Current Printer" +msgstr "Crear basándose en la Impresora Actual" + +msgid "Import Preset" +msgstr "Importar Perfil" + +msgid "Create Type" +msgstr "Crear Tipo" + +msgid "The model is not found, place reselect vendor." +msgstr "No se encuentra el modelo, vuelva a seleccionar fabricante." + +msgid "Select Model" +msgstr "Seleccionar Modelo" + +msgid "Select Printer" +msgstr "Seleccionar Impresora" + +msgid "Input Custom Model" +msgstr "Introducir Modelo Personalizado" + +msgid "Can't find my printer model" +msgstr "No se puede encontrar el modelo de la impresora" + +msgid "Rectangle" +msgstr "Rectángulo" + +msgid "Printable Space" +msgstr "Espacio Imprimible" + +msgid "Hot Bed STL" +msgstr "Cama Caliente STL" + +msgid "Load stl" +msgstr "Cargar stl" + +msgid "Hot Bed SVG" +msgstr "Cama Caliente SVG" + +msgid "Load svg" +msgstr "Cargar svg" + +msgid "Max Print Height" +msgstr "Altura Máxima de Impresión" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "El archivo excede %d MB, por favor impórtelo de nuevo." + +msgid "Exception in obtaining file size, please import again." +msgstr "" +"Se ha producido una excepción obteniendo el tamaño de archivo, por favor, " +"impórtelo de nuevo." + +msgid "Preset path is not find, please reselect vendor." +msgstr "" +"No se encuentra la ruta preestablecida, vuelva a seleccionar el fabricante." + +msgid "The printer model was not found, please reselect." +msgstr "No se ha encontrado el modelo de impresora, vuelva a seleccionarlo." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "" +"El diámetro de la boquilla no es adecuado, vuelva a seleccionar el lugar." + +msgid "The printer preset is not found, place reselect." +msgstr "" +"El perfil de impresora se ha encontrado, por favor, vuelva a seleccionarlo." + +msgid "Printer Preset" +msgstr "Perfil de Impresora" + +msgid "Filament Preset Template" +msgstr "Plantilla de Perfil de Filamento" + +msgid "Deselect All" +msgstr "Deseleccionar Todo" + +msgid "Process Preset Template" +msgstr "Plantilla de Perfil de Proceso" + +msgid "Back Page 1" +msgstr "Volver a la Página 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Aún no ha elegido el perfil de impresora que desea crear. Por favor, elija " +"el fabricante y el modelo de la impresora" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"Ha introducido una entrada ilegal en la sección de área imprimible de la " +"primera página. Por favor, compruébelo antes de crearla." + +msgid "The custom printer or model is not inputed, place input." +msgstr "" +"No se ha introducido la impresora personalizada o el modelo, por favor, " +"introdúzcalo." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"El perfil de impresora que ha creado ya tiene un perfil con el mismo nombre. " +"¿Desea sobrescribirlo?\n" +"\tSí: sobrescribe el perfil de impresora con el mismo nombre, y los perfiles " +"de filamento y proceso con el mismo nombre de perfil se volverán a crear \n" +"y los perfiles de filamento y proceso sin el mismo nombre de perfil se " +"reservarán.\n" +"\tCancelar: No crear perfil y volver a la interfaz de creación." + +msgid "You need to select at least one filament preset." +msgstr "Necesita seleccionar al menos un perfil de filamento." + +msgid "You need to select at least one process preset." +msgstr "Necesita seleccionar al menos un perfil de proceso." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Fallo crenado perfiles de filamento de la siguiente manera:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "Fallo crenado perfiles de proceso de la siguiente manera:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Fabricante no encontrado, por favor seleccione uno." + +msgid "Current vendor has no models, please reselect." +msgstr "El fabricante actual no tiene modelos, seleccionar otro." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"No ha seleccionado el fabricante y el modelo o no ha introducido el " +"fabricante y el modelo personalizados." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"Puede haber caracteres de escape en el fabricante o modelo de impresora " +"personalizado. Por favor, elimínelos y vuelva a introducirlos." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"Todas las entradas en el fabricante o modelo de impresora personalizado son " +"espacios. Vuelva a introducirlos." + +msgid "Please check bed printable shape and origin input." +msgstr "" +"Por favor, compruebe la forma imprimible de la cama y la entrada de origen." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Todavía no ha seleccionado impresora para sustituir la boquilla, por favor, " +"selecciónela." + +msgid "Create Printer Successful" +msgstr "Éxito Creando la Impresora" + +msgid "Create Filament Successful" +msgstr "Éxito Creando el Filamento" + +msgid "Printer Created" +msgstr "Impresora Creada" + +msgid "Please go to printer settings to edit your presets" +msgstr "Vaya a la configuración de la impresora para editar los perfiles" + +msgid "Filament Created" +msgstr "Filamento Creado" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Por favor, vaya a la configuración de filamento para editar sus ajustes " +"perfiles si es necesario.\n" +"Tenga en cuenta que la temperatura de la boquilla, la temperatura de la cama " +"caliente y la velocidad volumétrica máxima tienen un impacto significativo " +"en la calidad de impresión. Por favor, configúrelos con cuidado." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"Orca ha detectado que la función de sincronización de los perfiles de " +"usuario no está activada, lo que puede dar lugar a una configuración " +"incorrecta del filamento en la página Dispositivo.\n" +"Haga clic en \"Sincronizar perfiles de usuario\" para activar la función de " +"sincronización." + +msgid "Printer Setting" +msgstr "Ajustes de Impresora" + +msgid "Printer config bundle(.orca_printer)" +msgstr "Paquete de configuración de impresora(.orca_printer)" + +msgid "Filament bundle(.orca_filament)" +msgstr "Paquete de filamento(.orca_filament)" + +msgid "Printer presets(.zip)" +msgstr "Perfiles de Impresora(.zip)" + +msgid "Filament presets(.zip)" +msgstr "Perfiles de Filamento(.zip)" + +msgid "Process presets(.zip)" +msgstr "Perfiles de Proceso(.zip)" + +msgid "initialize fail" +msgstr "fallo inicializando" + +msgid "add file fail" +msgstr "fallo añadiendo el archivo" + +msgid "add bundle structure file fail" +msgstr "fallo añadiendo paquete de estructura de archivo" + +msgid "finalize fail" +msgstr "fallo finalizando" + +msgid "open zip written fail" +msgstr "fallo escritura zip" + +msgid "Export successful" +msgstr "Exportación con éxito" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"La carpeta '%s' ya existe en el directorio actual. ¿Desea borrarla y " +"reescribirla?\n" +"Si no es así, se añadirá un sufijo de tiempo y podrá modificar el nombre " +"después de la creación." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"Impresora y todos los perfiles de filamento y proceso que pertenecen a la " +"impresora. \n" +"Se puede compartir con otros." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Conjunto de perfiles de relleno del usuario. \n" +"Se puede compartir con otros." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Mostrar sólo los nombres de impresora con cambios en los perfiles de " +"impresora, filamento y proceso." + +msgid "Only display the filament names with changes to filament presets." +msgstr "" +"Mostrar sólo los nombres de impresora con cambios en los perfiles de " +"impresora, filamento y proceso." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Sólo se mostrarán los nombres de impresoras con perfiles de impresora de " +"usuario, y cada perfil que elija se exportará como un archivo zip." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Sólo se mostrarán los nombres de filamento con perfiles de filamento de " +"usuario, y todos los perfiles de filamento de usuario de cada nombre de " +"filamento que seleccione se exportarán como un archivo zip." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Sólo se mostrarán los nombres de impresoras con perfiles de procesos " +"modificados, \n" +"y todos los perfiles de procesos de usuario de cada nombre de impresora que " +"seleccione se exportarán como un archivo zip." + +msgid "Please select at least one printer or filament." +msgstr "Seleccione al menos una impresora o filamento." + +msgid "Please select a type you want to export" +msgstr "Seleccione el tipo que desea exportar" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "Failed to create temporary folder, please try Export Configs again." + +msgid "Edit Filament" +msgstr "Editar Filamento" + +msgid "Filament presets under this filament" +msgstr "Perfiles de filamento bajo este filamento" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Nota: Si el único perfil bajo este filamento es borrado, el filamento se " +"borrará después de salir del diálogo." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "Los perfiles heredados de otros perfiles no pueden borrarse" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "El siguiente perfil hereda de este perfil." +msgstr[1] "Los siguientes perfiles heredan de este perfil." + +msgid "Delete Preset" +msgstr "Borrar Perfil" + +msgid "Are you sure to delete the selected preset?" +msgstr "¿Está seguro de borrar el perfil seleccionado?" + +msgid "Delete preset" +msgstr "Borrar perfil" + +msgid "+ Add Preset" +msgstr "+ Añadir Perfil" + +msgid "Delete Filament" +msgstr "Borrar Filamento" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Se eliminarán todos los perfiles de filamento que pertenezcan a este " +"filamento. \n" +"Si está utilizando este filamento en su impresora, restablezca la " +"información del filamento para esa ranura." + +msgid "Delete filament" +msgstr "Borrar filamento" + +msgid "Add Preset" +msgstr "Añadir Perfil" + +msgid "Add preset for new printer" +msgstr "Añadir perfil para nueva impresora" + +msgid "Copy preset from filament" +msgstr "Copiar perfil desde filamento" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "Perfil de filamento no encontrado, por favor, seleccione otro" + +msgid "[Delete Required]" +msgstr "[Necesario Eliminar]" + +msgid "Edit Preset" +msgstr "Editar Perfil" + +msgid "For more information, please check out Wiki" +msgstr "Para más información, consulte la Wiki" + +msgid "Collapse" +msgstr "Colapsar" + +msgid "Daily Tips" +msgstr "Consejos Diarios" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "boquilla memorizada: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"¿El diámetro de la boquilla en su configuración no corresponde con el " +"diámetro memorizado? ¿Hizo un cambio de boquilla?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*El material de impresión %s con %s podría causar daños en la boquilla" + +msgid "Need select printer" +msgstr "Necesario seleccionar impresora" + +msgid "The start, end or step is not valid value." +msgstr "El inicio, el final o el paso no tienen un valor válido." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"No es posible calibrar debido a que el valor del rango de calibración es muy " +"grande, o el paso es muy pequeño" + +msgid "Physical Printer" +msgstr "Impresora física" + +msgid "Print Host upload" +msgstr "Carga de Host de Impresión" + +msgid "Could not get a valid Printer Host reference" +msgstr "No se ha podido obtener una referencia de host de impresora válida" + +msgid "Success!" +msgstr "¡Exitoso!" + +msgid "Are you sure to log out?" +msgstr "¿Estás seguro de cerrar la sesión?" + +msgid "Refresh Printers" +msgstr "Refrescar Impresoras" + +msgid "View print host webui in Device tab" +msgstr "Ver el host de impresión webui en la pestaña Dispositivo" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "Sustituir la pestaña de dispositivos de BambuLab por print host webui" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"El archivo HTTPS CA es opcional. Solo es necesario si utiliza HTTPS con un " +"certificado autofirmado." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "" +"Archivos de certificado (*.crt, *.pem)|*.crt;*.pem|Todos los archivos|*.*" + +msgid "Open CA certificate file" +msgstr "Abrir archivo de certificado CA" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"En este sistema, %s utiliza certificados HTTPS del almacén de certificados o " +"llavero del sistema." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Para utilizar un archivo de CA personalizado, importe su archivo de CA a " +"Almacén de certificados / Llavero." + +msgid "Login/Test" +msgstr "Inicio de sesión/Prueba" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"Ha fallado la conexión a impresoras conectadas a través del host de " +"impresión." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Tipo de host de impresión no coincidente: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "La conexión a AstroBox funciona correctamente." + +msgid "Could not connect to AstroBox" +msgstr "No se ha podido conectar con AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Nota: Se requiere la versión 1.1.0 de AstroBox como mínimo." + +msgid "Connection to Duet works correctly." +msgstr "La conexión con Duet funciona correctamente." + +msgid "Could not connect to Duet" +msgstr "No se puede conectar a Duet" + +msgid "Unknown error occured" +msgstr "Se ha producido un error desconocido" + +msgid "Wrong password" +msgstr "Contraseña incorrecta" + +msgid "Could not get resources to create a new connection" +msgstr "No se han podido obtener recursos para crear una nueva conexión" + +msgid "Upload not enabled on FlashAir card." +msgstr "La carga no está activada en la tarjeta FlashAir." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "" +"La conexión a FlashAir funciona correctamente y la carga está activada." + +msgid "Could not connect to FlashAir" +msgstr "No se ha podido conectar a FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Nota: Se requiere FlashAir con firmware 2.00.02 o más reciente y función de " +"carga activada." + +msgid "Connection to MKS works correctly." +msgstr "La conexión con MKS funciona correctamente." + +msgid "Could not connect to MKS" +msgstr "No se ha podido conectar con MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "La conexión con OctoPrint funciona correctamente." + +msgid "Could not connect to OctoPrint" +msgstr "No se ha podido conectar con OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Nota: Se requiere una versión de OctoPrint al menos 1.1.0." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "La conexión a Prusa SL1 / SL1S funciona correctamente." + +msgid "Could not connect to Prusa SLA" +msgstr "No se ha podido conectar con Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "La conexión a PrusaLink funciona correctamente." + +msgid "Could not connect to PrusaLink" +msgstr "No se pudo conectar a PrusaLink" + +msgid "Storages found" +msgstr "Almacenes encontrados" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : sólo lectura" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : no hay espacio libre" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" +"La carga ha fallado. No se ha encontrado almacenamiento adecuado en %1%." + +msgid "Connection to Prusa Connect works correctly." +msgstr "La conexión a Prusa Connect funciona correctamente." + +msgid "Could not connect to Prusa Connect" +msgstr "No se pudo conectar a Prusa Connect" + +msgid "Connection to Repetier works correctly." +msgstr "La conexión con Repetier funciona correctamente." + +msgid "Could not connect to Repetier" +msgstr "No se ha podido conectar con Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Nota: Se requiere la versión 0.90.0 de Repetier como mínimo." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"Estado HTTP: %1% \n" +"Cuerpo del mensaje: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Falló el análisis de la respuesta del host. \n" +"Cuerpo del mensaje: \"%1%\" \n" +"Error: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Fallo en la enumeración de impresoras host. \n" +"Cuerpo del mensaje: \"%1%\" \n" +"Error: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"Tiene una altura de capa pequeña, y da como resultado unas líneas de capa " +"casi inapreciables y una alta calidad de impresión. Es adecuado para la " +"mayoría de los casos generales de impresión." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,2 mm, tiene " +"velocidades y aceleraciones más bajas, y el patrón de relleno de baja " +"densidad es Gyroide. Esto da como resultado una calidad de impresión mucho " +"mayor, pero un tiempo de impresión mucho más largo." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Comparado con el perfil por defecto de una boquilla de 0,2 mm, tiene una " +"altura de capa ligeramente mayor, y da como resultado líneas de capa casi " +"inapreciables, y un tiempo de impresión ligeramente menor." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,2 mm, tiene " +"una mayor altura de capa. Esto se traduce en líneas de capa ligeramente " +"visibles, pero en un tiempo de impresión más corto." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,2 mm, tiene " +"una altura de capa menor. Esto da como resultado líneas de capa casi " +"invisibles y una mayor calidad de impresión, pero un tiempo de impresión más " + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,2 mm, tiene " +"unas líneas de capa más pequeñas, velocidades y aceleraciones más bajas, y " +"el patrón de relleno de baja densidad es Gyroide. Esto da como resultado " +"líneas de capa casi invisibles y una calidad de impresión mucho mayor, pero " +"un tiempo de impresión mucho más largo." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"En comparación con el perfil predeterminado de boquilla de 0,2 mm, tiene una " +"altura de capa menor, y da como resultado líneas de capa mínimas y una mayor " +"calidad de impresión, pero un tiempo de impresión más corto." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,2 mm, tiene " +"unas líneas de capa más pequeñas, velocidades y aceleraciones más bajas, y " +"el patrón de relleno de baja densidad es Gyroide. Por lo tanto, da como " +"resultado líneas de capa mínimas y una calidad de impresión mucho mayor, " +"pero un tiempo de impresión mucho más largo." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"Tiene una altura de capa normal, y da como resultado unas líneas de capa y " +"una calidad de impresión medias. Es adecuado para la mayoría de los casos de " +"impresión." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene " +"más perímetros y un mayor relleno de baja densidad. Esto se traduce en una " +"mayor resistencia de impresión, pero un mayor consumo de filamento y un " +"tiempo de impresión más largo." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene " +"una mayor altura de capa. Esto da lugar a líneas de capa más visibles y a " +"una menor calidad de impresión, pero un tiempo de impresión ligeramente " +"inferior." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene " +"una mayor altura de capa, y da como resultado líneas de capa más visibles y " +"una menor calidad de impresión, pero un tiempo de impresión más corto." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene " +"una altura de capa menor. Esto se traduce en menos líneas de capa visibles y " +"mayor calidad de impresión, pero mayor tiempo de impresión." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene " +"una altura de capa menor, velocidades y aceleraciones más bajas, y el patrón " +"de relleno de baja densidad es Gyroide. Por lo tanto, da como resultado " +"menos líneas de capa visibles y una calidad de impresión mucho mayor, pero " +"un tiempo de impresión mucho más largo." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene " +"una altura de capa menor. Esto se traduce en unas líneas de capa casi " +"inapreciables y una mayor calidad de impresión, pero un tiempo de impresión " +"más largo." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene " +"una altura de capa menor, velocidades y aceleraciones más bajas, y el patrón " +"de relleno de baja densidad es Gyroide. Por lo tanto, resulta en líneas de " +"capa casi insignificantes y una calidad de impresión mucho mayor, pero un " +"tiempo de impresión mucho más largo." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,4 mm, tiene " +"una altura de capa menor. Esto se traduce en unas líneas de capa casi " +"inapreciables y un mayor tiempo de impresión." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"Tiene una gran altura de capa, y da lugar a líneas de capa visibles y a una " +"calidad y tiempo de impresión ordinarios." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,6 mm, tiene " +"más bucles de perímetro y una mayor relleno de baja densidad. Esto se " +"traduce en una mayor resistencia de impresión, pero un mayor consumo de " +"filamento y un tiempo de impresión más largo." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,6 mm, tiene " +"una mayor altura de capa. Esto da lugar a líneas de capa más visibles y a " +"una menor calidad de impresión, pero a un menor tiempo de impresión en " +"algunos casos." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,6 mm, tiene " +"una mayor altura de capa. Esto da lugar a líneas de capa mucho más visibles " +"y a una calidad de impresión mucho menor, pero un tiempo de impresión más " +"corto en algunos casos." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,6 mm, tiene " +"una altura de capa menor. Esto se traduce en menos líneas de capa visibles y " +"una calidad de impresión ligeramente superior, pero un tiempo de impresión " +"más largo." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,6 mm, tiene " +"una altura de capa menor, y da como resultado líneas de capa menos visibles " +"y una mayor calidad de impresión, pero un tiempo de impresión más largo." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"Tiene una altura de capa muy grande, y da lugar a líneas de capa muy " +"visibles, baja calidad de impresión y menor tiempo de impresión." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,8 mm, tiene " +"una mayor altura de capa. Esto da lugar a líneas de capa muy visibles y a " +"una calidad de impresión mucho menor, pero un tiempo de impresión más corto " +"en algunos casos." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,8 mm, tiene " +"una altura de capa mucho mayor. Esto da lugar a líneas de capa " +"extremadamente visibles y a una calidad de impresión mucho menor, pero un " +"tiempo de impresión mucho más corto en algunos casos." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,8 mm, tiene " +"una altura de capa ligeramente menor. Esto se traduce en líneas de capa " +"ligeramente menores pero aún visibles y en una calidad de impresión " +"ligeramente superior, pero mayor tiempo de impresión en algunos casos." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"En comparación con el perfil predeterminado de una boquilla de 0,8 mm, tiene " +"una altura de capa menor. Esto se traduce en menos líneas de capa, aunque " +"visibles, y en una calidad de impresión ligeramente superior, pero con un " +"tiempo de impresión más largo en algunos casos." + +msgid "Connected to Obico successfully!" +msgstr "¡Conectado a Obico con éxito!" + +msgid "Could not connect to Obico" +msgstr "No es posible conectarse a Obico" + +msgid "Connected to SimplyPrint successfully!" +msgstr "¡Se ha conectado correctamente a SimplyPrint!" + +msgid "Could not connect to SimplyPrint" +msgstr "No se ha podido conectar con SimplyPrint" + +msgid "Internal error" +msgstr "Error interno" + +msgid "Unknown error" +msgstr "Error desconocido" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" +"La cuenta SimplyPrint no está vinculada. Vaya a Opciones de conexión para " +"configurarla." + +msgid "Connection to Flashforge works correctly." +msgstr "La conexión con Flashforge funciona correctamente." + +msgid "Could not connect to Flashforge" +msgstr "No se ha podido conectar a Flashforge" + +msgid "The provided state is not correct." +msgstr "El estado proporcionado no es correcto." + +msgid "Please give the required permissions when authorizing this application." +msgstr "" +"Por favor, conceda los permisos necesarios al autorizar esta aplicación." + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" +"Ha ocurrido algo inesperado al intentar iniciar sesión, inténtelo de nuevo." + +msgid "User cancelled." +msgstr "Cancelador por el usuario." + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"Perímetro preciso. \n" +"¿Sabía que activar el perímetro precisa puede mejorar la precisión y la " +"uniformidad de las capas?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"Modo sándwich \n" +"¿Sabías que puedes utilizar el modo sándwich (interior-exterior-interior) " +"para mejorar la precisión y la consistencia de las capas si tu modelo no " +"tiene voladizos muy pronunciados?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"Temperatura de la cámara \n" +"¿Sabía que Snapmaker Orca admite la temperatura de la cámara?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"Calibración \n" +"¿Sabías que calibrar tu impresora puede hacer maravillas? Echa un vistazo a " +"nuestra querida solución de calibración en Snapmaker Orca." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"Ventilador auxiliar\n" +"¿Sabía que Snapmaker Orca admite un ventilador auxiliar de refrigeración de " +"piezas?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"Filtración de aire/ventilador Exhaust \n" +"¿Sabías que Snapmaker Orca admite filtración de aire/ventilador Exhaust?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"Ventana de G-Code \n" +"Puede activar/desactivar la ventana de G-Code pulsando la tecla C." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"Cambiar de espacio de trabajo. \n" +"Puede cambiar entre los espacios de trabajo Preparar y Ver " +"pulsando la tecla Tab." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"Cómo utilizar los atajos de teclado \n" +"¿Sabías que Snapmaker Orca ofrece una amplia gama de atajos de teclado y " +"operaciones de escenas 3D." + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"Invertir en impar \n" +"Sabía que la función Invertir en impar puede mejorar " +"significativamente la calidad de la superficie de sus voladizos?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Herramienta de corte\n" +"¿Sabías que puedes cortar un modelo en cualquier ángulo y posición con la " +"herramienta de corte?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Arreglar modelo \n" +"¿Sabías que puedes arreglar un modelo 3D dañado para evitar muchos problemas " +"de corte en el sistema Windows?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Intervalo\n" +"¿Sabías que puedes generar un vídeo de intervalo de trabajo durante cada " +"impresión?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Auto-organizar\n" +"¿Sabías que puedes ordenar automáticamente todos los objetos de tu proyecto?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Orientación automática\n" +"¿Sabía que puede girar los objetos a una orientación óptima para la " +"impresión con un simple clic?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Acostar sobre cara\n" +"¿Sabías que puedes orientar rápidamente un modelo para que una de sus caras " +"apoye en la cama de impresión? Seleccione la función 'Acostar sobre cara' o " +"presione la tecla F." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Lista de objetos\n" +"¿Sabías que puedes ver todos los objetos/piezas en una lista y cambiar los " +"ajustes de cada objeto/pieza?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"Funcionalidad de búsqueda \n" +"¿Sabía que puede utilizar la herramienta de búsqueda para encontrar " +"rápidamente un ajuste específico de Snapmaker Orca?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"Simplificar modelo \n" +"¿Sabía que puede reducir el número de triángulos de una malla utilizando la " +"función Simplificar malla? Haga clic con el botón derecho del ratón en el " +"modelo y seleccione Simplificar modelo." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Tabla de parámetros de laminado\n" +"¿Sabía que puede ver todos los objetos/partes de una tabla y cambiar los " +"parámetros de cada objeto/parte?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Dividir en Objetos/Partes\n" +"¿Sabías que puedes dividir un objeto grande en pequeños para colorearlo o " +"imprimirlo fácilmente?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"Sustraer una parte \n" +"¿Sabías que puedes sustraer una malla de otra utilizando el modificador " +"Parte negativa? De esta forma puedes, por ejemplo, crear agujeros fácilmente " +"redimensionables directamente en Snapmaker Orca." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP\n" +"¿Sabías que puedes mejorar la calidad de impresión cortando un archivo STEP " +"en lugar de un STL?\n" +"Snapmaker Orca soporta el corte de archivos STEP, proporcionando resultados más " +"suaves que un STL de menor resolución. ¡Pruébalo!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Ubicación de la costura Z\n" +"¿Sabías que puedes personalizar la ubicación de la costura Z, e incluso " +"pintarla en tu impresión, para tenerla en un lugar menos visible? Esto " +"mejora el aspecto general de tu modelo. ¡Compruébalo!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Ajuste fino del flujo\n" +"¿Sabías que el flujo puede ajustarse para obtener impresiones aún más " +"atractivas? Dependiendo del material, puede mejorar el acabado general del " +"modelo impreso realizando algunos ajustes." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Divide tus impresiones en planchas\n" +"¿Sabías que puedes dividir un modelo con muchas piezas en bandejas " +"individuales listas para imprimir? Esto simplificará el proceso de " +"seguimiento de todas las piezas." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Acelere su impresión con la altura de capa adaptable\n" +"¿Sabías que puedes imprimir un modelo aún más rápido utilizando la opción " +"Altura de capa adaptable? ¡Compruébalo!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Pintura de soportes\n" +"¿Sabías que puedes pintar la ubicación de los soportes? Esta función " +"facilita la colocación del material de soporte sólo en las secciones del " +"modelo que realmente lo necesitan." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Diferentes tipos de soportes\n" +"¿Sabías que puedes elegir entre varios tipos de soportes? Los soportes en " +"forma de árbol son ideales para modelos orgánicos, ahorran filamento y " +"mejoran la velocidad de impresión. ¡Compruébalos!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Impresión de filamento de seda\n" +"¿Sabías que el filamento de seda necesita una consideración especial para " +"imprimirlo con éxito? Se recomienda siempre una temperatura más alta y una " +"velocidad más baja para obtener los mejores resultados." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Borde de adherencia para una mejor adherencia\n" +"¿Sabía que cuando los modelos de impresión tienen una pequeña interfaz de " +"contacto con la superficie de impresión, se recomienda utilizar un borde de " +"adherencia?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Establecer parámetros para varios objetos\n" +"¿Sabías que puedes establecer parámetros de corte para todos los objetos " +"seleccionados a la vez?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Apilar objetos\n" +"¿Sabías que puedes apilar objetos como un todo?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Descarga en soporte/objetos/relleno\n" +"¿Sabías que puedes ahorrarte el filamento desperdiciado vertiéndolo en " +"soporte/objetos/relleno durante el cambio de filamento?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Mejorar la resistencia\n" +"¿Sabías que puedes utilizar más bucles de perímetro y mayor densidad de " +"relleno de baja densidad para mejorar la resistencia del modelo?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Cuando es necesario imprimir con la puerta de la impresora abierta \n" +"¿Sabía usted que la apertura de la puerta de la impresora puede reducir la " +"probabilidad de obstrucción del extrusor / hotend al imprimir filamento de " +"baja temperatura con una temperatura más alta de la cubierta. Más " +"información sobre esto en la Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Evite la deformación\n" +"Sabías que al imprimir materiales propensos a la deformación como el ABS, " +"aumentar adecuadamente la temperatura de la cama térmica puede reducir la " +"probabilidad de deformaciones." + +#~ msgid "" +#~ "When recording timelapse without toolhead, it is recommended to add a " +#~ "\"Timelapse Wipe Tower\" \n" +#~ "by right-click the empty position of build plate and choose \"Add " +#~ "Primitive\"->\"Timelapse Wipe Tower\".by right-click the empty position " +#~ "of build plate and choose \"Add Primitive\"->\"Timelapse Wipe Tower\"." +#~ msgstr "" +#~ "Cuando grabamos timelapse sin cabezal de impresión, es recomendable " +#~ "añadir un \"Torre de Purga de Intervalo\" \n" +#~ "presionando con el botón derecho la posición vacía de la bandeja de " +#~ "construcción y elegir \"Añadir Primitivo\"->\"Intervalo de Torre de Purga" +#~ "\"." + +#~ msgid "" +#~ "We would rename the presets as \"Vendor Type Serial @printer you selected" +#~ "\". \n" +#~ "We would rename the presets as \"Vendor Type Serial @printer you selected" +#~ "\". \n" +#~ "To add preset for more printers, Please go to printer selection" +#~ msgstr "" +#~ "Cambiaríamos el nombre de los preajustes a \"Número de serie del Vendedor " +#~ "@impresora que ha seleccionado\". \n" +#~ "Para añadir preajustes para más impresoras, vaya a selección de impresoras" + +#~ msgid "Current association: " +#~ msgstr "Asociación actual:" + +#~ msgid "Associate prusaslicer://" +#~ msgstr "Asociar prusaslicer://" + +#~ msgid "Not associated to any application" +#~ msgstr "No asociado a ninguna aplicación" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "models from Printable.com" +#~ msgstr "" +#~ "Asociar Snapmaker Orca con prusaslicer:// enlaces para que Orca puede abrir " +#~ "modelos de Printables.com" + +#~ msgid "Associate bambustudio://" +#~ msgstr "Asociar bambustudio://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with bambustudio:// links so that Orca can open " +#~ "models from makerworld.com" +#~ msgstr "" +#~ "Asociar Snapmaker Orca con bambustudio:// enlaces para que Orca puede abrir " +#~ "modelos de makerworld.com" + +#~ msgid "Associate cura://" +#~ msgstr "Asociar cura://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with cura:// links so that Orca can open models from " +#~ "thingiverse.com" +#~ msgstr "" +#~ "Asociar Snapmaker Orca con enlaces cura:// para que Orca pueda abrir modelos " +#~ "desde thingiverse.com" + +#~ msgid "" +#~ "File size exceeds the 100MB upload limit. Please upload your file through " +#~ "the panel." +#~ msgstr "" +#~ "El tamaño del archivo supera el límite de carga de 100 MB. Por favor, " +#~ "cargue su archivo a través del panel." + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Por favor, introduzca un valor válido (K en 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Por favor, introduzca un valor válido (K en 0~0.3, N en 0.6~2.0))" + +#~ msgid "Select connected printetrs (0/6)" +#~ msgstr "Seleccionar impresoras conectadas (0/6)" + +#, c-format, boost-format +#~ msgid "Select Connected Printetrs (%d/6)" +#~ msgstr "Seleccionar impresoras conectadas (%d/6)" + +#~ msgid "PrintingPause" +#~ msgstr "Impresión Pausada" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "Printer local connection failed; please try again." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Consulte los detalles de la Calibración de las Dinámicas de Flujo en " +#~ "nuestra wiki.\n" +#~ "\n" +#~ "Normalmente la calibración es innecesaria. Cuando se inicia una impresión " +#~ "de un solo color/material, con la opción \"Calibración de la dinámica de " +#~ "caudal\" marcada en el menú de inicio de impresión, la impresora seguirá " +#~ "el método antiguo, calibrar el filamento antes de la impresión; Cuando se " +#~ "inicia una impresión de varios colores/materiales, la impresora utilizará " +#~ "el parámetro de compensación por defecto para el filamento durante cada " +#~ "cambio de filamento que tendrá un buen resultado en la mayoría de los " +#~ "casos.\n" +#~ "\n" +#~ "Tenga en cuenta que hay algunos casos en los que el resultado de la " +#~ "calibración no es fiable: el uso de una placa de textura para hacer la " +#~ "calibración; la bandeja no tiene buena adherencia (por favor, lave la " +#~ "bandeja o aplique pegamento) ... Puede encontrar más información en " +#~ "nuestra wiki.\n" +#~ "\n" +#~ "Los resultados de la calibración tienen alrededor de un 10 por ciento de " +#~ "fluctuación en nuestra prueba, lo que puede causar que el resultado no " +#~ "sea exactamente el mismo en cada calibración. Todavía estamos " +#~ "investigando la causa raíz para hacer mejoras con nuevas actualizaciones." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Solo se va a guardar uno de los resultados con el mismo nombre. ¿Está " +#~ "seguro que desea sobrescribir el otro resultado?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Hay ya un resultado histórico de calibración con el mismo nombre: %s. " +#~ "Solo se guardará uno de los resultados con el mismo nombre. ¿·Está seguro " +#~ "que quiere sobrescribir el resultado histórico?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "" +#~ "Por favor, encuentre la esquina con ángulo perfecto para la extrusión" + +#~ msgid "X" +#~ msgstr "X" + +#~ msgid "Y" +#~ msgstr "Y" + +#~ msgid "" +#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed " +#~ "first, which works best in most cases.\n" +#~ "\n" +#~ "Printing walls first may help with extreme overhangs as the walls have " +#~ "the neighbouring infill to adhere to. However, the infill will slighly " +#~ "push out the printed walls where it is attached to them, resulting in a " +#~ "worse external surface finish. It can also cause the infill to shine " +#~ "through the external surfaces of the part." +#~ msgstr "" +#~ "Orden de los perímetros/relleno. Cuando la casilla no está marcada, los " +#~ "muros se imprimen primero, lo que funciona mejor en la mayoría de los " +#~ "casos.\n" +#~ "\n" +#~ "Imprimir primero los muros puede ayudar con salientes extremos ya que los " +#~ "muros tienen el relleno vecino al que adherirse. Sin embargo, el relleno " +#~ "empujará ligeramente hacia fuera los perímetros impresas donde se une a " +#~ "ellos, lo que resulta en un peor acabado de la superficie exterior. " +#~ "También puede hacer que el relleno brille a través de las superficies " +#~ "externas de la pieza." + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca está basado en BambuStudio por Bambulab, el cual está basado " +#~ "en PrusaSlicer por Prusa Research. PrusaSlicer está basado en Slic3r de " +#~ "Alessandro Ranellucci y la comunidad RepRap" + +#~ msgid "Export &Configs" +#~ msgstr "Exportar &Configuraciones" + +#~ msgid "Infill direction" +#~ msgstr "Ángulo del relleno" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Habilite esto para obtener un archivo de G-Code que tiene movimientos G2 " +#~ "y G3. Y la tolerancia de ajuste es la misma con la resolución" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "El área de relleno se amplía ligeramente para que se solape con el " +#~ "perímetro y así mejorar la adherencia. El valor porcentual es relativo a " +#~ "la anchura de la línea del relleno de baja densidad" + +#~ msgid "Export Configs" +#~ msgstr "Configuración de Exportación" + +#~ msgid "Unload Filament" +#~ msgstr "Descargar" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Elija una ranura AMS y pulse el botón \"Cargar\" o \"Descargar\" para " +#~ "cargar o descargar automáticamente el filamento." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "Placa Base" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "- ℃" +#~ msgstr "- ℃" + +#~ msgid "0.5" +#~ msgstr "0.5" + +#~ msgid "0.005" +#~ msgstr "0.005" + +#~ msgid "active" +#~ msgstr "activo" + +#~ msgid "Jump to layer" +#~ msgstr "Salta a la capa" + +#~ msgid "Cabin humidity" +#~ msgstr "Humedad de cabina" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "El verde significa que la humedad de AMS es normal, el naranja representa " +#~ "que la humedad es alta, el rojo representa que la humedad es demasiado " +#~ "alta.(Hygrometro: menos que el mejor.)" + +#~ msgid "Desiccant status" +#~ msgstr "Estado del secante" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "Si estado del secante es menor que las dos barras indica que el secante " +#~ "puede estar inactivo. Por favor cambie el secante(Las barras: más que el " +#~ "mejor)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Nota: Cuando se abre la tapa o se cambia el paquete desecante, puede " +#~ "tardar horas o una noche en absorber la humedad. Las bajas temperaturas " +#~ "también ralentizan el proceso. Durante este tiempo, es posible que el " +#~ "indicador no represente la cámara con precisión." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Nota: si se inserta un nuevo filamento durante la impresión, el AMS no " +#~ "leerá automáticamente ninguna información hasta que la impresión haya " +#~ "finalizado." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "Exportación de G-Code a %1% con éxito" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "¡Inicialización fallida (No hay dispositivo)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "¡Inicialización fallida (No hay Cámara)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "La impresora está ocupada descargando. Por favor, espere a que finalice." + +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "" +#~ "Fallo inicializando (No soportado en la actual versión de la impresora)!" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Inicialización fallida (No accesible en el modo solo Red Local)" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "Inicialización fallida (Perdida la IP de red de la impresora)" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Parado [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "¡La carga ha fallado [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "No files [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Load failed [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Failed to fetch model infomation from printer." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Fallo al analizar la información de modelado." + +#~ msgid "Connection lost. Please retry." +#~ msgstr "Conexión perdida. Por favor, reinténtelo." + +#~ msgid "File not exists." +#~ msgstr "El archivo no existe." + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Has modificado algunos ajustes del perfil \"%1%\". \n" +#~ "¿Deseas mantener estas modificaciones en los ajustes (nuevo valor) " +#~ "después de cambiar de perfil?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Has cambiado algunos ajustes de perfil. \n" +#~ "¿Deseas mantener estas modificaciones en los ajustes (nuevo valor) " +#~ "después de cambiar de perfil?" + +#~ msgid " ℃" +#~ msgstr " ℃" + +#~ msgid "" +#~ "Please go to filament setting to edit your presets if you need.\n" +#~ "Please note that nozzle temperature, hot bed temperature, and maximum " +#~ "volumetric speed have a significant impact on printing quality. Please " +#~ "set them carefully." +#~ msgstr "" +#~ "Por favor, vaya a la configuración de filamento para editar sus perfiles " +#~ "si lo necesita.\n" +#~ "Tenga en cuenta que la temperatura de la boquilla, la temperatura de la " +#~ "cama caliente, y la velocidad volumétrica máxima tienen un impacto " +#~ "significativo en la calidad de impresión. Por favor, ajústelas con " +#~ "cuidado." + +#~ msgid "Studio Version:" +#~ msgstr "Versión de Orca:" + +#~ msgid "Test BambuLab" +#~ msgstr "Prueba Snapmaker Orca" + +#~ msgid "Test BambuLab:" +#~ msgstr "Prueba Snapmaker Orca:" + +#~ msgid "Test HTTP" +#~ msgstr "Prueba HTTP" + +#~ msgid "Test HTTP Service:" +#~ msgstr "Prueba Servicio HTTP:" + +#~ msgid "Test storage" +#~ msgstr "Prueba de almacenamiento" + +#~ msgid "Test Storage Upload:" +#~ msgstr "Prueba de Carga de Almacenamiento:" + +#~ msgid "Test storage upgrade" +#~ msgstr "Prueba de actualización de almacenamiento" + +#~ msgid "Test Storage Upgrade:" +#~ msgstr "Prueba de Actualización de Almacenamiento:" + +#~ msgid "Test storage download" +#~ msgstr "Prueba de descarga de almacenamiento" + +#~ msgid "Test Storage Download:" +#~ msgstr "Prueba de Descarga de Almacenamiento:" + +#~ msgid "Test plugin download" +#~ msgstr "Prueba de descarga de plugin" + +#~ msgid "Test Plugin Download:" +#~ msgstr "Prueba de Descarga de Plugin:" + +#~ msgid "Test Storage Upload" +#~ msgstr "Prueba de Carga de Almacenamiento" + +#~ msgid "" +#~ "The speed setting exceeds the printer's maximum speed " +#~ "(machine_max_speed_x/machine_max_speed_y).\n" +#~ "Orca will automatically cap the print speed to ensure it doesn't surpass " +#~ "the printer's capabilities.\n" +#~ "You can adjust the maximum speed setting in your printer's configuration " +#~ "to get higher speeds." +#~ msgstr "" +#~ "El ajuste de velocidad supera la velocidad máxima de la impresora " +#~ "(machine_max_speed_x/machine_max_speed_y). Orca limitará automáticamente " +#~ "la velocidad de impresión para garantizar que no supere las capacidades " +#~ "de la impresora. Puedes ajustar el ajuste de velocidad máxima en la " +#~ "configuración de la impresora para obtener velocidades superiores." + +#~ msgid "" +#~ "Alternate extra wall only works with ensure vertical shell thickness " +#~ "disabled. " +#~ msgstr "" +#~ "La pared adicional alternativa sólo funciona si se desactiva la opción de " +#~ "asegurar el grosor del perímetro vertical. " + +#~ msgid "" +#~ "Change these settings automatically? \n" +#~ "Yes - Disable ensure vertical shell thickness and enable alternate extra " +#~ "wall\n" +#~ "No - Dont use alternate extra wall" +#~ msgstr "" +#~ "¿Cambiar estos ajustes automáticamente? \n" +#~ "Sí - Desactivar el grosor del perímetro vertical y activar la pared " +#~ "adicional alternativa No - No utilizar la pared adicional alternativa" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Añadir relleno sólido al lado de capas inclinadas para garantizar el " +#~ "grosor de carcasa vertical (capas sólidas superior+inferior)" + +#~ msgid " " +#~ msgstr " " + +#~ msgid "Text-Rotate" +#~ msgstr "Rotación de texto" + +#~ msgid "SVG-Rotate" +#~ msgstr "Rotar-SVG" + +#~ msgid "Resize" +#~ msgstr "Reescalar" + +#~ msgid "Configuration package updated to " +#~ msgstr "Paquete de configuración actualizado a " + +#~ msgid "" +#~ "Improve shell precision by adjusting outer wall spacing. This also " +#~ "improves layer consistency." +#~ msgstr "" +#~ "Mejorar precisión de la carcasa ajustando el espaciado del perímetro " +#~ "exterior. Esto además mejora la consistencia de capa." + +#~ msgid "" +#~ "The minimum printing speed for the filament when slow down for better " +#~ "layer cooling is enabled, when printing overhangs and when feature speeds " +#~ "are not specified explicitly." +#~ msgstr "" +#~ "La velocidad mínima de impresión para el filamento cuando la " +#~ "ralentización para un mejor enfriamiento de la capa está activada, cuando " +#~ "se imprimen voladizos y cuando las velocidades de las características no " +#~ "se especifican explícitamente." + +#~ msgid "No sparse layers (EXPERIMENTAL)" +#~ msgstr "Capas de baja densidad (EXPERIMENTAL)" + +#~ msgid "The Config can not be loaded." +#~ msgstr "La Configuración no será cargada." + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "El 3mf está generado por un Snapmaker Orca antiguo, cargar solo datos de " +#~ "geometría." + +#~ msgid "" +#~ "Relative extrusion is recommended when using \"label_objects\" option." +#~ "Some extruders work better with this option unckecked (absolute extrusion " +#~ "mode). Wipe tower is only compatible with relative mode. It is always " +#~ "enabled on BambuLab printers. Default is checked" +#~ msgstr "" +#~ "Se recomienda la extrusión relativa cuando se utiliza la opción " +#~ "\"label_objects\". Algunos extrusores funcionan mejor con esta opción " +#~ "desactivada (modo de extrusión absoluta). La torre de purga sólo es " +#~ "compatible con el modo relativo. Siempre activa en las impresoras " +#~ "BambuLab. Marcada por defecto" + +#~ msgid "Fan Speed: " +#~ msgstr "Velocidad del ventilador:" + +#~ msgid "The 3mf is not from Bambu Lab, load geometry data only." +#~ msgstr "El 3mf no es Bambu lab, solo se carga datos de geometría." + +#~ msgid "Bamabu Engineering Plate" +#~ msgstr "Placa de Ingenieria Bambu" + +#~ msgid "Bridge flow" +#~ msgstr "Flujo del puente" + +#~ msgid "" +#~ "Acceleration of initial layer. Using a lower value can improve build " +#~ "plate adhensive" +#~ msgstr "" +#~ "Aceleración de la capa inicial. El uso de un valor más bajo puede mejorar " +#~ "la adherencia de la placa de impresión" + +#~ msgid "Maximum acceleration for travel (M204 T)" +#~ msgstr "Aceleración máxima para el desplazamiento (M204 T)" + +#~ msgid "Movement:" +#~ msgstr "Movimiento:" + +#~ msgid "Movement" +#~ msgstr "Movimiento" + +#~ msgid "Auto Segment" +#~ msgstr "Auto Despiece" + +#~ msgid "Depth ratio" +#~ msgstr "Relación de profundidad" + +#~ msgid "Prizm" +#~ msgstr "Prisma" + +#~ msgid "connector is out of cut contour" +#~ msgstr "el conector está fuera del contorno de corte" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "los conectores están fuera del contorno de corte" + +#~ msgid "connector is out of object" +#~ msgstr "el conector está fuera del objeto" + +#~ msgid "connectors is out of object" +#~ msgstr "los conectores están fuera del objeto" + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Estado inválido. \n" +#~ "No se ha seleccionado ninguna pieza para conservar después del corte" + +#~ msgid " search results" +#~ msgstr "Buscar resultados" + +#~ msgid "" +#~ "The printer timed out while receiving a print job. Please check if the " +#~ "network is functioning properly and send the print again." +#~ msgstr "" +#~ "La impresora falló al recibir un trabajo de impresión. Por favor, " +#~ "compruebe si la red está funcionando adecuadamente y mande la impresión " +#~ "de nuevo." + +#~ msgid "Fliament Tangle Detect" +#~ msgstr "Detectado Enredo de Filamento" + +#, c-format, boost-format +#~ msgid "This slicer file version %s is newer than %s's version:" +#~ msgstr "Esta versión de archivo %s es más nueva que la versión %s:" + +#~ msgid "" +#~ "Would you like to update your Snapmaker Orca software to enable all " +#~ "functionality in this slicer file?\n" +#~ msgstr "" +#~ "¿Le gustaría actualizar su versión de Bambú Studio para activar todas las " +#~ "funcionalidades en este archivo de laminador?\n" + +#~ msgid "" +#~ "you can always update Snapmaker Orca at your convenience. The slicer file " +#~ "will now be loaded without full functionality." +#~ msgstr "" +#~ "Siempre puede actualizar Bambú Studio si le interesa. El archivo del " +#~ "laminador estará cargado sin todas las funcionalidades." + +#, c-format, boost-format +#~ msgid "" +#~ "This slicer file version %s is newer than %s's version.\n" +#~ "\n" +#~ "Would you like to update your Snapmaker Orca software to enable all " +#~ "functionality in this slicer file?" +#~ msgstr "" +#~ "Esta versión de archivo %s es más nueva que la versión %s:\n" +#~ "¿Le gustaría actualizar su versión de Bambú Studio para activar todas las " +#~ "funcionalidades en este archivo de laminador?" + +#~ msgid "Bamabu Smooth PEI Plate" +#~ msgstr "Bandeja Lisa PEI Bambú" + +#~ msgid "Bamabu Textured PEI Plate" +#~ msgstr "Bandeja Texturizada PEI Bambú" + +#~ msgid "" +#~ "Orca recalculates your flushing volumes everytime the filament colors " +#~ "change. You can change this behavior in Preferences." +#~ msgstr "" +#~ "Snapmaker Orca podría recalcular su volumen de descarga todas las veces que " +#~ "el color cambie. Podría deshabilitar el auto calculo en Snapmaker Orca > " +#~ "Preferencias." + +#~ msgid "" +#~ "Layer height cannot exceed the limit in Printer Settings -> Extruder -> " +#~ "Layer height limits" +#~ msgstr "" +#~ "La altura de capa no puede exceder del limite en Configuración de " +#~ "Impresora -> Extrusor -> Limites de altura de capa" + +#~ msgid "Edit Text" +#~ msgstr "Editar Texto" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "¡Error! ¡No se ha podido crear el proceso!" + +#~ msgid "Exception" +#~ msgstr "Excepción" + +#~ msgid "Choose SLA archive:" +#~ msgstr "Elige el archivo SLA:" + +#~ msgid "Import file" +#~ msgstr "Importar archivo" + +#~ msgid "Import model and profile" +#~ msgstr "Importar modelo y perfil" + +#~ msgid "Import profile only" +#~ msgstr "Importar perfil solo" + +#~ msgid "Import model only" +#~ msgstr "Importar solo el modelo" + +#~ msgid "Accurate" +#~ msgstr "Precisión" + +#~ msgid "Balanced" +#~ msgstr "Balanceado" + +#~ msgid "Quick" +#~ msgstr "Rápido" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Describa cuánto tiempo se moverá la boquilla a lo largo de la última " +#~ "trayectoria al retraerse" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Simplificar modelo\n" +#~ "¿Sabías que puedes reducir el número de triángulos de una malla " +#~ "utilizando la función Simplificar malla? Haga clic con el botón derecho " +#~ "del ratón en el modelo y seleccione Simplificar modelo. Más información " +#~ "en la documentación." + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "Restar una parte\n" +#~ "¿Sabías que puedes sustraer una malla de otra utilizando el modificador " +#~ "de pieza Negativa? De esta forma puedes, por ejemplo, crear orificios " +#~ "fácilmente redimensionables directamente en Snapmaker Orca. Más información " +#~ "en la documentación." + +#~ msgid "Filling bed " +#~ msgstr "Rellenando cama " + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "El patrón de relleno %1% no soporta el 100%% de densidad." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "¿Cambiar a patrón rectilíneo?\n" +#~ "Sí - cambiar a patrón rectilíneo automaticamente\n" +#~ "No - reiniciar a valor de densidad no 100% por defecto automáticamente" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "" +#~ "Caliente la boquilla a más de 170 grados antes de cargar el filamento." + +#~ msgid "Show g-code window" +#~ msgstr "Mostrar la ventana de G-Code" + +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "Si está activado, se mostrará la ventana de G-Code." + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "" +#~ "Densidad del relleno interno, el 100%% significa sólido en toda la " +#~ "superficie" + +#~ msgid "Tree support wall loops" +#~ msgstr "Perímetros de las ramas" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "" +#~ "Este ajuste especifica el número de perímetros alrededor del soporte del " +#~ "árbol" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " no funciona con una densidad del 100%% " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Herramienta-Tumbar Boca Abajo" + +#~ msgid "Export as STL" +#~ msgstr "Exportar como STL" + +#~ msgid "Check cloud service status" +#~ msgstr "Check cloud service status" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Por favor, introduce un valor válido (K en 0~0.5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "Por favor, introduce un valor válido (K en 0~0.5, N en 0.6~2.0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Exportar todos los objetos como STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "¡El 3mf no es compatible, cargue solamente los datos de geometría!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "3mf Incompatible" + +#~ msgid "Add/Remove printers" +#~ msgstr "Añadir/Borrar impresoras" + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s no está soportado por el AMS." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "No volver a recordarme está versión otra vez" + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Error: la IP o el Código de Acceso no son correctos" + +#~ msgid "" +#~ "Extrude perimeters that have a part over an overhang in the reverse " +#~ "direction on odd layers. This alternating pattern can drastically improve " +#~ "steep overhang." +#~ msgstr "" +#~ "Extruya los perímetros que tienen una parte sobre un voladizo en sentido " +#~ "inverso en las capas impares. Este patrón alterno puede mejorar " +#~ "drásticamente los voladizos pronunciados." + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Orden del perímetro interior/perímetro exterior/relleno" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "" +#~ "Imprimir la secuencia del perímetro interior, el perímetro exterior y el " +#~ "relleno. " + +#~ msgid "inner/outer/infill" +#~ msgstr "interior/exterior/relleno" + +#~ msgid "outer/inner/infill" +#~ msgstr "exterior/interior/relleno" + +#~ msgid "infill/inner/outer" +#~ msgstr "relleno/interior/exterior" + +#~ msgid "infill/outer/inner" +#~ msgstr "relleno/exterior/interior" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "interior-exterior-interior/relleno" + +#~ msgid "Export 3MF" +#~ msgstr "Exportar 3MF" + +#~ msgid "Export project as 3MF." +#~ msgstr "Exportar el proyecto como 3MF." + +#~ msgid "Export slicing data" +#~ msgstr "Exportar datos de laminado" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Exportar datos de laminado a una carpeta." + +#~ msgid "Load slicing data" +#~ msgstr "Cargar datos de laminado" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Cargar datos de laminado en caché desde el directorio" + +#~ msgid "Export STL" +#~ msgstr "Exportar STL" + +#~ msgid "Export the objects as multiple STL." +#~ msgstr "Exportar los objectos como multiples STL." + +#~ msgid "Slice" +#~ msgstr "Laminar" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "" +#~ "Cortar las bandejas: 0-todas las bandejas, i-bandeja i, otras-inválidas" + +#~ msgid "Show command help." +#~ msgstr "Mostrar la ayuda del comando." + +#~ msgid "UpToDate" +#~ msgstr "Actualizado" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "Actualice los valores de configuración de 3mf a la última versión." + +#~ msgid "Load default filaments" +#~ msgstr "Cargar los filamentos por defecto" + +#~ msgid "Load first filament as default for those not loaded" +#~ msgstr "Carga el primer filamento por defecto para los no cargados" + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "número máximo de triángulos por plato para laminar." + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "tiempo máximo de corte por bandeja en segundos." + +#~ msgid "Normative check" +#~ msgstr "Comprobación de normativa" + +#~ msgid "Check the normative items." +#~ msgstr "Comprueba los elementos normativos." + +#~ msgid "Output Model Info" +#~ msgstr "Información del modelo de salida" + +#~ msgid "Output the model's information." +#~ msgstr "Salida de la información del modelo." + +#~ msgid "Export Settings" +#~ msgstr "Ajustes de exportación" + +#~ msgid "Export settings to a file." +#~ msgstr "Exporta los ajustes a un archivo." + +#~ msgid "Send progress to pipe" +#~ msgstr "Enviar el progreso a la tubería" + +#~ msgid "Send progress to pipe." +#~ msgstr "Enviar el progreso a la tubería." + +#~ msgid "Arrange Options" +#~ msgstr "Opciones de posicionamiento" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Opciones de posicionamiento: 0-desactivar, 1-activar, otras-auto" + +#~ msgid "Repetions count" +#~ msgstr "Cantidad de repeticiones" + +#~ msgid "Repetions count of the whole model" +#~ msgstr "Cantidad de repeticiones del modelo completo" + +#~ msgid "Convert Unit" +#~ msgstr "Convertir Unidad" + +#~ msgid "Convert the units of model" +#~ msgstr "Convertir las unidades del modelo" + +#~ msgid "Rotate around X" +#~ msgstr "Rotar alrededor de X" + +#~ msgid "Rotation angle around the X axis in degrees." +#~ msgstr "El ángulo de rotación alrededor del eje X en grados." + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Escala el modelo por un factor de flotación" + +#~ msgid "Load General Settings" +#~ msgstr "Cargar los ajustes generales" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "" +#~ "Cargar los ajustes del proceso/máquina desde el archivo especificado" + +#~ msgid "Load Filament Settings" +#~ msgstr "Cargar los ajustes del filamento" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "" +#~ "Cargar los ajustes del filamento desde la lista de archivos especificada" + +#~ msgid "Skip Objects" +#~ msgstr "Omitir objetos" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Omitir algunos objetos en esta impresión" + +#~ msgid "load uptodate process/machine settings when using uptodate" +#~ msgstr "" +#~ "carga los ajustes actualizados de proceso/máquina cuando se usa actualizar" + +#~ msgid "" +#~ "load uptodate process/machine settings from the specified file when using " +#~ "uptodate" +#~ msgstr "" +#~ "carga los ajustes actualizados de proceso/máquina desde el archivo " +#~ "especificado cuando se usa actualizar" + +#~ msgid "Output directory" +#~ msgstr "Directorio de salida" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Directorio de salida para los archivos exportados." + +#~ msgid "Debug level" +#~ msgstr "Nivel de depuración" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Ajusta el nivel de registro de depuración. 0:fatal, 1:error, 2:" +#~ "advertencia, 3:información, 4:depuración, 5:rastreo\n" + +#, boost-format +#~ msgid "The selected preset: %1% is not found." +#~ msgstr "El ajuste seleccionado: %1% no encontrado." + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "Operaciones de la escena 3D\n" +#~ "¿Sabías cómo controlar la vista y la selección de objetos/partes con el " +#~ "ratón y el panel táctil en la escena 3D?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Fijar modelo\n" +#~ "¿Sabías que puedes arreglar un modelo 3D dañado para evitar muchos " +#~ "problemas de corte?" + +#~ msgid "" +#~ "When need to print with the printer door opened\n" +#~ "Opening the printer door can reduce the probability of extruder/hotend " +#~ "clogging when printing lower temperature filament with a higher enclosure " +#~ "temperature. More info about this in the Wiki." +#~ msgstr "" +#~ "Cuando es necesario imprimir con la puerta de la impresora abierta\n" +#~ "Abrir la puerta de la impresora puede reducir la probabilidad de atasco " +#~ "del extrusor/hotend al imprimir filamento de baja temperatura con una " +#~ "temperatura de carcasa más alta. Más información sobre esto en la Wiki." + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "" +#~ "La velocidad mínima de impresión cuando se ralentiza para el refrigeración" + +#~ msgid "Embeded" +#~ msgstr "Integrado" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "El archivo de configuración de Snapmaker Orca puede estar dañado y no puede " +#~ "ser procesado. Por favor borre el archivo e inténtelo otra vez." + +#~ msgid "Online Models" +#~ msgstr "Modelos En Línea" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "" +#~ "Mostrar modelos en línea seleccionados por el personal en la página de " +#~ "inicio" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "" +#~ "Las capas vacías del fondo se sustituyen por las capas normales más " +#~ "próximas." + +#~ msgid "The model has too many empty layers." +#~ msgstr "El modelo tiene demasiadas capas vacías." + +#~ msgid "" +#~ "There are currently no identical spare consumables available, and " +#~ "automatic replenishment is currently not possible. \n" +#~ "(Currently supporting automatic supply of consumables with the same " +#~ "brand, material type, and color)" +#~ msgstr "" +#~ "Actualmente no se dispone de consumibles de repuesto idénticos, por lo " +#~ "que la reposición automática no es posible. \n" +#~ "(Actualmente admite el suministro automático de consumibles con la misma " +#~ "marca, tipo de material y color)." + +#~ msgid "Invalid nozzle diameter" +#~ msgstr "Diámetro de boquilla incorrecto" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "La temperatura de la cama excede la temperatura de vitrificación del " +#~ "filamento. Por favor, abra la puerta frontal de la impresora antes de " +#~ "imprimir para evitar atascos en la boquilla." + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Temperatura de vitrificación" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "El material se ablanda a esta temperatura. Por lo tanto, la cama caliente " +#~ "no puede estar más caliente que esta temperatura" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "" +#~ "Habilite esta opción si la máquina tiene un ventilador auxiliar de " +#~ "refrigeración de piezas" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "Velocidad del ventilador de la parte auxiliar. El ventilador auxiliar " +#~ "funcionará a esta velocidad durante la impresión, excepto en las primeras " +#~ "capas, que se define por la ausencia de capas de refrigeración" + +#~ msgid "Cali" +#~ msgstr "Cali" + +#~ msgid "Calibration of extrusion" +#~ msgstr "Calibración de extrusión" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Push new filament into the extruder" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "La temperatura del lecho de la otra capa es inferior a la temperatura del " +#~ "lecho de la primera capa durante más de %d grados centígrados.\n" +#~ "Esto puede hacer que el modelo se desprenda de la bandeja durante la " +#~ "impresión" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "La temperatura de capa es superior que la temperatura de vitrificación de " +#~ "este filamento. \n" +#~ " Esto podría causar que la boquilla se bloquee y produzca un fallo de " +#~ "impresión. Por favor, mantenga la impresora abierta durante el proceso " +#~ "para garantizar la circulación de aire o reducir la temperatura de la " +#~ "cama caliente" + +#~ msgid "Total Time Estimation" +#~ msgstr "Tiempo Total Estimado" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Identificación de frecuencia de resonancia" + +#~ msgid "Immediately score" +#~ msgstr "Immediately score" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "Please give a score for your favorite Bambu Market model." + +#~ msgid "Score" +#~ msgstr "Score" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Bandeja de Alta Temperatura Bambú" + +#~ msgid "Can't connect to the printer" +#~ msgstr "No se puede conectar a la impresora" + +#~ msgid "Recommended temperature range" +#~ msgstr "Rango de temperatura recomendado" + +#~ msgid "High Temp Plate" +#~ msgstr "Bandeja de Alta Temperatura" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "Esta es la temperatura de la cama cuando la bandeja de alta temperatura " +#~ "está instalada. Un valor de 0 significa que el filamento no admite la " +#~ "impresión en la bandeja de alta temperatura" + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Altura carcasa de refuerzo interior en puentes" + +#~ msgid "" +#~ "If enabled, support loops will be generated under the contours of " +#~ "internal bridges.These support loops could prevent internal bridges from " +#~ "extruding over the air and improve the top surface quality, especially " +#~ "when the sparse infill density is low.This value determines the thickness " +#~ "of the support loops. 0 means disable this feature" +#~ msgstr "" +#~ "Si está activado, los bucles de soporte generarán debajo de los contornos " +#~ "de puentes internos. Estos bucles de soporte pueden prevenir extruir " +#~ "puentes en el aire y mejorar la calidad de la superficie superior, " +#~ "especialmente cuando la densidad de relleno es baja. Este valor determina " +#~ "el grosor de los bucles de soporte. 0 significa deshabilitar esta " +#~ "característica" + +#, c-format, boost-format +#~ msgid "" +#~ "Klipper's max_accel_to_decel will be adjusted to this % of acceleration" +#~ msgstr "" +#~ "El max_accel_to_decel de Klipper se ajustará a este % o de aceleración" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Estilo y forma del soporte. Para el soporte normal, proyectar los " +#~ "soportes en una cuadrícula regular creará soportes más estables (por " +#~ "defecto), mientras que las torres de soporte ajustadas ahorrarán material " +#~ "y reducirán las cicatrices del objeto.\n" +#~ "Para el soporte arbóreo, el estilo esbelto fusionará las ramas de forma " +#~ "más agresiva y ahorrará mucho material (por defecto), mientras que el " +#~ "estilo híbrido creará una estructura similar a la del soporte normal bajo " +#~ "grandes voladizos planos." + +#~ msgid "Target chamber temperature" +#~ msgstr "Temperatura objetivo de la cámara" + +#~ msgid "Bed temperature difference" +#~ msgstr "Diferencia de temperatura de la cama" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "No se recomienda que la temperatura de la otra capa sea inferior a la de " +#~ "la primera capa por encima de este umbral. Una temperatura demasiado baja " +#~ "de la otra capa puede hacer que el modelo se desprenda de la bandeja de " +#~ "impresión" + +#~ msgid "Orient the model" +#~ msgstr "Orientar el modelo" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 0 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Por favor, introduzca valores válidos:\n" +#~ "inicio>paso 0 >= 0\n" +#~ "fin > inicio + paso)" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 10 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Por favor, introduzca valores válidos:\n" +#~ "inicio > paso 10 >= 0\n" +#~ "final > inicio + paso)" + +#~ msgid "Send to print" +#~ msgstr "Mandar a imprimir" + +#~ msgid "Simulate" +#~ msgstr "Simular" + +#~ msgid "Assemble the selected parts to a single part" +#~ msgstr "Ensamblar las piezas seleccionadas en una sola pieza" + +#~ msgid "Set Unprintable" +#~ msgstr "Hacer No Imprimible" + +#~ msgid "Set Printable" +#~ msgstr "Hacer Imprimible" + +#~ msgid "Ams filament backup" +#~ msgstr "Copia de Seguridad del Filamento AMS" + +#~ msgid "Feed new filament from external spool" +#~ msgstr "Cargar nuevo filamento en el carrete externo" + +#~ msgid "Confirm whether the filament has been extruded" +#~ msgstr "Confirmar si el filamento ha sido extruido" + +#~ msgid "The region parameter is incorrrect" +#~ msgstr "El parámetro de región es incorrecto" + +#~ msgid "Failure of printer login" +#~ msgstr "Fallo en el inicio de sesión de la impresora" + +#~ msgid "Failed to get ticket" +#~ msgstr "No se ha podido conseguir el ticket" + +#~ msgid "User authorization timeout" +#~ msgstr "Límite de tiempo de espera de la autorización del usuario" + +#~ msgid "Failure of bind" +#~ msgstr "Fallo en la vinculación" + +#~ msgid "" +#~ "Upload task timed out. Please check the network problem and try again" +#~ msgstr "" +#~ "La tarea de carga ha terminado. Por favor, compruebe el problema de red e " +#~ "inténtelo de nuevo" + +#~ msgid "Print file not found, please slice again" +#~ msgstr "" +#~ "No se ha encontrado el archivo de impresión, por favor, vuelva a " +#~ "procesarlo" + +#~ msgid "" +#~ "The print file exceeds the maximum allowable size (1GB). Please simplify " +#~ "the model and slice again" +#~ msgstr "" +#~ "El archivo de impresión supera el tamaño máximo permitido (1GB). Por " +#~ "favor, simplifique el modelo y vuelva a procesarlo" + +#~ msgid "Failed uploading print file" +#~ msgstr "Fallo al cargar el archivo de impresión" + +#~ msgid "Wrong Access code" +#~ msgstr "Código de acceso incorrecto" + +#~ msgid "Send to Printer failed. Please try again." +#~ msgstr "Envío a la Impresora fallido. Por favor inténtelo otra vez." + +#~ msgid "No space left on Printer SD card" +#~ msgstr "Sin espacio disponible en la tarjeta SD de la impresora" + +#~ msgid "Sending gcode file through cloud service" +#~ msgstr "Enviando el archivo de G-Code a través del servicio en la nube" + +#~ msgid "Please log out and login to the printer again." +#~ msgstr "Por favor desconéctese y conéctese a la impresora de nuevo." + +#~ msgid "Factors of dynamic flow cali" +#~ msgstr "Factores de flujo cali dinámico" + +#~ msgid "Filaments replace" +#~ msgstr "Reemplazar filamentos" + +#~ msgid "3D Models" +#~ msgstr "Modelos 3D" + +#~ msgid "Initialize failed (Not supported with LAN-only mode)!" +#~ msgstr "Inicialización fallida (No soportada con el modo Solo Red Local)" + +#~ msgid "Initialize failed (Not supported by printer)!" +#~ msgstr "Inicialización fallida (No soportada por la impresora)" + +#~ msgid "Not supported by this model of printer!" +#~ msgstr "¡No soportado por este modelo de impresora!" + +#~ msgid "Not accessible in LAN-only mode!" +#~ msgstr "¡No accesible en modelo de solo red local!" + +#~ msgid "Missing LAN ip of printer!" +#~ msgstr "¡IP de red local pérdida!" + +#, c-format, boost-format +#~ msgid "You are going to delete %u files. Are you sure to continue?" +#~ msgstr "Va a borrar %u archivos. ¿Está seguro de continuar?" + +#~ msgid "Printing List" +#~ msgstr "Imprimiendo Lista" + +#, c-format, boost-format +#~ msgid "" +#~ "Disconnected from printer [%s] due to LAN mode disabled.Please reconnect " +#~ "the printer by logging in with your user account." +#~ msgstr "" +#~ "Desconectado de la impresora [%s] debido a modo de red deshabilitado. Por " +#~ "favor, reconéctese la impresora ingresando con su cuenta de usuario." + +#, c-format, boost-format +#~ msgid "" +#~ "Disconnected from printer [%s] due to LAN mode enabled.Please reconnect " +#~ "the printer by inputting Access Code which can be gotten from printer " +#~ "screen." +#~ msgstr "" +#~ "Desconectado de la impresora [%s] debido a modo de red habilitado. Por " +#~ "favor, reconéctese la impresora ingresando con su cuenta de usuario." + +#~ msgid "Media" +#~ msgstr "Medios" + +#~ msgid "Dump video" +#~ msgstr "Volcar vídeo" + +#~ msgid "First Layer print sequence" +#~ msgstr "Secuencia de impresión de primera capa" + +#~ msgid "Flow Calibration" +#~ msgstr "Calibración del flujo" + +#~ msgid "" +#~ "The configuration may be generated by a newer version of BambuStudio." +#~ msgstr "" +#~ "La configuración puede ser generada por una versión más reciente de " +#~ "BambuStudio." + +#~ msgid "Internal Version" +#~ msgstr "Versión interna" + +#~ msgid "" +#~ "BambuStudio will terminate because of running out of memory.It may be a " +#~ "bug. It will be appreciated if you report the issue to our team." +#~ msgstr "" +#~ "BambuStudio terminará porque se está quedando sin memoria. Le " +#~ "agradeceremos que comunique el problema a nuestro equipo." + +#~ msgid "" +#~ "BambuStudio will terminate because of a localization error. It will be " +#~ "appreciated if you report the specific scenario this issue happened." +#~ msgstr "" +#~ "BambuStudio terminará debido a un error de localización. Le agradeceremos " +#~ "que nos informe del escenario específico en el que se ha producido este " +#~ "problema." + +#, boost-format +#~ msgid "BambuStudio got an unhandled exception: %1%" +#~ msgstr "" +#~ "BambuStudio recibió una notificación de excepción no controlada: %1%." + +#~ msgid "" +#~ "BambuStudio configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "El archivo de configuración de BambuStudio puede estar dañado y no puede " +#~ "ser procesado." + +#~ msgid "The Bambu Studio needs an upgrade" +#~ msgstr "Bambu Studio necesita una actualización" + +#~ msgid "Choose one file (gcode/.gco/.g/.ngc/ngc):" +#~ msgstr "Elija un archivo (gcode/.gco/.g/.ngc/ngc):" + +#~ msgid "" +#~ "The version of Bambu studio is too low and needs to be updated to the " +#~ "latest version before it can be used normally" +#~ msgstr "" +#~ "La versión de Bambu Studio es una versión demasiado antigua y necesita " +#~ "ser actualizada a la última versión antes de poder utilizarla con " +#~ "normalidad" + +#~ msgid "Bambu Studio GUI initialization failed" +#~ msgstr "Ha fallado la inicialización de la interfaz gráfica de Bambu Studio" + +#~ msgid "Bambu Studio is licensed under " +#~ msgstr "Bambu Studio tiene licencia bajo " + +#~ msgid "" +#~ "Bambu Studio is based on PrusaSlicer by Prusa Research, which is from " +#~ "Slic3r by Alessandro Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Bambu Studio se basa en PrusaSlicer de Prusa Research, que proviene de " +#~ "Slic3r de Alessandro Ranellucci y la comunidad RepRap" + +#~ msgid "" +#~ "Bambu Studio is based on PrusaSlicer by PrusaResearch and SuperSlicer by " +#~ "Merill(supermerill)." +#~ msgstr "" +#~ "Bambu Studio está basado en PrusaSlicer de PrusaResearch y SuperSlicer de " +#~ "Merill (supermerill)." + +#~ msgid "Bambu Studio also referenced some ideas from Cura by Ultimaker." +#~ msgstr "" +#~ "Bambu Studio también hace referencia a algunas ideas de Cura de Ultimaker." + +#~ msgid "" +#~ "There many parts of the software that come from community contributions, " +#~ "so we're unable to list them one-by-one, and instead, they'll be " +#~ "attributed in the corresponding code comments." +#~ msgstr "" +#~ "Hay muchas partes del software que provienen de las contribuciones de la " +#~ "comunidad, por lo que no podemos enumerarlas una por una, sino que se " +#~ "atribuirán en los comentarios del código correspondientes." + +#~ msgid "Layer Time (s)" +#~ msgstr "Layer Time (s)" + +#, c-format, boost-format +#~ msgid "" +#~ "Conflicts of gcode paths have been found at layer %d. Please separate the " +#~ "conflicted objects farther (%s <-> %s)." +#~ msgstr "" +#~ "Conflicts of gcode paths have been found at layer %d. Please separate the " +#~ "conflicting objects further (%s <-> %s)." + +#~ msgid "Report issue" +#~ msgstr "Report issue" + +#~ msgid "The 3mf is generated by old Bambu Studio, load geometry data only." +#~ msgstr "" +#~ "3mf generado con versión antigua de Bambu Studio, se cargan datos de " +#~ "geometría unicamente." + +#~ msgid "" +#~ "\"Fix Model\" feature is currently only on Windows. Please repair the " +#~ "model on Bambu Studio(windows) or CAD softwares." +#~ msgstr "" +#~ "Actualmente, la función «Fix Model» solo está disponible en Windows. " +#~ "Repare el modelo en Bambu Studio (Windows) o en el software CAD." + +#~ msgid "Associate files to BambuStudio" +#~ msgstr "Asociar archivos a BambuStudio" + +#~ msgid "Associate .3mf files to BambuStudio" +#~ msgstr "Asociar archivos .3mf a BambuStudio" + +#~ msgid "" +#~ "If enabled, sets BambuStudio as default application to open .3mf files" +#~ msgstr "" +#~ "Si se activa, ajusta BambuStudio como aplicación por defecto para abrir " +#~ "archivos .3mf" + +#~ msgid "Associate .stl files to BambuStudio" +#~ msgstr "Asociar archivos .stl a BambuStudio" + +#~ msgid "" +#~ "If enabled, sets BambuStudio as default application to open .stl files" +#~ msgstr "" +#~ "Si se activa, ajusta BambuStudio como aplicación por defecto para abrir " +#~ "archivos .stl" + +#~ msgid "Associate .step/.stp files to BambuStudio" +#~ msgstr "Asociar archivos .step/.stp a BambuStudio" + +#~ msgid "" +#~ "If enabled, sets BambuStudio as default application to open .step files" +#~ msgstr "" +#~ "Si se activa, ajusta BambuStudio como aplicación por defecto para abrir " +#~ "archivos .step" + +#~ msgid "Post-processing scripts" +#~ msgstr "Post-processing scripts" + +#~ msgid "Cool Plate / PLA Plate" +#~ msgstr "Cool Plate / PLA Plate" + +#~ msgid "" +#~ "The following object(s) have empty initial layer and can't be printed. " +#~ "Please Cut the bottom or enable supports." +#~ msgstr "" +#~ "The following object(s) have an empty initial layer and can't be printed. " +#~ "Please cut the bottom or enable supports." + +#~ msgid "Bridge direction" +#~ msgstr "Dirección del puente" + +#~ msgid "Use only one wall on the first layer of model" +#~ msgstr "Use only one wall on the first layer of models" + +#~ msgid "Max Radius" +#~ msgstr "Radio máximo" + +#~ msgid "" +#~ "Max clearance radius around extruder. Used for collision avoidance in by-" +#~ "object printing." +#~ msgstr "" +#~ "Radio máximo de separación alrededor del extrusor. Se utiliza para evitar " +#~ "colisiones en la impresión por objetos." + +#~ msgid "Object flow ratio" +#~ msgstr "Object flow ratio" + +#~ msgid "The flow ratio set by object, the meaning is the same as flow ratio." +#~ msgstr "" +#~ "The flow ratio set by object; the meaning is the same as flow ratio." + +#~ msgid "Length of sparse infill anchor" +#~ msgstr "Length of sparse infill anchor" + +#~ msgid "" +#~ "Connect a sparse infill line to an internal perimeter with a short " +#~ "segment of an additional perimeter. If expressed as percentage (example: " +#~ "15%) it is calculated over sparse infill line width. Slicer tries to " +#~ "connect two close infill lines to a short perimeter segment. If no such " +#~ "perimeter segment shorter than infill_anchor_max is found, the infill " +#~ "line is connected to a perimeter segment at just one side and the length " +#~ "of the perimeter segment taken is limited to this parameter, but no " +#~ "longer than anchor_length_max. Set this parameter to zero to disable " +#~ "anchoring perimeters connected to a single infill line." +#~ msgstr "" +#~ "This connects a sparse infill line to an internal perimeter with a short " +#~ "segment of an additional perimeter. If expressed as percentage (example: " +#~ "15%) it is calculated over sparse infill line width. Bambu Studio tries " +#~ "to connect two close infill lines to a short perimeter segment. If no " +#~ "such perimeter segment shorter than infill_anchor_max is found, the " +#~ "infill line is connected to a perimeter segment at just one side and the " +#~ "length of the perimeter segment taken is limited to this parameter, but " +#~ "no longer than anchor_length_max. Set this parameter to zero to disable " +#~ "anchoring perimeters connected to a single infill line." + +#~ msgid "Maximum length of sparse infill anchor" +#~ msgstr "Maximum length of sparse infill anchor" + +#~ msgid "" +#~ "Connect a sparse infill line to an internal perimeter with a short " +#~ "segment of an additional perimeter. If expressed as percentage (example: " +#~ "15%) it is calculated over sparse infill line width. Slicer tries to " +#~ "connect two close infill lines to a short perimeter segment. If no such " +#~ "perimeter segment shorter than this parameter is found, the infill line " +#~ "is connected to a perimeter segment at just one side and the length of " +#~ "the perimeter segment taken is limited to infill_anchor, but no longer " +#~ "than this parameter. Set this parameter to zero to disable anchoring." +#~ msgstr "" +#~ "This connects a sparse infill line to an internal perimeter with a short " +#~ "segment of an additional perimeter. If expressed as percentage (example: " +#~ "15%) it is calculated over sparse infill line width. Bambu Studio tries " +#~ "to connect two close infill lines to a short perimeter segment. If no " +#~ "such perimeter segment shorter than this parameter is found, the infill " +#~ "line is connected to a perimeter segment at just one side and the length " +#~ "of the perimeter segment taken is limited to infill_anchor, but no longer " +#~ "than this parameter. Set this parameter to zero to disable anchoring." + +#~ msgid "0 (not anchored)" +#~ msgstr "0 (not anchored)" + +#~ msgid "" +#~ "If you want to process the output G-code through custom scripts, just " +#~ "list their absolute paths here. Separate multiple scripts with a " +#~ "semicolon. Scripts will be passed the absolute path to the G-code file as " +#~ "the first argument, and variables of settings also can be read" +#~ msgstr "" +#~ "If you want to process the output G-code through custom scripts, just " +#~ "list their absolute paths here. Separate multiple scripts with a " +#~ "semicolon. Scripts will be passed via the absolute path to the G-code " +#~ "file as the first argument, and variables of settings can also be read" + +#~ msgid "Z Hop Type" +#~ msgstr "Tipo de salto Z" + +#~ msgid "The brim width around tree support. 0 means auto." +#~ msgstr "The brim width around tree support. 0 means auto." + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Bambu Studio. Read more in the documentation." +#~ msgstr "" +#~ "Restar una parte\n" +#~ "¿Sabías que puedes sustraer una malla de otra utilizando el modificador " +#~ "de pieza negativa? De esta forma puedes, por ejemplo, crear agujeros " +#~ "fácilmente redimensionables directamente en Bambu Studio. Más información " +#~ "en la documentación." + +#~ msgid "" +#~ "STEP\n" +#~ "Did you know that you can improve your print quality by slicing a STEP " +#~ "file instead of an STL?\n" +#~ "Bambu Studio supports slicing STEP files, providing smoother results than " +#~ "a lower resolution STL. Give it a try!" +#~ msgstr "" +#~ "STEP\n" +#~ "¿Sabías que puedes mejorar la calidad de impresión cortando un archivo " +#~ "STEP en lugar de un STL?\n" +#~ "Bambu Studio admite el corte de archivos STEP, lo que proporciona " +#~ "resultados más suaves que un archivo STL de menor resolución. ¡Pruébalo!" + +#~ msgid "ERROR:" +#~ msgstr "ERROR:" + +#~ msgid "Bed temperatures for the used filaments differ significantly." +#~ msgstr "" +#~ "Las temperaturas de la cama para los filamentos usados difieren bastante." + +#~ msgid "Line width of outer wall" +#~ msgstr "Ancho de línea de la pared exterior" + +#~ msgid "Default line width if some line width is set to be zero" +#~ msgstr "" +#~ "Ancho de línea por defecto si se ajusta algún ancho de línea es cero" + +#~ msgid "Line width of initial layer" +#~ msgstr "Ancho de línea de la capa inicial" + +#~ msgid "Line width of internal sparse infill" +#~ msgstr "Ancho de línea del relleno interno disperso" + +#~ msgid "Line width of inner wall" +#~ msgstr "Ancho de línea de la pared interior" + +#~ msgid "Line width of internal solid infill" +#~ msgstr "Ancho de línea del relleno sólido interno" + +#~ msgid "Line width of support" +#~ msgstr "Ancho de línea del soporte" + +#~ msgid "Line width for top surfaces" +#~ msgstr "Ancho de línea para las superficies superiores" + +# msgid "Improve strength\n" +# "Did you know that you can use more wall loops and higher sparse infill +# density to improve the strength of the model?" +# msgstr "Mejorar la fuerza\n" +# "¿Sabías que puedes utilizar más bucles de pared y mayor densidad de relleno +# disperso para mejorar la resistencia del modelo?" +#~ msgid "Keep upper part" +#~ msgstr "Mantener la parte superior" + +#~ msgid "Keep lower part" +#~ msgstr "Mantener la parte inferior" + +#~ msgid "Backup" +#~ msgstr "Copia de seguridad" + +#~ msgid "Backup interval" +#~ msgstr "Intervalo de copia de seguridad" + +#~ msgid "" +#~ "Print a tower to prime material in nozzle after switching to a new " +#~ "material." +#~ msgstr "" +#~ "Imprimir una torre para cebar el material en la boquilla después de " +#~ "cambiar a un nuevo material." + +#~ msgid "Loading user presets..." +#~ msgstr "Cargando los preajustes del usuario..." + +#~ msgid "" +#~ "Snapmaker Orca is based on PrusaSlicer by Prusa Research, which is from " +#~ "Slic3r by Alessandro Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca se basa en PrusaSlicer de Prusa Research, que proviene de " +#~ "Slic3r de Alessandro Ranellucci y la comunidad RepRap" + +#~ msgid "Export G-Code." +#~ msgstr "Exportar G-Code." + +#~ msgid "Export." +#~ msgstr "Exportar." + +#~ msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files." +#~ msgstr "" +#~ "Importación de datos geométricos desde archivos STL/STEP/3MF/OBJ/AMF." + +#, boost-format +#~ msgid "Copying directory %1% to %2% failed: %3%" +#~ msgstr "La copia del directorio %1% a %2% ha fallado: %3%" + +#~ msgid "" +#~ "This controls brim position including outer side of models, inner side of " +#~ "holes or both. Auto means both the brim position and brim width is " +#~ "analysed and calculated automatically" +#~ msgstr "" +#~ "Esto controla la posición del borde de adherencia, incluyendo el lado " +#~ "exterior de los modelos, el lado interior de los huecos o ambos. Auto " +#~ "significa que tanto la posición como la anchura del borde de adherencia " +#~ "se analizan y calculan automáticamente" + +#~ msgid "Choose one file (G-Code/.gco/.g/.ngc/ngc):" +#~ msgstr "Elija un archivo (G-Code/.gco/.g/.ngc/ngc):" + +#~ msgid "" +#~ "Too large layer height.\n" +#~ "Reset to 0.2" +#~ msgstr "" +#~ "Altura de la capa demasiado grande.\n" +#~ "Reajustar a 0,2" + +#~ msgid "" +#~ "\n" +#~ "%1% is too close to exclusion area, there will be collisions when " +#~ "printing." +#~ msgstr "" +#~ "\n" +#~ "%1% está demasiado cerca del área de exclusión, habrá colisiones al " +#~ "imprimir." + +#~ msgid "" +#~ "%1% is too close to exclusion area, there will be collisions when " +#~ "printing." +#~ msgstr "" +#~ "%1% está demasiado cerca del área de exclusión, habrá colisiones al " +#~ "imprimir." + +#~ msgid "0%" +#~ msgstr "0%" + +#~ msgid "" +#~ "An object is layed over the boundary of plate.\n" +#~ "Please solve the problem by moving it totally inside or outside plate." +#~ msgstr "" +#~ "Un objeto está colocado sobre el límite de la bandeja.\n" +#~ "Por favor, resuelva el problema moviéndolo totalmente dentro o fuera de " +#~ "la bandeja." + +#~ msgid "" +#~ "Arachne engine only works when overhang slowing down is disabled.\n" +#~ "This may cause decline in the quality of overhang surface when print " +#~ "fastly\n" +#~ msgstr "\n" + +#~ msgid "Auto arrange" +#~ msgstr "Auto posicionamiento" + +#~ msgid "" +#~ "Auto orientates selected objects or all objects.If there are selected " +#~ "objects, it just orientates the selected ones.Otherwise, it will " +#~ "orientates all objects in the project." +#~ msgstr "" +#~ "Orienta automáticamente los objetos seleccionados o todos los objetos.Si " +#~ "hay objetos seleccionados, sólo orienta los seleccionados.En caso " +#~ "contrario, orienta todos los objetos del proyecto." + +#~ msgid "Aux Cooling" +#~ msgstr "Enfriamiento Auxiliar" + +#~ msgid "Avoid crossing wall when travel" +#~ msgstr "Evitar cruzar el muro en los desplazamientos" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure" +#~ msgstr "" +#~ "La temperatura del lecho es superior a la temperatura de vitrificación de " +#~ "este filamento.\n" +#~ "Esto puede causar el bloqueo de la boquilla y el fracaso de la impresión" + +#~ msgid "Choose one or more files (3mf/step/stl/obj/amf):" +#~ msgstr "Elija uno o varios archivos (3mf/step/stl/obj/amf):" + +#~ msgid "Clear all" +#~ msgstr "Borrar todo" + +#~ msgid "" +#~ "Clearance radius around extruder. Used as input of auto-arrange to avoid " +#~ "collision when print object by object" +#~ msgstr "" +#~ "Radio de separación alrededor del extrusor. Se utiliza como entrada de " +#~ "auto-organización para evitar la colisión cuando se imprime objeto por " +#~ "objeto" + +#~ msgid "Click the pencil icon to edit the filament." +#~ msgstr "Haga clic en el icono del lápiz para editar el filamento." + +#~ msgid "Color Print" +#~ msgstr "Impresión en color" + +#~ msgid "Comsumption" +#~ msgstr "Consumo" + +#~ msgid "Creating" +#~ msgstr "Creando" + +#~ msgid "Ctrl + Any arrow" +#~ msgstr "Ctrl + Cualquier tecla" + +#~ msgid "Ctrl + Left mouse button" +#~ msgstr "Ctrl + Botón izquierdo del ratón" + +#~ msgid "Debug" +#~ msgstr "Depurar" + +#~ msgid "Designer" +#~ msgstr "Diseñador" + +#~ msgid "Device:" +#~ msgstr "Dispositivo:" + +#~ msgid "Display printable box" +#~ msgstr "Caja de visualización imprimible " + +#~ msgid "Display shadow of objects" +#~ msgstr "Mostrar la sombra de los objetos" + +#~ msgid "Display triangles of models" +#~ msgstr "Mostrar los triángulos de los modelos" + +#~ msgid "" +#~ "Do not recommand bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "No se recomienda que la temperatura de la cama de la otra capa sea " +#~ "inferior a la de la capa inicial por más de este umbral. Una temperatura " +#~ "demasiado baja de la otra capa puede hacer que el modelo se desprenda de " +#~ "la bandeja de impresión." + +#~ msgid "" +#~ "Do you want to synchronize your personal data from Bambu Cloud? \n" +#~ "Contains the following information:\n" +#~ "1. The Process presets\n" +#~ "2. The Filament presets\n" +#~ "3. The Printer presets\n" +#~ msgstr "" +#~ "¿Quieres sincronizar tus datos personales desde Bambu Cloud? \n" +#~ "Contiene la siguiente información:\n" +#~ "1. Preajustes del proceso\n" +#~ "2. Preajustese de filamentos\n" +#~ "3. Preajustes de la impresora\n" + +#~ msgid "" +#~ "Do you want to synchronize your personal data from Bambu Cloud? \n" +#~ "It contains the following information:\n" +#~ "1. The Process presets\n" +#~ "2. The Filament presets\n" +#~ "3. The Printer presets\n" +#~ msgstr "\n" + +#~ msgid "" +#~ "Don't retract when the travel is in infill area absolutely. That means " +#~ "the oozing can't been seen" +#~ msgstr "" +#~ "No se repliegue cuando el recorrido esté en zona de relleno " +#~ "absolutamente. Eso significa que el rezago no puede ser visto" + +#~ msgid "" +#~ "Enabling this option means the height of every layer except the first " +#~ "will be automatically calculated during slicing according to the slope of " +#~ "the model’s surface.\n" +#~ "Note that this option only takes effect if no prime tower is generated in " +#~ "current plate." +#~ msgstr "" +#~ "Si se activa esta opción, la altura de cada capa, excepto la primera, se " +#~ "calculará automáticamente durante el corte en función de la pendiente de " +#~ "la superficie del modelo.\n" +#~ "Tenga en cuenta que esta opción sólo surte efecto si no se genera ninguna " +#~ "torre de purga en la bandeja actual." + +#~ msgid "Enter a search term" +#~ msgstr "Teclea un término de búsqueda" + +#~ msgid "Erase painting" +#~ msgstr "Borrar lo pintado" + +#~ msgid "Error at line %1%:\n" +#~ msgstr "Error en la línea %1%:\n" + +#~ msgid "Export Sliced File" +#~ msgstr "Exportar Archivo laminado" + +#~ msgid "Export current Sliced file" +#~ msgstr "Exportar el archivo laminado actual" + +#~ msgid "Export ok." +#~ msgstr "Exportación correcta." + +#~ msgid "Export sliced file" +#~ msgstr "Exportar archivo laminado" + +#~ msgid "Extruder position" +#~ msgstr "Posición del extrusor" + +#~ msgid "Filament 1" +#~ msgstr "Filamento 1" + +#~ msgid "Filament N XX" +#~ msgstr "Filamento N XX" + +#~ msgid "" +#~ "Filament to print support and skirt. 0 means no specific filament for " +#~ "support and current filament is used" +#~ msgstr "" +#~ "Filamento para imprimir el soporte y el faldón. 0 significa que no hay " +#~ "filamento específico para el soporte y se utiliza el filamento actual" + +#~ msgid "" +#~ "Filament to print support interface. 0 means no specific filament for " +#~ "support interface and current filament is used" +#~ msgstr "" +#~ "Filamento para imprimir la interfaz de soporte. 0 significa que no hay " +#~ "filamento específico para la interfaz de soporte y se utiliza el " +#~ "filamento actual" + +#~ msgid "Filaments Selection" +#~ msgstr "Selección de filamentos" + +#~ msgid "Fix model locally" +#~ msgstr "Fijar el modelo localmente" + +#~ msgid "Fix model through cloud" +#~ msgstr "Fijar el modelo a través de la nube" + +#~ msgid "Flushed filament" +#~ msgstr "Filamento limpiado" + +#~ msgid "" +#~ "Force cooling fan to be specific speed when overhang degree of printed " +#~ "part exceeds this value. Expressed as percentage which indicides how much " +#~ "width of the line without support from lower layer" +#~ msgstr "" +#~ "Fuerza al ventilador de refrigeración a una velocidad específica cuando " +#~ "el grado de voladizo de la pieza impresa supera este valor. Expresado en " +#~ "porcentaje, indica la anchura de la línea sin apoyo de la capa inferior." + +#~ msgid "Fragment Filter" +#~ msgstr "Filtro de fragmentos" + +#~ msgid "Fragment area" +#~ msgstr "Zona de fragmentos" + +#~ msgid "Fragment filter" +#~ msgstr "Filtro de Fragmentos" + +#~ msgid "" +#~ "Heat the nozzle to target \n" +#~ "temperature" +#~ msgstr "" +#~ "Calentar la boquilla a la temperatura deseada \n" +#~ "temperatura" + +#~ msgid "Height:" +#~ msgstr "Altura:" + +#~ msgid "" +#~ "Height of the clearance cylinder around extruder. Used as input of auto-" +#~ "arrange to avoid collision when print object by object" +#~ msgstr "" +#~ "Altura del cilindro de separación alrededor del extrusor. Se utiliza como " +#~ "entrada de auto-organización para evitar la colisión cuando se imprime " +#~ "objeto por objeto." + +#~ msgid "Import 3MF/STL/STEP/OBJ/AMF" +#~ msgstr "Importar 3MF/STL/STEP/OBJ/AMF" + +#~ msgid "In the calibration of extrusion flow" +#~ msgstr "En la calibración del flujo de extrusión" + +#~ msgid "In the calibration of laser scanner" +#~ msgstr "En la calibración del escáner láser" + +#~ msgid "Initialize failed [%d]!" +#~ msgstr "¡Ha fallado la inicialización [%d]!" + +#~ msgid "Inner wall speed" +#~ msgstr "Velocidad de la pared interior" + +#~ msgid "" +#~ "It seems object %s needs support to print. Please enable support " +#~ "generation." +#~ msgstr "" +#~ "Parece que el objeto %s necesita soporte para imprimir. Por favor, active " +#~ "la generación de soporte." + +#~ msgid "Line type" +#~ msgstr "Tipo de línea" + +#~ msgid "Management" +#~ msgstr "Gestión" + +#~ msgid "Max travel detour distance" +#~ msgstr "Distancia máxima de desvío de viaje" + +#~ msgid "" +#~ "Maximum detour distance for avoiding crossing wall. Don't detour if the " +#~ "detour distance is large than this value" +#~ msgstr "" +#~ "Distancia máxima de desvío para evitar cruzar el muro. No se desvía si la " +#~ "distancia de desvío es mayor que este valor" + +#~ msgid "Module" +#~ msgstr "Módulo" + +#~ msgid "Monitoring" +#~ msgstr "Monitorizando" + +#~ msgid "Monitoring Recording" +#~ msgstr "Monitoreo de grabación" + +#~ msgid "Open &PrusaSlicer" +#~ msgstr "Abrir &PrusaSlicer" + +#~ msgid "Open PrusaSlicer" +#~ msgstr "Abrir PrusaSlicer" + +#~ msgid "Output file" +#~ msgstr "Archivo de salida" + +#~ msgid "Part Cooling" +#~ msgstr "Refrigeración de Piezas" + +#~ msgid "Pause(heated bed temperature error)" +#~ msgstr "Pausa (error de temperatura de la cama caliente)" + +#~ msgid "Pause(hotend temperature error)" +#~ msgstr "Pausa (error de temperatura del hotend)" + +#~ msgid "Pause(toolhead shell off)" +#~ msgstr "Pausa (cabezal apagado)" + +#~ msgid "Per object edit" +#~ msgstr "Por objeto editar" + +#~ msgid "Plate %d: %s does not support filament %s\n" +#~ msgstr "\n" + +#~ msgid "Plate %d: %s does not support filament %s.\n" +#~ msgstr "La bandeja %d: %s no admite el filamento %s.\n" + +#~ msgid "Plate %d: %s does not support filament %s (%s).\n" +#~ msgstr "\n" + +#~ msgid "" +#~ "Please check the following infomation and click Confirm to continue " +#~ "sending print:\n" +#~ msgstr "\n" + +#~ msgid "Please fill report first." +#~ msgstr "Por favor, rellene primero el informe." + +#~ msgid "Please upgrade your printer first" +#~ msgstr "Por favor, actualice su impresora primero" + +#~ msgid "Position:" +#~ msgstr "Posición:" + +#~ msgid "" +#~ "Preview only mode:\n" +#~ "The loaded file contains G-Code only." +#~ msgstr "" +#~ "Modo de vista previa solamente:\n" +#~ "El archivo cargado sólo contiene G-Code." + +#~ msgid "Preview only mode for G-Code file." +#~ msgstr "Modo de vista previa sólo para el archivo G-Code." + +#~ msgid "Printer Selection" +#~ msgstr "Selección de la impresora" + +#~ msgid "" +#~ "Purging after filament change will be done inside objects' infills. This " +#~ "may lower the amount of waste and decrease the print time. If the walls " +#~ "are printed with transparent filament, the mixed color infill will be " +#~ "seen outside" +#~ msgstr "" +#~ "La purga tras el cambio de filamento se realizará dentro del relleno de " +#~ "los objetos. Esto puede reducir la cantidad de residuos y disminuir el " +#~ "tiempo de impresión. Si las paredes se imprimen con filamento " +#~ "transparente, el mezclado se podrá ver en el exterior." + +#~ msgid "" +#~ "Purging after filament change will be done inside objects' support. This " +#~ "may lower the amount of waste and decrease the print time" +#~ msgstr "" +#~ "La purga después del cambio de filamento se hará dentro del soporte de " +#~ "los objetos. Esto puede reducir la cantidad de residuos y disminuir el " +#~ "tiempo de impresión." + +#~ msgid "" +#~ "Push new filament \n" +#~ "into extruder" +#~ msgstr "" +#~ "Empujar el nuevo filamento \n" +#~ "en el extrusor" + +#~ msgid "" +#~ "Record timelapse video of printing without showing toolhead. In this mode " +#~ "the toolhead docks near the excess chute at each layer change, and then a " +#~ "snapshot is taken with the chamber camera. When printing finishes a " +#~ "timelapse video is composed of all the snapshots." +#~ msgstr "" +#~ "Record timelapse video of printing without showing the toolhead. In this " +#~ "mode the toolhead docks near the excess chute at each layer change, and " +#~ "then a snapshot is taken with the chamber camera. When printing finishes, " +#~ "a timelapse video is created from all the snapshots." + +#~ msgid "Reduce Triangles" +#~ msgstr "Reducir los triángulos" + +#~ msgid "Reload item" +#~ msgstr "Volver a cargar el objeto" + +#~ msgid "Reload items" +#~ msgstr "Recarga de objetos" + +#~ msgid "Repair" +#~ msgstr "Reparar" + +#~ msgid "Repair the model's meshes if it is non-manifold mesh" +#~ msgstr "Reparar las mallas del modelo si se trata de una malla no plegable" + +#~ msgid "Report" +#~ msgstr "Informe" + +#~ msgid "Rotation:" +#~ msgstr "Rotación:" + +#~ msgid "Save configuration as:" +#~ msgstr "Guardar la configuración como:" + +#~ msgid "Set pen size" +#~ msgstr "Ajustar el tamaño del lápiz" + +#~ msgid "Shift + Any arrow" +#~ msgstr "Mayúsculas + Cualquier flecha" + +#~ msgid "Shift + Mouse wheel" +#~ msgstr "Mayúsculas + rueda del ratón" + +#~ msgid "Show Model Mesh(TODO)" +#~ msgstr "Mostrar modelo de malla(TODO)" + +#~ msgid "Show Model Shadow(TODO)" +#~ msgstr "Mostrar sombra del modelo(TODO)" + +#~ msgid "Show Printable Box(TODO)" +#~ msgstr "Mostrar caja imprimible(TODO)" + +#~ msgid "Spiral mode" +#~ msgstr "Modo espiral" + +#~ msgid "Successfully sent.Will automatically jump to the device page in %s s" +#~ msgstr "" +#~ "Enviado con éxito. Saltará automáticamente a la página del dispositivo en " +#~ "%s s" + +#~ msgid "" +#~ "Support layer uses layer height independent with object layer. This is to " +#~ "support custom support gap,but may cause extra filament switches if " +#~ "support is specified as different extruder with object" +#~ msgstr "" +#~ "La capa de soporte utiliza la altura de la capa independientemente de la " +#~ "capa del objeto. Esto es para soportar la brecha de soporte " +#~ "personalizada, pero puede causar cambios de filamento adicionales si el " +#~ "soporte se especifica como un extrusor diferente con el objeto" + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly\n" +#~ msgstr "\n" + +#~ msgid "" +#~ "Switch to zig-zag pattern?\n" +#~ "Yes - switch to zig-zag pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly\n" +#~ msgstr "" +#~ "¿Cambiar al patrón en zig-zag?\n" +#~ "Sí - cambia automáticamente al patrón en zig-zag\n" +#~ "No - restablecer automáticamente la densidad al valor por defecto que no " +#~ "es del 100%.\n" + +#~ msgid "Swith cloud environment, Please login again!" +#~ msgstr "Cambiar el entorno de la nube, ¡Por favor, inicie sesión de nuevo!" + +#~ msgid "" +#~ "The 3mf's version %s is newer than %s's version %s, Found following keys " +#~ "unrecognized:\n" +#~ msgstr "" +#~ "La versión %s de 3mf es más reciente que la versión %s de %s, se han " +#~ "encontrado las siguientes claves no reconocidas:\n" + +#~ msgid "" +#~ "The 3mf's version %s is newer than %s's version %s, Suggest to upgrade " +#~ "your software.\n" +#~ msgstr "\n" + +#~ msgid "The Config is not compatible and can not be loaded." +#~ msgstr "La configuración no es compatible y no se puede cargar." + +#~ msgid "" +#~ "The firmware versions of printer and AMS are too low.Please update to the " +#~ "latest version before sending the print job" +#~ msgstr "" +#~ "Las versiones del firmware de la impresora y del AMS son demasiado " +#~ "antiguas, por favor, actualice a la última versión antes de enviar el " +#~ "trabajo de impresión." + +#~ msgid "" +#~ "The model has overlapping or self-intersecting facets. I tried to repair " +#~ "it, however you might want to check the results or repair the input file " +#~ "and retry." +#~ msgstr "" +#~ "El modelo tiene facetas superpuestas o auto-intersecadas. He intentado " +#~ "repararlo, sin embargo, es posible que desee comprobar los resultados o " +#~ "reparar el archivo de entrada y volver a intentarlo." + +#~ msgid "" +#~ "The printer type used to generate G-code is not the same type as the " +#~ "currently selected physical printer. It is recommend to re-slice by " +#~ "selecting the same printer type.\n" +#~ msgstr "\n" + +#~ msgid "" +#~ "This object will be used to purge the nozzle after a filament change to " +#~ "save filament and decrease the print time. Colours of the objects will be " +#~ "mixed as a result" +#~ msgstr "" +#~ "Este objeto se utilizará para purgar la boquilla después de un cambio de " +#~ "filamento para ahorrar filamento y disminuir el tiempo de impresión. Los " +#~ "colores de los objetos se mezclarán como resultado" + +#~ msgid "" +#~ "This setting stands for how much volume of filament can be melted and " +#~ "extruded per second. Printing speed is limited by max volumetric speed, " +#~ "in case of too high and unreasonable speed setting. Zero means no limit" +#~ msgstr "" +#~ "Este ajuste representa la cantidad de volumen de filamento que se puede " +#~ "fundir y extruir por segundo. La velocidad de impresión está limitada por " +#~ "la velocidad volumétrica máxima, en caso de ajustar una velocidad " +#~ "demasiado alta y poco razonable. Cero significa que no hay límite" + +#~ msgid "Timelapse Wipe Tower" +#~ msgstr "Intervalo torre de purga" + +#~ msgid "Translation" +#~ msgstr "Translación" + +#~ msgid "Unable to create zip file" +#~ msgstr "No se puede crear un archivo zip" + +#~ msgid "User pause" +#~ msgstr "Pausa de usuario" + +#~ msgid "Waiting" +#~ msgstr "Esperando" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings after switching preset?" +#~ msgstr "" +#~ "Has cambiado algunos ajustes de preajuste. \n" +#~ "¿Desea mantener estos ajustes cambiados después de cambiar de preajuste?" + +#~ msgid "Zig zag" +#~ msgstr "Zig zag" + +#~ msgid " Object:" +#~ msgstr "Objeto" + +#~ msgid "" +#~ " is too close to exclusion area, there may be collisions when printing.\n" +#~ msgstr "\n" + +#~ msgid "" +#~ " is too close to exclusion area, there will be collisions when printing.\n" +#~ msgstr "" +#~ " está demasiado cerca del área de exclusión, habrá colisiones al " +#~ "imprimir.\n" + +#~ msgid " is too close to others, there may be collisions when printing.\n" +#~ msgstr "\n" + +#~ msgid " is too close to others, there will be collisions when printing.\n" +#~ msgstr " está demasiado cerca de otros, habrá colisiones al imprimir.\n" + +#~ msgid "hybrid(auto)" +#~ msgstr "híbrido(auto)" + +#~ msgid "normal" +#~ msgstr "normal" + +#~ msgid "" +#~ "normal(auto) and tree(auto) is used to generate support automatically. If " +#~ "normal or tree is selected, only support enforcers are generated" +#~ msgstr "" +#~ "normal(auto) y tree(auto) se utiliza para generar soporte " +#~ "automáticamente. Si se selecciona normal o árbol, sólo se generan los " +#~ "soportes" + +#~ msgid "the 3mf is not compatible, load geometry data only!" +#~ msgstr "el 3mf no es compatible, ¡cargue sólo los datos geométricos!" + +#~ msgid "tree" +#~ msgstr "árbol" + +#~ msgid "Pause Print" +#~ msgstr "Pause Print" + +#~ msgid "Edit Pause Print Message" +#~ msgstr "Edit Pause Print Message" + +#~ msgid "Delete Pause Print" +#~ msgstr "Delete Pause Print" + +#~ msgid "\\u2103" +#~ msgstr "\\ u2103" + +#~ msgid "mm\\u00B3" +#~ msgstr "mm\\ u00b3" + +#~ msgid "&Edit" +#~ msgstr "Editar" + +#~ msgid "AMSMaterialsSetting" +#~ msgstr "Configuración de materiales AMS" + +#~ msgid "AMS auto switch filament" +#~ msgstr "Cambio automático de filamento AMS" + +#~ msgid "AMS settings are not supported for external spool" +#~ msgstr "" +#~ "La configuración actual de AMS no admite el uso de una bobina externa." + +#~ msgid "AWS PRE host" +#~ msgstr "Host de AWS PRE" + +#~ msgid "AWS host" +#~ msgstr "Host de AWS" + +#~ msgid "Actual Volume = Flushing Volume * Multiplier" +#~ msgstr "Volumen real = Volumen de descarga * Multiplicador" + +#~ msgid "Add Custom Printer" +#~ msgstr "Añadir impresora personalizada" + +#~ msgid "" +#~ "Arachne engine only works when overhang slowing down is disabled.\n" +#~ "This may cause decline in the quality of overhang surface when print " +#~ "fastly" +#~ msgstr "" +#~ "El motor Arachne solo funciona cuando la ralentización por voladizo está " +#~ "desactivada.\n" +#~ "Esto puede provocar una disminución en la calidad de los voladizos al " +#~ "imprimir rápidamente." + +#~ msgid "Auto refill" +#~ msgstr "Auto refill" + +#~ msgid "" +#~ "Bed exclude area that can't used as printable area in X-Y plane. For " +#~ "example, the bottom left area which is used to cut filament in X1 when " +#~ "printing multi colors with AMS. The area is expressed as polygon by " +#~ "points in following format: \"XxY, XxY, ...\"" +#~ msgstr "" +#~ "El borde excluye el área que no se puede usar como área imprimible en el " +#~ "plano X-Y. Por ejemplo, el área inferior izquierda que se usa para cortar " +#~ "filamento en X1 cuando se imprime en varios colores con un AMS. El área " +#~ "se expresa como polígono mediante puntos en el siguiente formato: «xxY, " +#~ "xxY,...»" + +#~ msgid "" +#~ "Calibration completed. Please select the factors according to the left " +#~ "figure and fill them in the input boxes." +#~ msgstr "" +#~ "Se completó la calibración. Seleccione los factores según la figura de la " +#~ "izquierda y rellénelos en las casillas de entrada." + +#~ msgid "" +#~ "Cannot detect the LAN IP address of %s. Are %s and Bambu Studio in the " +#~ "same LAN?" +#~ msgstr "" +#~ "No se puede detectar la dirección IP LAN de %s. ¿Están %s y Bambu Studio " +#~ "en la misma LAN?" + +#~ msgid "Choose save directory" +#~ msgstr "Elija directorio de guardado" + +#~ msgid "Clean" +#~ msgstr "Limpiar" + +#~ msgid "Clipping of view" +#~ msgstr "Recorte de vista" + +#~ msgid "" +#~ "Desiccant status lower than two bars indicates that desiccant can be " +#~ "inactive. Please change the desiccant.(Higher the better)" +#~ msgstr "" +#~ "Un estado del desecante inferior a dos barras indica que el desecante " +#~ "puede estar inactivo. Cambie el desecante, por favor. (cuanto más alto, " +#~ "mejor)" + +#~ msgid "" +#~ "Disable overhang slowing down automatically? \n" +#~ "Yes - Enable arachne and disable overhang slowing down\n" +#~ "No - Give up using arachne this time" +#~ msgstr "" +#~ "¿Desactivar automáticamente la ralentización del voladizo?\n" +#~ "Sí - Activar Arachne y desactivar la ralentización del voladizo\n" +#~ "No - No utilizar Arachne para esta impresión" + +#~ msgid "Downloading Bambu Network plug-in" +#~ msgstr "Descargando el complemento Bambu Network" + +#~ msgid "Edit plate setitngs" +#~ msgstr "Edit plate settings" + +#~ msgid "" +#~ "Extrusion compensation calibration is not supported when using Textured " +#~ "PEI Plate" +#~ msgstr "" +#~ "Extrusion compensation calibration is not supported when using the " +#~ "Textured PEI Plate." + +#~ msgid "" +#~ "Failed to connect to the printer through LAN. Please enter the correct " +#~ "printer IP address and access code." +#~ msgstr "" +#~ "No se pudo conectar a la impresora a través de LAN. Introduzca la " +#~ "dirección IP de la impresora y el código de acceso correctos." + +#~ msgid "Failed to parse login report reason111" +#~ msgstr "Failed to parse login report reason" + +#~ msgid "Failed uploading print file. Please enter ip address again." +#~ msgstr "" +#~ "Error al cargar el archivo de impresión. Vuelva a introducir la dirección " +#~ "IP." + +#~ msgid "" +#~ "Filament index %s does not match the filament in AMS slot %s. Please " +#~ "update the printer firmware to support AMS slot assignment." +#~ msgstr "" +#~ "El índice de filamentos %s no coincide con el filamento de la ranura AMS " +#~ "%s. Actualice el firmware de la impresora para admitir la asignación de " +#~ "ranuras AMS." + +#~ msgid "" +#~ "Filament index %s exceeds the number of AMS slots. Please update the " +#~ "printer firmware to support AMS slot assignment." +#~ msgstr "" +#~ "El índice de filamentos %s supera el número de ranuras AMS. Actualice el " +#~ "firmware de la impresora para admitir la asignación de ranuras AMS." + +#~ msgid "" +#~ "Filament index does not match the filament in AMS slot. Please update the " +#~ "printer firmware to support AMS slot assignment." +#~ msgstr "" +#~ "El índice de filamento no coincide con el filamento de la ranura AMS. " +#~ "Actualice el firmware de la impresora para admitir la asignación de " +#~ "ranuras AMS." + +#~ msgid "" +#~ "Filament index exceeds the number of AMS slots. Please update the printer " +#~ "firmware to support AMS slot assignment." +#~ msgstr "" +#~ "El índice de filamentos supera el número de ranuras AMS. Actualice el " +#~ "firmware de la impresora para admitir la asignación de ranuras AMS." + +#~ msgid "" +#~ "Filament to print support and raft. \"Default\" means no specific " +#~ "filament for support and current filament is used" +#~ msgstr "" +#~ "Filamento para imprimir soportes y balsas. «Predeterminado» significa que " +#~ "no se utiliza un filamento específico como soporte y se utiliza un " +#~ "filamento actual" + +#~ msgid "Filaments Auto refill" +#~ msgstr "Filament Auto-refill" + +#~ msgid "G-code" +#~ msgstr "G-code" + +#~ msgid "" +#~ "Green represents that AMS humidity is normal, orange and red represent " +#~ "that humidity is too high.(Lower the better)" +#~ msgstr "" +#~ "El verde representa que la humedad del AMS es normal, y el naranja y el " +#~ "rojo representan que la humedad es demasiado alta. (cuanto más bajo, " +#~ "mejor)" + +#~ msgid "Heat the nozzle to target temperature" +#~ msgstr "Calentar la boquilla a la temperatura deseada" + +#~ msgid "" +#~ "If enabled, a timelapse video will be generated for each print. After " +#~ "each layer is printed, the toolhead will move to the excess chute, and " +#~ "then a snapshot is taken with the chamber camera. All of these snapshots " +#~ "are composed into a timelapse video when printing completes. Since the " +#~ "melt filament may leak from the nozzle during the process of taking a " +#~ "snapshot, prime tower is required for nozzle priming." +#~ msgstr "" +#~ "Si se activa, se generará un video time-lapse para cada impresión. " +#~ "Después de imprimir cada capa, el cabezal se moverá hacia el conducto de " +#~ "purga y, a continuación, se tomará una instantánea con la cámara de la " +#~ "cámara. Todas estas instantáneas se compondrán en un video cuando se " +#~ "completa la impresión. Dado que el filamento fundido puede salir de la " +#~ "boquilla durante el proceso de toma de una instantánea, se requiere una " +#~ "torre de purga para limpiar la boquilla." + +#~ msgid "Initialize failed (Not supported without remote video tunnel)!" +#~ msgstr "" +#~ "Falló la inicialización (no se admite sin el túnel de vídeo remoto)." + +#~ msgid "" +#~ "It seems object %s has completely floating regions. Please re-orient the " +#~ "object or enable support generation." +#~ msgstr "" +#~ "Parece que el objeto %s tiene regiones completamente flotantes. Reoriente " +#~ "el objeto o habilite la generación de soporte." + +#~ msgid "" +#~ "It seems object %s has large overhangs. Please enable support generation." +#~ msgstr "" +#~ "Parece que el objeto %s tiene grandes voladizos. Habilite la generación " +#~ "de soporte." + +#~ msgid "Layer Time(log): " +#~ msgstr "Tiempo de capa (registro): " + +#~ msgid "Layers: %d/%d" +#~ msgstr "Capas: %d/%d" + +#~ msgid "Layers: %s" +#~ msgstr "Capas: %s" + +#~ msgid "Layers: N/A" +#~ msgstr "Capas: N/A" + +#~ msgid "Modify" +#~ msgstr "Modificar" + +#~ msgid "NO AMS" +#~ msgstr "NO AMS" + +#~ msgid "Not supported." +#~ msgstr "No soportado" + +#~ msgid "" +#~ "Note : The location of IP and access code on the machine is as follows :" +#~ msgstr "" +#~ "Nota: La ubicación de la IP y el código de acceso en el equipo es la " +#~ "siguiente:" + +#~ msgid "P1P General Settings - WLAN in the sidebar of the main screen" +#~ msgstr "" +#~ "Configuración general de P1P: WLAN en la barra lateral de la pantalla " +#~ "principal" + +#~ msgid "Plate %d: %s does not support filament %s (%s)." +#~ msgstr "Placa %d: %s no admite el filamento %s (%s)." + +#~ msgid "Plate type" +#~ msgstr "Plate type" + +#~ msgid "Plate types supported by the printer" +#~ msgstr "Plate types supported by the printer" + +#~ msgid "Please Fill Task Report." +#~ msgstr "Por favor rellene el informe de tareas." + +#~ msgid "" +#~ "Please check the following infomation and click Confirm to continue " +#~ "sending print:" +#~ msgstr "" +#~ "Compruebe la siguiente información y haga clic en Confirmar para " +#~ "continuar con el envío de la impresión:" + +#~ msgid "" +#~ "Preview only mode:\n" +#~ "The loaded file contains gcode only." +#~ msgstr "" +#~ "Modo de vista previa solamente:\n" +#~ "El archivo cargado sólo contiene gcode." + +#~ msgid "Preview only mode for gcode file." +#~ msgstr "Modo de vista previa sólo para el archivo gcode." + +#~ msgid "" +#~ "Prime tower is required by timelapse. Do you want to enable both of them?" +#~ msgstr "Se requiere torre de purga para los time-lapses. ¿Quiere activarla?" + +#~ msgid "" +#~ "Prime tower is required by timeplase. Are you sure you want to disable " +#~ "both of them?" +#~ msgstr "" +#~ "Se requiere torre de purga para los time-lapses. ¿Está seguro de que " +#~ "desea deshabilitarla?" + +#~ msgid "Printer firmware does not support material = >ams slot mapping." +#~ msgstr "" +#~ "El firmware de la impresora no soporta el material => Mapeo de ranuras " +#~ "AMS" + +#~ msgid "Select Bed Type" +#~ msgstr "Seleccione el tipo de cama" + +#~ msgid "Show Log" +#~ msgstr "Mostrar registro" + +#~ msgid "Spaghetti Detection" +#~ msgstr "Detección de hilos" + +#~ msgid "Spaghetti and Excess Chute Pileup Detection" +#~ msgstr "" +#~ "Detección de hilos en la impresión y exceso de material de purga en el " +#~ "vertedero." + +#~ msgid "Start" +#~ msgstr "Iniciar" + +#~ msgid "Stop printing when Spaghetti or Excess Chute Pileup is detected" +#~ msgstr "" +#~ "Detener la impresión cuando se detecten hilos o un exceso de material de " +#~ "purga en el vertedero." + +#~ msgid "Stop printing when spaghetti detected" +#~ msgstr "Detener la impresión cuando se detecten hilos" + +#~ msgid "" +#~ "Successfully sent. Will automatically jump to the device page in %s s" +#~ msgstr "" +#~ "Enviado con éxito. Saltará automáticamente a la página del dispositivo en " +#~ "%s s" + +#~ msgid "Suggestion: Actual Volume in range [%d, %d]" +#~ msgstr "Sugerencia: Volumen real dentro del rango [%d, %d]" + +#~ msgid "Support base" +#~ msgstr "Base de soporte" + +#~ msgid "" +#~ "Support layer uses layer height independent with object layer. This is to " +#~ "support customizing z-gap and save print time." +#~ msgstr "" +#~ "La capa de soporte utiliza la altura de la capa independientemente de la " +#~ "capa de objetos. Esto es para permitir la personalización de z-gap y " +#~ "ahorrar tiempo de impresión." + +#~ msgid "Sync material list from AMS" +#~ msgstr "Sincronizar la lista de materiales de AMS" + +#~ msgid "The %s filament is too soft to be used with the AMS" +#~ msgstr "El filamento %s es demasiado blando para usarlo con el AMS" + +#~ msgid "The 3mf is not from Bambu lab, load geometry data only." +#~ msgstr "El 3mf no es de Bambu lab, solo se cargaran datos de geometría." + +#~ msgid "" +#~ "The P1P printer does not support smooth timelapse, use traditional " +#~ "timelapse instead." +#~ msgstr "" +#~ "La impresora P1P no admite timelapse fluido; en su lugar, utilice el " +#~ "timelapse tradicional." + +#~ msgid "" +#~ "The flush volume is less than the minimum value and will be automatically " +#~ "set to the minimum value." +#~ msgstr "" +#~ "El volumen de purga es inferior al valor mínimo y se establecerá " +#~ "automáticamente en el valor mínimo." + +#~ msgid "" +#~ "The printer type used to generate G-code is not the same type as the " +#~ "currently selected physical printer. It is recommend to re-slice by " +#~ "selecting the same printer type." +#~ msgstr "" +#~ "El tipo de impresora que se utiliza para generar el g-code no es el mismo " +#~ "que el de la impresora física actualmente seleccionada. Se recomienda " +#~ "volver a generar el g-code después de seleccionar el tipo de impresora " +#~ "correcto." + +#~ msgid "" +#~ "There are some unknown filaments mapped to generic preset. Please update " +#~ "Bambu Studio or restart Bambu Studio to check if there is an update to " +#~ "system presets." +#~ msgstr "" +#~ "Hay algunos filamentos desconocidos mapeados en ajustes preestablecidos " +#~ "genéricos. Actualice Bambu Studio o reinicie Bambu Studio para comprobar " +#~ "si hay alguna actualización en los ajustes preestablecidos del sistema." + +#~ msgid "Timelapse without toolhead" +#~ msgstr "Timelapse sin cabezal" + +#~ msgid "Unable to connect printer" +#~ msgstr "No se puede conectar la impresora" + +#~ msgid "" +#~ "When sparse infill density is low, the internal solid infill or internal " +#~ "bridge may have no archor at the end of line. This cause falling and bad " +#~ "quality when printing internal solid infill. When enable this feature, " +#~ "loop paths will be added to the sparse fill of the lower layers for " +#~ "specific thickness, so that better archor can be provided for internal " +#~ "bridge. 0 means disable this feature" +#~ msgstr "" +#~ "Cuando la densidad del relleno disperso es baja, es posible que el " +#~ "relleno sólido interno o el puente interno no tengan anclaje al final de " +#~ "la línea. Esto provoca colapsos y mala calidad al imprimir el relleno " +#~ "sólido interno. Cuando se habilita esta función, se añadirán rutas de " +#~ "bucle al relleno disperso de las capas inferiores para espesores " +#~ "específicos, de forma que se puedan proporcionar mejores anclajes para " +#~ "los puentes internos. 0 significa desactivar esta función" + +#~ msgid "" +#~ "When the current material run out,the printer will continue to print in " +#~ "the following order." +#~ msgstr "" +#~ "When the current material runs out, the printer will continue to print in " +#~ "the following order." + +#~ msgid "" +#~ "When using support material for the support interface, We recommend the " +#~ "following settings:\n" +#~ "0 top z distance, 0 interface spacing, concentric pattern." +#~ msgstr "" +#~ "Al utilizar material de soporte para la interfaz de soporte, recomendamos " +#~ "los siguientes ajustes:\n" +#~ "Distancia z superior a 0, espaciado de interfaz 0, patrón concéntrico." + +#~ msgid "" +#~ "X1 General Settings - Network Settings in the side bar of X1 main screen" +#~ msgstr "" +#~ "Configuración general de X1: configuración de red en la barra lateral de " +#~ "la pantalla principal del X1." + +#~ msgid "" +#~ "You are going to delete %u files from printer. Are you sure to continue?" +#~ msgstr "" +#~ "You are going to delete %u files from the printer. Are you sure you want " +#~ "to continue?" + +#~ msgid "(Sort)" +#~ msgstr "Ordenar" + +#~ msgid "" +#~ " will be closed before creating a new model. Do you want to continue?" +#~ msgstr " se cerrará antes de crear un nuevo modelo. ¿Quieres continuar?" + +#~ msgid "default value" +#~ msgstr "Valor por defecto" + +#~ msgid "preparing, export 3mf failed!" +#~ msgstr "Preparando; ¡Error al exportar 3MF!" diff --git a/localization/i18n/fr/Snapmaker_Orca_fr.po b/localization/i18n/fr/Snapmaker_Orca_fr.po new file mode 100644 index 0000000000..26a58f66e3 --- /dev/null +++ b/localization/i18n/fr/Snapmaker_Orca_fr.po @@ -0,0 +1,18536 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# 5axes <5axes@free.fr>, 2023. +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: \n" +"Language-Team: Guislain Cyril, Thomas Lété\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n==0 || n==1) ? 0 : 1;\n" +"X-Generator: Poedit 3.4.4\n" + +msgid "Supports Painting" +msgstr "Peindre les supports" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Molette de la souris" + +msgid "Section view" +msgstr "Vue en coupe" + +msgid "Reset direction" +msgstr "Réinitialiser la direction" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Molette de la souris" + +msgid "Pen size" +msgstr "Taille du crayon" + +msgid "Left mouse button" +msgstr "Bouton gauche de la souris" + +msgid "Enforce supports" +msgstr "Forcer les supports" + +msgid "Right mouse button" +msgstr "Bouton droit de la souris" + +msgid "Block supports" +msgstr "Bloquer les supports" + +msgid "Shift + Left mouse button" +msgstr "Maj + Bouton gauche de la souris" + +msgid "Erase" +msgstr "Effacer" + +msgid "Erase all painting" +msgstr "Effacer tout" + +msgid "Highlight overhang areas" +msgstr "Mettre en surbrillance les zones en surplomb" + +msgid "Gap fill" +msgstr "Remplir les espaces" + +msgid "Perform" +msgstr "Exécuter" + +msgid "Gap area" +msgstr "Aire des espaces" + +msgid "Tool type" +msgstr "Type d'outil" + +msgid "Smart fill angle" +msgstr "Angle de remplissage intelligent" + +msgid "On overhangs only" +msgstr "Sur les surplombs uniquement" + +msgid "Auto support threshold angle: " +msgstr "Angle de seuil de support automatique : " + +msgid "Circle" +msgstr "Cercle" + +msgid "Sphere" +msgstr "Sphère" + +msgid "Fill" +msgstr "Remplir" + +msgid "Gap Fill" +msgstr "Remplissage des espaces" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "" +"Permet de peindre uniquement sur les facettes sélectionnées par : \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Mettre en surbrillance les faces en fonction de l'angle de surplomb." + +msgid "No auto support" +msgstr "Pas de support auto" + +msgid "Support Generated" +msgstr "Supports générés" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo-Placer sur la face" + +msgid "Lay on face" +msgstr "Poser sur une face" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Le nombre de filaments dépasse le nombre maximum pris en charge par l'outil " +"de peinture. seuls les %1% premiers filaments seront disponibles dans " +"l'outil de peinture." + +msgid "Color Painting" +msgstr "Mettre en couleur" + +msgid "Pen shape" +msgstr "Forme de crayon" + +msgid "Paint" +msgstr "Peindre" + +msgid "Key 1~9" +msgstr "Touche 1 ~ 9" + +msgid "Choose filament" +msgstr "Choisissez le filament" + +msgid "Edge detection" +msgstr "Détection des contours" + +msgid "Triangles" +msgstr "Triangles" + +msgid "Filaments" +msgstr "Filaments" + +msgid "Brush" +msgstr "Pinceau" + +msgid "Smart fill" +msgstr "Remplissage intelligent" + +msgid "Bucket fill" +msgstr "Pot de peinture" + +msgid "Height range" +msgstr "Plage de hauteur" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Entrée" + +msgid "Toggle Wireframe" +msgstr "Activer Maillage" + +msgid "Shortcut Key " +msgstr "Raccourci " + +msgid "Triangle" +msgstr "Triangle" + +msgid "Height Range" +msgstr "Plage de hauteur" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Remove painted color" +msgstr "Supprimer la couleur peinte" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Peint avec : filament %1%" + +msgid "Move" +msgstr "Déplacer" + +msgid "Gizmo-Move" +msgstr "Gizmo-Déplacer" + +msgid "Rotate" +msgstr "Pivoter" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-Pivoter" + +msgid "Optimize orientation" +msgstr "Optimiser l'orientation" + +msgid "Apply" +msgstr "Appliquer" + +msgid "Scale" +msgstr "Redimensionner" + +msgid "Gizmo-Scale" +msgstr "Gizmo-Redimensionner" + +msgid "Error: Please close all toolbar menus first" +msgstr "Erreur : Veuillez d'abord fermer tous les menus de la barre d'outils" + +msgid "in" +msgstr "dans" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Emplacement" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Rotation" + +msgid "Scale ratios" +msgstr "Rapports d'échelle" + +msgid "Object Operations" +msgstr "Opérations sur les objets" + +msgid "Volume Operations" +msgstr "Opérations sur les volumes" + +msgid "Translate" +msgstr "Traduire" + +msgid "Group Operations" +msgstr "Opérations de groupe" + +msgid "Set Position" +msgstr "Définir la Position" + +msgid "Set Orientation" +msgstr "Définir l'Orientation" + +msgid "Set Scale" +msgstr "Définir l'Échelle" + +msgid "Reset Position" +msgstr "Réinitialiser la position" + +msgid "Reset Rotation" +msgstr "Réinitialiser la Rotation" + +msgid "World coordinates" +msgstr "Coordonnées" + +msgid "Object coordinates" +msgstr "Coordonnées de l’objet" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Taille" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "échelle uniforme" + +msgid "Planar" +msgstr "Planaire" + +msgid "Dovetail" +msgstr "Queue d’aronde" + +msgid "Auto" +msgstr "Auto" + +msgid "Manual" +msgstr "Manuel" + +msgid "Plug" +msgstr "Connecteur" + +msgid "Dowel" +msgstr "Tourillon" + +msgid "Snap" +msgstr "Encoche" + +msgid "Prism" +msgstr "Prisme" + +msgid "Frustum" +msgstr "Tronc" + +msgid "Square" +msgstr "Carré" + +msgid "Hexagon" +msgstr "Hexagone" + +msgid "Keep orientation" +msgstr "Conserver l’orientation" + +msgid "Place on cut" +msgstr "Placer sur la coupe" + +msgid "Flip upside down" +msgstr "Retourner à l’envers" + +msgid "Connectors" +msgstr "Connecteurs" + +msgid "Type" +msgstr "Type" + +msgid "Style" +msgstr "Style" + +msgid "Shape" +msgstr "Forme" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Profondeur" + +msgid "Groove" +msgstr "Rainure" + +msgid "Width" +msgstr "Largeur" + +msgid "Flap Angle" +msgstr "Angle du rabat" + +msgid "Groove Angle" +msgstr "Angle de la rainure" + +msgid "Part" +msgstr "Pièce" + +msgid "Object" +msgstr "Objet" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Cliquer pour retourner le plan de coupe\n" +"Faire glisser pour déplacer le plan de coupe" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Cliquer pour retourner le plan de coupe\n" +"Faire glisser pour déplacer le plan de coupe\n" +"Clic droit sur une pièce pour l’affecter à l’autre côté." + +msgid "Move cut plane" +msgstr "Déplacer le plan de coupe" + +msgid "Mode" +msgstr "Mode" + +msgid "Change cut mode" +msgstr "Changer le mode de coupe" + +msgid "Tolerance" +msgstr "Tolérance" + +msgid "Drag" +msgstr "Glisser" + +msgid "Draw cut line" +msgstr "Tracer la ligne de coupe" + +msgid "Left click" +msgstr "Clic gauche" + +msgid "Add connector" +msgstr "Ajouter un connecteur" + +msgid "Right click" +msgstr "Clic droit" + +msgid "Remove connector" +msgstr "Retirer le connecteur" + +msgid "Move connector" +msgstr "Déplacer le connecteur" + +msgid "Add connector to selection" +msgstr "Ajouter un connecteur à la sélection" + +msgid "Remove connector from selection" +msgstr "Retirer le connecteur de la sélection" + +msgid "Select all connectors" +msgstr "Sélectionner tous les connecteurs" + +msgid "Cut" +msgstr "Couper" + +msgid "Rotate cut plane" +msgstr "Rotation du plan de coupe" + +msgid "Remove connectors" +msgstr "Retirer les connecteurs" + +msgid "Bulge" +msgstr "Renflement" + +msgid "Bulge proportion related to radius" +msgstr "Proportion du renflement par rapport au rayon" + +msgid "Space" +msgstr "Espace" + +msgid "Space proportion related to radius" +msgstr "Proportion de l’espace par rapport au rayon" + +msgid "Confirm connectors" +msgstr "Confirmer les connecteurs" + +msgid "Cancel" +msgstr "Annuler" + +msgid "Build Volume" +msgstr "Volume d’impression" + +msgid "Flip cut plane" +msgstr "Retourner le plan de coupe" + +msgid "Groove change" +msgstr "Modifier la rainure" + +msgid "Reset" +msgstr "Réinitialiser" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Modifié" + +msgid "Cut position" +msgstr "Position de coupe" + +msgid "Reset cutting plane" +msgstr "Réinitialisation du plan de coupe" + +msgid "Edit connectors" +msgstr "Modifier les connecteurs" + +msgid "Add connectors" +msgstr "Ajouter des connecteurs" + +msgid "Reset cut" +msgstr "Réinitialiser la coupe" + +msgid "Reset cutting plane and remove connectors" +msgstr "Réinitialiser le plan de coupe et retirer les connecteurs" + +msgid "Upper part" +msgstr "Partie supérieure" + +msgid "Lower part" +msgstr "Partie inférieure" + +msgid "Keep" +msgstr "Conserver" + +msgid "Flip" +msgstr "Retourner" + +msgid "After cut" +msgstr "Après la coupe" + +msgid "Cut to parts" +msgstr "Couper la sélection dans le presse-papiers" + +msgid "Perform cut" +msgstr "Effectuer la coupe" + +msgid "Warning" +msgstr "Alerte" + +msgid "Invalid connectors detected" +msgstr "Connecteurs invalides détectés" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "Le connecteur %1$d est hors du contour de la coupe" +msgstr[1] "Les connecteurs %1$d sont hors du contour de la coupe" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "Le connecteur %1$d est en-dehors de l’objet" +msgstr[1] "Les connecteurs %1$d sont en-dehors de l’objet" + +msgid "Some connectors are overlapped" +msgstr "Certains connecteurs se chevauchent" + +msgid "Select at least one object to keep after cutting." +msgstr "Sélectionnez au moins un objet à conserver après la coupe." + +msgid "Cut plane is placed out of object" +msgstr "Le plan de coupe est placé en dehors de l’objet" + +msgid "Cut plane with groove is invalid" +msgstr "Le plan de coupe avec rainure est invalide" + +msgid "Connector" +msgstr "Connecteur" + +msgid "Cut by Plane" +msgstr "Coupe par plan" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"les bords non pliables sont dus à l’outil de coupe, voulez-vous les corriger " +"maintenant ?" + +msgid "Repairing model object" +msgstr "Réparer l'objet modèle" + +msgid "Cut by line" +msgstr "Coupe par ligne" + +msgid "Delete connector" +msgstr "Supprimer le connecteur" + +msgid "Mesh name" +msgstr "Nom du maillage" + +msgid "Detail level" +msgstr "Niveau de détail" + +msgid "Decimate ratio" +msgstr "Rapport de décimation" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Le traitement du modèle '%1%' avec plus de 1 million de triangles peut être " +"lent. Il est fortement recommandé de simplifier le modèle." + +msgid "Simplify model" +msgstr "Simplifier le modèle" + +msgid "Simplify" +msgstr "Simplifier" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"La simplification n'est actuellement autorisée que lorsqu'une seule pièce " +"est sélectionnée" + +msgid "Error" +msgstr "Erreur" + +msgid "Extra high" +msgstr "Très haut" + +msgid "High" +msgstr "Élevé" + +msgid "Medium" +msgstr "Moyen" + +msgid "Low" +msgstr "Faible" + +msgid "Extra low" +msgstr "Très bas" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d triangles" + +msgid "Show wireframe" +msgstr "Afficher le maillage" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "Ne peut pas s'appliquer lors du processus de prévisualisation." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Opération déjà annulée. Veuillez patienter quelques secondes." + +msgid "Face recognition" +msgstr "Reconnaissance faciale" + +msgid "Perform Recognition" +msgstr "Effectuer la reconnaissance" + +msgid "Brush size" +msgstr "Taille du pinceau" + +msgid "Brush shape" +msgstr "Forme du pinceau" + +msgid "Enforce seam" +msgstr "Forcer la couture" + +msgid "Block seam" +msgstr "Bloquer la couture" + +msgid "Seam painting" +msgstr "Peinture des coutures" + +msgid "Remove selection" +msgstr "Supprimer la sélection" + +msgid "Entering Seam painting" +msgstr "Entrée dans Peinture de Couture" + +msgid "Leaving Seam painting" +msgstr "Quitter Peinture de Couture" + +msgid "Paint-on seam editing" +msgstr "Modification des coutures peintes" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Police" + +msgid "Thickness" +msgstr "Épaisseur" + +msgid "Text Gap" +msgstr "Espacement du texte" + +msgid "Angle" +msgstr "Angle" + +msgid "" +"Embeded\n" +"depth" +msgstr "Profondeur intégrée" + +msgid "Input text" +msgstr "Texte entré" + +msgid "Surface" +msgstr "Surface" + +msgid "Horizontal text" +msgstr "Texte horizontal" + +msgid "Shift + Mouse move up or down" +msgstr "Maj + souris vers le haut ou vers le bas" + +msgid "Rotate text" +msgstr "Faire pivoter le texte" + +msgid "Text shape" +msgstr "Forme du texte" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Rotation du texte" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Déplacement du texte" + +msgid "Set Mirror" +msgstr "Définir la symétrie" + +msgid "Embossed text" +msgstr "Texte en relief" + +msgid "Enter emboss gizmo" +msgstr "Entrer dans l’outil d’embossage" + +msgid "Leave emboss gizmo" +msgstr "Quitter l’outil d’embossage" + +msgid "Embossing actions" +msgstr "Actions d’embossage" + +msgid "Emboss" +msgstr "Embosser" + +msgid "NORMAL" +msgstr "NORMAL" + +msgid "SMALL" +msgstr "PETIT" + +msgid "ITALIC" +msgstr "ITALIQUE" + +msgid "SWISS" +msgstr "SUISSE" + +msgid "MODERN" +msgstr "MODERNE" + +msgid "First font" +msgstr "Première police de caractères" + +msgid "Default font" +msgstr "Police de caractères par défaut" + +msgid "Advanced" +msgstr "Avancé" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"Le texte ne peut pas être écrit avec la police sélectionnée. Veuillez " +"essayer de choisir une autre police." + +msgid "Embossed text cannot contain only white spaces." +msgstr "Le texte en relief ne peut pas contenir uniquement des espaces blancs." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" +"Le texte contient un caractère glyphe (représenté par ‘?’) inconnu de la " +"police." + +msgid "Text input doesn't show font skew." +msgstr "La saisie de texte n’affiche pas l’inclinaison de la police." + +msgid "Text input doesn't show font boldness." +msgstr "La saisie de texte n’affiche pas les caractères en gras." + +msgid "Text input doesn't show gap between lines." +msgstr "La saisie de texte n’affiche pas d’espace entre les lignes." + +msgid "Too tall, diminished font height inside text input." +msgstr "Hauteur de police trop élevée, diminuée dans la saisie de texte." + +msgid "Too small, enlarged font height inside text input." +msgstr "" +"La hauteur de la police est trop petite et trop grande dans la saisie de " +"texte." + +msgid "Text doesn't show current horizontal alignment." +msgstr "Le texte n’affiche pas l’alignement horizontal actuel." + +msgid "Revert font changes." +msgstr "Annuler les modifications apportées à la police." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "La police « %1% » ne peut pas être sélectionnée." + +msgid "Operation" +msgstr "Opération" + +msgid "Join" +msgstr "Joindre" + +msgid "Click to change text into object part." +msgstr "Cliquez pour transformer le texte en partie d’objet." + +msgid "You can't change a type of the last solid part of the object." +msgstr "" +"Vous ne pouvez pas modifier le type de la dernière partie pleine de l’objet." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Couper" + +msgid "Click to change part type into negative volume." +msgstr "Cliquez pour changer le type de pièce en volume négatif." + +msgid "Modifier" +msgstr "Modificateur" + +msgid "Click to change part type into modifier." +msgstr "Cliquez pour changer le type de pièce en modificateur." + +msgid "Change Text Type" +msgstr "Changer le type de texte" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Renommer le style (%1%) pour le texte embossé" + +msgid "Name can't be empty." +msgstr "Le nom ne peut pas être vide." + +msgid "Name has to be unique." +msgstr "Le nom doit être unique." + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "Renommer le style" + +msgid "Rename current style." +msgstr "Renommer le style actuel." + +msgid "Can't rename temporary style." +msgstr "Impossible de renommer un style provisoire." + +msgid "First Add style to list." +msgstr "Ajoutez d’abord le style à la liste." + +#, boost-format +msgid "Save %1% style" +msgstr "Enregistrer le style %1%." + +msgid "No changes to save." +msgstr "Aucune modification à enregistrer." + +msgid "New name of style" +msgstr "Nouveau nom de style" + +msgid "Save as new style" +msgstr "Enregistrer comme nouveau style" + +msgid "Only valid font can be added to style." +msgstr "Seules les polices valides peuvent être ajoutées au style." + +msgid "Add style to my list." +msgstr "Ajouter le style à ma liste." + +msgid "Save as new style." +msgstr "Enregistrer comme nouveau style." + +msgid "Remove style" +msgstr "Supprimer le style" + +msgid "Can't remove the last existing style." +msgstr "Impossible de supprimer le dernier style existant." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "Êtes-vous sûr de vouloir supprimer définitivement le style « %1% » ?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "Supprimer le style \"%1%\"." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "Impossible de supprimer \"%1%\". Il s'agit du dernier style." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "Impossible de supprimer le style provisoire \"%1%\"." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Style modifié \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "Le style actuel est \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"La modification du style en \"%1%\" annulera la modification du style " +"actuel.\n" +"\n" +"Voulez-vous continuer quand même ?" + +msgid "Not valid style." +msgstr "Style non valide." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "" +"Le style \"%1%\" ne peut pas être utilisé et sera supprimé de la liste." + +msgid "Unset italic" +msgstr "Enlever l’italique" + +msgid "Set italic" +msgstr "Mettre en italique" + +msgid "Unset bold" +msgstr "Enlever le gars" + +msgid "Set bold" +msgstr "Mettre en gras" + +msgid "Revert text size." +msgstr "Rétablir la taille du texte." + +msgid "Revert embossed depth." +msgstr "Rétablir la profondeur de l’embossage." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"Les options avancées ne peuvent pas être modifiées pour la police " +"sélectionnée.\n" +"Sélectionnez une autre police." + +msgid "Revert using of model surface." +msgstr "Rétablir l’utilisation de la surface du modèle." + +msgid "Revert Transformation per glyph." +msgstr "Rétablir la transformation par glyphe." + +msgid "Set global orientation for whole text." +msgstr "Définir l’orientation globale pour l’ensemble du texte." + +msgid "Set position and orientation per glyph." +msgstr "Définir la position et l’orientation par glyphe." + +msgctxt "Alignment" +msgid "Left" +msgstr "Gauche" + +msgctxt "Alignment" +msgid "Center" +msgstr "Centrer" + +msgctxt "Alignment" +msgid "Right" +msgstr "Droite" + +msgctxt "Alignment" +msgid "Top" +msgstr "Au-dessus" + +msgctxt "Alignment" +msgid "Middle" +msgstr "Milieu" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "En-dessous" + +msgid "Revert alignment." +msgstr "Rétablir l’alignement." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "points" + +msgid "Revert gap between characters" +msgstr "Rétablir l’écart entre les caractères" + +msgid "Distance between characters" +msgstr "Distance entre les caractères" + +msgid "Revert gap between lines" +msgstr "Rétablir l’écart entre les caractères" + +msgid "Distance between lines" +msgstr "Distance entre les lignes" + +msgid "Undo boldness" +msgstr "Annuler la mise en gras" + +msgid "Tiny / Wide glyphs" +msgstr "Glyphes minuscules / larges" + +msgid "Undo letter's skew" +msgstr "Annuler l’inclinaison de la lettre" + +msgid "Italic strength ratio" +msgstr "Ratio d’intensité de l’italique" + +msgid "Undo translation" +msgstr "Annuler la traduction" + +msgid "Distance of the center of the text to the model surface." +msgstr "Distance entre le centre du texte et la surface du modèle." + +msgid "Undo rotation" +msgstr "Annuler la rotation" + +msgid "Rotate text Clock-wise." +msgstr "Rotation du texte dans le sens des aiguilles d’une montre." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"Déverrouille la rotation du texte lorsqu’il est déplacé le long de la " +"surface de l’objet." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" +"Verrouille la rotation du texte lorsqu’il est déplacé le long de la surface " +"de l’objet." + +msgid "Select from True Type Collection." +msgstr "Sélectionner dans la collection True Type." + +msgid "Set text to face camera" +msgstr "Mettre le texte en face de la caméra" + +msgid "Orient the text towards the camera." +msgstr "Orienter le texte vers la caméra." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"Impossible de charger exactement la même police (« %1% »). L’application a " +"sélectionné une police similaire (« %2% »). Vous devez spécifier la police " +"pour permettre l’édition du texte." + +msgid "No symbol" +msgstr "Pas de symbole" + +msgid "Loading" +msgstr "Chargement" + +msgid "In queue" +msgstr "Dans la file d’attente" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Hauteur" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Utiliser la surface" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "Par glyphe" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Alignement" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Écart entre les caractères" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Intervalle de ligne" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Épaisseur" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Ratio d’inclinaison" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Depuis la surface" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "Continuer" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Collection" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "Rotation du SVG" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "Déplacement du SVG" + +msgid "Enter SVG gizmo" +msgstr "Ouvrir l’outil SVG" + +msgid "Leave SVG gizmo" +msgstr "Quitter l’outil SVG" + +msgid "SVG actions" +msgstr "Actions SVG" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Opacité (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Dégradé de couleurs (%1%)" + +msgid "Undefined fill type" +msgstr "Type de remplissage non défini" + +msgid "Linear gradient" +msgstr "Dégradé linéaire" + +msgid "Radial gradient" +msgstr "Dégradé radial" + +msgid "Open filled path" +msgstr "Ouvrir un chemin rempli" + +msgid "Undefined stroke type" +msgstr "Type de trait non défini" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" +"Le chemin ne peut pas être consolidé à partir d’une auto-intersection et de " +"points multiples." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"La forme finale contient une auto-intersection ou plusieurs points ayant les " +"mêmes coordonnées." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "La forme est marquée comme invisible (%1%)." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "" +"Le remplissage de la forme (%1%) contient un élément non pris en charge : " +"%2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "" +"Le trait de la forme (%1%) est trop fin (la largeur minimale est de %2% mm)." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "" +"Le trait de la forme (%1%) contient un élément non pris en charge : %2%." + +msgid "Face the camera" +msgstr "Faire face à la caméra" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Nom de fichier inconnu" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "Le chemin d'accès au fichier SVG est \"%1%\"" + +msgid "Reload SVG file from disk." +msgstr "Recharger le fichier SVG à partir du disque." + +msgid "Change file" +msgstr "Changer de fichier" + +msgid "Change to another .svg file" +msgstr "Changer pour un autre fichier .svg" + +msgid "Forget the file path" +msgstr "Oublier le chemin d’accès au fichier" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"Ne PAS enregistrer le chemin d'accès local au fichier 3MF.\n" +"Désactive également l'option \"recharger à partir du disque\"." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Intégrer" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Intégrer dans le modèle en tant que partie non modifiable" + +msgid "Save as" +msgstr "Enregistrer sous" + +msgid "Save SVG file" +msgstr "Enregistrer le fichier SVG" + +msgid "Save as '.svg' file" +msgstr "Enregistrer en tant que fichier ‘.svg’" + +msgid "Size in emboss direction." +msgstr "Taille dans le sens de l’embossage." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "" +"L’échelle modifie également la quantité d’échantillons de la courbe (%1%)." + +msgid "Width of SVG." +msgstr "Largeur du SVG." + +msgid "Height of SVG." +msgstr "Hauteur du SVG." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "Verrouiller/déverrouiller le ratio d’aspect du SVG." + +msgid "Reset scale" +msgstr "Remise à zéro de l’échelle" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "Distance entre le centre du SVG et la surface du modèle." + +msgid "Reset distance" +msgstr "Réinitialiser la distance" + +msgid "Reset rotation" +msgstr "Réinitialiser la rotation" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" +"Verrouillage/déverrouillage de l’angle de rotation lorsque l’on tire au-" +"dessus de la surface." + +msgid "Mirror vertically" +msgstr "Symétrie verticale" + +msgid "Mirror horizontally" +msgstr "Symétrie horizontale" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "Changer le type de SVG" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Symétrie" + +msgid "Choose SVG file for emboss:" +msgstr "Choisir le fichier SVG pour l’embossage :" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "Le fichier n’existe pas (%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "" +"Le nom de fichier doit se terminer par \".svg\" mais vous avez sélectionné " +"%1%." + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "L’analyseur Nano SVG ne peut pas charger le fichier (%1%)." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "Le fichier SVG ne contient PAS de chemin unique à embosser (%1%)." + +msgid "Vertex" +msgstr "Sommet" + +msgid "Edge" +msgstr "Arête" + +msgid "Plane" +msgstr "Plan" + +msgid "Point on edge" +msgstr "Pointer sur l’arête" + +msgid "Point on circle" +msgstr "Pointer sur le cercle" + +msgid "Point on plane" +msgstr "Pointer sur le plan" + +msgid "Center of edge" +msgstr "Centrer sur l’arête " + +msgid "Center of circle" +msgstr "Centrer du cercle" + +msgid "ShiftLeft mouse button" +msgstr "ShiftLeft mouse button" + +msgid "Select feature" +msgstr "Sélectionner une fonctionnalité" + +msgid "Select point" +msgstr "Sélectionner un point" + +msgid "Delete" +msgstr "Supprimer" + +msgid "Restart selection" +msgstr "Recommencer la sélection" + +msgid "Esc" +msgstr "Échap" + +msgid "Unselect" +msgstr "Désélectionner" + +msgid "Measure" +msgstr "Mesurer" + +msgid "Edit to scale" +msgstr "Modifier à l’échelle" + +msgctxt "Verb" +msgid "Scale" +msgstr "Redimensionner" + +msgid "None" +msgstr "Aucun" + +msgid "Diameter" +msgstr "Diamètre" + +msgid "Length" +msgstr "Longueur" + +msgid "Selection" +msgstr "Sélection" + +msgid "Copy to clipboard" +msgstr "Copier dans le presse-papier" + +msgid "Perpendicular distance" +msgstr "Distance perpendiculaire" + +msgid "Distance" +msgstr "Distance" + +msgid "Direct distance" +msgstr "Distance directe" + +msgid "Distance XYZ" +msgstr "Distance XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Remarque" + +msgid "Undefined" +msgstr "Non défini" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% a été remplacé par %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" +"La configuration peut être générée par une version plus récente de Orca " +"Slicer." + +msgid "Some values have been replaced. Please check them:" +msgstr "Certaines valeurs ont été remplacées. Veuillez les vérifier :" + +msgid "Process" +msgstr "Traitement" + +msgid "Filament" +msgstr "Filament" + +msgid "Machine" +msgstr "Machine" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"Le package de configuration a été chargé, mais certaines valeurs n'ont pas " +"été reconnues." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Le fichier de configuration \"%1%\" a été chargé, mais certaines valeurs " +"n'ont pas été reconnues." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca va s'arrêter à cause d'un manque de mémoire. Il peut s'agir d'un " +"bogue. Il sera apprécié de signaler le problème à notre équipe." + +msgid "Fatal error" +msgstr "Erreur fatale" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca va s'arrêter à cause d'une erreur de localisation. Il sera " +"apprécié si vous signalez le scénario spécifique dans lequel ce problème " +"s'est produit." + +msgid "Critical error" +msgstr "Erreur critique" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca a reçu une exception non gérée : %1%" + +msgid "Untitled" +msgstr "Sans titre" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Téléchargement du plug-in Bambu Network" + +msgid "Login information expired. Please login again." +msgstr "Les informations de connexion ont expiré. Veuillez vous reconnecter." + +msgid "Incorrect password" +msgstr "Mot de passe incorrect" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "La connexion à %s a échoué ! [SN : %s, code = %s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca nécessite Microsoft WebView2 Runtime pour utiliser certaines " +"fonctions.\n" +"Cliquez sur Oui pour l'installer maintenant." + +msgid "WebView2 Runtime" +msgstr "WebView2 Runtime" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Voulez-vous continuer ?" + +msgid "Remember my choice" +msgstr "Se souvenir de mon choix" + +msgid "Loading configuration" +msgstr "Chargement de la configuration" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "" +"Cliquez pour télécharger la nouvelle version dans le navigateur par défaut : " +"%s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca a besoin d’être mis à jour" + +msgid "This is the newest version." +msgstr "Il s'agit de la version la plus récente." + +msgid "Info" +msgstr "Info" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"Le fichier de configuration d'Snapmaker Orca peut être corrompu et ne peut pas " +"être analysé.\n" +"Snapmaker Orca a tenté de recréer le fichier de configuration.\n" +"Veuillez noter que les paramètres de l'application seront perdus, mais que " +"les profils d'imprimante ne seront pas affectés." + +msgid "Rebuild" +msgstr "Reconstruire" + +msgid "Loading current presets" +msgstr "Chargement des préréglages actuels" + +msgid "Loading a mode view" +msgstr "Chargement d'un mode de vue" + +msgid "Choose one file (3mf):" +msgstr "Choisissez un fichier (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "" +"Choisissez un ou plusieurs fichiers (3mf/step/stl/svg/obj/amf/usd*/abc/ply) :" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Choisissez un ou plusieurs fichiers (3mf/step/stl/svg/obj/amf) :" + +msgid "Choose ZIP file" +msgstr "Choisissez un fichier ZIP" + +msgid "Choose one file (gcode/3mf):" +msgstr "Choisissez un fichier (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "Certains préréglages sont modifiés." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Vous pouvez conserver les préréglages modifiés dans le nouveau projet, " +"annuler ou enregistrer les modifications en tant que nouveaux préréglages." + +msgid "User logged out" +msgstr "Utilisateur déconnecté" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" +"l’ouverture ou la création d'un fichier de projet n'est pas autorisée " +"pendant le processus de découpe !" + +msgid "Open Project" +msgstr "Ouvrir un projet" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"La version de Snapmaker Orca est trop ancienne et doit être mise à jour vers la " +"dernière version afin qu’il puisse être utilisé normalement" + +msgid "Privacy Policy Update" +msgstr "Mise à jour de la politique de confidentialité" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"Le nombre de préréglages utilisateur mis en cache dans le nuage a dépassé la " +"limite supérieure. Les préréglages utilisateur \n" +"nouvellement créés ne peuvent être utilisés que localement." + +msgid "Sync user presets" +msgstr "Synchroniser les réglages prédéfinis de l’utilisateur" + +msgid "Loading user preset" +msgstr "Chargement du préréglage utilisateur" + +msgid "Switching application language" +msgstr "Changer la langue de l'application" + +msgid "Select the language" +msgstr "Sélectionner la langue" + +msgid "Language" +msgstr "Langue" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Les téléversements sont toujours en cours" + +msgid "Stop them and continue anyway?" +msgstr "Les arrêter et continuer quand même ?" + +msgid "Ongoing uploads" +msgstr "Téléversements en cours" + +msgid "Select a G-code file:" +msgstr "Sélectionnez un fichier G-code :" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"Impossible de lancer le téléchargement de l’URL. Le dossier de destination " +"n’est pas défini. Veuillez choisir le dossier de destination dans " +"l’assistant de configuration." + +msgid "Import File" +msgstr "Importer un Fichier" + +msgid "Choose files" +msgstr "Choisir des fichiers" + +msgid "New Folder" +msgstr "Nouveau Dossier" + +msgid "Open" +msgstr "Ouvrir" + +msgid "Rename" +msgstr "Renommer" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "L'initialisation de l'interface de Snapmaker Orca a échoué" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Erreur fatale, exception interceptée : %1%" + +msgid "Quality" +msgstr "Qualité" + +msgid "Shell" +msgstr "Coque" + +msgid "Infill" +msgstr "Remplissage" + +msgid "Support" +msgstr "Supports" + +msgid "Flush options" +msgstr "Options de purge" + +msgid "Speed" +msgstr "Vitesse" + +msgid "Strength" +msgstr "Solidité" + +msgid "Top Solid Layers" +msgstr "Couches pleines supérieures" + +msgid "Top Minimum Shell Thickness" +msgstr "Épaisseur minimale de la coque supérieure" + +msgid "Bottom Solid Layers" +msgstr "Couches pleines inférieures" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Épaisseur minimale de la coque inférieure" + +msgid "Ironing" +msgstr "Lissage" + +msgid "Fuzzy Skin" +msgstr "Surface Irrégulière" + +msgid "Extruders" +msgstr "Extrudeurs" + +msgid "Extrusion Width" +msgstr "Largeur d'Extrusion" + +msgid "Wipe options" +msgstr "Options d’essuyage" + +msgid "Bed adhesion" +msgstr "Adhérence au plateau" + +msgid "Add part" +msgstr "Ajouter une pièce" + +msgid "Add negative part" +msgstr "Ajouter une partie négative" + +msgid "Add modifier" +msgstr "Ajouter un modificateur" + +msgid "Add support blocker" +msgstr "Ajouter un bloqueur de support" + +msgid "Add support enforcer" +msgstr "Ajouter un générateur de supports" + +msgid "Add text" +msgstr "Ajouter un texte" + +msgid "Add negative text" +msgstr "Ajouter un texte négatif" + +msgid "Add text modifier" +msgstr "Ajouter un modificateur de texte" + +msgid "Add SVG part" +msgstr "Ajouter une partie SVG" + +msgid "Add negative SVG" +msgstr "Ajouter un SVG négatif" + +msgid "Add SVG modifier" +msgstr "Ajouter un modificateur SVG" + +msgid "Select settings" +msgstr "Sélectionnez les paramètres" + +msgid "Hide" +msgstr "Masquer" + +msgid "Show" +msgstr "Afficher" + +msgid "Del" +msgstr "Eff" + +msgid "Delete the selected object" +msgstr "Supprimer l'objet sélectionné" + +msgid "Load..." +msgstr "Charger…" + +msgid "Cube" +msgstr "Cube" + +msgid "Cylinder" +msgstr "Cylindre" + +msgid "Cone" +msgstr "Cône" + +msgid "Disc" +msgstr "Disque" + +msgid "Torus" +msgstr "Tore" + +msgid "Orca Cube" +msgstr "Cube Orca" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Test Autodesk FDM" + +msgid "Voron Cube" +msgstr "Cube Voron" + +msgid "Stanford Bunny" +msgstr "Lapin de Stanford" + +msgid "Orca String Hell" +msgstr "Orca String Hell" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Ce modèle présente un texte en relief sur la surface supérieure. Pour " +"obtenir des résultats optimaux, il est conseillé de régler le \"Seuil une " +"paroi(min_width_top_surface)\" sur 0 pour que l'option \"Une seule paroi sur " +"les surfaces supérieures\" fonctionne au mieux.\n" +"Oui - Modifier ces paramètres automatiquement\n" +"Non - Ne pas modifier ces paramètres pour moi" + +msgid "Text" +msgstr "Texte" + +msgid "Height range Modifier" +msgstr "Modificateur de plage de hauteur" + +msgid "Add settings" +msgstr "Ajouter des réglages" + +msgid "Change type" +msgstr "Changer le type" + +msgid "Set as an individual object" +msgstr "Définir comme un objet individuel" + +msgid "Set as individual objects" +msgstr "Définir en tant qu'objets individuels" + +msgid "Fill bed with copies" +msgstr "Remplir le plateau de copies" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "" +"Remplissez la zone restante du plateau avec des copies de l'objet sélectionné" + +msgid "Printable" +msgstr "Imprimable" + +msgid "Fix model" +msgstr "Réparer le modèle" + +msgid "Export as one STL" +msgstr "Exporter en un seul STL" + +msgid "Export as STLs" +msgstr "Exporter en plusieurs STL" + +msgid "Reload from disk" +msgstr "Recharger à partir du disque" + +msgid "Reload the selected parts from disk" +msgstr "Recharger les pièces sélectionnées à partir du disque" + +msgid "Replace with STL" +msgstr "Remplacer par le STL" + +msgid "Replace the selected part with new STL" +msgstr "Remplacer la pièce sélectionnée par un nouveau STL" + +msgid "Change filament" +msgstr "Changer de filament" + +msgid "Set filament for selected items" +msgstr "Définir le filament pour les éléments sélectionnés" + +msgid "Default" +msgstr "Défaut" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filament %d" + +msgid "current" +msgstr "courant" + +msgid "Scale to build volume" +msgstr "Adapter la taille au volume d’impression" + +msgid "Scale an object to fit the build volume" +msgstr "Redimensionner un objet pour l'adapter au volume d’impression" + +msgid "Flush Options" +msgstr "Options de purge" + +msgid "Flush into objects' infill" +msgstr "Purger dans le remplissage d'objet" + +msgid "Flush into this object" +msgstr "Purger dans cet objet" + +msgid "Flush into objects' support" +msgstr "Purger dans les supports de l'objet" + +msgid "Edit in Parameter Table" +msgstr "Modifier dans la Table des Paramètres" + +msgid "Convert from inch" +msgstr "Convertir en pouce" + +msgid "Restore to inch" +msgstr "Restaurer en pouces" + +msgid "Convert from meter" +msgstr "Convertir en mètre" + +msgid "Restore to meter" +msgstr "Restaurer au compteur" + +msgid "Assemble" +msgstr "Assembler" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Assembler les objets sélectionnés à un objet en plusieurs parties" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Assembler les objets sélectionnés à un objet en une seule pièce" + +msgid "Mesh boolean" +msgstr "Opérations booléennes" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "" +"Opérations booléennes de maillage, incluant la fusion et la soustraction" + +msgid "Along X axis" +msgstr "Le long de l'axe X" + +msgid "Mirror along the X axis" +msgstr "Symétrie le long de l'axe X" + +msgid "Along Y axis" +msgstr "Le long de l'axe Y" + +msgid "Mirror along the Y axis" +msgstr "Symétrie le long de l'axe Y" + +msgid "Along Z axis" +msgstr "Le long de l'axe Z" + +msgid "Mirror along the Z axis" +msgstr "Symétrie le long de l'axe Z" + +msgid "Mirror object" +msgstr "Symétriser l’objet" + +msgid "Edit text" +msgstr "Modifier le texte" + +msgid "Ability to change text, font, size, ..." +msgstr "Possibilité de modifier le texte, la police, la taille, …" + +msgid "Edit SVG" +msgstr "Modifier SVG" + +msgid "Change SVG source file, projection, size, ..." +msgstr "Modifier le fichier source SVG, la projection, la taille, …" + +msgid "Invalidate cut info" +msgstr "Invalider les informations de découpe" + +msgid "Add Primitive" +msgstr "Ajouter une primitive" + +msgid "Add Handy models" +msgstr "Ajouter des modèles pratiques" + +msgid "Add Models" +msgstr "Ajouter des modèles" + +msgid "Show Labels" +msgstr "Afficher les étiquettes" + +msgid "To objects" +msgstr "Vers les objets" + +msgid "Split the selected object into multiple objects" +msgstr "Diviser l'objet sélectionné en plusieurs objets" + +msgid "To parts" +msgstr "Vers les parties" + +msgid "Split the selected object into multiple parts" +msgstr "Diviser l'objet sélectionné en plusieurs parties" + +msgid "Split" +msgstr "Scinder" + +msgid "Split the selected object" +msgstr "Scinder l'objet sélectionné" + +msgid "Auto orientation" +msgstr "Orientation automatique" + +msgid "Auto orient the object to improve print quality." +msgstr "" +"Orientez automatiquement l'objet pour améliorer la qualité d'impression." + +msgid "Select All" +msgstr "Tout sélectionner" + +msgid "select all objects on current plate" +msgstr "sélectionner tous les objets sur la plaque actuelle" + +msgid "Delete All" +msgstr "Tout Supprimer" + +msgid "delete all objects on current plate" +msgstr "supprimer tous les objets sur la plaque actuelle" + +msgid "Arrange" +msgstr "Organiser" + +msgid "arrange current plate" +msgstr "organiser la plaque actuelle" + +msgid "Reload All" +msgstr "Tout recharger" + +msgid "reload all from disk" +msgstr "tout recharger à partir du disque" + +msgid "Auto Rotate" +msgstr "Rotation automatique" + +msgid "auto rotate current plate" +msgstr "rotation automatique de la plaque actuelle" + +msgid "Delete Plate" +msgstr "Supprimer le plateau" + +msgid "Remove the selected plate" +msgstr "Supprimer la plaque sélectionnée" + +msgid "Clone" +msgstr "Cloner" + +msgid "Simplify Model" +msgstr "Simplifier le Modèle" + +msgid "Center" +msgstr "Centrer" + +msgid "Edit Process Settings" +msgstr "Modifier les paramètres du traitement" + +msgid "Edit print parameters for a single object" +msgstr "Modifier les paramètres d'impression d'un seul objet" + +msgid "Change Filament" +msgstr "Changer de filament" + +msgid "Set Filament for selected items" +msgstr "Définir le filament pour les éléments sélectionnés" + +msgid "Unlock" +msgstr "Déverrouiller" + +msgid "Lock" +msgstr "Verrouiller" + +msgid "Edit Plate Name" +msgstr "Modifier le nom du plateau" + +msgid "Name" +msgstr "Nom" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d erreur réparée" +msgstr[1] "%1$d erreur réparée" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Erreur : %1$d arête non multiple." +msgstr[1] "Erreur : %1$d arête non multiple." + +msgid "Remaining errors" +msgstr "Erreurs restantes" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d arête non multiple" +msgstr[1] "%1$d arête non multiple" + +msgid "Right click the icon to fix model object" +msgstr "Cliquez avec le bouton droit sur l'icône pour fixer l'objet modèle" + +msgid "Right button click the icon to drop the object settings" +msgstr "" +"Cliquez avec le bouton droit sur l'icône pour supprimer les paramètres de " +"l'objet" + +msgid "Click the icon to reset all settings of the object" +msgstr "Cliquez sur l'icône pour réinitialiser tous les paramètres de l'objet" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Cliquez avec le bouton droit sur l'icône pour déposer la propriété " +"imprimable de l'objet" + +msgid "Click the icon to toggle printable property of the object" +msgstr "Cliquez sur l'icône pour basculer la propriété imprimable de l'objet" + +msgid "Click the icon to edit support painting of the object" +msgstr "Cliquez sur l'icône pour modifier la peinture de support de l'objet" + +msgid "Click the icon to edit color painting of the object" +msgstr "Cliquez sur l'icône pour modifier la couleur de peinture de l'objet" + +msgid "Click the icon to shift this object to the bed" +msgstr "Cliquez sur l'icône pour déplacer cet objet vers le plateau" + +msgid "Loading file" +msgstr "Chargement du fichier" + +msgid "Error!" +msgstr "Erreur!" + +msgid "Failed to get the model data in the current file." +msgstr "Impossible d’obtenir les données du modèle dans le fichier actuel." + +msgid "Generic" +msgstr "Générique" + +msgid "Add Modifier" +msgstr "Ajouter un modificateur" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Basculez vers le mode de réglage par objet pour modifier les paramètres du " +"modificateur." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Passez en mode de réglage \"par objet\" pour modifier les paramètres de " +"traitement des objets sélectionnés." + +msgid "Delete connector from object which is a part of cut" +msgstr "Supprimer le connecteur de l'objet qui fait partie de la découpe" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Supprimer la partie pleine de l'objet qui est une partie découpée" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Supprimer le volume négatif de l'objet qui fait partie de la découpe" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Pour enregistrer la correspondance coupée, vous pouvez supprimer tous les " +"connecteurs de tous les objets associés." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"Cette action rompra une correspondance coupée.\n" +"Après cela, la cohérence du modèle ne peut être garantie.\n" +"\n" +"Pour manipuler des pièces pleines ou des volumes négatifs, vous devez " +"d'abord invalider les informations de coupe." + +msgid "Delete all connectors" +msgstr "Supprimer tous les connecteurs" + +msgid "Deleting the last solid part is not allowed." +msgstr "La suppression de la dernière partie pleine n'est pas autorisée." + +msgid "The target object contains only one part and can not be splited." +msgstr "" +"L'objet cible ne contient qu'une seule partie et ne peut pas être divisé." + +msgid "Assembly" +msgstr "Assemblé" + +msgid "Cut Connectors information" +msgstr "Informations sur les connecteurs de coupe" + +msgid "Object manipulation" +msgstr "Manipulation d'objets" + +msgid "Group manipulation" +msgstr "Manipulation de groupe" + +msgid "Object Settings to modify" +msgstr "Paramètres de l'objet à modifier" + +msgid "Part Settings to modify" +msgstr "Paramètres de la pièce à modifier" + +msgid "Layer range Settings to modify" +msgstr "Paramètres de plage de couches à modifier" + +msgid "Part manipulation" +msgstr "Manipulation de pièces" + +msgid "Instance manipulation" +msgstr "Manipulation d'instances" + +msgid "Height ranges" +msgstr "Plages de hauteur" + +msgid "Settings for height range" +msgstr "Réglages de la plage de hauteur" + +msgid "Layer" +msgstr "Couche" + +msgid "Selection conflicts" +msgstr "Conflits de sélection" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Si le premier élément sélectionné est un objet, le second doit également " +"être un objet." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Si le premier élément sélectionné est une partie, le second doit faire " +"partie du même objet." + +msgid "The type of the last solid object part is not to be changed." +msgstr "" +"Le type de la dernière partie pleine de l'objet ne doit pas être modifié." + +msgid "Negative Part" +msgstr "Partie négative" + +msgid "Support Blocker" +msgstr "Bloqueur de Support" + +msgid "Support Enforcer" +msgstr "Générateur de Support" + +msgid "Type:" +msgstr "Type :" + +msgid "Choose part type" +msgstr "Choisissez le type de pièce" + +msgid "Enter new name" +msgstr "Entrer de nouveaux noms" + +msgid "Renaming" +msgstr "Renommage" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "L'objet modèle suivant a été réparé" +msgstr[1] "L'objet modèle suivant a été réparé" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Échec de la réparation de l'objet modèle suivant" +msgstr[1] "Échec de la réparation des objets de modèle suivants" + +msgid "Repairing was canceled" +msgstr "La réparation a été annulée" + +msgid "Additional process preset" +msgstr "Préréglage de traitement supplémentaire" + +msgid "Remove parameter" +msgstr "Supprimer le paramètre" + +msgid "to" +msgstr "à" + +msgid "Remove height range" +msgstr "Supprimer la plage de hauteur" + +msgid "Add height range" +msgstr "Ajouter une plage de hauteur" + +msgid "Invalid numeric." +msgstr "Chiffre non valide." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"une cellule ne peut être copiée que dans une ou plusieurs cellules de la " +"même colonne" + +msgid "multiple cells copy is not supported" +msgstr "la copie de plusieurs cellules n'est pas prise en charge" + +msgid "Outside" +msgstr "Hors plaque" + +msgid "Layer height" +msgstr "Hauteur de couche" + +msgid "Wall loops" +msgstr "Nombre de parois" + +msgid "Infill density(%)" +msgstr "Densité de remplissage(%)" + +msgid "Auto Brim" +msgstr "Bord automatique" + +msgid "Mouse ear" +msgstr "Sur les angles uniquement" + +msgid "Outer brim only" +msgstr "Bordure extérieure uniquement" + +msgid "Inner brim only" +msgstr "Bordure intérieure uniquement" + +msgid "Outer and inner brim" +msgstr "Bordure extérieure et intérieure" + +msgid "No-brim" +msgstr "Sans bord" + +msgid "Outer wall speed" +msgstr "Vitesse de paroi extérieure" + +msgid "Plate" +msgstr "Plaque" + +msgid "Brim" +msgstr "Bordure" + +msgid "Object/Part Setting" +msgstr "Réglage objet/pièce" + +msgid "Reset parameter" +msgstr "Paramètre de réinitialisation" + +msgid "Multicolor Print" +msgstr "Impression multicolore" + +msgid "Line Type" +msgstr "Type de ligne" + +msgid "More" +msgstr "Plus" + +msgid "Open Preferences." +msgstr "Ouvrir les Préférences." + +msgid "Open next tip." +msgstr "Ouvrir le conseil suivant." + +msgid "Open Documentation in web browser." +msgstr "Ouvrir la documentation dans un navigateur Web." + +msgid "Color" +msgstr "Couleur" + +msgid "Pause" +msgstr "Pause" + +msgid "Template" +msgstr "Modèle" + +msgid "Custom" +msgstr "Personnalisé" + +msgid "Pause:" +msgstr "Pause:" + +msgid "Custom Template:" +msgstr "Modèle personnalisé :" + +msgid "Custom G-code:" +msgstr "G-code personnalisé:" + +msgid "Custom G-code" +msgstr "G-code personnalisé" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Entrez le G-code personnalisé a utiliser sur la couche actuelle :" + +msgid "Jump to Layer" +msgstr "Aller à la couche" + +msgid "Please enter the layer number" +msgstr "Veuillez entrer le numéro de la couche" + +msgid "Add Pause" +msgstr "Ajouter une Pause" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Insérez une commande de pause au début de cette couche." + +msgid "Add Custom G-code" +msgstr "Ajouter un G-code personnalisé" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Insérez un G-code personnalisé au début de cette couche." + +msgid "Add Custom Template" +msgstr "Ajouter un Modèle Personnalisé" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Insérer un G-code personnalisé au début de cette couche." + +msgid "Filament " +msgstr "Filament " + +msgid "Change filament at the beginning of this layer." +msgstr "Changez le filament au début de cette couche." + +msgid "Delete Pause" +msgstr "Supprimer la pause" + +msgid "Delete Custom Template" +msgstr "Supprimer le modèle personnalisé" + +msgid "Edit Custom G-code" +msgstr "Modifier le G-code personnalisé" + +msgid "Delete Custom G-code" +msgstr "Supprimer le G-code personnalisé" + +msgid "Delete Filament Change" +msgstr "Supprimer le changement de filament" + +msgid "No printer" +msgstr "Pas d'imprimante" + +msgid "..." +msgstr "…" + +msgid "Failed to connect to the server" +msgstr "Impossible de se connecter au serveur" + +msgid "Check the status of current system services" +msgstr "Vérifiez l'état des services système actuels" + +msgid "code" +msgstr "code" + +msgid "Failed to connect to cloud service" +msgstr "Impossible de se connecter au service cloud" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "Cliquez sur l'hyperlien ci-dessus pour voir l'état du service cloud" + +msgid "Failed to connect to the printer" +msgstr "Échec de la connexion à l'imprimante" + +msgid "Connection to printer failed" +msgstr "La connexion à l'imprimante a échoué" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Vérifiez la connexion réseau entre l'imprimante et Studio." + +msgid "Connecting..." +msgstr "Connexion…" + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Vide" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Recharge Automatique" + +msgid "AMS not connected" +msgstr "AMS non connecté" + +msgid "Load" +msgstr "Charger" + +msgid "Unload" +msgstr "Décharger" + +msgid "Ext Spool" +msgstr "Bobine Ext" + +msgid "Tips" +msgstr "Astuces" + +msgid "Guide" +msgstr "Guide" + +msgid "Retry" +msgstr "Réessayer" + +msgid "Calibrating AMS..." +msgstr "Étalonnage de l'AMS…" + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"Un problème est survenu lors de la calibration. Cliquez pour voir la " +"solution." + +msgid "Calibrate again" +msgstr "Etalonner de nouveau" + +msgid "Cancel calibration" +msgstr "Annuler la calibration" + +msgid "Idling..." +msgstr "Mise en veille…" + +msgid "Heat the nozzle" +msgstr "Chauffer la buse" + +msgid "Cut filament" +msgstr "Filament coupé" + +msgid "Pull back current filament" +msgstr "Retirer le filament actuel" + +msgid "Push new filament into extruder" +msgstr "Poussez le nouveau filament dans l'extrudeur" + +msgid "Purge old filament" +msgstr "Purger l'ancien filament" + +msgid "Feed Filament" +msgstr "Chargement du filament" + +msgid "Confirm extruded" +msgstr "Confirmation de l'extrusion" + +msgid "Check filament location" +msgstr "Vérification de la position du filament" + +msgid "Grab new filament" +msgstr "Saisir un nouveau filament" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Choisissez un emplacement AMS puis appuyez sur le bouton «  Charger «  ou «  " +"Décharger «  pour charger ou décharger automatiquement les filaments." + +msgid "Edit" +msgstr "Éditer" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Tous les objets sélectionnés sont sur la plaque verrouillée,\n" +"nous ne pouvons pas faire d'auto-arrangement sur ces objets" + +msgid "No arrangable objects are selected." +msgstr "Aucun objet réorganisable n'est sélectionné." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Cette plaque est verrouillée,\n" +"nous ne pouvons pas faire d'auto-arrangement sur cette plaque." + +msgid "Arranging..." +msgstr "Organiser…" + +msgid "Arranging" +msgstr "Agencement" + +msgid "Arranging canceled." +msgstr "Agencement annulé." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"L'arrangement est fait mais il y a des articles non emballés. Réduisez " +"l'espacement et réessayez." + +msgid "Arranging done." +msgstr "Agencement terminé." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Échec de l'arrangement. Trouvé quelques exceptions lors du traitement des " +"géométries d'objets." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"L'agencement a ignoré les objets suivants qui ne peuvent pas tenir dans un " +"seul plateau :\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Tous les objets sélectionnés sont sur la plaque verrouillée,\n" +"on ne peut pas faire d'auto-orientation sur ces objets." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Cette plaque est verrouillée, on ne peut pas faire d'auto-orientation sur " +"cette plaque." + +msgid "Orienting..." +msgstr "Orienter…" + +msgid "Orienting" +msgstr "Orienter" + +msgid "Orienting canceled." +msgstr "Orientation annulée." + +msgid "Filling" +msgstr "Remplissage" + +msgid "Bed filling canceled." +msgstr "Remplissage de plateau annulé." + +msgid "Bed filling done." +msgstr "Remplissage du plateau fait." + +msgid "Searching for optimal orientation" +msgstr "Recherche d'une orientation optimale" + +msgid "Orientation search canceled." +msgstr "Recherche d'orientation annulée." + +msgid "Orientation found." +msgstr "Orientation trouvée." + +msgid "Logging in" +msgstr "Connexion en cours" + +msgid "Login failed" +msgstr "Échec d'identification" + +msgid "Please check the printer network connection." +msgstr "Vérifiez la connexion réseau de l'imprimante." + +msgid "Abnormal print file data. Please slice again." +msgstr "" +"Données de fichier d'impression anormales, veuillez redécouvre le fichier." + +msgid "Task canceled." +msgstr "Tâche annulée." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"Le délai de téléversement de la tâche a expiré. Vérifiez l'état du réseau et " +"réessayez." + +msgid "Cloud service connection failed. Please try again." +msgstr "La connexion au service cloud a échoué. Veuillez réessayer." + +msgid "Print file not found. please slice again." +msgstr "Fichier d'impression introuvable, veuillez le redécouvre." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"Le fichier d'impression dépasse la taille maximale autorisée (1 Go). " +"Veuillez simplifier le modèle puis le redécouvre." + +msgid "Failed to send the print job. Please try again." +msgstr "L'envoi de la tâche d'impression a échoué. Veuillez réessayer." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Échec du téléversement du fichier vers le ftp. Veuillez réessayer." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Vérifiez l'état actuel du serveur Bambu Lab en cliquant sur le lien ci-" +"dessus." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"La taille du fichier d'impression est trop importante. Ajustez la taille du " +"fichier et réessayez." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" +"Fichier d'impression introuvable, redécoupez-le et renvoyez-le pour " +"impression." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Impossible de charger le fichier d'impression via FTP. Vérifiez l'état du " +"réseau et réessayez." + +msgid "Sending print job over LAN" +msgstr "Envoi de la tâche d'impression sur le réseau local" + +msgid "Sending print job through cloud service" +msgstr "Envoi de la tâche d'impression via le service cloud" + +msgid "Print task sending times out." +msgstr "L'envoi de la tâche d'impression est interrompu." + +msgid "Service Unavailable" +msgstr "Service Indisponible" + +msgid "Unknown Error." +msgstr "Erreur inconnue." + +msgid "Sending print configuration" +msgstr "Envoi de la configuration d'impression" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "" +"Envoyé avec succès. Basculement automatique vers la page Appareil dans %ss" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "Envoyée avec succès. Bascule automatique sur la page suivante dans %ss" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "Une carte SD doit être insérée avant d'imprimer via le réseau local." + +msgid "Sending gcode file over LAN" +msgstr "Envoi d'un fichier G-code via le réseau local" + +msgid "Sending gcode file to sdcard" +msgstr "Envoi du fichier G-code sur la carte SD" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Envoyé avec succès. Fermeture de la page actuelle dans %ss" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Une carte SD doit être insérée avant l'envoi à l'imprimante." + +msgid "Importing SLA archive" +msgstr "Importation d'une archive SLA" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"L'archive SLA ne contient aucun préréglage. Veuillez d'abord activer " +"certains préréglages d'imprimante SLA avant d'importer cette archive SLA." + +msgid "Importing canceled." +msgstr "Importation annulée." + +msgid "Importing done." +msgstr "Importation terminée." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"L'archive SLA importée ne contenait aucun préréglage. Les préréglages SLA " +"actuels ont été utilisés comme solution de secours." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "" +"Vous ne pouvez pas charger un projet SLA avec un objet en plusieurs parties " +"sur le plateau" + +msgid "Please check your object list before preset changing." +msgstr "Vérifiez votre liste d'objets avant de modifier le préréglage." + +msgid "Attention!" +msgstr "Attention !" + +msgid "Downloading" +msgstr "Téléchargement" + +msgid "Download failed" +msgstr "Échec du téléchargement" + +msgid "Cancelled" +msgstr "Annulé" + +msgid "Install successfully." +msgstr "Installé avec succès." + +msgid "Installing" +msgstr "Installation" + +msgid "Install failed" +msgstr "Échec de l'installation" + +msgid "Portions copyright" +msgstr "Copyright des sections" + +msgid "Copyright" +msgstr "Droits d'auteur" + +msgid "License" +msgstr "Longueur" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca est sous licence " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero Licence Publique Générale, version 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca is Based on Orca Slicer" +msgid "Libraries" +msgstr "Bibliothèques" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Ce logiciel utilise des composants open source dont les droits d'auteur et " +"autres droits de propriété appartiennent à leurs propriétaires respectifs" + +#, c-format, boost-format +msgid "About %s" +msgstr "À propos de %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca est basé sur BambuStudio, PrusaSlicer, et SuperSlicer." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "Bambu Studio est basé sur PrusaSlicer de PrusaResearch." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer est initialement basé sur Slic3r d'Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r a été créé par Alessandro Ranellucci avec l'aide de nombreux autres " +"contributeurs." + +msgid "Version" +msgstr "Version" + +msgid "AMS Materials Setting" +msgstr "Réglage des matériaux AMS" + +msgid "Confirm" +msgstr "Confirmer" + +msgid "Close" +msgstr "Fermer" + +msgid "Colour" +msgstr "Couleur" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "Température de la buse" + +msgid "max" +msgstr "max" + +msgid "min" +msgstr "min" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "La valeur saisie doit être supérieure à %1% et inférieure à %2%" + +msgid "SN" +msgstr "Numéro de série" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "" +"La définition des informations relatives aux emplacements AMS pendant " +"l'impression n'est pas prise en charge" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Facteurs de calibration dynamique du débit" + +msgid "PA Profile" +msgstr "Profil PA" + +msgid "Factor K" +msgstr "Facteur K" + +msgid "Factor N" +msgstr "Facteur N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "" +"Le réglage des informations relatives à l'emplacement virtuel pendant " +"l'impression n'est pas pris en charge" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Êtes-vous sûr de vouloir effacer les informations du filament ?" + +msgid "You need to select the material type and color first." +msgstr "Vous devez d'abord sélectionner le type de matériau et sa couleur." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "Veuillez saisir une valeur valide (K entre %.1f~%.1f)" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" +"Veuillez saisir une valeur valide (K entre %.1f~%.1f, N entre %.1f~%.1f)" + +msgid "Other Color" +msgstr "Autre couleur" + +msgid "Custom Color" +msgstr "Couleur perso" + +msgid "Dynamic flow calibration" +msgstr "Calibrage dynamique du débit" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"La température de la buse et la vitesse volumétrique maximale affecteront " +"les résultats de la calibration. Veuillez saisir les mêmes valeurs que lors " +"de l'impression réelle. Ils peuvent être remplis automatiquement en " +"sélectionnant un préréglage de filament." + +msgid "Nozzle Diameter" +msgstr "Diamètre de la Buse" + +msgid "Bed Type" +msgstr "Type de plaque" + +msgid "Nozzle temperature" +msgstr "Température de la buse" + +msgid "Bed Temperature" +msgstr "Température du plateau" + +msgid "Max volumetric speed" +msgstr "Vitesse volumétrique maximale" + +msgid "℃" +msgstr "℃" + +msgid "Bed temperature" +msgstr "Température du plateau" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Démarrer" + +msgid "Next" +msgstr "Suivant" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Calibrage terminé. Veuillez trouver la ligne d'extrusion la plus uniforme " +"sur votre plateau comme dans l'image ci-dessous, et entrez la valeur sur son " +"côté gauche dans le champ de saisie du facteur K." + +msgid "Save" +msgstr "Enregistrer" + +msgid "Last Step" +msgstr "Retour" + +msgid "Example" +msgstr "Exemple" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Calibration… %d%%" + +msgid "Calibration completed" +msgstr "Calibration terminé" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s ne prend pas en charge %s" + +msgid "Dynamic flow Calibration" +msgstr "Calibrage dynamique du débit" + +msgid "Step" +msgstr "Étape" + +msgid "AMS Slots" +msgstr "Emplacements AMS" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Remarque : seuls les emplacements AMS chargés avec le même type de matériau " +"peuvent être sélectionnés." + +msgid "Enable AMS" +msgstr "Activer l'AMS" + +msgid "Print with filaments in the AMS" +msgstr "Imprimer avec du filament de l'AMS" + +msgid "Disable AMS" +msgstr "Désactiver l'AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Impression avec du filament de la bobine externe" + +msgid "Current Cabin humidity" +msgstr "Humidité dans le caisson" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Veuillez changer le déshydratant lorsqu’il est trop humide. L’indicateur " +"peut ne pas s’afficher correctement dans les cas suivants : lorsque le " +"couvercle est ouvert ou que le sachet de déshydratant est changé. Il faut " +"des heures pour absorber l’humidité, les basses températures ralentissent " +"également le processus." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Configurez l'emplacement AMS qui doit être utilisé pour un filament utilisé " +"dans la tâche d'impression" + +msgid "Filament used in this print job" +msgstr "Filament utilisé dans ce travail d'impression" + +msgid "AMS slot used for this filament" +msgstr "Emplacement AMS utilisé pour ce filament" + +msgid "Click to select AMS slot manually" +msgstr "Cliquez pour sélectionner manuellement l'emplacement AMS" + +msgid "Do not Enable AMS" +msgstr "Ne pas activer l'AMS" + +msgid "Print using materials mounted on the back of the case" +msgstr "Imprimez en utilisant le filament de la bobine externe" + +msgid "Print with filaments in ams" +msgstr "Imprimer avec du filament de l'AMS" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Impression avec du filament de la bobine externe" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Lorsque le filament actuel est épuisé, l'imprimante\n" +"continue d'imprimer dans l'ordre suivant." + +msgid "Group" +msgstr "Groupe" + +msgid "The printer does not currently support auto refill." +msgstr "" +"L’imprimante ne prend actuellement pas en charge la recharge automatique." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"La sauvegarde du filament AMS n'est pas activée, veuillez l'activer dans les " +"paramètres AMS." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"S’il y a deux filaments identiques dans AMS, la prise en\n" +"charge de la recharge automatique de filaments sera activée.\n" +"\n" +"La prise en charge de la recharge automatique de filaments\n" +"n'est possible qu'avec la même marque, le même type de\n" +"matériau et la même couleur." + +msgid "DRY" +msgstr "SEC" + +msgid "WET" +msgstr "HUMIDE" + +msgid "AMS Settings" +msgstr "Paramètres AMS" + +msgid "Insertion update" +msgstr "Insertion de la mise à jour" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"L'AMS lit automatiquement les informations relatives au filament lors de " +"l'insertion d'une nouvelle bobine de filament Bambu Lab. Cela prend environ " +"20 secondes." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Remarque : si un nouveau filament est inséré pendant l’impression, l’AMS ne " +"lira pas automatiquement les informations jusqu’à ce que l’impression soit " +"terminée." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Lors de l'insertion d'un nouveau filament, l'AMS ne lit pas automatiquement " +"ses informations. Elles sont laissées vides pour que vous puissiez les " +"saisir manuellement." + +msgid "Power on update" +msgstr "Mise à jour de la mise sous tension" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"Au démarrage, l'AMS lit automatiquement les informations relatives au " +"filament inséré. Cela prend environ 1 minute et ce processus fait tourner " +"les bobines de filament." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"L'AMS ne lira pas automatiquement les informations du filament inséré " +"pendant le démarrage et continuera à utiliser les informations enregistrées " +"avant le dernier arrêt." + +msgid "Update remaining capacity" +msgstr "Mettre à jour la capacité restante" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"L'AMS estimera la capacité restante du filament Bambu après la mise à jour " +"des infos du filament. Pendant l'impression, la capacité restante sera " +"automatiquement mise à jour." + +msgid "AMS filament backup" +msgstr "Filament de secours AMS" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"L'AMS passera automatiquement à une autre bobine avec les mêmes propriétés " +"de filament lorsque la bobine actuelle est épuisé" + +msgid "Air Printing Detection" +msgstr "Détection de l’impression dans l’air" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Détecte le colmatage et le grignotage du filament, interrompant " +"immédiatement l’impression pour économiser du temps et du filament." + +msgid "File" +msgstr "Fichier" + +msgid "Calibration" +msgstr "Calibration" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Échec du téléchargement du plug-in. Veuillez vérifier les paramètres de " +"votre pare-feu et votre logiciel VPN puis réessayer." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Échec de l'installation du plug-in. Veuillez vérifier s'il est bloqué ou " +"s'il a été supprimé par un logiciel anti-virus." + +msgid "click here to see more info" +msgstr "cliquez ici pour voir plus d'informations" + +msgid "Please home all axes (click " +msgstr "Veuillez mettre à 0 les axes (cliquer " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") pour localiser la position de la tête. Cela éviter de dépasser la limite " +"imprimable et de provoquer une usure de l'équipement." + +msgid "Go Home" +msgstr "Retour 0" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Une erreur s'est produite. Peut-être que la mémoire du système n'est pas " +"suffisante ou c'est un bug du programme" + +msgid "Please save project and restart the program. " +msgstr "Veuillez enregistrer le projet et redémarrer le programme. " + +msgid "Processing G-Code from Previous file..." +msgstr "Traitement du G-Code du fichier précédent…" + +msgid "Slicing complete" +msgstr "Découpe terminée" + +msgid "Access violation" +msgstr "Violation d'accès" + +msgid "Illegal instruction" +msgstr "Instruction illégale" + +msgid "Divide by zero" +msgstr "Diviser par zéro" + +msgid "Overflow" +msgstr "Débordement" + +msgid "Underflow" +msgstr "Soupassement" + +msgid "Floating reserved operand" +msgstr "Opérande réservée flottante" + +msgid "Stack overflow" +msgstr "Débordement de pile" + +msgid "Running post-processing scripts" +msgstr "Exécution de scripts de post-traitement" + +msgid "Successfully executed post-processing script" +msgstr "Le script de post-traitement a été exécuté avec succès" + +msgid "Unknown error occured during exporting G-code." +msgstr "Une erreur inconnue s’est produite lors de l’exportation du G-code." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"La copie du G-code temporaire vers le G-code de sortie a échoué. La carte SD " +"est peut-être bloquée en écriture ?\n" +"Message d’erreur : %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"La copie du G-code temporaire vers le G-code de sortie a échoué. Il se peut " +"qu’il y ait un problème avec le dispositif cible, veuillez essayer " +"d’exporter à nouveau ou d’utiliser un autre périphérique. Le G-code de " +"sortie corrompu se trouve dans %1%.tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"Le renommage du G-code après la copie dans le dossier de destination " +"sélectionné a échoué. Le chemin actuel est %1%.tmp. Veuillez réessayer " +"l’exportation." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"La copie du G-code temporaire est terminée mais le code original à %1% n’a " +"pas pu être ouvert pendant la vérification de la copie. Le G-code de sortie " +"se trouve dans %2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"La copie du G-code temporaire est terminée mais le code exporté n’a pas pu " +"être ouvert lors du contrôle de la copie. Le G-code de sortie se trouve dans " +"%1%.tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "Fichier G-code exporté vers %1%." + +msgid "Unknown error when export G-code." +msgstr "Erreur inconnue lors de l'exportation du G-code." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Échec de l'enregistrement du fichier gcode. Message d'erreur : %1%. Fichier " +"source %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "La copie du G-code temporaire vers le G-code de sortie a échoué" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Planification du téléversement vers `%1% `. Voir Fenêtre -> File d'attente " +"de téléversement de l'hôte d'impression" + +msgid "Device" +msgstr "Appareil" + +msgid "Task Sending" +msgstr "Envoi de la tâche" + +msgid "Task Sent" +msgstr "Tâche envoyée" + +msgid "Edit multiple printers" +msgstr "Modifier plusieurs imprimantes" + +msgid "Select connected printers (0/6)" +msgstr "Sélection des imprimantes connectées (0/6)" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "Sélection des imprimantes connectées (%d/6)" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "Le nombre maximum d’imprimantes pouvant être sélectionnées est de %d" + +msgid "Offline" +msgstr "Hors ligne" + +msgid "No task" +msgstr "Aucune tâche" + +msgid "View" +msgstr "Affichage" + +msgid "N/A" +msgstr "N / A" + +msgid "Edit Printers" +msgstr "Modifier les imprimantes" + +msgid "Device Name" +msgstr "Nom de l’appareil" + +msgid "Task Name" +msgstr "Nom de la tâche" + +msgid "Device Status" +msgstr "État de l’appareil" + +msgid "Actions" +msgstr "Actions" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" +"Veuillez sélectionner ici les appareils que vous souhaitez gérer (jusqu’à 6 " +"appareils)." + +msgid "Add" +msgstr "Ajouter" + +msgid "Idle" +msgstr "Inactif" + +msgid "Printing" +msgstr "Impression" + +msgid "Upgrading" +msgstr "Mise à jour" + +msgid "Incompatible" +msgstr "Incompatible" + +msgid "syncing" +msgstr "synchronisation" + +msgid "Printing Finish" +msgstr "Impression terminée" + +msgid "Printing Failed" +msgstr "Échec de l’impression" + +msgid "Printing Pause" +msgstr "Impression en pause" + +msgid "Prepare" +msgstr "Préparer" + +msgid "Slicing" +msgstr "Découpe" + +msgid "Pending" +msgstr "En attente" + +msgid "Sending" +msgstr "Envoi" + +msgid "Sending Finish" +msgstr "Fin de l’envoi" + +msgid "Sending Cancel" +msgstr "Annulation de l’envoi" + +msgid "Sending Failed" +msgstr "Échec de l’envoi" + +msgid "Print Success" +msgstr "Succès de l’impression" + +msgid "Print Failed" +msgstr "Échec de l’impression" + +msgid "Removed" +msgstr "Supprimé" + +msgid "Resume" +msgstr "Résumer" + +msgid "Stop" +msgstr "Arrêt" + +msgid "Task Status" +msgstr "État de la tâche" + +msgid "Sent Time" +msgstr "Heure d’envoi" + +msgid "There are no tasks to be sent!" +msgstr "Il n’y a pas de tâches à envoyer !" + +msgid "No historical tasks!" +msgstr "Aucune tâche historique !" + +msgid "Loading..." +msgstr "Chargement…" + +msgid "No AMS" +msgstr "Pas d’AMS" + +msgid "Send to Multi-device" +msgstr "Envoyer à plusieurs appareils" + +msgid "Preparing print job" +msgstr "Préparation du travail d'impression" + +msgid "Abnormal print file data. Please slice again" +msgstr "" +"Données de fichier d'impression anormales. Veuillez redécouvre le fichier." + +msgid "There is no device available to send printing." +msgstr "Il n’y a pas de périphérique disponible pour envoyer l’impression." + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "Le nombre d’imprimantes utilisées simultanément ne peut être égal à 0." + +msgid "Use External Spool" +msgstr "Utiliser la bobine externe" + +msgid "Use AMS" +msgstr "Utiliser l’AMS" + +msgid "Select Printers" +msgstr "Sélectionner des imprimantes" + +msgid "Ams Status" +msgstr "Statut de l’AMS" + +msgid "Printing Options" +msgstr "Options d’impression" + +msgid "Bed Leveling" +msgstr "Mise à niveau du plateau" + +msgid "Timelapse" +msgstr "Timelapse" + +msgid "Flow Dynamic Calibration" +msgstr "Calibration dynamique du débit" + +msgid "Send Options" +msgstr "Options d’envoi" + +msgid "Send to" +msgstr "Envoyer à" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"imprimantes en même temps. (Cela dépend du nombre d’appareils qui peuvent " +"être chauffés en même temps)." + +msgid "Wait" +msgstr "Attendre" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minute par lot. (Cela dépend du temps nécessaire pour terminer le chauffage.)" + +msgid "Send" +msgstr "Envoyer" + +msgid "Name is invalid;" +msgstr "Le nom n'est pas valide ;" + +msgid "illegal characters:" +msgstr "caractères illégaux :" + +msgid "illegal suffix:" +msgstr "suffixe illégal :" + +msgid "The name is not allowed to be empty." +msgstr "Le nom ne doit pas être vide." + +msgid "The name is not allowed to start with space character." +msgstr "Le nom ne doit pas commencer par un espace." + +msgid "The name is not allowed to end with space character." +msgstr "Le nom ne doit pas se terminer par un espace." + +msgid "The name length exceeds the limit." +msgstr "La longueur du nom dépasse la limite." + +msgid "Origin" +msgstr "Origine" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Taille en X et Y du plateau rectangulaire." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" +"Distance des coordonnées 0,0 du G-code depuis le coin avant gauche du " +"rectangle." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Diamètre du plateau d'impression. Il est supposé que l'origine (0,0) est " +"située au centre." + +msgid "Rectangular" +msgstr "Rectangle" + +msgid "Circular" +msgstr "Circulaire" + +msgid "Load shape from STL..." +msgstr "Charger une forme depuis un STL…" + +msgid "Settings" +msgstr "Réglages" + +msgid "Texture" +msgstr "Texture" + +msgid "Remove" +msgstr "Retirer" + +msgid "Not found:" +msgstr "Introuvable:" + +msgid "Model" +msgstr "Modèle" + +msgid "Choose an STL file to import bed shape from:" +msgstr "" +"Choisissez un fichier STL à partir duquel importer la forme du plateau :" + +msgid "Invalid file format." +msgstr "Format de fichier non valide." + +msgid "Error! Invalid model" +msgstr "Erreur ! Modèle invalide" + +msgid "The selected file contains no geometry." +msgstr "Le fichier sélectionné ne contient aucune géométrie." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"Le fichier sélectionné contient plusieurs zones disjointes. Cela n'est pas " +"utilisable." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "" +"Choisir un fichier à partir duquel importer la texture du plateau (PNG/SVG) :" + +msgid "Choose an STL file to import bed model from:" +msgstr "" +"Choisissez un fichier STL à partir duquel importer le modèle de plateau :" + +msgid "Bed Shape" +msgstr "Forme du plateau" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"La température minimale recommandée est inférieure à 190 degrés ou la " +"température maximale recommandée est supérieure à 300 degrés.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"La température minimale recommandée ne peut être supérieure à la température " +"maximale recommandée.\n" + +msgid "Please check.\n" +msgstr "Veuillez vérifier.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"La buse peut être bloquée lorsque la température est hors de la plage " +"recommandée.\n" +"Veuillez vous assurer d'utiliser la température pour imprimer.\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"La température de buse recommandée pour ce type de filament est de [%d, %d] " +"degrés centigrades" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Vitesse volumétrique maximale trop faible.\n" +"La valeur a été réinitialisée à 0,5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"La température actuelle du caisson est supérieure à la température de " +"sécurité du matériau, ce qui peut entraîner un ramollissement et un bouchage " +"du filament. La température de sécurité maximale pour le matériau est %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "Hauteur de couche trop petite. Réinitialiser à 0,2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "Espacement de lissage trop petit. Réinitialiser à 0.1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"La hauteur de couche initiale nulle n'est pas valide. La hauteur de la " +"première couche sera réinitialisée à 0,2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Ce paramètre n'est utilisé que pour le réglage de la taille du modèle avec " +"une petite valeur dans certains cas. Par exemple, lorsque la taille du " +"modèle présente une petite erreur et est difficile à assembler. Pour un " +"réglage de grande taille, veuillez utiliser la fonction d'échelle de modèle. " +"La valeur sera remise à 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Une trop grande compensation de la patte d'éléphant est déraisonnable. Si " +"vous avez vraiment un effet de patte d'éléphant important, veuillez vérifier " +"d'autres paramètres. Par exemple, si la température du plateau est trop " +"élevée. La valeur sera remise à 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" +"La paroi supplémentaire alternée ne fonctionne pas bien lorsque le paramètre " +"Assurer l’épaisseur de la coque verticale est réglée sur Tous. " + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"Modifier ces paramètres automatiquement ? \n" +"Oui - Modifier l’épaisseur de la coque verticale pour qu’elle soit modérée " +"et activer la paroi supplémentaire\n" +"Non - Ne pas utiliser la paroi supplémentaire alternée" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"La tour de purge ne fonctionne pas lorsque la hauteur de couche adaptative " +"ou la hauteur de couche de support indépendante est activée. \n" +"Que souhaitez-vous conserver ? \n" +"OUI - Conserver la tour de purge \n" +"NON - Conserver la hauteur de la couche adaptative et la hauteur de la " +"couche de support indépendante" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"La tour de purge ne fonctionne pas lorsque la hauteur de couche adaptative " +"est activée. \n" +"Que souhaitez-vous conserver ? \n" +"OUI - Conserver la tour de purge \n" +"NON - Conserver la hauteur de la couche adaptative" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"La tour de purge ne fonctionne pas lorsque la hauteur de la couche de " +"support indépendante est activée.\n" +"Que souhaitez-vous conserver ?\n" +"OUI - Garder la tour de purge\n" +"NON - Gardez la hauteur de la couche de support indépendante" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Lors de l'impression par objet, l'extrudeur peut entrer en collision avec " +"une jupe.\n" +"Il faut donc remettre la couche de la jupe à 1 pour éviter les collisions." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"seam_slope_start_height doit être inférieur à la hauteur de couche.\n" +"Remise à 0." + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Le mode spirale ne fonctionne que lorsque qu'il n'y a qu'une seule paroi, " +"les supports sont désactivés, que les couches supérieures de la coque sont à " +"0, qu'il n'y a pas de remplissage et que le type timelapse est traditionnel." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr "" +" Mais les machines avec une structure I3 ne généreront pas de vidéos " +"timelapse." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Modifier ces paramètres automatiquement ? \n" +"Oui - Modifiez ces paramètres et activez automatiquement le mode spirale/" +"vase\n" +"Non - Annuler l'activation du mode spirale" + +msgid "Auto bed leveling" +msgstr "Niveau de plateau automatique" + +msgid "Heatbed preheating" +msgstr "Préchauffage du plateau chauffant" + +msgid "Sweeping XY mech mode" +msgstr "Mesure fréquence axes XY" + +msgid "Changing filament" +msgstr "Changement de filament" + +msgid "M400 pause" +msgstr "Pause M400" + +msgid "Paused due to filament runout" +msgstr "Pause en raison d'un manque de filament" + +msgid "Heating hotend" +msgstr "Préchauffage de la buse" + +msgid "Calibrating extrusion" +msgstr "Étalonnage de l'extrusion" + +msgid "Scanning bed surface" +msgstr "Balayage de la surface du plateau" + +msgid "Inspecting first layer" +msgstr "Inspection de la première couche" + +msgid "Identifying build plate type" +msgstr "Identification du type de plateau" + +msgid "Calibrating Micro Lidar" +msgstr "Calibrage du Micro-Lidar" + +msgid "Homing toolhead" +msgstr "Tête d'outil de guidage" + +msgid "Cleaning nozzle tip" +msgstr "Nettoyage de la buse" + +msgid "Checking extruder temperature" +msgstr "Vérification de la température de l'extrudeur" + +msgid "Printing was paused by the user" +msgstr "L’impression a été suspendue par l’utilisateur" + +msgid "Pause of front cover falling" +msgstr "Pause de la chute de la couverture avant" + +msgid "Calibrating the micro lida" +msgstr "Calibrage du micro-Lidar" + +msgid "Calibrating extrusion flow" +msgstr "Calibrage du débit d'extrusion" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Pause en raison d'un dysfonctionnement de la température de la buse" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "" +"Pause en raison d'un dysfonctionnement de la température du plateau chauffant" + +msgid "Filament unloading" +msgstr "Déchargement du filament" + +msgid "Skip step pause" +msgstr "Passer l’étape de la pause" + +msgid "Filament loading" +msgstr "Chargement du filament" + +msgid "Motor noise calibration" +msgstr "Calibrage du bruit du moteur" + +msgid "Paused due to AMS lost" +msgstr "Suspendu en raison de la perte de l’AMS" + +msgid "Paused due to low speed of the heat break fan" +msgstr "" +"Mise en pause en raison de la faible vitesse du ventilateur du heatbreak" + +msgid "Paused due to chamber temperature control error" +msgstr "" +"Mise en pause en raison d’une erreur de contrôle de la température du caisson" + +msgid "Cooling chamber" +msgstr "Refroidissement du caisson" + +msgid "Paused by the Gcode inserted by user" +msgstr "Mise en pause par le G-code inséré par l’utilisateur" + +msgid "Motor noise showoff" +msgstr "Démonstration du bruit du moteur" + +msgid "Nozzle filament covered detected pause" +msgstr "Pause en cas de détection de buse couverte de filament" + +msgid "Cutter error pause" +msgstr "Pause en cas d'erreur de coupe" + +msgid "First layer error pause" +msgstr "Pause en cas d'erreur de la première couche" + +msgid "Nozzle clog pause" +msgstr "Pause en cas de buse bouchée" + +msgid "Unknown" +msgstr "Inconnu" + +msgid "Fatal" +msgstr "Mortel" + +msgid "Serious" +msgstr "Sérieux" + +msgid "Common" +msgstr "Commun" + +msgid "Update successful." +msgstr "Mise à jour réussie." + +msgid "Downloading failed." +msgstr "Le téléchargement a échoué." + +msgid "Verification failed." +msgstr "Échec de la vérification." + +msgid "Update failed." +msgstr "Mise à jour a échoué." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"La température actuelle du caisson ou la température cible du caisson " +"dépasse 45℃. Afin d’éviter le bouchage de l’extrudeur, un filament basse " +"température (PLA/PETG/TPU) ne doit pas être chargé." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Un filament basse température (PLA/PETG/TPU) est chargé dans l’extrudeur. " +"Afin d’éviter le bouchage de l’extrudeur, il n’est pas autorisé de régler la " +"température du caisson au-dessus de 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Lorsque vous réglez la température du caisson en dessous de 40℃, le contrôle " +"de la température du caisson ne sera pas activé. Et la température cible du " +"caisson sera automatiquement réglée sur 0℃." + +msgid "Failed to start printing job" +msgstr "Échec du lancement de la tâche d'impression" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" +"Cette calibration ne prend pas en charge le diamètre de buse actuellement " +"sélectionné" + +msgid "Current flowrate cali param is invalid" +msgstr "Le paramètre de calibration du débit actuel n’est pas valide" + +msgid "Selected diameter and machine diameter do not match" +msgstr "" +"Le diamètre sélectionné et le diamètre de la machine ne correspondent pas" + +msgid "Failed to generate cali gcode" +msgstr "Échec de la génération du G-code de calibration" + +msgid "Calibration error" +msgstr "Erreur de la calibration" + +msgid "TPU is not supported by AMS." +msgstr "Le TPU n’est pas pris en charge par l’AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF n’est pas pris en charge par l’AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Le PVA humide deviendra flexible et restera coincé à l’intérieur de l’AMS, " +"veuillez prendre soin de le sécher avant utilisation." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"Les filaments CF/GF sont durs et cassants, ils peuvent se casser ou se " +"coincer dans l’AMS, veuillez les utiliser avec prudence." + +msgid "default" +msgstr "défaut" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Modifier le G-code personnalisé (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" +"Placeholders intégrés (double-cliquez sur l’élément pour l’ajouter au G-code)" + +msgid "Search gcode placeholders" +msgstr "Rechercher les placeholders de G-code" + +msgid "Add selected placeholder to G-code" +msgstr "Ajouter le placeholder sélectionné au G-code" + +msgid "Select placeholder" +msgstr "Sélectionner un placeholder" + +msgid "[Global] Slicing State" +msgstr "[Global] État de la découpe" + +msgid "Read Only" +msgstr "Lecture seule" + +msgid "Read Write" +msgstr "Lire et écrire" + +msgid "Slicing State" +msgstr "État de la découpe" + +msgid "Print Statistics" +msgstr "Statistiques d’impression" + +msgid "Objects Info" +msgstr "Informations sur les objets" + +msgid "Dimensions" +msgstr "Dimensions" + +msgid "Temperatures" +msgstr "Températures" + +msgid "Timestamps" +msgstr "Horodatages" + +#, boost-format +msgid "Specific for %1%" +msgstr "Spécifique à %1%" + +msgid "Presets" +msgstr "Préréglages" + +msgid "Print settings" +msgstr "Réglages d'impression" + +msgid "Filament settings" +msgstr "Réglages du filament" + +msgid "SLA Materials settings" +msgstr "Paramètres des matériaux SLA" + +msgid "Printer settings" +msgstr "Paramètres de l'imprimante" + +msgid "parameter name" +msgstr "nom du paramètre" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s ne peut pas être un pourcentage" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "La valeur %s est hors plage, continuer ?" + +msgid "Parameter validation" +msgstr "Validation du paramètre" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "" +"La valeur %s est hors plage. La plage valide est comprise entre %d et %d." + +msgid "Value is out of range." +msgstr "La valeur est hors plage." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "Est-ce %s%% ou %s %s ? OUI pour %s%%, NON pour %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Format d'entrée non valide. Vecteur de dimensions attendu dans le format " +"suivant : \"%1%\"" + +msgid "Input value is out of range" +msgstr "La valeur entrée est hors plage" + +msgid "Some extension in the input is invalid" +msgstr "Une extension dans l'entrée n'est pas valide" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Format invalide. Format vectoriel attendu : \"%1%\"" + +msgid "Layer Height" +msgstr "Hauteur de la couche" + +msgid "Line Width" +msgstr "Largeur de ligne" + +msgid "Fan Speed" +msgstr "Vitesse du ventilateur" + +msgid "Temperature" +msgstr "Température" + +msgid "Flow" +msgstr "Flux" + +msgid "Tool" +msgstr "Outil" + +msgid "Layer Time" +msgstr "Temps de couche" + +msgid "Layer Time (log)" +msgstr "Temps de couche (journal)" + +msgid "Height: " +msgstr "Hauteur: " + +msgid "Width: " +msgstr "Largeur: " + +msgid "Speed: " +msgstr "Vitesse: " + +msgid "Flow: " +msgstr "Débit: " + +msgid "Layer Time: " +msgstr "Temps de couche: " + +msgid "Fan: " +msgstr "Ventilation: " + +msgid "Temperature: " +msgstr "Température: " + +msgid "Loading G-codes" +msgstr "Chargement des G-codes" + +msgid "Generating geometry vertex data" +msgstr "Génération de données de sommet de géométrie" + +msgid "Generating geometry index data" +msgstr "Génération de données d'index de géométrie" + +msgid "Statistics of All Plates" +msgstr "Statistiques de toutes les plaques" + +msgid "Display" +msgstr "Afficher" + +msgid "Flushed" +msgstr "Purgé" + +msgid "Tower" +msgstr "Tour" + +msgid "Total" +msgstr "Total" + +msgid "Total Estimation" +msgstr "Estimation totale" + +msgid "Total time" +msgstr "Durée totale" + +msgid "Total cost" +msgstr "Coût total" + +msgid "up to" +msgstr "jusqu'à" + +msgid "above" +msgstr "au-dessus" + +msgid "from" +msgstr "de" + +msgid "Color Scheme" +msgstr "Schéma de couleur" + +msgid "Time" +msgstr "Durée" + +msgid "Percent" +msgstr "Pour cent" + +msgid "Used filament" +msgstr "Filament utilisé" + +msgid "Layer Height (mm)" +msgstr "Hauteur de couche (mm)" + +msgid "Line Width (mm)" +msgstr "Largeur de ligne (mm)" + +msgid "Speed (mm/s)" +msgstr "Vitesse (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Vitesse du ventilateur (%)" + +msgid "Temperature (°C)" +msgstr "Température (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Débit volumétrique (mm³/s)" + +msgid "Travel" +msgstr "Déplacement" + +msgid "Seams" +msgstr "Coutures" + +msgid "Retract" +msgstr "Rétraction" + +msgid "Unretract" +msgstr "Annuler le retrait" + +msgid "Filament Changes" +msgstr "Changements de filaments" + +msgid "Wipe" +msgstr "Essuyage" + +msgid "Options" +msgstr "Choix" + +msgid "travel" +msgstr "déplacement" + +msgid "Extruder" +msgstr "Extrudeur" + +msgid "Filament change times" +msgstr "Temps de changement de filament" + +msgid "Cost" +msgstr "Coût" + +msgid "Color change" +msgstr "Changement de couleur" + +msgid "Print" +msgstr "Imprimer" + +msgid "Printer" +msgstr "Imprimante" + +msgid "Custom g-code" +msgstr "G-code personnalisé" + +msgid "ToolChange" +msgstr "Changement d'outil" + +msgid "Time Estimation" +msgstr "Estimation de temps" + +msgid "Normal mode" +msgstr "Mode normal" + +msgid "Total Filament" +msgstr "Filament total" + +msgid "Model Filament" +msgstr "Filament pour le modèle" + +msgid "Prepare time" +msgstr "Temps de préparation" + +msgid "Model printing time" +msgstr "Temps d'impression du modèle" + +msgid "Switch to silent mode" +msgstr "Passer en mode silencieux" + +msgid "Switch to normal mode" +msgstr "Passer en mode normal" + +msgid "Variable layer height" +msgstr "Hauteur de couche variable" + +msgid "Adaptive" +msgstr "Adaptatif" + +msgid "Quality / Speed" +msgstr "Qualité / Vitesse" + +msgid "Smooth" +msgstr "Lisse" + +msgid "Radius" +msgstr "Rayon" + +msgid "Keep min" +msgstr "Garder min" + +msgid "Left mouse button:" +msgstr "Bouton gauche de la souris :" + +msgid "Add detail" +msgstr "Ajouter Détail" + +msgid "Right mouse button:" +msgstr "Bouton droit de la souris :" + +msgid "Remove detail" +msgstr "Supprimer détail" + +msgid "Shift + Left mouse button:" +msgstr "Maj + Bouton gauche de la souris :" + +msgid "Reset to base" +msgstr "Revenir de base" + +msgid "Shift + Right mouse button:" +msgstr "Maj + Bouton droit de la souris:" + +msgid "Smoothing" +msgstr "Lissage" + +msgid "Mouse wheel:" +msgstr "Molette de la souris :" + +msgid "Increase/decrease edit area" +msgstr "Augmenter/diminuer la zone d'édition" + +msgid "Sequence" +msgstr "Séquence" + +msgid "Mirror Object" +msgstr "Symétriser l’objet" + +msgid "Tool Move" +msgstr "Déplacement d'outil" + +msgid "Tool Rotate" +msgstr "Rotation de l'outil" + +msgid "Move Object" +msgstr "Déplacer l'Objet" + +msgid "Auto Orientation options" +msgstr "Options d'orientation automatique" + +msgid "Enable rotation" +msgstr "Activer la rotation" + +msgid "Optimize support interface area" +msgstr "Optimiser la zone d'interface de support" + +msgid "Orient" +msgstr "Orienter" + +msgid "Arrange options" +msgstr "Options d'agencement" + +msgid "Spacing" +msgstr "Espacement" + +msgid "0 means auto spacing." +msgstr "0 signifie espacement automatique." + +msgid "Auto rotate for arrangement" +msgstr "Rotation automatique pour l'arrangement" + +msgid "Allow multiple materials on same plate" +msgstr "Autoriser plusieurs matériaux sur la même plaque" + +msgid "Avoid extrusion calibration region" +msgstr "Éviter la région de calibration de l'extrusion" + +msgid "Align to Y axis" +msgstr "Aligner sur l’axe Y" + +msgid "Add plate" +msgstr "Ajouter une plaque" + +msgid "Auto orient" +msgstr "Orientation automatique" + +msgid "Arrange all objects" +msgstr "Organiser tous les objets" + +msgid "Arrange objects on selected plates" +msgstr "Organiser les objets sur les plaques sélectionnées" + +msgid "Split to objects" +msgstr "Diviser en objets individuels" + +msgid "Split to parts" +msgstr "Scinder en pièces" + +msgid "Assembly View" +msgstr "Vue de l'assemblage" + +msgid "Select Plate" +msgstr "Sélectionner la plaque" + +msgid "Assembly Return" +msgstr "Retour d'assemblage" + +msgid "return" +msgstr "retour" + +msgid "Paint Toolbar" +msgstr "Barre d'outils de peinture" + +msgid "Explosion Ratio" +msgstr "Taux d'explosion" + +msgid "Section View" +msgstr "Vue en coupe" + +msgid "Assemble Control" +msgstr "Contrôle de l'Assemblage" + +msgid "Total Volume:" +msgstr "Volume total:" + +msgid "Assembly Info" +msgstr "Informations sur l'assemblage" + +msgid "Volume:" +msgstr "Le volume:" + +msgid "Size:" +msgstr "Taille:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"Des conflits de chemins G-code ont été trouvés au niveau de la couche %d, z " +"= %.2lf mm. Veuillez séparer davantage les objets en conflit (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "Un objet est posé sur la limite du plateau." + +msgid "A G-code path goes beyond the max print height." +msgstr "Un chemin du G-code dépasse la hauteur d’impression maximale." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Un chemin du G-code va au-delà de la limite de la plaque." + +msgid "Only the object being edit is visible." +msgstr "Seul l'objet en cours d'édition est visible." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Un objet est posé sur la limite de la plaque ou dépasse la limite de " +"hauteur.\n" +"Veuillez résoudre le problème en le déplaçant totalement sur ou hors du " +"plateau, et en confirmant que la hauteur entre dans le volume d'impression." + +msgid "Calibration step selection" +msgstr "Sélection de l'étape de calibration" + +msgid "Micro lidar calibration" +msgstr "Calibration du Micro-Lidar" + +msgid "Bed leveling" +msgstr "Mise à niveau du plateau" + +msgid "Vibration compensation" +msgstr "Compensation des vibrations" + +msgid "Motor noise cancellation" +msgstr "Suppression du bruit du moteur" + +msgid "Calibration program" +msgstr "Programme de calibration" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"Le processus de calibration détecte automatiquement l'état de votre appareil " +"pour minimiser les écarts.\n" +"Il permet à l'appareil de fonctionner de manière optimale." + +msgid "Calibration Flow" +msgstr "Calibration débit" + +msgid "Start Calibration" +msgstr "Démarrer la calibration" + +msgid "Completed" +msgstr "Terminé" + +msgid "Calibrating" +msgstr "Étalonnage" + +msgid "No step selected" +msgstr "Aucune étape sélectionnée" + +msgid "Auto-record Monitoring" +msgstr "Surveillance de l'enregistrement automatique" + +msgid "Go Live" +msgstr "Passer en LIVE" + +msgid "Liveview Retry" +msgstr "Réessai de l’affichage en direct" + +msgid "Resolution" +msgstr "Résolution" + +msgid "Enable" +msgstr "Activer" + +msgid "Hostname or IP" +msgstr "Nom d’hôte ou IP" + +msgid "Custom camera source" +msgstr "Source caméra personnalisée" + +msgid "Show \"Live Video\" guide page." +msgstr "Afficher la page de guide « Vidéo en direct »." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Connecter l'imprimante (LAN)" + +msgid "Please input the printer access code:" +msgstr "Veuillez saisir le code d’accès à l’imprimante :" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Vous pouvez le trouver dans \n" +"« Paramètres > Réseau > Code de connexion » sur\n" +" l'imprimante, comme illustré sur le schéma:" + +msgid "Invalid input." +msgstr "Saisie non valide." + +msgid "New Window" +msgstr "Nouvelle fenêtre" + +msgid "Open a new window" +msgstr "Ouvrir une nouvelle fenêtre" + +msgid "Application is closing" +msgstr "L'application se ferme" + +msgid "Closing Application while some presets are modified." +msgstr "" +"Fermeture de l'application pendant que certains préréglages sont modifiés." + +msgid "Logging" +msgstr "Enregistrement" + +msgid "Preview" +msgstr "Aperçu" + +msgid "Multi-device" +msgstr "Multi-appareils" + +msgid "Project" +msgstr "Projet" + +msgid "Yes" +msgstr "Oui" + +msgid "No" +msgstr "Non" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "sera fermé avant de créer un nouveau modèle. Voulez-vous continuer ?" + +msgid "Slice plate" +msgstr "Découper le plateau" + +msgid "Print plate" +msgstr "Imprimer plateau" + +msgid "Slice all" +msgstr "Tout découper" + +msgid "Export G-code file" +msgstr "Exporter le fichier G-code" + +msgid "Export plate sliced file" +msgstr "Exporter fichier découpé du plateau" + +msgid "Export all sliced file" +msgstr "Exporter tous les fichiers découpés" + +msgid "Print all" +msgstr "Tout imprimer" + +msgid "Send all" +msgstr "Tout envoyer" + +msgid "Keyboard Shortcuts" +msgstr "Raccourcis Clavier" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Afficher la liste des raccourcis clavier" + +msgid "Setup Wizard" +msgstr "Assistant de configuration" + +msgid "Show Configuration Folder" +msgstr "Afficher le dossier de configuration" + +msgid "Show Tip of the Day" +msgstr "Afficher l'Astuce du Jour" + +msgid "Check for Update" +msgstr "Vérifier la mise à jour" + +msgid "Open Network Test" +msgstr "Ouvrir le Test de Réseau" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&À propos de %s" + +msgid "Upload Models" +msgstr "Téléverser les Modèles" + +msgid "Download Models" +msgstr "Télécharger des Modèles" + +msgid "Default View" +msgstr "Vue par défaut" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Haut" + +msgid "Top View" +msgstr "Vue du Dessus" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Dessous" + +msgid "Bottom View" +msgstr "Vue du Dessous" + +msgid "Front" +msgstr "Avant" + +msgid "Front View" +msgstr "Vue Avant" + +msgid "Rear" +msgstr "Arrière" + +msgid "Rear View" +msgstr "Vue Arrière" + +msgid "Left" +msgstr "Gauche" + +msgid "Left View" +msgstr "Vue Gauche" + +msgid "Right" +msgstr "Droite" + +msgid "Right View" +msgstr "Vue Droite" + +msgid "Start a new window" +msgstr "Démarrer une nouvelle fenêtre" + +msgid "New Project" +msgstr "Nouveau projet" + +msgid "Start a new project" +msgstr "Démarrer un nouveau projet" + +msgid "Open a project file" +msgstr "Ouvrir un fichier de projet" + +msgid "Recent projects" +msgstr "Projets récents" + +msgid "Save Project" +msgstr "Enregistrer le projet" + +msgid "Save current project to file" +msgstr "Enregistrer le projet actuel dans un fichier" + +msgid "Save Project as" +msgstr "Enregistrer le projet sous" + +msgid "Shift+" +msgstr "Maj+" + +msgid "Save current project as" +msgstr "Enregistrer le projet actuel sous" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Importer des fichiers 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Charger un modèle" + +msgid "Import Zip Archive" +msgstr "Importer une archive Zip" + +msgid "Load models contained within a zip archive" +msgstr "Charger les modèles contenus dans une archive zip" + +msgid "Import Configs" +msgstr "Importer des Configs" + +msgid "Load configs" +msgstr "Charger les Configs" + +msgid "Import" +msgstr "Importer" + +msgid "Export all objects as one STL" +msgstr "Exporter tous les objets en un seul STL" + +msgid "Export all objects as STLs" +msgstr "Exporter tous les objets en tant que plusieurs STL" + +msgid "Export Generic 3MF" +msgstr "Exporter en fichier 3MF Générique" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Exportation de fichiers 3MF sans utiliser d'extensions" + +msgid "Export current sliced file" +msgstr "Exporter le fichier découpé actuel" + +msgid "Export all plate sliced file" +msgstr "Exportation de tous les fichiers slicés de la plaque" + +msgid "Export G-code" +msgstr "Exporter le G-code" + +msgid "Export current plate as G-code" +msgstr "Exporter le plateau actuel en G-code" + +msgid "Export Preset Bundle" +msgstr "Exporter l’ensemble des préréglages" + +msgid "Export current configuration to files" +msgstr "Exporter la configuration actuelle vers des fichiers" + +msgid "Export" +msgstr "Exporter" + +msgid "Quit" +msgstr "Quitter" + +msgid "Undo" +msgstr "Annuler" + +msgid "Redo" +msgstr "Recommencer" + +msgid "Cut selection to clipboard" +msgstr "Couper la sélection dans le presse-papiers" + +msgid "Copy" +msgstr "Copier" + +msgid "Copy selection to clipboard" +msgstr "Copier la sélection dans le presse-papier" + +msgid "Paste" +msgstr "Coller" + +msgid "Paste clipboard" +msgstr "Coller le presse-papier" + +msgid "Delete selected" +msgstr "Supprimer la sélection" + +msgid "Deletes the current selection" +msgstr "Supprime la sélection en cours" + +msgid "Delete all" +msgstr "Tout supprimer" + +msgid "Deletes all objects" +msgstr "Supprimer tous les objets" + +msgid "Clone selected" +msgstr "Cloner sélectionné" + +msgid "Clone copies of selections" +msgstr "Cloner des copies de sélections" + +msgid "Select all" +msgstr "Tout sélectionner" + +msgid "Selects all objects" +msgstr "Sélectionner tous les objets" + +msgid "Deselect all" +msgstr "Désélectionner tout" + +msgid "Deselects all objects" +msgstr "Désélectionner tous les objets" + +msgid "Use Perspective View" +msgstr "Utiliser la vue en perspective" + +msgid "Use Orthogonal View" +msgstr "Utiliser la vue orthogonale" + +msgid "Show &G-code Window" +msgstr "Afficher la fenêtre du &G-code" + +msgid "Show g-code window in Previce scene" +msgstr "Afficher la fenêtre du G-code dans la scène précédente" + +msgid "Show 3D Navigator" +msgstr "Afficher le navigateur 3D" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "" +"Afficher le navigateur 3D dans la scène de préparation et de prévisualisation" + +msgid "Reset Window Layout" +msgstr "Réinitialiser la présentation de la fenêtre" + +msgid "Reset to default window layout" +msgstr "Rétablissement de la disposition par défaut des fenêtres" + +msgid "Show &Labels" +msgstr "Afficher &les étiquettes" + +msgid "Show object labels in 3D scene" +msgstr "Afficher les étiquettes des objets dans la scène 3D" + +msgid "Show &Overhang" +msgstr "Montrer les &surplombs" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Afficher la surbrillance des surplombs d'un objet dans la scène 3D" + +msgid "Preferences" +msgstr "Préférences" + +msgid "Help" +msgstr "Aide" + +msgid "Temperature Calibration" +msgstr "Calibration de Température" + +msgid "Pass 1" +msgstr "Passe 1" + +msgid "Flow rate test - Pass 1" +msgstr "Test de débit - Passe 1" + +msgid "Pass 2" +msgstr "Passe 2" + +msgid "Flow rate test - Pass 2" +msgstr "Test de débit - Passe 2" + +msgid "Flow rate" +msgstr "Débit" + +msgid "Pressure advance" +msgstr "Pressure Advance" + +msgid "Retraction test" +msgstr "Test de rétraction" + +msgid "Orca Tolerance Test" +msgstr "Test de tolérance Orca" + +msgid "Max flowrate" +msgstr "Débit maximal" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Plus…" + +msgid "Tutorial" +msgstr "Didacticiel" + +msgid "Calibration help" +msgstr "Aide à la calibration" + +msgid "More calibrations" +msgstr "Plus de calibrations" + +msgid "&Open G-code" +msgstr "&Ouvrir G-code" + +msgid "Open a G-code file" +msgstr "Ouvrir un fichier G-code" + +msgid "Re&load from Disk" +msgstr "Recharger à partir du disque" + +msgid "Reload the plater from disk" +msgstr "Rechargez la machine à partir du disque" + +msgid "Export &Toolpaths as OBJ" +msgstr "Exporter &Toolpaths en OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Exporter les parcours d'outils en OBJ" + +msgid "Open &Slicer" +msgstr "Ouvrir &Studio" + +msgid "Open Slicer" +msgstr "Ouvrir Studio" + +msgid "&Quit" +msgstr "&Quitter" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Quitter %s" + +msgid "&File" +msgstr "&File" + +msgid "&View" +msgstr "&Voir" + +msgid "&Help" +msgstr "&Aide" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "" +"Il existe un fichier portant le même nom : %s. Voulez-vous le remplacer ?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "" +"Il existe une configuration portant le même nom : %s. Voulez-vous la " +"remplacer ?" + +msgid "Overwrite file" +msgstr "Remplacer le fichier" + +msgid "Yes to All" +msgstr "Oui à Tout" + +msgid "No to All" +msgstr "Non à Tout" + +msgid "Choose a directory" +msgstr "Choisir un dossier" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +"Il y a %d configuration exportée. (Uniquement les configurations non système)" +msgstr[1] "" +"Il y a %d configurations exportées. (Uniquement les configurations non " +"système)" + +msgid "Export result" +msgstr "Exporter le Résultat" + +msgid "Select profile to load:" +msgstr "Sélectionnez le profil à charger :" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +"Il y a %d configuration importée. (Uniquement les configurations non système " +"et compatibles)" +msgstr[1] "" +"Il y a %d configurations importées. (Uniquement les configurations non " +"système et compatibles)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"Conseil : assurez-vous d’avoir ajouté l’imprimante correspondante avant " +"d’importer les configurations." + +msgid "Import result" +msgstr "Importer le résultat" + +msgid "File is missing" +msgstr "Le fichier est manquant" + +msgid "The project is no longer available." +msgstr "Le projet n'est plus disponible." + +msgid "Filament Settings" +msgstr "Réglages du filament" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Voulez-vous synchroniser vos données personnelles à partir de Bambu Cloud ?\n" +"Il contient les informations suivantes :\n" +"1. Les préréglages du Traitement\n" +"2. Les préréglages du Filament\n" +"3. Les préréglages de l'Imprimante" + +msgid "Synchronization" +msgstr "Synchronisation" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" +"L'appareil ne peut pas gérer plus de conversations. Veuillez réessayer plus " +"tard." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" +"Le lecteur ne fonctionne pas correctement. Veuillez réinstaller le lecteur " +"système." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"Le lecteur n’est pas chargé, veuillez cliquer sur le bouton « play » pour " +"réessayer." + +msgid "Please confirm if the printer is connected." +msgstr "Veuillez vérifier que l’imprimante est bien connectée." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"L’imprimante est actuellement occupée à télécharger. Veuillez réessayer une " +"fois le téléchargement terminé." + +msgid "Printer camera is malfunctioning." +msgstr "La caméra de l’imprimante ne fonctionne pas correctement." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Un problème s’est produit. Veuillez mettre à jour le micrologiciel de " +"l’imprimante et réessayer." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"La fonction vue en direct sur réseau local est désactivée. Veuillez activer " +"l’affichage en direct sur l’écran de l’imprimante." + +msgid "Please enter the IP of printer to connect." +msgstr "Veuillez saisir l’IP de l’imprimante à connecter." + +msgid "Initializing..." +msgstr "Initialisation…" + +msgid "Connection Failed. Please check the network and try again" +msgstr "Échec de la connexion. Veuillez vérifier le réseau et réessayer" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Veuillez vérifier le réseau et réessayer, Vous pouvez redémarrer ou mettre à " +"jour l’imprimante si le problème persiste." + +msgid "The printer has been logged out and cannot connect." +msgstr "L’imprimante a été déconnectée et ne peut pas se connecter." + +msgid "Stopped." +msgstr "Arrêté." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "" +"Échec de la connexion au réseau local (échec du démarrage de l’affichage en " +"direct)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Les outils de caméra virtuelle sont nécessaires pour cette tâche !\n" +"Vous souhaitez les installer ?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Téléchargement des Outils de Caméra Virtuelle" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Une autre caméra virtuelle est en cours d'exécution.\n" +"Snapmaker Orca ne prend en charge qu'une seule caméra virtuelle.\n" +"Voulez-vous arrêter cette caméra virtuelle ?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "L'initialisation de la caméra virtuelle a échoué (%s) !" + +msgid "Network unreachable" +msgstr "Réseau inaccessible" + +msgid "Information" +msgstr "Information" + +msgid "Playing..." +msgstr "En cours…" + +msgid "Year" +msgstr "Année" + +msgid "Month" +msgstr "Mois" + +msgid "All Files" +msgstr "Tous les Fichiers" + +msgid "Group files by year, recent first." +msgstr "Regroupez les fichiers par année, les plus récents en premier." + +msgid "Group files by month, recent first." +msgstr "Regroupez les fichiers par mois, les plus récents en premier." + +msgid "Show all files, recent first." +msgstr "Afficher tous les fichiers, les plus récents en premier." + +msgid "Switch to timelapse files." +msgstr "Passez aux fichiers timelapse." + +msgid "Video" +msgstr "Vidéo" + +msgid "Switch to video files." +msgstr "Passez aux fichiers vidéo." + +msgid "Switch to 3mf model files." +msgstr "Passez aux fichiers de modèle 3mf." + +msgid "Delete selected files from printer." +msgstr "Supprimez les fichiers sélectionnés de l'imprimante." + +msgid "Download" +msgstr "Télécharger" + +msgid "Download selected files from printer." +msgstr "Téléchargez les fichiers sélectionnés depuis l'imprimante." + +msgid "Select" +msgstr "Sélectionner" + +msgid "Batch manage files." +msgstr "Gérer les fichiers par lots." + +msgid "Refresh" +msgstr "Actualiser" + +msgid "Reload file list from printer." +msgstr "Recharger la liste des fichiers de l’imprimante." + +msgid "No printers." +msgstr "Aucune imprimante." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "La connexion a échoué [%d] !" + +msgid "Loading file list..." +msgstr "Chargement de la liste des fichiers…" + +msgid "No files" +msgstr "Aucun fichier" + +msgid "Load failed" +msgstr "Échec du chargement" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "" +"L'initialisation a échoué (la connexion de l'appareil n'est pas prête) !" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"La navigation dans les fichiers de la carte SD n’est pas prise en charge par " +"le micrologiciel actuel. Veuillez mettre à jour le micrologiciel de " +"l’imprimante." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" +"Échec de l’initialisation (Stockage indisponible, insérer la carte SD.) !" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "" +"Échec de la connexion au réseau local (Échec de la visualisation de la carte " +"SD)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "" +"La navigation dans les fichiers de la carte SD n’est pas prise en charge en " +"mode LAN uniquement." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "L'initialisation a échoué (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +"Vous allez supprimer le fichier %u de l’imprimante. Êtes-vous sûr de vouloir " +"continuer ?" +msgstr[1] "" +"Vous allez supprimer %u fichiers de l’imprimante. Êtes-vous sûr de vouloir " +"continuer ?" + +msgid "Delete files" +msgstr "Supprimer les fichiers" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Voulez-vous supprimer le fichier '%s' de l'imprimante ?" + +msgid "Delete file" +msgstr "Supprimer le fichier" + +msgid "Fetching model infomations ..." +msgstr "Récupération des informations sur le modèle…" + +msgid "Failed to fetch model information from printer." +msgstr "Échec de la récupération des informations de modèle de l’imprimante." + +msgid "Failed to parse model information." +msgstr "Échec de l’analyse des informations sur le modèle." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +"Le fichier G-code .3mf ne contient pas de données G-code. Veuillez le " +"découper avec Snapmaker Orca et exporter un nouveau fichier G-code .3mf." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "Le fichier « %s » a été perdu ! Veuillez le télécharger à nouveau." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"Fichier : %s\n" +"Titre : %s\n" + +msgid "Download waiting..." +msgstr "Téléchargement en attente…" + +msgid "Play" +msgstr "Lecture" + +msgid "Open Folder" +msgstr "Ouvrir le Dossier" + +msgid "Download finished" +msgstr "Téléchargement terminé" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Téléchargement %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Reconnexion de l’imprimante, l’opération ne peut être effectuée maintenant, " +"veuillez réessayer plus tard." + +msgid "File does not exist." +msgstr "Le fichier n’existe pas." + +msgid "File checksum error. Please retry." +msgstr "Erreur de somme de contrôle du fichier. Veuillez réessayer." + +msgid "Not supported on the current printer version." +msgstr "Non pris en charge sur la version actuelle de l’imprimante." + +msgid "Storage unavailable, insert SD card." +msgstr "Stockage indisponible, insérez la carte SD." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Code d'erreur : %d" + +msgid "Speed:" +msgstr "Vitesse:" + +msgid "Deadzone:" +msgstr "Zone morte :" + +msgid "Options:" +msgstr "Options :" + +msgid "Zoom" +msgstr "Zoom" + +msgid "Translation/Zoom" +msgstr "Translation/Zoom" + +msgid "3Dconnexion settings" +msgstr "Paramètres 3Dconnexion" + +msgid "Swap Y/Z axes" +msgstr "Permuter les axes Y/Z" + +msgid "Invert X axis" +msgstr "Inverser l'axe X" + +msgid "Invert Y axis" +msgstr "Inverser l'axe Y" + +msgid "Invert Z axis" +msgstr "Inverser l'axe Z" + +msgid "Invert Yaw axis" +msgstr "Inverser l’axe Yaw" + +msgid "Invert Pitch axis" +msgstr "Inverser l'axe de tangage" + +msgid "Invert Roll axis" +msgstr "Inverser l’axe de roulis" + +msgid "Printing Progress" +msgstr "Progression de l'impression" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Couche : N/A" + +msgid "Clear" +msgstr "Nettoyer" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"Vous avez terminé l’impression du modèle,\n" +"mais la synchronisation des informations de notation a échoué." + +msgid "How do you like this printing file?" +msgstr "Que pensez-vous de ce fichier d’impression ?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "(Le modèle a déjà été noté. Votre note écrasera la note précédente.)" + +msgid "Rate" +msgstr "Noter" + +msgid "Camera" +msgstr "Caméra" + +msgid "SD Card" +msgstr "Carte SD" + +msgid "Camera Setting" +msgstr "Réglage de la Caméra" + +msgid "Switch Camera View" +msgstr "Changer la vue de la caméra" + +msgid "Control" +msgstr "Contrôle" + +msgid "Printer Parts" +msgstr "Pièces détachées pour imprimantes" + +msgid "Print Options" +msgstr "Options d'impression" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Lampe" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Chamb" + +msgid "Bed" +msgstr "Plateau" + +msgid "Debug Info" +msgstr "Les informations de débogage" + +msgid "No SD Card" +msgstr "Pas de carte SD" + +msgid "SD Card Abnormal" +msgstr "Carte SD anormale" + +msgid "Cancel print" +msgstr "Annuler l'impression" + +msgid "Are you sure you want to cancel this print?" +msgstr "Êtes-vous sûr de vouloir annuler cette impression ?" + +msgid "Downloading..." +msgstr "Téléchargement…" + +msgid "Cloud Slicing..." +msgstr "Découpe par le Cloud..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "Dans la file d’attente Cloud Slicing, il reste %s tâches en attente." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Couche : %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Couche : %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Veuillez chauffer la buse à plus de 170 degrés avant de charger ou de " +"décharger le filament." + +msgid "Still unload" +msgstr "Décharger encore" + +msgid "Still load" +msgstr "Charger encore" + +msgid "Please select an AMS slot before calibration" +msgstr "Veuillez sélectionner un emplacement AMS avant la calibration" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Impossible de lire les informations sur le filament: le filament est chargé " +"dans l'extrudeur. Veuillez décharger le filament et réessayer." + +msgid "This only takes effect during printing" +msgstr "Cela ne prend effet que pendant l'impression" + +msgid "Silent" +msgstr "Silencieux" + +msgid "Standard" +msgstr "Standard" + +msgid "Sport" +msgstr "Sport" + +msgid "Ludicrous" +msgstr "Insensé" + +msgid "Can't start this without SD card." +msgstr "Impossible de démarrer sans carte SD." + +msgid "Rate the Print Profile" +msgstr "Noter le profil d’impression" + +msgid "Comment" +msgstr "Commentaire" + +msgid "Rate this print" +msgstr "Noter cette impression" + +msgid "Add Photo" +msgstr "Ajouter une image" + +msgid "Delete Photo" +msgstr "Supprimer l’image" + +msgid "Submit" +msgstr "Envoyer" + +msgid "Please click on the star first." +msgstr "Veuillez d’abord cliquer sur l’étoile." + +msgid "InFo" +msgstr "Info" + +msgid "Get oss config failed." +msgstr "Échec de l’obtention de la configuration du système d’exploitation." + +msgid "Upload Pictrues" +msgstr "Envoyer des images" + +msgid "Number of images successfully uploaded" +msgstr "Nombre d’images envoyées avec succès" + +msgid " upload failed" +msgstr " échec de l’envoi" + +msgid " upload config prase failed\n" +msgstr " échec de l’analyse de la configuration de l’envoi\n" + +msgid " No corresponding storage bucket\n" +msgstr " Aucun compartiment de stockage correspondant\n" + +msgid " can not be opened\n" +msgstr " ne peut pas être ouvert\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"Les problèmes suivants se sont produits lors du processus d’envoi des " +"images. Voulez-vous les ignorer ?\n" +"\n" + +msgid "info" +msgstr "info" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"Synchronisation des résultats d’impression. Veuillez réessayer dans quelques " +"secondes." + +msgid "Upload failed\n" +msgstr "Échec de l’envoi\n" + +msgid "obtaining instance_id failed\n" +msgstr "échec de l’obtention de l’instance_id\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Le résultat de votre commentaire ne peut pas être téléchargé pour certaines " +"raisons :\n" +"\n" +" code d’erreur : " + +msgid "error message: " +msgstr "message d’erreur : " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Souhaitez-vous être redirigé vers la page Web pour l’évaluation ?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Certaines de vos images n’ont pas pu être envoyées. Souhaitez-vous être " +"redirigé vers la page Web pour l’évaluation ?" + +msgid "You can select up to 16 images." +msgstr "Vous pouvez sélectionner jusqu’à 16 images." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"Au moins un enregistrement d’impression réussi de ce profil\n" +"d’impression est requis pour donner une note positive (4 ou 5 étoiles)." + +msgid "Status" +msgstr "État" + +msgid "Update" +msgstr "Mise à jour" + +msgid "Don't show again" +msgstr "Ne plus afficher" + +#, c-format, boost-format +msgid "%s error" +msgstr "Erreur %s" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s a rencontré une erreur" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s avertissement" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s a un avertissement" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s infos" + +#, c-format, boost-format +msgid "%s information" +msgstr "Information de %s" + +msgid "Skip" +msgstr "Sauter" + +msgid "Newer 3mf version" +msgstr "Nouvelle version 3mf" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" +"La version du fichier 3mf est en bêta et est plus récente que la version " +"actuelle d’Snapmaker Orca." + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "Si vous souhaitez essayer Snapmaker Orca Beta, vous pouvez cliquer sur" + +msgid "Download Beta Version" +msgstr "Télécharger la version bêta" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" +"La version du fichier 3mf est plus récente que la version actuelle " +"d’Snapmaker Orca" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" +"La mise à jour d’Snapmaker Orca permet d’activer toutes les fonctionnalités du " +"fichier 3mf." + +msgid "Current Version: " +msgstr "Version actuelle : " + +msgid "Latest Version: " +msgstr "Dernière version : " + +msgid "Not for now" +msgstr "Pas pour le moment" + +msgid "3D Mouse disconnected." +msgstr "Souris 3D déconnectée." + +msgid "Configuration can update now." +msgstr "La configuration peut maintenant être mise à jour." + +msgid "Detail." +msgstr "Détail." + +msgid "Integration was successful." +msgstr "L'intégration a réussi." + +msgid "Integration failed." +msgstr "L'intégration a échoué." + +msgid "Undo integration was successful." +msgstr "Annuler l'intégration a réussi." + +msgid "New network plug-in available." +msgstr "Nouveau plug-in réseau disponible." + +msgid "Details" +msgstr "Détails" + +msgid "New printer config available." +msgstr "Nouvelle configuration de l’imprimante disponible." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "L'annulation de l'intégration a échoué." + +msgid "Exporting." +msgstr "Exportation." + +msgid "Software has New version." +msgstr "Le logiciel a une nouvelle version." + +msgid "Goto download page." +msgstr "Allez sur la page de téléchargement." + +msgid "Open Folder." +msgstr "Ouvrir un répertoire." + +msgid "Safely remove hardware." +msgstr "Retirez le matériel en toute sécurité." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d objet a des supports personnalisés." +msgstr[1] " %1$d objets ont des supports personnalisés." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d L'objet est mis en couleur." +msgstr[1] "%1$d L'objets sont mis en couleur." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d objet a été chargé en tant que partie de l’objet coupé." +msgstr[1] "%1$d objets ont été chargés en tant que partie de l’objet coupé." + +msgid "ERROR" +msgstr "ERREUR" + +msgid "COMPLETED" +msgstr "Terminé" + +msgid "CANCELED" +msgstr "Annulé" + +msgid "Cancel upload" +msgstr "Annuler le téléversement" + +msgid "Jump to" +msgstr "Sauter à" + +msgid "Error:" +msgstr "Erreur:" + +msgid "Warning:" +msgstr "Avertissement:" + +msgid "Export successfully." +msgstr "Exportation réussie." + +msgid "Model file downloaded." +msgstr "Modèle téléchargé." + +msgid "Serious warning:" +msgstr "Avertissement sérieux :" + +msgid " (Repair)" +msgstr " (Réparation)" + +msgid " Click here to install it." +msgstr " Cliquez ici pour l'installer." + +msgid "WARNING:" +msgstr "ATTENTION :" + +msgid "Your model needs support ! Please make support material enable." +msgstr "" +"Votre modèle a besoin de supports ! Veuillez activer le matériau de support." + +msgid "Gcode path overlap" +msgstr "Chevauchement de chemin G-code" + +msgid "Support painting" +msgstr "Peindre les supports" + +msgid "Color painting" +msgstr "Mettre en couleur" + +msgid "Cut connectors" +msgstr "Connecteurs de découpe" + +msgid "Layers" +msgstr "Couches" + +msgid "Range" +msgstr "Zone" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"L'application ne peut pas fonctionner normalement car la version d'OpenGL " +"est inférieure à 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Veuillez mettre à jour le pilote de votre carte graphique." + +msgid "Unsupported OpenGL version" +msgstr "Version d'OpenGL non supportée" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "Impossible de charger les shaders : %s" + +msgid "Error loading shaders" +msgstr "Erreur lors du chargement des shaders" + +msgctxt "Layers" +msgid "Top" +msgstr "Du haut" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Du bas" + +msgid "Enable AI monitoring of printing" +msgstr "Activer la surveillance de l'impression par l'IA" + +msgid "Sensitivity of pausing is" +msgstr "La sensibilité de pause est" + +msgid "Enable detection of build plate position" +msgstr "Activation de la détection de la position du plateau" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"La balise de localisation de la plaque est détectée, l'impression est " +"interrompue si la balise n'est pas dans la plage prédéfinie." + +msgid "First Layer Inspection" +msgstr "Inspection de la Première Couche" + +msgid "Auto-recovery from step loss" +msgstr "Restauration automatique en cas de perte de pas" + +msgid "Allow Prompt Sound" +msgstr "Autoriser le son d’invite" + +msgid "Filament Tangle Detect" +msgstr "Détection de filament coincé" + +msgid "Nozzle Clumping Detection" +msgstr "Détection de l’encrassement de la buse" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" +"Vérifier si la buse est encrassée par du filament ou d’autres corps " +"étrangers." + +msgid "Nozzle Type" +msgstr "Type de buse" + +msgid "Stainless Steel" +msgstr "Acier inoxydable" + +msgid "Hardened Steel" +msgstr "Acier trempé" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Global" + +msgid "Objects" +msgstr "Objets" + +msgid "Advance" +msgstr "Avancé" + +msgid "Compare presets" +msgstr "Comparer les Préréglages" + +msgid "View all object's settings" +msgstr "Afficher tous les paramètres de l'objet" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "Retirer la plaque actuelle (si elle n'est pas la dernière)" + +msgid "Auto orient objects on current plate" +msgstr "Orientation automatique des objets sur le plateau actuel" + +msgid "Arrange objects on current plate" +msgstr "Organiser les objets sur le plateau actuel" + +msgid "Unlock current plate" +msgstr "Déverrouiller le plateau actuel" + +msgid "Lock current plate" +msgstr "Verrouiller le plateau actuel" + +msgid "Edit current plate name" +msgstr "Modifier le nom du plateau actuel" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "Personnaliser le plateau actuel" + +#, boost-format +msgid " plate %1%:" +msgstr " plaque %1% :" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Nom invalide, les caractères suivants ne sont pas autorisés :" + +msgid "Sliced Info" +msgstr "Informations de découpage" + +msgid "Used Filament (m)" +msgstr "Filament Utilisé (m)" + +msgid "Used Filament (mm³)" +msgstr "Filament Utilisé (mm³)" + +msgid "Used Filament (g)" +msgstr "Filament Utilisé (g)" + +msgid "Used Materials" +msgstr "Matériaux utilisés" + +msgid "Estimated time" +msgstr "Temps estimé" + +msgid "Filament changes" +msgstr "Changements de filaments" + +msgid "Click to edit preset" +msgstr "Cliquez pour éditer le préréglage" + +msgid "Connection" +msgstr "Connexion" + +msgid "Bed type" +msgstr "Type de plaque" + +msgid "Flushing volumes" +msgstr "Volumes de purge" + +msgid "Add one filament" +msgstr "Ajouter un filament" + +msgid "Remove last filament" +msgstr "Retirer le dernier filament" + +msgid "Synchronize filament list from AMS" +msgstr "Synchroniser la liste des filaments depuis l'AMS" + +msgid "Set filaments to use" +msgstr "Définir les filaments à utiliser" + +msgid "Search plate, object and part." +msgstr "Recherche de plaque, d'objet et de pièce." + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Pas de filaments AMS. Veuillez sélectionner une imprimante dans la page " +"\"Appareil\" pour charger les informations AMS." + +msgid "Sync filaments with AMS" +msgstr "Synchroniser les filaments avec AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"La synchronisation des filaments avec AMS supprimera tous les préréglages et " +"couleurs de filament actuellement sélectionnés. Voulez-vous continuer ?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Vous avez déjà effectué une synchronisation. Voulez-vous synchroniser " +"uniquement les modifications ou tout resynchroniser ?" + +msgid "Sync" +msgstr "Sync" + +msgid "Resync" +msgstr "Resync" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "" +"Il n'y a pas de filaments compatibles et la synchronisation n'est pas " +"effectuée." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Il existe des filaments inconnus mappés sur un préréglage générique. " +"Veuillez mettre à jour ou redémarrer Snapmaker Orca pour vérifier s'il existe " +"une mise à jour des préréglages système." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Voulez-vous enregistrer les modifications apportées à \"%1%\" ?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Démonté avec succès. Le périphérique %s(%s) peut maintenant être retiré en " +"toute sécurité de l'ordinateur." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "L'éjection du périphérique %s(%s) a échoué." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "Projet précédent non enregistré détecté, voulez-vous le restaurer ?" + +msgid "Restore" +msgstr "Restaurer" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"La température actuelle du plateau est relativement élevée. La buse peut se " +"boucher lors de l’impression de ce filament dans une enceinte fermée. " +"Veuillez ouvrir la porte avant et/ou retirer la vitre supérieure." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"La dureté de la buse requise par le filament est supérieure à la dureté par " +"défaut de la buse de l'imprimante. Veuillez remplacer la buse ou le " +"filament, sinon la buse s'usera ou s'endommagera." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"L’activation de la photographie timelapse traditionnelle peut provoquer des " +"imperfections de surface. Il est recommandé de passer en mode fluide." + +msgid "Expand sidebar" +msgstr "Agrandir la barre latérale" + +msgid "Collapse sidebar" +msgstr "Réduire la barre latérale" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Chargement du fichier : %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "" +"Le fichier 3mf n’est pas supporté par Snapmaker Orca, chargement des données de " +"géométrie uniquement." + +msgid "Load 3mf" +msgstr "Charger 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"La version %s du 3mf est plus récente que la version %s de %s. Les clés " +"suivantes ne sont pas reconnues:" + +msgid "You'd better upgrade your software.\n" +msgstr "Vous feriez mieux de mettre à jour votre logiciel.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"La version %s du 3mf est plus récente que la version %s de %s. Nous vous " +"suggérons de mettre à jour votre logiciel." + +msgid "Invalid values found in the 3mf:" +msgstr "Valeurs invalides trouvées dans le 3mf :" + +msgid "Please correct them in the param tabs" +msgstr "Veuillez les corriger dans les onglets de paramètres" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" +"Le 3mf a les G-codes modifiés suivants dans le filament ou les préréglages " +"de l'imprimante :" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Veuillez vous assurer que ces G-codes modifiés sont sûrs afin d'éviter tout " +"dommage à la machine !" + +msgid "Modified G-codes" +msgstr "G-codes modifiés" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" +"Le 3mf dispose de filaments personnalisés ou de préréglages d'imprimante :" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Veuillez vous assurer que les G-codes de ces préréglages sont sûrs afin " +"d'éviter d'endommager la machine !" + +msgid "Customized Preset" +msgstr "Préréglage personnalisé" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "" +"Le nom des composants à l'intérieur du fichier d'étape n'est pas au format " +"UTF8 !" + +msgid "The name may show garbage characters!" +msgstr "Le nom peut afficher des caractères inutiles !" + +msgid "Remember my choice." +msgstr "Mémoriser mon choix." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Échec du chargement du fichier \"%1%\". Une configuration invalide a été " +"trouvée." + +msgid "Objects with zero volume removed" +msgstr "Objets avec zéro volume supprimé" + +msgid "The volume of the object is zero" +msgstr "Le volume de l'objet est nul" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"L'objet du fichier %s est trop petit, et peut-être en mètres ou en pouces. " +"Voulez-vous mettre à l'échelle en millimètres ?" + +msgid "Object too small" +msgstr "Objet trop petit" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Ce fichier contient plusieurs objets positionnés à différentes hauteurs.\n" +"Au lieu de les considérer comme des objets multiples, le fichier \n" +"doit-il être chargé en tant qu'objet unique avec plusieurs parties ?" + +msgid "Multi-part object detected" +msgstr "Objet en plusieurs pièces détecté" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "" +"Charger ces fichiers en tant qu'objet unique avec plusieurs parties ?\n" + +msgid "Object with multiple parts was detected" +msgstr "Un objet en plusieurs parties a été détecté" + +msgid "The file does not contain any geometry data." +msgstr "Le fichier ne contient pas de données géométriques." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Votre objet semble trop grand. Voulez-vous le réduire pour l'adapter " +"automatiquement au plateau d'impression ?" + +msgid "Object too large" +msgstr "Objet trop grand" + +msgid "Export STL file:" +msgstr "Exporter le fichier STL :" + +msgid "Export AMF file:" +msgstr "Exporter le fichier AMF :" + +msgid "Save file as:" +msgstr "Enregistrer le fichier sous :" + +msgid "Export OBJ file:" +msgstr "Exporter le fichier OBJ :" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"Le fichier %s existe déjà\n" +"Voulez-vous le remplacer ?" + +msgid "Confirm Save As" +msgstr "Confirmer Enregistrer sous" + +msgid "Delete object which is a part of cut object" +msgstr "Supprimer l'objet qui fait partie de l'objet découpé" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Vous essayez de supprimer un objet qui fait partie d'un objet coupé.\n" +"Cette action va rompre la correspondance entre les objets coupés.\n" +"Après cela, la cohérence du modèle ne peut plus être garantie." + +msgid "The selected object couldn't be split." +msgstr "L'objet sélectionné n'a pas pu être divisé." + +msgid "Another export job is running." +msgstr "Une autre tâche d'exportation est en cours d'exécution." + +msgid "Unable to replace with more than one volume" +msgstr "Impossible de remplacer par plus d’un volume" + +msgid "Error during replace" +msgstr "Erreur lors du remplacement" + +msgid "Replace from:" +msgstr "Remplacer par :" + +msgid "Select a new file" +msgstr "Sélectionnez un nouveau fichier" + +msgid "File for the replace wasn't selected" +msgstr "Le fichier de remplacement n'a pas été sélectionné" + +msgid "Please select a file" +msgstr "Veuillez sélectionner un fichier" + +msgid "Do you want to replace it" +msgstr "Voulez-vous le remplacer ?" + +msgid "Message" +msgstr "Message" + +msgid "Reload from:" +msgstr "Recharger depuis :" + +msgid "Unable to reload:" +msgstr "Impossible de recharger :" + +msgid "Error during reload" +msgstr "Erreur lors du rechargement" + +msgid "There are warnings after slicing models:" +msgstr "Il y a des avertissements après le découpage des modèles :" + +msgid "warnings" +msgstr "avertissements" + +msgid "Invalid data" +msgstr "Donnée non valide" + +msgid "Slicing Canceled" +msgstr "Découpe annulée" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Découpe du plateau %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Veuillez résoudre les erreurs de découpage et republier." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Le plug-in réseau n'est pas détecté. Les fonctionnalités liées au réseau ne " +"sont pas disponibles." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Mode de prévisualisation:\n" +"Le fichier chargé contient uniquement du G-code, impossible d'accéder à la " +"page de Préparation" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" +"Vous pouvez conserver les préréglages modifiés dans le nouveau projet ou les " +"supprimer" + +msgid "Creating a new project" +msgstr "Créer un nouveau projet" + +msgid "Load project" +msgstr "Charger le projet" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Impossible d'enregistrer le projet.\n" +"Vérifiez si le dossier existe en ligne ou si le fichier de projet est ouvert " +"dans d'autres programmes." + +msgid "Save project" +msgstr "Sauvegarder le projet" + +msgid "Importing Model" +msgstr "Importation du modèle" + +msgid "prepare 3mf file..." +msgstr "préparation du fichier 3mf..." + +msgid "Download failed, unknown file format." +msgstr "Échec du téléchargement, format de fichier inconnu." + +msgid "downloading project ..." +msgstr "téléchargement du projet..." + +msgid "Download failed, File size exception." +msgstr "Le téléchargement a échoué, exception de taille de fichier." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "" +"Projet téléchargé à %d%%L’importation dans Bambu Studio a échoué. Veuillez " +"télécharger le fichier et l’importer manuellement." + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"L’importation vers Snapmaker Orca a échoué. Veuillez télécharger le fichier et " +"l’importer manuellement." + +msgid "Import SLA archive" +msgstr "Importer les archives SLA" + +msgid "The selected file" +msgstr "Le fichier sélectionné" + +msgid "does not contain valid gcode." +msgstr "ne contient pas de G-code valide." + +msgid "Error occurs while loading G-code file" +msgstr "Une erreur se produit lors du chargement du fichier G-code" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "Le chargement d’une archive ZIP se trouvant dans %1% a échoué." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "Échec de la décompression du fichier vers %1% : %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"Impossible de trouver le fichier décompressé dans %1%. La décompression du " +"fichier a échoué." + +msgid "Drop project file" +msgstr "Déposer le fichier de projet" + +msgid "Please select an action" +msgstr "Veuillez sélectionner une action" + +msgid "Open as project" +msgstr "Ouvrir en tant que projet" + +msgid "Import geometry only" +msgstr "Importer la géométrie uniquement" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Un seul fichier G-code peut être ouvert à la fois." + +msgid "G-code loading" +msgstr "Chargement du G-code" + +msgid "G-code files can not be loaded with models together!" +msgstr "" +"Les fichiers G-code ne peuvent pas être chargés avec des modèles ensemble !" + +msgid "Can not add models when in preview mode!" +msgstr "Impossible d'ajouter des modèles en mode aperçu !" + +msgid "All objects will be removed, continue?" +msgstr "Tous les objets seront supprimés, continuer ?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"Le projet en cours comporte des modifications non enregistrées, enregistrez-" +"les avant de continuer ?" + +msgid "Number of copies:" +msgstr "Nombre de copies:" + +msgid "Copies of the selected object" +msgstr "Copies de l'objet sélectionné" + +msgid "Save G-code file as:" +msgstr "Sauvegarder le fichier G-code en tant que :" + +msgid "Save SLA file as:" +msgstr "Enregistrer le fichier SLA sous :" + +msgid "The provided file name is not valid." +msgstr "Le nom de fichier fourni n’est pas valide." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "" +"Les caractères suivants ne sont pas autorisés par un système de fichiers " +"FAT :" + +msgid "Save Sliced file as:" +msgstr "Enregistrer le fichier découpé sous :" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"Le fichier %s a été envoyé vers l'espace de stockage de l'imprimante et peut " +"être visualisé sur l'imprimante." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Impossible d’effectuer une opération booléenne sur les mailles du modèle. " +"Seules les parties positives seront conservées. Vous pouvez corriger les " +"mailles et réessayer." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Raison : la partie « %1% » est vide." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Raison : la partie « %1% » n’est pas liée à un volume." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Raison : la partie « %1% » s’est auto-introduite." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Raison : « %1% » et une autre partie n’ont pas d’intersection." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Impossible d'effectuer une opération booléenne sur les maillages du modèle. " +"Seules les parties positives seront exportées." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"Êtes-vous sûr de vouloir stocker les SVG originaux avec leurs chemins " +"d'accès locaux dans le fichier 3MF ?\n" +"Si vous cliquez sur \"NON\", tous les SVG du projet ne seront plus " +"modifiables." + +msgid "Private protection" +msgstr "Protection privée" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" +"L’imprimante est-elle prête ? Le plateau d’impression est-il en place, vide " +"et propre ?" + +msgid "Upload and Print" +msgstr "Envoyer & Imprimer" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Imprimer par objet :\n" +"Nous vous suggérons d'utiliser la disposition automatique pour éviter les " +"collisions lors de l'impression." + +msgid "Send G-code" +msgstr "Envoyer le G-code" + +msgid "Send to printer" +msgstr "Envoyer à l'imprimante" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" +"Les supports personnalisés et la peinture de couleur ont été retirés avant " +"la réparation." + +msgid "Optimize Rotation" +msgstr "Optimiser la rotation" + +msgid "Invalid number" +msgstr "Numéro invalide" + +msgid "Plate Settings" +msgstr "Paramètres de la plaque" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Nombre de pièces actuellement sélectionnées : %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Nombre d’objets actuellement sélectionnés : %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Nom de la pièce : %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Nom de l'objet : %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Taille : %1% x %2% x %3% dans\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Taille : %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Volume : %1% en³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Volume : %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Triangles : %1%\n" + +msgid "Tips:" +msgstr "Astuces:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"La fonctionnalité \"Réparer le modèle\" n'est actuellement disponible que " +"sur Windows. Veuillez réparer le modèle sur Snapmaker Orca (Windows) ou avec " +"des logiciels de CAO." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"La plaque% d : %s n'est pas suggéré pour l'utilisation du filament " +"d'impression %s(%s). Si vous souhaitez toujours effectuer ce travail " +"d'impression, veuillez régler la température du plateau de ce filament sur " +"un nombre différent de zéro." + +msgid "Switching the language requires application restart.\n" +msgstr "Le changement de langue nécessite le redémarrage de l'application.\n" + +msgid "Do you want to continue?" +msgstr "Voulez-vous continuer?" + +msgid "Language selection" +msgstr "Sélection de la langue" + +msgid "Switching application language while some presets are modified." +msgstr "" +"Changer la langue de l'application pendant que certains préréglages sont " +"modifiés." + +msgid "Changing application language" +msgstr "Changer la langue de l'application" + +msgid "Changing the region will log out your account.\n" +msgstr "Si vous changez de région, vous serez déconnecté de votre compte.\n" + +msgid "Region selection" +msgstr "Choix de la région" + +msgid "Second" +msgstr "Seconde" + +msgid "Browse" +msgstr "Parcourir" + +msgid "Choose Download Directory" +msgstr "Choisissez le répertoire de téléchargement" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "Paramètres généraux" + +msgid "Asia-Pacific" +msgstr "Asie-Pacifique" + +msgid "China" +msgstr "Chine" + +msgid "Europe" +msgstr "Europe" + +msgid "North America" +msgstr "Amérique du Nord" + +msgid "Others" +msgstr "Autre" + +msgid "Login Region" +msgstr "Région d'origine" + +msgid "Stealth Mode" +msgstr "Mode privé" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" +"Cette fonction interrompt la transmission des données vers les services en " +"ligne de Bambu. Les utilisateurs qui n’utilisent pas de machines BBL ou qui " +"utilisent uniquement le mode LAN peuvent activer cette fonction en toute " +"sécurité." + +msgid "Enable network plugin" +msgstr "Activer le plug-in réseau" + +msgid "Check for stable updates only" +msgstr "Vérifier les mises à jour stables uniquement" + +msgid "Metric" +msgstr "Métrique" + +msgid "Imperial" +msgstr "Impérial" + +msgid "Units" +msgstr "Unités" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "Autoriser une seule instance d’Snapmaker Orca" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"Sous OSX, il n’y a toujours qu’une seule instance de l’application en cours " +"d’exécution par défaut. Cependant, il est possible de lancer plusieurs " +"instances de la même application à partir de la ligne de commande. Dans ce " +"cas, ces paramètres n’autorisent qu’une seule instance." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" +"Si cette option est activée, lorsque vous démarrez Snapmaker Orca et qu’une " +"autre instance du même Snapmaker Orca est déjà en cours d’exécution, cette " +"instance sera réactivée à la place." + +msgid "Home" +msgstr "Accueil" + +msgid "Default Page" +msgstr "Page par défaut" + +msgid "Set the page opened on startup." +msgstr "Définit la page ouverte au démarrage." + +msgid "Touchpad" +msgstr "Pavé tactile" + +msgid "Camera style" +msgstr "Style de caméra" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"Sélectionner le style de navigation de l’appareil photo.\n" +"Par défaut : LMB+mouvement pour la rotation, RMB/MMB+mouvement pour le " +"panoramique.\n" +"Pavé tactile : Alt+mouvement pour la rotation, Shift+mouvement pour le " +"panoramique." + +msgid "Zoom to mouse position" +msgstr "Zoom sur la position de la souris" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Zoomez sur la position du pointeur de la souris dans la vue 3D, plutôt que " +"sur le centre de la fenêtre 2D." + +msgid "Use free camera" +msgstr "Utiliser la caméra libre" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Si activée, utilise la caméra libre. Si désactivée, utilise la caméra " +"contrainte." + +msgid "Reverse mouse zoom" +msgstr "Inverser le zoom de la souris" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" +"Si cette option est activée, elle inverse le sens du zoom avec la molette de " +"la souris." + +msgid "Show splash screen" +msgstr "Afficher l'écran de démarrage" + +msgid "Show the splash screen during startup." +msgstr "Afficher l’écran de démarrage au démarrage." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Afficher la notification \"Astuce du jour\" après le démarrage" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "" +"Si cette option est activée, des conseils utiles s'affichent au démarrage." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "Volumes de purge : Auto-calcul à chaque changement de couleur." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "" +"Si cette option est activée, le calcul se fera automatiquement à chaque " +"changement de couleur." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "Volumes de purge : Calcul automatique à chaque changement de filament." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "" +"Si cette option est activée, le calcul s’effectue automatiquement à chaque " +"changement de filament." + +msgid "Remember printer configuration" +msgstr "Mémoriser la configuration de l’imprimante" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" +"Si cette option est activée, Orca se souviendra de la configuration du " +"filament/processus pour chaque imprimante et la modifiera automatiquement." + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "Gestion multi-appareils (prend effet après le redémarrage d’Orca)." + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"Si cette option est activée, vous pouvez envoyer une tâche à plusieurs " +"appareils en même temps et gérer plusieurs appareils." + +msgid "Network" +msgstr "Réseau" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Synchronisation automatique des pré-réglages utilisateur (Imprimante/" +"Filament/Traitement)" + +msgid "User Sync" +msgstr "Synchronisation utilisateur" + +msgid "Update built-in Presets automatically." +msgstr "Mettre à jour automatiquement les préréglages intégrés." + +msgid "System Sync" +msgstr "Synchronisation du système" + +msgid "Clear my choice on the unsaved presets." +msgstr "Efface mon choix sur les préréglages non enregistrés." + +msgid "Associate files to Snapmaker Orca" +msgstr "Associer des fichiers à Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Associer les fichiers .3mf à Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Si activé, définit Snapmaker Orca comme application par défaut pour ouvrir les " +"fichiers .3mf" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Associer les fichiers .stl à Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Si activé, définit Snapmaker Orca comme application par défaut pour ouvrir les " +"fichiers .stl" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Associer les fichiers .step/.stp à Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Si activé, définit Snapmaker Orca comme application par défaut pour ouvrir les " +"fichiers .step/.stp" + +msgid "Associate web links to Snapmaker Orca" +msgstr "Associer des liens web à Snapmaker Orca" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "Associer des URL à Snapmaker Orca" + +msgid "Maximum recent projects" +msgstr "Projets récents maximum" + +msgid "Maximum count of recent projects" +msgstr "Nombre maximal de projets récents" + +msgid "Clear my choice on the unsaved projects." +msgstr "Efface mon choix sur les projets non enregistrés." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "" +"Pas d'avertissement lors du chargement de 3MF avec des G-codes modifiés" + +msgid "Auto-Backup" +msgstr "Sauvegarde automatique" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Sauvegardez votre projet périodiquement pour faciliter la restauration après " +"un plantage occasionnel." + +msgid "every" +msgstr "chaque" + +msgid "The peroid of backup in seconds." +msgstr "Période de sauvegarde en secondes." + +msgid "Downloads" +msgstr "Téléchargements" + +msgid "Dark Mode" +msgstr "Mode Sombre" + +msgid "Enable Dark mode" +msgstr "Activer le mode Sombre" + +msgid "Develop mode" +msgstr "Mode Développeur" + +msgid "Skip AMS blacklist check" +msgstr "Ignorer la vérification de la liste noire AMS" + +msgid "Home page and daily tips" +msgstr "Page d'accueil et Astuces quotidiennes" + +msgid "Show home page on startup" +msgstr "Afficher la page d'accueil au démarrage" + +msgid "Sync settings" +msgstr "Paramètres de synchronisation" + +msgid "User sync" +msgstr "Synchronisation utilisateur" + +msgid "Preset sync" +msgstr "Synchronisation préréglée" + +msgid "Preferences sync" +msgstr "Synchronisation des préférences" + +msgid "View control settings" +msgstr "Afficher les paramètres de contrôle" + +msgid "Rotate of view" +msgstr "Rotation de la vue" + +msgid "Move of view" +msgstr "Déplacement de vue" + +msgid "Zoom of view" +msgstr "Vue agrandie" + +msgid "Other" +msgstr "Autre" + +msgid "Mouse wheel reverses when zooming" +msgstr "La molette de la souris s'inverse lors du zoom" + +msgid "Enable SSL(MQTT)" +msgstr "Activer SSL (MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Activer SSL (FTP)" + +msgid "Internal developer mode" +msgstr "Mode développeur interne" + +msgid "Log Level" +msgstr "Niveau de journalisation" + +msgid "fatal" +msgstr "mortel" + +msgid "error" +msgstr "erreur" + +msgid "warning" +msgstr "attention" + +msgid "debug" +msgstr "déboguer" + +msgid "trace" +msgstr "tracé" + +msgid "Host Setting" +msgstr "Paramètres de l'hôte" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "Hôte DEV : api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "Hôte AQ : api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "Hébergeur PRE : api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Hôte du produit" + +msgid "debug save button" +msgstr "bouton d'enregistrement de débogage" + +msgid "save debug settings" +msgstr "enregistrer les paramètres de débogage" + +msgid "DEBUG settings have saved successfully!" +msgstr "Les paramètres DEBUG ont été enregistrés avec succès !" + +msgid "Switch cloud environment, Please login again!" +msgstr "L'environnement Cloud a changé, veuillez vous reconnecter !" + +msgid "System presets" +msgstr "Préréglages système" + +msgid "User presets" +msgstr "Préréglages utilisateur" + +msgid "Incompatible presets" +msgstr "Préréglages incompatibles" + +msgid "AMS filaments" +msgstr "Filaments AMS" + +msgid "Click to pick filament color" +msgstr "Cliquez pour choisir la couleur du filament" + +msgid "Please choose the filament colour" +msgstr "Veuillez choisir la couleur du filament" + +msgid "Add/Remove presets" +msgstr "Ajouter/Supprimer des préréglages" + +msgid "Edit preset" +msgstr "Modifier le préréglage" + +msgid "Project-inside presets" +msgstr "Préréglages intégrés au projet" + +msgid "Add/Remove filaments" +msgstr "Ajouter/Supprimer filament" + +msgid "Add/Remove materials" +msgstr "Ajouter/Supprimer des matériaux" + +msgid "Select/Remove printers(system presets)" +msgstr "Sélectionner/supprimer des imprimantes (préréglages du système)" + +msgid "Create printer" +msgstr "Créer une imprimante" + +msgid "The selected preset is null!" +msgstr "Le préréglage sélectionné est invalide !" + +msgid "End" +msgstr "Fin" + +msgid "Customize" +msgstr "Personnaliser" + +msgid "Other layer filament sequence" +msgstr "Séquence du filament de l’autre couche" + +msgid "Please input layer value (>= 2)." +msgstr "Veuillez saisir la valeur de la couche (>= 2)." + +msgid "Plate name" +msgstr "Nom de la plaque" + +msgid "Same as Global Print Sequence" +msgstr "Identique à la séquence d'impression globale" + +msgid "Print sequence" +msgstr "Séquence d'impression" + +msgid "Same as Global" +msgstr "Identique à Global" + +msgid "Disable" +msgstr "Désactiver" + +msgid "Spiral vase" +msgstr "Vase spirale" + +msgid "First layer filament sequence" +msgstr "Séquence d’impression de la première couche" + +msgid "Same as Global Plate Type" +msgstr "Identique au type de plaque général" + +msgid "Same as Global Bed Type" +msgstr "Identique au type de plateau général" + +msgid "By Layer" +msgstr "Par Couche" + +msgid "By Object" +msgstr "Par Objet" + +msgid "Accept" +msgstr "Accepter" + +msgid "Log Out" +msgstr "Déconnexion" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "" +"Découpez toutes les couches pour obtenir une estimation du temps et du " +"filament" + +msgid "Packing project data into 3mf file" +msgstr "Compression des données du projet dans un fichier 3mf" + +msgid "Uploading 3mf" +msgstr "Téléversement 3mf" + +msgid "Jump to model publish web page" +msgstr "Accéder à la page internet de publication des modèles" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "" +"Remarque : La préparation peut prendre plusieurs minutes. Veuillez patienter." + +msgid "Publish" +msgstr "Publier" + +msgid "Publish was cancelled" +msgstr "La publication a été annulée" + +msgid "Slicing Plate 1" +msgstr "Découper Plaque 1" + +msgid "Packing data to 3mf" +msgstr "Collecte des données 3mf" + +msgid "Jump to webpage" +msgstr "Ouvrir la page internet" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Enregistrer %s sous" + +msgid "User Preset" +msgstr "Préréglage utilisateur" + +msgid "Preset Inside Project" +msgstr "Projeter à l'intérieur du préréglage" + +msgid "Name is unavailable." +msgstr "Le nom n'est pas disponible." + +msgid "Overwrite a system profile is not allowed" +msgstr "Remplacer un profil système n'est pas autorisé" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "Le préréglage \"%1%\" existe déjà." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "" +"Le préréglage \"%1%\" existe déjà et est incompatible avec l'imprimante " +"actuelle." + +msgid "Please note that saving action will replace this preset" +msgstr "Veuillez noter que l'action d'enregistrement remplacera ce préréglage" + +msgid "The name cannot be the same as a preset alias name." +msgstr "Le nom ne peut pas être le même qu'un nom d'alias prédéfini." + +msgid "Save preset" +msgstr "Enregistrer le préréglage" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Copie" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "L'imprimante \"%1%\" est sélectionnée avec le préréglage \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "" +"Veuillez choisir une action avec le préréglage \"%1%\" après " +"l'enregistrement." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Pour \"%1%\", remplacez \"%2%\" par \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Pour \"%1%\", ajoutez \"%2%\" comme nouveau préréglage" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Passez simplement à \"%1%\"" + +msgid "Task canceled" +msgstr "Tâche annulée" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Rechercher" + +msgid "My Device" +msgstr "Mon appareil" + +msgid "Other Device" +msgstr "Autre appareil" + +msgid "Online" +msgstr "En ligne" + +msgid "Input access code" +msgstr "Saisir le code d'accès" + +msgid "Can't find my devices?" +msgstr "Vous ne trouvez pas d'appareils ?" + +msgid "Log out successful." +msgstr "Déconnexion réussie." + +msgid "Busy" +msgstr "Occupé" + +msgid "Bambu Cool Plate" +msgstr "Plateau Cool Plate" + +msgid "PLA Plate" +msgstr "Plaque PLA" + +msgid "Bambu Engineering Plate" +msgstr "Bambu Engineering Plate" + +msgid "Bambu Smooth PEI Plate" +msgstr "Bambu Smooth PEI Plate" + +msgid "High temperature Plate" +msgstr "Plateau haute température" + +msgid "Bambu Textured PEI Plate" +msgstr "Bambu Textured PEI Plate" + +msgid "Send print job to" +msgstr "Envoyer le travail d'impression à" + +msgid "Flow Dynamics Calibration" +msgstr "Calibration du débit" + +msgid "Click here if you can't connect to the printer" +msgstr "Connexion impossible à l’imprimante" + +msgid "send completed" +msgstr "envoi terminé" + +msgid "Error code" +msgstr "Code erreur" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "" +"Pas de connexion au cloud, seules les imprimantes en mode LAN sont affichées" + +msgid "Connecting to server" +msgstr "Connexion au serveur" + +msgid "Synchronizing device information" +msgstr "Synchronisation des informations sur l'appareil" + +msgid "Synchronizing device information time out" +msgstr "Expiration du délai de synchronisation des informations sur l'appareil" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"Impossible d'envoyer une tâche d'impression pendant la mise à jour du " +"firmware de l'imprimante" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"L'imprimante exécute des instructions. Veuillez recommencer l'impression " +"après la fin de l'exécution." + +msgid "The printer is busy on other print job" +msgstr "L'imprimante est occupée par un autre travail d'impression." + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Le filament %s dépasse le nombre d'emplacements AMS. Veuillez mettre à jour " +"le firmware de l'imprimante pour qu'il prenne en charge l'attribution des " +"emplacements AMS." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Le nombre de filaments dépasse le nombre d'emplacements AMS. Veuillez mettre " +"à jour le firmware de l'imprimante pour qu'il prenne en charge l'attribution " +"des emplacements AMS." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"L'affectation des filaments aux emplacements de l'AMS a été réalisée. Vous " +"pouvez cliquer sur un filament ci-dessus pour modifier sa correspondance " +"avec l'emplacement AMS." + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Veuillez cliquer sur chaque filament ci-dessus pour indiquer son emplacement " +"AMS avant d'envoyer la tâche d'impression." + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"Le filament %s ne correspond pas au filament de l'emplacement AMS %s. " +"Veuillez mettre à jour le firmware de l'imprimante pour qu'il prenne en " +"charge l'attribution des emplacements AMS." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Le filament ne correspond pas au filament du slot AMS. Veuillez mettre à " +"jour le firmware de l'imprimante pour qu'il prenne en charge l'attribution " +"des emplacements AMS." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"Le firmware de l’imprimante ne prend en charge que le mappage séquentiel du " +"filament => emplacement AMS." + +msgid "An SD card needs to be inserted before printing." +msgstr "Une carte SD doit être insérée avant l'impression." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"L’imprimante sélectionnée (%s) est incompatible avec le profil d’imprimante " +"choisi dans le logiciel de découpe (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "Une carte SD doit être insérée pour enregistrer un timelapse." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Impossible d'envoyer la tâche d'impression à une imprimante dont le firmware " +"doit être mis à jour." + +msgid "Cannot send the print job for empty plate" +msgstr "Impossible d'envoyer une tâche d'impression d'un plateau vide." + +msgid "This printer does not support printing all plates" +msgstr "" +"Cette imprimante ne prend pas en charge l'impression de toutes les plaques" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"Lorsque vous activez le mode vase, les machines avec une structure I3 ne " +"généreront pas de vidéos timelapse." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"La fonction Timelapse n'est pas prise en charge car la séquence d'impression " +"est réglée sur \"Par objet\"." + +msgid "Errors" +msgstr "Erreurs" + +msgid "Please check the following:" +msgstr "Veuillez vérifier les points suivants :" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"Le type d'imprimante sélectionné lors de la génération du G-Code n'est pas " +"cohérent avec l'imprimante actuellement sélectionnée. Il est recommandé " +"d'utiliser le même type d'imprimante pour la découpe." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"Il y a quelques filaments inconnus dans les association avec l'AMS. Veuillez " +"vérifier s'il s'agit des filaments nécessaires. S'ils sont corrects, cliquez " +"sur \"Confirmer\" pour lancer l'impression." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "buse dans le préréglage : %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "buse mémorisée : %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Le diamètre de votre buse dans le fichier découpé ne correspond pas à la " +"buse mémorisée. Si vous avez changé de buse récemment, veuillez aller dans " +"Périphérique > Pièces de l’imprimante pour modifier les paramètres." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"L’impression d’un matériau à haute température (matériau %s) avec %s peut " +"endommager la buse." + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "" +"Veuillez corriger l’erreur ci-dessus, sinon l’impression ne pourra pas se " +"poursuivre." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Cliquez sur le bouton de confirmation si vous souhaitez continuer à imprimer." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Connexion à l’imprimante. Impossible d’annuler pendant le processus de " +"connexion." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Attention à l’utilisation ! La calibration du débit sur le plateau PEI " +"texturé double face peut échouer en raison de la surface texturée." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Calibration automatique du débit à l’aide du Micro-Lidar" + +msgid "Modifying the device name" +msgstr "Modification du nom de l'appareil" + +msgid "Bind with Pin Code" +msgstr "Relier avec le code pin" + +msgid "Send to Printer SD card" +msgstr "Envoyer sur la carte SD de l'imprimante" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "" +"Impossible d'envoyer la tâche d'impression lorsque la mise à niveau est en " +"cours." + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "" +"L’imprimante sélectionnée est incompatible avec les préréglages d’imprimante " +"choisis." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "" +"Il est nécessaire d'insérer une carte MicroSD avant d'envoyer les données " +"vers l'imprimante." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "L'imprimante doit être sur le même réseau local que Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "L'imprimante ne prend pas en charge l'envoi vers la carte SD." + +msgid "Slice ok." +msgstr "Découpe terminée." + +msgid "View all Daily tips" +msgstr "Voir toutes les Astuces quotidiennes" + +msgid "Failed to create socket" +msgstr "Échec de la création du socket" + +msgid "Failed to connect socket" +msgstr "Impossible de connecter le socket" + +msgid "Failed to publish login request" +msgstr "Échec de la publication de la demande de connexion" + +msgid "Get ticket from device timeout" +msgstr "Dépassement du délai d'obtention d'un ticket depuis l'appareil" + +msgid "Get ticket from server timeout" +msgstr "Dépassement du délai d'obtention d'un ticket depuis le serveur" + +msgid "Failed to post ticket to server" +msgstr "Échec de l'envoi du ticket au serveur" + +msgid "Failed to parse login report reason" +msgstr "Échec de l'analyse du rapport de connexion" + +msgid "Receive login report timeout" +msgstr "Délai d'expiration du rapport de connexion" + +msgid "Unknown Failure" +msgstr "Erreur inconnue" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Veuillez trouver le code pin dans la page Compte sur l’écran de " +"l’imprimante,\n" +" et tapez le code pin ci-dessous." + +msgid "Can't find Pin Code?" +msgstr "Vous ne trouvez pas le code pin ?" + +msgid "Pin Code" +msgstr "Code pin" + +msgid "Binding..." +msgstr "Liaison…" + +msgid "Please confirm on the printer screen" +msgstr "Veuillez confirmer sur l’écran de l’imprimante" + +msgid "Log in failed. Please check the Pin Code." +msgstr "La connexion a échoué. Veuillez vérifier le code pin." + +msgid "Log in printer" +msgstr "Connectez-vous à l'imprimante" + +msgid "Would you like to log in this printer with current account?" +msgstr "" +"Souhaitez-vous vous connecter à cette imprimante avec un compte courant ?" + +msgid "Check the reason" +msgstr "Vérifier le motif" + +msgid "Read and accept" +msgstr "Lire et accepter" + +msgid "Terms and Conditions" +msgstr "Termes et conditions" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Nous vous remercions d'avoir acheté un produit Bambu Lab. Avant d'utiliser " +"votre appareil Bambu Lab, veuillez lire les conditions générales. En " +"cliquant pour confirmer que vous acceptez d'utiliser votre appareil Bambu " +"Lab, vous vous engagez à respecter la politique de confidentialité et les " +"conditions d'utilisation (collectivement, les \"conditions\"). Si vous ne " +"respectez pas ou n'acceptez pas la politique de confidentialité de Bambu " +"Lab, veuillez ne pas utiliser les produits et services de Bambu Lab." + +msgid "and" +msgstr "et" + +msgid "Privacy Policy" +msgstr "Politique de Confidentialité" + +msgid "We ask for your help to improve everyone's printer" +msgstr "" +"Nous vous demandons de nous aider à améliorer l'imprimante de toute la " +"communauté" + +msgid "Statement about User Experience Improvement Program" +msgstr "" +"Déclaration sur le programme d'amélioration de l'expérience utilisateur" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"Au sein de la communauté de l'impression 3D, nous apprenons des succès et " +"des échecs de chacun pour ajuster nos propres paramètres et réglages de " +"découpage. %s suit le même principe et utilise l'apprentissage automatique " +"pour améliorer ses performances en fonction des succès et des échecs du " +"grand nombre d'impressions effectuées par nos utilisateurs. Nous entraînons " +"%s à devenir plus intelligent en leur fournissant les données du monde réel. " +"Si vous le souhaitez, ce service accèdera aux informations de vos journaux " +"d'erreurs et de vos journaux d'utilisation, qui peuvent inclure des " +"informations décrites dans la Politique de confidentialité. Nous ne " +"collecterons aucune donnée personnelle permettant d'identifier une personne " +"directement ou indirectement, y compris, mais sans s'y limiter, les noms, " +"les adresses, les informations de paiement ou les numéros de téléphone. En " +"activant ce service, vous acceptez ces conditions et la déclaration " +"concernant la politique de confidentialité." + +msgid "Statement on User Experience Improvement Plan" +msgstr "" +"Déclaration concernant le plan d'amélioration de l'expérience utilisateur" + +msgid "Log in successful." +msgstr "Connexion réussie." + +msgid "Log out printer" +msgstr "Déconnecter l'imprimante" + +msgid "Would you like to log out the printer?" +msgstr "Souhaitez-vous déconnecter l'imprimante ?" + +msgid "Please log in first." +msgstr "S'il vous plait Connectez-vous d'abord." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "" +"Un problème est survenu lors de la connexion à l'imprimante. Veuillez " +"réessayer." + +msgid "Failed to log out." +msgstr "Échec de la déconnexion." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Enregistrer l'état actuel %s" + +msgid "Delete this preset" +msgstr "Supprimer ce préréglage" + +msgid "Search in preset" +msgstr "Rechercher dans le préréglage" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Cliquez pour rétablir tous les paramètres au dernier préréglage enregistré." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"Une tour de purge est requise pour le mode Timeplase fluide. Il peut y avoir " +"des défauts sur le modèle sans tour de purge. Êtes-vous sûr de vouloir la " +"désactiver ?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"Une tour de purge est requise pour un mode timelapse fluide. Il peut y avoir " +"des défauts sur le modèle sans tour de purge. Voulez-vous activer la " +"désactiver?" + +msgid "Still print by object?" +msgstr "Vous imprimez toujours par objet ?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Nous avons ajouté un style expérimental « Arborescent Fin » qui offre un " +"volume de support plus petit mais également une solidité plus faible.\n" +"Nous recommandons de l'utiliser avec : 0 couches d'interface, 0 distance " +"supérieure, 2 parois." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Vous souhaitez modifier ces paramètres automatiquement ? \n" +"Oui - Modifiez ces paramètres automatiquement\n" +"Non - Ne modifiez pas ces paramètres pour moi" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Pour les styles \"Arborescent fort\" et \"Arborescent Hybride\", nous " +"recommandons les réglages suivants : au moins 2 couches d'interface, au " +"moins 0,1 mm de distance entre le haut et le z ou l'utilisation de matériaux " +"de support sur l'interface." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"Lorsque vous utilisez du matériel de support pour l'interface de support, " +"nous vous recommandons d'utiliser les paramètres suivants :\n" +"Distance Z supérieure nulle, espacement d'interface nul, motif concentrique " +"et désactivation de la hauteur indépendante de la couche de support" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"L’activation de cette option modifie la forme du modèle. Si votre impression " +"nécessite des dimensions précises ou fait partie d’un assemblage, il est " +"important de vérifier si ce changement de géométrie a un impact sur la " +"fonctionnalité de votre impression." + +msgid "Are you sure you want to enable this option?" +msgstr "Êtes-vous sûr de vouloir activer cette option ?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"La hauteur du calque est trop faible.\n" +"Elle sera définie à min_layer_height\n" +"\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"La hauteur de la couche dépasse la limite fixée dans Paramètres de " +"l’imprimante -> Extrudeur -> Limites de la hauteur de la couche, ce qui peut " +"entraîner des problèmes de qualité d’impression." + +msgid "Adjust to the set range automatically? \n" +msgstr "S’ajuster automatiquement à la plage définie ? \n" + +msgid "Adjust" +msgstr "Ajuster" + +msgid "Ignore" +msgstr "Ignorer" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Fonction expérimentale : Rétracter et couper le filament à une plus grande " +"distance lors des changements de filament afin de minimiser le rinçage. Bien " +"que cela puisse réduire considérablement le rinçage, cela peut également " +"augmenter le risque de bouchage des buses ou d’autres complications " +"d’impression." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Fonction expérimentale : Rétracter et couper le filament à une plus grande " +"distance lors des changements de filament afin de minimiser l’affleurement." +"Bien que cela puisse réduire sensiblement l’affleurement, cela peut " +"également augmenter le risque d’obstruction des buses ou d’autres " +"complications d’impression.Veuillez utiliser le dernier micrologiciel de " +"l’imprimante." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"Lorsque vous enregistrez un timelapse sans tête d’outil, il est recommandé " +"d’ajouter une \"Tour d’essuyage timelapse\".\n" +"en faisant un clic droit sur un emplacement vide sur le plateau et en " +"choisissant \"Ajouter Primitive\"-> \"Tour d’essuyage timelapse\"." + +msgid "Line width" +msgstr "Largeur de ligne" + +msgid "Seam" +msgstr "Couture" + +msgid "Precision" +msgstr "Précision" + +msgid "Wall generator" +msgstr "Générateur de paroi" + +msgid "Walls and surfaces" +msgstr "Parois et surfaces" + +msgid "Bridging" +msgstr "Ponts" + +msgid "Overhangs" +msgstr "Surplombs" + +msgid "Walls" +msgstr "Parois" + +msgid "Top/bottom shells" +msgstr "Coques supérieures/inférieures" + +msgid "Initial layer speed" +msgstr "Vitesse de couche initiale" + +msgid "Other layers speed" +msgstr "Autres couches" + +msgid "Overhang speed" +msgstr "Vitesse de surplomb" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Il s'agit de la vitesse pour différents degrés de surplomb. Les degrés de " +"surplomb sont exprimés en pourcentage de la largeur de la ligne. 0 vitesse " +"signifie qu'il n'y a pas de ralentissement pour la plage de degrés du " +"surplomb et que la vitesse par défaut des périmètres est utilisée" + +msgid "Bridge" +msgstr "Pont" + +msgid "Set speed for external and internal bridges" +msgstr "Définir la vitesse pour les ponts externes et internes" + +msgid "Travel speed" +msgstr "Vitesse de déplacement" + +msgid "Acceleration" +msgstr "Accélération" + +msgid "Jerk(XY)" +msgstr "Jerk (X-Y)" + +msgid "Raft" +msgstr "Radeau" + +msgid "Support filament" +msgstr "Filament de support" + +msgid "Tree supports" +msgstr "Supports arborescents" + +msgid "Skirt" +msgstr "Jupe" + +msgid "Prime tower" +msgstr "Tour de purge" + +msgid "Special mode" +msgstr "Mode spécial" + +msgid "G-code output" +msgstr "Sortie G-code" + +msgid "Post-processing Scripts" +msgstr "Scripts de post-traitement" + +msgid "Notes" +msgstr "Notes" + +msgid "Frequent" +msgstr "Fréquent" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"La ligne suivante %s contient des mots clés réservés. Veuillez le supprimer, " +"ou il battra la visualisation du G-code et l'estimation du temps " +"d'impression." +msgstr[1] "" +"La ligne suivante %s contient des mots clés réservés. Veuillez le supprimer, " +"ou il battra la visualisation du G-code et l'estimation du temps " +"d'impression." + +msgid "Reserved keywords found" +msgstr "Mots clés réservés trouvés" + +msgid "Setting Overrides" +msgstr "Forçage des réglages" + +msgid "Retraction" +msgstr "Rétraction" + +msgid "Basic information" +msgstr "Informations de base" + +msgid "Recommended nozzle temperature" +msgstr "Température de buse recommandée" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Plage de température de buse recommandée pour ce filament. 0 signifie pas " +"d'ensemble" + +msgid "Print chamber temperature" +msgstr "Température du caisson d’impression" + +msgid "Print temperature" +msgstr "Température d'impression" + +msgid "Nozzle" +msgstr "Buse" + +msgid "Nozzle temperature when printing" +msgstr "Température de la buse lors de l'impression" + +msgid "Cool plate" +msgstr "Plaque Cool plate" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Il s'agit de la température du plateau lorsque le plateau froid (\"Cool plate" +"\") est installé. Une valeur à 0 signifie que ce filament ne peut pas être " +"imprimé sur le plateau froid." + +msgid "Engineering plate" +msgstr "Plaque Engineering" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Il s'agit de la température du plateau lorsque le plaque Engineering est " +"installée. Une valeur à 0 signifie que ce filament ne peut pas être imprimé " +"sur le plateau Engineering." + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Plateau PEI lisse / Plateau haute température" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Température du plateau lorsque le Plateau PEI lisse / haute température est " +"installé. Une valeur à 0 signifie que le filament ne prend pas en charge " +"l'impression sur le plateau PEI lisse/haute température" + +msgid "Textured PEI Plate" +msgstr "Plaque PEI texturée" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Température du plateau lorsque la plaque PEI texturée est installée. La " +"valeur 0 signifie que le filament n'est pas supporté par la plaque PEI " +"texturée" + +msgid "Volumetric speed limitation" +msgstr "Limitation de vitesse volumétrique" + +msgid "Cooling" +msgstr "Refroidissement" + +msgid "Cooling for specific layer" +msgstr "Refroidissement pour une couche spécifique" + +msgid "Part cooling fan" +msgstr "Ventilateur de refroidissement des pièces" + +msgid "Min fan speed threshold" +msgstr "Seuil de vitesse mini du ventilateur" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"La vitesse du ventilateur de refroidissement des pièces commencera à " +"fonctionner à la vitesse minimale lorsque le temps de couche estimé n'est " +"pas supérieur au temps de couche dans le réglage. Lorsque le temps de couche " +"est inférieur au seuil, la vitesse du ventilateur est interpolée entre la " +"vitesse minimale et maximale du ventilateur en fonction du temps " +"d'impression de la couche" + +msgid "Max fan speed threshold" +msgstr "Seuil de vitesse maximale du ventilateur" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"La vitesse du ventilateur de refroidissement des pièces sera maximale " +"lorsque le temps de couche estimé est plus court que la valeur de réglage" + +msgid "Auxiliary part cooling fan" +msgstr "Ventilateur de refroidissement auxiliaire" + +msgid "Exhaust fan" +msgstr "Ventilateur d’extraction" + +msgid "During print" +msgstr "Pendant l’impression" + +msgid "Complete print" +msgstr "Après l’impression" + +msgid "Filament start G-code" +msgstr "G-code de démarrage du filament" + +msgid "Filament end G-code" +msgstr "G-code de fin de filament" + +msgid "Multimaterial" +msgstr "Multi-matériaux" + +msgid "Wipe tower parameters" +msgstr "Paramètres de la tour d’essuyage" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "" +"Paramètres de changement d'outil avec les imprimantes MM à extrudeur unique" + +msgid "Ramming settings" +msgstr "Paramètres de pilonnage" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "" +"Paramètres de changement d'outil pour les imprimantes MM à extrudeurs " +"multiples" + +msgid "Printable space" +msgstr "Espace imprimable" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "Valeur non valide fournie pour le réglage %1% : %2%" + +msgid "G-code flavor is switched" +msgstr "La version du G-code est modifiée" + +msgid "Cooling Fan" +msgstr "Ventilateur de refroidissement" + +msgid "Fan speed-up time" +msgstr "Durée d’accélération du ventilateur" + +msgid "Extruder Clearance" +msgstr "Dégagement de l'extrudeur" + +msgid "Adaptive bed mesh" +msgstr "Maillage du plateau adaptatif" + +msgid "Accessory" +msgstr "Accessoire" + +msgid "Machine gcode" +msgstr "G-code de la machine" + +msgid "Machine start G-code" +msgstr "G-code de démarrage de la machine" + +msgid "Machine end G-code" +msgstr "G-code de fin de machine" + +msgid "Printing by object G-code" +msgstr "G-code d’impression par objet" + +msgid "Before layer change G-code" +msgstr "G-Code avant changement de couche" + +msgid "Layer change G-code" +msgstr "G-code de changement de couche" + +msgid "Time lapse G-code" +msgstr "G-code de Timelapse" + +msgid "Change filament G-code" +msgstr "G-code de changement de filament" + +msgid "Change extrusion role G-code" +msgstr "G-code de changement du rôle de l’extrusion" + +msgid "Pause G-code" +msgstr "G-code de mise en pause" + +msgid "Template Custom G-code" +msgstr "G-code personnalisé" + +msgid "Motion ability" +msgstr "Capacité de mouvement" + +msgid "Normal" +msgstr "Normal" + +msgid "Speed limitation" +msgstr "Limitation de vitesse" + +msgid "Acceleration limitation" +msgstr "Limitation d'accélération" + +msgid "Jerk limitation" +msgstr "Limitation des secousses" + +msgid "Single extruder multimaterial setup" +msgstr "Configuration multi-matériaux pour extrudeur unique" + +msgid "Wipe tower" +msgstr "Tour d’essuyage" + +msgid "Single extruder multimaterial parameters" +msgstr "Paramètres multi-matériaux pour extrudeur unique" + +msgid "Layer height limits" +msgstr "Limites de hauteur de couche" + +msgid "Lift Z Enforcement" +msgstr "Exécution du décalage en Z" + +msgid "Retraction when switching material" +msgstr "Rétraction lors du changement de matériau" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"L’option Essuyage n’est pas disponible lors de l’utilisation du mode " +"Rétraction Firmware.\n" +"\n" +"Voulez-vous désactiver cette option pour activer la Rétraction Firmware ?" + +msgid "Firmware Retraction" +msgstr "Rétraction Firmware" + +msgid "Detached" +msgstr "Détaché" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"Le préréglage de filament %d et le préréglage de processus %d sont associés " +"à cette imprimante. Ces préréglages seront supprimés si l’imprimante est " +"supprimée." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "" +"Les préréglages hérités d’autres préréglages ne peuvent pas être supprimés !" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Les préréglages suivants héritent de ce préréglage." +msgstr[1] "Le préréglage suivant hérite de ce préréglage." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Préréglage" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "Le préréglage suivant sera également supprimé." +msgstr[1] "Les préréglages suivants seront également supprimés." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Êtes-vous sûr de vouloir supprimer le préréglage sélectionné ? \n" +"Si le préréglage correspond à un filament actuellement utilisé sur votre " +"imprimante, veuillez réinitialiser les informations sur le filament pour cet " +"emplacement." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Êtes-vous sûr de %1% le préréglage sélectionné ?" + +msgid "All" +msgstr "Tous" + +msgid "Set" +msgstr "Appliquer" + +msgid "Click to reset current value and attach to the global value." +msgstr "" +"Cliquez pour réinitialiser la valeur actuelle et l'attacher à la valeur " +"globale." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Cliquez pour supprimer la modification actuelle et réinitialiser la valeur " +"enregistrée." + +msgid "Process Settings" +msgstr "Paramètres de traitement" + +msgid "Undef" +msgstr "Undef" + +msgid "Unsaved Changes" +msgstr "Modifications non enregistrées" + +msgid "Transfer or discard changes" +msgstr "Ignorer ou conserver les modifications" + +msgid "Old Value" +msgstr "Ancienne valeur" + +msgid "New Value" +msgstr "Nouvelle Valeur" + +msgid "Transfer" +msgstr "Transférer" + +msgid "Don't save" +msgstr "Ne pas enregistrer" + +msgid "Discard" +msgstr "Ignorer" + +msgid "Click the right mouse button to display the full text." +msgstr "" +"Cliquez sur le bouton droit de la souris pour afficher le texte complet." + +msgid "All changes will not be saved" +msgstr "Toutes les modifications ne seront pas enregistrées" + +msgid "All changes will be discarded." +msgstr "Toutes les modifications seront rejetées." + +msgid "Save the selected options." +msgstr "Enregistrer les options sélectionnées." + +msgid "Keep the selected options." +msgstr "Conserver les options sélectionnées." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "" +"Transférez les options sélectionnées vers le préréglage nouvellement " +"sélectionné." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "Enregistrez les options sélectionnées dans le préréglage \"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Transférez les options sélectionnées vers le préréglage nouvellement " +"sélectionné \"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "" +"Le préréglage \"%1%\" contient les modifications non enregistrées suivantes :" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"Le préréglage \"%1%\" n'est pas compatible avec le nouveau profil " +"d'imprimante et contient les modifications non enregistrées suivantes :" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"Le préréglage \"%1%\" n'est pas compatible avec le nouveau profil de " +"traitement et contient les modifications non enregistrées suivantes :" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "Vous avez modifié certains paramètres du réglage prédéfini « %1% »." + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"Vous pouvez enregistrer ou rejeter les valeurs prédéfinies que vous avez " +"modifiées." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" +"\n" +"Vous pouvez sauvegarder ou ignorer les valeurs de préréglage que vous avez " +"modifiées, ou choisir de transférer les valeurs que vous avez modifiées dans " +"le nouveau préréglage." + +msgid "You have previously modified your settings." +msgstr "Vous avez déjà modifié vos réglages." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"Vous pouvez ignorer les valeurs prédéfinies que vous avez modifiées ou " +"choisir de transférer les valeurs modifiées dans le nouveau projet." + +msgid "Extruders count" +msgstr "Nombre d'extrudeurs" + +msgid "General" +msgstr "Général" + +msgid "Capabilities" +msgstr "Fonctionnalités" + +msgid "Show all presets (including incompatible)" +msgstr "Afficher tous les préréglages (y compris incompatibles)" + +msgid "Select presets to compare" +msgstr "Sélectionnez les préréglages à comparer" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" +"Le transfert vers le profil actif actuel n’est possible que s’il a été " +"modifié." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"Transférer les options sélectionnées du préréglage de gauche vers celui de " +"droite.\n" +"Remarque : Les nouveaux préréglages modifiés seront sélectionnés dans les " +"onglets de réglage après la fermeture de cette boîte de dialogue." + +msgid "Transfer values from left to right" +msgstr "Transférer les valeurs de gauche à droite" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" +"Si elle est activée, cette boîte de dialogue peut être utilisée pour " +"convertir les valeurs sélectionnées de gauche à droite." + +msgid "Add File" +msgstr "Ajouter un Fichier" + +msgid "Set as cover" +msgstr "Définir comme couverture" + +msgid "Cover" +msgstr "Couverture" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "Le nom \"%1%\" existe déjà." + +msgid "Basic Info" +msgstr "Informations de base" + +msgid "Pictures" +msgstr "Des photos" + +msgid "Bill of Materials" +msgstr "Nomenclature" + +msgid "Assembly Guide" +msgstr "Guide d'assemblage" + +msgid "Author" +msgstr "Auteur" + +msgid "Model Name" +msgstr "Nom du modèle" + +#, c-format, boost-format +msgid "%s Update" +msgstr "Mise à jour %s" + +msgid "A new version is available" +msgstr "Une nouvelle version est disponible" + +msgid "Configuration update" +msgstr "Mise à jour de la configuration" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "" +"Un nouveau package de configuration disponible, Voulez-vous l'installer ?" + +msgid "Description:" +msgstr "La description:" + +msgid "Configuration incompatible" +msgstr "Configuration incompatible" + +msgid "the configuration package is incompatible with current application." +msgstr "" +"le package de configuration est incompatible avec l'application actuelle." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"Le package de configuration est incompatible avec l'application actuelle. %s " +"mettra à jour le package de configuration, sinon il ne pourra pas démarrer" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Sortir de %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "" +"le package de configuration est incompatible avec l'application actuelle." + +msgid "Configuration updates" +msgstr "Mises à jour de la configuration" + +msgid "No updates available." +msgstr "Aucune mise à jour disponible." + +msgid "The configuration is up to date." +msgstr "La configuration est à jour." + +msgid "Obj file Import color" +msgstr "Obj file Import color" + +msgid "Specify number of colors:" +msgstr "Specify number of colors:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "The color count should be in range [%d, %d]." + +msgid "Recommended " +msgstr "Recommended " + +msgid "Current filament colors:" +msgstr "Current filament colors:" + +msgid "Quick set:" +msgstr "Quick set:" + +msgid "Color match" +msgstr "Color match" + +msgid "Approximate color matching." +msgstr "Approximate color matching." + +msgid "Append" +msgstr "Append" + +msgid "Add consumable extruder after existing extruders." +msgstr "Add consumable extruder after existing extruders." + +msgid "Reset mapped extruders." +msgstr "Reset mapped extruders." + +msgid "Cluster colors" +msgstr "Cluster colors" + +msgid "Map Filament" +msgstr "Map Filament" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Warning: The count of newly added and \n" +" current extruders exceeds 16." + +msgid "Ramming customization" +msgstr "Personnalisation du pilonnage" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"Le pilonnage désigne l’extrusion rapide juste avant un changement d’outil " +"sur une imprimante MM à extrudeur unique. Son but est de façonner " +"correctement l’extrémité du filament déchargé afin qu’il n’empêche pas " +"l’insertion du nouveau filament et puisse lui-même être réinséré plus tard. " +"Cette phase est importante et différents matériaux peuvent nécessiter " +"différentes vitesses d’extrusion pour obtenir la bonne forme. Pour cette " +"raison, les taux d’extrusion lors du pilonnage sont réglables.\n" +"\n" +"Il s’agit d’un réglage de niveau expert, un réglage incorrect entraînera " +"probablement des bourrages, des roues de l’extrudeur broyant le filament, " +"etc." + +msgid "Total ramming time" +msgstr "Durée totale de pilonnage" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "Volume total de pilonnage" + +msgid "Ramming line width" +msgstr "Largeur de ligne du pilonnage" + +msgid "Ramming line spacing" +msgstr "Espacement des lignes du pilonnage" + +msgid "Auto-Calc" +msgstr "Auto-Calc" + +msgid "Re-calculate" +msgstr "Re-calculer" + +msgid "Flushing volumes for filament change" +msgstr "Volumes de purge pour le changement de filament" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Orca recalcule les volumes de purge à chaque fois que la couleur des " +"filaments change. Vous pouvez désactiver le calcul automatique dans Orca " +"Slicer > Préférences" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Volume de purge (mm³) pour chaque paire de filaments." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Suggestion : Volume de purge dans la plage [%d, %d]." + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "Le multiplicateur doit être compris dans la plage [%.2f, %.2f]." + +msgid "Multiplier" +msgstr "Multiplicateur" + +msgid "unloaded" +msgstr "déchargé" + +msgid "loaded" +msgstr "chargé" + +msgid "Filament #" +msgstr "Filament #" + +msgid "From" +msgstr "De" + +msgid "To" +msgstr "À" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" +"Windows Media Player est nécessaire pour cette tâche ! Voulez-vous activer " +"‘Windows Media Player’ pour votre système d’exploitation ?" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" +"BambuSource n’a pas été correctement enregistré pour la lecture de médias ! " +"Appuyez sur Oui pour le réenregistrer. Vous recevrez deux fois la demande de " +"permission." + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" +"Composant BambuSource manquant enregistré pour la lecture des médias ! " +"Veuillez réinstaller Snapmaker Orca ou demander de l’aide au service après-vente." + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" +"Si vous utilisez une BambuSource provenant d’une autre installation, la " +"lecture de la vidéo peut ne pas fonctionner correctement ! Appuyez sur Oui " +"pour résoudre le problème." + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" +"Il manque à votre système les codecs H.264 pour GStreamer, qui sont " +"nécessaires pour lire la vidéo. (Essayez d’installer les paquets " +"gstreamer1.0-plugins-bad ou gstreamer1.0-libav, puis redémarrez Snapmaker Orca)." + +msgid "Bambu Network plug-in not detected." +msgstr "Le plug-in Bambu Network n’a pas été détecté." + +msgid "Click here to download it." +msgstr "Cliquez ici pour le télécharger." + +msgid "Login" +msgstr "Connexion" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "" +"Le package de configuration est modifié dans le guide de configuration " +"précédent" + +msgid "Configuration package changed" +msgstr "Package de configuration modifié" + +msgid "Toolbar" +msgstr "Barre d'outils" + +msgid "Objects list" +msgstr "Liste des objets" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "" +"Importez des données de géométrie à partir de fichiers STL/STEP/3MF/OBJ/AMF." + +msgid "⌘+Shift+G" +msgstr "⌘+Maj+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Maj+G" + +msgid "Paste from clipboard" +msgstr "Coller depuis le presse-papier" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "" +"Afficher/Masquer la boîte de dialogue des paramètres des périphériques " +"3Dconnexion" + +msgid "Switch table page" +msgstr "Page du tableau de commutation" + +msgid "Show keyboard shortcuts list" +msgstr "Afficher la liste des raccourcis clavier" + +msgid "Global shortcuts" +msgstr "Raccourcis globaux" + +msgid "Rotate View" +msgstr "Rotation de la vue" + +msgid "Pan View" +msgstr "Déplacement de vue" + +msgid "Mouse wheel" +msgstr "Molette de souris" + +msgid "Zoom View" +msgstr "Vue agrandie" + +msgid "Shift+A" +msgstr "Maj+A" + +msgid "Shift+R" +msgstr "Maj+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Oriente automatiquement les objets sélectionnés ou tous les objets. S'il y a " +"des objets sélectionnés, il oriente uniquement ceux qui sont sélectionnés. " +"Sinon, il oriente tous les objets du disque actuel." + +msgid "Shift+Tab" +msgstr "Maj+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Réduire/développer la barre latérale" + +msgid "⌘+Any arrow" +msgstr "⌘+n'importe quelle flèche" + +msgid "Movement in camera space" +msgstr "Mouvement dans l'espace de la caméra" + +msgid "⌥+Left mouse button" +msgstr "⌥+Bouton gauche de la souris" + +msgid "Select a part" +msgstr "Sélectionner une pièce" + +msgid "⌘+Left mouse button" +msgstr "⌘+Bouton gauche de la souris" + +msgid "Select multiple objects" +msgstr "Sélectionnez tous les objets sur la plaque actuelle" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+n'importe quelle flèche" + +msgid "Alt+Left mouse button" +msgstr "Alt+Bouton gauche de la souris" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+Bouton gauche de la souris" + +msgid "Shift+Left mouse button" +msgstr "Maj+Bouton gauche de la souris" + +msgid "Select objects by rectangle" +msgstr "Sélectionner les objets par rectangle" + +msgid "Arrow Up" +msgstr "Flèche Haut" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Déplacer la sélection de 10 mm dans la direction positive Y" + +msgid "Arrow Down" +msgstr "Flèche Bas" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Déplacer la sélection de 10 mm dans la direction négative Y" + +msgid "Arrow Left" +msgstr "Flèche Gauche" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Déplacer la sélection de 10 mm dans la direction négative X" + +msgid "Arrow Right" +msgstr "Flèche Droite" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Déplacer la sélection de 10 mm dans la direction positive X" + +msgid "Shift+Any arrow" +msgstr "Maj+n'importe quelle flèche" + +msgid "Movement step set to 1 mm" +msgstr "Pas du mouvement réglé sur 1 mm" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "clavier 1-9 : définir le filament pour l'objet/la pièce" + +msgid "Camera view - Default" +msgstr "Vue caméra - Par défaut" + +msgid "Camera view - Top" +msgstr "Vue caméra - Haut" + +msgid "Camera view - Bottom" +msgstr "Vue caméra - Bas" + +msgid "Camera view - Front" +msgstr "Vue de la caméra - Avant" + +msgid "Camera view - Behind" +msgstr "Vue caméra - Derrière" + +msgid "Camera Angle - Left side" +msgstr "Angle de caméra - Côté gauche" + +msgid "Camera Angle - Right side" +msgstr "Angle de caméra - Côté droit" + +msgid "Select all objects" +msgstr "Sélectionner tous les objets" + +msgid "Gizmo move" +msgstr "Gizmo déplacer" + +msgid "Gizmo scale" +msgstr "Gizmo redimensionner" + +msgid "Gizmo rotate" +msgstr "Gizmo pivoter" + +msgid "Gizmo cut" +msgstr "Gizmo couper" + +msgid "Gizmo Place face on bed" +msgstr "Gizmo Placer la face sur le plateau" + +msgid "Gizmo SLA support points" +msgstr "Gizmo Point de support SLA" + +msgid "Gizmo FDM paint-on seam" +msgstr "Gizmo Peinture de la couture FDM" + +msgid "Gizmo Text emboss / engrave" +msgstr "Gizmo Embosser / graver du texte" + +msgid "Zoom in" +msgstr "Zoom avant" + +msgid "Zoom out" +msgstr "Zoom arrière" + +msgid "Switch between Prepare/Preview" +msgstr "Basculer entre Préparer/Aperçu" + +msgid "Plater" +msgstr "Plateau" + +msgid "Move: press to snap by 1mm" +msgstr "Déplacer : appuyez pour aligner de 1 mm" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Molette de la souris" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Support/Peinture couleur : ajustez le rayon du stylet" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Molette de la souris" + +msgid "Support/Color Painting: adjust section position" +msgstr "Support/Peinture couleur : ajuster la position de la section" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Molette de la souris" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Molette de la souris" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Définir le numéro d'extrudeuse pour les objets et les pièces" + +msgid "Delete objects, parts, modifiers " +msgstr "Supprimer des objets, des pièces, des modificateurs " + +msgid "Select the object/part and press space to change the name" +msgstr "" +"Sélectionnez l'objet/la pièce et appuyez sur espace pour changer le nom" + +msgid "Mouse click" +msgstr "Clic de souris" + +msgid "Select the object/part and mouse click to change the name" +msgstr "" +"Sélectionnez l'objet/la pièce et cliquez avec la souris pour changer le nom" + +msgid "Objects List" +msgstr "Liste d'objets" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Barre de défilement verticale - Déplacer le curseur actif vers le Haut" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Barre de défilement verticale - Déplacer le curseur actif vers le Bas" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "" +"Barre de défilement horizontale - Déplacer le curseur actif vers la Gauche" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "" +"Barre de défilement horizontale - Déplacer le curseur actif vers la Droite" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "On/Off mode couche unique de la barre de défilement verticale" + +msgid "On/Off g-code window" +msgstr "On/Off Fenêtre G-code" + +msgid "Move slider 5x faster" +msgstr "Déplacez le curseur 5 fois plus vite" + +msgid "Shift+Mouse wheel" +msgstr "Maj+Molette de la souris" + +msgid "Horizontal slider - Move to start position" +msgstr "Curseur horizontal - Déplacement vers la position de départ" + +msgid "Horizontal slider - Move to last position" +msgstr "Curseur horizontal - Déplacer vers la dernière position" + +msgid "Release Note" +msgstr "Note de version" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "informations de mise à jour de la version %s :" + +msgid "Network plug-in update" +msgstr "Mise à jour du plug-in réseau" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Cliquez sur OK pour mettre à jour le plug-in réseau lors du prochain " +"démarrage de Snapmaker Orca." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "" +"Un nouveau plug-in réseau (%s) est disponible. Voulez-vous l'installer ?" + +msgid "New version of Snapmaker Orca" +msgstr "Nouvelle version de Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Sauter cette version" + +msgid "Done" +msgstr "Terminé" + +msgid "resume" +msgstr "reprendre" + +msgid "Resume Printing" +msgstr "Reprendre l’impression" + +msgid "Resume Printing(defects acceptable)" +msgstr "Reprendre l’impression (des défauts sont acceptables)" + +msgid "Resume Printing(problem solved)" +msgstr "Reprendre l’impression (problème résolu)" + +msgid "Stop Printing" +msgstr "Arrêter l’impression" + +msgid "Check Assistant" +msgstr "Assistant de contrôle" + +msgid "Filament Extruded, Continue" +msgstr "Filament extrudé, Continuer" + +msgid "Not Extruded Yet, Retry" +msgstr "Pas encore extrudé, réessayer" + +msgid "Finished, Continue" +msgstr "Terminé, Continuer" + +msgid "Load Filament" +msgstr "Charger" + +msgid "Filament Loaded, Resume" +msgstr "Filament chargé, Reprendre" + +msgid "View Liveview" +msgstr "Vue en direct" + +msgid "Confirm and Update Nozzle" +msgstr "Confirmation et mise à jour de la buse" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "Échec de la connexion au réseau local (envoi du fichier d'impression)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Étape 1, veuillez confirmer que Snapmaker Orca et votre imprimante sont sur le " +"même réseau local." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Étape 2, si l'adresse IP et le code d'accès ci-dessous sont différents des " +"valeurs actuelles de votre imprimante, corrigez-les." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Code d'Accès" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Où trouver l'adresse IP et le code d'accès de votre imprimante ?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"Étape 3 : Effectuer un ping de l’adresse IP pour vérifier la perte de " +"paquets et la latence." + +msgid "Test" +msgstr "Tester" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP et code d’accès vérifiés ! Vous pouvez fermer la fenêtre" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "La connexion a échoué, veuillez vérifier l’IP et le code d’accès." + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Échec de la connexion ! Si votre IP et votre code d’accès sont corrects, \n" +"passez à l’étape 3 pour la résolution des problèmes de réseau." + +msgid "Model:" +msgstr "Modèle :" + +msgid "Serial:" +msgstr "N° de série:" + +msgid "Version:" +msgstr "Version :" + +msgid "Update firmware" +msgstr "Mise à jour du firmware" + +msgid "Beta version" +msgstr "Version Beta" + +msgid "Latest version" +msgstr "Dernière version" + +msgid "Updating" +msgstr "Mise à jour" + +msgid "Updating failed" +msgstr "La mise à jour a échoué" + +msgid "Updating successful" +msgstr "Mise à jour réussie" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Êtes-vous sûr de vouloir effectuer la mise à jour ? Cela prendra environ 10 " +"minutes. Ne mettez pas l'imprimante hors tension durant la mise à jour." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Une mise à jour importante a été détectée et doit être exécutée avant de " +"pouvoir poursuivre l'impression. Voulez-vous effectuer la mise à jour " +"maintenant ? Vous pouvez également effectuer une mise à jour ultérieurement " +"à partir de \"Mettre à jour le firmware\"." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"La version du firmware est erronée. La réparation et la mise à jour sont " +"nécessaires avant l'impression. Voulez-vous effectuer la mise à jour " +"maintenant ? Vous pouvez également effectuer une mise à jour ultérieurement " +"depuis l'imprimante ou lors du prochain démarrage d'Snapmaker Orca." + +msgid "Extension Board" +msgstr "Carte d'Extension" + +msgid "Saving objects into the 3mf failed." +msgstr "L'enregistrement d'objets dans le 3mf a échoué." + +msgid "Only Windows 10 is supported." +msgstr "Seul Windows 10 est pris en charge." + +msgid "Failed to initialize the WinRT library." +msgstr "Échec de l'initialisation de la bibliothèque WinRT." + +msgid "Exporting objects" +msgstr "Exportation d'objets" + +msgid "Failed loading objects." +msgstr "Échec du chargement des objets." + +msgid "Repairing object by Windows service" +msgstr "Réparation d'un objet par le service Windows" + +msgid "Repair failed." +msgstr "La réparation a échoué." + +msgid "Loading repaired objects" +msgstr "Chargement des objets réparés" + +msgid "Exporting 3mf file failed" +msgstr "Échec de l'exportation du fichier 3mf" + +msgid "Import 3mf file failed" +msgstr "Échec de l'importation du fichier 3mf" + +msgid "Repaired 3mf file does not contain any object" +msgstr "Le fichier 3mf réparé ne contient aucun objet" + +msgid "Repaired 3mf file contains more than one object" +msgstr "Le fichier 3mf réparé contient plus d'un objet" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "Le fichier 3mf réparé ne contient aucun volume" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "Le fichier 3mf réparé contient plus d'un volume" + +msgid "Repair finished" +msgstr "Réparation terminée" + +msgid "Repair canceled" +msgstr "Réparation annulée" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Échec de la copie du fichier %1% vers %2% : %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" +"Besoin de vérifier les modifications non enregistrées avant les mises à jour " +"de configuration." + +msgid "Configuration package: " +msgstr "Paquet de configuration : " + +msgid " updated to " +msgstr " mis à jour en " + +msgid "Open G-code file:" +msgstr "Ouvrir un fichier G-code :" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Un objet a une couche initiale vide et ne peut pas être imprimé. Veuillez " +"couper le bas ou activer les supports." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "" +"L'objet comporte des couches vides comprises entre %1% et %2% et ne peut pas " +"être imprimé." + +#, boost-format +msgid "Object: %1%" +msgstr "Objet : %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Peut-être que certaines parties de l'objet à ces hauteurs sont trop fines ou " +"que l'objet a un maillage défectueux" + +msgid "No object can be printed. Maybe too small" +msgstr "Aucun objet ne peut être imprimé. Peut-être trop petit" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Échec de la génération du G-code pour un G-code personnalisé non valide.\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" +"Veuillez vérifier le G-code personnalisé ou utiliser le G-code personnalisé " +"par défaut." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Génération du G-code : couche %1%" + +msgid "Inner wall" +msgstr "Paroi intérieure" + +msgid "Outer wall" +msgstr "Paroi extérieure" + +msgid "Overhang wall" +msgstr "Paroi en surplomb" + +msgid "Sparse infill" +msgstr "Remplissage" + +msgid "Internal solid infill" +msgstr "Remplissage plein interne" + +msgid "Top surface" +msgstr "Surface supérieure" + +msgid "Bottom surface" +msgstr "Surface inférieure" + +msgid "Internal Bridge" +msgstr "Pont interne" + +msgid "Gap infill" +msgstr "Remplissage d'espace" + +msgid "Support interface" +msgstr "Interface de support" + +msgid "Support transition" +msgstr "Soutenir la transition" + +msgid "Multiple" +msgstr "Plusieurs" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Échec du calcul de la largeur de ligne de %1%. Impossible d'obtenir la " +"valeur de \"%2%\" " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Espacement non valide fourni à Flow::with_spacing(), vérifiez la hauteur de " +"votre couche et la largeur d’extrusion" + +msgid "undefined error" +msgstr "erreur non définie" + +msgid "too many files" +msgstr "trop de fichiers" + +msgid "file too large" +msgstr "fichier trop volumineux" + +msgid "unsupported method" +msgstr "méthode non supportée" + +msgid "unsupported encryption" +msgstr "cryptage non supporté" + +msgid "unsupported feature" +msgstr "fonction non supportée" + +msgid "failed finding central directory" +msgstr "impossible de trouver le répertoire central" + +msgid "not a ZIP archive" +msgstr "n'est pas une archive ZIP" + +msgid "invalid header or corrupted" +msgstr "en-tête invalide ou corrompu" + +msgid "unsupported multidisk" +msgstr "multidisque non pris en charge" + +msgid "decompression failed" +msgstr "la décompression a échoué" + +msgid "compression failed" +msgstr "échec de la compression" + +msgid "unexpected decompressed size" +msgstr "volume de décompression inattendu" + +msgid "CRC check failed" +msgstr "La vérification CRC a échoué" + +msgid "unsupported central directory size" +msgstr "volume du répertoire central non supporté" + +msgid "allocation failed" +msgstr "échec de l'allocation" + +msgid "file open failed" +msgstr "échec de l'ouverture du fichier" + +msgid "file create failed" +msgstr "échec de création du fichier" + +msgid "file write failed" +msgstr "échec d'écriture du fichier" + +msgid "file read failed" +msgstr "échec de lecture du fichier" + +msgid "file close failed" +msgstr "échec de la fermeture du fichier" + +msgid "file seek failed" +msgstr "impossible de trouver le fichier" + +msgid "file stat failed" +msgstr "impossible d'établir des statistiques pour ce fichier" + +msgid "invalid parameter" +msgstr "paramètre non valide" + +msgid "invalid filename" +msgstr "nom de fichier non valide" + +msgid "buffer too small" +msgstr "buffer trop petit" + +msgid "internal error" +msgstr "erreur interne" + +msgid "file not found" +msgstr "fichier non trouvé" + +msgid "archive too large" +msgstr "archive trop volumineuse" + +msgid "validation failed" +msgstr "échec de la validation" + +msgid "write callback failed" +msgstr "échec du rappel d'écriture" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% est trop proche de la zone d'exclusion. Il peut y avoir des collisions " +"lors de l'impression." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "" +"%1% est trop proche des autres, cela pourrait provoquer des collisions." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% est trop grand, cela pourrait provoquer des collisions." + +msgid " is too close to others, there may be collisions when printing." +msgstr "" +" est trop proche des autres; il peut y avoir des collisions lors de " +"l'impression." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" est trop proche d'une zone d'exclusion, il peut y avoir des collisions lors " +"de l'impression." + +msgid "Prime Tower" +msgstr "Tour de purge" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr "" +" est trop proche des autres. Des collisions risquent d'être provoquées.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" +" est trop proche d'une zone d'exclusion. Cela va entraîner des collisions.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Impossible d'imprimer plusieurs filaments qui ont une grande différence de " +"température ensemble. Sinon, l'extrudeuse et la buse peuvent être bloquées " +"ou endommagées pendant l'impression" + +msgid "No extrusions under current settings." +msgstr "Aucune extrusion dans les paramètres actuels." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"Le mode fluide du timelapse n'est pas pris en charge lorsque le mode " +"d'impression « par objet » est activé." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Veuillez sélectionner la séquence d'impression \"Par objet\" pour imprimer " +"plusieurs objets en mode vase en spirale." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"Le mode vase en spirale ne fonctionne pas lorsqu'un objet contient plusieurs " +"matériaux." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "L’objet %1% dépasse la hauteur maximale du volume d’impression." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"Bien que l’objet %1% s’adapte lui-même au volume d’impression, sa dernière " +"couche dépasse la hauteur maximale du volume de construction." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"Vous devez réduire la taille de votre modèle ou modifier les paramètres " +"d’impression actuels et réessayer." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "" +"La hauteur de couche variable n’est pas prise en charge avec les supports " +"organiques." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"L’utilisation de diamètres de buses et de filaments différents n’est pas " +"autorisée lorsque l’option « prime tower » est activée." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"La tour d’essuyage n’est actuellement supportée qu’avec l’adressage relatif " +"des extrudeurs (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"La prévention des dépôts de boue n’est actuellement pas prise en charge " +"lorsque la tour principale est activée." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"La tour principale n’est actuellement prise en charge que pour les versions " +"Marlin, RepRap/Sprinter, RepRapFirmware et Repetier G-code." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "" +"La tour de purge n'est pas prise en charge dans l'impression \"Par objet\"." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"La tour de purge n'est pas prise en charge lorsque la hauteur de couche " +"adaptative est activée. Cela nécessite que tous les objets aient la même " +"hauteur de couche." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"La tour de purge nécessite que \"l'écart de support\" soit un multiple de la " +"hauteur de la couche" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" +"La tour de purge nécessite que tous les objets aient la même hauteur de " +"couche." + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"La tour de purge nécessite que tous les objets soient imprimés sur le même " +"nombre de couche de radeau." + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"La tour de purge nécessite que tous les objets soient découpés avec la même " +"hauteur de couche." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"La tour de purge n'est prise en charge que si tous les objets ont la même " +"hauteur de couche variable" + +msgid "Too small line width" +msgstr "Largeur de ligne trop petite" + +msgid "Too large line width" +msgstr "Largeur de ligne trop grande" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"La tour de purge nécessite que le support ait la même hauteur de couche avec " +"l'objet." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"Le diamètre de la pointe des supports organiques ne doit pas être inférieur " +"à la largeur d’extrusion du matériau utilisé pour les supports." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"Le diamètre des branches des supports organiques ne doit pas être inférieur " +"à 2 fois la largeur d’extrusion du matériau utilisé pour les supports." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"Le diamètre des branches des supports organiques ne doit pas être inférieur " +"au diamètre de la pointe des supports." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Les forceurs de support sont utilisés mais le support n'est pas activé. " +"Veuillez activer les supports." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "La hauteur de la couche ne peut pas dépasser le diamètre de la buse" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"L'extrusion relative de l'extrudeur nécessite de réinitialiser la position " +"de celui-ci à chaque couche pour éviter la perte de précision de la virgule " +"flottante. Ajouter \"G92 E0\" au G-code de changement de couche." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"\"G92 E0\" a été trouvé dans le G-code avant le changement de couche, ce qui " +"est incompatible avec l’extrusion absolue de l’extrudeur." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"\"G92 E0\" a été trouvé dans le G-code de changement de couche, ce qui est " +"incompatible avec l’extrusion absolue de l’extrudeur." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Plaque %d : %s ne prend pas en charge le filament %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" +"Un réglage trop bas de la vitesse de saccade peut entraîner des artefacts " +"sur les surfaces courbes." + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"Le réglage du jerk dépasse le jerk maximum de l’imprimante " +"(machine_max_jerk_x/machine_max_jerk_y).\n" +"Orca plafonne automatiquement la vitesse de l’impulsion pour s’assurer " +"qu’elle ne dépasse pas les capacités de l’imprimante.\n" +"Vous pouvez ajuster le réglage du jerk maximum dans la configuration de " +"votre imprimante pour obtenir des vitesses plus élevées." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"Le paramètre d’accélération dépasse l’accélération maximale de l’imprimante " +"(machine_max_acceleration_extruding).\n" +"Orca limitera automatiquement la vitesse d’accélération pour s’assurer " +"qu’elle ne dépasse pas les capacités de l’imprimante.\n" +"Vous pouvez ajuster la valeur machine_max_acceleration_extruding dans la " +"configuration de votre imprimante pour obtenir des vitesses plus élevées." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"Le réglage de l’accélération de déplacement dépasse l’accélération de " +"déplacement maximale de l’imprimante (machine_max_acceleration_travel).\n" +"Orca plafonnera automatiquement la vitesse d’accélération du déplacement " +"pour s’assurer qu’elle ne dépasse pas les capacités de l’imprimante.\n" +"Vous pouvez ajuster la valeur machine_max_acceleration_travel dans la " +"configuration de votre imprimante pour obtenir des vitesses plus élevées." + +msgid "Generating skirt & brim" +msgstr "Génération jupe et bord" + +msgid "Exporting G-code" +msgstr "Exportation du G-code" + +msgid "Generating G-code" +msgstr "Génération du G-code" + +msgid "Failed processing of the filename_format template." +msgstr "Échec du traitement du modèle filename_format." + +msgid "Printable area" +msgstr "Zone imprimable" + +msgid "Bed exclude area" +msgstr "Zone d'exclusion de plateau" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Zone non imprimable dans le plan XY. Par exemple, les imprimantes de la " +"série X1 utilisent le coin avant gauche pour couper le filament lors du " +"changement de filament. La zone est exprimée sous forme de polygone par des " +"points au format suivant : \"XxY, XxY,... \"" + +msgid "Bed custom texture" +msgstr "Texture personnalisée du plateau" + +msgid "Bed custom model" +msgstr "Modèle de plateau personnalisé" + +msgid "Elephant foot compensation" +msgstr "Compensation de l'effet patte d'éléphant" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Rétrécissez la couche initiale sur le plateau pour compenser l'effet de " +"patte d'éléphant" + +msgid "Elephant foot compensation layers" +msgstr "Couches de compensation de la patte d'éléphant" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"Nombre de couches sur lesquelles la compensation de la patte d'éléphant sera " +"active. La première couche sera réduite de la valeur de compensation de la " +"patte d'éléphant, puis les couches suivantes seront réduites linéairement " +"moins, jusqu'à la couche indiquée par cette valeur." + +msgid "layers" +msgstr "couches" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Hauteur de découpe pour chaque couche. Une hauteur de couche plus petite " +"signifie plus de précision et plus de temps d'impression" + +msgid "Printable height" +msgstr "Hauteur imprimable" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "Hauteur imprimable maximale limitée par le mécanisme de l'imprimante" + +msgid "Preferred orientation" +msgstr "Orientation préférée" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" +"Orienter automatiquement les stls sur l’axe Z lors de l’importation initiale" + +msgid "Printer preset names" +msgstr "Noms des préréglages de l'imprimante" + +msgid "Use 3rd-party print host" +msgstr "Utiliser un hôte d’impression tiers" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" +"Permettre le contrôle de l’imprimante de BambuLab par des hôtes d’impression " +"tiers" + +msgid "Hostname, IP or URL" +msgstr "Nom d'hôte, adresse IP ou URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca peut téléverser des fichiers G-code sur une imprimante hôte. Ce " +"champ doit contenir le nom d'hôte, l'adresse IP ou l'URL de l'instance hôte " +"de l'imprimante. L'hôte d'impression derrière HAProxy avec " +"l'authentification de base activée est accessible en saisissant le nom " +"d'utilisateur et le mot de passe dans l'URL au format suivant : https://" +"username:password@your-octopi-address/" + +msgid "Device UI" +msgstr "Interface utilisateur de l’appareil" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Spécifiez l’URL de l’interface utilisateur de votre appareil si elle n’est " +"pas identique à print_host" + +msgid "API Key / Password" +msgstr "Clé API / Mot de passe" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca peut téléverser des fichiers G-code sur une imprimante hôte. Ce " +"champ doit contenir la clé API ou le mot de passe requis pour " +"l'authentification." + +msgid "Name of the printer" +msgstr "Nom de l'imprimante" + +msgid "HTTPS CA File" +msgstr "Fichier HTTPS CA" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Un fichier de certificat CA personnalisé peut être spécifié pour les " +"connexions HTTPS OctoPrint, au format crt/pem. Si ce champ est laissé vide, " +"le référentiel de certificats OS CA par défaut est utilisé." + +msgid "User" +msgstr "Utilisateur" + +msgid "Password" +msgstr "Mot de passe" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Ignorer les contrôles de révocation des certificats HTTPS" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ignorez les contrôles de révocation des certificats HTTPS en cas de points " +"de distribution manquants ou hors ligne. Il peut être utile d'activer cette " +"option pour les certificats auto-signés en cas d'échec de la connexion." + +msgid "Names of presets related to the physical printer" +msgstr "Noms des préréglages associés à l'imprimante physique" + +msgid "Authorization Type" +msgstr "Type d'Autorisation" + +msgid "API key" +msgstr "Clé API" + +msgid "HTTP digest" +msgstr "Résumé HTTP" + +msgid "Avoid crossing wall" +msgstr "Évitez de traverser les parois" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Faire un détour et éviter de traverser la paroi, ce qui pourrait causer des " +"dépôts sur la surface" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Évitez de traverser les parois - Longueur maximale du détour" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Distance de détour maximale pour éviter de traverser une paroi: l'imprimante " +"ne fera pas de détour si la distance de détour est supérieure à cette " +"valeur. La longueur du détour peut être spécifiée sous forme de valeur " +"absolue ou de pourcentage (par exemple 50 %) d'un trajet direct. Une valeur " +"de 0 désactivera cette option." + +msgid "mm or %" +msgstr "mm ou %" + +msgid "Other layers" +msgstr "Autres couches" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Il s'agit de la température du plateau pour toutes les couches à l'exception " +"de la première. Une valeur à 0 signifie que ce filament ne peut pas être " +"imprimé sur le plateau froid (\"Cool plate\")." + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" +"Température du plateau pour les couches à l’exception de la couche initiale. " +"La valeur 0 signifie que le filament ne peut pas être imprimé sur la plaque " +"Cool plate texturée." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Il s'agit de la température du plateau pour toutes les couches à l'exception " +"de la première. Une valeur à 0 signifie que ce filament ne peut pas être " +"imprimé sur la plaque Engineering." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Il s'agit de la température du plateau pour toutes les couches à l'exception " +"de la première. Une valeur à 0 signifie que ce filament ne peut pas être " +"imprimé sur le plateau haute température (\"High Temp plate\")." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Température du plateau après la première couche. 0 signifie que le filament " +"n'est pas supporté par la plaque PEI texturée." + +msgid "Initial layer" +msgstr "Couche initiale" + +msgid "Initial layer bed temperature" +msgstr "Température du plateau lors de la couche initiale" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Il s'agit de la température du plateau pour la première couche. Une valeur à " +"0 signifie que ce filament ne peut pas être imprimé sur le plateau froid " +"(\"Cool plate\")." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" +"Température du plateau de la couche initiale. La valeur 0 signifie que le " +"filament ne peut pas être imprimé sur la plaque Cool plate texturée." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Il s'agit de la température du plateau pour la première couche. Une valeur à " +"0 signifie que ce filament ne peut pas être imprimé sur le plateau " +"Engineering." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Il s'agit de la température du plateau pour la première couche. Une valeur à " +"0 signifie que ce filament ne peut pas être imprimé sur le plateau haute " +"température (\"High Temp plate\")." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"La température du plateau à la première couche. La valeur 0 signifie que le " +"filament n'est pas supporté sur la plaque PEI texturée." + +msgid "Bed types supported by the printer" +msgstr "Types de plateaux pris en charge par l'imprimante" + +msgid "Smooth Cool Plate" +msgstr "Plaque Cool plate lisse" + +msgid "Engineering Plate" +msgstr "Plaque Engineering" + +msgid "Smooth High Temp Plate" +msgstr "Plaque lisse haute température" + +msgid "Textured Cool Plate" +msgstr "Plaque Cool plate texturée" + +msgid "First layer print sequence" +msgstr "Séquence d’impression de la première couche" + +msgid "Other layers print sequence" +msgstr "Séquence d’impression des autres couches" + +msgid "The number of other layers print sequence" +msgstr "Le nombre d’autres couches de la séquence d’impression" + +msgid "Other layers filament sequence" +msgstr "Séquence de filament des autres couches" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "" +"Ce G-code est inséré à chaque changement de couche avant le levage du Z" + +msgid "Bottom shell layers" +msgstr "Couches inférieures de la coque" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Il s'agit du nombre de couches pleines de coque inférieure, y compris la " +"couche de surface inférieure. Lorsque l'épaisseur calculée par cette valeur " +"est plus fine que l'épaisseur de la coque inférieure, les couches de la " +"coque inférieure seront augmentées" + +msgid "Bottom shell thickness" +msgstr "Épaisseur de la coque inférieure" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"Le nombre de couches pleines inférieures est augmenté lors du découpage si " +"l'épaisseur calculée par les couches de coque inférieures est inférieure à " +"cette valeur. Cela peut éviter d'avoir une coque trop fine lorsque la " +"hauteur de couche est faible. 0 signifie que ce paramètre est désactivé et " +"que l'épaisseur de la coque inférieure est absolument déterminée par les " +"couches de la coque inférieure" + +msgid "Apply gap fill" +msgstr "Remplissage des trous" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"Active le remplissage des trous pour les surfaces sélectionnées. La longueur " +"minimale du trou qui sera comblé peut être contrôlée à l’aide de l’option " +"« Filtrer les petits trous » ci-dessous.\n" +"\n" +"Options :\n" +"1. Partout : Applique le remplissage des trous aux surfaces pleines " +"supérieures, inférieures et internes.\n" +"2. Surfaces supérieure et inférieure : Remplissage des trous uniquement sur " +"les surfaces supérieures et inférieures.\n" +"3. Nulle part : Désactive le remplissage des trous\n" + +msgid "Everywhere" +msgstr "Partout" + +msgid "Top and bottom surfaces" +msgstr "Surfaces supérieure et inférieure" + +msgid "Nowhere" +msgstr "Nulle part" + +msgid "Force cooling for overhang and bridge" +msgstr "Forcer la ventilation pour les surplombs et ponts" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Activez cette option pour optimiser la vitesse du ventilateur de " +"refroidissement des pièces pour le surplomb et le pont afin d'obtenir un " +"meilleur refroidissement" + +msgid "Fan speed for overhang" +msgstr "Vitesse du ventilateur pour les surplombs" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Forcez le ventilateur de refroidissement des pièces à être à cette vitesse " +"lors de l'impression d'un pont ou d'une paroi en surplomb qui a un degré de " +"surplomb important. Forcer le refroidissement pour les surplombs et le pont " +"pour obtenir une meilleure qualité pour ces pièces." + +msgid "Cooling overhang threshold" +msgstr "Seuil de dépassement de refroidissement" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Forcer le ventilateur de refroidissement à atteindre une vitesse spécifique " +"lorsque le degré de surplomb de la pièce imprimée dépasse cette valeur. Ceci " +"est exprimé en pourcentage qui indique la largeur de la ligne sans support " +"provenant de la couche inférieure. 0%% signifie un refroidissement forcé de " +"toutes les parois extérieures, quel que soit le degré de surplomb." + +msgid "Bridge infill direction" +msgstr "Direction du remplissage des ponts" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Forçage de l’angle des ponts. S’il est laissé à zéro, l’angle des ponts sera " +"calculé automatiquement. Sinon, l’angle fourni sera utilisé pour les ponts " +"externes. Utilisez 180° pour un angle nul." + +msgid "Bridge density" +msgstr "Densité des ponts" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Densité des ponts externes, Une valeur à 100% signifie un pont plein. La " +"valeur par défaut est 100%." + +msgid "Bridge flow ratio" +msgstr "Débit des ponts" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Diminuez légèrement cette valeur (par exemple 0,9) pour réduire la quantité " +"de matériaux pour le pont, pour améliorer l'affaissement" + +msgid "Internal bridge flow ratio" +msgstr "Ratio de débit du pont interne" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"Cette valeur détermine l’épaisseur de la couche des ponts internes. Il " +"s’agit de la première couche sur le remplissage. Diminuez légèrement cette " +"valeur (par exemple 0.9) pour améliorer la qualité de la surface sur le " +"remplissage." + +msgid "Top surface flow ratio" +msgstr "Ratio du débit des surfaces supérieures" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Ce facteur affecte la quantité de matériau pour le remplissage plein " +"supérieur. Vous pouvez le diminuer légèrement pour avoir une finition de " +"surface lisse" + +msgid "Bottom surface flow ratio" +msgstr "Ratio du débit des surfaces inférieures" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" +"Ce facteur affecte la quantité de matériau pour le remplissage plein du " +"dessous" + +msgid "Precise wall" +msgstr "Parois précises" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"Améliorez la précision de la coque en ajustant l’espacement des parois " +"extérieures. Cela permet également d’améliorer la cohérence des couches.\n" +"Remarque : ce paramètre n’a d’effet que si la séquence des parois est " +"configurée sur Intérieur-Extérieur." + +msgid "Only one wall on top surfaces" +msgstr "Une seule paroi sur les surfaces supérieures" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"N'utilisez qu'une seule paroi sur les surfaces supérieures planes, afin de " +"donner plus d'espace au motif de remplissage supérieur." + +msgid "One wall threshold" +msgstr "Seuil de paroi unique" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Si une surface supérieure doit être imprimée et qu’elle est partiellement " +"couverte par une autre couche, elle ne sera pas considérée comme une couche " +"supérieure si sa largeur est inférieure à cette valeur. Cela peut être utile " +"pour ne pas déclencher l’option « un périmètre sur le dessus » sur des " +"surfaces qui ne devraient être couvertes que par des périmètres. Cette " +"valeur peut être un mm ou un % de la largeur d’extrusion du périmètre.\n" +"Attention : Si cette option est activée, des artefacts peuvent être créés si " +"vous avez des éléments fins sur la couche suivante, comme des lettres. " +"Réglez ce paramètre à 0 pour supprimer ces artefacts." + +msgid "Only one wall on first layer" +msgstr "Une seule paroi sur la première couche" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Utiliser qu’une seule paroi sur la première couche, pour donner plus " +"d’espace au motif de remplissage inférieur" + +msgid "Extra perimeters on overhangs" +msgstr "Parois supplémentaires sur les surplombs" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Créer des chemins de périmètres supplémentaires sur les surplombs abrupts et " +"les zones où les ponts ne peuvent pas être ancrés. " + +msgid "Reverse on odd" +msgstr "Parois inversées sur couches impaires" + +msgid "Overhang reversal" +msgstr "Inversion du surplomb" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"Extruder les périmètres dont une partie se trouve au-dessus d’un surplomb " +"dans le sens inverse sur les couches impaires. Ce motif alternatif peut " +"améliorer considérablement les surplombs abrupts.\n" +"\n" +"Ce paramètre peut également contribuer à réduire le gauchissement de la " +"pièce en raison de la réduction des contraintes dans les parois de la pièce." + +msgid "Reverse only internal perimeters" +msgstr "Inverser uniquement les périmètres internes" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"Appliquer la logique d’inversion des périmètres uniquement sur les " +"périmètres internes. \n" +"\n" +"Ce paramètre réduit considérablement les contraintes exercées sur les " +"pièces, car elles sont désormais réparties dans des directions alternées. " +"Cela devrait réduire la déformation des pièces tout en maintenant la qualité " +"des parois externes. Cette fonction peut être très utile pour les matériaux " +"sujets à la déformation, comme l’ABS/ASA, ainsi que pour les filaments " +"élastiques, comme le TPU et le Silk PLA. Elle peut également contribuer à " +"réduire le gauchissement des régions flottantes sur les supports.\n" +"\n" +"Pour que ce paramètre soit le plus efficace possible, il est recommandé de " +"régler le seuil d’inversion sur 0 afin que toutes les parois internes " +"s’impriment dans des directions alternées sur les couches impaires, quel que " +"soit leur degré de surplomb." + +msgid "Bridge counterbore holes" +msgstr "Trous d'alésage pour le pont" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"Cette option crée des ponts pour les trous d'alésage, ce qui permet de les " +"imprimer sans support. Les modes disponibles sont les suivants\n" +"1. Aucun : Aucun pont n’est créé.\n" +"2. Partiellement connecté : Seule une partie de la zone non prise en charge " +"sera connectée.\n" +"3. Couche sacrificielle : Une couche de pont sacrificielle complète est " +"créée." + +msgid "Partially bridged" +msgstr "Partiellement connecté" + +msgid "Sacrificial layer" +msgstr "Couche sacrificielle" + +msgid "Reverse threshold" +msgstr "Seuil d’inversion" + +msgid "Overhang reversal threshold" +msgstr "Seuil d’inversion des surplombs" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Nombre de mm de dépassement nécessaire pour que l’inversion soit considérée " +"comme utile. Il peut s’agir d’un pourcentage de la largeur du périmètre.\n" +"La valeur 0 permet l’inversion sur toutes les couches impaires." + +msgid "Classic mode" +msgstr "Classique" + +msgid "Enable this option to use classic mode" +msgstr "Activer cette option pour utiliser le mode classique" + +msgid "Slow down for overhang" +msgstr "Ralentir pour le surplomb" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Activez cette option pour ralentir l'impression pour différents degrés de " +"surplomb" + +msgid "Slow down for curled perimeters" +msgstr "Ralentir lors des périmètres courbés" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Activer cette option pour ralentir l’impression dans les zones où des " +"périmètres potentiellement courbées peuvent exister." + +msgid "mm/s or %" +msgstr "mm/s ou %" + +msgid "External" +msgstr "Externe" + +msgid "Speed of bridge and completely overhang wall" +msgstr "" +"Il s'agit de la vitesse pour les ponts et les parois en surplomb à 100 %." + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "Interne" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Vitesse des ponts internes. Si la valeur est exprimée en pourcentage, elle " +"sera calculée en fonction de bridge_speed. La valeur par défaut est 150%." + +msgid "Brim width" +msgstr "Largeur de la bordure" + +msgid "Distance from model to the outermost brim line" +msgstr "Distance du modèle à la ligne de bord la plus externe" + +msgid "Brim type" +msgstr "Type de bordure" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Cela permet de contrôler la génération de bordure extérieur et/ou intérieur " +"des modèles. Auto signifie que la largeur de bordure est analysée et " +"calculée automatiquement." + +msgid "Brim-object gap" +msgstr "Écart bord-objet" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Un espace entre la ligne de bord la plus interne et l'objet peut faciliter " +"le retrait du bord" + +msgid "Brim ears" +msgstr "Bordures à oreilles" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "Ne tracer la bordure que sur les arêtes vives du modèle." + +msgid "Brim ear max angle" +msgstr "Angle maximum de la bordure à oreilles" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Angle maximum pour laisser apparaître la bordure à oreilles.\n" +"S’il est défini sur 0, aucune bordure ne sera créée.\n" +"S’il est réglé sur ~180, la bordure sera créée sur tout sauf les sections " +"droites." + +msgid "Brim ear detection radius" +msgstr "Rayon de détection de la bordure à oreilles" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"La géométrie sera décimée avant de détecter les angles vifs. Ce paramètre " +"indique la longueur minimale de l’écart pour la décimation.\n" +"0 pour désactiver" + +msgid "Compatible machine" +msgstr "Appareils compatibles" + +msgid "upward compatible machine" +msgstr "machine à compatibilité ascendante" + +msgid "Compatible machine condition" +msgstr "État de la machine compatible" + +msgid "Compatible process profiles" +msgstr "Profils de traitement compatibles" + +msgid "Compatible process profiles condition" +msgstr "Condition de profils de traitement compatibles" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Séquence d'impression, couche par couche ou objet par objet" + +msgid "By layer" +msgstr "Par couche" + +msgid "By object" +msgstr "Par objet" + +msgid "Intra-layer order" +msgstr "Ordre intra-couche" + +msgid "Print order within a single layer" +msgstr "Ordre d’impression au sein d’une même couche" + +msgid "As object list" +msgstr "En tant que liste d’objets" + +msgid "Slow printing down for better layer cooling" +msgstr "Impression lente pour un meilleur refroidissement des couches" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Activez cette option pour ralentir la vitesse d'impression afin que le temps " +"de couche final ne soit pas plus court que le seuil de temps de couche dans " +"\"Seuil de vitesse maximale du ventilateur\", afin que cette couche puisse " +"être refroidie plus longtemps. Cela peut améliorer la qualité de " +"refroidissement pour l'aiguille et les petits détails" + +msgid "Normal printing" +msgstr "Impression normale" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"L'accélération par défaut de l'impression normale et du déplacement à " +"l'exception de la couche initiale" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Profil de filament par défaut" + +msgid "Default filament profile when switch to this machine profile" +msgstr "Profil de filament par défaut lors du passage à ce profil de machine" + +msgid "Default process profile" +msgstr "Profil de traitement par défaut" + +msgid "Default process profile when switch to this machine profile" +msgstr "Profil de traitement par défaut lors du passage à ce profil de machine" + +msgid "Activate air filtration" +msgstr "Activer la filtration de l’air" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" +"Activer pour une meilleure filtration de l’air. Commande G-code : M106 P3 " +"S(0-255)" + +msgid "Fan speed" +msgstr "Vitesse du ventilateur" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Vitesse du ventilateur d’extraction pendant l’impression. Cette vitesse " +"écrasera la vitesse dans le G-code personnalisé du filament." + +msgid "Speed of exhaust fan after printing completes" +msgstr "Vitesse du ventilateur d’extraction après l’impression" + +msgid "No cooling for the first" +msgstr "Pas de refroidissement pour" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Éteignez tous les ventilateurs de refroidissement pour les premières " +"couches. Cela peut être utilisé pour améliorer l'adhérence à la plaque." + +msgid "Don't support bridges" +msgstr "Ne pas supporter les ponts" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Cela désactive le support des ponts, ce qui diminue le nombre de supports " +"requis. Les ponts peuvent généralement être imprimés directement sans " +"support s'ils ne sont pas très longs." + +msgid "Thick bridges" +msgstr "Ponts épais" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"S'ils sont activés, les ponts sont plus fiables et peuvent couvrir de plus " +"longues distances, mais ils peuvent sembler moins jolis. S'ils sont " +"désactivés, les ponts ont une meilleure apparence mais ne sont fiables que " +"sur de courtes distances." + +msgid "Thick internal bridges" +msgstr "Ponts internes épais" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"Si cette option est activée, des ponts internes épais seront utilisés. Il " +"est généralement recommandé d’activer cette fonctionnalité. Pensez cependant " +"à la désactiver si vous utilisez des buses larges." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "Ne pas filtrer les petits ponts internes (expérimental)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"Cette option permet de réduire la formation de creux sur les surfaces " +"supérieures des modèles fortement inclinés ou courbés.\n" +"\n" +"Par défaut, les petits ponts internes sont filtrés et le remplissage plein " +"interne est imprimé directement sur le remplissage peu dense. Cela " +"fonctionne bien dans la plupart des cas, accélérant l'impression sans trop " +"compromettre la qualité de la surface supérieure. \n" +"\n" +"Cependant, dans les modèles fortement inclinés ou courbés, en particulier " +"lorsque la densité de remplissage est trop faible, il peut en résulter un " +"enroulement du remplissage plein non soutenu, ce qui provoque un effet de " +"creusement.\n" +"\n" +"L’activation de cette option permet d’imprimer une couche de pont interne " +"sur un remplissage plein interne légèrement non soutenu. Les options ci-" +"dessous contrôlent la quantité de filtrage, c’est-à-dire la quantité de " +"ponts internes créés.\n" +"\n" +"Désactivé - Désactive cette option. Il s’agit du comportement par défaut, " +"qui fonctionne bien dans la plupart des cas.\n" +"\n" +"Filtrage limité - Crée des ponts internes sur les surfaces fortement " +"inclinées, tout en évitant de créer des ponts internes inutiles. Cette " +"option fonctionne bien pour la plupart des modèles difficiles.\n" +"\n" +"Pas de filtrage - Crée des ponts internes sur chaque surplomb interne " +"potentiel. Cette option est utile pour les modèles à surface supérieure " +"fortement inclinée. Cependant, dans la plupart des cas, elle crée trop de " +"ponts inutiles." + +msgid "Disabled" +msgstr "Désactivé" + +msgid "Limited filtering" +msgstr "Filtrage limité" + +msgid "No filtering" +msgstr "Pas de filtrage" + +msgid "Max bridge length" +msgstr "Longueur max des ponts" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Il s'agit de la longueur maximale des ponts qui n'ont pas besoin de support. " +"Mettez 0 si vous souhaitez que tous les ponts soient pris en charge, ou " +"mettez une valeur très élevée si vous souhaitez qu'aucun pont ne soit pris " +"en charge." + +msgid "End G-code" +msgstr "G-code de fin" + +msgid "End G-code when finish the whole printing" +msgstr "G-code de fin lorsque vous avez terminé toute l'impression" + +msgid "Between Object Gcode" +msgstr "G-code entre objet" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Insérer le G-code entre les objets. Ce paramètre n’entrera en vigueur que " +"lorsque vous imprimerez vos modèles objet par objet." + +msgid "End G-code when finish the printing of this filament" +msgstr "G-code de fin lorsque l'impression de ce filament est terminée" + +msgid "Ensure vertical shell thickness" +msgstr "Assurer l’épaisseur de la coque verticale" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"Ajouter un remplissage plein près des surfaces inclinées pour garantir " +"l’épaisseur verticale de la coque (couches solides supérieures et " +"inférieures).\n" +"Aucune : Aucun remplissage plein ne sera ajouté nulle part. Attention : " +"Utilisez cette option avec précaution si votre modèle comporte des surfaces " +"inclinées.\n" +"Critique seulement : Évitez d’ajouter des remplissages solides pour les " +"parois.\n" +"Modéré : Ajouter un remplissage plein uniquement pour les surfaces fortement " +"inclinées\n" +"Tous : ajouter un remplissage plein pour toutes les surfaces inclinées " +"appropriées.\n" +"La valeur par défaut est Tous." + +msgid "Critical Only" +msgstr "Critique seulement" + +msgid "Moderate" +msgstr "Modéré" + +msgid "Top surface pattern" +msgstr "Motif de surface supérieure" + +msgid "Line pattern of top surface infill" +msgstr "Motif de ligne du remplissage de la surface supérieure" + +msgid "Concentric" +msgstr "Concentrique" + +msgid "Rectilinear" +msgstr "Rectiligne" + +msgid "Monotonic" +msgstr "Monotone" + +msgid "Monotonic line" +msgstr "Ligne monotone" + +msgid "Aligned Rectilinear" +msgstr "Rectiligne Aligné" + +msgid "Hilbert Curve" +msgstr "Courbe de Hilbert" + +msgid "Archimedean Chords" +msgstr "Spirale d'Archimède" + +msgid "Octagram Spiral" +msgstr "Spirale Octagramme" + +msgid "Bottom surface pattern" +msgstr "Motif de surface inférieure" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "" +"Motif de ligne du remplissage de la surface inférieure, pas du remplissage " +"du pont" + +msgid "Internal solid infill pattern" +msgstr "Motif de remplissage plein interne" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"Modèle de ligne de remplissage interne. Si la détection d’un remplissage " +"interne étroit est activée, le modèle concentrique sera utilisé pour la " +"petite zone." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Largeur de la ligne de la paroi extérieure. Si elle est exprimée en %, elle " +"sera calculée sur le diamètre de la buse." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Vitesse de paroi extérieure qui est la plus à l'extérieur et visible. Elle " +"est généralement plus lente que la vitesse de la paroi interne pour obtenir " +"une meilleure qualité." + +msgid "Small perimeters" +msgstr "Petits périmètres" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"Ce paramètre séparé affectera la vitesse des périmètres ayant un rayon <= " +"petite longueur de périmètre (généralement des trous). S’il est exprimé en " +"pourcentage (par exemple : 80%), il sera calculé sur la vitesse de la paroi " +"extérieure ci-dessus. Mettre à zéro pour automatique." + +msgid "Small perimeters threshold" +msgstr "Seuil des petits périmètres" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"Cela définit le seuil pour une petite longueur de périmètre. Le seuil par " +"défaut est de 0 mm" + +msgid "Walls printing order" +msgstr "Ordre d’impression des parois" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"Séquence d'impression des parois internes (intérieures) et externes " +"(extérieures). \n" +"\n" +"Utilisez Intérieur/Extérieur pour obtenir les meilleurs surplombs. En effet, " +"les parois en surplomb peuvent adhérer à un périmètre voisin lors de " +"l'impression. Toutefois, cette option entraîne une légère diminution de la " +"qualité de la surface, car le périmètre externe est déformé par l'écrasement " +"du périmètre interne.\n" +"\n" +"Utilisez l’option Intérieur/Extérieur/Intérieur pour obtenir la meilleure " +"finition de surface externe et la meilleure précision dimensionnelle, car la " +"paroi externe est imprimée sans être dérangée par un périmètre interne. " +"Cependant, les performances de la paroi en surplomb seront réduites car il " +"n’y a pas de périmètre interne contre lequel imprimer la paroi externe. " +"Cette option nécessite un minimum de trois parois pour être efficace, car " +"elle imprime d’abord les parois internes à partir du troisième périmètre, " +"puis le périmètre externe et, enfin, le premier périmètre interne. Cette " +"option est recommandée par rapport à l’option Extérieur/intérieur dans la " +"plupart des cas. \n" +"\n" +"Utilisez l’option Extérieur/intérieur pour bénéficier de la même qualité de " +"paroi externe et de la même précision dimensionnelle que l’option Intérieur/" +"extérieur/intérieur. Cependant, les joints en z paraîtront moins cohérents " +"car la première extrusion d’une nouvelle couche commence sur une surface " +"visible.\n" +"\n" +" " + +msgid "Inner/Outer" +msgstr "Intérieur/Extérieur" + +msgid "Outer/Inner" +msgstr "Extérieur/intérieur" + +msgid "Inner/Outer/Inner" +msgstr "Intérieur/Extérieur/Intérieur" + +msgid "Print infill first" +msgstr "Imprimer d’abord le remplissage" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" +"Ordre des parois/remplissages. Lorsque la case n’est pas cochée, les parois " +"sont imprimées en premier, ce qui fonctionne le mieux dans la plupart des " +"cas.\n" +"\n" +"L’impression du remplissage en premier peut aider dans le cas de parois en " +"surplomb importantes, car les parois ont le remplissage adjacent auquel " +"adhérer. Cependant, le remplissage repoussera légèrement les parois " +"imprimées à l’endroit où il est fixé, ce qui se traduira par une moins bonne " +"finition de la surface extérieure. Cela peut également faire ressortir le " +"remplissage à travers les surfaces externes de la pièce." + +msgid "Wall loop direction" +msgstr "Direction de la paroi" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"La direction dans laquelle les boucles de la paroi sont extrudées lorsque " +"l’on regarde du haut vers le bas.\n" +"\n" +"Par défaut, toutes les parois sont extrudées dans le sens inverse des " +"aiguilles d’une montre, sauf si l’option Inverser sur impair est activée. Si " +"vous choisissez une option autre qu’Auto, la direction des parois sera " +"forcée, indépendamment de l’option Inverser sur l’impair.\n" +"\n" +"Cette option sera désactivée si le mode vase sprial est activé." + +msgid "Counter clockwise" +msgstr "Sens inverse des aiguilles d’une montre" + +msgid "Clockwise" +msgstr "Dans le sens des aiguilles d’une montre" + +msgid "Height to rod" +msgstr "Hauteur jusqu’à la tige" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Distance entre la pointe de la buse et la tige de carbone inférieure. " +"Utilisé pour éviter les collisions lors de l'impression \"par objets\"." + +msgid "Height to lid" +msgstr "Hauteur au couvercle" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Distance entre la pointe de la buse et le capot. Utilisé pour éviter les " +"collisions lors de l'impression \"par objets\"." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Rayon de dégagement autour de l'extrudeuse : utilisé pour éviter les " +"collisions lors de l'impression par objets." + +msgid "Nozzle height" +msgstr "Hauteur de la buse" + +msgid "The height of nozzle tip." +msgstr "Hauteur de l’extrémité de la buse." + +msgid "Bed mesh min" +msgstr "Maillage du plateau min" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Cette option définit le point minimum de la zone de maillage du plateau " +"autorisée. En raison du décalage XY de la sonde, la plupart des imprimantes " +"ne sont pas en mesure de sonder l’ensemble du plateau. Pour s’assurer que le " +"point de palpage ne sort pas de la zone du plateau, les points minimum et " +"maximum du maillage du lit doivent être définis de manière appropriée. " +"Snapmaker Orca veille à ce que les valeurs adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max ne dépassent pas ces points min/max. Ces informations " +"peuvent généralement être obtenues auprès du fabricant de votre imprimante. " +"Le paramètre par défaut est (-99999, -99999), ce qui signifie qu’il n’y a " +"pas de limites, autorisant ainsi le palpage sur l’ensemble du plateau." + +msgid "Bed mesh max" +msgstr "Maillage du plateau max" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Cette option définit le point maximum de la zone de maillage du plateau " +"autorisée. En raison du décalage XY de la sonde, la plupart des imprimantes " +"ne sont pas en mesure de sonder l’ensemble du plateau. Pour s’assurer que le " +"point de palpage ne sort pas de la zone du plateau, les points minimum et " +"maximum du maillage du lit doivent être définis de manière appropriée. " +"Snapmaker Orca veille à ce que les valeurs adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max ne dépassent pas ces points min/max. Ces informations " +"peuvent généralement être obtenues auprès du fabricant de votre imprimante. " +"Le réglage par défaut est (99999, 99999), ce qui signifie qu’il n’y a pas de " +"limites, autorisant ainsi le palpage sur l’ensemble du plateau." + +msgid "Probe point distance" +msgstr "Distance entre les points de mesure" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"Cette option définit la distance préférée entre les points de mesure (taille " +"de la grille) pour les directions X et Y, la valeur par défaut étant de 50 " +"mm pour les deux directions." + +msgid "Mesh margin" +msgstr "Marge de la maille" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" +"Cette option détermine la distance supplémentaire de laquelle le maillage du " +"plateau adaptatif doit être étendu dans les directions XY." + +msgid "Extruder Color" +msgstr "Couleur de l'extrudeur" + +msgid "Only used as a visual help on UI" +msgstr "Utilisé uniquement comme aide visuelle sur l'interface utilisateur" + +msgid "Extruder offset" +msgstr "Décalage de l'extrudeur" + +msgid "Flow ratio" +msgstr "Rapport de débit" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"Le matériau peut avoir un changement volumétrique après avoir basculé entre " +"l'état fondu et l'état cristallin. Ce paramètre modifie proportionnellement " +"tout le flux d'extrusion de ce filament dans le G-code. La plage de valeurs " +"recommandée est comprise entre 0,95 et 1,05. Vous pouvez peut-être ajuster " +"cette valeur pour obtenir une belle surface plane en cas de léger " +"débordement ou sous-dépassement" + +msgid "Enable pressure advance" +msgstr "Activer la Pressure Advance" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Activer le Pressure Advance, le résultat de l’auto calibration sera écrasé " +"une fois activé." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "Pressure Advance (Klipper) AKA Linear Advance (Marlin)" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"Largeur de ligne par défaut si les autres largeurs de ligne sont fixées à 0. " +"Si elle est exprimée en %, elle sera calculée sur le diamètre de la buse." + +msgid "Keep fan always on" +msgstr "Garder le ventilateur toujours actif" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Si ce paramètre est activé, le ventilateur de refroidissement des pièces ne " +"sera jamais arrêté et fonctionnera au moins à la vitesse minimale pour " +"réduire la fréquence de démarrage et d'arrêt" + +msgid "Don't slow down outer walls" +msgstr "Ne pas ralentir sur les parois extérieures" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" +"S’il est activé, ce paramètre garantit que les périmètres externes ne sont " +"pas ralentis pour respecter la durée minimale de la couche. Ceci est " +"particulièrement utile dans les scénarios suivants :\n" +"\n" +" 1. Pour éviter les changements de brillance lors de l’impression de " +"filaments brillants \n" +"2. Pour éviter les changements de vitesse des parois externes qui peuvent " +"créer de légers artefacts de paroi qui apparaissent comme des bandes en z. \n" +"3. Pour éviter d’imprimer à des vitesses qui provoquent des VFA (artefacts " +"fins) sur les parois externes.\n" + +msgid "Layer time" +msgstr "Temps de couche" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"Le ventilateur de refroidissement des pièces sera activé pour les couches " +"dont le temps estimé est inférieur à cette valeur. La vitesse du ventilateur " +"est interpolée entre les vitesses minimale et maximale du ventilateur en " +"fonction du temps d'impression de la couche" + +msgid "Default color" +msgstr "Couleur par défaut" + +msgid "Default filament color" +msgstr "Couleur du filament par défaut" + +msgid "Filament notes" +msgstr "Notes du filament" + +msgid "You can put your notes regarding the filament here." +msgstr "Vous pouvez mettre vos notes concernant le filament ici." + +msgid "Required nozzle HRC" +msgstr "Buse HRC requise" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"Dureté HRC minimum de la buse requis pour imprimer le filament. Une valeur " +"de 0 signifie qu'il n'y a pas de vérification de la dureté HRC de la buse." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Ce paramètre correspond au volume de filament qui peut être fondu et extrudé " +"par seconde. La vitesse d'impression sera limitée par la vitesse " +"volumétrique maximale en cas de réglage de vitesse déraisonnablement trop " +"élevé. Cette valeur ne peut pas être nulle." + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Temps de chargement du filament" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Il est temps de charger un nouveau filament lors du changement de filament. " +"Pour les statistiques uniquement" + +msgid "Filament unload time" +msgstr "Temps de déchargement du filament" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Il est temps de décharger l'ancien filament lorsque vous changez de " +"filament. Pour les statistiques uniquement" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Le diamètre du filament est utilisé pour calculer les variables d'extrusion " +"dans le G-code, il est donc important qu'il soit exact et précis." + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "Pourcentage de retrait" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Entrez le pourcentage de rétrécissement que le filament obtiendra après " +"refroidissement (94% si vous mesurez 94mm au lieu de 100mm). La pièce sera " +"mise à l’échelle en xy pour compenser. Seul le filament utilisé pour le " +"périmètre est pris en compte.\n" +"Veillez à laisser suffisamment d’espace entre les objets, car cette " +"compensation est effectuée après les contrôles." + +msgid "Loading speed" +msgstr "Vitesse de chargement" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Vitesse utilisée pour charger le filament sur la tour d’essuyage." + +msgid "Loading speed at the start" +msgstr "Vitesse de chargement au démarrage" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Vitesse utilisée au tout début de la phase de chargement." + +msgid "Unloading speed" +msgstr "Vitesse de déchargement" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Vitesse utilisée pour le déchargement du filament sur la tour d’essuyage " +"(n’affecte pas la partie initiale de retrait juste après le pilonnage)." + +msgid "Unloading speed at the start" +msgstr "Vitesse de déchargement au démarrage" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Vitesse utilisée pour décharger la pointe du filament immédiatement après le " +"pilonnage." + +msgid "Delay after unloading" +msgstr "Délai après déchargement" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Délai une fois le filament déchargé. Peut aider à obtenir des changements " +"d’outils fiables avec des matériaux flexibles qui peuvent nécessiter plus de " +"temps pour revenir aux dimensions d’origine." + +msgid "Number of cooling moves" +msgstr "Nombre de mouvements de refroidissement" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"Le filament est refroidi en étant déplacé d’avant en arrière dans les tubes " +"de refroidissement. Précisez le nombre souhaité de ces mouvements." + +msgid "Speed of the first cooling move" +msgstr "Vitesse du premier mouvement de refroidissement" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "" +"Les mouvements de refroidissement s’accélèrent progressivement à partir de " +"cette vitesse." + +msgid "Minimal purge on wipe tower" +msgstr "Purge minimale sur la tour d’essuyage" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"Après un changement d’outil, la position exacte du filament nouvellement " +"chargé à l’intérieur de la buse peut ne pas être connue et la pression du " +"filament n’est probablement pas encore stable. Avant de purger la tête " +"d’impression dans un remplissage ou un objet, Snapmaker Orca amorcera toujours " +"cette quantité de matériau dans la tour d’essuyage pour purger dans les " +"remplissages ou objets de manière fiable." + +msgid "Speed of the last cooling move" +msgstr "Vitesse du dernier mouvement de refroidissement" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "" +"Les mouvements de refroidissement s’accélèrent progressivement vers cette " +"vitesse." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Temps nécessaire au firmware de l’imprimante (ou au Multi Material Unit 2.0) " +"pour charger un nouveau filament lors d’un changement d’outil (lors de " +"l’exécution du code T). Ce temps est ajouté au temps d’impression total par " +"l’estimateur de temps du G-code." + +msgid "Ramming parameters" +msgstr "Paramètres de pilonnage" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Cette chaîne est éditée par RammingDialog et contient des paramètres " +"spécifiques au pilonnage." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Temps nécessaire au firmware de l’imprimante (ou au Multi Material Unit 2.0) " +"pour décharger un filament lors d’un changement d’outil (lors de l’exécution " +"du code T). Ce temps est ajouté au temps d’impression total par l’estimateur " +"de temps du G-code." + +msgid "Enable ramming for multitool setups" +msgstr "Activer le pilonnage pour les configurations multi-outils" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Effectuez un pilonnage lorsque vous utilisez une imprimante multi-outils " +"(c’est-à-dire lorsque l’option ‘Multi-matériau à extrudeur unique’ dans les " +"paramètres de l’imprimante n’est pas cochée). Une fois vérifié, une petite " +"quantité de filament est rapidement extrudée sur la tour d’essuyage juste " +"avant le changement d’outil. Cette option n’est utilisée que lorsque la tour " +"d’essuyage est activée." + +msgid "Multitool ramming volume" +msgstr "Volume du pilonnage multi-outils" + +msgid "The volume to be rammed before the toolchange." +msgstr "Volume à pilonner avant le changement d’outil." + +msgid "Multitool ramming flow" +msgstr "Débit du pilonnage multi-outils" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "Débit utilisé pour pilonner le filament avant le changement d’outil." + +msgid "Density" +msgstr "Densité" + +msgid "Filament density. For statistics only" +msgstr "Densité des filaments. Pour les statistiques uniquement" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "Le type de matériau du filament" + +msgid "Soluble material" +msgstr "Matériau soluble" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"Le matériau soluble est couramment utilisé pour imprimer le support et " +"l'interface de support" + +msgid "Support material" +msgstr "Supports" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"Le matériau de support est généralement utilisé pour imprimer le support et " +"les interfaces de support." + +msgid "Softening temperature" +msgstr "Température de vitrification" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"Température où le matériau se ramollit. Lorsque la température du plateau " +"est égale ou supérieure à celle-ci, il est fortement recommandé d’ouvrir la " +"porte avant et/ou de retirer la vitre supérieure pour éviter les problèmes " +"d’obstruction." + +msgid "Price" +msgstr "Tarif" + +msgid "Filament price. For statistics only" +msgstr "Coût ​​des filaments, pour les statistiques uniquement." + +msgid "money/kg" +msgstr "argent/kg" + +msgid "Vendor" +msgstr "Fabriquant" + +msgid "Vendor of filament. For show only" +msgstr "Fabriquant du filament." + +msgid "(Undefined)" +msgstr "(Indéfini)" + +msgid "Sparse infill direction" +msgstr "Direction du remplissage" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Angle pour le motif de remplissage qui contrôle le début ou la direction " +"principale de la ligne" + +msgid "Solid infill direction" +msgstr "Direction du remplissage" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Angle pour le motif de remplissage, qui contrôle le début ou la direction " +"principale de la ligne" + +msgid "Rotate solid infill direction" +msgstr "Faire pivoter la direction du remplissage solide" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "" +"Faire pivoter la direction du remplissage solide de 90° pour chaque couche." + +msgid "Sparse infill density" +msgstr "Densité de remplissage" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"Densité du remplissage interne, 100% transforme tous les remplissages en " +"remplissages pleins et le modèle de remplissage interne sera utilisé." + +msgid "Sparse infill pattern" +msgstr "Motif de remplissage" + +msgid "Line pattern for internal sparse infill" +msgstr "Motif de ligne du remplissage interne" + +msgid "Grid" +msgstr "Grille" + +msgid "Line" +msgstr "Ligne" + +msgid "Cubic" +msgstr "Cubique" + +msgid "Tri-hexagon" +msgstr "Tri-hexagone" + +msgid "Gyroid" +msgstr "Gyroïde" + +msgid "Honeycomb" +msgstr "Nid d'abeille" + +msgid "Adaptive Cubic" +msgstr "Cubique adaptatif" + +msgid "3D Honeycomb" +msgstr "Nid d'abeille 3D" + +msgid "Support Cubic" +msgstr "Support Cubique" + +msgid "Lightning" +msgstr "Lightning" + +msgid "Cross Hatch" +msgstr "Quadrillage" + +msgid "Sparse infill anchor length" +msgstr "Longueur de l’ancrage de remplissage interne" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"Connecter une ligne de remplissage à un périmètre interne avec un court " +"segment de périmètre supplémentaire. S’il est exprimé en pourcentage " +"(exemple : 15%), il est calculé sur la largeur de l’extrusion de " +"remplissage. Si aucun segment de périmètre plus court que infill_anchor_max " +"n’est trouvé, la ligne de remplissage est connectée à un segment de " +"périmètre d’un seul côté et la longueur du segment de périmètre pris est " +"limitée à ce paramètre, mais pas plus long que anchor_length_max.\n" +"Une valeur à 0 désactive les périmètres d’ancrage connectés à une seule " +"ligne de remplissage." + +msgid "0 (no open anchors)" +msgstr "0 (aucune ancre ouverte)" + +msgid "1000 (unlimited)" +msgstr "1000 (illimité)" + +msgid "Maximum length of the infill anchor" +msgstr "Longueur maximale de l’ancrage de remplissage" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"Connecter une ligne de remplissage à un périmètre interne avec un court " +"segment de périmètre supplémentaire. S’il est exprimé en pourcentage " +"(exemple : 15 %), il est calculé sur la largeur de l’extrusion de " +"remplissage. Snapmaker Orca essaie de connecter deux lignes de remplissage " +"proches à un court segment de périmètre. Si aucun segment de périmètre plus " +"court que ce paramètre n’est trouvé, la ligne de remplissage est connectée à " +"un segment de périmètre sur un seul côté et la longueur du segment de " +"périmètre pris est limitée à infill_anchor, mais pas plus longue que ce " +"paramètre.\n" +"S’il est défini sur 0, l’ancien algorithme de connexion de remplissage sera " +"utilisé, il devrait créer le même résultat qu’avec 1000 et 0." + +msgid "0 (Simple connect)" +msgstr "0 (connexions simples)" + +msgid "Acceleration of outer walls" +msgstr "Accélération des parois extérieures" + +msgid "Acceleration of inner walls" +msgstr "Accélération des parois intérieures" + +msgid "Acceleration of travel moves" +msgstr "Accélération des déplacements" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Il s'agit de l'accélération de la surface supérieure du remplissage. " +"Utiliser une valeur plus petite pourrait améliorer la qualité de la surface " +"supérieure." + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Accélération de la paroi extérieur : l'utilisation d'une valeur inférieure " +"peut améliorer la qualité." + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Accélération des ponts. Si la valeur est exprimée en pourcentage (par " +"exemple 50%), elle sera calculée en fonction de l’accélération de la paroi " +"extérieure." + +msgid "mm/s² or %" +msgstr "mm/s² or %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Accélération du remplissage interne. Si la valeur est exprimée en " +"pourcentage (par exemple 100%), elle sera calculée en fonction de " +"l’accélération par défaut." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"Accélération du remplissage interne. Si la valeur est exprimée en " +"pourcentage (par exemple 100%), elle sera calculée en fonction de " +"l’accélération par défaut." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Accélération de la couche initiale. L'utilisation d'une valeur plus basse " +"peut améliorer l'adhérence sur le plateau" + +msgid "Enable accel_to_decel" +msgstr "Activer l’accélération à la décélération" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "Le paramètre max_accel_to_decel de Klipper sera ajusté automatiquement" + +msgid "accel_to_decel" +msgstr "Ajuster l’accélération à la décélération" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" +"Le paramètre max_accel_to_decel de Klipper sera ajusté à %% d'accélération" + +msgid "Jerk of outer walls" +msgstr "Jerk des parois extérieures" + +msgid "Jerk of inner walls" +msgstr "Jerk des parois intérieures" + +msgid "Jerk for top surface" +msgstr "Jerk des surfaces supérieures" + +msgid "Jerk for infill" +msgstr "Jerk du remplissage" + +msgid "Jerk for initial layer" +msgstr "Jerk de la couche initiale" + +msgid "Jerk for travel" +msgstr "Jerk des déplacements" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Largeur de la ligne de la couche initiale. Si elle est exprimée en %, elle " +"sera calculée sur le diamètre de la buse." + +msgid "Initial layer height" +msgstr "Hauteur de couche initiale" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Il s'agit de la hauteur de la première couche. L'augmentation de la hauteur " +"de la première couche peut améliorer l'adhérence sur le plateau." + +msgid "Speed of initial layer except the solid infill part" +msgstr "Vitesse de la couche initiale à l'exception du remplissage" + +msgid "Initial layer infill" +msgstr "Remplissage de la couche initiale" + +msgid "Speed of solid infill part of initial layer" +msgstr "Vitesse du remplissage à la couche initiale" + +msgid "Initial layer travel speed" +msgstr "Déplacements" + +msgid "Travel speed of initial layer" +msgstr "Vitesse de déplacement de la couche initiale" + +msgid "Number of slow layers" +msgstr "Nombre de couches lentes" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"Les premières couches sont imprimées plus lentement que la normale. La " +"vitesse augmente progressivement de manière linéaire sur le nombre de " +"couches spécifié." + +msgid "Initial layer nozzle temperature" +msgstr "Température de la buse de couche initiale" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" +"Température de la buse pour imprimer la couche initiale lors de " +"l'utilisation de ce filament" + +msgid "Full fan speed at layer" +msgstr "Ventilateur à pleine vitesse à la couche" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"La vitesse du ventilateur augmentera de manière linéaire à partir de zéro à " +"la couche \"close_fan_the_first_x_layers\" jusqu’au maximum à la couche " +"\"full_fan_speed_layer\". \"full_fan_speed_layer\" sera ignoré s’il est " +"inférieur à \"close_fan_the_first_x_layers\", auquel cas le ventilateur " +"fonctionnera à la vitesse maximale autorisée à la couche " +"\"close_fan_the_first_x_layers\" + 1." + +msgid "layer" +msgstr "couche" + +msgid "Support interface fan speed" +msgstr "Vitesse du ventilateur" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"Cette vitesse de ventilateur est appliquée pendant toutes les interfaces de " +"support, pour pouvoir affaiblir leur liaison avec une vitesse de ventilateur " +"élevée.\n" +"Réglez sur -1 pour désactiver ce remplacement.\n" +"Ne peut être remplacé que par disable_fan_first_layers." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Gigue aléatoire lors de l'impression de la paroi, de sorte que la surface " +"ait un aspect rugueux. Ce réglage contrôle la position irrégulière" + +msgid "Contour" +msgstr "Contour" + +msgid "Contour and hole" +msgstr "Contour et trou" + +msgid "All walls" +msgstr "Toutes les parois" + +msgid "Fuzzy skin thickness" +msgstr "Épaisseur de la surface Irrégulière" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"La largeur à l'intérieur de laquelle jitter. Il est déconseillé d'être en " +"dessous de la largeur de la ligne de la paroi extérieure" + +msgid "Fuzzy skin point distance" +msgstr "Distance de point de la surface irrégulière" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"La distance moyenne entre les points aléatoires introduits sur chaque " +"segment de ligne" + +msgid "Apply fuzzy skin to first layer" +msgstr "Appliquer la surface irrégulière sur la première couche" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "Application ou non d’une surface irrégulière sur la première couche" + +msgid "Filter out tiny gaps" +msgstr "Filtrer les petits espaces" + +msgid "Layers and Perimeters" +msgstr "Couches et Périmètres" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "Filtrer les petits espaces au seuil spécifié." + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Vitesse de remplissage des espaces. L’espace a généralement une largeur de " +"ligne irrégulière et doit être imprimé plus lentement" + +msgid "Precise Z height" +msgstr "Hauteur précise du Z" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Activez cette option pour obtenir une hauteur z précise de l’objet après la " +"découpe. La hauteur précise de l’objet sera obtenue en affinant les hauteurs " +"des dernières couches. Notez qu’il s’agit d’un paramètre expérimental." + +msgid "Arc fitting" +msgstr "Tracer des arcs" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" +"Activez cette option pour obtenir un fichier G-code contenant les " +"déplacements G2 et G3. La tolérance d’ajustement est la même que la " +"résolution. \n" +"\n" +"Note : Pour les machines Klipper, il est recommandé de désactiver cette " +"option. Klipper ne bénéficie pas des commandes d’arc car celles-ci sont à " +"nouveau divisées en segments de ligne par le micrologiciel. Il en résulte " +"une réduction de la qualité de la surface, car les segments de ligne sont " +"convertis en arcs par le slicer, puis à nouveau en segments par le firmware." + +msgid "Add line number" +msgstr "Ajouter un numéro de ligne" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Activez cette option pour ajouter un numéro de ligne (Nx) au début de chaque " +"ligne G-Code" + +msgid "Scan first layer" +msgstr "Analyser la première couche" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Activez cette option pour permettre à l'appareil photo de l'imprimante de " +"vérifier la qualité de la première couche" + +msgid "Nozzle type" +msgstr "Type de buse" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"Le matériau métallique de la buse. Cela détermine la résistance à l'abrasion " +"de la buse et le type de filament pouvant être imprimé" + +msgid "Undefine" +msgstr "Non défini" + +msgid "Hardened steel" +msgstr "Acier trempé" + +msgid "Stainless steel" +msgstr "Acier inoxydable" + +msgid "Brass" +msgstr "Laiton" + +msgid "Nozzle HRC" +msgstr "Dureté HRC buse" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"La dureté de la buse. Zéro signifie qu'il n'est pas nécessaire de vérifier " +"la dureté de la buse pendant la découpe." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Structure de l’imprimante" + +msgid "The physical arrangement and components of a printing device" +msgstr "Disposition physique et les composants du périphérique d’impression" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "Meilleure position d’organisation automatique" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Meilleure position d’organisation automatique dans la plage [0,1] par " +"rapport à forme du plateau." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"Activer cette option si l’imprimante est équipée d'un ventilateur de " +"refroidissement auxiliaire. Commande G-code : M106 P2 S (0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Démarrer le ventilateur plus tôt de ce nombre de secondes par rapport au " +"démarrage cible (vous pouvez utiliser des fractions de secondes). Cela " +"suppose une accélération infinie pour cette estimation de durée et ne prend " +"en compte que les mouvements G1 et G0 (l’ajustement arc n’est pas pris en " +"charge).\n" +"Cela ne déplacera pas les commandes de ventilateur des G-codes personnalisés " +"(ils agissent comme une sorte de \"barrière\").\n" +"Cela ne déplacera pas les commandes de ventilateur dans le G-code de " +"démarrage si seul le ‘G-code de démarrage personnalisé’ est activé.\n" +"Utiliser 0 pour désactiver." + +msgid "Only overhangs" +msgstr "Sur les surplombs uniquement" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "Ne prend en compte que le délai de refroidissement des surplombs." + +msgid "Fan kick-start time" +msgstr "Durée de démarrage du ventilateur" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Émettre une commande de vitesse maximale du ventilateur pendant ce nombre de " +"secondes avant de réduire à la vitesse cible pour démarrer le ventilateur de " +"refroidissement.\n" +"Ceci est utile pour les ventilateurs où un faible PWM/puissance peut être " +"insuffisant pour redémarrer le ventilateur après un arrêt, ou pour faire " +"démarrer le ventilateur plus rapidement.\n" +"Mettre à 0 pour désactiver." + +msgid "Time cost" +msgstr "Coût horaire" + +msgid "The printer cost per hour" +msgstr "Coût horaire de l’imprimante" + +msgid "money/h" +msgstr "€/heure" + +msgid "Support control chamber temperature" +msgstr "Contrôle de température du caisson" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Activez cette option si la machine prend en charge le contrôle de la " +"température du caisson\n" +"Commande de G-code : M141 S(0-255)" + +msgid "Support air filtration" +msgstr "Filtration de l’air" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Activez cette option si l’imprimante prend en charge la filtration de l’air\n" +"Commande G-code : M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "Version du G-code" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Avec quel type de G-code l'imprimante est-elle compatible" + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "Prise en charge de plusieurs types de plateaux" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" +"Activez cette option si vous souhaitez utiliser plusieurs types de plateaux." + +msgid "Label objects" +msgstr "Label Objects" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"Permet d’ajouter des commentaires dans le G-code sur les mouvements " +"d’impression de l’objet auquel ils appartiennent, ce qui est utile pour le " +"plug-in Octoprint CancelObject. Ce paramètre n’est PAS compatible avec la " +"configuration multi-matériaux avec un seul extrudeur et Essuyer dans " +"l’objet / Essuyer dans le remplissage." + +msgid "Exclude objects" +msgstr "Exclure des objets" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "" +"Activer cette option pour ajouter la commande EXCLUDE OBJECT dans le G-code" + +msgid "Verbose G-code" +msgstr "G-code commenté" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Activez cette option pour obtenir un fichier G-code commenté, chaque ligne " +"étant expliquée par un texte descriptif. Si vous imprimez à partir d’une " +"carte SD, le poids supplémentaire du fichier pourrait ralentir le firmware." + +msgid "Infill combination" +msgstr "Combinaison de remplissage" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Combinez automatiquement le remplissage de plusieurs couches pour imprimer " +"ensemble afin de réduire le temps. La paroi est toujours imprimée avec la " +"hauteur de couche d'origine." + +msgid "Filament to print internal sparse infill." +msgstr "Filament pour imprimer un remplissage interne." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Largeur de ligne du remplissage interne. Si elle est exprimée en %, elle " +"sera calculée sur le diamètre de la buse." + +msgid "Infill/Wall overlap" +msgstr "Chevauchement de remplissage/paroi" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" +"La zone de remplissage est légèrement élargie pour chevaucher la paroi afin " +"d’améliorer l’adhérence. La valeur du pourcentage est relative à la largeur " +"de la ligne de remplissage. Réglez cette valeur à ~10-15% pour minimiser le " +"risque de sur-extrusion et d’accumulation de matériau, ce qui rendrait les " +"surfaces supérieures rugueuses." + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "Chevauchement du remplissage ou de la paroi supérieur(e)/inférieur(e)" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"La zone de remplissage solide supérieure est légèrement élargie pour " +"chevaucher la paroi afin d’améliorer l’adhérence et de minimiser " +"l’apparition de trous d’épingle à l’endroit où le remplissage supérieur " +"rencontre les parois. Une valeur de 25-30% est un bon point de départ, " +"minimisant l’apparition de trous d’épingle. La valeur en pourcentage est " +"relative à la largeur de ligne du remplissage." + +msgid "Speed of internal sparse infill" +msgstr "Vitesse de remplissage interne" + +msgid "Interface shells" +msgstr "Coque des interfaces" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Forcer la génération de coques solides entre matériaux/volumes adjacents. " +"Utile pour les impressions multi-extrudeuses avec des matériaux translucides " +"ou un matériau de support soluble" + +msgid "Maximum width of a segmented region" +msgstr "Largeur maximale d’une région segmentée" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Largeur maximale d’une région segmentée. Zéro désactive cette fonction." + +msgid "Interlocking depth of a segmented region" +msgstr "Profondeur d’emboîtement d’une région segmentée" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Profondeur d’imbrication d’une région segmentée. Zéro désactive cette " +"fonction." + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "Type de lissage" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"Le lissage utilise un petit débit pour imprimer à nouveau sur la même " +"hauteur de surface pour rendre la surface plane plus lisse. Ce paramètre " +"contrôle quelle couche est repassée" + +msgid "No ironing" +msgstr "Pas de lissage" + +msgid "Top surfaces" +msgstr "Surfaces supérieures" + +msgid "Topmost surface" +msgstr "Surface la plus élevée" + +msgid "All solid layer" +msgstr "Toutes les couches pleines" + +msgid "Ironing Pattern" +msgstr "Modèle de lissage" + +msgid "The pattern that will be used when ironing" +msgstr "Motif qui sera utilisé lors du lissage" + +msgid "Ironing flow" +msgstr "Flux de lissage" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"La quantité de matière à extruder lors du lissage. Relatif au débit de la " +"hauteur de couche normale. Une valeur trop élevée entraîne une surextrusion " +"en surface" + +msgid "Ironing line spacing" +msgstr "Espacement des lignes de lissage" + +msgid "The distance between the lines of ironing" +msgstr "La distance entre les lignes de lissage" + +msgid "Ironing speed" +msgstr "Vitesse de lissage" + +msgid "Print speed of ironing lines" +msgstr "Vitesse d'impression des lignes de lissage" + +msgid "Ironing angle" +msgstr "Angle de lissage" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"Angle auquel le lissage se fait. Un nombre négatif désactive cette fonction " +"et utilise la méthode par défaut." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"Cette partie G-code est insérée à chaque changement de couche après le " +"levage du Z" + +msgid "Supports silent mode" +msgstr "Prend en charge le mode silencieux" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Si la machine prend en charge le mode silencieux dans lequel la machine " +"utilise une accélération plus faible pour imprimer" + +msgid "Emit limits to G-code" +msgstr "Emission des limites vers le G-code" + +msgid "Machine limits" +msgstr "Limites de la machine" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"Si cette option est activée, les limites de la machine seront émises dans un " +"fichier G-code.\n" +"Cette option sera ignorée si la version du G-code est définie sur Klipper." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Ce G-code sera utilisé comme code pour la pause d'impression. Les " +"utilisateurs peuvent insérer un G-code de pause dans la visionneuse de G-" +"code." + +msgid "This G-code will be used as a custom code" +msgstr "Ce G-code sera utilisé comme code personnalisé" + +msgid "Small area flow compensation (beta)" +msgstr "Compensation du débit des petites zones (beta)" + +msgid "Enable flow compensation for small infill areas" +msgstr "" +"Activer la compensation des débits pour les petites zones de remplissage" + +msgid "Flow Compensation Model" +msgstr "Modèle de compensation de débit" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"Modèle de compensation du débit, utilisé pour ajuster le débit pour les " +"petites zones de remplissage. Le modèle est exprimé sous la forme d’une " +"paire de valeurs séparées par des virgules pour la longueur d’extrusion et " +"les facteurs de correction du débit, une par ligne, dans le format suivant : " +"« 1.234,5.678 »" + +msgid "Maximum speed X" +msgstr "Vitesse maximale X" + +msgid "Maximum speed Y" +msgstr "Vitesse maximale Y" + +msgid "Maximum speed Z" +msgstr "Vitesse maximale Z" + +msgid "Maximum speed E" +msgstr "Vitesse maximale E" + +msgid "Maximum X speed" +msgstr "Vitesse en X maximale" + +msgid "Maximum Y speed" +msgstr "Vitesse en Y maximale" + +msgid "Maximum Z speed" +msgstr "Vitesse en Z maximale" + +msgid "Maximum E speed" +msgstr "Vitesse en E maximale" + +msgid "Maximum acceleration X" +msgstr "Accélérations maximum X" + +msgid "Maximum acceleration Y" +msgstr "Accélérations maximum Y" + +msgid "Maximum acceleration Z" +msgstr "Accélérations maximum Z" + +msgid "Maximum acceleration E" +msgstr "Accélérations maximum E" + +msgid "Maximum acceleration of the X axis" +msgstr "Accélération maximum de l'axe X" + +msgid "Maximum acceleration of the Y axis" +msgstr "Accélération maximum de l'axe Y" + +msgid "Maximum acceleration of the Z axis" +msgstr "Accélération maximum de l'axe Z" + +msgid "Maximum acceleration of the E axis" +msgstr "Accélération maximum de l'axe E" + +msgid "Maximum jerk X" +msgstr "Jerk maximum en X" + +msgid "Maximum jerk Y" +msgstr "Jerk maximum en Y" + +msgid "Maximum jerk Z" +msgstr "Jerk maximum en Z" + +msgid "Maximum jerk E" +msgstr "Jerk maximum en E" + +msgid "Maximum jerk of the X axis" +msgstr "Jerk maximum de l'axe X" + +msgid "Maximum jerk of the Y axis" +msgstr "Jerk maximum de l'axe Y" + +msgid "Maximum jerk of the Z axis" +msgstr "Jerk maximum de l'axe Z" + +msgid "Maximum jerk of the E axis" +msgstr "Jerk maximum de l'axe E" + +msgid "Minimum speed for extruding" +msgstr "Vitesse minimale d'extrusion" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Vitesse minimale d'extrusion (M205 S)" + +msgid "Minimum travel speed" +msgstr "Vitesse de déplacement minimale" + +msgid "Minimum travel speed (M205 T)" +msgstr "Vitesse de déplacement minimale (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Accélération maximale pour l'extrusion" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Accélération maximale pour l'extrusion (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Accélération maximale pour la rétraction" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Accélération maximale pour la rétraction (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Accélération maximale pour le déplacement" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" +"Accélération maximale de déplacement (M204 T), cela ne s’applique qu’à " +"Marlin 2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"La vitesse du ventilateur de refroidissement des pièces peut être augmentée " +"lorsque le refroidissement automatique est activé. Il s'agit de la " +"limitation de vitesse maximale du ventilateur de refroidissement partiel" + +msgid "Max" +msgstr "Maximum" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"La plus grande hauteur de couche imprimable pour l'extrudeuse. Utilisé tp " +"limite la hauteur de couche maximale lorsque la hauteur de couche adaptative " +"est activée" + +msgid "Extrusion rate smoothing" +msgstr "Lissage du taux d’extrusion" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Ce paramètre atténue les changements soudains du taux d’extrusion qui se " +"produisent lorsque l’imprimante passe d’une impression à haut débit (vitesse " +"élevée / largeur de ligne plus grande) à une extrusion à débit plus faible " +"(vitesse plus faible / largeur de ligne plus petite) et vice versa.\n" +"\n" +"Il définit le taux maximum auquel le débit volumétrique extrudé en mm3/sec " +"peut varier dans le temps. Des valeurs plus élevées signifient que des " +"changements du taux d’extrusion plus élevés sont autorisés, ce qui entraîne " +"des transitions de vitesse plus rapides.\n" +"\n" +"Une valeur de 0 désactive la fonctionnalité.\n" +"\n" +"Pour une imprimante direct drive à grande vitesse et à haut débit (comme " +"BambuLab ou Voron), cette valeur n’est généralement pas nécessaire. " +"Cependant, cela peut apporter un avantage marginal dans certains cas où les " +"vitesses varient considérablement. Par exemple, en cas de ralentissements " +"agressifs dus à des surplombs. Dans ces cas, une valeur élevée d’environ " +"300-350 mm3/s2 est recommandée car elle permet un lissage juste suffisant " +"pour aider l’augmentation de la pression pour obtenir une transition de " +"débit plus douce.\n" +"\n" +"Pour les imprimantes plus lentes sans fonction de pressure advance, la " +"valeur doit être réglée beaucoup plus bas. Une valeur de 10-15 mm3/s2 est un " +"bon point de départ en direct drive et de 5-10 mm3/s2 en Bowden.\n" +"\n" +"Cette fonctionnalité est connue sous le nom de Pressure Equalizer dans Prusa " +"Slicer.\n" +"\n" +"Remarque : ce paramètre désactive la fonction Arc." + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "Longueur du segment de lissage" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Une valeur inférieure entraîne des transitions du taux d’extrusion plus " +"douces. Cependant, cela entraîne un fichier G-code beaucoup plus volumineux " +"et davantage d’instructions à traiter par l’imprimante.\n" +"\n" +"La valeur 3 par défaut fonctionne bien dans la plupart des cas. Si votre " +"imprimante a du mal à suivre, augmentez cette valeur pour réduire le nombre " +"de réglages effectués\n" +"\n" +"Valeurs autorisées : 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "Vitesse minimale du ventilateur de refroidissement des pièces" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Vitesse du ventilateur de refroidissement auxiliaire. Le ventilateur " +"auxiliaire fonctionnera à cette vitesse pendant l'impression, à l'exception " +"des premières couches définies sans refroidissement.\n" +"Veuillez activer auxiliaire_fan dans les paramètres de l’imprimante pour " +"utiliser cette fonctionnalité. Commande G-code : M106 P2 S(0-255)" + +msgid "Min" +msgstr "Minimum" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"La hauteur de couche imprimable la plus basse pour l'extrudeuse. Utilisé tp " +"limite la hauteur de couche minimale lorsque la hauteur de couche adaptative " +"est activée" + +msgid "Min print speed" +msgstr "Vitesse d'impression minimale" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"Vitesse d’impression minimale à laquelle l’imprimante ralentira pour tenter " +"de maintenir le temps de couche minimal ci-dessus, lorsque la fonction de " +"ralentissement pour un meilleur refroidissement de la couche est activée." + +msgid "Nozzle diameter" +msgstr "Diamètre de la buse" + +msgid "Diameter of nozzle" +msgstr "Diamètre de la buse" + +msgid "Configuration notes" +msgstr "Notes de la configuration" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Vous pouvez mettre ici vos notes personnelles. Ce texte sera ajouté aux " +"commentaires d’en-tête du G-code." + +msgid "Host Type" +msgstr "Type d'hôte" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca peut téléverser des fichiers G-code sur une imprimante hôte. Ce " +"champ doit contenir le type d'hôte." + +msgid "Nozzle volume" +msgstr "Volume de la buse" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "" +"Volume de la buse entre le coupeur de filament et l'extrémité de la buse" + +msgid "Cooling tube position" +msgstr "Position du tube de refroidissement" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "" +"Distance entre le point central du tube de refroidissement et la pointe de " +"l’extrudeur." + +msgid "Cooling tube length" +msgstr "Longueur du tube de refroidissement" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Longueur du tube de refroidissement pour limiter l’espace à l’intérieur du " +"tube de refroidissement." + +msgid "High extruder current on filament swap" +msgstr "Courant de l’extrudeur élevé lors du changement de filament" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Il peut être avantageux d’augmenter le courant du moteur de l’extrudeur " +"pendant la séquence d’échange de filament pour permettre des vitesses " +"d’alimentation rapides et pour surmonter la résistance lors du chargement " +"d’un filament." + +msgid "Filament parking position" +msgstr "Position de stationnement du filament" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Distance entre la pointe de l’extrudeur et la position où le filament est " +"parqué une fois déchargé. Cela doit correspondre à la valeur du firmware de " +"l’imprimante." + +msgid "Extra loading distance" +msgstr "Distance de chargement supplémentaire" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Lorsqu’il est réglé sur zéro, la distance à laquelle le filament est déplacé " +"depuis la position de stationnement pendant le chargement est exactement la " +"même que celle à laquelle il a été déplacé pendant le déchargement. " +"Lorsqu’il est positif, il est chargé davantage, s’il est négatif, le " +"mouvement de chargement est plus court que le déchargement." + +msgid "Start end points" +msgstr "Points de départ et d'arrivée" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "" +"Les points de départ et d'arrivée qui se situent entre la zone de coupe et " +"la goulotte d'évacuation." + +msgid "Reduce infill retraction" +msgstr "Réduire la rétraction du remplissage" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Ne pas effectuer de rétraction lors de déplacement en zone de remplissage " +"car même si l’extrudeur suinte, les coulures ne seraient pas visibles. Cela " +"peut réduire les rétractions pour les modèles complexes et économiser du " +"temps d’impression, mais ralentit la découpe et la génération du G-code." + +msgid "Filename format" +msgstr "Format du nom de fichier" + +msgid "User can self-define the project file name when export" +msgstr "" +"L'utilisateur peut définir lui-même le nom du fichier de projet lors de " +"l'exportation" + +msgid "Make overhangs printable" +msgstr "Rendre les surplombs imprimables" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "Modifier la géométrie pour imprimer les surplombs sans support." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Rendre les surplombs imprimables - Angle maximal" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Angle maximal des surplombs à autoriser après avoir rendu imprimables les " +"surplombs plus raides. Une valeur de 90° ne changera pas du tout le modèle " +"et n’autorisera aucun surplomb, tandis que 0 remplacera tous les surplombs " +"par un matériau conique." + +msgid "Make overhangs printable - Hole area" +msgstr "Rendre les surplombs imprimables - Zone de trous" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Aire maximale d’un trou dans la base du modèle avant qu’il ne soit rempli " +"par un matériau conique. Une valeur de 0 remplira tous les trous dans la " +"base du modèle." + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Détecter une paroi en surplomb" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Détectez le pourcentage de surplomb par rapport à la largeur de la ligne et " +"utilisez une vitesse différente pour imprimer. Pour un surplomb de 100%% la " +"vitesse du pont est utilisée." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Largeur de ligne de la paroi intérieure. Si elle est exprimée en %, elle " +"sera calculée sur le diamètre de la buse." + +msgid "Speed of inner wall" +msgstr "Vitesse de la paroi intérieure" + +msgid "Number of walls of every layer" +msgstr "Nombre de parois de chaque couche" + +msgid "Alternate extra wall" +msgstr "Paroi supplémentaire alternée" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"Ce paramètre ajoute une paroi supplémentaire à chaque couche. De cette " +"manière, le remplissage est coincé verticalement entre les parois, ce qui " +"permet d’obtenir des impressions plus solides. \n" +"\n" +"Lorsque cette option est activée, l’option « assurer l’épaisseur verticale " +"de la coque » doit être désactivée. \n" +"\n" +"Il n’est pas recommandé d’utiliser le remplissage par éclairs avec cette " +"option, car il y a peu de remplissage pour ancrer les périmètres " +"supplémentaires." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Si vous souhaitez traiter le G-code de sortie via des scripts personnalisés, " +"indiquez simplement leurs chemins absolus ici. Séparez plusieurs scripts par " +"un point-virgule. Les scripts recevront le chemin absolu vers le fichier G-" +"code comme premier argument, et ils peuvent accéder aux paramètres de " +"configuration Snapmaker Orca en lisant les variables d’environnement." + +msgid "Printer notes" +msgstr "Notes de l’mprimante" + +msgid "You can put your notes regarding the printer here." +msgstr "Vous pouvez mettre vos notes concernant l’imprimante ici." + +msgid "Raft contact Z distance" +msgstr "Distance Z de contact du radeau" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "Écart en Z entre l'objet et le radeau. Ignoré pour l'interface soluble" + +msgid "Raft expansion" +msgstr "Agrandissement du radeau" + +msgid "Expand all raft layers in XY plane" +msgstr "Développer toutes les couches de radeau dans le plan XY" + +msgid "Initial layer density" +msgstr "Densité de couche initiale" + +msgid "Density of the first raft or support layer" +msgstr "Densité du premier radeau ou couche de support" + +msgid "Initial layer expansion" +msgstr "Extension de la couche initiale" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Développez le premier radeau ou couche de support pour améliorer l'adhérence " +"du plateau" + +msgid "Raft layers" +msgstr "Couches du radeau" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"L'objet sera élevé par ce nombre de couches de support. Utilisez cette " +"fonction pour éviter l'emballage lors de l'impression ABS" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"Le chemin du G-code est généré après avoir simplifié le contour du modèle " +"pour éviter trop de points et de lignes G-code dans le fichier G-code. Une " +"valeur plus petite signifie une résolution plus élevée et plus de temps pour " +"découper" + +msgid "Travel distance threshold" +msgstr "Seuil de distance parcourue" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Ne déclencher la rétraction que lorsque la distance parcourue est supérieure " +"à ce seuil" + +msgid "Retract amount before wipe" +msgstr "Quantité de rétraction avant essuyage" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"La longueur de la rétraction rapide avant l’essuyage, par rapport à la " +"longueur de la rétraction" + +msgid "Retract when change layer" +msgstr "Rétracter lors de changement de couche" + +msgid "Force a retraction when changes layer" +msgstr "Cela force une rétraction sur les changements de couche." + +msgid "Retraction Length" +msgstr "Longueur de Rétraction" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Une certaine quantité de matériau dans l'extrudeuse est retirée pour éviter " +"le suintement pendant les longs trajets. Définir zéro pour désactiver la " +"rétraction" + +msgid "Long retraction when cut(experimental)" +msgstr "Longue rétraction lors de la coupe (expérimental)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Fonction expérimentale : rétracter et couper le filament à une plus grande " +"distance pendant les changements pour minimiser la purge. Bien que cela " +"réduise considérablement la purge, cela peut également augmenter le risque " +"de bouchage des buses ou d’autres problèmes d’impression." + +msgid "Retraction distance when cut" +msgstr "Distance de rétraction lors de la coupe" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Fonction expérimentale : longueur de rétraction avant la coupure lors du " +"changement de filament." + +msgid "Z hop when retract" +msgstr "Décalage du Z lors de la rétraction" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Chaque fois que la rétraction est effectuée, la buse est légèrement soulevée " +"pour créer un espace entre la buse et l'impression. Il empêche la buse de " +"toucher l'impression lors du déplacement. L'utilisation d'une ligne en " +"spirale pour soulever z peut empêcher l'enfilage" + +msgid "Z hop lower boundary" +msgstr "Limite inférieure du saut de Z" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Le saut de Z ne sera effectif que si Z est supérieur à cette valeur et " +"inférieur au paramètre : « Limite supérieure du saut de Z »" + +msgid "Z hop upper boundary" +msgstr "Limite supérieure du saut de Z" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Si cette valeur est positive, le saut de Z ne sera effectif que si Z est " +"supérieur au paramètre : « Limite inférieure de Z hop » et qu’il est " +"inférieur à cette valeur." + +msgid "Z hop type" +msgstr "Type de décalage en Z" + +msgid "Slope" +msgstr "Pente" + +msgid "Spiral" +msgstr "Spirale" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "Décalage en Z au-dessus uniquement" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Si définie sur une valeur positive, l’élévation Z n’aura lieu qu’au-dessus " +"du Z absolu spécifié." + +msgid "Only lift Z below" +msgstr "Décalage en Z en dessous uniquement" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Si définie sur une valeur positive, l’élévation Z n’aura lieu qu’en dessous " +"du Z absolu spécifié." + +msgid "On surfaces" +msgstr "Sur les surfaces" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Appliquer le comportement du décalage en Z. Ce paramètre est impacté par les " +"paramètres ci-dessus (décalage en Z au-dessus/en dessous uniquement)." + +msgid "All Surfaces" +msgstr "Toutes les surfaces" + +msgid "Top Only" +msgstr "Supérieures" + +msgid "Bottom Only" +msgstr "Inférieures" + +msgid "Top and Bottom" +msgstr "Supérieures et Inférieures" + +msgid "Extra length on restart" +msgstr "Longueur supplémentaire" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Lorsque la rétraction est compensée après le mouvement de déplacement, " +"l’extrudeuse poussera cette quantité supplémentaire de filament. Ce " +"paramètre est rarement nécessaire." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Lorsque la rétraction est compensée après le changement d’outil, l’extrudeur " +"poussera cette quantité supplémentaire de filament." + +msgid "Retraction Speed" +msgstr "Vitesse de Rétraction" + +msgid "Speed of retractions" +msgstr "Vitesse de rétraction" + +msgid "Deretraction Speed" +msgstr "Vitesse de réinsertion" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Vitesse de rechargement du filament dans l'extrudeuse. Zéro signifie même " +"vitesse avec rétraction" + +msgid "Use firmware retraction" +msgstr "Utiliser la rétraction firmware" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"Ce paramètre expérimental utilise les commandes G10 et G11 pour que le " +"firmware gère la rétraction. Ceci n’est pris en charge que dans une version " +"de Marlin récente." + +msgid "Show auto-calibration marks" +msgstr "Afficher les marques de calibration" + +msgid "Disable set remaining print time" +msgstr "Désactiver le réglage du temps d’impression restant" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" +"Désactiver la génération du M73 : Définir le temps d’impression restant dans " +"le gcode final" + +msgid "Seam position" +msgstr "Position de la couture" + +msgid "The start position to print each part of outer wall" +msgstr "" +"La position de départ pour imprimer chaque partie de la paroi extérieure" + +msgid "Nearest" +msgstr "La plus proche" + +msgid "Aligned" +msgstr "Alignée" + +msgid "Back" +msgstr "Arrière" + +msgid "Random" +msgstr "Aléatoire" + +msgid "Staggered inner seams" +msgstr "Coutures intérieures décalées" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Cette option entraîne le décalage des coutures intérieures vers l’arrière en " +"fonction de leur profondeur, formant un motif en zigzag." + +msgid "Seam gap" +msgstr "Écart de couture" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Afin de réduire la visibilité de la couture dans une extrusion en boucle " +"fermée, la boucle est interrompue et raccourcie d’une valeur spécifiée.\n" +"Cette quantité peut être spécifiée en millimètres ou en pourcentage du " +"diamètre actuel de la buse. La valeur par défaut de ce paramètre est 10%." + +msgid "Scarf joint seam (beta)" +msgstr "Couture en biseau (beta)" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Utiliser une couture en biseau pour minimiser la visibilité de la couture et " +"augmenter sa solidité." + +msgid "Conditional scarf joint" +msgstr "Couture en biseau conditionnelle" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"N’appliquer les couture en biseau que sur les périmètres lisses, lorsque les " +"coutures traditionnelles ne permettent pas de dissimuler efficacement les " +"coutures dans les angles saillants." + +msgid "Conditional angle threshold" +msgstr "Seuil d’angle conditionnel" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"Cette option définit l’angle seuil pour l’application d’une couture en " +"biseau conditionnelle.\n" +"Si l’angle maximal à l’intérieur de la boucle périmétrique dépasse cette " +"valeur (indiquant l’absence d’angles vifs), une couture en biseau sera " +"utilisée. La valeur par défaut est de 155°." + +msgid "Conditional overhang threshold" +msgstr "Seuil de dépassement conditionnel" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"Cette option détermine le seuil de surplomb pour l’application des coutures " +"en écharpe. Si la partie non soutenue du périmètre est inférieure à ce " +"seuil, des coutures en biseau seront appliquées. Le seuil par défaut est " +"fixé à 40 % de la largeur de la paroi extérieure. Pour des raisons de " +"performance, le degré de surplomb est estimé." + +msgid "Scarf joint speed" +msgstr "Vitesse de la couture en biseau" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"Cette option définit la vitesse d’impression des coutures en biseau. Il est " +"recommandé d’imprimer les coutures en biseau à une vitesse lente (moins de " +"100 mm/s). Il est également conseillé d’activer l’option « Lissage de la " +"vitesse d’extrusion » si la vitesse définie varie de manière significative " +"par rapport à la vitesse des parois extérieures ou intérieures. Si la " +"vitesse spécifiée ici est supérieure à la vitesse des parois extérieures ou " +"intérieures, l’imprimante prendra par défaut la plus lente des deux " +"vitesses. Lorsqu’elle est spécifiée sous forme de pourcentage (par exemple, " +"80 %), la vitesse est calculée sur la base de la vitesse de la paroi " +"extérieure ou intérieure. La valeur par défaut est fixée à 100 %." + +msgid "Scarf joint flow ratio" +msgstr "Ratio de débit de la couture en biseau" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" +"Ce facteur influe sur la quantité de matériau pour les coutures en biseau." + +msgid "Scarf start height" +msgstr "Hauteur de départ du biseau" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Hauteur de départ du biseau.\n" +"Cette hauteur peut être spécifiée en millimètres ou en pourcentage de la " +"hauteur de la couche actuelle. La valeur par défaut de ce paramètre est 0." + +msgid "Scarf around entire wall" +msgstr "Biseau sur toute la paroi" + +msgid "The scarf extends to the entire length of the wall." +msgstr "Le biseau s’étend sur toute la longueur de la paroi." + +msgid "Scarf length" +msgstr "Longueur du biseau" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Longueur du biseau. La mise à zéro de ce paramètre désactive automatiquement " +"le biseau." + +msgid "Scarf steps" +msgstr "Étapes du biseau" + +msgid "Minimum number of segments of each scarf." +msgstr "Nombre minimum de segments de chaque biseau." + +msgid "Scarf joint for inner walls" +msgstr "Joint en biseau pour les parois internes" + +msgid "Use scarf joint for inner walls as well." +msgstr "Utiliser également un joint en biseau pour les parois intérieures." + +msgid "Role base wipe speed" +msgstr "Vitesse d’essuyage basée sur la vitesse d’extrusion" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"La vitesse d’essuyage est identique à la vitesse d’extrusion actuelle. Par " +"exemple, si l’action d’essuyage est suivie d’une extrusion de paroi " +"extérieure, la vitesse de la paroi extérieure sera utilisée pour cette " +"action d’essuyage." + +msgid "Wipe on loops" +msgstr "Essuyer sur les boucles" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Pour minimiser la visibilité de la couture dans une extrusion en boucle " +"fermée, un petit mouvement vers l’intérieur est exécuté avant que la buse ne " +"quitte la boucle." + +msgid "Wipe before external loop" +msgstr "Essuyer avant la boucle externe" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"Pour minimiser la visibilité d’une éventuelle surextrusion au début d’un " +"périmètre extérieur lors de l’impression avec l’ordre d’impression de paroi " +"extérieure/intérieure ou intérieure/extérieure/intérieure, la dérétraction " +"est effectuée légèrement sur l’intérieur à partir du début du périmètre " +"extérieur. De cette manière, toute sur-extrusion potentielle est cachée de " +"la surface extérieure. \n" +"\n" +"Ceci est utile lors de l’impression avec l’ordre d’impression de la paroi " +"extérieure/intérieure ou intérieure/extérieure/intérieure, car dans ces " +"modes, il est plus probable qu’un périmètre extérieur soit imprimé " +"immédiatement après un mouvement de dérétraction." + +msgid "Wipe speed" +msgstr "Vitesse d’essuyage" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"La vitesse d’essuyage est déterminée par le paramètre de vitesse spécifié " +"dans cette configuration. Si la valeur est exprimée en pourcentage (par " +"exemple 80%), elle sera calculée en fonction du paramètre de vitesse de " +"déplacement ci-dessus. La valeur par défaut de ce paramètre est 80%" + +msgid "Skirt distance" +msgstr "Distance de la jupe" + +msgid "Distance from skirt to brim or object" +msgstr "Distance de la jupe au bord ou à l'objet" + +msgid "Skirt height" +msgstr "Hauteur de la jupe" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Nombre de couches de jupe, généralement une seule." + +msgid "Draft shield" +msgstr "Paravent" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"Un paravent est utile pour protéger une impression ABS ou ASA contre les " +"risques de déformation et de détachement du plateau d’impression en raison " +"des courants d’air. Il n’est généralement nécessaire que pour les " +"imprimantes à cadre ouvert, c’est-à-dire sans caisson. \n" +"\n" +"Options :\n" +"Activé = la hauteur de la jupe est égale à celle de l’objet imprimé le plus " +"haut.\n" +"Limité = la hauteur de la jupe est celle spécifiée par la hauteur de la " +"jupe.\n" +"\n" +"Remarque : lorsque le paravent est actif, la jupe est imprimée à la distance " +"de la jupe par rapport à l’objet. Par conséquent, si des bordures sont " +"actives, elle risque de les croiser. Pour éviter cela, augmentez la valeur " +"de la distance de la jupe.\n" + +msgid "Limited" +msgstr "Limité" + +msgid "Enabled" +msgstr "Activé" + +msgid "Skirt loops" +msgstr "Boucles de la jupe" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "Nombre de boucles pour la jupe. Zéro signifie désactiver la jupe" + +msgid "Skirt speed" +msgstr "Vitesse de la jupe" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" +"Vitesse de la jupe, en mm/s. Une valeur à 0 signifie que la vitesse " +"d’extrusion par défaut est utilisée." + +msgid "Skirt minimum extrusion length" +msgstr "Longueur minimale d’extrusion de la jupe" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"Longueur minimale d’extrusion du filament en mm lors de l’impression de la " +"jupe. Zéro signifie que cette fonction est désactivée.\n" +"\n" +"L’utilisation d’une valeur non nulle est utile si l’imprimante est " +"configurée pour imprimer sans ligne d’amorce." + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"La vitesse d'impression dans le G-code exporté sera ralentie, lorsque le " +"temps de couche estimé est plus court que cette valeur, pour obtenir un " +"meilleur refroidissement pour ces couches" + +msgid "Minimum sparse infill threshold" +msgstr "Seuil minimum de remplissage" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"La zone de remplissage inférieure à la valeur seuil est remplacée par un " +"remplissage plein interne" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Largeur de ligne du remplissage plein interne. Si elle est exprimée en %, " +"elle sera calculée sur le diamètre de la buse." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"Vitesse du remplissage plein interne, pas de la surface supérieure et " +"inférieure" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Spiralize lisse les mouvements z du contour extérieur. Et transforme un " +"modèle plein en une impression à paroi unique avec des couches inférieures " +"solides. Le modèle généré final n'a pas de couture." + +msgid "Smooth Spiral" +msgstr "Spirale lisse" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"« Spirale lisse » lisse également les mouvements X et Y, de sorte qu’aucune " +"couture n’est visible, même dans les directions XY sur des parois qui ne " +"sont pas verticales." + +msgid "Max XY Smoothing" +msgstr "Lissage Max XY" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Distance maximale pour déplacer les points dans l’axe XY afin d’obtenir une " +"spirale lisse. Si elle est exprimée en %, elle sera calculée par rapport au " +"diamètre de la buse." + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Si le mode fluide ou traditionnel est sélectionné, une vidéo en timelapse " +"sera générée pour chaque impression. À chaque couche imprimée, un instantané " +"est pris avec la caméra intégrée. Tous ces instantanés seront assemblés dans " +"une vidéo timelapse une fois l'impression terminée. Si le mode lisse est " +"sélectionné, l'extrudeur se déplace vers la goulotte d'évacuation à chaque " +"couche imprimée, puis prend un cliché. Étant donné que le filament fondu " +"peut s'échapper de la buse pendant la prise de vue, une tour de purge est " +"requise en mode lisse pour essuyer la buse." + +msgid "Traditional" +msgstr "Traditionnel" + +msgid "Temperature variation" +msgstr "Variation de température" + +msgid "Start G-code" +msgstr "G-code de démarrage" + +msgid "Start G-code when start the whole printing" +msgstr "G-code de démarrage lors du démarrage de l'ensemble de l'impression" + +msgid "Start G-code when start the printing of this filament" +msgstr "G-code de démarrage au démarrage de l'impression de ce filament" + +msgid "Single Extruder Multi Material" +msgstr "Multi-matériaux pour extrudeur unique" + +msgid "Use single nozzle to print multi filament" +msgstr "Utiliser une seule buse pour imprimer plusieurs filaments" + +msgid "Manual Filament Change" +msgstr "Changement manuel du filament" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Activez cette option pour omettre le G-code de changement de filament " +"personnalisé uniquement au début de l’impression. La commande de changement " +"d’outil (par exemple, T0) sera ignorée tout au long de l’impression. Ceci " +"est utile pour l’impression manuelle multi-matériaux, où nous utilisons M600/" +"PAUSE pour déclencher l’action de changement manuel de filament." + +msgid "Purge in prime tower" +msgstr "Purge dans la tour de purge" + +msgid "Purge remaining filament into prime tower" +msgstr "Purger le filament restant dans la tour de purge" + +msgid "Enable filament ramming" +msgstr "Activer le pilonnage du filament" + +msgid "No sparse layers (beta)" +msgstr "Pas de couches éparses (beta)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Si cette option est activée, la tour d’essuyage ne sera pas imprimée sur les " +"couches sans changement d’outil. Sur les couches avec changement d’outil, " +"l’extrudeur se déplacera vers le bas pour imprimer la tour d’essuyage. " +"L’utilisateur est responsable de s’assurer qu’il n’y a pas de collision avec " +"l’impression." + +msgid "Prime all printing extruders" +msgstr "Amorcer tous les extrudeurs d’impression" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Si cette option est activée, tous les extrudeurs d’impression seront amorcés " +"sur le bord avant du plateau au début de l’impression." + +msgid "Slice gap closing radius" +msgstr "Rayon de fermeture de l’écart des tranches" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Les fissures plus petites que 2x le rayon de fermeture de l’espace sont " +"remplies pendant la découpe du maillage. L’opération de fermeture de " +"l’espace peut réduire la résolution finale de l’impression, il est donc " +"conseillé de maintenir cette valeur à un niveau raisonnablement bas." + +msgid "Slicing Mode" +msgstr "Mode de découpe" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Utilisez « Pair-impair » pour les modèles d'avion 3DLabPrint. Utilisez « " +"Fermer les trous » pour fermer tous les trous du modèle." + +msgid "Regular" +msgstr "Standard" + +msgid "Even-odd" +msgstr "Pair-impair" + +msgid "Close holes" +msgstr "Combler les trous" + +msgid "Z offset" +msgstr "Décalage Z" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Cette valeur sera ajoutée (ou soustraite) de toutes les coordonnées Z dans " +"le G-code de sortie. Il est utilisé pour compenser une mauvaise position de " +"la butée Z : par exemple, si votre zéro de butée laisse réellement la buse à " +"0,3 mm du plateau, réglez-le sur -0,3 (ou corrigez votre butée)." + +msgid "Enable support" +msgstr "Activer les supports" + +msgid "Enable support generation." +msgstr "Activer la génération de support." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"Normaux (auto) et Arborescents (auto) sont utilisés pour générer " +"automatiquement un support. Si vous sélectionnez Normaux (manuel) ou " +"Arborescents (manuel), seuls les générateurs de support manuels sont générés" + +msgid "normal(auto)" +msgstr "Normaux (auto)" + +msgid "tree(auto)" +msgstr "Arborescents (auto)" + +msgid "normal(manual)" +msgstr "Normaux (manuel)" + +msgid "tree(manual)" +msgstr "Arborescents (manuel)" + +msgid "Support/object xy distance" +msgstr "Distance support/objet xy" + +msgid "XY separation between an object and its support" +msgstr "Séparation XY entre un objet et ses supports" + +msgid "Pattern angle" +msgstr "Angle du motif" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Utilisez ce paramètre pour faire pivoter le motif de support sur le plan " +"horizontal." + +msgid "On build plate only" +msgstr "Sur plateau uniquement" + +msgid "Don't create support on model surface, only on build plate" +msgstr "" +"Ce paramètre génère uniquement les supports qui commencent sur le plateau." + +msgid "Support critical regions only" +msgstr "Ne supporter que les régions critiques" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Créez un support uniquement pour les zones critiques notamment les pointes, " +"les surplombs, etc." + +msgid "Remove small overhangs" +msgstr "Supprimer les petits surplombs" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "" +"Supprimer les petits surplombs qui n’ont peut-être pas besoin de supports." + +msgid "Top Z distance" +msgstr "Distance Z supérieure" + +msgid "The z gap between the top support interface and object" +msgstr "L'écart z entre l'interface de support supérieure et l'objet" + +msgid "Bottom Z distance" +msgstr "Distance Z inférieure" + +msgid "The z gap between the bottom support interface and object" +msgstr "L'écart Z entre l'interface du support inférieur et l'objet" + +msgid "Support/raft base" +msgstr "Support/base du radeau" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filament pour imprimer les supports et radeaux. « Par défaut » signifie " +"qu'aucun filament spécifique n'est utilisé comme support et que le filament " +"actuel est utilisé" + +msgid "Avoid interface filament for base" +msgstr "Réduire le filament d’interface pour la base" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Éviter d’utiliser le filament de l’interface du support pour imprimer la " +"base du support" + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Largeur de ligne des supports. Si elle est exprimée en %, elle sera calculée " +"sur le diamètre de la buse." + +msgid "Interface use loop pattern" +msgstr "Modèle de boucle d'utilisation d'interface" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Recouvrir la couche de contact supérieure des supports avec des boucles. " +"Désactivé par défaut." + +msgid "Support/raft interface" +msgstr "Support/base d'interface" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filament pour l'impression des interfaces de support. \"Défaut\" signifie " +"qu'il n'y a pas de filament spécifique pour l'interface de support et que le " +"filament actuel est utilisé." + +msgid "Top interface layers" +msgstr "Couches d'interface supérieures" + +msgid "Number of top interface layers" +msgstr "Nombre de couches d'interface supérieures" + +msgid "Bottom interface layers" +msgstr "Couches d'interface inférieures" + +msgid "Number of bottom interface layers" +msgstr "Nombre de couches d’interface inférieures" + +msgid "Same as top" +msgstr "Identique au sommet" + +msgid "Top interface spacing" +msgstr "Espacement de l'interface supérieure" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "Espacement des lignes d'interface. Zéro signifie une interface solide" + +msgid "Bottom interface spacing" +msgstr "Espacement de l'interface inférieure" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Espacement des lignes d'interface inférieures. Zéro signifie une interface " +"solide" + +msgid "Speed of support interface" +msgstr "Vitesse pour l'interface des supports" + +msgid "Base pattern" +msgstr "Motif de base" + +msgid "Line pattern of support" +msgstr "Motif de ligne de support" + +msgid "Rectilinear grid" +msgstr "Grille rectiligne" + +msgid "Hollow" +msgstr "Creux" + +msgid "Interface pattern" +msgstr "Motif d'interface" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Modèle de ligne de l'interface de support. Le modèle par défaut pour " +"l'interface de support non soluble est rectiligne, tandis que le modèle par " +"défaut pour l'interface de support soluble est concentrique" + +msgid "Rectilinear Interlaced" +msgstr "Rectiligne Entrelacé" + +msgid "Base pattern spacing" +msgstr "Espacement du motif de base" + +msgid "Spacing between support lines" +msgstr "Espacement entre les lignes de support" + +msgid "Normal Support expansion" +msgstr "Expansion normale du support" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "Augmenter (+) ou réduire (-) la portée horizontale du support normal." + +msgid "Speed of support" +msgstr "Vitesse pour les supports" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"Style et forme des supports. Pour les supports normaux, une grille régulière " +"créera des supports plus stables (par défaut), tandis que des tours de " +"supports bien ajustées économiseront du matériel et réduiront les marques " +"sur les objets.\n" +"Pour les supports arborescents, le style mince et organique fusionnera les " +"branches de manière plus agressive et économisera beaucoup de matière " +"(organique par défaut), tandis que le style hybride créera une structure " +"similaire aux supports normaux sous de grands surplombs plats." + +msgid "Snug" +msgstr "Ajusté" + +msgid "Tree Slim" +msgstr "Arborescent Fin" + +msgid "Tree Strong" +msgstr "Arborescent Fort" + +msgid "Tree Hybrid" +msgstr "Arborescent Hybride" + +msgid "Organic" +msgstr "Arborescents Organiques" + +msgid "Independent support layer height" +msgstr "Hauteur de la couche de support indépendante" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"La couche de support utilise la hauteur de la couche indépendamment de la " +"couche objet. Cela permet de personnaliser l’écart de Z et de gagner du " +"temps d'impression. Cette option ne sera pas valide lorsque la tour de purge " +"sera activée." + +msgid "Threshold angle" +msgstr "Angle de seuil" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Un support sera généré pour les surplombs dont l'angle de pente est " +"inférieur au seuil." + +msgid "Tree support branch angle" +msgstr "Angle de branche support arborescent" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Ce paramètre détermine l'angle des surplombs maximum que les branches du " +"support arborescent peuvent faire. Si l'angle est augmenté, les branches " +"peuvent être imprimées plus horizontalement, ce qui leur permet d'aller plus " +"loin." + +msgid "Preferred Branch Angle" +msgstr "Angle des branches préféré" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"Angle préféré des branches, lorsqu’elles ne doivent pas éviter le modèle. " +"Utilisez un angle inférieur pour les rendre plus verticaux et plus stables. " +"Utilisez un angle plus élevé pour que les branches fusionnent plus " +"rapidement." + +msgid "Tree support branch distance" +msgstr "Distance de branche de support arborescent" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"Ce paramètre détermine la distance entre les nœuds de support arborescents " +"voisins." + +msgid "Branch Density" +msgstr "Densité des branches" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"Ajuste la densité de la structure des supports utilisée pour générer les " +"pointes des branches. Une valeur plus élevée donne de meilleurs surplombs, " +"mais les supports sont plus difficiles à supprimer. Il est donc recommandé " +"d’activer les interfaces de support supérieures au lieu d’une valeur de " +"densité de branches élevée si des interfaces denses sont nécessaires." + +msgid "Adaptive layer height" +msgstr "Hauteur de couche adaptative" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"L’activation de cette option signifie que la hauteur de couche des supports " +"arborescents, à l’exception de la première, sera automatiquement calculée " + +msgid "Auto brim width" +msgstr "Largeur de la bordure automatique" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"L’activation de cette option signifie que la largeur de la bordure des " +"supports arborescents sera automatiquement calculée" + +msgid "Tree support brim width" +msgstr "Largeur de bordure du support arborescent" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "" +"Distance entre la branche du support arborescent et la ligne la plus externe " +"de la bordure" + +msgid "Tip Diameter" +msgstr "Diamètre de la pointe" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Diamètre de l’extrémité des branches des supports organiques." + +msgid "Tree support branch diameter" +msgstr "Diamètre de branche de support arborescent" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Ce paramètre détermine le diamètre initial des nœuds de support." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Angle du diamètre des branches" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"Angle du diamètre des branches à mesure qu’elles deviennent progressivement " +"plus épaisses vers leurs bases. Un angle de 0 donnera aux branches une " +"épaisseur uniforme sur toute leur longueur. Un léger angle peut augmenter la " +"stabilité des supports organiques." + +msgid "Branch Diameter with double walls" +msgstr "Diamètre des branches à double parois" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"Les branches dont la superficie est supérieure à la superficie d’un cercle " +"de ce diamètre seront imprimées avec des doubles parois pour plus de " +"stabilité. Définissez cette valeur sur zéro pour éviter la double paroi." + +msgid "Support wall loops" +msgstr "Boucles de paroi de support" + +msgid "This setting specify the count of walls around support" +msgstr "Ce paramètre spécifie le nombre de parois autour du support" + +msgid "Tree support with infill" +msgstr "Support arborescent avec remplissage" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Ce paramètre spécifie s'il faut ajouter un remplissage à l'intérieur des " +"grands creux du support arborescent" + +msgid "Activate temperature control" +msgstr "Activer le contrôle de la température" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Activez cette option pour le contrôle de la température du caisson. Une " +"commande M191 sera ajoutée avant \"machine_start_gcode\"\n" +"Commandes G-code : M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "Température du caisson" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Une température de caisson plus élevée peut aider à supprimer ou à réduire " +"la déformation et potentiellement conduire à une force de liaison " +"intercouche plus élevée pour les matériaux à haute température comme l’ABS, " +"l’ASA, le PC, le PA, etc. Dans le même temps, la filtration de l’air de " +"l’ABS et de l’ASA s’aggravera. Pour le PLA, le PETG, le TPU, le PVA et " +"d’autres matériaux à basse température, la température réelle du caisson ne " +"doit pas être élevée pour éviter les bouchages, donc la valeur 0 qui " +"signifie éteindre est fortement recommandé." + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Température de la buse pour les couches après la première" + +msgid "Detect thin wall" +msgstr "Détecter les parois fines" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Détecte les parois fines qui ne peuvent pas contenir deux largeurs de ligne. " +"Et utilisez une seule ligne pour imprimer. Peut ne pas être très bien " +"imprimé, car ce n'est pas en boucle fermée" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Ce G-code est inséré lors du changement de filament, y compris la commande T " +"pour déclencher le changement d'outil" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "Ce G-code est inséré lorsque le rôle d’extrusion est modifié" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Largeur de ligne pdes surfaces supérieures. Si elle est exprimée en %, elle " +"sera calculée sur le diamètre de la buse." + +msgid "Speed of top surface infill which is solid" +msgstr "Vitesse de remplissage de la surface supérieure qui est solide" + +msgid "Top shell layers" +msgstr "Couches de coque supérieures" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Il s'agit du nombre de couches solides de la coque supérieure, y compris la " +"couche de surface supérieure. Lorsque l'épaisseur calculée par cette valeur " +"est plus fine que l'épaisseur de la coque supérieure, les couches de la " +"coque supérieure seront augmentées" + +msgid "Top solid layers" +msgstr "Couches solides supérieures" + +msgid "Top shell thickness" +msgstr "Épaisseur de la coque supérieure" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"Le nombre de couches solides supérieures est augmenté lors du découpage si " +"l'épaisseur calculée par les couches de coque supérieures est inférieure à " +"cette valeur. Cela peut éviter d'avoir une coque trop fine lorsque la " +"hauteur de couche est faible. 0 signifie que ce paramètre est désactivé et " +"que l'épaisseur de la coque supérieure est absolument déterminée par les " +"couches de coque supérieures" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Vitesse de déplacement plus rapide et sans extrusion" + +msgid "Wipe while retracting" +msgstr "Essuyer lors des rétractions" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Déplacez la buse le long du dernier chemin d'extrusion lors de la rétraction " +"pour nettoyer la fuite de matériau sur la buse. Cela peut minimiser les " +"taches lors de l'impression d'une nouvelle pièce après le trajet" + +msgid "Wipe Distance" +msgstr "Distance d’essuyage" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"Décrire la durée pendant laquelle la buse se déplacera le long de la " +"dernière trajectoire lors de la rétraction. \n" +"\n" +"En fonction de la durée de l’opération d’essuyage, de la vitesse et de la " +"longueur des réglages de rétraction de l’extrudeuse/filament, un mouvement " +"de rétraction peut être nécessaire pour rétracter le filament restant. \n" +"\n" +"Le réglage d’une valeur dans le paramètre de quantité de rétraction avant " +"essuyage ci-dessous permet d’effectuer toute rétraction excédentaire avant " +"l’essuyage, sinon elle sera effectuée après l’essuyage." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"La tour de purge peut être utilisée pour nettoyer les résidus sur la buse et " +"stabiliser la pression du caisson à l'intérieur de la buse afin d'éviter les " +"défauts d'apparence lors de l'impression d'objets." + +msgid "Purging volumes" +msgstr "Volumes de purge" + +msgid "Flush multiplier" +msgstr "Multiplicateur de purge" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"Les volumes de purge actuels sont égaux à la valeur du multiplicateur de " +"purge multiplié par les volumes de purge dans le tableau." + +msgid "Prime volume" +msgstr "Premier volume" + +msgid "The volume of material to prime extruder on tower." +msgstr "Le volume de matériau à amorcer l'extrudeuse sur la tour." + +msgid "Width of prime tower" +msgstr "Largeur de la tour de purge." + +msgid "Wipe tower rotation angle" +msgstr "Angle de rotation de la tour d’essuyage" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Angle de rotation de la tour d’essuyage par rapport à l’axe X." + +msgid "Stabilization cone apex angle" +msgstr "Angle au sommet du cône de stabilisation" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Angle au sommet du cône utilisé pour stabiliser la tour d’essuyage. Un angle " +"plus grand signifie une base plus large." + +msgid "Wipe tower purge lines spacing" +msgstr "Espacement des lignes de purge de la tour d’essuyage" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Espacement des lignes de purge sur la tour d’essuyage." + +msgid "Maximum wipe tower print speed" +msgstr "Vitesse maximale d’impression de la tour d’essuyage" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"Vitesse d'impression maximale lors de la purge dans la tour de raclage et de " +"l'impression des couches éparses de la tour d'essuyage. Lors de la purge, si " +"la vitesse de remplissage ou la vitesse calculée à partir de la vitesse " +"volumétrique maximale du filament est inférieure, c'est la vitesse la plus " +"faible qui sera utilisée.\n" +"\n" +"Lors de l’impression des couches éparses, si la vitesse du périmètre interne " +"ou la vitesse calculée à partir de la vitesse volumétrique maximale du " +"filament est inférieure, c’est la vitesse la plus faible qui sera utilisée.\n" +"\n" +"L’augmentation de cette vitesse peut affecter la stabilité de la tour et " +"augmenter la force avec laquelle la buse entre en collision avec les blobs " +"qui peuvent s’être formés sur la tour d’essuyage.\n" +"\n" +"Avant d’augmenter ce paramètre au-delà de la valeur par défaut de 90 mm/sec, " +"assurez-vous que votre imprimante peut effectuer un pontage fiable à des " +"vitesses élevées et que le suintement lors du changement d’outil est bien " +"contrôlé.\n" +"\n" +"Pour les périmètres externes de la tour d’essuyage, la vitesse du périmètre " +"interne est utilisée indépendamment de ce paramètre." + +msgid "Wipe tower extruder" +msgstr "Extrudeur de tour d’essuyage" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"L’extrudeur à utiliser lors de l’impression du périmètre de la tour " +"d’essuyage. Réglez sur 0 pour utiliser celui qui est disponible (un non-" +"soluble serait préféré)." + +msgid "Purging volumes - load/unload volumes" +msgstr "Volumes de purge - Volume de Chargement/Déchargement" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"Ce vecteur enregistre les volumes requis pour passer de/vers chaque outil " +"utilisé sur la tour d’essuyage. Ces valeurs sont utilisées pour simplifier " +"la création des volumes de purge complets ci-dessous." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"La purge après le changement de filament sera effectuée à l'intérieur des " +"matériaux de remplissage des objets. Cela peut réduire la quantité de " +"déchets et le temps d'impression. Si les parois sont imprimées avec un " +"filament transparent, le remplissage de couleurs mélangées sera visible. " +"Cela ne prendra effet que si la tour de purge est activée." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"La purge après le changement de filament se fera à l'intérieur du support " +"des objets. Cela peut réduire la quantité de déchets et le temps " +"d'impression. Cela ne prendra effet que si une tour de purge est activée." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Cet objet sera utilisé pour purger la buse après un changement de filament " +"afin d'économiser du filament et de réduire le temps d'impression. Les " +"couleurs des objets seront mélangées en conséquence. Cela ne prendra effet " +"que si la tour de purge est activée." + +msgid "Maximal bridging distance" +msgstr "Distance de pont maximale" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "Distance maximale entre les supports sur les sections de remplissage." + +msgid "X-Y hole compensation" +msgstr "Compensation de trou X-Y" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Les trous de l'objet seront agrandis ou rétrécis dans le plan XY par la " +"valeur configurée. Une valeur positive agrandit les trous. Une valeur " +"négative rend les trous plus petits. Cette fonction est utilisée pour " +"ajuster légèrement la taille lorsque l'objet a un problème d'assemblage" + +msgid "X-Y contour compensation" +msgstr "Compensation de contour X-Y" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"Le contour de l'objet sera agrandi ou rétréci dans le plan XY par la valeur " +"configurée. Une valeur positive agrandit le contour. Une valeur négative " +"rend le contour plus petit. Cette fonction est utilisée pour ajuster " +"légèrement la taille lorsque l'objet a un problème d'assemblage" + +msgid "Convert holes to polyholes" +msgstr "Convertir les trous en trous polygones" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Rechercher les trous presque circulaires qui s’étendent sur plusieurs " +"couches et convertir la géométrie en trous polygones. Utilise la taille de " +"la buse et le (plus grand) diamètre pour calculer le trou polygone.\n" +"Voir http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "Marge de détection des trous polygones" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Défection maximale d’un point par rapport au rayon estimé du cercle.\n" +"Comme les cylindres sont souvent exportés sous forme de triangles de taille " +"variable, les points peuvent ne pas se trouver sur la circonférence du " +"cercle. Ce paramètre vous permet d’élargir la détection.\n" +"En mm ou en % du rayon." + +msgid "Polyhole twist" +msgstr "Torsion des trous polygones" + +msgid "Rotate the polyhole every layer." +msgstr "Faites pivoter le trou polygone à chaque couche." + +msgid "G-code thumbnails" +msgstr "Vignette G-code" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Tailles des images à stocker dans les fichiers .gcode et .sl1/.sl1s, au " +"format suivant : \"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "Format des vignettes G-code" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Format des vignettes G-code : PNG pour la meilleure qualité, JPG pour la " +"plus petite taille, QOI pour les firmwares à faible mémoire" + +msgid "Use relative E distances" +msgstr "Utiliser l’extrusion relative" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"L’extrusion relative est recommandée lors de l’utilisation de l’option « " +"label_objects ». Certains extrudeurs fonctionnent mieux avec cette option " +"non verrouillée (mode d’extrusion absolu). La tour d’essuyage n’est " +"compatible qu’avec le mode relatif. Il est recommandé sur la plupart des " +"imprimantes. L’option par défaut est cochée" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"Le générateur de paroi classique produit des parois avec une largeur " +"d’extrusion constante et, pour les zones très fines, il utilise le " +"remplissage d’espace. Le moteur Arachne produit des parois avec une largeur " +"d’extrusion variable." + +msgid "Classic" +msgstr "Classique" + +msgid "Arachne" +msgstr "Arachné" + +msgid "Wall transition length" +msgstr "Longueur de la paroi de transition" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Lorsque vous passez d'un nombre différent de parois à un autre lorsque la " +"pièce s'amincit, un certain espace est alloué pour séparer ou joindre les " +"segments de la paroi. Exprimé en pourcentage par rapport au diamètre de la " +"buse." + +msgid "Wall transitioning filter margin" +msgstr "Marge du filtre de transition de paroi" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Empêchez les allers-retours entre une paroi supplémentaire et une paroi de " +"moins. Cette marge étend la plage de largeurs d'extrusion qui suit jusqu'à " +"[Largeur de paroi minimale - marge, 2* Largeur de paroi minimale + marge]. " +"L'augmentation de cette marge réduit le nombre de transitions, ce qui réduit " +"le nombre de démarrages/arrêts d'extrusion et le temps de trajet. Cependant, " +"une variation importante de la largeur d'extrusion peut entraîner des " +"problèmes de sous-extrusion ou de surextrusion. Il est exprimé en " +"pourcentage par rapport au diamètre de la buse" + +msgid "Wall transitioning threshold angle" +msgstr "Angle du seuil de transition de la paroi" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Quand créer des transitions entre les nombres pairs et impairs de parois. " +"Une forme cunéiforme dont l'angle est supérieur à ce paramètre n'aura pas de " +"transitions et aucune paroi ne sera imprimé au centre pour remplir l'espace " +"restant. En réduisant ce paramètre, vous réduisez le nombre et la longueur " +"de ces parois centrales, mais vous risquez de laisser des espaces vides ou " +"de surextruder les parois." + +msgid "Wall distribution count" +msgstr "Nombre de parois distribuées" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"Nombre de parois, comptées à partir du centre, sur lesquelles la variation " +"doit être répartie. Des valeurs plus faibles signifient que la largeur des " +"parois extérieures ne change pas" + +msgid "Minimum feature size" +msgstr "Taille minimale de l'élément" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Épaisseur minimale des éléments fins. Les caractéristiques du modèle qui " +"sont plus fines que cette valeur ne seront pas imprimées, tandis que les " +"entités plus épaisses que la taille minimale seront élargies jusqu'à la " +"largeur de paroi minimale. Exprimée en pourcentage par rapport au diamètre " +"de la buse" + +msgid "Minimum wall length" +msgstr "Longueur minimale de la paroi" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"Ajustez cette valeur pour éviter que des parois courtes et non fermées " +"soient imprimées, ce qui pourrait augmenter le temps d’impression. Des " +"valeurs plus élevées suppriment des parois plus nombreuses et plus longues.\n" +"\n" +"REMARQUE : les surfaces inférieures et supérieures ne sont pas affectées par " +"cette valeur afin d’éviter les lacunes visuelles sur le côté du modèle. " +"Réglez le « seuil d’une paroi » dans les paramètres avancés ci-dessous pour " +"ajuster la sensibilité de ce qui est considéré comme une surface supérieure. " +"Le « seuil d’une paroi » n’est visible que si ce paramètre est supérieur à " +"la valeur par défaut de 0,5 ou si l’option « surfaces supérieures à une " +"paroi » est activée." + +msgid "First layer minimum wall width" +msgstr "Largeur minimale de la paroi de la première couche" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"Il est recommandé de définir la largeur minimale de paroi à utiliser pour la " +"première couche sur la même taille que la buse. Cet ajustement devrait " +"améliorer l’adhérence." + +msgid "Minimum wall width" +msgstr "Largeur minimale de la paroi" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Largeur de la paroi qui remplacera les éléments fins (selon la taille " +"minimale des éléments) du modèle. Si la largeur minimale de la paroi est " +"inférieure à l'épaisseur de l'élément, la paroi deviendra aussi épaisse que " +"l'élément lui-même. Elle est exprimée en pourcentage par rapport au diamètre " +"de la buse" + +msgid "Detect narrow internal solid infill" +msgstr "Détecter un remplissage plein interne étroit" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Cette option détectera automatiquement la zone de remplissage plein interne " +"étroite. S'il est activé, un motif concentrique sera utilisé pour la zone " +"afin d'accélérer l'impression. Sinon, le motif rectiligne est utilisé par " +"défaut." + +msgid "invalid value " +msgstr "Valeur invalide " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Valeur non valide lorsque le mode vase en spirale est activé: " + +msgid "too large line width " +msgstr "largeur de ligne trop importante " + +msgid " not in range " +msgstr " hors plage " + +msgid "Minimum save" +msgstr "Sauvegarde minimale" + +msgid "export 3mf with minimum size." +msgstr "Exporter le fichier 3mf avec une taille minimale." + +msgid "No check" +msgstr "Pas de vérification" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"Ne pas effectuer de contrôle de validité, tel que le contrôle des conflits " +"de parcours de G-code." + +msgid "Ensure on bed" +msgstr "Assurer sur le plateau" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Placer l’objet sur le plateau lorsqu’il est partiellement en dessous. " +"Désactivé par défaut" + +msgid "Orient Options" +msgstr "Options d’orientation" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "Options d’orientation : 0-désactiver, 1-activer, autres-auto" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Angle de rotation autour de l’axe Z en degrés." + +msgid "Rotate around Y" +msgstr "Rotation autour de l’axe Y" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Angle de rotation autour de l’axe Y en degrés." + +msgid "Data directory" +msgstr "Répertoire de données" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Charger et stocker les paramètres dans le répertoire donné. Ceci est utile " +"pour maintenir différents profils ou inclure des configurations à partir " +"d’un stockage réseau." + +msgid "Load custom gcode" +msgstr "Charger un G-code personnalisé" + +msgid "Load custom gcode from json" +msgstr "Charger un G-code personnalisé à partir de json" + +msgid "Current z-hop" +msgstr "Saut en z actuel" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "Contient le saut en z présent au début du bloc de G-code personnalisé." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Position de l’extrudeuse au début du bloc de G-code personnalisé. Si le G-" +"code personnalisé se déplace ailleurs, il doit écrire dans cette variable " +"afin que PrusaSlicer sache d’où il se déplace lorsqu’il reprend le contrôle." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"État de rétraction au début du bloc de G-code personnalisé. Si le G-code " +"personnalisé déplace l’axe de l’extrudeuse, il doit écrire dans cette " +"variable pour que PrusaSlicer se rétracte correctement lorsqu’il reprend le " +"contrôle." + +msgid "Extra deretraction" +msgstr "Dérétraction supplémentaire" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" +"L’amorçage supplémentaire de l’extrudeuse après la dérétraction est " +"actuellement prévu." + +msgid "Current extruder" +msgstr "Extrudeur actuel" + +msgid "Zero-based index of currently used extruder." +msgstr "Index à base zéro de l’extrudeur actuellement utilisé." + +msgid "Current object index" +msgstr "Index de l’objet actuel" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Spécifique à l’impression séquentielle. Index basé sur zéro de l’objet en " +"cours d’impression." + +msgid "Has wipe tower" +msgstr "Possède une tour d’essuyage" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Indique si la tour d’essuyage est générée ou non dans l’impression." + +msgid "Initial extruder" +msgstr "Extrudeur initial" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Index basé sur zéro du premier extrudeur utilisé dans l’impression. " +"Identique à initial_tool." + +msgid "Initial tool" +msgstr "Outil de départ" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Index basé sur zéro du premier extrudeur utilisé dans l’impression. " +"Identique à initial_extruder." + +msgid "Is extruder used?" +msgstr "L’extrudeur est-il utilisé ?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" +"Vecteur de bools indiquant si un extrudeur donné est utilisé dans " +"l’impression." + +msgid "Volume per extruder" +msgstr "Volume par extrudeur" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" +"Volume total de filament extrudé par extrudeuse pendant toute la durée de " +"l’impression." + +msgid "Total toolchanges" +msgstr "Nombre total de changements d’outils" + +msgid "Number of toolchanges during the print." +msgstr "Nombre de changements d’outils pendant l’impression." + +msgid "Total volume" +msgstr "Volume total" + +msgid "Total volume of filament used during the entire print." +msgstr "" +"Volume total de filament utilisé pendant toute la durée de l’impression." + +msgid "Weight per extruder" +msgstr "Poids par extrudeur" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" +"Poids par extrudeur extrudé pendant toute la durée de l’impression. Calculé " +"à partir de la valeur filament_density dans Filament Settings." + +msgid "Total weight" +msgstr "Poids total" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" +"Poids total de l’impression. Calculé à partir de la valeur filament_density " +"dans Filament Settings." + +msgid "Total layer count" +msgstr "Nombre total de couches" + +msgid "Number of layers in the entire print." +msgstr "Nombre de couches dans toute l’impression." + +msgid "Number of objects" +msgstr "Nombre d’objets" + +msgid "Total number of objects in the print." +msgstr "Nombre total d’objets dans l’impression." + +msgid "Number of instances" +msgstr "Nombre d’instances" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" +"Nombre total d’instances d’objets dans l’impression, additionné à tous les " +"objets." + +msgid "Scale per object" +msgstr "Mise à l’échelle par objet" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"Contient une chaîne de caractères contenant des informations sur la mise à " +"l’échelle appliquée aux différents objets. L’indexation des objets est basée " +"sur le zéro (le premier objet a l’index 0).\n" +"Exemple : « x:100% y:50% z:100 »." + +msgid "Input filename without extension" +msgstr "Nom du fichier d’entrée sans extension" + +msgid "Source filename of the first object, without extension." +msgstr "Nom du fichier source du premier objet, sans extension." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" +"Le vecteur a deux éléments : les coordonnées x et y du point. Valeurs en mm." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" +"Le vecteur a deux éléments : les dimensions x et y de la boîte de " +"délimitation. Valeurs en mm." + +msgid "First layer convex hull" +msgstr "Coque convexe de la première couche" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"Vecteur de points de la première couche de la coque convexe. Chaque élément " +"a le format suivant : ‘[x, y]’ (x et y sont des nombres à virgule flottante " +"en mm)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "" +"Coin inférieur gauche de la boîte de délimitation de la première couche" + +msgid "Top-right corner of first layer bounding box" +msgstr "Coin supérieur droit de la boîte de délimitation de la première couche" + +msgid "Size of the first layer bounding box" +msgstr "Taille de la boîte de délimitation de la première couche" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "Coin inférieur gauche de la boîte de délimitation du lit d’impression" + +msgid "Top-right corner of print bed bounding box" +msgstr "" +"Coin supérieur droit de la boîte de délimitation du plateau d’impression" + +msgid "Size of the print bed bounding box" +msgstr "Taille du plateau d’impression" + +msgid "Timestamp" +msgstr "Horodatage" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "Chaîne contenant l’heure actuelle au format yyyyMMdd-hhmmss." + +msgid "Day" +msgstr "Jour" + +msgid "Hour" +msgstr "Heure" + +msgid "Minute" +msgstr "Minute" + +msgid "Print preset name" +msgstr "Imprimer le nom de la présélection" + +msgid "Name of the print preset used for slicing." +msgstr "Nom du préréglage d’impression utilisé pour le découpage." + +msgid "Filament preset name" +msgstr "Nom du préréglage du filament" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Noms des préréglages de filaments utilisés pour le découpage. La variable " +"est un vecteur contenant un nom pour chaque extrudeuse." + +msgid "Printer preset name" +msgstr "Nom du préréglage de l’imprimante" + +msgid "Name of the printer preset used for slicing." +msgstr "Nom du préréglage de l’imprimante utilisé pour la découpe." + +msgid "Physical printer name" +msgstr "Nom de l’imprimante physique" + +msgid "Name of the physical printer used for slicing." +msgstr "Nom de l’imprimante physique utilisé pour la découpe." + +msgid "Layer number" +msgstr "Numéro de couche" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" +"Indice de la couche actuelle. Base unitaire (c’est-à-dire que la première " +"couche porte le numéro 1)." + +msgid "Layer z" +msgstr "Couche z" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Hauteur de la couche actuelle au-dessus du plateau d’impression, mesurée " +"jusqu’au sommet de la couche." + +msgid "Maximal layer z" +msgstr "Couche maximale z" + +msgid "Height of the last layer above the print bed." +msgstr "Hauteur de la dernière couche au-dessus du plateau d’impression." + +msgid "Filament extruder ID" +msgstr "ID de l’extrudeur de filaments" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "L’ID de l’extrudeur actuel. Identique à current_extruder." + +msgid "Error in zip archive" +msgstr "Erreur dans l'archive zip" + +msgid "Generating walls" +msgstr "Génération de parois" + +msgid "Generating infill regions" +msgstr "Génération de régions de remplissage" + +msgid "Generating infill toolpath" +msgstr "Génération d'un parcours d'outil de remplissage" + +msgid "Detect overhangs for auto-lift" +msgstr "Détectez les surplombs pour un levage automatique" + +msgid "Generating support" +msgstr "Génération des supports" + +msgid "Checking support necessity" +msgstr "Vérification de la nécessité du support" + +msgid "floating regions" +msgstr "régions flottantes" + +msgid "floating cantilever" +msgstr "surplomb flottant" + +msgid "large overhangs" +msgstr "grands surplombs" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Il semble que l'objet %s possède %s. Veuillez réorienter l'objet ou activer " +"la génération de support." + +msgid "Optimizing toolpath" +msgstr "Optimisation du parcours d'outil" + +msgid "Slicing mesh" +msgstr "Découpe du maillage" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"Aucune couche n'a été détectée. Vous pouvez réparer vos STL, vérifier leur " +"taille ou leur épaisseur et réessayer.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"La compensation de la taille XY d'un objet ne sera pas utilisée parce qu'il " +"est également peint en couleur.\n" +"La compensation de la taille XY ne peut pas être combinée avec la peinture " +"couleur." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Support : génération du parcours d'impression à la couche %d" + +msgid "Support: detect overhangs" +msgstr "Support : détection des surplombs" + +msgid "Support: generate contact points" +msgstr "Support : génération des points de contact" + +msgid "Support: propagate branches" +msgstr "Support : propagation des branches" + +msgid "Support: draw polygons" +msgstr "Support : traçage de polygones" + +msgid "Support: generate toolpath" +msgstr "Support : génération du parcours d'impression" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Support : génération des polygones à la couche %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Support : Correction des trous dans la couche %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Support : propagation des branches à la couche %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Format de fichier inconnu : le fichier d'entrée doit porter l'extension ." +"stl, .obj ou .amf (.xml)." + +msgid "Loading of a model file failed." +msgstr "Le chargement du fichier modèle a échoué." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "Le fichier fourni n'a pas pu être lu car il est vide." + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Format de fichier inconnu : le fichier d'entrée doit porter " +"l'extension .3mf, .zip ou .amf." + +msgid "Canceled" +msgstr "Annulé" + +msgid "load_obj: failed to parse" +msgstr "load_obj : échec de l'analyse" + +msgid "load mtl in obj: failed to parse" +msgstr "charger mtl dans obj : échec de l’analyse" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "Le fichier contient des polygones comportant plus de 4 sommets." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "Le fichier contient des polygones comportant moins de 2 sommets." + +msgid "The file contains invalid vertex index." +msgstr "Le fichier contient un index de sommets non valide." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Ce fichier OBJ n'a pas pu être lu car il est vide." + +msgid "Flow Rate Calibration" +msgstr "Calibration du débit" + +msgid "Max Volumetric Speed Calibration" +msgstr "Calibration de la vitesse volumétrique maximale" + +msgid "Manage Result" +msgstr "Gérer le résultat" + +msgid "Manual Calibration" +msgstr "Calibration manuelle" + +msgid "Result can be read by human eyes." +msgstr "Le résultat peut être lu par des yeux humains." + +msgid "Auto-Calibration" +msgstr "Calibration Auto" + +msgid "We would use Lidar to read the calibration result" +msgstr "Le Micro-Lidar sera utilisé pour lire le résultat de la calibration" + +msgid "Prev" +msgstr "Précédent" + +msgid "Recalibration" +msgstr "Recalibration" + +msgid "Calibrate" +msgstr "Calibrations" + +msgid "Finish" +msgstr "Terminer" + +msgid "How to use calibration result?" +msgstr "Comment utiliser le résultat de la calibration ?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"Vous pouvez modifier le facteur de calibration dynamique du débit dans les " +"paramètres du filament" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"La version actuelle du firmware de l'imprimante ne prend pas en charge la " +"calibration.\n" +"Veuillez mettre à jour le firmware de l'imprimante." + +msgid "Calibration not supported" +msgstr "Calibration non pris en charge" + +msgid "Error desc" +msgstr "Description" + +msgid "Extra info" +msgstr "Informations" + +msgid "Flow Dynamics" +msgstr "Calibration dynamique" + +msgid "Flow Rate" +msgstr "Débit" + +msgid "Max Volumetric Speed" +msgstr "Vitesse volumétrique maximale" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Veuillez saisir des valeurs valides :\n" +"Début: >= %.1f\n" +"Fin: <= %.1f\n" +"Fin: > Début\n" +"Intervalle: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "Le nom ne peut pas être vide." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "Le préréglage sélectionné : %s est introuvable." + +msgid "The name cannot be the same as the system preset name." +msgstr "Le nom ne peut pas être le même que le nom du préréglage système." + +msgid "The name is the same as another existing preset name" +msgstr "Le nom est le même qu’un autre nom de préréglage existant" + +msgid "create new preset failed." +msgstr "La création d’un nouveau préréglage a échoué." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Voulez-vous vraiment annuler la calibration en cours et revenir à la page " +"d’accueil ?" + +msgid "No Printer Connected!" +msgstr "Aucune imprimante connectée !" + +msgid "Printer is not connected yet." +msgstr "L’imprimante n’est pas encore connectée." + +msgid "Please select filament to calibrate." +msgstr "Veuillez sélectionner le filament à calibrer." + +msgid "The input value size must be 3." +msgstr "La valeur saisie doit être 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"Ce type de machine ne peut contenir que 16 résultats historiques par buse. " +"Vous pouvez supprimer les résultats historiques existants, puis lancer " +"l’étalonnage. Vous pouvez également poursuivre l’étalonnage, mais vous ne " +"pouvez pas créer de nouveaux résultats historiques d’étalonnage. \n" +"Souhaitez-vous toujours poursuivre le calibrage ?" + +msgid "Connecting to printer..." +msgstr "Connexion à l’imprimante…" + +msgid "The failed test result has been dropped." +msgstr "Le résultat du test ayant échoué a été supprimé." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "" +"Le résultat de la calibration dynamique du débit a été enregistré sur " +"l’imprimante" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"Il existe déjà un résultat d’étalonnage antérieur portant le même nom : %s. " +"Un seul des résultats portant le même nom est sauvegardé. Êtes-vous sûr de " +"vouloir remplacer le résultat antérieur ?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"Ce type de machine ne peut contenir que %d résultats historiques par buse. " +"Ce résultat ne sera pas enregistré." + +msgid "Internal Error" +msgstr "Erreur interne" + +msgid "Please select at least one filament for calibration" +msgstr "Veuillez sélectionner au moins un filament pour la calibration" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "" +"Le résultat de la calibration du débit a été enregistré dans le préréglage" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"Le résultat de la calibration de la vitesse volumétrique maximale a été " +"enregistré dans le préréglage" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Nécessité de la calibration dynamique du débit" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Nous avons maintenant ajouté l'auto-calibration pour différents filaments, " +"qui est entièrement automatisée et le résultat sera enregistré dans " +"l'imprimante pour une utilisation future. Vous n'avez besoin d'effectuer la " +"calibration que dans les cas limités suivants :\n" +"1. Si vous utilisez un nouveau filament de marques/modèles différents ou si " +"le filament est humide\n" +"2. Si la buse est usée ou remplacée par une neuve\n" +"3. Si la vitesse volumétrique maximale ou la température d'impression est " +"modifiée dans les préréglages du filament." + +msgid "About this calibration" +msgstr "À propos de cette calibration" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" +"Vous trouverez les détails de l'étalonnage de la dynamique des flux dans " +"notre wiki.\n" +"\n" +"En général, la calibration n’est pas nécessaire. Lorsque vous démarrez une " +"impression mono-couleur/matériau, avec l’option « calibration de la " +"dynamique de flux » cochée dans le menu de démarrage de l’impression, " +"l’imprimante suivra l’ancienne méthode, en calibrant le filament avant " +"l’impression ; Lorsque vous démarrez une impression multi-couleur/matériau, " +"l’imprimante utilisera le paramètre de compensation par défaut pour le " +"filament lors de chaque changement de filament, ce qui donnera un bon " +"résultat dans la plupart des cas.\n" +"\n" +"Veuillez noter qu’il existe quelques cas qui peuvent rendre les résultats de " +"la calibration peu fiables, tels qu’une adhérence insuffisante sur le " +"plateau. Il est possible d’améliorer l’adhérence en lavant la plaque de " +"construction ou en appliquant de la colle. Pour plus d’informations à ce " +"sujet, veuillez consulter notre Wiki.\n" +"\n" +"Les résultats de la calibration présentent une fluctuation d’environ 10 % " +"dans notre test, ce qui peut entraîner une différence entre les résultats de " +"chaque calibration. Nous continuons d’étudier la cause première afin " +"d’apporter des améliorations lors des nouvelles mises à jour." + +msgid "When to use Flow Rate Calibration" +msgstr "Nécessité de la calibration du débit" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"Après avoir utilisé la calibration dynamique du débit, il peut encore y " +"avoir des problèmes d'extrusion, tels que :\n" +"1. Sur-extrusion : Excès de matière sur votre objet imprimé, formant des " +"gouttes ou des boutons, ou si les couches semblent plus épaisses que prévu " +"et non uniformes.\n" +"2. Sous-extrusion : Couches très fines, une faible solidité du remplissage " +"ou des espaces dans la couche supérieure du modèle, même si l'impression est " +"lente\n" +"3. Mauvaise qualité de surface : Si la surface de vos impressions semble " +"rugueuse ou inégale.\n" +"4. Faible intégrité structurelle : Impressions qui cassent facilement ou ne " +"semblent pas aussi solides qu'elles le devraient." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"De plus, la calibration du débit est cruciale pour les matériaux dotés de la " +"technologie de mousse active comme le LW-PLA utilisés dans les avions RC. " +"Ces matériaux se dilatent considérablement lorsqu'ils sont chauffés et la " +"calibration fournit un débit de référence utile." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"La calibration du débit mesure le ratio entre les volumes d’extrusion " +"attendus et réels. Le réglage par défaut fonctionne bien sur les imprimantes " +"Bambu Lab et les filaments officiels car ils ont été pré-calibrés et " +"affinés. Pour un filament ordinaire, vous n’aurez généralement pas besoin " +"d’effectuer une calibration du débit à moins que vous ne voyiez toujours les " +"défauts répertoriés après avoir effectué d’autres calibrations. Pour plus de " +"détails, veuillez consulter l’article du wiki." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"La calibration automatique du débit utilise la technologie Micro-Lidar de " +"Bambu Lab, mesurant directement les modèles de calibration. Cependant, " +"veuillez noter que l’efficacité et la précision de cette méthode peuvent " +"être compromises avec des types de matériaux spécifiques. En particulier, " +"les filaments qui sont transparents ou semi-transparents, à particules " +"scintillantes ou qui ont une finition hautement réfléchissante peuvent ne " +"pas convenir à cette calibration et peuvent produire des résultats moins que " +"souhaitables.\n" +"\n" +"Les résultats d’étalonnage peuvent varier entre chaque calibration ou " +"filament. Nous améliorons toujours la précision et la compatibilité de cette " +"calibration grâce aux mises à jour du firmware au fil du temps.\n" +"\n" +"Attention : la calibration du débit est un processus avancé, qui ne doit " +"être tenté que par ceux qui comprennent parfaitement son objectif et ses " +"implications. Une utilisation incorrecte peut entraîner des impressions de " +"qualité inférieure ou endommager l’imprimante. Assurez-vous de lire " +"attentivement et de comprendre le processus avant de le faire." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Nécessité de la calibration de la vitesse volumétrique maximale" + +msgid "Over-extrusion or under extrusion" +msgstr "Sur-extrusion ou sous-extrusion" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"La calibration de la vitesse volumétrique maximale est recommandée lorsque " +"vous imprimez avec :" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "un matériau avec un retrait/dilatation thermique important, tel que…" + +msgid "materials with inaccurate filament diameter" +msgstr "des matériaux avec un diamètre de filament imprécis" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "" +"Nous avons trouvé le meilleur facteur de calibration dynamique du débit" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Une partie de la calibration a échoué ! Vous pouvez nettoyer le plateau et " +"réessayer. Le résultat du test échoué serai abandonné." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Nous vous recommandons d’ajouter la marque, la matière, le type et même le " +"niveau d’humidité dans le nom" + +msgid "Failed" +msgstr "Échoué" + +msgid "Please enter the name you want to save to printer." +msgstr "" +"Veuillez saisir le nom que vous souhaitez enregistrer sur l’imprimante." + +msgid "The name cannot exceed 40 characters." +msgstr "Le nom ne peut pas dépasser 40 caractères." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Seul un des résultats portant le même nom sera enregistré. Êtes-vous sûr de " +"vouloir annuler les autres résultats ?" + +msgid "Please find the best line on your plate" +msgstr "Veuillez trouver la meilleure ligne sur votre plateau" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Veuillez trouver l'angle avec le degré d'extrusion parfait" + +msgid "Input Value" +msgstr "Valeur d’entrée" + +msgid "Save to Filament Preset" +msgstr "Enregistrer dans le préréglage du filament" + +msgid "Preset" +msgstr "Préréglage" + +msgid "Record Factor" +msgstr "Enregistrer le facteur" + +msgid "We found the best flow ratio for you" +msgstr "Nous avons trouvé le meilleur ratio de débit pour vous" + +msgid "Flow Ratio" +msgstr "Ratio du débit" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Veuillez saisir une valeur valide (0,0 < ratio du débit < 2,0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Veuillez saisir le nom du préréglage que vous souhaitez enregistrer." + +msgid "Calibration1" +msgstr "Calibration 1" + +msgid "Calibration2" +msgstr "Calibration 2" + +msgid "Please find the best object on your plate" +msgstr "Veuillez trouver le meilleur objet sur votre plateau" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "" +"Remplissez la valeur au-dessus du bloc avec la surface supérieure la plus " +"lisse" + +msgid "Skip Calibration2" +msgstr "Ignorer la Calibration 2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "Ratio du débit : %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Veuillez choisir un bloc avec la surface supérieure la plus lisse" + +msgid "Please choose a block with smoothest top surface." +msgstr "Veuillez choisir un bloc avec la surface supérieure la plus lisse." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "" +"Veuillez entrer une valeur valide (0 <= Vitesse volumétrique max <= 60)" + +msgid "Calibration Type" +msgstr "Type de calibration" + +msgid "Complete Calibration" +msgstr "Calibration complète" + +msgid "Fine Calibration based on flow ratio" +msgstr "Calibration précise basée sur le ratio du débit" + +msgid "Title" +msgstr "Titre" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Un modèle de test sera imprimé. Veuillez nettoyer le plateau avant la " +"calibration." + +msgid "Printing Parameters" +msgstr "Paramètres d’impression" + +msgid "Plate Type" +msgstr "Type de plaque" + +msgid "filament position" +msgstr "Position du filament" + +msgid "External Spool" +msgstr "Externe" + +msgid "Filament For Calibration" +msgstr "Filament pour la calibration" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Conseils pour le matériau de calibration :\n" +"- Matériaux pouvant partager la même température du plateau\n" +"- Différentes marques et familles de filaments (Marque = Bambu, Famille = " +"Basique, Mat)" + +msgid "Pattern" +msgstr "Motif" + +msgid "Method" +msgstr "Méthode" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s n’est pas compatible avec %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "Le TPU n’est pas supporté pour la calibration dynamique du débit." + +msgid "Connecting to printer" +msgstr "Connexion à l’imprimante" + +msgid "From k Value" +msgstr "De la valeur K" + +msgid "To k Value" +msgstr "À la valeur K" + +msgid "Step value" +msgstr "Intervalle" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "" +"Le diamètre de la buse a été synchronisé à partir des paramètres de " +"l’imprimante" + +msgid "From Volumetric Speed" +msgstr "Depuis la vitesse volumétrique" + +msgid "To Volumetric Speed" +msgstr "Vers la vitesse volumétrique" + +msgid "Flow Dynamics Calibration Result" +msgstr "Résultat de la calibration dynamique du débit" + +msgid "New" +msgstr "Nouveau" + +msgid "No History Result" +msgstr "Aucun historique" + +msgid "Success to get history result" +msgstr "Aucun historique" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Actualisation de historique des calibrations dynamiques du débit" + +msgid "Action" +msgstr "Action" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "" +"Ce type de machine ne peut contenir que %d résultats historiques par buse." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Editer la calibration dynamique du débit" + +msgid "New Flow Dynamic Calibration" +msgstr "Nouveau calibrage dynamique du débit" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "Le filament doit être sélectionné." + +msgid "Network lookup" +msgstr "Recherche de réseau" + +msgid "Address" +msgstr "Adresse" + +msgid "Hostname" +msgstr "Nom d’hôte" + +msgid "Service name" +msgstr "Nom du service" + +msgid "OctoPrint version" +msgstr "Version OctoPrint" + +msgid "Searching for devices" +msgstr "Recherche d’appareils" + +msgid "Finished" +msgstr "Terminé" + +msgid "Multiple resolved IP addresses" +msgstr "Adresses IP à résolution multiple" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"Il existe plusieurs adresses IP résolues par le nom d’hôte %1%.\n" +"Veuillez en sélectionner une qui doit être utilisée." + +msgid "PA Calibration" +msgstr "Calibration Pressure Advance" + +msgid "DDE" +msgstr "Direct Drive" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "Type d'extrudeur" + +msgid "PA Tower" +msgstr "Tour PA" + +msgid "PA Line" +msgstr "Ligne PA" + +msgid "PA Pattern" +msgstr "Motif PA" + +msgid "Start PA: " +msgstr "Début: " + +msgid "End PA: " +msgstr "Fin: " + +msgid "PA step: " +msgstr "Intervalle: " + +msgid "Print numbers" +msgstr "Imprimer les numéros" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Veuillez saisir des valeurs valides :\n" +"Début: >= 0.0\n" +"Fin: > Début\n" +"Intervalle: >= 0.001)" + +msgid "Temperature calibration" +msgstr "Calibration de Température" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "PCTG" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Filament" + +msgid "Start temp: " +msgstr "Temp. de début: " + +msgid "End temp: " +msgstr "Temp. de fin: " + +msgid "Temp step: " +msgstr "Intervalle de temp. : " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Veuillez saisir des valeurs valides :\n" +"Début <= 350\n" +"Fin >= 170\n" +"Début > Fin + 5)" + +msgid "Max volumetric speed test" +msgstr "Test de vitesse volumétrique max" + +msgid "Start volumetric speed: " +msgstr "Vitesse volumétrique de début: " + +msgid "End volumetric speed: " +msgstr "Vitesse volumétrique de fin: " + +msgid "step: " +msgstr "intervalle: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Veuillez saisir des valeurs valides :\n" +"Début > 0 \n" +"Intervalle >= 0\n" +"Fin > Début + Intervalle)" + +msgid "VFA test" +msgstr "Test VFA" + +msgid "Start speed: " +msgstr "Vitesse de début: " + +msgid "End speed: " +msgstr "Vitesse de fin: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Veuillez saisir des valeurs valides :\n" +"Début > 10 \n" +"intervalles >= 0\n" +"Fin > Début + Intervalle)" + +msgid "Start retraction length: " +msgstr "Longueur de rétraction de début: " + +msgid "End retraction length: " +msgstr "Longueur de rétraction de fin: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "Envoyer le G-code à l’imprimante" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Envoyer vers l’imprimante avec le nom de fichier suivant :" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "" +"Utilisez des barres obliques ( / ) comme séparateur de répertoire si " +"nécessaire." + +msgid "Upload to storage" +msgstr "Envoyer vers le stockage" + +msgid "Switch to Device tab after upload." +msgstr "Passer à l’onglet Appareil après le téléchargement." + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "" +"Le nom du fichier envoyé ne se termine pas par \"%s\". Souhaitez-vous " +"continuer ?" + +msgid "Upload" +msgstr "Envoyer" + +msgid "Print host upload queue" +msgstr "File d’attente d’envoi de l’hôte d’impression" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Progression" + +msgid "Host" +msgstr "Hôte" + +msgctxt "OfFile" +msgid "Size" +msgstr "Taille" + +msgid "Filename" +msgstr "Nom de fichier" + +msgid "Cancel selected" +msgstr "Annuler la sélection" + +msgid "Show error message" +msgstr "Afficher le message d’erreur" + +msgid "Enqueued" +msgstr "En file d’attente" + +msgid "Uploading" +msgstr "Téléversement" + +msgid "Cancelling" +msgstr "Annulation" + +msgid "Error uploading to print host" +msgstr "Erreur lors de l’envoi vers l’hôte d’impression" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "" +"Impossible d’effectuer une opération booléenne sur les pièces sélectionnées" + +msgid "Mesh Boolean" +msgstr "Opérations booléennes" + +msgid "Union" +msgstr "Fusion" + +msgid "Difference" +msgstr "Soustraction" + +msgid "Intersection" +msgstr "Intersection" + +msgid "Source Volume" +msgstr "Volume d’origine" + +msgid "Tool Volume" +msgstr "Volume d’outil" + +msgid "Subtract from" +msgstr "Soustraire de" + +msgid "Subtract with" +msgstr "Soustraire avec" + +msgid "selected" +msgstr "sélectionné" + +msgid "Part 1" +msgstr "Partie 1" + +msgid "Part 2" +msgstr "Partie 2" + +msgid "Delete input" +msgstr "Supprimer l’objet" + +msgid "Network Test" +msgstr "Test du réseau" + +msgid "Start Test Multi-Thread" +msgstr "Démarrer le test multithread" + +msgid "Start Test Single-Thread" +msgstr "Démarrer le test Single-Thread" + +msgid "Export Log" +msgstr "Exportation du journal" + +msgid "Snapmaker Orca Version:" +msgstr "Version d’Snapmaker Orca:" + +msgid "System Version:" +msgstr "Version du système :" + +msgid "DNS Server:" +msgstr "Serveur DNS :" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "Snapmaker Orca Test (GitHub)" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "Snapmaker Orca Test (GitHub) :" + +msgid "Test Bing.com" +msgstr "Test Bing.com" + +msgid "Test bing.com:" +msgstr "Test bing.com :" + +msgid "Log Info" +msgstr "Journal de bord" + +msgid "Select filament preset" +msgstr "Sélection du préréglage du filament" + +msgid "Create Filament" +msgstr "Création d’un filament" + +msgid "Create Based on Current Filament" +msgstr "Créer en fonction du filament actuel" + +msgid "Copy Current Filament Preset " +msgstr "Copier le préréglage actuel du filament " + +msgid "Basic Information" +msgstr "Informations de base" + +msgid "Add Filament Preset under this filament" +msgstr "Ajouter un préréglage de filament sous ce filament" + +msgid "We could create the filament presets for your following printer:" +msgstr "" +"Nous pourrions créer les préréglages de filaments pour votre imprimante " +"suivante :" + +msgid "Select Vendor" +msgstr "Sélectionner le fournisseur" + +msgid "Input Custom Vendor" +msgstr "Saisir le fournisseur personnalisé" + +msgid "Can't find vendor I want" +msgstr "Je ne trouve pas le vendeur que je souhaite" + +msgid "Select Type" +msgstr "Sélectionner le type" + +msgid "Select Filament Preset" +msgstr "Sélectionner le préréglage du filament" + +msgid "Serial" +msgstr "Numéro de série" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "par exemple : Basic, Matte, Silk, Marble" + +msgid "Filament Preset" +msgstr "Préréglage du filament" + +msgid "Create" +msgstr "Créer" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "" +"Le fournisseur n’est pas sélectionné, veuillez le sélectionner à nouveau." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" +"Le fournisseur personnalisé n’est pas saisi, veuillez saisir le fournisseur " +"personnalisé." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"« Bambu » ou « Générique » ne peuvent pas être utilisés comme fournisseur de " +"filaments personnalisés." + +msgid "Filament type is not selected, please reselect type." +msgstr "" +"Le type de filament n’est pas sélectionné, veuillez resélectionner le type." + +msgid "Filament serial is not inputed, please input serial." +msgstr "" +"Le numéro de série du filament n’est pas saisi, veuillez saisir le numéro de " +"série." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"Il peut y avoir des caractères d’échappement dans l’entrée du fournisseur ou " +"du numéro de série du filament. Veuillez les supprimer et les saisir à " +"nouveau." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Toutes les entrées dans le vendeur ou le numéro de série personnalisé sont " +"des espaces. Veuillez les saisir à nouveau." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "Le vendeur ne peut pas être un numéro. Veuillez le saisir à nouveau." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"Vous n’avez pas encore sélectionné d’imprimante ou de préréglage. Veuillez " +"en sélectionner au moins un." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"Le nom de filament %s que vous avez créé existe déjà. \n" +"Si vous continuez la création, le réglage créé sera affiché avec son nom " +"complet. Voulez-vous continuer ?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Certains préréglages existants n’ont pas été créés, comme suit :\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Voulez-vous le réécrire ?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"Nous renommerions les préréglages en « Vendor Type Serial @printer you " +"selected ». \n" +"Pour ajouter des préréglages pour d’autres imprimantes, veuillez aller à la " +"sélection de l’imprimante." + +msgid "Create Printer/Nozzle" +msgstr "Créer une imprimante/buse" + +msgid "Create Printer" +msgstr "Créer une imprimante" + +msgid "Create Nozzle for Existing Printer" +msgstr "Créer une buse pour une imprimante existante" + +msgid "Create from Template" +msgstr "Créer depuis un modèle" + +msgid "Create Based on Current Printer" +msgstr "Créer en fonction de l’imprimante actuelle" + +msgid "Import Preset" +msgstr "Importer un préréglage" + +msgid "Create Type" +msgstr "Créer un type" + +msgid "The model is not found, place reselect vendor." +msgstr "Le modèle n’est pas trouvé, il faut resélectionner le fournisseur." + +msgid "Select Model" +msgstr "Sélectionner le modèle" + +msgid "Select Printer" +msgstr "Sélectionner l’imprimante" + +msgid "Input Custom Model" +msgstr "Entrée du modèle personnalisé" + +msgid "Can't find my printer model" +msgstr "Impossible de trouver le modèle de mon imprimante" + +msgid "Rectangle" +msgstr "Rectangle" + +msgid "Printable Space" +msgstr "Espace imprimable" + +msgid "Hot Bed STL" +msgstr "STL du plateau" + +msgid "Load stl" +msgstr "Charger stl" + +msgid "Hot Bed SVG" +msgstr "SVG du plateau" + +msgid "Load svg" +msgstr "Charger le svp" + +msgid "Max Print Height" +msgstr "Hauteur d’impression maximale" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "Le fichier dépasse %d MB, veuillez réimporter." + +msgid "Exception in obtaining file size, please import again." +msgstr "" +"Exception dans l’obtention de la taille du fichier, veuillez importer à " +"nouveau." + +msgid "Preset path is not find, please reselect vendor." +msgstr "" +"Le chemin d’accès prédéfini n’est pas trouvé, veuillez resélectionner le " +"vendeur." + +msgid "The printer model was not found, please reselect." +msgstr "Le modèle d’imprimante n’a pas été trouvé, veuillez resélectionner." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "Le diamètre de la buse n’est pas bon, resélectionner l’emplacement." + +msgid "The printer preset is not found, place reselect." +msgstr "Le préréglage de l’imprimante n’est pas bon, placez le préréglage." + +msgid "Printer Preset" +msgstr "Préréglage de l’imprimante" + +msgid "Filament Preset Template" +msgstr "Modèle de préréglage Filament" + +msgid "Deselect All" +msgstr "Désélectionner tout" + +msgid "Process Preset Template" +msgstr "Modèle de préréglage de traitement" + +msgid "Back Page 1" +msgstr "Retour à la page 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Vous n’avez pas encore choisi le préréglage de l’imprimante sur lequel " +"créer. Veuillez choisir le fournisseur et le modèle de l’imprimante" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"Vous avez introduit une donnée illégale dans la section « zone imprimable » " +"de la première page. Veuillez vérifier avant de la créer." + +msgid "The custom printer or model is not inputed, place input." +msgstr "" +"L’imprimante ou le modèle personnalisé n’est pas saisi, placer la saisie." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"Le préréglage d’imprimante que vous avez créé possède déjà un préréglage " +"portant le même nom. Voulez-vous l’écraser ?\n" +"\tOui : écraser le préréglage d’imprimante portant le même nom, et les " +"préréglages de filament et de traitement portant le même nom de préréglage " +"seront recréés. \n" +"et les préréglages de filament et de processus sans le même nom de " +"préréglage seront réservés.\n" +"\tAnnuler : Ne pas créer de préréglage, revenir à l’interface de création." + +msgid "You need to select at least one filament preset." +msgstr "Vous devez sélectionner au moins un préréglage de filament." + +msgid "You need to select at least one process preset." +msgstr "Vous devez sélectionner au moins un préréglage de filament." + +msgid "Create filament presets failed. As follows:\n" +msgstr "La création de préréglages de filaments a échoué. Comme suit :\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "La création de préréglages de traitement a échoué. Comme suit :\n" + +msgid "Vendor is not find, please reselect." +msgstr "Le vendeur n’est pas trouvé, veuillez resélectionner." + +msgid "Current vendor has no models, please reselect." +msgstr "Le vendeur actuel n’a pas de modèle, veuillez resélectionner." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"Vous n’avez pas sélectionné le fournisseur et le modèle ou introduit le " +"fournisseur et le modèle personnalisés." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"Il peut y avoir des caractères d’échappement dans le fournisseur ou le " +"modèle de l’imprimante personnalisée. Veuillez les supprimer et les saisir à " +"nouveau." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"Toutes les entrées dans le modèle ou le fournisseur de l’imprimante " +"personnalisée sont des espaces. Veuillez les saisir à nouveau." + +msgid "Please check bed printable shape and origin input." +msgstr "" +"Veuillez vérifier la forme imprimable du plateau et l’entrée de l’origine." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Vous n’avez pas encore sélectionné l’imprimante pour remplacer la buse, " +"veuillez choisir." + +msgid "Create Printer Successful" +msgstr "Création d’une imprimante réussie" + +msgid "Create Filament Successful" +msgstr "Créer un filament réussi" + +msgid "Printer Created" +msgstr "Imprimante créée" + +msgid "Please go to printer settings to edit your presets" +msgstr "" +"Veuillez aller dans les paramètres de l’imprimante pour modifier vos " +"préréglages." + +msgid "Filament Created" +msgstr "Filament créé" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Si vous le souhaitez, vous pouvez modifier vos préréglages dans les " +"paramètres du filament.\n" +"Veuillez noter que la température de la buse, la température du plateau " +"chaud et la vitesse volumétrique maximale ont un impact significatif sur la " +"qualité d’impression. Veuillez les régler avec soin." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"Studio a détecté que la fonction de synchronisation des réglages utilisateur " +"n’est pas activée, ce qui peut entraîner l’échec des réglages du filament " +"sur la page Device. \n" +"Cliquez sur «  Synchroniser les réglages prédéfinis de l’utilisateur «  pour " +"activer la fonction de synchronisation." + +msgid "Printer Setting" +msgstr "Réglage de l’imprimante" + +msgid "Printer config bundle(.orca_printer)" +msgstr "Paquet de configuration de l’imprimante (.orca_printer)" + +msgid "Filament bundle(.orca_filament)" +msgstr "Paquet de filaments (.orca_filament)" + +msgid "Printer presets(.zip)" +msgstr "Préréglages d’imprimante(.zip)" + +msgid "Filament presets(.zip)" +msgstr "Présélections de filaments(.zip)" + +msgid "Process presets(.zip)" +msgstr "Présélections de traitement(.zip)" + +msgid "initialize fail" +msgstr "échec de l’initialisation" + +msgid "add file fail" +msgstr "échec de l’ajout d’un fichier" + +msgid "add bundle structure file fail" +msgstr "échec de l’ajout d’un fichier de structure de paquet" + +msgid "finalize fail" +msgstr "échec de la finalisation" + +msgid "open zip written fail" +msgstr "échec de l’ouverture d’un zip écrit" + +msgid "Export successful" +msgstr "Exportation réussie" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"Le dossier ‘%s’ existe déjà dans le répertoire actuel. Voulez-vous l’effacer " +"et le reconstruire ?\n" +"Si ce n’est pas le cas, un suffixe temporel sera ajouté, et vous pourrez " +"modifier le nom après la création." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"Imprimante et tous les préréglages de filament et de traitement qui " +"appartiennent à l’imprimante. \n" +"Peut être partagé avec d’autres." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Préréglage du remplissage par l’utilisateur. \n" +"Peut être partagé avec d’autres." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"N’afficher que les noms d’imprimantes avec les modifications apportées aux " +"préréglages de l’imprimante, du filament et du traitement." + +msgid "Only display the filament names with changes to filament presets." +msgstr "" +"N’affichez que les noms des filaments lorsque vous modifiez les préréglages " +"des filaments." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Seuls les noms d’imprimantes avec des préréglages d’imprimante utilisateur " +"seront affichés, et chaque préréglage que vous choisissez sera exporté sous " +"forme de fichier zip." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Seuls les noms de filaments contenant des préréglages de filaments " +"utilisateur seront affichés, \n" +"et tous les préréglages de filament d’utilisateur dans chaque nom de " +"filament que vous sélectionnez seront exportés sous forme de fichier zip." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Seuls les noms d’imprimantes dont les préréglages de traitement ont été " +"modifiés seront affichés, \n" +"et tous les préréglages de processus de l’utilisateur dans chaque nom " +"d’imprimante que vous sélectionnez seront exportés sous forme de fichier zip." + +msgid "Please select at least one printer or filament." +msgstr "Veuillez sélectionner au moins une imprimante ou un filament." + +msgid "Please select a type you want to export" +msgstr "Veuillez sélectionner le type de produit que vous souhaitez exporter" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" +"Échec de la création d’un dossier temporaire, veuillez réessayer d’exporter " +"les configurations." + +msgid "Edit Filament" +msgstr "Modifier le filament" + +msgid "Filament presets under this filament" +msgstr "Préréglages du filament sous ce filament" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Remarque : si le seul préréglage sous ce filament est supprimé, le filament " +"sera supprimé après avoir quitté la boîte de dialogue." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "" +"Les préréglages hérités d’autres préréglages ne peuvent pas être supprimés." + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Les préréglages suivants héritent de ce préréglage." +msgstr[1] "Le préréglage suivant hérite de ce préréglage." + +msgid "Delete Preset" +msgstr "Supprimer la présélection" + +msgid "Are you sure to delete the selected preset?" +msgstr "Êtes-vous sûr de vouloir supprimer le préréglage sélectionné ?" + +msgid "Delete preset" +msgstr "Effacer la présélection" + +msgid "+ Add Preset" +msgstr "+ Ajouter un préréglage" + +msgid "Delete Filament" +msgstr "Supprimer le filament" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Tous les préréglages de filaments appartenant à ce filament seront " +"supprimés. \n" +"Si vous utilisez ce filament sur votre imprimante, veuillez réinitialiser " +"les informations relatives au filament pour cet emplacement." + +msgid "Delete filament" +msgstr "Supprimer le filament" + +msgid "Add Preset" +msgstr "Ajouter un préréglage" + +msgid "Add preset for new printer" +msgstr "Ajouter un préréglage pour une nouvelle imprimante" + +msgid "Copy preset from filament" +msgstr "Copier le préréglage du filament" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "" +"Le choix du filament ne correspond pas à la présélection du filament, " +"veuillez le resélectionner." + +msgid "[Delete Required]" +msgstr "[Suppression requise]" + +msgid "Edit Preset" +msgstr "Modifier le préréglage" + +msgid "For more information, please check out Wiki" +msgstr "Pour plus d’informations, consultez le site Wiki" + +msgid "Collapse" +msgstr "Réduire" + +msgid "Daily Tips" +msgstr "Astuces quotidiennes" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "buse mémorisée : %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Le diamètre de la buse dans le préréglage ne correspond pas au diamètre de " +"la buse mémorisé. Avez-vous changé de buse récemment ?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*L’impression du matériau %s avec %s peut endommager la buse." + +msgid "Need select printer" +msgstr "Nécessité de sélectionner une imprimante" + +msgid "The start, end or step is not valid value." +msgstr "Le début, la fin ou l’intervalle n’est pas une valeur valide." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Impossible de calibrer : il est possible que la plage de valeurs de " +"calibrage définie est trop grande ou que l’intervalle est trop petit" + +msgid "Physical Printer" +msgstr "Imprimante Physique" + +msgid "Print Host upload" +msgstr "Envoi vers l’imprimante hôte" + +msgid "Could not get a valid Printer Host reference" +msgstr "Impossible d’obtenir une référence d’imprimante hôte valide" + +msgid "Success!" +msgstr "Succès !" + +msgid "Are you sure to log out?" +msgstr "Êtes-vous sûr de pouvoir vous déconnecter ?" + +msgid "Refresh Printers" +msgstr "Actualiser les imprimantes" + +msgid "View print host webui in Device tab" +msgstr "" +"Afficher l’interface web de l’hôte d’impression dans l’onglet Périphérique" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "Remplacer l’onglet device de BambuLab par print host webui" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"Le fichier CA HTTPS est facultatif. Il n'est nécessaire que si vous utilisez " +"HTTPS avec un certificat auto-signé." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "" +"Fichiers de certificat (*.crt, *.pem)|*.crt;*.pem|Tous les fichiers|*.*" + +msgid "Open CA certificate file" +msgstr "Ouvrir le fichier de certificat CA" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"Sur ce système, %s utilise les certificats HTTPS du magasin de certificats " +"du système ou du trousseau." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Pour utiliser un certificat personnalisé, veuillez importer votre fichier " +"dans magasin de certificats / trousseau." + +msgid "Login/Test" +msgstr "Connexion/Test" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"La connexion aux imprimantes connectées via l’hôte d’impression a échoué." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Type d’hôte d’impression non compatible : %s" + +msgid "Connection to AstroBox works correctly." +msgstr "La connexion à l’AstroBox fonctionne correctement." + +msgid "Could not connect to AstroBox" +msgstr "Impossible de se connecter à AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Note : La version 1.1.0 d’AstroBox est requise." + +msgid "Connection to Duet works correctly." +msgstr "La connexion à Duet fonctionne correctement." + +msgid "Could not connect to Duet" +msgstr "Impossible de se connecter à Duet" + +msgid "Unknown error occured" +msgstr "Une erreur inconnue s’est produite" + +msgid "Wrong password" +msgstr "Mot de passe erroné" + +msgid "Could not get resources to create a new connection" +msgstr "Impossible d’obtenir des ressources pour créer une nouvelle connexion" + +msgid "Upload not enabled on FlashAir card." +msgstr "Le téléchargement n’est pas activé sur la carte FlashAir." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "" +"La connexion à FlashAir fonctionne correctement et le téléchargement est " +"activé." + +msgid "Could not connect to FlashAir" +msgstr "Impossible de se connecter à FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Note : FlashAir avec le firmware 2.00.02 ou plus récent et la fonction de " +"téléchargement activée sont nécessaires." + +msgid "Connection to MKS works correctly." +msgstr "La connexion à MKS fonctionne correctement." + +msgid "Could not connect to MKS" +msgstr "Impossible de se connecter à MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "La connexion à OctoPrint fonctionne correctement." + +msgid "Could not connect to OctoPrint" +msgstr "Impossible de se connecter à OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Note : La version 1.1.0 d’OctoPrint est requise." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "La connexion à Prusa SL1 / SL1S fonctionne correctement." + +msgid "Could not connect to Prusa SLA" +msgstr "Impossible de se connecter à Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "La connexion à PrusaLink fonctionne correctement." + +msgid "Could not connect to PrusaLink" +msgstr "Impossible de se connecter à PrusaLink" + +msgid "Storages found" +msgstr "Stockages trouvés" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : lecture seule" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : pas d’espace libre" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" +"Le téléchargement a échoué. Aucun espace de stockage approprié n’a été " +"trouvé à %1%." + +msgid "Connection to Prusa Connect works correctly." +msgstr "La connexion à Prusa Connect fonctionne correctement." + +msgid "Could not connect to Prusa Connect" +msgstr "Impossible de se connecter à Prusa Connect" + +msgid "Connection to Repetier works correctly." +msgstr "La connexion à Repetier fonctionne correctement." + +msgid "Could not connect to Repetier" +msgstr "Impossible de se connecter à Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Note : La version 0.90.0 de Repetier est requise." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"Statut HTTP : %1%\n" +"Corps du message : « %2% »" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"L’analyse de la réponse de l’hôte a échoué.\n" +"Corps du message : « %1% »\n" +"Erreur : « %2% »" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"L’énumération des imprimantes hôtes a échoué.\n" +"Corps du message : « %1% »\n" +"Erreur : « %2% »" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"Sa faible hauteur de couche permet d’obtenir des lignes de couche presque " +"négligeables et une grande qualité d’impression. Il convient à la plupart " +"des cas d’impression générale." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,2 mm, la vitesse et " +"l’accélération sont plus faibles, et le motif de remplissage épars est " +"gyroïde. Il en résulte donc une qualité d’impression nettement supérieure, " +"mais un temps d’impression beaucoup plus long." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,2 mm, il présente une " +"hauteur de couche légèrement supérieure, ce qui se traduit par des lignes de " +"couche presque négligeables et un temps d’impression légèrement plus court." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,2 mm, il présente une " +"hauteur de couche plus importante, ce qui se traduit par des lignes de " +"couche légèrement visibles, mais un temps d’impression plus court." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,2 mm, il présente une " +"hauteur de couche plus petite, ce qui permet d’obtenir des lignes de couche " +"presque invisibles et une qualité d’impression supérieure, mais aussi un " +"temps d’impression plus court." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,2 mm, il présente des " +"lignes de couche plus petites, des vitesses et des accélérations plus " +"faibles, et le motif de remplissage clairsemé est gyroïde. Il en résulte " +"donc des lignes de couche presque invisibles et une qualité d’impression " +"bien supérieure, mais un temps d’impression bien plus long." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Par rapport au profil par défaut de la buse de 0,2 mm, il présente une " +"hauteur de couche plus petite, ce qui se traduit par des lignes de couche " +"minimales et une qualité d’impression supérieure, mais aussi par un temps " +"d’impression plus court." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,2 mm, il présente des " +"lignes de couche plus petites, des vitesses et des accélérations plus " +"faibles, et le motif de remplissage clairsemé est gyroïde. Il en résulte " +"donc des lignes de couche minimales et une qualité d’impression nettement " +"supérieure, mais un temps d’impression beaucoup plus long." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"Il présente une hauteur de couche générale, ce qui se traduit par des lignes " +"de couche et une qualité d’impression générales. Il convient à la plupart " +"des cas d’impression générale." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,4 mm, il présente plus de " +"boucles de paroi et une densité de remplissage clairsemée plus élevée. Il en " +"résulte donc une plus grande solidité des impressions, mais une plus grande " +"consommation de filament et un temps d’impression plus long." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,4 mm, il présente une " +"hauteur de couche plus importante, ce qui se traduit par des lignes de " +"couche plus apparentes et une qualité d’impression moindre, mais un temps " +"d’impression légèrement plus court." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,4 mm, il présente une " +"hauteur de couche plus importante, ce qui se traduit par des lignes de " +"couche plus apparentes et une qualité d’impression moindre, mais un temps " +"d’impression plus court." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,4 mm, il présente une " +"hauteur de couche plus petite, ce qui se traduit par des lignes de couche " +"moins apparentes et une meilleure qualité d’impression, mais un temps " +"d’impression plus long." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,4 mm, il présente une " +"hauteur de couche plus petite, des vitesses et des accélérations plus " +"faibles, et le motif de remplissage clairsemé est gyroïde. Il en résulte " +"donc des lignes de couche moins apparentes et une qualité d’impression " +"beaucoup plus élevée, mais un temps d’impression beaucoup plus long." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,4 mm, il présente une " +"hauteur de couche plus petite, ce qui permet d’obtenir des lignes de couche " +"presque négligeables et une meilleure qualité d’impression, mais un temps " +"d’impression plus long." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,4 mm, il présente une " +"hauteur de couche plus petite, des vitesses et des accélérations plus " +"faibles, et le motif de remplissage clairsemé est gyroïde. Il en résulte " +"donc des lignes de couche presque négligeables et une qualité d’impression " +"bien supérieure, mais un temps d’impression bien plus long." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,4 mm, il présente une " +"hauteur de couche plus petite, ce qui se traduit par des lignes de couche " +"presque négligeables et un temps d’impression plus long." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"La hauteur de couche est importante, ce qui se traduit par des lignes de " +"couche apparentes et une qualité et un temps d’impression ordinaires." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,6 mm, il présente plus de " +"boucles de paroi et une densité de remplissage clairsemée plus élevée. Il en " +"résulte donc une plus grande solidité des impressions, mais une plus grande " +"consommation de filament et un temps d’impression plus long." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,6 mm, il présente une " +"hauteur de couche plus importante, ce qui se traduit par des lignes de " +"couche plus apparentes et une qualité d’impression moindre, mais un temps " +"d’impression plus court dans certains cas d’impression." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,6 mm, il présente une " +"hauteur de couche plus importante, ce qui se traduit par des lignes de " +"couche beaucoup plus apparentes et une qualité d’impression beaucoup plus " +"faible, mais un temps d’impression plus court dans certains cas d’impression." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,6 mm, il présente une " +"hauteur de couche plus petite, ce qui se traduit par des lignes de couche " +"moins apparentes et une qualité d’impression légèrement supérieure, mais un " +"temps d’impression plus long." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,6 mm, il présente une " +"hauteur de couche plus petite, ce qui se traduit par des lignes de couche " +"moins apparentes et une meilleure qualité d’impression, mais un temps " +"d’impression plus long." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"La hauteur des couches est très importante, ce qui se traduit par des lignes " +"de couche très apparentes, une qualité d’impression médiocre et un temps " +"d’impression général." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,8 mm, il présente une " +"hauteur de couche plus importante, ce qui se traduit par des lignes de " +"couche très apparentes et une qualité d’impression nettement inférieure, " +"mais un temps d’impression plus court dans certains cas d’impression." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,8 mm, il présente une " +"hauteur de couche beaucoup plus importante, ce qui se traduit par des lignes " +"de couche extrêmement apparentes et une qualité d’impression beaucoup plus " +"faible, mais un temps d’impression beaucoup plus court dans certains cas " +"d’impression." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,8 mm, il présente une " +"hauteur de couche légèrement inférieure, ce qui se traduit par des lignes de " +"couche légèrement moins nombreuses mais toujours apparentes et par une " +"qualité d’impression légèrement supérieure, mais par un temps d’impression " +"plus long dans certains cas d’impression." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"Par rapport au profil par défaut d’une buse de 0,8 mm, il présente une " +"hauteur de couche plus petite, ce qui se traduit par des lignes de couche " +"moins nombreuses mais toujours apparentes et une qualité d’impression " +"légèrement supérieure, mais un temps d’impression plus long dans certains " +"cas d’impression." + +msgid "Connected to Obico successfully!" +msgstr "Connexion à Obico réussie !" + +msgid "Could not connect to Obico" +msgstr "Impossible de se connecter à Obico" + +msgid "Connected to SimplyPrint successfully!" +msgstr "Connexion à SimplyPrint réussie !" + +msgid "Could not connect to SimplyPrint" +msgstr "Impossible de se connecter à SimplyPrint" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "Erreur inconnue" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" +"Le compte SimplyPrint n’est pas lié. Allez dans les options de connexion " +"pour le configurer." + +msgid "Connection to Flashforge works correctly." +msgstr "La connexion à Flashforge fonctionne correctement." + +msgid "Could not connect to Flashforge" +msgstr "Impossible de se connecter à Flashforge" + +msgid "The provided state is not correct." +msgstr "L’état communiqué n’est pas correct." + +msgid "Please give the required permissions when authorizing this application." +msgstr "" +"Veuillez donner les autorisations nécessaires lorsque vous autorisez cette " +"application." + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" +"Un événement inattendu s’est produit lors de la connexion, veuillez " +"réessayer." + +msgid "User cancelled." +msgstr "L’utilisateur a annulé." + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"Paroi précise\n" +"Saviez-vous que l’activation de la paroi précise peut améliorer la précision " +"et l’homogénéité des couches ?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"Mode sandwich\n" +"Saviez-vous que vous pouvez utiliser le mode sandwich (intérieur-extérieur-" +"intérieur) pour améliorer la précision et la cohérence des couches si votre " +"modèle n’a pas de porte-à-faux très prononcés ?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"Température du caisson\n" +"Saviez-vous qu’Snapmaker Orca prend en charge la température du caisson ?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"Calibrage\n" +"Saviez-vous que le calibrage de votre imprimante peut faire des merveilles ? " +"Découvrez notre solution de calibrage bien-aimée dans Snapmaker Orca." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"Ventilateur auxiliaire\n" +"Saviez-vous qu’Snapmaker Orca prend en charge le ventilateur auxiliaire de " +"refroidissement des pièces ?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"Filtration de l’air/ventilateur d’extraction\n" +"Saviez-vous qu’Snapmaker Orca peut prendre en charge la filtration de l’air/le " +"ventilateur d’extraction ?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"Fenêtre de G-code\n" +"Vous pouvez activer/désactiver la fenêtre G-code en appuyant sur la touche " +"C." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"Changer les espaces de travail\n" +"Vous pouvez alterner entre l’espace de travail Préparer et Aperçu en appuyant sur la touche Tab." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"Comment utiliser les raccourcis clavier\n" +"Saviez-vous qu’Snapmaker Orca offre une large gamme de raccourcis clavier et " +"d’opérations sur les scènes 3D." + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"Parois inversées sur couches impaires\n" +"Saviez-vous que la fonction Parois inversées sur couches impaires " +"peut améliorer de manière significative la qualité de la surface de vos " +"surplombs ?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Outil de découpe\n" +"Saviez-vous que vous pouvez découper un modèle à n'importe quel angle et " +"dans n'importe quelle position avec l'outil de découpe ?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Réparer un modèle\n" +"Saviez-vous que vous pouvez réparer un modèle 3D corrompu pour éviter de " +"nombreux problèmes de découpage sur le système Windows ?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Timelapse\n" +"Saviez-vous que vous pouvez générer une vidéo en timelapse à chaque " +"impression ?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Agencement Automatique\n" +"Saviez-vous que vous pouvez agencement automatiquement tous les objets de " +"votre projet ?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Orientation Automatique\n" +"Saviez-vous que vous pouvez faire pivoter des objets dans une orientation " +"optimale pour l'impression d'un simple clic ?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Poser sur une face\n" +"Saviez-vous qu'il est possible d'orienter rapidement un modèle de manière à " +"ce que l'une de ses faces repose sur le plateau d'impression ? Sélectionnez " +"la fonction « Placer sur la face » ou appuyez sur la touche F." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Liste d'objets\n" +"Saviez-vous que vous pouvez afficher tous les objets/pièces dans une liste " +"et modifier les paramètres de chaque objet/pièce ?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"Fonctionnalité de recherche\n" +"Saviez-vous que vous pouvez utiliser l’outil de recherche pour trouver " +"rapidement un paramètre spécifique de l’Snapmaker Orca ?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"Simplifier le modèle\n" +"Saviez-vous que vous pouviez réduire le nombre de triangles dans un maillage " +"à l’aide de la fonction Simplifier le maillage ? Cliquez avec le bouton " +"droit de la souris sur le modèle et sélectionnez Simplifier le modèle." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Tableau des paramètres de découpe\n" +"Saviez-vous que vous pouvez afficher tous les objets/pièces sur un tableau " +"et modifier les paramètres de chaque objet/pièce ?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Séparer en objets/parties\n" +"Saviez-vous que vous pouvez séparer un gros objet en petits objets pour les " +"colorier ou les imprimer facilement ?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"Soustraire une pièce\n" +"Saviez-vous que vous pouviez soustraire un maillage d’un autre à l’aide du " +"modificateur de partie négative ? De cette façon, vous pouvez, par exemple, " +"créer des trous facilement redimensionnables directement dans Snapmaker Orca." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP\n" +"Saviez-vous que vous pouvez améliorer votre qualité d'impression en " +"découpant un fichier .step au lieu d'un .stl ?\n" +"Snapmaker Orca prend en charge le découpage des fichiers .step, offrant des " +"résultats plus fluides qu'un .stl de résolution inférieure. Essayez !" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Emplacement de la couture Z\n" +"Saviez-vous que vous pouvez personnaliser l'emplacement de la couture Z, et " +"même la peindre manuelle sur votre impression pour le placer dans un endroit " +"moins visible ? Cela améliore l'aspect général de votre modèle. Jetez-y un " +"coup d'œil !" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Réglage fin du débit\n" +"Saviez-vous que le débit peut être réglé avec précision pour obtenir des " +"impressions encore plus belles ? En fonction du matériau, vous pouvez " +"améliorer la finition générale du modèle imprimé en procédant à un réglage " +"fin." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Divisez vos impressions en plateaux\n" +"Saviez-vous que vous pouvez diviser un modèle comportant de nombreuses " +"pièces en plateaux individuels prêts à être imprimés ? Cela simplifie le " +"processus de suivi de toutes les pièces." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Accélérez votre impression grâce à la Hauteur de Couche Adaptative\n" +"Saviez-vous que vous pouvez imprimer un modèle encore plus rapidement en " +"utilisant l'option Adaptive Layer Height ? Jetez-y un coup d'œil !" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Peinture de support\n" +"Saviez-vous que vous pouvez peindre l'emplacement de vos supports ? Cette " +"caractéristique permet de placer facilement le matériau de support " +"uniquement sur les sections du modèle qui en ont réellement besoin." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Différents types de supports\n" +"Saviez-vous que vous pouvez choisir parmi plusieurs types de supports ? Les " +"supports arborescents fonctionnent parfaitement pour les modèles organiques " +"tout en économisant du filament et en améliorant la vitesse d'impression. " +"Découvrez-les !" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Impression de filament Soie\n" +"Saviez-vous que le filament soie nécessite une attention particulière pour " +"une impression réussie ? Une température plus élevée et une vitesse plus " +"faible sont toujours recommandées pour obtenir les meilleurs résultats." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Bordure pour une meilleure adhésion\n" +"Saviez-vous que lorsque les modèles imprimés ont une faible interface de " +"contact avec la surface d'impression, il est recommandé d'utiliser une " +"bordure ?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Définir les paramètres de plusieurs objets\n" +"Saviez-vous que vous pouvez définir des paramètres de découpe pour tous les " +"objets sélectionnés en une seule fois ?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Empiler des objets\n" +"Saviez-vous que vous pouvez empiler des objets pour n'en former qu'un?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Purger dans les supports/les objets/le remplissage\n" +"Saviez-vous que vous pouvez réduire le filament gaspillé en le purgeant dans " +"les supports/les objets/le remplissage lors des changements de filament ?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Améliorer la solidité\n" +"Saviez-vous que vous pouvez définir un plus grand nombre de périmètre et une " +"densité de remplissage plus élevée pour améliorer la résistance du modèle ?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Quand il faut imprimer avec la porte de l’imprimante ouverte\n" +"Saviez-vous que l’ouverture de la porte de l’imprimante peut réduire la " +"probabilité de blocage de l’extrudeuse/du réchauffeur lors de l’impression " +"de filament à basse température avec une température de boîtier plus élevée. " +"Plus d’informations à ce sujet dans le Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Éviter la déformation\n" +"Saviez-vous que lors de l’impression de matériaux susceptibles de se " +"déformer, tels que l’ABS, une augmentation appropriée de la température du " +"plateau chauffant peut réduire la probabilité de déformation." + +#~ msgid "Current association: " +#~ msgstr "Association actuelle : " + +#~ msgid "Associate prusaslicer://" +#~ msgstr "Associer prusaslicer://" + +#~ msgid "Not associated to any application" +#~ msgstr "N’est associé à aucune application" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "models from Printable.com" +#~ msgstr "" +#~ "Associer Snapmaker Orca aux liens prusaslicer:// afin qu’Orca puisse ouvrir " +#~ "des modèles provenant de Printable.com" + +#~ msgid "Associate bambustudio://" +#~ msgstr "Associer bambustudio://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with bambustudio:// links so that Orca can open " +#~ "models from makerworld.com" +#~ msgstr "" +#~ "Associer Snapmaker Orca aux liens bambustudio:// afin qu’Orca puisse ouvrir " +#~ "des modèles provenant de makerworld.com" + +#~ msgid "Associate cura://" +#~ msgstr "Associer cura://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with cura:// links so that Orca can open models from " +#~ "thingiverse.com" +#~ msgstr "" +#~ "Associer Snapmaker Orca aux liens cura:// pour qu’Orca puisse ouvrir les " +#~ "modèles de thingiverse.com" + +#~ msgid "Internel error" +#~ msgstr "Erreur interne" + +#~ msgid "" +#~ "File size exceeds the 100MB upload limit. Please upload your file through " +#~ "the panel." +#~ msgstr "" +#~ "La taille du fichier dépasse la limite de téléchargement de 100 Mo. " +#~ "Veuillez télécharger votre fichier via le panneau." + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Veuillez saisir une valeur valide (K entre 0 et 0,3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "" +#~ "Veuillez saisir une valeur valide (K entre 0 et 0,3, N entre 0,6 et 2,0)." + +#~ msgid "Select connected printetrs (0/6)" +#~ msgstr "Sélectionner les imprimantes connectées (0/6)" + +#, c-format, boost-format +#~ msgid "Select Connected Printetrs (%d/6)" +#~ msgstr "Sélectionner les imprimantes connectées (%d/6)" + +#~ msgid "PrintingPause" +#~ msgstr "Pause de l’impression" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "La connexion locale de l'imprimante a échoué, veuillez réessayer." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Veuillez trouver les détails de la calibration dynamique du débit sur " +#~ "notre Wiki.\n" +#~ "\n" +#~ "Habituellement, la calibration est inutile. Lorsque vous démarrez une " +#~ "impression d'une seule couleur/matériau, avec l'option \"Calibration du " +#~ "débit\" cochée dans le menu de démarrage de l'impression, l'imprimante " +#~ "suivra l'ancienne méthode de calibration du filament avant l'impression.\n" +#~ "Lorsque vous démarrez une impression multi-couleurs/matériaux, " +#~ "l'imprimante utilise le paramètre de compensation par défaut pour le " +#~ "filament lors de chaque changement de filament, ce qui donne un bon " +#~ "résultat dans la plupart des cas.\n" +#~ "\n" +#~ "Veuillez noter qu'il y a quelques cas qui rendront le résultat de " +#~ "calibration non fiable : utiliser un plateau texturé pour faire la " +#~ "calibration, utiliser un plateau qui n'a pas une bonne adhérence " +#~ "(veuillez dans ce cas laver la plaque de construction ou appliquer de la " +#~ "colle)… Vous pouvez trouver d'autres cas sur notre Wiki.\n" +#~ "Veuillez noter qu'il y a quelques cas qui rendront le résultat de " +#~ "calibration non fiable : utiliser un plateau texturé pour faire la " +#~ "calibration, utiliser un plateau qui n'a pas une bonne adhérence " +#~ "(veuillez dans ce cas laver la plaque de construction ou appliquer de la " +#~ "colle)… Vous pouvez trouver d'autres cas sur notre Wiki.\n" +#~ "\n" +#~ "Les résultats de calibration ont environ 10 % d'écart dans nos tests, ce " +#~ "qui peut faire en sorte que le résultat ne soit pas exactement le même à " +#~ "chaque calibration. Nous enquêtons toujours sur la cause première pour " +#~ "apporter des améliorations avec de nouvelles mises à jour.Les résultats " +#~ "de calibration ont environ 10 % d'écart dans nos tests, ce qui peut faire " +#~ "en sorte que le résultat ne soit pas exactement le même à chaque " +#~ "calibration. Nous enquêtons toujours sur la cause première pour apporter " +#~ "des améliorations avec de nouvelles mises à jour." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Un seul des résultats portant le même nom sera enregistré. Voulez-vous " +#~ "vraiment remplacer les autres résultats ?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Il existe déjà un résultat de calibration portant le même nom : %s. Un " +#~ "seul des résultats portant le même nom est enregistré. Voulez-vous " +#~ "vraiment remplacer le résultat précédent ?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Veuillez trouver le coin avec un degré d’extrusion parfait" + +#~ msgid "X" +#~ msgstr "X" + +#~ msgid "Y" +#~ msgstr "Y" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "PrusaSlicer links from Printable.com" +#~ msgstr "" +#~ "Associer Snapmaker Orca aux liens prusaslicer:// pour qu’Orca puisse ouvrir " +#~ "les liens PrusaSlicer de Printable.com" + +#~ msgid "" +#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed " +#~ "first, which works best in most cases.\n" +#~ "\n" +#~ "Printing walls first may help with extreme overhangs as the walls have " +#~ "the neighbouring infill to adhere to. However, the infill will slighly " +#~ "push out the printed walls where it is attached to them, resulting in a " +#~ "worse external surface finish. It can also cause the infill to shine " +#~ "through the external surfaces of the part." +#~ msgstr "" +#~ "Ordre des parois/remplissages. Lorsque la case n’est pas cochée, les " +#~ "parois sont imprimées en premier, ce qui fonctionne le mieux dans la " +#~ "plupart des cas.\n" +#~ "\n" +#~ "L’impression des parois en premier peut s’avérer utile en cas de " +#~ "surplombs extrêmes, car les parois ont le remplissage voisin auquel " +#~ "adhérer. Cependant, le remplissage repoussera légèrement les parois " +#~ "imprimées à l’endroit où il est fixé, ce qui se traduira par une moins " +#~ "bonne finition de la surface extérieure. Cela peut également faire " +#~ "briller le remplissage à travers les surfaces externes de la pièce." + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "Maximum print speed when purging" +#~ msgstr "Vitesse d’impression maximale lors de la purge" + +#~ msgid "" +#~ "The maximum print speed when purging in the wipe tower. If the sparse " +#~ "infill speed or calculated speed from the filament max volumetric speed " +#~ "is lower, the lowest speed will be used instead.\n" +#~ "Increasing this speed may affect the tower's stability, as purging can be " +#~ "performed over sparse layers. Before increasing this parameter beyond the " +#~ "default of 90mm/sec, make sure your printer can reliably bridge at the " +#~ "increased speeds." +#~ msgstr "" +#~ "Vitesse d’impression maximale lors de la purge dans la tour d’essuyage. " +#~ "Si la vitesse de remplissage ou la vitesse calculée à partir de la " +#~ "vitesse volumétrique maximale du filament est inférieure, c’est la " +#~ "vitesse la plus basse qui sera utilisée.\n" +#~ "L’augmentation de cette vitesse peut affecter la stabilité de la tour, " +#~ "car la purge peut être effectuée sur des couches peu épaisses. Avant " +#~ "d’augmenter ce paramètre au-delà de la valeur par défaut de 90 mm/sec, " +#~ "assurez-vous que votre imprimante peut effectuer un pontage fiable aux " +#~ "vitesses accrues." + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca est basé sur Bambu Studio de Bambulab qui a été développé sur " +#~ "la base de PrusaSlicer de Prusa Research, qui est lui même développé sur " +#~ "la base de Slic3r par Alessandro Ranelucci et la communauté RepRap" + +#~ msgid "Export &Configs" +#~ msgstr "Exportation & Configs" + +#~ msgid "" +#~ "Over 4 systems/handy are using remote access, you can close some and try " +#~ "again." +#~ msgstr "" +#~ "Plus de 4 orca/handy utilisent l’accès à distance, vous pouvez en fermer " +#~ "certains et réessayer." + +#, c-format, boost-format +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill. Set this " +#~ "value to ~10-15%% to minimize potential over extrusion and accumulation " +#~ "of material resulting in rough top surfaces." +#~ msgstr "" +#~ "La zone de remplissage est légèrement élargie pour chevaucher la paroi " +#~ "afin d’améliorer l’adhérence. La valeur du pourcentage est relative à la " +#~ "largeur de la ligne de remplissage clairsemée. Réglez cette valeur à " +#~ "~10-15%% pour minimiser le risque de sur-extrusion et d’accumulation de " +#~ "matériau, ce qui rendrait les surfaces supérieures rugueuses." + +#~ msgid "" +#~ "Top solid infill area is enlarged slightly to overlap with wall for " +#~ "better bonding and to minimize the appearance of pinholes where the top " +#~ "infill meets the walls. A value of 25-30%% is a good starting point, " +#~ "minimising the appearance of pinholes. The percentage value is relative " +#~ "to line width of sparse infill" +#~ msgstr "" +#~ "La zone de remplissage solide supérieure est légèrement élargie pour " +#~ "chevaucher la paroi afin d’améliorer l’adhérence et de minimiser " +#~ "l’apparition de trous d’épingle à l’endroit où le remplissage supérieur " +#~ "rencontre les parois. Une valeur de 25-30%% est un bon point de départ, " +#~ "minimisant l’apparition de trous d’épingle. La valeur en pourcentage est " +#~ "relative à la largeur de ligne d’un remplissage peu dense." + +#~ msgid "Export Configs" +#~ msgstr "Exporter les configurations" + +#~ msgid "Infill direction" +#~ msgstr "Sens de remplissage" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Activez cette option pour obtenir un fichier G-code contenant des " +#~ "mouvements G2 et G3. Et la tolérance d'ajustement est la même avec la " +#~ "résolution" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "La zone de remplissage est légèrement agrandie pour chevaucher la paroi " +#~ "afin d'améliorer l'adhérence. La valeur en pourcentage est relative à la " +#~ "largeur de ligne de remplissage." + +#~ msgid "Actions For Unsaved Changes" +#~ msgstr "Actions pour les changements non enregistrés" + +#~ msgid "Preset Value" +#~ msgstr "Valeur prédéfinie" + +#~ msgid "Modified Value" +#~ msgstr "Valeur modifiée" + +#~ msgid "Transfer Modified Value" +#~ msgstr "Transfert de la valeur modifiée" + +#~ msgid "Use Preset Value" +#~ msgstr "Utiliser la valeur prédéfinie" + +#~ msgid "Save Modified Value" +#~ msgstr "Enregistrer la valeur modifiée" + +#~ msgid "" +#~ "\n" +#~ "Would you like to save these changed settings(modified value)?" +#~ msgstr "" +#~ "\n" +#~ "Souhaitez-vous enregistrer les paramètres modifiés (valeur modifiée) ?" + +#~ msgid "" +#~ "\n" +#~ "Would you like to keep these changed settings(modified value) after " +#~ "switching preset?" +#~ msgstr "" +#~ "\n" +#~ "Souhaitez-vous conserver ces paramètres modifiés (valeur modifiée) après " +#~ "avoir changé de préréglage ?" + +#~ msgid "" +#~ "You have previously modified your settings and are about to overwrite " +#~ "them with new ones." +#~ msgstr "" +#~ "Vous avez précédemment modifié vos paramètres et vous êtes sur le point " +#~ "de les remplacer par de nouveaux." + +#~ msgid "" +#~ "\n" +#~ "Do you want to keep your current modified settings, or use preset " +#~ "settings?" +#~ msgstr "" +#~ "\n" +#~ "Souhaitez-vous conserver vos paramètres modifiés actuels ou utiliser des " +#~ "paramètres prédéfinis ?" + +#~ msgid "" +#~ "\n" +#~ "Do you want to save your current modified settings?" +#~ msgstr "" +#~ "\n" +#~ "Souhaitez-vous sauvegarder vos paramètres modifiés actuels ?" + +#~ msgid "Unload Filament" +#~ msgstr "Déchargement" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Choisissez un emplacement AMS puis appuyez sur le bouton correspondant " +#~ "pour Charger ou Décharger le filament." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "Carte mère" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "- ℃" +#~ msgstr "- ℃" + +#~ msgid "0.5" +#~ msgstr "0.5" + +#~ msgid "0.005" +#~ msgstr "0.005" + +#~ msgid "New Flow Dynamics Calibration" +#~ msgstr "Nouvelle calibration de la dynamique du flux" + +#~ msgid "" +#~ "The 3mf file version is in Beta and it is newer than the current " +#~ "Snapmaker Orca version." +#~ msgstr "" +#~ "La version du fichier 3mf est en Beta et est plus récente que la version " +#~ "actuelle d’Snapmaker Orca." + +#~ msgid "active" +#~ msgstr "actif" + +#~ msgid "Jump to layer" +#~ msgstr "Aller à la couche" + +#~ msgid "Cabin humidity" +#~ msgstr "Humidité dans l'AMS" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "Le vert signifie que l'humidité de l'AMS est normale, l'orange signifie " +#~ "que l'humidité est élevée et le rouge signifie que l'humidité est trop " +#~ "élevée. (Hygromètre : plus c'est bas, mieux c'est.)" + +#~ msgid "Desiccant status" +#~ msgstr "État du déshydratant" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "Un état du dessicateur inférieur à deux barres indique que le dessicateur " +#~ "est peut-être inactif. Veuillez changer le déshydratant. (Plus c'est " +#~ "élevé, mieux c'est.)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Remarque: Lorsque le couvercle est ouvert ou que le sachet de dessicateur " +#~ "est changé, cela peut prendre plusieurs heures ou une nuit pour absorber " +#~ "l'humidité. Les basses températures ralentissent également le processus. " +#~ "Pendant ce temps, l'indicateur pourrait ne pas représenter l'humidité " +#~ "dans l'AMS avec précision." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Remarque : si un nouveau filament est inséré pendant l'impression, l'AMS " +#~ "ne lira automatiquement aucune information avant la fin de l'impression." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "Succès! G-code exporté vers %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Échec de l'initialisation (pas de périphérique) !" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "L'initialisation a échoué (Pas de caméra)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "L'imprimante est occupée à télécharger, veuillez attendre la fin du " +#~ "téléchargement." + +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "" +#~ "Échec de l'initialisation (non pris en charge par l'imprimante actuelle) !" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "L'initialisation a échoué (Non accessible en mode LAN uniquement) !" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "" +#~ "Échec de l'initialisation (adresse IP réseau manquante de l'imprimante) !" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Arrêté [%d] !" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "Le chargement a échoué [%d] !" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "Aucun fichier [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Échec du chargement [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "" +#~ "Impossible de récupérer les informations du modèle depuis l'imprimante." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Impossible d'analyser les informations du modèle." + +#~ msgid "Connection lost. Please retry." +#~ msgstr "Connexion perdue. Veuillez réessayer." + +#~ msgid "File not exists." +#~ msgstr "Le fichier n'existe pas." + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Vous avez modifié certains paramètres du préréglage \"%1%\". \n" +#~ "Souhaitez-vous conserver ces paramètres modifiés (nouvelle valeur) après " +#~ "avoir changé de préréglage ?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Vous avez modifié certains paramètres prédéfinis. \n" +#~ "Souhaitez-vous conserver ces paramètres modifiés (nouvelle valeur) après " +#~ "avoir changé de préréglage ?" + +#~ msgid " ℃" +#~ msgstr " ℃" + +#~ msgid "" +#~ "Please go to filament setting to edit your presets if you need.\n" +#~ "Please note that nozzle temperature, hot bed temperature, and maximum " +#~ "volumetric speed have a significant impact on printing quality. Please " +#~ "set them carefully." +#~ msgstr "" +#~ "Si vous le souhaitez, vous pouvez modifier vos préréglages dans les " +#~ "paramètres du filament.\n" +#~ "Veuillez noter que la température de la buse, la température du plateau " +#~ "et la vitesse volumétrique maximale ont un impact significatif sur la " +#~ "qualité de l’impression. Veuillez les régler avec soin." + +#~ msgid "Studio Version:" +#~ msgstr "Version de Studio :" + +#~ msgid "Test BambuLab" +#~ msgstr "Test BambuLab" + +#~ msgid "Test BambuLab:" +#~ msgstr "Test BambuLab :" + +#~ msgid "Test HTTP Service:" +#~ msgstr "Test du service HTTP :" + +#~ msgid "Test storage" +#~ msgstr "Test du stockage" + +#~ msgid "Test Storage Upload:" +#~ msgstr "Test de l’envoi du stockage:" + +#~ msgid "Test storage upgrade" +#~ msgstr "Test de la mise à niveau du stockage" + +#~ msgid "Test Storage Upgrade:" +#~ msgstr "Test de la mise à niveau du stockage :" + +#~ msgid "Test storage download" +#~ msgstr "Test du téléchargement du stockage" + +#~ msgid "Test Storage Download:" +#~ msgstr "Test du téléchargement du stockage :" + +#~ msgid "Test plugin download" +#~ msgstr "Test du téléchargement du plugin" + +#~ msgid "Test Plugin Download:" +#~ msgstr "Test du téléchargement du plugin :" + +#~ msgid "Test Storage Upload" +#~ msgstr "Test de l’envoi du stockage" + +#~ msgid "" +#~ "The speed setting exceeds the printer's maximum speed " +#~ "(machine_max_speed_x/machine_max_speed_y).\n" +#~ "Orca will automatically cap the print speed to ensure it doesn't surpass " +#~ "the printer's capabilities.\n" +#~ "You can adjust the maximum speed setting in your printer's configuration " +#~ "to get higher speeds." +#~ msgstr "" +#~ "Le réglage de la vitesse dépasse la vitesse maximale de l’imprimante " +#~ "(machine_max_speed_x/machine_max_speed_y).\n" +#~ "Orca plafonne automatiquement la vitesse d’impression pour s’assurer " +#~ "qu’elle ne dépasse pas les capacités de l’imprimante.\n" +#~ "Vous pouvez ajuster le paramètre de vitesse maximale dans la " +#~ "configuration de votre imprimante pour obtenir des vitesses plus élevées." + +#~ msgid "" +#~ "Alternate extra wall only works with ensure vertical shell thickness " +#~ "disabled. " +#~ msgstr "" +#~ "La paroi supplémentaire alternée ne fonctionne que si « Assurer " +#~ "l’épaisseur verticale de la coque » est désactivé. " + +#~ msgid "" +#~ "Change these settings automatically? \n" +#~ "Yes - Disable ensure vertical shell thickness and enable alternate extra " +#~ "wall\n" +#~ "No - Dont use alternate extra wall" +#~ msgstr "" +#~ "Modifier ces paramètres automatiquement ? \n" +#~ "Oui - Désactiver « Assurer l’épaisseur verticale de la coque » et activer " +#~ "« Paroi supplémentaire alternée »\n" +#~ "Non - Ne pas utiliser « Paroi supplémentaire alternée »" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Ajoutez du remplissage solide à proximité des surfaces inclinées pour " +#~ "garantir l'épaisseur verticale de la coque (couches solides supérieure" +#~ "+inférieure)." + +#~ msgid "Further reduce solid infill on walls (beta)" +#~ msgstr "Réduire davantage le remplissage solide des parois (expérimental)" + +#~ msgid "" +#~ "Further reduces any solid infill applied to walls. As there will be very " +#~ "limited infill supporting solid surfaces, make sure that you are using " +#~ "adequate number of walls to support the part on sloping surfaces.\n" +#~ "\n" +#~ "For heavily sloped surfaces this option is not suitable as it will " +#~ "generate too thin of a top layer and should be disabled." +#~ msgstr "" +#~ "Réduit encore davantage les remplissages solides appliqués aux parois. " +#~ "Étant donné que le remplissage des surfaces solides sera très limité, " +#~ "assurez-vous que vous utilisez un nombre suffisant de parois pour " +#~ "soutenir la partie sur les surfaces inclinées.\n" +#~ "\n" +#~ "Pour les surfaces fortement inclinées, cette option n’est pas adaptée car " +#~ "elle génère une couche supérieure trop fine et doit être désactivée." + +#~ msgid "Text-Rotate" +#~ msgstr "Rotation du texte" + +#~ msgid "SVG-Rotate" +#~ msgstr "Rotation du SVG" + +#~ msgid "Resize" +#~ msgstr "Redimensionner" + +#~ msgid "Configuration package updated to " +#~ msgstr "Package de configuration mis à jour en " + +#~ msgid "" +#~ "The minimum printing speed for the filament when slow down for better " +#~ "layer cooling is enabled, when printing overhangs and when feature speeds " +#~ "are not specified explicitly." +#~ msgstr "" +#~ "La vitesse d’impression minimale lors du ralentissement pour un meilleur " +#~ "refroidissement des couches est activée, lors de l’impression des " +#~ "surplombs et lorsque les fonctionnalités de vitesses ne sont pas " +#~ "spécifiées explicitement." + +#~ msgid " " +#~ msgstr " " + +#~ msgid "Small Area Infill Flow Compensation (beta)" +#~ msgstr "" +#~ "Compensation des débits de remplissage des petites zones (expérimental)" + +#~ msgid "" +#~ "Improve shell precision by adjusting outer wall spacing. This also " +#~ "improves layer consistency." +#~ msgstr "" +#~ "Améliorer la précision de la coque en ajustant l’espacement des parois " +#~ "extérieures. Cela améliore également la consistance des couches." + +#~ msgid "Enable Flow Compensation" +#~ msgstr "Activer la compensation de débit" + +#~ msgid "No sparse layers (EXPERIMENTAL)" +#~ msgstr "Pas sur toutes les couches (EXPÉRIMENTAL)" + +#~ msgid "Layer order" +#~ msgstr "Ordre des couches" + +#~ msgid "End end: " +#~ msgstr "Temp. de fin: " + +#~ msgid "The Config can not be loaded." +#~ msgstr "La configuration ne peut pas être chargée." + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "Le fichier 3mf a été généré par une ancienne version de Snapmaker Orca, " +#~ "chargement des données de géométrie uniquement." + +#~ msgid "" +#~ "Relative extrusion is recommended when using \"label_objects\" option." +#~ "Some extruders work better with this option unckecked (absolute extrusion " +#~ "mode). Wipe tower is only compatible with relative mode. It is always " +#~ "enabled on BambuLab printers. Default is checked" +#~ msgstr "" +#~ "L’extrusion relative est recommandée lors de l’utilisation de l’option " +#~ "\"label_objects\". Certains extrudeurs fonctionnent mieux avec cette " +#~ "option décochée (mode d’extrusion absolu). La tour d’essuyage n’est " +#~ "compatible qu’avec le mode relatif. Il est toujours activé sur les " +#~ "imprimantes BambuLab. La valeur par défaut est cochée" + +#~ msgid "Movement:" +#~ msgstr "Mouvement:" + +#~ msgid "Movement" +#~ msgstr "Mouvement" + +#~ msgid "Auto Segment" +#~ msgstr "Segmentation automatique" + +#~ msgid "Depth ratio" +#~ msgstr "Rapport de profondeur" + +#~ msgid "Prizm" +#~ msgstr "Prisme" + +#~ msgid "connector is out of cut contour" +#~ msgstr "connecteur est hors du contour de la coupe" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "connecteurs sont hors du contour de la coupe" + +#~ msgid "connector is out of object" +#~ msgstr "connecteur est hors de l'objet" + +#~ msgid "connectors is out of object" +#~ msgstr "connecteurs sont hors de l'objet" + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "État non valide. \n" +#~ "Aucune pièce n'est sélectionnée pour être conservée après la découpe" + +#~ msgid "Recalculate" +#~ msgstr "Recalculer" + +#~ msgid "" +#~ "Orca recalculates your flushing volumes everytime the filament colors " +#~ "change. You can change this behavior in Preferences." +#~ msgstr "" +#~ "Orca recalcule vos volumes de purge à chaque fois que les couleurs des " +#~ "filaments changent. Vous pouvez modifier ce comportement dans les " +#~ "préférences." + +#~ msgid "" +#~ "The printer timed out while receiving a print job. Please check if the " +#~ "network is functioning properly and send the print again." +#~ msgstr "" +#~ "L'imprimante s'est arrêtée pendant la réception d'un travail " +#~ "d'impression. Vérifiez que le réseau fonctionne correctement et relancez " +#~ "l'impression." + +#~ msgid "The beginning of the vendor can not be a number. Please re-enter." +#~ msgstr "" +#~ "Le début du nom du vendeur ne peut pas être un numéro. Veuillez les " +#~ "saisir à nouveau." + +#~ msgid "Edit Text" +#~ msgstr "Modifier texte" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Erreur! Impossible de créer le fil !" + +#~ msgid "Exception" +#~ msgstr "Anomalie" + +#~ msgid "Choose SLA archive:" +#~ msgstr "Choisissez l'archive SLA:" + +#~ msgid "Import file" +#~ msgstr "Importer un fichier" + +#~ msgid "Import model and profile" +#~ msgstr "Importer modèle et profil" + +#~ msgid "Import profile only" +#~ msgstr "Importer le profil uniquement" + +#~ msgid "Import model only" +#~ msgstr "Importer le modèle uniquement" + +#~ msgid "Accurate" +#~ msgstr "Précis" + +#~ msgid "Balanced" +#~ msgstr "Équilibré" + +#~ msgid "Quick" +#~ msgstr "Rapide" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Décrire combien de temps la buse se déplacera le long du dernier chemin " +#~ "lors de la rétraction" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Simplifier le modèle\n" +#~ "Saviez-vous que vous pouvez réduire le nombre de triangles dans un " +#~ "maillage à l'aide de la fonction Simplifier le maillage ? Cliquez avec le " +#~ "bouton droit sur le modèle et sélectionnez Simplifier le modèle. Pour en " +#~ "savoir plus, consultez la documentation." + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "Soustraire une partie\n" +#~ "Saviez-vous que vous pouvez soustraire un maillage d'un autre à l'aide du " +#~ "modificateur de partie négative ? De cette façon, vous pouvez, par " +#~ "exemple, créer des trous facilement redimensionnables directement dans " +#~ "Snapmaker Orca. Plus d'informations dans la documentation." + +#~ msgid "Filling bed " +#~ msgstr "Remplir le plateau" + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "" +#~ "Le motif de remplissage %1% ne prend pas en charge une densité de 100%%." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "Passer à un motif rectiligne ?\n" +#~ "Oui - Passez automatiquement au modèle rectiligne\n" +#~ "Non - Réinitialise automatiquement la densité à la valeur par défaut" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "" +#~ "Veuillez chauffer la buse à plus de 170 degrés avant de charger le " +#~ "filament." + +#~ msgid "Show g-code window" +#~ msgstr "Afficher la fenêtre G-code" + +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "Si activé, la fenêtre avec les commandes G-code sera affichée." + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "Densité du remplissage interne, 100%% signifie plein." + +#~ msgid "Tree support wall loops" +#~ msgstr "Nombre de parois support arborescent" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "" +#~ "Ce paramètre spécifie le nombre de murs autour du support arborescent" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " ne fonctionne pas à une densité de 100%% " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Maj + Entrée" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Outil-Positionner sur une face" + +#~ msgid "Export as STL" +#~ msgstr "Exporter en tant que STL" + +#~ msgid "Check cloud service status" +#~ msgstr "Vérifiez l'état du service cloud" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Veuillez saisir une valeur valide (K entre 0 et 0,5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "" +#~ "Veuillez saisir une valeur valide (K entre 0 et 0,5, N entre 0,6 et 2,0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Exporter tous les objets au format STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "" +#~ "Le 3mf n'est pas compatible, chargement des données géométriques " +#~ "uniquement!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Fichier 3mf incompatible" + +#~ msgid "Add/Remove printers" +#~ msgstr "Ajouter/Supprimer des imprimantes" + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s n'est pas pris en charge par l'AMS." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Ne me rappelez plus cette version." + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Erreur : l'adresse IP ou le code d'accès ne sont pas corrects" + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Ordre de mur intérieur/extérieur/remplissage" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "" +#~ "Séquence d'impression du mur intérieur, du mur extérieur et du " +#~ "remplissage." + +#~ msgid "inner/outer/infill" +#~ msgstr "intérieur/extérieur/remplissage" + +#~ msgid "outer/inner/infill" +#~ msgstr "extérieur/intérieur/remplissage" + +#~ msgid "infill/inner/outer" +#~ msgstr "remplissage/intérieur/extérieur" + +#~ msgid "infill/outer/inner" +#~ msgstr "remplissage/extérieur/intérieur" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "intérieur-extérieur-intérieur/remplissage" + +#~ msgid "Export 3MF" +#~ msgstr "Exporter 3MF" + +#~ msgid "Export project as 3MF." +#~ msgstr "Exporter le projet au format 3MF." + +#~ msgid "Export slicing data" +#~ msgstr "Exporter les données de tranchage" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Exporter les données de tranchage vers un dossier" + +#~ msgid "Load slicing data" +#~ msgstr "Charger les données de tranchage" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "" +#~ "Charger les données de tranchage mises en cache à partir du répertoire" + +#~ msgid "Slice" +#~ msgstr "Découper" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "" +#~ "Trancher toutes les plaques : 0-toutes, i-plaque i, autres-invalides" + +#~ msgid "Show command help." +#~ msgstr "Afficher l'aide de la commande." + +#~ msgid "UpToDate" +#~ msgstr "À jour" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "" +#~ "Mettez à jour les valeurs de configuration 3mf à la version la plus " +#~ "récente." + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "nombre maximal de triangles par plaque pour le tranchage" + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "temps de tranchage maximal par plaque en secondes" + +#~ msgid "Normative check" +#~ msgstr "Contrôle normatif" + +#~ msgid "Check the normative items." +#~ msgstr "Vérifiez les éléments normatifs." + +#~ msgid "Output Model Info" +#~ msgstr "Information du Modèle de Sortie" + +#~ msgid "Output the model's information." +#~ msgstr "Sortie des informations du modèle." + +#~ msgid "Export Settings" +#~ msgstr "Paramètres d'exportation" + +#~ msgid "Export settings to a file." +#~ msgstr "Exporter les paramètres vers un fichier." + +#~ msgid "Send progress to pipe" +#~ msgstr "Envoyer la progression à la queue" + +#~ msgid "Send progress to pipe." +#~ msgstr "Envoyer la progression à la queue." + +#~ msgid "Arrange Options" +#~ msgstr "Options d'organisation" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Options d'organisation : 0-désactiver, 1-activer, autres-auto" + +#~ msgid "Convert Unit" +#~ msgstr "Convertir l'unité" + +#~ msgid "Convert the units of model" +#~ msgstr "Convertir les unités du modèle" + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Mettre à l'échelle le modèle par un facteur flottant" + +#~ msgid "Load General Settings" +#~ msgstr "Charger les paramètres généraux" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "" +#~ "Charger les paramètres de processus/machine à partir du fichier spécifié" + +#~ msgid "Load Filament Settings" +#~ msgstr "Charger les paramètres de filament" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "" +#~ "Charger les paramètres de filament à partir de la liste de fichiers " +#~ "spécifiée" + +#~ msgid "Skip Objects" +#~ msgstr "Ignorer les Objets" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Ignorer certains objets de cette impression" + +#~ msgid "Output directory" +#~ msgstr "Répertoire de sortie" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Répertoire de sortie des fichiers exportés." + +#~ msgid "Debug level" +#~ msgstr "Niveau de débogage" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Définit le niveau de journalisation du débogage. 0 :fatal, 1 :erreur, 2 :" +#~ "avertissement, 3 :info, 4 :débogage, 5 :trace\n" + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "Opérations dans une scène 3D\n" +#~ "Savez-vous comment contrôler la vue et la sélection des objets/pièces " +#~ "avec la souris et l'écran tactile dans la scène 3D ?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Réparer le Modèle\n" +#~ "Saviez-vous que vous pouvez réparer un modèle 3D corrompu pour éviter de " +#~ "nombreux problèmes de découpage ?" + +#~ msgid "Embeded" +#~ msgstr "Intégré" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "Le fichier de configuration de Snapmaker Orca est peut-être corrompu et ne " +#~ "peut pas être analysé. Veuillez supprimer le fichier et réessayer." + +#~ msgid "Online Models" +#~ msgstr "Modèles en ligne" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "" +#~ "Afficher les modèles en ligne sélectionnés par le staff sur la page " +#~ "d'accueil" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "" +#~ "La vitesse d'impression minimale lors du ralentissement pour le " +#~ "refroidissement" + +#~ msgid "" +#~ "There are currently no identical spare consumables available, and " +#~ "automatic replenishment is currently not possible. \n" +#~ "(Currently supporting automatic supply of consumables with the same " +#~ "brand, material type, and color)" +#~ msgstr "" +#~ "Il n'existe actuellement aucun consommable de rechange identique, et le " +#~ "réapprovisionnement automatique n'est actuellement pas possible. \n" +#~ "(Prise en charge actuelle de la fourniture automatique de consommables de " +#~ "la même marque, du même type de matériau et de la même couleur)" + +#~ msgid "Invalid nozzle diameter" +#~ msgstr "Diamètre de la buse non valide" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "La température du plateau dépasse la température de vitrification du " +#~ "filament. Veuillez ouvrir la porte avant de l'imprimante avant " +#~ "l'impression pour éviter le bouchage de la buse." + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Température de vitrification" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "Le matériau devient mou à cette température. Ainsi, le lit chauffant ne " +#~ "peut pas être plus chaud que cette température" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "" +#~ "Activez cette option si la machine est équipée d'un ventilateur de " +#~ "refroidissement de pièce auxiliaire" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "Vitesse du ventilateur de refroidissement de la partie auxiliaire. Le " +#~ "ventilateur auxiliaire fonctionnera à cette vitesse pendant l'impression, " +#~ "à l'exception des premières couches qui sont définies par aucune couche " +#~ "de refroidissement" + +#~ msgid "" +#~ "Bed temperature for layers except the initial one. Value 0 means the " +#~ "filament does not support to print on the High Temp" +#~ msgstr "" +#~ "Température du plateau de toutes les couches à l'exception de la " +#~ "première. La valeur 0 signifie que le filament ne prend pas en charge " +#~ "l'impression sur le plateau High Temperature" + +#~ msgid "" +#~ "Filter out gaps smaller than the threshold specified. This setting won't " +#~ "affect top/bottom layers" +#~ msgstr "" +#~ "Filtrer les petits espaces au seuil spécifié. Ce paramètre n’affectera " +#~ "pas les couches supérieures/inférieures" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "" +#~ "Les couches vides situées en bas sont remplacées par les couches normales " +#~ "les plus proches." + +#~ msgid "The model has too many empty layers." +#~ msgstr "Le modèle a trop de couches vides." + +#~ msgid "Cali" +#~ msgstr "Calib." + +#~ msgid "Calibration of extrusion" +#~ msgstr "Calibration de l'extrusion" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Poussez le nouveau filament dans l'extrudeur" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "La température du plateau des autres couches est inférieure à la " +#~ "température du plateau de la couche initiale de plus de %d degrés. Cela " +#~ "peut entraîner la séparation du modèle du plateau pendant l'impression" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "La température du lit est supérieure à la température de vitrification de " +#~ "ce filament.\n" +#~ "Cela peut provoquer un blocage de la buse et une défaillance de " +#~ "l'impression.\n" +#~ "Veuillez laisser l'imprimante ouverte pendant le processus d'impression " +#~ "afin de garantir la circulation de l'air ou de réduire la température du " +#~ "plateau." + +#~ msgid "Total Time Estimation" +#~ msgstr "Estimation du temps total" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Identification de la fréquence de résonance" + +#~ msgid "Immediately score" +#~ msgstr "Noter immédiatement" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "Veuillez attribuer une note à votre modèle Bambu Market préféré." + +#~ msgid "Score" +#~ msgstr "Note" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Plaque Haute Température Bambu" + +#~ msgid "Can't connect to the printer" +#~ msgstr "Impossible de se connecter à l'imprimante" + +#~ msgid "Recommended temperature range" +#~ msgstr "Plage de température recommandée" + +#~ msgid "High Temp Plate" +#~ msgstr "Plaque haute température" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "Il s'agit de la température du plateau lorsque le plateau haute " +#~ "température (\"Cool plate\") est installé. Une valeur à 0 signifie que ce " +#~ "filament ne peut pas être imprimé sur le plateau haute température." + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Épaisseur du support interne du pont" + +#, fuzzy, c-format, boost-format +#~ msgid "" +#~ "Klipper's max_accel_to_decel will be adjusted to this % of acceleration" +#~ msgstr "" +#~ "Le paramètre max_accel_to_decel de Klipper sera ajusté à ce pourcentage " +#~ "d’accélération" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Style et forme du support. Pour un support normal, la projection des " +#~ "supports sur une grille régulière créera des supports plus stables (par " +#~ "défaut), tandis que des tours de support bien ajustées permettront " +#~ "d'économiser du matériau et de réduire les cicatrices sur les objets.\n" +#~ "Pour les supports Arborescent, le style mince fusionnera les branches de " +#~ "manière plus agressive et économisera beaucoup de matière (par défaut), " +#~ "tandis que le style hybride créera une structure similaire à celle d'un " +#~ "support normal placé sous de grands surplombs plats." + +#~ msgid "Target chamber temperature" +#~ msgstr "Température cible de la chambre" + +#~ msgid "Bed temperature difference" +#~ msgstr "Différence de température du lit" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "Il n'est pas recommandé que la température du plateau des autres couches " +#~ "soit inférieure à celle de la première couche d'un niveau supérieur à ce " +#~ "seuil. Une température de base trop basse de l'autre couche peut " +#~ "provoquer le détachement du modèle." + +#~ msgid "Orient the model" +#~ msgstr "Orienter le modèle" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 0 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Veuillez saisir des valeurs valides :\n" +#~ "Début > 0 intervalle >= 0\n" +#~ "Fin > Début + Intervalle)" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 10 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Veuillez saisir des valeurs valides :\n" +#~ "Début > 10 intervalles >= 0\n" +#~ "Fin > Début + Intervalle)" diff --git a/localization/i18n/hu/Snapmaker_Orca_hu.po b/localization/i18n/hu/Snapmaker_Orca_hu.po new file mode 100644 index 0000000000..cd0c6f0372 --- /dev/null +++ b/localization/i18n/hu/Snapmaker_Orca_hu.po @@ -0,0 +1,16683 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"Language: hu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n==1) ? 0 : 1;\n" +"X-Generator: Localazy (https://localazy.com)\n" + +msgid "Supports Painting" +msgstr "Támaszok festése" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Egérgörgő" + +msgid "Section view" +msgstr "Keresztmetszet nézet" + +msgid "Reset direction" +msgstr "Irány visszaállítása" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Egérgörgő" + +msgid "Pen size" +msgstr "Tollméret" + +msgid "Left mouse button" +msgstr "Bal egérgomb" + +msgid "Enforce supports" +msgstr "Támaszok kényszerítése" + +msgid "Right mouse button" +msgstr "Jobb egérgomb" + +msgid "Block supports" +msgstr "Támaszok blokkolása" + +msgid "Shift + Left mouse button" +msgstr "Shift + bal egérgomb" + +msgid "Erase" +msgstr "Törlés" + +msgid "Erase all painting" +msgstr "Minden festés törlése" + +msgid "Highlight overhang areas" +msgstr "Túlnyúló területek kiemelése" + +msgid "Gap fill" +msgstr "Hézagok kitöltése" + +msgid "Perform" +msgstr "Alkalmaz" + +msgid "Gap area" +msgstr "Rés területe" + +msgid "Tool type" +msgstr "Eszköz típusa" + +msgid "Smart fill angle" +msgstr "Okos kitöltési szög" + +msgid "On overhangs only" +msgstr "Csak túlnyúlásokon" + +msgid "Auto support threshold angle: " +msgstr "Automatikus támasz szögének határértéke: " + +msgid "Circle" +msgstr "Kör" + +msgid "Sphere" +msgstr "Gömb" + +msgid "Fill" +msgstr "Kitöltés" + +msgid "Gap Fill" +msgstr "Hézagok kitöltése" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Csak a(z) „%1%“ által kijelölt felületeken történik festés" + +msgid "Highlight faces according to overhang angle." +msgstr "Felületek kiemelése a túlnyúlási szögnek megfelelően." + +msgid "No auto support" +msgstr "Nincs automatikus támasz" + +msgid "Support Generated" +msgstr "Támasz legenerálva" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo- Felület Tárgyasztalra Illesztése" + +msgid "Lay on face" +msgstr "Felületre fektetés" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"A filamentek száma meghaladja a festés által támogatott maximális " +"mennyiséget. Csak az első %1% filament lesz használható a festéshez." + +msgid "Color Painting" +msgstr "Színfestés" + +msgid "Pen shape" +msgstr "Toll formája" + +msgid "Paint" +msgstr "Festés" + +msgid "Key 1~9" +msgstr "Számgombok 1-9" + +msgid "Choose filament" +msgstr "Válassz filamentet" + +msgid "Edge detection" +msgstr "Élek felismerése" + +msgid "Triangles" +msgstr "Háromszögek" + +msgid "Filaments" +msgstr "Filamentek" + +msgid "Brush" +msgstr "Ecset" + +msgid "Smart fill" +msgstr "Okos kitöltés" + +msgid "Bucket fill" +msgstr "Vödör kitöltés" + +msgid "Height range" +msgstr "Magasságtartomány" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "Drótváz-megjelenítés váltása" + +msgid "Shortcut Key " +msgstr "Gyorsgomb " + +msgid "Triangle" +msgstr "Háromszög" + +msgid "Height Range" +msgstr "Magasságtartomány" + +msgid "Vertical" +msgstr "Függőleges" + +msgid "Horizontal" +msgstr "Vízszintes" + +msgid "Remove painted color" +msgstr "Festett szín eltávolítása" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "A következővel festve: %1% filament" + +msgid "Move" +msgstr "Mozgatás" + +msgid "Gizmo-Move" +msgstr "Gizmo-Mozgatása" + +msgid "Rotate" +msgstr "Forgatás" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-Forgatása" + +msgid "Optimize orientation" +msgstr "Orientáció optimalizálása" + +msgid "Apply" +msgstr "Alkalmaz" + +msgid "Scale" +msgstr "Átméretezés" + +msgid "Gizmo-Scale" +msgstr "Gizmo-Skála" + +msgid "Error: Please close all toolbar menus first" +msgstr "Hiba: Kérjük, először zárd be az összes eszköztár menüt" + +msgid "in" +msgstr "in" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Pozíció" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Forgatás" + +msgid "Scale ratios" +msgstr "Méretarányok" + +msgid "Object Operations" +msgstr "Objektum műveletek" + +msgid "Volume Operations" +msgstr "Térfogat műveletek" + +msgid "Translate" +msgstr "Fordítás" + +msgid "Group Operations" +msgstr "Csoportos műveletek" + +msgid "Set Position" +msgstr "Pozíció beállítása" + +msgid "Set Orientation" +msgstr "Orientáció beállítása" + +msgid "Set Scale" +msgstr "Méretarány beállítása" + +msgid "Reset Position" +msgstr "Pozíció visszaállítása" + +msgid "Reset Rotation" +msgstr "Forgatás visszaállítása" + +msgid "World coordinates" +msgstr "Világkoordináták" + +msgid "Object coordinates" +msgstr "" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Méret" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "egységes méretarány" + +msgid "Planar" +msgstr "Sík" + +msgid "Dovetail" +msgstr "Fecskefarok" + +msgid "Auto" +msgstr "Auto" + +msgid "Manual" +msgstr "Manuális" + +msgid "Plug" +msgstr "Plug" + +msgid "Dowel" +msgstr "Dowel" + +msgid "Snap" +msgstr "Csatlakoztatás" + +msgid "Prism" +msgstr "" + +msgid "Frustum" +msgstr "Frustum" + +msgid "Square" +msgstr "Square" + +msgid "Hexagon" +msgstr "Hexagon" + +msgid "Keep orientation" +msgstr "Tájolás megtartása" + +msgid "Place on cut" +msgstr "Place on cut" + +msgid "Flip upside down" +msgstr "" + +msgid "Connectors" +msgstr "Connectors" + +msgid "Type" +msgstr "Típus" + +msgid "Style" +msgstr "Stílus" + +msgid "Shape" +msgstr "Forma" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Mélység" + +msgid "Groove" +msgstr "Horony" + +msgid "Width" +msgstr "Szélesség" + +msgid "Flap Angle" +msgstr "Fedélszög" + +msgid "Groove Angle" +msgstr "Horonyszög" + +msgid "Part" +msgstr "Tárgy" + +msgid "Object" +msgstr "Objektum" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" + +msgid "Move cut plane" +msgstr "" + +msgid "Mode" +msgstr "Mód" + +msgid "Change cut mode" +msgstr "" + +msgid "Tolerance" +msgstr "Tolerance" + +msgid "Drag" +msgstr "Drag" + +msgid "Draw cut line" +msgstr "" + +msgid "Left click" +msgstr "Left click" + +msgid "Add connector" +msgstr "Add connector" + +msgid "Right click" +msgstr "Right click" + +msgid "Remove connector" +msgstr "Remove connector" + +msgid "Move connector" +msgstr "Move connector" + +msgid "Add connector to selection" +msgstr "Add connector to selection" + +msgid "Remove connector from selection" +msgstr "Remove connector from selection" + +msgid "Select all connectors" +msgstr "Select all connectors" + +msgid "Cut" +msgstr "Vágás" + +msgid "Rotate cut plane" +msgstr "" + +msgid "Remove connectors" +msgstr "Remove connectors" + +msgid "Bulge" +msgstr "Kidudorodás" + +msgid "Bulge proportion related to radius" +msgstr "" + +msgid "Space" +msgstr "Szóköz" + +msgid "Space proportion related to radius" +msgstr "" + +msgid "Confirm connectors" +msgstr "Confirm connectors" + +msgid "Cancel" +msgstr "Mégse" + +msgid "Build Volume" +msgstr "" + +msgid "Flip cut plane" +msgstr "" + +msgid "Groove change" +msgstr "" + +msgid "Reset" +msgstr "Visszaállítás" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "" + +msgid "Cut position" +msgstr "" + +msgid "Reset cutting plane" +msgstr "" + +msgid "Edit connectors" +msgstr "Edit connectors" + +msgid "Add connectors" +msgstr "Add connectors" + +msgid "Reset cut" +msgstr "" + +msgid "Reset cutting plane and remove connectors" +msgstr "" + +msgid "Upper part" +msgstr "Upper part" + +msgid "Lower part" +msgstr "Lower part" + +msgid "Keep" +msgstr "Keep" + +msgid "Flip" +msgstr "Flip" + +msgid "After cut" +msgstr "After cut" + +msgid "Cut to parts" +msgstr "Részekre darabolás" + +msgid "Perform cut" +msgstr "Vágás" + +msgid "Warning" +msgstr "Figyelmeztetés" + +msgid "Invalid connectors detected" +msgstr "Invalid connectors detected" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "" +msgstr[1] "" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "" +msgstr[1] "" + +msgid "Some connectors are overlapped" +msgstr "Some connectors are overlapped" + +msgid "Select at least one object to keep after cutting." +msgstr "" + +msgid "Cut plane is placed out of object" +msgstr "" + +msgid "Cut plane with groove is invalid" +msgstr "" + +msgid "Connector" +msgstr "Connector" + +msgid "Cut by Plane" +msgstr "Vágás Síkkal" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "A vágás után hibás élek keletkeztek, szeretnéd most javítani őket?" + +msgid "Repairing model object" +msgstr "Modell javítása" + +msgid "Cut by line" +msgstr "" + +msgid "Delete connector" +msgstr "" + +msgid "Mesh name" +msgstr "Háló neve" + +msgid "Detail level" +msgstr "Részletesség szintje" + +msgid "Decimate ratio" +msgstr "Csökkentési arány" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"A több mint 1M háromszöget tartalmazó '%1%' modell feldolgozása lehet, hogy " +"lassú lesz. Erősen ajánlott a modell leegyszerűsítése." + +msgid "Simplify model" +msgstr "Modell egyszerűsítése" + +msgid "Simplify" +msgstr "Egyszerűsítés" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"Az egyszerűsítés jelenleg csak akkor engedélyezett, ha egyetlen tárgy van " +"kiválasztva" + +msgid "Error" +msgstr "Hiba" + +msgid "Extra high" +msgstr "Extra magas" + +msgid "High" +msgstr "Magas" + +msgid "Medium" +msgstr "Közepes" + +msgid "Low" +msgstr "Alacsony" + +msgid "Extra low" +msgstr "Extra alacsony" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d háromszög" + +msgid "Show wireframe" +msgstr "Drótváz megjelenítése" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "Nem használható folyamat előnézetben." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "" +"A művelet törlése már folyamatban van. Kérjük, várj néhány másodpercet." + +msgid "Face recognition" +msgstr "Arcfelismerés" + +msgid "Perform Recognition" +msgstr "Felismerés" + +msgid "Brush size" +msgstr "Ecset mérete" + +msgid "Brush shape" +msgstr "Ecset alakja" + +msgid "Enforce seam" +msgstr "Varrat kényszerítése" + +msgid "Block seam" +msgstr "Varrat blokkolása" + +msgid "Seam painting" +msgstr "Varratfestés" + +msgid "Remove selection" +msgstr "Kijelölés törlése" + +msgid "Entering Seam painting" +msgstr "Belépés varratfestő módba" + +msgid "Leaving Seam painting" +msgstr "Kilépés varratfestő módból" + +msgid "Paint-on seam editing" +msgstr "Festett varrat szerkesztése" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Betűtípus" + +msgid "Thickness" +msgstr "Vastagság" + +msgid "Text Gap" +msgstr "Text Gap" + +msgid "Angle" +msgstr "Angle" + +msgid "" +"Embeded\n" +"depth" +msgstr "Embedded depth" + +msgid "Input text" +msgstr "Szöveg" + +msgid "Surface" +msgstr "Surface" + +msgid "Horizontal text" +msgstr "Horizontal text" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Mouse move up or down" + +msgid "Rotate text" +msgstr "Rotate text" + +msgid "Text shape" +msgstr "Szöveg alakja" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "" + +msgid "Set Mirror" +msgstr "Tükrözés beállítása" + +msgid "Embossed text" +msgstr "" + +msgid "Enter emboss gizmo" +msgstr "" + +msgid "Leave emboss gizmo" +msgstr "" + +msgid "Embossing actions" +msgstr "" + +msgid "Emboss" +msgstr "" + +msgid "NORMAL" +msgstr "" + +msgid "SMALL" +msgstr "" + +msgid "ITALIC" +msgstr "" + +msgid "SWISS" +msgstr "" + +msgid "MODERN" +msgstr "" + +msgid "First font" +msgstr "" + +msgid "Default font" +msgstr "Az alapértelmezett nyomtató" + +msgid "Advanced" +msgstr "Haladó" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" + +msgid "Embossed text cannot contain only white spaces." +msgstr "" + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" + +msgid "Text input doesn't show font skew." +msgstr "" + +msgid "Text input doesn't show font boldness." +msgstr "" + +msgid "Text input doesn't show gap between lines." +msgstr "" + +msgid "Too tall, diminished font height inside text input." +msgstr "" + +msgid "Too small, enlarged font height inside text input." +msgstr "" + +msgid "Text doesn't show current horizontal alignment." +msgstr "" + +msgid "Revert font changes." +msgstr "" + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "" + +msgid "Operation" +msgstr "" + +msgid "Join" +msgstr "" + +msgid "Click to change text into object part." +msgstr "" + +msgid "You can't change a type of the last solid part of the object." +msgstr "Az objektum utolsó tömör részének típusát nem lehet megváltoztatni." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Vágás" + +msgid "Click to change part type into negative volume." +msgstr "" + +msgid "Modifier" +msgstr "Módosító" + +msgid "Click to change part type into modifier." +msgstr "" + +msgid "Change Text Type" +msgstr "" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "" + +msgid "Name can't be empty." +msgstr "" + +msgid "Name has to be unique." +msgstr "" + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "" + +msgid "Rename current style." +msgstr "" + +msgid "Can't rename temporary style." +msgstr "" + +msgid "First Add style to list." +msgstr "" + +#, boost-format +msgid "Save %1% style" +msgstr "" + +msgid "No changes to save." +msgstr "" + +msgid "New name of style" +msgstr "" + +msgid "Save as new style" +msgstr "" + +msgid "Only valid font can be added to style." +msgstr "" + +msgid "Add style to my list." +msgstr "" + +msgid "Save as new style." +msgstr "" + +msgid "Remove style" +msgstr "" + +msgid "Can't remove the last existing style." +msgstr "" + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "" + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "" + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "" + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" + +msgid "Not valid style." +msgstr "" + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "" + +msgid "Unset italic" +msgstr "" + +msgid "Set italic" +msgstr "" + +msgid "Unset bold" +msgstr "" + +msgid "Set bold" +msgstr "" + +msgid "Revert text size." +msgstr "" + +msgid "Revert embossed depth." +msgstr "" + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" + +msgid "Revert using of model surface." +msgstr "" + +msgid "Revert Transformation per glyph." +msgstr "" + +msgid "Set global orientation for whole text." +msgstr "" + +msgid "Set position and orientation per glyph." +msgstr "" + +msgctxt "Alignment" +msgid "Left" +msgstr "Bal" + +msgctxt "Alignment" +msgid "Center" +msgstr "Közép" + +msgctxt "Alignment" +msgid "Right" +msgstr "Jobb" + +msgctxt "Alignment" +msgid "Top" +msgstr "Felső" + +msgctxt "Alignment" +msgid "Middle" +msgstr "" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Alsó" + +msgid "Revert alignment." +msgstr "" + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "" + +msgid "Revert gap between characters" +msgstr "" + +msgid "Distance between characters" +msgstr "" + +msgid "Revert gap between lines" +msgstr "" + +msgid "Distance between lines" +msgstr "" + +msgid "Undo boldness" +msgstr "" + +msgid "Tiny / Wide glyphs" +msgstr "" + +msgid "Undo letter's skew" +msgstr "" + +msgid "Italic strength ratio" +msgstr "" + +msgid "Undo translation" +msgstr "" + +msgid "Distance of the center of the text to the model surface." +msgstr "" + +msgid "Undo rotation" +msgstr "" + +msgid "Rotate text Clock-wise." +msgstr "" + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Select from True Type Collection." +msgstr "" + +msgid "Set text to face camera" +msgstr "" + +msgid "Orient the text towards the camera." +msgstr "" + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" + +msgid "No symbol" +msgstr "" + +msgid "Loading" +msgstr "Betöltés" + +msgid "In queue" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Magasság" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Balra igazítsd" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "" + +msgid "Enter SVG gizmo" +msgstr "" + +msgid "Leave SVG gizmo" +msgstr "" + +msgid "SVG actions" +msgstr "" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "" + +msgid "Undefined fill type" +msgstr "" + +msgid "Linear gradient" +msgstr "" + +msgid "Radial gradient" +msgstr "" + +msgid "Open filled path" +msgstr "" + +msgid "Undefined stroke type" +msgstr "" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "" + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "" + +msgid "Face the camera" +msgstr "" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "" + +msgid "Reload SVG file from disk." +msgstr "" + +msgid "Change file" +msgstr "" + +msgid "Change to another .svg file" +msgstr "" + +msgid "Forget the file path" +msgstr "" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "" + +msgid "Save as" +msgstr "Mentés Másként" + +msgid "Save SVG file" +msgstr "" + +msgid "Save as '.svg' file" +msgstr "" + +msgid "Size in emboss direction." +msgstr "" + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "" + +msgid "Width of SVG." +msgstr "" + +msgid "Height of SVG." +msgstr "" + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "" + +msgid "Reset scale" +msgstr "Skála visszaállítása" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "" + +msgid "Reset distance" +msgstr "" + +msgid "Reset rotation" +msgstr "Forgatás visszaállítása" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" + +msgid "Mirror vertically" +msgstr "Tükrözés függőlegesen" + +msgid "Mirror horizontally" +msgstr "Tükrözés vízszintesen" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Tükrözés" + +msgid "Choose SVG file for emboss:" +msgstr "" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "" + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "" + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "" + +msgid "Vertex" +msgstr "Vertex" + +msgid "Edge" +msgstr "Edge" + +msgid "Plane" +msgstr "Plane" + +msgid "Point on edge" +msgstr "Point on edge" + +msgid "Point on circle" +msgstr "Point on circle" + +msgid "Point on plane" +msgstr "Point on plane" + +msgid "Center of edge" +msgstr "Center of edge" + +msgid "Center of circle" +msgstr "Center of circle" + +msgid "ShiftLeft mouse button" +msgstr "" + +msgid "Select feature" +msgstr "Select feature" + +msgid "Select point" +msgstr "Select point" + +msgid "Delete" +msgstr "Törlés" + +msgid "Restart selection" +msgstr "Restart selection" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "" + +msgid "Measure" +msgstr "Measure" + +msgid "Edit to scale" +msgstr "Edit to scale" + +msgctxt "Verb" +msgid "Scale" +msgstr "Átméretezés" + +msgid "None" +msgstr "Sehol" + +msgid "Diameter" +msgstr "Átmérő" + +msgid "Length" +msgstr "Hossz" + +msgid "Selection" +msgstr "Selection" + +msgid "Copy to clipboard" +msgstr "Másolás a vágólapra" + +msgid "Perpendicular distance" +msgstr "Perpendicular distance" + +msgid "Distance" +msgstr "Distance" + +msgid "Direct distance" +msgstr "Direct distance" + +msgid "Distance XYZ" +msgstr "Distance XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Megjegyzés" + +msgid "Undefined" +msgstr "Definiálatlan" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% lecserélve a következővel: %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" + +msgid "Some values have been replaced. Please check them:" +msgstr "Néhány érték lecserélődött. Kérjük, ellenőrizd őket:" + +msgid "Process" +msgstr "Folyamat" + +msgid "Filament" +msgstr "Filament" + +msgid "Machine" +msgstr "Gép" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"A konfigurációs csomag betöltődött, de néhány értéket nem sikerült " +"felismerni." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"A(z) \"%1%\" konfigurációs csomag betöltődött, de néhány értéket nem " +"sikerült felismerni." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" + +msgid "Fatal error" +msgstr "Súlyos hiba" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" + +msgid "Critical error" +msgstr "Kritikus hiba" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "" + +msgid "Untitled" +msgstr "Névtelen" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Bambu Network bővítmény letöltése" + +msgid "Login information expired. Please login again." +msgstr "A bejelentkezési adatok érvénytelenek. Kérjük, jelentkezz be újra." + +msgid "Incorrect password" +msgstr "Helytelen jelszó" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "A következőhöz való csatlakozás sikertelen: %s! [SN:%s, code=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" + +msgid "WebView2 Runtime" +msgstr "" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Szeretnéd folytatni?" + +msgid "Remember my choice" +msgstr "Emlékezz a választásomra" + +msgid "Loading configuration" +msgstr "Konfiguráció betöltése" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "Kattints az új verzió letöltéséhez az alapértelmezett böngészőben: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "A Snapmaker Orcat frissíteni kell" + +msgid "This is the newest version." +msgstr "Ez a legújabb verzió." + +msgid "Info" +msgstr "Infó" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" + +msgid "Rebuild" +msgstr "Újraindítás" + +msgid "Loading current presets" +msgstr "Jelenlegi beállítások betöltése" + +msgid "Loading a mode view" +msgstr "Mód nézet betöltése" + +msgid "Choose one file (3mf):" +msgstr "Válassz ki egy fájlt (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "" +"Válassz ki egy vagy több fájlt (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Válassz ki egy vagy több fájlt (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "" + +msgid "Choose one file (gcode/3mf):" +msgstr "" + +msgid "Some presets are modified." +msgstr "Néhány beállítás megváltozott." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Megtarthatod az új projekt módosított beállításait, elvetheted őket, vagy " +"elmentheted új beállításokként." + +msgid "User logged out" +msgstr "Felhasználó kijelentkezett" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" +"a projektfájlokkal kapcsolatos műveletek nem engedélyezettek szeletés közben!" + +msgid "Open Project" +msgstr "Projekt megnyitása" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"A Snapmaker Orca ezen verziója túl régi és a legfrissebb verzióra kell " +"frissíteni, mielőtt rendesen használható lenne" + +msgid "Privacy Policy Update" +msgstr "Privacy Policy Update" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"A felhőben tárolt felhasználói beállítások száma elérte a limitet, az " +"újonnan létrehozott felhasználói beállítások csak helyben lesznek tárolva." + +msgid "Sync user presets" +msgstr "Felhasználói beállítások szinkronizálása" + +msgid "Loading user preset" +msgstr "Felhasználói beállítás betöltése" + +msgid "Switching application language" +msgstr "Alkalmazás nyelvének váltása" + +msgid "Select the language" +msgstr "Válaszd ki a nyelvet" + +msgid "Language" +msgstr "Nyelv" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Még folyamatban van a feltöltés" + +msgid "Stop them and continue anyway?" +msgstr "Megállítod és folytatod?" + +msgid "Ongoing uploads" +msgstr "Folyamatban lévő feltöltések" + +msgid "Select a G-code file:" +msgstr "Válassz egy G-code fájlt:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" + +msgid "Import File" +msgstr "Import File" + +msgid "Choose files" +msgstr "Fájlok kiválasztása" + +msgid "New Folder" +msgstr "New Folder" + +msgid "Open" +msgstr "Open" + +msgid "Rename" +msgstr "Átnevezés" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Nem sikerült a Snapmaker Orca GUI inicializálása" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Súlyos hiba, a következő kivételt találtuk: %1%" + +msgid "Quality" +msgstr "Minőség" + +msgid "Shell" +msgstr "Héj" + +msgid "Infill" +msgstr "Kitöltés" + +msgid "Support" +msgstr "Támasz" + +msgid "Flush options" +msgstr "Öblítési lehetőségek" + +msgid "Speed" +msgstr "Sebesség" + +msgid "Strength" +msgstr "Szilárdság" + +msgid "Top Solid Layers" +msgstr "Felső tömör rétegek" + +msgid "Top Minimum Shell Thickness" +msgstr "Minimális fedőréteg vastagság" + +msgid "Bottom Solid Layers" +msgstr "Alsó tömör rétegek" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Alsó minimális héjvastagság" + +msgid "Ironing" +msgstr "Vasalás" + +msgid "Fuzzy Skin" +msgstr "Barázdált felület" + +msgid "Extruders" +msgstr "Extruderek" + +msgid "Extrusion Width" +msgstr "Extrudálási szélesség" + +msgid "Wipe options" +msgstr "Törlés opciók" + +msgid "Bed adhesion" +msgstr "Asztalra tapadás" + +msgid "Add part" +msgstr "Tárgy hozzáadása" + +msgid "Add negative part" +msgstr "Negatív tárgy hozzáadása" + +msgid "Add modifier" +msgstr "Módosító hozzáadása" + +msgid "Add support blocker" +msgstr "Támasz blokkoló hozzáadása" + +msgid "Add support enforcer" +msgstr "Támasz kényszerítő hozzáadása" + +msgid "Add text" +msgstr "" + +msgid "Add negative text" +msgstr "" + +msgid "Add text modifier" +msgstr "" + +msgid "Add SVG part" +msgstr "" + +msgid "Add negative SVG" +msgstr "" + +msgid "Add SVG modifier" +msgstr "" + +msgid "Select settings" +msgstr "Beállítások kiválasztása" + +msgid "Hide" +msgstr "Elrejtés" + +msgid "Show" +msgstr "Megjelenítés" + +msgid "Del" +msgstr "Del" + +msgid "Delete the selected object" +msgstr "Kiválasztott objektum törlése" + +msgid "Load..." +msgstr "Betöltés..." + +msgid "Cube" +msgstr "Kocka" + +msgid "Cylinder" +msgstr "Henger" + +msgid "Cone" +msgstr "Kúp" + +msgid "Disc" +msgstr "Lemez" + +msgid "Torus" +msgstr "Tórusz" + +msgid "Orca Cube" +msgstr "" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "" + +msgid "Voron Cube" +msgstr "" + +msgid "Stanford Bunny" +msgstr "" + +msgid "Orca String Hell" +msgstr "" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" + +msgid "Text" +msgstr "" + +msgid "Height range Modifier" +msgstr "Height Range Modifier" + +msgid "Add settings" +msgstr "Beállítások hozzáadása" + +msgid "Change type" +msgstr "Típus megváltoztatása" + +msgid "Set as an individual object" +msgstr "Beállítás különálló objektumként" + +msgid "Set as individual objects" +msgstr "Beállítás különálló objektumokként" + +msgid "Fill bed with copies" +msgstr "Fill bed with copies" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Fill the remaining area of bed with copies of the selected object" + +msgid "Printable" +msgstr "Nyomtatható" + +msgid "Fix model" +msgstr "Model javítása" + +msgid "Export as one STL" +msgstr "Exportálás egy STL-ként" + +msgid "Export as STLs" +msgstr "Exportálás STL-ként" + +msgid "Reload from disk" +msgstr "Újratöltés lemezről" + +msgid "Reload the selected parts from disk" +msgstr "A kiválasztott tárgyak újratöltése a lemezről" + +msgid "Replace with STL" +msgstr "Lecserélés STL-lel" + +msgid "Replace the selected part with new STL" +msgstr "Lecseréli a kijelölt tárgyat egy új STL-lel" + +msgid "Change filament" +msgstr "Filament csere" + +msgid "Set filament for selected items" +msgstr "Filament beállítása a kiválasztott tárgyakhoz" + +msgid "Default" +msgstr "Alapértelmezett" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filament %d" + +msgid "current" +msgstr "jelenlegi" + +msgid "Scale to build volume" +msgstr "Átméretezés a nyomtatótérhez" + +msgid "Scale an object to fit the build volume" +msgstr "Átméretez egy objektumot, hogy beférjen a nyomtatótérbe" + +msgid "Flush Options" +msgstr "Öblítési lehetőségek" + +msgid "Flush into objects' infill" +msgstr "Öblítés a tárgyak kitöltésébe" + +msgid "Flush into this object" +msgstr "Öblítés ebbe a tárgyba" + +msgid "Flush into objects' support" +msgstr "Öblítés a tárgyak támaszába" + +msgid "Edit in Parameter Table" +msgstr "Szerkesztés a paramétertáblában" + +msgid "Convert from inch" +msgstr "Átváltás hüvelykről" + +msgid "Restore to inch" +msgstr "Visszaállítás hüvelykre" + +msgid "Convert from meter" +msgstr "Átváltás méterről" + +msgid "Restore to meter" +msgstr "Visszaállítás méterre" + +msgid "Assemble" +msgstr "Összeállítás" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Összeállítja a kijelölt objektumot egy több részből álló objektummá" + +msgid "Assemble the selected objects to an object with single part" +msgstr "" +"Összeállítja a kijelölt objektumokat egy egyetlen részből álló objektummá" + +msgid "Mesh boolean" +msgstr "Mesh boolean" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "" +"Olyan modellhálóval kapcsolatos logikai műveletek, mint például az egyesítés " +"és kivonás" + +msgid "Along X axis" +msgstr "X-tengely mentén" + +msgid "Mirror along the X axis" +msgstr "Tükrözés az X-tengely mentén" + +msgid "Along Y axis" +msgstr "Y-tengely mentén" + +msgid "Mirror along the Y axis" +msgstr "Tükrözés az Y-tengely mentén" + +msgid "Along Z axis" +msgstr "Z-tengely mentén" + +msgid "Mirror along the Z axis" +msgstr "Tükrözés a Z-tengely mentén" + +msgid "Mirror object" +msgstr "Objektum tükrözése" + +msgid "Edit text" +msgstr "" + +msgid "Ability to change text, font, size, ..." +msgstr "" + +msgid "Edit SVG" +msgstr "" + +msgid "Change SVG source file, projection, size, ..." +msgstr "" + +msgid "Invalidate cut info" +msgstr "Invalidate cut info" + +msgid "Add Primitive" +msgstr "Primitív hozzáadása" + +msgid "Add Handy models" +msgstr "" + +msgid "Add Models" +msgstr "Modellek hozzáadása" + +msgid "Show Labels" +msgstr "Címkék megjelenítése" + +msgid "To objects" +msgstr "Objektumokra" + +msgid "Split the selected object into multiple objects" +msgstr "Szétválasztja a kijelölt objektumot több objektumra" + +msgid "To parts" +msgstr "Tárgyakra" + +msgid "Split the selected object into multiple parts" +msgstr "Szétválasztja a kijelölt objektumot több tárgyra" + +msgid "Split" +msgstr "Szétválaszt" + +msgid "Split the selected object" +msgstr "Szétválasztja a kijelölt objektumot" + +msgid "Auto orientation" +msgstr "Automatikus orientáció" + +msgid "Auto orient the object to improve print quality." +msgstr "" +"Az objektum automatikus tájolása a nyomtatási minőség javítása érdekében." + +msgid "Select All" +msgstr "Összes kijelölése" + +msgid "select all objects on current plate" +msgstr "az aktuális tálca összes objektumának kijelölése" + +msgid "Delete All" +msgstr "Összes törlése" + +msgid "delete all objects on current plate" +msgstr "az aktuális tálca összes objektumának törlése" + +msgid "Arrange" +msgstr "Elrendezés" + +msgid "arrange current plate" +msgstr "aktuális tálca elrendezése" + +msgid "Reload All" +msgstr "" + +msgid "reload all from disk" +msgstr "" + +msgid "Auto Rotate" +msgstr "Automatikus forgatás" + +msgid "auto rotate current plate" +msgstr "aktuális tálca automatikus forgatása" + +msgid "Delete Plate" +msgstr "Delete Plate" + +msgid "Remove the selected plate" +msgstr "Kiválasztott tálca eltávolítása" + +msgid "Clone" +msgstr "Klónozás" + +msgid "Simplify Model" +msgstr "Modell egyszerűsítése" + +msgid "Center" +msgstr "Közép" + +msgid "Edit Process Settings" +msgstr "Folyamatbeállítások szerkesztése" + +msgid "Edit print parameters for a single object" +msgstr "Nyomtatási paraméterek szerkesztése egy objektumhoz" + +msgid "Change Filament" +msgstr "Filament csere" + +msgid "Set Filament for selected items" +msgstr "Filament beállítása a kiválasztott tárgyakhoz" + +msgid "Unlock" +msgstr "Feloldás" + +msgid "Lock" +msgstr "Lezárás" + +msgid "Edit Plate Name" +msgstr "Tálca nevének szerkesztése" + +msgid "Name" +msgstr "Név" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d hiba megjavítva" +msgstr[1] "%1$d hiba megjavítva" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Hiba: %1$d hibás él." +msgstr[1] "Hiba: %1$d hibás él." + +msgid "Remaining errors" +msgstr "Fennmaradó hibák" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d hibás él" +msgstr[1] "%1$d hibás él" + +msgid "Right click the icon to fix model object" +msgstr "Kattints jobb gombbal az ikonra a modell objektum javításához" + +msgid "Right button click the icon to drop the object settings" +msgstr "Kattints jobb gombbal az ikonra az objektum beállításainak elvetéséhez" + +msgid "Click the icon to reset all settings of the object" +msgstr "Kattints az ikonra az objektum összes beállításának visszaállításához" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Kattints jobb gombbal az ikonra az objektum nyomtatható tulajdonságának " +"elvetéséhez" + +msgid "Click the icon to toggle printable property of the object" +msgstr "" +"Kattints az ikonra az objektum nyomtatható tulajdonságának módosításához" + +msgid "Click the icon to edit support painting of the object" +msgstr "Kattints az ikonra az objektum támasz festésének szerkesztéséhez" + +msgid "Click the icon to edit color painting of the object" +msgstr "Kattints az ikonra az objektum színfestésének szerkesztéséhez" + +msgid "Click the icon to shift this object to the bed" +msgstr "Click the icon to shift this object to the bed" + +msgid "Loading file" +msgstr "Fájl betöltése" + +msgid "Error!" +msgstr "Hiba!" + +msgid "Failed to get the model data in the current file." +msgstr "Nem sikerült beolvasni a modelladatokat az aktuális fájlba." + +msgid "Generic" +msgstr "Általános" + +msgid "Add Modifier" +msgstr "Módosító hozzáadása" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Válts át objektumonkénti beállítási módba a módosító beállításainak " +"szerkesztéséhez." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Válts át objektumonkénti beállítás módba a kiválasztott objektumok " +"folyamatbeállításainak szerkesztéséhez." + +msgid "Delete connector from object which is a part of cut" +msgstr "Delete connector from object which is a part of cut" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Delete solid part from object which is a part of cut" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Delete negative volume from object which is a part of cut" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"To save cut correspondence you can delete all connectors from all related " +"objects." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"This action will break a cut correspondence.\n" +"After that, model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut information first." + +msgid "Delete all connectors" +msgstr "Delete all connectors" + +msgid "Deleting the last solid part is not allowed." +msgstr "Az utolsó szilárd rész törlése nem megengedett." + +msgid "The target object contains only one part and can not be splited." +msgstr "" +"A kijelölt objektum csak egy tárgyat tartalmaz, ezért nem lehet tovább " +"bontani." + +msgid "Assembly" +msgstr "Összeállítás" + +msgid "Cut Connectors information" +msgstr "Cut Connectors information" + +msgid "Object manipulation" +msgstr "Object manipulation" + +msgid "Group manipulation" +msgstr "Group manipulation" + +msgid "Object Settings to modify" +msgstr "Object Settings to Modify" + +msgid "Part Settings to modify" +msgstr "Part Settings to Modify" + +msgid "Layer range Settings to modify" +msgstr "Layer Range Settings to Modify" + +msgid "Part manipulation" +msgstr "Part manipulation" + +msgid "Instance manipulation" +msgstr "Instance manipulation" + +msgid "Height ranges" +msgstr "Height ranges" + +msgid "Settings for height range" +msgstr "Settings for height range" + +msgid "Layer" +msgstr "Réteg" + +msgid "Selection conflicts" +msgstr "Kijelölési ütközések" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Ha az első kiválasztott elem egy objektum, akkor a másodiknak is objektumnak " +"kell lennie." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Ha az első kiválasztott elem egy tárgy, akkor a másodiknak is tárgynak kell " +"lennie." + +msgid "The type of the last solid object part is not to be changed." +msgstr "Az utolsó tömör objektumrész típusa nem módosítható." + +msgid "Negative Part" +msgstr "Negatív tárgy" + +msgid "Support Blocker" +msgstr "Támasz blokkoló" + +msgid "Support Enforcer" +msgstr "Támasz kényszerítő" + +msgid "Type:" +msgstr "Típus:" + +msgid "Choose part type" +msgstr "Alkatrésztípus kiválasztása" + +msgid "Enter new name" +msgstr "Adj meg egy új nevet" + +msgid "Renaming" +msgstr "Átnevezés" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "A következő modell sikeresen megjavítva" +msgstr[1] "A következő modellek sikeresen megjavítva" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Nem sikerült megjavítani a következő modellt" +msgstr[1] "Nem sikerült megjavítani a következő modelleket" + +msgid "Repairing was canceled" +msgstr "A javítás meg lett szakítva" + +msgid "Additional process preset" +msgstr "További folyamatbeállítások" + +msgid "Remove parameter" +msgstr "Paraméter eltávolítása" + +msgid "to" +msgstr "eddig" + +msgid "Remove height range" +msgstr "Remove height range" + +msgid "Add height range" +msgstr "Add height range" + +msgid "Invalid numeric." +msgstr "Érvénytelen számjegy." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"egy cellát csak az ugyanabban az oszlopban lévő egy vagy több cellába lehet " +"másolni" + +msgid "multiple cells copy is not supported" +msgstr "a több cellás másolás nem támogatott" + +msgid "Outside" +msgstr "Kívül" + +msgid "Layer height" +msgstr "Rétegmagasság" + +msgid "Wall loops" +msgstr "Falak száma" + +msgid "Infill density(%)" +msgstr "Kitöltési sűrűség (%)" + +msgid "Auto Brim" +msgstr "Automatikus perem" + +msgid "Mouse ear" +msgstr "" + +msgid "Outer brim only" +msgstr "Outer brim only" + +msgid "Inner brim only" +msgstr "Inner brim only" + +msgid "Outer and inner brim" +msgstr "Outer and inner brim" + +msgid "No-brim" +msgstr "Nincs perem" + +msgid "Outer wall speed" +msgstr "Külső fal sebessége" + +msgid "Plate" +msgstr "Tálca" + +msgid "Brim" +msgstr "Perem" + +msgid "Object/Part Setting" +msgstr "Objektum/tárgy beállítások" + +msgid "Reset parameter" +msgstr "Paraméter visszaállítása" + +msgid "Multicolor Print" +msgstr "Többszínű nyomtatás" + +msgid "Line Type" +msgstr "Vonaltípus" + +msgid "More" +msgstr "Több" + +msgid "Open Preferences." +msgstr "Beállítások megnyitása" + +msgid "Open next tip." +msgstr "Következő tipp megnyitása" + +msgid "Open Documentation in web browser." +msgstr "Dokumentáció megnyitása webböngészőben" + +msgid "Color" +msgstr "Szín" + +msgid "Pause" +msgstr "Szünet" + +msgid "Template" +msgstr "Sablon" + +msgid "Custom" +msgstr "Egyéni" + +msgid "Pause:" +msgstr "Pause:" + +msgid "Custom Template:" +msgstr "Custom Template:" + +msgid "Custom G-code:" +msgstr "Custom G-code:" + +msgid "Custom G-code" +msgstr "Egyedi G-kód" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Add meg az aktuális rétegnél használandó egyedi G-kódot:" + +msgid "Jump to Layer" +msgstr "Ugrás a rétegre" + +msgid "Please enter the layer number" +msgstr "Kérjük, add meg a réteg számát." + +msgid "Add Pause" +msgstr "Szünet hozzáadása" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Insert a pause command at the beginning of this layer." + +msgid "Add Custom G-code" +msgstr "Egyedi G-kód hozzáadása" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Insert custom G-code at the beginning of this layer." + +msgid "Add Custom Template" +msgstr "Egyéni sablon hozzáadása" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Insert template custom G-code at the beginning of this layer." + +msgid "Filament " +msgstr "Filament " + +msgid "Change filament at the beginning of this layer." +msgstr "Change filament at the beginning of this layer." + +msgid "Delete Pause" +msgstr "Szünet törlése" + +msgid "Delete Custom Template" +msgstr "Delete Custom Template" + +msgid "Edit Custom G-code" +msgstr "Edit Custom G-code" + +msgid "Delete Custom G-code" +msgstr "Delete Custom G-code" + +msgid "Delete Filament Change" +msgstr "Delete Filament Change" + +msgid "No printer" +msgstr "Nincs nyomtató" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Nem sikerült csatlakozni a szerverhez" + +msgid "Check the status of current system services" +msgstr "Check the status of current system services" + +msgid "code" +msgstr "code" + +msgid "Failed to connect to cloud service" +msgstr "Failed to connect to cloud service" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "Please click on the hyperlink above to view the cloud service status" + +msgid "Failed to connect to the printer" +msgstr "Nem sikerült csatlakozni a nyomtatóhoz" + +msgid "Connection to printer failed" +msgstr "Connection to printer failed" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Please check the network connection of the printer and Orca." + +msgid "Connecting..." +msgstr "Csatlakozás..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Üres" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Auto Refill" + +msgid "AMS not connected" +msgstr "Az AMS nincs csatlakoztatva" + +msgid "Load" +msgstr "Load" + +msgid "Unload" +msgstr "Kitöltés" + +msgid "Ext Spool" +msgstr "Kül. tekercs" + +msgid "Tips" +msgstr "Tippek" + +msgid "Guide" +msgstr "Útmutató" + +msgid "Retry" +msgstr "Újra" + +msgid "Calibrating AMS..." +msgstr "AMS kalibrálása..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"A kalibráció során probléma merült fel. Kattintson a megoldás " +"megtekintéséhez." + +msgid "Calibrate again" +msgstr "Kalibrálja újra" + +msgid "Cancel calibration" +msgstr "Kalibrálás megszakítása" + +msgid "Idling..." +msgstr "Tétlen..." + +msgid "Heat the nozzle" +msgstr "Fűtsd fel a fúvókát" + +msgid "Cut filament" +msgstr "Filament vágása" + +msgid "Pull back current filament" +msgstr "Jelenlegi filament visszahúzása" + +msgid "Push new filament into extruder" +msgstr "Új filament betöltése az extruderbe" + +msgid "Purge old filament" +msgstr "Régi filament kiöblítése" + +msgid "Feed Filament" +msgstr "Filament betöltése" + +msgid "Confirm extruded" +msgstr "Extrudálás megerősítése" + +msgid "Check filament location" +msgstr "Ellenőrizd a filament helyzetét" + +msgid "Grab new filament" +msgstr "Grab new filament" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Válassz ki egy AMS-helyet, majd nyomd meg a „Betöltés” vagy a „Kitöltés” " +"gombot az filament automatikus betöltéséhez vagy eltávolításához." + +msgid "Edit" +msgstr "Szerkesztés" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Az összes kijelölt objektum egy zárolt tálcán van,\n" +"nem lehet automatikus elrendezést használni rajtuk." + +msgid "No arrangable objects are selected." +msgstr "Nincsenek elrendezhető objektumok kijelölve." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Ez a tálca zárolva van.\n" +"Nem lehetséges az automatikus elrendezés ezen a tálcán." + +msgid "Arranging..." +msgstr "Elrendezés..." + +msgid "Arranging" +msgstr "Elrendezés" + +msgid "Arranging canceled." +msgstr "Elrendezése törölve." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Az elrendezés megtörtént, de maradtak összeragadt tárgyak. Csökkentsd a " +"térközt, és próbáld meg újra." + +msgid "Arranging done." +msgstr "Elrendezés kész." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Sikertelen elrendezés. Néhány kivételt találtunk az objektumgeometriák " +"feldolgozásakor." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"Az elrendezés figyelmen kívül hagyta a következő objektumokat, amelyek nem " +"férnek el egy tálcán:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Az összes kijelölt objektum egy zárolt tálcán van,\n" +"nem lehet automatikus orientációt használni rajtuk." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Ez a tálca zárolva van.\n" +"Nem lehetséges az automatikus orientáció ezen a tálcán." + +msgid "Orienting..." +msgstr "Orientáció folyamatban..." + +msgid "Orienting" +msgstr "Orientáció" + +msgid "Orienting canceled." +msgstr "" + +msgid "Filling" +msgstr "Kitöltés" + +msgid "Bed filling canceled." +msgstr "Bed filling canceled." + +msgid "Bed filling done." +msgstr "Bed filling done." + +msgid "Searching for optimal orientation" +msgstr "Az optimális tájolás keresése" + +msgid "Orientation search canceled." +msgstr "Tájolás keresés visszavonva." + +msgid "Orientation found." +msgstr "Tájolás megtalálva." + +msgid "Logging in" +msgstr "Bejelentkezés" + +msgid "Login failed" +msgstr "Sikertelen bejelentkezés" + +msgid "Please check the printer network connection." +msgstr "Kérjük, ellenőrizd a nyomtató hálózati kapcsolatát." + +msgid "Abnormal print file data. Please slice again." +msgstr "Abnormal print file data: please slice again." + +msgid "Task canceled." +msgstr "Task canceled." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "Upload task timed out. Please check the network status and try again." + +msgid "Cloud service connection failed. Please try again." +msgstr "" +"A felhőszolgáltatáshoz való csatlakozás sikertelen. Kérjük, próbáld újra." + +msgid "Print file not found. please slice again." +msgstr "Print file not found; please slice again." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." + +msgid "Failed to send the print job. Please try again." +msgstr "Nem sikerült elküldeni a nyomtatási feladatot. Kérlek próbáld újra." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Failed to upload file to ftp. Please try again." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Check the current status of the Bambu Lab server by clicking on the link " +"above." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"The size of the print file is too large. Please adjust the file size and try " +"again." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "Print file not found; please slice it again and send it for printing." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Failed to upload print file via FTP. Please check the network status and try " +"again." + +msgid "Sending print job over LAN" +msgstr "Nyomtatási munka küldése LAN-on keresztül" + +msgid "Sending print job through cloud service" +msgstr "Nyomtatási munka küldése felhőszolgáltatáson keresztül" + +msgid "Print task sending times out." +msgstr "Időtúllépés a nyomtatási feladat küldése során." + +msgid "Service Unavailable" +msgstr "Szolgáltatás nem elérhető" + +msgid "Unknown Error." +msgstr "Ismeretlen hiba." + +msgid "Sending print configuration" +msgstr "Nyomtatási konfiguráció küldése" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "" +"Sikeresen elküldve. Az eszköz oldala automatikusan megjelenik %s mp-en belül" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "" +"Sikeresen elküldve. Ugrás automatikusan a következő oldalra %s mp-en belül" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "A LAN-on keresztüli nyomtatáshoz helyezz be egy SD kártyát." + +msgid "Sending gcode file over LAN" +msgstr "G-kód fájl küldése LAN-on keresztül" + +msgid "Sending gcode file to sdcard" +msgstr "G-kód fájl küldése MicroSD-kártyára" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Sikeresen elküldve. Az oldal bezárul %s mp-en belül" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "A nyomtatóra való küldés előtt be kell helyezned egy MicroSD-kártyát." + +msgid "Importing SLA archive" +msgstr "Importing SLA archive" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer presets first before importing that SLA archive." + +msgid "Importing canceled." +msgstr "Importing canceled." + +msgid "Importing done." +msgstr "Importing done." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "You cannot load an SLA project with a multi-part object on the bed" + +msgid "Please check your object list before preset changing." +msgstr "Please check your object list before preset changing." + +msgid "Attention!" +msgstr "Figyelem!" + +msgid "Downloading" +msgstr "Letöltés" + +msgid "Download failed" +msgstr "Letöltés sikertelen" + +msgid "Cancelled" +msgstr "Megszakítva" + +msgid "Install successfully." +msgstr "Sikeresen telepítve" + +msgid "Installing" +msgstr "Telepítés" + +msgid "Install failed" +msgstr "Sikertelen telepítés" + +msgid "Portions copyright" +msgstr "Szerzői jogok" + +msgid "Copyright" +msgstr "Copyright" + +msgid "License" +msgstr "Licenc" + +msgid "Snapmaker Orca is licensed under " +msgstr "A Snapmaker Orca a következő licencet használja " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, version 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "" + +msgid "Libraries" +msgstr "Könyvtárak" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Ez a szoftver olyan nyílt forráskódú komponenseket használ, amelyek szerzői- " +"és egyéb tulajdonjogai a megfelelő tulajdonosok tulajdonát képezik" + +#, c-format, boost-format +msgid "About %s" +msgstr "%s névjegye" + +msgid "Snapmaker Orca " +msgstr "" + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "" + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "" + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "" +"A PrusaSlicer eredetileg az Alessandro Ranellucci által készített Slic3r-en " +"alapul." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"A Slic3r-t Alessandro Ranellucci készítette sok más közreműködő segítségével." + +msgid "Version" +msgstr "Verzió" + +msgid "AMS Materials Setting" +msgstr "AMS anyagok beállítása" + +msgid "Confirm" +msgstr "Megerősítés" + +msgid "Close" +msgstr "Bezárás" + +msgid "Colour" +msgstr "Szín" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Fúvóka\n" +"Hőmérséklet" + +msgid "max" +msgstr "max" + +msgid "min" +msgstr "min" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "" +"A megadott értéknek nagyobbnak kell lennie, mint %1% és kisebbnek, mint %2%" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "Nyomtatás közben nem változtathatóak meg a AMS férőhelyek adatai" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Anyagáramlás kalibrálásának faktorai" + +msgid "PA Profile" +msgstr "PA-profil" + +msgid "Factor K" +msgstr "K-tényező" + +msgid "Factor N" +msgstr "N-tényező" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "Setting Virtual slot information while printing is not supported" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Are you sure you want to clear the filament information?" + +msgid "You need to select the material type and color first." +msgstr "You need to select the material type and color first." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" + +msgid "Other Color" +msgstr "Other Color" + +msgid "Custom Color" +msgstr "Custom Color" + +msgid "Dynamic flow calibration" +msgstr "Dinamikus anyagáramlás kalibráció" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"A fúvóka hőmérséklete és a maximális anyagáramlás sebessége befolyásolja a " +"kalibrációs eredményeket. Kérjük, add meg a nyomtatás használt tényleges " +"értékeket. Ezek automatikusan is kitöltheted a megfelelő filamentbeállítás " +"kiválasztásával." + +msgid "Nozzle Diameter" +msgstr "Fúvóka átmérője" + +msgid "Bed Type" +msgstr "Tálcatípus" + +msgid "Nozzle temperature" +msgstr "Fúvóka hőmérséklet" + +msgid "Bed Temperature" +msgstr "Asztalhőmérséklet" + +msgid "Max volumetric speed" +msgstr "Max. volumetrikus sebesség" + +msgid "℃" +msgstr "" + +msgid "Bed temperature" +msgstr "Asztalhőmérséklet" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Start" + +msgid "Next" +msgstr "Következő" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"A kalibrálás befejeződött. Kérjük, válaszd ki az alábbi képen láthatóhoz " +"legjobban hasonlító, legegyenletesebb extrudálási vonalat, és írd be a bal " +"oldalán lévő értéket a K-tényező beviteli mezőjébe." + +msgid "Save" +msgstr "Mentés" + +msgid "Last Step" +msgstr "Vissza" + +msgid "Example" +msgstr "Példa" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Kalibrálás... %d%%" + +msgid "Calibration completed" +msgstr "A kalibrálás befejeződött" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s nem támogatja %s" + +msgid "Dynamic flow Calibration" +msgstr "Dinamikus anyagáramlás kalibráció" + +msgid "Step" +msgstr "Lépés" + +msgid "AMS Slots" +msgstr "AMS férőhelyek" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Megjegyzés: Csak az ugyanazzal az anyagtípussal feltöltött AMS helyek " +"választhatók ki." + +msgid "Enable AMS" +msgstr "AMS engedélyezése" + +msgid "Print with filaments in the AMS" +msgstr "Nyomtatás AMS-ben lévő filamenttel" + +msgid "Disable AMS" +msgstr "AMS kikapcsolása" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Nyomtatás külső tartón lévő filamenttel" + +msgid "Current Cabin humidity" +msgstr "Current Cabin humidity" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases: when the lid is open or the " +"desiccant pack is changed. It takes a few hours to absorb the moisture, and " +"low temperatures also slow down the process." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Add meg, hogy melyik AMS-férőhely legyen legyen hozzárendelve a nyomtatásnál " +"használt filamenthez." + +msgid "Filament used in this print job" +msgstr "A nyomtatási feladatban használt filament" + +msgid "AMS slot used for this filament" +msgstr "A filamenthez használt AMS-férőhely" + +msgid "Click to select AMS slot manually" +msgstr "Kattints az AMS-férőhely kézi kiválasztásához" + +msgid "Do not Enable AMS" +msgstr "Ne engedélyezd az AMS-t" + +msgid "Print using materials mounted on the back of the case" +msgstr "Nyomtatás külső tartón lévő filamenttel." + +msgid "Print with filaments in ams" +msgstr "Nyomtatás az AMS-ben lévő filamentekkel" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Nyomtatás külső tartón lévő filamenttel" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Amikor az aktuális filament elfogy, a nyomtató a következő sorrendben " +"folytatja a nyomtatást." + +msgid "Group" +msgstr "Group" + +msgid "The printer does not currently support auto refill." +msgstr "A nyomtató jelenleg nem támogatja az automatikus újratöltést." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"AMS filament backup is not enabled; please enable it in the AMS settings." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"If there are two identical filaments in an AMS, AMS filament backup will be " +"enabled. \n" +"(This currently supports automatic supply of consumables with the same " +"brand, material type, and color)" + +msgid "DRY" +msgstr "DRY" + +msgid "WET" +msgstr "WET" + +msgid "AMS Settings" +msgstr "AMS beállítások" + +msgid "Insertion update" +msgstr "Frissítés" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"Az AMS automatikusan kiolvassa a filament információkat egy új Bambu Lab " +"filament tekercs behelyezésekor. Ez körülbelül 20 másodpercet vesz igénybe." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Megjegyzés: ha nyomtatás során új filament kerül behelyezésre, az AMS nem " +"fogja automatikusan kiolvasni az információkat a nyomtatás végéig." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Új filament behelyezésekor az AMS nem fogja automatikusan kiolvasni az " +"információkat, hanem üresen hagyja azokat, így kézzel kell megadnod." + +msgid "Power on update" +msgstr "Frissítés bekapcsoláskor" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"Az AMS indításkor automatikusan kiolvassa a behelyezett filament adatait. Ez " +"körülbelül 1 percet vesz igénybe. A leolvasási folyamat során a " +"filamenttekercsek feltekercselésre kerülnek." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"Az AMS indításkor nem olvassa ki automatikusan az információkat a " +"behelyezett filamentről, és továbbra is a legutóbbi leállítás előtt " +"rögzített információkat használja." + +msgid "Update remaining capacity" +msgstr "Fennmaradó kapacitás frissítése" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"Az AMS képes megbecsülni, hogy mennyi filament maradt egy Bambu filament " +"tekercsen, a filament információinak frissítése során. Nyomtatás közben a " +"maradék mennyiség automatikusan frissül." + +msgid "AMS filament backup" +msgstr "AMS filament backup" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"Az AMS automatikusan egy másik, azonos tulajdonságú filamentre vált, ha az " +"aktuális filament kifogy." + +msgid "Air Printing Detection" +msgstr "Air Printing Detection" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." + +msgid "File" +msgstr "Fájl" + +msgid "Calibration" +msgstr "Kalibrálás" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Nem sikerült letölteni a bővítményt. Kérjük, ellenőrizd a tűzfal " +"beállításait és a VPN-szoftvert, majd próbálja meg újra." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Nem sikerült telepíteni a bővítményt. Kérjük, ellenőrizd, hogy a vírusirtó " +"szoftver nem blokkolta vagy törölte-e." + +msgid "click here to see more info" +msgstr "kattints ide további információkért" + +msgid "Please home all axes (click " +msgstr "Kérjük, végezd el a tengelyek alaphelyzetbe állítását (kattints" + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +"). Ez megakadályozza, hogy a nyomtató megpróbálja a nyomtatható területen " +"túlra mozgatni a fejet, ezzel az eszköz esetleges meghibásodását kockáztatva." + +msgid "Go Home" +msgstr "Alaphelyzet" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Hiba történt. Lehet, hogy a rendszer memóriája nem elég, vagy a program hibás" + +msgid "Please save project and restart the program. " +msgstr "Kérjük, mentsd el a projektet és indítsd újra a programot. " + +msgid "Processing G-Code from Previous file..." +msgstr "G-kód feldolgozása egy előző fájlból..." + +msgid "Slicing complete" +msgstr "Szeletelés kész" + +msgid "Access violation" +msgstr "Hozzáférés megsértése" + +msgid "Illegal instruction" +msgstr "Érvénytelen utasítás" + +msgid "Divide by zero" +msgstr "Nullával való osztás" + +msgid "Overflow" +msgstr "Túlcsordulás" + +msgid "Underflow" +msgstr "Alulcsordulás" + +msgid "Floating reserved operand" +msgstr "Lebegőpontos foglalt operandus" + +msgid "Stack overflow" +msgstr "Verem túlcsordulás" + +msgid "Running post-processing scripts" +msgstr "Utófeldolgozási szkriptek futtatása" + +msgid "Successfully executed post-processing script" +msgstr "Successfully executed post-processing script" + +msgid "Unknown error occured during exporting G-code." +msgstr "Ismeretlen hiba történt a G-kód exportálása közben." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Az ideiglenes G-kód másolása a kimeneti G-kódba nem sikerült. Lehet, hogy az " +"SD kártya írásvédett?\n" +"Hibaüzenet: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"Az ideiglenes G-kód másolása a kimeneti G-kódba nem sikerült. Probléma lehet " +"a céleszközzel. Kérjük, próbálkozzon újra az exportálással, vagy használjon " +"másik eszközt. A sérült kimeneti G-kód %1%.tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"A G-kód átnevezése a kiválasztott célmappába másolás után nem sikerült. A " +"jelenlegi elérési út %1%.tmp. Kérjük, próbálja meg újra az exportálást." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"Az ideiglenes G-kód másolása befejeződött, de az eredeti, %1% kódot nem " +"lehetett megnyitni a másolásellenőrzés során. A kimeneti G-kód %2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"Az ideiglenes G-kód másolása befejeződött, de az exportált kódot nem " +"lehetett megnyitni a másolásellenőrzés során. A kimeneti G-kód %1%.tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "G-kód fájl exportálva ide: %1%" + +msgid "Unknown error when export G-code." +msgstr "Ismeretlen hiba a G-kód exportálásakor." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Nem sikerült elmenteni a G-kód fájlt.\n" +"Hibaüzenet: %1%.\n" +"Forrás fájl: %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Nem sikerült az ideiglenes G-kódot a kimeneti G-kódba másolni." + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Feltöltés ütemezése ide: „%1%“. Lásd: Ablak -> Nyomtató feltöltési várólista" + +msgid "Device" +msgstr "Nyomtató" + +msgid "Task Sending" +msgstr "Task Sending" + +msgid "Task Sent" +msgstr "Task Sent" + +msgid "Edit multiple printers" +msgstr "" + +msgid "Select connected printers (0/6)" +msgstr "" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "" + +msgid "Offline" +msgstr "Offline" + +msgid "No task" +msgstr "No task" + +msgid "View" +msgstr "Nézet" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "" + +msgid "Device Name" +msgstr "Device Name" + +msgid "Task Name" +msgstr "Task Name" + +msgid "Device Status" +msgstr "Device Status" + +msgid "Actions" +msgstr "Actions" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" + +msgid "Add" +msgstr "Hozzáadás" + +msgid "Idle" +msgstr "Tétlen" + +msgid "Printing" +msgstr "Nyomtatás" + +msgid "Upgrading" +msgstr "" + +msgid "Incompatible" +msgstr "Incompatible" + +msgid "syncing" +msgstr "" + +msgid "Printing Finish" +msgstr "" + +msgid "Printing Failed" +msgstr "" + +msgid "Printing Pause" +msgstr "" + +msgid "Prepare" +msgstr "Előkészítés" + +msgid "Slicing" +msgstr "Szeletelés" + +msgid "Pending" +msgstr "" + +msgid "Sending" +msgstr "Küldés" + +msgid "Sending Finish" +msgstr "" + +msgid "Sending Cancel" +msgstr "" + +msgid "Sending Failed" +msgstr "" + +msgid "Print Success" +msgstr "" + +msgid "Print Failed" +msgstr "" + +msgid "Removed" +msgstr "" + +msgid "Resume" +msgstr "Folytatás" + +msgid "Stop" +msgstr "Állj" + +msgid "Task Status" +msgstr "Task Status" + +msgid "Sent Time" +msgstr "Sent Time" + +msgid "There are no tasks to be sent!" +msgstr "There are no tasks to be sent!" + +msgid "No historical tasks!" +msgstr "No historical tasks!" + +msgid "Loading..." +msgstr "Betöltés…" + +msgid "No AMS" +msgstr "No AMS" + +msgid "Send to Multi-device" +msgstr "Send to Multi-device" + +msgid "Preparing print job" +msgstr "Nyomtatási feladat előkészítése" + +msgid "Abnormal print file data. Please slice again" +msgstr "Rendellenes nyomtatási fájladatok. Kérjük, szeleteld újra" + +msgid "There is no device available to send printing." +msgstr "" + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" + +msgid "Use External Spool" +msgstr "Use External Spool" + +msgid "Use AMS" +msgstr "Use AMS" + +msgid "Select Printers" +msgstr "Select Printers" + +msgid "Ams Status" +msgstr "AMS Status" + +msgid "Printing Options" +msgstr "Printing Options" + +msgid "Bed Leveling" +msgstr "Asztalszintezés" + +msgid "Timelapse" +msgstr "Timelapse" + +msgid "Flow Dynamic Calibration" +msgstr "" + +msgid "Send Options" +msgstr "Send Options" + +msgid "Send to" +msgstr "" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"printers at the same time. (It depends on how many devices can undergo " +"heating at the same time.)" + +msgid "Wait" +msgstr "Wait" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minute each batch. (It depends on how long it takes to complete heating.)" + +msgid "Send" +msgstr "Küldés" + +msgid "Name is invalid;" +msgstr "A név érvénytelen;" + +msgid "illegal characters:" +msgstr "tiltott karakterek:" + +msgid "illegal suffix:" +msgstr "tiltott utótag:" + +msgid "The name is not allowed to be empty." +msgstr "A név mező nem lehet üres." + +msgid "The name is not allowed to start with space character." +msgstr "A név nem kezdődhet szóközzel." + +msgid "The name is not allowed to end with space character." +msgstr "A név nem végződhet szóközzel." + +msgid "The name length exceeds the limit." +msgstr "The name length exceeds the limit." + +msgid "Origin" +msgstr "Origó" + +msgid "Size in X and Y of the rectangular plate." +msgstr "A téglalap alakú tálca mérete X-ben és Y-ban." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "A 0,0 G-kód koordinátájának távolsága a téglalap bal első sarkától." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"A tárgyasztal átmérője. Feltételezzük, hogy az origó (0,0) középen van." + +msgid "Rectangular" +msgstr "Téglalap" + +msgid "Circular" +msgstr "Kör" + +msgid "Load shape from STL..." +msgstr "Forma betöltése STL-ből..." + +msgid "Settings" +msgstr "Beállítások" + +msgid "Texture" +msgstr "Textúra" + +msgid "Remove" +msgstr "Eltávolítás" + +msgid "Not found:" +msgstr "Nem található:" + +msgid "Model" +msgstr "Modell" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Válassz egy STL fájlt az asztal alakjának importálásához (PNG/SVG):" + +msgid "Invalid file format." +msgstr "Érvénytelen fájl formátum." + +msgid "Error! Invalid model" +msgstr "Hiba! Érvénytelen modell" + +msgid "The selected file contains no geometry." +msgstr "A kiválasztott fájl nem tartalmaz geometriát." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"A kiválasztott fájl több, egymástól elkülönülő területet tartalmaz. Ez nem " +"támogatott." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "Válassz egy fájlt az asztal textúrájának importálásához (PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Válassz egy STL fájlt az asztal textúrájának importálásához:" + +msgid "Bed Shape" +msgstr "Asztal alakja" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"Az ajánlott minimum hőmérséklet kevesebb, mint 190 fok, vagy az ajánlott " +"maximális hőmérséklet nagyobb, mint 300 fok.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" + +msgid "Please check.\n" +msgstr "Kérjük, ellenőrizd.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"A fúvóka eltömődhet, ha a hőmérséklet az ajánlott tartományon kívül van.\n" +"Kérjük, bizonyosodj meg róla, hogy a megfelelő hőmérsékletet használod a " +"nyomtatáshoz.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"Az ajánlott fúvóka hőmérséklet ehhez a filament típushoz [%d, %d] Celsius-fok" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Túl alacsony max. volumetrikus sebesség.\n" +"Az értéke 0,5-re állt vissza" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"Current chamber temperature is higher than the material's safe temperature; " +"this may result in material softening and nozzle clogs.The maximum safe " +"temperature for the material is %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Túl alacsony rétegmagasság.\n" +"Visszaállítva 0,2-re" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Túl kicsi vasalási térköz.\n" +"Visszaállítva 0,1-re" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"A nulla kezdőréteg magasság érvénytelen.\n" +"\n" +"A kezdőréteg magassága vissza fog állni 0,2-re." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Ez a beállítás csak a modell méretének kismértékű finomítására szolgál.\n" +"Például, ha a modellméret kis mértékben eltér, vagy ha a tűrések " +"helytelenek. Nagyobb mértékű változtatásokhoz használd a modell átméretezése " +"funkciót.\n" +"\n" +"Az érték 0-ra áll vissza." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Az elefántláb kompenzáció értéke túl nagy.\n" +"Ha jelentős elefántláb-problémával küzdesz, ellenőrizd a többi beállítást.\n" +"Például lehetséges, hogy az asztal hőmérséklete túl magas.\n" +"\n" +"Az érték 0-ra áll vissza." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"A törlő torony nem működik ha az adaptív- és a független támasz " +"rétegmagasság engedélyezve van.\n" +"Melyiket szeretnéd megtartani?\n" +"IGEN - Törlő torony megtartása\n" +"NEM - Adaptív és független támasz rétegmagasság megtartása" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"A törlő torony nem működik ha az adaptív rétegmagasság engedélyezve van.\n" +"Melyiket szeretnéd megtartani?\n" +"IGEN - Törlő torony megtartása\n" +"NEM - Adaptív rétegmagasság megtartása" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"A törlő torony nem működik ha a független támasz rétegmagasság engedélyezve " +"van.\n" +"Melyiket szeretnéd megtartani?\n" +"IGEN - Törlő torony megtartása\n" +"NEM - Független támasz rétegmagasság megtartása" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"While printing by object, the extruder may collide with a skirt.\n" +"Thus, reset the skirt layer to 1 to avoid collisions." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr "" +" Az I3-szerkezetű gépek azonban nem fognak timelapse videókat készíteni." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Automatikusan megváltoztatod ezeket a beállításokat?\n" +"Igen - Módosítsa ezeket a beállításokat, és automatikusan engedélyezze a " +"spirál mód használatát\n" +"Nem - Ne használja a spirál módot ez alkalommal" + +msgid "Auto bed leveling" +msgstr "Automatikus asztalszintezés" + +msgid "Heatbed preheating" +msgstr "Asztal előfűtése" + +msgid "Sweeping XY mech mode" +msgstr "XY mechanika ellenőrzése" + +msgid "Changing filament" +msgstr "Filament váltása" + +msgid "M400 pause" +msgstr "M400 szünet" + +msgid "Paused due to filament runout" +msgstr "Megállítva, mert kifogyott a filament" + +msgid "Heating hotend" +msgstr "Hotend fűtése" + +msgid "Calibrating extrusion" +msgstr "Extrudálás kalibrálása" + +msgid "Scanning bed surface" +msgstr "Asztalfelület szkennelése" + +msgid "Inspecting first layer" +msgstr "Első réteg vizsgálata" + +msgid "Identifying build plate type" +msgstr "Tárgyasztal azonosítása" + +msgid "Calibrating Micro Lidar" +msgstr "Micro Lidar kalibrálása" + +msgid "Homing toolhead" +msgstr "Nyomtatófej alaphelyzetbe mozgatása" + +msgid "Cleaning nozzle tip" +msgstr "Fúvóka hegyének tisztítása" + +msgid "Checking extruder temperature" +msgstr "Extruder hőmérsékletének ellenőrzése" + +msgid "Printing was paused by the user" +msgstr "Nyomtatás szüneteltetve a felhasználó által" + +msgid "Pause of front cover falling" +msgstr "Szünet az előlap leesése miatt" + +msgid "Calibrating the micro lida" +msgstr "Micro Lidar kalibrálása" + +msgid "Calibrating extrusion flow" +msgstr "Anyagáramlás kalibrálása" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Szüneteltetve a fúvóka hőmérsékletének rendellenessége miatt" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Szüneteltetve a tárgyasztal hőmérsékletének rendellenessége miatt" + +msgid "Filament unloading" +msgstr "Filament kitöltése" + +msgid "Skip step pause" +msgstr "Lépésvesztés miatti szünet" + +msgid "Filament loading" +msgstr "Filament betöltése" + +msgid "Motor noise calibration" +msgstr "Motorzaj-kalibrálás" + +msgid "Paused due to AMS lost" +msgstr "Szüneteltetve az AMS elvesztése miatt" + +msgid "Paused due to low speed of the heat break fan" +msgstr "Szüneteltetve a heat break ventilátor alacsony fordulatszáma miatt" + +msgid "Paused due to chamber temperature control error" +msgstr "Szüneteltetve a kamra hőmérséklet-szabályzó hibája miatt" + +msgid "Cooling chamber" +msgstr "Kamra hűtése" + +msgid "Paused by the Gcode inserted by user" +msgstr "Szüneteltetve a felhasználó által beillesztett G-kód miatt" + +msgid "Motor noise showoff" +msgstr "Motorzaj bemutató" + +msgid "Nozzle filament covered detected pause" +msgstr "Szüneteltetve a fúvókára került filament miatt" + +msgid "Cutter error pause" +msgstr "Szüneteltetve a filamentvágó meghibásodása miatt" + +msgid "First layer error pause" +msgstr "Szüneteltetve a kezdőrétegen található hiba miatt" + +msgid "Nozzle clog pause" +msgstr "Szüneteltetve a fúvóka eltömődése miatt" + +msgid "Unknown" +msgstr "Ismeretlen" + +msgid "Fatal" +msgstr "Súlyos" + +msgid "Serious" +msgstr "Komoly" + +msgid "Common" +msgstr "Gyakori" + +msgid "Update successful." +msgstr "Sikeres frissítés." + +msgid "Downloading failed." +msgstr "Letöltés sikertelen." + +msgid "Verification failed." +msgstr "Sikertelen ellenőrzés." + +msgid "Update failed." +msgstr "A frissítés sikertelen." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃. In order to avoid extruder clogging, low temperature filament (PLA/PETG/" +"TPU) is not allowed to be loaded." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Low temperature filament (PLA/PETG/TPU) is loaded in the extruder. In order " +"to avoid extruder clogging, it is not allowed to set the chamber temperature " +"above 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated, and the target chamber temperature will " +"automatically be set to 0℃." + +msgid "Failed to start printing job" +msgstr "Nem sikerült elindítani a nyomtatási feladatot" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "Ezt a kalibrálást nem lehet elvégezni a kiválasztott fúvókaátmérővel" + +msgid "Current flowrate cali param is invalid" +msgstr "Az anyagáramlás kalibrációs paramétere érvénytelen" + +msgid "Selected diameter and machine diameter do not match" +msgstr "A kiválasztott átmérő és a nyomtatóban megadott átmérő nem egyezik" + +msgid "Failed to generate cali gcode" +msgstr "Nem sikerült létrehozni a kalibrációs G-kódot" + +msgid "Calibration error" +msgstr "Kalibrációs hiba" + +msgid "TPU is not supported by AMS." +msgstr "Az AMS nem támogatja a TPU-t." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "A Bambu PET-CF/PA6-CF filament nem használható az AMS-sel." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"A nedves PVA rugalmassá válik és elakadhat az AMS belsejében; kérjük, " +"használat előtt alaposan szárítsd ki." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"A CF/GF filament rideg és törékeny, ezért könnyen eltörhet vagy elakadhat az " +"AMS-ben; kérjük, légy körültekintő a használatakor." + +msgid "default" +msgstr "alapértelmezett" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" + +msgid "Search gcode placeholders" +msgstr "" + +msgid "Add selected placeholder to G-code" +msgstr "" + +msgid "Select placeholder" +msgstr "" + +msgid "[Global] Slicing State" +msgstr "" + +msgid "Read Only" +msgstr "" + +msgid "Read Write" +msgstr "" + +msgid "Slicing State" +msgstr "" + +msgid "Print Statistics" +msgstr "" + +msgid "Objects Info" +msgstr "" + +msgid "Dimensions" +msgstr "" + +msgid "Temperatures" +msgstr "Hőmérséklet(ek)" + +msgid "Timestamps" +msgstr "" + +#, boost-format +msgid "Specific for %1%" +msgstr "" + +msgid "Presets" +msgstr "Presets" + +msgid "Print settings" +msgstr "Nyomtatási beállítások" + +msgid "Filament settings" +msgstr "Filament beállítások" + +msgid "SLA Materials settings" +msgstr "" + +msgid "Printer settings" +msgstr "Nyomtató beállítások" + +msgid "parameter name" +msgstr "paraméter neve" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s nem lehet százalék" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "%s érték tartományon kívül esik, folytatod?" + +msgid "Parameter validation" +msgstr "Paraméter validáció" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "Value %s is out of range. The valid range is from %d to %d." + +msgid "Value is out of range." +msgstr "Az érték tartományon kívül esik." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"%s%% vagy %s %s?\n" +"IGEN %s%%, \n" +"NEM %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Érvénytelen bemeneti formátum. A méretek vektora a következő formátumban " +"lenne érvényes: \"%1%\"" + +msgid "Input value is out of range" +msgstr "A bemeneti érték kívül esik a tartományon" + +msgid "Some extension in the input is invalid" +msgstr "" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Érvénytelen formátum. Elvárt vektor formátum: \"%1%\"" + +msgid "Layer Height" +msgstr "Rétegmagasság" + +msgid "Line Width" +msgstr "Vonalszélesség" + +msgid "Fan Speed" +msgstr "Ventilátor fordulatszám" + +msgid "Temperature" +msgstr "Hőmérséklet" + +msgid "Flow" +msgstr "Anyagáramlás" + +msgid "Tool" +msgstr "Szerszám" + +msgid "Layer Time" +msgstr "Rétegidő" + +msgid "Layer Time (log)" +msgstr "Rétegidő (log)" + +msgid "Height: " +msgstr "Magasság:" + +msgid "Width: " +msgstr "Szélesség:" + +msgid "Speed: " +msgstr "Sebesség:" + +msgid "Flow: " +msgstr "Anyagáramlás:" + +msgid "Layer Time: " +msgstr "Rétegidő: " + +msgid "Fan: " +msgstr "Ventilátor-fordulatszám:" + +msgid "Temperature: " +msgstr "Hőmérséklet:" + +msgid "Loading G-codes" +msgstr "G-kódok betöltése" + +msgid "Generating geometry vertex data" +msgstr "Geometriai vertex adatok generálása" + +msgid "Generating geometry index data" +msgstr "Geometriai index adatok generálása" + +msgid "Statistics of All Plates" +msgstr "Statistics of All Plates" + +msgid "Display" +msgstr "Megjelenítés" + +msgid "Flushed" +msgstr "Öblített" + +msgid "Tower" +msgstr "Torony" + +msgid "Total" +msgstr "Összesen" + +msgid "Total Estimation" +msgstr "Összesített becslés" + +msgid "Total time" +msgstr "Teljes idő" + +msgid "Total cost" +msgstr "Total cost" + +msgid "up to" +msgstr "legfeljebb" + +msgid "above" +msgstr "felett" + +msgid "from" +msgstr "ettől" + +msgid "Color Scheme" +msgstr "Színséma" + +msgid "Time" +msgstr "Idő" + +msgid "Percent" +msgstr "Százalék" + +msgid "Used filament" +msgstr "Használt filament" + +msgid "Layer Height (mm)" +msgstr "Rétegmagasság (mm)" + +msgid "Line Width (mm)" +msgstr "Vonalszélesség (mm)" + +msgid "Speed (mm/s)" +msgstr "Sebesség (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Ventilátor fordulatszám (%)" + +msgid "Temperature (°C)" +msgstr "Hőmérséklet (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Térfogatáramlás (mm³/s)" + +msgid "Travel" +msgstr "Mozgás" + +msgid "Seams" +msgstr "Varratok" + +msgid "Retract" +msgstr "Visszahúzás" + +msgid "Unretract" +msgstr "Visszahúzás" + +msgid "Filament Changes" +msgstr "Filamentcserék" + +msgid "Wipe" +msgstr "Törlés" + +msgid "Options" +msgstr "Opciók" + +msgid "travel" +msgstr "mozgás" + +msgid "Extruder" +msgstr "Extruder" + +msgid "Filament change times" +msgstr "Filamentcserék száma" + +msgid "Cost" +msgstr "Költség" + +msgid "Color change" +msgstr "Színváltás" + +msgid "Print" +msgstr "Nyomtatás" + +msgid "Printer" +msgstr "Nyomtató" + +msgid "Custom g-code" +msgstr "" + +msgid "ToolChange" +msgstr "" + +msgid "Time Estimation" +msgstr "Időbecslés" + +msgid "Normal mode" +msgstr "Normál mód" + +msgid "Total Filament" +msgstr "Total Filament" + +msgid "Model Filament" +msgstr "Model Filament" + +msgid "Prepare time" +msgstr "Előkészítési idő" + +msgid "Model printing time" +msgstr "Modell nyomtatási ideje" + +msgid "Switch to silent mode" +msgstr "Váltás csendes módra" + +msgid "Switch to normal mode" +msgstr "Váltás normál módra" + +msgid "Variable layer height" +msgstr "Változó rétegmagasság" + +msgid "Adaptive" +msgstr "Adaptív" + +msgid "Quality / Speed" +msgstr "Minőség / sebesség" + +msgid "Smooth" +msgstr "Sima" + +msgid "Radius" +msgstr "Sugár" + +msgid "Keep min" +msgstr "Maradjon min." + +msgid "Left mouse button:" +msgstr "Bal egérgomb:" + +msgid "Add detail" +msgstr "Részlet hozzáadása" + +msgid "Right mouse button:" +msgstr "Jobb egérgomb:" + +msgid "Remove detail" +msgstr "Részlet eltávolítása" + +msgid "Shift + Left mouse button:" +msgstr "Shift + bal egérgomb" + +msgid "Reset to base" +msgstr "Alaphelyzetbe állítás" + +msgid "Shift + Right mouse button:" +msgstr "Shift + jobb egérgomb:" + +msgid "Smoothing" +msgstr "Simítás" + +msgid "Mouse wheel:" +msgstr "Egérgörgő:" + +msgid "Increase/decrease edit area" +msgstr "Szerkesztési terület növelése/csökkentése" + +msgid "Sequence" +msgstr "Sorrend" + +msgid "Mirror Object" +msgstr "Objektum tükrözése" + +msgid "Tool Move" +msgstr "Fej mozgatása" + +msgid "Tool Rotate" +msgstr "Tool Rotate" + +msgid "Move Object" +msgstr "Objektum mozgatása" + +msgid "Auto Orientation options" +msgstr "Automatikus orientáció beállításai" + +msgid "Enable rotation" +msgstr "Forgatás engedélyezése" + +msgid "Optimize support interface area" +msgstr "Támasz érintkező felületének optimalizálása" + +msgid "Orient" +msgstr "Orientáció" + +msgid "Arrange options" +msgstr "Elrendezési lehetőségek" + +msgid "Spacing" +msgstr "Térköz" + +msgid "0 means auto spacing." +msgstr "0 means auto spacing." + +msgid "Auto rotate for arrangement" +msgstr "Automatikus forgatás az elrendezéshez" + +msgid "Allow multiple materials on same plate" +msgstr "Többféle anyag használata egy tálcán" + +msgid "Avoid extrusion calibration region" +msgstr "Extrudáláskalibráció környékének elkerülése" + +msgid "Align to Y axis" +msgstr "Igazítás az Y-tengelyhez" + +msgid "Add plate" +msgstr "Tálca hozzáadása" + +msgid "Auto orient" +msgstr "Automatikus orientáció" + +msgid "Arrange all objects" +msgstr "Összes objektum elrendezése" + +msgid "Arrange objects on selected plates" +msgstr "Objektumok elrendezése a kiválasztott tálcákon" + +msgid "Split to objects" +msgstr "Felosztás objektumokra" + +msgid "Split to parts" +msgstr "Felosztás tárgyakra" + +msgid "Assembly View" +msgstr "Összeszerelési nézet" + +msgid "Select Plate" +msgstr "Tálca kiválasztása" + +msgid "Assembly Return" +msgstr "Vissza az összeszereléshez" + +msgid "return" +msgstr "vissza" + +msgid "Paint Toolbar" +msgstr "Festés eszköztár" + +msgid "Explosion Ratio" +msgstr "Robbantási arány" + +msgid "Section View" +msgstr "Keresztmetszet nézet" + +msgid "Assemble Control" +msgstr "Összeállítás" + +msgid "Total Volume:" +msgstr "Teljes térfogat:" + +msgid "Assembly Info" +msgstr "Összeállítási információ" + +msgid "Volume:" +msgstr "Térfogat:" + +msgid "Size:" +msgstr "Méret:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" + +msgid "An object is layed over the boundary of plate." +msgstr "Egy objektum a tálca határvonalán túlra került." + +msgid "A G-code path goes beyond the max print height." +msgstr "A G-kód útvonala túlmegy a maximális nyomtatási magasságon." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "A G-kód útvonala túlmegy a tálca peremén." + +msgid "Only the object being edit is visible." +msgstr "Csak az éppen szerkesztett objektum látható." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Egy objektum a tálca határvonalán túlra került, vagy túllépi a magassági " +"határt.\n" +"Kérjük, orvosold a problémát azzal, hogy teljesen a lemezre helyezed és " +"győződj meg, hogy a magassága belefér a nyomtatótérbe." + +msgid "Calibration step selection" +msgstr "Kalibrálási lépés kiválasztása" + +msgid "Micro lidar calibration" +msgstr "Micro Lidar kalibrálás" + +msgid "Bed leveling" +msgstr "Asztalszintezés" + +msgid "Vibration compensation" +msgstr "Rezgés-kompenzáció" + +msgid "Motor noise cancellation" +msgstr "Motorzajszűrés" + +msgid "Calibration program" +msgstr "Kalibrációs program" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"A kalibrációs program automatikusan felismeri a nyomtató állapotát, hogy " +"minimálisra csökkentse az eltéréseket.\n" +"A nyomtatót az optimális teljesítményen tartja." + +msgid "Calibration Flow" +msgstr "Kalibrációs anyagáramlás" + +msgid "Start Calibration" +msgstr "Kalibrálás" + +msgid "Completed" +msgstr "Befejezve" + +msgid "Calibrating" +msgstr "Kalibrálás" + +msgid "No step selected" +msgstr "Nincs kiválasztva lépés" + +msgid "Auto-record Monitoring" +msgstr "Automatikus felügyelet" + +msgid "Go Live" +msgstr "Streamelés indítása" + +msgid "Liveview Retry" +msgstr "Élő nézet újra próbálása" + +msgid "Resolution" +msgstr "Felbontás" + +msgid "Enable" +msgstr "Engedélyezve" + +msgid "Hostname or IP" +msgstr "" + +msgid "Custom camera source" +msgstr "" + +msgid "Show \"Live Video\" guide page." +msgstr "Az „Élő videó” útmutató oldal megjelenítése." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Nyomtató csatlakoztatása (LAN)" + +msgid "Please input the printer access code:" +msgstr "Kérjük, add meg a nyomtató hozzáférési kódját:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Ezt a \"Beállítások > Hálózat > Csatlakozási kód\" menüpontban\n" +"találod a nyomtatón, ahogy az ábrán látható:" + +msgid "Invalid input." +msgstr "Érvénytelen adat" + +msgid "New Window" +msgstr "Új ablak" + +msgid "Open a new window" +msgstr "Új ablak megnyitása" + +msgid "Application is closing" +msgstr "Az alkalmazás bezárul" + +msgid "Closing Application while some presets are modified." +msgstr "Alkalmazás bezárása egyes beállítások módosítása közben." + +msgid "Logging" +msgstr "Naplózás" + +msgid "Preview" +msgstr "Előnézet" + +msgid "Multi-device" +msgstr "Multi-device" + +msgid "Project" +msgstr "Projekt" + +msgid "Yes" +msgstr "Igen" + +msgid "No" +msgstr "Nem" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "will be closed before creating a new model. Do you want to continue?" + +msgid "Slice plate" +msgstr "Tálca szeletelése" + +msgid "Print plate" +msgstr "Nyomtatótálca" + +msgid "Slice all" +msgstr "Összes szeletelése" + +msgid "Export G-code file" +msgstr "G-kód fájl exportálása" + +msgid "Export plate sliced file" +msgstr "Szeletelt tálca exportálása" + +msgid "Export all sliced file" +msgstr "Minden szeletelt fájl exportálása" + +msgid "Print all" +msgstr "Összes nyomtatása" + +msgid "Send all" +msgstr "Összes elküldése" + +msgid "Keyboard Shortcuts" +msgstr "Gyorsbillentyűk" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Gyorsgombok listájának megjelenítése" + +msgid "Setup Wizard" +msgstr "Beállítás varázsló" + +msgid "Show Configuration Folder" +msgstr "Konfigurációs mappa megjelenítése" + +msgid "Show Tip of the Day" +msgstr "A nap tippjének megjelenítése" + +msgid "Check for Update" +msgstr "Frissítés keresése" + +msgid "Open Network Test" +msgstr "Hálózati teszt megnyitása" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&%s névjegye" + +msgid "Upload Models" +msgstr "Modellek feltöltése" + +msgid "Download Models" +msgstr "Modellek letöltése" + +msgid "Default View" +msgstr "Alapértelmezett nézet" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Felül" + +msgid "Top View" +msgstr "Felülnézet" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Alul" + +msgid "Bottom View" +msgstr "Alsó nézet" + +msgid "Front" +msgstr "Elöl" + +msgid "Front View" +msgstr "Előlnézet" + +msgid "Rear" +msgstr "Hátul" + +msgid "Rear View" +msgstr "Hátulnézet" + +msgid "Left" +msgstr "Bal" + +msgid "Left View" +msgstr "Bal nézet" + +msgid "Right" +msgstr "Jobb" + +msgid "Right View" +msgstr "Jobb nézet" + +msgid "Start a new window" +msgstr "Új ablak nyitása" + +msgid "New Project" +msgstr "Új projekt" + +msgid "Start a new project" +msgstr "Új projekt indítása" + +msgid "Open a project file" +msgstr "Projektfájl megnyitása" + +msgid "Recent projects" +msgstr "Legutóbbi projektek" + +msgid "Save Project" +msgstr "Projekt mentése" + +msgid "Save current project to file" +msgstr "Jelenlegi projekt mentése egy fájlba" + +msgid "Save Project as" +msgstr "Projekt mentése másként" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Jelenlegi projekt mentése másként" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Importálás 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Modell betöltése" + +msgid "Import Zip Archive" +msgstr "" + +msgid "Load models contained within a zip archive" +msgstr "" + +msgid "Import Configs" +msgstr "Import Configs" + +msgid "Load configs" +msgstr "Load configs" + +msgid "Import" +msgstr "Import" + +msgid "Export all objects as one STL" +msgstr "Az összes objektum exportálása egy STL-ként" + +msgid "Export all objects as STLs" +msgstr "Az összes objektum exportálása STL-ként" + +msgid "Export Generic 3MF" +msgstr "Export Generic 3MF" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Export 3mf file without using some 3mf-extensions" + +msgid "Export current sliced file" +msgstr "Aktuális szeletelt fájl exportálása" + +msgid "Export all plate sliced file" +msgstr "Az összes szeletelt tálca exportálása" + +msgid "Export G-code" +msgstr "G-kód exportálása" + +msgid "Export current plate as G-code" +msgstr "Jelenlegi tálca exportálása G-kódként" + +msgid "Export Preset Bundle" +msgstr "" + +msgid "Export current configuration to files" +msgstr "Aktuális konfiguráció exportálása fájlokba" + +msgid "Export" +msgstr "Exportálás" + +msgid "Quit" +msgstr "Kilépés" + +msgid "Undo" +msgstr "Visszavonás" + +msgid "Redo" +msgstr "Mégis" + +msgid "Cut selection to clipboard" +msgstr "Kijelölés kivágása a vágólapra" + +msgid "Copy" +msgstr "Másolás" + +msgid "Copy selection to clipboard" +msgstr "Kijelölés másolása a vágólapra" + +msgid "Paste" +msgstr "Beillesztés" + +msgid "Paste clipboard" +msgstr "Beillesztés vágólapról" + +msgid "Delete selected" +msgstr "Kijelölt törlése" + +msgid "Deletes the current selection" +msgstr "Törli a jelenlegi kiválasztást" + +msgid "Delete all" +msgstr "Összes törlése" + +msgid "Deletes all objects" +msgstr "Töröl minden objektumot" + +msgid "Clone selected" +msgstr "Kijelölt klónozása" + +msgid "Clone copies of selections" +msgstr "A kijelölések klónmásolatai" + +msgid "Select all" +msgstr "Összes kijelölése" + +msgid "Selects all objects" +msgstr "Kijelöl minden objektumot" + +msgid "Deselect all" +msgstr "Kijelölés megszüntetése" + +msgid "Deselects all objects" +msgstr "Megszünteti az összes objektum kijelölését" + +msgid "Use Perspective View" +msgstr "Perspektivikus nézet használata" + +msgid "Use Orthogonal View" +msgstr "Ortogonális nézet használata" + +msgid "Show &G-code Window" +msgstr "" + +msgid "Show g-code window in Previce scene" +msgstr "" + +msgid "Show 3D Navigator" +msgstr "" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "" + +msgid "Reset Window Layout" +msgstr "" + +msgid "Reset to default window layout" +msgstr "" + +msgid "Show &Labels" +msgstr "Címkék megjelenítése" + +msgid "Show object labels in 3D scene" +msgstr "Objektumcímkék megjelenítése a 3D-térben" + +msgid "Show &Overhang" +msgstr "Show &Overhang" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Show object overhang highlight in 3D scene" + +msgid "Preferences" +msgstr "Beállítások" + +msgid "Help" +msgstr "Segítség" + +msgid "Temperature Calibration" +msgstr "Hőmérséklet kalibrálás" + +msgid "Pass 1" +msgstr "1. menet" + +msgid "Flow rate test - Pass 1" +msgstr "Anyagáramlás teszt - 1. menet" + +msgid "Pass 2" +msgstr "2. menet" + +msgid "Flow rate test - Pass 2" +msgstr "Anyagáramlás teszt - 2. menet" + +msgid "Flow rate" +msgstr "Anyagáramlás" + +msgid "Pressure advance" +msgstr "Nyomáselőtolás (PA)" + +msgid "Retraction test" +msgstr "Visszahúzás teszt" + +msgid "Orca Tolerance Test" +msgstr "Orca Tolerance Test" + +msgid "Max flowrate" +msgstr "Max. anyagáramlás" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Több..." + +msgid "Tutorial" +msgstr "Útmutató" + +msgid "Calibration help" +msgstr "Kalibrálási segítség" + +msgid "More calibrations" +msgstr "További kalibrációk" + +msgid "&Open G-code" +msgstr "&G-kód megnyitása" + +msgid "Open a G-code file" +msgstr "G-kód fájl megnyitása" + +msgid "Re&load from Disk" +msgstr "Újratöltés lemezről" + +msgid "Reload the plater from disk" +msgstr "Plater újratöltése a lemezről" + +msgid "Export &Toolpaths as OBJ" +msgstr "Szerszámút exportálása OBJ-ként" + +msgid "Export toolpaths as OBJ" +msgstr "Szerszámút exportálása OBJ-ként" + +msgid "Open &Slicer" +msgstr "Studio megnyitása" + +msgid "Open Slicer" +msgstr "Studio megnyitása" + +msgid "&Quit" +msgstr "&Kilépés" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Kilépés %s" + +msgid "&File" +msgstr "&Fájl" + +msgid "&View" +msgstr "&Nézet" + +msgid "&Help" +msgstr "&Segítség" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "A file exists with the same name: %s. Do you want to override it?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "A config exists with the same name: %s. Do you want to override it?" + +msgid "Overwrite file" +msgstr "Overwrite file" + +msgid "Yes to All" +msgstr "Yes to All" + +msgid "No to All" +msgstr "No to All" + +msgid "Choose a directory" +msgstr "Válassz egy mappát" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +msgstr[1] "" + +msgid "Export result" +msgstr "Export Result" + +msgid "Select profile to load:" +msgstr "Válaszd ki a betölteni kívánt profilt:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +msgstr[1] "" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" + +msgid "Import result" +msgstr "Import result" + +msgid "File is missing" +msgstr "Hiányzik a fájl" + +msgid "The project is no longer available." +msgstr "A projekt már nem elérhető." + +msgid "Filament Settings" +msgstr "Filament beállítások" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Szeretnéd szinkronizálni személyes adataidat a Bambu Cloudból?\n" +"Ezek a következő információkat tartalmazzák:\n" +"1. Folyamatbeállítások\n" +"2. Filamentbeállítások\n" +"3. Nyomtatóbeállítások" + +msgid "Synchronization" +msgstr "Szinkronizálás" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "Az eszköz nem tud több kapcsolatot kezelni. Kérjük, próbálkozz később." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "A lejátszó hibásan működik. Kérjük, telepítsd újra." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"A lejátszó nem töltődött be; kérjük, kattints a „lejátszás” gombra az újra " +"próbálkozáshoz." + +msgid "Please confirm if the printer is connected." +msgstr "Kérjük, ellenőrizd, hogy a nyomtató csatlakoztatva van." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"A nyomtató a letöltéssel van elfoglalva. Kérjük, várd meg, amíg a letöltés " +"befejeződik." + +msgid "Printer camera is malfunctioning." +msgstr "A nyomtató kamerája hibásan működik." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Probléma merült fel. Kérjük, frissítsd a nyomtató firmware-ét, és próbáld " +"meg újra." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." + +msgid "Please enter the IP of printer to connect." +msgstr "A csatlakozáshoz add meg a nyomtató IP-címét." + +msgid "Initializing..." +msgstr "Inicializálás…" + +msgid "Connection Failed. Please check the network and try again" +msgstr "" +"Csatlakozás sikertelen. Kérjük, ellenőrizd a hálózatot, és próbáld újra" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Kérjük, ellenőrizd a hálózatot, és próbáld újra. Ha a probléma továbbra is " +"fennáll, indítsd újra vagy frissítsd a nyomtatót." + +msgid "The printer has been logged out and cannot connect." +msgstr "A nyomtató ki van jelentkezve, és nem tud csatlakozni." + +msgid "Stopped." +msgstr "Megállítva." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "Sikertelen LAN csatlakozás (Nem sikerült elindítani az élő videót)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Ehhez a feladathoz virtuális kameraeszközök szükségesek!\n" +"Telepíted őket?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Virtuális kameraeszközök letöltése" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Már fut egy másik virtuális kamera.\n" +"A Snapmaker Orca csak egy virtuális kamerát támogat.\n" +"Leállítod ezt a virtuális kamerát?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "A virtuális kamera inicializálása sikertelen (%s)!" + +msgid "Network unreachable" +msgstr "A hálózat nem elérhető" + +msgid "Information" +msgstr "Információ" + +msgid "Playing..." +msgstr "Lejátszás..." + +msgid "Year" +msgstr "Year" + +msgid "Month" +msgstr "Month" + +msgid "All Files" +msgstr "Minden fájl" + +msgid "Group files by year, recent first." +msgstr "Fájlok csoportosítása év szerint, elöl a legújabb." + +msgid "Group files by month, recent first." +msgstr "Fájlok csoportosítása hónap szerint, elöl a legújabb." + +msgid "Show all files, recent first." +msgstr "Minden fájl megjelenítése, elöl a legújabb." + +msgid "Switch to timelapse files." +msgstr "Váltás timelapse fájlokra." + +msgid "Video" +msgstr "Video" + +msgid "Switch to video files." +msgstr "Váltás a videófájlokra." + +msgid "Switch to 3mf model files." +msgstr "Switch to 3mf model files." + +msgid "Delete selected files from printer." +msgstr "Kijelölt fájlok törlése a nyomtatóról." + +msgid "Download" +msgstr "Letöltés" + +msgid "Download selected files from printer." +msgstr "Kiválasztott fájlok letöltése a nyomtatóról." + +msgid "Select" +msgstr "Kiválasztás" + +msgid "Batch manage files." +msgstr "Fájlok kötegelt kezelése." + +msgid "Refresh" +msgstr "Frissítés" + +msgid "Reload file list from printer." +msgstr "Reload file list from printer." + +msgid "No printers." +msgstr "No printers." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Connection failed [%d]!" + +msgid "Loading file list..." +msgstr "Loading file list..." + +msgid "No files" +msgstr "Nincs fájl" + +msgid "Load failed" +msgstr "Load failed" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Initialization failed (Device connection not ready)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "LAN Connection Failed (Failed to view sdcard)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "Browsing file in SD card is not supported in LAN Only Mode." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Sikertelen inicializálás (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +msgstr[1] "" + +msgid "Delete files" +msgstr "Delete files" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Do you want to delete the file '%s' from printer?" + +msgid "Delete file" +msgstr "Delete file" + +msgid "Fetching model infomations ..." +msgstr "Fetching model information..." + +msgid "Failed to fetch model information from printer." +msgstr "Nem sikerült letölteni a modellinfomációt a nyomtatóról." + +msgid "Failed to parse model information." +msgstr "Nem sikerült feldolgozni a modellinformációkat" + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "A (z) '%s' fájl elveszett! Kérjük, töltsd le újra." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"File: %s\n" +"Title: %s\n" + +msgid "Download waiting..." +msgstr "Várakozás letöltésre..." + +msgid "Play" +msgstr "Lejátszás" + +msgid "Open Folder" +msgstr "Mappa megnyitása" + +msgid "Download finished" +msgstr "A letöltés kész" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Letöltés %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." + +msgid "File does not exist." +msgstr "A fájl nem létezik." + +msgid "File checksum error. Please retry." +msgstr "Fájl checksum hiba. Kérjük, próbáld újra." + +msgid "Not supported on the current printer version." +msgstr "A nyomtató jelenlegi szoftvere nem támogatja." + +msgid "Storage unavailable, insert SD card." +msgstr "A tárhely nem elérhető; kérjük helyezz be egy MicroSD-kártyát." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Hibakód: %d" + +msgid "Speed:" +msgstr "Sebesség:" + +msgid "Deadzone:" +msgstr "Tiltott zóna:" + +msgid "Options:" +msgstr "Opciók:" + +msgid "Zoom" +msgstr "Nagyítás" + +msgid "Translation/Zoom" +msgstr "Fordítás/Nagyítás" + +msgid "3Dconnexion settings" +msgstr "3Dconnexion beállítások" + +msgid "Swap Y/Z axes" +msgstr "Y/Z tengelyek felcserélése" + +msgid "Invert X axis" +msgstr "" + +msgid "Invert Y axis" +msgstr "" + +msgid "Invert Z axis" +msgstr "" + +msgid "Invert Yaw axis" +msgstr "" + +msgid "Invert Pitch axis" +msgstr "" + +msgid "Invert Roll axis" +msgstr "" + +msgid "Printing Progress" +msgstr "Nyomtatás folyamata" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Layer: N/A" + +msgid "Clear" +msgstr "Törlés" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"You have completed printing the mall model, \n" +"but synchronizing rating information has failed." + +msgid "How do you like this printing file?" +msgstr "Hogy tetszik ez a nyomtatási fájl?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "(Már értékelted ezt a modellt. Az új értékelésed felülírja az előzőt.)" + +msgid "Rate" +msgstr "Értékelés" + +msgid "Camera" +msgstr "Kamera" + +msgid "SD Card" +msgstr "MicroSD kártya" + +msgid "Camera Setting" +msgstr "Kamera beállítása" + +msgid "Switch Camera View" +msgstr "" + +msgid "Control" +msgstr "Vezérlés" + +msgid "Printer Parts" +msgstr "Printer Parts" + +msgid "Print Options" +msgstr "Nyomtatási lehetőségek" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Világítás" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Cham" + +msgid "Bed" +msgstr "Asztal" + +msgid "Debug Info" +msgstr "Hibakeresési infó" + +msgid "No SD Card" +msgstr "Nincs MicroSD kártya" + +msgid "SD Card Abnormal" +msgstr "Hibás MicroSD kártya" + +msgid "Cancel print" +msgstr "Nyomtatás megszakítása" + +msgid "Are you sure you want to cancel this print?" +msgstr "Biztosan megszakítod ezt a nyomtatást?" + +msgid "Downloading..." +msgstr "Letöltés..." + +msgid "Cloud Slicing..." +msgstr "Felhőszeletelés..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "In Cloud Slicing Queue, there are %s tasks ahead of you." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Layer: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Layer: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Kérjük, melegítsd a fúvókát 170 fok fölé a filament betöltése vagy kihúzása " +"előtt." + +msgid "Still unload" +msgstr "Még kitöltődik" + +msgid "Still load" +msgstr "Még töltődik" + +msgid "Please select an AMS slot before calibration" +msgstr "Válassz egy AMS-helyet a kalibrálás előtt" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"A filamentinformáció nem olvasható: a filament a nyomtatófejbe van betöltve. " +"Kérjük, távolítsd el a filamentet és próbáld újra." + +msgid "This only takes effect during printing" +msgstr "Ez csak a nyomtatás során érvényesül" + +msgid "Silent" +msgstr "Csendes" + +msgid "Standard" +msgstr "Normál" + +msgid "Sport" +msgstr "Sport" + +msgid "Ludicrous" +msgstr "Őrült" + +msgid "Can't start this without SD card." +msgstr "MicroSD kártya nélkül nem indítható." + +msgid "Rate the Print Profile" +msgstr "Értékeld a nyomtatási profilt" + +msgid "Comment" +msgstr "Megjegyzés" + +msgid "Rate this print" +msgstr "Értékeld ezt a nyomtatást" + +msgid "Add Photo" +msgstr "Fénykép hozzáadása" + +msgid "Delete Photo" +msgstr "Fénykép törlése" + +msgid "Submit" +msgstr "Elküldés" + +msgid "Please click on the star first." +msgstr "Kérjük, először kattints a csillagokra." + +msgid "InFo" +msgstr "Infó" + +msgid "Get oss config failed." +msgstr "OSS-konfiguráció letöltése sikertelen." + +msgid "Upload Pictrues" +msgstr "Upload Pictures" + +msgid "Number of images successfully uploaded" +msgstr "Sikeresen feltöltött képek száma" + +msgid " upload failed" +msgstr " feltöltés sikertelen" + +msgid " upload config prase failed\n" +msgstr " upload config prase failed\n" + +msgid " No corresponding storage bucket\n" +msgstr " Nincs megfelelő tárolóhely\n" + +msgid " can not be opened\n" +msgstr " cannot be opened\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"A képek feltöltése során a következő problémák merültek fel. Szeretnéd " +"figyelmen kívül hagyni őket?\n" +"\n" + +msgid "info" +msgstr "infó" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "Nyomtatási eredmények szinkronizálása. Kérjük, próbáld újra később." + +msgid "Upload failed\n" +msgstr "Feltöltés sikertelen\n" + +msgid "obtaining instance_id failed\n" +msgstr "Az instance_id beszerzése sikertelen\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Your comment result cannot be uploaded due to the following reasons:\n" +"\n" +" error code: " + +msgid "error message: " +msgstr "hibaüzenet: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Would you like to redirect to the webpage to give a rating?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Néhány képet nem sikerült feltölteni. Szeretnéd, ha átirányítanánk a " +"weboldalra az értékelés beküldéséhez?" + +msgid "You can select up to 16 images." +msgstr "Legfeljebb 16 képet választhatsz ki." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating (4 or 5 stars)." + +msgid "Status" +msgstr "Állapot" + +msgid "Update" +msgstr "Frissítés" + +msgid "Don't show again" +msgstr "Ne mutasd újra" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s hiba" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s hibát észlelt" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s figyelmeztetés" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s figyelmeztetést tartalmaz" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s infó" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s információ" + +msgid "Skip" +msgstr "Kihagyás" + +msgid "Newer 3mf version" +msgstr "Újabb 3mf verzió" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" + +msgid "Download Beta Version" +msgstr "Béta verzió letöltése" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" + +msgid "Current Version: " +msgstr "Jelenlegi verzió: " + +msgid "Latest Version: " +msgstr "Legújabb verzió: " + +msgid "Not for now" +msgstr "Not for now" + +msgid "3D Mouse disconnected." +msgstr "3D Mouse csatlakoztatva." + +msgid "Configuration can update now." +msgstr "A konfiguráció már frissíthető." + +msgid "Detail." +msgstr "Több" + +msgid "Integration was successful." +msgstr "Az integráció sikeres volt." + +msgid "Integration failed." +msgstr "Az integráció nem sikerült." + +msgid "Undo integration was successful." +msgstr "Az integráció visszavonása sikeres volt." + +msgid "New network plug-in available." +msgstr "Új hálózati bővítmény érhető el" + +msgid "Details" +msgstr "Részletek" + +msgid "New printer config available." +msgstr "Új nyomtatókonfiguráció érhető el." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "Az integráció visszavonása nem sikerült." + +msgid "Exporting." +msgstr "Exportálás." + +msgid "Software has New version." +msgstr "Új szoftververzió érhető el." + +msgid "Goto download page." +msgstr "Látogass el a letöltési oldalra." + +msgid "Open Folder." +msgstr "Mappa megnyitása." + +msgid "Safely remove hardware." +msgstr "Safely remove hardware." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d objektum egyedi támaszokat tartalmaz." +msgstr[1] "%1$d objektum egyedi támaszokat tartalmaz." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d objektum színfestést tartalmaz." +msgstr[1] "%1$d objektum színfestést tartalmaz." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "" +msgstr[1] "" + +msgid "ERROR" +msgstr "HIBA" + +msgid "COMPLETED" +msgstr "KÉSZ" + +msgid "CANCELED" +msgstr "MEGSZAKÍTVA" + +msgid "Cancel upload" +msgstr "Feltöltés megszakítása" + +msgid "Jump to" +msgstr "Ugrás ide:" + +msgid "Error:" +msgstr "Hiba:" + +msgid "Warning:" +msgstr "Figyelem:" + +msgid "Export successfully." +msgstr "Sikeresen exportálva" + +msgid "Model file downloaded." +msgstr "Modellfájl letöltve." + +msgid "Serious warning:" +msgstr "Súlyos figyelmeztetés:" + +msgid " (Repair)" +msgstr " (Javítás)" + +msgid " Click here to install it." +msgstr " Kattints ide a telepítéshez." + +msgid "WARNING:" +msgstr "FIGYELEM:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "" +"A modellnek támaszra van szüksége! Kérjük, engedélyezd a támasz generálását." + +msgid "Gcode path overlap" +msgstr "G-kód útvonal átfedés" + +msgid "Support painting" +msgstr "Támasz festése" + +msgid "Color painting" +msgstr "Színfestés" + +msgid "Cut connectors" +msgstr "Cut connectors" + +msgid "Layers" +msgstr "Rétegek" + +msgid "Range" +msgstr "Tartomány" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"Az alkalmazás nem futtatható megfelelően, mert az OpenGL verziója 2.0-nál " +"alacsonyabb.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Kérjük, frissítsd a grafikus kártya illesztőprogramját." + +msgid "Unsupported OpenGL version" +msgstr "Nem támogatott OpenGL verzió" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Nem sikerült betölteni a shadereket:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Hiba a shaderek betöltésében" + +msgctxt "Layers" +msgid "Top" +msgstr "Felső" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Alsó" + +msgid "Enable AI monitoring of printing" +msgstr "Nyomtatás MI-felügyeletének engedélyezése" + +msgid "Sensitivity of pausing is" +msgstr "Szüneteltetés érzékenysége" + +msgid "Enable detection of build plate position" +msgstr "Nyomtatótálca helyzetének érzékelése" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"A nyomtató megkeresi a nyomtatótálca lokalizációs címkéjét, és szünetelteti " +"a nyomtatást, ha az nem egy előre meghatározott tartományban van." + +msgid "First Layer Inspection" +msgstr "Kezdőréteg ellenőrzése" + +msgid "Auto-recovery from step loss" +msgstr "Automatikus helyreállítás lépésvesztésből" + +msgid "Allow Prompt Sound" +msgstr "Hangjelzés engedélyezése" + +msgid "Filament Tangle Detect" +msgstr "Filament Tangle Detection" + +msgid "Nozzle Clumping Detection" +msgstr "Nozzle Clumping Detection" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "Check if the nozzle is clumping by filament or other foreign objects." + +msgid "Nozzle Type" +msgstr "Nozzle Type" + +msgid "Stainless Steel" +msgstr "Rozsdamentes acél" + +msgid "Hardened Steel" +msgstr "Edzett acél" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Globális" + +msgid "Objects" +msgstr "Tárgyak" + +msgid "Advance" +msgstr "Haladó" + +msgid "Compare presets" +msgstr "Beállítások összehasonlítása" + +msgid "View all object's settings" +msgstr "Összes objektum beállításainak megtekintése" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "" + +msgid "Auto orient objects on current plate" +msgstr "" + +msgid "Arrange objects on current plate" +msgstr "" + +msgid "Unlock current plate" +msgstr "" + +msgid "Lock current plate" +msgstr "" + +msgid "Edit current plate name" +msgstr "" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "" + +#, boost-format +msgid " plate %1%:" +msgstr " %1% tálca:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Érvénytelen név, a következő karakterek nem megengedettek:" + +msgid "Sliced Info" +msgstr "Szeletelési infó" + +msgid "Used Filament (m)" +msgstr "Felhasznált filament (m)" + +msgid "Used Filament (mm³)" +msgstr "Felhasznált filament (mm³)" + +msgid "Used Filament (g)" +msgstr "Felhasznált filament (g)" + +msgid "Used Materials" +msgstr "Felhasznált anyagok" + +msgid "Estimated time" +msgstr "Becsült idő" + +msgid "Filament changes" +msgstr "Filamentcserék" + +msgid "Click to edit preset" +msgstr "Kattints a beállítás szerkesztéséhez" + +msgid "Connection" +msgstr "Kapcsolat" + +msgid "Bed type" +msgstr "Asztaltípus" + +msgid "Flushing volumes" +msgstr "Tisztítási mennyiségek" + +msgid "Add one filament" +msgstr "Adj hozzá egy filamentet" + +msgid "Remove last filament" +msgstr "Az utolsó filament eltávolítása" + +msgid "Synchronize filament list from AMS" +msgstr "Filamentlista szinkronizálása az AMS-ből" + +msgid "Set filaments to use" +msgstr "Használni kívánt filament beállítása" + +msgid "Search plate, object and part." +msgstr "Tálca, objektum és tárgy keresése." + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Nem található AMS-filament. Kérjük, válassz egy nyomtatót az „Nyomtató” " +"oldalon az AMS információk betöltéséhez." + +msgid "Sync filaments with AMS" +msgstr "Filamentek szinkronizálása az AMS-sel" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Ha szinkronizálod a filamenteket az AMS-sel, akkor az összes jelenleg " +"kiválasztott filamentbeállítás és szín felülírásra kerül. Folytatod?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Already did a synchronization; do you want to sync only changes or resync " +"all?" + +msgid "Sync" +msgstr "Sync" + +msgid "Resync" +msgstr "Resync" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "Nincs kompatibilis filament és nem történt szinkronizálás." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Szeretnéd elmenteni \"%1%\" változásait?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Sikeresen leválasztva. A(z) %s(%s) eszköz most már biztonságosan " +"eltávolítható." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "A(z) %s(%s) eszköz kiadása nem sikerült." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "Korábbi, nem mentett projektet találtunk, vissza szeretnéd állítani?" + +msgid "Restore" +msgstr "Visszaállítás" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"The current heatbed temperature is relatively high. The nozzle may clog when " +"printing this filament in a closed environment. Please open the front door " +"and/or remove the upper glass." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"Ez a filament nagyobb keménységű fúvókát igényel. Kérjük, cseréld ki a " +"fúvókát vagy válassz másik filamentet, különben előfordulhat, hogy a fúvóka " +"idő előtt elhasználódik vagy megsérül." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"A hagyományos timelapse engedélyezése felületi hibákat okozhat. Javasoljuk, " +"hogy válts a sima módra." + +msgid "Expand sidebar" +msgstr "Az oldalsáv kibontása" + +msgid "Collapse sidebar" +msgstr "&Az oldalsáv összecsukása" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Fájl betöltése: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "" + +msgid "Load 3mf" +msgstr "3mf betöltése" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"A 3mf fájl %s verziója újabb, mint a(z) %s verziója %s, a következő " +"ismeretlen kulcsokat találtuk:" + +msgid "You'd better upgrade your software.\n" +msgstr "Jobb lenne, ha frissítenéd a szoftvert.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"A 3mf fájl %s verziója újabb, mint a(z) %s verziója %s, javasolt a szoftver " +"frissítése." + +msgid "Invalid values found in the 3mf:" +msgstr "Invalid values found in the 3mf:" + +msgid "Please correct them in the param tabs" +msgstr "Please correct them in the Param tabs" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "The 3mf has following modified G-code in filament or printer presets:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Kérjük, győződj meg arról, hogy ezek a módosított G-kódok biztonságosak, " +"hogy elkerüld a nyomtató esetleges károsodását!" + +msgid "Modified G-codes" +msgstr "Modified G-code" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" +"A 3mf a következő egyedi filament- vagy nyomtatóbeállításokat tartalmazza:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Kérjük, győződj meg arról, hogy a beállításokban található G-kódok " +"biztonságosak, hogy elkerüld a nyomtató esetleges károsodását!" + +msgid "Customized Preset" +msgstr "Egyedi beállítás" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "A STEP fájlon belüli komponens neve nem UTF-8 formátumban van!" + +msgid "The name may show garbage characters!" +msgstr "" +"A nem támogatott szövegkódolás miatt helytelen karakterek jelenhetnek meg!" + +msgid "Remember my choice." +msgstr "Remember my choice." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "Nem sikerült betölteni \"%1%\" fájlt. Érvénytelen konfiguráció." + +msgid "Objects with zero volume removed" +msgstr "Nulla térfogatú objektumok eltávolítva" + +msgid "The volume of the object is zero" +msgstr "Az objektum térfogata nulla" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"A(z) %s fájlból származó objektum túl kicsi, lehet, hogy méterben vagy " +"hüvelykben lett létrehozva. Szeretnéd milliméterre méretezni?" + +msgid "Object too small" +msgstr "Objektum túl kicsi" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Ez a fájl több objektumot is tartalmaz különböző magasságban. Szeretnéd több " +"objektum helyett több részből álló egyetlen objektumként betölteni?" + +msgid "Multi-part object detected" +msgstr "Több részből álló objektum észlelve" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "Betöltöd ezeket a fájlokat több részből álló egyetlen objektumként?\n" + +msgid "Object with multiple parts was detected" +msgstr "Több részből álló objektumot észleltünk" + +msgid "The file does not contain any geometry data." +msgstr "A fájl nem tartalmaz geometriai adatokat." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Úgy tűnik, hogy az objektum túl nagy. Szeretnéd átméretezni, hogy " +"illeszkedjen a nyomtatótér méretéhez?" + +msgid "Object too large" +msgstr "Az objektum túl nagy" + +msgid "Export STL file:" +msgstr "STL fájl exportálása:" + +msgid "Export AMF file:" +msgstr "AMF fájl exportálása:" + +msgid "Save file as:" +msgstr "Fájl mentése mint:" + +msgid "Export OBJ file:" +msgstr "OBJ fájl exportálása:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"The file %s already exists.\n" +"Do you want to replace it?" + +msgid "Confirm Save As" +msgstr "Mentés másként megerősítése" + +msgid "Delete object which is a part of cut object" +msgstr "Delete object which is a part of cut object" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"You are trying to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that, model consistency can't be guaranteed." + +msgid "The selected object couldn't be split." +msgstr "A kijelölt objektumot nem lehet feldarabolni." + +msgid "Another export job is running." +msgstr "Egy másik exportálási feladat is fut." + +msgid "Unable to replace with more than one volume" +msgstr "Nem lehet egynél több kötetre cserélni" + +msgid "Error during replace" +msgstr "Hiba a csere során" + +msgid "Replace from:" +msgstr "Csere innen:" + +msgid "Select a new file" +msgstr "Válassz egy új fájlt" + +msgid "File for the replace wasn't selected" +msgstr "A cserefájl nem lett kiválasztva" + +msgid "Please select a file" +msgstr "Kérjük, válassz egy fájlt" + +msgid "Do you want to replace it" +msgstr "Do you want to replace it?" + +msgid "Message" +msgstr "Üzenet" + +msgid "Reload from:" +msgstr "Újratöltés innen:" + +msgid "Unable to reload:" +msgstr "Nem sikerült újratölteni:" + +msgid "Error during reload" +msgstr "Hiba az újratöltés során" + +msgid "There are warnings after slicing models:" +msgstr "A modellek szeletelése a következő figyelmeztetéseket generálta:" + +msgid "warnings" +msgstr "figyelmeztetések" + +msgid "Invalid data" +msgstr "Érvénytelen adat" + +msgid "Slicing Canceled" +msgstr "Szeletelés megszakítva" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "%d tálca szeletelése" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Kérjük, orvosold a szeletelési hibákat, és próbáld meg újra." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Nem található a hálózati bővítmény. A hálózattal kapcsolatos szolgáltatások " +"nem érhetők el." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Csak előnézeti mód:\n" +"A betöltött fájl csak G-kódot tartalmaz, nem lehet továbblépni az " +"Előkészítés fülre" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" +"Megtarthatod az új projekt módosított beállításait, vagy elvetheted őket" + +msgid "Creating a new project" +msgstr "Új projekt létrehozása" + +msgid "Load project" +msgstr "Projekt betöltése" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Nem sikerült elmenteni a projektet.\n" +"Ellenőrizd, hogy a mappa létezik-e online, vagy más programokban meg van-e " +"nyitva a projektfájl." + +msgid "Save project" +msgstr "Projekt mentése" + +msgid "Importing Model" +msgstr "Modell importálása" + +msgid "prepare 3mf file..." +msgstr "3mf fájl előkészítése..." + +msgid "Download failed, unknown file format." +msgstr "Download failed; unknown file format." + +msgid "downloading project ..." +msgstr "projekt letöltése ..." + +msgid "Download failed, File size exception." +msgstr "Download failed; File size exception." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Projekt letöltve %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" + +msgid "Import SLA archive" +msgstr "SLA archívum importálása" + +msgid "The selected file" +msgstr "A kiválasztott fájl" + +msgid "does not contain valid gcode." +msgstr "nem tartalmaz érvényes G-kódot." + +msgid "Error occurs while loading G-code file" +msgstr "Hiba a G-kód betöltésének során" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "" + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" + +msgid "Drop project file" +msgstr "Projekt fájl elvetése" + +msgid "Please select an action" +msgstr "Kérjük, válassz ki egy műveletet" + +msgid "Open as project" +msgstr "Megnyitás projektként" + +msgid "Import geometry only" +msgstr "Csak a geometria importálása" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Egyszerre csak egy G-kód fájl nyitható meg." + +msgid "G-code loading" +msgstr "G-code betöltése" + +msgid "G-code files can not be loaded with models together!" +msgstr "A G-code fájlokat nem lehet a modellekkel együtt betölteni!" + +msgid "Can not add models when in preview mode!" +msgstr "Előnézeti módban nem lehet modelleket hozzáadni!" + +msgid "All objects will be removed, continue?" +msgstr "Minden tárgyat eltávolítunk, folytatod?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"Az aktuális projektben el nem mentett módosítások vannak, mentsük el a " +"folytatás előtt?" + +msgid "Number of copies:" +msgstr "Másolatok száma:" + +msgid "Copies of the selected object" +msgstr "Kijelölt objektum másolatai" + +msgid "Save G-code file as:" +msgstr "G-kód fájl mentése mint:" + +msgid "Save SLA file as:" +msgstr "SLA fájl mentése mint:" + +msgid "The provided file name is not valid." +msgstr "A megadott fájlnév érvénytelen." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "A következő karakterek nem engedélyezettek a FAT fájlrendszerben:" + +msgid "Save Sliced file as:" +msgstr "Szeletelt fájl mentése mint:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"A(z) %s fájl elküldésre került a nyomtatóra, és megtekinthető a nyomtatón." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Reason: part \"%1%\" is empty." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Reason: part \"%1%\" does not bound a volume." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Reason: part \"%1%\" has self intersection." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Reason: \"%1%\" and another part have no intersection." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" + +msgid "Private protection" +msgstr "" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" + +msgid "Upload and Print" +msgstr "Feltöltés és Nyomtatás" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Nyomtatás tárgyanként: \n" +"Javasoljuk, hogy használd az automatikus elrendezést az ütközések elkerülése " +"érdekében." + +msgid "Send G-code" +msgstr "G-kód küldése" + +msgid "Send to printer" +msgstr "Nyomtatóra küldés" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" +"Az egyedi támaszok és a színfestés eltávolításra került a javítást előtt." + +msgid "Optimize Rotation" +msgstr "" + +msgid "Invalid number" +msgstr "Érvénytelen szám" + +msgid "Plate Settings" +msgstr "Plate Settings" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Number of currently selected parts: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Kijelölt objektumok száma: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Tárgy név: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Objektum neve: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Méret: %1% x %2% x %3% in\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Méret: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Térfogat: %1% in³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Térfogat: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Háromszögek: %1%\n" + +msgid "Tips:" +msgstr "Tippek:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Plate% d: %s is not suggested for use printing filament %s(%s). If you still " +"want to do this print job, please set this filament's bed temperature to a " +"number that is not zero." + +msgid "Switching the language requires application restart.\n" +msgstr "A nyelvváltáshoz az alkalmazás újraindítása szükséges.\n" + +msgid "Do you want to continue?" +msgstr "Szeretnéd folytatni?" + +msgid "Language selection" +msgstr "Nyelv kiválasztása" + +msgid "Switching application language while some presets are modified." +msgstr "Alkalmazás nyelvének átváltása, miközben egyes beállítások módosultak." + +msgid "Changing application language" +msgstr "Alkalmazás nyelvének megváltoztatása" + +msgid "Changing the region will log out your account.\n" +msgstr "A régió megváltoztatásával a fiókod kijelentkezik.\n" + +msgid "Region selection" +msgstr "Régió kiválasztása" + +msgid "Second" +msgstr "Másodperc" + +msgid "Browse" +msgstr "Tallózás" + +msgid "Choose Download Directory" +msgstr "Válassz letöltési mappát" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "Általános beállítások" + +msgid "Asia-Pacific" +msgstr "Ázsia-Csendes-óceáni térség" + +msgid "China" +msgstr "Kína" + +msgid "Europe" +msgstr "Európa" + +msgid "North America" +msgstr "Észak-Amerika" + +msgid "Others" +msgstr "Egyéb" + +msgid "Login Region" +msgstr "Régió" + +msgid "Stealth Mode" +msgstr "" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" + +msgid "Enable network plugin" +msgstr "" + +msgid "Check for stable updates only" +msgstr "" + +msgid "Metric" +msgstr "Metrikus" + +msgid "Imperial" +msgstr "Angolszász" + +msgid "Units" +msgstr "Mértékegység" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"OSX rendszeren alapértelmezés szerint mindig csak egy példány fut az " +"alkalmazásból. Ugyanakkor ugyanaz az alkalmazás több példánya is futtatható " +"a parancssorból. Ebben az esetben ez a beállítás csak egy példányt " +"engedélyez." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" + +msgid "Home" +msgstr "Haza" + +msgid "Default Page" +msgstr "" + +msgid "Set the page opened on startup." +msgstr "" + +msgid "Touchpad" +msgstr "" + +msgid "Camera style" +msgstr "" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" + +msgid "Zoom to mouse position" +msgstr "Zoom to mouse position" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." + +msgid "Use free camera" +msgstr "Szabad kamera használata" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Ha engedélyezve van, szabad kamerát használ. Ha nincs engedélyezve, akkor " +"kötött kamerát használ." + +msgid "Reverse mouse zoom" +msgstr "" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" + +msgid "Show splash screen" +msgstr "Splash screen meglenítése" + +msgid "Show the splash screen during startup." +msgstr "" + +msgid "Show \"Tip of the day\" notification after start" +msgstr "A nap tippje értesítés megjelenítése indítás után" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Ha engedélyezve van, hasznos tippek jelennek meg indításkor." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "" +"Öblítési mennyiség: Automatikus kiszámításra kerül minden színcserekor." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "" +"Ha engedélyezve van, automatikusan kiszámításra kerül minden színcsere " +"alkalmával." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "Flushing volumes: Auto-calculate every time the filament is changed." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "If enabled, auto-calculate every time filament is changed" + +msgid "Remember printer configuration" +msgstr "" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." + +msgid "Network" +msgstr "" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Felhasználói beállítások automatikus szinkronizálása (Nyomtató/Filament/" +"Folyamat)" + +msgid "User Sync" +msgstr "Felhasználó szinkronizálás" + +msgid "Update built-in Presets automatically." +msgstr "Update built-in presets automatically." + +msgid "System Sync" +msgstr "System Sync" + +msgid "Clear my choice on the unsaved presets." +msgstr "Clear my choice on the unsaved presets." + +msgid "Associate files to Snapmaker Orca" +msgstr "Fájlok társítása a Snapmaker Orcahoz" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr ".3mf fájlok társítása a Snapmaker Orcahoz" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Ha engedélyezve van, a Snapmaker Orca-t állítja be alapértelmezett " +"alkalmazásként a .3mf fájlok megnyitásához" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr ".stl fájlok társítása a Snapmaker Orcahoz" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Ha engedélyezve van, a Snapmaker Orca-t állítja be alapértelmezett " +"alkalmazásként az .stl fájlok megnyitásához" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr ".step/.stp fájlok társítása a Snapmaker Orcahoz" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Ha engedélyezve van, a Snapmaker Orca-t állítja be alapértelmezett " +"alkalmazásként a .step fájlok megnyitásához" + +msgid "Associate web links to Snapmaker Orca" +msgstr "" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "" + +msgid "Maximum recent projects" +msgstr "Maximum recent projects" + +msgid "Maximum count of recent projects" +msgstr "Maximum count of recent projects" + +msgid "Clear my choice on the unsaved projects." +msgstr "Clear my choice on the unsaved projects." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "No warnings when loading 3MF with modified G-code" + +msgid "Auto-Backup" +msgstr "Automatikus biztonsági mentés" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Backup your project periodically to help with restoring from an occasional " +"crash." + +msgid "every" +msgstr "every" + +msgid "The peroid of backup in seconds." +msgstr "The period of backup in seconds." + +msgid "Downloads" +msgstr "Letöltések" + +msgid "Dark Mode" +msgstr "Sötét mód" + +msgid "Enable Dark mode" +msgstr "Sötét mód engedélyezése" + +msgid "Develop mode" +msgstr "Fejlesztői mód" + +msgid "Skip AMS blacklist check" +msgstr "Skip AMS blacklist check" + +msgid "Home page and daily tips" +msgstr "Kezdőoldal és napi tippek" + +msgid "Show home page on startup" +msgstr "Kezdőlap megjelenítése indításkor" + +msgid "Sync settings" +msgstr "Szinkronizálási beállítások" + +msgid "User sync" +msgstr "Felhasználói szinkronizálás" + +msgid "Preset sync" +msgstr "Beállítások szinkronizálása" + +msgid "Preferences sync" +msgstr "Beállítások szinkronizálása" + +msgid "View control settings" +msgstr "Vezérlési beállítások megtekintése" + +msgid "Rotate of view" +msgstr "Nézet elforgatása" + +msgid "Move of view" +msgstr "Pásztázó nézet" + +msgid "Zoom of view" +msgstr "Nagyítás nézet" + +msgid "Other" +msgstr "Egyéb" + +msgid "Mouse wheel reverses when zooming" +msgstr "Görgetési irány megfordítása nagyítás közben" + +msgid "Enable SSL(MQTT)" +msgstr "Enable SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Enable SSL(FTP)" + +msgid "Internal developer mode" +msgstr "Internal developer mode" + +msgid "Log Level" +msgstr "Naplózási szint" + +msgid "fatal" +msgstr "súlyos" + +msgid "error" +msgstr "hiba" + +msgid "warning" +msgstr "figyelmeztetés" + +msgid "debug" +msgstr "debug" + +msgid "trace" +msgstr "követés" + +msgid "Host Setting" +msgstr "Host beállítás" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEV host: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA host: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "PRE host: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Product host" + +msgid "debug save button" +msgstr "debug mentés gomb" + +msgid "save debug settings" +msgstr "hibakeresési beállítások mentése" + +msgid "DEBUG settings have saved successfully!" +msgstr "DEBUG beállítások sikeresen elmentve!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Felhőkörnyezet megváltozott, kérjük, jelentkezz be újra!" + +msgid "System presets" +msgstr "Rendszer beállítások" + +msgid "User presets" +msgstr "Felhasználói beállítások" + +msgid "Incompatible presets" +msgstr "Nem kompatibilis beállítások" + +msgid "AMS filaments" +msgstr "AMS filamentek" + +msgid "Click to pick filament color" +msgstr "Kattints a filament szín kiválasztásához" + +msgid "Please choose the filament colour" +msgstr "Please choose the filament color" + +msgid "Add/Remove presets" +msgstr "Beállítások hozzáadása/eltávolítása" + +msgid "Edit preset" +msgstr "Beállítás módosítása" + +msgid "Project-inside presets" +msgstr "Projekten belüli beállítások" + +msgid "Add/Remove filaments" +msgstr "Filament hozzáadása/eltávolítása" + +msgid "Add/Remove materials" +msgstr "Anyagok hozzáadása/eltávolítása" + +msgid "Select/Remove printers(system presets)" +msgstr "Nyomtatók kiválasztása/eltávolítása (rendszerbeállítások)" + +msgid "Create printer" +msgstr "Nyomtató létrehozása" + +msgid "The selected preset is null!" +msgstr "A kiválasztott beállítás nulla!" + +msgid "End" +msgstr "End" + +msgid "Customize" +msgstr "Testreszabás" + +msgid "Other layer filament sequence" +msgstr "Other layer filament sequence" + +msgid "Please input layer value (>= 2)." +msgstr "Please input layer value (>= 2)." + +msgid "Plate name" +msgstr "Plate name" + +msgid "Same as Global Print Sequence" +msgstr "Same as Global Print Sequence" + +msgid "Print sequence" +msgstr "Nyomtatás sorrendje" + +msgid "Same as Global" +msgstr "Same as Global" + +msgid "Disable" +msgstr "Disable" + +msgid "Spiral vase" +msgstr "Spirál (váza)" + +msgid "First layer filament sequence" +msgstr "Kezdőréteg filament sorrendje" + +msgid "Same as Global Plate Type" +msgstr "Same as Global Plate Type" + +msgid "Same as Global Bed Type" +msgstr "Ugyanaz, mint a globális tálca típusa" + +msgid "By Layer" +msgstr "By Layer" + +msgid "By Object" +msgstr "By Object" + +msgid "Accept" +msgstr "Accept" + +msgid "Log Out" +msgstr "Log Out" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "Szeleteld fel az összes tálcát az idő és a filament becsléséhez" + +msgid "Packing project data into 3mf file" +msgstr "Projektadatok csomagolása 3mf fájlba" + +msgid "Uploading 3mf" +msgstr "3mf feltöltése" + +msgid "Jump to model publish web page" +msgstr "Ugrás a modell közzététele weboldalra" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "Megjegyzés: Az előkészítés több percig is eltarthat. Kérjük várj." + +msgid "Publish" +msgstr "Közzététel" + +msgid "Publish was cancelled" +msgstr "A közzététel törlésre került" + +msgid "Slicing Plate 1" +msgstr "1. tálca szeletelése" + +msgid "Packing data to 3mf" +msgstr "Adatok csomagolása 3mf-be" + +msgid "Jump to webpage" +msgstr "Ugrás a weboldalra" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "%s mentése" + +msgid "User Preset" +msgstr "Felhasználói beállítás" + +msgid "Preset Inside Project" +msgstr "Projekt a beállításon belül" + +msgid "Name is unavailable." +msgstr "A név nem elérhető." + +msgid "Overwrite a system profile is not allowed" +msgstr "A rendszerprofil felülírása nem engedélyezett" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "A(z) \"%1%\" már létezik." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "A(z) \"%1%\" már létezik és nem kompatibilis a jelenlegi nyomtatóval." + +msgid "Please note that saving action will replace this preset" +msgstr "Figyelem, a mentési művelet lecseréli ezt a beállítást" + +msgid "The name cannot be the same as a preset alias name." +msgstr "A név nem lehet azonos egy beállítás alias névvel." + +msgid "Save preset" +msgstr "Beállítás mentése" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Másolat" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "\"%1%\" nyomtató kiválasztva a következő beállítással: \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Kérjük, válassz egy műveletet a(z) \"%1%\" beállítással a mentés után." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Ehhez: \"%1%\", változtasd meg \"%2%\"-t erre: \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Ehhez: \"%1%\", add hozzá \"%2%\"-t új beállításként" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Csak válts a(z) \"%1%\"-ra" + +msgid "Task canceled" +msgstr "Feladat törölve" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Keresés" + +msgid "My Device" +msgstr "Saját eszköz" + +msgid "Other Device" +msgstr "Egyéb eszköz" + +msgid "Online" +msgstr "Online" + +msgid "Input access code" +msgstr "Add meg a hozzáférési kódot" + +msgid "Can't find my devices?" +msgstr "Nem találod az eszközöket?" + +msgid "Log out successful." +msgstr "Sikeres kijelentkezés." + +msgid "Busy" +msgstr "Elfoglalt" + +msgid "Bambu Cool Plate" +msgstr "Bambu Cool Plate" + +msgid "PLA Plate" +msgstr "PLA Plate" + +msgid "Bambu Engineering Plate" +msgstr "Bambu Engineering Plate" + +msgid "Bambu Smooth PEI Plate" +msgstr "" + +msgid "High temperature Plate" +msgstr "High Temperature Plate" + +msgid "Bambu Textured PEI Plate" +msgstr "" + +msgid "Send print job to" +msgstr "Nyomtatási feladat küldése" + +msgid "Flow Dynamics Calibration" +msgstr "Áramlásdinamikai kalibrálás" + +msgid "Click here if you can't connect to the printer" +msgstr "Kattints ide, ha nem tudsz csatlakozni a nyomtatóhoz" + +msgid "send completed" +msgstr "küldés befejezve" + +msgid "Error code" +msgstr "Error code" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "" +"Nincs bejelentkezési fiók, csak a LAN módban lévő nyomtatók jelennek meg" + +msgid "Connecting to server" +msgstr "Csatlakozás a szerverhez" + +msgid "Synchronizing device information" +msgstr "Eszközinformációk szinkronizálása" + +msgid "Synchronizing device information time out" +msgstr "Eszközinformációk szinkronizálása túllépte az időkorlátot" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"Nem küldhetsz nyomtatási feladatot a nyomtatóra, amíg az firmware frissítést " +"végez." + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"A nyomtató elfoglalt. Kérjük, indítsd újra a nyomtatást a nyomtatás " +"befejezése után" + +msgid "The printer is busy on other print job" +msgstr "A nyomtató egy másik nyomtatási feladattal van elfoglalva." + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"%s filament nem fér el a rendelkezésre álló AMS-férőhelyben. Kérjük, " +"frissítsd a nyomtató szoftverét az AMS-kiosztás támogatásához." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"A filament nem fér el a rendelkezésre álló AMS-férőhelyben. Kérjük, " +"frissítsd a nyomtató szoftverét az AMS-kiosztás támogatásához." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Megtörtént a filamentek AMS férőhelyekhez való kiosztása. Kattints egy fenti " +"filamentre az AMS kiosztás megváltoztatásához" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Kérjük, a nyomtatás megkezdése előtt kattints a fenti filamentekre, hogy " +"megadd a hozzájuk tartozó AMS férőhelyet" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"%s filament típusa nem egyezik a(z) %s AMS-férőhelyben találhatóval. Kérjük, " +"frissítsd a nyomtató szoftverét az AMS-kiosztás támogatásához." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"A filament típusa nem egyezik az AMS-férőhelyben találhatóval. Kérjük, " +"frissítsd a nyomtató szoftverét az AMS-kiosztás támogatásához." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"A nyomtató firmware-je csak a szekvenciális filamentkiosztást támogatja = > " +"AMS férőhely" + +msgid "An SD card needs to be inserted before printing." +msgstr "Nyomtatás előtt be kell helyezned egy microSD kártyát." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "A timelapse rögzítéséhez egy microSD kártyára van szükség." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Nem küldhetsz nyomtatási feladatot a nyomtatóra, mert annak firmware-jét " +"frissíteni kell." + +msgid "Cannot send the print job for empty plate" +msgstr "Nem küldhetsz nyomtatási feladatot egy üres tálcával." + +msgid "This printer does not support printing all plates" +msgstr "Ez a nyomtató nem támogatja az összes tálcára való nyomtatást" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"When spiral vase mode is enabled, machines with I3 structure will not " +"generate timelapse videos." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"A timelapse nem támogatott ebben a módban, mert a nyomtatási sorrend " +"„Tárgyanként” értékre van állítva." + +msgid "Errors" +msgstr "Hibák" + +msgid "Please check the following:" +msgstr "Please check the following:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"Van néhány ismeretlen filament az AMS kiosztásban. Győződj meg róla, hogy " +"ezek a szükséges filamentek. Ha igen, kattints a „Megerősítés” gombra a " +"nyomtatás megkezdéséhez." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "fúvóka a beállításban: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "eltárolt fúvóka: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Your nozzle diameter in sliced file is not consistent with the saved nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "Please fix the error above, otherwise printing cannot continue." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Please click the confirm button if you still want to proceed with printing." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Csatlakozás a nyomtatóhoz. A csatlakozási folyamatot nem lehetett " +"megszakítani." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Figyelem! A „Textured PEI“ tálcán való áramláskalibrálás a durva felület " +"miatt hamis eredményeket adhat." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Automatic flow calibration using the Micro Lidar" + +msgid "Modifying the device name" +msgstr "Eszköz nevének módosítása" + +msgid "Bind with Pin Code" +msgstr "Bind with Pin Code" + +msgid "Send to Printer SD card" +msgstr "Küldés a nyomtatóban lévő MicroSD kártyára" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "" +"Nem küldhetsz nyomtatási feladatot a nyomtatóra, amikor frissítés van " +"folyamatban" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "A nyomtató nem kompatibilis a kiválasztott nyomtatóbeállításokkal." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "" +"A MicroSD card needs to be inserted before sending to the printer SD card." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "" +"A nyomtatónak ugyanazon a hálózaton kell lennie, mint a Bambu Studiónak." + +msgid "The printer does not support sending to printer SD card." +msgstr "A nyomtató nem támogatja a MicroSD kártyára küldést." + +msgid "Slice ok." +msgstr "Szeletelés kész." + +msgid "View all Daily tips" +msgstr "Napi tippek megtekintése" + +msgid "Failed to create socket" +msgstr "Failed to create socket" + +msgid "Failed to connect socket" +msgstr "Failed to connect socket" + +msgid "Failed to publish login request" +msgstr "Failed to publish login request" + +msgid "Get ticket from device timeout" +msgstr "Timeout getting ticket from device" + +msgid "Get ticket from server timeout" +msgstr "Timeout getting ticket from server" + +msgid "Failed to post ticket to server" +msgstr "Failed to post ticket to server" + +msgid "Failed to parse login report reason" +msgstr "Failed to parse login report reason" + +msgid "Receive login report timeout" +msgstr "Receive login report timeout" + +msgid "Unknown Failure" +msgstr "Ismeretlen hiba" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." + +msgid "Can't find Pin Code?" +msgstr "Can't find Pin Code?" + +msgid "Pin Code" +msgstr "Pin Code" + +msgid "Binding..." +msgstr "Binding..." + +msgid "Please confirm on the printer screen" +msgstr "Please confirm on the printer screen" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Log in failed. Please check the Pin Code." + +msgid "Log in printer" +msgstr "Bejelentkezés a nyomtatóra" + +msgid "Would you like to log in this printer with current account?" +msgstr "Szeretnél bejelentkezni a nyomtatóra a jelenlegi fiókkal?" + +msgid "Check the reason" +msgstr "Check the reason" + +msgid "Read and accept" +msgstr "Read and accept" + +msgid "Terms and Conditions" +msgstr "Terms and Conditions" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Thank you for purchasing a Bambu Lab device. Before using your Bambu Lab " +"device, please read the terms and conditions. By clicking to agree to use " +"your Bambu Lab device, you agree to abide by the Privacy Policy and Terms of " +"Use (collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." + +msgid "and" +msgstr "and" + +msgid "Privacy Policy" +msgstr "Privacy Policy" + +msgid "We ask for your help to improve everyone's printer" +msgstr "We ask for your help to improve everyone's printer" + +msgid "Statement about User Experience Improvement Program" +msgstr "Statement about User Experience Improvement Program" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Statement on User Experience Improvement Plan" + +msgid "Log in successful." +msgstr "Sikeres bejelentkezés." + +msgid "Log out printer" +msgstr "Kijelentkezés a nyomtatóról" + +msgid "Would you like to log out the printer?" +msgstr "Szeretnél kijelentkezni a nyomtatóról?" + +msgid "Please log in first." +msgstr "Kérjük, előbb jelentkezz be." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "Hiba történt a nyomtatóhoz való csatlakozáskor. Kérjük, próbáld újra." + +msgid "Failed to log out." +msgstr "Sikertelen kijelentkezés." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Jelenlegi %s mentése" + +msgid "Delete this preset" +msgstr "Ezen beállítás törlése" + +msgid "Search in preset" +msgstr "Keresés a beállításokban" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Kattints az összes beállítás utolsó mentett változatának visszaállításához." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"A sima timelapse miatt szükség van a törlőtoronyra. Nélküle előfordulhatnak " +"hibák a nyomtatott tárgyon. Biztos, hogy kikapcsolod a törlőtornyot?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"A sima timelapse miatt szükség van a törlőtoronyra. Nélküle előfordulhatnak " +"hibák a nyomtatott tárgyon. Engedélyezed a törlőtornyot?" + +msgid "Still print by object?" +msgstr "Továbbra is tárgyanként szeretnél nyomtatni?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Kísérleti jelleggel hozzáadtunk egy \"Tree Slim\" nevű támaszt, amely " +"kevesebb anyagot igényel, de emiatt gyengébb szilárdságú.\n" +"Használatát a következőkkel javasoljuk: 0 érintkezőréteg, 0 felső távolság, " +"2 fal." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Automatikusan megváltoztatod ezeket a beállításokat?\n" +"Igen - Módosítsa ezeket a beállításokat\n" +"Nem - Ne változtassa meg a beállításokat" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Az „Erős fa” és a „Hibrid fa” támaszok esetében a következő beállításokat " +"javasoljuk: legalább 2 érintkező réteg, legalább 0,1 mm felső Z-távolság " +"vagy támaszanyag használata." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"When using support material for the support interface, we recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" + +msgid "Are you sure you want to enable this option?" +msgstr "" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"A rétegmagasság meghaladja a Nyomtatóbeállítások -> Extruder -> " +"Rétegmagasság limitek menüpontban megadott értéket, ez minőségbeli " +"problémákat okozhat a nyomtatás során." + +msgid "Adjust to the set range automatically? \n" +msgstr "" +"Szeretnéd az értéket automatikusan a beállított tartományhoz igazítani? \n" + +msgid "Adjust" +msgstr "Módosítás" + +msgid "Ignore" +msgstr "Mellőzés" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications. Please use with the latest printer firmware." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"Ha a nyomtatófej nélküli timelapse engedélyezve van, javasoljuk, hogy " +"helyezz el a tálcán egy „Timelapse törlőtornyot“. Ehhez kattints jobb " +"gombbal a tálca egy üres részére, majd válaszd a „Primitív hozzáadása“ -> " +"„Timelapse törlőtorony“ lehetőséget." + +msgid "Line width" +msgstr "Nyomtatott vonal szélessége" + +msgid "Seam" +msgstr "Varrat" + +msgid "Precision" +msgstr "Pontosság" + +msgid "Wall generator" +msgstr "Falgenerátor" + +msgid "Walls and surfaces" +msgstr "" + +msgid "Bridging" +msgstr "" + +msgid "Overhangs" +msgstr "" + +msgid "Walls" +msgstr "Falak" + +msgid "Top/bottom shells" +msgstr "Felső/alsó héjak" + +msgid "Initial layer speed" +msgstr "Kezdőréteg sebessége" + +msgid "Other layers speed" +msgstr "Többi réteg sebessége" + +msgid "Overhang speed" +msgstr "Sebesség túlnyúlásnál" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Nyomtatási sebesség a különböző mértékű túlnyúlásoknál. A túlnyúlás mértéke " +"a vonalszélesség százalékában van kifejezve. A 0 sebesség azt jelenti, hogy " +"nem történik lassítás, és a fal nyomtatási sebessége kerül alkalmazásra." + +msgid "Bridge" +msgstr "Áthidalás" + +msgid "Set speed for external and internal bridges" +msgstr "" + +msgid "Travel speed" +msgstr "Mozgás sebessége" + +msgid "Acceleration" +msgstr "Gyorsulás" + +msgid "Jerk(XY)" +msgstr "Jerk(XY)" + +msgid "Raft" +msgstr "Tutaj" + +msgid "Support filament" +msgstr "Filament a támaszhoz" + +msgid "Tree supports" +msgstr "" + +msgid "Skirt" +msgstr "Szoknya" + +msgid "Prime tower" +msgstr "Törlő torony" + +msgid "Special mode" +msgstr "Speciális mód" + +msgid "G-code output" +msgstr "G-kód kimenet" + +msgid "Post-processing Scripts" +msgstr "Post-processing Scripts" + +msgid "Notes" +msgstr "Notes" + +msgid "Frequent" +msgstr "Gyakori" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"A következő sor foglalt kulcsszavakat tartalmaz: %s.\n" +"Kérjük, távolítsd el, vagy különben problémát fog okozni a G-kód " +"megjelenítésében és a nyomtatási idő becslésében." +msgstr[1] "" +"A következő sorok foglalt kulcsszavakat tartalmaz: %s.\n" +"Kérjük, távolítsd el, vagy különben problémát fog okozni a G-kód " +"megjelenítésében és a nyomtatási idő becslésében." + +msgid "Reserved keywords found" +msgstr "Foglalt kulcsszavakat találtunk" + +msgid "Setting Overrides" +msgstr "Beállítások felülbírálása" + +msgid "Retraction" +msgstr "Visszahúzás" + +msgid "Basic information" +msgstr "Alapinformációk" + +msgid "Recommended nozzle temperature" +msgstr "Ajánlott fúvóka hőmérséklet" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Az ajánlott fúvóka hőmérséklet-tartomány ehhez a filamenthez. A 0 azt " +"jelenti, hogy nincs beállítva" + +msgid "Print chamber temperature" +msgstr "" + +msgid "Print temperature" +msgstr "Nyomtatási hőmérséklet" + +msgid "Nozzle" +msgstr "Fúvóka" + +msgid "Nozzle temperature when printing" +msgstr "Fúvóka hőmérséklete nyomtatáskor" + +msgid "Cool plate" +msgstr "Cool plate" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Asztalhőmérséklet a hideg tálca használatával. A 0 érték azt jelenti, hogy a " +"filament nem támogatja a Cool Plate-re történő nyomtatást" + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "Engineering plate" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Asztalhőmérséklet a mérnöki tálca használatával. A 0 érték azt jelenti, hogy " +"a filament nem támogatja az Engineering Plate-re történő nyomtatást" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Smooth PEI Plate / High Temp Plate" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Az asztal hőmérséklete Smooth PEI / High Temperature tálca használatakor. A " +"0 érték azt jelenti, hogy a filament nem támogatja Smooth PEI / High " +"Temperature tálcára történő nyomtatást" + +msgid "Textured PEI Plate" +msgstr "Textured PEI Plate" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Asztalhőmérséklet a texturált PEI tálca használatával. A 0 érték azt " +"jelenti, hogy a filament nem támogatja a High Temp Plate-re történő " +"nyomtatást" + +msgid "Volumetric speed limitation" +msgstr "Volumetrikus sebességhatár" + +msgid "Cooling" +msgstr "Hűtés" + +msgid "Cooling for specific layer" +msgstr "Hűtés a megadott rétegtől" + +msgid "Part cooling fan" +msgstr "Tárgyhűtő ventilátor" + +msgid "Min fan speed threshold" +msgstr "Min. ventilátor fordulatszám" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"A tárgyhűtő ventilátor akkor kezd el min. fordulatszámon működni, amikor a " +"becsült rétegidő nem hosszabb, mint a rétegidő a beállítoskban. Ha a " +"rétegidő rövidebb a küszöbértéknél, a ventilátor fordulatszáma a " +"rétegnyomtatási időnek megfelelően skálázódik a minimális és maximális " +"ventilátor fordulatszám között" + +msgid "Max fan speed threshold" +msgstr "Max. ventilátor fordulatszám" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"A tárgyhűtő ventilátor fordulatszáma a maximális lesz, ha a becsült rétegidő " +"rövidebb, mint a beállított érték" + +msgid "Auxiliary part cooling fan" +msgstr "Kiegészítő tárgyhűtő ventilátor" + +msgid "Exhaust fan" +msgstr "Elszívóventilátor" + +msgid "During print" +msgstr "Nyomtatás közben" + +msgid "Complete print" +msgstr "Teljes nyomtatás" + +msgid "Filament start G-code" +msgstr "Filament kezdő G-kód" + +msgid "Filament end G-code" +msgstr "Filament befejező G-kód" + +msgid "Multimaterial" +msgstr "" + +msgid "Wipe tower parameters" +msgstr "Törlőtorony paraméterek" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "" +"Szerszámváltási paraméterek egy extruderes Több Anyagos (MM) nyomtatónál" + +msgid "Ramming settings" +msgstr "Tömörítési beállítások" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "" + +msgid "Printable space" +msgstr "Nyomtatási terület" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "" + +msgid "G-code flavor is switched" +msgstr "" + +msgid "Cooling Fan" +msgstr "" + +msgid "Fan speed-up time" +msgstr "" + +msgid "Extruder Clearance" +msgstr "Extruder távolság" + +msgid "Adaptive bed mesh" +msgstr "" + +msgid "Accessory" +msgstr "Tartozékok" + +msgid "Machine gcode" +msgstr "Gép G-kód" + +msgid "Machine start G-code" +msgstr "Gép kezdő G-kód" + +msgid "Machine end G-code" +msgstr "Gép befejező G-kód" + +msgid "Printing by object G-code" +msgstr "Nyomtatás objektumonként G-kód" + +msgid "Before layer change G-code" +msgstr "Rétegváltás előtti G-kód" + +msgid "Layer change G-code" +msgstr "Rétegváltás G-kód" + +msgid "Time lapse G-code" +msgstr "Timelapse G-kód" + +msgid "Change filament G-code" +msgstr "Filament csere G-kód" + +msgid "Change extrusion role G-code" +msgstr "" + +msgid "Pause G-code" +msgstr "Szünet G-kód" + +msgid "Template Custom G-code" +msgstr "Sablon egyedi G-kód" + +msgid "Motion ability" +msgstr "Géplimitek" + +msgid "Normal" +msgstr "Normál" + +msgid "Speed limitation" +msgstr "Sebesség limitek" + +msgid "Acceleration limitation" +msgstr "Gyorsulási limitek" + +msgid "Jerk limitation" +msgstr "Jerk limitek" + +msgid "Single extruder multimaterial setup" +msgstr "" + +msgid "Wipe tower" +msgstr "Törlőtorony" + +msgid "Single extruder multimaterial parameters" +msgstr "Egyetlen extruder többanyagú paraméterei" + +msgid "Layer height limits" +msgstr "Rétegmagasság limitek" + +msgid "Lift Z Enforcement" +msgstr "" + +msgid "Retraction when switching material" +msgstr "Visszahúzás anyagváltáskor" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Disable it in order to enable Firmware Retraction?" + +msgid "Firmware Retraction" +msgstr "Firmware-ben megadott visszahúzás" + +msgid "Detached" +msgstr "Különálló" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"A(z) %d filamentbeállítás és a(z) %d folyamatbeállítás ehhez a nyomtatóhoz " +"kapcsolódik. Ha törlöd a nyomtatót, akkor ezek a beállítások is törlődnek." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "A más beállítások által örökölt beállítások nem törölhetők!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% beállítás" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "A következő beállítás szintén törlődni fog." +msgstr[1] "A következő beállítások szintén törlődni fognak." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Biztosan törlöd a kiválasztott beállítást? \n" +"Ha ez a filament jelenleg használatban van a nyomtatón, kérjük, töröld az " +"adott férőhelyen a filamentadatokat." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Biztos, hogy %1% a kiválasztott beállítást?" + +msgid "All" +msgstr "Összes" + +msgid "Set" +msgstr "Beállít" + +msgid "Click to reset current value and attach to the global value." +msgstr "" +"Kattints ide az érték visszaállításához és a globális érték használatához." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Kattints a gombra az aktuális módosítás elvetéséhez és a mentett értékre " +"való visszaállításhoz." + +msgid "Process Settings" +msgstr "Folyamatbeállítások" + +msgid "Undef" +msgstr "Nincs meghatározva" + +msgid "Unsaved Changes" +msgstr "mentetlen változások" + +msgid "Transfer or discard changes" +msgstr "Változások elvetése vagy megtartása" + +msgid "Old Value" +msgstr "Régi érték" + +msgid "New Value" +msgstr "Új érték" + +msgid "Transfer" +msgstr "Átvitel" + +msgid "Don't save" +msgstr "Ne mentsd" + +msgid "Discard" +msgstr "Elvetés" + +msgid "Click the right mouse button to display the full text." +msgstr "Kattints a jobb egérgombbal a teljes szöveg megjelenítéséhez." + +msgid "All changes will not be saved" +msgstr "A módosítások nem kerülnek mentésre" + +msgid "All changes will be discarded." +msgstr "Minden változtatás el lesz vetve." + +msgid "Save the selected options." +msgstr "A kiválasztott beállítások mentése." + +msgid "Keep the selected options." +msgstr "Kiválasztott opciók megtartása." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Kiválasztott opciók átmásolása az újonnan kiválasztott beállításba." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"A kiválasztott beállítások mentése előbeállításba\n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Kiválasztott opciók átmásolása az újonnan kiválasztott beállításba\n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "" +"A(z) \"%1%\" beállítás a következő elmentetlen változásokat tartalmazza:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"A(z) \"%1%\" beállítás nem kompatibilis az új nyomtató profillal és a " +"következő elmentetlen változásokat tartalmazza:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"A(z) \"%1%\" beállítás nem kompatibilis az új folyamat profillal és a " +"következő elmentetlen változásokat tartalmazza:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "You have changed some settings of preset \"%1%\". " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"You can save or discard the preset values you have modified." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" + +msgid "You have previously modified your settings." +msgstr "You have previously modified your settings." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" + +msgid "Extruders count" +msgstr "Extruderek száma" + +msgid "General" +msgstr "Általános" + +msgid "Capabilities" +msgstr "Képességek" + +msgid "Show all presets (including incompatible)" +msgstr "Minden beállítás megjelenítése (beleértve az inkompatibiliseket is)" + +msgid "Select presets to compare" +msgstr "Select presets to compare" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" + +msgid "Transfer values from left to right" +msgstr "" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" + +msgid "Add File" +msgstr "Fájl hozzáadása" + +msgid "Set as cover" +msgstr "Beállítás borítóként" + +msgid "Cover" +msgstr "Lefedés" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "A(z) \"%1%\" név már létezik." + +msgid "Basic Info" +msgstr "Alapinformáció" + +msgid "Pictures" +msgstr "Képek" + +msgid "Bill of Materials" +msgstr "Alkatrészlista" + +msgid "Assembly Guide" +msgstr "Összeszerelési útmutató" + +msgid "Author" +msgstr "Szerző" + +msgid "Model Name" +msgstr "Modellnév" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s frissítés" + +msgid "A new version is available" +msgstr "Új verzió érhető el" + +msgid "Configuration update" +msgstr "Konfiguráció frissítés" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "Új konfigurációs csomag elérhető, szeretnéd telepíteni?" + +msgid "Description:" +msgstr "Leírás:" + +msgid "Configuration incompatible" +msgstr "Nem kompatibilis konfiguráció" + +msgid "the configuration package is incompatible with current application." +msgstr "a konfigurációs csomag nem kompatibilis a jelenlegi alkalmazással." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"A konfigurációs csomag nem kompatibilis a jelenlegi alkalmazással.\n" +"%s frissíti a konfigurációs csomagot, hogy az alkalmazás elindulhasson." + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Kilépés %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "" +"A konfigurációs csomag nem kompatibilis a Snapmaker Orca jelenlegi verziójával." + +msgid "Configuration updates" +msgstr "Konfiguráció frissítések" + +msgid "No updates available." +msgstr "Nincs elérhető frissítés." + +msgid "The configuration is up to date." +msgstr "A konfiguráció naprakész." + +msgid "Obj file Import color" +msgstr "Obj file Import color" + +msgid "Specify number of colors:" +msgstr "Specify number of colors:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "The color count should be in range [%d, %d]." + +msgid "Recommended " +msgstr "Recommended " + +msgid "Current filament colors:" +msgstr "Current filament colors:" + +msgid "Quick set:" +msgstr "Quick set:" + +msgid "Color match" +msgstr "Color match" + +msgid "Approximate color matching." +msgstr "Approximate color matching." + +msgid "Append" +msgstr "Append" + +msgid "Add consumable extruder after existing extruders." +msgstr "Add consumable extruder after existing extruders." + +msgid "Reset mapped extruders." +msgstr "Reset mapped extruders." + +msgid "Cluster colors" +msgstr "Cluster colors" + +msgid "Map Filament" +msgstr "Map Filament" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Warning: The count of newly added and \n" +" current extruders exceeds 16." + +msgid "Ramming customization" +msgstr "Tömörítés testreszabása" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"A tömörítés az egy extruderes Többféle Anyaggal (MM) dolgozó nyomtatókban a " +"szerszámcsere előtti gyors extrudálást jelenti. Célja, hogy megfelelően " +"alakítsa a visszahúzott filament végét, hogy az ne akadályozza az új " +"filament betöltését, és később újra betölthető legyen. Ez a fázis fontos, és " +"a különböző anyagok különböző extrudálási sebességet igényelhetnek a " +"megfelelő forma eléréséhez. Ezért a tömörítés során alkalmazott extrudálási " +"sebességek állíthatóak.\n" +"\n" +"Ez egy szakértői szintű beállítás, a helytelen beállítás elakadásokhoz, az " +"extruder kerék filamentbe marásához stb. vezethet." + +msgid "Total ramming time" +msgstr "Teljes tömörítési idő" + +msgid "s" +msgstr "mp" + +msgid "Total rammed volume" +msgstr "Teljes tömörített térfogat" + +msgid "Ramming line width" +msgstr "Tömörítési vonal szélessége" + +msgid "Ramming line spacing" +msgstr "Tömörítési vonal térköze" + +msgid "Auto-Calc" +msgstr "Automatikus számítás" + +msgid "Re-calculate" +msgstr "Újraszámítás" + +msgid "Flushing volumes for filament change" +msgstr "Filament csere tiszítási mennyisége" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Egyes filamentpárok tiszítási mennyisége (mm³)." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Javaslat: öblítési érték a [%d, %d] tartományban" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "A szorzónak [%.2f, %.2f] tartományban kell lennie." + +msgid "Multiplier" +msgstr "Szorzó" + +msgid "unloaded" +msgstr "unloaded" + +msgid "loaded" +msgstr "betöltve" + +msgid "Filament #" +msgstr "Filament #" + +msgid "From" +msgstr "Ettől:" + +msgid "To" +msgstr "Eddig:" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "A Bambu Network plug-in nem található." + +msgid "Click here to download it." +msgstr "Kattints ide a letöltéshez." + +msgid "Login" +msgstr "Bejelentkezés" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "A konfigurációs csomag az előző konfigurációs útmutatóban módosult" + +msgid "Configuration package changed" +msgstr "Konfigurációs csomag megváltozott" + +msgid "Toolbar" +msgstr "Eszköztár" + +msgid "Objects list" +msgstr "Objektumok listája" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Import geometry data from STL/STEP/3MF/OBJ/AMF files" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Beillesztés a vágólapról" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "3Dconnexion-eszközbeállítások párbeszédablak megjelenítése/elrejtése" + +msgid "Switch table page" +msgstr "Váltás táblázatra" + +msgid "Show keyboard shortcuts list" +msgstr "Gyorsgombok listájának megjelenítése" + +msgid "Global shortcuts" +msgstr "Globális gyorsbillentyűk" + +msgid "Rotate View" +msgstr "Nézet elforgatása" + +msgid "Pan View" +msgstr "Pásztázó nézet" + +msgid "Mouse wheel" +msgstr "Egérgörgő" + +msgid "Zoom View" +msgstr "Nagyítás nézet" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Automatikusan beállítja a kijelölt objektumok vagy az összes objektum " +"tájolását. Ha vannak kijelölt objektumok, akkor csak a kijelölteket, " +"ellenkező esetben az aktuális tálcán lévő összes objektumot orientálja." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Az oldalsáv összecsukása/kinyitása" + +msgid "⌘+Any arrow" +msgstr "⌘+Bármilyen nyíl gomb" + +msgid "Movement in camera space" +msgstr "Mozgás a kameratérben" + +msgid "⌥+Left mouse button" +msgstr "⌥+Bal egérgomb" + +msgid "Select a part" +msgstr "Válassz egy tárgyat" + +msgid "⌘+Left mouse button" +msgstr "⌘+Bal egérgomb" + +msgid "Select multiple objects" +msgstr "Több objektum kijelölése" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+Bármelyik nyílgomb" + +msgid "Alt+Left mouse button" +msgstr "Alt+bal egérgomb" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+Bal egérgomb" + +msgid "Shift+Left mouse button" +msgstr "Shift+Bal egérgomb" + +msgid "Select objects by rectangle" +msgstr "Objektumok kijelölése téglalapok alapján" + +msgid "Arrow Up" +msgstr "Felfelé nyíl" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Kijelölés mozgatása 10 mm-rel pozitív Y irányban" + +msgid "Arrow Down" +msgstr "Lefelé nyíl" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Kijelölés mozgatása 10 mm-rel negatív Y irányban" + +msgid "Arrow Left" +msgstr "Balra nyíl" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Kijelölés mozgatása 10 mm-rel negatív X irányban" + +msgid "Arrow Right" +msgstr "Jobbra nyíl" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Kijelölés mozgatása 10 mm-rel pozitív X irányban" + +msgid "Shift+Any arrow" +msgstr "Shift+Bármelyik nyílgomb" + +msgid "Movement step set to 1 mm" +msgstr "Mozgatás lépéstávolsága 1mm-re állítva" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "filament hozzárendelése az objektumhoz/tárgyhoz" + +msgid "Camera view - Default" +msgstr "Kameranézet - Alapértelmezett" + +msgid "Camera view - Top" +msgstr "Kameranézet - Felülről" + +msgid "Camera view - Bottom" +msgstr "Kameranézet - Alulról" + +msgid "Camera view - Front" +msgstr "Kameranézet - Elölről" + +msgid "Camera view - Behind" +msgstr "Kameranézet - Hátulról" + +msgid "Camera Angle - Left side" +msgstr "Kameranézet - Bal oldal" + +msgid "Camera Angle - Right side" +msgstr "Kameranézet - Jobb oldal" + +msgid "Select all objects" +msgstr "Összes objektum kijelölése" + +msgid "Gizmo move" +msgstr "Gizmo move" + +msgid "Gizmo scale" +msgstr "Gizmo scale" + +msgid "Gizmo rotate" +msgstr "Gizmo rotate" + +msgid "Gizmo cut" +msgstr "Gizmo cut" + +msgid "Gizmo Place face on bed" +msgstr "Gizmo Place face on bed" + +msgid "Gizmo SLA support points" +msgstr "Gizmo SLA support points" + +msgid "Gizmo FDM paint-on seam" +msgstr "Gizmo FDM paint-on seam" + +msgid "Gizmo Text emboss / engrave" +msgstr "" + +msgid "Zoom in" +msgstr "Zoom közelítés" + +msgid "Zoom out" +msgstr "Zoom távolítás" + +msgid "Switch between Prepare/Preview" +msgstr "" + +msgid "Plater" +msgstr "Plater" + +msgid "Move: press to snap by 1mm" +msgstr "Move: press to snap by 1mm" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Egérgörgő" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Támasz/Színfestés: toll méretének beállítása" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Egérgörgő" + +msgid "Support/Color Painting: adjust section position" +msgstr "Támasz/Színfestés: metszet pozíciójának beállítása" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Egérgörgő" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Egérgörgő" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Extruder szám beállítása az objektumok és tárgyak számára" + +msgid "Delete objects, parts, modifiers " +msgstr "Objektumok, tárgyak, módosítók törlése " + +msgid "Select the object/part and press space to change the name" +msgstr "" +"Válaszd ki az objektumot/tárgyat, és nyomd meg a szóközt a név " +"megváltoztatásához" + +msgid "Mouse click" +msgstr "Egérkattintás" + +msgid "Select the object/part and mouse click to change the name" +msgstr "" +"Válaszd ki az objektumot/tárgyat, és kattints az egérrel a név " +"megváltoztatásához" + +msgid "Objects List" +msgstr "Tárgyak listája" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Függőleges csúszka - Az aktív csúszka felfelé mozgatása" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Függőleges csúszka - Az aktív csúszka lefelé mozgatása" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Vízszintes csúszka - Az aktív csúszka balra mozgatása" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Vízszintes csúszka - Az aktív csúszka jobbra mozgatása" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "Függőleges csúszka egyréteges módjának ki/bekapcsolása" + +msgid "On/Off g-code window" +msgstr "" + +msgid "Move slider 5x faster" +msgstr "Csúszka 5x gyorsabb mozgatása" + +msgid "Shift+Mouse wheel" +msgstr "Shift+Egérgörgő" + +msgid "Horizontal slider - Move to start position" +msgstr "" + +msgid "Horizontal slider - Move to last position" +msgstr "" + +msgid "Release Note" +msgstr "Verzióinformáció" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "%s verzió frissítési információi:" + +msgid "Network plug-in update" +msgstr "Hálózati bővítmény frissítése" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Kattints az OK gombra a hálózati bővítmény frissítéséhez a Snapmaker Orca " +"következő indításakor." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "Új hálózati bővítmény (%s) érhető el. Szeretnéd telepíteni?" + +msgid "New version of Snapmaker Orca" +msgstr "A Snapmaker Orca új verziója" + +msgid "Skip this Version" +msgstr "Verzió kihagyása" + +msgid "Done" +msgstr "Done" + +msgid "resume" +msgstr "resume" + +msgid "Resume Printing" +msgstr "Resume Printing" + +msgid "Resume Printing(defects acceptable)" +msgstr "Resume Printing (defects acceptable)" + +msgid "Resume Printing(problem solved)" +msgstr "Resume Printing (problem solved)" + +msgid "Stop Printing" +msgstr "Stop Printing" + +msgid "Check Assistant" +msgstr "Check Assistant" + +msgid "Filament Extruded, Continue" +msgstr "Filament Extruded, Continue" + +msgid "Not Extruded Yet, Retry" +msgstr "Not Extruded Yet, Retry" + +msgid "Finished, Continue" +msgstr "Finished, Continue" + +msgid "Load Filament" +msgstr "Filament betöltés" + +msgid "Filament Loaded, Resume" +msgstr "Filament Loaded, Resume" + +msgid "View Liveview" +msgstr "View Liveview" + +msgid "Confirm and Update Nozzle" +msgstr "Fúvóka lecserélésének megerősítése" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "LAN kapcsolódás sikertelen (nyomtatási fájl küldése)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"1. lépés: Ellenőrizd, hogy a Snapmaker Orca és a nyomtató ugyanazon a helyi " +"hálózaton van." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"2. lépés: Ha az alábbi IP és hozzáférési kód eltér a nyomtatón láthatótól, " +"kérjük, javítsd ki őket." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Hozzáférési kód" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Hol találom a nyomtató IP címét és a hozzáférési kódot?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"3. lépés: Pingeld meg az IP-címet a csomagveszteség és késleltetés " +"ellenőrzéséhez." + +msgid "Test" +msgstr "Teszt" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP és hozzáférési kód leellenőrizve! Bezárhatod az ablakot" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "" +"Sikertelen kapcsolódás, kérjük, ellenőrizd az IP-t és a hozzáférési kódot" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Sikertelen kapcsolódás! Ha az IP-cím és a hozzáférési kód helyes,\n" +"folytasd a 3. lépéssel a hálózati problémák elhárításához" + +msgid "Model:" +msgstr "Modell:" + +msgid "Serial:" +msgstr "Sorozatszám:" + +msgid "Version:" +msgstr "Verzió:" + +msgid "Update firmware" +msgstr "Firmware frissítése" + +msgid "Beta version" +msgstr "Béta verzió" + +msgid "Latest version" +msgstr "Legfrissebb verzió" + +msgid "Updating" +msgstr "Frissítés" + +msgid "Updating failed" +msgstr "A frissítés nem sikerült" + +msgid "Updating successful" +msgstr "Sikeres frissítés" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Biztos, hogy frissíteni akarsz? Ez körülbelül 10 percet vesz igénybe. Ne " +"kapcsold ki a nyomtatót, amíg a frissítés tart." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Fontos frissítést találtunk, amelyet a nyomtatás előtt telepíteni kell. " +"Szeretnél most frissíteni? A frissítés később is elvégezhető a „Firmware " +"frissítése“ menüpontban." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"A firmware verziója rendellenes. A nyomtatás előtt javításra és frissítésre " +"van szükség. Szeretnél frissíteni most? A frissítés később is elvégezhető a " +"Snapmaker Orca következő indításakor." + +msgid "Extension Board" +msgstr "Bővítőpanel" + +msgid "Saving objects into the 3mf failed." +msgstr "Az objektumok mentése a 3mf-be sikertelen volt." + +msgid "Only Windows 10 is supported." +msgstr "Csak a Windows 10 támogatott." + +msgid "Failed to initialize the WinRT library." +msgstr "Nem sikerült a WinRT könyvtár inicializálása." + +msgid "Exporting objects" +msgstr "Objektumok exportálása" + +msgid "Failed loading objects." +msgstr "Nem sikerült betölteni az objektumokat." + +msgid "Repairing object by Windows service" +msgstr "Objektum javítása Windows szolgáltatással" + +msgid "Repair failed." +msgstr "Sikertelen javítás." + +msgid "Loading repaired objects" +msgstr "Javított objektumok betöltése" + +msgid "Exporting 3mf file failed" +msgstr "3MF fájl exportálása sikertelen" + +msgid "Import 3mf file failed" +msgstr "3mf fájl importálása sikertelen" + +msgid "Repaired 3mf file does not contain any object" +msgstr "A megjavított 3mf fájl nem tartalmaz objektumot" + +msgid "Repaired 3mf file contains more than one object" +msgstr "A megjavított 3mf fájl egynél több objektumot tartalmaz" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "A javított 3mf fájl nem tartalmaz térfogatot." + +msgid "Repaired 3mf file contains more than one volume" +msgstr "The repaired 3mf file contains more than one volume." + +msgid "Repair finished" +msgstr "Javítás befejezve" + +msgid "Repair canceled" +msgstr "Javítás megszakítva" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "%1% fájl másolása sikertelen a következő helyre: %2% Hiba: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" +"Kérjük, ellenőrizd a nem mentett módosításokat a konfiguráció frissítése " +"előtt." + +msgid "Configuration package: " +msgstr "" + +msgid " updated to " +msgstr "" + +msgid "Open G-code file:" +msgstr "G-kód fájl megnyitása:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Az egyik objektum üres kezdőréteggel rendelkezik, ezért nem nyomtatható. " +"Kérjük, vágd le az alját, vagy engedélyezd a támaszokat." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "" +"Az objektumnak üres rétegei vannak %1% és %2% között, ezért nem nyomtatható." + +#, boost-format +msgid "Object: %1%" +msgstr "Objektum: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Az objektum ezen magasságban lévő részei túl vékonyak lehetnek, vagy az " +"objektum hibás hálóval rendelkezik." + +msgid "No object can be printed. Maybe too small" +msgstr "Objektum nem nyomtatható ki. Lehet, hogy túl kicsi." + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Nem sikerült a G-kód generálása érvénytelen egyedi G-kód miatt.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" +"Kérjük, ellenőrizd az egyedi G-kódot vagy használd az alapértelmezett egyedi " +"G-kódot." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "G-kód generálása: %1% réteg" + +msgid "Inner wall" +msgstr "Belső fal" + +msgid "Outer wall" +msgstr "Külső fal" + +msgid "Overhang wall" +msgstr "Túlnyúló fal" + +msgid "Sparse infill" +msgstr "Kitöltés" + +msgid "Internal solid infill" +msgstr "Belső szilárd kitöltés" + +msgid "Top surface" +msgstr "Felső felület" + +msgid "Bottom surface" +msgstr "Alsó felület" + +msgid "Internal Bridge" +msgstr "" + +msgid "Gap infill" +msgstr "Réskitöltés" + +msgid "Support interface" +msgstr "Támasz érintkező felület" + +msgid "Support transition" +msgstr "Támasz átmenet" + +msgid "Multiple" +msgstr "Többszörös" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Nem sikerült kiszámítani %1% vonalszélességét. “%2%” értéke nem érhető el " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" + +msgid "undefined error" +msgstr "meghatározatlan hiba" + +msgid "too many files" +msgstr "túl sok fájl" + +msgid "file too large" +msgstr "fájl túl nagy" + +msgid "unsupported method" +msgstr "nem támogatott módszer" + +msgid "unsupported encryption" +msgstr "nem támogatott titkosítás" + +msgid "unsupported feature" +msgstr "nem támogatott funkció" + +msgid "failed finding central directory" +msgstr "nem sikerült megtalálni a központi könyvtárat" + +msgid "not a ZIP archive" +msgstr "nem ZIP archívum" + +msgid "invalid header or corrupted" +msgstr "érvénytelen fejléc vagy sérült" + +msgid "unsupported multidisk" +msgstr "A RAID-re mentés nem támogatott." + +msgid "decompression failed" +msgstr "sikertelen kicsomagolás" + +msgid "compression failed" +msgstr "tömörítés sikertelen" + +msgid "unexpected decompressed size" +msgstr "váratlan kitömörítési méret" + +msgid "CRC check failed" +msgstr "CRC-ellenőrzés sikertelen" + +msgid "unsupported central directory size" +msgstr "nem támogatott központi mappa méret" + +msgid "allocation failed" +msgstr "sikertelen allokáció" + +msgid "file open failed" +msgstr "fájl megnyitása sikertelen" + +msgid "file create failed" +msgstr "fájl létrehozása sikertelen" + +msgid "file write failed" +msgstr "fájl írása sikertelen" + +msgid "file read failed" +msgstr "fájl olvasása sikertelen" + +msgid "file close failed" +msgstr "fájl bezárása sikertelen" + +msgid "file seek failed" +msgstr "fájl beolvasása sikertelen" + +msgid "file stat failed" +msgstr "fájl stat sikertelen" + +msgid "invalid parameter" +msgstr "érvénytelen paraméter" + +msgid "invalid filename" +msgstr "érvénytelen fájlnév" + +msgid "buffer too small" +msgstr "túl kicsi puffer" + +msgid "internal error" +msgstr "belső hiba" + +msgid "file not found" +msgstr "fájl nem található" + +msgid "archive too large" +msgstr "archívum túl nagy" + +msgid "validation failed" +msgstr "sikertelen érvényesítés" + +msgid "write callback failed" +msgstr "írás callback sikertelen" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% túl közel van a tiltott területhez, a nyomtatás során előfordulhatnak " +"ütközések." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "" +"%1% túl közel van más tárgyakhoz, a nyomtatás során előfordulhatnak " +"ütközések." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% túl magas, a nyomtatás során előfordulhatnak ütközések." + +msgid " is too close to others, there may be collisions when printing." +msgstr "" +"túl közel van más tárgyakhoz, a nyomtatás során előfordulhatnak ütközések." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +"túl közel van a tiltott területhez, a nyomtatás során előfordulhatnak " +"ütközések." + +msgid "Prime Tower" +msgstr "Törlő torony" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr "" +" túl közel van más tárgyakhoz, a nyomtatás során előfordulhatnak ütközések.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" +" túl közel van a tiltott területhez, a nyomtatás során előfordulhatnak " +"ütközések.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Nem nyomtathatsz több, nagy hőmérséklet-különbséggel rendelkező filamentet " +"egyidőben. Ellenkező esetben az extruder és a fúvóka eltömődhet vagy " +"megsérülhet nyomtatás közben" + +msgid "No extrusions under current settings." +msgstr "A jelenlegi beállítások mellett nincsenek extrudálások." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"A sima timelapse funkció nem használható, ha a nyomtatás „Tárgyanként“ " +"sorrendre van állítva." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Kérjük, válaszd a \"Tárgyanként\" nyomtatási sorrendet több tárgy spirálváza " +"módban történő nyomtatásához." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"A spirál (váza) mód nem működik, ha egy objektum egynél több anyagot " +"tartalmaz." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "" + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" + +msgid "Variable layer height is not supported with Organic supports." +msgstr "A változó rétegmagasság nem működik az organikus támaszokkal." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Nem használhatsz különböző fúvókaátmérőt és filamentátmérőt, ha a " +"törlőtorony engedélyezve van." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"A törlőtorony jelenleg csak relatív extruder címzéssel használható " +"(use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"A szivárgás elleni védelem nem működik, ha a törlőtorony engedélyezve van." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"A törlőtorony jelenleg csak a Marlin, RepRap/Sprinter, RepRapFirmware és " +"Repetier G-kód szoftverekkel használható." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "A prime tower is not supported in “By object” print." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"A prime tower is not supported when adaptive layer height is on. It requires " +"that all objects have the same layer height." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"A prime tower requires any “support gap” to be a multiple of layer height." + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "A prime tower requires that all objects have the same layer height." + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"A prime tower requires that all objects are printed over the same number of " +"raft layers." + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"A prime tower requires that all objects are sliced with the same layer " +"height." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"A törlőtorony használatához minden objektumnak azonos változó " +"rétegmagassággal kell rendelkeznie." + +msgid "Too small line width" +msgstr "Túl kicsi a vonalszélesség" + +msgid "Too large line width" +msgstr "Túl nagy vonalszélesség" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"A prime tower requires that support has the same layer height as the object." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Támasz kényszerítőket használtál, de a támaszok nincsenek engedélyezve. " +"Kérjük, engedélyezd a támaszokat." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "A rétegmagasság nem lehet nagyobb a fúvóka átmérőjénél." + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "%d. tálca: %s nem használható %s filamenttel." + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" + +msgid "Generating skirt & brim" +msgstr "Szoknya & perem generálása" + +msgid "Exporting G-code" +msgstr "G-kód exportálása" + +msgid "Generating G-code" +msgstr "G-kód generálása" + +msgid "Failed processing of the filename_format template." +msgstr "Nem sikerült feldolgozni a fájlnév_formátum sablont." + +msgid "Printable area" +msgstr "Nyomtatható terület" + +msgid "Bed exclude area" +msgstr "Asztal kizárási terület" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"A nyomtatásra nem használható terület az XY síkban. Az X1 nyomtatók például " +"a bal első sarkot használják a filament elvágására filamentcserét követően. " +"A terület sokszögként van meghatározva a következő formátumban: XxY, XxY, ..." + +msgid "Bed custom texture" +msgstr "Egyedi tárgyasztal textúra" + +msgid "Bed custom model" +msgstr "Egyedi tárgyasztal modell" + +msgid "Elephant foot compensation" +msgstr "Elefántláb kompenzáció" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Zsugorítja a kezdőréteget a tárgyasztalon, hogy kompenzálja az elefántláb-" +"hatást" + +msgid "Elephant foot compensation layers" +msgstr "" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" + +msgid "layers" +msgstr "réteg" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Az egyes rétegek szeletelési magassága. A kisebb rétegmagasság pontosabb " +"nyomtatást és több időt jelent" + +msgid "Printable height" +msgstr "Nyomtatási magasság" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "" +"Ez a maximális nyomtatható magasság, amelyet a nyomtatótér magassága " +"korlátoz." + +msgid "Preferred orientation" +msgstr "" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" + +msgid "Printer preset names" +msgstr "Nyomtató beállítások neve" + +msgid "Use 3rd-party print host" +msgstr "" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" + +msgid "Hostname, IP or URL" +msgstr "Hosztnév, IP vagy URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"A Snapmaker Orca képes G-kód fájlokat feltölteni a nyomtatóra. Ennek a mezőnek " +"tartalmaznia kell a nyomtató hostnevét, IP-címét vagy URL-címét. A HAProxy " +"mögött lévő nyomtató alapszintű hitelesítéssel érhető el, ha a " +"felhasználónevet és a jelszót a következő formátumban beleírod az URL-be: " +"https://username:password@your-octopi-address/" + +msgid "Device UI" +msgstr "Eszköz UI" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Add meg az eszköz felhasználói felületének URL-címét, ha az nem azonos a " +"print_host címével." + +msgid "API Key / Password" +msgstr "API kulcs / jelszó" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"A Snapmaker Orca képes G-kód fájlokat feltölteni a nyomtatóra. Ennek a mezőnek " +"tartalmaznia kell a hitelesítéshez szükséges API-kulcsot vagy jelszót." + +msgid "Name of the printer" +msgstr "A nyomtató neve" + +msgid "HTTPS CA File" +msgstr "HTTPS CA fájl" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"A HTTP-alapú OctoPrint kapcsolatokhoz megadható egy egyedi CA-tanúsítvány, " +"crt/pem formátumban. Ha üresen hagyod, az alapértelmezett OS CA tanúsítvány " +"lesz használva." + +msgid "User" +msgstr "Felhasználó" + +msgid "Password" +msgstr "Jelszó" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "A HTTPS-tanúsítvány visszavonás ellenőrzésének figyelmen kívül hagyása" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Hiányzó vagy offline terjesztési pontok esetén figyelmen kívül hagyja a " +"HTTPS-tanúsítványok visszavonásának ellenőrzését. Ez az opció akkor lehet " +"segítségedre, ha nem sikerül csatlakoznod egy általad aláírt tanúsítvánnyal." + +msgid "Names of presets related to the physical printer" +msgstr "A fizikai nyomtatóhoz kapcsolódó beállítások nevei" + +msgid "Authorization Type" +msgstr "Hitelesítés típusa" + +msgid "API key" +msgstr "API-kulcs" + +msgid "HTTP digest" +msgstr "HTTP digest" + +msgid "Avoid crossing wall" +msgstr "Kerülje a falak keresztezését" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Kerülje a falon keresztül való áthaladást, ami nyomot hagyhat a felületen" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Kerülje a falak keresztezését - Max kitérő hossza" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"A kitérő maximális hossza a fal keresztezésének elkerüléséhez: a nyomtató " +"figyelmen kívül hagyja a kitérést, ha az ehhez szükséges távolság nagyobb, " +"mint ez az érték. A kitérő megadható abszolút értékként vagy a közvetlen " +"útvonal százalékában (például 50%). Állítsd az értéket 0-ra, ha ki szeretnéd " +"kapcsolni ezt az opciót." + +msgid "mm or %" +msgstr "mm vagy %" + +msgid "Other layers" +msgstr "Többi réteg" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Az asztal hőmérséklete a kezdőréteg kivételével. A 0 érték azt jelenti, hogy " +"a filament nem támogatja a Cool Plate-re történő nyomtatást" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Az asztal hőmérséklete a kezdeti réteg kivételével. A 0 érték azt jelenti, " +"hogy a szál nem támogatja az Engineering Plate-re történő nyomtatást" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Az asztal hőmérséklete a kezdeti réteg kivételével. A 0 érték azt jelenti, " +"hogy a szál nem támogatja a High Temp Plate-re történő nyomtatást" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Asztalhőmérséklet az első réteg után. A 0 érték azt jelenti, hogy a filament " +"nem támogatja texturált PEI tálcára történő nyomtatást." + +msgid "Initial layer" +msgstr "Kezdőréteg" + +msgid "Initial layer bed temperature" +msgstr "Első réteg asztalhőmérséklete" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"A kezdőréteg asztalhőmérséklete. A 0 érték azt jelenti, hogy a filament nem " +"támogatja a Cool Plate-re történő nyomtatást" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"A kezdőréteg asztalhőmérséklete. A 0 érték azt jelenti, hogy a filament nem " +"támogatja a Engineering Plate-re történő nyomtatást" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"A kezdőréteg asztalhőmérséklete. A 0 érték azt jelenti, hogy a filament nem " +"támogatja a High Temp Plate-re történő nyomtatást" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Az első réteg asztalhőmérsékletének beállított 0 érték azt jelenti, hogy a " +"filament nem támogatja texturált PEI tálcára történő nyomtatást." + +msgid "Bed types supported by the printer" +msgstr "Nyomtató által támogatott asztaltípusok" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "Engineering Plate" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "Az első réteg nyomtatási sorrendje" + +msgid "Other layers print sequence" +msgstr "Other layers print sequence" + +msgid "The number of other layers print sequence" +msgstr "The number of other layers print sequence" + +msgid "Other layers filament sequence" +msgstr "Other layers filament sequence" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "Ez a G-kód minden rétegváltáshoz bekerül a Z tengely emelése előtt." + +msgid "Bottom shell layers" +msgstr "Alsó héj rétegek" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Ez az alsó héj szilárd rétegeinek száma, beleértve az alsó felületi réteget " +"is. Ha az ezzel az értékkel számított vastagság kisebb, mint az alsó héj " +"vastagsága, akkor az alsó héj rétegei növekedni fognak" + +msgid "Bottom shell thickness" +msgstr "Alsó héj vastagság" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"Az alsó szilárd rétegek száma szeleteléskor megnő, ha az alsó héjrétegek " +"vastagsága kisebb ennél az értéknél. Ezzel elkerülhető, hogy túl vékony " +"legyen a héj, ha a rétegmagasság kicsi. A 0 azt jelenti, hogy ez a beállítás " +"ki van kapcsolva, és az alsó héj vastagságát egyszerűen az alsó héjrétegek " +"száma határozza meg." + +msgid "Apply gap fill" +msgstr "" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" + +msgid "Everywhere" +msgstr "Mindenhol" + +msgid "Top and bottom surfaces" +msgstr "" + +msgid "Nowhere" +msgstr "" + +msgid "Force cooling for overhang and bridge" +msgstr "Hűtés kényszerítése túlnyúlásoknál és áthidalásoknál" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Engedélyezd ezt az opciót a tárgyhűtő ventilátor fordulatszámának " +"optimalizálásához a jobb hűtés érdekében túlnyúlásoknál és áthidalásoknál" + +msgid "Fan speed for overhang" +msgstr "Ventilátor fordulatszám túlnyúlásnál" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"A nagy túlnyúlású áthidalások vagy túlnyúló falak nyomtatásakor a tárgyhűtő " +"ventilátor kényszerítve lesz, hogy ezt a fordulatszámot használja. A " +"túlnyúlások és áthidalások hűtésének kikényszerítésével jobb minőség érhető " +"el ezeken a részeken." + +msgid "Cooling overhang threshold" +msgstr "Túlnyúlás hűtésének küszöbértéke" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Kényszeríti a hűtőventilátort, hogy egy adott fordulatszámot használjon, ha " +"a túlnyúlás mértéke meghaladja ezt az értéket. Százalékban van kifejezve, " +"ami azt jelzi, hogy a nyomtatott vonal hány százaléka maradhat az alsóbb " +"rétegek alátámasztása nélkül. A 0%%-os érték bekapcsolja a hűtést a külső " +"fal teljes szélességén, függetlenül a túlnyúlás mértékétől." + +msgid "Bridge infill direction" +msgstr "" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Az áthidalás szögének felülbírálása. A 0 érték azt jelenti, hogy az " +"áthidalás szöge automatikusan kerül kiszámításra. Máskülönben a megadott " +"érték kerül alkalmazásra. Ha az áthidalást a falakkal párhuzamosra szeretnéd " +"állítani, használj 180°-os értéket." + +msgid "Bridge density" +msgstr "" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" + +msgid "Bridge flow ratio" +msgstr "Áthidalás áramlási sebessége" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Csökkentsd kicsit ezt az értéket (például 0,9-re), hogy ezzel csökkentsd az " +"áthidaláshoz használt anyag mennyiségét, és a megereszkedést" + +msgid "Internal bridge flow ratio" +msgstr "" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" + +msgid "Top surface flow ratio" +msgstr "Felső felület anyagáramlása" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Ez a beállítás a felső szilárd kitöltésnél használt anyag mennyiségét " +"befolyásolja. Kis mértékben csökkentve simább felület érhető el vele." + +msgid "Bottom surface flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" + +msgid "Precise wall" +msgstr "" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" + +msgid "Only one wall on top surfaces" +msgstr "Csak egy fal a felső felületeken" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Csak egy falat használ a sík felső felületeken, hogy több hely maradjon a " +"felső kitöltési mintának" + +msgid "One wall threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" + +msgid "Only one wall on first layer" +msgstr "Only one wall on first layer" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" + +msgid "Extra perimeters on overhangs" +msgstr "" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" + +msgid "Reverse on odd" +msgstr "" + +msgid "Overhang reversal" +msgstr "" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" + +msgid "Reverse only internal perimeters" +msgstr "" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" + +msgid "Bridge counterbore holes" +msgstr "" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" + +msgid "Partially bridged" +msgstr "" + +msgid "Sacrificial layer" +msgstr "" + +msgid "Reverse threshold" +msgstr "" + +msgid "Overhang reversal threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" + +msgid "Classic mode" +msgstr "" + +msgid "Enable this option to use classic mode" +msgstr "" + +msgid "Slow down for overhang" +msgstr "Lassítás túlnyúlásoknál" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Engedélyezd ezt az opciót a nyomtatási sebesség lassításához különböző " +"túlnyúlási szögeknél" + +msgid "Slow down for curled perimeters" +msgstr "" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" + +msgid "mm/s or %" +msgstr "mm/s vagy %" + +msgid "External" +msgstr "" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Az áthidalások és a teljesen túlnyúló falak nyomtatási sebessége" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" + +msgid "Brim width" +msgstr "Perem szélessége" + +msgid "Distance from model to the outermost brim line" +msgstr "A modell és a legkülső peremvonal közötti távolság" + +msgid "Brim type" +msgstr "Perem típusa" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analyzed and calculated automatically." + +msgid "Brim-object gap" +msgstr "Perem-tárgy közötti rés" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"A legbelső peremvonal és a tárgy közötti rés, ami megkönnyítheti a perem " +"eltávolítását" + +msgid "Brim ears" +msgstr "" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "" + +msgid "Brim ear max angle" +msgstr "" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" + +msgid "Brim ear detection radius" +msgstr "" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" + +msgid "Compatible machine" +msgstr "Kompatibilis gép" + +msgid "upward compatible machine" +msgstr "felfelé kompatibilis gép" + +msgid "Compatible machine condition" +msgstr "Kompatibilis gépállapot" + +msgid "Compatible process profiles" +msgstr "Kompatibilis folyamatprofilok" + +msgid "Compatible process profiles condition" +msgstr "Kompatibilis folyamatprofil állapot" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Nyomtatási sorrend, rétegenként vagy tárgyanként" + +msgid "By layer" +msgstr "Rétegenként" + +msgid "By object" +msgstr "Tárgyanként" + +msgid "Intra-layer order" +msgstr "" + +msgid "Print order within a single layer" +msgstr "" + +msgid "As object list" +msgstr "" + +msgid "Slow printing down for better layer cooling" +msgstr "Nyomtatás lelassítása a jobb hűtés érdekében" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Engedélyezd ezt az opciót a nyomtatási sebesség lassításához, hogy a " +"rétegidő ne lehessen kevesebb, mint a \"Max. ventilátor fordulatszám\"-nál " +"megadott küszöbérték.\n" +"Ezáltal a rétegnek több ideje marad visszahűlni és javulhat a kisebb " +"részletek nyomtatási minősége" + +msgid "Normal printing" +msgstr "Normál nyomtatás" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"Ez az alapértelmezett gyorsulás mind a normál nyomtatáshoz, mind az első " +"réteg utáni mozgáshoz." + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Alapértelmezett filament profil" + +msgid "Default filament profile when switch to this machine profile" +msgstr "Alapértelmezett filament profil, ha erre a gép profilra váltasz" + +msgid "Default process profile" +msgstr "Alapértelmezett folyamat profil" + +msgid "Default process profile when switch to this machine profile" +msgstr "Alapértelmezett folyamat profil, ha erre a gép profilra váltasz" + +msgid "Activate air filtration" +msgstr "Activate air filtration" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "Fan speed" +msgstr "Ventilátor fordulatszám" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Az elszívó ventilátor sebessége nyomtatás közben: ez a sebesség felülírja a " +"sebességet a filament egyéni G-kódjában." + +msgid "Speed of exhaust fan after printing completes" +msgstr "" + +msgid "No cooling for the first" +msgstr "Nincs hűtés az első" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Kikapcsolja a hűtést a megadott első pár rétegnél. A hűtés kikapcsolása " +"segítheti a jobb tárgyasztalhoz való tapadást" + +msgid "Don't support bridges" +msgstr "Ne támassza alá az áthidalásokat" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Nem támasztja alá az áthidalásokat, ezáltal támaszanyagot spórolva. Az " +"áthidalások általában támasz nélkül is jól nyomtathatók, ha nem túl hosszúak" + +msgid "Thick bridges" +msgstr "Vastag áthidalások" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Ha engedélyezve van, az áthidalások megbízhatóbbak, nagyobb távolságokat " +"tudnak áthidalni, de rosszabbul nézhetnek ki.\n" +"Ha ki van kapcsolva, az áthidalások jobban néznek ki, de csak a rövidebb " +"áthidalt távolságokon megbízhatóak." + +msgid "Thick internal bridges" +msgstr "" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" + +msgid "Don't filter out small internal bridges (beta)" +msgstr "" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" + +msgid "Disabled" +msgstr "Letiltva" + +msgid "Limited filtering" +msgstr "" + +msgid "No filtering" +msgstr "" + +msgid "Max bridge length" +msgstr "Maximum áthidalás hossza" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Ez a maximális hossza azoknak az áthidalásoknak, amelyeknek nincs szükségük " +"alátámasztásra. Állítsd 0-ra, ha azt szeretnéd, hogy minden áthidalás alá " +"legyen támasztva, vagy állítsd egy nagyon nagy értékre, ha azt szeretnéd, " +"hogy egyetlen áthidalás se legyen alátámasztva." + +msgid "End G-code" +msgstr "Befejező G-kód" + +msgid "End G-code when finish the whole printing" +msgstr "Befejező G-kód az egész nyomtatás befejezésekor" + +msgid "Between Object Gcode" +msgstr "Objektumok közötti G-kód" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"A tárgyak nyomtatása között használt G-kód. Ez a paraméter csak akkor " +"működik, ha a nyomtatás tárgyankénti sorrendben történik." + +msgid "End G-code when finish the printing of this filament" +msgstr "Befejező G-kód a filament nyomtatásának befejezésekor" + +msgid "Ensure vertical shell thickness" +msgstr "Függőleges héjvastagság biztosítása" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" + +msgid "Critical Only" +msgstr "" + +msgid "Moderate" +msgstr "" + +msgid "Top surface pattern" +msgstr "Felső felület mintázata" + +msgid "Line pattern of top surface infill" +msgstr "Ez a felső felület kitöltésének mintája." + +msgid "Concentric" +msgstr "Koncentrikus" + +msgid "Rectilinear" +msgstr "Vonalak" + +msgid "Monotonic" +msgstr "Monotonikus" + +msgid "Monotonic line" +msgstr "Monotonikus vonal" + +msgid "Aligned Rectilinear" +msgstr "Igazított vonal" + +msgid "Hilbert Curve" +msgstr "Hilbert-görbe" + +msgid "Archimedean Chords" +msgstr "Archimédeszi vonalak" + +msgid "Octagram Spiral" +msgstr "Nyolcágú spirál" + +msgid "Bottom surface pattern" +msgstr "Alsó felület mintázata" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "Ez az alsó felület kitöltésének mintája, kivéve az áthidalásokat." + +msgid "Internal solid infill pattern" +msgstr "Belső tömör kitöltés mintája" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"A legkülső látható fal sebessége. A jobb minőség érdekében ez lassabb, mint " +"a belső fal sebessége." + +msgid "Small perimeters" +msgstr "Kis peremek" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" + +msgid "Small perimeters threshold" +msgstr "" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"A kis peremek hosszának küszöbértékét határozza meg. Az alapértelmezett " +"érték 0 mm" + +msgid "Walls printing order" +msgstr "" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" + +msgid "Inner/Outer" +msgstr "" + +msgid "Outer/Inner" +msgstr "" + +msgid "Inner/Outer/Inner" +msgstr "" + +msgid "Print infill first" +msgstr "Kitöltés a falak előtt" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" + +msgid "Wall loop direction" +msgstr "" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" + +msgid "Counter clockwise" +msgstr "" + +msgid "Clockwise" +msgstr "" + +msgid "Height to rod" +msgstr "Magasság a rúdig" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"A fúvóka hegye és az alsó rúd közötti távolság. Objektumonként történő " +"nyomtatás során az ütközések elkerülésére szolgál." + +msgid "Height to lid" +msgstr "Magasság a fedélig" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"A fúvóka hegye és a fedél közötti távolság. Objektumonként történő nyomtatás " +"során az ütközések elkerülésére szolgál." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Az extruder körüli szabadon hagyott terület sugara. Objektumonként történő " +"nyomtatás során az ütközések elkerülésére szolgál." + +msgid "Nozzle height" +msgstr "Fúvóka magassága" + +msgid "The height of nozzle tip." +msgstr "A fúvókacsúcs magassága." + +msgid "Bed mesh min" +msgstr "" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Bed mesh max" +msgstr "" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Probe point distance" +msgstr "" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" + +msgid "Mesh margin" +msgstr "" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" + +msgid "Extruder Color" +msgstr "Extruder szín" + +msgid "Only used as a visual help on UI" +msgstr "Csak vizuális segédként használatos a felhasználói felületen" + +msgid "Extruder offset" +msgstr "Extruder offszet" + +msgid "Flow ratio" +msgstr "Anyagáramlás" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"Az anyag térfogata megváltozhat az olvadt és a kristályos állapot közötti " +"átmenet során. Ez a beállítás arányosan megváltoztatja az anyagáramlást a G-" +"kódban. Az ajánlott értéktartomány 0,95 és 1,05 között van. Ennek az " +"értéknek a változtatásával szép sík felületet kaphatsz, ha úgy tapasztalod, " +"hogy túl sok vagy kevés az anyagáramlás." + +msgid "Enable pressure advance" +msgstr "Nyomáselőtolás engedélyezése" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" + +msgid "Keep fan always on" +msgstr "Ventilátor mindig bekapcsolva" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Ezen beállítás engedélyezése esetén a tárgyhűtő ventilátor soha nem áll le, " +"és legalább a minimális fordulatszámon fog járni, hogy csökkentse az indítás " +"és leállítás gyakoriságát" + +msgid "Don't slow down outer walls" +msgstr "" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "Rétegidő" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"A tárgyhűtő ventilátor azon rétegek esetében lesz engedélyezve, amelyek " +"becsült ideje rövidebb ennél az értéknél. A ventilátor fordulatszáma a " +"rétegnyomtatási időnek megfelelően skálázódik a minimális és maximális " +"ventilátor fordulatszám között" + +msgid "Default color" +msgstr "Alapértelmezett szín" + +msgid "Default filament color" +msgstr "Alapértelmezett filament szín" + +msgid "Filament notes" +msgstr "Filament notes" + +msgid "You can put your notes regarding the filament here." +msgstr "You can put your notes regarding the filament here." + +msgid "Required nozzle HRC" +msgstr "Szükséges fúvóka HRC-érték" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"A filament nyomtatásához szükséges fúvóka minimum HRC értéke. A 0 azt " +"jelenti, hogy nem ellenőrzi a fúvóka HRC értékét." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Ezzel a beállítással adhatod meg a másodpercenként megolvasztható és " +"extrudálható maximális filamentmennyiséget. A nyomtatási sebességet a " +"maximális térfogatsebesség korlátozhatja, túl magas és ésszerűtlen sebesség " +"esetén. Ez az érték nem lehet 0." + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Filament betöltési idő" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Az új filament betöltésének ideje filament váltáskor, csak statisztikai " +"célokra van használva." + +msgid "Filament unload time" +msgstr "Filament kitöltési idő" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"A régi filament kitöltésének ideje filament váltáskor, csak statisztikai " +"célokra van használva." + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"A filament átmérő a G-kódban az extrudálás kiszámításához szükséges, ezért " +"fontos, hogy pontos legyen" + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" + +msgid "Loading speed" +msgstr "Betöltési sebesség" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "A filament törlőtoronyra való betöltéséhez használt sebesség." + +msgid "Loading speed at the start" +msgstr "Betöltési sebesség kezdéskor" + +msgid "Speed used at the very beginning of loading phase." +msgstr "A betöltési fázis legelején használt sebesség." + +msgid "Unloading speed" +msgstr "Kiürítési sebesség" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"A filament törlőtoronynál való kiürítéséhez használt sebesség (nem " +"befolyásolja a kiürítés kezdeti részét közvetlenül a tömörítés után)." + +msgid "Unloading speed at the start" +msgstr "Kiürítési sebesség kezdéskor" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "A filament kiürítésének sebessége közvetlenül a tömörítés után." + +msgid "Delay after unloading" +msgstr "Várakozás a kiürítés után" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"A várakozási idő az filament kiürítése után. Segíthet megbízható " +"szerszámcserét elérni rugalmas anyagok esetén, amelyeknek több időre lehet " +"szükségük ahhoz, hogy az eredeti méretükre zsugorodjanak." + +msgid "Number of cooling moves" +msgstr "Hűtési lépések száma" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"A filament hűtése úgy történik, hogy oda-vissza mozgatják a hűtőcsőben. Adja " +"meg a kívánt lépések számát." + +msgid "Speed of the first cooling move" +msgstr "Az első hűtési lépés sebessége" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "A hűtési lépések fokozatosan felgyorsulnak ettől a sebességtől kezdve." + +msgid "Minimal purge on wipe tower" +msgstr "Minimális tisztítás a törlőtoronyban" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" + +msgid "Speed of the last cooling move" +msgstr "Az utolsó hűtési lépés sebessége" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "A hűtési lépések fokozatosan felgyorsulnak erre a sebességre." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Az az idő, amíg a nyomtató vezérlő szoftvere (vagy a Multi Material Unit " +"2.0) új filamentet tölt be a szerszámcsere során (a T kód végrehajtásakor). " +"Ezt az időt a G-kód időbecslő hozzáadja a teljes nyomtatási időhöz." + +msgid "Ramming parameters" +msgstr "Tömörítési paraméterek" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Ez a karakterlánc a TömörítésPárbeszéd ablakban szerkeszthető, és a " +"tömörítéssel kapcsolatos paramétereket tartalmaz." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Az az idő, amíg a nyomtató vezérlő szoftvere (vagy a Multi Material Unit " +"2.0) az előző Filamenet kiüríti a szerszámcsere során (a T kód " +"végrehajtásakor). Ezt az időt a G-kód időbecslő hozzáadja a teljes " +"nyomtatási időhöz." + +msgid "Enable ramming for multitool setups" +msgstr "" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" + +msgid "Multitool ramming volume" +msgstr "" + +msgid "The volume to be rammed before the toolchange." +msgstr "" + +msgid "Multitool ramming flow" +msgstr "" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "" + +msgid "Density" +msgstr "Sűrűség" + +msgid "Filament density. For statistics only" +msgstr "Filament sűrűsége. Csak statisztikákhoz kerül felhasználásra" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "Filament anyagának típusa" + +msgid "Soluble material" +msgstr "Oldható anyag" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"Az oldható anyagot általában a támaszok és érintkező felületek nyomtatására " +"használják" + +msgid "Support material" +msgstr "Támaszanyag" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"A támaszanyag a támaszok és a támasz érintkező felületeinek nyomtatásához " +"van használva." + +msgid "Softening temperature" +msgstr "Lágyulási hőmérséklet" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than this, it's highly recommended to open the front " +"door and/or remove the upper glass to avoid clogs." + +msgid "Price" +msgstr "Költség" + +msgid "Filament price. For statistics only" +msgstr "Filament költsége. Csak statisztikákhoz kerül felhasználásra" + +msgid "money/kg" +msgstr "pénz/kg" + +msgid "Vendor" +msgstr "Gyártó" + +msgid "Vendor of filament. For show only" +msgstr "Filamentgyártó." + +msgid "(Undefined)" +msgstr "(Undefined)" + +msgid "Sparse infill direction" +msgstr "" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"A ritkás kitöltési minta szöge, amely a vonal kezdő- vagy fő irányát " +"szabályozza" + +msgid "Solid infill direction" +msgstr "" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" + +msgid "Rotate solid infill direction" +msgstr "" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "" + +msgid "Sparse infill density" +msgstr "Kitöltés sűrűsége" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" + +msgid "Sparse infill pattern" +msgstr "Kitöltési mintázat" + +msgid "Line pattern for internal sparse infill" +msgstr "Ez a belső ritkás kitöltés mintája." + +msgid "Grid" +msgstr "Rács" + +msgid "Line" +msgstr "Vonal" + +msgid "Cubic" +msgstr "Kockás" + +msgid "Tri-hexagon" +msgstr "Háromszögletű" + +msgid "Gyroid" +msgstr "Gyroid" + +msgid "Honeycomb" +msgstr "Méhsejt" + +msgid "Adaptive Cubic" +msgstr "Adaptív kocka" + +msgid "3D Honeycomb" +msgstr "3D-méhsejt" + +msgid "Support Cubic" +msgstr "Támasz kocka" + +msgid "Lightning" +msgstr "Világítás" + +msgid "Cross Hatch" +msgstr "Cross Hatch" + +msgid "Sparse infill anchor length" +msgstr "" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" + +msgid "0 (no open anchors)" +msgstr "0 (no open anchors)" + +msgid "1000 (unlimited)" +msgstr "1000 (unlimited)" + +msgid "Maximum length of the infill anchor" +msgstr "A kitöltőhorgony maximális hossza" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" + +msgid "0 (Simple connect)" +msgstr "" + +msgid "Acceleration of outer walls" +msgstr "" + +msgid "Acceleration of inner walls" +msgstr "" + +msgid "Acceleration of travel moves" +msgstr "" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"A felső felületi kitöltés gyorsulása. Alacsonyabb érték használata " +"javíthatja a felső felület minőségét" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Gyorsulás a külső falnál: alacsonyabb érték használata javíthatja a " +"minőséget." + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" + +msgid "mm/s² or %" +msgstr "mm/s² or %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Gyorsulás a ritkás kitöltéseknél. Ha az érték százalékban van megadva (pl. " +"100%), akkor az alapértelmezett gyorsulás alapján kerül kiszámításra." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"A kezdőréteg gyorsulása. Alacsonyabb érték használata javíthatja a " +"tárgyasztalhoz való tapadást" + +msgid "Enable accel_to_decel" +msgstr "accel_to_decel engedélyezése" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "" +"A Klipper max_accel_to_decel értékét a rendszer automatikusan beállítja" + +msgid "accel_to_decel" +msgstr "accel_to_decel" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" + +msgid "Jerk of outer walls" +msgstr "Jerk a külső falaknál" + +msgid "Jerk of inner walls" +msgstr "Jerk a belső falaknál" + +msgid "Jerk for top surface" +msgstr "" + +msgid "Jerk for infill" +msgstr "" + +msgid "Jerk for initial layer" +msgstr "" + +msgid "Jerk for travel" +msgstr "" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Initial layer height" +msgstr "Kezdő rétegmagasság" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Kezdőréteg magassága. A vastagabb kezdőréteg javíthatja a tárgy asztalhoz " +"való tapadását" + +msgid "Speed of initial layer except the solid infill part" +msgstr "A kezdőréteg nyomtatási sebessége a szilárd kitöltési rész kivételével" + +msgid "Initial layer infill" +msgstr "Kezdőréteg kitöltése" + +msgid "Speed of solid infill part of initial layer" +msgstr "A kezdőréteg szilárd kitöltési részének sebessége" + +msgid "Initial layer travel speed" +msgstr "" + +msgid "Travel speed of initial layer" +msgstr "" + +msgid "Number of slow layers" +msgstr "" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" + +msgid "Initial layer nozzle temperature" +msgstr "Az első réteg fúvóka hőmérséklete" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "A fúvóka hőmérséklete az első réteg nyomtatásakor ezzel a filamenttel" + +msgid "Full fan speed at layer" +msgstr "Teljes ventilátor fordulatszám ennél a rétegnél" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" + +msgid "layer" +msgstr "" + +msgid "Support interface fan speed" +msgstr "" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"A nyomtató véletlenszerűen vibrál a fal nyomtatása közben, így a felület " +"durva megjelenésű lesz" + +msgid "Contour" +msgstr "Contour" + +msgid "Contour and hole" +msgstr "Contour and hole" + +msgid "All walls" +msgstr "Összes fal" + +msgid "Fuzzy skin thickness" +msgstr "Fuzzy skin vastagsága" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"A rezgés szélessége: ezt ajánlott kisebbre állítani, mint a külső fal " +"szélessége." + +msgid "Fuzzy skin point distance" +msgstr "Fuzzy skin pontok távolsága" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"Az egyes vonalszakaszokon használt véletlen pontok közötti átlagos távolság" + +msgid "Apply fuzzy skin to first layer" +msgstr "" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "" + +msgid "Filter out tiny gaps" +msgstr "Apró rések szűrése" + +msgid "Layers and Perimeters" +msgstr "Rétegek és peremek" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"A hézagkitöltés nyomtatási sebessége. A rés általában szabálytalan " +"vonalszélességű, és lassabban kell nyomtatni" + +msgid "Precise Z height" +msgstr "Precise Z height" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." + +msgid "Arc fitting" +msgstr "Íves illesztés" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" + +msgid "Add line number" +msgstr "Vonalszám hozzáadása" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Ha engedélyezed ezt a beállítást, minden G-kód sor elejére sorszám (Nx) " +"kerül." + +msgid "Scan first layer" +msgstr "Az első réteg szkennelése" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Engedélyezd ezt az opciót, hogy a nyomtató kamerája ellenőrizze az első " +"réteg minőségét" + +msgid "Nozzle type" +msgstr "Fúvóka típus" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"A fúvóka anyaga: Ez határozza meg a fúvóka kopásállóságát és azt, hogy " +"milyen filamentekkel képes nyomtatni." + +msgid "Undefine" +msgstr "Nincs meghatározva" + +msgid "Hardened steel" +msgstr "Edzett acél" + +msgid "Stainless steel" +msgstr "Rozsdamentes acél" + +msgid "Brass" +msgstr "Sárgaréz" + +msgid "Nozzle HRC" +msgstr "Fúvóka HRC értéke" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"A fúvóka keménysége. A 0 azt jelenti, hogy szeletelés során nem ellenőrzi a " +"fúvóka HRC értékét." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Nyomtató szerkezete" + +msgid "The physical arrangement and components of a printing device" +msgstr "A nyomtató fizikai felépítése és alkatrészei" + +msgid "CoreXY" +msgstr "" + +msgid "I3" +msgstr "" + +msgid "Hbot" +msgstr "" + +msgid "Delta" +msgstr "" + +msgid "Best object position" +msgstr "Legjobb tárgypozíció" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"A legjobb automatikus elrendezés tartománya [0,1] a tárgyasztal alakja " +"szerint." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" + +msgid "Only overhangs" +msgstr "" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "" + +msgid "Fan kick-start time" +msgstr "" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" + +msgid "Time cost" +msgstr "" + +msgid "The printer cost per hour" +msgstr "" + +msgid "money/h" +msgstr "" + +msgid "Support control chamber temperature" +msgstr "Kamrahőmérséklet-szabályozás engedélyezése" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" + +msgid "Support air filtration" +msgstr "Légszűrés támogatása" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "G-code flavor" +msgstr "G-kód változat" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Milyen G-kóddal kompatibilis a nyomtató." + +msgid "Klipper" +msgstr "" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" + +msgid "Label objects" +msgstr "Objektumok címkézése" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" + +msgid "Exclude objects" +msgstr "Tárgyak kizárása" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "" + +msgid "Verbose G-code" +msgstr "Bővebb G-kód" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Ha engedélyezi ezt a funkciót, akkor egy kommentezett G-kód fájlt kap, " +"amelynek minden egyes sorát egy leíró szöveg magyarázza. Ha SD-kártyáról " +"nyomtat, a fájl nagyobb mérete miatt a nyomtató vezérlő szoftvere " +"lelassulhat." + +msgid "Infill combination" +msgstr "Kitöltés összevonása" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Több réteg ritkás kitöltésének automatikus kombinálása a nyomtatási idő " +"csökkentése érdekében. A fal továbbra is az eredeti rétegmagassággal kerül " +"kinyomtatásra." + +msgid "Filament to print internal sparse infill." +msgstr "Filament a belső ritkás kitöltésekhez." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Infill/Wall overlap" +msgstr "Kitöltés/fal átfedés" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" + +msgid "Speed of internal sparse infill" +msgstr "A belső ritkás kitöltés sebessége" + +msgid "Interface shells" +msgstr "Interface shells" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" + +msgid "Maximum width of a segmented region" +msgstr "Szegmentált régió maximális szélessége" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Szegmentált régió maximális szélessége. A 0 érték letiltja ezt a funkciót." + +msgid "Interlocking depth of a segmented region" +msgstr "Szegmentált régió összekapcsolódási mélysége" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Szegmentált régió összekapcsolódási mélysége. A 0 érték letiltja ezt a " +"funkciót." + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "Vasalás típusa" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"A vasalás kis anyagáramlás használatával kisimítja a sík felületeket. Ez a " +"beállítás szabályozza, hogy mely rétegeknél történik meg a vasalás." + +msgid "No ironing" +msgstr "Nincs vasalás" + +msgid "Top surfaces" +msgstr "Felső felületek" + +msgid "Topmost surface" +msgstr "Legfelső felület" + +msgid "All solid layer" +msgstr "Összes szilárd réteg" + +msgid "Ironing Pattern" +msgstr "Ironing Pattern" + +msgid "The pattern that will be used when ironing" +msgstr "" + +msgid "Ironing flow" +msgstr "Vasalás áramlási sebesség" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"A vasalás során extrudálandó anyag mennyisége a normál anyagáramláshoz " +"viszonyítva. A túl magas érték a felületen túlextrudálást eredményez." + +msgid "Ironing line spacing" +msgstr "Vasalási vonalak közötti távolság" + +msgid "The distance between the lines of ironing" +msgstr "A vasaláshoz használt vonalak közötti távolság." + +msgid "Ironing speed" +msgstr "Vasalás sebessége" + +msgid "Print speed of ironing lines" +msgstr "A vasalási vonalak nyomtatási sebessége" + +msgid "Ironing angle" +msgstr "" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"Ez a G-kód minden rétegváltásnál beillesztésre kerül a Z tengely megemelése " +"után." + +msgid "Supports silent mode" +msgstr "Csendes mód" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Csendes üzemmód támogatása, amelyben a gép kisebb gyorsulást használ a " +"csendesebb nyomtatáshoz" + +msgid "Emit limits to G-code" +msgstr "" + +msgid "Machine limits" +msgstr "Géplimitek" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Ez a G-kód lesz használva a nyomtatás szüneteltetéséhez. A felhasználók a " +"szünet G-kódot a G-kódnézőben illeszthetik be." + +msgid "This G-code will be used as a custom code" +msgstr "Ezt a G-kód egyedi kódként lesz használva." + +msgid "Small area flow compensation (beta)" +msgstr "" + +msgid "Enable flow compensation for small infill areas" +msgstr "" + +msgid "Flow Compensation Model" +msgstr "" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" + +msgid "Maximum speed X" +msgstr "Maximális sebesség X" + +msgid "Maximum speed Y" +msgstr "Maximális sebesség Y" + +msgid "Maximum speed Z" +msgstr "Maximális sebesség Z" + +msgid "Maximum speed E" +msgstr "Maximális sebesség E" + +msgid "Maximum X speed" +msgstr "Maximális X sebesség" + +msgid "Maximum Y speed" +msgstr "Maximális Y sebesség" + +msgid "Maximum Z speed" +msgstr "Maximális Z sebesség" + +msgid "Maximum E speed" +msgstr "Maximális E sebesség" + +msgid "Maximum acceleration X" +msgstr "Maximális sebesség X" + +msgid "Maximum acceleration Y" +msgstr "Maximális gyorsulás Y" + +msgid "Maximum acceleration Z" +msgstr "Maximális gyorsulás Z" + +msgid "Maximum acceleration E" +msgstr "Maximális gyorsulás E" + +msgid "Maximum acceleration of the X axis" +msgstr "X-tengely maximális gyorsulás" + +msgid "Maximum acceleration of the Y axis" +msgstr "Y-tengely maximális gyorsulás" + +msgid "Maximum acceleration of the Z axis" +msgstr "Z-tengely maximális gyorsulás" + +msgid "Maximum acceleration of the E axis" +msgstr "E-tengely maximális gyorsulás" + +msgid "Maximum jerk X" +msgstr "Maximális jerk X" + +msgid "Maximum jerk Y" +msgstr "Maximális jerk Y" + +msgid "Maximum jerk Z" +msgstr "Maximális jerk Z" + +msgid "Maximum jerk E" +msgstr "Maximális jerk E" + +msgid "Maximum jerk of the X axis" +msgstr "Maximális jerk az X tengelyen" + +msgid "Maximum jerk of the Y axis" +msgstr "Maximális jerk az Y tengelyen" + +msgid "Maximum jerk of the Z axis" +msgstr "Maximális jerk a Z tengelyen" + +msgid "Maximum jerk of the E axis" +msgstr "Maximális jerk az E tengelyen" + +msgid "Minimum speed for extruding" +msgstr "Extrudálás minimális sebessége" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Minimális sebesség az extrudáláshoz (M205 S)" + +msgid "Minimum travel speed" +msgstr "Minimum mozgási sebesség" + +msgid "Minimum travel speed (M205 T)" +msgstr "Minimum mozgási sebesség (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Maximális gyorsulás extrudáláshoz" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Maximális gyorsulás extrudáláshoz (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Maximális gyorsulás a visszahúzáshoz" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Maximális gyorsulás a visszahúzáshoz (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Maximális gyorsulás a mozgáshoz" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"A tárgyhűtő ventilátor fordulatszáma növelhető, ha az automatikus hűtés " +"engedélyezve van. Ez a tárgyhűtő ventilátor maximális fordulatszám-határa" + +msgid "Max" +msgstr "Max" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"Az extruder által nyomtatható legnagyobb rétegmagasság: ez a maximális " +"rétegmagasság korlátozására szolgál, ha az adaptív rétegmagasság " +"engedélyezve van." + +msgid "Extrusion rate smoothing" +msgstr "" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" + +msgid "Minimum speed for part cooling fan" +msgstr "Tárgyhűtő ventilátor minimum fordulatszáma" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" + +msgid "Min" +msgstr "Min" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"Az extruder által nyomtatható legkisebb rétegmagasság: ez a minimum " +"rétegmagasság korlátozására szolgál, ha az adaptív rétegmagasság " +"engedélyezve van." + +msgid "Min print speed" +msgstr "Min. nyomtatási sebesség" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" + +msgid "Nozzle diameter" +msgstr "Fúvóka átmérője" + +msgid "Diameter of nozzle" +msgstr "Fúvóka átmérője" + +msgid "Configuration notes" +msgstr "Konfiguráció megjegyzések" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Itt elhelyezheti személyes jegyzeteit. Ez a szöveg hozzá lesz fűzve a G-kód " +"fejlécének megjegyzéseihez." + +msgid "Host Type" +msgstr "Host típusa" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"A Snapmaker Orca képes G-kód fájlokat feltölteni a nyomtatóra. Ennek a mezőnek " +"tartalmaznia kell a gazdagép típusát." + +msgid "Nozzle volume" +msgstr "Fúvóka térfogata" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "A fúvóka térfogata a filamentvágó és a fúvóka vége között" + +msgid "Cooling tube position" +msgstr "Hűtőcső helyzete" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "A hűtőcső középpontjának távolsága az extruder csúcsától." + +msgid "Cooling tube length" +msgstr "Hűtőcső hossza" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"A hűtőcső hossza, ami limitálja a hűtéshez használható helyet annak a " +"belsejében." + +msgid "High extruder current on filament swap" +msgstr "Magas extruderáram a szálcserénél" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Előnyös lehet az extrudermotor áramának növelése a filamentcsere során, hogy " +"elérhetővé tegye a tömörítéshez szükséges magas előtolási sebességet és az " +"ellenállás leküzdését deformált hegyű filament betöltésekor." + +msgid "Filament parking position" +msgstr "Filament parkolási pozíció" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Az extruder hegyének távolsága attól a helyzettől, ahol a szál betöltetlenül " +"parkol. Ennek meg kell egyeznie a nyomtató firmware-ében megadott értékkel." + +msgid "Extra loading distance" +msgstr "Extra betöltési hossz" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Ha nullára van állítva, akkor a filamentet a betöltés során a " +"parkolóhelyzetből pontosan ugyanannyira kerül előtolásra, mint amennyire a " +"kiürítéskor vissza lett húzva. Ha pozitív, akkor tovább töltődik, ha " +"negatív, akkor a betöltési mozgás rövidebb, mint a kiürítési." + +msgid "Start end points" +msgstr "Kezdő- és végpontok" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "A kezdő- és végpontok a vágási terület és a kidobónyílás között." + +msgid "Reduce infill retraction" +msgstr "Csökkentett visszahúzás kitöltésnél" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Nem történik visszahúzás, amikor a fej csak kitöltés felett halad el, mert " +"az itt történő szivárgás egyébként sem látható.\n" +"Ez az opció lerövidítheti a nyomtatási időt a visszahúzások csökkentésével " +"komplex modelleknél, de egyúttal lassabbá teszi a szeletelést és a G-kód " +"generálást" + +msgid "Filename format" +msgstr "Fájlnév formátum" + +msgid "User can self-define the project file name when export" +msgstr "A felhasználó dönthet a projektfájlok nevéről exportáláskor." + +msgid "Make overhangs printable" +msgstr "" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "" + +msgid "Make overhangs printable - Maximum angle" +msgstr "" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" + +msgid "Make overhangs printable - Hole area" +msgstr "" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Túlnyúló fal felismerése" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Felismeri a túlnyúlás százalékos arányát a vonalszélességhez viszonyítva, és " +"más sebességet használ. A 100%%-os túlnyúlás esetén az áthidaláshoz " +"beállított sebességet használja." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Speed of inner wall" +msgstr "A belső fal nyomtatási sebessége" + +msgid "Number of walls of every layer" +msgstr "Ez a falak száma rétegenként." + +msgid "Alternate extra wall" +msgstr "" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" + +msgid "Printer notes" +msgstr "Printer notes" + +msgid "You can put your notes regarding the printer here." +msgstr "You can put your notes regarding the printer here." + +msgid "Raft contact Z distance" +msgstr "Tutaj érintkezés Z távolság" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"This is the Z gap between an object and a raft. It is ignored for soluble " +"interfaces." + +msgid "Raft expansion" +msgstr "Tutaj kibővítése" + +msgid "Expand all raft layers in XY plane" +msgstr "Összes tutaj réteg kiterjesztése az XY síkban" + +msgid "Initial layer density" +msgstr "Első réteg sűrűsége" + +msgid "Density of the first raft or support layer" +msgstr "Az első tutaj vagy támasz réteg sűrűsége" + +msgid "Initial layer expansion" +msgstr "First layer expansion" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "This expands the first raft or support layer to improve bed adhesion." + +msgid "Raft layers" +msgstr "Tutaj rétegek" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"A tárgy ennyi támaszréteggel kerül megemelésre. Ezzel a funkcióval " +"elkerülheted a vetemedést ABS nyomtatásakor." + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"A G-kód útvonal a modell kontúrjának egyszerűsítése után jön létre, hogy " +"elkerüljük a túl sok sort a G-kód fájlban. A kisebb érték nagyobb felbontást " +"és több időt jelent a szeletelésnél" + +msgid "Travel distance threshold" +msgstr "Mozgás távolságának küszöbértéke" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Csak akkor indít visszahúzást, ha a mozgási távolság nagyobb, mint ez az " +"érték." + +msgid "Retract amount before wipe" +msgstr "Visszahúzott mennyiség törlés előtt" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"Ez a törlés előtti gyors visszahúzás hossza a visszahúzási hosszhoz " +"viszonyítva." + +msgid "Retract when change layer" +msgstr "Visszahúzás rétegváltáskor" + +msgid "Force a retraction when changes layer" +msgstr "Kényszeríti a visszahúzást minden rétegváltáskor" + +msgid "Retraction Length" +msgstr "Visszahúzás hossza" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Az extruderben lévő anyag egy része visszahúzásra kerül, ezáltal elkerülve a " +"hosszabb mozgás során történő szivárgást. A visszahúzás kikapcsolásához " +"állítsd nullára" + +msgid "Long retraction when cut(experimental)" +msgstr "Long retraction when cut (experimental)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." + +msgid "Retraction distance when cut" +msgstr "Retraction distance when cut" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Experimental feature. Retraction length before cutting off during filament " +"change" + +msgid "Z hop when retract" +msgstr "Z-tengely emelés visszahúzáskor" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Visszahúzáskor a fúvóka egy kicsit megemelkedik, hogy a fúvóka és a " +"nyomtatott tárgy között rés keletkezzen. Ez megakadályozza, hogy a fúvóka " +"nagyobb mozgás közben a tárgynak ütközzön. A Z tengely emelésekor használt " +"körkörös mozgás megelőzheti a szálazást." + +msgid "Z hop lower boundary" +msgstr "Z-emelés alsó határa" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"A Z-tengely emelése csak akkor történik meg, ha az emelés mértéke nagyobb " +"ennél az értéknél, de kisebb a „Z-emelés felső határánál“" + +msgid "Z hop upper boundary" +msgstr "Z-emelés felső határa" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Ha ez az érték pozitív, a Z-emelés csak akkor történik meg, ha az emelés " +"mértéke a „Z-emelés alsó határánál“ nagyobb, de kisebb ennél az értéknél" + +msgid "Z hop type" +msgstr "" + +msgid "Slope" +msgstr "Lejtő" + +msgid "Spiral" +msgstr "Spirál" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "Z emelés csak efelett" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" + +msgid "Only lift Z below" +msgstr "Z emelés csak ezalatt" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" + +msgid "On surfaces" +msgstr "" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" + +msgid "All Surfaces" +msgstr "" + +msgid "Top Only" +msgstr "" + +msgid "Bottom Only" +msgstr "" + +msgid "Top and Bottom" +msgstr "" + +msgid "Extra length on restart" +msgstr "Extra hossz újraindításkor" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Amikor a visszahúzás kompenzálásra kerül utazási mozgás után, az extruder " +"ezt a további szálmennyiséget nyomja előre. Erre a beállításra ritkán van " +"szükség." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Amikor a visszahúzás kompenzálásra kerül szerszámváltás után, az extruder " +"ezt a további szálmennyiséget nyomja előre." + +msgid "Retraction Speed" +msgstr "Visszahúzás sebessége" + +msgid "Speed of retractions" +msgstr "Visszahúzások sebessége" + +msgid "Deretraction Speed" +msgstr "Betöltési sebesség" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"A filament extruderbe történő visszatöltésének sebessége. A nulla azonos " +"sebességet jelent a visszahúzással" + +msgid "Use firmware retraction" +msgstr "Firmware-ben megadott visszahúzás használata" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" + +msgid "Show auto-calibration marks" +msgstr "" + +msgid "Disable set remaining print time" +msgstr "" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" + +msgid "Seam position" +msgstr "Varrat pozíció" + +msgid "The start position to print each part of outer wall" +msgstr "A külső fal nyomtatásának kiindulási helyzete." + +msgid "Nearest" +msgstr "Legközelebbi" + +msgid "Aligned" +msgstr "Igazított" + +msgid "Back" +msgstr "Hátul" + +msgid "Random" +msgstr "Véletlenszerû" + +msgid "Staggered inner seams" +msgstr "" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" + +msgid "Seam gap" +msgstr "Varrat hézag" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" + +msgid "Scarf joint seam (beta)" +msgstr "" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Use scarf joint to minimize seam visibility and increase seam strength." + +msgid "Conditional scarf joint" +msgstr "Conditional scarf joint" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." + +msgid "Conditional angle threshold" +msgstr "Conditional angle threshold" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" + +msgid "Conditional overhang threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" + +msgid "Scarf joint speed" +msgstr "" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" + +msgid "Scarf joint flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" + +msgid "Scarf start height" +msgstr "Scarf start height" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." + +msgid "Scarf around entire wall" +msgstr "Scarf around entire wall" + +msgid "The scarf extends to the entire length of the wall." +msgstr "The scarf extends to the entire length of the wall." + +msgid "Scarf length" +msgstr "Scarf length" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." + +msgid "Scarf steps" +msgstr "Scarf steps" + +msgid "Minimum number of segments of each scarf." +msgstr "Minimum number of segments of each scarf." + +msgid "Scarf joint for inner walls" +msgstr "Scarf joint for inner walls" + +msgid "Use scarf joint for inner walls as well." +msgstr "Use scarf joint for inner walls as well." + +msgid "Role base wipe speed" +msgstr "" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" + +msgid "Wipe on loops" +msgstr "" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" + +msgid "Wipe before external loop" +msgstr "" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" + +msgid "Wipe speed" +msgstr "Törlés sebessége" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"A törlés sebességét az itt megadott beállítás határozza meg. Ha az érték " +"százalékban van megadva (pl. 80%), akkor azt a rendszer a mozgási " +"sebességbeállítás alapján számítja ki. Ennek a paraméternek az " +"alapértelmezett értéke 80%" + +msgid "Skirt distance" +msgstr "Szoknya távolsága" + +msgid "Distance from skirt to brim or object" +msgstr "A szoknyától a peremig vagy tárgyig mért távolság" + +msgid "Skirt height" +msgstr "Skirt height" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Number of skirt layers: usually only one" + +msgid "Draft shield" +msgstr "Huzatvédő" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" + +msgid "Limited" +msgstr "Korlátozott" + +msgid "Enabled" +msgstr "Engedélyezve" + +msgid "Skirt loops" +msgstr "Szoknya hurkok száma" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "" +"A szoknya hurkainak száma. A nulla a szoknya kikapcsolását jelenti.\n" +"\n" +"A szoknya (Skirt) egy körvonal, amit a tárgyasztalon lévő összes modell köré " +"nyomtatnak.\n" +"Még a tárgyak előtt kerül nyomtatásra és a feladata a fúvóka " +"anyagáramlásának stabilizálása" + +msgid "Skirt speed" +msgstr "" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" + +msgid "Skirt minimum extrusion length" +msgstr "" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"A nyomtatási sebesség az exportált G-kódban csökkentésre kerül, ha a becsült " +"rétegidő kisebb, mint ez az érték, hogy a rétegek jobb hűtése biztosított " +"legyen." + +msgid "Minimum sparse infill threshold" +msgstr "Ritkás kitöltés küszöbértéke" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"A küszöbérték alatti ritkás kitöltési terület belső szilárd kitöltéssel " +"kerül leváltásra" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"A belső szilárd kitöltés sebessége, de az az érték nem vonatkozik a felső és " +"alsó felületre" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"A spirál mód kisimítja a külső kontúr Z mozgásait. A tömör modellt egyfalú " +"nyomatokká alakítja, tömör alsó rétegekkel. A végső modellen nincsenek " +"varratok" + +msgid "Smooth Spiral" +msgstr "Smooth Spiral" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" + +msgid "Max XY Smoothing" +msgstr "Max XY Smoothing" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Maximum distance to move points in XY to try to achieve a smooth spiral. If " +"expressed as a %, it will be computed over nozzle diameter" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Ha a sima vagy a hagyományos mód van kiválasztva, minden nyomtatásnál készül " +"egy timelapse-videó. Az egyes rétegek kinyomtatása után a beépített kamera " +"egy képet készít. A nyomtatás befejeződése után aztán ezeket a képeket a " +"szoftver egy videóvá fűzi össze. Ha a sima mód van kiválasztva, a réteg " +"nyomtatása után a nyomtatófej a kidobónyíláshoz mozog, majd a kamera egy " +"képet készít. Mivel a kép készítése során szivároghat valamennyi olvadt " +"filament a fúvókából, egy törlőtoronyra van szükség a fúvóka " +"megtisztításához." + +msgid "Traditional" +msgstr "Hagyományos" + +msgid "Temperature variation" +msgstr "Hőmérséklet változás" + +msgid "Start G-code" +msgstr "Kezdő G-kód" + +msgid "Start G-code when start the whole printing" +msgstr "Kezdő G-kód az egész nyomtatás megkezdésekor" + +msgid "Start G-code when start the printing of this filament" +msgstr "Kezdő G-kód a filament nyomtatásának megkezdésekor" + +msgid "Single Extruder Multi Material" +msgstr "Egyetlen Extruder Többféle Anyag" + +msgid "Use single nozzle to print multi filament" +msgstr "" + +msgid "Manual Filament Change" +msgstr "" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" + +msgid "Purge in prime tower" +msgstr "" + +msgid "Purge remaining filament into prime tower" +msgstr "" + +msgid "Enable filament ramming" +msgstr "" + +msgid "No sparse layers (beta)" +msgstr "" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Ha engedélyezve van, akkor törlőtorony nem kerül kinyomtatásra " +"szerszámváltás nélküli rétegeken. A szerszámcserével rendelkező rétegeken az " +"extruder az aktuális magasság alá süllyed a törlőtorony nyomtatásához. A " +"felhasználó felelős azért, hogy ez ne okozzon ütközést a nyomtatás során." + +msgid "Prime all printing extruders" +msgstr "Az összes nyomtató extruder előkészítése" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Ha engedélyezve van, akkor a nyomtatás kezdetén az összes nyomtató extruder " +"előkészítésre kerül a tárgyasztal elülső szélénél." + +msgid "Slice gap closing radius" +msgstr "Szeletelési hézag lezárási sugara" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"A háromszögháló szeletelés során a szeletelési hézag lezárási sugaránál 2x " +"kisebb résekk feltöltésre kerülnek. A hézagok lezárása csökkentheti a " +"nyomtatási felbontást, ezért ajánlott ezt az értéket alacsonyan tartani." + +msgid "Slicing Mode" +msgstr "Szeletelési mód" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Használd a „Páros-páratlan“ opciót a 3DLabPrint repülőgépmodellekhez. " +"Használd a „Hézagok lezárása“ lehetőséget a modell összes házagának " +"lezárásához." + +msgid "Regular" +msgstr "Normál" + +msgid "Even-odd" +msgstr "Páros-páratlan" + +msgid "Close holes" +msgstr "Hézagok lezárása" + +msgid "Z offset" +msgstr "Z ofszet" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Ez az érték hozzáadódik (vagy kivonásra kerül) az összes Z koordinátához a " +"kimeneti G-kódban. A Z tengely végállás pozíciójának kompenzálására szolgál: " +"például ha a végállás nullája valójában 0,3 mm-re hagyja a fúvókát a " +"tárgyasztal felett, akkor állítsa ezt az értéke -0,3-ra (vagy javítsa meg a " +"végállást)." + +msgid "Enable support" +msgstr "Támasz engedélyezése" + +msgid "Enable support generation." +msgstr "Engedélyezi a támasz generálását." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"A normál (auto) és a fa (auto) a támaszok automatikus generálásához van " +"használva. Ha a normál (kézi) vagy a fa (kézi) van kiválasztva, akkor csak a " +"kényszerített támaszok kerülnek generálásra." + +msgid "normal(auto)" +msgstr "normál (auto)" + +msgid "tree(auto)" +msgstr "fa (auto)" + +msgid "normal(manual)" +msgstr "normál (manuális)" + +msgid "tree(manual)" +msgstr "fa (manuális)" + +msgid "Support/object xy distance" +msgstr "Támasz/tárgy XY távolság" + +msgid "XY separation between an object and its support" +msgstr "Ez szabályozza a tárgy és a támasz közötti XY elválasztás távolságát." + +msgid "Pattern angle" +msgstr "Mintázat szöge" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Ezzel a beállítással elforgathatod a támasz mintázatát a vízszintes síkon." + +msgid "On build plate only" +msgstr "Csak a tárgyasztaltól" + +msgid "Don't create support on model surface, only on build plate" +msgstr "Nem generál támaszt a modell felületén, csak a tárgyasztalon" + +msgid "Support critical regions only" +msgstr "Csak a kritikus területek alátámasztása" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Csak olyan kritikus területekhez generál támasztékot, mint például egy farok " +"vagy egyéb kiálló részek." + +msgid "Remove small overhangs" +msgstr "Kis túlnyúlások eltávolítása" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "" +"Eltávolítja a kis túlnyúlásokat, amelyek esetleg nem igényelnek " +"alátámasztást." + +msgid "Top Z distance" +msgstr "Z távolság" + +msgid "The z gap between the top support interface and object" +msgstr "" +"Meghatározza a Z távolságot a felső támasz érintkező rétege és az objektum " +"között." + +msgid "Bottom Z distance" +msgstr "Alsó Z távolság" + +msgid "The z gap between the bottom support interface and object" +msgstr "A Z távolság az alsó támasz érintkező rétege és az objektum között." + +msgid "Support/raft base" +msgstr "Support/raft base" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"A támasz alapjához és a tutaj nyomtatásához használt filament. Az " +"„Alapértelmezett“ beállítás választásakor a jelenleg használt filament kerül " +"felhasználásra." + +msgid "Avoid interface filament for base" +msgstr "Kerülje a támaszanyag használatát az alaphoz" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Ha lehetséges, kerüli a dedikált támaszanyag (filament) használatát a " +"támaszalap nyomtatásához." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Interface use loop pattern" +msgstr "Hurokminta felület" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Lefedi a támasz felső érintkező rétegét körökkel. Alapértelmezés szerint " +"letiltva." + +msgid "Support/raft interface" +msgstr "Support/raft interface" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filament a támasz érintkező felületének nyomtatásához. Az „Alapértelmezett“ " +"beállítás választásakor a jelenleg használt filament kerül felhasználásra." + +msgid "Top interface layers" +msgstr "Felső érintkező rétegek" + +msgid "Number of top interface layers" +msgstr "A felső érintkező rétegek száma." + +msgid "Bottom interface layers" +msgstr "Alsó érintkező rétegek" + +msgid "Number of bottom interface layers" +msgstr "Alsó érintkezőrétegek száma" + +msgid "Same as top" +msgstr "Ugyanaz, mint a felső" + +msgid "Top interface spacing" +msgstr "Felső érintkező felület térköze" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "" +"Az érintkező réteg vonalai közötti távolság. A nulla szilárd kitöltést jelent" + +msgid "Bottom interface spacing" +msgstr "Alső érintkező réteg térköz" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Az érintkező réteg vonalai közötti távolság. A nulla szilárd kitöltést jelent" + +msgid "Speed of support interface" +msgstr "Támasz érintkező felületek sebessége" + +msgid "Base pattern" +msgstr "Alap mintázata" + +msgid "Line pattern of support" +msgstr "A támasz mintázata." + +msgid "Rectilinear grid" +msgstr "Vonalrács" + +msgid "Hollow" +msgstr "Üreges" + +msgid "Interface pattern" +msgstr "Érintkező felület mintázata" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"A támasz érintkezési felületének vonalmintája. A nem oldható támaszfelület " +"alapértelmezett mintázata egyenes vonalú, míg az oldható támaszfelület " +"alapértelmezett mintázata koncentrikus" + +msgid "Rectilinear Interlaced" +msgstr "Rectilinear Interlaced" + +msgid "Base pattern spacing" +msgstr "Alap mintázatának térköze" + +msgid "Spacing between support lines" +msgstr "A támasz vonalai közötti távolság" + +msgid "Normal Support expansion" +msgstr "Normál támasz kibővítése" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "Megnöveli (+) vagy összehúzza (-) a normál támaszt vízszintes irányban" + +msgid "Speed of support" +msgstr "Támaszok sebessége" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" + +msgid "Snug" +msgstr "Szoros" + +msgid "Tree Slim" +msgstr "Karcsú fa" + +msgid "Tree Strong" +msgstr "Erős fa" + +msgid "Tree Hybrid" +msgstr "Hibrid fa" + +msgid "Organic" +msgstr "" + +msgid "Independent support layer height" +msgstr "Független támasz rétegmagassága" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." + +msgid "Threshold angle" +msgstr "Dőlésszög küszöbértéke" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Az olyan túlnyúlásoknál, amelynek dőlésszöge ez alatt az érték alatt van, " +"támasz fog generálódni." + +msgid "Tree support branch angle" +msgstr "Fa típusú támasz ágainak szöge" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Ez a beállítás határozza meg, hogy a fa típusú támasz ágai milyen maximális " +"túlnyúlási szöget érhetnek el. Ha ezt a szöget növeled, az ágak " +"vízszintesebben nyomtathatók, így messzebbre nyúlhatnak." + +msgid "Preferred Branch Angle" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" + +msgid "Tree support branch distance" +msgstr "Fa támasz ágainak távolsága" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"Ez a beállítás határozza meg a szomszédos fa támasz csomópontok közötti " +"távolságot." + +msgid "Branch Density" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" + +msgid "Adaptive layer height" +msgstr "Adaptív rétegmagasság" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" + +msgid "Auto brim width" +msgstr "" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" + +msgid "Tree support brim width" +msgstr "Tree support brim width" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "" + +msgid "Tip Diameter" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "" + +msgid "Tree support branch diameter" +msgstr "Fa támasz ágának átmérője" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Ez a beállítás határozza meg a támasz csomópontok kezdeti átmérőjét." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" + +msgid "Branch Diameter with double walls" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" + +msgid "Support wall loops" +msgstr "Támaszfalak száma" + +msgid "This setting specify the count of walls around support" +msgstr "A támasz körüli falak száma" + +msgid "Tree support with infill" +msgstr "Fa támasz kitöltéssel" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Ez a beállítás határozza meg, hogy a fa támasz nagyobb üregeiben legyen-e " +"kitöltés." + +msgid "Activate temperature control" +msgstr "" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" + +msgid "Chamber temperature" +msgstr "Kamra hőmérséklete" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on. At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials, the actual chamber temperature should not " +"be high to avoid clogs, so 0 (turned off) is highly recommended." + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Fúvóka hőmérséklete az első réteg után" + +msgid "Detect thin wall" +msgstr "Vékony fal felismerése" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Felismeri a vékony falat, amit nem lehet két vonalnyi szélességgel " +"nyomtatni, és egyetlen vonallal nyomtatja" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Ez a G-kód kerül beillesztésre, amikor a filament csere történik, beleértve " +"a szerszámváltást indító T parancsokat is." + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Speed of top surface infill which is solid" +msgstr "A felső felületi kitöltés sebessége, amely szilárd" + +msgid "Top shell layers" +msgstr "Felső héj rétegek" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Ez a felső héj szilárd rétegeinek száma, beleértve a felső felület réteget. " +"Ha az ezzel az értékkel számított vastagság vékonyabb, mint a felső héj " +"vastagsága, akkor a felső héj rétegeit a program megnöveli" + +msgid "Top solid layers" +msgstr "Felső tömör rétegek" + +msgid "Top shell thickness" +msgstr "Felső héj vastagság" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"A felső szilárd rétegek száma szeleteléskor megnő, ha a felső héjrétegekből " +"számított vastagság kisebb ennél az értéknél. Ezzel elkerülhető, hogy túl " +"vékony legyen a héj kis rétegmagasságnál. A 0 azt jelenti, hogy ez a " +"beállítás ki van kapcsolva, és a felső héj vastagságát egyszerűen a felső " +"héjrétegek száma határozza meg." + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Mozgási sebesség, amikor nem történik extrudálás" + +msgid "Wipe while retracting" +msgstr "Törlés visszahúzás közben" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Ez visszahúzáskor a fúvókát az utolsó extrudálási útvonal mentén mozgatja, " +"hogy a fúvókából szivárgott anyagot eltávolítsa. Ez minimálisra csökkentheti " +"a pöttyöket, amikor a nyomtatófej a mozgást követően egy egy új alkatrész " +"nyomtatásába kezd." + +msgid "Wipe Distance" +msgstr "Törlési távolság" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"The wiping tower can be used to clean up residue on the nozzle and stabilize " +"the chamber pressure inside the nozzle in order to avoid appearance defects " +"when printing objects." + +msgid "Purging volumes" +msgstr "Tisztítási mennyiségek" + +msgid "Flush multiplier" +msgstr "Öblítési szorzó" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"A tényleges öblítési mennyiségek megegyeznek az öblítési szorzó értékével, " +"szorozva a táblázatban szereplő öblítési mennyiségekkel." + +msgid "Prime volume" +msgstr "Tisztítási mennyiség" + +msgid "The volume of material to prime extruder on tower." +msgstr "Ez az az anyagmennyiség, amelyet az extruder a toronyban ürít." + +msgid "Width of prime tower" +msgstr "Ez a törlő torony szélessége." + +msgid "Wipe tower rotation angle" +msgstr "Törlőtorony forgatási szöge" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Törlőtorony forgatási szöge az x-tengelyhez képest." + +msgid "Stabilization cone apex angle" +msgstr "" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" + +msgid "Wipe tower purge lines spacing" +msgstr "" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "" + +msgid "Maximum wipe tower print speed" +msgstr "" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" + +msgid "Wipe tower extruder" +msgstr "" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" + +msgid "Purging volumes - load/unload volumes" +msgstr "" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"A filamentcsere utáni tisztítás az objektumok kitöltésén belül történik. Ez " +"csökkentheti a hulladék mennyiségét és a nyomtatási időt. Ha a falakat " +"átlátszó filamenttel nyomtatod, a vegyes színű kitöltés látható lesz. Ez az " +"opció csak akkor működik, ha a törlőtorony engedélyezve van." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"A filamentcsere utáni tisztítás az objektumok támaszain belül történik. Ez " +"csökkentheti a hulladék mennyiségét és a nyomtatási időt. Ez az opció csak " +"akkor működik, ha a törlőtorony engedélyezve van." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Ez az objektum lesz használva a fúvóka tisztítására filamentcsere után, a " +"nyomtatási idő csökkentése és némi filament megtakarításának érdekében. Az " +"objektum színei ennek eredményeképpen keveredni fognak. Ez az opció csak " +"akkor működik, ha a törlőtorony engedélyezve van." + +msgid "Maximal bridging distance" +msgstr "Maximális áthidalási távolság" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "A támaszok közötti maximális távolság a ritkás kitöltésű részeken." + +msgid "X-Y hole compensation" +msgstr "X-Y furatkompenzáció" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"A tárgy furatai az XY síkban a beállított értékkel nőnek vagy zsugorodnak. " +"Pozitív érték esetén a furatok nagyobbak lesznek, míg a negatív értéktől " +"kisebbek.\n" +"Ez a funkció a méret kismértékű módosítására szolgál, ha a tárgy " +"összeszerelése során probléma merül fel" + +msgid "X-Y contour compensation" +msgstr "X-Y körvonal kompenzáció" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"Az objektum körvonala az XY síkban a beállított értékkel növekszik vagy " +"zsugorodik. Pozitív érték esetén a kontúr nagyobb lesz, negatív érték esetén " +"kisebb. Ez a funkció a méret kismértékű módosítására szolgál, ha a " +"kinyomtatott tárggyal összeszerelési problémák akadnak" + +msgid "Convert holes to polyholes" +msgstr "" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" + +msgid "Polyhole detection margin" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" + +msgid "Polyhole twist" +msgstr "" + +msgid "Rotate the polyhole every layer." +msgstr "" + +msgid "G-code thumbnails" +msgstr "G-kód miniatűrök" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" + +msgid "Format of G-code thumbnails" +msgstr "" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" + +msgid "Use relative E distances" +msgstr "Relatív E távolságok használata" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"A klasszikus falgenerátor állandó szélességű falakat generál, és a nagyon " +"vékony területeknél hézagkitöltést használ. Az Arachne engine változó " +"szélességű falakat generál." + +msgid "Classic" +msgstr "Klasszikus" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Falátmenet hossza" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"A különböző vastagságú falak közötti átmenetkor, ahogy a tárgy vékonyabbá " +"válik, egy bizonyos terület elkülönítésre kerül a falszegmensek " +"összekapcsolására vagy épp elhatárolására. A fúvóka átmérőjének százalékában " +"van kifejezve." + +msgid "Wall transitioning filter margin" +msgstr "Falátmenet szűrésének értéke" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Megakadályozza az oda-vissza átmenetet egy extra és eggyel kevesebb fal " +"között. Ez a toleranciaérték megnöveli a soron következő extrudálás " +"szélességét [Minimális falszélesség - tolerancia, 2 * Minimális falszélesség " +"+ tolerancia]. Az érték növelése csökkenti az átmenetek számát, ami " +"csökkenti az extrudálások számát és a nyomtatási időt. Azonban a túl nagy " +"eltérések az extrudálás szélességében alul- vagy túlextrudáláshoz " +"vezethetnek. A fúvóka átmérőjének százalékában van kifejezve" + +msgid "Wall transitioning threshold angle" +msgstr "Falátmenet szögének küszöbértéke" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Mikor legyen átmenetet a páros és páratlan számú falak között. Az ennél " +"nagyobb szögű ék formánál nem lesz átmenet és nem kerül közé anyag, hogy " +"kitöltse a fennmaradó helyet. Ennek az értéknek a csökkentése csökkenti a " +"középső falak számát és hosszát, de hézagokat hagyhat vagy túlextrudálhat" + +msgid "Wall distribution count" +msgstr "Falak elosztása" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"A falak száma, a középponttól számítva, amelyek között a falakat el kell " +"osztani. Az alacsonyabb érték azt jelenti, hogy a külső falak szélessége nem " +"változik." + +msgid "Minimum feature size" +msgstr "Minimális méret" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"A vékony elemek minimális vastagsága. Az ennél vékonyabb modellelemek nem " +"lesznek kinyomtatva, míg a minimum méretnél nagyobb elemek a minimális " +"falszélességre szélesednek. A fúvóka átmérőjének százalékában van kifejezve" + +msgid "Minimum wall length" +msgstr "" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" + +msgid "First layer minimum wall width" +msgstr "" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" + +msgid "Minimum wall width" +msgstr "Minimális falszélesség" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"A fal szélessége, amely lecseréli a modell vékony részeit (a Minimális " +"méretben megadott érték szerint). Ha a minimális falszélesség vékonyabb, " +"mint a nyomtatandó elem vastagsága, akkor a fal olyan vastag lesz, mint maga " +"a nyomtatott elem. A fúvóka átmérőjének százalékában van kifejezve" + +msgid "Detect narrow internal solid infill" +msgstr "Keskeny belső szilárd kitöltés felismerése" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Ez a beállítás automatikusan felismeri a keskeny belső tömör kitöltési " +"területeket. Ha engedélyezve van, a nyomtatás felgyorsítása érdekében ezen a " +"területen a koncentrikus mintát fogja használni. Ellenkező esetben " +"alapértelmezés szerint az egyenes vonalú mintát használja." + +msgid "invalid value " +msgstr "invalid value " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Invalid value when spiral vase mode is enabled: " + +msgid "too large line width " +msgstr "too large line width " + +msgid " not in range " +msgstr " not in range " + +msgid "Minimum save" +msgstr "" + +msgid "export 3mf with minimum size." +msgstr "" + +msgid "No check" +msgstr "No check" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "Do not run any validity checks, such as G-code path conflicts check." + +msgid "Ensure on bed" +msgstr "Ágyra igazítás" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" + +msgid "Orient Options" +msgstr "" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Az Z tengely körüli forgatási szög fokban." + +msgid "Rotate around Y" +msgstr "Forgatás Y körül" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Az Y tengely körüli forgatási szög fokban." + +msgid "Data directory" +msgstr "Adatkönyvtár" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"A beállítások betöltése és tárolása a megadott könyvtárban. Ez hasznos a " +"különböző profilok karbantartásához vagy a hálózaton tárolt konfigurációk " +"beviteléhez." + +msgid "Load custom gcode" +msgstr "" + +msgid "Load custom gcode from json" +msgstr "" + +msgid "Current z-hop" +msgstr "" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "" + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" + +msgid "Extra deretraction" +msgstr "" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" + +msgid "Current extruder" +msgstr "" + +msgid "Zero-based index of currently used extruder." +msgstr "" + +msgid "Current object index" +msgstr "" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" + +msgid "Has wipe tower" +msgstr "" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "" + +msgid "Initial extruder" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" + +msgid "Initial tool" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" + +msgid "Is extruder used?" +msgstr "" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" + +msgid "Volume per extruder" +msgstr "" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" + +msgid "Total toolchanges" +msgstr "" + +msgid "Number of toolchanges during the print." +msgstr "" + +msgid "Total volume" +msgstr "" + +msgid "Total volume of filament used during the entire print." +msgstr "" + +msgid "Weight per extruder" +msgstr "" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" + +msgid "Total weight" +msgstr "" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" + +msgid "Total layer count" +msgstr "" + +msgid "Number of layers in the entire print." +msgstr "" + +msgid "Number of objects" +msgstr "" + +msgid "Total number of objects in the print." +msgstr "" + +msgid "Number of instances" +msgstr "" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" + +msgid "Scale per object" +msgstr "" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" + +msgid "Input filename without extension" +msgstr "" + +msgid "Source filename of the first object, without extension." +msgstr "" + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" + +msgid "First layer convex hull" +msgstr "" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" + +msgid "Bottom-left corner of first layer bounding box" +msgstr "" + +msgid "Top-right corner of first layer bounding box" +msgstr "" + +msgid "Size of the first layer bounding box" +msgstr "" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "" + +msgid "Top-right corner of print bed bounding box" +msgstr "" + +msgid "Size of the print bed bounding box" +msgstr "" + +msgid "Timestamp" +msgstr "" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "" + +msgid "Day" +msgstr "" + +msgid "Hour" +msgstr "" + +msgid "Minute" +msgstr "" + +msgid "Print preset name" +msgstr "" + +msgid "Name of the print preset used for slicing." +msgstr "" + +msgid "Filament preset name" +msgstr "" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" + +msgid "Printer preset name" +msgstr "" + +msgid "Name of the printer preset used for slicing." +msgstr "" + +msgid "Physical printer name" +msgstr "" + +msgid "Name of the physical printer used for slicing." +msgstr "" + +msgid "Layer number" +msgstr "" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" + +msgid "Layer z" +msgstr "" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" + +msgid "Maximal layer z" +msgstr "" + +msgid "Height of the last layer above the print bed." +msgstr "" + +msgid "Filament extruder ID" +msgstr "" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "" + +msgid "Error in zip archive" +msgstr "Hiba a zip fájlban" + +msgid "Generating walls" +msgstr "Falak generálása" + +msgid "Generating infill regions" +msgstr "Kitöltési területek generálása" + +msgid "Generating infill toolpath" +msgstr "Kitöltési szerszámút generálás" + +msgid "Detect overhangs for auto-lift" +msgstr "Túlnyúlások észlelése az automatikus emeléshez" + +msgid "Generating support" +msgstr "Támaszok generálása" + +msgid "Checking support necessity" +msgstr "Támasz szükségességének ellenőrzése" + +msgid "floating regions" +msgstr "floating regions" + +msgid "floating cantilever" +msgstr "floating cantilever" + +msgid "large overhangs" +msgstr "large overhangs" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." + +msgid "Optimizing toolpath" +msgstr "Szerszámút optimalizálása" + +msgid "Slicing mesh" +msgstr "Háló szeletelése" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Támasz: szerszámút generálása %d. réteg" + +msgid "Support: detect overhangs" +msgstr "Támasz: túlnyúlások észlelése" + +msgid "Support: generate contact points" +msgstr "Támasz: érintkezési pontok generálása" + +msgid "Support: propagate branches" +msgstr "Támasz: ágak kiterjesztése" + +msgid "Support: draw polygons" +msgstr "Támasz: poligonok rajzolása" + +msgid "Support: generate toolpath" +msgstr "Támasz: szerszámút generálása" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Támogatás: poligonok generálása %d. réteg" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Támasz: lyukak javítása %d. réteg" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Támasz: ágak kiterjesztése %d. réteg" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Unknown file format: input file must have .stl, .obj, or .amf(.xml) " +"extension." + +msgid "Loading of a model file failed." +msgstr "Loading of model file failed." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "The supplied file couldn't be read because it's empty." + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "Unknown file format: input file must have .3mf or .zip.amf extension." + +msgid "Canceled" +msgstr "Canceled" + +msgid "load_obj: failed to parse" +msgstr "load_obj: failed to parse" + +msgid "load mtl in obj: failed to parse" +msgstr "load mtl in obj: failed to parse" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "The file contains polygons with more than 4 vertices." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "The file contains polygons with less than 2 vertices." + +msgid "The file contains invalid vertex index." +msgstr "The file contains invalid vertex index." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "This OBJ file couldn't be read because it's empty." + +msgid "Flow Rate Calibration" +msgstr "Anyagáramlás kalibrálása" + +msgid "Max Volumetric Speed Calibration" +msgstr "Max. volumetrikus sebesség kalibrálása" + +msgid "Manage Result" +msgstr "Eredmények kezelése" + +msgid "Manual Calibration" +msgstr "Kézi kalibrálás" + +msgid "Result can be read by human eyes." +msgstr "Az eredmények könnyen átláthatóak és megérthetőek." + +msgid "Auto-Calibration" +msgstr "Auto-Calibration" + +msgid "We would use Lidar to read the calibration result" +msgstr "A Lidar segítségével olvassuk le a kalibrálás eredményét" + +msgid "Prev" +msgstr "Előző" + +msgid "Recalibration" +msgstr "Újrakalibrálás" + +msgid "Calibrate" +msgstr "Kalibrálás" + +msgid "Finish" +msgstr "Kész" + +msgid "How to use calibration result?" +msgstr "Hogyan használjam a kalibrálási eredményeket?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "Az anyag beállításaiban módosíthatod az áramlásdinamikai értékeket" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"A nyomtató jelenlegi firmware-verziója nem támogatja a kalibrálást.\n" +"Kérjük, frissítsd a nyomtató firmware-jét." + +msgid "Calibration not supported" +msgstr "Kalibrálás nem támogatott" + +msgid "Error desc" +msgstr "Hibaleírás" + +msgid "Extra info" +msgstr "Extra infó" + +msgid "Flow Dynamics" +msgstr "Áramlásdinamika" + +msgid "Flow Rate" +msgstr "Anyagáramlás" + +msgid "Max Volumetric Speed" +msgstr "Max. volumetrikus sebesség" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Kérjük, érvényes értékeket adj meg:\n" +"Kezdő érték: >= %.1f\n" +"Végérték: <= %.1f\n" +"Végérték: > Kezdő érték\n" +"Lépésköz: >=) %.3f" + +msgid "The name cannot be empty." +msgstr "A név nem lehet üres." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "A kiválasztott beállítás: %s nem található." + +msgid "The name cannot be the same as the system preset name." +msgstr "A név nem lehet azonos egy rendszerbeállítás nevével." + +msgid "The name is the same as another existing preset name" +msgstr "A név megegyezik egy másik meglévő beállítás nevével" + +msgid "create new preset failed." +msgstr "Új beállítás létrehozása sikertelen." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Are you sure you want to cancel the current calibration and return to the " +"home page?" + +msgid "No Printer Connected!" +msgstr "Nincs nyomtató csatlakoztatva!" + +msgid "Printer is not connected yet." +msgstr "Még nincs csatlakoztatva nyomtató." + +msgid "Please select filament to calibrate." +msgstr "Kérjük, válaszd ki a kalibrálandó filamenteket." + +msgid "The input value size must be 3." +msgstr "A bemeneti értéknek 3-nak kell lennie." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"This machine type can only hold 16 historical results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" + +msgid "Connecting to printer..." +msgstr "Csatlakozás a nyomtatóhoz..." + +msgid "The failed test result has been dropped." +msgstr "A sikertelen teszteredményt eltávolítottuk." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Az áramlásdinamikai kalibráció eredményeit elmentette a nyomtató" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"Már létezik egy ugyanilyen nevű, korábbi kalibrálási eredmény: %s. Csak egy " +"azonos nevű eredményt lehet elmenteni. Biztos, hogy felül akarod írni a " +"korábbi eredményeket?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"This machine type can only hold %d historical results per nozzle. This " +"result will not be saved." + +msgid "Internal Error" +msgstr "Belső hiba" + +msgid "Please select at least one filament for calibration" +msgstr "Kérjük, válassz ki legalább egy filamentet a kalibráláshoz." + +msgid "Flow rate calibration result has been saved to preset" +msgstr "Az anyagáramlás kalibrálásának eredményeit elmentettük a beállításokba" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"A maximális volumetrikus sebesség kalibrálásának eredményét elmentettük a " +"beállításokban" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Mikor van szükség az áramlásdinamika kalibrálására?" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Mostantól elérhető a különböző filamentek automatikus kalibrálása, amely " +"teljesen automatizált, és az eredményt a nyomtató elmenti. A kalibrálást " +"csak a következő esetekben kell elvégezned:\n" +"1. Ha új, különböző márkájú filamenteket töltesz be, vagy a filament " +"nedves.\n" +"2. Ha a fúvóka elhasználódott vagy kicserélted egy újra.\n" +"3. Ha a maximális volumetrikus sebesség vagy a nyomtatási hőmérséklet " +"megváltozott a filamentbeállításokban." + +msgid "About this calibration" +msgstr "Információ a kalibrálásról" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "Mikor van szükség az anyagáramlás kalibrálására?" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Ezenkívül az anyagáramlás kalibrálása létfontosságú az olyan habzó anyagok " +"esetében, mint az RC repülőkben használt LW-PLA. Ezek az anyagok " +"melegítéskor nagymértékben tágulnak, és a kalibrálás hasznos referencia-" +"anyagáramlást biztosít." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"Az anyagáramlás kalibrálása a várt és a tényleges extrudált mennyiségek " +"arányát méri. Az alapértelmezett érték jól működik a Bambu Lab nyomtatókkal " +"és gyári filamentekkel, mivel azokat előre kalibráltuk és finomhangoltuk. " +"Egy hagyományos filament esetében általában nem kell anyagáramlás " +"kalibrálását elvégezni, kivéve, ha más kalibrálások után még mindig látod a " +"felsorolt hibákat. További részletekért kérjük, olvasd el a wiki cikkünket." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before performing it." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Mikor van szükség a max. volumetrikus sebesség kalibrálására" + +msgid "Over-extrusion or under extrusion" +msgstr "Túlextrudálás vagy alulextrudálás" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"A maximális volumetrikus sebesség kalibrálása ajánlott, ha a következővel " +"nyomtatsz:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "" +"jelentős termikus zsugorodással/tágulással rendelkező anyagok, mint pl." + +msgid "materials with inaccurate filament diameter" +msgstr "pontatlan átmérőjű anyagok" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "Megtaláltuk a legjobb áramlásdinamikai kalibrációs tényezőt" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"A kalibrálás egy része nem sikerült! Segíthet, ha megtisztítod a tálcát és " +"újrapróbálod. A sikertelen teszt eredményét töröljük." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"* Javasoljuk, hogy a névhez add hozzá a márkát, az anyagot, a típust, " +"illetve a páratartalmat is" + +msgid "Failed" +msgstr "Sikertelen" + +msgid "Please enter the name you want to save to printer." +msgstr "Kérjük, add meg a nevet." + +msgid "The name cannot exceed 40 characters." +msgstr "A név nem haladhatja meg a 40 karaktert." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Az azonos nevű eredmények közül csak az egyik kerül elmentésre. Biztos, hogy " +"felül akarod írni a többi eredményt?" + +msgid "Please find the best line on your plate" +msgstr "Keresd meg a legjobb vonalat a tálcán" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Keresd meg a tökéletesen extrudált sarkot" + +msgid "Input Value" +msgstr "Bemeneti érték" + +msgid "Save to Filament Preset" +msgstr "Mentés a filamentbeállításokba" + +msgid "Preset" +msgstr "Beállítás" + +msgid "Record Factor" +msgstr "Record Factor" + +msgid "We found the best flow ratio for you" +msgstr "Megtaláltuk a legjobb anyagáramlást" + +msgid "Flow Ratio" +msgstr "Anyagáramlás" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Kérjük, adj meg egy érvényes értéket (0.0 < anyagáramlás < 2.0)." + +msgid "Please enter the name of the preset you want to save." +msgstr "Kérjük, add meg az elmenteni kívánt beállítás nevét." + +msgid "Calibration1" +msgstr "Kalibrálás 1" + +msgid "Calibration2" +msgstr "Kalibrálás 2" + +msgid "Please find the best object on your plate" +msgstr "Keresd meg a legjobb tárgyat a tálcán" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Töltsd ki az értéket a legsimább felső felületű blokkból" + +msgid "Skip Calibration2" +msgstr "Kalibrálás 2 kihagyása" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "anyagáramlás: %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Kérjük, válaszd a legsimább felülettel rendelkező blokkot" + +msgid "Please choose a block with smoothest top surface." +msgstr "Kérjük, válaszd ki a legsimább felülettel rendelkező blokkot." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "" +"Kérjük, adj meg egy érvényes értéket (0 <= Max. volumetrikus sebesség <= 60)" + +msgid "Calibration Type" +msgstr "Kalibrálás típusa" + +msgid "Complete Calibration" +msgstr "Teljes kalibrálás" + +msgid "Fine Calibration based on flow ratio" +msgstr "Finom kalibrálás az anyagáramlás alapján" + +msgid "Title" +msgstr "Cím" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Egy tesztmodell kerül kinyomtatásra. Kérjük, tisztítsd meg a tálcát, és " +"helyezd vissza az asztalra a kalibrálás előtt." + +msgid "Printing Parameters" +msgstr "Nyomtatási paraméterek" + +msgid "Plate Type" +msgstr "Plate Type" + +msgid "filament position" +msgstr "filamentpozíció" + +msgid "External Spool" +msgstr "Külső tekercs" + +msgid "Filament For Calibration" +msgstr "Filament a kalibráláshoz" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Tippek a kalibrációs anyaghoz:\n" +"- Anyagok megegyező asztalhőmérséklettel\n" +"- Különböző márkájú és típusú filamentek (Márka = Bambu, Típus = Basic, " +"Matte stb.)" + +msgid "Pattern" +msgstr "Mintázat" + +msgid "Method" +msgstr "Módszer" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s nem kompatibilis ezzel: %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "Nem használhatsz TPU-t az áramlásdinamika kalibrálásához." + +msgid "Connecting to printer" +msgstr "Csatlakozás a nyomtatóhoz" + +msgid "From k Value" +msgstr "K értéktől" + +msgid "To k Value" +msgstr "K értékig" + +msgid "Step value" +msgstr "" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "A fúvóka átmérője a nyomtató beállításaiból került szinkronizálásra" + +msgid "From Volumetric Speed" +msgstr "Ettől a volumetrikus sebességtől" + +msgid "To Volumetric Speed" +msgstr "Eddig a volumetrikus sebességig" + +msgid "Flow Dynamics Calibration Result" +msgstr "Áramlásdinamikai kalibrációs eredmény" + +msgid "New" +msgstr "New" + +msgid "No History Result" +msgstr "Nincs előzmény" + +msgid "Success to get history result" +msgstr "Előzmények sikeresen lekérdezve" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Az előző anyagáramlás-dinamikai kalibrációs rekordok frissítése" + +msgid "Action" +msgstr "Művelet" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "This machine type can only hold %d historical results per nozzle." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Áramlásdinamikai kalibráció szerkesztése" + +msgid "New Flow Dynamic Calibration" +msgstr "New Flow Dynamic Calibration" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "The filament must be selected." + +msgid "Network lookup" +msgstr "Hálózati keresés" + +msgid "Address" +msgstr "Address" + +msgid "Hostname" +msgstr "Host név:" + +msgid "Service name" +msgstr "Szolgáltatás neve" + +msgid "OctoPrint version" +msgstr "OctoPrint verzió" + +msgid "Searching for devices" +msgstr "Eszközök keresése" + +msgid "Finished" +msgstr "Kész" + +msgid "Multiple resolved IP addresses" +msgstr "" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" + +msgid "PA Calibration" +msgstr "PA kalibrálás" + +msgid "DDE" +msgstr "" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "" + +msgid "PA Tower" +msgstr "PA-torony" + +msgid "PA Line" +msgstr "PA vonal" + +msgid "PA Pattern" +msgstr "PA-minta" + +msgid "Start PA: " +msgstr "Kezdő PA: " + +msgid "End PA: " +msgstr "Befejező PA:" + +msgid "PA step: " +msgstr "PA lépcső: " + +msgid "Print numbers" +msgstr "Számok nyomtatása" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Kérjük, adj meg érvényes értékeket:\n" +"Kezdő PA: >= 0.0\n" +"Befejező PA: > Start PA\n" +"PA lépcső: >= 0.001)" + +msgid "Temperature calibration" +msgstr "Hőmérséklet kalibrálás" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Filament típusa" + +msgid "Start temp: " +msgstr "Kezdőhőmérséklet: " + +msgid "End temp: " +msgstr "Befejező hőmérséklet: " + +msgid "Temp step: " +msgstr "Hőmérséklet lépcső: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" + +msgid "Max volumetric speed test" +msgstr "Maximális volumetrikus sebesség teszt" + +msgid "Start volumetric speed: " +msgstr "Kezdő volumetrikus sebesség: " + +msgid "End volumetric speed: " +msgstr "Befejező volumetrikus sebesség: " + +msgid "step: " +msgstr "lépcső: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "VFA test" +msgstr "VFA teszt" + +msgid "Start speed: " +msgstr "Kezdősebesség: " + +msgid "End speed: " +msgstr "Befejező sebesség: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "Start retraction length: " +msgstr "Kezdő visszahúzás hossza: " + +msgid "End retraction length: " +msgstr "Befejező visszahúzási hossz:" + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "G-kód küldése a nyomtató gazdagépének" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Feltöltés a nyomtatóra a következő fájlnévvel:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "Ha szükséges, használj perjeleket ( / ) könyvtárelválasztóként." + +msgid "Upload to storage" +msgstr "" + +msgid "Switch to Device tab after upload." +msgstr "" + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "A feltöltendő fájlnév nem végződik „%s”-ra. Folytatod?" + +msgid "Upload" +msgstr "Feltöltés" + +msgid "Print host upload queue" +msgstr "Feltöltési sor nyomtatása" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Folyamat" + +msgid "Host" +msgstr "Kiszolgáló" + +msgctxt "OfFile" +msgid "Size" +msgstr "Méret" + +msgid "Filename" +msgstr "Fájlnév" + +msgid "Cancel selected" +msgstr "Kiválasztott törlése" + +msgid "Show error message" +msgstr "Hibaüzenet megjelenítése" + +msgid "Enqueued" +msgstr "Sorban áll" + +msgid "Uploading" +msgstr "Feltöltés" + +msgid "Cancelling" +msgstr "Megszakítás" + +msgid "Error uploading to print host" +msgstr "" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Nem lehet logikai műveletet végrehajtani a kiválasztott tárgyakon" + +msgid "Mesh Boolean" +msgstr "Mesh Boolean" + +msgid "Union" +msgstr "Egyesítés" + +msgid "Difference" +msgstr "Különbség" + +msgid "Intersection" +msgstr "Metszéspont" + +msgid "Source Volume" +msgstr "Forrás térfogat" + +msgid "Tool Volume" +msgstr "Eszköz térfogat" + +msgid "Subtract from" +msgstr "Kivonás ebből" + +msgid "Subtract with" +msgstr "Kivonás ezzel" + +msgid "selected" +msgstr "kiválasztva" + +msgid "Part 1" +msgstr "1. tárgy" + +msgid "Part 2" +msgstr "2. tárgy" + +msgid "Delete input" +msgstr "Bemenet törlése" + +msgid "Network Test" +msgstr "Hálózati teszt" + +msgid "Start Test Multi-Thread" +msgstr "Teszt indítása több szálon" + +msgid "Start Test Single-Thread" +msgstr "Teszt indítása egy szálon" + +msgid "Export Log" +msgstr "Napló exportálása" + +msgid "Snapmaker Orca Version:" +msgstr "" + +msgid "System Version:" +msgstr "Rendszerverzió:" + +msgid "DNS Server:" +msgstr "DNS kiszolgáló:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "" + +msgid "Test Bing.com" +msgstr "Bing.com tesztelése" + +msgid "Test bing.com:" +msgstr "Bing.com tesztelése:" + +msgid "Log Info" +msgstr "Napló adatok" + +msgid "Select filament preset" +msgstr "Válassz ki filamentbeállítást" + +msgid "Create Filament" +msgstr "Filament létrehozása" + +msgid "Create Based on Current Filament" +msgstr "Létrehozás a jelenlegi filament alapján" + +msgid "Copy Current Filament Preset " +msgstr "Jelenlegi filamentbeállítás másolása" + +msgid "Basic Information" +msgstr "Alapinformációk" + +msgid "Add Filament Preset under this filament" +msgstr "Filamentbeállítás hozzáadása ehhez a filamenthez" + +msgid "We could create the filament presets for your following printer:" +msgstr "Létrehozhatjuk a filamentbeállításokat a következő nyomtatóhoz:" + +msgid "Select Vendor" +msgstr "Válassz gyártót" + +msgid "Input Custom Vendor" +msgstr "Egyedi gyártó megadása" + +msgid "Can't find vendor I want" +msgstr "Nem találom a kívánt gyártót" + +msgid "Select Type" +msgstr "Válassz típust" + +msgid "Select Filament Preset" +msgstr "Válassz filamentbeállítást" + +msgid "Serial" +msgstr "Sorozatszám" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "pl.: Basic, Matt, Silk, Marble" + +msgid "Filament Preset" +msgstr "Filamentbeállítás" + +msgid "Create" +msgstr "Létrehoz" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Vendor is not selected; please reselect vendor." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "Custom vendor missing; please input custom vendor." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"A „Bambu” vagy „Generic” nem használható gyártóként egyedi filamentek " +"esetében." + +msgid "Filament type is not selected, please reselect type." +msgstr "A filament típusa nem lett kiválasztva, kérjük, válaszd ki a típust." + +msgid "Filament serial is not inputed, please input serial." +msgstr "Filament serial missing; please input serial." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"There may be disallowed characters in the vendor or serial input of the " +"filament. Please delete and re-enter." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "Az egyedi gyártó vagy sorozat értéke üres. Kérjük, írd be újra." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "The vendor can not be a number; please re-enter." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"Még nem választottál nyomtatót vagy beállítást. Kérjük, válassz ki legalább " +"egyet." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"A(z) %s filamentnév már létezik.\n" +"Ha folytatod, az új beállítás a teljes nevével fog megjelenni. Folytatod?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Nem sikerült létrehozni a következő beállításokat:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Szeretnéd felülírni?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" + +msgid "Create Printer/Nozzle" +msgstr "Nyomtató/fúvóka létrehozása" + +msgid "Create Printer" +msgstr "Nyomtató létrehozása" + +msgid "Create Nozzle for Existing Printer" +msgstr "Fúvóka létrehozása meglévő nyomtatóhoz" + +msgid "Create from Template" +msgstr "Létrehozás sablonból" + +msgid "Create Based on Current Printer" +msgstr "Létrehozás az aktuális nyomtató alapján" + +msgid "Import Preset" +msgstr "Beállítás importálása" + +msgid "Create Type" +msgstr "Típus létrehozása" + +msgid "The model is not found, place reselect vendor." +msgstr "The model was not found; please reselect vendor." + +msgid "Select Model" +msgstr "Válassz modellt" + +msgid "Select Printer" +msgstr "Válassz nyomtatót" + +msgid "Input Custom Model" +msgstr "Egyedi modell megadása" + +msgid "Can't find my printer model" +msgstr "Nem találom a nyomtató modelljét" + +msgid "Rectangle" +msgstr "Négyzet" + +msgid "Printable Space" +msgstr "Nyomtatási terület" + +msgid "Hot Bed STL" +msgstr "Tárgyasztal STL" + +msgid "Load stl" +msgstr "STL betöltése" + +msgid "Hot Bed SVG" +msgstr "Tárgyasztal SVG" + +msgid "Load svg" +msgstr "SVG betöltése" + +msgid "Max Print Height" +msgstr "Maximális nyomtatási magasság" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "" +"A fájl mérete meghaladja a(z) %d MB-ot, kérjük ismételd meg az importálást." + +msgid "Exception in obtaining file size, please import again." +msgstr "" +"Kivétel történt a fájlméret megállapításakor, kérjük ismételd meg az " +"importálást." + +msgid "Preset path is not find, please reselect vendor." +msgstr "Útvonal nem található. Kérjük, válaszd ki újra a gyártót." + +msgid "The printer model was not found, please reselect." +msgstr "A nyomtató modellje nem található, kérjük, válaszd ki újra." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "The nozzle diameter was not found; please reselect." + +msgid "The printer preset is not found, place reselect." +msgstr "The printer preset was not found; please reselect." + +msgid "Printer Preset" +msgstr "Nyomtatóbeállítás" + +msgid "Filament Preset Template" +msgstr "Filamentbeállítás sablon" + +msgid "Deselect All" +msgstr "Kijelölés megszüntetése" + +msgid "Process Preset Template" +msgstr "Folyamatbeállítás sablon" + +msgid "Back Page 1" +msgstr "Vissza az 1. oldalra" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Még nem választottad ki, hogy melyik nyomtató beállításai alapján készüljön " +"az új. Kérjük, válaszd ki a nyomtató gyártóját és modelljét" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"Tiltott karakter került be az első oldalon a nyomtatási terület részbe. " +"Kérjük, csak számokat használj." + +msgid "The custom printer or model is not inputed, place input." +msgstr "The custom printer or model missing; please input." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserved.\n" +"\tCancel: Do not create a preset; return to the creation interface." + +msgid "You need to select at least one filament preset." +msgstr "Ki kell választanod legalább egy filamentbeállítást." + +msgid "You need to select at least one process preset." +msgstr "Ki kell választanod legalább egy folyamatbeállítást." + +msgid "Create filament presets failed. As follows:\n" +msgstr "A következő filamentbeállítások létrehozása nem sikerült:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "A következő folyamatbeállítások létrehozása nem sikerült:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Gyártó nem található. Kérjük, válaszd ki újból." + +msgid "Current vendor has no models, please reselect." +msgstr "A kiválasztott gyártónak nincsenek modelljei. Kérjük, válassz másikat." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"Nem választottad ki a gyártót és modellt, vagy nem adtál meg egy egyedi " +"gyártót és modellt." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"Érvénytelen karakter(ek) az egyedi gyártó vagy modell mezőjében. Kérjük, írd " +"be őket újra." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "Az egyedi gyártó vagy modell értéke üres. Kérjük, írd be újra." + +msgid "Please check bed printable shape and origin input." +msgstr "Kérjük, ellenőrizd az asztal alakját és a kezdőpont koordinátáit." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Nem választottál nyomtatót a fúvókacseréhez. Kérjük, válassz egy nyomtatót." + +msgid "Create Printer Successful" +msgstr "Nyomtató sikeresen létrehozva" + +msgid "Create Filament Successful" +msgstr "Filament Created Successfully" + +msgid "Printer Created" +msgstr "Nyomtató létrehozva" + +msgid "Please go to printer settings to edit your presets" +msgstr "" +"Kérjük, a beállítások szerkesztéséhez lépj be a nyomtató beállításaiba." + +msgid "Filament Created" +msgstr "Filament létrehozva" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Ha szükséges, lépj be az filamentbeállításokhoz az értékek szerkesztéséhez.\n" +"Figyelem: a fúvóka hőmérséklete, a tárgyasztal hőmérséklete és a maximális " +"volumetrikus sebesség jelentős hatással van a nyomtatási minőségre." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" + +msgid "Printer Setting" +msgstr "Nyomtatóbeállítás" + +msgid "Printer config bundle(.orca_printer)" +msgstr "" + +msgid "Filament bundle(.orca_filament)" +msgstr "" + +msgid "Printer presets(.zip)" +msgstr "Nyomtatóbeállítások (.zip)" + +msgid "Filament presets(.zip)" +msgstr "Filamentbeállítások (.zip)" + +msgid "Process presets(.zip)" +msgstr "Folyamatbeállítások (.zip)" + +msgid "initialize fail" +msgstr "inicializálás sikertelen" + +msgid "add file fail" +msgstr "fájl hozzáadása sikertelen" + +msgid "add bundle structure file fail" +msgstr "kötegstruktúra fájl hozzáadása sikertelen" + +msgid "finalize fail" +msgstr "véglegesítés sikertelen" + +msgid "open zip written fail" +msgstr "ZIP-fájl írása sikertelen" + +msgid "Export successful" +msgstr "Sikeres exportálás!" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it?\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Felhasználói filamentbeállítások.\n" +"Megosztható másokkal." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Csak azok a nyomtatók jelennek meg, amelyeknél változtak a nyomtató-, " +"filament- és folyamatbeállítások." + +msgid "Only display the filament names with changes to filament presets." +msgstr "" +"Csak azok a filamentnevek jelennek meg, ahol változtak a filamentbeállítások." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Csak azok a nyomtatónevek jelennek meg, amelyekhez tartoznak felhasználói " +"beállítások. A kiválasztott beállítások ZIP fájlként kerülnek exportálásra." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Csak azok a nyomtatónevek jelennek meg, amelyekhez tartoznak felhasználói " +"beállítások. A kiválasztott beállítások ZIP fájlként kerülnek exportálásra." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Csak azok a nyomtatónevek jelennek meg, amelyeknél változtak a " +"folyamatbeállítások. A kiválasztott beállítások ZIP fájlként kerülnek " +"exportálásra." + +msgid "Please select at least one printer or filament." +msgstr "Kérjük, válassz ki legalább egy nyomtatót vagy filamentet." + +msgid "Please select a type you want to export" +msgstr "Válaszd ki az exportálandó beállítás típusát" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "Failed to create temporary folder, please try Export Configs again." + +msgid "Edit Filament" +msgstr "Filament szerkesztése" + +msgid "Filament presets under this filament" +msgstr "A filamenthez tartozó beállítások" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Megjegyzés: Ha a filamenthez tartozó utolsó beállítás is törlődik, akkor a " +"filament szintén törlésre kerül a párbeszédablak bezárása után." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "A más beállítások által örökölt beállítások nem törölhetők" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" + +msgid "Delete Preset" +msgstr "Beállítás törlése" + +msgid "Are you sure to delete the selected preset?" +msgstr "Biztosan törlöd a kiválasztott beállítást?" + +msgid "Delete preset" +msgstr "Beállítás törlése" + +msgid "+ Add Preset" +msgstr "+ Beállítás hozzáadása" + +msgid "Delete Filament" +msgstr "Filament törlése" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"A filamenthez tartozó összes beállítás törölve lesz. \n" +"Ha ez a filament jelenleg használatban van a nyomtatón, kérjük, töröld az " +"adott férőhelyen a filamentadatokat." + +msgid "Delete filament" +msgstr "Filament törlése" + +msgid "Add Preset" +msgstr "Beállítás hozzáadása" + +msgid "Add preset for new printer" +msgstr "Beállítás hozzáadása új nyomtatóhoz" + +msgid "Copy preset from filament" +msgstr "Beállítás másolása filamentről" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "A filamenthez nem található beállítás. Kérjük, válassz ki másikat." + +msgid "[Delete Required]" +msgstr "[Törlés szükséges]" + +msgid "Edit Preset" +msgstr "Beállítás módosítása" + +msgid "For more information, please check out Wiki" +msgstr "For more information, please check out our Wiki" + +msgid "Collapse" +msgstr "Összecsuk" + +msgid "Daily Tips" +msgstr "Napi tippek" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "eltárolt fúvóka: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Your nozzle diameter in preset is not consistent with the saved nozzle " +"diameter. Have you changed your nozzle?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "* %s anyag nyomtatása ezzel: %s a fúvóka eltömődéséhez vezethet" + +msgid "Need select printer" +msgstr "Ki kell választanod a nyomtatót" + +msgid "The start, end or step is not valid value." +msgstr "A kezdő-, vég- vagy lépésérték nem érvényes." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Nem lehet kalibrálni: előfordulhat, hogy a beállított kalibrációs " +"értéktartomány túl nagy, vagy a lépésköz túl kicsi" + +msgid "Physical Printer" +msgstr "Fizikai nyomtató" + +msgid "Print Host upload" +msgstr "Feltöltés a nyomtatóra" + +msgid "Could not get a valid Printer Host reference" +msgstr "Nem sikerült érvényes nyomtató hivatkozást lekérni" + +msgid "Success!" +msgstr "Sikerült!" + +msgid "Are you sure to log out?" +msgstr "" + +msgid "Refresh Printers" +msgstr "Nyomtatók frissítése" + +msgid "View print host webui in Device tab" +msgstr "" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"A HTTPS CA-fájl nem kötelező. Csak akkor szükséges, ha a HTTPS-t saját " +"aláírású tanúsítvánnyal használod." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Tanúsítványfájlok (*.crt, *.pem) |*.crt; *.pem|Minden fájl|* . *" + +msgid "Open CA certificate file" +msgstr "CA tanúsítványfájl megnyitása" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"Ezen a rendszeren %s HTTPS-tanúsítványokat használ a rendszer " +"tanúsítványtárolójából vagy kulcstárolójából." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Egyéni CA-fájl használatához importáld azt a tanúsítványtárolóba / " +"kulcstárolóba." + +msgid "Login/Test" +msgstr "" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"A nyomtatóállomáson keresztül csatlakoztatott nyomtatókhoz való csatlakozás " +"sikertelen." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "A nyomtatóállomás típusa nem egyezik: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "Connection to AstroBox is working correctly." + +msgid "Could not connect to AstroBox" +msgstr "Nem sikerült csatlakozni az AstroBoxhoz" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Note: AstroBox version 1.1.0 or higher is required." + +msgid "Connection to Duet works correctly." +msgstr "Connection to Duet is working correctly." + +msgid "Could not connect to Duet" +msgstr "Nem sikerült csatlakozni a Duethez" + +msgid "Unknown error occured" +msgstr "Ismeretlen hiba történt" + +msgid "Wrong password" +msgstr "Hibás jelszó" + +msgid "Could not get resources to create a new connection" +msgstr "Nem sikerült erőforrásokat szerezni új kapcsolat létrehozásához" + +msgid "Upload not enabled on FlashAir card." +msgstr "A feltöltés nincs engedélyezve a FlashAir kártyán." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "Connection to FlashAir is working correctly and upload is enabled." + +msgid "Could not connect to FlashAir" +msgstr "Nem sikerült csatlakozni a FlashAirhez" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Megjegyzés: FlashAir 2.00.02 vagy újabb firmware és bekapcsolt feltöltési " +"funkció szükséges." + +msgid "Connection to MKS works correctly." +msgstr "Connection to MKS is working correctly." + +msgid "Could not connect to MKS" +msgstr "Nem sikerült csatlakozni az MKS-hez" + +msgid "Connection to OctoPrint works correctly." +msgstr "Connection to OctoPrint is working correctly." + +msgid "Could not connect to OctoPrint" +msgstr "Nem sikerült csatlakozni az OctoPrinthez" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Note: OctoPrint version 1.1.0 or higher is required." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Connection to Prusa SL1 / SL1S is working correctly." + +msgid "Could not connect to Prusa SLA" +msgstr "Nem sikerült csatlakozni a Prusa SLA-hoz" + +msgid "Connection to PrusaLink works correctly." +msgstr "Connection to PrusaLink is working correctly." + +msgid "Could not connect to PrusaLink" +msgstr "Nem sikerült csatlakozni a PrusaLinkhez" + +msgid "Storages found" +msgstr "" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" + +msgid "Connection to Prusa Connect works correctly." +msgstr "" + +msgid "Could not connect to Prusa Connect" +msgstr "" + +msgid "Connection to Repetier works correctly." +msgstr "Connection to Repetier is working correctly." + +msgid "Could not connect to Repetier" +msgstr "Nem sikerült csatlakozni a Repetierhez" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Note: Repetier version 0.90.0 or higher is required." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP állapot: %1%\n" +"Üzenet törzse: „%2%“" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"A válasz feldolgozása sikertelen.\n" +"Üzenet törzse: „%1%“\n" +"Hiba: „%2%“" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"A nyomtató lekérdezése sikertelen.\n" +"Üzenet törzse: „%1%“\n" +"Hiba: „%2%”" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a small layer height, and results in almost negligible layer lines " +"and high print quality. It is suitable for most general printing cases." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. This results in " +"much higher print quality but a much longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height. This results in almost negligible layer lines and " +"slightly longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height. This results in slightly visible layer lines but shorter print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height. This results in almost invisible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost invisible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height. This results in minimal layer lines and higher print quality but " +"longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in minimal layer lines and much higher print quality " +"but much longer print time." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a normal layer height, and results in average layer lines and print " +"quality. It is suitable for most printing cases." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but slightly shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in less apparent layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost negligible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and longer print time." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in much more apparent layer lines and much lower print " +"quality, but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and slightly higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"It has a very big layer height, and results in very apparent layer lines, " +"low print quality and shorter printing time." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height. This results in very apparent layer lines and much lower print " +"quality but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height. This results in extremely apparent layer lines and much lower " +"print quality but much shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height. This results in slightly less but still apparent layer " +"lines and slightly higher print quality, but longer print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height. This results in less but still apparent layer lines and slightly " +"higher print quality, but longer print time in some cases." + +msgid "Connected to Obico successfully!" +msgstr "" + +msgid "Could not connect to Obico" +msgstr "" + +msgid "Connected to SimplyPrint successfully!" +msgstr "" + +msgid "Could not connect to SimplyPrint" +msgstr "" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" + +msgid "Connection to Flashforge works correctly." +msgstr "" + +msgid "Could not connect to Flashforge" +msgstr "" + +msgid "The provided state is not correct." +msgstr "" + +msgid "Please give the required permissions when authorizing this application." +msgstr "" + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" + +msgid "User cancelled." +msgstr "" + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Vágóeszköz\n" +"Tudtad, hogy a vágóeszközzel bármilyen szögben és pozícióban elvághatsz egy " +"modellt?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Modell javítása\n" +"Tudtad, hogy Windows rendszeren a sérült 3D-modelleket kijavíthatod, hogy " +"elkerüld a szeletelési problémákat?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Timelapse\n" +"Tudtad, hogy minden nyomtatáshoz timelapse-videót készíthetsz?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Automatikus elrendezés\n" +"Tudtad, hogy automatikusan elrendezheted a projekt összes objektumát?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Automatikus orientáció\n" +"Tudtad, hogy az objektumokat egy kattintással elforgathatod a nyomtatáshoz " +"optimális orientációba?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Felületre fektetés\n" +"Tudtad, hogy a modellt egyszerűen elforgathatod úgy, hogy az egyik oldala az " +"asztalra kerüljön? Válaszd a „Felületre fektetés“ opciót, vagy csak nyomd " +"meg az F gombot.\n" +" " + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Objektumlista\n" +"Tudtad, hogy megtekintheted az összes objektumot/tárgyat egy listában és " +"egyesével módosíthatod a beállításaikat?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Szeletelési paramétertáblázat\n" +"Tudtad, hogy megtekintheted az összes objektumot/tárgyat egy listában és " +"egyesével módosíthatod a beállításaikat?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Objektumokra/tárgyakra osztás\n" +"Tudtad, hogy egy nagy objektumot kisebbekre oszthatsz a könnyebb színezés " +"vagy nyomtatás érdekében?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Z varrat helye\n" +"Tudtad, hogy testreszabhatod a Z varrat helyét, és akár rá is festheted a " +"nyomatra, hogy kevésbé látható helyre kerüljön? Ezzel javíthatod a modelled " +"megjelenését. Próbáld ki!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Anyagáramlás finomhangolása\n" +"Tudtad, hogy az anyagáramlás finomhangolható a még szebb nyomatok érdekében? " +"Az anyagtól függően némi finomhangolással jelentősen javíthatsz a nyomtatott " +"modell felületeinek megjelenésén." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Oszd fel a nyomatokat több tálcára\n" +"Tudtad, hogy a sok részből álló modellt nyomtatásra kész tálcákra oszthatod? " +"Így egyszerűbben nyomon követheted a nyomtatásra váró tárgyakat." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Gyorsítsd fel a nyomtatást az adaptív rétegmagassággal\n" +"Tudtad, hogy a nyomtatást tovább gyorsíthatod adaptív rétegmagasság " +"használatával? Próbáld ki!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Támaszok festése\n" +"Tudtad, hogy festéssel is kijelölheted a támaszok helyét? Ezzel az opcióval " +"elérheted, hogy csak oda kerüljön támasz, ahol valóban szükség van rá." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Különböző típusú támaszok\n" +"Tudtad, hogy többféle támasz közül választhatsz? A fatámaszok remekül " +"működnek az organikus modelleknél, kevesebb filamentet igényelnek és " +"elősegítik a gyorsabb nyomtatást. Próbáld ki!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Nyomtatás selyemhatású filamenttel\n" +"Tudtad, hogy a selyemhatású filamentek több figyelmet igényelnek a sikeres " +"nyomtatás érdekében? A legjobb eredmény érdekében mindig használj magasabb " +"hőmérsékletet és alacsonyabb sebességet." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Perem a jobb tapadás érdekében\n" +"Tudtad, hogy a ha a nyomtatott modell csak kis felületen érintkezik az " +"asztallal, akkor ajánlott peremet használni?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Paraméterek beállítása több objektumhoz\n" +"Tudtad, hogy egyszerre is beállíthatod a szeletelési paramétereket az összes " +"kijelölt objektumhoz?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Objektumok egymásra helyezése\n" +"Tudtad, hogy több objektumot is egymásra rakhatsz, amit aztán egyben " +"kinyomtathatsz?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Öblítés támaszokba/objektumokba/kitöltésbe\n" +"Tudtad, hogy csökkentheted a felhasznált filament mennyiségét, ha a " +"filamentcsere során az öblítést a támaszba/objektumba/kitöltésbe állítod?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Szilárdság javítása\n" +"Tudtad, hogy több fal vagy nagyobb kitöltés használatával javíthatod a " +"modell szilárdságát?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Mikor nyomtass nyitott ajtóval\n" +"Tudtad, hogy a nyomtató ajtajának kinyitásával csökkentheted az extruder/" +"hotend eltömődésének valószínűségét, ha alacsonyabb hőmérsékletű filamentet " +"nyomtatsz? További információ a Wikiben olvashatsz erről." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Vetemedés elkerülése\n" +"Tudtad, hogy a vetemedésre hajlamos anyagok (például ABS) nyomtatásakor a " +"tárgyasztal hőmérsékletének növelése csökkentheti a vetemedés valószínűségét?" + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Kérjük, adj meg egy érvényes értéket (K 0-0,3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Kérjük, adj meg egy érvényes értéket (K 0-0,3; N 0,6-2,0)" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "Printer local connection failed; please try again." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Az áramlásdinamikai kalibráció részleteit a wikiben találod.\n" +#~ "\n" +#~ "Általában nincs szükség a kalibrálásra. Ha egyszínű / egy anyagból álló " +#~ "nyomtatást indítasz, és a nyomtatás indítása menüben be van jelölve az " +#~ "„Áramlásdinamika kalibrálás“ opció, a nyomtató a nyomtatás előtt " +#~ "kalibrálja a filamenteket. Ha többszínű / több anyagból álló nyomtatást " +#~ "indítasz, a nyomtató minden filamentváltáskor az alapértelmezett " +#~ "kompenzációs paramétert használja a filamentekhez, ami a legtöbb esetben " +#~ "jó eredményt ad.\n" +#~ "\n" +#~ "Felhívjuk a figyelmed, hogy néhány esetben a kalibrálás eredménye " +#~ "megbízhatatlan lehet: texturált tálcát / rossz tapadású tálcát használsz " +#~ "a kalibráláshoz. (Kérjük, mosd le a tálcát vagy használj ragasztót!) " +#~ "További információkat a wikiben találhatsz.\n" +#~ "\n" +#~ "A kalibrációs eredmények körülbelül 10 százalékos szórást mutatnak a " +#~ "tesztjeinkben, ami miatt előfordulhat, hogy az eredmények nem azonosak " +#~ "minden kalibrációnál. Még vizsgáljuk a kiváltó okot, hogy a jövőbeni " +#~ "frissítésekkel tovább javíthassuk ezt a funkciót." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Az azonos nevű eredmények közül csak az egyik kerül elmentésre. Biztos, " +#~ "hogy felül akarod írni a többi eredményt?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Már létezik egy ugyanilyen nevű, korábbi kalibrálási eredmény: %s. Csak " +#~ "egy azonos nevű eredményt lehet elmenteni. Biztos, hogy felül akarod írni " +#~ "a korábbi eredményeket?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Keresd meg a tökéletesen extrudált sarkot" + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "Export &Configs" +#~ msgstr "Export &Configs" + +#~ msgid "Infill direction" +#~ msgstr "Kitöltés iránya" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Engedélyezd ezt az opciót, hogy olyan G-kódot kapj, amiben G2 és G3 " +#~ "mozgások vannak" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "Ez lehetővé teszi, hogy a kitöltési terület kissé nagyobb legyen, nagyobb " +#~ "átfedést biztosítva a falakkal a jobb kapcsolódás érdekében. A százalékos " +#~ "érték a ritkás kitöltés vonalszélességéhez viszonyított érték." + +#~ msgid "Unload Filament" +#~ msgstr "Filament kitöltése" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Válassz egy AMS rekeszt, majd nyomd meg a \"Load\" vagy \"Unload\" gombot " +#~ "a filament automatikus be- vagy kitöltéséhez." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "MainBoard" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "active" +#~ msgstr "aktív" + +#~ msgid "Jump to layer" +#~ msgstr "Ugrás a rétegre" + +#~ msgid "Cabin humidity" +#~ msgstr "Kamra páratartalma" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "A zöld azt jelenti, hogy az AMS páratartalma normális, a narancs és a " +#~ "piros pedig azt jelenti, hogy a páratartalom túl magas (Higrométer: minél " +#~ "alacsonyabb, annál jobb)." + +#~ msgid "Desiccant status" +#~ msgstr "Páramegkötő állapota" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "A két sávnál alacsonyabb páramegkötő-állapot azt jelzi, hogy a " +#~ "páramegkötő nem működik. Cseréld ki a páramegkötő tasakokat (minél " +#~ "magasabb, annál jobb)." + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Megjegyzés: Ha a fedél nyitva van, vagy nemrég cserélted ki a tasakokat, " +#~ "órákig vagy egy éjszakáig tarthat a nedvesség felszívódása. Az alacsony " +#~ "hőmérséklet szintén lelassítja a folyamatot. Ez idő alatt előfordulhat, " +#~ "hogy a visszajelző nem a pontos értéket mutatja." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Megjegyzés: ha az új tekercs nyomtatás során kerül behelyezésre, az AMS " +#~ "nem fogja automatikusan kiolvasni az információkat a nyomtatás végéig." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "G-kód sikeresen exportálva ide: %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Sikertelen inicializálás (Nincs eszköz)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Sikertelen inicializálás (nem található kamera)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "A nyomtató a letöltéssel van elfoglalva; kérjük, várd meg, amíg a " +#~ "letöltés befejeződik." + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Sikertelen inicializálás (nem elérhető LAN-módban)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "Az inicializálás sikertelen (hiányzó nyomtató LAN IP-cím)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Megállítva [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "A betöltés sikertelen [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "No files [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Load failed [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Failed to fetch model infomation from printer." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Failed to parse model infomation" + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Megváltoztattad a(z) \"%1%\" beállítás néhány beállítását.\n" +#~ "Szeretnéd ezeket a módosított beállításokat (új értéket) megtartani a " +#~ "másik beállításra való váltás után?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Megváltoztattál néhány beállítást.\n" +#~ "Szeretnéd ezeket megtartani a másik beállításra való váltás után?" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "A függőleges héjvastagság biztosítása érdekében szilárd kitöltést " +#~ "alkalmaz a lejtős felületek közelében." + +#~ msgid "Configuration package updated to " +#~ msgstr "Konfigurációs csomag frissítve a következőre " + +#~ msgid "The Config can not be loaded." +#~ msgstr "A konfiguráció nem tölthető be." + +#~ msgid "Movement:" +#~ msgstr "Mozgatás:" + +#~ msgid "Movement" +#~ msgstr "Mozgás" + +#~ msgid "Auto Segment" +#~ msgstr "Automatikus szegmentálás" + +#~ msgid "Depth ratio" +#~ msgstr "Depth ratio" + +#~ msgid "Prizm" +#~ msgstr "Prizm" + +#~ msgid "connector is out of cut contour" +#~ msgstr "connector is out of cut contour" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "connectors are out of cut contour" + +#~ msgid "connector is out of object" +#~ msgstr "connector is out of object" + +#~ msgid "connectors is out of object" +#~ msgstr "Connectors must be on object surface." + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Invalid state. \n" +#~ "No one part is selected to keep after cut" + +#~ msgid "Edit Text" +#~ msgstr "Edit Text" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Hiba. Nem sikerült létrehozni a szálat." + +#~ msgid "Exception" +#~ msgstr "Kivétel" + +#~ msgid "Choose SLA archive:" +#~ msgstr "Choose SLA archive:" + +#~ msgid "Import file" +#~ msgstr "Import file" + +#~ msgid "Import model and profile" +#~ msgstr "Import model and profile" + +#~ msgid "Import profile only" +#~ msgstr "Import profile only" + +#~ msgid "Import model only" +#~ msgstr "Import model only" + +#~ msgid "Accurate" +#~ msgstr "Accurate" + +#~ msgid "Balanced" +#~ msgstr "Balanced" + +#~ msgid "Quick" +#~ msgstr "Quick" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Megszabja, hogy a fúvóka visszahúzáskor mekkora távot mozog az utolsó " +#~ "útvonalán" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Modell egyszerűsítése\n" +#~ "Tudtad, hogy csökkentheted a háromszögek számát a Modell egyszerűsítése " +#~ "opcióval? Kattints jobb gombbal a modellre, és válaszd a Modell " +#~ "egyszerűsítése lehetőséget. További információ a dokumentációban " +#~ "található." + +#~ msgid "Filling bed " +#~ msgstr "Filling bed" + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "%1% kitöltési mintázat nem támogatja a 100%%-os kitöltés." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "Átváltasz vonalak mintázatra?\n" +#~ "Igen - Váltás a vonalak mintázatra\n" +#~ "Nem - Sűrűség visszaállítása az alapértelmezett, nem 100%-os értékre" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "A filament betöltése előtt melegítsd fel a fúvókát 170 fok fölé." + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "" +#~ "Ez a belső ritkás kitöltés sűrűsége. A 100%% azt jelenti, hogy az " +#~ "objektum végig tömör lesz." + +#~ msgid "Tree support wall loops" +#~ msgstr "Fa támasz falak száma" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "Ez a beállítás határozza meg a falak számát a fa támasz körül." + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " doesn't work at 100%% density " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Eszköz-Felületre fektetés" + +#~ msgid "Export as STL" +#~ msgstr "Exportálás STL-ként" + +#~ msgid "Check cloud service status" +#~ msgstr "Check cloud service status" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Adj meg egy érvényes értéket (K 0-0,5 között)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "Adj meg egy érvényes értéket (K 0-0,5, N 0,6-2,0 között)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Összes objektum exportálása STL-ként" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "A 3mf nem kompatibilis, csak geometriai adatok kerülnek betöltésre!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Nem kompatibilis 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "Nyomtatók hozzáadása/eltávolítása" + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s is not supported by the AMS." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Ne emlékeztessen újra erre a verzióra." + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Hiba: az IP vagy a hozzáférési kód nem helyes" + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Belső/külső fal és kitöltés sorrendje" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "A belső fal, a külső fal és a kitöltés nyomtatási sorrendje. " + +#~ msgid "inner/outer/infill" +#~ msgstr "belső/külső/kitöltés" + +#~ msgid "outer/inner/infill" +#~ msgstr "külső/belső/kitöltés" + +#~ msgid "infill/inner/outer" +#~ msgstr "kitöltés/belső/külső" + +#~ msgid "infill/outer/inner" +#~ msgstr "kitöltés/külső/belső" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "belső-külső-belső/kitöltés" + +#~ msgid "Export 3MF" +#~ msgstr "3MF exportálása" + +#~ msgid "Export project as 3MF." +#~ msgstr "Projekt exportálása 3MF formátumban." + +#~ msgid "Export slicing data" +#~ msgstr "Szeletelési adatok exportálása" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Szeletelési adatok exportálása egy mappába" + +#~ msgid "Load slicing data" +#~ msgstr "Szeletelési adatok betöltése" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Gyorsítótárazott szeletelési adatok betöltése mappából" + +#~ msgid "Slice" +#~ msgstr "Szeletelés" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "" +#~ "Tálcák szeletelése: 0 - összes tálca, i - i tálca, egyéb - érvénytelen" + +#~ msgid "Show command help." +#~ msgstr "Parancs súgó megjelenítése." + +#~ msgid "UpToDate" +#~ msgstr "Naprakész" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "Frissítsd a 3mf konfigurációs értékeit a legújabbra." + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "max triangle count per plate for slicing" + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "max slicing time per plate in seconds" + +#~ msgid "Normative check" +#~ msgstr "Normative check" + +#~ msgid "Check the normative items." +#~ msgstr "Check the normative items." + +#~ msgid "Output Model Info" +#~ msgstr "Kimeneti modell információ" + +#~ msgid "Output the model's information." +#~ msgstr "Kimeneti modell információ." + +#~ msgid "Export Settings" +#~ msgstr "Beállítások exportálása" + +#~ msgid "Export settings to a file." +#~ msgstr "Beállítások exportálása egy fájlba." + +#~ msgid "Send progress to pipe" +#~ msgstr "Folyamat elküldése" + +#~ msgid "Send progress to pipe." +#~ msgstr "Folyamat elküldése." + +#~ msgid "Arrange Options" +#~ msgstr "Elrendezési lehetőségek" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Elrendezési lehetőségek: 0-letiltás, 1-engedélyezés, egyéb-auto" + +#~ msgid "Convert Unit" +#~ msgstr "Mértékegység átváltása" + +#~ msgid "Convert the units of model" +#~ msgstr "Modell mértékegységének átváltása" + +#~ msgid "Scale the model by a float factor" +#~ msgstr "A modell méretezése egy lebegő tényezővel" + +#~ msgid "Load General Settings" +#~ msgstr "Általános beállítások betöltése" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "Folyamat/gépbeállítások betöltése a megadott fájlból" + +#~ msgid "Load Filament Settings" +#~ msgstr "Filamentbeállítások betöltése" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "Filamentbeállítások betöltése a megadott fájllistából" + +#~ msgid "Skip Objects" +#~ msgstr "Skip Objects" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Skip some objects in this print" + +#~ msgid "Output directory" +#~ msgstr "Kimeneti mappa" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Az exportált fájlok kimeneti mappája." + +#~ msgid "Debug level" +#~ msgstr "Hibakeresés szintje" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "A hibakeresési naplózási szint beállítása. 0:fatal, 1:error, 2:warning, 3:" +#~ "info, 4:debug, 5:trace\n" + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "3D-jelenettel kapcsolatos műveletek\n" +#~ "Tudod, hogyan változtathatod meg a nézetet és hogyan választhatod ki az " +#~ "objektumot/tárgyat egérrel és érintőképernyővel a 3D-jelenetben?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Modell javítása\n" +#~ "Tudtad, hogy a sérült 3D-modelleket megjavíthatod, amivel elkerülhetsz " +#~ "sok szeletelési problémát?" + +#~ msgid "Embeded" +#~ msgstr "Embedded" + +#~ msgid "Online Models" +#~ msgstr "Online Models" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "Show online staff-picked models on the home page" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "A minimum nyomtatási sebesség hűtés miatti lassításkor." + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "Az asztalhőmérséklet magasabb, mint a filament üvegesedési hőmérséklete. " +#~ "Kérjük, hogy a nyomtatás során tartsd nyitva a nyomtatót, vagy csökkentsd " +#~ "az asztalhőmérsékletet." + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Üvegesedési hőmérséklet" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "Az anyag ezen a hőmérsékleten meglágyul. Ezért a tárgyasztal hőmérséklete " +#~ "nem lehet ennél magasabb." + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "" +#~ "Engedélyezd ezt az opciót, ha a gép rendelkezik kiegészítő tárgyhűtő " +#~ "ventilátorral" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "A kiegészítő tárgyhűtő ventilátor fordulatszáma. A kiegészítő ventilátor " +#~ "ezen a fordulatszámon fog működni a nyomtatás során, kivéve az első " +#~ "néhány réteget, amelynél kikapcsolt hűtés van megadva" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "Az alsó üres rétegeket a legközelebbi normál rétegek váltják fel." + +#~ msgid "The model has too many empty layers." +#~ msgstr "A modellben túl sok az üres réteg." + +#~ msgid "Cali" +#~ msgstr "Kali" + +#~ msgid "Calibration of extrusion" +#~ msgstr "Extrudálás kalibrálása" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Push new filament into the extruder" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "A többi réteg asztalhőmérséklete több mint %d Celsius-fokkal alacsonyabb, " +#~ "mint a kezdőréteg hőmérséklete.\n" +#~ "Ez azt okozhatja, hogy a modell a nyomtatás során leválik a tárgyasztalról" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "Az asztalhőmérséklet magasabb, mint a filament üvegesedési hőmérséklete.\n" +#~ "Ez a fúvóka eltömődését és nyomtatási hibákat okozhat.\n" +#~ "Kérjük, hogy a nyomtatás során tartsd nyitva a nyomtatót, vagy csökkentsd " +#~ "az asztalhőmérsékletet." + +#~ msgid "Total Time Estimation" +#~ msgstr "Total Time Estimation" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Rezonanciafrekvencia meghatározása" + +#~ msgid "Immediately score" +#~ msgstr "Immediately score" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "Please give a score for your favorite Bambu Market model." + +#~ msgid "Score" +#~ msgstr "Score" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Bambu High Temperature Plate" + +#~ msgid "Can't connect to the printer" +#~ msgstr "Nem lehet csatlakozni a nyomtatóhoz" + +#~ msgid "Recommended temperature range" +#~ msgstr "Ajánlott hőmérséklet-tartomány" + +#~ msgid "High Temp Plate" +#~ msgstr "High Temp Plate" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "Asztalhőmérséklet a magas hőmérsékletű tálca használatával. A 0 érték azt " +#~ "jelenti, hogy a filament nem támogatja a High Temp Plate-re történő " +#~ "nyomtatást" + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Belső áthidalások támaszának vastagsága" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "A támaszok típusa és formája. Normál támasz esetén a rácsmintázat " +#~ "stabilabb alátámasztást eredményez, míg a szorosan illeszkedő tornyok " +#~ "anyagot takarítanak meg és csökkentik az objektumon keletkező felületi " +#~ "hibákat.\n" +#~ "A fa támaszok esetén a karcsú változat agresszívebben egyesíti az ágakat " +#~ "és több anyagot takarít meg (alapértelmezett), míg a hibrid változat a " +#~ "normál támaszokhoz hasonló szerkezetet hoz létre a nagy lapos túlnyúlások " +#~ "alatt." + +#~ msgid "Bed temperature difference" +#~ msgstr "Asztalhőmérséklet különbség" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "Nem ajánlott, hogy a kezdőréteget követő többi réteg asztalhőmérséklete " +#~ "alacsonyabb legyen ennél a küszöbértéknél. Ha a többi rétegnél túl " +#~ "alacsony asztalhőmérsékletet használsz, előfordulhat, hogy a tárgy " +#~ "leválik az asztalról nyomtatás közben" + +#~ msgid "Orient the model" +#~ msgstr "Modell orientációja" diff --git a/localization/i18n/it/Snapmaker_Orca_it.po b/localization/i18n/it/Snapmaker_Orca_it.po new file mode 100644 index 0000000000..241f7c8c96 --- /dev/null +++ b/localization/i18n/it/Snapmaker_Orca_it.po @@ -0,0 +1,17976 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: \n" +"Language-Team: \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n==1) ? 0 : 1;\n" +"X-Generator: Poedit 3.4.2\n" + +msgid "Supports Painting" +msgstr "Pittura Supporti" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Rotella del mouse" + +msgid "Section view" +msgstr "Vista in sezione" + +msgid "Reset direction" +msgstr "Ripristina direzione" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Rotella del mouse" + +msgid "Pen size" +msgstr "Dimensione penna" + +msgid "Left mouse button" +msgstr "Tasto sinistro mouse" + +msgid "Enforce supports" +msgstr "Rinforzi supporti" + +msgid "Right mouse button" +msgstr "Tasto destro mouse" + +msgid "Block supports" +msgstr "Blocca supporti" + +msgid "Shift + Left mouse button" +msgstr "Shift + Tasto sinistro mouse" + +msgid "Erase" +msgstr "Elimina" + +msgid "Erase all painting" +msgstr "Cancellare tutta la pittura" + +msgid "Highlight overhang areas" +msgstr "Evidenziare le sporgenze" + +msgid "Gap fill" +msgstr "Riempimento gap" + +msgid "Perform" +msgstr "Eseguire" + +msgid "Gap area" +msgstr "Area Gap" + +msgid "Tool type" +msgstr "Tipo di strumento" + +msgid "Smart fill angle" +msgstr "Angolo riempimento intelligente" + +msgid "On overhangs only" +msgstr "Solo sulle sporgenze" + +msgid "Auto support threshold angle: " +msgstr "Angolo di soglia per supporto automatico: " + +msgid "Circle" +msgstr "Cerchio" + +msgid "Sphere" +msgstr "Sfera" + +msgid "Fill" +msgstr "Riempi" + +msgid "Gap Fill" +msgstr "Riempimento gap" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Consente di pitturare solo sulle sfaccettature selezionate da: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Evidenziare le facce in base all'angolo di sporgenza." + +msgid "No auto support" +msgstr "Nessun supporto automatico" + +msgid "Support Generated" +msgstr "Supporto generato" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo-Posiziona su faccia" + +msgid "Lay on face" +msgstr "Posiziona su faccia" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Il numero di filamenti supera il numero massimo supportato dallo strumento " +"di pittura. Solo il primo %1% dei filamenti sarà disponibile nello strumento " +"di pittura." + +msgid "Color Painting" +msgstr "Pittura a colori" + +msgid "Pen shape" +msgstr "Forma penna" + +msgid "Paint" +msgstr "Pittura" + +msgid "Key 1~9" +msgstr "Tasto 1~9" + +msgid "Choose filament" +msgstr "Scegli filamento" + +msgid "Edge detection" +msgstr "Rilevamento dei bordi" + +msgid "Triangles" +msgstr "Triangoli" + +msgid "Filaments" +msgstr "Filamenti" + +msgid "Brush" +msgstr "Pennello" + +msgid "Smart fill" +msgstr "Riempimento intelligente" + +msgid "Bucket fill" +msgstr "Riempimento Secchio" + +msgid "Height range" +msgstr "Intervallo altezza" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Maiusc + Invio" + +msgid "Toggle Wireframe" +msgstr "Attiva Wireframe" + +msgid "Shortcut Key " +msgstr "Shortcut Key " + +msgid "Triangle" +msgstr "Triangolo" + +msgid "Height Range" +msgstr "Interv. altezza" + +msgid "Vertical" +msgstr "Verticale" + +msgid "Horizontal" +msgstr "Orizzontale" + +msgid "Remove painted color" +msgstr "Rimuovi colore dipinto" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Pitturato utilizzando: Filamento %1%" + +msgid "Move" +msgstr "Sposta" + +msgid "Gizmo-Move" +msgstr "Gizmo-Sposta" + +msgid "Rotate" +msgstr "Ruota" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-Ruota" + +msgid "Optimize orientation" +msgstr "Ottimizza orientamento" + +msgid "Apply" +msgstr "Applica" + +msgid "Scale" +msgstr "Ridimensiona" + +msgid "Gizmo-Scale" +msgstr "Gizmo-Ridimensiona" + +msgid "Error: Please close all toolbar menus first" +msgstr "Errore: chiudi prima tutti i menu della barra degli strumenti" + +msgid "in" +msgstr "in" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Posizione" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Rotazione" + +msgid "Scale ratios" +msgstr "Rapporti di scala" + +msgid "Object Operations" +msgstr "Operazioni sugli oggetti" + +msgid "Volume Operations" +msgstr "Operazioni volume" + +msgid "Translate" +msgstr "Traduci" + +msgid "Group Operations" +msgstr "Operazioni Gruppo" + +msgid "Set Position" +msgstr "Imposta posizione" + +msgid "Set Orientation" +msgstr "Imposta orientamento" + +msgid "Set Scale" +msgstr "Imposta scala" + +msgid "Reset Position" +msgstr "Ripristina posizione" + +msgid "Reset Rotation" +msgstr "Reimposta rotazione" + +msgid "World coordinates" +msgstr "Coordinate reali" + +msgid "Object coordinates" +msgstr "Coordinate oggetto" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Dimensioni" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "Scala uniforme" + +msgid "Planar" +msgstr "Planare" + +msgid "Dovetail" +msgstr "A coda di rondine" + +msgid "Auto" +msgstr "Auto" + +msgid "Manual" +msgstr "Manuale" + +msgid "Plug" +msgstr "Connettore" + +msgid "Dowel" +msgstr "Tassello" + +msgid "Snap" +msgstr "Snap" + +msgid "Prism" +msgstr "Prisma" + +msgid "Frustum" +msgstr "Tronco" + +msgid "Square" +msgstr "Quadrato" + +msgid "Hexagon" +msgstr "Esagono" + +msgid "Keep orientation" +msgstr "Mantieni orientamento" + +msgid "Place on cut" +msgstr "Posiziona sul taglio" + +msgid "Flip upside down" +msgstr "Capovolgi" + +msgid "Connectors" +msgstr "Connettori" + +msgid "Type" +msgstr "Tipo" + +msgid "Style" +msgstr "Stile" + +msgid "Shape" +msgstr "Forma" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Profondità" + +msgid "Groove" +msgstr "Scanalatura" + +msgid "Width" +msgstr "Larghezza" + +msgid "Flap Angle" +msgstr "Inverti Angolo" + +msgid "Groove Angle" +msgstr "Angolo Scanalatura" + +msgid "Part" +msgstr "Parte" + +msgid "Object" +msgstr "Oggetto" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Clicca per capovolgere il piano di taglio\n" +"Trascina per spostare il piano di taglio" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Clicca per capovolgere il piano di taglio\n" +"Trascina per spostare il piano di taglio\n" +"Clicca con il tasto destro del mouse su una parte per assegnarla all'altro " +"lato" + +msgid "Move cut plane" +msgstr "Sposta il piano di taglio" + +msgid "Mode" +msgstr "Modalità" + +msgid "Change cut mode" +msgstr "Cambia la modalità di taglio" + +msgid "Tolerance" +msgstr "Tolleranza" + +msgid "Drag" +msgstr "Trascina" + +msgid "Draw cut line" +msgstr "Disegna linea di taglio" + +msgid "Left click" +msgstr "Click sinistro" + +msgid "Add connector" +msgstr "Aggiungi connettore" + +msgid "Right click" +msgstr "Clic destro" + +msgid "Remove connector" +msgstr "Rimuovi connettore" + +msgid "Move connector" +msgstr "Sposta connettore" + +msgid "Add connector to selection" +msgstr "Aggiungi connettore alla selezione" + +msgid "Remove connector from selection" +msgstr "Rimuovi connettore dalla selezione" + +msgid "Select all connectors" +msgstr "Seleziona tutti i connettori" + +msgid "Cut" +msgstr "Taglia" + +msgid "Rotate cut plane" +msgstr "Ruota il piano di taglio" + +msgid "Remove connectors" +msgstr "Rimuovi connettori" + +msgid "Bulge" +msgstr "Rigonfiamento" + +msgid "Bulge proportion related to radius" +msgstr "Proporzione del rigonfiamento in relazione al raggio" + +msgid "Space" +msgstr "Spazio" + +msgid "Space proportion related to radius" +msgstr "Proporzione di spazio in relazione al raggio" + +msgid "Confirm connectors" +msgstr "Conferma connettori" + +msgid "Cancel" +msgstr "Annulla" + +msgid "Build Volume" +msgstr "Volume di stampa" + +msgid "Flip cut plane" +msgstr "Capovolgi piano di taglio" + +msgid "Groove change" +msgstr "Cambio di scanalatura" + +msgid "Reset" +msgstr "Reimposta" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Modificato" + +msgid "Cut position" +msgstr "Posizione taglio" + +msgid "Reset cutting plane" +msgstr "Ripristina piano di taglio" + +msgid "Edit connectors" +msgstr "Modifica connettori" + +msgid "Add connectors" +msgstr "Aggiungi connettori" + +msgid "Reset cut" +msgstr "Ripristina taglio" + +msgid "Reset cutting plane and remove connectors" +msgstr "Ripristina il piano di taglio e rimuovi i connettori" + +msgid "Upper part" +msgstr "Parte superiore" + +msgid "Lower part" +msgstr "Parte inferiore" + +msgid "Keep" +msgstr "Mantieni" + +msgid "Flip" +msgstr "Ribalta" + +msgid "After cut" +msgstr "Dopo il taglio" + +msgid "Cut to parts" +msgstr "Taglia le parti" + +msgid "Perform cut" +msgstr "Effettua taglio" + +msgid "Warning" +msgstr "Attenzione" + +msgid "Invalid connectors detected" +msgstr "Rilevati connettori non validi" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "%1$d connettore è fuori dal profilo di taglio" +msgstr[1] "%1$d connettori sono fuori dal profilo di taglio" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "%1$d connettore è fuori dall'oggetto" +msgstr[1] "%1$d connettori sono fuori dall'oggetto" + +msgid "Some connectors are overlapped" +msgstr "Alcuni connettori si sovrappongono" + +msgid "Select at least one object to keep after cutting." +msgstr "Selezionare almeno un oggetto da conservare dopo il taglio." + +msgid "Cut plane is placed out of object" +msgstr "Il piano di taglio è posizionato fuori dall'oggetto" + +msgid "Cut plane with groove is invalid" +msgstr "Il piano di taglio con scanalatura non è valido" + +msgid "Connector" +msgstr "Connettore" + +msgid "Cut by Plane" +msgstr "Taglio per piano" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"Gli spigoli non-manifold sono causati dallo strumento Taglia, vuoi risolvere " +"il problema ora?" + +msgid "Repairing model object" +msgstr "Riparazione oggetto" + +msgid "Cut by line" +msgstr "Taglia sulla linea" + +msgid "Delete connector" +msgstr "Cancella connettore" + +msgid "Mesh name" +msgstr "Nome mesh" + +msgid "Detail level" +msgstr "Livello di dettaglio" + +msgid "Decimate ratio" +msgstr "Rapporto di decimazione" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Lo slicing del modello \"%1%\" con più di 1 milione di triangoli potrebbe " +"essere lento. Si consiglia di semplificare il modello." + +msgid "Simplify model" +msgstr "Semplifica modello" + +msgid "Simplify" +msgstr "Semplifica" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"La semplificazione è attualmente consentita solo quando è selezionata una " +"singola parte" + +msgid "Error" +msgstr "Errore" + +msgid "Extra high" +msgstr "Molto alto" + +msgid "High" +msgstr "Alto" + +msgid "Medium" +msgstr "Medio" + +msgid "Low" +msgstr "Basso" + +msgid "Extra low" +msgstr "Molto basso" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d triangoli" + +msgid "Show wireframe" +msgstr "Mostra wireframe" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "Non si può applicare durante la creazione dell'anteprima." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Operazione già annullata. Si prega di attendere qualche secondo." + +msgid "Face recognition" +msgstr "Riconoscimento facciale" + +msgid "Perform Recognition" +msgstr "Esegui riconoscimento" + +msgid "Brush size" +msgstr "Misura del pennello" + +msgid "Brush shape" +msgstr "Forma del pennello" + +msgid "Enforce seam" +msgstr "Forza la giunzione" + +msgid "Block seam" +msgstr "Blocca giunzione" + +msgid "Seam painting" +msgstr "Pittura giunzione" + +msgid "Remove selection" +msgstr "Rimuovi selezione" + +msgid "Entering Seam painting" +msgstr "Apertura Pittura Giunzione" + +msgid "Leaving Seam painting" +msgstr "Chiusura Pittura Giunzione" + +msgid "Paint-on seam editing" +msgstr "Modifica Pittura Giunzione" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Font" + +msgid "Thickness" +msgstr "Spessore" + +msgid "Text Gap" +msgstr "Gap testo" + +msgid "Angle" +msgstr "Angolo" + +msgid "" +"Embeded\n" +"depth" +msgstr "Profondità integrata" + +msgid "Input text" +msgstr "Inserisci testo" + +msgid "Surface" +msgstr "Superficie" + +msgid "Horizontal text" +msgstr "Testo orizzontale" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Sposta il mouse verso l'alto o il basso" + +msgid "Rotate text" +msgstr "Ruota testo" + +msgid "Text shape" +msgstr "Formato testo" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Ruota testo" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Spostamento del testo" + +msgid "Set Mirror" +msgstr "Imposta specchio" + +msgid "Embossed text" +msgstr "Testo in rilievo" + +msgid "Enter emboss gizmo" +msgstr "Apri gizmo rilievo" + +msgid "Leave emboss gizmo" +msgstr "Chiudi gizmo rilievo" + +msgid "Embossing actions" +msgstr "Azioni di rilievo" + +msgid "Emboss" +msgstr "Rilievo" + +msgid "NORMAL" +msgstr "NORMALE" + +msgid "SMALL" +msgstr "PICCOLO" + +msgid "ITALIC" +msgstr "CORSIVO" + +msgid "SWISS" +msgstr "SVIZZERO" + +msgid "MODERN" +msgstr "MODERNO" + +msgid "First font" +msgstr "Primo font" + +msgid "Default font" +msgstr "Font predefinito" + +msgid "Advanced" +msgstr "Avanzate" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"Il testo non può essere scritto con il font selezionato. Provare a scegliere " +"un altro font." + +msgid "Embossed text cannot contain only white spaces." +msgstr "Il testo in rilievo non può contenere solo spazi vuoti." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" +"Il testo contiene un glifo di carattere (rappresentato da '?') sconosciuto " +"dal font." + +msgid "Text input doesn't show font skew." +msgstr "L'immissione di testo non mostra l'inclinazione dei caratteri." + +msgid "Text input doesn't show font boldness." +msgstr "L'immissione di testo non mostra il grassetto dei caratteri." + +msgid "Text input doesn't show gap between lines." +msgstr "L'inserimento del testo non mostra lo spazio tra le righe." + +msgid "Too tall, diminished font height inside text input." +msgstr "" +"Altezza del carattere troppo alta e ridotta all'interno dell'input di testo." + +msgid "Too small, enlarged font height inside text input." +msgstr "" +"Altezza del carattere troppo piccola e ingrandita all'interno dell'input di " +"testo." + +msgid "Text doesn't show current horizontal alignment." +msgstr "Il testo non mostra l'allineamento orizzontale corrente." + +msgid "Revert font changes." +msgstr "Ripristina modifiche al carattere." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "Il font \"%1%\" non può essere selezionato." + +msgid "Operation" +msgstr "Operazione" + +msgid "Join" +msgstr "Unisci" + +msgid "Click to change text into object part." +msgstr "Fare clic per trasformare il testo in una parte dell'oggetto." + +msgid "You can't change a type of the last solid part of the object." +msgstr "" +"Non è possibile modificare il tipo dell'ultima parte solida dell'oggetto." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Taglia" + +msgid "Click to change part type into negative volume." +msgstr "Fare clic per cambiare il tipo di parte in volume negativo." + +msgid "Modifier" +msgstr "Modificatore" + +msgid "Click to change part type into modifier." +msgstr "Fare clic per cambiare il tipo di parte in modificatore." + +msgid "Change Text Type" +msgstr "Cambia tipo di testo" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Rinomina lo stile(%1%) per il testo in rilievo:" + +msgid "Name can't be empty." +msgstr "Il nome non può essere vuoto." + +msgid "Name has to be unique." +msgstr "Il nome deve essere univoco." + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "Rinomina lo stile" + +msgid "Rename current style." +msgstr "Rinomina lo stile corrente." + +msgid "Can't rename temporary style." +msgstr "Non è possibile rinominare lo stile temporaneo." + +msgid "First Add style to list." +msgstr "Prima Aggiungi lo stile all'elenco." + +#, boost-format +msgid "Save %1% style" +msgstr "Salva lo stile %1%" + +msgid "No changes to save." +msgstr "Nessuna modifica da salvare." + +msgid "New name of style" +msgstr "Nuovo nome dello stile" + +msgid "Save as new style" +msgstr "Salva come nuovo stile" + +msgid "Only valid font can be added to style." +msgstr "Solo i font validi possono essere aggiunti allo stile." + +msgid "Add style to my list." +msgstr "Aggiungi lo stile alla mia lista." + +msgid "Save as new style." +msgstr "Salva come nuovo stile." + +msgid "Remove style" +msgstr "Rimuovi stile" + +msgid "Can't remove the last existing style." +msgstr "Non è possibile rimuovere l'ultimo stile esistente." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "Sei sicuro di voler rimuovere definitivamente lo stile \"%1%\"?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "Cancella lo stile \"%1%\"." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "Non è possibile eliminare \"%1%\". È l'ultimo stile." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "Non è possibile eliminare lo stile temporaneo \"%1%\"." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Modificato lo stile \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "Lo stile corrente è \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"Se si cambia lo stile in \"%1%\", la modifica dello stile attuale verrà " +"eliminata.\n" +"\n" +"Vuoi continuare comunque?" + +msgid "Not valid style." +msgstr "Stile non valido." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "Lo stile \"%1%\" non può essere usato e sarà rimosso dall'elenco." + +msgid "Unset italic" +msgstr "Corsivo non impostato" + +msgid "Set italic" +msgstr "Imposta corsivo" + +msgid "Unset bold" +msgstr "Grassetto non impostato" + +msgid "Set bold" +msgstr "Imposta grassetto" + +msgid "Revert text size." +msgstr "Ripristina dimensione testo." + +msgid "Revert embossed depth." +msgstr "Ripristina spessore rilievo." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"Le opzioni avanzate non possono essere modificate per il font selezionato.\n" +"Selezionare un altro font." + +msgid "Revert using of model surface." +msgstr "Ripristina usando la superficie del modello." + +msgid "Revert Transformation per glyph." +msgstr "Invertire la trasformazione per glifo." + +msgid "Set global orientation for whole text." +msgstr "Imposta l'orientamento globale per tutto il testo." + +msgid "Set position and orientation per glyph." +msgstr "Imposta la posizione e l'orientamento per glifo." + +msgctxt "Alignment" +msgid "Left" +msgstr "Sinistra" + +msgctxt "Alignment" +msgid "Center" +msgstr "Centro" + +msgctxt "Alignment" +msgid "Right" +msgstr "Destra" + +msgctxt "Alignment" +msgid "Top" +msgstr "Superiore" + +msgctxt "Alignment" +msgid "Middle" +msgstr "Mediano" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Inferiore" + +msgid "Revert alignment." +msgstr "Ripristinare l'allineamento." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "punti" + +msgid "Revert gap between characters" +msgstr "Ripristina distanza tra i caratteri" + +msgid "Distance between characters" +msgstr "Distanza tra i caratteri" + +msgid "Revert gap between lines" +msgstr "Ripristina distanza tra le linee" + +msgid "Distance between lines" +msgstr "Distanza tra le linee" + +msgid "Undo boldness" +msgstr "Annulla grassetto" + +msgid "Tiny / Wide glyphs" +msgstr "Glifi piccoli / larghi" + +msgid "Undo letter's skew" +msgstr "Annulla l'inclinazione della lettera" + +msgid "Italic strength ratio" +msgstr "Fattore intensità corsivo" + +msgid "Undo translation" +msgstr "Annulla traduzione" + +msgid "Distance of the center of the text to the model surface." +msgstr "Distanza del centro del testo dalla superficie del modello." + +msgid "Undo rotation" +msgstr "Annulla rotazione" + +msgid "Rotate text Clock-wise." +msgstr "Ruota il testo in senso orario." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"Sblocca la rotazione del testo quando lo sposti lungo la superficie " +"dell'oggetto." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" +"Blocca la rotazione del testo quando lo si sposta lungo la superficie " +"dell'oggetto." + +msgid "Select from True Type Collection." +msgstr "Seleziona dalla Raccolta True Type." + +msgid "Set text to face camera" +msgstr "Imposta il testo in modo che sia rivolto verso la propria vista" + +msgid "Orient the text towards the camera." +msgstr "Orienta il testo verso di te." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"Non è possibile caricare esattamente lo stesso font(\"%1%\"). L'applicazione " +"ne ha selezionato uno simile(\"%2%\"). È necessario specificare il font per " +"abilitare la modifica del testo." + +msgid "No symbol" +msgstr "Nessun simbolo" + +msgid "Loading" +msgstr "Caricamento" + +msgid "In queue" +msgstr "In coda" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Altezza" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Usa superficie" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "Per glifo" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Allineamento" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Distanza tra i caratteri" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Spazio tra le linee" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Spessore" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Fattore Inclinazione" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Dalla superficie" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "Mantieni l'alto" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Raccolta" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "Ruota SVG" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "Muovi SVG" + +msgid "Enter SVG gizmo" +msgstr "Apri gizmo SVG" + +msgid "Leave SVG gizmo" +msgstr "Chiudi gizmo SVG" + +msgid "SVG actions" +msgstr "Azioni SVG" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Opacità (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Gradiente di colore (%1%)" + +msgid "Undefined fill type" +msgstr "Tipo di riempimento non definito" + +msgid "Linear gradient" +msgstr "Gradiente lineare" + +msgid "Radial gradient" +msgstr "Gradiente radiale" + +msgid "Open filled path" +msgstr "Apri il percorso compilato" + +msgid "Undefined stroke type" +msgstr "Tipo di tratto non definito" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" +"Il percorso non può essere risolto con l'auto-intersezione e i punti " +"multipli." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"La forma finale contiene un'auto-intersezione o più punti con le stesse " +"coordinate." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "La forma è segnata come invisibile (%1%)" + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "" +"Il riempimento della forma (%1%) contiene un'informazione non supportata: " +"%2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "" +"Il tratto della forma (%1%) è troppo sottile (la larghezza minima è di %2% " +"mm)" + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "Il tratto della forma (%1%) contiene un'immagine non supportata: %2%." + +msgid "Face the camera" +msgstr "Rivolgi verso di te" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Nome file sconosciuto" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "Il percorso del file SVG è \"%1%\"." + +msgid "Reload SVG file from disk." +msgstr "Ricarica il file SVG dal disco." + +msgid "Change file" +msgstr "Cambia file" + +msgid "Change to another .svg file" +msgstr "Passa a un altro file .svg" + +msgid "Forget the file path" +msgstr "Dimentica il percorso del file" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"NON salvare il percorso locale del file 3MF.\n" +"Disattiva anche l'opzione \"ricarica da disco\"." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Integra" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Integra nel modello come parte non modificabile" + +msgid "Save as" +msgstr "Salva come" + +msgid "Save SVG file" +msgstr "Salva file SVG" + +msgid "Save as '.svg' file" +msgstr "Salva come file '.svg" + +msgid "Size in emboss direction." +msgstr "Dimensioni in direzione del rilievo." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "" +"La dimensione della scala cambia anche la quantità di campioni della curva " +"(%1%)" + +msgid "Width of SVG." +msgstr "Larghezza dell'SVG." + +msgid "Height of SVG." +msgstr "Altezza dell'SVG." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "Blocca/sblocca le proporzioni dell'SVG." + +msgid "Reset scale" +msgstr "Reimposta scala" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "Distanza del centro dell'SVG dalla superficie del modello." + +msgid "Reset distance" +msgstr "Ripristina distanza" + +msgid "Reset rotation" +msgstr "Reimposta rotazione" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" +"Blocca/sblocca l'angolo di rotazione quando si trascina sopra la superficie." + +msgid "Mirror vertically" +msgstr "Specchia verticalmente" + +msgid "Mirror horizontally" +msgstr "Specchia orizzontalmente" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "Cambia il tipo di SVG" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Specchia" + +msgid "Choose SVG file for emboss:" +msgstr "Scegli il file SVG per il rilievo:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "Il file NON esiste (%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "" +"Il nome del file deve terminare con \".svg\" ma è stato selezionato %1%" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "Il parser Nano SVG non può essere caricato dal file (%1%)." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "Il file SVG NON contiene un percorso singolo da incidere (%1%)." + +msgid "Vertex" +msgstr "Vertice" + +msgid "Edge" +msgstr "Bordo" + +msgid "Plane" +msgstr "Piano" + +msgid "Point on edge" +msgstr "Punto sul bordo" + +msgid "Point on circle" +msgstr "Punto sulla circonferenza" + +msgid "Point on plane" +msgstr "Punto sul piano" + +msgid "Center of edge" +msgstr "Centro del bordo" + +msgid "Center of circle" +msgstr "Centro della circonferenza" + +msgid "ShiftLeft mouse button" +msgstr "MaiuscTasto sinistro del mouse" + +msgid "Select feature" +msgstr "Seleziona caratteristica" + +msgid "Select point" +msgstr "Seleziona punto" + +msgid "Delete" +msgstr "Elimina" + +msgid "Restart selection" +msgstr "Riavvio della selezione" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "Deseleziona" + +msgid "Measure" +msgstr "Misura" + +msgid "Edit to scale" +msgstr "Modifica in scala" + +msgctxt "Verb" +msgid "Scale" +msgstr "Ridimensiona" + +msgid "None" +msgstr "Nessuno" + +msgid "Diameter" +msgstr "Diametro" + +msgid "Length" +msgstr "Lunghezza" + +msgid "Selection" +msgstr "Selezione" + +msgid "Copy to clipboard" +msgstr "Copia negli appunti" + +msgid "Perpendicular distance" +msgstr "Distanza perpendicolare" + +msgid "Distance" +msgstr "Distanza" + +msgid "Direct distance" +msgstr "Distanza diretta" + +msgid "Distance XYZ" +msgstr "Distanza XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Avvertenza" + +msgid "Undefined" +msgstr "Indefinito" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% è stato sostituito con %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" +"La configurazione potrebbe essere generata da una versione più recente di " +"Snapmaker Orca." + +msgid "Some values have been replaced. Please check them:" +msgstr "Alcuni valori sono stati sostituiti. Per favore controllali:" + +msgid "Process" +msgstr "Processo" + +msgid "Filament" +msgstr "Filamento" + +msgid "Machine" +msgstr "Macchina" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"Il pacchetto di configurazione è stato caricato, ma alcuni valori non sono " +"stati riconosciuti." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Il file di configurazione \"%1%\" è stato caricato, ma alcuni valori non " +"sono stati riconosciuti." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca ha esaurito la memoria e verrà chiuso. Questo potrebbe essere \n" +"un bug. Segnala questo errore al supporto tecnico." + +msgid "Fatal error" +msgstr "Errore irreversibile" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Si è verificato un errore nella localizzazione e Snapmaker Orca verrà chiuso." + +msgid "Critical error" +msgstr "Errore critico" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca ha ricevuto un'eccezione non gestita: %1%" + +msgid "Untitled" +msgstr "Senza titolo" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Scaricando il plug-in Bambu Network" + +msgid "Login information expired. Please login again." +msgstr "Le informazioni di login sono scadute. Effettua nuovamente il login." + +msgid "Incorrect password" +msgstr "Password errata" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "Connessione %s non riuscita! [SN: %s, codice=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca richiede Microsoft WebView2 Runtime per utilizzare alcune " +"funzionalità.\n" +"Fai clic su Sì per installarlo ora." + +msgid "WebView2 Runtime" +msgstr "WebView2 Runtime" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Vuoi continuare?" + +msgid "Remember my choice" +msgstr "Ricorda la mia scelta" + +msgid "Loading configuration" +msgstr "Caricamento configurazione" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "Fai clic per scaricare la nuova versione nel browser predefinito: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca necessita di aggiornamento" + +msgid "This is the newest version." +msgstr "Hai la versione più recente." + +msgid "Info" +msgstr "Info" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"Il file di configurazione di Snapmaker Orca potrebbe essere danneggiato e non " +"può essere analizzato.\n" +"Snapmaker Orca ha tentato di ricreare il file di configurazione.\n" +"Si noti che le impostazioni dell'applicazione andranno perse, ma i profili " +"della stampante non saranno interessati." + +msgid "Rebuild" +msgstr "Ricrea" + +msgid "Loading current presets" +msgstr "Caricamento dei preset correnti" + +msgid "Loading a mode view" +msgstr "Caricamento di una modalità di visualizzazione" + +msgid "Choose one file (3mf):" +msgstr "Scegli file (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "Scegli uno o più file (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Scegli uno o più file (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "Seleziona il file ZIP" + +msgid "Choose one file (gcode/3mf):" +msgstr "Scegli file (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "Alcuni preset vengono modificati." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"È possibile conservare i preset modificati per il nuovo progetto, eliminarli " +"o salvare le modifiche come nuovi preset." + +msgid "User logged out" +msgstr "Utente disconnesso" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "non è consentito aprire un nuovo file progetto durante lo slicing!" + +msgid "Open Project" +msgstr "Apri Progetto" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"La versione Snapmaker Orca è obsoleta, devi aggiornarla all'ultima versione \n" +"prima di poterla utilizzare normalmente" + +msgid "Privacy Policy Update" +msgstr "Aggiornamento dell'informativa sulla privacy" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"Il numero di impostazioni utente memorizzate nella cache cloud ha superato " +"il limite massimo. Le nuove impostazioni utente create possono essere " +"utilizzate solo in locale." + +msgid "Sync user presets" +msgstr "Sincronizzare le preset dell'utente" + +msgid "Loading user preset" +msgstr "Caricamento del preset utente" + +msgid "Switching application language" +msgstr "Cambio lingua applicazione" + +msgid "Select the language" +msgstr "Seleziona la lingua" + +msgid "Language" +msgstr "Lingua" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "I caricamenti sono ancora in corso" + +msgid "Stop them and continue anyway?" +msgstr "Ferma e continua comunque?" + +msgid "Ongoing uploads" +msgstr "Caricamenti in corso" + +msgid "Select a G-code file:" +msgstr "Seleziona file G-code:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"Impossibile avviare il download dell'URL. La cartella di destinazione non è " +"impostata. Scegliere la cartella di destinazione nella Configurazione " +"guidata." + +msgid "Import File" +msgstr "Importa File" + +msgid "Choose files" +msgstr "Scegli file" + +msgid "New Folder" +msgstr "Nuova cartella" + +msgid "Open" +msgstr "Aperto" + +msgid "Rename" +msgstr "Rinomina" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Inizializzazione della GUI di Snapmaker Orca non riuscita" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Errore irreversibile, eccezione: %1%" + +msgid "Quality" +msgstr "Qualità" + +msgid "Shell" +msgstr "Guscio" + +msgid "Infill" +msgstr "Riempimento" + +msgid "Support" +msgstr "Supporto" + +msgid "Flush options" +msgstr "Opzioni spurgo" + +msgid "Speed" +msgstr "Velocità" + +msgid "Strength" +msgstr "Resistenza" + +msgid "Top Solid Layers" +msgstr "Strati solidi superiori" + +msgid "Top Minimum Shell Thickness" +msgstr "Spessore minimo del guscio superiore" + +msgid "Bottom Solid Layers" +msgstr "Layer solidi inferiori" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Spessore minimo del guscio inferiore" + +msgid "Ironing" +msgstr "Stiratura" + +msgid "Fuzzy Skin" +msgstr "Superficie Crespa" + +msgid "Extruders" +msgstr "Estrusori" + +msgid "Extrusion Width" +msgstr "Larghezza Estrusione" + +msgid "Wipe options" +msgstr "Opzioni pulitura" + +msgid "Bed adhesion" +msgstr "Adesione al piano" + +msgid "Add part" +msgstr "Aggiungi parte" + +msgid "Add negative part" +msgstr "Aggiungi parte negativa" + +msgid "Add modifier" +msgstr "Aggiungi modificatore" + +msgid "Add support blocker" +msgstr "Aggiungi blocco supporto" + +msgid "Add support enforcer" +msgstr "Aggiungi rinforzo supporto" + +msgid "Add text" +msgstr "Aggiungi testo" + +msgid "Add negative text" +msgstr "Aggiungi testo negativo" + +msgid "Add text modifier" +msgstr "Aggiungi modificatore di testo" + +msgid "Add SVG part" +msgstr "Aggiungi parte SVG" + +msgid "Add negative SVG" +msgstr "Aggiungi SVG negativo" + +msgid "Add SVG modifier" +msgstr "Aggiungi modificatore SVG" + +msgid "Select settings" +msgstr "Seleziona impostazioni" + +msgid "Hide" +msgstr "Nascondi" + +msgid "Show" +msgstr "Mostra" + +msgid "Del" +msgstr "Del" + +msgid "Delete the selected object" +msgstr "Elimina l'oggetto selezionato" + +msgid "Load..." +msgstr "Caricamento..." + +msgid "Cube" +msgstr "Cubo" + +msgid "Cylinder" +msgstr "Cilindro" + +msgid "Cone" +msgstr "Cono" + +msgid "Disc" +msgstr "Disco" + +msgid "Torus" +msgstr "Toroide" + +msgid "Orca Cube" +msgstr "Orca Cube" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Autodesk FDM Test" + +msgid "Voron Cube" +msgstr "Voron Cube" + +msgid "Stanford Bunny" +msgstr "Coniglietto di Stanford" + +msgid "Orca String Hell" +msgstr "Orca String Hell" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Questo modello presenta una goffratura del testo sulla superficie superiore. " +"Per ottenere risultati ottimali, si consiglia di impostare la 'Soglia di una " +"parete(min_width_top_surface)' su 0 affinché la 'Soglia di una sola parete " +"sulle superfici superiori' funzioni al meglio.\n" +"Sì - Modificare automaticamente queste impostazioni\n" +"No - Non modificare queste impostazioni per me" + +msgid "Text" +msgstr "Testo" + +msgid "Height range Modifier" +msgstr "Modifica intervallo di altezza" + +msgid "Add settings" +msgstr "Aggiungi impostazioni" + +msgid "Change type" +msgstr "Cambia tipo" + +msgid "Set as an individual object" +msgstr "Imposta come singolo oggetto" + +msgid "Set as individual objects" +msgstr "Imposta come singoli oggetti" + +msgid "Fill bed with copies" +msgstr "Riempi il piano di copie" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Riempi l'area rimanente del piano con copie dell'oggetto selezionato" + +msgid "Printable" +msgstr "Stampabile" + +msgid "Fix model" +msgstr "Correggi il modello" + +msgid "Export as one STL" +msgstr "Esporta come un unico STL" + +msgid "Export as STLs" +msgstr "Esportazione come STL" + +msgid "Reload from disk" +msgstr "Ricarica da disco" + +msgid "Reload the selected parts from disk" +msgstr "Ricarica le parti selezionate da disco" + +msgid "Replace with STL" +msgstr "Sostituisci con STL" + +msgid "Replace the selected part with new STL" +msgstr "Sostituisci la parte selezionata con un nuovo STL" + +msgid "Change filament" +msgstr "Cambia filamento" + +msgid "Set filament for selected items" +msgstr "Imposta filamento per gli elementi selezionati" + +msgid "Default" +msgstr "Predefinito" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filamento %d" + +msgid "current" +msgstr "Attuale" + +msgid "Scale to build volume" +msgstr "Scala per creare volume" + +msgid "Scale an object to fit the build volume" +msgstr "Ridimensiona un oggetto per adattarlo al volume di costruzione" + +msgid "Flush Options" +msgstr "Opzioni spurgo" + +msgid "Flush into objects' infill" +msgstr "Spurga nel riempimento oggetto" + +msgid "Flush into this object" +msgstr "Spurga in questo oggetto" + +msgid "Flush into objects' support" +msgstr "Spurga nei supporti dell'oggetto" + +msgid "Edit in Parameter Table" +msgstr "Modifica nella tabella dei parametri" + +msgid "Convert from inch" +msgstr "Converti da pollici" + +msgid "Restore to inch" +msgstr "Ripristina in pollici" + +msgid "Convert from meter" +msgstr "Converti da metri" + +msgid "Restore to meter" +msgstr "Ripristina in metri" + +msgid "Assemble" +msgstr "Assembla" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Assembla gli oggetti selezionati in un oggetto con più parti" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Assembla gli oggetti selezionati in un oggetto con una singola parte" + +msgid "Mesh boolean" +msgstr "Mesh booleana" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Operazioni booleane di mesh, tra cui l'unione e la sottrazione" + +msgid "Along X axis" +msgstr "Lungo asse X" + +msgid "Mirror along the X axis" +msgstr "Specchia lungo l'asse X" + +msgid "Along Y axis" +msgstr "Lungo asse Y" + +msgid "Mirror along the Y axis" +msgstr "Specchia lungo l'asse Y" + +msgid "Along Z axis" +msgstr "Lungo l'asse Z" + +msgid "Mirror along the Z axis" +msgstr "Specchia lungo l'asse Z" + +msgid "Mirror object" +msgstr "Specchia Oggetto" + +msgid "Edit text" +msgstr "Modifica testo" + +msgid "Ability to change text, font, size, ..." +msgstr "Possibilità di modificare il testo, il carattere, la dimensione, ..." + +msgid "Edit SVG" +msgstr "Modifica SVG" + +msgid "Change SVG source file, projection, size, ..." +msgstr "Cambia il file sorgente SVG, la proiezione, le dimensioni, ..." + +msgid "Invalidate cut info" +msgstr "Annulla informazioni di taglio" + +msgid "Add Primitive" +msgstr "Aggiungi primitiva" + +msgid "Add Handy models" +msgstr "Aggiungi modelli Handy" + +msgid "Add Models" +msgstr "Aggiungi modelli" + +msgid "Show Labels" +msgstr "Mostra Etichette" + +msgid "To objects" +msgstr "In oggetti" + +msgid "Split the selected object into multiple objects" +msgstr "Dividi l'oggetto selezionato in più oggetti" + +msgid "To parts" +msgstr "In parti" + +msgid "Split the selected object into multiple parts" +msgstr "Dividi l'oggetto selezionato in più parti" + +msgid "Split" +msgstr "Dividi" + +msgid "Split the selected object" +msgstr "Dividi l'oggetto selezionato" + +msgid "Auto orientation" +msgstr "Orientamento automatico" + +msgid "Auto orient the object to improve print quality." +msgstr "Orienta automaticamente l'oggetto per migliorare la qualità di stampa." + +msgid "Select All" +msgstr "Seleziona tutto" + +msgid "select all objects on current plate" +msgstr "Seleziona tutti gli oggetti sul piatto corrente" + +msgid "Delete All" +msgstr "Elimina tutto" + +msgid "delete all objects on current plate" +msgstr "Elimina tutti gli oggetti sul piatto corrente" + +msgid "Arrange" +msgstr "Disponi" + +msgid "arrange current plate" +msgstr "Disponi sul piatto corrente" + +msgid "Reload All" +msgstr "" + +msgid "reload all from disk" +msgstr "" + +msgid "Auto Rotate" +msgstr "Rotazione automatica" + +msgid "auto rotate current plate" +msgstr "Rotazione automatica piatto corrente" + +msgid "Delete Plate" +msgstr "Elimina piatto" + +msgid "Remove the selected plate" +msgstr "Rimuovi il piatto selezionato" + +msgid "Clone" +msgstr "Clona" + +msgid "Simplify Model" +msgstr "Semplifica Modello" + +msgid "Center" +msgstr "Centro" + +msgid "Edit Process Settings" +msgstr "Modifica le impostazioni del processo" + +msgid "Edit print parameters for a single object" +msgstr "Modifica i parametri di stampa per singolo oggetto" + +msgid "Change Filament" +msgstr "Cambia filamento" + +msgid "Set Filament for selected items" +msgstr "Imposta filamento per gli elementi selezionati" + +msgid "Unlock" +msgstr "Sblocca" + +msgid "Lock" +msgstr "Blocca" + +msgid "Edit Plate Name" +msgstr "Modifica nome Piatto" + +msgid "Name" +msgstr "Nome" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d Errore riparato" +msgstr[1] "%1$d errors repaired" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Errore: %1$d spigolo non-manifold." +msgstr[1] "Errore: %1$d spigoli non-manifold." + +msgid "Remaining errors" +msgstr "Errori rimanenti" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d spigolo non-manifold" +msgstr[1] "%1$d spigoli non-manifold" + +msgid "Right click the icon to fix model object" +msgstr "" +"Fai clic con il pulsante destro del mouse sull'icona per correggere " +"l'oggetto del modello" + +msgid "Right button click the icon to drop the object settings" +msgstr "" +"Fai clic con pulsante destro del mouse sull'icona per eliminare le " +"impostazioni dell'oggetto" + +msgid "Click the icon to reset all settings of the object" +msgstr "Clicca sull'icona per ripristinare tutte le impostazioni dell'oggetto" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Fai clic con pulsante destro del mouse sull'icona per eliminare le proprietà " +"stampa dell'oggetto" + +msgid "Click the icon to toggle printable property of the object" +msgstr "" +"Clicca sull'icona per attivare o disattivare le proprietà stampabili " +"dell'oggetto" + +msgid "Click the icon to edit support painting of the object" +msgstr "Clicca sull'icona per modificare la pittura del supporto dell'oggetto" + +msgid "Click the icon to edit color painting of the object" +msgstr "Clicca sull'icona per modificare i colori dell'oggetto" + +msgid "Click the icon to shift this object to the bed" +msgstr "Fare clic sull'icona per spostare l'oggetto sul piano" + +msgid "Loading file" +msgstr "Caricamento file" + +msgid "Error!" +msgstr "Errore!" + +msgid "Failed to get the model data in the current file." +msgstr "Impossibile ottenere i dati del modello nel file corrente." + +msgid "Generic" +msgstr "Generico" + +msgid "Add Modifier" +msgstr "Aggiungi modificatore" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Passa alla modalità di impostazione oggetto per modificare le impostazioni " +"del modificatore." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Passa alla modalità di impostazione oggetto per modificare le impostazioni " +"di processo degli oggetti selezionati." + +msgid "Delete connector from object which is a part of cut" +msgstr "Elimina il connettore dall'oggetto che fa parte del taglio" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Elimina la parte solida dall'oggetto che fa parte del taglio" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Elimina il volume negativo dall'oggetto che fa parte del taglio" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Per salvare il taglio corrispondente puoi eliminare tutte le connessioni tra " +"gli oggetti correlati." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"Questa azione interromperà una corrispondenza di taglio.\n" +"In seguito, la coerenza del modello non può essere garantita.\n" +"\n" +"Per manipolare parti solide o volumi negativi è necessario invalidare prima " +"le informazioni di taglio." + +msgid "Delete all connectors" +msgstr "Elimina tutti i connettori" + +msgid "Deleting the last solid part is not allowed." +msgstr "Non è consentita l'eliminazione dell'ultima parte solida." + +msgid "The target object contains only one part and can not be splited." +msgstr "" +"L'oggetto di destinazione contiene solo una parte e non può essere diviso." + +msgid "Assembly" +msgstr "Assemblaggio" + +msgid "Cut Connectors information" +msgstr "Informazioni sui connettori di taglio" + +msgid "Object manipulation" +msgstr "Manipola oggetti" + +msgid "Group manipulation" +msgstr "Manipola il gruppo" + +msgid "Object Settings to modify" +msgstr "Impostazioni oggetto da modificare" + +msgid "Part Settings to modify" +msgstr "Imposta parti da modificare" + +msgid "Layer range Settings to modify" +msgstr "Impostazioni range layer da modificare" + +msgid "Part manipulation" +msgstr "Manipola parti" + +msgid "Instance manipulation" +msgstr "Manipola istanze" + +msgid "Height ranges" +msgstr "Intervalli di altezza" + +msgid "Settings for height range" +msgstr "Impostazioni intervallo altezza" + +msgid "Layer" +msgstr "Layer" + +msgid "Selection conflicts" +msgstr "Conflitti di selezione" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Se il primo elemento selezionato è un oggetto, anche il secondo deve essere " +"un oggetto." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Se il primo elemento selezionato è una parte, il secondo deve far parte " +"dello stesso oggetto." + +msgid "The type of the last solid object part is not to be changed." +msgstr "" +"Il tipo dell'ultima parte dell'oggetto solido non può essere modificato." + +msgid "Negative Part" +msgstr "Parte negativa" + +msgid "Support Blocker" +msgstr "Blocco Supporto" + +msgid "Support Enforcer" +msgstr "Rinforzo Supporto" + +msgid "Type:" +msgstr "Tipo:" + +msgid "Choose part type" +msgstr "Scegli tipo di parte" + +msgid "Enter new name" +msgstr "Inserisci un nuovo nome" + +msgid "Renaming" +msgstr "Rinomina" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "Il seguente oggetto del modello è stato riparato" +msgstr[1] "I seguenti oggetti del modello sono stati riparati" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Impossibile riparare il seguente oggetto modello" +msgstr[1] "Impossibile riparare i seguenti oggetti modello" + +msgid "Repairing was canceled" +msgstr "La riparazione è stata annullata" + +msgid "Additional process preset" +msgstr "Preset processo aggiuntivo" + +msgid "Remove parameter" +msgstr "Rimuovi parametro" + +msgid "to" +msgstr "a" + +msgid "Remove height range" +msgstr "Rimuovi intervallo altezza" + +msgid "Add height range" +msgstr "Aggiungi intervallo di altezza" + +msgid "Invalid numeric." +msgstr "Numero non valido." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"Una cella può essere copiata solo in una o più celle della stessa colonna." + +msgid "multiple cells copy is not supported" +msgstr "Copia di celle multiple non supportata." + +msgid "Outside" +msgstr "Esterno" + +msgid "Layer height" +msgstr "Altezza layer" + +msgid "Wall loops" +msgstr "Loop pareti" + +msgid "Infill density(%)" +msgstr "Densità riempimento (%)" + +msgid "Auto Brim" +msgstr "Auto Brim" + +msgid "Mouse ear" +msgstr "Orecchio di topo" + +msgid "Outer brim only" +msgstr "Solo brim esterno" + +msgid "Inner brim only" +msgstr "Solo brim interno" + +msgid "Outer and inner brim" +msgstr "Brim interno e esterno" + +msgid "No-brim" +msgstr "No-brim" + +msgid "Outer wall speed" +msgstr "Velocità parete esterna" + +msgid "Plate" +msgstr "Piatto" + +msgid "Brim" +msgstr "Brim" + +msgid "Object/Part Setting" +msgstr "Impostazione oggetto/parte" + +msgid "Reset parameter" +msgstr "Ripristina parametro" + +msgid "Multicolor Print" +msgstr "Stampa multicolore" + +msgid "Line Type" +msgstr "Tipo linea" + +msgid "More" +msgstr "Altro" + +msgid "Open Preferences." +msgstr "Apri Preferenze." + +msgid "Open next tip." +msgstr "Apri suggerimento successivo." + +msgid "Open Documentation in web browser." +msgstr "Aprire la documentazione nel browser web." + +msgid "Color" +msgstr "Colore" + +msgid "Pause" +msgstr "Pausa" + +msgid "Template" +msgstr "Modello" + +msgid "Custom" +msgstr "Personalizzato" + +msgid "Pause:" +msgstr "Pausa:" + +msgid "Custom Template:" +msgstr "Template personalizzato:" + +msgid "Custom G-code:" +msgstr "G-code personalizzato:" + +msgid "Custom G-code" +msgstr "G-code personalizzato" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Inserisci G-code personalizzato utilizzato nel layer corrente:" + +msgid "Jump to Layer" +msgstr "Vai al layer" + +msgid "Please enter the layer number" +msgstr "Inserisci numero del layer" + +msgid "Add Pause" +msgstr "Aggiungi pausa" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Inserisci un comando di pausa all'inizio di questo layer." + +msgid "Add Custom G-code" +msgstr "Aggiungi G-code personalizzato" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Inserisci G-code personalizzato all'inizio di questo layer." + +msgid "Add Custom Template" +msgstr "Aggiungi template personalizzato" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "" +"Inserisci un template G-code personalizzato all'inizio di questo layer." + +msgid "Filament " +msgstr "Filamento " + +msgid "Change filament at the beginning of this layer." +msgstr "Cambia filamento all'inizio di questo layer." + +msgid "Delete Pause" +msgstr "Elimina pausa" + +msgid "Delete Custom Template" +msgstr "Elimina Template Personalizzato" + +msgid "Edit Custom G-code" +msgstr "Modifica G-code personalizzato" + +msgid "Delete Custom G-code" +msgstr "Elimina G-code personalizzato" + +msgid "Delete Filament Change" +msgstr "Elimina cambio filamento" + +msgid "No printer" +msgstr "Nessuna stampante" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Connessione al server non riuscita" + +msgid "Check the status of current system services" +msgstr "Verifica lo stato attuale dei servizi di sistema" + +msgid "code" +msgstr "Codice" + +msgid "Failed to connect to cloud service" +msgstr "Connessione al servizio cloud non riuscita" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "Fai clic sul link in alto per visualizzare lo stato del servizio cloud" + +msgid "Failed to connect to the printer" +msgstr "Impossibile connettersi alla stampante" + +msgid "Connection to printer failed" +msgstr "Connessione stampante fallita" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Controlla la connessione di rete della stampante e di Studio." + +msgid "Connecting..." +msgstr "Connessione..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Vuoto" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Ricarica automatica" + +msgid "AMS not connected" +msgstr "AMS non collegato" + +msgid "Load" +msgstr "Load" + +msgid "Unload" +msgstr "Scarica" + +msgid "Ext Spool" +msgstr "Bobina esterna" + +msgid "Tips" +msgstr "Suggerimenti" + +msgid "Guide" +msgstr "Guida" + +msgid "Retry" +msgstr "Riprova" + +msgid "Calibrating AMS..." +msgstr "Calibrazione AMS..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"Si è verificato un problema durante la calibrazione. Clicca per visualizzare " +"la soluzione." + +msgid "Calibrate again" +msgstr "Calibra di nuovo" + +msgid "Cancel calibration" +msgstr "Annulla calibrazione" + +msgid "Idling..." +msgstr "Minimo..." + +msgid "Heat the nozzle" +msgstr "Riscaldo nozzle" + +msgid "Cut filament" +msgstr "Taglio il filamento" + +msgid "Pull back current filament" +msgstr "Ritiro il filamento corrente" + +msgid "Push new filament into extruder" +msgstr "Inserisco il nuovo filamento nell'estrusore" + +msgid "Purge old filament" +msgstr "Spurgo filamento precedente" + +msgid "Feed Filament" +msgstr "Alimentazione Filamento" + +msgid "Confirm extruded" +msgstr "Conferma estrusione" + +msgid "Check filament location" +msgstr "Controllare la posizione del filamento" + +msgid "Grab new filament" +msgstr "Prendo un nuovo filamento" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Scegliere uno slot AMS, quindi premi il pulsante \"Carica\" o \"Scarica\" " +"per caricare o scaricare automaticamente il filamento." + +msgid "Edit" +msgstr "Modifica" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Tutti gli oggetti selezionati si trovano su una piatto bloccato.\n" +"Non è possibile disporre automaticamente questi oggetti." + +msgid "No arrangable objects are selected." +msgstr "Non sono stati selezionati oggetti ordinabili." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Il piatto è bloccato.\n" +"Non è possibile eseguire la disposizione automatica su questo piatto." + +msgid "Arranging..." +msgstr "Disponendo..." + +msgid "Arranging" +msgstr "Disposizione" + +msgid "Arranging canceled." +msgstr "Disposizione annullata." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Disposizione completata, ma non è stato possibile disporre alcuni oggetti. " +"Ridurre lo spazio e riprovare." + +msgid "Arranging done." +msgstr "Disposizione completata." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Disposizione fallita. Riscontrate eccezioni durante l'elaborazione delle " +"geometrie degli oggetti" + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"La disposizione ha ignorato i seguenti oggetti che non possono entrare in un " +"singolo piano:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Tutti gli oggetti selezionati si trovano su un piatto bloccato,\n" +"Non è possibile orientare automaticamente questi oggetti." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Il piatto è bloccato.\n" +"Non puoi orientare automaticamente questo piatto." + +msgid "Orienting..." +msgstr "Orientamento..." + +msgid "Orienting" +msgstr "Orientamento" + +msgid "Orienting canceled." +msgstr "Orientamento annullato." + +msgid "Filling" +msgstr "Riempimento" + +msgid "Bed filling canceled." +msgstr "Riempimento del piano annullato." + +msgid "Bed filling done." +msgstr "Riempimento del piano completato." + +msgid "Searching for optimal orientation" +msgstr "Ricerca orientamento ottimale" + +msgid "Orientation search canceled." +msgstr "Ricerca orientamento annullata." + +msgid "Orientation found." +msgstr "Trovato orientamento." + +msgid "Logging in" +msgstr "Accesso in corso" + +msgid "Login failed" +msgstr "Login non riuscito" + +msgid "Please check the printer network connection." +msgstr "Controlla la connessione rete della stampante." + +msgid "Abnormal print file data. Please slice again." +msgstr "Dati anomali del file di stampa. Eseguire nuovamente l'elaborazione." + +msgid "Task canceled." +msgstr "Attività annullata." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "Attività di Upload scaduto. Controlla lo stato della rete e riprova." + +msgid "Cloud service connection failed. Please try again." +msgstr "Connessione al servizio cloud non riuscita. Riprovare." + +msgid "Print file not found. please slice again." +msgstr "File di stampa non trovato; si prega di eseguire nuovamente lo slice." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"Il file di stampa supera la dimensione massima consentita (1 GB). Semplifica " +"il modello ed effettua di nuovo lo slice." + +msgid "Failed to send the print job. Please try again." +msgstr "Impossibile inviare il lavoro di stampa. Riprova." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Caricamento del file in ftp non riuscito. Riprova." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Controlla lo stato attuale del server Bambu Lab cliccando sul link qui sopra." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"La dimensione del file di stampa è troppo grande. Modifica la dimensione del " +"file e riprova." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" +"File di stampa non trovato; elabora nuovamente il file e invia per la stampa." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Impossibile caricare il file di stampa tramite FTP. Controlla lo stato della " +"rete e riprova." + +msgid "Sending print job over LAN" +msgstr "Invia stampa tramite LAN" + +msgid "Sending print job through cloud service" +msgstr "Invia stampa tramite servizio cloud" + +msgid "Print task sending times out." +msgstr "Timeout dell'invio dell'attività di stampa." + +msgid "Service Unavailable" +msgstr "Servizio non disponibile" + +msgid "Unknown Error." +msgstr "Errore sconosciuto." + +msgid "Sending print configuration" +msgstr "Invia configurazione di stampa" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "" +"Inviato con successo. Salta automaticamente alla pagina del dispositivo in %s" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "" +"Inviato con successo. Salterà automaticamente alla pagina successiva in %ss" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "" +"È necessario inserire una scheda microSD prima di stampare tramite LAN." + +msgid "Sending gcode file over LAN" +msgstr "Invio file G-code tramite LAN" + +msgid "Sending gcode file to sdcard" +msgstr "Invia file G-code a scheda microSD" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Inviato con successo. Chiudi la pagina corrente in %s s" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "" +"È necessario inserire una scheda microSD prima di inviarla alla stampante." + +msgid "Importing SLA archive" +msgstr "Importa archivio SLA" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"L'archivio SLA non contiene preset. Attivare alcuni preset di stampanti SLA " +"prima di importare l'archivio SLA." + +msgid "Importing canceled." +msgstr "Importazione annullata." + +msgid "Importing done." +msgstr "Importazione eseguita." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"L'archivio SLA importato non contiene alcun preset. Gli attuali preset SLA " +"sono stati utilizzati come recupero." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "" +"Non è possibile caricare un progetto SLA con un oggetto composto da più " +"parti sul piano" + +msgid "Please check your object list before preset changing." +msgstr "Controlla l'elenco oggetto prima di modificare il preset." + +msgid "Attention!" +msgstr "Attenzione!" + +msgid "Downloading" +msgstr "Downloading" + +msgid "Download failed" +msgstr "Download non riuscito" + +msgid "Cancelled" +msgstr "Annullato" + +msgid "Install successfully." +msgstr "Installato con successo." + +msgid "Installing" +msgstr "Installazione" + +msgid "Install failed" +msgstr "Installazione non riuscita" + +msgid "Portions copyright" +msgstr "Porzioni di copyright" + +msgid "Copyright" +msgstr "Copyright" + +msgid "License" +msgstr "Licenza" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca è concesso in licenza con " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, versione 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "" + +msgid "Libraries" +msgstr "Librerie" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Questo software utilizza componenti open source il cui copyright e altri " +"diritti di proprietà appartengono ai rispettivi proprietari" + +#, c-format, boost-format +msgid "About %s" +msgstr "Informazioni su %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca è basato su BambuStudio, PrusaSlicer e SuperSlicer." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "BambuStudio è originariamente basato su PrusaSlicer di PrusaResearch." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer originariamente basato su Slic3r di Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r è stato creato da Alessandro Ranellucci con l'aiuto di molti altri " +"collaboratori." + +msgid "Version" +msgstr "Versione" + +msgid "AMS Materials Setting" +msgstr "Impostazione materiali AMS" + +msgid "Confirm" +msgstr "Conferma" + +msgid "Close" +msgstr "Chiudi" + +msgid "Colour" +msgstr "Colore" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Temperatura\n" +"Nozzle" + +msgid "max" +msgstr "max" + +msgid "min" +msgstr "min" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "Il valore di input deve essere maggiore di %1% e minore di %2%" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "" +"L'impostazione informazioni sullo slot AMS in fase di stampa non è " +"supportata." + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Fattori di calibrazione della dinamica del flusso" + +msgid "PA Profile" +msgstr "Profilo PA" + +msgid "Factor K" +msgstr "Fattore K" + +msgid "Factor N" +msgstr "Fattore N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "" +"Non è supportata l’impostazione informazioni dello Slot Virtuale durante la " +"stampa." + +msgid "Are you sure you want to clear the filament information?" +msgstr "Sei sicuro di voler cancellare le informazioni del filamento?" + +msgid "You need to select the material type and color first." +msgstr "Devi prima selezionare il tipo e il colore del materiale." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" + +msgid "Other Color" +msgstr "Altro colore" + +msgid "Custom Color" +msgstr "Colore personalizzato" + +msgid "Dynamic flow calibration" +msgstr "Calibrazione dinamica del flusso" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"La temperatura del nozzle e la velocità volumetrica massima influiranno sui " +"risultati della calibrazione. Inserisci gli stessi valori della stampa " +"effettiva. Possono essere riempiti automaticamente selezionando un filamento " +"dal preset." + +msgid "Nozzle Diameter" +msgstr "Diametro Nozzle" + +msgid "Bed Type" +msgstr "Tipo di piano" + +msgid "Nozzle temperature" +msgstr "Temperatura Nozzle" + +msgid "Bed Temperature" +msgstr "Temperatura piano" + +msgid "Max volumetric speed" +msgstr "Massima velocità volumetrica" + +msgid "℃" +msgstr "°C" + +msgid "Bed temperature" +msgstr "Temperatura piano" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Calibra" + +msgid "Next" +msgstr "Avanti" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Calibrazione completata. Trova la linea di estrusione più uniforme sul tuo " +"piatto come nell'immagine sotto e inserisci il valore sul lato sinistro " +"nella casella di immissione del fattore K." + +msgid "Save" +msgstr "Salva" + +msgid "Last Step" +msgstr "Indietro" + +msgid "Example" +msgstr "Esempio" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Calibrazione in corso... %d%%" + +msgid "Calibration completed" +msgstr "Calibrazione completata" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s non supporta %s" + +msgid "Dynamic flow Calibration" +msgstr "Calibrazione dinamica del flusso" + +msgid "Step" +msgstr "Step" + +msgid "AMS Slots" +msgstr "Slot AMS" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Nota: sono selezionabili solo gli slot AMS caricati con lo stesso tipo di " +"materiale." + +msgid "Enable AMS" +msgstr "Abilita AMS" + +msgid "Print with filaments in the AMS" +msgstr "Stampa con filamento in AMS" + +msgid "Disable AMS" +msgstr "Disabilita AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Stampa filamento con bobina esterna" + +msgid "Current Cabin humidity" +msgstr "Current Cabin humidity" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases: when the lid is open or the " +"desiccant pack is changed. It takes a few hours to absorb the moisture, and " +"low temperatures also slow down the process." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Configura lo slot AMS da usare per un filamento utilizzato nel lavoro di " +"stampa." + +msgid "Filament used in this print job" +msgstr "Filamento utilizzato in questa stampa" + +msgid "AMS slot used for this filament" +msgstr "Slot AMS utilizzato per questo filamento" + +msgid "Click to select AMS slot manually" +msgstr "Fai clic per selezionare manualmente lo slot AMS" + +msgid "Do not Enable AMS" +msgstr "AMS non abilitato" + +msgid "Print using materials mounted on the back of the case" +msgstr "Stampa filamento con bobina esterna." + +msgid "Print with filaments in ams" +msgstr "Stampa con filamento AMS" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Stampa filamento con bobina esterna" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Quando si esaurisce il materiale corrente, la stampante continuerà a " +"stampare nel seguente ordine." + +msgid "Group" +msgstr "Gruppo" + +msgid "The printer does not currently support auto refill." +msgstr "Attualmente la stampante non supporta la ricarica automatica." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"Il backup del filamento AMS non è abilitato, è necessario abilitarlo nelle " +"impostazioni AMS." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"Se ci sono due filamenti identici in AMS, il backup del filamento AMS sarà " +"abilitato.\n" +"(Attualmente supporta la fornitura automatica di materiali di consumo con lo " +"stesso marchio, tipo di materiale e colore)" + +msgid "DRY" +msgstr "DRY" + +msgid "WET" +msgstr "WET" + +msgid "AMS Settings" +msgstr "Impostazioni AMS" + +msgid "Insertion update" +msgstr "Aggiornamento dell'inserimento" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"L'AMS leggerà automaticamente le informazioni sul filamento quando inserisce " +"una nuova bobina di filamento Bambu Lab. Questa operazione richiede circa 20 " +"secondi." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Nota: se durante la stampa viene inserito un nuovo filamento, l'AMS non " +"leggerà automaticamente alcuna informazione fino al termine della stampa." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Quando si inserisce un nuovo filamento, l'AMS non legge automaticamente le " +"sue informazioni, lasciandole vuote per l'inserimento manuale." + +msgid "Power on update" +msgstr "Aggiorna all'avvio" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"L'AMS leggerà automaticamente le informazioni sul filamento inserito " +"all'avvio. Ci vorrà circa 1 minuto. Il processo di lettura farà ruotare le " +"bobine del filamento." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"L'AMS non leggerà automaticamente le informazioni dal filamento inserito " +"durante l'avvio e continuerà a utilizzare le informazioni registrate prima " +"dell'ultimo spegnimento." + +msgid "Update remaining capacity" +msgstr "Aggiorna capacità residua" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"L'AMS stimerà la capacità residua del filamento Bambu dopo l'aggiornamento " +"delle informazioni. Durante la stampa, la capacità residua verrà aggiornata " +"automaticamente." + +msgid "AMS filament backup" +msgstr "Backup filamento AMS" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"L'AMS passerà automaticamente a un altro filamento con stesse proprietà " +"quando il filamento corrente si esaurisce" + +msgid "Air Printing Detection" +msgstr "Air Printing Detection" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." + +msgid "File" +msgstr "File" + +msgid "Calibration" +msgstr "Calibrazione" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Impossibile scaricare il plug-in. Controlla le impostazioni del firewall e " +"VPN poi riprova." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Impossibile installare il plug-in. Verificare se è bloccato o se è stato " +"eliminato dall'antivirus." + +msgid "click here to see more info" +msgstr "clicca per ulteriori informazioni" + +msgid "Please home all axes (click " +msgstr "Prego fai l'home degli assi (clicca " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") per individuare la posizione della testa dell'utensile. In questo modo si " +"evita che il dispositivo si sposti oltre il limite stampabile, causando " +"l'usura dell'apparecchiatura." + +msgid "Go Home" +msgstr "Vai all'origine" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Si è verificato un errore. È possibile che la memoria del sistema sia " +"esaurita o che si sia verificato un bug." + +msgid "Please save project and restart the program. " +msgstr "Salva il progetto e riavvia l'applicazione. " + +msgid "Processing G-Code from Previous file..." +msgstr "Elaborazione G-Code dal file precedente..." + +msgid "Slicing complete" +msgstr "Slicing completato" + +msgid "Access violation" +msgstr "Violazione di accesso" + +msgid "Illegal instruction" +msgstr "Istruzione illegale" + +msgid "Divide by zero" +msgstr "Dividi per zero" + +msgid "Overflow" +msgstr "Sovra-estrusione" + +msgid "Underflow" +msgstr "Sotto-estrusione" + +msgid "Floating reserved operand" +msgstr "Floating reserved operand" + +msgid "Stack overflow" +msgstr "Stack overflow" + +msgid "Running post-processing scripts" +msgstr "Esecuzione script di post-elaborazione" + +msgid "Successfully executed post-processing script" +msgstr "Successfully executed post-processing script" + +msgid "Unknown error occured during exporting G-code." +msgstr "" +"Si è verificato un errore sconosciuto durante l'esportazione del G-code." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Copia del G-code temporaneo sul G-code di uscita non riuscita. Forse la " +"scheda SD è bloccata in scrittura?\n" +"Messaggio di errore: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"Copia del G-code temporaneo nel G-code di output non riuscita. Potrebbe " +"esserci un problema nel dispositivo di destinazione, prova una nuova " +"esportazione con un dispositivo diverso. Il file G-code corrotto è su %1%." +"tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"Non è stato possibile rinominare il G-code dopo la copia nella cartella di " +"destinazione selezionata. Il percorso corrente è %1%.tmp. Prova a esportare " +"di nuovo." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"Copia del G-code temporaneo completata ma non è stato possibile aprire il " +"codice originale su %1% durante il controllo copia. Il G-code di output è su " +"%2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"Copia del G-code temporaneo completata ma non è stato possibile aprire il " +"codice esportato durante il controllo copia. Il G-code di output è su %1%." +"tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "G-code esportato in %1%" + +msgid "Unknown error when export G-code." +msgstr "Errore sconosciuto nell'esportazione del G-code." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Impossibile salvare il file del G-code.\n" +"Messaggio di errore: %1%.\n" +"File sorgente %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Copia del G-code temporaneo nel G-code di output non riuscita." + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Programmazione del caricamento su `%1%`. Vedere finestra -> Coda di " +"caricamento Host di Stampa" + +msgid "Device" +msgstr "Dispositivo" + +msgid "Task Sending" +msgstr "Task Sending" + +msgid "Task Sent" +msgstr "Task Sent" + +msgid "Edit multiple printers" +msgstr "" + +msgid "Select connected printers (0/6)" +msgstr "" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "" + +msgid "Offline" +msgstr "Offline" + +msgid "No task" +msgstr "No task" + +msgid "View" +msgstr "Vista" + +msgid "N/A" +msgstr "N/D" + +msgid "Edit Printers" +msgstr "" + +msgid "Device Name" +msgstr "Device Name" + +msgid "Task Name" +msgstr "Task Name" + +msgid "Device Status" +msgstr "Device Status" + +msgid "Actions" +msgstr "Actions" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" + +msgid "Add" +msgstr "Aggiungi" + +msgid "Idle" +msgstr "Inattivo" + +msgid "Printing" +msgstr "Stampa" + +msgid "Upgrading" +msgstr "" + +msgid "Incompatible" +msgstr "Non compatibile" + +msgid "syncing" +msgstr "" + +msgid "Printing Finish" +msgstr "" + +msgid "Printing Failed" +msgstr "" + +msgid "Printing Pause" +msgstr "" + +msgid "Prepare" +msgstr "Prepara" + +msgid "Slicing" +msgstr "Slicing" + +msgid "Pending" +msgstr "" + +msgid "Sending" +msgstr "Invio…" + +msgid "Sending Finish" +msgstr "" + +msgid "Sending Cancel" +msgstr "" + +msgid "Sending Failed" +msgstr "" + +msgid "Print Success" +msgstr "" + +msgid "Print Failed" +msgstr "" + +msgid "Removed" +msgstr "" + +msgid "Resume" +msgstr "Continua" + +msgid "Stop" +msgstr "Ferma" + +msgid "Task Status" +msgstr "Task Status" + +msgid "Sent Time" +msgstr "Sent Time" + +msgid "There are no tasks to be sent!" +msgstr "There are no tasks to be sent!" + +msgid "No historical tasks!" +msgstr "No historical tasks!" + +msgid "Loading..." +msgstr "Caricamento…" + +msgid "No AMS" +msgstr "No AMS" + +msgid "Send to Multi-device" +msgstr "Send to Multi-device" + +msgid "Preparing print job" +msgstr "Preparazione lavoro di stampa" + +msgid "Abnormal print file data. Please slice again" +msgstr "Dati file di stampa anormali. Eseguire nuovamente l'elaborazione" + +msgid "There is no device available to send printing." +msgstr "" + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" + +msgid "Use External Spool" +msgstr "Use External Spool" + +msgid "Use AMS" +msgstr "Use AMS" + +msgid "Select Printers" +msgstr "Select Printers" + +msgid "Ams Status" +msgstr "AMS Status" + +msgid "Printing Options" +msgstr "Printing Options" + +msgid "Bed Leveling" +msgstr "Livellamento piano" + +msgid "Timelapse" +msgstr "Timelapse" + +msgid "Flow Dynamic Calibration" +msgstr "" + +msgid "Send Options" +msgstr "Send Options" + +msgid "Send to" +msgstr "" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"printers at the same time. (It depends on how many devices can undergo " +"heating at the same time.)" + +msgid "Wait" +msgstr "Wait" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minute each batch. (It depends on how long it takes to complete heating.)" + +msgid "Send" +msgstr "Invia" + +msgid "Name is invalid;" +msgstr "Nome non valido;" + +msgid "illegal characters:" +msgstr "Caratteri illegali:" + +msgid "illegal suffix:" +msgstr "Suffisso illegale:" + +msgid "The name is not allowed to be empty." +msgstr "Il campo nome non può essere vuoto." + +msgid "The name is not allowed to start with space character." +msgstr "Il nome non può iniziare con uno spazio." + +msgid "The name is not allowed to end with space character." +msgstr "Il nome non può terminare con uno spazio." + +msgid "The name length exceeds the limit." +msgstr "La lunghezza del nome supera il limite." + +msgid "Origin" +msgstr "Origine" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Dimensioni X e Y del piano rettangolare." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" +"Distanza della coordinata 0,0 del G-code dall'angolo frontale sinistro del " +"rettangolo." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Diametro del piano di stampa. Si presume che l'origine (0,0) si trovi al " +"centro." + +msgid "Rectangular" +msgstr "Rettangolare" + +msgid "Circular" +msgstr "Circolare" + +msgid "Load shape from STL..." +msgstr "Carica forma da STL..." + +msgid "Settings" +msgstr "Impostazioni" + +msgid "Texture" +msgstr "Texture" + +msgid "Remove" +msgstr "Rimuovi" + +msgid "Not found:" +msgstr "Non trovato:" + +msgid "Model" +msgstr "Modello" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Scegli un file STL da cui importare la forma del piano:" + +msgid "Invalid file format." +msgstr "Formato file non valido." + +msgid "Error! Invalid model" +msgstr "Errore! Modello non valido" + +msgid "The selected file contains no geometry." +msgstr "Il file selezionato non contiene geometrie." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"Il file selezionato contiene molteplici aree disgiunte. Non è supportato." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "" +"Seleziona un file da cui importare la forma del piano di stampa (PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Scegli un file STL da cui importare il modello del piano:" + +msgid "Bed Shape" +msgstr "Forma Piano" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"La temperatura minima consigliata è inferiore a 190 gradi o la temperatura " +"massima consigliata è superiore a 300 gradi.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" + +msgid "Please check.\n" +msgstr "Controlla.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"Il Nozzle potrebbe intasarsi quando la temperatura non rientra " +"nell'intervallo consigliato.\n" +"Assicurarsi di utilizzare questa temperatura per la stampa.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"La temperatura del nozzle consigliata per questo filamento è [%d, %d] gradi " +"centigradi" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Velocità volumetrica massima troppo bassa.\n" +"Il valore è stato ripristinato a 0,5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"L'attuale temperatura della camera è superiore alla temperatura di sicurezza " +"del materiale, può causare l'ammorbidimento e l'intasamento del materiale. " +"La temperatura massima di sicurezza per il materiale è %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Altezza del layer troppo piccola\n" +"È stata ripristinata a 0,2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Spaziatura stiratura troppo piccola\n" +"È stata ripristinata a 0,1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"L'altezza zero primo layer non è valida.\n" +"\n" +"L'altezza primo layer verrà ripristinata a 0,2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Questa viene utilizzata solo per regolare le dimensioni del modello in " +"piccole quantità.\n" +"Ad esempio, quando le dimensioni del modello presentano piccoli errori o " +"quando le tolleranze non sono corrette. Per regolazioni di grandi " +"dimensioni, si prega di utilizzare la funzione di scala del modello.\n" +"\n" +"Il valore verrà reimpostato su 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Il valore di compensazione del piede di elefante è troppo grande.\n" +"Se i problemi zampa d'elefante sono significativi, controllare altre " +"impostazioni.\n" +"Ad esempio, la temperatura del piano potrebbe essere troppo alta.\n" +"\n" +"Il valore viene riportato a 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" +"Parete Aggiuntiva Alternativa on funziona bene quando Garantisci spessore " +"verticale del guscio è impostato su Tutto. " + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"Modificare automaticamente queste impostazioni? \n" +"Sì - Modifica Garantisci spessore verticale del guscio a Moderato e abilita " +"Parete Aggiuntiva Alternativa\n" +"No - Non utilizzare Parete Aggiuntiva Alternativa" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"Prime tower non funziona quando layer Adattativo o Altezza supporto Layer " +"indipendente sono attivati.\n" +"Quale vuoi tenere?\n" +"SÌ - Mantieni Prime Tower\n" +"NO - Mantieni layer Adattativo e Altezza supporto Layer indipendente" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"Prime tower non funziona quando layer adattativo è attivo.\n" +"Quale vuoi tenere?\n" +"SÌ - Mantieni Prime Tower\n" +"NO - Mantieni l'ayer adattativo" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"Prime tower non funziona quando Altezza Supporto Layer indipendente è " +"attiva.\n" +"Quale vuoi tenere?\n" +"SÌ - Mantieni Prime Tower\n" +"NO - Mantieni Altezza Supporto Layer indipendente" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Durante la stampa per oggetto, il Nozzle potrebbe urtare lo skirt.\n" +"Quindi, ripristina il layer skirt su 1 per evitare collisioni." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"seam_slope_start_height deve essere inferiore a layer_heightReimpostare a 0." + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"La modalità spirale funziona solo quando il valore loop parete è 1, il " +"supporto è disabilitato, i il valore dei layer superiori del guscio è 0, la " +"densità riempimento è 0 e il tipo di timelapse è tradizionale." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " Ma le macchine con la struttura I3 non genereranno video timelapse." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Modificare queste impostazioni automaticamente? \n" +"Si - Modifica queste impostazioni ed abilita la modalità spirale/vaso\n" +"No - Annulla l'attivazione della modalità a spirale" + +msgid "Auto bed leveling" +msgstr "Livellamento automatico piano" + +msgid "Heatbed preheating" +msgstr "Preriscaldamento del piano" + +msgid "Sweeping XY mech mode" +msgstr "Modalità Sweeping XY mech" + +msgid "Changing filament" +msgstr "Cambio filamento" + +msgid "M400 pause" +msgstr "M400 pausa" + +msgid "Paused due to filament runout" +msgstr "Pausa per filamento esaurito" + +msgid "Heating hotend" +msgstr "Riscaldamento hotend" + +msgid "Calibrating extrusion" +msgstr "Calibrazione estrusione" + +msgid "Scanning bed surface" +msgstr "Scansione superfice piatto" + +msgid "Inspecting first layer" +msgstr "Ispezione del primo layer" + +msgid "Identifying build plate type" +msgstr "Identificazione tipo piatto di stampa" + +msgid "Calibrating Micro Lidar" +msgstr "Calibrazione Micro Lidar" + +msgid "Homing toolhead" +msgstr "Homing testa di stampa" + +msgid "Cleaning nozzle tip" +msgstr "Pulizia nozzle" + +msgid "Checking extruder temperature" +msgstr "Controllo temperatura dell'estrusore" + +msgid "Printing was paused by the user" +msgstr "Stampa messa in pausa dall'utente" + +msgid "Pause of front cover falling" +msgstr "Pausa caduta cover anteriore" + +msgid "Calibrating the micro lida" +msgstr "Calibrazione micro lidar" + +msgid "Calibrating extrusion flow" +msgstr "Calibrazione flusso estrusore" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Pausa per malfunzionamento temperatura nozzle" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Pausa per malfunzionamento della temperatura piano termico" + +msgid "Filament unloading" +msgstr "Scarico del filamento" + +msgid "Skip step pause" +msgstr "Salta la pausa del passaggio" + +msgid "Filament loading" +msgstr "Caricamento del filamento" + +msgid "Motor noise calibration" +msgstr "Calibrazione del rumore del motore" + +msgid "Paused due to AMS lost" +msgstr "Sospeso a causa della perdita di AMS" + +msgid "Paused due to low speed of the heat break fan" +msgstr "Pausa dovuta alla bassa velocità della ventola del termocontrollo" + +msgid "Paused due to chamber temperature control error" +msgstr "Pausa a causa di un errore di controllo della temperatura della camera" + +msgid "Cooling chamber" +msgstr "Raffreddamento della camera" + +msgid "Paused by the Gcode inserted by user" +msgstr "Messo in pausa dal Gcode inserito dall'utente" + +msgid "Motor noise showoff" +msgstr "Evidente rumorosità del rumore" + +msgid "Nozzle filament covered detected pause" +msgstr "Pausa quando viene rilevato un nozzle coperto di filamenti" + +msgid "Cutter error pause" +msgstr "Pausa in caso di errore di taglio" + +msgid "First layer error pause" +msgstr "Pausa in caso di errore nel primo layer" + +msgid "Nozzle clog pause" +msgstr "Pausa in caso di intasamento del nozzle" + +msgid "Unknown" +msgstr "Sconosciuto" + +msgid "Fatal" +msgstr "Irreversibile" + +msgid "Serious" +msgstr "Serio" + +msgid "Common" +msgstr "Comune" + +msgid "Update successful." +msgstr "Aggiornamento riuscito." + +msgid "Downloading failed." +msgstr "Download fallito." + +msgid "Verification failed." +msgstr "Verifica fallita." + +msgid "Update failed." +msgstr "Aggiornamento fallito." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"La temperatura attuale della camera o la temperatura target della camera " +"supera i 45℃. Per evitare l'intasamento dell'estrusore, non è consentito " +"caricare filamenti a bassa temperatura (PLA/PETG/TPU)." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Nell'estrusore viene caricato un filamento a bassa temperatura (PLA/PETG/" +"TPU). Per evitare l'intasamento dell'estrusore, non è consentito impostare " +"una temperatura della camera superiore a 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Quando si imposta la temperatura della camera al di sotto di 40°C, il " +"controllo della temperatura della camera non verrà attivato. La temperatura " +"target della camera sarà automaticamente impostata su 0℃." + +msgid "Failed to start printing job" +msgstr "Impossibile avviare il processo di stampa" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" +"Questa calibrazione non supporta il diametro del nozzle attualmente " +"selezionato" + +msgid "Current flowrate cali param is invalid" +msgstr "Il parametro cali della portata corrente non è valido" + +msgid "Selected diameter and machine diameter do not match" +msgstr "Il diametro selezionato e il diametro della macchina non corrispondono" + +msgid "Failed to generate cali gcode" +msgstr "Impossibile generare cali gcode" + +msgid "Calibration error" +msgstr "Errore di calibrazione" + +msgid "TPU is not supported by AMS." +msgstr "Il TPU non è supportato da AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF non è supportato da AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Damp PVA diventerà flessibile e rimarrà bloccato all'interno di AMS, si " +"prega di fare attenzione ad asciugarlo prima dell'uso." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"I filamenti CF / GF sono duri e fragili, è facile rompersi o rimanere " +"bloccati in AMS, si prega di usare con cautela." + +msgid "default" +msgstr "predefinito" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Modifica G-code personalizzato (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" +"Placeholder incorporati (fai doppio clic sull'elemento per aggiungerlo al G-" +"code)" + +msgid "Search gcode placeholders" +msgstr "" + +msgid "Add selected placeholder to G-code" +msgstr "Aggiungi il placeholder selezionato al G-code" + +msgid "Select placeholder" +msgstr "Seleziona placeholder" + +msgid "[Global] Slicing State" +msgstr "" + +msgid "Read Only" +msgstr "" + +msgid "Read Write" +msgstr "" + +msgid "Slicing State" +msgstr "" + +msgid "Print Statistics" +msgstr "Statistiche di Stampa" + +msgid "Objects Info" +msgstr "" + +msgid "Dimensions" +msgstr "Dimensioni" + +msgid "Temperatures" +msgstr "Temperature" + +msgid "Timestamps" +msgstr "Timestamp" + +#, boost-format +msgid "Specific for %1%" +msgstr "Specifico per %1%" + +msgid "Presets" +msgstr "Preset" + +msgid "Print settings" +msgstr "Impostazioni di stampa" + +msgid "Filament settings" +msgstr "Impostazioni Filamento" + +msgid "SLA Materials settings" +msgstr "Impostazioni Materiali SLA" + +msgid "Printer settings" +msgstr "Impostazioni stampante" + +msgid "parameter name" +msgstr "nome parametro" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s non può essere una percentuale" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "Il valore %s non rientra nell'intervallo, continuare?" + +msgid "Parameter validation" +msgstr "Validazione parametri" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "Value %s is out of range. The valid range is from %d to %d." + +msgid "Value is out of range." +msgstr "Valore fuori intervallo." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Formato di input non valido. Vettore di dimensioni previsto nel seguente " +"formato: \"%1%\"" + +msgid "Input value is out of range" +msgstr "Valore input fuori portata" + +msgid "Some extension in the input is invalid" +msgstr "Alcune estensioni nell'input non sono valide" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Formato non valido. Formato vettoriale previsto: \"%1%\"" + +msgid "Layer Height" +msgstr "Altezza layer" + +msgid "Line Width" +msgstr "Larghezza linea" + +msgid "Fan Speed" +msgstr "Velocità ventola" + +msgid "Temperature" +msgstr "Temperatura" + +msgid "Flow" +msgstr "Flusso" + +msgid "Tool" +msgstr "Strumento" + +msgid "Layer Time" +msgstr "Tempo layer" + +msgid "Layer Time (log)" +msgstr "Tempo layer (log)" + +msgid "Height: " +msgstr "Altezza: " + +msgid "Width: " +msgstr "Larghezza: " + +msgid "Speed: " +msgstr "Velocità: " + +msgid "Flow: " +msgstr "Flusso: " + +msgid "Layer Time: " +msgstr "Tempo layer: " + +msgid "Fan: " +msgstr "Velocità ventola: " + +msgid "Temperature: " +msgstr "Temperatura: " + +msgid "Loading G-codes" +msgstr "Caricamento del G-code" + +msgid "Generating geometry vertex data" +msgstr "Generazione dati vertici geometria" + +msgid "Generating geometry index data" +msgstr "Generazione dati di indice geometrico" + +msgid "Statistics of All Plates" +msgstr "Statistiche di tutti i piatti" + +msgid "Display" +msgstr "Display" + +msgid "Flushed" +msgstr "Spurgo" + +msgid "Tower" +msgstr "Torre" + +msgid "Total" +msgstr "Totale" + +msgid "Total Estimation" +msgstr "Stima totale" + +msgid "Total time" +msgstr "Tempo totale" + +msgid "Total cost" +msgstr "Costo totale" + +msgid "up to" +msgstr "fino a" + +msgid "above" +msgstr "sopra" + +msgid "from" +msgstr "da" + +msgid "Color Scheme" +msgstr "Schema Colore" + +msgid "Time" +msgstr "Tempo" + +msgid "Percent" +msgstr "Percentuale" + +msgid "Used filament" +msgstr "Filamento usato" + +msgid "Layer Height (mm)" +msgstr "Altezza layer (mm)" + +msgid "Line Width (mm)" +msgstr "Larghezza linea (mm)" + +msgid "Speed (mm/s)" +msgstr "Velocità (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Velocità ventola (%)" + +msgid "Temperature (°C)" +msgstr "Temperatura (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Flusso volumetrico (mm³/s)" + +msgid "Travel" +msgstr "Spostamento" + +msgid "Seams" +msgstr "Cuciture" + +msgid "Retract" +msgstr "Retrazione" + +msgid "Unretract" +msgstr "De-retrazione" + +msgid "Filament Changes" +msgstr "Cambi filamento" + +msgid "Wipe" +msgstr "Pulitura" + +msgid "Options" +msgstr "Opzioni" + +msgid "travel" +msgstr "Spostamento" + +msgid "Extruder" +msgstr "Estrusore" + +msgid "Filament change times" +msgstr "Tempi cambio filamento" + +msgid "Cost" +msgstr "Costo" + +msgid "Color change" +msgstr "Cambio colore" + +msgid "Print" +msgstr "Stampa" + +msgid "Printer" +msgstr "Stampante" + +msgid "Custom g-code" +msgstr "G-code personalizzato" + +msgid "ToolChange" +msgstr "Cambio utensile" + +msgid "Time Estimation" +msgstr "Tempo stimato" + +msgid "Normal mode" +msgstr "Modalità normale" + +msgid "Total Filament" +msgstr "Total Filament" + +msgid "Model Filament" +msgstr "Model Filament" + +msgid "Prepare time" +msgstr "Tempo preparazione" + +msgid "Model printing time" +msgstr "Tempo stampa del modello" + +msgid "Switch to silent mode" +msgstr "Passa a modalità silenziosa" + +msgid "Switch to normal mode" +msgstr "Passa a modalità normale" + +msgid "Variable layer height" +msgstr "Altezza layer adattativo" + +msgid "Adaptive" +msgstr "Adattiva" + +msgid "Quality / Speed" +msgstr "Qualità / Velocità" + +msgid "Smooth" +msgstr "Leviga" + +msgid "Radius" +msgstr "Raggio" + +msgid "Keep min" +msgstr "Mantieni min" + +msgid "Left mouse button:" +msgstr "Tasto sinistro del mouse:" + +msgid "Add detail" +msgstr "Aggiungi dettaglio" + +msgid "Right mouse button:" +msgstr "Tasto destro mouse:" + +msgid "Remove detail" +msgstr "Rimuovi dettagli" + +msgid "Shift + Left mouse button:" +msgstr "Shift + Tasto sinistro mouse:" + +msgid "Reset to base" +msgstr "Ripristina alla base" + +msgid "Shift + Right mouse button:" +msgstr "Shift + Tasto destro mouse:" + +msgid "Smoothing" +msgstr "Lisciatura" + +msgid "Mouse wheel:" +msgstr "Rotella del mouse:" + +msgid "Increase/decrease edit area" +msgstr "Aumenta/diminuisci l'area di modifica" + +msgid "Sequence" +msgstr "Sequenza" + +msgid "Mirror Object" +msgstr "Specchia Oggetto" + +msgid "Tool Move" +msgstr "Sposta strumento" + +msgid "Tool Rotate" +msgstr "Strumento Ruota" + +msgid "Move Object" +msgstr "Sposta oggetto" + +msgid "Auto Orientation options" +msgstr "Opzioni orientamento automatico" + +msgid "Enable rotation" +msgstr "Abilita rotazione" + +msgid "Optimize support interface area" +msgstr "Ottimizza l'area dell'interfaccia di supporto" + +msgid "Orient" +msgstr "Orienta" + +msgid "Arrange options" +msgstr "Opzioni di disposizione" + +msgid "Spacing" +msgstr "Spaziatura" + +msgid "0 means auto spacing." +msgstr "0 means auto spacing." + +msgid "Auto rotate for arrangement" +msgstr "Ruota automaticamente per disporre" + +msgid "Allow multiple materials on same plate" +msgstr "Consenti più materiali sullo stesso piatto" + +msgid "Avoid extrusion calibration region" +msgstr "Evitare la regione di calibrazione dell'estrusione" + +msgid "Align to Y axis" +msgstr "Allinea all'asse Y" + +msgid "Add plate" +msgstr "Aggiungi piatto" + +msgid "Auto orient" +msgstr "Orientamento automatico" + +msgid "Arrange all objects" +msgstr "Disponi tutti gli oggetti" + +msgid "Arrange objects on selected plates" +msgstr "Disponi gli oggetti sui piatti selezionati" + +msgid "Split to objects" +msgstr "Dividi in oggetti" + +msgid "Split to parts" +msgstr "Dividi in parti" + +msgid "Assembly View" +msgstr "Vista montaggio" + +msgid "Select Plate" +msgstr "Seleziona piatto" + +msgid "Assembly Return" +msgstr "Ritorna al montaggio" + +msgid "return" +msgstr "Indietro" + +msgid "Paint Toolbar" +msgstr "Barra strumenti di pittura" + +msgid "Explosion Ratio" +msgstr "Rapporto di esplosione" + +msgid "Section View" +msgstr "Vista in sezione" + +msgid "Assemble Control" +msgstr "Controllo assemblaggio" + +msgid "Total Volume:" +msgstr "Total Volume:" + +msgid "Assembly Info" +msgstr "Informazioni sul montaggio" + +msgid "Volume:" +msgstr "Volume:" + +msgid "Size:" +msgstr "Dimensione:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"Sono stati trovati conflitti di percorsi nel gcode sul layer %d, z = %.2lf " +"mm. Si prega di separare gli oggetti in conflitto (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "Un oggetto è posizionato oltre il bordo del piatto." + +msgid "A G-code path goes beyond the max print height." +msgstr "Un percorso del G-code va oltre l'altezza di stampa massima." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "A G-code path goes beyond plate boundaries." + +msgid "Only the object being edit is visible." +msgstr "È visibile solo l'oggetto da modificare." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Un oggetto è posizionato oltre il limite del piatto o supera il limite di " +"altezza.\n" +"Risolvi il problema spostando l'oggetto completamente dentro o fuori il " +"piatto verificando che l'altezza rientri nel volume di costruzione." + +msgid "Calibration step selection" +msgstr "Seleziona calibrazione" + +msgid "Micro lidar calibration" +msgstr "Calibrazione micro lidar" + +msgid "Bed leveling" +msgstr "Livellamento del piano" + +msgid "Vibration compensation" +msgstr "Compensazione delle vibrazioni" + +msgid "Motor noise cancellation" +msgstr "Cancellazione del rumore del motore" + +msgid "Calibration program" +msgstr "Programma calibrazione" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"Il programma di calibrazione rileva automaticamente lo stato del dispositivo " +"per ridurre al minimo le deviazioni.\n" +"Questa funzione aiuta il dispositivo a mantenere prestazioni ottimali." + +msgid "Calibration Flow" +msgstr "Calibrazione flusso" + +msgid "Start Calibration" +msgstr "Start Calibration" + +msgid "Completed" +msgstr "Completato" + +msgid "Calibrating" +msgstr "Calibrazione" + +msgid "No step selected" +msgstr "Nessun Step selezionato" + +msgid "Auto-record Monitoring" +msgstr "Monitora registrazione automatica" + +msgid "Go Live" +msgstr "Vai in diretta" + +msgid "Liveview Retry" +msgstr "Riprova Liveview" + +msgid "Resolution" +msgstr "Risoluzione" + +msgid "Enable" +msgstr "Abilita" + +msgid "Hostname or IP" +msgstr "Nome Host o IP" + +msgid "Custom camera source" +msgstr "Sorgente fotocamera personalizzata" + +msgid "Show \"Live Video\" guide page." +msgstr "Mostra pagina della guida \"Diretta Video\"." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Connetti la stampante (LAN)" + +msgid "Please input the printer access code:" +msgstr "Inserisci il codice di accesso alla stampante:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Si trova in \"Impostazioni > Rete > Codice di accesso\".\n" +"sulla stampante, come mostrato nella figura:" + +msgid "Invalid input." +msgstr "Input non valido." + +msgid "New Window" +msgstr "Nuova finestra" + +msgid "Open a new window" +msgstr "Apri una nuova finestra" + +msgid "Application is closing" +msgstr "Closing application" + +msgid "Closing Application while some presets are modified." +msgstr "Chiusura dell'applicazione durante la modifica di alcuni preset." + +msgid "Logging" +msgstr "Accesso" + +msgid "Preview" +msgstr "Anteprima" + +msgid "Multi-device" +msgstr "Multi-device" + +msgid "Project" +msgstr "Progetto" + +msgid "Yes" +msgstr "Si" + +msgid "No" +msgstr "No" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "verrà chiuso prima di creare un nuovo modello. Vuoi continuare?" + +msgid "Slice plate" +msgstr "Slice piatto" + +msgid "Print plate" +msgstr "Stampa piatto" + +msgid "Slice all" +msgstr "Slice tutto" + +msgid "Export G-code file" +msgstr "Esporta file G-code" + +msgid "Export plate sliced file" +msgstr "Esporta il file del piatto elaborato" + +msgid "Export all sliced file" +msgstr "Esporta tutti i file elaborati" + +msgid "Print all" +msgstr "Stampa tutto" + +msgid "Send all" +msgstr "Invia tutto" + +msgid "Keyboard Shortcuts" +msgstr "Scorciatoie Tastiera" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Mostra l'elenco delle scorciatoie di tastiera" + +msgid "Setup Wizard" +msgstr "Setup Wizard" + +msgid "Show Configuration Folder" +msgstr "Mostra cartella di configurazione" + +msgid "Show Tip of the Day" +msgstr "Suggerimento del giorno" + +msgid "Check for Update" +msgstr "Verifica aggiornamenti" + +msgid "Open Network Test" +msgstr "Apri test di rete" + +#, c-format, boost-format +msgid "&About %s" +msgstr "Inform&azioni su %s" + +msgid "Upload Models" +msgstr "Carica modelli" + +msgid "Download Models" +msgstr "Scarica Modelli" + +msgid "Default View" +msgstr "Vista predefinita" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Superiore" + +msgid "Top View" +msgstr "Vista superiore" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Inferiore" + +msgid "Bottom View" +msgstr "Vista inferiore" + +msgid "Front" +msgstr "Frontale" + +msgid "Front View" +msgstr "Vista anteriore" + +msgid "Rear" +msgstr "Posteriore" + +msgid "Rear View" +msgstr "Vista posteriore" + +msgid "Left" +msgstr "Sinistra" + +msgid "Left View" +msgstr "Vista sinistra" + +msgid "Right" +msgstr "Destra" + +msgid "Right View" +msgstr "Vista destra" + +msgid "Start a new window" +msgstr "Inizia in una nuova finestra" + +msgid "New Project" +msgstr "Nuovo progetto" + +msgid "Start a new project" +msgstr "Inizia un nuovo progetto" + +msgid "Open a project file" +msgstr "Apri un file progetto" + +msgid "Recent projects" +msgstr "Progetti recenti" + +msgid "Save Project" +msgstr "Salva Progetto" + +msgid "Save current project to file" +msgstr "Salva progetto corrente su file" + +msgid "Save Project as" +msgstr "Salva Progetto come" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Salva Progetto corrente come" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Importa 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Carica modello" + +msgid "Import Zip Archive" +msgstr "" + +msgid "Load models contained within a zip archive" +msgstr "" + +msgid "Import Configs" +msgstr "Importa configurazioni" + +msgid "Load configs" +msgstr "Carica configurazioni" + +msgid "Import" +msgstr "Importa" + +msgid "Export all objects as one STL" +msgstr "Esporta tutti gli oggetti come un unico STL" + +msgid "Export all objects as STLs" +msgstr "Esporta tutti gli oggetti come AWL" + +msgid "Export Generic 3MF" +msgstr "Esporta 3mf generico" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Esporta file 3mf senza usare alcune estensioni 3mf" + +msgid "Export current sliced file" +msgstr "Esporta il file elaborato corrente" + +msgid "Export all plate sliced file" +msgstr "Esporta tutti i piatti elaborati" + +msgid "Export G-code" +msgstr "Esporta G-code" + +msgid "Export current plate as G-code" +msgstr "Esporta piatto corrente come G-code" + +msgid "Export Preset Bundle" +msgstr "" + +msgid "Export current configuration to files" +msgstr "Esporta la configurazione corrente in file" + +msgid "Export" +msgstr "Esporta" + +msgid "Quit" +msgstr "Esci" + +msgid "Undo" +msgstr "Annulla" + +msgid "Redo" +msgstr "Ripeti" + +msgid "Cut selection to clipboard" +msgstr "Taglia la selezione negli appunti" + +msgid "Copy" +msgstr "Copia" + +msgid "Copy selection to clipboard" +msgstr "Copia selezione negli appunti" + +msgid "Paste" +msgstr "Incolla" + +msgid "Paste clipboard" +msgstr "Incolla appunti" + +msgid "Delete selected" +msgstr "Elimina selezionato" + +msgid "Deletes the current selection" +msgstr "Elimina la selezione corrente" + +msgid "Delete all" +msgstr "Elimina tutto" + +msgid "Deletes all objects" +msgstr "Elimina tutti gli oggetti" + +msgid "Clone selected" +msgstr "Clone selezionato" + +msgid "Clone copies of selections" +msgstr "Clonare copie delle selezioni" + +msgid "Select all" +msgstr "Seleziona tutto" + +msgid "Selects all objects" +msgstr "Seleziona tutti gli oggetti" + +msgid "Deselect all" +msgstr "Deseleziona tutto" + +msgid "Deselects all objects" +msgstr "Deseleziona tutti gli oggetti" + +msgid "Use Perspective View" +msgstr "Usa vista prospettica" + +msgid "Use Orthogonal View" +msgstr "Usa vista ortogonale" + +msgid "Show &G-code Window" +msgstr "Mostra la finestra del G-code" + +msgid "Show g-code window in Previce scene" +msgstr "Mostra finestra G-code nella scena di anteprima" + +msgid "Show 3D Navigator" +msgstr "Mostra navigatore 3D" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "Mostra navigatore 3D nella scena Prepara e visualizza anteprima" + +msgid "Reset Window Layout" +msgstr "Ripristina layout finestra" + +msgid "Reset to default window layout" +msgstr "Ripristina il layout predefinito della finestra" + +msgid "Show &Labels" +msgstr "Mostra &Etichette" + +msgid "Show object labels in 3D scene" +msgstr "Mostra etichette oggetti nella scena 3D" + +msgid "Show &Overhang" +msgstr "Mostra sporgenze" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Mostra la sporgenza dell'oggetto evidenziata nella scena 3D" + +msgid "Preferences" +msgstr "Preferenze" + +msgid "Help" +msgstr "Aiuto" + +msgid "Temperature Calibration" +msgstr "Calibrazione della temperatura" + +msgid "Pass 1" +msgstr "Passaggio 1" + +msgid "Flow rate test - Pass 1" +msgstr "Test di portata - Pass 1" + +msgid "Pass 2" +msgstr "Passaggio 2" + +msgid "Flow rate test - Pass 2" +msgstr "Test di portata - Pass 2" + +msgid "Flow rate" +msgstr "Flusso" + +msgid "Pressure advance" +msgstr "Anticipo di pressione" + +msgid "Retraction test" +msgstr "Prova di retrazione" + +msgid "Orca Tolerance Test" +msgstr "Test di tolleranza dell'orca" + +msgid "Max flowrate" +msgstr "Portata massima" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Altro..." + +msgid "Tutorial" +msgstr "Tutorial" + +msgid "Calibration help" +msgstr "Aiuto per la calibrazione" + +msgid "More calibrations" +msgstr "Più calibrazioni" + +msgid "&Open G-code" +msgstr "Apri G-code" + +msgid "Open a G-code file" +msgstr "Apri un file G-code" + +msgid "Re&load from Disk" +msgstr "Ricaricare da disco" + +msgid "Reload the plater from disk" +msgstr "Ricarica piano da disco" + +msgid "Export &Toolpaths as OBJ" +msgstr "Esporta percorso strumen&to come OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Esporta percorso strumento come OBJ" + +msgid "Open &Slicer" +msgstr "Aprire &Studio" + +msgid "Open Slicer" +msgstr "Apri Studio" + +msgid "&Quit" +msgstr "&Esci" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Chiudi %s" + +msgid "&File" +msgstr "&File" + +msgid "&View" +msgstr "&Vista" + +msgid "&Help" +msgstr "&Aiuto" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "Esiste un file con lo stesso nome: %s. Vuoi sovrascriverlo?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "Esiste una configurazione con lo stesso nome: %s. Vuoi sovrascriverla?" + +msgid "Overwrite file" +msgstr "Sovrascrivi file" + +msgid "Yes to All" +msgstr "Sì a tutto" + +msgid "No to All" +msgstr "No a tutto" + +msgid "Choose a directory" +msgstr "Scegliere una directory" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +"Viene esportata %d configurazione. (Solo configurazioni non di sistema)" +msgstr[1] "" +"Vengono esportate %d configurazioni. (Solo configurazioni non di sistema)" + +msgid "Export result" +msgstr "Risultato Esportazione" + +msgid "Select profile to load:" +msgstr "Seleziona profilo da caricare:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +"È stata importata %d configurazione. (Solo configurazioni non di sistema e " +"compatibili)" +msgstr[1] "" +"Sono state importate %d configurazioni. (Solo configurazioni non di sistema " +"e compatibili)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"Suggerimento: assicurati di aver aggiunto la stampante corrispondente prima " +"di importare le configurazioni." + +msgid "Import result" +msgstr "Risultato dell'importazione" + +msgid "File is missing" +msgstr "File mancante" + +msgid "The project is no longer available." +msgstr "Il progetto non è più disponibile." + +msgid "Filament Settings" +msgstr "Impostazioni Filamento" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Vuoi sincronizzare i tuoi dati personali da Bambu Cloud?\n" +"Contiene le seguenti informazioni:\n" +"1. I presets del processo\n" +"2. I presets del filamento\n" +"3. I presets della stampante" + +msgid "Synchronization" +msgstr "Sincronizzazione" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" +"Il dispositivo non è in grado di gestire più conversazioni. Riprova più " +"tardi." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" +"Lettore non funzionante correttamente. Reinstallare il lettore di sistema." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "Player non caricato; fai clic sul pulsante «play» per riprovare." + +msgid "Please confirm if the printer is connected." +msgstr "Verifica che la stampante sia collegata." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "La stampante è in fase di download. Attendi il completamento." + +msgid "Printer camera is malfunctioning." +msgstr "La fotocamera della stampante non funziona correttamente." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "Si è verificato un problema. Aggiorna il firmware stampante e riprova." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." + +msgid "Please enter the IP of printer to connect." +msgstr "Inserisci l'IP stampante da connettere." + +msgid "Initializing..." +msgstr "Inizializzazione ..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "Connessione fallita. Controlla la rete e riprova" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Controlla la rete e riprova. Se il problema persiste prova ad aggiornare o " +"riavviare la stampante." + +msgid "The printer has been logged out and cannot connect." +msgstr "La stampante è stata disconnessa e non può connettersi." + +msgid "Stopped." +msgstr "Interrotto." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "Connessione LAN non riuscita (impossibile avviare liveview)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Per questa operazione è necessario Virtual Camera Tools!\n" +"Vuoi installarli?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Scaricare strumenti telecamera virtuale" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"È in funzione un'altra telecamera virtuale.\n" +"Snapmaker Orca supporta solo una singola telecamera virtuale.\n" +"Si desidera interrompere questa telecamera virtuale?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Inizializzazione Virtual Camera fallita (%s)!" + +msgid "Network unreachable" +msgstr "Rete non raggiungibile" + +msgid "Information" +msgstr "Informazione" + +msgid "Playing..." +msgstr "Riproduzione..." + +msgid "Year" +msgstr "Anno" + +msgid "Month" +msgstr "Mese" + +msgid "All Files" +msgstr "Tutti i file" + +msgid "Group files by year, recent first." +msgstr "Raggruppa i file per anno, prima i recenti." + +msgid "Group files by month, recent first." +msgstr "Raggruppa i file per mese, prima i recenti." + +msgid "Show all files, recent first." +msgstr "Mostra tutti i file, prima i recenti." + +msgid "Switch to timelapse files." +msgstr "Passa ai file timelapse." + +msgid "Video" +msgstr "Video" + +msgid "Switch to video files." +msgstr "Passare ai file video." + +msgid "Switch to 3mf model files." +msgstr "Passa ai file modello 3mf." + +msgid "Delete selected files from printer." +msgstr "Elimina i file selezionati dalla stampante." + +msgid "Download" +msgstr "Download" + +msgid "Download selected files from printer." +msgstr "Scarica i file selezionati dalla stampante." + +msgid "Select" +msgstr "Seleziona" + +msgid "Batch manage files." +msgstr "Gestione batch dei file." + +msgid "Refresh" +msgstr "Aggiorna" + +msgid "Reload file list from printer." +msgstr "Reload file list from printer." + +msgid "No printers." +msgstr "Nessuna stampante." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Connessione non riuscita [%d]!" + +msgid "Loading file list..." +msgstr "Caricamento elenco file..." + +msgid "No files" +msgstr "Nessun file" + +msgid "Load failed" +msgstr "Load failed" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "" +"Inizializzazione fallita (la connessione del dispositivo non è pronta)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "LAN Connection Failed (Failed to view sdcard)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "Browsing file in SD card is not supported in LAN Only Mode." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Inizializzazione fallita (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +"Stai per eliminare %u file dalla stampante. Sei sicuro di continuare?" +msgstr[1] "" +"Stai per eliminare %u i file dalla stampante. Sei sicuro di continuare?" + +msgid "Delete files" +msgstr "Elimina i file" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Vuoi eliminare il file '%s' dalla stampante?" + +msgid "Delete file" +msgstr "Elimina file" + +msgid "Fetching model infomations ..." +msgstr "Recupero informazioni del modello..." + +msgid "Failed to fetch model information from printer." +msgstr "Impossibile recuperare le informazioni del modello dalla stampante." + +msgid "Failed to parse model information." +msgstr "Impossibile analizzare le informazioni del modello" + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +"Il file .gcode.3mf non contiene dati G-code. Taglialo con Snapmaker Orca ed " +"esporta un nuovo file .gcode.3mf." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "Il file \"%s\" è stato perso! Si prega di scaricarlo di nuovo." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"File: %s\n" +"Title: %s\n" + +msgid "Download waiting..." +msgstr "Download in attesa..." + +msgid "Play" +msgstr "Play" + +msgid "Open Folder" +msgstr "Apri cartella" + +msgid "Download finished" +msgstr "Download completato" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Scaricamento %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." + +msgid "File does not exist." +msgstr "Il file non esiste" + +msgid "File checksum error. Please retry." +msgstr "Errore di checksum del file. Si prega di riprovare." + +msgid "Not supported on the current printer version." +msgstr "Non supportato nella versione corrente della stampante." + +msgid "Storage unavailable, insert SD card." +msgstr "Memoria non disponibile, inserire la scheda SD." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Codice errore: %d" + +msgid "Speed:" +msgstr "Velocità:" + +msgid "Deadzone:" +msgstr "Zona morta:" + +msgid "Options:" +msgstr "Opzioni:" + +msgid "Zoom" +msgstr "Zoom" + +msgid "Translation/Zoom" +msgstr "Traslazione/Zoom" + +msgid "3Dconnexion settings" +msgstr "Impostazioni 3Dconnexion" + +msgid "Swap Y/Z axes" +msgstr "Inverti assi Y/Z" + +msgid "Invert X axis" +msgstr "Inverti asse X" + +msgid "Invert Y axis" +msgstr "Inverti asse Y" + +msgid "Invert Z axis" +msgstr "Inverti asse Z" + +msgid "Invert Yaw axis" +msgstr "Inverti asse di imbardata" + +msgid "Invert Pitch axis" +msgstr "Inverti asse passo" + +msgid "Invert Roll axis" +msgstr "Inverti asse di rollio" + +msgid "Printing Progress" +msgstr "Avanzamento della stampa" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Layer: N/D" + +msgid "Clear" +msgstr "Cancella" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"La stampa del modello è stata completata, \n" +"tuttavia la sincronizzazione delle informazioni di valutazione non è " +"riuscita." + +msgid "How do you like this printing file?" +msgstr "Che cosa ne pensi di questo file di stampa?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"(Il modello è già stato valutato. La tua valutazione sovrascriverà la " +"valutazione precedente.)" + +msgid "Rate" +msgstr "Vota" + +msgid "Camera" +msgstr "Camera" + +msgid "SD Card" +msgstr "MicroSD" + +msgid "Camera Setting" +msgstr "Impostazioni camera" + +msgid "Switch Camera View" +msgstr "Cambia inquadratura" + +msgid "Control" +msgstr "Controllo" + +msgid "Printer Parts" +msgstr "Printer Parts" + +msgid "Print Options" +msgstr "Opzioni stampa" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Lamp" + +msgid "Aux" +msgstr "Ausiliario" + +msgid "Cham" +msgstr "Camera" + +msgid "Bed" +msgstr "Piano" + +msgid "Debug Info" +msgstr "Informazioni di debug" + +msgid "No SD Card" +msgstr "Nessuna scheda microSD" + +msgid "SD Card Abnormal" +msgstr "microSD anomala" + +msgid "Cancel print" +msgstr "Annulla la stampa" + +msgid "Are you sure you want to cancel this print?" +msgstr "Sei sicuro di voler annullare la stampa?" + +msgid "Downloading..." +msgstr "Downloading..." + +msgid "Cloud Slicing..." +msgstr "Slicing in cloud..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "Ci sono %s attività davanti nella coda di slicing del cloud." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Layer: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Layer: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Si prega di riscaldare l'ugello a oltre 170 gradi prima di caricare o " +"scaricare il filamento." + +msgid "Still unload" +msgstr "Scarica ancora" + +msgid "Still load" +msgstr "Carica ancora" + +msgid "Please select an AMS slot before calibration" +msgstr "Seleziona uno slot AMS prima di calibrare." + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Impossibile leggere le informazioni sul filamento: il filamento è caricato " +"nella testa di stampa. Scaricare il filamento e riprovare." + +msgid "This only takes effect during printing" +msgstr "Questo ha effetto solo in fase di stampa" + +msgid "Silent" +msgstr "Silent" + +msgid "Standard" +msgstr "Standard" + +msgid "Sport" +msgstr "Sport" + +msgid "Ludicrous" +msgstr "Ludicrous" + +msgid "Can't start this without SD card." +msgstr "Impossibile iniziare senza scheda MicroSD." + +msgid "Rate the Print Profile" +msgstr "Valutare il profilo di stampa" + +msgid "Comment" +msgstr "Commento" + +msgid "Rate this print" +msgstr "Vota questa stampa" + +msgid "Add Photo" +msgstr "Aggiungi foto" + +msgid "Delete Photo" +msgstr "Elimina foto" + +msgid "Submit" +msgstr "Invia" + +msgid "Please click on the star first." +msgstr "Fare clic prima sulla stella." + +msgid "InFo" +msgstr "Info" + +msgid "Get oss config failed." +msgstr "Ottenere la configurazione di oss non riuscita." + +msgid "Upload Pictrues" +msgstr "Carica foto" + +msgid "Number of images successfully uploaded" +msgstr "Numero di immagini caricate con successo" + +msgid " upload failed" +msgstr " Caricamento non riuscito" + +msgid " upload config prase failed\n" +msgstr " Caricamento della configurazione prase non riuscita\n" + +msgid " No corresponding storage bucket\n" +msgstr " Nessun secchio di stoccaggio corrispondente\n" + +msgid " can not be opened\n" +msgstr " non può essere aperto\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"Durante il processo di caricamento delle immagini si sono verificati i " +"seguenti problemi. Vuoi ignorarli?\n" +"\n" + +msgid "info" +msgstr "info" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"Sincronizzazione dei risultati di stampa. Riprova qualche secondo dopo." + +msgid "Upload failed\n" +msgstr "Caricamento non riuscito\n" + +msgid "obtaining instance_id failed\n" +msgstr "ottenere instance_id non è riuscito\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Il risultato del tuo commento non può essere caricato per alcuni motivi. " +"Come segue:\n" +"\n" +"Codice di errore: " + +msgid "error message: " +msgstr "messaggio d'errore: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"Vuoi reindirizzare alla pagina web per la valutazione?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Alcune delle tue immagini non sono state caricate. Vuoi reindirizzare alla " +"pagina web per la valutazione?" + +msgid "You can select up to 16 images." +msgstr "È possibile selezionare fino a 16 immagini." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"È necessario almeno un record di stampa riuscito di questo profilo di " +"stampa \n" +"per dare una valutazione positiva (4 o 5 stelle)." + +msgid "Status" +msgstr "Stato" + +msgid "Update" +msgstr "Aggiorna" + +msgid "Don't show again" +msgstr "Non mostrare più" + +#, c-format, boost-format +msgid "%s error" +msgstr "errore %s" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s ha riscontrato un errore" + +#, c-format, boost-format +msgid "%s warning" +msgstr "Avviso %s" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s ha un avviso" + +#, c-format, boost-format +msgid "%s info" +msgstr "Informazioni %s " + +#, c-format, boost-format +msgid "%s information" +msgstr "%s informazioni" + +msgid "Skip" +msgstr "Salta" + +msgid "Newer 3mf version" +msgstr "Versione 3mf più recente" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" + +msgid "Download Beta Version" +msgstr "Scarica la versione beta" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" + +msgid "Current Version: " +msgstr "Versione corrente:" + +msgid "Latest Version: " +msgstr "Ultima versione: " + +msgid "Not for now" +msgstr "Not for now" + +msgid "3D Mouse disconnected." +msgstr "Mouse 3D disconnesso." + +msgid "Configuration can update now." +msgstr "La configurazione può ora essere aggiornata." + +msgid "Detail." +msgstr "Dettagli." + +msgid "Integration was successful." +msgstr "L'integrazione è avvenuta con successo." + +msgid "Integration failed." +msgstr "Integrazione fallita." + +msgid "Undo integration was successful." +msgstr "Annullamento integrazione riuscita." + +msgid "New network plug-in available." +msgstr "Nuovo plug-in di network disponibile." + +msgid "Details" +msgstr "Dettagli" + +msgid "New printer config available." +msgstr "È disponibile una nuova configurazione della stampante." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "Annullamento integrazione non riuscito." + +msgid "Exporting." +msgstr "Esportazione." + +msgid "Software has New version." +msgstr "Il software ha una nuova versione." + +msgid "Goto download page." +msgstr "Vai alla pagina di download." + +msgid "Open Folder." +msgstr "Apri Cartella." + +msgid "Safely remove hardware." +msgstr "Rimuovi l'hardware in modo sicuro." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d L'oggetto ha supporti personalizzati." +msgstr[1] "%1$d Objects have custom supports." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d L'oggetto ha una pittura a colori." +msgstr[1] "%1$d Objects have color painting." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d oggetto è stato caricato come parte di un oggetto tagliato." +msgstr[1] "%1$d oggetti sono stati caricati come parti di un oggetto tagliato" + +msgid "ERROR" +msgstr "ERRORE" + +msgid "COMPLETED" +msgstr "COMPLETATO" + +msgid "CANCELED" +msgstr "ANNULLATO" + +msgid "Cancel upload" +msgstr "Annulla caricamento" + +msgid "Jump to" +msgstr "Vai a" + +msgid "Error:" +msgstr "Errore:" + +msgid "Warning:" +msgstr "Attenzione:" + +msgid "Export successfully." +msgstr "Esportazione riuscita." + +msgid "Model file downloaded." +msgstr "File del modello scaricato." + +msgid "Serious warning:" +msgstr "Avvertimento serio:" + +msgid " (Repair)" +msgstr " (Ripara)" + +msgid " Click here to install it." +msgstr " Clicca per installarlo." + +msgid "WARNING:" +msgstr "ATTENZIONE:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "Il modello necessita di supporti! Abilita i materiali di supporto." + +msgid "Gcode path overlap" +msgstr "Sovrapposizione del percorso G-code" + +msgid "Support painting" +msgstr "Pittura Supporti" + +msgid "Color painting" +msgstr "Pittura a colori" + +msgid "Cut connectors" +msgstr "Taglia connettori" + +msgid "Layers" +msgstr "Layer" + +msgid "Range" +msgstr "Intervallo" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"L'applicazione non può essere eseguita normalmente perché la versione OpenGL " +"è precedente alla 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Aggiorna i driver della scheda grafica." + +msgid "Unsupported OpenGL version" +msgstr "Versione OpenGL non supportata" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Impossibile caricare gli shader:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Errore caricamento shader" + +msgctxt "Layers" +msgid "Top" +msgstr "Superiore" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Inferiore" + +msgid "Enable AI monitoring of printing" +msgstr "Abilita monitoraggio AI della stampa" + +msgid "Sensitivity of pausing is" +msgstr "La sensibilità pausa è" + +msgid "Enable detection of build plate position" +msgstr "Abilita rilevamento posizione del piatto" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"Il tag di localizzazione del piatto verrà rilevato e la stampa verrà messa " +"in pausa se il tag non rientra nell'intervallo predefinito." + +msgid "First Layer Inspection" +msgstr "Ispezione del primo layer" + +msgid "Auto-recovery from step loss" +msgstr "Recupero automatico perdita passi" + +msgid "Allow Prompt Sound" +msgstr "Consenti suono di richiesta" + +msgid "Filament Tangle Detect" +msgstr "Rilevamento del groviglio del filamento" + +msgid "Nozzle Clumping Detection" +msgstr "Nozzle Clumping Detection" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "Check if the nozzle is clumping by filament or other foreign objects." + +msgid "Nozzle Type" +msgstr "Nozzle Type" + +msgid "Stainless Steel" +msgstr "Acciaio inox" + +msgid "Hardened Steel" +msgstr "Acciaio temprato" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Globale" + +msgid "Objects" +msgstr "Oggetti" + +msgid "Advance" +msgstr "Avanzato" + +msgid "Compare presets" +msgstr "Confronta i preset" + +msgid "View all object's settings" +msgstr "Visualizza tutte le impostazioni oggetto" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "Rimuovere la piastra corrente (se non l'ultima)" + +msgid "Auto orient objects on current plate" +msgstr "Orienta automaticamente gli oggetti sulla piastra corrente" + +msgid "Arrange objects on current plate" +msgstr "Disporre gli oggetti sulla piastra corrente" + +msgid "Unlock current plate" +msgstr "Sblocca la piastra corrente" + +msgid "Lock current plate" +msgstr "Piastra corrente di blocco" + +msgid "Edit current plate name" +msgstr "Modificare il nome del piatto corrente" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "Personalizza la piastra corrente" + +#, boost-format +msgid " plate %1%:" +msgstr " Piatto %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Nome non valido, i seguenti caratteri non sono consentiti:" + +msgid "Sliced Info" +msgstr "Informazioni processo" + +msgid "Used Filament (m)" +msgstr "Filamento usato (m)" + +msgid "Used Filament (mm³)" +msgstr "Filamento usato (mm³)" + +msgid "Used Filament (g)" +msgstr "Filamento usato (g)" + +msgid "Used Materials" +msgstr "Materiali usati" + +msgid "Estimated time" +msgstr "Estimated time" + +msgid "Filament changes" +msgstr "Cambi filamento" + +msgid "Click to edit preset" +msgstr "Clicca per modificare il preset" + +msgid "Connection" +msgstr "Connessione" + +msgid "Bed type" +msgstr "Tipo di piatto" + +msgid "Flushing volumes" +msgstr "Volumi di spurgo" + +msgid "Add one filament" +msgstr "Aggiungere un filamento" + +msgid "Remove last filament" +msgstr "Rimuovi ultimo filamento" + +msgid "Synchronize filament list from AMS" +msgstr "Sincronizza l'elenco filamenti da AMS" + +msgid "Set filaments to use" +msgstr "Imposta filamenti da usare" + +msgid "Search plate, object and part." +msgstr "Cerca piastra, oggetto e parte." + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Nessun filamento AMS. Selezionare una stampante nella pagina 'Dispositivo' " +"per caricare le informazioni AMS." + +msgid "Sync filaments with AMS" +msgstr "Sincronizza filamenti con AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"La sincronizzazione filamenti con AMS eliminerà tutti i preset e i colori " +"dei filamenti attualmente selezionati. Vuoi continuare?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"È già stata effettuata una sincronizzazione; si desidera sincronizzare solo " +"le modifiche o tutto?" + +msgid "Sync" +msgstr "Sincronizza" + +msgid "Resync" +msgstr "Risincronizza" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "" +"Non ci sono filamenti compatibili, la sincronizzazione non viene eseguita." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Ci sono alcuni filamenti sconosciuti mappati su un preset generico. Aggiorna " +"Snapmaker Orca o riavvia Snapmaker Orca per verificare se è presente un " +"aggiornamento delle impostazioni di sistema." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Vuoi salvare le modifiche a \"%1%\"?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Smontato con successo. Il dispositivo %s (%s) può ora essere rimosso dal " +"computer in sicurezza." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "Espulsione del dispositivo %s (%s) non riuscita." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "" +"Sono stati rilevati elementi precedentemente non salvati. Vuoi ripristinarli?" + +msgid "Restore" +msgstr "Ripristina" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"L'attuale temperatura del piano riscaldato è relativamente alta. L'ugello " +"potrebbe essere ostruito quando si stampa questo filamento in un involucro " +"chiuso. Si prega di aprire lo sportello anteriore e/o rimuovere il vetro " +"superiore." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"La durezza del nozzle richiesta dal filamento è superiore a quella del " +"nozzle predefinito della stampante. Si prega di sostituire il nozzle " +"hardened o il filamento, altrimenti il nozzle si rovinerà o potrebbe " +"danneggiarsi." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"L'attivazione della fotografia timelapse tradizionale può causare " +"imperfezioni della superficie. Si consiglia di passare alla modalità smooth." + +msgid "Expand sidebar" +msgstr "Espandi barra laterale" + +msgid "Collapse sidebar" +msgstr "Riduci barra laterale" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Caricamento file: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "Il 3mf non proviene da Snapmaker Orca, carica solo dati geometrici." + +msgid "Load 3mf" +msgstr "Carica 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"Versione del 3mf %s è più recente %s della versione %s, trovate le seguenti " +"chiavi non riconosciute:" + +msgid "You'd better upgrade your software.\n" +msgstr "Devi aggiornare il software.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"Versione del 3mf %s è più recente della versione %s di %s, si consiglia di " +"aggiornare il software." + +msgid "Invalid values found in the 3mf:" +msgstr "Valori non validi trovati in 3mf:" + +msgid "Please correct them in the param tabs" +msgstr "Si prega di correggerli nella scheda dei Parametri" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" +"Il 3mf ha i seguenti codici G modificati nei preset del filamento o della " +"stampante:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Si prega di confermare che questi G-code modificati sono sicuri per evitare " +"danni alla macchina!" + +msgid "Modified G-codes" +msgstr "G-code Modificati" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" +"Il 3mf ha i seguenti filamenti personalizzati o preimpostazioni della " +"stampante:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Si prega di confermare che i G-code all'interno di queste preimpostazioni " +"sono sicuri per evitare danni alla macchina!" + +msgid "Customized Preset" +msgstr "Preset personalizzato" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "" +"Il nome/i del componente all'interno del file step non è in formato UTF8!" + +msgid "The name may show garbage characters!" +msgstr "" +"A causa di una codifica del testo non supportata, potrebbero apparire " +"caratteri inutili!" + +msgid "Remember my choice." +msgstr "Ricorda la mia scelta." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Caricamento del file \"%1%\" non riuscito. Trovata configurazione non valida." + +msgid "Objects with zero volume removed" +msgstr "Oggetti con volume zero rimossi" + +msgid "The volume of the object is zero" +msgstr "Il volume dell'oggetto è zero" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"L'oggetto del file %s è troppo piccolo e può essere in metri o pollici.\n" +" Si desidera scalare in millimetri?" + +msgid "Object too small" +msgstr "Oggetto troppo piccolo" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Il file contiene oggetti posizionati ad altezze diverse.\n" +"Invece di considerarli come oggetti multipli, è necessario\n" +"considerarlo come singolo oggetto con più parti?" + +msgid "Multi-part object detected" +msgstr "Rilevato oggetto in più parti" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "Caricare questi file come un singolo oggetto con più parti?\n" + +msgid "Object with multiple parts was detected" +msgstr "È stato rilevato un oggetto con più parti" + +msgid "The file does not contain any geometry data." +msgstr "Il file non contiene dati geometrici." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"L'oggetto sembra troppo grande. Vuoi ridimensionarlo per adattarlo " +"automaticamente al piatto di stampa?" + +msgid "Object too large" +msgstr "Oggetto troppo grande" + +msgid "Export STL file:" +msgstr "Esporta file STL:" + +msgid "Export AMF file:" +msgstr "Esporta file AMF:" + +msgid "Save file as:" +msgstr "Salva come:" + +msgid "Export OBJ file:" +msgstr "Esporta file OBJ:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"Il file %s esiste già\n" +"Vuoi sostituirlo?" + +msgid "Confirm Save As" +msgstr "Confirm Salva con nome" + +msgid "Delete object which is a part of cut object" +msgstr "Elimina l'oggetto che fa parte dell'oggetto tagliato" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Stai cercando di eliminare un oggetto che fa parte di un oggetto tagliato.\n" +"Questa azione interromperà la corrispondenza tra gli oggetti tagliati.\n" +"In seguito, la coerenza del modello non può essere garantita." + +msgid "The selected object couldn't be split." +msgstr "L'oggetto selezionato non può essere diviso." + +msgid "Another export job is running." +msgstr "È in esecuzione un altro processo di esportazione." + +msgid "Unable to replace with more than one volume" +msgstr "Impossibile sostituire con più di un volume" + +msgid "Error during replace" +msgstr "Errore durante la sostituzione" + +msgid "Replace from:" +msgstr "Sostituisci da:" + +msgid "Select a new file" +msgstr "Seleziona nuovo file" + +msgid "File for the replace wasn't selected" +msgstr "Il file per la sostituzione non è stato selezionato" + +msgid "Please select a file" +msgstr "Seleziona file" + +msgid "Do you want to replace it" +msgstr "Vuoi sostituirlo" + +msgid "Message" +msgstr "Messaggio" + +msgid "Reload from:" +msgstr "Ricarica da:" + +msgid "Unable to reload:" +msgstr "Impossibile ricaricare:" + +msgid "Error during reload" +msgstr "Errore durante il ri-caricamento" + +msgid "There are warnings after slicing models:" +msgstr "Ci sono avvisi dopo aver elaborato i modelli:" + +msgid "warnings" +msgstr "Avvisi" + +msgid "Invalid data" +msgstr "Dati non validi" + +msgid "Slicing Canceled" +msgstr "Slicing Annullato" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Slicing Piatto %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Risolvi gli errori di slicing e pubblica nuovamente." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Il plug-in di rete non è stato rilevato. Le funzioni di rete non sono " +"disponibili." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Modalità solo anteprima:\n" +"Il file caricato contiene solo G-code, non può accedere alla pagina Prepara" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" +"È possibile conservare i preset modificati per il nuovo progetto o eliminarli" + +msgid "Creating a new project" +msgstr "Creazione nuovo progetto" + +msgid "Load project" +msgstr "Carica progetto" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Non è stato possibile salvare il progetto.\n" +"Verificare se online la cartella esiste o se altri programmi hanno aperto il " +"file del progetto." + +msgid "Save project" +msgstr "Salva progetto" + +msgid "Importing Model" +msgstr "Importazione del modello" + +msgid "prepare 3mf file..." +msgstr "preparazione file 3mf..." + +msgid "Download failed, unknown file format." +msgstr "Download failed; unknown file format." + +msgid "downloading project ..." +msgstr "Download progetto..." + +msgid "Download failed, File size exception." +msgstr "Download failed; File size exception." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Progetto scaricato %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"L'importazione di Snapmaker Orca non è riuscita. Si prega di scaricare il file " +"e importarlo manualmente." + +msgid "Import SLA archive" +msgstr "Importa archivio SLA" + +msgid "The selected file" +msgstr "Il file selezionato" + +msgid "does not contain valid gcode." +msgstr "non contiene un g-code valido." + +msgid "Error occurs while loading G-code file" +msgstr "Si è verificato un errore durante il caricamento del file G-code." + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "Il caricamento di un archivio zip sul percorso %1% non è riuscito." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "Impossibile decomprimere il file su %1%: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"Impossibile trovare il file decompresso su %1%. La decompressione del file " +"non è riuscita." + +msgid "Drop project file" +msgstr "Elimina il file di progetto" + +msgid "Please select an action" +msgstr "Seleziona un'azione" + +msgid "Open as project" +msgstr "Apri come progetto" + +msgid "Import geometry only" +msgstr "Importa solo la geometria" + +msgid "Only one G-code file can be opened at the same time." +msgstr "È possibile aprire un solo file G-code alla volta." + +msgid "G-code loading" +msgstr "Caricamento G-code" + +msgid "G-code files can not be loaded with models together!" +msgstr "I file e i modelli G-code non possono essere caricati insieme!" + +msgid "Can not add models when in preview mode!" +msgstr "Impossibile aggiungere modelli in modalità anteprima!" + +msgid "All objects will be removed, continue?" +msgstr "Saranno rimossi tutti gli oggetti, continuare?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"Il progetto corrente ha modifiche non salvate. Desideri salvarle prima di " +"continuare?" + +msgid "Number of copies:" +msgstr "Numero di copie:" + +msgid "Copies of the selected object" +msgstr "Copie dell'oggetto selezionato" + +msgid "Save G-code file as:" +msgstr "Salva il file G-code come:" + +msgid "Save SLA file as:" +msgstr "Salva il file SLA come:" + +msgid "The provided file name is not valid." +msgstr "Il nome del file fornito non è valido." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "I seguenti caratteri non sono permessi da un file system FAT:" + +msgid "Save Sliced file as:" +msgstr "Salva file elaborato come:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"Il file %s è stato inviato allo spazio di memoria della stampante e può " +"essere visualizzato sulla stampante." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Reason: part \"%1%\" is empty." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Reason: part \"%1%\" does not bound a volume." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Reason: part \"%1%\" has self intersection." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Reason: \"%1%\" and another part have no intersection." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Impossibile eseguire operazioni booleane sulle mesh del modello. Verranno " +"esportate solo le parti positive." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"Sei sicuro di voler memorizzare gli SVG originali con i loro percorsi locali " +"nel file 3MF?\n" +"Se premi \"NO\", tutti gli SVG del progetto non saranno più modificabili." + +msgid "Private protection" +msgstr "Protezione privata" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" +"La stampante è pronta? La piastra di stampa è in posizione, vuota e pulita?" + +msgid "Upload and Print" +msgstr "Carica e Stampa" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Stampa per oggetto: \n" +"Ti consigliamo di utilizzare la disposizione automatica per evitare " +"collisioni durante la stampa." + +msgid "Send G-code" +msgstr "Invia G-code" + +msgid "Send to printer" +msgstr "Manda alla stampante" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" +"I supporti personalizzati e la pittura a colori sono stati rimossi prima " +"della riparazione." + +msgid "Optimize Rotation" +msgstr "Ottimizza rotazione" + +msgid "Invalid number" +msgstr "Numero non valido" + +msgid "Plate Settings" +msgstr "Impostazioni Piatto" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Numero attuale di parti selezionate: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Numero di oggetti attualmente selezionati: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Nome parte: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Nome oggetto: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Dimensioni: %1% x %2% x %3% in\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Dimensioni: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Volume: %1% in³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Volume: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Triangoli: %1%\n" + +msgid "Tips:" +msgstr "Suggerimenti:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"La funzione \"Correggi modello\" è attualmente disponibile solo su Windows. " +"Si prega di riparare il modello su Snapmaker Orca (Windows) o software CAD." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Piatto% d: %s non è consigliato per l’utilizzo del filamento %s (%s). Se " +"desideri continuare, imposta la temperatura del piano di questo filamento su " +"un numero diverso da zero." + +msgid "Switching the language requires application restart.\n" +msgstr "Il cambio lingua richiede il riavvio dell'applicazione.\n" + +msgid "Do you want to continue?" +msgstr "Vuoi continuare?" + +msgid "Language selection" +msgstr "Selezione lingua" + +msgid "Switching application language while some presets are modified." +msgstr "Cambio lingua applicazione durante la modifica di alcuni preset." + +msgid "Changing application language" +msgstr "Modifica lingua applicazione" + +msgid "Changing the region will log out your account.\n" +msgstr "La modifica della regione ti disconnetterà dal tuo account.\n" + +msgid "Region selection" +msgstr "Selezione Paese" + +msgid "Second" +msgstr "Secondo" + +msgid "Browse" +msgstr "Sfoglia" + +msgid "Choose Download Directory" +msgstr "Scegliere la directory di download" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "Impostazioni generali" + +msgid "Asia-Pacific" +msgstr "Asia-Pacific" + +msgid "China" +msgstr "China" + +msgid "Europe" +msgstr "Europe" + +msgid "North America" +msgstr "North America" + +msgid "Others" +msgstr "Altro" + +msgid "Login Region" +msgstr "Regione di accesso" + +msgid "Stealth Mode" +msgstr "Modalità invisibile" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" + +msgid "Enable network plugin" +msgstr "Abilita plugin di rete" + +msgid "Check for stable updates only" +msgstr "Verifica solo la disponibilità di aggiornamenti stabili" + +msgid "Metric" +msgstr "Metrico" + +msgid "Imperial" +msgstr "Imperiale" + +msgid "Units" +msgstr "Unità" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"Su OSX per impostazione predefinita c'è sempre una sola istanza dell'app in " +"esecuzione. Tuttavia è consentito eseguire più istanze della stessa app da " +"riga di comando. In tal caso, questa impostazione consentirà una sola " +"istanza." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" + +msgid "Home" +msgstr "Home" + +msgid "Default Page" +msgstr "Pagina predefinita" + +msgid "Set the page opened on startup." +msgstr "Imposta la pagina aperta all'avvio." + +msgid "Touchpad" +msgstr "" + +msgid "Camera style" +msgstr "" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" + +msgid "Zoom to mouse position" +msgstr "Zoom posizione del mouse" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Ingrandisci verso la posizione del puntatore del mouse nella vista 3D, " +"anziché verso il centro della finestra 2D." + +msgid "Use free camera" +msgstr "Usa l'inquadratura libera" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Se attivo, usa la visuale libera. Se non attivo, usa la visuale vincolata." + +msgid "Reverse mouse zoom" +msgstr "" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" + +msgid "Show splash screen" +msgstr "Mostra splash screen" + +msgid "Show the splash screen during startup." +msgstr "Mostra la schermata iniziale durante l'avvio." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Mostra \"Suggerimento del giorno\" dopo l'avvio" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Se abilitato, all'avvio vengono visualizzati suggerimenti utili." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "" +"Volumi di Spurgo: Calcola automaticamente ogni volta che il colore cambia." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "Se abilitato, calcola automaticamente ogni volta che il colore cambia." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "Flushing volumes: Auto-calculate every time the filament is changed." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "If enabled, auto-calculate every time filament is changed" + +msgid "Remember printer configuration" +msgstr "" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." + +msgid "Network" +msgstr "Rete" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Sincronizzazione automatica preset utente (stampante/filamento/processo)" + +msgid "User Sync" +msgstr "User Sync" + +msgid "Update built-in Presets automatically." +msgstr "Aggiorna automaticamente i preset." + +msgid "System Sync" +msgstr "Sincronizzazione sistema" + +msgid "Clear my choice on the unsaved presets." +msgstr "Cancella la mia scelta sui preset non salvati." + +msgid "Associate files to Snapmaker Orca" +msgstr "Associate files to Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Associare file .3mf a Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Se abilitata, imposta Snapmaker Orca come applicazione predefinita per aprire " +"\"\n" +"\"i file .3mf." + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Associate .stl files to Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Se abilitata, imposta Snapmaker Orca come applicazione predefinita per aprire " +"\"\n" +"\"i file .stl." + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Associate .step/.stp files to Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Se abilitata, imposta Snapmaker Orca come applicazione predefinita per aprire " +"\"\n" +"\"i file .step." + +msgid "Associate web links to Snapmaker Orca" +msgstr "" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "" + +msgid "Maximum recent projects" +msgstr "Numero massimo di progetti recenti" + +msgid "Maximum count of recent projects" +msgstr "Numero massimo di progetti recenti" + +msgid "Clear my choice on the unsaved projects." +msgstr "Cancella la mia scelta sui progetti non salvati." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "Nessun avviso durante il caricamento di 3MF con codici G modificati" + +msgid "Auto-Backup" +msgstr "Backup automatico" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Esegui periodicamente il backup del tuo progetto per facilitare il " +"ripristino dopo un crash occasionale." + +msgid "every" +msgstr "Ogni" + +msgid "The peroid of backup in seconds." +msgstr "Periodo di backup in secondi." + +msgid "Downloads" +msgstr "Scaricati" + +msgid "Dark Mode" +msgstr "Modalità Scura" + +msgid "Enable Dark mode" +msgstr "Attiva modalità Scura" + +msgid "Develop mode" +msgstr "Modalità sviluppatore" + +msgid "Skip AMS blacklist check" +msgstr "Salta check Blacklist AMS" + +msgid "Home page and daily tips" +msgstr "Home page e suggerimenti quotidiani" + +msgid "Show home page on startup" +msgstr "Mostra pagina iniziale all'avvio" + +msgid "Sync settings" +msgstr "Impostazioni sincronizzazione" + +msgid "User sync" +msgstr "User sync" + +msgid "Preset sync" +msgstr "Sincronizzazione preset" + +msgid "Preferences sync" +msgstr "Sincronizzazione preferenze" + +msgid "View control settings" +msgstr "Visualizza impostazioni di controllo" + +msgid "Rotate of view" +msgstr "Ruota vista" + +msgid "Move of view" +msgstr "Vista panoramica" + +msgid "Zoom of view" +msgstr "Vista Zoom" + +msgid "Other" +msgstr "Altro" + +msgid "Mouse wheel reverses when zooming" +msgstr "Reverse scroll direction while zooming" + +msgid "Enable SSL(MQTT)" +msgstr "Abilita SSL (MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Abilita SSL (FTP)" + +msgid "Internal developer mode" +msgstr "Modalità sviluppatore interno" + +msgid "Log Level" +msgstr "Livello log" + +msgid "fatal" +msgstr "fatale" + +msgid "error" +msgstr "Errore" + +msgid "warning" +msgstr "attenzione" + +msgid "debug" +msgstr "debug" + +msgid "trace" +msgstr "Traccia" + +msgid "Host Setting" +msgstr "Impostazione host" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEV host: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA host: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "PRE host: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Host del prodotto" + +msgid "debug save button" +msgstr "Pulsante salvataggio debug" + +msgid "save debug settings" +msgstr "salva impostazioni debug" + +msgid "DEBUG settings have saved successfully!" +msgstr "Le impostazioni di debug sono state salvate correttamente!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Cambia ambiente cloud; Effettua nuovamente il login!" + +msgid "System presets" +msgstr "Preset di sistema" + +msgid "User presets" +msgstr "Preset utente" + +msgid "Incompatible presets" +msgstr "Preset incompatibili" + +msgid "AMS filaments" +msgstr "Filamento AMS" + +msgid "Click to pick filament color" +msgstr "Fai click per selezionare il colore del filamento" + +msgid "Please choose the filament colour" +msgstr "Si prega di scegliere il colore del filamento" + +msgid "Add/Remove presets" +msgstr "Aggiungi/Rimuovi preset" + +msgid "Edit preset" +msgstr "Modifica preset" + +msgid "Project-inside presets" +msgstr "Preset interno al progetto" + +msgid "Add/Remove filaments" +msgstr "Aggiungi/rimuovi filamento" + +msgid "Add/Remove materials" +msgstr "Aggiungi/rimuovi materiali" + +msgid "Select/Remove printers(system presets)" +msgstr "Seleziona/Rimuovi stampanti (preimpostazioni di sistema)" + +msgid "Create printer" +msgstr "Creare una stampante" + +msgid "The selected preset is null!" +msgstr "Il preset selezionato è nullo!" + +msgid "End" +msgstr "End" + +msgid "Customize" +msgstr "Personalizza" + +msgid "Other layer filament sequence" +msgstr "Other layer filament sequence" + +msgid "Please input layer value (>= 2)." +msgstr "Please input layer value (>= 2)." + +msgid "Plate name" +msgstr "Nome Piatto" + +msgid "Same as Global Print Sequence" +msgstr "Uguale a Sequenza stampa globale" + +msgid "Print sequence" +msgstr "Sequenza di stampa" + +msgid "Same as Global" +msgstr "Same as Global" + +msgid "Disable" +msgstr "Disable" + +msgid "Spiral vase" +msgstr "Vaso a spirale" + +msgid "First layer filament sequence" +msgstr "Sequenza di filamenti di primo Layer" + +msgid "Same as Global Plate Type" +msgstr "Uguale al tipo di piano globale" + +msgid "Same as Global Bed Type" +msgstr "Uguale al tipo di piano globale" + +msgid "By Layer" +msgstr "Per layer" + +msgid "By Object" +msgstr "Per oggetto" + +msgid "Accept" +msgstr "Accetta" + +msgid "Log Out" +msgstr "Log Out" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "Slice di tutti i piatti per ottenere una stima del tempo e filamento" + +msgid "Packing project data into 3mf file" +msgstr "Packing dati progetto in 3mf file" + +msgid "Uploading 3mf" +msgstr "Caricamento 3mf" + +msgid "Jump to model publish web page" +msgstr "Vai alla pagina web di pubblicazione del modello" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "" +"Nota: la preparazione può richiedere alcuni minuti. Si prega di avere " +"pazienza." + +msgid "Publish" +msgstr "Pubblica" + +msgid "Publish was cancelled" +msgstr "La pubblicazione è stata annullata" + +msgid "Slicing Plate 1" +msgstr "Slicing Piatto 1" + +msgid "Packing data to 3mf" +msgstr "Packing data to 3mf" + +msgid "Jump to webpage" +msgstr "Vai alla pagina web" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Salva %s come" + +msgid "User Preset" +msgstr "Preset utente" + +msgid "Preset Inside Project" +msgstr "Preset interno al Progetto" + +msgid "Name is unavailable." +msgstr "Nome non disponibile." + +msgid "Overwrite a system profile is not allowed" +msgstr "Non è consentito sovrascrivere un profilo di sistema" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "Preset \"%1%\" esiste già." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "" +"Preset \"%1%\" esiste già ma è incompatibile con la stampante corrente." + +msgid "Please note that saving action will replace this preset" +msgstr "Tieni presente che il salvataggio sovrascriverà il preset corrente" + +msgid "The name cannot be the same as a preset alias name." +msgstr "Il nome non può essere uguale a quello di un preset." + +msgid "Save preset" +msgstr "Salva preset" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Copia" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "La stampante \"%1%\" è selezionata con il preset \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Scegli un'azione con \"%1%\" preimpostata dopo il salvataggio." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Per \"%1%\", cambia \"%2%\" con \"%3%\". " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Per \"%1%\", aggiungere \"%2%\" come nuovo preset" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Basta passare a \"%1%\"" + +msgid "Task canceled" +msgstr "Attività annullata" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Cerca" + +msgid "My Device" +msgstr "Mio dispositivo" + +msgid "Other Device" +msgstr "Altro dispositivo" + +msgid "Online" +msgstr "Online" + +msgid "Input access code" +msgstr "Inserisci codice di accesso" + +msgid "Can't find my devices?" +msgstr "Non riesci a trovare i dispositivi?" + +msgid "Log out successful." +msgstr "Log out riuscito." + +msgid "Busy" +msgstr "Occupato" + +msgid "Bambu Cool Plate" +msgstr "Bambu Cool Plate" + +msgid "PLA Plate" +msgstr "Piastra PLA" + +msgid "Bambu Engineering Plate" +msgstr "Bambu Engineering Plate" + +msgid "Bambu Smooth PEI Plate" +msgstr "Piastra Bambu Smooth PEI" + +msgid "High temperature Plate" +msgstr "High Temperature Plate" + +msgid "Bambu Textured PEI Plate" +msgstr "Piastra PEI testurizzata Bambu" + +msgid "Send print job to" +msgstr "Invia stampa a" + +msgid "Flow Dynamics Calibration" +msgstr "Calibrazione della dinamica del flusso" + +msgid "Click here if you can't connect to the printer" +msgstr "Clicca qui se non puoi connetterti alla stampante" + +msgid "send completed" +msgstr "Invio completo" + +msgid "Error code" +msgstr "Codice di errore" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "" +"Nessun account di login, vengono visualizzate solo le stampanti in modalità " +"LAN" + +msgid "Connecting to server" +msgstr "Connessione in corso al server" + +msgid "Synchronizing device information" +msgstr "Sincronizzazione informazioni dispositivo" + +msgid "Synchronizing device information time out" +msgstr "La sincronizzazione informazioni dispositivo è scaduta" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"Impossibile inviare un lavoro di stampa mentre la stampante sta aggiornando " +"il firmware" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "La stampante sta eseguendo le istruzioni. Riavvia la stampa al termine" + +msgid "The printer is busy on other print job" +msgstr "La stampante è occupata con altro lavoro di stampa" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Il filamento %s supera il numero di slot AMS. Aggiorna il firmware della " +"stampante per supportare l'assegnazione degli slot AMS." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Il filamento supera il numero di slot AMS. Aggiorna il firmware della " +"stampante per supportare l'assegnazione degli slot AMS." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Fai clic su ciascun filamento in alto per specificare lo slot AMS di " +"mappatura prima di inviare il lavoro di stampa" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"Il filamento %s non corrisponde al filamento nello slot AMS %s. Aggiorna il " +"firmware della stampante per supportare l'assegnazione degli slot AMS." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Il filamento non corrisponde al filamento nello slot AMS. Aggiorna il " +"firmware della stampante per supportare l'assegnazione degli slot AMS." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"Il firmware della stampante supporta solo la mappatura sequenziale del " +"filamento => slot AMS." + +msgid "An SD card needs to be inserted before printing." +msgstr "È necessario inserire una scheda microSD prima di stampare." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "È necessario inserire una scheda microSD per registrare un timelapse." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Impossibile inviare il lavoro di stampa a una stampante il cui firmware deve " +"essere aggiornato." + +msgid "Cannot send the print job for empty plate" +msgstr "Impossibile inviare il lavoro di stampa per un piatto vuoto" + +msgid "This printer does not support printing all plates" +msgstr "Questa stampante non supporta la stampa di piatti multipla" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"Quando si abilita la modalità vaso a spirale, le macchine con struttura I3 " +"non genereranno video timelapse." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Timelapse non è supportato perché la sequenza di stampa è impostata su \"Per " +"oggetto\"." + +msgid "Errors" +msgstr "Errori" + +msgid "Please check the following:" +msgstr "Controllare quanto segue:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"Il tipo di stampante selezionato durante la generazione del G-Code non è " +"coerente con la stampante attualmente selezionata. Si consiglia di " +"utilizzare lo stesso tipo di stampante per lo slicing." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"Ci sono alcuni filamenti sconosciuti nelle mappature AMS. Si prega di " +"verificare se sono i filamenti necessari. Se sono a posto, fai clic su " +"«Conferma» per iniziare a stampare." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "Ugello in preset: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "ugello memorizzato: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Your nozzle diameter in sliced file is not consistent with the saved nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "Please fix the error above, otherwise printing cannot continue." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Fai clic sul pulsante di conferma se desideri continuare con la stampa." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Collegamento alla stampante. Impossibile annullare durante il processo di " +"connessione." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Precauzioni per l'uso! La calibrazione del flusso sulla piastra PEI " +"testurizzata può fallire a causa della superficie irregolare." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Calibrazione automatica del flusso tramite Micro Lidar" + +msgid "Modifying the device name" +msgstr "Modifica nome del dispositivo" + +msgid "Bind with Pin Code" +msgstr "Bind with Pin Code" + +msgid "Send to Printer SD card" +msgstr "Invia a microSD stampante" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "" +"Impossibile inviare attività di stampa quando è in corso un aggiornamento" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "" +"La stampante selezionata è incompatibile con i preset della stampante scelti." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "" +"È necessario inserire una scheda MicroSD prima di inviare alla scheda SD " +"della stampante." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "La stampante deve essere sulla stessa LAN di Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "La stampante non supporta l'invio alla scheda microSD della stampante." + +msgid "Slice ok." +msgstr "Slice completo." + +msgid "View all Daily tips" +msgstr "Visualizza tutti i consigli giornalieri" + +msgid "Failed to create socket" +msgstr "Impossibile creare il socket" + +msgid "Failed to connect socket" +msgstr "Connessione del socket non riuscita" + +msgid "Failed to publish login request" +msgstr "Non è stato possibile pubblicare la richiesta di login" + +msgid "Get ticket from device timeout" +msgstr "Timeout durante il recupero del Ticket dal dispositivo" + +msgid "Get ticket from server timeout" +msgstr "Timeout durante il recupero del Ticket dal server" + +msgid "Failed to post ticket to server" +msgstr "Inserimento del ticket sul server non riuscito" + +msgid "Failed to parse login report reason" +msgstr "Non è stato possibile analizzare la causa del rapporto di login" + +msgid "Receive login report timeout" +msgstr "Timeout ricezione del rapporto di login" + +msgid "Unknown Failure" +msgstr "Fallimento sconosciuto" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." + +msgid "Can't find Pin Code?" +msgstr "Can't find Pin Code?" + +msgid "Pin Code" +msgstr "Pin Code" + +msgid "Binding..." +msgstr "Binding..." + +msgid "Please confirm on the printer screen" +msgstr "Please confirm on the printer screen" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Log in failed. Please check the Pin Code." + +msgid "Log in printer" +msgstr "Log in stampante" + +msgid "Would you like to log in this printer with current account?" +msgstr "Vuoi accedere alla stampante con l'account corrente?" + +msgid "Check the reason" +msgstr "Verifica la causa" + +msgid "Read and accept" +msgstr "Leggi e accetta" + +msgid "Terms and Conditions" +msgstr "Termini e condizioni" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Grazie per aver acquistato un dispositivo Bambu Lab. Prima di utilizzare il " +"dispositivo Bambu Lab, si prega di leggere i termini e le condizioni. " +"Facendo clic per accettare di utilizzare il tuo dispositivo Bambu Lab, " +"accetti di rispettare l'Informativa sulla privacy e le Condizioni d'uso " +"(collettivamente, i \"Termini\"). Se non rispetti o non accetti " +"l'Informativa sulla privacy di Bambu Lab, ti preghiamo di non utilizzare i " +"dispositivi e i servizi di Bambu Lab." + +msgid "and" +msgstr "e" + +msgid "Privacy Policy" +msgstr "Informativa Privacy" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Chiediamo il tuo aiuto per migliorare tutte le stampanti" + +msgid "Statement about User Experience Improvement Program" +msgstr "Dichiarazione del programma miglioramento dell'esperienza utente" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"Nella comunità della stampa 3D, impariamo dai successi e dagli insuccessi " +"degli altri per adattare i nostri parametri e impostazioni di slicing. %s " +"segue lo stesso principio e utilizza l'apprendimento automatico per " +"migliorare le sue prestazioni basandosi sui successi e sugli insuccessi di " +"un vasto numero di stampe effettuate dai nostri utenti. Stiamo addestrando " +"%s affinché diventi più intelligente alimentandolo con dati reali. Se sei " +"d'accordo, questo servizio accederà alle informazioni dai tuoi registri " +"degli errori e dai registri di utilizzo, che possono includere informazioni " +"descritte nell'Informativa sulla privacy. Non raccoglieremo alcun Dato " +"Personale con il quale un individuo possa essere identificato direttamente o " +"indirettamente, incluso, a titolo esemplificativo, nomi, indirizzi, " +"informazioni di pagamento o numeri di telefono. Abilitando questo servizio, " +"accetti questi termini e la dichiarazione sull'Informativa sulla privacy." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Dichiarazione del piano miglioramento dell'esperienza utente" + +msgid "Log in successful." +msgstr "Log in effettuato con successo." + +msgid "Log out printer" +msgstr "Log out dalla stampante" + +msgid "Would you like to log out the printer?" +msgstr "Vuoi disconnettere la stampante?" + +msgid "Please log in first." +msgstr "Prima effettua il login." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "Si è verificato un problema di connessione alla stampante. Riprovare." + +msgid "Failed to log out." +msgstr "Disconnessione non riuscita." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Salva le %s attuali" + +msgid "Delete this preset" +msgstr "Elimina questo preset" + +msgid "Search in preset" +msgstr "Cerca nel preset" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Clicca per ripristinare tutte le impostazioni dell'ultimo preset salvato." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"È necessaria una Prime Tower per la modalità timeplase fluida. Potrebbero " +"esserci difetti sul modello senza una Prime Tower. Sei sicuro di voler " +"disabilitare la Prime Tower?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"È necessaria una Prime Tower per una modalità timelapse fluida. Potrebbero " +"esserci dei difetti sul modello senza Prime Tower. Vuoi abilitare la Prime " +"Tower?" + +msgid "Still print by object?" +msgstr "Stampare ancora per oggetto?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Abbiamo aggiunto uno stile sperimentale \"Albero Slim\" che presenta un " +"volume di supporto più piccolo ma una resistenza più debole.\n" +"Si consiglia di utilizzarlo con: 0 layer interfaccia, 0 distanza dall'alto, " +"2 pareti." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Modificare queste impostazioni automaticamente? \n" +"Si - Modifica queste impostazioni automaticamente.\n" +"No - Non modificare queste impostatzioni per me" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Per gli stili \"Albero Strong\" e \"Albero ibrido\", si consigliano le " +"seguenti impostazioni: almeno 2 layer interfaccia, distanza z superiore di " +"almeno 0,1 mm o utilizzo di materiali di supporto sull'interfaccia." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"Quando si utilizza il materiale di supporto per l'interfaccia di supporto, " +"si consigliano le seguenti impostazioni:\n" +"0 distanza z superiore , 0 spaziatura interfaccia, trama concentrico e " +"disabilita altezza layer di supporto indipendente" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"L'attivazione di questa opzione modificherà la forma del modello. Se la " +"stampa richiede dimensioni precise o fa parte di un assieme, è importante " +"ricontrollare se questa modifica della geometria influisce sulla " +"funzionalità della stampa." + +msgid "Are you sure you want to enable this option?" +msgstr "Sei sicuro di voler abilitare questa opzione?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"L'altezza dello strato è troppo piccola.\n" +"Sarà impostato su min_layer_height\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"L'altezza dello strato supera il limite in Impostazioni stampante -> " +"Estrusore -> Limiti di altezza dello strato, ciò potrebbe causare problemi " +"di qualità di stampa." + +msgid "Adjust to the set range automatically? \n" +msgstr "Regolare automaticamente l'intervallo impostato? \n" + +msgid "Adjust" +msgstr "Rettifica" + +msgid "Ignore" +msgstr "Ignora" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications. Please use with the latest printer firmware." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"Quando si registra un timelapse senza testa di stampa, si consiglia di " +"aggiungere un \"Timelapse Torre di pulizia\"\n" +"facendo clic con il pulsante destro del mouse sulla posizione vuota del " +"piatto e scegli \"Aggiungi primitiva\" ->\"Timelapse Torre di pulizia\"»." + +msgid "Line width" +msgstr "Larghezza linea" + +msgid "Seam" +msgstr "Cucitura" + +msgid "Precision" +msgstr "Precisione" + +msgid "Wall generator" +msgstr "Generatore parete" + +msgid "Walls and surfaces" +msgstr "Pareti e superfici" + +msgid "Bridging" +msgstr "Bridging" + +msgid "Overhangs" +msgstr "Sporgenze" + +msgid "Walls" +msgstr "Pareti" + +msgid "Top/bottom shells" +msgstr "Gusci superiori/inferiori" + +msgid "Initial layer speed" +msgstr "Velocità primo layer" + +msgid "Other layers speed" +msgstr "Velocità altri layer" + +msgid "Overhang speed" +msgstr "Velocità di sbalzo" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Indica la velocità per vari gradi di sporgenza. I gradi di sporgenza sono " +"espressi come percentuale della larghezza della linea. Velocità 0 significa " +"che non c'è rallentamento per l'intervallo di gradi di sporgenza e viene " +"utilizzata la velocità della parete." + +msgid "Bridge" +msgstr "Ponte" + +msgid "Set speed for external and internal bridges" +msgstr "Impostare la velocità per ponti esterni e interni" + +msgid "Travel speed" +msgstr "Velocità spostamento" + +msgid "Acceleration" +msgstr "Accelerazione" + +msgid "Jerk(XY)" +msgstr "Jerk(XY)" + +msgid "Raft" +msgstr "Raft" + +msgid "Support filament" +msgstr "Filamento per supporti" + +msgid "Tree supports" +msgstr "Supporti ad albero" + +msgid "Skirt" +msgstr "Skirt" + +msgid "Prime tower" +msgstr "Prime tower" + +msgid "Special mode" +msgstr "Modalità speciale" + +msgid "G-code output" +msgstr "Uscita G-code" + +msgid "Post-processing Scripts" +msgstr "Script post-elaborazione" + +msgid "Notes" +msgstr "Note" + +msgid "Frequent" +msgstr "Frequente" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"La riga seguente %s contiene parole chiave riservata.\n" +"Rimuovilo, altrimenti la visualizzazione G-code e la stima del tempo di " +"stampa verranno interrotte." +msgstr[1] "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or G-code visualization and print time estimation will " +"be broken." + +msgid "Reserved keywords found" +msgstr "Parole chiave riservate trovate" + +msgid "Setting Overrides" +msgstr "Sovrascrivi impostazioni" + +msgid "Retraction" +msgstr "Retrazione" + +msgid "Basic information" +msgstr "Informazioni di Base" + +msgid "Recommended nozzle temperature" +msgstr "Temperatura nozzle consigliata" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Intervallo di temperatura del nozzle consigliato per questo filamento. 0 " +"significa non impostato" + +msgid "Print chamber temperature" +msgstr "Temperatura della camera di stampa" + +msgid "Print temperature" +msgstr "Temperatura stampa" + +msgid "Nozzle" +msgstr "Ugello" + +msgid "Nozzle temperature when printing" +msgstr "Temperatura del nozzle durante la stampa" + +msgid "Cool plate" +msgstr "Cool plate" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Temperatura del piano quando è installato il piatto Cool Plate. Il valore 0 " +"significa che il filamento non supporta la stampa su piatto Cool Plate." + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "Engineering plate" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Temperatura del piano quando è installato il piatto Engineering. Il valore 0 " +"significa che il filamento non supporta la stampa su piatto Engineering." + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Piastra PEI liscia / piastra ad alta temperatura" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Temperatura del letto quando è installata la piastra PEI liscia/piastra ad " +"alta temperatura. Il valore 0 indica che il filamento non supporta la stampa " +"sulla piastra PEI liscia/piastra ad alta temperatura" + +msgid "Textured PEI Plate" +msgstr "Textured PEI Plate" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Temperatura del piano quando è installato il piatto Textured PEI. Il valore " +"0 significa che il filamento non è supportato sul piatto Textured PEI" + +msgid "Volumetric speed limitation" +msgstr "Limitazione velocità volumetrica" + +msgid "Cooling" +msgstr "Raffreddamento" + +msgid "Cooling for specific layer" +msgstr "Raffreddamento per specifico layer" + +msgid "Part cooling fan" +msgstr "Ventola di raffreddamento oggetto" + +msgid "Min fan speed threshold" +msgstr "Soglia minima velocità della ventola" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"La ventola di raffreddamento della parte funzionerà alla velocità minima " +"della ventola quando la durata stimata del layer è superiore al valore di " +"soglia. Quando il tempo del layer è inferiore alla soglia, la velocità della " +"ventola verrà interpolata tra la velocità minima e massima della ventola in " +"base al tempo di stampa a layer." + +msgid "Max fan speed threshold" +msgstr "Soglia massima velocità della ventola" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"La ventola di raffreddamento funzionerà alla massima velocità quando il " +"tempo layer stimato è inferiore al valore di soglia." + +msgid "Auxiliary part cooling fan" +msgstr "Ventola di raffreddamento della parte ausiliaria" + +msgid "Exhaust fan" +msgstr "Aspiratore" + +msgid "During print" +msgstr "Durante la stampa" + +msgid "Complete print" +msgstr "Stampa completa" + +msgid "Filament start G-code" +msgstr "G-code Iniziale Filamento" + +msgid "Filament end G-code" +msgstr "G-code Finale Filamento" + +msgid "Multimaterial" +msgstr "Multimateriale" + +msgid "Wipe tower parameters" +msgstr "Parametri torre di pulitura" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "Parametri di cambio strumento per stampanti MM con estrusore singolo" + +msgid "Ramming settings" +msgstr "Impostazioni del ramming" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "Parametri di cambio strumento con stampanti MM multiestrusore" + +msgid "Printable space" +msgstr "Spazio di stampa" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "Valore non valido fornito per il parametro %1%: %2%" + +msgid "G-code flavor is switched" +msgstr "La variante del G-Code è stata commutata" + +msgid "Cooling Fan" +msgstr "Velocità minima ventola di raffreddamento" + +msgid "Fan speed-up time" +msgstr "Tempo di accelerazione della ventola" + +msgid "Extruder Clearance" +msgstr "Ingombro estrusore" + +msgid "Adaptive bed mesh" +msgstr "Rete del letto adattiva" + +msgid "Accessory" +msgstr "Accessori" + +msgid "Machine gcode" +msgstr "Macchina G-code" + +msgid "Machine start G-code" +msgstr "G-code avvio della macchina" + +msgid "Machine end G-code" +msgstr "Fine G-code" + +msgid "Printing by object G-code" +msgstr "Stampa per oggetto G-code" + +msgid "Before layer change G-code" +msgstr "G-code prima del cambio layer" + +msgid "Layer change G-code" +msgstr "G-code cambio layer" + +msgid "Time lapse G-code" +msgstr "Time lapse G-code" + +msgid "Change filament G-code" +msgstr "G-code cambio filamento" + +msgid "Change extrusion role G-code" +msgstr "Modificare il codice G del ruolo di estrusione" + +msgid "Pause G-code" +msgstr "G-code Pausa" + +msgid "Template Custom G-code" +msgstr "Modello G-code personalizzato" + +msgid "Motion ability" +msgstr "Capacità di movimento" + +msgid "Normal" +msgstr "Normale" + +msgid "Speed limitation" +msgstr "Limitazione velocità" + +msgid "Acceleration limitation" +msgstr "Limita Accelerazione" + +msgid "Jerk limitation" +msgstr "Limitazione jerk" + +msgid "Single extruder multimaterial setup" +msgstr "Configurazione multimateriale estrusore singolo" + +msgid "Wipe tower" +msgstr "Torre di pulitura" + +msgid "Single extruder multimaterial parameters" +msgstr "Parametri estrusore singolo materiale multiplo" + +msgid "Layer height limits" +msgstr "Limiti altezza layer" + +msgid "Lift Z Enforcement" +msgstr "Applicazione dell'ascensore Z" + +msgid "Retraction when switching material" +msgstr "Retrazione quando si cambia materiale" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"La funzione Pulitura non è disponibile quando si usa la modalità Retrazione " +"Firmware.\n" +"\n" +"Devo disattivarla per poter abilitare la Retrazione Firmware?" + +msgid "Firmware Retraction" +msgstr "Retrazione Firmware" + +msgid "Detached" +msgstr "Distaccato" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"%d Preimpostazione filamento (Filament Preset) e %d Process Preset ( Process " +"Preset sono collegate a questa stampante. Tali impostazioni predefinite " +"verranno eliminate se la stampante viene eliminata." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "I preset ereditati da altri preset non possono essere eliminati!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "I seguenti predefiniti ereditano questo predefinito." +msgstr[1] "I seguenti predefiniti ereditano questo predefinito." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Preset" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "Verrà eliminato anche il seguente preset:" +msgstr[1] "The following presets will be deleted too:" + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Sei sicuro di voler eliminare il preset selezionato? \n" +"Se la preimpostazione corrisponde a un filamento attualmente in uso sulla " +"stampante, reimpostare le informazioni sul filamento per tale slot." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Sei sicuro di voler %1% il preset selezionato?" + +msgid "All" +msgstr "Tutto" + +msgid "Set" +msgstr "Imposta" + +msgid "Click to reset current value and attach to the global value." +msgstr "" +"Fare clic per ripristinare il valore corrente e associarlo al valore globale." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Fai clic per eliminare le modifiche correnti e ripristinare il valore " +"salvato." + +msgid "Process Settings" +msgstr "Impostazioni processo" + +msgid "Undef" +msgstr "Indefinito" + +msgid "Unsaved Changes" +msgstr "Modifiche non salvate" + +msgid "Transfer or discard changes" +msgstr "Scarta o mantieni le modifiche" + +msgid "Old Value" +msgstr "Valore precedente" + +msgid "New Value" +msgstr "Nuovo valore" + +msgid "Transfer" +msgstr "Trasferisci" + +msgid "Don't save" +msgstr "Non salvare" + +msgid "Discard" +msgstr "Cancella" + +msgid "Click the right mouse button to display the full text." +msgstr "" +"Clicca il pulsante destro del mouse per visualizzare il testo completo." + +msgid "All changes will not be saved" +msgstr "Nessuna modifica verrà salvata." + +msgid "All changes will be discarded." +msgstr "Tutte le modifiche verranno eliminate." + +msgid "Save the selected options." +msgstr "Salvare le opzioni selezionate." + +msgid "Keep the selected options." +msgstr "Mantieni le opzioni selezionate." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Trasferisci le opzioni selezionate nel preset appena selezionato." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Salva le opzioni selezionate in un preset \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Trasferisci le opzioni selezionate nel preset appena selezionato \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "Preset \"%1%\" contiene modifiche non salvate:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"Preset \"%1%\" non compatibile con il nuovo profilo della stampante e " +"contiene modifiche non salvate:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"Preset \"%1%\" non compatibile con il nuovo profilo di processo e contiene " +"modifiche non salvate:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "You have changed some settings of preset \"%1%\". " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"You can save or discard the preset values you have modified." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" + +msgid "You have previously modified your settings." +msgstr "You have previously modified your settings." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" + +msgid "Extruders count" +msgstr "Conteggio estrusori" + +msgid "General" +msgstr "Generale" + +msgid "Capabilities" +msgstr "Caratteristiche" + +msgid "Show all presets (including incompatible)" +msgstr "Mostra tutti i preset (compresi non compatibili)" + +msgid "Select presets to compare" +msgstr "Seleziona i preset da confrontare" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" +"È possibile trasferire al profilo attivo corrente solo perché è stato " +"modificato." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"Trasferisce le opzioni selezionate dal preset di sinistra a quello di " +"destra.\n" +"Nota: i nuovi preset modificati saranno selezionati nelle schede delle " +"impostazioni dopo la chiusura di questa finestra." + +msgid "Transfer values from left to right" +msgstr "Trasferimento dei valori da sinistra a destra" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" +"Se abilitata, questa finestra può essere utilizzata per trasferire i valori " +"selezionati dal preset di sinistra a quello di destra." + +msgid "Add File" +msgstr "Aggiungi file" + +msgid "Set as cover" +msgstr "Impostare come copertina" + +msgid "Cover" +msgstr "Cover" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "Il nome \"%1%\" già esiste." + +msgid "Basic Info" +msgstr "Info di base" + +msgid "Pictures" +msgstr "Immagini" + +msgid "Bill of Materials" +msgstr "Lista materiali" + +msgid "Assembly Guide" +msgstr "Guida al montaggio" + +msgid "Author" +msgstr "Autore" + +msgid "Model Name" +msgstr "Nome modello" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Update" + +msgid "A new version is available" +msgstr "Una nuova versione è disponibile." + +msgid "Configuration update" +msgstr "Aggiornamento di configurazione" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "È disponibile un nuovo pacchetto di configurazione. Vuoi installarlo?" + +msgid "Description:" +msgstr "Descrizione:" + +msgid "Configuration incompatible" +msgstr "Configuration incompatible" + +msgid "the configuration package is incompatible with current application." +msgstr "" +"il pacchetto di configurazione non è compatibile con l'applicazione corrente." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"Pacchetto configurazione non compatibile con l'applicazione corrente.\n" +"%s aggiornerà il pacchetto configurazione per consentire l'avvio " +"dell'applicazione." + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Chiudi %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "" +"Il pacchetto di configurazione non è compatibile con la versione corrente di " +"Snapmaker Orca." + +msgid "Configuration updates" +msgstr "Aggiornamenti di configurazione" + +msgid "No updates available." +msgstr "Nessun aggiornamento disponibile." + +msgid "The configuration is up to date." +msgstr "Configurazione aggiornata." + +msgid "Obj file Import color" +msgstr "Obj file Import color" + +msgid "Specify number of colors:" +msgstr "Specify number of colors:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "The color count should be in range [%d, %d]." + +msgid "Recommended " +msgstr "Recommended " + +msgid "Current filament colors:" +msgstr "Current filament colors:" + +msgid "Quick set:" +msgstr "Quick set:" + +msgid "Color match" +msgstr "Color match" + +msgid "Approximate color matching." +msgstr "Approximate color matching." + +msgid "Append" +msgstr "Append" + +msgid "Add consumable extruder after existing extruders." +msgstr "Add consumable extruder after existing extruders." + +msgid "Reset mapped extruders." +msgstr "Reset mapped extruders." + +msgid "Cluster colors" +msgstr "Cluster colors" + +msgid "Map Filament" +msgstr "Map Filament" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Warning: The count of newly added and \n" +" current extruders exceeds 16." + +msgid "Ramming customization" +msgstr "Personalizzazione del ramming" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"Per Ramming si intende l'estrusione rapida appena prima di un cambio " +"strumento in una stampante MM con estrusore singolo. Il suo scopo è quello " +"di dare una forma corretta all'estremità del filamento scaricato, in modo " +"che non impedisca l'inserimento del nuovo filamento e possa essere " +"reinserito successivamente. Questa fase è importante e i diversi materiali " +"possono richiedere velocità di estrusione diverse per ottenere una buona " +"forma. Per questo motivo, le velocità di estrusione nella fase di ramming " +"sono regolabili.\n" +"\n" +"Si tratta di un'impostazione per esperti: una regolazione errata potrebbe " +"causare inceppamenti, la macinazione del filamento da parte dell'ingranaggio " +"dell'estrusore e così via." + +msgid "Total ramming time" +msgstr "Durata totale di ramming" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "Volume totale di ramming" + +msgid "Ramming line width" +msgstr "Larghezza della linea di Ramming" + +msgid "Ramming line spacing" +msgstr "Spaziatura tra linee di ramming" + +msgid "Auto-Calc" +msgstr "Calcolo automatico" + +msgid "Re-calculate" +msgstr "Ricalcolo" + +msgid "Flushing volumes for filament change" +msgstr "Volumi di spurgo per il cambio filamento" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Orca ricalcolava i volumi di spurgo ogni volta che il colore dei filamenti " +"cambiava. È possibile disabilitare il calcolo automatico nelle preferenze > " +"di Snapmaker Orca" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Volume di spurgo (mm³) per ogni coppia di filamento." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Suggerimento: Volume di spurgo nell'intervallo [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "Il moltiplicatore deve essere compreso nell'intervallo [%.2f, %.2f]." + +msgid "Multiplier" +msgstr "Moltiplicatore" + +msgid "unloaded" +msgstr "scaricato" + +msgid "loaded" +msgstr "caricato" + +msgid "Filament #" +msgstr "Filamento #" + +msgid "From" +msgstr "Da" + +msgid "To" +msgstr "A" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "Plug-in di rete Bambu non rilevato." + +msgid "Click here to download it." +msgstr "Clicca qui per scaricarlo." + +msgid "Login" +msgstr "Login" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "" +"Il pacchetto di configurazione è stato modificato nella precedente Guida " +"alla configurazione" + +msgid "Configuration package changed" +msgstr "Pacchetto di configurazione modificato" + +msgid "Toolbar" +msgstr "Toolbar" + +msgid "Objects list" +msgstr "Elenco oggetti" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Importa geometrie da file STL/STEP/3MF/OBJ/AMF." + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Incolla dagli appunti" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "" +"Mostra/nascondi la finestra di dialogo impostazioni dei dispositivi " +"3Dconnexion" + +msgid "Switch table page" +msgstr "Cambia pagina tabella" + +msgid "Show keyboard shortcuts list" +msgstr "Mostra elenco scorciatoie di tastiera" + +msgid "Global shortcuts" +msgstr "Scorciatoie globali" + +msgid "Rotate View" +msgstr "Ruota vista" + +msgid "Pan View" +msgstr "Vista panoramica" + +msgid "Mouse wheel" +msgstr "Rotella del mouse" + +msgid "Zoom View" +msgstr "Vista Zoom" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Questo orienta automaticamente gli oggetti selezionati o tutti gli oggetti. " +"Se ci sono oggetti selezionati, orienta solo quelli selezionati. Altrimenti, " +"orienterà tutti gli oggetti nel piatto corrente." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Riduci/Espandi barra laterale" + +msgid "⌘+Any arrow" +msgstr "⌘+Freccia qualsiasi" + +msgid "Movement in camera space" +msgstr "Movimento nello spazio della camera" + +msgid "⌥+Left mouse button" +msgstr "⌥+Tasto sinistro mouse" + +msgid "Select a part" +msgstr "Seleziona parte" + +msgid "⌘+Left mouse button" +msgstr "⌘+Tasto sinistro del mouse" + +msgid "Select multiple objects" +msgstr "Seleziona più oggetti" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+qualsiasi freccia" + +msgid "Alt+Left mouse button" +msgstr "Alt+tasto sinistro del mouse" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+Tasto sinistro del mouse" + +msgid "Shift+Left mouse button" +msgstr "Shift+tasto sinistro mouse" + +msgid "Select objects by rectangle" +msgstr "Seleziona oggetti per rettangolo" + +msgid "Arrow Up" +msgstr "Freccia Su" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Sposta selezione 10 mm in direzione Y positiva" + +msgid "Arrow Down" +msgstr "Freccia Giù" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Sposta selezione 10 mm in direzione Y negativa" + +msgid "Arrow Left" +msgstr "Freccia Sinistra" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Sposta selezione 10 mm in direzione X negativa" + +msgid "Arrow Right" +msgstr "Freccia Destra" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Sposta selezione 10 mm in direzione X positiva" + +msgid "Shift+Any arrow" +msgstr "Shift+freccia qualsiasi" + +msgid "Movement step set to 1 mm" +msgstr "Passo movimento impostato a 1 mm" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "Tastiera 1-9: imposta il filamento per l'oggetto/la parte" + +msgid "Camera view - Default" +msgstr "Vista telecamera - Default" + +msgid "Camera view - Top" +msgstr "Vista telecamera - In Alto" + +msgid "Camera view - Bottom" +msgstr "Vista telecamera - Basso" + +msgid "Camera view - Front" +msgstr "Vista telecamera - Fronte" + +msgid "Camera view - Behind" +msgstr "Vista telecamera - Dietro" + +msgid "Camera Angle - Left side" +msgstr "Angolo della camera - Lato sinistro" + +msgid "Camera Angle - Right side" +msgstr "Angolo della camera - Lato destro" + +msgid "Select all objects" +msgstr "Seleziona tutti gli oggetti" + +msgid "Gizmo move" +msgstr "Muovi Gizmo" + +msgid "Gizmo scale" +msgstr "Scala Gizmo" + +msgid "Gizmo rotate" +msgstr "Ruota Gizmo" + +msgid "Gizmo cut" +msgstr "Taglia Gizmo" + +msgid "Gizmo Place face on bed" +msgstr "Gizmo Posiziona faccia sul piano" + +msgid "Gizmo SLA support points" +msgstr "Punti di supporto SLA Gizmo" + +msgid "Gizmo FDM paint-on seam" +msgstr "Gizmo FDM pittura giunzione" + +msgid "Gizmo Text emboss / engrave" +msgstr "Gizmo Testo in rilievo / incisione" + +msgid "Zoom in" +msgstr "Zoom in" + +msgid "Zoom out" +msgstr "Zoom out" + +msgid "Switch between Prepare/Preview" +msgstr "Swtich tra Prepare/Prewview" + +msgid "Plater" +msgstr "Piano" + +msgid "Move: press to snap by 1mm" +msgstr "Sposta: premi per muovere di 1 mm" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Rotella mouse" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Supporto/Pittura a colori: regolare il raggio della penna" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Rotella mouse" + +msgid "Support/Color Painting: adjust section position" +msgstr "Supporto/Pittura a colori: regolare la posizione della sezione" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Rotellina del mouse" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Rotella del mouse" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Imposta il numero estrusore per gli oggetti e le parti" + +msgid "Delete objects, parts, modifiers " +msgstr "Eliminare oggetti, parti, modificatori " + +msgid "Select the object/part and press space to change the name" +msgstr "" +"Seleziona l'oggetto/la parte e premi la barra spaziatrice per cambiare il " +"nome" + +msgid "Mouse click" +msgstr "Clic del mouse" + +msgid "Select the object/part and mouse click to change the name" +msgstr "" +"Seleziona l'oggetto/la parte e fai clic con il mouse per modificare il nome" + +msgid "Objects List" +msgstr "Elenco oggetti" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Cursore di scorrimento verticale - Solleva cursore attivo" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Cursore di scorrimento verticale - Abbassa cursore attivo" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "" +"Cursore di scorrimento orizzontale - Sposta a sinistra il cursore attivo" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Cursore di scorrimento orizzontale - Sposta a destra il cursore attivo" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "On/Off modalità un layer del cursore di scorrimento verticale" + +msgid "On/Off g-code window" +msgstr "Attivazione/disattivazione della finestra g-code" + +msgid "Move slider 5x faster" +msgstr "Sposta il cursore 5 volte più velocemente" + +msgid "Shift+Mouse wheel" +msgstr "Shift+Rotella mouse" + +msgid "Horizontal slider - Move to start position" +msgstr "" + +msgid "Horizontal slider - Move to last position" +msgstr "" + +msgid "Release Note" +msgstr "Note di aggiornamento" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "Versione %s informazioni aggiornate:" + +msgid "Network plug-in update" +msgstr "Aggiornamento del plug-in di rete" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Clicca su OK per aggiornare il plug-in di rete al prossimo avvio di Bambu " +"Studio." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "Disponibile nuovo plug-in di rete (%s). Vuoi installarlo?" + +msgid "New version of Snapmaker Orca" +msgstr "Nuova versione di Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Salta questa versione" + +msgid "Done" +msgstr "Fine" + +msgid "resume" +msgstr "resume" + +msgid "Resume Printing" +msgstr "Resume Printing" + +msgid "Resume Printing(defects acceptable)" +msgstr "Resume Printing (defects acceptable)" + +msgid "Resume Printing(problem solved)" +msgstr "Resume Printing (problem solved)" + +msgid "Stop Printing" +msgstr "Stop Printing" + +msgid "Check Assistant" +msgstr "Check Assistant" + +msgid "Filament Extruded, Continue" +msgstr "Filament Extruded, Continue" + +msgid "Not Extruded Yet, Retry" +msgstr "Not Extruded Yet, Retry" + +msgid "Finished, Continue" +msgstr "Finished, Continue" + +msgid "Load Filament" +msgstr "Carica" + +msgid "Filament Loaded, Resume" +msgstr "Filament Loaded, Resume" + +msgid "View Liveview" +msgstr "View Liveview" + +msgid "Confirm and Update Nozzle" +msgstr "Conferma e aggiorna l'ugello" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "Connessione LAN fallita (invio del file di stampa)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Step 1, conferma che Snapmaker Orca e la tua stampante siano sulla stessa LAN." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Step 2, se l'IP e il codice di accesso riportati di seguito sono diversi dai " +"valori effettivi sulla stampante, correggili." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Codice di accesso" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Dove trovo l'IP e il codice accesso della stampante?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"Passaggio 3: eseguire il ping dell'indirizzo IP per verificare la perdita di " +"pacchetti e la latenza." + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP e codice di accesso verificati! È possibile chiudere la finestra" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "Connessione non riuscita, ricontrolla l'IP e il codice di accesso" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Connessione non riuscita! Se l'IP e il codice di accesso sono corretti, \n" +"Passare al passaggio 3 per la risoluzione dei problemi di rete" + +msgid "Model:" +msgstr "Modello:" + +msgid "Serial:" +msgstr "Seriale:" + +msgid "Version:" +msgstr "Versione:" + +msgid "Update firmware" +msgstr "Aggiorna firmware" + +msgid "Beta version" +msgstr "Versione beta" + +msgid "Latest version" +msgstr "Ultima versione" + +msgid "Updating" +msgstr "Aggiornamento in corso" + +msgid "Updating failed" +msgstr "Aggiornamento fallito" + +msgid "Updating successful" +msgstr "Aggiornamento riuscito" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Sei sicuro di voler aggiornare? Ci vorranno circa 10 minuti. Non spegnere " +"l'alimentazione durante l'aggiornamento della stampante." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"È stato rilevato un aggiornamento importante che deve essere eseguito prima " +"che la stampa possa continuare. Si desidera aggiornare ora? È possibile " +"effettuare l'aggiornamento anche in un secondo momento da \"Aggiorna firmware" +"\"." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"La versione firmware è anomala. Prima di stampare, è necessario eseguire la " +"riparazione e l'aggiornamento. Si desidera aggiornare ora? È possibile " +"eseguire l'aggiornamento anche in un secondo momento sulla stampante o al " +"prossimo avvio di Snapmaker Orca." + +msgid "Extension Board" +msgstr "Scheda di estensione" + +msgid "Saving objects into the 3mf failed." +msgstr "Saving objects into the 3mf failed." + +msgid "Only Windows 10 is supported." +msgstr "È supportato solo Windows 10." + +msgid "Failed to initialize the WinRT library." +msgstr "Impossibile inizializzare la libreria WinRT." + +msgid "Exporting objects" +msgstr "Esportazione oggetti" + +msgid "Failed loading objects." +msgstr "Caricamento oggetti fallito." + +msgid "Repairing object by Windows service" +msgstr "Riparazione oggetto da parte del servizio Windows" + +msgid "Repair failed." +msgstr "Riparazione fallita." + +msgid "Loading repaired objects" +msgstr "Caricamento oggetti riparati" + +msgid "Exporting 3mf file failed" +msgstr "Esportazione del file 3mf non riuscita" + +msgid "Import 3mf file failed" +msgstr "Importazione del file 3mf non riuscita" + +msgid "Repaired 3mf file does not contain any object" +msgstr "Il file 3mf riparato non contiene alcun oggetto." + +msgid "Repaired 3mf file contains more than one object" +msgstr "Il file 3mf riparato contiene più di un oggetto." + +msgid "Repaired 3mf file does not contain any volume" +msgstr "Il file 3mf riparato non contiene alcun volume." + +msgid "Repaired 3mf file contains more than one volume" +msgstr "Il file 3mf riparato contiene più di un volume." + +msgid "Repair finished" +msgstr "Riparazione finita" + +msgid "Repair canceled" +msgstr "Riparazione annullata" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Copia del file %1% su %2% non riuscita: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" +"Controllare le modifiche non salvate prima di aggiornare la configurazione." + +msgid "Configuration package: " +msgstr "Pacchetto di configurazione: " + +msgid " updated to " +msgstr " aggiornato a " + +msgid "Open G-code file:" +msgstr "Apri un file G-code:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Un oggetto ha un livello iniziale vuoto e non può essere stampato. Taglia il " +"fondo o abilita i supporti." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "" +"L'oggetto ha layer vuoti compresi tra %1% e %2% e non può essere stampato." + +#, boost-format +msgid "Object: %1%" +msgstr "Oggetto: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Le parti dell'oggetto a queste altezze potrebbero essere troppo sottili o " +"l'oggetto potrebbe avere una mesh difettosa." + +msgid "No object can be printed. Maybe too small" +msgstr "" +"Non è possibile stampare alcun oggetto. Potrebbe essere troppo piccolo." + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Impossibile generare il G-code per G-code personalizzato non valido.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" +"Controlla il G-code personalizzato o utilizza il G-code personalizzato " +"predefinito." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Genera G-code: layer %1%" + +msgid "Inner wall" +msgstr "Parete interna" + +msgid "Outer wall" +msgstr "Parete esterna" + +msgid "Overhang wall" +msgstr "Parete a sbalzo" + +msgid "Sparse infill" +msgstr "Riempimento" + +msgid "Internal solid infill" +msgstr "Riempimento solido interno" + +msgid "Top surface" +msgstr "Superficie superiore" + +msgid "Bottom surface" +msgstr "Superficie inferiore" + +msgid "Internal Bridge" +msgstr "Ponte interno" + +msgid "Gap infill" +msgstr "Riempimento gap" + +msgid "Support interface" +msgstr "Interfaccia supporto" + +msgid "Support transition" +msgstr "Supporto alla transizione" + +msgid "Multiple" +msgstr "Multiplo" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Impossibile calcolare la larghezza della linea di %1%. Impossibile ottenere " +"il valore \"%2%\" " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Spaziatura non valida fornita a Flow::with_spacing (), controlla l'altezza " +"del livello e la larghezza di estrusione" + +msgid "undefined error" +msgstr "errore non definito" + +msgid "too many files" +msgstr "troppi file" + +msgid "file too large" +msgstr "file troppo grande" + +msgid "unsupported method" +msgstr "metodo non supportato" + +msgid "unsupported encryption" +msgstr "criptaggio non supportato" + +msgid "unsupported feature" +msgstr "caratteristica non supportata" + +msgid "failed finding central directory" +msgstr "directory centrale non trovata" + +msgid "not a ZIP archive" +msgstr "non un archivio ZIP" + +msgid "invalid header or corrupted" +msgstr "intestazione non valida o danneggiata" + +msgid "unsupported multidisk" +msgstr "Il salvataggio su RAID non supportato." + +msgid "decompression failed" +msgstr "decompressione fallita" + +msgid "compression failed" +msgstr "Compressione non riuscita" + +msgid "unexpected decompressed size" +msgstr "dimensione decompressa imprevista" + +msgid "CRC check failed" +msgstr "Controllo CRC non riuscito" + +msgid "unsupported central directory size" +msgstr "dimensione della directory centrale non supportata" + +msgid "allocation failed" +msgstr "allocazione fallita" + +msgid "file open failed" +msgstr "apertura file non riuscita" + +msgid "file create failed" +msgstr "generazione del file non riuscita" + +msgid "file write failed" +msgstr "scrittura file fallita" + +msgid "file read failed" +msgstr "lettura del file non riuscita" + +msgid "file close failed" +msgstr "chiusura del file fallita" + +msgid "file seek failed" +msgstr "ricerca file fallita" + +msgid "file stat failed" +msgstr "statistica file non riuscita" + +msgid "invalid parameter" +msgstr "parametro non valido" + +msgid "invalid filename" +msgstr "nome file non valido" + +msgid "buffer too small" +msgstr "buffer troppo piccolo" + +msgid "internal error" +msgstr "errore interno" + +msgid "file not found" +msgstr "file non trovato" + +msgid "archive too large" +msgstr "Archivio troppo grande" + +msgid "validation failed" +msgstr "convalida non riuscita" + +msgid "write callback failed" +msgstr "scrittura callback fallita" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% è troppo vicino all'area di esclusione, potrebbero verificarsi " +"collisioni durante la stampa." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% è troppo vicino ad altri oggetti e potrebbe causare collisioni." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% è troppo alto e si verificheranno collisioni." + +msgid " is too close to others, there may be collisions when printing." +msgstr "" +" è troppo vicino agli altri; potrebbero verificarsi delle collisioni durante " +"la stampa." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" è troppo vicino all'area di esclusione, potrebbero verificarsi collisioni " +"durante la stampa." + +msgid "Prime Tower" +msgstr "Prime Tower" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " è troppo vicino agli altri e possono verificarsi collisioni.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" +" è troppo vicino a un'area di esclusione e si verificheranno collisioni.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Non è possibile stampare insieme più filamenti con grandi differenze di " +"temperatura. In caso contrario, l'estrusore e il nozzle potrebbero bloccarsi " +"o danneggiarsi durante la stampa." + +msgid "No extrusions under current settings." +msgstr "Nessuna estrusione con le impostazioni attuali." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"La modalità fluida del timelapse non è supportata quando è abilitata la " +"sequenza \"per oggetto\"." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Seleziona la sequenza di stampa \"Per oggetto\" per stampare più oggetti in " +"modalità vaso a spirale." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"La modalità Spirale (vaso) non funziona quando un oggetto contiene più di un " +"materiale." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "L'oggetto %1% supera l'altezza massima del volume di stampa." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"Sebbene l'oggetto %1% rientri nel volume di stampa, il suo ultimo layer " +"supera l'altezza massima." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"È possibile ridurre le dimensioni del modello o modificare le impostazioni " +"di stampa correnti e riprovare." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "Layer ad altezza variabile non è compatibile con i Supporti Organici." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Diametri degli ugelli diversi e diametri di filamento diversi non sono " +"consentiti quando la torre Prime è abilitata." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"Attualmente la Torre di pulitura è supportata solo con l'indirizzamento " +"relativo dell'estrusore (use_relative_e_distances = 1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"La prevenzione delle perdite (ooze prevention) attualmente non è supportata " +"quando è abilitata la torre di priming." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"La torre di spurgo è attualmente supportata solo per le versioni Marlin, " +"RepRap/Sprinter, RepRapFirmware e Repetier G-code." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "La Prime Tower non è supportata nella stampa \"Per oggetto\"." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"La Prime Tower non è supportata quando è attivo Layer adattativi. Richiede " +"che tutti gli oggetti abbiano la stessa altezza layer." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"La Prime Tower richiede che il \"gap supporto\" sia un multiplo dell'altezza " +"del layer." + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" +"La Prime Tower richiede che tutti gli oggetti abbiano la stessa altezza " +"layer." + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"La Prime Tower richiede che tutti gli oggetti siano stampati sullo stesso " +"numero di layers del raft." + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"La Prime Tower richiede che tutti gli oggetti siano elaborati con la stessa " +"altezza layer." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"La Prime Tower è supportata solo se tutti gli oggetti hanno la stessa " +"altezza layer adattativi." + +msgid "Too small line width" +msgstr "Larghezza linea troppo piccola" + +msgid "Too large line width" +msgstr "Larghezza linea troppo grande" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"La Prime Tower richiede che il supporto abbia la stessa altezza layer " +"dell'oggetto." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"Il diametro della punta del supporto organico non deve essere inferiore alla " +"larghezza dell'estrusione del materiale di supporto." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"Il diametro della ramificazione del supporto organico non deve essere minore " +"di 2 volte rispetto alla larghezza dell'estrusione del materiale di supporto." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"Il diametro della ramificazione organica non deve essere inferiore al " +"diametro della punta del supporto ad albero." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Utilizzati supporti forzati ma i supporti non sono abilitati. Abilitare i " +"supporti." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "L'altezza del layer non può superare il diametro del nozzle." + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"L'indirizzamento relativo dell'estrusore richiede la reimpostazione della " +"posizione dell'estrusore ad ogni strato per evitare la perdita di precisione " +"in virgola mobile. Aggiungi \"G92 E0\" a layer_gcode." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"\"G92 E0\" trovato in before_layer_gcode, che è incompatibile con " +"l'indirizzamento assoluto dell'estrusore." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"\"G92 E0\" trovato in layer_gcode, che è incompatibile con l'indirizzamento " +"assoluto dell'estrusore." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Piatto %d: %s non supporta il filamento %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" +"L'impostazione della velocità di jerk troppo bassa potrebbe causare " +"artefatti sulle superfici curve" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"L'impostazione del jerk supera quella massima prevista dalla stampante. " +"(machine_max_jerk_x/machine_max_jerk_y).\n" +"Orca limiterà automaticamente la velocità del jerk per garantire che non " +"superi le capacità della stampante.\n" +"È possibile regolare l'impostazione di jerk massimo nella configurazione " +"della stampante per ottenere velocità più elevate." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"L'impostazione di accelerazione supera quella massima prevista dalla " +"stampante. (machine_max_acceleration_extruding).\n" +"Orca limiterà automaticamente la velocità di accelerazione per garantire che " +"non superi le capacità della stampante.\n" +"È possibile regolare il valore machine_max_acceleration_extruding nella " +"configurazione della stampante per ottenere velocità più elevate." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." + +msgid "Generating skirt & brim" +msgstr "Generazione skirt & brim" + +msgid "Exporting G-code" +msgstr "Esportazione G-code" + +msgid "Generating G-code" +msgstr "Generazione G-code" + +msgid "Failed processing of the filename_format template." +msgstr "Processing of the filename_format template failed." + +msgid "Printable area" +msgstr "Area di stampa" + +msgid "Bed exclude area" +msgstr "Zona piano esclusa" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Area non stampabile nel piano XY. Ad esempio, le stampanti della serie X1 " +"utilizzano l'angolo anteriore sinistro per tagliare il filamento durante il " +"cambio filamento. L'area è espressa come poligono di punti nel seguente " +"formato: \"XxY, XxY, ...\"" + +msgid "Bed custom texture" +msgstr "Texture piano personalizzata" + +msgid "Bed custom model" +msgstr "Modello piano personalizzato" + +msgid "Elephant foot compensation" +msgstr "Compensazione zampa d'elefante" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Questo parametro restringe il primo layer sul piatto di stampa per " +"compensare l'effetto zampa d'elefante." + +msgid "Elephant foot compensation layers" +msgstr "Layer di compensazione del piede elefante" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"Il numero di strati su cui sarà attivo la compensazione del piede degli " +"elefanti. Il primo strato verrà ridotto dal valore di compensazione del " +"piede degli elefanti, quindi gli strati successivi saranno ridotti in modo " +"linearmente ridotto, fino allo strato indicato da questo valore." + +msgid "layers" +msgstr "layer" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Indical'altezza di ogni layer. Un'altezza minore del layer implica una " +"maggiore precisione a fronte di un tempo di stampa più lungo." + +msgid "Printable height" +msgstr "Altezza di stampa" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "" +"Indica l'altezza massima stampabile, limitata dall'altezza dell'area di " +"stampa." + +msgid "Preferred orientation" +msgstr "Orientamento preferito" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" +"Orienta automaticamente gli stl sull'asse Z al momento dell'importazione " +"iniziale" + +msgid "Printer preset names" +msgstr "Nomi dei preset della stampante" + +msgid "Use 3rd-party print host" +msgstr "Utilizzare un host di stampa di terze parti" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" +"Consentire il controllo della stampante di BambuLab attraverso host di " +"stampa di terze parti" + +msgid "Hostname, IP or URL" +msgstr "Nome host, IP o URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca può caricare file di G-code su un host di stampa. Questo campo " +"deve contenere il nome dell'host, l'indirizzo IP o l'URL dell'istanza " +"dell'host di stampa. L'host di stampa dietro HAProxy con l'autenticazione di " +"base abilitata è accessibile inserendo il nome utente e la password nell'URL " +"nel seguente formato: https://username:password@your-octopi-address/" + +msgid "Device UI" +msgstr "Interfaccia utente del dispositivo" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Specificare l'URL dell'interfaccia utente del dispositivo se non corrisponde " +"a print_host" + +msgid "API Key / Password" +msgstr "Chiave API / Password" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca può caricare file G-code su un host di stampa. Questo campo deve " +"contenere la chiave API o la password richiesta per l'autenticazione." + +msgid "Name of the printer" +msgstr "Nome della stampante" + +msgid "HTTPS CA File" +msgstr "File CA HTTPS" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"È possibile specificare un file di certificato CA personalizzato per le " +"connessioni HTTPS di OctoPrint, in formato crt/pem. Se lasciato vuoto, viene " +"utilizzato l'archivio di certificati CA predefinito del sistema operativo." + +msgid "User" +msgstr "Utente" + +msgid "Password" +msgstr "Password" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Ignora i controlli di revoca dei certificati HTTPS" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ignora i controlli di revoca dei certificati HTTPS in caso di punti di " +"distribuzione mancanti o offline. Si potrebbe voler abilitare questa opzione " +"per i certificati autofirmati se la connessione fallisce." + +msgid "Names of presets related to the physical printer" +msgstr "Nomi dei preset relativi alla stampante" + +msgid "Authorization Type" +msgstr "Tipo di autorizzazione" + +msgid "API key" +msgstr "Chiave API" + +msgid "HTTP digest" +msgstr "HTTP digest" + +msgid "Avoid crossing wall" +msgstr "Evita di attraversare le pareti" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Devia ed evita di attraversare la parete che potrebbe causare la formazione " +"di blob sulla superficie." + +msgid "Avoid crossing wall - Max detour length" +msgstr "Evitare di attraversare le pareti - Lunghezza massima della deviazione" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Distanza massima di deviazione per evitare di attraversare la parete: la " +"stampante non eseguirà alcuna deviazione se la distanza di deviazione è " +"maggiore di questo valore. La lunghezza della deviazione può essere " +"specificata come valore assoluto o come percentuale (ad esempio 50%) di uno " +"spostamento. Un valore pari a 0 lo disabiliterà." + +msgid "mm or %" +msgstr "mm o %" + +msgid "Other layers" +msgstr "Altri layer" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Indica la temperatura del piano dopo il primo layer. Il valore 0 significa " +"che il filamento non supporta la stampa su piatto Cool Plate." + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Indica la temperatura del piano dopo il primo layer. Il valore 0 significa " +"che il filamento non supporta la stampa su piatto Engineering." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Indica la temperatura del piano dopo il primo layer. Il valore 0 significa " +"che il filamento non supporta la stampa su piatto High Temp." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Indica la temperatura del piano dopo il primo layer. Il valore 0 significa " +"che il filamento non supporta la stampa su piatto Textured PEI." + +msgid "Initial layer" +msgstr "Primo layer" + +msgid "Initial layer bed temperature" +msgstr "Temperatura del piano per il primo layer" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Indica la temperatura del piano del primo layer. Un valore pari a 0 indica " +"che il filamento non supporta la stampa sul piatto Cool Plate." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Indica la temperatura del piano del primo layer. Un valore pari a 0 indica " +"che il filamento non supporta la stampa sul piatto Engineering." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Indica la temperatura del piano del primo layer. Un valore pari a 0 indica " +"che il filamento non supporta la stampa sul piatto High Temp." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Indica la temperatura del piano del primo layer. Il valore 0 indica che il " +"filamento non è supportato sul piatto Textured PEI." + +msgid "Bed types supported by the printer" +msgstr "Tipi di piatti supportati dalla stampante" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "Engineering Plate" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "Sequenza di stampa del primo strato" + +msgid "Other layers print sequence" +msgstr "Other layers print sequence" + +msgid "The number of other layers print sequence" +msgstr "The number of other layers print sequence" + +msgid "Other layers filament sequence" +msgstr "Other layers filament sequence" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "" +"Questo G-code viene inserito ad ogni cambio layer prima del sollevamento z." + +msgid "Bottom shell layers" +msgstr "Layer guscio inferiore" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Rappresenta il numero di layer solidi del guscio inferiore, incluso quello " +"della superficie inferiore. Se lo spessore calcolato da questo valore è più " +"sottile dello spessore del guscio inferiore, i layer del guscio inferiore " +"verranno aumentati." + +msgid "Bottom shell thickness" +msgstr "Spessore del guscio inferiore" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"Il numero di layers solidi inferiori aumenta durante l'elaborazione se lo " +"spessore calcolato dei layers del guscio inferiore è più sottile di questo " +"valore. Questo può evitare di avere un guscio troppo sottile quando " +"l'altezza layer è ridotta. 0 significa che questa impostazione è " +"disabilitata e lo spessore del guscio inferiore è determinato semplicemente " +"dal numero di layers del guscio inferiore." + +msgid "Apply gap fill" +msgstr "Applicare il riempimento degli spazi vuoti" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"Abilita il riempimento degli spazi vuoti per le superfici selezionate. La " +"lunghezza minima degli spazi vuoti che verranno riempiti può essere " +"controllata dall'opzione Filtra piccoli spazi vuoti di seguito.\n" +"\n" +"Opzioni:\n" +"1. Ovunque: applica il riempimento degli spazi vuoti alle superfici solide " +"superiori, inferiori e interne\n" +"2. Superfici superiore e inferiore: applica il riempimento degli spazi vuoti " +"solo alle superfici superiore e inferiore\n" +"3. Da nessuna parte: disabilita il riempimento degli spazi vuoti\n" + +msgid "Everywhere" +msgstr "Ovunque" + +msgid "Top and bottom surfaces" +msgstr "Superfici superiore e inferiore" + +msgid "Nowhere" +msgstr "Da nessuna parte" + +msgid "Force cooling for overhang and bridge" +msgstr "Forzare il raffreddamento per sbalzi e ponti" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Abilita questa opzione per ottimizzare la velocità della ventola di " +"raffreddamento degli oggetti per sporgenze e ponti per ottenere un " +"raffreddamento migliore." + +msgid "Fan speed for overhang" +msgstr "Velocità della ventola per le sporgenze" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Force part cooling fan to be this speed when printing bridges or overhang " +"walls which have a large overhang degree. Forcing cooling for overhangs and " +"bridges can achieve better quality for these parts." + +msgid "Cooling overhang threshold" +msgstr "Soglia di sbalzo per il raffreddamento" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Forza la ventola di raffreddamento a una velocità specifica quando il grado " +"di sporgenza della parte stampata supera questo valore. Questo valore è " +"espresso in percentuale e indica la larghezza della linea senza il supporto " +"dei layer. 0%% significa forzare il raffreddamento per tutta la parete " +"esterna, indipendentemente dal grado di sporgenza." + +msgid "Bridge infill direction" +msgstr "Direzione di riempimento del ponte" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Sovrascrivere l'angolo del Bridge. Il valore 0 significa che l'angolo di " +"collegamento verrà calcolato automaticamente. Altrimenti l'angolo fornito " +"verrà utilizzato per i Bridge esterni. Usa 180° per un angolo zero." + +msgid "Bridge density" +msgstr "Densità del bridge" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Densità di ponti esterni. 100% significa solido ponte. L'impostazione " +"predefinita è al 100%." + +msgid "Bridge flow ratio" +msgstr "Flusso del Bridge" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Diminuire leggermente questo valore (ad esempio 0.9) per ridurre la quantità " +"di materiale per il ponte e migliorare l'abbassamento dello stesso" + +msgid "Internal bridge flow ratio" +msgstr "Rapporto Flusso del bridge interno" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"Questo valore governa lo spessore dello strato del bridge interno. Questo è " +"il primo strato sopra il riempimento. Riduci leggermente questo valore (ad " +"esempio 0.9) per migliorare la qualità della superficie sopra il riempimento." + +msgid "Top surface flow ratio" +msgstr "Rapporto di portata superficiale superiore" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Questo fattore influisce sulla quantità di materiale per il riempimento " +"solido superiore. Puoi diminuirlo leggermente per avere una finitura " +"superficiale liscia" + +msgid "Bottom surface flow ratio" +msgstr "Rapporto di flusso della superficie inferiore" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" +"Questo fattore influisce sulla quantità di materiale per il riempimento " +"solido inferiore" + +msgid "Precise wall" +msgstr "Parete precisa" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"Migliora la precisione del guscio regolando lo spaziamento della parete " +"esterna. Ciò migliora anche la coerenza dello strato.\n" +"Nota: Questa impostazione avrà effetto solo se la sequenza della parete è " +"configurata su Interno-Esterno." + +msgid "Only one wall on top surfaces" +msgstr "Solo una parete sulle superfici superiori" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Usa solo una parete su superfici piane, per dare più spazio alla trama " +"riempimento superiore" + +msgid "One wall threshold" +msgstr "Soglia a una parete" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Se una superficie superiore deve essere stampata ed è parzialmente coperta " +"da un altro strato, non verrà considerata in un livello superiore in cui la " +"sua larghezza è inferiore a questo valore. Questo può essere utile per non " +"lasciare che il \"un perimetro in cima\" si attivi su una superficie che " +"dovrebbe essere coperta solo da perimetri. Questo valore può essere un mm o " +"un % of della larghezza di estrusione del perimetro.\n" +"Attenzione: se abilitato, è possibile creare artefatti se si hanno alcune " +"caratteristiche sottili sul livello successivo, come le lettere. Impostare " +"questa impostazione su 0 per rimuovere questi artefatti." + +msgid "Only one wall on first layer" +msgstr "Solo un perimetro sul primo layer" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Utilizzare un solo muro sul primo strato, per dare più spazio al modello di " +"riempimento inferiore" + +msgid "Extra perimeters on overhangs" +msgstr "Perimetri aggiuntivi sulle sporgenze (sperimentale)" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Creare percorsi perimetrali aggiuntivi su strapiombi ripidi e aree in cui i " +"ponti non possono essere ancorati. " + +msgid "Reverse on odd" +msgstr "Retromarcia su dispari" + +msgid "Overhang reversal" +msgstr "Inversione di sbalzo" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"Estrudere i perimetri che hanno una parte su una sporgenza in direzione " +"inversa su layer dispari. Questo schema alternato può migliorare " +"drasticamente gli strapiombi ripidi.\n" +"\n" +"Questa impostazione può anche contribuire a ridurre la deformazione della " +"parte grazie alla riduzione delle sollecitazioni nelle pareti della parte." + +msgid "Reverse only internal perimeters" +msgstr "Inversione solo perimetri interni" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"Applicare la logica dei perimetri inversi solo ai perimetri interni. \n" +"\n" +"Questa impostazione riduce notevolmente le sollecitazioni delle parti poiché " +"ora sono distribuite in direzioni alternate. Ciò dovrebbe ridurre la " +"deformazione delle parti mantenendo al contempo la qualità delle pareti " +"esterne. Questa caratteristica può essere molto utile per materiali soggetti " +"a deformazione, come ABS/ASA, e anche per filamenti elastici, come TPU e " +"Silk PLA. Può anche aiutare a ridurre la deformazione sulle regioni " +"fluttuanti sui supporti.\n" +"\n" +"Affinché questa impostazione sia la più efficace, si consiglia di impostare " +"la soglia inversa su 0 in modo che tutte le pareti interne vengano stampate " +"in direzioni alternate sugli strati dispari, indipendentemente dal loro " +"grado di sporgenza." + +msgid "Bridge counterbore holes" +msgstr "Fori per controbolo del ponte" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"Questa opzione consente di creare ponti per i fori di lamatura, " +"consentendone la stampa senza supporto. Le modalità disponibili includono:\n" +"1. Nessuno: non viene creato alcun bridge.\n" +"2. Parzialmente collegato: solo una parte dell'area non supportata verrà " +"colmata.\n" +"3. Strato sacrificale: viene creato un livello ponte sacrificale completo." + +msgid "Partially bridged" +msgstr "Parzialmente ponticellato" + +msgid "Sacrificial layer" +msgstr "Strato sacrificale" + +msgid "Reverse threshold" +msgstr "Soglia inversa" + +msgid "Overhang reversal threshold" +msgstr "Soglia di inversione a sbalzo" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Numero di mm di sbalzo necessario affinché l'inversione sia considerata " +"utile. Può essere un % o della larghezza del perimetro.\n" +"Il valore 0 abilita l'inversione su tutti i livelli dispari a prescindere." + +msgid "Classic mode" +msgstr "Modalità classica" + +msgid "Enable this option to use classic mode" +msgstr "Abilita questa opzione per utilizzare la modalità classica" + +msgid "Slow down for overhang" +msgstr "Rallenta in caso di sporgenze" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Abilita questa opzione per rallentare quando la stampa presenta sporgenze. " +"Le velocità per le diverse percentuali di sporgenza sono indicate di seguito." + +msgid "Slow down for curled perimeters" +msgstr "Rallenta per perimetri arricciati" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Attivare questa opzione per rallentare la stampa nelle aree in cui possono " +"esistere potenziali perimetri arricciati" + +msgid "mm/s or %" +msgstr "mm/s o %" + +msgid "External" +msgstr "Esterno" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Indica la velocità per i bridge e le pareti completamente a sbalzo." + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "Interno" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Velocità del ponte interno. Se il valore è espresso in percentuale, verrà " +"calcolato in base al bridge_speed. Il valore predefinito è 150%." + +msgid "Brim width" +msgstr "Larghezza brim" + +msgid "Distance from model to the outermost brim line" +msgstr "Questa è la distanza tra il modello e la linea del brim più esterno." + +msgid "Brim type" +msgstr "Tipo di brim" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Questo controlla la generazione del brim esterno e/o interno dei modelli. " +"Auto significa che la larghezza del brim viene analizzata e calcolata " +"automaticamente." + +msgid "Brim-object gap" +msgstr "Distanza Brim-Oggetto " + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Questo crea un gap tra la linea interna del brim e l'oggetto per rendere il " +"brim più facile da rimuovere" + +msgid "Brim ears" +msgstr "Brim a Orecchie" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "Disegna il brim solo sugli spigoli vivi del modello." + +msgid "Brim ear max angle" +msgstr "Angolo massimo del Brim a Orecchie" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Angolo massimo per far apparire un Brim a orecchie \n" +"Se impostato su 0, non verrà creato alcun Brim. \n" +"Se impostato su ~180, il brim verrà creato su tutto tranne che sulle sezioni " +"diritte." + +msgid "Brim ear detection radius" +msgstr "Raggio di rilevamento del Brim a Orecchie" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"La geometria verrà decimata prima di rilevare gli angoli acuti. Questo " +"parametro indica la lunghezza minima dello scostamento per la decimazione.\n" +"0 per disattivare" + +msgid "Compatible machine" +msgstr "Macchina compatibile" + +msgid "upward compatible machine" +msgstr "macchina compatibile con versioni successive" + +msgid "Compatible machine condition" +msgstr "Condizione della macchina compatibile" + +msgid "Compatible process profiles" +msgstr "Profili di processo compatibili" + +msgid "Compatible process profiles condition" +msgstr "Condizione dei profili di processo compatibili" + +msgid "Print sequence, layer by layer or object by object" +msgstr "" +"Questo determina la sequenza di stampa, che consente di stampare layer per " +"layer o oggetto per oggetto." + +msgid "By layer" +msgstr "Per layer" + +msgid "By object" +msgstr "Per oggetto" + +msgid "Intra-layer order" +msgstr "Ordine intra-layer" + +msgid "Print order within a single layer" +msgstr "Ordine di stampa all'interno di un singolo livello" + +msgid "As object list" +msgstr "Come elenco di oggetti" + +msgid "Slow printing down for better layer cooling" +msgstr "Rallenta stampa per un migliore raffreddamento layers" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Abilita questa opzione per rallentare la velocità di stampa in modo che il " +"tempo finale del layer non sia inferiore alla soglia di tempo nel valore " +"\"Soglia di velocità massima della ventola\", in modo che il layer possa " +"essere raffreddato più a lungo.\n" +"Ciò può migliorare la qualità per i piccoli dettagli" + +msgid "Normal printing" +msgstr "Stampa normale" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"Indica l'accelerazione predefinita sia per la stampa normale che per la " +"corsa dopo il primo layer." + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Profilo filamento predefinito" + +msgid "Default filament profile when switch to this machine profile" +msgstr "" +"Profilo filamento predefinito quando si passa a questo profilo macchina" + +msgid "Default process profile" +msgstr "Profilo di processo predefinito" + +msgid "Default process profile when switch to this machine profile" +msgstr "" +"Profilo di processo predefinito quando si passa a questo profilo macchina" + +msgid "Activate air filtration" +msgstr "Attivare la filtrazione dell'aria" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" +"Attivare per una migliore filtrazione dell'aria. Comando G-code: M106 P3 " +"S(0-255)" + +msgid "Fan speed" +msgstr "Velocità ventola" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Velocità della ventola di scarico durante la stampa. Questa velocità " +"sovrascriverà la velocità nel gcode personalizzato del filamento" + +msgid "Speed of exhaust fan after printing completes" +msgstr "Velocità della ventola di estrazione al termine della stampa" + +msgid "No cooling for the first" +msgstr "Nessun raffreddamento per il primo" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Spegnere tutte le ventole di raffreddamento per i primi layer. Questo può " +"servire a migliorare l'adesione del piatto di stampa." + +msgid "Don't support bridges" +msgstr "Non supportare i bridge" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"This disables supporting bridges, which decreases the amount of support " +"required. Bridges can usually be printed directly without support over a " +"reasonable distance." + +msgid "Thick bridges" +msgstr "Bridge spessi" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Se abilitato, i bridge sono più affidabili e possono colmare distanze " +"maggiori, ma potrebbero avere un aspetto peggiore. Se disattivato, avrannoun " +"aspetto migliore ma sono affidabili solo per le distanze ridotte." + +msgid "Thick internal bridges" +msgstr "Bridge interni spessi" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"Se abilitato, verranno utilizzati bridge interni spessi. Di solito si " +"consiglia di attivare questa funzione. Tuttavia, considera di disattivarlo " +"se stai utilizzando ugelli di grandi dimensioni." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "Non filtrare i piccoli ponti interni (beta)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"Questa opzione può contribuire a ridurre l'effetto 'pillowing' sulle " +"superfici superiori nei modelli fortemente inclinati o curvi.\n" +"\n" +"\n" +"Per impostazione predefinita, i piccoli bridge interni vengono filtrati e il " +"riempimento solido interno viene stampato direttamente sul riempimento." +"Questo metodo funziona bene nella maggior parte dei casi, velocizzando la " +"stampa senza compromettere troppo la qualità della superficie superiore.\n" +"\n" +"Tuttavia, in modelli fortemente inclinati o curvi, soprattutto se si " +"utilizza una densità di riempimento troppo bassa, potrebbe comportare " +"l'arricciamento del riempimento solido non supportato, causando il " +"pillowing.\n" +"\n" +"Abilitando questa opzione, lo strato del bridge interno verrà stampato su un " +"riempimento solido interno leggermente non supportato. Le opzioni " +"sottostanti controllano la quantità di filtraggio, ovvero la quantità di " +"bridge interni creati.\n" +"\n" +"Disabilitato - Disabilita questa opzione. Indica il comportamento " +"predefinito e funziona bene nella maggior parte dei casi.\n" +"\n" +"Filtro limitato - Crea bridge interni su superfici fortemente inclinate, " +"evitando di creare bridge interni non necessari. Funziona bene per la " +"maggior parte dei modelli difficili.\n" +"\n" +"Nessun filtraggio - Crea bridge interni su ogni potenziale sporgenza " +"interna. Questa opzione è utile per i modelli con superficie superiore " +"fortemente inclinata. Tuttavia, nella maggior parte dei casi crea troppi " +"bridge non necessari." + +msgid "Disabled" +msgstr "Disabilitato" + +msgid "Limited filtering" +msgstr "Filtro limitato" + +msgid "No filtering" +msgstr "Nessun filtraggio" + +msgid "Max bridge length" +msgstr "Lunghezza massima Bridge" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Questa è la lunghezza massima dei ponti che non necessitano di supporto. " +"Impostalo su 0 se desideri che tutti i bridge siano supportati e impostalo " +"su un valore molto grande se non vuoi che nessun bridge sia supportato." + +msgid "End G-code" +msgstr "G-code finale" + +msgid "End G-code when finish the whole printing" +msgstr "Aggiungi G-code quando si termina l'intera stampa." + +msgid "Between Object Gcode" +msgstr "Tra Gcode oggetto" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Inserire Gcode tra gli oggetti. Questo parametro avrà effetto solo quando si " +"stampano i modelli oggetto per oggetto" + +msgid "End G-code when finish the printing of this filament" +msgstr "Aggiungi G-code quando si termina la stampa di questo filamento." + +msgid "Ensure vertical shell thickness" +msgstr "Garantisci spessore verticale del guscio" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"Aggiunge un riempimento solido in prossimità di superfici inclinate per " +"garantire lo spessore verticale del guscio (layers solidi superiori e " +"inferiori)\n" +"Nessuno: Non viene aggiunto alcun riempimento solido. Attenzione: utilizzare " +"questa opzione con precauzione se il modello presenta superfici inclinate\n" +"Solo Critico: Evitare l'aggiunta di riempimenti solidi per le pareti\n" +"Moderato: Aggiungere il riempimento solido solo per le superfici fortemente " +"inclinate.\n" +"Tutto: aggiunge un riempimento solido per tutte le superfici inclinate " +"idonee\n" +"Il valore predefinito è Tutto." + +msgid "Critical Only" +msgstr "Solo Critico" + +msgid "Moderate" +msgstr "Moderato" + +msgid "Top surface pattern" +msgstr "Trama superfice superiore" + +msgid "Line pattern of top surface infill" +msgstr "" +"Questo è la Trama lineare per il riempimento della superficie superiore." + +msgid "Concentric" +msgstr "Concentrico" + +msgid "Rectilinear" +msgstr "Rettilineo" + +msgid "Monotonic" +msgstr "Monotonico" + +msgid "Monotonic line" +msgstr "Linea monotonica" + +msgid "Aligned Rectilinear" +msgstr "Rettilineo allineato" + +msgid "Hilbert Curve" +msgstr "Curva di Hilbert" + +msgid "Archimedean Chords" +msgstr "Corde di Archimede" + +msgid "Octagram Spiral" +msgstr "Spirale a Ottogramma" + +msgid "Bottom surface pattern" +msgstr "Trama superficie inferiore" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "" +"Questo è la trama lineare del riempimento della superficie inferiore, " +"escluso il riempimento del ponte." + +msgid "Internal solid infill pattern" +msgstr "Schema di riempimento solido interno" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"Modello di linea del riempimento solido interno. Se l'opzione Rileva " +"riempimento solido interno Nattow è abilitata, il motivo concentrico verrà " +"utilizzato per l'area piccola." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Larghezza della linea della parete esterna. Se espresso come %, verrà " +"calcolato sul diametro del nozzle." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Indica la velocità di stampa per le pareti esterne dei pezzi. Queste vengono " +"generalmente stampate più lentamente delle pareti interne per ottenere una " +"qualità superiore." + +msgid "Small perimeters" +msgstr "Perimetri piccoli" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"Questa impostazione separata influenzerà la velocità dei perimetri con " +"raggio <= small_perimeter_threshold (di solito fori). Se espresso in " +"percentuale (ad esempio: 80%) verrà calcolato sull'impostazione della " +"velocità della parete esterna di cui sopra. Impostare su zero per auto." + +msgid "Small perimeters threshold" +msgstr "Soglia perimetrale ridotta" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"In questo modo viene impostata la soglia per la lunghezza del perimetro " +"ridotta. La soglia predefinita è 0 mm" + +msgid "Walls printing order" +msgstr "Ordine Stampa Pareti" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"Sequenza di stampa delle pareti interne (interne) ed esterne (esterne). \n" +"\n" +"Utilizzare Interno/Esterno per le migliori sporgenze. Questo perché le " +"pareti sporgenti possono aderire a un perimetro vicino durante la stampa. " +"Tuttavia, questa opzione comporta una qualità della superficie leggermente " +"ridotta poiché il perimetro esterno viene deformato dall'essere schiacciato " +"sul perimetro interno.\n" +"\n" +"Utilizzare Interno/Esterno/Interno per ottenere la migliore finitura " +"superficiale esterna e precisione dimensionale poiché la parete esterna " +"viene stampata indisturbata da un perimetro interno. Tuttavia, le " +"prestazioni di sporgenza si ridurranno in quanto non c'è un perimetro " +"interno contro cui stampare la parete esterna. Questa opzione richiede un " +"minimo di 3 pareti per essere efficace in quanto stampa prima le pareti " +"interne dal 3° perimetro in poi, poi il perimetro esterno e, infine, il " +"primo perimetro interno. Nella maggior parte dei casi, questa opzione è " +"consigliata rispetto all'opzione Esterno/Interno. \n" +"\n" +"Utilizzare Esterno/Interno per ottenere la stessa qualità della parete " +"esterna e gli stessi vantaggi di precisione dimensionale dell'opzione " +"Interno/Esterno/Interno. Tuttavia, le giunzioni z appariranno meno coerenti " +"quando la prima estrusione di un nuovo livello inizia su una superficie " +"visibile.\n" +" " + +msgid "Inner/Outer" +msgstr "Interna/Esterna" + +msgid "Outer/Inner" +msgstr "Esterna/Interna" + +msgid "Inner/Outer/Inner" +msgstr "Interna/Esterna/Interna" + +msgid "Print infill first" +msgstr "Stampa prima il riempimento" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" + +msgid "Wall loop direction" +msgstr "Direzione del loop del muro" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"La direzione in cui vengono estrusi i loop del muro quando si guarda verso " +"il basso dall'alto.\n" +"\n" +"Per impostazione predefinita, tutti i muri vengono estrusi in senso " +"antiorario, a meno che non sia abilitata l'opzione Inverti su dispari. " +"Impostando questa opzione su qualsiasi opzione diversa da Auto si forzerà la " +"direzione del muro indipendentemente dall'inversione su dispari.\n" +"\n" +"Questa opzione sarà disabilitata se è abilitata la modalità vaso sprial." + +msgid "Counter clockwise" +msgstr "Antiorario" + +msgid "Clockwise" +msgstr "In senso orario" + +msgid "Height to rod" +msgstr "Altezza asta" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Distanza dalla punta del nozzle all'asta inferiore. Utilizzato per evitare " +"le collisioni nella stampa di oggetto per oggetto." + +msgid "Height to lid" +msgstr "Altezza dal coperchio" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Distanza dalla punta del nozzle al coperchio. Utilizzato per evitare le " +"collisioni nella stampa oggetto per oggetto." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Raggio di sicurezza attorno all'estrusore: utilizzato per evitare collisioni " +"nella stampa per oggetto." + +msgid "Nozzle height" +msgstr "Altezza nozzle" + +msgid "The height of nozzle tip." +msgstr "L'altezza punta del nozzle." + +msgid "Bed mesh min" +msgstr "Maglia del letto min" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Questa opzione imposta il punto minimo per l'area della mesh del letto " +"consentita. A causa dell'offset XY della sonda, la maggior parte delle " +"stampanti non è in grado di sondare l'intero letto. Per garantire che il " +"punto della sonda non esca dall'area del letto, i punti minimo e massimo " +"della rete del letto devono essere impostati in modo appropriato. Snapmaker Orca " +"garantisce che i valori adaptive_bed_mesh_min/adaptive_bed_mesh_max non " +"superino questi punti min/max. Queste informazioni possono in genere essere " +"ottenute dal produttore della stampante. L'impostazione predefinita è " +"(-99999, -99999), il che significa che non ci sono limiti, consentendo così " +"il rilevamento su tutto il letto." + +msgid "Bed mesh max" +msgstr "Maglia letto max" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Questa opzione imposta il punto massimo per l'area della mesh del letto " +"consentita. A causa dell'offset XY della sonda, la maggior parte delle " +"stampanti non è in grado di sondare l'intero letto. Per garantire che il " +"punto della sonda non esca dall'area del letto, i punti minimo e massimo " +"della rete del letto devono essere impostati in modo appropriato. Snapmaker Orca " +"garantisce che i valori adaptive_bed_mesh_min/adaptive_bed_mesh_max non " +"superino questi punti min/max. Queste informazioni possono in genere essere " +"ottenute dal produttore della stampante. L'impostazione predefinita è " +"(99999, 99999), il che significa che non ci sono limiti, consentendo così di " +"sondare l'intero letto." + +msgid "Probe point distance" +msgstr "Distanza del punto della sonda" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"Questa opzione imposta la distanza preferita tra i punti della sonda " +"(dimensione della griglia) per le direzioni X e Y, con il valore di default " +"di 50 mm sia per X che per Y." + +msgid "Mesh margin" +msgstr "Margine mesh" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" +"Questa opzione determina la distanza aggiuntiva in base alla quale l'area " +"della mesh del letto adattivo deve essere espansa nelle direzioni XY." + +msgid "Extruder Color" +msgstr "Colore estrusore" + +msgid "Only used as a visual help on UI" +msgstr "Utilizzato solo come aiuto visivo per l'interfaccia utente" + +msgid "Extruder offset" +msgstr "Offset estrusore" + +msgid "Flow ratio" +msgstr "Rapporto di flusso" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"Il materiale può subire variazioni volumetriche dopo il passaggio dallo " +"stato fuso a quello cristallino. Questa impostazione modifica in modo " +"proporzionale tutti i flussi di estrusione di questo filamento in G-code. " +"L'intervallo di valori raccomandato è compreso tra 0,95 e 1,05. È possibile " +"regolare questo valore per ottenere una superficie piatta se si verifica una " +"leggera sovra-estrusione o sotto-estrusione." + +msgid "Enable pressure advance" +msgstr "Abilita l'avanzamento della pressione" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Abilita l'avanzamento della pressione, il risultato della calibrazione " +"automatica verrà sovrascritto una volta abilitato." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" +"Anticipo di pressione (Klipper) AKA Fattore di avanzamento lineare (Marlin)" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"Larghezza di linea predefinita se le altre larghezze di linea sono impostate " +"su 0. Se espresso come %, verrà calcolato sul diametro del nozzle." + +msgid "Keep fan always on" +msgstr "Mantieni la ventola sempre accesa" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Se si attiva questa impostazione, la ventola di raffreddamento non si " +"arresterà mai del tutto, ma funzionerà almeno alla velocità minima per " +"ridurre la frequenza di avvio e arresto." + +msgid "Don't slow down outer walls" +msgstr "" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "Layer time" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"La ventola di raffreddamento parziale verrà attivata per i layer in cui il " +"tempo stimato è inferiore a questo valore. La velocità della ventola viene " +"interpolata tra la velocità minima e massima della ventola in base al tempo " +"di stampa a layer." + +msgid "Default color" +msgstr "Colore predefinito" + +msgid "Default filament color" +msgstr "Colore predefinito del filamento" + +msgid "Filament notes" +msgstr "Note filamento" + +msgid "You can put your notes regarding the filament here." +msgstr "È possibile inserire qui le note riguardanti il filamento." + +msgid "Required nozzle HRC" +msgstr "Necessita nozzle HRC" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"HRC minimo del nozzle richiesto per stampare il filamento. Un valore pari a " +"0 significa che non viene controllato l'HRC del nozzle." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Questa indica il volume del filamento che può essere fuso ed estruso al " +"secondo. La velocità di stampa è limitata dalla velocità volumetrica " +"massima, in caso di impostazione della velocità troppo alta e irragionevole. " +"Questo valore non può essere zero." + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Durata caricamento filamento" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Tempo di caricamento del nuovo filamento quando si cambia filamento, solo a " +"fini statistici." + +msgid "Filament unload time" +msgstr "Durata scaricamento filamento" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Tempo di scarico vecchio filamento quando si cambia filamento, solo a fini " +"statistici." + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Il diametro del filamento viene utilizzato per calcolare le variabili di " +"estrusione nel G-code, quindi è importante che sia accurato e preciso." + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "Restringimento" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Inserisci la percentuale di restringimento che il filamento otterrà dopo il " +"raffreddamento (94% if misuri 94 mm invece di 100 mm). La parte verrà " +"scalata in xy per compensare. Viene preso in considerazione solo il " +"filamento utilizzato per il perimetro.\n" +"Assicurarsi di lasciare uno spazio sufficiente tra gli oggetti, poiché " +"questa compensazione viene eseguita dopo i controlli." + +msgid "Loading speed" +msgstr "Velocità di caricamento" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Velocità utilizzata per caricare il filamento sulla torre di pulitura." + +msgid "Loading speed at the start" +msgstr "Velocità iniziale di caricamento" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Velocità utilizzata all'inizio della fase di caricamento." + +msgid "Unloading speed" +msgstr "Velocità di scaricamento" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Velocità usata per scaricare il filamento sulla torre di pulitura (non " +"influisce sulla parte iniziale dello scaricamento dopo il ramming)." + +msgid "Unloading speed at the start" +msgstr "Velocità iniziale di scaricamento" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Velocità utilizzata per scaricare la punta del filamento immediatamente dopo " +"il ramming." + +msgid "Delay after unloading" +msgstr "Ritardo dopo lo scarico" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Tempo di attesa dopo lo scarico del filamento. Può aiutare ad ottenere cambi " +"affidabili con materiali flessibili che potrebbero richiedere più tempo per " +"tornare alle dimensioni originali." + +msgid "Number of cooling moves" +msgstr "Numero di movimenti di raffreddamento" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"Il filamento è raffreddato venendo spostato avanti e indietro nei tubi di " +"raffreddamento. Specificare il numero desiderato di questi movimenti." + +msgid "Speed of the first cooling move" +msgstr "Velocità del primo movimento di raffreddamento" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "" +"I movimenti di raffreddamento accelerano gradualmente partendo da questa " +"velocità." + +msgid "Minimal purge on wipe tower" +msgstr "Spurgo minimo sulla torre di pulitura" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"Dopo un cambio di strumento, l'esatta posizione del filamento appena " +"caricato dentro l'ugello potrebbe essere sconosciuta, e la pressione del " +"filamento probabilmente non è ancora stabile. Prima di spurgare la testina " +"di stampa nel riempimento o in un oggetto sacrificale, Snapmaker Orca " +"posizionerà questo materiale in una torre di pulitura al fine di ottenere " +"una successiva estrusione affidabile su oggetto sacrificale o riempimento." + +msgid "Speed of the last cooling move" +msgstr "Velocità dell'ultimo movimento di raffreddamento" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "" +"I movimenti di raffreddamento accelerano gradualmente verso questa velocità." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Tempo per il firmware della stampante (o per l'unità Multi Material 2.0) per " +"il caricamento del nuovo filamento durante il cambio strumento (quando viene " +"eseguito il T code). Questa durata viene aggiunta alla stima del tempo " +"totale di stampa del G-code." + +msgid "Ramming parameters" +msgstr "Parametri del ramming" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Questa stringa viene controllata da RammingDialog e contiene parametri " +"specifici del ramming." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Tempo per il firmware della stampante (o per l'unità Multi Material 2.0) per " +"lo scaricamento del nuovo filamento durante il cambio strumento (quando " +"viene eseguito il T code). Questa durata viene aggiunta alla stima del tempo " +"totale di stampa del G-code." + +msgid "Enable ramming for multitool setups" +msgstr "Abilita ramming per configurazioni multitool" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Esegue il ramming quando si usa una stampante multitool (Ad esempio, quando " +"l'opzione \"Multimateriale a estrusore singolo\" nelle impostazioni della " +"stampante è deselezionata.). Quando è selezionata, una piccola quantità di " +"filamento viene estrusa rapidamente sulla torre di pulitura appena prima del " +"cambio strumento. Questa opzione viene utilizzata solo quando la torre di " +"pulitura è abilitata." + +msgid "Multitool ramming volume" +msgstr "Volume ramming multitool" + +msgid "The volume to be rammed before the toolchange." +msgstr "Il volume di ramming prima del cambio strumento." + +msgid "Multitool ramming flow" +msgstr "Flusso ramming multitool" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "Flusso usato per il ramming del filamento prima del cambio strumento." + +msgid "Density" +msgstr "Densità" + +msgid "Filament density. For statistics only" +msgstr "Densità filamento, solo a fini statistici." + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "Tipo di filamento" + +msgid "Soluble material" +msgstr "Materiale solubile" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"Il materiale solubile viene comunemente utilizzato per stampare il supporto " +"e l'interfaccia di supporto" + +msgid "Support material" +msgstr "Materiale di supporto" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"Il materiale di supporto viene comunemente utilizzato per stampare il " +"supporto e le interfacce di supporto." + +msgid "Softening temperature" +msgstr "Temperatura di ammorbidimento" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"Il materiale si ammorbidisce a questa temperatura, quindi quando la " +"temperatura del letto è uguale o superiore ad essa, si consiglia vivamente " +"di aprire la porta d'ingresso e/o rimuovere il vetro superiore per evitare " +"ostruzioni." + +msgid "Price" +msgstr "Prezzo" + +msgid "Filament price. For statistics only" +msgstr "Prezzo del filamento, solo a fini statistici." + +msgid "money/kg" +msgstr "soldi/kg" + +msgid "Vendor" +msgstr "Venditore" + +msgid "Vendor of filament. For show only" +msgstr "Venditore di filamenti. Solo per lo spettacolo" + +msgid "(Undefined)" +msgstr "(Indefinito)" + +msgid "Sparse infill direction" +msgstr "" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Questo è l'angolo della trama di riempimento che controlla l'inizio o la " +"direzione principale delle linee." + +msgid "Solid infill direction" +msgstr "" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" + +msgid "Rotate solid infill direction" +msgstr "" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "" + +msgid "Sparse infill density" +msgstr "Densità riempimento" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"Densità del riempimento sparso interno, 100% turns verrà utilizzato tutto il " +"riempimento sparso nel riempimento solido e il modello di riempimento solido " +"interno" + +msgid "Sparse infill pattern" +msgstr "Trama riempimento" + +msgid "Line pattern for internal sparse infill" +msgstr "Questo è la trama lineare per il riempimento interno." + +msgid "Grid" +msgstr "Griglia" + +msgid "Line" +msgstr "Linea" + +msgid "Cubic" +msgstr "Cubico" + +msgid "Tri-hexagon" +msgstr "Tri-esagono" + +msgid "Gyroid" +msgstr "Giroide" + +msgid "Honeycomb" +msgstr "Nido d'ape" + +msgid "Adaptive Cubic" +msgstr "Adattivo Cubico" + +msgid "3D Honeycomb" +msgstr "Nido d'ape 3D" + +msgid "Support Cubic" +msgstr "Supporto cubico" + +msgid "Lightning" +msgstr "Lightning" + +msgid "Cross Hatch" +msgstr "Cross Hatch" + +msgid "Sparse infill anchor length" +msgstr "Lunghezza dell'ancora di riempimento sparsa" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"Collegare una linea di riempimento a un perimetro interno con un breve " +"segmento di un perimetro aggiuntivo. Se espresso in percentuale (esempio: " +"15%) viene calcolato sulla larghezza di estrusione del riempimento. Orca " +"Slicer tenta di collegare due linee di riempimento ravvicinate a un breve " +"segmento perimetrale. Se non viene trovato alcun segmento perimetrale più " +"corto di infill_anchor_max, la linea di riempimento viene collegata a un " +"segmento perimetrale su un solo lato e la lunghezza del segmento perimetrale " +"preso è limitata a questo parametro, ma non più lunga di " +"anchor_length_max. \n" +"Impostare questo parametro su zero per disabilitare i perimetri di " +"ancoraggio collegati a una singola linea di riempimento." + +msgid "0 (no open anchors)" +msgstr "0 (senza ancore aperte)" + +msgid "1000 (unlimited)" +msgstr "1000 (senza limiti)" + +msgid "Maximum length of the infill anchor" +msgstr "Lunghezza massima dell'ancoraggio del riempimento" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"Collegare una linea di riempimento a un perimetro interno con un breve " +"segmento di un perimetro aggiuntivo. Se espresso in percentuale (esempio: " +"15%) viene calcolato sulla larghezza di estrusione del riempimento. Orca " +"Slicer tenta di collegare due linee di riempimento ravvicinate a un breve " +"segmento perimetrale. Se non viene trovato alcun segmento perimetrale più " +"corto di questo parametro, la linea di riempimento viene collegata a un " +"segmento perimetrale su un solo lato e la lunghezza del segmento perimetrale " +"preso è limitata a infill_anchor, ma non più lunga di questo parametro. \n" +"Se impostato a 0, verrà utilizzato il vecchio algoritmo per la connessione " +"di riempimento, che dovrebbe creare lo stesso risultato di 1000 e 0." + +msgid "0 (Simple connect)" +msgstr "0 (Connessione semplice)" + +msgid "Acceleration of outer walls" +msgstr "Accelerazione delle pareti esterne" + +msgid "Acceleration of inner walls" +msgstr "Accelerazione delle pareti interne" + +msgid "Acceleration of travel moves" +msgstr "Accelerazione massima per gli spostamenti" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Questa è l'accelerazione del riempimento della superficie superiore. " +"L'utilizzo di un valore inferiore può migliorare la qualità della superficie " +"superiore." + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Accelerazione della parete esterna: l'utilizzo di un valore inferiore può " +"migliorare la qualità." + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Accelerazione dei ponti. Se il valore è espresso in percentuale (ad es. " +"50%), verrà calcolato in base all'accelerazione della parete esterna." + +msgid "mm/s² or %" +msgstr "mm/s o %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Accelerazione del riempimento rado. Se il valore è espresso in percentuale " +"(ad esempio 100%), verrà calcolato in base all'accelerazione predefinita." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"Accelerazione del riempimento solido interno. Se il valore è espresso in " +"percentuale (ad esempio 100%), verrà calcolato in base all'accelerazione " +"predefinita." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Questa è l'accelerazione di stampa per il primo layer. L'uso di \n" +"un'accelerazione limitata può migliorare l'adesione sul piatto di stampa" + +msgid "Enable accel_to_decel" +msgstr "Abilita accel_to_decel" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "La max_accel_to_decel di Klipper verrà regolata automaticamente" + +msgid "accel_to_decel" +msgstr "accel_to_decel" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" +"La max_accel_to_decel di Klipper sarà adattata a questo %% di accelerazione" + +msgid "Jerk of outer walls" +msgstr "Jerk delle pareti esterne" + +msgid "Jerk of inner walls" +msgstr "Jerk delle pareti interne" + +msgid "Jerk for top surface" +msgstr "Jerk per la superficie superiore" + +msgid "Jerk for infill" +msgstr "Jerk per riempimento" + +msgid "Jerk for initial layer" +msgstr "Jerk per lo strato iniziale" + +msgid "Jerk for travel" +msgstr "Jerk per spostamento" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Larghezza della linea del livello iniziale. Se espresso come %, verrà " +"calcolato sul diametro del nozzle." + +msgid "Initial layer height" +msgstr "Altezza primo layer" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Questa è l'altezza layer iniziale. L'aumento dell'altezza del primo layer " +"può migliorare l'adesione al piatto di stampa" + +msgid "Speed of initial layer except the solid infill part" +msgstr "" +"Indica la velocità per il primo layer, tranne che per le sezioni di " +"riempimento solido." + +msgid "Initial layer infill" +msgstr "Riempimento primo layer" + +msgid "Speed of solid infill part of initial layer" +msgstr "Indica la velocità per le parti di riempimento solido del primo layer." + +msgid "Initial layer travel speed" +msgstr "Velocità di spostamento del primo strato" + +msgid "Travel speed of initial layer" +msgstr "Velocità di traslazione dello strato iniziale" + +msgid "Number of slow layers" +msgstr "Numero di livelli lenti" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"I primi strati vengono stampati più lentamente del normale. La velocità " +"viene gradualmente aumentata in modo lineare sul numero di strati " +"specificato." + +msgid "Initial layer nozzle temperature" +msgstr "Temperatura nozzle primo layer" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" +"Temperatura del nozzle per la stampa del primo layer con questo filamento" + +msgid "Full fan speed at layer" +msgstr "Massima velocità della ventola al layer" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"La velocità della ventola aumenterà linearmente da zero al livello " +"\"close_fan_the_first_x_layers\" al massimo al livello \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" verrà ignorato se inferiore a " +"\"close_fan_the_first_x_layers\", nel qual caso la ventola funzionerà alla " +"massima velocità consentita al livello \"close_fan_the_first_x_layers\" + 1." + +msgid "layer" +msgstr "" + +msgid "Support interface fan speed" +msgstr "Supporta la velocità della ventola dell'interfaccia" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"Questa velocità della ventola viene applicata durante tutte le interfacce di " +"supporto, per essere in grado di indebolire il loro legame con un'elevata " +"velocità della ventola.\n" +"Impostare su -1 per disabilitare questa sostituzione.\n" +"Può essere sovrascritto solo da disable_fan_first_layers." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Questa impostazione fa vibrare casualmente la testa di stampa durante la " +"stampa su pareti, in modo che la superficie abbia un aspetto ruvido. Questa " +"impostazione controlla la posizione fuzzy Skin." + +msgid "Contour" +msgstr "Contorno" + +msgid "Contour and hole" +msgstr "Contorno e foro" + +msgid "All walls" +msgstr "Tutte le pareti" + +msgid "Fuzzy skin thickness" +msgstr "Spessore superficie crespa" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"Ampiezza del tremolio: si consiglia di mantenerla inferiore alla larghezza " +"della linea della parete esterna." + +msgid "Fuzzy skin point distance" +msgstr "Distanza punti superficie crespa" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"La distanza media tra i punti casuali introdotti su ogni segmento di linea" + +msgid "Apply fuzzy skin to first layer" +msgstr "Applicare la pelle sfocata sul primo strato" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "Se applicare la Superficie Crespa ( fuzzy skin) sul primo strato" + +msgid "Filter out tiny gaps" +msgstr "Filtra i piccoli spazi vuoti" + +msgid "Layers and Perimeters" +msgstr "Layer e Perimetri" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "Filtra gli spazi più piccoli della soglia specificata" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Indica la velocità per il riempimento del gap. I gap hanno solitamente una " +"larghezza linea irregolare e devono essere stampate più lentamente." + +msgid "Precise Z height" +msgstr "Precise Z height" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." + +msgid "Arc fitting" +msgstr "Arc fitting" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" + +msgid "Add line number" +msgstr "Aggiungi numero di riga" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Abilita questa opzione per aggiungere il numero di riga (Nx) all'inizio di " +"ogni riga del G-code" + +msgid "Scan first layer" +msgstr "Scansiona Primo layer" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Attivare questa opzione per consentire alla fotocamera della stampante di " +"verificare la qualità del primo layer." + +msgid "Nozzle type" +msgstr "Tipo di nozzle" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"Il materiale metallico del nozzle: determina la resistenza all'abrasione del " +"nozzle e il tipo di filamento che può essere stampato." + +msgid "Undefine" +msgstr "Indefinito" + +msgid "Hardened steel" +msgstr "Acciaio temprato" + +msgid "Stainless steel" +msgstr "Acciaio inox" + +msgid "Brass" +msgstr "Ottone" + +msgid "Nozzle HRC" +msgstr "Nozzle HRC" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"Durezza nozzle. Zero significa che non è necessario controllarla durante lo " +"slicing." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Struttura della stampante" + +msgid "The physical arrangement and components of a printing device" +msgstr "La disposizione fisica e i componenti di un dispositivo di stampa" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "Migliore posizione dell'oggetto" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Migliore posizione di disposizione automatica nell'intervallo [0,1] w.r.t. " +"forma del letto." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"Abilitare questa opzione se la macchina è dotata di ventola di " +"raffreddamento della parte ausiliaria. Comando G-code: M106 P2 S(0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Avviare la ventola questo numero di secondi prima dell'ora di inizio " +"prevista (è possibile utilizzare i secondi frazionari). Si presume " +"un'accelerazione infinita per questa stima del tempo e si terrà conto solo " +"dei movimenti G1 e G0 (l'adattamento dell'arco non è supportato).\n" +"Non sposterà i comandi dei fan dai gcode personalizzati (agiscono come una " +"sorta di \"barriera\").\n" +"Non sposterà i comandi delle ventole nel gcode di avvio se è attivato " +"l'opzione \"solo gcode di avvio personalizzato\".\n" +"Utilizzare 0 per disattivare." + +msgid "Only overhangs" +msgstr "Solo sporgenze" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "Terrà conto solo del ritardo per il raffreddamento delle sporgenze." + +msgid "Fan kick-start time" +msgstr "Tempo di avvio della ventola" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Emettere un comando di velocità massima della ventola per questo numero di " +"secondi prima di ridurre la velocità target per avviare la ventola di " +"raffreddamento.\n" +"Ciò è utile per le ventole in cui un PWM/potenza bassa potrebbe essere " +"insufficiente per far partire la ventola da fermo o per far sì che la " +"ventola raggiunga la velocità più velocemente.\n" +"Impostare su 0 per disattivare." + +msgid "Time cost" +msgstr "Costo orario" + +msgid "The printer cost per hour" +msgstr "Il costo orario della stampante" + +msgid "money/h" +msgstr "soldi/h" + +msgid "Support control chamber temperature" +msgstr "Supporta la temperatura della camera di controllo" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Questa opzione è abilitata se la macchina supporta il controllo della " +"temperatura della camera\n" +"Comando G-code: M141 S(0-255)" + +msgid "Support air filtration" +msgstr "Supporta la filtrazione dell'aria" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Abilitare questa opzione se la stampante supporta il filtraggio dell'aria\n" +"Comando G-code: M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "Formato G-code" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Con che tipo di G-code è compatibile la stampante." + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "Supporta i tipi di letti multipli" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "Abilitare questa opzione se si desidera utilizzare più tipi di letto" + +msgid "Label objects" +msgstr "Etichetta oggetti" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"Attivalo per aggiungere commenti nel G-Code etichettando i movimenti di " +"stampa secondo l'appartenenza, utile per il plugin Octoprint CancelObject. " +"Questa impostazione NON è compatibile con una configurazione Multi Material " +"ad estrusore singolo e con Pulitura nell'oggetto / Pulitura nel riempimento." + +msgid "Exclude objects" +msgstr "Escludi oggetti" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "" +"Abilita questa opzione per aggiungere il comando EXCLUDE OBJECT nel g-code" + +msgid "Verbose G-code" +msgstr "G-code verboso" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Abilita per ottenere un file G-code commentato, con un testo descrittivo per " +"ciascuna linea. Se stampi da memoria SD, il peso aggiuntivo del file " +"potrebbe rallentare il firmware." + +msgid "Infill combination" +msgstr "Combinazione riempimento" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Automatically combine sparse infill of several layers to print together in " +"order to reduce time. Walls are still printed with original layer height." + +msgid "Filament to print internal sparse infill." +msgstr "Questo è il filamento per la stampa del riempimento interno." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Larghezza della linea del riempimento interno sparso. Se espresso come %, " +"verrà calcolato sul diametro del nozzle." + +msgid "Infill/Wall overlap" +msgstr "Sovrapposizione riempimento/parete" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" + +msgid "Speed of internal sparse infill" +msgstr "Indica la velocità del riempimento interno." + +msgid "Interface shells" +msgstr "Pareti interfaccia" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Forza la generazione di perimetri solidi tra volumi o materiali adiacenti. " +"Utile per stampe multi estrusore con materiali traslucidi o supporti " +"solubili manuali" + +msgid "Maximum width of a segmented region" +msgstr "Larghezza massima di una regione segmentata" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Larghezza massima di una regione segmentata. Il valore zero disattiva questa " +"caratteristica." + +msgid "Interlocking depth of a segmented region" +msgstr "Profondità di incastro di una regione segmentata" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Profondità di incastro di una regione segmentata. Zero disabilita questa " +"funzione." + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "Tipo di stiratura" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"La stiratura utilizza un flusso ridotto per stampare alla stessa altezza di " +"una superficie per rendere le superfici piane più lisce. Questa impostazione " +"controlla quali layer vengono stirati." + +msgid "No ironing" +msgstr "Non stirare" + +msgid "Top surfaces" +msgstr "Tutte le superfici superiori" + +msgid "Topmost surface" +msgstr "Superficie superiore più alta" + +msgid "All solid layer" +msgstr "Tutti i layers solidi" + +msgid "Ironing Pattern" +msgstr "Trama stiratura" + +msgid "The pattern that will be used when ironing" +msgstr "Il modello che verrà utilizzato durante la stiratura" + +msgid "Ironing flow" +msgstr "Flusso stiratura" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"Indica la quantità di materiale da estrudere durante la stiratura. È " +"relativo al flusso dell'altezza normale del layer. Un valore troppo alto " +"provoca una sovraestrusione sulla superficie." + +msgid "Ironing line spacing" +msgstr "Spaziatura linee di stiratura" + +msgid "The distance between the lines of ironing" +msgstr "Indica la distanza tra le linee utilizzate per la stiratura." + +msgid "Ironing speed" +msgstr "Velocità stiratura" + +msgid "Print speed of ironing lines" +msgstr "Indica la velocità di stampa per le linee di stiratura." + +msgid "Ironing angle" +msgstr "Angolo di stiratura" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"La stiratura angolare viene eseguita a. Un numero negativo disabilita questa " +"funzione e utilizza il metodo predefinito." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"Questo G-code viene inserito a ogni cambio di layer dopo l'elevazione z." + +msgid "Supports silent mode" +msgstr "Modalità silenziosa" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Se la macchina supporta la modalità silenziosa, in cui la macchina utilizza " +"un'accelerazione inferiore per stampare in modo più silenzioso" + +msgid "Emit limits to G-code" +msgstr "Limiti di emissione al codice G" + +msgid "Machine limits" +msgstr "Limiti macchina" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"Se abilitato, i limiti della macchina verranno emessi nel file G-code.\n" +"Questa opzione verrà ignorata se il sapore del codice g è impostato su " +"Klipper." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Questo G-code verrà utilizzato come codice pausa stampa. Gli utenti possono " +"inserire il G-code di pausa nel visualizzatore G-code." + +msgid "This G-code will be used as a custom code" +msgstr "Questo G-code verrà utilizzato come codice personalizzato" + +msgid "Small area flow compensation (beta)" +msgstr "Compensazione del flusso su piccola area (beta)" + +msgid "Enable flow compensation for small infill areas" +msgstr "Abilita la compensazione del flusso per piccole aree di riempimento" + +msgid "Flow Compensation Model" +msgstr "Modello di compensazione del flusso" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"Modello di compensazione del flusso, utilizzato per regolare il flusso per " +"piccole aree di riempimento. Il modello è espresso come una coppia di valori " +"separati da virgole per la lunghezza di estrusione e i fattori di correzione " +"del flusso, uno per riga, nel seguente formato: \"1.234,5.678\"" + +msgid "Maximum speed X" +msgstr "Velocità massima X" + +msgid "Maximum speed Y" +msgstr "Velocità massima Y" + +msgid "Maximum speed Z" +msgstr "Velocità massima Z" + +msgid "Maximum speed E" +msgstr "Velocità massima E" + +msgid "Maximum X speed" +msgstr "Velocità massima X" + +msgid "Maximum Y speed" +msgstr "Velocità massima Y" + +msgid "Maximum Z speed" +msgstr "Velocità massima Z" + +msgid "Maximum E speed" +msgstr "Velocità massima E" + +msgid "Maximum acceleration X" +msgstr "Accelerazione massima X" + +msgid "Maximum acceleration Y" +msgstr "Accelerazione massima Y" + +msgid "Maximum acceleration Z" +msgstr "Accelerazione massima Z" + +msgid "Maximum acceleration E" +msgstr "Accelerazione massima E" + +msgid "Maximum acceleration of the X axis" +msgstr "Accelerazione massima dell'asse X" + +msgid "Maximum acceleration of the Y axis" +msgstr "Accelerazione massima dell'asse Y" + +msgid "Maximum acceleration of the Z axis" +msgstr "Accelerazione massima dell'asse Z" + +msgid "Maximum acceleration of the E axis" +msgstr "Accelerazione massima dell'asse E" + +msgid "Maximum jerk X" +msgstr "Jerk massimo X" + +msgid "Maximum jerk Y" +msgstr "Jerk massimo Y" + +msgid "Maximum jerk Z" +msgstr "Jerk massimo Z" + +msgid "Maximum jerk E" +msgstr "Jerk massimo E" + +msgid "Maximum jerk of the X axis" +msgstr "Jerk massimo dell'asse X" + +msgid "Maximum jerk of the Y axis" +msgstr "Jerk massimo dell'asse Y" + +msgid "Maximum jerk of the Z axis" +msgstr "Jerk massimo dell'asse Z" + +msgid "Maximum jerk of the E axis" +msgstr "Jerk massimo dell'asse E" + +msgid "Minimum speed for extruding" +msgstr "Velocità minima di estrusione" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Velocità minima di estrusione (M205 S)" + +msgid "Minimum travel speed" +msgstr "Velocità di spostamento minima" + +msgid "Minimum travel speed (M205 T)" +msgstr "Velocità di spostamento minima (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Accelerazione massima per l'estrusione" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Accelerazione massima per l'estrusione (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Accelerazione massima per la retrazione" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Accelerazione massima per retrazione (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Accelerazione massima per spostamenti" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" +"Accelerazione massima per la corsa (M204 T), si applica solo al Marlin 2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"La velocità della ventola di raffreddamento può essere aumentata quando è " +"abilitato il raffreddamento automatico. Questa è la limitazione massima " +"della velocità della ventola di raffreddamento parziale" + +msgid "Max" +msgstr "Massimo" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"L'altezza massima del layer stampabile per l'estrusore: viene utilizzata per " +"limitare l'altezza massima del layer quando è abilitato il layer adattativo." + +msgid "Extrusion rate smoothing" +msgstr "Lisciatura del tasso di estrusione" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Questo parametro attenua le variazioni improvvise della velocità di " +"estrusione che si verificano quando la stampante passa dalla stampa di " +"un'estrusione ad alto flusso (alta velocità/larghezza maggiore) a " +"un'estrusione a flusso inferiore (velocità inferiore/larghezza inferiore) e " +"viceversa.\n" +"\n" +"Definisce la velocità massima con cui la portata volumetrica estrusa in mm3/" +"sec può variare nel tempo. Valori più alti significano che sono consentite " +"variazioni più elevate della velocità di estrusione, con conseguenti " +"transizioni di velocità più rapide.\n" +"\n" +"Il valore 0 disabilita la funzionalità. \n" +"\n" +"Per una stampante ad azionamento diretto ad alta velocità e ad alto flusso " +"(come Bambu lab o Voron) questo valore di solito non è necessario. Tuttavia, " +"può fornire alcuni vantaggi marginali in alcuni casi in cui le velocità " +"delle funzionalità variano notevolmente. Ad esempio, quando ci sono " +"rallentamenti aggressivi dovuti a strapiombi. In questi casi si consiglia un " +"valore elevato di circa 300-350 mm3/s2 in quanto ciò consente una levigatura " +"sufficiente per aiutare l'avanzamento della pressione a ottenere una " +"transizione di flusso più fluida.\n" +"\n" +"Per le stampanti più lente senza anticipo di pressione, il valore deve " +"essere impostato su un valore molto più basso. Un valore di 10-15 mm3/s2 è " +"un buon punto di partenza per gli estrusori a trasmissione diretta e di 5-10 " +"mm3/s2 per lo stile Bowden. \n" +"\n" +"Questa funzione è nota come equalizzatore di pressione in Prusa slicer.\n" +"\n" +"Nota: questo parametro disabilita l'adattamento dell'arco." + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "Levigatura della lunghezza del segmento" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Un valore più basso si traduce in transizioni più fluide della velocità di " +"estrusione. Tuttavia, ciò si traduce in un file gcode significativamente più " +"grande e in un maggior numero di istruzioni per l'elaborazione da parte " +"della stampante. \n" +"\n" +"Il valore predefinito 3 funziona bene per la maggior parte dei casi. Se la " +"stampante balbetta, aumentare questo valore per ridurre il numero di " +"regolazioni effettuate\n" +"\n" +"Valori consentiti: 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "Velocità minima ventola di raffreddamento" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Velocità della ventola di raffreddamento della parte ausiliaria. La ventola " +"ausiliaria funzionerà a questa velocità durante la stampa, ad eccezione dei " +"primi strati, che sono definiti dall'assenza di strati di raffreddamento.\n" +"Abilitare auxiliary_fan nelle impostazioni della stampante per utilizzare " +"questa funzione. Comando G-code: M106 P2 S(0-255)" + +msgid "Min" +msgstr "Minimo" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"L'altezza minima del layer stampabile per l'estrusore. Viene utilizzata per " +"limitare l'altezza minima del layer quando è abilito il layer adattativo." + +msgid "Min print speed" +msgstr "Velocità minima di stampa" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"La velocità di stampa minima a cui la stampante rallenterà per tentare di " +"mantenere il tempo minimo dello strato sopra, quando è abilitato il " +"rallentamento per un migliore raffreddamento dello strato." + +msgid "Nozzle diameter" +msgstr "Diametro Nozzle" + +msgid "Diameter of nozzle" +msgstr "Diametro del nozzle" + +msgid "Configuration notes" +msgstr "Note di configurazione" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Qui è possibile inserire le note personali. Questo testo verrà aggiunto nei " +"commenti iniziali del G-code." + +msgid "Host Type" +msgstr "Tipo host" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca può caricare file G-code su un host di stampa. Questo campo deve " +"contenere il tipo di host." + +msgid "Nozzle volume" +msgstr "Volume del nozzle" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Volume del nozzle tra taglierina ed estremità nozzle" + +msgid "Cooling tube position" +msgstr "Posizione tubo di raffreddamento" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "" +"Distanza del centro del tubo di raffreddamento dalla punta dell'estrusore." + +msgid "Cooling tube length" +msgstr "Lunghezza del tubo di raffreddamento" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Lunghezza del tubo di raffreddamento per limitare lo spazio per i movimenti " +"di raffreddamento al suo interno." + +msgid "High extruder current on filament swap" +msgstr "Alta corrente estrusore al cambio filamento" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Potrebbe essere utile aumentare la corrente del motore estrusore durante la " +"sequenza di cambio filamento per permettere un avanzamento rapido del " +"ramming e per superare la resistenza durante il caricamento di un filamento " +"con una punta deformata." + +msgid "Filament parking position" +msgstr "Posizione di parcheggio del filamento" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Distanza della punta dell'estrusore dalla posizione dove il filamento viene " +"posto mentre viene scaricato. Dovrebbe essere uguale al valore nel firmware " +"della stampante." + +msgid "Extra loading distance" +msgstr "Distanza di caricamento aggiuntiva" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Quando impostato a zero, la distanza percorsa dal filamento in posizione di " +"parcheggio durante il caricamento è esattamente uguale a quella contraria " +"durante lo scaricamento. Quando il valore è positivo, viene caricato " +"maggiormente, se il valore è negativo il movimento di caricamento è più " +"corto dello scaricamento." + +msgid "Start end points" +msgstr "Punti iniziali e finali" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "" +"I punti di partenza e arrivo che si trovano dall'area del taglio allo " +"scarico." + +msgid "Reduce infill retraction" +msgstr "Riduci la retrazione nel riempimento" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Non ritrarre quando gli spostamenti si trovano interamente ad un'area di " +"riempimento. Ciò significa che il gocciolamento non verrà visto. Questo può " +"ridurre i tempi di ritrazione per i modelli complessi e far risparmiare " +"tempo di stampa, ma rende lo slicing e la generazione del G-code più lento." + +msgid "Filename format" +msgstr "Formato nome file" + +msgid "User can self-define the project file name when export" +msgstr "" +"Gli utenti possono decidere i nomi dei file progetto nell'esportazione." + +msgid "Make overhangs printable" +msgstr "Rendi stampabile la sporgenza" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "" +"Modificare la geometria per stampare sporgenze senza materiale di supporto." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Rendi la sporgenza stampabile angolo massimo" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Angolo massimo delle sporgenze da consentire dopo aver reso stampabili " +"sporgenze più ripide.90° non cambierà affatto il modello e consentirà alcuna " +"sporgenza, mentre 0 sostituirà tutte le sporgenze con materiale conico." + +msgid "Make overhangs printable - Hole area" +msgstr "Rendere stampabile l'area del foro sporgente" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Area massima di un foro nella base del modello prima che venga riempito da " +"materiale conico. Un valore pari a 0 riempirà tutti i fori nella base del " +"modello." + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Rileva parete a sbalzo" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Rileva la percentuale di sporgenza rispetto alla larghezza della linea e " +"utilizza velocità diverse per stampare. Per una sporgenza di 100%%, viene " +"utilizzata la velocità del ponte." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Larghezza della linea della parete interna. Se espresso come %, verrà " +"calcolato sul diametro del nozzle." + +msgid "Speed of inner wall" +msgstr "Indica la velocità per le pareti interne." + +msgid "Number of walls of every layer" +msgstr "Questo è il numero di pareti per layer." + +msgid "Alternate extra wall" +msgstr "Parete Aggiuntiva Alternativa" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"Questa impostazione aggiunge un muro extra a ogni altro livello. In questo " +"modo il riempimento si incastra verticalmente tra le pareti, ottenendo " +"stampe più resistenti. \n" +"\n" +"Quando questa opzione è abilitata, l'opzione Garantisci spessore verticale " +"del guscio deve essere disabilitata. \n" +"\n" +"L'utilizzo del riempimento fulmineo insieme a questa opzione non è " +"raccomandato in quanto il riempimento è limitato a cui ancorare i perimetri " +"extra." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Se vuoi processare il G-code in uscita con script personalizzati, basta " +"elencare qui il loro percorso assoluto. Separa i diversi script con un punto " +"e virgola. Gli script passeranno il percorso assoluto nel G-code come primo " +"argomento, e potranno accedere alle impostazioni di configurazione di Orca " +"Slicer leggendo le variabili di ambiente." + +msgid "Printer notes" +msgstr "Note stampante" + +msgid "You can put your notes regarding the printer here." +msgstr "È possibile inserire qui le note riguardanti la stampante." + +msgid "Raft contact Z distance" +msgstr "Distanza di contatto Z Raft" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"Indica lo spazio Z tra oggetto e raft. Viene ignorato per le interfacce " +"solubili." + +msgid "Raft expansion" +msgstr "Espansione del raft" + +msgid "Expand all raft layers in XY plane" +msgstr "Questo espande tutti i layer del raft nel piano XY." + +msgid "Initial layer density" +msgstr "Densità primo layer" + +msgid "Density of the first raft or support layer" +msgstr "Questa è la densità del raft o del layer di supporto." + +msgid "Initial layer expansion" +msgstr "Espansione primo layer" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Questo espande il primo raft o layer di supporto per migliorare l'adesione " +"al piatto." + +msgid "Raft layers" +msgstr "Layer raft" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"L'oggetto verrà sollevato da questo numero di layer di supporto. Utilizzare " +"questa funzione per evitare deformazioni durante la stampa di ABS." + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"Il percorso del G-code viene generato dopo aver semplificato il contorno del " +"modello per evitare molti punti e linee nel file G-code.\n" +"Un valore più piccolo significa una risoluzione più elevata e un tempo " +"maggiore per l'elaborazione" + +msgid "Travel distance threshold" +msgstr "Soglia distanza di spostamento" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"L'attivazione della retrazione avviene solo quando la distanza percorsa è " +"superiore a questa soglia." + +msgid "Retract amount before wipe" +msgstr "Retrai la quantità prima di pulire" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"Indica la lunghezza della retrazione rapida prima di una pulizia, rispetto " +"alla lunghezza di retrazione." + +msgid "Retract when change layer" +msgstr "Ritrai al cambio layer" + +msgid "Force a retraction when changes layer" +msgstr "Questo forza una retrazione nei cambi layer." + +msgid "Retraction Length" +msgstr "Lunghezza Retrazione" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Indica la quantità filamento nell'estrusore che viene ritirata per evitare " +"la trasudazione durante le lunghe distanze. Imposta su 0 per disattivare la " +"retrazione." + +msgid "Long retraction when cut(experimental)" +msgstr "Long retraction when cut (experimental)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." + +msgid "Retraction distance when cut" +msgstr "Retraction distance when cut" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Experimental feature. Retraction length before cutting off during filament " +"change" + +msgid "Z hop when retract" +msgstr "Z hop in fase retrazione" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Ogni volta che si verifica una retrazione, il nozzle viene sollevato " +"leggermente per creare spazio tra nozzle e stampa. Ciò impedisce al nozzle " +"di colpire la stampa quando si viaggia di più. L'uso di linee a spirale per " +"sollevare z può evitare che si stringano." + +msgid "Z hop lower boundary" +msgstr "Limite inferiore dell'hop Z" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"L'hop Z avrà effetto solo quando Z è al di sopra di questo valore e si trova " +"al di sotto del parametro: \"Limite superiore dell'hop Z\"" + +msgid "Z hop upper boundary" +msgstr "Limite superiore dell'hop Z" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Se questo valore è positivo, l'hop Z avrà effetto solo quando Z si trova al " +"di sopra del parametro: \"Z hop lower boundary\" ed è al di sotto di questo " +"valore" + +msgid "Z hop type" +msgstr "Tipo Z Hop" + +msgid "Slope" +msgstr "Inclinato" + +msgid "Spiral" +msgstr "Spirale" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "Solleva Z solo al di sopra" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Se si imposta questo valore su un valore positivo, l'aumento Z si " +"verificherà solo al di sopra dello Z assoluto specificato." + +msgid "Only lift Z below" +msgstr "Solleva Z solo al di sotto" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Se si imposta questo valore su un valore positivo, l'aumento Z si " +"verificherà solo al di sotto dello Z assoluto specificato." + +msgid "On surfaces" +msgstr "Tutte le superfici superiori" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Applicare il comportamento Z Hop. Questa impostazione è influenzata dalle " +"impostazioni di cui sopra (solo sollevare Z sopra/sotto)." + +msgid "All Surfaces" +msgstr "Tutte le Superfici" + +msgid "Top Only" +msgstr "Solo sopra" + +msgid "Bottom Only" +msgstr "Solo sotto" + +msgid "Top and Bottom" +msgstr "Sopra e Sotto" + +msgid "Extra length on restart" +msgstr "Lunghezza extra in ripresa" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Quando la retrazione è compensata dopo un movimento di spostamento, " +"l'estrusore spingerà questa quantità addizionale di filamento. Questa " +"impostazione è raramente necessaria." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Quando la retrazione è compensata dopo un cambio strumento, l'estrusore " +"spingerà questa quantità addizionale di filamento." + +msgid "Retraction Speed" +msgstr "Velocità di retrazione" + +msgid "Speed of retractions" +msgstr "Indica la velocità di retrazione." + +msgid "Deretraction Speed" +msgstr "Velocità di deretrazione" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"La velocità di ricarica filamento nell'estrusore dopo una retrazione; " +"impostando 0, la velocità sarà la stessa della retrazione." + +msgid "Use firmware retraction" +msgstr "Usa retrazione firmware" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"Questa impostazione sperimentale utilizza i comandi G10 e G11 per fare in " +"modo che il firmware gestisca la ritrazione. Questo è supportato solo nel " +"recente Marlin." + +msgid "Show auto-calibration marks" +msgstr "Mostra segni di autocalibrazione" + +msgid "Disable set remaining print time" +msgstr "Disabilita il tempo di stampa rimanente impostato" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" + +msgid "Seam position" +msgstr "Posizione della cucitura" + +msgid "The start position to print each part of outer wall" +msgstr "Indica la posizione di partenza per ogni parte della parete esterna." + +msgid "Nearest" +msgstr "Più vicino" + +msgid "Aligned" +msgstr "Allineato" + +msgid "Back" +msgstr "Indietro" + +msgid "Random" +msgstr "Casuale" + +msgid "Staggered inner seams" +msgstr "Giunzioni interne sfalsate" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Questa opzione fa sì che le giunzioni interne vengano spostate all'indietro " +"in base alla loro profondità, formando un motivo a zig-zag." + +msgid "Seam gap" +msgstr "Gap di cucitura" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Per ridurre la visibilità della cucitura in un'estrusione ad anello chiuso, " +"l'anello viene interrotto e accorciato di una quantità specificata.\n" +"Questa quantità può essere specificata in millimetri o come percentuale del " +"diametro corrente dell'estrusore. Il valore predefinito per questo parametro " +"è 10%." + +msgid "Scarf joint seam (beta)" +msgstr "Cucitura a sciarpa (beta)" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Utilizzare il giunto a sciarpa per ridurre al minimo la visibilità della " +"cucitura e aumentare la resistenza della cucitura." + +msgid "Conditional scarf joint" +msgstr "Cucitura a Sciarpa Condizionata" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Applicare le cuciture a sciarpa solo sui perimetri lisci, dove le cuciture " +"tradizionali non riescono a nascondere efficacemente quelle in " +"corrispondenza degli angoli vivi." + +msgid "Conditional angle threshold" +msgstr "Soglia dell'angolo Condizionale" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"Questa opzione imposta la soglia dell'angolo per l'applicazione di una " +"cucitura condizionale.\n" +"Se l'angolo massimo all'interno dell'anello perimetrale supera questo valore " +"(che indica l'assenza di spigoli vivi), si utilizzerà una cucitura a " +"sciarpa. Il valore predefinito è 155°." + +msgid "Conditional overhang threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" + +msgid "Scarf joint speed" +msgstr "Velocità Cucitura a Sciarpa" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"Questa opzione imposta la velocità di stampa per le cuciture a sciarpa. È " +"consigliabile stampare le cuciture a sciarpa a una velocità bassa (inferiore " +"a 100 mm/s). È anche opportuno attivare l'opzione 'Lisciatura del tasso di " +"estrusione' se la velocità impostata varia in modo significativo rispetto " +"alla velocità delle pareti esterne o interne.Se la velocità specificata qui " +"è superiore alla velocità delle pareti esterne o interne, la stampante si " +"regolerà di default sulla velocità più bassa delle due. Se specificata come " +"percentuale (ad esempio, 80%), la velocità viene calcolata in base alla " +"velocità della parete esterna o interna. Il valore predefinito è impostato " +"su 100%" + +msgid "Scarf joint flow ratio" +msgstr "Rapporto di Flusso Cucitura a Sciarpa" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" +"Questo fattore influisce sulla quantità di materiale per le Cuciture a " +"Sciarpa" + +msgid "Scarf start height" +msgstr "Altezza di partenza della sciarpa" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Altezza iniziale della sciarpa.\n" +"Questa quantità può essere specificata in millimetri o come percentuale " +"dell'altezza del layer corrente. Il valore predefinito per questo parametro " +"è 0." + +msgid "Scarf around entire wall" +msgstr "Sciarpa intorno a tutta la parete" + +msgid "The scarf extends to the entire length of the wall." +msgstr "La sciarpa si estende per tutta la lunghezza del muro." + +msgid "Scarf length" +msgstr "Lunghezza sciarpa" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Lunghezza della sciarpa. Impostando questo parametro su zero, la sciarpa " +"viene effettivamente disabilitata." + +msgid "Scarf steps" +msgstr "Incrementi sciarpa" + +msgid "Minimum number of segments of each scarf." +msgstr "Numero minimo di segmenti di ogni sciarpa." + +msgid "Scarf joint for inner walls" +msgstr "Cucitura a sciarpa per pareti interne" + +msgid "Use scarf joint for inner walls as well." +msgstr "Utilizzare la cucitura a sciarpa anche per le pareti interne." + +msgid "Role base wipe speed" +msgstr "Wipe Speed" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"La velocità di pulizia è determinata dalla velocità del ruolo di estrusione " +"corrente, ad es. Se un'azione di pulizia viene eseguita immediatamente dopo " +"un'estrusione della parete esterna, la velocità di estrusione della parete " +"esterna verrà utilizzata per l'azione di pulizia." + +msgid "Wipe on loops" +msgstr "Pulisci sui loop" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Per ridurre al minimo la visibilità della cucitura in un'estrusione ad " +"anello chiuso, viene eseguito un piccolo movimento verso l'interno prima che " +"l'estrusore lasci l'anello." + +msgid "Wipe before external loop" +msgstr "Pulire prima del loop esterno" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"Per ridurre al minimo la visibilità di una potenziale sovraestrusione " +"all'inizio di un perimetro esterno quando si stampa con l'ordine di stampa " +"Esterno/Interno o Interno/Esterno/Interno/Parete interna, la deretrazione " +"viene eseguita leggermente all'interno dall'inizio del perimetro esterno. In " +"questo modo qualsiasi potenziale sovraestrusione viene nascosta dalla " +"superficie esterna. \n" +"\n" +"Ciò è utile quando si stampa con l'ordine di stampa Esterno/Interno o " +"Interno/Esterno/Interno parete, poiché in queste modalità è più probabile " +"che venga stampato un perimetro esterno immediatamente dopo un movimento di " +"retrazione." + +msgid "Wipe speed" +msgstr "Velocità di pulizia" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"La velocità di pulizia è determinata dall'impostazione della velocità " +"specificata in questa configurazione. Se il valore è espresso in percentuale " +"(ad es. 80%), verrà calcolato in base all'impostazione della velocità di " +"traslazione di cui sopra. Il valore predefinito per questo parametro è 80%" + +msgid "Skirt distance" +msgstr "Distanza Skirt" + +msgid "Distance from skirt to brim or object" +msgstr "Questa è la distanza dallo skirt al brim o all'oggetto." + +msgid "Skirt height" +msgstr "Altezza skirt" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Numero di layer skirt: solitamente uno" + +msgid "Draft shield" +msgstr "Scudo di protezione" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" + +msgid "Limited" +msgstr "Limitato" + +msgid "Enabled" +msgstr "Abilitato" + +msgid "Skirt loops" +msgstr "Anelli skirt" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "" +"Questo è il numero di loop per lo skirt. 0 indica che lo skirt è disattivata." + +msgid "Skirt speed" +msgstr "Velocità Skirt" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" +"Velocità del gonna, in mm/s. Zero significa utilizzare la velocità di " +"estrusione dello strato predefinita." + +msgid "Skirt minimum extrusion length" +msgstr "" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"La velocità di stampa nel G-code esportato verrà rallentata quando il tempo " +"stimato del layer è inferiore a questo valore per ottenere un migliore " +"raffreddamento per questi layers." + +msgid "Minimum sparse infill threshold" +msgstr "Soglia minima riempimento" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"L'area riempimento che è inferiore al valore di soglia viene sostituita da " +"un riempimento solido interno." + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Larghezza della linea del riempimento solido interno. Se espresso come %, " +"verrà calcolato sul diametro del nozzle." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"Indica la velocità del riempimento solido interno, esclusa la superficie " +"superiore o inferiore." + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Consente la stampa a spirale, che attenua i movimenti Z del contorno esterno " +"e trasforma un modello solido in una stampa a parete singola con layers " +"inferiori solidi. Il modello finale generato non presenta alcuna giunzione." + +msgid "Smooth Spiral" +msgstr "Spirale liscia" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Smooth Spiral leviga anche i movimenti X e Y, senza alcuna cucitura " +"visibile, anche nelle direzioni XY su pareti che non sono verticali" + +msgid "Max XY Smoothing" +msgstr "Levigatura Max XY" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Distanza massima per spostare i punti in XY per cercare di ottenere una " +"spirale uniformeSe espressa come %, verrà calcolata sul diametro del nozzle" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Se si seleziona la modalità \"Smooth\" o \"Tradizionale\", per ogni stampa " +"viene generato un video in timelapse. Dopo la stampa di ogni layer, viene " +"scattata una foto.Tutte queste foto verranno unite per creare un video " +"timelapse al termine della stampa. Se si seleziona \"Smooth\", la testa di " +"stampa si sposta sullo scivolo di spurgo posteriore dopo la stampa di ogni " +"layer e poi scatta una foto. Poiché il filamento può fuoriuscire dal nozzle " +"durante il processo di acquisizione della foto, la modalità \"Smooth\" ha " +"bisogno che venga utilizzata la prime tower per pulire il nozzle." + +msgid "Traditional" +msgstr "Tradizionale" + +msgid "Temperature variation" +msgstr "Variazione di temperatura" + +msgid "Start G-code" +msgstr "G-code iniziale" + +msgid "Start G-code when start the whole printing" +msgstr "G-code aggiunto all'avvio di una stampa" + +msgid "Start G-code when start the printing of this filament" +msgstr "G-code aggiunto quando la stampante utilizza questo filamento" + +msgid "Single Extruder Multi Material" +msgstr "Estrusore singolo Multi Material" + +msgid "Use single nozzle to print multi filament" +msgstr "Usa un ugello singolo per stampare più filamenti" + +msgid "Manual Filament Change" +msgstr "Cambio manuale del filamento" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Abilita questa opzione per omettere il codice G Cambia filamento " +"personalizzato solo all'inizio della stampa. Il comando di cambio utensile " +"(ad es. T0) verrà saltato durante l'intera stampa. Ciò è utile per la stampa " +"manuale multi-materiale, in cui utilizziamo M600/PAUSE per attivare l'azione " +"di cambio filamento manuale." + +msgid "Purge in prime tower" +msgstr "Spurga nella Prime tower" + +msgid "Purge remaining filament into prime tower" +msgstr "Spurgare il filamento rimanente nella torre di prim'ordine" + +msgid "Enable filament ramming" +msgstr "Abilita lo speronamento del filamento" + +msgid "No sparse layers (beta)" +msgstr "Nessun strato sparso (beta)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Se attiva, la torre di pulitura non verrà stampata sui layer senza cambio " +"strumento. Sui layer con un cambio strumento, l'estrusore si sposterà verso " +"il basso per stampare la torre di pulitura. L'utente dovrà accertarsi che " +"non avvengano collisioni con la stampa." + +msgid "Prime all printing extruders" +msgstr "Prepara tutti gli estrusori di stampa" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Se attivata, tutti gli estrusori di stampa verranno preparati nel bordo " +"frontale del piano di stampa all'inizio della stampa." + +msgid "Slice gap closing radius" +msgstr "Raggio chiusura del gap" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Le fessure più piccole di 2X del gap vengono riempite durante lo slicing " +"della mesh del triangolo.\n" +"L'operazione di chiusura della fessura può ridurre la risoluzione di stampa " +"finale.\n" +"Si consiglia di mantenere un valore ragionevolmente basso." + +msgid "Slicing Mode" +msgstr "Modalità slicing" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Usa \"Pari-dispari\" per modelli di aeroplano 3DLabPrint. Utilizza \"Chiudi " +"fori\" per chiudere tutti i fori del modello." + +msgid "Regular" +msgstr "Regolare" + +msgid "Even-odd" +msgstr "Pari-dispari" + +msgid "Close holes" +msgstr "Chiudi fori" + +msgid "Z offset" +msgstr "Offset Z" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Questo valore sarà aggiunto (o sottratto) da tutte le coordinate Z nel G-" +"code di output. Viene utilizzato per compensare una posizione di finecorsa Z " +"errata: per esempio, se la posizione minima del finecorsa rimane in realtà " +"0.3mm lontano dal piano, imposta questo valore a -0.3 (o sistema il " +"finecorsa)." + +msgid "Enable support" +msgstr "Abilita supporti" + +msgid "Enable support generation." +msgstr "Abilita la generazione dei supporti." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"normale(auto) e albero(auto) sono usati per generare automaticamente i " +"supporti. Se si seleziona normale(manuale) o albero(manuale), vengono " +"generati solo gli esecutori del supporto." + +msgid "normal(auto)" +msgstr "normal(auto)" + +msgid "tree(auto)" +msgstr "albero(auto)" + +msgid "normal(manual)" +msgstr "normale(manuale)" + +msgid "tree(manual)" +msgstr "albero(manuale)" + +msgid "Support/object xy distance" +msgstr "Distanza xy supporto/oggetto" + +msgid "XY separation between an object and its support" +msgstr "Separazione XY tra un oggetto e il suo supporto" + +msgid "Pattern angle" +msgstr "Angolo trama" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "Usa questo per ruotare sul piano orizzontale la trama del supporto." + +msgid "On build plate only" +msgstr "Solo dal piatto" + +msgid "Don't create support on model surface, only on build plate" +msgstr "" +"Questa impostazione genera solo i supporti che poggiano sul piatto di stampa." + +msgid "Support critical regions only" +msgstr "Supporta solo aree critiche" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Creare il supporto solo per le regioni critiche, tra cui una estremità " +"tagliente, sbalzo, ecc." + +msgid "Remove small overhangs" +msgstr "Rimuovere piccole sporgenze" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "" +"Rimuovere le piccole sporgenze che eventualmente non necessitano di supporti." + +msgid "Top Z distance" +msgstr "Distanza Z superiore" + +msgid "The z gap between the top support interface and object" +msgstr "" +"Determina lo spazio Z gap tra le interfacce supporto superiori e gli oggetti." + +msgid "Bottom Z distance" +msgstr "Distanza Z inferiore" + +msgid "The z gap between the bottom support interface and object" +msgstr "Lo spazio z gap tra l'interfaccia supporto inferiore e l'oggetto" + +msgid "Support/raft base" +msgstr "Base supporto/raft" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filamento per stampare basi di supporto e raft. \"Predefinito\" indica che " +"non viene utilizzato alcun filamento specifico per il supporto e viene " +"utilizzato il filamento corrente" + +msgid "Avoid interface filament for base" +msgstr "Evitare di usare filamento di interfaccia per la base" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Se possibile, evitare di utilizzare il filamento dell'interfaccia di " +"supporto per stampare la base dello stesso. " + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Larghezza della linea di supporto. Se espresso come %, verrà calcolato sul " +"diametro del nozzle." + +msgid "Interface use loop pattern" +msgstr "Loop pattern interface" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Copre con anelli il layer superiore del supporto a contatto. Disattivato per " +"impostazione predefinita." + +msgid "Support/raft interface" +msgstr "Interfaccia supporto/raft" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filamento per la stampa delle interfacce di supporto. \"Predefinito\" " +"significa che non esiste un filamento specifico per l'interfaccia di " +"supporto e che verrà utilizzato il filamento corrente." + +msgid "Top interface layers" +msgstr "Layer superiori di interfaccia " + +msgid "Number of top interface layers" +msgstr "Indica il numero di layer di interfaccia superiore." + +msgid "Bottom interface layers" +msgstr "Layer inferiori di interfaccia " + +msgid "Number of bottom interface layers" +msgstr "Numero di livelli di interfaccia inferiori" + +msgid "Same as top" +msgstr "Come quello superiore" + +msgid "Top interface spacing" +msgstr "Spaziatura interfaccia superiore" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "Spaziatura linee interfaccia. 0 significa interfaccia solida" + +msgid "Bottom interface spacing" +msgstr "Spaziatura interfaccia inferiore" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "Spaziatura linee interfaccia di fondo. 0 significa interfaccia solida" + +msgid "Speed of support interface" +msgstr "Indica la velocità per le interfacce di supporto." + +msgid "Base pattern" +msgstr "Trama base" + +msgid "Line pattern of support" +msgstr "Questo è la trama lineare del supporto." + +msgid "Rectilinear grid" +msgstr "Griglia rettilinea" + +msgid "Hollow" +msgstr "Svuota" + +msgid "Interface pattern" +msgstr "Trama interfaccia" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Questo è la Trama lineare per le interfacce di supporto. Il modello " +"predefinito per le interfacce di supporto non solubili è rettilineo mentre " +"il modello predefinito per le interfacce di supporto solubili è concentrico." + +msgid "Rectilinear Interlaced" +msgstr "Rettilineo Interlacciato" + +msgid "Base pattern spacing" +msgstr "Spazio trama base" + +msgid "Spacing between support lines" +msgstr "Questo determina la spaziatura tra le linee di supporto." + +msgid "Normal Support expansion" +msgstr "Espansione normale dei supporti" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "" +"Espandere (+) o restringere (-) la portata orizzontale del supporto normale" + +msgid "Speed of support" +msgstr "Indica la velocità del supporto." + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"Stile e forma del supporto. Per il supporto normale, proiettare i supporti " +"in una griglia regolare creerà supporti più stabili (impostazione " +"predefinita), mentre le torri di supporto aderenti risparmieranno materiale " +"e ridurranno le cicatrici degli oggetti.\n" +"Per il supporto dell'albero, lo stile sottile e organico fonderà i rami in " +"modo più aggressivo e risparmierà molto materiale (organico predefinito), " +"mentre lo stile ibrido creerà una struttura simile al supporto normale sotto " +"grandi sporgenze piatte." + +msgid "Snug" +msgstr "Aderenti" + +msgid "Tree Slim" +msgstr "Albero Slim" + +msgid "Tree Strong" +msgstr "Albero Forte" + +msgid "Tree Hybrid" +msgstr "Albero ibrido" + +msgid "Organic" +msgstr "Organico" + +msgid "Independent support layer height" +msgstr "Altezza layer di supporto indipendente" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Il layer di supporto utilizza l'altezza layer indipendentemente dal layer " +"dell'oggetto. Questo serve a supportare la personalizzazione di z-gap e " +"ridurre il tempo di stampa. Questa opzione non puó essere utilizzata quando " +"la Prime Tower è abilitata." + +msgid "Threshold angle" +msgstr "Angolo di soglia" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Il supporto sarà generato per le sporgenze il cui angolo di inclinazione è " +"inferiore alla soglia." + +msgid "Tree support branch angle" +msgstr "Angolo ramo supporti ad albero" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Questa determina l'angolo massimo di sporgenza che i rami del supporto ad " +"albero possono raggiungere. Se l'angolo viene aumentato, i rami possono " +"essere stampati più orizzontalmente, permettendo loro di arrivare più " +"lontano." + +msgid "Preferred Branch Angle" +msgstr "Angolo di diramazione preferito" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"L'angolo di inclinazione preferito delle ramificazioni, quando non devono " +"evitare il modello. Utilizzare un angolo più basso per renderli più " +"verticali e più stabili. Utilizzare un angolo più alto per far sì che le " +"ramificazioni si uniscano più velocemente." + +msgid "Tree support branch distance" +msgstr "Distanza ramo supporti ad albero" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"Questa determina la distanza tra i nodi di supporto dell'albero vicini." + +msgid "Branch Density" +msgstr "Densità Ramificazioni" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"Regola la densità della struttura di supporto utilizzata per generare le " +"punte delle ramificazioni. Un valore più alto produce sporgenze migliori, ma " +"i supporti sono più difficili da rimuovere; si consiglia quindi di abilitare " +"l'interfaccia di supporto superiore invece di impostare un valore elevato di " +"densità delle ramificazioni, se sono necessarie interfacce dense." + +msgid "Adaptive layer height" +msgstr "Altezza del livello adattivo" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"L'attivazione di questa opzione significa che l'altezza del layer di " +"supporto dell'albero, ad eccezione del primo, verrà calcolata " +"automaticamente " + +msgid "Auto brim width" +msgstr "Larghezza automatica del bordo" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"Abilitando questa opzione, la larghezza del brim per il supporto dell'albero " +"verrà calcolata automaticamente" + +msgid "Tree support brim width" +msgstr "Larghezza brim supporto ad albero" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "Distanza dal ramo dell'albero alla linea di bordo più esterna" + +msgid "Tip Diameter" +msgstr "Diametro della punta" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Diametro della punta delle ramificazioni per i supporti organici." + +msgid "Tree support branch diameter" +msgstr "Diametro ramo supporti ad albero" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Questa determina il diametro iniziale dei nodi di supporto." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Angolo del diametro della diramazione" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"L'angolo del diametro delle ramificazioni che diventano gradualmente più " +"spesse verso il basso. Un angolo pari a 0 fa sì che le ramificazioni abbiano " +"uno spessore uniforme per tutta la loro lunghezza. Un angolo un po' più " +"ampio può aumentare la stabilità del supporto organico." + +msgid "Branch Diameter with double walls" +msgstr "Diametro diramazioni con pareti doppie" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"Le ramificazioni con un'area superiore all'area di un cerchio di questo " +"diametro verranno stampate con pareti doppie per garantire la stabilità. " +"Imposta questo valore a zero per non avere pareti doppie." + +msgid "Support wall loops" +msgstr "Loop parete supporto" + +msgid "This setting specify the count of walls around support" +msgstr "Questa impostazione specifica il numero di pareti intorno al supporto" + +msgid "Tree support with infill" +msgstr "Riempimento supporti ad albero" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Questa impostazione specifica se aggiungere il riempimento all'interno di " +"grandi cavità del supporto dell'albero" + +msgid "Activate temperature control" +msgstr "Attiva il controllo della temperatura" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Abilitare questa opzione per il controllo della temperatura della camera. Un " +"comando M191 verrà aggiunto prima di \"machine_start_gcode\"\n" +"Comandi G-code: M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "Temperatura della camera di stampa" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Una temperatura della camera più elevata può aiutare a sopprimere o ridurre " +"la deformazione e potenzialmente portare a una maggiore forza di adesione " +"tra gli strati per materiali ad alta temperatura come ABS, ASA, PC, PA e " +"così via. Allo stesso tempo, la filtrazione dell'aria di ABS e ASA " +"peggiorerà. Mentre per PLA, PETG, TPU, PVA e altri materiali a bassa " +"temperatura, la temperatura effettiva della camera non dovrebbe essere " +"elevata per evitare intasamenti, quindi 0 che sta per spegnimento è " +"altamente raccomandato" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Temperatura del nozzle dopo il primo layer" + +msgid "Detect thin wall" +msgstr "Rileva pareti sottili" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Questo rileva pareti sottili che non possono contenere due righe e utilizza " +"una sola riga per la stampa. Potrebbe non essere stampato altrettanto bene " +"perché non è un circuito chiuso." + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Questo G-code viene inserito al cambio filamento, compresi i comandi T per " +"attivare il cambio utensile." + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "" +"Questo gcode viene inserito quando viene modificato il ruolo di estrusione" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Larghezza della linea per le superfici superiori. Se espresso come %, verrà " +"calcolato sul diametro del nozzle." + +msgid "Speed of top surface infill which is solid" +msgstr "Indica la velocità per il riempimento superficie superiore solida." + +msgid "Top shell layers" +msgstr "Layer guscio superiore" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Indica il numero di layer solidi del guscio superiore, compreso il layer " +"superficiale superiore. Se lo spessore calcolato con questo valore è più " +"sottile dello spessore del guscio superiore, i layer del guscio superiore " +"verranno aumentati." + +msgid "Top solid layers" +msgstr "Layer solidi superiori" + +msgid "Top shell thickness" +msgstr "Spessore guscio superiore" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"Il numero di layer solidi superiori viene aumentato durante lo slicing se lo " +"spessore calcolato dai layer del guscio superiore è più sottile di questo " +"valore. In questo modo si può evitare di avere un guscio troppo sottile " +"quando l'altezza del layer è piccola. Il valore 0 indica che questa " +"impostazione è disattivata e che lo spessore del guscio superiore è " +"determinato in modo assoluto dai layer del guscio superiore." + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Indica la Velocità di spostamento più rapida e senza estrusione" + +msgid "Wipe while retracting" +msgstr "Pulisci durante la retrazione" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Questo sposta il nozzle lungo l'ultimo percorso di estrusione quando si " +"ritrae per pulire il materiale fuoriuscito dal nozzle. In questo modo è " +"possibile ridurre al minimo i blob quando si stampa una nuova parte dopo lo " +"spostamento." + +msgid "Wipe Distance" +msgstr "Distanza pulizia" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"Scrivi per quanto tempo l'ugello si sposterà lungo l'ultimo percorso quando " +"si ritrae. \n" +"\n" +"A seconda della durata dell'operazione di pulizia, della velocità e della " +"durata delle impostazioni di retrazione dell'estrusore/filamento, potrebbe " +"essere necessario un movimento di retrazione per ritrarre il filamento " +"rimanente. \n" +"\n" +"L'impostazione di un valore nella quantità di retrazione prima della " +"cancellazione di seguito eseguirà qualsiasi retrazione in eccesso prima " +"della cancellazione, altrimenti verrà eseguita dopo." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"La torre di pulizia può essere utilizzata per pulire i residui sul nozzle e " +"stabilizzare la pressione della camera all'interno del nozzle al fine di " +"evitare difetti estetici durante la stampa." + +msgid "Purging volumes" +msgstr "Volumi di spurgo" + +msgid "Flush multiplier" +msgstr "Moltiplicatore spurgo" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"I volumi di spurgo effettivi sono pari al moltiplicatore di spurgo " +"moltiplicato per i volumi di spurgo indicati nella tabella." + +msgid "Prime volume" +msgstr "Volume primario" + +msgid "The volume of material to prime extruder on tower." +msgstr "Indica il volume materiale da usare per la Prime Tower." + +msgid "Width of prime tower" +msgstr "Indica la larghezza della Prime Tower." + +msgid "Wipe tower rotation angle" +msgstr "Angolo di rotazione della torre di pulitura" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Angolo di rotazione della torre di pulitura rispetto all'asse X." + +msgid "Stabilization cone apex angle" +msgstr "Angolo del cono di stabilizzazione" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Angolo all'apice del cono utilizzato per stabilizzare la torre di pulitura. " +"Un angolo maggiore significa una base più ampia." + +msgid "Wipe tower purge lines spacing" +msgstr "Spaziatura delle linee di spurgo della torre di pulitura" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Spaziatura delle linee di spurgo sulla torre di pulitura." + +msgid "Maximum wipe tower print speed" +msgstr "" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" + +msgid "Wipe tower extruder" +msgstr "Estrusore torre di pulitura" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"L'estrusore da utilizzare per la stampa del perimetro della torre di " +"pulitura. Impostare su 0 per utilizzare quello attualmente disponibile " +"(sarebbe preferibile quello non solubile)." + +msgid "Purging volumes - load/unload volumes" +msgstr "Volumi di spurgo - volumi di carico/scarico" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"Questo vettore salva il volume necessario per cambiare da/a ogni strumento " +"usato per la torre di pulitura. Questi valori vengono usati per semplificare " +"la creazione dei volumi di spurgo completi." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Lo spurgo dopo il cambio del filamento verrà eseguito all'interno dei " +"riempimenti degli oggetti. Ciò può ridurre la quantità di rifiuti e ridurre " +"il tempo di stampa. Se le pareti sono stampate con filamenti trasparenti, il " +"riempimento a colori misti sarà visibile. Non avrà effetto a meno che la " +"Prime Tower non sia abilitata." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"Lo spurgo dopo il cambio del filamento verrà eseguito all'interno del " +"supporto degli oggetti. Ciò può ridurre la quantità di rifiuti e ridurre il " +"tempo di stampa. Non avrà effetto a meno che non sia abilitata la Prime " +"Tower." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Questo oggetto viene utilizzato per spurgare il nozzle dopo un cambio " +"filamento per risparmiare filamento e ridurre il tempo di stampa. I colori " +"degli oggetti saranno mescolati. Non avrà effetto se non è abilitata la " +"Prime Tower." + +msgid "Maximal bridging distance" +msgstr "Distanza massima bridging" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "Distanza massima tra supporti in sezioni a riempimento sparso." + +msgid "X-Y hole compensation" +msgstr "Compensazione foro X-Y" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"I fori negli oggetti vengono ingranditi o rimpiccioliti nel piano XY in base " +"al valore impostato. Un valore positivo ingrandisce i fori mentre un valore " +"negativo rimpicciolisce i fori. Questa funzione viene utilizzata per " +"regolare leggermente le dimensioni quando gli oggetti presentano problemi di " +"assemblaggio." + +msgid "X-Y contour compensation" +msgstr "Compensazione contorni X-Y" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"Il contorno degli oggetti viene ingrandito o rimpicciolito nel piano XY in " +"base al valore impostato. I valori positivi ingrandiscono i contorni e " +"quelli negativi li rimpiccioliscono. Questa funzione viene utilizzata per " +"regolare leggermente le dimensioni quando gli oggetti presentano problemi di " +"assemblaggio." + +msgid "Convert holes to polyholes" +msgstr "Conversione di fori in polifori" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Cercare fori quasi circolari che si estendono su più di un layer e " +"convertire la geometria in polifori. Utilizzare la dimensione del nozzle e " +"il diametro (più grande) per calcolare il poliforo.\n" +"Vedi http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "Margine di rilevamento poliforo" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Defezione massima di un punto rispetto al raggio stimato del cerchio.\n" +"Poiché i cilindri vengono spesso esportati come triangoli di dimensioni " +"variabili, i punti potrebbero non trovarsi sulla circonferenza del cerchio. " +"Questa impostazione consente di ampliare il rilevamento.\n" +"In mm o in % of il raggio." + +msgid "Polyhole twist" +msgstr "Torsione poliforo" + +msgid "Rotate the polyhole every layer." +msgstr "Ruotare il poliforo in ogni strato." + +msgid "G-code thumbnails" +msgstr "Miniature G-code" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Dimensioni delle immagini da memorizzare in file .gcode e .sl1 / .sl1s, nel " +"seguente formato: \"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "Formato miniature del G-code" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Formato delle miniature del G-code: PNG per la migliore qualità, JPG per la " +"dimensione più piccola, QOI per il firmware con poca memoria" + +msgid "Use relative E distances" +msgstr "Usa distanze E relative" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"L'estrusione relativa è consigliata quando si utilizza l'opzione " +"\"label_objects\". Alcuni estrusori funzionano meglio con questa opzione " +"unckecked (modalità di estrusione assoluta). La torre di pulizia è " +"compatibile solo con la modalità relativa. È consigliato sulla maggior parte " +"delle stampanti. Il valore predefinito è selezionato" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"La classica generazione di pareti produce pareti con larghezza di estrusione " +"costante e per aree molto sottili viene utilizzato il riempimento degli " +"spazi vuoti. Il motore Arachne produce pareti con larghezza di estrusione " +"variabile." + +msgid "Classic" +msgstr "Classico" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Lunghezza transizione parete" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Quando si passa da un numero di pareti diverso all'altro, man mano che il " +"pezzo diviene più sottile, viene assegnata una certa quantità di spazio per " +"dividere o unire i segmenti di parete. Viene espressa in percentuale " +"rispetto al diametro del nozzle." + +msgid "Wall transitioning filter margin" +msgstr "Margine filtro transizione parete" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Evita la transizione avanti e indietro tra una parete extra e una in meno. " +"Questo margine estende l'intervallo di estrusione che segue a [Larghezza " +"minima parete - margine, 2 * Larghezza minima parete + margine]. L'aumento " +"di questo margine riduce il numero di transizioni, il che riduce il numero " +"di avvii/arresti dell'estrusione e il tempo di viaggio. Tuttavia, una grande " +"variazione della larghezza di estrusione può portare a problemi di sotto-" +"estrusione o sovra-estrusione. È espresso in percentuale rispetto al " +"diametro delnozzle" + +msgid "Wall transitioning threshold angle" +msgstr "Angolo soglia transizione parete" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Quando si creano transizioni tra pareti in numero pari e dispari. Una forma " +"a cuneo con un angolo superiore a questa impostazione non avrà transizioni e " +"non verranno stampate pareti al centro per riempire lo spazio rimanente. " +"Riducendo questa impostazione, si riduce il numero e la lunghezza delle " +"pareti centrali, ma si possono lasciare spazi vuoti o sovraestrusi" + +msgid "Wall distribution count" +msgstr "Conteggio distribuzione parete" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"Il numero di pareti, contati a partire dal centro, sui quali deve essere " +"distribuita la variazione. Valori più bassi indicano che le pareti esterne " +"non cambiano in larghezza" + +msgid "Minimum feature size" +msgstr "Dimensione minima caratteristica" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Spessore minimo elementi sottili. Gli elementi del modello più sottili di " +"questo valore non verranno stampati, mentre le più spesse della dimensione " +"minima verranno ampliate fino alla larghezza minima della parete. È " +"espresso in percentuale rispetto al diametro del nozzle" + +msgid "Minimum wall length" +msgstr "Lunghezza minima della parete" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"Regolare questo valore per evitare la stampa di pareti corte e non chiuse, " +"che potrebbero aumentare il tempo di stampa. Valori più alti rimuovono muri " +"più numerosi e più lunghi.\n" +"\n" +"NOTA: le superfici inferiore e superiore non saranno influenzate da questo " +"valore per evitare spazi visivi sul lato esterno del modello. Regola " +"\"Soglia di una parete\" nelle impostazioni avanzate di seguito per regolare " +"la sensibilità di ciò che è considerato una superficie superiore. 'Una " +"soglia muro' è visibile solo se questa impostazione è impostata al di sopra " +"del valore predefinito di 0,5 o se è abilitata l'opzione Superfici superiori " +"a parete singola." + +msgid "First layer minimum wall width" +msgstr "Larghezza minima della parete del primo strato" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"Si consiglia di impostare la larghezza minima della parete da utilizzare per " +"il primo strato alla stessa dimensione del nozzle. Si prevede che questo " +"aggiustamento migliorerà l'adesione." + +msgid "Minimum wall width" +msgstr "Larghezza minima parete" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Larghezza della parete che sostituirà gli elementi sottili (in base alla " +"dimensione minima dell'elemento) del modello. Se la larghezza minima della " +"parete è più sottile dello spessore dell'elemento, la parete diventerà " +"spessa quanto l'elemento stesso. È espresso in percentuale rispetto al " +"diametro del nozzle" + +msgid "Detect narrow internal solid infill" +msgstr "Rileva riempimento solido interno stretto" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Questa rileva automaticamente le aree interne strette di riempimento solido. " +"Se abilitato, la trama concentrica verrà utilizzato per l'area per " +"velocizzare la stampa. Altrimenti, la trama rettilinea verrà utilizzata per " +"impostazione predefinita." + +msgid "invalid value " +msgstr "Valore non valido " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Valore non valido quando la modalità vaso a spirale è abilitata: " + +msgid "too large line width " +msgstr "larghezza della linea troppo grande " + +msgid " not in range " +msgstr " fuori portata " + +msgid "Minimum save" +msgstr "Salvataggio minimo" + +msgid "export 3mf with minimum size." +msgstr "Esporta 3MF con dimensione minima." + +msgid "No check" +msgstr "Nessun controllo" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"Non eseguire alcun controllo di validità, come il controllo dei conflitti di " +"percorso del G-code." + +msgid "Ensure on bed" +msgstr "Accerta che sia sul piano" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Sollevare l'oggetto sopra il letto quando è parzialmente sotto. Disabilitato " +"per impostazione predefinita" + +msgid "Orient Options" +msgstr "Opzioni di orientamento" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "Opzioni di orientamento: 0-disabilita, 1-abilita, altri-auto" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Angolo di rotazione attorno all'asse Z in gradi." + +msgid "Rotate around Y" +msgstr "Ruota attorno ad Y" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Angolo di rotazione sull'asse Y in gradi." + +msgid "Data directory" +msgstr "Directory dati" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Carica e archivia le impostazione in una data cartella. Questo è utile per " +"mantenere diversi profili o aggiungere configurazioni da un archivio di rete." + +msgid "Load custom gcode" +msgstr "Carica gcode personalizzato" + +msgid "Load custom gcode from json" +msgstr "Carica gcode personalizzato da json" + +msgid "Current z-hop" +msgstr "Z-hop corrente" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "" +"Contiene gli z-hop presenti all'inizio del blocco di G-code personalizzato." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Posizione dell'estrusore all'inizio del blocco di G-code personalizzato. Se " +"il G-code personalizzato si sposta da un'altra parte, dovrebbe scrivere in " +"questa variabile in modo che PrusaSlicer sappia da dove proviene quando " +"riprende il controllo." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"Stato di retrazione all'inizio del blocco di G-code personalizzato. Se il G-" +"code personalizzato sposta l'asse dell'estrusore, deve scrivere su questa " +"variabile in modo che PrusaSlicer effettui correttamente la deretrazione " +"quando riprende il controllo." + +msgid "Extra deretraction" +msgstr "Deretrazione aggiuntiva" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" +"Attualmente è previsto un priming aggiuntivo dell'estrusore dopo la " +"deretrazione." + +msgid "Current extruder" +msgstr "Estrusore attuale" + +msgid "Zero-based index of currently used extruder." +msgstr "Indice a base zero dell'estrusore attualmente utilizzato." + +msgid "Current object index" +msgstr "Indice dell'oggetto corrente" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Specifico per la stampa sequenziale. Indice a base zero dell'oggetto " +"attualmente stampato." + +msgid "Has wipe tower" +msgstr "Ha una torre di pulitura" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Se la torre di pulitura viene generata o meno nella stampa." + +msgid "Initial extruder" +msgstr "Estrusore iniziale" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Indice a base zero del primo estrusore utilizzato nella stampa. Come " +"initial_tool." + +msgid "Initial tool" +msgstr "Strumento iniziale" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Indice a base zero del primo estrusore utilizzato nella stampa. Come " +"initial_extruder." + +msgid "Is extruder used?" +msgstr "Viene usato l'estrusore?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" +"Vettore di booleani che indica se un determinato estrusore viene utilizzato " +"nella stampa." + +msgid "Volume per extruder" +msgstr "Volume per estrusore" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" +"Volume totale di filamento estruso per estrusore durante l'intera stampa." + +msgid "Total toolchanges" +msgstr "Totale cambi utensile" + +msgid "Number of toolchanges during the print." +msgstr "Numero di cambi strumenti durante la stampa." + +msgid "Total volume" +msgstr "Volume totale" + +msgid "Total volume of filament used during the entire print." +msgstr "Volume totale di filamento utilizzato durante l'intera stampa." + +msgid "Weight per extruder" +msgstr "Peso per estrusore" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" +"Peso per estrusore estruso durante l'intera stampa. Calcolato dal valore " +"filament_density in Impostazioni filamento." + +msgid "Total weight" +msgstr "Peso totale" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" +"Peso totale della stampa. Calcolato dal valore filament_density in " +"Impostazioni filamento." + +msgid "Total layer count" +msgstr "Numero totale di layer" + +msgid "Number of layers in the entire print." +msgstr "Numero di layer dell'intera stampa." + +msgid "Number of objects" +msgstr "Numero di oggetti" + +msgid "Total number of objects in the print." +msgstr "Numero totale di oggetti nella stampa." + +msgid "Number of instances" +msgstr "Numero di istanze" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" +"Numero totale di istanze di oggetti nella stampa, sommato a tutti gli " +"oggetti." + +msgid "Scale per object" +msgstr "Scala per oggetto" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"Contiene una stringa con le informazioni sul ridimensionamento applicato ai " +"singoli oggetti. L'indicizzazione degli oggetti è a base zero (il primo " +"oggetto ha indice 0).\n" +"Esempio: 'x:100% y:50% z:100'." + +msgid "Input filename without extension" +msgstr "Nome del file di input senza estensione" + +msgid "Source filename of the first object, without extension." +msgstr "Nome del file sorgente del primo oggetto, senza estensione." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" +"Il vettore ha due elementi: le coordinate x e y del punto. Valori in mm." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" +"Il vettore ha due elementi: le dimensioni x e y della bounding box. Valori " +"in mm." + +msgid "First layer convex hull" +msgstr "Inviluppo convesso del primo strato" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"Vettore di punti dell'inviluppo convesso del primo layer. Ogni elemento ha " +"il seguente formato: '[x, y]' (x e y sono numeri in virgola mobile in mm)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "Angolo inferiore sinistro della bounding box del primo layer" + +msgid "Top-right corner of first layer bounding box" +msgstr "Angolo superiore destro della bounding box del primo layer" + +msgid "Size of the first layer bounding box" +msgstr "Dimensione della bounding box del primo layer" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "Angolo in basso a sinistra della bounding box del piano di stampa" + +msgid "Top-right corner of print bed bounding box" +msgstr "Angolo superiore destro della bounding box del piano di stampa" + +msgid "Size of the print bed bounding box" +msgstr "Dimensione della bounding box del piano di stampa" + +msgid "Timestamp" +msgstr "Timestamp" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "Stringa contenente l'ora corrente nel formato yyyyMMdd-hhmmss." + +msgid "Day" +msgstr "Giorno" + +msgid "Hour" +msgstr "Ora" + +msgid "Minute" +msgstr "Minuto" + +msgid "Print preset name" +msgstr "Nome del preset di stampa" + +msgid "Name of the print preset used for slicing." +msgstr "Nome del preset di stampa utilizzato per lo slicing." + +msgid "Filament preset name" +msgstr "Nome del preset del filamento" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Nomi dei preset di filamento utilizzati per lo slicing. La variabile è un " +"vettore contenente un nome per ogni estrusore." + +msgid "Printer preset name" +msgstr "Nome del preset della stampante" + +msgid "Name of the printer preset used for slicing." +msgstr "Nome del preset della stampante utilizzato per lo slicing." + +msgid "Physical printer name" +msgstr "Nome della stampante fisica" + +msgid "Name of the physical printer used for slicing." +msgstr "Nome della stampante fisica utilizzata per lo slicing." + +msgid "Layer number" +msgstr "Numero del layer" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" +"Indice del layer corrente. Basato su uno (cioè il primo livello è il numero " +"1)." + +msgid "Layer z" +msgstr "Layer Z" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Altezza del layer attuale sopra il piano di stampa, misurata fino alla parte " +"superiore del layer." + +msgid "Maximal layer z" +msgstr "Layer massimo z" + +msgid "Height of the last layer above the print bed." +msgstr "Altezza dell'ultimo layer sopra il piano di stampa." + +msgid "Filament extruder ID" +msgstr "ID estrusore di filamento" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "L'ID dell'estrusore corrente. Come current_extruder." + +msgid "Error in zip archive" +msgstr "Errore nell'archivio zip" + +msgid "Generating walls" +msgstr "Generazione pareti" + +msgid "Generating infill regions" +msgstr "Generazione regioni di riempimento" + +msgid "Generating infill toolpath" +msgstr "Generazione percorso utensile di riempimento" + +msgid "Detect overhangs for auto-lift" +msgstr "Rilevare le sporgenze per il sollevamento automatico" + +msgid "Generating support" +msgstr "Generazione supporto" + +msgid "Checking support necessity" +msgstr "Verifica necessità di supporto" + +msgid "floating regions" +msgstr "regioni galleggianti" + +msgid "floating cantilever" +msgstr "cantilever galleggiante" + +msgid "large overhangs" +msgstr "ampie sporgenze" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Sembra che l'oggetto %s ha %s. Orienta nuovamente l'oggetto o abilita la " +"generazione dei supporti." + +msgid "Optimizing toolpath" +msgstr "Ottimizzazione del percorso utensile" + +msgid "Slicing mesh" +msgstr "Slicing mesh" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"Non sono stati rilevati layers. Ripara il file STL o controlla le dimensioni " +"o lo spessore e riprova.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"La compensazione delle dimensioni XY di un oggetto non verrà utilizzata " +"perché è anche dipinta a colori.\n" +"La compensazione delle dimensioni XY non può essere combinata con la " +"colorazione." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Supporto: generazione percorso utensile al layer %d" + +msgid "Support: detect overhangs" +msgstr "Supporto: rilevamento sporgenze" + +msgid "Support: generate contact points" +msgstr "Supporto: generazione punti di contatto" + +msgid "Support: propagate branches" +msgstr "Supporto: propagazione rami" + +msgid "Support: draw polygons" +msgstr "Supporto: disegno poligoni" + +msgid "Support: generate toolpath" +msgstr "Supporto: generazione percorso utensile" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Supporto: generazione poligoni al layer %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Supporto: correzione dei buchi nel layer %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Supporto: propagazione rami al layer %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Formato file sconosciuto: il file di input deve avere estensione .stl, .obj " +"o .amf(.xml)." + +msgid "Loading of a model file failed." +msgstr "Caricamento file del modello non riuscito." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "Impossibile leggere il file fornito perché è vuoto." + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Formato file sconosciuto: il file di input deve avere estensione .3mf o .zip." +"amf." + +msgid "Canceled" +msgstr "Annullato" + +msgid "load_obj: failed to parse" +msgstr "load_obj: analisi non riuscita" + +msgid "load mtl in obj: failed to parse" +msgstr "load mtl in obj: failed to parse" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "Il file contiene poligoni con più di 4 vertici." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "Il file contiene poligoni con meno di 2 vertici." + +msgid "The file contains invalid vertex index." +msgstr "Il file contiene un indice dei vertici non valido." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Impossibile leggere il file OBJ perché è vuoto." + +msgid "Flow Rate Calibration" +msgstr "Calibrazione della portata" + +msgid "Max Volumetric Speed Calibration" +msgstr "Calibrazione della velocità volumetrica massima" + +msgid "Manage Result" +msgstr "Gestisci risultato" + +msgid "Manual Calibration" +msgstr "Calibrazione manuale" + +msgid "Result can be read by human eyes." +msgstr "Il risultato può essere letto da occhi umani." + +msgid "Auto-Calibration" +msgstr "Calibrazione automatica" + +msgid "We would use Lidar to read the calibration result" +msgstr "Utilizzeremmo il Lidar per leggere il risultato della calibrazione" + +msgid "Prev" +msgstr "Precedente" + +msgid "Recalibration" +msgstr "Ricalibrazione" + +msgid "Calibrate" +msgstr "Calibra" + +msgid "Finish" +msgstr "Fine" + +msgid "How to use calibration result?" +msgstr "Come utilizzare il risultato della calibrazione?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"È possibile modificare il fattore di calibrazione della dinamica del flusso " +"nella modifica del materiale" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"La versione corrente del firmware della stampante non supporta la " +"calibrazione.\n" +"Aggiornare il firmware della stampante." + +msgid "Calibration not supported" +msgstr "Calibrazione non supportata" + +msgid "Error desc" +msgstr "Errore desc" + +msgid "Extra info" +msgstr "Ulteriori informazioni" + +msgid "Flow Dynamics" +msgstr "Dinamica del flusso" + +msgid "Flow Rate" +msgstr "Flusso" + +msgid "Max Volumetric Speed" +msgstr "Massima velocità volumetrica" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Immettere valori validi:\n" +"Valore iniziale: >= %.1f\n" +"Valore finale: <= %.1f\n" +"Valore finale: > Valore iniziale\n" +"Passo valore: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "Il nome non può essere vuoto." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "Il preset selezionato: %s non è stato trovato." + +msgid "The name cannot be the same as the system preset name." +msgstr "" +"Il nome non può essere uguale al nome della preimpostazione di sistema." + +msgid "The name is the same as another existing preset name" +msgstr "Il nome è lo stesso di un altro nome predefinito esistente" + +msgid "create new preset failed." +msgstr "La creazione di un nuovo preset è fallita." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Sei sicuro di annullare la calibrazione corrente e tornare alla home page?" + +msgid "No Printer Connected!" +msgstr "Nessuna stampante collegata!" + +msgid "Printer is not connected yet." +msgstr "La stampante non è ancora connessa." + +msgid "Please select filament to calibrate." +msgstr "Selezionare il filamento da calibrare." + +msgid "The input value size must be 3." +msgstr "La dimensione del valore di input deve essere 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"This machine type can only hold 16 historical results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" + +msgid "Connecting to printer..." +msgstr "Collegamento alla stampante..." + +msgid "The failed test result has been dropped." +msgstr "Il risultato del test non riuscito è stato eliminato." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "" +"Il risultato della calibrazione di Flow Dynamics è stato salvato nella " +"stampante" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"C'è già un risultato di calibrazione precedente con lo stesso nome: %s. Ne " +"può essere salvato solo uno. Sei sicuro di voler sovrascrivere il risultato " +"precedente?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"This machine type can only hold %d historical results per nozzle. This " +"result will not be saved." + +msgid "Internal Error" +msgstr "Errore interno" + +msgid "Please select at least one filament for calibration" +msgstr "Si prega di selezionare almeno un filamento per la calibrazione" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "" +"Il risultato della calibrazione della portata è stato salvato nella " +"preimpostazione" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"Il risultato della calibrazione della velocità volumetrica massima è stato " +"salvato in un valore preimpostato" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Quando è necessaria la calibrazione della dinamica del flusso" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Ora abbiamo aggiunto la calibrazione automatica per diversi filamenti, che è " +"completamente automatizzata e il risultato verrà salvato nella stampante per " +"un uso futuro. È necessario eseguire la calibrazione solo nei seguenti casi " +"limitati:\n" +"1. Se si introduce un nuovo filamento di marche/modelli diversi o il " +"filamento è umido;\n" +"2. se l'ugello è usurato o sostituito con uno nuovo;\n" +"3. Se la velocità volumetrica massima o la temperatura di stampa vengono " +"modificate nell'impostazione del filamento." + +msgid "About this calibration" +msgstr "Informazioni su questa calibrazione" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "Quando utilizzare la calibrazione della portata" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"Dopo aver utilizzato la calibrazione di Flow Dynamics, potrebbero esserci " +"ancora alcuni problemi di estrusione, ad esempio:\n" +"1. Sovraestrusione: materiale in eccesso sull'oggetto stampato, formazione " +"di bolle o brufoli o strati che sembrano più spessi del previsto e non " +"uniformi.\n" +"2. Sottoestrusione: strati molto sottili, resistenza al riempimento debole o " +"spazi vuoti nello strato superiore del modello, anche quando si stampa " +"lentamente.\n" +"3. Scarsa qualità della superficie: la superficie delle stampe sembra ruvida " +"o irregolare.\n" +"4. Integrità strutturale debole: le stampe si rompono facilmente o non " +"sembrano robuste come dovrebbero essere." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Inoltre, la calibrazione della portata è fondamentale per i materiali " +"schiumogeni come l'LW-PLA utilizzato negli aerei RC. Questi materiali si " +"espandono notevolmente quando vengono riscaldati e la calibrazione fornisce " +"un'utile portata di riferimento." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"La calibrazione della portata misura il rapporto tra i volumi di estrusione " +"previsti e quelli effettivi. L'impostazione predefinita funziona bene nelle " +"stampanti Bambu Lab e nei filamenti ufficiali in quanto sono stati pre-" +"calibrati e messi a punto. Per un filamento normale, di solito non è " +"necessario eseguire una calibrazione della portata, a meno che non si vedano " +"ancora i difetti elencati dopo aver eseguito altre calibrazioni. Per " +"maggiori dettagli, consulta l'articolo wiki." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"La calibrazione automatica della portata utilizza la tecnologia Micro-Lidar " +"di Bambu Lab, misurando direttamente i modelli di calibrazione. Tuttavia, si " +"prega di notare che l'efficacia e l'accuratezza di questo metodo possono " +"essere compromesse con tipi specifici di materiali. In particolare, i " +"filamenti trasparenti o semitrasparenti, con particelle scintillanti o con " +"una finitura altamente riflettente potrebbero non essere adatti a questa " +"calibrazione e possono produrre risultati tutt'altro che desiderabili.\n" +"\n" +"I risultati della calibrazione possono variare a seconda della calibrazione " +"o del filamento. Stiamo ancora migliorando l'accuratezza e la compatibilità " +"di questa calibrazione attraverso aggiornamenti del firmware nel tempo.\n" +"\n" +"Attenzione: La taratura della portata è un processo avanzato, che può essere " +"tentato solo da coloro che ne comprendono appieno lo scopo e le " +"implicazioni. Un uso errato può causare stampe scadenti o danni alla " +"stampante. Assicurati di leggere attentamente e comprendere il processo " +"prima di farlo." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Quando è necessaria la calibrazione della velocità volumetrica massima" + +msgid "Over-extrusion or under extrusion" +msgstr "Sovraestrusione o sottoestrusione" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"La calibrazione della velocità volumetrica massima è consigliata quando si " +"stampa con:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "materiale con notevole ritiro/dilatazione termica, come..." + +msgid "materials with inaccurate filament diameter" +msgstr "materiali con diametro del filamento impreciso" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "" +"Abbiamo trovato il miglior fattore di calibrazione della dinamica del flusso" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Parte della calibrazione non è riuscita! È possibile pulire la piastra e " +"riprovare. Il risultato del test non riuscito verrebbe eliminato." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Ti consigliamo di aggiungere marca, materia, tipo e persino livello di " +"umidità nel Nome" + +msgid "Failed" +msgstr "Fallito" + +msgid "Please enter the name you want to save to printer." +msgstr "Immettere il nome che si desidera salvare nella stampante." + +msgid "The name cannot exceed 40 characters." +msgstr "Il nome non può superare i 40 caratteri." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Verrà salvato solo uno dei risultati con lo stesso nome. Sei sicuro di voler " +"sostituire gli altri risultati?" + +msgid "Please find the best line on your plate" +msgstr "Trova la linea migliore nel tuo piatto" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Prego Individua l'angolo con il grado di estrusione ideale" + +msgid "Input Value" +msgstr "Valore di input" + +msgid "Save to Filament Preset" +msgstr "Salva nel preset del filamento" + +msgid "Preset" +msgstr "Preselezionato" + +msgid "Record Factor" +msgstr "Fattore record" + +msgid "We found the best flow ratio for you" +msgstr "Abbiamo trovato il miglior rapporto di flusso per te" + +msgid "Flow Ratio" +msgstr "Rapporto di flusso" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Immettere un valore valido (rapporto di flusso 0,0 < < 2,0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Immettere il nome del preset che si desidera salvare." + +msgid "Calibration1" +msgstr "Calibrazione1" + +msgid "Calibration2" +msgstr "Calibrazione2" + +msgid "Please find the best object on your plate" +msgstr "Trova l'oggetto migliore nel tuo piatto" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "" +"Riempi il valore sopra il blocco con la superficie superiore più liscia" + +msgid "Skip Calibration2" +msgstr "Salta calibrazione2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "Rapporto di flusso : %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Si prega di scegliere un blocco con la superficie superiore più liscia" + +msgid "Please choose a block with smoothest top surface." +msgstr "" +"Si prega di scegliere un blocco con la superficie superiore più liscia." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "Inserire un valore valido (0 <= Velocità volumetrica massima <= 60)" + +msgid "Calibration Type" +msgstr "Tipo di calibrazione" + +msgid "Complete Calibration" +msgstr "Calibrazione completa" + +msgid "Fine Calibration based on flow ratio" +msgstr "Calibrazione fine in base al rapporto di flusso" + +msgid "Title" +msgstr "Titolo" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Verrà stampato un modello di prova. Si prega di pulire il piatto di stampa e " +"riposizionarlo sul piano riscaldato prima della calibrazione." + +msgid "Printing Parameters" +msgstr "Parametri di stampa" + +msgid "Plate Type" +msgstr "Tipo di piatto" + +msgid "filament position" +msgstr "Posizione del filamento" + +msgid "External Spool" +msgstr "Bobina esterna" + +msgid "Filament For Calibration" +msgstr "Calibrazione per Filamento" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Suggerimenti per la calibrazione dei materiali: \n" +"- Materiali che possono condividere la stessa temperatura del piano " +"riscaldato\n" +"- Diverse marche e famiglie di filamenti (Marca = Bambu, Famiglia = Basic, " +"Matte)" + +msgid "Pattern" +msgstr "Trama" + +msgid "Method" +msgstr "Metodo" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s non è compatibile con %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "" +"Il TPU non è supportato per la calibrazione automatica di Flow Dynamics." + +msgid "Connecting to printer" +msgstr "Collegamento alla stampante" + +msgid "From k Value" +msgstr "Da k Valore" + +msgid "To k Value" +msgstr "Al valore k" + +msgid "Step value" +msgstr "Valore del passaggio" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "" +"Il diametro del nozzle è stato sincronizzato dalle impostazioni della " +"stampante" + +msgid "From Volumetric Speed" +msgstr "Dalla velocità volumetrica" + +msgid "To Volumetric Speed" +msgstr "Velocità volumetrica" + +msgid "Flow Dynamics Calibration Result" +msgstr "Risultato della calibrazione della dinamica del flusso" + +msgid "New" +msgstr "New" + +msgid "No History Result" +msgstr "Nessun risultato della cronologia" + +msgid "Success to get history result" +msgstr "Successo per ottenere il risultato della cronologia" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Aggiornamento dei record storici di calibrazione di Flow Dynamics" + +msgid "Action" +msgstr "Azione" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "This machine type can only hold %d historical results per nozzle." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Modifica calibrazione dinamica flusso (Edit Flow Dynamics)" + +msgid "New Flow Dynamic Calibration" +msgstr "New Flow Dynamic Calibration" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "The filament must be selected." + +msgid "Network lookup" +msgstr "Ricerca network" + +msgid "Address" +msgstr "Indirizzo" + +msgid "Hostname" +msgstr "Nome Host" + +msgid "Service name" +msgstr "Nome servizio" + +msgid "OctoPrint version" +msgstr "Versione OctoPrint" + +msgid "Searching for devices" +msgstr "Ricerca dispositivi" + +msgid "Finished" +msgstr "Finito" + +msgid "Multiple resolved IP addresses" +msgstr "Indirizzi IP multipli risolti" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"Esistono diversi indirizzi IP che risolvono il nome host %1%.\n" +"Selezionare quello da utilizzare." + +msgid "PA Calibration" +msgstr "Calibrazione PA" + +msgid "DDE" +msgstr "Estrusore Diretto" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "Tipo di estrusore" + +msgid "PA Tower" +msgstr "Torre PA" + +msgid "PA Line" +msgstr "Linea PA" + +msgid "PA Pattern" +msgstr "Modello PA" + +msgid "Start PA: " +msgstr "Avvia PA: " + +msgid "End PA: " +msgstr "Fine PA: " + +msgid "PA step: " +msgstr "Incremento PA: " + +msgid "Print numbers" +msgstr "Stampa numeri" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Immettere valori validi:\n" +"Avvia PA: >= 0.0\n" +"Fine PA: > Avvia PA\n" +"Passo PA: >= 0,001)" + +msgid "Temperature calibration" +msgstr "Calibrazione della temperatura" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "TPU (TPU)" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Tipo filamento" + +msgid "Start temp: " +msgstr "Temperatura Iniziale: " + +msgid "End temp: " +msgstr "Temperatura finale: " + +msgid "Temp step: " +msgstr "Incremento di temperatura: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Immettere valori validi:\n" +"Temperatura iniziale: <= 350\n" +"Temperatura finale: >= 170\n" +"Temperatura di inizio > Temperatura di fine + 5)" + +msgid "Max volumetric speed test" +msgstr "Test di velocità volumetrica massima" + +msgid "Start volumetric speed: " +msgstr "Velocità volumetrica iniziale: " + +msgid "End volumetric speed: " +msgstr "Velocità volumetrica finale: " + +msgid "step: " +msgstr "Incrementi: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Immettere valori validi:\n" +"inizio > 0 \n" +"passo >= 0\n" +"fine > inizio + passo)" + +msgid "VFA test" +msgstr "Prova VFA" + +msgid "Start speed: " +msgstr "Velocità di avvio: " + +msgid "End speed: " +msgstr "Velocità finale: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Immettere valori validi:\n" +"Inizio > 10 \n" +"passo >= 0\n" +"fine > inizio + passo)" + +msgid "Start retraction length: " +msgstr "Lunghezza di retrazione iniziale: " + +msgid "End retraction length: " +msgstr "Lunghezza di retrazione finale: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "Invia G-code all’host stampante" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Carica all'Host di stampa con il seguente nome file:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "Usa la barra ( / ) come separatore di cartella se necessario." + +msgid "Upload to storage" +msgstr "Carica nello spazio di archiviazione" + +msgid "Switch to Device tab after upload." +msgstr "" + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "Il nome del file caricato non finisce con \"%s\". Vuoi continuare?" + +msgid "Upload" +msgstr "Carica" + +msgid "Print host upload queue" +msgstr "Coda di caricamento Host di stampa" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Progresso" + +msgid "Host" +msgstr "Host" + +msgctxt "OfFile" +msgid "Size" +msgstr "Dimensione" + +msgid "Filename" +msgstr "Nome file" + +msgid "Cancel selected" +msgstr "Cancella selezione" + +msgid "Show error message" +msgstr "Mostra messaggio d'errore" + +msgid "Enqueued" +msgstr "Messo in coda" + +msgid "Uploading" +msgstr "Caricamento" + +msgid "Cancelling" +msgstr "Annullamento" + +msgid "Error uploading to print host" +msgstr "Errore durante il caricamento dell'host di stampa" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Impossibile eseguire un'operazione booleana sulle parti selezionate" + +msgid "Mesh Boolean" +msgstr "Mesh booleano" + +msgid "Union" +msgstr "Unione" + +msgid "Difference" +msgstr "Differenza" + +msgid "Intersection" +msgstr "Intersezione" + +msgid "Source Volume" +msgstr "Volume sorgente" + +msgid "Tool Volume" +msgstr "Volume dell'utensile" + +msgid "Subtract from" +msgstr "Sottrai da" + +msgid "Subtract with" +msgstr "Sottrai" + +msgid "selected" +msgstr "selezionato" + +msgid "Part 1" +msgstr "Partita #1" + +msgid "Part 2" +msgstr "Partita #2" + +msgid "Delete input" +msgstr "Eliminare l'input" + +msgid "Network Test" +msgstr "网络测试" + +msgid "Start Test Multi-Thread" +msgstr "Avvia test multi-thread" + +msgid "Start Test Single-Thread" +msgstr "Avvia test a thread singolo" + +msgid "Export Log" +msgstr "Esporta Log" + +msgid "Snapmaker Orca Version:" +msgstr "" + +msgid "System Version:" +msgstr "Versione del sistema:" + +msgid "DNS Server:" +msgstr "Server DNS:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "" + +msgid "Test Bing.com" +msgstr "Test Bing.com" + +msgid "Test bing.com:" +msgstr "Test bing.com:" + +msgid "Log Info" +msgstr "Informazioni sul registro" + +msgid "Select filament preset" +msgstr "Seleziona il preset del filamento" + +msgid "Create Filament" +msgstr "Crea filamento" + +msgid "Create Based on Current Filament" +msgstr "Crea in base al filamento corrente" + +msgid "Copy Current Filament Preset " +msgstr "Copia il preset del filamento corrente " + +msgid "Basic Information" +msgstr "Informazioni di base" + +msgid "Add Filament Preset under this filament" +msgstr "Aggiungi il preset del filamento sotto questo filamento" + +msgid "We could create the filament presets for your following printer:" +msgstr "Potremmo creare i preset di filamento per la tua seguente stampante:" + +msgid "Select Vendor" +msgstr "Selezionare Fornitore" + +msgid "Input Custom Vendor" +msgstr "Inserisci fornitore personalizzato" + +msgid "Can't find vendor I want" +msgstr "Non riesco a trovare il fornitore che voglio" + +msgid "Select Type" +msgstr "Selezionare il Tipo" + +msgid "Select Filament Preset" +msgstr "Seleziona il preset del filamento" + +msgid "Serial" +msgstr "Seriale" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "ad es. Base, Opaco, Seta, Marmo" + +msgid "Filament Preset" +msgstr "Preset di filamento" + +msgid "Create" +msgstr "Crea" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Il fornitore non è selezionato, riseleziona il fornitore." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" +"Il fornitore personalizzato non viene inserito, si prega di inserire il " +"fornitore personalizzato." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" o \"Generico\" non possono essere utilizzati come Fornitore per " +"filamenti personalizzati." + +msgid "Filament type is not selected, please reselect type." +msgstr "Il tipo di filamento non è selezionato, riselezionare il tipo." + +msgid "Filament serial is not inputed, please input serial." +msgstr "Il seriale del filamento non è inserito, inserire il seriale." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"Potrebbero essere presenti caratteri da evitare nel fornitore o nell'input " +"seriale del filamento. Si prega di eliminare e inserire nuovamente." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Tutti gli input nel fornitore personalizzato o nel numero di serie sono " +"spazi. Si prega di inserire di nuovo." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "Il venditore non può essere un numero. Si prega di inserire di nuovo." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"Non è stata ancora selezionata una stampante o un Preset. Si prega di " +"selezionarne almeno uno." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"Il nome del filamento %s che hai creato esiste già. \n" +"Se continui nella creazione, il preset creato verrà visualizzato con il suo " +"nome completo. Vuoi continuare?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "" +"Non è stato possibile creare alcuni preset esistenti, come indicato di " +"seguito:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Vuoi riscriverlo?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"Rinomineremo le preimpostazioni come \"Tipo di fornitore seriale @printer " +"selezionato\". \n" +"Per aggiungere il preset per più stampanti, vai alla selezione della " +"stampante" + +msgid "Create Printer/Nozzle" +msgstr "Crea stampante/ugello" + +msgid "Create Printer" +msgstr "Crea stampante" + +msgid "Create Nozzle for Existing Printer" +msgstr "Creazione di un ugello per la stampante esistente" + +msgid "Create from Template" +msgstr "Crea da modello" + +msgid "Create Based on Current Printer" +msgstr "Crea in base alla stampante corrente" + +msgid "Import Preset" +msgstr "Importa Preset" + +msgid "Create Type" +msgstr "Crea tipo" + +msgid "The model is not found, place reselect vendor." +msgstr "" +"La modello non è stato trovato. Si prega di selezionare nuovamente il " +"fornitore." + +msgid "Select Model" +msgstr "Seleziona modello" + +msgid "Select Printer" +msgstr "Seleziona Stampante" + +msgid "Input Custom Model" +msgstr "Inserisci modello personalizzato" + +msgid "Can't find my printer model" +msgstr "Non riesco a trovare il modello della mia stampante" + +msgid "Rectangle" +msgstr "Rettangolo" + +msgid "Printable Space" +msgstr "Spazio di stampa" + +msgid "Hot Bed STL" +msgstr "STL del Piano Riscaldato" + +msgid "Load stl" +msgstr "Carica stl" + +msgid "Hot Bed SVG" +msgstr "SVG del Piano Riscaldato" + +msgid "Load svg" +msgstr "Carica svg" + +msgid "Max Print Height" +msgstr "Altezza massima di stampa" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "Il file supera i %d MB, si prega di importarlo di nuovo." + +msgid "Exception in obtaining file size, please import again." +msgstr "" +"Eccezione nell'ottenere la dimensione del file, si prega di importare di " +"nuovo." + +msgid "Preset path is not find, please reselect vendor." +msgstr "" +"Il percorso preimpostato non viene trovato, riselezionare il fornitore." + +msgid "The printer model was not found, please reselect." +msgstr "Il modello della stampante non è stato trovato, riselezionare." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "Il diametro del nozzle non trovato, riselezionare." + +msgid "The printer preset is not found, place reselect." +msgstr "" +"La configurazione predefinita della stampante non è stata trovata. Per " +"favore, seleziona nuovamente." + +msgid "Printer Preset" +msgstr "Preimpostazione stampante" + +msgid "Filament Preset Template" +msgstr "Modello di preset di filamento" + +msgid "Deselect All" +msgstr "Deseleziona tutto" + +msgid "Process Preset Template" +msgstr "Modello di Impostazioni Predefinite del Processo" + +msgid "Back Page 1" +msgstr "Indietro Pagina 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Non avete ancora scelto l'impostazione predefinita della stampante in base " +"alla quale creare. Si prega di scegliere il fornitore e il modello della " +"stampante" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"Hai inserito un input non valido nella sezione dell'area stampabile nella " +"prima pagina. Controlla prima di crearlo." + +msgid "The custom printer or model is not inputed, place input." +msgstr "" +"La stampante o il modello personalizzato non viene immesso, inserire l'input." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"La configurazione predefinita della stampante che hai creato ha già una " +"configurazione predefinita con lo stesso nome. Vuoi sovrascriverla?\n" +"\tSì: Sovrascrivi la configurazione predefinita della stampante con lo " +"stesso nome, e le configurazioni predefinite del filamento e del processo " +"con lo stesso nome saranno ricreate,\n" +" mentre quelle senza lo stesso nome saranno conservate.\n" +" \tAnnulla: Non creare una configurazione predefinita, torna all'interfaccia " +"di creazione." + +msgid "You need to select at least one filament preset." +msgstr "È necessario selezionare almeno un preset filamento." + +msgid "You need to select at least one process preset." +msgstr "È necessario selezionare almeno un preset di processo." + +msgid "Create filament presets failed. As follows:\n" +msgstr "La creazione dei preset di filamento non è riuscita. Come segue:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "La creazione dei predefiniti di processo non è riuscita. Come segue:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Il fornitore non è stato trovato, si prega di riselezionare." + +msgid "Current vendor has no models, please reselect." +msgstr "Il fornitore attuale non ha modelli, si prega di riselezionare." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"Non sono stati selezionati il fornitore e il modello o non sono stati " +"immessi il fornitore e il modello personalizzati." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"Potrebbero essere presenti caratteri da evitare nel fornitore o nel modello " +"di stampante personalizzata. Si prega di eliminare e inserire nuovamente." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"Tutti gli input nel fornitore o nel modello di stampante personalizzata sono " +"spazi. Si prega di inserire di nuovo." + +msgid "Please check bed printable shape and origin input." +msgstr "" +"Si prega di controllare la forma stampabile del letto e l'input dell'origine." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Non hai ancora selezionato la stampante per sostituire l'ugello, scegli." + +msgid "Create Printer Successful" +msgstr "Creazione di una stampante riuscita" + +msgid "Create Filament Successful" +msgstr "Crea un filamento di successo" + +msgid "Printer Created" +msgstr "Stampante creata" + +msgid "Please go to printer settings to edit your presets" +msgstr "" +"Vai alle impostazioni della stampante per modificare le tue preimpostazioni" + +msgid "Filament Created" +msgstr "Filamento creato" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Se necessario, vai alle impostazioni filamento per modificare i preset.\n" +"Tieni presente che la temperatura del nozzle, la temperatura del piano e la " +"massima velocità volumetrica hanno ciascuna un impatto significativo sulla " +"qualità di stampa. Impostali con attenzione." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" + +msgid "Printer Setting" +msgstr "Impostazione della stampante" + +msgid "Printer config bundle(.orca_printer)" +msgstr "Bundle di configurazione della stampante (.orca_printer)" + +msgid "Filament bundle(.orca_filament)" +msgstr "Bundle filamenti (.orca_filament)" + +msgid "Printer presets(.zip)" +msgstr "Preimpostazioni della stampante (.zip)" + +msgid "Filament presets(.zip)" +msgstr "Preimpostazioni del filamento (.zip)" + +msgid "Process presets(.zip)" +msgstr "Preimpostazioni di processo (.zip)" + +msgid "initialize fail" +msgstr "Inizializzazione non riuscita" + +msgid "add file fail" +msgstr "L'aggiunta del file non è riuscita" + +msgid "add bundle structure file fail" +msgstr "L'aggiunta del file della struttura del bundle non è riuscita" + +msgid "finalize fail" +msgstr "Finalizzazione non riuscita" + +msgid "open zip written fail" +msgstr "apri zip scritto non riuscito" + +msgid "Export successful" +msgstr "Esportazione riuscita" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"La cartella '%s' esiste già nella directory corrente. Vuoi cancellarla e " +"ricostruirla.\n" +"In caso contrario, verrà aggiunto un suffisso temporale e sarà possibile " +"modificare il nome dopo la creazione." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"Stampante e tutte le preimpostazioni di filamento e processo che " +"appartengono alla stampante. \n" +"Può essere condiviso con altri." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Set di preimpostazioni di riempimento dell'utente. \n" +"Può essere condiviso con altri." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Mostrare solo i nomi delle stampanti con modifiche alle impostazioni " +"predefinite della stampante, del filamento e del processo." + +msgid "Only display the filament names with changes to filament presets." +msgstr "" +"Mostrare solo i nomi dei filamenti con modifiche alle impostazioni " +"predefinite del filamento." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Verranno visualizzati solo i nomi delle stampanti con le preimpostazioni " +"della stampante dell'utente e ogni preimpostazione scelta verrà esportata " +"come zip." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Verranno visualizzati solo i nomi dei filamenti con le preimpostazioni dei " +"filamenti dell'utente, \n" +"E tutte le preimpostazioni del filamento utente in ogni nome di filamento " +"selezionato verranno esportate come ZIP." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Verranno visualizzati solo i nomi delle stampanti con le impostazioni " +"predefinite del processo modificate,\n" +" e tutte le impostazioni predefinite del processo dell'utente in ogni nome " +"della stampante selezionato saranno esportate come un file zip." + +msgid "Please select at least one printer or filament." +msgstr "Seleziona almeno una stampante o un filamento." + +msgid "Please select a type you want to export" +msgstr "Seleziona il tipo che desideri esportare" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "Failed to create temporary folder, please try Export Configs again." + +msgid "Edit Filament" +msgstr "Modifica filamento" + +msgid "Filament presets under this filament" +msgstr "Filamento preimpostato sotto questo filamento" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Nota: Se l'unico preset sotto questo filamento viene eliminato, il filamento " +"verrà cancellato dopo aver chiuso la finestra di dialogo." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "I preset ereditati da altri preset non possono essere eliminati" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "I seguenti preset ereditano questo preset." +msgstr[1] "I seguenti preset ereditano questo preset." + +msgid "Delete Preset" +msgstr "Elimina Predefinito" + +msgid "Are you sure to delete the selected preset?" +msgstr "Sei sicuro di voler eliminare il preset selezionato?" + +msgid "Delete preset" +msgstr "Cancella preset" + +msgid "+ Add Preset" +msgstr "+ Aggiungi preset" + +msgid "Delete Filament" +msgstr "Elimina filamento" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Tutti i preset di filamento appartenenti a questo filamento verranno " +"eliminati. \n" +"Se stai utilizzando questo filamento sulla tua stampante, reimposta le " +"informazioni sul filamento per quello slot." + +msgid "Delete filament" +msgstr "Elimina filamento" + +msgid "Add Preset" +msgstr "Aggiungi preset" + +msgid "Add preset for new printer" +msgstr "Aggiungi preimpostazione per la nuova stampante" + +msgid "Copy preset from filament" +msgstr "Copia preset dal filamento" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "" +"La scelta del filamento non trova il preset del filamento, si prega di " +"riselezionarlo" + +msgid "[Delete Required]" +msgstr "[Elimina obbligatorio]" + +msgid "Edit Preset" +msgstr "Modifica preset" + +msgid "For more information, please check out Wiki" +msgstr "Per ulteriori informazioni, consulta Wiki" + +msgid "Collapse" +msgstr "Riduci" + +msgid "Daily Tips" +msgstr "Consigli giornalieri" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "nozzle memorizzato: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Il diametro del nozzle preimpostato non è coerente con il diametro di quello " +"memorizzato. Hai cambiato l'ugello ultimamente?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*La stampa del materiale %s con %s può causare danni al nozzle." + +msgid "Need select printer" +msgstr "Hai bisogno di selezionare la stampante" + +msgid "The start, end or step is not valid value." +msgstr "L'inizio, la fine o il passo non sono valori validi." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Impossibile calibrare: forse perché l'intervallo di valori di calibrazione " +"impostato è troppo ampio o il passo è troppo piccolo" + +msgid "Physical Printer" +msgstr "Stampante Fisica" + +msgid "Print Host upload" +msgstr "Caricamento Host di stampa" + +msgid "Could not get a valid Printer Host reference" +msgstr "Impossibile ottenere un riferimento Host Stampante valido" + +msgid "Success!" +msgstr "Successo!" + +msgid "Are you sure to log out?" +msgstr "Sei sicuro di voler effettuare il logout?" + +msgid "Refresh Printers" +msgstr "Aggiorna Stampanti" + +msgid "View print host webui in Device tab" +msgstr "" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"File HTTPS CA opzionale. È necessario solo se si intende usare un HTTPS con " +"certificato autofirmato." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "File di certificato (*.crt, *.pem)|*.crt;*.pem|All files|*.*" + +msgid "Open CA certificate file" +msgstr "Apri file di certificato CA" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"Su questo sistema, %s utilizza certificati HTTPS provenienti dal sistema " +"Certificate Store o da Keychain." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Per utilizzare un file CA personalizzato, importa il tuo file CA sul " +"Certificate Store / Keychain." + +msgid "Login/Test" +msgstr "" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"Collegamento alle stampanti collegate tramite l'host di stampa fallito." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Tipo di Host di stampa non corrispondente: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "La connessione ad AstroBox funziona correttamente." + +msgid "Could not connect to AstroBox" +msgstr "Impossibile connettere ad AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Nota: è richiesta una versione di AstroBox 1.1.0 o successiva." + +msgid "Connection to Duet works correctly." +msgstr "La connessione a Duet funziona correttamente." + +msgid "Could not connect to Duet" +msgstr "Connessione a Duet fallita" + +msgid "Unknown error occured" +msgstr "Si è verificato un errore sconosciuto" + +msgid "Wrong password" +msgstr "Password errata" + +msgid "Could not get resources to create a new connection" +msgstr "Non sono state trovate le risorse per stabilire una nuova connessione" + +msgid "Upload not enabled on FlashAir card." +msgstr "Caricamento non attivato sulla scheda FlashAir." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "" +"Connessione a FlashAir correttamente funzionante e caricamento abilitato." + +msgid "Could not connect to FlashAir" +msgstr "Impossibile connettersi a FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Nota: è necessaria FlashAir con firmware 2.00.02 o successivo e funzione di " +"caricamento attiva." + +msgid "Connection to MKS works correctly." +msgstr "La connessione a MKS funziona correttamente." + +msgid "Could not connect to MKS" +msgstr "Non è stato possibile connettersi a MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "Connessione con OctoPrint funzionante." + +msgid "Could not connect to OctoPrint" +msgstr "Impossibile connettersi ad OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Nota: è richiesta una versione di OctoPrint 1.1.0 o successiva." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Collegamento a Prusa SL1 / SL1S correttamente funzionante." + +msgid "Could not connect to Prusa SLA" +msgstr "Connessione a Prusa SLA fallita" + +msgid "Connection to PrusaLink works correctly." +msgstr "Il collegamento a PrusaLink funziona correttamente." + +msgid "Could not connect to PrusaLink" +msgstr "Impossibile connettersi a PrusaLink" + +msgid "Storages found" +msgstr "Trovato spazio di archiviazione" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : sola lettura" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : non c'è spazio libero" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" +"Caricamento non riuscito. Non è stato trovato uno spazio di archiviazione " +"adatto su %1%." + +msgid "Connection to Prusa Connect works correctly." +msgstr "Il collegamento a Prusa Connect funziona correttamente." + +msgid "Could not connect to Prusa Connect" +msgstr "Impossibile connettersi a Prusa Connect" + +msgid "Connection to Repetier works correctly." +msgstr "La connessione a Repetier funziona correttamente." + +msgid "Could not connect to Repetier" +msgstr "Impossibile connettersi a Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Nota: è richiesta la versione di Repetier almeno 0.90.0." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"Stato HTTP: %1%\n" +"Corpo messaggio: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"L'analisi della risposta dell'host non è riuscita.\n" +"Corpo del messaggio: \"%1%\"\n" +"Errore: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"L'enumerazione delle stampanti host non è riuscita.\n" +"Corpo messaggio: \"%1%\"\n" +"Errore: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a small layer height, and results in almost negligible layer lines " +"and high print quality. It is suitable for most general printing cases." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. This results in " +"much higher print quality but a much longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height. This results in almost negligible layer lines and " +"slightly longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height. This results in slightly visible layer lines but shorter print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height. This results in almost invisible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost invisible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height. This results in minimal layer lines and higher print quality but " +"longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in minimal layer lines and much higher print quality " +"but much longer print time." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a normal layer height, and results in average layer lines and print " +"quality. It is suitable for most printing cases." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but slightly shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in less apparent layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost negligible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and longer print time." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in much more apparent layer lines and much lower print " +"quality, but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and slightly higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"It has a very big layer height, and results in very apparent layer lines, " +"low print quality and shorter printing time." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height. This results in very apparent layer lines and much lower print " +"quality but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height. This results in extremely apparent layer lines and much lower " +"print quality but much shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height. This results in slightly less but still apparent layer " +"lines and slightly higher print quality, but longer print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height. This results in less but still apparent layer lines and slightly " +"higher print quality, but longer print time in some cases." + +msgid "Connected to Obico successfully!" +msgstr "" + +msgid "Could not connect to Obico" +msgstr "" + +msgid "Connected to SimplyPrint successfully!" +msgstr "" + +msgid "Could not connect to SimplyPrint" +msgstr "" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" + +msgid "Connection to Flashforge works correctly." +msgstr "" + +msgid "Could not connect to Flashforge" +msgstr "" + +msgid "The provided state is not correct." +msgstr "" + +msgid "Please give the required permissions when authorizing this application." +msgstr "" + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" + +msgid "User cancelled." +msgstr "" + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"Parete precisa\n" +"Sapevi che l'accensione precisa della parete può migliorare la precisione e " +"l'uniformità degli strati?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"Modalità sandwich\n" +"Sapevi che puoi utilizzare la modalità sandwich (interno-esterno-interno) " +"per migliorare la precisione e l'uniformità degli strati se il tuo modello " +"non presenta sporgenze molto ripide?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"Temperatura della camera\n" +"Sapevi che Snapmaker Orca supporta la temperatura della camera?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"Taratura\n" +"Sapevi che calibrare la tua stampante può fare miracoli? Dai un'occhiata " +"alla nostra amata soluzione di calibrazione in Snapmaker Orca." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"Ventilatore ausiliario\n" +"Sapevi che Snapmaker Orca supporta la ventola di raffreddamento delle parti " +"ausiliarie?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"Filtrazione dell'aria/ventilatore di scarico\n" +"Sapevi che Snapmaker Orca può supportare la filtrazione dell'aria/Exhaust Fan?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"Finestra G-code\n" +"È possibile attivare/disattivare la finestra del codice G premendo il tasto " +"C ." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"Passare da un'area di lavoro all'altra\n" +"È possibile passare dall'area di lavoro Prepara a quella " +"Anteprima e viceversa premendo il tasto TAB ." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"Come utilizzare le scorciatoie da tastiera\n" +"Sapevi che Snapmaker Orca offre un'ampia gamma di scorciatoie da tastiera e " +"operazioni di scena 3D." + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"Retromarcia su dispari\n" +"Sapevi che la retromarcia su elementi dispari può migliorare " +"significativamente la qualità della superficie delle tue sporgenze?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Strumento di taglio\n" +"Sapevate che è possibile tagliare un modello in qualsiasi angolazione e " +"posizione con l'utensile di taglio?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Correggi modello\n" +"Sapevi che puoi riparare un modello 3D danneggiato per evitare molti " +"problemi di slicing sul sistema Windows?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Timelapse\n" +"Sapevi che puoi generare un video timelapse durante ogni stampa?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Disposizione automatica\n" +"Sapevi che puoi disporre automaticamente tutti gli oggetti del tuo progetto?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Orientamento automatico\n" +"Sapevi che puoi orientare gli oggetti in modo ottimale per la stampa con un " +"semplice clic?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Posiziona su faccia\n" +"Sapevate che è possibile orientare rapidamente un modello in modo che una " +"delle sue facce si trovi sul piatto di stampa? Selezionare la funzione " +"\"Posiziona su faccia\" o premere il tasto F ." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Elenco oggetti\n" +"Sapevate che è possibile visualizzare tutti gli oggetti/parti in un elenco e " +"modificare le impostazioni per ciascun oggetto/parte?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"Funzionalità di ricerca\n" +"Sapevi che puoi usare lo strumento di ricerca per trovare rapidamente " +"un'impostazione specifica di Snapmaker Orca?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"Semplifica modello\n" +"Sapevi che puoi ridurre il numero di triangoli in una mesh utilizzando la " +"funzione Semplifica mesh? Fare clic con il pulsante destro del mouse sul " +"modello e selezionare Semplifica modello." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Tabella Parametri Slicing\n" +"Sapevate che è possibile visualizzare tutti gli oggetti/parti di una tabella " +"e modificare le impostazioni di ciascun oggetto/parte?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Dividi in oggetti/parti\n" +"Sapevi che è possibile dividere un oggetto grande in piccoli oggetti per " +"facilitare la colorazione o la stampa?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"Sottrazione di una parte\n" +"Sapevi che puoi sottrarre una mesh da un'altra usando il modificatore Parte " +"negativa? In questo modo è possibile, ad esempio, creare fori facilmente " +"ridimensionabili direttamente in Snapmaker Orca." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"PASSO\n" +"Sapevi che puoi migliorare la tua qualità di stampa tagliando un file STEP " +"invece di un STL?\n" +"Snapmaker Orca supporta il sezionamento dei file STEP, fornendo risultati più " +"uniformi rispetto a un STL a risoluzione inferiore. Provateci!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Posizione giunzione Z\n" +"Sapevi che puoi personalizzare la posizione della giunzione Z e persino " +"dipingerla sulla stampa, per averla in una posizione meno visibile? Ciò " +"migliora l'aspetto generale del modello. Dai un'occhiata!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Regolazione precisa del flusso\n" +"Sapevi che la velocità del flusso può essere regolata con precisione per " +"stampe ancora più belle? A seconda del materiale, è possibile migliorare la " +"finitura complessiva del modello stampato effettuando regolazioni precise." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Dividi le stampe in piatti\n" +"Sapevi che puoi dividere un modello con molte parti in singoli piatti pronti " +"per la stampa? Ciò semplificherà il processo di elaborazione di tutte le " +"parti." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Accelera la stampa con l'opzione Layer Adattativo\n" +"Sapevi che puoi stampare un modello ancora più velocemente utilizzando " +"l'opzione Layer Adattativo? Scoprilo!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Pitturare supporti\n" +"Sapevi che è possibile pitturare la posizione dei supporti? Questa funzione " +"consente di posizionare facilmente il materiale di supporto solo sulle " +"sezioni del modello che ne hanno effettivamente bisogno." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Diversi tipi di supporto\n" +"Sapevate che potete scegliere tra diversi tipi di supporto? I supporti ad " +"albero funzionano benissimo per i modelli organici, risparmiando filamento e " +"migliorando la velocità di stampa. Scopriteli!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Stampa di filamento Silk (seta)\n" +"Sapevi che il filamento seta richiede un'attenzione speciale per stampare " +"con successo? Una temperatura più alta e una velocità inferiore sono sempre " +"consigliate per ottenere i migliori risultati." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Brim per una migliore adesione\n" +"Sapevate che quando i modelli stampati hanno una piccola interfaccia di " +"contatto con la superficie di stampa, si consiglia di utilizzare un brim?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Impostare i parametri per più oggetti\n" +"Sapevi che puoi impostare i parametri di elaborazione per tutti gli oggetti " +"selezionati contemporaneamente?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Impila oggetti\n" +"Sapevi che puoi impilare oggetti interi?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Spurga nei supporti/oggetti/riempimenti\n" +"Sapevi che puoi ridurre lo spreco di filamento spurgandolo nei supporti/" +"oggetti/riempimenti durante la sostituzione del filamento?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Migliorare la resistenza\n" +"Sapevate che è possibile utilizzare un maggior numero di anelli a parete e " +"una maggiore densità riempimento per migliorare la resistenza del modello?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Quando è necessario stampare con lo sportello della stampante aperto\n" +"Sapevi che l'apertura dello sportello della stampante può ridurre la " +"probabilità di intasamento dell'estrusore/hotend quando si stampa filamento " +"a temperatura inferiore con una temperatura dell'involucro più elevata. " +"Maggiori informazioni su questo nel Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Evita la deformazione\n" +"Sapevi che quando si stampano materiali soggetti a deformazioni come l'ABS, " +"aumentare in modo appropriato la temperatura del piano riscaldato può " +"ridurre la probabilità di deformazione." + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Immettere un valore valido (K in 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Immettere un valore valido (K in 0~0.3, N in 0.6~2.0)" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "Connessione locale della stampante fallita; Si prega di riprovare." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "I dettagli della calibrazione dinamica del flusso sono disponibili nel " +#~ "nostro wiki.\n" +#~ "\n" +#~ "Di solito la calibrazione non è necessaria. Quando si avvia una stampa a " +#~ "singolo colore/materiale, con l'opzione \"calibrazione dinamica del flusso" +#~ "\" selezionata nel menu di avvio della stampa, la stampante seguirà il " +#~ "vecchio modo, calibrando il filamento prima della stampa; Quando si avvia " +#~ "una stampa multicolore/materiale, la stampante utilizzerà il parametro di " +#~ "compensazione predefinito per il filamento durante ogni cambio di " +#~ "filamento, che avrà un buon risultato nella maggior parte dei casi.\n" +#~ "\n" +#~ "Si prega di notare che ci sono alcuni casi che renderanno il risultato " +#~ "della calibrazione non affidabile: utilizzo di una piastra di texture per " +#~ "eseguire la calibrazione; Il piano di stampa non ha una buona adesione (è " +#~ "consigliato lavarlo o applicare della colla stick!) ... Puoi trovare di " +#~ "più dal nostro wiki.\n" +#~ "\n" +#~ "I risultati della calibrazione hanno un jitter di circa il 10% nel nostro " +#~ "test, il che potrebbe causare un risultato non esattamente lo stesso in " +#~ "ogni calibrazione. Stiamo ancora indagando sulla causa principale per " +#~ "apportare miglioramenti con i nuovi aggiornamenti." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Verrà salvato solo uno dei risultati con lo stesso nome. Si è sicuri di " +#~ "voler sovrascrivere gli altri risultati?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Esiste già un risultato di calibrazione storico con lo stesso nome: %s. " +#~ "Viene salvato solo uno dei risultati con lo stesso nome. Si è sicuri di " +#~ "voler eseguire l'override del risultato cronologico?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Si prega di trovare il cornor con il perfetto grado di estrusione" + +#~ msgid "X" +#~ msgstr "X" + +#~ msgid "Y" +#~ msgstr "Y" + +#~ msgid "" +#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed " +#~ "first, which works best in most cases.\n" +#~ "\n" +#~ "Printing walls first may help with extreme overhangs as the walls have " +#~ "the neighbouring infill to adhere to. However, the infill will slighly " +#~ "push out the printed walls where it is attached to them, resulting in a " +#~ "worse external surface finish. It can also cause the infill to shine " +#~ "through the external surfaces of the part." +#~ msgstr "" +#~ "Ordine di parete/tamponamento. Quando la casella di controllo è " +#~ "deselezionata, i muri vengono stampati per primi, il che funziona meglio " +#~ "nella maggior parte dei casi.\n" +#~ "\n" +#~ "La stampa delle pareti può aiutare con sporgenze estreme poiché le pareti " +#~ "hanno il riempimento vicino a cui aderire. Tuttavia, il riempimento " +#~ "spingerà leggermente fuori le pareti stampate dove è attaccato ad esse, " +#~ "con conseguente peggioramento della finitura superficiale esterna. Può " +#~ "anche far brillare il riempimento attraverso le superfici esterne della " +#~ "parte." + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca è basato su BambuStudio di Bambulab, che è di PrusaSlicer di " +#~ "Prusa Research. PrusaSlicer è di Slic3r di Alessandro Ranellucci e della " +#~ "comunità RepRap" + +#~ msgid "Export &Configs" +#~ msgstr "Esporta &Configurazioni" + +#~ msgid "Infill direction" +#~ msgstr "Direzione riempimento" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Abilita questa funzione per ottenere un file G-code con gli spostamenti " +#~ "circolari in G2 e G3. La tolleranza di adattamento è la stessa della " +#~ "risoluzione" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "Ciò consente di allargare leggermente l'area di riempimento per " +#~ "sovrapporla alle pareti per una migliore adesione. Il valore percentuale " +#~ "è relativo alla larghezza della linea del riempimento." + +#~ msgid "Export Configs" +#~ msgstr "Esporta &Configurazioni" + +#~ msgid "Unload Filament" +#~ msgstr "Scarica Filamento" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Seleziona uno slot AMS, premi \"Carica\" o \"Scarica\" per caricare o " +#~ "scaricare automaticamente il filamento." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "MainBoard" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "- ℃" +#~ msgstr "- °C" + +#~ msgid "0.5" +#~ msgstr "0.5" + +#~ msgid "0.005" +#~ msgstr "0.005" + +#~ msgid "active" +#~ msgstr "attivo" + +#~ msgid "Jump to layer" +#~ msgstr "Vai al layer" + +#~ msgid "Cabin humidity" +#~ msgstr "Umidità della cabina" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "Il verde indica che l'umidità dell'AMS è normale, l'arancione che " +#~ "l'umidità è elevata, il rosso rappresenta un'umidità troppo elevata " +#~ "(igrometro: più basso è, meglio è)." + +#~ msgid "Desiccant status" +#~ msgstr "Stato dell'essiccante" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "Uno stato dell'essiccante inferiore a due barre indica che l'essiccante " +#~ "potrebbe essere inattivo. Si prega di sostituire l'essiccante. (Le barre: " +#~ "più sono alte, meglio è)." + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Nota: quando il coperchio è aperto o la confezione di essiccante viene " +#~ "cambiata, possono essere necessarie ore o una notte per assorbire " +#~ "l'umidità. Anche le basse temperature rallentano il processo. Durante " +#~ "questo periodo, l'indicatore potrebbe non rappresentare la camera con " +#~ "precisione." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Nota: se durante la stampa viene inserito un nuovo filamento, l'AMS non " +#~ "leggerà automaticamente alcuna informazione fino al termine della stampa." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "Successo! G-code esportato in %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Inizializzazione fallita (nessun dispositivo)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Inizializzazione fallita (Nessun dispositivo fotocamera)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "Stampante in fase di caricamento; attendi il completamento del " +#~ "caricamento." + +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "" +#~ "Inizializzazione non riuscita (non supportata nella versione corrente " +#~ "della stampante)!" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Inizializzazione fallita (non accessibile in modalità solo LAN)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "" +#~ "Inizializzazione fallita (indirizzo IP LAN della stampante mancante)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Interrotto [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "Caricamento non riuscito [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "No files [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Caricamento non riuscito [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Impossibile recuperare le informazioni del modello dalla stampante." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Impossibile analizzare le informazioni del modello." + +#~ msgid "Connection lost. Please retry." +#~ msgstr "Connessione persa. Si prega di riprovare." + +#~ msgid "File not exists." +#~ msgstr "Il file non esiste." + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Sono state modificate alcune impostazioni del preset \"%1%\". \n" +#~ "Vuoi mantenere le impostazioni (nuovo valore) dopo aver cambiato i preset?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Sono stati modificati alcuni preset preimpostati. \n" +#~ "Vuoi mantenere le impostazioni (nuovo valore) dopo aver cambiato i preset?" + +#~ msgid " ℃" +#~ msgstr " °C" + +#~ msgid "" +#~ "Please go to filament setting to edit your presets if you need.\n" +#~ "Please note that nozzle temperature, hot bed temperature, and maximum " +#~ "volumetric speed have a significant impact on printing quality. Please " +#~ "set them carefully." +#~ msgstr "" +#~ "Vai alle impostazioni del filamento per modificare le tue impostazioni " +#~ "predefinite se necessario. \n" +#~ "Nota che la temperatura della ugello, la temperatura del piano riscaldato " +#~ "e la velocità volumetrica massima hanno un impatto significativo sulla " +#~ "qualità di stampa. Impostale con attenzione." + +#~ msgid "Studio Version:" +#~ msgstr "Versione Studio:" + +#~ msgid "Test BambuLab" +#~ msgstr "Test BambuLab" + +#~ msgid "Test BambuLab:" +#~ msgstr "Test BambuLab:" + +#~ msgid "Test HTTP" +#~ msgstr "Test HTTP" + +#~ msgid "Test HTTP Service:" +#~ msgstr "Test servizio HTTP:" + +#~ msgid "Test storage" +#~ msgstr "Test Archiviazione" + +#~ msgid "Test Storage Upload:" +#~ msgstr "Test Caricamento dell'archiviazione:" + +#~ msgid "Test storage upgrade" +#~ msgstr "Test l'aggiornamento dell'archiviazione" + +#~ msgid "Test Storage Upgrade:" +#~ msgstr "Test l'aggiornamento dell'archiviazione:" + +#~ msgid "Test storage download" +#~ msgstr "Test Download dell'archiviazione " + +#~ msgid "Test Storage Download:" +#~ msgstr "Test Download dell'archiviazione:" + +#~ msgid "Test plugin download" +#~ msgstr "Test plugin download" + +#~ msgid "Test Plugin Download:" +#~ msgstr "Test Plugin Download:" + +#~ msgid "Test Storage Upload" +#~ msgstr "Test Caricamento dell'archiviazione" + +#~ msgid "" +#~ "Alternate extra wall only works with ensure vertical shell thickness " +#~ "disabled. " +#~ msgstr "" +#~ "L'opzione Parete Aggiuntiva Alternativa funziona solo con la " +#~ "disattivazione dell'opzione Garantisci spessore verticale del guscio" + +#~ msgid "" +#~ "Change these settings automatically? \n" +#~ "Yes - Disable ensure vertical shell thickness and enable alternate extra " +#~ "wall\n" +#~ "No - Dont use alternate extra wall" +#~ msgstr "" +#~ "Modificare automaticamente queste impostazioni? \n" +#~ "Sì - Disabilita Garantisci spessore verticale del guscio e abilita Parete " +#~ "Aggiuntiva Alternativa\n" +#~ "No - Non utilizzare una Parete Aggiuntiva Alternativa" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Aggiunge un riempimento solido in prossimità delle superfici inclinate " +#~ "per garantire lo spessore verticale del guscio (layers solidi superiori e " +#~ "inferiori)." + +#~ msgid "Further reduce solid infill on walls (beta)" +#~ msgstr "Ridurre ulteriormente il riempimento solido sulle pareti (beta)" + +#~ msgid "" +#~ "Further reduces any solid infill applied to walls. As there will be very " +#~ "limited infill supporting solid surfaces, make sure that you are using " +#~ "adequate number of walls to support the part on sloping surfaces.\n" +#~ "\n" +#~ "For heavily sloped surfaces this option is not suitable as it will " +#~ "generate too thin of a top layer and should be disabled." +#~ msgstr "" +#~ "Riduce ulteriormente qualsiasi riempimento solido applicato alle pareti. " +#~ "Poiché le superfici solide di supporto del riempimento saranno molto " +#~ "limitate, assicurarsi di utilizzare un numero adeguato di pareti per " +#~ "sostenere la parte su superfici inclinate.\n" +#~ "\n" +#~ "Per superfici fortemente inclinate, questa opzione non è adatta in quanto " +#~ "genererebbe uno strato superiore troppo sottile e dovrebbe essere " +#~ "disabilitata." + +#~ msgid " " +#~ msgstr " " + +#~ msgid "Text-Rotate" +#~ msgstr "Ruota testo" + +#~ msgid "SVG-Rotate" +#~ msgstr "Ruota SVG" + +#~ msgid "Resize" +#~ msgstr "Ridimensiona" + +#~ msgid "Configuration package updated to " +#~ msgstr "Pacchetto di configurazione aggiornato a " + +#~ msgid "" +#~ "Improve shell precision by adjusting outer wall spacing. This also " +#~ "improves layer consistency." +#~ msgstr "" +#~ "Migliora la precisione del guscio regolando la spaziatura delle pareti " +#~ "esterne. Questo migliora anche la consistenza degli strati." + +#~ msgid "" +#~ "The minimum printing speed for the filament when slow down for better " +#~ "layer cooling is enabled, when printing overhangs and when feature speeds " +#~ "are not specified explicitly." +#~ msgstr "" +#~ "La velocità di stampa minima per il filamento quando è abilitato il " +#~ "rallentamento per un migliore raffreddamento dello strato, quando le " +#~ "sporgenze di stampa e quando le velocità delle caratteristiche non sono " +#~ "specificate esplicitamente." + +#~ msgid "No sparse layers (EXPERIMENTAL)" +#~ msgstr "Nessun layer sparso (SPERIMENTALE)" + +#~ msgid "" +#~ "We would rename the presets as \"Vendor Type Serial @printer you selected" +#~ "\". \n" +#~ "To add preset for more prinetrs, Please go to printer selection" +#~ msgstr "" +#~ "Rinomineremo le impostazioni predefinite come \"Tipo di fornitore seriale " +#~ "@printer selezionato\". \n" +#~ " Per aggiungere impostazioni predefinite per altre stampanti, vai alla " +#~ "selezione della stampante." + +#~ msgid "The Config can not be loaded." +#~ msgstr "La configurazione non può essere caricata." + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "Il 3mf è stato generato da una vecchia versione di Snapmaker Orca, " +#~ "caricando \n" +#~ "solo i dati geometrici." + +#~ msgid "wiki" +#~ msgstr "" +#~ "Darò i comandi per far funzionare EPEL su RHEL 8, ma se sei su RHEL 6 o " +#~ "RHEL 7 puoi trovare quelle istruzioni sul wiki." + +#~ msgid "" +#~ "Relative extrusion is recommended when using \"label_objects\" option." +#~ "Some extruders work better with this option unckecked (absolute extrusion " +#~ "mode). Wipe tower is only compatible with relative mode. It is always " +#~ "enabled on BambuLab printers. Default is checked" +#~ msgstr "" +#~ "L'estrusione relativa è consigliata quando si utilizza l'opzione " +#~ "\"label_objects\". Alcuni estrusori funzionano meglio con questa opzione " +#~ "unckecked (modalità di estrusione assoluta). La torre di pulizia è " +#~ "compatibile solo con la modalità relativa. È sempre abilitato sulle " +#~ "stampanti BambuLab. Il valore predefinito è selezionato" + +#~ msgid "Movement:" +#~ msgstr "Movement:" + +#~ msgid "Movement" +#~ msgstr "Movimento" + +#~ msgid "Auto Segment" +#~ msgstr "Segmento automatico" + +#~ msgid "Depth ratio" +#~ msgstr "Rapporto di profondità" + +#~ msgid "Prizm" +#~ msgstr "Prizm" + +#~ msgid "connector is out of cut contour" +#~ msgstr "Connettore fuori dal contorno" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "Connettori fuori dal contorno" + +#~ msgid "connector is out of object" +#~ msgstr "Connettore fuori dall'oggetto" + +#~ msgid "connectors is out of object" +#~ msgstr "I connettori devono trovarsi sulla superficie dell'oggetto." + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Stato non valido.\n" +#~ "Non è stata selezionata alcuna parte da conservare dopo il taglio" + +#~ msgid "Recalculate" +#~ msgstr "Ricalcola" + +#~ msgid "" +#~ "Orca recalculates your flushing volumes everytime the filament colors " +#~ "change. You can change this behavior in Preferences." +#~ msgstr "" +#~ "Orca ricalcola i volumi di risciacquo ogni volta che i colori del " +#~ "filamento cambiano. È possibile modificare questo comportamento in " +#~ "Preferenze." + +#~ msgid "" +#~ "The printer timed out while receiving a print job. Please check if the " +#~ "network is functioning properly and send the print again." +#~ msgstr "" +#~ "La stampante ha raggiunto il timeout durante la ricezione di un lavoro di " +#~ "stampa. Controlla se la rete funziona correttamente e invia nuovamente la " +#~ "stampa." + +#~ msgid "The beginning of the vendor can not be a number. Please re-enter." +#~ msgstr "" +#~ "L'inizio del fornitore non può essere un numero. Si prega di inserire di " +#~ "nuovo." + +#~ msgid "Edit Text" +#~ msgstr "Modifica testo" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Errore. Impossibile creare il processo." + +#~ msgid "Exception" +#~ msgstr "Eccezione" + +#~ msgid "Choose SLA archive:" +#~ msgstr "Seleziona l'archivio SLA:" + +#~ msgid "Import file" +#~ msgstr "Importa file" + +#~ msgid "Import model and profile" +#~ msgstr "Importa modello e profilo" + +#~ msgid "Import profile only" +#~ msgstr "Importa solo profilo" + +#~ msgid "Import model only" +#~ msgstr "Importa solo modello" + +#~ msgid "Accurate" +#~ msgstr "Accurato" + +#~ msgid "Balanced" +#~ msgstr "Bilanciato" + +#~ msgid "Quick" +#~ msgstr "Rapido" + +#~ msgid "Print sequence of inner wall and outer wall. " +#~ msgstr "Stampa la sequenza della parete interna e della parete esterna. " + +#~ msgid "Order of wall/infill. false means print wall first. " +#~ msgstr "" +#~ "L'ordine tra parete (wall) e riempimento (infill). \"False\" significa " +#~ "stampare prima la parete." + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Descrive per quanto tempo il nozzle si muoverà lungo l'ultimo percorso " +#~ "mentre si ritrae." + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Semplifica Modello\n" +#~ "Sapevate che è possibile ridurre il numero di triangoli in una mesh " +#~ "utilizzando la funzione Semplifica mesh? Fare clic con il tasto destro " +#~ "del mouse sul modello e selezionare Semplifica modello. Per saperne di " +#~ "più, consultare la documentazione." + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "Sottrazione di una parte\n" +#~ "Sapevi che puoi sottrarre una mesh da un'altra usando il modificatore " +#~ "Parte negativa? In questo modo è possibile, ad esempio, creare fori " +#~ "facilmente ridimensionabili direttamente in Snapmaker Orca. Per ulteriori " +#~ "informazioni, consulta la documentazione." + +#~ msgid "Filling bed " +#~ msgstr "Riempi piano" + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "La trama riempimento %1% non supporta il 100%% di densità." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "Passare alla trama rettilinea?\n" +#~ "Sì - passa automaticamente alla trama rettilinea\n" +#~ "No - ripristina automaticamente la densità al valore predefinito non 100%" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "" +#~ "Riscaldare il nozzle a una temperatura superiore a 170 gradi prima di " +#~ "caricare il filamento." + +#~ msgid "Show g-code window" +#~ msgstr "Mostra la finestra del codice g" + +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "Se abilitato, verrà visualizzata la finestra del codice g." + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "" +#~ "Questa è la densità del riempimento interno. 100%% significa che " +#~ "l'oggetto sarà in ogni sua parte." + +#~ msgid "Tree support wall loops" +#~ msgstr "Loop parete supporto ad albero" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "Questa specifica il numero di pareti attorno al supporto ad albero." + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " Non funziona con una densità del 100%%" + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Invio" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Strumento-Faccia sul piatto" + +#~ msgid "Export as STL" +#~ msgstr "Esporta come STL" + +#~ msgid "Check cloud service status" +#~ msgstr "Verifica lo stato del servizio cloud" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Inserisci un valore valido (K in 0~0.5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "Inserisci un valore valido (K in 0~0.5, N in 0.6~2.0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Esporta tutti gli oggetti come STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "Il 3mf non è compatibile, carica solo i dati della geometria!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Incompatible 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "Aggiungi/Rimuovi stampanti" + +#~ msgid "" +#~ "When print by object, machines with I3 structure will not generate " +#~ "timelapse videos." +#~ msgstr "" +#~ "Quando si stampa per oggetto, le macchine con struttura I3 non " +#~ "genereranno video timelapse." + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s non è supportato da AMS." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Non ricordarmi più questa versione." + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Errore: l'IP o il codice di accesso non sono corretti" + +#~ msgid "" +#~ "Extrude perimeters that have a part over an overhang in the reverse " +#~ "direction on odd layers. This alternating pattern can drastically improve " +#~ "steep overhang." +#~ msgstr "" +#~ "Estrudere i perimetri che hanno una parte su una sporgenza nella " +#~ "direzione inversa su layer dispari. Questo schema alternato può " +#~ "migliorare drasticamente lo strapiombo ripido." + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Ordine di parete interna/esterna/riempimento" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "" +#~ "È la sequenza di stampa di pareti interne, pareti esterne e dei " +#~ "riempimenti." + +#~ msgid "inner/outer/infill" +#~ msgstr "interno/esterno/riempimento" + +#~ msgid "outer/inner/infill" +#~ msgstr "esterno/interno/riempimento" + +#~ msgid "infill/inner/outer" +#~ msgstr "riempimento/interno/esterno" + +#~ msgid "infill/outer/inner" +#~ msgstr "riempimento/esterno/interno" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "interno-esterno-interno/riempimento" + +#, c-format, boost-format +#~ msgid "%%" +#~ msgstr "%%" + +#~ msgid "Export 3MF" +#~ msgstr "Esporta 3MF" + +#~ msgid "Export project as 3MF." +#~ msgstr "Questo esporta il progetto come file 3mf." + +#~ msgid "Export slicing data" +#~ msgstr "Esporta dati elaborati" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Esporta dati elaborati in una cartella" + +#~ msgid "Load slicing data" +#~ msgstr "Carica dati di slicing" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Carica i dati di slicing nella cache dalla directory" + +#~ msgid "Export STL" +#~ msgstr "Esporta STL" + +#~ msgid "Export the objects as multiple STL." +#~ msgstr "Esportare gli oggetti come STL multipli." + +#~ msgid "Slice" +#~ msgstr "Slice" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "Slicing dei piatti: 0-tutti i piatti, i-piatto i, altri-invalidi" + +#~ msgid "Show command help." +#~ msgstr "Mostra la guida ai comandi." + +#~ msgid "UpToDate" +#~ msgstr "Aggiornato" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "Aggiorna valori di configurazione dei 3mf ai più recenti." + +#~ msgid "Load default filaments" +#~ msgstr "Carica filamenti predefiniti" + +#~ msgid "Load first filament as default for those not loaded" +#~ msgstr "Carica il primo filamento come predefinito per quelli non caricati" + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "numero massimo di triangoli per piatto da elaborare" + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "Tempo massimo di slicing per piatto in secondi" + +#~ msgid "Normative check" +#~ msgstr "Controllo normativo" + +#~ msgid "Check the normative items." +#~ msgstr "Controlla gli articoli normativi." + +#~ msgid "Output Model Info" +#~ msgstr "Info Modello di output" + +#~ msgid "Output the model's information." +#~ msgstr "Questo produce le informazioni del modello." + +#~ msgid "Export Settings" +#~ msgstr "Esporta impostazioni" + +#~ msgid "Export settings to a file." +#~ msgstr "Questo esporta le impostazioni in un file." + +#~ msgid "Send progress to pipe" +#~ msgstr "Inviare l'avanzamento al pipe" + +#~ msgid "Send progress to pipe." +#~ msgstr "Inviare l'avanzamento al pipe" + +#~ msgid "Arrange Options" +#~ msgstr "Opzioni disposizione" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Opzioni di disposizione: 0-disabilita, 1-abilita, altro-auto" + +#~ msgid "Repetions count" +#~ msgstr "Conteggio delle ripetizioni" + +#~ msgid "Repetions count of the whole model" +#~ msgstr "Numero di ripetizioni dell'intero modello" + +#~ msgid "Convert Unit" +#~ msgstr "Converti unità" + +#~ msgid "Convert the units of model" +#~ msgstr "Converti le unità del modello" + +#~ msgid "Rotate around X" +#~ msgstr "Ruota attorno ad X" + +#~ msgid "Rotation angle around the X axis in degrees." +#~ msgstr "Angolo di rotazione attorno all'asse X in gradi." + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Ridimensiona il modello in base a un fattore float" + +#~ msgid "Load General Settings" +#~ msgstr "Carica impostazioni generali" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "Carica le impostazioni di processo/macchina dal file specificato" + +#~ msgid "Load Filament Settings" +#~ msgstr "Carica impostazioni filamento" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "" +#~ "Carica le impostazioni del filamento dall'elenco di file specificato" + +#~ msgid "Skip Objects" +#~ msgstr "Salta oggetti" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Salta alcuni oggetti in questa stampa" + +#~ msgid "load uptodate process/machine settings when using uptodate" +#~ msgstr "" +#~ "Caricare le impostazioni di processo/macchina aggiornate quando si " +#~ "utilizza UptoDate" + +#~ msgid "" +#~ "load uptodate process/machine settings from the specified file when using " +#~ "uptodate" +#~ msgstr "" +#~ "Caricare le impostazioni di processo/macchina aggiornate dal file " +#~ "specificato quando si utilizza UptoDate" + +#~ msgid "Output directory" +#~ msgstr "Output directory" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Questa è la cartella di destinazione per i file esportati." + +#~ msgid "Debug level" +#~ msgstr "Livello di debug" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Imposta livello di debug. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" + +#, boost-format +#~ msgid "The selected preset: %1% is not found." +#~ msgstr "Il preset selezionato: %1% non è stato trovato." + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "Operazioni sulla scena 3D\n" +#~ "Sapete come controllare la vista e la selezione di oggetti/parti con il " +#~ "mouse e il touch panel nella scena 3D?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Correggi Modello\n" +#~ "Sapevi che puoi correggere un modello 3D danneggiato per evitare molti " +#~ "problemi di slicing?" + +#~ msgid "" +#~ "When need to print with the printer door opened\n" +#~ "Opening the printer door can reduce the probability of extruder/hotend " +#~ "clogging when printing lower temperature filament with a higher enclosure " +#~ "temperature. More info about this in the Wiki." +#~ msgstr "" +#~ "Quando è necessario stampare con lo sportello della stampante aperto\n" +#~ "L'apertura dello sportello della stampante può ridurre la probabilità di " +#~ "intasamento dell'estrusore/hotend quando si stampa un filamento a " +#~ "temperatura inferiore con una temperatura dell'involucro più elevata. " +#~ "Maggiori informazioni su questo nel Wiki." + +#~ msgid "Embeded" +#~ msgstr "Integrato" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "Mostra i modelli online selezionati dallo staff nella home page" + +#~ msgid "Online Models" +#~ msgstr "Modelli Online" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "The minimum printing speed when slowing down for cooling." + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "La temperatura del piano supera la temperatura di vetrificazione del " +#~ "filamento. Aprire lo sportello anteriore della stampante prima di " +#~ "stampare per evitare l'intasamento del nozzle." + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Temperature of vitrification" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "Material becomes soft at this temperature. Thus, the heat bed cannot be " +#~ "hotter than this temperature." + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "Enable this option if the machine has an auxiliary part cooling fan" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "This is the speed of auxiliary part cooling fan. The auxiliary fan will " +#~ "run at this speed during printing except for during the first several " +#~ "layers which may be set to have no part cooling." + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "Empty layers around bottom are replaced by nearest normal layers." + +#~ msgid "The model has too many empty layers." +#~ msgstr "Il modello ha troppi layers vuoti." + +#~ msgid "Cali" +#~ msgstr "Calib." + +#~ msgid "Calibration of extrusion" +#~ msgstr "Calibrazione estrusione" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Inserisco il nuovo filamento nell'estrusore" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "The bed temperature of other layers is lower than the bed temperature of " +#~ "the first layer by more than %d degrees centigrade.\n" +#~ "This may cause models to break free from the build plate during printing." + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "La temperatura del piano è superiore alla temperatura di vetrificazione " +#~ "di questo filamento.\n" +#~ "Ciò può causare il blocco del nozzle e il fallimento della stampa.\n" +#~ "Si prega di tenere la stampante aperta durante il processo di stampa per " +#~ "garantire la circolazione dell'aria o ridurre la temperatura del piano." + +#~ msgid "Total Time Estimation" +#~ msgstr "Stima del tempo totale" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Identificazione frequenza di risonanza" + +#~ msgid "Immediately score" +#~ msgstr "Punteggio immediato" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "Assegna un punteggio per il tuo modello Bambu Market preferito." + +#~ msgid "Score" +#~ msgstr "Punteggio" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Bambu High Temperature Plate" + +#~ msgid "Can't connect to the printer" +#~ msgstr "Impossibile connettersi alla stampante" + +#~ msgid "Recommended temperature range" +#~ msgstr "Recommended temperature range" + +#~ msgid "High Temp Plate" +#~ msgstr "High Temp Plate" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "This is the bed temperature when the high temperature plate is installed. " +#~ "A value of 0 means the filament does not support printing on the High " +#~ "Temp Plate." + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Spessore supporto interno del ponte" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Stile e forma del supporto. Per supporti normali, la proiezione dei " +#~ "supporti in una griglia regolare creerà supporti più stabili " +#~ "(impostazione predefinita), mentre le torri di supporto aderenti faranno " +#~ "risparmiare materiale e ridurranno le giunzioni oggetto.\n" +#~ "Per i supporti ad albero, lo stile slim unirà i rami in modo più " +#~ "aggressivo e risparmierà molto materiale (impostazione predefinita), " +#~ "mentre lo stile ibrido creerà una struttura simile a quella dei sostegni " +#~ "normali sotto grandi sporgenze piatte." + +#~ msgid "Bed temperature difference" +#~ msgstr "Bed temperature difference" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "Non è consigliabile che la temperatura del piano degli altri layer sia " +#~ "inferiore a quella del primo layer di oltre questa soglia. Una " +#~ "temperatura del piano troppo bassa degli altri layer può causare il " +#~ "distacco dell'oggetto dal piatto." + +#~ msgid "Orient the model" +#~ msgstr "Orient the model" diff --git a/localization/i18n/ja/Snapmaker_Orca_ja.po b/localization/i18n/ja/Snapmaker_Orca_ja.po new file mode 100644 index 0000000000..b5fc9b07ae --- /dev/null +++ b/localization/i18n/ja/Snapmaker_Orca_ja.po @@ -0,0 +1,16323 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: \n" +"Language-Team: \n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 3.2.2\n" + +msgid "Supports Painting" +msgstr "サポートペイント" + +msgid "Alt + Mouse wheel" +msgstr "Alt + マウスホイール" + +msgid "Section view" +msgstr "断面" + +msgid "Reset direction" +msgstr "方向をリセット" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + スクロール" + +msgid "Pen size" +msgstr "ペンサイズ" + +msgid "Left mouse button" +msgstr "マウスの左ボタン" + +msgid "Enforce supports" +msgstr "サポートを強制的に有効" + +msgid "Right mouse button" +msgstr "右マウスボタン" + +msgid "Block supports" +msgstr "サポートをブロックする" + +msgid "Shift + Left mouse button" +msgstr "Shift + マウスの左ボタン" + +msgid "Erase" +msgstr "消去" + +msgid "Erase all painting" +msgstr "全てを消去" + +msgid "Highlight overhang areas" +msgstr "オーバーハングをハイライト" + +msgid "Gap fill" +msgstr "隙間充填" + +msgid "Perform" +msgstr "適用" + +msgid "Gap area" +msgstr "隙間領域" + +msgid "Tool type" +msgstr "ツールタイプ" + +msgid "Smart fill angle" +msgstr "自動充填角度" + +msgid "On overhangs only" +msgstr "オーバーハングのみ" + +msgid "Auto support threshold angle: " +msgstr "自動サポート角度閾値" + +msgid "Circle" +msgstr "円形" + +msgid "Sphere" +msgstr "球体" + +msgid "Fill" +msgstr "塗りつぶし" + +msgid "Gap Fill" +msgstr "隙間充填" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "%1%で選択した面だけをペイントする" + +msgid "Highlight faces according to overhang angle." +msgstr "オーバーハングの角度によりハイライト" + +msgid "No auto support" +msgstr "自動サポート無し" + +msgid "Support Generated" +msgstr "生成されたサポート" + +msgid "Gizmo-Place on Face" +msgstr "ギズモ-面に配置" + +msgid "Lay on face" +msgstr "底面選択" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"使用するフィラメント数は多いです。最初%1%個のフィラメントを使用できます" + +msgid "Color Painting" +msgstr "色塗り" + +msgid "Pen shape" +msgstr "ペンの形" + +msgid "Paint" +msgstr "ペイント" + +msgid "Key 1~9" +msgstr "キー 1~9" + +msgid "Choose filament" +msgstr "フィラメントを選択" + +msgid "Edge detection" +msgstr "エッジ検出" + +msgid "Triangles" +msgstr "三角形" + +msgid "Filaments" +msgstr "フィラメント" + +msgid "Brush" +msgstr "ブラシ" + +msgid "Smart fill" +msgstr "自動充填" + +msgid "Bucket fill" +msgstr "塗りつぶしバッチ処理" + +msgid "Height range" +msgstr "高さ範囲" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "ワイヤフレームの表示/非表示" + +msgid "Shortcut Key " +msgstr "ショートカット" + +msgid "Triangle" +msgstr "三角形" + +msgid "Height Range" +msgstr "高さ範囲" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Remove painted color" +msgstr "塗った色を消去" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "フィラメント %1%でペイントします" + +msgid "Move" +msgstr "移動" + +msgid "Gizmo-Move" +msgstr "ギズモ-移動" + +msgid "Rotate" +msgstr "回転" + +msgid "Gizmo-Rotate" +msgstr "ギズモ-回転" + +msgid "Optimize orientation" +msgstr "向きを最適化" + +msgid "Apply" +msgstr "適用" + +msgid "Scale" +msgstr "スケール" + +msgid "Gizmo-Scale" +msgstr "ギズモ-縮尺" + +msgid "Error: Please close all toolbar menus first" +msgstr "エラー: ツールバーを閉じてください" + +msgid "in" +msgstr "に" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "位置" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "回転" + +msgid "Scale ratios" +msgstr "倍率" + +msgid "Object Operations" +msgstr "オブジェクト操作" + +msgid "Volume Operations" +msgstr "操作" + +msgid "Translate" +msgstr "移動" + +msgid "Group Operations" +msgstr "グループ操作" + +msgid "Set Position" +msgstr "位置を設定" + +msgid "Set Orientation" +msgstr "向きを設定" + +msgid "Set Scale" +msgstr "スケールを設定" + +msgid "Reset Position" +msgstr "位置をリセット" + +msgid "Reset Rotation" +msgstr "回転をリセット" + +msgid "World coordinates" +msgstr "空間座標" + +msgid "Object coordinates" +msgstr "オブジェクト座標" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "サイズ" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "スケール" + +msgid "Planar" +msgstr "Planar" + +msgid "Dovetail" +msgstr "Dovetail" + +msgid "Auto" +msgstr "自動" + +msgid "Manual" +msgstr "手動" + +msgid "Plug" +msgstr "Plug" + +msgid "Dowel" +msgstr "Dowel" + +msgid "Snap" +msgstr "Snap" + +msgid "Prism" +msgstr "プリズム" + +msgid "Frustum" +msgstr "Frustum" + +msgid "Square" +msgstr "Square" + +msgid "Hexagon" +msgstr "Hexagon" + +msgid "Keep orientation" +msgstr "Keep orientation" + +msgid "Place on cut" +msgstr "Place on cut" + +msgid "Flip upside down" +msgstr "上下反転" + +msgid "Connectors" +msgstr "Connectors" + +msgid "Type" +msgstr "タイプ" + +msgid "Style" +msgstr "スタイル" + +msgid "Shape" +msgstr "形状" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Depth" + +msgid "Groove" +msgstr "Groove" + +msgid "Width" +msgstr "幅" + +msgid "Flap Angle" +msgstr "Flap Angle" + +msgid "Groove Angle" +msgstr "Groove Angle" + +msgid "Part" +msgstr "パーツ" + +msgid "Object" +msgstr "OBJ" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"クリックでカット面を反転\n" +"ドラッグでカット面を移動" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"クリックでカット面を反転させる\n" +"ドラッグしてカット面を移動する\n" +"パーツを右クリックすると、他方のパーツに割り当てます" + +msgid "Move cut plane" +msgstr "カット面の移動" + +msgid "Mode" +msgstr "Mode" + +msgid "Change cut mode" +msgstr "カットモード変更" + +msgid "Tolerance" +msgstr "Tolerance" + +msgid "Drag" +msgstr "Drag" + +msgid "Draw cut line" +msgstr "" + +msgid "Left click" +msgstr "Left click" + +msgid "Add connector" +msgstr "Add connector" + +msgid "Right click" +msgstr "Right click" + +msgid "Remove connector" +msgstr "Remove connector" + +msgid "Move connector" +msgstr "Move connector" + +msgid "Add connector to selection" +msgstr "Add connector to selection" + +msgid "Remove connector from selection" +msgstr "Remove connector from selection" + +msgid "Select all connectors" +msgstr "Select all connectors" + +msgid "Cut" +msgstr "カット" + +msgid "Rotate cut plane" +msgstr "カット面の回転" + +msgid "Remove connectors" +msgstr "Remove connectors" + +msgid "Bulge" +msgstr "Bulge" + +msgid "Bulge proportion related to radius" +msgstr "バルジの比率と半径の関係" + +msgid "Space" +msgstr "スペース" + +msgid "Space proportion related to radius" +msgstr "半径に関係する空間の割合" + +msgid "Confirm connectors" +msgstr "Confirm connectors" + +msgid "Cancel" +msgstr "取消し" + +msgid "Build Volume" +msgstr "ビルドボリューム" + +msgid "Flip cut plane" +msgstr "カット面の反転" + +msgid "Groove change" +msgstr "溝変更" + +msgid "Reset" +msgstr "リセット" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "編集済み" + +msgid "Cut position" +msgstr "カットポジション" + +msgid "Reset cutting plane" +msgstr "カット面をリセット" + +msgid "Edit connectors" +msgstr "Edit connectors" + +msgid "Add connectors" +msgstr "Add connectors" + +msgid "Reset cut" +msgstr "カットをリセット" + +msgid "Reset cutting plane and remove connectors" +msgstr "カット面をリセットし、コネクターを削除" + +msgid "Upper part" +msgstr "Upper part" + +msgid "Lower part" +msgstr "Lower part" + +msgid "Keep" +msgstr "Keep" + +msgid "Flip" +msgstr "Flip" + +msgid "After cut" +msgstr "After cut" + +msgid "Cut to parts" +msgstr "パーツに割り切る" + +msgid "Perform cut" +msgstr "カットを実行" + +msgid "Warning" +msgstr "警告" + +msgid "Invalid connectors detected" +msgstr "Invalid connectors detected" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "" + +msgid "Some connectors are overlapped" +msgstr "Some connectors are overlapped" + +msgid "Select at least one object to keep after cutting." +msgstr "カットした後に残すものを1つ以上選んでください。" + +msgid "Cut plane is placed out of object" +msgstr "カット面はオブジェクトの外に配置される" + +msgid "Cut plane with groove is invalid" +msgstr "溝のあるカット面は無効" + +msgid "Connector" +msgstr "Connector" + +msgid "Cut by Plane" +msgstr "面でカット" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "Non-manifold edges be caused by cut tool: do you want to fix now?" + +msgid "Repairing model object" +msgstr "モデルオブジェクトを修復" + +msgid "Cut by line" +msgstr "ラインでカット" + +msgid "Delete connector" +msgstr "コネクター削除" + +msgid "Mesh name" +msgstr "メッシュ名" + +msgid "Detail level" +msgstr "細部レベル" + +msgid "Decimate ratio" +msgstr "比率" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"モデル %1% には百万以上の三角形が入るため、処理するのに時間がかかる場合があり" +"ます。" + +msgid "Simplify model" +msgstr "モデルを簡略化" + +msgid "Simplify" +msgstr "簡略化" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "簡略化は 1 つのパーツのみに使用できます" + +msgid "Error" +msgstr "エラー" + +msgid "Extra high" +msgstr "超高い" + +msgid "High" +msgstr "高い" + +msgid "Medium" +msgstr "中位" + +msgid "Low" +msgstr "低い" + +msgid "Extra low" +msgstr "超低い" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d 個の三角形" + +msgid "Show wireframe" +msgstr "ワイヤフレームを表示" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "プレビュー処理中は適用できません" + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "操作を取り消し中、少々お待ちください。" + +msgid "Face recognition" +msgstr "外観認識" + +msgid "Perform Recognition" +msgstr "認識を実行" + +msgid "Brush size" +msgstr "サイズ" + +msgid "Brush shape" +msgstr "ブラシタイプ" + +msgid "Enforce seam" +msgstr "強制継ぎ目" + +msgid "Block seam" +msgstr "ブロック継ぎ目" + +msgid "Seam painting" +msgstr "継ぎ目ペイント" + +msgid "Remove selection" +msgstr "選択を削除" + +msgid "Entering Seam painting" +msgstr "継ぎ目をペイント" + +msgid "Leaving Seam painting" +msgstr "継ぎ目ペイントを退出" + +msgid "Paint-on seam editing" +msgstr "継ぎ目編集" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "フォント" + +msgid "Thickness" +msgstr "太さ" + +msgid "Text Gap" +msgstr "Text Gap" + +msgid "Angle" +msgstr "Angle" + +msgid "" +"Embeded\n" +"depth" +msgstr "Embedded depth" + +msgid "Input text" +msgstr "テキスト" + +msgid "Surface" +msgstr "Surface" + +msgid "Horizontal text" +msgstr "Horizontal text" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Mouse move up or down" + +msgid "Rotate text" +msgstr "Rotate text" + +msgid "Text shape" +msgstr "文字形状" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "テキストの回転" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "テキストの移動" + +msgid "Set Mirror" +msgstr "ミラーリング設定" + +msgid "Embossed text" +msgstr "エンボステキスト" + +msgid "Enter emboss gizmo" +msgstr "エンボスギズモに入る" + +msgid "Leave emboss gizmo" +msgstr "エンボスギズモを退出" + +msgid "Embossing actions" +msgstr "エンボス加工" + +msgid "Emboss" +msgstr "エンボス" + +msgid "NORMAL" +msgstr "ノーマル" + +msgid "SMALL" +msgstr "スモール" + +msgid "ITALIC" +msgstr "イタリック" + +msgid "SWISS" +msgstr "スイス" + +msgid "MODERN" +msgstr "モダン" + +msgid "First font" +msgstr "最初のフォント" + +msgid "Default font" +msgstr "デフォルトフォント" + +msgid "Advanced" +msgstr "高度な設定" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"選択されているフォントでは、文字が書けません。別のフォントを選択してみてくだ" +"さい。" + +msgid "Embossed text cannot contain only white spaces." +msgstr "エンボス加工されたテキストは、空白部分のみを含むことはできません。" + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "テキストにフォントで不明な文字記号( '?'で表される)が含まれている。" + +msgid "Text input doesn't show font skew." +msgstr "テキスト入力でイタリック体が表示されない。" + +msgid "Text input doesn't show font boldness." +msgstr "文字入力でボールドフォントが表示されない。" + +msgid "Text input doesn't show gap between lines." +msgstr "テキスト入力で、行間が表示されない。" + +msgid "Too tall, diminished font height inside text input." +msgstr "高すぎます、テキスト入力の文字高を小さくしました。" + +msgid "Too small, enlarged font height inside text input." +msgstr "小さすぎます、テキスト入力時のフォント高さを大きくしました。" + +msgid "Text doesn't show current horizontal alignment." +msgstr "テキストが現在の水平アライメントを示さない。" + +msgid "Revert font changes." +msgstr "フォント変更を元に戻す" + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "フォント\"%1%\"は選択できません。" + +msgid "Operation" +msgstr "オペレーション" + +msgid "Join" +msgstr "結合" + +msgid "Click to change text into object part." +msgstr "クリックすると、テキストをオブジェクトパーツに変更します。" + +msgid "You can't change a type of the last solid part of the object." +msgstr "オブジェクトの最後のソリッドパーツのタイプを変更することはできません。" + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "カット" + +msgid "Click to change part type into negative volume." +msgstr "クリックすると、パーツタイプをマイナスボリュームに変更します。" + +msgid "Modifier" +msgstr "モディファイア" + +msgid "Click to change part type into modifier." +msgstr "クリックすると、パーツタイプをモディファイアに変更します。" + +msgid "Change Text Type" +msgstr "テキストタイプ変更" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "エンボステキスト用のスタイル(%1%) をリネームする" + +msgid "Name can't be empty." +msgstr "名前を空にすることはできません。" + +msgid "Name has to be unique." +msgstr "名前は一意でなければなりません。" + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "スタイルの名前を変更" + +msgid "Rename current style." +msgstr "源左のスタイルの名前を変更" + +msgid "Can't rename temporary style." +msgstr "テンポラリスタイルの名前を変更できません。" + +msgid "First Add style to list." +msgstr "まず、スタイルをリストに追加" + +#, boost-format +msgid "Save %1% style" +msgstr "%1% スタイル保存" + +msgid "No changes to save." +msgstr "保存する変更点はありません。" + +msgid "New name of style" +msgstr "スタイルの新しい名前" + +msgid "Save as new style" +msgstr "新しいスタイルとして保存します。" + +msgid "Only valid font can be added to style." +msgstr "スタイルに追加できるのは、有効なフォントだけです。" + +msgid "Add style to my list." +msgstr "マイリストにスタイルを追加。" + +msgid "Save as new style." +msgstr "新しいスタイルとして保存します。" + +msgid "Remove style" +msgstr "スタイル削除" + +msgid "Can't remove the last existing style." +msgstr "最後に存在したスタイルを削除できません。" + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "本当に\"%1%\"スタイルを永久に削除しますか?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "\"%1%\"スタイル削除" + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "\"%1%\"を削除できません。直前に使用していたスタイルです。" + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "テンポラリスタイル\"%1%\"を削除できません。" + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "変更したスタイル\"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "現在のスタイルは\"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"スタイルを\"%1%\"に変更すると、現在のスタイル変更は破棄されます。\n" +"\n" +"それでもこのまま続けますか?" + +msgid "Not valid style." +msgstr "有効なスタイルではありません。" + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "スタイル\"%1%\"は使用できないので、リストから削除されます。" + +msgid "Unset italic" +msgstr "イタリック設定を解除" + +msgid "Set italic" +msgstr "イタリック設定" + +msgid "Unset bold" +msgstr "ボールド設定解除" + +msgid "Set bold" +msgstr "ボールド設定" + +msgid "Revert text size." +msgstr "テキストサイズを元に戻す" + +msgid "Revert embossed depth." +msgstr "エンボス深さを元に戻す" + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"選択されているフォントでは、高度なオプションを変更することはできません。\n" +"他のフォントを選択してください。" + +msgid "Revert using of model surface." +msgstr "モデル面の使用を元に戻す。" + +msgid "Revert Transformation per glyph." +msgstr "文字ごとに変換を戻す。" + +msgid "Set global orientation for whole text." +msgstr "テキスト全体のグローバルな方向を設定する。" + +msgid "Set position and orientation per glyph." +msgstr "文字ごとに位置と方向を設定する。" + +msgctxt "Alignment" +msgid "Left" +msgstr "左面" + +msgctxt "Alignment" +msgid "Center" +msgstr "センター" + +msgctxt "Alignment" +msgid "Right" +msgstr "右面" + +msgctxt "Alignment" +msgid "Top" +msgstr "トップ" + +msgctxt "Alignment" +msgid "Middle" +msgstr "ミドル" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "底面" + +msgid "Revert alignment." +msgstr "アライメントを戻す。" + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "ポイント" + +msgid "Revert gap between characters" +msgstr "文字間のズレを戻す" + +msgid "Distance between characters" +msgstr "文字の間隔" + +msgid "Revert gap between lines" +msgstr "ライン間のズレを戻す" + +msgid "Distance between lines" +msgstr "ライン間距離" + +msgid "Undo boldness" +msgstr "ボールドネス取り消し" + +msgid "Tiny / Wide glyphs" +msgstr "小さい/広いグリフ" + +msgid "Undo letter's skew" +msgstr "文字の傾きを取り消す" + +msgid "Italic strength ratio" +msgstr "イタリック体の強度比" + +msgid "Undo translation" +msgstr "移動を取り消す" + +msgid "Distance of the center of the text to the model surface." +msgstr "テキストの中心からモデル表面までの距離。" + +msgid "Undo rotation" +msgstr "回転を取り消す" + +msgid "Rotate text Clock-wise." +msgstr "テキストを時計回りに回転。" + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"オブジェクトの表面に沿ってテキストを移動させる時に、テキストの回転ロックを解" +"除する。" + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" +"オブジェクトの表面に沿ってテキストを移動させる時に、テキストの回転をロックす" +"る。" + +msgid "Select from True Type Collection." +msgstr "True Type コレクションから選択。" + +msgid "Set text to face camera" +msgstr "テキストをカメラに向ける" + +msgid "Orient the text towards the camera." +msgstr "テキストの向きをカメラ側にする。" + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"全く同じフォント(\"%1%\")を読み込むことができません。アプリケーションは似たよ" +"うなもの(\"%2%\")を選択しました。編集テキストを有効にするには、フォントを指定" +"する必要があります。" + +msgid "No symbol" +msgstr "シンボルなし" + +msgid "Loading" +msgstr "ロード中" + +msgid "In queue" +msgstr "キュー内" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "高度" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "サーフェースを使用" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "文字あたり" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "アライメント" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "文字間ギャップ" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "ラインギャップ" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "ボールドネス" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "傾斜比" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "表面から" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "続ける" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "コレクション" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "SVGの回転" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "SVGの移動" + +msgid "Enter SVG gizmo" +msgstr "SVGギズモに入る" + +msgid "Leave SVG gizmo" +msgstr "SVGギズモから出る" + +msgid "SVG actions" +msgstr "SVGアクション" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "不透明度 (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "カラーグラデーション (%1%)" + +msgid "Undefined fill type" +msgstr "未定義のフィルタイプ" + +msgid "Linear gradient" +msgstr "線形グラデーション" + +msgid "Radial gradient" +msgstr "放射状グラデーション" + +msgid "Open filled path" +msgstr "塗りつぶしパスを開く" + +msgid "Undefined stroke type" +msgstr "未定義のストロークタイプ" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "自己交差および複数のポイントからパスを修復できません。" + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "最終的な形状には、同じ座標を持つ複数の点の自己交差が含まれています。" + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "図形は非表示としてマークされています (%1%)" + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "" +"形状の塗りつぶし(%1%) にはサポートされていないものが含まれています: %2%" + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "形状のストローク (%1%) が細すぎます (最小幅は %2% mm)。" + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "" +"形状 (%1%) のストロークにサポートされていないものが含まれています: %2%." + +msgid "Face the camera" +msgstr "カメラに向ける" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "不明なファイル名" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "SVGファイルパス: \"%1%\"" + +msgid "Reload SVG file from disk." +msgstr "ディスクからSVGファイルを再読込みします。" + +msgid "Change file" +msgstr "ファイル変更" + +msgid "Change to another .svg file" +msgstr "別の .svg ファイルに変更します" + +msgid "Forget the file path" +msgstr "ファイルパスを忘れる" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"ローカルパスを3MFファイルに保存しない。\n" +"また、'reload from disk' オプションも無効にする。" + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "焼付け" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "編集不可パーツとしてモデルに焼付けする" + +msgid "Save as" +msgstr "別名で保存" + +msgid "Save SVG file" +msgstr "SVGファイルの保存" + +msgid "Save as '.svg' file" +msgstr "'.svg' ファイルとして保存" + +msgid "Size in emboss direction." +msgstr "エンボス方向のサイズです。" + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "スケールによりカーブ サンプル量も変更されます(%1%)" + +msgid "Width of SVG." +msgstr "SVGの幅" + +msgid "Height of SVG." +msgstr "SVGの高さ" + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "SVG のアスペクト比をロック/アンロックします。" + +msgid "Reset scale" +msgstr "縮尺をリセット" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "SVG の中心からモデル表面までの距離。" + +msgid "Reset distance" +msgstr "距離をリセット" + +msgid "Reset rotation" +msgstr "回転をリセット" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "表面上をドラッグするときの回転角度のロック/アンロック。" + +msgid "Mirror vertically" +msgstr "垂直にミラーリング" + +msgid "Mirror horizontally" +msgstr "水平にミラーリング" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "SVGタイプ変更" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "反転" + +msgid "Choose SVG file for emboss:" +msgstr "エンボス用の SVG ファイルを選択します:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "ファイルが存在しません (%1%)。" + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "ファイル名は\".svg\" で終わる必要がありますが、%1%を選択しました" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "Nano SVG パーサーはファイル(%1%)からロードできません。" + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "SVG ファイルには、エンボスされる単一のパス(%1%)が含まれていません。" + +msgid "Vertex" +msgstr "Vertex" + +msgid "Edge" +msgstr "Edge" + +msgid "Plane" +msgstr "Plane" + +msgid "Point on edge" +msgstr "Point on edge" + +msgid "Point on circle" +msgstr "Point on circle" + +msgid "Point on plane" +msgstr "Point on plane" + +msgid "Center of edge" +msgstr "Center of edge" + +msgid "Center of circle" +msgstr "Center of circle" + +msgid "ShiftLeft mouse button" +msgstr "" + +msgid "Select feature" +msgstr "Select feature" + +msgid "Select point" +msgstr "Select point" + +msgid "Delete" +msgstr "削除" + +msgid "Restart selection" +msgstr "Restart selection" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "選択解除" + +msgid "Measure" +msgstr "Measure" + +msgid "Edit to scale" +msgstr "Edit to scale" + +msgctxt "Verb" +msgid "Scale" +msgstr "スケール" + +msgid "None" +msgstr "無し" + +msgid "Diameter" +msgstr "直径" + +msgid "Length" +msgstr "長さ" + +msgid "Selection" +msgstr "Selection" + +msgid "Copy to clipboard" +msgstr "コピー" + +msgid "Perpendicular distance" +msgstr "Perpendicular distance" + +msgid "Distance" +msgstr "Distance" + +msgid "Direct distance" +msgstr "Direct distance" + +msgid "Distance XYZ" +msgstr "Distance XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "通知" + +msgid "Undefined" +msgstr "未定義" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% は %2% に置き換えられました" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" + +msgid "Some values have been replaced. Please check them:" +msgstr "変更された値があります、ご確認ください:" + +msgid "Process" +msgstr "プロセス" + +msgid "Filament" +msgstr "フィラメント" + +msgid "Machine" +msgstr "プリンター" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "構成パッケージをロードしましたが、一部認識できない設定があります" + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "構成ファイル %1% がロードされましたが、一部の値が認識できませんでした" + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" + +msgid "Fatal error" +msgstr "重大なエラー" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" + +msgid "Critical error" +msgstr "重大なエラー" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "" + +msgid "Untitled" +msgstr "名称未設定" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Bambuネットワークプラグインをダウンロード" + +msgid "Login information expired. Please login again." +msgstr "サインイン情報の有効期限切れ、もう一度サインインしてください" + +msgid "Incorrect password" +msgstr "パスワードが正しくありません" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "%s を接続できませんでした [SN: %s、code = %s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" + +msgid "WebView2 Runtime" +msgstr "" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"続行しますか?" + +msgid "Remember my choice" +msgstr "私の選択を保存する" + +msgid "Loading configuration" +msgstr "構成を読込み中" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "新バージョンをダウンロードするにはクリックしてください: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca をアップデートする必要があります" + +msgid "This is the newest version." +msgstr "最新バージョンです。" + +msgid "Info" +msgstr "情報" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" + +msgid "Rebuild" +msgstr "再構築" + +msgid "Loading current presets" +msgstr "プリセットを読込む" + +msgid "Loading a mode view" +msgstr "モードビューをロード" + +msgid "Choose one file (3mf):" +msgstr "ファイルを選択 (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "ファイルを選択 (3mf/step/stl/svg/obj/amf)" + +msgid "Choose ZIP file" +msgstr "ZIPファイルの選択" + +msgid "Choose one file (gcode/3mf):" +msgstr "" + +msgid "Some presets are modified." +msgstr "プリセットが変更されました。" + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "変更したプリセットをデフォルトとして保存できます" + +msgid "User logged out" +msgstr "ユーザがサインアウトしました" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "スライス中には、プロジェクトを新規作成や開くことができません" + +msgid "Open Project" +msgstr "プロジェクトを開く" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"現在のSnapmaker Orcaはバージョンが古いため使用できません、アップデートしてくださ" +"い。" + +msgid "Privacy Policy Update" +msgstr "Privacy Policy Update" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." + +msgid "Sync user presets" +msgstr "Sync user presets" + +msgid "Loading user preset" +msgstr "ユーザープリセットを読込み中" + +msgid "Switching application language" +msgstr "アプリケーション言語の切り替え" + +msgid "Select the language" +msgstr "言語を選択" + +msgid "Language" +msgstr "言語" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "アップロード中" + +msgid "Stop them and continue anyway?" +msgstr "これらを止めて、続行しますか?" + +msgid "Ongoing uploads" +msgstr "進行中のアップロード" + +msgid "Select a G-code file:" +msgstr "G-codeファイルを選択" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"URLのダウンロードを開始できませんでした。保存先フォルダが設定されていません。" +"設定ウィザードで保存先フォルダーを選択してください。" + +msgid "Import File" +msgstr "Import File" + +msgid "Choose files" +msgstr "ファイルを選択" + +msgid "New Folder" +msgstr "New Folder" + +msgid "Open" +msgstr "開く" + +msgid "Rename" +msgstr "名前を変更" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "GUI初期化に失敗した" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "重大なエラー: %1%" + +msgid "Quality" +msgstr "品質" + +msgid "Shell" +msgstr "シェル" + +msgid "Infill" +msgstr "インフィル" + +msgid "Support" +msgstr "サポート" + +msgid "Flush options" +msgstr "フラッシュオプション" + +msgid "Speed" +msgstr "速度" + +msgid "Strength" +msgstr "強度" + +msgid "Top Solid Layers" +msgstr "トップソリッド層" + +msgid "Top Minimum Shell Thickness" +msgstr "トップ面最小厚み" + +msgid "Bottom Solid Layers" +msgstr "底面ソリッド層" + +msgid "Bottom Minimum Shell Thickness" +msgstr "底面最小厚さ" + +msgid "Ironing" +msgstr "アイロン" + +msgid "Fuzzy Skin" +msgstr "ファジー壁面" + +msgid "Extruders" +msgstr "押出機" + +msgid "Extrusion Width" +msgstr "押出線幅" + +msgid "Wipe options" +msgstr "拭き上げ設定" + +msgid "Bed adhesion" +msgstr "ベッド接着" + +msgid "Add part" +msgstr "パーツを追加" + +msgid "Add negative part" +msgstr "マイナスパーツを追加" + +msgid "Add modifier" +msgstr "モディファイアを追加" + +msgid "Add support blocker" +msgstr "サポートを追加" + +msgid "Add support enforcer" +msgstr "サポート補強を追加" + +msgid "Add text" +msgstr "テキストの追加" + +msgid "Add negative text" +msgstr "切取りテキストの追加" + +msgid "Add text modifier" +msgstr "テキストモディファイアの追加" + +msgid "Add SVG part" +msgstr "SVGパーツ追加" + +msgid "Add negative SVG" +msgstr "切取りSVGの追加" + +msgid "Add SVG modifier" +msgstr "SVGモディファイアの追加" + +msgid "Select settings" +msgstr "設定を選択" + +msgid "Hide" +msgstr "非表示" + +msgid "Show" +msgstr "表示" + +msgid "Del" +msgstr "Del" + +msgid "Delete the selected object" +msgstr "選択したオブジェクトを削除" + +msgid "Load..." +msgstr "ファイルを読込む" + +msgid "Cube" +msgstr "キューブ" + +msgid "Cylinder" +msgstr "シリンダー" + +msgid "Cone" +msgstr "コーン" + +msgid "Disc" +msgstr "Disc" + +msgid "Torus" +msgstr "Torus" + +msgid "Orca Cube" +msgstr "" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "" + +msgid "Voron Cube" +msgstr "" + +msgid "Stanford Bunny" +msgstr "" + +msgid "Orca String Hell" +msgstr "" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" + +msgid "Text" +msgstr "テキスト" + +msgid "Height range Modifier" +msgstr "Height Range Modifier" + +msgid "Add settings" +msgstr "設定を追加" + +msgid "Change type" +msgstr "変更タイプ" + +msgid "Set as an individual object" +msgstr "個別オブジェクトとして設定" + +msgid "Set as individual objects" +msgstr "個別オブジェクトとして設定" + +msgid "Fill bed with copies" +msgstr "Fill bed with copies" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Fill the remaining area of bed with copies of the selected object" + +msgid "Printable" +msgstr "造形可能" + +msgid "Fix model" +msgstr "モデルを修復" + +msgid "Export as one STL" +msgstr "Export as one STL" + +msgid "Export as STLs" +msgstr "Export as STLs" + +msgid "Reload from disk" +msgstr "ディスクから再読込み" + +msgid "Reload the selected parts from disk" +msgstr "選択したパーツをディスクから再読込み" + +msgid "Replace with STL" +msgstr "STLに置き換え" + +msgid "Replace the selected part with new STL" +msgstr "選択したパーツを新しいSTLに置換え" + +msgid "Change filament" +msgstr "フィラメントを変更" + +msgid "Set filament for selected items" +msgstr "選択した項目のフィラメントを設定" + +msgid "Default" +msgstr "デフォルト" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "フィラメント %d" + +msgid "current" +msgstr "現在" + +msgid "Scale to build volume" +msgstr "ビルド容積に合わせる" + +msgid "Scale an object to fit the build volume" +msgstr "ビルド容積に合わせて伸縮する" + +msgid "Flush Options" +msgstr "フラッシュ設定" + +msgid "Flush into objects' infill" +msgstr "インフィルにフラッシュ" + +msgid "Flush into this object" +msgstr "このオブジェクトにフラッシュする" + +msgid "Flush into objects' support" +msgstr "サポートにフラッシュ" + +msgid "Edit in Parameter Table" +msgstr "パラメータテーブルで編集" + +msgid "Convert from inch" +msgstr "インチから変換" + +msgid "Restore to inch" +msgstr "インチ単位に復元" + +msgid "Convert from meter" +msgstr "メートルから変換" + +msgid "Restore to meter" +msgstr "メータル単位に復元" + +msgid "Assemble" +msgstr "組立てる" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "選択したオブジェクトを一つオブジェクトに組み立てます(複数パーツ)" + +msgid "Assemble the selected objects to an object with single part" +msgstr "選択したオブジェクトを一つオブジェクトに組み立てます(単パーツ)" + +msgid "Mesh boolean" +msgstr "Mesh boolean" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Mesh boolean operations including union and subtraction" + +msgid "Along X axis" +msgstr "X軸方向" + +msgid "Mirror along the X axis" +msgstr "反転 (X軸)" + +msgid "Along Y axis" +msgstr "Y軸方向" + +msgid "Mirror along the Y axis" +msgstr "反転 (Y軸)" + +msgid "Along Z axis" +msgstr "Z軸方向" + +msgid "Mirror along the Z axis" +msgstr "反転 (Z軸)" + +msgid "Mirror object" +msgstr "オブジェクトを反転" + +msgid "Edit text" +msgstr "テキスト編集" + +msgid "Ability to change text, font, size, ..." +msgstr "テキスト、フォント、サイズ、...を変更することが可能" + +msgid "Edit SVG" +msgstr "SVG編集" + +msgid "Change SVG source file, projection, size, ..." +msgstr "SVG ソース ファイル、プロジェクション、サイズなどを変更します。" + +msgid "Invalidate cut info" +msgstr "Invalidate cut info" + +msgid "Add Primitive" +msgstr "プリミティブを追加" + +msgid "Add Handy models" +msgstr "" + +msgid "Add Models" +msgstr "モデルを追加" + +msgid "Show Labels" +msgstr "ラベルを表示" + +msgid "To objects" +msgstr "オブジェクトに" + +msgid "Split the selected object into multiple objects" +msgstr "選択したオブジェクトを複数のオブジェクトに分割" + +msgid "To parts" +msgstr "パーツに" + +msgid "Split the selected object into multiple parts" +msgstr "選択したオブジェクトを複数のパーツに分割" + +msgid "Split" +msgstr "分割" + +msgid "Split the selected object" +msgstr "選択したオブジェクトを分割" + +msgid "Auto orientation" +msgstr "自動向き調整" + +msgid "Auto orient the object to improve print quality." +msgstr "オブジェクトの向きを自動的に調整する" + +msgid "Select All" +msgstr "全てを選択" + +msgid "select all objects on current plate" +msgstr "現在のプレート上のすべてのオブジェクトを選択" + +msgid "Delete All" +msgstr "全てを削除" + +msgid "delete all objects on current plate" +msgstr "現在のプレート上の全てのオブジェクトを削除" + +msgid "Arrange" +msgstr "レイアウト" + +msgid "arrange current plate" +msgstr "現在のプレートをレイアウト" + +msgid "Reload All" +msgstr "" + +msgid "reload all from disk" +msgstr "" + +msgid "Auto Rotate" +msgstr "自動回転" + +msgid "auto rotate current plate" +msgstr "現在のプレートを自動回転させる" + +msgid "Delete Plate" +msgstr "Delete Plate" + +msgid "Remove the selected plate" +msgstr "選択したプレートを削除" + +msgid "Clone" +msgstr "複製" + +msgid "Simplify Model" +msgstr "モデルを簡略化" + +msgid "Center" +msgstr "センター" + +msgid "Edit Process Settings" +msgstr "プロセス設定を編集" + +msgid "Edit print parameters for a single object" +msgstr "一つのオブジェクトのパラメータを編集" + +msgid "Change Filament" +msgstr "フィラメントを変更" + +msgid "Set Filament for selected items" +msgstr "選択した項目のフィラメントを設定" + +msgid "Unlock" +msgstr "ロック解除" + +msgid "Lock" +msgstr "ロック" + +msgid "Edit Plate Name" +msgstr "Edit Plate Name" + +msgid "Name" +msgstr "名称" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$dのエラーを修復しました" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "エラー: %1$d の非多様体エッジ" + +msgid "Remaining errors" +msgstr "残エラー" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$dの非多様体エッジがあります" + +msgid "Right click the icon to fix model object" +msgstr "右クリックしオブジェクトを修復します" + +msgid "Right button click the icon to drop the object settings" +msgstr "右クリックしオブジェクト設定を開きます" + +msgid "Click the icon to reset all settings of the object" +msgstr "オブジェクトへの編集をリセットします" + +msgid "Right button click the icon to drop the object printable property" +msgstr "Right click the icon to drop the object printable property" + +msgid "Click the icon to toggle printable property of the object" +msgstr "オブジェクトの造形属性を切り替えます" + +msgid "Click the icon to edit support painting of the object" +msgstr "オブジェクトのサポートを編集します" + +msgid "Click the icon to edit color painting of the object" +msgstr "オブジェクトに色塗りをします" + +msgid "Click the icon to shift this object to the bed" +msgstr "Click the icon to shift this object to the bed" + +msgid "Loading file" +msgstr "ファイルを読み込み中" + +msgid "Error!" +msgstr "エラー!" + +msgid "Failed to get the model data in the current file." +msgstr "Failed to get the model data in the current file." + +msgid "Generic" +msgstr "一般" + +msgid "Add Modifier" +msgstr "モディファイアの追加" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"オブジェクトごとの設定モードに切り替え、モディファイア設定を編集できます" + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "オブジェクト設定で、各オブジェクトの造形設定を指定できます。" + +msgid "Delete connector from object which is a part of cut" +msgstr "Delete connector from object which is a part of cut" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Delete solid part from object which is a part of cut" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Delete negative volume from object which is a part of cut" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"To save cut correspondence you can delete all connectors from all related " +"objects." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"This action will break a cut correspondence.\n" +"After that, model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut information first." + +msgid "Delete all connectors" +msgstr "Delete all connectors" + +msgid "Deleting the last solid part is not allowed." +msgstr "最後のソリッドパーツは削除できません。" + +msgid "The target object contains only one part and can not be splited." +msgstr "オブジェクトは一つだけのパーツが入っており、分割できません。" + +msgid "Assembly" +msgstr "アセンブリ" + +msgid "Cut Connectors information" +msgstr "Cut Connectors information" + +msgid "Object manipulation" +msgstr "Object manipulation" + +msgid "Group manipulation" +msgstr "Group manipulation" + +msgid "Object Settings to modify" +msgstr "Object Settings to Modify" + +msgid "Part Settings to modify" +msgstr "Part Settings to Modify" + +msgid "Layer range Settings to modify" +msgstr "Layer Range Settings to Modify" + +msgid "Part manipulation" +msgstr "Part manipulation" + +msgid "Instance manipulation" +msgstr "Instance manipulation" + +msgid "Height ranges" +msgstr "Height ranges" + +msgid "Settings for height range" +msgstr "Settings for height range" + +msgid "Layer" +msgstr "積層" + +msgid "Selection conflicts" +msgstr "選択の競合" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"最初に選択したのがオブジェクトの場合、次に選択できるのがオブジェクトのみで" +"す。" + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"最初に選択したがパーツの場合、次に選択できるのが同じオブジェクトのパーツ" + +msgid "The type of the last solid object part is not to be changed." +msgstr "オブジェクトの最後のパーツはタイプを変更できません。" + +msgid "Negative Part" +msgstr "マイナスパーツ" + +msgid "Support Blocker" +msgstr "サポート除去器" + +msgid "Support Enforcer" +msgstr "サポート増強器" + +msgid "Type:" +msgstr "タイプ" + +msgid "Choose part type" +msgstr "パーツタイプを選択" + +msgid "Enter new name" +msgstr "新しい名前を入力" + +msgid "Renaming" +msgstr "名前を変更中" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "以下のモデルオブジェクトが修復されました。" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "以下のオブジェクトを修復てきませんでした" + +msgid "Repairing was canceled" +msgstr "修復は取消しました" + +msgid "Additional process preset" +msgstr "他のプリセット" + +msgid "Remove parameter" +msgstr "パラメータを削除" + +msgid "to" +msgstr "→" + +msgid "Remove height range" +msgstr "Remove height range" + +msgid "Add height range" +msgstr "Add height range" + +msgid "Invalid numeric." +msgstr "無効な数値" + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "一つのセルは、同じ列のセルにしかコピーできません" + +msgid "multiple cells copy is not supported" +msgstr "複数のセルのコピーには対応していません。" + +msgid "Outside" +msgstr "外側" + +msgid "Layer height" +msgstr "積層ピッチ" + +msgid "Wall loops" +msgstr "壁面層数" + +msgid "Infill density(%)" +msgstr "インフィル密度 (%)" + +msgid "Auto Brim" +msgstr "オートブリム" + +msgid "Mouse ear" +msgstr "" + +msgid "Outer brim only" +msgstr "Outer brim only" + +msgid "Inner brim only" +msgstr "Inner brim only" + +msgid "Outer and inner brim" +msgstr "Outer and inner brim" + +msgid "No-brim" +msgstr "ブリム無し" + +msgid "Outer wall speed" +msgstr "外壁造形速度" + +msgid "Plate" +msgstr "プレート" + +msgid "Brim" +msgstr "ブリム" + +msgid "Object/Part Setting" +msgstr "オブジェクト/パーツ設定" + +msgid "Reset parameter" +msgstr "パラメータをリセット" + +msgid "Multicolor Print" +msgstr "マルチカラー造形" + +msgid "Line Type" +msgstr "種類" + +msgid "More" +msgstr "詳細" + +msgid "Open Preferences." +msgstr "環境設定を開く" + +msgid "Open next tip." +msgstr "次のヒント" + +msgid "Open Documentation in web browser." +msgstr "ブラウザで開く" + +msgid "Color" +msgstr "色" + +msgid "Pause" +msgstr "一時停止" + +msgid "Template" +msgstr "Template" + +msgid "Custom" +msgstr "カスタム" + +msgid "Pause:" +msgstr "Pause:" + +msgid "Custom Template:" +msgstr "Custom Template:" + +msgid "Custom G-code:" +msgstr "Custom G-code:" + +msgid "Custom G-code" +msgstr "カスタム G-code" + +msgid "Enter Custom G-code used on current layer:" +msgstr "現在の積層にカスタムG-codeを追加" + +msgid "Jump to Layer" +msgstr "積層に移動" + +msgid "Please enter the layer number" +msgstr "層の番号をご入力ください" + +msgid "Add Pause" +msgstr "一時停止を追加" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Insert a pause command at the beginning of this layer." + +msgid "Add Custom G-code" +msgstr "カスタムG-codeを追加" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Insert custom G-code at the beginning of this layer." + +msgid "Add Custom Template" +msgstr "カスタムテンプレートを追加" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Insert template custom G-code at the beginning of this layer." + +msgid "Filament " +msgstr "フィラメント" + +msgid "Change filament at the beginning of this layer." +msgstr "Change filament at the beginning of this layer." + +msgid "Delete Pause" +msgstr "Delete Pause" + +msgid "Delete Custom Template" +msgstr "Delete Custom Template" + +msgid "Edit Custom G-code" +msgstr "Edit Custom G-code" + +msgid "Delete Custom G-code" +msgstr "Delete Custom G-code" + +msgid "Delete Filament Change" +msgstr "Delete Filament Change" + +msgid "No printer" +msgstr "プリンタ無し" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "サーバーに接続できませんでした" + +msgid "Check the status of current system services" +msgstr "Check the status of current system services" + +msgid "code" +msgstr "code" + +msgid "Failed to connect to cloud service" +msgstr "Failed to connect to cloud service" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "Please click on the hyperlink above to view the cloud service status" + +msgid "Failed to connect to the printer" +msgstr "プリンターへ接続できませんでした" + +msgid "Connection to printer failed" +msgstr "Connection to printer failed" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Please check the network connection of the printer and Orca." + +msgid "Connecting..." +msgstr "接続中…" + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "空" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Auto Refill" + +msgid "AMS not connected" +msgstr "AMS が接続されていません" + +msgid "Load" +msgstr "Load" + +msgid "Unload" +msgstr "アンロード" + +msgid "Ext Spool" +msgstr "外部スプールホルダー" + +msgid "Tips" +msgstr "ヒント" + +msgid "Guide" +msgstr "ガイド" + +msgid "Retry" +msgstr "再試行" + +msgid "Calibrating AMS..." +msgstr "AMS キャリブレーション" + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"キャリブレーション中に問題が発生しました。クリックして解決策をご確認くださ" +"い。" + +msgid "Calibrate again" +msgstr "再度キャリブレーションを行う" + +msgid "Cancel calibration" +msgstr "キャリブレーションを取消し" + +msgid "Idling..." +msgstr "Idling..." + +msgid "Heat the nozzle" +msgstr "ノズルを加熱" + +msgid "Cut filament" +msgstr "フィラメントを切る" + +msgid "Pull back current filament" +msgstr "フィラメントを引き戻す" + +msgid "Push new filament into extruder" +msgstr "フィラメントを押出機に押入れる" + +msgid "Purge old filament" +msgstr "古いフィラメントを排出" + +msgid "Feed Filament" +msgstr "Feed Filament" + +msgid "Confirm extruded" +msgstr "Confirm that filament has been extruded" + +msgid "Check filament location" +msgstr "Check filament location" + +msgid "Grab new filament" +msgstr "Grab new filament" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filament." + +msgid "Edit" +msgstr "編集" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"選択したオブジェクトはロックされたプレートにあるため、自動レイアウトできませ" +"ん" + +msgid "No arrangable objects are selected." +msgstr "選択したオブジェクトがレイアウト不可です" + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "現在のプレートがロックされたため自動レイアウトできません" + +msgid "Arranging..." +msgstr "レイアウト中" + +msgid "Arranging" +msgstr "レイアウト中" + +msgid "Arranging canceled." +msgstr "レイアウトを取り消しました" + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"レイアウトは完了しましたが、一部レイアウトできないオブジェクトがあります。ス" +"ペースを調整してください。" + +msgid "Arranging done." +msgstr "レイアウト完了" + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "レイアウトは失敗しました、ジオメトリーを処理するのに異常がありました" + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"一つのベッドに収まらないため、下記のオブジェクトを外しました:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"選択したオブジェクトはロックされたプレートにあるため、自動向き調整できませ" +"ん。" + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"プレートがロックされています。\n" +"自動向き調整ができません。" + +msgid "Orienting..." +msgstr "向き調整中" + +msgid "Orienting" +msgstr "向き調整中" + +msgid "Orienting canceled." +msgstr "" + +msgid "Filling" +msgstr "Filling" + +msgid "Bed filling canceled." +msgstr "Bed filling canceled." + +msgid "Bed filling done." +msgstr "Bed filling done." + +msgid "Searching for optimal orientation" +msgstr "最適方向を探す" + +msgid "Orientation search canceled." +msgstr "オリエンテーション検索がキャンセルされました。" + +msgid "Orientation found." +msgstr "オリエンテーションが見つかりました。" + +msgid "Logging in" +msgstr "サインイン中" + +msgid "Login failed" +msgstr "サインイン失敗" + +msgid "Please check the printer network connection." +msgstr "プリンターとのネットワーク接続をご確認ください" + +msgid "Abnormal print file data. Please slice again." +msgstr "Abnormal print file data: please slice again." + +msgid "Task canceled." +msgstr "Task canceled." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "Upload task timed out. Please check the network status and try again." + +msgid "Cloud service connection failed. Please try again." +msgstr "クラウドサービス接続できませんでした、もう一度お試しください" + +msgid "Print file not found. please slice again." +msgstr "Print file not found; please slice again." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." + +msgid "Failed to send the print job. Please try again." +msgstr "造形タスクを送信できませんでした、もう一度お試しください。" + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Failed to upload file to ftp. Please try again." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Check the current status of the Bambu Lab server by clicking on the link " +"above." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"The size of the print file is too large. Please adjust the file size and try " +"again." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "Print file not found; please slice it again and send it for printing." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Failed to upload print file via FTP. Please check the network status and try " +"again." + +msgid "Sending print job over LAN" +msgstr "LAN経由で造形タスクを送信" + +msgid "Sending print job through cloud service" +msgstr "クラウド経由で造形タスクを送信" + +msgid "Print task sending times out." +msgstr "Print task sending times out." + +msgid "Service Unavailable" +msgstr "サービスは利用できません" + +msgid "Unknown Error." +msgstr "不明なエラー" + +msgid "Sending print configuration" +msgstr "構成を送信" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "送信しました、%s秒後デバイスページへ移動します" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "Successfully sent. Automatically jumping to the next page in %ss" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "SDカードが必要です" + +msgid "Sending gcode file over LAN" +msgstr "LANでG-codeファイルを送信" + +msgid "Sending gcode file to sdcard" +msgstr "G-codeファイルをSDカードに送信" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "送信しました、%s秒後自動閉じます。" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "SDカードが必要です" + +msgid "Importing SLA archive" +msgstr "Importing SLA archive" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer presets first before importing that SLA archive." + +msgid "Importing canceled." +msgstr "Importing canceled." + +msgid "Importing done." +msgstr "Importing done." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "You cannot load an SLA project with a multi-part object on the bed" + +msgid "Please check your object list before preset changing." +msgstr "Please check your object list before preset changing." + +msgid "Attention!" +msgstr "注意!" + +msgid "Downloading" +msgstr "ダウンロード中" + +msgid "Download failed" +msgstr "ダウンロード失敗" + +msgid "Cancelled" +msgstr "取消し済" + +msgid "Install successfully." +msgstr "インストール完了" + +msgid "Installing" +msgstr "インストール中" + +msgid "Install failed" +msgstr "インストール失敗" + +msgid "Portions copyright" +msgstr "ライセンス情報" + +msgid "Copyright" +msgstr "著作権情報" + +msgid "License" +msgstr "ライセンス" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orcaのライセンス" + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, version 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "" + +msgid "Libraries" +msgstr "ライブラリー" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"このソフトウェアは、著作権およびその他の所有権がそれぞれの所有者に属するオー" +"プン ソース コンポーネントを使用しています。" + +#, c-format, boost-format +msgid "About %s" +msgstr "%s について" + +msgid "Snapmaker Orca " +msgstr "" + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "" + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "" + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "" +"PrusaSlicer は、Alessandro Ranellucci 製の Slic3r に基づいて作られています。" + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." + +msgid "Version" +msgstr "バージョン" + +msgid "AMS Materials Setting" +msgstr "AMS素材設定" + +msgid "Confirm" +msgstr "確認" + +msgid "Close" +msgstr "閉じる" + +msgid "Colour" +msgstr "色" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "ノズル温度" + +msgid "max" +msgstr "最大" + +msgid "min" +msgstr "最小" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "入力値範囲は %1% ~ %2%" + +msgid "SN" +msgstr "シリアル番号" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "造形中に、AMSスロットを設定できません。" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Factors of Flow Dynamics Calibration" + +msgid "PA Profile" +msgstr "PA Profile" + +msgid "Factor K" +msgstr "係数K" + +msgid "Factor N" +msgstr "係数N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "Setting Virtual slot information while printing is not supported" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Are you sure you want to clear the filament information?" + +msgid "You need to select the material type and color first." +msgstr "You need to select the material type and color first." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" + +msgid "Other Color" +msgstr "Other Color" + +msgid "Custom Color" +msgstr "Custom Color" + +msgid "Dynamic flow calibration" +msgstr "流量キャリブレーション" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "ノズル温度と最大体積速度です。" + +msgid "Nozzle Diameter" +msgstr "ノズル直径" + +msgid "Bed Type" +msgstr "プレート" + +msgid "Nozzle temperature" +msgstr "ノズル温度" + +msgid "Bed Temperature" +msgstr "ベッド温度" + +msgid "Max volumetric speed" +msgstr "最大体積速度" + +msgid "℃" +msgstr "" + +msgid "Bed temperature" +msgstr "ベッド温度" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "開始" + +msgid "Next" +msgstr "次へ" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"キャリブレーションが完了しました。下の写真のように、最も均一な押出ラインを確" +"認し、関連する係数Kを入力してください。" + +msgid "Save" +msgstr "保存" + +msgid "Last Step" +msgstr "戻る" + +msgid "Example" +msgstr "例" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "キャリブレーション中...%d%%" + +msgid "Calibration completed" +msgstr "キャリブレーション完了" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s は %s をサポートしていません" + +msgid "Dynamic flow Calibration" +msgstr "流量キャリブレーション" + +msgid "Step" +msgstr "手順" + +msgid "AMS Slots" +msgstr "AMSスロット" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "注: 同じ素材がロードされた AMS スロットのみが選択できます。" + +msgid "Enable AMS" +msgstr "AMSを有効" + +msgid "Print with filaments in the AMS" +msgstr "AMSのフィラメントで造形します" + +msgid "Disable AMS" +msgstr "AMSを無効" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "外部スプールホルダーのフィラメントで造形します" + +msgid "Current Cabin humidity" +msgstr "Current Cabin humidity" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases: when the lid is open or the " +"desiccant pack is changed. It takes a few hours to absorb the moisture, and " +"low temperatures also slow down the process." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "造形用のフィラメントに対するAMSスロットを設定" + +msgid "Filament used in this print job" +msgstr "使用フィラメント" + +msgid "AMS slot used for this filament" +msgstr "AMSスロット" + +msgid "Click to select AMS slot manually" +msgstr "AMS スロットを手動で選択" + +msgid "Do not Enable AMS" +msgstr "AMSを有効にしない" + +msgid "Print using materials mounted on the back of the case" +msgstr "外部スプールホルダーのフィラメントで造形します" + +msgid "Print with filaments in ams" +msgstr "AMSのフィラメントで造形します" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "外部スプールホルダーのフィラメントで造形します" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"When the current material runs out, the printer will continue to print " +"materials in the following order." + +msgid "Group" +msgstr "Group" + +msgid "The printer does not currently support auto refill." +msgstr "The printer does not currently support auto refill." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"AMS filament backup is not enabled; please enable it in the AMS settings." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"If there are two identical filaments in an AMS, AMS filament backup will be " +"enabled. \n" +"(This currently supports automatic supply of consumables with the same " +"brand, material type, and color)" + +msgid "DRY" +msgstr "DRY" + +msgid "WET" +msgstr "WET" + +msgid "AMS Settings" +msgstr "AMS 設定" + +msgid "Insertion update" +msgstr "挿入時に更新" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"BambuLab純正フィラメントを入れると、フィラメント情報を自動的に読込みます(20" +"秒ほどかかります)" + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "フィラメント情報を自動更新しません、手動で入力できます。" + +msgid "Power on update" +msgstr "起動時に自動更新" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"起動時、フィラメント情報を自動的に読込みます(60秒ほどかかります) 注意:読" +"込み時に、スプールが回転します。" + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "フィラメント情報を自動更新しません、前回の情報を引き続き使用します。" + +msgid "Update remaining capacity" +msgstr "残量を更新" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"BambuLab純正フィラメントの場合、残量の推定を行います。造形時に、残量自動的に" +"更新します。" + +msgid "AMS filament backup" +msgstr "AMS filament backup" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "使用中のフィラメントが切れた時に、同じ属性のフィラメントに切り替えます" + +msgid "Air Printing Detection" +msgstr "Air Printing Detection" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." + +msgid "File" +msgstr "ファイル" + +msgid "Calibration" +msgstr "キャリブレーション" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"プラグインをダウンロードできませんでした。ファイアウォールやVPN設定をご確認く" +"ださい。" + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "プラグインをインストールできませんでした。ご確認ください。" + +msgid "click here to see more info" +msgstr "詳しくはこちら" + +msgid "Please home all axes (click " +msgstr "すべての軸を原点復帰してください(" + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr ")。造形可能領域外へ移動してしまうことを防ぎます。" + +msgid "Go Home" +msgstr "原点帰還" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"エラーが発生しました。システムのメモリ不足か、不具合が発生した可能性がありま" +"す。" + +msgid "Please save project and restart the program. " +msgstr "プロジェクトを保存して、アプリケーションを再起動してください。" + +msgid "Processing G-Code from Previous file..." +msgstr "G-codeを処理中" + +msgid "Slicing complete" +msgstr "スライス完了" + +msgid "Access violation" +msgstr "アクセス違反" + +msgid "Illegal instruction" +msgstr "無効な指令" + +msgid "Divide by zero" +msgstr "ゼロで割る" + +msgid "Overflow" +msgstr "オーバーフロー" + +msgid "Underflow" +msgstr "アンダーフロー" + +msgid "Floating reserved operand" +msgstr "Floating reserved operand" + +msgid "Stack overflow" +msgstr "Stack Overflow" + +msgid "Running post-processing scripts" +msgstr "後処理スクリプトを実行" + +msgid "Successfully executed post-processing script" +msgstr "Successfully executed post-processing script" + +msgid "Unknown error occured during exporting G-code." +msgstr "Gコードのエクスポート中に不明なエラーが発生しました。" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"一時的なGコードの出力Gコードへのコピーに失敗しました。 もしかしたらSDカードが" +"書き込みロックされていませんか?\n" +"エラーメッセージ:%1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"一時Gコードの出力Gコードへのコピーに失敗しました。 ターゲットデバイスに問題が" +"ある可能性があります。もう一度エクスポートするか、別のデバイスを使用してみて" +"ください。 破損した出力Gコードは%1%.tmpにあります。" + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"選択した宛先フォルダーにコピーした後、Gコードの名前を変更できませんでした。 " +"現在のパスは%1%.tmpです。 もう一度やり直してください。" + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"一時的なGコードのコピーは完了しましたが、コピーチェック中に元のGコードの%1%を" +"開くことができませんでした。 出力Gコードは、%2%.tmpです。" + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"一時的なGコードのコピーは完了しましたが、コピーチェック中にエクスポートされた" +"Gコードを開くことができませんでした。 出力Gコードは、%1%.tmpです。" + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "Gコードファイルを%1%にエクスポートしました" + +msgid "Unknown error when export G-code." +msgstr "不明なエラー: G-codeエクスポート" + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"G-codeファイルを保存できませんでした。\n" +"エラーメッセージ:%1%\n" +"ソース ファイル %2%" + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "G-codeの出力が失敗しました" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"%1%にタスクをスケジューリングしました、詳細は「ウインドウ→タスクキュー」にて" +"ご確認ください。" + +msgid "Device" +msgstr "デバイス" + +msgid "Task Sending" +msgstr "Task Sending" + +msgid "Task Sent" +msgstr "Task Sent" + +msgid "Edit multiple printers" +msgstr "" + +msgid "Select connected printers (0/6)" +msgstr "" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "" + +msgid "Offline" +msgstr "オフライン" + +msgid "No task" +msgstr "No task" + +msgid "View" +msgstr "表示" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "" + +msgid "Device Name" +msgstr "Device Name" + +msgid "Task Name" +msgstr "Task Name" + +msgid "Device Status" +msgstr "Device Status" + +msgid "Actions" +msgstr "Actions" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" + +msgid "Add" +msgstr "追加" + +msgid "Idle" +msgstr "待機中" + +msgid "Printing" +msgstr "造形中" + +msgid "Upgrading" +msgstr "" + +msgid "Incompatible" +msgstr "Incompatible" + +msgid "syncing" +msgstr "" + +msgid "Printing Finish" +msgstr "" + +msgid "Printing Failed" +msgstr "" + +msgid "Printing Pause" +msgstr "" + +msgid "Prepare" +msgstr "準備" + +msgid "Slicing" +msgstr "スライス中" + +msgid "Pending" +msgstr "" + +msgid "Sending" +msgstr "送信中" + +msgid "Sending Finish" +msgstr "" + +msgid "Sending Cancel" +msgstr "" + +msgid "Sending Failed" +msgstr "" + +msgid "Print Success" +msgstr "" + +msgid "Print Failed" +msgstr "" + +msgid "Removed" +msgstr "" + +msgid "Resume" +msgstr "再開" + +msgid "Stop" +msgstr "中止" + +msgid "Task Status" +msgstr "Task Status" + +msgid "Sent Time" +msgstr "Sent Time" + +msgid "There are no tasks to be sent!" +msgstr "There are no tasks to be sent!" + +msgid "No historical tasks!" +msgstr "No historical tasks!" + +msgid "Loading..." +msgstr "読込み中" + +msgid "No AMS" +msgstr "No AMS" + +msgid "Send to Multi-device" +msgstr "Send to Multi-device" + +msgid "Preparing print job" +msgstr "造形タスクを準備" + +msgid "Abnormal print file data. Please slice again" +msgstr "ファイルに異常があります、もう一度スライスしてください" + +msgid "There is no device available to send printing." +msgstr "" + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" + +msgid "Use External Spool" +msgstr "Use External Spool" + +msgid "Use AMS" +msgstr "Use AMS" + +msgid "Select Printers" +msgstr "Select Printers" + +msgid "Ams Status" +msgstr "AMS Status" + +msgid "Printing Options" +msgstr "Printing Options" + +msgid "Bed Leveling" +msgstr "ベッドレベリング" + +msgid "Timelapse" +msgstr "タイムラプス" + +msgid "Flow Dynamic Calibration" +msgstr "" + +msgid "Send Options" +msgstr "Send Options" + +msgid "Send to" +msgstr "" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"printers at the same time. (It depends on how many devices can undergo " +"heating at the same time.)" + +msgid "Wait" +msgstr "Wait" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minute each batch. (It depends on how long it takes to complete heating.)" + +msgid "Send" +msgstr "送信" + +msgid "Name is invalid;" +msgstr "名称が無効です" + +msgid "illegal characters:" +msgstr "無効な文字:" + +msgid "illegal suffix:" +msgstr "無効なサフィックス" + +msgid "The name is not allowed to be empty." +msgstr "「名前」が空です" + +msgid "The name is not allowed to start with space character." +msgstr "名前の先頭にスペースを入れないでください" + +msgid "The name is not allowed to end with space character." +msgstr "名前の最後にスペースを入れないでください" + +msgid "The name length exceeds the limit." +msgstr "The name length exceeds the limit." + +msgid "Origin" +msgstr "原点" + +msgid "Size in X and Y of the rectangular plate." +msgstr "プレート上のサイズ" + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "矩形の左前の隅からGコード座標原点までの距離" + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "ベットの直径。原点 (0, 0)がベットの中心に位置するとします。" + +msgid "Rectangular" +msgstr "長方形" + +msgid "Circular" +msgstr "円形" + +msgid "Load shape from STL..." +msgstr "STLからシェープデータを読込む" + +msgid "Settings" +msgstr "設定" + +msgid "Texture" +msgstr "テクスチャ" + +msgid "Remove" +msgstr "削除" + +msgid "Not found:" +msgstr "見つかりません" + +msgid "Model" +msgstr "モデル" + +msgid "Choose an STL file to import bed shape from:" +msgstr "STLファイル(ベッドシェープ)をインポート" + +msgid "Invalid file format." +msgstr "無効なファイル形式" + +msgid "Error! Invalid model" +msgstr "エラー: 無効なモデル" + +msgid "The selected file contains no geometry." +msgstr "選択したファイルにはジオメトリデータが入っていません" + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "選択したファイルには、繋がっていない部分があります為使用できません" + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "ベッドテクスチャをインポート(PNG/SVG)" + +msgid "Choose an STL file to import bed model from:" +msgstr "STLファイル(ベッドモデル)をインポート" + +msgid "Bed Shape" +msgstr "ベッド形状" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" + +msgid "Please check.\n" +msgstr "Please check.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"温度が推奨温度範囲外です、ノズル詰りになる可能性があります。\n" +"続行する前に、ご確認ください。\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "このフィラメントで推奨ノズル温度は %d ~ %d ℃です。" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "値が小さすぎます、0.5に戻します" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"Current chamber temperature is higher than the material's safe temperature; " +"this may result in material softening and nozzle clogs.The maximum safe " +"temperature for the material is %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "積層ピッチが小さすぎます、0.2にリセットされました" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "値が小さいです、0.1にリセットします" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "1層目の高さが無効です、0.2mmにリセットします" + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"この設定はオブジェクトサイズの微調整としてしようしてください。大きく調整する" +"場合は、スケーリングを使用してください。\n" +"\n" +"値を0にリセットします。" + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"コーナーはみ出し補正値が大きいです。\n" +"コーナーはみ出しがまだ大きい場合、他の設定を確認してください。例えば、ベッド" +"温度を下げるなど。\n" +"\n" +"値は0にリセットします。" + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"「アダプティブ積層ピッチ」、或は「独立サポート積層ピッチ」が有効の場合、プラ" +"イムタワーが使用できません。\n" +"どちらの設定にしますか?\n" +"はい - プライムタワーを有効にする\n" +"いいえ - 「アダプティブ積層ピッチ」と「独立サポート積層ピッチ」を有効にする" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"「アダプティブ積層ピッチ」が有効の為、プライムタワーが使用できません。\n" +"どちらの設定にしますか?\n" +"はい - プライムタワーを有効にする\n" +"いいえ - アダプティブ積層ピッチを有効にする" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"「独立サポート積層ピッチ」が有効の場合、プライムタワーが使用できません。\n" +"どちらの設定にしますか?\n" +"はい - プライムタワーを有効にする\n" +"いいえ - 「独立サポート積層ピッチ」を有効にする" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"While printing by object, the extruder may collide with a skirt.\n" +"Thus, reset the skirt layer to 1 to avoid collisions." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " But machines with I3 structure will not generate timelapse videos." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"これらの設定を変更しますか?\n" +"はい - 変更して、スパイラルモードを有効にします\n" +"いいえ - 変更せず、スパイラルモードを有効しません" + +msgid "Auto bed leveling" +msgstr "自動ベッドレベリング" + +msgid "Heatbed preheating" +msgstr "ベッド予熱" + +msgid "Sweeping XY mech mode" +msgstr "XY軸特性を測定" + +msgid "Changing filament" +msgstr "フィラメントを交換" + +msgid "M400 pause" +msgstr "M400一時停止" + +msgid "Paused due to filament runout" +msgstr "フィラメント切れにより一時停止" + +msgid "Heating hotend" +msgstr "ヘッドを加熱" + +msgid "Calibrating extrusion" +msgstr "押出キャリブレーション" + +msgid "Scanning bed surface" +msgstr "ベッド表面を検査" + +msgid "Inspecting first layer" +msgstr "1層目を検査" + +msgid "Identifying build plate type" +msgstr "プレートタイプを識別" + +msgid "Calibrating Micro Lidar" +msgstr "ライダー キャリブレーション" + +msgid "Homing toolhead" +msgstr "ヘッドを原点帰還" + +msgid "Cleaning nozzle tip" +msgstr "ノズル先端をクリーニング" + +msgid "Checking extruder temperature" +msgstr "押出機温度を確認" + +msgid "Printing was paused by the user" +msgstr "ユーザにより一時停止" + +msgid "Pause of front cover falling" +msgstr "フロントカバーの脱落により一時停止" + +msgid "Calibrating the micro lida" +msgstr "ライダー キャリブレーション" + +msgid "Calibrating extrusion flow" +msgstr "押出流量キャリブレーション" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "ノズル温度異常により一時停止" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "ベッド温度異常により一時停止" + +msgid "Filament unloading" +msgstr "Filament unloading" + +msgid "Skip step pause" +msgstr "Skip step pause" + +msgid "Filament loading" +msgstr "Filament loading" + +msgid "Motor noise calibration" +msgstr "Motor noise calibration" + +msgid "Paused due to AMS lost" +msgstr "Paused due to AMS lost" + +msgid "Paused due to low speed of the heat break fan" +msgstr "Paused due to low speed of the heat break fan" + +msgid "Paused due to chamber temperature control error" +msgstr "Paused due to chamber temperature control error" + +msgid "Cooling chamber" +msgstr "Cooling chamber" + +msgid "Paused by the Gcode inserted by user" +msgstr "Paused by the Gcode inserted by user" + +msgid "Motor noise showoff" +msgstr "Motor noise showoff" + +msgid "Nozzle filament covered detected pause" +msgstr "Nozzle filament covered detected pause" + +msgid "Cutter error pause" +msgstr "Cutter error pause" + +msgid "First layer error pause" +msgstr "First layer error pause" + +msgid "Nozzle clog pause" +msgstr "Nozzle clog pause" + +msgid "Unknown" +msgstr "不明" + +msgid "Fatal" +msgstr "重大的" + +msgid "Serious" +msgstr "重大な" + +msgid "Common" +msgstr "共通" + +msgid "Update successful." +msgstr "更新は完了しました。" + +msgid "Downloading failed." +msgstr "ダウンロード失敗" + +msgid "Verification failed." +msgstr "認証失敗" + +msgid "Update failed." +msgstr "更新が失敗しました。" + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃. In order to avoid extruder clogging, low temperature filament (PLA/PETG/" +"TPU) is not allowed to be loaded." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Low temperature filament (PLA/PETG/TPU) is loaded in the extruder. In order " +"to avoid extruder clogging, it is not allowed to set the chamber temperature " +"above 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated, and the target chamber temperature will " +"automatically be set to 0℃." + +msgid "Failed to start printing job" +msgstr "造形タスクを開始できませんでした" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" +"This calibration does not support the currently selected nozzle diameter" + +msgid "Current flowrate cali param is invalid" +msgstr "Current flowrate cali param is invalid" + +msgid "Selected diameter and machine diameter do not match" +msgstr "Selected diameter and machine diameter do not match" + +msgid "Failed to generate cali gcode" +msgstr "Failed to generate cali gcode" + +msgid "Calibration error" +msgstr "Calibration error" + +msgid "TPU is not supported by AMS." +msgstr "TPU is not supported by the AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF is not supported by the AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Damp PVA will become flexible and get stuck inside the AMS; please take care " +"to dry it well before use." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"CF/GF filaments are hard and brittle, so they can easily break or get stuck " +"in an AMS; please use with caution." + +msgid "default" +msgstr "デフォルト" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "カスタムG-コードの編集(%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "組込みプレースホルダー (アイテムをダブルクリックして G コードに追加)" + +msgid "Search gcode placeholders" +msgstr "" + +msgid "Add selected placeholder to G-code" +msgstr "選択したプレースホルダーをGコードに追加する" + +msgid "Select placeholder" +msgstr "プレースホルダーを選択" + +msgid "[Global] Slicing State" +msgstr "" + +msgid "Read Only" +msgstr "" + +msgid "Read Write" +msgstr "" + +msgid "Slicing State" +msgstr "" + +msgid "Print Statistics" +msgstr "" + +msgid "Objects Info" +msgstr "" + +msgid "Dimensions" +msgstr "寸法" + +msgid "Temperatures" +msgstr "温度" + +msgid "Timestamps" +msgstr "タイムスタンプ" + +#, boost-format +msgid "Specific for %1%" +msgstr "%1%に固有" + +msgid "Presets" +msgstr "Presets" + +msgid "Print settings" +msgstr "造形設定" + +msgid "Filament settings" +msgstr "フィラメント設定" + +msgid "SLA Materials settings" +msgstr "SLAマテリアル設定" + +msgid "Printer settings" +msgstr "プリンター設定" + +msgid "parameter name" +msgstr "パラメータ名" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s をパーセンテージにすることはできません" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "%s の値が範囲外です、続行しますか?" + +msgid "Parameter validation" +msgstr "パラメータ検証" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "Value %s is out of range. The valid range is from %d to %d." + +msgid "Value is out of range." +msgstr "値が範囲外です。" + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"%s%% か、それとも %s %sですか?\n" +"%s%% の場合ははい、 %s %s はいいえ。" + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "入力形式が無効です。 次の形式の次元の予想されるベクトル:\"%1%\"" + +msgid "Input value is out of range" +msgstr "入力値が範囲を超えています" + +msgid "Some extension in the input is invalid" +msgstr "入力の一部の拡張子が無効" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "無効なフォーマット、%1%であるはずです。" + +msgid "Layer Height" +msgstr "積層ピッチ" + +msgid "Line Width" +msgstr "押出線幅" + +msgid "Fan Speed" +msgstr "ファン回転速度" + +msgid "Temperature" +msgstr "温度" + +msgid "Flow" +msgstr "流量" + +msgid "Tool" +msgstr "ツール" + +msgid "Layer Time" +msgstr "積層時間" + +msgid "Layer Time (log)" +msgstr "積層時間 (Log)" + +msgid "Height: " +msgstr "高度" + +msgid "Width: " +msgstr "幅" + +msgid "Speed: " +msgstr "速度" + +msgid "Flow: " +msgstr "フロー" + +msgid "Layer Time: " +msgstr "積層時間" + +msgid "Fan: " +msgstr "ファン回転速度" + +msgid "Temperature: " +msgstr "温度" + +msgid "Loading G-codes" +msgstr "G-codeを読み込み" + +msgid "Generating geometry vertex data" +msgstr "ジオメトリ頂点データを生成" + +msgid "Generating geometry index data" +msgstr "ジオメトリ・インデックス・データを生成" + +msgid "Statistics of All Plates" +msgstr "Statistics of All Plates" + +msgid "Display" +msgstr "表示" + +msgid "Flushed" +msgstr "フラッシュ" + +msgid "Tower" +msgstr "Tower" + +msgid "Total" +msgstr "合計" + +msgid "Total Estimation" +msgstr "予測合計" + +msgid "Total time" +msgstr "総時間" + +msgid "Total cost" +msgstr "Total cost" + +msgid "up to" +msgstr "最大" + +msgid "above" +msgstr "以上" + +msgid "from" +msgstr "from" + +msgid "Color Scheme" +msgstr "配色スキーム" + +msgid "Time" +msgstr "時間" + +msgid "Percent" +msgstr "%" + +msgid "Used filament" +msgstr "フィラメント使用量" + +msgid "Layer Height (mm)" +msgstr "積層ピッチ(mm)" + +msgid "Line Width (mm)" +msgstr "押出線幅(mm)" + +msgid "Speed (mm/s)" +msgstr "速度 (mm/s)" + +msgid "Fan Speed (%)" +msgstr "ファン回転速度 (%)" + +msgid "Temperature (°C)" +msgstr "温度 (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "流量 (mm³/s)" + +msgid "Travel" +msgstr "移動" + +msgid "Seams" +msgstr "継ぎ目" + +msgid "Retract" +msgstr "リトラクション" + +msgid "Unretract" +msgstr "リトラクション回復" + +msgid "Filament Changes" +msgstr "フィラメント交換" + +msgid "Wipe" +msgstr "拭き上げ" + +msgid "Options" +msgstr "オプション" + +msgid "travel" +msgstr "移動" + +msgid "Extruder" +msgstr "押出機" + +msgid "Filament change times" +msgstr "フィラメント交換回数" + +msgid "Cost" +msgstr "コスト" + +msgid "Color change" +msgstr "色変更" + +msgid "Print" +msgstr "造形する" + +msgid "Printer" +msgstr "プリンター" + +msgid "Custom g-code" +msgstr "" + +msgid "ToolChange" +msgstr "" + +msgid "Time Estimation" +msgstr "予測時間" + +msgid "Normal mode" +msgstr "通常モード" + +msgid "Total Filament" +msgstr "Total Filament" + +msgid "Model Filament" +msgstr "Model Filament" + +msgid "Prepare time" +msgstr "準備時間" + +msgid "Model printing time" +msgstr "モデル造形時間" + +msgid "Switch to silent mode" +msgstr "サイレントモードに切り替える" + +msgid "Switch to normal mode" +msgstr "通常モードに切り替え" + +msgid "Variable layer height" +msgstr "可変積層ピッチ" + +msgid "Adaptive" +msgstr "アダプティブ" + +msgid "Quality / Speed" +msgstr "品質/速度" + +msgid "Smooth" +msgstr "滑らか目" + +msgid "Radius" +msgstr "半径" + +msgid "Keep min" +msgstr "最小限に抑える" + +msgid "Left mouse button:" +msgstr "マウス左ボタン" + +msgid "Add detail" +msgstr "詳細を追加" + +msgid "Right mouse button:" +msgstr "マウス右ボタン" + +msgid "Remove detail" +msgstr "詳細を削除" + +msgid "Shift + Left mouse button:" +msgstr "Shift + マウス左ボタン" + +msgid "Reset to base" +msgstr "ベースにリセット" + +msgid "Shift + Right mouse button:" +msgstr "Shift + マウス右ボタン" + +msgid "Smoothing" +msgstr "スムージング" + +msgid "Mouse wheel:" +msgstr "マウスホイール" + +msgid "Increase/decrease edit area" +msgstr "編集領域を拡大/縮小" + +msgid "Sequence" +msgstr "順番" + +msgid "Mirror Object" +msgstr "オブジェクトを反転" + +msgid "Tool Move" +msgstr "ツール 移動" + +msgid "Tool Rotate" +msgstr "Tool Rotate" + +msgid "Move Object" +msgstr "オブジェクトを移動" + +msgid "Auto Orientation options" +msgstr "向き調整オプション" + +msgid "Enable rotation" +msgstr "回転を有効" + +msgid "Optimize support interface area" +msgstr "サポート接触面を最適化" + +msgid "Orient" +msgstr "向き調整" + +msgid "Arrange options" +msgstr "レイアウト設定" + +msgid "Spacing" +msgstr "間隔" + +msgid "0 means auto spacing." +msgstr "0 means auto spacing." + +msgid "Auto rotate for arrangement" +msgstr "自動回転" + +msgid "Allow multiple materials on same plate" +msgstr "一つのプレートに複数の材料を使用可能" + +msgid "Avoid extrusion calibration region" +msgstr "押出しキャリブレーション領域を避ける" + +msgid "Align to Y axis" +msgstr "Align to Y axis" + +msgid "Add plate" +msgstr "プレートを追加" + +msgid "Auto orient" +msgstr "自動向き調整" + +msgid "Arrange all objects" +msgstr "全てをレイアウト" + +msgid "Arrange objects on selected plates" +msgstr "選択したプレートをレイアウト" + +msgid "Split to objects" +msgstr "オブジェクトに分割" + +msgid "Split to parts" +msgstr "パーツに分割" + +msgid "Assembly View" +msgstr "組立て" + +msgid "Select Plate" +msgstr "プレートを選択" + +msgid "Assembly Return" +msgstr "戻る" + +msgid "return" +msgstr "戻る" + +msgid "Paint Toolbar" +msgstr "ペイント ツールバー" + +msgid "Explosion Ratio" +msgstr "分解比率" + +msgid "Section View" +msgstr "断面" + +msgid "Assemble Control" +msgstr "組立て" + +msgid "Total Volume:" +msgstr "消費量" + +msgid "Assembly Info" +msgstr "アセンブリ情報" + +msgid "Volume:" +msgstr "ボリューム" + +msgid "Size:" +msgstr "サイズ:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" + +msgid "An object is layed over the boundary of plate." +msgstr "プレートの境界を超えるオブジェクトがあります" + +msgid "A G-code path goes beyond the max print height." +msgstr "A G-code path goes beyond the max print height." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "G-codeはプレートの境界を超えています。" + +msgid "Only the object being edit is visible." +msgstr "編集中のオブジェクトのみ表示されます" + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"プレートの境界を越えるか、高さ制限を超えるオブジェクトがあります、ご確認くだ" +"さい" + +msgid "Calibration step selection" +msgstr "キャリブレーション項目を選択" + +msgid "Micro lidar calibration" +msgstr "ライダー キャリブレーション" + +msgid "Bed leveling" +msgstr "ベッドレベリング" + +msgid "Vibration compensation" +msgstr "Vibration compensation" + +msgid "Motor noise cancellation" +msgstr "Motor noise cancellation" + +msgid "Calibration program" +msgstr "キャリブレーション項目" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"キャリブレーションではデバイスの状態を検知し、使用により生じた偏差を最小化し" +"ます。デバイスが最適なパフォーマンスを出せる状態を維持します。" + +msgid "Calibration Flow" +msgstr "キャリブレーション項目" + +msgid "Start Calibration" +msgstr "キャリブレーションを開始" + +msgid "Completed" +msgstr "完了" + +msgid "Calibrating" +msgstr "キャリブレーション中" + +msgid "No step selected" +msgstr "No step selected" + +msgid "Auto-record Monitoring" +msgstr "自動録画モニタリング" + +msgid "Go Live" +msgstr "公開" + +msgid "Liveview Retry" +msgstr "Liveview Retry" + +msgid "Resolution" +msgstr "分解能" + +msgid "Enable" +msgstr "有効化" + +msgid "Hostname or IP" +msgstr "" + +msgid "Custom camera source" +msgstr "" + +msgid "Show \"Live Video\" guide page." +msgstr "「ライブビュー」ガイドを表示" + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "プリンターとの接続(LAN)" + +msgid "Please input the printer access code:" +msgstr "アクセスコードを入力してください" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"下記の図面の様に、プリンターの設定→ネットワーク→アクセスコードで確認できます" + +msgid "Invalid input." +msgstr "無効な入力" + +msgid "New Window" +msgstr "新規ウィンドウ" + +msgid "Open a new window" +msgstr "新しいウィンドウを開く" + +msgid "Application is closing" +msgstr "アプリケーションを終了中…" + +msgid "Closing Application while some presets are modified." +msgstr "プリセットが変更されたが終了します" + +msgid "Logging" +msgstr "ログ" + +msgid "Preview" +msgstr "プレビュー" + +msgid "Multi-device" +msgstr "Multi-device" + +msgid "Project" +msgstr "プロジェクト" + +msgid "Yes" +msgstr "はい" + +msgid "No" +msgstr "いいえ" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "will be closed before creating a new model. Do you want to continue?" + +msgid "Slice plate" +msgstr "スライス" + +msgid "Print plate" +msgstr "造形開始" + +msgid "Slice all" +msgstr "スライス (全プレート)" + +msgid "Export G-code file" +msgstr "G-codeをエクスポート" + +msgid "Export plate sliced file" +msgstr "エクスポート" + +msgid "Export all sliced file" +msgstr "エクスポート (全プレート)" + +msgid "Print all" +msgstr "造形開始 (全プレート)" + +msgid "Send all" +msgstr "送信 (全プレート)" + +msgid "Keyboard Shortcuts" +msgstr "ショートカット" + +msgid "Show the list of the keyboard shortcuts" +msgstr "ショートカット一覧を表示" + +msgid "Setup Wizard" +msgstr "セットアップ ウィザード" + +msgid "Show Configuration Folder" +msgstr "構成フォルダを表示" + +msgid "Show Tip of the Day" +msgstr "「毎日のヒント」を表示" + +msgid "Check for Update" +msgstr "更新を確認" + +msgid "Open Network Test" +msgstr "ネットワークテストを開く" + +#, c-format, boost-format +msgid "&About %s" +msgstr "%s について" + +msgid "Upload Models" +msgstr "モデルをアップロード" + +msgid "Download Models" +msgstr "モデルをダウンロード" + +msgid "Default View" +msgstr "デフォルトビュー" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "トップ" + +msgid "Top View" +msgstr "トップ" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "底面" + +msgid "Bottom View" +msgstr "底面" + +msgid "Front" +msgstr "正面" + +msgid "Front View" +msgstr "正面" + +msgid "Rear" +msgstr "背面" + +msgid "Rear View" +msgstr "背面" + +msgid "Left" +msgstr "左面" + +msgid "Left View" +msgstr "左面" + +msgid "Right" +msgstr "右面" + +msgid "Right View" +msgstr "右面" + +msgid "Start a new window" +msgstr "新規ウインドウ" + +msgid "New Project" +msgstr "新規プロジェクト" + +msgid "Start a new project" +msgstr "新しいプロジェクトで始める" + +msgid "Open a project file" +msgstr "プロジェクトファイルを開く" + +msgid "Recent projects" +msgstr "最近のプロジェクト" + +msgid "Save Project" +msgstr "プロジェクトを保存" + +msgid "Save current project to file" +msgstr "現在のプロジェクトを保存" + +msgid "Save Project as" +msgstr "プロジェクトを名前を付けて保存" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "プロジェクトを名前を付けて保存" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "3MF/STL/STEP/SVG/OBJ/AMFをインポート" + +msgid "Load a model" +msgstr "モデルを読み込む" + +msgid "Import Zip Archive" +msgstr "" + +msgid "Load models contained within a zip archive" +msgstr "" + +msgid "Import Configs" +msgstr "構成データ" + +msgid "Load configs" +msgstr "構成を読み込む" + +msgid "Import" +msgstr "インポート" + +msgid "Export all objects as one STL" +msgstr "Export all objects as one STL" + +msgid "Export all objects as STLs" +msgstr "Export all objects as STLs" + +msgid "Export Generic 3MF" +msgstr "汎用3MF" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "3mfファイルをエクスポート(一部3mf機能を無効)" + +msgid "Export current sliced file" +msgstr "エクスポート" + +msgid "Export all plate sliced file" +msgstr "エクスポート (全プレート)" + +msgid "Export G-code" +msgstr "G-codeをエクスポート" + +msgid "Export current plate as G-code" +msgstr "現在のプレートをG-codeでエクスポート" + +msgid "Export Preset Bundle" +msgstr "" + +msgid "Export current configuration to files" +msgstr "現在の構成をエクスポート" + +msgid "Export" +msgstr "エクスポート" + +msgid "Quit" +msgstr "終了" + +msgid "Undo" +msgstr "元に戻す" + +msgid "Redo" +msgstr "やり直す" + +msgid "Cut selection to clipboard" +msgstr "選択範囲をカット" + +msgid "Copy" +msgstr "コピー" + +msgid "Copy selection to clipboard" +msgstr "選択した内容をコピー" + +msgid "Paste" +msgstr "貼り付け" + +msgid "Paste clipboard" +msgstr "貼り付け" + +msgid "Delete selected" +msgstr "選択を削除" + +msgid "Deletes the current selection" +msgstr "現在の選択項目を削除" + +msgid "Delete all" +msgstr "全てを削除" + +msgid "Deletes all objects" +msgstr "全てのオブジェクトを削除" + +msgid "Clone selected" +msgstr "選択したオブジェクトを複製" + +msgid "Clone copies of selections" +msgstr "選択したオブジェクトを複製" + +msgid "Select all" +msgstr "全てを選択" + +msgid "Selects all objects" +msgstr "すべてのオブジェクトを選択" + +msgid "Deselect all" +msgstr "選択を解除" + +msgid "Deselects all objects" +msgstr "全てのオブジェクトを選択解除" + +msgid "Use Perspective View" +msgstr "パースペクティブを使用" + +msgid "Use Orthogonal View" +msgstr "直交投影を使用" + +msgid "Show &G-code Window" +msgstr "" + +msgid "Show g-code window in Previce scene" +msgstr "" + +msgid "Show 3D Navigator" +msgstr "" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "" + +msgid "Reset Window Layout" +msgstr "" + +msgid "Reset to default window layout" +msgstr "" + +msgid "Show &Labels" +msgstr "ラベルを表示" + +msgid "Show object labels in 3D scene" +msgstr "3Dシーンにラベルを表示" + +msgid "Show &Overhang" +msgstr "Show &Overhang" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Show object overhang highlight in 3D scene" + +msgid "Preferences" +msgstr "設定" + +msgid "Help" +msgstr "ヘルプ" + +msgid "Temperature Calibration" +msgstr "Temperature Calibration" + +msgid "Pass 1" +msgstr "Pass 1" + +msgid "Flow rate test - Pass 1" +msgstr "Flow rate test - Pass 1" + +msgid "Pass 2" +msgstr "Pass 2" + +msgid "Flow rate test - Pass 2" +msgstr "Flow rate test - Pass 2" + +msgid "Flow rate" +msgstr "Flow rate" + +msgid "Pressure advance" +msgstr "Pressure advance" + +msgid "Retraction test" +msgstr "Retraction test" + +msgid "Orca Tolerance Test" +msgstr "Orca Tolerance Test" + +msgid "Max flowrate" +msgstr "Max flowrate" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "More..." + +msgid "Tutorial" +msgstr "Tutorial" + +msgid "Calibration help" +msgstr "Calibration help" + +msgid "More calibrations" +msgstr "More calibrations" + +msgid "&Open G-code" +msgstr "G-codeを開く" + +msgid "Open a G-code file" +msgstr "G-codeファイルを開く" + +msgid "Re&load from Disk" +msgstr "ディスクからの再読み込み" + +msgid "Reload the plater from disk" +msgstr "プレートを再読込み" + +msgid "Export &Toolpaths as OBJ" +msgstr "Export &Toolpaths as OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Export toolpaths as OBJ" + +msgid "Open &Slicer" +msgstr "Studioを開く" + +msgid "Open Slicer" +msgstr "Studioを開く" + +msgid "&Quit" +msgstr "終了" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "%s を終了" + +msgid "&File" +msgstr "ファイル" + +msgid "&View" +msgstr "表示" + +msgid "&Help" +msgstr "ヘルプ" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "A file exists with the same name: %s. Do you want to override it?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "A config exists with the same name: %s. Do you want to override it?" + +msgid "Overwrite file" +msgstr "ファイルを上書き" + +msgid "Yes to All" +msgstr "全ては[はい]" + +msgid "No to All" +msgstr "全ていいえ" + +msgid "Choose a directory" +msgstr "フォルダを選択" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" + +msgid "Export result" +msgstr "エクスポート結果" + +msgid "Select profile to load:" +msgstr "プロファイルを選択" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" + +msgid "Import result" +msgstr "インポート結果" + +msgid "File is missing" +msgstr "ファイルが行方不明" + +msgid "The project is no longer available." +msgstr "プロジェクトは使用できなくなりました。" + +msgid "Filament Settings" +msgstr "フィラメント設定" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"下記のデータをクラウドと同期しますか?\n" +"1. プロセスプリセット\n" +"2. フィラメント設定\n" +"3. プリンター設定" + +msgid "Synchronization" +msgstr "同期" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "The device cannot handle more conversations. Please retry later." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "Player is malfunctioning. Please reinstall the system player." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "The player is not loaded; please click the \"play\" button to retry." + +msgid "Please confirm if the printer is connected." +msgstr "Please confirm if the printer is connected." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"The printer is currently busy downloading. Please try again after it " +"finishes." + +msgid "Printer camera is malfunctioning." +msgstr "Printer camera is malfunctioning." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "A problem occurred. Please update the printer firmware and try again." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." + +msgid "Please enter the IP of printer to connect." +msgstr "Please enter the IP of the printer to connect." + +msgid "Initializing..." +msgstr "初期化中..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "Connection Failed. Please check the network and try again" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Please check the network and try again. You can restart or update the " +"printer if the issue persists." + +msgid "The printer has been logged out and cannot connect." +msgstr "The printer has been logged out and cannot connect." + +msgid "Stopped." +msgstr "中止しました" + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "LAN接続失敗 (ライブビュー開始失敗)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "バーチャルカメラツールが必要です。インストールしますか?" + +msgid "Downloading Virtual Camera Tools" +msgstr "バーチャルカメラツールをダウンロード" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"別のバーチャルカメラを作動しています為、もう一個が起動できません。\n" +"このバーチャルカメラを停止しますか?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "バーチャルカメラの初期化が失敗しました!(%s)" + +msgid "Network unreachable" +msgstr "ネットワークにアクセスできません" + +msgid "Information" +msgstr "情報" + +msgid "Playing..." +msgstr "再生中..." + +msgid "Year" +msgstr "年" + +msgid "Month" +msgstr "月" + +msgid "All Files" +msgstr "全ファイル" + +msgid "Group files by year, recent first." +msgstr "年でグループ化、新しい順で並べ替え" + +msgid "Group files by month, recent first." +msgstr "月でグループ化、新しい順で並べ替え" + +msgid "Show all files, recent first." +msgstr "全てのファイルを表示" + +msgid "Switch to timelapse files." +msgstr "タイムラプスに切替え" + +msgid "Video" +msgstr "ビデオ" + +msgid "Switch to video files." +msgstr "ビデオファイルに切替え" + +msgid "Switch to 3mf model files." +msgstr "Switch to 3mf model files." + +msgid "Delete selected files from printer." +msgstr "プリンターから選択したファイルを削除" + +msgid "Download" +msgstr "ダウンロード" + +msgid "Download selected files from printer." +msgstr "プリンターから選択したファイルをダウンロード" + +msgid "Select" +msgstr "選択" + +msgid "Batch manage files." +msgstr "ファイルのバッチ処理" + +msgid "Refresh" +msgstr "再読込" + +msgid "Reload file list from printer." +msgstr "Reload file list from printer." + +msgid "No printers." +msgstr "プリンタなし" + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "接続に失敗しました (%d)" + +msgid "Loading file list..." +msgstr "ファイルリストを読込み中" + +msgid "No files" +msgstr "ファイル無し" + +msgid "Load failed" +msgstr "Load failed" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Initialization failed (Device connection not ready)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "LAN Connection Failed (Failed to view sdcard)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "Browsing file in SD card is not supported in LAN Only Mode." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "初期化失敗 (%s)" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" + +msgid "Delete files" +msgstr "Delete files" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Do you want to delete the file '%s' from printer?" + +msgid "Delete file" +msgstr "Delete file" + +msgid "Fetching model infomations ..." +msgstr "Fetching model information..." + +msgid "Failed to fetch model information from printer." +msgstr "Failed to fetch model information from printer." + +msgid "Failed to parse model information." +msgstr "Failed to parse model information." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "ファイル %s が見つかりませんでした、もう一度ダウンロードしてください。" + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"File: %s\n" +"Title: %s\n" + +msgid "Download waiting..." +msgstr "ダウンロード待ち" + +msgid "Play" +msgstr "再生" + +msgid "Open Folder" +msgstr "フォルダを開く" + +msgid "Download finished" +msgstr "ダウンロード完了" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "ダウンロード中 %d%%" + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." + +msgid "File does not exist." +msgstr "File does not exist." + +msgid "File checksum error. Please retry." +msgstr "File checksum error. Please retry." + +msgid "Not supported on the current printer version." +msgstr "Not supported on the current printer version." + +msgid "Storage unavailable, insert SD card." +msgstr "Storage unavailable; please insert MicroSD card." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Error code: %d" + +msgid "Speed:" +msgstr "速度" + +msgid "Deadzone:" +msgstr "デッドゾーン:" + +msgid "Options:" +msgstr "オプション" + +msgid "Zoom" +msgstr "ズーム" + +msgid "Translation/Zoom" +msgstr "移動/ズーム" + +msgid "3Dconnexion settings" +msgstr "3Dconnexion設定" + +msgid "Swap Y/Z axes" +msgstr "Y/Z 軸を交換" + +msgid "Invert X axis" +msgstr "" + +msgid "Invert Y axis" +msgstr "" + +msgid "Invert Z axis" +msgstr "" + +msgid "Invert Yaw axis" +msgstr "" + +msgid "Invert Pitch axis" +msgstr "" + +msgid "Invert Roll axis" +msgstr "" + +msgid "Printing Progress" +msgstr "進捗" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Layer: N/A" + +msgid "Clear" +msgstr "クリア" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"You have completed printing the mall model, \n" +"but synchronizing rating information has failed." + +msgid "How do you like this printing file?" +msgstr "How do you like this printing file?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" + +msgid "Rate" +msgstr "Rate" + +msgid "Camera" +msgstr "カメラ" + +msgid "SD Card" +msgstr "SDカード" + +msgid "Camera Setting" +msgstr "カメラ設定" + +msgid "Switch Camera View" +msgstr "" + +msgid "Control" +msgstr "コントロール" + +msgid "Printer Parts" +msgstr "Printer Parts" + +msgid "Print Options" +msgstr "造型オプション" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "照明" + +msgid "Aux" +msgstr "補助" + +msgid "Cham" +msgstr "筐体" + +msgid "Bed" +msgstr "ベッド" + +msgid "Debug Info" +msgstr "デバッグ情報" + +msgid "No SD Card" +msgstr "SDカードなし" + +msgid "SD Card Abnormal" +msgstr "SDカードに異常があります。" + +msgid "Cancel print" +msgstr "造形を取消し" + +msgid "Are you sure you want to cancel this print?" +msgstr "現在の造形をキャンセルしても宜しいでしょうか?" + +msgid "Downloading..." +msgstr "ダウンロード中" + +msgid "Cloud Slicing..." +msgstr "クラウドにてスライス中" + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "In Cloud Slicing Queue, there are %s tasks ahead of you." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Layer: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Layer: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." + +msgid "Still unload" +msgstr "アンロード" + +msgid "Still load" +msgstr "ロード" + +msgid "Please select an AMS slot before calibration" +msgstr "キャリブレーション前に、AMSスロットを選択してください" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"フィラメント情報を読み取れません: フィラメントがロードされていません。一度\t" +"フィラメントをアンロードしてから再試行していください。" + +msgid "This only takes effect during printing" +msgstr "造形時の設定" + +msgid "Silent" +msgstr "サイレント" + +msgid "Standard" +msgstr "標準" + +msgid "Sport" +msgstr "スポーツ" + +msgid "Ludicrous" +msgstr "超高速" + +msgid "Can't start this without SD card." +msgstr "起動するのにSDカードが必要です。" + +msgid "Rate the Print Profile" +msgstr "Rate the Print Profile" + +msgid "Comment" +msgstr "Comment" + +msgid "Rate this print" +msgstr "Rate this print" + +msgid "Add Photo" +msgstr "Add Photo" + +msgid "Delete Photo" +msgstr "Delete Photo" + +msgid "Submit" +msgstr "Submit" + +msgid "Please click on the star first." +msgstr "Please click on the star first." + +msgid "InFo" +msgstr "Info" + +msgid "Get oss config failed." +msgstr "Get oss config failed." + +msgid "Upload Pictrues" +msgstr "Upload Pictures" + +msgid "Number of images successfully uploaded" +msgstr "Number of images successfully uploaded" + +msgid " upload failed" +msgstr " upload failed" + +msgid " upload config prase failed\n" +msgstr " upload config prase failed\n" + +msgid " No corresponding storage bucket\n" +msgstr " No corresponding storage bucket\n" + +msgid " can not be opened\n" +msgstr " cannot be opened\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" + +msgid "info" +msgstr "情報" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "Synchronizing the printing results. Please retry a few seconds later." + +msgid "Upload failed\n" +msgstr "Upload failed\n" + +msgid "obtaining instance_id failed\n" +msgstr "obtaining instance_id failed\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Your comment result cannot be uploaded due to the following reasons:\n" +"\n" +" error code: " + +msgid "error message: " +msgstr "error message: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Would you like to redirect to the webpage to give a rating?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" + +msgid "You can select up to 16 images." +msgstr "You can select up to 16 images." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating (4 or 5 stars)." + +msgid "Status" +msgstr "デバイス状態" + +msgid "Update" +msgstr "更新" + +msgid "Don't show again" +msgstr "次回から表示しない" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s エラー" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s エラー" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s 警告" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s 警告" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s 情報" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s 情報" + +msgid "Skip" +msgstr "スキップ" + +msgid "Newer 3mf version" +msgstr "新3mfバージョン" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" + +msgid "Download Beta Version" +msgstr "Download Beta Version" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" + +msgid "Current Version: " +msgstr "Current Version: " + +msgid "Latest Version: " +msgstr "Latest Version: " + +msgid "Not for now" +msgstr "Not for now" + +msgid "3D Mouse disconnected." +msgstr "3D Mouseが切断されました。" + +msgid "Configuration can update now." +msgstr "新しい構成が使用できます。今すぐアップデートしますか?" + +msgid "Detail." +msgstr "詳細" + +msgid "Integration was successful." +msgstr "統合は成功しました" + +msgid "Integration failed." +msgstr "統合失敗" + +msgid "Undo integration was successful." +msgstr "統合の取り消しが成功しました。" + +msgid "New network plug-in available." +msgstr "新しいネットワークプラグインが利用可能" + +msgid "Details" +msgstr "詳細" + +msgid "New printer config available." +msgstr "New printer config available." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "統合の取り消しに失敗しました。" + +msgid "Exporting." +msgstr "エクスポート中" + +msgid "Software has New version." +msgstr "アップデートが利用可能です" + +msgid "Goto download page." +msgstr "ダウンロードページに移動" + +msgid "Open Folder." +msgstr "フォルダを開く" + +msgid "Safely remove hardware." +msgstr "Safely remove hardware." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$dのオブジェクトはサポートが付いています" + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$dのオブジェクトは色が付いています" + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "" + +msgid "ERROR" +msgstr "エラー" + +msgid "COMPLETED" +msgstr "完了" + +msgid "CANCELED" +msgstr "取消し済" + +msgid "Cancel upload" +msgstr "アップロードを取消し" + +msgid "Jump to" +msgstr "確認" + +msgid "Error:" +msgstr "エラー:" + +msgid "Warning:" +msgstr "警告" + +msgid "Export successfully." +msgstr "エクスポートが成功しました。" + +msgid "Model file downloaded." +msgstr "Model file downloaded." + +msgid "Serious warning:" +msgstr "Serious warning:" + +msgid " (Repair)" +msgstr " (修復)" + +msgid " Click here to install it." +msgstr "こちらでインストールします。" + +msgid "WARNING:" +msgstr "警告" + +msgid "Your model needs support ! Please make support material enable." +msgstr "" +"このモデルを造形するにはサポートが必要です、サポートを有効にしてください" + +msgid "Gcode path overlap" +msgstr "G-codeにパスのオーバーラップがあります" + +msgid "Support painting" +msgstr "サポートペイント" + +msgid "Color painting" +msgstr "色塗り" + +msgid "Cut connectors" +msgstr "Cut connectors" + +msgid "Layers" +msgstr "積層" + +msgid "Range" +msgstr "範囲" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "OpenGLのバージョンは2.0以下の為アプリケーションを実行できません\n" + +msgid "Please upgrade your graphics card driver." +msgstr "パソコンのGPUドライバーを更新してください" + +msgid "Unsupported OpenGL version" +msgstr "非対応のOpenGLバージョン" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"シェーダを読み込めません:\n" +"%s" + +msgid "Error loading shaders" +msgstr "シェーダーの読込みにエラーが発生しました" + +msgctxt "Layers" +msgid "Top" +msgstr "トップ" + +msgctxt "Layers" +msgid "Bottom" +msgstr "底面" + +msgid "Enable AI monitoring of printing" +msgstr "AI モニタリングを有効" + +msgid "Sensitivity of pausing is" +msgstr "感度" + +msgid "Enable detection of build plate position" +msgstr "プレート位置検出を有効" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "タグが検出されない場合、造形を停止する場合があります。" + +msgid "First Layer Inspection" +msgstr "1層目検査" + +msgid "Auto-recovery from step loss" +msgstr "自動回復" + +msgid "Allow Prompt Sound" +msgstr "Allow Prompt Sound" + +msgid "Filament Tangle Detect" +msgstr "Filament Tangle Detection" + +msgid "Nozzle Clumping Detection" +msgstr "Nozzle Clumping Detection" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "Check if the nozzle is clumping by filament or other foreign objects." + +msgid "Nozzle Type" +msgstr "Nozzle Type" + +msgid "Stainless Steel" +msgstr "Stainless Steel" + +msgid "Hardened Steel" +msgstr "Hardened Steel" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "全般" + +msgid "Objects" +msgstr "OBJ" + +msgid "Advance" +msgstr "高度な設定" + +msgid "Compare presets" +msgstr "プリセットを比較" + +msgid "View all object's settings" +msgstr "全てのオブジェクトの設定" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "" + +msgid "Auto orient objects on current plate" +msgstr "" + +msgid "Arrange objects on current plate" +msgstr "" + +msgid "Unlock current plate" +msgstr "" + +msgid "Lock current plate" +msgstr "" + +msgid "Edit current plate name" +msgstr "" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "" + +#, boost-format +msgid " plate %1%:" +msgstr "プレート%1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "無効な名前です、次の文字を使用できません:" + +msgid "Sliced Info" +msgstr "スライス情報" + +msgid "Used Filament (m)" +msgstr "フィラメント使用量 (m)" + +msgid "Used Filament (mm³)" +msgstr "フィラメント使用量 (mm³)" + +msgid "Used Filament (g)" +msgstr "フィラメント使用量 (g)" + +msgid "Used Materials" +msgstr "素材使用量" + +msgid "Estimated time" +msgstr "予測時間" + +msgid "Filament changes" +msgstr "フィラメント交換" + +msgid "Click to edit preset" +msgstr "プリセットを編集" + +msgid "Connection" +msgstr "接続" + +msgid "Bed type" +msgstr "プレート" + +msgid "Flushing volumes" +msgstr "フラッシュ量" + +msgid "Add one filament" +msgstr "フィラメントを追加" + +msgid "Remove last filament" +msgstr "最後のフィラメントを削除" + +msgid "Synchronize filament list from AMS" +msgstr "AMSと素材を同期" + +msgid "Set filaments to use" +msgstr "フィラメントを選択" + +msgid "Search plate, object and part." +msgstr "Search plate, object and part." + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"AMSにフィラメントがありません、「デバイス」ページでプリンターを選択し、AMS情" +"報をロードしてください。" + +msgid "Sync filaments with AMS" +msgstr "AMSと同期" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"AMSと同期する場合、現在のフィラメント設定が上書きされます。続行しますか?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Already did a synchronization; do you want to sync only changes or resync " +"all?" + +msgid "Sync" +msgstr "Sync" + +msgid "Resync" +msgstr "Resync" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "適用できるフィラメントがありません、同期を行えません" + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "不明なフィラメントがあります、Snapmaker Orcaを更新してください。" + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "変更を\"%1%\"に保存しますか?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "デバイス %s(%s)をお取出しできます" + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "デバイス %s(%s) の取出しが失敗しました" + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "過去に保存されていない項目が検出されました。復元しますか?" + +msgid "Restore" +msgstr "復元" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"The current heatbed temperature is relatively high. The nozzle may clog when " +"printing this filament in a closed environment. Please open the front door " +"and/or remove the upper glass." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"ノズル硬度はフィラメントの要求硬度より低いです。高硬度ノズルに交換してくださ" +"い。" + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." + +msgid "Expand sidebar" +msgstr "サイドバーを展開" + +msgid "Collapse sidebar" +msgstr "サイドバーを折りたたむ" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "ファイルを読込む: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "" +"この3mfファイルと互換性がありません、ジオメトリーデータのみ読込みます。" + +msgid "Load 3mf" +msgstr "3mfを読込み" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"3mfのバージョン %s は %sのバージョン %sより新しい為、下記のキーを認識できませ" +"ん" + +msgid "You'd better upgrade your software.\n" +msgstr "ソフトウェアをアップデートする必要があります。\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"3mfのバージョン%sは%sの%sより新しい為、ソフトウェアを更新してください。" + +msgid "Invalid values found in the 3mf:" +msgstr "Invalid values found in the 3mf:" + +msgid "Please correct them in the param tabs" +msgstr "Please correct them in the Param tabs" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "The 3mf has following modified G-code in filament or printer presets:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" + +msgid "Modified G-codes" +msgstr "Modified G-code" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "The 3mf has following customized filament or printer presets:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" + +msgid "Customized Preset" +msgstr "Customized Preset" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "ファイルのエンコーディング方式はUTF8形式ではありません" + +msgid "The name may show garbage characters!" +msgstr "文字化けがあるようです、ご確認ください" + +msgid "Remember my choice." +msgstr "Remember my choice." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "ファイル %1% を読み込めませんでした。" + +msgid "Objects with zero volume removed" +msgstr "体積が0のオブジェクトを削除しました" + +msgid "The volume of the object is zero" +msgstr "オブジェクトの体積が0です" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"ファイル %s 中のオブジェクトが小さいすぎます、ファイルの単位をご確認くださ" +"い。\n" +"mm単位に変換しますか?" + +msgid "Object too small" +msgstr "オブジェクトが小さすぎます" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Z位置が一致していない複数のオブジェクトを解析しました。\n" +"マルチパーツとして読込みますか?" + +msgid "Multi-part object detected" +msgstr "マルチパーツ検出" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "これらのファイルを一つのオブジェクトとしてロードしますか?\n" + +msgid "Object with multiple parts was detected" +msgstr "複数のパーツを含むオブジェクトが検出されました" + +msgid "The file does not contain any geometry data." +msgstr "このファイルにはジオメトリデータが含まれていません。" + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "オブジェクトが大きすぎのようです、ベッドに合わせてスケールしますか?" + +msgid "Object too large" +msgstr "オブジェクトが大きすぎます" + +msgid "Export STL file:" +msgstr "STLファイルをエクスポート:" + +msgid "Export AMF file:" +msgstr "Export AMF file:" + +msgid "Save file as:" +msgstr "名前を付けて保存" + +msgid "Export OBJ file:" +msgstr "Export OBJ file:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"The file %s already exists.\n" +"Do you want to replace it?" + +msgid "Confirm Save As" +msgstr "Confirm Save As" + +msgid "Delete object which is a part of cut object" +msgstr "Delete object which is a part of cut object" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"You are trying to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that, model consistency can't be guaranteed." + +msgid "The selected object couldn't be split." +msgstr "選択したオブジェクトを分割できませんでした。" + +msgid "Another export job is running." +msgstr "エクスポート中です" + +msgid "Unable to replace with more than one volume" +msgstr "Unable to replace with more than one volume" + +msgid "Error during replace" +msgstr "交換時のエラー" + +msgid "Replace from:" +msgstr "Replace from:" + +msgid "Select a new file" +msgstr "ファイルを選択" + +msgid "File for the replace wasn't selected" +msgstr "交換用のファイルが選択されていません" + +msgid "Please select a file" +msgstr "ファイルを選択してください" + +msgid "Do you want to replace it" +msgstr "Do you want to replace it?" + +msgid "Message" +msgstr "Message" + +msgid "Reload from:" +msgstr "Reload from:" + +msgid "Unable to reload:" +msgstr "Unable to reload:" + +msgid "Error during reload" +msgstr "Error during reload" + +msgid "There are warnings after slicing models:" +msgstr "スライスの警告:" + +msgid "warnings" +msgstr "警告" + +msgid "Invalid data" +msgstr "無効なデータ" + +msgid "Slicing Canceled" +msgstr "スライスを取消しました" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "プレート%dをスライス" + +msgid "Please resolve the slicing errors and publish again." +msgstr "スライシングエラーを解決して、もう一度公開していください" + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"ネットワーク プラグインが検出されません。ネットワーク関連の機能は利用できませ" +"ん。" + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"プレビュー専用モード\n" +"このファイルにはG-codeのみが入っており、「準備」ページで表示できません" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "変更したプリセットをプロジェクト内に保存するか、破棄もできます" + +msgid "Creating a new project" +msgstr "新規プロジェクトを作成" + +msgid "Load project" +msgstr "プロジェクトを読み込む" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"プロジェクトを保存できませんでした。\n" +"フォルダが存在していないか、アクセス権限をご確認ください。" + +msgid "Save project" +msgstr "プロジェクトを保存" + +msgid "Importing Model" +msgstr "モデルをインポート" + +msgid "prepare 3mf file..." +msgstr "3mfファイルを準備" + +msgid "Download failed, unknown file format." +msgstr "Download failed; unknown file format." + +msgid "downloading project ..." +msgstr "プロジェクトをダウンロード中" + +msgid "Download failed, File size exception." +msgstr "Download failed; File size exception." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "プロジェクトをダウンロード %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" + +msgid "Import SLA archive" +msgstr "SLAアーカイブをインポート" + +msgid "The selected file" +msgstr "選択したファイル" + +msgid "does not contain valid gcode." +msgstr "有効なG-codeが含まれていません。" + +msgid "Error occurs while loading G-code file" +msgstr "G-codeファイルの読込みにエラーが発生しました" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "パス %1% の ZIP ファイルの読み込みに失敗しました。" + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "ファイルを %1%に解凍できませんでした: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"%1%で解凍されたファイルが見つかりません。ファイルの解凍に失敗しました。" + +msgid "Drop project file" +msgstr "プロジェクトをドロップ" + +msgid "Please select an action" +msgstr "アクションを選択してください" + +msgid "Open as project" +msgstr "プロジェクトとして開く" + +msgid "Import geometry only" +msgstr "ジオメトリのみをインポート" + +msgid "Only one G-code file can be opened at the same time." +msgstr "G-codeファイルは一度一つしか開きません" + +msgid "G-code loading" +msgstr "G-code読込み中" + +msgid "G-code files can not be loaded with models together!" +msgstr "G-codeファイルとモデルを一緒にロードできません" + +msgid "Can not add models when in preview mode!" +msgstr "プレビューモードではモデルを追加できません" + +msgid "All objects will be removed, continue?" +msgstr "すべてのオブジェクトが削除されます。続行しますか?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"現在のプロジェクトには未保存の変更があります。続行する前に保存しますか?" + +msgid "Number of copies:" +msgstr "複製数" + +msgid "Copies of the selected object" +msgstr "選択したオブジェクトの複製数" + +msgid "Save G-code file as:" +msgstr "名前を付けて保存" + +msgid "Save SLA file as:" +msgstr "Save SLA file as:" + +msgid "The provided file name is not valid." +msgstr "The provided file name is not valid." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "The following characters are not allowed by a FAT file system:" + +msgid "Save Sliced file as:" +msgstr "名前を付けて保存:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "%sを送信しました、プリンターにて確認できます" + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Reason: part \"%1%\" is empty." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Reason: part \"%1%\" does not bound a volume." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Reason: part \"%1%\" has self intersection." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Reason: \"%1%\" and another part have no intersection." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"オリジナルの SVG をローカル パスとともに 3MF ファイルに保存してもよろしいです" +"か?\n" +"「いいえ」を押すと、プロジェクト内のすべての SVG は編集できなくなります。" + +msgid "Private protection" +msgstr "プライベートプロテクション" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" +"プリンター準備はできていますか?プリントシートの上は空で、きれいな状態で装着" +"されていますか?" + +msgid "Upload and Print" +msgstr "アップロードとプリント" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"オブジェクト順で造形:\n" +"衝突を回避するため、自動レイアウトはお勧めです" + +msgid "Send G-code" +msgstr "G-codeを送信" + +msgid "Send to printer" +msgstr "プリンタへ送信" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" +"モデルを変更すると、ペイントデータ(サポートや色など)がリセットされます" + +msgid "Optimize Rotation" +msgstr "" + +msgid "Invalid number" +msgstr "無効な数字" + +msgid "Plate Settings" +msgstr "Plate Settings" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Number of currently selected parts: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Number of currently selected objects: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "パーツ名: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "オブジェクト名: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "サイズ: %1% x %2% x %3% in\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "サイズ: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "ボリューム: %1% in³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "ボリューム: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "三角形: %1% 個\n" + +msgid "Tips:" +msgstr "ヒント" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"「モデル修復」はWindowsのみご利用できます。Snapmaker Orca (Windows)か他のCADソフ" +"トウェアで修復してください。" + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Plate% d: %s is not suggested for use printing filament %s(%s). If you still " +"want to do this print job, please set this filament's bed temperature to a " +"number that is not zero." + +msgid "Switching the language requires application restart.\n" +msgstr "言語を切り替えるには、再起動が必要です。\n" + +msgid "Do you want to continue?" +msgstr "続行しますか?" + +msgid "Language selection" +msgstr "言語選択" + +msgid "Switching application language while some presets are modified." +msgstr "アプリケーション言語を切り替える時に、プリセットの変更があります" + +msgid "Changing application language" +msgstr "言語を変更" + +msgid "Changing the region will log out your account.\n" +msgstr "地域を変更すると、サインアウトする必要があります。\n" + +msgid "Region selection" +msgstr "地域選択" + +msgid "Second" +msgstr "秒" + +msgid "Browse" +msgstr "閲覧" + +msgid "Choose Download Directory" +msgstr "ダウンロードフォルドを選択" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "一般設定" + +msgid "Asia-Pacific" +msgstr "アジア太平洋地域" + +msgid "China" +msgstr "中国" + +msgid "Europe" +msgstr "ヨーロッパ地域" + +msgid "North America" +msgstr "北米" + +msgid "Others" +msgstr "その他" + +msgid "Login Region" +msgstr "地域" + +msgid "Stealth Mode" +msgstr "" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" + +msgid "Enable network plugin" +msgstr "" + +msgid "Check for stable updates only" +msgstr "" + +msgid "Metric" +msgstr "メートル" + +msgid "Imperial" +msgstr "インチ" + +msgid "Units" +msgstr "単位" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this setting will allow only one instance." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" + +msgid "Home" +msgstr "ホーム" + +msgid "Default Page" +msgstr "" + +msgid "Set the page opened on startup." +msgstr "" + +msgid "Touchpad" +msgstr "" + +msgid "Camera style" +msgstr "" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" + +msgid "Zoom to mouse position" +msgstr "Zoom to mouse position" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." + +msgid "Use free camera" +msgstr "フリーカメラを使用" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"チェックすると、フリーカメラが使用されます。 そうでない場合は、拘束カメラを使" +"用します。" + +msgid "Reverse mouse zoom" +msgstr "" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" + +msgid "Show splash screen" +msgstr "スプラッシュ画面を表示する" + +msgid "Show the splash screen during startup." +msgstr "" + +msgid "Show \"Tip of the day\" notification after start" +msgstr "起動後「毎日のヒント」を表示" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "有効になる場合、起動時にヒントを表示されます。" + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "Flushing volumes: Auto-calculate everytime the color changed." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "If enabled, auto-calculate every time the color changes." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "Flushing volumes: Auto-calculate every time the filament is changed." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "If enabled, auto-calculate every time filament is changed" + +msgid "Remember printer configuration" +msgstr "" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." + +msgid "Network" +msgstr "ネットワーク (&N)" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "ユーザープリセットの自動同期 (プリンター/フィラメント/プロセス)" + +msgid "User Sync" +msgstr "ユーザー同期" + +msgid "Update built-in Presets automatically." +msgstr "Update built-in presets automatically." + +msgid "System Sync" +msgstr "System Sync" + +msgid "Clear my choice on the unsaved presets." +msgstr "Clear my choice on the unsaved presets." + +msgid "Associate files to Snapmaker Orca" +msgstr "ファイルをSnapmaker Orcaに関連付ける" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr ".3mfファイルをSnapmaker Orcaに関連付けます。" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "デフォルトで.3mfファイルをSnapmaker Orcaで開く" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr ".stlファイルをSnapmaker Orcaに関連付けます。" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "デフォルトで.stlファイルをSnapmaker Orcaで開く" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr ".step/.stpファイルをSnapmaker Orcaに関連付けます。" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "デフォルトで.step/.stpファイルをSnapmaker Orcaで開く" + +msgid "Associate web links to Snapmaker Orca" +msgstr "" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "" + +msgid "Maximum recent projects" +msgstr "Maximum recent projects" + +msgid "Maximum count of recent projects" +msgstr "Maximum count of recent projects" + +msgid "Clear my choice on the unsaved projects." +msgstr "Clear my choice on the unsaved projects." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "No warnings when loading 3MF with modified G-code" + +msgid "Auto-Backup" +msgstr "自動バックアップ" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Backup your project periodically to help with restoring from an occasional " +"crash." + +msgid "every" +msgstr "every" + +msgid "The peroid of backup in seconds." +msgstr "The period of backup in seconds." + +msgid "Downloads" +msgstr "ダウンロード" + +msgid "Dark Mode" +msgstr "ダークモード" + +msgid "Enable Dark mode" +msgstr "ダークモードを有効" + +msgid "Develop mode" +msgstr "開発者モード" + +msgid "Skip AMS blacklist check" +msgstr "Skip AMS blacklist check" + +msgid "Home page and daily tips" +msgstr "ホームページとヒント" + +msgid "Show home page on startup" +msgstr "起動時にホームページを表示" + +msgid "Sync settings" +msgstr "同期設定" + +msgid "User sync" +msgstr "ユーザー同期" + +msgid "Preset sync" +msgstr "プリセット同期" + +msgid "Preferences sync" +msgstr "設定を同期" + +msgid "View control settings" +msgstr "表示設定" + +msgid "Rotate of view" +msgstr "回転" + +msgid "Move of view" +msgstr "移動" + +msgid "Zoom of view" +msgstr "ズーム" + +msgid "Other" +msgstr "その他" + +msgid "Mouse wheel reverses when zooming" +msgstr "ズーム中にスクロール方向を反転させる" + +msgid "Enable SSL(MQTT)" +msgstr "Enable SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Enable SSL(FTP)" + +msgid "Internal developer mode" +msgstr "Internal developer mode" + +msgid "Log Level" +msgstr "Log Level" + +msgid "fatal" +msgstr "重大的" + +msgid "error" +msgstr "エラー" + +msgid "warning" +msgstr "警告" + +msgid "debug" +msgstr "デバッグ" + +msgid "trace" +msgstr "トレース" + +msgid "Host Setting" +msgstr "ホスト設定" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEVホスト:api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QAホスト:api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "PRE ホスト: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "PRODホスト" + +msgid "debug save button" +msgstr "保存" + +msgid "save debug settings" +msgstr "デバッグ設定を保存" + +msgid "DEBUG settings have saved successfully!" +msgstr "デバッグ設定" + +msgid "Switch cloud environment, Please login again!" +msgstr "クラウド環境を切り替えました、再度サインインしてください。" + +msgid "System presets" +msgstr "システム プリセット" + +msgid "User presets" +msgstr "ユーザープリセット" + +msgid "Incompatible presets" +msgstr "互換性の無い プリセット" + +msgid "AMS filaments" +msgstr "AMSフィラメント" + +msgid "Click to pick filament color" +msgstr "フィラメントの色を選択" + +msgid "Please choose the filament colour" +msgstr "Please choose the filament color" + +msgid "Add/Remove presets" +msgstr "プリセットの追加/削除" + +msgid "Edit preset" +msgstr "プリセットを編集" + +msgid "Project-inside presets" +msgstr "プロジェクト プリセット" + +msgid "Add/Remove filaments" +msgstr "フィラメントを追加/削除" + +msgid "Add/Remove materials" +msgstr "素材を追加/削除" + +msgid "Select/Remove printers(system presets)" +msgstr "Select/Remove printers(system presets)" + +msgid "Create printer" +msgstr "Create printer" + +msgid "The selected preset is null!" +msgstr "The selected preset is null!" + +msgid "End" +msgstr "End" + +msgid "Customize" +msgstr "Customize" + +msgid "Other layer filament sequence" +msgstr "Other layer filament sequence" + +msgid "Please input layer value (>= 2)." +msgstr "Please input layer value (>= 2)." + +msgid "Plate name" +msgstr "Plate name" + +msgid "Same as Global Print Sequence" +msgstr "Same as Global Print Sequence" + +msgid "Print sequence" +msgstr "造形シーケンス" + +msgid "Same as Global" +msgstr "Same as Global" + +msgid "Disable" +msgstr "Disable" + +msgid "Spiral vase" +msgstr "スパイラル" + +msgid "First layer filament sequence" +msgstr "First layer filament sequence" + +msgid "Same as Global Plate Type" +msgstr "Same as Global Plate Type" + +msgid "Same as Global Bed Type" +msgstr "全般設定の「ベッドタイプ」と同様" + +msgid "By Layer" +msgstr "By Layer" + +msgid "By Object" +msgstr "By Object" + +msgid "Accept" +msgstr "Accept" + +msgid "Log Out" +msgstr "Log Out" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "全プレートをスライスし、造形時間を推測します" + +msgid "Packing project data into 3mf file" +msgstr "プロジェクトデータを3MFファイルに書き込む" + +msgid "Uploading 3mf" +msgstr "3mfをアップロード中" + +msgid "Jump to model publish web page" +msgstr "モデル公開ページに移動" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "注意: 準備するには数分かかる場合があります、暫くお待ち下さい。" + +msgid "Publish" +msgstr "公開する" + +msgid "Publish was cancelled" +msgstr "公開は取り消しました" + +msgid "Slicing Plate 1" +msgstr "プレート1をスライス" + +msgid "Packing data to 3mf" +msgstr "データを構成中" + +msgid "Jump to webpage" +msgstr "ウェブページに移動" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "%sを名前つけて保存" + +msgid "User Preset" +msgstr "ユーザープリセット" + +msgid "Preset Inside Project" +msgstr "プロジェクト プリセット" + +msgid "Name is unavailable." +msgstr "名称は使用できません" + +msgid "Overwrite a system profile is not allowed" +msgstr "システムプロファイルの上書きはできません" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "プリセット \"%1%\" は既に存在します。" + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "プリセット\"%1%\"は既に存在し、また互換性がありません。" + +msgid "Please note that saving action will replace this preset" +msgstr "注意:現在のプリセットを上書きされます。" + +msgid "The name cannot be the same as a preset alias name." +msgstr "プリセット名と同じの為、設定できません。" + +msgid "Save preset" +msgstr "プリセットを保存" + +msgctxt "PresetName" +msgid "Copy" +msgstr "コピー" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "プリンター \"%1%\" とプリセット \"%2%\" を選択しました" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "保存後、プリセット\"%1%\"に対する操作を選択してください" + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "%1%に対して、%2%を%3%に変更します " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "\"%1%\"に対して、\"%2%\"を新しいプリセットとして追加する" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "\"%1%\"に切り替え" + +msgid "Task canceled" +msgstr "タスクを取消しました" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Search" + +msgid "My Device" +msgstr "私のデバイス" + +msgid "Other Device" +msgstr "その他のデバイス" + +msgid "Online" +msgstr "オンライン" + +msgid "Input access code" +msgstr "アクセスコードを入力" + +msgid "Can't find my devices?" +msgstr "デバイスが見つからない?" + +msgid "Log out successful." +msgstr "サインアウトしました" + +msgid "Busy" +msgstr "ビジー状態" + +msgid "Bambu Cool Plate" +msgstr "Bambu 常温プレート" + +msgid "PLA Plate" +msgstr "PLA Plate" + +msgid "Bambu Engineering Plate" +msgstr "Bambu エンジニアリングプレート" + +msgid "Bambu Smooth PEI Plate" +msgstr "" + +msgid "High temperature Plate" +msgstr "High temperature Plate" + +msgid "Bambu Textured PEI Plate" +msgstr "" + +msgid "Send print job to" +msgstr "造形タスクを送信" + +msgid "Flow Dynamics Calibration" +msgstr "Flow Dynamics Calibration" + +msgid "Click here if you can't connect to the printer" +msgstr "Click here if you can't connect to the printer" + +msgid "send completed" +msgstr "送信完了" + +msgid "Error code" +msgstr "Error code" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "アカウント無し、ローカルモードのプリンターのみが表示されます" + +msgid "Connecting to server" +msgstr "サーバーへ接続中" + +msgid "Synchronizing device information" +msgstr "デバイス情報を同期" + +msgid "Synchronizing device information time out" +msgstr "デバイス情報同期はタイムアウトしました" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "ファームウェアが更新中の為、造形タスクを送信できません" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "プリンターが指令を実行中です。実行終了してから造形を再開してください。" + +msgid "The printer is busy on other print job" +msgstr "プリンターはビジーです。" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "フィラメント %s がAMSスロットの数を超えています。" + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "フィラメントがAMSスロットの数を超えています。" + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"フィラメントとAMSスロットをマッピングしました。マッピング関係を変更できます" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "フィラメントとAMSのスロットのマッピング関係を指定できます。" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "フィラメント %sがAMSスロット%sのフィラメントと一致していません。" + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "フィラメントがAMSスロットのフィラメントと一致していません。" + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "このプリンターはAMSスロットマッピングをサポートしません" + +msgid "An SD card needs to be inserted before printing." +msgstr "SDカードが必要です" + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "SDカードが必要です" + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "ファームウェアを更新する必要がある為、造形タスクを送信できません" + +msgid "Cannot send the print job for empty plate" +msgstr "空プレートがある為、送信できません" + +msgid "This printer does not support printing all plates" +msgstr "プリンターが全てのプレートを造形することができません" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"When spiral vase mode is enabled, machines with I3 structure will not " +"generate timelapse videos." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Timelapse is not supported because Print sequence is set to \"By object\"." + +msgid "Errors" +msgstr "エラー" + +msgid "Please check the following:" +msgstr "Please check the following:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"不明なフィラメントがあります、造形に必要かどうかご確認ください。引き続き造形" +"する場合は、「確認」を押してください。" + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "nozzle in preset: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "nozzle memorized: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Your nozzle diameter in sliced file is not consistent with the saved nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "Please fix the error above, otherwise printing cannot continue." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Please click the confirm button if you still want to proceed with printing." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Connecting to the printer. Unable to cancel during the connection process." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Caution! Flow calibration on Textured PEI Plates may fail due to the " +"scattered surface." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Automatic flow calibration using the Micro Lidar" + +msgid "Modifying the device name" +msgstr "デバイス名を変更" + +msgid "Bind with Pin Code" +msgstr "Bind with Pin Code" + +msgid "Send to Printer SD card" +msgstr "プリンターのSDカードに送信" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "アップデート中では造形タスクを送信できません" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "The selected printer is incompatible with the chosen printer presets." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "" +"A MicroSD card needs to be inserted before sending to the printer SD card." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "" +"このプリンターを使用するには、Snapmaker Orcaを同一のLANで使用してください。" + +msgid "The printer does not support sending to printer SD card." +msgstr "このプリンターはSDカードに送信することができません" + +msgid "Slice ok." +msgstr "スライス完了" + +msgid "View all Daily tips" +msgstr "View all Daily tips" + +msgid "Failed to create socket" +msgstr "Failed to create socket" + +msgid "Failed to connect socket" +msgstr "Failed to connect socket" + +msgid "Failed to publish login request" +msgstr "Failed to publish login request" + +msgid "Get ticket from device timeout" +msgstr "Timeout getting ticket from device" + +msgid "Get ticket from server timeout" +msgstr "Timeout getting ticket from server" + +msgid "Failed to post ticket to server" +msgstr "Failed to post ticket to server" + +msgid "Failed to parse login report reason" +msgstr "Failed to parse login report reason" + +msgid "Receive login report timeout" +msgstr "Receive login report timeout" + +msgid "Unknown Failure" +msgstr "不明な失敗" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." + +msgid "Can't find Pin Code?" +msgstr "Can't find Pin Code?" + +msgid "Pin Code" +msgstr "Pin Code" + +msgid "Binding..." +msgstr "Binding..." + +msgid "Please confirm on the printer screen" +msgstr "Please confirm on the printer screen" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Log in failed. Please check the Pin Code." + +msgid "Log in printer" +msgstr "プリンターを登録" + +msgid "Would you like to log in this printer with current account?" +msgstr "現在のアカウントでプリンターをサインインしますか?" + +msgid "Check the reason" +msgstr "Check the reason" + +msgid "Read and accept" +msgstr "Read and accept" + +msgid "Terms and Conditions" +msgstr "Terms and Conditions" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Thank you for purchasing a Bambu Lab device. Before using your Bambu Lab " +"device, please read the terms and conditions. By clicking to agree to use " +"your Bambu Lab device, you agree to abide by the Privacy Policy and Terms of " +"Use (collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." + +msgid "and" +msgstr "and" + +msgid "Privacy Policy" +msgstr "Privacy Policy" + +msgid "We ask for your help to improve everyone's printer" +msgstr "We ask for your help to improve everyone's printer" + +msgid "Statement about User Experience Improvement Program" +msgstr "Statement about User Experience Improvement Program" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Statement on User Experience Improvement Plan" + +msgid "Log in successful." +msgstr "登録成功" + +msgid "Log out printer" +msgstr "サインアウト" + +msgid "Would you like to log out the printer?" +msgstr "プリンターをサインアウトしますか?" + +msgid "Please log in first." +msgstr "サインインしてください" + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "プリンターと接続できませんでした。もう一度試してください。" + +msgid "Failed to log out." +msgstr "サインアウトできませんでした" + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "現在の %s を保存" + +msgid "Delete this preset" +msgstr "このプリセットを削除" + +msgid "Search in preset" +msgstr "検索" + +msgid "Click to reset all settings to the last saved preset." +msgstr "全ての変更をリセットします" + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"スムーズタイムラプスビデオを作成するにはプライムタワーが必要です。プライムタ" +"ワーを有効にしますか?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"スムーズタイムラプスビデオを作成するにはプライムタワーが必要です。プライムタ" +"ワーを有効にしますか?" + +msgid "Still print by object?" +msgstr "Still print by object?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "ツリースリムはサポートの強度を弱めてフィラメントの消費量を減らします。" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"これらの設定を自動的に変更しますか? \n" +"はい - 自動的に変更します\n" +"いいえ - 変更しません" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"「ツリーストラング」と「ツリーハイブリッド」の場合、下記の設定をお勧めしま" +"す:接触層数を2、トップ面とのZ間隔を0.1mm。" + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"When using support material for the support interface, we recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" + +msgid "Are you sure you want to enable this option?" +msgstr "" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." + +msgid "Adjust to the set range automatically? \n" +msgstr "Adjust to the set range automatically? \n" + +msgid "Adjust" +msgstr "Adjust" + +msgid "Ignore" +msgstr "Ignore" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications. Please use with the latest printer firmware." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"ヘッド無しのタイムラプスビデオを録画する時に、「タイムラプスプライムタワー」" +"を追加してください。プレートで右クリックして、「プリミティブを追加」→「タイム" +"ラプスプライムタワー」で追加できます。" + +msgid "Line width" +msgstr "押出線幅" + +msgid "Seam" +msgstr "継ぎ目" + +msgid "Precision" +msgstr "精度" + +msgid "Wall generator" +msgstr "壁面生成器" + +msgid "Walls and surfaces" +msgstr "" + +msgid "Bridging" +msgstr "" + +msgid "Overhangs" +msgstr "" + +msgid "Walls" +msgstr "壁面" + +msgid "Top/bottom shells" +msgstr "トップ面/底面" + +msgid "Initial layer speed" +msgstr "1層目の移動速度" + +msgid "Other layers speed" +msgstr "他の層の速度" + +msgid "Overhang speed" +msgstr "オーバーハング速度" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"オーバーハングを造形時の速度です。オーバーハングの角度が線幅に対する割合で表" +"示します。0は減速無しで壁面の速度が使用されます。" + +msgid "Bridge" +msgstr "ブリッジ" + +msgid "Set speed for external and internal bridges" +msgstr "" + +msgid "Travel speed" +msgstr "移動速度" + +msgid "Acceleration" +msgstr "加速度" + +msgid "Jerk(XY)" +msgstr "Jerk(XY)" + +msgid "Raft" +msgstr "ラフト" + +msgid "Support filament" +msgstr "サポート用フィラメント" + +msgid "Tree supports" +msgstr "" + +msgid "Skirt" +msgstr "スカート" + +msgid "Prime tower" +msgstr "プライムタワー" + +msgid "Special mode" +msgstr "特別モード" + +msgid "G-code output" +msgstr "G-code出力" + +msgid "Post-processing Scripts" +msgstr "Post-processing Scripts" + +msgid "Notes" +msgstr "Notes" + +msgid "Frequent" +msgstr "よく使う" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"以下のラインでは %s 予約語が入っていますのでG-codeがうまく表示できない可能性" +"があります、削除してください" + +msgid "Reserved keywords found" +msgstr "保留キーワードが見つかりました" + +msgid "Setting Overrides" +msgstr "上書き設定" + +msgid "Retraction" +msgstr "リトラクション" + +msgid "Basic information" +msgstr "基本情報" + +msgid "Recommended nozzle temperature" +msgstr "推奨ノズル温度" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "フィラメントの推奨ノズル温度、0は未設定との意味です" + +msgid "Print chamber temperature" +msgstr "" + +msgid "Print temperature" +msgstr "造形温度" + +msgid "Nozzle" +msgstr "ノズル" + +msgid "Nozzle temperature when printing" +msgstr "ノズル温度" + +msgid "Cool plate" +msgstr "常温プレート" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"常温プレートが装着時のベッド温度です。値が0の場合、フィラメントが常温プレート" +"に使用できない意味です。" + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "エンジニアリングプレート" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"エンジニアリングプレートが装着時のベッド温度です。値が0の場合、フィラメントが" +"エンジニアリングプレートに使用できない意味です。" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Smooth PEI Plate / High Temp Plate" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" + +msgid "Textured PEI Plate" +msgstr "PEIプレート" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"PEIプレートを使用時のベッド温度。値が0の場合、フィラメントがPEIプレートをサ" +"ポートしない意味です。" + +msgid "Volumetric speed limitation" +msgstr "体積速度制限" + +msgid "Cooling" +msgstr "冷却" + +msgid "Cooling for specific layer" +msgstr "特定層の冷却" + +msgid "Part cooling fan" +msgstr "パーツ冷却ファン" + +msgid "Min fan speed threshold" +msgstr "ファン最低回転速度" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"パーツ冷却ファンは、積層造形時間がこの値より長い時に最小回転速度で作動しま" +"す。" + +msgid "Max fan speed threshold" +msgstr "ファン最大回転速度" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"パーツ冷却ファンは、積層造形時間がこの値より短い時に最大回転速度で作動しま" +"す。" + +msgid "Auxiliary part cooling fan" +msgstr "パーツ補助冷却ファン" + +msgid "Exhaust fan" +msgstr "Exhaust fan" + +msgid "During print" +msgstr "During print" + +msgid "Complete print" +msgstr "Complete print" + +msgid "Filament start G-code" +msgstr "フィラメント開始G-code" + +msgid "Filament end G-code" +msgstr "フィラメント終了G-code" + +msgid "Multimaterial" +msgstr "" + +msgid "Wipe tower parameters" +msgstr "ワイプタワーのパラメータ" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "単一エクストルーダーMMプリンターのツールチェンジパラメーター" + +msgid "Ramming settings" +msgstr "ラミング設定" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "マルチエクストルーダーMMプリンターのツールチェンジパラメータ" + +msgid "Printable space" +msgstr "造形可能領域" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "パラメータ %1% に無効な値が指定されました: %2%" + +msgid "G-code flavor is switched" +msgstr "Gコードフレーバーが切り替わる" + +msgid "Cooling Fan" +msgstr "" + +msgid "Fan speed-up time" +msgstr "" + +msgid "Extruder Clearance" +msgstr "押出機クリアランス" + +msgid "Adaptive bed mesh" +msgstr "" + +msgid "Accessory" +msgstr "アクセサリー" + +msgid "Machine gcode" +msgstr "プリンタG-code" + +msgid "Machine start G-code" +msgstr "プリンター開始G-code" + +msgid "Machine end G-code" +msgstr "プリンター終了G-code" + +msgid "Printing by object G-code" +msgstr "Printing by object G-code" + +msgid "Before layer change G-code" +msgstr "積層変更前のG-code" + +msgid "Layer change G-code" +msgstr "積層変更時のG-code" + +msgid "Time lapse G-code" +msgstr "Time lapse G-code" + +msgid "Change filament G-code" +msgstr "フィラメント変更G-code" + +msgid "Change extrusion role G-code" +msgstr "" + +msgid "Pause G-code" +msgstr "G-codeを一時停止" + +msgid "Template Custom G-code" +msgstr "カスタムG-code雛形" + +msgid "Motion ability" +msgstr "移動能力" + +msgid "Normal" +msgstr "普通" + +msgid "Speed limitation" +msgstr "速度制限" + +msgid "Acceleration limitation" +msgstr "加速制限" + +msgid "Jerk limitation" +msgstr "振動特性" + +msgid "Single extruder multimaterial setup" +msgstr "" + +msgid "Wipe tower" +msgstr "ワイプタワー" + +msgid "Single extruder multimaterial parameters" +msgstr "単一エクストルーダーのマルチマテリアルパラメーター" + +msgid "Layer height limits" +msgstr "積層ピッチの制限" + +msgid "Lift Z Enforcement" +msgstr "" + +msgid "Retraction when switching material" +msgstr "素材変更時のリトラクション" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Disable it in order to enable Firmware Retraction?" + +msgid "Firmware Retraction" +msgstr "Firmware Retraction" + +msgid "Detached" +msgstr "分離的" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "Presets inherited by other presets can not be deleted!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% プリセット" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "以下のプリセットも削除されます: " + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "選択したプリセットを %1% しますか?" + +msgid "All" +msgstr "すべて" + +msgid "Set" +msgstr "設定" + +msgid "Click to reset current value and attach to the global value." +msgstr "現在値をデフォルト値に戻します" + +msgid "Click to drop current modify and reset to saved value." +msgstr "クリックして値をリセットします" + +msgid "Process Settings" +msgstr "プロセス設定" + +msgid "Undef" +msgstr "未定義" + +msgid "Unsaved Changes" +msgstr "未保存の変更" + +msgid "Transfer or discard changes" +msgstr "変更を破棄または保持" + +msgid "Old Value" +msgstr "古い値" + +msgid "New Value" +msgstr "新しい値" + +msgid "Transfer" +msgstr "流用" + +msgid "Don't save" +msgstr "保存しない" + +msgid "Discard" +msgstr "破棄" + +msgid "Click the right mouse button to display the full text." +msgstr "マウスを右クリックして全文を表示します" + +msgid "All changes will not be saved" +msgstr "変更は保存されません。" + +msgid "All changes will be discarded." +msgstr "変更内容は保存されません" + +msgid "Save the selected options." +msgstr "選択したオプションを保存" + +msgid "Keep the selected options." +msgstr "選択したオプションを保持" + +msgid "Transfer the selected options to the newly selected preset." +msgstr "選択したオプションをプリセットにコピーしました。" + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "選択したオプションをプリセット\"%1%\"に保存" + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "選択したオプションをプリセット \"%1%\" にコピーしました。" + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "プリセット\"%1%\"には、以下に未保存の変更があります" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"プリセット\"%1%\"は新しいプリンターとの互換性がなく、また以下に未保存の変更が" +"あります" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"プリセット \"%1%\" は新しいプロセス・プロファイルとの互換性がなく、以下に未保" +"存の変更があります" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "You have changed some settings of preset \"%1%\". " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"You can save or discard the preset values you have modified." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" + +msgid "You have previously modified your settings." +msgstr "You have previously modified your settings." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" + +msgid "Extruders count" +msgstr "押出機台数" + +msgid "General" +msgstr "一般" + +msgid "Capabilities" +msgstr "能力" + +msgid "Show all presets (including incompatible)" +msgstr "全てのプリセットを表示" + +msgid "Select presets to compare" +msgstr "Select presets to compare" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"選択したオプションを左のプリセットから右に転送します。\n" +"注意:このダイアログを閉じた後、新しいプリセットが設定タブで選択されます。" + +msgid "Transfer values from left to right" +msgstr "左から右へ値を移す" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" + +msgid "Add File" +msgstr "ファイルを追加" + +msgid "Set as cover" +msgstr "代表画像に設定" + +msgid "Cover" +msgstr "表紙" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "\"%1%\"が既に存在しています" + +msgid "Basic Info" +msgstr "基本情報" + +msgid "Pictures" +msgstr "画像" + +msgid "Bill of Materials" +msgstr "部品表" + +msgid "Assembly Guide" +msgstr "アセンブリガイド" + +msgid "Author" +msgstr "作成者" + +msgid "Model Name" +msgstr "モデル名" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s 更新" + +msgid "A new version is available" +msgstr "新しいバージョンが利用可能です" + +msgid "Configuration update" +msgstr "構成の更新" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "新しい構成パッケージが利用できます。インストールしますか?" + +msgid "Description:" +msgstr "詳細:" + +msgid "Configuration incompatible" +msgstr "構成ファイルは互換性がありません" + +msgid "the configuration package is incompatible with current application." +msgstr "構成パッケージが現在のアプリケーションと互換性がありません" + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"構成パッケージは現在のバージョンと互換性ありません。\n" +"%sで構成パッケージを更新しアプリケーションを再起動します" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "%s を終了" + +msgid "the Configuration package is incompatible with current APP." +msgstr "構成パッケージは、このバージョンのSnapmaker Orcaに適用できません" + +msgid "Configuration updates" +msgstr "構成の更新" + +msgid "No updates available." +msgstr "利用可能なアップデートはありません" + +msgid "The configuration is up to date." +msgstr "構成データが最新です" + +msgid "Obj file Import color" +msgstr "Obj file Import color" + +msgid "Specify number of colors:" +msgstr "Specify number of colors:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "The color count should be in range [%d, %d]." + +msgid "Recommended " +msgstr "Recommended " + +msgid "Current filament colors:" +msgstr "Current filament colors:" + +msgid "Quick set:" +msgstr "Quick set:" + +msgid "Color match" +msgstr "Color match" + +msgid "Approximate color matching." +msgstr "Approximate color matching." + +msgid "Append" +msgstr "Append" + +msgid "Add consumable extruder after existing extruders." +msgstr "Add consumable extruder after existing extruders." + +msgid "Reset mapped extruders." +msgstr "Reset mapped extruders." + +msgid "Cluster colors" +msgstr "Cluster colors" + +msgid "Map Filament" +msgstr "Map Filament" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Warning: The count of newly added and \n" +" current extruders exceeds 16." + +msgid "Ramming customization" +msgstr "ラミングのカスタマイズ" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"ラミングとは、単一エクストルーダーMMプリンターでツールを交換する直前の急速吐" +"出動作を指します。 その目的は、フィラメントを抜く時に新しいフィラメントの挿入" +"を妨げないようにすることと、再挿入のときにエラーにならないよう、フィラメント" +"の先端部を適切なシェイプにすることです。 この処理は重要であり、材料が変わる" +"と、良好な先端形状が得られるラミング条件の変更が必要となったりします。 このた" +"め、ラミング中の吐出速度は調整できるようになっています。\n" +"\n" +"これはエキスパートレベルの設定です。不適切な調整は、ジャムや、ドライブギアが" +"フィラメントを削ったりする可能性があります。" + +msgid "Total ramming time" +msgstr "トータルラミング時間" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "合計ラミング容積" + +msgid "Ramming line width" +msgstr "ラミング線幅" + +msgid "Ramming line spacing" +msgstr "ラミング線間距離" + +msgid "Auto-Calc" +msgstr "自動計算" + +msgid "Re-calculate" +msgstr "Re-calculate" + +msgid "Flushing volumes for filament change" +msgstr "フィラメントを入替える為のフラッシュ量" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "各フィラメントペアのフラッシュ量(mm³)" + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "推奨フラッシュ量範囲 [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "マルチプライヤーの有効範囲は [%.2f, %.2f] です。" + +msgid "Multiplier" +msgstr "マルチプライヤ" + +msgid "unloaded" +msgstr "アンロードしました" + +msgid "loaded" +msgstr "ロード済み" + +msgid "Filament #" +msgstr "フィラメント#" + +msgid "From" +msgstr "From" + +msgid "To" +msgstr "→" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "Bambu Network plug-in not detected." + +msgid "Click here to download it." +msgstr "Click here to download it." + +msgid "Login" +msgstr "サインイン" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "構成パッケージが前のコンフィグガイドに変更されました" + +msgid "Configuration package changed" +msgstr "構成パッケージが変更されました" + +msgid "Toolbar" +msgstr "ツールバー" + +msgid "Objects list" +msgstr "オブジェクト一覧" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Import geometry data from STL/STEP/3MF/OBJ/AMF files" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "貼り付け" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "3Dconnexion設定を表示/非表示" + +msgid "Switch table page" +msgstr "Switch table page" + +msgid "Show keyboard shortcuts list" +msgstr "ショートカット一覧を表示" + +msgid "Global shortcuts" +msgstr "ショートカット" + +msgid "Rotate View" +msgstr "回転" + +msgid "Pan View" +msgstr "移動" + +msgid "Mouse wheel" +msgstr "マウスホイール" + +msgid "Zoom View" +msgstr "ズーム" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "選択した或いは全てのオブジェクトの向きを自動調整します。" + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "サイドバーを展開/隠す" + +msgid "⌘+Any arrow" +msgstr "⌘+↑↓←→" + +msgid "Movement in camera space" +msgstr "オブジェクト移動" + +msgid "⌥+Left mouse button" +msgstr "⌥+マウス左ボタン" + +msgid "Select a part" +msgstr "パーツを選択" + +msgid "⌘+Left mouse button" +msgstr "⌘+マウス左ボタン" + +msgid "Select multiple objects" +msgstr "複数のオブジェクトを選択" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+↑↓←→" + +msgid "Alt+Left mouse button" +msgstr "Alt+マウス左ボタン" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+マウス左ボタン" + +msgid "Shift+Left mouse button" +msgstr "Shift + マウス左ボタン" + +msgid "Select objects by rectangle" +msgstr "矩形でオブジェクトを選択" + +msgid "Arrow Up" +msgstr "↑" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Y方向 10mm" + +msgid "Arrow Down" +msgstr "↓" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Y方向 -10mm" + +msgid "Arrow Left" +msgstr "←" + +msgid "Move selection 10 mm in negative X direction" +msgstr "X方向 -10mm" + +msgid "Arrow Right" +msgstr "→" + +msgid "Move selection 10 mm in positive X direction" +msgstr "X方向 10mm" + +msgid "Shift+Any arrow" +msgstr "Shift + ↑↓←→" + +msgid "Movement step set to 1 mm" +msgstr "移動ステップを1mmに設定" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "キー1-9: オブジェクト/パーツのフィラメントを設定" + +msgid "Camera view - Default" +msgstr "デフォルト" + +msgid "Camera view - Top" +msgstr "トップ" + +msgid "Camera view - Bottom" +msgstr "底面" + +msgid "Camera view - Front" +msgstr "正面" + +msgid "Camera view - Behind" +msgstr "背面" + +msgid "Camera Angle - Left side" +msgstr "左側" + +msgid "Camera Angle - Right side" +msgstr "右側" + +msgid "Select all objects" +msgstr "すべてのオブジェクトを選択" + +msgid "Gizmo move" +msgstr "移動" + +msgid "Gizmo scale" +msgstr "スケール" + +msgid "Gizmo rotate" +msgstr "回転" + +msgid "Gizmo cut" +msgstr "カット" + +msgid "Gizmo Place face on bed" +msgstr "底面選択" + +msgid "Gizmo SLA support points" +msgstr "SLAサポートポイント" + +msgid "Gizmo FDM paint-on seam" +msgstr "継ぎ目ペイント" + +msgid "Gizmo Text emboss / engrave" +msgstr "ギズモ・テキストのエンボス/エングレーブ" + +msgid "Zoom in" +msgstr "ズームイン" + +msgid "Zoom out" +msgstr "縮小" + +msgid "Switch between Prepare/Preview" +msgstr "" + +msgid "Plater" +msgstr "準備" + +msgid "Move: press to snap by 1mm" +msgstr "1mm単位で移動" + +msgid "⌘+Mouse wheel" +msgstr "⌘+マウスホイール" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "サポート/色塗り: 半径のサイズ" + +msgid "⌥+Mouse wheel" +msgstr "⌥+マウスホイール" + +msgid "Support/Color Painting: adjust section position" +msgstr "サポート/色塗り: 断面の位置" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+マウスホイール" + +msgid "Alt+Mouse wheel" +msgstr "Alt+マウスホイール" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "オブジェクトとパーツ造形用の押出機番号を設定" + +msgid "Delete objects, parts, modifiers " +msgstr "オブジェクト、パーツ、モディファイヤを削除" + +msgid "Select the object/part and press space to change the name" +msgstr "オブジェクト/パーツを選択し、名前を変更します" + +msgid "Mouse click" +msgstr "マウスクリック" + +msgid "Select the object/part and mouse click to change the name" +msgstr "オブジェクト/パーツを選択し、名前を変更します" + +msgid "Objects List" +msgstr "オブジェクト一覧" + +msgid "Vertical slider - Move active thumb Up" +msgstr "垂直スライダー" + +msgid "Vertical slider - Move active thumb Down" +msgstr "垂直スライダー" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "水平スライダー (左)" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "水平スライダー (右)" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "On/Off one layer mode of the vertical slider" + +msgid "On/Off g-code window" +msgstr "" + +msgid "Move slider 5x faster" +msgstr "5x" + +msgid "Shift+Mouse wheel" +msgstr "Shift + マウスホイール" + +msgid "Horizontal slider - Move to start position" +msgstr "" + +msgid "Horizontal slider - Move to last position" +msgstr "" + +msgid "Release Note" +msgstr "リリースノート" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "バージョン %s 更新内容" + +msgid "Network plug-in update" +msgstr "ネットワークプラグインの更新" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"OK をクリックすると、次回 Snapmaker Orca を起動したときにネットワークプラグイン" +"が更新されます。" + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "新しいプラグイン (%s) が発見しました、インストールしますか?" + +msgid "New version of Snapmaker Orca" +msgstr "新バージョン" + +msgid "Skip this Version" +msgstr "Skip this Version" + +msgid "Done" +msgstr "Done" + +msgid "resume" +msgstr "resume" + +msgid "Resume Printing" +msgstr "Resume Printing" + +msgid "Resume Printing(defects acceptable)" +msgstr "Resume Printing (defects acceptable)" + +msgid "Resume Printing(problem solved)" +msgstr "Resume Printing (problem solved)" + +msgid "Stop Printing" +msgstr "Stop Printing" + +msgid "Check Assistant" +msgstr "Check Assistant" + +msgid "Filament Extruded, Continue" +msgstr "Filament Extruded, Continue" + +msgid "Not Extruded Yet, Retry" +msgstr "Not Extruded Yet, Retry" + +msgid "Finished, Continue" +msgstr "Finished, Continue" + +msgid "Load Filament" +msgstr "ロード" + +msgid "Filament Loaded, Resume" +msgstr "Filament Loaded, Resume" + +msgid "View Liveview" +msgstr "View Liveview" + +msgid "Confirm and Update Nozzle" +msgstr "Confirm and Update Nozzle" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "LAN接続失敗 (造形ファイル送信)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "1Snapmaker Orcaとプリンターが同一のLANに繋いでいること確認してください。" + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "2下記IPアドレスやアクセスコードが一致していない場合修正してください。" + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "アクセスコード" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "どこでプリンターのIPアドレスとアクセスコードを確認できますか?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "Step 3: Ping the IP address to check for packet loss and latency." + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP and Access Code Verified! You may close the window" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "Connection failed, please double check IP and Access Code" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" + +msgid "Model:" +msgstr "モデル" + +msgid "Serial:" +msgstr "シリアル番号" + +msgid "Version:" +msgstr "バージョン" + +msgid "Update firmware" +msgstr "ファームウェアを更新" + +msgid "Beta version" +msgstr "Beta version" + +msgid "Latest version" +msgstr "最新バージョン" + +msgid "Updating" +msgstr "更新中" + +msgid "Updating failed" +msgstr "更新は失敗しました" + +msgid "Updating successful" +msgstr "更新は成功しました" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"更新してもよろしいでしょうか?約 10 分ほどかかります。更新中に、プリンターの電" +"源を切らないでください。" + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"重要な更新が検出されたため、造形を続ける前に実行してください。今すぐ更新しま" +"すか?" + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"ファームウェアのバージョンに異常があります。印刷する前に修復と更新が必要で" +"す。今すぐ更新しますか?" + +msgid "Extension Board" +msgstr "拡張ボード" + +msgid "Saving objects into the 3mf failed." +msgstr "3mfへの保存は失敗しました。" + +msgid "Only Windows 10 is supported." +msgstr "Windows 10のみ対応" + +msgid "Failed to initialize the WinRT library." +msgstr "ライブラリを初期化できませんでした" + +msgid "Exporting objects" +msgstr "オブジェクトをエクスポート中" + +msgid "Failed loading objects." +msgstr "オブジェクトをロードできませんでした" + +msgid "Repairing object by Windows service" +msgstr "Windowsサービスでオブジェクトを修復" + +msgid "Repair failed." +msgstr "修復が失敗しました" + +msgid "Loading repaired objects" +msgstr "修復されたオブジェクトをロード" + +msgid "Exporting 3mf file failed" +msgstr "3mfのエクスポートが失敗しました" + +msgid "Import 3mf file failed" +msgstr "3mf ファイルをインポート失敗" + +msgid "Repaired 3mf file does not contain any object" +msgstr "修復した3mfファイルにはオブジェクトがありません" + +msgid "Repaired 3mf file contains more than one object" +msgstr "修復した3mfファイルには複数のオブジェクトが含まれています。" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "修復された3mfファイルにはパーツがありません" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "修復した3mfファイルには複数のパーツが含まれています。" + +msgid "Repair finished" +msgstr "修復完了" + +msgid "Repair canceled" +msgstr "修復を取消しました" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "ファイル %1% を %2% へのコピーが失敗しました (%3%)" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "構成を更新する前に、未保存の変更をご確認ください" + +msgid "Configuration package: " +msgstr "" + +msgid " updated to " +msgstr "" + +msgid "Open G-code file:" +msgstr "G-codeファイルを開く" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"オブジェクトはプレートと接触していないため造形できません。サポートを有効する" +"か、オブジェクトを修正してください。" + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "オブジェクトの %1% と %2% の間には、造形できるものがありません。" + +#, boost-format +msgid "Object: %1%" +msgstr "オブジェクト: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"この高さでオブジェクトが薄すぎるか、メッシュに欠陥がある可能性があります" + +msgid "No object can be printed. Maybe too small" +msgstr "造形できるオブジェクトがありません。" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "G-codeを生成できませんでした\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "カスタムG-codeを確認するか、デフォルトを使用してください。" + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "G-codeを生成:レイヤー %1%" + +msgid "Inner wall" +msgstr "内壁" + +msgid "Outer wall" +msgstr "外壁" + +msgid "Overhang wall" +msgstr "オーバーハング" + +msgid "Sparse infill" +msgstr "スパース インフィル" + +msgid "Internal solid infill" +msgstr "内部ソリッド インフィル" + +msgid "Top surface" +msgstr "トップ面" + +msgid "Bottom surface" +msgstr "底面" + +msgid "Internal Bridge" +msgstr "" + +msgid "Gap infill" +msgstr "隙間インフィル" + +msgid "Support interface" +msgstr "サポート接触面" + +msgid "Support transition" +msgstr "サポート変換層" + +msgid "Multiple" +msgstr "複数" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "線幅 %1% を算出できませんでした。%2%の値を取得できません。" + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" + +msgid "undefined error" +msgstr "未定義エラー" + +msgid "too many files" +msgstr "ファイル数が多すぎます。" + +msgid "file too large" +msgstr "ファイルが大きすぎます" + +msgid "unsupported method" +msgstr "非対応方式" + +msgid "unsupported encryption" +msgstr "非対応の暗号化方式" + +msgid "unsupported feature" +msgstr "非対応機能" + +msgid "failed finding central directory" +msgstr "フォルダが見つかりませんでした" + +msgid "not a ZIP archive" +msgstr "ZIP形式ではありません" + +msgid "invalid header or corrupted" +msgstr "無効又は破損したなヘッダー" + +msgid "unsupported multidisk" +msgstr "RAID への保存はサポートされていません。" + +msgid "decompression failed" +msgstr "解凍が失敗しました" + +msgid "compression failed" +msgstr "圧縮失敗" + +msgid "unexpected decompressed size" +msgstr "解凍サイズに異常があります" + +msgid "CRC check failed" +msgstr "CRC検査失敗" + +msgid "unsupported central directory size" +msgstr "サポートされていないフォルダサイズ" + +msgid "allocation failed" +msgstr "メモリ割り当て失敗" + +msgid "file open failed" +msgstr "file open failed" + +msgid "file create failed" +msgstr "file create failed" + +msgid "file write failed" +msgstr "file write failed" + +msgid "file read failed" +msgstr "file read failed" + +msgid "file close failed" +msgstr "file close failed" + +msgid "file seek failed" +msgstr "file seek failed" + +msgid "file stat failed" +msgstr "file stat failed" + +msgid "invalid parameter" +msgstr "無効なパラメータ" + +msgid "invalid filename" +msgstr "無効なファイル名" + +msgid "buffer too small" +msgstr "バッファーが小さすぎます" + +msgid "internal error" +msgstr "内部エラー" + +msgid "file not found" +msgstr "ファイルが行方不明" + +msgid "archive too large" +msgstr "アーカイブのサイスが大きすぎです" + +msgid "validation failed" +msgstr "アカウントの認証に失敗しました" + +msgid "write callback failed" +msgstr "書込みコールバック失敗" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "%1% は除外エリアに近すぎます。造形時に衝突の可能性があります。" + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% は他のオブジェクトと近すぎるため、衝突の可能性があります。" + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% は高すぎます、衝突の可能性があります。" + +msgid " is too close to others, there may be collisions when printing." +msgstr "他のオブジェクトと近すぎます。オブジェクトと衝突の可能性があります。" + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "が除外領域に近すぎます。衝突の可能性があります。" + +msgid "Prime Tower" +msgstr "プライムタワー" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr "他のオブジェクト に近すぎるので、衝突の可能性があります\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "除外領域 に近すぎるので、衝突の可能性があります。\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"温度差が大きいフィラメントを一緒に造形することができません。ノズル詰まりや損" +"傷する可能性があります" + +msgid "No extrusions under current settings." +msgstr "現在の設定では造形しません" + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "オブジェクト順で造形するでは、この機能を使用できません。" + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"スパイラルモードでは、[オブジェクト順]で複数のオブジェクトを造形してください" + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "複数の素材の場合、スパイラルモードを使用できません" + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "オブジェクト %1% がビルドボリュームの最大高さを超えています。" + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"オブジェクト %1% 自体はビルドボリュームに適合していますが、その最後のレイヤー" +"はビルドボリュームの最大高さを超えてしまいます。" + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"モデルのサイズを小さくするか、現在のプリント設定を変更してリトライしてくださ" +"い。" + +msgid "Variable layer height is not supported with Organic supports." +msgstr "Variable layer height is not supported with Organic supports." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"Ooze prevention is currently not supported with the prime tower enabled." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "オブジェクト順で造形する場合、プライムタワーを利用できません" + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "[アダプティブ積層ピッチ]を使用する時に、プライムタワーを利用できません" + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"プライムタワーを使用するにはサポートとのギャップを積層ピッチの整数倍である必" +"要があります" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" +"プライムタワーを使用するには、全てのオブジェクトが同じ積層ピッチを使う必要が" +"あります" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"プライムタワーを使用するには、全てのオブジェクトが同じラフト層数を使う必要が" +"あります" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"プライムタワーを使用するには、全てのオブジェクトが同じ積層ピッチを使う必要が" +"あります" + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"プライムタワーを使用するには、全てのオブジェクトが同じ積層ピッチを持つ必要が" +"あります" + +msgid "Too small line width" +msgstr "線幅が小さすぎます" + +msgid "Too large line width" +msgstr "線幅が広すぎます" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"プライムタワーを使用するには、オブジェクトとサポートが同じ積層ピッチを使う必" +"要があります" + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"有機サポート枝の先端の直径は、サポート材の押し出し幅よりも小さくする必要があ" +"ります。" + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"有機サポート枝の直径は、サポート材の押し出し幅の2倍よりも小さくする必要があり" +"ます。" + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"有機サポートの枝の直径は、サポートの幹の先端直径よりも小さい値である必要があ" +"ります。" + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"サポート増強器を有効しましたが、サポート自体は有効されていません。有効にして" +"ください。" + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "積層ピッチはノズルの直径を超える為設定できません" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"相対的なエクストルーダーアドレッシングは、浮動小数点精度による損失を防ぐため" +"に、各レイヤーでエクストルーダー位置をリセットする必要があります。layer_gcode" +"に \"G92 E0 \"を追加する。" + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"before_layer_gcode に \"G92 E0\" が見つかりましたが、これはエクストルーダーの" +"絶対アドレッシングと互換性がありません。" + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"layer_gcode に \"G92 E0\" が見つかりましたが、これはエクストルーダーの絶対ア" +"ドレッシングと互換性がありません。" + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "プレート %d: %s がフィラメント %s を使用できません" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" + +msgid "Generating skirt & brim" +msgstr "スカートとブリムを生成" + +msgid "Exporting G-code" +msgstr "G-codeをエクスポート中" + +msgid "Generating G-code" +msgstr "G-codeを生成" + +msgid "Failed processing of the filename_format template." +msgstr "filename_formatテンプレートを処理できませんでした" + +msgid "Printable area" +msgstr "造形可能領域" + +msgid "Bed exclude area" +msgstr "除外領域" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "XY方向の除外領域" + +msgid "Bed custom texture" +msgstr "カスタムベッドテクスチャ" + +msgid "Bed custom model" +msgstr "カスタムベッドモデル" + +msgid "Elephant foot compensation" +msgstr "コーナーはみ出し補正" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "1層目を縮小して、コーナーのはみ出しを軽減します。" + +msgid "Elephant foot compensation layers" +msgstr "" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" + +msgid "layers" +msgstr "積層" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"積層の高さです。小さい値では仕上がりがと良くなりますが、造形時間が伸びます。" + +msgid "Printable height" +msgstr "造形可能高さ" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "造形可能の最大高さです。" + +msgid "Preferred orientation" +msgstr "" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" + +msgid "Printer preset names" +msgstr "プリセット名" + +msgid "Use 3rd-party print host" +msgstr "" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" + +msgid "Hostname, IP or URL" +msgstr "Hostname、IPまたはURL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"ホスト名、IPアドレス、URLを入力してください。ユーザ名とパスワードがある場合、" +"下記形式を参照してください https://username:password@your-octopi-address/" + +msgid "Device UI" +msgstr "Device UI" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Specify the URL of your device user interface if it's not the same as " +"print_host" + +msgid "API Key / Password" +msgstr "APIキー/パスワード" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "APIキーとパスワードを入力してください。" + +msgid "Name of the printer" +msgstr "プリンター名" + +msgid "HTTPS CA File" +msgstr "CA証書ファイル" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "カスタムCA証書を指定できます(フォーマット:CRT/PEM)" + +msgid "User" +msgstr "ユーザ" + +msgid "Password" +msgstr "パスワード" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "HTTPS証書失効を無視" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "HTTPS証書の失効チェックを省略します。" + +msgid "Names of presets related to the physical printer" +msgstr "プリンターに関連するプリセット名" + +msgid "Authorization Type" +msgstr "認証タイプ" + +msgid "API key" +msgstr "APIキー" + +msgid "HTTP digest" +msgstr "HTTP digest" + +msgid "Avoid crossing wall" +msgstr "壁上の移動を迂回" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "移動する時に、壁面を迂回します。表面の仕上がりが良くなります。" + +msgid "Avoid crossing wall - Max detour length" +msgstr "最大迂回距離" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"迂回距離上限: 移動距離がこの値以上になる場合迂回しません。値が0の場合無効にな" +"ります。" + +msgid "mm or %" +msgstr "mm 或は %" + +msgid "Other layers" +msgstr "他の層" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"ベッドの温度です(1層目以外)。値が0の場合、フィラメントが常温プレートで使用" +"できないという意味です。" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"ベッドの温度です(1層目以外)。値が0の場合、フィラメントがエンジニアリング プ" +"レートで使用できないという意味です。" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"ベッドの温度です(1層目以外)。値が0の場合、フィラメントが高温プレートで使用" +"できないという意味です。" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"1層目以外のベッド温度。値が0の場合、フィラメントがPEIプレートをサポートしない" +"意味をします。" + +msgid "Initial layer" +msgstr "1層目" + +msgid "Initial layer bed temperature" +msgstr "1層目ベッド温度" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"1層目のベッド温度です。値が0の場合、フィラメントが常温プレートに使用できない" +"意味です。" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"1層目のベッド温度です。値が0の場合、フィラメントがエンジニアリング プレートに" +"使用できない意味です。" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"1層目のベッド温度です。値が0の場合、フィラメントが高温プレートに使用できない" +"意味です。" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"1層目のベッド温度。値が0の場合は、フィラメントがPEIプレートをサポートしない意" +"味です。" + +msgid "Bed types supported by the printer" +msgstr "適応ベッド種類" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "エンジニアリングプレート" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "First layer print sequence" + +msgid "Other layers print sequence" +msgstr "Other layers print sequence" + +msgid "The number of other layers print sequence" +msgstr "The number of other layers print sequence" + +msgid "Other layers filament sequence" +msgstr "Other layers filament sequence" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "積層が変わる直前に実行するG-codeです。" + +msgid "Bottom shell layers" +msgstr "底面層数" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"底面に使用するソリッド層数です。この値が底面の厚みより小さい場合、層数を増や" +"して厚みに合わせます。" + +msgid "Bottom shell thickness" +msgstr "底面厚さ" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"底面の厚さです、底面層数で決まった厚みがこの値より小さい場合、層数を増やしま" +"す。この値が0にする場合、この設定が無効となり、設定した層数で造形します。" + +msgid "Apply gap fill" +msgstr "" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" + +msgid "Everywhere" +msgstr "どこでも" + +msgid "Top and bottom surfaces" +msgstr "" + +msgid "Nowhere" +msgstr "" + +msgid "Force cooling for overhang and bridge" +msgstr "オーバーハングとブリッジの冷却" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"この設定により、パーツ冷却ファンの回転速度を最適化を行います。オーバーハング" +"やブリッジの冷却に有効的です。" + +msgid "Fan speed for overhang" +msgstr "オーバーハングの回転速度" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"大きなオーバーハングやブリッジを造形する時にファンの回転速度。仕上がりが向上" +"させる効果があります。" + +msgid "Cooling overhang threshold" +msgstr "オーバーハングの冷却閾値" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Force cooling fan to be a specific speed when overhang degree of printed " +"part exceeds this value. This is expressed as a percentage which indicates " +"how much width of the line without support from lower layer. 0% means " +"forcing cooling for all outer wall no matter the overhang degree." + +msgid "Bridge infill direction" +msgstr "" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"ブリッジ角度。値が0の場合は自動計算となります。0°を使用したい場合は180を入力" +"していください。" + +msgid "Bridge density" +msgstr "" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" + +msgid "Bridge flow ratio" +msgstr "ブリッジ流量" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"この値を少し (例えば 0.9) 小さくし、ブリッジ用に押出し量を減らし、たるみを防" +"ぎます。" + +msgid "Internal bridge flow ratio" +msgstr "" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" + +msgid "Top surface flow ratio" +msgstr "Top surface flow ratio" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have a smooth surface finish." + +msgid "Bottom surface flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" + +msgid "Precise wall" +msgstr "" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" + +msgid "Only one wall on top surfaces" +msgstr "トップ面に1層" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "トップ面に1層だけ造形します、インフィルを多い空間を与えます。" + +msgid "One wall threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" + +msgid "Only one wall on first layer" +msgstr "Only one wall on first layer" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" + +msgid "Extra perimeters on overhangs" +msgstr "" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" + +msgid "Reverse on odd" +msgstr "" + +msgid "Overhang reversal" +msgstr "" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" + +msgid "Reverse only internal perimeters" +msgstr "" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" + +msgid "Bridge counterbore holes" +msgstr "" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" + +msgid "Partially bridged" +msgstr "" + +msgid "Sacrificial layer" +msgstr "" + +msgid "Reverse threshold" +msgstr "" + +msgid "Overhang reversal threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" + +msgid "Classic mode" +msgstr "" + +msgid "Enable this option to use classic mode" +msgstr "" + +msgid "Slow down for overhang" +msgstr "オーバーハング減速" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"オーバーハングを造形時に速度を下げます。各角度のオーバーハングに対して、下記" +"の減速パラメータを設定してください。" + +msgid "Slow down for curled perimeters" +msgstr "" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" + +msgid "mm/s or %" +msgstr "mm/s or %" + +msgid "External" +msgstr "" + +msgid "Speed of bridge and completely overhang wall" +msgstr "ブリッジを造形する時に速度です。" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" + +msgid "Brim width" +msgstr "ブリム幅" + +msgid "Distance from model to the outermost brim line" +msgstr "一番外側のブリム線がモデルと距離です。" + +msgid "Brim type" +msgstr "ブリムタイプ" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analyzed and calculated automatically." + +msgid "Brim-object gap" +msgstr "ブリムとオブジェクトの間隔" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"ブリムを取り外しやすくする為、一番内側のブリムラインをモデルと少し距離を設け" +"ます。" + +msgid "Brim ears" +msgstr "" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "" + +msgid "Brim ear max angle" +msgstr "" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" + +msgid "Brim ear detection radius" +msgstr "" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" + +msgid "Compatible machine" +msgstr "対応機種" + +msgid "upward compatible machine" +msgstr "互換性のあるデバイス" + +msgid "Compatible machine condition" +msgstr "対応機種条件" + +msgid "Compatible process profiles" +msgstr "互換性のあるプロセスプロファイル" + +msgid "Compatible process profiles condition" +msgstr "互換性のあるプロセスプロファイル条件" + +msgid "Print sequence, layer by layer or object by object" +msgstr "造形の順番を設定します、積層順かオブジェクト順にしてください" + +msgid "By layer" +msgstr "積層順" + +msgid "By object" +msgstr "オブジェクト順" + +msgid "Intra-layer order" +msgstr "" + +msgid "Print order within a single layer" +msgstr "" + +msgid "As object list" +msgstr "" + +msgid "Slow printing down for better layer cooling" +msgstr "冷却の為減速" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"この設定を有効にする場合、最終層の造形で速度を下げます。よって、最終層の冷却" +"時間を延長されますので、細部の品質を改善に繋がります。" + +msgid "Normal printing" +msgstr "通常造形" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "造形と移動時のデフォルト加速度です。" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "デフォルト フィラメント プロファイル" + +msgid "Default filament profile when switch to this machine profile" +msgstr "デバイスを切替える時のデフォルト フィラメント プロファイル" + +msgid "Default process profile" +msgstr "デフォルト プロセスプロファイル" + +msgid "Default process profile when switch to this machine profile" +msgstr "デバイスを切替える時のデフォルト プロセス プロファイル" + +msgid "Activate air filtration" +msgstr "Activate air filtration" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "Fan speed" +msgstr "回転速度" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Speed of exhaust fan during printing.This speed will override the speed in " +"filament custom g-code" + +msgid "Speed of exhaust fan after printing completes" +msgstr "" + +msgid "No cooling for the first" +msgstr "冷却しない最初層数" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"1層目をプリント時に全てのファンをオフにします。ベッドとの接着性を高めます" + +msgid "Don't support bridges" +msgstr "ブリッジにサポートしない" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"ブリッジが長くない場合は、サポートが無くても造形できます。フィラメントの消費" +"量を減らします。" + +msgid "Thick bridges" +msgstr "厚いブリッジ" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"有効になる場合、より長いブリッジを造形できますが、仕上がりが劣る可能性があり" +"ます。" + +msgid "Thick internal bridges" +msgstr "" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" + +msgid "Don't filter out small internal bridges (beta)" +msgstr "" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" + +msgid "Disabled" +msgstr "無効" + +msgid "Limited filtering" +msgstr "" + +msgid "No filtering" +msgstr "" + +msgid "Max bridge length" +msgstr "最大ブリッジ長さ" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"サポートの要らないブリッジの最大長さです。値が0の場合、全てのブリッジにサポー" +"トを使用します、非常に大きい値を入れると、全てのブリッジにサポートを使用しま" +"せん。" + +msgid "End G-code" +msgstr "終了G-code" + +msgid "End G-code when finish the whole printing" +msgstr "造形完了時のG-codeを追加" + +msgid "Between Object Gcode" +msgstr "Between Object Gcode" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Insert G-code between objects. This parameter will only come into effect " +"when you print your models object by object." + +msgid "End G-code when finish the printing of this filament" +msgstr "このフィラメントを使用終わった時のG-codeを追加" + +msgid "Ensure vertical shell thickness" +msgstr "壁の厚さを確保" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" + +msgid "Critical Only" +msgstr "" + +msgid "Moderate" +msgstr "" + +msgid "Top surface pattern" +msgstr "トップ面パターン" + +msgid "Line pattern of top surface infill" +msgstr "トップ面のインフィルのパターンです。" + +msgid "Concentric" +msgstr "同心" + +msgid "Rectilinear" +msgstr "直線" + +msgid "Monotonic" +msgstr "単調" + +msgid "Monotonic line" +msgstr "単調線" + +msgid "Aligned Rectilinear" +msgstr "整列直線" + +msgid "Hilbert Curve" +msgstr "ヒルベルト曲線" + +msgid "Archimedean Chords" +msgstr "アルキメデス螺旋" + +msgid "Octagram Spiral" +msgstr "オクタグラムスパイラル" + +msgid "Bottom surface pattern" +msgstr "底面パターン" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "底面のインフィル パターンです、ブリッジインフィルが含まれていません。" + +msgid "Internal solid infill pattern" +msgstr "Internal solid infill pattern" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"外壁の造形速度です。普段は内壁より遅い速度を指定し、仕上がりが良くなります。" + +msgid "Small perimeters" +msgstr "Small perimeters" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" + +msgid "Small perimeters threshold" +msgstr "" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" + +msgid "Walls printing order" +msgstr "" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" + +msgid "Inner/Outer" +msgstr "" + +msgid "Outer/Inner" +msgstr "" + +msgid "Inner/Outer/Inner" +msgstr "" + +msgid "Print infill first" +msgstr "Print infill first" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" + +msgid "Wall loop direction" +msgstr "" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" + +msgid "Counter clockwise" +msgstr "" + +msgid "Clockwise" +msgstr "" + +msgid "Height to rod" +msgstr "レールまでの高さ" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"ノズル先端から下のレールまでの距離です。オブジェクト順で造形する時に衝突防止" +"用です。" + +msgid "Height to lid" +msgstr "蓋までの高さ" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"ノズル先端から蓋までの距離。オブジェクト順で造形する時に衝突防止用です。" + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"押出機のクリアランス(半径):オブジェクト順で造形する時にこのパラメータでオ" +"ブジェクトの間隔を計算します。" + +msgid "Nozzle height" +msgstr "Nozzle height" + +msgid "The height of nozzle tip." +msgstr "The height of nozzle tip." + +msgid "Bed mesh min" +msgstr "" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Bed mesh max" +msgstr "" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Probe point distance" +msgstr "" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" + +msgid "Mesh margin" +msgstr "" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" + +msgid "Extruder Color" +msgstr "押出機の色" + +msgid "Only used as a visual help on UI" +msgstr "ビジュアル情報として使用される" + +msgid "Extruder offset" +msgstr "押出機オフセット" + +msgid "Flow ratio" +msgstr "流量比" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"フィラメントは温度により体積が変わります。この設定で押出流量を比例的に調整し" +"ます。 0.95 ~ 1.05の間で設定していください。" + +msgid "Enable pressure advance" +msgstr "Enable pressure advance" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" + +msgid "Keep fan always on" +msgstr "ファン常時ON" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"この設定により、パーツ冷却ファンを停止しなく、最低速度で回転します。頻繁に回" +"転・停止の頻度を減らします。" + +msgid "Don't slow down outer walls" +msgstr "" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "積層時間" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "パーツ冷却ファンは、積層造形時間がこの値より短い時に作動します。" + +msgid "Default color" +msgstr "デフォルト色" + +msgid "Default filament color" +msgstr "フィラメントのデフォルト色" + +msgid "Filament notes" +msgstr "Filament notes" + +msgid "You can put your notes regarding the filament here." +msgstr "You can put your notes regarding the filament here." + +msgid "Required nozzle HRC" +msgstr "ノズルHRC" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"フィラメントを使用するのに最低限のノズルHRCです。値が0の場合、ノズルのNRCを" +"チェックしない意味です。" + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"この設定は、単位時間で押出できるフィラメントの体積を示します。造形速度はこの" +"パラメータにも制限されています。0に設定できません。" + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "フィラメントロード時間" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"フィラメントを入れ替える時に、フィラメントをロードする時間です、統計目的に使" +"用されています。" + +msgid "Filament unload time" +msgstr "フィラメントアンロード時間" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"フィラメントを入れ替える時に、フィラメントをアンロードする時間です、統計目的" +"に使用されています。" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"押出制御に使用されるパラメータなので、精確なフィラメント直径を入力してくださ" +"い" + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" + +msgid "Loading speed" +msgstr "ローディング速度" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "フィラメントをワイプタワー上でロードする際のスピード。" + +msgid "Loading speed at the start" +msgstr "ローディング開始時の速度" + +msgid "Speed used at the very beginning of loading phase." +msgstr "ロードし始めの最初のスピード。" + +msgid "Unloading speed" +msgstr "アップロードスピード" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"ワイプタワー上でアンロードするときのスピード(ラミング直後のアンロードスピー" +"ドには影響しません)" + +msgid "Unloading speed at the start" +msgstr "最初のアンロードスピード" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "ラミング直後にフィラメントの先端を引き抜く速度。" + +msgid "Delay after unloading" +msgstr "アンロードした後の待ち時間" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"フィラメントがアンロードされた後に停止する時間。 軟らかい材料などで元の寸法に" +"縮小するのに時間を必要とすると考えられる場合で、信頼性の高いツール交換を行う" +"のに役立ちます。" + +msgid "Number of cooling moves" +msgstr "冷却移動回数" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"フィラメントは、冷却チューブ内で上下に移動することにより冷却されます。 これら" +"の上下移動の必要な回数を指定します。" + +msgid "Speed of the first cooling move" +msgstr "冷却移動の最初の速度" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "クーリング動作はこのスピードから徐々に加速します。" + +msgid "Minimal purge on wipe tower" +msgstr "プライムタワー上最小フラッシュ量" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" + +msgid "Speed of the last cooling move" +msgstr "最後の冷却移動の速度" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "冷却動作は、この速度に向かって徐々に加速しています。" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"ツールの変更中(Tコードの実行時)にプリンターファームウェア(またはMulti " +"Material Unit 2.0)が新しいフィラメントをロードする時間。 この時間は、Gコード" +"時間推定プログラムによって合計プリント時間に追加されます。" + +msgid "Ramming parameters" +msgstr "ラミングパラメーター" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"この文字列はラミングダイアログで編集され、ラミング固有のパラメーターが含まれ" +"ています。" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"ツールチェンジ中(Tコードの実行時)にプリンターファームウェア(またはMulti " +"Material Unit 2.0)がフィラメントをアンロードする時間。 この時間は、Gコード時" +"間予測プログラムによって合計プリント予測時間に追加されます。" + +msgid "Enable ramming for multitool setups" +msgstr "マルチツールのセットアップでラミングを有効にする" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"マルチツールプリンターを使用しているとき(つまり、プリンター設定の「シングル" +"エクストルーダーマルチマテリアル」のチェックが外れているとき)に、ラミングを" +"実行します。チェックすると、ツール交換の直前に少量のフィラメントがワイプタ" +"ワー上で急速に押し出されます。このオプションは、ワイプタワーが有効な場合にの" +"み使用されます。" + +msgid "Multitool ramming volume" +msgstr "マルチツールラミング量" + +msgid "The volume to be rammed before the toolchange." +msgstr "ツールチェンジ前にラミングで使用する量" + +msgid "Multitool ramming flow" +msgstr "マルチツールラミングフロー" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "ツールチェンジ前のフィラメントのラミングに使うフロー。" + +msgid "Density" +msgstr "密度" + +msgid "Filament density. For statistics only" +msgstr "フィラメント密度" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "フィラメント素材タイプ" + +msgid "Soluble material" +msgstr "可溶性材料" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "可溶性材料は、サポート又はサポート接触面の造形によく使われます" + +msgid "Support material" +msgstr "サポート材料" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "サポート素材は、サポート又はサポート接触面の造形によく使われます。" + +msgid "Softening temperature" +msgstr "Softening temperature" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than this, it's highly recommended to open the front " +"door and/or remove the upper glass to avoid clogs." + +msgid "Price" +msgstr "価格" + +msgid "Filament price. For statistics only" +msgstr "フィラメント単価" + +msgid "money/kg" +msgstr "USD/kg" + +msgid "Vendor" +msgstr "Vendor" + +msgid "Vendor of filament. For show only" +msgstr "Filament Vendor (Only for show)" + +msgid "(Undefined)" +msgstr "(未定義)" + +msgid "Sparse infill direction" +msgstr "" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "スパース インフィル パターンの角度です" + +msgid "Solid infill direction" +msgstr "" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" + +msgid "Rotate solid infill direction" +msgstr "" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "" + +msgid "Sparse infill density" +msgstr "充填密度" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" + +msgid "Sparse infill pattern" +msgstr "充填パターン" + +msgid "Line pattern for internal sparse infill" +msgstr "スパース インフィルのパターンです。" + +msgid "Grid" +msgstr "グリッド" + +msgid "Line" +msgstr "直線" + +msgid "Cubic" +msgstr "キュービック" + +msgid "Tri-hexagon" +msgstr "六角形" + +msgid "Gyroid" +msgstr "ジャイロイド" + +msgid "Honeycomb" +msgstr "ハニカム" + +msgid "Adaptive Cubic" +msgstr "アダプティブ キュービック" + +msgid "3D Honeycomb" +msgstr "3D ハニカム" + +msgid "Support Cubic" +msgstr "キュービックサポート" + +msgid "Lightning" +msgstr "ライトニング" + +msgid "Cross Hatch" +msgstr "Cross Hatch" + +msgid "Sparse infill anchor length" +msgstr "" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" + +msgid "0 (no open anchors)" +msgstr "0 (no open anchors)" + +msgid "1000 (unlimited)" +msgstr "1000 (unlimited)" + +msgid "Maximum length of the infill anchor" +msgstr "最長インフィルアンカー" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" + +msgid "0 (Simple connect)" +msgstr "" + +msgid "Acceleration of outer walls" +msgstr "" + +msgid "Acceleration of inner walls" +msgstr "" + +msgid "Acceleration of travel moves" +msgstr "" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"トップ面のインフィル加速度です。遅くすると表面の仕上がりが向上させることがで" +"きます" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "外壁の加速度:低い値では品質を向上させることができます。" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" + +msgid "mm/s² or %" +msgstr "mm/s² or %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"1層目の造形加速度です。遅くするとプレートとの接着を向上させることができます" + +msgid "Enable accel_to_decel" +msgstr "Enable accel_to_decel" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "Klipper's max_accel_to_decel will be adjusted automatically" + +msgid "accel_to_decel" +msgstr "accel_to_decel" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" + +msgid "Jerk of outer walls" +msgstr "Jerk of outer walls" + +msgid "Jerk of inner walls" +msgstr "Jerk of inner walls" + +msgid "Jerk for top surface" +msgstr "" + +msgid "Jerk for infill" +msgstr "" + +msgid "Jerk for initial layer" +msgstr "" + +msgid "Jerk for travel" +msgstr "" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Initial layer height" +msgstr "1層目の高さ" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "1層目の高さです。高さを大きくすればプレートとの接着性が良くなります。" + +msgid "Speed of initial layer except the solid infill part" +msgstr "1層目を造形時に、ソリッド インフィル以外の部分の造形速度です。" + +msgid "Initial layer infill" +msgstr "1層目インフィル" + +msgid "Speed of solid infill part of initial layer" +msgstr "1層目のソリッド インフィルの造形速度です。" + +msgid "Initial layer travel speed" +msgstr "" + +msgid "Travel speed of initial layer" +msgstr "" + +msgid "Number of slow layers" +msgstr "" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" + +msgid "Initial layer nozzle temperature" +msgstr "1層目のノズル温度" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "1層目でのノズル温度" + +msgid "Full fan speed at layer" +msgstr "最大回転速度の積層" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" + +msgid "layer" +msgstr "" + +msgid "Support interface fan speed" +msgstr "" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"この設定により、壁面を造形時にノズルがランダムで軽微な振動を加えます。これに" +"より、表面にザラザラ感が出来上がります。" + +msgid "Contour" +msgstr "Contour" + +msgid "Contour and hole" +msgstr "Contour and hole" + +msgid "All walls" +msgstr "すべての壁" + +msgid "Fuzzy skin thickness" +msgstr "厚さ" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "ジッターの幅:外壁の線幅より小さくするのをお勧めします。" + +msgid "Fuzzy skin point distance" +msgstr "ポイント距離" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "ポイント間の平均距離" + +msgid "Apply fuzzy skin to first layer" +msgstr "" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "" + +msgid "Filter out tiny gaps" +msgstr "Filter out tiny gaps" + +msgid "Layers and Perimeters" +msgstr "積層と境界" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"ギャップを充填時の速度です。ギャップの幅が不規則なので、遅くするのが推奨で" +"す。" + +msgid "Precise Z height" +msgstr "Precise Z height" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." + +msgid "Arc fitting" +msgstr "曲線フィッティング" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" + +msgid "Add line number" +msgstr "行番号を追加" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "各G-codeラインの先頭に行番号 (Nx)を追加します" + +msgid "Scan first layer" +msgstr "1層目を検査" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "カメラで1層目検査を有効にします" + +msgid "Nozzle type" +msgstr "ノズルタイプ" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"ノズル材料:これにより、ノズルの耐摩耗性と使用できるフィラメントが決まりま" +"す。" + +msgid "Undefine" +msgstr "未定義" + +msgid "Hardened steel" +msgstr "焼入れスチール" + +msgid "Stainless steel" +msgstr "ステンレススチール" + +msgid "Brass" +msgstr "真鍮" + +msgid "Nozzle HRC" +msgstr "ノズルHRC" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "ノズル硬度です、値が0になる場合、ノズル硬度を考慮しません。" + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Printer structure" + +msgid "The physical arrangement and components of a printing device" +msgstr "The physical arrangement and components of a printing device" + +msgid "CoreXY" +msgstr "" + +msgid "I3" +msgstr "" + +msgid "Hbot" +msgstr "" + +msgid "Delta" +msgstr "" + +msgid "Best object position" +msgstr "Best object position" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "Best auto arranging position in range [0,1] w.r.t. bed shape." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" + +msgid "Only overhangs" +msgstr "" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "" + +msgid "Fan kick-start time" +msgstr "" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" + +msgid "Time cost" +msgstr "" + +msgid "The printer cost per hour" +msgstr "" + +msgid "money/h" +msgstr "" + +msgid "Support control chamber temperature" +msgstr "Support controlling chamber temperature" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" + +msgid "Support air filtration" +msgstr "Support air filtration" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "G-code flavor" +msgstr "G-codeスタイル" + +msgid "What kind of gcode the printer is compatible with" +msgstr "プリンターが対応するG-code" + +msgid "Klipper" +msgstr "" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" + +msgid "Label objects" +msgstr "オブジェクトにラベルを付ける" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" + +msgid "Exclude objects" +msgstr "Exclude objects" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "" + +msgid "Verbose G-code" +msgstr "コメント付きGコード" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"これを有効にすると、コメント化されたGコードファイルが生成され、各行に説明テキ" +"ストが追加されます。 ただし、SDカードからプリントする場合、ファイルサイズ増大" +"が原因で処理が間に合わずプリント速度が低下する可能性があります。" + +msgid "Infill combination" +msgstr "インフィル マージ" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"複数層のスパース インフィルをまとめて造形し、時間短縮に効きます。壁面はこの設" +"定に影響されません" + +msgid "Filament to print internal sparse infill." +msgstr "スパース インフィルを造形時使用するフィラメントです。" + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Infill/Wall overlap" +msgstr "インフィル/壁面 オーバーラップ" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" + +msgid "Speed of internal sparse infill" +msgstr "スパース インフィルの造形速度です。" + +msgid "Interface shells" +msgstr "Interface shells" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" + +msgid "Maximum width of a segmented region" +msgstr "Maximum width of a segmented region" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Maximum width of a segmented region. A value of 0 disables this feature." + +msgid "Interlocking depth of a segmented region" +msgstr "Interlocking depth of a segmented region" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "Interlocking depth of a segmented region. Zero disables this feature." + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "アイロン面" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"アイロンでは、小さな流量で水平の表面をならします。ならす面を選択してくださ" +"い。" + +msgid "No ironing" +msgstr "しない" + +msgid "Top surfaces" +msgstr "全てのトップ面" + +msgid "Topmost surface" +msgstr "最上部のみ" + +msgid "All solid layer" +msgstr "全てのソリッド積層" + +msgid "Ironing Pattern" +msgstr "Ironing Pattern" + +msgid "The pattern that will be used when ironing" +msgstr "" + +msgid "Ironing flow" +msgstr "アイロン時の流量比率" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "アイロン時の押出量です。通常流量の比率で決まります。" + +msgid "Ironing line spacing" +msgstr "アイロン時にライン間隔" + +msgid "The distance between the lines of ironing" +msgstr "アイロン時の線間隔です。" + +msgid "Ironing speed" +msgstr "アイロン時の移動速度" + +msgid "Print speed of ironing lines" +msgstr "アイロン時の造形速度です。" + +msgid "Ironing angle" +msgstr "" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "積層が変わる直後に実行するG-codeです。" + +msgid "Supports silent mode" +msgstr "サイレントモード" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "サイレントモード有無" + +msgid "Emit limits to G-code" +msgstr "" + +msgid "Machine limits" +msgstr "プリンター制限" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"このG-codeは造形を一時停止用です。ユーザがこれをG-codeに入れて造形を一時停止" +"できます。" + +msgid "This G-code will be used as a custom code" +msgstr "このG-codeがカスタム用です。" + +msgid "Small area flow compensation (beta)" +msgstr "" + +msgid "Enable flow compensation for small infill areas" +msgstr "" + +msgid "Flow Compensation Model" +msgstr "" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" + +msgid "Maximum speed X" +msgstr "最大速度 X" + +msgid "Maximum speed Y" +msgstr "最大速度 Y" + +msgid "Maximum speed Z" +msgstr "最大速度 Z" + +msgid "Maximum speed E" +msgstr "最大速度 E" + +msgid "Maximum X speed" +msgstr "最大速度 X" + +msgid "Maximum Y speed" +msgstr "最大速度 Y" + +msgid "Maximum Z speed" +msgstr "最大速度 Z" + +msgid "Maximum E speed" +msgstr "最大速度 E" + +msgid "Maximum acceleration X" +msgstr "最大加速度 X" + +msgid "Maximum acceleration Y" +msgstr "最大加速度 Y" + +msgid "Maximum acceleration Z" +msgstr "最大加速度 Z" + +msgid "Maximum acceleration E" +msgstr "最大加速度 E" + +msgid "Maximum acceleration of the X axis" +msgstr "X軸最大加速度" + +msgid "Maximum acceleration of the Y axis" +msgstr "Y軸最大加速度" + +msgid "Maximum acceleration of the Z axis" +msgstr "Z軸最大加速度" + +msgid "Maximum acceleration of the E axis" +msgstr "E軸最大加速度" + +msgid "Maximum jerk X" +msgstr "最大振動 X" + +msgid "Maximum jerk Y" +msgstr "最大振動 Y" + +msgid "Maximum jerk Z" +msgstr "最大振動 Z" + +msgid "Maximum jerk E" +msgstr "最大振動 E" + +msgid "Maximum jerk of the X axis" +msgstr "最大振動 X" + +msgid "Maximum jerk of the Y axis" +msgstr "最大振動 Y" + +msgid "Maximum jerk of the Z axis" +msgstr "最大振動 Z" + +msgid "Maximum jerk of the E axis" +msgstr "最大振動 E" + +msgid "Minimum speed for extruding" +msgstr "押出最低速度" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "押出最低速度(M205 S)" + +msgid "Minimum travel speed" +msgstr "最小移動速度" + +msgid "Minimum travel speed (M205 T)" +msgstr "最小移動速度(M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "押出最大加速度" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "押出最大加速度 (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "リトラクション最大加速度" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "リトラクション最大加速度 (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "移動最大加速度" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "自動冷却時に、パーツ冷却ファンの最大回転速度。" + +msgid "Max" +msgstr "最大" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"最大積層ピッチ:この値は「アダプティブ積層ピッチ」が有効時に積層ピッチの最大" +"値です" + +msgid "Extrusion rate smoothing" +msgstr "" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" + +msgid "Minimum speed for part cooling fan" +msgstr "パーツ冷却ファンの最低回転数" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" + +msgid "Min" +msgstr "最小" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"最小積層ピッチ:この値は「アダプティブ積層ピッチ」が有効時に積層ピッチの最小" +"値です" + +msgid "Min print speed" +msgstr "最小造形速度" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" + +msgid "Nozzle diameter" +msgstr "ノズル直径" + +msgid "Diameter of nozzle" +msgstr "ノズル直径" + +msgid "Configuration notes" +msgstr "設定上の注意" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"ここにメモを書いておくことができます。 このテキストは、Gコードヘッダーのコメ" +"ントに追加されます。" + +msgid "Host Type" +msgstr "ホストタイプ" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "ホストタイプを入力してください。" + +msgid "Nozzle volume" +msgstr "内腔容積" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "ノズル先端とフィラメントカッターの間の体積" + +msgid "Cooling tube position" +msgstr "冷却チューブ位置" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "ノズル先端から冷却チューブの中心までの距離。" + +msgid "Cooling tube length" +msgstr "冷却チューブの長さ" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"ノズルからの溶融樹脂を引抜いた後にフィラメントを凝固させるための冷却用チュー" +"ブの長さ。" + +msgid "High extruder current on filament swap" +msgstr "フィラメント交換時の高いエクストルーダー電流" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"フィラメント交換シーケンス中にエクストルーダーモーター電流を増やして、フィラ" +"メント押出し力を高められます。フィラメントの先端シェイプによりロード時の負荷" +"抵抗が増加してしまう場合に有効な機能です。" + +msgid "Filament parking position" +msgstr "フィラメント待避ポジション" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"アンロード時にフィラメントが止まっている位置からエクストルーダー先端までの距" +"離。 これは、プリンターファームウェアの値と一致させる必要があります。" + +msgid "Extra loading distance" +msgstr "追加ローディング長さ" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"ゼロに設定すると、ロード中にフィラメントがパーキング位置から押し出される距離" +"は、アンロード中に戻った距離と同一になります。 正の場合、その分多くロードさ" +"れ、逆に負の場合は、ロード距離はアンロードよりも短くなります。" + +msgid "Start end points" +msgstr "終始点" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "カッター領域から廃料排出口までの終始点" + +msgid "Reduce infill retraction" +msgstr "インフィルのリトラクション低減" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"インフィル領域内の移動はリトラクションしません。造形時間を節約できます。" + +msgid "Filename format" +msgstr "ファイル名形式" + +msgid "User can self-define the project file name when export" +msgstr "エクスポート時ファイル名を設定できます" + +msgid "Make overhangs printable" +msgstr "" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "" + +msgid "Make overhangs printable - Maximum angle" +msgstr "" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" + +msgid "Make overhangs printable - Hole area" +msgstr "" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "オーバーハングを検出" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"この設定により、線幅に対するオーバーハングの割合を検出し、異なる速度で造形し" +"ます。100%%のオーバーハングの場合、ブリッジの速度が使用されます。" + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Speed of inner wall" +msgstr "内壁の造形速度です。" + +msgid "Number of walls of every layer" +msgstr "壁面の層数です。" + +msgid "Alternate extra wall" +msgstr "" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" + +msgid "Printer notes" +msgstr "Printer notes" + +msgid "You can put your notes regarding the printer here." +msgstr "You can put your notes regarding the printer here." + +msgid "Raft contact Z distance" +msgstr "ラフト接触面Z間隔" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"ラフトとオブジェクトのZ方向の間隔。可溶性材料を使用する場合この設定が無効で" +"す。" + +msgid "Raft expansion" +msgstr "ラフト拡張" + +msgid "Expand all raft layers in XY plane" +msgstr "この設定により、ラフトのXYサイズを拡大します。" + +msgid "Initial layer density" +msgstr "1層目の密度" + +msgid "Density of the first raft or support layer" +msgstr "ラフト或はサポートの1層目の密度です。" + +msgid "Initial layer expansion" +msgstr "1層目拡張" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"この設定により、ラフト或はサポートの1層目を拡大します。ベッドとの接着性が良く" +"なります。" + +msgid "Raft layers" +msgstr "ラフト" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"指定したサポート層数で上げて造形します。ABSなど反りやすい材料に対して有効的で" +"す。" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"モデルを簡略化してG-codeのデータ量を減らせます。値が小さく設定するほど、分解" +"能が高くなり、スライス時間も長くなります。" + +msgid "Travel distance threshold" +msgstr "移動距離閾値" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "移動距離が閾値以上の場合のみ、リトラクションを作動します。" + +msgid "Retract amount before wipe" +msgstr "拭き上げ前のリトラクション量" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"拭き上げ前のリトラクション量です、通常のリトラクション量の比率で指定します。" + +msgid "Retract when change layer" +msgstr "積層変更時のリトラクション" + +msgid "Force a retraction when changes layer" +msgstr "この設定により、積層を変更時にリトラクションを実行します。" + +msgid "Retraction Length" +msgstr "リトラクション長さ" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"ノズルが長い距離で移動する時に、リトラクションの量です。値が0の場合、リトラク" +"ションが無効になります。" + +msgid "Long retraction when cut(experimental)" +msgstr "Long retraction when cut (experimental)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." + +msgid "Retraction distance when cut" +msgstr "Retraction distance when cut" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Experimental feature. Retraction length before cutting off during filament " +"change" + +msgid "Z hop when retract" +msgstr "リトラクト時にZ方向調整" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"リトラクション時に、ノズルを少し上げてから移動します。この動作でモデルとの衝" +"突を回避できます。" + +msgid "Z hop lower boundary" +msgstr "Z hop lower boundary" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" + +msgid "Z hop upper boundary" +msgstr "Z hop upper boundary" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" + +msgid "Z hop type" +msgstr "" + +msgid "Slope" +msgstr "スロープ" + +msgid "Spiral" +msgstr "スパイラル" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "これ以上でリフトZ" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" + +msgid "Only lift Z below" +msgstr "Zリフト以下" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" + +msgid "On surfaces" +msgstr "" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" + +msgid "All Surfaces" +msgstr "" + +msgid "Top Only" +msgstr "" + +msgid "Bottom Only" +msgstr "" + +msgid "Top and Bottom" +msgstr "" + +msgid "Extra length on restart" +msgstr "Extra length on restart" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"移動後に引込みが補償されると、エクストルーダーはこの追加量のフィラメントを押" +"し出します。 この設定はほとんど必要ありません。" + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"ツールの交換後に吸込み分が補正されると、エクストルーダーはこの追加量のフィラ" +"メントを押し出します。" + +msgid "Retraction Speed" +msgstr "リトラクション速度" + +msgid "Speed of retractions" +msgstr "リトラクションの速度です。" + +msgid "Deretraction Speed" +msgstr "復帰速度" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"リトラクション後フィラメントをロードする時の速度です、値が0の場合、リトラク" +"ションの速度と同じくなります。" + +msgid "Use firmware retraction" +msgstr "Use firmware retraction" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" + +msgid "Show auto-calibration marks" +msgstr "" + +msgid "Disable set remaining print time" +msgstr "" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" + +msgid "Seam position" +msgstr "継ぎ目位置" + +msgid "The start position to print each part of outer wall" +msgstr "各パーツに対して、外壁を造形時の開始位置です。" + +msgid "Nearest" +msgstr "最寄り" + +msgid "Aligned" +msgstr "整列" + +msgid "Back" +msgstr "背面" + +msgid "Random" +msgstr "ランダム" + +msgid "Staggered inner seams" +msgstr "ジグザグ状のインナーシーム" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"このオプションは、内側のシーム部を深さに応じて後方にずらし、ジグザグ模様を形" +"成するものです。" + +msgid "Seam gap" +msgstr "Seam gap" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" + +msgid "Scarf joint seam (beta)" +msgstr "" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Use scarf joint to minimize seam visibility and increase seam strength." + +msgid "Conditional scarf joint" +msgstr "Conditional scarf joint" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." + +msgid "Conditional angle threshold" +msgstr "Conditional angle threshold" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" + +msgid "Conditional overhang threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" + +msgid "Scarf joint speed" +msgstr "" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" + +msgid "Scarf joint flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" + +msgid "Scarf start height" +msgstr "Scarf start height" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." + +msgid "Scarf around entire wall" +msgstr "Scarf around entire wall" + +msgid "The scarf extends to the entire length of the wall." +msgstr "The scarf extends to the entire length of the wall." + +msgid "Scarf length" +msgstr "Scarf length" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." + +msgid "Scarf steps" +msgstr "Scarf steps" + +msgid "Minimum number of segments of each scarf." +msgstr "Minimum number of segments of each scarf." + +msgid "Scarf joint for inner walls" +msgstr "Scarf joint for inner walls" + +msgid "Use scarf joint for inner walls as well." +msgstr "Use scarf joint for inner walls as well." + +msgid "Role base wipe speed" +msgstr "" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" + +msgid "Wipe on loops" +msgstr "" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" + +msgid "Wipe before external loop" +msgstr "" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" + +msgid "Wipe speed" +msgstr "Wipe speed" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"The wipe speed is determined by the speed setting specified in this " +"configuration. If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above. The default value for " +"this parameter is 80%." + +msgid "Skirt distance" +msgstr "スカート距離" + +msgid "Distance from skirt to brim or object" +msgstr "スカートからブリム或はオブジェクトまでの距離です。" + +msgid "Skirt height" +msgstr "Skirt height" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Number of skirt layers: usually only one" + +msgid "Draft shield" +msgstr "保護シールド" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" + +msgid "Limited" +msgstr "限定" + +msgid "Enabled" +msgstr "有効" + +msgid "Skirt loops" +msgstr "スカートのループ数" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "スカートのループ数です、値が0の場合、スカートが無効になります。" + +msgid "Skirt speed" +msgstr "" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" + +msgid "Skirt minimum extrusion length" +msgstr "" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"積層造形時間がこの値より短い時に、より良い冷却を図るため速度を落とします。" + +msgid "Minimum sparse infill threshold" +msgstr "スパース インフィルの下閾値" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"スパース インフィルの面積がこの値以下の場合、ソリッド インフィルに変換されま" +"す" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "ソリッド インフィルの造形速度です。" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"スパイラルモードでは、輪郭面を一筆書きで造形します。Z方向の移動に段差がないの" +"で、シームはありません。" + +msgid "Smooth Spiral" +msgstr "Smooth Spiral" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" + +msgid "Max XY Smoothing" +msgstr "Max XY Smoothing" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Maximum distance to move points in XY to try to achieve a smooth spiral. If " +"expressed as a %, it will be computed over nozzle diameter" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"有効にした場合、タイムラプスビデオを録画します。「スムーズ」では1層を造形した" +"らノズルが廃料排出口に移動して、スナップショットを撮ります。これでより綺麗な" +"ビデオを録画できますが、造型時間が伸びます。また、フィラメント垂れを防止の" +"為、プライムタワーを有効にされます。" + +msgid "Traditional" +msgstr "通常" + +msgid "Temperature variation" +msgstr "軟化温度" + +msgid "Start G-code" +msgstr "スタートG-code" + +msgid "Start G-code when start the whole printing" +msgstr "造形開始時のG-code" + +msgid "Start G-code when start the printing of this filament" +msgstr "このフィラメントを使用開始時のG-code" + +msgid "Single Extruder Multi Material" +msgstr "シングルエクストルーダー・マルチマテリアル" + +msgid "Use single nozzle to print multi filament" +msgstr "" + +msgid "Manual Filament Change" +msgstr "" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" + +msgid "Purge in prime tower" +msgstr "" + +msgid "Purge remaining filament into prime tower" +msgstr "" + +msgid "Enable filament ramming" +msgstr "" + +msgid "No sparse layers (beta)" +msgstr "" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"有効にすると、ツール変更がない場合にワイプタワーをプリントしなくなります。 ワ" +"イプタワーの高さが同期しなくなりますので、ツールチェンジのあるレイヤーでは、" +"エクストルーダーがプリント面より下方に移動してワイプタワーをプリントするケー" +"スもあります。 この場合、プリントした部分との衝突がないことをご自身で確認して" +"おく必要があります。" + +msgid "Prime all printing extruders" +msgstr "全てのエクストルーダーでプライムを実施" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"有効にすると、すべてのプリントエクストルーダーは、プリント開始時にプリント" +"ベッドの前端で準備されます。" + +msgid "Slice gap closing radius" +msgstr "隙間充填半径" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." + +msgid "Slicing Mode" +msgstr "スライシングモード" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." + +msgid "Regular" +msgstr "レギュラー" + +msgid "Even-odd" +msgstr "Even-odd" + +msgid "Close holes" +msgstr "穴を閉じる" + +msgid "Z offset" +msgstr "Zオフセット" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"この値は、出力Gコードの全てのZ座標に対して加算/減算されます。これによって Zエ" +"ンドストップの位置を補正できます。例えば、エンドストップで0のとき、実際にはノ" +"ズルがベッド面から0.3mm離れる場合、これを-0.3に設定します(もしくはエンドス" +"トップ位置を修正します)。" + +msgid "Enable support" +msgstr "有効化" + +msgid "Enable support generation." +msgstr "この設定によりサポート生成を有効になります。" + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "通常 (自動) と ツリー (自動) では自動でサポートを作成します。" + +msgid "normal(auto)" +msgstr "通常 (自動)" + +msgid "tree(auto)" +msgstr "ツリー (自動)" + +msgid "normal(manual)" +msgstr "通常 (手動)" + +msgid "tree(manual)" +msgstr "ツリー (手動)" + +msgid "Support/object xy distance" +msgstr "水平間隔" + +msgid "XY separation between an object and its support" +msgstr "オブジェクトとサポートのXY距離です。" + +msgid "Pattern angle" +msgstr "パターン角度" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "この設定でサポートのパターンを回転させます。" + +msgid "On build plate only" +msgstr "ビルドプレートのみ" + +msgid "Don't create support on model surface, only on build plate" +msgstr "この設定により、プレートから生成するサポートのみを造形します。" + +msgid "Support critical regions only" +msgstr "必須領域のみ" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "造形しにくい部分だけサポートを生成します、例えば細長いしっぽ、ハリなど" + +msgid "Remove small overhangs" +msgstr "Remove small overhangs" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "This removes small overhangs that may need no support." + +msgid "Top Z distance" +msgstr "トップ面とのZ間隔" + +msgid "The z gap between the top support interface and object" +msgstr "サポート接触面とオブジェクトのZ方向の間隔" + +msgid "Bottom Z distance" +msgstr "底面とのZ間隔" + +msgid "The z gap between the bottom support interface and object" +msgstr "サポート底面とオブジェクトのZ方向間隔" + +msgid "Support/raft base" +msgstr "Support/raft base" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"サポートとラフトを造形用のフィラメント。「デフォルト」では当時のフィラメント" +"を使用する意味です。" + +msgid "Avoid interface filament for base" +msgstr "Avoid interface filament for base" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Avoid using support interface filament to print support base if possible." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Interface use loop pattern" +msgstr "接触面は同心パターンにする" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"これにより、サポートの上部接触層がループで覆われます。デフォルトでは無効に" +"なっています。" + +msgid "Support/raft interface" +msgstr "Support/raft interface" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"サポートの接触面用のフィラメントです。「デフォルト」では指定しなく、当時の" +"フィラメントを使用する意味です。" + +msgid "Top interface layers" +msgstr "トップ接触面の層数" + +msgid "Number of top interface layers" +msgstr "トップ接触面の層数" + +msgid "Bottom interface layers" +msgstr "底部接触面層数" + +msgid "Number of bottom interface layers" +msgstr "Number of bottom interface layers" + +msgid "Same as top" +msgstr "Same as top" + +msgid "Top interface spacing" +msgstr "トップ接触面間隔" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "接触面を造形時に線の距離です。0はソリッド接触面です。" + +msgid "Bottom interface spacing" +msgstr "底部接触面間隔" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "底部接触面を造形時に線の距離です。0はソリッド接触面です。" + +msgid "Speed of support interface" +msgstr "サポート接触面の造形速度です。" + +msgid "Base pattern" +msgstr "基本パターン" + +msgid "Line pattern of support" +msgstr "サポートのサターンです。" + +msgid "Rectilinear grid" +msgstr "直線グリッド" + +msgid "Hollow" +msgstr "中空" + +msgid "Interface pattern" +msgstr "接触面パターン" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"サポート接触面のパターンです。非可溶性材を使用する場合はRectilinear、可溶性材" +"を使用する場合同心です。" + +msgid "Rectilinear Interlaced" +msgstr "Rectilinear Interlaced" + +msgid "Base pattern spacing" +msgstr "基本パターン間隔" + +msgid "Spacing between support lines" +msgstr "サポートの線の間隔です" + +msgid "Normal Support expansion" +msgstr "通常サポート拡大" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "+/-でサポートの水平サイズを調整します" + +msgid "Speed of support" +msgstr "サポートの造形速度です。" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" + +msgid "Snug" +msgstr "Snug" + +msgid "Tree Slim" +msgstr "ツリースリム" + +msgid "Tree Strong" +msgstr "ツリーストロング" + +msgid "Tree Hybrid" +msgstr "ツリーハイブリッド" + +msgid "Organic" +msgstr "オーガニック" + +msgid "Independent support layer height" +msgstr "独立サポート層ピッチ" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." + +msgid "Threshold angle" +msgstr "閾値角度" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "オーバーハングの角度がこの閾値以下になる場合、サポートを生成します" + +msgid "Tree support branch angle" +msgstr "ツリーサポート枝アングル" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"ツリータイプのサポートを造形する時の最大オーバーハング最大角度です。この値が" +"大きくなると、枝部分が繋がりやすくなります。" + +msgid "Preferred Branch Angle" +msgstr "優先の枝アングル" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"枝の好ましい角度、モデルを避ける必要がない場合。低い角度を使用すると、より垂" +"直になり、より安定します。枝が早く合流するようにするには、角度を高くします。" + +msgid "Tree support branch distance" +msgstr "ツリーサポート枝間隔" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "サポートタイプがツリーの時、隣接するノードの距離です。" + +msgid "Branch Density" +msgstr "枝の密度" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"枝の先端を生成するために使用されるサポート構造の密度を調整します。高い値を設" +"定するとオーバーハングが良くなりますが、サポートの除去が困難になるため、密度" +"の高いインターフェースが必要な場合は、枝密度を高めるのではなく、トップサポー" +"トのインターフェースを有効にすることをお勧めします。" + +msgid "Adaptive layer height" +msgstr "アダプティブ積層ピッチ" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" + +msgid "Auto brim width" +msgstr "" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" + +msgid "Tree support brim width" +msgstr "Tree support brim width" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "" + +msgid "Tip Diameter" +msgstr "先端径" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "オーガニックサポート時の枝先径。" + +msgid "Tree support branch diameter" +msgstr "ツリーサポート枝直径" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "サポートノードの初期直径です。" + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "枝径アングル" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"枝の直径が、下に向かって徐々に太くなっていくときの角度です。角度が0だと、枝の" +"太さが一定になります。少し角度をつけると、オーガニックサポートの安定性が増し" +"ます。" + +msgid "Branch Diameter with double walls" +msgstr "二重ウォール枝径" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"この直径の円の面積よりも大きな面積を持つ枝は、安定性向上のためために二重" +"ウォールでプリントされます。 二重ウォールにしないときは、この値をゼロに設定し" +"ます。" + +msgid "Support wall loops" +msgstr "Support wall loops" + +msgid "This setting specify the count of walls around support" +msgstr "This setting specify the count of walls around support" + +msgid "Tree support with infill" +msgstr "ツリーサポートインフィル使用" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"この設定により、大きいツリーサポートを造形する時に、インフィルを追加します。" + +msgid "Activate temperature control" +msgstr "" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" + +msgid "Chamber temperature" +msgstr "Chamber temperature" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on. At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials, the actual chamber temperature should not " +"be high to avoid clogs, so 0 (turned off) is highly recommended." + +msgid "Nozzle temperature for layers after the initial one" +msgstr "1層目後のノズル温度" + +msgid "Detect thin wall" +msgstr "薄い壁を検出" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"2ラインの入らない薄い壁面を検出し、1ラインで造形します。仕上がりが悪くなり可" +"能性があります。" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "フィラメントを切り替える直後に実行するG-codeです。" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Speed of top surface infill which is solid" +msgstr "トップ面のインフィルの造形速度です。" + +msgid "Top shell layers" +msgstr "トップ面層数" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"トップ面に使用するソリッド層数です。この値がトップ面の厚みより小さい場合、層" +"数を増やして厚みに合わせます。" + +msgid "Top solid layers" +msgstr "トップソリッド層" + +msgid "Top shell thickness" +msgstr "トップ面厚さ" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"トップ面の厚さです、トップ面層数で決まった厚みがこの値より小さい場合、層数を" +"増やします。この値が0にする場合、この設定が無効となり、設定した層数で造形しま" +"す。" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "移動完了時の速度です。" + +msgid "Wipe while retracting" +msgstr "リトラクション時に拭き上げ" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"リトラクション時に、ノズルを最後のパスに沿って移動します。この設定によって、" +"たるみにより壁面のブロブを抑えることができます。" + +msgid "Wipe Distance" +msgstr "拭き上げ距離" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"The wiping tower can be used to clean up residue on the nozzle and stabilize " +"the chamber pressure inside the nozzle in order to avoid appearance defects " +"when printing objects." + +msgid "Purging volumes" +msgstr "フラッシュ体積" + +msgid "Flush multiplier" +msgstr "フラッシュ倍率" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "実フラッシュ量 = マルチプライヤー × フラッシュ量" + +msgid "Prime volume" +msgstr "プライム量" + +msgid "The volume of material to prime extruder on tower." +msgstr "フィラメントのフラッシュ量です。" + +msgid "Width of prime tower" +msgstr "プライムタワーの幅です。" + +msgid "Wipe tower rotation angle" +msgstr "ワイプタワーの回転角" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "x軸に対するワイプタワーの回転角度。" + +msgid "Stabilization cone apex angle" +msgstr "スタビライザーコーンの頂角" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"ワイプタワーを安定させるために使用される円錐の頂点の角度。角度が大きいと底面" +"が広くなります。" + +msgid "Wipe tower purge lines spacing" +msgstr "ワイプタワーのパージラインの間隔" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "ワイプタワーのパージラインの間隔。" + +msgid "Maximum wipe tower print speed" +msgstr "" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" + +msgid "Wipe tower extruder" +msgstr "ワイプタワーエクストルーダー" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"ワイプタワーの外周を印刷する際に使用するエクストルーダーです。0に設定すると、" +"使用可能なものを使用します(非水溶性であることが望ましい)。" + +msgid "Purging volumes - load/unload volumes" +msgstr "パージ量-ロード/アンロード時" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"このベクトル列には、ワイプタワーで使用される各フィラメント間で変更するために" +"必要なボリュームが保存されます。 これらの値は、以下の完全なパージボリュームの" +"作成を簡素化するために使用されます。" + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"廃料をオブジェクトのインフィルに使用されます。フィラメントの廃料が減り、造形" +"時間も短縮できます。ただ、壁面の色が透明又は薄い場合は中の色が見えてしまう可" +"能性があります。" + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"廃料をオブジェクトのインフィルに使用されます。フィラメントの廃料が減り、造形" +"時間も短縮できます。" + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"このオブジェクトは廃料で造形されます。時間とフィラメントの節約として有効的で" +"すが、色の指定ができなくなります。プライムタワーが有効になる場合、この設定が" +"無効になります。" + +msgid "Maximal bridging distance" +msgstr "ブリッジ最大距離" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "中抜きインフィルレイヤーの間隔の最大値。" + +msgid "X-Y hole compensation" +msgstr "ホール補正 X-Y" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"オブジェクトの穴の大きさの調整値。正数は穴を大きくし、負数は穴を小さくしま" +"す。この機能はパーツを組立てる為に、はめあいの微調査です。" + +msgid "X-Y contour compensation" +msgstr "輪郭補正 X-Y" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"オブジェクトの輪郭の大きさの調整値です。正数は大きくし、負数は小さくします。" +"これがパーツを組み立てる為にはめあいの微調整です。" + +msgid "Convert holes to polyholes" +msgstr "" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" + +msgid "Polyhole detection margin" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" + +msgid "Polyhole twist" +msgstr "" + +msgid "Rotate the polyhole every layer." +msgstr "" + +msgid "G-code thumbnails" +msgstr "Gコードのサムネイル" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" + +msgid "Format of G-code thumbnails" +msgstr "Gコードサムネイルのフォーマット" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Gコードサムネイルのフォーマット。PNGは最高の品質、JPGは最小のサイズ、QOIは低" +"メモリのファームウェアのため" + +msgid "Use relative E distances" +msgstr "Use relative E distances" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"クラシックでは従来通りの壁面を生成しますが、Arachneでは押出線幅が可変になりま" +"す。" + +msgid "Classic" +msgstr "クラシック" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "壁面遷移長さ" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" + +msgid "Wall transitioning filter margin" +msgstr "フィルタマージン" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" + +msgid "Wall transitioning threshold angle" +msgstr "角度閾値" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" + +msgid "Wall distribution count" +msgstr "壁面分布カウント" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "壁の層数" + +msgid "Minimum feature size" +msgstr "最小サイズ" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "小部分の厚さ下限。モデルに厚さがこの値以下になる部分を造形しません。" + +msgid "Minimum wall length" +msgstr "" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" + +msgid "First layer minimum wall width" +msgstr "" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" + +msgid "Minimum wall width" +msgstr "最小壁幅" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" + +msgid "Detect narrow internal solid infill" +msgstr "薄いソリッド インフィル検出" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"ソリッド インフィル領域に狭い部分があるか検出します。その設定を有効にする場" +"合、狭い領域は同心パターンを使用し、それ以外の領域は、直線パターンを使用しま" +"す。" + +msgid "invalid value " +msgstr "invalid value " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Invalid value when spiral vase mode is enabled: " + +msgid "too large line width " +msgstr "too large line width " + +msgid " not in range " +msgstr " not in range " + +msgid "Minimum save" +msgstr "" + +msgid "export 3mf with minimum size." +msgstr "" + +msgid "No check" +msgstr "No check" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "Do not run any validity checks, such as G-code path conflicts check." + +msgid "Ensure on bed" +msgstr "ベッド上で確認" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" + +msgid "Orient Options" +msgstr "" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Z軸周りの回転角度(度)。" + +msgid "Rotate around Y" +msgstr "Y軸周りの回転" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Y軸を中心とした回転角(度単位)。" + +msgid "Data directory" +msgstr "データディレクトリー" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"指定されたディレクトリで設定を読込み/保存します。 これは、異なるプロファイル" +"を維持したり、ネットワークストレージからの構成を含めたりするのに役立ちます。" + +msgid "Load custom gcode" +msgstr "" + +msgid "Load custom gcode from json" +msgstr "" + +msgid "Current z-hop" +msgstr "現在のz-hop" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "カスタムGコードブロックの先頭に存在するz-hopを含む。" + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"カスタム G コード ブロックの先頭のエクストルーダーのモーターの位置。 カスタ" +"ム G コードで動かしたとき、PrusaSlicer が制御を取り戻したときにどこから移動し" +"たかを認識できるように、この変数に書き込む必要があります。" + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"カスタム G コード ブロックの先頭のリトラクション状態。 カスタム G コードがエ" +"クストルーダー軸を動かすとき、PrusaSlicer が制御を取り戻したときに正しく撤回" +"できるように、この変数に書き込む必要があります。" + +msgid "Extra deretraction" +msgstr "追加リトラクションからの復帰" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" +"現在、リトラクションからの復帰時のエクストルーダーの追加プライミングが計画さ" +"れています。" + +msgid "Current extruder" +msgstr "現在のエクストルーダー" + +msgid "Zero-based index of currently used extruder." +msgstr "現在使用されているエクストルーダーの 0 から始まるインデックス。" + +msgid "Current object index" +msgstr "現在のオブジェクトインデックス" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"順次プリントに特化したものです。 現在プリントされているオブジェクトの 0 から" +"始まるインデックス。" + +msgid "Has wipe tower" +msgstr "ワイプタワーあり" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "プリント時にワイプタワーが生成されているかどうか。" + +msgid "Initial extruder" +msgstr "イニシャルエクストルーダー" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"プリントで使用される最初のエクストルーダーの 0 から始まるインデックス。 " +"initial_toolと同じ。" + +msgid "Initial tool" +msgstr "イニシャルツール" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"プリントで使用される最初のエクストルーダーの 0 から始まるインデックス。 " +"Initial_extruder と同じです。" + +msgid "Is extruder used?" +msgstr "エクストルーダーは使用されましたか?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" + +msgid "Volume per extruder" +msgstr "エクストルーダーあたりの体積" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "プリント全体でエクストルーダーごとに押し出されたフィラメントの総量。" + +msgid "Total toolchanges" +msgstr "" + +msgid "Number of toolchanges during the print." +msgstr "プリント中のツール交換の数。" + +msgid "Total volume" +msgstr "トータル体積" + +msgid "Total volume of filament used during the entire print." +msgstr "プリント全体で使用されるフィラメントの総量。" + +msgid "Weight per extruder" +msgstr "エクストルーダーあたりの重量" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" + +msgid "Total weight" +msgstr "トータル重量" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" + +msgid "Total layer count" +msgstr "トータルレイヤー数" + +msgid "Number of layers in the entire print." +msgstr "全てのプリントのレイヤー数" + +msgid "Number of objects" +msgstr "オブジェクト数" + +msgid "Total number of objects in the print." +msgstr "プリント中のオブジェクトの総数" + +msgid "Number of instances" +msgstr "インスタンス数" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" +"すべてのオブジェクトを合計した、プリント内のオブジェクト インスタンスの総数。" + +msgid "Scale per object" +msgstr "オブジェクトごとのスケール" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" + +msgid "Input filename without extension" +msgstr "拡張子を除いたファイル名を入力。" + +msgid "Source filename of the first object, without extension." +msgstr "最初のオブジェクトのソース ファイル名(拡張子を除く)。" + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" +"ベクトルには、点の x 座標と y 座標という 2 つの要素があります。 値は mm 単位" +"です。" + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" +"ベクトルには、境界ボックスの x 次元と y 次元という 2 つの要素があります。 値" +"は mm 単位です。" + +msgid "First layer convex hull" +msgstr "第 1 層の凸包(convex hull)" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" + +msgid "Bottom-left corner of first layer bounding box" +msgstr "最初のレイヤーの境界ボックスの左下隅" + +msgid "Top-right corner of first layer bounding box" +msgstr "最初のレイヤーの境界ボックスの右上隅" + +msgid "Size of the first layer bounding box" +msgstr "最初のレイヤーの境界ボックスのサイズ" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "プリント ベッド境界ボックスの左下隅" + +msgid "Top-right corner of print bed bounding box" +msgstr "プリント ベッド境界ボックスの右上隅" + +msgid "Size of the print bed bounding box" +msgstr "プリントベッド境界ボックスのサイズ" + +msgid "Timestamp" +msgstr "タイムスタンプ" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "yyyyMMdd-hhmmss形式の現在時刻を表す文字列。" + +msgid "Day" +msgstr "日" + +msgid "Hour" +msgstr "時" + +msgid "Minute" +msgstr "分" + +msgid "Print preset name" +msgstr "プリセット名をプリント" + +msgid "Name of the print preset used for slicing." +msgstr "スライスに使用されるプリントプリセットの名前。" + +msgid "Filament preset name" +msgstr "フィラメントのプリセット名" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"スライスに使用されるフィラメント プリセットの名前。 変数は、各エクストルー" +"ダーの 1 つの名前を含むベクトルです。" + +msgid "Printer preset name" +msgstr "プリンタのプリセット名" + +msgid "Name of the printer preset used for slicing." +msgstr "スライスに使用されるプリンタ プリセットの名前。" + +msgid "Physical printer name" +msgstr "物理プリンター名" + +msgid "Name of the physical printer used for slicing." +msgstr "スライスに使用される物理プリンターの名前。" + +msgid "Layer number" +msgstr "レイヤーナンバー" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" + +msgid "Layer z" +msgstr "" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "プリント ベッド上の現在のレイヤーの高さ (レイヤーの最上部までの計測)。" + +msgid "Maximal layer z" +msgstr "" + +msgid "Height of the last layer above the print bed." +msgstr "プリントベッド上の最後のレイヤーの高さ。" + +msgid "Filament extruder ID" +msgstr "" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "" + +msgid "Error in zip archive" +msgstr "ファイル圧縮にエラー発生" + +msgid "Generating walls" +msgstr "壁面を生成" + +msgid "Generating infill regions" +msgstr "インフィル領域を生成" + +msgid "Generating infill toolpath" +msgstr "インフィルパスを生成" + +msgid "Detect overhangs for auto-lift" +msgstr "オーバーハング自動検出" + +msgid "Generating support" +msgstr "サポートを生成" + +msgid "Checking support necessity" +msgstr "サポートの必要性を確認" + +msgid "floating regions" +msgstr "floating regions" + +msgid "floating cantilever" +msgstr "floating cantilever" + +msgid "large overhangs" +msgstr "large overhangs" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." + +msgid "Optimizing toolpath" +msgstr "ツールパスを最適化" + +msgid "Slicing mesh" +msgstr "メッシュをスライス中" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "サポート: 積層%dのツールパスを生成" + +msgid "Support: detect overhangs" +msgstr "サポート: オーバーハングを検出" + +msgid "Support: generate contact points" +msgstr "サポート: 接触点を生成" + +msgid "Support: propagate branches" +msgstr "サポート: ブランチを生成" + +msgid "Support: draw polygons" +msgstr "サポート: ポリゴンを作成" + +msgid "Support: generate toolpath" +msgstr "サポート: ツールパスを生成" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "サポート: 積層%dのポリゴンを生成" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "サポート: 積層%dの穴を修正" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "サポート: 積層%dのブランチを生成" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Unknown file format: input file must have .stl, .obj, or .amf(.xml) " +"extension." + +msgid "Loading of a model file failed." +msgstr "Loading of model file failed." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "The supplied file couldn't be read because it's empty." + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "Unknown file format: input file must have .3mf or .zip.amf extension." + +msgid "Canceled" +msgstr "Canceled" + +msgid "load_obj: failed to parse" +msgstr "load_obj: failed to parse" + +msgid "load mtl in obj: failed to parse" +msgstr "load mtl in obj: failed to parse" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "The file contains polygons with more than 4 vertices." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "The file contains polygons with less than 2 vertices." + +msgid "The file contains invalid vertex index." +msgstr "The file contains invalid vertex index." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "This OBJ file couldn't be read because it's empty." + +msgid "Flow Rate Calibration" +msgstr "Flow Rate Calibration" + +msgid "Max Volumetric Speed Calibration" +msgstr "Max Volumetric Speed Calibration" + +msgid "Manage Result" +msgstr "Manage Results" + +msgid "Manual Calibration" +msgstr "Manual Calibration" + +msgid "Result can be read by human eyes." +msgstr "Results can be easily seen and understood." + +msgid "Auto-Calibration" +msgstr "Auto-Calibration" + +msgid "We would use Lidar to read the calibration result" +msgstr "We would use Lidar to read the calibration result." + +msgid "Prev" +msgstr "Prev" + +msgid "Recalibration" +msgstr "Recalibration" + +msgid "Calibrate" +msgstr "Calibrate" + +msgid "Finish" +msgstr "完了" + +msgid "How to use calibration result?" +msgstr "How can I use calibration results?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"You can change the Flow Dynamics Calibration Factor in material editing" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"The current firmware version of the printer does not support calibration.\n" +"Please update the printer firmware." + +msgid "Calibration not supported" +msgstr "Calibration not supported" + +msgid "Error desc" +msgstr "Error desc" + +msgid "Extra info" +msgstr "Extra info" + +msgid "Flow Dynamics" +msgstr "Flow Dynamics" + +msgid "Flow Rate" +msgstr "Flow Rate" + +msgid "Max Volumetric Speed" +msgstr "Max Volumetric Speed" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "The name cannot be empty." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "The selected preset: %s is not found." + +msgid "The name cannot be the same as the system preset name." +msgstr "The name cannot be the same as the system preset name." + +msgid "The name is the same as another existing preset name" +msgstr "The name is the same as another existing preset name." + +msgid "create new preset failed." +msgstr "Creating new preset failed." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Are you sure you want to cancel the current calibration and return to the " +"home page?" + +msgid "No Printer Connected!" +msgstr "No Printer Connected!" + +msgid "Printer is not connected yet." +msgstr "A printer is not connected yet." + +msgid "Please select filament to calibrate." +msgstr "Please select filament to calibrate." + +msgid "The input value size must be 3." +msgstr "The input value size must be 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"This machine type can only hold 16 historical results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" + +msgid "Connecting to printer..." +msgstr "Connecting to printer..." + +msgid "The failed test result has been dropped." +msgstr "The failed test result has been removed." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Flow Dynamics Calibration results have been saved to the printer." + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"There is already a previous calibration result with the same name: %s. Only " +"one result with a name is saved. Are you sure you want to overwrite the " +"previous result?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"This machine type can only hold %d historical results per nozzle. This " +"result will not be saved." + +msgid "Internal Error" +msgstr "Internal Error" + +msgid "Please select at least one filament for calibration" +msgstr "Please select at least one filament for calibration" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "Flow rate calibration results have been saved to preset." + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "Max volumetric speed calibration result has been saved to preset" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "When do you need Flow Dynamics Calibration?" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"We now have added auto-calibration for different filaments, which is fully " +"automated and the result will be saved to the printer for future use. You " +"only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp\n" +"2. If the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." + +msgid "About this calibration" +msgstr "About this calibration" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "When to use Flow Rate Calibration" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well with Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out our wiki article." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before performing it." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "When you need Max Volumetric Speed Calibration" + +msgid "Over-extrusion or under extrusion" +msgstr "Over-extrusion or under extrusion" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "Max Volumetric Speed Calibration is recommended when you print with:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "material with significant thermal shrinkage/expansion, such as..." + +msgid "materials with inaccurate filament diameter" +msgstr "materials with inaccurate filament diameter" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "We found the best Flow Dynamics Calibration Factor." + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Part of the calibration failed! It may help to clean the plate and retry. " +"The failed test result will be deleted." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*We recommend that you add brand, material, type, and even humidity level to " +"the name" + +msgid "Failed" +msgstr "失敗" + +msgid "Please enter the name you want to save to printer." +msgstr "Please enter the name you want to save to printer." + +msgid "The name cannot exceed 40 characters." +msgstr "The name cannot exceed 40 characters." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to replace the other results?" + +msgid "Please find the best line on your plate" +msgstr "Please find the best line on your plate." + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Please find the corner with the perfect degree of extrusion" + +msgid "Input Value" +msgstr "Input Value" + +msgid "Save to Filament Preset" +msgstr "Save to Filament Presets" + +msgid "Preset" +msgstr "Preset" + +msgid "Record Factor" +msgstr "Record Factor" + +msgid "We found the best flow ratio for you" +msgstr "We found the best flow ratio for you." + +msgid "Flow Ratio" +msgstr "Flow Ratio" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Please input a valid value (0.0 < flow ratio < 2.0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Please enter the name of the preset you want to save." + +msgid "Calibration1" +msgstr "Calibration1" + +msgid "Calibration2" +msgstr "Calibration2" + +msgid "Please find the best object on your plate" +msgstr "Please find the best object on your plate." + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Fill in the value from the block with smoothest top surface" + +msgid "Skip Calibration2" +msgstr "Skip Calibration 2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "flow ratio: %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Please choose the block with the smoothest top surface." + +msgid "Please choose a block with smoothest top surface." +msgstr "Please choose the block with the smoothest top surface." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "Please input a valid value (0 <= Max Volumetric Speed <= 60)" + +msgid "Calibration Type" +msgstr "Calibration Type" + +msgid "Complete Calibration" +msgstr "Complete Calibration" + +msgid "Fine Calibration based on flow ratio" +msgstr "Fine Calibration based on flow ratio" + +msgid "Title" +msgstr "Title" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"A test model will be printed. Please clear the build plate and place it back " +"on the heatbed before calibration." + +msgid "Printing Parameters" +msgstr "Printing Parameters" + +msgid "Plate Type" +msgstr "Plate Type" + +msgid "filament position" +msgstr "filament position" + +msgid "External Spool" +msgstr "External Spool" + +msgid "Filament For Calibration" +msgstr "Filament For Calibration" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family (Brand = Bambu, Family = Basic, Matte, " +"etc.)" + +msgid "Pattern" +msgstr "Pattern" + +msgid "Method" +msgstr "Method" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s is not compatible with %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "TPU is not supported by Flow Dynamics Auto-Calibration." + +msgid "Connecting to printer" +msgstr "Connecting to printer" + +msgid "From k Value" +msgstr "From k Value" + +msgid "To k Value" +msgstr "To k Value" + +msgid "Step value" +msgstr "" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "The nozzle diameter has been synchronized from the printer settings." + +msgid "From Volumetric Speed" +msgstr "From Volumetric Speed" + +msgid "To Volumetric Speed" +msgstr "To Volumetric Speed" + +msgid "Flow Dynamics Calibration Result" +msgstr "Flow Dynamics Calibration Result" + +msgid "New" +msgstr "New" + +msgid "No History Result" +msgstr "No History Result" + +msgid "Success to get history result" +msgstr "Success to get history result" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Refreshing the previous Flow Dynamics Calibration records" + +msgid "Action" +msgstr "Action" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "This machine type can only hold %d historical results per nozzle." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Edit Flow Dynamics Calibration" + +msgid "New Flow Dynamic Calibration" +msgstr "New Flow Dynamic Calibration" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "The filament must be selected." + +msgid "Network lookup" +msgstr "Network lookup" + +msgid "Address" +msgstr "Address" + +msgid "Hostname" +msgstr "Hostname" + +msgid "Service name" +msgstr "Service name" + +msgid "OctoPrint version" +msgstr "OctoPrint version" + +msgid "Searching for devices" +msgstr "Searching for devices" + +msgid "Finished" +msgstr "完了" + +msgid "Multiple resolved IP addresses" +msgstr "IPアドレスの複数割当て" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"ホスト名%1%には、いくつかのIPアドレスがあります。\n" +"使用するIPアドレスを1つ選んでください。" + +msgid "PA Calibration" +msgstr "PA Calibration" + +msgid "DDE" +msgstr "" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "" + +msgid "PA Tower" +msgstr "PA Tower" + +msgid "PA Line" +msgstr "PA Line" + +msgid "PA Pattern" +msgstr "PA Pattern" + +msgid "Start PA: " +msgstr "Start PA:" + +msgid "End PA: " +msgstr "End PA: " + +msgid "PA step: " +msgstr "PA step:" + +msgid "Print numbers" +msgstr "Print numbers" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" + +msgid "Temperature calibration" +msgstr "Temperature calibration" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Filament type" + +msgid "Start temp: " +msgstr "Start temp:" + +msgid "End temp: " +msgstr "End temp:" + +msgid "Temp step: " +msgstr "Temp step:" + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" + +msgid "Max volumetric speed test" +msgstr "Max volumetric speed test" + +msgid "Start volumetric speed: " +msgstr "Start volumetric speed:" + +msgid "End volumetric speed: " +msgstr "End volumetric speed:" + +msgid "step: " +msgstr "step:" + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "VFA test" +msgstr "VFA test" + +msgid "Start speed: " +msgstr "Start speed:" + +msgid "End speed: " +msgstr "End speed:" + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "Start retraction length: " +msgstr "Start retraction length:" + +msgid "End retraction length: " +msgstr "End retraction length: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "プリンターサーバーにGコードを送信" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Upload to Printer Host with the following filename:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "Use forward slashes ( / ) as a directory separator if needed." + +msgid "Upload to storage" +msgstr "ストレージへのアップロード" + +msgid "Switch to Device tab after upload." +msgstr "" + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "Filename to upload doesn't end with \"%s\". Do you want to continue?" + +msgid "Upload" +msgstr "Upload" + +msgid "Print host upload queue" +msgstr "Print host upload queue" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Progress" + +msgid "Host" +msgstr "Host" + +msgctxt "OfFile" +msgid "Size" +msgstr "Size of file" + +msgid "Filename" +msgstr "Filename" + +msgid "Cancel selected" +msgstr "Cancel selected" + +msgid "Show error message" +msgstr "Show error message" + +msgid "Enqueued" +msgstr "Queued" + +msgid "Uploading" +msgstr "アップロード中" + +msgid "Cancelling" +msgstr "Canceling" + +msgid "Error uploading to print host" +msgstr "プリントホストへのアップロードに失敗" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Unable to perform boolean operation on selected parts" + +msgid "Mesh Boolean" +msgstr "Mesh Boolean" + +msgid "Union" +msgstr "Union" + +msgid "Difference" +msgstr "Difference" + +msgid "Intersection" +msgstr "Intersection" + +msgid "Source Volume" +msgstr "Source Volume" + +msgid "Tool Volume" +msgstr "Tool Volume" + +msgid "Subtract from" +msgstr "Subtract from" + +msgid "Subtract with" +msgstr "Subtract with" + +msgid "selected" +msgstr "selected" + +msgid "Part 1" +msgstr "Part 1" + +msgid "Part 2" +msgstr "Part 2" + +msgid "Delete input" +msgstr "Delete input" + +msgid "Network Test" +msgstr "Network Test" + +msgid "Start Test Multi-Thread" +msgstr "Start Test Multi-Thread" + +msgid "Start Test Single-Thread" +msgstr "Start Test Single-Thread" + +msgid "Export Log" +msgstr "Export Log" + +msgid "Snapmaker Orca Version:" +msgstr "" + +msgid "System Version:" +msgstr "System Version:" + +msgid "DNS Server:" +msgstr "DNS Server:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "" + +msgid "Test Bing.com" +msgstr "Test Bing.com" + +msgid "Test bing.com:" +msgstr "Test bing.com:" + +msgid "Log Info" +msgstr "Log Info" + +msgid "Select filament preset" +msgstr "Select filament preset" + +msgid "Create Filament" +msgstr "Create Filament" + +msgid "Create Based on Current Filament" +msgstr "Create Based on Current Filament" + +msgid "Copy Current Filament Preset " +msgstr "Copy Current Filament Preset " + +msgid "Basic Information" +msgstr "Basic Information" + +msgid "Add Filament Preset under this filament" +msgstr "Add Filament Preset under this filament" + +msgid "We could create the filament presets for your following printer:" +msgstr "We could create the filament presets for your following printer:" + +msgid "Select Vendor" +msgstr "Select Vendor" + +msgid "Input Custom Vendor" +msgstr "Input Custom Vendor" + +msgid "Can't find vendor I want" +msgstr "Can't find vendor I want" + +msgid "Select Type" +msgstr "Select Type" + +msgid "Select Filament Preset" +msgstr "Select Filament Preset" + +msgid "Serial" +msgstr "Serial" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "e.g. Basic, Matte, Silk, Marble" + +msgid "Filament Preset" +msgstr "Filament Preset" + +msgid "Create" +msgstr "Create" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Vendor is not selected; please reselect vendor." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "Custom vendor missing; please input custom vendor." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." + +msgid "Filament type is not selected, please reselect type." +msgstr "Filament type is not selected, please reselect type." + +msgid "Filament serial is not inputed, please input serial." +msgstr "Filament serial missing; please input serial." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"There may be disallowed characters in the vendor or serial input of the " +"filament. Please delete and re-enter." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "All inputs in the custom vendor or serial are spaces. Please re-enter." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "The vendor can not be a number; please re-enter." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"You have not selected a printer or preset yet. Please select at least one." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"The Filament name %s you created already exists. \n" +"If you continue, the preset created will be displayed with its full name. Do " +"you want to continue?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Some existing presets have failed to be created, as follows:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Do you want to rewrite it?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" + +msgid "Create Printer/Nozzle" +msgstr "Create Printer/Nozzle" + +msgid "Create Printer" +msgstr "Create Printer" + +msgid "Create Nozzle for Existing Printer" +msgstr "Create Nozzle for Existing Printer" + +msgid "Create from Template" +msgstr "Create from Template" + +msgid "Create Based on Current Printer" +msgstr "Create Based on Current Printer" + +msgid "Import Preset" +msgstr "Import Preset" + +msgid "Create Type" +msgstr "Create Type" + +msgid "The model is not found, place reselect vendor." +msgstr "The model was not found; please reselect vendor." + +msgid "Select Model" +msgstr "Select Model" + +msgid "Select Printer" +msgstr "Select Printer" + +msgid "Input Custom Model" +msgstr "Input Custom Model" + +msgid "Can't find my printer model" +msgstr "Can't find my printer model" + +msgid "Rectangle" +msgstr "Rectangle" + +msgid "Printable Space" +msgstr "Printable Space" + +msgid "Hot Bed STL" +msgstr "Hot Bed STL" + +msgid "Load stl" +msgstr "Load stl" + +msgid "Hot Bed SVG" +msgstr "Hot Bed SVG" + +msgid "Load svg" +msgstr "Load svg" + +msgid "Max Print Height" +msgstr "Max Print Height" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "The file exceeds %d MB, please import again." + +msgid "Exception in obtaining file size, please import again." +msgstr "Exception in obtaining file size, please import again." + +msgid "Preset path is not find, please reselect vendor." +msgstr "Preset path was not found; please reselect vendor." + +msgid "The printer model was not found, please reselect." +msgstr "The printer model was not found, please reselect." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "The nozzle diameter was not found; please reselect." + +msgid "The printer preset is not found, place reselect." +msgstr "The printer preset was not found; please reselect." + +msgid "Printer Preset" +msgstr "Printer Preset" + +msgid "Filament Preset Template" +msgstr "Filament Preset Template" + +msgid "Deselect All" +msgstr "Deselect All" + +msgid "Process Preset Template" +msgstr "Process Preset Template" + +msgid "Back Page 1" +msgstr "Back Page 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"You have entered a disallowed character in the printable area section on the " +"first page. Please use only numbers." + +msgid "The custom printer or model is not inputed, place input." +msgstr "The custom printer or model missing; please input." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserved.\n" +"\tCancel: Do not create a preset; return to the creation interface." + +msgid "You need to select at least one filament preset." +msgstr "You need to select at least one filament preset." + +msgid "You need to select at least one process preset." +msgstr "You need to select at least one process preset." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Create filament presets failed. As follows:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "Create process presets failed. As follows:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Vendor was not found; please reselect." + +msgid "Current vendor has no models, please reselect." +msgstr "Current vendor has no models, please reselect." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"You have not selected the vendor and model or input the custom vendor and " +"model." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." + +msgid "Please check bed printable shape and origin input." +msgstr "Please check bed printable shape and origin input." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"You have not yet selected the printer to replace the nozzle for; please " +"choose a printer." + +msgid "Create Printer Successful" +msgstr "Create Printer Successful" + +msgid "Create Filament Successful" +msgstr "Filament Created Successfully" + +msgid "Printer Created" +msgstr "Printer Created" + +msgid "Please go to printer settings to edit your presets" +msgstr "Please go to printer settings to edit your presets" + +msgid "Filament Created" +msgstr "Filament Created" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Please go to filament settings to edit your presets if you need to.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed each have a significant impact on printing quality. Please " +"set them carefully." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" + +msgid "Printer Setting" +msgstr "Printer Setting" + +msgid "Printer config bundle(.orca_printer)" +msgstr "" + +msgid "Filament bundle(.orca_filament)" +msgstr "" + +msgid "Printer presets(.zip)" +msgstr "Printer presets(.zip)" + +msgid "Filament presets(.zip)" +msgstr "Filament presets(.zip)" + +msgid "Process presets(.zip)" +msgstr "Process presets(.zip)" + +msgid "initialize fail" +msgstr "initialize fail" + +msgid "add file fail" +msgstr "add file fail" + +msgid "add bundle structure file fail" +msgstr "add bundle structure file fail" + +msgid "finalize fail" +msgstr "finalize fail" + +msgid "open zip written fail" +msgstr "open zip written fail" + +msgid "Export successful" +msgstr "Export successful" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it?\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"User's fillment preset set. \n" +"Can be shared with others." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Only display printers with changes to printer, filament, and process presets " +"are displayed." + +msgid "Only display the filament names with changes to filament presets." +msgstr "Only display the filament names with changes to filament presets." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." + +msgid "Please select at least one printer or filament." +msgstr "Please select at least one printer or filament." + +msgid "Please select a type you want to export" +msgstr "Please select a preset type you want to export" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "Failed to create temporary folder, please try Export Configs again." + +msgid "Edit Filament" +msgstr "Edit Filament" + +msgid "Filament presets under this filament" +msgstr "Filament presets under this filament" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "Presets inherited by other presets can not be deleted" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" + +msgid "Delete Preset" +msgstr "Delete Preset" + +msgid "Are you sure to delete the selected preset?" +msgstr "Are you sure to delete the selected preset?" + +msgid "Delete preset" +msgstr "Delete preset" + +msgid "+ Add Preset" +msgstr "+ Add Preset" + +msgid "Delete Filament" +msgstr "Delete Filament" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." + +msgid "Delete filament" +msgstr "Delete filament" + +msgid "Add Preset" +msgstr "Add Preset" + +msgid "Add preset for new printer" +msgstr "Add preset for new printer" + +msgid "Copy preset from filament" +msgstr "Copy preset from filament" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "The filament choice not find filament preset, please reselect it" + +msgid "[Delete Required]" +msgstr "[Delete Required]" + +msgid "Edit Preset" +msgstr "Edit Preset" + +msgid "For more information, please check out Wiki" +msgstr "For more information, please check out our Wiki" + +msgid "Collapse" +msgstr "Collapse" + +msgid "Daily Tips" +msgstr "Daily Tips" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "nozzle memorized: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Your nozzle diameter in preset is not consistent with the saved nozzle " +"diameter. Have you changed your nozzle?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*Printing %s material with %s may cause nozzle damage" + +msgid "Need select printer" +msgstr "Need select printer" + +msgid "The start, end or step is not valid value." +msgstr "The start, end or step is not valid value." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" + +msgid "Physical Printer" +msgstr "Physical Printer" + +msgid "Print Host upload" +msgstr "Print Host upload" + +msgid "Could not get a valid Printer Host reference" +msgstr "Could not get a valid Printer Host reference" + +msgid "Success!" +msgstr "Success!" + +msgid "Are you sure to log out?" +msgstr "" + +msgid "Refresh Printers" +msgstr "Refresh Printers" + +msgid "View print host webui in Device tab" +msgstr "" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" + +msgid "Open CA certificate file" +msgstr "Open CA certificate file" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." + +msgid "Login/Test" +msgstr "" + +msgid "Connection to printers connected via the print host failed." +msgstr "Connection to printers connected via the print host failed." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Mismatched type of print host: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "Connection to AstroBox is working correctly." + +msgid "Could not connect to AstroBox" +msgstr "Could not connect to AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Note: AstroBox version 1.1.0 or higher is required." + +msgid "Connection to Duet works correctly." +msgstr "Connection to Duet is working correctly." + +msgid "Could not connect to Duet" +msgstr "Could not connect to Duet" + +msgid "Unknown error occured" +msgstr "Unknown error occured" + +msgid "Wrong password" +msgstr "Wrong password" + +msgid "Could not get resources to create a new connection" +msgstr "Could not get resources to create a new connection" + +msgid "Upload not enabled on FlashAir card." +msgstr "Upload not enabled on FlashAir card." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "Connection to FlashAir is working correctly and upload is enabled." + +msgid "Could not connect to FlashAir" +msgstr "Could not connect to FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." + +msgid "Connection to MKS works correctly." +msgstr "Connection to MKS is working correctly." + +msgid "Could not connect to MKS" +msgstr "Could not connect to MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "Connection to OctoPrint is working correctly." + +msgid "Could not connect to OctoPrint" +msgstr "Could not connect to OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Note: OctoPrint version 1.1.0 or higher is required." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Connection to Prusa SL1 / SL1S is working correctly." + +msgid "Could not connect to Prusa SLA" +msgstr "Could not connect to Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "Connection to PrusaLink is working correctly." + +msgid "Could not connect to PrusaLink" +msgstr "Could not connect to PrusaLink" + +msgid "Storages found" +msgstr "ストレージが見つかりました" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : 読込のみ" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : 十分な空きがありません" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" +"アップロードに失敗しました。%1%に適切なストレージが見つかりませんでした。" + +msgid "Connection to Prusa Connect works correctly." +msgstr "Prusa コネクトに接続しました。" + +msgid "Could not connect to Prusa Connect" +msgstr "Prusaコネクトに接続できませんでした" + +msgid "Connection to Repetier works correctly." +msgstr "Connection to Repetier is working correctly." + +msgid "Could not connect to Repetier" +msgstr "Could not connect to Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Note: Repetier version 0.90.0 or higher is required." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a small layer height, and results in almost negligible layer lines " +"and high print quality. It is suitable for most general printing cases." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. This results in " +"much higher print quality but a much longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height. This results in almost negligible layer lines and " +"slightly longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height. This results in slightly visible layer lines but shorter print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height. This results in almost invisible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost invisible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height. This results in minimal layer lines and higher print quality but " +"longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in minimal layer lines and much higher print quality " +"but much longer print time." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a normal layer height, and results in average layer lines and print " +"quality. It is suitable for most printing cases." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but slightly shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in less apparent layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost negligible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and longer print time." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in much more apparent layer lines and much lower print " +"quality, but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and slightly higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"It has a very big layer height, and results in very apparent layer lines, " +"low print quality and shorter printing time." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height. This results in very apparent layer lines and much lower print " +"quality but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height. This results in extremely apparent layer lines and much lower " +"print quality but much shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height. This results in slightly less but still apparent layer " +"lines and slightly higher print quality, but longer print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height. This results in less but still apparent layer lines and slightly " +"higher print quality, but longer print time in some cases." + +msgid "Connected to Obico successfully!" +msgstr "" + +msgid "Could not connect to Obico" +msgstr "" + +msgid "Connected to SimplyPrint successfully!" +msgstr "" + +msgid "Could not connect to SimplyPrint" +msgstr "" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" + +msgid "Connection to Flashforge works correctly." +msgstr "" + +msgid "Could not connect to Flashforge" +msgstr "" + +msgid "The provided state is not correct." +msgstr "" + +msgid "Please give the required permissions when authorizing this application." +msgstr "" + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" + +msgid "User cancelled." +msgstr "" + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"カットツール\n" +"カットツールでモデルを自由な角度で修正することができます。" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"タイムラプス\n" +"カメラの活用は、モニタリングだけでなく、自慢のタイムラプスビデオも生成できま" +"す。" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"自動レイアウト\n" +"自動レイアウトでプレートを最大限利用できます。" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"自動向き調整\n" +"自動向き調整で最適な向きをワンクリックで実現できます。" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"底面を選択\n" +"プレートと接触する面を指定し、オブジェクトの向きを簡単に調整できます。" + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"オブジェクト一覧\n" +"全てのオブジェクトを確認でき、造形パラメータもオブジェクト別で設定できます" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"スライシングパラメータ\n" +"オブジェクト/パーツごとのパラメータを設定できます。" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"オブジェクト/パーツに分割\n" +"一つのオブジェクトを複数のオブジェクト/パーツに分割して色を簡単につけましょ" +"う。" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"継ぎ目位置\n" +"継ぎ目の位置を描き、見えにくい場所に指定して仕上がりを向上させます。" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"流量を微調整\n" +"流量を材料、温度により微調整し、更に良い仕上がりが得られます。" + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"複数のプレートに分割\n" +"一つのモデルを分割し、複数のプレートで造形することもできます。" + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "「アダプティブ積層ピッチ」で造形速度アップ!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"サポートペイント\n" +"サポートは塗り絵のように生成することができます。" + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"さまざまなサポートタイプ\n" +"いろんなサポートタイプをつかえます、ツリータイプではフィラメントも節約できる" +"し、造形時間も短縮できます。" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"シルク質感のフィラメント\n" +"光沢がある美しい造形物をできるフィラメントは、プロセスに特別なケアが必要で" +"す。" + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"接着力を高めるには?\n" +"ブリムを活用してください。" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"オブジェクトのパラメータを設定\n" +"複数のオブジェクトを一回で設定できます" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"オブジェクトを積み重ね\n" +"複数のオブジェクトを積み重ねて造形できます。" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"サポート/オブジェクト/インフィルにフラッシュ\n" +"サポート、オブジェクトやインフィルどちらにもフラッシュでき、廃料の節約や、造" +"形時間短縮も有効的です。" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"強度の向上\n" +"壁面層数やインフィルの充填密度を増やして造形強度を向上できます。" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"When do you need to print with the printer door opened?\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature? There is more info about this in the Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping?" + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Please input a valid value (K in 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "Printer local connection failed; please try again." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will calibrate the filament before the " +#~ "print; When you start a multi color/material print, the printer will use " +#~ "the default compensation parameter for the filament during every filament " +#~ "switch which will have a good result in most cases.\n" +#~ "\n" +#~ "Please note there are a few cases that may make the calibration result " +#~ "unreliable: using a texture plate to do the calibration; using a build " +#~ "plate with poor adhesion. (please wash the build plate or apply " +#~ "gluestick!) You can find more on our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent variation in our test, " +#~ "which may cause the results to not be identical for each calibration. We " +#~ "are still investigating the root cause to further improve this " +#~ "calibration in future updates." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to override the other results?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one set of results with the same name is saved. Are you sure you " +#~ "want to override the previous results?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Please find the corner with the perfect degree of extrusion" + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "Export &Configs" +#~ msgstr "構成データ" + +#~ msgid "Infill direction" +#~ msgstr "インフィル方向" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "この設定で出力のG-codeファイルにG2/G3コードを有効します。" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "インフィルの領域を少し壁面を重ねるために拡大します。これにより壁面との接着" +#~ "性が向上させます。値はスパース インフィルの線幅の割合です。" + +#~ msgid "Unload Filament" +#~ msgstr "アンロード" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "AMS スロットを選択し、[ロード] または [アンロード] をタップすると、フィラ" +#~ "メントが自動的にロードまたはアンロードされます。" + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "メインボード" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "active" +#~ msgstr "アクティブ" + +#~ msgid "Jump to layer" +#~ msgstr "積層に移動" + +#~ msgid "Cabin humidity" +#~ msgstr "湿度" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "湿度インジケータ (緑色: 正常 オレンジ\": やや高い 赤色: 高い)" + +#~ msgid "Desiccant status" +#~ msgstr "乾燥剤ステータス" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "乾燥剤のステータスがバー2本より低い場合は、乾燥効果が弱まっていることを示" +#~ "します。乾燥剤の交換をお勧めします。" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "注意:蓋を開けたり、乾燥剤を交換したりすると、湿気を完全に吸収するのに数時" +#~ "間かかるとこがあります。また、温度が低い時、更に時間が要する場合がありま" +#~ "す。この時に、インジケータが筐体内の湿度を精確に反映できない可能性がありま" +#~ "す。" + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "注意:造形時に入れる場合、造形が完成したから読込みます。" + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "G-codeは %1%にエクスポートしました" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "初期化失敗 (デバイス無し)" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "初期化失敗 (カメラ無し)" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "プリンターがダウンロード中、完了までお待ちください" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "初期化失敗 (ローカルモードではアクセスできません)" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "初期化失敗 (プリンターIP無効)" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "停止した [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "ロード失敗 [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "No files [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Load failed [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Failed to fetch model infomation from printer." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Failed to parse model infomation" + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "プリセット %1% に変更があります。\n" +#~ "それらの変更を選択したプリセットに引き継ぎますか?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "プリセットに変更がありあす。これらの変更を流用しますか?" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "傾斜面にソリッドインフィルを追加" + +#~ msgid "Configuration package updated to " +#~ msgstr "構成パッケージがアップデートされました" + +#~ msgid "The Config can not be loaded." +#~ msgstr "構成を読込めませんでした" + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "3mfは古いバージョンのSnapmaker Orcaで作成されています、ジオメトリーデータのみ" +#~ "読込みます。" + +#~ msgid "Movement:" +#~ msgstr "移動" + +#~ msgid "Movement" +#~ msgstr "移動" + +#~ msgid "Auto Segment" +#~ msgstr "自動分割" + +#~ msgid "Depth ratio" +#~ msgstr "Depth ratio" + +#~ msgid "Prizm" +#~ msgstr "Prizm" + +#~ msgid "connector is out of cut contour" +#~ msgstr "connector is out of cut contour" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "connectors are out of cut contour" + +#~ msgid "connector is out of object" +#~ msgstr "connector is out of object" + +#~ msgid "connectors is out of object" +#~ msgstr "Connectors must be on object surface." + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Invalid state. \n" +#~ "No one part is selected to keep after cut" + +#~ msgid "Edit Text" +#~ msgstr "Edit Text" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "エラー:スレッドを作成できません" + +#~ msgid "Exception" +#~ msgstr "異常" + +#~ msgid "Choose SLA archive:" +#~ msgstr "Choose SLA archive:" + +#~ msgid "Import file" +#~ msgstr "Import file" + +#~ msgid "Import model and profile" +#~ msgstr "Import model and profile" + +#~ msgid "Import profile only" +#~ msgstr "Import profile only" + +#~ msgid "Import model only" +#~ msgstr "Import model only" + +#~ msgid "Accurate" +#~ msgstr "Accurate" + +#~ msgid "Balanced" +#~ msgstr "Balanced" + +#~ msgid "Quick" +#~ msgstr "Quick" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "リトラクション時にノズルが最後のパスに沿って移動する距離です。" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "モデルを簡略化\n" +#~ "オブジェクトのメッシュを簡略化して、スライスの速度を上げられます。モデルを" +#~ "右クリックし、メニューで選択できます。" + +#~ msgid "Filling bed " +#~ msgstr "Filling bed" + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "%1% のインフィル パターンは 100%% の密度をサポートしません。" + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "直線パターンに切り替えますか?\n" +#~ "はい - 直線パターンに切り替えます\n" +#~ "いいえ - 充填密度をリセットします" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "" +#~ "フィラメントをロードする前に、ノズル温度を170℃以上に加熱してください" + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "" +#~ "スパース インフィルの密度です。100%%に設定する場合ソリッドになります。" + +#~ msgid "Tree support wall loops" +#~ msgstr "ツリーサポート壁層数" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "ツリーサポートの壁面層数です。" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " doesn't work at 100%% density " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "ツール 底面選択" + +#~ msgid "Export as STL" +#~ msgstr "STL形式でエクスポート" + +#~ msgid "Check cloud service status" +#~ msgstr "Check cloud service status" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "有効な値を入力してください (0 ~ 0.5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "有効な値を入力してください (K: 0 ~ 0.5, N: 0.6 ~ 2.0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "全てのオブジェクト (STL)" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "" +#~ "この3mfファイルと互換性がありません、ジオメトリーデータのみ読込みます。" + +#~ msgid "Incompatible 3mf" +#~ msgstr "互換性の無い 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "プリンターを追加/削除" + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s is not supported by the AMS." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "今後このバージョンの通知をしません" + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "エラー: IPアドレス或はアクセスコードが正しくありません" + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "造形順番" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "内壁、外壁とインフィルの造形順序を指定します。" + +#~ msgid "inner/outer/infill" +#~ msgstr "内壁/外壁/インフィル" + +#~ msgid "outer/inner/infill" +#~ msgstr "外壁/内壁/インフィル" + +#~ msgid "infill/inner/outer" +#~ msgstr "インフィル/内壁/外壁" + +#~ msgid "infill/outer/inner" +#~ msgstr "インフィル/外壁/内壁" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "内壁-外壁-内壁/インフィル" + +#~ msgid "Export 3MF" +#~ msgstr "3mf をエクスポート" + +#~ msgid "Export project as 3MF." +#~ msgstr "プロジェクトを3MF式で出力" + +#~ msgid "Export slicing data" +#~ msgstr "スライスデータをエクスポート" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "スライスデータをエクスポート" + +#~ msgid "Load slicing data" +#~ msgstr "スライスデータを読込み" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "スライスデータを読込み" + +#~ msgid "Slice" +#~ msgstr "スライス" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "プレートをスライス: 0: 全て, i:プレートi, その他: 無効" + +#~ msgid "Show command help." +#~ msgstr "ヘルプを表示します。" + +#~ msgid "UpToDate" +#~ msgstr "最新の状態です。" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "3mfの構成値を更新" + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "max triangle count per plate for slicing" + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "max slicing time per plate in seconds" + +#~ msgid "Normative check" +#~ msgstr "Normative check" + +#~ msgid "Check the normative items." +#~ msgstr "Check the normative items." + +#~ msgid "Output Model Info" +#~ msgstr "出力モデル情報" + +#~ msgid "Output the model's information." +#~ msgstr "出力するモデル情報です。" + +#~ msgid "Export Settings" +#~ msgstr "エクスポート設定" + +#~ msgid "Export settings to a file." +#~ msgstr "設定をファイルにエクスポートします。" + +#~ msgid "Send progress to pipe" +#~ msgstr "パイプに進捗を送信" + +#~ msgid "Send progress to pipe." +#~ msgstr "パイプに進捗を送信" + +#~ msgid "Arrange Options" +#~ msgstr "レイアウト設定" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "レイアウト設定: 0: 無効 1: 有効 その他: 自動" + +#~ msgid "Convert Unit" +#~ msgstr "単位変換" + +#~ msgid "Convert the units of model" +#~ msgstr "モデルの単位を変換" + +#~ msgid "Scale the model by a float factor" +#~ msgstr "指定した比率で伸縮する" + +#~ msgid "Load General Settings" +#~ msgstr "一般設定を読込む" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "指定ファイルから設定値を読込む" + +#~ msgid "Load Filament Settings" +#~ msgstr "フィラメント設定を読込む" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "指定したファイルリストからフィラメント設定を読込む" + +#~ msgid "Skip Objects" +#~ msgstr "Skip Objects" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Skip some objects in this print" + +#~ msgid "Output directory" +#~ msgstr "出力先フォルダ" + +#~ msgid "Output directory for the exported files." +#~ msgstr "エクスポートの出力先フォルダです。" + +#~ msgid "Debug level" +#~ msgstr "デバッグ レベル" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "デバッグロギングレベルを設定します。0:fatal、1:error、2:warning、3:info、" +#~ "4:debug、5:trace。\n" + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "3Dシーンの操作\n" +#~ "マウスとタッチパネルで、オブジェクト/パーツの操作方法を確認しましょう" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "モデル修復\n" +#~ "破損したモデルでも修復してスライスできます。" + +#~ msgid "Embeded" +#~ msgstr "Embedded" + +#~ msgid "Online Models" +#~ msgstr "Online Models" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "Show online staff-picked models on the home page" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "冷却のために速度を落とした時の最低造形速度。" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "ベッド温度がフィラメントの軟化温度より高いです、ノズル詰まりが発生する可能" +#~ "性があります。ベッド温度を下げるか、プリンタのドアを開けてください。" + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "軟化温度" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "この温度でフィラメントが柔らかくなります、ベッド温度をこれ以下に設定してく" +#~ "ださい" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "パーツ補助冷却ファンがある場合有効にしてください" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "補助パーツ冷却ファンの回転速度です。" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "底面との隙間があります、レイヤーを入れ替えました" + +#~ msgid "The model has too many empty layers." +#~ msgstr "このモデルには空層があります。" + +#~ msgid "Cali" +#~ msgstr "標定" + +#~ msgid "Calibration of extrusion" +#~ msgstr "押出のキャリブレーション" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Push new filament into the extruder" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "ベッド温度が1層目温度より %d ℃以上低いです。造形中プレートより離脱する可能" +#~ "性があります" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "ベッド温度がフィラメントの軟化温度より高いです。ノズル詰りや造形失敗する可" +#~ "能性があります。\n" +#~ "ドアを開いて換気を良くするか、ベッド温度を下げてください。" + +#~ msgid "Total Time Estimation" +#~ msgstr "Total Time Estimation" + +#~ msgid "Resonance frequency identification" +#~ msgstr "共振特性測定" + +#~ msgid "Immediately score" +#~ msgstr "Immediately score" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "Please give a score for your favorite Bambu Market model." + +#~ msgid "Score" +#~ msgstr "Score" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Bambu 高温プレート" + +#~ msgid "Can't connect to the printer" +#~ msgstr "プリンターに接続できない" + +#~ msgid "Recommended temperature range" +#~ msgstr "推奨温度範囲" + +#~ msgid "High Temp Plate" +#~ msgstr "高温プレート" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "高温プレートが装着時のベッド温度です。値が0の場合、フィラメントが高温プ" +#~ "レートに使用できない意味です。" + +#~ msgid "Internal bridge support thickness" +#~ msgstr "内部ブリッジサポート厚さ" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "サポートのスタイルと形状。通常サポートでは、グリッドでサポートを生成しま" +#~ "す。ツリーサポートでは、サポート材を節約できます。ハイブリッドでは、ツリー" +#~ "より大きなサポート面を生成できます。" + +#~ msgid "Bed temperature difference" +#~ msgstr "ベッド温度差" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "他の層のベッド温度を1層目よりこの値以上高く設定してください。温度が低くな" +#~ "ると、造形失敗する可能性があります。" + +#~ msgid "Orient the model" +#~ msgstr "モデルの向きを調整" diff --git a/localization/i18n/ko/Snapmaker_Orca_ko.po b/localization/i18n/ko/Snapmaker_Orca_ko.po new file mode 100644 index 0000000000..b972afc6d4 --- /dev/null +++ b/localization/i18n/ko/Snapmaker_Orca_ko.po @@ -0,0 +1,17675 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-07-30 10:20+0900\n" +"PO-Revision-Date: 2024-05-31 23:33+0900\n" +"Last-Translator: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github." +"com>\n" +"Language-Team: crwusiz@gmail.com\n" +"Language: ko_KR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 3.5\n" + +msgid "Supports Painting" +msgstr "지지대 칠하기" + +msgid "Alt + Mouse wheel" +msgstr "Alt + 마우스 휠" + +msgid "Section view" +msgstr "단면도" + +msgid "Reset direction" +msgstr "방향 초기화" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + 마우스 휠" + +msgid "Pen size" +msgstr "펜 크기" + +msgid "Left mouse button" +msgstr "마우스 왼쪽 버튼" + +msgid "Enforce supports" +msgstr "지지대 강제" + +msgid "Right mouse button" +msgstr "마우스 오른쪽 버튼" + +msgid "Block supports" +msgstr "지지대 차단" + +msgid "Shift + Left mouse button" +msgstr "Shift + 마우스 왼쪽 버튼" + +msgid "Erase" +msgstr "지우기" + +msgid "Erase all painting" +msgstr "모든 페인팅 삭제" + +msgid "Highlight overhang areas" +msgstr "돌출부 영역 강조" + +msgid "Gap fill" +msgstr "간격 채우기" + +msgid "Perform" +msgstr "수행" + +msgid "Gap area" +msgstr "간격 영역" + +msgid "Tool type" +msgstr "도구 유형" + +msgid "Smart fill angle" +msgstr "스마트 채우기 각도" + +msgid "On overhangs only" +msgstr "돌출부에만 칠하기" + +msgid "Circle" +msgstr "원" + +msgid "Sphere" +msgstr "구체" + +msgid "Fill" +msgstr "채우기" + +msgid "Gap Fill" +msgstr "간격 채우기" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "\"%1%\"에서 선택한 영역에만 칠하기 허용" + +msgid "Highlight faces according to overhang angle." +msgstr "돌출부 각도에 따라 면을 강조 표시합니다." + +msgid "Auto support threshold angle: " +msgstr "자동 지지대 임계값 각도: " + +msgid "No auto support" +msgstr "자동 지지대 비활성" + +msgid "Support Generated" +msgstr "지지대 생성됨" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo-면에 배치" + +msgid "Lay on face" +msgstr "바닥면 선택" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"필라멘트 수가 페인팅 도구가 지원하는 최대 수를 초과합니다. 첫 번째 %1% 필라멘" +"트만 페인팅 도구에서 사용할 수 있습니다." + +msgid "Color Painting" +msgstr "색 칠하기" + +msgid "Pen shape" +msgstr "펜 모양" + +msgid "Paint" +msgstr "칠하기" + +msgid "Key 1~9" +msgstr "키 1~9" + +msgid "Choose filament" +msgstr "필라멘트 선택" + +msgid "Edge detection" +msgstr "가장자리 감지" + +msgid "Triangles" +msgstr "삼각형" + +msgid "Filaments" +msgstr "필라멘트" + +msgid "Brush" +msgstr "붓" + +msgid "Smart fill" +msgstr "스마트 채우기" + +msgid "Bucket fill" +msgstr "버킷 채우기" + +msgid "Height range" +msgstr "높이 범위" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "와이어프레임 전환" + +msgid "Shortcut Key " +msgstr "단축키 " + +msgid "Triangle" +msgstr "삼각형" + +msgid "Height Range" +msgstr "높이 범위" + +msgid "Vertical" +msgstr "수직" + +msgid "Horizontal" +msgstr "수평" + +msgid "Remove painted color" +msgstr "칠한 색 제거" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "칠하기에 사용한 필라멘트 %1%" + +msgid "Move" +msgstr "이동" + +msgid "Gizmo-Move" +msgstr "Gizmo-이동" + +msgid "Rotate" +msgstr "회전" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-회전" + +msgid "Optimize orientation" +msgstr "방향 최적화" + +msgid "Apply" +msgstr "적용" + +msgid "Scale" +msgstr "배율" + +msgid "Gizmo-Scale" +msgstr "Gizmo-배율" + +msgid "Error: Please close all toolbar menus first" +msgstr "오류: 먼저 모든 도구 모음 메뉴를 닫으십시오." + +msgid "in" +msgstr "인치" + +msgid "mm" +msgstr "밀리미터" + +msgid "Position" +msgstr "위치" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "회전" + +msgid "Scale ratios" +msgstr "배율비" + +msgid "Object Operations" +msgstr "개체 작업" + +msgid "Volume Operations" +msgstr "용량 작업" + +msgid "Translate" +msgstr "번역" + +msgid "Group Operations" +msgstr "그룹 작업" + +msgid "Set Position" +msgstr "위치 설정" + +msgid "Set Orientation" +msgstr "방향 설정" + +msgid "Set Scale" +msgstr "배율 설정" + +msgid "Reset Position" +msgstr "위치 초기화" + +msgid "Reset Rotation" +msgstr "회전 초기화" + +msgid "World coordinates" +msgstr "영역 좌표" + +msgid "Object coordinates" +msgstr "개체 좌표" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "크기" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "균일 배율" + +msgid "Planar" +msgstr "평면" + +msgid "Dovetail" +msgstr "도브테이" + +msgid "Auto" +msgstr "자동" + +msgid "Manual" +msgstr "수동" + +msgid "Plug" +msgstr "플러그" + +msgid "Dowel" +msgstr "맞춤핀" + +msgid "Snap" +msgstr "스냅" + +msgid "Prism" +msgstr "프리즘" + +msgid "Frustum" +msgstr "원뿔" + +msgid "Square" +msgstr "사각형" + +msgid "Hexagon" +msgstr "육각형" + +msgid "Keep orientation" +msgstr "방향 유지" + +msgid "Place on cut" +msgstr "자른 위치에 놓기" + +msgid "Flip upside down" +msgstr "거꾸로 뒤집기" + +msgid "Connectors" +msgstr "커넥터" + +msgid "Type" +msgstr "유형" + +msgid "Style" +msgstr "모양" + +msgid "Shape" +msgstr "형태" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "깊이" + +msgid "Groove" +msgstr "그루브" + +msgid "Width" +msgstr "너비" + +msgid "Flap Angle" +msgstr "플랩 각도" + +msgid "Groove Angle" +msgstr "홈 각도" + +msgid "Part" +msgstr "부품" + +msgid "Object" +msgstr "개체" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"클릭하여 잘라낸 면을 뒤집습니다\n" +"드래그하여 잘라낸 면을 이동합니다" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"클릭하여 잘라낸 면을 뒤집습니다\n" +"드래그하여 절단 면을 이동합니다\n" +"파트를 마우스 오른쪽 버튼으로 클릭하여 다른 쪽에 할당합니다" + +msgid "Move cut plane" +msgstr "절단면 이동" + +msgid "Mode" +msgstr "모드" + +msgid "Change cut mode" +msgstr "자르기 모드 변경" + +msgid "Tolerance" +msgstr "공차" + +msgid "Drag" +msgstr "드래그" + +msgid "Draw cut line" +msgstr "절단선 그리기" + +msgid "Left click" +msgstr "좌 클릭" + +msgid "Add connector" +msgstr "커넥터 추가" + +msgid "Right click" +msgstr "우 클릭" + +msgid "Remove connector" +msgstr "커넥터 제거" + +msgid "Move connector" +msgstr "커넥터 이동" + +msgid "Add connector to selection" +msgstr "선택 항목에 커넥터 추가" + +msgid "Remove connector from selection" +msgstr "선택 항목에서 커넥터 제거" + +msgid "Select all connectors" +msgstr "모든 커넥터 선택" + +msgid "Cut" +msgstr "잘라내기" + +msgid "Rotate cut plane" +msgstr "절단면 회전" + +msgid "Remove connectors" +msgstr "커넥터 제거" + +msgid "Bulge" +msgstr "부풀림" + +msgid "Bulge proportion related to radius" +msgstr "반경과 관련된 부품림 비율" + +msgid "Space" +msgstr "스페이스" + +msgid "Space proportion related to radius" +msgstr "반경과 관련된 공간 비율" + +msgid "Confirm connectors" +msgstr "커넥터 승인" + +msgid "Cancel" +msgstr "취소" + +msgid "Build Volume" +msgstr "빌드 볼륨" + +msgid "Flip cut plane" +msgstr "절단면 뒤집기" + +msgid "Groove change" +msgstr "그루브 변경" + +msgid "Reset" +msgstr "초기화" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "수정됨" + +msgid "Cut position" +msgstr "자르기 위치" + +msgid "Reset cutting plane" +msgstr "절단면 재설정" + +msgid "Edit connectors" +msgstr "커넥터 편집" + +msgid "Add connectors" +msgstr "커넥터 추가" + +msgid "Reset cut" +msgstr "컷 재설정" + +msgid "Reset cutting plane and remove connectors" +msgstr "절단면 재설정 및 커넥터 제거" + +msgid "Upper part" +msgstr "상부 부품" + +msgid "Lower part" +msgstr "하부 부품" + +msgid "Keep" +msgstr "유지" + +msgid "Flip" +msgstr "뒤집기" + +msgid "After cut" +msgstr "잘라내기 후" + +msgid "Cut to parts" +msgstr "부품으로 자르기" + +msgid "Perform cut" +msgstr "잘라내기 실행" + +msgid "Warning" +msgstr "경고" + +msgid "Invalid connectors detected" +msgstr "잘못된 커넥터가 감지됨" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "%1$d 커넥터가 절단 윤곽에서 벗어남" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "%1$d 커넥터가 물체에서 벗어남" + +msgid "Some connectors are overlapped" +msgstr "일부 커넥터가 겹칩니다" + +msgid "Select at least one object to keep after cutting." +msgstr "잘라낸 후 보관할 개체를 하나 이상 선택합니다." + +msgid "Cut plane is placed out of object" +msgstr "절단면이 개체 밖으로 배치됨" + +msgid "Cut plane with groove is invalid" +msgstr "홈이 있는 절단면은 유효하지 않습니다" + +msgid "Connector" +msgstr "커넥터" + +msgid "Cut by Plane" +msgstr "평면으로 자르기" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"절단 도구로 인해 메인폴드가 아닌 가장자리가 발생했는데 지금 수정하시겠습니까?" + +msgid "Repairing model object" +msgstr "모델 개체 수리 중" + +msgid "Cut by line" +msgstr "라인별로 자르기" + +msgid "Delete connector" +msgstr "커넥터 삭제" + +msgid "Mesh name" +msgstr "메쉬 이름" + +msgid "Detail level" +msgstr "세부 레벨" + +msgid "Decimate ratio" +msgstr "데시메이트 비율" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"1백만 개가 넘는 삼각형이 있는 모델 '%1%'의 처리 속도가 느릴 수 있습니다. 모델" +"을 단순화하는 것이 좋습니다." + +msgid "Simplify model" +msgstr "모델 단순화" + +msgid "Simplify" +msgstr "단순화" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "단순화는 현재 단일 부품이 선택된 경우에만 허용됩니다" + +msgid "Error" +msgstr "오류" + +msgid "Extra high" +msgstr "매우 높음" + +msgid "High" +msgstr "높음" + +msgid "Medium" +msgstr "중간" + +msgid "Low" +msgstr "낮음" + +msgid "Extra low" +msgstr "매우 낮음" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d 삼각형" + +msgid "Show wireframe" +msgstr "와이어프레임 보기" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "미리 보기 진행 시 적용할 수 없습니다." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "작업이 이미 취소중입니다. 몇 초만 기다려 주십시오." + +msgid "Face recognition" +msgstr "바닥면 인식" + +msgid "Perform Recognition" +msgstr "인식 수행" + +msgid "Brush size" +msgstr "붓 크기" + +msgid "Brush shape" +msgstr "붓 모양" + +msgid "Enforce seam" +msgstr "솔기 적용" + +msgid "Block seam" +msgstr "솔기 차단" + +msgid "Seam painting" +msgstr "솔기 칠하기" + +msgid "Remove selection" +msgstr "선택 삭제" + +msgid "Entering Seam painting" +msgstr "솔기 칠하기 입력" + +msgid "Leaving Seam painting" +msgstr "솔기 칠하기 떠나기" + +msgid "Paint-on seam editing" +msgstr "페인트칠 솔기 편집" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "글꼴" + +msgid "Thickness" +msgstr "두께" + +msgid "Text Gap" +msgstr "글자 간격" + +msgid "Angle" +msgstr "각도" + +msgid "" +"Embeded\n" +"depth" +msgstr "" +"내장\n" +"깊이" + +msgid "Input text" +msgstr "텍스트 입력" + +msgid "Surface" +msgstr "표면" + +msgid "Horizontal text" +msgstr "가로 텍스트" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + 마우스 위 or 아래" + +msgid "Rotate text" +msgstr "텍스트 회전" + +msgid "Text shape" +msgstr "텍스트 모양" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "텍스트 회전" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "텍스트 이동" + +msgid "Set Mirror" +msgstr "반전 설정" + +msgid "Embossed text" +msgstr "텍스트 양각" + +msgid "Enter emboss gizmo" +msgstr "양각 기즈모 입력" + +msgid "Leave emboss gizmo" +msgstr "양각 기즈모 남기기" + +msgid "Embossing actions" +msgstr "양각 작업" + +msgid "Emboss" +msgstr "양각" + +msgid "NORMAL" +msgstr "NORMAL" + +msgid "SMALL" +msgstr "SMALL" + +msgid "ITALIC" +msgstr "ITALIC" + +msgid "SWISS" +msgstr "SWISS" + +msgid "MODERN" +msgstr "MODERN" + +msgid "First font" +msgstr "첫 번째 글꼴" + +msgid "Default font" +msgstr "기본 글꼴" + +msgid "Advanced" +msgstr "고급" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "선택한 글꼴로는 텍스트를 쓸 수 없습니다. 다른 글꼴을 선택해 보세요." + +msgid "Embossed text cannot contain only white spaces." +msgstr "양각 텍스트에는 공백만 포함될 수 없습니다." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" +"텍스트에 글꼴로 알 수 없는 문자 모양('?'으로 표시)이 포함되어 있습니다." + +msgid "Text input doesn't show font skew." +msgstr "텍스트 입력에는 글꼴 기울어짐이 표시되지 않습니다." + +msgid "Text input doesn't show font boldness." +msgstr "텍스트 입력에는 글꼴의 굵기가 표시되지 않습니다." + +msgid "Text input doesn't show gap between lines." +msgstr "텍스트 입력 시 줄 사이의 간격이 표시되지 않습니다." + +msgid "Too tall, diminished font height inside text input." +msgstr "텍스트 입력 내에서 너무 길고 글꼴 높이가 줄어듭니다." + +msgid "Too small, enlarged font height inside text input." +msgstr "텍스트 입력 내 글꼴 높이가 너무 작아서 확대되었습니다." + +msgid "Text doesn't show current horizontal alignment." +msgstr "텍스트에 현재 가로 정렬이 표시되지 않습니다." + +msgid "Revert font changes." +msgstr "글꼴 변경 사항을 되돌립니다." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "글꼴 \"%1%\"을(를) 선택할 수 없습니다." + +msgid "Operation" +msgstr "작업" + +msgid "Join" +msgstr "접합부" + +msgid "Click to change text into object part." +msgstr "텍스트를 개체 부분으로 변경하려면 클릭하세요." + +msgid "You can't change a type of the last solid part of the object." +msgstr "개체의 마지막 솔리드 부분 유형은 변경할 수 없습니다." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "자르기" + +msgid "Click to change part type into negative volume." +msgstr "부품 유형을 음수 볼륨으로 변경하려면 클릭하세요." + +msgid "Modifier" +msgstr "수정자" + +msgid "Click to change part type into modifier." +msgstr "부품 유형을 수정자로 변경하려면 클릭하세요." + +msgid "Change Text Type" +msgstr "텍스트 유형 변경" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "양각 텍스트의 스타일 이름 바꾸기(%1%)" + +msgid "Name can't be empty." +msgstr "이름은 비워둘 수 없습니다." + +msgid "Name has to be unique." +msgstr "이름은 고유해야 합니다." + +msgid "OK" +msgstr "확인" + +msgid "Rename style" +msgstr "스타일 이름 바꾸기" + +msgid "Rename current style." +msgstr "현재 스타일의 이름을 바꿉니다." + +msgid "Can't rename temporary style." +msgstr "임시 스타일의 이름을 바꿀 수 없습니다." + +msgid "First Add style to list." +msgstr "먼저 목록에 스타일을 추가합니다." + +#, boost-format +msgid "Save %1% style" +msgstr "%1% 스타일 저장" + +msgid "No changes to save." +msgstr "저장할 변경사항이 없습니다." + +msgid "New name of style" +msgstr "스타일의 새 이름" + +msgid "Save as new style" +msgstr "새 스타일로 저장" + +msgid "Only valid font can be added to style." +msgstr "유효한 글꼴만 스타일에 추가할 수 있습니다." + +msgid "Add style to my list." +msgstr "내 목록에 스타일을 추가하세요." + +msgid "Save as new style." +msgstr "새 스타일로 저장합니다." + +msgid "Remove style" +msgstr "스타일 제거" + +msgid "Can't remove the last existing style." +msgstr "마지막 기존 스타일을 제거할 수 없습니다." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "\"%1%\" 스타일을 영구적으로 제거하시겠습니까?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "\"%1%\" 스타일을 삭제합니다." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "\"%1%\"을(를) 삭제할 수 없습니다. 마지막 스타일입니다." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "임시 스타일 \"%1%\"을(를) 삭제할 수 없습니다." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "수정된 스타일 \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "현재 스타일은 \"%1%\"입니다." + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"스타일을 \"%1%\"(으)로 변경하면 현재 스타일 수정 사항이 삭제됩니다.\n" +"\n" +"그래도 계속하시겠습니까?" + +msgid "Not valid style." +msgstr "유효한 스타일이 아닙니다." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "스타일 \"%1%\"은(는) 사용할 수 없으며 목록에서 제거됩니다." + +msgid "Unset italic" +msgstr "이탤릭체 설정해제" + +msgid "Set italic" +msgstr "이탤릭체 설정" + +msgid "Unset bold" +msgstr "굵게 설정해제" + +msgid "Set bold" +msgstr "굵게 설정" + +msgid "Revert text size." +msgstr "텍스트 크기를 되돌립니다." + +msgid "Revert embossed depth." +msgstr "양각 깊이를 되돌립니다." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"선택한 글꼴에 대해서는 고급 옵션을 변경할 수 없습니다.\n" +"다른 글꼴을 선택하세요." + +msgid "Revert using of model surface." +msgstr "모델 표면 사용을 되돌립니다." + +msgid "Revert Transformation per glyph." +msgstr "문자 모양 변환을 되돌립니다." + +msgid "Set global orientation for whole text." +msgstr "전체 텍스트에 대한 전역 방향을 설정합니다." + +msgid "Set position and orientation per glyph." +msgstr "문자 모양별로 위치와 방향을 설정합니다." + +msgctxt "Alignment" +msgid "Left" +msgstr "왼쪽" + +msgctxt "Alignment" +msgid "Center" +msgstr "중앙" + +msgctxt "Alignment" +msgid "Right" +msgstr "오른쪽" + +msgctxt "Alignment" +msgid "Top" +msgstr "위" + +msgctxt "Alignment" +msgid "Middle" +msgstr "가운데" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "아래" + +msgid "Revert alignment." +msgstr "정렬을 되돌립니다." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "위치" + +msgid "Revert gap between characters" +msgstr "문자 사이의 간격 되돌리기" + +msgid "Distance between characters" +msgstr "문자 사이의 거리" + +msgid "Revert gap between lines" +msgstr "선 사이의 간격 되돌리기" + +msgid "Distance between lines" +msgstr "선 사이의 거리" + +msgid "Undo boldness" +msgstr "두드러짐 취소" + +msgid "Tiny / Wide glyphs" +msgstr "작은/넓은 문자 모양" + +msgid "Undo letter's skew" +msgstr "문자 기울어짐 실행 취소" + +msgid "Italic strength ratio" +msgstr "이텔릭체 강도 비율" + +msgid "Undo translation" +msgstr "번역 취소" + +msgid "Distance of the center of the text to the model surface." +msgstr "텍스트 중심에서 모델 표면까지의 거리입니다." + +msgid "Undo rotation" +msgstr "회전 실행 취소" + +msgid "Rotate text Clock-wise." +msgstr "텍스트를 시계 방향으로 회전합니다." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "개체 표면을 따라 텍스트를 이동할 때 텍스트 회전을 잠금 해제합니다." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "개체 표면을 따라 텍스트를 이동할 때 텍스트 회전을 잠급니다." + +msgid "Select from True Type Collection." +msgstr "트루타입 컬렉션에서 선택하세요." + +msgid "Set text to face camera" +msgstr "카메라를 향하도록 텍스트 설정" + +msgid "Orient the text towards the camera." +msgstr "텍스트 방향을 카메라 쪽으로 향하게 합니다." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"정확히 동일한 글꼴(\"%1%\")을 로드할 수 없습니다. 응용 프로그램이 유사한 항목" +"(\"%2%\")을 선택했습니다. 텍스트 편집을 활성화하려면 글꼴을 지정해야 합니다." + +msgid "No symbol" +msgstr "기호 없음" + +msgid "Loading" +msgstr "로드 중" + +msgid "In queue" +msgstr "대기열에 있음" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "높이" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "표면 사용" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "문자모양 당" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "조정" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "문자 간격" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "줄 간격" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "두드러짐" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "기울어짐 비율" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "표면에서" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "유지하다" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "수집" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "SVG 회전" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "SVG 이동" + +msgid "Enter SVG gizmo" +msgstr "SVG 기즈모 입력" + +msgid "Leave SVG gizmo" +msgstr "SVG 기즈모 나가기" + +msgid "SVG actions" +msgstr "SVG 작업" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "불투명도(%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "색상 그라데이션(%1%)" + +msgid "Undefined fill type" +msgstr "정의되지 않은 채우기 유형" + +msgid "Linear gradient" +msgstr "선형 그래디언트" + +msgid "Radial gradient" +msgstr "방사형 그래디언트" + +msgid "Open filled path" +msgstr "채워진 경로 열기" + +msgid "Undefined stroke type" +msgstr "정의되지 않은 스트로크 유형" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "자체 교차 및 여러 지점에서는 경로를 복구할 수 없습니다." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"최종 모양에는 자체 교차점이나 동일한 좌표를 가진 여러 점이 포함되어 있습니다." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "모양이 보이지 않음(%1%)으로 표시되었습니다." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "도형 채우기(%1%)에는 지원되지 않는 %2%가 포함되어 있습니다." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "모양의 획(%1%)이 너무 얇습니다(최소 너비는 %2%mm)." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "모양의 획(%1%)에는 지원되지 않는 %2%가 포함되어 있습니다." + +msgid "Face the camera" +msgstr "카메라를 바라보세요" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "알 수 없는 파일 이름" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "SVG 파일 경로는 \"%1%\"입니다." + +msgid "Reload SVG file from disk." +msgstr "디스크에서 SVG 파일을 다시 로드합니다." + +msgid "Change file" +msgstr "파일 변경" + +msgid "Change to another .svg file" +msgstr "다른 .svg 파일로 변경" + +msgid "Forget the file path" +msgstr "파일 경로 기억하지않음" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"3mf 파일에 로컬 경로를 저장하지 마십시오.\n" +"또한 '디스크에서 다시 로드' 옵션을 비활성화합니다." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "굽기" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "편집할 수 없는 부분으로 모델에 굽기" + +msgid "Save as" +msgstr "다른 이름으로 저장" + +msgid "Save SVG file" +msgstr "SVG 파일 저장" + +msgid "Save as '.svg' file" +msgstr "'.svg' 파일로 저장" + +msgid "Size in emboss direction." +msgstr "양각 방향의 크기입니다." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "규모도 곡선 샘플의 양을 변경합니다(%1%)." + +msgid "Width of SVG." +msgstr "SVG의 너비." + +msgid "Height of SVG." +msgstr "SVG의 높이." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "SVG의 종횡비를 잠금/잠금 해제합니다." + +msgid "Reset scale" +msgstr "규모 재설정" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "SVG 중심에서 모델 표면까지의 거리입니다." + +msgid "Reset distance" +msgstr "거리 재설정" + +msgid "Reset rotation" +msgstr "회전 재설정" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "표면 위로 드래그할 때 회전 각도를 잠금/잠금 해제합니다." + +msgid "Mirror vertically" +msgstr "수직으로 반전" + +msgid "Mirror horizontally" +msgstr "수평으로 반전" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "SVG 유형 변경" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "반전" + +msgid "Choose SVG file for emboss:" +msgstr "양각을 위한 SVG 파일 선택:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "파일이 존재하지 않습니다(%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "파일 이름은 \".svg\"로 끝나야 하지만 %1%을(를) 선택했습니다" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "나노 SVG 파서는 파일(%1%)에서 로드할 수 없습니다." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "SVG 파일에는 양각할 단일 경로(%1%)가 포함되어 있지 않습니다." + +msgid "Vertex" +msgstr "꼭지점" + +msgid "Edge" +msgstr "가장자리" + +msgid "Plane" +msgstr "평면" + +msgid "Point on edge" +msgstr "가장자리의 점" + +msgid "Point on circle" +msgstr "원 위의 점" + +msgid "Point on plane" +msgstr "평면 위의 점" + +msgid "Center of edge" +msgstr "가장자리 중심" + +msgid "Center of circle" +msgstr "원의 중심" + +msgid "ShiftLeft mouse button" +msgstr "Shift + 왼쪽 마우스 버튼" + +msgid "Select feature" +msgstr "기능 선택" + +msgid "Select point" +msgstr "위치 선택" + +msgid "Delete" +msgstr "삭제" + +msgid "Restart selection" +msgstr "다시 선택" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "선택 취소" + +msgid "Measure" +msgstr "측정" + +msgid "Edit to scale" +msgstr "규모에 맞게 편집" + +msgctxt "Verb" +msgid "Scale" +msgstr "규모" + +msgid "None" +msgstr "없음" + +msgid "Diameter" +msgstr "직경" + +msgid "Length" +msgstr "길이" + +msgid "Selection" +msgstr "선택" + +msgid "Copy to clipboard" +msgstr "클립보드로 복사" + +msgid "Perpendicular distance" +msgstr "수직 거리" + +msgid "Distance" +msgstr "거리" + +msgid "Direct distance" +msgstr "직접적인 거리" + +msgid "Distance XYZ" +msgstr "XYZ 거리" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "공지사항" + +msgid "Undefined" +msgstr "정의되지 않음" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% 가 %2% 로 교체되었습니다" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "최신 버전의 Snapmaker Orca에서 설정을 생성할 수 있습니다." + +msgid "Some values have been replaced. Please check them:" +msgstr "일부 값이 변경되었습니다. 다음을 확인하세요:" + +msgid "Process" +msgstr "프로세스" + +msgid "Filament" +msgstr "필라멘트" + +msgid "Machine" +msgstr "장치" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "구성 패키지가 로드되었지만, 일부 값이 인식되지 않았습니다." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "구성 파일 \"%1%\"이(가) 로드되었지만 일부 값이 인식되지 않았습니다." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"메모리 부족으로 Snapmaker Orca가 종료됩니다. 버그일 수 있습니다. 저희 팀에 문제" +"를 보고해 주시면 감사하겠습니다." + +msgid "Fatal error" +msgstr "치명적 오류" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca는 현지화 오류로 인해 종료됩니다. 이 문제가 발생한 구체적인 시나리" +"오를 보고해 주시면 감사하겠습니다." + +msgid "Critical error" +msgstr "치명적 오류" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca에 처리되지 않은 예외가 발생했습니다: %1%" + +msgid "Untitled" +msgstr "제목 없음" + +msgid "Downloading Bambu Network Plug-in" +msgstr "뱀부 네트워크 플러그인 다운로드" + +msgid "Login information expired. Please login again." +msgstr "로그인 정보가 만료되었습니다. 다시 로그인해주세요." + +msgid "Incorrect password" +msgstr "비밀번호가 다릅니다" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "%s 연결 실패! [SN:%s, code=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca의 특정 기능이 작동하려면 Microsoft WebView2 Runtime이 필요합니" +"다.\n" +"지금 설치하려면 예 를 클릭하세요." + +msgid "WebView2 Runtime" +msgstr "WebView2 런타임" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"계속하시겠습니까?" + +msgid "Remember my choice" +msgstr "내 선택 기억" + +msgid "Loading configuration" +msgstr "구성 파일 로드 중" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "기본 브라우저에서 새 버전을 다운로드하려면 클릭: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca 업그레이드가 필요합니다" + +msgid "This is the newest version." +msgstr "최신 버전입니다." + +msgid "Info" +msgstr "정보" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"Snapmaker Orca 구성 파일이 손상되어 구문을 분석할 수 없습니다.\n" +"Snapmaker Orca가 구성 파일을 다시 생성하려고 시도했습니다.\n" +"응용 프로그램 설정은 손실되지만 프린터 사전설정은 영향을 받지 않습니다." + +msgid "Rebuild" +msgstr "재빌드" + +msgid "Loading current presets" +msgstr "현재 사전 설정 로드 중" + +msgid "Loading a mode view" +msgstr "모드 보기 로드 중" + +msgid "Choose one file (3mf):" +msgstr "하나의 파일을 선택 (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "하나 이상의 파일 선택 (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "하나 이상의 파일 선택 (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "ZIP 파일 선택" + +msgid "Choose one file (gcode/3mf):" +msgstr "하나의 파일 선택 (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "일부 사전 설정이 수정 되었습니다." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"수정된 사전 설정을 새 프로젝트에 유지하거나, 변경 내용을 삭제 또는 새 사전 설" +"정으로 저장할 수 있습니다." + +msgid "User logged out" +msgstr "사용자가 로그아웃됨" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "슬라이싱 중에는 새 프로젝트를 만들거나 프로젝트 파일을 열 수 없습니다!" + +msgid "Open Project" +msgstr "프로젝트 열기" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"Snapmaker Orca의 버전이 너무 낮아 최신 버전으로 업데이트해야 정상적으로 사용 가" +"능합니다" + +msgid "Privacy Policy Update" +msgstr "개인 정보 보호 정책 업데이트" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"클라우드에 캐시된 사용자 사전 설정 수가 상한을 초과했습니다.새로 생성된 사용" +"자 사전 설정은 로컬에서만 사용할 수 있습니다." + +msgid "Sync user presets" +msgstr "사용자 사전 설정 동기화" + +msgid "Loading user preset" +msgstr "사용자 사전 설정 로드 중" + +msgid "Switching application language" +msgstr "응용 프로그램 언어 전환" + +msgid "Select the language" +msgstr "언어 선택" + +msgid "Language" +msgstr "언어" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "업로드가 계속 진행 중입니다" + +msgid "Stop them and continue anyway?" +msgstr "중지하고 계속하시겠습니까?" + +msgid "Ongoing uploads" +msgstr "진행 중인 업로드" + +msgid "Select a G-code file:" +msgstr "G코드 파일 선택:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"URL 다운로드를 시작할 수 없습니다. 대상 폴더가 설정되지 않았습니다. 구성 마법" +"사에서 대상 폴더를 선택하세요." + +msgid "Import File" +msgstr "파일 가져오기" + +msgid "Choose files" +msgstr "파일 선택" + +msgid "New Folder" +msgstr "새 폴더" + +msgid "Open" +msgstr "열기" + +msgid "Rename" +msgstr "이름 변경" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Snapmaker Orca GUI 초기화 실패" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "치명적 오류, 예외 발견: %1%" + +msgid "Quality" +msgstr "품질" + +msgid "Shell" +msgstr "쉘" + +msgid "Infill" +msgstr "채우기" + +msgid "Support" +msgstr "지지대" + +msgid "Flush options" +msgstr "버리기 옵션" + +msgid "Speed" +msgstr "속도" + +msgid "Strength" +msgstr "강도" + +msgid "Top Solid Layers" +msgstr "상부 꽉찬 레이어" + +msgid "Top Minimum Shell Thickness" +msgstr "상단 최소 쉘 두께" + +msgid "Bottom Solid Layers" +msgstr "하단 꽉찬 레이어" + +msgid "Bottom Minimum Shell Thickness" +msgstr "하단 최소 쉘 두께" + +msgid "Ironing" +msgstr "다림질" + +msgid "Fuzzy Skin" +msgstr "퍼지 스킨" + +msgid "Extruders" +msgstr "압출기" + +msgid "Extrusion Width" +msgstr "압출 너비" + +msgid "Wipe options" +msgstr "닦기 옵션" + +msgid "Bed adhesion" +msgstr "베드 안착" + +msgid "Add part" +msgstr "부품 추가" + +msgid "Add negative part" +msgstr "비우기 부품 추가" + +msgid "Add modifier" +msgstr "수정자 추가" + +msgid "Add support blocker" +msgstr "지지대 차단기 추가" + +msgid "Add support enforcer" +msgstr "지지대 강제기 추가" + +msgid "Add text" +msgstr "텍스트 추가" + +msgid "Add negative text" +msgstr "텍스트 제외 추가" + +msgid "Add text modifier" +msgstr "텍스트 수정자 추가" + +msgid "Add SVG part" +msgstr "SVG 부분 추가" + +msgid "Add negative SVG" +msgstr "SVG 제외 추가" + +msgid "Add SVG modifier" +msgstr "SVG 수정자 추가" + +msgid "Select settings" +msgstr "설정 선택" + +msgid "Hide" +msgstr "숨기기" + +msgid "Show" +msgstr "보이기" + +# 단축키 +msgid "Del" +msgstr "Del" + +msgid "Delete the selected object" +msgstr "선택된 개체 삭제" + +msgid "Load..." +msgstr "불러오기..." + +msgid "Cube" +msgstr "정육면체" + +msgid "Cylinder" +msgstr "원기둥" + +msgid "Cone" +msgstr "원뿔" + +msgid "Disc" +msgstr "디스크" + +msgid "Torus" +msgstr "토러스" + +msgid "Orca Cube" +msgstr "Orca 큐브" + +msgid "3DBenchy" +msgstr "3D 벤치" + +msgid "Autodesk FDM Test" +msgstr "Autodesk FDM 테스트" + +msgid "Voron Cube" +msgstr "보론 큐브" + +msgid "Stanford Bunny" +msgstr "스탠포드 버니" + +msgid "Orca String Hell" +msgstr "Orca 스트링 지옥" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"이 모델은 상단 표면에 텍스트 엠보싱이 있습니다. 최적의 결과를 얻으려면 '상단 " +"표면의 한 벽만'에 대해 '한 벽 임계값(min_width_top_surface)'을 0으로 설정하" +"는 것이 가장 좋습니다.\n" +"예 - 이 설정을 자동으로 변경합니다\n" +"아니요 - 이 설정을 변경하지 않음" + +msgid "Text" +msgstr "텍스트" + +msgid "Height range Modifier" +msgstr "높이 범위 수정자" + +msgid "Add settings" +msgstr "설정 추가" + +msgid "Change type" +msgstr "유형 변경" + +msgid "Set as an individual object" +msgstr "개별 개체로 설정" + +msgid "Set as individual objects" +msgstr "개별 개체로 설정" + +msgid "Fill bed with copies" +msgstr "베드에 복사본으로 채우기" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "베드의 나머지 영역을 선택한 개체의 복사본으로 채웁니다" + +msgid "Printable" +msgstr "출력 가능" + +msgid "Fix model" +msgstr "모델 수리" + +msgid "Export as one STL" +msgstr "하나의 STL로 내보내기" + +msgid "Export as STLs" +msgstr "여러 STL로 내보내기" + +msgid "Reload from disk" +msgstr "디스크에서 다시 불러오기" + +msgid "Reload the selected parts from disk" +msgstr "선택한 부품을 디스크에서 다시 불러오기" + +msgid "Replace with STL" +msgstr "STL 파일로 교체" + +msgid "Replace the selected part with new STL" +msgstr "선택한 부품을 새 STL 파일로 교체" + +msgid "Change filament" +msgstr "필라멘트 변경" + +msgid "Set filament for selected items" +msgstr "선택한 항목의 필라멘트로 설정" + +msgid "Default" +msgstr "기본값" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "필라멘트 %d" + +msgid "current" +msgstr "현재" + +msgid "Scale to build volume" +msgstr "출력 가능 영역에 맞게 확장" + +msgid "Scale an object to fit the build volume" +msgstr "출력 가능 영역에 맞게 개체 크기 조정" + +msgid "Flush Options" +msgstr "버리기 옵션" + +msgid "Flush into objects' infill" +msgstr "개체의 채우기에서 버리기" + +msgid "Flush into this object" +msgstr "개체에서 버리기" + +msgid "Flush into objects' support" +msgstr "개체의 지지대에서 버리기" + +msgid "Edit in Parameter Table" +msgstr "개체/부품 설정에서 편집" + +msgid "Convert from inch" +msgstr "인치에서 변환" + +msgid "Restore to inch" +msgstr "인치로 복원" + +msgid "Convert from meter" +msgstr "미터에서 변환" + +msgid "Restore to meter" +msgstr "미터로 복원" + +msgid "Assemble" +msgstr "병합" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "선택한 개체를 여러 부품이 있는 개체로 조립" + +msgid "Assemble the selected objects to an object with single part" +msgstr "선택한 개체를 단일 부품이 있는 개체로 조립" + +msgid "Mesh boolean" +msgstr "메쉬 부울" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "합집합과 차집합을 포함한 메쉬 부울 연산" + +msgid "Along X axis" +msgstr "X축" + +msgid "Mirror along the X axis" +msgstr "X축을 따라 반전" + +msgid "Along Y axis" +msgstr "Y축" + +msgid "Mirror along the Y axis" +msgstr "Y축을 따라 반전" + +msgid "Along Z axis" +msgstr "Z축" + +msgid "Mirror along the Z axis" +msgstr "Z축을 따라 반전" + +msgid "Mirror object" +msgstr "개체 반전" + +msgid "Edit text" +msgstr "텍스트 편집" + +msgid "Ability to change text, font, size, ..." +msgstr "텍스트, 글꼴, 크기 등을 변경하는 기능..." + +msgid "Edit SVG" +msgstr "SVG 편집" + +msgid "Change SVG source file, projection, size, ..." +msgstr "SVG 소스 파일, 투영, 크기 변경..." + +msgid "Invalidate cut info" +msgstr "잘못된 잘라내기 정보" + +msgid "Add Primitive" +msgstr "기본 모델 추가" + +msgid "Add Handy models" +msgstr "핸디 모델 추가" + +msgid "Add Models" +msgstr "모델 추가" + +msgid "Show Labels" +msgstr "이름표 보기" + +msgid "To objects" +msgstr "개체로" + +msgid "Split the selected object into multiple objects" +msgstr "선택한 개체를 여러 개체로 분할" + +msgid "To parts" +msgstr "부품으로" + +msgid "Split the selected object into multiple parts" +msgstr "선택한 개체를 여러 부품으로 분할" + +msgid "Split" +msgstr "분할" + +msgid "Split the selected object" +msgstr "선택한 개체 분할" + +msgid "Auto orientation" +msgstr "자동 방향 지정" + +msgid "Auto orient the object to improve print quality." +msgstr "개체의 방향을 자동으로 지정하여 출력 품질을 향상시킵니다." + +msgid "Select All" +msgstr "모두 선택" + +msgid "select all objects on current plate" +msgstr "현재 플레이트의 모든 개체 선택" + +msgid "Delete All" +msgstr "모두 삭제" + +msgid "delete all objects on current plate" +msgstr "현재 플레이트의 모든 개체 삭제" + +msgid "Arrange" +msgstr "정렬" + +msgid "arrange current plate" +msgstr "현재 플레이트 정렬" + +msgid "Reload All" +msgstr "모두 다시 불러오기" + +msgid "reload all from disk" +msgstr "디스크에서 모두 다시 로드" + +msgid "Auto Rotate" +msgstr "자동 회전" + +msgid "auto rotate current plate" +msgstr "현재 플레이트 자동 정렬" + +msgid "Delete Plate" +msgstr "플레이트 삭제" + +msgid "Remove the selected plate" +msgstr "선택된 플레이트 삭제" + +msgid "Clone" +msgstr "복제" + +msgid "Simplify Model" +msgstr "모델 단순화" + +msgid "Center" +msgstr "중앙" + +msgid "Edit Process Settings" +msgstr "프로세스 설정에서 편집" + +msgid "Edit print parameters for a single object" +msgstr "단일 개체에 대한 출력 매개변수 편집" + +msgid "Change Filament" +msgstr "필라멘트 변경" + +msgid "Set Filament for selected items" +msgstr "선택한 항목의 필라멘트로 설정" + +msgid "Unlock" +msgstr "잠금 해제" + +msgid "Lock" +msgstr "잠금" + +msgid "Edit Plate Name" +msgstr "플레이트 이름 편집" + +msgid "Name" +msgstr "이름" + +msgid "Fila." +msgstr "필라멘트." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d 오류 수정됨" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "오류: %1$d 비 다양체 가장자리." + +msgid "Remaining errors" +msgstr "남은 오류" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d 비다양체 가장자리" + +msgid "Right click the icon to fix model object" +msgstr "아이콘을 마우스 우클릭하여 모델 개체를 고칩니다" + +msgid "Right button click the icon to drop the object settings" +msgstr "아이콘을 마우스 우클릭하여 개체 설정을 드롭합니다" + +msgid "Click the icon to reset all settings of the object" +msgstr "아이콘을 클릭하여 개체의 모든 설정을 초기화합니다" + +msgid "Right button click the icon to drop the object printable property" +msgstr "아이콘을 마우스 우클릭하여 개체 출력 가능 속성을 드롭합니다" + +msgid "Click the icon to toggle printable property of the object" +msgstr "아이콘을 쿨릭하여 개체의 출력 가능한 속성을 전환합니다" + +msgid "Click the icon to edit support painting of the object" +msgstr "아이콘을 클릭하여 개체의 지지대 칠하기를 편집합니다" + +msgid "Click the icon to edit color painting of the object" +msgstr "아이콘을 클릭하여 개체의 색상 칠하기를 편집합니다" + +msgid "Click the icon to shift this object to the bed" +msgstr "아이콘을 클릭하여 이 개체를 베드로 옮깁니다" + +msgid "Loading file" +msgstr "파일 로딩 중" + +msgid "Error!" +msgstr "오류!" + +msgid "Failed to get the model data in the current file." +msgstr "현재 파일에서 모델의 데이터를 가져오지 못했습니다." + +msgid "Generic" +msgstr "일반" + +msgid "Add Modifier" +msgstr "수정자 추가" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "개체별 설정 모드로 전환하여 수정자 설정을 편집합니다." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "개체별 설정 모드로 전환하여 선택한 개체의 프로세스 설정을 편집합니다." + +msgid "Delete connector from object which is a part of cut" +msgstr "잘라내기의 일부인 개체에서 커넥터 삭제" + +msgid "Delete solid part from object which is a part of cut" +msgstr "잘라내기의 일부인 개체에서 꽉찬 부품 삭제" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "잘라내기의 일부인 개체에서 음수 비우기 용량 삭제" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"잘라내기 연결을 저장하기 위해 모든 관련 개체에서 모든 커넥터를 삭제할 수 있습" +"니다." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"이 조치는 잘라내기 연결을 끊습니다.\n" +"그 이후에는 모델 일관성을 보장할 수 없습니다.\n" +"\n" +"꽉찬 부품 또는 비우기 부피로 조작하려면 먼저 잘라내기 정보를 무효화해야 합니" +"다." + +msgid "Delete all connectors" +msgstr "모든 커넥터 삭제" + +msgid "Deleting the last solid part is not allowed." +msgstr "마지막 꽉찬 부품을 삭제할 수 없습니다." + +msgid "The target object contains only one part and can not be splited." +msgstr "대상 개체는 한 부품만 포함하고 있어 분할할 수 없습니다." + +msgid "Assembly" +msgstr "조립" + +msgid "Cut Connectors information" +msgstr "잘라내기 커넥터 정보" + +msgid "Object manipulation" +msgstr "개체 조작" + +msgid "Group manipulation" +msgstr "그룹 조작" + +msgid "Object Settings to modify" +msgstr "수정할 개체 설정" + +msgid "Part Settings to modify" +msgstr "수정할 부품 설정" + +msgid "Layer range Settings to modify" +msgstr "수정할 레이어 범위 설정" + +msgid "Part manipulation" +msgstr "부품 조작" + +msgid "Instance manipulation" +msgstr "인스턴스 조작" + +msgid "Height ranges" +msgstr "높이 범위" + +msgid "Settings for height range" +msgstr "높이 범위 설정" + +msgid "Layer" +msgstr "레이어" + +msgid "Selection conflicts" +msgstr "선택 출돌함" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "첫 번째로 선택한 항목이 개체이면 두 번째 항목도 개체여야 합니다." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"첫 번째로 선택한 항목이 부품이면 두 번째 항목은 동일한 개체의 부품이어야 합니" +"다." + +msgid "The type of the last solid object part is not to be changed." +msgstr "마지막 꽉찬 개체 부품의 유형은 변경되지 않습니다." + +msgid "Negative Part" +msgstr "비우기 부품" + +msgid "Support Blocker" +msgstr "지지대 차단기" + +msgid "Support Enforcer" +msgstr "지지대 강제기" + +msgid "Type:" +msgstr "유형:" + +msgid "Choose part type" +msgstr "부품 유형 선택" + +msgid "Enter new name" +msgstr "새 이름 입력" + +msgid "Renaming" +msgstr "이름 변경 중" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "다음 모델 개체가 수리되었습니다" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "다음 모델 개체 교정을 실패하였습니다" + +msgid "Repairing was canceled" +msgstr "수리가 취소되었습니다" + +msgid "Additional process preset" +msgstr "추가 프로세스 사전 설정" + +msgid "Remove parameter" +msgstr "매개 변수 제거" + +msgid "to" +msgstr "으로" + +msgid "Remove height range" +msgstr "높이 범위 제거" + +msgid "Add height range" +msgstr "높이 범위 추가" + +msgid "Invalid numeric." +msgstr "잘못된 숫자입니다." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "하나의 셀은 동일한 열에 있는 하나 이상의 셀에만 복사할 수 있습니다" + +msgid "multiple cells copy is not supported" +msgstr "다중 셀 복사는 지원되지 않습니다" + +msgid "Outside" +msgstr "외부" + +msgid "Layer height" +msgstr "레이어 높이" + +msgid "Wall loops" +msgstr "벽 루프" + +msgid "Infill density(%)" +msgstr "채우기 밀도(%)" + +msgid "Auto Brim" +msgstr "자동 브림" + +msgid "Mouse ear" +msgstr "생쥐 귀" + +msgid "Outer brim only" +msgstr "외부 브림만" + +msgid "Inner brim only" +msgstr "내부 브림만" + +msgid "Outer and inner brim" +msgstr "내부와 외부 브림" + +msgid "No-brim" +msgstr "사용안함" + +msgid "Outer wall speed" +msgstr "외벽 속도" + +msgid "Plate" +msgstr "플레이트" + +msgid "Brim" +msgstr "브림" + +msgid "Object/Part Setting" +msgstr "개체/부품 설정" + +msgid "Reset parameter" +msgstr "매개변수 초기화" + +msgid "Multicolor Print" +msgstr "멀티컬러 출력" + +msgid "Line Type" +msgstr "선 유형" + +msgid "More" +msgstr "더보기" + +msgid "Open Preferences." +msgstr "기본 설정 열기." + +msgid "Open next tip." +msgstr "다음 팁 열기." + +msgid "Open Documentation in web browser." +msgstr "웹 브라우저에서 문서 열기." + +msgid "Color" +msgstr "색상" + +msgid "Pause" +msgstr "일시 정지" + +msgid "Template" +msgstr "탬플릿" + +msgid "Custom" +msgstr "사용자 정의" + +msgid "Pause:" +msgstr "일시 정지:" + +msgid "Custom Template:" +msgstr "사용자 정의 템플릿:" + +msgid "Custom G-code:" +msgstr "사용자 정의 G코드:" + +msgid "Custom G-code" +msgstr "사용자 정의 G코드" + +msgid "Enter Custom G-code used on current layer:" +msgstr "현재 레이어에 사용될 사용자 정의 G코드 입력:" + +msgid "Jump to Layer" +msgstr "다음 레이어로 이동" + +msgid "Please enter the layer number" +msgstr "레이어 번호를 입력하세요" + +msgid "Add Pause" +msgstr "일시 정지 추가" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "이 레이어의 시작 부분에 일시 정지 명령을 삽입합니다." + +msgid "Add Custom G-code" +msgstr "사용자 정의 G코드 추가" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "이 레이어의 시작 부분에 사용자 정의 G코드를 삽입합니다." + +msgid "Add Custom Template" +msgstr "사용자 정의 템플릿 추가" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "이 레이어의 시작 부분에 사용자 정의 템플릿 G코드를 삽입합니다." + +msgid "Filament " +msgstr "필라멘트 " + +msgid "Change filament at the beginning of this layer." +msgstr "이 레이어의 시작 부분에서 필라멘트를 변경합니다." + +msgid "Delete Pause" +msgstr "일시 정지 삭제" + +msgid "Delete Custom Template" +msgstr "사용자 정의 템플릿 삭제" + +msgid "Edit Custom G-code" +msgstr "사용자 정의 G코드 편집" + +msgid "Delete Custom G-code" +msgstr "사용자 정의 G코드 삭제" + +msgid "Delete Filament Change" +msgstr "필라멘트 변경 삭제" + +msgid "No printer" +msgstr "프린터 없음" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "서버 연결 실패" + +msgid "Check the status of current system services" +msgstr "현재 시스템 서비스 상태 확인" + +msgid "code" +msgstr "코드" + +msgid "Failed to connect to cloud service" +msgstr "클라우드 서비스에 연결하지 못했습니다" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "클라우드 서비스 상태를 보려면 위의 하이퍼링크를 클릭하세요" + +msgid "Failed to connect to the printer" +msgstr "프린터 연결 실패" + +msgid "Connection to printer failed" +msgstr "프린터 연결 실패" + +msgid "Please check the network connection of the printer and Orca." +msgstr "프린터와 Snapmaker Orca의 네트워크 연결을 확인하세요." + +msgid "Connecting..." +msgstr "연결 중..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "비어 있음" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "자동 리필" + +msgid "AMS not connected" +msgstr "AMS가 연결되지 않음" + +msgid "Load" +msgstr "불러오기" + +msgid "Unload" +msgstr "언로드" + +msgid "Ext Spool" +msgstr "외부 스풀" + +msgid "Tips" +msgstr "팁" + +msgid "Guide" +msgstr "가이드" + +msgid "Retry" +msgstr "재시도" + +msgid "Calibrating AMS..." +msgstr "AMS 교정 중..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "교정하는 동안 문제가 발생했습니다. 솔루션을 보려면 클릭하세요." + +msgid "Calibrate again" +msgstr "재교정" + +msgid "Cancel calibration" +msgstr "교정 취소" + +msgid "Idling..." +msgstr "대기 중..." + +msgid "Heat the nozzle" +msgstr "노즐 가열" + +msgid "Cut filament" +msgstr "필라멘트 자르기" + +msgid "Pull back current filament" +msgstr "현재 필라멘트를 뒤로 당깁니다" + +msgid "Push new filament into extruder" +msgstr "새로운 필라멘트를 압출기에 밀어 넣습니다" + +msgid "Purge old filament" +msgstr "오래된 필라멘트 제거" + +msgid "Feed Filament" +msgstr "필라멘트 공급" + +msgid "Confirm extruded" +msgstr "압출 확인" + +msgid "Check filament location" +msgstr "필라멘트 위치 확인" + +msgid "Grab new filament" +msgstr "새 필라멘트 가져오기" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"AMS 슬롯을 선택한 다음 '로드' 또는 '언로드' 버튼을 누르면 필라멘트를 자동으" +"로 로드하거나 언로드할 수 있습니다." + +msgid "Edit" +msgstr "편집" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"선택한 모든 물체는 잠긴 플레이트에 있습니다,\n" +"이러한 개체에 대해 자동 정렬을 수행할 수 없습니다." + +msgid "No arrangable objects are selected." +msgstr "정렬 가능한 개체를 선택하지 않았습니다." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"이 플레이트는 잠겨 있습니다,\n" +"이 플레이트에서 자동 정렬을 할 수 없습니다." + +msgid "Arranging..." +msgstr "정렬 중..." + +msgid "Arranging" +msgstr "정렬 중" + +msgid "Arranging canceled." +msgstr "정렬 취소됨." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"정렬은 완료되었지만 배치가 안 된 항목이 있습니다. 간격을 줄이고 다시 시도하세" +"요." + +msgid "Arranging done." +msgstr "정렬 완료." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "정렬에 실패했습니다. 개체 형상을 처리할 때 일부 예외를 발견했습니다." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"정렬이 단일 플레이트에 들어갈 수 없는 다음 개체를 무시했습니다:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"선택한 모든 물체는 잠긴 플레이트에 있습니다,\n" +"이러한 개체에 대해 자동 방향 지정을 수행할 수 없습니다." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"이 플레이트는 잠겨 있습니다,\n" +"이 플레이트에서 자동 방향 지정을 할 수 없습니다." + +msgid "Orienting..." +msgstr "방향 지정 중..." + +msgid "Orienting" +msgstr "방향 지정 중" + +msgid "Orienting canceled." +msgstr "방향지정이 취소되었습니다." + +msgid "Filling" +msgstr "채우기" + +msgid "Bed filling canceled." +msgstr "베드 채우기 취소됨." + +msgid "Bed filling done." +msgstr "베드 채우기 완료." + +msgid "Searching for optimal orientation" +msgstr "최적의 방향 검색" + +msgid "Orientation search canceled." +msgstr "방향 검색이 취소되었습니다." + +msgid "Orientation found." +msgstr "방향을 찾았습니다." + +msgid "Logging in" +msgstr "로그인 중" + +msgid "Login failed" +msgstr "로그인 실패" + +msgid "Please check the printer network connection." +msgstr "프린터 네트워크 연결을 확인하세요." + +msgid "Abnormal print file data. Please slice again." +msgstr "비정상적인 출력 파일 데이터: 다시 슬라이스하세요." + +msgid "Task canceled." +msgstr "작업 취소됨." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"업로드 작업 시간이 초과되었습니다.네트워크 상태를 확인하고 다시 시도하세요." + +msgid "Cloud service connection failed. Please try again." +msgstr "클라우드 서비스 연결에 실패했습니다. 다시 시도하세요." + +msgid "Print file not found. please slice again." +msgstr "출력파일을 찾을 수 없습니다. 다시 슬라이스하세요." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"출력 파일이 최대 허용 크기 (1GB) 를 초과했습니다.모델을 단순화하고 다시 슬라" +"이스하세요." + +msgid "Failed to send the print job. Please try again." +msgstr "출력 작업을 전송하지 못했습니다. 다시 시도하세요." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "파일을 ftp에 업로드하지 못했습니다. 다시 시도해 주세요." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "위의 링크를 클릭하여 뱀부랩 서버의 현재 상태를 확인하세요." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "출력 파일의 크기가 너무 큽니다. 파일 크기를 조정한 후 다시 시도하세요." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "출력 파일을 찾을 수 없습니다. 다시 슬라이스하여 출력전송하세요." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"출력 파일을 FTP에 업로드하지 못했습니다. 네트워크 상태를 확인하신 후 다시 시" +"도해 주세요." + +msgid "Sending print job over LAN" +msgstr "LAN을 통해 출력 작업 전송 중" + +msgid "Sending print job through cloud service" +msgstr "클라우드 서비스를 통해 출력 작업 전송 중" + +msgid "Print task sending times out." +msgstr "출력 작업 전송 시간이 초과되었습니다." + +msgid "Service Unavailable" +msgstr "서비스 사용 불가" + +msgid "Unknown Error." +msgstr "알 수 없는 오류." + +msgid "Sending print configuration" +msgstr "출력 구성 전송 중" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "성공적으로 보냈습니다. %s에서 자동으로 장치 페이지로 이동합니다" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "성공적으로 전송되었습니다. %ss의 다음 페이지로 자동으로 이동합니다" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "LAN을 통해 출력하기 전에 SD 카드를 삽입해야 합니다." + +msgid "Sending gcode file over LAN" +msgstr "LAN을 통해 G코드 파일 전송 중" + +msgid "Sending gcode file to sdcard" +msgstr "SD 카드로 G코드 파일 전송 중" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "성공적으로 보냈습니다. %s초 내에 현재 페이지가 닫힙니다" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "프린터로 전송 전에 SD 카드를 삽입해야 합니다." + +msgid "Importing SLA archive" +msgstr "SLA 압축파일 가져오는 중" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"SLA 압축파일에 사전 설정이 없습니다. 해당 SLA 압축파일를 가져오기 전에 먼저 " +"일부 SLA 프린터 사전 설정을 활성화하세요." + +msgid "Importing canceled." +msgstr "가져오기가 취소되었습니다." + +msgid "Importing done." +msgstr "가져오기가 완료되었습니다." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"가져온 SLA 압축파일에 사전 설정이 없습니다. 현재 SLA 사전 설정이 예비로 사용" +"되었습니다." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "베드에 다중 부품 개체가 있는 SLA 프로젝트를 로드할 수 없습니다" + +msgid "Please check your object list before preset changing." +msgstr "사전 설정을 변경하기 전에 개체 목록을 확인하세요." + +msgid "Attention!" +msgstr "주목!" + +msgid "Downloading" +msgstr "다운로드 중" + +msgid "Download failed" +msgstr "다운로드 실패" + +msgid "Cancelled" +msgstr "취소됨" + +msgid "Install successfully." +msgstr "성공적으로 설치하였습니다." + +msgid "Installing" +msgstr "설치 중" + +msgid "Install failed" +msgstr "설치 실패" + +msgid "Portions copyright" +msgstr "일부 저작권" + +msgid "Copyright" +msgstr "저작권" + +msgid "License" +msgstr "라이센스" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca is licensed under " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, version 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca is Based on Orca Slicer" + +msgid "Libraries" +msgstr "라이브러리" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"이 소프트웨어는 저작권 및 기타 소유권이 해당 소유자에게 속한 오픈 소스 구성 " +"요소를 사용합니다" + +#, c-format, boost-format +msgid "About %s" +msgstr "%s 정보" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "" +"Snapmaker Orca는 BambuStudio, PrusaSlicer 및 SuperSlicer를 기반으로 합니다." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "BambuStudio는 PrusaResearch의 PrusaSlicer를 기반으로 합니다." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer는 Alessandro Ranellucci의 Slic3r을 기반으로 합니다." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r은 Alessandro Ranellucci가 다른 많은 기여자들의 도움을 받아 만들었습니" +"다." + +msgid "Version" +msgstr "버전" + +msgid "AMS Materials Setting" +msgstr "AMS 재료 설정" + +msgid "Confirm" +msgstr "확인" + +msgid "Close" +msgstr "닫기" + +msgid "Colour" +msgstr "색상" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"노즐\n" +"온도" + +msgid "max" +msgstr "최대" + +msgid "min" +msgstr "최소" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "입력 값은 %1%보다 크고 %2%보다 작아야 합니다" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "출력 중에는 AMS 슬롯 정보 설정이 지원되지 않습니다" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "동적 유량 교정 계수" + +msgid "PA Profile" +msgstr "PA 사전설정" + +msgid "Factor K" +msgstr "K 계수" + +msgid "Factor N" +msgstr "N 계수" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "출력 중에는 가상 슬롯 정보 설정이 지원되지 않습니다" + +msgid "Are you sure you want to clear the filament information?" +msgstr "정말 필라멘트 정보를 삭제하시겠습니까?" + +msgid "You need to select the material type and color first." +msgstr "재료 유형과 색상을 먼저 선택해야 합니다." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "유효한 값을 입력하세요 (%.1f~%.1f 사이의 K)" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "유효한 값을 입력하세요 (%.1f~%.1f 사이의 K, %.1f~%.1f 사이의 N)" + +msgid "Other Color" +msgstr "기타 색상" + +msgid "Custom Color" +msgstr "사용자 정의 색상" + +msgid "Dynamic flow calibration" +msgstr "동적 유량 교정" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"노즐 온도와 최대 체적 속도는 교정 결과에 영향을 미칩니다. 실제 출력과 동일한 " +"값을 입력하세요. 필라멘트 사전 설정을 선택하여 자동으로 입력할 수 있습니다." + +msgid "Nozzle Diameter" +msgstr "노즐 직경" + +msgid "Bed Type" +msgstr "베드 유형" + +msgid "Nozzle temperature" +msgstr "노즐 온도" + +msgid "Bed Temperature" +msgstr "베드 온도" + +msgid "Max volumetric speed" +msgstr "최대 체적 속도" + +msgid "℃" +msgstr "℃" + +msgid "Bed temperature" +msgstr "베드 온도" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "교정 시작" + +msgid "Next" +msgstr "다음" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"교정이 완료되었습니다. 당신의 고온 베드에서 아래 사진과 같이 가장 균일한 압" +"출 선을 찾아 왼쪽에 있는 값을 입력 상자의 K 계수에 채워주세요." + +msgid "Save" +msgstr "저장" + +msgid "Last Step" +msgstr "마지막 단계" + +msgid "Example" +msgstr "예시" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "교정 중... %d%%" + +msgid "Calibration completed" +msgstr "교정 완료" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s 은(는) %s 을(를) 지원하지 않습니다" + +msgid "Dynamic flow Calibration" +msgstr "동적 유량 교정" + +msgid "Step" +msgstr "단계" + +msgid "AMS Slots" +msgstr "AMS 슬롯" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "참고: 동일한 재료 유형으로 장착된 AMS 슬롯만 선택할 수 있습니다." + +msgid "Enable AMS" +msgstr "AMS 사용" + +msgid "Print with filaments in the AMS" +msgstr "AMS의 필라멘트로 출력" + +msgid "Disable AMS" +msgstr "AMS 미사용" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "섀시 뒷면에 필라멘트를 장착한 상태에서 출력" + +msgid "Current Cabin humidity" +msgstr "현재 기내 습도" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"건조제가 너무 젖으면 교체하세요. 뚜껑이 열려 있거나 건조제 팩을 교체한 경우, " +"습기를 흡수하는 데 몇 시간이 걸리는 경우, 낮은 온도로 인해 공정이 느려지는 경" +"우 등에는 표시기가 정확하게 표시되지 않을 수 있습니다." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "출력 작업에 사용되는 필라멘트에 사용할 AMS 슬롯 구성" + +msgid "Filament used in this print job" +msgstr "이 출력 작업에 사용된 필라멘트" + +msgid "AMS slot used for this filament" +msgstr "이 필라멘트에 사용되는 AMS 슬롯" + +msgid "Click to select AMS slot manually" +msgstr "클릭하여 AMS 슬롯을 수동으로 선택합니다" + +msgid "Do not Enable AMS" +msgstr "AMS 비활성" + +msgid "Print using materials mounted on the back of the case" +msgstr "케이스 뒷면에 장착된 재료를 사용하여 출력" + +msgid "Print with filaments in ams" +msgstr "AMS의 필라멘트로 출력" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "섀시 뒷면에 필라멘트를 장착하여 출력" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "현재 재료가 소진되면 프린터는 다음 순서로 계속 출력합니다." + +msgid "Group" +msgstr "그룹" + +msgid "The printer does not currently support auto refill." +msgstr "프린터는 현재 자동 리필을 지원하지 않습니다." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "AMS 필라멘트 백업이 활성화되지 않았습니다. AMS 설정에서 활성화하세요." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"AMS에 두 개의 동일한 필라멘트가 있는 경우 AMS 필라멘트 백업이 활성화됩니" +"다. \n" +"(현재 동일한 브랜드, 재질, 색상의 소모품 자동 공급 지원)" + +msgid "DRY" +msgstr "건조함" + +msgid "WET" +msgstr "습함" + +msgid "AMS Settings" +msgstr "AMS 설정" + +msgid "Insertion update" +msgstr "삽입 업데이트" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"AMS는 새 뱀부랩 필라멘트를 삽입할 때 필라멘트 정보를 자동으로 읽습니다. 이 작" +"업은 약 20초 정도 걸립니다." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"참고: 출력 중에 새 필라멘트를 삽입하면 출력가 완료될 때까지 AMS가 자동으로 정" +"보를 읽지 않습니다." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"새 필라멘트를 삽입할 때 AMS는 정보를 자동으로 읽지 않고 사용자가 수동으로 입" +"력할 수 있도록 비워 둡니다." + +msgid "Power on update" +msgstr "업데이트 전원 유지" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"AMS는 시동 시 삽입된 필라멘트의 정보를 자동으로 읽습니다. 1분 정도 걸립니다. " +"판독 프로세스는 필라멘트 스풀을 롤링합니다." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"AMS는 시동 중에 삽입된 필라멘트의 정보를 자동으로 읽지 않으며 마지막 종료 전" +"에 기록된 정보를 계속 사용합니다." + +msgid "Update remaining capacity" +msgstr "남은 용량 업데이트" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"AMS는 필라멘트 정보가 업데이트된 후 뱀부 필라멘트의 잔여 용량을 추정할 것입니" +"다. 출력하는 동안 남은 용량이 자동으로 업데이트됩니다." + +msgid "AMS filament backup" +msgstr "AMS 필라멘트 백업" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"AMS는 현재 필라멘트가 소진되면 동일한 필라멘트 특성을 가진 다른 스풀로 자동으" +"로 이동합니다" + +msgid "Air Printing Detection" +msgstr "에어 프린팅 감지" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"막힘 및 필라멘트 연삭을 감지하여 출력를 즉시 중단하여 시간과 필라멘트를 절약" +"합니다." + +msgid "File" +msgstr "파일" + +msgid "Calibration" +msgstr "교정" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"플러그인을 다운로드하지 못했습니다. 방화벽 설정 및 VPN 소프트웨어를 확인하고 " +"확인한 후 다시 시도하세요." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"플러그인을 설치하지 못했습니다. 안티바이러스 소프트웨어에 의해 차단 또는 삭제" +"되었는지 확인하세요." + +msgid "click here to see more info" +msgstr "자세한 내용을 보려면 여기를 클릭하세요" + +msgid "Please home all axes (click " +msgstr "모든 축을 홈으로 이동하세요(클릭 " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +")을 클릭하여 툴헤드의 위치를 찾습니다. 이렇게 하면 장치가 출력 가능한 경계를 " +"벗어나 장치가 마모되는 것을 방지할 수 있습니다." + +msgid "Go Home" +msgstr "홈으로" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"오류가 발생했습니다. 시스템 메모리가 부족하거나 프로그램의 버그일 수 있습니다" + +msgid "Please save project and restart the program. " +msgstr "프로젝트를 저장하고 프로그램을 다시 시작하세요. " + +msgid "Processing G-Code from Previous file..." +msgstr "이전 파일의 G코드를 처리하는 중..." + +msgid "Slicing complete" +msgstr "슬라이싱 완료" + +msgid "Access violation" +msgstr "액세스 위반" + +msgid "Illegal instruction" +msgstr "잘못된 명령" + +msgid "Divide by zero" +msgstr "0으로 나누기" + +msgid "Overflow" +msgstr "압출과다" + +msgid "Underflow" +msgstr "압출부족" + +msgid "Floating reserved operand" +msgstr "떠있는 예약 피연산자" + +msgid "Stack overflow" +msgstr "스택 오버플로" + +msgid "Running post-processing scripts" +msgstr "사후 처리 스크립트 실행중" + +msgid "Successfully executed post-processing script" +msgstr "성공적으로 실행된 후처리 스크립트" + +msgid "Unknown error occured during exporting G-code." +msgstr "G코드를 내보내는 동안 알 수 없는 오류가 발생했습니다." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"임시 G코드를 출력 G코드로 복사하지 못했습니다. SD 카드가 쓰기 잠겨 있나요?\n" +"오류 메시지입니다: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"임시 G코드를 출력 G코드로 복사하지 못했습니다. 대상 장치에 문제가 있을 수 있" +"으니 다시 내보내거나 다른 장치를 사용해 보세요. 손상된 출력 G코드는 %1%.tmp" +"에 있습니다." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"선택한 대상 폴더로 복사한 후 G코드의 이름을 바꾸지 못했습니다. 현재 경로는 " +"%1%.tmp입니다. 내보내기를 다시 시도하세요." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"임시 G코드의 복사가 완료되었지만 복사 확인 중에 %1%의 원본 코드를 열 수 없습" +"니다. 출력 G-코드는 %2%.tmp에 있습니다." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"임시 G코드 복사가 완료되었지만 복사 확인 중에 내보낸 코드를 열 수 없습니다. " +"출력 G-코드는 %1%.tmp에 있습니다." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "%1%로 내보낸 G코드 파일" + +msgid "Unknown error when export G-code." +msgstr "G코드를 내보낼 때 알 수 없는 오류가 발생했습니다." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"G코드 파일을 저장하지 못했습니다.\n" +"오류 메시지: %1%.\n" +"원본 파일 %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "출력 G코드에 임시 G코드를 복사하지 못했습니다" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "%1%로 업로드 예약 중. 윈도우 -> 호스트 업로드 출력 대기열 참조" + +msgid "Device" +msgstr "장치" + +msgid "Task Sending" +msgstr "작업 전송중" + +msgid "Task Sent" +msgstr "작업 전송됨" + +msgid "Edit multiple printers" +msgstr "여러 프린터 편집" + +msgid "Select connected printers (0/6)" +msgstr "연결된 프린터 선택 (0/6)" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "연결된 프린터 선택 (%d/6)" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "선택할 수 있는 최대 프린터 수는 %d입니다" + +msgid "Offline" +msgstr "오프라인" + +msgid "No task" +msgstr "작업 없음" + +msgid "View" +msgstr "시점" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "프린터 편집" + +msgid "Device Name" +msgstr "장치 이름" + +msgid "Task Name" +msgstr "작업 이름" + +msgid "Device Status" +msgstr "장치 상태" + +msgid "Actions" +msgstr "동작" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "여기에서 관리할 장치를 선택하세요 (최대 6개 장치)" + +msgid "Add" +msgstr "추가" + +msgid "Idle" +msgstr "대기 중" + +msgid "Printing" +msgstr "출력 중" + +msgid "Upgrading" +msgstr "업그레이드 하기" + +msgid "Incompatible" +msgstr "호환되지 않음" + +msgid "syncing" +msgstr "동기화" + +msgid "Printing Finish" +msgstr "인쇄 완료" + +msgid "Printing Failed" +msgstr "인쇄 실패" + +msgid "Printing Pause" +msgstr "인쇄 일시중지" + +msgid "Prepare" +msgstr "준비 하기" + +msgid "Slicing" +msgstr "슬라이싱" + +msgid "Pending" +msgstr "대기중" + +msgid "Sending" +msgstr "전송중" + +msgid "Sending Finish" +msgstr "보내기 완료" + +msgid "Sending Cancel" +msgstr "보내기 취소" + +msgid "Sending Failed" +msgstr "전송 실패" + +msgid "Print Success" +msgstr "인쇄 성공" + +msgid "Print Failed" +msgstr "인쇄 실패" + +msgid "Removed" +msgstr "삭제됨" + +msgid "Resume" +msgstr "계속" + +msgid "Stop" +msgstr "정지" + +msgid "Task Status" +msgstr "작업 상태" + +msgid "Sent Time" +msgstr "전송한 시간" + +msgid "There are no tasks to be sent!" +msgstr "전송할 작업이 없습니다!" + +msgid "No historical tasks!" +msgstr "작업 내역이 없습니다!" + +msgid "Loading..." +msgstr "로딩 중..." + +msgid "No AMS" +msgstr "AMS 없음" + +msgid "Send to Multi-device" +msgstr "여러 장치로 보내기" + +msgid "Preparing print job" +msgstr "출력 작업 준비 중" + +msgid "Abnormal print file data. Please slice again" +msgstr "비정상적인 출력 파일 데이터입니다. 다시 슬라이스하세요" + +msgid "There is no device available to send printing." +msgstr "인쇄를 전송할 수 있는 장치가 없습니다." + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "동시에 사용 중인 프린터의 수는 0과 같을 수 없습니다." + +msgid "Use External Spool" +msgstr "외부 스풀 사용" + +msgid "Use AMS" +msgstr "AMS 사용" + +msgid "Select Printers" +msgstr "프린터 선택" + +msgid "Ams Status" +msgstr "AMS 상태" + +msgid "Printing Options" +msgstr "인쇄 옵션" + +msgid "Bed Leveling" +msgstr "베드 레벨링" + +msgid "Timelapse" +msgstr "타임랩스" + +msgid "Flow Dynamic Calibration" +msgstr "유량 동적 보정" + +msgid "Send Options" +msgstr "전송 옵션" + +msgid "Send to" +msgstr "받는사람" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"printers at the same time. (It depends on how many devices can undergo " +"heating at the same time.)" + +msgid "Wait" +msgstr "Wait" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minute each batch. (It depends on how long it takes to complete heating.)" + +msgid "Send" +msgstr "전송" + +msgid "Name is invalid;" +msgstr "이름이 잘못되었습니다;" + +msgid "illegal characters:" +msgstr "잘못된 문자:" + +msgid "illegal suffix:" +msgstr "잘못된 접미사:" + +msgid "The name is not allowed to be empty." +msgstr "이름은 비워 둘 수 없습니다." + +msgid "The name is not allowed to start with space character." +msgstr "이름은 공백으로 시작할 수 없습니다." + +msgid "The name is not allowed to end with space character." +msgstr "이름은 공백으로 끝날 수 없습니다." + +msgid "The name length exceeds the limit." +msgstr "이름 길이가 제한을 초과합니다." + +msgid "Origin" +msgstr "원점" + +msgid "Size in X and Y of the rectangular plate." +msgstr "직사각형 플레이트의 X 및 Y 크기." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "직사각형의 전면 왼쪽 모서리에서 G코드 좌표 0,0 까지의 거리입니다." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "출력 베드의 직경입니다. 원점(0,0)이 중심에 있다고 가정합니다." + +msgid "Rectangular" +msgstr "직사각형" + +msgid "Circular" +msgstr "원형" + +msgid "Load shape from STL..." +msgstr "STL에서 모양 불러오기..." + +msgid "Settings" +msgstr "설정" + +msgid "Texture" +msgstr "텍스처" + +msgid "Remove" +msgstr "제거" + +msgid "Not found:" +msgstr "찾을 수 없음:" + +msgid "Model" +msgstr "모델" + +msgid "Choose an STL file to import bed shape from:" +msgstr "베드 모양을 불러올 STL 파일 선택:" + +msgid "Invalid file format." +msgstr "잘못된 파일 형식입니다." + +msgid "Error! Invalid model" +msgstr "오류! 잘못된 모델입니다" + +msgid "The selected file contains no geometry." +msgstr "선택한 파일에 형상이 없습니다." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "선택한 파일에 여러 개의 분리된 영역이 있습니다. 지원되지 않습니다." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "베드 텍스처를 가져올 파일을 선택하세요 (PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "베드 모델을 가져올 STL 파일 선택:" + +msgid "Bed Shape" +msgstr "베드 모양" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "권장 최저 온도는 190도 미만 또는 권장 최고 온도는 300도 이상입니다.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "권장 최저 온도는 권장 최고 온도보다 높을 수 없습니다.\n" + +msgid "Please check.\n" +msgstr "확인해 보세요.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"온도가 권장 범위를 벗어나면 노즐이 막힐 수 있습니다.\n" +"출력 시 어떤 온도를 사용할지 확인하세요.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "이 필라멘트 유형의 권장 노즐 온도는 [%d, %d]°C입니다" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"최대 체적 속도가 너무 작습니다.\n" +"0.5로 재설정" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"현재 챔버 온도가 재료의 안전 온도보다 높으므로 재료가 부드러워지고 막힐 수 있" +"습니다. 재료의 최대 안전 온도는 %d입니다" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"레이어 높이가 너무 작습니다.\n" +"0.2로 재설정" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"다림질 간격이 너무 작습니다.\n" +"0.1로 재설정" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"초기 레이어 높이 0은 잘못된 값입니다.\n" +"\n" +"첫 번째 레이어 높이가 0.2로 재설정됩니다." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"이 설정은 몇몇 작은 값을 가진 모델 크기 조정에만 사용됩니다.\n" +"예를 들어, 모델 크기에 작은 오류가 있고 조립하기 어려운 경우입니다.\n" +"큰 사이즈의 튜닝은 모델 배율 기능을 사용해주세요.\n" +"\n" +"값이 0으로 재설정됩니다." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"너무 큰 코끼리 발 보정은 부적절합니다.\n" +"코끼리 발 효과가 정말 심각한 경우 다른 설정을 확인하세요.\n" +"예를 들어, 침대 온도가 너무 높은지 여부를 확인합니다.\n" +"\n" +"값이 0으로 재설정됩니다." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" +"세로 셸 두께가 모두로 설정된 경우 대체 여분의 벽이 제대로 작동하지 않습니다. " + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"이 설정을 자동으로 변경하시겠습니까?\n" +"예 - 수직 셸 두께 보장을 보통으로 변경하고 대체 추가 벽을 활성화합니다\n" +"아니요 - 대체 여분의 벽을 사용하지 않습니다" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"적응형 레이어 높이 또는 독립적 지지대 레이어 높이가 켜져 있으면 프라임 타워" +"가 작동하지 않습니다.\n" +"어떤 것을 유지하시겠습니까?\n" +"예 - 프라임 타워 유지\n" +"아니요 - 적응형 레이어 높이 및 독립적 지지대 레이어 높이 유지" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"적응형 레이어 높이가 켜져 있으면 프라임 타워가 작동하지 않습니다.\n" +"어떤 것을 유지하시겠습니까?\n" +"예 - 프라임 타워 유지\n" +"아니요 - 적응형 레이어 높이 유지" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"독립적 지지대 레이어 높이가 켜져 있으면 프라임 타워가 작동하지 않습니다.\n" +"어떤 것을 유지하시겠습니까?\n" +"예 - 프라임 타워 유지\n" +"아니요 - 독립적 지지대 레이어 높이 유지" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"개체별 출력시 압출기가 스커트와 충돌할 수 있습니다.\n" +"스커트 레이어를 1로 재설정하여 이를 방지합니다." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"심_경사_시작_높이는 레이어_높이보다 작아야 합니다.\n" +"0으로 재설정합니다." + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"나선형 모드는 벽 루프 1, 지지대 비활성화, 상단 셸 레이어 0, 드문 채우기 밀도 " +"0, 타임랩스 유형이 기존인 경우에만 작동합니다." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " 그러나 I3 구조의 장치는 타임랩스 비디오를 생성하지 않습니다." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"이 설정을 자동으로 변경하시겠습니까?\n" +"예 - 이 설정을 변경하고 나선 모드를 자동으로 활성화합니다\n" +"아니오 - 이번에는 나선 모드 사용을 포기합니다" + +msgid "Auto bed leveling" +msgstr "자동 베드 레벨링" + +msgid "Heatbed preheating" +msgstr "베드 예열" + +msgid "Sweeping XY mech mode" +msgstr "스위핑 XY 기계 모드" + +msgid "Changing filament" +msgstr "필라멘트 변경 중" + +msgid "M400 pause" +msgstr "M400 일시 정지" + +msgid "Paused due to filament runout" +msgstr "필라멘트 소진으로 일시 정지됨" + +msgid "Heating hotend" +msgstr "핫엔드 가열 중" + +msgid "Calibrating extrusion" +msgstr "압출 교정 중" + +msgid "Scanning bed surface" +msgstr "베드 표면 스캔 중" + +msgid "Inspecting first layer" +msgstr "첫 번째 레이어 검사 중" + +msgid "Identifying build plate type" +msgstr "빌드 플레이트 유형 식별 중" + +msgid "Calibrating Micro Lidar" +msgstr "마이크로 라이다 보정 중" + +msgid "Homing toolhead" +msgstr "툴헤드 홈으로 이동 중" + +msgid "Cleaning nozzle tip" +msgstr "노즐 팁 청소 중" + +msgid "Checking extruder temperature" +msgstr "압출기 온도 확인 중" + +msgid "Printing was paused by the user" +msgstr "사용자가 출력을 일시 정지했습니다" + +msgid "Pause of front cover falling" +msgstr "전면 커버 분리로 일시 정지됨" + +msgid "Calibrating the micro lida" +msgstr "마이크로 라이다 교정" + +msgid "Calibrating extrusion flow" +msgstr "압출 유량 교정" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "노즐 온도 오작동으로 일시 정지됨" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "히트 베드 온도 오작동으로 일시 정지됨" + +msgid "Filament unloading" +msgstr "필라멘트 빼는 중" + +msgid "Skip step pause" +msgstr "단계 건너뛰기 일시중지" + +msgid "Filament loading" +msgstr "필라멘트 넣는 중" + +msgid "Motor noise calibration" +msgstr "모터 소음 교정" + +msgid "Paused due to AMS lost" +msgstr "AMS 정보 손실로 인해 일시중지됨" + +msgid "Paused due to low speed of the heat break fan" +msgstr "느린 방열팬 속도로 일시중지됨" + +msgid "Paused due to chamber temperature control error" +msgstr "챔버 온도 제어 오류로 인해 일시 중지됨" + +msgid "Cooling chamber" +msgstr "챔버 냉각" + +msgid "Paused by the Gcode inserted by user" +msgstr "사용자가 삽입한 G코드로 인해 일시중지됨" + +msgid "Motor noise showoff" +msgstr "모터 소음 표시" + +msgid "Nozzle filament covered detected pause" +msgstr "노즐 필라멘트가 덮여있는게 감지되어 일시중지" + +msgid "Cutter error pause" +msgstr "커터 오류 일시중지" + +msgid "First layer error pause" +msgstr "첫번째 레이어 오류 일시중지" + +msgid "Nozzle clog pause" +msgstr "노즐 막힘 일시 중지" + +msgid "Unknown" +msgstr "알 수 없는" + +msgid "Fatal" +msgstr "치명적" + +msgid "Serious" +msgstr "심각한" + +msgid "Common" +msgstr "일반적" + +msgid "Update successful." +msgstr "업데이트에 성공했습니다." + +msgid "Downloading failed." +msgstr "다운로드 실패." + +msgid "Verification failed." +msgstr "확인에 실패했습니다." + +msgid "Update failed." +msgstr "업데이트에 실패했습니다." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"현재 챔버 온도 또는 목표 챔버 온도가 45℃를 초과합니다. 압출기 막힘을 방지하" +"기 위해 저온 필라멘트(PLA/PETG/TPU)를 로드할 수 없습니다." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"압출기에 저온 필라멘트(PLA/PETG/TPU)가 장착되어 있습니다. 압출기 막힘을 방지" +"하기 위해 챔버 온도를 45℃ 이상으로 설정할 수 없습니다." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"챔버 온도를 40℃ 이하로 설정하면 챔버 온도 제어가 활성화되지 않습니다. 그리고 " +"목표 챔버 온도는 자동으로 0℃ 로 설정됩니다." + +msgid "Failed to start printing job" +msgstr "출력 작업을 시작하지 못했습니다" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "이 교정은 현재 선택된 노즐 직경을 지원하지 않습니다" + +msgid "Current flowrate cali param is invalid" +msgstr "현재 유량 교정 매개변수가 잘못되었습니다" + +msgid "Selected diameter and machine diameter do not match" +msgstr "선택한 직경과 장치의 직경이 일치하지 않습니다" + +msgid "Failed to generate cali gcode" +msgstr "교정 G코드를 생성하지 못했습니다" + +msgid "Calibration error" +msgstr "교정 오류" + +msgid "TPU is not supported by AMS." +msgstr "TPU는 AMS에서 지원되지 않습니다." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "뱀부 PET-CF/PA6-CF는 AMS에서 지원되지 않습니다." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"습한 PVA는 유연해져서 AMS 내부에 달라붙게 됩니다. 사용하기 전에 건조시키십시" +"오." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"CF/GF 필라멘트는 단단하고 부서지기 쉽습니다. AMS에 걸리거나 부러지기 쉬우므" +"로 주의하여 사용하세요." + +msgid "default" +msgstr "기본값" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "사용자 지정 G코드 편집 (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "기본 제공 플레이스홀더 (항목을 두 번 클릭하여 G코드에 추가)" + +msgid "Search gcode placeholders" +msgstr "G코드 자리 표시자 검색" + +msgid "Add selected placeholder to G-code" +msgstr "선택한 플레이스홀더를 G코드에 추가" + +msgid "Select placeholder" +msgstr "자리 표시자 선택" + +msgid "[Global] Slicing State" +msgstr "[글로벌] 슬라이싱 상태" + +msgid "Read Only" +msgstr "읽기 전용" + +msgid "Read Write" +msgstr "읽기 쓰기" + +msgid "Slicing State" +msgstr "슬라이싱 상태" + +msgid "Print Statistics" +msgstr "통계 출력" + +msgid "Objects Info" +msgstr "개체 정보" + +msgid "Dimensions" +msgstr "치수" + +msgid "Temperatures" +msgstr "온도" + +msgid "Timestamps" +msgstr "타임스탬프" + +#, boost-format +msgid "Specific for %1%" +msgstr "%1%에 해당함" + +msgid "Presets" +msgstr "사전 설정" + +msgid "Print settings" +msgstr "프린터 설정" + +msgid "Filament settings" +msgstr "필라멘트 설정" + +msgid "SLA Materials settings" +msgstr "SLA 자료 설정" + +msgid "Printer settings" +msgstr "프린터 설정" + +msgid "parameter name" +msgstr "매개변수 이름" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s 는 백분율일 수 없습니다" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "%s 값이 범위를 벗어났습니다. 계속하시겠습니까?" + +msgid "Parameter validation" +msgstr "매개변수 유효성 검사" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "값 %s이 범위를 벗어났습니다. 유효한 범위는 %d에서 %d까지입니다." + +msgid "Value is out of range." +msgstr "값이 범위를 벗어났습니다." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"%s%% 또는 %s %s입니까?\n" +"%s%%에 대해 예,\n" +"%s %s에 대해 아니요." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "잘못된 입력 형식. 다음과 같은 벡터 형식의 치수를 입력하십시오: \"%1%\"" + +msgid "Input value is out of range" +msgstr "입력된 값이 범위를 벗어납니다" + +msgid "Some extension in the input is invalid" +msgstr "입력의 일부 확장자가 유효하지 않습니다" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "잘못된 형식입니다. 필요한 벡터 형식: \"%1%\"" + +msgid "Layer Height" +msgstr "레이어 높이" + +msgid "Line Width" +msgstr "선 너비" + +msgid "Fan Speed" +msgstr "팬 속도" + +msgid "Temperature" +msgstr "온도" + +msgid "Flow" +msgstr "유량" + +msgid "Tool" +msgstr "툴" + +msgid "Layer Time" +msgstr "레이어 시간" + +msgid "Layer Time (log)" +msgstr "레이어 시간 (log)" + +msgid "Height: " +msgstr "높이: " + +msgid "Width: " +msgstr "너비: " + +msgid "Speed: " +msgstr "속도: " + +msgid "Flow: " +msgstr "유량: " + +msgid "Layer Time: " +msgstr "레이어 시간: " + +msgid "Fan: " +msgstr "팬: " + +msgid "Temperature: " +msgstr "온도: " + +msgid "Loading G-codes" +msgstr "G코드 불러오는 중" + +msgid "Generating geometry vertex data" +msgstr "기하학 정점 데이터 생성" + +msgid "Generating geometry index data" +msgstr "기하학 색인 데이터 생성" + +msgid "Statistics of All Plates" +msgstr "모든 플레이트 통계" + +msgid "Display" +msgstr "표시" + +msgid "Flushed" +msgstr "버리기" + +msgid "Tower" +msgstr "타워" + +msgid "Total" +msgstr "합계" + +msgid "Total Estimation" +msgstr "추정치 합계" + +msgid "Total time" +msgstr "시간 합계" + +msgid "Total cost" +msgstr "총 비용" + +msgid "Color Scheme" +msgstr "색 구성표" + +msgid "Time" +msgstr "시간" + +msgid "Percent" +msgstr "퍼센트" + +msgid "Used filament" +msgstr "사용된 필라멘트" + +msgid "Layer Height (mm)" +msgstr "레이어 높이(mm)" + +msgid "Line Width (mm)" +msgstr "선 너비(mm)" + +msgid "Speed (mm/s)" +msgstr "속도 (mm/s)" + +msgid "Fan Speed (%)" +msgstr "팬 속도 (%)" + +msgid "Temperature (°C)" +msgstr "온도 (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "체적 유량 (mm³/s)" + +msgid "Travel" +msgstr "이동" + +msgid "Seams" +msgstr "솔기" + +msgid "Retract" +msgstr "후퇴" + +msgid "Unretract" +msgstr "후퇴 취소" + +msgid "Filament Changes" +msgstr "필라멘트 변경" + +msgid "Wipe" +msgstr "닦기" + +msgid "Options" +msgstr "옵션" + +msgid "travel" +msgstr "이동" + +msgid "Extruder" +msgstr "압출기" + +msgid "Filament change times" +msgstr "필라멘트 변경 시간" + +msgid "Cost" +msgstr "비용" + +msgid "Print" +msgstr "출력" + +msgid "Color change" +msgstr "색 변경" + +msgid "Printer" +msgstr "프린터" + +msgid "Custom g-code" +msgstr "사용자 정의 G코드" + +msgid "ToolChange" +msgstr "툴체인지" + +msgid "Time Estimation" +msgstr "추정 시간" + +msgid "Normal mode" +msgstr "일반 모드" + +msgid "Total Filament" +msgstr "총 필라멘트" + +msgid "Model Filament" +msgstr "모델 필라멘트" + +msgid "Prepare time" +msgstr "준비 시간" + +msgid "Model printing time" +msgstr "모델 출력 시간" + +msgid "Switch to silent mode" +msgstr "무음 모드로 전환" + +msgid "Switch to normal mode" +msgstr "일반 모드로 전환" + +msgid "Variable layer height" +msgstr "레이어 높이 가변" + +msgid "Adaptive" +msgstr "적응형" + +msgid "Quality / Speed" +msgstr "품질 / 속도" + +msgid "Smooth" +msgstr "유연" + +msgid "Radius" +msgstr "반경" + +msgid "Keep min" +msgstr "최소로 유지" + +msgid "Left mouse button:" +msgstr "마우스 왼쪽 버튼:" + +msgid "Add detail" +msgstr "세부정보 추가" + +msgid "Right mouse button:" +msgstr "마우스 오른쪽 버튼:" + +msgid "Remove detail" +msgstr "세부정보 삭제" + +msgid "Shift + Left mouse button:" +msgstr "Shift + 마우스 왼쪽 버튼:" + +msgid "Reset to base" +msgstr "기본으로 초기화" + +msgid "Shift + Right mouse button:" +msgstr "Shift + 마우스 오른쪽 버튼:" + +msgid "Smoothing" +msgstr "스무딩" + +msgid "Mouse wheel:" +msgstr "마우스 휠:" + +msgid "Increase/decrease edit area" +msgstr "편집 영역 증가/감소" + +msgid "Sequence" +msgstr "순서" + +msgid "Mirror Object" +msgstr "개체 반전" + +msgid "Tool Move" +msgstr "툴 이동" + +msgid "Tool Rotate" +msgstr "툴 회전" + +msgid "Move Object" +msgstr "개체 이동" + +msgid "Auto Orientation options" +msgstr "자동 방향 지정 옵션" + +msgid "Enable rotation" +msgstr "회전 활성화" + +msgid "Optimize support interface area" +msgstr "지지대 접점 영역 최적화" + +msgid "Orient" +msgstr "방향" + +msgid "Arrange options" +msgstr "정렬 옵션" + +msgid "Spacing" +msgstr "간격" + +msgid "0 means auto spacing." +msgstr "0은 자동 간격을 의미합니다." + +msgid "Auto rotate for arrangement" +msgstr "자동 회전 후 정렬" + +msgid "Allow multiple materials on same plate" +msgstr "동일한 플레이트에 여러 재료 허용" + +msgid "Avoid extrusion calibration region" +msgstr "압출 교정 영역을 피하세요" + +msgid "Align to Y axis" +msgstr "Y축에 정렬" + +msgid "Add plate" +msgstr "플레이트 추가" + +msgid "Auto orient" +msgstr "자동 방향 지정" + +msgid "Arrange all objects" +msgstr "모든 개체 정렬" + +msgid "Arrange objects on selected plates" +msgstr "선택한 플레이트의 개체 정렬" + +msgid "Split to objects" +msgstr "개체로 분할" + +msgid "Split to parts" +msgstr "부품으로 분할" + +msgid "Assembly View" +msgstr "조립 보기" + +msgid "Select Plate" +msgstr "플레이트 선택" + +msgid "Assembly Return" +msgstr "조립 되돌리기" + +msgid "return" +msgstr "돌아가기" + +msgid "Paint Toolbar" +msgstr "칠하기 도구 모음" + +msgid "Explosion Ratio" +msgstr "분해 비율" + +msgid "Section View" +msgstr "단면도" + +msgid "Assemble Control" +msgstr "조립 제어" + +msgid "Total Volume:" +msgstr "총 용량:" + +msgid "Assembly Info" +msgstr "조립 정보" + +msgid "Volume:" +msgstr "용량:" + +msgid "Size:" +msgstr "크기:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"레이어 %d, z = %.2lf mm에서 G코드 경로 충돌이 발견되었습니다. 충돌하는 개체" +"를 더 멀리 분리하세요 (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "개체가 플레이트 경계 위에 놓여 있습니다." + +msgid "A G-code path goes beyond the max print height." +msgstr "G코드 경로가 출력 최대 높이를 넘어갑니다." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "G코드 경로가 플레이트 경계를 넘어갑니다." + +msgid "Only the object being edit is visible." +msgstr "편집 중인 개체만 표시됩니다." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"개체가 플레이트 경계를 넘었거나 높이 제한을 초과했습니다.\n" +"플레이트 위 또는 밖으로 완전히 이동시키고 높이가 빌드 출력 가능 영역 내에 있" +"는지 확인하여 문제를 해결하세요." + +msgid "Calibration step selection" +msgstr "교정 단계 선택" + +msgid "Micro lidar calibration" +msgstr "마이크로 레이더 교정" + +msgid "Bed leveling" +msgstr "베드 레벨링" + +msgid "Vibration compensation" +msgstr "진동 보정" + +msgid "Motor noise cancellation" +msgstr "모터 소음 제거" + +msgid "Calibration program" +msgstr "교정 프로그램" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"교정 프로그램은 장치의 상태를 자동으로 감지하여 편차를 최소화합니다.\n" +"이를 통해 장치가 최적의 성능을 유지하도록 합니다." + +msgid "Calibration Flow" +msgstr "유량 교정" + +msgid "Start Calibration" +msgstr "교정 시작" + +msgid "Completed" +msgstr "완료" + +msgid "Calibrating" +msgstr "교정 중" + +msgid "No step selected" +msgstr "선택한 단계가 없습니다" + +msgid "Auto-record Monitoring" +msgstr "모니터링 자동 기록" + +msgid "Go Live" +msgstr "실시간" + +msgid "Liveview Retry" +msgstr "라이브뷰 재시도" + +msgid "Resolution" +msgstr "해상도" + +msgid "Enable" +msgstr "활성화" + +msgid "Hostname or IP" +msgstr "호스트 이름 또는 IP" + +msgid "Custom camera source" +msgstr "커스텀 카메라 소스" + +msgid "Show \"Live Video\" guide page." +msgstr "라이브 비디오 가이드 페이지를 표시합니다." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "프린터 연결(LAN)" + +msgid "Please input the printer access code:" +msgstr "프린터 액세스 코드를 입력:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"\"설정 > 네트워크 > 연결코드\"에서 확인하실 수 있습니다\n" +"또는 그림에 표시된 것처럼 프린터에 표시됩니다:" + +msgid "Invalid input." +msgstr "잘못된 입력입니다." + +msgid "New Window" +msgstr "새로운 창" + +msgid "Open a new window" +msgstr "새로운 창 열기" + +msgid "Application is closing" +msgstr "응용 프로그램 닫는 중" + +msgid "Closing Application while some presets are modified." +msgstr "일부 사전 설정을 수정하는 동안 응용 프로그램을 닫습니다." + +msgid "Logging" +msgstr "로깅" + +msgid "Preview" +msgstr "미리 보기" + +msgid "Multi-device" +msgstr "멀티 디바이스" + +msgid "Project" +msgstr "프로젝트" + +msgid "Yes" +msgstr "예" + +msgid "No" +msgstr "아니오" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "새 모델을 생성하기 전에 닫힙니다. 계속하시겠습니까?" + +msgid "Slice plate" +msgstr "플레이트 슬라이스" + +msgid "Print plate" +msgstr "플레이트 출력" + +msgid "Slice all" +msgstr "모두 슬라이스" + +msgid "Export G-code file" +msgstr "G코드 파일 내보내기" + +msgid "Export plate sliced file" +msgstr "플레이트 슬라이스 파일 내보내기" + +msgid "Export all sliced file" +msgstr "모든 슬라이스 파일 내보내기" + +msgid "Print all" +msgstr "모두 출력" + +msgid "Send all" +msgstr "모두 전송" + +msgid "Keyboard Shortcuts" +msgstr "키보드 단축키" + +msgid "Show the list of the keyboard shortcuts" +msgstr "키보드 단축키 목록 표시" + +msgid "Setup Wizard" +msgstr "설정 마법사" + +msgid "Show Configuration Folder" +msgstr "설정 폴더 열기" + +msgid "Show Tip of the Day" +msgstr "오늘의 팁 표시" + +msgid "Check for Update" +msgstr "업데이트 확인" + +msgid "Open Network Test" +msgstr "네트워크 테스트 열기" + +#, c-format, boost-format +msgid "&About %s" +msgstr "%s 정보 (&A)" + +msgid "Upload Models" +msgstr "모델 업로드" + +msgid "Download Models" +msgstr "모델 다운로드" + +msgid "Default View" +msgstr "기본 보기" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "위" + +msgid "Top View" +msgstr "위에서 보기" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "아래" + +msgid "Bottom View" +msgstr "아래에서 보기" + +msgid "Front" +msgstr "앞" + +msgid "Front View" +msgstr "앞에서 보기" + +msgid "Rear" +msgstr "뒤" + +msgid "Rear View" +msgstr "뒤에서 보기" + +msgid "Left" +msgstr "왼쪽" + +msgid "Left View" +msgstr "왼쪽에서 보기" + +msgid "Right" +msgstr "오른쪽" + +msgid "Right View" +msgstr "오른쪽에서 보기" + +msgid "Start a new window" +msgstr "새 창에서 시작" + +msgid "New Project" +msgstr "새 프로젝트" + +msgid "Start a new project" +msgstr "새 프로젝트 시작" + +msgid "Open a project file" +msgstr "프로젝트 파일 열기" + +msgid "Recent projects" +msgstr "최근 프로젝트" + +msgid "Save Project" +msgstr "프로젝트 저장" + +msgid "Save current project to file" +msgstr "현재 프로젝트를 파일로 저장" + +msgid "Save Project as" +msgstr "프로젝트 다른 이름으로 저장" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "현재 프로젝트 다른 이름으로 저장" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "3MF/STL/STEP/SVG/OBJ/AMF 가져오기" + +msgid "Load a model" +msgstr "모델 불러오기" + +msgid "Import Zip Archive" +msgstr "ZIP 압축파일 가져오기" + +msgid "Load models contained within a zip archive" +msgstr "ZIP 압축파일에 포함된 모델 로드" + +msgid "Import Configs" +msgstr "설정 가져오기" + +msgid "Load configs" +msgstr "설정 불러오기" + +msgid "Import" +msgstr "가져오기" + +msgid "Export all objects as one STL" +msgstr "모든 개체를 하나의 STL로 내보내기" + +msgid "Export all objects as STLs" +msgstr "모든 개체를 여러 STL로 내보내기" + +msgid "Export Generic 3MF" +msgstr "일반 3MF 내보내기" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "일부 3mf 확장자를 사용하지 않고 3mf 파일 내보내기" + +msgid "Export current sliced file" +msgstr "현재 슬라이스 파일 내보내기" + +msgid "Export all plate sliced file" +msgstr "모든 플레이트의 슬라이스 파일 내보내기" + +msgid "Export G-code" +msgstr "G코드 내보내기" + +msgid "Export current plate as G-code" +msgstr "현재 플레이트를 G코드로 내보내기" + +msgid "Export Preset Bundle" +msgstr "프리셋 번들 내보내기" + +msgid "Export current configuration to files" +msgstr "현재 설정을 파일로 내보내기" + +msgid "Export" +msgstr "내보내기" + +msgid "Quit" +msgstr "종료" + +msgid "Undo" +msgstr "실행 취소" + +msgid "Redo" +msgstr "다시 실행" + +msgid "Cut selection to clipboard" +msgstr "잘라낸 항목을 클립보드에 복사" + +msgid "Copy" +msgstr "복사" + +msgid "Copy selection to clipboard" +msgstr "선택 항목을 클립보드에 복사" + +msgid "Paste" +msgstr "붙여넣기" + +msgid "Paste clipboard" +msgstr "클립보드 붙여넣기" + +msgid "Delete selected" +msgstr "선택된 항목 지우기" + +msgid "Deletes the current selection" +msgstr "현재 선택 삭제" + +msgid "Delete all" +msgstr "모두 삭제" + +msgid "Deletes all objects" +msgstr "모든 개체 삭제" + +msgid "Clone selected" +msgstr "선택된 개체 복제" + +msgid "Clone copies of selections" +msgstr "선택된 개체의 복사본 복제" + +msgid "Select all" +msgstr "모두 선택" + +msgid "Selects all objects" +msgstr "모든 개체 선택" + +msgid "Deselect all" +msgstr "모든 선택 취소" + +msgid "Deselects all objects" +msgstr "모든 개체 선택 취소" + +msgid "Use Perspective View" +msgstr "원근법 보기 사용" + +msgid "Use Orthogonal View" +msgstr "평행 투영 보기 사용" + +msgid "Show &G-code Window" +msgstr "G코드 창 표시 (&G)" + +msgid "Show g-code window in Previce scene" +msgstr "예측 장면에 G코드 창 표시" + +msgid "Show 3D Navigator" +msgstr "3D 내비게이터 표시" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "준비 및 미리보기 장면에서 3D 내비게이터 표시" + +msgid "Reset Window Layout" +msgstr "창 레이아웃 재설정" + +msgid "Reset to default window layout" +msgstr "기본 창 레이아웃으로 재설정" + +msgid "Show &Labels" +msgstr "이름표 보기 (&L)" + +msgid "Show object labels in 3D scene" +msgstr "3D 화면에 개체 이름표 표시" + +msgid "Show &Overhang" +msgstr "돌출부 보기 (&O)" + +msgid "Show object overhang highlight in 3D scene" +msgstr "3D 장면에서 개체 오버행 하이라이트 표시" + +msgid "Preferences" +msgstr "기본 설정" + +msgid "Help" +msgstr "도움말" + +msgid "Temperature Calibration" +msgstr "온도 교정" + +msgid "Pass 1" +msgstr "1차 테스트" + +msgid "Flow rate test - Pass 1" +msgstr "유량 테스트 - 1차" + +msgid "Pass 2" +msgstr "2차 테스트" + +msgid "Flow rate test - Pass 2" +msgstr "유량 테스트 - 2차" + +msgid "Flow rate" +msgstr "유량" + +msgid "Pressure advance" +msgstr "프레셔 어드밴스" + +msgid "Retraction test" +msgstr "후퇴 테스트" + +msgid "Orca Tolerance Test" +msgstr "Orca 공차 테스트" + +msgid "Max flowrate" +msgstr "최대 유량" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "더보기..." + +msgid "Tutorial" +msgstr "설명서" + +msgid "Calibration help" +msgstr "교정 도움말" + +msgid "More calibrations" +msgstr "추가 교정" + +msgid "&Open G-code" +msgstr "G코드 열기 (&O)" + +msgid "Open a G-code file" +msgstr "G코드 파일 열기" + +msgid "Re&load from Disk" +msgstr "디스크에서 다시 불러오기 (&l)" + +msgid "Reload the plater from disk" +msgstr "디스크에서 플레이트 다시 로드" + +msgid "Export &Toolpaths as OBJ" +msgstr "툴 경로를 OBJ로 내보내기 (&T)" + +msgid "Export toolpaths as OBJ" +msgstr "툴 경로를 OBJ로 내보내기" + +msgid "Open &Slicer" +msgstr "&Slicer 열기 (&O)" + +msgid "Open Slicer" +msgstr "Slicer 열기" + +msgid "&Quit" +msgstr "종료 (&Q)" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "%s 종료" + +msgid "&File" +msgstr "파일 (&F)" + +msgid "&View" +msgstr "시점 (&V)" + +msgid "&Help" +msgstr "도움말 (&H)" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "같은 이름을 가진 파일이 존재합니다: %s, 덮어 쓰겠습니까." + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "같은 이름을 가진 설정이 존재합니다: %s, 덮어 쓰겠습니까." + +msgid "Overwrite file" +msgstr "파일 덮어쓰기" + +msgid "Yes to All" +msgstr "모두 예" + +msgid "No to All" +msgstr "모두 아니오" + +msgid "Choose a directory" +msgstr "디렉토리 선택" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "%d개의 설정을 내보냈습니다. (비 시스템 설정만 해당)" + +msgid "Export result" +msgstr "결과 내보내기" + +msgid "Select profile to load:" +msgstr "불러올 사전설정 선택:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "%d개의 설정을 가져왔습니다. (비 시스템 및 호환 설정만 해당)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"힌트: 구성을 가져오기 전에 해당 프린터를 추가했는지 확인하세요." + +msgid "Import result" +msgstr "결과 가져오기" + +msgid "File is missing" +msgstr "파일이 없습니다" + +msgid "The project is no longer available." +msgstr "프로젝트를 더 이상 사용할 수 없습니다." + +msgid "Filament Settings" +msgstr "필라멘트 설정" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"뱀부 클라우드의 개인 데이터를 동기화하시겠습니까?\n" +"다음과 같은 정보가 포함되어 있습니다:\n" +"1. 프로세스 사전 설정\n" +"2. 필라멘트 사전 설정\n" +"3. 프린터가 사전 설정" + +msgid "Synchronization" +msgstr "동기화" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "장치에서 더 많은 대화를 처리할 수 없습니다. 나중에 다시 시도해 주세요." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "플레이어가 오작동합니다. 시스템 플레이어를 다시 설치하세요." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"플레이어가 로드되지 않았습니다. 다시 시도하려면 '재생' 버튼을 클릭하세요." + +msgid "Please confirm if the printer is connected." +msgstr "프린터가 연결되어 있는지 확인하세요." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "프린터가 현재 다운로드 중입니다. 다운로드가 완료된 후 다시 시도하세요." + +msgid "Printer camera is malfunctioning." +msgstr "프린터 카메라가 오작동합니다." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "문제가 발생했습니다. 프린터 펌웨어를 업데이트하고 다시 시도하세요." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"LAN 전용 라이브뷰가 꺼져 있습니다. 프린터 화면에서 라이브뷰를 켜십시오." + +msgid "Please enter the IP of printer to connect." +msgstr "연결할 프린터의 IP를 입력하세요." + +msgid "Initializing..." +msgstr "초기화 중..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "연결에 실패했습니다. 네트워크를 확인한 후 다시 시도하세요" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"네트워크를 확인하고 다시 시도해 보세요. 문제가 지속되면 프린터를 다시 시작하" +"거나 업데이트할 수 있습니다." + +msgid "The printer has been logged out and cannot connect." +msgstr "프린터가 로그아웃되어 연결할 수 없습니다." + +msgid "Stopped." +msgstr "중지됨." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "LAN 연결 실패(라이브뷰 시작 실패)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"이 작업에는 가상 카메라 도구가 필요합니다!\n" +"설치하시겠습니까?" + +msgid "Downloading Virtual Camera Tools" +msgstr "가상 카메라 도구 다운로드" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"다른 가상 카메라가 실행 중입니다.\n" +"Snapmaker Orca는 하나의 가상 카메라만 지원합니다.\n" +"이 가상 카메라를 중지하시겠습니까?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "가상 카메라 초기화 실패(%s)!" + +msgid "Network unreachable" +msgstr "네트워크에 연결할 수 없음" + +msgid "Information" +msgstr "정보" + +msgid "Playing..." +msgstr "재생중...." + +msgid "Year" +msgstr "년" + +msgid "Month" +msgstr "월" + +msgid "All Files" +msgstr "모든 파일" + +msgid "Group files by year, recent first." +msgstr "연별 그룹 파일, 최근 파일 순." + +msgid "Group files by month, recent first." +msgstr "월별 그룹 파일, 최근 파일 순." + +msgid "Show all files, recent first." +msgstr "모든 파일 표시, 최근 파일 순." + +msgid "Switch to timelapse files." +msgstr "타임랩스 파일로 전환합니다." + +msgid "Video" +msgstr "비디오" + +msgid "Switch to video files." +msgstr "비디오 파일로 전환합니다." + +msgid "Switch to 3mf model files." +msgstr "3mf 모델 파일로 전환." + +msgid "Delete selected files from printer." +msgstr "선택된 파일을 프린터에서 삭제합니다." + +msgid "Download" +msgstr "다운로드" + +msgid "Download selected files from printer." +msgstr "선택된 파일을 프린터에서 다운로드합니다." + +msgid "Select" +msgstr "선택" + +msgid "Batch manage files." +msgstr "파일을 일괄 관리합니다." + +msgid "Refresh" +msgstr "새로 고침" + +msgid "Reload file list from printer." +msgstr "프린터에서 파일 목록을 다시 로드합니다." + +msgid "No printers." +msgstr "프린터 없음." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "[%d] 연결 실패!" + +msgid "Loading file list..." +msgstr "파일 목록 로드 중..." + +msgid "No files" +msgstr "파일 없음" + +msgid "Load failed" +msgstr "로드 실패" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "초기화 실패 (장치 연결 준비 안 됨)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"현재 펌웨어에서는 SD 카드의 파일 검색이 지원되지 않습니다. 프린터 펌웨어를 업" +"데이트하세요." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" +"초기화에 실패했습니다(저장소를 사용할 수 없습니다. SD 카드를 삽입하세요.)!" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "LAN 연결 실패 (sdcard를 볼 수 없음)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "LAN 전용 모드에서는 SD 카드의 파일 탐색이 지원되지 않습니다." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "(%s) 초기화 실패!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "%u 파일을 삭제하려고 합니다. 계속하시겠습니까?" + +msgid "Delete files" +msgstr "파일 삭제" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "프린터에서 '%s' 파일을 삭제하시겠습니까?" + +msgid "Delete file" +msgstr "파일 삭제" + +msgid "Fetching model infomations ..." +msgstr "모델 정보 가져오는 중..." + +msgid "Failed to fetch model information from printer." +msgstr "프린터에서 모델 정보를 가져오지 못했습니다." + +msgid "Failed to parse model information." +msgstr "모델 정보를 구문 분석하지 못했습니다." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +".gcode.3mf 파일에는 G코드 데이터가 없습니다. Snapmaker Orca에서 슬라이스하고 새 ." +"gcode.3mf 파일을 내보내십시오." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "'%s' 파일이 손실되었습니다! 다시 다운로드하세요." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"파일: %s\n" +"제목: %s\n" + +msgid "Download waiting..." +msgstr "다운로드 대기 중..." + +msgid "Play" +msgstr "재생" + +msgid "Open Folder" +msgstr "폴더 열기" + +msgid "Download finished" +msgstr "다운로드 완료" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "다운로드 중 %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"프린터를 다시 연결하는 중입니다. 작업을 즉시 완료할 수 없습니다. 나중에 다시 " +"시도해 주세요." + +msgid "File does not exist." +msgstr "파일이 없습니다." + +msgid "File checksum error. Please retry." +msgstr "파일 체크섬 오류입니다. 다시 시도해 주세요." + +msgid "Not supported on the current printer version." +msgstr "현재 프린터 버전에서는 지원되지 않습니다." + +msgid "Storage unavailable, insert SD card." +msgstr "저장소를 사용할 수 없습니다. SD 카드를 삽입하세요." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "오류 코드: %d" + +msgid "Speed:" +msgstr "속도:" + +msgid "Deadzone:" +msgstr "데드 존:" + +msgid "Options:" +msgstr "옵션:" + +msgid "Zoom" +msgstr "줌" + +msgid "Translation/Zoom" +msgstr "변환/줌" + +msgid "3Dconnexion settings" +msgstr "3D연결 설정" + +msgid "Swap Y/Z axes" +msgstr "Y/Z 축 바꾸기" + +msgid "Invert X axis" +msgstr "X축 반전" + +msgid "Invert Y axis" +msgstr "Y축 반전" + +msgid "Invert Z axis" +msgstr "Z축 반전" + +msgid "Invert Yaw axis" +msgstr "수직축을 중심으로 반전" + +msgid "Invert Pitch axis" +msgstr "횡축을 중심으로 반전" + +msgid "Invert Roll axis" +msgstr "종축을 중심으로 반전" + +msgid "Printing Progress" +msgstr "출력 진행률" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "레이어: N/A" + +msgid "Clear" +msgstr "지우기" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"쇼핑몰 모델 출력이 완료되었으나,\n" +"등급 정보 동기화에 실패했습니다." + +msgid "How do you like this printing file?" +msgstr "이 출력 파일이 마음에 드시나요?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"(해당 모델은 이미 평가되었습니다. 귀하의 평가가 이전 평가를 덮어쓰게 됩니다.)" + +msgid "Rate" +msgstr "평가" + +msgid "Camera" +msgstr "카메라" + +msgid "SD Card" +msgstr "SD 카드" + +msgid "Camera Setting" +msgstr "카메라 설정" + +msgid "Switch Camera View" +msgstr "카메라 보기 전환" + +msgid "Control" +msgstr "제어" + +msgid "Printer Parts" +msgstr "프린터 부품" + +msgid "Print Options" +msgstr "출력 옵션" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "조명" + +msgid "Aux" +msgstr "보조" + +msgid "Cham" +msgstr "챔버" + +msgid "Bed" +msgstr "베드" + +msgid "Debug Info" +msgstr "디버그 정보" + +msgid "No SD Card" +msgstr "SD 카드 없음" + +msgid "SD Card Abnormal" +msgstr "SD 카드 이상" + +msgid "Cancel print" +msgstr "출력 취소" + +msgid "Are you sure you want to cancel this print?" +msgstr "이 출력을 취소하겠습니까?" + +msgid "Downloading..." +msgstr "다운로드 중..." + +msgid "Cloud Slicing..." +msgstr "클라우드 슬라이싱..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "클라우드 슬라이싱 대기열에는 %s개의 작업이 앞에 있습니다." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "레이어: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "레이어: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"필라멘트를 로드하거나 언로드하기 전에 노즐을 170도 이상으로 가열하세요." + +msgid "Still unload" +msgstr "언로드중" + +msgid "Still load" +msgstr "로드중" + +msgid "Please select an AMS slot before calibration" +msgstr "교정하기 전에 AMS 슬롯을 선택하세요" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"필라멘트 정보를 읽을 수 없음: 필라멘트가 툴 헤드에 로드되었습니다. 필라멘트" +"를 언로드하고 다시 시도하세요." + +msgid "This only takes effect during printing" +msgstr "출력하는 동안에만 적용됩니다" + +msgid "Silent" +msgstr "조용한" + +msgid "Standard" +msgstr "표준" + +msgid "Sport" +msgstr "스포츠" + +msgid "Ludicrous" +msgstr "루디크러스" + +msgid "Can't start this without SD card." +msgstr "SD 카드가 없으면 시작할 수 없습니다." + +msgid "Rate the Print Profile" +msgstr "출력 사전설정 평가" + +msgid "Comment" +msgstr "댓글" + +msgid "Rate this print" +msgstr "이 출력물을 평가해 주세요" + +msgid "Add Photo" +msgstr "사진 추가" + +msgid "Delete Photo" +msgstr "사진 삭제" + +msgid "Submit" +msgstr "제출" + +msgid "Please click on the star first." +msgstr "먼저 별점을 클릭해주세요." + +msgid "InFo" +msgstr "정보" + +msgid "Get oss config failed." +msgstr "OSS 구성 가져오기에 실패했습니다." + +msgid "Upload Pictrues" +msgstr "사진 업로드" + +msgid "Number of images successfully uploaded" +msgstr "성공적으로 업로드된 이미지 수" + +msgid " upload failed" +msgstr " 업로드 실패" + +msgid " upload config prase failed\n" +msgstr " 구성 업로드 실패\n" + +msgid " No corresponding storage bucket\n" +msgstr " 해당 스토리지 버킷이 없습니다.\n" + +msgid " can not be opened\n" +msgstr " 열 수 없습니다\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"이미지 업로드 과정에서 아래와 같은 문제가 발생했습니다. 무시하시겠습니까?\n" +"\n" + +msgid "info" +msgstr "정보" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "출력 결과를 동기화하는 중입니다. 몇 초 후에 다시 시도하세요." + +msgid "Upload failed\n" +msgstr "업로드 실패\n" + +msgid "obtaining instance_id failed\n" +msgstr "instance_id를 가져오지 못했습니다.\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"다음과 같은 몇 가지 이유로 귀하의 댓글 결과를 업로드할 수 없습니다.:\n" +"\n" +" 에러 코드: " + +msgid "error message: " +msgstr "에러 메시지: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"평가를 위해 웹페이지로 이동하시겠습니까?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"일부 이미지를 업로드하지 못했습니다. 평가를 위해 웹페이지로 리디렉션하시겠습" +"니까?" + +msgid "You can select up to 16 images." +msgstr "최대 16개의 이미지를 선택할 수 있습니다." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"긍정적인 평가(별4개 또는 5개)를 제공하려면\n" +"이 출력 사전 설정의 성공적인 출력 기록이 하나 이상 필요합니다." + +msgid "Status" +msgstr "상태" + +msgid "Update" +msgstr "업데이트" + +msgid "Don't show again" +msgstr "다시 표시하지 않음" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s 에러" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s 에 오류가 발생했습니다" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s 경고" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s 에 경고가 있습니다" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s 정보" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s 정보" + +msgid "Skip" +msgstr "건너뛰기" + +msgid "Newer 3mf version" +msgstr "최신 3mf 버전" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" +"3mf 파일 버전은 베타 버전이며 현재 Snapmaker Orca 버전보다 최신 버전입니다." + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "Snapmaker Orca Beta를 사용해 보려면 다음을 클릭하세요" + +msgid "Download Beta Version" +msgstr "베타 버전 다운로드" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "3mf 파일 버전은 현재 Snapmaker Orca 버전보다 최신 버전입니다." + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" +"Snapmaker Orca를 업데이트하면 3mf 파일의 모든 기능을 활성화할 수 있습니다." + +msgid "Current Version: " +msgstr "현재 버전: " + +msgid "Latest Version: " +msgstr "최신 버전: " + +msgid "Not for now" +msgstr "건너뛰기" + +msgid "3D Mouse disconnected." +msgstr "3D 마우스가 분리됨." + +msgid "Configuration can update now." +msgstr "구성을 지금 업데이트할 수 있습니다." + +msgid "Detail." +msgstr "세부 사항." + +msgid "Integration was successful." +msgstr "통합에 성공했습니다." + +msgid "Integration failed." +msgstr "통합에 실패했습니다." + +msgid "Undo integration was successful." +msgstr "통합 실행 취소에 성공했습니다." + +msgid "New network plug-in available." +msgstr "새로운 네트워크 플러그인을 사용할 수 있습니다." + +msgid "Details" +msgstr "세부 사항" + +msgid "New printer config available." +msgstr "새로운 프린터 구성을 사용할 수 있습니다." + +msgid "Wiki" +msgstr "위키" + +msgid "Undo integration failed." +msgstr "통합 실행 취소에 실패했습니다." + +msgid "Exporting." +msgstr "내보내는중." + +msgid "Software has New version." +msgstr "새 버전의 소프트웨어가 있습니다." + +msgid "Goto download page." +msgstr "다운로드 페이지로 이동합니다." + +msgid "Open Folder." +msgstr "폴더 열기." + +msgid "Safely remove hardware." +msgstr "하드웨어를 안전하게 제거합니다." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d 개체에 사용자 정의 지지대가 있습니다." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d 개체에 컬러 페인팅이 있습니다." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d 개체가 잘라낸 개체의 부품으로 로드되었습니다." + +msgid "ERROR" +msgstr "오류" + +msgid "COMPLETED" +msgstr "완료됨" + +msgid "CANCELED" +msgstr "취소됨" + +msgid "Cancel upload" +msgstr "업로드 취소" + +msgid "Jump to" +msgstr "다음으로 이동" + +msgid "Error:" +msgstr "오류:" + +msgid "Warning:" +msgstr "경고:" + +msgid "Export successfully." +msgstr "내보내기 성공." + +msgid "Model file downloaded." +msgstr "모델 파일이 다운로드되었습니다." + +msgid "Serious warning:" +msgstr "심각한 경고:" + +msgid " (Repair)" +msgstr " (수리)" + +msgid " Click here to install it." +msgstr " 설치하려면 여기를 클릭하세요." + +msgid "WARNING:" +msgstr "경고:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "모델에 지지대가 필요합니다! 지지대를 활성화하세요." + +msgid "Gcode path overlap" +msgstr "G코드 경로 겹침" + +msgid "Support painting" +msgstr "지지대 칠하기" + +msgid "Color painting" +msgstr "색 칠하기" + +msgid "Cut connectors" +msgstr "잘라내기 커넥터" + +msgid "Layers" +msgstr "레이어" + +msgid "Range" +msgstr "범위" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"OpenGL 버전이 2.0보다 낮기 때문에 응용 프로그램을 정상적으로 실행할 수 없습니" +"다.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "그래픽 카드 드라이버를 업그레이드하세요." + +msgid "Unsupported OpenGL version" +msgstr "지원되지 않는 OpenGL 버전" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"셰이더를 로드할 수 없습니다:\n" +"%s" + +msgid "Error loading shaders" +msgstr "셰이더 로드 오류" + +msgctxt "Layers" +msgid "Top" +msgstr "상부" + +msgctxt "Layers" +msgid "Bottom" +msgstr "하부" + +msgid "Enable AI monitoring of printing" +msgstr "출력 AI 모니터링 활성화" + +msgid "Sensitivity of pausing is" +msgstr "일시 정지 감도" + +msgid "Enable detection of build plate position" +msgstr "빌드 플레이트 위치 감지 활성화" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"빌드 플레이트의 현지화 태그가 감지되고 태그가 사전 설정된 범위를 벗어나면 출" +"력이 일시 정지됩니다." + +msgid "First Layer Inspection" +msgstr "첫 레이어 검사" + +msgid "Auto-recovery from step loss" +msgstr "손실 단계부터 자동 복구" + +msgid "Allow Prompt Sound" +msgstr "프롬프트 소리 허용" + +msgid "Filament Tangle Detect" +msgstr "필라멘트 엉킴 감지" + +msgid "Nozzle Clumping Detection" +msgstr "노즐 응집 감지" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "노즐에 필라멘트나 기타 이물질이 뭉쳐져 있는지 확인하세요." + +msgid "Nozzle Type" +msgstr "노즐 유형" + +msgid "Stainless Steel" +msgstr "스테인레스 스틸" + +msgid "Hardened Steel" +msgstr "경화강" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "전역" + +msgid "Objects" +msgstr "개체" + +msgid "Advance" +msgstr "전문가 모드" + +msgid "Compare presets" +msgstr "사전 설정 비교" + +msgid "View all object's settings" +msgstr "모든 개체 설정 보기" + +msgid "Material settings" +msgstr "재료 설정" + +msgid "Remove current plate (if not last one)" +msgstr "현재 플레이트 제거(마지막 플레이트가 아닌 경우)" + +msgid "Auto orient objects on current plate" +msgstr "현재 플레이트의 개체 자동 방향 지정" + +msgid "Arrange objects on current plate" +msgstr "현재 플레이트의 개체 정렬" + +msgid "Unlock current plate" +msgstr "현재 플레이트 잠금 해제" + +msgid "Lock current plate" +msgstr "현재 플레이트 잠금" + +msgid "Edit current plate name" +msgstr "현재 번호판 이름 수정" + +msgid "Move plate to the front" +msgstr "플레이트를 앞쪽으로 이동" + +msgid "Customize current plate" +msgstr "사용자 정의 플레이트" + +#, boost-format +msgid " plate %1%:" +msgstr " 플레이트 %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "잘못된 이름입니다. 다음 문자는 사용할 수 없습니다:" + +msgid "Sliced Info" +msgstr "슬라이스 정보" + +msgid "Used Filament (m)" +msgstr "필라멘트 사용 (m)" + +msgid "Used Filament (mm³)" +msgstr "필라멘트 사용 (mm³)" + +msgid "Used Filament (g)" +msgstr "필라멘트 사용 (g)" + +msgid "Used Materials" +msgstr "재료 사용" + +msgid "Estimated time" +msgstr "추정 시간" + +msgid "Filament changes" +msgstr "필라멘트 변경" + +msgid "Click to edit preset" +msgstr "클릭하여 사전 설정 편집" + +msgid "Connection" +msgstr "연결" + +msgid "Bed type" +msgstr "베드 유형" + +msgid "Flushing volumes" +msgstr "버리기 볼륨" + +msgid "Add one filament" +msgstr "필라멘트 한개 추가" + +msgid "Remove last filament" +msgstr "마지막 필라멘트 제거" + +msgid "Synchronize filament list from AMS" +msgstr "AMS에서 필라멘트 목록 동기화" + +msgid "Set filaments to use" +msgstr "사용할 필라멘트 설정" + +msgid "Search plate, object and part." +msgstr "플레이트, 개체 및 부품을 검색합니다." + +msgid "Pellets" +msgstr "펠릿" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"AMS 필라멘트가 없습니다. AMS 정보를 불러오려면 '장치' 페이지에서 프린터를 선" +"택하세요." + +msgid "Sync filaments with AMS" +msgstr "AMS와 필라멘트 동기화" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"AMS와 동기화된 필라멘트는 현재 선택된 모든 필라멘트 사전 설정 및 색상을 삭제" +"합니다. 계속하시겠습니까?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"이미 동기화를 수행했습니다. 변경 사항만 동기화하시겠습니까? 아니면 다시 동기" +"화하시겠습니까?" + +msgid "Sync" +msgstr "동기화" + +msgid "Resync" +msgstr "재 동기화" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "호환되는 필라멘트가 없으며 동기화가 수행되지 않습니다." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"일반 사전 설정에 매핑된 알 수 없는 필라멘트가 있습니다. Snapmaker Orca를 업데이" +"트하거나 Snapmaker Orca를 다시 시작하여 시스템 사전 설정에 대한 업데이트가 있는" +"지 확인하세요." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "변경 사항을 \"%1%\"에 저장하시겠습니까?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"성공적으로 마운트 해제되었습니다. 이제 %s(%s) 장치를 컴퓨터에서 안전하게 제거" +"할 수 있습니다." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "%s(%s) 장치를 꺼내지 못했습니다." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "저장되지 않은 이전 프로젝트가 감지되었습니다. 복원하시겠습니까?" + +msgid "Restore" +msgstr "복원" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"현재 베드 온도가 상대적으로 높습니다. 닫힌 공간에서 이 필라멘트를 출력할 때 " +"노즐이 막힐 수 있습니다. 전면 도어를 열거나 상단 유리를 제거하세요." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"필라멘트에 필요한 노즐 경도가 프린터의 기본 노즐 경도보다 높습니다. \"경화강" +"\" 노즐을 사용하거나 필라멘트를 교체하세요. 그렇지 않으면 노즐이 마모되거나 " +"손상됩니다." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"기존 타임랩스 사진을 사용하면 표면 결함이 발생할 수 있습니다. 유연 모드로 변" +"경하는 것이 좋습니다." + +msgid "Expand sidebar" +msgstr "사이드바 확장" + +msgid "Collapse sidebar" +msgstr "사이드바 접기" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "파일 로드 중: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "이 3mf는 Snapmaker Orca에서 지원되지 않습니다. 형상 데이터만 불러옵니다." + +msgid "Load 3mf" +msgstr "3mf 불러오기" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"3mf의 버전 %s이(가) %s의 버전 %s보다 높습니다. 다음 키를 인식할 수 없습니다:" + +msgid "You'd better upgrade your software.\n" +msgstr "소프트웨어를 업그레이드하는 것이 좋습니다.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"3mf의 %s 버전이 %s의 %s 버전보다 최신입니다. 소프트웨어를 업그레이드 하십시" +"오." + +msgid "Invalid values found in the 3mf:" +msgstr "3mf에서 잘못된 값이 발견됨:" + +msgid "Please correct them in the param tabs" +msgstr "매개변수 탭에서 수정하세요" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" +"3mf에는 필라멘트 또는 프린터 사전 설정에 다음과 같은 수정된 G코드가 있습니다:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "이 수정된 G코드가 손상을 방지하기 위해 안전한지 확인하세요.장치!" + +msgid "Modified G-codes" +msgstr "수정된 G코드" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "3mf에는 다음과 같은 맞춤형 필라멘트 또는 프린터 사전 설정이 있습니다:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"이러한 사전 설정 내의 G코드가 기계 손상을 방지할 수 있도록 안전한지 확인하세" +"요!" + +msgid "Customized Preset" +msgstr "사용자 정의 프리셋" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "단계 파일 내의 구성 요소 이름이 UTF8 형식이 아닙니다!" + +msgid "The name may show garbage characters!" +msgstr "이름에 알 수 없는 문자가 표시될 수 있습니다!" + +msgid "Remember my choice." +msgstr "선택 기억하기." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "파일 \"%1%\"을(를) 로드하지 못했습니다. 잘못된 구성이 발견되었습니다." + +msgid "Objects with zero volume removed" +msgstr "부피가 0인 개체가 제거됨" + +msgid "The volume of the object is zero" +msgstr "물체의 부피는 0입니다" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"%s 파일의 개체가 너무 작습니다. 단위가 미터나 인치일 수 있습니다.\n" +" 밀리미터 단위로 확장하시겠습니까?" + +msgid "Object too small" +msgstr "개체가 너무 작음" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"이 파일에는 여러 높이에 배치된 여러 개체가 포함되어 있습니다.\n" +"여러 개체로 간주하는 대신\n" +"파일을 여러 부품이 있는 단일 개체로 로드하시겠습니까?" + +msgid "Multi-part object detected" +msgstr "여러 부품으로 구성된 개체 감지됨" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "이 파일을 여러 부품이 있는 단일 개체로 로드하시겠습니까?\n" + +msgid "Object with multiple parts was detected" +msgstr "여러 부품으로 구성된 개체가 감지되었습니다" + +msgid "The file does not contain any geometry data." +msgstr "파일에 형상 데이터가 포함되어 있지 않습니다." + +msgid "" +"Your object appears to be too large. It will be scaled down to fit the heat " +"bed automatically." +msgstr "" + +msgid "Object too large" +msgstr "개체가 너무 큼" + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "개체가 너무 큽니다. 자동으로 고온 베드에 맞게 크기를 줄이시겠습니까?" + +msgid "Export STL file:" +msgstr "STL 파일 내보내기:" + +msgid "Export AMF file:" +msgstr "AMF 파일 내보내기:" + +msgid "Save file as:" +msgstr "파일을 다른 이름으로 저장:" + +msgid "Export OBJ file:" +msgstr "OBJ 파일 내보내기:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"파일 %s이(가) 이미 존재합니다.\n" +"파일을 바꾸시겠습니까?" + +msgid "Confirm Save As" +msgstr "다른 이름으로 저장 확인" + +msgid "Delete object which is a part of cut object" +msgstr "잘라낸 개체의 일부인 개체 삭제" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"잘라낸 개체의 일부인 개체를 삭제하려고 합니다.\n" +"이 작업을 수행하면 잘라낸 개체간 연결이 끊어집니다.\n" +"그 이후 모델의 일관성은 보장되지 않습니다." + +msgid "The selected object couldn't be split." +msgstr "선택한 개체를 분할할 수 없습니다." + +msgid "Another export job is running." +msgstr "다른 내보내기 작업이 실행 중입니다." + +msgid "Unable to replace with more than one volume" +msgstr "한 개 이상의 볼륨으로 교체할 수 없습니다" + +msgid "Error during replace" +msgstr "교체 중 오류 발생" + +msgid "Replace from:" +msgstr "다음에서 교체:" + +msgid "Select a new file" +msgstr "새 파일 선택" + +msgid "File for the replace wasn't selected" +msgstr "대체할 파일이 선택되지 않았습니다" + +msgid "Please select a file" +msgstr "파일을 선택하세요" + +msgid "Do you want to replace it" +msgstr "교체하시겠습니까" + +msgid "Message" +msgstr "메시지" + +msgid "Reload from:" +msgstr "다음에서 새로고침:" + +msgid "Unable to reload:" +msgstr "새로고침할 수 없음:" + +msgid "Error during reload" +msgstr "새로고침 중 오류가 발생했습니다" + +msgid "There are warnings after slicing models:" +msgstr "모델을 슬라이싱한 후 경고 발생:" + +msgid "warnings" +msgstr "경고" + +msgid "Invalid data" +msgstr "유효하지 않은 데이터" + +msgid "Slicing Canceled" +msgstr "슬라이싱 취소됨" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "플레이트 슬라이싱 %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "슬라이싱 오류를 해결하고 다시 시도하세요." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"네트워크 플러그인이 감지되지 않습니다. 네트워크 관련 기능을 사용할 수 없습니" +"다." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"미리 보기 전용 모드:\n" +"불러온 파일에 G코드만 포함되어 있습니다. 준비 페이지에 들어갈 수 없습니다" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "수정된 사전 설정을 새 프로젝트에 유지하거나 삭제할 수 있습니다" + +msgid "Creating a new project" +msgstr "새 프로젝트 생성" + +msgid "Load project" +msgstr "프로젝트 불러오기" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"프로젝트를 저장하지 못했습니다.\n" +"폴더가 온라인에 존재하는지 또는 다른 프로그램이 프로젝트 파일을 사용 중인지 " +"확인하세요." + +msgid "Save project" +msgstr "프로젝트 저장" + +msgid "Importing Model" +msgstr "모델 가져오는 중" + +msgid "prepare 3mf file..." +msgstr "3mf 파일 준비..." + +msgid "Download failed, unknown file format." +msgstr "다운로드에 실패했습니다. 파일 형식을 알 수 없습니다." + +msgid "downloading project ..." +msgstr "프로젝트 다운로드 중 ..." + +msgid "Download failed, File size exception." +msgstr "다운로드에 실패했습니다. 파일 크기 예외입니다." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "프로젝트 %d%% 다운로드됨" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"Snapmaker Orca로 가져오는 데 실패했습니다. 파일을 다운로드하여 수동으로 가져오세" +"요." + +msgid "Import SLA archive" +msgstr "SLA 압축파일 가져오기" + +msgid "The selected file" +msgstr "선택한 파일" + +msgid "does not contain valid gcode." +msgstr "유효한 G코드를 포함하지 않습니다." + +msgid "Error occurs while loading G-code file" +msgstr "G코드 파일을 로드하는 중 오류가 발생했습니다" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "경로 %1%에 ZIP 아카이브를 로드하지 못했습니다." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "파일을 %1%으로 압축 해제하지 못했습니다: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"%1%에서 압축 해제된 파일을 찾지 못했습니다. 파일 압축 해제에 실패했습니다." + +msgid "Drop project file" +msgstr "프로젝트 파일 삭제" + +msgid "Please select an action" +msgstr "작업을 선택하세요" + +msgid "Open as project" +msgstr "프로젝트로 열기" + +msgid "Import geometry only" +msgstr "형상만 가져오기" + +msgid "Only one G-code file can be opened at the same time." +msgstr "동시에 하나의 G코드 파일만 열 수 있습니다." + +msgid "G-code loading" +msgstr "G코드 불러오는 중" + +msgid "G-code files can not be loaded with models together!" +msgstr "G코드 파일은 모델과 함께 로드할 수 없습니다!" + +msgid "Can not add models when in preview mode!" +msgstr "미리보기 모드에서는 모델을 추가할 수 없습니다!" + +msgid "All objects will be removed, continue?" +msgstr "모든 개체가 제거됩니다. 계속하시겠습니까?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"현재 프로젝트에 저장되지 않은 변경 사항이 있습니다. 계속하기 전에 저장하시겠" +"습니까?" + +msgid "Number of copies:" +msgstr "복제본 수:" + +msgid "Copies of the selected object" +msgstr "선택한 개체의 복제본" + +msgid "Save G-code file as:" +msgstr "G코드 파일을 다음으로 저장:" + +msgid "Save SLA file as:" +msgstr "SLA 파일을 다음으로 저장:" + +msgid "The provided file name is not valid." +msgstr "제공된 파일 이름이 유효하지 않습니다." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "다음 문자는 FAT 파일 시스템에서 허용되지 않음:" + +msgid "Save Sliced file as:" +msgstr "슬라이스 파일을 다음으로 저장:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"%s 파일이 프린터의 저장 공간으로 전송되었으며 프린터에서 볼 수 있습니다." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"모델 메쉬에 대해 부울 연산을 수행할 수 없습니다. 긍정적인 부분만 유지됩니다. " +"메쉬를 수정하고 재시도해 볼 수 있습니다." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "이유: \"%1%\" 부분이 비어 있습니다." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "이유: \"%1%\" 부분이 볼륨을 바인딩하지 않습니다." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "이유: 부품 \"%1%\"에 자체 교차가 있습니다." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "이유: \"%1%\"과(와) 다른 부분에는 교차점이 없습니다." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"모델 메쉬에 부울 연산을 수행할 수 없습니다. 오직 양수 부품만 내보내집니다." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"로컬 경로가 있는 원본 SVG를 3MF 파일에 저장하시겠습니까?\n" +"'아니요'를 누르면 프로젝트의 모든 SVG를 더 이상 편집할 수 없습니다." + +msgid "Private protection" +msgstr "개인정보 보호" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "프린터가 준비됐나요? 출력 시트가 제자리에 있고 비어 있고 깨끗합니까?" + +msgid "Upload and Print" +msgstr "업로드 및 출력" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"개체별 출력:\n" +"출력 시 충돌을 방지하기 위해 자동 정렬을 사용할 것을 제안합니다." + +msgid "Send G-code" +msgstr "G코드 전송" + +msgid "Send to printer" +msgstr "프린터로 전송" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "수리 전 사용자 정의 지지대와 컬러 페인트가 제거되었습니다." + +msgid "Optimize Rotation" +msgstr "회전 최적화" + +msgid "Invalid number" +msgstr "잘못된 번호" + +msgid "Plate Settings" +msgstr "플레이트 설정" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "현재 선택된 부품 수: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "현재 선택된 개체 수: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "부품 이름: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "개체 이름: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "크기: %1% x %2% x %3% in\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "크기: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "부피: %1% in³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "부피: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "삼각형: %1%\n" + +msgid "Tips:" +msgstr "팁:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"\"모델 수리\" 기능은 현재 Windows에만 있습니다. Snapmaker Orca(Wndows) 또는 CAD " +"소프트웨어 등에서 모델을 수정하세요." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"% d: %s플레이트는 %s(%s)필라멘트를 출력하는데 사용하지 않는 것이 좋습니다. " +"이 출력을 계속하려면 이 필라멘트의 베드 온도를 0이 아닌 값으로 설정하세요." + +msgid "Switching the language requires application restart.\n" +msgstr "언어를 전환하려면 애플리케이션을 다시 시작해야 합니다.\n" + +msgid "Do you want to continue?" +msgstr "계속하시겠습니까?" + +msgid "Language selection" +msgstr "언어 선택" + +msgid "Changing application language" +msgstr "응용 프로그램 언어 변경" + +msgid "Changing the region will log out your account.\n" +msgstr "지역을 변경하면 계정에서 로그아웃됩니다.\n" + +msgid "Region selection" +msgstr "지역 선택" + +msgid "Second" +msgstr "초" + +msgid "Browse" +msgstr "탐색" + +msgid "Choose Download Directory" +msgstr "다운로드 폴더 선택" + +msgid "Associate" +msgstr "링크" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "를 Snapmaker Orca와 연결하여 Orca가 다음 사이트의 모델을 열 수 있게 합니다" + +msgid "Current Association: " +msgstr "현재 연결: " + +msgid "Current Instance" +msgstr "현재 인스턴스" + +msgid "Current Instance Path: " +msgstr "현재 인스턴스 경로: " + +msgid "General Settings" +msgstr "일반 설정" + +msgid "Asia-Pacific" +msgstr "아시아 태평양" + +msgid "China" +msgstr "중국" + +msgid "Europe" +msgstr "유럽" + +msgid "North America" +msgstr "북아메리카" + +msgid "Others" +msgstr "기타" + +msgid "Login Region" +msgstr "로그인 지역" + +msgid "Stealth Mode" +msgstr "스텔스 모드" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" +"이 기능은 뱀부의 클라우드 서비스로의 데이터 전송을 중지합니다. BBL 머신을 사" +"용하지 않거나 LAN 모드만 사용하는 사용자는 이 기능을 안전하게 켤 수 있습니다." + +msgid "Enable network plugin" +msgstr "네트워크 플러그인 사용" + +msgid "Check for stable updates only" +msgstr "안정적인 업데이트만 확인" + +msgid "Metric" +msgstr "미터법" + +msgid "Imperial" +msgstr "야드파운드법" + +msgid "Units" +msgstr "단위" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "Snapmaker Orca 인스턴스를 하나만 허용" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"OSX에서는 기본적으로 항상 하나의 앱 인스턴스만 실행됩니다. 그러나 명령줄에서 " +"동일한 앱의 여러 인스턴스를 실행할 수 있습니다. 그러한 경우 이 설정은 하나의 " +"인스턴스만 허용합니다." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" +"이 기능을 활성화하면 Snapmaker Orca를 시작하고 동일한 Snapmaker Orca의 다른 인스턴스" +"가 이미 실행 중일 때 해당 인스턴스가 대신 다시 활성화됩니다." + +msgid "Home" +msgstr "홈" + +msgid "Default Page" +msgstr "기본 페이지" + +msgid "Set the page opened on startup." +msgstr "시작 시 열리는 페이지를 설정합니다." + +msgid "Touchpad" +msgstr "터치패드" + +msgid "Camera style" +msgstr "카메라 스타일" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"카메라 탐색 스타일을 선택합니다.\n" +"기본값: 회전의 경우 LMB+이동, 패닝의 경우 RMB/MMB+이동.\n" +"터치패드: 회전하려면 Alt+이동, 패닝하려면 Shift+이동." + +msgid "Zoom to mouse position" +msgstr "마우스 위치로 확대" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "2D 윈도우 중앙이 아닌 3D 보기에서 마우스 포인터의 위치로 확대합니다." + +msgid "Use free camera" +msgstr "자유로운 카메라 앵글 사용" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"활성화된 경우 자유로운 카메라 앵글을 사용합니다. 활성화되지 않은 경우 제한된 " +"카메라 앵글을 사용합니다." + +msgid "Reverse mouse zoom" +msgstr "역방향 마우스 줌" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "활성화되면 마우스 휠을 사용하여 확대/축소 방향을 반대로 바꿉니다." + +msgid "Show splash screen" +msgstr "스플래시 화면 표시" + +msgid "Show the splash screen during startup." +msgstr "시작하는 동안 스플래시 화면을 표시합니다." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "시작 후 \"오늘의 팁\" 알림 표시" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "활성화하면 시작 시 유용한 힌트가 표시됩니다." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "플러시 볼륨: 색상이 변경될 때마다 자동 계산됩니다." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "활성화하면 색상이 변경될 때마다 자동 계산됩니다." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "플러싱량: 필라멘트가 교체될 때마다 자동 계산됩니다." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "활성화하면 필라멘트가 교체될 때마다 자동 계산됩니다" + +msgid "Remember printer configuration" +msgstr "프린터 구성 기억" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" +"활성화하면 Orca는 각 프린터의 필라멘트/프로세스 구성을 자동으로 기억하고 전환" +"합니다." + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "다중 장치 관리 (Orca를 다시 시작한 후 적용됨)." + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"활성화하면 여러 장치에 동시에 작업을 보내고 여러 장치를 관리할 수 있습니다." + +msgid "Auto arrange plate after cloning" +msgstr "복제 후 플레이트 자동 정렬" + +msgid "Auto arrange plate after object cloning" +msgstr "개체를 복제한 후 플레이트를 자동으로 정렬합니다" + +msgid "Network" +msgstr "네트워크" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "사용자 사전 설정 자동 동기화(프린터/필라멘트/프로세스)" + +msgid "User Sync" +msgstr "사용자 동기화" + +msgid "Update built-in Presets automatically." +msgstr "기본 제공 사전 설정을 자동으로 업데이트합니다." + +msgid "System Sync" +msgstr "시스템 동기화" + +msgid "Clear my choice on the unsaved presets." +msgstr "저장되지 않은 사전 설정에서 선택을 취소합니다." + +msgid "Associate files to Snapmaker Orca" +msgstr "파일을 Snapmaker Orca에 연결" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr ".3mf 파일을 Snapmaker Orca에 연결" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"활성화된 경우 Snapmaker Orca를 기본 응용 프로그램으로 설정하여 .3mf 파일을 엽니다" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr ".stl 파일을 Snapmaker Orca에 연결" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"활성화된 경우 Snapmaker Orca를 기본 응용 프로그램으로 설정하여 .stl 파일을 엽니다" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr ".step/.stp 파일을 Snapmaker Orca에 연결" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"활성화된 경우 Snapmaker Orca를 기본 응용 프로그램으로 설정하여 .step 파일을 엽니" +"다" + +msgid "Associate web links to Snapmaker Orca" +msgstr "Snapmaker Orca에 웹 링크 연결" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "Snapmaker Orca에 URL 연결" + +msgid "Maximum recent projects" +msgstr "최근 프로젝트 최대 표시" + +msgid "Maximum count of recent projects" +msgstr "최근 프로젝트의 최대 표시 수" + +msgid "Clear my choice on the unsaved projects." +msgstr "저장되지 않은 프로젝트에서 내 선택을 지웁니다." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "수정된 G코드로 3MF를 로드할 때 경고 없음" + +msgid "Auto-Backup" +msgstr "자동 백업" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "간헐적인 충돌로부터 복원하기 위해 주기적으로 프로젝트를 백업하세요." + +msgid "every" +msgstr "매" + +msgid "The peroid of backup in seconds." +msgstr "백업 기간(초)입니다." + +msgid "Downloads" +msgstr "다운로드" + +msgid "Dark Mode" +msgstr "다크 모드" + +msgid "Enable Dark mode" +msgstr "다크 모드 사용" + +msgid "Develop mode" +msgstr "개발자 모드" + +msgid "Skip AMS blacklist check" +msgstr "AMS 블랙리스트 확인 건너뛰기" + +msgid "Home page and daily tips" +msgstr "홈페이지 및 데일리 팁" + +msgid "Show home page on startup" +msgstr "시작 시 홈페이지 표시" + +msgid "Sync settings" +msgstr "동기화 설정" + +msgid "User sync" +msgstr "사용자 동기화" + +msgid "Preset sync" +msgstr "사전 설정 동기화" + +msgid "Preferences sync" +msgstr "기본 설정 동기화" + +msgid "View control settings" +msgstr "시점 컨트롤 설정" + +msgid "Rotate of view" +msgstr "시점 회전" + +msgid "Move of view" +msgstr "시점 이동" + +msgid "Zoom of view" +msgstr "시점 확대" + +msgid "Other" +msgstr "기타" + +msgid "Mouse wheel reverses when zooming" +msgstr "확대/축소 시 마우스 휠이 반전됩니다" + +msgid "Enable SSL(MQTT)" +msgstr "SSL(MQTT) 활성화" + +msgid "Enable SSL(FTP)" +msgstr "SSL(FTP) 활성화" + +msgid "Internal developer mode" +msgstr "내부 개발자 모드" + +msgid "Log Level" +msgstr "로그 수준" + +msgid "fatal" +msgstr "치명적" + +msgid "error" +msgstr "오류" + +msgid "warning" +msgstr "경고" + +msgid "debug" +msgstr "디버그" + +msgid "trace" +msgstr "추적" + +msgid "Host Setting" +msgstr "호스트 설정" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEV host: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA host: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "PRE host: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "제품 호스트" + +msgid "debug save button" +msgstr "디버그 저장 버튼" + +msgid "save debug settings" +msgstr "디버그 세팅 저장" + +msgid "DEBUG settings have saved successfully!" +msgstr "디버그 설정이 성공적으로 저장되었습니다!" + +msgid "Switch cloud environment, Please login again!" +msgstr "클라우드 환경 전환, 다시 로그인해주세요!" + +msgid "System presets" +msgstr "시스템 사전 설정" + +msgid "User presets" +msgstr "사용자 사전 설정" + +msgid "Incompatible presets" +msgstr "호환되지 않는 사전 설정" + +msgid "AMS filaments" +msgstr "AMS 필라멘트" + +msgid "Click to pick filament color" +msgstr "필라멘트 색상 선택" + +msgid "Please choose the filament colour" +msgstr "필라멘트 색상을 선택해 주세요" + +msgid "Add/Remove presets" +msgstr "사전 설정 추가/제거" + +msgid "Edit preset" +msgstr "사전 설정 편집" + +msgid "Project-inside presets" +msgstr "프로젝트 내부 사전 설정" + +msgid "Add/Remove filaments" +msgstr "필라멘트 추가/제거" + +msgid "Add/Remove materials" +msgstr "재료 추가/제거" + +msgid "Select/Remove printers(system presets)" +msgstr "프린터 선택/제거(시스템 사전 설정)" + +msgid "Create printer" +msgstr "프린터 생성" + +msgid "The selected preset is null!" +msgstr "선택한 사전 설정의 값이 존재하지 않습니다!(null)" + +msgid "End" +msgstr "끝" + +msgid "Customize" +msgstr "사용자 정의" + +msgid "Other layer filament sequence" +msgstr "다른 층 필라멘트 순서" + +msgid "Please input layer value (>= 2)." +msgstr "레이어 값(>= 2)을 입력하세요." + +msgid "Plate name" +msgstr "플레이트 이름" + +msgid "Same as Global Print Sequence" +msgstr "전역 출력 순서와 동일" + +msgid "Print sequence" +msgstr "출력 순서" + +msgid "Same as Global" +msgstr "글로벌과 동일" + +msgid "Disable" +msgstr "비활성" + +msgid "Spiral vase" +msgstr "나선형 꽃병 모드" + +msgid "First layer filament sequence" +msgstr "첫 번째 레이어 필라멘트 순서" + +msgid "Same as Global Plate Type" +msgstr "글로벌 플레이트 타입과 동일" + +msgid "Same as Global Bed Type" +msgstr "글로벌 베드유형과 동일" + +msgid "By Layer" +msgstr "레이어별" + +msgid "By Object" +msgstr "개체별" + +msgid "Accept" +msgstr "수락" + +msgid "Log Out" +msgstr "로그 아웃" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "시간 및 필라멘트 추정치를 얻기 위해 모든 플레이트를 슬라이스합니다" + +msgid "Packing project data into 3mf file" +msgstr "프로젝트 데이터를 3mf 파일로 압축" + +msgid "Uploading 3mf" +msgstr "3mf 업로드 중" + +msgid "Jump to model publish web page" +msgstr "모델 게시 웹 페이지로 이동" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "참고: 준비하는 데 몇 분 정도 걸릴 수 있습니다. 조금만 기다려 주십시오." + +msgid "Publish" +msgstr "게시" + +msgid "Publish was cancelled" +msgstr "게시가 취소되었습니다" + +msgid "Slicing Plate 1" +msgstr "플레이트 1 슬라이싱" + +msgid "Packing data to 3mf" +msgstr "데이터를 3mf로 압축 중" + +msgid "Jump to webpage" +msgstr "웹 페이지로 이동" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "%s을(를) 다음으로 저장" + +msgid "User Preset" +msgstr "사용자 사전 설정" + +msgid "Preset Inside Project" +msgstr "프로젝트 내부 사전 설정" + +msgid "Name is unavailable." +msgstr "이름을 사용할 수 없습니다." + +msgid "Overwrite a system profile is not allowed" +msgstr "시스템 사전 설정은 덮어쓸 수 없습니다" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "%1% 사전 설정이 이미 있습니다." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "%1% 사전 설정이 이미 있으며 현재 프린터와 호환되지 않습니다." + +msgid "Please note that saving action will replace this preset" +msgstr "저장 작업이 이 사전 설정을 대체합니다" + +msgid "The name cannot be the same as a preset alias name." +msgstr "이름은 사전 설정의 별칭 이름과 같을 수 없습니다." + +msgid "Save preset" +msgstr "사전 설정 저장" + +msgctxt "PresetName" +msgid "Copy" +msgstr "복사" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "%1% 프린터가 \"%2%\" 사전 설정으로 선택되었습니다" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "저장 후 사전 설정 \"%1%\" 으로 작업을 선택하세요." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "\"%1%\"에 대해 \"%2%\"를 \"%3%\"로 변경 " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "%1%에 대해, %2%를 새 사전 설정으로 추가합니다" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "\"%1%\"로 단순 전환" + +msgid "Task canceled" +msgstr "작업이 취소됨" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "검색" + +msgid "My Device" +msgstr "내 장치" + +msgid "Other Device" +msgstr "다른 장치" + +msgid "Online" +msgstr "온라인" + +msgid "Input access code" +msgstr "액세스 코드 입력" + +msgid "Can't find my devices?" +msgstr "내 장치를 찾을 수 없습니까?" + +msgid "Log out successful." +msgstr "로그아웃에 성공했습니다." + +msgid "Busy" +msgstr "사용중" + +msgid "Bambu Cool Plate" +msgstr "뱀부 쿨 플레이트" + +msgid "PLA Plate" +msgstr "PLA 플레이트" + +msgid "Bambu Engineering Plate" +msgstr "뱀부 엔지니어링 플레이트" + +msgid "Bambu Smooth PEI Plate" +msgstr "뱀부 부드러운 PEI 플레이트" + +msgid "High temperature Plate" +msgstr "고온 플레이트" + +msgid "Bambu Textured PEI Plate" +msgstr "뱀부 텍스처 PEI 플레이트" + +msgid "Send print job to" +msgstr "출력 작업 보내기" + +msgid "Flow Dynamics Calibration" +msgstr "동적 유량 교정" + +msgid "Click here if you can't connect to the printer" +msgstr "프린터에 연결할 수 없는 경우 여기를 클릭하세요" + +msgid "send completed" +msgstr "전송 완료" + +msgid "Error code" +msgstr "오류 코드" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "로그인 계정이 없으며 LAN 모드의 프린터만 표시됩니다" + +msgid "Connecting to server" +msgstr "서버에 연결 중" + +msgid "Synchronizing device information" +msgstr "장치 정보 동기화 중" + +msgid "Synchronizing device information time out" +msgstr "장치 정보 동기화 시간 초과" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "프린터가 펌웨어를 업데이트하는 동안 출력 작업을 보낼 수 없습니다" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "프린터가 명령을 실행하고 있습니다. 종료 후 출력을 다시 시작하세요" + +msgid "The printer is busy on other print job" +msgstr "프린터가 다른 출력 작업을 수행 중입니다" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"필라멘트 %s이(가) AMS 슬롯 수를 초과합니다. AMS 슬롯 할당을 지원하려면 프린" +"터 펌웨어를 업데이트하세요." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"필라멘트가 AMS 슬롯 수를 초과합니다. AMS 슬롯 할당을 지원하려면 프린터 펌웨어" +"를 업데이트하세요." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"AMS 슬롯 매핑에 대한 필라멘트가 설정되었습니다. 위의 필라멘트를 클릭하여 매" +"핑 AMS 슬롯을 변경할 수 있습니다" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"출력 작업을 보내기 전에 위의 각 필라멘트를 클릭하여 매핑 AMS 슬롯을 지정하세" +"요" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"필라멘트 %s가 AMS 슬롯 %s의 필라멘트와 일치하지 않습니다. AMS 슬롯 할당을 지" +"원하려면 프린터 펌웨어를 업데이트하세요." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"필라멘트가 AMS 슬롯의 필라멘트와 일치하지 않습니다. AMS 슬롯 할당을 지원하려" +"면 프린터 펌웨어를 업데이트하세요." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "프린터 펌웨어는 필라멘트 => AMS 슬롯의 순차 매핑만 지원합니다." + +msgid "An SD card needs to be inserted before printing." +msgstr "출력하기 전에 SD 카드를 삽입해야 합니다." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"선택한 프린터(%s)는 슬라이서(%s)에서 선택한 프린터 프로필과 호환되지 않습니" +"다." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "타임랩스를 녹화하려면 SD 카드를 삽입해야 합니다." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "펌웨어를 업데이트해야 하는 프린터로 출력 작업을 보낼 수 없습니다." + +msgid "Cannot send the print job for empty plate" +msgstr "빈 플레이트에 대한 출력 작업을 보낼 수 없습니다" + +msgid "This printer does not support printing all plates" +msgstr "이 프린터는 모든 플레이트 출력을 지원하지 않습니다" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"나선형 꽃병 모드를 활성화하면 I3 구조의 장치는 타임랩스 비디오를 생성하지 않" +"습니다." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"출력 순서가 \"개체별\"로 설정되어 있으므로 시간 경과는 지원되지 않습니다." + +msgid "Errors" +msgstr "오류" + +msgid "Please check the following:" +msgstr "다음을 확인하세요:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"G코드를 생성할 때 선택한 프린터 유형이 현재 선택한 프린터와 일치하지 않습니" +"다. 슬라이싱에 동일한 프린터 유형을 사용하는 것이 좋습니다." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"AMS 매핑에 알 수 없는 필라멘트가 있습니다. 필요한 필라멘트인지 확인해주세요. " +"정상이면 \"확인\"을 눌러 출력을 시작하세요." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "미리 설정된 노즐: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "기억된 노즐: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"슬라이스 파일의 노즐 직경이 기억된 노즐과 일치하지 않습니다. 최근에 노즐을 변" +"경한 경우 장치 > 프린터 부품으로 이동하여 설정을 변경하세요." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "고온 재료(%s 재료)를 %s로 출력하면 노즐이 손상될 수 있습니다" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "위의 오류를 수정하십시오. 그렇지 않으면 출력를 계속할 수 없습니다." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "그래도 출력을 계속하려면 확인 버튼을 클릭하세요." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "프린터에 연결 중입니다. 연결 진행 중에는 취소할 수 없습니다." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"사용상의 주의! 텍스처 PEI 플레이트의 유량 교정은 표면이 분산되어 실패할 수 있" +"습니다." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "마이크로 라이다를 사용한 자동 유량 교정" + +msgid "Modifying the device name" +msgstr "장치 이름 수정" + +msgid "Bind with Pin Code" +msgstr "핀 코드로 바인딩" + +msgid "Send to Printer SD card" +msgstr "프린터 SD 카드로 보내기" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "업그레이드가 진행 중일 때 출력 작업을 보낼 수 없습니다" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "선택한 프린터가 선택한 프린터 사전 설정과 호환되지 않습니다." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "프린터 SD 카드로 보내기 전에 SD 카드를 삽입해야 합니다." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "프린터는 Snapmaker Orca와 동일한 네트워크에 있어야 합니다." + +msgid "The printer does not support sending to printer SD card." +msgstr "프린터는 프린터 SD 카드로의 전송을 지원하지 않습니다." + +msgid "Slice ok." +msgstr "슬라이스 완료." + +msgid "View all Daily tips" +msgstr "모든 일일 팁 보기" + +msgid "Failed to create socket" +msgstr "소켓 생성 실패" + +msgid "Failed to connect socket" +msgstr "소켓 연결 실패" + +msgid "Failed to publish login request" +msgstr "로그인 요청 게시에 실패했습니다." + +msgid "Get ticket from device timeout" +msgstr "기기에서 티켓 가져오는데 시간 초과" + +msgid "Get ticket from server timeout" +msgstr "서버에서 티켓 가져오는데 시간 초과" + +msgid "Failed to post ticket to server" +msgstr "서버에 티켓게시 실패" + +msgid "Failed to parse login report reason" +msgstr "로그인 보고서의 원인을 해석하는 데 실패" + +msgid "Receive login report timeout" +msgstr "로그인 보고서 수신 시간 초과" + +msgid "Unknown Failure" +msgstr "알 수 없는 실패" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"프린터 화면의 계정 페이지에서 핀 코드를 찾으십시오.\n" +" 그리고 아래에 핀코드를 입력하세요." + +msgid "Can't find Pin Code?" +msgstr "핀 코드를 찾을 수 없나요?" + +msgid "Pin Code" +msgstr "핀 코드" + +msgid "Binding..." +msgstr "바인딩..." + +msgid "Please confirm on the printer screen" +msgstr "프린터 화면에서 확인해주세요" + +msgid "Log in failed. Please check the Pin Code." +msgstr "로그인 실패. 핀 코드를 확인해주세요." + +msgid "Log in printer" +msgstr "프린터 로그인" + +msgid "Would you like to log in this printer with current account?" +msgstr "현재 계정으로 이 프린터에 로그인하시겠습니까?" + +msgid "Check the reason" +msgstr "이유 확인" + +msgid "Read and accept" +msgstr "읽고 수락" + +msgid "Terms and Conditions" +msgstr "이용약관" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"뱀부랩 기기를 구매해 주셔서 감사합니다. 뱀부랩 기기를 사용하기 전에 이용약관" +"을 읽어주시기 바랍니다. 뱀부랩 기기 사용에 동의하기 위해 클릭하면 개인정보 보" +"호정책 및 이용약관(이하 통칭하여 \"약관\")을 준수하는 데 동의하는 것입니다. " +"뱀부랩 개인정보 처리방침을 준수하지 않거나 동의하지 않는 경우, 뱀부랩 장치 " +"및 서비스를 사용하지 마십시오." + +msgid "and" +msgstr "그리고" + +msgid "Privacy Policy" +msgstr "개인정보처리방침" + +msgid "We ask for your help to improve everyone's printer" +msgstr "모든 사람의 프린터 개선을 위해 여러분의 도움을 요청합니다" + +msgid "Statement about User Experience Improvement Program" +msgstr "사용자 경험 개선 프로그램에 대한 설명" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"3D 프린팅 커뮤니티에서는 서로의 성공과 실패로 부터 학습하여 각자의 슬라이싱 " +"매개변수와 설정을 조정합니다. %s는 이와 동일한 원칙을 따르며 머신 러닝을 사용" +"하여 사용자의 방대한 출력 성공과 실패로부터 성능을 개선합니다. 우리는 실제 데" +"이터를 통하여 %s가 더 똑똑해지도록 훈련시킵니다. 동의하신다면 이 서비스는 오" +"류 로그와 사용 로그를 포함할 수 있는 정보에 접근할 것입니다. 당사는 개인이 직" +"접 또는 간접적으로 식별될 수 있는 개인 데이터, 예를 들어 이름, 주소, 결제 정" +"보 또는 전화번호를 포함하여 어떤 개인 데이터도 수집하지 않습니다. 이 서비스" +"를 활성화하면 이 약관과 개인정보 보호정책에 대한 설명에 동의하는 것입니다." + +msgid "Statement on User Experience Improvement Plan" +msgstr "사용자 경험 개선 계획에 대한 성명서" + +msgid "Log in successful." +msgstr "로그인에 성공했습니다." + +msgid "Log out printer" +msgstr "프린터 로그아웃" + +msgid "Would you like to log out the printer?" +msgstr "프린터에서 로그아웃하시겠습니까?" + +msgid "Please log in first." +msgstr "먼저 로그인하세요." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "프린터에 연결하는 동안 문제가 발생했습니다. 다시 시도하세요." + +msgid "Failed to log out." +msgstr "로그아웃에 실패했습니다." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "현재 %s 저장" + +msgid "Delete this preset" +msgstr "이 사전 설정 삭제" + +msgid "Search in preset" +msgstr "사전 설정에서 찾기" + +msgid "Click to reset all settings to the last saved preset." +msgstr "모든 설정을 마지막으로 저장한 사전 설정으로 되돌립니다." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"유연모드 타임랩스를 위해서는 프라임 타워가 필요합니다. 프라임 타워가 없는 모" +"델에는 결함이 있을 수 있습니다. 프라임 타워를 사용하지 않도록 설정하시겠습니" +"까?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"유연모드 타임랩스를 위해서는 프라임 타워가 필요합니다. 프라임 타워가 없는 모" +"델에는 결함이 있을 수 있습니다. 프라임 타워를 사용하지 않도록 설정하시겠습니" +"까?" + +msgid "Still print by object?" +msgstr "아직도 개체별로 출력하시나요?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"지지대 부피는 작지만 강도는 약한 것이 특징인 실험적 모양 \"얇은 나무\"를 추가" +"했습니다.\n" +"접점 레이어 0, 상단 Z 거리 0, 벽 루프 2 와 함께 사용하는 것이 좋습니다." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"이 설정을 자동으로 변경하시겠습니까?\n" +"예 - 이 설정을 자동으로 변경합니다\n" +"아니요 - 이 설정을 변경하지 않습니다" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"\"강한 나무\" 및 \"혼합 나무\" 모양의 경우 최소 접점 레이어 2, 상단 Z 거리 " +"0.1 또는 접점에서 지지대 재료를 사용하는 설정을 권장합니다." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"지지대 접점에 지지대 재료를 사용하는 경우 다음 설정을 권장합니다:\n" +"상단 Z 거리 0, 접점 간격 0, 접점 패턴 동심원 및 독립적 지지대 높이 비활성화" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"이 옵션을 활성화하면 모델의 모양이 수정됩니다. 출력물에 정확한 치수가 필요하" +"거나 어셈블리의 일부인 경우 이러한 형상 변경이 출력물의 기능에 영향을 미치는" +"지 다시 확인하는 것이 중요합니다." + +msgid "Are you sure you want to enable this option?" +msgstr "이 옵션을 사용하시겠습니까?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"레이어 높이가 너무 작습니다.\n" +"min_layer_height로 설정됩니다.\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"레이어 높이가 프린터 설정 -> 압출기 -> 레이어의 제한을 초과합니다.높이 제한으" +"로 인해 출력 품질 문제가 발생할 수 있습니다." + +msgid "Adjust to the set range automatically? \n" +msgstr "설정 범위에 자동으로 맞춰지나요? \n" + +msgid "Adjust" +msgstr "조정" + +msgid "Ignore" +msgstr "무시" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"실험적 기능: 플러시를 최소화하기 위해 필라멘트 교체 중에 더 먼 거리에서 필라" +"멘트를 집어넣고 절단합니다. 플러시를 눈에 띄게 줄일 수 있지만 노즐 막힘이나 " +"기타 출력 문제의 위험이 높아질 수도 있습니다." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"실험적 기능: 플러시를 최소화하기 위해 필라멘트 교체 중에 더 먼 거리에서 필라" +"멘트를 집어넣고 절단합니다. 플러시를 크게 줄일 수 있지만 노즐 막힘이나 기타 " +"출력 문제의 위험을 높일 수도 있습니다. 최신 프린터 펌웨어와 함께 사용하십시" +"오." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"툴헤드 없이 시간 경과를 기록할 경우 \"타임랩스 닦기 타워\"를 추가하는 것이 좋" +"습니다\n" +"빌드 플레이트의 빈 위치를 마우스 오른쪽 버튼으로 클릭하고 \"기본 모델 추가\"-" +"> \"타임랩스 닦기 타워\"를 선택합니다." + +msgid "Line width" +msgstr "선 너비" + +msgid "Seam" +msgstr "솔기" + +msgid "Precision" +msgstr "정밀도" + +msgid "Wall generator" +msgstr "벽 생성기" + +msgid "Walls and surfaces" +msgstr "벽과 표면" + +msgid "Bridging" +msgstr "브릿지" + +msgid "Overhangs" +msgstr "돌출부" + +msgid "Walls" +msgstr "벽" + +msgid "Top/bottom shells" +msgstr "상단/하단 쉘" + +msgid "Initial layer speed" +msgstr "초기 레이어 속도" + +msgid "Other layers speed" +msgstr "다른 레이어 속도" + +msgid "Overhang speed" +msgstr "돌출부 속도" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"다양한 돌출부 각도에 대한 속도입니다. 돌출부 정도는 선 너비의 백분율로 표시됩" +"니다. 0 속도는 돌출부 정도에 대한 감속이 없음을 의미하며 벽 속도가 사용됩니다" + +msgid "Bridge" +msgstr "브릿지" + +msgid "Set speed for external and internal bridges" +msgstr "외부 및 내부 브릿지 속도 설정" + +msgid "Travel speed" +msgstr "이동 속도" + +msgid "Acceleration" +msgstr "가속도" + +msgid "Jerk(XY)" +msgstr "저크(XY)" + +msgid "Raft" +msgstr "라프트" + +msgid "Support filament" +msgstr "지지대 필라멘트" + +msgid "Tree supports" +msgstr "나무 지지대" + +msgid "Multimaterial" +msgstr "다중 재료" + +msgid "Prime tower" +msgstr "프라임 타워" + +msgid "Filament for Features" +msgstr "기능용 필라멘트" + +msgid "Ooze prevention" +msgstr "유출 방지" + +msgid "Skirt" +msgstr "스커트" + +msgid "Special mode" +msgstr "특수 모드" + +msgid "G-code output" +msgstr "G코드 출력" + +msgid "Post-processing Scripts" +msgstr "사후 처리 스크립트" + +msgid "Notes" +msgstr "메모" + +msgid "Frequent" +msgstr "빈도" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"다음 줄 %s에는 예약어가 포함되어 있습니다.\n" +"제거해 주십시오. 그렇지 않으면 G코드 시각화 및 출력 시간 추정치를 능가할 것입" +"니다." + +msgid "Reserved keywords found" +msgstr "예약어를 찾았습니다" + +msgid "Setting Overrides" +msgstr "설정 덮어쓰기" + +msgid "Retraction" +msgstr "후퇴" + +msgid "Basic information" +msgstr "기본 정보" + +msgid "Recommended nozzle temperature" +msgstr "권장 노즐 온도" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "이 필라멘트의 권장 노즐 온도 범위. 0은 설정하지 않음을 의미합니다" + +msgid "Flow ratio and Pressure Advance" +msgstr "유량 비율 및 압력 사전" + +msgid "Print chamber temperature" +msgstr "출력 챔버 온도" + +msgid "Print temperature" +msgstr "출력 온도" + +msgid "Nozzle" +msgstr "노즐" + +msgid "Nozzle temperature when printing" +msgstr "출력 시 노즐 온도" + +msgid "Cool plate" +msgstr "쿨 플레이트" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"쿨 플레이트 설치 시 베드 온도. 값 0은 필라멘트가 쿨 플레이트에 출력하는 것을 " +"지원하지 않음을 의미합니다" + +msgid "Textured Cool plate" +msgstr "텍스처 쿨 플레이트" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" +"쿨 플레이트가 설치되었을 때의 베드 온도입니다. 값 0은 필라멘트가 텍스처드 쿨 " +"플레이트에서 인쇄를 지원하지 않음을 의미합니다" + +msgid "Engineering plate" +msgstr "엔지니어링 플레이트" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"엔지니어링 플레이트가 설치 시 베드 온도. 값 0은 필라멘트가 엔지니어링 플레이" +"트에 출력하는 것을 지원하지 않음을 의미합니다" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "부드러운 PEI 플레이트 / 고온 플레이트" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"부드러운 PEI 플레이트/고온 플레이트 설치 시 베드 온도. 값 0은 필라멘트가 부드" +"러운 PEI 플레이트/고온 플레이트 출력을 지원하지 않음을 의미합니다" + +msgid "Textured PEI Plate" +msgstr "텍스처 PEI 플레이트" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"텍스처 PEI 플레이트가 설치된 경우 베드 온도. 값 0은 필라멘트가 텍스처 PEI 플" +"레이트에 출력하는 것을 지원하지 않음을 의미합니다" + +msgid "Volumetric speed limitation" +msgstr "체적 속도 제한" + +msgid "Cooling" +msgstr "냉각" + +msgid "Cooling for specific layer" +msgstr "특정 레이어 냉각" + +msgid "Part cooling fan" +msgstr "출력물 냉각 팬" + +msgid "Min fan speed threshold" +msgstr "팬 최소 속도 임계값" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"출력물 냉각 팬 속도는 예상 레이어 시간이 설정한 레이어 시간보다 짧으면 최소 " +"속도로 작동됩니다. 레이어 시간이 임계값보다 짧은 경우 팬 속도는 레이어 출력 " +"시간에 따라 최소 팬 속도와 최대 팬 속도 사이에 보간됩니다.(Interpolated)" + +msgid "Max fan speed threshold" +msgstr "팬 최대 속도 임계값" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"예상 레이어 시간이 설정 값보다 짧을 때 출력물 냉각 팬 속도가 최대가 됩니다" + +msgid "Auxiliary part cooling fan" +msgstr "보조 출력물 냉각 팬" + +msgid "Exhaust fan" +msgstr "환기 팬" + +msgid "During print" +msgstr "출력 중" + +msgid "Complete print" +msgstr "출력 완료" + +msgid "Filament start G-code" +msgstr "필라멘트 시작 G코드" + +msgid "Filament end G-code" +msgstr "필라멘트 종료 G코드" + +msgid "Wipe tower parameters" +msgstr "닦기 타워 매개변수" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "다중 재료 프린터의 단일 압출기 툴 체인지 매개변수" + +msgid "Ramming settings" +msgstr "래밍 설정" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "다중 재료 프린터의 다중 압출기 툴 체인지 매개변수" + +msgid "Printable space" +msgstr "출력 가능 공간" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "%1% 매개변수에 잘못된 값이 입력됨: %2%" + +msgid "G-code flavor is switched" +msgstr "G코드 유형이 변경됨" + +msgid "Cooling Fan" +msgstr "냉각 팬" + +msgid "Fan speed-up time" +msgstr "팬 가속 시간" + +msgid "Extruder Clearance" +msgstr "압출기 회피" + +msgid "Adaptive bed mesh" +msgstr "적응형 베드 메쉬" + +msgid "Accessory" +msgstr "악세서리" + +msgid "Machine gcode" +msgstr "장치 G코드" + +msgid "Machine start G-code" +msgstr "장치 시작 G코드" + +msgid "Machine end G-code" +msgstr "장치 종료 G코드" + +msgid "Printing by object G-code" +msgstr "개체 G코드로 출력" + +msgid "Before layer change G-code" +msgstr "레이어 변경 전 G코드" + +msgid "Layer change G-code" +msgstr "레이어 변경 G코드" + +msgid "Time lapse G-code" +msgstr "타임랩스 G코드" + +msgid "Change filament G-code" +msgstr "필라멘트 교체 G코드" + +msgid "Change extrusion role G-code" +msgstr "압출 역할 G코드 변경" + +msgid "Pause G-code" +msgstr "일시 정지 G코드" + +msgid "Template Custom G-code" +msgstr "템플릿 사용자 정의 G코드" + +msgid "Motion ability" +msgstr "동작 능력" + +msgid "Normal" +msgstr "일반" + +msgid "Speed limitation" +msgstr "속도 제한" + +msgid "Acceleration limitation" +msgstr "가속도 제한" + +msgid "Jerk limitation" +msgstr "저크 제한" + +msgid "Single extruder multimaterial setup" +msgstr "단일 압출기 다중 재료 설정" + +msgid "Number of extruders of the printer." +msgstr "프린터 익스트루더 수." + +msgid "" +"Single Extruder Multi Material is selected, \n" +"and all extruders must have the same diameter.\n" +"Do you want to change the diameter for all extruders to first extruder " +"nozzle diameter value?" +msgstr "" +"단일 압출기 다중 재료가 선택되었습니다,\n" +"를 선택하면 모든 압출기의 직경이 동일해야 합니다.\n" +"모든 압출기의 직경을 첫 번째 압출기 노즐 직경 값으로 변경하시겠습니까?" + +msgid "Nozzle diameter" +msgstr "노즐 직경" + +msgid "Wipe tower" +msgstr "닦기 타워" + +msgid "Single extruder multimaterial parameters" +msgstr "단일 압출기 다중 재료 매개변수" + +msgid "" +"This is a single extruder multimaterial printer, diameters of all extruders " +"will be set to the new value. Do you want to proceed?" +msgstr "" +"이것은 단일 압출기 다중 재료 프린터이며 모든 압출기의 직경이 새 값으로 설정됩" +"니다. 계속 진행하시겠습니까?" + +msgid "Layer height limits" +msgstr "레이어 높이 한도" + +msgid "Lift Z Enforcement" +msgstr "강제 Z 올리기" + +msgid "Retraction when switching material" +msgstr "재료 전환 시 후퇴" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"닦기 옵션은 펌웨어 후퇴 모드를 사용하는 경우에는 사용할 수 없습니다.\n" +"\n" +"펌웨어 후퇴를 활성화하기 위해 비활성화하겠습니까?" + +msgid "Firmware Retraction" +msgstr "펌웨어 후퇴" + +msgid "Detached" +msgstr "분리됨" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"%d개의 필라멘트 사전 설정과 %d개의 프로세스 사전 설정이 이 프린터에 연결되어 " +"있습니다.프린터를 삭제하면 사전 설정도 삭제됩니다." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "다른 프리셋에 상속된 프리셋은 삭제할 수 없습니다!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "다음 사전 설정은 이 사전 설정을 상속합니다." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "사전 설정 %1%" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "다음 사전 설정도 삭제됩니다." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"선택한 사전 설정을 삭제하시겠습니까? \n" +"프리셋이 현재 프린터에서 사용 중인 필라멘트와 일치하는 경우,해당 슬롯의 필라" +"멘트 정보를 재설정해 주세요." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "선택한 사전 설정을 %1%로 설정하시겠습니까?" + +msgid "All" +msgstr "모두" + +msgid "Set" +msgstr "설정" + +msgid "Click to reset current value and attach to the global value." +msgstr "현재 값을 재설정하고 전역 값에 연결하려면 클릭합니다." + +msgid "Click to drop current modify and reset to saved value." +msgstr "현재 수정 내용을 삭제하고 저장된 값으로 재설정하려면 클릭하세요." + +msgid "Process Settings" +msgstr "프로세스 설정" + +msgid "Undef" +msgstr "정의되지 않음" + +msgid "Unsaved Changes" +msgstr "저장되지 않은 변경 사항" + +msgid "Transfer or discard changes" +msgstr "변경 사항 폐기 또는 유지" + +msgid "Old Value" +msgstr "이전 값" + +msgid "New Value" +msgstr "새로운 값" + +msgid "Transfer" +msgstr "이전" + +msgid "Don't save" +msgstr "저장하지 않음" + +msgid "Discard" +msgstr "폐기" + +msgid "Click the right mouse button to display the full text." +msgstr "마우스 오른쪽 버튼을 클릭하여 전체 텍스트를 표시합니다." + +msgid "All changes will not be saved" +msgstr "모든 변경 사항이 저장되지 않습니다" + +msgid "All changes will be discarded." +msgstr "모든 변경 사항이 폐기됩니다." + +msgid "Save the selected options." +msgstr "선택한 옵션을 저장합니다." + +msgid "Keep the selected options." +msgstr "선택한 옵션을 유지합니다." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "선택한 옵션을 새로 선택한 사전 설정으로 이전합니다." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"선택한 옵션을 사전 설정에 저장\n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"선택한 옵션을 새로 선택한 사전 설정으로 이전\n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "사전 설정 \"%1%\"에는 다음 저장되지 않은 변경 사항 포함:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"사전 설정 \"%1%\"은(는) 새 프린터 사전설정과 호환되지 않으며 다음 저장되지 않" +"은 변경 사항을 포함:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"사전 설정 \"%1%\"은(는) 새 프로세스 사전설정과 호환되지 않으며 다음 저장되지 " +"않은 변경 사항을 포함:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "사전 설정 \"%1%\"의 일부 설정을 변경했습니다. " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"수정한 사전 설정 값을 저장하거나 삭제할 수 있습니다." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" +"\n" +"수정한 사전 설정 값을 저장하거나 삭제하거나, 수정한 값을 새 사전 설정으로 전" +"송하도록 선택할 수 있습니다." + +msgid "You have previously modified your settings." +msgstr "이전에 설정을 수정했습니다." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"수정한 사전 설정 값을 삭제하거나 수정된 ​​값을 새 프로젝트로 전송하도록 선택할 " +"수 있습니다" + +msgid "Extruders count" +msgstr "압출기 수" + +msgid "General" +msgstr "일반" + +msgid "Capabilities" +msgstr "성능" + +msgid "Show all presets (including incompatible)" +msgstr "모든 사전 설정 표시(호환되지 않는 설정 포함)" + +msgid "Select presets to compare" +msgstr "비교할 사전 설정 선택" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" +"현재 활성 프로필이 수정되었으므로 현재 활성 프로필로만 전송할 수 있습니다." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"선택한 옵션을 왼쪽 프리셋에서 오른쪽으로 옮깁니다.\n" +"참고: 이 대화 상자를 닫은 후 설정 탭에서 새로 수정된 프리셋이 선택됩니다." + +msgid "Transfer values from left to right" +msgstr "왼쪽에서 오른쪽으로 값 전송" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" +"이 대화 상자를 활성화하면 선택한 값을 왼쪽에서 오른쪽으로 사전 설정으로 변환" +"하는 데 사용할 수 있습니다." + +msgid "Add File" +msgstr "파일 추가" + +msgid "Set as cover" +msgstr "커버로 설정" + +msgid "Cover" +msgstr "커버" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "%1% 이름이 이미 있습니다." + +msgid "Basic Info" +msgstr "기본 정보" + +msgid "Pictures" +msgstr "사진" + +msgid "Bill of Materials" +msgstr "재료 명세서" + +msgid "Assembly Guide" +msgstr "조립 가이드" + +msgid "Author" +msgstr "원작자" + +msgid "Model Name" +msgstr "모델명" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s 업데이트" + +msgid "A new version is available" +msgstr "새 버전을 사용할 수 있습니다" + +msgid "Configuration update" +msgstr "구성 업데이트" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "새 구성 패키지를 사용할 수 있습니다. 설치하시겠습니까?" + +msgid "Description:" +msgstr "설명:" + +msgid "Configuration incompatible" +msgstr "호환되지 않는 구성" + +msgid "the configuration package is incompatible with current application." +msgstr "구성 패키지가 현재 응용 프로그램과 호환되지 않습니다." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"구성 패키지가 현재 애플리케이션과 호환되지 않습니다.\n" +"%s는 구성 패키지를 업데이트합니다. 그렇지 않으면 시작할 수 없습니다" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "%s 종료" + +msgid "the Configuration package is incompatible with current APP." +msgstr "구성 패키지가 현재 애플리케이션과 호환되지 않습니다." + +msgid "Configuration updates" +msgstr "구성 업데이트" + +msgid "No updates available." +msgstr "사용 가능한 업데이트가 없습니다." + +msgid "The configuration is up to date." +msgstr "구성이 최신 상태입니다." + +msgid "Obj file Import color" +msgstr "Obj 파일 가져오기 색상" + +msgid "Specify number of colors:" +msgstr "색상 수 지정:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "색상 개수는 [%d, %d] 범위 내에 있어야 합니다." + +msgid "Recommended " +msgstr "추천 " + +msgid "Current filament colors:" +msgstr "현재 필라멘트 색상:" + +msgid "Quick set:" +msgstr "빠른 설정:" + +msgid "Color match" +msgstr "색상 일치" + +msgid "Approximate color matching." +msgstr "대략적인 색상 일치." + +msgid "Append" +msgstr "추가" + +msgid "Add consumable extruder after existing extruders." +msgstr "기존 압출기 뒤에 소모성 압출기를 추가합니다." + +msgid "Reset mapped extruders." +msgstr "매핑된 압출기를 재설정합니다." + +msgid "Cluster colors" +msgstr "클러스터 색상" + +msgid "Map Filament" +msgstr "지도 필라멘트" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"참고: 색상이 선택되었습니다. 확인을 누르시면\n" +" 계속하거나 수동으로 조정할수 있습니다." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"경고: 새로 추가된 개수와\n" +" 현재 압출기는 16개를 초과합니다." + +msgid "Ramming customization" +msgstr "래밍 사용자 정의" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"래밍은 단일 압출기 다중 재료 프린터에서 툴 체인지 직전의 급속 압출을 의미합니" +"다. 필라멘트를 뺄때 끝 모양을 적절하게 형성하여 새 필라멘트의 삽입을 방해하" +"지 않고 나중에 다시 삽입할 수 있도록 하는 것입니다. 이 단계는 중요하며, 좋은 " +"모양을 얻으려면 재료마다 다른 압출 속도가 필요할 수 있습니다. 이러한 이유로 " +"래밍 중 압출 속도는 조정 가능합니다.\n" +"\n" +"이는 전문가 수준 설정이므로 잘못 조정하면 막힘, 필라멘트 갈림 등이 발생할 수 " +"있습니다." + +msgid "Total ramming time" +msgstr "총 래밍 시간" + +msgid "s" +msgstr "초" + +msgid "Total rammed volume" +msgstr "총 래밍 부피" + +msgid "Ramming line width" +msgstr "래밍 선 너비" + +msgid "Ramming line spacing" +msgstr "래밍 선 간격" + +msgid "Auto-Calc" +msgstr "자동 계산" + +msgid "Re-calculate" +msgstr "다시 계산" + +msgid "Flushing volumes for filament change" +msgstr "필라멘트 교체를 위한 버리기 볼륨" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Orca는 필라멘트 색상이 변경될 때마다 버리기 볼륨을 다시 계산합니다. Orca " +"Slicer > 기본 설정에서 자동 계산을 비활성화할 수 있습니다" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "각 필라멘트 쌍에 대한 버리기 볼륨(mm³)." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "제안: [%d, %d] 범위의 버리기 볼륨" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "승수는 [%.2f, %.2f] 범위에 있어야 합니다." + +msgid "Multiplier" +msgstr "승수" + +msgid "unloaded" +msgstr "언로드됨" + +msgid "loaded" +msgstr "로드됨" + +msgid "Filament #" +msgstr "필라멘트 #" + +msgid "From" +msgstr "에서" + +msgid "To" +msgstr "으로" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" +"이 작업에는 Windows Media Player가 필요합니다! 운영 체제에서 Windows Media " +"Player를 활성화하시겠습니까?" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" +"뱀부소스가 미디어 재생에 올바르게 등록되지 않았습니다! 다시 등록하려면 예를 " +"누르세요. 두 번 승격됩니다" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" +"미디어 재생을 위해 등록된 뱀부소스 컴포넌트가 누락되었습니다! 뱀부스튜디오를 " +"다시 설치하거나 판매 후 도움을 받으세요." + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" +"다른 설치 버전의 뱀부소스를 사용하면 동영상 재생이 제대로 작동하지 않을 수 있" +"습니다! 예를 눌러 문제를 해결하세요." + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" +"시스템에 동영상 재생을 위해 필요한 GStreamer용 H.264 코덱이 존재하지 않습니" +"다. (gstreamer1.0-plugins-bad 또는 gstreamer1.0-libav 패키지를 설치한 다음 " +"Snapmaker Orca를 다시 실행하십시오.)" + +msgid "Bambu Network plug-in not detected." +msgstr "뱀부 네트워크 플러그인이 감지되지 않습니다." + +msgid "Click here to download it." +msgstr "다운로드하려면 여기를 클릭하세요." + +msgid "Login" +msgstr "로그인" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "이전 구성 가이드에서 구성 패키지가 변경되었습니다" + +msgid "Configuration package changed" +msgstr "구성 패키지가 변경됨" + +msgid "Toolbar" +msgstr "도구 상자" + +msgid "Objects list" +msgstr "개체 목록" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "STL/STEP/3MF/OBJ/AMF 파일에서 형상 데이터 가져오기" + +msgid "Shift+G" +msgstr "" + +msgid "Paste from clipboard" +msgstr "클립보드에서 붙여넣기" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "3D 연결 장치 설정 표시/숨기기 대화상자" + +msgid "Switch table page" +msgstr "테이블 페이지 전환" + +msgid "Show keyboard shortcuts list" +msgstr "키보드 단축키 목록 보기" + +msgid "Global shortcuts" +msgstr "전역 단축키" + +msgid "Rotate View" +msgstr "시점 회전" + +msgid "Pan View" +msgstr "시점 이동" + +msgid "Mouse wheel" +msgstr "마우스 휠" + +msgid "Zoom View" +msgstr "시점 확대/축소" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"선택한 개체 또는 모든 개체의 방향을 자동으로 지정합니다.선택한 개체가 있는 경" +"우 선택한 개체의 방향만 지정합니다.그렇지 않으면 현재 디스크에 있는 모든 개체" +"의 방향이 지정됩니다." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "사이드바 접기/펼치기" + +msgid "Any arrow" +msgstr "" + +msgid "Movement in camera space" +msgstr "카메라 공간에서 이동" + +msgid "Select a part" +msgstr "부품 선택" + +msgid "Select multiple objects" +msgstr "여러 개체 선택" + +msgid "Shift+Left mouse button" +msgstr "Shift+마우스 왼쪽 버튼" + +msgid "Select objects by rectangle" +msgstr "사각형으로 개체 선택" + +msgid "Arrow Up" +msgstr "화살표 위로" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "선택 항목을 +Y 방향으로 10mm 이동" + +msgid "Arrow Down" +msgstr "화살표 아래로" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "선택 항목을 -Y 방향으로 10mm 이동" + +msgid "Arrow Left" +msgstr "화살표 왼쪽으로" + +msgid "Move selection 10 mm in negative X direction" +msgstr "선택 항목을 -X 방향으로 10mm 이동" + +msgid "Arrow Right" +msgstr "화살표 오른쪽으로" + +msgid "Move selection 10 mm in positive X direction" +msgstr "선택 항목을 +X 방향으로 10mm 이동" + +msgid "Shift+Any arrow" +msgstr "Shift+화살표" + +msgid "Movement step set to 1 mm" +msgstr "1mm로 이동" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "키보드 1-9: 개체/부품에 필라멘트 할당" + +msgid "Camera view - Default" +msgstr "카메라 시점 - 기본" + +msgid "Camera view - Top" +msgstr "카메라 시점 - 위" + +msgid "Camera view - Bottom" +msgstr "카메라 시점 - 아래" + +msgid "Camera view - Front" +msgstr "카메라 시점 - 앞" + +msgid "Camera view - Behind" +msgstr "카메라 시점 - 뒤" + +msgid "Camera Angle - Left side" +msgstr "카메라 각도 - 좌측" + +msgid "Camera Angle - Right side" +msgstr "카메라 각도 - 우측" + +msgid "Select all objects" +msgstr "모든 개체 선택" + +msgid "Gizmo move" +msgstr "도구 상자 이동" + +msgid "Gizmo scale" +msgstr "도구 상자 배율" + +msgid "Gizmo rotate" +msgstr "도구 상자 회전" + +msgid "Gizmo cut" +msgstr "도구 상자 잘라내기" + +msgid "Gizmo Place face on bed" +msgstr "도구 상자 바닥면 선택" + +msgid "Gizmo SLA support points" +msgstr "도구 상자 지지대 칠하기" + +msgid "Gizmo FDM paint-on seam" +msgstr "도구 상자 솔기 칠하기" + +msgid "Gizmo Text emboss / engrave" +msgstr "기즈모 텍스트 엠보싱/인그레이빙" + +msgid "Zoom in" +msgstr "확대" + +msgid "Zoom out" +msgstr "축소" + +msgid "Switch between Prepare/Preview" +msgstr "준비 하기/미리 보기 전환" + +msgid "Plater" +msgstr "출력판" + +msgid "Move: press to snap by 1mm" +msgstr "이동: 눌러서 1mm씩 이동" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "지지대/색상 칠하기: 펜 반경 조정" + +msgid "Support/Color Painting: adjust section position" +msgstr "지지대/색상 칠하기: 단면 위치 조정" + +msgid "Gizmo" +msgstr "도구 상자" + +msgid "Set extruder number for the objects and parts" +msgstr "개체 및 부품에 대한 압출기 번호 설정" + +msgid "Delete objects, parts, modifiers " +msgstr "개체, 부품, 수정자 삭제 " + +msgid "Select the object/part and press space to change the name" +msgstr "개체/부품을 선택하고 스페이스바를 눌러 이름을 변경합니다" + +msgid "Mouse click" +msgstr "마우스 클릭" + +msgid "Select the object/part and mouse click to change the name" +msgstr "개체/부품을 선택하고 마우스를 클릭하여 이름을 변경합니다" + +msgid "Objects List" +msgstr "개체 목록" + +msgid "Vertical slider - Move active thumb Up" +msgstr "수직 슬라이더 - 활성 레이어 위로 이동" + +msgid "Vertical slider - Move active thumb Down" +msgstr "수직 슬라이더 - 활성 레이어 아래로 이동" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "수평 슬라이더 - 활성 라인 왼쪽으로 이동" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "수평 슬라이더 - 활성 라인 오른쪽으로 이동" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "수직 슬라이더의 한 레이어 모드 켜기/끄기" + +msgid "On/Off g-code window" +msgstr "G코드 창 켜기/끄기" + +msgid "Move slider 5x faster" +msgstr "슬라이더를 5배 빠르게 이동" + +msgid "Shift+Mouse wheel" +msgstr "Shift+마우스 휠" + +msgid "Horizontal slider - Move to start position" +msgstr "수평 슬라이더 - 시작 위치로 이동" + +msgid "Horizontal slider - Move to last position" +msgstr "수평 슬라이더 - 마지막 위치로 이동" + +msgid "Release Note" +msgstr "릴리스 노트" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "버전 %s 업데이트 정보 :" + +msgid "Network plug-in update" +msgstr "네트워크 플러그인 업데이트" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"다음 Snapmaker Orca를 시작할 때 네트워크 플러그인을 업데이트하려면 확인을 클릭합" +"니다." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "새 네트워크 플러그인(%s)을 사용할 수 있습니다. 설치하시겠습니까?" + +msgid "New version of Snapmaker Orca" +msgstr "Snapmaker Orca의 새 버전" + +msgid "Skip this Version" +msgstr "이 버전 건너뛰기" + +msgid "Done" +msgstr "완료" + +msgid "resume" +msgstr "재개" + +msgid "Resume Printing" +msgstr "출력 재개" + +msgid "Resume Printing(defects acceptable)" +msgstr "출력 재개(결함 허용)" + +msgid "Resume Printing(problem solved)" +msgstr "출력 재개(문제 해결)" + +msgid "Stop Printing" +msgstr "출력 중지" + +msgid "Check Assistant" +msgstr "어시스턴트 확인" + +msgid "Filament Extruded, Continue" +msgstr "필라멘트 압출, 계속" + +msgid "Not Extruded Yet, Retry" +msgstr "아직 압출되지 않았습니다. 다시 시도하세요" + +msgid "Finished, Continue" +msgstr "완료, 계속" + +msgid "Load Filament" +msgstr "필라멘트 넣기" + +msgid "Filament Loaded, Resume" +msgstr "필라멘트 로드됨, 재개" + +msgid "View Liveview" +msgstr "실시간 보기" + +msgid "Confirm and Update Nozzle" +msgstr "노즐 확인 및 업데이트" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "LAN 연결 실패(출력 파일 전송 중)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"1단계, Snapmaker Orca와 프린터가 동일한 네트워크에 연결되어 있는지 확인하세요." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"2단계, 아래의 IP 및 액세스 코드가 프린터의 실제 값과 다른 경우 수정하세요." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "액세스 코드" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "프린터의 IP 및 액세스 코드는 어디에서 찾을 수 있습니까?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "3단계: IP 주소를 ping하여 패킷 손실 및 대기 시간을 확인합니다." + +msgid "Test" +msgstr "테스트" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP 및 액세스 코드가 확인되었습니다. 창을 닫아도 됩니다" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "연결에 실패했습니다. IP와 액세스 코드를 다시 확인하세요" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"연결에 실패했습니다. IP와 액세스 코드가 올바른 경우 \n" +"네트워크 문제를 해결하려면 3단계로 이동하세요" + +msgid "Model:" +msgstr "모델:" + +msgid "Serial:" +msgstr "시리얼:" + +msgid "Version:" +msgstr "버전:" + +msgid "Update firmware" +msgstr "펌웨어 업데이트" + +msgid "Beta version" +msgstr "베타 버전" + +msgid "Latest version" +msgstr "최신 버전" + +msgid "Updating" +msgstr "업데이트 중" + +msgid "Updating failed" +msgstr "업데이트 실패" + +msgid "Updating successful" +msgstr "업데이트 성공" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"업데이트하시겠습니까? 약 10분 정도 소요됩니다. 프린터가 업데이트되는 동안에" +"는 전원을 끄지 마십시오." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"중요한 업데이트가 감지되었으며 출력을 계속하려면 먼저 업데이트해야 합니다. 지" +"금 업데이트하시겠습니까? '펌웨어 업그레이드'에서 나중에 업데이트할 수도 있습" +"니다." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"펌웨어 버전이 비정상입니다. 출력하기 전에 수리 및 업데이트가 필요합니다. 지" +"금 업데이트하시겠습니까? 나중에 프린터에서 업데이트하거나 다음에 스튜디오를 " +"시작할 때 업데이트할 수도 있습니다." + +msgid "Extension Board" +msgstr "확장 보드" + +msgid "Saving objects into the 3mf failed." +msgstr "개체를 3mf에 저장하지 못했습니다." + +msgid "Only Windows 10 is supported." +msgstr "윈도우 10만 지원합니다." + +msgid "Failed to initialize the WinRT library." +msgstr "WinRT 라이브러리를 초기화하지 못했습니다." + +msgid "Exporting objects" +msgstr "개체 내보내는 중" + +msgid "Failed loading objects." +msgstr "개체를 로드하지 못했습니다." + +msgid "Repairing object by Windows service" +msgstr "Windows 서비스로 개체 수리 중" + +msgid "Repair failed." +msgstr "수리에 실패하였습니다." + +msgid "Loading repaired objects" +msgstr "수리된 개체 로드" + +msgid "Exporting 3mf file failed" +msgstr "3mf 파일 내보내기 실패" + +msgid "Import 3mf file failed" +msgstr "3mf 파일 가져오기 실패" + +msgid "Repaired 3mf file does not contain any object" +msgstr "수리된 3mf 파일에 개체가 없습니다" + +msgid "Repaired 3mf file contains more than one object" +msgstr "수리된 3mf 파일에 둘 이상의 개체가 포함되어 있습니다" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "수리된 3mf 파일에 부피가 없습니다" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "수리된 3mf 파일에 둘 이상의 부피가 포함되어 있습니다" + +msgid "Repair finished" +msgstr "수리 완료" + +msgid "Repair canceled" +msgstr "수리 취소됨" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "파일 %1%을(를) %2%(으)로 복사 실패: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "구성 업데이트 전에 저장되지 않은 변경 사항을 확인해야 합니다." + +msgid "Configuration package: " +msgstr "구성 패키지: " + +msgid " updated to " +msgstr " 로 업데이트되었습니다 " + +msgid "Open G-code file:" +msgstr "G코드 파일 열기:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"개체 하나에 초기 레이어가 비어 있어 출력할 수 없습니다. 바닥을 자르거나 지지" +"대를 활성화하세요." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "%1%에서 %2% 사이의 빈 레이어에 대해 개체를 출력할 수 없습니다." + +#, boost-format +msgid "Object: %1%" +msgstr "개체: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"이 높이에 있는 개체의 일부가 너무 얇거나 개체에 결함이 있는 메쉬가 있을 수 있" +"습니다" + +msgid "No object can be printed. Maybe too small" +msgstr "개체를 출력할 수 없습니다. 너무 작을 수 있습니다" + +msgid "" +"Your print is very close to the priming regions. Make sure there is no " +"collision." +msgstr "인쇄물이 프라이밍 영역에 매우 가깝습니다. 충돌이 없는지 확인합니다." + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"잘못된 사용자 정의 G코드로 인해 gcode를 생성하지 못했습니다.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "사용자 정의 G코드를 확인하거나 기본 사용자 정의 G코드를 사용하세요." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "G코드 생성 중: 레이어 %1%" + +msgid "Inner wall" +msgstr "내벽" + +msgid "Outer wall" +msgstr "외벽" + +msgid "Overhang wall" +msgstr "돌출부 벽" + +msgid "Sparse infill" +msgstr "드문 채우기" + +msgid "Internal solid infill" +msgstr "꽉찬 내부 채우기" + +msgid "Top surface" +msgstr "상단 표면" + +msgid "Bottom surface" +msgstr "하단 표면" + +msgid "Internal Bridge" +msgstr "내부 브릿지" + +msgid "Gap infill" +msgstr "간격 채우기" + +msgid "Support interface" +msgstr "지지대 접점" + +msgid "Support transition" +msgstr "지지대 전환" + +msgid "Multiple" +msgstr "다수" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"%1%의 선 너비를 계산하지 못했습니다. \"%2%\"의 값을 가져올 수 없습니다 " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Flow::with_spacing()에 잘못된 간격이 제공되었습니다. 레이어 높이와 돌출 너비" +"를 확인하세요" + +msgid "undefined error" +msgstr "정의되지 않은 오류" + +msgid "too many files" +msgstr "파일이 너무 많습니다" + +msgid "file too large" +msgstr "파일이 너무 큽니다" + +msgid "unsupported method" +msgstr "지지대 재료 없는 방식" + +msgid "unsupported encryption" +msgstr "지원되지 않는 암호화" + +msgid "unsupported feature" +msgstr "지원되지 않는 기능" + +msgid "failed finding central directory" +msgstr "중앙 디렉토리를 찾지 못했습니다" + +msgid "not a ZIP archive" +msgstr "ZIP 형식의 압축파일이 아닙니다" + +msgid "invalid header or corrupted" +msgstr "잘못된 헤더이거나 손상됨" + +msgid "unsupported multidisk" +msgstr "지원되지 않는 멀티디스크" + +msgid "decompression failed" +msgstr "압축 해제 실패" + +msgid "compression failed" +msgstr "압축 실패" + +msgid "unexpected decompressed size" +msgstr "예기치 못한 압축 해제 크기" + +msgid "CRC check failed" +msgstr "CRC 확인 실패" + +msgid "unsupported central directory size" +msgstr "지원되지 않는 중앙 디렉터리 크기" + +msgid "allocation failed" +msgstr "할당 실패" + +msgid "file open failed" +msgstr "파일 열기 실패" + +msgid "file create failed" +msgstr "파일 생성 실패" + +msgid "file write failed" +msgstr "파일 쓰기 실패" + +msgid "file read failed" +msgstr "파일 읽기 실패" + +msgid "file close failed" +msgstr "파일 닫기 실패" + +msgid "file seek failed" +msgstr "파일 찾기 실패" + +msgid "file stat failed" +msgstr "파일 통계 실패" + +msgid "invalid parameter" +msgstr "잘못된 매개 변수" + +msgid "invalid filename" +msgstr "잘못된 파일 이름" + +msgid "buffer too small" +msgstr "버퍼가 너무 작음" + +msgid "internal error" +msgstr "내부 오류" + +msgid "file not found" +msgstr "파일을 찾을 수 없습니다" + +msgid "archive too large" +msgstr "압축파일이 너무 큽니다" + +msgid "validation failed" +msgstr "검증에 실패했습니다" + +msgid "write callback failed" +msgstr "쓰기 호출 실패" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% 이(가) 제외 영역에 너무 가깝습니다. 출력 시 충돌이 발생 할 수 있습니다." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% 이(가) 다른 개체와 너무 가까워 출력 시 충돌이 발생 할 수 있습니다." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% 이(가) 너무 높아서 충돌이 출력 시 발생할 수 있습니다." + +msgid " is too close to others, there may be collisions when printing." +msgstr " 이(가) 다른 개체와 너무 가까워 출력 시 충돌이 발생 할 수 있습니다." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" 이(가) 제외 영역에 너무 가깝습니다. 출력 시 충돌이 발생 할 수 있습니다." + +msgid "Prime Tower" +msgstr "프라임 타워" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " 이(가) 다른 개체와 너무 가까워 출력 시 충돌이 발생 할 수 있습니다.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" +" 이(가) 제외 영역에 너무 가깝습니다. 출력 시 충돌이 발생 할 수 있습니다.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"온도 차이가 큰 필라멘트를 여러 개 함께 출력할 수 없습니다. 그렇지 않으면 출" +"력 중에 압출기와 노즐이 막히거나 손상될 수 있습니다" + +msgid "No extrusions under current settings." +msgstr "현재 설정에 압출기가 없습니다." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"타임랩스의 유연 모드는 \"개체별\" 출력순서가 활성화된 경우 지원되지 않습니다." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"나선형 꽃병 모드에서 여러 개체를 출력하려면 \"개체별\" 출력 순서를 선택하세" +"요." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"개체에 둘 이상의 재료가 포함된 경우 나선형 꽃병 모드가 작동하지 않습니다." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "%1% 개체가 최대 빌드 부피 높이를 초과합니다." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"%1% 개체 자체가 빌드 부피에 맞지만 마지막 레이어가 최대 빌드 부피 높이를 초과" +"합니다." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"모델 크기를 줄이거나 현재 출력 설정을 변경하고 다시 시도할 수 있습니다." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "유기체 지지대에서는 가변 레이어 높이가 지원되지 않습니다." + +msgid "" +"Different nozzle diameters and different filament diameters may not work " +"well when the prime tower is enabled. It's very experimental, so please " +"proceed with caution." +msgstr "" +"프라임 타워를 활성화하면 노즐 직경과 필라멘트 직경이 다르면 제대로 작동하지 " +"않을 수 있습니다. 매우 실험적인 기능이므로 주의해서 사용하시기 바랍니다." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"닦기 타워는 현재 관련 압출기에서만 지원됩니다.주소 지정" +"(use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is only supported with the wipe tower when " +"'single_extruder_multi_material' is off." +msgstr "" +"오수 방지는 'single_extruder_multi_material'이 꺼져 있을 때만 와이프 타워에" +"서 지원됩니다." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"프라임 타워는 현재 Marlin, RepRap/Sprinter, RepRapFirmware 및 Repetier G코드 " +"유형에서만 지원됩니다." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "프라임 타워는 \"개체별\" 출력에서 지원되지 않습니다." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"적응형 레이어 높이가 켜져 있으면 프라임 타워가 지원되지 않습니다. 모든 개체" +"의 레이어 높이가 동일해야 합니다." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "프라임 타워는 \"지지대 간격\"이 레이어 높이의 배수여야 합니다" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "프라임 타워는 모든 개체의 레이어 높이가 동일해야 합니다" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"프라임 타워는 모든 개체가 동일한 수의 라프트 레이어 위에 출력되어야 합니다" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "프라임 타워는 모든 개체가 동일한 레이어 높이로 슬라이스되어야 합니다." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"프라임 타워는 모든 개체의 가변 레이어 높이가 동일한 경우에만 지원됩니다" + +msgid "Too small line width" +msgstr "선 너비가 너무 작습니다" + +msgid "Too large line width" +msgstr "선 너비가 너무 큽니다" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "프라임 타워는 지지대가 개체와 동일한 레이어 높이를 갖도록 요구합니다." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"유기체 지지대 나무 끝 직경은 지지대 재료 압출 너비보다 작아서는 안 됩니다." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"유기체 지지대 가지 직경은 지지대 재료 압출 너비의 2배보다 작아서는 안 됩니다." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "유기체 지지대 가지 직경은 지지대 나무 끝 직경보다 작을 수 없습니다." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"지지대 강제기가 사용되지만 지지대가 활성화되지 않습니다. 지지대를 활성화하세" +"요." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "레이어 높이는 노즐 직경을 초과할 수 없습니다" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"상대 압출 모드에서는 부동 소수점 정확도를 위해 각 레이어에서 압출기 위치를 재" +"설정해야 합니다. layer_gcode에 \"G92 E0\"을 추가하세요." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"\"G92 E0\"이 before_layer_gcode에서 발견되었으며 절대 압출 모드와 호환되지 않" +"습니다." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"\"G92 E0\"이 layer_gcode에서 발견되었으며 절대 압출 모드와 호환되지 않습니다." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "%d: %s 플레이트는 %s 필라멘트를 지원하지 않습니다" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "저크 속도를 너무 낮게 설정하면 곡면에 아티팩트가 생길 수 있습니다" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"저크 설정이 프린터의 최대 저크(machine_max_jerk_x/machine_max_jerk_y)를 초과" +"합니다.\n" +"Orca는 저크 속도를 자동으로 제한하여 프린터 성능을 초과하지 않도록 합니다.\n" +"더 빠른 속도를 얻으려면 프린터 구성에서 최대 저크 설정을 조정할 수 있습니다." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"가속 설정이 프린터의 최대 가속(machine_max_acceleration_extruding)을 초과합니" +"다.\n" +"Orca는 프린터의 성능을 초과하지 않도록 가속 속도를 자동으로 제한합니다.\n" +"더 빠른 속도를 얻으려면 프린터 구성에서 machine_max_acceleration_extruding 값" +"을 조정할 수 있습니다." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"이동 가속도 설정이 프린터의 최대 이동 가속도(machine_max_acceleration_travel)" +"를 초과합니다.\n" +"Orca는 이동 가속 속도를 자동으로 제한하여 프린터의 성능을 초과하지 않도록 합" +"니다.\n" +"더 빠른 속도를 얻으려면 프린터 구성에서 machine_max_acceleration_travel 값을 " +"조정할 수 있습니다." + +msgid "Generating skirt & brim" +msgstr "스커트 & 브림 생성 중" + +msgid "Exporting G-code" +msgstr "G코드 내보내는 중" + +msgid "Generating G-code" +msgstr "G코드 생성 중" + +msgid "Failed processing of the filename_format template." +msgstr "파일 이름 형식 템플릿 처리에 실패했습니다." + +msgid "Printable area" +msgstr "출력 가능 영역" + +msgid "Bed exclude area" +msgstr "베드 제외 구역" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"XY 평면에서 출력할 수 없는 영역입니다. 예를 들어, X1 시리즈 프린터는 필라멘" +"트 교체 중에 필라멘트를 절단하기 위해 전면 왼쪽 모서리를 사용합니다. 영역은 " +"\"XxY, XxY...\" 형식의 점으로 다각형으로 표시됩니다" + +msgid "Bed custom texture" +msgstr "사용자 정의 베드 텍스처" + +msgid "Bed custom model" +msgstr "사용자 정의 베드 모델" + +msgid "Elephant foot compensation" +msgstr "코끼리 발 보정" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"코끼리 발 효과를 보정하기 위해 빌드 플레이트에 닿는 첫 레이어를 축소합니다" + +msgid "Elephant foot compensation layers" +msgstr "코끼리 발 보정 레이어" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"코끼리 발 보정을 적용할 레이어의 수입니다. 첫 번째 레이어는 코끼리 발 보정 값" +"만큼 축소되고, 다음 레이어부터 이 값으로 표시된 레이어까지 선형적으로 덜 축소" +"됩니다." + +msgid "layers" +msgstr "레이어" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"각 레이어에 대한 슬라이스 높이입니다. 레이어 높이가 작다는 것은 더 정확하고 " +"더 많은 출력 시간을 의미합니다" + +msgid "Printable height" +msgstr "출력 가능 높이" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "프린터 기계장치에 의해 제한되는 출력 가능한 최대 높이" + +msgid "Preferred orientation" +msgstr "선호하는 방향" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "최초 임포트 시 Z축에서 자동으로 스톨 방향 지정" + +msgid "Printer preset names" +msgstr "프린터 사전 설정 이름" + +msgid "Use 3rd-party print host" +msgstr "타사 출력 호스트 사용" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "타사 프린트 호스트를 통해 뱀부랩의 프린터 제어 허용" + +msgid "Hostname, IP or URL" +msgstr "호스트 이름, IP 또는 URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca은 G코드 파일을 프린터 호스트에 업로드할 수 있습니다. 이 필드에는 " +"프린터 호스트 인스턴스의 호스트 이름, IP 주소 또는 URL이 포함되어야 합니다. " +"기본 인증이 활성화된 HAProxy 뒤의 출력 호스트는 https://username:" +"password@your-octopi-address/ 형식의 URL에 사용자 이름과 암호를 입력하여 액세" +"스할 수 있습니다" + +msgid "Device UI" +msgstr "장치 UI" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Print_host와 동일하지 않은 경우 장치 사용자 인터페이스의 URL을 지정하세요" + +msgid "API Key / Password" +msgstr "API 키 / 비밀번호" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca은 G코드 파일을 프린터 호스트에 업로드할 수 있습니다. 이 필드에는 " +"인증에 필요한 API 키 또는 비밀번호가 포함되어야 합니다." + +msgid "Name of the printer" +msgstr "프린터 이름" + +msgid "HTTPS CA File" +msgstr "HTTPS CA 파일" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"사용자 정의 CA 인증서 파일은 crt/pem 형식의 HTTPS OctoPrint 연결에 대해 지정" +"할 수 있습니다. 비워 두면 기본 OS CA 인증서 저장소가 사용됩니다." + +msgid "User" +msgstr "사용자" + +msgid "Password" +msgstr "비밀번호" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "HTTPS 인증서 해지 검사 무시" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"배포 지점이 없거나 오프라인인 경우 HTTPS 인증서 해지 검사를 무시합니다. 연결" +"이 실패할 경우 자체 서명된 인증서에 대해 이 옵션을 사용할 수 있습니다." + +msgid "Names of presets related to the physical printer" +msgstr "물리적 프린터 관련 사전 설정 이름" + +msgid "Authorization Type" +msgstr "승인 유형" + +msgid "API key" +msgstr "API 키" + +msgid "HTTP digest" +msgstr "HTTP 다이제스트" + +msgid "Avoid crossing wall" +msgstr "벽 가로지름 방지" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "벽을 가로질러 이동하지 않고 우회하여 표면에 방울 발생을 방지합니다" + +msgid "Avoid crossing wall - Max detour length" +msgstr "벽 가로지름 방지 - 최대 우회 길이" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"벽 가로지름 방지를 위한 최대 우회 거리. 우회 거리가 이 값보다 크면 우회하지 " +"않습니다. 우회 길이는 절대값 또는 직접 이동 경로의 백분율(예: 50%)로 지정할 " +"수 있습니다. 값 0으로 비활성화할 수 있습니다" + +msgid "mm or %" +msgstr "mm 또는 %" + +msgid "Other layers" +msgstr "다른 레이어" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"초기 레이어를 제외한 레이어의 베드 온도. 값 0은 필라멘트가 쿨 플레이트 출력" +"을 지원하지 않음을 의미합니다" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" +"초기 레이어를 제외한 레이어의 베드 온도입니다. 값 0은 필라멘트가 텍스처드 쿨 " +"플레이트에서 인쇄를 지원하지 않음을 의미합니다" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"초기 레이어를 제외한 레이어의 베드 온도. 값 0은 필라멘트가 엔지니어링 플레이" +"트 출력을 지원하지 않음을 의미합니다" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"초기 레이어를 제외한 레이어의 베드 온도. 값 0은 필라멘트가 고온 플레이트 출력" +"을 지원하지 않음을 의미합니다" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"초기 레이어를 제외한 레이어의 베드 온도. 값 0은 필라멘트가 텍스처 PEI 플레이" +"트 출력을 지원하지 않음을 의미합니다" + +msgid "Initial layer" +msgstr "초기 레이어" + +msgid "Initial layer bed temperature" +msgstr "초기 레이어 베드 온도" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"초기 레이어의 베드 온도. 값 0은 필라멘트가 쿨 플레이트 출력을 지원하지 않음" +"을 의미합니다" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" +"초기 레이어의 베드 온도입니다. 값 0은 필라멘트가 텍스처드 쿨 플레이트에 인쇄" +"할 수 없음을 의미합니다" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"초기 레이어의 베드 온도. 값 0은 필라멘트가 쿨 플레이트 출력을 지원하지 않음" +"을 의미합니다" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"초기 레이어의 베드 온도입니다. 값 0은 필라멘트가 고온 플레이트 출력을 지원하" +"지 않음을 의미합니다" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"초기 레이어의 베드 온도. 값 0은 필라멘트가 텍스처 PEI 플레이트 출력을 지원하" +"지 않음을 의미합니다" + +msgid "Bed types supported by the printer" +msgstr "프린터가 지원하는 베드 유형" + +msgid "Smooth Cool Plate" +msgstr "부드러운 쿨 플레이트" + +msgid "Engineering Plate" +msgstr "엔지니어링 플레이트" + +msgid "Smooth High Temp Plate" +msgstr "부드러운 고온 플레이트" + +msgid "Textured Cool Plate" +msgstr "텍스처 쿨 플레이트" + +msgid "First layer print sequence" +msgstr "첫 레이어 출력 순서" + +msgid "Other layers print sequence" +msgstr "다른 레이어 출력 순서" + +msgid "The number of other layers print sequence" +msgstr "다른 레이어 수 출력 순서" + +msgid "Other layers filament sequence" +msgstr "다른 층 필라멘트 순서" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "이 G코드는 Z좌표를 올리기 전 모든 레이어 변경에 삽입됩니다" + +msgid "Bottom shell layers" +msgstr "하단 쉘 레이어" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"하단 표면을 포함한 하단 쉘의 꽉찬 레이어 수입니다. 이 값으로 계산한 두께가 하" +"단 쉘 두께보다 얇으면 하단 쉘 레이어가 증가합니다" + +msgid "Bottom shell thickness" +msgstr "하단 쉘 두께" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"하단 쉘 레이어로 계산된 두께가 이 값보다 얇은 경우 슬라이싱할 때 하단 꽉찬 레" +"이어의 수가 증가합니다. 이렇게 하면 레이어 높이가 작을 때 쉘이 너무 얇아지는 " +"것을 방지할 수 있습니다. 0은 이 설정이 비활성화되고 하단 쉘의 두께가 절대적으" +"로 하단 쉘 레이어에 의해 결정됨을 의미합니다" + +msgid "Apply gap fill" +msgstr "간격 채우기 적용" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"선택한 표면에 대해 간격 채우기를 활성화합니다. 채워질 최소 간격 길이는 아래" +"의 작은 간격 필터링 옵션에서 제어할 수 있습니다.\n" +"\n" +"옵션:\n" +"1. 어디에서나: 상단, 하단 및 내부 솔리드 표면에 간격 채우기를 적용합니다.\n" +"2. 상단 및 하단 표면: 상단 및 하단 표면에만 간격 채우기를 적용합니다.\n" +"3. 아무데도: 간격 채우기를 비활성화합니다.\n" + +msgid "Everywhere" +msgstr "모든곳" + +msgid "Top and bottom surfaces" +msgstr "상단 및 하단 표면" + +msgid "Nowhere" +msgstr "아무데도" + +msgid "Force cooling for overhang and bridge" +msgstr "돌출부 및 브릿지 강제 냉각" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"냉각 향상을 위해 돌출부 및 브릿지에 대한 출력물 냉각 팬 속도를 최적화하려면 " +"이 옵션을 활성화합니다" + +msgid "Fan speed for overhang" +msgstr "돌출부 팬 속도" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"돌출부 정도가 큰 브릿지나 돌출부 벽을 출력할 때 출력물 냉각 팬을 이 속도로 강" +"제합니다. 돌출부와 브릿지를 강제 냉각하면 이러한 부품의 품질이 향상될 수 있습" +"니다" + +msgid "Cooling overhang threshold" +msgstr "돌출부 냉각 임계값" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"출력물의 돌출부 정도가 이 값을 초과하면 냉각 팬이 특정 속도가 되도록 강제합니" +"다. 지지대가 없는 하단 레이어 선 너비의 백분율로 표시됩니다. 0은 돌출부 정도" +"에 관계없이 모든 외벽을 강제 냉각한다는 의미입니다" + +msgid "Bridge infill direction" +msgstr "브릿지 채우기 방향" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"브릿지 출력 각도 재정의. 0°으로 두면 브릿지 출력 각도가 자동으로 계산됩니다. " +"그렇지 않으면 제공된 각도가 외부 브릿지 출력에 사용됩니다. 0도에는 180°를 사" +"용합니다." + +msgid "Bridge density" +msgstr "브릿지 밀도" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"외부 브릿지의 밀도. 100%는 단단한 브릿지를 의미합니다. 기본값은 100%입니다." + +msgid "Bridge flow ratio" +msgstr "브릿지 유량 비율" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "이 값을 약간(예: 0.9) 줄여 브릿지의 압출량을 줄여 처짐을 개선합니다" + +msgid "Internal bridge flow ratio" +msgstr "내부 브릿지 유량 비율" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"이 값은 내부 브릿지 레이어의 두께를 결정합니다. 이것은 드문 채우기 위의 첫 번" +"째 레이어입니다. 드문 채우기보다 표면 품질을 향상시키려면 이 값을 약간(예: " +"0.9) 줄입니다." + +msgid "Top surface flow ratio" +msgstr "상단 표면 유량 비율" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"이 값은 상단 꽉찬 내부 채우기의 재료의 양에 영향을 미칩니다. 부드러운 표면 마" +"감을 위해 약간 줄여도 됩니다" + +msgid "Bottom surface flow ratio" +msgstr "하단 표면 유량 비율" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "이 값은 하단 꽉찬 내부 채우기의 재료의 양에 영향을 미칩니다" + +msgid "Precise wall" +msgstr "정밀한 벽" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"외벽 간격을 조정하여 쉘 정밀도를 향상시킵니다. 이는 또한 레이어 일관성을 향상" +"시킵니다.\n" +"참고: 이 설정은 벽 시퀀스가 내부-외부로 구성된 경우에만 적용됩니다" + +msgid "Only one wall on top surfaces" +msgstr "상단 표면에 단일 벽 생성" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"평평한 상단 표면에 하나의 벽만 사용하여 상단 표면 패턴에 더 많은 공간을 제공" +"합니다" + +msgid "One wall threshold" +msgstr "단일 벽 임계값" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"상단 표면을 출력해야 하고 부분적으로 다른 레이어로 덮여 있는 경우 너비가 이 " +"값 미만인 상단 레이어에서는 고려되지 않습니다. 이는 둘레로만 덮여야 하는 표면" +"에서 '상단 둘레 하나'가 발동되지 않도록 하는 데 유용할 수 있습니다. 이 값은 " +"압출 너비의 mm 또는 % o로 설정됩니다.\n" +"경고: 활성화된 경우, 의도치 않은 형상이 생성되는건 다음 레이어에 문자와 같은 " +"일부 얇은 형상이 있기 때문입니다. 이러한 형상을 제거하려면 이 값을 0으로 설정" +"하세요." + +msgid "Only one wall on first layer" +msgstr "하단 표면에 단일 벽 생성" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"첫 레이어에 하나의 벽만 사용하여 하단 표면 패턴에 더 많은 공간을 제공합니다" + +msgid "Extra perimeters on overhangs" +msgstr "돌출부 추가 둘레" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"가파른 돌출부와 브릿지를 고정할 수 없는 지역 위에 추가 둘레 경로를 만듭니다. " + +msgid "Reverse on odd" +msgstr "홀수에 반전" + +msgid "Overhang reversal" +msgstr "돌출부 반전" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"역방향 돌출부 위에 부분이 있는 돌출 둘레홀수 레이어의 방향입니다. 이 교대 패" +"턴은 크게 향상될 수 있습니다.가파른 돌출부.\n" +"\n" +"이 설정은 또한 감소로 인한 부품 뒤틀림을 줄이는 데 도움이 될 수 있습니다.부" +"분 벽의 응력." + +msgid "Reverse only internal perimeters" +msgstr "내부 둘레만 반전" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"내부 경계에만 역방향 경계 논리를 적용합니다. \n" +"\n" +"이 설정은 부품 응력이 이제 분산되어 있으므로 부품 응력을 크게 줄여줍니다.교" +"대 방향. 이렇게 하면 부품 뒤틀림도 줄어들고 동시에 외벽 품질 유지. 이 기능은 " +"워프에 매우 유용할 수 있습니다.ABS/ASA와 같은 취약한 소재와 TPU 및 탄성 필라" +"멘트에도 사용 가능실크 PLA. 또한 부동 영역의 뒤틀림을 줄이는 데 도움이 될 수 " +"있습니다.지원합니다.\n" +"\n" +"이 설정을 가장 효과적으로 사용하려면 다음을 설정하는 것이 좋습니다.모든 내부 " +"벽이 교대로 출력되도록 임계값을 0으로 역방향오버행 정도에 관계없이 홀수 레이" +"어의 방향입니다." + +msgid "Bridge counterbore holes" +msgstr "브릿지 카운터보어 구멍" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"이 옵션은 카운터보어 구멍에 대한 브릿지를 생성하여 지지대 없이 출력할 수 있도" +"록 합니다. 사용 가능한 모드는 다음과 같습니다.\n" +"1. 없음: 브릿지가 생성되지 않습니다.\n" +"2. 부분적으로 브릿지됨: 지원되지 않는 영역의 일부만 브릿지됩니다.\n" +"3. 희생 레이어: 전체 희생 브릿지 레이어가 생성됩니다." + +msgid "Partially bridged" +msgstr "부분적으로 브릿지" + +msgid "Sacrificial layer" +msgstr "희생층" + +msgid "Reverse threshold" +msgstr "반전 임계값" + +msgid "Overhang reversal threshold" +msgstr "돌출부 반전 임계값" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"반전이 유용한 것으로 간주되기 위해 필요한 오버행의 수(mm)입니다. 둘레 너비의 " +"%일 수 있습니다.\n" +"값 0은 관계없이 모든 홀수 레이어에서 반전을 활성화합니다." + +msgid "Classic mode" +msgstr "클래식 모드" + +msgid "Enable this option to use classic mode" +msgstr "클래식 모드를 사용하려면 이 옵션을 활성화합니다" + +msgid "Slow down for overhang" +msgstr "돌출부에서 감속" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "돌출부 정도에 따라 출력 속도를 낮추려면 이 옵션을 활성화합니다" + +msgid "Slow down for curled perimeters" +msgstr "꺾여 있는 둘레에서 감속" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"꺾여 있는 둘레가 있을 수 있는 영역에서 출력 속도를 낮추려면 이 옵션을 활성화" +"하세요" + +msgid "mm/s or %" +msgstr "mm/s 또는 %" + +msgid "External" +msgstr "외부" + +msgid "Speed of bridge and completely overhang wall" +msgstr "브릿지와 돌출부 벽의 속도" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "내부" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"내부 브릿지 속도. 값을 백분율로 표시하면 외부 브릿지 속도를 기준으로 계산됩니" +"다. 기본값은 150%입니다." + +msgid "Brim width" +msgstr "브림 너비" + +msgid "Distance from model to the outermost brim line" +msgstr "모델과 가장 바깥쪽 브림 선까지의 거리" + +msgid "Brim type" +msgstr "브림 유형" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"모델의 외부 그리고/또는 내부에서 브림의 생성을 제어합니다. 자동은 브림너비가 " +"자동으로 분석 및 계산됨을 의미합니다." + +msgid "Brim-object gap" +msgstr "브림-개체 간격" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"가장 안쪽 브림 라인과 개체 사이에 간격을 주어 쉽게 브림을 제거 할 수 있게 합" +"니다" + +msgid "Brim ears" +msgstr "브림 귀" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "모델의 날카로운 가장자리에만 브림을 그립니다." + +msgid "Brim ear max angle" +msgstr "브림 귀 최대 각도" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"브림 귀가 나타날 수 있는 최대 각도.\n" +"0으로 설정하면 브림이 생성되지 않습니다.\n" +"~180으로 설정하면 직선 부분을 제외한 모든 부분에 브림이 생성됩니다." + +msgid "Brim ear detection radius" +msgstr "브림 귀 감지 반경" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"날카로운 각도를 감지하기 전에 형상이 무시됩니다. 이 매개변수는 무시하는 형상" +"의 최소 길이를 나타냅니다.\n" +"0으로 비활성화합니다" + +msgid "Compatible machine" +msgstr "호환 장치" + +msgid "upward compatible machine" +msgstr "상향 호환 장치" + +msgid "Compatible machine condition" +msgstr "호환 장치 상태" + +msgid "Compatible process profiles" +msgstr "호환 프로세스 사전설정" + +msgid "Compatible process profiles condition" +msgstr "호환 프로세스 사전설정 상태" + +msgid "Print sequence, layer by layer or object by object" +msgstr "출력순서, 레이어별 또는 개체별" + +msgid "By layer" +msgstr "레이어별" + +msgid "By object" +msgstr "개체별" + +msgid "Intra-layer order" +msgstr "레이어 내 순서" + +msgid "Print order within a single layer" +msgstr "단일 레이어 내의 출력 순서" + +msgid "As object list" +msgstr "개체 목록으로" + +msgid "Slow printing down for better layer cooling" +msgstr "레이어 냉각 향상을 위한 감속" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"이 옵션을 활성화하여 최종 레이어 시간이 \"최대 팬 속도 임계값\" 의 \"레이어 " +"시간\" 임계값보다 짧지 않도록 출력 속도를 낮추어 레이어를 더 오랫동안 냉각할 " +"수 있습니다. 바늘 모양이나 작은 출력물의 냉각 품질을 향상 시킬 수 있습니다" + +msgid "Normal printing" +msgstr "일반 출력" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "초기 레이어를 제외한 모든 일반 출력 및 이동의 기본 가속" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "기본 필라멘트 사전설정" + +msgid "Default filament profile when switch to this machine profile" +msgstr "이 장치 사전설정으로 전환할 때의 기본 필라멘트 사전설정" + +msgid "Default process profile" +msgstr "기본 프로세스 사전설정" + +msgid "Default process profile when switch to this machine profile" +msgstr "이 장치 사전설정으로 전환할 때의 기본 프로세스 사전설정" + +msgid "Activate air filtration" +msgstr "공기 여과 활성화" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "더 나은 공기 여과를 위해 활성화하세요. G코드 명령: M106 P3 S(0-255)" + +msgid "Fan speed" +msgstr "팬 속도" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"출력 중 배기 팬 속도. 이 속도는 필라멘트 사용자 정의 G코드의 속도를 덮어씁니" +"다" + +msgid "Speed of exhaust fan after printing completes" +msgstr "출력 완료 후 배기 팬 속도" + +msgid "No cooling for the first" +msgstr "처음에는 냉각이 적용되지 않습니다" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"빌드 플레이트의 접착력 향상을 위해 첫 레이어부터 특정 레이어까지의 모든 냉각 " +"팬을 정지합니다" + +msgid "Don't support bridges" +msgstr "브릿지에서 지지대 사용안함" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"지지대를 크게 만드는 전체 브릿지 영역에 지지대를 사용하지 않습니다. 브릿지는 " +"일반적으로 매우 길지 않은 경우 지지대 없이 직접 출력할 수 있습니다" + +msgid "Thick bridges" +msgstr "두꺼운 브릿지" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"활성화하면 브릿지는 더 견고해지고 더 먼 거리를 생성할 수 있지만 나빠 보일 수 " +"있습니다. 비활성화하면 브릿지가 더 좋아 보이지만 짧은 브릿지 거리에 대해서만 " +"안정적입니다." + +msgid "Thick internal bridges" +msgstr "두꺼운 내부 브릿지" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"활성화되면 두꺼운 내부 브릿지가 사용됩니다. 일반적으로 다음을 권장합니다.이 " +"기능을 켜두세요. 하지만 다음과 같은 경우에는 끄는 것을 고려해 보세요.큰 노즐" +"을 사용합니다." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "작은 내부 브릿지를 필터링하지 마세요(베타)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"이 옵션은 심하게 기울어지거나 곡선이 있는 모델의 상단 표면이 눌리는 현상을 줄" +"이는 데 도움이 될 수 있습니다.\n" +"\n" +"기본적으로 작은 내부 브릿지는 필터링되고 내부 솔리드 채우기는 희박한 채우기 " +"위에 직접 출력됩니다. 이는 대부분의 경우에 잘 작동하여 상단 표면 품질을 크게 " +"저하시키지 않고 출력 속도를 높입니다.\n" +"\n" +"그러나 특히 너무 낮은 희박 채우기 밀도가 사용되는 심하게 기울어지거나 곡선 모" +"델에서는 지지되지 않는 고체 채우기가 말려 베개 현상이 발생할 수 있습니다.\n" +"\n" +"이 옵션을 활성화하면 약간 지원되지 않는 내부 솔리드 채우기 위에 내부 브릿지 " +"레이어가 출력됩니다. 아래 옵션은 필터링 양, 즉 생성된 내부 브릿지 양을 제어합" +"니다.\n" +"\n" +"비활성화됨 - 이 옵션을 비활성화합니다. 이는 기본 동작이며 대부분의 경우 잘 작" +"동합니다.\n" +"\n" +"제한된 필터링 - 불필요한 내부 브릿지 생성을 피하면서 크게 기울어진 표면에 내" +"부 브릿지를 생성합니다. 이는 가장 어려운 모델에 적합합니다.\n" +"\n" +"필터링 없음 - 잠재적인 모든 내부 돌출부에 내부 브릿지를 생성합니다. 이 옵션" +"은 심하게 기울어진 상단 표면 모델에 유용합니다. 그러나 대부분의 경우 불필요" +"한 브릿지가 너무 많이 생성됩니다." + +msgid "Disabled" +msgstr "비활성됨" + +msgid "Limited filtering" +msgstr "제한된 필터링" + +msgid "No filtering" +msgstr "필터링 없음" + +msgid "Max bridge length" +msgstr "최대 브릿지 길이" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"지지대가 필요하지 않은 브릿지의 최대 길이. 모든 브릿지에 지지대를 생성하려면 " +"0으로 설정하고 브릿지에 지지대를 생성하지 않으려면 매우 큰 값으로 설정합니다." + +msgid "End G-code" +msgstr "종료 G코드" + +msgid "End G-code when finish the whole printing" +msgstr "전체 출력이 끝날때의 종료 G코드" + +msgid "Between Object Gcode" +msgstr "개체 사이의 G코드" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"개체 사이에 G코드를 삽입하세요. 이 매개변수는 개체별 출력을 사용할 때만 적용" +"됩니다" + +msgid "End G-code when finish the printing of this filament" +msgstr "이 필라멘트의 출력이 끝날때의 종료 G코드" + +msgid "Ensure vertical shell thickness" +msgstr "수직 쉘 두께 확보" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"경사면 근처에 견고한 충전재를 추가하여 수직 쉘 두께(상단 + 하단 솔리드 레이" +"어)를 보장합니다.\n" +"없음: 솔리드 채우기가 어디에도 추가되지 않습니다. 주의: 모델에 경사면이 있는 " +"경우 이 옵션을 주의해서 사용하십시오.\n" +"중요 사항: 벽에 견고한 채우기를 추가하지 마십시오.\n" +"보통: 경사가 심한 표면에만 견고한 채우기를 추가합니다.\n" +"모두: 적합한 모든 경사면에 대해 솔리드 채우기를 추가합니다.\n" +"기본값은 모두입니다." + +msgid "Critical Only" +msgstr "중요한 것만" + +msgid "Moderate" +msgstr "보통" + +msgid "Top surface pattern" +msgstr "상단 표면 패턴" + +msgid "Line pattern of top surface infill" +msgstr "상단 표면 채우기의 선 패턴" + +msgid "Concentric" +msgstr "동심" + +msgid "Rectilinear" +msgstr "직선" + +msgid "Monotonic" +msgstr "단조" + +msgid "Monotonic line" +msgstr "단조선" + +msgid "Aligned Rectilinear" +msgstr "정렬된 직선" + +msgid "Hilbert Curve" +msgstr "힐베르트 곡선" + +msgid "Archimedean Chords" +msgstr "아르키메데스 코드" + +msgid "Octagram Spiral" +msgstr "팔각 나선형" + +msgid "Bottom surface pattern" +msgstr "하단 표면 패턴" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "브릿지 채우기가 아닌 바닥면 채우기의 선 패턴" + +msgid "Internal solid infill pattern" +msgstr "꽉찬 내부 채우기 패턴" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"꽉찬 내부 채우기의 선 패턴. 좁은 꽉찬 내부 채우기 감지가 활성화된 경우 작은 " +"영역에 동심원 패턴이 사용됩니다." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "외벽의 선 너비. %로 입력 시 노즐 직경에 대한 비율로 계산됩니다." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"가장 바깥쪽의 눈에 보이는 외벽의 속도. 더 나은 품질을 얻기 위해 내벽 속도보" +"다 느리게 사용됩니다." + +msgid "Small perimeters" +msgstr "작은 둘레" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"이 별도의 설정은 반지름이 가진 둘레의 속도에 영향을 줍니다 <= 작은 둘레 임계" +"값(small_perimeter_threshold) 이하인 둘레(일반적으로 구멍). 백분율로 설정하면" +"(예: 80%) 외벽 속도 설정에서 계산됩니다. 자동의 경우 0으로 설정합니다." + +msgid "Small perimeters threshold" +msgstr "작은 둘레 임계값" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "작은 둘레 길이에 대한 임계값을 설정합니다. 기본 임계값은 0mm입니다" + +msgid "Walls printing order" +msgstr "벽 출력 순서" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"내부(내벽) 및 외부(외벽)의 출력 순서를 지정합니다.\n" +"\n" +"돌출부를 가장 잘 출력하려면 내부/외부를 사용합니다. 이는 돌출된 벽이 출력하" +"는 동안 인접한 경계에 부착될 수 있기 때문입니다. 그러나 이 옵션을 사용하면 외" +"부 경계가 내부 경계에 눌려 변형되므로 표면 품질이 약간 저하됩니다.\n" +"\n" +"내부/외부/내부를 사용하면 외부 벽이 내부 경계에서 방해받지 않고 출력되므로 최" +"상의 외부 표면 마감과 치수 정확도를 얻을 수 있습니다. 그러나 외부 벽을 출력" +"할 내부 경계가 없으므로 오버행 성능이 저하됩니다. 이 옵션은 세 번째 경계부터 " +"내부 벽을 먼저 출력한 다음 외부 경계, 마지막으로 첫 번째 내부 경계를 출력하므" +"로 최소 3개 이상의 벽이 있어야 효과적입니다. 이 옵션은 대부분의 경우 외부/내" +"부 옵션보다 권장됩니다.\n" +"\n" +"내부/외부/내부 옵션과 동일한 외벽 품질 및 치수 정확도 이점을 얻으려면 외부/내" +"부를 사용하세요. 그러나 새 레이어의 첫 번째 돌출이 보이는 표면에서 시작되므" +"로 Z 심이 덜 일관되게 나타납니다.\n" +"\n" +" " + +msgid "Inner/Outer" +msgstr "내벽/외벽" + +msgid "Outer/Inner" +msgstr "외벽/내벽" + +msgid "Inner/Outer/Inner" +msgstr "내벽/외벽/내벽" + +msgid "Print infill first" +msgstr "채우기 먼저 출력" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" +"벽/채우기 순서. 확인란을 선택 취소하면 벽이 먼저 인쇄되며 이는 대부분의 경우 " +"가장 잘 작동합니다.\n" +"\n" +"충전재를 먼저 인쇄하면 벽에 접착할 인접 충전재가 있으므로 돌출부가 심한 경우 " +"도움이 될 수 있습니다. 그러나 충전재는 인쇄된 벽이 부착된 부분을 약간 밀어내" +"어 외부 표면 마감이 더 나빠집니다. 또한 충전재가 부품의 외부 표면을 통해 빛" +"날 수도 있습니다." + +msgid "Wall loop direction" +msgstr "벽 루프 방향" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"위에서 아래를 내려다볼 때 벽 루프가 돌출되는 방향입니다.\n" +"\n" +"홀수에 반전 설정이 활성화되지 않은 경우 기본적으로 모든 벽은 시계 반대 방향으" +"로 출력됩니다. 이것을 Auto 이외의 옵션으로 설정하면 홀수에 반전 설정과 관계없" +"이 벽 방향이 강제됩니다.\n" +"\n" +"나선형 꽃병 모드가 활성화된 경우 이 옵션은 비활성화됩니다." + +msgid "Counter clockwise" +msgstr "시계 반대 방향" + +msgid "Clockwise" +msgstr "시계방향" + +msgid "Height to rod" +msgstr "레일까지의 높이" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"노즐 끝에서 하부 레일까지의 거리. 개체별 출력에서 충돌 방지에 사용됩니다." + +msgid "Height to lid" +msgstr "덮개까지의 높이" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "노즐 끝에서 덮개까지의 거리. 개체별 출력에서 충돌 방지에 사용됩니다." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "압출기 주변의 회피 반경. 개체별 출력에서 충돌 방지에 사용됩니다." + +msgid "Nozzle height" +msgstr "노즐 높이" + +msgid "The height of nozzle tip." +msgstr "노즐 팁의 높이." + +msgid "Bed mesh min" +msgstr "배드 메쉬 최소" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"이 옵션은 허용되는 배드 메쉬 영역의 최소 지점을 설정합니다. 프로브의 XY 옵셋" +"으로 인해 대부분의 프린터는 전체 베드를 프로브할 수 없습니다. 프로브 포인트" +"가 베드 영역 밖으로 나가지 않도록 하려면 베드 메쉬의 최소 및 최대 지점을 적절" +"하게 설정해야 합니다. Snapmaker Orca는 adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max 값이 이러한 최소/최대 포인트를 초과하지 않도록 보장합니" +"다. 이 정보는 일반적으로 프린터 제조업체로부터 얻을 수 있습니다. 기본 설정은 " +"(-99999, -99999)입니다. 이는 제한이 없으므로 전체 베드에 걸쳐 프로빙이 가능함" +"을 의미합니다." + +msgid "Bed mesh max" +msgstr "배드 메쉬 최대" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"이 옵션은 허용되는 침대 메쉬 영역의 최대 지점을 설정합니다. 프로브의 XY 옵셋" +"으로 인해 대부분의 프린터는 전체 베드를 프로브할 수 없습니다. 프로브 포인트" +"가 베드 영역 밖으로 나가지 않도록 하려면 베드 메쉬의 최소 및 최대 지점을 적절" +"하게 설정해야 합니다. Snapmaker Orca는 adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max 값이 이러한 최소/최대 포인트를 초과하지 않도록 보장합니" +"다. 이 정보는 일반적으로 프린터 제조업체로부터 얻을 수 있습니다. 기본 설정은 " +"(99999, 99999)입니다. 이는 제한이 없으므로 전체 베드에 걸쳐 프로빙이 가능함" +"을 의미합니다." + +msgid "Probe point distance" +msgstr "프로브 포인트 거리" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"이 옵션은 X와 Y 방향에 대한 프로브 점(그리드 크기) 사이의 기본 거리를 설정하" +"며 X와 Y 모두에 대한 기본값은 50mm입니다." + +msgid "Mesh margin" +msgstr "메쉬 공간" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" +"이 옵션은 적응형 배드 메시 영역이 XY 방향으로 확장되어야 하는 추가 거리를 결" +"정합니다." + +msgid "Extruder Color" +msgstr "압출기 색상" + +msgid "Only used as a visual help on UI" +msgstr "UI의 시각적 도움말로만 사용됨" + +msgid "Extruder offset" +msgstr "압출기 옵셋" + +msgid "Flow ratio" +msgstr "유량 비율" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"재료는 용융 상태와 결정 상태 사이를 전환한 후 부피 변화가 있을 수 있습니다. " +"이 설정은 이 필라멘트 코드의 모든 압출 유량을 비례적으로 변경합니다. 권장 값 " +"범위는 0.95와 1.05 사이입니다. 약간의 과대압출 또는 과소압출이 있을 때 이 값" +"을 조정하여 평평한 표면을 얻을 수 있습니다" + +msgid "Enable pressure advance" +msgstr "프레셔 어드밴스 활성화" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"프레셔 어드밴스를 활성화합니다. 활성화되면 자동 보정 결과를 덮어씁니다." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "프레셔 어드밴스(Klipper)/리니어 어드밴스(Marlin)" + +msgid "Enable adaptive pressure advance (beta)" +msgstr "적응형 압력 진행 활성화(베타)" + +#, no-c-format, no-boost-format +msgid "" +"With increasing print speeds (and hence increasing volumetric flow through " +"the nozzle) and increasing accelerations, it has been observed that the " +"effective PA value typically decreases. This means that a single PA value is " +"not always 100% optimal for all features and a compromise value is usually " +"used that does not cause too much bulging on features with lower flow speed " +"and accelerations while also not causing gaps on faster features.\n" +"\n" +"This feature aims to address this limitation by modeling the response of " +"your printer's extrusion system depending on the volumetric flow speed and " +"acceleration it is printing at. Internally, it generates a fitted model that " +"can extrapolate the needed pressure advance for any given volumetric flow " +"speed and acceleration, which is then emmited to the printer depending on " +"the current print conditions.\n" +"\n" +"When enabled, the pressure advance value above is overriden. However, a " +"reasonable default value above is strongly recomended to act as a fallback " +"and for when tool changing.\n" +"\n" +msgstr "" +"인쇄 속도가 증가하고(노즐을 통한 체적 흐름이 증가함) 가속도가 증가함에 따라 " +"일반적으로 유효 PA 값이 감소하는 것으로 관찰되었습니다. 이는 단일 PA 값이 모" +"든 기능에 대해 항상 100% 최적인 것은 아니며 일반적으로 유속과 가속도가 낮은 " +"기능에 너무 많은 돌출을 일으키지 않고 더 빠른 기능에 간격을 유발하지 않는 절" +"충 값이 사용된다는 것을 의미합니다.\n" +"\n" +"이 기능은 인쇄 중인 체적 흐름 속도와 가속도에 따라 프린터 압출 시스템의 반응" +"을 모델링하여 이러한 제한 사항을 해결하는 것을 목표로 합니다. 내부적으로는 주" +"어진 체적 흐름 속도 및 가속도에 대해 필요한 압력 전진을 추정할 수 있는 적합 " +"모델을 생성하며, 이는 현재 인쇄 조건에 따라 프린터로 방출됩니다.\n" +"\n" +"활성화되면 위의 압력 전진 값이 무시됩니다. 그러나 대체 수단으로 사용하거나 도" +"구를 변경할 때 위의 합리적인 기본값을 사용하는 것이 좋습니다.\n" + +msgid "Adaptive pressure advance measurements (beta)" +msgstr "적응형 압력 사전 측정(베타)" + +#, no-c-format, no-boost-format +msgid "" +"Add sets of pressure advance (PA) values, the volumetric flow speeds and " +"accelerations they were measured at, separated by a comma. One set of values " +"per line. For example\n" +"0.04,3.96,3000\n" +"0.033,3.96,10000\n" +"0.029,7.91,3000\n" +"0.026,7.91,10000\n" +"\n" +"How to calibrate:\n" +"1. Run the pressure advance test for at least 3 speeds per acceleration " +"value. It is recommended that the test is run for at least the speed of the " +"external perimeters, the speed of the internal perimeters and the fastest " +"feature print speed in your profile (usually its the sparse or solid " +"infill). Then run them for the same speeds for the slowest and fastest print " +"accelerations,and no faster than the recommended maximum acceleration as " +"given by the klipper input shaper.\n" +"2. Take note of the optimal PA value for each volumetric flow speed and " +"acceleration. You can find the flow number by selecting flow from the color " +"scheme drop down and move the horizontal slider over the PA pattern lines. " +"The number should be visible at the bottom of the page. The ideal PA value " +"should be decreasing the higher the volumetric flow is. If it is not, " +"confirm that your extruder is functioning correctly.The slower and with less " +"acceleration you print, the larger the range of acceptable PA values. If no " +"difference is visible, use the PA value from the faster test.3. Enter the " +"triplets of PA values, Flow and Accelerations in the text box here and save " +"your filament profile\n" +"\n" +msgstr "" +"압력 전진(PA) 값 세트, 측정된 체적 유량 속도 및 가속도를 쉼표로 구분하여 추가" +"합니다. 한 줄에 하나의 값 세트가 있습니다. 예를 들어\n" +"0.04,3.96,3000\n" +"0.033,3.96,10000\n" +"0.029,7.91,3000\n" +"0.026,7.91,10000\n" +"\n" +"교정 방법:\n" +"1. 가속도 값당 최소 3개 속도에 대해 압력 전진 테스트를 실행합니다. 최소한 외" +"부 둘레의 속도, 내부 둘레의 속도 및 프로필의 가장 빠른 기능 인쇄 속도(일반적" +"으로 희박하거나 단단한 충전재)에 대해 테스트를 실행하는 것이 좋습니다. 그런 " +"다음 가장 느리고 가장 빠른 인쇄 가속을 위해 동일한 속도로 실행하고 Klipper 입" +"력 셰이퍼에서 제공하는 권장 최대 가속보다 빠르지 않게 실행하십시오.\n" +"2. 각 체적 유속 및 가속도에 대한 최적의 PA 값을 기록해 두십시오. 색상 구성표 " +"드롭다운에서 흐름을 선택하고 PA 패턴 라인 위로 수평 슬라이더를 이동하여 흐름 " +"번호를 찾을 수 있습니다. 페이지 하단에 번호가 표시되어야 합니다. 이상적인 PA " +"값은 체적 유량이 높을수록 감소해야 합니다. 그렇지 않은 경우 압출기가 올바르" +"게 작동하는지 확인하십시오. 인쇄 속도가 느리고 가속도가 낮을수록 허용되는 PA " +"값의 범위는 더 커집니다. 차이가 보이지 않으면 더 빠른 테스트의 PA 값을 사용하" +"십시오.3. 여기 텍스트 상자에 PA 값, 흐름 및 가속도의 세 가지 값을 입력하고 필" +"라멘트 프로필을 저장하세요.\n" + +msgid "Enable adaptive pressure advance for overhangs (beta)" +msgstr "오버행에 대한 적응형 압력 전진 활성화(베타)" + +msgid "" +"Enable adaptive PA for overhangs as well as when flow changes within the " +"same feature. This is an experimental option, as if the PA profile is not " +"set accurately, it will cause uniformity issues on the external surfaces " +"before and after overhangs.\n" +msgstr "" +"돌출부뿐만 아니라 동일한 기능 내에서 흐름이 변경되는 경우 적응형 PA를 활성화" +"합니다. 이는 실험적인 옵션입니다. PA 프로파일이 정확하게 설정되지 않으면 오버" +"행 전후의 외부 표면에 균일성 문제가 발생할 수 있습니다.\n" + +msgid "Pressure advance for bridges" +msgstr "브릿지를 위한 압력 전진" + +msgid "" +"Pressure advance value for bridges. Set to 0 to disable. \n" +"\n" +" A lower PA value when printing bridges helps reduce the appearance of " +"slight under extrusion immediately after bridges. This is caused by the " +"pressure drop in the nozzle when printing in the air and a lower PA helps " +"counteract this." +msgstr "" +"브릿지의 압력 전진 값입니다. 비활성화하려면 0으로 설정합니다. \n" +"\n" +" 브릿지를 프린팅할 때 PA 값이 낮으면 브릿지 직후에 약간의 언더 압출이 나타나" +"는 것을 줄이는 데 도움이 됩니다. 이는 공중에서 인쇄할 때 노즐의 압력 강하로 " +"인해 발생하며 PA가 낮을수록 이를 방지하는 데 도움이 됩니다." + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"다른 선 너비가 0으로 설정된 경우 기본 선 너비입니다. %로 입력 시 노즐 직경에 " +"대한 비율로 계산됩니다." + +msgid "Keep fan always on" +msgstr "팬 상시 가동" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"이 설정을 활성화하면 출력물 냉각 팬이 정지되지 않으며 팬을 최소 속도로 가동하" +"여 시동 및 정지 빈도를 줄입니다" + +msgid "Don't slow down outer walls" +msgstr "외벽 감속하지 않기" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" +"활성화되면 최소 레이어 시간을 충족하기 위한 외벽의 출력 속도 감속을 적용하지 " +"않습니다. 이 기능은 아래의 경우에 도움이 될 수 있습니다:\n" +"\n" +"1. 유광 필라멘트로 인쇄할 때 일정한 광택을 유지하기 위한 경우 \n" +"2. 외벽 출력 속도의 변화로 인한 외벽의 Z밴딩처럼 보이는 형상이 생성되는 것을 " +"방지하기 위한 경우 \n" +"3. 외벽을 VFA를 발생시키는 속도로 출력하는 것을 방지하기 위한 경우\n" +"\n" + +msgid "Layer time" +msgstr "레이어 시간" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"예상 시간이 이 값보다 짧은 레이어에 대해 출력물 냉각 팬이 활성화됩니다. 팬 속" +"도는 레이어 출력 시간에 따라 최소 및 최대 팬 속도 사이에서 보간됩니다" + +msgid "Default color" +msgstr "기본 색상" + +msgid "Default filament color" +msgstr "기본 필라멘트 색상" + +msgid "Filament notes" +msgstr "필라멘트 메모" + +msgid "You can put your notes regarding the filament here." +msgstr "여기에 필라멘트에 관한 메모를 할 수 있습니다." + +msgid "Required nozzle HRC" +msgstr "필수 노즐 록웰 경도" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"필라멘트 출력에 필요한 노즐의 최소 록웰 경도. 0은 노즐의 록웰 경도를 확인하" +"지 않음을 의미합니다." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"이 설정은 초당 얼마나 많은 양의 필라멘트를 녹이고 압출할 수 있는지를 나타냅니" +"다. 너무 높고 부적절한 속도 설정의 경우 출력 속도는 최대 체적 속도에 의해 제" +"한됩니다. 0이 될 수 없습니다" + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "필라멘트 넣기 시간" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "필라멘트 교체 시 새 필라멘트를 넣는 시간입니다. 통계에만 사용됩니다" + +msgid "Filament unload time" +msgstr "필라멘트 빼기 시간" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"필라멘트를 교체할 때 기존 필라멘트를 빼는 시간입니다. 통계에만 사용됩니다" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"필라멘트 직경은 G코드에서 압출량을 계산하는데 사용되므로 중요하며 정확해야 합" +"니다" + +msgid "Pellet flow coefficient" +msgstr "펠릿 유량 계수" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" +"펠릿 유량 계수는 경험적으로 추산되며 펠릿 프린터에서의 부피 계산에 사용됩니" +"다.\n" +"\n" +"내부적으로 이 값은 filament_diameter로 변환됩니다. 다른 부피 계산은 영향을 받" +"지 않습니다.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" + +msgid "Shrinkage" +msgstr "수축" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"냉각 후 필라멘트가 얻게 될 수축률을 입력합니다(100mm 대신 94mm를 측정하는 경" +"우 94%). 출력물은 xy 방향으로 보정됩니다. 외벽에 사용되는 필라멘트에만 적용됩" +"니다.\n" +"이 보정은 확인 후 수행되므로 개체 사이에 충분한 공간을 허용해야 합니다." + +msgid "Loading speed" +msgstr "압출 속도" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "닦기 타워에 필라멘트를 압출하는 데 사용되는 속도입니다." + +msgid "Loading speed at the start" +msgstr "시작 시 압출 속도" + +msgid "Speed used at the very beginning of loading phase." +msgstr "압출 단계 초기에 사용되는 속도입니다." + +msgid "Unloading speed" +msgstr "언로드 속도" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"닦기 타워에 필라멘트를 빼는 데 사용되는 속도(래밍 직후 빼기 초기 부분에는 영" +"향을 미치지 않음)" + +msgid "Unloading speed at the start" +msgstr "시작시 언로드 속도" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "래밍 직후 필라멘트 끝을 빼는 데 사용되는 속도입니다." + +msgid "Delay after unloading" +msgstr "빼기 후 지연" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"필라멘트를 뺀 후 기다리는 시간입니다. 원래 치수로 축소되는 데 더 많은 시간이 " +"필요할 수 있는 유연한 재료 사용 시 안정적으로 툴 체인지를 할 수 있게 도움이 " +"될 수 있습니다." + +msgid "Number of cooling moves" +msgstr "냉각 이동 횟수" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"필라멘트는 냉각 튜브 내에서 앞뒤로 움직이면서 냉각됩니다. 원하는 이동 횟수를 " +"지정하세요." + +msgid "Stamping loading speed" +msgstr "스탬핑 로딩 속도" + +msgid "Speed used for stamping." +msgstr "스탬핑에 사용되는 속도." + +msgid "Stamping distance measured from the center of the cooling tube" +msgstr "냉각 튜브 중심에서 측정한 스탬핑 거리" + +msgid "" +"If set to nonzero value, filament is moved toward the nozzle between the " +"individual cooling moves (\"stamping\"). This option configures how long " +"this movement should be before the filament is retracted again." +msgstr "" +"0이 아닌 값으로 설정되면 개별 냉각 이동(\"스탬핑\") 사이에 필라멘트가 노즐을 " +"향해 이동합니다. 이 옵션은 필라멘트가 다시 수축되기 전에 이 움직임이 얼마나 " +"오래 지속되어야 하는지를 구성합니다." + +msgid "Speed of the first cooling move" +msgstr "첫 번째 냉각 이동 속도" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "이 속도부터 냉각 동작이 점차 가속됩니다." + +msgid "Minimal purge on wipe tower" +msgstr "닦기 타워의 최소 청소" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"툴 교환 후 노즐 내부에 새로 로드된 필라멘트의 정확한 위치를 알 수 없으며 필라" +"멘트 압력이 아직 안정적이지 않을 수 있습니다. 프린트 헤드를 채우기 또는 희생 " +"개체로 청소하기 전에 Snapmaker Orca은 항상 이 양의 재료를 닦기 타워로 프라이밍하" +"여 연속적인 채우기 또는 희생 물체 압출을 안정적으로 생성합니다." + +msgid "Speed of the last cooling move" +msgstr "마지막 냉각 이동 속도" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "냉각 동작은 이 속도를 향해 점진적으로 감속됩니다." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"툴 교체 중(T 코드 실행 시) 프린터 펌웨어(또는 Multi Material Unit 2.0)가 새 " +"필라멘트를 넣는 시간입니다. 이 시간은 G코드 시간 계산기에 의해 총 출력 시간" +"에 추가됩니다." + +msgid "Ramming parameters" +msgstr "래밍 매개변수" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"이 문자열은 RammingDialog에 의해 편집되며 래밍 관련 매개변수를 포함합니다." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"툴 교체 중(T 코드 실행 시) 프린터 펌웨어(또는 Multi Material Unit 2.0)가 필라" +"멘트를 빼는 시간입니다. 이 시간은 G코드 시간 계산기에 의해 총 출력 시간에 추" +"가됩니다." + +msgid "Enable ramming for multitool setups" +msgstr "다중 압출기 설정을 위한 래밍 활성화" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"다중 압출기 프린터를 사용할 때 래밍을 수행합니다(예: 프린터 설정에서 '단일 압" +"출기 다중 재료'가 선택 취소된 경우). 활성화하면 툴 체인지 직전 닦기 타워에 소" +"량의 필라멘트가 빠르게 압출됩니다. 이 옵션은 닦기 타워가 활성화된 경우에만 사" +"용됩니다." + +msgid "Multitool ramming volume" +msgstr "다중 압출기 래밍 부피" + +msgid "The volume to be rammed before the toolchange." +msgstr "툴 체인지 전에 래밍 할 볼륨입니다." + +msgid "Multitool ramming flow" +msgstr "다중 압출기 래밍 유량" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "툴 체인지 전에 필라멘트를 래밍하는 데 사용되는 유량입니다." + +msgid "Density" +msgstr "밀도" + +msgid "Filament density. For statistics only" +msgstr "필라멘트 밀도. 통계 전용" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "필라멘트의 재료 유형" + +msgid "Soluble material" +msgstr "가용성 재료" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"가용성 재료는 일반적으로 지지대 및 지지대 접점을 출력하는 데 사용됩니다" + +msgid "Support material" +msgstr "지지대 재료" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"지지대 재료는 일반적으로 지지대 및 지지대 접점을 출력하는 데 사용됩니다" + +msgid "Softening temperature" +msgstr "연화 온도" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"이 온도에서는 재료가 부드러워지므로 베드 온도가 이 온도 이상일 경우 막힘을 방" +"지하기 위해 전면 도어를 열거나 상단 유리를 제거하는 것이 좋습니다." + +msgid "Price" +msgstr "가격" + +msgid "Filament price. For statistics only" +msgstr "필라멘트 가격. 통계 전용" + +msgid "money/kg" +msgstr "가격/kg" + +msgid "Vendor" +msgstr "제조사" + +msgid "Vendor of filament. For show only" +msgstr "필라멘트 제조사" + +msgid "(Undefined)" +msgstr "(정의되지 않음)" + +msgid "Sparse infill direction" +msgstr "드문 채우기 방향" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "선의 시작 또는 주 방향을 제어하는 드문 채우기 패턴에 대한 각도" + +msgid "Solid infill direction" +msgstr "꽉찬 채우기 방향" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "선의 시작 또는 기본 방향을 제어하는 ​​솔리드 채우기 패턴의 각도" + +msgid "Rotate solid infill direction" +msgstr "솔리드 채우기 방향 회전" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "각 레이어에 대해 솔리드 채우기 방향을 90° 회전합니다." + +msgid "Sparse infill density" +msgstr "드문 채우기 밀도" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"내부 드문 채우기의 밀도, 100%는 모든 드문 채우기를 꽉찬 내부 채우기로 변경하" +"고 채우기에는 패턴이 사용됩니다" + +msgid "Sparse infill pattern" +msgstr "드문 채우기 패턴" + +msgid "Line pattern for internal sparse infill" +msgstr "드문 내부 채우기의 선 패턴" + +msgid "Grid" +msgstr "격자" + +msgid "Line" +msgstr "선" + +msgid "Cubic" +msgstr "정육면체" + +msgid "Tri-hexagon" +msgstr "삼각-육각형" + +msgid "Gyroid" +msgstr "자이로이드" + +msgid "Honeycomb" +msgstr "벌집" + +msgid "Adaptive Cubic" +msgstr "적응형 정육면체" + +msgid "3D Honeycomb" +msgstr "3D 벌집" + +msgid "Support Cubic" +msgstr "정육면체 지지대" + +msgid "Lightning" +msgstr "번개" + +msgid "Cross Hatch" +msgstr "크로스 해치" + +msgid "Sparse infill anchor length" +msgstr "드문 채우기 고정점 길이" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"사용하여 채우기 선을 내부 둘레에 연결합니다. 백분율(예: 15%)로 표시되는 경우 " +"채우기 돌출 너비에 대해 계산됩니다. Snapmaker Orca은 두 개의 가까운 채우기 선을 " +"짧은 주변 세그먼트에 연결하려고 합니다. 내부 채우기 고정점 " +"(infill_anchor_max) 최대 길이보다 짧은 경계 세그먼트가 발견되지 않으면 \n" +"채우기 선은 한쪽에서 경계 세그먼트에 연결되고 취해진 경계 세그먼트의 길이는 " +"이 매개변수로 제한되지만 최대 고정점 길이(anchor_length_max) 보다 길지 않습니" +"다.\n" +"단일 채우기 선에 연결된 고정 둘레를 비활성화하려면 이 매개변수를 0으로 설정합" +"니다." + +msgid "0 (no open anchors)" +msgstr "0 (개방형 고정점 없음)" + +msgid "1000 (unlimited)" +msgstr "1000 (무제한)" + +msgid "Maximum length of the infill anchor" +msgstr "채우기 고정점 최대 길이" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"추가 둘레의 짧은 세그먼트를 사용하여 채우기 선을 내부 둘레에 연결합니다. 백분" +"율(예: 15%)로 표시되는 경우 채우기 돌출 너비에 대해 계산됩니다. Snapmaker Orca" +"은 두 개의 가까운 채우기 선을 짧은 주변 세그먼트에 연결하려고 합니다. 이 매개" +"변수보다 짧은 주변 세그먼트가 발견되지 않으면 채우기 선은 한쪽 측면의 주변 세" +"그먼트에 연결되고 사용된 주변 세그먼트의 길이는 앵커 채우기(infill_anchor)로 " +"제한되지만 이 매개변수보다 길지 않습니다.\n" +"0으로 설정하면 채우기 연결에 대한 이전 알고리즘이 사용되며 1000 & 0과 동일한 " +"결과를 생성해야 합니다." + +msgid "0 (Simple connect)" +msgstr "0 (단순 연결)" + +msgid "Acceleration of outer walls" +msgstr "외벽의 가속도" + +msgid "Acceleration of inner walls" +msgstr "내벽의 가속도" + +msgid "Acceleration of travel moves" +msgstr "이동 가속도" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"상단 표면 가속도. 낮은 값을 사용하면 상단 표면 품질이 향상될 수 있습니다" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "외벽의 가속도. 낮은 값을 사용하면 품질이 향상 될 수 있습니다" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"브릿지의 가속도. 값을 백분율 (ex. 50%)로 표시하면 외벽 가속도 기준으로 계산됩" +"니다." + +msgid "mm/s² or %" +msgstr "mm/s² 또는 %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"드문 채우기 가속도. 값이 백분율 (예. 100%)로 표시되면 기본 가속도를 기준으로 " +"계산됩니다." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"꽉찬 내부 채우기 가속도. 값이 백분율 (예. 100%)로 표시되면 기본 가속도를 기준" +"으로 계산됩니다." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"초기 레이어 가속도. 낮은 값을 사용하면 빌드 플레이트 안착률을 높일 수 있습니" +"다" + +msgid "Enable accel_to_decel" +msgstr "가속/감속 활성화" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "Klipper의 max_accel_to_decel은 자동으로 조정됩니다" + +msgid "accel_to_decel" +msgstr "가속/감속" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "Klipper의 max_accel_to_decel은 가속도의 %%로 조정됩니다" + +msgid "Jerk of outer walls" +msgstr "외벽 저크" + +msgid "Jerk of inner walls" +msgstr "내벽 저크" + +msgid "Jerk for top surface" +msgstr "상단 표면 저크" + +msgid "Jerk for infill" +msgstr "채우기 저크" + +msgid "Jerk for initial layer" +msgstr "초기 레이어 저크" + +msgid "Jerk for travel" +msgstr "이동 저크" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "초기 레이어의 선 너비. %로 입력 시 노즐 직경에 대한 비율로 계산됩니다." + +msgid "Initial layer height" +msgstr "초기 레이어 높이" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"초기 레이어의 높이입니다. 초기 레이어 높이를 약간 두껍게 하면 빌드 플레이트 " +"접착력을 향상시킬 수 있습니다" + +msgid "Speed of initial layer except the solid infill part" +msgstr "꽉찬 채우기 부분을 제외한 초기 레이어 속도" + +msgid "Initial layer infill" +msgstr "초기 레이어 채우기" + +msgid "Speed of solid infill part of initial layer" +msgstr "초기 레이어의 꽉찬 채우기 속도" + +msgid "Initial layer travel speed" +msgstr "초기 레이어 이동 속도" + +msgid "Travel speed of initial layer" +msgstr "초기 레이어 이동 속도" + +msgid "Number of slow layers" +msgstr "저속 레이어 수" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"처음 몇 개의 레이어는 평소보다 느리게 출력됩니다. 속도는 지정된 레이어 수에 " +"걸쳐 선형 방식으로 점차 증가합니다." + +msgid "Initial layer nozzle temperature" +msgstr "초기 레이어 노즐 온도" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "이 필라멘트를 사용할 때 초기 레이어를 출력하기 위한 노즐 온도" + +msgid "Full fan speed at layer" +msgstr "팬 최대 속도 레이어" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"팬 속도는 \"close_fan_the_first_x_layers\" 의 0에서 \"full_fan_speed_layer\" " +"의 최고 속도까지 선형적으로 증가합니다. \"full_fan_speed_layer\"가 " +"\"close_fan_the_first_x_layers\"보다 낮으면 무시되며, 이 경우 팬은 " +"\"close_fan_the_first_x_layers\" + 1 에서 최대 허용 속도로 가도됩니다." + +msgid "layer" +msgstr "레이어" + +msgid "Support interface fan speed" +msgstr "지지대 접점 팬 속도" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"이 설정값은 높은 팬 속도로 접점의 결합을 약화시킬 수 있도록 모든 지지대 접점" +"(Support interface)에 적용됩니다.\n" +"사용하지 않으려면 -1로 설정합니다.\n" +"disable_fan_first_layers로만 재정의할 수 있습니다." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"벽을 출력하는 동안 무작위로 지터가 발생하여 표면이 거칠게 보입니다. 이 설정" +"은 퍼지 위치를 제어합니다" + +msgid "Contour" +msgstr "윤곽" + +msgid "Contour and hole" +msgstr "윤곽 및 구멍" + +msgid "All walls" +msgstr "모든 벽" + +msgid "Fuzzy skin thickness" +msgstr "퍼지 스킨 두께" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "임의로 움직일 너비입니다. 외벽 선 너비 보다 얇게 하는 것이 좋습니다" + +msgid "Fuzzy skin point distance" +msgstr "퍼지 스킨 지점 거리" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "각 선의 분절에 도입된 임의의 지점간 평균 거리" + +msgid "Apply fuzzy skin to first layer" +msgstr "첫 번째 레이어에 퍼지 스킨 적용" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "첫 번째 레이어에 퍼지 스킨을 적용할지 여부" + +msgid "Filter out tiny gaps" +msgstr "작은 간격 필터링" + +msgid "Layers and Perimeters" +msgstr "레이어와 윤곽선" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "지정된 임계값보다 작은 간격을 필터링합니다" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"간격 채우기 속도. 간격은 일반적으로 선 너비가 불규칙하므로 더 천천히 출력해" +"야 합니다" + +msgid "Precise Z height" +msgstr "정확한 Z 높이" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"슬라이싱 후 객체의 정확한 z 높이를 얻으려면 이 옵션을 활성화하세요. 마지막 " +"몇 레이어의 레이어 높이를 미세 조정하여 정확한 개체 높이를 얻습니다. 이는 실" +"험적인 매개변수입니다." + +msgid "Arc fitting" +msgstr "원호 맞춤" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" +"G2 및 G3 이동이 있는 G코드 파일을 얻으려면 이 옵션을 활성화하십시오. 피팅 공" +"차는 분해능과 동일합니다. \n" +"\n" +"참고: Klipper 기계의 경우 이 옵션을 비활성화하는 것이 좋습니다. Klipper는 " +"arc 명령이 펌웨어에 의해 라인 세그먼트로 다시 분할되므로 이점을 얻지 못합니" +"다. 이로 인해 선 세그먼트가 슬라이서에 의해 호로 변환된 다음 펌웨어에 의해 다" +"시 선 세그먼트로 변환되므로 표면 품질이 저하됩니다." + +msgid "Add line number" +msgstr "라인 번호 추가" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"각 G코드 라인의 시작 부분에 라인 번호(Nx)를 추가하려면 이 기능을 활성화하세요" + +msgid "Scan first layer" +msgstr "첫 레이어 스캔" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"프린터의 카메라가 첫 레이어의 품질을 확인할 수 있도록 하려면 이 옵션을 활성화" +"하세요" + +msgid "Nozzle type" +msgstr "노즐 유형" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"노즐의 금속 재질. 노즐의 내마모성을 결정하고 어떤 종류의 필라멘트를 출력할 " +"수 있는지를 결정합니다" + +msgid "Undefine" +msgstr "알 수 없음" + +msgid "Hardened steel" +msgstr "경화강 노즐" + +msgid "Stainless steel" +msgstr "스테인레스강 노즐" + +msgid "Brass" +msgstr "황동 노즐" + +msgid "Nozzle HRC" +msgstr "노즐 록웰 경도" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"노즐의 경도. 0은 슬라이스하는 동안 노즐의 경도를 확인하지 않음을 의미합니다." + +msgid "HRC" +msgstr "록웰 경도" + +msgid "Printer structure" +msgstr "프린터 구조" + +msgid "The physical arrangement and components of a printing device" +msgstr "출력 장치의 물리적 배열 및 구성 요소" + +msgid "CoreXY" +msgstr "코어XY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "델타" + +msgid "Best object position" +msgstr "가장 좋은 개체 위치" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "베드 모양 w.r.t. 범위 [0,1] 내에서 가장 좋은 자동 정렬 위치입니다." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"장치에 보조 출력물 냉각팬이 있는 경우 이 옵션을 활성화합니다. G코드 명령: " +"M106 P2 S(0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"목표한 시작 시간보다 이 시간(소수 초를 사용할 수 있음) 일찍 팬을 시작합니다. " +"이 시간 추정을 위해 무한 가속을 가정하고 G1 및 G0 이동만 고려합니다(원호 맞춤" +"은 지원되지 않음).\n" +"사용자 정의 G코드에서 팬 명령을 이동하지 않습니다(일종의 '장벽' 역할을 함).\n" +"'사용자 정의 시작 G코드만'이 활성화된 경우 팬 명령을 시작 G코드로 이동하지 않" +"습니다.\n" +"비활성화하려면 0을 사용하세요." + +msgid "Only overhangs" +msgstr "돌출부 만" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "돌출부 냉각 지연만 고려합니다." + +msgid "Fan kick-start time" +msgstr "팬 시동 시간" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"목표 속도로 줄이기 전에 냉각 팬을 시동하기 위해 이 시간만큼 일찍 최대 팬 속" +"도 명령을 내립니다.\n" +"이 기능은 낮은 PWM/전력으로는 팬이 정지 상태에서 회전을 시작하거나 팬의 속도" +"를 빠르게 향상시키기에 부족할 수 있는 팬에게 유용합니다.\n" +"비활성화하려면 0으로 설정합니다." + +msgid "Time cost" +msgstr "시간비용" + +msgid "The printer cost per hour" +msgstr "시간당 프린터 비용" + +msgid "money/h" +msgstr "비용/시간" + +msgid "Support control chamber temperature" +msgstr "챔버 온도 제어 지원" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"이 옵션은 기계가 챔버 온도 제어를 지원하는 경우 활성화됩니다.\n" +"G코드 명령: M141 S(0-255)" + +msgid "Support air filtration" +msgstr "공기 여과 지원" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"프린터가 공기 여과를 지원하는 경우 활성화하세요.\n" +"G코드 명령: M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "G코드 유형" + +msgid "What kind of gcode the printer is compatible with" +msgstr "프린터와 호환되는 G코드 종류" + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "펠릿 프린터" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "프린터가 필라멘트 대신 펠릿을 사용할 경우 활성화하세요" + +msgid "Support multi bed types" +msgstr "멀티 배드 유형 지원" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "여러 배드 유형을 사용하려면 이 옵션을 활성화하세요" + +msgid "Label objects" +msgstr "개체 이름표" + +# Wipe into this object;s infill/Wipe into this object +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"이 옵션을 선택하면 G코드 출력시 이동에 설명을 추가할 수 있습니다. 이는 " +"Octoprint CancelObject 플러그인에 유용합니다. \n" +"이 설정은 단일 압출기 다중 재료 설정 및 개체에서 닦기 / 채우기에서 닦기와 호" +"환되지 않습니다." + +msgid "Exclude objects" +msgstr "개체 제외" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "G코드에 개체 제외 명령을 추가하려면 이 옵션을 활성화하세요" + +msgid "Verbose G-code" +msgstr "상세한 G코드" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"주석이 달린 G코드 파일을 가져오려면 이 기능을 활성화하세요. 각 라인은 설명 텍" +"스트로 설명됩니다. SD 카드에서 출력하는 경우 파일의 추가 크기로 인해 펌웨어 " +"속도가 느려질 수 있습니다." + +msgid "Infill combination" +msgstr "채우기 결합" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"여러 레이어의 드문 채우기를 자동으로 결합 후 함께 출력하여 시간을 단축합니" +"다. 벽은 여전히 설정된 레이어 높이로 출력됩니다." + +msgid "Filament to print internal sparse infill." +msgstr "내부 드문 채우기를 출력할 필라멘트." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"드문 내부 채우기의 선 너비. %로 입력 시 노즐 직경에 대한 비율로 계산됩니다." + +msgid "Infill/Wall overlap" +msgstr "채우기/벽 겹치기" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" +"채우기 영역은 더 나은 접착을 위해 벽과 겹치도록 약간 확대됩니다. 백분율 값은 " +"희박한 채우기의 선 너비를 기준으로 합니다. 거친 상단 표면을 초래하는 재료의 " +"압출 및 축적 가능성을 최소화하려면 이 값을 ~10-15%로 설정하십시오." + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "상단/하단 솔리드 채우기/벽 겹침" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"상단 솔리드 채우기 영역은 더 나은 접착을 위해 벽과 겹치도록 약간 확대되고 상" +"단 채우기가 벽과 만나는 핀홀의 모양을 최소화합니다. 25-30%의 값은 핀홀의 모양" +"을 최소화하는 좋은 출발점입니다. 백분율 값은 희박한 채우기의 선 너비를 기준으" +"로 합니다" + +msgid "Speed of internal sparse infill" +msgstr "내부 드문 채우기 속도" + +msgid "Interface shells" +msgstr "접점 쉘" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"인접한 재료/체적 사이에 꽉찬 쉘을 강제로 생성합니다. 투명한 재료 또는 용해성 " +"지지대 재료를 사용하는 다중 압출기 출력에 유용합니다" + +msgid "Maximum width of a segmented region" +msgstr "분할된 영역의 최대 너비" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "분할된 영역의 최대 너비입니다. 0은 이 기능을 비활성화합니다." + +msgid "Interlocking depth of a segmented region" +msgstr "분할된 영역의 연동 깊이" + +msgid "" +"Interlocking depth of a segmented region. It will be ignored if " +"\"mmu_segmented_region_max_width\" is zero or if " +"\"mmu_segmented_region_interlocking_depth\"is bigger then " +"\"mmu_segmented_region_max_width\". Zero disables this feature." +msgstr "" +"분할된 영역의 연동 깊이. \"mmu_segmented_region_max_width\"가 0이거나 " +"\"mmu_segmented_region_interlocking_length\"가 " +"\"mmu_segmented_region_max_width\"보다 크면 무시됩니다. 0은 이 기능을 비활성" +"화합니다." + +msgid "Use beam interlocking" +msgstr "인터로킹 빔 사용" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" +"서로 다른 필라멘트가 접촉하는 곳에 맞물리는 구조의 (인터로킹) 빔을 생성합니" +"다. 이 기능은 필라멘트 간의 결합력을 향상시키며, 서로 다른 재료로 출력한 모델" +"에 특히 유용합니다." + +msgid "Interlocking beam width" +msgstr "인터로킹 빔 너비" + +msgid "The width of the interlocking structure beams." +msgstr "인터로킹 빔 구조의 너비." + +msgid "Interlocking direction" +msgstr "맞물림 방향" + +msgid "Orientation of interlock beams." +msgstr "인터로킹 빔의 배치 방향." + +msgid "Interlocking beam layers" +msgstr "인터로킹 빔 레이어 수" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" +"맞물림 구조의 높이를 레이어 수로 나타낸 값입니다. 레이어 수가 적을수록 강도" +"가 올라가나, 결함이 발생하기 더 쉬워집니다." + +msgid "Interlocking depth" +msgstr "맞물림 깊이" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" +"필라멘트 간의 접촉면으로부터 맞물림 구조를 생성할 거리를 셀의 수로 나타낸 값" +"입니다. 너무 적은 수의 셀을 사용할 경우 결합력이 저하될 수 있습니다." + +msgid "Interlocking boundary avoidance" +msgstr "맞물림 방지 거리" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "모델의 외벽으로부터 맞물림 구조를 생성하기 시작할 거리를 설정합니다." + +msgid "Ironing Type" +msgstr "다림질 유형" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"다림질은 평평한 표면을 더 부드럽게 만들기 위해 같은 높이의 표면에 소량의 압출" +"로 다시 출력하는 것입니다. 이 설정은 다림질 레이어를 제어합니다" + +msgid "No ironing" +msgstr "사용안함" + +msgid "Top surfaces" +msgstr "상단 표면" + +msgid "Topmost surface" +msgstr "최상단 표면" + +msgid "All solid layer" +msgstr "모든 꽉찬 레이어" + +msgid "Ironing Pattern" +msgstr "다림질 패턴" + +msgid "The pattern that will be used when ironing" +msgstr "다림질할 때 사용할 패턴" + +msgid "Ironing flow" +msgstr "다림질 유량" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"다림질 중에 압출할 재료의 양입니다. 정상 레이어 높이의 유량에 상대적입니다. " +"값이 너무 높으면 표면에 과다 압출이 발생합니다" + +msgid "Ironing line spacing" +msgstr "다림질 선 간격" + +msgid "The distance between the lines of ironing" +msgstr "다림질 선 간격" + +msgid "Ironing speed" +msgstr "다림질 속도" + +msgid "Print speed of ironing lines" +msgstr "다림질 선의 출력 속도" + +msgid "Ironing angle" +msgstr "다림질 각도" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"다림질이 해당 각도에서 실행됩니다. 음수는 이 기능을 비활성화하고 기본값을 사" +"용합니다." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "이 G코드는 Z올리기 이후 모든 레이어 변경에 삽입됩니다" + +msgid "Supports silent mode" +msgstr "무음 모드 지원" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "기기가 낮은 가속도를 사용하여 출력하는 무음 모드 지원 여부" + +msgid "Emit limits to G-code" +msgstr "G코드에 대한 방출 제한" + +msgid "Machine limits" +msgstr "장치 한계" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"활성화되면 기계의 한계가 G코드 파일로 내보내집니다.\n" +"G코드 유형이 Klipper로 설정된 경우 이 옵션은 무시됩니다." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"이 G코드는 출력 일시 정지를 위한 코드로 사용됩니다. 사용자는 G코드 뷰어에서 " +"일시 정지 G코드를 삽입할 수 있습니다" + +msgid "This G-code will be used as a custom code" +msgstr "이 G코드는 사용자 정의 코드로 사용됩니다" + +msgid "Small area flow compensation (beta)" +msgstr "작은 영역 유량 보상 (베타)" + +msgid "Enable flow compensation for small infill areas" +msgstr "작은 채우기 영역에 대한 유량 보상 활성화" + +msgid "Flow Compensation Model" +msgstr "유량 보상 모델" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"작은 채우기 영역의 유량을 조정하는 데 사용되는 유량 보상 모델. 모델은 " +"\"1.234,5.678\" 형식으로 한 줄에 하나씩 압출 길이 및 유량 수정 계수에 대한 쉼" +"표로 구분된 값 쌍으로 표현됩니다." + +msgid "Maximum speed X" +msgstr "X축 최대 속도" + +msgid "Maximum speed Y" +msgstr "Y축 최대 속도" + +msgid "Maximum speed Z" +msgstr "Z축 최대 속도" + +msgid "Maximum speed E" +msgstr "E축 최대 속도" + +msgid "Maximum X speed" +msgstr "X축 최대 속도" + +msgid "Maximum Y speed" +msgstr "Y축 최대 속도" + +msgid "Maximum Z speed" +msgstr "Z축 최대 속도" + +msgid "Maximum E speed" +msgstr "E축 최대 속도" + +msgid "Maximum acceleration X" +msgstr "X축 최대 가속도" + +msgid "Maximum acceleration Y" +msgstr "Y축 최대 가속도" + +msgid "Maximum acceleration Z" +msgstr "Z축 최대 가속도" + +msgid "Maximum acceleration E" +msgstr "E축 최대 가속도" + +msgid "Maximum acceleration of the X axis" +msgstr "X축 최대 가속도" + +msgid "Maximum acceleration of the Y axis" +msgstr "Y축 최대 가속도" + +msgid "Maximum acceleration of the Z axis" +msgstr "Z축 최대 가속도" + +msgid "Maximum acceleration of the E axis" +msgstr "E축 최대 가속도" + +msgid "Maximum jerk X" +msgstr "X축 최대 저크" + +msgid "Maximum jerk Y" +msgstr "Y축 최대 저크" + +msgid "Maximum jerk Z" +msgstr "Z축 최대 저크" + +msgid "Maximum jerk E" +msgstr "E축 최대 저크" + +msgid "Maximum jerk of the X axis" +msgstr "X축 최대 저크" + +msgid "Maximum jerk of the Y axis" +msgstr "Y축 최대 저크" + +msgid "Maximum jerk of the Z axis" +msgstr "Z축 최대 저크" + +msgid "Maximum jerk of the E axis" +msgstr "E축 최대 저크" + +msgid "Minimum speed for extruding" +msgstr "압출 중 최대 속도" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "압출 중 최대 속도 (M205 S)" + +msgid "Minimum travel speed" +msgstr "최소 이동 속도" + +msgid "Minimum travel speed (M205 T)" +msgstr "최소 이동 속도 (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "압출 중 최대 가속도" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "압출 중 최대 가속도 (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "후퇴 중 최대 가속도" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "후퇴 중 최대 가속도 (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "이동 최대 가속도" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "이동 시 최대 가속도(M204 T)는 Marlin 2에만 적용됩니다" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"자동 냉각이 활성화되면 출력물 냉각 팬 속도가 증가할 수 있습니다. 이는 출력물 " +"냉각 팬의 최대 속도 제한입니다" + +msgid "Max" +msgstr "최대" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"압출기의 출력 가능한 최대 레이어 높이입니다. 사용된 값은 적응형 레이어 높이" +"를 활성화할 때 최대 레이어 높이를 제한합니다" + +msgid "Extrusion rate smoothing" +msgstr "유연한 압출 유량" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"이 매개변수는 프린터가 높은 유량(고속/더 큰 너비) 압출에서 낮은 유량(낮은 속" +"도/더 작은 너비) 압출로 또는 그 반대로 출력할 때 발생하는 급격한 압출 속도 변" +"화를 완화합니다.\n" +"\n" +"이는 압출된 체적 유량(mm3/초)이 시간에 따라 변할 수 있는 최대 속도를 정의합니" +"다. 값이 높을수록 더 높은 압출 속도 변경이 허용되어 속도 전환이 더 빨라진다" +"는 의미입니다.\n" +"\n" +"값이 0이면 기능이 비활성화됩니다.\n" +"\n" +"고속, 고유량 직접 구동 프린터(예: 뱀부랩 또는 보론)의 경우 일반적으로 이 값" +"이 필요하지 않습니다. 그러나 기능 속도가 크게 달라지는 특정 경우에는 약간의 " +"이점을 제공할 수 있습니다. 예를 들어 돌출부로 인해 급격하게 감속이 발생하는 " +"경우입니다. 이러한 경우 약 300-350mm3/s2의 높은 값이 권장됩니다. 이렇게 하면 " +"프레셔 어드밴스가 더 부드러운 유량 전환을 달성하는 데 도움이 될 만큼 충분히 " +"매끄러워질 수 있기 때문입니다.\n" +"\n" +"프레셔 어드밴스 기능이 없는 느린 프린터의 경우 값을 훨씬 낮게 설정해야 합니" +"다. 10-15mm3/s2 값은 직접 구동 압출기의 좋은 시작점이고 보우덴 스타일의 경우 " +"5-10mm3/s2입니다.\n" +"\n" +"이 기능은 Prusa 슬라이서에서는 프레셔 이퀄라이저(Pressure Equalizer)로 알려" +"져 있습니다.\n" +"\n" +"참고: 이 매개변수는 원호 피팅(Arc fitting)을 비활성화합니다." + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "유연 분할 길이" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"값이 낮을수록 압출 속도 전환이 더 유연해집니다. 하지만 G코드 파일이 상당히 커" +"지고 프린터가 처리해야 할 연산이 더 많아집니다.\n" +"\n" +"기본값인 3은 대부분의 경우에 적합합니다. 프린터가 끊기는 경우 이 값을 늘려 조" +"정 횟수를 줄이십시오.\n" +"\n" +"허용되는 값: 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "출력물 냉각 팬의 최소 속도" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"보조 출력물 냉각팬의 속도. 냉각 레이어가 없는 것으로 정의된 처음 여러 레이어" +"를 제외하고 출력 중에 보조 팬이 이 속도로 작동합니다.\n" +"이 기능을 사용하려면 프린터 설정에서 보조 팬을 활성화하세요. G코드 명령: " +"M106 P2 S(0-255)" + +msgid "Min" +msgstr "최소" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"압출기의 출력 가능한 최저 레이어 높이입니다. 사용된 값은 적응형 레이어 높이" +"를 활성화할 때 최소 레이어 높이를 제한합니다" + +msgid "Min print speed" +msgstr "최소 출력 속도" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"더 나은 레이어 냉각을 위해 속도를 낮추는 경우 위의 최소 레이어 시간을 유지하" +"기 위해 프린터가 느려지는 최소 출력 속도입니다." + +msgid "Diameter of nozzle" +msgstr "노즐 직경" + +msgid "Configuration notes" +msgstr "구성 메모" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"여기에 개인 메모를 넣을 수 있습니다. 이 텍스트는 G코드 헤더 설명에 추가됩니" +"다." + +msgid "Host Type" +msgstr "호스트 유형" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca은 G코드 파일을 프린터 호스트에 업로드할 수 있습니다. 이 필드는 호" +"스트의 종류를 포함해야 합니다." + +msgid "Nozzle volume" +msgstr "노즐 부피" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "커터와 노즐 끝단 사이의 노즐 부피" + +msgid "Cooling tube position" +msgstr "냉각 튜브 위치" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "압출기 끝에서 냉각 튜브 중심점까지의 거리입니다." + +msgid "Cooling tube length" +msgstr "냉각 튜브 길이" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "제한된 냉각 공간에서 필라멘트를 이동하기 위한 냉각 튜브의 길이입니다." + +msgid "High extruder current on filament swap" +msgstr "필라멘트 교체 시 높은 압출기 전류" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"필라멘트 교체 순서 중에 압출기 모터 전류를 증가시켜 빠른 래밍 공급 속도를 허" +"용하고 보기 흉한 모양의 팁이 있는 필라멘트를 로드할 때 저항을 극복하는 데 이" +"점이 있습니다." + +msgid "Filament parking position" +msgstr "필라멘트 주차 위치" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"빼기 시 필라멘트가 고정되는 위치에서 압출기 끝까지의 거리입니다. 이는 프린터 " +"펌웨어의 값과 일치해야 합니다." + +msgid "Extra loading distance" +msgstr "추가 압출 거리" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"0으로 설정하면 압출 중에 필라멘트가 주차 위치에서 이동한 거리는 빼기 중에 다" +"시 이동한 거리와 정확히 동일합니다. 양수이면 더 많이 압출되고, 음수이면 압출 " +"이동이 빼기 이동보다 짧습니다." + +msgid "Start end points" +msgstr "시작점과 끝점" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "절단 영역에서 버릴 영역까지의 시작점과 끝점." + +msgid "Reduce infill retraction" +msgstr "채우기 후퇴 감소" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"이동 구간이 채우기 영역에 있을 때 수축하지 마십시오. 즉, 스며드는 것을 볼 수 " +"없습니다. 이는 복잡한 모델의 후퇴 시간을 줄이고 출력 시간을 절약할 수 있지만 " +"슬라이싱 및 G코드 생성 속도를 느리게 만듭니다" + +msgid "" +"This option will drop the temperature of the inactive extruders to prevent " +"oozing." +msgstr "이 옵션은 비활성 압출기의 온도를 낮추어 스며드는 것을 방지합니다." + +msgid "Filename format" +msgstr "파일 이름 형식" + +msgid "User can self-define the project file name when export" +msgstr "사용자가 내보낼 파일 이름을 자체 정의할 수 있습니다" + +msgid "Make overhangs printable" +msgstr "돌출부 형상 변경" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "지지대 없이 돌출부를 출력하도록 형상을 수정합니다." + +msgid "Make overhangs printable - Maximum angle" +msgstr "돌출부 형상 변경 최대 각도" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"더 가파른 돌출부를 출력할 수 있게 허용되는 돌출부의 최대 각도. 90°는 형상을 " +"전혀 변경하지 않고 돌출부를 허용하는 반면, 0은 모든 돌출부를 원뿔형 재료로 대" +"체합니다." + +msgid "Make overhangs printable - Hole area" +msgstr "돌출부 형상 변경 구멍 영역" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"원뿔형 재료로 채워지기 전에 모델 베이스에 있는 구멍의 최대 면적입니다. 값이 0" +"이면 모델 베이스의 모든 구멍이 채워집니다." + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "돌출부 벽 감지" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"선 너비에 비례하여 돌출부 백분율을 감지하고 다른 속도를 사용하여 출력합니다. " +"100%% 돌출부의 경우 브릿지 속도가 사용됩니다." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "내벽의 선 너비. %로 입력 시 노즐 직경에 대한 비율로 계산됩니다." + +msgid "Speed of inner wall" +msgstr "내벽 속도" + +msgid "Number of walls of every layer" +msgstr "모든 레이어의 벽 수" + +msgid "Alternate extra wall" +msgstr "대체 추가 벽" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"이 설정은 다른 모든 레이어에 추가 벽을 추가합니다. 이렇게 하면 충전재가 벽 사" +"이에 수직으로 끼워져 더 강한 출력물을 얻을 수 있습니다.\n" +"\n" +"이 옵션이 활성화되면 수직 쉘 두께 확인 옵션을 비활성화해야 합니다.\n" +"\n" +"추가 경계를 고정할 채우기가 제한되어 있으므로 이 옵션과 함께 번개 채우기를 사" +"용하는 것은 권장되지 않습니다." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"사용자 정의 스크립트를 통해 출력 G코드를 처리하려면 여기에 절대 경로를 나열하" +"세요. 여러 스크립트는 세미콜론(;)으로 구분합니다. 스크립트는 G코드 파일의 절" +"대 경로를 첫 번째 값으로 전달하며 환경 변수를 읽어 Snapmaker Orca 구성 설정에 접" +"근할 수 있습니다." + +msgid "Printer notes" +msgstr "프린터 메모" + +msgid "You can put your notes regarding the printer here." +msgstr "여기에 프린터에 관한 메모를 넣을 수 있습니다." + +msgid "Raft contact Z distance" +msgstr "라프트 접점 Z 거리" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "개체와 라프트 사이의 Z 거리. 가용성 재료의 접점은 무시됨" + +msgid "Raft expansion" +msgstr "라프트 확장" + +msgid "Expand all raft layers in XY plane" +msgstr "XY 평면에서 모든 라프트 레이어 확장" + +msgid "Initial layer density" +msgstr "초기 레이어 밀도" + +msgid "Density of the first raft or support layer" +msgstr "첫 번째 라프트 또는 지지대의 밀도" + +msgid "Initial layer expansion" +msgstr "초기 레이어 확장" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "베드 플레이트 안착을 향상시키기 위해 첫 번째 라프트 또는 지지대 확장" + +msgid "Raft layers" +msgstr "라프트 레이어" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"개체를 이 레이어 수 많큼 들어올립니다. 이 기능을 사용하여 ABS 출력 시 뒤틀림" +"(워핑)을 방지합니다" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"G코드 경로는 G코드 파일에서 너무 많은 점과 G코드 라인을 방지하기 위해 모델의 " +"윤곽을 단순화한 후 생성됩니다. 작은 값은 높은 해상도와 많은 슬라이스 시간을 " +"의미합니다" + +msgid "Travel distance threshold" +msgstr "이동 거리 임계값" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "이동 거리가 이 임계값보다 긴 경우에만 후퇴를 실행합니다" + +msgid "Retract amount before wipe" +msgstr "닦기 전 후퇴량" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"후퇴 길이에 비례한 닦기 전 후퇴량(닦기를 시작하기 전에 일부 필라멘트를 후퇴시" +"키면 노즐 끝에 녹아있는 소량의 필라멘트만 남게되어 추가 누수 위험이 줄어들 " +"수 있습니다)" + +msgid "Retract when change layer" +msgstr "레이어 변경 시 후퇴" + +msgid "Force a retraction when changes layer" +msgstr "레이어 변경 시 강제로 후퇴를 실행합니다" + +msgid "Retraction Length" +msgstr "후퇴 길이" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"긴 이동 중에 필라멘트가 흘러나오는 것을 방지하기 위해 압출기의 일정량의 재료" +"를 뒤로 당깁니다. 후퇴를 비활성화하려면 0을 설정하세요" + +msgid "Long retraction when cut(experimental)" +msgstr "절단 시 긴 후퇴(실험적)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"실험적 기능. 퍼지를 최소화하기 위해 변경하는 동안 더 먼 거리에서 필라멘트를 " +"집어넣고 절단합니다. 이렇게 하면 플러시가 크게 줄어들지만 노즐 막힘이나 기타 " +"출력 문제가 발생할 위험이 높아질 수도 있습니다." + +msgid "Retraction distance when cut" +msgstr "절단 시 후퇴 거리" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "실험적 특징.필라멘트 교환시 절단 전 후퇴길이" + +msgid "Z hop when retract" +msgstr "후퇴 시 Z 올리기" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"후퇴가 완료될 때마다 노즐이 약간 올라가서 노즐과 출력물 사이에 간격이 생깁니" +"다. 이동 시 노즐이 출력물에 닿는 것을 방지합니다. 나선형 선을 사용하여 z를 들" +"어 올리면 스트링 현상을 방지할 수 있습니다" + +msgid "Z hop lower boundary" +msgstr "Z 올리기 하한 경계" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Z 올리기는 Z가 이 값보다 크고 \"Z 올리기 상한 경계\" 매개변수 아래인 경우에" +"만 적용됩니다." + +msgid "Z hop upper boundary" +msgstr "Z 올리기 상한 경계" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"이 값이 양수인 경우 Z 올리기는 Z가 매개변수 \"Z 올리기 하한 경계\"보다 높고 " +"이 값보다 낮을 때만 적용됩니다" + +msgid "Z hop type" +msgstr "Z 올리기 유형" + +msgid "Slope" +msgstr "경사" + +msgid "Spiral" +msgstr "나선형" + +msgid "Traveling angle" +msgstr "이동 각도" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" +"경사나 나선형 Z 올리기 유형에 사용할 이동 각도입니다. 90°로 설정할 경우 일반" +"적인 Z 올리기가 적용됩니다" + +msgid "Only lift Z above" +msgstr "Z값 위에서만 올리기" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"이 값을 양의 값으로 설정하면 Z 올리기는 지정된 Z의 절대값 위에서만 발생합니" +"다." + +msgid "Only lift Z below" +msgstr "Z값 아래에서만 올리기" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"이 값을 양의 값으로 설정하면 Z 올리기는 지정된 Z의 절대값 아래에서만 발생합니" +"다." + +msgid "On surfaces" +msgstr "표면에서" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Z 올리기 동작을 수행합니다. 이 설정은 위의 설정의 영향을 받습니다 (위에서/아" +"래에서만 Z 올리기)." + +msgid "All Surfaces" +msgstr "모든 표면" + +msgid "Top Only" +msgstr "상단 표면" + +msgid "Bottom Only" +msgstr "하단 표면만" + +msgid "Top and Bottom" +msgstr "상단 및 하단 표면" + +msgid "Extra length on restart" +msgstr "재 시작 시 추가 길이" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"이동 후 후퇴가 보상되면 압출기는 이 추가 양의 필라멘트를 밀어냅니다. 이 설정" +"은 거의 필요하지 않습니다." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"툴 체인지 후 후퇴가 보상되면 압출기는 이 추가 양의 필라멘트를 밀어냅니다." + +msgid "Retraction Speed" +msgstr "후퇴 속도" + +msgid "Speed of retractions" +msgstr "후퇴 속도" + +msgid "Deretraction Speed" +msgstr "후퇴 복귀 속도" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"필라멘트를 압출기에 다시 로드하는 속도입니다. 0은 후퇴와 동일한 속도를 의미합" +"니다" + +msgid "Use firmware retraction" +msgstr "펌웨어 후퇴 사용" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"이 실험적 설정은 G10 및 G11 명령을 사용하여 펌웨어가 후퇴를 처리하도록 합니" +"다. 이것은 최근의 Marlin에서만 지원됩니다." + +msgid "Show auto-calibration marks" +msgstr "자동 교정 기호 표시" + +msgid "Disable set remaining print time" +msgstr "설정된 남은 출력 시간 비활성화" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "M73 생성 비활성화: 최종 G코드에 남은 출력 시간 설정" + +msgid "Seam position" +msgstr "솔기 위치" + +msgid "The start position to print each part of outer wall" +msgstr "외벽 각 부분의 출력 시작 위치" + +msgid "Nearest" +msgstr "근접" + +msgid "Aligned" +msgstr "정렬" + +msgid "Back" +msgstr "뒷면" + +msgid "Random" +msgstr "무작위" + +msgid "Staggered inner seams" +msgstr "엇갈린 내부 솔기" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"이 옵션을 사용하면 내부 솔기가 깊이에 따라 뒤로 이동하여 지그재그 패턴을 형성" +"합니다." + +msgid "Seam gap" +msgstr "솔기 간격" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"폐쇄 루프 압출에서 솔기의 가시성을 줄이기 위해 루프가 중단되고 지정된 양만큼 " +"짧아집니다.\n" +"이 양은 밀리미터로 지정하거나 현재 압출기 직경의 백분율로 지정할 수 있습니" +"다. 이 매개 변수의 기본값은 10%입니다." + +msgid "Scarf joint seam (beta)" +msgstr "스카프 조인트 솔기(베타)" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"솔기 가시성을 최소화하고 솔기 강도를 높이려면 스카프 조인트를 사용하십시오." + +msgid "Conditional scarf joint" +msgstr "조건부 스카프 조인트" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"전통적인 솔기가 날카로운 모서리의 솔기를 효과적으로 숨기지 않는 매끄러운 둘레" +"에만 스카프 조인트를 적용하십시오." + +msgid "Conditional angle threshold" +msgstr "조건부 각도 임계값" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"이 옵션은 조건부 스카프 접합 솔기를 적용하기 위한 임계값 각도를 설정합니다.\n" +"주변 루프 내의 최대 각도가 이 값을 초과하는 경우(뾰족한 모서리가 없음을 나타" +"냄) 스카프 조인트 솔기가 사용됩니다. 기본값은 155°입니다." + +msgid "Conditional overhang threshold" +msgstr "조건부 오버행 임계값" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"이 옵션은 스카프 조인트 이음새 적용을 위한 돌출 임계값을 결정합니다. 둘레의 " +"지지되지 않은 부분이 이 임계값보다 작으면 스카프 조인트 심이 적용됩니다. 기" +"본 임계값은 외벽 너비의 40% of로 설정됩니다. 성능 고려 사항으로 인해 돌출 정" +"도가 추정됩니다." + +msgid "Scarf joint speed" +msgstr "스카프 조인트 속도" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"이 옵션은 스카프 조인트의 출력 속도를 설정합니다. 스카프 조인트를 느린 속도" +"(100mm/s 미만)로 출력하는 것이 좋습니다. 또한 설정 속도가 외벽 또는 내벽의 속" +"도와 크게 다른 경우 '압출 속도 평탄화'를 활성화하는 것이 좋습니다. 여기에 지" +"정된 속도가 외부 또는 내부 벽의 속도보다 높을 경우 프린터는 기본적으로 두 가" +"지 속도 중 더 느린 속도로 설정됩니다. 백분율(예: 80%)로 지정되면 속도는 각각" +"의 외부 또는 내부 벽 속도를 기준으로 계산됩니다. 기본값은 100%로 설정되어 있" +"습니다." + +msgid "Scarf joint flow ratio" +msgstr "스카프 조인트 유량 비율" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "이 요소는 스카프 조인트의 재료 양에 영향을 미칩니다." + +msgid "Scarf start height" +msgstr "스카프 시작 높이" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"스카프의 시작 높이.\n" +"이 양은 밀리미터 또는 현재 레이어 높이의 백분율로 지정할 수 있습니다. 이 매개" +"변수의 기본값은 0입니다." + +msgid "Scarf around entire wall" +msgstr "전체 벽 주위에 스카프" + +msgid "The scarf extends to the entire length of the wall." +msgstr "스카프는 벽 전체 길이까지 확장됩니다." + +msgid "Scarf length" +msgstr "스카프 길이" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"스카프의 길이. 이 매개변수를 0으로 설정하면 스카프가 효과적으로 비활성화됩니" +"다." + +msgid "Scarf steps" +msgstr "스카프 단계" + +msgid "Minimum number of segments of each scarf." +msgstr "각 스카프의 최소 세그먼트 수입니다." + +msgid "Scarf joint for inner walls" +msgstr "내벽용 스카프 조인트" + +msgid "Use scarf joint for inner walls as well." +msgstr "내벽에도 스카프 조인트를 사용하십시오." + +msgid "Role base wipe speed" +msgstr "역할 기반 닦기 속도" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"닦기 속도는 현재 압출기의 속도에 따라 결정됩니다. ex)외벽 압출 직후에 닦기 동" +"작을 실행하면 외벽 압출 속도가 닦기에 사용됩니다." + +msgid "Wipe on loops" +msgstr "루프에서 닦기" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"폐쇄 루프 압출에서 솔기의 가시성을 최소화하기 위해 압출기가 루프를 떠나기 전" +"에 안쪽으로의 작은 이동이 실행됩니다." + +msgid "Wipe before external loop" +msgstr "외부 루프 전 닦아내기" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"외부/내부 또는 내부/외부/내부 벽 출력 순서로 출력할 때 외부 둘레 시작 부분에" +"서 잠재적인 과잉 압출의 가시성을 최소화하기 위해 외부 둘레 시작 부분에서 내부" +"에 후퇴가 약간 수행됩니다. 이렇게 하면 압출에 대한 모든 잠재력이 외부 표면에" +"서 숨겨집니다.\n" +"\n" +"외부/내부 또는 내부/외부/내부 벽 출력 순서로 출력할 때 유용합니다. 이러한 모" +"드에서는 후퇴 이동 직후 외부 둘레가 출력될 가능성이 더 높기 때문입니다." + +msgid "Wipe speed" +msgstr "닦기 속도" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"닦기 속도는 이 구성에 지정된 속도 설정에 따라 결정됩니다. 값이 백분율(예: " +"80%)로 표시되면 이동 속도 설정을 기준으로 계산됩니다. 이 매개 변수의 기본값" +"은 80%입니다" + +msgid "Skirt distance" +msgstr "스커트 거리" + +msgid "Distance from skirt to brim or object" +msgstr "스커트와 브림 또는 개체와의 거리" + +msgid "Skirt height" +msgstr "스커트 높이" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "" +"얼마나 많은 스커트 레이어를 생성할지 결정합니다. 일반적으로 한개의 레이어를 " +"사용합니다" + +msgid "Draft shield" +msgstr "드래프트 쉴드" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"드래프트 쉴드는 바람으로 인해 ABS 또는 ASA 인쇄물이 뒤틀리거나 인쇄 베드에서 " +"분리되는 것을 방지하는 데 유용합니다. 일반적으로 오픈 프레임 프린터, 즉 인클" +"로저가 없는 경우에만 필요합니다. \n" +"\n" +"옵션:\n" +"활성화됨 = 스커트가 가장 높은 인쇄물의 높이와 같습니다.\n" +"제한됨 = 스커트가 스커트 높이에 지정된 높이만큼 높습니다.\n" +"\n" +"참고: 드래프트 쉴드가 활성화되면 스커트는 개체로부터 스커트 거리에 인쇄됩니" +"다. 따라서 챙이 활성화된 경우 챙과 교차할 수 있습니다. 이를 방지하려면 스커" +"트 거리 값을 늘리십시오.\n" + +msgid "Limited" +msgstr "제한됨" + +msgid "Enabled" +msgstr "활성화" + +msgid "Skirt loops" +msgstr "스커트 루프" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "스커트의 루프 수입니다. 0은 스커트 비활성화를 의미합니다" + +msgid "Skirt speed" +msgstr "스커트 속도" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "스커트의 속도(mm/s), 0은 기본 레이어 압출 속도를 사용함을 의미합니다." + +msgid "Skirt minimum extrusion length" +msgstr "스커트 최소 돌출 길이" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"스커트를 인쇄할 때 최소 필라멘트 압출 길이(mm)입니다. 0은 이 기능이 비활성화" +"되었음을 의미합니다.\n" +"\n" +"프린터가 프라임 라인 없이 인쇄하도록 설정된 경우 0이 아닌 값을 사용하는 것이 " +"유용합니다." + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"G코드의 출력 속도는 예상 레이어 시간이 이 값보다 짧은 경우 레이어의 냉각을 개" +"선하기 위해 느려집니다" + +msgid "Minimum sparse infill threshold" +msgstr "최소 드문 채우기 임계값" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "임계값보다 작은 드문 채우기 영역은 꽉찬 내부 채우기로 대체됩니다" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"꽉찬 내부 채우기 선 너비. %로 입력 시 노즐 직경에 대한 비율로 계산됩니다." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "상단 및 하단 표면을 제외한 꽉찬 내부 채우기 속도" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"나선형은 외부 윤곽선의 z 이동을 부드럽게 합니다. 그리고 개체를 꽉찬 하단 레이" +"어가 있는 단일 벽으로 출력합니다. 최종 생성된 출력물에는 솔기가 없습니다" + +msgid "Smooth Spiral" +msgstr "부드러운 나선형" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"부드러운 나선형은 X와 Y의 움직임을 매끄럽게 처리하여 수직이 아닌 벽의 XY 방향" +"에서도 이음새가 전혀 보이지 않습니다" + +msgid "Max XY Smoothing" +msgstr "최대 XY 스무딩" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"부드러운 나선형을 얻기 위해 점을 XY로 이동하는 최대 거리 %로 표시할 경우 노" +"즐 직경에 대해 계산됩니다" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"유연 또는 기존 모드를 선택한 경우 각 출력에 대해 타임랩스 비디오가 생성됩니" +"다. 각 레이어가 출력된 후 챔버 카메라로 스냅샷을 찍습니다. 이 모든 스냅샷은 " +"출력이 완료되면 타임랩스 비디오로 구성됩니다. 유연 모드를 선택하면 각 레이어" +"가 출력된 후 툴 헤드가 여유 공간으로 이동한 다음 스냅샷을 찍습니다. 스냅샷을 " +"찍는 과정에서 노즐에서 녹은 필라멘트가 새어 나올 수 있기 때문에 유연 모드에" +"서 노즐을 닦으려면 프라임 타워가 필요합니다." + +msgid "Traditional" +msgstr "기존" + +msgid "Temperature variation" +msgstr "온도 가변" + +#. TRN PrintSettings : "Ooze prevention" > "Temperature variation" +msgid "" +"Temperature difference to be applied when an extruder is not active. The " +"value is not used when 'idle_temperature' in filament settings is set to non " +"zero value." +msgstr "" +"압출기가 작동하지 않을 때 적용되는 온도차입니다. 필라멘트 설정의 " +"'idle_temp'가 0이 아닌 값으로 설정된 경우 해당 값은 사용되지 않습니다." + +msgid "Preheat time" +msgstr "예열시간" + +msgid "" +"To reduce the waiting time after tool change, Orca can preheat the next tool " +"while the current tool is still in use. This setting specifies the time in " +"seconds to preheat the next tool. Orca will insert a M104 command to preheat " +"the tool in advance." +msgstr "" +"툴 체인지 후 대기 시간을 줄이기 위해 Orca는 현재 도구가 계속 사용되는 동안 다" +"음 도구를 예열할 수 있습니다. 이 설정은 다음 도구를 예열하는 시간을 초 단위" +"로 지정합니다. Orca는 도구를 미리 예열하기 위해 M104 명령을 삽입합니다." + +msgid "Preheat steps" +msgstr "예열 단계" + +msgid "" +"Insert multiple preheat commands(e.g. M104.1). Only useful for Prusa XL. For " +"other printers, please set it to 1." +msgstr "" +"여러 예열 명령(예: M104.1)을 삽입하세요. Prusa XL에만 유용합니다. 다른 프린터" +"의 경우 1로 설정하세요." + +msgid "Start G-code" +msgstr "시작 G코드" + +msgid "Start G-code when start the whole printing" +msgstr "전체 출력을 시작할 때의 시작 G코드" + +msgid "Start G-code when start the printing of this filament" +msgstr "이 필라멘트의 출력을 시작할 때의 시작 G코드" + +msgid "Single Extruder Multi Material" +msgstr "단일 압출기 다중 재료" + +msgid "Use single nozzle to print multi filament" +msgstr "단일 노즐을 사용하여 다중 필라멘트 출력" + +msgid "Manual Filament Change" +msgstr "수동 필라멘트 교체" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"출력 시작 시에만 사용자 정의 필라멘트 변경 G코드를 생략하려면 이 옵션을 활성" +"화합니다. 툴 변경 명령(예: T0)은 전체 출력 과정에서 건너뜁니다. 이는 M600/" +"PAUSE를 사용하여 수동 필라멘트 교체 작업을 실행하는 수동 다중 재료 출력에 유" +"용합니다." + +msgid "Purge in prime tower" +msgstr "프라임 타워에서 청소" + +msgid "Purge remaining filament into prime tower" +msgstr "남은 필라멘트를 프라임 타워에서 제거" + +msgid "Enable filament ramming" +msgstr "필라멘트 래밍 활성화" + +msgid "No sparse layers (beta)" +msgstr "희소 레이어 없음(베타)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"활성화되면 툴 체인지 없이 레이어에 닦기 타워가 출력되지 않습니다. 툴 체인지" +"가 있는 레이어에서는 압출기가 아래쪽으로 이동하여 닦기 타워를 출력합니다. 출" +"력물과의 충돌이 없는지 확인하는 것은 사용자의 책임입니다." + +msgid "Prime all printing extruders" +msgstr "모든 활성화된 압출기 프라이밍" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"활성화되면 모든 활성화된 압출기는 출력 시작 시 출력 베드의 앞쪽 가장자리에서 " +"프라이밍합니다." + +msgid "Slice gap closing radius" +msgstr "슬라이스 간격 폐쇄 반경" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"간격 폐쇄 반경의 2배보다 작은 균열은 삼각형 메쉬 슬라이싱 중에 채워집니다. 간" +"격 채우기 작업은 최종 출력 해상도를 감소시킬 수 있으므로 값을 합리적으로 낮" +"게 유지하는 것이 좋습니다." + +msgid "Slicing Mode" +msgstr "슬라이싱 모드" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"3DLabPrint 비행기 모델에는 \"짝수-홀수\"를 사용하세요. \"구멍 닫기\"를 사용하" +"여 모델의 모든 구멍을 닫습니다." + +msgid "Regular" +msgstr "일반" + +msgid "Even-odd" +msgstr "짝수-홀수" + +msgid "Close holes" +msgstr "구멍 닫기" + +msgid "Z offset" +msgstr "Z 옵셋" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"이 값은 출력 G코드의 모든 Z 좌표에 더해지거나 뺍니다. 이는 잘못된 Z 엔드스톱 " +"위치를 보정하는 데 사용됩니다. 예를 들어 엔드스톱 제로가 실제로 출력 베드에" +"서 노즐을 0.3mm 멀리 벗어나는 경우 이 값을 -0.3으로 설정합니다 (또는 엔드스톱" +"을 직접 수정하세요)." + +msgid "Enable support" +msgstr "지지대 사용" + +msgid "Enable support generation." +msgstr "지지대 생성을 활성화 합니다." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"일반(자동) 및 나무(자동)은 지지대를 자동으로 생성합니다. 일반(수동) 또는 나무" +"(수동) 선택시에는 강제된 지지대만 생성됩니다" + +msgid "normal(auto)" +msgstr "일반(자동)" + +msgid "tree(auto)" +msgstr "나무(자동)" + +msgid "normal(manual)" +msgstr "일반(수동)" + +msgid "tree(manual)" +msgstr "나무(수동)" + +msgid "Support/object xy distance" +msgstr "지지대/개체 XY 거리" + +msgid "XY separation between an object and its support" +msgstr "개체와 지지대를 분리하는 XY 간격" + +msgid "Pattern angle" +msgstr "패턴 각도" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "이 설정을 사용하여 수평면에서 지지대 패턴을 회전합니다." + +msgid "On build plate only" +msgstr "빌드 플레이트에만 생성" + +msgid "Don't create support on model surface, only on build plate" +msgstr "모델 표면에 지지대를 생성하지 않고 빌드 플레이트에만 생성합니다" + +msgid "Support critical regions only" +msgstr "위험한 지역에만 생성" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"날카로운 꼬리, 외팔보(항공기 날개처럼 튀어나온 구조 by MMT) 등과 같이 위험한 " +"부위에 대해서만 지지대를 생성합니다." + +msgid "Remove small overhangs" +msgstr "작은 돌출부 지지대 제거" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "지지대가 필요하지 않은 작은 돌출부에서 지지대를 제거합니다." + +msgid "Top Z distance" +msgstr "상단 Z 거리" + +msgid "The z gap between the top support interface and object" +msgstr "지지대 상단과 개체 접점의 간격" + +msgid "Bottom Z distance" +msgstr "하단 Z 거리" + +msgid "The z gap between the bottom support interface and object" +msgstr "지지대 하단과 개체 접점의 간격" + +msgid "Support/raft base" +msgstr "지지대/라프트 기본" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"기본 지지대 및 라프트를 출력하기 위한 필라멘트. \"기본값\"은 지원을 위한 특" +"정 필라멘트가 없으며 현재 필라멘트가 사용됨을 의미합니다" + +msgid "Avoid interface filament for base" +msgstr "베이스용 인터페이스 필라멘트 줄이기" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"지지대 베이스를 프린트하기 위해 지지대 인터페이스 필라멘트를 사용하지 마세요." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "지지대의 선 너비. %로 입력 시 노즐 직경에 대한 비율로 계산됩니다." + +msgid "Interface use loop pattern" +msgstr "접점에서 루프 패턴 사용" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"지지대 상단 접촉 레이어를 루프로 덮습니다. 기본적으로 비활성화되어 있습니다." + +msgid "Support/raft interface" +msgstr "지지대/라프트 접점" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"지지대 및 라프트 접점을 출력하기 위한 필라멘트. \"기본값\"은 지원을 위한 특" +"정 필라멘트가 없으며 현재 필라멘트가 사용됨을 의미합니다" + +msgid "Top interface layers" +msgstr "상단 접점 레이어" + +msgid "Number of top interface layers" +msgstr "상단 접점 레이어 수" + +msgid "Bottom interface layers" +msgstr "하단 접점 레이어" + +msgid "Number of bottom interface layers" +msgstr "하단 인터페이스 레이어 수" + +msgid "Same as top" +msgstr "위와 동일" + +msgid "Top interface spacing" +msgstr "상단 접점 선 간격" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "상단 접점 선의 간격. 0은 꽉찬 접점을 의미합니다" + +msgid "Bottom interface spacing" +msgstr "하단 접점 선 간격" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "하단 접점 선의 간격. 0은 꽉찬 접점을 의미합니다" + +msgid "Speed of support interface" +msgstr "지지대 접점 속도" + +msgid "Base pattern" +msgstr "기본 패턴" + +msgid "Line pattern of support" +msgstr "지지대 기본 패턴" + +msgid "Rectilinear grid" +msgstr "직선 격자" + +msgid "Hollow" +msgstr "공동" + +msgid "Interface pattern" +msgstr "접점 패턴" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"지지대 접점의 선 패턴. 비가용성 지지대 접점의 기본 패턴은 직선인 반면 가용성 " +"지지대 접점의 기본 패턴은 동심입니다" + +msgid "Rectilinear Interlaced" +msgstr "엇갈린 직선" + +msgid "Base pattern spacing" +msgstr "기본 패턴 간격" + +msgid "Spacing between support lines" +msgstr "지지대 선 사이의 간격" + +msgid "Normal Support expansion" +msgstr "일반 지지대 확장" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "일반 지지대의 수평 범위를 확대(+) 또는 축소(-)합니다" + +msgid "Speed of support" +msgstr "지지대 속도" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"지지대의 스타일과 모양. 일반 지지대의 경우, 격자는 보다 안정적인 지지대(기본" +"값)가 생성되는 반면, 맞춤 지지대는 재료를 절약하고 지지대 자국을 줄입니다.\n" +"나무 지지대의 경우, 얇은 및 유기체 모양은 가지를 보다 적극적으로 병합하고 많" +"은 재료를 절약합니다(기본값 유기체). 반면 혼합 모양은 크고 평평한 돌출부 아래" +"에 일반 지지대와 유사한 구조를 만듭니다." + +msgid "Snug" +msgstr "맞춤" + +msgid "Tree Slim" +msgstr "얇은 나무" + +msgid "Tree Strong" +msgstr "강한 나무" + +msgid "Tree Hybrid" +msgstr "혼합 나무" + +msgid "Organic" +msgstr "유기체" + +msgid "Independent support layer height" +msgstr "독립적 지지대 레이어 높이" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"지지대 레이어는 개체 레이어와 독립적인 레이어 높이를 사용합니다. 이것은 Z 거" +"리 사용자 정의를 지원하고 출력 시간을 절약하기 위한 것입니다. 프라임 타워가 " +"활성화되면 이 옵션은 유효하지 않습니다." + +msgid "Threshold angle" +msgstr "임계값 각도" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "경사각이 임계값 미만인 돌출부에 지지대가 생성됩니다." + +msgid "Tree support branch angle" +msgstr "나무 지지대 가지 각도" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"이 설정은 나무 지지대의 가지가 만들 수 있는 돌출부의 최대 각도를 결정합니다. " +"각도가 증가하면 가지가 멀리까지 닿을 수 있도록 더 수평으로 출력될 수 있습니" +"다." + +msgid "Preferred Branch Angle" +msgstr "선호 가지 각도" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"모델을 피할 필요가 없을 때 가지의 선호 각도입니다. 더 수직적이고 안정적으로 " +"만들려면 더 낮은 각도를 사용하세요. 가지를 더 빠르게 병합하려면 더 높은 각도" +"를 사용하세요." + +msgid "Tree support branch distance" +msgstr "나무 지지대 가지 거리" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "이 설정은 인접한 나무 지지대 지점 간의 거리를 결정합니다." + +msgid "Branch Density" +msgstr "가지 밀도" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"가지 끝을 생성하는 데 사용되는 지지대의 밀도를 조정합니다. 값이 높을수록 돌출" +"부가 더 좋아지지만 지지대를 제거하기가 더 어렵습니다. 따라서 조밀한 인터페이" +"스가 필요한 경우 높은 가지 밀도 값 대신 상단 지지 인터페이스를 활성화하는 것" +"이 좋습니다." + +msgid "Adaptive layer height" +msgstr "적응형 레이어 높이" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"이 옵션을 활성화하면 첫 번째 레이어를 제외한 나무 지지대의 레이어 높이가 자동" +"으로 계산됩니다 " + +msgid "Auto brim width" +msgstr "나무 지지대 자동 브림 너비" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "옵션을 활성화하면 나무 지지대의 브림 너비가 자동으로 계산됩니다" + +msgid "Tree support brim width" +msgstr "나무 지지대 브림 너비" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "나무 지지대 가지에서 가장 바깥쪽 브림까지의 거리" + +msgid "Tip Diameter" +msgstr "끝 직경" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "유기 지지체의 가지 끝 직경." + +msgid "Tree support branch diameter" +msgstr "나무 지지대 가지 직경" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "이 설정은 지지 노드의 초기 직경을 결정합니다." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "가지 직경 각도" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"아래로 갈수록 가지의 직경이 점차 굵어지는 각도. 각도가 0이면 가지가 균일한 두" +"께를 가지는 가지가 됩니다. 약간의 각도는 유기체 지지대의 안정성을 증가시킬 " +"수 있습니다." + +msgid "Branch Diameter with double walls" +msgstr "이중 벽이 있는 가지 직경" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"이 직경의 원 면적보다 더 큰 면적을 가진 가지는 안정성을 위해 이중벽으로 출력" +"됩니다. 이중벽을 허용하지 않으려면 이 값을 0으로 설정합니다." + +msgid "Support wall loops" +msgstr "지지대 벽 루프" + +msgid "This setting specify the count of walls around support" +msgstr "이 설정은 지지대 주변의 벽 수를 지정합니다" + +msgid "Tree support with infill" +msgstr "채우기가 있는 나무 지지대" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"이 설정은 나무 지지대의 큰 공동 내부에 채우기를 추가할지 여부를 지정합니다" + +msgid "Activate temperature control" +msgstr "온도 제어 활성화" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"챔버 온도 제어를 위해 이 옵션을 활성화합니다. M191 명령이 " +"\"machine_start_gcode\" 앞에 추가됩니다.\n" +"G코드 명령: M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "챔버 온도" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"챔버 온도가 높을수록 뒤틀림을 억제하거나 줄이는 데 도움이 될 수 있으며 잠재적" +"으로 ABS, ASA, PC, PA 등과 같은 고온 재료의 층간 결합 강도가 높아질 수 있습니" +"다. 동시에 ABS 및 ASA의 공기 여과는 더욱 악화됩니다. PLA, PETG, TPU, PVA 및 " +"기타 저온 재료의 경우 막힘을 방지하려면 실제 챔버 온도가 높지 않아야 하므로 " +"꺼짐을 의미하는 0을 적극 권장합니다" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "초기 레이어 이후의 노즐 온도" + +msgid "Detect thin wall" +msgstr "얇은 벽 감지" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"두개의 선 너비를 포함할 수 없는 얇은 벽을 감지합니다. 그리고 한 선으로 출력합" +"니다. 폐쇄 루프가 아니기 때문에 출력이 잘 되지 않을 수 있습니다" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"이 G코드는 툴 체인지을 유발하는 T 명령을 포함하여 필라멘트를 변경할 때 삽입됩" +"니다" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "이 G코드는 압출 역할이 변경될 때 삽입됩니다" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "상단 표면의 선 너비. %로 입력 시 노즐 직경에 대한 비율로 계산됩니다." + +msgid "Speed of top surface infill which is solid" +msgstr "꽉찬 상단 표면 채우기 속도" + +msgid "Top shell layers" +msgstr "상단 쉘 레이어" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"상단 표면을 포함한 상단 쉘의 꽉찬 레이어 수입니다. 이 값으로 계산한 두께가 상" +"단 쉘 두께보다 얇으면 상단 쉘 레이어가 증가합니다" + +msgid "Top solid layers" +msgstr "상부 꽉찬 레이어" + +msgid "Top shell thickness" +msgstr "상단 쉘 두께" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"상단 쉘 레이어로 계산된 두께가 이 값보다 얇은 경우 슬라이싱할 때 상단 꽉찬 레" +"이어의 수가 증가합니다. 이렇게 하면 레이어 높이가 작을 때 쉘이 너무 얇아지는 " +"것을 방지할 수 있습니다. 0은 이 설정이 비활성화되고 상단 쉘의 두께가 절대적으" +"로 상단 쉘 레이어에 의해 결정됨을 의미합니다" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "압출이 없을 때의 이동 속도" + +msgid "Wipe while retracting" +msgstr "후퇴 시 닦기" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"노즐에서 누출된 재료를 청소하기 위해 후퇴할 때 마지막 압출 경로를 따라 노즐" +"을 이동합니다. 이동 후 출력을 시작할 때 방울(blob)을 최소화할 수 있습니다" + +msgid "Wipe Distance" +msgstr "닦기 거리" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"후퇴할 때 노즐이 마지막 경로를 따라 얼마나 오래 움직일지 설명합니다.\n" +"\n" +"와이프 작업의 지속 시간, 압출기/필라멘트 후퇴 설정의 속도와 길이에 따라 남은 " +"필라멘트를 후퇴시키기 위해 후퇴 동작이 필요할 수 있습니다.\n" +"\n" +"아래의 와이프 전 후퇴량 설정에서 값을 설정하면 와이프 전에 초과 후퇴가 수행되" +"고, 그렇지 않으면 와이프 후에 수행됩니다." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"닦기 타워는 개체를 출력할 때 외관 결함을 방지하기 위해 노즐의 잔류물을 청소하" +"고 노즐 내부의 압력을 안정화하는 데 사용할 수 있습니다." + +msgid "Purging volumes" +msgstr "버리기 볼륨" + +msgid "Flush multiplier" +msgstr "버리기 승수" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"실제 버리기 볼륨은 버리기 승수에 테이블의 버리기 볼륨을 곱한 것과 같습니다." + +msgid "Prime volume" +msgstr "프라임 부피" + +msgid "The volume of material to prime extruder on tower." +msgstr "탑에서 압출을 실행할 재료의 부피." + +msgid "Width of prime tower" +msgstr "프라임 타워의 너비" + +msgid "Wipe tower rotation angle" +msgstr "닦기 타워 회전 각도" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "X축 기준의 닦기 타워 회전 각도." + +msgid "Stabilization cone apex angle" +msgstr "안정화 원뿔 정점 각도" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"닦기 타워를 안정화하는 데 사용되는 원뿔 꼭대기의 각도입니다. 각도가 클수록 베" +"이스가 넓어집니다." + +msgid "Maximum wipe tower print speed" +msgstr "최대 와이프 타워 인쇄 속도" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"와이프 타워에서 퍼징하고 와이프 타워 희박 레이어를 인쇄할 때 최대 인쇄 속도입" +"니다. 퍼징 시 희소 충전 속도 또는 필라멘트 최대 체적 속도에서 계산된 속도가 " +"더 낮은 경우 가장 낮은 속도가 대신 사용됩니다.\n" +"\n" +"희소 레이어를 인쇄할 때 내부 주변 속도 또는 필라멘트 최대 체적 속도에서 계산" +"된 속도가 더 낮은 경우 가장 낮은 속도가 대신 사용됩니다.\n" +"\n" +"이 속도를 높이면 타워의 안정성에 영향을 줄 수 있을 뿐만 아니라 노즐이 와이프 " +"타워에 형성될 수 있는 얼룩과 충돌하는 힘도 증가할 수 있습니다.\n" +"\n" +"이 매개변수를 기본값인 90mm/초 이상으로 늘리기 전에 프린터가 증가된 속도에서 " +"안정적으로 브릿지할 수 있고 도구 교환 시 흘러나오는 현상이 잘 제어되는지 확인" +"하십시오.\n" +"\n" +"와이프 타워 외부 경계의 경우 이 설정에 관계없이 내부 경계 속도가 사용됩니다." + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"닦기 타워의 둘레를 출력할 때 사용하는 압출기입니다. 사용 가능한 압출기를 사용" +"하려면 0으로 설정하세요(비가용성 재료가 적절함)." + +msgid "Purging volumes - load/unload volumes" +msgstr "제거 부피 - 넣기/빼기 부피" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"이 벡터는 닦기 타워에서 사용되는 각 툴을 교체하는 데 필요한 부피을 저장합니" +"다. 이러한 값은 아래의 전체 청소 부피 생성을 단순화하는 데 사용됩니다." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"필라멘트 교체 후 버리기는 개체의 채우기 내부에서 수행됩니다. 이렇게 하면 낭비" +"되는 양이 줄어들고 출력 시간이 단축될 수 있습니다. 벽이 투명 필라멘트로 출력" +"된 경우 혼합 색상 충전재가 외부에 보입니다. 프라임 타워가 활성화되지 않으면 " +"적용되지 않습니다." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"필라멘트 변경 후 버리기는 개체의 지지대 내부에서 수행됩니다. 이렇게 하면 낭비" +"되는 양이 줄어들고 출력 시간이 단축될 수 있습니다. 프라임 타워가 활성화되지 " +"않으면 적용되지 않습니다." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"이 개체는 필라멘트를 절약하고 출력 시간을 줄이기 위해 필라멘트 변경 후 노즐" +"에 남은 잔류물을 제거하는 데 사용됩니다. 결과적으로 개체의 색상이 혼합됩니" +"다. 기본 타워가 활성화되지 않으면 적용되지 않습니다." + +msgid "Maximal bridging distance" +msgstr "최대 브릿지 거리" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "드문 채우기 부분의 지지대 사이의 최대 거리." + +msgid "Wipe tower purge lines spacing" +msgstr "닦기 타워 청소 선 간격" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "닦기 타워의 청소 선 간격입니다." + +msgid "Extra flow for purging" +msgstr "퍼지를 위한 추가 흐름" + +msgid "" +"Extra flow used for the purging lines on the wipe tower. This makes the " +"purging lines thicker or narrower than they normally would be. The spacing " +"is adjusted automatically." +msgstr "" +"와이프 타워의 퍼지 라인에 추가 흐름이 사용됩니다. 이렇게 하면 퍼지 라인이 평" +"소보다 두껍거나 좁아집니다. 간격은 자동으로 조정됩니다." + +msgid "Idle temperature" +msgstr "공회전 온도" + +msgid "" +"Nozzle temperature when the tool is currently not used in multi-tool setups." +"This is only used when 'Ooze prevention' is active in Print Settings. Set to " +"0 to disable." +msgstr "" +"도구가 현재 다중 도구 설정에서 사용되지 않을 때의 노즐 온도. 이는 인쇄 설정에" +"서 '얼룩 방지'가 활성화된 경우에만 사용됩니다. 비활성화하려면 0으로 설정합니" +"다." + +msgid "X-Y hole compensation" +msgstr "X-Y 구멍 보정" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"개체의 구멍(Holes)은 구성된 값에 의해 XY 평면에서 커지거나 줄어듭니다. 양수 " +"값은 구멍을 더 크게 만듭니다. 음수 값은 구멍을 더 작게 만듭니다. 이 기능은 개" +"체의 조립 문제가 있을 때 크기를 약간 조정하는 데 사용됩니다" + +msgid "X-Y contour compensation" +msgstr "X-Y 윤곽 보상" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"개체의 윤곽은 구성된 값에 의해 XY 평면에서 커지거나 줄어듭니다. 양수 값은 윤" +"곽선을 더 크게 만듭니다. 음수 값은 윤곽선을 더 작게 만듭니다. 이 기능은 개체" +"의 조립 문제가 있을 때 크기를 약간 조정하는 데 사용됩니다" + +msgid "Convert holes to polyholes" +msgstr "구멍을 폴리홀로 변환" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"두 개 이상의 레이어에 걸쳐 있는 원통형 구멍을 검색하고 형상을 폴리홀로 변환합" +"니다(원을 분할하여 작은 삼각형을 만들 때, 꼭지점 수를 늘리고 모서리를 절단하" +"여 공차를 줄임_by MMT). 노즐 크기의 (가장 큰) 직경을 사용하여 폴리홀을 계산합" +"니다.\n" +"http://hydraraptor.blogspot.com/2011/02/polyholes.html을 참조하세요" + +msgid "Polyhole detection margin" +msgstr "폴리홀 감지 마진" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"원의 추정 반경에 대한 모서리의 최대 변위.\n" +"원통은 다양한 크기의 삼각형으로 내보내지는 경우가 많기 때문에 모서리가 원 둘" +"레에 위치하지 않을 수 있습니다. 이 설정을 사용하면 감지 범위를 넓힐 수 있습니" +"다.\n" +"mm 또는 반경의 % o단위입니다." + +msgid "Polyhole twist" +msgstr "폴리홀 회전" + +msgid "Rotate the polyhole every layer." +msgstr "레이어마다 폴리홀을 회전시킵니다." + +msgid "G-code thumbnails" +msgstr "G코드 미리보기" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"\"XxY, XxY, ...\" 형식으로 .gcode 및 .sl1 / .sl1s 파일에 저장되는 미리보기 크" +"기" + +msgid "Format of G-code thumbnails" +msgstr "G코드 미리보기 형식" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"G코드 미리보기 포맷: 최고 품질은 PNG, 최소 크기는 JPG, 저메모리 펌웨어는 QOI" + +msgid "Use relative E distances" +msgstr "상대적 E 거리 사용" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"\"label_objects\" 옵션을 사용할 때는 상대 압출을 권장합니다. 일부 압출기는 " +"이 옵션을 선택하지 않은 경우(절대 압출 모드) 더 잘 작동합니다. 와이프 타워는 " +"상대 모드와만 호환됩니다. 대부분의 프린터에 권장됩니다. 기본값이 선택되어 있" +"습니다" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"클래식 벽 생성기는 돌출 폭이 일정한 벽을 생성하며 매우 얇은 영역에는 간격 채" +"움이 사용됩니다. 아라크네 엔진은 압출 폭이 가변적인 벽을 생성합니다." + +msgid "Classic" +msgstr "클래식" + +msgid "Arachne" +msgstr "아라크네" + +msgid "Wall transition length" +msgstr "벽 변환 길이" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"부품이 얇아짐에 따라 벽의 수가 변화하는 경우, 벽 구간을 분할하거나 결합하기 " +"위해 일정한 공간이 할당됩니다. 이는 노즐 지름을 기준으로 한 백분율로 표현됩니" +"다" + +msgid "Wall transitioning filter margin" +msgstr "벽 변환 필터 마진" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"출력물의 벽 두께를 한 번 두껍게 한 다음 다시 한 번 더 얇게 하는 것을 방지합니" +"다. 이 마진은 다음의 범위로 압출 너비를 확장합니다: [최소 벽 너비 - 마진, 2 " +"* 최소 벽 너비 + 마진]. 이 마진이 증가하면 변환 횟수가 줄어들어 압출 시작/중" +"지 횟수와 이동 시간이 줄어듭니다. 그러나, 큰 압출 너비 변동은 압출 과다 또는 " +"압출 과소 문제를 일으킬 수 있습니다. 노즐 직경을 기준으로 백분율로 표시됩니다" + +msgid "Wall transitioning threshold angle" +msgstr "벽 변환 임계값" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"벽의 짝수와 홀수 사이에 변환을 만드는 시기. 이 설정보다 큰 각도의 쐐기 모양" +"은 변환되지 않으며 나머지 공간 채우기를 위해 중앙에 벽이 출력되지 않습니다. " +"이 설정을 줄이면 중앙 벽의 수와 길이가 줄어들지만 간격이 남거나 과도하게 돌출" +"될 수 있습니다" + +msgid "Wall distribution count" +msgstr "벽 분포 수" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"변환을 분산해야 하는 벽의 개수(중심에서 카운트)입니다. 값이 낮으면 외벽의 너" +"비가 변경되지 않습니다" + +msgid "Minimum feature size" +msgstr "최소 형상 크기" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"얇은 형상의 최소 두께. 이 값보다 얇은 모델 형상은 출력되지 않으며, 최소 형상 " +"크기보다 두꺼운 형상은 최소 벽 너비로 확대됩니다. 노즐 직경에 대한 백분율로 " +"표시됩니다" + +msgid "Minimum wall length" +msgstr "최소 벽 길이" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"짧고 닫히지 않은 벽이 출력되는 것을 방지하려면 이 값을 조정하십시오. 이로 인" +"해 출력 시간이 늘어날 수 있습니다. 값이 높을수록 더 많은 벽과 긴 벽이 제거됩" +"니다.\n" +"\n" +"참고: 모델 외부의 시각적 틈을 방지하기 위해 하단 및 상단 표면은 이 값의 영향" +"을 받지 않습니다. 상단 표면으로 간주되는 항목의 감도를 조정하려면 아래 고급 " +"설정에서 '벽 하나의 임계값'을 조정하세요. '하나의 벽 임계값'은 이 설정이 기본" +"값인 0.5보다 높게 설정되거나 단일 벽 상단 표면이 활성화된 경우에만 표시됩니" +"다." + +msgid "First layer minimum wall width" +msgstr "첫 레이어 최소 벽 너비" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"첫 번째 레이어에 사용되는 최소 벽 너비는 노즐과 동일한 크기로 설정하는 것이 " +"좋습니다. 이러한 조정을 통해 접착력이 향상될 수 있습니다." + +msgid "Minimum wall width" +msgstr "최소 벽 너비" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"모델의 얇은 형상(최소 형상 크기에 따름)을 대체할 벽의 너비입니다. 최소 벽 너" +"비가 형상의 두께보다 얇은 경우 벽은 형상 자체만큼 두꺼워집니다. 노즐 직경에 " +"대한 백분율로 표시됩니다" + +msgid "Detect narrow internal solid infill" +msgstr "좁은 꽉찬 내부 채우기 감지" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"이 옵션은 좁은 꽉찬 내부 채우기 영역을 자동으로 감지합니다. 활성화하면 출력 " +"속도를 높이기 위해 해당 영역에 동심 패턴이 사용됩니다. 그렇지 않으면 기본적으" +"로 직선 패턴이 사용됩니다." + +msgid "invalid value " +msgstr "잘못된 값 " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "나선형 꽃병 모드가 활성화된 경우 유효하지 않은 값: " + +msgid "too large line width " +msgstr "너무 넓은 선 너비 " + +msgid " not in range " +msgstr " 범위를 벗어남 " + +msgid "Minimum save" +msgstr "최소 크기로 저장" + +msgid "export 3mf with minimum size." +msgstr "최소 크기로 3mf를 내보냅니다." + +msgid "No check" +msgstr "확인 안 함" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "G코드 경로 충돌 검사와 같은 유효성 검사를 실행하지 마십시오." + +msgid "Ensure on bed" +msgstr "베드에서 확인" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"개체의 일부가 베드 아래에 있을 때 베드 위로 개체를 들어올립니다. 기본적으로 " +"비활성화됩니다" + +msgid "Orient Options" +msgstr "방향 최적화 옵션" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "방향 최적화 옵션: 0-비활성화, 1-활성화, 기타-자동" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Z축을 중심으로 한 회전 각도입니다." + +msgid "Rotate around Y" +msgstr "Y를 중심으로 회전" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Y축을 중심으로 한 회전 각도입니다." + +msgid "Data directory" +msgstr "데이터 디렉토리" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"지정된 디렉토리에 설정을 로드하고 저장합니다. 이 기능은 서로 다른 사전설정을 " +"유지하거나 네트워크 스토리지의 구성을 포함하는 데 유용합니다." + +msgid "Load custom gcode" +msgstr "사용자 정의 G코드 불러오기" + +msgid "Load custom gcode from json" +msgstr "사용자 정의 G코드를 json에서 불러오기" + +msgid "Current z-hop" +msgstr "현재 Z올리기" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "사용자 정의 G코드 블록의 시작 부분에 있는 Z올리기를 포함합니다." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"사용자 정의 G코드 블록 시작 부분의 압출기 위치입니다. 사용자 정의 G코드가 다" +"른 곳으로 이동하는 경우 PrusaSlicer가 제어권을 다시 얻을 때 이동 위치를 알 " +"수 있도록 이 변수에 기록해야 합니다." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"사용자 정의 G코드 블록 시작 부분의 후퇴 상태입니다. 사용자 정의 G코드가 압출" +"기 축을 이동하는 경우 PrusaSlicer가 다시 제어권을 얻었을 때 올바르게 후퇴할 " +"수 있도록 이 변수에 기록해야 합니다." + +msgid "Extra deretraction" +msgstr "추가 철회" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "현재 철회 후 추가 압출기 프라이밍이 계획되어 있습니다." + +msgid "Absolute E position" +msgstr "절대 E 위치" + +msgid "" +"Current position of the extruder axis. Only used with absolute extruder " +"addressing." +msgstr "압출기 축의 현재 위치입니다. 절대 압출기 주소 지정에만 사용됩니다." + +msgid "Current extruder" +msgstr "현재 압출기" + +msgid "Zero-based index of currently used extruder." +msgstr "현재 사용되는 압출기의 0 기반 인덱스입니다." + +msgid "Current object index" +msgstr "현재 개체 인덱스" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "순차 출력에만 해당됩니다. 현재 출력된 개체의 0 기반 인덱스입니다." + +msgid "Has wipe tower" +msgstr "와이프 타워 있음" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "출력물에 와이프타워가 생성되는지 여부입니다." + +msgid "Initial extruder" +msgstr "초기 압출기" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"출력에 사용된 첫 번째 압출기의 0 기반 인덱스입니다. 초기 도구와 동일합니다." + +msgid "Initial tool" +msgstr "초기 도구" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"출력에 사용된 첫 번째 압출기의 0 기반 인덱스입니다. 초기_압출기와 동일합니다." + +msgid "Is extruder used?" +msgstr "압출기를 사용하나요?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "특정 압출기가 출력에 사용되는지 여부를 나타내는 값 입니다." + +msgid "Has single extruder MM priming" +msgstr "단일 압출기 MM 프라이밍 있음" + +msgid "Are the extra multi-material priming regions used in this print?" +msgstr "이 인쇄물에 추가 다중 재료 프라이밍 영역이 사용됩니까?" + +msgid "Volume per extruder" +msgstr "압출기당 부피" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "전체 프린트 동안 압출기당 압출된 총 필라멘트 양입니다." + +msgid "Total toolchanges" +msgstr "총 툴 체인지" + +msgid "Number of toolchanges during the print." +msgstr "출력 중 도구 교환 횟수." + +msgid "Total volume" +msgstr "총 부피" + +msgid "Total volume of filament used during the entire print." +msgstr "전체 프린트 중에 사용된 필라멘트의 총량입니다." + +msgid "Weight per extruder" +msgstr "압출기당 무게" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" +"전체 프린트 동안 압출된 압출기당 무게입니다. 필라멘트 설정의 filment_density " +"값에서 계산됩니다." + +msgid "Total weight" +msgstr "총 무게" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" +"출력물의 총 무게입니다. 필라멘트 설정의 filment_density 값에서 계산됩니다." + +msgid "Total layer count" +msgstr "총 레이어 수" + +msgid "Number of layers in the entire print." +msgstr "전체 출력의 레이어 수입니다." + +msgid "Number of objects" +msgstr "개체 수" + +msgid "Total number of objects in the print." +msgstr "출력물의 총 개체 수입니다." + +msgid "Number of instances" +msgstr "인스턴스 수" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "모든 개체에 대해 합산된 출력물의 총 개체 인스턴스 수입니다." + +msgid "Scale per object" +msgstr "개체당 크기 조정" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"개별 개체에 어떤 크기 조정이 적용되었는지에 대한 정보가 포함된 문자열을 포함" +"합니다. 개체의 인덱싱은 0부터 시작합니다(첫 번째 개체의 인덱스는 0입니다).\n" +"예: 'x:100% y:50% z:100'." + +msgid "Input filename without extension" +msgstr "확장자가 없는 입력 파일 이름" + +msgid "Source filename of the first object, without extension." +msgstr "확장자가 없는 첫 번째 개체의 소스 파일 이름입니다." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "벡터에는 점의 x 및 y 좌표라는 두 가지 요소가 있습니다. 값(mm)" + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "벡터에는 경계 상자의 x 및 y 차원이라는 두 가지 요소가 있습니다. 값(mm)" + +msgid "First layer convex hull" +msgstr "첫 번째 레이어 볼록 껍질" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"첫 번째 레이어 볼록 껍질의 점으로 구성된 벡터입니다. 각 요소의 형식은 '[x, " +"y]'입니다(x 및 y는 mm 단위의 부동 소수점 숫자입니다)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "첫 번째 레이어 경계 상자의 왼쪽 하단 모서리" + +msgid "Top-right corner of first layer bounding box" +msgstr "첫 번째 레이어 경계 상자의 오른쪽 위 모서리" + +msgid "Size of the first layer bounding box" +msgstr "첫 번째 레이어 경계 상자의 크기" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "출력 베드 경계 상자의 왼쪽 하단 모서리" + +msgid "Top-right corner of print bed bounding box" +msgstr "출력 베드 경계 상자의 오른쪽 상단 모서리" + +msgid "Size of the print bed bounding box" +msgstr "출력 베드 경계 상자의 크기" + +msgid "Timestamp" +msgstr "타임스탬프" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "현재 시간의 형식이 yyyyMMdd-hhmmss 포함하는 문자열입니다." + +msgid "Day" +msgstr "일" + +msgid "Hour" +msgstr "시간" + +msgid "Minute" +msgstr "분" + +msgid "Print preset name" +msgstr "사전 설정 이름 출력" + +msgid "Name of the print preset used for slicing." +msgstr "슬라이스에 사용되는 출력 사전 설정의 이름입니다." + +msgid "Filament preset name" +msgstr "필라멘트 사전 설정 이름" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"슬라이싱에 사용되는 필라멘트 사전 설정의 이름입니다. 변수는 각 압출기의 이름 " +"하나를 포함하는 벡터입니다." + +msgid "Printer preset name" +msgstr "프린터 사전 설정 이름" + +msgid "Name of the printer preset used for slicing." +msgstr "슬라이스에 사용되는 프린터 사전 설정의 이름입니다." + +msgid "Physical printer name" +msgstr "실제 프린터 이름" + +msgid "Name of the physical printer used for slicing." +msgstr "슬라이싱에 사용되는 실제 프린터의 이름입니다." + +msgid "Number of extruders" +msgstr "압출기 수" + +msgid "" +"Total number of extruders, regardless of whether they are used in the " +"current print." +msgstr "현재 프린트에 사용되는지 여부에 관계없이 총 압출기 수입니다." + +msgid "Layer number" +msgstr "레이어 번호" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "현재 레이어의 인덱스입니다. 1 기반(즉, 첫 번째 레이어가 1번입니다)." + +msgid "Layer z" +msgstr "레이어 z" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "레이어 상단까지 측정된 출력 베드 위의 현재 레이어 높이입니다." + +msgid "Maximal layer z" +msgstr "최대 레이어 z" + +msgid "Height of the last layer above the print bed." +msgstr "출력 베드 위의 마지막 레이어 높이입니다." + +msgid "Filament extruder ID" +msgstr "필라멘트 압출기 ID" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "현재 압출기 ID입니다. current_extruder와 동일합니다." + +msgid "Error in zip archive" +msgstr "ZIP 압축파일 오류" + +msgid "Generating walls" +msgstr "벽 생성 중" + +msgid "Generating infill regions" +msgstr "채우기 영역 생성 중" + +msgid "Generating infill toolpath" +msgstr "채우기 툴 경로 생성 중" + +msgid "Detect overhangs for auto-lift" +msgstr "Z 올리기를 위한 돌출부 감지" + +msgid "Generating support" +msgstr "지지대 생성 중" + +msgid "Checking support necessity" +msgstr "지지대 필요성 확인" + +msgid "floating regions" +msgstr "떠있는 영역" + +msgid "floating cantilever" +msgstr "떠있는 외팔보" + +msgid "large overhangs" +msgstr "큰 돌출부" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"개체 %s에 %s이(가) 있는 것 같습니다. 물체의 방향을 바꾸거나 지지대 생성을 활" +"성화하세요." + +msgid "Optimizing toolpath" +msgstr "툴 경로 최적화" + +msgid "Slicing mesh" +msgstr "슬라이싱 메쉬" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"감지된 레이어가 없습니다. STL 파일을 고치거나 크기 또는 두께를 확인하고 다시 " +"시도할 수 있습니다.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"개체의 XY 크기 보정은 색으로 칠해져 있기 때문에 사용되지 않습니다.\n" +"XY 크기 보정은 컬러 페인팅과 결합할 수 없습니다." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "지지대: 레이어 %d에서 툴 경로 생성" + +msgid "Support: detect overhangs" +msgstr "지지대: 오버행 감지" + +msgid "Support: generate contact points" +msgstr "지지대: 접점 생성" + +msgid "Support: propagate branches" +msgstr "지지대: 가지 증식" + +msgid "Support: draw polygons" +msgstr "지지대: 폴리곤 그리기" + +msgid "Support: generate toolpath" +msgstr "지지대: 툴 경로 생성" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "지지대: 레이어 %d에서 폴리곤 생성" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "지지대: 레이어 %d의 구멍 수정" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "지지대: 레이어 %d에서 가지 증식" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"알 수 없는 파일 형식: 입력 파일의 확장자는 .stl, .obj 또는 .amf(.xml)여야 합" +"니다." + +msgid "Loading of a model file failed." +msgstr "모델 파일 로드에 실패했습니다." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "제공된 파일이 비어 있어 읽을 수 없습니다" + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"알 수 없는 파일 형식: 입력 파일의 확장자는.3mf 또는.zip.amf여야 합니다." + +msgid "Canceled" +msgstr "취소됨" + +msgid "load_obj: failed to parse" +msgstr "load_obj: 구문 분석에 실패" + +msgid "load mtl in obj: failed to parse" +msgstr "obj에 mtl 로드: 구문 ​​분석에 실패했습니다" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "이 파일에는 꼭지점이 4개 이상인 다각형이 포함되어 있습니다." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "이 파일에는 꼭지점이 2개 미만인 다각형이 포함되어 있습니다." + +msgid "The file contains invalid vertex index." +msgstr "파일에 잘못된 꼭지점 인덱스가 포함되어 있습니다." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "이 OBJ 파일은 비어 있어서 읽을 수 없습니다." + +msgid "Flow Rate Calibration" +msgstr "유량 교정" + +msgid "Max Volumetric Speed Calibration" +msgstr "최대 체적 속도 교정" + +msgid "Manage Result" +msgstr "결과 관리" + +msgid "Manual Calibration" +msgstr "수동 교정" + +msgid "Result can be read by human eyes." +msgstr "결과를 눈으로 직접 보아야 합니다." + +msgid "Auto-Calibration" +msgstr "자동 교정" + +msgid "We would use Lidar to read the calibration result" +msgstr "라이다를 사용하여 교정 결과를 읽습니다" + +msgid "Prev" +msgstr "이전" + +msgid "Recalibration" +msgstr "재교정" + +msgid "Calibrate" +msgstr "교정" + +msgid "Finish" +msgstr "완료" + +msgid "How to use calibration result?" +msgstr "교정 결과를 어떻게 사용하나요?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "재료 편집에서 동적 유량 교정 계수를 변경할 수 있습니다" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"프린터의 현재 펌웨어 버전은 교정을 지원하지 않습니다.\n" +"프린터 펌웨어를 업그레이드하세요." + +msgid "Calibration not supported" +msgstr "교정이 지원되지 않음" + +msgid "Error desc" +msgstr "오류 설명" + +msgid "Extra info" +msgstr "추가 정보" + +msgid "Flow Dynamics" +msgstr "동적 유량" + +msgid "Flow Rate" +msgstr "유량" + +msgid "Max Volumetric Speed" +msgstr "최대 체적 속도" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"유효한 값을 입력하세요:\n" +"시작 값: >= %.1f\n" +"종료 값: <= %.1f\n" +"종료 값: > 시작 값\n" +"값 단계: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "이름은 비워둘 수 없습니다." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "선택한 사전 설정: %s을(를) 찾을 수 없습니다." + +msgid "The name cannot be the same as the system preset name." +msgstr "이름은 시스템 사전 설정 이름과 동일할 수 없습니다." + +msgid "The name is the same as another existing preset name" +msgstr "이름이 기존의 다른 사전 설정 이름과 동일합니다" + +msgid "create new preset failed." +msgstr "새 사전 설정을 생성하지 못했습니다." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "현재 교정을 취소하고 홈 페이지로 돌아가시겠습니까?" + +msgid "No Printer Connected!" +msgstr "연결된 프린터가 없습니다!" + +msgid "Printer is not connected yet." +msgstr "프린터가 아직 연결되지 않았습니다." + +msgid "Please select filament to calibrate." +msgstr "교정할 필라멘트를 선택하세요." + +msgid "The input value size must be 3." +msgstr "입력 값 크기는 3이어야 합니다." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"이 기계 유형은 노즐당 16개의 기록 결과만 보유할 수 있습니다. 기존 기록 결과" +"를 삭제한 후 교정을 시작할 수 있습니다. 또는 교정을 계속할 수 있지만 새로운 " +"교정 기록 결과를 생성할 수는 없습니다.\n" +"그래도 교정을 계속하시겠습니까?" + +msgid "Connecting to printer..." +msgstr "프린터에 연결하는 중..." + +msgid "The failed test result has been dropped." +msgstr "실패한 테스트 결과가 삭제되었습니다." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "동적 유량 교정 결과가 프린터에 저장되었습니다" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"동일한 이름을 가진 기록 교정 결과가 이미 있습니다: %s. 동일한 이름의 결과 중 " +"하나만 저장됩니다. 과거 결과를 재정의하시겠습니까?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"이 기계 유형은 노즐당 %d개의 기록 결과만 보유할 수 있습니다. 이 결과는 저장되" +"지 않습니다." + +msgid "Internal Error" +msgstr "내부 오류" + +msgid "Please select at least one filament for calibration" +msgstr "교정을 위해 하나 이상의 필라멘트를 선택하세요" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "유량 교정 결과가 사전 설정에 저장되었습니다" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "최대 체적 속도 교정 결과가 사전 설정에 저장되었습니다" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "동적 유량 교정이 필요한 경우" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"이제 다양한 필라멘트에 대한 자동 교정 기능이 추가되었습니다. 이 기능은 완전" +"히 자동화되었으며 결과는 나중에 사용할 수 있도록 프린터에 저장됩니다. 다음과 " +"같은 제한된 경우에만 보정을 수행해야 합니다.\n" +"1. 다른 브랜드/모델의 새로운 필라멘트를 도입하거나 필라멘트가 습기에 노출된 " +"경우;\n" +"2. 노즐이 낡았거나 새것으로 교체한 경우\n" +"3. 필라멘트 설정에서 최대 체적 속도나 출력 온도가 변경된 경우." + +msgid "About this calibration" +msgstr "교정 정보" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" +"우리 위키에서 동적 유량 교정에 대한 자세한 내용을 찾아보세요.\n" +"\n" +"일반적으로 교정은 필요하지 않습니다. 출력 시작 메뉴에서 \"동적 유량 교정\" 옵" +"션을 선택한 상태에서 단일 색상/재료 출력을 시작하면 프린터는 이전 방식을 따르" +"며 출력 전에 필라멘트를 교정합니다. 다중 색상/재료 출력을 시작하면 프린터는 " +"모든 필라멘트 전환 중에 필라멘트에 대한 기본 보상 매개변수를 사용하므로 대부" +"분의 경우 좋은 결과를 얻을 수 있습니다.\n" +"\n" +"교정 결과를 신뢰할 수 없게 만드는 몇 가지 경우가 있습니다. 텍스처 플레이트를 " +"사용하여 보정을 수행합니다. 빌드 플레이트의 접착력이 좋지 않습니다. (빌드 플" +"레이트를 세척하거나 풀을 바르십시오!) ...위키에서 자세한 내용을 확인할 수 있" +"습니다.\n" +"\n" +"테스트에서 교정 결과에는 약 10%의 오차가 있으며, 이로 인해 각 교정에서 결과" +"가 정확히 동일하지 않을 수 있습니다. 새로운 업데이트로 개선하기 위해 근본 원" +"인을 계속 조사하고 있습니다." + +msgid "When to use Flow Rate Calibration" +msgstr "유량 교정을 사용해야 하는 경우" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"동적 유량 교정을 사용한 후에도 다음과 같은 압출 문제가 여전히 발생할 수 있습" +"니다.\n" +"1. 과다 압출: 출력된 개체에 재료가 너무 많아 얼룩이나 잡티가 형성되거나 레이" +"어가 예상보다 두껍고 균일하지 않은 것처럼 보입니다.\n" +"2. 과소 압출: 레이어가 매우 얇거나 충전 강도가 약하거나 천천히 출력할 때에도 " +"모델 상단 레이어에 틈이 있습니다.\n" +"3. 표면 품질 불량: 출력물의 표면이 거칠거나 울퉁불퉁해 보입니다.\n" +"4. 약한 구조적 완전성: 출력물이 쉽게 부러지거나 예상만큼 튼튼해 보이지 않습니" +"다." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"또한 RC 비행기에 사용되는 LW-PLA와 같은 발포 재료에는 유량 교정이 중요합니" +"다. 이러한 물질은 가열되면 크게 팽창하며 교정은 유용한 기준 유량을 제공합니" +"다." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"유량 교정은 예상되는 압출량과 실제 압출량의 비율을 측정합니다. 기본 설정은 사" +"전 보정되고 미세 조정된 뱀부랩 프린터 및 공식 필라멘트에서 잘 작동합니다. 일" +"반 필라멘트의 경우 일반적으로 다른 교정을 수행한 후에도 나열된 결함이 표시되" +"지 않는 한 유량 교정을 수행할 필요가 없습니다. 자세한 내용은 위키를 확인하시" +"기 바랍니다." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"자동 유량 교정은 뱀부랩의 마이크로 라이다 기술을 활용하여 교정 패턴을 직접 측" +"정합니다. 그러나 특정 유형의 재료를 사용하면 이 방법의 효율성과 정확성이 저하" +"될 수 있다는 점에 유의하시기 바랍니다. 특히, 투명 또는 반투명, 반짝이는 입자 " +"또는 고반사 마감 처리된 필라멘트는 이 교정에 적합하지 않을 수 있으며 바람직하" +"지 않은 결과를 생성할 수 있습니다.\n" +"\n" +"교정 결과는 각 교정 또는 필라멘트마다 다를 수 있습니다. 우리는 시간이 지남에 " +"따라 펌웨어 업데이트를 통해 이 교정의 정확성과 호환성을 계속 개선하고 있습니" +"다.\n" +"\n" +"주의: 유량 교정은 목적과 의미를 완전히 이해하는 사람만이 시도할 수 있는 고급 " +"프로세스입니다. 잘못 사용하면 수준 이하의 출력이나 프린터 손상이 발생할 수 있" +"습니다. 반드시 절차를 주의 깊게 읽고 이해하신 후 진행하시기 바랍니다." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "최대 체적 속도 교정이 필요한 경우" + +msgid "Over-extrusion or under extrusion" +msgstr "과다 압출 또는 과소 압출" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "다음을 사용하여 출력할 때 최대 체적 속도 교정을 권장합니다:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "열 수축/팽창이 심한 재료, 다음과 같은..." + +msgid "materials with inaccurate filament diameter" +msgstr "필라멘트 직경이 부정확한 재료" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "최고의 동적 유량 교정 계수를 찾았습니다" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"교정의 일부가 실패했습니다! 플레이트를 청소하고 다시 시도할 수 있습니다. 실패" +"한 테스트 결과는 삭제됩니다." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "*이름에 브랜드, 재질, 유형, 습도까지 추가하는 것이 좋습니다" + +msgid "Failed" +msgstr "실패" + +msgid "Please enter the name you want to save to printer." +msgstr "프린터에 저장할 이름을 입력하세요." + +msgid "The name cannot exceed 40 characters." +msgstr "이름은 40자를 초과할 수 없습니다." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"단 하나의 결과만을 같은 이름으로 저장할 수 있습니다. 다른 결과들을 덮어쓸까" +"요?" + +msgid "Please find the best line on your plate" +msgstr "당신의 플레이트에서 가장 좋은 선을 찾아보세요" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "사출 품질이 제일 좋은 모서리를 찾아보세요" + +msgid "Input Value" +msgstr "입력값" + +msgid "Save to Filament Preset" +msgstr "필라멘트 사전 설정에 저장" + +msgid "Preset" +msgstr "사전 설정" + +msgid "Record Factor" +msgstr "계수 기록" + +msgid "We found the best flow ratio for you" +msgstr "당신에게 가장 적합한 유량 비율을 찾았습니다" + +msgid "Flow Ratio" +msgstr "유량 비율" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "유효한 값을 입력하세요(0.0 < 유량비율 < 2.0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "저장하고 싶은 사전 설정의 이름을 입력해주세요." + +msgid "Calibration1" +msgstr "교정1" + +msgid "Calibration2" +msgstr "교정2" + +msgid "Please find the best object on your plate" +msgstr "당신의 플레이트에서 가장 좋은 개체를 찾아보세요" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "가장 매끄러운 윗면을 가진 블록 위의 값을 입력하세요" + +msgid "Skip Calibration2" +msgstr "교정2 건너뛰기" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "유량 비율 : %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "상단 표면이 가장 매끄러운 블록을 선택하세요" + +msgid "Please choose a block with smoothest top surface." +msgstr "상단 표면이 가장 매끄러운 블록을 선택하세요." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "유효한 값을 입력하세요(0 <= 최대 체적 속도 <= 60)" + +msgid "Calibration Type" +msgstr "교정 유형" + +msgid "Complete Calibration" +msgstr "교정 완료" + +msgid "Fine Calibration based on flow ratio" +msgstr "유량비율에 따른 미세 교정" + +msgid "Title" +msgstr "제목" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"테스트 모델이 출력됩니다. 교정 전에 빌드 플레이트를 청소하고 히트 베드에 다" +"시 올려놓으십시오." + +msgid "Printing Parameters" +msgstr "출력 매개변수" + +msgid "Plate Type" +msgstr "플레이트 타입" + +msgid "filament position" +msgstr "필라멘트 위치" + +msgid "External Spool" +msgstr "외부 스풀" + +msgid "Filament For Calibration" +msgstr "교정할 필라멘트" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"교정 재료에 대한 팁:\n" +"- 동일한 히트베드 온도를 공유할 수 있는 소재\n" +"- 다양한 필라멘트 브랜드 및 제품군(브랜드 = 뱀부, 제품군 = 기본, 메트)" + +msgid "Pattern" +msgstr "패턴" + +msgid "Method" +msgstr "방법" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s은(는) %s과(와) 호환되지 않습니다" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "TPU는 동적 유량 자동 교정에서 지원되지 않습니다." + +msgid "Connecting to printer" +msgstr "프린터에 연결 중" + +msgid "From k Value" +msgstr "K 값에서" + +msgid "To k Value" +msgstr "K 값으로" + +msgid "Step value" +msgstr "단계 값" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "노즐 직경이 프린터 설정에서 동기화되었습니다" + +msgid "From Volumetric Speed" +msgstr "체적 속도에서" + +msgid "To Volumetric Speed" +msgstr "체적 속도로" + +msgid "Flow Dynamics Calibration Result" +msgstr "동적 유량 교정 결과" + +msgid "New" +msgstr "새로운" + +msgid "No History Result" +msgstr "기록 결과 없음" + +msgid "Success to get history result" +msgstr "기록 결과 가져오기 성공" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "과거 동적 유량 교정 기록 새로 고침" + +msgid "Action" +msgstr "실행" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "이 기계 유형은 노즐당 %d개의 기록 결과만 보유할 수 있습니다." + +msgid "Edit Flow Dynamics Calibration" +msgstr "동적 유량 교정 편집" + +msgid "New Flow Dynamic Calibration" +msgstr "새로운 유량 동적 교정" + +msgid "Ok" +msgstr "확인" + +msgid "The filament must be selected." +msgstr "필라멘트를 선택해야 합니다." + +msgid "Network lookup" +msgstr "네트워크 검색" + +msgid "Address" +msgstr "주소" + +msgid "Hostname" +msgstr "호스트 이름" + +msgid "Service name" +msgstr "서비스 이름" + +msgid "OctoPrint version" +msgstr "OctoPrint 버전" + +msgid "Searching for devices" +msgstr "장치 검색 중" + +msgid "Finished" +msgstr "완료됨" + +msgid "Multiple resolved IP addresses" +msgstr "확인된 다수의 IP 주소" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"호스트 이름 %1%(으)로 확인되는 IP 주소가 여러 개 있습니다.\n" +"사용 할 IP를 선택해 주세요." + +msgid "PA Calibration" +msgstr "PA 교정" + +msgid "DDE" +msgstr "다이렉트" + +msgid "Bowden" +msgstr "보우덴" + +msgid "Extruder type" +msgstr "압출기 타입" + +msgid "PA Tower" +msgstr "PA 타워" + +msgid "PA Line" +msgstr "PA 선" + +msgid "PA Pattern" +msgstr "PA 패턴" + +msgid "Start PA: " +msgstr "시작 PA: " + +msgid "End PA: " +msgstr "종료 PA: " + +msgid "PA step: " +msgstr "PA 단계: " + +msgid "Print numbers" +msgstr "출력 수" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"유효한 값을 입력하세요:\n" +"PA 시작: >= 0.0\n" +"PA 종료: > PA 시작\n" +"PA 단계: >= 0.001)" + +msgid "Temperature calibration" +msgstr "온도 교정" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "PCTG" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "필라멘트 유형" + +msgid "Start temp: " +msgstr "시작 온도: " + +msgid "End temp: " +msgstr "종료 온도: " + +msgid "Temp step: " +msgstr "온도 단계: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"유효한 값을 입력하세요:\n" +"시작 온도: <= 350\n" +"종료 온도: >= 170\n" +"시작온도 > 종료온도 + 5)" + +msgid "Max volumetric speed test" +msgstr "최대 체적 속도 테스트" + +msgid "Start volumetric speed: " +msgstr "시작 체적 속도: " + +msgid "End volumetric speed: " +msgstr "종료 체적 속도: " + +msgid "step: " +msgstr "단계: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"유효한 값을 입력하세요:\n" +"시작 > 0\n" +"단계 >= 0\n" +"끝 > 시작 + 단계)" + +msgid "VFA test" +msgstr "VFA 테스트" + +msgid "Start speed: " +msgstr "시작 속도: " + +msgid "End speed: " +msgstr "종료 속도: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"유효한 값을 입력하세요:\n" +"시작 > 10\n" +"단계 >= 0\n" +"끝 > 시작 + 단계)" + +msgid "Start retraction length: " +msgstr "후퇴 시작 길이: " + +msgid "End retraction length: " +msgstr "후퇴 종료 길이: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "G코드를 프린터 호스트로 보내기" + +msgid "Upload to Printer Host with the following filename:" +msgstr "다음 파일 이름으로 프린터 호스트에 업로드:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "필요한 경우 슬래시( / )를 디렉토리 구분 기호로 사용하세요." + +msgid "Upload to storage" +msgstr "저장소에 업로드" + +msgid "Switch to Device tab after upload." +msgstr "업로드 후 기기 탭으로 전환." + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "업로드 파일 이름이 \"%s\"로 끝나지 않습니다. 계속하시겠습니까?" + +msgid "Upload" +msgstr "업로드" + +msgid "Print host upload queue" +msgstr "출력 호스트 업로드 대기열" + +msgid "ID" +msgstr "아이디" + +msgid "Progress" +msgstr "진행률" + +msgid "Host" +msgstr "호스트" + +msgctxt "OfFile" +msgid "Size" +msgstr "크기" + +msgid "Filename" +msgstr "파일 이름" + +msgid "Cancel selected" +msgstr "선택 취소" + +msgid "Show error message" +msgstr "오류 메시지 표시" + +msgid "Enqueued" +msgstr "대기 중" + +msgid "Uploading" +msgstr "업로드 중" + +msgid "Cancelling" +msgstr "취소 중" + +msgid "Error uploading to print host" +msgstr "출력 호스트에 업로드하는 중 오류가 발생했습니다" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "선택한 부품에서 부울 연산을 수행할 수 없습니다" + +msgid "Mesh Boolean" +msgstr "메쉬 부울" + +msgid "Union" +msgstr "합집합" + +msgid "Difference" +msgstr "차집합" + +msgid "Intersection" +msgstr "교집합" + +msgid "Source Volume" +msgstr "소스 볼륨" + +msgid "Tool Volume" +msgstr "도구 볼륨" + +msgid "Subtract from" +msgstr "다음에서 잘라내기" + +msgid "Subtract with" +msgstr "다음으로 잘라내기" + +msgid "selected" +msgstr "선택됨" + +msgid "Part 1" +msgstr "부품 1" + +msgid "Part 2" +msgstr "부품 2" + +msgid "Delete input" +msgstr "입력개체 삭제" + +msgid "Network Test" +msgstr "네트워크 테스트" + +msgid "Start Test Multi-Thread" +msgstr "멀티스레드 테스트 시작" + +msgid "Start Test Single-Thread" +msgstr "단일 스레드 테스트 시작" + +msgid "Export Log" +msgstr "로그 내보내기" + +msgid "Snapmaker Orca Version:" +msgstr "Snapmaker Orca 버전:" + +msgid "System Version:" +msgstr "시스템 버전:" + +msgid "DNS Server:" +msgstr "DNS 서버:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "Snapmaker Orca 테스트(깃허브)" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "Snapmaker Orca 테스트(깃허브):" + +msgid "Test Bing.com" +msgstr "테스트 Bing.com" + +msgid "Test bing.com:" +msgstr "테스트 Bing.com:" + +msgid "Log Info" +msgstr "로그 정보" + +msgid "Select filament preset" +msgstr "필라멘트 사전 설정 선택" + +msgid "Create Filament" +msgstr "필라멘트 생성" + +msgid "Create Based on Current Filament" +msgstr "현재 필라멘트를 기반으로 생성" + +msgid "Copy Current Filament Preset " +msgstr "현재 필라멘트 사전 설정 복사 " + +msgid "Basic Information" +msgstr "기본 정보" + +msgid "Add Filament Preset under this filament" +msgstr "이 필라멘트 아래에 필라멘트 사전 설정을 추가하세요" + +msgid "We could create the filament presets for your following printer:" +msgstr "다음 프린터에 대한 필라멘트 사전 설정을 만들 수 있습니다:" + +msgid "Select Vendor" +msgstr "공급업체 선택" + +msgid "Input Custom Vendor" +msgstr "맞춤 공급업체 입력" + +msgid "Can't find vendor I want" +msgstr "원하는 공급업체를 찾을 수 없습니다" + +msgid "Select Type" +msgstr "유형 선택" + +msgid "Select Filament Preset" +msgstr "필라멘트 사전 설정 선택" + +msgid "Serial" +msgstr "시리얼" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "예를 들어 기본, 매트, 실크, 마블" + +msgid "Filament Preset" +msgstr "필라멘트 사전 설정" + +msgid "Create" +msgstr "생성" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "공급업체가 선택되지 않았습니다. 공급업체를 다시 선택하세요." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" +"사용자 정의 공급업체가 입력되지 않았습니다. 사용자 정의 공급업체를 입력해 주" +"세요." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"뱀부\" 또는 \"일반적인\"은 맞춤형 필라멘트 공급업체로 사용할 수 없습니다." + +msgid "Filament type is not selected, please reselect type." +msgstr "필라멘트 유형이 선택되지 않았습니다. 유형을 다시 선택하세요." + +msgid "Filament serial is not inputed, please input serial." +msgstr "필라멘트 시리얼이 입력되지 않았습니다. 시리얼을 입력해 주세요." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"공급업체나 필라멘트의 직렬 입력에 이스케이프 문자가 있을 수 있습니다. 삭제하" +"고 다시 입력해주세요." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"사용자 정의 공급업체 또는 일련번호의 모든 입력은 공백입니다. 다시 입력해 주세" +"요." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "공급업체는 숫자가 될 수 없습니다. 다시 입력하세요." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "아직 프린터나 사전 설정을 선택하지 않았습니다. 하나 이상 선택하세요." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"생성한 필라멘트 이름 %s이(가) 이미 존재합니다.\n" +"계속 생성하면 생성된 사전 설정이 전체 이름과 함께 표시됩니다. 계속하시겠습니" +"까?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "다음과 같이 일부 기존 사전 설정을 생성하지 못했습니다.\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"다시 작성하시겠습니까?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"사전 설정의 이름을 \"선택한 공급업체 유형 직렬 @프린터\"로 변경합니다.\n" +"더 많은 프린터에 대한 사전 설정을 추가하려면 프린터 선택으로 이동하세요" + +msgid "Create Printer/Nozzle" +msgstr "프린터/노즐 생성" + +msgid "Create Printer" +msgstr "프린터 생성" + +msgid "Create Nozzle for Existing Printer" +msgstr "기존 프린터용 노즐 생성" + +msgid "Create from Template" +msgstr "템플릿에서 생성" + +msgid "Create Based on Current Printer" +msgstr "현재 프린터를 기반으로 생성" + +msgid "Import Preset" +msgstr "사전 설정 가져오기" + +msgid "Create Type" +msgstr "유형 생성" + +msgid "The model is not found, place reselect vendor." +msgstr "모델을 찾을 수 없습니다. 공급업체를 다시 선택하세요." + +msgid "Select Model" +msgstr "모델 선택" + +msgid "Select Printer" +msgstr "프린터 선택" + +msgid "Input Custom Model" +msgstr "커스텀 모델 입력" + +msgid "Can't find my printer model" +msgstr "내 프린터 모델을 찾을 수 없습니다" + +msgid "Rectangle" +msgstr "직사각형" + +msgid "Printable Space" +msgstr "출력 가능 공간" + +msgid "Hot Bed STL" +msgstr "베드 STL" + +msgid "Load stl" +msgstr "STL 불러오기" + +msgid "Hot Bed SVG" +msgstr "베드 SVG" + +msgid "Load svg" +msgstr "SVG 불러오기" + +msgid "Max Print Height" +msgstr "최대 출력 높이" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "파일이 %d MB를 초과합니다. 다시 가져오십시오." + +msgid "Exception in obtaining file size, please import again." +msgstr "파일 크기를 가져오는 중 예외가 발생했습니다. 다시 가져오세요." + +msgid "Preset path is not find, please reselect vendor." +msgstr "사전 설정 경로를 찾을 수 없습니다. 공급업체를 다시 선택하세요." + +msgid "The printer model was not found, please reselect." +msgstr "프린터 모델을 찾을 수 없습니다. 다시 선택하세요." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "노즐 직경이 마음에 들지 않으면 다시 선택하세요." + +msgid "The printer preset is not found, place reselect." +msgstr "프린터 사전 설정이 마음에 들지 않습니다. 다시 선택하세요." + +msgid "Printer Preset" +msgstr "프린터 사전 설정" + +msgid "Filament Preset Template" +msgstr "필라멘트 사전 설정 템플릿" + +msgid "Deselect All" +msgstr "모두 선택 해제" + +msgid "Process Preset Template" +msgstr "프로세스 사전 설정 템플릿" + +msgid "Back Page 1" +msgstr "뒤 페이지 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"생성할 프린터 사전 설정을 아직 선택하지 않았습니다. 프린터의 공급업체와 모델" +"을 선택하세요" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"첫 번째 페이지의 출력 가능 영역 섹션에 잘못된 입력을 입력했습니다. 작성 전 " +"꼭 확인해주세요." + +msgid "The custom printer or model is not inputed, place input." +msgstr "사용자 정의 프린터 또는 모델이 입력되지 않았습니다. 입력하세요." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"생성한 프린터 사전 설정에 동일한 이름의 사전 설정이 이미 있습니다. 덮어쓰시겠" +"습니까?\n" +"예: 동일한 이름으로 프린터 사전 설정을 덮어쓰면 동일한 사전 설정 이름을 가진 " +"필라멘트 및 프로세스 사전 설정이 다시 생성됩니다.\n" +"동일한 사전 설정 이름이 없는 필라멘트 및 프로세스 사전 설정은 예약됩니다.\n" +"취소: 사전 설정을 생성하지 않고 생성 인터페이스로 돌아갑니다." + +msgid "You need to select at least one filament preset." +msgstr "필라멘트 사전 설정을 하나 이상 선택해야 합니다." + +msgid "You need to select at least one process preset." +msgstr "프로세스 사전 설정을 하나 이상 선택해야 합니다." + +msgid "Create filament presets failed. As follows:\n" +msgstr "필라멘트 사전 설정 생성에 실패했습니다. 다음과 같이:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "프로세스 사전 설정 생성에 실패했습니다. 다음과 같이:\n" + +msgid "Vendor is not find, please reselect." +msgstr "공급업체를 찾을 수 없습니다. 다시 선택하세요." + +msgid "Current vendor has no models, please reselect." +msgstr "현재 공급업체에는 모델이 없습니다. 다시 선택하세요." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"공급업체 및 모델을 선택하지 않았거나 맞춤 공급업체 및 모델을 입력하지 않았습" +"니다." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"사용자 정의 프린터 공급업체 또는 모델에 이스케이프 문자가 있을 수 있습니다. " +"삭제하고 다시 입력해주세요." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"사용자 정의 프린터 공급업체 또는 모델의 모든 입력은 공백입니다. 다시 입력해 " +"주세요." + +msgid "Please check bed printable shape and origin input." +msgstr "출력 가능한 베드 형태를 확인해주세요." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "노즐을 교체할 프린터를 아직 선택하지 않으셨습니다. 선택해 주세요." + +msgid "Create Printer Successful" +msgstr "프린터 생성 성공" + +msgid "Create Filament Successful" +msgstr "필라멘트 생성 성공" + +msgid "Printer Created" +msgstr "프린터가 생성되었습니다" + +msgid "Please go to printer settings to edit your presets" +msgstr "사전 설정을 편집하려면 프린터 설정으로 이동하세요" + +msgid "Filament Created" +msgstr "필라멘트 생성됨" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"필요한 경우 필라멘트 설정으로 이동하여 사전 설정을 편집하세요.\n" +"노즐 온도, 핫베드 온도 및 최대 체적 속도는 출력 품질에 큰 영향을 미칩니다. 신" +"중하게 설정해 주세요." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"Orca에서는 사용자 사전 설정 동기화 기능이 활성화되어 있지 않아 장치 페이지에" +"서 필라멘트 설정이 실패할 수 있음을 감지했습니다.\n" +"동기화 기능을 활성화하려면 \"사용자 사전 설정 동기화\"를 클릭하세요." + +msgid "Printer Setting" +msgstr "프린터 설정" + +msgid "Printer config bundle(.orca_printer)" +msgstr "프린터 구성 번들(.orca_printer)" + +msgid "Filament bundle(.orca_filament)" +msgstr "필라멘트 번들(.orca_filament)" + +msgid "Printer presets(.zip)" +msgstr "프린터 사전 설정(.zip)" + +msgid "Filament presets(.zip)" +msgstr "필라멘트 사전 설정(.zip)" + +msgid "Process presets(.zip)" +msgstr "프로세스 사전 설정(.ZIP)" + +msgid "initialize fail" +msgstr "초기화 실패" + +msgid "add file fail" +msgstr "파일 추가 실패" + +msgid "add bundle structure file fail" +msgstr "번들 구조 파일 추가 실패" + +msgid "finalize fail" +msgstr "마무리 실패" + +msgid "open zip written fail" +msgstr "ZIP 열기 실패" + +msgid "Export successful" +msgstr "내보내기 성공" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"현재 디렉터리에 '%s' 폴더가 이미 존재합니다. 지우고 다시 작성하시겠습니까?\n" +"그렇지 않은 경우 시간 접미사가 추가되며 생성 후 이름을 수정할 수 있습니다." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"프린터와 프린터에 속한 모든 필라멘트 및 프로세스 사전 설정.\n" +"다른 사람과 공유할 수 있습니다." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"사용자의 필라멘트 사전 설정입니다.\n" +"다른 사람과 공유할 수 있습니다." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"프린터, 필라멘트 및 프로세스 사전 설정이 변경된 경우에만 프린터 이름을 표시합" +"니다." + +msgid "Only display the filament names with changes to filament presets." +msgstr "필라멘트 사전 설정이 변경된 경우에만 필라멘트 이름을 표시합니다." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"사용자 프린터 사전 설정이 있는 프린터 이름만 표시되며, 선택한 각 사전 설정은 " +"zip으로 내보내집니다." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"사용자 필라멘트 사전 설정이 있는 필라멘트 이름만 표시됩니다.\n" +"선택한 각 필라멘트 이름의 모든 사용자 필라멘트 사전 설정은 zip으로 내보내집니" +"다." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"프로세스 사전 설정이 변경된 프린터 이름만 표시됩니다.\n" +"선택한 각 프린터 이름의 모든 사용자 프로세스 사전 설정은 zip으로 내보내집니" +"다." + +msgid "Please select at least one printer or filament." +msgstr "프린터나 필라멘트를 하나 이상 선택해 주세요." + +msgid "Please select a type you want to export" +msgstr "내보내려는 유형을 선택하세요" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "임시 폴더를 생성하지 못했습니다. 구성 내보내기를 다시 시도해 보세요." + +msgid "Edit Filament" +msgstr "필라멘트 편집" + +msgid "Filament presets under this filament" +msgstr "이 필라멘트 아래의 필라멘트 사전 설정" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"참고: 이 필라멘트 아래의 유일한 사전 설정이 삭제되면 대화 상자를 종료한 후 필" +"라멘트가 삭제됩니다." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "다른 사전 설정에 상속된 사전 설정은 삭제할 수 없습니다" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "다음 사전 설정은 이 사전 설정을 상속합니다." + +msgid "Delete Preset" +msgstr "사전 설정 삭제" + +msgid "Are you sure to delete the selected preset?" +msgstr "선택한 사전 설정을 삭제하시겠습니까?" + +msgid "Delete preset" +msgstr "사전 설정 삭제" + +msgid "+ Add Preset" +msgstr "+ 사전 설정 추가" + +msgid "Delete Filament" +msgstr "필라멘트 삭제" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"이 필라멘트에 속한 모든 필라멘트 사전 설정이 삭제됩니다.\n" +"프린터에서 이 필라멘트를 사용하는 경우 해당 슬롯의 필라멘트 정보를 재설정하세" +"요." + +msgid "Delete filament" +msgstr "필라멘트 삭제" + +msgid "Add Preset" +msgstr "사전 설정 추가" + +msgid "Add preset for new printer" +msgstr "새 프린터에 대한 사전 설정 추가" + +msgid "Copy preset from filament" +msgstr "필라멘트에서 사전 설정 복사" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "필라멘트 선택에서 사전 설정을 찾을 수 없습니다. 다시 선택하세요" + +msgid "[Delete Required]" +msgstr "[삭제 필수]" + +msgid "Edit Preset" +msgstr "프리셋 편집" + +msgid "For more information, please check out Wiki" +msgstr "더 자세한 내용은 위키를 확인해주세요" + +msgid "Collapse" +msgstr "무너짐" + +msgid "Daily Tips" +msgstr "일일 팁" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "기억된 노즐: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"미리 설정된 노즐 직경이 기억된 노즐 직경과 일치하지 않습니다.직경. 최근에 노" +"즐을 바꾸셨나요?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*%s 재료를 %s로 출력하면 노즐이 손상될 수 있습니다" + +msgid "Need select printer" +msgstr "프린터 선택 필요" + +msgid "The start, end or step is not valid value." +msgstr "시작, 끝 또는 단계가 유효한 값이 아닙니다." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"교정할 수 없음: 설정된 교정 값 범위가 너무 크거나 단계가 너무 작기 때문일 수 " +"있습니다" + +msgid "Physical Printer" +msgstr "물리 프린터" + +msgid "Print Host upload" +msgstr "출력 호스트 업로드" + +msgid "Could not get a valid Printer Host reference" +msgstr "유효한 프린터 호스트 참조를 가져올 수 없습니다" + +msgid "Success!" +msgstr "성공!" + +msgid "Are you sure to log out?" +msgstr "정말 로그아웃하시겠습니까?" + +msgid "Refresh Printers" +msgstr "프린터 새로 고침" + +msgid "View print host webui in Device tab" +msgstr "기기 탭에서 출력 호스트의 웹UI 표시" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "뱀부랩의 기기 탭을 출력 호스트의 웹UI로 교체" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"HTTPS CA 파일은 선택 사항입니다. 자체 서명된 인증서와 함께 HTTPS를 사용하는 " +"경우에만 필요합니다." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "인증서 파일 (*.crt, *.pem)|*.crt;*.pem|All files|*.*" + +msgid "Open CA certificate file" +msgstr "CA 인증서 파일 열기" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"이 시스템에서 %s는 시스템 인증서 저장소나 키체인의 HTTPS 인증서를 사용합니다." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"사용자 정의 CA 파일을 사용하려면 CA 파일을 인증서 저장소/키체인으로 가져오십" +"시오." + +msgid "Login/Test" +msgstr "로그인/테스트" + +msgid "Connection to printers connected via the print host failed." +msgstr "출력 호스트를 통해 연결된 프린터에 연결하지 못했습니다." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "일치하지 않는 출력 호스트 유형: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "AstroBox 연결이 올바르게 작동합니다." + +msgid "Could not connect to AstroBox" +msgstr "AstroBox에 연결할 수 없습니다" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "참고: AstroBox 버전 1.1.0 이상이 필요합니다." + +msgid "Connection to Duet works correctly." +msgstr "Duet 연결이 제대로 작동합니다." + +msgid "Could not connect to Duet" +msgstr "Duet에 연결할 수 없습니다" + +msgid "Unknown error occured" +msgstr "알 수 없는 오류가 발생했습니다" + +msgid "Wrong password" +msgstr "잘못된 비밀번호" + +msgid "Could not get resources to create a new connection" +msgstr "새 연결을 생성하기 위한 리소스를 얻을 수 없습니다" + +msgid "Upload not enabled on FlashAir card." +msgstr "FlashAir 카드에서는 업로드가 활성화되지 않았습니다." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "FlashAir 연결이 올바르게 작동하고 업로드가 활성화되었습니다." + +msgid "Could not connect to FlashAir" +msgstr "FlashAir에 연결할 수 없습니다" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"참고: 펌웨어 2.00.02 또는 이후 버전을 사용중이며 업로드 기능이 활성화된 " +"FlashAir가 필요합니다." + +msgid "Connection to MKS works correctly." +msgstr "MKS에 대한 연결이 올바르게 작동합니다." + +msgid "Could not connect to MKS" +msgstr "MKS에 연결할 수 없습니다" + +msgid "Connection to OctoPrint works correctly." +msgstr "OctoPrint에 대한 연결이 올바르게 작동합니다." + +msgid "Could not connect to OctoPrint" +msgstr "OctoPrint에 연결할 수 없습니다" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "참고: OctoPrint 버전 1.1.0 이상이 필요합니다." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Prusa SL1 / SL1S에 대한 연결이 올바르게 작동합니다." + +msgid "Could not connect to Prusa SLA" +msgstr "Prusa SLA에 연결할 수 없습니다" + +msgid "Connection to PrusaLink works correctly." +msgstr "PrusaLink에 대한 연결이 올바르게 작동합니다." + +msgid "Could not connect to PrusaLink" +msgstr "PrusaLink에 연결할 수 없습니다" + +msgid "Storages found" +msgstr "저장소를 찾았습니다." + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1%: 읽기 전용" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1%: 여유 공간이 없습니다" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "업로드에 실패했습니다. %1%에 적합한 저장소가 없습니다." + +msgid "Connection to Prusa Connect works correctly." +msgstr "Prusa Connect에 대한 연결이 올바르게 작동합니다." + +msgid "Could not connect to Prusa Connect" +msgstr "Prusa Connect에 연결할 수 없습니다" + +msgid "Connection to Repetier works correctly." +msgstr "Repetier에 대한 연결이 올바르게 작동합니다." + +msgid "Could not connect to Repetier" +msgstr "Repetier에 연결할 수 없습니다" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "참고: 최소 0.90.0 이상의 반복 버전이 필요합니다." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP 상태: %1%\n" +"메시지 본문: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"호스트 응답 구문 분석에 실패했습니다.\n" +"메시지 본문: \"%1%\"\n" +"오류: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"호스트 프린터 열거에 실패했습니다.\n" +"메시지 본문: \"%1%\"\n" +"오류: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"레이어 높이가 작기 때문에 레이어 라인이 거의 무시할 수 있고 출력 품질이 높습" +"니다. 대부분의 일반적인 출력 케이스에 적합합니다." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"0.2mm 노즐의 기본 프로파일과 비교하면 속도와 가속도가 낮고 성긴 채우기 패턴" +"은 자이로이드입니다. 따라서 출력 품질은 훨씬 높아지지만 출력 시간은 훨씬 길어" +"집니다." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"0.2mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 약간 더 크고 레이어 라인" +"이 거의 무시할 수 있으며 출력 시간이 약간 짧아집니다." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"0.2mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 크고 레이어 선이 약간 " +"눈에 띄지만 출력 시간은 더 짧아집니다." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"0.2mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 작아서 레이어 라인이 " +"거의 보이지 않고 출력 품질이 높아지지만 출력 시간은 단축됩니다." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"0.2mm 노즐의 기본 프로파일과 비교하면 레이어 라인이 더 작고 속도와 가속도가 " +"낮으며 성긴 채우기 패턴은 자이로이드입니다. 따라서 레이어 선이 거의 보이지 않" +"고 출력 품질이 훨씬 높아지지만 출력 시간은 훨씬 길어집니다." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"0.2mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 작아서 레이어 라인이 " +"최소화되고 출력 품질이 높아지지만 출력 시간은 단축됩니다." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"0.2mm 노즐의 기본 프로파일과 비교하면 레이어 라인이 더 작고 속도와 가속도가 " +"낮으며 성긴 채우기 패턴은 자이로이드입니다. 따라서 레이어 라인이 최소화되고 " +"출력 품질이 훨씬 높아지지만 출력 시간은 훨씬 길어집니다." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"이는 일반적인 레이어 높이를 가지며 일반적인 레이어 선과 출력 품질을 가져옵니" +"다. 대부분의 일반적인 출력 케이스에 적합합니다." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"0.4mm 노즐의 기본 프로파일과 비교하여 더 많은 벽 루프와 더 높은 성긴 채우기 " +"밀도를 갖습니다. 따라서 출력 강도는 높아지지만 필라멘트 소비가 늘어나고 출력 " +"시간이 길어집니다." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"0.4mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 크고 레이어 라인이 더 " +"뚜렷해지고 출력 품질이 낮아지지만 출력 시간은 약간 짧아집니다." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"0.4mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 크고 레이어 라인이 더 " +"뚜렷해지고 출력 품질이 낮아지지만 출력 시간은 짧아집니다." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"0.4mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 작아서 레이어 선이 덜 " +"뚜렷하고 출력 품질이 높아지지만 출력 시간은 길어집니다." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"0.4mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 작고 속도와 가속도가 " +"낮으며 성긴 채우기 패턴은 자이로이드입니다. 따라서 레이어 선이 덜 뚜렷해지고 " +"출력 품질이 훨씬 높아지지만 출력 시간은 훨씬 길어집니다." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"0.4mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 작아 레이어 라인이 거" +"의 무시할 수 있고 출력 품질이 높아지지만 출력 시간은 길어집니다." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"0.4mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 작고 속도와 가속도가 " +"낮으며 성긴 채우기 패턴은 자이로이드입니다. 따라서 레이어 라인은 거의 무시할 " +"수 있고 출력 품질은 훨씬 높지만 출력 시간은 훨씬 길어집니다." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"0.4mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 작아서 레이어 라인을 " +"거의 무시할 수 있고 출력 시간이 길어집니다." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"레이어 높이가 커서 레이어 선이 뚜렷이 보이고 출력 품질과 출력 시간이 보통입니" +"다." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"0.6mm 노즐의 기본 프로파일과 비교하여 더 많은 벽 루프와 더 높은 성긴 채우기 " +"밀도를 갖습니다. 따라서 출력 강도는 높아지지만 필라멘트 소비가 늘어나고 출력 " +"시간이 길어집니다." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"0.6mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 크고 레이어 라인이 더 " +"뚜렷해지고 출력 품질이 낮아지지만 일부 출력의 경우 출력 시간이 짧아집니다." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"0.6mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 크고 레이어 라인이 훨" +"씬 더 뚜렷해지고 출력 품질이 훨씬 낮아지지만 일부 출력의 경우 출력 시간이 짧" +"아집니다." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"0.6mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 작아서 레이어 선이 덜 " +"뚜렷해지고 출력 품질이 약간 높아지지만 출력 시간은 길어집니다." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"0.6mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 작아서 레이어 선이 덜 " +"뚜렷하고 출력 품질이 높아지지만 출력 시간이 길어집니다." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"레이어 높이가 매우 커서 레이어 선이 매우 뚜렷하고 출력 품질이 낮으며 일반적" +"인 출력 시간이 소요됩니다." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"0.8mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 크고 레이어 라인이 매" +"우 뚜렷해지고 출력 품질이 훨씬 낮아지지만 일부 출력의 경우 출력 시간이 짧아집" +"니다." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"0.8mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 훨씬 더 크고 레이어 라인" +"이 매우 뚜렷해지고 출력 품질이 훨씬 낮아지지만 일부 출력의 경우 출력 시간이 " +"훨씬 짧아집니다." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"0.8mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 약간 더 작아서 약간 적지" +"만 여전히 뚜렷한 레이어 라인이 나타나고 출력 품질이 약간 높아지지만 일부 출력" +"의 경우 출력 시간이 길어집니다." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"0.8mm 노즐의 기본 프로파일과 비교하면 레이어 높이가 더 작아서 레이어 선은 적" +"지만 여전히 뚜렷하고 출력 품질은 약간 높지만 일부 출력의 경우 출력 시간이 길" +"어집니다." + +msgid "Connected to Obico successfully!" +msgstr "Obico에 성공적으로 연결되었습니다!" + +msgid "Could not connect to Obico" +msgstr "Obico에 연결할 수 없습니다" + +msgid "Connected to SimplyPrint successfully!" +msgstr "SimplyPrint에 성공적으로 연결되었습니다!" + +msgid "Could not connect to SimplyPrint" +msgstr "SimplyPrint에 연결할 수 없습니다" + +msgid "Internal error" +msgstr "내부 오류" + +msgid "Unknown error" +msgstr "알 수 없는 오류" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" +"SimplyPrint 계정이 연결되지 않았습니다. 연결 옵션으로 이동하여 설정합니다." + +msgid "Connection to Flashforge works correctly." +msgstr "플래시포지 연결이 정상적으로 작동합니다." + +msgid "Could not connect to Flashforge" +msgstr "플래시포지 연결할 수 없음" + +msgid "The provided state is not correct." +msgstr "제공된 상태가 올바르지 않습니다." + +msgid "Please give the required permissions when authorizing this application." +msgstr "이 애플리케이션을 승인할 때 필요한 권한을 부여하세요." + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" +"로그인을 시도하는 동안 예기치 않은 문제가 발생했습니다. 다시 시도해 주세요." + +msgid "User cancelled." +msgstr "사용자가 취소했습니다." + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"정밀한 벽\n" +"정밀한 벽을 켜면 정밀도와 레이어 일관성이 향상될 수 있다는 사실을 알고 계셨나" +"요?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"샌드위치 모드\n" +"모델에 가파른 돌출부가 없는 경우 샌드위치 모드(내부-외부-내부)를 사용하여 정" +"밀도와 레이어 일관성을 향상시킬 수 있다는 것을 알고 계셨나요?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"챔버 온도\n" +"Snapmaker Orca가 챔버 온도 설정을 지원한다는 사실을 알고 계셨나요?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"보정\n" +"프린터를 보정하면 놀라운 효과를 얻을 수 있다는 사실을 알고 계셨나요? 많은 사" +"랑을 받고 있는 Snapmaker Orca의 보정 솔루션을 확인해 보세요." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"보조 팬\n" +"오르카슬라이서가 보조 부품 냉각 팬을 지원한다는 사실을 알고 계셨나요?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"공기 여과/배기 팬\n" +"오르카 슬라이서가 공기 여과/배기 팬을 지원한다는 사실을 알고 계셨나요?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"G코드 창\n" +"C 키를 눌러 G코드 창을 켜거나 끌 수 있습니다." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"작업 공간 전환\n" +"Tab 키를 눌러 준비 작업 공간과 미리 보기 작업 공간 사이" +"를 전환할 수 있습니다." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"키보드 단축키를 사용하는 방법\n" +"Snapmaker Orca는 다양한 키보드 단축키와 3D 장면 작업을 제공합니다." + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"홀수에 반전\n" +"홀수에 반전 기능이 오버행의 표면 품질을 크게 향상시킬 수 있다는 사실" +"을 알고 계셨나요?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"절단 도구\n" +"절단 도구로 원하는 각도와 위치에서 모델을 자를 수 있다는 사실을 알고 계셨나" +"요?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"모델 수정\n" +"Windows 시스템에서 많은 슬라이싱 문제를 피하기 위해 손상된 3D 모델을 수정할 " +"수 있다는 것을 알고 계섰나요?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"타임랩스\n" +"각 출력 중에 타임랩스 비디오를 생성할 수 있다는 것을 알고 계섰나요?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"자동 정렬\n" +"프로젝트의 모든 개체를 자동 정렬할 수 있다는 것을 알고 계섰나요?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"자동 방향 지정\n" +"간단한 클릭만으로 개체를 최적의 출력 방향으로 회전할 수 있다는 것을 알고 계셨" +"나요?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"면에 위치\n" +"모델의 바닥 표면을 빠르게 지정하여 출력 베드에 놓을 수 있다는 것을 알고 계셨" +"나요? 면에 배치 기능을 선택하십시오. 또는F 키를 누르세요." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"개체 목록\n" +"목록의 모든 개체/부품을 보고 각 개체/부품에 대한 설정을 변경할 수 있다는 것" +"을 알고 계섰나요?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"검색 기능\n" +"검색 도구를 사용하여 원하는 Snapmaker Orca 설정을 빠르게 찾을 수 있다는 사실을 " +"알고 계섰나요?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"모델 단순화\n" +"메쉬 단순화 기능을 사용하여 메쉬의 삼각형 수를 줄일 수 있다는 것을 알고 계셨" +"나요? 모델을 마우스 오른쪽 버튼으로 클릭하고 모델 단순화를 선택하세요." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"슬라이싱 매개변수 테이블\n" +"테이블의 모든 개체/부품을 보고 각 개체/부품에 대한 설정을 변경할 수 있다는 것" +"을 알고 계섰나요?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"개체/부품으로 분할\n" +"쉽게 색칠하거나 출력하기 위해 큰 개체를 작은 개체로 나눌 수 있다는 것을 알고 " +"계섰나요?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"부품 빼기\n" +"네거티브 부분 수정자를 사용하여 하나의 메시를 다른 메시에서 뺄 수 있다는 것" +"을 알고 계섰나요? 예를 들어, 이렇게 하면 Snapmaker Orca에서 직접 쉽게 크기 조정" +"이 가능한 구멍을 만들 수 있습니다." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP\n" +"STL 대신 STEP 파일을 슬라이싱하여 출력 품질을 향상시킬 수 있다는 사실을 알고 " +"계섰나요?\n" +"Snapmaker Orca는 STEP 파일 슬라이싱을 지원하며, 저해상도 STL을 사용할 때 보다 " +"더 부드러운 결과를 얻을 수 있습니다. 시도해 보세요!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Z 솔기 위치\n" +"Z 솔기의 위치를 사용자 정의하고 출력물에 칠하여 잘 보이지 않는 위치에 배치할 " +"수 있다는 사실을 알고 계섰나요? 이렇게 하면 모델의 전반적인 모양이 향상됩니" +"다. 확인해 보세요!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"유량 미세 조정\n" +"더 보기 좋은 출력물을 위해 유량을 미세 조정할 수 있다는 사실을 알고 계셨나" +"요? 재료에 따라 약간의 미세 조정을 통해 출력된 모델의 전체적인 마감을 개선할 " +"수 있습니다." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"출력을 플레이트로 분할\n" +"부품이 많은 모델을 출력할 준비가 된 개별 플레이트로 분할할 수 있다는 사실을 " +"알고 계섰나요? 이렇게 하면 모든 부품을 추적하는 프로세스가 간소화됩니다." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"적응형 레이어 높이로 출력 속도를 높이세요\n" +"적응형 레이어를 사용하면 모델을 더욱 빠르게 프린트할 수 있다는 사실을 알고 계" +"셨나요? 레이어 높이 옵션을 확인해 보세요!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"지지대 칠하기\n" +"지지대의 위치를 칠할 수 있다는 것을 알고 계섰나요? 이 기능을 사용하면 실제로 " +"필요한 모델 부위에만 지지대 재료를 쉽게 배치할 수 있습니다." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"다양한 유형의 지지대\n" +"여러 유형의 지지대 중에서 선택할 수 있다는 것을 알고 계섰나요? 나무 지지대는 " +"필라멘트를 절약하고 출력 속도를 향상시키면서 유기 모델에 적합합니다. 확인해 " +"보세요!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"실크 필라멘트 출력\n" +"실크 필라멘트를 성공적으로 출력하려면 특별한 주의가 필요하다는 사실을 알고 계" +"셨나요? 최상의 결과를 얻으려면 항상 더 높은 온도와 더 낮은 속도를 권장합니다." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"접착력이 더 좋아지는 브림\n" +"모델을 출력할 때 베드 표면과의 접촉면이 작을 경우 브림을 사용하는 것이 권장된" +"다는 사실을 알고 계섰나요?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"여러 개체에 대한 매개변수 설정\n" +"선택한 모든 개체에 대한 슬라이싱 매개변수를 한 번에 설정할 수 있다는 사실을 " +"알고 계섰나요?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"개체 쌓기\n" +"물건을 통째로 쌓을 수 있다는 사실을 알고 계섰나요?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"지지대/개체/채우기에 내보내기\n" +"필라멘트를 교체하는 동안 낭비되는 필라멘트를 지지대/개체/채우기 출력에 활용" +"할 수 있다는 사실을 알고 계섰나요?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"강도 향상\n" +"더 많은 외벽과 더 높은 드문 채우기 밀도를 사용하여 모델의 강도를 높일 수 있다" +"는 사실을 알고 계섰나요?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"프린터 도어를 연 상태로 출력해야 하는 경우\n" +"더 높은 프린터 내부 온도로 낮은 온도의 필라멘트를 출력할 때 프린터 도어를 열" +"면 압출기/핫엔드가 막힐 가능성을 줄일 수 있다는 것을 알고 계섰나요? 이에 대" +"한 자세한 내용은 Wiki에서 확인하세요." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"뒤틀림 방지\n" +"ABS와 같이 뒤틀림이 발생하기 쉬운 소재를 출력할 때, 히트베드 온도를 적절하게 " +"높이면 뒤틀림 가능성을 줄일 수 있다는 사실을 알고 계셨나요?" + +#~ msgid "up to" +#~ msgstr "까지" + +#~ msgid "above" +#~ msgstr "위에" + +#~ msgid "from" +#~ msgstr "부터" + +#~ msgid "Switching application language while some presets are modified." +#~ msgstr "일부 사전 설정이 수정되는 동안 응용 프로그램 언어를 전환합니다." + +#~ msgid "⌘+Shift+G" +#~ msgstr "⌘+Shift+G" + +#~ msgid "Ctrl+Shift+G" +#~ msgstr "Ctrl+Shift+G" + +#~ msgid "⌘+Any arrow" +#~ msgstr "⌘+아무 화살표" + +#~ msgid "⌥+Left mouse button" +#~ msgstr "⌥+마우스 왼쪽 버튼" + +#~ msgid "⌘+Left mouse button" +#~ msgstr "⌘+마우스 왼쪽 버튼" + +#~ msgid "Ctrl+Any arrow" +#~ msgstr "Ctrl+화살표" + +#~ msgid "Alt+Left mouse button" +#~ msgstr "Alt+마우스 왼쪽 버튼" + +#~ msgid "Ctrl+Left mouse button" +#~ msgstr "Ctrl+마우스 왼쪽 버튼" + +#~ msgid "⌘+Mouse wheel" +#~ msgstr "⌘+마우스 휠" + +#~ msgid "⌥+Mouse wheel" +#~ msgstr "⌥+마우스 휠" + +#~ msgid "Ctrl+Mouse wheel" +#~ msgstr "Ctrl+마우스 휠" + +#~ msgid "Alt+Mouse wheel" +#~ msgstr "Alt+마우스 휠" + +#~ msgid "" +#~ "Different nozzle diameters and different filament diameters is not " +#~ "allowed when prime tower is enabled." +#~ msgstr "" +#~ "다른 노즐 직경과 다른 필라멘트 직경은 허용되지 않습니다.프라임 타워가 활성" +#~ "화되면." + +#~ msgid "" +#~ "Ooze prevention is currently not supported with the prime tower enabled." +#~ msgstr "" +#~ "현재 프라임 타워가 활성화된 상태에서는 누출 방지가 지원되지 않습니다." + +#~ msgid "" +#~ "Interlocking depth of a segmented region. Zero disables this feature." +#~ msgstr "분할된 영역의 깊이를 연동합니다. 0은 이 기능을 비활성화합니다." + +#~ msgid "Wipe tower extruder" +#~ msgstr "닦기 타워 압출기" + +#~ msgid "" +#~ "File size exceeds the 100MB upload limit. Please upload your file through " +#~ "the panel." +#~ msgstr "" +#~ "파일 크기가 업로드 제한인 100MB를 초과했습니다. 패널을 통해 파일을 업로드" +#~ "하세요." + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "유효한 값을 입력하세요(K는 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "유효한 값을 입력하세요(K는 0~0.3, N은 0.6~2.0)" + +#~ msgid "Select connected printetrs (0/6)" +#~ msgstr "연결된 프린터 선택(0/6)" + +#, c-format, boost-format +#~ msgid "Select Connected Printetrs (%d/6)" +#~ msgstr "연결된 프린터 (%d/6)를 선택합니다" + +#~ msgid "PrintingPause" +#~ msgstr "인쇄 일시 중지" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "프린터 로컬 연결에 실패했습니다. 다시 시도하세요." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "우리 위키에서 동적 유량 교정에 대한 자세한 내용을 찾아보세요.\n" +#~ "\n" +#~ "일반적으로 교정은 필요하지 않습니다. 출력 시작 메뉴에서 \"동적 유량 교정" +#~ "\" 옵션을 선택한 상태에서 단일 색상/재료 출력을 시작하면 프린터는 이전 방" +#~ "식을 따르며 출력 전에 필라멘트를 교정합니다. 다중 색상/재료 출력을 시작하" +#~ "면 프린터는 모든 필라멘트 전환 중에 필라멘트에 대한 기본 보상 매개변수를 " +#~ "사용하므로 대부분의 경우 좋은 결과를 얻을 수 있습니다.\n" +#~ "\n" +#~ "교정 결과를 신뢰할 수 없게 만드는 몇 가지 경우가 있습니다. 텍스처 플레이트" +#~ "를 사용하여 보정을 수행합니다. 빌드 플레이트의 접착력이 좋지 않습니다. (빌" +#~ "드 플레이트를 세척하거나 풀을 바르십시오!) ...위키에서 자세한 내용을 확인" +#~ "할 수 있습니다.\n" +#~ "\n" +#~ "테스트에서 교정 결과에는 약 10%의 오차가 있으며, 이로 인해 각 교정에서 결" +#~ "과가 정확히 동일하지 않을 수 있습니다. 새로운 업데이트로 개선하기 위해 근" +#~ "본 원인을 계속 조사하고 있습니다." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "동일한 이름을 가진 결과 중 하나만 저장됩니다. 다른 결과에 덮어쓰겠습니까?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "동일한 이름을 가진 교정 기록 결과가 이미 있습니다: %s. 동일한 이름의 결과 " +#~ "중 하나만 저장됩니다. 과거 결과에 덮어쓰겠습니까?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "완벽한 압출각도를 가진 모서리를 찾아주세요" + +#~ msgid "X" +#~ msgstr "X" + +#~ msgid "Y" +#~ msgstr "Y" + +#~ msgid "" +#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed " +#~ "first, which works best in most cases.\n" +#~ "\n" +#~ "Printing walls first may help with extreme overhangs as the walls have " +#~ "the neighbouring infill to adhere to. However, the infill will slighly " +#~ "push out the printed walls where it is attached to them, resulting in a " +#~ "worse external surface finish. It can also cause the infill to shine " +#~ "through the external surfaces of the part." +#~ msgstr "" +#~ "벽/채우기 순서. 확인란을 선택 취소하면 벽이 먼저 출력되며 이는 대부분의 경" +#~ "우 가장 잘 작동합니다.\n" +#~ "\n" +#~ "벽에 접착할 이웃 충전재가 있으므로 벽을 먼저 출력하면 과도한 돌출부에 도움" +#~ "이 될 수 있습니다. 그러나 충전재는 출력된 벽이 부착된 부분을 약간 밀어내" +#~ "어 외부 표면 마감이 더 나빠집니다. 또한 충전재가 부품의 외부 표면을 통해 " +#~ "빛날 수도 있습니다." + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca는 Prusa Research의 PrusaSlicer에서 나온 뱀부랩의 BambuStudio" +#~ "를 기반으로 합니다. PrusaSlicer는 Alessandro Ranellucci와 RepRap 커뮤니티" +#~ "의 Slic3r에서 제작되었습니다" + +#~ msgid "Export &Configs" +#~ msgstr "설정 내보내기 (&C)" + +#~ msgid "" +#~ "Over 4 systems/handy are using remote access, you can close some and try " +#~ "again." +#~ msgstr "" +#~ "4개 이상의 시스템/핸디가 원격 액세스를 사용하고 있습니다. 일부 시스템을 닫" +#~ "고 다시 시도할 수 있습니다." + +#~ msgid "Infill direction" +#~ msgstr "채우기 방향" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "G2 및 G3 이동(원호 기반 G코드)이 있는 G코드 파일을 가져오려면 이 기능을 활" +#~ "성화합니다. 피팅 공차는 해상도와 동일합니다" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "채우기 영역이 벽과 겹치도록 약간 확장되어 접착력이 향상됩니다. 드문 채우" +#~ "기 선 너비의 백분율 값입니다" + +#~ msgid "Export Configs" +#~ msgstr "구성 내보내기" + +#~ msgid "Unload Filament" +#~ msgstr "필라멘트 언로드" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "AMS 슬롯을 선택한 후 \"넣기\" 또는 \"빼기\" 버튼을 눌러 필라멘트를 자동으" +#~ "로 넣거나 뺍니다." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "메인보드" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "- ℃" +#~ msgstr "- ℃" + +#~ msgid "0.5" +#~ msgstr "0.5" + +#~ msgid "0.005" +#~ msgstr "0.005" + +#~ msgid "active" +#~ msgstr "활성화" + +#~ msgid "Jump to layer" +#~ msgstr "다음 레이어로 이동" + +#~ msgid "Cabin humidity" +#~ msgstr "AMS 습도" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "녹색은 AMS 습도가 정상임을 의미하고 주황색은 습도가 높음을 나타내고 빨간색" +#~ "은 습도가 너무 높음을 나타냅니다.(습도계: 낮을수록 좋습니다.)" + +#~ msgid "Desiccant status" +#~ msgstr "건조제 상태" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "건조제 상태가 두 개의 막대보다 낮을 경우 건조제가 비활성 상태일 수 있음을 " +#~ "나타냅니다. 건조제를 교체해 주세요.(막대: 높을수록 좋습니다.)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "참고: 뚜껑이 열려 있거나 건조제 팩을 교체한 경우 수분을 흡수하는 데 몇 시" +#~ "간 또는 하룻밤이 걸릴 수 있습니다. 온도가 낮으면 흡수 속도도 느려집니다. " +#~ "이 시간 동안 표시기가 챔버를 정확하게 나타내지 못할 수 있습니다." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "참고: 출력 중에 새 필라멘트를 삽입하면 출력이 완료될 때까지 AMS가 자동으" +#~ "로 어떤 정보도 읽지 않습니다." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "G코드를 %1%로 내보내기 성공" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "초기화 실패 (장치 없음)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "초기화 실패 (카메라 없음)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "프린터가 다운로드 중입니다. 다운로드가 완료될 때까지 기다리십시오." + +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "초기화 실패(현재 프린터 버전에서는 지원되지 않음)!" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "초기화 실패 (LAN 전용 모드에서는 액세스할 수 없음)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "초기화 실패 (프린터의 LAN IP 누락)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "[%d] 중지됨!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "[%d] 로드 실패!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "파일 없음 [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "로드 실패 [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "프린터에서 모델 정보를 가져오지 못했습니다." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "모델 정보를 해석하지 못했습니다." + +#~ msgid "Connection lost. Please retry." +#~ msgstr "연결이 끊어졌습니다. 다시 시도해 주세요." + +#~ msgid "File not exists." +#~ msgstr "파일이 존재하지 않습니다." + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "사전 설정 \"%1%\"의 일부 설정을 변경했습니다.\n" +#~ "사전 설정 전환 후 변경된 설정(새 값)을 유지하시겠습니까?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "일부 사전 설정을 변경했습니다.\n" +#~ "사전 설정 전환 후 변경된 설정(새 값)을 유지하시겠습니까?" + +#~ msgid " ℃" +#~ msgstr " ℃" + +#~ msgid "" +#~ "Please go to filament setting to edit your presets if you need.\n" +#~ "Please note that nozzle temperature, hot bed temperature, and maximum " +#~ "volumetric speed have a significant impact on printing quality. Please " +#~ "set them carefully." +#~ msgstr "" +#~ "필요한 경우 필라멘트 설정으로 이동하여 사전 설정을 편집하세요.\n" +#~ "노즐 온도, 핫베드 온도 및 최대 체적 속도는 출력 품질에 큰 영향을 미칩니" +#~ "다. 신중하게 설정해 주세요." + +#~ msgid "Studio Version:" +#~ msgstr "스튜디오 버전:" + +#~ msgid "Test BambuLab" +#~ msgstr "테스트 뱀부랩" + +#~ msgid "Test BambuLab:" +#~ msgstr "테스트 뱀부랩:" + +#~ msgid "Test HTTP" +#~ msgstr "테스트 HTTP" + +#~ msgid "Test HTTP Service:" +#~ msgstr "테스트 HTTP 서비스:" + +#~ msgid "Test storage" +#~ msgstr "테스트 저장소" + +#~ msgid "Test Storage Upload:" +#~ msgstr "테스트 저장소 업로드:" + +#~ msgid "Test storage upgrade" +#~ msgstr "테스트 저장소 업그레이드" + +#~ msgid "Test Storage Upgrade:" +#~ msgstr "테스트 저장소 업그레이드:" + +#~ msgid "Test storage download" +#~ msgstr "테스트 저장소 다운로드" + +#~ msgid "Test Storage Download:" +#~ msgstr "테스트 저장소 다운로드:" + +#~ msgid "Test plugin download" +#~ msgstr "테스트 플러그인 다운로드" + +#~ msgid "Test Plugin Download:" +#~ msgstr "테스트 플러그인 다운로드:" + +#~ msgid "Test Storage Upload" +#~ msgstr "테스트 저장소 업로드" + +#~ msgid "" +#~ "The speed setting exceeds the printer's maximum speed " +#~ "(machine_max_speed_x/machine_max_speed_y).\n" +#~ "Orca will automatically cap the print speed to ensure it doesn't surpass " +#~ "the printer's capabilities.\n" +#~ "You can adjust the maximum speed setting in your printer's configuration " +#~ "to get higher speeds." +#~ msgstr "" +#~ "속도 설정이 프린터의 최대 속도(machine_max_speed_x/machine_max_speed_y)를 " +#~ "초과합니다.\n" +#~ "Orca는 인쇄 속도가 프린터의 성능을 초과하지 않도록 자동으로 제한합니다.\n" +#~ "더 빠른 속도를 얻으려면 프린터 구성에서 최대 속도 설정을 조정할 수 있습니" +#~ "다." + +#~ msgid "" +#~ "Alternate extra wall only works with ensure vertical shell thickness " +#~ "disabled. " +#~ msgstr "" +#~ "대체 추가 벽은 수직 쉘 두께 보장을 비활성화한 상태에서만 작동합니다. " + +#~ msgid "" +#~ "Change these settings automatically? \n" +#~ "Yes - Disable ensure vertical shell thickness and enable alternate extra " +#~ "wall\n" +#~ "No - Dont use alternate extra wall" +#~ msgstr "" +#~ "이 설정을 자동으로 변경하시겠습니까?\n" +#~ "예 - 수직 쉘 두께 확인을 비활성화하고 대체 추가 벽을 활성화합니다.\n" +#~ "아니요 - 대체 추가 벽을 사용하지 마세요" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "경사진 표면 근처에 꽉찬 내부 채우기를 추가하여 수직 쉘 두께를 보장합니다 " +#~ "(상단+하단 꽉찬 레이어)" + +#~ msgid " " +#~ msgstr " " + +#~ msgid "Text-Rotate" +#~ msgstr "텍스트 회전" + +#~ msgid "SVG-Rotate" +#~ msgstr "SVG-회전" + +#~ msgid "Resize" +#~ msgstr "크기 조정" + +#~ msgid "Configuration package updated to " +#~ msgstr "다음으로 업데이트된 구성 패키지 " + +#~ msgid "" +#~ "Improve shell precision by adjusting outer wall spacing. This also " +#~ "improves layer consistency." +#~ msgstr "" +#~ "외벽 간격을 조정하여 쉘 정밀도를 향상시킵니다. 이는 또한 레이어 일관성을 " +#~ "향상시킵니다." + +#~ msgid "" +#~ "The minimum printing speed for the filament when slow down for better " +#~ "layer cooling is enabled, when printing overhangs and when feature speeds " +#~ "are not specified explicitly." +#~ msgstr "" +#~ "보다 나은 레이어 냉각을 위해 속도를 늦출 때, 돌출부 출력 속도가 명시적으" +#~ "로 지정되지 않은 경우 필라멘트의 최소 출력 속도가 활성화됩니다." + +#~ msgid "No sparse layers (EXPERIMENTAL)" +#~ msgstr "드문 레이어 없음(실험적)" + +#~ msgid "" +#~ "We would rename the presets as \"Vendor Type Serial @printer you selected" +#~ "\". \n" +#~ "To add preset for more prinetrs, Please go to printer selection" +#~ msgstr "" +#~ "사전 설정의 이름을 \"선택한 공급업체 유형 직렬 @프린터\"로 변경합니다.\n" +#~ "더 많은 프린터에 대한 사전 설정을 추가하려면 프린터 선택으로 이동하세요" + +#~ msgid "The Config can not be loaded." +#~ msgstr "구성을 로드할 수 없습니다." + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "이 3mf는 이전 Snapmaker Orca에서 생성되었으며, 형상 데이터만 로드합니다." + +#~ msgid "wiki" +#~ msgstr "위키" + +#~ msgid "" +#~ "Relative extrusion is recommended when using \"label_objects\" option." +#~ "Some extruders work better with this option unckecked (absolute extrusion " +#~ "mode). Wipe tower is only compatible with relative mode. It is always " +#~ "enabled on BambuLab printers. Default is checked" +#~ msgstr "" +#~ "상대적 압출은 \"label_objects\" 옵션(기타; 개체 이름표)을 사용할 때 권장됩" +#~ "니다. 일부 압출기는 이 옵션을 해제하면 더 잘 작동합니다(절대 압출 모드). " +#~ "닦기 타워는 상대 모드에서만 호환됩니다" + +#~ msgid "Movement:" +#~ msgstr "이동:" + +#~ msgid "Movement" +#~ msgstr "이동" + +#~ msgid "Auto Segment" +#~ msgstr "자동 분할" + +#~ msgid "Depth ratio" +#~ msgstr "깊이 비율" + +#~ msgid "Prizm" +#~ msgstr "원기둥" + +#~ msgid "connector is out of cut contour" +#~ msgstr "커넥터가 잘라내기 윤곽을 벗어났습니다" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "커넥터가 잘라내기 윤곽을 벗어났습니다" + +#~ msgid "connector is out of object" +#~ msgstr "커넥터가 개체에서 벗어났습니다" + +#~ msgid "connectors is out of object" +#~ msgstr "커넥터가 개체에서 벗어났습니다" + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "잘못된 상태입니다.\n" +#~ "절단 후 유지를 위해 선택된 부품이 없습니다" + +#~ msgid "Recalculate" +#~ msgstr "다시계산" + +#~ msgid "" +#~ "Orca recalculates your flushing volumes everytime the filament colors " +#~ "change. You can change this behavior in Preferences." +#~ msgstr "" +#~ "Snapmaker Orca는 필라멘트 색상이 바뀔 때마다 플러싱 볼륨을 다시 계산합니다. " +#~ "환경 설정에서 이 동작을 변경할 수 있습니다." + +#~ msgid "" +#~ "The printer timed out while receiving a print job. Please check if the " +#~ "network is functioning properly and send the print again." +#~ msgstr "" +#~ "프린터가 인쇄 작업을 수신하는 동안 시간이 초과되었습니다.네트워크가 제대" +#~ "로 작동하는지 확인하고 인쇄를 다시 보내십시오." + +#~ msgid "The beginning of the vendor can not be a number. Please re-enter." +#~ msgstr "공급업체의 시작 부분은 숫자일 수 없습니다. 다시 입력해 주세요." + +#~ msgid "Edit Text" +#~ msgstr "텍스트 편집" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "오류! 스레드를 만들 수 없습니다!" + +#~ msgid "Exception" +#~ msgstr "예외" + +#~ msgid "Choose SLA archive:" +#~ msgstr "SLA 압축파일 선택:" + +#~ msgid "Import file" +#~ msgstr "파일 가져오기" + +#~ msgid "Import model and profile" +#~ msgstr "모델과 파일 가져오기" + +#~ msgid "Import profile only" +#~ msgstr "프로필만 가져오기" + +#~ msgid "Import model only" +#~ msgstr "모델만 가져오기" + +#~ msgid "Accurate" +#~ msgstr "정밀한" + +#~ msgid "Balanced" +#~ msgstr "균형 잡힌" + +#~ msgid "Quick" +#~ msgstr "빠른" + +#~ msgid "Print sequence of inner wall and outer wall. " +#~ msgstr "내벽과 외벽의 순서를 인쇄합니다." + +#~ msgid "Order of wall/infill. false means print wall first. " +#~ msgstr "벽/채우기 순서. false는 벽을 먼저 인쇄한다는 의미입니다." + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "퇴출 시 노즐이 마지막 경로를 따라 이동하는 거리" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "모델 단순화\n" +#~ "메쉬 단순화 기능을 사용하여 메쉬의 삼각형 수를 줄일 수 있다는 사실을 알고 " +#~ "있습니까? 모델을 마우스 오른쪽 버튼으로 클릭하고 모델 단순화를 선택합니" +#~ "다. 자세한 내용은 설명서를 참조하십시오." + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "부품 비우기\n" +#~ "네거티브 부분 수정자를 사용하여 하나의 메시를 다른 메시에서 뺄 수 있다는 " +#~ "것을 알고 계셨습니까? 예를 들어, 이렇게 하면 Snapmaker Orca에서 직접 쉽게 크" +#~ "기 조정이 가능한 구멍을 만들 수 있습니다. 설명서에서 자세한 내용을 읽어보" +#~ "세요." + +#~ msgid "Filling bed " +#~ msgstr "베드 채우기 " + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "%1% 내부 채우기 패턴은 100%% 밀도를 지원하지 않습니다." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "직선 패턴으로 전환하시겠습니까?\n" +#~ "예 - 자동으로 직선 패턴으로 전환합니다\n" +#~ "아니요 - 밀도를 기본값(100%가 아닌 값)으로 자동 재설정합니다" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "필라멘트를 로드하기 전에 노즐을 170도 이상으로 가열하십시오." + +#~ msgid "Show g-code window" +#~ msgstr "G코드 창 표시" + +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "활성화된 경우 G코드 창이 표시됩니다." + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "" +#~ "내부 드문 내부 채우기 밀도, 100은 전체가 꽉찬 내부 채우기임을 의미합니다" + +#~ msgid "Tree support wall loops" +#~ msgstr "나무 지지대 벽 루프" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "이 설정은 나무 지지대의 벽 수를 지정합니다" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " 100%% 밀도에서 작동하지 않음 " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "바닥면 선택 도구" + +#~ msgid "Export as STL" +#~ msgstr "STL로 내보내기" + +#~ msgid "Check cloud service status" +#~ msgstr "클라우드 서비스 상태 확인" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "올바른 값을 입력하십시오 (K: 0~0.5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "올바른 값을 입력하십시오 (K: 0~0.5, N: 0.6~2.0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "모든 개체를 STL로 내보내기" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "이 3mf는 호환되지 않습니다. 형상 데이터만 로드합니다!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "호환되지 않는 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "프린터 추가/제거" + +#~ msgid "" +#~ "When print by object, machines with I3 structure will not generate " +#~ "timelapse videos." +#~ msgstr "" +#~ "개체별로 출력할 때 I3 구조의 장치는 타임랩스 비디오를 생성하지 않습니다." + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s은(는) AMS에서 지원하지 않습니다." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "이 버전을 다시 알리지 않음" + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "오류: IP 또는 액세스 코드가 올바르지 않습니다" + +#~ msgid "" +#~ "Extrude perimeters that have a part over an overhang in the reverse " +#~ "direction on odd layers. This alternating pattern can drastically improve " +#~ "steep overhang." +#~ msgstr "" +#~ "돌출부 위의 홀수 레이어의 둘레를 반대 방향으로 압출시킵니다. 이러한 교대 " +#~ "패턴은 가파른 돌출부를 대폭 개선할 수 있습니다." + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "내벽/외벽/내부 채우기 순서" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "내벽, 외벽 및 내부 채우기 출력 순서 " + +#~ msgid "inner/outer/infill" +#~ msgstr "내벽/외벽/내부 채우기" + +#~ msgid "outer/inner/infill" +#~ msgstr "외벽/내벽/내부 채우기" + +#~ msgid "infill/inner/outer" +#~ msgstr "내부 채우기/내벽/외벽" + +#~ msgid "infill/outer/inner" +#~ msgstr "내부 채우기/외벽/내벽" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "내벽-외벽-내벽/내부 채우기" + +#, c-format, boost-format +#~ msgid "%%" +#~ msgstr "%%" + +#~ msgid "Export 3MF" +#~ msgstr "3MF 내보내기" + +#~ msgid "Export project as 3MF." +#~ msgstr "프로젝트를 3MF로 내보내기." + +#~ msgid "Export slicing data" +#~ msgstr "슬라이싱 데이터 내보내기" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "슬라이싱 데이터 폴더로 내보내기." + +#~ msgid "Load slicing data" +#~ msgstr "슬라이싱 데이터 로드" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "디렉토리에 캐시된 슬라이싱 데이터 로드" + +#~ msgid "Export STL" +#~ msgstr "STL 내보내기" + +#~ msgid "Export the objects as multiple STL." +#~ msgstr "개체를 여러개의 STL로 내보내기." + +#~ msgid "Slice" +#~ msgstr "슬라이스" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "플레이트 슬라이스: 0-모든 플레이트, i-플레이트 i, 기타-잘못됨" + +#~ msgid "Show command help." +#~ msgstr "명령 도움말을 표시합니다." + +#~ msgid "UpToDate" +#~ msgstr "최신 정보" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "3mf의 구성 값을 최신으로 업데이트합니다." + +#~ msgid "Load default filaments" +#~ msgstr "기본 필라멘트 로드" + +#~ msgid "Load first filament as default for those not loaded" +#~ msgstr "로드되지 않은 경우 기본값으로 첫 번째 필라멘트 로드" + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "슬라이싱을 위한 플레이트당 최대 삼각형 개수." + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "플레이트당 최대 슬라이싱 시간(초)" + +#~ msgid "Normative check" +#~ msgstr "표준 검사" + +#~ msgid "Check the normative items." +#~ msgstr "표준 항목을 확인합니다." + +#~ msgid "Output Model Info" +#~ msgstr "모델 정보 출력" + +#~ msgid "Output the model's information." +#~ msgstr "모델 정보를 출력합니다." + +#~ msgid "Export Settings" +#~ msgstr "설정 내보내기" + +#~ msgid "Export settings to a file." +#~ msgstr "설정을 파일로 내보내기." + +#~ msgid "Send progress to pipe" +#~ msgstr "진행 상황을 파이프로 보내기" + +#~ msgid "Send progress to pipe." +#~ msgstr "진행 상황을 파이프로 보내기." + +#~ msgid "Arrange Options" +#~ msgstr "정렬 옵션" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "정렬 옵션: 0-사용 안 함, 1-사용, 기타-자동" + +#~ msgid "Repetions count" +#~ msgstr "반복 횟수" + +#~ msgid "Repetions count of the whole model" +#~ msgstr "전체 모델의 반복 횟수" + +#~ msgid "Convert Unit" +#~ msgstr "단위 변환" + +#~ msgid "Convert the units of model" +#~ msgstr "모델의 단위를 변환" + +#~ msgid "Rotate around X" +#~ msgstr "X를 중심으로 회전" + +#~ msgid "Rotation angle around the X axis in degrees." +#~ msgstr "X축을 중심으로 한 회전 각도입니다." + +#~ msgid "Scale the model by a float factor" +#~ msgstr "부동 소수점 계수로 모델 크기 조정" + +#~ msgid "Load General Settings" +#~ msgstr "일반 설정 로드" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "지정된 파일에서 프로세스/기계 설정 로드" + +#~ msgid "Load Filament Settings" +#~ msgstr "필라멘트 설정 로드" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "지정된 파일 목록에서 필라멘트 설정 불러오기" + +#~ msgid "Skip Objects" +#~ msgstr "개체 건너뛰기" + +#~ msgid "Skip some objects in this print" +#~ msgstr "이 출력에서 일부 개체를 건너뜁니다" + +#~ msgid "load uptodate process/machine settings when using uptodate" +#~ msgstr "uptodate 사용 시 최신 프로세스/프린터 설정 로드" + +#~ msgid "" +#~ "load uptodate process/machine settings from the specified file when using " +#~ "uptodate" +#~ msgstr "" +#~ "uptodate를 사용할 때 지정된 파일에서 최신 프로세스/프린터 설정을 로드합니" +#~ "다" + +#~ msgid "Output directory" +#~ msgstr "출력 디렉토리" + +#~ msgid "Output directory for the exported files." +#~ msgstr "내보내기 파일의 출력 디렉토리입니다." + +#~ msgid "Debug level" +#~ msgstr "디버그 수준" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "디버그 로깅 수준을 설정합니다. 0:치명적, 1:오류, 2:경고, 3:정보, 4:디버" +#~ "그, 5:추적\n" + +#, boost-format +#~ msgid "The selected preset: %1% is not found." +#~ msgstr "선택한 사전 설정: %1%을(를) 찾을 수 없습니다." + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "3D 화면 작업\n" +#~ "3D 화면에서 마우스와 터치패널로 보기 및 개체/부품 선택을 제어하는 방법을 " +#~ "알고 있습니까?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "모델 수리\n" +#~ "많은 슬라이싱 문제를 피하기 위해 손상된 3D 모델을 수리할 수 있다는 것을 알" +#~ "고 있습니까?" + +#~ msgid "" +#~ "When need to print with the printer door opened\n" +#~ "Opening the printer door can reduce the probability of extruder/hotend " +#~ "clogging when printing lower temperature filament with a higher enclosure " +#~ "temperature. More info about this in the Wiki." +#~ msgstr "" +#~ "프린터 도어를 열어 놓은 상태로 출력해야 하는 경우\n" +#~ "더 높은 내부 온도로 낮은 온도의 필라멘트를 출력할 때 프린터 도어를 열면 압" +#~ "출기/핫엔드가 막힐 가능성을 줄일 수 있습니다. 이에 대한 자세한 내용은 Wiki" +#~ "에서 확인하세요." + +#~ msgid "Embeded" +#~ msgstr "매입" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "Snapmaker Orca 구성 파일이 손상되어 구문 분석할 수 없습니다. 파일을 삭제하고 " +#~ "다시 시도하십시오." + +#~ msgid "Online Models" +#~ msgstr "온라인 모델" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "홈페이지에서 추천 온라인 모델 보기" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "\"레이어 냉각 향상을 위한 감속\" 시 최소 출력 속도" + +#~ msgid "" +#~ "There are currently no identical spare consumables available, and " +#~ "automatic replenishment is currently not possible. \n" +#~ "(Currently supporting automatic supply of consumables with the same " +#~ "brand, material type, and color)" +#~ msgstr "" +#~ "현재 동일한 예비 소모품을 사용할 수 없으며 자동 보충도 현재 불가능합니" +#~ "다.\n" +#~ "(현재 동일한 브랜드, 재질, 색상의 소모품 자동공급 지원)" + +#~ msgid "Invalid nozzle diameter" +#~ msgstr "잘못된 노즐 직경" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "베드 온도가 필라멘트의 유리화 온도를 초과합니다. 노즐 막힘을 방지하기 위" +#~ "해 출력하기 전에 프린터의 도어를 여십시오." + +#~ msgid "Activate for better air filtration" +#~ msgstr "더 나은 공기 여과를 위해 활성화하세요" + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "유리 전이 온도" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "이 온도에서는 재료가 부드러워집니다. 따라서 히트베드는 유리 전이 온도보다 " +#~ "더 뜨거울 수 없습니다" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "기계에 보조 출력물 냉각 팬이 있는 경우 이 옵션 사용" + +#~ msgid "" +#~ "This option is enabled if machine support controlling chamber temperature" +#~ msgstr "이 옵션은 장치가 챔버 온도 제어를 지원하는 경우 활성화됩니다" + +#~ msgid "Enable this if printer support air filtration" +#~ msgstr "프린터가 공기 여과를 지원하는 경우 활성화하십시오" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "보조 출력 냉각 팬의 속도입니다. 냉각 중지 레이어로 정의된 처음 몇 개의 레" +#~ "이어를 제외하고 출력 중에 보조 팬이 이 속도로 작동됩니다" + +#~ msgid "" +#~ "Filter out gaps smaller than the threshold specified. This setting won't " +#~ "affect top/bottom layers" +#~ msgstr "" +#~ "지정된 임계값보다 작은 갭을 필터링합니다. 이 설정은 상단 표면/하단 표면 레" +#~ "이어에 영향을 주지 않습니다" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "바닥 주변의 빈 레이어는 가장 가까운 일반 레이어로 대체됩니다." + +#~ msgid "The model has too many empty layers." +#~ msgstr "모델에 빈 레이어가 너무 많습니다." + +#~ msgid "Cali" +#~ msgstr "교정" + +#~ msgid "Calibration of extrusion" +#~ msgstr "압출 교정" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "새 필라멘트를 압출기에 밀어 넣으세요" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "다른 레이어의 베드 온도가 초기 레이어의 베드 온도보다 %d°C 이상 낮습니" +#~ "다.\n" +#~ "이로 인해 출력 중에 모델이 빌드 플레이트에서 탈출할 수 있습니다" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "침대 온도가 이 필라멘트의 유리화 온도보다 높습니다.\n" +#~ "노즐이 막히고 출력 오류가 발생할 수 있습니다\n" +#~ "출력 과정 중에는 프린터를 열어두어 공기가 순환되도록 하거나 핫 베드의 온도" +#~ "를 낮추십시오" + +#~ msgid "Total Time Estimation" +#~ msgstr "추정 시간 합계" + +#~ msgid "Resonance frequency identification" +#~ msgstr "공진 주파수 식별" + +#~ msgid "Immediately score" +#~ msgstr "즉시 점수 매기기" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "좋아하는 Bambu Market 모델에 점수를 매겨주세요." + +#~ msgid "Score" +#~ msgstr "점수" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "뱀부 고온 플레이트" + +#~ msgid "Can't connect to the printer" +#~ msgstr "프린터에 연결할 수 없습니다" + +#~ msgid "Recommended temperature range" +#~ msgstr "권장 온도 범위" + +#~ msgid "High Temp Plate" +#~ msgstr "고온 플레이트" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "고온 플레이트 설치 시 베드 온도. 값 0은 필라멘트가 고온 플레이트에 출력하" +#~ "는 것을 지원하지 않음을 의미합니다" + +#~ msgid "Internal bridge support thickness" +#~ msgstr "내부 다리 지지대 두께" + +#~ msgid "" +#~ "If enabled, support loops will be generated under the contours of " +#~ "internal bridges.These support loops could prevent internal bridges from " +#~ "extruding over the air and improve the top surface quality, especially " +#~ "when the sparse infill density is low.This value determines the thickness " +#~ "of the support loops. 0 means disable this feature" +#~ msgstr "" +#~ "활성화된 경우 내부 다리의 윤곽선 아래에 지지대 루프를 생성합니다. 이러한 " +#~ "지지대 루프는 내부 다리를 공중에서 압출하는 것을 방지하고, 특히 드문 채우" +#~ "기 밀도가 낮을 때 상단 표면 품질을 향상시킬 수 있습니다. 이 값은 지지대 루" +#~ "프의 두께를 결정하며 0은 이 기능을 사용하지 않음을 의미합니다" + +#, c-format, boost-format +#~ msgid "" +#~ "Klipper's max_accel_to_decel will be adjusted to this % of acceleration" +#~ msgstr "Klipper의 max_accel_to_decel이 이 가속도 % o로 조정됩니다" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "지지대의 모양. 일반 지지대의 경우, 격자는 보다 안정적인 지지대(기본값)가 " +#~ "생성되는 반면 맞춤 지지대는 재료를 절약하고 개체 자국을 줄입니다.\n" +#~ "나무 지지대의 경우 얇은 모양은 가지를 더 적극적으로 병합하고 많은 재료를 " +#~ "절약합니다(기본값). 반면 혼합 스타일은 크고 평평한 오버행 아래에 일반 지지" +#~ "대와 유사한 구조를 만듭니다." + +#~ msgid "Target chamber temperature" +#~ msgstr "설정할 챔버 온도" + +#~ msgid "Bed temperature difference" +#~ msgstr "베드 온도차" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "이 임계값 이상으로 다른 레이어의 베드 온도를 초기 레이어보다 낮추는 것을 " +#~ "권장하지 않습니다. 다른 레이어의 베드 온도가 너무 낮으면 빌드 플레이트에" +#~ "서 모델이 깨질 수 있습니다" + +#~ msgid "Orient the model" +#~ msgstr "모델 방향 설정" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 0 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "유효한 값을 입력하십시오:\n" +#~ "시작 > 0 단계 >= 0\n" +#~ "끝 > 시작 + 단계)" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 10 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "유효한 값을 입력하십시오:\n" +#~ "시작 > 10 단계 >= 0\n" +#~ "끝 > 시작 + 단계)" diff --git a/localization/i18n/list.txt b/localization/i18n/list.txt index f3792b3453..eb7c9eeb9f 100644 --- a/localization/i18n/list.txt +++ b/localization/i18n/list.txt @@ -82,6 +82,7 @@ src/slic3r/GUI/ImageGrid.cpp src/slic3r/GUI/Printer/PrinterFileSystem.cpp src/slic3r/GUI/Mouse3DController.cpp src/slic3r/GUI/StatusPanel.cpp +src/slic3r/GUI/SSWCP.cpp src/slic3r/GUI/Monitor.cpp src/slic3r/GUI/MsgDialog.cpp src/slic3r/GUI/NotificationManager.hpp @@ -119,6 +120,7 @@ src/slic3r/GUI/WipeTowerDialog.cpp src/slic3r/GUI/wxExtensions.cpp src/slic3r/GUI/wxMediaCtrl2.cpp src/slic3r/GUI/WebUserLoginDialog.cpp +src/slic3r/GUI/WebSMUserLoginDialog.cpp src/slic3r/GUI/WebGuideDialog.cpp src/slic3r/GUI/KBShortcutsDialog.hpp src/slic3r/GUI/KBShortcutsDialog.cpp @@ -169,6 +171,7 @@ src/slic3r/Utils/Duet.cpp src/slic3r/Utils/FlashAir.cpp src/slic3r/Utils/MKS.cpp src/slic3r/Utils/OctoPrint.cpp +src/slic3r/Utils/MoonRaker.cpp src/slic3r/Utils/Repetier.cpp src/slic3r/Utils/ProfileDescription.hpp src/slic3r/Utils/Obico.cpp diff --git a/localization/i18n/nl/Snapmaker_Orca_nl.po b/localization/i18n/nl/Snapmaker_Orca_nl.po new file mode 100644 index 0000000000..0836a3f2ce --- /dev/null +++ b/localization/i18n/nl/Snapmaker_Orca_nl.po @@ -0,0 +1,16837 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n==1) ? 0 : 1;\n" +"X-Generator: Localazy (https://localazy.com)\n" + +msgid "Supports Painting" +msgstr "Ondersteuning (Support) tekenen" + +msgid "Alt + Mouse wheel" +msgstr "Alt + muiswiel" + +msgid "Section view" +msgstr "Doorsnede" + +msgid "Reset direction" +msgstr "Richting terugzetten" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + muiswiel" + +msgid "Pen size" +msgstr "Pengrootte" + +msgid "Left mouse button" +msgstr "Linker muisknop" + +msgid "Enforce supports" +msgstr "Ondersteuning afdwingen" + +msgid "Right mouse button" +msgstr "Rechter muisknop" + +msgid "Block supports" +msgstr "Ondersteuning blokkeren" + +msgid "Shift + Left mouse button" +msgstr "Shift + linker muisknop" + +msgid "Erase" +msgstr "Wissen" + +msgid "Erase all painting" +msgstr "Alle getekende delen wissen" + +msgid "Highlight overhang areas" +msgstr "Overhangende gebieden markeren" + +msgid "Gap fill" +msgstr "Gatvulling" + +msgid "Perform" +msgstr "Uitvoeren" + +msgid "Gap area" +msgstr "Gat gebied" + +msgid "Tool type" +msgstr "Hulpmiddel type" + +msgid "Smart fill angle" +msgstr "Slim vullen hoek" + +msgid "On overhangs only" +msgstr "Alleen op overhangen" + +msgid "Auto support threshold angle: " +msgstr "Maximale hoek automatische ondersteuning: " + +msgid "Circle" +msgstr "Cirkel" + +msgid "Sphere" +msgstr "Bol" + +msgid "Fill" +msgstr "Vullen" + +msgid "Gap Fill" +msgstr "Gatvulling" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Staat alleen schilderen toe op facetten geselecteerd met: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Gebieden markeren op basis van overhangende hoek." + +msgid "No auto support" +msgstr "Geen automatische ondersteuning" + +msgid "Support Generated" +msgstr "Ondersteuning gegenereerd" + +msgid "Gizmo-Place on Face" +msgstr "Plaats op vlak" + +msgid "Lay on face" +msgstr "Op deze zijde neerleggen." + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Het aantal filamenten overschrijdt het maximale aantal dat het " +"tekengereedschap ondersteunt. Alleen de eerste %1% filamenten zijn " +"beschikbaar in de tekentool." + +msgid "Color Painting" +msgstr "Kleuren schilderen" + +msgid "Pen shape" +msgstr "Pen vorm" + +msgid "Paint" +msgstr "Tekenen" + +msgid "Key 1~9" +msgstr "Toets 1~9" + +msgid "Choose filament" +msgstr "Kies filament" + +msgid "Edge detection" +msgstr "Rand detectie" + +msgid "Triangles" +msgstr "Driehoeken" + +msgid "Filaments" +msgstr "Filamenten" + +msgid "Brush" +msgstr "Kwast" + +msgid "Smart fill" +msgstr "Slim vullen" + +msgid "Bucket fill" +msgstr "Emmer vullen" + +msgid "Height range" +msgstr "Hoogtebereik" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "Schakel draadmodel in of uit" + +msgid "Shortcut Key " +msgstr "Sneltoest " + +msgid "Triangle" +msgstr "Driehoek" + +msgid "Height Range" +msgstr "Hoogtebereik" + +msgid "Vertical" +msgstr "Verticaal" + +msgid "Horizontal" +msgstr "Horizontaal" + +msgid "Remove painted color" +msgstr "Geschilderd kleur verwijderen" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Geschilderd met filament %1%" + +msgid "Move" +msgstr "Verplaats" + +msgid "Gizmo-Move" +msgstr "Verplaatsen" + +msgid "Rotate" +msgstr "Draai" + +msgid "Gizmo-Rotate" +msgstr "Roteren" + +msgid "Optimize orientation" +msgstr "Oriëntatie optimaliseren" + +msgid "Apply" +msgstr "Toepassen" + +msgid "Scale" +msgstr "Schalen" + +msgid "Gizmo-Scale" +msgstr "Verschalen" + +msgid "Error: Please close all toolbar menus first" +msgstr "Fout: sluit eerst alle openstaande hulpmiddelmenu's" + +msgid "in" +msgstr "in" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Positie" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Rotatie" + +msgid "Scale ratios" +msgstr "Schaalverhoudingen" + +msgid "Object Operations" +msgstr "Objectbewerkingen" + +msgid "Volume Operations" +msgstr "Volumebewerkingen" + +msgid "Translate" +msgstr "Vertalen" + +msgid "Group Operations" +msgstr "Groepsbewerkingen" + +msgid "Set Position" +msgstr "Positie instellen" + +msgid "Set Orientation" +msgstr "Oriëntatie instellen" + +msgid "Set Scale" +msgstr "Schaal instellen" + +msgid "Reset Position" +msgstr "Positie herstellen" + +msgid "Reset Rotation" +msgstr "Rotatie herstellen" + +msgid "World coordinates" +msgstr "Wereldcoördinaten" + +msgid "Object coordinates" +msgstr "" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Maat" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "Uniform schalen" + +msgid "Planar" +msgstr "Planair" + +msgid "Dovetail" +msgstr "Zwaluwstaart" + +msgid "Auto" +msgstr "Automatisch" + +msgid "Manual" +msgstr "Handmatig" + +msgid "Plug" +msgstr "Plug" + +msgid "Dowel" +msgstr "Deuvel" + +msgid "Snap" +msgstr "Snap" + +msgid "Prism" +msgstr "" + +msgid "Frustum" +msgstr "Frustum" + +msgid "Square" +msgstr "Vierkant" + +msgid "Hexagon" +msgstr "Zeskant" + +msgid "Keep orientation" +msgstr "Oriëntatie behouden" + +msgid "Place on cut" +msgstr "Op kniplijn plaatsen" + +msgid "Flip upside down" +msgstr "" + +msgid "Connectors" +msgstr "Verbindingen" + +msgid "Type" +msgstr "Type" + +msgid "Style" +msgstr "Stijl" + +msgid "Shape" +msgstr "Vorm" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Diepte" + +msgid "Groove" +msgstr "Groef" + +msgid "Width" +msgstr "Breedte" + +msgid "Flap Angle" +msgstr "Klephoek" + +msgid "Groove Angle" +msgstr "Groefhoek" + +msgid "Part" +msgstr "Onderdeel" + +msgid "Object" +msgstr "Voorwerp" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" + +msgid "Move cut plane" +msgstr "" + +msgid "Mode" +msgstr "Modus" + +msgid "Change cut mode" +msgstr "" + +msgid "Tolerance" +msgstr "Speling" + +msgid "Drag" +msgstr "Sleep" + +msgid "Draw cut line" +msgstr "" + +msgid "Left click" +msgstr "Linker muisklik" + +msgid "Add connector" +msgstr "Verbinding toevoegen" + +msgid "Right click" +msgstr "Rechter muisklik" + +msgid "Remove connector" +msgstr "Verbinding verwijderen" + +msgid "Move connector" +msgstr "Verbinding verplaatsen" + +msgid "Add connector to selection" +msgstr "Verbinding toevoegen aan selectie" + +msgid "Remove connector from selection" +msgstr "Verbinding verwijderen uit selectie" + +msgid "Select all connectors" +msgstr "Selecteer alle verbindingen" + +msgid "Cut" +msgstr "Knippen" + +msgid "Rotate cut plane" +msgstr "" + +msgid "Remove connectors" +msgstr "Verbindingen verwijderen" + +msgid "Bulge" +msgstr "Uitstulping" + +msgid "Bulge proportion related to radius" +msgstr "" + +msgid "Space" +msgstr "Ruimte" + +msgid "Space proportion related to radius" +msgstr "" + +msgid "Confirm connectors" +msgstr "Verbindingen bevestigen" + +msgid "Cancel" +msgstr "Annuleren" + +msgid "Build Volume" +msgstr "" + +msgid "Flip cut plane" +msgstr "" + +msgid "Groove change" +msgstr "" + +msgid "Reset" +msgstr "Terugzetten" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "" + +msgid "Cut position" +msgstr "" + +msgid "Reset cutting plane" +msgstr "" + +msgid "Edit connectors" +msgstr "Verbindingen bewerken" + +msgid "Add connectors" +msgstr "Verbindingen toevoegen" + +msgid "Reset cut" +msgstr "" + +msgid "Reset cutting plane and remove connectors" +msgstr "" + +msgid "Upper part" +msgstr "Bovenste deel" + +msgid "Lower part" +msgstr "Onderste deel" + +msgid "Keep" +msgstr "Behouden" + +msgid "Flip" +msgstr "Omdraaien" + +msgid "After cut" +msgstr "Na knippen" + +msgid "Cut to parts" +msgstr "In delen knippen" + +msgid "Perform cut" +msgstr "Knippen uitvoeren" + +msgid "Warning" +msgstr "Waarschuwing" + +msgid "Invalid connectors detected" +msgstr "Onjuiste verbindingen gevonden" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "" +msgstr[1] "" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "" +msgstr[1] "" + +msgid "Some connectors are overlapped" +msgstr "Sommige verbindingen overlappen" + +msgid "Select at least one object to keep after cutting." +msgstr "" + +msgid "Cut plane is placed out of object" +msgstr "" + +msgid "Cut plane with groove is invalid" +msgstr "" + +msgid "Connector" +msgstr "Verbinding" + +msgid "Cut by Plane" +msgstr "Snij met behulp van vlak" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"Niet-gevormde randen worden veroorzaakt door snijgereedschap: wil je dit nu " +"herstellen?" + +msgid "Repairing model object" +msgstr "Model object repareren" + +msgid "Cut by line" +msgstr "" + +msgid "Delete connector" +msgstr "" + +msgid "Mesh name" +msgstr "Meshnaam" + +msgid "Detail level" +msgstr "Detailniveau" + +msgid "Decimate ratio" +msgstr "Decimeren verhouding" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Het verwerken van model '%1%' met meer dan 1 miljoen driehoeken kan traag " +"zijn. Het wordt sterk aanbevolen om het model te vereenvoudigen." + +msgid "Simplify model" +msgstr "Model vereenvoudigen" + +msgid "Simplify" +msgstr "Vereenvoudigen" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"Vereenvoudiging is momenteel alleen toegestaan wanneer één enkel onderdeel " +"is geselecteerd" + +msgid "Error" +msgstr "Fout" + +msgid "Extra high" +msgstr "Extra hoog" + +msgid "High" +msgstr "Hoog" + +msgid "Medium" +msgstr "Gemiddeld" + +msgid "Low" +msgstr "Laag" + +msgid "Extra low" +msgstr "Extra laag" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d driehoeken" + +msgid "Show wireframe" +msgstr "Draadmodel tonen" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "Kan niet toepassen bij een voorvertoning." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "De toepassing wordt al geannuleerd. Wacht even alstublieft." + +msgid "Face recognition" +msgstr "Gezichtsherkenning" + +msgid "Perform Recognition" +msgstr "Herkenning uitvoeren" + +msgid "Brush size" +msgstr "Penseelgrootte" + +msgid "Brush shape" +msgstr "Penseelvorm" + +msgid "Enforce seam" +msgstr "Naad versterken" + +msgid "Block seam" +msgstr "Bloknaad" + +# msgstr "Blokkeer naad" # in case of "to block" +msgid "Seam painting" +msgstr "Naad schilderen" + +msgid "Remove selection" +msgstr "Selectie verwijderen" + +msgid "Entering Seam painting" +msgstr "Naad schilderen invoeren" + +msgid "Leaving Seam painting" +msgstr "Naad schilderen verlaten" + +msgid "Paint-on seam editing" +msgstr "Paint-on naadbewerking" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Lettertype" + +msgid "Thickness" +msgstr "Dikte" + +msgid "Text Gap" +msgstr "Tekstruimte" + +msgid "Angle" +msgstr "Hoek" + +msgid "" +"Embeded\n" +"depth" +msgstr "Embedded depth" + +msgid "Input text" +msgstr "Tekst invoeren" + +msgid "Surface" +msgstr "Oppervlak" + +msgid "Horizontal text" +msgstr "Horizontale tekst" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Muis op of neer" + +msgid "Rotate text" +msgstr "Draai tekst" + +msgid "Text shape" +msgstr "Tekstvorm" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "" + +msgid "Set Mirror" +msgstr "Stel spiegeling in" + +msgid "Embossed text" +msgstr "" + +msgid "Enter emboss gizmo" +msgstr "" + +msgid "Leave emboss gizmo" +msgstr "" + +msgid "Embossing actions" +msgstr "" + +msgid "Emboss" +msgstr "" + +msgid "NORMAL" +msgstr "" + +msgid "SMALL" +msgstr "" + +msgid "ITALIC" +msgstr "" + +msgid "SWISS" +msgstr "" + +msgid "MODERN" +msgstr "" + +msgid "First font" +msgstr "" + +msgid "Default font" +msgstr "Standaard lettertype" + +msgid "Advanced" +msgstr "Geavanceerd" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" + +msgid "Embossed text cannot contain only white spaces." +msgstr "" + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" + +msgid "Text input doesn't show font skew." +msgstr "" + +msgid "Text input doesn't show font boldness." +msgstr "" + +msgid "Text input doesn't show gap between lines." +msgstr "" + +msgid "Too tall, diminished font height inside text input." +msgstr "" + +msgid "Too small, enlarged font height inside text input." +msgstr "" + +msgid "Text doesn't show current horizontal alignment." +msgstr "" + +msgid "Revert font changes." +msgstr "" + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "" + +msgid "Operation" +msgstr "" + +msgid "Join" +msgstr "" + +msgid "Click to change text into object part." +msgstr "" + +msgid "You can't change a type of the last solid part of the object." +msgstr "" +"U kunt het type van het laatste onderdeel van een object niet wijzigen." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Knippen" + +msgid "Click to change part type into negative volume." +msgstr "" + +msgid "Modifier" +msgstr "Aanpasser" + +msgid "Click to change part type into modifier." +msgstr "" + +msgid "Change Text Type" +msgstr "" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "" + +msgid "Name can't be empty." +msgstr "" + +msgid "Name has to be unique." +msgstr "" + +msgid "OK" +msgstr "Offline" + +msgid "Rename style" +msgstr "" + +msgid "Rename current style." +msgstr "" + +msgid "Can't rename temporary style." +msgstr "" + +msgid "First Add style to list." +msgstr "" + +#, boost-format +msgid "Save %1% style" +msgstr "" + +msgid "No changes to save." +msgstr "" + +msgid "New name of style" +msgstr "" + +msgid "Save as new style" +msgstr "" + +msgid "Only valid font can be added to style." +msgstr "" + +msgid "Add style to my list." +msgstr "" + +msgid "Save as new style." +msgstr "" + +msgid "Remove style" +msgstr "" + +msgid "Can't remove the last existing style." +msgstr "" + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "" + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "" + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "" + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" + +msgid "Not valid style." +msgstr "" + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "" + +msgid "Unset italic" +msgstr "" + +msgid "Set italic" +msgstr "" + +msgid "Unset bold" +msgstr "" + +msgid "Set bold" +msgstr "" + +msgid "Revert text size." +msgstr "" + +msgid "Revert embossed depth." +msgstr "" + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" + +msgid "Revert using of model surface." +msgstr "" + +msgid "Revert Transformation per glyph." +msgstr "" + +msgid "Set global orientation for whole text." +msgstr "" + +msgid "Set position and orientation per glyph." +msgstr "" + +msgctxt "Alignment" +msgid "Left" +msgstr "Links" + +msgctxt "Alignment" +msgid "Center" +msgstr "Centreren" + +msgctxt "Alignment" +msgid "Right" +msgstr "Rechts" + +msgctxt "Alignment" +msgid "Top" +msgstr "Bovenste" + +msgctxt "Alignment" +msgid "Middle" +msgstr "" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Onderste" + +msgid "Revert alignment." +msgstr "" + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "" + +msgid "Revert gap between characters" +msgstr "" + +msgid "Distance between characters" +msgstr "" + +msgid "Revert gap between lines" +msgstr "" + +msgid "Distance between lines" +msgstr "" + +msgid "Undo boldness" +msgstr "" + +msgid "Tiny / Wide glyphs" +msgstr "" + +msgid "Undo letter's skew" +msgstr "" + +msgid "Italic strength ratio" +msgstr "" + +msgid "Undo translation" +msgstr "" + +msgid "Distance of the center of the text to the model surface." +msgstr "" + +msgid "Undo rotation" +msgstr "" + +msgid "Rotate text Clock-wise." +msgstr "" + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Select from True Type Collection." +msgstr "" + +msgid "Set text to face camera" +msgstr "" + +msgid "Orient the text towards the camera." +msgstr "" + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" + +msgid "No symbol" +msgstr "" + +msgid "Loading" +msgstr "Laden" + +msgid "In queue" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Hoogte" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Uitlijning" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "" + +msgid "Enter SVG gizmo" +msgstr "" + +msgid "Leave SVG gizmo" +msgstr "" + +msgid "SVG actions" +msgstr "" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "" + +msgid "Undefined fill type" +msgstr "" + +msgid "Linear gradient" +msgstr "" + +msgid "Radial gradient" +msgstr "" + +msgid "Open filled path" +msgstr "" + +msgid "Undefined stroke type" +msgstr "" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "" + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "" + +msgid "Face the camera" +msgstr "" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "" + +msgid "Reload SVG file from disk." +msgstr "" + +msgid "Change file" +msgstr "" + +msgid "Change to another .svg file" +msgstr "" + +msgid "Forget the file path" +msgstr "" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "" + +msgid "Save as" +msgstr "Opslaan Als" + +msgid "Save SVG file" +msgstr "" + +msgid "Save as '.svg' file" +msgstr "" + +msgid "Size in emboss direction." +msgstr "" + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "" + +msgid "Width of SVG." +msgstr "" + +msgid "Height of SVG." +msgstr "" + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "" + +msgid "Reset scale" +msgstr "Reset verschaling" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "" + +msgid "Reset distance" +msgstr "" + +msgid "Reset rotation" +msgstr "Reset rotatie" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" + +msgid "Mirror vertically" +msgstr "Verticaal spiegelen" + +msgid "Mirror horizontally" +msgstr "Spiegel horizontaal" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Spiegelen" + +msgid "Choose SVG file for emboss:" +msgstr "" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "" + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "" + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "" + +msgid "Vertex" +msgstr "Vertex" + +msgid "Edge" +msgstr "Rand" + +msgid "Plane" +msgstr "Vlak" + +msgid "Point on edge" +msgstr "Punt op rand" + +msgid "Point on circle" +msgstr "Punt op cirkel" + +msgid "Point on plane" +msgstr "Punt op vlak" + +msgid "Center of edge" +msgstr "Midden van rand" + +msgid "Center of circle" +msgstr "Middelpunt van cirkel" + +msgid "ShiftLeft mouse button" +msgstr "" + +msgid "Select feature" +msgstr "Functie selecteren" + +msgid "Select point" +msgstr "Kies punt" + +msgid "Delete" +msgstr "Verwijderen" + +msgid "Restart selection" +msgstr "Selectie herstarten" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "" + +msgid "Measure" +msgstr "Maatregel" + +msgid "Edit to scale" +msgstr "Op schaal bewerken" + +msgctxt "Verb" +msgid "Scale" +msgstr "Schalen" + +msgid "None" +msgstr "Geen" + +msgid "Diameter" +msgstr "Diameter" + +msgid "Length" +msgstr "Lengte" + +msgid "Selection" +msgstr "Selectie" + +msgid "Copy to clipboard" +msgstr "Kopieer naar klembord" + +msgid "Perpendicular distance" +msgstr "Perpendicular distance" + +msgid "Distance" +msgstr "Distance" + +msgid "Direct distance" +msgstr "Direct distance" + +msgid "Distance XYZ" +msgstr "Distance XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Let op" + +msgid "Undefined" +msgstr "Niet gedefinieerd" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% werd vervangen door %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" +"De configuratie was mogelijks met een nieuwere versie Snapmaker Orca gemaakt." + +msgid "Some values have been replaced. Please check them:" +msgstr "Sommige waarden zijn aangepast. Controleer deze alstublieft:" + +msgid "Process" +msgstr "Proces" + +msgid "Filament" +msgstr "Filament" + +msgid "Machine" +msgstr "Machine" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"Het onfiguratiepakket werd geladen, maar sommige waarden werden niet herkend." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Configuratiebestand “%1%” werd geladen, maar sommige waarden werden niet " +"herkend." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca zal sluiten, omdat het geen geheugen meer heeft. Dit kan een bug " +"zijn. Ons team een rapport schrijven over deze fout wordt erg gewaardeerd." + +msgid "Fatal error" +msgstr "Fatale fout" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca zal sluiten door een vertalingsfout. Ons team een rapport " +"schrijven over de situatie waar dit zich voor deed wordt erg gewaardeerd." + +msgid "Critical error" +msgstr "Kritieke fout" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca kreeg een onbehandelde uitzondering: %1%" + +msgid "Untitled" +msgstr "Naamloos" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Bambu Netwerk Plug-in downloaden" + +msgid "Login information expired. Please login again." +msgstr "Uw login informatie is verlopen. Log alstublieft opnieuw in." + +msgid "Incorrect password" +msgstr "Onjuist wachtwoord" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "Verbinding met %s is mislukt! [SN: %s, code=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca heeft het MicroSoft WebView2 Runtime nodig om bepaalde functies " +"in werking te stellen.\n" +"Klik Ja om het nu te installeren." + +msgid "WebView2 Runtime" +msgstr "WebView2 Runtime" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Wilt u doorgaan?" + +msgid "Remember my choice" +msgstr "Herinner mijn keuze" + +msgid "Loading configuration" +msgstr "Configuratie wordt geladen" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "" +"Klik hier om de nieuwe versie te downloaden in je standaard browser: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca heeft een upgrade nodig" + +msgid "This is the newest version." +msgstr "Dit is de nieuwste versie." + +msgid "Info" +msgstr "Informatie" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" + +msgid "Rebuild" +msgstr "Herbouwen" + +msgid "Loading current presets" +msgstr "De huidige voorinstellingen worden geladen" + +msgid "Loading a mode view" +msgstr "Een modusweergave laden" + +msgid "Choose one file (3mf):" +msgstr "Kies één bestand (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "Kies één of meer bestanden (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Kies één of meer bestanden (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "" + +msgid "Choose one file (gcode/3mf):" +msgstr "Kies één bestand (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "Sommige voorinstellingen zijn aangepast." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Je kunt de aangepaste voorinstellingen bewaren voor het nieuwe project ze " +"laten vervallen of opslaan als nieuwe voorinstelling." + +msgid "User logged out" +msgstr "Gebruiker is uitgelogd" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "nieuw of geopend projectbestand is niet toegestaan tijdens het slicen!" + +msgid "Open Project" +msgstr "Open project" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"De versie van Snapmaker Orca is te oud en dient te worden bijgewerkt naar de " +"nieuwste versie voordat deze normaal kan worden gebruikt" + +msgid "Privacy Policy Update" +msgstr "Privacy Policy Update" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"Het aantal gebruikersvoorinstellingen dat in de cloud is opgeslagen, heeft " +"de bovengrens overschreden. Nieuw gemaakte gebruikersvoorinstellingen kunnen " +"alleen lokaal worden gebruikt." + +msgid "Sync user presets" +msgstr "Synchroniseer gebruikersvoorinstellingen" + +msgid "Loading user preset" +msgstr "Voorinstelling voor gebruiker laden" + +msgid "Switching application language" +msgstr "De taal van de applicatie wordt aangepast" + +msgid "Select the language" +msgstr "Kies de taal" + +msgid "Language" +msgstr "Taal" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "De uploads zijn nog steeds bezig" + +msgid "Stop them and continue anyway?" +msgstr "Stoppen en toch doorgaan?" + +msgid "Ongoing uploads" +msgstr "Lopende uploads" + +msgid "Select a G-code file:" +msgstr "Selecteer een G-code bestand:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" + +msgid "Import File" +msgstr "Importeer bestand" + +msgid "Choose files" +msgstr "Kies bestanden" + +msgid "New Folder" +msgstr "Nieuwe map" + +msgid "Open" +msgstr "Open" + +msgid "Rename" +msgstr "Naam wijzigen" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Initialisatie van Snapmaker Orca GUI is mislukt" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Fatale fout, uitzondering tegengehouden: %1%" + +msgid "Quality" +msgstr "Kwaliteit" + +msgid "Shell" +msgstr "Buitenlaag" + +msgid "Infill" +msgstr "Vulling" + +msgid "Support" +msgstr "Ondersteuning" + +msgid "Flush options" +msgstr "Uitspoel-opties" + +msgid "Speed" +msgstr "Snelheid" + +msgid "Strength" +msgstr "Sterkte" + +msgid "Top Solid Layers" +msgstr "Aantal solide bovenste lagen" + +msgid "Top Minimum Shell Thickness" +msgstr "Minimale dikte van de bovenste laag" + +msgid "Bottom Solid Layers" +msgstr "Aantal gesloten bodemlagen" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Minimale bodemdikte" + +msgid "Ironing" +msgstr "Strijken" + +msgid "Fuzzy Skin" +msgstr "Vage buitenkant" + +msgid "Extruders" +msgstr "Extruders" + +msgid "Extrusion Width" +msgstr "Extrusiebreedte" + +msgid "Wipe options" +msgstr "Veeg opties" + +msgid "Bed adhesion" +msgstr "Printbed hechting" + +msgid "Add part" +msgstr "Onderdeel toevoegen" + +msgid "Add negative part" +msgstr "Negatief deel toevoegen" + +msgid "Add modifier" +msgstr "Aanpasser toevoegen" + +msgid "Add support blocker" +msgstr "Ondersteuningsblokkade toevoegen" + +msgid "Add support enforcer" +msgstr "Ondersteuning toevoegen" + +msgid "Add text" +msgstr "" + +msgid "Add negative text" +msgstr "" + +msgid "Add text modifier" +msgstr "" + +msgid "Add SVG part" +msgstr "" + +msgid "Add negative SVG" +msgstr "" + +msgid "Add SVG modifier" +msgstr "" + +msgid "Select settings" +msgstr "Selecteer instellingen" + +msgid "Hide" +msgstr "Verbergen" + +msgid "Show" +msgstr "Weergeven" + +msgid "Del" +msgstr "Del" + +msgid "Delete the selected object" +msgstr "Verwijder het geselecteerde object" + +msgid "Load..." +msgstr "Laden..." + +msgid "Cube" +msgstr "Kubus" + +msgid "Cylinder" +msgstr "Cilinder" + +msgid "Cone" +msgstr "Kegel" + +msgid "Disc" +msgstr "Schijf" + +msgid "Torus" +msgstr "Torus" + +msgid "Orca Cube" +msgstr "Orca-kubus" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Autodesk FDM Test" + +msgid "Voron Cube" +msgstr "Voron-kubus" + +msgid "Stanford Bunny" +msgstr "" + +msgid "Orca String Hell" +msgstr "" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" + +msgid "Text" +msgstr "" + +msgid "Height range Modifier" +msgstr "Hoogtebereikaanpasser" + +msgid "Add settings" +msgstr "Instellingen toevoegen" + +msgid "Change type" +msgstr "Verander type" + +msgid "Set as an individual object" +msgstr "Instellen als individueel object" + +msgid "Set as individual objects" +msgstr "Instellen als individuele objecten" + +msgid "Fill bed with copies" +msgstr "Vul bed met kopieën" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Vul de overige ruimte met kopieën van het geselecteerde object" + +msgid "Printable" +msgstr "Afdrukbaar" + +msgid "Fix model" +msgstr "Repareer model" + +msgid "Export as one STL" +msgstr "Exporteren als één STL" + +msgid "Export as STLs" +msgstr "Exporteren als STL's" + +msgid "Reload from disk" +msgstr "Opnieuw laden vanaf schijf" + +msgid "Reload the selected parts from disk" +msgstr "Laad de geselecteerde onderdelen opnieuw vanaf de schijf" + +msgid "Replace with STL" +msgstr "Vervangen door STL" + +msgid "Replace the selected part with new STL" +msgstr "Vervang het geselecteerde onderdeel door een nieuwe STL" + +msgid "Change filament" +msgstr "Verander filament" + +msgid "Set filament for selected items" +msgstr "Filament instellen voor geselecteerde items" + +msgid "Default" +msgstr "Standaard" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filament %d" + +msgid "current" +msgstr "Huidige" + +msgid "Scale to build volume" +msgstr "Schalen naar bruikbaar volume" + +msgid "Scale an object to fit the build volume" +msgstr "Object schalen zodat het in het bruikbaar volume past" + +msgid "Flush Options" +msgstr "Uitspoel-opties" + +msgid "Flush into objects' infill" +msgstr "Uitspoelen in de opvulling van objecten" + +msgid "Flush into this object" +msgstr "Uitspoelen in dit object" + +msgid "Flush into objects' support" +msgstr "Uitspoelen in de ondersteuning van objecten" + +msgid "Edit in Parameter Table" +msgstr "Bewerken in de parametertabel" + +msgid "Convert from inch" +msgstr "Omzetten vanuit inch" + +msgid "Restore to inch" +msgstr "Terugzetten naar inch" + +msgid "Convert from meter" +msgstr "Omzetten vanuit meter" + +msgid "Restore to meter" +msgstr "Terugzetten naar meter" + +msgid "Assemble" +msgstr "Monteren" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "" +"Monteer de geselecteerde objecten tot een object bestaande uit meerdere delen" + +msgid "Assemble the selected objects to an object with single part" +msgstr "" +"Monteer de geselecteerde objecten tot een object bestaande uit 1 onderdeel" + +msgid "Mesh boolean" +msgstr "Mesh booleaan" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Booleane mesh-operaties inclusief samenvoegen en aftrekken" + +msgid "Along X axis" +msgstr "Langs de X as" + +msgid "Mirror along the X axis" +msgstr "Spiegelen langs de X as" + +msgid "Along Y axis" +msgstr "Langs de Y as" + +msgid "Mirror along the Y axis" +msgstr "Spiegelen langs de Y as" + +msgid "Along Z axis" +msgstr "Langs de Z as" + +msgid "Mirror along the Z axis" +msgstr "Spiegelen langs de Z as" + +msgid "Mirror object" +msgstr "Spiegel object" + +msgid "Edit text" +msgstr "" + +msgid "Ability to change text, font, size, ..." +msgstr "" + +msgid "Edit SVG" +msgstr "" + +msgid "Change SVG source file, projection, size, ..." +msgstr "" + +msgid "Invalidate cut info" +msgstr "Invalideer knipsnede-info" + +msgid "Add Primitive" +msgstr "Primitief toevoegen" + +msgid "Add Handy models" +msgstr "" + +msgid "Add Models" +msgstr "Modellen toevoegen" + +msgid "Show Labels" +msgstr "Toon labels" + +msgid "To objects" +msgstr "Naar objecten" + +msgid "Split the selected object into multiple objects" +msgstr "Splits het geselecteerde object op in meerdere objecten" + +msgid "To parts" +msgstr "Naar onderdelen" + +msgid "Split the selected object into multiple parts" +msgstr "Splits het geselecteerde object op in meerdere onderdelen" + +msgid "Split" +msgstr "Opsplitsen" + +msgid "Split the selected object" +msgstr "Splits het geleselcteerde object op" + +msgid "Auto orientation" +msgstr "Automatisch oriënteren" + +msgid "Auto orient the object to improve print quality." +msgstr "" +"Automatisch oriënteren van het object om de printkwaliteit te verbeteren." + +msgid "Select All" +msgstr "Alles selecteren" + +msgid "select all objects on current plate" +msgstr "Selecteer alle objecten op het huidige printbed" + +msgid "Delete All" +msgstr "Alles verwijderen" + +msgid "delete all objects on current plate" +msgstr "Verwijder alle objecten op het huidige printbed" + +msgid "Arrange" +msgstr "Rangschikken" + +msgid "arrange current plate" +msgstr "Huidig printbed rangschikken" + +msgid "Reload All" +msgstr "" + +msgid "reload all from disk" +msgstr "" + +msgid "Auto Rotate" +msgstr "Automatisch roteren" + +msgid "auto rotate current plate" +msgstr "Huidig printbed automatisch roteren" + +msgid "Delete Plate" +msgstr "Verwijder printbed" + +msgid "Remove the selected plate" +msgstr "Verwijder het huidige printbed" + +msgid "Clone" +msgstr "Dupliceren" + +msgid "Simplify Model" +msgstr "Model vereenvoudigen" + +msgid "Center" +msgstr "Centreren" + +msgid "Edit Process Settings" +msgstr "Procesinstellingen bewerken" + +msgid "Edit print parameters for a single object" +msgstr "Pas de printinstellingen aan voor een enkel object" + +msgid "Change Filament" +msgstr "Filament veranderen" + +msgid "Set Filament for selected items" +msgstr "Filament instellen voor de geselecteerde items" + +msgid "Unlock" +msgstr "Ontgrendelen" + +msgid "Lock" +msgstr "Vergrendelen" + +msgid "Edit Plate Name" +msgstr "Pas printbed naam aan" + +msgid "Name" +msgstr "Naam" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d fouten hersteld@%1$d fouten hersteld" +msgstr[1] "%1$d fouten hersteld@%1$d fouten hersteld" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Error: %1$d non-manifold edges.@" +msgstr[1] "Error: %1$d non-manifold edges.@" + +msgid "Remaining errors" +msgstr "Resterende fouten" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d non-manifold edges@%1$d non-manifold edges" +msgstr[1] "%1$d non-manifold edges@%1$d non-manifold edges" + +msgid "Right click the icon to fix model object" +msgstr "" +"Klik met de rechter muisknop op het pictogram om het modelobject te repareren" + +msgid "Right button click the icon to drop the object settings" +msgstr "" +"Klik met de rechter muisknop op het pictogram om de objectinstellingen te " +"verwijderen" + +msgid "Click the icon to reset all settings of the object" +msgstr "Klik op het icoon om alle instellingen van het object terug te zetten" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Klik met de rechter muisknop op het pictogram om de printbare eigenschap van " +"het object te verwijderen" + +msgid "Click the icon to toggle printable property of the object" +msgstr "" +"Klik op het pictogram om de afdruk eigenschap van het object in te schakelen" + +msgid "Click the icon to edit support painting of the object" +msgstr "Klik op het pictogram om de support van het object te bewerken" + +msgid "Click the icon to edit color painting of the object" +msgstr "Klik op het pictogram om de kleur van het object te bewerken" + +msgid "Click the icon to shift this object to the bed" +msgstr "Klik op het pictogram om dit object te verschuiven op het printbed" + +msgid "Loading file" +msgstr "Bestand laden" + +msgid "Error!" +msgstr "Fout!" + +msgid "Failed to get the model data in the current file." +msgstr "Kon de modelinformatie niet laden uit het huidige bestand." + +msgid "Generic" +msgstr "Algemeen" + +msgid "Add Modifier" +msgstr "Aanpasser toevoegen" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Schakel over naar instellingsmodus per object om instellingen van de " +"aanpassing te bewerken." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Schakel over naar de instellingsmodus per object om procesinstellingen van " +"geselecteerde objecten te bewerken." + +msgid "Delete connector from object which is a part of cut" +msgstr "Verwijder verbinding van object dat deel is van een knipbewerking" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Verwijder vast onderdeel van object dat deel is van een knipbewerking" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Verwijder negatief volume van object dat deel is van een knipbewerking" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Om de knipovereenkomst op te slaan kan je alle verbindingen verwijderen uit " +"gerelateerde objecten." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"This action will break a cut correspondence.\n" +"After that, model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut information first." + +msgid "Delete all connectors" +msgstr "Verwijder alle vberbindingen" + +msgid "Deleting the last solid part is not allowed." +msgstr "Het is niet toegestaand om het laaste vaste deel te verwijderen." + +msgid "The target object contains only one part and can not be splited." +msgstr "" +"Het doelbestand bevat slechts 1 onderdeel en kan daarom niet worden " +"opgesplitst." + +msgid "Assembly" +msgstr "Montage" + +msgid "Cut Connectors information" +msgstr "Cut Connectors information" + +msgid "Object manipulation" +msgstr "Objectmanipulatie" + +msgid "Group manipulation" +msgstr "Groupsmanipulatie" + +msgid "Object Settings to modify" +msgstr "Voorwerpopties om aan te passen" + +msgid "Part Settings to modify" +msgstr "Onderdeelopties om aan te passen" + +msgid "Layer range Settings to modify" +msgstr "lagenreeksopties om aan te passen" + +msgid "Part manipulation" +msgstr "Onderdeelmanipulatie" + +msgid "Instance manipulation" +msgstr "Instantiemanipulatie" + +msgid "Height ranges" +msgstr "Hoogtebereiken" + +msgid "Settings for height range" +msgstr "Instellingen voor hoogtebereik" + +msgid "Layer" +msgstr "Laag" + +msgid "Selection conflicts" +msgstr "Selectieconflicten" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Als het eerste geselecteerde item een object is, dient het tweede item ook " +"een object te zijn." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Als het eerst geselecteerde item een onderdeel is, moet het tweede een " +"onderdeel van hetzelfde object zijn." + +msgid "The type of the last solid object part is not to be changed." +msgstr "" +"Het type van het laatste solide object onderdeel kan niet worden veranderd." + +msgid "Negative Part" +msgstr "Negatief deel" + +msgid "Support Blocker" +msgstr "Ondersteuningsblokkade" + +msgid "Support Enforcer" +msgstr "Ondersteuning handhaven" + +msgid "Type:" +msgstr "Type:" + +msgid "Choose part type" +msgstr "Kies het onderdeel type" + +msgid "Enter new name" +msgstr "Voer nieuwe naam in" + +msgid "Renaming" +msgstr "Hernoemen" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "" +"De volgende model objecten zijn gerepareerd@De volgende model objecten zijn " +"gerepareerd" +msgstr[1] "" +"De volgende model objecten zijn gerepareerd@De volgende model objecten zijn " +"gerepareerd" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Repareren van de volgende modellen is mislukt@" +msgstr[1] "Repareren van de volgende modellen is mislukt@" + +msgid "Repairing was canceled" +msgstr "Repareren is geannuleerd" + +msgid "Additional process preset" +msgstr "Extra procesvoorinstelling" + +msgid "Remove parameter" +msgstr "Verwijder parameter" + +msgid "to" +msgstr "naar" + +msgid "Remove height range" +msgstr "Remove height range" + +msgid "Add height range" +msgstr "Add height range" + +msgid "Invalid numeric." +msgstr "Onjuist getal." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"één cel kan alleen naar één of meerdere cellen in dezelfde kolom worden " +"gekopieerd" + +msgid "multiple cells copy is not supported" +msgstr "Het kopiëren van meerdere cellen wordt niet ondersteund." + +msgid "Outside" +msgstr "Buitenkant" + +msgid "Layer height" +msgstr "Laaghoogte" + +msgid "Wall loops" +msgstr "Wanden" + +msgid "Infill density(%)" +msgstr "Vulling (infill) dichtheid(%)" + +msgid "Auto Brim" +msgstr "Brim automatisch instellen" + +msgid "Mouse ear" +msgstr "" + +msgid "Outer brim only" +msgstr "Outer brim only" + +msgid "Inner brim only" +msgstr "Inner brim only" + +msgid "Outer and inner brim" +msgstr "Outer and inner brim" + +msgid "No-brim" +msgstr "Geen extra rand (brim)" + +msgid "Outer wall speed" +msgstr "Snelheid buitenwand" + +msgid "Plate" +msgstr "Printbed" + +msgid "Brim" +msgstr "Rand" + +msgid "Object/Part Setting" +msgstr "Object/onderdeel instelling" + +msgid "Reset parameter" +msgstr "Parameter terugzetten" + +msgid "Multicolor Print" +msgstr "Print met meerdere kleuren" + +msgid "Line Type" +msgstr "Lijn type" + +msgid "More" +msgstr "Meer" + +msgid "Open Preferences." +msgstr "Voorkeuren openen" + +msgid "Open next tip." +msgstr "Volgende tip openen" + +msgid "Open Documentation in web browser." +msgstr "Documentatie openen in een webbrowser" + +msgid "Color" +msgstr "Kleur" + +msgid "Pause" +msgstr "Pauze" + +msgid "Template" +msgstr "Sjabloon" + +msgid "Custom" +msgstr "Aangepast" + +msgid "Pause:" +msgstr "Pause:" + +msgid "Custom Template:" +msgstr "Custom Template:" + +msgid "Custom G-code:" +msgstr "Custom G-code:" + +msgid "Custom G-code" +msgstr "Aangepaste G-code" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Voer de aangepaste G-code in die op de huidige laag wordt gebruikt:" + +msgid "Jump to Layer" +msgstr "Spring naar laag" + +msgid "Please enter the layer number" +msgstr "Voer het laagnummer in." + +msgid "Add Pause" +msgstr "Pauze toevoegen" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Insert a pause command at the beginning of this layer." + +msgid "Add Custom G-code" +msgstr "Aangepaste G-code toevoegen" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Insert custom G-code at the beginning of this layer." + +msgid "Add Custom Template" +msgstr "Aangepaste sjabloon toevoegen" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Insert template custom G-code at the beginning of this layer." + +msgid "Filament " +msgstr "Filament" + +msgid "Change filament at the beginning of this layer." +msgstr "Change filament at the beginning of this layer." + +msgid "Delete Pause" +msgstr "Pauze verwijderen" + +msgid "Delete Custom Template" +msgstr "Delete Custom Template" + +msgid "Edit Custom G-code" +msgstr "Edit Custom G-code" + +msgid "Delete Custom G-code" +msgstr "Delete Custom G-code" + +msgid "Delete Filament Change" +msgstr "Delete Filament Change" + +msgid "No printer" +msgstr "Geen printer" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Verbinding maken met de server is mislukt" + +msgid "Check the status of current system services" +msgstr "Check the status of current system services" + +msgid "code" +msgstr "code" + +msgid "Failed to connect to cloud service" +msgstr "Failed to connect to cloud service" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "Please click on the hyperlink above to view the cloud service status" + +msgid "Failed to connect to the printer" +msgstr "Verbinding maken met de printer is mislukt" + +msgid "Connection to printer failed" +msgstr "Connection to printer failed" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Please check the network connection of the printer and Orca." + +msgid "Connecting..." +msgstr "Verbinden..." + +msgid "?" +msgstr " ?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Leeg" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Auto Refill" + +msgid "AMS not connected" +msgstr "AMS niet aangesloten" + +msgid "Load" +msgstr "Load" + +msgid "Unload" +msgstr "Lossen" + +msgid "Ext Spool" +msgstr "Ext Spool" + +msgid "Tips" +msgstr "Tips" + +msgid "Guide" +msgstr "Handleiding" + +msgid "Retry" +msgstr "Opnieuw proberen" + +msgid "Calibrating AMS..." +msgstr "AMS kalibreren..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"Er is een probleem opgetreden tijdens de kalibratie. Klik om de oplossing te " +"bekijken." + +msgid "Calibrate again" +msgstr "Opnieuw kalibreren" + +msgid "Cancel calibration" +msgstr "Kalibreren afbreken" + +msgid "Idling..." +msgstr "Inactief..." + +msgid "Heat the nozzle" +msgstr "Verwarm de nozzle" + +msgid "Cut filament" +msgstr "Filament afsnijden" + +msgid "Pull back current filament" +msgstr "huidig filament terugtrekken" + +msgid "Push new filament into extruder" +msgstr "Nieuw filament in de extruder laden" + +msgid "Purge old filament" +msgstr "Oud filament verwijderen" + +msgid "Feed Filament" +msgstr "Voer filament in" + +msgid "Confirm extruded" +msgstr "Bevestig geëxtrudeerd" + +msgid "Check filament location" +msgstr "Controleer de positie van het filament" + +msgid "Grab new filament" +msgstr "Grab new filament" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Kies een AMS-sleuf en druk op de knop \"Laden\" of \"Lossen\" om automatisch " +"filament te laden of te ontladen." + +msgid "Edit" +msgstr "Bewerken" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"De geselecteerde objecten bevinden zich op een vergrendeld printbed.\n" +"Deze objecten kunnen niet automatisch worden gerangschikt." + +msgid "No arrangable objects are selected." +msgstr "Er zijn geen objecten geselecteerd die geschikt kunnen worden." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Dit printbed is vergrendeld,\n" +"Het is niet mogelijk om automatisch te rangschikken op dit printbed." + +msgid "Arranging..." +msgstr "Rangschikken..." + +msgid "Arranging" +msgstr "Rangschikken..." + +msgid "Arranging canceled." +msgstr "Rangschikken geannuleerd." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Rangschikken voltooid, sommige zaken konden niet geranschikt worden. " +"Verklein de afstand en probeer het opnieuw." + +msgid "Arranging done." +msgstr "Rangschikken voltooid." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Het rangschikken is mislukt. Er zijn enkele uitzonderingen gevonden tijdens " +"het verwerken van het object." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"De volgende objecten zijn niet gerangschikt omdat ze niet op het printbed " +"passen:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"De geselecteerde objecten bevinden zich op een vergrendeld printbed.\n" +"Deze objecten kunnen niet automatisch worden georiënteerd." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Dit printbed is vergrendeld,\n" +"Het is niet mogelijk om automatisch te orienteren op dit printbed." + +msgid "Orienting..." +msgstr "Oriënteren " + +msgid "Orienting" +msgstr "Oriënteren " + +msgid "Orienting canceled." +msgstr "" + +msgid "Filling" +msgstr "Vullen" + +msgid "Bed filling canceled." +msgstr "Bed filling canceled." + +msgid "Bed filling done." +msgstr "Bed filling done." + +msgid "Searching for optimal orientation" +msgstr "Zoeken naar optimale oriëntatie" + +msgid "Orientation search canceled." +msgstr "Oriëntatie zoeken geannuleerd." + +msgid "Orientation found." +msgstr "Oriëntatie gevonden." + +msgid "Logging in" +msgstr "Bezig met inloggen" + +msgid "Login failed" +msgstr "Inloggen mislukt" + +msgid "Please check the printer network connection." +msgstr "Controleer de netwerkverbinding van de printer." + +msgid "Abnormal print file data. Please slice again." +msgstr "Abnormal print file data: please slice again." + +msgid "Task canceled." +msgstr "Task canceled." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "Upload task timed out. Please check the network status and try again." + +msgid "Cloud service connection failed. Please try again." +msgstr "Verbinding met cloudservice is mislukt. Probeer het nog eens." + +msgid "Print file not found. please slice again." +msgstr "Print file not found; please slice again." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." + +msgid "Failed to send the print job. Please try again." +msgstr "Het verzenden van de printopdracht is mislukt. Probeer het opnieuw." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Failed to upload file to ftp. Please try again." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Check the current status of the Bambu Lab server by clicking on the link " +"above." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"The size of the print file is too large. Please adjust the file size and try " +"again." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "Print file not found; please slice it again and send it for printing." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Failed to upload print file via FTP. Please check the network status and try " +"again." + +msgid "Sending print job over LAN" +msgstr "Printopdracht verzenden via LAN" + +msgid "Sending print job through cloud service" +msgstr "Printopdracht verzenden via cloud service" + +msgid "Print task sending times out." +msgstr "Het verzenden van de printtaak loopt uit." + +msgid "Service Unavailable" +msgstr "Service niet beschikbaar" + +msgid "Unknown Error." +msgstr "Onbekende fout." + +msgid "Sending print configuration" +msgstr "Print configuratie verzenden" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "Succesvol verzonden. Springt automatisch naar de apparaatpagina in %ss" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "" +"Succesvol verzonden. Springt automatisch naar de volgende pagina in %ss" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "" +"Er moet een MicroSD-kaart worden geplaatst voordat er via LAN kan worden " +"afgedrukt." + +msgid "Sending gcode file over LAN" +msgstr "G-codebestand verzenden via LAN" + +msgid "Sending gcode file to sdcard" +msgstr "G-codebestand naar microSD-kaart verzenden" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Succesvol verzonden. Sluit de huidige pagina in %s s" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "" +"Een MicroSD-kaart moet worden geplaatst voordat er iets naar de printer " +"wordt gestuurd." + +msgid "Importing SLA archive" +msgstr "Importing SLA archive" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer presets first before importing that SLA archive." + +msgid "Importing canceled." +msgstr "Importing canceled." + +msgid "Importing done." +msgstr "Importing done." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "You cannot load an SLA project with a multi-part object on the bed" + +msgid "Please check your object list before preset changing." +msgstr "Please check your object list before preset changing." + +msgid "Attention!" +msgstr "Let op!" + +msgid "Downloading" +msgstr "Downloaden" + +msgid "Download failed" +msgstr "Downloaden mislukt" + +msgid "Cancelled" +msgstr "Geannuleerd" + +msgid "Install successfully." +msgstr "Succesvol geïnstalleerd" + +msgid "Installing" +msgstr "Installeren" + +msgid "Install failed" +msgstr "Installatie mislukt" + +msgid "Portions copyright" +msgstr "Licentie informatie" + +msgid "Copyright" +msgstr "Auteursrecht" + +msgid "License" +msgstr "Licentie" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca is gelicentieerd onder " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero Algemene Openbare Licentie, versie 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "" + +msgid "Libraries" +msgstr "Bibliotheken" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Deze software maakt gebruik van open source-componenten waarvan het " +"auteursrecht en andere rechten eigendom zijn van hun respectievelijke " +"eigenaren." + +#, c-format, boost-format +msgid "About %s" +msgstr "Over %s" + +msgid "Snapmaker Orca " +msgstr "" + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "" + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "" + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "" +"PrusaSlicer is oorspronkelijk gebaseerd op Slic3r van Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r is gemaakt door Alessandro Ranellucci met de hulp van vele andere " +"bijdragers." + +msgid "Version" +msgstr "Versie" + +msgid "AMS Materials Setting" +msgstr "AMS Materiaal instellingen" + +msgid "Confirm" +msgstr "Bevestigen" + +msgid "Close" +msgstr "Sluiten" + +msgid "Colour" +msgstr "Kleur" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Nozzle\n" +"temperatuur" + +msgid "max" +msgstr "max" + +msgid "min" +msgstr "min" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "De invoerwaarde moet groter zijn dan %1% en kleiner dan %2%" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "" +"Het instellen van AMS slot informatie tijdens het printen wordt niet " +"ondersteund." + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Factoren van Flow Dynamics Calibration" + +msgid "PA Profile" +msgstr "PA-profiel" + +msgid "Factor K" +msgstr "Factor K" + +msgid "Factor N" +msgstr "Factor N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "Setting Virtual slot information while printing is not supported" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Are you sure you want to clear the filament information?" + +msgid "You need to select the material type and color first." +msgstr "You need to select the material type and color first." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" + +msgid "Other Color" +msgstr "Other Color" + +msgid "Custom Color" +msgstr "Custom Color" + +msgid "Dynamic flow calibration" +msgstr "Dynamic flow calibration" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"De temperatuur van de nozzle en de maximale volumetrische snelheid zijn van " +"invloed op de kalibratieresultaten. Voer dezelfde waarden in als bij de " +"daadwerkelijke afdruk. Ze kunnen automatisch worden gevuld door een " +"voorinstelling voor filamenten te selecteren." + +msgid "Nozzle Diameter" +msgstr "Diameter van de nozzle" + +msgid "Bed Type" +msgstr "Bed type" + +msgid "Nozzle temperature" +msgstr "Nozzle temperatuur" + +msgid "Bed Temperature" +msgstr "Bed Temperatuur" + +msgid "Max volumetric speed" +msgstr "Maximale volumetrische snelheid" + +msgid "℃" +msgstr "" + +msgid "Bed temperature" +msgstr "Printbed temperatuur" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Start" + +msgid "Next" +msgstr "Volgende" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Kalibratie voltooid. Zoek de meest uniforme extrusielijn op uw hotbed, zoals " +"op de afbeelding hieronder, en vul de waarde aan de linkerkant in het " +"invoervak factor K in." + +msgid "Save" +msgstr "Bewaar" + +msgid "Last Step" +msgstr "Back" + +msgid "Example" +msgstr "Voorbeeld" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Kalibreren... %d%%" + +msgid "Calibration completed" +msgstr "Kalibratie voltooid" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s ondersteunt %s niet" + +msgid "Dynamic flow Calibration" +msgstr "Dynamische flow kalibratie" + +msgid "Step" +msgstr "Stap" + +msgid "AMS Slots" +msgstr "AMS Slots" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Opmerking: Alleen de AMS-slots die met hetzelfde materiaaltype zijn geladen, " +"kunnen worden geselecteerd." + +msgid "Enable AMS" +msgstr "AMS inschakelen" + +msgid "Print with filaments in the AMS" +msgstr "Printen met filament in AMS" + +msgid "Disable AMS" +msgstr "AMS uitschakelen" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Print met filament op een externe spoel" + +msgid "Current Cabin humidity" +msgstr "Current Cabin humidity" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases: when the lid is open or the " +"desiccant pack is changed. It takes a few hours to absorb the moisture, and " +"low temperatures also slow down the process." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Configureer welke AMS-sleuf moet worden gebruikt voor een filament dat voor " +"de printopdracht wordt gebruikt." + +msgid "Filament used in this print job" +msgstr "Filament gebruikt in deze printopdracht" + +msgid "AMS slot used for this filament" +msgstr "AMS-slot die gebruikt wordt voor dit filament" + +msgid "Click to select AMS slot manually" +msgstr "Klik om AMS-slot handmatig te selecteren" + +msgid "Do not Enable AMS" +msgstr "AMS niet inschakelen" + +msgid "Print using materials mounted on the back of the case" +msgstr "Print met filament op een externe spoel." + +msgid "Print with filaments in ams" +msgstr "Printen met filament in AMS" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Print met filament op een externe spoel" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Als het huidige materiaal op is, gaat de printer verder met afdrukken in de " +"volgende volgorde." + +msgid "Group" +msgstr "Group" + +msgid "The printer does not currently support auto refill." +msgstr "De printer ondersteunt automatisch bijvullen momenteel niet." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"AMS filament backup is not enabled; please enable it in the AMS settings." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"If there are two identical filaments in an AMS, AMS filament backup will be " +"enabled. \n" +"(This currently supports automatic supply of consumables with the same " +"brand, material type, and color)" + +msgid "DRY" +msgstr "DRY" + +msgid "WET" +msgstr "WET" + +msgid "AMS Settings" +msgstr "AMS Instellingen" + +msgid "Insertion update" +msgstr "Update gegevens bij invoeren" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"De AMS zal automatisch de filamentinformatie lezen bij het plaatsen van een " +"nieuw Bambu Lab filament. Dit duurt ongeveer 20 seconden." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Opmerking: als er tijdens het printen een nieuw filament wordt geplaatst, " +"zal het AMS niet automatisch informatie lezen totdat het printen is voltooid." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Bij het laden van nieuw filament zal de informatie niet automatisch " +"ingelezen worden door de AMS, de informatie kan door uzelf worden ingegeven." + +msgid "Power on update" +msgstr "Update gegevens bij aanzetten" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"De AMS leest automatisch de informatie van het ingevoegde filament bij het " +"opstarten. Dit duurt ongeveer 1 minuut. Tijdens het leesproces zullen de " +"filamentspoelen rollen." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"De informatie van het geladen filament zal niet automatisch gelezen worden " +"door de AMS tijdens het opstarten. De tijdens de laatste keer uitzetten " +"opgeslagen informatie zal gebruikt worden." + +msgid "Update remaining capacity" +msgstr "Resterende capaciteit bijwerken" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"De AMS zal een schatting maken van de resterende capaciteit van het Bambu-" +"filament nadat de filamentinformatie is bijgewerkt. Tijdens het afdrukken " +"wordt de resterende capaciteit automatisch bijgewerkt." + +msgid "AMS filament backup" +msgstr "AMS filament backup" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"AMS gaat automatisch verder met een andere spoel met dezelfde filament " +"eigenschappen wanneer het huidige filament op is." + +msgid "Air Printing Detection" +msgstr "Air Printing Detection" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." + +msgid "File" +msgstr "Bestand" + +msgid "Calibration" +msgstr "Kalibratie" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Het downloaden van de plug-in is mislukt. Controleer je firewall-" +"instellingen en VPN-software en probeer het opnieuw." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"De installatie van de plug-in is mislukt. Controleer of deze is geblokkeerd " +"of verwijderd door anti-virussoftware." + +msgid "click here to see more info" +msgstr "klik hier voor meer informatie" + +msgid "Please home all axes (click " +msgstr "Centreer alle assen (klik" + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") om de positie van de gereedschapskop te bepalen. Dit voorkomt dat het " +"apparaat de printbare grens overschrijdt en dat apparatuur slijt." + +msgid "Go Home" +msgstr "Near home positie" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Er is een probleem opgetreden. Er is geen vrij geheugen of er een is een bug " +"opgetreden" + +msgid "Please save project and restart the program. " +msgstr "Sla uw project alstublieft op en herstart het programma. " + +msgid "Processing G-Code from Previous file..." +msgstr "De G-code van het vorige bestand wordt verwerkt..." + +msgid "Slicing complete" +msgstr "Slicing afgerond" + +msgid "Access violation" +msgstr "Toegang niet toegestaan" + +msgid "Illegal instruction" +msgstr "Onjuist instructie" + +msgid "Divide by zero" +msgstr "Gedeeld door 0" + +msgid "Overflow" +msgstr "Overloop" + +msgid "Underflow" +msgstr "Underflow" + +msgid "Floating reserved operand" +msgstr "Zwevende gereserveerde operand" + +msgid "Stack overflow" +msgstr "Stack overflow" + +msgid "Running post-processing scripts" +msgstr "Het uitvoeren van post-processing scripts" + +msgid "Successfully executed post-processing script" +msgstr "Successfully executed post-processing script" + +msgid "Unknown error occured during exporting G-code." +msgstr "Onbekende fout opgetreden tijdens exporteren van de G-code." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Fout bij het exporteren naar output-G-code. Is de SD-kaart geblokkeerd tegen " +"schrijven?\n" +"Foutbericht: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"Fout bij het exporteren naar output-G-code. Het probleem ligt mogelijk bij " +"het doelapparaat. Probeer het opnieuw te exporteren of gebruik een ander " +"apparat. De beschadigde G-code is opgeslagen als %1%.tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"Fout bij het exporteren naar output-G-code. Hernoemen van het bestand " +"mislukt. Huidige locatie is %1%.tmp. Probeer opnieuw te exporteren." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"Fout bij het exporteren naar output-G-code. Exporteren gelukt, maar kan het " +"bestand %1% niet openen om te controleren. De output is %2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"Fout bij het exporteren naar output-G-code. Exporteren gelukt, maar kan het " +"bestand niet openen om te controleren. De output is %1%.tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr ".gcode-bestand geëxporteerd naar %1%" + +msgid "Unknown error when export G-code." +msgstr "Onbekende fout tijdens het exporteren van de G-code" + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Het is niet gelukt het gcode bestand op te slaan.\n" +"Foutmelding: %1%.\n" +"Bronbestand %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "" +"Het kopiëren van de tijdelijke G-code naar de G-uitvoercode is mislukt." + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "Upload inplannen in `%1%`. Zie Venster -> Print Host Upload Queue" + +msgid "Device" +msgstr "Apparaat" + +msgid "Task Sending" +msgstr "Task Sending" + +msgid "Task Sent" +msgstr "Task Sent" + +msgid "Edit multiple printers" +msgstr "" + +msgid "Select connected printers (0/6)" +msgstr "" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "" + +msgid "Offline" +msgstr "Offline" + +msgid "No task" +msgstr "No task" + +msgid "View" +msgstr "Weergave" + +msgid "N/A" +msgstr "N/B" + +msgid "Edit Printers" +msgstr "" + +msgid "Device Name" +msgstr "Device Name" + +msgid "Task Name" +msgstr "Task Name" + +msgid "Device Status" +msgstr "Device Status" + +msgid "Actions" +msgstr "Actions" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" + +msgid "Add" +msgstr "Toevoegen" + +msgid "Idle" +msgstr "Inactief" + +msgid "Printing" +msgstr "Printen" + +msgid "Upgrading" +msgstr "" + +msgid "Incompatible" +msgstr "Incompatible" + +msgid "syncing" +msgstr "" + +msgid "Printing Finish" +msgstr "" + +msgid "Printing Failed" +msgstr "" + +msgid "Printing Pause" +msgstr "" + +msgid "Prepare" +msgstr "Voorbereiden" + +msgid "Slicing" +msgstr "Slicen" + +msgid "Pending" +msgstr "" + +msgid "Sending" +msgstr "Verzenden" + +msgid "Sending Finish" +msgstr "" + +msgid "Sending Cancel" +msgstr "" + +msgid "Sending Failed" +msgstr "" + +msgid "Print Success" +msgstr "" + +msgid "Print Failed" +msgstr "" + +msgid "Removed" +msgstr "" + +msgid "Resume" +msgstr "Hervatten" + +msgid "Stop" +msgstr "Stop" + +msgid "Task Status" +msgstr "Task Status" + +msgid "Sent Time" +msgstr "Sent Time" + +msgid "There are no tasks to be sent!" +msgstr "There are no tasks to be sent!" + +msgid "No historical tasks!" +msgstr "No historical tasks!" + +msgid "Loading..." +msgstr "Laden..." + +msgid "No AMS" +msgstr "No AMS" + +msgid "Send to Multi-device" +msgstr "Send to Multi-device" + +msgid "Preparing print job" +msgstr "Print opdracht voorbereiden" + +msgid "Abnormal print file data. Please slice again" +msgstr "Abnormale printbestand. Slice opnieuw" + +msgid "There is no device available to send printing." +msgstr "" + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" + +msgid "Use External Spool" +msgstr "Use External Spool" + +msgid "Use AMS" +msgstr "Use AMS" + +msgid "Select Printers" +msgstr "Select Printers" + +msgid "Ams Status" +msgstr "AMS Status" + +msgid "Printing Options" +msgstr "Printing Options" + +msgid "Bed Leveling" +msgstr "Bed leveling" + +msgid "Timelapse" +msgstr "Timelapse" + +msgid "Flow Dynamic Calibration" +msgstr "" + +msgid "Send Options" +msgstr "Send Options" + +msgid "Send to" +msgstr "" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"printers at the same time. (It depends on how many devices can undergo " +"heating at the same time.)" + +msgid "Wait" +msgstr "Wait" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minute each batch. (It depends on how long it takes to complete heating.)" + +msgid "Send" +msgstr "Versturen" + +msgid "Name is invalid;" +msgstr "Naam is ongeldig;" + +msgid "illegal characters:" +msgstr "Niet toegestande karakters:" + +msgid "illegal suffix:" +msgstr "Ongeldig achtervoegsel:" + +msgid "The name is not allowed to be empty." +msgstr "Het is niet toegestaand om de naam leeg te laten." + +msgid "The name is not allowed to start with space character." +msgstr "Het is niet toegestaan om een naam met een spatie te laten beginnen." + +msgid "The name is not allowed to end with space character." +msgstr "Het is niet toegestaan om een naam met een spatie te laten eindigen." + +msgid "The name length exceeds the limit." +msgstr "The name length exceeds the limit." + +msgid "Origin" +msgstr "Begin" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Maat in X en Y van de vierkante printplaat." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" +"Afstand van het 0,0 G-code coordinaat gezien vanuit de linker voorhoek van " +"het printbed." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Diameter van het printbed, ervan uitgaande dat de thuispositie (0,0) in het " +"midden van het bed is." + +msgid "Rectangular" +msgstr "Rechthoekig" + +msgid "Circular" +msgstr "Rond" + +msgid "Load shape from STL..." +msgstr "Vorm laden vanuit het stl. bestand..." + +msgid "Settings" +msgstr "Instellingen" + +msgid "Texture" +msgstr "Textuur" + +msgid "Remove" +msgstr "Verwijderen" + +msgid "Not found:" +msgstr "Niet gevonden:" + +msgid "Model" +msgstr "Model" + +msgid "Choose an STL file to import bed shape from:" +msgstr "" +"Kies een STL bestand waar de vorm van het printbed uit opgehaald kan worden:" + +msgid "Invalid file format." +msgstr "Ongeldig bestandsformaat." + +msgid "Error! Invalid model" +msgstr "Fout: Ongeldig model" + +msgid "The selected file contains no geometry." +msgstr "Het gekozen bestand bevat geen geometrische data." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"Het geselecteerde bestand bevat verschillende onsamenhangende gebieden. Dit " +"is niet toegestaan." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "" +"Kies een bestand om de textuur van het printbed uit op te halen (PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Kies een STL bestand waaruit het printbed model geladen kan worden:" + +msgid "Bed Shape" +msgstr "Printbed vorm" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"De aanbevolen minimumtemperatuur is lager dan 190 graden of de aanbevolen " +"maximumtemperatuur is hoger dan 300 graden.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" + +msgid "Please check.\n" +msgstr "Controleer het.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"Het kan zijn dat de nozzle verstopt raakt indien er geprint wordt met een " +"temperatuur buiten de voorgestelde range.\n" +"Controleer en bevestig de temperatuur voordat u verder gaat met printen.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"De geadviseerde nozzle temperatuur voor dit type filament is [%d, %d] graden " +"Celcius" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Te kleine maximale volumetrische snelheid.\n" +"De waarde is teruggezet naar 0,5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"Current chamber temperature is higher than the material's safe temperature; " +"this may result in material softening and nozzle clogs.The maximum safe " +"temperature for the material is %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Laaghoogte is te klein\n" +"Teruggezet naar 0.2mm" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"De ruimte voor het strijken is te klein\n" +"Teruggezet naar 0.1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"De gekozen waarde voor de eerste laag is te klein\n" +"\n" +"De hoogte voor de eerste laag wordt teruggezet naar 0.2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Deze instelling wordt in sommige gevallen alleen gebruikt voor " +"modelafmetingen met een kleine waarde.\n" +"Als bijvoorbeeld de modelgrootte een kleine fout heeft en moeilijk te " +"monteren is.\n" +"Gebruik voor het afstemmen van grote prints de shaal functie.\n" +"\n" +"De waarde wordt teruggezet naar 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Het is niet reëel om een grote \"elephant foot\" compensatie in te stellen\n" +"Controleer andere instellingen indien er echt een groot \"elephant foot\" " +"effect optreeft.\n" +"Het kan bijvoorbeeld zijn dat de temperatuur van het printbed te hoog is.\n" +"\n" +"De waarde wordt teruggezet naar 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"Prime tower werkt niet wanneer adaptieve laag hoogte of onafhankelijke " +"support laaghoogte is ingeschakeld.\n" +"Welke instelling wilt u gebruiken\n" +"JA - laat de prime-tower aan staan\n" +"NO - laat adaptieve laag en onafhankelijke support-laaghoogte ingeschakeld" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"Prime tower werkt niet wanneer adaptieve laag hoogte is ingeschakeld.\n" +"Welke instelling wilt u gebruiken\n" +"JA - laat de prime-tower aan staan\n" +"NO - laat adaptieve laaghoogte ingeschakeld" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"Prime tower werkt niet wanneer onafhankelijke support laag hoogte is " +"ingeschakeld.\n" +"Welke instelling wilt u gebruiken\n" +"JA - laat de prime-tower aan staan\n" +"NO - laat onafhankelijke support-laag-hoogte ingeschakeld" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"While printing by object, the extruder may collide with a skirt.\n" +"Thus, reset the skirt layer to 1 to avoid collisions." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " Maar machines met een I3-structuur genereren geen timelapsevideo's." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Wilt u de voorgestelde instellingen automatisch aanpassen? \n" +"Ja - Pas de instellingen aan en zet de vaas modus automatisch aan\n" +"Nee - Pas de vaas modus deze keer niet toe" + +msgid "Auto bed leveling" +msgstr "Automatisch bed levellen" + +msgid "Heatbed preheating" +msgstr "Printbed opwarmen" + +msgid "Sweeping XY mech mode" +msgstr "Sweeping XY mech mode" + +msgid "Changing filament" +msgstr "Filament wordt gewisseld" + +msgid "M400 pause" +msgstr "M400-pauze" + +msgid "Paused due to filament runout" +msgstr "De printtaak is gepauzeerd omdat het filament op is" + +msgid "Heating hotend" +msgstr "Hotend opwarmen" + +msgid "Calibrating extrusion" +msgstr "Extrusie wordt gecalibreerd" + +msgid "Scanning bed surface" +msgstr "Het printbed oppervlak wordt gescand" + +msgid "Inspecting first layer" +msgstr "De eerste laag wordt geinspecteerd" + +msgid "Identifying build plate type" +msgstr "Vastellen printbedtype" + +msgid "Calibrating Micro Lidar" +msgstr "Micro Lidar wordt gecalibreerd" + +msgid "Homing toolhead" +msgstr "Printkop naar beginpositie" + +msgid "Cleaning nozzle tip" +msgstr "Nozzle wordt schoongemaakt" + +msgid "Checking extruder temperature" +msgstr "Extruder temperatuur wordt gecontroleerd" + +msgid "Printing was paused by the user" +msgstr "Printen is onderbroken door de gebruiker" + +msgid "Pause of front cover falling" +msgstr "Pauze cover printkop los" + +msgid "Calibrating the micro lida" +msgstr "Micro Lidar wordt gecalibreerd" + +msgid "Calibrating extrusion flow" +msgstr "De extrusieflow kalibreren" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Onderbroken vanwege storing in de nozzle temperatuur" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Onderbroken vanwege storing in de temperatuur van het printbed" + +msgid "Filament unloading" +msgstr "Lossen van filament" + +msgid "Skip step pause" +msgstr "Stappauze overslaan" + +msgid "Filament loading" +msgstr "Filament bezig met laden" + +msgid "Motor noise calibration" +msgstr "Kalibratie van motorgeluid" + +msgid "Paused due to AMS lost" +msgstr "Gepauzeerd wegens verlies van AMS" + +msgid "Paused due to low speed of the heat break fan" +msgstr "" +"Gepauzeerd vanwege lage snelheid van de ventilator voor warmteonderbreking" + +msgid "Paused due to chamber temperature control error" +msgstr "Gepauzeerd vanwege een fout in de temperatuurregeling van de kamer" + +msgid "Cooling chamber" +msgstr "Koelkamer" + +msgid "Paused by the Gcode inserted by user" +msgstr "Gepauzeerd door de Gcode ingevoegd door gebruiker" + +msgid "Motor noise showoff" +msgstr "Motorgeluid showoff" + +msgid "Nozzle filament covered detected pause" +msgstr "Nozzle filament bedekt gedetecteerde pauze" + +msgid "Cutter error pause" +msgstr "Pauze bij snijfout" + +msgid "First layer error pause" +msgstr "Eerste laag foutpauze" + +msgid "Nozzle clog pause" +msgstr "Pauze bij verstopping van het mondstuk" + +msgid "Unknown" +msgstr "Onbekend" + +msgid "Fatal" +msgstr "Fatale" + +msgid "Serious" +msgstr "Serieuze" + +msgid "Common" +msgstr "Standaard" + +msgid "Update successful." +msgstr "Update gelukt." + +msgid "Downloading failed." +msgstr "Downloaden mislukt." + +msgid "Verification failed." +msgstr "Verificatie mislukt." + +msgid "Update failed." +msgstr "Updaten mislukt." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃. In order to avoid extruder clogging, low temperature filament (PLA/PETG/" +"TPU) is not allowed to be loaded." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Low temperature filament (PLA/PETG/TPU) is loaded in the extruder. In order " +"to avoid extruder clogging, it is not allowed to set the chamber temperature " +"above 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated, and the target chamber temperature will " +"automatically be set to 0℃." + +msgid "Failed to start printing job" +msgstr "Het starten van de printopdracht is mislukt" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" +"Deze kalibratie ondersteunt de momenteel geselecteerde mondstukdiameter niet" + +msgid "Current flowrate cali param is invalid" +msgstr "Huidige stroomsnelheid cali param is ongeldig" + +msgid "Selected diameter and machine diameter do not match" +msgstr "Geselecteerde diameter en machinediameter komen niet overeen" + +msgid "Failed to generate cali gcode" +msgstr "Cali gcode niet gegenereerd" + +msgid "Calibration error" +msgstr "Kalibratiefout" + +msgid "TPU is not supported by AMS." +msgstr "TPU wordt niet ondersteund door AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF wordt niet ondersteund door AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Vochtige PVA zal flexibel worden en vast komen te zitten in de AMS, zorg er " +"dus voor dat je het droogt voor gebruik." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"CF/GF-filamenten zijn hard en bros. Ze kunnen gemakkelijk breken of vast " +"komen te zitten in AMS." + +msgid "default" +msgstr "Standaard" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" + +msgid "Search gcode placeholders" +msgstr "" + +msgid "Add selected placeholder to G-code" +msgstr "" + +msgid "Select placeholder" +msgstr "" + +msgid "[Global] Slicing State" +msgstr "" + +msgid "Read Only" +msgstr "" + +msgid "Read Write" +msgstr "" + +msgid "Slicing State" +msgstr "" + +msgid "Print Statistics" +msgstr "" + +msgid "Objects Info" +msgstr "" + +msgid "Dimensions" +msgstr "" + +msgid "Temperatures" +msgstr "Temperaturen" + +msgid "Timestamps" +msgstr "" + +#, boost-format +msgid "Specific for %1%" +msgstr "" + +msgid "Presets" +msgstr "Presets" + +msgid "Print settings" +msgstr "Print instellingen" + +msgid "Filament settings" +msgstr "Filament instellingen" + +msgid "SLA Materials settings" +msgstr "" + +msgid "Printer settings" +msgstr "Printer instellingen" + +msgid "parameter name" +msgstr "parameternaam" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s kan geen percentage zijn" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "De %s waarde is buiten het bereik, doorgaan?" + +msgid "Parameter validation" +msgstr "Parametervalidatie" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "Value %s is out of range. The valid range is from %d to %d." + +msgid "Value is out of range." +msgstr "Waarde is buiten het bereik." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"Is het %s%% or %s %s?\n" +"JA voor %s%%, \n" +"NEE voor %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Ongeldige invoer. Verwachte waarde moet in het volgende format: \"%1%\"" + +msgid "Input value is out of range" +msgstr "Ingevoerde waarde valt buiten het bereik" + +msgid "Some extension in the input is invalid" +msgstr "" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Onjuist formaat. Het Vector formaat wordt verwacht: \"%1%\"" + +msgid "Layer Height" +msgstr "Laaghoogte" + +msgid "Line Width" +msgstr "Lijn dikte" + +msgid "Fan Speed" +msgstr "Ventilator snelheid" + +msgid "Temperature" +msgstr "Temperatuur" + +msgid "Flow" +msgstr "Flow" + +msgid "Tool" +msgstr "Hulpmiddel" + +msgid "Layer Time" +msgstr "Laag tijd" + +msgid "Layer Time (log)" +msgstr "Laagtijd (logboek)" + +msgid "Height: " +msgstr "Hoogte:" + +msgid "Width: " +msgstr "Breedte:" + +msgid "Speed: " +msgstr "Snelheid:" + +msgid "Flow: " +msgstr "Flow: " + +msgid "Layer Time: " +msgstr "Laagtijd:" + +msgid "Fan: " +msgstr "Ventilatorsnelheid:" + +msgid "Temperature: " +msgstr "Temperatuur:" + +msgid "Loading G-codes" +msgstr "G-codes worden geladen" + +msgid "Generating geometry vertex data" +msgstr "Geometrische hoekpuntgegevens genereren" + +msgid "Generating geometry index data" +msgstr "Geometrie-indexgegevens genereren" + +msgid "Statistics of All Plates" +msgstr "Statistics of All Plates" + +msgid "Display" +msgstr "Tonen" + +msgid "Flushed" +msgstr "Flushed" + +msgid "Tower" +msgstr "Toren" + +msgid "Total" +msgstr "Totaal" + +msgid "Total Estimation" +msgstr "Schatting totaal" + +msgid "Total time" +msgstr "Totale tijd" + +msgid "Total cost" +msgstr "Total cost" + +msgid "up to" +msgstr "tot" + +msgid "above" +msgstr "Boven" + +msgid "from" +msgstr "Van" + +msgid "Color Scheme" +msgstr "Kleurschema" + +msgid "Time" +msgstr "Tijd" + +msgid "Percent" +msgstr "Procent" + +msgid "Used filament" +msgstr "Verbruikt filament" + +msgid "Layer Height (mm)" +msgstr "Laaghoogte (mm)" + +msgid "Line Width (mm)" +msgstr "Lijndikte (mm)" + +msgid "Speed (mm/s)" +msgstr "Snelheid (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Ventilator snelheid (%)" + +msgid "Temperature (°C)" +msgstr "Temperatuur (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Volumestroom (mm³/s)" + +msgid "Travel" +msgstr "Verplaatsen" + +msgid "Seams" +msgstr "Naden" + +msgid "Retract" +msgstr "Terugtrekken (retract)" + +msgid "Unretract" +msgstr "Intrekken" + +msgid "Filament Changes" +msgstr "Filament wisselingen" + +msgid "Wipe" +msgstr "Vegen" + +msgid "Options" +msgstr "Opties" + +msgid "travel" +msgstr "verplaatsen" + +msgid "Extruder" +msgstr "Extruder" + +msgid "Filament change times" +msgstr "Filamentwisseltijden" + +msgid "Cost" +msgstr "Kosten" + +msgid "Color change" +msgstr "Kleur veranderen" + +msgid "Print" +msgstr "Print" + +msgid "Printer" +msgstr "Printer" + +msgid "Custom g-code" +msgstr "" + +msgid "ToolChange" +msgstr "" + +msgid "Time Estimation" +msgstr "Geschatte duur" + +msgid "Normal mode" +msgstr "Normale modus" + +msgid "Total Filament" +msgstr "Total Filament" + +msgid "Model Filament" +msgstr "Model Filament" + +msgid "Prepare time" +msgstr "Voorbereidingstijd" + +msgid "Model printing time" +msgstr "Model print tijd" + +msgid "Switch to silent mode" +msgstr "Omzetten naar stille modus" + +msgid "Switch to normal mode" +msgstr "Omzetten naar normale modus" + +msgid "Variable layer height" +msgstr "Variabele laaghoogte" + +msgid "Adaptive" +msgstr "Adaptief" + +msgid "Quality / Speed" +msgstr "Kwaliteit/snelheid" + +msgid "Smooth" +msgstr "Vloeiend" + +msgid "Radius" +msgstr "Straal" + +msgid "Keep min" +msgstr "Houd min" + +msgid "Left mouse button:" +msgstr "Linker muisknop" + +msgid "Add detail" +msgstr "Detail toevoegen" + +msgid "Right mouse button:" +msgstr "Rechter muisknop:" + +msgid "Remove detail" +msgstr "Detail verwijderen" + +msgid "Shift + Left mouse button:" +msgstr "Shift + linker muisknop:" + +msgid "Reset to base" +msgstr "Terugzetten naar basis" + +msgid "Shift + Right mouse button:" +msgstr "Shift + rechter muisknop:" + +msgid "Smoothing" +msgstr "Gladmaken" + +msgid "Mouse wheel:" +msgstr "Muiswiel:" + +msgid "Increase/decrease edit area" +msgstr "Bewerkingsgebied vergroten/verkleinen" + +msgid "Sequence" +msgstr "Reeks" + +msgid "Mirror Object" +msgstr "Object spiegelen" + +msgid "Tool Move" +msgstr "Beweeg tool" + +msgid "Tool Rotate" +msgstr "Tool Rotate" + +msgid "Move Object" +msgstr "Beweeg object" + +msgid "Auto Orientation options" +msgstr "Opties voor automatisch oriënteren" + +msgid "Enable rotation" +msgstr "Rotatie inschakelen" + +msgid "Optimize support interface area" +msgstr "Gebied voor de support inface optimaliseren" + +msgid "Orient" +msgstr "Oriënteren" + +msgid "Arrange options" +msgstr "Rangschik opties" + +msgid "Spacing" +msgstr "Uitlijning" + +msgid "0 means auto spacing." +msgstr "0 means auto spacing." + +msgid "Auto rotate for arrangement" +msgstr "Automatisch roteren voor rankschikking" + +msgid "Allow multiple materials on same plate" +msgstr "Sta verschillende materiaalsoorten op hetzelfde printbed toe" + +msgid "Avoid extrusion calibration region" +msgstr "Vermijd het extrusie kalibratie gebied" + +msgid "Align to Y axis" +msgstr "Uitlijnen op Y-as" + +msgid "Add plate" +msgstr "Printbed toevoegen" + +msgid "Auto orient" +msgstr "Automatisch oriënteren" + +msgid "Arrange all objects" +msgstr "Alle objecten rangschikken" + +msgid "Arrange objects on selected plates" +msgstr "Rangschikt de objecten op de gelecteerde printbedden" + +msgid "Split to objects" +msgstr "Opsplitsen in objecten" + +msgid "Split to parts" +msgstr "Opsplitsten in delen" + +msgid "Assembly View" +msgstr "Montageweergave" + +msgid "Select Plate" +msgstr "Printbed selecteren" + +msgid "Assembly Return" +msgstr "Montage terug" + +msgid "return" +msgstr "Terug" + +msgid "Paint Toolbar" +msgstr "Kleur instellingen" + +msgid "Explosion Ratio" +msgstr "Vergrotings ratio" + +msgid "Section View" +msgstr "Sectie weergave" + +msgid "Assemble Control" +msgstr "Assemblage controle" + +msgid "Total Volume:" +msgstr "Totaal Volume:" + +msgid "Assembly Info" +msgstr "Montage informatie" + +msgid "Volume:" +msgstr "Volume:" + +msgid "Size:" +msgstr "Maat:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" + +msgid "An object is layed over the boundary of plate." +msgstr "Er bevind zich een object buiten de grenzen van de printplaat." + +msgid "A G-code path goes beyond the max print height." +msgstr "Een G-codepad gaat verder dan de maximale printhoogte." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Een G-code pad treedt buiten de grenzen van de printplaat." + +msgid "Only the object being edit is visible." +msgstr "Alleen het object waaraan gewerkt wordt is zichtbaar." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Een object is over de grens van de plaat geplaatst of overschrijdt de " +"hoogtelimiet.\n" +"Los het probleem op door het geheel op of van de plaat te verplaatsen, en " +"controleer of de hoogte binnen het bouwvolume valt." + +msgid "Calibration step selection" +msgstr "Kalibratiestap selectie" + +msgid "Micro lidar calibration" +msgstr "Micro Lidar Kalibratie" + +msgid "Bed leveling" +msgstr "Bed leveling" + +msgid "Vibration compensation" +msgstr "Trillingscompensatie" + +msgid "Motor noise cancellation" +msgstr "Motorruisonderdrukking" + +msgid "Calibration program" +msgstr "Kalibratie programma" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"Het kalibratieprogramma detecteert automatisch de status van uw apparaat om " +"afwijkingen te minimaliseren.\n" +"Het zorgt ervoor dat het apparaat optimaal blijft presteren." + +msgid "Calibration Flow" +msgstr "Flow kalibratie" + +msgid "Start Calibration" +msgstr "Start kalibreren" + +msgid "Completed" +msgstr "Voltooid" + +msgid "Calibrating" +msgstr "Kalibreren" + +msgid "No step selected" +msgstr "Geen stap geselecteerd" + +msgid "Auto-record Monitoring" +msgstr "Automatische opnamebewaking" + +msgid "Go Live" +msgstr "Live gaan" + +msgid "Liveview Retry" +msgstr "Liveweergave opnieuw proberen" + +msgid "Resolution" +msgstr "Resolutie" + +msgid "Enable" +msgstr "Inschakelen" + +msgid "Hostname or IP" +msgstr "" + +msgid "Custom camera source" +msgstr "" + +msgid "Show \"Live Video\" guide page." +msgstr "Toon \"Live Video\" gids pagina." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Printer aansluiten (LAN)" + +msgid "Please input the printer access code:" +msgstr "Voer de toegangscode van de printer in:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"U vindt deze in \"Instellingen > Netwerk > Verbindingscode\"\n" +"op de printer, zoals aangegeven in de afbeelding:" + +msgid "Invalid input." +msgstr "Ongeldige invoer" + +msgid "New Window" +msgstr "Nieuw venster" + +msgid "Open a new window" +msgstr "Een nieuw venster openen" + +msgid "Application is closing" +msgstr "De toepassing wordt afgesloten" + +msgid "Closing Application while some presets are modified." +msgstr "Applicatie sluiten terwijl sommige voorinstellingen zijn gewijzigd." + +msgid "Logging" +msgstr "Vastleggen" + +msgid "Preview" +msgstr "Voorvertoning" + +msgid "Multi-device" +msgstr "Multi-device" + +msgid "Project" +msgstr "Project" + +msgid "Yes" +msgstr "Ja" + +msgid "No" +msgstr "Nee" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "will be closed before creating a new model. Do you want to continue?" + +msgid "Slice plate" +msgstr "Slice printbed" + +msgid "Print plate" +msgstr "Printplaat" + +msgid "Slice all" +msgstr "Alles slicen" + +msgid "Export G-code file" +msgstr "G-codebestand exporteren" + +msgid "Export plate sliced file" +msgstr "Exporteer plate sliced bestand" + +msgid "Export all sliced file" +msgstr "Alle sliced bestanden exporteren" + +msgid "Print all" +msgstr "Print alles" + +msgid "Send all" +msgstr "Alles verzenden" + +msgid "Keyboard Shortcuts" +msgstr "Sneltoesten" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Toon lijst met sneltoetsen" + +msgid "Setup Wizard" +msgstr "Installatiewizard" + +msgid "Show Configuration Folder" +msgstr "Toon de configuratie map" + +msgid "Show Tip of the Day" +msgstr "Toon Tip van de dag" + +msgid "Check for Update" +msgstr "Zoeken naar updates" + +msgid "Open Network Test" +msgstr "Open Netwerk Test" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&Over %s" + +msgid "Upload Models" +msgstr "Modellen uploaden" + +msgid "Download Models" +msgstr "Modellen downloaden" + +msgid "Default View" +msgstr "Standaard weergave" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Bovenste" + +msgid "Top View" +msgstr "Bovenaanzicht" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Onderkant" + +msgid "Bottom View" +msgstr "Onderaanzicht" + +msgid "Front" +msgstr "Voorkant" + +msgid "Front View" +msgstr "Vooraanzicht" + +msgid "Rear" +msgstr "Achterkant" + +msgid "Rear View" +msgstr "Achteraanzicht" + +msgid "Left" +msgstr "Links" + +msgid "Left View" +msgstr "Linker zicht" + +msgid "Right" +msgstr "Rechts" + +msgid "Right View" +msgstr "Rechterzijde bekijken" + +msgid "Start a new window" +msgstr "Een nieuw venster openen" + +msgid "New Project" +msgstr "Nieuw project" + +msgid "Start a new project" +msgstr "Start een nieuw project" + +msgid "Open a project file" +msgstr "Op een project bestand" + +msgid "Recent projects" +msgstr "Recente Projecten" + +msgid "Save Project" +msgstr "Bewaar project" + +msgid "Save current project to file" +msgstr "Bewaar huidig project als" + +msgid "Save Project as" +msgstr "Bewaar project als" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Bewaar huidig project als" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "3MF/STL/STEP/SVG/OBJ/AMF importeren" + +msgid "Load a model" +msgstr "Laad een model" + +msgid "Import Zip Archive" +msgstr "" + +msgid "Load models contained within a zip archive" +msgstr "" + +msgid "Import Configs" +msgstr "Importeer configuratie" + +msgid "Load configs" +msgstr "Configuratie laden" + +msgid "Import" +msgstr "Importeren" + +msgid "Export all objects as one STL" +msgstr "Alle objecten exporteren als één STL" + +msgid "Export all objects as STLs" +msgstr "Alle objecten exporteren als STL's" + +msgid "Export Generic 3MF" +msgstr "Generiek 3MF exporteren" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "3mf-bestand exporteren zonder enkele 3mf-toevoegingen te gebruiken" + +msgid "Export current sliced file" +msgstr "Huidig sliced bestand exporteren" + +msgid "Export all plate sliced file" +msgstr "Exporteer alle plate sliced bestanden" + +msgid "Export G-code" +msgstr "Exporteer G-code" + +msgid "Export current plate as G-code" +msgstr "Exporteer de huidige plaat als G-code" + +msgid "Export Preset Bundle" +msgstr "" + +msgid "Export current configuration to files" +msgstr "Huidige configuratie exporteren naar bestanden" + +msgid "Export" +msgstr "Exporteren" + +msgid "Quit" +msgstr "Stop" + +msgid "Undo" +msgstr "Ongedaan maken" + +msgid "Redo" +msgstr "Opnieuw doen" + +msgid "Cut selection to clipboard" +msgstr "Selectie naar klembord knippen" + +msgid "Copy" +msgstr "Kopie" + +msgid "Copy selection to clipboard" +msgstr "Kopieer selectie naar het klembord" + +msgid "Paste" +msgstr "Plakken" + +msgid "Paste clipboard" +msgstr "Klembord plakken" + +msgid "Delete selected" +msgstr "Verwijder selectie" + +msgid "Deletes the current selection" +msgstr "Verwijder de huidige selectie" + +msgid "Delete all" +msgstr "Alles verwijderen" + +msgid "Deletes all objects" +msgstr "Verwijder alle objecten" + +msgid "Clone selected" +msgstr "Duplicaat geselecteerd" + +msgid "Clone copies of selections" +msgstr "Duplicaten van selecties maken" + +msgid "Select all" +msgstr "Alles selecteren" + +msgid "Selects all objects" +msgstr "Selecteert alle objecten" + +msgid "Deselect all" +msgstr "Alles deselecteren" + +msgid "Deselects all objects" +msgstr "Alle objecten deselecteren" + +msgid "Use Perspective View" +msgstr "Perspectiefweergave gebruiken" + +msgid "Use Orthogonal View" +msgstr "Orthogonale weergave gebruiken" + +msgid "Show &G-code Window" +msgstr "" + +msgid "Show g-code window in Previce scene" +msgstr "" + +msgid "Show 3D Navigator" +msgstr "" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "" + +msgid "Reset Window Layout" +msgstr "" + +msgid "Reset to default window layout" +msgstr "" + +msgid "Show &Labels" +msgstr "Toon &Labels" + +msgid "Show object labels in 3D scene" +msgstr "Toon objectlabels in 3D-scène" + +msgid "Show &Overhang" +msgstr "Show &Overhang" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Show object overhang highlight in 3D scene" + +msgid "Preferences" +msgstr "Voorkeuren" + +msgid "Help" +msgstr "Help" + +msgid "Temperature Calibration" +msgstr "Temperatuurkalibratie" + +msgid "Pass 1" +msgstr "Fase 1" + +msgid "Flow rate test - Pass 1" +msgstr "Stroomsnelheidstest - Fase 1" + +msgid "Pass 2" +msgstr "Fase 2" + +msgid "Flow rate test - Pass 2" +msgstr "Stroomsnelheidstest - Fase 2" + +msgid "Flow rate" +msgstr "Flowrate" + +msgid "Pressure advance" +msgstr "Drukverhoging" + +msgid "Retraction test" +msgstr "Retractietest" + +msgid "Orca Tolerance Test" +msgstr "Orca Tolerance Test" + +msgid "Max flowrate" +msgstr "Max flowrate" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Meer..." + +msgid "Tutorial" +msgstr "Tutorial" + +msgid "Calibration help" +msgstr "Hulp bij kalibratie" + +msgid "More calibrations" +msgstr "Meer kalibraties" + +msgid "&Open G-code" +msgstr "&Open G-code" + +msgid "Open a G-code file" +msgstr "Open een G-codebestand" + +msgid "Re&load from Disk" +msgstr "Opnieuw laden vanaf schijf" + +msgid "Reload the plater from disk" +msgstr "Herlaad vanaf opslagmedium" + +msgid "Export &Toolpaths as OBJ" +msgstr "Exporteer &Toolpaths als OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Toolpaths exporteren als OBJ" + +msgid "Open &Slicer" +msgstr "Open & Studio" + +msgid "Open Slicer" +msgstr "Studio openen" + +msgid "&Quit" +msgstr "&Afsluiten" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Afsluiten %s" + +msgid "&File" +msgstr "&Bestand" + +msgid "&View" +msgstr "&Bekijken" + +msgid "&Help" +msgstr "&Help" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "A file exists with the same name: %s. Do you want to override it?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "A config exists with the same name: %s. Do you want to override it?" + +msgid "Overwrite file" +msgstr "Bestand overschrijven" + +msgid "Yes to All" +msgstr "Ja op alles" + +msgid "No to All" +msgstr "Nee op alles" + +msgid "Choose a directory" +msgstr "Kies een map" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +msgstr[1] "" + +msgid "Export result" +msgstr "Export resultaat" + +msgid "Select profile to load:" +msgstr "Selecteer het te laden profiel:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +msgstr[1] "" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" + +msgid "Import result" +msgstr "Importeer resultaat" + +msgid "File is missing" +msgstr "Bestand ontbreekt" + +msgid "The project is no longer available." +msgstr "Het object is niet meer beschikbaar." + +msgid "Filament Settings" +msgstr "Filament instellingen" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Wil je je persoonlijke gegevens van Bambu Cloud synchroniseren? \n" +"Het bevat de volgende informatie:\n" +"1. Voorinstellingen verwerken\n" +"2. Voorinstellingen voor filament\n" +"3. Presets voor de printer" + +msgid "Synchronization" +msgstr "Synchronisatie" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "Het apparaat kan niet meer gesprekken aan. Probeer het later opnieuw." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "De speler werkt niet goed. Installeer de systeemspeler opnieuw." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"De speler is niet geladen; klik op de \"play\" knop om het opnieuw te " +"proberen." + +msgid "Please confirm if the printer is connected." +msgstr "Controleer of de printer is aangesloten." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"De printer is momenteel bezig met downloaden. Probeer het opnieuw nadat het " +"is voltooid." + +msgid "Printer camera is malfunctioning." +msgstr "De printercamera werkt niet goed." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Er heeft zich een probleem voorgedaan. Werk de printerfirmware bij en " +"probeer het opnieuw." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." + +msgid "Please enter the IP of printer to connect." +msgstr "Voer het IP-adres in van de printer waarmee u verbinding wilt maken." + +msgid "Initializing..." +msgstr "Initialiseren..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "Verbinding mislukt. Controleer het netwerk en probeer het opnieuw" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Controleer het netwerk en probeer het opnieuw. U kunt de printer opnieuw " +"opstarten of bijwerken als het probleem zich blijft voordoen." + +msgid "The printer has been logged out and cannot connect." +msgstr "De printer is afgemeld en kan geen verbinding maken." + +msgid "Stopped." +msgstr "Gestopt." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "LAN-verbinding mislukt (liveview niet gestart)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Voor deze taak zijn Virtual Camera Tools vereist!\n" +"Wil je ze installeren?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Hulpmiddelen voor virtuele camera's downloaden" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Er draait nog een virtuele camera.\n" +"Snapmaker Orca ondersteunt slechts één virtuele camera.\n" +"Wil je deze virtuele camera stoppen?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Initialisatie virtuele camera mislukt (%s)!" + +msgid "Network unreachable" +msgstr "Netwerk onbereikbaar" + +msgid "Information" +msgstr "Informatie" + +msgid "Playing..." +msgstr "Afspelen..." + +msgid "Year" +msgstr "Jaar" + +msgid "Month" +msgstr "Maand" + +msgid "All Files" +msgstr "Alle bestanden" + +msgid "Group files by year, recent first." +msgstr "Groepeer bestanden per jaar, recent eerst." + +msgid "Group files by month, recent first." +msgstr "Groepeer bestanden per maand, recent eerst." + +msgid "Show all files, recent first." +msgstr "Toon alle bestanden, recentste eerst." + +msgid "Switch to timelapse files." +msgstr "Schakel over naar timelapse bestanden." + +msgid "Video" +msgstr "Video" + +msgid "Switch to video files." +msgstr "Schakel over naar videobestanden." + +msgid "Switch to 3mf model files." +msgstr "Switch to 3mf model files." + +msgid "Delete selected files from printer." +msgstr "Verwijder geselecteerde bestanden van de printer." + +msgid "Download" +msgstr "Downloaden" + +msgid "Download selected files from printer." +msgstr "Download geselecteerde bestanden van de printer." + +msgid "Select" +msgstr "Selecteren" + +msgid "Batch manage files." +msgstr "Batchbeheer van bestanden." + +msgid "Refresh" +msgstr "Vernieuwen" + +msgid "Reload file list from printer." +msgstr "Reload file list from printer." + +msgid "No printers." +msgstr "Geen printers" + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Verbinding mislukt [%d]!" + +msgid "Loading file list..." +msgstr "Bestandslijst laden..." + +msgid "No files" +msgstr "Geen bestanden" + +msgid "Load failed" +msgstr "Load failed" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Initialization failed (Device connection not ready)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "LAN Connection Failed (Failed to view sdcard)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "Browsing file in SD card is not supported in LAN Only Mode." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Initialisatie is mislukt (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +msgstr[1] "" + +msgid "Delete files" +msgstr "Delete files" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Do you want to delete the file '%s' from printer?" + +msgid "Delete file" +msgstr "Delete file" + +msgid "Fetching model infomations ..." +msgstr "Fetching model information..." + +msgid "Failed to fetch model information from printer." +msgstr "Mislukt bij het ophalen van modelgegevens van de printer." + +msgid "Failed to parse model information." +msgstr "Mislukt bij het parsen van modelinformatie." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "Bestand '%s' is verloren gegaan! Download het opnieuw." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"File: %s\n" +"Title: %s\n" + +msgid "Download waiting..." +msgstr "Download wacht..." + +msgid "Play" +msgstr "Afspelen" + +msgid "Open Folder" +msgstr "Map openen" + +msgid "Download finished" +msgstr "Download voltooid" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "%d%% downloaden..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." + +msgid "File does not exist." +msgstr "Bestand bestaat niet." + +msgid "File checksum error. Please retry." +msgstr "Fout in bestandscontrolesom. Probeer opnieuw." + +msgid "Not supported on the current printer version." +msgstr "Niet ondersteund op de huidige printerversie." + +msgid "Storage unavailable, insert SD card." +msgstr "Opslagruimte niet beschikbaar, Micro SD-kaart plaatsen." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Foutcode: %d" + +msgid "Speed:" +msgstr "Snelheid" + +msgid "Deadzone:" +msgstr "Deadzone:" + +msgid "Options:" +msgstr "Opties:" + +msgid "Zoom" +msgstr "Inzoomen" + +msgid "Translation/Zoom" +msgstr "Vertaling/Zoom" + +msgid "3Dconnexion settings" +msgstr "3Dconnexion instellingen" + +msgid "Swap Y/Z axes" +msgstr "Wissel Y/Z assen om" + +msgid "Invert X axis" +msgstr "" + +msgid "Invert Y axis" +msgstr "" + +msgid "Invert Z axis" +msgstr "" + +msgid "Invert Yaw axis" +msgstr "" + +msgid "Invert Pitch axis" +msgstr "" + +msgid "Invert Roll axis" +msgstr "" + +msgid "Printing Progress" +msgstr "Print voortgang" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Layer: N/A" + +msgid "Clear" +msgstr "Wissen" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"You have completed printing the mall model, \n" +"but synchronizing rating information has failed." + +msgid "How do you like this printing file?" +msgstr "Wat vind je van dit afdrukbestand?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"(Het model is al beoordeeld. Uw beoordeling overschrijft de vorige " +"beoordeling)." + +msgid "Rate" +msgstr "Tarief" + +msgid "Camera" +msgstr "Camera" + +msgid "SD Card" +msgstr "MicroSD-kaart" + +msgid "Camera Setting" +msgstr "Camera-instelling" + +msgid "Switch Camera View" +msgstr "" + +msgid "Control" +msgstr "Besturing" + +msgid "Printer Parts" +msgstr "Printer Parts" + +msgid "Print Options" +msgstr "Print Opties" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Licht" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Kamer" + +msgid "Bed" +msgstr "Printbed" + +msgid "Debug Info" +msgstr "Informatie over Debuggen" + +msgid "No SD Card" +msgstr "Geen microSD-kaart" + +msgid "SD Card Abnormal" +msgstr "MicroSD Kaart Abnormaal" + +msgid "Cancel print" +msgstr "Print annuleren" + +msgid "Are you sure you want to cancel this print?" +msgstr "Weet je zeker dat je deze print wilt annuleren?" + +msgid "Downloading..." +msgstr "Downloaden..." + +msgid "Cloud Slicing..." +msgstr "Cloud Slicing..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "In Cloud Slicing Queue, there are %s tasks ahead of you." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Layer: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Layer: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Verwarm het mondstuk tot boven de 170 graden voordat u filament laadt of " +"lost." + +msgid "Still unload" +msgstr "Nog steeds aan het ontladen" + +msgid "Still load" +msgstr "Laad nog steeds" + +msgid "Please select an AMS slot before calibration" +msgstr "Selecteer een AMS-slot voor de kalibratie." + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Kan de filament informatie niet lezen: het filament is in de printkop " +"geladen; verwijder het filament en probeer het opnieuw." + +msgid "This only takes effect during printing" +msgstr "Dit is alleen van kracht tijdens het printen" + +msgid "Silent" +msgstr "Stille" + +msgid "Standard" +msgstr "Standaard" + +msgid "Sport" +msgstr "Sport" + +msgid "Ludicrous" +msgstr "Ludicrous" + +msgid "Can't start this without SD card." +msgstr "Kan niet starten zonder microSD-kaart." + +msgid "Rate the Print Profile" +msgstr "Beoordeel het printprofiel" + +msgid "Comment" +msgstr "Opmerking" + +msgid "Rate this print" +msgstr "Beoordeel deze print" + +msgid "Add Photo" +msgstr "Foto toevoegen" + +msgid "Delete Photo" +msgstr "Foto verwijderen" + +msgid "Submit" +msgstr "Indienen" + +msgid "Please click on the star first." +msgstr "Klik eerst op de ster." + +msgid "InFo" +msgstr "Informatie" + +msgid "Get oss config failed." +msgstr "Het ophalen van de oss-configuratie is mislukt." + +msgid "Upload Pictrues" +msgstr "Upload Pictures" + +msgid "Number of images successfully uploaded" +msgstr "Aantal afbeeldingen succesvol geüpload" + +msgid " upload failed" +msgstr "uploaden mislukt" + +msgid " upload config prase failed\n" +msgstr " upload config prase mislukt\n" + +msgid " No corresponding storage bucket\n" +msgstr " Geen bijbehorende opslag bucket\n" + +msgid " can not be opened\n" +msgstr " cannot be opened\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"De volgende problemen deden zich voor tijdens het uploaden van afbeeldingen. " +"Wil je ze negeren?\n" +"\n" + +msgid "info" +msgstr "Informatie" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"De afdrukresultaten worden gesynchroniseerd. Probeer het een paar seconden " +"later opnieuw." + +msgid "Upload failed\n" +msgstr "Uploaden mislukt\n" + +msgid "obtaining instance_id failed\n" +msgstr "het verkrijgen van instance_id is mislukt\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Your comment result cannot be uploaded due to the following reasons:\n" +"\n" +" error code: " + +msgid "error message: " +msgstr "foutmelding: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Would you like to redirect to the webpage to give a rating?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Sommige afbeeldingen zijn niet geüpload. Wilt u doorverwijzen naar de " +"webpagina voor beoordeling?" + +msgid "You can select up to 16 images." +msgstr "Je kunt tot 16 afbeeldingen selecteren." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating (4 or 5 stars)." + +msgid "Status" +msgstr "Status" + +msgid "Update" +msgstr "Updaten" + +msgid "Don't show again" +msgstr "Niet nogmaals tonen" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s fout" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s heeft een fout aangetroffen" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s waarschuwing" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s heeft een waarschuwing" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s info" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s informatie" + +msgid "Skip" +msgstr "Overslaan" + +msgid "Newer 3mf version" +msgstr "Nieuwere versie 3mf" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" + +msgid "Download Beta Version" +msgstr "Beta-versie downloaden" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" + +msgid "Current Version: " +msgstr "Huidige versie:" + +msgid "Latest Version: " +msgstr "Laatste versie:" + +msgid "Not for now" +msgstr "Not for now" + +msgid "3D Mouse disconnected." +msgstr "3D-muis losgekoppeld." + +msgid "Configuration can update now." +msgstr "Er is een nieuwe configuratie beschikbaar. Wilt u updaten?" + +msgid "Detail." +msgstr "Details." + +msgid "Integration was successful." +msgstr "Integratie is gelukt." + +msgid "Integration failed." +msgstr "Integratie is mislukt." + +msgid "Undo integration was successful." +msgstr "Het ongedaan maken van de integratie is gelukt." + +msgid "New network plug-in available." +msgstr "Nieuwe netwerk plug-in beschikbaar" + +msgid "Details" +msgstr "Détails" + +msgid "New printer config available." +msgstr "Nieuwe printerconfiguratie beschikbaar." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "Het ongedaan maken van de integratie is mislukt." + +msgid "Exporting." +msgstr "Exporteren" + +msgid "Software has New version." +msgstr "Er is een update beschikbaar!" + +msgid "Goto download page." +msgstr "Ga naar de download pagina." + +msgid "Open Folder." +msgstr "Open bestandsmap." + +msgid "Safely remove hardware." +msgstr "Safely remove hardware." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "" +"%1$d de objecten hebben handmatig toegevoegde supports.@%1$d de objecten " +"hebben handmatig toegevoegde supports." +msgstr[1] "" +"%1$d de objecten hebben handmatig toegevoegde supports.@%1$d de objecten " +"hebben handmatig toegevoegde supports." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "" +"%1$d De objecten hebben geschilderde kleuren.@%1$d De objecten hebben " +"geschilderde kleuren." +msgstr[1] "" +"%1$d De objecten hebben geschilderde kleuren.@%1$d De objecten hebben " +"geschilderde kleuren." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "" +msgstr[1] "" + +msgid "ERROR" +msgstr "Fout" + +msgid "COMPLETED" +msgstr "VOLTOOID" + +msgid "CANCELED" +msgstr "GEANNULEERD" + +msgid "Cancel upload" +msgstr "Upload annuleren" + +msgid "Jump to" +msgstr "Ga naar" + +msgid "Error:" +msgstr "Fout:" + +msgid "Warning:" +msgstr "Waarschuwing:" + +msgid "Export successfully." +msgstr "Succesvol geëxporteerd" + +msgid "Model file downloaded." +msgstr "Modelbestand gedownload." + +msgid "Serious warning:" +msgstr "Ernstige waarschuwing:" + +msgid " (Repair)" +msgstr " (Repareren)" + +msgid " Click here to install it." +msgstr " Klik hier om het te installeren." + +msgid "WARNING:" +msgstr "WAARSCHUWING:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "Er zijn delen van het model die support nodig hebben. Zet support aan." + +msgid "Gcode path overlap" +msgstr "G-code pad overlap" + +msgid "Support painting" +msgstr "Support intekenen" + +msgid "Color painting" +msgstr "Kleur aanbrengen" + +msgid "Cut connectors" +msgstr "Cut connectors" + +msgid "Layers" +msgstr "Lagen" + +msgid "Range" +msgstr "Bereik" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"De toepassing kan niet volledig naar behoren functioneren omdat de " +"geinstalleerde versie van OpenGL lager is dan 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Upgrade uw videokaart drivers." + +msgid "Unsupported OpenGL version" +msgstr "Versie van OpenGL wordt niet ondersteund" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Kan shaders niet laden:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Fout bij het laden van shaders" + +msgctxt "Layers" +msgid "Top" +msgstr "Bovenste" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Onderste" + +msgid "Enable AI monitoring of printing" +msgstr "AI-monitoring van het printen inschakelen" + +msgid "Sensitivity of pausing is" +msgstr "De gevoeligheid van het pauzeren is" + +msgid "Enable detection of build plate position" +msgstr "Detectie van de positie van de printplaat inschakelen" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"De lokalisatietag van de bouwplaat wordt gedetecteerd en het afdrukken wordt " +"gepauzeerd als de tag zich niet binnen het vooraf gedefinieerde bereik " +"bevindt." + +msgid "First Layer Inspection" +msgstr "Inspectie van de eerste laag" + +msgid "Auto-recovery from step loss" +msgstr "Automatisch herstel na stapverlies" + +msgid "Allow Prompt Sound" +msgstr "Promptgeluid toestaan" + +msgid "Filament Tangle Detect" +msgstr "Filament Tangle Detection" + +msgid "Nozzle Clumping Detection" +msgstr "Nozzle Clumping Detection" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "Check if the nozzle is clumping by filament or other foreign objects." + +msgid "Nozzle Type" +msgstr "Nozzle Type" + +msgid "Stainless Steel" +msgstr "Roestvrij staal" + +msgid "Hardened Steel" +msgstr "Gehard staal" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Globale" + +msgid "Objects" +msgstr "Objecten" + +msgid "Advance" +msgstr "Geavanceerd" + +msgid "Compare presets" +msgstr "Instellingen vergelijken" + +msgid "View all object's settings" +msgstr "Alle instellingen van het object weergeven" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "" + +msgid "Auto orient objects on current plate" +msgstr "" + +msgid "Arrange objects on current plate" +msgstr "" + +msgid "Unlock current plate" +msgstr "" + +msgid "Lock current plate" +msgstr "" + +msgid "Edit current plate name" +msgstr "" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "" + +#, boost-format +msgid " plate %1%:" +msgstr " printbed %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Ongeldige naam, the volgende karakters zijn niet toegestaan:" + +msgid "Sliced Info" +msgstr "Sliced info" + +msgid "Used Filament (m)" +msgstr "Verbruikt filament (m)" + +msgid "Used Filament (mm³)" +msgstr "Verbruikt filament (mm³)" + +msgid "Used Filament (g)" +msgstr "Verbruikt filament (g)" + +msgid "Used Materials" +msgstr "Verbruikte materialen" + +msgid "Estimated time" +msgstr "Geschatte tijd" + +msgid "Filament changes" +msgstr "Filament wisselingen" + +msgid "Click to edit preset" +msgstr "Klik om de instelling te veranderen" + +msgid "Connection" +msgstr "Verbinding" + +msgid "Bed type" +msgstr "Printbed type" + +msgid "Flushing volumes" +msgstr "Volumes schoonmaken" + +msgid "Add one filament" +msgstr "Voeg een filament toe" + +msgid "Remove last filament" +msgstr "Verwijder het laatste filament" + +msgid "Synchronize filament list from AMS" +msgstr "Synchroniseer filamentlijst vanuit AMS" + +msgid "Set filaments to use" +msgstr "Stel filamenten in om te gebruiken" + +msgid "Search plate, object and part." +msgstr "Zoek plaat, object en onderdeel." + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Geen AMS filamenten. Selecteer een printer in 'Apparaat' pagina om AMS info " +"te laden." + +msgid "Sync filaments with AMS" +msgstr "Synchroniseer filamenten met AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Door filamenten te synchroniseren met de AMS zullen alle huidige " +"geselecteerde filament presets en kleuren wegvallen. Wilt u doorgaan?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Already did a synchronization; do you want to sync only changes or resync " +"all?" + +msgid "Sync" +msgstr "Sync" + +msgid "Resync" +msgstr "Resync" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "" +"Er zijn geen compatibele filamenten en er wordt geen synchronisatie " +"uitgevoerd." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Wilt u de wijzigingen opslaan in \"%1%\"?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Succesvol ontkoppeld. Het apparaat %s(%s) kan nu veilig van de computer " +"worden verwijderd." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "Het uitwerpen van apparaat %s(%s) is mislukt." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "" +"Er is niet opgeslagen project data gedectereerd, wilt u deze herstellen?" + +msgid "Restore" +msgstr "Herstellen" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"The current heatbed temperature is relatively high. The nozzle may clog when " +"printing this filament in a closed environment. Please open the front door " +"and/or remove the upper glass." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"De door het filament vereiste hardheid van de nozzle is hoger dan de " +"standaard hardheid van de nozzle van de printer. Vervang de geharde nozzle " +"of het filament, anders raakt de nozzle versleten of beschadigd." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Het inschakelen van traditionele timelapse-fotografie kan oneffenheden in " +"het oppervlak veroorzaken. Het wordt aanbevolen om over te schakelen naar de " +"vloeiende modus." + +msgid "Expand sidebar" +msgstr "Zijbalk uitklappen" + +msgid "Collapse sidebar" +msgstr "Zijbalk inklappen" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Bestand laden: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "" +"De 3mf is niet van Snapmaker Orca, er worden alleen geometriegegevens geladen." + +msgid "Load 3mf" +msgstr "Laad 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"Versie %s van de 3mf is nieuwer dan versie %s van %s. De volgende sleutels " +"worden niet herkend:" + +msgid "You'd better upgrade your software.\n" +msgstr "U dient de software te upgraden.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"Versie %s van de 3mf is nieuwer dan versie %s van %s. Wij stellen voor om uw " +"software te upgraden." + +msgid "Invalid values found in the 3mf:" +msgstr "Invalid values found in the 3mf:" + +msgid "Please correct them in the param tabs" +msgstr "Please correct them in the Param tabs" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "The 3mf has following modified G-code in filament or printer presets:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Controleer of deze aangepaste G-codes veilig zijn om schade aan de machine " +"te voorkomen!" + +msgid "Modified G-codes" +msgstr "Modified G-code" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" +"De 3mf heeft de volgende aangepaste voorinstellingen voor filament of " +"printer:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Controleer of de G-codes in deze presets veilig zijn om schade aan de " +"machine te voorkomen!" + +msgid "Customized Preset" +msgstr "Aangepaste voorinstelling" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "Naam van componenten in step-bestand is niet UTF8-formaat!" + +msgid "The name may show garbage characters!" +msgstr "" +"Vanwege niet-ondersteunde tekstcodering kunnen er onjuiste tekens " +"verschijnen!" + +msgid "Remember my choice." +msgstr "Remember my choice." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Kan bestand \"%1%\" niet laden. Er is een ongeldige configuratie gevonden." + +msgid "Objects with zero volume removed" +msgstr "Objecten zonder inhoud zijn verwijderd" + +msgid "The volume of the object is zero" +msgstr "Het volume van het object is 0" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"Het object uit bestand %s is erg klein, en misschien in meters of inches.\n" +" Wil je schalen naar millimeters?" + +msgid "Object too small" +msgstr "He tobject is te klein" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Dit bestand bevat verschillende objecten die op verschillende hoogten zijn " +"geplaatst.\n" +"In plaats van ze te beschouwen als meerdere objecten, moet\n" +"het bestand worden geladen als een enkel object met meerdere delen?" + +msgid "Multi-part object detected" +msgstr "Object met meerdere onderdelen gedetecteerd" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "" +"Wilt u deze bestanden laden als een enkel object bestaande uit meerdere " +"onderdelen?\n" + +msgid "Object with multiple parts was detected" +msgstr "Er is een object met meerdere onderdelen gedetecteerd" + +msgid "The file does not contain any geometry data." +msgstr "Het bestand bevat geen geometriegegevens." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Uw object lijkt te groot. Wilt u het verkleinen zodat het automatisch op het " +"printbed past?" + +msgid "Object too large" +msgstr "Object te groot" + +msgid "Export STL file:" +msgstr "Exporteer STL bestand:" + +msgid "Export AMF file:" +msgstr "AMF-bestand exporteren:" + +msgid "Save file as:" +msgstr "Bewaar bestand als:" + +msgid "Export OBJ file:" +msgstr "OBJ-bestand exporteren:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"The file %s already exists.\n" +"Do you want to replace it?" + +msgid "Confirm Save As" +msgstr "Opslaan als bevestigen" + +msgid "Delete object which is a part of cut object" +msgstr "Delete object which is a part of cut object" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"You are trying to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that, model consistency can't be guaranteed." + +msgid "The selected object couldn't be split." +msgstr "Het geselecteerde object kan niet opgesplitst worden." + +msgid "Another export job is running." +msgstr "Er is reeds een export taak actief." + +msgid "Unable to replace with more than one volume" +msgstr "Kan niet worden vervangen door meer dan één volume" + +msgid "Error during replace" +msgstr "Fout tijdens vervanging" + +msgid "Replace from:" +msgstr "Vervangen van:" + +msgid "Select a new file" +msgstr "Selecteer een nieuw bestand" + +msgid "File for the replace wasn't selected" +msgstr "Het bestand voor de vervanging is niet geselecteerd" + +msgid "Please select a file" +msgstr "Selecteer een bestand" + +msgid "Do you want to replace it" +msgstr "Do you want to replace it?" + +msgid "Message" +msgstr "Bericht" + +msgid "Reload from:" +msgstr "Herladen vanaf:" + +msgid "Unable to reload:" +msgstr "Kan niet herladen:" + +msgid "Error during reload" +msgstr "Fout tijdens herladen" + +msgid "There are warnings after slicing models:" +msgstr "Er zijn waarschuwingen na het slicen van modellen:" + +msgid "warnings" +msgstr "waarschuwingen" + +msgid "Invalid data" +msgstr "Interne solide vulling (infill)" + +msgid "Slicing Canceled" +msgstr "Slicing Geannuleerd" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Slicing printbed %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Los aub de slicing fouten op en publiceer opnieuw." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Netwerk plug-in is niet gedetecteerd. Netwerkgerelateerde functies zijn niet " +"beschikbaar." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Voorvertoning modus:\n" +"Het geladen bestand bevat alleen G-code, hierdoor is het niet mogelijk om " +"naar de pagina Voorbereiden schakelen." + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" +"Je kunt de aangepaste voorinstellingen bewaren voor het nieuwe project of ze " +"laten vervallen" + +msgid "Creating a new project" +msgstr "Start een nieuw project" + +msgid "Load project" +msgstr "Project laden" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Het is niet gelukt om het project op te slaan.\n" +"Controleer of de map online bestaat of dat het projectbestand in andere " +"programma's is geopend." + +msgid "Save project" +msgstr "Project opslaan" + +msgid "Importing Model" +msgstr "Model importeren" + +msgid "prepare 3mf file..." +msgstr "voorbereiden van 3mf bestand..." + +msgid "Download failed, unknown file format." +msgstr "Download failed; unknown file format." + +msgid "downloading project ..." +msgstr "project downloaden..." + +msgid "Download failed, File size exception." +msgstr "Download failed; File size exception." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Project %d%% gedownload" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" + +msgid "Import SLA archive" +msgstr "Importeer SLA-archief" + +msgid "The selected file" +msgstr "Het geselecteerde bestand" + +msgid "does not contain valid gcode." +msgstr "Bevat geen geldige Gcode" + +msgid "Error occurs while loading G-code file" +msgstr "Er is een fout opgetreden tijdens het laden van het G-codebestand." + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "" + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" + +msgid "Drop project file" +msgstr "Projectbestand neerzetten" + +msgid "Please select an action" +msgstr "Selecteer een actie" + +msgid "Open as project" +msgstr "Open als project" + +msgid "Import geometry only" +msgstr "Alleen geometrische data importeren" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Er kan slechts 1 G-code bestand tegelijkertijd geopend worden." + +msgid "G-code loading" +msgstr "G-Code wordt geladen" + +msgid "G-code files can not be loaded with models together!" +msgstr "G-Code bestanden en modellen kunnen niet tegelijk geladen worden!" + +msgid "Can not add models when in preview mode!" +msgstr "Modellen kunnen niet worden toegevoegd in voorbeeldmodus" + +msgid "All objects will be removed, continue?" +msgstr "Alle objecten zullen verwijderd worden, doorgaan?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"Het huidige project heeft niet-opgeslagen wijzigingen. Wilt u eerst opslaan " +"voordat u verder gaat?" + +msgid "Number of copies:" +msgstr "Aantal kopieën:" + +msgid "Copies of the selected object" +msgstr "Kopieen van het geselecteerde object" + +msgid "Save G-code file as:" +msgstr "Bewaar G-code bestand als:" + +msgid "Save SLA file as:" +msgstr "SLA-bestand opslaan als:" + +msgid "The provided file name is not valid." +msgstr "De opgegeven bestandsnaam is ongeldig." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "De volgende tekens zijn niet toegestaan in een FAT-bestandssysteem:" + +msgid "Save Sliced file as:" +msgstr "Bewaar het geslicede bestand als:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"Het bestand %s is naar de opslagruimte van de printer gestuurd en kan op de " +"printer worden bekeken." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Reason: part \"%1%\" is empty." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Reason: part \"%1%\" does not bound a volume." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Reason: part \"%1%\" has self intersection." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Reason: \"%1%\" and another part have no intersection." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" + +msgid "Private protection" +msgstr "" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" + +msgid "Upload and Print" +msgstr "Upload en print" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Afdrukken per object:\n" +"Het wordt geadviseerd om automatisch rangschikken te gebruiken om botsingen " +"tijdens het afdrukken te voorkomen." + +msgid "Send G-code" +msgstr "Verstuur G-code" + +msgid "Send to printer" +msgstr "Stuur naar printer" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" +"Handmatig aangebrachte support en kleuren zijn verwijderd voor het repareren." + +msgid "Optimize Rotation" +msgstr "" + +msgid "Invalid number" +msgstr "Ongeldig nummer" + +msgid "Plate Settings" +msgstr "Plate Settings" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Number of currently selected parts: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Aantal momenteel geselecteerde objecten: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Onderdeel naam: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Object naam: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Maat: %1% x %2% x %3% in\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Maat: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Volume: %1% in³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Volume: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Driehoeken: %1%\n" + +msgid "Tips:" +msgstr "Tips:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Plate% d: %s is not suggested for use printing filament %s(%s). If you still " +"want to do this print job, please set this filament's bed temperature to a " +"number that is not zero." + +msgid "Switching the language requires application restart.\n" +msgstr "" +"Om de taal te wijzigen dient de toepassing opnieuw opgestart te worden.\n" + +msgid "Do you want to continue?" +msgstr "Wilt u doorgaan?" + +msgid "Language selection" +msgstr "Taal selectie" + +msgid "Switching application language while some presets are modified." +msgstr "" +"De taal van de toepassing aanpaasen terwijl sommige voorinstellingen zijn " +"aangepast." + +msgid "Changing application language" +msgstr "Taal van de applicatie wijzigen" + +msgid "Changing the region will log out your account.\n" +msgstr "Als u de regio wijzigt, wordt u afgemeld bij uw account.\n" + +msgid "Region selection" +msgstr "Regio selectie" + +msgid "Second" +msgstr "Seconde" + +msgid "Browse" +msgstr "Browsen" + +msgid "Choose Download Directory" +msgstr "Kies Downloadmap" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "Algemene instellingen" + +msgid "Asia-Pacific" +msgstr "Azië-Pacific" + +msgid "China" +msgstr "China" + +msgid "Europe" +msgstr "Europa" + +msgid "North America" +msgstr "Noord-Amerika" + +msgid "Others" +msgstr "Andere" + +msgid "Login Region" +msgstr "Inlogregio" + +msgid "Stealth Mode" +msgstr "" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" + +msgid "Enable network plugin" +msgstr "" + +msgid "Check for stable updates only" +msgstr "" + +msgid "Metric" +msgstr "Metriek" + +msgid "Imperial" +msgstr "Imperiaal" + +msgid "Units" +msgstr "Eenheden" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"Op OSX is er standaard altijd maar één instantie van een app actief. Het is " +"echter toegestaan om meerdere instanties van dezelfde app uit te voeren " +"vanaf de opdrachtregel. In dat geval staat deze instelling slechts één " +"instantie toe." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" + +msgid "Home" +msgstr "Thuis" + +msgid "Default Page" +msgstr "" + +msgid "Set the page opened on startup." +msgstr "" + +msgid "Touchpad" +msgstr "" + +msgid "Camera style" +msgstr "" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" + +msgid "Zoom to mouse position" +msgstr "Zoom to mouse position" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." + +msgid "Use free camera" +msgstr "Gebruik vrij beweegbare camera" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Als dit is ingeschakeld wordt de vrij beweegbare camera gebruikt, anders een " +"vaste camera." + +msgid "Reverse mouse zoom" +msgstr "" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" + +msgid "Show splash screen" +msgstr "Toon startscherm" + +msgid "Show the splash screen during startup." +msgstr "" + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Toon de melding 'Tip van de dag' na het starten" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "" +"Indien ingeschakeld, worden bij het opstarten nuttige tips weergegeven." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "" +"Spoelvolumes: Automatisch berekenen telkens wanneer de kleur verandert." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "" +"Als deze optie is ingeschakeld, wordt elke keer dat de kleur verandert " +"automatisch berekend." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "Flushing volumes: Auto-calculate every time the filament is changed." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "If enabled, auto-calculate every time filament is changed" + +msgid "Remember printer configuration" +msgstr "" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." + +msgid "Network" +msgstr "Netwerk" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Gebruikersvoorinstellingen automatisch synchroniseren (printer/filament/" +"proces)" + +msgid "User Sync" +msgstr "Gebruiker synchroniseren" + +msgid "Update built-in Presets automatically." +msgstr "Update built-in presets automatically." + +msgid "System Sync" +msgstr "System Sync" + +msgid "Clear my choice on the unsaved presets." +msgstr "Clear my choice on the unsaved presets." + +msgid "Associate files to Snapmaker Orca" +msgstr "Koppel bestanden aan Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Koppel .3mf-bestanden aan Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Indien ingeschakeld, wordt Snapmaker Orca ingesteld als de standaardtoepassing " +"om .3mf-bestanden te openen" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Koppel .stl-bestanden aan Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Indien ingeschakeld, wordt Snapmaker Orca ingesteld als de standaardtoepassing " +"om .stl-bestanden te openen" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Koppel .step/.stp bestanden aan Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Indien ingeschakeld, wordt Snapmaker Orca ingesteld als de standaardtoepassing " +"om .step-bestanden te openen" + +msgid "Associate web links to Snapmaker Orca" +msgstr "" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "" + +msgid "Maximum recent projects" +msgstr "Maximum recent projects" + +msgid "Maximum count of recent projects" +msgstr "Maximum count of recent projects" + +msgid "Clear my choice on the unsaved projects." +msgstr "Clear my choice on the unsaved projects." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "No warnings when loading 3MF with modified G-code" + +msgid "Auto-Backup" +msgstr "Automatisch backup maken" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Backup your project periodically to help with restoring from an occasional " +"crash." + +msgid "every" +msgstr "every" + +msgid "The peroid of backup in seconds." +msgstr "The period of backup in seconds." + +msgid "Downloads" +msgstr "Downloads" + +msgid "Dark Mode" +msgstr "Donkere modus" + +msgid "Enable Dark mode" +msgstr "Donkere modus inschakelen" + +msgid "Develop mode" +msgstr "Ontwikkelmodus" + +msgid "Skip AMS blacklist check" +msgstr "Skip AMS blacklist check" + +msgid "Home page and daily tips" +msgstr "Startpagina en dagelijkse tips" + +msgid "Show home page on startup" +msgstr "Toon startpagina bij opstanden" + +msgid "Sync settings" +msgstr "Synchroniseer instellingen" + +msgid "User sync" +msgstr "Gebruikerssynchronisatie" + +msgid "Preset sync" +msgstr "Voorinstellingen synchronizeren" + +msgid "Preferences sync" +msgstr "Synchroniseer voorkeuren" + +msgid "View control settings" +msgstr "Besturing instellingen weergeven" + +msgid "Rotate of view" +msgstr "Roteer zicht" + +msgid "Move of view" +msgstr "Panweergave" + +msgid "Zoom of view" +msgstr "Zoom weergave" + +msgid "Other" +msgstr "Anders" + +msgid "Mouse wheel reverses when zooming" +msgstr "Omgekeerde scrollrichting tijdens het zoomen" + +msgid "Enable SSL(MQTT)" +msgstr "Enable SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Enable SSL(FTP)" + +msgid "Internal developer mode" +msgstr "Internal developer mode" + +msgid "Log Level" +msgstr "Log level" + +msgid "fatal" +msgstr "Fataal" + +msgid "error" +msgstr "Fout" + +msgid "warning" +msgstr "waarschuwing" + +msgid "debug" +msgstr "Debuggen" + +msgid "trace" +msgstr "Traceren" + +msgid "Host Setting" +msgstr "Host-instelling" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEV-host: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA-host: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "PRE-host: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Producthost" + +msgid "debug save button" +msgstr "Debuggen opslaan knop" + +msgid "save debug settings" +msgstr "Bewaar debug instellingen" + +msgid "DEBUG settings have saved successfully!" +msgstr "De debug instellingen zijn succesvol opgeslagen!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Cloudomgeving geschakeld; log alsjeblieft nogmaals in!" + +msgid "System presets" +msgstr "Systeem voorinstellingen" + +msgid "User presets" +msgstr "Gebruikersvoorinstellingen" + +msgid "Incompatible presets" +msgstr "Onbruikbare voorinstellingen" + +msgid "AMS filaments" +msgstr "AMS-filament" + +msgid "Click to pick filament color" +msgstr "Klik om de filament kleur te kiezen" + +msgid "Please choose the filament colour" +msgstr "Please choose the filament color" + +msgid "Add/Remove presets" +msgstr "Voorinstellingen toevoegen/verwijderen" + +msgid "Edit preset" +msgstr "Voorinstelling bewerken" + +msgid "Project-inside presets" +msgstr "Voorinstellingen binnen project" + +msgid "Add/Remove filaments" +msgstr "Filament toevoegen/verwijderen" + +msgid "Add/Remove materials" +msgstr "Materialen toevoegen/verwijderen" + +msgid "Select/Remove printers(system presets)" +msgstr "Printers selecteren/verwijderen (systeemvoorinstellingen)" + +msgid "Create printer" +msgstr "Printer maken" + +msgid "The selected preset is null!" +msgstr "De geselecteerde preset is nul!" + +msgid "End" +msgstr "End" + +msgid "Customize" +msgstr "Aanpassen" + +msgid "Other layer filament sequence" +msgstr "Other layer filament sequence" + +msgid "Please input layer value (>= 2)." +msgstr "Please input layer value (>= 2)." + +msgid "Plate name" +msgstr "Plate name" + +msgid "Same as Global Print Sequence" +msgstr "Same as Global Print Sequence" + +msgid "Print sequence" +msgstr "Afdrukvolgorde" + +msgid "Same as Global" +msgstr "Same as Global" + +msgid "Disable" +msgstr "Disable" + +msgid "Spiral vase" +msgstr "Spiraalvaas" + +msgid "First layer filament sequence" +msgstr "Eerste laag filamentvolgorde" + +msgid "Same as Global Plate Type" +msgstr "Same as Global Plate Type" + +msgid "Same as Global Bed Type" +msgstr "Hetzelfde als Global Bed Type" + +msgid "By Layer" +msgstr "By Layer" + +msgid "By Object" +msgstr "By Object" + +msgid "Accept" +msgstr "Accept" + +msgid "Log Out" +msgstr "Log Out" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "" +"Slice alle printbedden om een inschatting te krijgen van de printtijd en het " +"filamentverbruik" + +msgid "Packing project data into 3mf file" +msgstr "De projectdata wordt opgelslagen in een 3mf bestand" + +msgid "Uploading 3mf" +msgstr "3mf bestand uploaden" + +msgid "Jump to model publish web page" +msgstr "Ga naar de website om het model te publiceren" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "" +"Notitie: het voorbereiden kan enkele minuten duren. Even geduld alstublieft." + +msgid "Publish" +msgstr "Publiceren" + +msgid "Publish was cancelled" +msgstr "Het publiceren is geannuleerd" + +msgid "Slicing Plate 1" +msgstr "Slicing printbed 1" + +msgid "Packing data to 3mf" +msgstr "De data wordt opgeslagen in een 3mf" + +msgid "Jump to webpage" +msgstr "Ga naar de website" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Bewaar %s als" + +msgid "User Preset" +msgstr "Gebruikersvoorinstelling" + +msgid "Preset Inside Project" +msgstr "Voorinstelling Project Inside" + +msgid "Name is unavailable." +msgstr "Naam is niet beschikbaar." + +msgid "Overwrite a system profile is not allowed" +msgstr "Het overschrijven van een systeem profiel is niet toegestaand" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "Voorinstelling \"%1%\" bestaat al." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "" +"Voorinstelling \"%1%\" bestaat al en is niet compatibel met de huidige " +"printer." + +msgid "Please note that saving action will replace this preset" +msgstr "Let er aub op dat opslaan de voorinstelling zal overschrijven" + +msgid "The name cannot be the same as a preset alias name." +msgstr "" +"Er kan niet voor een naam gekozen worden die hetzelfde is als de naam van " +"een voorinstelling." + +msgid "Save preset" +msgstr "Bewaar voorinstelling" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Kopie" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "Printer \"%1%\" is geselecteerd met voorinstelling \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Kies een actie met \"%1%\" voorinstelling na het opslaan." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Voor \"%1%\", dient \"%2%\" veranderd te worden in \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "" +"Voor \"%1%\", dient \"%2%\" toegevoegd te worden als nieuwe voorinstelling" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Schakel eenvoudig over naar \"%1%\"" + +msgid "Task canceled" +msgstr "Taak geannuleerd" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Zoeken" + +msgid "My Device" +msgstr "Mijn apparaat" + +msgid "Other Device" +msgstr "Ander apparaat" + +msgid "Online" +msgstr "Online" + +msgid "Input access code" +msgstr "Toegangscode invoeren" + +msgid "Can't find my devices?" +msgstr "Kun je geen apparaten vinden?" + +msgid "Log out successful." +msgstr "Uitloggen gelukt." + +msgid "Busy" +msgstr "Bezet" + +msgid "Bambu Cool Plate" +msgstr "Bambu Cool (koude) Plate" + +msgid "PLA Plate" +msgstr "PLA Plate" + +msgid "Bambu Engineering Plate" +msgstr "Bambu Engineering (technische) plate" + +msgid "Bambu Smooth PEI Plate" +msgstr "" + +msgid "High temperature Plate" +msgstr "Plaat op hoge temperatuur" + +msgid "Bambu Textured PEI Plate" +msgstr "" + +msgid "Send print job to" +msgstr "Stuur de printtaak naar" + +msgid "Flow Dynamics Calibration" +msgstr "Kalibratie van Flow Dynamics" + +msgid "Click here if you can't connect to the printer" +msgstr "Klik hier als je geen verbinding kunt maken met de printer" + +msgid "send completed" +msgstr "Versturen gelukt" + +msgid "Error code" +msgstr "Error code" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "Geen login-account, alleen printers in LAN-modus worden weergegeven" + +msgid "Connecting to server" +msgstr "Verbinding maken met server" + +msgid "Synchronizing device information" +msgstr "Informatie over het apparaat synchroniseren" + +msgid "Synchronizing device information time out" +msgstr "Time-out tijdens synchronisatie van apparaatinformatie" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"Kan geen printopdracht verzenden terwijl de printer bezig is met het updaten " +"van de firmware" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"De printer is instructies aan het uitvoeren. Begin opnieuw met printen nadat " +"dit is voltooid" + +msgid "The printer is busy on other print job" +msgstr "De printer is bezig met een andere printtaak." + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament %s overschrijdt het aantal AMS-sleuven. Update de firmware van de " +"printer om de toewijzing van AMS-sleuven te ondersteunen." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Het filament overschrijdt het aantal AMS-sleuven. Update de firmware van de " +"printer om de toewijzing van AMS-sleuven te ondersteunen." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"De toewijzingen van filamenten aan AMS-slots zijn vastgesteld. U kunt op een " +"filament hierboven klikken om de toewijzing van het AMS slot te wijzigen" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Klik op elk filament hierboven om de bijbehorende AMS-sleuf op te geven " +"voordat u de printopdracht verzendt" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"Filament %s komt niet overeen met het filament in AMS-sleuf %s. Werk de " +"firmware van de printer bij om de toewijzing van AMS-sleuven te ondersteunen." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Het filament komt niet overeen met het filament in de AMS-sleuf. Update de " +"firmware van de printer om de toewijzing van AMS-sleuven te ondersteunen." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"De firmware van de printer ondersteunt alleen sequentiële toewijzing van " +"filament => AMS-sleuf." + +msgid "An SD card needs to be inserted before printing." +msgstr "Er moet een MicroSD-kaart worden geplaatst voordat u kunt afdrukken." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "" +"Er moet een MicroSD-kaart worden geplaatst om een timelapse op te nemen." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Kan de printopdracht niet naar een printer sturen waarvan de firmware moet " +"worden bijgewerkt." + +msgid "Cannot send the print job for empty plate" +msgstr "Kan geen afdruktaak verzenden voor een lege plaat." + +msgid "This printer does not support printing all plates" +msgstr "" +"Deze printer biedt geen ondersteuning voor het afdrukken van alle platen" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"When spiral vase mode is enabled, machines with I3 structure will not " +"generate timelapse videos." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Timelapse wordt niet ondersteund omdat Afdruksequentie is ingesteld op \"Per " +"object\"." + +msgid "Errors" +msgstr "Fouten" + +msgid "Please check the following:" +msgstr "Please check the following:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"Er zijn enkele onbekende filamenten in de AMS mappings. Controleer of het de " +"vereiste filamenten zijn. Als ze in orde zijn, klikt u op \"Bevestigen\" om " +"het afdrukken te starten." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "mondstuk in voorinstelling: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "mondstuk onthouden: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Your nozzle diameter in sliced file is not consistent with the saved nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "Please fix the error above, otherwise printing cannot continue." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Please click the confirm button if you still want to proceed with printing." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Aansluiten op de printer. Kan niet annuleren tijdens het verbindingsproces." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Let op bij gebruik! Flowkalibratie op de PEI-plaat met structuur kan " +"mislukken vanwege het verstrooide oppervlak." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Automatic flow calibration using the Micro Lidar" + +msgid "Modifying the device name" +msgstr "De naam van het apparaat wijzigen" + +msgid "Bind with Pin Code" +msgstr "Bind with Pin Code" + +msgid "Send to Printer SD card" +msgstr "Verzenden naar de MicroSD-kaart in de printer" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "Kan de printtaak niet verzenden wanneer de upgrade wordt uitgevoerd" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "" +"De geselecteerde printer is niet compatibel met de gekozen " +"printervoorinstellingen." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "" +"A MicroSD card needs to be inserted before sending to the printer SD card." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "De printer moet zich in hetzelfde LAN bevinden als Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "" +"De printer biedt geen ondersteuning voor het verzenden naar de microSD-kaart " +"van de printer." + +msgid "Slice ok." +msgstr "Slice gelukt" + +msgid "View all Daily tips" +msgstr "Bekijk alle dagelijkse tips" + +msgid "Failed to create socket" +msgstr "Failed to create socket" + +msgid "Failed to connect socket" +msgstr "Failed to connect socket" + +msgid "Failed to publish login request" +msgstr "Failed to publish login request" + +msgid "Get ticket from device timeout" +msgstr "Timeout getting ticket from device" + +msgid "Get ticket from server timeout" +msgstr "Timeout getting ticket from server" + +msgid "Failed to post ticket to server" +msgstr "Failed to post ticket to server" + +msgid "Failed to parse login report reason" +msgstr "Failed to parse login report reason" + +msgid "Receive login report timeout" +msgstr "Receive login report timeout" + +msgid "Unknown Failure" +msgstr "Onbekende fout" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." + +msgid "Can't find Pin Code?" +msgstr "Can't find Pin Code?" + +msgid "Pin Code" +msgstr "Pin Code" + +msgid "Binding..." +msgstr "Binding..." + +msgid "Please confirm on the printer screen" +msgstr "Please confirm on the printer screen" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Log in failed. Please check the Pin Code." + +msgid "Log in printer" +msgstr "Inloggen op printer" + +msgid "Would you like to log in this printer with current account?" +msgstr "Wil je met het huidige account inloggen op de printer?" + +msgid "Check the reason" +msgstr "Check the reason" + +msgid "Read and accept" +msgstr "Read and accept" + +msgid "Terms and Conditions" +msgstr "Terms and Conditions" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Thank you for purchasing a Bambu Lab device. Before using your Bambu Lab " +"device, please read the terms and conditions. By clicking to agree to use " +"your Bambu Lab device, you agree to abide by the Privacy Policy and Terms of " +"Use (collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." + +msgid "and" +msgstr "and" + +msgid "Privacy Policy" +msgstr "Privacy Policy" + +msgid "We ask for your help to improve everyone's printer" +msgstr "We ask for your help to improve everyone's printer" + +msgid "Statement about User Experience Improvement Program" +msgstr "Statement about User Experience Improvement Program" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Statement on User Experience Improvement Plan" + +msgid "Log in successful." +msgstr "Inloggen gelukt." + +msgid "Log out printer" +msgstr "Uitloggen op printer" + +msgid "Would you like to log out the printer?" +msgstr "Wil je uitloggen van de printer?" + +msgid "Please log in first." +msgstr "Eerst inloggen aub." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "" +"Er is een probleem opgetreden tijdens het verbinden met de printer. Probeer " +"het opnieuw." + +msgid "Failed to log out." +msgstr "Uitloggen mislukt." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Bewaar huidige %s" + +msgid "Delete this preset" +msgstr "Verwijder deze voorinstelling" + +msgid "Search in preset" +msgstr "Zoeken in voorinstelling" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Klik om alle instellingen terug te zetten naar de laatst opgeslagen " +"voorinstelling." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"Een Prime-toren is vereist voor een vloeiende timeplase-modus. Er kunnen " +"gebreken ontstaan aan het model zonder prime-toren. Weet je zeker dat je de " +"prime-toren wilt uitschakelen?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"Een prime-toren is vereist voor een vloeiende timelapse-modus. Er kunnen " +"gebreken ontstaan aan het model zonder prime-toren. Wilt u de prime-toren " +"inschakelen?" + +msgid "Still print by object?" +msgstr "Print je nog steeds per object?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"We hebben een experimentele stijl toegevoegd, „Tree Slim”, met een kleiner " +"ondersteuningsvolume maar een zwakkere sterkte.\n" +"We raden aan om het te gebruiken met: 0 interfacelagen, 0 bovenafstand, 2 " +"muren." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Deze instellingen automatisch wijzigen? \n" +"Ja - Wijzig deze instellingen automatisch.\n" +"Nee - Wijzig deze instellingen niet voor mij." + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Voor de stijlen „Tree Strong” en „Tree Hybrid” raden we de volgende " +"instellingen aan: ten minste 2 interfacelagen, ten minste 0,1 mm op z " +"afstand of gebruik support materiaal op de interface." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"When using support material for the support interface, we recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" + +msgid "Are you sure you want to enable this option?" +msgstr "" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"De laaghoogte overschrijdt de limiet in Printerinstellingen -> Extruder -> " +"Laaghoogtelimieten, dit kan problemen met de afdrukkwaliteit veroorzaken." + +msgid "Adjust to the set range automatically? \n" +msgstr "Automatisch aanpassen aan het ingestelde bereik? \n" + +msgid "Adjust" +msgstr "Aanpassen" + +msgid "Ignore" +msgstr "Negeer" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications. Please use with the latest printer firmware." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"Bij het opnemen van timelapse zonder toolhead is het aan te raden om een " +"„Timelapse Wipe Tower” toe te voegen \n" +"door met de rechtermuisknop op de lege positie van de bouwplaat te klikken " +"en „Add Primitive” ->\"Timelapse Wipe Tower” te kiezen." + +msgid "Line width" +msgstr "Lijn dikte" + +msgid "Seam" +msgstr "Naad" + +msgid "Precision" +msgstr "Precisie" + +msgid "Wall generator" +msgstr "Wandgenerator" + +msgid "Walls and surfaces" +msgstr "" + +msgid "Bridging" +msgstr "" + +msgid "Overhangs" +msgstr "" + +msgid "Walls" +msgstr "Wanden" + +msgid "Top/bottom shells" +msgstr "Boven-/onderlagen" + +msgid "Initial layer speed" +msgstr "Printsnelheid van de eerste laag" + +msgid "Other layers speed" +msgstr "Snelheid voor andere lagen" + +msgid "Overhang speed" +msgstr "Snelheid voor overhangende gebieden" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Dit is de snelheid voor diverse overhanggraden. Overhanggraden worden " +"uitgedrukt als een percentage van de laag breedte. 0 betekend dat er niet " +"afgeremd wordt voor overhanggraden en dat dezelfde snelheid als voor wanden " +"gebruikt wordt." + +msgid "Bridge" +msgstr "Brug" + +msgid "Set speed for external and internal bridges" +msgstr "" + +msgid "Travel speed" +msgstr "Verplaatsing-sneleheid" + +msgid "Acceleration" +msgstr "Versnelling" + +msgid "Jerk(XY)" +msgstr "Jerk(XY)" + +msgid "Raft" +msgstr "Vlot" + +msgid "Support filament" +msgstr "Support filament" + +msgid "Tree supports" +msgstr "" + +msgid "Skirt" +msgstr "Skirt" + +msgid "Prime tower" +msgstr "Prime toren" + +msgid "Special mode" +msgstr "Speciale modus" + +msgid "G-code output" +msgstr "G-code uitvoer" + +msgid "Post-processing Scripts" +msgstr "Post-processing Scripts" + +msgid "Notes" +msgstr "Notes" + +msgid "Frequent" +msgstr "Veelgebruikt" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"De volgende regel %s bevat gereserveerde trefwoorden.\n" +"Verwijder deze woorden alstublieft, anders overschrijven deze de G-code-" +"visualisatie en de schatting van de afdruktijd.@" +msgstr[1] "" +"De volgende regel %s bevat gereserveerde trefwoorden.\n" +"Verwijder deze woorden alstublieft, anders overschrijven deze de G-code-" +"visualisatie en de schatting van de afdruktijd.@" + +msgid "Reserved keywords found" +msgstr "Gereserveerde zoekworden gevonden" + +msgid "Setting Overrides" +msgstr "Overschrijvingen instellen" + +msgid "Retraction" +msgstr "Terugtrekken (retraction)" + +msgid "Basic information" +msgstr "Basis informatie" + +msgid "Recommended nozzle temperature" +msgstr "Aanbevolen nozzle temperatuur" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"De geadviseerde nozzle temperatuur voor dit filament. 0 betekend dat er geen " +"voorgestelde waarde is " + +msgid "Print chamber temperature" +msgstr "" + +msgid "Print temperature" +msgstr "Print temperatuur" + +msgid "Nozzle" +msgstr "Nozzle" + +msgid "Nozzle temperature when printing" +msgstr "Nozzle temperatuur tijdens printen" + +msgid "Cool plate" +msgstr "Cool (koud) printbed" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Dit is de bedtemperatuur wanneer de koelplaat is geïnstalleerd. Een waarde " +"van 0 betekent dat het filament printen op de Cool Plate niet ondersteunt." + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "Engineering plate (technisch printbed)" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Dit is de bedtemperatuur wanneer de technische plaat is geïnstalleerd. Een " +"waarde van 0 betekent dat het filament afdrukken op de Engineering Plate " +"niet ondersteunt." + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Gladde PEI Plaat / Hoge Temp Plaat" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Bedtemperatuur wanneer gladde PEI-plaat/hoge temperatuurplaat is " +"geïnstalleerd. Waarde 0 betekent dat het filament niet geschikt is voor " +"afdrukken op de gladde PEI-plaat/hoge temperatuurplaat." + +msgid "Textured PEI Plate" +msgstr "PEI plaat met structuur" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Bedtemperatuur wanneer een getextureerde PEI-plaat is geïnstalleerd. 0 " +"betekent dat het filament niet wordt ondersteund op de getextureerde PEI-" +"plaat" + +msgid "Volumetric speed limitation" +msgstr "Volumetrische snelheidsbeperking" + +msgid "Cooling" +msgstr "Koeling" + +msgid "Cooling for specific layer" +msgstr "Koeling voor specifieke laag" + +msgid "Part cooling fan" +msgstr "Prinkop ventilator" + +msgid "Min fan speed threshold" +msgstr "Minimale snelheidsdrempel ventilator snelheid" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"De snelheid van de printkop ventilator begint op minimale snelheid te " +"draaien wanneer de geschatte printtijd voor de laag niet langer is dan de " +"printtijd in de instelling. Wanneer de printtijd korter is dan de " +"drempelwaarde, wordt de ventilatorsnelheid geïnterpoleerd tussen de minimale " +"en maximale ventilatorsnelheid volgens de printtijd van de laag" + +msgid "Max fan speed threshold" +msgstr "Snelheidsdrempel ventilatorsnelheid" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"De snelheid van de printkop ventilator zal maximaal zijn als de inschatte " +"tijd voor het printen van de laag lager is dan de ingestelde waarde" + +msgid "Auxiliary part cooling fan" +msgstr "Extra koel ventilator" + +msgid "Exhaust fan" +msgstr "Uitlaatventilator" + +msgid "During print" +msgstr "Tijdens het afdrukken" + +msgid "Complete print" +msgstr "Afdruk compleet" + +msgid "Filament start G-code" +msgstr "Filament start G-code" + +msgid "Filament end G-code" +msgstr "Filament einde G-code" + +msgid "Multimaterial" +msgstr "" + +msgid "Wipe tower parameters" +msgstr "Afveegblokparameters" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "Toolwisselparameter voor multi-materialprinters met één extruder" + +msgid "Ramming settings" +msgstr "Ramming-instellingen" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "" + +msgid "Printable space" +msgstr "Ruimte waarbinnen geprint kan worden" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "" + +msgid "G-code flavor is switched" +msgstr "" + +msgid "Cooling Fan" +msgstr "" + +msgid "Fan speed-up time" +msgstr "" + +msgid "Extruder Clearance" +msgstr "Extruder ruimte" + +msgid "Adaptive bed mesh" +msgstr "" + +msgid "Accessory" +msgstr "Accessoire" + +msgid "Machine gcode" +msgstr "Machine G-code" + +msgid "Machine start G-code" +msgstr "Machine start G-code" + +msgid "Machine end G-code" +msgstr "Machine einde G-code" + +msgid "Printing by object G-code" +msgstr "Afdrukken met object G-code" + +msgid "Before layer change G-code" +msgstr "G-Code voor de laag wijziging" + +msgid "Layer change G-code" +msgstr "G-code laag wijzigen" + +msgid "Time lapse G-code" +msgstr "Time-lapse G-code" + +msgid "Change filament G-code" +msgstr "Filament G-code aanpassen" + +msgid "Change extrusion role G-code" +msgstr "" + +msgid "Pause G-code" +msgstr "Pauzeer G-code" + +msgid "Template Custom G-code" +msgstr "Sjabloon Aangepaste G-code" + +msgid "Motion ability" +msgstr "Bewegingsvermogen" + +msgid "Normal" +msgstr "Normaal" + +msgid "Speed limitation" +msgstr "Snelheids limiet" + +msgid "Acceleration limitation" +msgstr "Versnellingsbeperking" + +msgid "Jerk limitation" +msgstr "Jerk beperking" + +msgid "Single extruder multimaterial setup" +msgstr "" + +msgid "Wipe tower" +msgstr "Afveegblok" + +msgid "Single extruder multimaterial parameters" +msgstr "Parameter voor multi-material met één extruder" + +msgid "Layer height limits" +msgstr "Limieten voor laaghoogte" + +msgid "Lift Z Enforcement" +msgstr "" + +msgid "Retraction when switching material" +msgstr "Terugtrekken (retraction) bij het wisselen van filament" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Disable it in order to enable Firmware Retraction?" + +msgid "Firmware Retraction" +msgstr "Firmware intrekken" + +msgid "Detached" +msgstr "Losgemaakt" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"%d Filament Preset en %d Process Preset zijn gekoppeld aan deze printer. " +"Deze voorinstellingen worden verwijderd als de printer wordt verwijderd." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "" +"Presets die door andere presets worden geërfd, kunnen niet worden verwijderd!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Voorinstelling" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "De volgende voorinstelling zal ook verwijderd worden@" +msgstr[1] "De volgende voorinstelling zal ook verwijderd worden@" + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Weet je zeker dat je de geselecteerde preset wilt verwijderen? \n" +"Als de voorinstelling overeenkomt met een filament dat momenteel in gebruik " +"is op je printer, reset dan de filamentinformatie voor die sleuf." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Weet u zeker dat u de geselecteerde preset wilt %1%?" + +msgid "All" +msgstr "Alles" + +msgid "Set" +msgstr "Instellen" + +msgid "Click to reset current value and attach to the global value." +msgstr "" +"Klik om de huidige waarde terug te zetten en de globale waarde toe te passen." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Klik om de huidige aanpassingen te verwerpen en terug te gaan naar de " +"standaard instelling." + +msgid "Process Settings" +msgstr "Procesinstellingen" + +msgid "Undef" +msgstr "Niet gedefinieerd" + +msgid "Unsaved Changes" +msgstr "niet-opgeslagen wijzigingen" + +msgid "Transfer or discard changes" +msgstr "Verwerp of bewaar aanpassingen" + +msgid "Old Value" +msgstr "Oude waarde" + +msgid "New Value" +msgstr "Nieuwe waarde" + +msgid "Transfer" +msgstr "Overdracht" + +msgid "Don't save" +msgstr "Niet opslaan" + +msgid "Discard" +msgstr "Verwerpen" + +msgid "Click the right mouse button to display the full text." +msgstr "Klik op de rechtermuisknop om de volledige tekst weer te geven." + +msgid "All changes will not be saved" +msgstr "Er zullen geen wijzigingen worden opgeslagen" + +msgid "All changes will be discarded." +msgstr "Alle wijzigingen zullen verloren gaan." + +msgid "Save the selected options." +msgstr "Bewaar de geselecteerde opties." + +msgid "Keep the selected options." +msgstr "Bewaar de geselecteerde opties." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "" +"Breng de geselecteerde opties over naar de nieuwe geselecteerde " +"voorinstelling" + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Sla de geselecteerde opties op als preset \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Breng de geselecteerde opties over naar de nieuwe geselecteerde " +"voorinstelling\n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "" +"Voorinstelling \"%1%\" bevat de navolgende nog niet opgeslagen aanpassingen:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"Voorinstelling \"%1%\" is niet compatibel met het nieuwe printer profiel en " +"bevat de navolgende nog niet opgeslagen aanpassingen:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"Voorinstelling \"%1%\" is niet compatibel met het niet proces profiel en " +"bevat de navolgende nog niet opgeslagen aanpassingen:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "You have changed some settings of preset \"%1%\". " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"You can save or discard the preset values you have modified." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" + +msgid "You have previously modified your settings." +msgstr "You have previously modified your settings." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" + +msgid "Extruders count" +msgstr "Extruder aantal" + +msgid "General" +msgstr "Algemeen" + +msgid "Capabilities" +msgstr "Mogelijkheden" + +msgid "Show all presets (including incompatible)" +msgstr "Toon alle presets (inclusief incompatibele)" + +msgid "Select presets to compare" +msgstr "Select presets to compare" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" + +msgid "Transfer values from left to right" +msgstr "" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" + +msgid "Add File" +msgstr "Bestand toevoegen" + +msgid "Set as cover" +msgstr "Instellen als dekking" + +msgid "Cover" +msgstr "Omslag" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "De naam \"%1%\" bestaat reeds." + +msgid "Basic Info" +msgstr "Basisinfo" + +msgid "Pictures" +msgstr "Afbeeldingen" + +msgid "Bill of Materials" +msgstr "Materiaal rekening" + +msgid "Assembly Guide" +msgstr "Montagehandleiding" + +msgid "Author" +msgstr "Auteur" + +msgid "Model Name" +msgstr "Model naam" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Bijwerken" + +msgid "A new version is available" +msgstr "Er is een nieuwe versie beschikbaar" + +msgid "Configuration update" +msgstr "Configuratie update" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "" +"Er is een installatiebestand met een nieuwe configuratie. Wilt u deze " +"installeren?" + +msgid "Description:" +msgstr "Omschrijving:" + +msgid "Configuration incompatible" +msgstr "De configuratie is niet geschikt" + +msgid "the configuration package is incompatible with current application." +msgstr "Het configuratie bestand is niet compatibel met de huidige toepassing." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"Het configuratiepakket is niet compatibel met de huidige toepassing.\n" +"%s zal het configuratiepakket bijwerken. Anders kan het niet starten." + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Exit %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "" +"Het configuratie bestand is niet compatibel met de huidige versie van Bambu " +"Studio." + +msgid "Configuration updates" +msgstr "Configuratie updates" + +msgid "No updates available." +msgstr "Geen updates beschikbaar." + +msgid "The configuration is up to date." +msgstr "De configuratie is up to date." + +msgid "Obj file Import color" +msgstr "Obj file Import color" + +msgid "Specify number of colors:" +msgstr "Specify number of colors:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "The color count should be in range [%d, %d]." + +msgid "Recommended " +msgstr "Recommended " + +msgid "Current filament colors:" +msgstr "Current filament colors:" + +msgid "Quick set:" +msgstr "Quick set:" + +msgid "Color match" +msgstr "Color match" + +msgid "Approximate color matching." +msgstr "Approximate color matching." + +msgid "Append" +msgstr "Append" + +msgid "Add consumable extruder after existing extruders." +msgstr "Add consumable extruder after existing extruders." + +msgid "Reset mapped extruders." +msgstr "Reset mapped extruders." + +msgid "Cluster colors" +msgstr "Cluster colors" + +msgid "Map Filament" +msgstr "Map Filament" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Warning: The count of newly added and \n" +" current extruders exceeds 16." + +msgid "Ramming customization" +msgstr "Ramming aanpassen" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"Ramming wordt gebruikt voor het snel extruderen vlak voor een toolwisseling " +"bij multi-materialprinters met één extruder. Het doel daarvan is om het " +"einde van het ongeladen filament goed te vormen (zodat het later weer " +"geladen kan worden) en nieuw filament niet verhinderd wordt. Deze fase is " +"belangrijk. Verschillende materialen vereisen verschillende " +"extrusiesnelheden voor de juiste vorm. Daarom zijn de waarden tijdens de " +"ramming aan te passen.\n" +"\n" +"Dit is een expert-level instelling. Onjuiste aanpassingen kunnen zorgen voor " +"verstoppingen en andere problemen." + +msgid "Total ramming time" +msgstr "Totale ramming-tijd" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "Totaal ramming-volume" + +msgid "Ramming line width" +msgstr "Lijnbreedte voor ramming" + +msgid "Ramming line spacing" +msgstr "Lijnafstand voor ramming" + +msgid "Auto-Calc" +msgstr "Automatisch berekenen" + +msgid "Re-calculate" +msgstr "Herbereken" + +msgid "Flushing volumes for filament change" +msgstr "Volumes reinigen voor filament wijziging" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Spoelvolume (mm³) voor elk filamentpaar." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Suggestie: Spoelvolume in bereik [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "" +"De vermenigvuldigingsfactor moet in het bereik liggen van [%.2f, %.2f]." + +msgid "Multiplier" +msgstr "Vermenigvuldiger" + +msgid "unloaded" +msgstr "uitgeladen" + +msgid "loaded" +msgstr "Geladen" + +msgid "Filament #" +msgstr "Filament #" + +msgid "From" +msgstr "Van" + +msgid "To" +msgstr "Naar" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "Bambu Network-plug-in niet gedetecteerd." + +msgid "Click here to download it." +msgstr "Klik hier om het te downloaden." + +msgid "Login" +msgstr "Inloggen" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "Het configuratiebestand is aangepast in de vorige Config Guide" + +msgid "Configuration package changed" +msgstr "Het configuratiepakket is gewijzigd" + +msgid "Toolbar" +msgstr "Gereedschapsbalk" + +msgid "Objects list" +msgstr "Object lijst" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Import geometry data from STL/STEP/3MF/OBJ/AMF files" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Plakken vanuit klembord" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "" +"Dialoogvenster met instellingen voor 3Dconnexion-apparaten weergeven/" +"verbergen" + +msgid "Switch table page" +msgstr "Schakeltabel pagina" + +msgid "Show keyboard shortcuts list" +msgstr "Toon lijst met sneltoetsen" + +msgid "Global shortcuts" +msgstr "Globale snelkoppelingen" + +msgid "Rotate View" +msgstr "Rotate View" + +msgid "Pan View" +msgstr "Pan View" + +msgid "Mouse wheel" +msgstr "Muiswiel" + +msgid "Zoom View" +msgstr "Zoom View" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Oriënteert automatisch geselecteerde objecten of alle objecten. Als er " +"geselecteerde objecten zijn, oriënteert het alleen de geselecteerde " +"objecten. Anders oriënteert het alle objecten op de disk." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "De menubalk in-/uitschuiven" + +msgid "⌘+Any arrow" +msgstr "⌘+willekeurige pijl" + +msgid "Movement in camera space" +msgstr "Beweging in cameragebied" + +msgid "⌥+Left mouse button" +msgstr "⌥+Linker muisknop" + +msgid "Select a part" +msgstr "Selecteer een onderdeel" + +msgid "⌘+Left mouse button" +msgstr "⌘+Linker muisknop" + +msgid "Select multiple objects" +msgstr "Selecteer meerdere objecten" + +msgid "Ctrl+Any arrow" +msgstr "CTRL+willekeurige pijl" + +msgid "Alt+Left mouse button" +msgstr "Alt+Linker muisknop" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+Linker muisknop" + +msgid "Shift+Left mouse button" +msgstr "Shift+Linker muisknop" + +msgid "Select objects by rectangle" +msgstr "Objecten selecteren door rechthoek" + +msgid "Arrow Up" +msgstr "Pijl naar boven" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Verplaats de selectie 10mm in een positieve Y richting" + +msgid "Arrow Down" +msgstr "Pijl omlaag" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Verplaats de selectie 10mm in een negatieve Y richting" + +msgid "Arrow Left" +msgstr "Pijl naar links" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Verplaats de selectie 10mm in een negatieve X richting" + +msgid "Arrow Right" +msgstr "Pijl naar rechts" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Verplaats de selectie 10mm in een positieve X richting" + +msgid "Shift+Any arrow" +msgstr "Shift+willekeurige pijl" + +msgid "Movement step set to 1 mm" +msgstr "Bewegingsinterval ingesteld op 1mm" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "Toets 1-9: kies filament voor het object/onderdeel" + +msgid "Camera view - Default" +msgstr "Camera hoek - Standaard" + +msgid "Camera view - Top" +msgstr "Camera hoek - Bovenkant" + +msgid "Camera view - Bottom" +msgstr "Camera hoek - Onderkant" + +msgid "Camera view - Front" +msgstr "Camera hoek - Voorkant" + +msgid "Camera view - Behind" +msgstr "Camera hoek - Achter" + +msgid "Camera Angle - Left side" +msgstr "Camera hoek - Linker zijde" + +msgid "Camera Angle - Right side" +msgstr "Camera hoek - Rechter zijde" + +msgid "Select all objects" +msgstr "Selecteer alle objecten" + +msgid "Gizmo move" +msgstr "Gizmo bewegen" + +msgid "Gizmo scale" +msgstr "Gizmo schalen" + +msgid "Gizmo rotate" +msgstr "Gizmo roteren" + +msgid "Gizmo cut" +msgstr "Gizmo snijden" + +msgid "Gizmo Place face on bed" +msgstr "Gizmo Plaats gebied op het bed" + +msgid "Gizmo SLA support points" +msgstr "Gizmo SLA-ondersteuningspunten" + +msgid "Gizmo FDM paint-on seam" +msgstr "Gizmo FDM seam schilderen" + +msgid "Gizmo Text emboss / engrave" +msgstr "" + +msgid "Zoom in" +msgstr "Zoom in" + +msgid "Zoom out" +msgstr "Zoom uit" + +msgid "Switch between Prepare/Preview" +msgstr "" + +msgid "Plater" +msgstr "Plaat" + +msgid "Move: press to snap by 1mm" +msgstr "Verplaatsen: druk om 1 mm te verplaatsen" + +msgid "⌘+Mouse wheel" +msgstr "⌘+muiswiel" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Support/kleur intekenen: pas de pen diameter aan" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Muiswiel" + +msgid "Support/Color Painting: adjust section position" +msgstr "Support/kleur intekenen: pas de sectie positie aan" + +msgid "Ctrl+Mouse wheel" +msgstr "CTRL+muiswiel" + +msgid "Alt+Mouse wheel" +msgstr "Alt+muiswiel" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Stel het extrudernnumer in voor de objecten en onderdelen" + +msgid "Delete objects, parts, modifiers " +msgstr "Verwijder objecten, onderdelen, aanpassingen " + +msgid "Select the object/part and press space to change the name" +msgstr "" +"Selecteer het object/onderdeel en druk op de spatiebalk om de naam aan te " +"passen" + +msgid "Mouse click" +msgstr "Muisklik" + +msgid "Select the object/part and mouse click to change the name" +msgstr "" +"Selecteer het object/onderdeel en rechtermuisklik om de naam aan te passen" + +msgid "Objects List" +msgstr "Objecten lijst" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Verticale schuifregelaar - Actieve thumb omhoog bewegen" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Verticale schuifregelaar - Actieve thumb omlaag bewegen" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Horizontale schuifbalk - Beweeg actieve duim naar links" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Horizontale schuifbalk - Beweeg actieve duim naar rechts" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "Aan/uit één laagmodus van de verticale schuifregelaar" + +msgid "On/Off g-code window" +msgstr "" + +msgid "Move slider 5x faster" +msgstr "Schuifregelaar 5x sneller verplaatsen" + +msgid "Shift+Mouse wheel" +msgstr "Shift+Muiswiel" + +msgid "Horizontal slider - Move to start position" +msgstr "" + +msgid "Horizontal slider - Move to last position" +msgstr "" + +msgid "Release Note" +msgstr "Release-opmerkingen" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "versie %s update informatie:" + +msgid "Network plug-in update" +msgstr "Netwerk plug-in update" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Klik op OK om de netwerkplug-in bij te werken wanneer Snapmaker Orca de " +"volgende keer wordt gestart." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "" +"Een nieuwe netwerk plug-in (%s) is beschikbaar. Wilt je deze installeren?" + +msgid "New version of Snapmaker Orca" +msgstr "Nieuwe versie van Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Deze versie overslaan" + +msgid "Done" +msgstr "Done" + +msgid "resume" +msgstr "resume" + +msgid "Resume Printing" +msgstr "Resume Printing" + +msgid "Resume Printing(defects acceptable)" +msgstr "Resume Printing (defects acceptable)" + +msgid "Resume Printing(problem solved)" +msgstr "Resume Printing (problem solved)" + +msgid "Stop Printing" +msgstr "Stop Printing" + +msgid "Check Assistant" +msgstr "Check Assistant" + +msgid "Filament Extruded, Continue" +msgstr "Filament Extruded, Continue" + +msgid "Not Extruded Yet, Retry" +msgstr "Not Extruded Yet, Retry" + +msgid "Finished, Continue" +msgstr "Finished, Continue" + +msgid "Load Filament" +msgstr "Filament laden" + +msgid "Filament Loaded, Resume" +msgstr "Filament Loaded, Resume" + +msgid "View Liveview" +msgstr "View Liveview" + +msgid "Confirm and Update Nozzle" +msgstr "Bevestig en update het mondstuk" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "LAN-verbinding mislukt (verzenden afdrukbestand)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Stap 1, bevestig dat Snapmaker Orca en uw printer zich in hetzelfde LAN " +"bevinden." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Stap 2, als het IP-adres en de toegangscode hieronder afwijken van de " +"werkelijke waarden op uw printer, corrigeer ze dan." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Toegangscode" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Waar vind je het IP-adres en de toegangscode van je printer?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"Stap 3: Ping het IP-adres om te controleren op pakketverlies en latentie." + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP en toegangscode geverifieerd! U kunt het venster sluiten" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "Verbinding mislukt, controleer IP en toegangscode opnieuw" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Verbinding mislukt! Als uw IP-adres en toegangscode correct zijn, \n" +"ga dan naar stap 3 voor het oplossen van netwerkproblemen" + +msgid "Model:" +msgstr "Model:" + +msgid "Serial:" +msgstr "Serienummer:" + +msgid "Version:" +msgstr "Versie" + +msgid "Update firmware" +msgstr "Firmware bijwerken" + +msgid "Beta version" +msgstr "Beta versie" + +msgid "Latest version" +msgstr "Nieuwste versie" + +msgid "Updating" +msgstr "Bijwerken…" + +msgid "Updating failed" +msgstr "Bijwerken mislukt" + +msgid "Updating successful" +msgstr "Update geslaagd" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Weet u zeker dat u de firmware wilt bijwerken? Dit duurt ongeveer 10 " +"minuten. Zet de printer NIET uit tijdens dit proces." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Er is een belangrijke update gedetecteerd die moet worden uitgevoerd voordat " +"het printen kan worden voortgezet. Wil je nu updaten? Je kunt ook later " +"updaten via 'Firmware bijwerken'." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"De firmwareversie is abnormaal. Repareren en bijwerken is vereist voor het " +"afdrukken. Wil je nu updaten? Je kunt ook later op de printer updaten of " +"updaten wanneer je Snapmaker Orca de volgende keer start." + +msgid "Extension Board" +msgstr "Extension Board" + +msgid "Saving objects into the 3mf failed." +msgstr "Het opslaan van de objecten naar het 3mf bestand is mislukt." + +msgid "Only Windows 10 is supported." +msgstr "Alleen Windos 10 wordt ondersteund." + +msgid "Failed to initialize the WinRT library." +msgstr "Het is niet gelukt om de WinRT library te initializeren." + +msgid "Exporting objects" +msgstr "Objecten exporteren" + +msgid "Failed loading objects." +msgstr "Het is niet gelukt om de objecten te laden." + +msgid "Repairing object by Windows service" +msgstr "Het object repareren middels de Windows Service" + +msgid "Repair failed." +msgstr "Repareren mislukt." + +msgid "Loading repaired objects" +msgstr "Gerepareerde objecten worden geladen" + +msgid "Exporting 3mf file failed" +msgstr "Het exporteren van het 3MF bestand is mislukt" + +msgid "Import 3mf file failed" +msgstr "Het importen van het 3mf bestand is mislukt" + +msgid "Repaired 3mf file does not contain any object" +msgstr "Het gereparereerde 3mf bestand bevat geen object" + +msgid "Repaired 3mf file contains more than one object" +msgstr "Het gereparereerde 3mf bestand bevat meer dan 1 object" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "Het gereparereerde 3mf bestand bevat geen volume." + +msgid "Repaired 3mf file contains more than one volume" +msgstr "Het gereparereerde 3mf bestand bevat meer dan 1 volume" + +msgid "Repair finished" +msgstr "Reperaren afgerond" + +msgid "Repair canceled" +msgstr "Repareren geannuleerd" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Het kopieeren van bestand %1% naar %2% is mislukt: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" +"Controleer niet-opgeslagen wijzigingen voordat u de configuratie bijwerkt." + +msgid "Configuration package: " +msgstr "" + +msgid " updated to " +msgstr "" + +msgid "Open G-code file:" +msgstr "Open G-code bestand:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Eén object heeft een lege eerste laag en kan niet geprint worden. Knip een " +"stuk van de bodem van het object of genereer support." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "" +"Het object heeft lege lagen tussen %1% en %2% en kan daarom niet geprint " +"worden." + +#, boost-format +msgid "Object: %1%" +msgstr "Object: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Delen van het object op deze hoogts kunnen te dun zijn of het object kan een " +"defect in de constructie hebben." + +msgid "No object can be printed. Maybe too small" +msgstr "" +"Er kunnen geen objecten geprint worden. Het kan zijn dat ze te klein zijn." + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Kan gcode niet genereren voor ongeldige handmatige G-code.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "Controleer de aangepaste G-code of gebruik de standaard G-code." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Genereren G-code: laag %1%" + +msgid "Inner wall" +msgstr "Binnenste wand" + +msgid "Outer wall" +msgstr "Buitenste wand" + +msgid "Overhang wall" +msgstr "Overhangende wand" + +msgid "Sparse infill" +msgstr "Dunne vulling (infill)" + +msgid "Internal solid infill" +msgstr "Interne solide vulling" + +msgid "Top surface" +msgstr "Bovenvlak" + +msgid "Bottom surface" +msgstr "Bodem oppervlak" + +msgid "Internal Bridge" +msgstr "" + +msgid "Gap infill" +msgstr "Gat opvulling" + +msgid "Support interface" +msgstr "Support interface" + +msgid "Support transition" +msgstr "Onderteuning (support) overgang" + +msgid "Multiple" +msgstr "Meerdere" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Kan de lijndikte van %1% niet berekenen omdat de waarde van \"%2%\" niet " +"opgehaald kan worden" + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" + +msgid "undefined error" +msgstr "Onbekende fout" + +msgid "too many files" +msgstr "Teveel bestanden" + +msgid "file too large" +msgstr "Bestand is te groot" + +msgid "unsupported method" +msgstr "niet ondersteunde methode" + +msgid "unsupported encryption" +msgstr "niet-ondersteunde encryptie" + +msgid "unsupported feature" +msgstr "niet ondersteunde functie" + +msgid "failed finding central directory" +msgstr "Het is niet gelukt om de centrale directory te vinden" + +msgid "not a ZIP archive" +msgstr "Dit is geen ZIP archief" + +msgid "invalid header or corrupted" +msgstr "Onjuiste of beschadigde header" + +msgid "unsupported multidisk" +msgstr "Opslaan naar een RAID configuratie is niet ondersteund." + +msgid "decompression failed" +msgstr "Uitpakken is mislukt" + +msgid "compression failed" +msgstr "Comprimeren mislukt" + +msgid "unexpected decompressed size" +msgstr "onverwachte gedecomprimeerde grootte" + +msgid "CRC check failed" +msgstr "CRC controle mislukt" + +msgid "unsupported central directory size" +msgstr "niet-ondersteunde grootte voor centrale map" + +msgid "allocation failed" +msgstr "Toewijzing mislukt" + +msgid "file open failed" +msgstr "Bestand openen mislukt" + +msgid "file create failed" +msgstr "Bestand maken mislukt" + +msgid "file write failed" +msgstr "Naar bestand schrijven mislukt" + +msgid "file read failed" +msgstr "Bestand lezen mislukt" + +msgid "file close failed" +msgstr "Bestand sluiten mislukt" + +msgid "file seek failed" +msgstr "Bestand zoeken mislukt" + +msgid "file stat failed" +msgstr "Bestand statistiek mislukt" + +msgid "invalid parameter" +msgstr "Ongeldige parameter" + +msgid "invalid filename" +msgstr "Ongeldige bestandsnaam" + +msgid "buffer too small" +msgstr "Buffer te klein" + +msgid "internal error" +msgstr "Interne fout" + +msgid "file not found" +msgstr "Bestand mist" + +msgid "archive too large" +msgstr "Archief is te groot" + +msgid "validation failed" +msgstr "Valideren is mislukt" + +msgid "write callback failed" +msgstr "callback schrijven is mislukt" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% bevindt zich te dicht bij het uitsluitingsgebied. Er kunnen botsingen " +"optreden tijdens het afdrukken." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% staat te dicht bij anderen en er kunnen botsingen ontstaan." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% is te hoog en er kunnen botsingen ontstaan." + +msgid " is too close to others, there may be collisions when printing." +msgstr "" +"staat te dicht bij anderen; er kunnen botsingen optreden tijdens het " +"afdrukken." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +"is te dicht bij het uitsluitingsgebied, er botsingen optreden tijdens het " +"printen." + +msgid "Prime Tower" +msgstr "Prime toren" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr "" +"staat te dicht bij andere objecten en er kunnen botsingen worden " +"veroorzaakt.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" +" bevindt zich te dicht bij het uitsluitingsgebied en er zullen botsingen " +"worden veroorzaakt.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Het is niet mogelijk om met meerdere filamenten te printen die een groot " +"temperatuurverschil hebben. Anders kunnen de extruder en de nozzle tijdens " +"het afdrukken worden geblokkeerd of beschadigd" + +msgid "No extrusions under current settings." +msgstr "Geen extrusion onder de huidige instellingen" + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"Vloeiende modus van timelapse wordt niet ondersteund wanneer \"per object\" " +"sequentie is ingeschakeld." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Selecteer de afdrukvolgorde \"per object\" om meerdere objecten in " +"spiraalvaasmodus af te drukken." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"Spiraal (vaas) modus werkt niet als een object meer dan 1 filament bevalt." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "" + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" + +msgid "Variable layer height is not supported with Organic supports." +msgstr "Variabele laaghoogte wordt niet ondersteund met organische steunen." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Verschillende mondstukdiameters en verschillende filamentdiameters zijn niet " +"toegestaan als de prime-toren is ingeschakeld." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"De Wipe Tower wordt momenteel alleen ondersteund met de relatieve " +"extruderadressering (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"Ooze-preventie wordt momenteel niet ondersteund als de prime tower is " +"ingeschakeld." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"De prime tower wordt momenteel alleen ondersteund voor de Marlin, RepRap/" +"Sprinter, RepRapFirmware en Repetier G-code smaken." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "Een prime-toren wordt niet ondersteund bij het \"per object\" printen." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"Een prime toren wordt niet ondersteund tijdens het printen met adaptieve " +"laaghoogte. Voor het werken met een prime toren is het van belang dat alle " +"lagen dezelfde laaghoogte hebben." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"Een prime toren vereist dat elke \"support opening\" een veelvoud van de " +"laaghoogte is." + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "Een prime toren vereist dat alle objecten dezelfde laaghoogte hebben." + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"Een prime-toren vereist dat alle objecten op hetzelfde aantal raftlagen " +"worden afgedrukt." + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"Een prime toren vereist dat alle objecten met dezelfde laaghoogte gesliced " +"worden." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"De prime toren wordt alleen ondersteund als alle objecten dezelfde variabele " +"laaghoogte hebben" + +msgid "Too small line width" +msgstr "Te kleine lijnbreedte" + +msgid "Too large line width" +msgstr "Te groote lijnbreedte" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"Een prime toren vereist dat support dezelfde laaghoogte heeft als het object." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Er zijn support handhavers ingesteld, maar support staat uit. Schakel " +"support in." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "De laaghoogte kan niet groter zijn dan de diameter van de nozzle" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"Relatieve extruderwaarden vereist het resetten van de extruderpositie op " +"elke laag om decimale onnauwkeurigheid te voorkomen. Voeg \"G92 E0\" toe aan " +"layer_gcode." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"\"G92 E0\" gevonden in before_layer_gcode, wat niet compatibel is met " +"absolute positionering." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"\"G92 E0\" gevonden in layer_gcode, wat niet compatibel is met absolute " +"positionering." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Printbed %d: %s ondersteunt filament %s niet." + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" + +msgid "Generating skirt & brim" +msgstr "Skirt en brim worden gegenereerd" + +msgid "Exporting G-code" +msgstr "G-code exporteren" + +msgid "Generating G-code" +msgstr "Genereer G-code" + +msgid "Failed processing of the filename_format template." +msgstr "Verwerking van het sjabloon \"bestandsnaam_formaat\" is mislukt." + +msgid "Printable area" +msgstr "Gebeid waarbinnen geprint kan worden" + +msgid "Bed exclude area" +msgstr "Uitgesloten printbed gebied" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Onafdrukbaar gebied in XY-vlak. Printers uit de X1-serie gebruiken " +"bijvoorbeeld de linkervoorhoek om filament af te snijden tijdens het " +"verwisselen van filament. Het gebied wordt uitgedrukt als polygoon door " +"punten in het volgende formaat: „xxY, xxY,...”" + +msgid "Bed custom texture" +msgstr "Bed aangepaste textuur" + +msgid "Bed custom model" +msgstr "Bed aangepast model" + +msgid "Elephant foot compensation" +msgstr "\"Elephant foot\" compensatie" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Hierdoor krimpt de eerste laag op de bouwplaat om het \"elephant foot\" " +"effect te compenseren." + +msgid "Elephant foot compensation layers" +msgstr "" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" + +msgid "layers" +msgstr "Lagen" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Dit is de hoogte voor iedere laag. Kleinere laaghoogtes geven een grotere " +"nauwkeurigheid maar een langere printtijd." + +msgid "Printable height" +msgstr "Hoogte waarbinnen geprint kan worden" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "" +"Dit is de maximale printbare hoogte gelimiteerd door de constructie van de " +"printer" + +msgid "Preferred orientation" +msgstr "" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" + +msgid "Printer preset names" +msgstr "Namen van printer voorinstellingen" + +msgid "Use 3rd-party print host" +msgstr "" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" + +msgid "Hostname, IP or URL" +msgstr "Hostnaam, IP of URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca kan G-codebestanden uploaden naar een printerhost. Dit veld moet " +"de hostnaam, het IP-adres of de URL van de printerhostinstantie bevatten. " +"Printhost achter HAProxy met ingeschakelde basisauthenticatie is " +"toegankelijk door de gebruikersnaam en het wachtwoord in de volgende " +"indeling in de URL te plaatsen: https://username:password@your-octopi-" +"address/" + +msgid "Device UI" +msgstr "UI van het apparaat" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Geef de URL op van de gebruikersinterface van uw apparaat als deze niet " +"hetzelfde is als print_host" + +msgid "API Key / Password" +msgstr "API sleutel / wachtwoord" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca kan G-codebestanden uploaden naar een printerhost. Dit veld moet " +"de API-sleutel of het wachtwoord bevatten dat nodig is voor authenticatie." + +msgid "Name of the printer" +msgstr "Naam van de printer" + +msgid "HTTPS CA File" +msgstr "HTTPS CA Bestand" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Een aangepast CA-certificaatbestand kan worden gespecificeerd voor HTTPS " +"OctoPrint-verbindingen, in crt/pem-formaat. Indien leeg gelaten, wordt de " +"standaard opslagplaats voor OS CA-certificaten gebruikt." + +msgid "User" +msgstr "Gebruiker" + +msgid "Password" +msgstr "Wachtwoord" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "HTTPS-certificaatintrekkingscontroles negeren" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"HTTPS-certificaatherroepingscontroles negeren in geval van ontbrekende of " +"offline distributiepunten. Men kan deze optie inschakelen voor " +"zelfondertekende certificaten als de verbinding mislukt." + +msgid "Names of presets related to the physical printer" +msgstr "Namen van voorinstellingen gerelateerd aan de fysieke printer" + +msgid "Authorization Type" +msgstr "Type autorisatie" + +msgid "API key" +msgstr "API sleutel" + +msgid "HTTP digest" +msgstr "HTTP samenvatting" + +msgid "Avoid crossing wall" +msgstr "Vermijd het oversteken van walls" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Omweg om te voorkomen dat de printkop over wanden verplaatst, dit zou " +"namelijk klodders op het oppervlak kunnen veroorzaken" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Walls vermijden - Maximale omleidingslengte" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Maximale omleidingsafstand om te voorkomen dat een muur wordt overgestoken: " +"De printer zal geen omweg maken als de omleidingsafstand groter is dan deze " +"waarde. De lengte van de omleiding kan worden gespecificeerd als absolute " +"waarde of als percentage (bijvoorbeeld 50%) van een directe reisroute. Een " +"waarde van 0 zal dit uitschakelen." + +msgid "mm or %" +msgstr "mm of %" + +msgid "Other layers" +msgstr "Andere lagen" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Dit is de bedtemperatuur voor alle lagen behalve de eerste. Een waarde van 0 " +"betekent dat het filament het afdrukken op de Cool Plate niet ondersteunt." + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Dit is de bedtemperatuur voor lagen, behalve voor de eerste. Een waarde van " +"0 betekent dat het filament afdrukken op de Engineering Plate niet " +"ondersteunt." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Dit is de bedtemperatuur voor lagen, behalve voor de eerste. Een waarde van " +"0 betekent dat het filament printen op de High Temp Plate niet ondersteunt." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Bedtemperatuur na de eerste laag. 0 betekent dat het filament niet wordt " +"ondersteund op de getextureerde PEI-plaat." + +msgid "Initial layer" +msgstr "Eerste laag" + +msgid "Initial layer bed temperature" +msgstr "Printbed temperatuur voor de eerste laag" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Dit is de bedtemperatuur van de beginlaag. Een waarde van 0 betekent dat het " +"filament printen op de Cool Plate niet ondersteunt." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Dit is de bedtemperatuur van de beginlaag. Een waarde van 0 betekent dat het " +"filament afdrukken op de Engineering Plate niet ondersteunt." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Dit is de bedtemperatuur van de beginlaag. Een waarde van 0 betekent dat het " +"filament printen op de High Temp Plate niet ondersteunt." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"De bedtemperatuur van de eerste laag 0 betekent dat het filament niet wordt " +"ondersteund op de getextureerde PEI-plaat." + +msgid "Bed types supported by the printer" +msgstr "Printbedden ondersteund door de printer" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "Engineering plate (technisch printbed)" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "Afdrukvolgorde van de eerste laag" + +msgid "Other layers print sequence" +msgstr "Other layers print sequence" + +msgid "The number of other layers print sequence" +msgstr "The number of other layers print sequence" + +msgid "Other layers filament sequence" +msgstr "Other layers filament sequence" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "" +"De G-code wordt bij iedere laagwisseling toegevoegd voor het optillen van Z" + +msgid "Bottom shell layers" +msgstr "Aantal bodemlagen" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Dit is het aantal vaste lagen van de onderkant inclusief de onderste " +"oppervlaktelaag. Wanneer de door deze waarde berekende dikte dunner is dan " +"de dikte van de onderste laag, worden de onderste lagen vergroot" + +msgid "Bottom shell thickness" +msgstr "Bodemdikte" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"Het aantal onderste solide lagen wordt verhoogd tijdens het slicen als de " +"totale dikte van de onderste lagen lager is dan deze waarde. Dit zorgt " +"ervoor dat de schaal niet te dun is bij een lage laaghoogte. 0 betekend dat " +"deze instelling niet actief is en dat de dikte van de bodem bepaald wordt " +"door het aantal bodem lagen." + +msgid "Apply gap fill" +msgstr "" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" + +msgid "Everywhere" +msgstr "Overal" + +msgid "Top and bottom surfaces" +msgstr "" + +msgid "Nowhere" +msgstr "" + +msgid "Force cooling for overhang and bridge" +msgstr "Forceer koeling voor overhangende delen en bruggen (bridge)" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Schakel deze optie in om de snelheid van de koelventilator van de printkop " +"te optimaliseren voor overhang en bruggen" + +msgid "Fan speed for overhang" +msgstr "Ventilator snelheid voor overhangende delen" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Forceer de koelventilator van de printkop om deze snelheid te hebben bij het " +"afdrukken van een brug of overhangende muur met een grote overhanggraad. Het " +"forceren van koeling voor overhang en brug kan een resulteren in een betere " +"kwaliteit voor dit onderdeel" + +msgid "Cooling overhang threshold" +msgstr "Drempel voor overhang koeling" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Dwingt de koelventilator tot een bepaalde snelheid wanneer de overhanggraad " +"van het geprinte deel deze waarde overschrijdt. Dit wordt uitgedrukt als een " +"percentage dat aangeeft hoe breed de lijn is zonder steun van de onderste " +"laag. 0%% betekent koeling afdwingen voor de hele buitenwand, ongeacht de " +"overhanggraad." + +msgid "Bridge infill direction" +msgstr "" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Overbrugingshoek overschrijven. 0 betekent dat de overbruggingshoek " +"automatisch wordt berekend. Anders wordt de opgegeven hoek gebruikt voor " +"externe bruggen. Gebruik 180° voor een hoek van nul." + +msgid "Bridge density" +msgstr "" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" + +msgid "Bridge flow ratio" +msgstr "Brugflow" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Verlaag deze waarde iets (bijvoorbeeld 0,9) om de hoeveelheid materiaal voor " +"bruggen te verminderen, dit om doorzakken te voorkomen." + +msgid "Internal bridge flow ratio" +msgstr "" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" + +msgid "Top surface flow ratio" +msgstr "Flowratio bovenoppervlak" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Deze factor beïnvloedt de hoeveelheid materiaal voor de bovenste vaste " +"vulling. Je kunt het iets verminderen om een glad oppervlak te krijgen." + +msgid "Bottom surface flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" + +msgid "Precise wall" +msgstr "" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" + +msgid "Only one wall on top surfaces" +msgstr "Slechts één wand op de bovenste oppervlakken" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Gebruik slechts één wand op het vlakke bovenvlak, om meer ruimte te geven " +"aan het bovenste invulpatroon" + +msgid "One wall threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" + +msgid "Only one wall on first layer" +msgstr "Only one wall on first layer" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" + +msgid "Extra perimeters on overhangs" +msgstr "" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" + +msgid "Reverse on odd" +msgstr "" + +msgid "Overhang reversal" +msgstr "" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" + +msgid "Reverse only internal perimeters" +msgstr "" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" + +msgid "Bridge counterbore holes" +msgstr "" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" + +msgid "Partially bridged" +msgstr "" + +msgid "Sacrificial layer" +msgstr "" + +msgid "Reverse threshold" +msgstr "" + +msgid "Overhang reversal threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" + +msgid "Classic mode" +msgstr "" + +msgid "Enable this option to use classic mode" +msgstr "" + +msgid "Slow down for overhang" +msgstr "Afremmen voor overhangende delen" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Schakel deze optie in om de snelheid omlaag te brengen voor verschillende " +"overhangende hoeken" + +msgid "Slow down for curled perimeters" +msgstr "" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" + +msgid "mm/s or %" +msgstr "mm/s of %" + +msgid "External" +msgstr "" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Dit is de snelheid voor bruggen en 100% overhangende wanden." + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" + +msgid "Brim width" +msgstr "Rand breedte" + +msgid "Distance from model to the outermost brim line" +msgstr "Dit is de afstand van het model tot de buitenste randlijn." + +msgid "Brim type" +msgstr "Rand type" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analyzed and calculated automatically." + +msgid "Brim-object gap" +msgstr "Ruimte tussen rand en object" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Dit creëert ruimte tussen de binnenste brimlijn en het object en zorgt " +"ervoor dat het object eenvoudiger van het printbed kan worden verwijderd." + +msgid "Brim ears" +msgstr "" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "" + +msgid "Brim ear max angle" +msgstr "" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" + +msgid "Brim ear detection radius" +msgstr "" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" + +msgid "Compatible machine" +msgstr "Geschikte machine" + +msgid "upward compatible machine" +msgstr "opwaarts compatibele machine" + +msgid "Compatible machine condition" +msgstr "Conditie van geschikte machine" + +msgid "Compatible process profiles" +msgstr "Geschikte proces profielen" + +msgid "Compatible process profiles condition" +msgstr "Conditie van -geschikte proces profielen" + +msgid "Print sequence, layer by layer or object by object" +msgstr "" +"Hiermee wordt de afdrukvolgorde bepaald, zodat u kunt kiezen tussen laag " +"voor laag of object voor object printen." + +msgid "By layer" +msgstr "Op basis van laag" + +msgid "By object" +msgstr "Op basis van object" + +msgid "Intra-layer order" +msgstr "" + +msgid "Print order within a single layer" +msgstr "" + +msgid "As object list" +msgstr "" + +msgid "Slow printing down for better layer cooling" +msgstr "Printsnelheid omlaag brengen zodat de laag beter kan koelen" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Schakel deze optie in om de afdruksnelheid te verlagen om de laatste laag " +"printtijd niet korter te maken dan de laagtijddrempel in \"Maximale " +"ventilatorsnelheidsdrempel\", zodat de laag langer kan worden gekoeld. Dit " +"kan de koelkwaliteit voor kleine details verbeteren" + +msgid "Normal printing" +msgstr "Normaal printen" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"Dit is de standaard versnelling voor zowel normaal printen en verplaatsen " +"behalve voor de eerste laag" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Standaard filament profiel" + +msgid "Default filament profile when switch to this machine profile" +msgstr "" +"Standaard filamentprofiel bij het overschakelen naar dit machineprofiel" + +msgid "Default process profile" +msgstr "Standaard proces profiel" + +msgid "Default process profile when switch to this machine profile" +msgstr "Standaard procesprofiel bij het overschakelen naar dit machineprofiel" + +msgid "Activate air filtration" +msgstr "Activate air filtration" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "Fan speed" +msgstr "Ventilator snelheid" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Snelheid van de afzuigventilator tijdens het printen. Deze snelheid " +"overschrijft de snelheid in de aangepaste g-code van het filament." + +msgid "Speed of exhaust fan after printing completes" +msgstr "" + +msgid "No cooling for the first" +msgstr "Geen koeling voor de eerste" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Schakel alle ventilatoren uit voor de eerste lagen. Het wordt geadviseerd om " +"de koel ventilator voor de eerste laag uit te schakelen om een betere " +"hechting met het printbed te krijgen" + +msgid "Don't support bridges" +msgstr "Geen support bij bruggen toepassen" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Dit schakelt de ondersteuning (support) voor bruggebieden uit, waardoor de " +"ondersteuning (support) erg groot kan worden. Bruggen kunnen meestal direct " +"zonder ondersteuning (support) worden afgedrukt als ze niet erg lang zijn." + +msgid "Thick bridges" +msgstr "Dikke bruggen" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Indien ingeschakeld, zijn bruggen betrouwbaarder en kunnen ze langere " +"afstanden overbruggen, maar ze kunnen er slechter uitzien. Indien " +"uitgeschakeld, zien bruggen er beter uit, maar zijn ze alleen betrouwbaar " +"voor kortere afstanden." + +msgid "Thick internal bridges" +msgstr "" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" + +msgid "Don't filter out small internal bridges (beta)" +msgstr "" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" + +msgid "Disabled" +msgstr "Uit" + +msgid "Limited filtering" +msgstr "" + +msgid "No filtering" +msgstr "" + +msgid "Max bridge length" +msgstr "Maximale bruglengte" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Maximale lengte van bruggen die geen ondersteuning nodig hebben. Stel het in " +"op 0 als u wilt dat alle bruggen worden ondersteund, en stel het in op een " +"zeer grote waarde als u niet wilt dat bruggen worden ondersteund." + +msgid "End G-code" +msgstr "Einde G-code" + +msgid "End G-code when finish the whole printing" +msgstr "Voeg een eind G-code toe bij het afwerken van de hele print." + +msgid "Between Object Gcode" +msgstr "Tussen object Gcode" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Gcode invoegen tussen objecten. Deze parameter wordt alleen actief wanneer u " +"uw modellen object voor object afdrukt." + +msgid "End G-code when finish the printing of this filament" +msgstr "" +"Voeg een eind G-code toe bij het afronden van het printen van dit filament." + +msgid "Ensure vertical shell thickness" +msgstr "Zorg voor een verticale schaaldikte" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" + +msgid "Critical Only" +msgstr "" + +msgid "Moderate" +msgstr "" + +msgid "Top surface pattern" +msgstr "Patroon bovenvlak" + +msgid "Line pattern of top surface infill" +msgstr "" +"Dit is het lijnenpatroon voor de vulling (infill) van het bovenoppervlak." + +msgid "Concentric" +msgstr "Concentrisch" + +msgid "Rectilinear" +msgstr "Rechtlijning" + +msgid "Monotonic" +msgstr "Monotoon" + +msgid "Monotonic line" +msgstr "Monotone lijn" + +msgid "Aligned Rectilinear" +msgstr "Uitgelijnd Rechtlijnig" + +msgid "Hilbert Curve" +msgstr "Hilbert Curve" + +msgid "Archimedean Chords" +msgstr "Archimedean Chords" + +msgid "Octagram Spiral" +msgstr "Octagram Spiraal" + +msgid "Bottom surface pattern" +msgstr "Bodem oppvlakte patroon" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "" +"Dit is het lijnenpatroon van de vulling (infill) van het bodemoppervlak, " +"maar niet van de vulling van de brug." + +msgid "Internal solid infill pattern" +msgstr "Intern massief invulpatroon" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Dit is de snelheid voor de buitenste wand die zichtbaar is. Deze wordt " +"langzamer geprint dan de binnenste wanden om een betere kwaliteit te krijgen." + +msgid "Small perimeters" +msgstr "Kleine omtrek" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" + +msgid "Small perimeters threshold" +msgstr "" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"Dit stelt de drempel voor kleine omtreklengte in. De standaarddrempel is 0 mm" + +msgid "Walls printing order" +msgstr "" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" + +msgid "Inner/Outer" +msgstr "" + +msgid "Outer/Inner" +msgstr "" + +msgid "Inner/Outer/Inner" +msgstr "" + +msgid "Print infill first" +msgstr "Eerst infill afdrukken" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" + +msgid "Wall loop direction" +msgstr "" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" + +msgid "Counter clockwise" +msgstr "" + +msgid "Clockwise" +msgstr "" + +msgid "Height to rod" +msgstr "Hoogte tot geleider" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Afstand van de punt van de nozzle tot de onderste stang. Wordt gebruikt om " +"botsingen te voorkomen bij het afdrukken op basis van objecten." + +msgid "Height to lid" +msgstr "Hoogte tot deksel" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Afstand van de punt van de nozzle tot het deksel. Wordt gebruikt om " +"botsingen te voorkomen bij het afdrukken op basis van objecten." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Afstandsradius rond de extruder: gebruikt om botsingen te vermijden bij het " +"printen per object." + +msgid "Nozzle height" +msgstr "Hoogte van het mondstuk" + +msgid "The height of nozzle tip." +msgstr "De hoogte van de mondstukpunt." + +msgid "Bed mesh min" +msgstr "" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Bed mesh max" +msgstr "" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Probe point distance" +msgstr "" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" + +msgid "Mesh margin" +msgstr "" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" + +msgid "Extruder Color" +msgstr "Extruder kleur" + +msgid "Only used as a visual help on UI" +msgstr "Wordt alleen gebruikt als een visuele weergave op de UI" + +msgid "Extruder offset" +msgstr "Extruder offset" + +msgid "Flow ratio" +msgstr "Flow verhouding" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"Het materiaal kan een volumetrische verandering hebben na het wisselen " +"tussen gesmolten en gekristaliseerde toestand. Deze instelling verandert " +"alle extrusiestromen van dit filament in de G-code proportioneel. Het " +"aanbevolen waardebereik ligt tussen 0,95 en 1,05. U kunt deze waarde " +"mogelijk optimaliseren om een mooi vlak oppervlak te krijgen als er een " +"lichte over- of onderflow is." + +msgid "Enable pressure advance" +msgstr "Pressure advance inschakelen" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" + +msgid "Keep fan always on" +msgstr "Laat de ventilator aan staan" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Als deze instelling is ingeschakeld, zal de printkop ventilator altijd aan " +"staan op een minimale snelheid om het aantal start en stop momenten te " +"beperken" + +msgid "Don't slow down outer walls" +msgstr "" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "Laag tijd" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"De printkop ventilator wordt ingeschakeld voor lagen waarvan de geschatte " +"printtijd korter is dan deze waarde. Ventilatorsnelheid wordt geïnterpoleerd " +"tussen de minimale en maximale ventilatorsnelheden volgens de printtijd van " +"de laag" + +msgid "Default color" +msgstr "Standaardkleur" + +msgid "Default filament color" +msgstr "Standaard filamentkleur" + +msgid "Filament notes" +msgstr "Filament notes" + +msgid "You can put your notes regarding the filament here." +msgstr "You can put your notes regarding the filament here." + +msgid "Required nozzle HRC" +msgstr "Vereiste nozzle HRC" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"Minimale HRC van de nozzle die nodig is om het filament te printen. Een " +"waarde van 0 betekent geen controle van de HRC van de spuitdop." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Deze instelling is het volume filament dat per seconde kan worden gesmolten " +"en geëxtrudeerd. De afdruksnelheid wordt beperkt door de maximale " +"volumetrische snelheid, in geval van een te hoge en onredelijke " +"snelheidsinstelling. Deze waarde kan niet nul zijn." + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Filament laadt tijd" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Tijd welke nodig is om nieuw filament te laden tijdens het wisselen. Enkel " +"voor statistieken." + +msgid "Filament unload time" +msgstr "Tijd die nodig is om filament te ontladen" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Tijd welke nodig is om oud filament te lossen tijdens het wisselen. Enkel " +"voor statistieken." + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Filamentdiameter wordt gebruikt om de extrusie in de G-code te berekenen, " +"het is dus belangrijk dat deze nauwkeurig wordt ingegeven" + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" + +msgid "Loading speed" +msgstr "Laadsnelheid" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Snelheid die gebruikt wordt voor het afveegblok." + +msgid "Loading speed at the start" +msgstr "Laadsnelheid aan het begin" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Snelheid die gebruikt wordt aan het begin van de laadfase." + +msgid "Unloading speed" +msgstr "Ontlaadsnelheid" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Snelheid die gebruikt wordt voor het ontladen van het afveegblok (heeft geen " +"effect op het initiële onderdeel van het ontladen direct na de ramming)." + +msgid "Unloading speed at the start" +msgstr "Ontlaadsnelheid in het begin" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Snelheid die gebruikt wordt voor het ontladen van het filament direct na de " +"ramming." + +msgid "Delay after unloading" +msgstr "Vertraging na het ontladen" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Wachttijd voor het ontladen van het filament. Dit kan helpen om betrouwbare " +"toolwisselingen te krijgen met flexibele materialen die meer tijd nodig " +"hebben om te krimpen naar de originele afmetingen." + +msgid "Number of cooling moves" +msgstr "Aantal koelbewegingen" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"Het filament wordt gekoeld tijdens het terug en voorwaarts bewegen in de " +"koelbuis. Specificeer het benodigd aantal bewegingen." + +msgid "Speed of the first cooling move" +msgstr "Snelheid voor de eerste koelbeweging" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "" +"Koelbewegingen worden gelijkmatig versneld, beginnend vanaf deze snelheid." + +msgid "Minimal purge on wipe tower" +msgstr "Minimale filament reiniging op de wipe tower" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" + +msgid "Speed of the last cooling move" +msgstr "Snelheid voor de laatste koelbeweging" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "Koelbewegingen versnellen gelijkmatig tot aan deze snelheid." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Tijd voor de printerfirmware (of de MMU 2.0) om nieuw filament te laden " +"tijdens een toolwissel (tijdens het uitvoeren van de T-code). Deze tijd " +"wordt toegevoegd aan de totale printtijd in de tijdsschatting." + +msgid "Ramming parameters" +msgstr "Rammingparameters" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Deze frase is bewerkt door het Rammingdialoog en bevat parameters voor de " +"ramming." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Tijd voor de printerfirmware (of de MMU 2.0) om filament te ontladen tijdens " +"een toolwissel (tijdens het uitvoeren van de T-code). Deze tijd wordt " +"toegevoegd aan de totale printtijd in de tijdsschatting." + +msgid "Enable ramming for multitool setups" +msgstr "" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" + +msgid "Multitool ramming volume" +msgstr "" + +msgid "The volume to be rammed before the toolchange." +msgstr "" + +msgid "Multitool ramming flow" +msgstr "" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "" + +msgid "Density" +msgstr "Dichtheid" + +msgid "Filament density. For statistics only" +msgstr "Filamentdichtheid, alleen voor statistische doeleinden." + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "Filament materiaal." + +msgid "Soluble material" +msgstr "Oplosbaar materiaal" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"Oplosbaar materiaal wordt doorgaans gebruikt om odnersteuning (support) en " +"support interface te printen " + +msgid "Support material" +msgstr "Support materiaal" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"Support materiaal wordt vaak gebruikt om support en support interfaces af te " +"drukken." + +msgid "Softening temperature" +msgstr "Verzachtingstemperatuur" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than this, it's highly recommended to open the front " +"door and/or remove the upper glass to avoid clogs." + +msgid "Price" +msgstr "Prijs" + +msgid "Filament price. For statistics only" +msgstr "Filament prijs. Alleen voor statistieken" + +msgid "money/kg" +msgstr "Prijs per KG" + +msgid "Vendor" +msgstr "Leverancier" + +msgid "Vendor of filament. For show only" +msgstr "Verkoper van filament. Alleen voor show" + +msgid "(Undefined)" +msgstr "(niet gedefinieerd)" + +msgid "Sparse infill direction" +msgstr "" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Dit is de hoek voor een dun opvulpatroon, dat het begin of de hoofdrichting " +"van de lijnen bepaalt." + +msgid "Solid infill direction" +msgstr "" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" + +msgid "Rotate solid infill direction" +msgstr "" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "" + +msgid "Sparse infill density" +msgstr "Vulling percentage" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" + +msgid "Sparse infill pattern" +msgstr "Vulpatroon" + +msgid "Line pattern for internal sparse infill" +msgstr "Dit is het lijnpatroon voor dunne interne vulling (infill)" + +msgid "Grid" +msgstr "Rooster" + +msgid "Line" +msgstr "Lijn" + +msgid "Cubic" +msgstr "Kubusvormig" + +msgid "Tri-hexagon" +msgstr "Driehoek" + +msgid "Gyroid" +msgstr "Gyroide" + +msgid "Honeycomb" +msgstr "Honinggraad" + +msgid "Adaptive Cubic" +msgstr "Adaptief kubiek" + +msgid "3D Honeycomb" +msgstr "3D Honingraat" + +msgid "Support Cubic" +msgstr "Ondersteuning Cubic" + +msgid "Lightning" +msgstr "Lightning" + +msgid "Cross Hatch" +msgstr "Cross Hatch" + +msgid "Sparse infill anchor length" +msgstr "" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" + +msgid "0 (no open anchors)" +msgstr "0 (no open anchors)" + +msgid "1000 (unlimited)" +msgstr "1000 (unlimited)" + +msgid "Maximum length of the infill anchor" +msgstr "Maximale lengte van de vullingsbevestiging" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" + +msgid "0 (Simple connect)" +msgstr "" + +msgid "Acceleration of outer walls" +msgstr "" + +msgid "Acceleration of inner walls" +msgstr "" + +msgid "Acceleration of travel moves" +msgstr "" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Versnelling van de topoppervlakte-invulling. Gebruik van een lagere waarde " +"kan de kwaliteit van de bovenlaag verbeteren." + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Versnelling van de buitenwand: een lagere waarde kan de kwaliteit verbeteren." + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" + +msgid "mm/s² or %" +msgstr "mm/s² or %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Versnelling van de schaarse invulling. Als de waarde wordt uitgedrukt als " +"een percentage (bijvoorbeeld 100%), wordt deze berekend op basis van de " +"standaardversnelling." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Dit is de afdrukversnelling voor de eerste laag. Een beperkte versnelling " +"kan de hechting van de bouwplaat verbeteren." + +msgid "Enable accel_to_decel" +msgstr "Accel_to_decel inschakelen" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "De max_accel_to_decel van Klipper wordt automatisch aangepast" + +msgid "accel_to_decel" +msgstr "accel_to_decel" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" + +msgid "Jerk of outer walls" +msgstr "Jerk van de buitenwand" + +msgid "Jerk of inner walls" +msgstr "Jerk van de binnenwand" + +msgid "Jerk for top surface" +msgstr "" + +msgid "Jerk for infill" +msgstr "" + +msgid "Jerk for initial layer" +msgstr "" + +msgid "Jerk for travel" +msgstr "" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Initial layer height" +msgstr "Laaghoogte van de eerste laag" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Dit is de hoogte van de eerste laag. Door de hoogte van de eerste laag hoger " +"te maken, kan de hechting op het printbed worden verbeterd." + +msgid "Speed of initial layer except the solid infill part" +msgstr "" +"Dit is de snelheid voor de eerste laag behalve solide vulling (infill) delen" + +msgid "Initial layer infill" +msgstr "Vulling (infill) van de eerste laag" + +msgid "Speed of solid infill part of initial layer" +msgstr "" +"Dit is de snelheid voor de solide vulling (infill) delen van de eerste laag." + +msgid "Initial layer travel speed" +msgstr "" + +msgid "Travel speed of initial layer" +msgstr "" + +msgid "Number of slow layers" +msgstr "" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" + +msgid "Initial layer nozzle temperature" +msgstr "Nozzle temperatuur voor de eerste laag" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" +"Nozzle temperatuur om de eerste laag mee te printen bij gebruik van dit " +"filament" + +msgid "Full fan speed at layer" +msgstr "Volledige snelheid op laag" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" + +msgid "layer" +msgstr "" + +msgid "Support interface fan speed" +msgstr "" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Deze instelling zorgt ervoor dat de toolhead willekeurig schudt tijdens het " +"printen van muren, zodat het oppervlak er ruw uitziet. Deze instelling " +"regelt de \"fuzzy\" positie." + +msgid "Contour" +msgstr "Contour" + +msgid "Contour and hole" +msgstr "Contour and hole" + +msgid "All walls" +msgstr "Alle wanden" + +msgid "Fuzzy skin thickness" +msgstr "Fuzzy skin dikte" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"De breedte van jittering: het is aan te raden deze lager te houden dan de " +"lijndikte van de buitenste wand." + +msgid "Fuzzy skin point distance" +msgstr "Fuzzy skin punt afstand" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"De gemiddelde afstand tussen de willekeurige punten die op ieder lijnsegment " +"zijn geïntroduceerd" + +msgid "Apply fuzzy skin to first layer" +msgstr "" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "" + +msgid "Filter out tiny gaps" +msgstr "Kleine openingen wegfilteren" + +msgid "Layers and Perimeters" +msgstr "Lagen en perimeters" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Dit is de snelheid voor het opvullen van gaten. Tussenruimtes hebben meestal " +"een onregelmatige lijndikte en moeten daarom langzamer worden afgedrukt." + +msgid "Precise Z height" +msgstr "Precise Z height" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." + +msgid "Arc fitting" +msgstr "Boog montage" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" + +msgid "Add line number" +msgstr "Lijn hoogte toevoegen" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Schakel dit in om regelnummer (Nx) toe te voegen aan het begin van elke G-" +"coderegel." + +msgid "Scan first layer" +msgstr "Eerste laag scannen" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Schakel dit in zodat de camera in de printer de kwaliteit van de eerste laag " +"kan controleren." + +msgid "Nozzle type" +msgstr "Nozzle type" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"Het type metaal van de nozzle. Dit bepaalt de slijtvastheid van de nozzle en " +"wat voor soort filament kan worden geprint" + +msgid "Undefine" +msgstr "Undefined" + +msgid "Hardened steel" +msgstr "Gehard staal" + +msgid "Stainless steel" +msgstr "Roestvrij staal" + +msgid "Brass" +msgstr "Messing" + +msgid "Nozzle HRC" +msgstr "Nozzle HRC" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"De hardheid van de nozzle. Nul betekent geen controle op de hardheid van het " +"mondstuk tijdens het slicen." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Printerstructuur" + +msgid "The physical arrangement and components of a printing device" +msgstr "De fysieke opstelling en onderdelen van een afdrukapparaat" + +msgid "CoreXY" +msgstr "" + +msgid "I3" +msgstr "" + +msgid "Hbot" +msgstr "" + +msgid "Delta" +msgstr "" + +msgid "Best object position" +msgstr "Beste objectpositie" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Beste automatisch schikkende positie in het bereik [0,1] met betrekking tot " +"de bedvorm." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" + +msgid "Only overhangs" +msgstr "" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "" + +msgid "Fan kick-start time" +msgstr "" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" + +msgid "Time cost" +msgstr "" + +msgid "The printer cost per hour" +msgstr "" + +msgid "money/h" +msgstr "" + +msgid "Support control chamber temperature" +msgstr "Ondersteuning voor het regelen van de kamertemperatuur" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" + +msgid "Support air filtration" +msgstr "Ondersteun luchtfiltratie" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "G-code flavor" +msgstr "G-code type" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Het type G-code waarmee de printer compatibel is" + +msgid "Klipper" +msgstr "" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" + +msgid "Label objects" +msgstr "Label objecten" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" + +msgid "Exclude objects" +msgstr "Objecten uitsluiten" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "" + +msgid "Verbose G-code" +msgstr "Opmerkingen in G-code" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Sta dit toe om een G-code met opmerkingen te genereren. Bij elk blok " +"commando's wordt een opmerking geplaatst. Als u print vanaf een SD-kaart, " +"kan de extra grootte van het bestand de firmware vertragen." + +msgid "Infill combination" +msgstr "Vulling (infill) combinatie" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Combineer het printen van meerdere lagen vulling om te printtijd te " +"verlagen. De wanden worden geprint in de originele laaghoogte." + +msgid "Filament to print internal sparse infill." +msgstr "" +"Dit is het filament voor het printen van interne dunne vulling (infill)" + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Infill/Wall overlap" +msgstr "Vulling (infill)/wand overlap" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" + +msgid "Speed of internal sparse infill" +msgstr "Dit is de snelheid voor de dunne vulling (infill)" + +msgid "Interface shells" +msgstr "Interface shells" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" + +msgid "Maximum width of a segmented region" +msgstr "Maximale breedte van een gesegmenteerd gebied" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Maximum width of a segmented region. A value of 0 disables this feature." + +msgid "Interlocking depth of a segmented region" +msgstr "Insluitdiepte van een gesegmenteerde regio" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Insluitdiepte van een gesegmenteerd gebied. Nul schakelt deze functie uit." + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "Strijk type" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"Strijken gebruikt een lage flow om op dezelfde hoogte van een oppervlak te " +"printen om platte oppervlakken gladder te maken. Deze instelling bepaalt op " +"welke lagen het strijken wordt toegepast." + +msgid "No ironing" +msgstr "Niet strijken" + +msgid "Top surfaces" +msgstr "Alle bovenoppervlakken" + +msgid "Topmost surface" +msgstr "Alleen het bovenste oppervlak" + +msgid "All solid layer" +msgstr "Alle vaste lagen" + +msgid "Ironing Pattern" +msgstr "Ironing Pattern" + +msgid "The pattern that will be used when ironing" +msgstr "" + +msgid "Ironing flow" +msgstr "Flow tijdens strijken" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"Dit is de hoeveelheid materiaal die dient te worden geëxtrudeerd tijdens het " +"strijken. Het is relatief ten opzichte van de flow van normale laaghoogte. " +"Een te hoge waarde zal resulteren in overextrusie op het oppervlak." + +msgid "Ironing line spacing" +msgstr "Afstand tussen de strijklijnen" + +msgid "The distance between the lines of ironing" +msgstr "" +"Dit is de afstand voor de lijnen die gebruikt worden voor het strijken." + +msgid "Ironing speed" +msgstr "Snelheid tijdens het strijken" + +msgid "Print speed of ironing lines" +msgstr "Dit is de print snelheid van de strijk lijnen" + +msgid "Ironing angle" +msgstr "" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"De G-code wordt bij iedere laagwisseling toegevoegd na het optillen van Z" + +msgid "Supports silent mode" +msgstr "Stille modus" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Dit geeft aan of de machine de stille modus ondersteunt waarin de machine " +"een lagere versnelling gebruikt om te printen" + +msgid "Emit limits to G-code" +msgstr "" + +msgid "Machine limits" +msgstr "Machine limieten" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Deze G-code wordt gebruikt als code voor de pauze. Gebruikers kunnen een " +"pauze-G-code invoegen in de G-code-viewer." + +msgid "This G-code will be used as a custom code" +msgstr "Deze G-code wordt gebruikt als een aangepaste code" + +msgid "Small area flow compensation (beta)" +msgstr "" + +msgid "Enable flow compensation for small infill areas" +msgstr "" + +msgid "Flow Compensation Model" +msgstr "" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" + +msgid "Maximum speed X" +msgstr "Maximale snelheid voor X" + +msgid "Maximum speed Y" +msgstr "Maximale snelheid voor Y" + +msgid "Maximum speed Z" +msgstr "Maximale snelheid voor Z" + +msgid "Maximum speed E" +msgstr "Maximale snelheid voor E" + +msgid "Maximum X speed" +msgstr "Maximale X snelheid" + +msgid "Maximum Y speed" +msgstr "Maximale Y snelheid" + +msgid "Maximum Z speed" +msgstr "Maximale Z snelheid" + +msgid "Maximum E speed" +msgstr "Maximale E snelheid" + +msgid "Maximum acceleration X" +msgstr "Maximale versnelling voor X" + +msgid "Maximum acceleration Y" +msgstr "Maximale versnelling voor Y" + +msgid "Maximum acceleration Z" +msgstr "Maximale versnelling voor Z" + +msgid "Maximum acceleration E" +msgstr "Maximale versnelling E" + +msgid "Maximum acceleration of the X axis" +msgstr "Maximale versnelling voor de X as" + +msgid "Maximum acceleration of the Y axis" +msgstr "Maximale versnelling voor de Y as" + +msgid "Maximum acceleration of the Z axis" +msgstr "Maximale versnelling voor de Z as" + +msgid "Maximum acceleration of the E axis" +msgstr "Maximale versnelling voor de E as" + +msgid "Maximum jerk X" +msgstr "Maximale X jerk" + +msgid "Maximum jerk Y" +msgstr "Maximale Y jerk" + +msgid "Maximum jerk Z" +msgstr "Maximale Z jerk" + +msgid "Maximum jerk E" +msgstr "Maximale E jerk" + +msgid "Maximum jerk of the X axis" +msgstr "Maximale jerk voor de X as" + +msgid "Maximum jerk of the Y axis" +msgstr "Maximale jerk voor de Y as" + +msgid "Maximum jerk of the Z axis" +msgstr "Maximale jerk voor de Z as" + +msgid "Maximum jerk of the E axis" +msgstr "Maximale jerk voor de E as" + +msgid "Minimum speed for extruding" +msgstr "Minimale snelheid voor extruden" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Minimale snelheid voor extruden (M205 S)" + +msgid "Minimum travel speed" +msgstr "Minimale snelheid voor verplaatsing" + +msgid "Minimum travel speed (M205 T)" +msgstr "Minimale snelheid voor verplaatsing (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Maximale extruding versnelling " + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Maximale extruding versnelling (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Maximale versnelling voor terugtrekken (retraction)" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Maximale versnelling voor terugtrekken (retraction) (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Maximale versnelling voor verplaatsen" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"De snelheid van de ventilator op de printkop kan verhoogd worden als " +"automatisch koelen is ingeschakeld. Dit is de maximale snelheidslimiet van " +"de printkop ventilator" + +msgid "Max" +msgstr "Maximum" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"De hoogste printbare laaghoogte voor de extruder: dit wordt gebruikt om de " +"maximale laaghoogte te beperken wanneer adaptieve laaghoogte is ingeschakeld." + +msgid "Extrusion rate smoothing" +msgstr "" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" + +msgid "Minimum speed for part cooling fan" +msgstr "Minimale snelheid voor de printkop ventilator" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" + +msgid "Min" +msgstr "Minimaal" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"De laagste printbare laaghoogte voor de extruder: dit wordt gebruikt om de " +"minimale laaghoogte te beperken wanneer adaptieve laaghoogte is ingeschakeld." + +msgid "Min print speed" +msgstr "Minimale print snelheid" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" + +msgid "Nozzle diameter" +msgstr "Nozzle diameter" + +msgid "Diameter of nozzle" +msgstr "Diameter van de nozzle" + +msgid "Configuration notes" +msgstr "Configuratie-opmerkingen" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Hier kunt u eigen opmerkingen plaatsen. Deze tekst wordt bovenin de G-code " +"toegevoegd." + +msgid "Host Type" +msgstr "Hosttype" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca kan G-codebestanden uploaden naar een printerhost. Dit veld moet " +"het type host bevatten." + +msgid "Nozzle volume" +msgstr "Nozzle volume" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "" +"Volume van de nozzle tussen de filamentsnijder en het uiteinde van de nozzle" + +msgid "Cooling tube position" +msgstr "Koelbuispositie" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "Afstand vanaf de nozzle tot het middelpunt van de koelbuis." + +msgid "Cooling tube length" +msgstr "Koelbuislengte" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Lengte van de koelbuis om de ruimte voor koelbewegingen daarin te beperken." + +msgid "High extruder current on filament swap" +msgstr "Hoge stroomsterkte bij extruder voor filamentwissel" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Het kan nuttig zijn om de stroomsterkte van de extrudermotor te verhogen " +"tijdens het uitvoeren van de filamentwisseling om snelle ramming mogelijk te " +"maken en om weerstand te overwinnen tijdens het laden van filament met een " +"misvormde kop." + +msgid "Filament parking position" +msgstr "Filament parkeerpositie" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Afstand van de nozzlepunt tot de positie waar het filament wordt geparkeerd " +"wanneer dat niet geladen is. Deze moet overeenkomen met de waarde in de " +"firmware." + +msgid "Extra loading distance" +msgstr "Extra laadafstand" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Als dit ingesteld is op 0, zal de afstand die het filament tijdens het laden " +"uit de parkeerpositie even groot zijn als wanneer het filament " +"teruggetrokken wordt. Als de waarde positief is, zal het verder geladen " +"worden. Als het negatief is, is de laadafstand dus korter." + +msgid "Start end points" +msgstr "Start end points" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "" +"Het begin- en eindpunt dat zich van het snijoppervlak naar de afvoer chute " +"bevindt." + +msgid "Reduce infill retraction" +msgstr "Reduceer terugtrekken (retraction) bij vulling (infill)" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Trek niet terug als de beweging zich volledig in een opvulgebied bevindt. " +"Dat betekent dat het sijpelen niet zichtbaar is. Dit kan de retraction times " +"voor complexe modellen verkorten en printtijd besparen, maar het segmenteren " +"en het genereren van G-codes langzamer maken." + +msgid "Filename format" +msgstr "Bestandsnaam formaat" + +msgid "User can self-define the project file name when export" +msgstr "" +"Gebruikers kunnen zelf de project bestandsnaam kiezen tijdens het exporteren" + +msgid "Make overhangs printable" +msgstr "" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "" + +msgid "Make overhangs printable - Maximum angle" +msgstr "" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" + +msgid "Make overhangs printable - Hole area" +msgstr "" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Overhange wand detecteren" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Dit maakt het mogelijk om het overhangpercentage ten opzichte van de " +"lijnbreedte te detecteren en gebruikt verschillende snelheden om af te " +"drukken. Voor 100%% overhang wordt de brugsnelheid gebruikt." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Speed of inner wall" +msgstr "Dit is de snelheid voor de binnenste wanden" + +msgid "Number of walls of every layer" +msgstr "Dit is het aantal wanden per laag." + +msgid "Alternate extra wall" +msgstr "" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" + +msgid "Printer notes" +msgstr "Printer notes" + +msgid "You can put your notes regarding the printer here." +msgstr "You can put your notes regarding the printer here." + +msgid "Raft contact Z distance" +msgstr "Vlot (raft) contact Z afstand:" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"Dit is de Z-afstand tussen een object en een raft. Het wordt genegeerd voor " +"oplosbare materialen." + +msgid "Raft expansion" +msgstr "Vlot (raft) expansie" + +msgid "Expand all raft layers in XY plane" +msgstr "Dit vergroot alle raft lagen in het XY vlak." + +msgid "Initial layer density" +msgstr "Dichtheid van de eerste laag" + +msgid "Density of the first raft or support layer" +msgstr "Dit is de dichtheid van de eerste raft- of support laag." + +msgid "Initial layer expansion" +msgstr "Vergroten van de eerste laag" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Dit zet de eerste raft- of steun (support) laag uit om de hechting van het " +"bed te verbeteren." + +msgid "Raft layers" +msgstr "Vlot (raft) lagen" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"Het object wordt verhoogd met dit aantal support lagen. Gebruik deze functie " +"om kromtrekken te voorkomen bij het afdrukken met ABS." + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"Het G-codepad wordt gegenereerd na het vereenvoudigen van de contouren van " +"modellen om teveel punten en G-codelijnen te vermijden. Kleinere waarden " +"betekenen een hogere resolutie en meer tijd die nodig is om het ontwerpen te " +"slicen." + +msgid "Travel distance threshold" +msgstr "Drempel voor verplaatsingsafstand" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Activeer het terugtrekken (retraction) alleen als de verplaatsingsafstand " +"groter is dan deze drempel." + +msgid "Retract amount before wipe" +msgstr "Terugtrek (retract) hoeveelheid voor schoonvegen" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"Dit is de lengte van snel intrekken (retraction) vóór een wipe, in " +"verhouding tot de retraction lengte." + +msgid "Retract when change layer" +msgstr "Terugtrekken (retract) bij wisselen van laag" + +msgid "Force a retraction when changes layer" +msgstr "" +"Dit forceert retraction (terugtrekken van filament) als er gewisseld wordt " +"van laag" + +msgid "Retraction Length" +msgstr "Terugtrek (retraction) lengte" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Een deel van het materiaal in de extruder wordt teruggetrokken om sijpelen " +"tijdens verplaatsingen over lange afstand te voorkomen. Stel in op 0 om " +"terugtrekken (retraction) uit te schakelen." + +msgid "Long retraction when cut(experimental)" +msgstr "Long retraction when cut (experimental)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." + +msgid "Retraction distance when cut" +msgstr "Retraction distance when cut" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Experimental feature. Retraction length before cutting off during filament " +"change" + +msgid "Z hop when retract" +msgstr "Z hop tijdens terugtrekken (retraction)" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Wanneer er een terugtrekking (retracction) is, wordt de nozzle een beetje " +"opgetild om ruimte te creëren tussen de nozzle en de print. Dit voorkomt dat " +"de nozzle de print raakt bij veplaatsen. Het gebruik van spiraallijnen om Z " +"op te tillen kan stringing voorkomen." + +msgid "Z hop lower boundary" +msgstr "Z hop ondergrens" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Z hop treedt alleen in werking wanneer Z boven deze waarde ligt en onder de " +"parameter: \"Z hop bovengrens\"." + +msgid "Z hop upper boundary" +msgstr "Z hop bovengrens" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Als deze waarde positief is, treedt Z hop alleen in werking als Z boven de " +"parameter ligt: \"Z hop ondergrens\" en onder deze waarde ligt" + +msgid "Z hop type" +msgstr "" + +msgid "Slope" +msgstr "Helling" + +msgid "Spiral" +msgstr "Spiraal" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "Beweeg Z alleen omhoog boven" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" + +msgid "Only lift Z below" +msgstr "Beweeg Z alleen omhoog onder" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" + +msgid "On surfaces" +msgstr "" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" + +msgid "All Surfaces" +msgstr "" + +msgid "Top Only" +msgstr "" + +msgid "Bottom Only" +msgstr "" + +msgid "Top and Bottom" +msgstr "" + +msgid "Extra length on restart" +msgstr "Extra lengte bij herstart" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Als retracten wordt gecompenseerd na een beweging, wordt deze extra " +"hoeveelheid filament geëxtrudeerd. Deze instelling is zelden van toepassing." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Als retracten wordt gecompenseerd na een toolwisseling, wordt deze extra " +"hoeveelheid filament geëxtrudeerd." + +msgid "Retraction Speed" +msgstr "Terugtrek (retraction) snelheid" + +msgid "Speed of retractions" +msgstr "Dit is de snelheid voor terugtrekken (retraction)" + +msgid "Deretraction Speed" +msgstr "Snelheid van terugtrekken (deretraction)" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"De snelheid voor het herladen van filament in de extruder na een " +"terugtrekking (retraction); als u dit op 0 zet, betekent dit dat het " +"dezelfde snelheid heeft als het intrekken (retraction)." + +msgid "Use firmware retraction" +msgstr "Gebruik firmware retractie" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" + +msgid "Show auto-calibration marks" +msgstr "" + +msgid "Disable set remaining print time" +msgstr "" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" + +msgid "Seam position" +msgstr "Naad positie" + +msgid "The start position to print each part of outer wall" +msgstr "Dit is de startpositie voor ieder deel van de buitenste wand." + +msgid "Nearest" +msgstr "Dichtstbijzijnde" + +msgid "Aligned" +msgstr "Uitgelijnd" + +msgid "Back" +msgstr "Achterzijde" + +msgid "Random" +msgstr "Willekeurig" + +msgid "Staggered inner seams" +msgstr "" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" + +msgid "Seam gap" +msgstr "Naadopening" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" + +msgid "Scarf joint seam (beta)" +msgstr "" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Use scarf joint to minimize seam visibility and increase seam strength." + +msgid "Conditional scarf joint" +msgstr "Conditional scarf joint" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." + +msgid "Conditional angle threshold" +msgstr "Conditional angle threshold" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" + +msgid "Conditional overhang threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" + +msgid "Scarf joint speed" +msgstr "" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" + +msgid "Scarf joint flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" + +msgid "Scarf start height" +msgstr "Scarf start height" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." + +msgid "Scarf around entire wall" +msgstr "Scarf around entire wall" + +msgid "The scarf extends to the entire length of the wall." +msgstr "The scarf extends to the entire length of the wall." + +msgid "Scarf length" +msgstr "Scarf length" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." + +msgid "Scarf steps" +msgstr "Scarf steps" + +msgid "Minimum number of segments of each scarf." +msgstr "Minimum number of segments of each scarf." + +msgid "Scarf joint for inner walls" +msgstr "Scarf joint for inner walls" + +msgid "Use scarf joint for inner walls as well." +msgstr "Use scarf joint for inner walls as well." + +msgid "Role base wipe speed" +msgstr "" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" + +msgid "Wipe on loops" +msgstr "" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" + +msgid "Wipe before external loop" +msgstr "" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" + +msgid "Wipe speed" +msgstr "Veegsnelheid" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"De veegsnelheid wordt bepaald door de snelheidsinstelling die in deze " +"configuratie is opgegeven.Als de waarde wordt uitgedrukt als percentage " +"(bijv. 80%), wordt deze berekend op basis van de bovenstaande instelling van " +"de rijsnelheid.De standaardwaarde voor deze parameter is 80%." + +msgid "Skirt distance" +msgstr "Rand (skirt) afstand" + +msgid "Distance from skirt to brim or object" +msgstr "Dit is de afstand van de skirt tot de rand van het object." + +msgid "Skirt height" +msgstr "Skirt height" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Number of skirt layers: usually only one" + +msgid "Draft shield" +msgstr "Tochtscherm" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" + +msgid "Limited" +msgstr "Gelimiteerd" + +msgid "Enabled" +msgstr "Aan" + +msgid "Skirt loops" +msgstr "Rand (skirt) lussen" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "" +"Dit is het aantal lussen voor de skirt. 0 betekent dat de skirt is " +"uitgeschakeld." + +msgid "Skirt speed" +msgstr "" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" + +msgid "Skirt minimum extrusion length" +msgstr "" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"De printnelheid in geëxporteerde G-code wordt vertraagd wanneer de geschatte " +"laagtijd korter is dan deze waarde om een betere koeling voor deze lagen te " +"krijgen." + +msgid "Minimum sparse infill threshold" +msgstr "Minimale drempel voor dunne opvulling (infill)" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"Dunne opvullingen (infill) die kleiner zijn dan deze drempelwaarde worden " +"vervangen door solide interne vulling (infill)." + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"Dit is de snelheid voor de interne solide vulling (infill), bodem en " +"bovenste oppervlakte zijn hiervan uitgezonderd" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Dit maakt spiralen mogelijk, waardoor de Z-bewegingen van de buitencontour " +"worden afgevlakt en een solide model wordt omgezet in een enkelwandige print " +"met solide onderlagen. Het uiteindelijke gegenereerde model heeft geen naad." + +msgid "Smooth Spiral" +msgstr "Smooth Spiral" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" + +msgid "Max XY Smoothing" +msgstr "Max XY Smoothing" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Maximum distance to move points in XY to try to achieve a smooth spiral. If " +"expressed as a %, it will be computed over nozzle diameter" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Als de vloeiende of traditionele modus is geselecteerd, wordt voor elke " +"print een timelapse-video gegenereerd. Nadat elke laag is geprint, wordt een " +"momentopname gemaakt met de kamercamera. Al deze momentopnamen worden " +"samengevoegd tot een timelapse-video wanneer het afdrukken is voltooid. Als " +"de vloeiende modus is geselecteerd, beweegt de gereedschapskop naar de " +"afvoer chute nadat iedere laag is afgedrukt en maakt vervolgens een " +"momentopname. Aangezien het gesmolten filament uit de nozzle kan lekken " +"tijdens het maken van een momentopname, is voor de soepele modus een " +"primetoren nodig om de nozzle schoon te vegen." + +msgid "Traditional" +msgstr "Traditioneel" + +msgid "Temperature variation" +msgstr "Temperatuur variatie" + +msgid "Start G-code" +msgstr "Start G-code" + +msgid "Start G-code when start the whole printing" +msgstr "Start G-code bij het starten van een print" + +msgid "Start G-code when start the printing of this filament" +msgstr "Start G-code wanneer het printen van dit filament begint" + +msgid "Single Extruder Multi Material" +msgstr "Multi-material met één extruder" + +msgid "Use single nozzle to print multi filament" +msgstr "" + +msgid "Manual Filament Change" +msgstr "" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" + +msgid "Purge in prime tower" +msgstr "" + +msgid "Purge remaining filament into prime tower" +msgstr "" + +msgid "Enable filament ramming" +msgstr "" + +msgid "No sparse layers (beta)" +msgstr "" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Het afveegblok wordt niet geprint bij lagen zonder toolwisselingen als dit " +"is ingeschakeld. Op lagen met een toolwissel zal de extruder neerwaarts " +"bewegen naar het afveegblok. De gebruiker is verantwoordelijk voor eventuele " +"botsingen met de print." + +msgid "Prime all printing extruders" +msgstr "Veeg alle printextruders af" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Alle extruders worden afgeveegd aan de voorzijde van het printbed aan het " +"begin van de print als dit is ingeschakeld." + +msgid "Slice gap closing radius" +msgstr "Sluitingsradius van de gap" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Scheuren kleiner dan 2x de sluitradius van de spleet worden opgevuld tijdens " +"het snijden van driehoekig mesh. Het sluiten van openingen kan de " +"uiteindelijke afdrukresolutie verminderen, daarom is het raadzaam om de " +"waarde redelijk laag te houden." + +msgid "Slicing Mode" +msgstr "Slicing-modus" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Gebruik „Even-Oneven” voor 3DLabPrint-vliegtuigmodellen. Gebruik „Gaten " +"sluiten” om alle gaten in het model te sluiten." + +msgid "Regular" +msgstr "Standaard" + +msgid "Even-odd" +msgstr "Even-oneven" + +msgid "Close holes" +msgstr "Gaten sluiten" + +msgid "Z offset" +msgstr "Z-hoogte" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Deze waarde wordt toegevoegd (of afgetrokken) van alle Z-coördinaten in de G-" +"code. Het wordt gebruikt voor een slechte Z-eindstop positie. Als de Z-" +"eindstop bijvoorbeeld een waarde gebruikt die 0.3mm van het printbed is, kan " +"dit ingesteld worden op -0.3mm." + +msgid "Enable support" +msgstr "Support inschakelen" + +msgid "Enable support generation." +msgstr "Dit maakt het genereren van support mogelijk." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"normal(auto) en tree(auto) worden gebruikt om automatisch steun te " +"genereren. Als normaal(handmatig) of tree(handmatig) is geselecteerd, worden " +"alleen ondersteuningen handhavers gegenereerd." + +msgid "normal(auto)" +msgstr "Normaal (automatisch)" + +msgid "tree(auto)" +msgstr "tree(auto)" + +msgid "normal(manual)" +msgstr "normaal (handmatig)" + +msgid "tree(manual)" +msgstr "tree (handmatig)" + +msgid "Support/object xy distance" +msgstr "Support/object XY afstand" + +msgid "XY separation between an object and its support" +msgstr "Dit regelt de XY-afstand tussen een object en zijn support." + +msgid "Pattern angle" +msgstr "Patroon hoek" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Gebruik deze instelling om het support patroon op het horizontale vlak te " +"roteren." + +msgid "On build plate only" +msgstr "Alleen op het printbed" + +msgid "Don't create support on model surface, only on build plate" +msgstr "Deze instelling genereert alleen support die begint op het printbed." + +msgid "Support critical regions only" +msgstr "Alleen kritische regio's ondersteunen" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Creëer alleen ondersteuning voor kritieke gebieden, waaronder sharp tail, " +"cantilever, etc." + +msgid "Remove small overhangs" +msgstr "Kleine uitsteeksels verwijderen" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "Verwijder kleine overstekken die mogelijk geen steun nodig hebben." + +msgid "Top Z distance" +msgstr "Top Z afstand" + +msgid "The z gap between the top support interface and object" +msgstr "" +"Dit bepaald de Z-afstand tussen de bovenste support interfaces en het object." + +msgid "Bottom Z distance" +msgstr "Onderste Z-afstand" + +msgid "The z gap between the bottom support interface and object" +msgstr "De z-opening tussen de onderste ondersteuningsinterface en het object" + +msgid "Support/raft base" +msgstr "Support/raft base" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filament voor het printen van ondersteuning (support) en raft. \"Standaard\" " +"betekent geen specifiek filament voor ondersteuning (support) en het " +"huidige filament wordt gebruikt." + +msgid "Avoid interface filament for base" +msgstr "Vermijd interfacedraad voor basis" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Gebruik indien mogelijk geen filament voor de steuninterface om de " +"steunbasis te printen." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Interface use loop pattern" +msgstr "Luspatroon interface" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Dit bedekt de bovenste laag van de support met lussen. Het is standaard " +"uitgeschakeld." + +msgid "Support/raft interface" +msgstr "Support/raft interface" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filament om ondersteuning (support) te printen. \"Standaard\" betekent geen " +"specifiek filament voor ondersteuning (support), en het huidige filament " +"wordt gebruikt." + +msgid "Top interface layers" +msgstr "Bovenste interface lagen" + +msgid "Number of top interface layers" +msgstr "Dit is het aantal bovenste interfacelagen." + +msgid "Bottom interface layers" +msgstr "Onderste interfacelagen" + +msgid "Number of bottom interface layers" +msgstr "Aantal onderste interfacelagen" + +msgid "Same as top" +msgstr "Hetzelfde als boven" + +msgid "Top interface spacing" +msgstr "Bovenste interface-afstand" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "" +"Dit is de afstand tussen de interfacelijnen. 0 betekent solide interface." + +msgid "Bottom interface spacing" +msgstr "Onderste interface-afstand" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Dit is de afstand tussen de onderste interfacelijnen. 0 betekent solide " +"interface." + +msgid "Speed of support interface" +msgstr "Dit is de snelheid voor het printen van de support interfaces." + +msgid "Base pattern" +msgstr "Basis patroon" + +msgid "Line pattern of support" +msgstr "Dit is het lijnpatroon voor support." + +msgid "Rectilinear grid" +msgstr "Rechtlijnig raster" + +msgid "Hollow" +msgstr "Hol" + +msgid "Interface pattern" +msgstr "Interfacepatroon" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Dit is het lijnpatroon voor support interfaces. Het standaardpatroon voor " +"niet-oplosbare support interfaces is Rechtlijnig, terwijl het " +"standaardpatroon voor oplosbare support interfaces Concentrisch is." + +msgid "Rectilinear Interlaced" +msgstr "Rectilinear Interlaced" + +msgid "Base pattern spacing" +msgstr "Basis patroon afstand" + +msgid "Spacing between support lines" +msgstr "Dit bepaald de ruimte tussen de support lijnen." + +msgid "Normal Support expansion" +msgstr "Normale uitbreiding van de ondersteuning" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "" +"Vergroot (+) of verklein (-) het horizontale bereik van de normale " +"ondersteuning" + +msgid "Speed of support" +msgstr "Dit is de snelheid voor het printen van support." + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" + +msgid "Snug" +msgstr "Nauwsluitend" + +msgid "Tree Slim" +msgstr "Tree Slim" + +msgid "Tree Strong" +msgstr "Tree Strong" + +msgid "Tree Hybrid" +msgstr "Tree Hybrid" + +msgid "Organic" +msgstr "" + +msgid "Independent support layer height" +msgstr "Onafhankelijke support laaghoogte" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." + +msgid "Threshold angle" +msgstr "Drempel hoek" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Er zal ondersteuning support gegenereerd worden voor overhangende hoeken " +"waarvan de hellingshoek lager is dan deze drempel." + +msgid "Tree support branch angle" +msgstr "Tree support vertakkingshoek" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Deze instelling bepaalt de maximale overhanghoek die de uitloop van de tree " +"support mogen maken. Als de hoek wordt vergroot, kunnen de uitlopen meer " +"horizontaal worden geprint, waardoor ze verder kunnen reiken." + +msgid "Preferred Branch Angle" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" + +msgid "Tree support branch distance" +msgstr "Tree support tak-afstand" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"Deze instelling bepaald de afstand tussen naastliggende tree support " +"knooppunten." + +msgid "Branch Density" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" + +msgid "Adaptive layer height" +msgstr "Adaptieve laaghoogte" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" + +msgid "Auto brim width" +msgstr "" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" + +msgid "Tree support brim width" +msgstr "Tree support brim width" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "" + +msgid "Tip Diameter" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "" + +msgid "Tree support branch diameter" +msgstr "Tree support diameter van de takken" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Deze instelling bepaalt de initiële diameter van support knooppunten." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" + +msgid "Branch Diameter with double walls" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" + +msgid "Support wall loops" +msgstr "Steunmuurlussen" + +msgid "This setting specify the count of walls around support" +msgstr "Deze instelling specificeert het aantal muren rond de ondersteuning" + +msgid "Tree support with infill" +msgstr "Tree support met vulling" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Deze instelling geeft aan of er opvulling moet worden toegevoegd in grote " +"holtes van de tree support." + +msgid "Activate temperature control" +msgstr "" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" + +msgid "Chamber temperature" +msgstr "Kamertemperatuur" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on. At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials, the actual chamber temperature should not " +"be high to avoid clogs, so 0 (turned off) is highly recommended." + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Nozzle temperatuur voor de lagen na de eerstse laag" + +msgid "Detect thin wall" +msgstr "Detecteer dunne wanden" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Dit detecteert dunne wanden die geen twee lijnen kunnen bevatten en gebruikt " +"een enkele lijn tijdens het printen. Het kan zijn dat de kwaliteit minder " +"goed is, omdat er geen gesloten lus is" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Deze G-code wordt ingevoegd wanneer filament wordt vervangen, inclusief T-" +"commando's om gereedschapswissel te activeren." + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Speed of top surface infill which is solid" +msgstr "" +"Dit is de snelheid voor de solide vulling (infill) van de bovenste laag" + +msgid "Top shell layers" +msgstr "Aantal lagen bovenkant" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Dit is het aantal solide lagen van de bovenkant, inclusief de bovenste " +"oppervlaktelaag. Wanneer de door deze waarde berekende dikte dunner is dan " +"de dikte van de bovenste laag, worden de bovenste lagen vergroot" + +msgid "Top solid layers" +msgstr "Aantal bovenste solide lagen" + +msgid "Top shell thickness" +msgstr "Dikte bovenkant" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"Het aantal bovenste solide lagen wordt verhoogd tijdens het slicen als de " +"totale dikte van de bovenste lagen lager is dan deze waarde. Dit zorgt " +"ervoor dat de schaal niet te dun is bij een lage laaghoogte. 0 betekend dat " +"deze instelling niet actief is en dat de dikte van de bovenkant bepaald " +"wordt door het aantal bodem lagen." + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Dit is de snelheid waarmee verplaatsingen zullen worden gedaan." + +msgid "Wipe while retracting" +msgstr "Vegen tijdens intrekken (retracting)" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Dit beweegt de nozzle langs het laatste extrusiepad bij het terugtrekken " +"(retraction) om eventueel gelekt materiaal op het mondstuk te reinigen. Dit " +"kan \"blobs\" minimaliseren bij het printen van een nieuw onderdeel na het " +"verplaatsen." + +msgid "Wipe Distance" +msgstr "Veeg afstand" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"The wiping tower can be used to clean up residue on the nozzle and stabilize " +"the chamber pressure inside the nozzle in order to avoid appearance defects " +"when printing objects." + +msgid "Purging volumes" +msgstr "Volumes opschonen" + +msgid "Flush multiplier" +msgstr "Flush-vermenigvuldiger" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"De werkelijke flushvolumes zijn gelijk aan de flush vermenigvuldigingswaarde " +"vermenigvuldigd met de flushvolumes in de tabel." + +msgid "Prime volume" +msgstr "Prime-volume" + +msgid "The volume of material to prime extruder on tower." +msgstr "" +"Dit is het volume van het materiaal dat de extruder op de prime toren " +"uitwerpt." + +msgid "Width of prime tower" +msgstr "Dit is de breedte van de prime toren." + +msgid "Wipe tower rotation angle" +msgstr "Rotatie van het afveegblok" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Rotatie van het afveegblok ten opzichte van de X-as." + +msgid "Stabilization cone apex angle" +msgstr "" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" + +msgid "Wipe tower purge lines spacing" +msgstr "" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "" + +msgid "Maximum wipe tower print speed" +msgstr "" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" + +msgid "Wipe tower extruder" +msgstr "" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" + +msgid "Purging volumes - load/unload volumes" +msgstr "" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Het purgen na het verwisselen van het filament vindt plaats in de vullingen " +"van objecten. Dit kan de hoeveelheid afval verminderen en de printtijd " +"verkorten. Als de wanden zijn geprint met transparant filament, is de infill " +"in gemengde kleuren zichtbaar. Het wordt niet van kracht tenzij de prime " +"tower is ingeschakeld." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"Het purgen na het verwisselen van het filament vindt plaats in de " +"ondersteuning van de objecten. Dit kan de hoeveelheid afval verminderen en " +"de printtijd verkorten. Het wordt niet van kracht tenzij een prime tower is " +"ingeschakeld." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Dit object wordt gebruikt om de nozzle te reinigen nadat het filament is " +"vervangen om filament te besparen en de printtijd te verkorten. Als " +"resultaat worden de kleuren van de objecten gemengd. Het wordt niet van " +"kracht tenzij de prime tower is ingeschakeld." + +msgid "Maximal bridging distance" +msgstr "Maximale brugafstand" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "Maximale afstand tussen support op dunne vullingsdelen." + +msgid "X-Y hole compensation" +msgstr "X-Y-gaten compensatie" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Gaten in objecten worden met de ingestelde waarde groter of kleiner in het " +"XY-vlak. Positieve waarden maken de gaten groter en negatieve waarden maken " +"de gaten kleiner. Deze functie wordt gebruikt om de grootte enigszins aan te " +"passen wanneer objecten montageproblemen hebben." + +msgid "X-Y contour compensation" +msgstr "X-Y contourcompensatie" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"De contouren van objecten worden met de ingestelde waarde in het XY-vlak " +"groter of kleiner gemaakt. Positieve waarden maken contouren groter en " +"negatieve waarden maken contouren kleiner. Deze functie wordt gebruikt om de " +"afmetingen enigszins aan te passen wanneer objecten montageproblemen hebben." + +msgid "Convert holes to polyholes" +msgstr "" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" + +msgid "Polyhole detection margin" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" + +msgid "Polyhole twist" +msgstr "" + +msgid "Rotate the polyhole every layer." +msgstr "" + +msgid "G-code thumbnails" +msgstr "G-code miniaturen" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" + +msgid "Format of G-code thumbnails" +msgstr "Bestandstype van G-code-voorbeelden" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Bestandstype van G-code-voorbeelden: PNG voor de beste kwaliteit, JPG voor " +"kleinste bestand, QOI voor firmware met weinig geheugen" + +msgid "Use relative E distances" +msgstr "Relatieve E-afstanden gebruiken" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"De klassieke wandgenerator produceert wanden met constante extrusiebreedte " +"en voor zeer dunne gebieden wordt gap-fill gebruikt. De Arachne generator " +"produceert wanden met variabele extrusiebreedte." + +msgid "Classic" +msgstr "Klassiek" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Lengte wandovergang" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Bij de overgang tussen verschillende aantallen muren naarmate het onderdeel " +"dunner wordt, wordt een bepaalde hoeveelheid ruimte toegewezen om de " +"wandsegmenten te splitsen of samen te voegen. Dit wordt uitgedrukt als een " +"percentage ten opzichte van de diameter van de nozzle." + +msgid "Wall transitioning filter margin" +msgstr "Marge van het filter voor wandovergang" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Voorkom heen en weer schakelen tussen een extra wand en een wand minder. " +"Deze marge breidt het bereik van extrusiebreedten uit dat volgt op [Minimum " +"wandbreedte - marge, 2 * Minimale wandbreedte + marge]. Door deze marge te " +"vergroten, wordt het aantal overgangen verminderd, waardoor het aantal " +"extrusie-starts/-stops en travel tijd wordt verminderd. Grote variaties in " +"de extrusiebreedte kunnen echter leiden tot onder- of overextrusieproblemen. " +"Het wordt uitgedrukt als een percentage over de diameter van de nozzle" + +msgid "Wall transitioning threshold angle" +msgstr "Drempelhoek voor wandovergang" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Wanneer moet u overgangen maken tussen even en oneven aantallen muren? Een " +"wigvorm met een hoek groter dan deze instelling heeft geen overgangen en er " +"worden in het midden geen muren afgedrukt om de resterende ruimte te vullen. " +"Als u deze instelling verlaagt, worden het aantal en de lengte van deze " +"middenwanden beperkt, maar kunnen er openingen ontstaan of overextruderen" + +msgid "Wall distribution count" +msgstr "Aantal wandverdelingen" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"Het aantal wanden, geteld vanuit het midden, waarover de variatie moet " +"worden verdeeld. Lagere waarden betekenen dat de buitenwanden niet in " +"breedte veranderen." + +msgid "Minimum feature size" +msgstr "Minimale kenmerkgrootte" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Minimale dikte van dunne onderdelen. Modelkenmerken die dunner zijn dan deze " +"waarde worden niet afgedrukt, terwijl functies die dikker zijn dan de " +"minimale afmeting van het object, worden verbreed tot de minimale " +"wandbreedte. Dit wordt uitgedrukt als een percentage ten opzichte van de " +"diameter van het mondstuk" + +msgid "Minimum wall length" +msgstr "" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" + +msgid "First layer minimum wall width" +msgstr "" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" + +msgid "Minimum wall width" +msgstr "Minimale wandbreedte" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Breedte van de muur die dunne delen (volgens de minimale functiegrootte) van " +"het model zal vervangen. Als de minimale wandbreedte dunner is dan de dikte " +"van het element, wordt de muur net zo dik als het object zelf. Dit wordt " +"uitgedrukt als een percentage ten opzichte van de diameter van de nozzle" + +msgid "Detect narrow internal solid infill" +msgstr "Detecteer dichte interne solide vulling (infill)" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Deze optie detecteert automatisch smalle interne solide opvul (infill) " +"gebieden. Indien ingeschakeld, wordt het concentrische patroon gebruikt voor " +"het gebied om het afdrukken te versnellen. Anders wordt standaard het " +"rechtlijnige patroon gebruikt." + +msgid "invalid value " +msgstr "invalid value " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Invalid value when spiral vase mode is enabled: " + +msgid "too large line width " +msgstr "too large line width " + +msgid " not in range " +msgstr " not in range " + +msgid "Minimum save" +msgstr "" + +msgid "export 3mf with minimum size." +msgstr "" + +msgid "No check" +msgstr "No check" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "Do not run any validity checks, such as G-code path conflicts check." + +msgid "Ensure on bed" +msgstr "Plaats op bed" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" + +msgid "Orient Options" +msgstr "" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Rotatiehoek rond de Z-as in graden." + +msgid "Rotate around Y" +msgstr "Draai over de Y-as" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Rotatiehoek rond de Y-as in graden." + +msgid "Data directory" +msgstr "Bestandslocatie voor de data" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Laad fabrieksinstellingen en sla op. Dit is handig voor het onderhouden van " +"verschillende profielen of het opnemen van configuraties van een " +"netwerkopslag." + +msgid "Load custom gcode" +msgstr "" + +msgid "Load custom gcode from json" +msgstr "" + +msgid "Current z-hop" +msgstr "" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "" + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" + +msgid "Extra deretraction" +msgstr "" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" + +msgid "Current extruder" +msgstr "" + +msgid "Zero-based index of currently used extruder." +msgstr "" + +msgid "Current object index" +msgstr "" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" + +msgid "Has wipe tower" +msgstr "" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "" + +msgid "Initial extruder" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" + +msgid "Initial tool" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" + +msgid "Is extruder used?" +msgstr "" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" + +msgid "Volume per extruder" +msgstr "" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" + +msgid "Total toolchanges" +msgstr "" + +msgid "Number of toolchanges during the print." +msgstr "" + +msgid "Total volume" +msgstr "" + +msgid "Total volume of filament used during the entire print." +msgstr "" + +msgid "Weight per extruder" +msgstr "" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" + +msgid "Total weight" +msgstr "" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" + +msgid "Total layer count" +msgstr "" + +msgid "Number of layers in the entire print." +msgstr "" + +msgid "Number of objects" +msgstr "" + +msgid "Total number of objects in the print." +msgstr "" + +msgid "Number of instances" +msgstr "" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" + +msgid "Scale per object" +msgstr "" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" + +msgid "Input filename without extension" +msgstr "" + +msgid "Source filename of the first object, without extension." +msgstr "" + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" + +msgid "First layer convex hull" +msgstr "" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" + +msgid "Bottom-left corner of first layer bounding box" +msgstr "" + +msgid "Top-right corner of first layer bounding box" +msgstr "" + +msgid "Size of the first layer bounding box" +msgstr "" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "" + +msgid "Top-right corner of print bed bounding box" +msgstr "" + +msgid "Size of the print bed bounding box" +msgstr "" + +msgid "Timestamp" +msgstr "" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "" + +msgid "Day" +msgstr "" + +msgid "Hour" +msgstr "" + +msgid "Minute" +msgstr "" + +msgid "Print preset name" +msgstr "" + +msgid "Name of the print preset used for slicing." +msgstr "" + +msgid "Filament preset name" +msgstr "" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" + +msgid "Printer preset name" +msgstr "" + +msgid "Name of the printer preset used for slicing." +msgstr "" + +msgid "Physical printer name" +msgstr "" + +msgid "Name of the physical printer used for slicing." +msgstr "" + +msgid "Layer number" +msgstr "" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" + +msgid "Layer z" +msgstr "" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" + +msgid "Maximal layer z" +msgstr "" + +msgid "Height of the last layer above the print bed." +msgstr "" + +msgid "Filament extruder ID" +msgstr "" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "" + +msgid "Error in zip archive" +msgstr "Fout in het zip archief" + +msgid "Generating walls" +msgstr "Wanden genereren" + +msgid "Generating infill regions" +msgstr "Vulling (infill) genereren" + +msgid "Generating infill toolpath" +msgstr "Infill toolpath genereren" + +msgid "Detect overhangs for auto-lift" +msgstr "Detect overhangs for auto-lift" + +msgid "Generating support" +msgstr "Support genereren" + +msgid "Checking support necessity" +msgstr "Controleren of support is noodzakelijk" + +msgid "floating regions" +msgstr "floating regions" + +msgid "floating cantilever" +msgstr "floating cantilever" + +msgid "large overhangs" +msgstr "large overhangs" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." + +msgid "Optimizing toolpath" +msgstr "Optimaliseren van het pad" + +msgid "Slicing mesh" +msgstr "Slicing mesh" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Support: toolpad genereren op laag %d" + +msgid "Support: detect overhangs" +msgstr "Support: detecteren van overhangende wanden" + +msgid "Support: generate contact points" +msgstr "Support: contactpunten genereren" + +msgid "Support: propagate branches" +msgstr "Support: vertakkingen verspreiden" + +msgid "Support: draw polygons" +msgstr "Support: polygonen tekenen" + +msgid "Support: generate toolpath" +msgstr "Support: toolpath genereren" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Support: genereer polygonen op laag %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Support: repareer gaten op laag %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Support: verspreid takken op laag %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Unknown file format: input file must have .stl, .obj, or .amf(.xml) " +"extension." + +msgid "Loading of a model file failed." +msgstr "Loading of model file failed." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "The supplied file couldn't be read because it's empty." + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "Unknown file format: input file must have .3mf or .zip.amf extension." + +msgid "Canceled" +msgstr "Canceled" + +msgid "load_obj: failed to parse" +msgstr "load_obj: failed to parse" + +msgid "load mtl in obj: failed to parse" +msgstr "load mtl in obj: failed to parse" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "The file contains polygons with more than 4 vertices." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "The file contains polygons with less than 2 vertices." + +msgid "The file contains invalid vertex index." +msgstr "The file contains invalid vertex index." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "This OBJ file couldn't be read because it's empty." + +msgid "Flow Rate Calibration" +msgstr "Flow Rate kalibratie" + +msgid "Max Volumetric Speed Calibration" +msgstr "Kalibratie van maximale volumetrische snelheid" + +msgid "Manage Result" +msgstr "Resultaat beheren" + +msgid "Manual Calibration" +msgstr "Handmatige kalibratie" + +msgid "Result can be read by human eyes." +msgstr "Het resultaat kan door mensenogen worden gelezen." + +msgid "Auto-Calibration" +msgstr "Auto-Calibration" + +msgid "We would use Lidar to read the calibration result" +msgstr "We zouden Lidar gebruiken om het kalibratieresultaat af te lezen" + +msgid "Prev" +msgstr "Vorige" + +msgid "Recalibration" +msgstr "Herkalibratie" + +msgid "Calibrate" +msgstr "Kalibreren" + +msgid "Finish" +msgstr "Klaar" + +msgid "How to use calibration result?" +msgstr "Hoe kan ik kalibratieresultaten gebruiken?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"Je kunt de kalibratiefactor van de stromingsdynamica wijzigen bij het " +"bewerken van materialen" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"De huidige firmwareversie van de printer ondersteunt geen kalibratie.\n" +"Voer een upgrade van de printerfirmware uit." + +msgid "Calibration not supported" +msgstr "Kalibratie wordt niet ondersteund" + +msgid "Error desc" +msgstr "Fout beschrijving" + +msgid "Extra info" +msgstr "Extra informatie" + +msgid "Flow Dynamics" +msgstr "Flowdynamiek" + +msgid "Flow Rate" +msgstr "Flow Rate" + +msgid "Max Volumetric Speed" +msgstr "Maximale volumetrische snelheid" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Voer geldige waarden in:\n" +"Startwaarde: >= %.1f\n" +"Eindwaarde: <= %.1f\n" +"Eindwaarde: > Startwaarde\n" +"Waarde stap: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "De naam mag niet leeg zijn." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "De geselecteerde preset: %s is niet gevonden." + +msgid "The name cannot be the same as the system preset name." +msgstr "" +"De naam mag niet hetzelfde zijn als de naam van de systeemvoorinstelling." + +msgid "The name is the same as another existing preset name" +msgstr "De naam is hetzelfde als een andere bestaande presetnaam" + +msgid "create new preset failed." +msgstr "nieuwe voorinstelling maken mislukt." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Are you sure you want to cancel the current calibration and return to the " +"home page?" + +msgid "No Printer Connected!" +msgstr "Geen printer aangesloten!" + +msgid "Printer is not connected yet." +msgstr "Printer is nog niet aangesloten." + +msgid "Please select filament to calibrate." +msgstr "Selecteer het filament dat u wilt kalibreren." + +msgid "The input value size must be 3." +msgstr "De grootte van de invoerwaarde moet 3 zijn." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"This machine type can only hold 16 historical results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" + +msgid "Connecting to printer..." +msgstr "Aansluiten op de printer..." + +msgid "The failed test result has been dropped." +msgstr "Het mislukte testresultaat is verwijderd." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Flow Dynamics kalibratieresultaat is opgeslagen in de printer" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"Er is al een eerder kalibratieresultaat met dezelfde naam: %s. Er wordt maar " +"één resultaat met een naam opgeslagen. Weet je zeker dat je het vorige " +"resultaat wilt overschrijven?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"This machine type can only hold %d historical results per nozzle. This " +"result will not be saved." + +msgid "Internal Error" +msgstr "Interne fout" + +msgid "Please select at least one filament for calibration" +msgstr "Selecteer ten minste één filament voor kalibratie" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "" +"Het resultaat van de debietkalibratie is opgeslagen in een " +"voorkeursinstelling." + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"Het kalibratieresultaat van de maximale volumetrische snelheid is opgeslagen " +"in de vooraf ingestelde waarde" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Wanneer heb je een Flow Dynamics-kalibratie nodig?" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"We hebben nu de automatische kalibratie voor verschillende filamenten " +"toegevoegd. Deze is volledig geautomatiseerd en het resultaat wordt " +"opgeslagen in de printer voor toekomstig gebruik. Je hoeft de kalibratie " +"alleen uit te voeren in de volgende beperkte gevallen:\n" +"1. Als je een nieuw filament van een ander merk/model introduceert of als " +"het filament vochtig is;\n" +"2. Als de spuitmond versleten is of vervangen is door een nieuwe;\n" +"3. Als de maximale volumetrische snelheid of printtemperatuur is gewijzigd " +"in de filamentinstelling." + +msgid "About this calibration" +msgstr "Over deze kalibratie" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "Wanneer moet u Flow Rate kalibratie gebruiken" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Bovendien is Flow Rate kalibratie cruciaal voor schuimmaterialen zoals LW-" +"PLA die worden gebruikt in RC-vliegtuigen. Deze materialen zetten sterk uit " +"bij verhitting, en kalibratie levert een bruikbare referentiestroom op." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"Flow Rate Calibration meet de verhouding tussen verwachte en werkelijke " +"extrusievolumes. De standaardinstelling werkt goed in Bambu Lab printers en " +"officiële filamenten, omdat deze vooraf zijn gekalibreerd en afgestemd. Voor " +"een normaal filament is het meestal niet nodig om een kalibratie van de " +"stroomsnelheid uit te voeren, tenzij je nog steeds de genoemde defecten ziet " +"nadat je andere kalibraties hebt uitgevoerd. Kijk voor meer informatie in " +"het wiki-artikel." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before performing it." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Wanneer u maximale volumetrische snelheidskalibratie nodig hebt" + +msgid "Over-extrusion or under extrusion" +msgstr "Over-extrusie of onderextrusie" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"Kalibratie van de maximale volumetrische snelheid wordt aanbevolen wanneer " +"je afdrukt met:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "materiaal met aanzienlijke thermische krimp/uitzetting, zoals..." + +msgid "materials with inaccurate filament diameter" +msgstr "materialen met een onnauwkeurige filamentdiameter" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "We hebben de beste Flow Dynamics kalibratiefactor gevonden" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Een deel van de kalibratie is mislukt! U kunt de plaat schoonmaken en het " +"opnieuw proberen. Het mislukte testresultaat komt te vervallen." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*We raden je aan om merk, materiaal, type en zelfs vochtigheidsgraad toe te " +"voegen in de Naam." + +msgid "Failed" +msgstr "Mislukt" + +msgid "Please enter the name you want to save to printer." +msgstr "Voer de naam in die u op de printer wilt opslaan." + +msgid "The name cannot exceed 40 characters." +msgstr "De naam mag niet langer zijn dan 40 tekens." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Slechts één van de resultaten met dezelfde naam wordt opgeslagen. Weet je " +"zeker dat je de andere resultaten wilt overschrijven?" + +msgid "Please find the best line on your plate" +msgstr "Zoek de beste regel op je bord" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Zoek de hoek met de perfecte extrusiegraad" + +msgid "Input Value" +msgstr "Invoerwaarde" + +msgid "Save to Filament Preset" +msgstr "Opslaan in filamentvoorinstellingen" + +msgid "Preset" +msgstr "Voorinstelling" + +msgid "Record Factor" +msgstr "Recordfactor" + +msgid "We found the best flow ratio for you" +msgstr "We hebben de beste stroomverhouding voor je gevonden" + +msgid "Flow Ratio" +msgstr "Flow ratio" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Voer een geldige waarde in (0,0 < flow ratio < 2,0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Voer de naam in van de voorinstelling die u wilt opslaan." + +msgid "Calibration1" +msgstr "Kalibratie 1" + +msgid "Calibration2" +msgstr "Kalibratie 2" + +msgid "Please find the best object on your plate" +msgstr "Zoek het beste voorwerp op je bord" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Vul de waarde boven het blok in met het gladste bovenvlak" + +msgid "Skip Calibration2" +msgstr "Kalibratie overslaan2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "Stroomverhouding : %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Kies een blok met de gladste bovenkant" + +msgid "Please choose a block with smoothest top surface." +msgstr "Kies een blok met de gladste bovenkant." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "" +"Voer een geldige waarde in (0 <= maximale volumetrische snelheid <= 60)" + +msgid "Calibration Type" +msgstr "Kalibratietype" + +msgid "Complete Calibration" +msgstr "Volledige kalibratie" + +msgid "Fine Calibration based on flow ratio" +msgstr "Fijne kalibratie op basis van flow ratio" + +msgid "Title" +msgstr "Titel" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Er wordt een testmodel geprint. Maak de bouwplaat vrij en plaats deze terug " +"op het hotbed voordat je gaat kalibreren." + +msgid "Printing Parameters" +msgstr "Afdrukparameters" + +msgid "Plate Type" +msgstr "Plate Type" + +msgid "filament position" +msgstr "filament positie" + +msgid "External Spool" +msgstr "Externe spoel" + +msgid "Filament For Calibration" +msgstr "Filament voor kalibratie" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Tips voor kalibratiemateriaal: \n" +"- Materialen die dezelfde warmbedtemperatuur kunnen delen\n" +"- Verschillende filamentmerken en -families (Merk = Bambu, Familie = Basis, " +"Mat)" + +msgid "Pattern" +msgstr "Patroon" + +msgid "Method" +msgstr "Methode" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s is niet compatibel met %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "TPU wordt niet ondersteund voor automatische Flow Dynamics-kalibratie." + +msgid "Connecting to printer" +msgstr "Verbinding maken met printer" + +msgid "From k Value" +msgstr "Van k Waarde" + +msgid "To k Value" +msgstr "Naar k Waarde" + +msgid "Step value" +msgstr "" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "" +"De diameter van het mondstuk is gesynchroniseerd met de printerinstellingen." + +msgid "From Volumetric Speed" +msgstr "Van Volumetric Speed" + +msgid "To Volumetric Speed" +msgstr "Naar volumetrische snelheid" + +msgid "Flow Dynamics Calibration Result" +msgstr "Kalibratieresultaat van Flow Dynamics" + +msgid "New" +msgstr "New" + +msgid "No History Result" +msgstr "Geen geschiedenisresultaat" + +msgid "Success to get history result" +msgstr "Succes om geschiedenisresultaat te krijgen" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "De vorige Flow Dynamics kalibratierecords vernieuwen" + +msgid "Action" +msgstr "Actie" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "This machine type can only hold %d historical results per nozzle." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Flow Dynamics-kalibratie bewerken" + +msgid "New Flow Dynamic Calibration" +msgstr "New Flow Dynamic Calibration" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "The filament must be selected." + +msgid "Network lookup" +msgstr "Netwerk opzoeken" + +msgid "Address" +msgstr "Address" + +msgid "Hostname" +msgstr "Hostnaam" + +msgid "Service name" +msgstr "Servicenaam" + +msgid "OctoPrint version" +msgstr "OctoPrint-versie" + +msgid "Searching for devices" +msgstr "Zoeken naar apparaten" + +msgid "Finished" +msgstr "Voltooid" + +msgid "Multiple resolved IP addresses" +msgstr "" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" + +msgid "PA Calibration" +msgstr "PA-kalibratie" + +msgid "DDE" +msgstr "" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "" + +msgid "PA Tower" +msgstr "PA-toren" + +msgid "PA Line" +msgstr "PA-lijn" + +msgid "PA Pattern" +msgstr "PA-patroon" + +msgid "Start PA: " +msgstr "Start PA:" + +msgid "End PA: " +msgstr "PA beëindigen: " + +msgid "PA step: " +msgstr "PA-stap:" + +msgid "Print numbers" +msgstr "Cijfers afdrukken" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Voer geldige waarden in:\n" +"PA starten: >= 0,0\n" +"PA beëindigen: > PA starten\n" +"PA-stap: >= 0,001)" + +msgid "Temperature calibration" +msgstr "Temperatuurkalibratie" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Filamenttype" + +msgid "Start temp: " +msgstr "Starttemp:" + +msgid "End temp: " +msgstr "Eindtemp:" + +msgid "Temp step: " +msgstr "Temp stap:" + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" + +msgid "Max volumetric speed test" +msgstr "Max. volumetrische snelheidstest" + +msgid "Start volumetric speed: " +msgstr "Volumetrische snelheid starten:" + +msgid "End volumetric speed: " +msgstr "Volumetrische eindsnelheid:" + +msgid "step: " +msgstr "stap:" + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "VFA test" +msgstr "VFA-test" + +msgid "Start speed: " +msgstr "Startsnelheid:" + +msgid "End speed: " +msgstr "Eindsnelheid:" + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "Start retraction length: " +msgstr "Begin terugtreklengte:" + +msgid "End retraction length: " +msgstr "Beëindig terugtreklengte: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "Stuur G-code naar printerhost" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Uploaden naar Printer Host met de volgende bestandsnaam:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "" +"Gebruik indien nodig schuine strepen (/) als scheidingsteken voor mappen." + +msgid "Upload to storage" +msgstr "" + +msgid "Switch to Device tab after upload." +msgstr "" + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "De bestandsnaam van de upload eindigt niet op \"%s\". Wilt u doorgaan?" + +msgid "Upload" +msgstr "Uploaden" + +msgid "Print host upload queue" +msgstr "Uploadwachtrij van de host afdrukken" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Voortgang" + +msgid "Host" +msgstr "Host" + +msgctxt "OfFile" +msgid "Size" +msgstr "Maat" + +msgid "Filename" +msgstr "Bestandsnaam" + +msgid "Cancel selected" +msgstr "Annuleer geselecteerde" + +msgid "Show error message" +msgstr "Foutmelding tonen" + +msgid "Enqueued" +msgstr "In de wachtrij" + +msgid "Uploading" +msgstr "Uploaden" + +msgid "Cancelling" +msgstr "Annuleren" + +msgid "Error uploading to print host" +msgstr "" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Kan geen booleaanse bewerking uitvoeren op geselecteerde onderdelen" + +msgid "Mesh Boolean" +msgstr "Mesh booleaans" + +msgid "Union" +msgstr "Unie" + +msgid "Difference" +msgstr "Verschil" + +msgid "Intersection" +msgstr "Kruising" + +msgid "Source Volume" +msgstr "Bronvolume" + +msgid "Tool Volume" +msgstr "Gereedschapsvolume" + +msgid "Subtract from" +msgstr "Aftrekken van" + +msgid "Subtract with" +msgstr "Aftrekken met" + +msgid "selected" +msgstr "geselecteerd" + +msgid "Part 1" +msgstr "Deel 1" + +msgid "Part 2" +msgstr "Deel 2" + +msgid "Delete input" +msgstr "Invoer verwijderen" + +msgid "Network Test" +msgstr "Netwerktest" + +msgid "Start Test Multi-Thread" +msgstr "Multi-thread test starten" + +msgid "Start Test Single-Thread" +msgstr "Test Single-Thread starten" + +msgid "Export Log" +msgstr "Logboek exporteren" + +msgid "Snapmaker Orca Version:" +msgstr "" + +msgid "System Version:" +msgstr "Systeemversie:" + +msgid "DNS Server:" +msgstr "DNS-server:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "" + +msgid "Test Bing.com" +msgstr "Test Bing.com" + +msgid "Test bing.com:" +msgstr "Test bing.com:" + +msgid "Log Info" +msgstr "Log-informatie" + +msgid "Select filament preset" +msgstr "Selecteer voorinstelling gloeidraad" + +msgid "Create Filament" +msgstr "Draad maken" + +msgid "Create Based on Current Filament" +msgstr "Creëer op basis van huidig filament" + +msgid "Copy Current Filament Preset " +msgstr "Kopieer de huidige filamentvoorinstelling " + +msgid "Basic Information" +msgstr "Basisinformatie" + +msgid "Add Filament Preset under this filament" +msgstr "Voeg Filament Preset toe onder dit filament" + +msgid "We could create the filament presets for your following printer:" +msgstr "We kunnen de filament presets maken voor uw volgende printer:" + +msgid "Select Vendor" +msgstr "Selecteer leverancier" + +msgid "Input Custom Vendor" +msgstr "Aangepaste leverancier invoeren" + +msgid "Can't find vendor I want" +msgstr "Kan de leverancier die ik wil niet vinden" + +msgid "Select Type" +msgstr "Selecteer type" + +msgid "Select Filament Preset" +msgstr "Selecteer filament preset" + +msgid "Serial" +msgstr "Serieel" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "bijv. Basic, Mat, Zijde, Marmer" + +msgid "Filament Preset" +msgstr "Filament voorinstelling" + +msgid "Create" +msgstr "Creëren" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Vendor is not selected; please reselect vendor." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "Custom vendor missing; please input custom vendor." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" of \"Generic\" kan niet worden gebruikt als leverancier voor " +"aangepaste filamenten." + +msgid "Filament type is not selected, please reselect type." +msgstr "Het type draad is niet geselecteerd, selecteer het type opnieuw." + +msgid "Filament serial is not inputed, please input serial." +msgstr "Filament serial missing; please input serial." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"There may be disallowed characters in the vendor or serial input of the " +"filament. Please delete and re-enter." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Alle ingangen in de aangepaste verkoper of serie zijn spaties. Voer opnieuw " +"in." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "The vendor can not be a number; please re-enter." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"Je hebt nog geen printer of preset geselecteerd. Selecteer er ten minste één." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"De filamentnaam %s die je hebt gemaakt, bestaat al. \n" +"Als u doorgaat, wordt de gemaakte voorinstelling weergegeven met de " +"volledige naam. Wilt u doorgaan?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Sommige bestaande presets zijn niet aangemaakt, als volgt:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Wil je het herschrijven?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" + +msgid "Create Printer/Nozzle" +msgstr "Printer/mondstuk maken" + +msgid "Create Printer" +msgstr "Printer maken" + +msgid "Create Nozzle for Existing Printer" +msgstr "Mondstuk maken voor bestaande printer" + +msgid "Create from Template" +msgstr "Maken op basis van sjabloon" + +msgid "Create Based on Current Printer" +msgstr "Aanmaken op basis van huidige printer" + +msgid "Import Preset" +msgstr "Preset importeren" + +msgid "Create Type" +msgstr "Type maken" + +msgid "The model is not found, place reselect vendor." +msgstr "The model was not found; please reselect vendor." + +msgid "Select Model" +msgstr "Model kiezen" + +msgid "Select Printer" +msgstr "Selecteer printer" + +msgid "Input Custom Model" +msgstr "Invoer aangepast model" + +msgid "Can't find my printer model" +msgstr "Kan mijn printermodel niet vinden" + +msgid "Rectangle" +msgstr "Rechthoek" + +msgid "Printable Space" +msgstr "Printbare ruimte" + +msgid "Hot Bed STL" +msgstr "Warm bed STL" + +msgid "Load stl" +msgstr "Stl laden" + +msgid "Hot Bed SVG" +msgstr "Warm bed SVG" + +msgid "Load svg" +msgstr "svg laden" + +msgid "Max Print Height" +msgstr "Max. afdrukhoogte" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "Het bestand is groter dan %d MB, importeer opnieuw." + +msgid "Exception in obtaining file size, please import again." +msgstr "Uitzondering in het verkrijgen van bestandsgrootte, importeer opnieuw." + +msgid "Preset path is not find, please reselect vendor." +msgstr "Preset-pad niet gevonden; selecteer leverancier opnieuw." + +msgid "The printer model was not found, please reselect." +msgstr "Het printermodel is niet gevonden, selecteer opnieuw." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "The nozzle diameter was not found; please reselect." + +msgid "The printer preset is not found, place reselect." +msgstr "The printer preset was not found; please reselect." + +msgid "Printer Preset" +msgstr "Vooraf ingestelde printer" + +msgid "Filament Preset Template" +msgstr "Filament vooraf ingestelde sjabloon" + +msgid "Deselect All" +msgstr "Alles deselecteren" + +msgid "Process Preset Template" +msgstr "Vooraf ingesteld proces sjabloon" + +msgid "Back Page 1" +msgstr "Terug Pagina 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Je hebt nog niet gekozen op basis van welke preset je de printer wilt maken. " +"Kies de leverancier en het model van de printer" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"U hebt een niet toegestaan teken ingevoerd in het gedeelte van het " +"afdrukbare gebied op de eerste pagina. Gebruik alleen cijfers." + +msgid "The custom printer or model is not inputed, place input." +msgstr "The custom printer or model missing; please input." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserved.\n" +"\tCancel: Do not create a preset; return to the creation interface." + +msgid "You need to select at least one filament preset." +msgstr "U moet ten minste één filamentvoorinstelling selecteren." + +msgid "You need to select at least one process preset." +msgstr "Je moet minstens één procesvoorinstelling selecteren." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Voorinstellingen voor filament maken mislukt. Als volgt:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "Procesvoorinstellingen maken mislukt. Als volgt:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Leverancier is niet gevonden; selecteer opnieuw." + +msgid "Current vendor has no models, please reselect." +msgstr "De huidige leverancier heeft geen modellen. Selecteer opnieuw." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"U hebt de verkoper en het model niet geselecteerd of de aangepaste verkoper " +"en het aangepaste model niet ingevoerd." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"Er kunnen escape-tekens staan in de aangepaste printerverkoper of het " +"aangepaste printermodel. Verwijder ze en voer ze opnieuw in." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"Alle invoer in de aangepaste printerverkoper of het aangepaste printermodel " +"zijn spaties. Voer opnieuw in." + +msgid "Please check bed printable shape and origin input." +msgstr "Controleer de bedrukbare vorm en oorsprongsinvoer." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Je hebt de printer waarvoor je het mondstuk wilt vervangen nog niet " +"geselecteerd; kies een printer." + +msgid "Create Printer Successful" +msgstr "Printer succesvol maken" + +msgid "Create Filament Successful" +msgstr "Filament Created Successfully" + +msgid "Printer Created" +msgstr "Printer gemaakt" + +msgid "Please go to printer settings to edit your presets" +msgstr "Ga naar printerinstellingen om je voorinstellingen te bewerken" + +msgid "Filament Created" +msgstr "Aangemaakt filament" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Ga naar filamentinstellingen om uw voorinstellingen te bewerken als dat " +"nodig is.\n" +"Houd er rekening mee dat de spuitmondtemperatuur, warmbedtemperatuur en " +"maximale volumetrische snelheid elk een aanzienlijke invloed hebben op de " +"printkwaliteit. Stel ze daarom zorgvuldig in." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" + +msgid "Printer Setting" +msgstr "Printerinstelling" + +msgid "Printer config bundle(.orca_printer)" +msgstr "" + +msgid "Filament bundle(.orca_filament)" +msgstr "" + +msgid "Printer presets(.zip)" +msgstr "Printer presets(.zip)" + +msgid "Filament presets(.zip)" +msgstr "Filament presets(.zip)" + +msgid "Process presets(.zip)" +msgstr "Proces presets(.zip)" + +msgid "initialize fail" +msgstr "initialiseren mislukt" + +msgid "add file fail" +msgstr "Bestand toevoegen mislukt" + +msgid "add bundle structure file fail" +msgstr "bundle structuurbestand toevoegen mislukt" + +msgid "finalize fail" +msgstr "afronden mislukt" + +msgid "open zip written fail" +msgstr "open zip geschreven mislukt" + +msgid "Export successful" +msgstr "Export succesvol" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it?\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Ingestelde preset vullingsset van de gebruiker.\n" +"Kan worden gedeeld met anderen." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Alleen printers met wijzigingen in printer-, filament- en proces presets " +"worden weergegeven." + +msgid "Only display the filament names with changes to filament presets." +msgstr "Geef alleen de filamentnamen weer met wijzigingen in filament presets." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Alleen printernamen met gebruikersprinter presets worden weergegeven en elke " +"preset die je kiest, wordt als zip geëxporteerd." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Alleen de filamentnamen met gebruikers presets worden weergegeven, \n" +"en alle gebruikers presets in elke filamentnaam die u selecteert, worden " +"geëxporteerd als zip-bestand." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Alleen printernamen met gewijzigde proces presets worden weergegeven, \n" +"en alle gebruikersproces presets in elke printernaam die u selecteert, " +"worden als zip geëxporteerd." + +msgid "Please select at least one printer or filament." +msgstr "Selecteer ten minste één printer of filament." + +msgid "Please select a type you want to export" +msgstr "Selecteer het type preset dat je wilt exporteren" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "Failed to create temporary folder, please try Export Configs again." + +msgid "Edit Filament" +msgstr "Bewerk filament" + +msgid "Filament presets under this filament" +msgstr "Presets onder deze gloeidraad" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Opmerking: Als de enige preset onder deze gloeidraad wordt verwijderd, wordt " +"de gloeidraad verwijderd na het verlaten van het dialoogvenster." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "" +"Presets die door andere presets worden geërfd, kunnen niet worden verwijderd" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" + +msgid "Delete Preset" +msgstr "Preset verwijderen" + +msgid "Are you sure to delete the selected preset?" +msgstr "Weet je zeker dat je de geselecteerde preset wilt verwijderen?" + +msgid "Delete preset" +msgstr "Preset verwijderen" + +msgid "+ Add Preset" +msgstr "+ Preset toevoegen" + +msgid "Delete Filament" +msgstr "Draad verwijderen" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Alle presets van het filament die bij dit filament horen, worden " +"verwijderd. \n" +"Als u dit filament gebruikt in uw printer, reset dan de filamentinformatie " +"voor die sleuf." + +msgid "Delete filament" +msgstr "Draad verwijderen" + +msgid "Add Preset" +msgstr "Preset toevoegen" + +msgid "Add preset for new printer" +msgstr "Preset toevoegen voor nieuwe printer" + +msgid "Copy preset from filament" +msgstr "Kopieer preset van filament" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "De filamentkeuze vindt geen filament preset, selecteer deze opnieuw" + +msgid "[Delete Required]" +msgstr "[Verwijderen vereist]" + +msgid "Edit Preset" +msgstr "Preset bewerken" + +msgid "For more information, please check out Wiki" +msgstr "For more information, please check out our Wiki" + +msgid "Collapse" +msgstr "Instorten" + +msgid "Daily Tips" +msgstr "Dagelijkse tips" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "mondstuk onthouden: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Your nozzle diameter in preset is not consistent with the saved nozzle " +"diameter. Have you changed your nozzle?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*Afdrukken%s materiaal mee%s kan schade aan het mondstuk veroorzaken" + +msgid "Need select printer" +msgstr "Printer selecteren" + +msgid "The start, end or step is not valid value." +msgstr "Het begin, einde of stap is geen geldige waarde." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Kan niet kalibreren: misschien omdat het bereik van de ingestelde " +"kalibratiewaarde te groot is, of omdat de stap te klein is" + +msgid "Physical Printer" +msgstr "Fysieke printer" + +msgid "Print Host upload" +msgstr "Host-upload afdrukken" + +msgid "Could not get a valid Printer Host reference" +msgstr "Kon geen geldige printerhostreferentie krijgen" + +msgid "Success!" +msgstr "Succes!" + +msgid "Are you sure to log out?" +msgstr "" + +msgid "Refresh Printers" +msgstr "Printers vernieuwen" + +msgid "View print host webui in Device tab" +msgstr "" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"HTTPS CA-bestand is optioneel. Het is alleen nodig als je HTTPS gebruikt met " +"een zelfondertekend certificaat." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Certificaatbestanden (*.crt, *.pem)|*.crt;*.pem|Alle bestanden|*.*" + +msgid "Open CA certificate file" +msgstr "Open CA-certificaatbestand" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"Op dit systeem gebruikt %s HTTPS-certificaten uit de " +"systeemcertificaatopslag of de sleutelhanger." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Om een aangepast CA-bestand te gebruiken, importeert u uw CA-bestand in " +"Certificate Store / Keychain." + +msgid "Login/Test" +msgstr "" + +msgid "Connection to printers connected via the print host failed." +msgstr "Verbinding met printers aangesloten via de printhost mislukt." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Verkeerd type afdrukhost: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "Connection to AstroBox is working correctly." + +msgid "Could not connect to AstroBox" +msgstr "Kan geen verbinding maken met AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Note: AstroBox version 1.1.0 or higher is required." + +msgid "Connection to Duet works correctly." +msgstr "Connection to Duet is working correctly." + +msgid "Could not connect to Duet" +msgstr "Kan geen verbinding maken met Duet" + +msgid "Unknown error occured" +msgstr "Onbekende fout opgetreden" + +msgid "Wrong password" +msgstr "Verkeerd wachtwoord." + +msgid "Could not get resources to create a new connection" +msgstr "Kan geen bronnen krijgen om een nieuwe verbinding te maken" + +msgid "Upload not enabled on FlashAir card." +msgstr "Uploaden niet ingeschakeld op FlashAir-kaart." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "Connection to FlashAir is working correctly and upload is enabled." + +msgid "Could not connect to FlashAir" +msgstr "Kan geen verbinding maken met FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Opmerking: FlashAir met firmware 2.00.02 of nieuwer en geactiveerde " +"uploadfunctie is vereist." + +msgid "Connection to MKS works correctly." +msgstr "Connection to MKS is working correctly." + +msgid "Could not connect to MKS" +msgstr "Kan geen verbinding maken met MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "Connection to OctoPrint is working correctly." + +msgid "Could not connect to OctoPrint" +msgstr "Kan geen verbinding maken met OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Note: OctoPrint version 1.1.0 or higher is required." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Connection to Prusa SL1 / SL1S is working correctly." + +msgid "Could not connect to Prusa SLA" +msgstr "Kan geen verbinding maken met Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "Connection to PrusaLink is working correctly." + +msgid "Could not connect to PrusaLink" +msgstr "Kan geen verbinding maken met PrusaLink" + +msgid "Storages found" +msgstr "" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" + +msgid "Connection to Prusa Connect works correctly." +msgstr "" + +msgid "Could not connect to Prusa Connect" +msgstr "" + +msgid "Connection to Repetier works correctly." +msgstr "Connection to Repetier is working correctly." + +msgid "Could not connect to Repetier" +msgstr "Kan geen verbinding maken met Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Note: Repetier version 0.90.0 or higher is required." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP-status: %1%\n" +"Bericht: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Parsing van hostrespons mislukt.\n" +"Inhoud bericht: \"%1%\"\n" +"Fout: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Opsomming van hostprinters mislukt.\n" +"Inhoud bericht: \"%1%\"\n" +"Fout: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a small layer height, and results in almost negligible layer lines " +"and high print quality. It is suitable for most general printing cases." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. This results in " +"much higher print quality but a much longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height. This results in almost negligible layer lines and " +"slightly longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height. This results in slightly visible layer lines but shorter print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height. This results in almost invisible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost invisible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height. This results in minimal layer lines and higher print quality but " +"longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in minimal layer lines and much higher print quality " +"but much longer print time." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a normal layer height, and results in average layer lines and print " +"quality. It is suitable for most printing cases." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but slightly shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in less apparent layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost negligible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and longer print time." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in much more apparent layer lines and much lower print " +"quality, but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and slightly higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"It has a very big layer height, and results in very apparent layer lines, " +"low print quality and shorter printing time." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height. This results in very apparent layer lines and much lower print " +"quality but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height. This results in extremely apparent layer lines and much lower " +"print quality but much shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height. This results in slightly less but still apparent layer " +"lines and slightly higher print quality, but longer print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height. This results in less but still apparent layer lines and slightly " +"higher print quality, but longer print time in some cases." + +msgid "Connected to Obico successfully!" +msgstr "" + +msgid "Could not connect to Obico" +msgstr "" + +msgid "Connected to SimplyPrint successfully!" +msgstr "" + +msgid "Could not connect to SimplyPrint" +msgstr "" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" + +msgid "Connection to Flashforge works correctly." +msgstr "" + +msgid "Could not connect to Flashforge" +msgstr "" + +msgid "The provided state is not correct." +msgstr "" + +msgid "Please give the required permissions when authorizing this application." +msgstr "" + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" + +msgid "User cancelled." +msgstr "" + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Snijgereedschap\n" +"Wist u dat u een model in elke hoek en positie kunt snijden met het " +"snijgereedschap?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Model repareren\n" +"Wist je dat je een beschadigd 3D-model kunt repareren om veel snijproblemen " +"op het Windows-systeem te voorkomen?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Timelapse\n" +"Wist je dat je bij elke afdruk een timelapse-video kunt genereren?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Automatisch rangschikken\n" +"Wist je dat je alle objecten in je project automatisch kunt rangschikken?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Automatische oriëntatie\n" +"Wist je dat je met een simpele klik objecten kunt roteren naar een optimale " +"oriëntatie voor afdrukken?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Op gekozen selectie leggen\n" +"Wist u dat u een model snel zo kunt oriënteren dat een van de gezichten op " +"het printbed ligt? Selecteer de functie \"Op selectie leggen\" of druk op de " +"F toets." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Objectenlijst\n" +"Wist u dat u alle objecten/onderdelen in een lijst kunt bekijken en de " +"instellingen voor ieder object/onderdeel kunt wijzigen?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Tabel met slicing parameters\n" +"Wist je dat je alle objecten/onderdelen op een tabel kunt bekijken en " +"instellingen voor ieder object/onderdeel kunt wijzigen?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Splitsen naar objecten/delen\n" +"Wist u dat u een groot object kunt splitsen in kleine delen, zodat u het " +"gemakkelijk kunt inkleuren of afdrukken?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Plaats van de Z-naad\n" +"Wist je dat je de plaats van de Z-naad kunt aanpassen, en zelfs op je afdruk " +"kunt schilderen, zodat hij minder zichtbaar is? Dit verbetert de algemene " +"look van je model. Kijk maar!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Nauwkeurige afstelling van flow rate\n" +"Wist u dat de flow rate nauwkeurig kan worden ingesteld voor nog mooiere " +"afdrukken? Afhankelijk van het materiaal kunt u de algehele afwerking van " +"het geprinte model verbeteren door wat fijnafstelling uit te voeren." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Uw afdrukken opsplitsen in platen\n" +"Wist u dat u een model met veel onderdelen kunt splitsen in afzonderlijke " +"platen die klaar zijn om te printen? Dit vereenvoudigt het proces van het " +"bijhouden van alle onderdelen." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Versnel uw afdrukken met Adaptieve Laag Hoogte\n" +"Wist u dat u een model nog sneller kunt afdrukken door de optie Adaptieve " +"Laag Hoogte te gebruiken? Bekijk het eens!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Ondersteuning schilderen\n" +"Wist je dat je de locatie van je ondersteuning kunt schilderen? Deze functie " +"maakt het eenvoudig om het ondersteuningsmateriaal alleen op de delen van " +"het model te plaatsen die het echt nodig hebben." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Verschillende soorten ondersteuningen\n" +"Wist je dat je kunt kiezen uit meerdere soorten ondersteuningen? Tree " +"Support werkt uitstekend voor organische modellen, bespaart filament en " +"verbetert de printsnelheid. Bekijk ze eens!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Silk Filament printen \n" +"Wist u dat Silk filament speciale aandacht nodig heeft om succesvol te " +"printen? Voor het beste resultaat wordt altijd een hogere temperatuur en een " +"lagere snelheid aanbevolen." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Brim voor betere hechting\n" +"Wist u dat wanneer gedrukte modellen een kleine contactinterface met het " +"printoppervlak hebben, het aanbevolen is om een brim te gebruiken?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Parameters instellen voor meerdere objecten\n" +"Wist u dat u slicing parameters kunt instellen voor alle geselecteerde " +"objecten tegelijk?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Objecten stapelen\n" +"Wist je dat je objecten als één geheel kunt stapelen?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Flush in support/voorwerpen/infill\n" +"Wist u dat u minder filament verspilt door het tijdens het verwisselen van " +"filament in support/objecten/infill te spoelen?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Stekte verbeteren\n" +"Wist je dat je meer wandlussen en een hogere dunne invuldichtheid kunt " +"gebruiken om de sterkte van het model te verbeteren?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Wanneer moet u printen met de printerdeur open?\n" +"Wist je dat het openen van de printerdeur de kans op verstopping van de " +"extruder/hotend kan verminderen bij het printen van filament met een lagere " +"temperatuur en een hogere omgevingstemperatuur? Er staat meer informatie " +"hierover in de Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Kromtrekken voorkomen\n" +"Wist je dat bij het printen van materialen die gevoelig zijn voor " +"kromtrekken, zoals ABS, een juiste verhoging van de temperatuur van het " +"warmtebed de kans op kromtrekken kan verkleinen?" + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Voer een geldige waarde in (K in 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Voer een geldige waarde in (K in 0~0,3, N in 0,6~2,0)" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "Printer local connection failed; please try again." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "De details van Flow Dynamics Calibration vindt u op onze wiki.\n" +#~ "\n" +#~ "Meestal is kalibratie niet nodig. Als je een print met één kleur/" +#~ "materiaal start en de optie \"kalibratie van de stroomdynamica\" is " +#~ "aangevinkt in het startmenu van de printer, dan zal de printer de oude " +#~ "manier volgen en het filament kalibreren voor het printen; als je een " +#~ "print met meerdere kleuren/materialen start, dan zal de printer de " +#~ "standaard compensatieparameter voor het filament gebruiken tijdens elke " +#~ "filamentwissel, wat in de meeste gevallen een goed resultaat zal " +#~ "opleveren.\n" +#~ "\n" +#~ "Let op: er zijn een paar gevallen waardoor het kalibratieresultaat niet " +#~ "betrouwbaar is: als je een textuurplaat gebruikt om de kalibratie uit te " +#~ "voeren; als de bouwplaat geen goede hechting heeft (was de bouwplaat of " +#~ "breng lijm aan!) ...Je kunt meer informatie vinden op onze wiki.\n" +#~ "\n" +#~ "De kalibratieresultaten hebben ongeveer 10 procent jitter in onze test, " +#~ "waardoor het resultaat niet bij elke kalibratie precies hetzelfde is. We " +#~ "onderzoeken nog steeds de oorzaak om verbeteringen aan te brengen met " +#~ "nieuwe updates." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Slechts één van de resultaten met dezelfde naam wordt opgeslagen. Weet je " +#~ "zeker dat je de andere resultaten wilt vervangen?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Er is al een eerder kalibratieresultaat met dezelfde naam: %s. Slechts " +#~ "één van de resultaten met dezelfde naam wordt opgeslagen. Weet je zeker " +#~ "dat je het vorige resultaat wilt vervangen?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Zoek de hoek met de perfecte extrusiegraad" + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "Export &Configs" +#~ msgstr "Export &Configs" + +#~ msgid "Infill direction" +#~ msgstr "Vulling (infill) richting" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Schakel dit in om een G-codebestand te krijgen met G2- en G3-bewegingen. " +#~ "De pastolerantie is gelijk aan de resolutie." + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "Hierdoor kan het opvulgebied (infill) iets worden vergroot om de wanden " +#~ "te overlappen voor een betere hechting. De procentuele waarde is relatief " +#~ "ten opzichte van de lijndikte van de opvulling." + +#~ msgid "Unload Filament" +#~ msgstr "Lossen" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Kies een AMS sleuf en druk op de \"Laden\" of \"Verwijderen\" knop om het " +#~ "filament automatisch te laden of te verwijderen." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "Moederbord" + +#~ msgid "TH" +#~ msgstr "th" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "active" +#~ msgstr "Actief" + +#~ msgid "Jump to layer" +#~ msgstr "Jump to layer" + +#~ msgid "Cabin humidity" +#~ msgstr "Vochtigheid in de cabine" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "Groen betekent dat de AMS-luchtvochtigheid normaal is, oranje betekent " +#~ "dat de luchtvochtigheid hoog is en rood betekent dat de luchtvochtigheid " +#~ "te hoog is. (Hygrometer: hoe lager, hoe beter.)" + +#~ msgid "Desiccant status" +#~ msgstr "Status van het droogmiddel" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "Een droogmiddelstatus lager dan twee streepjes geeft aan dat het " +#~ "droogmiddel mogelijk inactief is. Vervang het droogmiddel. (Hoe hoger, " +#~ "hoe beter.)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Opmerking: Als het deksel open is of de verpakking van het droogmiddel is " +#~ "vervangen, kan het enkele uren of een nacht duren voordat het vocht is " +#~ "opgenomen. Lage temperaturen vertragen ook het proces. Gedurende deze " +#~ "tijd geeft de indicator de vochtigheid mogelijk niet nauwkeurig weer." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Opmerking: als er tijdens het afdrukken nieuw filament wordt geplaatst, " +#~ "zal de AMS niet automatisch informatie lezen totdat het afdrukken is " +#~ "voltooid." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "Success! G-code geexporteerd naar %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Het initializeren is mislukt (geen apparaat)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Initialisatie is mislukt (geen camera-apparaat)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "De printer is bezig met downloaden. Wacht tot het downloaden is voltooid." + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Initialisatie mislukt (niet toegankelijk in alleen LAN-modus)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "Initialisatie is mislukt (LAN-IP van de printer ontbreekt)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Gestopt [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "Laden mislukt [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "No files [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Load failed [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Failed to fetch model infomation from printer." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Failed to parse model infomation" + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "U heeft enkele instellingen van voorinstelling \"%1%\" gewijzigd.\n" +#~ "Wilt u deze gewijzigde instellingen (nieuwe waarde) behouden na het " +#~ "wisselen van preset?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Je hebt een aantal vooraf ingestelde instellingen gewijzigd. \n" +#~ "Wilt u deze gewijzigde instellingen (nieuwe waarde) behouden na het " +#~ "wisselen van presets?" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Voeg dichte vulling toe in de buurt van hellende oppervlakken om de " +#~ "verticale schaaldikte te garanderen (boven+onder vaste lagen)." + +#~ msgid "Configuration package updated to " +#~ msgstr "Het configuratiebestand is bijgewerkt naar " + +#~ msgid "The Config can not be loaded." +#~ msgstr "De configuratie kan niet worden geladen." + +#~ msgid "Movement:" +#~ msgstr "Beweging:" + +#~ msgid "Movement" +#~ msgstr "Beweging" + +#~ msgid "Auto Segment" +#~ msgstr "Automatische segmenteren" + +#~ msgid "Depth ratio" +#~ msgstr "Diepteratio" + +#~ msgid "Prizm" +#~ msgstr "Prisma" + +#~ msgid "connector is out of cut contour" +#~ msgstr "Verbinding ligt buiten knipcontour" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "Verbindingen liggen buiten knipcontour" + +#~ msgid "connector is out of object" +#~ msgstr "Verbinding ligt buiten object" + +# Source and destination string both English, but different. Please clarify! +#~ msgid "connectors is out of object" +#~ msgstr "Connectors must be on object surface." + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Foutieve staat. \n" +#~ "Geen onderdelen geselecteerd om te behouden na knippen" + +#~ msgid "Edit Text" +#~ msgstr "Pas tekst aan" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Fout! Kan geen thread maken!" + +#~ msgid "Exception" +#~ msgstr "Uitzondering" + +#~ msgid "Choose SLA archive:" +#~ msgstr "Choose SLA archive:" + +#~ msgid "Import file" +#~ msgstr "Import file" + +#~ msgid "Import model and profile" +#~ msgstr "Import model and profile" + +#~ msgid "Import profile only" +#~ msgstr "Import profile only" + +#~ msgid "Import model only" +#~ msgstr "Import model only" + +#~ msgid "Accurate" +#~ msgstr "Accurate" + +#~ msgid "Balanced" +#~ msgstr "Balanced" + +#~ msgid "Quick" +#~ msgstr "Quick" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Dit beschrijft hoe lang de nozzle langs het laatste pad zal bewegen " +#~ "tijdens het terugtrekken (rectracting)." + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Vereenvoudig het model\n" +#~ "Wist u dat u het aantal driehoeken in een mesh kunt verminderen met de " +#~ "functie Simplify mesh? Klik met de rechtermuisknop op het model en " +#~ "selecteer Model vereenvoudigen. Lees meer in de documentatie." + +#~ msgid "Filling bed " +#~ msgstr "Filling bed" + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "%1% het gekozen vulling patroon ondersteund geen 100%% dichtheid." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "Overschakelen naar rechtlijnig patroon?\n" +#~ "Ja - Automatisch overschakelen naar rechtlijnig patroon\n" +#~ "Nee - Zet de dichtheid automatisch terug naar de standaard niet 100% " +#~ "waarde" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "" +#~ "Verwarm de nozzle tot meer dan 170 graden voordat je het filament laadt." + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "" +#~ "Dit is de dichtheid van de interne vulling. 100%% betekent dat het object " +#~ "geheel solide zal zijn." + +#~ msgid "Tree support wall loops" +#~ msgstr "Tree support wand lussen" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "" +#~ "Deze instelling specificeert het aantal wanden rond de tree support." + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " doesn't work at 100%% density " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Hulpmiddel op zijde plaatsen" + +#~ msgid "Export as STL" +#~ msgstr "Exporteer als STL-bestand" + +#~ msgid "Check cloud service status" +#~ msgstr "Check cloud service status" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Voer een geldige waarde in (K in 0 ~ 0,5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "Voer een geldige waarde in (K in 0 ~ 0,5, N in 0,6 ~ 2,0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Exporteer alle objecten als STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "" +#~ "Het 3mf bestand is niet compatibel, enkel de geometrische data wordt " +#~ "geladen!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Onbruikbaar 3mf bestand" + +#~ msgid "Add/Remove printers" +#~ msgstr "Printers toevoegen/verwijderen" + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s is not supported by the AMS." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Herinner me niet meer aan deze versie." + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Fout: IP-adres of toegangscode zijn niet correct" + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Volgorde binnenwand/buitenwand/opvulling (infill)" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "" +#~ "Dit is de afdrukvolgorde van binnenwanden, buitenwanden en vulling " +#~ "(infill)." + +#~ msgid "inner/outer/infill" +#~ msgstr "binnenste/buitenste/vulling (infill)" + +#~ msgid "outer/inner/infill" +#~ msgstr "buitenste/binnenste/vulling (infill)" + +#~ msgid "infill/inner/outer" +#~ msgstr "Vulling (infill)/binnenste/buitenste" + +#~ msgid "infill/outer/inner" +#~ msgstr "Vulling (infill)/buitenste/binnenste" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "binnen-buiten-binnen/infill" + +#~ msgid "Export 3MF" +#~ msgstr "Exporteer 3mf" + +#~ msgid "Export project as 3MF." +#~ msgstr "Dit exporteert het project als 3MF." + +#~ msgid "Export slicing data" +#~ msgstr "Exporteer slicinggegevens" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Exporteer slicinggegevens naar een map" + +#~ msgid "Load slicing data" +#~ msgstr "Laad slicinggegevens" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Laad slicinggegevens in de cache uit de directory" + +#~ msgid "Slice" +#~ msgstr "Slice" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "" +#~ "Slice de printbedden: 0-alle printbedden, i-printbed i, andere-onjuist" + +#~ msgid "Show command help." +#~ msgstr "Dit toont de command hulp." + +#~ msgid "UpToDate" +#~ msgstr "UpToDate" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "Update de configuratiewaarden van 3mf naar de nieuwste versie." + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "max triangle count per plate for slicing" + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "max slicing time per plate in seconds" + +#~ msgid "Normative check" +#~ msgstr "Normative check" + +#~ msgid "Check the normative items." +#~ msgstr "Check the normative items." + +#~ msgid "Output Model Info" +#~ msgstr "Model informatie weergeven" + +#~ msgid "Output the model's information." +#~ msgstr "Dit geeft de informatie van het model weer." + +#~ msgid "Export Settings" +#~ msgstr "Exporteer instellingen" + +#~ msgid "Export settings to a file." +#~ msgstr "Exporteer instellingen naar een bestand" + +#~ msgid "Send progress to pipe" +#~ msgstr "Stuur voortgang naar pipe" + +#~ msgid "Send progress to pipe." +#~ msgstr "Stuur voortgang naar pipe" + +#~ msgid "Arrange Options" +#~ msgstr "Rangschik opties" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Rangschik opties: 0-uitzetten, 1-aanzetten, anders-automatisch" + +#~ msgid "Convert Unit" +#~ msgstr "Eenheid converteren" + +#~ msgid "Convert the units of model" +#~ msgstr "Converteer de eenheden van het model" + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Schaal het model met een float-factor" + +#~ msgid "Load General Settings" +#~ msgstr "Standaard instellingen laden" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "Proces/machine instellingen laden vanuit een gekozen bestand" + +#~ msgid "Load Filament Settings" +#~ msgstr "Filament instellingen laden" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "Filament instellingen laden vanuit een bestandslijst" + +#~ msgid "Skip Objects" +#~ msgstr "Skip Objects" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Skip some objects in this print" + +#~ msgid "Output directory" +#~ msgstr "Uitvoermap" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Dit is de map waarin de geëxporteerde bestanden worden opgeslagen" + +#~ msgid "Debug level" +#~ msgstr "Debuggen level" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Sets debug logging level. 0:fataal, 1:error, 2:waarschuwing, 3:info, 4:" +#~ "debug, 5:trace\n" + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "3D-scènebewerkingen\n" +#~ "Weet u hoe u de weergave en selectie van objecten/onderdelen met de muis " +#~ "en het aanraakscherm in de 3D-scène kunt bedienen?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Model repareren\n" +#~ "Wist u dat u een beschadigd 3D-model kunt repareren om veel snijproblemen " +#~ "te voorkomen?" + +# Source and destination string both English but don't match! +#~ msgid "Embeded" +#~ msgstr "Embedded" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "Snapmaker Orca configuratiebestand is mogelijks corrupt, en kan niet verwerkt " +#~ "worden.Verwijder het configuratiebestand en probeer het opnieuw." + +#~ msgid "Online Models" +#~ msgstr "Online Models" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "Show online staff-picked models on the home page" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "De minimale printsnelheid indien er afgeremd wordt om af te koelen" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "De bedtemperatuur overschrijdt de vitrificatietemperatuur van het " +#~ "filament. Open de voorkdeur van de printer voor het printen om " +#~ "verstopping van de nozzles te voorkomen." + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Temperatuur van verglazing" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "Op deze temperatuur zal het materiaal zacht worden. Daarom kan de " +#~ "temperatuur van het printbed niet hoger dan deze waarde." + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "" +#~ "Schakel deze optie in als de machine een ventilator voor de enclosure " +#~ "heeft" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "Snelheid van de auxiliary part ventilator. De auxiliary ventilator draait " +#~ "op deze snelheid tijdens het afdrukken, behalve de eerste paar lagen, die " +#~ "worden gedefinieerd door geen koellagen" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "" +#~ "Lege lagen in de buurt van de bodem worden vervangen door de " +#~ "dichtsbijzijnde normale lagen." + +#~ msgid "The model has too many empty layers." +#~ msgstr "Het model heeft te veel lege lagen." + +#~ msgid "Cali" +#~ msgstr "Cali" + +#~ msgid "Calibration of extrusion" +#~ msgstr "Kalibratie van de extrusie" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Push new filament into the extruder" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "De printbed temperatuur voor de overige lagen is %d graden celcius lager " +#~ "dan de temperatuur voor de eerste laag.\n" +#~ "Hierdoor kan de print loskomen van het printbed gedurende de printtaak" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "De bedtemperatuur is hoger dan de vitrificatietemperatuur van dit " +#~ "filament.\n" +#~ "Dit kan leiden tot verstopping van de nozzle en tot print fouten.\n" +#~ "Houd de printer open tijdens het printproces om te zorgen voor " +#~ "luchtcirculatie, of om de temperatuur van het warmwaterbed te verlagen." + +#~ msgid "Total Time Estimation" +#~ msgstr "Total Time Estimation" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Identificatie van de resonantiefrequentie" + +#~ msgid "Immediately score" +#~ msgstr "Immediately score" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "Please give a score for your favorite Bambu Market model." + +#~ msgid "Score" +#~ msgstr "Score" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Bambu High Temperature (hoge temperatuur) Plate" + +#~ msgid "Can't connect to the printer" +#~ msgstr "Kan geen verbinding maken met de printer" + +#~ msgid "Recommended temperature range" +#~ msgstr "Geadviseerde temperatuurbereik" + +#~ msgid "High Temp Plate" +#~ msgstr "High Temp Plate (hoge temperatuur printbed)" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "Dit is de bedtemperatuur wanneer de hogetemperatuurplaat is " +#~ "geïnstalleerd. Een waarde van 0 betekent dat het filament printen op de " +#~ "High Temp Plate niet ondersteunt." + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Dikte interne brugondersteuning" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Stijl en vorm van de ondersteuning. Voor normale ondersteuning zal grit " +#~ "stabielere steunen creëren (standaard), terwijl snug materiaal bespaart " +#~ "en littekens op het object zal verminderen.\n" +#~ "Voor tree ondersteuning zal de slanke stijl takken agressiever " +#~ "samenvoegen en veel materiaal besparen (standaard), terwijl de hybride " +#~ "stijl een soortgelijke structuur creëert als de normale ondersteuning " +#~ "onder grote platte overhangen." + +#~ msgid "Bed temperature difference" +#~ msgstr "Printbed temperatuurverschil" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "Het wordt niet aanbevolen om de bedtemperatuur van andere lagen meer dan " +#~ "deze drempelwaarde te verlagen dan de eerste laag. Een te lage " +#~ "bedtemperatuur van een andere laag kan ertoe leiden dat het model loskomt " +#~ "van de bouwplaat." + +#~ msgid "Orient the model" +#~ msgstr "Oriënteer het model" diff --git a/localization/i18n/pl/Snapmaker_Orca_pl.po b/localization/i18n/pl/Snapmaker_Orca_pl.po new file mode 100644 index 0000000000..213c80b0cc --- /dev/null +++ b/localization/i18n/pl/Snapmaker_Orca_pl.po @@ -0,0 +1,19499 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca 2.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: Krzysztof Morga \n" +"Language-Team: \n" +"Language: pl_PL\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 " +"|| n%100>14) ? 1 : 2);\n" +"X-Generator: Poedit 3.5\n" + +msgid "Supports Painting" +msgstr "Malowanie podpór" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Kółko myszy" + +msgid "Section view" +msgstr "Widok przekroju" + +msgid "Reset direction" +msgstr "Resetuj kierunek" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Kółko myszy" + +msgid "Pen size" +msgstr "Rozmiar pióra" + +msgid "Left mouse button" +msgstr "Lewy przycisk myszy" + +msgid "Enforce supports" +msgstr "Wymuś podpory" + +msgid "Right mouse button" +msgstr "Prawy przycisk myszy" + +msgid "Block supports" +msgstr "Zablokuj podpory" + +msgid "Shift + Left mouse button" +msgstr "Shift + Lewy przycisk myszy" + +msgid "Erase" +msgstr "Wymaż" + +msgid "Erase all painting" +msgstr "Wymaż wszystko" + +msgid "Highlight overhang areas" +msgstr "Podświetl miejsca nawisu" + +msgid "Gap fill" +msgstr "Wypełnianie szczelin" + +msgid "Perform" +msgstr "Wykonaj" + +msgid "Gap area" +msgstr "Obszar szczeliny" + +msgid "Tool type" +msgstr "Typ narzędzia" + +msgid "Smart fill angle" +msgstr "Kąt inteligentnego wypełniania" + +msgid "On overhangs only" +msgstr "Tylko na nawisach" + +msgid "Auto support threshold angle: " +msgstr "Automatyczny kąt progowy podpory: " + +msgid "Circle" +msgstr "Koło" + +msgid "Sphere" +msgstr "Sfera" + +msgid "Fill" +msgstr "Wypełnienie" + +msgid "Gap Fill" +msgstr "Wypełnienie szczelin" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Pozwala malować tylko na wybranych powierzchniach za pomocą: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Podświetl ściany zgodnie z kątem nawisu." + +msgid "No auto support" +msgstr "Brak automatycznej podpory" + +msgid "Support Generated" +msgstr "Wygenerowana podpora" + +msgid "Gizmo-Place on Face" +msgstr "Uchwyt-Połóż na Płaszczyźnie" + +msgid "Lay on face" +msgstr "Połóż na powierzchni" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Liczba filamentów przekracza maksymalną ilość obsługiwaną przez narzędzie " +"malowania. Tylko pierwsze %1% filamenty będą dostępne w tym narzędziu." + +msgid "Color Painting" +msgstr "Malowanie kolorem" + +msgid "Pen shape" +msgstr "Kształt pióra" + +msgid "Paint" +msgstr "Maluj" + +msgid "Key 1~9" +msgstr "Klawisz 1~9" + +msgid "Choose filament" +msgstr "Wybierz filament" + +msgid "Edge detection" +msgstr "Wykrywanie krawędzi" + +msgid "Triangles" +msgstr "Trójkąty" + +msgid "Filaments" +msgstr "Filamenty" + +msgid "Brush" +msgstr "Pędzel" + +msgid "Smart fill" +msgstr "Inteligentne wypełnianie" + +msgid "Bucket fill" +msgstr "Wypełnienie kubełkowe" + +msgid "Height range" +msgstr "Zakres wysokości" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "Przełącz rysunek techniczny" + +msgid "Shortcut Key " +msgstr "Skrót klawiszowy " + +msgid "Triangle" +msgstr "Trójkąt" + +msgid "Height Range" +msgstr "Przedział" + +# +++++++++++++++++++++ +msgid "Vertical" +msgstr "Pionowa linia" + +msgid "Horizontal" +msgstr "Pozioma linia" + +msgid "Remove painted color" +msgstr "Usuń pomalowany kolor" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Pomalowane za pomocą: Filament %1%" + +msgid "Move" +msgstr "Przesuń" + +msgid "Gizmo-Move" +msgstr "Uchwyt-Przesuń" + +msgid "Rotate" +msgstr "Obróć" + +msgid "Gizmo-Rotate" +msgstr "Uchwyt-Obróć" + +msgid "Optimize orientation" +msgstr "Optymalizuj orientację" + +msgid "Apply" +msgstr "Zastosuj" + +msgid "Scale" +msgstr "Skaluj" + +msgid "Gizmo-Scale" +msgstr "Uchwyt-Skaluj" + +msgid "Error: Please close all toolbar menus first" +msgstr "Błąd: Proszę najpierw zamknąć wszystkie paski narzędziowe" + +msgid "in" +msgstr "cal" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Pozycja" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Obrót" + +msgid "Scale ratios" +msgstr "Współczynniki skali" + +msgid "Object Operations" +msgstr "Operacje na obiekcie" + +msgid "Volume Operations" +msgstr "Operacje na objętości" + +msgid "Translate" +msgstr "Konwersja" + +msgid "Group Operations" +msgstr "Operacje grupowe" + +msgid "Set Position" +msgstr "Ustaw pozycję" + +msgid "Set Orientation" +msgstr "Ustaw orientację" + +msgid "Set Scale" +msgstr "Ustaw skalę" + +msgid "Reset Position" +msgstr "Zresetuj pozycję" + +msgid "Reset Rotation" +msgstr "Zresetuj obrót" + +msgid "World coordinates" +msgstr "Współrzędne" + +msgid "Object coordinates" +msgstr "Koordynaty obiektu" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Rozmiar" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "równomierne skalowanie" + +msgid "Planar" +msgstr "Plaski" + +msgid "Dovetail" +msgstr "Jaskółczy ogon" + +msgid "Auto" +msgstr "Auto" + +msgid "Manual" +msgstr "Ręczne" + +msgid "Plug" +msgstr "Wtyczka" + +msgid "Dowel" +msgstr "Dolny klin" + +msgid "Snap" +msgstr "Zatrzask" + +msgid "Prism" +msgstr "Pryzmat" + +msgid "Frustum" +msgstr "Walec przycięty" + +msgid "Square" +msgstr "Kwadrat" + +msgid "Hexagon" +msgstr "Sześciokąt" + +msgid "Keep orientation" +msgstr "Zachowaj orientację" + +msgid "Place on cut" +msgstr "Pozostaw w miejscu cięcia" + +msgid "Flip upside down" +msgstr "Obróć do góry nogami" + +msgid "Connectors" +msgstr "Łączniki" + +msgid "Type" +msgstr "Typ" + +msgid "Style" +msgstr "Styl" + +msgid "Shape" +msgstr "Kształt" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Głębokość" + +msgid "Groove" +msgstr "Rowek" + +msgid "Width" +msgstr "Szerokość" + +msgid "Flap Angle" +msgstr "Kąt klapy" + +msgid "Groove Angle" +msgstr "Kąt rowka" + +msgid "Part" +msgstr "Wydruk" + +msgid "Object" +msgstr "Obiekt" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Kliknij, aby obrócić płaszczyznę cięcia.\n" +"Przeciągnij, aby przesunąć płaszczyznę cięcia." + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Kliknij, aby obrócić płaszczyznę przekroju.\n" +"Przeciągnij, aby przesunąć płaszczyznę przekroju.\n" +"Kliknij prawym przyciskiem myszy na część modelu, aby przypisać ją do " +"drugiej strony" + +msgid "Move cut plane" +msgstr "Przesuń przekrój" + +msgid "Mode" +msgstr "Tryb" + +msgid "Change cut mode" +msgstr "Zmień tryb cięcia" + +msgid "Tolerance" +msgstr "Tolerancja" + +msgid "Drag" +msgstr "Przeciągnij" + +msgid "Draw cut line" +msgstr "Narysuj linię cięcia" + +msgid "Left click" +msgstr "Lewy przycisk myszy" + +msgid "Add connector" +msgstr "Dodaj łącznik" + +msgid "Right click" +msgstr "Prawy przycisk myszy" + +msgid "Remove connector" +msgstr "Usuń łącznik" + +msgid "Move connector" +msgstr "Przesuń łącznik" + +msgid "Add connector to selection" +msgstr "Dodaj łącznik do zaznaczenia" + +msgid "Remove connector from selection" +msgstr "Usuń łącznik z zaznaczenia" + +msgid "Select all connectors" +msgstr "Zaznacz wszystkie łączniki" + +msgid "Cut" +msgstr "Przeciąć" + +msgid "Rotate cut plane" +msgstr "Obróć przekrój" + +msgid "Remove connectors" +msgstr "Usuń łączniki" + +msgid "Bulge" +msgstr "Wypukłość" + +msgid "Bulge proportion related to radius" +msgstr "Proporcja wypukłości do promienia" + +msgid "Space" +msgstr "Przestrzeń" + +msgid "Space proportion related to radius" +msgstr "Proporcja przestrzeni do promienia" + +msgid "Confirm connectors" +msgstr "Potwierdź łączniki" + +msgid "Cancel" +msgstr "Anuluj" + +msgid "Build Volume" +msgstr "Wymiary robocze" + +msgid "Flip cut plane" +msgstr "Obróć przekrój" + +msgid "Groove change" +msgstr "Zmień rowek" + +msgid "Reset" +msgstr "Resetuj" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Edytowane" + +msgid "Cut position" +msgstr "Miejsce przcięcia" + +msgid "Reset cutting plane" +msgstr "Resetuj przekrój" + +msgid "Edit connectors" +msgstr "Edytuj złączki" + +msgid "Add connectors" +msgstr "Dodaj łączniki" + +msgid "Reset cut" +msgstr "Resetuj" + +msgid "Reset cutting plane and remove connectors" +msgstr "Resetuj płaszczyznę przecinania i usuń łączniki" + +msgid "Upper part" +msgstr "Górna część" + +msgid "Lower part" +msgstr "Dolna część" + +msgid "Keep" +msgstr "Zachowaj" + +msgid "Flip" +msgstr "Obróć" + +msgid "After cut" +msgstr "Po przecięciu" + +msgid "Cut to parts" +msgstr "Podziel na części" + +msgid "Perform cut" +msgstr "Wykonaj cięcie" + +msgid "Warning" +msgstr "Ostrzeżenie" + +msgid "Invalid connectors detected" +msgstr "Wykryto nieprawidłowe łączniki" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "%1$d łącznik jest poza konturem cięcia" +msgstr[1] "%1$d łączniki są poza konturem cięcia" +msgstr[2] "%1$d złączek jest poza konturem cięcia" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "%1$d łącznik jest poza obiektem" +msgstr[1] "%1$d łączniki są poza obiektem" +msgstr[2] "%1$d łączników jest poza obiektem" + +msgid "Some connectors are overlapped" +msgstr "Niektóre łączniki nakładają się" + +msgid "Select at least one object to keep after cutting." +msgstr "Wybierz co najmniej jeden obiekt do zachowania po przecięciu." + +msgid "Cut plane is placed out of object" +msgstr "Płaszczyzna cięcia znajduje się poza obiektem" + +msgid "Cut plane with groove is invalid" +msgstr "Płaszczyzna cięcia z rowkiem jest nieprawidłowa" + +msgid "Connector" +msgstr "Łącznik" + +msgid "Cut by Plane" +msgstr "Cięcie płaszczyzną" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"niezamknięte krawędzie mogą być spowodowane narzędziem do przecinania, czy " +"chcesz to teraz naprawić?" + +msgid "Repairing model object" +msgstr "Naprawianie obiektu modelu" + +msgid "Cut by line" +msgstr "Cięcie linią" + +msgid "Delete connector" +msgstr "Usuń łącznik" + +msgid "Mesh name" +msgstr "Nazwa siatki" + +msgid "Detail level" +msgstr "Poziom szczegółowości" + +msgid "Decimate ratio" +msgstr "Współczynnik dziesiątkowania" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Przetwarzanie modelu '%1%' z więcej niż 1 mln trójkątów może być wolne. " +"Zaleca się zastosowanie uproszczenia modelu." + +msgid "Simplify model" +msgstr "Uprość model" + +msgid "Simplify" +msgstr "Uprość" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"Obecnie upraszczanie jest dozwolone tylko przy wybranej pojedynczej części" + +msgid "Error" +msgstr "Błąd" + +msgid "Extra high" +msgstr "Bardzo wysoki" + +msgid "High" +msgstr "Wysoka" + +msgid "Medium" +msgstr "Średnia" + +msgid "Low" +msgstr "Niska" + +msgid "Extra low" +msgstr "Bardzo niski" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d trójkątów" + +msgid "Show wireframe" +msgstr "Pokaż siatkę" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "Nie można zastosować w czasie podglądu procesu." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Operacja jest już anulowana. Proszę poczekać kilka sekund." + +msgid "Face recognition" +msgstr "Rozpoznawanie twarzy" + +msgid "Perform Recognition" +msgstr "Wykonaj rozpoznawanie" + +msgid "Brush size" +msgstr "Rozmiar pędzla" + +msgid "Brush shape" +msgstr "Kształt pędzla" + +msgid "Enforce seam" +msgstr "Wymuś szew" + +msgid "Block seam" +msgstr "Zablokuj szew" + +msgid "Seam painting" +msgstr "Malowanie szwu" + +msgid "Remove selection" +msgstr "Usuń zaznaczenie" + +msgid "Entering Seam painting" +msgstr "Rozpoczęcie malowania miejsca szwu" + +msgid "Leaving Seam painting" +msgstr "Zakończenie malowania miejsca szwu" + +msgid "Paint-on seam editing" +msgstr "Edycja malowania szwu" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Czcionka" + +msgid "Thickness" +msgstr "Grubość" + +msgid "Text Gap" +msgstr "Odstęp między literami" + +msgid "Angle" +msgstr "Kąt" + +msgid "" +"Embeded\n" +"depth" +msgstr "" +"Wbudowana\n" +"głębokość" + +msgid "Input text" +msgstr "Wprowadź tekst" + +msgid "Surface" +msgstr "Powierzchnia" + +msgid "Horizontal text" +msgstr "Tekst poziomy" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Przesuń myszką w górę lub w dół" + +msgid "Rotate text" +msgstr "Obróć tekst" + +msgid "Text shape" +msgstr "Kształt tekstu" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Obróć tekst" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Przesuń tekst" + +msgid "Set Mirror" +msgstr "Ustaw Lustrzane odbicie" + +msgid "Embossed text" +msgstr "Wytłoczony tekst" + +msgid "Enter emboss gizmo" +msgstr "Wprowadź uchwyt wytłaczania" + +msgid "Leave emboss gizmo" +msgstr "Zamknij uchwyt wytłaczania" + +msgid "Embossing actions" +msgstr "Akcje wytłaczania" + +msgid "Emboss" +msgstr "Tekst" + +msgid "NORMAL" +msgstr "NORMAL" + +msgid "SMALL" +msgstr "SMALL" + +msgid "ITALIC" +msgstr "ITALIC" + +msgid "SWISS" +msgstr "SWISS" + +msgid "MODERN" +msgstr "MODERN" + +msgid "First font" +msgstr "Pierwsza czcionka" + +msgid "Default font" +msgstr "Domyślna czcionka" + +msgid "Advanced" +msgstr "Zaawansowane" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"Nie można napisać tekstu przy użyciu wybranej czcionki. Spróbuj wybrać inną " +"czcionkę." + +msgid "Embossed text cannot contain only white spaces." +msgstr "Pole do wprowadzania tekstu nie może być puste." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" +"Tekst zawiera znak znaków (reprezentowany przez '?') nieznany dla czcionki." + +msgid "Text input doesn't show font skew." +msgstr "Wprowadzanie tekstu nie pokazuje nachylenia czcionki." + +msgid "Text input doesn't show font boldness." +msgstr "Wprowadzanie tekstu nie pokazuje pogrubienia czcionki." + +msgid "Text input doesn't show gap between lines." +msgstr "Wprowadzanie tekstu nie pokazuje odstępu między wierszami." + +msgid "Too tall, diminished font height inside text input." +msgstr "" +"Zmniejsz rozmiar czcionki, tekst jest za duży wewnątrz pola tekstowego." + +msgid "Too small, enlarged font height inside text input." +msgstr "" +"Powiększ rozmiar czcionki, tekst jest za mały wewnątrz pola tekstowego." + +msgid "Text doesn't show current horizontal alignment." +msgstr "Tekst nie pokazuje aktualnego wyrównania poziomego." + +msgid "Revert font changes." +msgstr "Przywróć zmiany czcionki." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "Nie można wybrać czcionki \"%1%\"." + +msgid "Operation" +msgstr "Operacja" + +msgid "Join" +msgstr "Połącz" + +msgid "Click to change text into object part." +msgstr "Kliknij, aby zmienic tekst w czesc obiektu." + +msgid "You can't change a type of the last solid part of the object." +msgstr "Nie możesz zmienić typu ostatniej zwartej części modelu." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Cięcie" + +msgid "Click to change part type into negative volume." +msgstr "Kliknij, aby zmienić napis tak, aby utworzyl wgłębienie w modelu." + +msgid "Modifier" +msgstr "Modyfikator" + +msgid "Click to change part type into modifier." +msgstr "Kliknij, aby zmienic typ tekstu na modyfikator." + +msgid "Change Text Type" +msgstr "Zmień typ tekstu" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Zmien nazwe stylu (%1%) dla wytłaczanego tekstu" + +msgid "Name can't be empty." +msgstr "Nazwa nie może być pusta." + +msgid "Name has to be unique." +msgstr "Nazwa musi być unikalna." + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "Zmien nazwe stylu" + +msgid "Rename current style." +msgstr "Zmien nazwe biezacego stylu." + +msgid "Can't rename temporary style." +msgstr "Nie mozna zmienic nazwy tymczasowego stylu." + +msgid "First Add style to list." +msgstr "Najpierw dodaj styl do listy." + +#, boost-format +msgid "Save %1% style" +msgstr "Zapisz styl %1%" + +msgid "No changes to save." +msgstr "Brak zmian do zapisania." + +msgid "New name of style" +msgstr "Nowa nazwa stylu" + +msgid "Save as new style" +msgstr "Zapisz jako nowy styl" + +msgid "Only valid font can be added to style." +msgstr "Do stylu można dodac tylko prawidłową czcionkę." + +msgid "Add style to my list." +msgstr "Dodaj styl do mojej listy." + +msgid "Save as new style." +msgstr "Zapisz jako nowy styl." + +msgid "Remove style" +msgstr "Usun styl" + +msgid "Can't remove the last existing style." +msgstr "Nie mozna usunac ostatniego istniejącego stylu." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "Czy na pewno chcesz trwale usunac styl \"%1%\"?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "Usun styl \"%1%\"." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "Nie mozna usunac \"%1%\". To ostatni styl." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "Nie mozna usunac tymczasowego stylu \"%1%\"." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Zmodyfikowany styl \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "Biezacy styl to \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"Zmiana stylu na \"%1%\" spowoduje utratę bieżącej modyfikacji stylu.\n" +"\n" +"Czy mimo to chcesz kontynuować?" + +msgid "Not valid style." +msgstr "Nieprawidłowy styl." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "Styl \"%1%\" nie może być używany i zostanie usunięty z listy." + +msgid "Unset italic" +msgstr "Wylacz kursywe" + +msgid "Set italic" +msgstr "Wlacz kursywe" + +msgid "Unset bold" +msgstr "Wylacz pogrubienie" + +msgid "Set bold" +msgstr "Wlacz pogrubienie" + +msgid "Revert text size." +msgstr "Przywróć rozmiar tekstu." + +msgid "Revert embossed depth." +msgstr "Przywróć głębokość wytłaczania." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"Zaawansowane opcje nie mogą być zmieniane dla wybranej czcionki.\n" +"Wybierz inną czcionkę." + +msgid "Revert using of model surface." +msgstr "Przywróć używanie powierzchni modelu." + +msgid "Revert Transformation per glyph." +msgstr "Przywróć przekształcenie na znak." + +msgid "Set global orientation for whole text." +msgstr "Ustaw globalną orientację dla całego tekstu." + +msgid "Set position and orientation per glyph." +msgstr "Ustaw pozycje i orientacje dla kazdego znaku." + +msgctxt "Alignment" +msgid "Left" +msgstr "Do lewej" + +msgctxt "Alignment" +msgid "Center" +msgstr "Do środka" + +msgctxt "Alignment" +msgid "Right" +msgstr "Do prawej" + +msgctxt "Alignment" +msgid "Top" +msgstr "Do góry" + +msgctxt "Alignment" +msgid "Middle" +msgstr "Do środka" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Na dole" + +msgid "Revert alignment." +msgstr "Przywróć wyrównanie." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "punkty" + +msgid "Revert gap between characters" +msgstr "Przywróć odstęp między znakami" + +msgid "Distance between characters" +msgstr "Odległość między znakami" + +msgid "Revert gap between lines" +msgstr "Przywróć odstęp między wierszami" + +msgid "Distance between lines" +msgstr "Odległość między wierszami" + +msgid "Undo boldness" +msgstr "Cofnij pogrubienie" + +msgid "Tiny / Wide glyphs" +msgstr "Wąskie / Szerokie glify" + +msgid "Undo letter's skew" +msgstr "Cofnij pochylenie liter" + +msgid "Italic strength ratio" +msgstr "Stosunek siły kursywy" + +msgid "Undo translation" +msgstr "Cofnij przesunięcie" + +msgid "Distance of the center of the text to the model surface." +msgstr "Odległość środka tekstu od powierzchni modelu." + +msgid "Undo rotation" +msgstr "Cofnij obrót" + +msgid "Rotate text Clock-wise." +msgstr "Obróć tekst zgodnie z ruchem wskazówek zegara." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"Odblokuj obrót tekstu podczas przemieszczania go po powierzchni obiektu." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" +"Zablokuj obrót tekstu podczas przemieszczania go po powierzchni obiektu." + +msgid "Select from True Type Collection." +msgstr "Wybierz z kolekcji True Type." + +msgid "Set text to face camera" +msgstr "Skieruj tekst w moją stronę" + +msgid "Orient the text towards the camera." +msgstr "Orientuj tekst w moim kierunku." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"Nie można załadować dokładnie tej samej czcionki (\"%1%\"). Aplikacja " +"wybrała podobną (\"%2%\"). Musisz określić czcionkę, aby umożliwić edycję " +"tekstu." + +msgid "No symbol" +msgstr "Brak symbolu" + +msgid "Loading" +msgstr "Ładowanie" + +msgid "In queue" +msgstr "W kolejce" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Rozmiar" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Użyj powierzchni" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "Na znak (glif)" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Wyrównanie" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Odstęp między znakami" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Odstęp między wierszami" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Pogrubienie" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Stosunek nachylenia" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Od powierzchni" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "W góre" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Kolekcja" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "Obróć SVG" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "Przesuń SVG" + +msgid "Enter SVG gizmo" +msgstr "Otwórz uchwyt SVG" + +msgid "Leave SVG gizmo" +msgstr "Zamknij uchwyt SVG" + +msgid "SVG actions" +msgstr "Działania SVG" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Nieprzezroczystość (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Gradient koloru (%1%)" + +msgid "Undefined fill type" +msgstr "Nie zdefiniowano rodzaju wypełnienia" + +msgid "Linear gradient" +msgstr "Gradient liniowy" + +msgid "Radial gradient" +msgstr "Gradient promieniowy" + +msgid "Open filled path" +msgstr "Otwórz wypełnioną ścieżkę" + +msgid "Undefined stroke type" +msgstr "Nie zdefiniowano rodzaju obrysu" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "Ścieżki nie można uleczyć z samoprzecięć i wielu punktów." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"Ostateczny kształt zawiera samoprzecięcia lub wielokrotne punkty o tej samej " +"współrzędnej." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "Kształt jest oznaczony jako niewidoczny (%1%)." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "Wypełnienie kształtu (%1%) zawiera nieobsługiwane: %2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "Obrys kształtu (%1%) jest zbyt cienki (minimalna szerokość to %2% mm)." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "Obrys kształtu (%1%) zawiera nieobsługiwane: %2%." + +msgid "Face the camera" +msgstr "Skieruj w moim kierunku" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Nieznana nazwa pliku" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "Ścieżka do pliku SVG to \"%1%\"" + +msgid "Reload SVG file from disk." +msgstr "Przeładuj plik SVG z dysku." + +msgid "Change file" +msgstr "Zmień plik" + +msgid "Change to another .svg file" +msgstr "Zmień na inny plik .svg" + +msgid "Forget the file path" +msgstr "Zapomnij o ścieżce pliku" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"Nie zapisuj lokalnej ścieżki do pliku 3MF.\n" +"Uniemożliwia również opcję 'przeładuj z dysku'." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Wypiecz" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Traktuj jako nieedytowalną część modelu" + +msgid "Save as" +msgstr "Zapisz jako" + +msgid "Save SVG file" +msgstr "Zapisz plik SVG" + +msgid "Save as '.svg' file" +msgstr "Zapisz jako plik '.svg'" + +msgid "Size in emboss direction." +msgstr "Rozmiar w kierunku wytłaczania." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "Skala zmienia również ilość próbek krzywej (%1%)" + +msgid "Width of SVG." +msgstr "Szerokość SVG." + +msgid "Height of SVG." +msgstr "Wysokość pliku SVG." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "Zablokuj/Odblokuj proporcje obrazu SVG." + +msgid "Reset scale" +msgstr "Zresetuj skalę" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "Odległość środka SVG od powierzchni modelu." + +msgid "Reset distance" +msgstr "Zresetuj odległość" + +msgid "Reset rotation" +msgstr "Zresetuj obrót" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "Zablokuj/Odblokuj kąt obrotu podczas przeciągania powyżej powierzchni." + +msgid "Mirror vertically" +msgstr "Odbij pionowo" + +msgid "Mirror horizontally" +msgstr "Odbij poziomo" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "Zmień typ SVG" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Lustrzane odbicie" + +msgid "Choose SVG file for emboss:" +msgstr "Wybierz plik SVG do wytłaczania:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "Plik nie istnieje (%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "Nazwa pliku musi kończyć się na \".svg\", ale wybrałeś %1%" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "Analizator Nano SVG nie może załadować z pliku (%1%)." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "Plik SVG nie zawiera jednej ścieżki do wytłaczania (%1%)." + +msgid "Vertex" +msgstr "Wierzchołek" + +msgid "Edge" +msgstr "Krawędź" + +msgid "Plane" +msgstr "Płaszczyzna" + +msgid "Point on edge" +msgstr "Punkt na krawędzi" + +msgid "Point on circle" +msgstr "Punkt na okręgu" + +msgid "Point on plane" +msgstr "Punkt na płaszczyźnie" + +msgid "Center of edge" +msgstr "Środek krawędzi" + +msgid "Center of circle" +msgstr "Środek okręgu" + +msgid "ShiftLeft mouse button" +msgstr "Shift + Lewy przycisk myszy" + +msgid "Select feature" +msgstr "Wybierz funkcję" + +msgid "Select point" +msgstr "Wybierz punkt" + +msgid "Delete" +msgstr "Usuń" + +msgid "Restart selection" +msgstr "Restartuj wybór" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "Odznacz" + +msgid "Measure" +msgstr "Zmierz" + +msgid "Edit to scale" +msgstr "Edytuj do skali" + +msgctxt "Verb" +msgid "Scale" +msgstr "Skala" + +msgid "None" +msgstr "Brak" + +msgid "Diameter" +msgstr "Średnica" + +msgid "Length" +msgstr "Długość" + +msgid "Selection" +msgstr "Wybór" + +msgid "Copy to clipboard" +msgstr "Kopiuj do schowka" + +msgid "Perpendicular distance" +msgstr "Odległość prostopadła" + +msgid "Distance" +msgstr "Odległość" + +msgid "Direct distance" +msgstr "Bezpośrednia odległość" + +msgid "Distance XYZ" +msgstr "Odległość XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Uwaga" + +msgid "Undefined" +msgstr "Nieokreślone" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% zostało zamienione na %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "Konfiguracja może być wygenerowana przez nowszą wersję Snapmaker Orca." + +msgid "Some values have been replaced. Please check them:" +msgstr "Niektóre wartości zostały zamienione. Proszę sprawdzić:" + +msgid "Process" +msgstr "Proces" + +msgid "Filament" +msgstr "Filament" + +msgid "Machine" +msgstr "Drukarka" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"Załadowano pakiet konfiguracyjny, ale niektóre wartości nie zostały " +"rozpoznane." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Plik konfiguracyjny \"%1%\" został załadowany, ale niektóre wartości nie " +"zostały rozpoznane." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca zakończy działanie z powodu braku pamięci. To może być błąd. " +"Będziemy wdzięczni za zgłoszenie problemu naszemu zespołowi." + +msgid "Fatal error" +msgstr "Błąd krytyczny" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca zakończy działanie z powodu błędu lokalizacji. Będziemy wdzięczni " +"za zgłoszenie konkretnej sytuacji, w której wystąpił ten problem." + +msgid "Critical error" +msgstr "Błąd krytyczny" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca napotkał nieobsługiwany wyjątek: %1%" + +msgid "Untitled" +msgstr "Bez tytułu" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Pobieranie wtyczki sieciowej Bambu" + +msgid "Login information expired. Please login again." +msgstr "Informacje logowania wygasły. Proszę zalogować się ponownie." + +msgid "Incorrect password" +msgstr "Nieprawidłowe hasło" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "Połączenie z %s nie powiodło się! [SN:%s, kod=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca wymaga Microsoft WebView2 Runtime do działania niektórych " +"funkcji.\n" +"Kliknij Tak, aby zainstalować go teraz." + +msgid "WebView2 Runtime" +msgstr "WebView2 Runtime" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Czy chcesz kontynuować?" + +msgid "Remember my choice" +msgstr "Zapamiętaj moją decyzję" + +msgid "Loading configuration" +msgstr "Ładowanie konfiguracji" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "Kliknij, aby pobrać nową wersję w domyślnej przeglądarce: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca wymaga aktualizacji" + +msgid "This is the newest version." +msgstr "To najnowsza wersja." + +msgid "Info" +msgstr "Informacja" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"Plik konfiguracyjny Snapmaker Orca może być uszkodzony i nie może być " +"sparsowany.\n" +"Snapmaker Orca próbował odtworzyć plik konfiguracyjny.\n" +"Należy pamiętać, że ustawienia aplikacji zostaną utracone, ale profile " +"drukarek nie będą dotknięte." + +msgid "Rebuild" +msgstr "Przebudowywuje" + +msgid "Loading current presets" +msgstr "Ładowanie obecnych ustawień" + +msgid "Loading a mode view" +msgstr "Ładowanie widoku trybu" + +msgid "Choose one file (3mf):" +msgstr "Wybierz jeden plik (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "" +"Wybierz jeden lub więcej plików (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Wybierz jeden lub więcej plików (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "Wybierz plik ZIP" + +msgid "Choose one file (gcode/3mf):" +msgstr "Wybierz jeden plik (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "Niektóre ustawienia zostały zmodyfikowane." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Możesz zachować zmodyfikowane ustawienia w nowym projekcie, odrzucić je lub " +"zapisać jako nowe ustawienia." + +msgid "User logged out" +msgstr "Użytkownik wylogowany" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" +"nowy lub otwarty plik projektu nie jest dozwolony podczas procesu cięcia!" + +msgid "Open Project" +msgstr "Otwórz projekt" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"Wersja Snapmaker Orca jest przestarzała i musi zostać zaktualizowana do " +"najnowszej wersji, aby działać normalnie" + +msgid "Privacy Policy Update" +msgstr "Aktualizacja polityki prywatności" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"Liczba zapisanych w chmurze ustawień użytkownika przekroczyła maksymalny " +"limit, każdy nowo utworzony profil użytkownika można używać tylko lokalnie." + +msgid "Sync user presets" +msgstr "Synchronizuj ustawienia użytkownika" + +msgid "Loading user preset" +msgstr "Ładowanie ustawień użytkownika" + +msgid "Switching application language" +msgstr "Zmiana języka aplikacji" + +msgid "Select the language" +msgstr "Wybierz język" + +msgid "Language" +msgstr "Język" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Wgrywanie trwa nadal" + +msgid "Stop them and continue anyway?" +msgstr "Zatrzymać je i kontynuować mimo to?" + +msgid "Ongoing uploads" +msgstr "Trwające wgrywanie" + +msgid "Select a G-code file:" +msgstr "Wybierz plik G-code:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"Nie można rozpocząć pobierania pliku z adresu URL. Folder docelowy nie jest " +"ustawiony. Proszę wybrać folder docelowy w Kreatorze Konfiguracji" + +msgid "Import File" +msgstr "Importuj plik" + +msgid "Choose files" +msgstr "Wybierz pliki" + +msgid "New Folder" +msgstr "Nowy folder" + +msgid "Open" +msgstr "Otwórz" + +msgid "Rename" +msgstr "Zmień nazwę" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Inicjalizacja interfejsu graficznego Snapmaker Orca nie powiodła się" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Krytyczny błąd, przechwycono wyjątek: %1%" + +msgid "Quality" +msgstr "Jakość" + +msgid "Shell" +msgstr "Powłoka" + +msgid "Infill" +msgstr "Wypełnienie" + +msgid "Support" +msgstr "Podpora" + +msgid "Flush options" +msgstr "Opcje czyszczenia" + +msgid "Speed" +msgstr "Prędkość" + +msgid "Strength" +msgstr "Struktura" + +msgid "Top Solid Layers" +msgstr "Pełne Warstwy Górne" + +msgid "Top Minimum Shell Thickness" +msgstr "Minimalna grubość górnej powłoki" + +msgid "Bottom Solid Layers" +msgstr "Pełne warstwy dolne" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Minimalna grubość dolnej powłoki" + +msgid "Ironing" +msgstr "Prasowanie" + +msgid "Fuzzy Skin" +msgstr "Skóra Fuzzy" + +msgid "Extruders" +msgstr "Extrudery" + +msgid "Extrusion Width" +msgstr "Szerokość ekstruzji" + +msgid "Wipe options" +msgstr "Opcje czyszczenia" + +msgid "Bed adhesion" +msgstr "Przyczepność do podłoża" + +msgid "Add part" +msgstr "Dodaj część" + +msgid "Add negative part" +msgstr "Dodaj część negatywną" + +msgid "Add modifier" +msgstr "Dodaj modyfikator" + +msgid "Add support blocker" +msgstr "Dodaj blokadę podpór" + +msgid "Add support enforcer" +msgstr "Dodaj wymuszenie podpór" + +msgid "Add text" +msgstr "Dodaj tekst" + +msgid "Add negative text" +msgstr "Dodaj tekst ujemny" + +msgid "Add text modifier" +msgstr "Dodaj modyfikator tekstu" + +msgid "Add SVG part" +msgstr "Dodaj część SVG" + +msgid "Add negative SVG" +msgstr "Dodaj ujemne SVG" + +msgid "Add SVG modifier" +msgstr "Dodaj modyfikator SVG" + +msgid "Select settings" +msgstr "Wybierz ustawienia" + +msgid "Hide" +msgstr "Ukryj" + +msgid "Show" +msgstr "Pokaż" + +msgid "Del" +msgstr "Del" + +msgid "Delete the selected object" +msgstr "Usuń wybrany obiekt" + +msgid "Load..." +msgstr "Wczytaj..." + +msgid "Cube" +msgstr "Sześcian" + +msgid "Cylinder" +msgstr "Walec" + +msgid "Cone" +msgstr "Stożek" + +msgid "Disc" +msgstr "Tarcza" + +msgid "Torus" +msgstr "Torus" + +msgid "Orca Cube" +msgstr "Sześcian Orca Design" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Test FDM Autodesk" + +msgid "Voron Cube" +msgstr "Sześcian Voron Design" + +msgid "Stanford Bunny" +msgstr "Królik Stanforda" + +msgid "Orca String Hell" +msgstr "Orca String Hell" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Ten model posiada wytłoczenia tekstu na górnej powierzchni. Dla optymalnych " +"wyników zaleca się ustawienie 'Próg jednej ściany (min_width_top_surface)' " +"na 0, aby opcja 'Tylko jedna ściana na górnych powierzchniach' działała " +"najlepiej.\n" +"Tak - Zmień te ustawienia automatycznie\n" +"Nie - Nie zmieniaj tych ustawień" + +msgid "Text" +msgstr "Tekst" + +msgid "Height range Modifier" +msgstr "Modyfikator zakresu wysokości" + +msgid "Add settings" +msgstr "Dodaj ustawienia" + +msgid "Change type" +msgstr "Zmień typ" + +msgid "Set as an individual object" +msgstr "Ustaw jako osobny obiekt" + +msgid "Set as individual objects" +msgstr "Ustaw jako osobne obiekty" + +msgid "Fill bed with copies" +msgstr "Wypełnij stół kopią modelu" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Uzupełnij pozostałą powierzchnię stołu kopią wybranego obiektu" + +msgid "Printable" +msgstr "Do druku" + +msgid "Fix model" +msgstr "Napraw model" + +msgid "Export as one STL" +msgstr "Eksportuj jako pojedynczy STL" + +msgid "Export as STLs" +msgstr "Eksportuj jako wiele STL" + +msgid "Reload from disk" +msgstr "Przeładuj z dysku" + +msgid "Reload the selected parts from disk" +msgstr "Przeładuj wybrane części z dysku" + +msgid "Replace with STL" +msgstr "Zamień na STL" + +msgid "Replace the selected part with new STL" +msgstr "Zamień wybraną część na nowy plik STL" + +msgid "Change filament" +msgstr "Zmień filament" + +msgid "Set filament for selected items" +msgstr "Ustaw filament dla wybranych elementów" + +msgid "Default" +msgstr "Domyślny" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filament %d" + +msgid "current" +msgstr "bieżący" + +msgid "Scale to build volume" +msgstr "Skaluj do obszaru roboczego" + +msgid "Scale an object to fit the build volume" +msgstr "Skaluj obiekt, aby pasował do obszaru roboczego" + +msgid "Flush Options" +msgstr "Opcje płukania" + +msgid "Flush into objects' infill" +msgstr "Płucz do wypełnienia obiektów" + +msgid "Flush into this object" +msgstr "Płucz do tego obiektu" + +msgid "Flush into objects' support" +msgstr "Płucz do podpory obiektów" + +msgid "Edit in Parameter Table" +msgstr "Edytuj w tabeli parametrów" + +msgid "Convert from inch" +msgstr "Konwertuj z cala" + +msgid "Restore to inch" +msgstr "Przywróć do cala" + +msgid "Convert from meter" +msgstr "Konwertuj z mm" + +msgid "Restore to meter" +msgstr "Przywróć do metra" + +msgid "Assemble" +msgstr "Złożenie" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Zmontuj wybrane obiekty w obiekt wieloczęściowy" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Zmontuj wybrane obiekty w jedną część" + +msgid "Mesh boolean" +msgstr "Operacje boolowskie na siatce" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Operacje boolowskie na siatce, w tym suma i różnica" + +msgid "Along X axis" +msgstr "Wzdłuż osi X" + +msgid "Mirror along the X axis" +msgstr "Odbicie lustrzane wzdłuż osi X" + +msgid "Along Y axis" +msgstr "Wzdłuż osi Y" + +msgid "Mirror along the Y axis" +msgstr "Odbicie lustrzane wzdłuż osi Y" + +msgid "Along Z axis" +msgstr "Wzdłuż osi Z" + +msgid "Mirror along the Z axis" +msgstr "Odbicie lustrzane wzdłuż osi Z" + +msgid "Mirror object" +msgstr "Odbicie lustrzane obiektu" + +msgid "Edit text" +msgstr "Edytuj tekst" + +msgid "Ability to change text, font, size, ..." +msgstr "Możliwość zmiany tekstu, czcionki, rozmiaru, ..." + +msgid "Edit SVG" +msgstr "Edytuj SVG" + +msgid "Change SVG source file, projection, size, ..." +msgstr "Zmień plik źródłowy SVG, projekcję, rozmiar, ..." + +msgid "Invalidate cut info" +msgstr "Unieważnij informacje o cięciu" + +msgid "Add Primitive" +msgstr "Dodaj prymityw" + +msgid "Add Handy models" +msgstr "Dodaj modele podręczne" + +msgid "Add Models" +msgstr "Dodaj modele" + +msgid "Show Labels" +msgstr "Pokaż etykiety" + +msgid "To objects" +msgstr "Na obiekty" + +msgid "Split the selected object into multiple objects" +msgstr "Podziel wybrany obiekt na wiele obiektów" + +msgid "To parts" +msgstr "Na części" + +msgid "Split the selected object into multiple parts" +msgstr "Podziel wybrany obiekt na wiele części" + +msgid "Split" +msgstr "Podziel" + +msgid "Split the selected object" +msgstr "Podziel wybrany obiekt" + +msgid "Auto orientation" +msgstr "Automatyczna orientacja" + +msgid "Auto orient the object to improve print quality." +msgstr "Automatyczna orientacja obiektu w celu poprawy jakości druku." + +msgid "Select All" +msgstr "Zaznacz wszystko" + +msgid "select all objects on current plate" +msgstr "zaznacz wszystkie obiekty na bieżącej płycie" + +msgid "Delete All" +msgstr "Usuń wszystko" + +msgid "delete all objects on current plate" +msgstr "usuń wszystkie obiekty na bieżącej płycie" + +msgid "Arrange" +msgstr "Ustaw" + +msgid "arrange current plate" +msgstr "ustaw bieżącą płytę" + +msgid "Reload All" +msgstr "Przeładuj wszystko" + +msgid "reload all from disk" +msgstr "Przeładuj wszystko z dysku" + +msgid "Auto Rotate" +msgstr "Automatyczna rotacja" + +msgid "auto rotate current plate" +msgstr "automatyczna rotacja obiektów na bieżącej płycie" + +msgid "Delete Plate" +msgstr "Usuń płytę" + +msgid "Remove the selected plate" +msgstr "Usuń wybraną płytę" + +msgid "Clone" +msgstr "Klonuj" + +msgid "Simplify Model" +msgstr "Uprość model" + +msgid "Center" +msgstr "Wyśrodkuj" + +msgid "Edit Process Settings" +msgstr "Edytuj ustawienia procesu" + +msgid "Edit print parameters for a single object" +msgstr "Edytuj parametry druku dla pojedynczego obiektu" + +msgid "Change Filament" +msgstr "Zmień filament" + +msgid "Set Filament for selected items" +msgstr "Ustaw filament dla wybranych elementów" + +msgid "Unlock" +msgstr "Odblokuj" + +msgid "Lock" +msgstr "Zablokuj" + +msgid "Edit Plate Name" +msgstr "Edytuj nazwę płyty" + +msgid "Name" +msgstr "Nazwa" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "Naprawiono %1$d błąd" +msgstr[1] "Naprawiono %1$d błędy" +msgstr[2] "Naprawiono %1$d błędów" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Błąd: %1$d niezamknięta krawędz." +msgstr[1] "Błąd: %1$d niezamknięte krawędzie." +msgstr[2] "Błąd: %1$d niezamkniętych krawędzi." + +msgid "Remaining errors" +msgstr "Pozostałe błędy" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d niezamknięta krawędz" +msgstr[1] "%1$d niezamknięte krawędzie" +msgstr[2] "%1$d niezamkniętych krawędzi" + +msgid "Right click the icon to fix model object" +msgstr "Kliknij prawym przyciskiem myszy ikonę, aby naprawić obiekt modelu" + +msgid "Right button click the icon to drop the object settings" +msgstr "Kliknij prawym przyciskiem myszy ikonę, aby zmienić ustawienia obiektu" + +msgid "Click the icon to reset all settings of the object" +msgstr "Kliknij ikonę, aby zresetować wszystkie ustawienia obiektu" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Kliknij prawym przyciskiem myszy ikonę, aby włączyć/wyłączyć możliwość druku " +"obiektu" + +msgid "Click the icon to toggle printable property of the object" +msgstr "Kliknij ikonę, aby włączyć/wyłączyć możliwość druku obiektu" + +msgid "Click the icon to edit support painting of the object" +msgstr "Kliknij ikonę, aby edytować namalowane podpory obiektu" + +msgid "Click the icon to edit color painting of the object" +msgstr "Kliknij ikonę, aby edytować kolory obiektu" + +msgid "Click the icon to shift this object to the bed" +msgstr "Kliknij ikonę, aby przenieść ten obiekt na stół" + +msgid "Loading file" +msgstr "Ładowanie pliku" + +msgid "Error!" +msgstr "Błąd!" + +msgid "Failed to get the model data in the current file." +msgstr "Nie udało się uzyskać danych modelu z bieżącego pliku." + +msgid "Generic" +msgstr "Źródłowy" + +msgid "Add Modifier" +msgstr "Dodaj modyfikator" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Przełącz się w tryb edycji ustawień druku dla każdego obiektu, aby edytować " +"ustawienia modyfikatora." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Przełącz się w tryb edycji ustawień druku dla każdego obiektu, aby edytować " +"ustawienia procesu dla wybranych obiektów." + +msgid "Delete connector from object which is a part of cut" +msgstr "Usuń łącznik z obiektu będącego częścią przecięcia" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Usuń bryłę z obiektu, który jest częścią przecięcia" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Usuń odejmowanie objętości z obiektu będącego częścią przecięcia." + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Aby zachować korespondencję cięcia, możesz usunąć wszystkie łączniki ze " +"wszystkich powiązanych obiektów." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"To działanie przerwie korespondencję cięcia.\n" +"Po tym nie można zagwarantować spójności modelu.\n" +"\n" +"Aby manipulować bryłami lub modyfikatorami z odejmowaniem objętości musisz " +"najpierw unieważnić informację o przecinaniu." + +msgid "Delete all connectors" +msgstr "Usuń wszystkie łączniki" + +msgid "Deleting the last solid part is not allowed." +msgstr "Usunięcie ostatniej części bryły jest niedozwolone." + +msgid "The target object contains only one part and can not be splited." +msgstr "" +"Obiekt docelowy zawiera tylko jedną część i nie może zostać podzielony." + +msgid "Assembly" +msgstr "Zestawienie" + +msgid "Cut Connectors information" +msgstr "Usuń informacje o łącznikach" + +msgid "Object manipulation" +msgstr "Manipulacja obiektami" + +msgid "Group manipulation" +msgstr "Manipulacja grupą" + +msgid "Object Settings to modify" +msgstr "Ustawienia obiektu do modyfikacji" + +msgid "Part Settings to modify" +msgstr "Ustawienia części do modyfikacji" + +msgid "Layer range Settings to modify" +msgstr "Ustawienia zakresu warstw do modyfikacji" + +msgid "Part manipulation" +msgstr "Manipulacja częściami" + +msgid "Instance manipulation" +msgstr "Manipulacja instancjami" + +msgid "Height ranges" +msgstr "Zakresy wysokości" + +msgid "Settings for height range" +msgstr "Ustawienia dla zakresu wysokości" + +msgid "Layer" +msgstr "Warstwa" + +msgid "Selection conflicts" +msgstr "Konflikty wyboru" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Jeśli pierwszy zaznaczony element to obiekt, to drugi powinien również być " +"obiektem." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Jeśli pierwszy zaznaczony element to część, to drugi powinien być częścią " +"tego samego obiektu." + +msgid "The type of the last solid object part is not to be changed." +msgstr "Nie można zmienić typu ostatniej pełnej części obiektu." + +msgid "Negative Part" +msgstr "Część ujemna" + +msgid "Support Blocker" +msgstr "Blokada podpory" + +msgid "Support Enforcer" +msgstr "Wzmocnienie podpory" + +msgid "Type:" +msgstr "Typ:" + +msgid "Choose part type" +msgstr "Wybierz rodzaj części" + +msgid "Enter new name" +msgstr "Wprowadź nową nazwę" + +msgid "Renaming" +msgstr "Zmiana nazwy" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "Następujący obiekt modelu został naprawiony" +msgstr[1] "Następujące obiekty modelu zostały naprawione" +msgstr[2] "Następujące obiekty modelu zostały naprawione" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Nie udało się naprawić następującego obiektu modelu" +msgstr[1] "Nie udało się naprawić następujących obiektów modelu" +msgstr[2] "Nie udało się naprawić następujących obiektów modelu" + +msgid "Repairing was canceled" +msgstr "Naprawa została anulowana" + +msgid "Additional process preset" +msgstr "Dodatkowa predefinicja procesu" + +msgid "Remove parameter" +msgstr "Usuń parametr" + +msgid "to" +msgstr "do" + +msgid "Remove height range" +msgstr "Usuń zakres wysokości" + +msgid "Add height range" +msgstr "Dodaj zakres wysokości" + +msgid "Invalid numeric." +msgstr "Nieprawidłowa wartość numeryczna." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"jedna komórka może być skopiowana do jednej lub wielu komórek w tej samej " +"kolumnie" + +msgid "multiple cells copy is not supported" +msgstr "kopiowanie wielu komórek nie jest obsługiwane" + +msgid "Outside" +msgstr "Poza obszarem roboczym" + +msgid "Layer height" +msgstr "Wysokość warstwy" + +msgid "Wall loops" +msgstr "Ilość obwodów ściany" + +msgid "Infill density(%)" +msgstr "Gęstość wypełnienia (%)" + +msgid "Auto Brim" +msgstr "Automatyczny Brim" + +msgid "Mouse ear" +msgstr "Ucho Myszy" + +msgid "Outer brim only" +msgstr "Tylko zewn. Brim" + +msgid "Inner brim only" +msgstr "Tylko wewn. Brim" + +msgid "Outer and inner brim" +msgstr "Zewn. i wewn. Brim" + +msgid "No-brim" +msgstr "Bez brimu" + +msgid "Outer wall speed" +msgstr "Prędkość zewnętrznej ściany" + +msgid "Plate" +msgstr "Stół" + +msgid "Brim" +msgstr "Brim" + +msgid "Object/Part Setting" +msgstr "Ustawienia obiektu/części" + +msgid "Reset parameter" +msgstr "Zresetuj parametr" + +msgid "Multicolor Print" +msgstr "Druk wielobarwny" + +msgid "Line Type" +msgstr "Typ linii" + +msgid "More" +msgstr "Więcej" + +msgid "Open Preferences." +msgstr "Otwórz preferencje." + +msgid "Open next tip." +msgstr "Otwórz następną wskazówkę." + +msgid "Open Documentation in web browser." +msgstr "Otwórz dokumentację w przeglądarce internetowej." + +msgid "Color" +msgstr "Kolor" + +msgid "Pause" +msgstr "Pauza" + +msgid "Template" +msgstr "Szablon" + +msgid "Custom" +msgstr "Niestandardowy" + +msgid "Pause:" +msgstr "Pauza:" + +msgid "Custom Template:" +msgstr "Niestandardowy szablon:" + +msgid "Custom G-code:" +msgstr "Niestandardowy G-code:" + +msgid "Custom G-code" +msgstr "Niestandardowy G-code" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Wprowadź niestandardowy G-code używany na bieżącej warstwie:" + +msgid "Jump to Layer" +msgstr "Przejdź do warstwy" + +msgid "Please enter the layer number" +msgstr "Proszę podać numer warstwy" + +msgid "Add Pause" +msgstr "Dodaj pauzę" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Wstaw polecenie pauzy na początku tej warstwy." + +msgid "Add Custom G-code" +msgstr "Dodaj niestandardowy G-code" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Wstaw niestandardowy G-code na początku tej warstwy." + +msgid "Add Custom Template" +msgstr "Dodaj niestandardowy szablon" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Wstaw niestandardowy szablon G-code na początku tej warstwy." + +msgid "Filament " +msgstr "Materiał " + +msgid "Change filament at the beginning of this layer." +msgstr "Zmień filament na początku tej warstwy." + +msgid "Delete Pause" +msgstr "Usuń pauzę" + +msgid "Delete Custom Template" +msgstr "Usuń niestandardowy szablon" + +msgid "Edit Custom G-code" +msgstr "Edytuj niestandardowy G-code" + +msgid "Delete Custom G-code" +msgstr "Usuń niestandardowy G-code" + +msgid "Delete Filament Change" +msgstr "Usuń zmianę filamentu" + +msgid "No printer" +msgstr "Brak drukarki" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Nie udało się połączyć z serwerem" + +msgid "Check the status of current system services" +msgstr "Sprawdź status bieżących usług systemowych" + +msgid "code" +msgstr "kod" + +msgid "Failed to connect to cloud service" +msgstr "Nie udało się połączyć z usługą w chmurze" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "" +"Proszę kliknąć na powyższy hiperłącze, aby zobaczyć status usługi w chmurze" + +msgid "Failed to connect to the printer" +msgstr "Nie udało się połączyć z drukarką" + +msgid "Connection to printer failed" +msgstr "Nie udało się połączyć z drukarką" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Proszę sprawdzić połączenie sieciowe drukarki i Orca." + +msgid "Connecting..." +msgstr "Łączenie..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Puste" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Auto. uzupełnienie" + +msgid "AMS not connected" +msgstr "AMS niepodłączony" + +msgid "Load" +msgstr "Ładuj" + +msgid "Unload" +msgstr "Rozładuj" + +msgid "Ext Spool" +msgstr "zew.szpula" + +msgid "Tips" +msgstr "Wskazówki" + +msgid "Guide" +msgstr "Instr." + +msgid "Retry" +msgstr "Ponów" + +msgid "Calibrating AMS..." +msgstr "Kalibracja AMS..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"Wystąpił problem podczas kalibracji. Kliknij, aby zobaczyć rozwiązanie." + +msgid "Calibrate again" +msgstr "Kalibruj ponownie" + +msgid "Cancel calibration" +msgstr "Anuluj kalibrację" + +msgid "Idling..." +msgstr "Bezczynność..." + +msgid "Heat the nozzle" +msgstr "Nagrzewanie dyszy" + +msgid "Cut filament" +msgstr "Odcinanie filamentu" + +msgid "Pull back current filament" +msgstr "Wycofuje obecny filament" + +msgid "Push new filament into extruder" +msgstr "" +"Załaduj nowy\n" +"filament do extrudera" + +msgid "Purge old filament" +msgstr "Oczyść dyszę" + +msgid "Feed Filament" +msgstr "Podaj filament" + +msgid "Confirm extruded" +msgstr "Potwierdź wytłaczanie" + +msgid "Check filament location" +msgstr "Sprawdź lokalizację filamentu" + +msgid "Grab new filament" +msgstr "" +"Załaduj nowy\n" +"filament" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Wybierz gniazdo AMS, a następnie naciśnij przycisk \"Ładuj\" lub \"Rozładuj" +"\" ,aby automatycznie załadować lub wyładować filamenty." + +msgid "Edit" +msgstr "Edytuj" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Wszystkie wybrane obiekty są na zablokowanej płycie,\n" +"Nie można zastosować automatycznego układu tych obiektów." + +msgid "No arrangable objects are selected." +msgstr "Nie wybrano obiektów do układania." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Ta płyta jest zablokowana,\n" +"Nie można zastosować automatycznego układu na tej płycie." + +msgid "Arranging..." +msgstr "Układanie..." + +msgid "Arranging" +msgstr "Układanie" + +msgid "Arranging canceled." +msgstr "Układanie anulowane." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Ustawianie zostało zakończone, ale niektóre elementy nie mogły zostać " +"ustawione. Zmniejsz odstępy i spróbuj ponownie." + +msgid "Arranging done." +msgstr "Układanie zakończone." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Ułożenie nie powiodło się. Wykryto niektóre wyjątki podczas przetwarzania " +"geometrii obiektów." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"Ustawienie zignorowało następujące obiekty, które nie mieszczą się na " +"pojedynczej płycie:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Wszystkie wybrane obiekty są na zablokowanej płycie,\n" +"Nie można zastosować automatycznej orientacji na tych obiektach." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Ta płyta jest zablokowana,\n" +"Nie można zastosować automatycznej orientacji na tej płycie." + +msgid "Orienting..." +msgstr "Orientacja..." + +msgid "Orienting" +msgstr "Orientacja" + +msgid "Orienting canceled." +msgstr "Orientacja anulowana." + +msgid "Filling" +msgstr "Wypełnianie" + +msgid "Bed filling canceled." +msgstr "Anulowanie wypełniania stołu." + +msgid "Bed filling done." +msgstr "Wypełnianie stołu zakończone." + +msgid "Searching for optimal orientation" +msgstr "Wyszukiwanie optymalnej orientacji" + +msgid "Orientation search canceled." +msgstr "Anulowano wyszukiwanie orientacji." + +msgid "Orientation found." +msgstr "Znaleziono orientację." + +msgid "Logging in" +msgstr "Logowanie" + +msgid "Login failed" +msgstr "Logowanie nie powiodło się" + +msgid "Please check the printer network connection." +msgstr "Proszę sprawdzić połączenie sieciowe drukarki." + +msgid "Abnormal print file data. Please slice again." +msgstr "Niezgodne dane pliku drukowania. Proszę powtórzyć cięcie." + +msgid "Task canceled." +msgstr "Zadanie anulowane." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"Przekroczono limit czasu przesyłania. Sprawdź stan sieci i spróbuj ponownie." + +msgid "Cloud service connection failed. Please try again." +msgstr "Nie udało się połączyć z usługą w chmurze. Spróbuj ponownie." + +msgid "Print file not found. please slice again." +msgstr "Plik druku nie znaleziony. Proszę powtórzyć cięcie." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"Plik druku przekracza maksymalny dopuszczalny rozmiar (1GB). Proszę uprościć " +"model i pociąć go ponownie." + +msgid "Failed to send the print job. Please try again." +msgstr "" +"Wysłanie zadania drukowania nie powiodło się. Proszę spróbować ponownie." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "" +"Przesłanie pliku na serwer FTP nie powiodło się. Proszę spróbować ponownie." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "Sprawdź aktualny stan serwera Bambu, klikając na powyższy link." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"Rozmiar pliku drukowania jest zbyt duży. Proszę dostosować rozmiar pliku i " +"spróbować ponownie." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" +"Nie znaleziono pliku drukowania; proszę ponownie pociąć i wysłać do druku." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Przesłanie pliku drukowania na serwer FTP nie powiodło się. Sprawdź stan " +"sieci i spróbuj ponownie." + +msgid "Sending print job over LAN" +msgstr "Wysyłanie zadania drukowania przez LAN" + +msgid "Sending print job through cloud service" +msgstr "Wysyłanie zadania drukowania przez usługę w chmurze" + +msgid "Print task sending times out." +msgstr "Przekroczono limit czasu wysyłania zadania drukowania." + +msgid "Service Unavailable" +msgstr "Usługa niedostępna" + +msgid "Unknown Error." +msgstr "Nieznany błąd." + +msgid "Sending print configuration" +msgstr "Wysyłanie konfiguracji drukowania" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "Pomyślnie wysłano. Automatyczne przejście do strony urządzenia za %ss" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "Pomyślnie wysłano. Automatyczne przejście do następnej strony za %ss" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "Przed drukowaniem przez LAN należy włożyć kartę SD." + +msgid "Sending gcode file over LAN" +msgstr "Wysyłanie pliku G-code przez LAN" + +msgid "Sending gcode file to sdcard" +msgstr "Wysyłanie pliku G-code na kartę SD" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Pomyślnie wysłano. Zamknięcie bieżącej strony za %ss" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Przed wysłaniem do drukarki należy włożyć kartę SD." + +msgid "Importing SLA archive" +msgstr "Importowanie archiwum SLA" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"Archiwum SLA nie zawiera żadnych ustawień. Przed zaimportowaniem tego " +"archiwum SLA należy najpierw aktywować profil drukarki SLA." + +msgid "Importing canceled." +msgstr "Importowanie anulowane." + +msgid "Importing done." +msgstr "Importowanie zakończone." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"Zaimportowane archiwum SLA nie zawierało żadnych ustawień wstępnych. " +"Aktualne ustawienia SLA zostały użyte jako alternatywa." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "Nie możesz wczytać projektu SLA mając na stole wieloczęściowy model" + +msgid "Please check your object list before preset changing." +msgstr "Sprawdź listę obiektów przed zmianą profilu." + +msgid "Attention!" +msgstr "Uwaga!" + +msgid "Downloading" +msgstr "Pobieranie" + +msgid "Download failed" +msgstr "Pobieranie nie powiodło się" + +msgid "Cancelled" +msgstr "Anulowane" + +msgid "Install successfully." +msgstr "Instalacja zakończona pomyślnie." + +msgid "Installing" +msgstr "Instalowanie" + +msgid "Install failed" +msgstr "Błąd instalacji" + +msgid "Portions copyright" +msgstr "Części chronione prawem autorskim" + +msgid "Copyright" +msgstr "Prawo autorskie" + +msgid "License" +msgstr "Licencja" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca jest licencjonowany na zasadach " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, wersja 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca is Based on Orca Slicer" + +msgid "Libraries" +msgstr "Biblioteki" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"To oprogramowanie używa komponentów o otwartym kodzie źródłowym, których " +"prawa autorskie i inne prawa własności należą do ich właścicieli" + +#, c-format, boost-format +msgid "About %s" +msgstr "O %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "" +"Snapmaker Orca opiera się na projektach BambuStudio, PrusaSlicer i SuperSlicer." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "BambuStudio bazuje na PrusaSlicer od PrusaResearch." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer początkowo opiera się na Slic3r od Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r został stworzony przez Alessandro Ranellucci przy współpracy wielu " +"innych współtwórców.\n" +"\n" +"Tłumaczenie na język polski: KrisMorr " + +msgid "Version" +msgstr "Wersja" + +msgid "AMS Materials Setting" +msgstr "Ustawienia filamentów AMS" + +msgid "Confirm" +msgstr "Potwierdź" + +msgid "Close" +msgstr "Zamknij" + +msgid "Colour" +msgstr "Kolor" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Temp.\n" +"dyszy" + +msgid "max" +msgstr "max" + +msgid "min" +msgstr "min" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "Wartość wejściowa powinna być większa niż %1% i mniejsza niż %2%" + +msgid "SN" +msgstr "Numer seryjny" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "" +"Ustawianie informacji o gnieździe AMS podczas druku nie jest obsługiwane" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "współczynnik kalibracji dynamiki przepływu" + +msgid "PA Profile" +msgstr "Profil PA" + +msgid "Factor K" +msgstr "Factor K" + +msgid "Factor N" +msgstr "Współczynnik N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "" +"Ustawianie informacji o wirtualnym slocie podczas druku nie jest obsługiwane" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Czy na pewno chcesz usunąć informacje o filamentach?" + +msgid "You need to select the material type and color first." +msgstr "Najpierw musisz wybrać typ i kolor filamentu." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "Proszę podać prawidłową wartość (K w zakresie %.1f~%.1f)" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" +"Proszę podać prawidłową wartość (K w zakresie %.1f~%.1f, N in %.1f~%.1f)" + +msgid "Other Color" +msgstr "Inny kolor" + +msgid "Custom Color" +msgstr "Własny kolor" + +msgid "Dynamic flow calibration" +msgstr "Kalibracja dynamiki przepływu" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"Temperatura dyszy i maksymalna prędkość przepływu mogą wpływać na wyniki " +"kalibracji. Proszę podać takie same wartości jak w rzeczywistym druku. Mogą " +"być automatycznie wypełnione poprzez wybranie ustawień filamentu." + +msgid "Nozzle Diameter" +msgstr "Średnica dyszy" + +msgid "Bed Type" +msgstr "Typ Płyty" + +msgid "Nozzle temperature" +msgstr "Temperatura dyszy" + +msgid "Bed Temperature" +msgstr "Temperatura stołu" + +msgid "Max volumetric speed" +msgstr "Maksymalna prędkość przepływu" + +msgid "℃" +msgstr "℃" + +msgid "Bed temperature" +msgstr "Temperatura stołu" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Rozpocznij kalibrację" + +msgid "Next" +msgstr "Dalej" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Kalibracja zakończona. Proszę znaleźć na płycie roboczej, linie ekstruzji o " +"najbardziej jednolitym wyglądzie, podobne do przedstawionego poniżej obrazu, " +"i wprowadź tę wartość w pole wprowadzania współczynnika K." + +msgid "Save" +msgstr "Zapisz" + +msgid "Last Step" +msgstr "Ostatni krok" + +msgid "Example" +msgstr "Przykład" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Kalibracja... %d%%" + +msgid "Calibration completed" +msgstr "Kalibracja zakończona" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s nie obsługuje %s" + +msgid "Dynamic flow Calibration" +msgstr "Kalibracja Dynamiki Przepływu" + +msgid "Step" +msgstr "Krok" + +msgid "AMS Slots" +msgstr "Gniazda AMS" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Uwaga: można wybierać tylko sloty AMS załadowane tym samym rodzajem " +"filamentu." + +msgid "Enable AMS" +msgstr "Włącz AMS" + +msgid "Print with filaments in the AMS" +msgstr "Drukowanie filamentem z AMS" + +msgid "Disable AMS" +msgstr "Wyłącz AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Drukukowanie filamentem zamontowanym na tylnej części obudowy" + +msgid "Current Cabin humidity" +msgstr "Aktualna wilgotność w komorze" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Pamiętaj o wymianie pakietu pochłaniacza wilgoci gdy stanie się on zbyt " +"mokry. Wskaźnik może nie dokładnie odzwierciedlać stan wilgotności gdy: " +"otwarta jest pokrywa lub pakiet pochłaniacza został nie dawno wymieniony. " +"Proces absorpcji wilgoci może zająć kilka godzin, a niskie temperatury " +"również spowolnią ten proces." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Konfiguruj, które gniazdo AMS powinno być używane dla filamentu w trakcie " +"zadania drukowania" + +msgid "Filament used in this print job" +msgstr "Filament używany w tym zadaniu druku" + +msgid "AMS slot used for this filament" +msgstr "Slot AMS używany dla tego filamentu" + +msgid "Click to select AMS slot manually" +msgstr "Kliknij, aby ręcznie wybrać inny slot AMS" + +msgid "Do not Enable AMS" +msgstr "Nie włączaj AMS" + +msgid "Print using materials mounted on the back of the case" +msgstr "" +"Drukowanie przy użyciu materiałów zamontowanych na tylnej części obudowy" + +msgid "Print with filaments in ams" +msgstr "Drukowanie filamentem z AMS" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "" +"Drukowanie przy użyciu materiałów zamontowanych na tylnej części obudowy" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Gdy obecny filament się skończy, drukarka będzie kontynuować druk w " +"następującej kolejności." + +msgid "Group" +msgstr "Grupa" + +msgid "The printer does not currently support auto refill." +msgstr "Obecnie drukarka nie obsługuje automatycznego uzupełniania." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"Kopia zapasowa filamentu AMS nie jest włączona, proszę włączyć ją w " +"ustawieniach AMS." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"W przypadku, gdy podczas drukowania w systemie AMS zużyje się jeden z " +"filamentów, system automatycznie przełączy na drugi identyczny filament.\n" +"(System obecnie wspiera automatyczne przełączanie na materiały " +"eksploatacyjne tej samej marki, rodzaju i koloru)" + +msgid "DRY" +msgstr "SUCHY" + +msgid "WET" +msgstr "MOKRY" + +msgid "AMS Settings" +msgstr "Ustawienia AMS" + +msgid "Insertion update" +msgstr "Aktualizacja wymiany" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"AMS automatycznie odczyta informacje o filamencie Bambu Lab zaraz po jego " +"włożeniu. To zajmie około 20 sekund." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Uwaga: jeśli podczas drukowania zostanie włożony nowy filament, system AMS " +"nie będzie automatycznie odczytywał żadnych informacji do momentu " +"zakończenia drukowania." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Podczas wkładania nowego filamentu, AMS nie będzie automatycznie odczytywać " +"jego informacji, pozostawiając je puste, abyś mógł wprowadzić je ręcznie." + +msgid "Power on update" +msgstr "Aktualizacja po włączeniu zasilania" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"AMS automatycznie odczyta informacje o włożonym filamencie podczas " +"uruchamiania. To zajmie około 1 minuty. Proces odczytu sprawi, że rolki " +"filamentów się obrócą." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"AMS nie będzie automatycznie odczytywać informacji z włożonego filamentu " +"podczas uruchamiania i będzie kontynuować korzystanie z informacji " +"zapisanych przed ostatnim wyłączeniem." + +msgid "Update remaining capacity" +msgstr "Aktualizuj pozostałą ilość" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"AMS oszacuje pozostałą ilość filamentu Bambu po aktualizacji informacji o " +"filamencie. Podczas drukowania, pozostała ilość na szpuli będzie " +"aktualizowana automatycznie." + +msgid "AMS filament backup" +msgstr "Automatyczne przełączenie filamentu AMS" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"AMS automatycznie przełączy się na inną szpule z tym samym rodzajem " +"filamentu, gdy obecny filament się skończy" + +msgid "Air Printing Detection" +msgstr "Wykrywanie druku w powietrzu" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Wykrywa zatkanie i zacięcie się filamentu, natychmiast zatrzymując " +"drukowanie w celu oszczędzenia czasu i filamentu." + +msgid "File" +msgstr "Plik" + +msgid "Calibration" +msgstr "Kalibracja" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Nie udało się pobrać wtyczki. Sprawdź ustawienia zapory ogniowej i " +"oprogramowania VPN, sprawdź i spróbuj ponownie." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Nie udało się zainstalować wtyczki. Sprawdź, czy nie jest zablokowana lub " +"usunięta przez oprogramowanie antywirusowe." + +msgid "click here to see more info" +msgstr "cliknij tutaj, aby zobaczyć więcej informacji" + +msgid "Please home all axes (click " +msgstr "Ustaw wszystkie osie na pozycje domową (kliknij " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") aby określić pozycję głowicy drukującej. To uniemożliwi narzędziu wyjście " +"poza możliwy obszar druku, co chroni sprzęt przed zużyciem." + +msgid "Go Home" +msgstr "Poz.Domowa" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Wystąpił błąd. Być może brakuje pamięci w systemie lub jest to błąd programu" + +msgid "Please save project and restart the program. " +msgstr "Proszę zapisać projekt i ponownie uruchomić program. " + +msgid "Processing G-Code from Previous file..." +msgstr "Przetwarzanie G-code z poprzedniego pliku..." + +msgid "Slicing complete" +msgstr "Cięcie zakończone" + +msgid "Access violation" +msgstr "Naruszenie dostępu" + +msgid "Illegal instruction" +msgstr "Nielegalna instrukcja" + +msgid "Divide by zero" +msgstr "Dzielenie przez zero" + +msgid "Overflow" +msgstr "Przepełnienie" + +msgid "Underflow" +msgstr "Niedomiar" + +msgid "Floating reserved operand" +msgstr "Zmiennoprzecinkowy zarezerwowany operand" + +msgid "Stack overflow" +msgstr "Przepełnienie stosu" + +msgid "Running post-processing scripts" +msgstr "Uruchamianie skryptu post-procesingu" + +msgid "Successfully executed post-processing script" +msgstr "Pomyślnie wykonano skrypt post-processingu" + +msgid "Unknown error occured during exporting G-code." +msgstr "Nieznany błąd podczas eksportowania G-code." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Kopiowanie tymczasowego G-code do wyjściowego pliku G-code nie powiodło się. " +"Być może karta SD jest zablokowana do zapisu?\n" +"Komunikat błędu: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"Kopiowanie tymczasowego G-code do wyjściowego pliku G-code nie powiodło się. " +"Może być problem z urządzeniem docelowym, spróbuj ponownie wyeksportować lub " +"użyć innego urządzenia. Uszkodzony plik wyjściowego G-code znajduje się w " +"pliku %1%.tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"Zmiana nazwy G-code po skopiowaniu pliku do folderu docelowego nie powiodła " +"się. Bieżąca ścieżka to %1%.tmp. Spróbuj ponownie go wyeksportować." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"Kopiowanie tymczasowego G-code zakończono, ale oryginalny G-code w " +"lokalizacji %1% nie mógł być otwarty podczas sprawdzania kopii. Wygenerowany " +"G-code znajduje się w lokalizacji %2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"Kopiowanie tymczasowego G-code zakończono, ale wyeksportowany G-code nie " +"mógł być otwarty podczas sprawdzania kopii. Wygenerowany G-code znajduje się " +"w lokalizacji %1%.tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "Plik G-code został wyeksportowany do %1%" + +msgid "Unknown error when export G-code." +msgstr "Nieznany błąd podczas eksportowania G-code." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Nie udało się zapisać pliku G-code.\n" +"Wiadomość o błędzie: %1%.\n" +"Plik źródłowy %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Kopiowanie tymczasowego G-kodu do G-kodu wyjściowego nie powiodło się" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Planowanie przesyłania do `%1%`. Zobacz Okno -> Kolejka przesyłania do hosta " +"drukarki" + +msgid "Device" +msgstr "Urządzenie" + +msgid "Task Sending" +msgstr "Wysyłanie zadań" + +msgid "Task Sent" +msgstr "Wysłane do druku" + +msgid "Edit multiple printers" +msgstr "Edycja drukarek" + +msgid "Select connected printers (0/6)" +msgstr "Wybierz podłączone drukarki (0/6)" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "Wybierz Podłączone Drukarki (%d/6)" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "Maksymalna liczba drukarek, które można wybrać, to %d" + +msgid "Offline" +msgstr "Offline" + +msgid "No task" +msgstr "Brak zadania" + +msgid "View" +msgstr "Widok" + +msgid "N/A" +msgstr "N/D" + +msgid "Edit Printers" +msgstr "Edycja drukarek" + +msgid "Device Name" +msgstr "Nazwa urządzenia" + +msgid "Task Name" +msgstr "Nazwa zadania" + +msgid "Device Status" +msgstr "Status urządzenia" + +msgid "Actions" +msgstr "Działania" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" +"Proszę wybrać urządzenia, którymi chciałbyś tutaj zarządzać (do 6 urządzeń)" + +msgid "Add" +msgstr "Dodaj" + +msgid "Idle" +msgstr "Bezczynny" + +msgid "Printing" +msgstr "Drukowanie" + +msgid "Upgrading" +msgstr "Aktualizacja" + +msgid "Incompatible" +msgstr "Niekompatybilne" + +msgid "syncing" +msgstr "synchronizacja" + +msgid "Printing Finish" +msgstr "Drukowanie zakończone" + +msgid "Printing Failed" +msgstr "Drukowanie nie powiodło się" + +msgid "Printing Pause" +msgstr "Drukowanie wstrzymane" + +msgid "Prepare" +msgstr "Przygotowanie" + +msgid "Slicing" +msgstr "Cięcie" + +msgid "Pending" +msgstr "W toku" + +msgid "Sending" +msgstr "Wysyłanie" + +msgid "Sending Finish" +msgstr "Wysłanie ukończone" + +msgid "Sending Cancel" +msgstr "Anulowano wysyłanie" + +msgid "Sending Failed" +msgstr "Wysyłanie nieudane" + +msgid "Print Success" +msgstr "Pomyślnie wydrukowano" + +msgid "Print Failed" +msgstr "Drukowanie nie powiodło się" + +msgid "Removed" +msgstr "Usunięto" + +msgid "Resume" +msgstr "Wznów" + +msgid "Stop" +msgstr "Zatrzymaj" + +msgid "Task Status" +msgstr "Status Zadania" + +msgid "Sent Time" +msgstr "Czas wysłania" + +msgid "There are no tasks to be sent!" +msgstr "Brak zadań do wysłania!" + +msgid "No historical tasks!" +msgstr "Brak historii zadań!" + +msgid "Loading..." +msgstr "Wczytywanie..." + +msgid "No AMS" +msgstr "Brak AMS" + +msgid "Send to Multi-device" +msgstr "Wyślij do wielu urządzeń" + +msgid "Preparing print job" +msgstr "Przygotowywanie zadania do druku" + +msgid "Abnormal print file data. Please slice again" +msgstr "Nieprawidłowe dane pliku druku. Proszę ponownie przetnij" + +msgid "There is no device available to send printing." +msgstr "Brak dostępnego urządzenia lub nie zostało wybrane." + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "Liczba używanych jednocześnie drukarek nie może być równa 0." + +msgid "Use External Spool" +msgstr "Użyj zewnętrznej szpuli" + +msgid "Use AMS" +msgstr "Użyj AMS" + +msgid "Select Printers" +msgstr "Wybierz drukarki" + +msgid "Ams Status" +msgstr "Status Ams" + +msgid "Printing Options" +msgstr "Opcje drukowania" + +msgid "Bed Leveling" +msgstr "Poziomowanie stołu" + +msgid "Timelapse" +msgstr "Timelaps" + +msgid "Flow Dynamic Calibration" +msgstr "Kalibracja Dynamiki Przepływu" + +msgid "Send Options" +msgstr "Opcje wysyłania" + +msgid "Send to" +msgstr "Wyślij do" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"drukarek jednocześnie. (Zależy to od liczby urządzeń, które można podgrzewać " +"jednocześnie.)" + +msgid "Wait" +msgstr "Czekaj" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minut na każdą partię. (Zależy od tego, jak długo trwa proces nagrzewania.)" + +msgid "Send" +msgstr "Wyślij" + +msgid "Name is invalid;" +msgstr "Nazwa jest nieprawidłowa;" + +msgid "illegal characters:" +msgstr "niedozwolone znaki:" + +msgid "illegal suffix:" +msgstr "niedozwolony sufiks:" + +msgid "The name is not allowed to be empty." +msgstr "Nazwa nie może być pusta." + +msgid "The name is not allowed to start with space character." +msgstr "Nazwa nie może zaczynać się od znaku spacji." + +msgid "The name is not allowed to end with space character." +msgstr "Nazwa nie może kończyć się na znak spacji." + +msgid "The name length exceeds the limit." +msgstr "Długość nazwy przekracza limit." + +msgid "Origin" +msgstr "Punkt bazowy" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Rozmiar w osi X i Y prostokątnej płyty." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "Odległość punktu 0,0 w G-code od lewego górnego rogu prostokąta." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Średnica stołu drukarki. Przyjmuje się, że punkt początkowy (0,0) znajduje " +"się na środku." + +msgid "Rectangular" +msgstr "Prostokątny" + +msgid "Circular" +msgstr "Okrągły" + +msgid "Load shape from STL..." +msgstr "Załaduj kształt z pliku STL..." + +msgid "Settings" +msgstr "Ustawienia" + +msgid "Texture" +msgstr "Tekstura" + +msgid "Remove" +msgstr "Usuń" + +msgid "Not found:" +msgstr "Nie znaleziono:" + +msgid "Model" +msgstr "Model" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Wybierz plik STL, aby zaimportować kształt stołu z:" + +msgid "Invalid file format." +msgstr "Nieprawidłowy format pliku." + +msgid "Error! Invalid model" +msgstr "Błąd! Nieprawidłowy model" + +msgid "The selected file contains no geometry." +msgstr "Wybrany plik nie zawiera geometrii." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"Wybrany plik zawiera kilka niepołączonych obszarów. To nie jest obsługiwane." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "Wybierz plik do zaimportowania tekstury stołu (PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Wybierz plik STL do zaimportowania modelu stołu z:" + +msgid "Bed Shape" +msgstr "Kształt stołu" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"Zalecana temperatura jest poniżej minimalnych 190 stopni lub temperatura " +"przekracza zalecane maksimum 300 stopni.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"Minimalna zalecana temperatura nie może być wyższa niż zalecana temperatura " +"maksymalna.\n" + +msgid "Please check.\n" +msgstr "Sprawdź.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"Dysza może zostać zablokowana, gdy temperatura wykracza poza zalecany " +"zakres.\n" +"Upewnij się, czy temperatura do druku jest odpowiednia.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"Zalecana temperatura dyszy dla tego typu filamentu wynosi [%d, %d] stopni " +"Celsjusza" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Zbyt mała maksymalna prędkość przepływu.\n" +"Zresetowano do 0,5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"Obecna temperatura komory jest wyższa niż bezpieczna temperatura dla " +"filamentu, co może prowadzić do jego mięknięcia i zatykania. Maksymalna " +"bezpieczna temperatura dla tego filamentu wynosi %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Zbyt mała wysokość warstwy.\n" +"Zresetowano do 0,2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Zbyt mała odległość między ścieżkami przy prasowaniu.\n" +"Zresetowano do 0,1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"Wysokość zerowa pierwszej warstwy jest nieprawidłowa.\n" +"\n" +"Wysokość pierwszej warstwy zostanie zresetowana do 0,2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"To ustawienie jest używane tylko do dostrajania rozmiaru modelu w niewielkim " +"stopniu.\n" +"Na przykład, gdy rozmiar modelu ma małe błędy lub gdy tolerancje są " +"nieprawidłowe. W przypadku wprowadzania dużych zmian należy do tego użyć " +"funkcji skalowania modelu.\n" +"\n" +"Wartość zostanie zresetowana do 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Zbyt duża kompensacja efektu \"stopy słonia\" nie jest wskazana.\n" +"Jeśli rzeczywiście występuje poważny efekt stopy słonia, proszę sprawdzić " +"inne ustawienia.\n" +"Na przykład, czy temperatura stołu jest zbyt wysoka.\n" +"\n" +"Wartość zostanie zresetowana do 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" +"Alternatywna dodatkowa ściana działa tylko wtedy, gdy jest wyłączona opcja " +"\"zapewnij stałą grubość pionowej powłoki\". " + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"Zmienić te ustawienia automatycznie?\n" +"Tak - Wyłącz \"zapewnij pionową grubość powłoki\" i włącz \"alternatywną " +"dodatkową ścianę\"\n" +"Nie - Nie używaj \"alternatywnej dodatkowej ściany\"" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"Wieża czyszcząca nie działa, gdy włączona jest Adaptacyjna wysokość warstwy " +"lub Niezależna wysokość warstwy podpory.\n" +"Którą opcję chcesz zachować?\n" +"TAK - Zachowaj Wieżę czyszczącą\n" +"NIE - Zachowaj Adaptacyjną wysokość warstwy i Niezależną wysokość warstwy " +"podpory" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"Wieża czyszcząca nie działa, gdy włączona jest Zmienna Wysokość Warstwy.\n" +"Którą opcję chcesz zachować?\n" +"TAK - Zachowaj Wieżę czyszczącą\n" +"NIE - Zachowaj Zmienną Wysokość Warstwy" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"Wieża czyszcząca nie działa, gdy włączona jest Niezależna wysokość warstwy " +"podpory.\n" +"Którą opcję chcesz zachować?\n" +"TAK - Zachowaj Wieżę czyszczącą\n" +"NIE - Zachowaj Niezależną wysokość warstwy podpory" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Podczas drukowania według obiektu extruder może zderzyć się z obrysem " +"skirtu.\n" +"Dlatego zresetuj wysokość skirtu na 1, aby tego uniknąć." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"seam_slope_start_height musi być mniejsza niż wysokość warstwy. \n" +"Zresetuj do wartości 0" + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Tryb Wazy działa tylko wtedy gdy liczba pętli ściany wynosi 1, wyłączone są " +"podpory, liczba warstw górnej powłoki wynosi 0, gęstość wypełnienia wynosi " +"0, a tryb Timelaps ustawiony jest na Tradycyjny." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " Jednak maszyny z budową I3 nie będą generować filmów timelapse." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Czy zmienić te ustawienia automatycznie? \n" +"Tak - Zmień te ustawienia automatycznie i włącz tryb Wazy\n" +"Nie - Zrezygnuj tym razem z używania trybu Wazy" + +msgid "Auto bed leveling" +msgstr "Automatyczne poziomowanie stołu" + +msgid "Heatbed preheating" +msgstr "Rozgrzewanie stołu" + +msgid "Sweeping XY mech mode" +msgstr "Pomiar rezonansu osi XY" + +msgid "Changing filament" +msgstr "Zmiana filamentu" + +msgid "M400 pause" +msgstr "Pauza M400" + +msgid "Paused due to filament runout" +msgstr "Pauza z powodu wyczerpania filamentu" + +msgid "Heating hotend" +msgstr "Nagrzewanie dyszy" + +msgid "Calibrating extrusion" +msgstr "Kalibracja ekstruzji" + +msgid "Scanning bed surface" +msgstr "Skanowanie powierzchni stołu" + +msgid "Inspecting first layer" +msgstr "Kontrola pierwszej warstwy" + +msgid "Identifying build plate type" +msgstr "Identyfikacja typu stołu" + +msgid "Calibrating Micro Lidar" +msgstr "Kalibracja Mikro Lidar" + +msgid "Homing toolhead" +msgstr "Przywracanie głowicy drukującej na pozycję bazową" + +msgid "Cleaning nozzle tip" +msgstr "Czyszczenie końcówki dyszy" + +msgid "Checking extruder temperature" +msgstr "Sprawdzanie temperatury extrudera" + +msgid "Printing was paused by the user" +msgstr "Druk został wstrzymany przez użytkownika" + +msgid "Pause of front cover falling" +msgstr "Pauza - osłona głowicy drukującej odpadła" + +msgid "Calibrating the micro lida" +msgstr "Kalibracja mikro Lidaru" + +msgid "Calibrating extrusion flow" +msgstr "Kalibracja przepływu ekstruzji" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Pauza z powodu awarii temperatury dyszy" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Pauza z powodu awarii temperatury stołu" + +msgid "Filament unloading" +msgstr "Wyładowywanie filamentu" + +msgid "Skip step pause" +msgstr "Pauza pominięcia kroku" + +msgid "Filament loading" +msgstr "Wczytywanie filamentu" + +msgid "Motor noise calibration" +msgstr "Kalibracja hałasu silnika" + +msgid "Paused due to AMS lost" +msgstr "Pauza z powodu utraty AMS" + +msgid "Paused due to low speed of the heat break fan" +msgstr "Wstrzymano z powodu niskiej prędkości wentylatora chłodzącego hotend" + +msgid "Paused due to chamber temperature control error" +msgstr "Pauza z powodu błędu kontroli temperatury komory" + +msgid "Cooling chamber" +msgstr "Chłodzenie komory" + +msgid "Paused by the Gcode inserted by user" +msgstr "Pauza spowodowana wstawionym przez użytkownika Gcode" + +msgid "Motor noise showoff" +msgstr "Prezentacja hałasu silnika" + +msgid "Nozzle filament covered detected pause" +msgstr "Pauza - dysza pokryta filamentem" + +msgid "Cutter error pause" +msgstr "Pauza z powodu błędu noża" + +msgid "First layer error pause" +msgstr "Pauza z powodu błędu pierwszej warstwy" + +msgid "Nozzle clog pause" +msgstr "Pauza z powodu zatkanej dyszy" + +msgid "Unknown" +msgstr "Nieznany" + +msgid "Fatal" +msgstr "Krytyczny" + +msgid "Serious" +msgstr "Poważny" + +msgid "Common" +msgstr "Wspólny" + +msgid "Update successful." +msgstr "Aktualizacja udana." + +msgid "Downloading failed." +msgstr "Pobieranie nie powiodło się." + +msgid "Verification failed." +msgstr "Weryfikacja nieudana." + +msgid "Update failed." +msgstr "Aktualizacja nieudana." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"Aktualna temperatura komory lub docelowa temperatura komory przekracza 45℃. " +"Aby uniknąć zatkania extrudera, niedopuszczalne jest ładowanie filamentu o " +"niskiej temperaturze (PLA/PETG/TPU)." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"W extruderze jest załadowany filament o niskiej temperaturze (PLA/PETG/TPU). " +"Aby uniknąć zatkania extrudera, nie wolno ustawiać temperatury komory " +"powyżej 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Jeśli ustawisz temperaturę komory poniżej 40℃, kontrola temperatury komory " +"nie będzie aktywowana. Docelowa temperatura komory zostanie automatycznie " +"ustawiona na 0℃." + +msgid "Failed to start printing job" +msgstr "Nie udało się rozpocząć zadania drukowania" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "Ta kalibracja nie obsługuje obecnie wybranego średnicy dyszy" + +msgid "Current flowrate cali param is invalid" +msgstr "Bieżący parametr kalibracji przepływu jest nieprawidłowy" + +msgid "Selected diameter and machine diameter do not match" +msgstr "Wybrana średnica i średnica maszyny nie pasują do siebie" + +msgid "Failed to generate cali gcode" +msgstr "Nie udało się wygenerować kodu kalibracji" + +msgid "Calibration error" +msgstr "Błąd kalibracji" + +msgid "TPU is not supported by AMS." +msgstr "TPU nie jest obsługiwane przez AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF nie jest obsługiwane przez AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Wilgotne PVA staje się elastyczne i może utknąć wewnątrz AMS, proszę " +"pamiętać o wysuszeniu go przed użyciem." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"Filamenty CF/GF są twarde i kruche, łatwo je złamać i zaklinować w AMS, " +"proszę używać ostrożnie." + +msgid "default" +msgstr "domyślny" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Edytuj własny G-code (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "Prametry zdefiniowane (Podwójne kliknięcie, aby dodać do G-code)" + +msgid "Search gcode placeholders" +msgstr "Szukaj zmiennych w G-code" + +msgid "Add selected placeholder to G-code" +msgstr "Dodaj wybraną zmienną typu placeholder do G-code" + +msgid "Select placeholder" +msgstr "Wybierz zmienną" + +msgid "[Global] Slicing State" +msgstr "[Globalny] Stan cięcia" + +msgid "Read Only" +msgstr "Tylko do odczytu" + +msgid "Read Write" +msgstr "Odczyt/Zapis" + +msgid "Slicing State" +msgstr "Stan cięcia" + +msgid "Print Statistics" +msgstr "Statystyki druku" + +msgid "Objects Info" +msgstr "Info o obiektach" + +msgid "Dimensions" +msgstr "Wymiary" + +msgid "Temperatures" +msgstr "Temperatura" + +msgid "Timestamps" +msgstr "Sygnatura czasowa" + +#, boost-format +msgid "Specific for %1%" +msgstr "Specyficzne dla %1%" + +msgid "Presets" +msgstr "Profile" + +msgid "Print settings" +msgstr "Ustawienia druku" + +msgid "Filament settings" +msgstr "Ustawienia filamentu" + +msgid "SLA Materials settings" +msgstr "Ustawienia materiału SLA" + +msgid "Printer settings" +msgstr "Ustawienia drukarki" + +msgid "parameter name" +msgstr "nazwa parametru" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s nie może być procentem" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "Wartość %s jest poza zakresem, kontynuować?" + +msgid "Parameter validation" +msgstr "Walidacja parametru" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "Wartość %s jest spoza zakresu. Poprawny zakres wynosi od %d do %d." + +msgid "Value is out of range." +msgstr "Wartość jest poza zakresem." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"Czy to %s%% czy %s %s?\n" +"TAK dla %s%%,\n" +"NIE dla %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Nieprawidłowy format wejściowy. Oczekiwany jest wektor wymiarów w " +"następującym formacie: \"%1%\"" + +msgid "Input value is out of range" +msgstr "Wartość wejściowa jest poza zakresem" + +msgid "Some extension in the input is invalid" +msgstr "Rozszerzenie w danych wejściowych jest nieprawidłowe" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Nieprawidłowy format. Oczekiwano formatu wektorowego: \"%1%\"" + +msgid "Layer Height" +msgstr "Wysokość warstwy" + +msgid "Line Width" +msgstr "Szerokość linii" + +msgid "Fan Speed" +msgstr "Prędkość wentylatora" + +msgid "Temperature" +msgstr "Temperatura" + +msgid "Flow" +msgstr "Przepływ" + +msgid "Tool" +msgstr "Narzędzie" + +msgid "Layer Time" +msgstr "Czas warstwy" + +msgid "Layer Time (log)" +msgstr "Czas warstwy (log)" + +msgid "Height: " +msgstr "Wysokość: " + +msgid "Width: " +msgstr "Szerokość: " + +msgid "Speed: " +msgstr "Prędkość: " + +msgid "Flow: " +msgstr "Przepływ: " + +msgid "Layer Time: " +msgstr "Czas warstwy: " + +msgid "Fan: " +msgstr "Wentylator: " + +msgid "Temperature: " +msgstr "Temperatura: " + +msgid "Loading G-codes" +msgstr "Ładowanie G-kodów" + +msgid "Generating geometry vertex data" +msgstr "Generowanie danych wierzchołków geometrii" + +msgid "Generating geometry index data" +msgstr "Generowanie danych indeksu geometrii" + +msgid "Statistics of All Plates" +msgstr "Statystyki wszystkich płyt roboczych" + +msgid "Display" +msgstr "Pokaż" + +msgid "Flushed" +msgstr "Płukane" + +msgid "Tower" +msgstr "Wieża" + +msgid "Total" +msgstr "Łącznie" + +msgid "Total Estimation" +msgstr "Podsumowanie" + +msgid "Total time" +msgstr "Czas całkowity" + +msgid "Total cost" +msgstr "Koszt całkowity" + +msgid "up to" +msgstr "do" + +msgid "above" +msgstr "powyżej" + +msgid "from" +msgstr "od" + +msgid "Color Scheme" +msgstr "Schemat kolorów" + +msgid "Time" +msgstr "Czas" + +msgid "Percent" +msgstr "Procent" + +msgid "Used filament" +msgstr "Użyty filament" + +msgid "Layer Height (mm)" +msgstr "Wysokość warstwy (mm)" + +msgid "Line Width (mm)" +msgstr "Szerokość linii (mm)" + +msgid "Speed (mm/s)" +msgstr "Prędkość (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Prędkość wentylatora (%)" + +msgid "Temperature (°C)" +msgstr "Temperatura (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Natężenie przepływu (mm³/s)" + +msgid "Travel" +msgstr "Prędkość jałowa" + +msgid "Seams" +msgstr "Szwy" + +msgid "Retract" +msgstr "Retrakcja" + +msgid "Unretract" +msgstr "Unretrakcja" + +msgid "Filament Changes" +msgstr "Zmiany filamentu" + +msgid "Wipe" +msgstr "Czyszczenie" + +msgid "Options" +msgstr "Opcje" + +msgid "travel" +msgstr "prędkość jałowa" + +msgid "Extruder" +msgstr "Extruder" + +msgid "Filament change times" +msgstr "Liczba zmian filamentu" + +msgid "Cost" +msgstr "Koszt" + +msgid "Color change" +msgstr "Zmiana koloru" + +msgid "Print" +msgstr "Drukuj" + +msgid "Printer" +msgstr "Drukarka" + +msgid "Custom g-code" +msgstr "Niestandardowy G-code" + +msgid "ToolChange" +msgstr "Zmiana narzędzia" + +msgid "Time Estimation" +msgstr "Szacowany czas" + +msgid "Normal mode" +msgstr "Tryb normalny" + +msgid "Total Filament" +msgstr "Całkowita ilość filamentu" + +msgid "Model Filament" +msgstr "Filament modelu" + +msgid "Prepare time" +msgstr "Czas przygotowania" + +msgid "Model printing time" +msgstr "Czas druku modelu" + +msgid "Switch to silent mode" +msgstr "Przełącz się w tryb cichy" + +msgid "Switch to normal mode" +msgstr "Przełącz się w tryb normalny" + +msgid "Variable layer height" +msgstr "Zmienna wysokość warstwy" + +msgid "Adaptive" +msgstr "Adaptacyjny" + +msgid "Quality / Speed" +msgstr "Jakość / Prędkość" + +msgid "Smooth" +msgstr "Wygładź" + +msgid "Radius" +msgstr "Promień" + +msgid "Keep min" +msgstr "Zachowaj minimum" + +msgid "Left mouse button:" +msgstr "Lewy przycisk myszy:" + +msgid "Add detail" +msgstr "Dodaj szczegół" + +msgid "Right mouse button:" +msgstr "Prawy przycisk myszy:" + +msgid "Remove detail" +msgstr "Usuń szczegół" + +msgid "Shift + Left mouse button:" +msgstr "Shift + Lewy przycisk myszy:" + +msgid "Reset to base" +msgstr "Resetuj do ustawień podstawowych" + +msgid "Shift + Right mouse button:" +msgstr "Shift + Prawy przycisk myszy:" + +msgid "Smoothing" +msgstr "Wygładzanie" + +msgid "Mouse wheel:" +msgstr "Kółko myszy:" + +msgid "Increase/decrease edit area" +msgstr "Zwiększ/zmniejsz obszar edycji" + +msgid "Sequence" +msgstr "Kolejność" + +msgid "Mirror Object" +msgstr "Lustro obiektu" + +msgid "Tool Move" +msgstr "Przesuwanie narzędzia" + +msgid "Tool Rotate" +msgstr "Obracanie narzędziem" + +msgid "Move Object" +msgstr "Przesuwanie obiektu" + +msgid "Auto Orientation options" +msgstr "Opcje automatycznej orientacji" + +msgid "Enable rotation" +msgstr "Włącz obracanie" + +msgid "Optimize support interface area" +msgstr "Optymalizacja obszaru warstwy łączącej" + +msgid "Orient" +msgstr "Orientacja" + +msgid "Arrange options" +msgstr "Opcje rozmieszczania" + +msgid "Spacing" +msgstr "Rozstaw" + +msgid "0 means auto spacing." +msgstr "Wartość 0 oznacza automatyczny odstęp." + +msgid "Auto rotate for arrangement" +msgstr "Automatyczna rotacja podczas rozmieszczania" + +msgid "Allow multiple materials on same plate" +msgstr "Pozwól na kilka filamentów na tej samej płycie" + +msgid "Avoid extrusion calibration region" +msgstr "Unikaj obszaru kalibracji ekstruzji" + +msgid "Align to Y axis" +msgstr "Wyrównaj do osi Y" + +msgid "Add plate" +msgstr "Dodaj płytę" + +msgid "Auto orient" +msgstr "Automatyczna orientacja" + +msgid "Arrange all objects" +msgstr "Rozmieść wszystkie obiekty" + +msgid "Arrange objects on selected plates" +msgstr "Rozmieść obiekty na wybranych płytach" + +msgid "Split to objects" +msgstr "Podziel na obiekty" + +msgid "Split to parts" +msgstr "Podziel na części" + +msgid "Assembly View" +msgstr "Widok montażu" + +msgid "Select Plate" +msgstr "Wybierz płytę" + +msgid "Assembly Return" +msgstr "Powrót do montażu" + +msgid "return" +msgstr "wróć" + +msgid "Paint Toolbar" +msgstr "Pasek narzędzi do malowania" + +msgid "Explosion Ratio" +msgstr "Współczynnik wybuchu" + +msgid "Section View" +msgstr "Widok przekroju" + +msgid "Assemble Control" +msgstr "Kontrola montażu" + +msgid "Total Volume:" +msgstr "Całkowita objętość:" + +msgid "Assembly Info" +msgstr "Informacje o montażu" + +msgid "Volume:" +msgstr "Objętość:" + +msgid "Size:" +msgstr "Rozmiar:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"Wykryto konflikty ścieżek G-code na warstwie %d, z = %.2lf mm. Proszę " +"oddalić od siebie obiekty będące w konflikcie (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "Obiekt jest położony poza granicą płyty." + +msgid "A G-code path goes beyond the max print height." +msgstr "Trasa G-code wychodzi poza maksymalną wysokość druku." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Trasa G-code wychodzi poza granicę płyty." + +msgid "Only the object being edit is visible." +msgstr "Widoczny jest tylko edytowany obiekt." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Obiekt jest umieszczony poza granicą płyty lub przekracza limit wysokości.\n" +"Rozwiąż problem, przesuwając go całkowicie na płytę lub poza nią oraz " +"potwierdzając, że wysokość mieści się w obszarze roboczym." + +msgid "Calibration step selection" +msgstr "Wybór kroku kalibracji" + +msgid "Micro lidar calibration" +msgstr "Kalibracja mikro lidar" + +msgid "Bed leveling" +msgstr "Poziomowanie stołu" + +msgid "Vibration compensation" +msgstr "Kompensacja drgań" + +msgid "Motor noise cancellation" +msgstr "Redukcja hałasu silników" + +msgid "Calibration program" +msgstr "Program kalibracji" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"Program kalibracji automatycznie wykrywa stan urządzenia, aby zminimalizować " +"odchylenia.\n" +"Utrzymuje urządzenie w optymalnej wydajności." + +msgid "Calibration Flow" +msgstr "Postęp kalibracji" + +msgid "Start Calibration" +msgstr "Rozpocznij kalibrację" + +msgid "Completed" +msgstr "Zakończone" + +msgid "Calibrating" +msgstr "Kalibracja" + +msgid "No step selected" +msgstr "Nie wybrano kroku" + +msgid "Auto-record Monitoring" +msgstr "Monitorowanie Auto-nagrywania" + +msgid "Go Live" +msgstr "Na żywo" + +msgid "Liveview Retry" +msgstr "Ponów podgląd na żywo" + +msgid "Resolution" +msgstr "Rozdzielczość" + +msgid "Enable" +msgstr "Włącz" + +msgid "Hostname or IP" +msgstr "Nazwa hosta lub IP" + +msgid "Custom camera source" +msgstr "Zewnętrzna kamera IP" + +msgid "Show \"Live Video\" guide page." +msgstr "Pokaż stronę z przewodnikiem \"Transmisja na żywo\"." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Podłącz drukarkę (LAN)" + +msgid "Please input the printer access code:" +msgstr "Proszę podać kod dostępu do drukarki:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Możesz znaleźć go w sekcji \"Ustawienia > Sieć > Kod połączenia\"\n" +"na drukarce, jak pokazano na rysunku:" + +msgid "Invalid input." +msgstr "Nieprawidłowe dane wejściowe." + +msgid "New Window" +msgstr "Nowe okno" + +msgid "Open a new window" +msgstr "Otwórz nowe okno" + +msgid "Application is closing" +msgstr "Aplikacja zamyka się" + +msgid "Closing Application while some presets are modified." +msgstr "Zamykanie aplikacji podczas modyfikacji niektórych ustawień." + +msgid "Logging" +msgstr "Logowanie" + +msgid "Preview" +msgstr "Podgląd" + +msgid "Multi-device" +msgstr "Wiele urządzeń" + +msgid "Project" +msgstr "Projekt" + +msgid "Yes" +msgstr "Tak" + +msgid "No" +msgstr "Nie" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "" +"zostanie zamknięta przed utworzeniem nowego modelu. Czy chcesz kontynuować?" + +msgid "Slice plate" +msgstr "Potnij aktualną płytę" + +msgid "Print plate" +msgstr "Drukuj aktualną płytę" + +msgid "Slice all" +msgstr "Potnij wszystkie płyty" + +msgid "Export G-code file" +msgstr "Eksportuj plik G-code" + +msgid "Export plate sliced file" +msgstr "Eksportuj plik pociętej płyty" + +msgid "Export all sliced file" +msgstr "Eksportuj wszystkie pocięte płyty" + +msgid "Print all" +msgstr "Drukuj wszystkie płyty" + +msgid "Send all" +msgstr "Wyślij wszystko" + +msgid "Keyboard Shortcuts" +msgstr "Skróty klawiszowe" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Pokaż listę skrótów klawiszowych" + +msgid "Setup Wizard" +msgstr "Kreator konfiguracji" + +msgid "Show Configuration Folder" +msgstr "Pokaż folder konfiguracji" + +msgid "Show Tip of the Day" +msgstr "Pokaż Poradę Dnia" + +msgid "Check for Update" +msgstr "Sprawdź dostępność aktualizacji" + +msgid "Open Network Test" +msgstr "Otwórz Test Sieci" + +#, c-format, boost-format +msgid "&About %s" +msgstr "O &%s" + +msgid "Upload Models" +msgstr "Prześlij modele" + +msgid "Download Models" +msgstr "Pobierz modele" + +msgid "Default View" +msgstr "Domyślny widok" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Góra" + +msgid "Top View" +msgstr "Widok z góry" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Dół" + +msgid "Bottom View" +msgstr "Widok z dołu" + +msgid "Front" +msgstr "Przód" + +msgid "Front View" +msgstr "Widok z przodu" + +msgid "Rear" +msgstr "Tył" + +msgid "Rear View" +msgstr "Widok z tyłu" + +msgid "Left" +msgstr "Lewo" + +msgid "Left View" +msgstr "Widok z lewej" + +msgid "Right" +msgstr "Prawo" + +msgid "Right View" +msgstr "Widok z prawej" + +msgid "Start a new window" +msgstr "Otwórz nowe okno" + +msgid "New Project" +msgstr "Nowy projekt" + +msgid "Start a new project" +msgstr "Rozpocznij nowy projekt" + +msgid "Open a project file" +msgstr "Otwórz plik projektu" + +msgid "Recent projects" +msgstr "Ostatnie projekty" + +msgid "Save Project" +msgstr "Zapisz projekt" + +msgid "Save current project to file" +msgstr "Zapisz bieżący projekt do pliku" + +msgid "Save Project as" +msgstr "Zapisz projekt jako" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Zapisz bieżący projekt jako" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Importuj 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Wczytaj model" + +msgid "Import Zip Archive" +msgstr "Importuj archiwum ZIP" + +msgid "Load models contained within a zip archive" +msgstr "Wczytaj modele zawarte w archiwum ZIP" + +msgid "Import Configs" +msgstr "Importuj konfiguracje" + +msgid "Load configs" +msgstr "Wczytaj konfiguracje" + +msgid "Import" +msgstr "Importuj" + +msgid "Export all objects as one STL" +msgstr "Eksportuj wszystkie obiekty jako jeden plik STL" + +msgid "Export all objects as STLs" +msgstr "Eksportuj wszystkie obiekty jako pliki STL" + +msgid "Export Generic 3MF" +msgstr "Eksportuj ogólny format 3MF" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Eksportuj plik 3MF bez użycia niektórych rozszerzeń 3MF" + +msgid "Export current sliced file" +msgstr "Eksportuj bieżący plik cięcia" + +msgid "Export all plate sliced file" +msgstr "Eksportuj wszystkie pliki po pocięciu płyt" + +msgid "Export G-code" +msgstr "Eksportuj plik G-code" + +msgid "Export current plate as G-code" +msgstr "Eksportuj bieżący stół jako plik G-code" + +msgid "Export Preset Bundle" +msgstr "Eksport zestawu ustawień" + +msgid "Export current configuration to files" +msgstr "Eksportuj bieżącą konfigurację do plików" + +msgid "Export" +msgstr "Eksportuj" + +msgid "Quit" +msgstr "Wyjdź" + +msgid "Undo" +msgstr "Cofnij" + +msgid "Redo" +msgstr "Ponów" + +msgid "Cut selection to clipboard" +msgstr "Kopiuj wybór do schowka" + +msgid "Copy" +msgstr "Kopiuj" + +msgid "Copy selection to clipboard" +msgstr "Kopiuj zaznaczenie do schowka" + +msgid "Paste" +msgstr "Wklej" + +msgid "Paste clipboard" +msgstr "Wklej ze schowka" + +msgid "Delete selected" +msgstr "Usuń zaznaczone" + +msgid "Deletes the current selection" +msgstr "Usuwa bieżące zaznaczenie" + +msgid "Delete all" +msgstr "Usuń wszystko" + +msgid "Deletes all objects" +msgstr "Usuwa wszystkie obiekty" + +msgid "Clone selected" +msgstr "Klonuj zaznaczone" + +msgid "Clone copies of selections" +msgstr "Tworzy kopie zaznaczeń" + +msgid "Select all" +msgstr "Zaznacz wszystko" + +msgid "Selects all objects" +msgstr "Zaznacza wszystkie obiekty" + +msgid "Deselect all" +msgstr "Odznacz wszystko" + +msgid "Deselects all objects" +msgstr "Odznacza wszystkie obiekty" + +msgid "Use Perspective View" +msgstr "Użyj widoku perspektywicznego" + +msgid "Use Orthogonal View" +msgstr "Użyj widoku ortogonalnego" + +msgid "Show &G-code Window" +msgstr "Pokaż okno &G-code" + +msgid "Show g-code window in Previce scene" +msgstr "Pokaż okno G-code w scenie podglądu" + +msgid "Show 3D Navigator" +msgstr "Pokaż 3D Navigator" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "Pokaż 3D Navigator w widoku Przygotowanie i Podgląd" + +msgid "Reset Window Layout" +msgstr "Zresetuj układ okna" + +msgid "Reset to default window layout" +msgstr "Przywróć domyślny układ okna" + +msgid "Show &Labels" +msgstr "Pokaż &etykiety" + +msgid "Show object labels in 3D scene" +msgstr "Pokaż etykiety obiektów w scenie 3D" + +msgid "Show &Overhang" +msgstr "Pokaż &nawisy" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Pokaż podświetlenie nawisów obiektów w scenie 3D" + +msgid "Preferences" +msgstr "Preferencje" + +msgid "Help" +msgstr "Pomoc" + +msgid "Temperature Calibration" +msgstr "Kalibracja temperatury" + +msgid "Pass 1" +msgstr "Procedura 1" + +msgid "Flow rate test - Pass 1" +msgstr "Test natężenia przepływu - Procedura 1" + +msgid "Pass 2" +msgstr "Procedura 2" + +msgid "Flow rate test - Pass 2" +msgstr "Test natężenia przepływu - Procedura 2" + +msgid "Flow rate" +msgstr "Natężenie przepływu" + +msgid "Pressure advance" +msgstr "Wzrost ciśnienia (PA)" + +msgid "Retraction test" +msgstr "Test Retrakcji" + +msgid "Orca Tolerance Test" +msgstr "Orca Test Tolerancji" + +msgid "Max flowrate" +msgstr "Maksymalne natężenie przepływu" + +msgid "VFA" +msgstr "Test VFA" + +msgid "More..." +msgstr "Więcej..." + +msgid "Tutorial" +msgstr "Samouczek" + +msgid "Calibration help" +msgstr "Pomoc w kalibracji" + +msgid "More calibrations" +msgstr "Więcej kalibracji" + +msgid "&Open G-code" +msgstr "&Otwórz plik G-code" + +msgid "Open a G-code file" +msgstr "Otwórz plik G-code" + +msgid "Re&load from Disk" +msgstr "Ponownie załaduj z dysku" + +msgid "Reload the plater from disk" +msgstr "Ponownie załaduj płytę z dysku" + +msgid "Export &Toolpaths as OBJ" +msgstr "Eksportuj &ścieżki narzędzi jako OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Eksportuj ścieżki narzędzi jako OBJ" + +msgid "Open &Slicer" +msgstr "Otwórz &Slicer" + +msgid "Open Slicer" +msgstr "Otwórz Slicer" + +msgid "&Quit" +msgstr "&Wyjście" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Wyjdź %s" + +msgid "&File" +msgstr "&Plik" + +msgid "&View" +msgstr "i Widok" + +msgid "&Help" +msgstr "i Pomoc" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "Istnieje plik o tej samej nazwie: %s. Czy chcesz go nadpisać ?." + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "Istnieje plik o tej samej nazwie: %s. Czy chcesz go nadpisać ?." + +msgid "Overwrite file" +msgstr "Nadpisz plik" + +msgid "Yes to All" +msgstr "Tak dla wszystkich" + +msgid "No to All" +msgstr "Nie dla wszystkich" + +msgid "Choose a directory" +msgstr "Wybierz katalog" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "Wyeksportowano %d konfigurację (tylko nie-systemową)." +msgstr[1] "Wyeksportowano %d konfiguracje (tylko nie-systemowe)." +msgstr[2] "Wyeksportowano %d konfiguracji (tylko nie-systemowe)." + +msgid "Export result" +msgstr "Wynik eksportu" + +msgid "Select profile to load:" +msgstr "Wybierz profil do wczytania:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +"Zaimportowano %d konfigurację (tylko te, które nie są systemowe i " +"kompatybilne)." +msgstr[1] "" +"Zaimportowano %d konfiguracje (tylko te, które nie są systemowe i " +"kompatybilne)." +msgstr[2] "" +"Zaimportowano %d konfiguracji (tylko te, które nie są systemowe i " +"kompatybilne)." + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"Podpowiedź: Upewnij się, że dodałeś odpowiednią drukarkę przed " +"zaimportowaniem konfiguracji." + +msgid "Import result" +msgstr "Wynik importu" + +msgid "File is missing" +msgstr "Plik nie istnieje" + +msgid "The project is no longer available." +msgstr "Projekt jest już niedostępny." + +msgid "Filament Settings" +msgstr "Ustawienia filamentu" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Czy chcesz zsynchronizować swoje dane osobiste z Bambu Cloud? \n" +"Zawiera to następujące informacje:\n" +"1. Ustawienia procesu\n" +"2. Ustawienia filamentu\n" +"3. Ustawienia drukarki" + +msgid "Synchronization" +msgstr "Synchronizacja" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" +"Urządzenie nie może obsługiwać kolejnych połączeń. Proszę spróbować ponownie " +"później." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" +"Odtwarzacz nie działa poprawnie. Proszę ponownie zainstalować odtwarzacz " +"systemowy." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"Odtwarzacz nie został załadowany, proszę kliknąć przycisk \"Odtwórz\", aby " +"spróbować ponownie." + +msgid "Please confirm if the printer is connected." +msgstr "Proszę potwierdzić, czy drukarka jest podłączona." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"Drukarka aktualnie pobiera dane. Proszę spróbować ponownie po zakończeniu " +"tego procesu." + +msgid "Printer camera is malfunctioning." +msgstr "Kamera drukarki jest uszkodzona." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Wystąpił problem. Proszę zaktualizować oprogramowanie drukarki i spróbować " +"ponownie." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"Tryb podglądu LAN jest wyłączony. Proszę włączyć podgląd na żywo na ekranie " +"drukarki." + +msgid "Please enter the IP of printer to connect." +msgstr "Proszę podać adres IP drukarki, aby nawiązać połączenie." + +msgid "Initializing..." +msgstr "Inicjalizacja..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "" +"Połączenie nieudane. Proszę sprawdzić połączenie sieciowe i spróbować " +"ponownie." + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Proszę sprawdzić połączenie sieciowe i spróbować ponownie. Jeśli problem " +"nadal występuje, można ponownie uruchomić lub zaktualizować drukarkę." + +msgid "The printer has been logged out and cannot connect." +msgstr "Drukarka została wylogowana i nie można się z nią połączyć." + +msgid "Stopped." +msgstr "Zatrzymano." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "Błąd połączenia LAN (Nie można uruchomić podglądu na żywo)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Do wykonania tej operacji wymagane są narzędzia wirtualnej kamery!\n" +"Czy chcesz je zainstalować?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Pobieranie narzędzi wirtualnej kamery" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Inna wirtualna kamera jest już uruchomiona.\n" +"Snapmaker Orca obsługuje tylko jedną wirtualną kamerę.\n" +"Czy chcesz zatrzymać tę wirtualną kamerę?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Inicjalizacja wirtualnej kamery nie powiodła się (%s)!" + +msgid "Network unreachable" +msgstr "Brak połączenia z siecią" + +msgid "Information" +msgstr "Informacja" + +msgid "Playing..." +msgstr "Odtwarzanie..." + +msgid "Year" +msgstr "Rok" + +msgid "Month" +msgstr "Miesiąc" + +msgid "All Files" +msgstr "Wszystkie pliki" + +msgid "Group files by year, recent first." +msgstr "Grupuj pliki według roku, najnowsze na początku." + +msgid "Group files by month, recent first." +msgstr "Grupuj pliki według miesiąca, najnowsze na początku." + +msgid "Show all files, recent first." +msgstr "Pokaż wszystkie pliki, najnowsze na początku." + +msgid "Switch to timelapse files." +msgstr "Przełącz się na pliki timelapse." + +msgid "Video" +msgstr "Wideo" + +msgid "Switch to video files." +msgstr "Przełącz się na pliki wideo." + +msgid "Switch to 3mf model files." +msgstr "Przełącz się na pliki modeli 3mf." + +msgid "Delete selected files from printer." +msgstr "Usuń wybrane pliki z drukarki." + +msgid "Download" +msgstr "Pobierz" + +msgid "Download selected files from printer." +msgstr "Pobierz wybrane pliki z drukarki." + +msgid "Select" +msgstr "Wybierz" + +msgid "Batch manage files." +msgstr "Partycjonuj zarządzanie plikami." + +msgid "Refresh" +msgstr "Odśwież" + +msgid "Reload file list from printer." +msgstr "Przeładuj listę plików z drukarki." + +msgid "No printers." +msgstr "Brak drukarek." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Błąd połączenia [%d]!" + +msgid "Loading file list..." +msgstr "Wczytywanie listy plików..." + +msgid "No files" +msgstr "Brak plików" + +msgid "Load failed" +msgstr "Błąd ładowania" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Inicjalizacja nie powiodła się (Brak połączenia z urządzeniem)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"Przeglądanie plików na karcie SD nie jest obsługiwane w bieżącym " +"oprogramowaniu. Proszę zaktualizować oprogramowanie drukarki." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" +"Inicjalizacja nie powiodła się (brak dostępu do pamięci, włóż kartę SD)!" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "Połączenie LAN nieudane (Nie udało się wyświetlić zawartości karty SD)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "" +"Przeglądanie plików na karcie SD nie jest obsługiwane w trybie tylko LAN." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Inicjalizacja nie powiodła się (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +"Zamierzasz usunąć %u plik z drukarki. Czy na pewno chcesz kontynuować?" +msgstr[1] "" +"Zamierzasz usunąć %u pliki z drukarki. Czy na pewno chcesz kontynuować?" +msgstr[2] "" +"Zamierzasz usunąć %u plików z drukarki. Czy na pewno chcesz kontynuować?" + +msgid "Delete files" +msgstr "Usuń pliki" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Czy chcesz usunąć plik '%s' z drukarki?" + +msgid "Delete file" +msgstr "Usuń plik" + +msgid "Fetching model infomations ..." +msgstr "Pobieranie informacji o modelach..." + +msgid "Failed to fetch model information from printer." +msgstr "Nie udało się pobrać informacji o modelu z drukarki." + +msgid "Failed to parse model information." +msgstr "Nie udało się przeanalizować informacji o modelu." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +"Plik .gcode.3mf nie zawiera danych G-code. Proszę poddać go obróbce w " +"programie Snapmaker Orca i wyeksportować jako nowy plik .gcode.3mf." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "Plik '%s' został utracony! Proszę pobrać go ponownie." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"Plik: %s\n" +"Tytuł: %s\n" + +msgid "Download waiting..." +msgstr "Oczekiwanie na pobranie..." + +msgid "Play" +msgstr "Odtwórz" + +msgid "Open Folder" +msgstr "Otwórz folder" + +msgid "Download finished" +msgstr "Pobieranie zakończone" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Pobieranie %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Ponowne łączenie z drukarką, operacja nie może być teraz zakończona, spróbuj " +"ponownie później." + +msgid "File does not exist." +msgstr "Plik nie istnieje." + +msgid "File checksum error. Please retry." +msgstr "Błąd sumy kontrolnej pliku. Proszę spróbować ponownie." + +msgid "Not supported on the current printer version." +msgstr "Nieobsługiwane w obecnej wersji drukarki." + +msgid "Storage unavailable, insert SD card." +msgstr "Pamięć niedostępna, wstaw kartę SD." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Kod błędu: %d" + +msgid "Speed:" +msgstr "Prędkość:" + +msgid "Deadzone:" +msgstr "Martwa strefa:" + +msgid "Options:" +msgstr "Opcje:" + +msgid "Zoom" +msgstr "Powiększ" + +msgid "Translation/Zoom" +msgstr "Przesunięcie/Przybliżenie" + +msgid "3Dconnexion settings" +msgstr "Ustawienia 3Dconnexion" + +msgid "Swap Y/Z axes" +msgstr "Zamień osie Y/Z" + +msgid "Invert X axis" +msgstr "Odwróć oś X" + +msgid "Invert Y axis" +msgstr "Odwróć oś Y" + +msgid "Invert Z axis" +msgstr "Odwróć oś Z" + +msgid "Invert Yaw axis" +msgstr "Odwróć oś przechylenia (Yaw)" + +msgid "Invert Pitch axis" +msgstr "Odwróć oś pochylenia (Pitch)" + +msgid "Invert Roll axis" +msgstr "Odwróć oś obrotu (Roll)" + +msgid "Printing Progress" +msgstr "Postęp druku" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Warstwa: N/D" + +msgid "Clear" +msgstr "Wyczyść" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"Zakończyłeś drukowanie modelu,\n" +"ale synchronizacja informacji o ocenie nie powiodła się." + +msgid "How do you like this printing file?" +msgstr "Co sądzisz o tym pliku druku?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "(Ten model już został oceniony. Twoja ocena zastąpi poprzednią ocenę.)" + +msgid "Rate" +msgstr "Oceń" + +msgid "Camera" +msgstr "Kamera" + +msgid "SD Card" +msgstr "Karta SD" + +msgid "Camera Setting" +msgstr "Ustawienia kamery" + +msgid "Switch Camera View" +msgstr "Zmień widok kamery" + +msgid "Control" +msgstr "Sterowanie" + +msgid "Printer Parts" +msgstr "Typ dyszy" + +msgid "Print Options" +msgstr "Opcje drukowania" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "LED" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Komora" + +msgid "Bed" +msgstr "Stół" + +msgid "Debug Info" +msgstr "Informacje debugowania" + +msgid "No SD Card" +msgstr "Brak karty SD" + +msgid "SD Card Abnormal" +msgstr "Niezwykła karta SD" + +msgid "Cancel print" +msgstr "Anuluj drukowanie" + +msgid "Are you sure you want to cancel this print?" +msgstr "Czy na pewno chcesz anulować to drukowanie?" + +msgid "Downloading..." +msgstr "Pobieranie..." + +msgid "Cloud Slicing..." +msgstr "Cięcie w chmurze..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "W kolejce do cięcia w chmurze jest %s zadań przed tobą." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Warstwa: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Warstwa: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Przed załadowaniem lub rozładunkiem filamentu, podgrzej dyszę do temperatury " +"powyżej 170 stopni." + +msgid "Still unload" +msgstr "Wycofaj" + +msgid "Still load" +msgstr "Podaj" + +msgid "Please select an AMS slot before calibration" +msgstr "Przed kalibracją wybierz gniazdo AMS" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Nie można odczytać informacji o filamentach: filament jest załadowany w " +"głowicy drukującej, proszę go wyładować i spróbować ponownie." + +msgid "This only takes effect during printing" +msgstr "To działa tylko podczas drukowania" + +msgid "Silent" +msgstr "Cichy" + +msgid "Standard" +msgstr "Standard" + +msgid "Sport" +msgstr "Sport" + +msgid "Ludicrous" +msgstr "Szalony" + +msgid "Can't start this without SD card." +msgstr "Nie można rozpocząć bez karty SD." + +msgid "Rate the Print Profile" +msgstr "Oceń profil druku" + +msgid "Comment" +msgstr "Komentarz" + +msgid "Rate this print" +msgstr "Oceń ten wydruk" + +msgid "Add Photo" +msgstr "Dodaj zdjęcie" + +msgid "Delete Photo" +msgstr "Usuń zdjęcie" + +msgid "Submit" +msgstr "Prześlij" + +msgid "Please click on the star first." +msgstr "Najpierw kliknij gwiazdkę." + +msgid "InFo" +msgstr "Informacje" + +msgid "Get oss config failed." +msgstr "Pobranie konfiguracji OSS nie powiodło się." + +msgid "Upload Pictrues" +msgstr "Prześlij obrazy" + +msgid "Number of images successfully uploaded" +msgstr "Liczba pomyślnie przesłanych obrazów" + +msgid " upload failed" +msgstr " przesyłanie nie powiodło się" + +msgid " upload config prase failed\n" +msgstr " błąd przesyłania konfiguracji\n" + +msgid " No corresponding storage bucket\n" +msgstr " Brak odpowiadającego pojemnika na dane\n" + +msgid " can not be opened\n" +msgstr " nie można otworzyć\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"Podczas procesu przesyłania obrazów wystąpiły następujące problemy. Czy " +"chcesz je zignorować?\n" +"\n" + +msgid "info" +msgstr "info" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "Synchronizowanie wyników drukowania. Spróbuj ponownie za kilka sekund." + +msgid "Upload failed\n" +msgstr "Przesyłanie nie powiodło się\n" + +msgid "obtaining instance_id failed\n" +msgstr "nie udało się uzyskać instance_id\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Wynik twojego komentarza nie może być przesłany z powodu następujących " +"przyczyn:\n" +"\n" +" kod błędu: " + +msgid "error message: " +msgstr "komunikat o błędzie: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Czy chcesz przenieść się na stronę internetową w celu oceny?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Niektóre z twoich zdjęć nie zostały przesłane. Chcesz przekierować się na " +"stronę internetową w celu oceny?" + +msgid "You can select up to 16 images." +msgstr "Możesz wybrać maksymalnie 16 zdjęć." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"Aby wystawić pozytywną ocenę (4 lub 5 gwiazdek), wymagana \n" +"jest co najmniej jedna udana rejestracja tego profilu druku." + +msgid "Status" +msgstr "Status" + +msgid "Update" +msgstr "Aktualizacja" + +msgid "Don't show again" +msgstr "Nie pokazuj ponownie" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s błąd" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s wykryto błąd" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s ostrzeżenie" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s ma ostrzeżenie" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s info" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s informacje" + +msgid "Skip" +msgstr "Pomiń" + +msgid "Newer 3mf version" +msgstr "Nowa wersja 3mf" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" +"Wersja pliku 3MF jest w wersji Beta i jest nowsza niż obecna wersja " +"Snapmaker Orca." + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "Jeśli chciałbyś wypróbować Snapmaker Orca Beta, możesz kliknąć tutaj." + +msgid "Download Beta Version" +msgstr "Pobierz wersje Beta" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "Wersja pliku 3MF jest nowsza niż obecna w wersji Snapmaker Orca." + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" +"Zaktualizowanie Snapmaker Orca może umożliwić korzystanie ze wszystkich funkcji " +"pliku 3MF." + +msgid "Current Version: " +msgstr "Obecna wersja:" + +msgid "Latest Version: " +msgstr "Najnowsza wersja:" + +msgid "Not for now" +msgstr "Nie teraz" + +msgid "3D Mouse disconnected." +msgstr "3D Mouse niepodłączona." + +msgid "Configuration can update now." +msgstr "Konfiguracja może teraz zostać zaktualizowana." + +msgid "Detail." +msgstr "Szczegół." + +msgid "Integration was successful." +msgstr "Logowanie udane." + +msgid "Integration failed." +msgstr "Integracja nieudana." + +msgid "Undo integration was successful." +msgstr "Operacja cofnięcia (undo) została pomyślnie zintegrowana." + +msgid "New network plug-in available." +msgstr "Dostępna jest aktualizacja wtyczki sieciowej." + +msgid "Details" +msgstr "Szczegóły" + +msgid "New printer config available." +msgstr "Dostępna jest nowa konfiguracja drukarki." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "Cofnij nieudaną integrację." + +msgid "Exporting." +msgstr "Eksportuj." + +msgid "Software has New version." +msgstr "Dostępna jest nowa wersja aplikacji." + +msgid "Goto download page." +msgstr "Przejdź do strony pobierania." + +msgid "Open Folder." +msgstr "Otwórz folder." + +msgid "Safely remove hardware." +msgstr "Bezpiecznie usuń sprzęt." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d obiekt ma dostosowane wsparcie." +msgstr[1] "%1$d obiekty mają dostosowane wsparcie." +msgstr[2] "%1$d obiektów ma dostosowane wsparcie." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d obiekt jest pomalowany kolorem." +msgstr[1] "%1$d obiekty są pomalowanie kolorem." +msgstr[2] "%1$d obiektów jest pomalowanych kolorem." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d obiekt został załadowany jako część obiektu wyciętego." +msgstr[1] "%1$d obiekty zostały załadowane jako części obiektu wyciętego" +msgstr[2] "%1$d obiektów zostało załadowanych jako części obiektu wyciętego" + +msgid "ERROR" +msgstr "BŁĄD" + +msgid "COMPLETED" +msgstr "ZAKOŃCZONO" + +msgid "CANCELED" +msgstr "ANULOWANO" + +msgid "Cancel upload" +msgstr "Anuluj przesyłanie" + +msgid "Jump to" +msgstr "Przejdź do" + +msgid "Error:" +msgstr "Błąd:" + +msgid "Warning:" +msgstr "Ostrzeżenie:" + +msgid "Export successfully." +msgstr "Eksport zakończony sukcesem." + +msgid "Model file downloaded." +msgstr "Pobrano plik modelu." + +msgid "Serious warning:" +msgstr "Poważne ostrzeżenie:" + +msgid " (Repair)" +msgstr " (Naprawa)" + +msgid " Click here to install it." +msgstr " Kliknij tutaj, aby zainstalować." + +msgid "WARNING:" +msgstr "OSTRZEŻENIE:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "Twój model wymaga podpór! Włącz generowanie podpór." + +msgid "Gcode path overlap" +msgstr "Nakładanie się ścieżek Gcode" + +msgid "Support painting" +msgstr "Namaluj podpory" + +msgid "Color painting" +msgstr "Malowanie kolorem" + +msgid "Cut connectors" +msgstr "Utnij łącznik" + +msgid "Layers" +msgstr "Warstwy" + +msgid "Range" +msgstr "Zakres" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"Aplikacja nie może działać poprawnie, ponieważ wersja OpenGL jest niższa niż " +"2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Proszę zaktualizować sterownik karty graficznej." + +msgid "Unsupported OpenGL version" +msgstr "Nieobsługiwana wersja OpenGL" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Nie można załadować shaderów:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Błąd podczas ładowania shaderów" + +msgctxt "Layers" +msgid "Top" +msgstr "Góra" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Dół" + +msgid "Enable AI monitoring of printing" +msgstr "Włącz monitorowanie drukowania przez sztuczną inteligencję" + +msgid "Sensitivity of pausing is" +msgstr "Czułość pauzy wynosi" + +msgid "Enable detection of build plate position" +msgstr "Włącz wykrywanie położenia płyty roboczej" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"Jeśli punkt kontrolny lokalizacji płyty roboczej (kod QR), zostanie wykryty " +"w niewłaściwym miejscu, drukowanie zostanie wstrzymane." + +msgid "First Layer Inspection" +msgstr "Inspekcja pierwszej warstwy" + +msgid "Auto-recovery from step loss" +msgstr "Automatyczne odzyskiwanie po utracie kroków" + +msgid "Allow Prompt Sound" +msgstr "Zezwól na dźwiękowe powiadomienia" + +msgid "Filament Tangle Detect" +msgstr "Wykrywanie splątanych filamentów" + +msgid "Nozzle Clumping Detection" +msgstr "Wykrywanie \"zalepienia\" się dyszy" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" +"Sprawdź, czy dysza nie została zatkana filamentem lub innym obcym " +"przedmiotem." + +msgid "Nozzle Type" +msgstr "Rodzaj dyszy" + +msgid "Stainless Steel" +msgstr "Stal nierdzewna" + +msgid "Hardened Steel" +msgstr "Stal hartowana" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Globalne" + +msgid "Objects" +msgstr "Obiekty" + +msgid "Advance" +msgstr "Zaawansowane" + +msgid "Compare presets" +msgstr "Porównaj profile" + +msgid "View all object's settings" +msgstr "Wyświetl wszystkie ustawienia obiektów" + +msgid "Material settings" +msgstr "Ustawienia materiału" + +msgid "Remove current plate (if not last one)" +msgstr "Usuń bieżący stół (jeśli nie jest ostatnim)" + +msgid "Auto orient objects on current plate" +msgstr "Automatyczna orientacja obiektów na bieżącym stole" + +msgid "Arrange objects on current plate" +msgstr "Rozmieść obiekty na bieżącym stole" + +msgid "Unlock current plate" +msgstr "Odblokuj bieżący stół" + +msgid "Lock current plate" +msgstr "Zablokuj bieżący stół" + +msgid "Edit current plate name" +msgstr "Edytuj aktualną nazwę płyty" + +msgid "Move plate to the front" +msgstr "Umieść płytę jako pierwszą" + +msgid "Customize current plate" +msgstr "Dostosuj bieżący stół" + +#, boost-format +msgid " plate %1%:" +msgstr " płyty %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Nieprawidłowa nazwa, poniższe znaki są niedozwolone:" + +msgid "Sliced Info" +msgstr "Informacje o cięciu" + +msgid "Used Filament (m)" +msgstr "Użyty filament (m)" + +msgid "Used Filament (mm³)" +msgstr "Użyty filament (mm³)" + +msgid "Used Filament (g)" +msgstr "Użyty filament (g)" + +msgid "Used Materials" +msgstr "Użyte filamenty" + +msgid "Estimated time" +msgstr "Szacunkowy czas" + +msgid "Filament changes" +msgstr "Zmiany filamentu" + +msgid "Click to edit preset" +msgstr "Kliknij, aby edytować profil" + +msgid "Connection" +msgstr "Połączenie" + +msgid "Bed type" +msgstr "Typ płyty" + +msgid "Flushing volumes" +msgstr "Objętość płukania" + +msgid "Add one filament" +msgstr "Dodaj filament" + +msgid "Remove last filament" +msgstr "Usuń ostatni filament" + +msgid "Synchronize filament list from AMS" +msgstr "Synchronizuj listę filamentów z AMS" + +msgid "Set filaments to use" +msgstr "Wybierz filamenty do użycia" + +msgid "Search plate, object and part." +msgstr "Szukaj stołu, obiektu i części." + +msgid "Pellets" +msgstr "Granulat" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Brak odczytu filamentów w AMS. Aby wyświetlić informacje AMS, wybierz " +"drukarkę na stronie Urządzenia." + +msgid "Sync filaments with AMS" +msgstr "Synchronizuj filamenty z AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Synchronizacja filamentów z AMS usunie wszystkie obecnie wybrane profile " +"filamentu i koloru. Czy chcesz kontynuować?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Synchronizacja została już wykonana. Chcesz synchronizować tylko zmiany czy " +"zaktualizować wszystko ponownie?" + +msgid "Sync" +msgstr "Tylko zmiany" + +msgid "Resync" +msgstr "Zaktualizuj wszystko" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "Brak kompatybilnych filamentów, synchronizacja nie została wykonana." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Istnieją nieznane filamenty przypisane do ogólnych profili. Proszę " +"zaktualizować Snapmaker Orca lub zrestartować go, aby sprawdzić dostępność " +"aktualizacji profili systemowych." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Czy chcesz zapisać zmiany w \"%1%\"?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Pomyślnie odmontowano. Urządzenie %s(%s) może teraz być bezpiecznie usunięte " +"z komputera." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "Nie można wypiąć urządzenia %s(%s)." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "Wykryto poprzedni niezapisany projekt. Czy chcesz go przywrócić?" + +msgid "Restore" +msgstr "Przywróć" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"Aktualna temperatura podgrzewanego stołu jest stosunkowo wysoka. Dysza może " +"się zatkać podczas drukowania tym filamentu w zamkniętej obudowie. Proszę " +"otworzyć drzwi przednie i/lub zdjąć górny panel." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"Twardość dyszy wymagana przez filament jest wyższa niż domyślna twardość " +"dyszy drukarki. Proszę wymienić dyszę na hartowaną lub zmienić filament, w " +"przeciwnym razie dysza może ulec zużyciu lub uszkodzeniu." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Włączenie tradycyjnego timelapsu może powodować niedoskonałości powierzchni. " +"Zaleca się zmianę trybu na płynny." + +msgid "Expand sidebar" +msgstr "Rozwiń pasek boczny" + +msgid "Collapse sidebar" +msgstr "Zwiń pasek boczny" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Wczytywanie pliku: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "" +"Plik 3MF nie jest obsługiwany przez Snapmaker Orca, wczytuj tylko dane geometrii." + +msgid "Load 3mf" +msgstr "Wczytaj 3MF" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"Wersja 3mf %s jest nowsza niż wersja %s %s, znaleziono następujące " +"nierozpoznane klucze:" + +msgid "You'd better upgrade your software.\n" +msgstr "Lepiej zaktualizuj swoje oprogramowanie.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"Wersja 3mf %s jest nowsza niż wersja %s %s, sugeruje się aktualizację " +"oprogramowania." + +msgid "Invalid values found in the 3mf:" +msgstr "Znaleziono nieprawidłowe wartości w pliku 3MF:" + +msgid "Please correct them in the param tabs" +msgstr "Proszę poprawić je na kartach parametrów" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "Plik 3MF ma zmodyfikowane G-code w profilach filamentu lub drukarki:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Proszę potwierdzić, że te zmodyfikowane G-code są bezpieczne, aby zapobiec " +"ewentualnym uszkodzeniom maszyny!" + +msgid "Modified G-codes" +msgstr "Zmodyfikowane G-codes" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "Plik 3MF ma już dostosowane profile filamentu lub drukarki:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Proszę potwierdź, że G-code w tych profilach jest bezpieczny, aby zapobiec " +"ewentualnym uszkodzeniom maszyny!" + +msgid "Customized Preset" +msgstr "Dostosowany profil" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "Nazwa komponentów w pliku step nie jest w formacie UTF8!" + +msgid "The name may show garbage characters!" +msgstr "Nazwa może zawierać nieczytelne znaki!" + +msgid "Remember my choice." +msgstr "Zapamiętaj moją decyzję." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Nie udało się wczytać pliku \"%1%\". Znaleziono nieprawidłową konfigurację." + +msgid "Objects with zero volume removed" +msgstr "Usunięto obiekty o zerowym wolumenie" + +msgid "The volume of the object is zero" +msgstr "Objętość tego obiektu wynosi zero" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"Obiekt z pliku %s jest zbyt mały i może być w metrach lub calach.\n" +" Czy chcesz przeskalować go na milimetry?" + +msgid "Object too small" +msgstr "Obiekt jest zbyt mały" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Ten plik zawiera kilka obiektów umieszczonych na różnych wysokościach.\n" +"Czy chcesz potraktować go jako jeden model zawierający kilka części, \n" +"zamiast wielu modeli?" + +msgid "Multi-part object detected" +msgstr "Wykryto obiekt składający się z wielu części" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "" +"Czy chcesz wczytać te pliki jako pojedynczy obiekt składający się z wielu " +"części?\n" + +msgid "Object with multiple parts was detected" +msgstr "Wykryto obiekt składający się z wielu części" + +msgid "The file does not contain any geometry data." +msgstr "Plik nie zawiera żadnych danych geometrycznych." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Importowany model przekracza wymiary przestrzeni roboczej. Czy chcesz go " +"przeskalowanć do odpowiednich rozmiarów?" + +msgid "Object too large" +msgstr "Obiekt jest zbyt duży" + +msgid "Export STL file:" +msgstr "Eksportuj plik STL:" + +msgid "Export AMF file:" +msgstr "Eksportuj plik AMF:" + +msgid "Save file as:" +msgstr "Zapisz plik jako:" + +msgid "Export OBJ file:" +msgstr "Eksportuj plik OBJ:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"Plik %s już istnieje\n" +"Czy chcesz go zastąpić?" + +msgid "Confirm Save As" +msgstr "Potwierdź Zapisz jako" + +msgid "Delete object which is a part of cut object" +msgstr "Usuń obiekt będący częścią przeciętego obiektu" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Próbujesz usunąć obiekt będący częścią wyciętego obiektu.\n" +"To działanie przerwie korespondencję wycięcia.\n" +"Po tym konsystencja modelu nie może być zagwarantowana." + +msgid "The selected object couldn't be split." +msgstr "Nie można podzielić wybranego obiektu." + +msgid "Another export job is running." +msgstr "Trwa inna praca eksportu." + +msgid "Unable to replace with more than one volume" +msgstr "Nie można zamienić na więcej niż jeden kształt" + +msgid "Error during replace" +msgstr "Błąd podczas zastępowania" + +msgid "Replace from:" +msgstr "Zastąp z:" + +msgid "Select a new file" +msgstr "Wybierz nowy plik" + +msgid "File for the replace wasn't selected" +msgstr "Plik do zastąpienia nie został wybrany" + +msgid "Please select a file" +msgstr "Proszę wybrać plik" + +msgid "Do you want to replace it" +msgstr "Czy chcesz go zastąpić" + +msgid "Message" +msgstr "Wiadomość" + +msgid "Reload from:" +msgstr "Przeładuj z:" + +msgid "Unable to reload:" +msgstr "Nie można wczytać:" + +msgid "Error during reload" +msgstr "Błąd podczas przeładowywania" + +msgid "There are warnings after slicing models:" +msgstr "Po wykonaniu cięcia modeli występują ostrzeżenia:" + +msgid "warnings" +msgstr "ostrzeżenia" + +msgid "Invalid data" +msgstr "Nieprawidłowe dane" + +msgid "Slicing Canceled" +msgstr "Cięcie anulowane" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Krojenie płyty %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Rozwiąż błędy w cięciu i opublikuj ponownie." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Wtyczka sieciowa nie jest wykrywana. Funkcje związane z siecią są " +"niedostępne." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Tryb tylko podglądu:\n" +"Wczytany plik zawiera tylko G-code, nie można wejść na stronę Przygotuj" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" +"Możesz zachować zmodyfikowane profile w nowym projekcie lub je odrzucić" + +msgid "Creating a new project" +msgstr "Tworzenie nowego projektu" + +msgid "Load project" +msgstr "Wczytaj projekt" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Nie udało się zapisać projektu.\n" +"Sprawdź, czy folder istnieje w trybie online lub czy inne programy nie " +"używają pliku projektu." + +msgid "Save project" +msgstr "Zapisz projekt" + +msgid "Importing Model" +msgstr "Importowanie modelu" + +msgid "prepare 3mf file..." +msgstr "przygotuj plik 3mf..." + +msgid "Download failed, unknown file format." +msgstr "Pobieranie nie powiodło się, nieznany format pliku." + +msgid "downloading project ..." +msgstr "pobieranie projektu ..." + +msgid "Download failed, File size exception." +msgstr "Pobieranie nie powiodło się, wyjątek - rozmiar pliku." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Projekt pobrany w %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"Importowanie do Snapmaker Orca nie powiodło się. Proszę pobrać plik i " +"zaimportować go ręcznie." + +msgid "Import SLA archive" +msgstr "Importuj archiwum SLA" + +msgid "The selected file" +msgstr "Wybrany plik" + +msgid "does not contain valid gcode." +msgstr "nie zawiera prawidłowego gcode." + +msgid "Error occurs while loading G-code file" +msgstr "Wystąpił błąd podczas wczytywania pliku z G-code" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "Nie udało załadować się archiwum ZIP z ścieżki %1%." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "Nie udało się rozpakować pliku do %1%: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"Nie udało się znaleźć rozpakowanego pliku pod adresem %1%. Rozpakowywanie " +"pliku nie powiodło się." + +msgid "Drop project file" +msgstr "Upuść plik projektu" + +msgid "Please select an action" +msgstr "Wybierz akcję" + +msgid "Open as project" +msgstr "Otwórz jako projekt" + +msgid "Import geometry only" +msgstr "Importuj tylko geometrię" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Można otworzyć tylko jeden plik G-code na raz." + +msgid "G-code loading" +msgstr "Wczytywanie pliku G-code" + +msgid "G-code files can not be loaded with models together!" +msgstr "Pliki G-code nie mogą być wczytywane razem z modelami!" + +msgid "Can not add models when in preview mode!" +msgstr "Nie można dodawać modeli w trybie podglądu!" + +msgid "All objects will be removed, continue?" +msgstr "Wszystkie obiekty zostaną usunięte, kontynuować?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"Aktualny projekt ma niezapisane zmiany, czy zapisać go przed kontynuacją?" + +msgid "Number of copies:" +msgstr "Liczba kopii:" + +msgid "Copies of the selected object" +msgstr "Kopie wybranego obiektu" + +msgid "Save G-code file as:" +msgstr "Zapisz plik G-code jako:" + +msgid "Save SLA file as:" +msgstr "Zapisz plik SLA jako:" + +msgid "The provided file name is not valid." +msgstr "Podana nazwa pliku jest nieprawidłowa." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "Następujące znaki nie są dozwolone w systemie plików FAT:" + +msgid "Save Sliced file as:" +msgstr "Zapisz plik po wykonaniu cięcia jako:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"Plik %s został wysłany do pamięci drukarki i można go obejrzeć na urządzeniu." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Nie można wykonać operacji boolowskich na siatkach modelu. Eksportowane będą " +"tylko części dodatnie" + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Przyczyna: część \"%1%\" jest pusta." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Przyczyna: część \"%1%\" nie ogranicza objętości." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Przyczyna: część \"%1%\" wprowadzona automatycznie." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Przyczyna: \"%1%\" i inna część nie mają wspólnego przecięcia." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Nie można wykonywać operacji boolowskich na siatkach modeli. Eksportowane " +"będą tylko części dodatnie." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"Czy na pewno chcesz przechowywać oryginalne pliki SVG wraz z ich lokalnymi " +"ścieżkami w pliku 3MF?\n" +"Jeśli wybierzesz 'NIE', wszystkie pliki SVG w projekcie przestaną być " +"edytowalne." + +msgid "Private protection" +msgstr "Ochrona prywatności" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" +"Czy drukarka jest gotowa? Czy arkusz drukujący jest na miejscu, pusty i " +"czysty?" + +msgid "Upload and Print" +msgstr "Prześlij i drukuj" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Drukowanie według obiektu: \n" +"Zalecamy użycie automatycznego rozmieszczenia, aby uniknąć kolizji podczas " +"drukowania." + +msgid "Send G-code" +msgstr "Wyślij G-code" + +msgid "Send to printer" +msgstr "Wyślij do drukarki" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "Niestandardowe podpory i kolorowanie zostały usunięte przed naprawą." + +msgid "Optimize Rotation" +msgstr "Optymalizuj obrót" + +msgid "Invalid number" +msgstr "Nieprawidłowa liczba" + +msgid "Plate Settings" +msgstr "Ustawienia stołu" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Liczba aktualnie wybranych części: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Liczba aktualnie wybranych obiektów: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Nazwa części: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Nazwa obiektu: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Rozmiar: %1% x %2% x %3% cali\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Rozmiar: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Objętość: %1% cal³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Objętość: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Trójkąty: %1%\n" + +msgid "Tips:" +msgstr "Wskazówki:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"Funkcja „Napraw model” jest obecnie dostępna tylko w systemie Windows. " +"Proszę naprawić model za pomocą programu Snapmaker Orca (Windows) lub " +"oprogramowania CAD." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Płyta% d:%s Nie zaleca się używania do druku filamentu %s(%s). Jeśli nadal " +"chcesz wydrukować ten filament, ustaw temperaturę stołu dla tego filamentu " +"na większą niż zero." + +msgid "Switching the language requires application restart.\n" +msgstr "Zmiana języka wymaga ponownego uruchomienia aplikacji.\n" + +msgid "Do you want to continue?" +msgstr "Czy chcesz kontynuować?" + +msgid "Language selection" +msgstr "Wybór języka" + +msgid "Switching application language while some presets are modified." +msgstr "" +"Zmiana języka aplikacji przy jednoczesnym istniejących zmodyfikowanych " +"ustawieniach." + +msgid "Changing application language" +msgstr "Zmiana języka aplikacji" + +msgid "Changing the region will log out your account.\n" +msgstr "Zmiana regionu spowoduje wylogowanie z Twojego konta.\n" + +msgid "Region selection" +msgstr "Wybór regionu" + +msgid "Second" +msgstr "Sekund" + +msgid "Browse" +msgstr "Przeglądaj" + +msgid "Choose Download Directory" +msgstr "Wybierz Katalog Pobierania" + +msgid "Associate" +msgstr "Powiąż" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "aktualne skojarzenie z Snapmaker Orca, aby Orca mogła otwierać modele z" + +msgid "Current Association: " +msgstr "Aktualnie powiązano: " + +msgid "Current Instance" +msgstr "Aktualna instancja" + +msgid "Current Instance Path: " +msgstr "Aktualna ścieżka instancji: " + +msgid "General Settings" +msgstr "Ustawienia Ogólne" + +msgid "Asia-Pacific" +msgstr "Azja i Pacyfik" + +msgid "China" +msgstr "Chiny" + +msgid "Europe" +msgstr "Europa" + +msgid "North America" +msgstr "Ameryka Północna" + +msgid "Others" +msgstr "Inne" + +msgid "Login Region" +msgstr "Region Logowania" + +msgid "Stealth Mode" +msgstr "Tryb \"Niewidzialny\"" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" +"Zatrzymuje to transmisję danych do chmury Bambu. Użytkownicy, którzy nie " +"korzystają z maszyn BBL lub używają tylko trybu LAN, mogą bezpiecznie " +"włączyć tę funkcję." + +msgid "Enable network plugin" +msgstr "Włącz wtyczkę sieciową (BambuLab)" + +msgid "Check for stable updates only" +msgstr "Sprawdzaj aktualizacje (tylko wersje stabilne)" + +msgid "Metric" +msgstr "Metryczny" + +msgid "Imperial" +msgstr "Imperialny" + +msgid "Units" +msgstr "Jednostki" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "Zezwól tylko na jedną instancję programu Snapmaker Orca" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"W systemie macOS domyślnie działa tylko jedna instancja aplikacji. Jednak z " +"wiersza poleceń można uruchomić kilka instancji tej samej aplikacji. W takim " +"przypadku te ustawienia umożliwią działanie tylko jednej instancji." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" +"Jeśli ta opcja jest włączona, po uruchomieniu Snapmaker Orca, gdy inna instancja " +"tego samego Snapmaker Orca jest już uruchomiona, ta instancja zostanie ponownie " +"aktywowana." + +msgid "Home" +msgstr "Strona główna" + +msgid "Default Page" +msgstr "Domyślna Strona" + +msgid "Set the page opened on startup." +msgstr "Ustaw stronę otwieraną przy uruchomieniu." + +msgid "Touchpad" +msgstr "Panel dotykowy" + +msgid "Camera style" +msgstr "Styl kamery" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"Wybierz styl nawigacji kamery.\n" +"Domyślnie: LPM+ruch dla obrotu, PPM/ŚPM+ruch dla przesuwania.\n" +"Touchpad: Alt+ruch dla obrotu, Shift+ruch dla przesuwania." + +msgid "Zoom to mouse position" +msgstr "Powiększ do pozycji myszki" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Powiększ do pozycji wskaźnika myszy w widoku 3D, zamiast do środka okna 2D." + +msgid "Use free camera" +msgstr "Użyj wolnego widoku z kamery" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Jeśli włączone, to używany będzie wolny widok. Jeśli wyłączone, to widok " +"będzie ograniczony." + +msgid "Reverse mouse zoom" +msgstr "Odwrócone przybliżanie myszką" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "Jeśli włączone, kierunek kółka myszy zostanie odwrócony." + +msgid "Show splash screen" +msgstr "Pokaż ekran powitalny" + +msgid "Show the splash screen during startup." +msgstr "Pokaż ekran powitalny podczas uruchamiania." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Pokaż powiadomienie „Porada dnia” po uruchomieniu" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Jeśli włączone, przy uruchamianiu wyświetlane są przydatne wskazówki." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "" +"Objętości płukania: Automatyczne obliczanie za każdym razem, gdy zmieni się " +"kolor" + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "" +"Jeśli włączone, automatyczne obliczanie za każdym razem, gdy zmieni się kolor" + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "" +"Objętości płukania: Automatycznie obliczaj za każdym razem, gdy zmieniany " +"jest filament" + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "" +"Jeśli ta opcja jest włączona, automatycznie obliczaj za każdym razem, gdy " +"zmieniany jest filament." + +msgid "Remember printer configuration" +msgstr "Zapamiętaj konfigurację drukarki" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" +"Jeśli ta opcja jest włączona, Orca będzie automatycznie zapamiętywać i " +"przełączać konfigurację filamentu/procesu dla każdej drukarki." + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" +"Obsługa wielu urządzeń (zacznie być aktywna po ponownym uruchomieniu Orca)" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"Dzięki tej opcji możesz wysyłać zadania do wielu urządzeń jednocześnie i " +"zarządzać nimi." + +msgid "Network" +msgstr "Sieć" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Automatyczna synchronizacja profili użytkownika (Drukarka/Filament/Proces)" + +msgid "User Sync" +msgstr "Synchronizacja użytkownika" + +msgid "Update built-in Presets automatically." +msgstr "Automatyczna aktualizacja wbudowanych profili" + +msgid "System Sync" +msgstr "Synchronizacja systemu" + +msgid "Clear my choice on the unsaved presets." +msgstr "Wyczyść moje wybory w niezapisanych profilach." + +msgid "Associate files to Snapmaker Orca" +msgstr "Skojarz pliki z Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Skojarz pliki .3mf z Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Jeśli włączone, ustawia Snapmaker Orca jako domyślną aplikację do otwierania " +"plików .3mf" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Skojarz pliki .stl z Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Jeśli włączone, ustawia Snapmaker Orca jako domyślną aplikację do otwierania " +"plików .stl" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Skojarz pliki .step/.stp z Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Jeśli włączone, ustawia Snapmaker Orca jako domyślną aplikację do otwierania " +"plików .step" + +msgid "Associate web links to Snapmaker Orca" +msgstr "Powiąż linki z Snapmaker Orca" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "Powiąż URL z Snapmaker Orca" + +msgid "Maximum recent projects" +msgstr "Maksymalna liczba ostatnich projektów" + +msgid "Maximum count of recent projects" +msgstr "Maksymalna ilość ostatnich projektów" + +msgid "Clear my choice on the unsaved projects." +msgstr "Wyczyść moje wybory na niezapisanych projektach." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "Brak ostrzeżeń przy wczytywaniu plików 3MF z zmodyfikowanymi G-code" + +msgid "Auto-Backup" +msgstr "Auto-Zapis" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Wykonuj okresowe kopie zapasowe projektu w celu przywracania po " +"sporadycznych awariach." + +msgid "every" +msgstr "każdy" + +msgid "The peroid of backup in seconds." +msgstr "Okres kopii zapasowej w sekundach." + +msgid "Downloads" +msgstr "Lokalizacja pobierania" + +msgid "Dark Mode" +msgstr "Tryb ciemny" + +msgid "Enable Dark mode" +msgstr "Włącz tryb ciemny" + +msgid "Develop mode" +msgstr "Tryb deweloperski" + +msgid "Skip AMS blacklist check" +msgstr "Pomiń sprawdzanie czarnej listy AMS" + +msgid "Home page and daily tips" +msgstr "Strona główna i porada dnia" + +msgid "Show home page on startup" +msgstr "Pokaż stronę główną przy uruchamianiu" + +msgid "Sync settings" +msgstr "Ustawienia synchronizacji" + +msgid "User sync" +msgstr "Synchronizacja użytkownika" + +msgid "Preset sync" +msgstr "Synchronizacja profili" + +msgid "Preferences sync" +msgstr "Synchronizacja preferencji" + +msgid "View control settings" +msgstr "Ustawienia kontrolowania widoku" + +msgid "Rotate of view" +msgstr "Obracanie widoku" + +msgid "Move of view" +msgstr "Przesuwanie widoku" + +msgid "Zoom of view" +msgstr "Powiększanie widoku" + +msgid "Other" +msgstr "Inne" + +msgid "Mouse wheel reverses when zooming" +msgstr "Kierunek obracania koła myszy odwraca się podczas powiększania" + +msgid "Enable SSL(MQTT)" +msgstr "Włącz SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Włącz SSL(FTP)" + +msgid "Internal developer mode" +msgstr "Wewnętrzny tryb dewelopera" + +msgid "Log Level" +msgstr "Poziom logowania" + +msgid "fatal" +msgstr "krytyczny" + +msgid "error" +msgstr "błąd" + +msgid "warning" +msgstr "ostrzeżenie" + +msgid "debug" +msgstr "debugowanie" + +msgid "trace" +msgstr "śledzenie" + +msgid "Host Setting" +msgstr "Ustawienie hosta" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "Host DEV: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "Host QA: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "Host PRE: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Host produktu" + +msgid "debug save button" +msgstr "przycisk zapisywania debugowania" + +msgid "save debug settings" +msgstr "zapisz ustawienia debugowania" + +msgid "DEBUG settings have saved successfully!" +msgstr "Ustawienia DEBUG zapisano pomyślnie!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Przełącz środowisko w chmurze i proszę zaloguj się ponownie!" + +msgid "System presets" +msgstr "Profile systemowe" + +msgid "User presets" +msgstr "Profile użytkownika" + +msgid "Incompatible presets" +msgstr "Profile niekompatybilne" + +msgid "AMS filaments" +msgstr "Filamenty AMS" + +msgid "Click to pick filament color" +msgstr "Kliknij, aby wybrać kolor filamentu" + +msgid "Please choose the filament colour" +msgstr "Proszę wybrać kolor filamentu" + +msgid "Add/Remove presets" +msgstr "Dodaj/Usuń profile" + +msgid "Edit preset" +msgstr "Edytuj profil" + +msgid "Project-inside presets" +msgstr "Profile wewnątrz projektu" + +msgid "Add/Remove filaments" +msgstr "Dodaj/Usuń filament" + +msgid "Add/Remove materials" +msgstr "Dodaj/Usuń filamenty" + +msgid "Select/Remove printers(system presets)" +msgstr "Wybierz/Usuń drukarki (profile systemowe)" + +msgid "Create printer" +msgstr "Utwórz drukarkę" + +msgid "The selected preset is null!" +msgstr "Wybrany profil jest pusty!" + +msgid "End" +msgstr "Koniec" + +msgid "Customize" +msgstr "Dostosuj" + +msgid "Other layer filament sequence" +msgstr "Inna sekwencja filamentu na kolejnej warstwie" + +msgid "Please input layer value (>= 2)." +msgstr "Proszę podać wartość warstwy (>= 2)." + +msgid "Plate name" +msgstr "Nazwa płyty" + +msgid "Same as Global Print Sequence" +msgstr "Tak samo jak globalna sekwencja druku" + +msgid "Print sequence" +msgstr "Sekwencja druku" + +msgid "Same as Global" +msgstr "Takie samo jak globalne" + +msgid "Disable" +msgstr "Rozłącz" + +msgid "Spiral vase" +msgstr "Tryb Wazy" + +msgid "First layer filament sequence" +msgstr "Sekwencja koloru pierwszej warstwy" + +msgid "Same as Global Plate Type" +msgstr "Tak samo jak globalny typ płyty" + +msgid "Same as Global Bed Type" +msgstr "Tak samo jak globalny typ stołu" + +msgid "By Layer" +msgstr "Wg.warstwy" + +msgid "By Object" +msgstr "Wg.obiektu" + +msgid "Accept" +msgstr "Akceptuj" + +msgid "Log Out" +msgstr "Wyloguj się" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "Potnij wszystkie płyty, aby uzyskać oszacowany czas i ilości filamentu" + +msgid "Packing project data into 3mf file" +msgstr "Pakowanie danych projektu do pliku 3mf" + +msgid "Uploading 3mf" +msgstr "Przesyłanie 3mf" + +msgid "Jump to model publish web page" +msgstr "Przejdź do strony publikacji modelu" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "Uwaga: Przygotowanie może zająć kilka minut. Proszę o cierpliwość." + +msgid "Publish" +msgstr "Opublikuj" + +msgid "Publish was cancelled" +msgstr "Publikacja została anulowana" + +msgid "Slicing Plate 1" +msgstr "Krojenie Płyty 1" + +msgid "Packing data to 3mf" +msgstr "Pakowanie danych do 3mf" + +msgid "Jump to webpage" +msgstr "Przejdź na stronę" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Zapisz %s jako" + +msgid "User Preset" +msgstr "Profil użytkownika" + +msgid "Preset Inside Project" +msgstr "Profil wewnątrz projektu" + +msgid "Name is unavailable." +msgstr "Nazwa jest niedostępna." + +msgid "Overwrite a system profile is not allowed" +msgstr "Nadpisanie profilu systemowego jest niedozwolone" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "Profil \"%1%\" już istnieje." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "" +"Profil \"%1%\" już istnieje i jest niekompatybilny z aktualną drukarką." + +msgid "Please note that saving action will replace this preset" +msgstr "Zwróć uwagę, że zapisanie spowoduje zastąpienie tego profilu" + +msgid "The name cannot be the same as a preset alias name." +msgstr "Nazwa nie może być taka sama, jak nazwa profilu ustawień" + +msgid "Save preset" +msgstr "Zapisz profil" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Kopiuj" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "Drukarka \"%1%\" jest wybrana z profilem \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Proszę wybrać działanie z profilem \"%1%\" po zapisaniu." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Dla \"%1%\", zmień \"%2%\" na \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Dla \"%1%\" dodaj \"%2%\" jako nowy szablon" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Po prostu przełącz na \"%1%\"" + +msgid "Task canceled" +msgstr "Zadanie anulowane" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Szukaj" + +msgid "My Device" +msgstr "Moje urządzenie" + +msgid "Other Device" +msgstr "Inne urządzenie" + +msgid "Online" +msgstr "Online" + +msgid "Input access code" +msgstr "Wprowadź kod dostępu" + +msgid "Can't find my devices?" +msgstr "Nie możesz znaleźć moich urządzeń?" + +msgid "Log out successful." +msgstr "Wylogowanie powiodło się." + +msgid "Busy" +msgstr "Zajęty" + +msgid "Bambu Cool Plate" +msgstr "Bambu Cool Plate" + +msgid "PLA Plate" +msgstr "Płyta PLA" + +msgid "Bambu Engineering Plate" +msgstr "Bambu Engineering Plate" + +msgid "Bambu Smooth PEI Plate" +msgstr "Bambu Smooth PEI Plate" + +msgid "High temperature Plate" +msgstr "Płyta wysokotemperaturowa" + +msgid "Bambu Textured PEI Plate" +msgstr "Bambu Textured PEI Plate" + +msgid "Send print job to" +msgstr "Wyślij zadanie druku do" + +msgid "Flow Dynamics Calibration" +msgstr "Kalibracja Dynamiki Przepływu" + +msgid "Click here if you can't connect to the printer" +msgstr "Kliknij tutaj, jeśli nie możesz połączyć się z drukarką" + +msgid "send completed" +msgstr "wysłanie zakończone" + +msgid "Error code" +msgstr "Kod błędu" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "Bez logowania na koncie, wyświetlane są tylko drukarki w trybie LAN" + +msgid "Connecting to server" +msgstr "Łączenie z serwerem" + +msgid "Synchronizing device information" +msgstr "Synchronizacja informacji o urządzeniu" + +msgid "Synchronizing device information time out" +msgstr "Upłynął czas synchronizacji informacji o urządzeniu" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"Nie można wysłać zadania do druku, gdy drukarka aktualizuje oprogramowanie" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"Drukarka wykonuje instrukcje. Proszę wznowić drukowanie po ich zakończeniu" + +msgid "The printer is busy on other print job" +msgstr "Drukarka jest zajęta innym zadaniem drukowania" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament %s przekracza liczbę slotów AMS. Proszę zaktualizować " +"oprogramowanie drukarki, aby obsługiwało przypisywanie slotów AMS." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Filament przekracza liczbę slotów AMS. Proszę zaktualizować oprogramowanie " +"drukarki, aby obsługiwało przypisywanie slotów AMS." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Ustalono przyporządkowanie filamentów do gniazd w AMS. Możesz kliknąć na " +"dowolny filament powyżej, aby zmienić jego przypisanie do innego gniazda w " +"AMS" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Proszę kliknąć na każdy filament powyżej, aby określić jego przypisany slot " +"AMS przed wysłaniem zadania druku" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"Filament %s nie pasuje do filamentu w slocie AMS %s. Proszę zaktualizować " +"oprogramowanie drukarki, aby obsługiwało przypisywanie slotów AMS." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament nie pasuje do filamentu w slocie AMS. Proszę zaktualizować " +"oprogramowanie drukarki, aby obsługiwało przypisywanie slotów AMS." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"Oprogramowanie drukarki obsługuje tylko sekwencyjne mapowanie filamentu => " +"slot AMS." + +msgid "An SD card needs to be inserted before printing." +msgstr "Przed rozpoczęciem drukowania należy włożyć kartę SD." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"Wybrana drukarka (%s) jest niezgodna z wybranym profilem drukarki w " +"programie (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "Aby nagrywać timelapse, należy włożyć kartę SD." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Nie można wysłać zadania druku do drukarki, której oprogramowanie wymaga " +"aktualizacji." + +msgid "Cannot send the print job for empty plate" +msgstr "Nie można wysłać zadania druku dla pustej płyty" + +msgid "This printer does not support printing all plates" +msgstr "Ta drukarka nie obsługuje drukowania na wszystkich płytach" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"Po włączeniu trybu 'spiralna waza', maszyny o strukturze I3 nie będą " +"generować filmów timelapse." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Timelapse nie jest obsługiwany, ponieważ sekwencja druku jest ustawiona na " +"\"Obiekt po obiekcie\"." + +msgid "Errors" +msgstr "Błędy" + +msgid "Please check the following:" +msgstr "Proszę sprawdzić następujące rzeczy:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"Typ drukarki wybrany podczas generowania G-code nie jest zgodny z aktualnie " +"wybraną drukarką. Zaleca się używanie tego samego typu drukarki do cięcia." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"W mapowaniu AMS znajdują się nieznane filamenty. Proszę sprawdzić, czy są to " +"wymagane filamenty. Jeśli wszystko jest w porządku, naciśnij \"Potwierdź\", " +"aby rozpocząć drukowanie." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "dysza w profilu: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "zapamiętana dysza: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Średnica dyszy w przetworzonym pliku nie jest zgodna z średnicą dyszy w " +"ustawieniach. Jeśli ostatnio zmieniłeś dyszę, przejdź do opcji Urządzenie > " +"Typ dyszy, aby zmienić to ustawienie." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Drukowanie materiału o wysokiej temperaturze (%s materiał) z %s może " +"spowodować uszkodzenie dyszy." + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "" +"Proszę naprawić powyższy błąd, w przeciwnym razie drukowanie nie może być " +"kontynuowane." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Proszę nacisnąć przycisk potwierdzenia, jeśli nadal chcesz kontynuować " +"drukowanie." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "Łączenie z drukarką. Nie można anulować w trakcie procesu łączenia." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Ostrożnie! Kalibracja przepływu na Texture PEI może nie powieść się z powodu " +"nierównomiernie rozłożonej powierzchni." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Automatyczna kalibracja przepływu za pomocą mikrolidaru" + +msgid "Modifying the device name" +msgstr "Modyfikacja nazwy urządzenia" + +msgid "Bind with Pin Code" +msgstr "Powiąż za pomocą kodu PIN" + +msgid "Send to Printer SD card" +msgstr "Wysłać na kartę SD drukarki" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "Nie można wysłać zadania druku podczas aktualizacji" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "" +"Wybrana drukarka jest niekompatybilna z wybranymi ustawieniami drukarki." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "Przed wysłaniem na kartę SD drukarki, należy włożyć kartę SD." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "Drukarka musi znajdować się w tej samej sieci LAN co Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "Drukarka nie obsługuje wysyłania na kartę SD." + +msgid "Slice ok." +msgstr "Cięcie modelu zakończone." + +msgid "View all Daily tips" +msgstr "Zobacz wszystkie Porady Dnia" + +msgid "Failed to create socket" +msgstr "Nie udało się utworzyć gniazda" + +msgid "Failed to connect socket" +msgstr "Nie udało się połączyć gniazda" + +msgid "Failed to publish login request" +msgstr "Nie udało się opublikować żądania logowania" + +msgid "Get ticket from device timeout" +msgstr "Czas oczekiwania na uzyskanie biletu z urządzenia minął" + +msgid "Get ticket from server timeout" +msgstr "Czas oczekiwania na uzyskanie biletu z serwera minął" + +msgid "Failed to post ticket to server" +msgstr "Nie udało się przesłać biletu na serwer" + +msgid "Failed to parse login report reason" +msgstr "Nie udało się przeanalizować powodu raportu logowania" + +msgid "Receive login report timeout" +msgstr "Czas oczekiwania na otrzymanie raportu logowania minął" + +msgid "Unknown Failure" +msgstr "Nieznana awaria" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Proszę znaleźć kod PIN na ekranie drukarki w zakładce konta\n" +"i wprowadź go poniżej." + +msgid "Can't find Pin Code?" +msgstr "Nie możesz odszukać kodu PIN?" + +msgid "Pin Code" +msgstr "Kod PIN" + +msgid "Binding..." +msgstr "Łączenie..." + +msgid "Please confirm on the printer screen" +msgstr "Proszę potwierdzić na ekranie drukarki" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Logowanie nie powiodło się. Proszę sprawdzić kod PIN." + +msgid "Log in printer" +msgstr "Zaloguj się do drukarki" + +msgid "Would you like to log in this printer with current account?" +msgstr "Czy chcesz zalogować się do tej drukarki z obecnym kontem?" + +msgid "Check the reason" +msgstr "Sprawdź powód" + +msgid "Read and accept" +msgstr "Przeczytaj i zaakceptuj" + +msgid "Terms and Conditions" +msgstr "Warunki i zasady" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Dziękujemy za zakup urządzenia Bambu Lab. Przed użyciem urządzenia Bambu Lab " +"proszę przeczytać warunki i zasady. Klikając, aby zgodzić się na używanie " +"urządzenia Bambu Lab, zgadzasz się przestrzegać Polityki Prywatności i " +"Warunków Użytkowania (razem \"Warunki\"). Jeśli nie zgadzasz się lub nie " +"przestrzegasz Polityki Prywatności Bambu Lab, proszę nie używać sprzętu i " +"usług Bambu Lab." + +msgid "and" +msgstr "i" + +msgid "Privacy Policy" +msgstr "Polityka prywatności" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Prosimy o pomoc w ulepszeniu drukarek dla wszystkich" + +msgid "Statement about User Experience Improvement Program" +msgstr "Oświadczenie o programie poprawy doświadczenia użytkownika" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"W społeczności druku 3D uczymy się od siebie nawzajem, korzystając z " +"sukcesów i porażek, aby dostosować nasze parametry i ustawienia cięcia. %s " +"stosuje tę samą zasadę i wykorzystuje uczenie maszynowe do poprawy swojej " +"wydajności na podstawie sukcesów i porażek ogromnej liczby wydruków naszych " +"użytkowników. Szkolimy %s, aby było mądrzejsze, dostarczając mu danych z " +"rzeczywistego świata. Jeśli wyrażasz zgodę, ta usługa uzyska dostęp do " +"informacji z Twoich logów błędów i dzienników użycia, które mogą zawierać " +"informacje opisane w Polityce Prywatności. Nie będziemy zbierać żadnych " +"danych osobowych, dzięki którym można by bezpośrednio lub pośrednio " +"zidentyfikować osobę, w tym między innymi nanawisk, adresów, informacji o " +"płatnościach czy numerów telefonów. Włączając tę usługę, zgadzasz się na te " +"warunki i oświadczenie o Polityce Prywatności." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Oświadczenie o planie poprawy doświadczenia użytkownika" + +msgid "Log in successful." +msgstr "Logowanie udane." + +msgid "Log out printer" +msgstr "Wyloguj się z drukarki" + +msgid "Would you like to log out the printer?" +msgstr "Czy chcesz się wylogować z drukarki?" + +msgid "Please log in first." +msgstr "Proszę najpierw się zalogować." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "Wystąpił problem z połączeniem z drukarką. Proszę spróbuj ponownie." + +msgid "Failed to log out." +msgstr "Nie udało się wylogować." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Zapisz obecny %s" + +msgid "Delete this preset" +msgstr "Usuń ten profil" + +msgid "Search in preset" +msgstr "Szukaj w profilu" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Kliknij, aby zresetować wszystkie ustawienia do ostatnio zapisanego profilu." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"Wieża czyszcząca jest wymagana dla płynnego timelapse'u. Możliwe są wady na " +"modelu bez wieży czyszczącej. Czy na pewno chcesz ją wyłączyć?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"Wieża czyszcząca jest wymagana dla płynnego timelapse'u. Możliwe są wady na " +"modelu bez wieży czyszczącej. Czy chcesz włączyć wieżę czyszczącą?" + +msgid "Still print by object?" +msgstr "Czy nadal drukować według obiektu?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Dodaliśmy eksperymentalny styl \"Cienkie Drzewo\", który charakteryzuje się " +"mniejszą objętością podpór, ale i słabszą wytrzymałością.\n" +"Zalecamy używanie go z: 0 warstw łączących, 0 odległością od góry, 2 " +"ścianami." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Zmienić te ustawienia automatycznie? \n" +"Tak - Zmień te ustawienia automatycznie\n" +"Nie - Nie zmieniaj tych ustawień dla mnie" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Dla stylów \"Drzewo Grube\" i \"Drzewo Hybrydowe\" zalecamy następujące " +"ustawienia: co najmniej 2 warstwy łączące, co najmniej 0,1 mm odległości od " +"góry lub używanie materiałów podporowych na łączeniach." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"Przy użyciu materiału podporowego do warstw łączących podpory zalecamy " +"następujące ustawienia:\n" +"0 odległość osu Z od góry, 0 odstęp warstwy łączącej, wzór koncentryczny i " +"wyłączenie niezależnej wysokości warstwy podpory" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"Włączenie tej opcji spowoduje zmianę kształtu modelu. Jeśli druk wymaga " +"precyzyjnych wymiarów lub jest częścią złożonego projektu, ważne jest " +"dokładne sprawdzenie, czy ta zmiana geometrii nie wpłynie na funkcjonalność " +"druku." + +msgid "Are you sure you want to enable this option?" +msgstr "Czy na pewno chcesz włączyć tę opcję?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"Wysokość warstwy jest zbyt mała.\n" +"Ustawione zostanie na min_layer_height\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"Wysokość warstwy przekracza limit w Ustawieniach Drukarki -> Extruder -> " +"Limity wysokości warstwy, co może powodować problemy z jakością druku." + +msgid "Adjust to the set range automatically? \n" +msgstr "Dostosować automatycznie do ustawionego zakresu? \n" + +msgid "Adjust" +msgstr "Dostosuj" + +msgid "Ignore" +msgstr "Ignoruj" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Funkcja eksperymentalna: Polega na wycofywaniu filamentu na większą " +"odległość w celu zminimalizowania płukania, a następne jego odcięcie. Choć " +"może to znacząco zmniejszyć ilość zużytego filamentu, może również zwiększyć " +"ryzyko zatknięcia dyszy lub innych problemów z drukowaniem." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Funkcja eksperymentalna: Polega na wycofywaniu filamentu na większą " +"odległość w celu zminimalizowania płukania, a następne jego odcięcie. Choć " +"może to znacząco zmniejszyć ilość zużytego filamentu, może również zwiększyć " +"ryzyko zatknięcia dyszy lub innych problemów z drukowaniem. Proszę używać z " +"najnowszym oprogramowaniem drukarki." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"Podczas nagrywania timelapse'a bez głowicy drukującej zaleca się dodanie " +"\"Timelaps - Wieża Czyszcząca\" \n" +"przez kliknięcie prawym przyciskiem myszy na pustym miejscu płyty i wybranie " +"\"Dodaj Prymityw\"->\"Timelaps - Wieża Czyszcząca\"." + +msgid "Line width" +msgstr "Szerokość linii" + +msgid "Seam" +msgstr "Szew" + +msgid "Precision" +msgstr "Precyzja" + +msgid "Wall generator" +msgstr "Generator ścian" + +msgid "Walls and surfaces" +msgstr "Ściany i powierzchnie" + +msgid "Bridging" +msgstr "Mosty" + +msgid "Overhangs" +msgstr "Nawisy" + +msgid "Walls" +msgstr "Ściany" + +msgid "Top/bottom shells" +msgstr "Powłoki górne/dolne" + +msgid "Initial layer speed" +msgstr "Szybkość pierwszej warstwy" + +msgid "Other layers speed" +msgstr "Szybkość innych warstw" + +msgid "Overhang speed" +msgstr "Szybkość drukowania nawisów" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"To jest prędkość dla różnych stopni nawisu. Stopnie nawisu są wyrażane jako " +"procent szerokości linii. Prędkość 0 oznacza brak spowolnienia, a używana " +"jest prędkość ściany" + +msgid "Bridge" +msgstr "Mosty" + +msgid "Set speed for external and internal bridges" +msgstr "Ustaw szybkość dla zewnętrznych i wewnętrznych mostków" + +msgid "Travel speed" +msgstr "Szybkość przemieszczania" + +msgid "Acceleration" +msgstr "Przyspieszenie" + +msgid "Jerk(XY)" +msgstr "Jerk (XY)" + +msgid "Raft" +msgstr "Raft" + +msgid "Support filament" +msgstr "Filament podpory" + +msgid "Tree supports" +msgstr "Drzewo" + +msgid "Skirt" +msgstr "Skirt" + +msgid "Prime tower" +msgstr "Wieża czyszcząca" + +msgid "Special mode" +msgstr "Tryby specjalne" + +msgid "G-code output" +msgstr "Wyjście G-code" + +msgid "Post-processing Scripts" +msgstr "Skrypty post-processingu" + +msgid "Notes" +msgstr "Notatki" + +msgid "Frequent" +msgstr "Cz.używ." + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"Następująca linia %s zawiera zarezerwowane słowa kluczowe.\n" +"Proszę ją usunąć, inaczej może to zakłócić wizualizację G-code i oszacowanie " +"czasu druku." +msgstr[1] "" +"Następujące %s linie zawierają zarezerwowane słowa kluczowe.\n" +"Proszę je usunąć, inaczej może to zakłócić wizualizację G-code i oszacowanie " +"czasu druku." +msgstr[2] "" +"Następujące %s linii zawiera zarezerwowane słowa kluczowe.\n" +"Proszę je usunąć, inaczej może to zakłócić wizualizację G-code i oszacowanie " +"czasu druku." + +msgid "Reserved keywords found" +msgstr "Znaleziono zarezerwowane słowa kluczowe" + +msgid "Setting Overrides" +msgstr "Nadpisywane Ustawień" + +msgid "Retraction" +msgstr "Retrakcja" + +msgid "Basic information" +msgstr "Podstawowe informacje" + +msgid "Recommended nozzle temperature" +msgstr "Zalecana temperatura dyszy" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Zalecany zakres temperatury dyszy dla tego filamentu. 0 oznacza brak ustawień" + +msgid "Print chamber temperature" +msgstr "Temperatura komory druku" + +msgid "Print temperature" +msgstr "Temperatura druku" + +msgid "Nozzle" +msgstr "Dysza" + +msgid "Nozzle temperature when printing" +msgstr "Temperatura dyszy podczas druku" + +msgid "Cool plate" +msgstr "Cool plate / PLA Plate" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Temperatura stołu, gdy zainstalowana jest Cool Plate. Wartość 0 oznacza, że " +"filament nie jest przystosowany do druku na Cool Plate" + +msgid "Textured Cool plate" +msgstr "Textured Cool plate" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" +"Temperatura stołu przy zainstalowanej Cool Plate. Wartość 0 oznacza, że " +"filament nie jest przystosowany do druku na Textured Cool Plate" + +msgid "Engineering plate" +msgstr "Engineering Plate" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Temperatura stołu, gdy zainstalowana jest Engineering Plate. Wartość 0 " +"oznacza, że filament nie jest przystosowany do druku na Engineering Plate" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Smooth PEI Plate / High Temp Plate" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Temperatura stołu, gdy zainstalowana jest Smooth PEI Plate/High Temp Plate. " +"Wartość 0 oznacza, że filament nie jest przystosowany do druku na Smooth PEI " +"Plate/High Temp Plate" + +msgid "Textured PEI Plate" +msgstr "Textured PEI Plate" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Temperatura stołu, gdy zainstalowana jest Textured PEI Plate. Wartość 0 " +"oznacza, że filament nie jest przystosowany do druku na Textured PEI Plate" + +msgid "Volumetric speed limitation" +msgstr "Ograniczenie prędkości przepływu" + +msgid "Cooling" +msgstr "Chłodzenie" + +msgid "Cooling for specific layer" +msgstr "Chłodzenie dla określonej warstwy" + +msgid "Part cooling fan" +msgstr "Wentylator chłodzący części" + +msgid "Min fan speed threshold" +msgstr "Minimalny próg prędkości wentylatora" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"Prędkość wentylatora chłodzącego części zacznie pracować z minimalną " +"prędkością, gdy szacowany czas warstwy nie będzie dłuższy niż czas warstwy w " +"ustawieniach. Gdy czas warstwy jest krótszy niż próg, prędkość wentylatora " +"jest interpolowana między minimalną a maksymalną prędkością wentylatora " +"zgodnie z czasem druku warstwy" + +msgid "Max fan speed threshold" +msgstr "Maksymalny próg prędkości wentylatora" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"Prędkość wentylatora chłodzącego części będzie maksymalna, gdy szacowany " +"czas warstwy będzie krótszy niż wartość ustawiona" + +msgid "Auxiliary part cooling fan" +msgstr "Pomocniczy wentylator chłodzący części" + +msgid "Exhaust fan" +msgstr "Wentylator wyciągowy" + +msgid "During print" +msgstr "Podczas druku" + +msgid "Complete print" +msgstr "Po zakończeniu druku" + +msgid "Filament start G-code" +msgstr "Początkowy G-code filamentu" + +msgid "Filament end G-code" +msgstr "Końcowy G-code filamentu" + +msgid "Multimaterial" +msgstr "Multimateriał" + +msgid "Wipe tower parameters" +msgstr "Parametry wieży czyszczącej" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "Parametry zmiany narzędzia dla drukarek MM z jednym ekstruderem" + +msgid "Ramming settings" +msgstr "Ustawienia wyciskania" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "Parametry zmiany narzędzia w drukarkach wieloekstruzyjnych MM" + +msgid "Printable space" +msgstr "Przestrzeń do druku" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "Podano nieprawidłową wartość dla parametru%1%: %2%" + +msgid "G-code flavor is switched" +msgstr "Wariant G-code został zmieniony" + +msgid "Cooling Fan" +msgstr "Wentylator chłodzący" + +msgid "Fan speed-up time" +msgstr "Przesunięcie czasu uruchomienia wentylatora" + +msgid "Extruder Clearance" +msgstr "Odstęp od extrudera" + +msgid "Adaptive bed mesh" +msgstr "Adaptacyjna siatka stołu" + +msgid "Accessory" +msgstr "Akcesoria" + +msgid "Machine gcode" +msgstr "G-code drukarki" + +msgid "Machine start G-code" +msgstr "Początkowy G-code drukarki" + +msgid "Machine end G-code" +msgstr "Końcowy G-code drukarki" + +msgid "Printing by object G-code" +msgstr "Drukowanie według obiektu G-code" + +msgid "Before layer change G-code" +msgstr "G-code przed zmianą warstwy" + +msgid "Layer change G-code" +msgstr "G-code zmiany warstwy" + +msgid "Time lapse G-code" +msgstr "G-code timelapse" + +msgid "Change filament G-code" +msgstr "G-code zmiany filamentu" + +msgid "Change extrusion role G-code" +msgstr "G-code zmieniający tryb ekstruzji" + +msgid "Pause G-code" +msgstr "G-code pauzy" + +msgid "Template Custom G-code" +msgstr "Szablon niestandardowego G-code" + +msgid "Motion ability" +msgstr "Ograniczenia ruchu" + +msgid "Normal" +msgstr "Normalny" + +msgid "Speed limitation" +msgstr "Ograniczenie prędkości" + +msgid "Acceleration limitation" +msgstr "Ograniczenie przyspieszenia" + +msgid "Jerk limitation" +msgstr "Ograniczenie Jerk" + +msgid "Single extruder multimaterial setup" +msgstr "Konfiguracja pojedynczego extrudera wielomateriałowego" + +msgid "Wipe tower" +msgstr "Wieża czyszcząca" + +msgid "Single extruder multimaterial parameters" +msgstr "Parametry pojedynczego extrudera wielomateriałowego" + +msgid "Layer height limits" +msgstr "Ograniczenia wysokości warstwy" + +msgid "Lift Z Enforcement" +msgstr "Wymuszenie podniesienia osi Z" + +msgid "Retraction when switching material" +msgstr "Retrakcja podczas zmiany filamentu" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"Opcja czyszczenia nie jest dostępna podczas korzystania z trybu retrakcji " +"zaszytego w firmware. \n" +"\n" +"Czy powinienem ją wyłączyć, aby umożliwić włączenie retrakcji z firmware?" + +msgid "Firmware Retraction" +msgstr "Cofanie firmware" + +msgid "Detached" +msgstr "Odłączony" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"%d profil filamentu i %d profil procesu jest przypisany do tej drukarki. Te " +"profile zostaną skasowane, jeśli drukarka zostanie usunięta." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "Profile dziedziczone przez inne profile nie mogą być usunięte!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Następny profil przejmie te ustawienia." +msgstr[1] "Następne profile przejmą te ustawienia." +msgstr[2] "Następnych profili przejmie te ustawienia." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Profil" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "Następujący profil również zostanie usunięty." +msgstr[1] "Następujące profile również zostaną usunięte." +msgstr[2] "Następujące profile również zostaną usunięte." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Czy na pewno chcesz usunąć wybrany profil? \n" +"Jeśli profil odpowiada filamentowi aktualnie używanemu w twojej drukarce, " +"proszę zresetować informacje o filamentach dla tego slotu." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Czy na pewno %1% wybrane ustawienia?" + +msgid "All" +msgstr "Wszystkie" + +msgid "Set" +msgstr "Ustaw" + +msgid "Click to reset current value and attach to the global value." +msgstr "Kliknij, aby zresetować bieżącą wartość do wartości globalnej." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Kliknij, aby odrzucić bieżące zmiany i zresetować do zapisanej wartości." + +msgid "Process Settings" +msgstr "Ustawienia procesu" + +msgid "Undef" +msgstr "Niezdefiniowany" + +msgid "Unsaved Changes" +msgstr "Niezapisane zmiany" + +msgid "Transfer or discard changes" +msgstr "Przenieść lub odrzucić zmiany" + +msgid "Old Value" +msgstr "Stara wartość" + +msgid "New Value" +msgstr "Nowa wartość" + +msgid "Transfer" +msgstr "Przenieś" + +msgid "Don't save" +msgstr "Nie zapisuj" + +msgid "Discard" +msgstr "Odrzuć" + +msgid "Click the right mouse button to display the full text." +msgstr "Kliknij prawym przyciskiem myszy, aby wyświetlić pełny tekst." + +msgid "All changes will not be saved" +msgstr "Wszystkie zmiany nie zostaną zapisane" + +msgid "All changes will be discarded." +msgstr "Wszystkie zmiany zostaną odrzucone." + +msgid "Save the selected options." +msgstr "Zapisz wybrane opcje." + +msgid "Keep the selected options." +msgstr "Zachowaj wybrane opcje." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Przenieś wybrane opcje do nowo wybranego profilu." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Zapisz wybrane opcje do profilu \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Przenieś wybrane opcje do nowo wybranego profilu \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "Profil \"%1%\" zawiera następujące niezapisane zmiany:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"Profil \"%1%\" nie jest kompatybilny z nowym profilem drukarki i zawiera " +"następujące niezapisane zmiany:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"Profil \"%1%\" nie jest kompatybilny z nowym profilem procesu i zawiera " +"następujące niezapisane zmiany:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "Zmieniono niektóre ustawienia profilu \"%1%\"." + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"Możesz zapisać lub odrzucić zmienione wartości w profilu." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" +"\n" +"Możesz zapisać lub odrzucić zmodyfikowane wartości profilu, lub kontynuować " +"ich używanie w nowym profilu." + +msgid "You have previously modified your settings." +msgstr "Wcześniej zmodyfikowałeś swoje ustawienia." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"Możesz zapisać lub odrzucić zmodyfikowane wartości w profilu, lub " +"kontynuować ich używanie w nowym profilu" + +msgid "Extruders count" +msgstr "Liczba extruderów" + +msgid "General" +msgstr "Ogólne" + +msgid "Capabilities" +msgstr "Możliwości" + +msgid "Show all presets (including incompatible)" +msgstr "Pokaż wszystkie profile (łącznie z niekompatybilnymi)" + +msgid "Select presets to compare" +msgstr "Wybierz profile do porównania" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" +"Możesz przenieść tylko do aktualnie aktywnego profilu, ponieważ został on " +"zmodyfikowany." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"Przenieś wybrane opcje z lewego zestawu ustawień do prawego.\n" +"Uwaga: nowe, zmodyfikowane ustawienia zostaną wybrane w zakładkach ustawień " +"po zamknięciu tego okna dialogowego." + +msgid "Transfer values from left to right" +msgstr "Przenieś wartości z lewej do prawej" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" +"Jeśli ta opcja jest aktywowana, to okno dialogowe może być używane do " +"przenoszenia wybranych wartości z profilu po lewej do profilu po prawej " +"stronie." + +msgid "Add File" +msgstr "Dodaj plik" + +msgid "Set as cover" +msgstr "Ustaw jako okładkę" + +msgid "Cover" +msgstr "Osłona" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "Nazwa \"%1%\" już istnieje." + +msgid "Basic Info" +msgstr "Podstawowe informacje" + +msgid "Pictures" +msgstr "Obrazy" + +msgid "Bill of Materials" +msgstr "Lista filamentów" + +msgid "Assembly Guide" +msgstr "Instrukcja montażu" + +msgid "Author" +msgstr "Autor" + +msgid "Model Name" +msgstr "Nazwa modelu" + +#, c-format, boost-format +msgid "%s Update" +msgstr "Aktualizacja %s" + +msgid "A new version is available" +msgstr "Dostępna jest nowa wersja" + +msgid "Configuration update" +msgstr "Aktualizacja konfiguracji" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "Dostępny jest nowy pakiet konfiguracyjny, czy chcesz go zainstalować?" + +msgid "Description:" +msgstr "Opis:" + +msgid "Configuration incompatible" +msgstr "Niekompatybilna konfiguracja" + +msgid "the configuration package is incompatible with current application." +msgstr "pakiet konfiguracyjny jest niekompatybilny z obecną aplikacją." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"Pakiet konfiguracyjny jest niekompatybilny z obecną aplikacją.\n" +"%s zaktualizuje pakiet konfiguracyjny, w przeciwnym razie nie będzie mógł " +"się uruchomić" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Wyjście z %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "pakiet konfiguracyjny jest niekompatybilny z obecną aplikacją." + +msgid "Configuration updates" +msgstr "Aktualizacje konfiguracji" + +msgid "No updates available." +msgstr "Brak dostępnych aktualizacji." + +msgid "The configuration is up to date." +msgstr "Konfiguracja jest aktualna." + +msgid "Obj file Import color" +msgstr "Importuj kolory z pliku .OBJ" + +msgid "Specify number of colors:" +msgstr "Podaj liczbę kolorów:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "Liczba kolorów powinna mieścić się w zakresie [%d, %d]." + +msgid "Recommended " +msgstr "Zalecane " + +msgid "Current filament colors:" +msgstr "Aktualne kolory filamentów:" + +msgid "Quick set:" +msgstr "Szybkie ustawienie:" + +msgid "Color match" +msgstr "Dopasowanie koloru" + +msgid "Approximate color matching." +msgstr "Przybliżone dopasowanie kolorów." + +msgid "Append" +msgstr "Dołącz" + +msgid "Add consumable extruder after existing extruders." +msgstr "Dodaj ekstruder do użycia po już istniejących ekstruderach" + +msgid "Reset mapped extruders." +msgstr "Zresetuj przypisane ekstrudery." + +msgid "Cluster colors" +msgstr "Klasteryzacja kolorów" + +msgid "Map Filament" +msgstr "Przypisz filament" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Uwaga: Kolor został wybrany. Możesz kliknąć OK \n" +"aby kontynuować, lub dostosować go ręcznie." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Ostrzeżenie: Suma nowo dodanych i \n" +" obecnych ekstruderów przekracza 16." + +msgid "Ramming customization" +msgstr "Dostosowanie wyciskania" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"Ramming oznacza szybką ekstruzję tuż przed zmianą narzędzia w drukarce " +"jednoextruderowej MM. Jego celem jest odpowiednie ukształtowanie końca " +"wyładowanego filamentu, aby nie przeszkadzał on w wstawieniu nowego " +"filamentu i mógł być później ponownie wstawiony. Ta faza jest ważna, a różne " +"filamenty mogą wymagać różnych prędkości ekstruzji, aby uzyskać dobrą formę. " +"Z tego powodu prędkości ekstruzji podczas wyciskania są regulowane.\n" +"\n" +"Jest to ustawienie na poziomie eksperta, nieprawidłowa regulacja " +"prawdopodobnie doprowadzi do zacięć filamentu, zgrzytania koła extrudera itp." + +msgid "Total ramming time" +msgstr "Całkowity czas wyciskania" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "Całkowita objętość wyciskania" + +msgid "Ramming line width" +msgstr "Szerokość linii wyciskania" + +msgid "Ramming line spacing" +msgstr "Odstęp linii wyciskania" + +msgid "Auto-Calc" +msgstr "Auto-obliczenia" + +msgid "Re-calculate" +msgstr "Przelicz ponownie" + +msgid "Flushing volumes for filament change" +msgstr "Objętości płukania przy zmianie filamentu" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Orca będzie przeliczał objętość płukania za każdym razem, gdy zmieni się " +"kolor filamentu. Możesz wyłączyć auto-przeliczanie w Snapmaker Orca > " +"Preferencje" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Objętość płukania (mm³) dla każdej pary filamentów." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Sugerowana objętość płukania w zakresie [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "Mnożnik powinien być w zakresie [%.2f, %.2f]." + +msgid "Multiplier" +msgstr "Mnożnik" + +msgid "unloaded" +msgstr "rozładowywanie" + +msgid "loaded" +msgstr "załadowany" + +msgid "Filament #" +msgstr "Filament #" + +msgid "From" +msgstr "Od" + +msgid "To" +msgstr "Do" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" +"Do wykonania tego zadania wymagany jest Windows Media Player! Czy chcesz " +"włączyć 'Windows Media Player' dla swojego systemu operacyjnego?" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" +"BambuSource nie został poprawnie zarejestrowany do odtwarzania mediów! " +"Naciśnij Tak, aby ponownie go zarejestrować. Będziesz poproszony dwa razy." + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" +"Brakujący komponent BambuSource zarejestrowany do odtwarzania mediów! Proszę " +"ponownie zainstalować Snapmaker Orca lub skonsultować się z pomocą po-" +"sprzedażową." + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" +"Jeśli używasz BambuSource z innej instalacji programu, odtwarzanie wideo " +"może nie działać poprawnie! Naciśnij Tak, aby to naprawić." + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" +"Twój system nie posiada kodeków H.264 dla GStreamer, które są wymagane do " +"odtwarzania wideo. (Spróbuj zainstalować pakiety gstreamer1.0-plugins-bad " +"lub gstreamer1.0-libav, a następnie zrestartuj Snapmaker Orca?)" + +msgid "Bambu Network plug-in not detected." +msgstr "Nie wykryto wtyczki Bambu Network." + +msgid "Click here to download it." +msgstr "Kliknij tutaj, aby pobrać." + +msgid "Login" +msgstr "Logowanie" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "" +"Pakiet konfiguracyjny został zmieniony w poprzednim Przewodniku konfiguracji" + +msgid "Configuration package changed" +msgstr "Zmieniono pakiet konfiguracyjny" + +msgid "Toolbar" +msgstr "Pasek narzędzi" + +msgid "Objects list" +msgstr "Lista obiektów" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Import danych geometrycznych z plików STL/STEP/3MF/OBJ/AMF" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Wklej z schowka" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "Pokaż/Ukryj okno dialogowe ustawień urządzeń 3Dconnexion" + +msgid "Switch table page" +msgstr "Przełącz stronę tabeli" + +msgid "Show keyboard shortcuts list" +msgstr "Pokaż listę skrótów klawiszowych" + +msgid "Global shortcuts" +msgstr "Globalne skróty" + +msgid "Rotate View" +msgstr "Obróć widok" + +msgid "Pan View" +msgstr "Przesuń widok" + +msgid "Mouse wheel" +msgstr "Kółko myszy" + +msgid "Zoom View" +msgstr "Przybliż widok" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Ta funkcja automatycznie ustawia orientację zaznaczonych lub wszystkich " +"obiektów. Jeśli są wybrane obiekty, ustawi tylko te wybrane. W przeciwnym " +"razie ustawia wszystkie obiekty na aktualnej płycie roboczej." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Zwiń/Rozwiń pasek boczny" + +msgid "⌘+Any arrow" +msgstr "⌘+Dowolna strzałka" + +msgid "Movement in camera space" +msgstr "Ruch w przestrzeni kamery" + +msgid "⌥+Left mouse button" +msgstr "⌥+Lewy przycisk myszy" + +msgid "Select a part" +msgstr "Wybierz część" + +msgid "⌘+Left mouse button" +msgstr "⌘+Lewy przycisk myszy" + +msgid "Select multiple objects" +msgstr "Wybierz wiele obiektów" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+Dowolna strzałka" + +msgid "Alt+Left mouse button" +msgstr "Alt+Lewy przycisk myszy" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+Lewy przycisk myszy" + +msgid "Shift+Left mouse button" +msgstr "Shift+Lewy przycisk myszy" + +msgid "Select objects by rectangle" +msgstr "Wybierz obiekty prostokątem" + +msgid "Arrow Up" +msgstr "Strzałka w górę" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Przesuń wybrane o 10 mm w kierunku dodatnim osi Y" + +msgid "Arrow Down" +msgstr "Strzałka w dół" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Przesuń wybrane o 10 mm w kierunku ujemnym osi Y" + +msgid "Arrow Left" +msgstr "Strzałka w lewo" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Przesuń wybrane o 10 mm w kierunku ujemnym osi X" + +msgid "Arrow Right" +msgstr "Strzałka w prawo" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Przesuń wybrane o 10 mm w kierunku dodatnim osi X" + +msgid "Shift+Any arrow" +msgstr "Shift+Dowolna strzałka" + +msgid "Movement step set to 1 mm" +msgstr "Ustaw krok ruchu na 1 mm" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "klawiatura 1-9: ustaw filament dla obiektu/części" + +msgid "Camera view - Default" +msgstr "Widok kamery - Domyślny" + +msgid "Camera view - Top" +msgstr "Widok kamery - Z góry" + +msgid "Camera view - Bottom" +msgstr "Widok kamery - Z dołu" + +msgid "Camera view - Front" +msgstr "Widok kamery - Z przodu" + +msgid "Camera view - Behind" +msgstr "Widok kamery - Z tyłu" + +msgid "Camera Angle - Left side" +msgstr "Kąt kamery - Lewa strona" + +msgid "Camera Angle - Right side" +msgstr "Kąt kamery - Prawa strona" + +msgid "Select all objects" +msgstr "Wybierz wszystkie obiekty" + +msgid "Gizmo move" +msgstr "Przenoszenie za pomocą \"uchwytów\"" + +msgid "Gizmo scale" +msgstr "Skalowanie za pomocą \"uchwytów\"" + +msgid "Gizmo rotate" +msgstr "Obracanie za pomocą \"uchwytów\"" + +msgid "Gizmo cut" +msgstr "Cięcie za pomocą \"uchwytów\"" + +msgid "Gizmo Place face on bed" +msgstr "Położenie na płaszczyźnie za pomocą \"uchwytów\"" + +msgid "Gizmo SLA support points" +msgstr "Punkty podpór SLA za pomocą \"uchwytów\"" + +msgid "Gizmo FDM paint-on seam" +msgstr "Uchwyt malowania szwu FDM" + +msgid "Gizmo Text emboss / engrave" +msgstr "Uchwyt wytłaczania / grawerowania tekstu" + +msgid "Zoom in" +msgstr "Przybliżenie" + +msgid "Zoom out" +msgstr "Oddalenie" + +msgid "Switch between Prepare/Preview" +msgstr "Przełączanie między przygotowaniem/podglądem" + +msgid "Plater" +msgstr "Płyta" + +msgid "Move: press to snap by 1mm" +msgstr "Przesuń: naciśnij, aby przyciągnąć co 1 mm" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Kółko myszy" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Podpory/Kolorowanie: dostosuj promień pędzla" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Kółko myszy" + +msgid "Support/Color Painting: adjust section position" +msgstr "Podpory/Kolorowanie: dostosuj pozycję sekcji" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Kółko myszy" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Kółko myszy" + +msgid "Gizmo" +msgstr "Uchwyt" + +msgid "Set extruder number for the objects and parts" +msgstr "Ustaw numer extrudera dla obiektów i części" + +msgid "Delete objects, parts, modifiers " +msgstr "Usuń obiekty, części, modyfikatory " + +msgid "Select the object/part and press space to change the name" +msgstr "Wybierz obiekt/część i naciśnij spację, aby zmienić nazwę" + +msgid "Mouse click" +msgstr "Kliknięcie myszą" + +msgid "Select the object/part and mouse click to change the name" +msgstr "Wybierz obiekt/część i kliknij myszą, aby zmienić nazwę" + +msgid "Objects List" +msgstr "Lista obiektów" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Pionowy suwak - Przesuń aktywny punkt w górę" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Pionowy suwak - Przesuń aktywny punkt w dół" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Poziomy suwak - Przesuń aktywny punkt w lewo" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Poziomy suwak - Przesuń aktywny punkt w prawo" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "Włącz/wyłącz wyświetlanie jednej warstwy suwaka pionowego" + +msgid "On/Off g-code window" +msgstr "Włącz/Wyłącz okno G-code" + +msgid "Move slider 5x faster" +msgstr "Przesuń suwak 5x szybciej" + +msgid "Shift+Mouse wheel" +msgstr "Shift+Kółko myszy" + +msgid "Horizontal slider - Move to start position" +msgstr "Suwak poziomy - Przesuń do pozycji początkowej" + +msgid "Horizontal slider - Move to last position" +msgstr "Suwak poziomy - Przesuń do ostatniej pozycji" + +msgid "Release Note" +msgstr "Informacje o wydaniu" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "informacje o aktualizacji wersji %s:" + +msgid "Network plug-in update" +msgstr "Aktualizacja wtyczki sieciowej" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Kliknij OK, aby zaktualizować wtyczkę sieciową przy następnym uruchomieniu " +"Snapmaker Orca." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "Dostępna jest nowa wtyczka sieciowa (%s). Czy chcesz ją zainstalować?" + +msgid "New version of Snapmaker Orca" +msgstr "Nowa wersja Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Pomiń tę wersję" + +msgid "Done" +msgstr "Gotowe" + +msgid "resume" +msgstr "wznów" + +msgid "Resume Printing" +msgstr "Wznów zadanie drukowania" + +msgid "Resume Printing(defects acceptable)" +msgstr "Wznów drukowanie (wady są do zaakceptowania)" + +msgid "Resume Printing(problem solved)" +msgstr "Wznów drukowanie (problem został rozwiązany)" + +msgid "Stop Printing" +msgstr "Zatrzymaj Drukowanie" + +msgid "Check Assistant" +msgstr "Sprawdź Asystenta" + +msgid "Filament Extruded, Continue" +msgstr "Gotowe, kontynuuj" + +msgid "Not Extruded Yet, Retry" +msgstr "Jeszcze nie wytłoczono, Spróbuj ponownie" + +msgid "Finished, Continue" +msgstr "Zakończono, Kontynuuj" + +msgid "Load Filament" +msgstr "Ładuj" + +msgid "Filament Loaded, Resume" +msgstr "Filament załadowany, Wznów" + +msgid "View Liveview" +msgstr "Podgląd na żywo" + +msgid "Confirm and Update Nozzle" +msgstr "Potwierdź i zaktualizuj dyszę" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "Nieudane połączenie LAN (wysyłanie pliku do druku)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Krok 1, proszę potwierdzić, że Snapmaker Orca i drukarka są w tej samej sieci " +"LAN." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Krok 2, jeśli IP i kod dostępu poniżej różnią się od rzeczywistych wartości " +"na drukarce, proszę je poprawić." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Kod dostępu" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Gdzie znaleźć IP i kod dostępu do drukarki?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"Krok 3: Sprawdź adres IP za pomocą polecenia ping, aby sprawdzić utratę " +"pakietów i opóźnienia." + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "Zweryfikowano IP i kod dostępu! Możesz zamknąć okno" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "Połączenie nieudane, proszę sprawdzić podwójnie IP i kod dostępu" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Połączenie nieudane! Jeśli twój IP i kod dostępu są poprawne, \n" +"przejdź do kroku 3, aby rozwiązać problemy z siecią" + +msgid "Model:" +msgstr "Model:" + +msgid "Serial:" +msgstr "Seria:" + +msgid "Version:" +msgstr "Wersja:" + +msgid "Update firmware" +msgstr "Aktualizuj oprogramowanie" + +msgid "Beta version" +msgstr "Wersja beta" + +msgid "Latest version" +msgstr "Najnowsza wersja" + +msgid "Updating" +msgstr "Aktualizowanie" + +msgid "Updating failed" +msgstr "Aktualizacja nieudana" + +msgid "Updating successful" +msgstr "Aktualizacja udana" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Czy na pewno chcesz zaktualizować? To zajmie około 10 minut. Nie wyłączaj " +"zasilania podczas aktualizacji drukarki." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Wykryto ważną aktualizację, która musi zostać uruchomiona, zanim będzie " +"można kontynuować drukowanie. Czy chcesz teraz dokonać aktualizacji? Możesz " +"również dokonać aktualizacji później, wybierając opcję 'Aktualizacja " +"oprogramowania'." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"Błąd wersji oprogramowania układowego. Naprawa i aktualizacja są wymagane " +"przed drukowaniem. Czy chcesz zaktualizować teraz? Możesz to również zrobić " +"później na drukarce lub przy następnym uruchomieniu Orca." + +msgid "Extension Board" +msgstr "Płyta rozszerzeń" + +msgid "Saving objects into the 3mf failed." +msgstr "Błąd podczas zapisywania obiektów do pliku 3mf." + +msgid "Only Windows 10 is supported." +msgstr "Obsługiwany jest tylko Windows 10." + +msgid "Failed to initialize the WinRT library." +msgstr "Nie udało się zainicjować biblioteki WinRT." + +msgid "Exporting objects" +msgstr "Eksportowanie obiektów" + +msgid "Failed loading objects." +msgstr "Błąd ładowania obiektów." + +msgid "Repairing object by Windows service" +msgstr "Naprawa obiektu przez usługę Windows" + +msgid "Repair failed." +msgstr "Naprawa nie powiodła się." + +msgid "Loading repaired objects" +msgstr "Ładowanie naprawionych obiektów" + +msgid "Exporting 3mf file failed" +msgstr "Błąd podczas eksportowania pliku 3mf" + +msgid "Import 3mf file failed" +msgstr "Błąd podczas importowania pliku 3mf" + +msgid "Repaired 3mf file does not contain any object" +msgstr "Naprawiony plik 3mf nie zawiera żadnych obiektów" + +msgid "Repaired 3mf file contains more than one object" +msgstr "Naprawiony plik 3mf zawiera więcej niż jeden obiekt" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "Naprawiony plik 3mf nie zawiera żadnego objętości" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "Naprawiony plik 3mf zawiera więcej niż jedną objętość" + +msgid "Repair finished" +msgstr "Naprawa zakończona" + +msgid "Repair canceled" +msgstr "Naprawa anulowana" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Nie udało się skopiować pliku %1% do %2%: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "Należy sprawdzić niezapisane zmiany przed aktualizacją konfiguracji." + +msgid "Configuration package: " +msgstr "Pakiet konfiguracyjny:" + +msgid " updated to " +msgstr " aktualizacja do " + +msgid "Open G-code file:" +msgstr "Otwórz plik G-code:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Jeden obiekt ma pustą pierwszą warstwę i nie może być wydrukowany. Proszę " +"przyciąć dolną część modelu lub włączyć podpory." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "" +"Obiekt nie może być wydrukowany z powodu pustej warstwy między %1% a %2%." + +#, boost-format +msgid "Object: %1%" +msgstr "Obiekt: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Możliwe, że części obiektu na tej wysokości są zbyt cienkie, lub obiekt ma " +"wadliwą siatkę" + +msgid "No object can be printed. Maybe too small" +msgstr "Żaden obiekt nie może być wydrukowany. Może jest za mały" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Nie udało się wygenerować G-code dla nieprawidłowego niestandardowego G-" +"code.\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" +"Proszę sprawdzić niestandardowy G-code lub użyć domyślnego niestandardowego " +"G-code." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Generowanie G-code: warstwa %1%" + +msgid "Inner wall" +msgstr "Wewnętrzna ściana" + +msgid "Outer wall" +msgstr "Zewnętrzna ściana" + +msgid "Overhang wall" +msgstr "Ściana z nawisem" + +msgid "Sparse infill" +msgstr "Wypełnienie" + +msgid "Internal solid infill" +msgstr "Wypełnienie wewn." + +msgid "Top surface" +msgstr "Górna powierzchnia" + +msgid "Bottom surface" +msgstr "Dolna powierzchnia" + +msgid "Internal Bridge" +msgstr "Wewnętrzny most" + +msgid "Gap infill" +msgstr "Wypełnienie szczelin" + +msgid "Support interface" +msgstr "Warstwa łącząca" + +msgid "Support transition" +msgstr "Przejście podpór" + +msgid "Multiple" +msgstr "Wielokrotne" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Nie udało się obliczyć szerokości linii %1%. Nie można uzyskać wartości \"%2%" +"\" " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Nieprawidłowy odstęp podany do Flow::with_spacing(), sprawdź wysokość " +"warstwy i szerokość ekstruzji." + +msgid "undefined error" +msgstr "nieznany błąd" + +msgid "too many files" +msgstr "zbyt wiele plików" + +msgid "file too large" +msgstr "plik za duży" + +msgid "unsupported method" +msgstr "nieobsługiwana metoda" + +msgid "unsupported encryption" +msgstr "niewspierane szyfrowanie" + +msgid "unsupported feature" +msgstr "nieobsługiwana funkcja" + +msgid "failed finding central directory" +msgstr "nie udało się znaleźć centralnego katalogu" + +msgid "not a ZIP archive" +msgstr "to nie jest archiwum ZIP" + +msgid "invalid header or corrupted" +msgstr "nieważny nagłówek lub uszkodzony" + +msgid "unsupported multidisk" +msgstr "niewspierany wielodyskowy" + +msgid "decompression failed" +msgstr "rozpakowywanie nieudane" + +msgid "compression failed" +msgstr "kompresja nieudana" + +msgid "unexpected decompressed size" +msgstr "niespodziewany rozmiar po rozpakowaniu" + +msgid "CRC check failed" +msgstr "błąd sprawdzania CRC" + +msgid "unsupported central directory size" +msgstr "nieobsługiwany rozmiar katalogu centralnego" + +msgid "allocation failed" +msgstr "przydział nieudany" + +msgid "file open failed" +msgstr "nie udało się otworzyć pliku" + +msgid "file create failed" +msgstr "błąd tworzenia pliku" + +msgid "file write failed" +msgstr "błąd zapisu pliku" + +msgid "file read failed" +msgstr "błąd odczytu pliku" + +msgid "file close failed" +msgstr "błąd zamknięcia pliku" + +msgid "file seek failed" +msgstr "plik nie znaleziony" + +msgid "file stat failed" +msgstr "błąd statystyki pliku" + +msgid "invalid parameter" +msgstr "nieprawidłowy parametr" + +msgid "invalid filename" +msgstr "nieprawidłowa nazwa pliku" + +msgid "buffer too small" +msgstr "bufor za mały" + +msgid "internal error" +msgstr "błąd wewnętrzny" + +msgid "file not found" +msgstr "plik nie znaleziony" + +msgid "archive too large" +msgstr "archiwum za duże" + +msgid "validation failed" +msgstr "niepowodzenie weryfikacji" + +msgid "write callback failed" +msgstr "błąd zapisu funkcji zwrotnej" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% jest zbyt blisko obszaru wykluczenia, mogą wystąpić kolizje podczas " +"drukowania." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% jest zbyt blisko innych, mogą wystąpić kolizje." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% jest zbyt wysoki, mogą wystąpić kolizje." + +msgid " is too close to others, there may be collisions when printing." +msgstr "" +" jest zbyt blisko innych modeli, mogą wystąpić kolizje podczas drukowania." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" jest zbyt blisko obszaru wykluczenia, mogą wystąpić kolizje podczas " +"drukowania." + +msgid "Prime Tower" +msgstr "Wieża Czyszcząca" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " jest zbyt blisko innych modeli, mogą wystąpić kolizje.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr " jest zbyt blisko obszaru wykluczenia, mogą wystąpić kolizje.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Nie można drukować jednocześnie wieloma filamentami o znacznych różnicach " +"temperatur. Może to spowodować zablokowanie lub uszkodzenie extrudera i dyszy" + +msgid "No extrusions under current settings." +msgstr "Brak ekstruzji przy obecnych ustawieniach." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"Tryb \"Wygładzony\" timelapsu nie jest wspierany, gdy włączona jest " +"sekwencja \"według obiektu\"." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Proszę wybrać sekwencję druku \"Według obiektu\", aby drukować wiele " +"obiektów w trybie wazy." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"Tryb \"Wazy\" nie działa, gdy obiekt zawiera więcej niż jeden filament." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "Obiekt %1% przekracza maksymalną wysokość objętości budowy." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"Podczas gdy sam obiekt %1% mieści się w przestrzeni roboczej, jego ostatnia " +"warstwa przekracza maksymalną wysokość przestrzeni roboczej." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"Może być konieczne zmniejszenie rozmiaru modelu lub zmiana bieżących " +"ustawień druku i ponowienie próby." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "" +"Zmienna wysokość warstwy nie jest dostępna w przypadku podpór organicznych." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Różne średnice dysz i różne średnice filamentów nie są dozwolone, gdy " +"włączona jest wieża czyszcząca." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"Wieża czyszcząca jest obecnie wspierana tylko z relatywnym adresowaniem " +"extrudera (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"Zapobieganie wyciekom nie jest obecnie wspierane, gdy włączona jest wieża " +"czyszcząca." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"Wieża czyszcząca jest obecnie obsługiwana tylko dla wariantów G-code Marlin, " +"Klipper, RepRap/Sprinter, RepRapFirmware i Repetier." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "Wieża czyszcząca nie jest wspierana w druku \"Według obiektu\"." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"Wieża czyszcząca nie jest wspierana, gdy włączona jest adaptacyjna wysokość " +"warstwy. Wymaga to, aby wszystkie obiekty miały tę samą wysokość warstwy." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"Wieża czyszcząca wymaga, aby \"szczelina podpory\" była wielokrotnością " +"wysokości warstwy" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" +"Wieża czyszcząca wymaga, aby wszystkie obiekty miały tę samą wysokość warstwy" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"Wieża czyszcząca wymaga, aby wszystkie obiekty były drukowane na tej samej " +"liczbie warstw tratwy" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"Wieża czyszcząca wymaga, aby wszystkie obiekty były cięte na tej samej " +"wysokości warstw." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"Wieża czyszcząca jest dostępna dla wielu modeli pod warunkiem, że mają one " +"taką samą wysokość warstwy" + +msgid "Too small line width" +msgstr "Zbyt mała szerokość linii" + +msgid "Too large line width" +msgstr "Zbyt duża szerokość linii" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"Wieża czyszcząca wymaga, aby podpory miały tę samą wysokość warstwy co " +"obiekt." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"Średnica końcówki drzewa organicznego nie może być mniejsza niż szerokość " +"ekstruzji filamentu podpory." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"Średnica gałęzi organicznego wsparcia (drzewo) nie może być mniejsza niż 2x " +"szerokość ekstruzji filamentu podpory." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"Średnica gałęzi organicznego wsparcia nie może być mniejsza niż średnica " +"końcówki podpory (drzewo)." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Używane są wzmocnienia podpór, ale funkcja podpór nie jest włączona. Proszę " +"ją włączyć." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "Wysokość warstwy nie może przekraczać średnicy dyszy" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"Relatywne adresowanie extrudera wymaga resetowania pozycji extrudera na " +"każdej warstwie, aby zapobiec utracie dokładności zmiennoprzecinkowej. Dodaj " +"\"G92 E0\" do layer_gcode." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"Znaleziono \"G92 E0\" w before_layer_gcode, co jest niezgodne z absolutnym " +"adresowaniem extrudera." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"Znaleziono \"G92 E0\" w layer_gcode, co jest niezgodne z absolutnym " +"adresowaniem extrudera." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Płyta robocza %d: %s nie obsługuje filamentu %s." + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" +"Ustawienie zbyt niskiej prędkości jerk może prowadzić do artefaktów na " +"zakrzywionych powierzchniach." + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"Ustawienie jerk przekracza maksymalne jerk drukarki (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca automatycznie ograniczy prędkość jerku, aby nie przekroczyć zdolności " +"drukarki.\n" +"Możesz dostosować ustawienie maksymalnego jerku w konfiguracji swojej " +"drukarki, aby uzyskać wyższe prędkości." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"Ustawienie przyspieszenia przekracza maksymalne przyspieszenie drukarki " +"(machine_max_acceleration_extruding).\n" +"Orca automatycznie ograniczy prędkość przyspieszenia, aby nie przekroczyć " +"zdolności drukarki.\n" +"Możesz dostosować wartość machine_max_acceleration_extruding w konfiguracji " +"swojej drukarki, aby uzyskać wyższe prędkości." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"Ustawienie przyspieszenia przekracza maksymalne przyspieszenie drukarki " +"(machine_max_acceleration_extruding).\n" +"Orca automatycznie ograniczy prędkość przyspieszenia, aby nie przekroczyć " +"zdolności drukarki.\n" +"Możesz dostosować wartość machine_max_acceleration_extruding w konfiguracji " +"swojej drukarki, aby uzyskać wyższe prędkości." + +msgid "Generating skirt & brim" +msgstr "Generowanie Skirtu i Brimu" + +msgid "Exporting G-code" +msgstr "Eksportowanie G-code" + +msgid "Generating G-code" +msgstr "Generowanie G-code" + +msgid "Failed processing of the filename_format template." +msgstr "Niepowodzenie przetwarzania szablonu filename_format." + +msgid "Printable area" +msgstr "Obszar druku" + +msgid "Bed exclude area" +msgstr "Obszar wykluczony z druku" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Obszar niemożliwy do wydrukowania w płaszczyźnie XY. Na przykład, drukarki " +"serii X1 używają przedniego lewego rogu do cięcia filamentu podczas jego " +"zmiany. Obszar jest wyrażony jako wielokąt punktami w następującym formacie: " +"\"XxY, XxY, ...\"" + +msgid "Bed custom texture" +msgstr "Niestandardowa tekstura stołu" + +msgid "Bed custom model" +msgstr "Niestandardowy model stołu" + +msgid "Elephant foot compensation" +msgstr "Kompensacja \"stopy słonia\"" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Zmniejszenie pierwszej warstwy w płaszczyźnie XY o określoną wartość, aby " +"skompensować efekt \"stopy słonia\"" + +msgid "Elephant foot compensation layers" +msgstr "Warstwy kompensacji \"stopy słonia\"" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"Liczba warstw, na które będzie rozciągać się kompensacja \"stopy słonia\". " +"Pierwsza warstwa zostanie zmniejszona o wartość kompensacji 'stopy słonia', " +"a następne warstwy będą zmniejszane liniowo, aż do warstwy wskazanej przez " +"tę wartość." + +msgid "layers" +msgstr "warstwy" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Wysokość każdej warstwy. Mniejsza wysokość warstwy oznacza większą " +"dokładność, ale dłuższy czas drukowania" + +msgid "Printable height" +msgstr "Maksymalna wysokość" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "" +"Maksymalna wysokość możliwa do wydrukowania, ograniczona przez mechanizm " +"drukarki" + +msgid "Preferred orientation" +msgstr "Preferowana orientacja" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" +"Automatyczne orientowanie plików STL na osi Z przy początkowym imporcie" + +msgid "Printer preset names" +msgstr "Nazwy profilu drukarki" + +msgid "Use 3rd-party print host" +msgstr "Użyj serwera druku firm trzecich" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" +"Zezwól na kontrolowanie drukarki BambuLab przez serwery druku innych firm" + +msgid "Hostname, IP or URL" +msgstr "Nazwa hosta, IP lub URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca może przesyłać pliki G-code na hosta drukarki. To pole powinno " +"zawierać nazwę hosta, adres IP lub URL hosta drukarki. Host drukowania za " +"HAProxy z włączoną autoryzacją podstawową można uzyskać, wpisując nazwę " +"użytkownika i hasło w URL w następującym formacie: https://username:" +"password@your-octopi-address/" + +msgid "Device UI" +msgstr "Interfejs użytkownika urządzenia" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Podaj URL interfejsu użytkownika swojego urządzenia, jeśli nie jest taki sam " +"jak print_host" + +msgid "API Key / Password" +msgstr "Klucz API / Hasło" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca może przesyłać pliki G-code na hosta drukarki. To pole powinno " +"zawierać klucz API lub hasło wymagane do uwierzytelnienia." + +msgid "Name of the printer" +msgstr "Nazwa drukarki" + +msgid "HTTPS CA File" +msgstr "Plik CA HTTPS" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Można określić niestandardowy plik certyfikatu CA dla połączeń HTTPS " +"OctoPrint, w formacie crt/pem. Jeśli pozostanie puste, używane jest domyślne " +"repozytorium certyfikatów CA systemu operacyjnego." + +msgid "User" +msgstr "Użytkownik" + +msgid "Password" +msgstr "Hasło" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Ignoruj sprawdzanie unieważnienia certyfikatów HTTPS" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ignoruj sprawdzanie unieważnienia certyfikatów HTTPS w przypadku braku lub " +"offline punktów dystrybucji. Można chcieć włączyć tę opcję dla " +"samopodpisanych certyfikatów, jeśli połączenie zawodzi." + +msgid "Names of presets related to the physical printer" +msgstr "Nazwy profili odnoszących się do drukarki fizycznej" + +msgid "Authorization Type" +msgstr "Typ autoryzacji" + +msgid "API key" +msgstr "Klucz API" + +msgid "HTTP digest" +msgstr "HTTP digest" + +msgid "Avoid crossing wall" +msgstr "Unikaj ruchów nad obrysami" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Omijaj i unikaj przemieszczania się nad ścianą, co może spowodować powstanie " +"grudek na powierzchni" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Maksymalna długość objazdu" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Unikaj ruchów nad obrysami-\n" +"Maksymalna długość objazdu przy unikaniu przejeżdżania nad obrysami. Jeśli " +"objazd miałby wykroczyć poza tę wartość, funkcja \"unikaj ruchów nad obrysami" +"\" zostanie zignorowana dla tej ścieżki. Długość objazdu można zdefiniować " +"jako wartość absolutna lub obliczona procentowo (np. 50%) z długości ruchu " +"bezpośredniego." + +msgid "mm or %" +msgstr "mm lub %" + +msgid "Other layers" +msgstr "Pozostałe warstwy" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Temperatura stołu dla warstw poza pierwszą. Wartość 0 oznacza, że filament " +"nie obsługuje drukowania na Cool Plate" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" +"Temperatura stołu dla warstw, z wyjątkiem pierwszej. Wartość 0 oznacza, że " +"filament nie nadaje się do druku na Textured Cool Plate" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Temperatura stołu dla warstw poza pierwszą. Wartość 0 oznacza, że filament " +"nie obsługuje drukowania na Engineering Plate" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Temperatura stołu dla warstw poza pierwszą. Wartość 0 oznacza, że filament " +"nie obsługuje drukowania na High Temp Plate" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Temperatura stołu dla warstw poza pierwszą. Wartość 0 oznacza, że filament " +"nie obsługuje drukowania na Textured PEI Plate" + +msgid "Initial layer" +msgstr "Pierwsza warstwa" + +msgid "Initial layer bed temperature" +msgstr "Temperatura stołu pierwszej warstwy" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Temperatura stołu pierwszej warstwy. Wartość 0 oznacza, że filament nie " +"obsługuje drukowania na Cool Plate" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" +"Temperatura stołu dla pierwszej warstwy. Wartość 0 oznacza, że filament nie " +"nadaje się do druku na Textured Cool Plate" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Temperatura stołu pierwszej warstwy. Wartość 0 oznacza, że filament nie " +"obsługuje drukowania na Engineering Plate" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Temperatura stołu pierwszej warstwy. Wartość 0 oznacza, że filament nie " +"obsługuje drukowania na High Temp Plate" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Temperatura stołu pierwszej warstwy. Wartość 0 oznacza, że filament nie " +"obsługuje drukowania na Textured PEI Plate" + +msgid "Bed types supported by the printer" +msgstr "Rodzaje płyt roboczych obsługiwanych przez drukarkę" + +msgid "Smooth Cool Plate" +msgstr "Smooth Cool Plate" + +msgid "Engineering Plate" +msgstr "Engineering Plate" + +msgid "Smooth High Temp Plate" +msgstr "Smooth High Temp Plate" + +msgid "Textured Cool Plate" +msgstr "Textured Cool Plate" + +msgid "First layer print sequence" +msgstr "Sekwencja druku pierwszej warstwy" + +msgid "Other layers print sequence" +msgstr "Inna kolejność druku warstw" + +msgid "The number of other layers print sequence" +msgstr "Liczba warstw ze zmienioną kolejnością drukowania" + +msgid "Other layers filament sequence" +msgstr "Kolejność filamenu dla pozostałych warstw" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "" +"Ten G-code jest wstawiany przy każdej zmianie warstwy, tuż przed " +"podniesieniem osi Z" + +msgid "Bottom shell layers" +msgstr "Dolne warstwy powłoki" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"To jest liczba pełnych warstw dolnej powłoki, włączając w to dolną " +"powierzchnie. Jeżeli grubość obliczona na podstawie tej wartości jest " +"mniejsza niż grubość dolnej powłoki, liczba warstw dolnej powłoki zostanie " +"zwiększona" + +msgid "Bottom shell thickness" +msgstr "Grubość dolnej powłoki" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"Ilość dolnych, pełnych warstw zostaje zwiększona podczas przygotowywania " +"modelu do druku (slicingu), jeżeli wyliczona grubość dolnych warstw powłoki " +"jest mniejsza niż ta wartość. Dzięki temu można uniknąć zbyt cienkiej " +"powłoki, gdy wysokość warstwy jest niska. Wartość 0 oznacza wyłączenie tego " +"ustawienia, a grubość dolnej powłoki jest wówczas wyznaczana wyłącznie przez " +"liczbę warstw dolnej powłoki" + +msgid "Apply gap fill" +msgstr "Zastosuj wypełnienie szczelin" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"Umożliwia wypełnienie szpar/szczelin dla wybranych powierzchni. Minimalną " +"długość szczeliny, która zostanie wypełniona, można kontrolować poprzez " +"opcję 'filtruj wąskie szczeliny' znajdującej się poniżej.\n" +"\n" +"Opcje:\n" +"1. Wszędzie: Stosuje wypełnienie na górnych, dolnych i wewnętrznych " +"powierzchniach stałych\n" +"2. Powierzchnie górne i dolne: Stosuje wypełnienie tylko na górnych i " +"dolnych powierzchniach\n" +"3. Nigdzie: Wyłącza wypełnienie\n" + +msgid "Everywhere" +msgstr "Wszędzie" + +msgid "Top and bottom surfaces" +msgstr "Górne i dolne pow." + +msgid "Nowhere" +msgstr "Nigdzie" + +msgid "Force cooling for overhang and bridge" +msgstr "Wymuszone chłodzenie dla nawisów i mostów" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Włącz tę opcję, aby zoptymalizować prędkość wentylatora chłodzącego części " +"dla nawisów i mostów, aby uzyskać lepsze chłodzenie" + +msgid "Fan speed for overhang" +msgstr "Prędkość wentylatora dla nawisów" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Wymuś pracę wentylatora chłodzącego części na tej prędkości podczas " +"drukowania mostu lub ściany nawisającej, która ma duży stopień nawisu. " +"Wymuszanie chłodzenia dla nawisów i mostów może poprawić jakość tych części " +"modelu" + +msgid "Cooling overhang threshold" +msgstr "Próg chłodzenia dla nawisów" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Wymuś pracę wentylatora chłodzącego na określoną prędkość, gdy stopień " +"nawisu drukowanej części przekracza tę wartość. Wyrażone w procentach, co " +"wskazuje, jak duża jest szerokość linii bez podpór z niższej warstwy. 0%% " +"oznacza wymuszanie chłodzenia dla całej zewnętrznej ściany, bez względu na " +"stopień nawisu" + +msgid "Bridge infill direction" +msgstr "Kierunek wypełnienia mostu" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Zmiana ustawienia kąta linii mostów. Gdy ustawienie będzie równe 0, kąt " +"zostanie wyliczony automatycznie. W przeciwnym wypadku, wybrany kąt będzie " +"zastosowany do wszystkich mostów. Aby ustawić kąt na zero, wybierz 180°." + +msgid "Bridge density" +msgstr "Gęstość mostu" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Gęstość zewnętrznych mostów. 100% oznacza pełne wypełnienie mostu. Domyślnie " +"jest 100%." + +msgid "Bridge flow ratio" +msgstr "Współczynnik przepływu przy mostach" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Zmniejsz tę wartość minimalnie (na przykład do 0.9), aby zmniejszyć ilość " +"filamentu dla mostu, co zmniejszy jego wygięcie" + +msgid "Internal bridge flow ratio" +msgstr "Współczynnik przepływu dla wewnętrznych mostów" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"Ta wartość określa grubość wewnętrznej warstwy mostu. Jest to pierwsza " +"warstwa nad rzadkim wypełnieniem. Aby poprawić jakość powierzchni nad tym " +"wypełnieniem, możesz zmniejszyć trochę tą wartość (na przykład do 0.9)" + +msgid "Top surface flow ratio" +msgstr "Współczynnik przepływu górnej powierzchni" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Czynnik ten wpływa na ilość filamentu na górne pełne wypełnienie. Możesz go " +"nieco zmniejszyć, aby uzyskać gładkie wykończenie powierzchni" + +msgid "Bottom surface flow ratio" +msgstr "Współczynnik przepływu dolnej powierzchni" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" +"Ten współczynnik wpływa na ilość materiału w dolnej warstwie pełnego " +"wypełnienia" + +msgid "Precise wall" +msgstr "Ściany o wysokiej precyzji" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"Popraw precyzję powłoki poprzez dostosowanie odstępów zewnętrznych ścian. To " +"również poprawia spójność warstw.\n" +"Uwaga: To ustawienie będzie miało wpływ tylko wtedy, gdy sekwencja ściany " +"jest skonfigurowana jako Wewnętrzna-Zewnętrzna." + +msgid "Only one wall on top surfaces" +msgstr "Tylko jedna ściana na górnych powierzchniach" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Użyj tylko jednej ściany na płaskiej górnej powierzchni, aby zapewnić więcej " +"miejsca dla wzoru górnego wypełnienia" + +msgid "One wall threshold" +msgstr "Próg jednej ściany" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Jeśli górna powierzchnia ma być drukowana i jest częściowo zakryta inną " +"warstwą, nie będzie traktowana jako górna warstwa, jeśli jej szerokość jest " +"mniejsza niż ta wartość. \n" +"Może to być przydatne, aby zapobiec uruchamianiu funkcji 'jeden perymetr na " +"górze' na powierzchni, która powinna być pokryta tylko perymetrami. Ta " +"wartość może być podawana w mm lub jako % szerokości ekstruzji perymetru.\n" +"Uwaga: Jeśli ta funkcja jest włączona, mogą pojawić się artefakty, jeśli " +"masz na następnej warstwie jakieś cienkie elementy, na przykład litery. " +"Ustaw tę opcję na 0, aby usunąć te artefakty." + +msgid "Only one wall on first layer" +msgstr "Tylko jedna ściana na pierwszej warstwie" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Użyj tylko jednej ściany na pierwszej warstwie, aby dać więcej miejsca na " +"wzór dolnego wypełnienia" + +msgid "Extra perimeters on overhangs" +msgstr "Dodatkowe obrysy na nawisach" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Tworzy dodatkowe ścieżeki nad stromymi nawisami i w obszarach, gdzie nie " +"można zakotwiczyć mostów. " + +msgid "Reverse on odd" +msgstr "Przeciwny kierunek na nieparzystych warstwach" + +msgid "Overhang reversal" +msgstr "Przeciwny kierunek przy nawisach" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"Ekstruzja obrysów mających część z nawisem. Będą one drukowane, w przeciwnym " +"kierunku na nieparzystych warstwach. Ten naprzemienny wzór może znacznie " +"poprawić strome nawisy.\n" +"\n" +"Ustawienie to może również pomóc zmniejszyć deformację części dzięki " +"zmniejszeniu naprężeń w ścianach części." + +msgid "Reverse only internal perimeters" +msgstr "Przeciwny kierunek tylko dla wewnętrznych obrysów" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"Zastosuj logikę przeciwnych obrysów tylko na wewnętrznych obrysach. \n" +"\n" +"To ustawienie znacznie zmniejsza naprężenia części, ponieważ są one teraz " +"rozdzielone w przemiennych kierunkach. Powinno to zmniejszyć deformację " +"części, jednocześnie zachowując jakość zewnętrznych ścian. Funkcja ta może " +"być bardzo przydatna dla filamentów podatnych na deformację, takich jak ABS/" +"ASA, a także dla elastycznych filamentów, takich jak TPU i Silk PLA. Może to " +"również pomóc zmniejszyć deformację w unoszących się regionach nad " +"podporami.\n" +"\n" +"Aby to ustawienie było najbardziej skuteczne, zaleca się ustawienie Progu " +"Odwrócenia na 0, aby wszystkie wewnętrzne ściany drukowały się w " +"przemiennych kierunkach na nieparzystych warstwach, niezależnie od stopnia " +"nawisu." + +msgid "Bridge counterbore holes" +msgstr "Mostek dla fazowanych otworów" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"Ta opcja generuje mostki (wsparcie) dla otworów z fazowaniem, co pozwala na " +"ich drukowanie bez konieczności stosowania dodatkowych podpór. Wybierz:\n" +"1. Brak (czyli wyłączone)\n" +"2. Częściowy most (mostek będzie konstruowany tylko nad niektórymi obszarami " +"bez podpory)\n" +"3. Warstwa pomocnicza (tworzy pełnowartościową warstwę podpory mostu)." + +msgid "Partially bridged" +msgstr "Częściowy most" + +msgid "Sacrificial layer" +msgstr "Warstwa pomocnicza" + +msgid "Reverse threshold" +msgstr "Próg odwrócenia" + +msgid "Overhang reversal threshold" +msgstr "Próg odwrócenia przy nawisach" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Ilość mm, jaką musi mieć nawis, aby odwrócenie było uznane za użyteczne. " +"Może być to % szerokości obryski.\n" +"Wartość 0 umożliwia odwrócenie na każdej nieparzystej warstwie, niezależnie " +"od wszystkiego." + +msgid "Classic mode" +msgstr "Tryb klasyczny" + +msgid "Enable this option to use classic mode" +msgstr "Włącz tę opcję, aby używać trybu klasycznego" + +msgid "Slow down for overhang" +msgstr "Zwalnienie przy nawisach" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "Włącz tę opcję, aby zwolnić drukowanie dla różnych stopni nawisu" + +msgid "Slow down for curled perimeters" +msgstr "Zwalnienie na łukach" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Włącz tę opcję, aby zwolnić drukowanie w obszarach, gdzie istnieje " +"potencjalne zagrożenie odkształceniem obwodów" + +msgid "mm/s or %" +msgstr "mm/s lub %" + +msgid "External" +msgstr "Zewn." + +msgid "Speed of bridge and completely overhang wall" +msgstr "Prędkość mostu i całkowicie nawisającej ściany" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "Wewn." + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Prędkość wewnętrznego mostu. Jeśli wartość jest wyrażona w procentach, " +"będzie obliczana na podstawie prędkości mostu. Domyślna wartość to 150%." + +msgid "Brim width" +msgstr "Szerokość Brimu" + +msgid "Distance from model to the outermost brim line" +msgstr "Odległość od modelu do najbardziej zewnętrznej linii Brimu" + +msgid "Brim type" +msgstr "Typ Brimu" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"To kontroluje generowanie Brimu na zewnętrznej i/lub wewnętrznej stronie " +"modeli. Auto oznacza, że szerokość Brimu jest analizowana i obliczana " +"automatycznie." + +msgid "Brim-object gap" +msgstr "Odstęp Brimu od obiektu" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Szczelina między najbardziej wewnętrzną linią Brimu a obiektem może ułatwić " +"usunięcie Brimu" + +msgid "Brim ears" +msgstr "Uszy Brim" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "Rysuj Brim tylko na ostrych krawędziach modelu." + +msgid "Brim ear max angle" +msgstr "Maksymalny kąt uszu Brimu" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Maksymalny kąt, przy którym pojawia się ucho Brimu.\n" +"Jeśli ustawione na 0, Brim nie zostanie utworzony.\n" +"Jeśli ustawione na ~180, Brim zostanie utworzony wszędzie, oprócz prostych " +"sekcji." + +msgid "Brim ear detection radius" +msgstr "Promień wykrywania uszu Brimu" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"Kształt zostanie zredukowany przed wykryciem ostrych kątów. Ten parametr " +"wskazuje minimalną długość odchylenia dla redukcji.\n" +"0, aby dezaktywować" + +msgid "Compatible machine" +msgstr "Kompatybilna maszyna" + +msgid "upward compatible machine" +msgstr "drukarka kompatybilna i wzwyż" + +msgid "Compatible machine condition" +msgstr "Warunek kompatybilnej maszyny" + +msgid "Compatible process profiles" +msgstr "Kompatybilne profile procesów" + +msgid "Compatible process profiles condition" +msgstr "Warunek kompatybilnych profili procesów" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Sekwencja druku, warstwa po warstwie lub obiekt po obiekcie" + +msgid "By layer" +msgstr "Wg.warstwy" + +msgid "By object" +msgstr "Wg.obiektu" + +msgid "Intra-layer order" +msgstr "Kolejność warstw" + +msgid "Print order within a single layer" +msgstr "" +"Kolejność druku obiektów w obrębie jednej warstwy. Domyślnie lub według " +"listy obiektów" + +msgid "As object list" +msgstr "Wg.listy obiektów" + +msgid "Slow printing down for better layer cooling" +msgstr "Zwolnienie druku dla lepszego chłodzenia warstw" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Włącz tę opcję, aby zmniejszyć prędkość drukowania, aby czas ostatniej " +"warstwy nie był krótszy niż próg czasu warstwy w „Maksymalny próg prędkości " +"wentylatora”, aby warstwa mogła być chłodzona przez dłuższy czas. Może to " +"poprawić jakość drobnych szczegółów i małych detali" + +msgid "Normal printing" +msgstr "Normalne drukowanie" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"Domyślne przyspieszenie zarówno normalnego druku, jak i prędkości jałowej, z " +"wyjątkiem pierwszej warstwy" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Domyślny profil filamentu" + +msgid "Default filament profile when switch to this machine profile" +msgstr "Domyślny profil filamentu przy przełączaniu na ten profil drukarki" + +msgid "Default process profile" +msgstr "Domyślny profil procesu" + +msgid "Default process profile when switch to this machine profile" +msgstr "Domyślny profil procesu przy przełączaniu na ten profil drukarki" + +msgid "Activate air filtration" +msgstr "Aktywuj filtrację powietrza" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" +"Aktywuj dla lepszej filtracji powietrza. Komenda G-code: M106 P3 S(0-255)" + +msgid "Fan speed" +msgstr "Prędkość wentylatora" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Prędkość wentylatora wyciągowego podczas drukowania. Ta prędkość zastąpi " +"ustawienia prędkości w niestandardowym G-code dla filamentu" + +msgid "Speed of exhaust fan after printing completes" +msgstr "Prędkość wentylatora wyciągowego po zakończeniu drukowania" + +msgid "No cooling for the first" +msgstr "Brak chłodzenia na pierwszych" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Wyłącz wszystkie wentylatory chłodzące na pierwszych określonych warstwach. " +"Wentylator chłodzący pierwszą warstwę był zazwyczaj wyłączony, aby uzyskać " +"lepsze przyleganie do stołu drukarki" + +msgid "Don't support bridges" +msgstr "Nie twórz podpór pod mostami" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Nie używaj podpór dla całego obszaru mostu, co powoduje, że podpora jest " +"bardzo duża. Most zwykle może być drukowany bezpośrednio bez podpór, jeśli " +"nie jest zbyt długi" + +msgid "Thick bridges" +msgstr "Grube mosty" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Jeśli włączone, mosty są bardziej niezawodne, mogą obejmować dłuższe " +"odległości, ale mogą wyglądać gorzej. Jeśli wyłączone, mosty wyglądają " +"lepiej, ale są niezawodne tylko na krótszych dystansach." + +msgid "Thick internal bridges" +msgstr "Grube wewnętrzne mosty" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"Jeśli włączone, będą używane grube wewnętrzne mosty. Zazwyczaj zaleca się " +"użycie tej funkcji. Jednak rozważ jej wyłączenie, jeśli używasz dużych dysz." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "Nie filtruj małych wewnętrznych mostów (beta)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"To opcja może pomóc w redukcji efektu \"pillowing\" na górnych " +"powierzchniach w mocno pochylonych lub zakrzywionych modelach.\n" +"\n" +"Domyślnie, małe wewnętrzne mosty są odfiltrowywane, a wewnętrzna struktura " +"jest drukowana bezpośrednio na rzadkiej strukturze wypełnienia. To działa " +"dobrze w większości przypadków, przyspieszając drukowanie bez zbyt dużego " +"kompromisu w jakości górnej powierzchni. \n" +"\n" +"Jednakże w mocno pochylonych lub zakrzywionych modelach, zwłaszcza przy " +"niskiej gęstości struktury wypełnienia, może to prowadzić do wywijania się " +"niewspieranej struktury wypełnienia, co powoduje efekt \"pillowing\".\n" +"\n" +"Włączenie tej opcji spowoduje drukowanie wewnętrznej warstwy mostka nad " +"nieco niewspieraną wewnętrzną strukturą wypełnienia. Poniższe opcje " +"kontrolują stopień filtrowania, czyli ilość tworzonych wewnętrznych " +"mostków.\n" +"\n" +"Wyłączone - Wyłącza tę opcję. Jest to zachowanie domyślne i działa dobrze w " +"większości przypadków.\n" +"\n" +"Ograniczone filtrowanie - Tworzy wewnętrzne mosty na mocno pochylonych " +"powierzchniach, unikając tworzenia niepotrzebnych wewnętrznych mostków. To " +"działa dobrze dla większości trudnych modeli.\n" +"\n" +"Brak filtrowania - Tworzy wewnętrzne mosty na każdym potencjalnym " +"wewnętrznym występie. Ta opcja jest przydatna dla mocno pochylonych modeli " +"górnych powierzchni. Jednakże w większości przypadków tworzy zbyt wiele " +"niepotrzebnych mostów." + +msgid "Disabled" +msgstr "Wyłączony" + +msgid "Limited filtering" +msgstr "Ograniczona filtracja" + +msgid "No filtering" +msgstr "Bez filtracji" + +msgid "Max bridge length" +msgstr "Maksymalna długość mostu" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Maksymalna długość mostów, które nie potrzebują podpór. Ustaw na 0, jeśli " +"chcesz, aby wszystkie mosty były podparte lub ustaw większą wartość, jeśli " +"nie chcesz, aby jakiekolwiek most były podpierany." + +msgid "End G-code" +msgstr "Końcowy G-code" + +msgid "End G-code when finish the whole printing" +msgstr "Końcowy G-code po zakończeniu całego druku" + +msgid "Between Object Gcode" +msgstr "G-code między obiektami" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Wstaw G-code między obiektami. Ten parametr będzie miał wpływ tylko wtedy, " +"gdy drukujesz swoje modele obiekt po obiekcie" + +msgid "End G-code when finish the printing of this filament" +msgstr "Końcowy G-code po zakończeniu drukowania tym filamentem" + +msgid "Ensure vertical shell thickness" +msgstr "Zapewnij stałą grubość pionowej powłoki" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"Dodaj pełne wypełnienie w pobliżu nachylonych powierzchni, aby zagwarantować " +"grubość pionowej powłoki (górne + dolne pełne warstwy).\n" +"\n" +"Brak: Nie umieszczaj pełnego wypełnienia w żadnym miejscu. Uwaga: Korzystaj " +"z tej opcji ostrożnie, jeśli twój model posiada nachylone powierzchnie.\n" +"\n" +"Tylko krytyczne: Unikaj dodawania pełnego wypełnienia dla ścian.\n" +"\n" +"Umiarkowane: Dodaj pełne wypełnienie tylko dla silnie nachylonych " +"powierzchni.\n" +"\n" +"Wszystkie: Dodaj pełne wypełnienie dla wszystkich odpowiednio nachylonych " +"powierzchni.\n" +"\n" +"Domyślna wartość to Wszystkie." + +msgid "Critical Only" +msgstr "Tylko krytyczne" + +msgid "Moderate" +msgstr "Umiarkowane" + +msgid "Top surface pattern" +msgstr "Wzór górnej powierzchni" + +msgid "Line pattern of top surface infill" +msgstr "Wzór linii wypełnienia górnej powierzchni" + +msgid "Concentric" +msgstr "Koncentryczny" + +msgid "Rectilinear" +msgstr "Prostoliniowy" + +msgid "Monotonic" +msgstr "Monotoniczny" + +msgid "Monotonic line" +msgstr "Linia monotoniczna" + +msgid "Aligned Rectilinear" +msgstr "Wyrównany prostoliniowy" + +msgid "Hilbert Curve" +msgstr "Krzywa Hilberta" + +msgid "Archimedean Chords" +msgstr "Struny Archimedesa" + +msgid "Octagram Spiral" +msgstr "Spirala oktagramu" + +msgid "Bottom surface pattern" +msgstr "Wzór dolnej powierzchni" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "" +"Wzór linii wypełnienia dolnej powierzchni, nie dotyczy wypełnienia mostu" + +msgid "Internal solid infill pattern" +msgstr "Wzór wewnętrznego pełnego wypełnienia" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"Wzór linii wewnętrznego pełnego wypełnienia. Jeśli zostanie włączona funkcja " +"wykrywania wąskiego wewnętrznego pełnego wypełnienia, dla małego obszaru " +"użyty zostanie wzór koncentryczny." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Szerokość zewnętrznej ściany. Jeśli wyrażona w %, zostanie obliczona na " +"podstawie średnicy dyszy." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Prędkość druku zewnętrznej ściany, która jest najbardziej widoczną " +"zewnętrzną powłoką modelu . Zwykle jest drukowana wolniej niż wewnętrzne " +"ściany, aby uzyskać lepszą jej jakość." + +msgid "Small perimeters" +msgstr "Małe obrysy" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"To ustawienie reguluje prędkość obrysów posiadających promień <= próg małego " +"obrysu (zazwyczaj chodzi o otwory). Jeśli ustawisz wartość procentową (np. " +"80%) to zostanie obliczona z prędkości obrysów ustawionej powyżej. Ustaw " +"zero, aby użyć ustawień automatycznych." + +msgid "Small perimeters threshold" +msgstr "Próg małego obrysu" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "To ustawia próg długości małych obrysów. Domyślny próg to 0 mm" + +msgid "Walls printing order" +msgstr "Kolejność drukowania ścian" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"Sekwencja druku zewnętrznych i wewnętrznych ścian.\n" +"\n" +"Użyj opcji \"wewnętrzna/zewnętrzna\" dla najlepszego efektu nawisów. Jest to " +"spowodowane tym, że ściany zwisające mogą przylegać do sąsiednich obwodów " +"podczas drukowania. Jednakże, opcja ta skutkuje delikatnie obniżoną jakością " +"powierzchni, ponieważ zewnętrzny obrys jest deformowany przez ścianę " +"wewnętrzną, która jest do niej dociskana.\n" +"\n" +"Użyj opcji \"wewnętrzna/zewnętrzna/wewnętrzna\" dla najlepszego wykończenia " +"zewnętrznej powierzchni i dokładności wymiarowej, ponieważ zewnętrzna ściana " +"jest drukowana niezakłócona przez wewnętrzny obwód. Jednak wydajność druku " +"przy nawisach będzie niższa, ponieważ nie ma wewnętrznego obwodu, który " +"mógłby podeprzeć druk zewnętrznej ściany. Ta opcja wymaga co najmniej 3 " +"ścian, aby była skuteczna, ponieważ najpierw drukuje wewnętrzne ściany " +"zaczynając od trzeciego obwodu, następnie zewnętrzny obwód i w końcu " +"pierwszy wewnętrzny obwód. W większości przypadków ta opcja jest polecana " +"jako alternatywa dla opcji zewnętrzna/wewnętrzna.\n" +"\n" +"Użyj opcji \"zewnętrzna/wewnętrzna\", aby uzyskać taką samą jakość " +"zewnętrznej ściany i precyzję wymiarową jak w opcji \"wewnętrzna/zewnętrzna/" +"wewnętrzna\". Jednakże, szwy na osi Z będą wydawać się mniej spójne, " +"ponieważ pierwsza ekstruzja nowej warstwy rozpoczyna się na widocznej " +"powierzchni." + +msgid "Inner/Outer" +msgstr "Wewnętrzna/Zewnętrzna" + +msgid "Outer/Inner" +msgstr "Zewnętrzna/Wewnętrzna" + +msgid "Inner/Outer/Inner" +msgstr "Wewnętrzna/Zewnętrzna/Wewnętrzna" + +msgid "Print infill first" +msgstr "Drukuj najpierw wypełnienie" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" +"Kolejność drukowania ścian/wypełnienia. Gdy pole wyboru nie jest zaznaczone, " +"najpierw drukowane są ściany, co w większości przypadków działa najlepiej.\n" +"Drukowanie najpierw wypełnienia, może pomóc przy ekstremalnych nawisach, " +"ponieważ ściany mają sąsiadujące wypełnienie, do którego przylegają. Jednak " +"wypełnienie może nieznacznie wypchnąć tak wydrukowane ściany w miejscu gdzie " +"są do nich przymocowane. Skutkuje to gorszym wykończeniem zewnętrznej " +"powierzchni. Może to również spowodować prześwitywanie wypełnienia przez " +"zewnętrzne powierzchnie części." + +msgid "Wall loop direction" +msgstr "Kierunek obwodu ściany" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"Kierunek, w którym są drukowane obwody ściany, patrząc z góry.\n" +"\n" +"Domyślnie wszystkie ściany są drukowane w kierunku przeciwnym do ruchu " +"wskazówek zegara, chyba że włączona jest opcja Odwróć dla nieparzystych " +"warstw.Ustawienie tego na dowolną inną opcję niż Auto spowoduje, że kierunek " +"ściany będzie ustalony niezależnie od ustawienia Odwróć dla nieparzystych.\n" +"\n" +"Ta opcja będzie wyłączona, jeśli aktywowany jest tryb Wazy.\n" +"\n" +"Opcie:\n" +"Przeciwnie (przeciwnie do ruchu wskazówek zegara)\n" +"Zgodnie (zgodnie z ruchem wskazówek zegara)" + +msgid "Counter clockwise" +msgstr "Przeciwnie" + +msgid "Clockwise" +msgstr "Zgodnie" + +msgid "Height to rod" +msgstr "Odległość od prowadnicy" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Odległość od końcówki dyszy do dolnej części prowadnicy. Używane do unikania " +"kolizji w druku według obiektu." + +msgid "Height to lid" +msgstr "Odległość do pokrywy" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Odległość od końcówki dyszy do pokrywy. Używane do unikania kolizji w druku " +"według obiektu." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Promień odstępu wokół extrudera. Używane do unikania kolizji w druku obiekt-" +"po-obiekcie." + +msgid "Nozzle height" +msgstr "Wysokość dyszy" + +msgid "The height of nozzle tip." +msgstr "Wysokość końcówki dyszy." + +msgid "Bed mesh min" +msgstr "Min. obszar skanowania stołu" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Ta opcja ustawia minimalny punkt dla dozwolonego obszaru siatki stołu. Ze " +"względu na przesunięcie XY sondy większość drukarek nie jest w stanie " +"zeskanować całego stołu. Aby upewnić się, że punkt skanowania nie wychodzi " +"poza obszar stołu, minimalne i maksymalne punkty siatki stołu powinny być " +"odpowiednio ustawione. Snapmaker Orca sprawdza, czy wartości " +"adaptive_bed_mesh_min/adaptive_bed_mesh_max nie przekraczają tych punktów " +"min./maks. Te informacje zazwyczaj można uzyskać od producenta drukarki. " +"Domyślne ustawienie to (-99999, -99999), co oznacza brak ograniczeń, " +"umożliwiając skanowanie całego stołu." + +msgid "Bed mesh max" +msgstr "Maks. obszar skanowania stołu" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Ta opcja ustawia maksymalny punkt dla dozwolonego obszaru siatki stołu. Ze " +"względu na przesunięcie XY sondy większość drukarek nie jest w stanie " +"zeskanować całego stołu. Aby upewnić się, że punkt skanowania nie wychodzi " +"poza obszar stołu, minimalne i maksymalne punkty siatki stołu powinny być " +"odpowiednio ustawione. Snapmaker Orca sprawdza, czy wartości " +"adaptive_bed_mesh_min/adaptive_bed_mesh_max nie przekraczają tych punktów " +"min./maks. Te informacje zazwyczaj można uzyskać od producenta drukarki. " +"Domyślne ustawienie to (-99999, -99999), co oznacza brak ograniczeń, " +"umożliwiając skanowanie całego stołu" + +msgid "Probe point distance" +msgstr "Odległość między punktami skanowania" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"Ta opcja ustawia preferowaną odległość między punktami skanowania (rozmiar " +"siatki) w kierunku X i Y, przy czym wartość domyślna dla obu kierunków " +"wynosi 50 mm." + +msgid "Mesh margin" +msgstr "Obszar skanowania" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" +"Ta opcja określa dodatkową odległość, o którą ma być rozszerzony adaptacyjny " +"obszar siatki stołu w kierunkach XY." + +msgid "Extruder Color" +msgstr "Kolor extrudera" + +msgid "Only used as a visual help on UI" +msgstr "Używane tylko jako wizualna pomoc w interfejsie użytkownika" + +msgid "Extruder offset" +msgstr "Margines ekstrudera" + +msgid "Flow ratio" +msgstr "Współczynnik przepływu" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"Materiał może ulegać zmianie objętościowej po przejściu między stanem " +"ciekłym a krystalicznym. Ustawienie to proporcjonalnie zmienia przepływ " +"ekstruzji tego filamentu w G-code. Zalecany zakres wartości mieści się " +"między 0,95 a 1,05. Być może możesz dostroić tę wartość, aby uzyskać gładką " +"powierzchnię, gdy występuje lekkie przelewanie lub niedomiar" + +msgid "Enable pressure advance" +msgstr "Włącz wzrost ciśnienia (PA)" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Włącz wzrost ciśnienia (PA), wynik automatycznej kalibracji zostanie " +"nadpisany po włączeniu." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" +"Pressure advance (Klipper), znane również jako współczynnik przyspieszenia " +"liniowego (Marlin)." + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"Domyślna szerokość linii, jeśli inne szerokości linii są ustawione na 0. " +"Jeśli wyrażona w %, zostanie obliczona na podstawie średnicy dyszy." + +msgid "Keep fan always on" +msgstr "Wentylator zawsze włączony" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Jeśli włączysz to ustawienie, wentylator chłodzący części nigdy nie zostanie " +"zatrzymany i będzie pracował przynajmniej z minimalną prędkością, aby " +"zmniejszyć częstotliwość włączania i wyłączania" + +msgid "Don't slow down outer walls" +msgstr "Nie spowalniaj zewnętrznych ścian" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" +"Jeśli ta opcja jest włączona, zapewni to, że zewnętrzne obwody nie będą " +"spowalniane, aby spełnić minimalny czas warstwy. Jest to szczególnie pomocne " +"w poniższych sytuacjach:\n" +"\n" +"1. Aby uniknąć zmian połysku podczas drukowania filamentami z połuskiem.\n" +"2. Aby uniknąć zmian prędkości zewnętrznych ścian, które mogą powodować " +"drobne artefakty ścian, przypominające zygzaki.\n" +"3. Aby uniknąć drukowania z prędkościami, które powodują powstawanie " +"drobnych artefaktów (VFA) na zewnętrznych ścianach.\n" + +msgid "Layer time" +msgstr "Czas warstwy" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"Wentylator chłodzący części zostanie włączony dla warstw, których szacowany " +"czas jest krótszy niż ta wartość. Prędkość wentylatora jest interpolowana " +"między minimalną a maksymalną prędkością wentylatora zgodnie z czasem druku " +"warstwy" + +msgid "Default color" +msgstr "Domyślny kolor" + +msgid "Default filament color" +msgstr "Domyślny kolor filamentu" + +msgid "Filament notes" +msgstr "Uwagi do filamentu" + +msgid "You can put your notes regarding the filament here." +msgstr "Tutaj możesz umieścić notatki dotyczące filamentu." + +msgid "Required nozzle HRC" +msgstr "Wymagana dysza HRC" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"Minimalna twardość dyszy HRC wymagana do druku filamentu. Zero oznacza brak " +"sprawdzania twardości HRC dyszy." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"To ustawienie określa, ile objętości filamentu może być stopione i " +"wyciśnięte na sekundę. Prędkość drukowania jest ograniczana przez maksymalną " +"prędkość przepływu, w przypadku zbyt wysokiego i nierealistycznego " +"ustawienia prędkości. Nie może wynosić zero" + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Czas ładowania filamentu" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Czas ładowania nowego filamentu podczas zmiany filamentu. Tylko do celów " +"statystycznych" + +msgid "Filament unload time" +msgstr "Czas rozładowania filamentu" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Czas rozładunku poprzedniego filamentu podczas zmiany filamentu. Tylko do " +"celów statystycznych" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Średnica filamentu jest używana do obliczania ekstruzji w G-code, więc jest " +"bardzo ważna i powinna być dokładna" + +msgid "Pellet flow coefficient" +msgstr "Współczynnik przepływu granulatu" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" +"Współczynnik przepływu granulatu (Pellet) jest empirycznie wyprowadzony i " +"umożliwia obliczanie objętości w drukarkach korzystających z granulatów.\n" +"\n" +"Wewnętrznie jest przeliczany na średnicę filamentu. Wszystkie pozostałe " +"obliczenia objętości pozostają bez zmian.\n" +"\n" +"średnica_filamentu = sqrt( (4 * współczynnik_przepływu_granulatu) / PI )" + +msgid "Shrinkage" +msgstr "Skurcz" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Podaj procent skurczu, którego filament doświadczy po schłodzeniu (94% jeśli " +"zmierzyłeś 94mm zamiast 100mm). Część będzie skalowana w płaszczyźnie xy, " +"aby to zrekompensować. Wzięto pod uwagę tylko filament używany do obwodu. " +"Upewnij się, że pozostawiłeś wystarczająco dużo miejsca między obiektami, " +"ponieważ ta kompensacja jest wykonywana po przeprowadzeniu kontroli." + +msgid "Loading speed" +msgstr "Prędkość ładowania" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Prędkość używana do ładowania filamentu na wieży czyszczącej." + +msgid "Loading speed at the start" +msgstr "Początkowa prędkość ładowania" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Prędkość używana na samym początku fazy ładowania." + +msgid "Unloading speed" +msgstr "Prędkość rozładowania" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Prędkość stosowana do usuwania filamentu na wieży czyszczącej (nie ma wpływu " +"na wstępną część usuwania filamentu, następującą bezpośrednio po procesie " +"wtłaczania)." + +msgid "Unloading speed at the start" +msgstr "Początkowa prędkość rozładowania" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Prędkość używana do rozładowywania końcówki filamentu zaraz po ramming-u." + +msgid "Delay after unloading" +msgstr "Opóźnienie po rozładowaniu" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Czas bezczynności po rozładowaniu filamentu. Może pomóc w bezproblemowej " +"zmianie narzędzia podczas druku z materiałami elastycznymi, które mogą " +"potrzebować więcej czasu na skurcz termiczny wracając do nominalnego " +"rozmiaru." + +msgid "Number of cooling moves" +msgstr "Liczba ruchów chłodzących" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"Filament jest chłodzony poprzez poruszanie go tam i z powrotem w ruchach " +"chłodzących. Określ pożądaną liczbę tych ruchów." + +msgid "Speed of the first cooling move" +msgstr "Prędkość pierwszego ruchu chłodzącego" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "Ruchy chłodzące stopniowo przyspieszają, zaczynając od tej prędkości." + +msgid "Minimal purge on wipe tower" +msgstr "Minimalna objętość czyszczenia" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"Po zmianie narzędzia (filamentu), dokładna pozycja nowo załadowanego " +"filamentu wewnątrz dyszy może nie być znana, a ciśnienie filamentu " +"prawdopodobnie jeszcze nie jest ustabilizowane. Przed wyczyszczeniem głowicy " +"drukującej do wypełnienia lub do obiektu, Snapmaker Orca zawsze wstępnie " +"wytłoczy tę ilość filamentu do wieży czyszczącej, aby zapewnić niezawodną " +"dalszą ekstruzję." + +msgid "Speed of the last cooling move" +msgstr "Prędkość ostatniego ruchu chłodzącego" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "Ruchy chłodzące stopniowo przyspieszają do tej prędkości." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Czas, który drukarka (lub dodatek Multi Material 2.0) poświęca na ładowanie " +"nowego filamentu podczas zmiany narzędzia (przy wykonywaniu kodu T). Ten " +"czas jest dodawany do szacowanego czasu druku." + +msgid "Ramming parameters" +msgstr "Parametry wyciskania" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Ten ciąg jest edytowany przez RammingDialog i zawiera parametry właściwe dla " +"wyciskania." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Czas, który drukarka (lub dodatek Multi Material 2.0) poświęca na " +"rozładowanie nowego filamentu podczas zmiany narzędzia (przy wykonywaniu " +"kodu T). Ten czas jest dodawany do szacowanego czasu druku." + +msgid "Enable ramming for multitool setups" +msgstr "Włącz wbijanie dla konfiguracji wielonarzędziowych" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Wykonuj raming podczas korzystania z drukarki wieloinstrumentowej (tj. gdy " +"opcja „Pojedynczy extruder wielomateriałowy” w ustawieniach drukarki jest " +"odznaczona). Po zaznaczeniu tej opcji, niewielka ilość filamentu jest szybko " +"wytłaczana na wieżę czyszczącą tuż przed zmianą narzędzia. Ta opcja jest " +"używana tylko wtedy, gdy wieża czyszcząca jest włączona." + +msgid "Multitool ramming volume" +msgstr "Objętość ramingu wieloinstrumentowego" + +msgid "The volume to be rammed before the toolchange." +msgstr "Objętość do wyciśnięcia przed zmianą narzędzia." + +msgid "Multitool ramming flow" +msgstr "Przepływ ramingu wieloinstrumentowego" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "Przepływ używany do ramingu filamentu przed zmianą narzędzia." + +msgid "Density" +msgstr "Gęstość" + +msgid "Filament density. For statistics only" +msgstr "Gęstość filamentu. Tylko do celów statystycznych" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "Typ filamentu" + +msgid "Soluble material" +msgstr "Materiał rozpuszczalny" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"Materiał rozpuszczalny jest powszechnie używany do drukowania podpór i " +"warstw łączących podpory z modelem" + +msgid "Support material" +msgstr "Materiał podporowy" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"Materiał podporowy jest powszechnie używany do drukowania podpór i warstw " +"łączących podpory z modelem" + +msgid "Softening temperature" +msgstr "Temperatura mięknięcia" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"Materiał mięknie w tej temperaturze, więc gdy temperatura stołu jest równa " +"lub wyższa, zaleca się otwarcie drzwi przednich i/lub usunięcie górnej " +"szyby, aby uniknąć zatykania." + +msgid "Price" +msgstr "Cena" + +msgid "Filament price. For statistics only" +msgstr "Cena filamentu. Tylko do celów statystycznych" + +msgid "money/kg" +msgstr "zł/kg" + +msgid "Vendor" +msgstr "Dostawca" + +msgid "Vendor of filament. For show only" +msgstr "Dostawca filamentu. Tylko do celów prezentacyjnych" + +msgid "(Undefined)" +msgstr "(Nieokreślone)" + +msgid "Sparse infill direction" +msgstr "Kierunek wzoru wypełnienia" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Kąt dla wzoru wypełnienia, który kontroluje początek lub główny kierunek " +"linii" + +msgid "Solid infill direction" +msgstr "Kierunek wzoru pełnego wypełnienia" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "Kąt wyznaczający główny kierunek linii dla wzoru pełnego wypełnienia" + +msgid "Rotate solid infill direction" +msgstr "Zmień kierunek pełnego wypełnienia" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "Zmień kierunek pełnego wypełnienia o 90° dla każdej warstwy." + +msgid "Sparse infill density" +msgstr "Gęstość wypełnienia" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"Gęstość wewnętrznego wypełnienia, 100% przekształca całe rzadkie wypełnienie " +"w wypełnienie pełne, a użyty zostanie wzór wewnętrznego pełnego wypełnienia" + +msgid "Sparse infill pattern" +msgstr "Wzór wypełnienia" + +msgid "Line pattern for internal sparse infill" +msgstr "Wzór dla wewnętrznego wypełnienia" + +msgid "Grid" +msgstr "Kratka" + +msgid "Line" +msgstr "Linie" + +msgid "Cubic" +msgstr "Sześcienny" + +msgid "Tri-hexagon" +msgstr "Trójkątne" + +msgid "Gyroid" +msgstr "Gyroid" + +msgid "Honeycomb" +msgstr "Plaster miodu" + +msgid "Adaptive Cubic" +msgstr "Sześcian adaptacyjny" + +msgid "3D Honeycomb" +msgstr "3D Plaster miodu" + +msgid "Support Cubic" +msgstr "Sześcian podparty" + +msgid "Lightning" +msgstr "Piorun" + +msgid "Cross Hatch" +msgstr "Krzyżowy podparty" + +msgid "Sparse infill anchor length" +msgstr "Długość kotwiczenia wypełnienia" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"Połączenie wypełnienia z wewnętrznym obrysem poprzez dodawanie krótkich " +"segmentów obrysu. Gdy wartość jest podana w procentach (przykład: 15%), " +"zostanie ona obliczona na podstawie szerokości ścieżki wypełnienia. Slicer " +"stara się łączyć dwie sąsiednie linie wypełnienia za pomocą krótkiego " +"segmentu obrysu. W sytuacji, gdy nie znajdzie segmentu krótszego niż " +"określony parametr, linia wypełnienia zostanie połączona z segmentem obrysu " +"tylko z jednej strony. Długość tego segmentu zostanie ograniczona do " +"wartości określonej w parametrze infill_anchor, ale nie przekroczy tej " +"wartości. \n" +"Aby wyłączyć funkcję kotwiczenia, należy ustawić wartość na zero. Ustaw " +"zero, aby wyłączyć kotwiczenie obrysów do pojedynczej linii wypełnienia." + +msgid "0 (no open anchors)" +msgstr "0 (brak otwartych kotwic)" + +msgid "1000 (unlimited)" +msgstr "1000 (nieograniczone)" + +msgid "Maximum length of the infill anchor" +msgstr "Maksymalna długość kotwiczenia wypełnienia" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"Łączenie wypełnienia z wewnętrznym obrysem przez dodanie krótkiego segmentu " +"obrysu. Jeśli wyrażone w procentach (np. 15%), zostanie obliczone z " +"szerokości ścieżki wypełnienia. Snapmaker Orca spróbuje połączyć dwie " +"najbliższe linie wypełnienia krótkim segmentem obrysu. Jeśli nie zostanie " +"znaleziony segment krótszy, niż ten parametr, linia wypełnienia zostanie " +"dołączona do segmentu obrysu tylko z jednej strony, a długość segmentu " +"będzie ograniczona do wartości parametru infill_anchor, ale nie dłuższa niż " +"ten parametr.\n" +"Jeśli ustawione na 0, zostanie użyty stary algorytm łączenia wypełnienia, " +"powinien dać ten sam wynik co przy ustawieniu 1000 & 0." + +msgid "0 (Simple connect)" +msgstr "0 (bez przymocowania)" + +msgid "Acceleration of outer walls" +msgstr "Przyspieszenie na zewnętrznych ścianach" + +msgid "Acceleration of inner walls" +msgstr "Przyspieszenie na wewnętrznych ścianach" + +msgid "Acceleration of travel moves" +msgstr "Przyspieszenie ruchów podróżnych" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Przyspieszenie dla wypełnienia górnej powierzchni. Użycie niższej wartości " +"może poprawić jakość górnej powierzchni" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Przyspieszenie na zewnętrznej ścianie. Użycie niższej wartości może poprawić " +"jakość" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Przyspieszenie na mostkach. Jeśli wartość jest wyrażona w procentach (np. " +"50%), będzie obliczana na podstawie przyspieszenia zewnętrznej ściany." + +msgid "mm/s² or %" +msgstr "mm/s² lub %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Przyspieszenie na rzadkim wypełnieniu. Jeśli wartość jest wyrażona w " +"procentach (np. 100%), będzie obliczana na podstawie domyślnego " +"przyspieszenia." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"Przyspieszenie wewnętrznego, pełnego wypełnienia. Jeśli wartość jest " +"wyrażona w procentach (np. 100%), będzie obliczana na podstawie domyślnego " +"przyspieszenia." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Przyspieszenie dla pierwszej warstwy. Użycie niższej wartości może poprawić " +"przyczepność do stołu" + +msgid "Enable accel_to_decel" +msgstr "Włącz accel_to_decel" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "" +"Maksymalne przyspieszenie hamowania Klippera zostanie dostosowane " +"automatycznie" + +msgid "accel_to_decel" +msgstr "Dopasuj przyspieszenie przed zmianą kierunku" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" +"Maksymalne przyspieszenie hamowania Klippera zostanie dostosowane do tego %% " +"przyspieszenia" + +msgid "Jerk of outer walls" +msgstr "Jerk zewnętrznych ścian" + +msgid "Jerk of inner walls" +msgstr "Jerk wewnętrznych ścian" + +msgid "Jerk for top surface" +msgstr "Jerk dla górnej powierzchni" + +msgid "Jerk for infill" +msgstr "Jerk dla wypełnienia" + +msgid "Jerk for initial layer" +msgstr "Jerk pierwszej warstwy" + +msgid "Jerk for travel" +msgstr "Jerk ruchu jałowego" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Szerokość linii dla pierwszej warstwy. Jeśli jest wyrażona jako %, zostanie " +"obliczona na podstawie średnicy dyszy." + +msgid "Initial layer height" +msgstr "Wysokość pierwszej warstwy" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Wysokość pierwszej warstwy. Nieznaczne zwiększenie grubości pierwszej " +"warstwy może poprawić przyczepność do stołu" + +msgid "Speed of initial layer except the solid infill part" +msgstr "Prędkość pierwszej warstwy z wyjątkiem pełnego wypełnienia" + +msgid "Initial layer infill" +msgstr "Wypełnienie pierwszej warstwy" + +msgid "Speed of solid infill part of initial layer" +msgstr "Prędkość pełnego wypełnienia na pierwszej warstwie" + +msgid "Initial layer travel speed" +msgstr "Prędkość jałowa pierwszej warstwy" + +msgid "Travel speed of initial layer" +msgstr "Prędkość jałowa dla pierwszej warstwy" + +msgid "Number of slow layers" +msgstr "Liczba warstw o niższej prędkości" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"Pierwsze kilka warstw jest drukowane wolniej niż zwykle. Prędkość jest " +"stopniowo zwiększana w sposób liniowy przez określoną liczbę warstw." + +msgid "Initial layer nozzle temperature" +msgstr "Temperatura dyszy dla pierwszej warstwy" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" +"Temperatura dyszy do drukowania pierwszej warstwy przy użyciu tego filamentu" + +msgid "Full fan speed at layer" +msgstr "Pełna prędkość wentylatora na warstwie" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"Prędkość wentylatora będzie stopniowo zwiększana liniowo od zera na warstwie " +"\"close_fan_the_first_x_layers\" do maksymalnej na warstwie " +"\"full_fan_speed_layer\". Jeśli \"full_fan_speed_layer\" jest niższa niż " +"\"close_fan_the_first_x_layers\", to wentylator będzie pracować z maksymalną " +"dozwoloną prędkością na warstwie \"close_fan_the_first_x_layers\" + 1." + +msgid "layer" +msgstr "warstwa" + +msgid "Support interface fan speed" +msgstr "Prędkość wentylatora dla warstwy łączącej podpory" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"Ta prędkość wentylatora jest narzucana podczas drukowania wszystkich warstw " +"łączących podpory,\n" +"aby osłabić ich wiązanie przy wyższej prędkości wentylatora. Ustaw na -1, " +"aby wyłączyć to narzucenie.\n" +"Można to nadpisać tylko za pomocą opcji disable_fan_first_layers." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Losowe wibracje podczas drukowania ścian, aby nadać powierzchni chropowaty " +"wygląd.To ustawienie reguluje \"chropowatość\"" + +msgid "Contour" +msgstr "Kontur" + +msgid "Contour and hole" +msgstr "Kontur i otwory" + +msgid "All walls" +msgstr "Wszystkie ściany" + +msgid "Fuzzy skin thickness" +msgstr "Grubość skóry Fuzzy" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"Szerokość w granicach której występuje drganie. Zaleca się, aby była poniżej " +"szerokości linii zewnętrznej ściany." + +msgid "Fuzzy skin point distance" +msgstr "Odstęp między punktami na skórze Fuzzy" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"Średnia odległość między losowymi punktami wprowadzonymi na każdym odcinku " +"linii" + +msgid "Apply fuzzy skin to first layer" +msgstr "Zastosuj skórę Fuzzy na pierwszej warstwie" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "Czy chcesz zastosować skórę Fuzzy już od pierwszej warstwy" + +msgid "Filter out tiny gaps" +msgstr "Filtruj wąskie szczeliny" + +msgid "Layers and Perimeters" +msgstr "Warstwy i obwody" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "Filtruj szczeliny mniejsze niż podany próg" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Prędkość wypełniania szczelin. Przerwa zazwyczaj ma nieregularną szerokość " +"linii i powinna być drukowana wolniej" + +msgid "Precise Z height" +msgstr "Precyzyjna wysokość Z" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Aktywuj tę opcję, aby uzyskać precyzyjną wysokość obiektu po przetworzeniu " +"na warstwy. Precyzyjna wysokość obiektu zostanie uzyskana poprzez dokładne " +"dostosowanie wysokości ostatnich kilku warstw. Należy pamiętać, że jest to " +"parametr eksperymentalny." + +msgid "Arc fitting" +msgstr "Dopasowanie łuków" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" +"Włącz to, aby uzyskać plik G-code, który zawiera ruchy G2 i G3. Tolerancja " +"dopasowania jest taka sama jak rozdzielczość.\n" +"\n" +"Uwaga: Dla maszyn Klipper, zaleca się wyłączenie tej opcji. Klipper nie " +"korzysta z poleceń łuku, ponieważ są one ponownie dzielone na segmenty linii " +"przez oprogramowanie firmware. Skutkuje to obniżeniem jakości powierzchni, " +"ponieważ segmenty linii są konwertowane na łuki przez slicer, a następnie z " +"powrotem na segmenty linii przez oprogramowanie firmware." + +msgid "Add line number" +msgstr "Dodaj numer linii" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "Włącz to, aby dodać numer linii (Nx) na początku każdej linii G-Code" + +msgid "Scan first layer" +msgstr "Skanuj pierwszą warstwę" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Włącz to, aby włączyć kamerę w drukarce do sprawdzania jakości pierwszej " +"warstwy" + +msgid "Nozzle type" +msgstr "Typ dyszy" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"Materiał metalu dyszy. Określa on odporność na ścieranie dyszy oraz rodzaj " +"filamentu, który można drukować" + +msgid "Undefine" +msgstr "Nie zdefiniowane" + +msgid "Hardened steel" +msgstr "Stal hartowana" + +msgid "Stainless steel" +msgstr "Stal nierdzewna" + +msgid "Brass" +msgstr "Mosiądz" + +msgid "Nozzle HRC" +msgstr "Twardość dyszy (HRC)" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"Twardość dyszy. Zero oznacza brak sprawdzania twardości dyszy podczas " +"procesu cięcia." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Struktura drukarki" + +msgid "The physical arrangement and components of a printing device" +msgstr "Fizyczna konstrukcja i komponenty urządzenia do druku" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "Najlepsza pozycja obiektu" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Najlepsza automatyczna pozycja w zakresie [0,1] w stosunku do kształtu stołu." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"Włącz tę opcję, jeśli urządzenie ma dodatkowy wentylator chłodzenia części. " +"Polecenie G-code: M106 P2 S(0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Uruchom wentylator na określoną liczbę sekund wcześniej niż planowany czas " +"startu (możliwe jest użycie ułamków sekundy). Przyjmuje się nieskończone " +"przyspieszenie dla oszacowania tego czasu, przy uwzględnieniu jedynie ruchów " +"G1 i G0 (obsługa ruchów po łuku nie jest wspierana).\n" +"\n" +"To nie spowoduje zmiany ustawień wentylatora z niestandardowych G-code " +"(działają one jak rodzaj bariery).\n" +"\n" +"Nie spowoduje to również zmiany ustawień wentylatora w początkowym G-code, " +"jeśli aktywowana jest opcja \"tylko niestandardowy początkowy G-code\".\n" +"\n" +"Ustaw 0, aby wyłączyć tę funkcję." + +msgid "Only overhangs" +msgstr "Tylko nawisy" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "Będzie uwzględniane tylko opóźnienie w chłodzeniu nawisów." + +msgid "Fan kick-start time" +msgstr "Czas działania wentylatora w trybie wymuszonego startu" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Wysyła polecenie maksymalnej prędkości wentylatora na określony czas, zanim " +"zostanie zmniejszona do docelowej prędkości, aby uruchomić wentylator " +"chłodzenia.\n" +"Jest to przydatne dla wentylatorów, gdzie niskie PWM/moc może być " +"niewystarczające do uruchomienia wentylatora po zatrzymaniu lub do szybszego " +"zwiększenia prędkości obrotowej\n" +"\n" +"Ustaw 0, aby wyłączyć tę funkcję." + +msgid "Time cost" +msgstr "Koszt czasu" + +msgid "The printer cost per hour" +msgstr "Koszt drukarki za godzinę" + +msgid "money/h" +msgstr "zł/h" + +msgid "Support control chamber temperature" +msgstr "Sterowanie temperaturą komory" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Ta opcja jest włączona, jeśli drukarka obsługuje kontrolę temperatury " +"komory\n" +"Polecenie G-code: M141 S(0-255)" + +msgid "Support air filtration" +msgstr "Wsparcie filtracji powietrza" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Włącz to, jeśli drukarka obsługuje filtrację powietrza\n" +"Polecenie G-code: M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "Rodzaj G-code" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Z jakim rodzajem G-code drukarka jest kompatybilna" + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "Drukarka do druku granulatem" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "Włącz tę opcję, jeśli Twoja drukarka używa granulatu zamiast filamentu" + +msgid "Support multi bed types" +msgstr "Wspiera różne typy płyt roboczych" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "Włącz tę opcję, jeśli chcesz używać wielu rodzajów płyt roboczych" + +msgid "Label objects" +msgstr "Etykietuj obiekty" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"Włącz to, aby dodać komentarze do pliku G-Code, oznaczające ruchy druku, do " +"jakiego obiektu należą. Jest to przydatne dla wtyczki Octoprint " +"CancelObject. Te ustawienia NIE są kompatybilne z konfiguracją Single " +"Extruder Multi Material i opcją Wipe into Object / Wipe into Infill." + +msgid "Exclude objects" +msgstr "Wyłącz obiekty" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "Włącz tę opcję, aby dodać polecenie EXCLUDE OBJECT do G-code" + +msgid "Verbose G-code" +msgstr "Rozszerzony G-code" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Włącz to, aby uzyskać plik G-code z komentarzami, w którym każda linia jest " +"wyjaśniana przez opisowy tekst. Jeśli drukujesz z karty SD, dodatkowy " +"rozmiar pliku może spowolnić twoje oprogramowanie." + +msgid "Infill combination" +msgstr "Kombinacja wypełnienia" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Automatycznie łącz wypełnienie z kilku warstw, aby wydrukować je razem i " +"zaoszczędzić czas. Ściana będzie nadal drukowana z pierwotną wysokością " +"warstwy." + +msgid "Filament to print internal sparse infill." +msgstr "Filament do druku wewnętrznego wypełnienia." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Szerokość linii wewnętrznego wypełnienia. Jeśli jest wyrażona w procentach, " +"zostanie obliczona na podstawie średnicy dyszy." + +msgid "Infill/Wall overlap" +msgstr "Nakładanie wypełnienia na obrysy" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" +"Obszar wypełnienia jest nieznacznie powiększony, aby częściowo zachodzić na " +"ścianę i tym zapewnić lepsze połączenie. Wartość procentowa odnosi się do " +"szerokości linii wypełnienia. Ustaw tę wartość na około 10-15%, aby uniknąć " +"nadmiernej ekstruzji materiału, co może prowadzić do nierówności na górnej " +"powierzchni wydruku." + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "Nachodzenie pełnego wypełnienia na ściany" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"Górny obszar wypełnienia jest nieznacznie powiększony, aby zachodził na " +"ścianę w celu lepszego połączenia i zminimalizowania pojawiania się otworów " +"w miejscu, w którym górne wypełnienie styka się ze ścianami. Wartość 25-30% " +"jest dobrym punktem wyjścia, minimalizującym pojawianie się otworów. Wartość " +"procentowa odnosi się do szerokości linii wypełnienia" + +msgid "Speed of internal sparse infill" +msgstr "Prędkość wewnętrznego wypełnienia" + +msgid "Interface shells" +msgstr "Powłoki łączące" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Wymuszaj generowanie warstw między sąsiadującymi materiałami/woluminami. " +"Przydatne przy wydrukach z wieloma ekstruderami, materiałów o przejrzystej " +"strukturze lub rozpuszczalnym materiale do drukowania podpór" + +msgid "Maximum width of a segmented region" +msgstr "Maksymalna szerokość segmentowanej strefy" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Maksymalna szerokość segmentowanej strefy. Wartość zero wyłącza tę funkcję." + +msgid "Interlocking depth of a segmented region" +msgstr "Głębokość zazębiania się podzielonego na segmenty obszaru" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Głębokość zazębiania się podzielonego na segmenty regionu. Wartość zero " +"wyłącza tę funkcję." + +msgid "Use beam interlocking" +msgstr "Użyj struktury zazębiającej" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" +"Wygeneruj strukturę zazębiającą się w miejscach, gdzie stykają się różne " +"filamenty. Poprawia to przyczepność między filamentami, szczególnie w " +"modelach drukowanych z różnych materiałów." + +msgid "Interlocking beam width" +msgstr "Szerokość zazębiania" + +msgid "The width of the interlocking structure beams." +msgstr "Określa szerokość struktury zazębiającej" + +msgid "Interlocking direction" +msgstr "Kierunek zazębiania" + +msgid "Orientation of interlock beams." +msgstr "Orientacja struktury zatrzaskowej" + +msgid "Interlocking beam layers" +msgstr "Liczba warstw zazębienia" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" +"Wysokość struktury zazębiającej wyrażona w liczbie warstw. Mniejsza liczba " +"warstw oznacza większą wytrzymałość, ale większą podatność na wady." + +msgid "Interlocking depth" +msgstr "Głębokość zazębiania" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" +"Odległość od granicy między filamentami potrzebna do generowania struktur " +"zazębiających, mierzona w komórkach. Zbyt mało komórek skutkuje słabą " +"adhezją." + +msgid "Interlocking boundary avoidance" +msgstr "Odległość zapobiegająca zazębieniu" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" +"Odległość od zewnętrznej strony modelu, gdzie struktury zazębiające nie będą " +"generowane, mierzona w komórkach." + +msgid "Ironing Type" +msgstr "Rodzaj prasowania" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"Prasowanie polega na używaniu małego przepływu, aby ponownie wydrukować na " +"tej samej wysokości powierzchnię, w celu uzyskania bardziej gładkiej " +"powierzchni. Ta opcja kontroluje, który poziom jest prasowany" + +msgid "No ironing" +msgstr "Bez prasowania" + +msgid "Top surfaces" +msgstr "Górne powierzchnie" + +msgid "Topmost surface" +msgstr "Tylko ostatnia warstwa" + +msgid "All solid layer" +msgstr "Wszystkie jednolite warstwy" + +msgid "Ironing Pattern" +msgstr "Wzór prasowania" + +msgid "The pattern that will be used when ironing" +msgstr "Wzór, który zostanie użyty podczas prasowania" + +msgid "Ironing flow" +msgstr "Przepływ prasowania" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"Ilość materiału do wytłoczenia podczas prasowania. Względem przepływu o " +"normalnej wysokości warstwy. Zbyt wysoka wartość powoduje nadmierną " +"ekstruzję na powierzchni" + +msgid "Ironing line spacing" +msgstr "Odstęp między liniami" + +msgid "The distance between the lines of ironing" +msgstr "Odstęp między liniami prasowania" + +msgid "Ironing speed" +msgstr "Szybkość prasowania" + +msgid "Print speed of ironing lines" +msgstr "Prędkość drukowania linii dla prasowania" + +msgid "Ironing angle" +msgstr "Kąt prasowania" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"Kąt, pod jakim wykonywane jest prasowanie. Liczba ujemna wyłącza tę funkcję " +"i używa domyślnej metody." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"Ten fragment G-code jest wstawiany przy każdej zmianie warstwy po " +"podniesieniu osi Z" + +msgid "Supports silent mode" +msgstr "Obsługuje tryb cichy" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Czy drukarka obsługuje tryb cichy, w którym drukarka używa niższego " +"przyspieszenia do druku" + +msgid "Emit limits to G-code" +msgstr "Wysyłaj limity do G-code" + +msgid "Machine limits" +msgstr "Limity maszyny" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"Jeśli ta opcja jest włączona, limity maszyny zostaną wysłane do pliku G-" +"code.\n" +"Ta opcja zostanie zignorowana, jeśli wybrany jest G-code Klipper." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Ten G-code zostanie użyty przy pauzie wydruku. Użytkownik może wstawić G-" +"code do przeglądarki gcode" + +msgid "This G-code will be used as a custom code" +msgstr "Ten G-code będzie użyty jako niestandardowy" + +msgid "Small area flow compensation (beta)" +msgstr "Kompensacja przepływu małych obszarów (beta)" + +msgid "Enable flow compensation for small infill areas" +msgstr "" +"Włącz kompensację przepływu dla małych obszarów wypełnienia\n" +"\n" +"\n" +"Jest to zaawansowana funkcja, która umożliwia dokładniejsze kontrolowanie, " +"jak materiał wypełnienia jest nanoszony na małych obszarach" + +msgid "Flow Compensation Model" +msgstr "Model Kompensacji Przepływu" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"Model kompensacji przepływu, używany do dostosowywania przepływu dla małych " +"obszarów wypełnienia. Model jest wyrażony jako para wartości oddzielonych " +"przecinkiem dla długości wytłoczenia i czynników korekty przepływu, jeden " +"zestaw na linię, w następującym formacie: \"1.234,5.678\"" + +msgid "Maximum speed X" +msgstr "Maksymalna prędkość X" + +msgid "Maximum speed Y" +msgstr "Maksymalna prędkość Y" + +msgid "Maximum speed Z" +msgstr "Maksymalna prędkość Z" + +msgid "Maximum speed E" +msgstr "Maksymalna prędkość E" + +msgid "Maximum X speed" +msgstr "Maksymalna prędkość X" + +msgid "Maximum Y speed" +msgstr "Maksymalna prędkość Y" + +msgid "Maximum Z speed" +msgstr "Maksymalna prędkość Z" + +msgid "Maximum E speed" +msgstr "Maksymalna prędkość E" + +msgid "Maximum acceleration X" +msgstr "Maks. przyspieszenie X" + +msgid "Maximum acceleration Y" +msgstr "Maks. przyspieszenie Y" + +msgid "Maximum acceleration Z" +msgstr "Maks. przyspieszenie Z" + +msgid "Maximum acceleration E" +msgstr "Maks. przyspieszenie E" + +msgid "Maximum acceleration of the X axis" +msgstr "Maks. przyspieszenie osi X" + +msgid "Maximum acceleration of the Y axis" +msgstr "Maks. przyspieszenie osi Y" + +msgid "Maximum acceleration of the Z axis" +msgstr "Maks. przyspieszenie osi Z" + +msgid "Maximum acceleration of the E axis" +msgstr "Maks. przyspieszenie osi E" + +msgid "Maximum jerk X" +msgstr "Maksymalny Jerk X" + +msgid "Maximum jerk Y" +msgstr "Maksymalny Jerk Y" + +msgid "Maximum jerk Z" +msgstr "Maksymalny Jerk Z" + +msgid "Maximum jerk E" +msgstr "Maksymalny Jerk E" + +msgid "Maximum jerk of the X axis" +msgstr "Maksymalny Jerk osi X" + +msgid "Maximum jerk of the Y axis" +msgstr "Maksymalny Jerk osi Y" + +msgid "Maximum jerk of the Z axis" +msgstr "Maksymalny Jerk osi Z" + +msgid "Maximum jerk of the E axis" +msgstr "Maksymalny Jerk osi E" + +msgid "Minimum speed for extruding" +msgstr "Minimalna prędkość ekstruzji" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Minimalna prędkość ekstruzji (M205 S)" + +msgid "Minimum travel speed" +msgstr "Minimalna prędkość podczas przemieszczania się" + +msgid "Minimum travel speed (M205 T)" +msgstr "Minimalna prędkość podczas przemieszczania się (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Maks. przyspieszenie ekstruzji" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Maksymalne przyspieszenie ekstruzji (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Maks. przyspieszenie retrakcji" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Maksymalne przyspieszenie cofania (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Maksymalne przyspieszenie podczas ruchów jałowych" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "Maksymalne przyspieszenie podróży (M204 T), dotyczy tylko Marlin 2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"Prędkość wentylatora chłodzenia części może być zwiększona, gdy jest " +"włączona funkcja automatycznego chłodzenia. To jest maksymalne ograniczenie " +"prędkości wentylatora chłodzenia części" + +msgid "Max" +msgstr "Max" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"Największa wysokość warstwy drukowalnej dla extrudera. Używane do " +"ograniczenia maksymalnej wysokości warstwy podczas włączonej adaptacyjnej " +"wysokości warstwy" + +msgid "Extrusion rate smoothing" +msgstr "Wygładzanie przepływu ekstruzji" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Ten parametr wygładza nagłe zmiany szybkości wytłaczania, które występują, " +"gdy drukarka przechodzi od drukowania wytłaczania o wysokim przepływie (duża " +"prędkość/większa szerokość) do wytłaczania o niższym przepływie (mniejsza " +"prędkość/mniejsza szerokość) i odwrotnie.\n" +"\n" +"Określa maksymalną szybkość, o jaką natężenie przepływu wytłaczania w mm3/s " +"może zmieniać się w czasie. Wyższe wartości oznaczają, że dozwolone są " +"większe zmiany szybkości wytłaczania, co skutkuje szybszymi przejściami " +"prędkości.\n" +"\n" +"Wartość 0 wyłącza tę funkcję.\n" +"\n" +"W przypadku drukarek z napędem bezpośrednim o dużej prędkości i wysokim " +"przepływie (takich jak Bambu lab lub Voron) wartość ta zwykle nie jest " +"potrzebna. Może ona jednak zapewnić pewne marginalne korzyści w niektórych " +"przypadkach, gdy prędkości funkcji znacznie się różnią. Na przykład, gdy " +"występują agresywne spowolnienia spowodowane nawisami. W takich przypadkach " +"zalecana jest wysoka wartość około 300-350 mm3/s2, ponieważ pozwala to na " +"wystarczające wygładzenie, aby wspomóc wzrost ciśnienia w celu uzyskania " +"płynniejszego przejścia przepływu.\n" +"\n" +"W przypadku wolniejszych drukarek bez przyspieszenia ciśnienia wartość ta " +"powinna być znacznie niższa. Wartość 10-15 mm3/s2 jest dobrym punktem " +"wyjścia dla extruderów z napędem bezpośrednim i 5-10 mm3/s2 dla extruderów " +"typu Bowden.\n" +"\n" +"Ta funkcja jest znana jako Pressure Equalizer w Prusa slicer.\n" +"\n" +"Uwaga: ten parametr wyłącza dopasowanie łuku (Arc Fitting)." + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "Długość odcinka do wygładzenia" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Mniejsza wartość skutkuje płynniejszymi przejściami prędkości ekstruzji. " +"Jednakże prowadzi to do znacznie większego pliku gcode i większej liczby " +"instrukcji do przetworzenia przez drukarkę.\n" +"\n" +"Domyślna wartość 3 działa dobrze dla większości przypadków. Jeśli Twoja " +"drukarka się zacina, zwiększ tę wartość, aby zredukować liczbę dostosowań.\n" +"\n" +"Dozwolone wartości: 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "Minimalna prędkość wentylatora chłodzenia części" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Prędkość wentylatora pomocniczego. Wentylator pomocniczy będzie pracować z " +"tą prędkością podczas drukowania, z wyjątkiem pierwszych kilku warstw, które " +"są określone jako warstwy bez chłodzenia.\n" +"Proszę włączyć opcję auxiliary_fan w ustawieniach drukarki, aby skorzystać z " +"tej funkcji. Polecenie G-code: M106 P2 S(0-255)" + +msgid "Min" +msgstr "Min" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"Najniższa możliwa do wydrukowania wysokość warstwy dla extrudera. Stosowana " +"jako dolna granica dla adaptacyjnej wysokości warstw" + +msgid "Min print speed" +msgstr "Minimalna prędkość druku" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"Minimalna prędkość druku, do której drukarka zwolni, aby zachować minimalny " +"czas warstwy powyżej, gdy włączona jest opcja zwalniania dla lepszego " +"schładzania warstwy." + +msgid "Nozzle diameter" +msgstr "Średnica dyszy" + +msgid "Diameter of nozzle" +msgstr "Średnica dyszy" + +msgid "Configuration notes" +msgstr "Uwagi do konfiguracji" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Tutaj możesz umieścić notatki, które zostaną dodane do nagłówka pliku G-code." + +msgid "Host Type" +msgstr "Typ hosta" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca może przesyłać pliki G-code do hosta drukarki. To pole musi " +"zawierać rodzaj hosta." + +msgid "Nozzle volume" +msgstr "Objętość dyszy" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Objętość przestrzeni w dyszy między nożem a wylotem dyszy" + +msgid "Cooling tube position" +msgstr "Pozycja rurki chłodzącej" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "Odległość środkowego punktu rurki chłodzącej od końcówki extrudera." + +msgid "Cooling tube length" +msgstr "Długość rurki chłodzącej" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Długość rurki chłodzącej ograniczająca przestrzeń na ruchy chłodzące " +"wewnątrz." + +msgid "High extruder current on filament swap" +msgstr "Wysoki prąd extrudera przy wymianie filamentu" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Może być korzystne zwiększenie prądu silnika extrudera podczas wymiany " +"filamentu, aby umożliwić szybkie podawanie i przezwyciężenie oporu podczas " +"ładowania filamentu o nieprawidłowym kształcie końcówki." + +msgid "Filament parking position" +msgstr "Pozycja parkowania filamentu" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Odległość końcówki extrudera od pozycji, gdzie filament jest parkowany przy " +"rozładowaniu. Powinno to odpowiadać wartości w oprogramowaniu drukarki." + +msgid "Extra loading distance" +msgstr "Dodatkowa długość ładowania" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Gdy ta wartość wynosi zero, to długość ładowania filamentu z pozycji " +"zaparkowanej jest dokładnie taka sama, jak podczas rozładowywania. Jeśli " +"jest dodatnia to jest większa (więcej filamentu zostanie załadowane), jeśli " +"ujemna to jest mniejsza niż przy rozładowywaniu." + +msgid "Start end points" +msgstr "Początkowe i końcowe punkty" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "Punkty początkowe i końcowe, od obszaru cięcia do kanału wyrzutowego." + +msgid "Reduce infill retraction" +msgstr "Zmniejszanie retrakcji wypełnienia" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Nie wykonuj retrakcji, gdy ruch odbywa się całkowicie w obszarze " +"wypełnienia. Oznacza to, że wyciek nie będzie widoczny. Może to zmniejszyć " +"liczbę retrakcji dla skomplikowanego modelu i zaoszczędzić czas druku, ale " +"spowolnić krojenie i generowanie G-code" + +msgid "Filename format" +msgstr "Format nazwy pliku" + +msgid "User can self-define the project file name when export" +msgstr "" +"Użytkownik może samodzielnie zdefiniować nazwę pliku projektu podczas " +"eksportu" + +msgid "Make overhangs printable" +msgstr "Drukuj nawisy bez podpór" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "" +"Modyfikuje tak geometrię, aby drukować elementy wystające bez materiału " +"podporowego." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Drukuj nawisy bez podpór - Maksymalny kąt" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Maksymalny kąt elementów wystających dozwolony po umożliwieniu drukowania " +"bardziej stromych elementów. 90° nie zmieni w ogóle modelu i pozwoli na " +"dowolny element wystający, podczas gdy 0° zastąpi wszystkie elementy " +"wystające materiałem stożkowym." + +msgid "Make overhangs printable - Hole area" +msgstr "Drukuj nawisy bez podpór - Obszar otworów" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Maksymalna powierzchnia otworu w podstawie modelu przed jego wypełnieniem " +"materiałem stożkowym. Wartość 0 wypełni wszystkie otwory w podstawie modelu." + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Wykrywanie ścian nawisu" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Określ procentowy udział nawisów w stosunku do szerokości ekstruzji i użyj " +"różnych prędkości do druku. Dla 100%% nawisów, zostanie użyta prędkość mostu." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Szerokość linii wewnętrznej ściany. Jeśli wyrażona w procentach, zostanie " +"obliczona na podstawie średnicy dyszy." + +msgid "Speed of inner wall" +msgstr "Prędkość wewnętrznej ściany" + +msgid "Number of walls of every layer" +msgstr "Ilość ścian każdej warstwy" + +msgid "Alternate extra wall" +msgstr "Alternatywna dodatkowa ściana" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"To ustawienie dodaje dodatkową ścianę do co drugiej warstwy. W ten sposób " +"wypełnienie jest osadzone pionowo między ścianami, co prowadzi do uzyskania " +"wydruków o większej wytrzymałości.\n" +"\n" +"Kiedy ta opcja jest włączona, to opcja \"zapewnij stałą pionową grubość " +"powłoki\" musi być wyłączona.\n" +"\n" +"Nie jest zalecane korzystanie z wypełnienia typu \"lightning\" jednocześnie " +"z tą opcją, ponieważ wypełnienie to jest ograniczone i nie jest w stanie " +"dostarczyć wystarczającego wsparcia dla dodatkowych obwodów." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Jeśli chcesz przetworzyć wynikowy G-code za pomocą niestandardowych " +"skryptów, wystarczy, że wpiszesz tutaj ich pełne ścieżki. Aby oddzielić " +"kilka skryptów, użyj średnika. Skrypty otrzymają pełną ścieżkę do pliku G-" +"code jako pierwszy argument, a także będą mogły uzyskać dostęp do ustawień " +"konfiguracyjnych Snapmaker Orca, zytając zmienne środowiskowe." + +msgid "Printer notes" +msgstr "Notatki o drukarce" + +msgid "You can put your notes regarding the printer here." +msgstr "Tutaj możesz umieścić notatki dotyczące drukarki." + +msgid "Raft contact Z distance" +msgstr "Odległość Z kontaktu z tratwą" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"Dystans między modelem, a raftem, mierzony w poziomie. Ignorowany dla " +"rozpuszczalnych warstw łączących" + +msgid "Raft expansion" +msgstr "Rozszerzenie tratwy" + +msgid "Expand all raft layers in XY plane" +msgstr "Rozszerzanie wszystkich warstw tratwy w płaszczyźnie XY" + +msgid "Initial layer density" +msgstr "Gęstość pierwszej warstwy" + +msgid "Density of the first raft or support layer" +msgstr "Gęstość pierwszej warstwy raftu lub podpór" + +msgid "Initial layer expansion" +msgstr "Rozszerzenie pierwszej warstwy" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Rozszerz pierwszą warstwę tratwy lub podpory, aby poprawić przyczepność do " +"płyty grzewczej" + +msgid "Raft layers" +msgstr "Ilość warstw tratwy" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"Model zostanie podniesiony o zadaną ilość warstw i umieszczony na podporach. " +"Użyj tej funkcji, aby uniknąć deformacji podczas drukowania ABS" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"Ścieżka G-code jest generowana po uproszczeniu konturu modelu, aby uniknąć " +"zbyt wielu punktów i linii w pliku G-code. Mniejsza wartość oznacza wyższą " +"rozdzielczość i więcej czasu na krojenie" + +msgid "Travel distance threshold" +msgstr "Próg odległości podróży" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Wywołaj retrakcję tylko wtedy, gdy dystans ruchu jałowego jest dłuższy niż " +"ta wartość" + +msgid "Retract amount before wipe" +msgstr "Długość retrakcji przed ruchem czyszczącym" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"Długość szybkiej retrakcji przed czyszczeniem, w stosunku do długości " +"retrakcji." + +msgid "Retract when change layer" +msgstr "Retrakcja przy zmianie warstwy" + +msgid "Force a retraction when changes layer" +msgstr "Wymuś retrakcję przy zmianie warstwy" + +msgid "Retraction Length" +msgstr "Długość retrakcji" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Pewna ilość materiału w ekstruderze jest cofana, aby zapobiec wyciekowi " +"filamentu podczas długiego ruchu. Ustaw zero, aby zablokować retrakcje" + +msgid "Long retraction when cut(experimental)" +msgstr "Długość retrakcji przed odcięciem filamentu (eksperymentalna)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Funkcja eksperymentalna. Wycofanie i odcięcie filamentu na większej " +"odległości podczas jego zmian w celu zminimalizowania objętości płukania. " +"Chociaż znacząco zmniejszy to zużycie filamentu, może to również zwiększyć " +"ryzyko zatkania dyszy lub innych problemów podczas drukowania." + +msgid "Retraction distance when cut" +msgstr "Długość retrakcji podczas cięcia" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Funkcja eksperymentalna. Długość retrakcji przed odcięciem podczas zmiany " +"filamentu" + +msgid "Z hop when retract" +msgstr "Z-hop podczas retrakcji" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Zawsze gdy wykonana jest retrakcja, dysza jest nieco podnoszona, aby " +"stworzyć odstęp między dyszą a wydrukiem. Zapobiega to uderzeniu dyszy w " +"wydruk podczas ruchu jałowego. Użycie linii spiralnej do podniesienia Z może " +"zapobiec powstawaniu strun" + +msgid "Z hop lower boundary" +msgstr "Dolna granica Z-hop" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Jeśli podana jest dodatnia wartość, oś Z będzie podnosić się tylko poniżej " +"ustawionej tutaj granicy. W ten sposób możesz zablokować podnoszenie się osi " +"Z powyżej ustawionej wysokości." + +msgid "Z hop upper boundary" +msgstr "Górna granica Z-hop" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Jeśli podano wartość dodatnią, oś Z będzie podnosić się tylko powyżej " +"określonej tutaj wysokości. Dzięki temu możesz wyłączyć podnoszenie osi Z " +"podczas drukowania pierwszych warstw (na początku drukowania)." + +msgid "Z hop type" +msgstr "Typ Z-hop" + +msgid "Slope" +msgstr "Ukośny" + +msgid "Spiral" +msgstr "Spiralny" + +msgid "Traveling angle" +msgstr "Kąt ruchu" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" +"Kąt ruchu dla typu Z-hop: \"Ukośny\" i \"Spiralny\". Ustawienie go na 90° " +"skutkuje standardowym uniesieniem." + +msgid "Only lift Z above" +msgstr "Z-hop tylko powyżej" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Jeśli ustawisz to na wartość dodatnią, podnoszenie Z będzie miało miejsce " +"tylko powyżej określonego bezwzględnego Z." + +msgid "Only lift Z below" +msgstr "Z-hop tylko poniżej" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Jeśli ustawisz to na wartość dodatnią, podnoszenie Z będzie miało miejsce " +"tylko poniżej określonego bezwzględnego Z." + +msgid "On surfaces" +msgstr "Na powierzchniach" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Wymuszaj zachowanie Z-hop. To ustawienie jest zależne od ustawień powyżej (Z-" +"hop tylko powyżej/poniżej)." + +msgid "All Surfaces" +msgstr "Wszystkie powierzchnie" + +msgid "Top Only" +msgstr "Tylko na górnych" + +msgid "Bottom Only" +msgstr "Tylko na dolnych" + +msgid "Top and Bottom" +msgstr "Na górnych i dolnych" + +msgid "Extra length on restart" +msgstr "Dodatkowa długość przed wznowieniem" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Gdy retrakcja jest kompensowana po ruchu jałowym, ekstruder przepycha tę " +"dodatkową ilość filamentu. To opcja jest rzadko potrzebna." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Jeśli retrakcja jest korygowana po zmianie narzędzia, extruder przepchnie " +"taką dodatkową ilość filamentu." + +msgid "Retraction Speed" +msgstr "Prędkość retrakcji" + +msgid "Speed of retractions" +msgstr "Prędkość retrakcji" + +msgid "Deretraction Speed" +msgstr "Prędkość deretrakcji" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Prędkość ponownego załadowania filamentu do extrudera. Zero oznacza tę samą " +"prędkość co retrakcja" + +msgid "Use firmware retraction" +msgstr "Użyj retrakcji z firmware" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"To eksperymentalne ustawienie używa komend G10 i G11, aby oprogramowanie " +"obsługiwało retrakcję. Jest to obsługiwane tylko w najnowszych wersjach " +"Marlin." + +msgid "Show auto-calibration marks" +msgstr "Pokaż znaczniki autokalibracji" + +msgid "Disable set remaining print time" +msgstr "Wyłącz ustawianie pozostałego czasu druku" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" +"Zablokuj generowanie polecenia M73: Ustaw pozostały czas druku w końcowym G-" +"code" + +msgid "Seam position" +msgstr "Pozycja szwu" + +msgid "The start position to print each part of outer wall" +msgstr "Początkowa pozycja do drukowania każdej części zewnętrznej ściany" + +msgid "Nearest" +msgstr "Najbliższy" + +msgid "Aligned" +msgstr "Wyrównany" + +msgid "Back" +msgstr "Tył" + +msgid "Random" +msgstr "Losowo" + +msgid "Staggered inner seams" +msgstr "Przesunięte wewnętrzne szwy" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Ta opcja powoduje, że wewnętrzne szwy są przesunięte do tyłu w oparciu o ich " +"głębokość, tworząc wzór zygzaka." + +msgid "Seam gap" +msgstr "Szczelina szwu" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Aby zmniejszyć widoczność szwu w ekstruzji zamkniętej pętli, pętla jest " +"przerywana i skracana o określoną ilość.\n" +"Ta ilość może być określona w milimetrach lub jako procent obecnej średnicy " +"extrudera. Domyślna wartość tego parametru to 10%." + +msgid "Scarf joint seam (beta)" +msgstr "Szew ukośny (beta)" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Zastosuj szew ukośny, aby zminimalizować widoczność szwu i zwiększyć jego " +"wytrzymałość." + +msgid "Conditional scarf joint" +msgstr "Warunkowe szwy ukośne" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Zastosuj szwy ukośne jedynie do gładkich obwodów, gdzie tradycyjne szwy nie " +"maskują skutecznie szwów w ostrych narożnikach." + +msgid "Conditional angle threshold" +msgstr "Warunkowy próg kąta" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"Ten parametr określa minimalny kąt do zastosowania szwu ukośnego.\n" +"Jeśli maksymalny kąt w obrębie pętli obwodu przekroczy tę wartość (co " +"wskazuje na brak ostrych narożników), zostanie użyty szew ukośny. Domyślna " +"wartość to 155°." + +msgid "Conditional overhang threshold" +msgstr "Wartość progowa nawisu" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"Ten parametr określa wartości progowe nawisu dla zastosowania szwu ukośnego. " +"Jeśli niepodparta część obwodu jest mniejsza niż ten próg, zostanie " +"zastosowany szew ukośny. Domyślny próg jest ustawiony na 40% szerokości " +"zewnętrznego obwodu. Ze względów wydajnościowych stopień nawisu jest " +"szacowany." + +msgid "Scarf joint speed" +msgstr "Prędkość szwu ukośnego" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"Ta opcja ustawia prędkość druku dla szwów ukośnych. Zaleca się drukowanie " +"szwów ukośnych z niższą prędkością (poniżej 100 mm/s). Zaleca się również " +"włączenie 'Wygładzania współczynnika ekstruzji', jeśli ustawiona prędkość " +"znacząco różni się od prędkości zewnętrznych lub wewnętrznych obwodów. " +"Jeżeli prędkość określona tutaj jest wyższa niż prędkość zewnętrznych lub " +"wewnętrznych obwodów, drukarka domyślnie użyje wolniejszej z dwóch " +"prędkości. Jeśli prędkość jest podana w procentach (np. 80%), jest ona " +"obliczana na podstawie prędkości zewnętrznego lub wewnętrznego obwodu. " +"Wartość domyślna wynosi 100%." + +msgid "Scarf joint flow ratio" +msgstr "Współczynnik przepływu szwu ukośnego" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" +"Ten współczynnik wpływa na ilość materiału potrzebną dla szwów ukośnych." + +msgid "Scarf start height" +msgstr "Wysokość początkowa szwu ukośnego" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Początkowa wysokość szwu ukośnego.\n" +"Ta wartość może być określona w milimetrach lub jako procent bieżącej " +"wysokości warstwy. Domyślna wartość tego parametru to 0." + +msgid "Scarf around entire wall" +msgstr "Szew ukośny obejmujący cały obrys ściany" + +msgid "The scarf extends to the entire length of the wall." +msgstr "Szew rozciąga się na całą długość ściany" + +msgid "Scarf length" +msgstr "Długość szwu ukośnego" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Długość szwu ukośnego. Ustawienie tego parametru na zero wyłączy tą funkcje." + +msgid "Scarf steps" +msgstr "Kroki szwu ukośnego" + +msgid "Minimum number of segments of each scarf." +msgstr "Minimalna liczba segmentów każdego szwu ukośnego." + +msgid "Scarf joint for inner walls" +msgstr "Szwy ukośne dla wewnętrznych obwodów" + +msgid "Use scarf joint for inner walls as well." +msgstr "Zastosuj szwy ukośne również do wewnętrznych obrysów." + +msgid "Role base wipe speed" +msgstr "Prędkość czyszczenia w oparciu o rolę ekstruzji" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"Szybkość czyszczenia głowicy drukującej jest ustalana na podstawie prędkości " +"aktualnie używanej w procesie ekstruzji. Na przykład, jeżeli czyszczenie " +"jest przeprowadzane zaraz po wydrukowaniu zewnętrznej ścianki modelu, to dla " +"czyszczenia wykorzystywana jest prędkość, która została zastosowana przy " +"drukowaniu tej ścianki." + +msgid "Wipe on loops" +msgstr "Czyszczenie na pętlach" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Aby zminimalizować widoczność szwu w ekstruzji zamkniętej pętli, przed " +"opuszczeniem pętli przez extruder wykonuje się mały ruch do wewnątrz." + +msgid "Wipe before external loop" +msgstr "Czyszczenie przed zewnętrzną pętlą" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"Aby zminimalizować widoczność potencjalnego nadmiernego wytłaczania na " +"początku zewnętrznego obwodu podczas drukowania z kolejnością drukowania " +"Ściana Zewnętrzna/Wewnętrzna lub Wewnętrzna/Zewnętrzna/Wewnętrzna, " +"deretrakcja jest wykonana nieco od wewnątrz od początku zewnętrznego obwodu. " +"W ten sposób wszelkie potencjalne nadmierne wytłaczanie jest ukryte przed " +"zewnętrzną powierzchnią. \n" +"\n" +"Jest to przydatne podczas drukowania z kolejnością drukowania Ściana " +"zewnętrzna/Wewnętrzna lub Wewnętrzna/Zewnętrzna/Wewnętrzna, ponieważ w tych " +"trybach jest bardziej prawdopodobne, że zewnętrzny obrys zostanie " +"wydrukowany bezpośrednio po ruchu deretrakcji." + +msgid "Wipe speed" +msgstr "Prędkość czyszczenia" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"Prędkość czyszczenia jest ustalona przez ustawienie prędkości określone w " +"tej konfiguracji. Jeśli wartość jest wyrażona w procentach (np. 80%), będzie " +"obliczana na podstawie wcześniej ustawionej prędkości. Domyślna wartość dla " +"tego parametru to 80%" + +msgid "Skirt distance" +msgstr "Odstęp Skirtu od obiektu" + +msgid "Distance from skirt to brim or object" +msgstr "Odległość Skirtu do Brimu albo od obiektu" + +msgid "Skirt height" +msgstr "Wysokość Skirtu" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Ile warstw Skirtu. Zwykle tylko jedna warstwa" + +msgid "Draft shield" +msgstr "Draft shield" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"Draft Shield (\"ochrona przed przeciągiem\")jest przydatna do ochrony " +"wydruku z ABS lub ASA przed wypaczaniem i oderwaniem się od stołu drukarki z " +"powodu podmuchów powietrza. Zazwyczaj jest to potrzebne tylko w przypadku " +"drukarek otwartych, czyli bez obudowy.\n" +"\n" +"Opcje:\n" +"Włączony = Skirt jest takiej samej wysokości, jak najwyższy wydrukowany " +"obiekt.\n" +"Ograniczony =Skirt jest takiej samej wysoki, jak został określony w wysokość " +"Skirtu.\n" +"\n" +"Uwaga: Aktywując funkcję Draft Shield, Skirt zostanie wydrukowany w takiej " +"odległości od obiektu jak określono w odstęp Skirtu od obiektu. Jeśli w tym " +"samym czasie Brim jest też aktywny, może dojść do jego przecięcia się ze " +"Skirt-em. Aby temu zapobiec, zwiększ wartość odległości Skirt - Obiekt\n" + +msgid "Limited" +msgstr "Ograniczony" + +msgid "Enabled" +msgstr "Włączony" + +msgid "Skirt loops" +msgstr "Ilość pętli Skirtu" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "To jest liczba pętli Skirtu. Zero oznacza, wyłączone tej funkcji" + +msgid "Skirt speed" +msgstr "Prędkość Skirtu" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" +"Prędkość Skirtu, w mm/s. Zero oznacza użycie domyślnej prędkości ekstruzji " +"warstwy." + +msgid "Skirt minimum extrusion length" +msgstr "Minimalna długość ekstruzji Skirtu" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"Minimalna długość ekstruzji filamentu podczas drukowania Skirtu, wyrażona w " +"milimetrach. Wartość zero oznacza, że ta funkcja jest wyłączona. \n" +"\n" +"Użycie wartości innej niż 0 jest przydatne, kiedy drukarka jest ustawiona " +"tak aby nie drukowała początkowej linii czyszczącej." + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"Prędkość drukowania w wyeksportowanym gcode zostanie zwolniona, gdy " +"szacowany czas warstwy jest krótszy niż ta wartość, aby uzyskać lepsze " +"chłodzenie tych warstw" + +msgid "Minimum sparse infill threshold" +msgstr "Minimalny próg wypełnienia" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"Obszar wypełnienia, który jest mniejszy od wartości progowej zostaje " +"zastąpiony wewnętrznym, pełnym wypełnieniem" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Szerokość linii wewnętrznego pełnego wypełnienia. Jeśli wyrażona w " +"procentach, będzie obliczana na podstawie średnicy dyszy." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"Prędkość wewnętrznego pełnego wypełnienia, nie dotyczy górnej i dolnej " +"powierzchni" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Tryb Wazy wygładza ruchy osi z zewnętrznego konturu. Zamienia cały model w " +"wydruk jednościenny z pełnymi dolnymi warstwami. Końcowy wygenerowany model " +"nie ma szwu" + +msgid "Smooth Spiral" +msgstr "Wygładzona Spirala" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Wygładzona Spirala wygładza również ruchy w osiach X i Y, dzięki czemu nie " +"jest widoczny żaden szew, nawet w kierunkach XY na ścianach, które nie są " +"pionowe" + +msgid "Max XY Smoothing" +msgstr "Maksymalne Wygładzanie XY" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Maksymalna odległość, o którą można przesunąć punkty w płaszczyźnie XY, aby " +"spróbować uzyskać gładką spiralę. Jeśli wyrażone jako %, będzie obliczane " +"względem średnicy dyszy." + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Jeśli wybrany jest tryb \"Tradycyjny\", dla każdego wydruku będzie tworzony " +"film poklatkowy (timelapse). Po wydrukowaniu każdej warstwy robione jest " +"zdjęcie kamerą w komorze. Wszystkie te zdjęcia są komponowane w film " +"poklatkowy po zakończeniu drukowania. Jeśli wybrany jest tryb \"Wygładź\", " +"głowica drukująca przesunie się w pobliże otworu wyrzutowego przy każdej " +"zmianie warstwy, a następnie zrobi zdjęcie. Ponieważ stopiony filament może " +"wyciekać z dyszy podczas robienia zdjęcia, wieża czyszcząca jest wymagana w " +"trybie \"Wygładź\" do czyszczenia dyszy." + +msgid "Traditional" +msgstr "Tradycyjny" + +msgid "Temperature variation" +msgstr "Wariacje temperatury" + +msgid "Start G-code" +msgstr "Początkowy G-code" + +msgid "Start G-code when start the whole printing" +msgstr "Początkowy G-code przy rozpoczynaniu całego drukowania" + +msgid "Start G-code when start the printing of this filament" +msgstr "Początkowy G-code przy rozpoczynaniu drukowania tym filamentem" + +msgid "Single Extruder Multi Material" +msgstr "Pojedynczy extruder wielomateriałowy" + +msgid "Use single nozzle to print multi filament" +msgstr "Użyj pojedynczej dyszy do drukowania wieloma filamentami" + +msgid "Manual Filament Change" +msgstr "Ręczna zmiana filamentu" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Włącz tę opcję, aby pominąć niestandardowy G-code zmiany filamentu tylko na " +"początku druku. Komenda zmiany narzędzia (np. T0) będzie pomijana przez cały " +"proces drukowania. Jest to przydatne przy ręcznym drukowaniu " +"wielomateriałowym, gdzie używamy M600/PAUSE, aby wywołać akcję ręcznej " +"zmiany filamentu." + +msgid "Purge in prime tower" +msgstr "Oczyszczanie na wieży czyszczącej" + +msgid "Purge remaining filament into prime tower" +msgstr "Oczyszczanie pozostałego filamentu do wieży czyszczącej" + +msgid "Enable filament ramming" +msgstr "Włącz szybką ekstruzję filamentu" + +msgid "No sparse layers (beta)" +msgstr "Brak warstw bez czyszczenia (beta)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Jeśli włączone to wieża czyszcząca nie będzie drukowana na warstwach, na " +"których nie ma zmian koloru. Na kolejnych warstwach ze zmianami koloru " +"ekstruder zjedzie w dół, aby kontynuować czyszczenie na wieży. Pamiętaj, że " +"to użytkownik musi upewnić się, że nie dojdzie do kolizji głowicy z " +"wydrukiem." + +msgid "Prime all printing extruders" +msgstr "Przygotuj wszystkie extrudery do drukowania" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Jeśli włączone, wszystkie extrudery do drukowania będą przygotowane na " +"przedniej krawędzi stołu drukującego na początku druku." + +msgid "Slice gap closing radius" +msgstr "Promień zamykania szpar" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Szpary mniejsze niż dwukrotność wartości parametru \"promień zamykania szpar" +"\" zostaną zamknięte przy cięciu. Operacja zamykania szpar może zmniejszyć " +"finalną rozdzielczość wydruku, więc zalecane jest ustawienie tej wartości na " +"rozsądnie niskim poziomie." + +msgid "Slicing Mode" +msgstr "Tryb cięcia" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Użyj \"Parzysto-nieparzysty\" dla modeli samolotów 3DLabPrint. Użyj " +"\"Zamknij otwory\" do zamknięcia wszystkich otworów w modelu." + +msgid "Regular" +msgstr "Regularny" + +msgid "Even-odd" +msgstr "Parzysto-nieparzysty" + +msgid "Close holes" +msgstr "Zamknij otwory" + +msgid "Z offset" +msgstr "Przesunięcie w osi Z" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Wartość tego ustawienia zostanie dodana (lub odjęta) od wszystkich koordynat " +"w osi Z w pliku wyjściowym G-code. Jest używana dla korekcji złego położenia " +"wyłącznika krańcowego osi Z. Np. jeśli końcówka dyszy znajduje się 0.3 mm " +"ponad położeniem zerowym, ustaw tutaj -0.3 (lub napraw krańcówkę).\"" + +msgid "Enable support" +msgstr "Włącz" + +msgid "Enable support generation." +msgstr "Włącz generowanie podpór." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"tryb 'normalny(auto)' oraz 'drzewo(auto)' służą do automatycznego " +"generowania podpór. Jeśli wybierzesz 'normalny(manual)' lub " +"'drzewo(manual)', zostaną wygenerowane jedynie podpory wymuszone" + +msgid "normal(auto)" +msgstr "normalny (auto)" + +msgid "tree(auto)" +msgstr "drzewo (auto)" + +msgid "normal(manual)" +msgstr "normalny (manual)" + +msgid "tree(manual)" +msgstr "drzewo (manual)" + +msgid "Support/object xy distance" +msgstr "Odległość XY miedzy podporą a obiektem" + +msgid "XY separation between an object and its support" +msgstr "Odstęp materiału podporowego od modelu w osiach XY" + +msgid "Pattern angle" +msgstr "Kąt wzoru" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"To ustawienie odpowiada za obrót materiału podporowego w płaszczyźnie " +"poziomej." + +msgid "On build plate only" +msgstr "Tylko na stole" + +msgid "Don't create support on model surface, only on build plate" +msgstr "Nie twórz podpór na powierzchni modelu, tylko na stole" + +msgid "Support critical regions only" +msgstr "Podpory tylko dla krytycznych obszarów" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Twórz podpory tylko dla krytycznych obszarów, takich jak ostra krawędź, " +"wspornik, itp." + +msgid "Remove small overhangs" +msgstr "Usuń małe nawisy" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "Usuń małe nawisy, które prawdopodobnie nie wymagają podpór." + +msgid "Top Z distance" +msgstr "Odstęp góry w osi Z" + +msgid "The z gap between the top support interface and object" +msgstr "Odstęp osi Z między górną warstwą łączącą podporę z obiektem" + +msgid "Bottom Z distance" +msgstr "Odstęp spodu w osi Z" + +msgid "The z gap between the bottom support interface and object" +msgstr "Odległość w osi Z między dolną warstwą łączącyą a obiektem" + +msgid "Support/raft base" +msgstr "Podstawa podpory/tratwy" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filament do drukowania podstawy podpory i raftu. \"Domyślnie\" oznacza brak " +"wyboru konkretnego filamentu dla ich podstawy. Zostanie użyty obecny filament" + +msgid "Avoid interface filament for base" +msgstr "Zredukuj ilość materiału warstwy łączącej dla podstawy" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Jeśli to możliwe, unikaj używania filamentu podporowego do drukowania " +"podstawy podpór." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Szerokość linii podpory. Jeśli wyrażona w procentach, będzie obliczona na " +"podstawie średnicy dyszy." + +msgid "Interface use loop pattern" +msgstr "Użyj wzoru pętli dla warstw łączących" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "Przykryj górną warstwę stykową podpór pętlami. Domyślnie wyłączone." + +msgid "Support/raft interface" +msgstr "Warstwy łączące podpory/tratwy" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filament do drukowania warstw łączących podpory z modelem. \"Domyślnie\" " +"oznacza brak konkretnego filamentu dla podpory i używanie obecnego filamentu" + +msgid "Top interface layers" +msgstr "Górne warstwy łączące" + +msgid "Number of top interface layers" +msgstr "Liczba górnych warstw łączących" + +msgid "Bottom interface layers" +msgstr "Dolne warstwy łączące" + +msgid "Number of bottom interface layers" +msgstr "Liczba dolnych warstw łączących" + +msgid "Same as top" +msgstr "Takie samo jak u góry" + +msgid "Top interface spacing" +msgstr "Rozstaw górnych warstw łączących" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "" +"Odstęp między liniami powierzchni warstwy łączącej. Wartość zero oznacza, że " +"warstwa łącząca jest jednolita i bez przerw" + +msgid "Bottom interface spacing" +msgstr "Rozstaw dolnych warstw łączących" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Odstęp między liniami dolnej powierzchni warstwy łączącej. Wartość zero " +"oznacza, że warstwa łącząca jest jednolita i bez przerw" + +msgid "Speed of support interface" +msgstr "Prędkość dla warstw łączących" + +msgid "Base pattern" +msgstr "Wzór podstawowy" + +msgid "Line pattern of support" +msgstr "Liniowy wzór podpór" + +msgid "Rectilinear grid" +msgstr "Siatka prostoliniowa" + +msgid "Hollow" +msgstr "Wydrążony" + +msgid "Interface pattern" +msgstr "Wzór warstwy łączącej" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Wzór linii dla warstw łączących podpory. Standardowy wzór dla warstwy " +"łączącej podpory nierozpuszczalnej jest Prostoliniowy, natomiast dla warstwy " +"łączącej podpory rozpuszczalnej jest Koncentryczny" + +msgid "Rectilinear Interlaced" +msgstr "Prostoliniowe przeplatane" + +msgid "Base pattern spacing" +msgstr "Rozstaw wzoru podstawowego" + +msgid "Spacing between support lines" +msgstr "Odstępy między liniami podpory" + +msgid "Normal Support expansion" +msgstr "Rozszerzenie normalnej podpory" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "Rozszerz (+) lub skurcz (-) poziomy zasięg normalnego wsparcia" + +msgid "Speed of support" +msgstr "Prędkość podpory" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"Styl i kształt podpory. Dla normalnego wsparcia, rzutowanie wsparć na " +"regularną siatkę stworzy stabilniejsze wsparcia (domyślne), podczas gdy " +"wąskie wieże podporowe zaoszczędzą filament i zmniejszą uszkodzenia " +"obiektu.\n" +"Dla podpory drzewa, stylu Cinkiego i Organicznego połączy gałęzie bardziej " +"agresywnie i zaoszczędzi dużo filamentu (domyślnie organiczny), podczas gdy " +"styl hybrydowy stworzy podobną strukturę do normalnego wsparcia pod dużymi " +"płaskimi nawisami." + +msgid "Snug" +msgstr "Przylegający" + +msgid "Tree Slim" +msgstr "Cienkie" + +msgid "Tree Strong" +msgstr "Grube" + +msgid "Tree Hybrid" +msgstr "Hybrydowe" + +msgid "Organic" +msgstr "Organiczne" + +msgid "Independent support layer height" +msgstr "Niezależna wysokość warstwy podpory" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Warstwa podpory używa niezależnej wysokości warstwy od warstwy obiektu. " +"Służy to dostosowywaniu odstępu osi Z i oszczędzaniu czasu drukowania. Opcja " +"ta będzie nieaktywna, gdy włączona jest wieża czyszcząca." + +msgid "Threshold angle" +msgstr "Kąt progowy" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Podpora zostanie wygenerowana dla nawisów, których kąt nachylenia jest " +"poniżej tego progu." + +msgid "Tree support branch angle" +msgstr "Kąt nachylenia gałęzi" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"To ustawienie określa maksymalny kąt nawisu, jaki mogą tworzyć gałęzie " +"podpory (drzewo). Jeśli kąt zostanie zwiększony, gałęzie mogą być drukowane " +"bardziej poziomo, pozwalając im sięgać dalej." + +msgid "Preferred Branch Angle" +msgstr "Preferowany kąt gałęzi" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"Preferowany kąt nachylenia gałęzi, gdy nie muszą one omijać modelu. Użyj " +"mniejszego kąta, aby były bardziej pionowe i stabilne. Użyj większego kąta, " +"aby gałęzie szybciej się łączyły." + +msgid "Tree support branch distance" +msgstr "Odstęp gałęzi podpór drzewa" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"To ustawienie określa odległość między sąsiednimi węzłami podpory (drzewa)." + +msgid "Branch Density" +msgstr "Gęstość gałęzi" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"Dostosowuje gęstość konstrukcji nośnej używanej do generowania końcówek " +"gałęzi. Wyższa wartość skutkuje lepszymi nawisami, ale podpory są " +"trudniejsze do usunięcia, dlatego zaleca się włączenie górnych łączników " +"podpór zamiast wysokiej gęstości gałęzi, jeśli potrzebne są gęste podpory." + +msgid "Adaptive layer height" +msgstr "Adaptacyjna wysokość warstwy" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"Włączenie tej opcji oznacza, że wysokość warstwy podpory drzewo, z wyjątkiem " +"pierwszej, zostanie automatycznie obliczona " + +msgid "Auto brim width" +msgstr "Automatyczna szerokość Brimu" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"Włączenie tej opcji oznacza, że szerokość Brimu dla podpory drzewo będzie " +"automatycznie obliczana" + +msgid "Tree support brim width" +msgstr "Szerokość Brimu dla podpory drzewa" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "Odległość od gałęzi drzewa do najbardziej zewnętrznej linii Brimu" + +msgid "Tip Diameter" +msgstr "Średnica końcówki" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Średnica końcówki gałęzi dla organicznych podpór." + +msgid "Tree support branch diameter" +msgstr "Średnica gałęzi podpory organicznej" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "To ustawienie określa początkową średnicę węzłów podpory." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Kąt średnicy gałęzi" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"Kąt średnicy gałęzi w miarę stopniowego zagęszczania się ich ku dołowi. Kąt " +"0 spowoduje, że gałęzie będą miały jednakową grubość na całej długości. " +"Niewielki kąt może zwiększyć stabilność podpór organicznych." + +msgid "Branch Diameter with double walls" +msgstr "Średnica gałęzi z podwójnymi ścianami" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"Gałęzie o powierzchni większej niż powierzchnia koła o tej średnicy będą " +"drukowane z podwójnymi ścianami dla stabilności. Ustaw tę wartość na zero, " +"aby nie było podwójnych ścian." + +msgid "Support wall loops" +msgstr "Pętle ścian podpory" + +msgid "This setting specify the count of walls around support" +msgstr "To ustawienie określa liczbę ścian wokół podpory" + +msgid "Tree support with infill" +msgstr "Podpora w formie drzewa z wypełnieniem" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"To ustawienie określa, czy dodać wypełnienie wewnątrz dużych pustych " +"przestrzeni podpor (drzewa)" + +msgid "Activate temperature control" +msgstr "Aktywuj kontrolę temperatury" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Włącz tę opcję dla kontroli temperatury komory. Komenda M191 zostanie dodana " +"przed \"początkowy G-code drukarki\"\n" +"Komendy G-code: M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "Temperatura komory" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Wyższa temperatura komory może pomóc w redukcji wypaczania i potencjalnie " +"prowadzić do większej siły wiązania międzywarstwowego w przypadku materiałów " +"wysokotemperaturowych, takich jak ABS, ASA, PC, PA itp. Dla filametów PLA, " +"PETG, TPU, PVA i innych materiałów niskotemperaturowych temperatura komory " +"nie powinna być wysoka. Aby uniknąć zatykania sie dyszy zaleca się " +"ustawienia na wartość 0 (wyłączone)." + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Temperatura dyszy dla warstw po początkowej" + +msgid "Detect thin wall" +msgstr "Wykrywanie cienkich ścian" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Wykrywaj ściany o grubości jednego obrysu. Są to obszary, gdzie 2 obrysy nie " +"zmieszczą się i trzeba będzie połączyć je w jedną linię" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Ten gcode jest wstawiany podczas zmiany filamentu, w tym komendy T do " +"wywołania zmiany narzędzia" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "Ten G-code jest dodawany przy zmianie funkcji ekstruzji" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Szerokość linii dla górnych powierzchni. Jeśli wyrażona w procentach, będzie " +"obliczona na podstawie średnicy dyszy." + +msgid "Speed of top surface infill which is solid" +msgstr "Prędkość wypełnienia górnej powierzchni, która jest zwarta" + +msgid "Top shell layers" +msgstr "Górne warstwy powłoki" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"To jest liczba pełnych warstw górnej powłoki, włączając w to górną " +"powierzchnie. Jeżeli grubość obliczona na podstawie tej wartości jest " +"mniejsza niż grubość górnej powłoki, liczba warstw górnej powłoki zostanie " +"zwiększona" + +msgid "Top solid layers" +msgstr "Pełne warstwy górne" + +msgid "Top shell thickness" +msgstr "Grubość górnej powłoki" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"Liczba górnych zwartych warstw jest zwiększana podczas cięcia, jeśli grubość " +"obliczona przez górną warstwe powłoki jest cieńsza niż ta wartość. Można w " +"ten sposób uniknąć zbyt cienkiej powłoki, gdy wysokość warstwy jest mała. 0 " +"oznacza, że to ustawienie jest wyłączone, a grubość górnej powłoki jest " +"absolutnie określona przez górne warstwy powłoki" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Prędkość jałowa, która jest szybsza i bez ekstruzji" + +msgid "Wipe while retracting" +msgstr "Czyszczenie przy retrakcji" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Przesuń dyszę wzdłuż ostatniej ścieżki ekstruzji podczas cofania, aby " +"oczyścić wyciekły filament na dyszy. Może to zminimalizować wystąpienie " +"grudek podczas drukowania nowej części po przejeździe" + +msgid "Wipe Distance" +msgstr "Odległość czyszczenia" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"Opisz, jak długo dysza będzie się przesuwać wzdłuż ostatniej ścieżki podczas " +"cofania. \n" +"\n" +"W zależności od tego, jak długo trwa operacja czyszczenia oraz jak szybkie i " +"długie są ustawienia cofania extrudera/filamentu, może być potrzebny ruch " +"cofania, aby cofnąć pozostały filament. \n" +"\n" +"Ustawienie wartości w ilości cofania przed ustawieniem czyszczenia poniżej " +"spowoduje wykonanie nadmiernego cofania przed czyszczeniem, w przeciwnym " +"razie zostanie wykonane po nim." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"Wieża czyszcząca może być używana do czyszczenia resztek na dyszy i " +"stabilizacji ciśnienia w komorze wewnątrz dyszy, aby uniknąć defektów " +"wyglądu podczas drukowania obiektów." + +msgid "Purging volumes" +msgstr "Objętości czyszczenia" + +msgid "Flush multiplier" +msgstr "Mnożnik płukania" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"Aktualna objętość płukania jest równa mnożnikowi płukania pomnożonemu przez " +"objętości płukania w tabeli." + +msgid "Prime volume" +msgstr "Objętość czyszczenia" + +msgid "The volume of material to prime extruder on tower." +msgstr "" +"Objętość materiału, który ekstruder powinien upuścić na wieży czyszczącej." + +msgid "Width of prime tower" +msgstr "Szerokość wieży czyszczącej" + +msgid "Wipe tower rotation angle" +msgstr "Kąt obrotu wieży czyszczącej" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Kąt obrotu wieży czyszczącej względem osi x." + +msgid "Stabilization cone apex angle" +msgstr "Kąt wierzchołka stożka stabilizacji" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Kąt w wierzchołku stożka, który jest używany do stabilizacji wieży " +"czyszczącej. Większy kąt oznacza szerszą podstawę." + +msgid "Wipe tower purge lines spacing" +msgstr "Odległość między liniami na wieży oczyszczającej" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Rozmieszczenie linii czyszczenia na wieży czyszczącej." + +msgid "Maximum wipe tower print speed" +msgstr "Maksymalna prędkość drukowania wieży czyszczącej" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"Jest to funkcja odpowiedzialna za maksymalną prędkość drukowania podczas " +"oczyszczania w wieży czyszczącej i drukowania jej rzadkich warstw. \n" +"Podczas oczyszczania, jeśli prędkość rzadkiego wypełnienia jest niższa od " +"prędkości obliczonej na podstawie maksymalnego natężenia przepływu " +"filamentu, to właśnie ta niższa wartość zostanie wybrana.\n" +"\n" +"Podczas drukowania rzadkich warstw, jeśli prędkość wewnętrznych obrysów lub " +"prędkość obliczona na podstawie maksymalnego natężenia przepływu filamentu " +"jest niższa, zostanie użyta właśnie ta niższa wartość.\n" +"\n" +"Przed zwiększeniem tego parametru powyżej domyślnej wartości 90mm/s, upewnij " +"się, że Twoja drukarka potrafi niezawodnie mostkować przy wyższych " +"prędkościach oraz że wyciek filamentu podczas jego zmiany jest dobrze " +"kontrolowany.\n" +"\n" +"W przypadku zewnętrznych obwodów wieży czyszczącej prędkość jej obwodu " +"wewnętrznego jest niezależna od tego ustawienia." + +msgid "Wipe tower extruder" +msgstr "Ekstruder dla wieży czyszczącej" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"Extruder używany do drukowania obrysów wieży czyszczącej. Ustaw na 0, aby " +"użyć tego, który jest dostępny (preferowany jest ten, w którym załadowany " +"jest filament nierozpuszczalny)." + +msgid "Purging volumes - load/unload volumes" +msgstr "Objętości czyszczenia - objętości ładowania/rozładowania" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"To ustawienie określa wymaganą objętość wieży czyszczącej przy zmianie " +"danego narzędzia. Te wartości używane są do uproszczenia określenia pełnych " +"wartości czyszczenia poniżej" + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Po zmianie filamentu oczyszczanie odbywa się wewnątrz wypełnienia obiektu. " +"Może to zmniejszyć ilość odpadów i skrócić czas druku. Jeśli ściany są " +"drukowane przezroczystym filamentem, różne kolory wypełnienia będą widoczne " +"na zewnątrz. Ta funkcja jest aktywna tylko wtedy, gdy jest włączona opcja " +"wieży czyszczącej." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"Po zmianie filamentu oczyszczanie odbywa się wewnątrz podpór obiektów. Może " +"to zmniejszyć ilość odpadów i skrócić czas druku. Ta funkcja jest aktywna " +"tylko wtedy, gdy jest włączona opcja wieży czyszczącej." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"To jest obiekt wykorzystywany do oczyszczenia dyszy po zmianie filamentu, co " +"pozwala zaoszczędzić filament i skrócić czas druku. W wyniku tego procesu " +"kolory filamentów mogą się wymieszać." + +msgid "Maximal bridging distance" +msgstr "Maksymalna odległość mostkowania" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "" +"Maksymalna odległość między podporami na rzadkich sekcjach wypełnienia." + +msgid "X-Y hole compensation" +msgstr "Kompensacja otworów X-Y" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Otwory obiektu będą powiększane lub zmniejszane w płaszczyźnie XY przez " +"zadaną wartość (ujemna = zmniejszenie, dodatnia = zwiększenie). Funkcja ta " +"jest używana do lekkiej regulacji rozmiaru, gdy obiekt ma problem z montażem" + +msgid "X-Y contour compensation" +msgstr "Kompensacja konturu X-Y" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"Model zostanie zmniejszony lub zwiększony w osiach X i Y o zadaną wartość " +"(ujemna = zmniejszenie, dodatnia = zwiększenie). Może być przydatne przy " +"kalibracji średnic otworów" + +msgid "Convert holes to polyholes" +msgstr "Konwertuj otwory na poligonalne" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Szukaj niemal okrągłych otworów obejmujących więcej niż jedną warstwę i " +"konwertuj geometrię na poliotwory. Użyj rozmiaru dyszy i (największej) " +"średnicy do obliczenia poliotworu.\n" +"Zobacz http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "Margines wykrywania poliotworów" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Maksymalne odchylenie punktu od szacowanego promienia koła.\n" +"Ponieważ cylindry często eksportowane są jako trójkąty o różnej wielkości, " +"punkty mogą nie znajdować się na obwodzie koła. To ustawienie pozwala na " +"pewną swobodę w poszerzaniu wykrywania.\n" +"W mm lub w % promienia." + +msgid "Polyhole twist" +msgstr "Skręt poliotworu" + +msgid "Rotate the polyhole every layer." +msgstr "Obracaj poliotwor co warstwę." + +msgid "G-code thumbnails" +msgstr "Miniatury G-code" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Rozmiary obrazów do przechowywania w plikach .gcode i .sl1 / .sl1s, w " +"następującym formacie: \"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "Format miniatur G-code" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Format miniatur G-code: PNG dla najlepszej jakości, JPG dla najmniejszego " +"rozmiaru, QOI dla oprogramowania o niskiej pamięci" + +msgid "Use relative E distances" +msgstr "" +"Użyj względnych \n" +"wartości dla Extrudera" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"Względna ekstruzja jest zalecana przy użyciu opcji \"label_objects\". " +"Niektóre extrudery działają lepiej z tą opcją odznaczoną (tryb absolutnej " +"ekstruzji). Wieża czyszcząca jest kompatybilna tylko z trybem względnym. " +"Zalecana na większości drukarek. Domyślnie zaznaczone" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"Klasyczny generator ścian tworzy ściany o stałej szerokości ekstruzji, a do " +"bardzo cienkich obszarów używa wypełnienia szczelin. Silnik Arachne generuje " +"ściany o zmiennej szerokości ekstruzji" + +msgid "Classic" +msgstr "Klasyczny" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Długość przejścia ściany" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Podczas przechodzenia między różnymi liczbami obrysów, gdy część staje się " +"cieńsza, przydzielana jest pewna ilość miejsca na rozdzielenie lub " +"połączenie segmentów obrysu. Jest wyrażona w procentach i zostanie obliczona " +"na podstawie średnicy dyszy." + +msgid "Wall transitioning filter margin" +msgstr "Margines filtra przejścia ściany" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Unikaj zmiany między zbyt grubą a zbyt cienką ścianą. Ten margines rozszerza " +"zakres szerokości ekstruzji na [Minimalną szerokość ściany - margines, 2 * " +"Minimalną szerokość ściany + margines]. Zwiększenie tego marginesu zmniejsza " +"liczbę zmian, co skraca czas wydruku poprzez redukcję liczby startów i " +"zatrzymań ekstruzji. Należy jednak pamiętać, że duże wahania w szerokości " +"ekstruzji mogą prowadzić do problemów z jakością wydruku w postaci " +"nadmiernej lub niewystarczającej ekstruzji. Wartość wyrażana jest jako " +"procent średnicy dyszy" + +msgid "Wall transitioning threshold angle" +msgstr "Kąt progowy przejścia ściany" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Kiedy tworzyć przejścia między parzystą i nieparzystą liczbą obrysów. " +"Kształt klina o kącie większym niż to ustawienie nie będzie miał przejść, a " +"w środku nie zostaną wydrukowane żadne obrysy, które wypełniłyby pozostałą " +"przestrzeń. Zmniejszenie tego ustawienia zmniejsza liczbę i długość obrysów " +"centralnych, ale może powodować powstawanie szczelin lub nadmierne " +"wytłaczanie." + +msgid "Wall distribution count" +msgstr "Liczba rozdzielanych ścian" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"Ilość ścian, licząc od środka, na których należy rozłożyć zmienność. Niższe " +"wartości oznaczają, że zewnętrzne ściany nie zmieniają szerokości" + +msgid "Minimum feature size" +msgstr "Minimalny rozmiar detalu" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Minimalna grubość cienkich detali. Detale modelu, które są cieńsze niż ta " +"wartość, nie będą drukowane, natomiast detale grubsze niż minimalny rozmiar " +"detalu zostaną poszerzone do minimalnej szerokości ściany. Jest to wyrażone " +"jako procent średnicy dyszy" + +msgid "Minimum wall length" +msgstr "Minimalna szerokość ściany" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"Zmodyfikuj tę wartość, aby uniknąć drukowania krótkich, otwartych ścianek, " +"co może prowadzić do wydłużenia czasu druku. Wyższe wartości spowodują " +"usunięcie większej ilości dłuższych ścianek.\n" +"\n" +"UWAGA: Ta wartość nie wpłynie na dolne i górne powierzchnie modelu i może " +"zapobiec widocznym przerwom na zewnątrz. Aby dostosować czułość określającą, " +"co jest uważane za górną powierzchnię, dostosuj 'Próg jednej ściany' w " +"zaawansowanych ustawieniach poniżej. 'Próg jednej ściany' jest widoczny " +"tylko wtedy, gdy to ustawienie jest ustawione na wartość wyższą niż domyślna " +"wartość 0,5 lub jeśli opcja pojedynczych ścianek na górze jest włączona." + +msgid "First layer minimum wall width" +msgstr "Minimalna szerokość ściany pierwszej warstwy" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"Zaleca się, aby minimalna szerokość ściany, która powinna być używana dla " +"pierwszej warstwy, była ustawiona na tę samą wielkość co dysza. Oczekuje " +"się, że to dostosowanie zwiększy przyczepność." + +msgid "Minimum wall width" +msgstr "Minimalna szerokość ściany" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Szerokość obrysu, który zastąpi cienkie detale modelu (zgodnie z minimalnym " +"rozmiarem detalu). Jeśli minimalna szerokość obrysu jest mniejsza niż " +"grubość detalu, obrys będzie miał taką samą grubość jak sam element. Jest " +"wyrażona w procentach i zostanie obliczona na podstawie średnicy dyszy." + +msgid "Detect narrow internal solid infill" +msgstr "Wykryj wąskie wewnętrzne pełne wypełnienie" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Ta opcja automatycznie wykryje wąski obszar wewnętrznego pełnego " +"wypełnienia. Jeśli włączone, zostanie użyty wzór koncentryczny dla tego " +"obszaru, aby przyspieszyć drukowanie. W przeciwnym razie domyślnie używany " +"jest wzór prostoliniowy." + +msgid "invalid value " +msgstr "nieprawidłowa wartość " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Nieprawidłowa wartość, gdy włączony jest tryb wazy spiralnej: " + +msgid "too large line width " +msgstr "zbyt duża szerokość linii " + +msgid " not in range " +msgstr " nie w zakresie " + +msgid "Minimum save" +msgstr "Minimalne zapisanie" + +msgid "export 3mf with minimum size." +msgstr "eksportuj 3mf o minimalnym rozmiarze." + +msgid "No check" +msgstr "Brak sprawdzania" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"Nie uruchamiaj żadnych testów poprawności, takich jak sprawdzanie konfliktów " +"ścieżek gcode." + +msgid "Ensure on bed" +msgstr "Zapewnij na łóżku" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Podnieś obiekt ponad łóżko, gdy jest częściowo poniżej. Domyślnie wyłączone" + +msgid "Orient Options" +msgstr "Opcje orientacji" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "Opcje orientacji: 0-wyłącz, 1-włącz, inne-auto" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Kąt obrotu wokół osi Z w stopniach." + +msgid "Rotate around Y" +msgstr "Obróć wokół osi Y" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Kąt obrotu wokół osi Y w stopniach." + +msgid "Data directory" +msgstr "Katalog danych" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Załaduj i zapisz ustawienia w podanym katalogu. Jest to przydatne do " +"utrzymania różnych profili lub dołączania konfiguracji z pamięci sieciowej." + +msgid "Load custom gcode" +msgstr "Załaduj własny gcode" + +msgid "Load custom gcode from json" +msgstr "Załaduj własny gcode z json" + +msgid "Current z-hop" +msgstr "Bieżący Z-hop" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "Zawiera z-hop obecny na początku bloku niestandardowego G-code" + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Pozycja ekstrudera na początku bloku niestandardowego G-kodu. Jeśli " +"niestandardowy G-code przemieszcza się gdzieś indziej, powinien zostać " +"zapisany do tej zmiennej, aby Snapmaker Orca wiedział, skąd się przemieszcza, " +"gdy odzyska kontrolę." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"Stan retrakcji na początku bloku niestandardowego G-code. Jeśli " +"niestandardowy G-code przesunie oś ekstrudera, powinien zostać zapisany do " +"tej zmiennej, aby Snapmaker Orca prawidłowo wykonał retrakcję, gdy odzyska " +"kontrolę." + +msgid "Extra deretraction" +msgstr "Dodatkowa deretrakcja" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" +"Obecnie planowane dodatkowe czyszczenie ekstrudera po powrocie z retrakcji." + +msgid "Current extruder" +msgstr "Aktualny extruder" + +msgid "Zero-based index of currently used extruder." +msgstr "Indeks aktualnie używanego extrudera wynosi - zero" + +msgid "Current object index" +msgstr "Zapisz bieżący projekt do pliku" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Specyficzne dla druku sekwencyjnego. Indeks obecnie drukowanego obiektu, " +"zaczynający się od zera." + +msgid "Has wipe tower" +msgstr "Ma wieżę czyszczącą" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Określa, czy dla tego wydruku generowana jest wieża czyszcząca." + +msgid "Initial extruder" +msgstr "Początkowy ekstruder" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Indeks pierwszego extrudera używanego w wydruku, uwzględniający zero. To " +"samo, co initial_tool." + +msgid "Initial tool" +msgstr "Początkowe narzędzie" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Index pierwszego ekstrudera używanego podczas drukowania, licząc od zera. To " +"samo, co initial_extruder" + +msgid "Is extruder used?" +msgstr "Czy ekstruder jest używany?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" +"Wektory logiczne określające, czy dany ekstruder jest używany w wydruku" + +msgid "Volume per extruder" +msgstr "Objętość na extruder" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" +"Całkowita objętość filamentu wytłoczona przez każdy ekstruder podczas całego " +"wydruku" + +msgid "Total toolchanges" +msgstr "Całkowita zmiana narzędzia" + +msgid "Number of toolchanges during the print." +msgstr "Liczba zmian narzędzi podczas druku." + +msgid "Total volume" +msgstr "Całkowita objętość" + +msgid "Total volume of filament used during the entire print." +msgstr "Całkowita objętość filamentu użytego podczas całego wydruku." + +msgid "Weight per extruder" +msgstr "Waga na ekstruder" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" +"Waga wytłaczanego filamentu przypadająca na każdy extruder podczas całego " +"wydruku. Obliczana na podstawie gęstości w sekcji Ustawienia filamentu." + +msgid "Total weight" +msgstr "Waga całkowita" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" +"Całkowita waga wydruku. Obliczana na podstawie wartości w sekcji Ustawienia " +"filamentu." + +msgid "Total layer count" +msgstr "Całkowita liczba warstw" + +msgid "Number of layers in the entire print." +msgstr "Liczba warstw w całym procesie drukowania" + +msgid "Number of objects" +msgstr "Liczba obiektów" + +msgid "Total number of objects in the print." +msgstr "Całkowita liczba obiektów w wydruku." + +msgid "Number of instances" +msgstr "Liczba instancji" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" +"Całkowita liczba instancji obiektów w druku, zsumowana dla wszystkich " +"obiektów." + +msgid "Scale per object" +msgstr "Skalowanie wg obiektu" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"Zawiera ciąg znaków z informacją o zastosowanej skali dla poszczególnych " +"obiektów. Numeracja obiektów zaczyna się od zera (pierwszy obiekt ma indeks " +"0).\n" +"Przykład: 'x:100% y:50% z:100'." + +msgid "Input filename without extension" +msgstr "Podaj nazwę pliku wejściowego bez rozszerzenia" + +msgid "Source filename of the first object, without extension." +msgstr "Nazwa pliku źródłowego pierwszego obiektu, bez rozszerzenia." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" +"Wektor składa się z dwóch elementów: współrzędnych x i y punktu. Wartości w " +"mm." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "Wektor ma dwa elementy: wymiar x i y obwiedni. Wartości w mm." + +msgid "First layer convex hull" +msgstr "Otoczka wypukła pierwszej warstwy" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"Wektor punktów otoczki wypukłej pierwszej warstwy. Każdy element ma " +"następujący format: '[x, y]' (x i y są liczbami zmiennoprzecinkowymi w mm)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "Ogranicznik lewego dolnego narożnika obszaru pierwszej warstwy" + +msgid "Top-right corner of first layer bounding box" +msgstr "Prawy górny róg obwiedni pierwszej warstwy" + +msgid "Size of the first layer bounding box" +msgstr "Rozmiar obwiedni pierwszej warstwy" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "Ogranicznik lewego dolnego narożnika obszaru stołu roboczego" + +msgid "Top-right corner of print bed bounding box" +msgstr "Prawy górny róg obwiedni stołu roboczego" + +msgid "Size of the print bed bounding box" +msgstr "Rozmiar graniczny obszaru stołu roboczego" + +msgid "Timestamp" +msgstr "Sygnatura czasowa" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "Łańcuch zawierający aktualny czas w formacie yyyyMMdd-hhmmss." + +msgid "Day" +msgstr "Dzień" + +msgid "Hour" +msgstr "Godzina" + +msgid "Minute" +msgstr "Minuta" + +msgid "Print preset name" +msgstr "Nazwa profilu druku" + +msgid "Name of the print preset used for slicing." +msgstr "Nazwa profilu druku używanego do cięcia." + +msgid "Filament preset name" +msgstr "Nazwa profilu filamentu" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Nazwy profili filamentu używane do cięcia.\" Zmienna jest wektorem " +"zawierającym jedną nazwę dla każdego extrudera" + +msgid "Printer preset name" +msgstr "Nazwa profilu drukarki" + +msgid "Name of the printer preset used for slicing." +msgstr "Nazwa profilu drukarki używanego do cięcia." + +msgid "Physical printer name" +msgstr "Fizyczna nazwa drukarki" + +msgid "Name of the physical printer used for slicing." +msgstr "Nazwa fizycznej drukarki używanej do przygotowywania pliku do druku." + +msgid "Layer number" +msgstr "Numer warstwy" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" +"Indeks aktualnej warstwy uwzględniający zero (pierwsza warstwa ma wartość 1)." + +msgid "Layer z" +msgstr "Warstwa Z" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Wysokość bieżącej warstwy nad stołem roboczym, mierzona do górnej krawędzi " +"warstwy" + +msgid "Maximal layer z" +msgstr "Maksymalna warstwa Z" + +msgid "Height of the last layer above the print bed." +msgstr "Wysokość ostatniej warstwy nad stołem roboczym." + +msgid "Filament extruder ID" +msgstr "ID ekstrudera filamentu" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "ID obecnie wybranego ekstrudera. Taki sam jak current_extruder" + +msgid "Error in zip archive" +msgstr "Błąd w archiwum zip" + +msgid "Generating walls" +msgstr "Generowanie ścian" + +msgid "Generating infill regions" +msgstr "Generowanie regionów wypełnienia" + +msgid "Generating infill toolpath" +msgstr "Generowanie ścieżki narzędzia wypełnienia" + +msgid "Detect overhangs for auto-lift" +msgstr "Wykrywanie nawisów do automatycznego podnoszenia" + +msgid "Generating support" +msgstr "Generowanie podpór" + +msgid "Checking support necessity" +msgstr "Sprawdzanie konieczności użycia podpór" + +msgid "floating regions" +msgstr "unoszące się obszary" + +msgid "floating cantilever" +msgstr "nawisającą konstrukcje (cantilever)" + +msgid "large overhangs" +msgstr "duże nawisy" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Wydaje się, że obiekt %s ma %s. Proszę ponownie ustawić obiekt lub włączyć " +"generowanie podpór." + +msgid "Optimizing toolpath" +msgstr "Optymalizowanie ścieżki narzędzia" + +msgid "Slicing mesh" +msgstr "Krojenie siatki" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"Nie wykryto żadnych warstw. Możesz chcieć naprawić swoje pliki STL lub " +"sprawdzić ich rozmiar lub grubość i spróbować ponownie.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"Kompensacja rozmiaru XY obiektu nie będzie używana, ponieważ jest także " +"malowany na kolor.\n" +"Kompensacja rozmiaru XY nie może być połączona z malowaniem kolorów." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Podpory: generuj ścieżkę narzędzia na warstwie %d" + +msgid "Support: detect overhangs" +msgstr "Podpory: wykryj nawisy" + +msgid "Support: generate contact points" +msgstr "Podpory: Tworzenie miejsc kontaktowych" + +msgid "Support: propagate branches" +msgstr "Podpory: rozprzestrzeniaj gałęzie" + +msgid "Support: draw polygons" +msgstr "Podpory: rysuj poligony" + +msgid "Support: generate toolpath" +msgstr "Podpory: generuj ścieżkę narzędzia" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Podpory: generuj poligony na warstwie %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Podpory: napraw dziury na warstwie %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Podpory: rozprzestrzeniaj gałęzie na warstwie %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Nieznany format pliku. Plik wejściowy musi mieć rozszerzenie .stl, .obj, ." +"amf(.xml)." + +msgid "Loading of a model file failed." +msgstr "Ładowanie pliku modelu nie powiodło się." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "Dostarczony plik nie mógł być odczytany, ponieważ jest pusty" + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Nieznany format pliku. Plik wejściowy musi mieć rozszerzenie .3mf lub .zip." +"amf." + +msgid "Canceled" +msgstr "Anulowano" + +msgid "load_obj: failed to parse" +msgstr "load_obj: nie udało się przetworzyć" + +msgid "load mtl in obj: failed to parse" +msgstr "load_obj: nie udało się przetworzyć" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "Plik zawiera wielokąty z więcej niż 4 wierzchołkami." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "Plik zawiera wielokąty z mniej niż 2 wierzchołkami." + +msgid "The file contains invalid vertex index." +msgstr "Plik zawiera nieprawidłowy indeks wierzchołka." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Ten plik OBJ nie mógł zostać odczytany, ponieważ jest pusty." + +msgid "Flow Rate Calibration" +msgstr "Kalibracja Natężenie Przepływu" + +msgid "Max Volumetric Speed Calibration" +msgstr "Kalibracja Maks. Prędkości Przepływu" + +msgid "Manage Result" +msgstr "Zarządzanie Wynikiem" + +msgid "Manual Calibration" +msgstr "Kalibracja Ręczna" + +msgid "Result can be read by human eyes." +msgstr "Wynik może być odczytany przez ludzkie oczy." + +msgid "Auto-Calibration" +msgstr "Kalibracja Automatyczna" + +msgid "We would use Lidar to read the calibration result" +msgstr "Do odczytania wyniku kalibracji zostanie użyty lidar" + +msgid "Prev" +msgstr "Poprzedni" + +msgid "Recalibration" +msgstr "Rekalibracja" + +msgid "Calibrate" +msgstr "Kalibruj" + +msgid "Finish" +msgstr "Zakończ" + +msgid "How to use calibration result?" +msgstr "Jak używać wyniku kalibracji?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"Możesz zmienić współczynnik Kalibracji Dynamiki Przepływu podczas edycji " +"profilu filamentu" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"Obecna wersja firmware drukarki nie obsługuje kalibracji.\n" +"Proszę zaktualizować firmware drukarki." + +msgid "Calibration not supported" +msgstr "Kalibracja nie jest obsługiwana" + +msgid "Error desc" +msgstr "Opis błędu" + +msgid "Extra info" +msgstr "Dodatkowe informacje" + +msgid "Flow Dynamics" +msgstr "Dynamika Przepływu" + +msgid "Flow Rate" +msgstr "Natężenie Przepływu" + +msgid "Max Volumetric Speed" +msgstr "Maksymalny przepływ" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Proszę wprowadzić prawidłowe wartości:\n" +"Wartość początkowa: >= %.1f\n" +"Wartość końcowa: <= %.1f\n" +"Wartość końcowa: > Wartość początkowa\n" +"Krok wartości: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "Nazwa nie może być pusta." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "Nie znaleziono wybranej przedustawionej opcji: %s." + +msgid "The name cannot be the same as the system preset name." +msgstr "Nazwa nie może być taka sama jak nazwa ustawienia systemowego." + +msgid "The name is the same as another existing preset name" +msgstr "Nazwa jest taka sama jak nazwa innego istniejącego ustwienia" + +msgid "create new preset failed." +msgstr "utworzenie nowego profilu nie powiodło się." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Czy na pewno chcesz anulować bieżącą kalibrację i powrócić do strony głównej?" + +msgid "No Printer Connected!" +msgstr "Żadna drukarka nie jest podłączona!" + +msgid "Printer is not connected yet." +msgstr "Drukarka jeszcze nie jest podłączona." + +msgid "Please select filament to calibrate." +msgstr "Proszę wybrać filament do kalibracji." + +msgid "The input value size must be 3." +msgstr "Rozmiar wartości wejściowej musi wynosić 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"To urządzenie może przechowywać tylko 16 wyników w historii dla jednej " +"dyszy. Możesz usunąć istniejące wyniki w historii, a następnie rozpocząć " +"kalibrację lub kontynuować, ale nie będzie można tworzyć nowych wyników " +"kalibracji. Czy nadal chcesz kontynuować kalibrację?" + +msgid "Connecting to printer..." +msgstr "Łączenie z drukarką..." + +msgid "The failed test result has been dropped." +msgstr "Nieudany wynik testu został odrzucony." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Wynik Kalibracji Dynamiki Przepływu został zapisany w drukarce" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"W historii kalibracji istnieje już wynik o nazwie: %s. Czy na pewno chcesz " +"zastąpić poprzedni wynik?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"To urządzenie może przechowywać tylko %d wyników w historii dla jednej " +"dyszy. Ten wynik nie zostanie zapisany." + +msgid "Internal Error" +msgstr "Błąd wewnętrzny" + +msgid "Please select at least one filament for calibration" +msgstr "Proszę wybrać co najmniej jeden filament do kalibracji" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "Wynik kalibracji natężenia przepływu został zapisany w profilu" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "Wynik kalibracji maksymalnego przepływu został zapisany do profilu" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Kiedy potrzebujesz Kalibracji Dynamiki Przepływu" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Teraz dodaliśmy automatyczną kalibrację dla różnych filamentów, która jest w " +"pełni zautomatyzowana, a wynik zostanie zapisany w drukarce do przyszłego " +"użycia. Musisz przeprowadzić kalibrację tylko w następujących ograniczonych " +"przypadkach:\n" +"1. Jeśli wprowadzasz nowy filament innej marki/modelu lub filament jest " +"wilgotny;\n" +"2. Jeśli dysza jest zużyta lub została wymieniona na nową;\n" +"3. Jeśli maksymalna prędkość przepływu lub temperatura druku zostaną " +"zmienione w ustawieniach filamentu." + +msgid "About this calibration" +msgstr "O tej kalibracji" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" +"Proszę znaleźć szczegóły dotyczące kalibracji dynamiki przepływu w naszej " +"wiki.\n" +"\n" +"Zazwyczaj kalibracja nie jest konieczna. Gdy rozpoczynasz druk w jednym " +"kolorze/materiale i zaznaczasz opcję \"kalibracja dynamiki przepływu\" w " +"menu rozpoczęcia druku - drukarka będzie postępować w tradycyjny sposób, " +"kalibrując filament przed rozpoczęciem druku. W przypadku druku w wielu " +"kolorach/materiałach drukarka będzie używać domyślnego parametru kompensacji " +"dla filamentu podczas każdej jego zmiany, co w większości przypadków daje " +"dobre rezultaty.\n" +"\n" +"Proszę jednak zauważyć, że istnieją pewne przypadki, w których wynik " +"kalibracji może być niesolidny: korzystanie z Texture PEI do kalibracji; " +"brak dobrej przyczepności podłoża (proszę umyć płytę lub nałożyć klej!)... " +"Więcej informacji można znaleźć w naszej wiki.\n" +"\n" +"Wyniki kalibracji mają około 10 procent fluktuacji w naszych testach, co " +"może powodować, że wynik nie będzie dokładnie taki sam w każdej kalibracji. " +"Wciąż badamy źródło tych fluktuacji i pracujemy nad wprowadzeniem ulepszeń w " +"nowych aktualizacjach." + +msgid "When to use Flow Rate Calibration" +msgstr "Kiedy użyć Kalibracji Natężenia Przepływu" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"Po użyciu kalibracji dynamiki przepływu mogą nadal występować pewne problemy " +"z ekstruzją, takie jak:\n" +"1. Nadmierna ekstruzja: Nadmiar filamentu na twoim wydrukowanym obiekcie, " +"tworzenie grudek i wybrzuszeń, lub warstwy wydają się być grubsze i nierówne " +"niż oczekiwano.\n" +"2. Niedostateczna ekstruzja: Bardzo cienkie warstwy, słaba wytrzymałość " +"wypełnienia, lub przerwy w górnej warstwie modelu, nawet przy wolnym " +"drukowaniu.\n" +"3. Słaba jakość powierzchni: Powierzchnia twoich wydruków wydaje się być " +"szorstka lub nierówna.\n" +"4. Słaba wytrzymałość strukturalna: Wydruki łatwo się łamią lub nie wydają " +"się być tak wytrzymałe, jak powinny." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Dodatkowo, kalibracja natężenia przepływu jest kluczowa dla materiałów " +"piankowych, takich jak LW-PLA używane w samolotach RC. Te filamenty znacząco " +"się rozprężają pod wpływem temperatury, a kalibracja zapewnia przydatną " +"referencyjną prędkość przepływu." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"Kalibracja Natężenie Przepływu mierzy stosunek oczekiwanej do rzeczywistej " +"objętości ekstruzji. Domyślne ustawienie dobrze funkcjonuje w drukarkach " +"Bambu Lab i oficjalnych filamentach, ponieważ były one wcześniej " +"skalibrowane i dokładnie dostrojone. Dla zwykłego filamentu zazwyczaj nie " +"będziesz musiał przeprowadzać kalibracji natężenia przepływu, chyba że " +"nadzieja widoczne wymienione wady po wykonaniu innych kalibracji. Po więcej " +"szczegółów proszę sprawdzić artykuł w naszej stronie Wiki." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Automatyczna kalibracja natężenia przepływu wykorzystuje technologię Micro-" +"Lidar firmy Bambu Lab, bezpośrednio mierząc wzorce kalibracyjne. Jednak " +"należy pamiętać, że skuteczność i dokładność tej metody mogą być ograniczone " +"w przypadku konkretnych rodzajów filamentów. Szczególnie filamenty, które są " +"przezroczyste lub półprzezroczyste, z iskrzącymi cząstkami lub o wysokim " +"połysku mogą być nieodpowiednie do tej kalibracji i mogą dawać mniej niż " +"pożądane wyniki.\n" +"\n" +"Wyniki kalibracji mogą się różnić między poszczególnymi kalibracjami lub " +"filamentami. Nadal pracujemy nad poprawą dokładności i kompatybilności tej " +"kalibracji za pomocą aktualizacji oprogramowania.\n" +"\n" +"Ostrzeżenie: Kalibracja przepływu jest zaawansowanym procesem, który " +"powinien być przeprowadzany tylko przez osoby, które w pełni rozumieją jego " +"cel i implikacje. Niewłaściwe użycie może prowadzić do niskiej jakości " +"wydruków lub uszkodzenia drukarki. Przed przystąpieniem do kalibracji " +"upewnij się, że dokładnie przeczytałeś i zrozumiałeś proces." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Kiedy potrzebujesz kalibracji Maksymalnej Prędkości Przepływu" + +msgid "Over-extrusion or under extrusion" +msgstr "Nadmierna ekstruzja lub niedostateczna ekstruzja" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "Kalibracja Maksymalnej Prędkości Przepływu jest zalecana przy druku z:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "filamentem z istotnym skurczem termicznym/rozszerzeniem, takim jak..." + +msgid "materials with inaccurate filament diameter" +msgstr "filamentami z niedokładną średnicą" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "Znaleźliśmy najlepszy współczynnik Kalibracji Dynamiki Przepływu" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Część kalibracji nie powiodła się! Możesz oczyścić płytę i spróbować " +"ponownie. Niewłaściwy wynik testu zostanie odrzucony." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Zalecamy dodanie do nazwy marki i typu filamentu, a nawet poziomu " +"wilgotności" + +msgid "Failed" +msgstr "Nieudane" + +msgid "Please enter the name you want to save to printer." +msgstr "Proszę wprowadzić nazwę, którą chcesz zapisać w drukarce." + +msgid "The name cannot exceed 40 characters." +msgstr "Nazwa nie może przekraczać 40 znaków." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Tylko jeden z wyników o tej samej nazwie zostanie zapisany. Czy na pewno " +"chcesz zastąpić inne wyniki?" + +msgid "Please find the best line on your plate" +msgstr "Znajdź najlepszą linię na swojej płycie" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Znajdź róg z idealnym stopniem ekstruzji" + +msgid "Input Value" +msgstr "Wartość wejściowa" + +msgid "Save to Filament Preset" +msgstr "Zapisz do ustawień wstępnych filamentu" + +msgid "Preset" +msgstr "Profil" + +msgid "Record Factor" +msgstr "Zapisz Współczynnik" + +msgid "We found the best flow ratio for you" +msgstr "Znaleźliśmy dla Ciebie najlepszy Współczynnik Przepływu" + +msgid "Flow Ratio" +msgstr "Współczynnik Przepływu" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Proszę wprowadzić prawidłową wartość (0,0 < flow ratio < 2,0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Proszę wprowadzić nazwę profilu, który chcesz zapisać." + +msgid "Calibration1" +msgstr "Kalibracja1" + +msgid "Calibration2" +msgstr "Kalibracja2" + +msgid "Please find the best object on your plate" +msgstr "Proszę znaleźć najlepszy obiekt na swojej płycie" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Wypełnij wartość nad blokiem z najgładszą górną powierzchnią" + +msgid "Skip Calibration2" +msgstr "Pomiń kalibrację 2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "współczynnik przepływu: %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Please choose a block with smoothest top surface" + +msgid "Please choose a block with smoothest top surface." +msgstr "Wybierz blok z najgładszą górną powierzchnią." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "" +"Proszę wprowadzić prawidłową wartość (0 <= Max Prędkość Przepływu <= 60)" + +msgid "Calibration Type" +msgstr "Typ kalibracji" + +msgid "Complete Calibration" +msgstr "Pełna kalibracja" + +msgid "Fine Calibration based on flow ratio" +msgstr "Dokładna kalibracja na podstawie współczynnika przepływu" + +msgid "Title" +msgstr "Tytuł" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Będzie wydrukowany model testowy. Przed kalibracją oczyść płytę roboczą i " +"umieść ją z powrotem na stole grzewczym." + +msgid "Printing Parameters" +msgstr "Parametry drukowania" + +msgid "Plate Type" +msgstr "Typ Płyty" + +msgid "filament position" +msgstr "pozycja filamentu" + +msgid "External Spool" +msgstr "Zewnętrzna szpula" + +msgid "Filament For Calibration" +msgstr "Filament do kalibracji" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Wskazówki dotyczące filamentu kalibracyjnego: \n" +"- Materiały, które mogą dzielić tę samą temperaturę podgrzewanego stołu\n" +"- Różne marki i rodzaje filamentów (Marka = Bambu, Rodzina = Basis, Matte)" + +msgid "Pattern" +msgstr "Wzór" + +msgid "Method" +msgstr "Metoda" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s nie jest kompatybilne z %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "" +"TPU nie jest obsługiwane dla automatycznej kalibracji dynamiki przepływu." + +msgid "Connecting to printer" +msgstr "Łączenie z drukarką" + +msgid "From k Value" +msgstr "Od wartości K" + +msgid "To k Value" +msgstr "Do wartości K" + +msgid "Step value" +msgstr "Wartość kroku" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "Średnica dyszy została zsynchronizowana z ustawień drukarki" + +msgid "From Volumetric Speed" +msgstr "Z Prędkości Przepływu" + +msgid "To Volumetric Speed" +msgstr "Do Prędkości Przepływu" + +msgid "Flow Dynamics Calibration Result" +msgstr "Wyniki Kalibracji Dynamiki Przepływu" + +msgid "New" +msgstr "Nowy" + +msgid "No History Result" +msgstr "Brak historii wyników" + +msgid "Success to get history result" +msgstr "Pomyślnie załadowano historie wyników" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Odświeżanie zapisanej historii kalibracji dynamika przepływu" + +msgid "Action" +msgstr "Akcja" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "" +"To urządzenie może przechowywać tylko %d wyników w historii dla jednej dyszy." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Edytuj Kalibrację Dynamiki Przepływu" + +msgid "New Flow Dynamic Calibration" +msgstr "Nowa Kalibracji Dynamiki Przepływu" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "Należy wybrać filament." + +msgid "Network lookup" +msgstr "Wyszukiwanie w sieci" + +msgid "Address" +msgstr "Adres" + +msgid "Hostname" +msgstr "Nazwa hosta" + +msgid "Service name" +msgstr "Nazwa usługi" + +msgid "OctoPrint version" +msgstr "Wersja OctoPrint" + +msgid "Searching for devices" +msgstr "Szukanie urządzeń" + +msgid "Finished" +msgstr "Zakończono" + +msgid "Multiple resolved IP addresses" +msgstr "Wielokrotne rozwiązanie adresów IP" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"Jest kilka adresów IP przypisanych do nazwy hosta %1%.\n" +"Proszę wybrać jeden, który ma być używany." + +msgid "PA Calibration" +msgstr "Kalibracja PA" + +msgid "DDE" +msgstr "DDE" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "Typ extrudera" + +msgid "PA Tower" +msgstr "Wieża PA" + +msgid "PA Line" +msgstr "Linia PA" + +msgid "PA Pattern" +msgstr "Wzór PA" + +msgid "Start PA: " +msgstr "Początek PA: " + +msgid "End PA: " +msgstr "Koniec PA: " + +msgid "PA step: " +msgstr "Krok PA: " + +msgid "Print numbers" +msgstr "Drukuj cyfry" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Proszę wprowadzić poprawne wartości:\n" +"Początek PA: >= 0,0\n" +"Koniec PA: > Początek PA\n" +"Krok PA: >= 0,001)" + +msgid "Temperature calibration" +msgstr "Kalibracja temperatury" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "PCTG" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Rodzaj filamentu" + +msgid "Start temp: " +msgstr "Temp. początkowa: " + +msgid "End temp: " +msgstr "Temp. końcowa: " + +msgid "Temp step: " +msgstr "Krok temp.: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Proszę wprowadzić poprawne wartości:\n" +"Początkowa temp.: <= 350\n" +"Końcowa temp.: >= 170\n" +"Początkowa temp. > Końcowa temp. + 5)" + +msgid "Max volumetric speed test" +msgstr "Test maksymalnego natężenia przepływu" + +msgid "Start volumetric speed: " +msgstr "Początkowa prędkość przepływu: " + +msgid "End volumetric speed: " +msgstr "Końcowa prędkość przepływu: " + +msgid "step: " +msgstr "Krok: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Proszę wprowadzić poprawne wartości:\n" +"start > 0 \n" +"krok >= 0\n" +"koniec > start + krok)" + +msgid "VFA test" +msgstr "Test VFA" + +msgid "Start speed: " +msgstr "Rozpocznij z prędkością: " + +msgid "End speed: " +msgstr "Zakończ z prędkością: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Proszę wprowadzić poprawne wartości:\n" +"start > 10 \n" +"krok >= 0\n" +"koniec > start + krok)" + +msgid "Start retraction length: " +msgstr "Długość retrakcji na początku: " + +msgid "End retraction length: " +msgstr "Długość retrakcji na końcu: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "Wyślij G-Code do hosta drukarki" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Prześlij do serwera druku z następującą nazwą pliku:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "" +"Użyj prawego ukośnika ( / ) jako separatora katalogów, jeśli jest to " +"potrzebne." + +msgid "Upload to storage" +msgstr "Prześlij do pamięci" + +msgid "Switch to Device tab after upload." +msgstr "Przełącz na zakładkę \"Urządzenie\" po przesłaniu zadania" + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "" +"Przesyłana nazwa pliku nie kończy się z \\\"‪%s‬\\\". Czy chcesz kontynuować?" + +msgid "Upload" +msgstr "Załaduj" + +msgid "Print host upload queue" +msgstr "Kolejka wysyłania do serwera druku" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Postęp" + +msgid "Host" +msgstr "Host" + +msgctxt "OfFile" +msgid "Size" +msgstr "Rozmiar" + +msgid "Filename" +msgstr "Nazwa pliku" + +msgid "Cancel selected" +msgstr "Anuluj wybrane" + +msgid "Show error message" +msgstr "Pokaż komunikat o błędzie" + +msgid "Enqueued" +msgstr "W kolejce" + +msgid "Uploading" +msgstr "Przesyłanie" + +msgid "Cancelling" +msgstr "Anulowanie" + +msgid "Error uploading to print host" +msgstr "Błąd podczas ładowania do hosta drukarki" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Nie można przeprowadzić operacji boolowskich na siatkach modelu" + +msgid "Mesh Boolean" +msgstr "Operacje Boolowskie na siatce" + +msgid "Union" +msgstr "Kombinacja" + +msgid "Difference" +msgstr "Różnica" + +msgid "Intersection" +msgstr "Przecięcie" + +msgid "Source Volume" +msgstr "Objętość źródłowa" + +msgid "Tool Volume" +msgstr "Objętość narzędzia" + +msgid "Subtract from" +msgstr "Odejmij od" + +msgid "Subtract with" +msgstr "Odejmij z" + +msgid "selected" +msgstr "wybrane" + +msgid "Part 1" +msgstr "Część 1" + +msgid "Part 2" +msgstr "Część 2" + +msgid "Delete input" +msgstr "Usuń wejście" + +msgid "Network Test" +msgstr "Test sieci" + +msgid "Start Test Multi-Thread" +msgstr "Rozpocznij test wielowątkowy" + +msgid "Start Test Single-Thread" +msgstr "Rozpocznij test jednowątkowy" + +msgid "Export Log" +msgstr "Eksportuj log" + +msgid "Snapmaker Orca Version:" +msgstr "Wersja Snapmaker Orca:" + +msgid "System Version:" +msgstr "Wersja systemu:" + +msgid "DNS Server:" +msgstr "Serwer DNS:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "Test Snapmaker Orca(GitHub)" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "Test Snapmaker Orca(GitHub):" + +msgid "Test Bing.com" +msgstr "Test Bing.com" + +msgid "Test bing.com:" +msgstr "Test bing.com:" + +msgid "Log Info" +msgstr "Informacje o logu" + +msgid "Select filament preset" +msgstr "Wybierz profil filamentu" + +msgid "Create Filament" +msgstr "Utwórz Filament" + +msgid "Create Based on Current Filament" +msgstr "Utwórz na podstawie bieżącego filamentu" + +msgid "Copy Current Filament Preset " +msgstr "Skopiuj bieżące ustawienie profilu filamentu " + +msgid "Basic Information" +msgstr "Podstawowe informacje" + +msgid "Add Filament Preset under this filament" +msgstr "Dodaj Profil Filamentu" + +msgid "We could create the filament presets for your following printer:" +msgstr "Możemy stworzyć profile filamentu dla twojej następnej drukarki:" + +msgid "Select Vendor" +msgstr "Wybierz dostawcę" + +msgid "Input Custom Vendor" +msgstr "Wprowadź niestandardowego dostawcę" + +msgid "Can't find vendor I want" +msgstr "Nie mogę znaleźć potrzebnego dostawcy" + +msgid "Select Type" +msgstr "Wybierz typ" + +msgid "Select Filament Preset" +msgstr "Wybierz profil filamentu" + +msgid "Serial" +msgstr "Seria" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "np. Basic, Matte, Silk, Marble" + +msgid "Filament Preset" +msgstr "Ustawienie profilu filamentu" + +msgid "Create" +msgstr "Utwórz" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Dostawca nie jest wybrany, proszę ponownie wybrać producenta." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" +"Nie wprowadzono dostawcy, proszę wprowadzić niestandardowego producenta." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" lub \"Generic\" nie mogą być używane jako Dostawca dla " +"niestandardowych filamentów." + +msgid "Filament type is not selected, please reselect type." +msgstr "Typ filamentu nie jest wybrany, proszę ponownie wybrać typ." + +msgid "Filament serial is not inputed, please input serial." +msgstr "Seria filamentu nie jest wprowadzona, proszę wprowadzić serie." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"W polu Dostawcy lub Serii filamentu nie mogą występować znaki specjalne. " +"Proszę usunąć i ponownie wprowadzić." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Wszystkie wprowadzone dane w niestandardowym dostawcy lub serii to spacje. " +"Proszę wprowadzić ponownie." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "Dostawca nie może być liczbą. Proszę wprowadzić ponownie." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"Nie wybrałeś jeszcze żadnej drukarki ani ustawień wstępnych. Proszę wybierz " +"przynajmniej jedno." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"Nazwa filamentu %s, którą utworzyłeś, już istnieje. \n" +"Jeśli będziesz kontynuować, utworzony preset będzie wyświetlany pod swoją " +"pełną nazwą. Czy chcesz kontynuować?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Niektóre istniejące profile nie zostały utworzone:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Czy chcesz go zastąpić?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"Nazwa profilu zostanie zmieniona na \"Dostawca Typ Seria @nazwa drukarki, " +"którą wybrałeś\".\n" +"Aby dodać profil dla innych drukarek, przejdź do wyboru drukarki." + +msgid "Create Printer/Nozzle" +msgstr "Utwórz drukarkę/Dyszę" + +msgid "Create Printer" +msgstr "Utwórz Drukarkę" + +msgid "Create Nozzle for Existing Printer" +msgstr "Utwórz Dyszę dla Istniejącej Drukarki" + +msgid "Create from Template" +msgstr "Utwórz na podstawie Szablonu" + +msgid "Create Based on Current Printer" +msgstr "Utwórz na podstawie obecnej drukarki" + +msgid "Import Preset" +msgstr "Importuj Profil wstępny" + +msgid "Create Type" +msgstr "Utwórz Typ" + +msgid "The model is not found, place reselect vendor." +msgstr "Nie znaleziono modelu, proszę wybrać dostawcę ponownie." + +msgid "Select Model" +msgstr "Wybierz Model" + +msgid "Select Printer" +msgstr "Wybierz drukarkę" + +msgid "Input Custom Model" +msgstr "Wprowadź Własny Model" + +msgid "Can't find my printer model" +msgstr "Nie możesz znaleźć swoich urządzeń" + +msgid "Rectangle" +msgstr "Prostokąt" + +msgid "Printable Space" +msgstr "Przestrzeń do druku" + +msgid "Hot Bed STL" +msgstr "Model Stołu " + +msgid "Load stl" +msgstr "Wczytaj stl" + +msgid "Hot Bed SVG" +msgstr "Tekstura Stołu" + +msgid "Load svg" +msgstr "Wczytaj svg" + +msgid "Max Print Height" +msgstr "Maksymalna wysokość wydruku" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "Plik przekracza %d MB, proszę zaimportuj ponownie." + +msgid "Exception in obtaining file size, please import again." +msgstr "" +"Wyjątek podczas uzyskiwania rozmiaru pliku, proszę zaimportuj ponownie." + +msgid "Preset path is not find, please reselect vendor." +msgstr "" +"Ścieżka ustawień wstępnych nie została znaleziona, proszę wybrać dostawcę " +"ponownie." + +msgid "The printer model was not found, please reselect." +msgstr "Model drukarki nie został znaleziony, proszę wybrać ponownie" + +msgid "The nozzle diameter is not found, place reselect." +msgstr "Średnica dyszy nie została znaleziona, proszę wybrać ponownie." + +msgid "The printer preset is not found, place reselect." +msgstr "Profil drukarki nie został znaleziony, proszę wybrać ponownie." + +msgid "Printer Preset" +msgstr "Profil Drukarki" + +msgid "Filament Preset Template" +msgstr "Opracuj Profil Filamentu" + +msgid "Deselect All" +msgstr "Odznacz Wszystko" + +msgid "Process Preset Template" +msgstr "Opracuj Profil Procesu" + +msgid "Back Page 1" +msgstr "Poprzednia Strona 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Jeszcze nie dokonano wyboru, na podstawie którego profilu drukarki ma być " +"utworzony nowy profil. Proszę wybrać dostawce i model drukarki." + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"W sekcji \"Obszar drukowania\" na pierwszej stronie wprowadzono " +"nieprawidłową wartość. Sprawdź wprowadzone dane przed utworzeniem." + +msgid "The custom printer or model is not inputed, place input." +msgstr "Brakuje niestandardowej drukarki lub modelu, proszę wprowadzić dane." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"Profil drukarki o tej nazwie już istnieje. Czy chcesz go zastąpić?\n" +"\tTak: zastąp ustawienia drukarki o tej samej nazwie. \n" +"Profile filamentu i procesu bez tej samej nazwy zostaną zarezerwowane.\n" +"\tAnuluj: nie twórz profilu i wróć do ekranu tworzenia." + +msgid "You need to select at least one filament preset." +msgstr "Musisz wybrać przynajmniej jeden profil filamentu" + +msgid "You need to select at least one process preset." +msgstr "Należy wybrać co najmniej jedno ustawienie procesu." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Tworzenie ustawień filamentu nie powiodło się. Oto szczegóły:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "Tworzenie ustawień procesu nie powiodło się. Oto szczegóły:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Dostawca nie został znaleziony, proszę wybrać ponownie." + +msgid "Current vendor has no models, please reselect." +msgstr "Obecny dostawca nie ma modeli, proszę wybrać ponownie." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"Nie wybrano dostawcy ani modelu lub nie wprowadzono niestandardowego " +"dostawcy i modelu" + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"W polu Dostawcy lub Modelu drukarki nie mogą występować znaki Specjalne. " +"Proszę usunąć i wprowadzić ponownie." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"W polach dotyczących niestandardowego producenta lub modelu drukarki " +"wprowadzono spacje. Proszę ponownie wprowadzić poprawne dane." + +msgid "Please check bed printable shape and origin input." +msgstr "" +"Proszę sprawdzić kształt stołu do druku oraz dane dotyczące jego położenia " +"początkowego" + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Nie wybrałeś jeszcze drukarki, do której chcesz zamienić dyszę, proszę " +"dokonaj wyboru." + +msgid "Create Printer Successful" +msgstr "Utworzenie profilu drukarki zakończyło się powodzeniem" + +msgid "Create Filament Successful" +msgstr "Utworzenie profilu filamentu zakończyło się powodzeniem" + +msgid "Printer Created" +msgstr "Drukarka utworzona" + +msgid "Please go to printer settings to edit your presets" +msgstr "Proszę przejść do ustawień drukarki, aby edytować swoje profile" + +msgid "Filament Created" +msgstr "Utworzono Profil Filamentu" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Jeżeli zajdzie taka potrzeba, przejdź do ustawień filamentu, aby edytować " +"swoje profile. Należy pamiętać, że temperatura dyszy, temperatura stołu i " +"maksymalna prędkość objętościowa mają znaczący wpływ na jakość druku. Proszę " +"ustawiać je ostrożnie." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"Orca wykrył, że funkcja synchronizacji profili użytkownika nie jest " +"włączona, co może skutkować niepoprawnymi ustawieniami filamentu na stronie " +"Urządzenia. Kliknij \"Synchronizuj profile użytkownika\", aby włączyć " +"funkcję synchronizacji." + +msgid "Printer Setting" +msgstr "Ustawienia drukarki" + +msgid "Printer config bundle(.orca_printer)" +msgstr "Zestaw konfiguracji drukarki (.orca_printer)" + +msgid "Filament bundle(.orca_filament)" +msgstr "Zestaw filamentu (.orca_filament)" + +msgid "Printer presets(.zip)" +msgstr "Profile drukarki (.zip)" + +msgid "Filament presets(.zip)" +msgstr "Profile filamentu (.zip)" + +msgid "Process presets(.zip)" +msgstr "Profile procesu (.zip)" + +msgid "initialize fail" +msgstr "błąd inicjalizacji" + +msgid "add file fail" +msgstr "Dodawanie pliku nie powiodło się" + +msgid "add bundle structure file fail" +msgstr "Błąd dodawania pliku struktury pakietu konfiguracji" + +msgid "finalize fail" +msgstr "finalizacja nie powiodła się" + +msgid "open zip written fail" +msgstr "błąd zapisu ZIP" + +msgid "Export successful" +msgstr "Eksport zakończony sukcesem" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"Plik '%s' już istnieje w bieżącym katalogu. Czy chcesz go nadpisać?\n" +"Jeśli nie, zostanie dodany sufiks czasowy do nazwy pliku." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"Profil drukarki oraz wszystkie ustawienia filamentu i procesu, które do niej " +"należą. \n" +"Można je udostępniać innym osobom." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Profile filamentu.\n" +"Można je udostępniać innym osobom." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Wyświetlone są jedynie nazwy drukarek, które miały zmienione ustawienia " +"filamentu lub procesu." + +msgid "Only display the filament names with changes to filament presets." +msgstr "" +"Wyświetlone są jedynie nazwy filamentów, które zostały zmodyfikowane w " +"ustawieniach." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Wyświetlane są tylko nazwy drukarek z ustawieniami użytkownika, wybrany " +"zestaw zostanie wyeksportowany jako plik zip." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Na liście widoczne są tylko nazwy filamentów ze zmodyfikowanymi " +"ustawieniami, \n" +"a dla każdej wybranej nazwy filamentu zostaną wyeksportowane wszystkie " +"ustawienia jako archiwum zip." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Na liście widoczne są tylko nazwy drukarek ze zmodyfikowanymi ustawieniami " +"procesu, \n" +"a dla każdej wybranej nazwy drukarki zostaną wyeksportowane wszystkie \n" +"ustawienia procesu jako archiwum zip." + +msgid "Please select at least one printer or filament." +msgstr "Proszę wybrać przynajmniej jedną drukarkę lub filament." + +msgid "Please select a type you want to export" +msgstr "Proszę wybierz co chcesz wyeksportować" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" +"Nie udało się utworzyć tymczasowego folderu. Spróbuj ponownie wyeksportować " +"konfiguracje." + +msgid "Edit Filament" +msgstr "Edytuj Filament" + +msgid "Filament presets under this filament" +msgstr "Dodaj profil filamentu poniżej" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Uwaga: Jeśli ostatni profil tego filamentu zostanie usunięty, wszystkie " +"ustawienia tego filamentu zostaną skasowane po wyjściu z okna dialogowego." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "Nie można usunąć profili dziedziczonych przez inne profile" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Następujące ustawienia dziedziczą to ustawienie." +msgstr[1] "Następujące ustawienia dziedziczą to ustawienie." +msgstr[2] "Następujących ustawień dziedziczą to ustawienie." + +msgid "Delete Preset" +msgstr "Usuń Profil" + +msgid "Are you sure to delete the selected preset?" +msgstr "Czy na pewno chcesz usunąć wybrany profil?" + +msgid "Delete preset" +msgstr "Usuń profil" + +msgid "+ Add Preset" +msgstr "+ Dodaj Profil" + +msgid "Delete Filament" +msgstr "Usuń Filament" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Wszystkie ustawienia wstępne filamentu przypisane do tego profilu zostaną " +"usunięte.\n" +"Jeśli używasz tego filamentu w swojej drukarce, proszę zresetuj informacje o " +"filamencie dla tego slotu." + +msgid "Delete filament" +msgstr "Usuń filament" + +msgid "Add Preset" +msgstr "Dodaj Profil" + +msgid "Add preset for new printer" +msgstr "Dodaj profil dla nowej drukarki" + +msgid "Copy preset from filament" +msgstr "Skopiuj ustawienie z filamentu" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "" +"Nie znaleziono profilu dla wybranego filamentu, proszę dokonać ponownego " +"wyboru" + +msgid "[Delete Required]" +msgstr "[Usuń Wymagane]" + +msgid "Edit Preset" +msgstr "Edytuj Profile" + +msgid "For more information, please check out Wiki" +msgstr "Aby uzyskać więcej informacji, proszę zajrzeć na Wiki" + +msgid "Collapse" +msgstr "Zwiń" + +msgid "Daily Tips" +msgstr "Porada Dnia" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "zapamiętana dysza: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Średnica Twojej dyszy w profilu nie jest zgodna ze zapamiętaną średnicą " +"dyszy. Czy ostatnio zmieniałeś swoją dyszę?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "" +"*Drukowanie filamentu %s z użyciem %s może spowodować uszkodzenie dyszy" + +msgid "Need select printer" +msgstr "Konieczny jest wybór drukarki" + +msgid "The start, end or step is not valid value." +msgstr "Wartość początkowa, końcowa lub krokowa jest nieprawidłowa." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Nie można skalibrować: być może zakres ustawionych wartości kalibracyjnych " +"jest zbyt duży, lub krok jest zbyt mały" + +msgid "Physical Printer" +msgstr "Fizyczna drukarka" + +msgid "Print Host upload" +msgstr "Przesyłanie do hosta drukowania" + +msgid "Could not get a valid Printer Host reference" +msgstr "Nie można uzyskać ważnego odniesienia do hosta drukarki" + +msgid "Success!" +msgstr "Sukces!" + +msgid "Are you sure to log out?" +msgstr "Czy na pewno chcesz się wylogować?" + +msgid "Refresh Printers" +msgstr "Odśwież drukarki" + +msgid "View print host webui in Device tab" +msgstr "Wyświetl interfejs użytkownika serwera druku w zakładce \"Urządzenie\"" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" +"Zamień zakładkę urządzeń BambuLab na interfejs użytkownika serwera druku" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"Plik HTTPS CA jest opcjonalny. Jest potrzebny tylko w przypadku uzycia HTTPS " +"z certyfikatem wlasnego podpisu." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Pliki certyfikatów (.crt, .pem)|.crt;.pem|Wszystkie pliki|*.*" + +msgid "Open CA certificate file" +msgstr "Otwórz plik certyfikatu CA" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"W tym systemie %s używa certyfikatów HTTPS z systemowego magazynu " +"certyfikatów lub łańcucha kluczy." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Aby użyć własnego certyfikatu, zaimportuj plik do magazynu (Certificate " +"Store / Keychain)." + +msgid "Login/Test" +msgstr "Logowanie/Test" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"Połączenie z drukarkami podłączonymi przez hosta drukowania nie powiodło się." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Niepasujący typ hosta drukowania: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "Połączenie z AstroBox działa poprawnie." + +msgid "Could not connect to AstroBox" +msgstr "Nie udało się połączyć z AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Uwaga: Wymagana jest wersja AstroBox co najmniej 1.1.0." + +msgid "Connection to Duet works correctly." +msgstr "Połączenie z Duet działa poprawnie." + +msgid "Could not connect to Duet" +msgstr "Nie udało się połączyć z Duet" + +msgid "Unknown error occured" +msgstr "Wystąpił nieznany błąd" + +msgid "Wrong password" +msgstr "Nieprawidłowe hasło" + +msgid "Could not get resources to create a new connection" +msgstr "Nie udało się uzyskać zasobów do utworzenia nowego połączenia" + +msgid "Upload not enabled on FlashAir card." +msgstr "Przesyłanie nie jest włączone na karcie FlashAir." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "Połączenie z FlashAir działa poprawnie, a przesyłanie jest włączone." + +msgid "Could not connect to FlashAir" +msgstr "Nie udało się połączyć z FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Uwaga: Wymagany jest FlashAir z oprogramowaniem 2.00.02 lub nowszym oraz " +"aktywowaną funkcją przesyłania." + +msgid "Connection to MKS works correctly." +msgstr "Połączenie z MKS działa poprawnie." + +msgid "Could not connect to MKS" +msgstr "Nie udało się połączyć z MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "Połączenie z OctoPrint działa poprawnie." + +msgid "Could not connect to OctoPrint" +msgstr "Nie udało się połączyć z OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Uwaga: Wymagana jest wersja OctoPrint co najmniej 1.1.0." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Połączenie z Prusa SL1 / SL1S działa poprawnie." + +msgid "Could not connect to Prusa SLA" +msgstr "Nie udało się połączyć z Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "Połączenie z PrusaLink działa poprawnie." + +msgid "Could not connect to PrusaLink" +msgstr "Nie udało się połączyć z PrusaLink" + +msgid "Storages found" +msgstr "Znaleziono magazyny" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : tylko do odczytu" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : brak wolnego miejsca" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" +"Przesyłanie nie powiodło się. Nie znaleziono odpowiedniego nośnika w %1%.." + +msgid "Connection to Prusa Connect works correctly." +msgstr "Połączenie z Prusa Connect działa poprawnie." + +msgid "Could not connect to Prusa Connect" +msgstr "Nie udało się połączyć z Prusa Connect" + +msgid "Connection to Repetier works correctly." +msgstr "Połączenie z Repetier działa poprawnie." + +msgid "Could not connect to Repetier" +msgstr "Nie udało się połączyć z Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Uwaga: Wymagana jest wersja Repetier co najmniej 0.90.0." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"Status HTTP: %1%\n" +"Treść wiadomości: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Analiza odpowiedzi hosta nie powiodła się.\n" +"Treść wiadomości: \"%1%\"\n" +"Błąd: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Wyliczenie drukarek hosta nie powiodło się.\n" +"Treść wiadomości: \"%1%\"\n" +"Błąd: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"Ta niska wysokość warstwy prowadzi do praktycznie niewidocznych warstw i " +"wysokiej jakości wydruku. Nadaje się do większości standardowych przypadków " +"druku." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.2 mm, ma niższe " +"prędkości i przyspieszenia, a wzorzec rzadkiego wypełnienia to Gyroidalny. " +"Dlatego daje znacznie lepszą jakość druku, ale znacznie wydłuża czas druku." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.2 mm, ma " +"nieznacznie większą wysokość warstwy, co skutkuje praktycznie " +"niezauważalnymi liniami warstw i nieco krótszym czasem druku." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.2 mm, ma większą " +"wysokość warstwy, co skutkuje lekko widocznymi liniami warstw, ale krótszym " +"czasem druku." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"W porównaniu z domyślnym profilem dyszy o średnicy 0.2 mm, ma mniejszą " +"wysokość warstwy, co prowadzi do praktycznie niewidocznych linii warstw i " +"wyższej jakości druku, ale wydłuża czas druku." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"W porównaniu z domyślnym profilem dyszy 0.2 mm, ma mniejszą wysokość " +"warstwy, niższe prędkości i przyspieszenie, oraz wzór wypełnienia jest " +"gyroidalny. To prowadzi do praktycznie niewidocznych linii warstw i wyższej " +"jakości druku, ale znacznie wydłuża czasu druku." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"W porównaniu ze standardowym profilem dyszy o średnicy 0.2 mm, ten profil ma " +"mniejszą wysokość warstwy, co prowadzi do praktycznie niewidocznych linii " +"warstw i znacznie wyższa jakość wydruku, ale jednocześnie wydłuża jego czas." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"W porównaniu ze standardowym profilem dyszy o średnicy 0.2 mm, ma on " +"mniejszą wysokość warstwy, niższe prędkości i przyspieszenia, a także " +"zastosowany jest wzór wypełnienia Gyroid. To prowadzi do praktycznie " +"niewidocznych warstw i znacznie lepszej jakości wydruku, ale jednocześnie " +"wydłuża jego czas." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"Ta standardowa wysokość warstwy zapewnia normalną jakość druku, odpowiednią " +"dla większości standardowych przypadków druku." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"W porównaniu ze standardowym profilem dla dyszy o średnicy 0.4 mm, ten " +"profil ma więcej obwodów i większą gęstość wypełnienia. To zwiększa " +"wytrzymałość wydruku, ale prowadzi także do większego zużycia materiału i " +"dłuższego czasu druku." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"W porównaniu ze standardowym profilem dla dyszy o średnicy 0.4 mm, ten " +"profil ma większą wysokość warstwy. W rezultacie warstwy są bardziej " +"widoczne, co obniża jakość druku, ale jednocześnie delikatnie skraca jego " +"czas." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"W porównaniu ze standardowym profilem dla dyszy o średnicy 0.4 mm, ten " +"profil ma większą wysokość warstwy. W rezultacie warstwy są bardziej " +"widoczne, co obniża jakość druku, ale jednocześnie skraca jego czas." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.4 mm, ten profil ma " +"mniejszą wysokość warstwy. W rezultacie warstwy są mniej widoczne, co " +"skutkuje wyższą jakością druku, ale jednocześnie wydłuża się jego czas." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.4 mm, ten profil ma " +"mniejszą wysokość warstwy, niższe prędkości i przyspieszenia, oraz wzór " +"wypełnienia Gyroidalny. W rezultacie warstwy są mniej widoczne, co prowadzi " +"do znacznie wyższej jakości druku, ale zauważalnie dłuższego czasu druku." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.4 mm, ten profil ma " +"mniejszą wysokość warstwy. W rezultacie warstwy są prawie niewidoczne, co " +"prowadzi do wyższej jakości druku, ale wydłużenia jego czas." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.4 mm, ten profil ma " +"mniejszą wysokość warstwy, niższe prędkości i przyspieszenia, a także " +"zastosowany wzór wypełnienia gyroidalnego. W rezultacie warstwy są prawie " +"niewidoczne, co prowadzi do znacznie wyższej jakości druku, ale wydłuża jego " +"czas." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.4 mm, ten profil ma " +"mniejszą wysokość warstwy. W rezultacie warstwy są prawie niewidoczne, co " +"prowadzi do wyższej jakości druku, ale wydłużenia jego czas." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"Ta wyższa wysokość warstwy, skutkuje widocznymi liniami warstw i zwykłą " +"jakością i czasem druku." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.6 mm, ten profil ma " +"więcej obwodów i większą gęstość wypełnienia. Skutkuje to zwiększeniem " +"wytrzymałości wydrukowanego elementu, ale zwiększa zużycie materiału i czas " +"wydruku." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.6 mm, ten profil ma " +"większą wysokość warstwy. Skutkuje to bardziej zauważalnymi warstwami i " +"obniżeniem jakości druku, chociaż w niektórych przypadkach może skrócić jego " +"czas." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.6 mm, ten profil ma " +"większą wysokość warstwy. Skutkuje to bardziej zauważalnymi warstwami i " +"znacznym obniżeniem jakości druku, chociaż w niektórych przypadkach może " +"skrócić jego czas." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.6 mm, ten profil ma " +"mniejszą wysokość warstwy. W rezultacie warstwy są mniej zauważalne, co " +"powoduje nieznaczny wzrost jakości druku, ale jednocześnie zwiększa czas " +"wydruku." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.6 mm, ten profil ma " +"mniejszą wysokość warstwy. W rezultacie warstwy są mniej zauważalne, co " +"prowadzi do wyższej jakości druku, ale wydłuża jego czas." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"Ta bardzo duża wysokość warstwy skutkuje wyraźnie widocznymi liniami warstw, " +"niską jakością druku, a także standardowym czasem druku." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0.8 mm, ten profil ma " +"nieco większą wysokość warstwy. W rezultacie są to wyraźnie widoczne warstwy " +"i znacznie niższa jakość druku, ale w niektórych przypadkach skraca to czas " +"wydruku." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0,8 mm, ten profil ma " +"znacznie większą wysokość warstwy. W rezultacie warstwy są bardzej widoczne, " +"a jakość druku znacznie niższa, ale w niektórych przypadkach znacznie skraca " +"się czas wydruku." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0,8 mm, ten profil ma " +"nieco mniejszą wysokość warstwy. W rezultacie warstwy są nieco mniej " +"widoczne, a jakość druku jest nieco lepsza, ale w niektórych przypadkach " +"czas druku może się nieco wydłużyć." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"W porównaniu z domyślnym profilem dla dyszy o średnicy 0,8 mm, ten profil ma " +"mniejszą wysokość warstwy, co prowadzi do mniejszych, ale nadal widocznych " +"warstw i lepszej jakości druku, a w niektórych przypadkach może się wydłużyć " +"czas wydruku." + +msgid "Connected to Obico successfully!" +msgstr "Pomyślnie połączono z SimplyPrint!" + +msgid "Could not connect to Obico" +msgstr "Nie można połączyć się z Obico" + +msgid "Connected to SimplyPrint successfully!" +msgstr "Pomyślnie połączono z SimplyPrint!" + +msgid "Could not connect to SimplyPrint" +msgstr "Nie można połączyć się z SimplyPrint" + +msgid "Internal error" +msgstr "Błąd wewnętrzny" + +msgid "Unknown error" +msgstr "Nieznany błąd" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" +"Nie połączono z kontem SimplyPrint. Przejdź do opcji Połącz, aby go " +"skonfigurować." + +msgid "Connection to Flashforge works correctly." +msgstr "Połączenie z Flashforge działa poprawnie." + +msgid "Could not connect to Flashforge" +msgstr "Nie można połączyć się z Flashforge" + +msgid "The provided state is not correct." +msgstr "Podany stan nie jest właściwy" + +msgid "Please give the required permissions when authorizing this application." +msgstr "" +"Proszę udzielić wymaganych uprawnień podczas autoryzacji tej aplikacji." + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "Wystąpił problem podczas próby logowania, proszę spróbować ponownie." + +msgid "User cancelled." +msgstr "Anulowane przez użytkownika." + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"Precyzyjna ściana\n" +"Czy wiesz, że włączenie \"ściany o wysokiej precyzji\" może poprawić ich " +"jakość i spójność warstw?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"Tryb Sandwich\n" +"Czy wiesz, że możesz użyć trybu sandwich (wewnętrzna-zewnętrzna-wewnętrzna) " +"do poprawy precyzji i spójności warstw, jeśli twój model nie ma bardzo " +"stromych nawisów?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"Temperatura komory\n" +"Czy wiesz, że Snapmaker Orca obsługuje temperaturę komory?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"Kalibracja\n" +"Czy wiesz, że kalibrowanie twojej drukarki może zdziałać cuda? Sprawdź nasze " +"ukochane rozwiązanie kalibracyjne w Snapmaker Orca." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"Wentylator pomocniczy\n" +"Czy wiesz, że Snapmaker Orca obsługuje pomocniczy wentylator chłodzący części?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"Filtracja powietrza/Wentylator wyciągowy\n" +"Czy wiesz, że Snapmaker Orca może obsługiwać filtrację powietrza/wentylator " +"wyciągowy?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"Okno G-code\n" +"Możesz włączyć/wyłączyć okno G-code, naciskając klawisz C." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"Przełączanie przestrzeni roboczych\n" +"Możesz przełączać się między przestrzeniami roboczymi Przygotowanie i " +"Podgląd za pomocą klawisza Tab." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"Jak korzystać ze skrótów klawiszowych\n" +"Czy wiesz, że Snapmaker Orca oferuje szeroki zakres skrótów klawiszowych i " +"operacji na scenie 3D." + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"Odwróć na nieparzystych\n" +"Czy wiesz, że funkcja Odwróć na nieparzystych może znacząco poprawić " +"jakość powierzchni twoich występów?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Narzędzie przecinania\n" +"Czy wiesz, że możesz ciąć model pod dowolnym kątem i w dowolnej pozycji za " +"pomocą narzędzia do przecinania?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Napraw model\n" +"Czy wiesz, że możesz naprawić uszkodzony model 3D, aby uniknąć wielu " +"problemów z krojeniem w systemie Windows?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Timelapse\n" +"Czy wiesz, że możesz generować wideo timelapse podczas każdego druku?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Automatyczne rozmieszczanie\n" +"Czy wiesz, że możesz automatycznie rozmieścić wszystkie obiekty w swoim " +"projekcie?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Automatyczna orientacja\n" +"Czy wiesz, że możesz obracać obiekty do optymalnej orientacji do druku za " +"pomocą jednego kliknięcia?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Połóż na powierzchni\n" +"Czy wiesz, że możesz szybko ułożyć model tak, aby Czy wiesz, że możesz " +"szybko ustawić model tak, aby jedna z jego ścian znajdowała się na stole " +"roboczym? Wybierz funkcję „Umieść na powierzchni” lub naciśnij F." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Lista obiektów\n" +"Czy wiesz, że możesz wyświetlać wszystkie obiekty/części na liście i " +"zmieniać ustawienia dla każdego obiektu/części?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"Funkcja wyszukiwania\n" +"Czy wiesz, że możesz użyć narzędzia wyszukiwania, aby szybko znaleźć " +"konkretne ustawienie Snapmaker Orca?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"Uprość model\n" +"Czy wiesz, że możesz zmniejszyć liczbę trójkątów w siatce za pomocą funkcji " +"upraszczania siatki? Kliknij prawym przyciskiem myszy model i wybierz opcję " +"Uprość model." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Tabela Parametrów Cięcia\n" +"Czy wiesz, że możesz wyświetlić wszystkie obiekty/części na tabeli i " +"zmieniać ustawienia dla każdego obiektu/części?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Podziel na obiekty/części\n" +"Czy wiesz, że możesz podzielić duży obiekt na mniejsze, aby łatwiej je " +"kolorować lub drukować?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"Odejmowanie części\n" +"Czy wiesz, że możesz odjąć jedną siatkę od drugiej, używając modyfikatora " +"części negatywnej? W ten sposób możesz na przykład łatwo tworzyć otwory o " +"zmiennym rozmiarze bezpośrednio w Snapmaker Orca." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP\n" +"Czy wiesz, że możesz poprawić jakość swojego druku, krojąc plik STEP zamiast " +"STL?\n" +"Snapmaker Orca wspiera krojenie plików STEP, oferując lepszą jakość niż STL o " +"niższej rozdzielczości. Wypróbuj to!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Lokalizacja szwu Z\n" +"Czy wiesz, że możesz dostosować lokalizację szwu Z, a nawet namalować go na " +"swoim wydruku, aby był w mniej widocznej lokalizacji? Poprawia to ogólny " +"wygląd twojego modelu. Sprawdź to!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Dopasowanie prędkości przepływu\n" +"Czy wiesz, że prędkość przepływu może być dopasowana dla jeszcze lepszego " +"wyglądu wydruków? W zależności od filamentu, możesz poprawić ogólne " +"wykończenie wydrukowanego modelu poprzez dokonanie kilku drobnych regulacji." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Podziel swoje wydruki na płyty\n" +"Czy wiesz, że możesz podzielić model, który ma wiele części, na indywidualne " +"płyty gotowe do druku? Ułatwi to proces śledzenia wszystkich części." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Przyspiesz swój wydruk z adaptacyjną wysokością warstwy\n" +"Czy wiesz, że możesz wydrukować model jeszcze szybciej, używając opcji " +"adaptacyjnej wysokości warstwy? Sprawdź to!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Namaluj Podpory\n" +"Czy wiesz, że możesz malować lokalizację swoich podpór? Ta funkcja ułatwia " +"umieszczenie filamentu podporowego tylko w tych sekcjach modelu, które go " +"faktycznie potrzebują." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Różne rodzaje podpór\n" +"Czy wiesz, że możesz wybierać spośród wielu rodzajów podpór? Podpory " +"drzewiaste świetnie sprawdzają się w modelach organicznych, jednocześnie " +"oszczędzając filament i poprawiając prędkość druku. Sprawdź je!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Drukowanie filamentem jedwabnym (Slik)\n" +"Czy wiesz, że filament jedwabny wymaga szczególnej uwagi, aby go skutecznie " +"wydrukować? Zalecana jest zawsze wyższa temperatura i niższa prędkość, aby " +"osiągnąć najlepsze rezultaty." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Brim dla lepszej przyczepności\n" +"Czy wiesz, że przy drukowaniu modeli o małej powierzchni styku z " +"powierzchnią druku, zaleca się użycie brimu?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Ustawianie parametrów dla wielu obiektów\n" +"Czy wiesz, że możesz ustawić parametry cięcia dla wszystkich wybranych " +"obiektów jednocześnie?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Układanie obiektów\n" +"Czy wiesz, że możesz układać obiekty w całości?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Czyszczenie do podpór/obiektów/wypełnienia\n" +"Czy wiesz, że możesz zaoszczędzić marnowany filament, przepłukując go do " +"podpór/obiektów/wypełnienia podczas zmiany filamentu?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Zwiększanie wytrzymałości\n" +"Czy wiesz, że możesz użyć więcej pętli ścian i większej gęstości " +"wypełnienia, aby zwiększyć wytrzymałość modelu?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Kiedy należy drukować przy otwartych drzwiach drukarki? \n" +"Czy wiesz, że otwarcie drzwiczek drukarki może zmniejszyć prawdopodobieństwo " +"zatkania ekstrudera/hotendu podczas drukowania filamentem o niższej " +"temperaturze gdy temperatura obudowy jest wyższa? Więcej informacji na ten " +"temat znajdziesz na Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Unikaj odkształceń\n" +"Czy wiesz, że podczas drukowania filamentami podatnymi na odkształcenia, " +"takimi jak ABS, odpowiednie zwiększenie temperatury podgrzewanej płyty może " +"zmniejszyć prawdopodobieństwo odkształceń." + +#~ msgid "Current association: " +#~ msgstr "Aktualnie powiązano: " + +#~ msgid "Associate prusaslicer://" +#~ msgstr "z prusaslicer://" + +#~ msgid "Not associated to any application" +#~ msgstr "Nie skojarzony z żadną aplikacją" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "models from Printable.com" +#~ msgstr "" +#~ "Powiąż Snapmaker Orca z linkami prusaslicer://, aby Orca mogła otwierać " +#~ "modele z Printable.com" + +#~ msgid "Associate bambustudio://" +#~ msgstr "z bambustudio://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with bambustudio:// links so that Orca can open " +#~ "models from makerworld.com" +#~ msgstr "" +#~ "Powiąż Snapmaker Orca z linkami bambustudio://, aby Orca mogła otwierać " +#~ "modele z makerworld.com" + +#~ msgid "Associate cura://" +#~ msgstr "z cura://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with cura:// links so that Orca can open models from " +#~ "thingiverse.com" +#~ msgstr "" +#~ "Powiąż Snapmaker Orca z linkami cura://, aby Orca mogła otwierać modele z " +#~ "thingiverse.com" + +#~ msgid "" +#~ "File size exceeds the 100MB upload limit. Please upload your file through " +#~ "the panel." +#~ msgstr "" +#~ "Rozmiar pliku przekracza limit przesyłania 100 MB. Proszę przesłać plik " +#~ "za pomocą panelu." + +#~ msgid "Enable adaptive pressure advance (beta)" +#~ msgstr "Włącz adaptacyjny wzrost ciśnienia (beta)" + +#~ msgid "" +#~ "With increasing print speeds, it has been observed that the effective PA " +#~ "value typically decreases. This means that a single PA value is not 100% " +#~ "optimal for all features and a compromise value is usually used, that " +#~ "does not cause too much bulging on slower features while also not causing " +#~ "gaps on faster features.\n" +#~ "\n" +#~ "This feature aims to address this limitation by modeling the response of " +#~ "your printer's extrusion system depending on the speed it is printing at. " +#~ "Internally it generates a fitted model that can extrapolate the needed " +#~ "pressure advance for any given print speed, which is then emmited to the " +#~ "printer depending on the current print speed.\n" +#~ "\n" +#~ "When enabled the pressure advance value above is overriden. However, a " +#~ "reasonable default value above isstrongly recomended to act as a fallback " +#~ "in case the model calculations fail." +#~ msgstr "" +#~ "Wraz ze wzrostem prędkości druku zaobserwowano, że efektywna wartość PA " +#~ "zazwyczaj maleje. Oznacza to, że pojedyncza wartość PA nie jest w 100% " +#~ "optymalna dla wszystkich elementów i zwykle stosowana jest wartość " +#~ "kompromisowa, która nie powoduje zbyt dużego \"wypuklenia\" na elementach " +#~ "drukowanych wolniej, a jednocześnie nie powoduje przerw na elementach " +#~ "drukowanych szybciej.\n" +#~ "\n" +#~ "Ta funkcja ma na celu rozwiązanie tego ograniczenia poprzez modelowanie " +#~ "reakcji ekstrudera w zależności od prędkości drukowania. Wewnętrznie " +#~ "generuje dopasowany model, który może przewidzieć jakie będzie wymagane " +#~ "ciśnienie dla dowolnej prędkości drukowania, który jest następnie " +#~ "przekazywany do drukarki w zależności od bieżącej prędkości druku.\n" +#~ "\n" +#~ "Po włączeniu powyższa wartość PA jest nadpisywana. Zdecydowanie zaleca " +#~ "się jednak przyjęcie rozsądnej wartości domyślnej, która będzie działać " +#~ "jako rozwiązanie awaryjne w przypadku nieprawidłowych obliczeń dla modelu." + +#~ msgid "Adaptive pressure advance measurements (beta)" +#~ msgstr "Adaptacyjny pomiar ciśnienia (beta)" + +#~ msgid "" +#~ "Add pairs of pressure advance values and the speed they were measured at, " +#~ "separated by a coma. One set of values per line. For example\n" +#~ "0.03,100\n" +#~ "0.027,150 etc.\n" +#~ "\n" +#~ "How to calibrate:\n" +#~ "1. Run the pressure advance test for at least 3 speeds per filament. It " +#~ "is recommended that the test is runfor at least the speed of the external " +#~ "perimeters, the speed of the internal perimeters and the fastest feature " +#~ "print speed in your profile (usually its the sparse or solid infill\n" +#~ "2. Take note of the optimal Pressure advance value for each speed. The PA " +#~ "ideal PA value should be decreasing the faster the speed is. If it is " +#~ "not, confirm that your extruder is functioning correctly3. Enter the " +#~ "pairs of PA values and Speeds in the text box here and save your filament " +#~ "profile" +#~ msgstr "" +#~ "Dodaj pary wartości przyspieszenia ciśnienia i prędkości, przy których " +#~ "zostały zmierzone, oddzielone przecinkiem. Jeden zestaw wartości na " +#~ "wiersz. Na przykład\n" +#~ "0.03,100\n" +#~ "0.027,150 itd.\n" +#~ "\n" +#~ "Jak skalibrować:\n" +#~ "1. Przeprowadź test PA dla co najmniej 3 prędkości na filament. Zaleca " +#~ "się przeprowadzenie testu PA co najmniej dla zewnętrznych obwodów, " +#~ "wewnętrznych obwodów i najszybszej prędkości drukowania cechy w profilu " +#~ "(zwykle jest to rzadkie lub pełne wypełnienie).\n" +#~ "2. Zanotuj optymalną wartość PA dla każdej prędkości. Idealna wartość PA " +#~ "powinna maleć wraz ze wzrostem prędkości. Jeśli tak nie jest, sprawdź, " +#~ "czy ekstruder działa prawidłowo. \n" +#~ "3.Wprowadź pary wartości PA i prędkości w polu tekstowym i zapisz profil " +#~ "filamentu." + +#~ msgid "Flow ratio and Pressure Advance" +#~ msgstr "Współczynnik przepływu i Wzrost ciśnienia (PA)" + +#~ msgid "param_information" +#~ msgstr "param_information" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "" +#~ "Nie udało się nawiązać lokalnego połączenia z drukarką, spróbuj ponownie." + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Istnieje już historia wyników kalibracji o tej samej nazwie: %s. Tylko " +#~ "jeden z wyników o tej samej nazwie zostanie zapisany. Czy na pewno chcesz " +#~ "zastąpić ten wynik?" + +#~ msgid "X" +#~ msgstr "X" + +#~ msgid "Y" +#~ msgstr "Y" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "PrusaSlicer links from Printable.com" +#~ msgstr "" +#~ "Skojarz Snapmaker Orca z linkami \"prusaslicer://\", aby Orca mógł otwierać " +#~ "linki PrusaSlicer z Printable.com." + +#~ msgid "" +#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed " +#~ "first, which works best in most cases.\n" +#~ "\n" +#~ "Printing walls first may help with extreme overhangs as the walls have " +#~ "the neighbouring infill to adhere to. However, the infill will slighly " +#~ "push out the printed walls where it is attached to them, resulting in a " +#~ "worse external surface finish. It can also cause the infill to shine " +#~ "through the external surfaces of the part." +#~ msgstr "" +#~ "Kolejność drukowania ścian/wypełnienia. Gdy pole wyboru nie jest " +#~ "zaznaczone, najpierw drukowane są ściany, co w większości przypadków " +#~ "działa najlepiej.\n" +#~ "\n" +#~ "Drukowanie najpierw ścian, może pomóc przy ekstremalnych nawisach, " +#~ "ponieważ ściany mają sąsiednie wypełnienie, do którego przylegają. Jednak " +#~ "wypełnienie może nieznacznie wypchnąć tam wydrukowane ściany w miejscu " +#~ "gdzie są do nich przymocowane. Skutkuje to gorszym wykończeniem " +#~ "zewnętrznej powierzchni. Może to również spowodować prześwitywanie " +#~ "wypełnienia przez zewnętrzne powierzchnie części." + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "Maximum print speed when purging" +#~ msgstr "Maksymalna prędkość druku podczas czyszczenia" + +#~ msgid "" +#~ "The maximum print speed when purging in the wipe tower. If the sparse " +#~ "infill speed or calculated speed from the filament max volumetric speed " +#~ "is lower, the lowest speed will be used instead.\n" +#~ "Increasing this speed may affect the tower's stability, as purging can be " +#~ "performed over sparse layers. Before increasing this parameter beyond the " +#~ "default of 90mm/sec, make sure your printer can reliably bridge at the " +#~ "increased speeds." +#~ msgstr "" +#~ "Maksymalna prędkość drukowania podczas oczyszczania w wieży czyszczącej. " +#~ "Jeśli prędkość wypełnienia rzadkiego lub prędkość obliczona na podstawie " +#~ "maksymalnej prędkości przepływu filamentu jest niższa, zostanie użyta " +#~ "najniższa prędkość.\n" +#~ "Zwiększenie tej prędkości może wpłynąć na stabilność wieży, ponieważ " +#~ "oczyszczanie może być wykonywane na rzadkich warstwach. Przed " +#~ "zwiększeniem tego parametru ponad domyślną wartość 90 mm/s należy upewnić " +#~ "się, że drukarka może niezawodnie drukować ze zwiększoną prędkością." + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca opiera się na BambuStudio od Bambulab, które wywodzi się z " +#~ "PrusaSlicer od Prusa Research. PrusaSlicer z kolei bazuje na Slic3r od " +#~ "Alessandro Ranellucci i społeczności RepRap" + +#~ msgid "Open &Studio" +#~ msgstr "Otwórz &Studio" + +#~ msgid "Open Studio" +#~ msgstr "Otwórz Studio" + +#~ msgid "Export &Configs" +#~ msgstr "Eksportuj &konfiguracje" + +#~ msgid "" +#~ "Over 4 systems/handy are using remote access, you can close some and try " +#~ "again." +#~ msgstr "" +#~ "Więcej niż 4 aplikacje Studio/Handy korzystają z dostępu zdalnego, możesz " +#~ "zamknąć kilka z nich i spróbować ponownie." + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Włącz tę opcję, aby uzyskać plik G-code zawierający ruchy G2 i G3. " +#~ "Tolerancja dopasowania jest taka sama jak rozdzielczość" + +#~ msgid "Export Configs" +#~ msgstr "Eksportuj konfiguracje" + +#~ msgid "Actions For Unsaved Changes" +#~ msgstr "Działania dotyczące niezapisanych zmian" + +#~ msgid "Preset Value" +#~ msgstr "Wartość domyślna" + +#~ msgid "Modified Value" +#~ msgstr "Zmieniona wartość" + +#~ msgid "Transfer Modified Value" +#~ msgstr "Przenieś zmienioną wartość" + +#~ msgid "Use Preset Value" +#~ msgstr "Użyj wartości domyślnej" + +#~ msgid "Save Modified Value" +#~ msgstr "Zapisz zmienione wartości" + +#~ msgid "" +#~ "\n" +#~ "Would you like to save these changed settings(modified value)?" +#~ msgstr "" +#~ "\n" +#~ "Czy chciałbyś zapisać te zmienione ustawienia (zmodyfikowaną wartość)?" + +#~ msgid "" +#~ "\n" +#~ "Would you like to keep these changed settings(modified value) after " +#~ "switching preset?" +#~ msgstr "" +#~ "\n" +#~ "\n" +#~ "Czy chciałbyś zachować te zmienione ustawienia (zmodyfikowaną wartość) po " +#~ "przełączeniu profilu?" + +#~ msgid "" +#~ "You have previously modified your settings and are about to overwrite " +#~ "them with new ones." +#~ msgstr "" +#~ "Wcześniej zmodyfikowałeś swoje ustawienia i masz zamiar nadpisać je " +#~ "nowymi." + +#~ msgid "" +#~ "\n" +#~ "Do you want to keep your current modified settings, or use preset " +#~ "settings?" +#~ msgstr "" +#~ "\n" +#~ "Czy chcesz zachować obecnie zmienione ustawienia, czy może chcesz użyć " +#~ "ustawień domyślnych?" + +#~ msgid "" +#~ "\n" +#~ "Do you want to save your current modified settings?" +#~ msgstr "" +#~ "\n" +#~ "Czy chcesz zapisać obecnie zmodyfikowane ustawienia?" + +#~ msgid "Unload Filament" +#~ msgstr "Wyładuj" + +#~ msgid "A problem occured during calibration. Click to view the solution." +#~ msgstr "" +#~ "Wystąpił problem podczas kalibracji. Kliknij, aby zobaczyć rozwiązanie." + +#~ msgid "MC" +#~ msgstr "MC (Płytka główna)" + +#~ msgid "MainBoard" +#~ msgstr "MainBoard (Płyta główna)" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "Stan drukarki (HMS)" + +#~ msgid "- ℃" +#~ msgstr "- ℃" + +#~ msgid "0.5" +#~ msgstr "0.5" + +#~ msgid "0.005" +#~ msgstr "0.005" + +#~ msgid "active" +#~ msgstr "aktywny" + +#~ msgid "Jump to layer" +#~ msgstr "Przejdź do warstwy" + +#~ msgid "Cabin humidity" +#~ msgstr "Wilgotność w kabinie" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "Zielony kolor oznacza, że wilgotność w AMS jest normalna, pomarańczowy " +#~ "oznacza wysoką wilgotność, czerwony oznacza zbyt wysoką wilgotność. " +#~ "(Higrometr: im niższa, tym lepiej.)" + +#~ msgid "Desiccant status" +#~ msgstr "Stan wilgotności" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "Stan wilgotności poniżej dwóch kresek oznacza, że sorbent może być " +#~ "nieaktywny. Proszę wymień sorbent. (Im więcej kresek, tym lepiej.)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Uwaga: gdy pokrywa jest otwarta lub zmieniono pakiet sorbentu, może " +#~ "potrwać kilka godzin lub noc, aby wchłonąć wilgoć. Niska temperatura " +#~ "również spowalnia proces. W tym czasie wskaźnik może nie dokładnie " +#~ "odzwierciedlać stan komory." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Uwaga: jeśli podczas drukowania włożony zostanie nowy filament, AMS nie " +#~ "będzie automatycznie odczytywać żadnych informacji do zakończenia " +#~ "drukowania." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "Pomyślnie wyeksportowano G-code do %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Inicjalizacja nie powiodła się (Brak urządzenia)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Inicjalizacja nie powiodła się (Brak urządzenia kamery)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "Drukarka jest zajęta pobieraniem. Proszę czekać, aż pobieranie zostanie " +#~ "zakończone." + +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "" +#~ "Inicjalizacja nie powiodła się (Nieobsługiwane w obecnej wersji drukarki)!" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Inicjalizacja nie powiodła się (Niedostępne w trybie tylko LAN)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "" +#~ "Inicjalizacja nie powiodła się (Brak adresu IP drukarki w sieci LAN)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Zatrzymano [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "Błąd wczytywania [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "Brak plików [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Błąd wczytywania [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Nie udało się pobrać informacji o modelach z drukarki." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Nie udało się sparsować informacji o modelach." + +#~ msgid "Connection lost. Please retry." +#~ msgstr "Utracono połączenie. Proszę spróbować ponownie." + +#~ msgid "File not exists." +#~ msgstr "Plik nie istnieje." + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Zmieniłeś niektóre ustawienia profilu \"%1%\". \n" +#~ "Czy chciałbyś zachować te zmienione ustawienia (nowa wartość) po zmianie " +#~ "profilu?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Zmieniłeś niektóre ustawienia profilu. \n" +#~ "Czy chciałbyś zachować te zmienione ustawienia (nowa wartość) po zmianie " +#~ "profilu?" + +#~ msgid " ℃" +#~ msgstr " ℃" + +#~ msgid "" +#~ "Please go to filament setting to edit your presets if you need.\n" +#~ "Please note that nozzle temperature, hot bed temperature, and maximum " +#~ "volumetric speed have a significant impact on printing quality. Please " +#~ "set them carefully." +#~ msgstr "" +#~ "Jeśli zajdzie taka potrzeba, proszę przejść do ustawień filamentu, aby " +#~ "edytować swoje zmiany.\n" +#~ "Zwróć uwagę, że temperatura dyszy, temperatura podgrzewanego stołu oraz " +#~ "maksymalna prędkość przepływu mają znaczący wpływ na jakość druku 3D. " +#~ "Proszę ustawić je z rozwagą." + +#~ msgid "Timeout when authenticating with the account server." +#~ msgstr "Przekroczono limit czasu serwera podczas uwierzytelniania." + +#~ msgid "" +#~ "Air filtration/Exhuast Fan\n" +#~ "Did you know that Snapmaker Orca can support Air filtration/Exhuast Fan?" +#~ msgstr "" +#~ "Filtracja powietrza/Wentylator wyciągowy\n" +#~ "Czy wiesz, że Snapmaker Orca może obsługiwać filtrację powietrza/wentylator " +#~ "wyciągowy?" + +#~ msgid "Studio Version:" +#~ msgstr "Wersja Studio:" + +#~ msgid "Test BambuLab" +#~ msgstr "Test BambuLab" + +#~ msgid "Test BambuLab:" +#~ msgstr "Test BambuLab:" + +#~ msgid "Test HTTP" +#~ msgstr "Test HTTP" + +#~ msgid "Test HTTP Service:" +#~ msgstr "Test usługi HTTP:" + +#~ msgid "Test storage" +#~ msgstr "Test pamięci" + +#~ msgid "Test Storage Upload:" +#~ msgstr "Test Przesyłu:" + +#~ msgid "Test storage upgrade" +#~ msgstr "Test aktualizacji pamięci masowej" + +#~ msgid "Test Storage Upgrade:" +#~ msgstr "Test aktualizacji pamięci masowej:" + +#~ msgid "Test storage download" +#~ msgstr "Test pamięci dla pobierania" + +#~ msgid "Test Storage Download:" +#~ msgstr "Test pamięci dla pobierania:" + +#~ msgid "Test plugin download" +#~ msgstr "Test pobierania pluginów" + +#~ msgid "Test Plugin Download:" +#~ msgstr "Test pobierania Pluginów:" + +#~ msgid "Test Storage Upload" +#~ msgstr "Test załadunku przechowywania" + +#~ msgid "" +#~ "The speed setting exceeds the printer's maximum speed " +#~ "(machine_max_speed_x/machine_max_speed_y).\n" +#~ "Orca will automatically cap the print speed to ensure it doesn't surpass " +#~ "the printer's capabilities.\n" +#~ "You can adjust the maximum speed setting in your printer's configuration " +#~ "to get higher speeds." +#~ msgstr "" +#~ "Ustawienie prędkości przekracza maksymalną prędkość drukarki " +#~ "(machine_max_speed_x/machine_max_speed_y).\n" +#~ "Orca automatycznie ograniczy prędkość druku, aby nie przekroczyć " +#~ "zdolności drukarki.\n" +#~ "Możesz dostosować ustawienie maksymalnej prędkości w konfiguracji swojej " +#~ "drukarki, aby uzyskać wyższe prędkości." + +#~ msgid "Allow downloads from Printables.com" +#~ msgstr "Zezwól na pobieranie modeli z Printables.com" + +#~ msgid "" +#~ "When using scarf joint, we recommend the following settings:\n" +#~ "print outer wall first, disable wipe before external loop, reduce outer " +#~ "wall speed to no greater than 50mm/s, and don't use random or nearest " +#~ "seam position" +#~ msgstr "" +#~ "Przy korzystaniu ze szwu szalikowego zalecamy następujące ustawienia: \n" +#~ "drukuj zewnętrzną ściane jako pierwszą, wyłączenie czyszczenia przed " +#~ "zewnętrzną pętlą, ograniczenie prędkości zewnętrznej ściany do " +#~ "maksymalnie 50 mm/s oraz unikanie stosowania pozycji szwu \"losowo\" lub " +#~ "\"najbliższy\"." + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Dodaj pełne wypełnienie w pobliżu nachylonych powierzchni, aby " +#~ "zagwarantować pionową grubość powłoki (górne+ dolne pełne warstwy)" + +#~ msgid "Further reduce solid infill on walls (beta)" +#~ msgstr "Dodatkowe zmniejszenie gęstości wypełnienia na obwodzie (beta)" + +#~ msgid "" +#~ "Further reduces any solid infill applied to walls. As there will be very " +#~ "limited infill supporting solid surfaces, make sure that you are using " +#~ "adequate number of walls to support the part on sloping surfaces.\n" +#~ "\n" +#~ "For heavily sloped surfaces this option is not suitable as it will " +#~ "generate too thin of a top layer and should be disabled." +#~ msgstr "" +#~ "Dodatkowo redukuje ilość stałego wypełnienia aplikowanego na ściany. \n" +#~ "\n" +#~ "Ponieważ ilość wypełnienia podpory powierzchni stałych będzie bardzo " +#~ "ograniczona, upewnij się, że używasz odpowiedniej liczby ścian do " +#~ "podparcia części na nachylonych powierzchniach." + +#~ msgid "Scarf joint seam" +#~ msgstr "Szew szalikowy (beta)" + +#~ msgid "" +#~ "Start height of the scarf.\n" +#~ "This amount can be specified in millimeters or as a percentage of the " +#~ "current layer height. The default value for this parameter is 0.05mm." +#~ msgstr "" +#~ "Początkowa wysokość szwu szalikowego.\n" +#~ "\n" +#~ "Ta wartość może być określona w milimetrach lub jako procent bieżącej " +#~ "wysokości warstwy. Domyślna wartość tego parametru to 0,05 mm." + +#~ msgid "" +#~ "Speed of exhuast fan during printing.This speed will overwrite the speed " +#~ "in filament custom gcode" +#~ msgstr "" +#~ "Prędkość wentylatora wyciągowego podczas druku. Ta prędkość zastąpi " +#~ "prędkość w niestandardowym gcode filamentu" + +#~ msgid "Speed of exhuast fan after printing completes" +#~ msgstr "Prędkość wentylatora wyciągowego po zakończeniu druku" + +#~ msgid "Services" +#~ msgstr "Usługi" + +#~ msgid "Hide %s" +#~ msgstr "Ukryj %s" + +#~ msgid "Hide Others" +#~ msgstr "Ukryj pozostałe" + +#~ msgid "Show All" +#~ msgstr "Pokaż wszystko" + +#~ msgid "Minimize" +#~ msgstr "Zminimalizuj" + +#~ msgid "Tile Window to Left of Screen" +#~ msgstr "Ułóż okno na lewo od ekranu" + +#~ msgid "Tile Window to Right of Screen" +#~ msgstr "Ułóż okno na prawo od ekranu" + +#~ msgid "Replace Tiled Window" +#~ msgstr "Zastąp zadokowane okno" + +#~ msgid "Remove Window from Set" +#~ msgstr "Usuń Okno z zestawu" + +#~ msgid "Bring All to Front" +#~ msgstr "Umieść wszystko na wierzchu" + +#~ msgid "Model Pictures" +#~ msgstr "Obrazy" + +#~ msgid "Auxiliaryies" +#~ msgstr "Akcesoria" + +#~ msgid "nozzle" +#~ msgstr "Dysza" + +#~ msgid "Alternate nozzles:" +#~ msgstr "Inne rozmiary dysz:" + +#~ msgid "All standard" +#~ msgstr "Wszystkie podstawowe" + +#, c-format, boost-format +#~ msgid "Welcome to the %s Configuration Assistant" +#~ msgstr "Witamy w Asystencie Konfiguracji %s" + +#, c-format, boost-format +#~ msgid "Welcome to the %s Configuration Wizard" +#~ msgstr "Witamy w Asystencie Konfiguracji %s" + +#~ msgid "Welcome" +#~ msgstr "Witam" + +#, c-format, boost-format +#~ msgid "" +#~ "Hello, welcome to %s! This %s helps you with the initial configuration; " +#~ "just a few settings and you will be ready to print." +#~ msgstr "" +#~ "Witaj w %s! Ten %s pomoże Ci z konfiguracją początkową - wszystko będzie " +#~ "gotowe do drukowania po zaledwie kilku kliknięciach" + +#~ msgid "Remove user profiles (a snapshot will be taken beforehand)" +#~ msgstr "Usuń profile użytkownika (zostanie wykonany zrzut)" + +#~ msgid "" +#~ "Perform desktop integration (Sets this binary to be searchable by the " +#~ "system)." +#~ msgstr "" +#~ "Wykonaj integrację z pulpitem (ustawia ten plik binarny tak, aby był " +#~ "możliwy do wyszukania przez system)." + +#, c-format, boost-format +#~ msgid "%s Family" +#~ msgstr "Rodzina %s" + +#~ msgid "Printer:" +#~ msgstr "Drukarka:" + +#~ msgid "Vendor:" +#~ msgstr "Dostawca:" + +#~ msgid "Profile:" +#~ msgstr "Profil:" + +#~ msgid "(All)" +#~ msgstr "(Wszystko)" + +#, boost-format +#~ msgid "" +#~ "%1% marked with * are not compatible with some installed " +#~ "printers." +#~ msgstr "" +#~ "%1% oznaczone symbolem *niekompatybilne z niektórymi " +#~ "zainstalowanymi drukarkami." + +#~ msgid "SLA materials" +#~ msgstr "Materiał rozpuszczalny" + +#, boost-format +#~ msgid "All installed printers are compatible with the selected %1%." +#~ msgstr "Wszystkie zainstalowane drukarki są kompatybilne z wybranym %1%." + +#~ msgid "filament" +#~ msgstr "filament" + +#~ msgid "SLA material" +#~ msgstr "Materiał rozpuszczalny" + +#~ msgid "" +#~ "Only the following installed printers are compatible with the selected " +#~ "filaments" +#~ msgstr "" +#~ "Tylko następujące zainstalowane drukarki są kompatybilne z wybranymi " +#~ "filamentami" + +#~ msgid "" +#~ "Only the following installed printers are compatible with the selected " +#~ "SLA materials" +#~ msgstr "" +#~ "Tylko następujące zainstalowane drukarki są kompatybilne z wybranymi " +#~ "materiałami SLA" + +#~ msgid "Custom Printer Setup" +#~ msgstr "Ustawienie Własnej Drukarki" + +#~ msgid "Custom Printer" +#~ msgstr "Niestandardowa drukarka" + +#~ msgid "Define a custom printer profile" +#~ msgstr "Zdefiniuj własny profil drukarki" + +#~ msgid "Custom profile name:" +#~ msgstr "Nazwa własnego profilu:" + +#~ msgid "Firmware Type" +#~ msgstr "Typ firmware" + +#~ msgid "Firmware" +#~ msgstr "Firmware" + +#~ msgid "Choose the type of firmware used by your printer." +#~ msgstr "Wybierz rodzaj firmware używanego przez Twoją drukarkę." + +#~ msgid "Bed Shape and Size" +#~ msgstr "Kształt i rozmiar stołu roboczego" + +#~ msgid "Set the shape of your printer's bed." +#~ msgstr "Ustaw kształt stołu roboczego drukarki." + +#~ msgid "Invalid numeric input." +#~ msgstr "Nieprawidłowa wartość numeryczna." + +#~ msgid "Filament and Nozzle Diameters" +#~ msgstr "Średnice filamentu i dyszy" + +#~ msgid "Print Diameters" +#~ msgstr "Średnice" + +#~ msgid "Enter the diameter of your printer's hot end nozzle." +#~ msgstr "Wprowadź średnicę dyszy hotendu." + +#~ msgid "Nozzle Diameter:" +#~ msgstr "Średnica Dyszy:" + +#~ msgid "Enter the diameter of your filament." +#~ msgstr "Wprowadź średnicę filamentu." + +#~ msgid "" +#~ "Good precision is required, so use a caliper and do multiple measurements " +#~ "along the filament, then compute the average." +#~ msgstr "" +#~ "Wymagana jest spora precyzja, użyj więc suwmiarki, przeprowadź kilka " +#~ "pomiarów w sporych odstępach od siebie i oblicz średnią." + +#~ msgid "Filament Diameter:" +#~ msgstr "Średnica filamentu:" + +#~ msgid "Nozzle and Bed Temperatures" +#~ msgstr "Temperatury dyszy oraz stołu" + +#~ msgid "Enter the nozzle_temperature needed for extruding your filament." +#~ msgstr "Wprowadź temperaturę dyszy potrzebną do ekstruzji filamentu." + +#~ msgid "A rule of thumb is 160 to 230 °C for PLA, and 215 to 250 °C for ABS." +#~ msgstr "" +#~ "Generalną zasadą jest 160 do 230 °C dla PLA i 215 do 250 °C dla ABS." + +#~ msgid "Extrusion Temperature:" +#~ msgstr "Temperatura ekstrudera:" + +#~ msgid "" +#~ "Enter the bed temperature needed for getting your filament to stick to " +#~ "your heated bed." +#~ msgstr "" +#~ "Wprowadź temperaturę potrzebną do dobrego przylegania filamentu do " +#~ "powierzchni podgrzewanego stołu." + +#~ msgid "" +#~ "A rule of thumb is 60 °C for PLA and 110 °C for ABS. Leave zero if you " +#~ "have no heated bed." +#~ msgstr "" +#~ "Generalną zasadą jest 60 °C dla PLA i 110 °C dla ABS. Ustaw zero, jeśli " +#~ "nie masz podgrzewanego stołu." + +#~ msgid "Bed Temperature:" +#~ msgstr "Temperatura stołu" + +#~ msgid "SLA Materials" +#~ msgstr "Materiały SLA" + +#~ msgid "FFF Technology Printers" +#~ msgstr "Technologia druku FFF" + +#~ msgid "SLA Technology Printers" +#~ msgstr "Technologia druku SLA" + +#, boost-format +#~ msgid "" +#~ "Following printer profiles has no default filament: %1%Please select one " +#~ "manually." +#~ msgstr "" +#~ "Następujące profile druku nie mają domyślnego filamentu: %1% Wybierz " +#~ "jeden ręcznie." + +#, boost-format +#~ msgid "" +#~ "Following printer profiles has no default material: %1%Please select one " +#~ "manually." +#~ msgstr "" +#~ "Następujące profile druku nie mają domyślnego materiału: %1% Wybierz " +#~ "jeden ręcznie." + +#~ msgid "The following FFF printer models have no filament selected:" +#~ msgstr "Następujące modele drukarek FFF nie mają przypisanych filamentów:" + +#~ msgid "" +#~ "Do you want to select default filaments for these FFF printer models?" +#~ msgstr "Czy chcesz ustawić domyślne filamenty dla tych modeli drukarek FFF?" + +#~ msgid "Configuration is edited in ConfigWizard" +#~ msgstr "Konfiguracja jest edytowana w Asystencie konfiguracji" + +#~ msgid "All user presets will be deleted." +#~ msgstr "Wszystkie profile ustawień użytkownika zostaną usunięte." + +#~ msgid "A new vendor was installed and one of its printers will be activated" +#~ msgid_plural "" +#~ "New vendors were installed and one of theirs printers will be activated" +#~ msgstr[0] "" +#~ "Nowy producent drukarki został dodany i jedna z jego drukarek zostanie " +#~ "aktywowana" +#~ msgstr[1] "" +#~ "Nowych producentów drukarek zostało dodanych i jedna z ich drukarek " +#~ "zostanie aktywowana." +#~ msgstr[2] "" +#~ "Nowych producentów drukarek zostało dodanych i jedna z ich drukarek " +#~ "zostanie aktywowana." + +#~ msgid "A new Printer was installed and it will be activated." +#~ msgstr "Zainstalowano nową drukarkę i zostanie ona aktywowana." + +#~ msgid "Some Printers were uninstalled." +#~ msgstr "Niektóre drukarki zostały odinstalowane." + +#~ msgid "A new filament was installed and it will be activated." +#~ msgstr "Zainstalowano nowy filament i zostanie on aktywowany." + +#~ msgid "A new SLA material was installed and it will be activated." +#~ msgstr "Zainstalowano nowy materiał SLA i zostanie on aktywowany." + +#~ msgid "Some filaments were uninstalled." +#~ msgstr "Niektóre filamenty zostały odinstalowane." + +#~ msgid "Custom printer was installed and it will be activated." +#~ msgstr "" +#~ "Niestandardowa drukarka została zainstalowana i zostanie aktywowana." + +#~ msgid "" +#~ msgstr "Dalej>" + +#~ msgid "Filament Profiles Selection" +#~ msgstr "Wybór profili filamentu" + +#~ msgid "Configuration Assistant" +#~ msgstr "Asystent Konfiguracji" + +#~ msgid "Configuration &Assistant" +#~ msgstr "&Asystent Konfiguracji" + +#~ msgid "Configuration Wizard" +#~ msgstr "Asystent Konfiguracji" + +#~ msgid "Configuration &Wizard" +#~ msgstr "Asystent Ko&nfiguracji" + +#~ msgid "" +#~ "Performing desktop integration failed - boost::filesystem::canonical did " +#~ "not return appimage path." +#~ msgstr "" +#~ "Integracja z pulpitem nie powiodła się - boost::filesystem::canonical nie " +#~ "zwrócił ścieżki do appimage." + +#~ msgid "Performing desktop integration failed - Could not find executable." +#~ msgstr "" +#~ "Integracji z pulpitem nie powiodła się - nie znaleziono pliku " +#~ "wykonywalnego." + +#~ msgid "" +#~ "Performing desktop integration failed because the application directory " +#~ "was not found." +#~ msgstr "" +#~ "Integracja z pulpitem nie powiodła się, ponieważ nie znaleziono katalogu " +#~ "aplikacji." + +#~ msgid "" +#~ "Performing desktop integration failed - could not create Gcodeviewer " +#~ "desktop file. Snapmaker Orca desktop file was probably created successfully." +#~ msgstr "" +#~ "Integracji z pulpitem nie powiodła się - nie można utworzyć pliku pulpitu " +#~ "Gcodeviewer. Plik pulpitu Snapmaker Orca został prawdopodobnie utworzony " +#~ "pomyślnie." + +#~ msgid "Desktop Integration" +#~ msgstr "Integracja z pulpitem" + +#~ msgid "" +#~ "Desktop Integration sets this binary to be searchable by the system.\n" +#~ "\n" +#~ "Press \"Perform\" to proceed." +#~ msgstr "" +#~ "Integracja z pulpitem ustawia ten plik binarny jako możliwy do wyszukania " +#~ "przez system.\n" +#~ "\n" +#~ "Naciśnij \"Wykonaj\", aby kontynuować." + +#~ msgid "3D Models" +#~ msgstr "Modele 3D" + +#~ msgid "Click to return (Command + Left Arrow)" +#~ msgstr "Kliknij, aby wrócić (Command + Strzałka w lewo)" + +#~ msgid "Click to continue (Command + Right Arrow)" +#~ msgstr "Kliknij, aby kontynuować (Command + Strzałka w prawo)" + +#~ msgid "Click to return (Alt + Left Arrow)" +#~ msgstr "Kliknij, aby wrócić (Alt + Strzałka w lewo)" + +#~ msgid "Click to continue (Alt + Right Arrow)" +#~ msgstr "Kliknij, aby kontynuować (Alt + Strzałka w prawo)" + +#~ msgid "NO RAMMING AT ALL" +#~ msgstr "BRAK WYCISKANIA" + +#~ msgid "Volumetric speed" +#~ msgstr "Prędkości Przepływu" + +#~ msgid "Move over surface" +#~ msgstr "Ruch po powierzchni" + +#~ msgid "System Information" +#~ msgstr "Informacje o systemie" + +#~ msgid "Blacklisted libraries loaded into Snapmaker Orca process:" +#~ msgstr "Biblioteki z czarnej listy załadowane do procesu Snapmaker Orca:" + +#~ msgid "SIMD is supported:" +#~ msgstr "SIMD (Single Instruction, Multiple Data) jest obsługiwane:" + +#~ msgid "Copy to Clipboard" +#~ msgstr "Kopiuj do schowka" + +#~ msgid "View Source" +#~ msgstr "Zobacz źródło" + +#~ msgid "View Text" +#~ msgstr "Podgląd tekstu" + +#~ msgid "Handle Navigation" +#~ msgstr "Zarządzaj nawigacją" + +#~ msgid "Handle New Windows" +#~ msgstr "Obsługuje nowe okna" + +#~ msgid "Edit Mode" +#~ msgstr "Tryb edycji" + +#~ msgid "Run Script" +#~ msgstr "Wykonaj skrypt" + +#~ msgid "Add user script" +#~ msgstr "Dodaj skrypt użytkownika" + +#~ msgid "Set custom user agent" +#~ msgstr "Ustaw niestandardowy użytkownika" + +#~ msgid "Clear Selection" +#~ msgstr "Wyczyść Zaznaczenie" + +#~ msgid "Delete Selection" +#~ msgstr "Usuń zaznaczone" + +#~ msgid "Custom Scheme Example" +#~ msgstr "Niestandardowy Szablon" + +#~ msgid "Memory File System Example" +#~ msgstr "Przykładowy systemu plików w pamięci (Memory File System)" + +#~ msgid "Enable Context Menu" +#~ msgstr "Włącz menu kontekstowe" + +#~ msgid "Enable Dev Tools" +#~ msgstr "Włącz narzędzia deweloperskie" + +#~ msgid "An error occurred loading " +#~ msgstr "Wystąpił błąd podczas ładowania" + +#~ msgid "The maximum temperature cannot exceed" +#~ msgstr "Maksymalna temperatura nie może przekroczyć" + +#~ msgid "The minmum temperature should not be less than " +#~ msgstr "Minimalna temperatura nie powinna być mniejsza niż " + +#~ msgid "Add Emboss text object" +#~ msgstr "Dodaj wytłoczony obiekt tekstowy" + +#~ msgid "Emboss attribute change" +#~ msgstr "Zmiana atrybutów wytłoczenia" + +#~ msgid "Add Emboss text Volume" +#~ msgstr "Dodaj wytłoczoną objętość tekstową" + +#~ msgid "Font doesn't have any shape for given text." +#~ msgstr "Czcionka nie ma żadnego kształtu dla danego tekstu." + +#~ msgid "An unexpected error occured" +#~ msgstr "Wystąpił nieoczekiwany błąd" + +#~ msgid "Best surface quality" +#~ msgstr "Najlepsza jakość powierzchni" + +#~ msgid "Optimize object rotation for best surface quality." +#~ msgstr "Optymalizuje orientację modelu dla najlepszej jakości powierzchni." + +#~ msgid "Reduced overhang slopes" +#~ msgstr "Redukuj nawisy" + +#~ msgid "" +#~ "Optimize object rotation to have minimum amount of overhangs needing " +#~ "support structures.\n" +#~ "Note that this method will try to find the best surface of the object for " +#~ "touching the print bed if no elevation is set." +#~ msgstr "" +#~ "Optymalizuj orientację modelu, aby ilość zwisów wymagających podparcia " +#~ "była minimalna.\n" +#~ "Weź pod uwagę, że spowoduje to próbę odnalezienia najlepszej powierzchni " +#~ "styku z platformą, jeśli nie ustawiono podniesienia modelu." + +#~ msgid "Lowest Z height" +#~ msgstr "Najniższa wysokość Z" + +#~ msgid "Rotate the model to have the lowest z height for faster print time." +#~ msgstr "" +#~ "Optymalizuje orientację modelu, aby miał jak najmniejszy rozmiar w osi Z " +#~ "dla skrócenia czasu drukowania." + +#~ msgid "Choose SLA archive:" +#~ msgstr "Wybierz archiwum SLA:" + +#~ msgid "Import file" +#~ msgstr "Importuj plik" + +#~ msgid "Import model and profile" +#~ msgstr "Importuj model i profil" + +#~ msgid "Import profile only" +#~ msgstr "Importuj tylko profil" + +#~ msgid "Import model only" +#~ msgstr "Importuj tylko model" + +#~ msgid "Accurate" +#~ msgstr "Dokładne" + +#~ msgid "Balanced" +#~ msgstr "Zrównoważone" + +#~ msgid "Movement:" +#~ msgstr "Ruch:" + +#~ msgid "Movement" +#~ msgstr "Ruch" + +#~ msgid "Auto Segment" +#~ msgstr "Automatyczny segment" + +#~ msgid "Depth ratio" +#~ msgstr "Stosunek głębokości" + +#~ msgid "Prizm" +#~ msgstr "Pryzmat" + +#~ msgid "connector is out of cut contour" +#~ msgstr "łącznik jest poza konturem cięcia" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "łączniki są poza konturem cięcia" + +#~ msgid "connector is out of object" +#~ msgstr "łącznik jest poza obiektem" + +#~ msgid "connectors is out of object" +#~ msgstr "łączniki są poza obiektem" + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Nieprawidłowy stan. \n" +#~ "Żadna część nie została wybrana do zachowania po cięciu" + +#~ msgid "Entering Cut gizmo" +#~ msgstr "Otwieranie uchwytu przecinania" + +#~ msgid "Leaving Cut gizmo" +#~ msgstr "Zamykanie uchwytu wytłaczania" + +#~ msgid "Cut gizmo editing" +#~ msgstr "Edytowanie uchwytów przecinania" + +#~ msgid "Hollow this object" +#~ msgstr "Wydrąż ten model" + +#~ msgid "Preview hollowed and drilled model" +#~ msgstr "Podgląd drążenia/wiercenia" + +#~ msgid "Offset" +#~ msgstr "Offset" + +#~ msgid "Closing distance" +#~ msgstr "Dystans domykania" + +#~ msgid "Hole diameter" +#~ msgstr "Średnica otworu" + +#~ msgid "Hole depth" +#~ msgstr "Głębokość otworu" + +#~ msgid "Remove selected holes" +#~ msgstr "Usuń zaznaczone otwory" + +#~ msgid "Remove all holes" +#~ msgstr "Usuń wszystkie otwory" + +#~ msgid "Clipping of view" +#~ msgstr "Widok przecinania" + +#~ msgid "Show supports" +#~ msgstr "Pokaż podpory" + +#~ msgid "Hollow and drill" +#~ msgstr "Drążenie i wiercenie" + +#~ msgid "Entering Measure gizmo" +#~ msgstr "Otwieranie uchwytu pomiaru" + +#~ msgid "Leaving Measure gizmo" +#~ msgstr "Zamykanie uchwytu wytłaczania" + +#~ msgid "Measure gizmo editing" +#~ msgstr "Edycja uchwytów pomiaru" + +#~ msgid "Model simplification has been canceled" +#~ msgstr "Uproszczenie modelu zostało anulowane" + +#~ msgid "Head diameter" +#~ msgstr "Średnica łącznika" + +#~ msgid "Lock supports under new islands" +#~ msgstr "Zablokuj podpory pod nowymi wyspami" + +#~ msgid "Remove selected points" +#~ msgstr "Usuń zaznaczone punkty" + +#~ msgid "Remove all points" +#~ msgstr "Usuń wszystkie punkty" + +#~ msgid "Apply changes" +#~ msgstr "Zastosuj zmiany" + +#~ msgid "Discard changes" +#~ msgstr "Odrzuć zmiany" + +#~ msgid "Minimal points distance" +#~ msgstr "Minimalny dystans pomiędzy punktami" + +#~ msgid "Support points density" +#~ msgstr "Gęstość punktów podpór" + +#~ msgid "Auto-generate points" +#~ msgstr "Generuj punkty automatycznie" + +#~ msgid "Manual editing" +#~ msgstr "Edycja ręczna" + +#~ msgid "SLA Support Points" +#~ msgstr "Punkty podpór SLA" + +#~ msgid "Do you want to save your manually edited support points?" +#~ msgstr "Czy chcesz zapisać ręcznie edytowane punkty podpór?" + +#~ msgid "Save support points?" +#~ msgstr "Zachować punkty podpór?" + +#~ msgid "Autogeneration will erase all manually edited points." +#~ msgstr "Generowanie automatyczne usunie wszystkie ręcznie ustawione punkty." + +#~ msgid "Are you sure you want to do it?" +#~ msgstr "Czy na pewno chcesz to zrobić?" + +#~ msgid "SLA gizmo keyboard shortcuts" +#~ msgstr "Pokaż listę skrótów klawiszowych \"uchwytów\" SLA" + +#~ msgid "Note: some shortcuts work in (non)editing mode only." +#~ msgstr "Uwaga: niektóre skróty działają tylko poza trybem edycji." + +#~ msgid "Add point" +#~ msgstr "Dodaj punkt" + +#~ msgid "Remove point" +#~ msgstr "Usuń punkt" + +#~ msgid "Move point" +#~ msgstr "Przesuń punkt" + +#~ msgid "Add point to selection" +#~ msgstr "Dodaj punkt do zaznaczenia" + +#~ msgid "Remove point from selection" +#~ msgstr "Usuń punkt z zaznaczenia" + +#~ msgid "Select by rectangle" +#~ msgstr "Zaznaczenie prostokątem" + +#~ msgid "Deselect by rectangle" +#~ msgstr "Odznaczenie prostokątem" + +#~ msgid "Select all points" +#~ msgstr "Zaznacz wszystkie punkty" + +#~ msgid "Move clipping plane" +#~ msgstr "Przesunięcie płaszczyzny przecinania" + +#~ msgid "Reset clipping plane" +#~ msgstr "Reset płaszczyzny przecinania" + +#~ msgid "Switch to editing mode" +#~ msgstr "Przełącz w tryb edycji" + +#~ msgid "Taking a configuration snapshot failed." +#~ msgstr "Niepowodzenie wykonywania zrzutu konfiguracji." + +#~ msgid "" +#~ "Snapmaker Orca has encountered an error while taking a configuration snapshot." +#~ msgstr "Snapmaker Orca napotkał błąd przy wykonywaniu zrzutu konfiguracji." + +#~ msgid "Snapmaker Orca error" +#~ msgstr "błąd Snapmaker Orca" + +#~ msgid "Continue" +#~ msgstr "Kontynuacja" + +#~ msgid "Abort" +#~ msgstr "Przerwij" + +#~ msgid "" +#~ "Cannot proceed without support points! Add support points or disable " +#~ "support generation." +#~ msgstr "" +#~ "Nie można kontynuować bez punktów podpór! Dodaj punkty podpór lub wyłącz " +#~ "ich generowanie." + +#~ msgid "" +#~ "Elevation is too low for object. Use the \"Pad around object\" feature to " +#~ "print the object without elevation." +#~ msgstr "" +#~ "Podniesienie zbyt małe dla modelu. Użyj funkcji \"Podkładka wokół modelu" +#~ "\", aby wydrukować model bez podniesienia." + +#~ msgid "" +#~ "The endings of the support pillars will be deployed on the gap between " +#~ "the object and the pad. 'Support base safety distance' has to be greater " +#~ "than the 'Pad object gap' parameter to avoid this." +#~ msgstr "" +#~ "Końcówki słupków podpór będą rozmieszczone w przestrzeni pomiędzy " +#~ "modelem, a podkładką. Aby tego uniknąć, parametr \"Bezpieczna odległość " +#~ "stopy podpory\" powinien być większy niż \"Odstęp modelu od podkładki \"." + +#~ msgid "Exposition time is out of printer profile bounds." +#~ msgstr "Czas naświetlania jest poza zakresem profilu drukarki." + +#~ msgid "Initial exposition time is out of printer profile bounds." +#~ msgstr "Czas początkowej ekspozycji wykracza poza zakres profilu drukarki." + +#~ msgid "Slicing done" +#~ msgstr "Cięcie zakończone" + +#~ msgid "Hollowing model" +#~ msgstr "Drążenie modelu" + +#~ msgid "Drilling holes into model." +#~ msgstr "Wiercenie otworów odpływowych w modelu." + +#~ msgid "Slicing model" +#~ msgstr "Cięcie modelu" + +#~ msgid "Generating support points" +#~ msgstr "Generowanie punktów podpór" + +#~ msgid "Generating support tree" +#~ msgstr "Generowanie drzewa podpór\"" + +#~ msgid "Generating pad" +#~ msgstr "Generowanie podkładki" + +#~ msgid "Slicing supports" +#~ msgstr "Cięcie podpór" + +#~ msgid "Merging slices and calculating statistics" +#~ msgstr "Łączenie cięć i obliczanie statystyk" + +#~ msgid "Rasterizing layers" +#~ msgstr "Rasteryzowanie warstw" + +#~ msgid "" +#~ "Slicing had to be stopped due to an internal error: Inconsistent slice " +#~ "index." +#~ msgstr "" +#~ "Proces cięcia musiał zostać zatrzymany z powodu błędu wewnętrznego: " +#~ "Niezgodny indeks krojenia." + +#~ msgid "Visualizing supports" +#~ msgstr "Generowanie podpór" + +#~ msgid "" +#~ "No pad can be generated for this model with the current configuration" +#~ msgstr "" +#~ "Nie ma możliwości wygenerowania podkładki dla tego modelu przy obecnych " +#~ "ustawieniach" + +#~ msgid "" +#~ "There are unprintable objects. Try to adjust support settings to make the " +#~ "objects printable." +#~ msgstr "" +#~ "Na stole są modele niemożliwe do wydrukowania. Spróbuj zmienić ustawienia " +#~ "podpór, aby możliwe było ich drukowanie." + +#~ msgid "Hollowing" +#~ msgstr "Drążenie" + +#~ msgid "Pad brim size is too small for the current configuration." +#~ msgstr "Rozmiar brimu podkładki jest zbyt mały dla obecnej konfiguracji." + +#, boost-format +#~ msgid "" +#~ "The selected 3mf file has been saved with a newer version of %1% and is " +#~ "not compatible." +#~ msgstr "" +#~ "Wybrany plik 3mf został zapisany przy pomocy nowszej wersji %1% i nie " +#~ "jest kompatybilny" + +#~ msgid "" +#~ "The selected 3MF contains FDM supports painted object using a newer " +#~ "version of PrusaSlicer and is not compatible." +#~ msgstr "" +#~ "Wybrany plik 3MF zawiera podpory FDM namalowane przy pomocy nowszej " +#~ "wersji Snapmaker Orca i nie jest kompatybilny." + +#~ msgid "" +#~ "The selected 3MF contains seam painted object using a newer version of " +#~ "PrusaSlicer and is not compatible." +#~ msgstr "" +#~ "Wybrany plik 3MF zawiera szew namalowany przy pomocy nowszej wersji " +#~ "Snapmaker Orca i nie jest kompatybilny." + +#, boost-format +#~ msgid "" +#~ "Post-processing script %1% failed.\n" +#~ "\n" +#~ "The post-processing script is expected to change the G-code file %2% in " +#~ "place, but the G-code file was deleted and likely saved under a new " +#~ "name.\n" +#~ "Please adjust the post-processing script to change the G-code in place " +#~ "and consult the manual on how to optionally rename the post-processed G-" +#~ "code file.\n" +#~ msgstr "" +#~ "Wykonywanie skryptu do postprocessingu %1% nie powiodło się.\n" +#~ "\n" +#~ "Skrypt do postprocessingu miał za zadanie zmienić G-code w %2% miejscach, " +#~ "jednak G-code został usunięty i prawdopodobnie zapisany pod nową nazwą.\n" +#~ "Ustaw skrypt, aby zmieniał G-code na miejscu i zajrzyj do instrukcji, aby " +#~ "dowiedzieć się, jak opcjonalnie zmienić nazwę przetwarzanego G-code.\n" + +#~ msgid "" +#~ "The selected 3MF contains multi-material painted object using a newer " +#~ "version of PrusaSlicer and is not compatible." +#~ msgstr "" +#~ "Wybrany plik 3MF zawiera model pomalowany do Multi Material przy pomocy " +#~ "nowszej wersji Snapmaker Orca i nie jest kompatybilny." + +#~ msgid " " +#~ msgstr " " + +#~ msgid "" +#~ "Number of mm the overhang need to be for the reversal to be considered " +#~ "useful. Can be a (%) of the perimeter width.\n" +#~ "Value 0 enables reversal on every odd layers regardless." +#~ msgstr "" +#~ "Ilość mm, jaką musi mieć nawis, aby odwrócenie było uznane za użyteczne. " +#~ "Może być to % szerokości obrysu.\n" +#~ "Wartość 0 umożliwia odwrócenie na każdej nieparzystej warstwie, " +#~ "niezależnie od wszystkiego." + +#, c-format, boost-format +#~ msgid "" +#~ "Enter the shrinkage percentage that the filament will get after cooling " +#~ "(94%% if you measure 94mm instead of 100mm). The part will be scaled in " +#~ "xy to compensate. Only the filament used for the perimeter is taken into " +#~ "account.\n" +#~ "Be sure to allow enough space between objects, as this compensation is " +#~ "done after the checks." +#~ msgstr "" +#~ "Podaj procent skurczu, którego filament doświadczy po schłodzeniu (94%% " +#~ "jeśli zmierzyłeś 94mm zamiast 100mm). Część będzie skalowana w " +#~ "płaszczyźnie xy, aby to zrekompensować. Wzięto pod uwagę tylko filament " +#~ "używany do obwodu. Upewnij się, że pozostawiłeś wystarczająco dużo " +#~ "miejsca między obiektami, ponieważ ta kompensacja jest wykonywana po " +#~ "przeprowadzeniu kontroli." + +#, c-format, boost-format +#~ msgid "" +#~ "Density of internal sparse infill, 100%% turns all sparse infill into " +#~ "solid infill and internal solid infill pattern will be used" +#~ msgstr "" +#~ "Gęstość wewnętrznego rzadkiego wypełnienia, 100%% oznacza pełne w całym " +#~ "zakresie" + +#~ msgid "" +#~ "Maximum defection of a point to the estimated radius of the circle.\n" +#~ "As cylinders are often exported as triangles of varying size, points may " +#~ "not be on the circle circumference. This setting allows you some leway to " +#~ "broaden the detection.\n" +#~ "In (mm or in %) of the radius." +#~ msgstr "" +#~ "Maksymalne odchylenie punktu od szacowanego promienia koła.\n" +#~ "Ponieważ cylindry często eksportowane są jako trójkąty o różnej " +#~ "wielkości, punkty mogą nie znajdować się na obwodzie koła. To ustawienie " +#~ "pozwala na pewną swobodę w poszerzaniu wykrywania.\n" +#~ "W mm lub w % promienia." + +#~ msgid "Text-Rotate" +#~ msgstr "Obróć tekst" + +#~ msgid "SVG-Rotate" +#~ msgstr "Obrót SVG" + +#~ msgid "Resize" +#~ msgstr "Zmień rozmiar" + +#~ msgid "Configuration package updated to " +#~ msgstr "Pakiet konfiguracyjny zaktualizowany do " + +#~ msgid "Enable Flow Compensation" +#~ msgstr "Włącz kompensację przepływu dla wypełnienia (beta)" + +#~ msgid "" +#~ "The minimum printing speed for the filament when slow down for better " +#~ "layer cooling is enabled, when printing overhangs and when feature speeds " +#~ "are not specified explicitly." +#~ msgstr "" +#~ "Minimalna prędkość druku dla filamentu, gdy włączone jest zwalnienie dla " +#~ "lepszego chłodzenia warstw, przy drukowaniu elementów wystających i gdy " +#~ "prędkości elementów nie są określone wyraźnie." + +#~ msgid "Hide Snapmaker Orca" +#~ msgstr "Ukryj Snapmaker Orca" + +#~ msgid "" +#~ "Enter the shrinkage percentage that the filament will get after cooling " +#~ "(94% << if you measure 94mm instead of 100mm). The part will be scaled in " +#~ "xy to compensate. Only the filament used for the perimeter is taken into " +#~ "account.\n" +#~ "Be sure to allow enough space between objects, as this compensation is " +#~ "done after the checks." +#~ msgstr "" +#~ "Podaj procent skurczu, którego filament doświadczy po schłodzeniu (94% << " +#~ "jeśli zmierzyłeś 94mm zamiast 100mm). Część będzie skalowana w " +#~ "płaszczyźnie xy, aby to zrekompensować. Wzięto pod uwagę tylko filament " +#~ "używany do obwodu. Upewnij się, że pozostawiłeś wystarczająco dużo " +#~ "miejsca między obiektami, ponieważ ta kompensacja jest wykonywana po " +#~ "przeprowadzeniu kontroli." + +#~ msgid "" +#~ "Density of internal sparse infill, 100% << turns all sparse infill into " +#~ "solid infill and internal solid infill pattern will be used" +#~ msgstr "" +#~ "Gęstość wewnętrznego rzadkiego wypełnienia, 100% << oznacza pełne w całym " +#~ "zakresie" + +#~ msgid "" +#~ "If a top surface has to be printed and it's partially covered by another " +#~ "layer, it won't be considered at a top layer where its width is below " +#~ "this value. This can be useful to not let the 'one perimeter on top' " +#~ "trigger on surface that should be covered only by perimeters. This value " +#~ "can be a (mm or a %) of the perimeter extrusion width.\n" +#~ "Warning: If enabled, artifacts can be created if you have some thin " +#~ "features on the next layer, like letters. Set this setting to 0 to remove " +#~ "these artifacts." +#~ msgstr "" +#~ "Jeśli górna powierzchnia ma być drukowana i jest częściowo zakryta inną " +#~ "warstwą, nie będzie traktowana jako górna warstwa, jeśli jej szerokość " +#~ "jest mniejsza niż ta wartość. \n" +#~ "Może to być przydatne, aby zapobiec uruchamianiu funkcji 'jeden perymetr " +#~ "na górze' na powierzchni, która powinna być pokryta tylko perymetrami. Ta " +#~ "wartość może być podawana w (mm lub jako %) szerokości ekstruzji " +#~ "perymetru.\n" +#~ "Uwaga: Jeśli ta funkcja jest włączona, mogą pojawić się artefakty, jeśli " +#~ "masz na następnej warstwie jakieś cienkie elementy, na przykład litery. " +#~ "Ustaw tę opcję na 0, aby usunąć te artefakty." + +#~ msgid "Layer order" +#~ msgstr "Kolejność warstw" + +#~ msgid "" +#~ "Snapmaker Orca will terminate because of running out of memory. It may be a " +#~ "bug. It will be appreciated if you report the issue to our team." +#~ msgstr "" +#~ "Snapmaker Orca zakończy działanie z powodu braku pamięci. To może być błąd. " +#~ "Będziemy wdzięczni za zgłoszenie problemu naszemu zespołowi." + +#~ msgid "" +#~ "You can keep the modified presets in the new project, discard, or save " +#~ "changes as new presets." +#~ msgstr "" +#~ "Możesz zachować zmodyfikowane ustawienia w nowym projekcie, odrzucić je " +#~ "lub zapisać jako nowe ustawienia." + +#~ msgid "New or open project file is not allowed during the slicing process!" +#~ msgstr "" +#~ "Nowy lub otwarty plik projektu nie jest dozwolony podczas procesu cięcia!" + +#~ msgid "" +#~ "The version of Snapmaker Orca is too low and needs to be updated to the " +#~ "latest version before it can be used normally." +#~ msgstr "" +#~ "Wersja Snapmaker Orca jest zbyt niska i musi zostać zaktualizowana do " +#~ "najnowszej wersji, aby działać normalnie." + +#~ msgid "" +#~ "This action will break a cut correspondence.\n" +#~ "After that model consistency can't be guaranteed.\n" +#~ "To manipulate with solid parts or negative volumes you have to invalidate " +#~ "cut information first." +#~ msgstr "" +#~ "To działanie przerwie korespondencję cięcia.\n" +#~ "Po tym nie można zagwarantować spójności modelu.\n" +#~ "Aby modyfikować bryły stałe lub obszary ujemne, najpierw trzeba " +#~ "unieważnić informacje o cięciu." + +#~ msgid "The target object contains only one part and can not be split." +#~ msgstr "" +#~ "Obiekt docelowy zawiera tylko jedną część i nie może zostać podzielony." + +#~ msgid "" +#~ "If first selected item is an object, the second one should also be an " +#~ "object." +#~ msgstr "" +#~ "Jeśli pierwszy zaznaczony element to obiekt, to drugi powinien również " +#~ "być obiektem." + +#~ msgid "" +#~ "If first selected item is a part, the second one should be a part in the " +#~ "same object." +#~ msgstr "" +#~ "Jeśli pierwszy zaznaczony element to część, to drugi powinien być częścią " +#~ "tego samego obiektu." + +#~ msgid "" +#~ "One cell can only be copied to one or multiple cells in the same column." +#~ msgstr "" +#~ "Jedną komórkę można skopiować tylko do jednej lub wielu komórek w tym " +#~ "samym kolumnie." + +#~ msgid "Multiple cells copy is not supported." +#~ msgstr "Kopiowanie wielu komórek nie jest obsługiwane." + +#~ msgid "Enter Custom G-code used on the current layer:" +#~ msgstr "Wprowadź niestandardowy G-code używany na bieżącej warstwie:" + +#~ msgid "Connection to the printer failed" +#~ msgstr "Nie udało się połączyć z drukarką" + +#~ msgid "" +#~ "All the selected objects are on the locked plate,\n" +#~ "We cannot do auto-arrange on these objects." +#~ msgstr "" +#~ "Wszystkie wybrane obiekty są na zablokowanej płycie,\n" +#~ "Nie można zastosować automatycznego układu tych obiektów." + +#~ msgid "" +#~ "This plate is locked,\n" +#~ "We cannot do auto-arrange on this plate." +#~ msgstr "" +#~ "Ta płyta jest zablokowana,\n" +#~ "Nie można zastosować automatycznego układu na tej płycie." + +#~ msgid "" +#~ "All the selected objects are on the locked plate,\n" +#~ "We cannot do auto-orient on these objects." +#~ msgstr "" +#~ "Wszystkie wybrane obiekty są na zablokowanej płycie,\n" +#~ "Nie można zastosować automatycznej orientacji na tych obiektach." + +#~ msgid "" +#~ "This plate is locked,\n" +#~ "We cannot do auto-orient on this plate." +#~ msgstr "" +#~ "Ta płyta jest zablokowana,\n" +#~ "Nie można zastosować automatycznej orientacji na tej płycie." + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca opiera się na BambuStudio od Bambulab, które wywodzi się z " +#~ "PrusaSlicer od Prusa Research. PrusaSlicer z kolei bazuje na Slic3r od " +#~ "Alessandro Ranellucci i społeczności RepRap." + +#~ msgid "" +#~ "When the current material runs out, the printer will continue to print in " +#~ "the following order." +#~ msgstr "" +#~ "Gdy obecny filament się skończy, drukarka będzie kontynuować druk w " +#~ "następującej kolejności." + +#~ msgid "The printer does not currently support auto-refill." +#~ msgstr "Obecnie drukarka nie obsługuje automatycznego uzupełniania." + +#~ msgid "" +#~ "The AMS will automatically read the information of inserted filament on " +#~ "start-up. It will take about 1 minute. The reading process will roll " +#~ "filament spools." +#~ msgstr "" +#~ "AMS automatycznie odczyta informacje o włożonym filamencie podczas " +#~ "uruchamiania. To zajmie około 1 minuty. Proces odczytu sprawi, że rolki " +#~ "filamentów się obrócą." + +#~ msgid "" +#~ "Failed to download the plug-in. Please check your firewall settings and " +#~ "VPN software, check and retry." +#~ msgstr "" +#~ "Nie udało się pobrać wtyczki. Sprawdź ustawienia zapory ogniowej i " +#~ "oprogramowania VPN, sprawdź i spróbuj ponownie." + +#~ msgid "Click here to see more info" +#~ msgstr "Kliknij tutaj, aby zobaczyć więcej informacji" + +#~ msgid "" +#~ ") to locate the toolhead's position. This prevents the device from moving " +#~ "beyond the printable boundary and causing equipment wear." +#~ msgstr "" +#~ "), aby zlokalizować pozycję głowicy narzędziowej. Zapobiega to " +#~ "przesunięciu urządzenia poza obszar drukowalny i zużyciu sprzętu." + +#~ msgid "" +#~ "The current chamber temperature or the target chamber temperature exceeds " +#~ "45℃. In order to avoid extruder clogging, low-temperature filament (PLA/" +#~ "PETG/TPU) is not allowed to be loaded." +#~ msgstr "" +#~ "Aktualna temperatura komory lub docelowa temperatura komory przekracza " +#~ "45℃. Aby uniknąć zatkania ekstruzora, niedopuszczalne jest ładowanie " +#~ "filamentu o niskiej temperaturze (PLA/PETG/TPU)." + +#~ msgid "" +#~ "Low-temperature filament (PLA/PETG/TPU) is loaded in the extruder. In " +#~ "order to avoid extruder clogging, it is not allowed to set the chamber " +#~ "temperature above 45℃." +#~ msgstr "" +#~ "W ekstruzorze jest załadowany filament o niskiej temperaturze (PLA/PETG/" +#~ "TPU). Aby uniknąć zatkania ekstruzora, nie wolno ustawiać temperatury " +#~ "komory powyżej 45℃." + +#~ msgid "" +#~ "Damp PVA will become flexible and get stuck inside AMS, please take care " +#~ "to dry it before use." +#~ msgstr "" +#~ "Wilgotne PVA staje się elastyczne i może utknąć wewnątrz AMS, proszę " +#~ "pamiętać o wysuszeniu go przed użyciem." + +#~ msgid "" +#~ "CF/GF filaments are hard and brittle, it's easy to break or get stuck in " +#~ "AMS, please use with caution." +#~ msgstr "" +#~ "Filamenty CF/GF są twarde i kruche, łatwo je złamać lub zatrzymać w AMS, " +#~ "proszę używać ostrożnie." + +#~ msgid "%s can't be a percentage" +#~ msgstr "%s nie może być procentem" + +#~ msgid "" +#~ "Is it %s%% or %s %s?\n" +#~ "YES for %s%%,\n" +#~ "NO for %s %s." +#~ msgstr "" +#~ "Czy to %s%% czy %s %s?\n" +#~ "TAK dla %s%%,\n" +#~ "NIE dla %s %s." + +#~ msgid "Allow multiple materials on the same plate" +#~ msgstr "Pozwól na kilka filamentów na tej samej płycie" + +#~ msgid "An object is laid over the boundary of plate." +#~ msgstr "Obiekt jest położony poza granicą płyty." + +#~ msgid "Only the object being edited is visible." +#~ msgstr "Widoczny jest tylko edytowany obiekt." + +#~ msgid "Connect Printer (LAN)" +#~ msgstr "Podłącz drukarkę (LAN)" + +#~ msgid "Show g-code window in Preview scene" +#~ msgstr "Pokaż okno G-code w scenie podglądu" + +#~ msgid "" +#~ "Please heat the nozzle to above 170 degrees before loading or unloading " +#~ "filament." +#~ msgstr "" +#~ "Przed załadowaniem lub rozładowaniem filamentu podgrzej dyszę do " +#~ "temperatury powyżej 170 stopni." + +#~ msgid "" +#~ "Cannot read filament info: the filament is loaded to the tool head, " +#~ "please unload the filament and try again." +#~ msgstr "" +#~ "Nie można odczytać informacji o filamentach: filament jest załadowany w " +#~ "głowicy narzędzia, proszę go wyładować i spróbować ponownie." + +#~ msgid "" +#~ "At least one successful print record of this print profile is required \n" +#~ "to give a positive rating (4 or 5 stars)." +#~ msgstr "" +#~ "Aby wystawić pozytywną ocenę (4 lub 5 gwiazdek), wymagana jest co " +#~ "najmniej jedna udana rejestracja tego profilu druku." + +#~ msgid "Your model needs support! Please make support material enable." +#~ msgstr "Twój model wymaga podpór! Włącz generowanie podpór." + +#~ msgid "" +#~ "No AMS filaments. Please select a printer in the 'Device' page to load " +#~ "AMS info." +#~ msgstr "" +#~ "Brak filamentów AMS. Proszę wybrać drukarkę na stronie „Urządzenie”, aby " +#~ "załadować informacje AMS." + +#~ msgid "" +#~ "There are some unknown filaments mapped to generic presets. Please update " +#~ "Snapmaker Orca or restart Snapmaker Orca to check for updates to system presets." +#~ msgstr "" +#~ "Istnieją nieznane filamenty przypisane do ogólnych profili. Proszę " +#~ "zaktualizować Snapmaker Orca lub zrestartować go, aby sprawdzić dostępność " +#~ "aktualizacji profili systemowych." + +#~ msgid "" +#~ "The current hot bed temperature is relatively high. The nozzle may become " +#~ "clogged when printing this filament in a closed enclosure. Please open " +#~ "the front door and/or remove the upper glass." +#~ msgstr "" +#~ "Aktualna temperatura stołu drukującego jest stosunkowo wysoka. Dysza może " +#~ "się zatkać podczas drukowania tego filamentu w zamkniętej obudowie. " +#~ "Proszę otworzyć drzwi przednie i/lub zdjąć górny panel." + +#~ msgid "" +#~ "The nozzle hardness required by the filament is higher than the default " +#~ "nozzle hardness of the printer. Please replace the hardened nozzle or " +#~ "filament; otherwise, the nozzle may wear out or get damaged." +#~ msgstr "" +#~ "Twardość dyszy wymagana przez filament jest wyższa niż domyślna twardość " +#~ "dyszy drukarki. Proszę wymienić dyszę na hartowaną lub zmienić filament, " +#~ "w przeciwnym razie dysza może ulec zużyciu lub uszkodzeniu." + +#~ msgid "The Config cannot be loaded." +#~ msgstr "Konfiguracja nie może być wczytana." + +#~ msgid "" +#~ "The 3mf is generated by the old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "Plik 3MF jest generowany przez starą wersję Snapmaker Orca, wczytuj tylko " +#~ "dane geometrii." + +#~ msgid "" +#~ "The 3mf has the following modified G-codes in filament or printer presets:" +#~ msgstr "" +#~ "Plik 3MF ma następujące zmodyfikowane kody G w profilach filamentu lub " +#~ "drukarki:" + +#~ msgid "The 3mf has the following customized filament or printer presets:" +#~ msgstr "Plik 3MF ma następujące dostosowane profile filamentu lub drukarki:" + +#~ msgid "" +#~ "„Fix Model” feature is currently only on Windows. Please repair the model " +#~ "on Snapmaker Orca(windows) or CAD softwares." +#~ msgstr "" +#~ "Funkcja „Napraw model” jest obecnie dostępna tylko w systemie Windows. " +#~ "Proszę naprawić model za pomocą programu Snapmaker Orca (Windows) lub " +#~ "oprogramowania CAD." + +#~ msgid "Switching application language while some presets are modified" +#~ msgstr "" +#~ "Zmiana języka aplikacji przy jednoczesnym istniejących zmodyfikowanych " +#~ "ustawieniach" + +#~ msgid "Note: The preparation may takes several minutes. Please be patient." +#~ msgstr "Uwaga: Przygotowanie może zająć kilka minut. Proszę o cierpliwość." + +#~ msgid "" +#~ "Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +#~ "device, please read the terms and conditions.By clicking to agree to use " +#~ "your Bambu Lab device, you agree to abide by the Privacy Policy and Terms " +#~ "of Use(collectively, the \"Terms\"). If you do not comply with or agree " +#~ "to the Bambu Lab Privacy Policy, please do not use Bambu Lab equipment " +#~ "and services." +#~ msgstr "" +#~ "Dziękujemy za zakup urządzenia Bambu Lab. Przed użyciem urządzenia Bambu " +#~ "Lab proszę przeczytać warunki i zasady. Klikając, aby zgodzić się na " +#~ "używanie urządzenia Bambu Lab, zgadzasz się przestrzegać Polityki " +#~ "Prywatności i Warunków Użytkowania (razem \"Warunki\"). Jeśli nie " +#~ "zgadzasz się lub nie przestrzegasz Polityki Prywatności Bambu Lab, proszę " +#~ "nie używać sprzętu i usług Bambu Lab." + +#~ msgid "" +#~ "In the 3D Printing community, we learn from each other's successes and " +#~ "failures to adjust our own slicing parameters and settings. %s follows " +#~ "the same principle and uses machine learning to improve its performance " +#~ "from the successes and failures of the vast number of prints by our " +#~ "users. We are training %s to be smarter by feeding them the real-world " +#~ "data. If you are willing, this service will access information from your " +#~ "error logs and usage logs, which may include information described in " +#~ "Privacy Policy. We will not collect any Personal Data by which an " +#~ "individual can be identified directly or indirectly, including without " +#~ "limitation names, addresses, payment information, or phone numbers. By " +#~ "enabling this service, you agree to these terms and the statement about " +#~ "Privacy Policy." +#~ msgstr "" +#~ "W społeczności druku 3D uczymy się od siebie nawzajem, korzystając z " +#~ "sukcesów i porażek, aby dostosować nasze parametry i ustawienia cięcia. " +#~ "%s stosuje tę samą zasadę i wykorzystuje uczenie maszynowe do poprawy " +#~ "swojej wydajności na podstawie sukcesów i porażek ogromnej liczby " +#~ "wydruków naszych użytkowników. Szkolimy %s, aby było mądrzejsze, " +#~ "dostarczając mu danych z rzeczywistego świata. Jeśli wyrażasz zgodę, ta " +#~ "usługa uzyska dostęp do informacji z Twoich logów błędów i dzienników " +#~ "użycia, które mogą zawierać informacje opisane w Polityce Prywatności. " +#~ "Nie będziemy zbierać żadnych danych osobowych, dzięki którym można by " +#~ "bezpośrednio lub pośrednio zidentyfikować osobę, w tym między innymi " +#~ "nanawisk, adresów, informacji o płatnościach czy numerów telefonów. " +#~ "Włączając tę usługę, zgadzasz się na te warunki i oświadczenie o Polityce " +#~ "Prywatności." + +#~ msgid "" +#~ "Change these settings automatically? \n" +#~ "Yes - Change these settings automatically\n" +#~ "No - Do not change these settings for me" +#~ msgstr "" +#~ "Zmienić te ustawienia automatycznie? \n" +#~ "Tak - Zmień te ustawienia automatycznie\n" +#~ "Nie - Nie zmieniaj tych ustawień dla mnie" + +#~ msgid "" +#~ "Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +#~ "height limits, this may cause printing quality issues." +#~ msgstr "" +#~ "Wysokość warstwy przekracza limit w Ustawieniach Drukarki -> Extruder -> " +#~ "Limity wysokości warstwy, co może powodować problemy z jakością druku." + +#~ msgid "Delete objects, parts, modifiers " +#~ msgstr "Usuń obiekty, części, modyfikatory " + +#~ msgid "" +#~ "Connection failed! If your IP and Access Code is correct, please move to " +#~ "step 3 for troubleshooting network issues" +#~ msgstr "" +#~ "Połączenie nieudane! Jeśli twój IP i kod dostępu są poprawne, przejdź do " +#~ "kroku 3, aby rozwiązać problemy z siecią" + +#, c-format +#~ msgid "" +#~ "Force cooling fan to be specific speed when overhang degree of printed " +#~ "part exceeds this value.Expressed as percentage which indicides how much " +#~ "width of the line without support from lower layer. 0% means forcing " +#~ "cooling for all outer wall no matter how much overhang degree" +#~ msgstr "" +#~ "Wymuś pracę wentylatora chłodzącego na określoną prędkość, gdy stopień " +#~ "nawisu drukowanej części przekracza tę wartość. Wyrażone w procentach, co " +#~ "wskazuje, jak duża jest szerokość linii bez podpór z niższej warstwy. 0%% " +#~ "oznacza wymuszanie chłodzenia dla całej zewnętrznej ściany, bez względu " +#~ "na stopień nawisu" + +#, c-format, boost-format +#~ msgid "" +#~ "Number of mm the overhang need to be for the reversal to be considered " +#~ "useful. Can be a %% of the perimeter width.\n" +#~ "Value 0 enables reversal on every odd layers regardless." +#~ msgstr "" +#~ "Ilość mm, jaką musi mieć nawis, aby odwrócenie było uznane za użyteczne. " +#~ "Może być to %% szerokości obryski.\n" +#~ "Wartość 0 umożliwia odwrócenie na każdej nieparzystej warstwie, " +#~ "niezależnie od wszystkiego." + +#~ msgid "" +#~ "Smooth Spiral smoothes out X and Y moves as well resulting in no visible " +#~ "seam at all, even in the XY directions on walls that are not vertical" +#~ msgstr "" +#~ "Smooth Spiral wygładza również ruchy w osiach X i Y, co skutkuje brakiem " +#~ "widocznych szwów, nawet w kierunkach XY na ścianach, które nie są pionowe" + +#~ msgid "" +#~ "Maximum distance to move points in XY to try to achieve a smooth spiral. " +#~ "If expressed as a %, it will be computed over nozzle diameter" +#~ msgstr "" +#~ "Maksymalna odległość przesuwania punktów w XY, aby osiągnąć gładką " +#~ "spiralę. Jeśli wyrażona w procentach, będzie obliczona na podstawie " +#~ "średnicy dyszy" + +#, c-format, boost-format +#~ msgid "" +#~ "Maximum defection of a point to the estimated radius of the circle.\n" +#~ "As cylinders are often exported as triangles of varying size, points may " +#~ "not be on the circle circumference. This setting allows you some leway to " +#~ "broaden the detection.\n" +#~ "In mm or in %% of the radius." +#~ msgstr "" +#~ "Maksymalne odchylenie punktu od szacowanego promienia koła.\n" +#~ "Ponieważ cylindry często eksportowane są jako trójkąty o różnej " +#~ "wielkości, punkty mogą nie znajdować się na obwodzie koła. To ustawienie " +#~ "pozwala na pewną swobodę w poszerzaniu wykrywania.\n" +#~ "W mm lub w %% promienia." + +#~ msgid "Certificate files (.crt, .pem)|.crt;.pem|All files|." +#~ msgstr "Pliki certyfikatów (.crt, .pem)|.crt;.pem|Wszystkie pliki|." + +#~ msgid "" +#~ "Relative extrusion is recommended when using \"label_objects\" option." +#~ "Some extruders work better with this option unchecked (absolute extrusion " +#~ "mode). Wipe tower is only compatible with relative mode. It is always " +#~ "enabled on BambuLab printers. Default is checked" +#~ msgstr "" +#~ "Przy użyciu opcji \"label_objects\" zaleca się ekstruzję względną. " +#~ "Niektóre ekstrudery działają lepiej, gdy ta opcja jest odznaczona (tryb " +#~ "ekstruzji absolutnej). Wieża czyszcząca jest kompatybilna tylko z trybem " +#~ "względnym. Jest zawsze włączona w drukarkach BambuLab. Domyślnie " +#~ "zaznaczone" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Błąd! Nie można utworzyć wątku!" + +#~ msgid "Exception" +#~ msgstr "Wyjątek" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Opisz, jak długo dysza będzie się poruszać wzdłuż ostatniej ścieżki " +#~ "podczas retrakcji" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Uprość model\n" +#~ "Czy wiedziałeś, że możesz zmniejszyć liczbę trójkątów w siatce za pomocą " +#~ "funkcji Uprość siatkę? Kliknij prawym przyciskiem myszy na model i " +#~ "wybierz Uprość model. Więcej informacji znajdziesz w dokumentacji." + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "Odejmowanie części\n" +#~ "Czy wiedziałeś, że możesz odjąć jedną siatkę od drugiej, używając " +#~ "modyfikatora negatywnej części? W ten sposób na przykład możesz łatwo " +#~ "tworzyć otwory o zmiennej wielkości bezpośrednio w Snapmaker Orca. " +#~ "Przeczytaj więcej w dokumentacji." + +#~ msgid "Filling bed " +#~ msgstr "Wypełnianie podłoża " + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "Wzór wypełnienia %1% nie obsługuje 100% gęstości." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automatically\n" +#~ "No - reset density to default non 100% value automatically" +#~ msgstr "" +#~ "Przełączyć na wzór prostoliniowy?\n" +#~ "Tak - przełącz automatycznie na wzór prostoliniowy\n" +#~ "Nie - automatycznie zresetuj gęstość do domyślnej wartości nie 100%" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "" +#~ "Proszę podgrzać dyszę do ponad 170 stopni przed załadowaniem filamentu." + +#~ msgid "Show g-code window" +#~ msgstr "Pokaż okno G-kodu" + +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "Jeśli włączone, okno G-kodu zostanie wyświetlone." + +#, fuzzy, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "" +#~ "Gęstość wewnętrznego rzadkiego wypełnienia, 100% oznacza pełne w całym " +#~ "zakresie" + +#~ msgid "Tree support wall loops" +#~ msgstr "Pętle ścienne podpory drzewnej" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "To ustawienie określa liczbę ścian wokół podpory drzewnej" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " nie działa przy 100% gęstości " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Narzędzie - Połóż na Powierzchni" + +#~ msgid "Export as STL" +#~ msgstr "Eksportuj jako STL" + +#~ msgid "Check cloud service status" +#~ msgstr "Sprawdź stan usługi chmurowej" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Proszę wprowadzić prawidłową wartość (K w zakresie 0~0,5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "" +#~ "Proszę wprowadzić prawidłową wartość (K w zakresie 0~0,5, N w zakresie " +#~ "0,6~2,0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Eksportuj wszystkie obiekty jako STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "3mf nie jest kompatybilny, załaduj tylko dane geometryczne!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Niekonpatybilny 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "Dodaj/Usuń drukarki" + +#~ msgid "" +#~ "When print by object, machines with I3 structure will not generate " +#~ "timelapse videos." +#~ msgstr "" +#~ "Podczas drukowania według obiektu, maszyny ze strukturą I3 nie będą " +#~ "tworzyć filmów poklatkowych." + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s nie jest obsługiwany przez AMS." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Nie przypominaj mi tej wersji ponownie" + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Błąd: IP lub kod dostępu są niepoprawne" + +#~ msgid "" +#~ "Extrude perimeters that have a part over an overhang in the reverse " +#~ "direction on odd layers. This alternating pattern can drastically improve " +#~ "steep overhang." +#~ msgstr "" +#~ "Ekstruduj obwody, które mają część nad występem w przeciwnym kierunku na " +#~ "nieparzystych warstwach. Ten naprzemienny wzór może drastycznie poprawić " +#~ "strome nawisy." + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Kolejność wewnętrznej ściany/zewnętrznej ściany/wypełnienia" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "" +#~ "Sekwencja druku wewnętrznej ściany, zewnętrznej ściany i wypełnienia. " + +#~ msgid "inner/outer/infill" +#~ msgstr "wewnętrzna/zewnętrzna/wypełnienie" + +#~ msgid "outer/inner/infill" +#~ msgstr "zewnętrzna/wewnętrzna/wypełnienie" + +#~ msgid "infill/inner/outer" +#~ msgstr "wypełnienie/wewnętrzna/zewnętrzna" + +#~ msgid "infill/outer/inner" +#~ msgstr "wypełnienie/zewnętrzna/wewnętrzna" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "wewnętrzna-zewnętrzna-wewnętrzna/wypełnienie" + +#, c-format, boost-format +#~ msgid "%%" +#~ msgstr "%%" + +#~ msgid "Export 3MF" +#~ msgstr "Eksportuj 3MF" + +#~ msgid "Export project as 3MF." +#~ msgstr "Eksportuj projekt jako 3MF." + +#~ msgid "Export slicing data" +#~ msgstr "Eksportuj dane slicowania" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Eksportuj dane slicowania do folderu." + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Załaduj buforowane dane slicowania z katalogu" + +#~ msgid "Export STL" +#~ msgstr "Eksportuj STL" + +#~ msgid "Export the objects as multiple STL." +#~ msgstr "Eksportuj obiekty jako wiele plików STL." + +#~ msgid "Slice" +#~ msgstr "Slice" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "Slice podłoża: 0-wszystkie podłoża, i-podłoże i, inne-nieważne" + +#~ msgid "Show command help." +#~ msgstr "Pokaż pomoc komendy." + +#~ msgid "UpToDate" +#~ msgstr "Aktualne" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "Zaktualizuj wartości konfiguracji 3mf do najnowszych." + +#~ msgid "Load default filaments" +#~ msgstr "Załaduj domyślne filamenty" + +#~ msgid "Load first filament as default for those not loaded" +#~ msgstr "" +#~ "Załaduj pierwszy filament jako domyślny dla tych, które nie zostały " +#~ "załadowane" + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "maksymalna liczba trójkątów na podłoże do slicowania." + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "maksymalny czas slicowania na podłoże w sekundach." + +#~ msgid "Normative check" +#~ msgstr "Kontrola normatywna" + +#~ msgid "Check the normative items." +#~ msgstr "Sprawdź elementy normatywne." + +#~ msgid "Output Model Info" +#~ msgstr "Informacje o modelu wyjściowym" + +#~ msgid "Output the model's information." +#~ msgstr "Wyświetl informacje o modelu." + +#~ msgid "Export Settings" +#~ msgstr "Ustawienia eksportu" + +#~ msgid "Export settings to a file." +#~ msgstr "Eksportuj ustawienia do pliku." + +#~ msgid "Send progress to pipe" +#~ msgstr "Wyślij postęp do rury" + +#~ msgid "Send progress to pipe." +#~ msgstr "Wyślij postęp do rury." + +#~ msgid "Arrange Options" +#~ msgstr "Opcje aranżacji" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Opcje aranżacji: 0-wyłącz, 1-włącz, inne-auto" + +#~ msgid "Repetions count" +#~ msgstr "Liczba powtórzeń" + +#~ msgid "Repetions count of the whole model" +#~ msgstr "Liczba powtórzeń całego modelu" + +#~ msgid "Convert Unit" +#~ msgstr "Konwertuj jednostkę" + +#~ msgid "Convert the units of model" +#~ msgstr "Konwertuj jednostki modelu" + +#~ msgid "Rotate around X" +#~ msgstr "Obróć wokół osi X" + +#~ msgid "Rotation angle around the X axis in degrees." +#~ msgstr "Kąt obrotu wokół osi X w stopniach." + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Skaluj model przez czynnik zmiennoprzecinkowy" + +#~ msgid "Load General Settings" +#~ msgstr "Załaduj ustawienia ogólne" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "Załaduj ustawienia procesu/maszyny z określonego pliku" + +#~ msgid "Load Filament Settings" +#~ msgstr "Załaduj ustawienia filamentu" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "Załaduj ustawienia filamentu z określonej listy plików" + +#~ msgid "Skip Objects" +#~ msgstr "Pomiń obiekty" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Pomiń niektóre obiekty w tym druku" + +#~ msgid "load uptodate process/machine settings when using uptodate" +#~ msgstr "" +#~ "załaduj aktualne ustawienia procesu/maszyny podczas korzystania z " +#~ "aktualizacji" + +#~ msgid "" +#~ "load uptodate process/machine settings from the specified file when using " +#~ "uptodate" +#~ msgstr "" +#~ "załaduj aktualne ustawienia procesu/maszyny z określonego pliku podczas " +#~ "korzystania z aktualizacji" + +#~ msgid "Output directory" +#~ msgstr "Katalog wyjściowy" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Katalog wyjściowy dla eksportowanych plików." + +#~ msgid "Debug level" +#~ msgstr "Poziom debugowania" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Ustawia poziom logowania debugowania. 0:fatal, 1:error, 2:warning, 3:" +#~ "info, 4:debug, 5:trace\n" + +#~ msgid "The selected preset: %1% is not found." +#~ msgstr "Wybrana przędło: %1% nie została znaleziona." + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "Operacje w scenie 3D\n" +#~ "Czy wiesz, jak kontrolować widok i wybór obiektów/części za pomocą myszy " +#~ "i panelu dotykowego w scenie 3D?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Napraw model\n" +#~ "Czy wiesz, że możesz naprawić uszkodzony model 3D, aby uniknąć wielu " +#~ "problemów z krojeniem?" + +#~ msgid "Embeded" +#~ msgstr "Osadzone" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "Plik konfiguracyjny Snapmaker Orca może być uszkodzony i nie można go " +#~ "przeanalizować. Proszę usunąć plik i spróbować ponownie." + +#~ msgid "Online Models" +#~ msgstr "Modele online" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "Pokaż na stronie głównej modele online wybrane przez personel" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "Minimalna prędkość drukowania przy zwolnieniu do chłodzenia" + +#~ msgid "" +#~ "There are currently no identical spare consumables available, and " +#~ "automatic replenishment is currently not possible. \n" +#~ "(Currently supporting automatic supply of consumables with the same " +#~ "brand, material type, and color)" +#~ msgstr "" +#~ "Obecnie nie ma dostępnych identycznych zapasowych materiałów " +#~ "eksploatacyjnych, i automatyczne uzupełnianie nie jest obecnie możliwe. \n" +#~ "(Obecnie obsługiwane jest automatyczne zaopatrzenie w materiały " +#~ "eksploatacyjne tej samej marki, typu materiału i koloru)" + +#~ msgid "Invalid nozzle diameter" +#~ msgstr "Nieprawidłowa średnica dyszy" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "Temperatura łóżka przekracza temperaturę witrifikacji filamentu. Proszę " +#~ "otworzyć przednie drzwi drukarki przed drukowaniem, aby uniknąć zatkania " +#~ "dyszy." + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Temperatura witrifikacji" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "Materiał staje się miękki w tej temperaturze. Dlatego podgrzewane łóżko " +#~ "nie może być gorętsze niż ta temperatura" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "" +#~ "Włącz tę opcję, jeśli maszyna ma dodatkowy wentylator chłodzenia części" + +#~ msgid "" +#~ "This option is enabled if machine support controlling chamber temperature" +#~ msgstr "" +#~ "Ta opcja jest włączona, jeśli maszyna obsługuje kontrolę temperatury " +#~ "komory" + +#~ msgid "Enable this if printer support air filtration" +#~ msgstr "Włącz to, jeśli drukarka obsługuje filtrację powietrza" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "Prędkość wentylatora chłodzenia pomocniczej części. Wentylator pomocniczy " +#~ "będzie pracować z tą prędkością podczas drukowania, z wyjątkiem " +#~ "pierwszych kilku warstw, które są zdefiniowane jako warstwy bez chłodzenia" + +#~ msgid "" +#~ "Filter out gaps smaller than the threshold specified. This setting won't " +#~ "affect top/bottom layers" +#~ msgstr "" +#~ "Filtruj przerwy mniejsze niż określony próg. To ustawienie nie wpłynie na " +#~ "warstwy górne/dolne" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "" +#~ "Puste warstwy wokół dolnej części są zastępowane najbliższymi normalnymi " +#~ "warstwami." + +#~ msgid "The model has too many empty layers." +#~ msgstr "Model ma zbyt wiele pustych warstw." + +#~ msgid "Cali" +#~ msgstr "Kalibracja" + +#~ msgid "Calibration of extrusion" +#~ msgstr "Kalibracja ekstruzji" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Wsuń nowy filament do ekstrudera" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "Temperatura podłoża innych warstw jest niższa niż temperatura podłoża " +#~ "pierwszej warstwy o więcej niż %d stopni Celsjusza.\n" +#~ "Może to spowodować oderwanie modelu od płyty budowlanej podczas drukowania" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "Temperatura podłoża jest wyższa niż temperatura witrifikacji tego " +#~ "filamentu.\n" +#~ "Może to spowodować zablokowanie dyszy i niepowodzenie drukowania\n" +#~ "Proszę pozostawić drukarkę otwartą podczas procesu drukowania, aby " +#~ "zapewnić cyrkulację powietrza lub obniżyć temperaturę podgrzewanego łóżka" + +#~ msgid "Total Time Estimation" +#~ msgstr "Całkowity szacowany czas" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Identyfikacja częstotliwości rezonansowej" + +#~ msgid "Immediately score" +#~ msgstr "Natychmiastowa ocena" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "Proszę ocenić swój ulubiony model z Bambu Market." + +#~ msgid "Score" +#~ msgstr "Ocena" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Płyta wysokotemperaturowa Bambu" + +#~ msgid "Can't connect to the printer" +#~ msgstr "Nie można połączyć się z drukarką" + +#~ msgid "Recommended temperature range" +#~ msgstr "Zalecany zakres temperatur" + +#~ msgid "High Temp Plate" +#~ msgstr "Płyta wysokotemperaturowa" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "Temperatura podłoża, gdy jest zainstalowana płyta wysokotemperaturowa. " +#~ "Wartość 0 oznacza, że filament nie obsługuje drukowania na Płycie " +#~ "Wysokotemperaturowej" + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Grubość wewnętrznej podpory mostu" + +#~ msgid "" +#~ "If enabled, support loops will be generated under the contours of " +#~ "internal bridges.These support loops could prevent internal bridges from " +#~ "extruding over the air and improve the top surface quality, especially " +#~ "when the sparse infill density is low. This value determines the " +#~ "thickness of the support loops. 0 means disable this feature" +#~ msgstr "" +#~ "Jeśli włączone, pętle podpory zostaną wygenerowane pod konturami " +#~ "wewnętrznych mostów. Te pętle podpory mogą zapobiec wyciskaniu mostów do " +#~ "powietrza i poprawić jakość górnej powierzchni, szczególnie gdy gęstość " +#~ "wypełnienia jest niska. Ta wartość określa grubość pętli podpory. 0 " +#~ "oznacza wyłączenie tej funkcji" + +#, fuzzy, c-format, boost-format +#~ msgid "" +#~ "Klipper's max_accel_to_decel will be adjusted to this % of acceleration" +#~ msgstr "" +#~ "Maksymalne przyspieszenie Klippera max_accel_to_decel zostanie " +#~ "dostosowane do tego % przyspieszenia" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Styl i kształt podpory. Dla normalnej podpory, rzutowanie podpór na " +#~ "regularną siatkę stworzy stabilniejsze podpory (domyślnie), podczas gdy " +#~ "ciasne wieże podpory zaoszczędzą materiał i zmniejszą blizny na " +#~ "obiekcie.\n" +#~ "Dla podpory drzewa, szczupły styl połączy gałęzie agresywniej i " +#~ "zaoszczędzi dużo materiału (domyślnie), podczas gdy styl hybrydowy " +#~ "stworzy podobną strukturę do normalnej podpory pod dużymi płaskimi " +#~ "zwisami." + +#~ msgid "Target chamber temperature" +#~ msgstr "Docelowa temperatura komory" + +#~ msgid "Bed temperature difference" +#~ msgstr "Różnica temperatury podłoża" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "Nie zaleca się, aby temperatura łóżka innej warstwy była niższa niż " +#~ "początkowa warstwa o więcej niż ten próg. Zbyt niska temperatura podłoża " +#~ "innej warstwy może spowodować oderwanie modelu od blatu budowlanego" + +#~ msgid "Orient the model" +#~ msgstr "Zorientuj model" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 0 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Proszę podać poprawne wartości:\n" +#~ "start > 0 krok >= 0\n" +#~ "koniec > start + krok)" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 10 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Proszę podać poprawne wartości:\n" +#~ "start > 10 kroków >= 0\n" +#~ "koniec > start + krok)" diff --git a/localization/i18n/pt_BR/Snapmaker_Orca_pt_BR.po b/localization/i18n/pt_BR/Snapmaker_Orca_pt_BR.po new file mode 100644 index 0000000000..7321b48768 --- /dev/null +++ b/localization/i18n/pt_BR/Snapmaker_Orca_pt_BR.po @@ -0,0 +1,17012 @@ +# +msgid "" +msgstr "" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: 2024-06-01 21:51-0300\n" +"Last-Translator: \n" +"Language-Team: Portuguese, Brazilian\n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-File: Snapmaker_Orca.pot\n" +"X-Crowdin-File-ID: 10\n" +"X-Crowdin-Language: pt-BR\n" +"X-Crowdin-Project: Snapmaker Orca-pt-br\n" +"X-Crowdin-Project-ID: 664934\n" +"X-Generator: Poedit 3.4.4\n" + +msgid "Supports Painting" +msgstr "Pintura de Suportes" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Roda do Mouse" + +msgid "Section view" +msgstr "Vista Planar" + +msgid "Reset direction" +msgstr "Redefinir direção" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Roda do Mouse" + +msgid "Pen size" +msgstr "Tamanho" + +msgid "Left mouse button" +msgstr "Botão esquerdo do mouse" + +msgid "Enforce supports" +msgstr "Forçar suportes" + +msgid "Right mouse button" +msgstr "Botão direito do mouse" + +msgid "Block supports" +msgstr "Bloquear suportes" + +msgid "Shift + Left mouse button" +msgstr "Shift + Botão esquerdo do mouse" + +msgid "Erase" +msgstr "Apagar" + +msgid "Erase all painting" +msgstr "Apagar toda a pintura" + +msgid "Highlight overhang areas" +msgstr "Destacar áreas com 'overhangs'" + +msgid "Gap fill" +msgstr "Preenchimento de vão" + +msgid "Perform" +msgstr "Executar" + +msgid "Gap area" +msgstr "Área das lacunas" + +msgid "Tool type" +msgstr "Tipo da Ferramenta" + +msgid "Smart fill angle" +msgstr "" +"Ângulo do\n" +"preench. inteligente" + +msgid "On overhangs only" +msgstr "Apenas em 'overhangs'" + +msgid "Auto support threshold angle: " +msgstr "Ângulo max. do suporte automático: " + +msgid "Circle" +msgstr "Círculo" + +msgid "Sphere" +msgstr "Esfera" + +msgid "Fill" +msgstr "Preencher" + +msgid "Gap Fill" +msgstr "Preencher lacunas" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Permite pintura apenas em facetas selecionadas por: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Realçar faces conforme a inclinação." + +msgid "No auto support" +msgstr "Sem suporte automático" + +msgid "Support Generated" +msgstr "Suporte Gerado" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo-Posicionar na face" + +msgid "Lay on face" +msgstr "Apoiar face à superfície" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"A contagem de filamentos excede o número máximo que a ferramenta de pintura " +"suporta. Apenas os primeiros %1% filamentos estarão disponíveis na " +"ferramenta de pintura." + +msgid "Color Painting" +msgstr "Pintura de cores" + +msgid "Pen shape" +msgstr "Formato da Caneta" + +msgid "Paint" +msgstr "Pintar" + +msgid "Key 1~9" +msgstr "Tecla 1~9" + +msgid "Choose filament" +msgstr "Escolher filamento" + +msgid "Edge detection" +msgstr "Detecção de Borda" + +msgid "Triangles" +msgstr "Triângulos" + +msgid "Filaments" +msgstr "Filamentos" + +msgid "Brush" +msgstr "Pincel" + +msgid "Smart fill" +msgstr "Preenchimento Inteligente" + +msgid "Bucket fill" +msgstr "Balde de preenchimento" + +msgid "Height range" +msgstr "Intervalo de altura" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "Alternar Wireframe" + +msgid "Shortcut Key " +msgstr "Tecla " + +msgid "Triangle" +msgstr "Triângulo" + +msgid "Height Range" +msgstr "Intervalo de Altura" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Remove painted color" +msgstr "Remover cor pintada" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Pintado usando: Filamento %1%" + +msgid "Move" +msgstr "Mover" + +msgid "Gizmo-Move" +msgstr "Gizmo-Mover" + +msgid "Rotate" +msgstr "Rotacionar" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-Rotacionar" + +msgid "Optimize orientation" +msgstr "Otimizar orientação" + +msgid "Apply" +msgstr "Aplicar" + +msgid "Scale" +msgstr "Escala" + +msgid "Gizmo-Scale" +msgstr "Gizmo-Dimensionar" + +msgid "Error: Please close all toolbar menus first" +msgstr "Erro: Por favor, feche todos os menus da barra de ferramentas primeiro" + +msgid "in" +msgstr "in" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Posição" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Rotação" + +msgid "Scale ratios" +msgstr "Proporções de escala" + +msgid "Object Operations" +msgstr "Operações do Objeto" + +msgid "Volume Operations" +msgstr "Operações de Volume" + +msgid "Translate" +msgstr "Traduzir" + +msgid "Group Operations" +msgstr "Operações de Grupo" + +msgid "Set Position" +msgstr "Definir Posição" + +msgid "Set Orientation" +msgstr "Definir Orientação" + +msgid "Set Scale" +msgstr "Definir Escala" + +msgid "Reset Position" +msgstr "Redefinir Posição" + +msgid "Reset Rotation" +msgstr "Redefinir Rotação" + +msgid "World coordinates" +msgstr "Coordenadas globais" + +msgid "Object coordinates" +msgstr "Coordenadas do objeto" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Tamanho" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "Escala uniforme" + +msgid "Planar" +msgstr "Plano" + +msgid "Dovetail" +msgstr "Encaixe" + +msgid "Auto" +msgstr "Auto" + +msgid "Manual" +msgstr "Manual" + +msgid "Plug" +msgstr "Pino" + +msgid "Dowel" +msgstr "Cavilha" + +msgid "Snap" +msgstr "Plugue" + +msgid "Prism" +msgstr "Prisma" + +msgid "Frustum" +msgstr "Tronco" + +msgid "Square" +msgstr "Quadrado" + +msgid "Hexagon" +msgstr "Hexágono" + +msgid "Keep orientation" +msgstr "Manter orientação" + +msgid "Place on cut" +msgstr "Apoiar no corte" + +msgid "Flip upside down" +msgstr "Virar de cabeça para baixo" + +msgid "Connectors" +msgstr "Conectores" + +msgid "Type" +msgstr "Tipo" + +msgid "Style" +msgstr "Estilo" + +msgid "Shape" +msgstr "Forma" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Profundidade" + +msgid "Groove" +msgstr "Cavidade" + +msgid "Width" +msgstr "Largura" + +msgid "Flap Angle" +msgstr "Ângulo do borda" + +msgid "Groove Angle" +msgstr "Ângulo da cavidade" + +msgid "Part" +msgstr "Peça" + +msgid "Object" +msgstr "Objeto" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Clique para girar o plano de corte\n" +"Arraste para mover o plano de corte" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Clique para girar o plano de corte\n" +"Arraste para mover o plano de corte\n" +"Clique com o botão direito em uma peça para atribuí-la ao outro lado" + +msgid "Move cut plane" +msgstr "Mover plano de corte" + +msgid "Mode" +msgstr "Modo" + +msgid "Change cut mode" +msgstr "Alterar modo de corte" + +msgid "Tolerance" +msgstr "Tolerância" + +msgid "Drag" +msgstr "Arrastar" + +msgid "Draw cut line" +msgstr "Desenhar linha de corte" + +msgid "Left click" +msgstr "Clique esquerdo" + +msgid "Add connector" +msgstr "Adicionar conector" + +msgid "Right click" +msgstr "Clique direito" + +msgid "Remove connector" +msgstr "Remover conector" + +msgid "Move connector" +msgstr "Mover conector" + +msgid "Add connector to selection" +msgstr "Adicionar conector à seleção" + +msgid "Remove connector from selection" +msgstr "Remover conector da seleção" + +msgid "Select all connectors" +msgstr "Selecionar todos os conectores" + +msgid "Cut" +msgstr "Cortar" + +msgid "Rotate cut plane" +msgstr "Rotacionar plano de corte" + +msgid "Remove connectors" +msgstr "Remover conectores" + +msgid "Bulge" +msgstr "Relevo" + +msgid "Bulge proportion related to radius" +msgstr "Proporção de relevo em relação ao raio" + +msgid "Space" +msgstr "Espaço" + +msgid "Space proportion related to radius" +msgstr "Proporção de espaço em relação ao raio" + +msgid "Confirm connectors" +msgstr "Confirmar conectores" + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Build Volume" +msgstr "Volume de Impressão" + +msgid "Flip cut plane" +msgstr "Virar plano de corte" + +msgid "Groove change" +msgstr "Alteração de cavidade" + +msgid "Reset" +msgstr "Reiniciar" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Editado" + +msgid "Cut position" +msgstr "Posição de corte" + +msgid "Reset cutting plane" +msgstr "Redefinir plano de corte" + +msgid "Edit connectors" +msgstr "Editar conectores" + +msgid "Add connectors" +msgstr "Adicionar conectores" + +msgid "Reset cut" +msgstr "Redefinir corte" + +msgid "Reset cutting plane and remove connectors" +msgstr "Redefinir plano de corte e remover conectores" + +msgid "Upper part" +msgstr "Parte superior" + +msgid "Lower part" +msgstr "Parte inferior" + +msgid "Keep" +msgstr "Manter" + +msgid "Flip" +msgstr "Virar" + +msgid "After cut" +msgstr "Após o corte" + +msgid "Cut to parts" +msgstr "Cortar em peças" + +msgid "Perform cut" +msgstr "Executar corte" + +msgid "Warning" +msgstr "Aviso" + +msgid "Invalid connectors detected" +msgstr "Conectores inválidos detectados" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "%1$d conector está fora do contorno de corte" +msgstr[1] "%1$d conectores estão fora do contorno de corte" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "%1$d conector está fora do objeto" +msgstr[1] "%1$d conectores estão fora do objeto" + +msgid "Some connectors are overlapped" +msgstr "Alguns conectores estão sobrepostos" + +msgid "Select at least one object to keep after cutting." +msgstr "Selecione pelo menos um objeto para manter após o corte." + +msgid "Cut plane is placed out of object" +msgstr "Plano de corte está posicionado fora do objeto" + +msgid "Cut plane with groove is invalid" +msgstr "Plano de corte com cavidade é inválido" + +msgid "Connector" +msgstr "Conector" + +msgid "Cut by Plane" +msgstr "Cortar por Plano" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"as arestas abertas podem ser causadas pela ferramenta de corte, você quer " +"corrigi-las agora?" + +msgid "Repairing model object" +msgstr "Reparando objeto do modelo" + +msgid "Cut by line" +msgstr "Corte por linha" + +msgid "Delete connector" +msgstr "Apagar conector" + +msgid "Mesh name" +msgstr "Nome da malha" + +msgid "Detail level" +msgstr "Nível de detalhe" + +msgid "Decimate ratio" +msgstr "Taxa de decimação" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Processar modelo '%1%' com mais de 1M de triângulos pode ser lento. É " +"altamente recomendável simplificar o modelo." + +msgid "Simplify model" +msgstr "Simplificar modelo" + +msgid "Simplify" +msgstr "Simplificar" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"A simplificação só é permitida quando uma única peça é selecionada no momento" + +msgid "Error" +msgstr "Erro" + +msgid "Extra high" +msgstr "Extra alto" + +msgid "High" +msgstr "Alto" + +msgid "Medium" +msgstr "Médio" + +msgid "Low" +msgstr "Baixo" + +msgid "Extra low" +msgstr "Extra baixo" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d triângulos" + +msgid "Show wireframe" +msgstr "Mostrar wireframe" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "" +"Não é possível aplicar quando a visualização do processo está em andamento." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Operação já sendo cancelada. Por favor, aguarde alguns segundos." + +msgid "Face recognition" +msgstr "Reconhecimento facial" + +msgid "Perform Recognition" +msgstr "Realizar Reconhecimento" + +msgid "Brush size" +msgstr "Tamanho" + +msgid "Brush shape" +msgstr "Formato do pincel" + +msgid "Enforce seam" +msgstr "Forçar costura" + +msgid "Block seam" +msgstr "Bloquear costura" + +msgid "Seam painting" +msgstr "Pintura de costura" + +msgid "Remove selection" +msgstr "Remover seleção" + +msgid "Entering Seam painting" +msgstr "Entrando na pintura de costura" + +msgid "Leaving Seam painting" +msgstr "Saindo da pintura de costura" + +msgid "Paint-on seam editing" +msgstr "Edição de pintura de costura" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Fonte" + +msgid "Thickness" +msgstr "Espessura" + +msgid "Text Gap" +msgstr "Espaço de Texto" + +msgid "Angle" +msgstr "Ângulo" + +msgid "" +"Embeded\n" +"depth" +msgstr "" +"Profundidade\n" +"Integrada" + +msgid "Input text" +msgstr "Texto de entrada" + +msgid "Surface" +msgstr "Superfície" + +msgid "Horizontal text" +msgstr "Texto horizontal" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Mover mouse para cima ou para baixo" + +msgid "Rotate text" +msgstr "Rotacionar texto" + +msgid "Text shape" +msgstr "Formato do texto" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Rotação do texto" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Mover texto" + +msgid "Set Mirror" +msgstr "Definir Espelho" + +msgid "Embossed text" +msgstr "Texto em relevo" + +msgid "Enter emboss gizmo" +msgstr "Entrar no gizmo de relevo" + +msgid "Leave emboss gizmo" +msgstr "Sair do gizmo de relevo" + +msgid "Embossing actions" +msgstr "Ações de relevo" + +msgid "Emboss" +msgstr "Relevo" + +msgid "NORMAL" +msgstr "NORMAL" + +msgid "SMALL" +msgstr "PEQUENO" + +msgid "ITALIC" +msgstr "ITÁLICO" + +msgid "SWISS" +msgstr "SUÍÇO" + +msgid "MODERN" +msgstr "MODERNO" + +msgid "First font" +msgstr "Primeira fonte" + +msgid "Default font" +msgstr "Fonte padrão" + +msgid "Advanced" +msgstr "Avançado" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"O texto não pode ser escrito usando a fonte selecionada. Por favor, tente " +"escolher uma fonte diferente." + +msgid "Embossed text cannot contain only white spaces." +msgstr "Texto em relevo não pode conter apenas espaços em branco." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" +"O texto contém um glifo de caractere (representado por '?') desconhecido " +"pela fonte." + +msgid "Text input doesn't show font skew." +msgstr "A entrada de texto não mostra a inclinação da fonte." + +msgid "Text input doesn't show font boldness." +msgstr "A entrada de texto não mostra a negrito da fonte." + +msgid "Text input doesn't show gap between lines." +msgstr "A entrada de texto não mostra o espaçamento entre linhas." + +msgid "Too tall, diminished font height inside text input." +msgstr "Muito alto, altura da fonte diminuída dentro da entrada de texto." + +msgid "Too small, enlarged font height inside text input." +msgstr "Muito pequeno, altura da fonte aumentada dentro da entrada de texto." + +msgid "Text doesn't show current horizontal alignment." +msgstr "O texto não mostra o alinhamento horizontal atual." + +msgid "Revert font changes." +msgstr "Reverter alterações de fonte." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "A fonte \"%1%\" não pode ser selecionada." + +msgid "Operation" +msgstr "Operação" + +msgid "Join" +msgstr "Unir" + +msgid "Click to change text into object part." +msgstr "Clique para mudar o texto para uma peça do objeto." + +msgid "You can't change a type of the last solid part of the object." +msgstr "Você não pode mudar o tipo da última peça sólida do objeto." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Cortar" + +msgid "Click to change part type into negative volume." +msgstr "Clique para mudar o tipo de peça para volume negativo." + +msgid "Modifier" +msgstr "Modificador" + +msgid "Click to change part type into modifier." +msgstr "Clique para mudar o tipo de peça para modificador." + +msgid "Change Text Type" +msgstr "Alterar tipo de texto" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Renomear estilo(%1%) para texto em relevo" + +msgid "Name can't be empty." +msgstr "O nome não pode estar vazio." + +msgid "Name has to be unique." +msgstr "O nome tem que ser único." + +msgid "OK" +msgstr "Certo" + +msgid "Rename style" +msgstr "Renomear estilo" + +msgid "Rename current style." +msgstr "Renomear o estilo atual." + +msgid "Can't rename temporary style." +msgstr "Não é possível renomear estilo temporário." + +msgid "First Add style to list." +msgstr "Primeiro, adicione o estilo à lista." + +#, boost-format +msgid "Save %1% style" +msgstr "Salvar estilo %1%" + +msgid "No changes to save." +msgstr "Não há mudanças para salvar." + +msgid "New name of style" +msgstr "Novo nome do estilo" + +msgid "Save as new style" +msgstr "Salvar como novo estilo" + +msgid "Only valid font can be added to style." +msgstr "Somente uma fonte válida pode ser adicionada ao estilo." + +msgid "Add style to my list." +msgstr "Adicionar estilo à minha lista." + +msgid "Save as new style." +msgstr "Salvar como novo estilo." + +msgid "Remove style" +msgstr "Remover estilo" + +msgid "Can't remove the last existing style." +msgstr "Não é possível remover o último estilo existente." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "Tem certeza de que deseja remover permanentemente o estilo \"%1%\"?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "Excluir o estilo \"%1%\"." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "Não é possível excluir \"%1%\". É o último estilo." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "Não é possível excluir o estilo temporário \"%1%\"." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Estilo modificado \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "O estilo atual é \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"Mudar o estilo para \"%1%\" descartará a modificação atual do estilo.\n" +"\n" +"Você gostaria de continuar mesmo assim?" + +msgid "Not valid style." +msgstr "Estilo inválido." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "O estilo \"%1%\" não pode ser usado e será removido da lista." + +msgid "Unset italic" +msgstr "Desativar Itálico" + +msgid "Set italic" +msgstr "Ativar Itálico" + +msgid "Unset bold" +msgstr "Desativar Negrito" + +msgid "Set bold" +msgstr "Ativar negrito" + +msgid "Revert text size." +msgstr "Reverter tamanho do texto." + +msgid "Revert embossed depth." +msgstr "Reverter profundidade em relevo." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"As opções avançadas não podem ser alteradas para a fonte selecionada.\n" +"Selecione outra fonte." + +msgid "Revert using of model surface." +msgstr "Reverter uso da superfície do modelo." + +msgid "Revert Transformation per glyph." +msgstr "Reverter Transformação por glifo." + +msgid "Set global orientation for whole text." +msgstr "Definir orientação global para todo o texto." + +msgid "Set position and orientation per glyph." +msgstr "Definir posição e orientação por glifo." + +msgctxt "Alignment" +msgid "Left" +msgstr "Esquerda" + +msgctxt "Alignment" +msgid "Center" +msgstr "Centro" + +msgctxt "Alignment" +msgid "Right" +msgstr "Direita" + +msgctxt "Alignment" +msgid "Top" +msgstr "Topo" + +msgctxt "Alignment" +msgid "Middle" +msgstr "Meio" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Fundo" + +msgid "Revert alignment." +msgstr "Reverter alinhamento." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "pontos" + +msgid "Revert gap between characters" +msgstr "Reverter espaçamento entre caracteres" + +msgid "Distance between characters" +msgstr "Distância entre caracteres" + +msgid "Revert gap between lines" +msgstr "Reverter espaçamento entre linhas" + +msgid "Distance between lines" +msgstr "Distância entre linhas" + +msgid "Undo boldness" +msgstr "Desfazer negrito" + +msgid "Tiny / Wide glyphs" +msgstr "Glifos pequenos / largos" + +msgid "Undo letter's skew" +msgstr "Desfazer inclinação das letras" + +msgid "Italic strength ratio" +msgstr "Proporção de força itálica" + +msgid "Undo translation" +msgstr "Desfazer tradução" + +msgid "Distance of the center of the text to the model surface." +msgstr "Distância do centro do texto para a superfície do modelo." + +msgid "Undo rotation" +msgstr "Desfazer rotação" + +msgid "Rotate text Clock-wise." +msgstr "Girar o texto no sentido horário." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"Desbloquear a rotação do texto ao movê-lo ao longo da superfície do objeto." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" +"Bloquear a rotação do texto ao movê-lo ao longo da superfície do objeto." + +msgid "Select from True Type Collection." +msgstr "Selecionar da Coleção True Type." + +msgid "Set text to face camera" +msgstr "Fazer texto para virar para a câmera" + +msgid "Orient the text towards the camera." +msgstr "Orientar o texto em direção à câmera." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"Não é possível carregar a mesma fonte exatamente (\"%1%\"). A aplicação " +"selecionou uma similar (\"%2%\"). Você deve especificar uma fonte para " +"habilitar a edição de texto." + +msgid "No symbol" +msgstr "Sem símbolo" + +msgid "Loading" +msgstr "Carregando" + +msgid "In queue" +msgstr "Na fila" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Altura" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Usar superfície" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "Por glifo" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Alinhamento" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Espaço de caractere" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Espaço de linha" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Negrito" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Proporção de inclinação" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Da superfície" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "Manter" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Coleção" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "Rotacionar SVG" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "Mover SVG" + +msgid "Enter SVG gizmo" +msgstr "Entrar no gizmo SVG" + +msgid "Leave SVG gizmo" +msgstr "Sair do gizmo SVG" + +msgid "SVG actions" +msgstr "Ações SVG" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Opacidade (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Gradiente de cor (%1%)" + +msgid "Undefined fill type" +msgstr "Tipo de preenchimento indefinido" + +msgid "Linear gradient" +msgstr "Gradiente linear" + +msgid "Radial gradient" +msgstr "Gradiente radial" + +msgid "Open filled path" +msgstr "Caminho preenchido aberto" + +msgid "Undefined stroke type" +msgstr "Tipo de traço indefinido" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "O caminho não pode ser reparado de auto-interseção e pontos múltiplos." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"A forma final contém auto-interseção ou múltiplos pontos com mesma " +"coordenada." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "A forma está marcada como invisível (%1%)." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "O preenchimento da forma (%1%) contém não suportado: %2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "O traço da forma (%1%) é muito fino (largura mínima é %2% mm)." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "O traço da forma (%1%) contém não suportado: %2%." + +msgid "Face the camera" +msgstr "Virar para a câmera" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Nome do arquivo desconhecido" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "O caminho do arquivo SVG é \"%1%\"." + +msgid "Reload SVG file from disk." +msgstr "Recarregar arquivo SVG do disco." + +msgid "Change file" +msgstr "Alterar arquivo" + +msgid "Change to another .svg file" +msgstr "Mudar para outro arquivo .svg" + +msgid "Forget the file path" +msgstr "Esquecer o caminho do arquivo" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"NÃO salve o caminho local para o arquivo 3MF.\n" +"Também desabilita a opção 'recarregar do disco'." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Assar" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Assar no modelo como peça não editável" + +msgid "Save as" +msgstr "Salvar como" + +msgid "Save SVG file" +msgstr "Salvar arquivo SVG" + +msgid "Save as '.svg' file" +msgstr "Salvar como arquivo '.svg'" + +msgid "Size in emboss direction." +msgstr "Tamanho na direção de relevo." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "A escala também altera a quantidade de amostras de curva (%1%)" + +msgid "Width of SVG." +msgstr "Largura do SVG." + +msgid "Height of SVG." +msgstr "Altura do SVG." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "Travar/destravar a proporção de aspecto do SVG." + +msgid "Reset scale" +msgstr "Redefinir escala" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "Distância do centro do SVG até a superfície do modelo." + +msgid "Reset distance" +msgstr "Redefinir distância" + +msgid "Reset rotation" +msgstr "Redefinir rotação" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "Travar/destravar o ângulo de rotação ao arrastar acima da superfície." + +msgid "Mirror vertically" +msgstr "Espelhar verticalmente" + +msgid "Mirror horizontally" +msgstr "Espelhar horizontalmente" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "Alterar tipo de SVG" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Espelhar" + +msgid "Choose SVG file for emboss:" +msgstr "Escolher arquivo SVG para relevo:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "O arquivo NÃO existe (%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "" +"O nome do arquivo precisa terminar com \".svg\", mas você selecionou %1%" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "O analisador Nano SVG não pode carregar do arquivo (%1%)." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "O arquivo SVG NÃO contém um único caminho para ser relevado (%1%)." + +msgid "Vertex" +msgstr "Vértice" + +msgid "Edge" +msgstr "Borda" + +msgid "Plane" +msgstr "Plano" + +msgid "Point on edge" +msgstr "Ponto na borda" + +msgid "Point on circle" +msgstr "Ponto no círculo" + +msgid "Point on plane" +msgstr "Ponto no plano" + +msgid "Center of edge" +msgstr "Centro da borda" + +msgid "Center of circle" +msgstr "Centro do círculo" + +msgid "ShiftLeft mouse button" +msgstr "Botão do mouse ShiftLeft" + +msgid "Select feature" +msgstr "Selecionar recurso" + +msgid "Select point" +msgstr "Selecionar ponto" + +msgid "Delete" +msgstr "Excluir" + +msgid "Restart selection" +msgstr "Reiniciar seleção" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "Desmarcar" + +msgid "Measure" +msgstr "Medir" + +msgid "Edit to scale" +msgstr "Editar para escala" + +msgctxt "Verb" +msgid "Scale" +msgstr "Escala" + +msgid "None" +msgstr "Nenhum" + +msgid "Diameter" +msgstr "Diâmetro" + +msgid "Length" +msgstr "Comprimento" + +msgid "Selection" +msgstr "Seleção" + +msgid "Copy to clipboard" +msgstr "Copiar para a área de transferência" + +msgid "Perpendicular distance" +msgstr "Distância perpendicular" + +msgid "Distance" +msgstr "Distância" + +msgid "Direct distance" +msgstr "Distância direta" + +msgid "Distance XYZ" +msgstr "Distância XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Aviso" + +msgid "Undefined" +msgstr "Indefinido" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% foi substituído por %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" +"A configuração pode ter sido gerada por uma versão mais recente do " +"Snapmaker Orca." + +msgid "Some values have been replaced. Please check them:" +msgstr "Alguns valores foram substituídos. Por favor, verifique-os:" + +msgid "Process" +msgstr "Processo" + +msgid "Filament" +msgstr "Filamento" + +msgid "Machine" +msgstr "Máquina" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"O pacote de configuração foi carregado, mas alguns valores não foram " +"reconhecidos." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"O arquivo de configuração \"%1%\" foi carregado, mas alguns valores não " +"foram reconhecidos." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca será encerrado devido à falta de memória. Pode ser um bug. " +"Agradecemos se você relatar o problema para nossa equipe." + +msgid "Fatal error" +msgstr "Erro fatal" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca será encerrado devido a um erro de localização. Agradecemos se " +"você relatar o cenário específico em que esse problema ocorreu." + +msgid "Critical error" +msgstr "Erro crítico" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca encontrou uma exceção não tratada: %1%" + +msgid "Untitled" +msgstr "Sem título" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Baixando o Plug-in de Rede Bambu" + +msgid "Login information expired. Please login again." +msgstr "As informações de login expiraram. Por favor, faça o login novamente." + +msgid "Incorrect password" +msgstr "Senha incorreta" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "Falha na conexão %s! [SN:%s, código=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca requer o tempo de execução Microsoft WebView2 para operar " +"determinados recursos.\n" +"Clique em Sim para instalá-lo agora." + +msgid "WebView2 Runtime" +msgstr "Tempo de execução WebView2" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Deseja continuar?" + +msgid "Remember my choice" +msgstr "Lembrar minha escolha" + +msgid "Loading configuration" +msgstr "Carregando configuração" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "Clique para baixar a nova versão no navegador padrão: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "O Snapmaker Orca precisa ser atualizado" + +msgid "This is the newest version." +msgstr "Esta é a versão mais recente." + +msgid "Info" +msgstr "Informações" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"O arquivo de configuração do Snapmaker Orca pode estar corrompido e não pode ser " +"analisado.\n" +"O Snapmaker Orca tentou recriar o arquivo de configuração.\n" +"Por favor, note que as configurações do aplicativo serão perdidas, mas os " +"perfis de impressora não serão afetados." + +msgid "Rebuild" +msgstr "Reconstruindo" + +msgid "Loading current presets" +msgstr "Carregando presets atuais" + +msgid "Loading a mode view" +msgstr "Carregando uma visualização de modo" + +msgid "Choose one file (3mf):" +msgstr "Escolha um arquivo (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "Escolha um ou mais arquivos (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Escolha um ou mais arquivos (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "Escolha o arquivo ZIP" + +msgid "Choose one file (gcode/3mf):" +msgstr "Escolha um arquivo (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "Alguns presets foram modificados." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Você pode manter os modelos modificados no novo projeto, descartar ou salvar " +"as alterações como novos modelos." + +msgid "User logged out" +msgstr "Usuário desconectado" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" +"criar ou abrir um arquivo de projeto novo não é permitido durante o processo " +"de fatiamento!" + +msgid "Open Project" +msgstr "Abrir Projeto" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"A versão do Snapmaker Orca é muito antiga e precisa ser atualizada para a " +"versão mais recente antes de poder ser usada normalmente" + +msgid "Privacy Policy Update" +msgstr "Atualização da Política de Privacidade" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"O número de presets de usuário em cache na nuvem excedeu o limite superior, " +"os presets de usuário recém-criados só podem ser usados localmente." + +msgid "Sync user presets" +msgstr "Sincronizar presets do usuário" + +msgid "Loading user preset" +msgstr "Carregando preset do usuário" + +msgid "Switching application language" +msgstr "Alterando o idioma do aplicativo" + +msgid "Select the language" +msgstr "Selecione o idioma" + +msgid "Language" +msgstr "Idioma" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Os envios ainda estão em andamento" + +msgid "Stop them and continue anyway?" +msgstr "Para-los e continuar mesmo assim?" + +msgid "Ongoing uploads" +msgstr "Envios em andamento" + +msgid "Select a G-code file:" +msgstr "Selecione um arquivo G-code:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"Não foi possível baixar da URL. A pasta de destino não está definida. Por " +"favor, escolha a pasta de destino no Assistente de Configuração." + +msgid "Import File" +msgstr "Importar Arquivo" + +msgid "Choose files" +msgstr "Escolher arquivos" + +msgid "New Folder" +msgstr "Nova Pasta" + +msgid "Open" +msgstr "Abrir" + +msgid "Rename" +msgstr "Renomear" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Falha na inicialização da interface do Snapmaker Orca" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Erro fatal, exceção capturada: %1%" + +msgid "Quality" +msgstr "Qualidade" + +msgid "Shell" +msgstr "Parede" + +msgid "Infill" +msgstr "Preenchimento" + +msgid "Support" +msgstr "Suporte" + +msgid "Flush options" +msgstr "Opções de purga" + +msgid "Speed" +msgstr "Velocidade" + +msgid "Strength" +msgstr "Resistência" + +msgid "Top Solid Layers" +msgstr "Camadas Sólidas Superiores" + +msgid "Top Minimum Shell Thickness" +msgstr "Espessura Mínima da Parede Superior" + +msgid "Bottom Solid Layers" +msgstr "Camadas Sólidas Inferiores" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Espessura Mínima da Parede Inferior" + +msgid "Ironing" +msgstr "Passar ferro" + +msgid "Fuzzy Skin" +msgstr "Textura Fuzzy" + +msgid "Extruders" +msgstr "Extrusoras" + +msgid "Extrusion Width" +msgstr "Largura da Extrusão" + +msgid "Wipe options" +msgstr "Opções de limpeza" + +msgid "Bed adhesion" +msgstr "Adesão à Mesa" + +msgid "Add part" +msgstr "Adicionar Peça" + +msgid "Add negative part" +msgstr "Adicionar Peça Negativa" + +msgid "Add modifier" +msgstr "Adicionar Modificador" + +msgid "Add support blocker" +msgstr "Adicionar Bloqueador de Suporte" + +msgid "Add support enforcer" +msgstr "Adicionar Reforço de Suporte" + +msgid "Add text" +msgstr "Adicionar Texto" + +msgid "Add negative text" +msgstr "Adicionar Texto Negativo" + +msgid "Add text modifier" +msgstr "Adicionar Modificador de Texto" + +msgid "Add SVG part" +msgstr "Adicionar Peça SVG" + +msgid "Add negative SVG" +msgstr "Adicionar SVG Negativo" + +msgid "Add SVG modifier" +msgstr "Adicionar Modificador SVG" + +msgid "Select settings" +msgstr "Selecionar Configurações" + +msgid "Hide" +msgstr "Ocultar" + +msgid "Show" +msgstr "Mostrar" + +msgid "Del" +msgstr "Apagar" + +msgid "Delete the selected object" +msgstr "Apagar o objeto selecionado" + +msgid "Load..." +msgstr "Carregar..." + +msgid "Cube" +msgstr "Cubo" + +msgid "Cylinder" +msgstr "Cilindro" + +msgid "Cone" +msgstr "Cone" + +msgid "Disc" +msgstr "Disco" + +msgid "Torus" +msgstr "Toro" + +msgid "Orca Cube" +msgstr "Cubo Orca" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Teste Autodesk FDM" + +msgid "Voron Cube" +msgstr "Cubo Voron" + +msgid "Stanford Bunny" +msgstr "Stanford Bunny" + +msgid "Orca String Hell" +msgstr "Orca String Hell" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Este modelo possui texto em alto relevo na superfície superior. Para obter " +"os melhores resultados, é aconselhável definir o 'Limiar de perímetro " +"único'\n" +" (min_width_top_surface)' como 0 para que 'Apenas uma Parede nas Superfícies " +"Superiores' funcione melhor.\n" +"Sim - Alterar essas configurações automaticamente\n" +"Não - Não alterar essas configurações para mim" + +msgid "Text" +msgstr "Texto" + +msgid "Height range Modifier" +msgstr "Modificador em altura" + +msgid "Add settings" +msgstr "Adicionar Configurações" + +msgid "Change type" +msgstr "Alterar tipo" + +msgid "Set as an individual object" +msgstr "Definir como objeto individual" + +msgid "Set as individual objects" +msgstr "Definir como objetos individuais" + +msgid "Fill bed with copies" +msgstr "Preencher a mesa com cópias" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Preencher a área restante da mesa com cópias do objeto selecionado" + +msgid "Printable" +msgstr "Imprimível" + +msgid "Fix model" +msgstr "Corrigir modelo" + +msgid "Export as one STL" +msgstr "Exportar como um STL" + +msgid "Export as STLs" +msgstr "Exportar como STLs" + +msgid "Reload from disk" +msgstr "Recarregar do disco" + +msgid "Reload the selected parts from disk" +msgstr "Recarregar as peças selecionadas do disco" + +msgid "Replace with STL" +msgstr "Substituir por STL" + +msgid "Replace the selected part with new STL" +msgstr "Substituir a peça selecionada por um novo STL" + +msgid "Change filament" +msgstr "Alterar filamento" + +msgid "Set filament for selected items" +msgstr "Definir filamento para itens selecionados" + +msgid "Default" +msgstr "Padrão" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filamento %d" + +msgid "current" +msgstr "atual" + +msgid "Scale to build volume" +msgstr "Dimensionar para o volume de impressão" + +msgid "Scale an object to fit the build volume" +msgstr "Dimensionar um objeto para caber no volume de impressão" + +msgid "Flush Options" +msgstr "Opções de Purga" + +msgid "Flush into objects' infill" +msgstr "Purgar no preenchimento dos objetos" + +msgid "Flush into this object" +msgstr "Purgar neste objeto" + +msgid "Flush into objects' support" +msgstr "Purgar nos suportes dos objetos" + +msgid "Edit in Parameter Table" +msgstr "Editar na Tabela de Parâmetros" + +msgid "Convert from inch" +msgstr "Converter de polegada" + +msgid "Restore to inch" +msgstr "Restaurar para polegadas" + +msgid "Convert from meter" +msgstr "Converter de metro" + +msgid "Restore to meter" +msgstr "Restaurar para metros" + +msgid "Assemble" +msgstr "Montar" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Montar os objetos selecionados em um objeto com várias peças" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Montar os objetos selecionados em um objeto com uma única peça" + +msgid "Mesh boolean" +msgstr "Operações booleanas" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Operações booleanas incluindo união e subtração" + +msgid "Along X axis" +msgstr "Ao longo do eixo X" + +msgid "Mirror along the X axis" +msgstr "Espelhar ao longo do eixo X" + +msgid "Along Y axis" +msgstr "Ao longo do eixo Y" + +msgid "Mirror along the Y axis" +msgstr "Espelhar ao longo do eixo Y" + +msgid "Along Z axis" +msgstr "Ao longo do eixo Z" + +msgid "Mirror along the Z axis" +msgstr "Espelhar ao longo do eixo Z" + +msgid "Mirror object" +msgstr "Espelhar objeto" + +msgid "Edit text" +msgstr "Editar Texto" + +msgid "Ability to change text, font, size, ..." +msgstr "Capacidade de alterar texto, fonte, tamanho, ..." + +msgid "Edit SVG" +msgstr "Editar SVG" + +msgid "Change SVG source file, projection, size, ..." +msgstr "Alterar arquivo fonte SVG, projeção, tamanho, ..." + +msgid "Invalidate cut info" +msgstr "Invalidar informações de corte" + +msgid "Add Primitive" +msgstr "Adicionar Primitivo" + +msgid "Add Handy models" +msgstr "Adicionar Modelos Úteis" + +msgid "Add Models" +msgstr "Adicionar Modelos" + +msgid "Show Labels" +msgstr "Mostrar Etiquetas" + +msgid "To objects" +msgstr "Para Objetos" + +msgid "Split the selected object into multiple objects" +msgstr "Dividir o objeto selecionado em vários objetos" + +msgid "To parts" +msgstr "Para Peças" + +msgid "Split the selected object into multiple parts" +msgstr "Dividir o objeto selecionado em várias peças" + +msgid "Split" +msgstr "Dividir" + +msgid "Split the selected object" +msgstr "Dividir o objeto selecionado" + +msgid "Auto orientation" +msgstr "Orientação Automática" + +msgid "Auto orient the object to improve print quality." +msgstr "" +"Orientar automaticamente o objeto para melhorar a qualidade de impressão." + +msgid "Select All" +msgstr "Selecionar Tudo" + +msgid "select all objects on current plate" +msgstr "selecionar todos os objetos na mesa atual" + +msgid "Delete All" +msgstr "Apagar Tudo" + +msgid "delete all objects on current plate" +msgstr "apagar todos os objetos na mesa atual" + +msgid "Arrange" +msgstr "Organizar" + +msgid "arrange current plate" +msgstr "organizar mesa atual" + +msgid "Reload All" +msgstr "Recarregar Tudo" + +msgid "reload all from disk" +msgstr "Recarregar tudo do disco" + +msgid "Auto Rotate" +msgstr "Auto-orientação" + +msgid "auto rotate current plate" +msgstr "girar automaticamente a mesa atual" + +msgid "Delete Plate" +msgstr "Apagar Mesa" + +msgid "Remove the selected plate" +msgstr "Remover a mesa selecionada" + +msgid "Clone" +msgstr "Clonar" + +msgid "Simplify Model" +msgstr "Simplificar Modelo" + +msgid "Center" +msgstr "Centralizar" + +msgid "Edit Process Settings" +msgstr "Editar Configurações de Processo" + +msgid "Edit print parameters for a single object" +msgstr "Editar parâmetros de impressão para um único objeto" + +msgid "Change Filament" +msgstr "Mudar Filamento" + +msgid "Set Filament for selected items" +msgstr "Definir Filamento para itens selecionados" + +msgid "Unlock" +msgstr "Desbloquear" + +msgid "Lock" +msgstr "Bloquear" + +msgid "Edit Plate Name" +msgstr "Editar Nome da Mesa" + +msgid "Name" +msgstr "Nome" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d erro reparado" +msgstr[1] "%1$d erros reparados" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Erro: %1$d aresta não-manifold." +msgstr[1] "Erro: %1$d arestas não-manifold." + +msgid "Remaining errors" +msgstr "Erros restantes" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d aresta não-manifold" +msgstr[1] "%1$d arestas não-manifold" + +msgid "Right click the icon to fix model object" +msgstr "Clique com o botão direito no ícone para corrigir o objeto do modelo" + +msgid "Right button click the icon to drop the object settings" +msgstr "" +"Clique com o botão direito no ícone para descartar as configurações do objeto" + +msgid "Click the icon to reset all settings of the object" +msgstr "Clique no ícone para redefinir todas as configurações do objeto" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Clique com o botão direito no ícone para descartar a propriedade imprimível " +"do objeto" + +msgid "Click the icon to toggle printable property of the object" +msgstr "Clique no ícone para alternar a propriedade imprimível do objeto" + +msgid "Click the icon to edit support painting of the object" +msgstr "Clique no ícone para editar a pintura de suporte do objeto" + +msgid "Click the icon to edit color painting of the object" +msgstr "Clique no ícone para editar a pintura de cor do objeto" + +msgid "Click the icon to shift this object to the bed" +msgstr "Clique no ícone para mover este objeto para a base" + +msgid "Loading file" +msgstr "Carregando arquivo" + +msgid "Error!" +msgstr "Erro!" + +msgid "Failed to get the model data in the current file." +msgstr "Falha ao obter os dados do modelo no arquivo atual." + +msgid "Generic" +msgstr "Genérico" + +msgid "Add Modifier" +msgstr "Adicionar Modificador" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "Mude para o modo de configuração por objeto para editar modificadores." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Mude para o modo de configuração por objeto para editar processos dos " +"objetos selecionados." + +msgid "Delete connector from object which is a part of cut" +msgstr "Excluir conector do objeto que é parte do corte" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Excluir peça sólida do objeto que é peça do corte" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Excluir volume negativo do objeto que é parte do corte" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Para salvar a correspondência de corte, você pode excluir todos os " +"conectores de todos os objetos relacionados." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"Esta ação irá quebrar a correspondência de corte.\n" +"Depois disso, a consistência do modelo não pode ser garantida.\n" +"\n" +"Para manipular peças sólidas ou volumes negativos, você deve invalidar as " +"informações de corte primeiro." + +msgid "Delete all connectors" +msgstr "Excluir todos os conectores" + +msgid "Deleting the last solid part is not allowed." +msgstr "Não é permitido excluir a última peça sólida." + +msgid "The target object contains only one part and can not be splited." +msgstr "O objeto de destino contém apenas uma peça e não pode ser dividido." + +msgid "Assembly" +msgstr "Montagem" + +msgid "Cut Connectors information" +msgstr "Informação de Conectores de Corte" + +msgid "Object manipulation" +msgstr "Manipulação de objeto" + +msgid "Group manipulation" +msgstr "Manipulação de grupo" + +msgid "Object Settings to modify" +msgstr "Configurações de objeto para modificar" + +msgid "Part Settings to modify" +msgstr "Configurações de peça para modificar" + +msgid "Layer range Settings to modify" +msgstr "Configurações de Intervalo de Camada para modificar" + +msgid "Part manipulation" +msgstr "Manipulação de peça" + +msgid "Instance manipulation" +msgstr "Manipulação de instância" + +msgid "Height ranges" +msgstr "Intervalos de altura" + +msgid "Settings for height range" +msgstr "Configurações para intervalo de altura" + +msgid "Layer" +msgstr "Camada" + +msgid "Selection conflicts" +msgstr "Conflitos de seleção" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Se o primeiro item selecionado for um objeto, o segundo também deve ser um " +"objeto." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Se o primeiro item selecionado for uma peça, o segundo deve ser uma peça no " +"mesmo objeto." + +msgid "The type of the last solid object part is not to be changed." +msgstr "O tipo da última peça do objeto sólido não deve ser alterado." + +msgid "Negative Part" +msgstr "Peça Negativa" + +msgid "Support Blocker" +msgstr "Bloqueador de Suporte" + +msgid "Support Enforcer" +msgstr "Reforço de Suporte" + +msgid "Type:" +msgstr "Tipo:" + +msgid "Choose part type" +msgstr "Escolha o tipo de peça" + +msgid "Enter new name" +msgstr "Digite um novo nome" + +msgid "Renaming" +msgstr "Renomeando" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "O seguinte objeto do modelo foi reparado" +msgstr[1] "Os seguintes objetos do modelo foram reparados" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Falha ao reparar o seguinte objeto do modelo" +msgstr[1] "Falha ao reparar os seguintes objetos do modelo" + +msgid "Repairing was canceled" +msgstr "A reparação foi cancelada" + +msgid "Additional process preset" +msgstr "Preset de processo adicional" + +msgid "Remove parameter" +msgstr "Remover parâmetro" + +msgid "to" +msgstr "para" + +msgid "Remove height range" +msgstr "Remover intervalo de altura" + +msgid "Add height range" +msgstr "Adicionar intervalo de altura" + +msgid "Invalid numeric." +msgstr "Número inválido." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"uma célula só pode ser copiada para uma ou várias células na mesma coluna" + +msgid "multiple cells copy is not supported" +msgstr "a cópia de múltiplas células não é suportada" + +msgid "Outside" +msgstr "Fora da Mesa" + +msgid "Layer height" +msgstr "Altura da camada" + +msgid "Wall loops" +msgstr "Perímetros" + +msgid "Infill density(%)" +msgstr "Densidade do preenchimento(%)" + +msgid "Auto Brim" +msgstr "Borda automática" + +msgid "Mouse ear" +msgstr "Orelha de rato" + +msgid "Outer brim only" +msgstr "Somente borda externa" + +msgid "Inner brim only" +msgstr "Somente borda interna" + +msgid "Outer and inner brim" +msgstr "Borda externa e interna" + +msgid "No-brim" +msgstr "Sem borda" + +msgid "Outer wall speed" +msgstr "Velocidade do perímetro externo" + +msgid "Plate" +msgstr "Mesa" + +msgid "Brim" +msgstr "Borda" + +msgid "Object/Part Setting" +msgstr "Configuração de Objeto/Peça" + +msgid "Reset parameter" +msgstr "Redefinir parâmetro" + +msgid "Multicolor Print" +msgstr "Impressão Multicolorida" + +msgid "Line Type" +msgstr "Tipo de Linha" + +msgid "More" +msgstr "Mais" + +msgid "Open Preferences." +msgstr "Abrir Preferências." + +msgid "Open next tip." +msgstr "Abrir próxima dica." + +msgid "Open Documentation in web browser." +msgstr "Abrir Documentação no navegador." + +msgid "Color" +msgstr "Cor" + +msgid "Pause" +msgstr "Pausa" + +msgid "Template" +msgstr "Modelo" + +msgid "Custom" +msgstr "Personalizado" + +msgid "Pause:" +msgstr "Pausa:" + +msgid "Custom Template:" +msgstr "Modelo Personalizado:" + +msgid "Custom G-code:" +msgstr "G-Code Personalizado:" + +msgid "Custom G-code" +msgstr "G-Code Personalizado" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Insira o G-code personalizado usado na camada atual:" + +msgid "Jump to Layer" +msgstr "Ir para a Camada" + +msgid "Please enter the layer number" +msgstr "Por favor, insira o número da camada" + +msgid "Add Pause" +msgstr "Adicionar Pausa" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Inserir um comando de pausa no início desta camada." + +msgid "Add Custom G-code" +msgstr "Adicionar G-Code Personalizado" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Inserir G-Code personalizado no início desta camada." + +msgid "Add Custom Template" +msgstr "Adicionar Modelo Personalizado" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Inserir modelo de G-Code personalizado no início desta camada." + +msgid "Filament " +msgstr "Filamento " + +msgid "Change filament at the beginning of this layer." +msgstr "Trocar o filamento no início desta camada." + +msgid "Delete Pause" +msgstr "Excluir Pausa" + +msgid "Delete Custom Template" +msgstr "Excluir Modelo Personalizado" + +msgid "Edit Custom G-code" +msgstr "Editar G-Code Personalizado" + +msgid "Delete Custom G-code" +msgstr "Excluir G-Code Personalizado" + +msgid "Delete Filament Change" +msgstr "Excluir Troca de Filamento" + +msgid "No printer" +msgstr "Sem impressora" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Falha ao conectar ao servidor" + +msgid "Check the status of current system services" +msgstr "Verificar o estado dos serviços de sistema atuais" + +msgid "code" +msgstr "código" + +msgid "Failed to connect to cloud service" +msgstr "Falha ao conectar ao serviço de nuvem" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "" +"Por favor, clique no link acima para visualizar o status do serviço de nuvem" + +msgid "Failed to connect to the printer" +msgstr "Falha ao conectar à impressora" + +msgid "Connection to printer failed" +msgstr "Falha na conexão com a impressora" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Por favor, verifique a conexão de rede da impressora e do Orca." + +msgid "Connecting..." +msgstr "Conectando..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Vazio" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Recarga Automática" + +msgid "AMS not connected" +msgstr "AMS não conectado" + +msgid "Load" +msgstr "Carregar" + +msgid "Unload" +msgstr "Descarregar" + +msgid "Ext Spool" +msgstr "Carretel Ext." + +msgid "Tips" +msgstr "Dicas" + +msgid "Guide" +msgstr "Guia" + +msgid "Retry" +msgstr "Tentar Novamente" + +msgid "Calibrating AMS..." +msgstr "Calibrando AMS..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "Ocorreu um problema durante a calibração. Clique para ver a solução." + +msgid "Calibrate again" +msgstr "Calibrar novamente" + +msgid "Cancel calibration" +msgstr "Cancelar calibração" + +msgid "Idling..." +msgstr "Em espera..." + +msgid "Heat the nozzle" +msgstr "Aquecer o bico" + +msgid "Cut filament" +msgstr "Cortar filamento" + +msgid "Pull back current filament" +msgstr "Retirar o filamento atual" + +msgid "Push new filament into extruder" +msgstr "Inserir novo filamento na extrusora" + +msgid "Purge old filament" +msgstr "Purgar filamento antigo" + +msgid "Feed Filament" +msgstr "Alimentar Filamento" + +msgid "Confirm extruded" +msgstr "Confirmar extrusão" + +msgid "Check filament location" +msgstr "Verificar localização do filamento" + +msgid "Grab new filament" +msgstr "Pegar novo filamento" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Escolha um slot AMS e pressione o botão \"Carregar\" ou \"Descarregar\" para " +"carregar ou descarregar automaticamente o filamento." + +msgid "Edit" +msgstr "Editar" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Todos os objetos selecionados estão na mesa bloqueada,\n" +"Não podemos fazer o auto-posicionamento nesses objetos." + +msgid "No arrangable objects are selected." +msgstr "Nenhum objeto disponível para posicionamento foi selecionado." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Esta mesa está bloqueada,\n" +"Não podemos fazer o auto-posicionamento nesta mesa." + +msgid "Arranging..." +msgstr "Organizando..." + +msgid "Arranging" +msgstr "Organizando" + +msgid "Arranging canceled." +msgstr "Organização cancelada." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"A organização foi concluída, mas há itens desembalados. Reduza o espaçamento " +"e tente novamente." + +msgid "Arranging done." +msgstr "Organização concluída." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Organização falhou. Encontrou algumas exceções ao processar geometrias de " +"objetos." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"A organização ignorou os seguintes objetos que não podem caber em uma única " +"mesa:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Todos os objetos selecionados estão na mesa bloqueada,\n" +"Não podemos fazer a auto-orientação nesses objetos." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Esta mesa está bloqueada,\n" +"Não podemos fazer a auto-orientação nesta mesa." + +msgid "Orienting..." +msgstr "Orientando..." + +msgid "Orienting" +msgstr "Orientando" + +msgid "Orienting canceled." +msgstr "Orientação cancelada." + +msgid "Filling" +msgstr "Preenchendo" + +msgid "Bed filling canceled." +msgstr "Preenchimento da mesa cancelado." + +msgid "Bed filling done." +msgstr "Preenchimento da mesa concluído." + +msgid "Searching for optimal orientation" +msgstr "Buscando melhor orientação" + +msgid "Orientation search canceled." +msgstr "Busca de orientação cancelada." + +msgid "Orientation found." +msgstr "Orientação encontrada." + +msgid "Logging in" +msgstr "Conectando-se" + +msgid "Login failed" +msgstr "Falha no login" + +msgid "Please check the printer network connection." +msgstr "Por favor, verifique a conexão de rede da impressora." + +msgid "Abnormal print file data. Please slice again." +msgstr "Dados de arquivo de impressão anormais. Por favor, fatie novamente." + +msgid "Task canceled." +msgstr "Tarefa cancelada." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"O tempo para envio da tarefa expirou. Verifique o estado da rede e tente " +"novamente." + +msgid "Cloud service connection failed. Please try again." +msgstr "Falha na conexão com o serviço de nuvem. Por favor, tente novamente." + +msgid "Print file not found. please slice again." +msgstr "Arquivo de impressão não encontrado. Por favor, fatie novamente." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"O arquivo de impressão excede o tamanho máximo permitido (1GB). Por favor, " +"simplifique o modelo e fatie novamente." + +msgid "Failed to send the print job. Please try again." +msgstr "Falha ao enviar o trabalho de impressão. Por favor, tente novamente." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Falha ao enviar o arquivo via FTP. Por favor, tente novamente." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "Verifique o estado atual do servidor Bambu clicando no link acima." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"O tamanho do arquivo de impressão é muito grande. Por favor, ajuste o " +"tamanho do arquivo e tente novamente." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" +"Arquivo de impressão não encontrado. Por favor, fatie-o novamente e envie " +"para impressão." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Falha ao enviar o arquivo de impressão via FTP. Por favor, verifique o " +"estado da rede e tente novamente." + +msgid "Sending print job over LAN" +msgstr "Enviando trabalho de impressão via LAN" + +msgid "Sending print job through cloud service" +msgstr "Enviando trabalho de impressão através do serviço de nuvem" + +msgid "Print task sending times out." +msgstr "O envio da tarefa de impressão expirou." + +msgid "Service Unavailable" +msgstr "Serviço Indisponível" + +msgid "Unknown Error." +msgstr "Erro Desconhecido." + +msgid "Sending print configuration" +msgstr "Enviando configuração de impressão" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "" +"Enviado com sucesso. Irá saltar automaticamente para a página do dispositivo " +"em %ss" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "" +"Enviado com sucesso. Irá saltar automaticamente para a próxima página em %ss" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "Um cartão SD precisa ser inserido antes de imprimir via LAN." + +msgid "Sending gcode file over LAN" +msgstr "Enviando arquivo de G-Code via LAN" + +msgid "Sending gcode file to sdcard" +msgstr "Enviando arquivo de G-Code para o cartão SD" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Enviado com sucesso. Feche a página atual em %s s" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Um cartão SD precisa ser inserido antes de enviar para a impressora." + +msgid "Importing SLA archive" +msgstr "Importando arquivo SLA" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"O arquivo SLA não contém nenhum perfil. Por favor, ative alguns perfis de " +"impressora SLA antes de importar esse arquivo SLA." + +msgid "Importing canceled." +msgstr "Importação cancelada." + +msgid "Importing done." +msgstr "Importação concluída." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"O arquivo SLA importado não contém nenhum perfil. Os perfis SLA atuais foram " +"usados como alternativa." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "" +"Você não pode carregar um projeto SLA com um objeto de várias peças na mesa" + +msgid "Please check your object list before preset changing." +msgstr "" +"Por favor, verifique sua lista de objetos antes de mudar a configuração " +"predefinida." + +msgid "Attention!" +msgstr "Atenção!" + +msgid "Downloading" +msgstr "Baixando" + +msgid "Download failed" +msgstr "Falha no download" + +msgid "Cancelled" +msgstr "Cancelado" + +msgid "Install successfully." +msgstr "Instalação concluída com sucesso." + +msgid "Installing" +msgstr "Instalando" + +msgid "Install failed" +msgstr "Falha na instalação" + +msgid "Portions copyright" +msgstr "Partes com direitos autorais" + +msgid "Copyright" +msgstr "Direitos autorais" + +msgid "License" +msgstr "Licença" + +msgid "Snapmaker Orca is licensed under " +msgstr "O Snapmaker Orca é licenciado sob " + +msgid "GNU Affero General Public License, version 3" +msgstr "Licença Pública Geral Affero GNU, versão 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca is Based on Orca Slicer" + +msgid "Libraries" +msgstr "Bibliotecas" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Este software utiliza componentes open source cujos direitos autorais e " +"outros direitos de propriedade pertencem aos seus respectivos proprietários" + +#, c-format, boost-format +msgid "About %s" +msgstr "Sobre %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca é baseado no BambuStudio, PrusaSlicer e SuperSlicer." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "BambuStudio é originalmente baseado no PrusaSlicer pela PrusaResearch." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "" +"PrusaSlicer é originalmente baseado no Slic3r por Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r foi criado por Alessandro Ranellucci com a ajuda de muitos outros " +"colaboradores." + +msgid "Version" +msgstr "Versão" + +msgid "AMS Materials Setting" +msgstr "Configuração de Materiais AMS" + +msgid "Confirm" +msgstr "Confirmar" + +msgid "Close" +msgstr "Fechar" + +msgid "Colour" +msgstr "Cor" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Bico\n" +"Temperatura" + +msgid "max" +msgstr "máx" + +msgid "min" +msgstr "min." + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "O valor de entrada deve ser maior que %1% e menor que %2%" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "" +"A configuração das informações do slot AMS durante a impressão não é " +"suportada" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Fatores de Calibração de Dinâmica de Fluxo" + +msgid "PA Profile" +msgstr "Perfil PA" + +msgid "Factor K" +msgstr "Fator K" + +msgid "Factor N" +msgstr "Fator N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "" +"A configuração de informações do slot virtual durante a impressão não é " +"suportada" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Tem certeza de que deseja limpar as informações do filamento?" + +msgid "You need to select the material type and color first." +msgstr "Você precisa selecionar o tipo e a cor do material primeiro." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" + +msgid "Other Color" +msgstr "Outra Cor" + +msgid "Custom Color" +msgstr "Cor Personalizada" + +msgid "Dynamic flow calibration" +msgstr "Calibração dinâmica do fluxo" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"A temperatura do bico e a fluxo volumétrico máximo afetarão os resultados da " +"calibração. Preencha os mesmos valores que a impressão atual. Eles podem ser " +"preenchidos automaticamente selecionando um perfil de filamento." + +msgid "Nozzle Diameter" +msgstr "Diâmetro do bico" + +msgid "Bed Type" +msgstr "Tipo de Mesa" + +msgid "Nozzle temperature" +msgstr "Temperatura do bico" + +msgid "Bed Temperature" +msgstr "Temperatura da Mesa" + +msgid "Max volumetric speed" +msgstr "Fluxo volumétrico máximo" + +msgid "℃" +msgstr "°C" + +msgid "Bed temperature" +msgstr "Temperatura da mesa" + +msgid "mm³" +msgstr "mm3" + +msgid "Start calibration" +msgstr "Iniciar calibração" + +msgid "Next" +msgstr "Próximo" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Calibração concluída. Por favor, encontre a linha de extrusão mais uniforme " +"na sua mesa aquecida como na imagem abaixo, e preencha o valor do seu lado " +"esquerdo na caixa de entrada do fator K." + +msgid "Save" +msgstr "Salvar" + +msgid "Last Step" +msgstr "Última Etapa" + +msgid "Example" +msgstr "Exemplo" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Calibrando... %d%%" + +msgid "Calibration completed" +msgstr "Calibração concluída" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s não suporta %s" + +msgid "Dynamic flow Calibration" +msgstr "Calibração de Fluxo Dinâmico" + +msgid "Step" +msgstr "Passo" + +msgid "AMS Slots" +msgstr "Espaços do AMS" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Nota: Apenas os espaços do AMS carregados com o mesmo tipo de material podem " +"ser selecionadas." + +msgid "Enable AMS" +msgstr "Ativar AMS" + +msgid "Print with filaments in the AMS" +msgstr "Imprimir com filamentos no AMS" + +msgid "Disable AMS" +msgstr "Desativar AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Imprimir com o filamento montado na parte de trás do chassi" + +msgid "Current Cabin humidity" +msgstr "Umidade da cabine atual" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Por favor, mude o dessecante quando estiver muito molhado. O indicador pode " +"não representar com precisão nos casos a seguir: quando a tampa está aberta " +"ou quando o dessecante é trocado. Leva horas para absorver a umidade, baixas " +"temperaturas também atrasam o processo." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Configure qual espaço do AMS deve ser usado para um filamento usado no " +"trabalho de impressão" + +msgid "Filament used in this print job" +msgstr "Filamento usado neste trabalho de impressão" + +msgid "AMS slot used for this filament" +msgstr "Espaço do AMS usado para este filamento" + +msgid "Click to select AMS slot manually" +msgstr "Clique para selecionar o espaço do AMS" + +msgid "Do not Enable AMS" +msgstr "Não ativar AMS" + +msgid "Print using materials mounted on the back of the case" +msgstr "Imprimir usando materiais montados na parte de trás da caixa" + +msgid "Print with filaments in ams" +msgstr "Imprimir com filamentos no AMS" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Imprimir com filamentos montados na parte de trás do chassi" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Quando o material atual acabar, a impressora continuará a imprimir na " +"seguinte ordem." + +msgid "Group" +msgstr "Grupo" + +msgid "The printer does not currently support auto refill." +msgstr "A impressora atualmente não suporta recarga automática." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"O backup de filamento do AMS não está ativado, por favor, ative-o nas " +"configurações do AMS." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"Se houver dois filamentos idênticos no AMS, o backup de filamento do AMS " +"será ativado. \n" +"(Funciona atualmente com recarga automática de filamentos da mesma marca, " +"tipo de material e cor)" + +msgid "DRY" +msgstr "SECO" + +msgid "WET" +msgstr "MOLHADO" + +msgid "AMS Settings" +msgstr "Configurações do AMS" + +msgid "Insertion update" +msgstr "Atualização de inserção" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"O AMS irá ler automaticamente as informações do filamento ao inserir um novo " +"filamento da Bambu Lab. Isso leva cerca de 20 segundos." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Nota: se um novo filamento for inserido durante a impressão, o AMS não irá " +"ler automaticamente nenhuma informação até que a impressão seja concluída." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Ao inserir um novo filamento, o AMS não irá ler automaticamente suas " +"informações, deixando-o em branco para você inserir manualmente." + +msgid "Power on update" +msgstr "Atualização de inicialização" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"O AMS irá ler automaticamente as informações do filamento inserido na " +"inicialização. Levará cerca de 1 minuto. O processo de leitura irá girar as " +"bobinas de filamento." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"O AMS não irá ler automaticamente informações do filamento inserido durante " +"a inicialização e continuará a usar as informações registradas antes do " +"último desligamento." + +msgid "Update remaining capacity" +msgstr "Atualizar capacidade restante" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"O AMS irá estimar a capacidade restante do filamento Bambu após as " +"informações do filamento serem atualizadas. Durante a impressão, a " +"capacidade restante será atualizada automaticamente." + +msgid "AMS filament backup" +msgstr "Backup de filamento do AMS" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"O AMS continuará para outra bobina com as mesmas propriedades do filamento " +"automaticamente quando o filamento atual acabar" + +msgid "Air Printing Detection" +msgstr "Detecção de Impressão Aérea" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Detecta o entupimento e erosão de filamento, parando a impressão " +"imediatamente para conservar tempo e filamento." + +msgid "File" +msgstr "Arquivo" + +msgid "Calibration" +msgstr "Calibração" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Falha ao baixar o plug-in. Verifique as configurações do seu firewall e " +"software vpn, verifique e tente novamente." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Falha ao instalar o plug-in. Verifique se ele está bloqueado ou excluído " +"pelo software antivírus." + +msgid "click here to see more info" +msgstr "clique aqui para ver mais informações" + +msgid "Please home all axes (click " +msgstr "Por favor, mandar a origem todos os eixos (clique " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") para localizar a posição da extrusora. Isso impede que o dispositivo se " +"mova além do limite imprimível e cause desgaste no equipamento." + +msgid "Go Home" +msgstr "Ir para Ínicio" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Ocorreu um erro. Talvez a memória do sistema não seja suficiente ou seja um " +"bug do programa" + +msgid "Please save project and restart the program. " +msgstr "Por favor, salve o projeto e reinicie o programa. " + +msgid "Processing G-Code from Previous file..." +msgstr "Processando G-Code do arquivo anterior..." + +msgid "Slicing complete" +msgstr "Fatiamento concluído" + +msgid "Access violation" +msgstr "Violação de acesso" + +msgid "Illegal instruction" +msgstr "Instrução ilegal" + +msgid "Divide by zero" +msgstr "Dividir por zero" + +msgid "Overflow" +msgstr "Estouro" + +msgid "Underflow" +msgstr "Subfluxo" + +msgid "Floating reserved operand" +msgstr "Operando flutuante reservado" + +msgid "Stack overflow" +msgstr "Estouro de pilha" + +msgid "Running post-processing scripts" +msgstr "Executando scripts de pós-processamento" + +msgid "Successfully executed post-processing script" +msgstr "Script de pós-processamento executado com êxito" + +msgid "Unknown error occured during exporting G-code." +msgstr "Ocorreu um erro desconhecido ao exportar G-code." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"A cópia do G-code temporário para o G-code de saída falhou. Talvez o cartão " +"SD esteja bloqueado?\n" +"Mensagem de erro: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"A cópia do G-code temporário para o G-code de saída falhou. Pode haver " +"problema com o dispositivo de destino, por favor, tente exportar novamente " +"ou usar outro dispositivo. O G-code de saída corrompido está em %1%.tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"Renomear o G-code após copiar para a pasta destino selecionada falhou. O " +"caminho atual é %1%.tmp. Por favor, tente exportar novamente." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"A cópia do G-code temporário foi concluída, mas o código original em %1% não " +"pôde ser aberto durante a verificação da cópia. O G-gode de saída está em " +"%2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"A cópia do G-code temporário foi concluída, mas o código exportado não pôde " +"ser aberto durante a verificação da cópia. O G-code de saída está em %1%.tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "Arquivo G-code exportado para %1%" + +msgid "Unknown error when export G-code." +msgstr "Erro desconhecido ao exportar G-Code." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Falha ao salvar arquivo de G-Code.\n" +"Mensagem de erro: %1%.\n" +"Arquivo de origem %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Cópia do G-Code temporário para o G-Code de saída falhou" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Agendando o envio para `%1%`. Veja Janela -> Fila de Envio do Anfitrião de " +"Impressão" + +msgid "Device" +msgstr "Dispositivo" + +msgid "Task Sending" +msgstr "Envio de tarefa" + +msgid "Task Sent" +msgstr "Tarefa Enviada" + +msgid "Edit multiple printers" +msgstr "Editar múltiplas impressoras" + +msgid "Select connected printers (0/6)" +msgstr "" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "O número máximo de impressoras que podem ser selecionadas é %d" + +msgid "Offline" +msgstr "Desconectado" + +msgid "No task" +msgstr "Nenhuma tarefa" + +msgid "View" +msgstr "Visualizar" + +msgid "N/A" +msgstr "N/D" + +msgid "Edit Printers" +msgstr "Editar impressoras" + +msgid "Device Name" +msgstr "Nome do Dispositivo" + +msgid "Task Name" +msgstr "Nome da tarefa" + +msgid "Device Status" +msgstr "Status do dispositivo" + +msgid "Actions" +msgstr "Ações" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" +"Por favor, selecione os dispositivos que você gostaria de gerenciar aqui " +"(até 6 dispositivos)" + +msgid "Add" +msgstr "Adicionar" + +msgid "Idle" +msgstr "Inativo" + +msgid "Printing" +msgstr "Imprimindo" + +msgid "Upgrading" +msgstr "Atualizando" + +msgid "Incompatible" +msgstr "Incompatível" + +msgid "syncing" +msgstr "sincronizando" + +msgid "Printing Finish" +msgstr "Impressão finalizada" + +msgid "Printing Failed" +msgstr "Falha na Impressão" + +msgid "Printing Pause" +msgstr "" + +msgid "Prepare" +msgstr "Preparar" + +msgid "Slicing" +msgstr "Fatiando" + +msgid "Pending" +msgstr "Pendente" + +msgid "Sending" +msgstr "Enviando" + +msgid "Sending Finish" +msgstr "Envio Finalizado" + +msgid "Sending Cancel" +msgstr "Cancelar Envio" + +msgid "Sending Failed" +msgstr "Falha no Envio" + +msgid "Print Success" +msgstr "Impressão Bem Sucedida" + +msgid "Print Failed" +msgstr "Impressão Falhou" + +msgid "Removed" +msgstr "Removido" + +msgid "Resume" +msgstr "Continuar" + +msgid "Stop" +msgstr "Parar" + +msgid "Task Status" +msgstr "Status da tarefa" + +msgid "Sent Time" +msgstr "Tempo de envio" + +msgid "There are no tasks to be sent!" +msgstr "Não há tarefas a enviar!" + +msgid "No historical tasks!" +msgstr "Nenhuma tarefa no histórico!" + +msgid "Loading..." +msgstr "Carregando..." + +msgid "No AMS" +msgstr "Nenhum AMS" + +msgid "Send to Multi-device" +msgstr "Enviar para multi-dispositivo" + +msgid "Preparing print job" +msgstr "Preparando trabalho de impressão" + +msgid "Abnormal print file data. Please slice again" +msgstr "Dados de arquivo de impressão anormais. Por favor, fatie novamente" + +msgid "There is no device available to send printing." +msgstr "Não há nenhum dispositivo disponível para enviar impressão." + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "O número de impressoras em uso simultaneamente não pode ser igual a 0." + +msgid "Use External Spool" +msgstr "Usar Carretel Externo" + +msgid "Use AMS" +msgstr "Usar AMS" + +msgid "Select Printers" +msgstr "Selecionar impressoras" + +msgid "Ams Status" +msgstr "Status do AMS" + +msgid "Printing Options" +msgstr "Opções de Impressão" + +msgid "Bed Leveling" +msgstr "Nivelamento da mesa" + +msgid "Timelapse" +msgstr "Timelapse" + +msgid "Flow Dynamic Calibration" +msgstr "Calibração de Fluxo Dinâmico" + +msgid "Send Options" +msgstr "Opções de envio" + +msgid "Send to" +msgstr "" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"impressoras ao mesmo tempo. (Depende de quantos dispositivos podem ser " +"submetidos ao mesmo tempo.)" + +msgid "Wait" +msgstr "Aguarde" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minuto por cada lote.(Depende de quanto tempo leva para completar o " +"aquecimento.)" + +msgid "Send" +msgstr "Enviar" + +msgid "Name is invalid;" +msgstr "O nome é inválido;" + +msgid "illegal characters:" +msgstr "caracteres ilegais:" + +msgid "illegal suffix:" +msgstr "sufixo ilegal:" + +msgid "The name is not allowed to be empty." +msgstr "O nome não pode ficar vazio." + +msgid "The name is not allowed to start with space character." +msgstr "O nome não pode começar com um espaço." + +msgid "The name is not allowed to end with space character." +msgstr "O nome não pode terminar com um espaço." + +msgid "The name length exceeds the limit." +msgstr "O comprimento do nome excede o limite." + +msgid "Origin" +msgstr "Origem" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Tamanho em X e Y da mesa retangular." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" +"Distância da coordenada do G-Code 0,0 do canto frontal esquerdo do retângulo." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Diâmetro da mesa de impressão. É assumido que a origem (0,0) está localizada " +"no centro." + +msgid "Rectangular" +msgstr "Retangular" + +msgid "Circular" +msgstr "Circular" + +msgid "Load shape from STL..." +msgstr "Carregar forma de STL..." + +msgid "Settings" +msgstr "Configurações" + +msgid "Texture" +msgstr "Textura" + +msgid "Remove" +msgstr "Remover" + +msgid "Not found:" +msgstr "Não encontrado:" + +msgid "Model" +msgstr "Modelo" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Escolha um arquivo STL para importar a forma da mesa:" + +msgid "Invalid file format." +msgstr "Formato de arquivo inválido." + +msgid "Error! Invalid model" +msgstr "Erro! Modelo inválido" + +msgid "The selected file contains no geometry." +msgstr "O arquivo selecionado não contém geometria." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"O arquivo selecionado contém várias áreas disjuntas. Isso não é suportado." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "Escolha um arquivo para importar a textura da mesa (PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Escolha um arquivo STL para importar o modelo da mesa:" + +msgid "Bed Shape" +msgstr "Forma da Mesa" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"A temperatura mínima recomendada é inferior a 190 graus ou a temperatura " +"máxima recomendada é superior a 300 graus.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"A temperatura mínima recomendada não pode ser superior à temperatura máxima " +"recomendada.\n" + +msgid "Please check.\n" +msgstr "Por favor, verifique.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"O bico pode ficar bloqueado quando a temperatura estiver fora da faixa " +"recomendada.\n" +"Por favor, certifique-se de usar a temperatura para imprimir.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"A temperatura do bico recomendada para este tipo de filamento é [%d, %d] " +"graus centígrados" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Fluxo volumétrico máximo está muito baixo.\n" +"Redefinir para 0,5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"A temperatura da câmara atual está mais alta do que a temperatura segura do " +"material, pode resultar em amolecimento e entupimento do material. A " +"temperatura máxima segura para o material é %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Altura da camada muito pequena.\n" +"Redefinir para 0,2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Espaçamento de alisamento muito pequeno.\n" +"Redefinir para 0,1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"Altura inicial da camada zero é inválida.\n" +"\n" +"A altura da primeira camada será redefinida para 0.2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Esta configuração é usada apenas para ajustar o tamanho do modelo com um " +"valor pequeno em alguns casos.\n" +"Por exemplo, quando o tamanho do modelo tem um pequeno erro e é difícil de " +"ser montado.\n" +"Para ajustes de tamanho grandes, por favor, use a função de escala do " +"modelo.\n" +"\n" +"O valor será redefinido para 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Uma compensação de pé de elefante muito grande é irrazoável.\n" +"Se realmente tiver um efeito sério de pé de elefante, por favor, verifique " +"outras configurações.\n" +"Por exemplo, se a temperatura da mesa estiver muito alta.\n" +"\n" +"O valor será redefinido para 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" +"O perímetro extra alternado não funciona bem quando a espessura vertical da " +"está definida para Todos. " + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"Alterar essas configurações automaticamente?\n" +"Sim - Alterar a espessura vertical do perímetro para Moderado e ativar o " +"perímetro extra alternado\n" +"Não - Não usar o perímetro extra alternado" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"A Torre Prime não funciona quando a Altura de Camada Adaptativa ou a Altura " +"de Camada de Suporte Independente está ativada.\n" +"Qual você deseja manter?\n" +"SIM — Manter a Torre Prime\n" +"NÃO — Manter a Altura de Camada Adaptativa e a Altura de Camada de Suporte " +"Independente" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"A Torre Prime não funciona quando a Altura de Camada Adaptativa está ativa.\n" +"Qual você deseja manter?\n" +"SIM — Manter a Torre Prime\n" +"NÃO — Manter a Altura de Camada Adaptativa" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"A Torre Prime não funciona quando a Altura da Camada de Suporte Independente " +"está ativa.\n" +"Qual você deseja manter?\n" +"SIM — Manter a Torre Prime\n" +"NÃO — Manter a Altura da Camada de Suporte Independente" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Ao imprimir por Objeto, o extrusor pode colidir com a saia.\n" +"Portanto, redefina a camada da saia para 1 para evitar isso." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"seam_slope_start_height precisa ser menor que layer_height.\n" +"Redefinir para 0." + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"O modo espiral só funciona quando o perímetro é igual a 1, o suporte está " +"desativado, as camadas de topo são 0, a densidade de preenchimento não " +"sólido é 0 e o tipo de timelapse é tradicional." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " Mas máquinas com estrutura I3 não gerarão vídeos de timelapse." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Alterar essas configurações automaticamente? \n" +"Sim - Alterar essas configurações e ativar o modo espiral automaticamente\n" +"Não - Desistir de usar o modo espiral desta vez" + +msgid "Auto bed leveling" +msgstr "Nivelamento automático da mesa" + +msgid "Heatbed preheating" +msgstr "Pré-aquecimento da mesa" + +msgid "Sweeping XY mech mode" +msgstr "Modo mecânico de varredura XY" + +msgid "Changing filament" +msgstr "Troca de filamento" + +msgid "M400 pause" +msgstr "Pausa M400" + +msgid "Paused due to filament runout" +msgstr "Pausado devido ao esgotamento do filamento" + +msgid "Heating hotend" +msgstr "Aquecendo a hotend" + +msgid "Calibrating extrusion" +msgstr "Calibrando a extrusão" + +msgid "Scanning bed surface" +msgstr "Digitalizando a superfície da mesa" + +msgid "Inspecting first layer" +msgstr "Inspecionando a primeira camada" + +msgid "Identifying build plate type" +msgstr "Identificando o tipo de mesa" + +msgid "Calibrating Micro Lidar" +msgstr "Calibrando Micro Lidar" + +msgid "Homing toolhead" +msgstr "Calibrando cabeça da ferramenta" + +msgid "Cleaning nozzle tip" +msgstr "Limpando a ponta do bico" + +msgid "Checking extruder temperature" +msgstr "Verificando temperatura do extrusor" + +msgid "Printing was paused by the user" +msgstr "A impressão foi pausada pelo usuário" + +msgid "Pause of front cover falling" +msgstr "Pausa de queda da cobertura frontal" + +msgid "Calibrating the micro lida" +msgstr "Calibrando o micro lidar" + +msgid "Calibrating extrusion flow" +msgstr "Calibrando o fluxo de extrusão" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Pausado devido a mau funcionamento da temperatura do bico" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Pausado devido a mau funcionamento da temperatura da mesa quente" + +msgid "Filament unloading" +msgstr "Descarregando filamento" + +msgid "Skip step pause" +msgstr "Pausa de passo pulado" + +msgid "Filament loading" +msgstr "Carregando filamento" + +msgid "Motor noise calibration" +msgstr "Calibração de ruído do motor" + +msgid "Paused due to AMS lost" +msgstr "Pausado devido à perda do AMS" + +msgid "Paused due to low speed of the heat break fan" +msgstr "" +"Pausado devido a baixa velocidade do ventilador do bloco de aquecimento" + +msgid "Paused due to chamber temperature control error" +msgstr "Pausado devido a erro no controle de temperatura da câmara" + +msgid "Cooling chamber" +msgstr "Resfriando câmara" + +msgid "Paused by the Gcode inserted by user" +msgstr "Pausado pelo Gcode inserido pelo usuário" + +msgid "Motor noise showoff" +msgstr "Demonstração de barulho do motor" + +msgid "Nozzle filament covered detected pause" +msgstr "Pausado devido a bico coberto por filamento" + +msgid "Cutter error pause" +msgstr "Pausa de erro de corte" + +msgid "First layer error pause" +msgstr "Pausa de erro na primeira camada" + +msgid "Nozzle clog pause" +msgstr "Pausa de obstrução do bico" + +msgid "Unknown" +msgstr "Desconhecido" + +msgid "Fatal" +msgstr "Fatal" + +msgid "Serious" +msgstr "Grave" + +msgid "Common" +msgstr "Comum" + +msgid "Update successful." +msgstr "Atualização bem-sucedida." + +msgid "Downloading failed." +msgstr "Falha ao baixar." + +msgid "Verification failed." +msgstr "Verificação falhou." + +msgid "Update failed." +msgstr "Atualização falhou." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"A temperatura atual da câmara ou a temperatura da câmara alvo excede 45℃. " +"Para evitar obstrução do extrusor, não é permitido carregar filamento de " +"baixa temperatura (PLA/PETG/TPU)." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Filamento de baixa temperatura (PLA/PETG/TPU) está carregado na extrusora. " +"Para evitar obstrução do extrusor, não é permitido ajustar a temperatura da " +"câmara acima de 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Quando você definir a temperatura da câmara abaixo de 40℃, o controle de " +"temperatura da câmara não será ativado. E a temperatura alvo da câmara será " +"automaticamente definida como 0℃." + +msgid "Failed to start printing job" +msgstr "Falha ao iniciar o trabalho de impressão" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "Esta calibração não suporta o diâmetro do bico atualmente selecionado" + +msgid "Current flowrate cali param is invalid" +msgstr "O parâmetro de calibração de fluxo atual é inválido" + +msgid "Selected diameter and machine diameter do not match" +msgstr "O diâmetro selecionado e o diâmetro da máquina não correspondem" + +msgid "Failed to generate cali gcode" +msgstr "Falha ao gerar o código G de calibração" + +msgid "Calibration error" +msgstr "Erro de calibração" + +msgid "TPU is not supported by AMS." +msgstr "TPU não é suportado pelo AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF não é suportado pelo AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"O PVA úmido se tornará flexível e ficará preso dentro do AMS, por favor, " +"tenha cuidado para secá-lo antes de usar." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"Os filamentos CF/GF são duros e quebradiços, é fácil quebrar ou ficar preso " +"no AMS, por favor, use com cautela." + +msgid "default" +msgstr "padrão" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Editar G-Code personalizado (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" +"Marcadores de posição incorporados (Clique duas vezes no item para adicionar " +"ao G-code)" + +msgid "Search gcode placeholders" +msgstr "Procurar marcadores de posição do G-code" + +msgid "Add selected placeholder to G-code" +msgstr "Adicionar marcador de posição selecionado ao G-code" + +msgid "Select placeholder" +msgstr "Selecionar marcador de posição" + +msgid "[Global] Slicing State" +msgstr "Estado de fatiamento [Global]" + +msgid "Read Only" +msgstr "Somente leitura" + +msgid "Read Write" +msgstr "Ler Escrever" + +msgid "Slicing State" +msgstr "Estado de fatiamento" + +msgid "Print Statistics" +msgstr "Estatísticas de Impressão" + +msgid "Objects Info" +msgstr "Informações de Objetos" + +msgid "Dimensions" +msgstr "Dimensões" + +msgid "Temperatures" +msgstr "Temperaturas" + +msgid "Timestamps" +msgstr "Carimbos de data/hora" + +#, boost-format +msgid "Specific for %1%" +msgstr "Específico para %1%" + +msgid "Presets" +msgstr "Predefinições" + +msgid "Print settings" +msgstr "Configurações de Impressão" + +msgid "Filament settings" +msgstr "Configurações do Filamento" + +msgid "SLA Materials settings" +msgstr "Configurações de Materiais SLA" + +msgid "Printer settings" +msgstr "Configurações da Impressora" + +msgid "parameter name" +msgstr "nome do parâmetro" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s não pode ser percentagem" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "O valor %s está fora do intervalo, continuar?" + +msgid "Parameter validation" +msgstr "Validação de Parâmetros" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "Valor %s está fora do intervalo. O intervalo válido é de %d para %d." + +msgid "Value is out of range." +msgstr "O valor está fora do intervalo." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"É %s%% ou %s %s?\n" +"SIM para %s%%, \n" +"NÃO para %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Formato de entrada inválido. Vetor de dimensões esperado no seguinte " +"formato: \"%1%\"" + +msgid "Input value is out of range" +msgstr "Valor de entrada está fora do limite" + +msgid "Some extension in the input is invalid" +msgstr "" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Formato inválido. Formato de vetor esperado: \"%1%\"" + +msgid "Layer Height" +msgstr "Altura da Camada" + +msgid "Line Width" +msgstr "Largura da Linha" + +msgid "Fan Speed" +msgstr "Velocidade do Ventilador" + +msgid "Temperature" +msgstr "Temperatura" + +msgid "Flow" +msgstr "Fluxo" + +msgid "Tool" +msgstr "Ferramenta" + +msgid "Layer Time" +msgstr "Tempo da Camada" + +msgid "Layer Time (log)" +msgstr "Tempo da Camada (log)" + +msgid "Height: " +msgstr "Altura: " + +msgid "Width: " +msgstr "Largura: " + +msgid "Speed: " +msgstr "Velocidade: " + +msgid "Flow: " +msgstr "Fluxo: " + +msgid "Layer Time: " +msgstr "Tempo de Camada: " + +msgid "Fan: " +msgstr "Ventilador: " + +msgid "Temperature: " +msgstr "Temperatura: " + +msgid "Loading G-codes" +msgstr "Carregando G-codes" + +msgid "Generating geometry vertex data" +msgstr "Gerando dados de vértices de geometria" + +msgid "Generating geometry index data" +msgstr "Gerando dados de índice de geometria" + +msgid "Statistics of All Plates" +msgstr "Estatísticas de Todas as Mesas" + +msgid "Display" +msgstr "Exibição" + +msgid "Flushed" +msgstr "Limpo" + +msgid "Tower" +msgstr "Torre" + +msgid "Total" +msgstr "Total:" + +msgid "Total Estimation" +msgstr "Estimativa Total" + +msgid "Total time" +msgstr "Tempo total" + +msgid "Total cost" +msgstr "Custo total" + +msgid "up to" +msgstr "até" + +msgid "above" +msgstr "acima" + +msgid "from" +msgstr "de" + +msgid "Color Scheme" +msgstr "Esquema de Cores" + +msgid "Time" +msgstr "Tempo" + +msgid "Percent" +msgstr "Porcentagem" + +msgid "Used filament" +msgstr "Fil. usado" + +msgid "Layer Height (mm)" +msgstr "Altura da Camada (mm)" + +msgid "Line Width (mm)" +msgstr "Largura da Linha (mm)" + +msgid "Speed (mm/s)" +msgstr "Velocidade (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Velocidade do Ventilador (%)" + +msgid "Temperature (°C)" +msgstr "Temperatura (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Fluxo Volumétrico (mm³/s)" + +msgid "Travel" +msgstr "Deslocamento" + +msgid "Seams" +msgstr "Costuras" + +msgid "Retract" +msgstr "Retração" + +msgid "Unretract" +msgstr "Desretração" + +msgid "Filament Changes" +msgstr "Mudanças de Filamento" + +msgid "Wipe" +msgstr "Limpeza" + +msgid "Options" +msgstr "Opções" + +msgid "travel" +msgstr "deslocamento" + +msgid "Extruder" +msgstr "Extrusora" + +msgid "Filament change times" +msgstr "Quantidade de trocas de filamento" + +msgid "Cost" +msgstr "Custo" + +msgid "Color change" +msgstr "Mudança de Cor" + +msgid "Print" +msgstr "Imprimir" + +msgid "Printer" +msgstr "Impressora" + +msgid "Custom g-code" +msgstr "G-Code Personalizado" + +msgid "ToolChange" +msgstr "Mudança de Ferramenta" + +msgid "Time Estimation" +msgstr "Estimativa de Tempo" + +msgid "Normal mode" +msgstr "Modo Normal" + +msgid "Total Filament" +msgstr "Filamento Total" + +msgid "Model Filament" +msgstr "Modelo do Filamento" + +msgid "Prepare time" +msgstr "Tempo de Preparo" + +msgid "Model printing time" +msgstr "Tempo de Impressão do Modelo" + +msgid "Switch to silent mode" +msgstr "Mudar para o modo silencioso" + +msgid "Switch to normal mode" +msgstr "Mudar para o modo normal" + +msgid "Variable layer height" +msgstr "Altura de Camada Variável" + +msgid "Adaptive" +msgstr "Adaptativo" + +msgid "Quality / Speed" +msgstr "Qualidade / Velocidade" + +msgid "Smooth" +msgstr "Suavização" + +msgid "Radius" +msgstr "Raio" + +msgid "Keep min" +msgstr "Manter Mínimo" + +msgid "Left mouse button:" +msgstr "Botão esquerdo do mouse:" + +msgid "Add detail" +msgstr "Adicionar detalhe" + +msgid "Right mouse button:" +msgstr "Botão direito do mouse:" + +msgid "Remove detail" +msgstr "Remover detalhe" + +msgid "Shift + Left mouse button:" +msgstr "Shift + Botão esquerdo do mouse:" + +msgid "Reset to base" +msgstr "Redefinir para a base" + +msgid "Shift + Right mouse button:" +msgstr "Shift + Botão direito do mouse:" + +msgid "Smoothing" +msgstr "Suavização" + +msgid "Mouse wheel:" +msgstr "Roda do mouse:" + +msgid "Increase/decrease edit area" +msgstr "Aumentar/diminuir área de edição" + +msgid "Sequence" +msgstr "Sequência" + +msgid "Mirror Object" +msgstr "Espelhar Objeto" + +msgid "Tool Move" +msgstr "Mover Ferramenta" + +msgid "Tool Rotate" +msgstr "Rotacionar Ferramenta" + +msgid "Move Object" +msgstr "Mover Objeto" + +msgid "Auto Orientation options" +msgstr "Opções de Orientação Automática" + +msgid "Enable rotation" +msgstr "Habilitar rotação" + +msgid "Optimize support interface area" +msgstr "Otimizar a área de interface de suporte" + +msgid "Orient" +msgstr "Orientar" + +msgid "Arrange options" +msgstr "Opções de Organização" + +msgid "Spacing" +msgstr "Espaçamento" + +msgid "0 means auto spacing." +msgstr "0 significa auto-espaçamento." + +msgid "Auto rotate for arrangement" +msgstr "Girar automaticamente para arranjo" + +msgid "Allow multiple materials on same plate" +msgstr "Permitir vários materiais na mesma mesa" + +msgid "Avoid extrusion calibration region" +msgstr "Evitar a região de calibração da extrusão" + +msgid "Align to Y axis" +msgstr "Alinhar com o eixo Y" + +msgid "Add plate" +msgstr "Adicionar mesa" + +msgid "Auto orient" +msgstr "Orientação automática" + +msgid "Arrange all objects" +msgstr "Organizar todos os objetos" + +msgid "Arrange objects on selected plates" +msgstr "Organizar objetos nas mesas selecionadas" + +msgid "Split to objects" +msgstr "Dividir em objetos" + +msgid "Split to parts" +msgstr "Dividir em peças" + +msgid "Assembly View" +msgstr "Visualização de Montagem" + +msgid "Select Plate" +msgstr "Selecionar Mesa" + +msgid "Assembly Return" +msgstr "Retornar à Montagem" + +msgid "return" +msgstr "retornar" + +msgid "Paint Toolbar" +msgstr "Barra de Ferramentas de Pintura" + +msgid "Explosion Ratio" +msgstr "Taxa de Explosão" + +msgid "Section View" +msgstr "Visualização de Seção" + +msgid "Assemble Control" +msgstr "Controle de Montagem" + +msgid "Total Volume:" +msgstr "Volume Total:" + +msgid "Assembly Info" +msgstr "Informações de Montagem" + +msgid "Volume:" +msgstr "Volume:" + +msgid "Size:" +msgstr "Tamanho:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"Foram encontrados conflitos de caminhos de G-code na camada %d, z = %.2lf " +"mm. Por favor, separe mais os objetos em conflito (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "Um objeto está sobre a borda da mesa." + +msgid "A G-code path goes beyond the max print height." +msgstr "Um caminho de G-code ultrapassa a altura máxima de impressão." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Um caminho de G-code ultrapassa a borda da mesa." + +msgid "Only the object being edit is visible." +msgstr "Apenas o objeto em edição está visível." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Um objeto está sobre a borda da mesa ou ultrapassa o limite de altura.\n" +"Por favor, resolva o problema movendo-o totalmente para dentro ou para fora " +"da mesa, e confirmando que a altura está dentro do volume de impressão." + +msgid "Calibration step selection" +msgstr "Seleção de etapa de calibração" + +msgid "Micro lidar calibration" +msgstr "Calibração do micro lidar" + +msgid "Bed leveling" +msgstr "Nivelamento da mesa" + +msgid "Vibration compensation" +msgstr "Compensação de vibração" + +msgid "Motor noise cancellation" +msgstr "Cancelamento de ruído do motor" + +msgid "Calibration program" +msgstr "Programa de calibração" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"O programa de calibração detecta automaticamente o estado do seu dispositivo " +"para minimizar desvios.\n" +"Mantém o dispositivo com desempenho ideal." + +msgid "Calibration Flow" +msgstr "Calibração de Fluxo" + +msgid "Start Calibration" +msgstr "Iniciar Calibração" + +msgid "Completed" +msgstr "Concluído" + +msgid "Calibrating" +msgstr "Calibrando" + +msgid "No step selected" +msgstr "Nenhuma etapa selecionada" + +msgid "Auto-record Monitoring" +msgstr "Monitoramento de Auto-Registro" + +msgid "Go Live" +msgstr "Ir ao Vivo" + +msgid "Liveview Retry" +msgstr "Repetir Liveview" + +msgid "Resolution" +msgstr "Resolução" + +msgid "Enable" +msgstr "Ativar" + +msgid "Hostname or IP" +msgstr "Nome do Host ou IP" + +msgid "Custom camera source" +msgstr "Fonte de câmera personalizada" + +msgid "Show \"Live Video\" guide page." +msgstr "Mostrar página de guia \"Vídeo ao Vivo\"." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Conectar Impressora (LAN)" + +msgid "Please input the printer access code:" +msgstr "Por favor, insira o código de acesso à impressora:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Você pode encontrá-lo em \"Configurações > Rede > Código de Conexão\"\n" +"na impressora, conforme mostrado na figura:" + +msgid "Invalid input." +msgstr "Entrada inválida." + +msgid "New Window" +msgstr "Nova Janela" + +msgid "Open a new window" +msgstr "Abrir uma nova janela" + +msgid "Application is closing" +msgstr "Aplicativo está fechando" + +msgid "Closing Application while some presets are modified." +msgstr "Fechando o aplicativo enquanto alguns perfis estão sendo modificados." + +msgid "Logging" +msgstr "Registro" + +msgid "Preview" +msgstr "Pré-visualizar" + +msgid "Multi-device" +msgstr "Multi-dispositivo" + +msgid "Project" +msgstr "Projeto" + +msgid "Yes" +msgstr "Sim" + +msgid "No" +msgstr "Não" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "será fechado antes de criar um novo modelo. Deseja continuar?" + +msgid "Slice plate" +msgstr "Fatiar Mesa" + +msgid "Print plate" +msgstr "Imprimir mesa" + +msgid "Slice all" +msgstr "Fatiar Tudo" + +msgid "Export G-code file" +msgstr "Exportar arquivo G-code" + +msgid "Export plate sliced file" +msgstr "Exportar arquivo de mesa fatiada" + +msgid "Export all sliced file" +msgstr "Exportar todos os arquivos fatiados" + +msgid "Print all" +msgstr "Imprimir tudo" + +msgid "Send all" +msgstr "Enviar tudo" + +msgid "Keyboard Shortcuts" +msgstr "Atalhos de Teclado" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Mostrar a lista dos atalhos de teclado" + +msgid "Setup Wizard" +msgstr "Assistente de Configuração" + +msgid "Show Configuration Folder" +msgstr "Mostrar Pasta de Configuração" + +msgid "Show Tip of the Day" +msgstr "Mostrar Dica do Dia" + +msgid "Check for Update" +msgstr "Verificar Atualizações" + +msgid "Open Network Test" +msgstr "Abrir Teste de Rede" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&Sobre %s" + +msgid "Upload Models" +msgstr "Enviar Modelos" + +msgid "Download Models" +msgstr "Baixar Modelos" + +msgid "Default View" +msgstr "Visualização Padrão" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Topo" + +msgid "Top View" +msgstr "Visualização Superior" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Inferior" + +msgid "Bottom View" +msgstr "Visualização Inferior" + +msgid "Front" +msgstr "Frente" + +msgid "Front View" +msgstr "Visualização Frontal" + +msgid "Rear" +msgstr "Traseira" + +msgid "Rear View" +msgstr "Visualização Traseira" + +msgid "Left" +msgstr "Esquerda" + +msgid "Left View" +msgstr "Visualização Esquerda" + +msgid "Right" +msgstr "Direita" + +msgid "Right View" +msgstr "Visualização Direita" + +msgid "Start a new window" +msgstr "Abrir nova janela" + +msgid "New Project" +msgstr "Novo Projeto" + +msgid "Start a new project" +msgstr "Iniciar um novo projeto" + +msgid "Open a project file" +msgstr "Abrir um arquivo de projeto" + +msgid "Recent projects" +msgstr "Projetos recentes" + +msgid "Save Project" +msgstr "Salvar Projeto" + +msgid "Save current project to file" +msgstr "Salvar projeto atual em arquivo" + +msgid "Save Project as" +msgstr "Salvar projeto como" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Salvar o projeto atual como" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Importar 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Carregar um modelo" + +msgid "Import Zip Archive" +msgstr "Importar Arquivo Zip" + +msgid "Load models contained within a zip archive" +msgstr "Carregar modelos contidos em um arquivo zip" + +msgid "Import Configs" +msgstr "Importar Configurações" + +msgid "Load configs" +msgstr "Carregar configurações" + +msgid "Import" +msgstr "Importar" + +msgid "Export all objects as one STL" +msgstr "Exportar todos os objetos como um único STL" + +msgid "Export all objects as STLs" +msgstr "Exportar todos os objetos como STLs" + +msgid "Export Generic 3MF" +msgstr "Exportar 3MF Genérico" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Exportar arquivo 3mf sem usar algumas extensões 3mf" + +msgid "Export current sliced file" +msgstr "Exportar arquivo fatiado atual" + +msgid "Export all plate sliced file" +msgstr "Exportar todos os arquivos de mesa fatiados" + +msgid "Export G-code" +msgstr "Exportar G-code" + +msgid "Export current plate as G-code" +msgstr "Exportar a mesa atual como G-code" + +msgid "Export Preset Bundle" +msgstr "Exportar Pacote de Presets" + +msgid "Export current configuration to files" +msgstr "Exportar configuração atual para arquivos" + +msgid "Export" +msgstr "Exportar" + +msgid "Quit" +msgstr "Sair" + +msgid "Undo" +msgstr "Desfazer" + +msgid "Redo" +msgstr "Refazer" + +msgid "Cut selection to clipboard" +msgstr "Recortar seleção para área de transferência" + +msgid "Copy" +msgstr "Copiar" + +msgid "Copy selection to clipboard" +msgstr "Copiar seleção para área de transferência" + +msgid "Paste" +msgstr "Colar" + +msgid "Paste clipboard" +msgstr "Colar da área de transferência" + +msgid "Delete selected" +msgstr "Excluir seleção" + +msgid "Deletes the current selection" +msgstr "Exclui a seleção atual" + +msgid "Delete all" +msgstr "Excluir tudo" + +msgid "Deletes all objects" +msgstr "Exclui todos os objetos" + +msgid "Clone selected" +msgstr "Clonar selecionado" + +msgid "Clone copies of selections" +msgstr "Clonar cópias das seleções" + +msgid "Select all" +msgstr "Selecionar tudo" + +msgid "Selects all objects" +msgstr "Seleciona todos os objetos" + +msgid "Deselect all" +msgstr "Desselecionar tudo" + +msgid "Deselects all objects" +msgstr "Desseleciona todos os objetos" + +msgid "Use Perspective View" +msgstr "Usar Vista em Perspectiva" + +msgid "Use Orthogonal View" +msgstr "Usar Vista Ortogonal" + +msgid "Show &G-code Window" +msgstr "Mostrar Janela &G-code" + +msgid "Show g-code window in Previce scene" +msgstr "Mostrar janela de código G na cena anterior" + +msgid "Show 3D Navigator" +msgstr "Mostrar Navegador 3D" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "Mostrar navegador 3D nas cenas de preparação e pré-visualização" + +msgid "Reset Window Layout" +msgstr "Redefinir Layout da Janela" + +msgid "Reset to default window layout" +msgstr "Redefinir layout padrão da janela" + +msgid "Show &Labels" +msgstr "Mostrar & Etiquetas" + +msgid "Show object labels in 3D scene" +msgstr "Mostrar etiquetas de objeto na cena 3D" + +msgid "Show &Overhang" +msgstr "Mostrar &Sobrecarga" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Mostrar destaque de sobrecarga de objeto na cena 3D" + +msgid "Preferences" +msgstr "Preferências" + +msgid "Help" +msgstr "Ajuda" + +msgid "Temperature Calibration" +msgstr "Calibração de Temperatura" + +msgid "Pass 1" +msgstr "Passo 1" + +msgid "Flow rate test - Pass 1" +msgstr "Teste de fluxo - Passo 1" + +msgid "Pass 2" +msgstr "Passo 2" + +msgid "Flow rate test - Pass 2" +msgstr "Teste de fluxo - Passo 2" + +msgid "Flow rate" +msgstr "Fluxo" + +msgid "Pressure advance" +msgstr "Pressure Advance" + +msgid "Retraction test" +msgstr "Teste de retração" + +msgid "Orca Tolerance Test" +msgstr "Teste de Tolerância Orca" + +msgid "Max flowrate" +msgstr "Fluxo máximo" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Mais..." + +msgid "Tutorial" +msgstr "Tutorial" + +msgid "Calibration help" +msgstr "Ajuda de calibração" + +msgid "More calibrations" +msgstr "Mais calibrações" + +msgid "&Open G-code" +msgstr "&Abrir G-code" + +msgid "Open a G-code file" +msgstr "Abrir um arquivo G-code" + +msgid "Re&load from Disk" +msgstr "Re&carregar do Disco" + +msgid "Reload the plater from disk" +msgstr "Recarregar o bandeija do disco" + +msgid "Export &Toolpaths as OBJ" +msgstr "Exportar &Trilhas de Ferramentas como OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Exportar trilhas de ferramentas como OBJ" + +msgid "Open &Slicer" +msgstr "Abrir &Fatiador" + +msgid "Open Slicer" +msgstr "Abrir Fatiador" + +msgid "&Quit" +msgstr "&Sair" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Sair %s" + +msgid "&File" +msgstr "&Arquivo" + +msgid "&View" +msgstr "&Visualizar" + +msgid "&Help" +msgstr "&Ajuda" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "Já existe um arquivo com o mesmo nome: %s. Deseja substituí-lo?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "Já existe uma configuração com o mesmo nome: %s. Deseja substituí-la?" + +msgid "Overwrite file" +msgstr "Substituir arquivo" + +msgid "Yes to All" +msgstr "Sim para Todos" + +msgid "No to All" +msgstr "Não para Todos" + +msgid "Choose a directory" +msgstr "Escolha um diretório" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +"Foi exportada uma configuração (%d). (Apenas configurações não do sistema)" +msgstr[1] "" +"Foram exportadas %d configurações. (Apenas configurações não do sistema)" + +msgid "Export result" +msgstr "Resultado da exportação" + +msgid "Select profile to load:" +msgstr "Selecione o perfil para carregar:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +"Foi importada uma configuração (%d). (Apenas configurações compatíveis e não " +"do sistema)" +msgstr[1] "" +"Foram importadas %d configurações. (Apenas configurações compatíveis e não " +"do sistema)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"Dica: Certifique-se de ter adicionado a impressora correspondente antes de " +"importar as configurações." + +msgid "Import result" +msgstr "Resultado da importação" + +msgid "File is missing" +msgstr "Arquivo não encontrado" + +msgid "The project is no longer available." +msgstr "O projeto não está mais disponível." + +msgid "Filament Settings" +msgstr "Configurações do Filamento" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Você deseja sincronizar seus dados pessoais da Bambu Cloud? \n" +"Isso inclui as seguintes informações:\n" +"1. Os perfis de Processo\n" +"2. Os perfis de Filamento\n" +"3. Os perfis de Impressora" + +msgid "Synchronization" +msgstr "Sincronização" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" +"O dispositivo não pode lidar com mais conversas. Por favor, tente novamente " +"mais tarde." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" +"O reprodutor está com problemas. Por favor, reinstale o reprodutor do " +"sistema." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"O reprodutor não está carregado, por favor, clique no botão \"Reproduzir\" " +"para tentar novamente." + +msgid "Please confirm if the printer is connected." +msgstr "Por favor, confirme se a impressora está conectada." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"A impressora está sendo baixada no momento. Tente novamente após terminar." + +msgid "Printer camera is malfunctioning." +msgstr "A câmera da impressora está com problemas." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Ocorreu um problema. Por favor, atualize o firmware da impressora e tente " +"novamente." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"Liveview via LAN está desativado. Por favor, ative a liveview na tela da " +"impressora." + +msgid "Please enter the IP of printer to connect." +msgstr "Por favor, digite o IP da impressora para conectar." + +msgid "Initializing..." +msgstr "Inicializando..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "Falha na conexão. Por favor, verifique a rede e tente novamente" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Por favor, verifique a rede e tente novamente, você pode reiniciar ou " +"atualizar a impressora se o problema persistir." + +msgid "The printer has been logged out and cannot connect." +msgstr "A impressora foi desconectada e não pode se conectar." + +msgid "Stopped." +msgstr "Parado." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "Falha na conexão da LAN (Falha ao iniciar a visualização ao vivo)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"É necessário o Virtual Camera Tools para esta tarefa!\n" +"Deseja instalá-los?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Baixando Ferramentas de Câmera Virtual" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Outra câmera virtual está em execução.\n" +"O Snapmaker Orca suporta apenas uma única câmera virtual.\n" +"Deseja parar esta câmera virtual?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Falha na inicialização da câmera virtual (%s)!" + +msgid "Network unreachable" +msgstr "Rede inacessível" + +msgid "Information" +msgstr "Informação" + +msgid "Playing..." +msgstr "Reproduzindo..." + +msgid "Year" +msgstr "Ano" + +msgid "Month" +msgstr "Mês" + +msgid "All Files" +msgstr "Todos os Arquivos" + +msgid "Group files by year, recent first." +msgstr "Agrupar arquivos por ano, mais recentes primeiro." + +msgid "Group files by month, recent first." +msgstr "Agrupar arquivos por mês, mais recentes primeiro." + +msgid "Show all files, recent first." +msgstr "Mostrar todos os arquivos, mais recentes primeiro." + +msgid "Switch to timelapse files." +msgstr "Mudar para arquivos de timelapse." + +msgid "Video" +msgstr "Vídeo" + +msgid "Switch to video files." +msgstr "Mudar para arquivos de vídeo." + +msgid "Switch to 3mf model files." +msgstr "Mudar para arquivos de modelo 3mf." + +msgid "Delete selected files from printer." +msgstr "Excluir arquivos selecionados da impressora." + +msgid "Download" +msgstr "Baixar" + +msgid "Download selected files from printer." +msgstr "Baixar arquivos selecionados da impressora." + +msgid "Select" +msgstr "Selecionar" + +msgid "Batch manage files." +msgstr "Gerenciar arquivos em lote." + +msgid "Refresh" +msgstr "Atualizar" + +msgid "Reload file list from printer." +msgstr "Recarregar lista de arquivos da impressora." + +msgid "No printers." +msgstr "Nenhuma impressora." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Falha ao conectar [%d]!" + +msgid "Loading file list..." +msgstr "Carregando lista de arquivos..." + +msgid "No files" +msgstr "Sem arquivos" + +msgid "Load failed" +msgstr "Falha ao carregar" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Inicialização falhou (Conexão do dispositivo não está pronta)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"Procurar arquivo no cartão SD não é suportado no firmware atual. Por favor, " +"atualize o firmware da impressora." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "Inicialização falhou (falha no armazenamento, insira o cartão SD.)!" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "Falha na conexão LAN (Falha para ver o cartão SD)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "Procurar arquivo no cartão SD não é suportado no Modo Somente LAN." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Inicialização falhou (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +"Você está prestes a excluir %u arquivo da impressora. Tem certeza de que " +"deseja continuar?" +msgstr[1] "" +"Você está prestes a excluir %u arquivos da impressora. Tem certeza de que " +"deseja continuar?" + +msgid "Delete files" +msgstr "Excluir arquivos" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Deseja excluir o arquivo '%s' da impressora?" + +msgid "Delete file" +msgstr "Excluir arquivo" + +msgid "Fetching model infomations ..." +msgstr "Obtendo informações do modelo ..." + +msgid "Failed to fetch model information from printer." +msgstr "Falha ao obter informação do modelo da impressora." + +msgid "Failed to parse model information." +msgstr "Falha ao analisar a informação do modelo." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +"O arquivo .gcode.3mf não contém dados de G-code. Por favor, fatie com Orca " +"Slicer e exporte um novo arquivo .gcode.3mf." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "O arquivo '%s' foi perdido! Por favor, baixe-o novamente." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"Arquivo: %s\n" +"Título: %s\n" + +msgid "Download waiting..." +msgstr "Aguardando download..." + +msgid "Play" +msgstr "Reproduzir" + +msgid "Open Folder" +msgstr "Abrir Pasta" + +msgid "Download finished" +msgstr "Download concluído" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Baixando %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Reconectando a impressora, a operação não pôde ser concluída imediatamente, " +"por favor, tente novamente mais tarde." + +msgid "File does not exist." +msgstr "O arquivo não existe." + +msgid "File checksum error. Please retry." +msgstr "Erro de checksum do arquivo. Por favor, tente novamente." + +msgid "Not supported on the current printer version." +msgstr "Não suportado na versão atual da impressora." + +msgid "Storage unavailable, insert SD card." +msgstr "Armazenamento indisponível, insira um cartão SD." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Código de erro: %d" + +msgid "Speed:" +msgstr "Velocidade:" + +msgid "Deadzone:" +msgstr "Zona morta:" + +msgid "Options:" +msgstr "Opções:" + +msgid "Zoom" +msgstr "Ampliar" + +msgid "Translation/Zoom" +msgstr "Tradução/Zoom" + +msgid "3Dconnexion settings" +msgstr "Configurações 3Dconnexion" + +msgid "Swap Y/Z axes" +msgstr "Trocar eixos Y/Z" + +msgid "Invert X axis" +msgstr "Inverter eixo X" + +msgid "Invert Y axis" +msgstr "Inverter eixo Y" + +msgid "Invert Z axis" +msgstr "Inverter eixo Z" + +msgid "Invert Yaw axis" +msgstr "Inverter eixo de guinada" + +msgid "Invert Pitch axis" +msgstr "Inverter eixo de arfagem" + +msgid "Invert Roll axis" +msgstr "Inverter eixo de rotação" + +msgid "Printing Progress" +msgstr "Progresso da Impressão" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Camada: N/A" + +msgid "Clear" +msgstr "Limpar" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"Você concluiu a impressão do modelo de shopping, \n" +"mas a sincronização das informações de avaliação falhou." + +msgid "How do you like this printing file?" +msgstr "O que você achou deste arquivo de impressão?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"(O modelo já foi avaliado. Sua avaliação substituirá a avaliação anterior.)" + +msgid "Rate" +msgstr "Avaliar" + +msgid "Camera" +msgstr "Câmera" + +msgid "SD Card" +msgstr "Cartão SD" + +msgid "Camera Setting" +msgstr "Configuração da Câmera" + +msgid "Switch Camera View" +msgstr "Trocar Visualização da Câmera" + +msgid "Control" +msgstr "Controle" + +msgid "Printer Parts" +msgstr "Partes da Impressora" + +msgid "Print Options" +msgstr "Opções de Impressão" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Lâmpada" + +msgid "Aux" +msgstr "Auxiliar" + +msgid "Cham" +msgstr "Filhote" + +msgid "Bed" +msgstr "Mesa" + +msgid "Debug Info" +msgstr "Informações de Depuração" + +msgid "No SD Card" +msgstr "Sem Cartão SD" + +msgid "SD Card Abnormal" +msgstr "Cartão SD Anormal" + +msgid "Cancel print" +msgstr "Cancelar impressão" + +msgid "Are you sure you want to cancel this print?" +msgstr "Tem certeza de que deseja cancelar esta impressão?" + +msgid "Downloading..." +msgstr "Baixando..." + +msgid "Cloud Slicing..." +msgstr "Fatiando na Nuvem..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "Na Fila de Fatiamento na Nuvem, existem %s tarefas na frente." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Camada: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Camada: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Aqueça o bico a mais de 170 graus antes de carregar ou descarregar o " +"filamento." + +msgid "Still unload" +msgstr "Ainda descarregando" + +msgid "Still load" +msgstr "Ainda carregando" + +msgid "Please select an AMS slot before calibration" +msgstr "Selecione um slot AMS antes da calibração" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Não é possível ler as informações do filamento: o filamento está carregado " +"na cabeça da ferramenta, por favor, descarregue o filamento e tente " +"novamente." + +msgid "This only takes effect during printing" +msgstr "Isso só tem efeito durante a impressão" + +msgid "Silent" +msgstr "Silencioso" + +msgid "Standard" +msgstr "Padrão" + +msgid "Sport" +msgstr "Esportivo" + +msgid "Ludicrous" +msgstr "Ludicrous" + +msgid "Can't start this without SD card." +msgstr "Não é possível iniciar sem um cartão SD." + +msgid "Rate the Print Profile" +msgstr "Avaliar o Perfil de Impressão" + +msgid "Comment" +msgstr "Comentário" + +msgid "Rate this print" +msgstr "Avaliar esta impressão" + +msgid "Add Photo" +msgstr "Adicionar Foto" + +msgid "Delete Photo" +msgstr "Excluir Foto" + +msgid "Submit" +msgstr "Enviar" + +msgid "Please click on the star first." +msgstr "Por favor, clique na estrela primeiro." + +msgid "InFo" +msgstr "Info" + +msgid "Get oss config failed." +msgstr "Falha ao obter a configuração oss." + +msgid "Upload Pictrues" +msgstr "Enviar fotos" + +msgid "Number of images successfully uploaded" +msgstr "Número de imagens carregadas com sucesso" + +msgid " upload failed" +msgstr " falha ao enviar" + +msgid " upload config prase failed\n" +msgstr " falha ao analisar a configuração\n" + +msgid " No corresponding storage bucket\n" +msgstr " Nenhum balde de armazenamento correspondente\n" + +msgid " can not be opened\n" +msgstr " não pode ser aberto\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"Os seguintes problemas ocorreram durante o processo de carregamento das " +"imagens. Você deseja ignorá-los?\n" +"\n" + +msgid "info" +msgstr "informação" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"Sincronizando os resultados da impressão. Por favor, tente novamente alguns " +"segundos depois." + +msgid "Upload failed\n" +msgstr "Falha no envio\n" + +msgid "obtaining instance_id failed\n" +msgstr "falha ao obter o instance_id\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"O resultado do seu comentário não pode ser enviado devido a alguns motivos. " +"Como segue:\n" +"\n" +" código de erro: " + +msgid "error message: " +msgstr "mensagem de erro: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Gostaria de ser redirecionado para a página da web para avaliar?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Algumas de suas imagens não puderam ser carregadas. Gostaria de ser " +"redirecionado para a página da web para avaliar?" + +msgid "You can select up to 16 images." +msgstr "Você pode selecionar até 16 imagens." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"Pelo menos um registro de impressão bem-sucedido deste perfil de impressão é " +"necessário \n" +"para dar uma avaliação positiva (4 ou 5 estrelas)." + +msgid "Status" +msgstr "Status" + +msgid "Update" +msgstr "Atualizar" + +msgid "Don't show again" +msgstr "Não mostrar novamente" + +#, c-format, boost-format +msgid "%s error" +msgstr "Erro %s" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s encontrou um erro" + +#, c-format, boost-format +msgid "%s warning" +msgstr "Aviso %s" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s tem um aviso" + +#, c-format, boost-format +msgid "%s info" +msgstr "Informação %s" + +#, c-format, boost-format +msgid "%s information" +msgstr "Informação %s" + +msgid "Skip" +msgstr "Pular" + +msgid "Newer 3mf version" +msgstr "Nova versão 3mf" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" +"A versão 3mf do arquivo está em Beta e é mais nova do que a versão atual do " +"Snapmaker Orca." + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "Se você gostaria de testar o Snapmaker Orca Beta, clique para" + +msgid "Download Beta Version" +msgstr "Baixar versão beta" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" +"A versão do arquivo 3mf é mais recente que a versão atual do Snapmaker Orca." + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" +"Atualizar seu Snapmaker Orca poderia permitir todas as funcionalidades do " +"arquivo 3mf." + +msgid "Current Version: " +msgstr "Versão Atual: " + +msgid "Latest Version: " +msgstr "Última Versão: " + +msgid "Not for now" +msgstr "Não por enquanto" + +msgid "3D Mouse disconnected." +msgstr "Mouse 3D desconectado." + +msgid "Configuration can update now." +msgstr "A configuração pode ser atualizada agora." + +msgid "Detail." +msgstr "Detalhes." + +msgid "Integration was successful." +msgstr "A integração foi bem-sucedida." + +msgid "Integration failed." +msgstr "A integração falhou." + +msgid "Undo integration was successful." +msgstr "A desintegração foi bem-sucedida." + +msgid "New network plug-in available." +msgstr "Novo plug-in de rede disponível." + +msgid "Details" +msgstr "Detalhes" + +msgid "New printer config available." +msgstr "Nova configuração de impressora disponível." + +msgid "Wiki" +msgstr "Documentação" + +msgid "Undo integration failed." +msgstr "A desintegração falhou." + +msgid "Exporting." +msgstr "Exportando." + +msgid "Software has New version." +msgstr "O software tem uma nova versão." + +msgid "Goto download page." +msgstr "Ir para a página de download." + +msgid "Open Folder." +msgstr "Abrir Pasta." + +msgid "Safely remove hardware." +msgstr "Remover hardware com segurança." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d Objeto tem suportes personalizados." +msgstr[1] "%1$d Objetos têm suportes personalizados." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d Objeto tem pintura colorida." +msgstr[1] "%1$d Objetos têm pintura colorida." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d objeto foi carregado como peça do objeto cortado." +msgstr[1] "%1$d objetos foram carregados como peças do objeto cortado" + +msgid "ERROR" +msgstr "ERRO" + +msgid "COMPLETED" +msgstr "CONCLUÍDO" + +msgid "CANCELED" +msgstr "CANCELADO" + +msgid "Cancel upload" +msgstr "Cancelar envio" + +msgid "Jump to" +msgstr "Ir para" + +msgid "Error:" +msgstr "Erro:" + +msgid "Warning:" +msgstr "Aviso:" + +msgid "Export successfully." +msgstr "Exportação realizada com sucesso." + +msgid "Model file downloaded." +msgstr "Arquivo do modelo baixado." + +msgid "Serious warning:" +msgstr "Aviso sério:" + +msgid " (Repair)" +msgstr " (Reparar)" + +msgid " Click here to install it." +msgstr " Clique aqui para instalar." + +msgid "WARNING:" +msgstr "AVISO:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "Seu modelo precisa de suporte! Por favor, ative o material de suporte." + +msgid "Gcode path overlap" +msgstr "Sobreposição de caminho do Gcode" + +msgid "Support painting" +msgstr "Pintura de suporte" + +msgid "Color painting" +msgstr "Pintura colorida" + +msgid "Cut connectors" +msgstr "Conectores de corte" + +msgid "Layers" +msgstr "Camadas" + +msgid "Range" +msgstr "Intervalo" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"A aplicação não pode ser executada normalmente porque a versão do OpenGL é " +"inferior a 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Por favor, atualize o driver da sua placa de vídeo." + +msgid "Unsupported OpenGL version" +msgstr "Versão do OpenGL não suportada" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Incapaz de carregar os shaders:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Erro ao carregar os shaders" + +msgctxt "Layers" +msgid "Top" +msgstr "Superior" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Inferior" + +msgid "Enable AI monitoring of printing" +msgstr "Ativar monitoramento de IA da impressão" + +msgid "Sensitivity of pausing is" +msgstr "Sensibilidade da pausa é" + +msgid "Enable detection of build plate position" +msgstr "Ativar detecção da posição da mesa" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"A etiqueta de localização da mesa é detectada e a impressão é pausada se a " +"etiqueta não estiver na faixa predefinida." + +msgid "First Layer Inspection" +msgstr "Inspeção da Primeira Camada" + +msgid "Auto-recovery from step loss" +msgstr "Recuperação automática de perda de passo" + +msgid "Allow Prompt Sound" +msgstr "Permitir som de alerta" + +msgid "Filament Tangle Detect" +msgstr "Detecção de emaranhado de filamento" + +msgid "Nozzle Clumping Detection" +msgstr "Detecção de acúmulo no bico" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" +"Verifica se o bico está com filamento acumulado ou outros objetos estranhos." + +msgid "Nozzle Type" +msgstr "Tipo de bico" + +msgid "Stainless Steel" +msgstr "Aço inoxidável" + +msgid "Hardened Steel" +msgstr "Aço endurecido" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Global" + +msgid "Objects" +msgstr "Objetos" + +msgid "Advance" +msgstr "Avançado" + +msgid "Compare presets" +msgstr "Comparar presets" + +msgid "View all object's settings" +msgstr "Ver todas as configurações do objeto" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "Remover a mesa atual (se não for a última)" + +msgid "Auto orient objects on current plate" +msgstr "Orientar automaticamente os objetos na mesa atual" + +msgid "Arrange objects on current plate" +msgstr "Organizar objetos na mesa atual" + +msgid "Unlock current plate" +msgstr "Desbloquear a mesa atual" + +msgid "Lock current plate" +msgstr "Bloquear a mesa atual" + +msgid "Edit current plate name" +msgstr "Editar nome da mesa atual" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "Personalizar a mesa atual" + +#, boost-format +msgid " plate %1%:" +msgstr " mesa %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Nome inválido, os seguintes caracteres não são permitidos:" + +msgid "Sliced Info" +msgstr "Info. fatiamento" + +msgid "Used Filament (m)" +msgstr "Filamento usado (m)" + +msgid "Used Filament (mm³)" +msgstr "Filamento usado (mm³)" + +msgid "Used Filament (g)" +msgstr "Filamento usado (g)" + +msgid "Used Materials" +msgstr "Materiais usados" + +msgid "Estimated time" +msgstr "Tempo estimado" + +msgid "Filament changes" +msgstr "Mudanças de filamento" + +msgid "Click to edit preset" +msgstr "Clique para editar o preset" + +msgid "Connection" +msgstr "Conexão" + +msgid "Bed type" +msgstr "Tipo de mesa" + +msgid "Flushing volumes" +msgstr "Volumes de Purga" + +msgid "Add one filament" +msgstr "Adicionar um filamento" + +msgid "Remove last filament" +msgstr "Remover o último filamento" + +msgid "Synchronize filament list from AMS" +msgstr "Sincronizar lista de filamentos do AMS" + +msgid "Set filaments to use" +msgstr "Definir filamentos para usar" + +msgid "Search plate, object and part." +msgstr "Pesquisar mesa, objeto e peça." + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Sem filamentos AMS. Por favor, selecione uma impressora na página " +"'Dispositivo' para carregar informações AMS." + +msgid "Sync filaments with AMS" +msgstr "Sincronizar filamentos com AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Sincronizar filamentos com AMS eliminará todas os presets de filamento e " +"cores selecionadas atualmente. Deseja continuar?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Já foi feita uma sincronização, deseja sincronizar apenas as alterações ou " +"ressincronizar tudo?" + +msgid "Sync" +msgstr "Sincronizar" + +msgid "Resync" +msgstr "Ressincronizar" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "Não há filamentos compatíveis, e a sincronização não é realizada." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Alguns filamentos desconhecidos foram mapeados para preset genérico. Por " +"favor, atualize o Snapmaker Orca ou reinicie o Snapmaker Orca para verificar se há " +"uma atualização para presets do sistema." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Deseja salvar as alterações em \"%1%\"?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Desmontado com sucesso. O dispositivo %s(%s) agora pode ser removido com " +"segurança do computador." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "A ejeção do dispositivo %s(%s) falhou." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "Projeto não salvo anterior detectado, deseja restaurá-lo?" + +msgid "Restore" +msgstr "Restaurar" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"A temperatura atual da mesa aquecida está relativamente alta. A boquilha " +"pode ficar obstruída ao imprimir este filamento em um compartimento fechado. " +"Por favor, abra a porta frontal e/ou remova o vidro superior." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"A dureza do bico necessária pelo filamento é maior do que a dureza padrão do " +"bico da impressora. Por favor, substitua a boquilha endurecida ou o " +"filamento, caso contrário, a boquilha será desgastada ou danificada." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"A habilitação da fotografia tradicional em timelapse pode causar " +"imperfeições na superfície. É recomendado mudar para o modo suave." + +msgid "Expand sidebar" +msgstr "Expandir barra lateral" + +msgid "Collapse sidebar" +msgstr "Recolher barra lateral" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Carregando arquivo: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "" +"O 3mf não é suportado pelo Snapmaker Orca, carregar apenas dados de geometria." + +msgid "Load 3mf" +msgstr "Carregar 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"A versão %s do 3mf é mais recente do que a versão %s do %s, encontradas as " +"seguintes chaves não reconhecidas:" + +msgid "You'd better upgrade your software.\n" +msgstr "Será melhor atualizar o seu software.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"A versão %s do 3mf é mais recente do que a versão %s do %s, sugerimos " +"atualizar seu software." + +msgid "Invalid values found in the 3mf:" +msgstr "Valores inválidos encontrados no 3mf:" + +msgid "Please correct them in the param tabs" +msgstr "Por favor, corrija-os nas guias de parâmetros" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" +"O 3mf possui os seguintes G-codes modificados em presets de filamento ou " +"impressora:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Por favor, confirme se esses G-codes modificados são seguros para evitar " +"qualquer dano à máquina!" + +msgid "Modified G-codes" +msgstr "G-codes modificados" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" +"O 3mf possui os seguintes perfis de filamento ou impressora personalizados:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Por favor, confirme se os G-codes dentro desses presets são seguros para " +"evitar qualquer dano à máquina!" + +msgid "Customized Preset" +msgstr "Perfil Personalizado" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "" +"O nome dos componentes dentro do arquivo STEP não está no formato UTF-8!" + +msgid "The name may show garbage characters!" +msgstr "O nome pode exibir caracteres inválidos!" + +msgid "Remember my choice." +msgstr "Lembrar minha escolha." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Falha ao carregar o arquivo \"%1%\". Foi encontrada uma configuração " +"inválida." + +msgid "Objects with zero volume removed" +msgstr "Objetos com volume zero removidos" + +msgid "The volume of the object is zero" +msgstr "O volume do objeto é zero" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"O objeto do arquivo %s é muito pequeno e pode estar em metros ou polegadas.\n" +"Deseja dimensioná-lo para milímetros?" + +msgid "Object too small" +msgstr "Objeto muito pequeno" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Este arquivo contém vários objetos posicionados em alturas múltiplas.\n" +"Em vez de considerá-los como múltiplos objetos, o arquivo deve ser " +"carregado\n" +"como um único objeto com múltiplas peças?" + +msgid "Multi-part object detected" +msgstr "Objeto multi-peça detectado" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "Carregar esses arquivos como um único objeto com múltiplas peças?\n" + +msgid "Object with multiple parts was detected" +msgstr "Objeto com múltiplas peças foi detectado" + +msgid "The file does not contain any geometry data." +msgstr "O arquivo não contém dados de geometria." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Seu objeto parece ser muito grande. Deseja dimensioná-lo para caber na mesa " +"de aquecimento automaticamente?" + +msgid "Object too large" +msgstr "Objeto muito grande" + +msgid "Export STL file:" +msgstr "Exportar arquivo STL:" + +msgid "Export AMF file:" +msgstr "Exportar arquivo AMF:" + +msgid "Save file as:" +msgstr "Salvar arquivo como:" + +msgid "Export OBJ file:" +msgstr "Exportar arquivo OBJ:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"O arquivo %s já existe\n" +"Deseja substituí-lo?" + +msgid "Confirm Save As" +msgstr "Confirmar Salvar Como" + +msgid "Delete object which is a part of cut object" +msgstr "Excluir objeto que é uma peça do objeto cortado" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Você está tentando excluir um objeto que é peça de um objeto cortado.\n" +"Essa ação quebrará uma correspondência de corte.\n" +"Após isso, a consistência do modelo não pode ser garantida." + +msgid "The selected object couldn't be split." +msgstr "O objeto selecionado não pôde ser dividido." + +msgid "Another export job is running." +msgstr "Outro trabalho de exportação está em execução." + +msgid "Unable to replace with more than one volume" +msgstr "Não é possível substituir por mais de um volume" + +msgid "Error during replace" +msgstr "Erro durante a substituição" + +msgid "Replace from:" +msgstr "Substituir de:" + +msgid "Select a new file" +msgstr "Selecione um novo arquivo" + +msgid "File for the replace wasn't selected" +msgstr "O arquivo para a substituição não foi selecionado" + +msgid "Please select a file" +msgstr "Por favor, selecione um arquivo" + +msgid "Do you want to replace it" +msgstr "Deseja substituí-lo" + +msgid "Message" +msgstr "Mensagem" + +msgid "Reload from:" +msgstr "Recarregar de:" + +msgid "Unable to reload:" +msgstr "Não é possível recarregar:" + +msgid "Error during reload" +msgstr "Erro durante a recarga" + +msgid "There are warnings after slicing models:" +msgstr "Existem avisos após o fatiamento dos modelos:" + +msgid "warnings" +msgstr "advertências" + +msgid "Invalid data" +msgstr "Dados inválidos" + +msgid "Slicing Canceled" +msgstr "Fatiamento Cancelado" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Fatiando Mesa %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Por favor, resolva os erros de fatiamento e publique novamente." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"O plug-in de rede não está detectado. Recursos relacionados à rede estão " +"indisponíveis." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Modo somente de visualização:\n" +"O arquivo carregado contém apenas código G, não é possível acessar a página " +"de Preparação" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" +"Você pode manter os presets modificados no novo projeto ou descartá-los" + +msgid "Creating a new project" +msgstr "Criando um novo projeto" + +msgid "Load project" +msgstr "Carregar Projeto" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Falha ao salvar o projeto.\n" +"Por favor, verifique se a pasta existe online ou se outros programas estão " +"com o arquivo do projeto aberto." + +msgid "Save project" +msgstr "Salvar Projeto" + +msgid "Importing Model" +msgstr "Importando Modelo" + +msgid "prepare 3mf file..." +msgstr "preparar o arquivo 3mf..." + +msgid "Download failed, unknown file format." +msgstr "Baixar falhou, formato de arquivo desconhecido." + +msgid "downloading project ..." +msgstr "baixando projeto..." + +msgid "Download failed, File size exception." +msgstr "Baixar falhou, erro no tamanho do arquivo." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Projeto baixado %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"A importação para a Snapmaker Orca falhou. Por favor, baixe o arquivo e importe " +"manualmente." + +msgid "Import SLA archive" +msgstr "Importar arquivo SLA" + +msgid "The selected file" +msgstr "O arquivo selecionado" + +msgid "does not contain valid gcode." +msgstr "não contém código G válido." + +msgid "Error occurs while loading G-code file" +msgstr "Erro ocorreu ao carregar o arquivo de código G" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "O carregamento de um arquivo ZIP no caminho %1% falhou." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "Falha ao descompactar arquivo para %1%: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"Falha ao encontrar arquivo descompactado em %1%. Descompactação do arquivo " +"falhou." + +msgid "Drop project file" +msgstr "Solte o arquivo do projeto" + +msgid "Please select an action" +msgstr "Por favor, selecione uma ação" + +msgid "Open as project" +msgstr "Abrir como projeto" + +msgid "Import geometry only" +msgstr "Importar apenas a geometria" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Apenas um arquivo de código G pode ser aberto de cada vez." + +msgid "G-code loading" +msgstr "Carregamento do G-code" + +msgid "G-code files can not be loaded with models together!" +msgstr "Arquivos de G-code não podem ser carregados junto com modelos!" + +msgid "Can not add models when in preview mode!" +msgstr "Não é possível adicionar modelos no modo de visualização!" + +msgid "All objects will be removed, continue?" +msgstr "Todos os objetos serão removidos, continuar?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "O projeto atual tem alterações não salvas, salvar antes de continuar?" + +msgid "Number of copies:" +msgstr "Número de cópias:" + +msgid "Copies of the selected object" +msgstr "Cópias do objeto selecionado" + +msgid "Save G-code file as:" +msgstr "Salvar arquivo de código G como:" + +msgid "Save SLA file as:" +msgstr "Salvar arquivo SLA como:" + +msgid "The provided file name is not valid." +msgstr "O nome de arquivo fornecido não é válido." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "" +"Os seguintes caracteres não são permitidos por um sistema de arquivos FAT:" + +msgid "Save Sliced file as:" +msgstr "Salvar arquivo fatiado como:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"O arquivo %s foi enviado para o espaço de armazenamento da impressora e pode " +"ser visualizado na impressora." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Não é possível executar a operação booleana em malhas de modelo. Somente " +"partes positivas serão mantidas. Você pode consertar as malhas e tentar " +"novamente." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Motivo: parte \"%1%\" está vazia." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Motivo: parte \"%1%\" não está vinculada a um volume." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Motivo: parte \"%1%\" tem auto-intersecção." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Motivo: \"%1%\" e outra parte não tem intersecção." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"Você tem certeza de que deseja armazenar os SVGs originais com seus caminhos " +"locais no arquivo 3MF?\n" +"Se pressionar 'NÃO', todos os SVGs no projeto não serão mais editáveis." + +msgid "Private protection" +msgstr "Proteção privada" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" +"A impressora está pronta? O folha de impressão está no lugar, vazia e limpa?" + +msgid "Upload and Print" +msgstr "Enviar e Imprimir" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Imprimir por objeto: \n" +"Sugere-se usar o auto-arranjo para evitar colisões ao imprimir." + +msgid "Send G-code" +msgstr "Enviar G-code" + +msgid "Send to printer" +msgstr "Enviar para a impressora" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" +"Os suportes personalizados e a pintura de cores foram removidos antes do " +"reparo." + +msgid "Optimize Rotation" +msgstr "Otimizar Rotação" + +msgid "Invalid number" +msgstr "Número inválido" + +msgid "Plate Settings" +msgstr "Configurações da Mesa" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Número de peças atualmente selecionadas: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Número de objetos atualmente selecionados: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Nome da peça: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Nome do objeto: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Tamanho: %1% x %2% x %3% pol\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Tamanho: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Volume: %1% pol³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Volume: %1% mm3\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Triângulos: %1%\n" + +msgid "Tips:" +msgstr "Dicas:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"A função \"Corrigir Modelo\" está atualmente disponível apenas no Windows. " +"Por favor, repare o modelo no Snapmaker Orca (Windows) ou softwares CAD." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Mesa %d: %s não é recomendada para ser usada para imprimir filamento %s(%s). " +"Se você ainda quiser fazer esta impressão, por favor, defina a temperatura " +"de mesa deste filamento para zero" + +msgid "Switching the language requires application restart.\n" +msgstr "Mudar o idioma requer reiniciar o aplicativo.\n" + +msgid "Do you want to continue?" +msgstr "Você deseja continuar?" + +msgid "Language selection" +msgstr "Seleção de Idioma" + +msgid "Switching application language while some presets are modified." +msgstr "" +"A mudança do idioma do aplicativo enquanto alguns presets estão modificados." + +msgid "Changing application language" +msgstr "Alterando o idioma do aplicativo" + +msgid "Changing the region will log out your account.\n" +msgstr "Mudar a região fará logout da sua conta.\n" + +msgid "Region selection" +msgstr "Seleção de Região" + +msgid "Second" +msgstr "Segundo" + +msgid "Browse" +msgstr "Procurar" + +msgid "Choose Download Directory" +msgstr "Escolha o Diretório de Download" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "Configurações Gerais" + +msgid "Asia-Pacific" +msgstr "Ásia-Pacífico" + +msgid "China" +msgstr "China" + +msgid "Europe" +msgstr "Europa" + +msgid "North America" +msgstr "América do Norte" + +msgid "Others" +msgstr "Outros" + +msgid "Login Region" +msgstr "Região de Login" + +msgid "Stealth Mode" +msgstr "Modo Oculto" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" +"Isso interrompe a transmissão de dados para os serviços de nuvem de Bambu. " +"Os usuários que não usam máquinas BBL ou usar modo LAN só podem ativar esta " +"função com segurança." + +msgid "Enable network plugin" +msgstr "Ativar plugin de rede" + +msgid "Check for stable updates only" +msgstr "Verificar apenas atualizações estáveis" + +msgid "Metric" +msgstr "Métrico" + +msgid "Imperial" +msgstr "Imperial" + +msgid "Units" +msgstr "Unidades" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "Permitir apenas uma instância Snapmaker Orca" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"No OSX, sempre há uma instância do aplicativo sendo executado por padrão. No " +"entanto, é permitido executar várias instâncias do mesmo aplicativo a partir " +"da linha de comando. Neste caso, apenas uma instância será permitida." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" +"Se esta opção estiver habilitada, ao iniciar o Snapmaker Orca e outra instância " +"do mesmo Snapmaker Orca já estiver em execução, essa instância será reativada em " +"vez disso." + +msgid "Home" +msgstr "Início" + +msgid "Default Page" +msgstr "Página Padrão" + +msgid "Set the page opened on startup." +msgstr "Define a página aberta na inicialização." + +msgid "Touchpad" +msgstr "Touchpad" + +msgid "Camera style" +msgstr "Estilo da câmera" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"Selecione o estilo de navegação da câmera.\n" +"Padrão: LMB + mover para rotacionar, RMB/MMB + mover para fazer pan.\n" +"Touchpad: Alt+mover para rotacionar, Shift+mover para fazer pan." + +msgid "Zoom to mouse position" +msgstr "Zoom para a posição do mouse" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Dar zoom em direção à posição do ponteiro do mouse na visualização 3D, em " +"vez do centro da janela 2D." + +msgid "Use free camera" +msgstr "Usar câmera livre" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "Se ativado, usa câmera livre. Se não ativado, usa câmera restrita." + +msgid "Reverse mouse zoom" +msgstr "Inverter zoom do mouse" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "Se ativo, inverte a direção de zoom com o mouse" + +msgid "Show splash screen" +msgstr "Mostrar tela de abertura" + +msgid "Show the splash screen during startup." +msgstr "Mostra a tela de abertura durante a inicialização." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Mostrar notificação \"Dica do dia\" após o início" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Se ativado, dicas úteis são exibidas na inicialização." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "Volumes de Purga: Auto-calcular toda vez que a cor mudar." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "Se ativado, auto-calcular toda vez que a cor mudar." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "Volumes de Purga: Auto-calcular toda vez que a cor mudar." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "Se ativo, auto-calcular toda vez que a cor mudar" + +msgid "Remember printer configuration" +msgstr "Lembrar configuração da impressora" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" +"Se ativo, Orca vai lembrar e alternar a configuração de filamento/processo " +"para cada impressora automaticamente." + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" +"Gerenciamento de multi-dispositivos(Entra em vigor após reiniciar o Orca)." + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"Com esta opção habilitada, você pode enviar uma tarefa para vários " +"dispositivos ao mesmo tempo e gerenciar vários dispositivos." + +msgid "Network" +msgstr "Rede" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Sincronização automática de presets do usuário(Impressora/Filamento/Processo)" + +msgid "User Sync" +msgstr "Sincronização do Usuário" + +msgid "Update built-in Presets automatically." +msgstr "Atualizar presets integrados automaticamente." + +msgid "System Sync" +msgstr "Sincronização do Sistema" + +msgid "Clear my choice on the unsaved presets." +msgstr "Limpar minha escolha nos presets não salvos." + +msgid "Associate files to Snapmaker Orca" +msgstr "Associar arquivos ao Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Associar arquivos .3mf ao Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Se ativado, define Snapmaker Orca como aplicativo padrão para abrir arquivos .3mf" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Associar arquivos .stl ao Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Se ativado, define Snapmaker Orca como aplicativo padrão para abrir arquivos .stl" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Associar arquivos .step/.stp ao Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Se ativado, define Snapmaker Orca como aplicativo padrão para abrir arquivos ." +"step" + +msgid "Associate web links to Snapmaker Orca" +msgstr "Associar links da web ao Snapmaker Orca" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "Associar URLs ao Snapmaker Orca" + +msgid "Maximum recent projects" +msgstr "Máximo de projetos recentes" + +msgid "Maximum count of recent projects" +msgstr "Contagem máxima de projetos recentes" + +msgid "Clear my choice on the unsaved projects." +msgstr "Limpar minha escolha nos projetos não salvos." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "Sem avisos ao carregar 3MF com códigos G modificados" + +msgid "Auto-Backup" +msgstr "Backup Automático" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Faça backup do seu projeto periodicamente para restaurar de falhas " +"ocasionais." + +msgid "every" +msgstr "cada" + +msgid "The peroid of backup in seconds." +msgstr "O período de backup em segundos." + +msgid "Downloads" +msgstr "Downloads" + +msgid "Dark Mode" +msgstr "Modo Escuro" + +msgid "Enable Dark mode" +msgstr "Ativar Modo Escuro" + +msgid "Develop mode" +msgstr "Modo de Desenvolvimento" + +msgid "Skip AMS blacklist check" +msgstr "Pular verificação de lista negra AMS" + +msgid "Home page and daily tips" +msgstr "Página inicial e dicas diárias" + +msgid "Show home page on startup" +msgstr "Mostrar página inicial na inicialização" + +msgid "Sync settings" +msgstr "Sincronizar configurações" + +msgid "User sync" +msgstr "Sincronização do usuário" + +msgid "Preset sync" +msgstr "Sincronização de preset" + +msgid "Preferences sync" +msgstr "Sincronização de preferências" + +msgid "View control settings" +msgstr "Configurações de controle de visualização" + +msgid "Rotate of view" +msgstr "Rotação da visualização" + +msgid "Move of view" +msgstr "Movimento da visualização" + +msgid "Zoom of view" +msgstr "Zoom da visualização" + +msgid "Other" +msgstr "Outro" + +msgid "Mouse wheel reverses when zooming" +msgstr "O botão de roda do mouse inverte ao fazer zoom" + +msgid "Enable SSL(MQTT)" +msgstr "Ativar SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Ativar SSL(FTP)" + +msgid "Internal developer mode" +msgstr "Modo de desenvolvedor interno" + +msgid "Log Level" +msgstr "Nível de log" + +msgid "fatal" +msgstr "fatal" + +msgid "error" +msgstr "erro" + +msgid "warning" +msgstr "aviso" + +msgid "debug" +msgstr "depurar" + +msgid "trace" +msgstr "traço" + +msgid "Host Setting" +msgstr "Configuração de host" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "Host DEV: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "Host QA: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "Host PRE: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Host de Produto" + +msgid "debug save button" +msgstr "botão de salvar depuração" + +msgid "save debug settings" +msgstr "salvar configurações de depuração" + +msgid "DEBUG settings have saved successfully!" +msgstr "As configurações de depuração foram salvas com sucesso!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Mudar o ambiente de nuvem, Por favor, faça login novamente!" + +msgid "System presets" +msgstr "Presets do sistema" + +msgid "User presets" +msgstr "Presets do usuário" + +msgid "Incompatible presets" +msgstr "Presets incompatíveis" + +msgid "AMS filaments" +msgstr "Filamentos AMS" + +msgid "Click to pick filament color" +msgstr "Clique para escolher a cor do filamento" + +msgid "Please choose the filament colour" +msgstr "Por favor, escolha a cor do filamento" + +msgid "Add/Remove presets" +msgstr "Adicionar/Remover presets" + +msgid "Edit preset" +msgstr "Editar preset" + +msgid "Project-inside presets" +msgstr "Presets dentro do projeto" + +msgid "Add/Remove filaments" +msgstr "Adicionar/Remover filamentos" + +msgid "Add/Remove materials" +msgstr "Adicionar/Remover materiais" + +msgid "Select/Remove printers(system presets)" +msgstr "Selecionar/Remover impressoras (presets do sistema)" + +msgid "Create printer" +msgstr "Criar impressora" + +msgid "The selected preset is null!" +msgstr "O preset selecionada é nulo!" + +msgid "End" +msgstr "Fim" + +msgid "Customize" +msgstr "Personalizar" + +msgid "Other layer filament sequence" +msgstr "Sequência de filamento de outra camada" + +msgid "Please input layer value (>= 2)." +msgstr "Por favor, insira o valor da camada (>= 2)." + +msgid "Plate name" +msgstr "Nome da mesa" + +msgid "Same as Global Print Sequence" +msgstr "Mesmo que a Sequência Global de Impressão" + +msgid "Print sequence" +msgstr "Sequência de impressão" + +msgid "Same as Global" +msgstr "Igual ao Global" + +msgid "Disable" +msgstr "Desativar" + +msgid "Spiral vase" +msgstr "Vaso espiral" + +msgid "First layer filament sequence" +msgstr "Sequência de filamento da primeira camada" + +msgid "Same as Global Plate Type" +msgstr "Mesmo que o Tipo de Mesa Global" + +msgid "Same as Global Bed Type" +msgstr "Mesmo que o Tipo de Mesa Global" + +msgid "By Layer" +msgstr "Por camada" + +msgid "By Object" +msgstr "Por objeto" + +msgid "Accept" +msgstr "Aceitar" + +msgid "Log Out" +msgstr "Sair" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "Fatiar todas as mesas para obter estimativa de tempo e filamento" + +msgid "Packing project data into 3mf file" +msgstr "Empacotando dados do projeto em arquivo 3mf" + +msgid "Uploading 3mf" +msgstr "Carregando 3mf" + +msgid "Jump to model publish web page" +msgstr "Ir para a página web de publicação de modelos" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "" +"Nota: A preparação pode levar vários minutos. Por favor, seja paciente." + +msgid "Publish" +msgstr "Publicar" + +msgid "Publish was cancelled" +msgstr "A publicação foi cancelada" + +msgid "Slicing Plate 1" +msgstr "Fatiando mesa 1" + +msgid "Packing data to 3mf" +msgstr "Empacotando dados em 3mf" + +msgid "Jump to webpage" +msgstr "Ir para a página web" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Salvar %s como" + +msgid "User Preset" +msgstr "Preset do usuário" + +msgid "Preset Inside Project" +msgstr "Preset dentro do projeto" + +msgid "Name is unavailable." +msgstr "O nome não está disponível." + +msgid "Overwrite a system profile is not allowed" +msgstr "Sobrescrever um perfil de sistema não é permitido" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "O perfil \"%1%\" já existe." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "O perfil \"%1%\" já existe e é incompatível com a impressora atual." + +msgid "Please note that saving action will replace this preset" +msgstr "Por favor, note que a ação de salvar substituirá este perfil" + +msgid "The name cannot be the same as a preset alias name." +msgstr "O nome não pode ser o mesmo que um nome de alias de perfil." + +msgid "Save preset" +msgstr "Salvar perfil" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Cópia" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "A impressora \"%1%\" está selecionada com o perfil \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Por favor, escolha uma ação com o perfil \"%1%\" após salvar." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Para \"%1%\", mude \"%2%\" para \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Para \"%1%\", adicione \"%2%\" como um novo perfil" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Simplesmente mude para \"%1%\"" + +msgid "Task canceled" +msgstr "Tarefa cancelada" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Buscar" + +msgid "My Device" +msgstr "Meu dispositivo" + +msgid "Other Device" +msgstr "Outro dispositivo" + +msgid "Online" +msgstr "Disponível" + +msgid "Input access code" +msgstr "Digite o código de acesso" + +msgid "Can't find my devices?" +msgstr "Não consegue encontrar meus dispositivos?" + +msgid "Log out successful." +msgstr "Sessão encerrada com sucesso." + +msgid "Busy" +msgstr "Ocupado" + +msgid "Bambu Cool Plate" +msgstr "Bambu Cool Plate (Mesa Fria)" + +msgid "PLA Plate" +msgstr "Mesa PLA" + +msgid "Bambu Engineering Plate" +msgstr "Mesa de Engenharia Bambu" + +msgid "Bambu Smooth PEI Plate" +msgstr "Mesa de PEI Lisa Bambu" + +msgid "High temperature Plate" +msgstr "Mesa de Alta Temperatura" + +msgid "Bambu Textured PEI Plate" +msgstr "Mesa Texturizada PEI Bambu" + +msgid "Send print job to" +msgstr "Enviar trabalho de impressão para" + +msgid "Flow Dynamics Calibration" +msgstr "Calibração de Dinâmica de Fluxo" + +msgid "Click here if you can't connect to the printer" +msgstr "Clique aqui se não conseguir conectar-se à impressora" + +msgid "send completed" +msgstr "enviado completo" + +msgid "Error code" +msgstr "Código de erro" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "Sem conta de login, apenas as impressoras em modo LAN são exibidas" + +msgid "Connecting to server" +msgstr "Conectando ao servidor" + +msgid "Synchronizing device information" +msgstr "Sincronizando informações do dispositivo" + +msgid "Synchronizing device information time out" +msgstr "Tempo limite de sincronização das informações do dispositivo" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"Não é possível enviar o trabalho de impressão quando a impressora está " +"atualizando o firmware" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"A impressora está executando instruções. Por favor, reinicie a impressão " +"após terminar" + +msgid "The printer is busy on other print job" +msgstr "A impressora está ocupada com outro trabalho de impressão" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"O filamento %s excede o número de slots AMS. Por favor, atualize o firmware " +"da impressora para suportar a atribuição de slots AMS." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"O filamento excede o número de slots AMS. Por favor, atualize o firmware da " +"impressora para suportar a atribuição de slots AMS." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Foram estabelecidos mapeamentos de filamentos para slots AMS. Você pode " +"clicar em um filamento acima para mudar seu slot AMS mapeado" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Por favor, clique em cada filamento acima para especificar seu slot AMS " +"mapeado antes de enviar o trabalho de impressão" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"O filamento %s não corresponde ao filamento no slot AMS %s. Por favor, " +"atualize o firmware da impressora para suportar a atribuição de slots AMS." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"O filamento não corresponde ao filamento no slot AMS. Por favor, atualize o " +"firmware da impressora para suportar a atribuição de slots AMS." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"O firmware da impressora só suporta mapeamento sequencial de filamento => " +"slot AMS." + +msgid "An SD card needs to be inserted before printing." +msgstr "Um cartão SD precisa ser inserido antes de imprimir." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"A impressora selecionada (%s) é incompatível com o perfil escolhido de " +"impressora no fatiador (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "Um cartão SD precisa ser inserido para gravar o timelapse." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Não é possível enviar o trabalho de impressão para uma impressora cujo " +"firmware precisa ser atualizado." + +msgid "Cannot send the print job for empty plate" +msgstr "Não é possível enviar o trabalho de impressão para uma mesa vazia" + +msgid "This printer does not support printing all plates" +msgstr "Esta impressora não suporta a impressão em todas as mesas" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"Quando o modo vaso espiral está ativado, máquinas com estrutura I3 não irão " +"gerar vídeos timelapse." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Timelapse não é suportado porque a sequência de impressão está configurada " +"para \"Por objeto\"." + +msgid "Errors" +msgstr "Erros" + +msgid "Please check the following:" +msgstr "Por favor, verifique o seguinte:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"O tipo de impressora selecionado ao gerar o G-Code não está consistente com " +"a impressora atualmente selecionada. É recomendado que você use o mesmo tipo " +"de impressora para fatiar." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"Há alguns filamentos desconhecidos nos mapeamentos AMS. Por favor, verifique " +"se eles são os filamentos necessários. Se estiverem corretos, pressione " +"\"Confirmar\" para iniciar a impressão." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "bico no perfil: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "bico memorizado: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Seu diâmetro de bico no arquivo fatiado não é consistente com o bico " +"memorizado. Se você mudou seu bico recentemente, vá para Dispositivo > " +"Partes da impressora para alterar as configurações." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Imprimir material de temperatura alta (material %s) com %s poderá causar " +"danos ao bico" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "" +"Por favor, corrija o erro acima, caso contrário a impressão não poderá " +"continuar." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Por favor, clique no botão de confirmação se ainda deseja prosseguir com a " +"impressão." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Conectando à impressora. Não é possível cancelar durante o processo de " +"conexão." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Cuidado ao usar! A calibração de fluxo no PEI Texturizado pode falhar devido " +"à superfície irregular." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Calibração automática de fluxo usando Micro Lidar" + +msgid "Modifying the device name" +msgstr "Modificando o nome do dispositivo" + +msgid "Bind with Pin Code" +msgstr "Vincular com Código PIN" + +msgid "Send to Printer SD card" +msgstr "Enviar para o cartão SD da impressora" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "" +"Não é possível enviar a tarefa de impressão quando a atualização está em " +"progresso" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "" +"A impressora selecionada é incompatível com os perfis de impressora " +"escolhidos." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "" +"Um cartão SD precisa ser inserido antes de enviar para o cartão SD da " +"impressora." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "A impressora deve estar na mesma LAN do Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "A impressora não suporta enviar para o cartão SD da impressora." + +msgid "Slice ok." +msgstr "Fatiamento ok." + +msgid "View all Daily tips" +msgstr "Ver todas as dicas diárias" + +msgid "Failed to create socket" +msgstr "Falha ao criar o socket" + +msgid "Failed to connect socket" +msgstr "Falha ao conectar o socket" + +msgid "Failed to publish login request" +msgstr "Falha ao publicar a solicitação de login" + +msgid "Get ticket from device timeout" +msgstr "Tempo esgotado ao obter o ticket do dispositivo" + +msgid "Get ticket from server timeout" +msgstr "Tempo esgotado ao obter o ticket do servidor" + +msgid "Failed to post ticket to server" +msgstr "Falha ao enviar o ticket para o servidor" + +msgid "Failed to parse login report reason" +msgstr "Falha ao analisar o motivo do relatório de login" + +msgid "Receive login report timeout" +msgstr "Tempo esgotado ao receber o relatório de login" + +msgid "Unknown Failure" +msgstr "Falha desconhecida" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Encontre o Código PIN na página da conta na tela da impressora,\n" +" e digite o Código PIN abaixo." + +msgid "Can't find Pin Code?" +msgstr "Não consegue encontrar o Código PIN?" + +msgid "Pin Code" +msgstr "Código PIN" + +msgid "Binding..." +msgstr "Vinculando..." + +msgid "Please confirm on the printer screen" +msgstr "Confirme na tela da impressora" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Login falhou. Por favor, verifique o Código PIN." + +msgid "Log in printer" +msgstr "Entrar na impressora" + +msgid "Would you like to log in this printer with current account?" +msgstr "Você gostaria de entrar nesta impressora com a conta atual?" + +msgid "Check the reason" +msgstr "Verifique o motivo" + +msgid "Read and accept" +msgstr "Ler e aceitar" + +msgid "Terms and Conditions" +msgstr "Termos e Condições" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Obrigado por adquirir um dispositivo Bambu Lab. Antes de usar seu " +"dispositivo Bambu Lab, leia os termos e condições. Ao clicar para concordar " +"em usar seu dispositivo Bambu Lab, você concorda em cumprir a Política de " +"Privacidade e os Termos de Uso (coletivamente, os \"Termos\"). Se você não " +"concordar ou não cumprir com a Política de Privacidade da Bambu Lab, não use " +"os equipamentos e serviços da Bambu Lab." + +msgid "and" +msgstr "e" + +msgid "Privacy Policy" +msgstr "Política de Privacidade" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Pedimos sua ajuda para melhorar a impressora de todos" + +msgid "Statement about User Experience Improvement Program" +msgstr "Declaração sobre o Programa de Melhoria da Experiência do Usuário" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"Na comunidade de Impressão 3D, aprendemos com os sucessos e falhas uns dos " +"outros para ajustar nossos próprios parâmetros de fatiamento e " +"configurações. %s segue o mesmo princípio e utiliza aprendizado de máquina " +"para melhorar seu desempenho a partir dos sucessos e falhas do grande número " +"de impressões feitas por nossos usuários. Estamos treinando %s para ser mais " +"inteligente alimentando-os com dados do mundo real. Se você concordar, este " +"serviço acessará informações de seus registros de erros e registros de uso, " +"que podem incluir informações descritas na Política de Privacidade. Não " +"coletaremos quaisquer Dados Pessoais pelos quais um indivíduo possa ser " +"identificado diretamente ou indiretamente, incluindo, sem limitação, nomes, " +"endereços, informações de pagamento ou números de telefone. Ao ativar este " +"serviço, você concorda com estes termos e com a declaração sobre a Política " +"de Privacidade." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Declaração sobre o Plano de Melhoria da Experiência do Usuário" + +msgid "Log in successful." +msgstr "Entrada bem-sucedida." + +msgid "Log out printer" +msgstr "Desconectar a impressora" + +msgid "Would you like to log out the printer?" +msgstr "Deseja desconectar a impressora?" + +msgid "Please log in first." +msgstr "Por favor, faça login primeiro." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "" +"Houve um problema ao conectar-se à impressora. Por favor, tente novamente." + +msgid "Failed to log out." +msgstr "Falha ao desconectar." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Salvar %s atual" + +msgid "Delete this preset" +msgstr "Excluir este preset" + +msgid "Search in preset" +msgstr "Pesquisar nos presets" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Clique para redefinir todas as configurações para o último preset salvo." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"A Torre Prime é necessária para um timelapse suave. Pode haver falhas no " +"modelo sem a torre prime. Tem certeza de que deseja desativar a torre prime?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"A Torre Prime é necessária para um timelapse suave. Pode haver falhas no " +"modelo sem a torre prime. Deseja ativar a torre prime?" + +msgid "Still print by object?" +msgstr "Ainda imprimir por objeto?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Adicionamos um estilo experimental \"Tree Slim\" que apresenta um volume de " +"suporte menor, mas uma resistência mais fraca.\n" +"Recomendamos usar com: 0 camadas de interface, 0 distância superior, 2 " +"paredes." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Alterar essas configurações automaticamente? \n" +"Sim - Alterar essas configurações automaticamente\n" +"Não - Não alterar essas configurações para mim" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Para os estilos \"Tree Strong\" e \"Tree Hybrid\", recomendamos as seguintes " +"configurações: pelo menos 2 camadas de interface, pelo menos 0.1mm de " +"distância superior em z ou uso de materiais de suporte na interface." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"Ao usar material de suporte para a interface de suporte, recomendamos as " +"seguintes configurações:\n" +"distância z superior 0, espaçamento de interface 0, padrão concêntrico e " +"desabilitar altura de camada de suporte independente" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"Habilitar esta opção modificará a forma do modelo. Se sua impressão exigir " +"dimensões precisas ou fizer parte de uma montagem, é importante verificar " +"duplamente se essa mudança na geometria afeta a funcionalidade da sua " +"impressão." + +msgid "Are you sure you want to enable this option?" +msgstr "Tem certeza de que deseja habilitar esta opção?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"A altura da camada é muito pequena.\n" +"Ela será definida como altura mínima da camada\n" +"A altura da camada é muito pequena.\n" +"Ela será definida como altura mínima da camada\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"A altura da camada excede o limite em Configurações da Impressora -> " +"Extrusora -> Limites de altura da camada, isso pode causar problemas de " +"qualidade de impressão." + +msgid "Adjust to the set range automatically? \n" +msgstr "Ajustar automaticamente à faixa definida? \n" + +msgid "Adjust" +msgstr "Ajustar" + +msgid "Ignore" +msgstr "Ignorar" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Recurso experimental: Retrair e cortar o filamento a uma distância maior " +"durante mudanças de filamento para minimizar a purga. Embora possa reduzir " +"notavelmente a purga, ele também pode elevar o risco de bolhas no bico ou " +"outras complicações de impressão." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Recurso experimental: Retrair e cortar o filamento a uma distância maior " +"durante as trocas de filamento para minimizar a purga. Embora isso possa " +"reduzir consideravelmente a purga, também pode aumentar o risco de " +"obstruções no bico ou outras complicações de impressão. Por favor, use com o " +"firmware mais recente da impressora." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"Ao gravar um timelapse sem o hotend aparecer, é recomendável adicionar uma " +"\"Torre Prime para Timelapse\" \n" +"clique com o botão direito na posição vazia da mesa e escolha \"Adicionar " +"Primitivo\"->\"Torre Prime para Timelapse\"." + +msgid "Line width" +msgstr "Largura da linha" + +msgid "Seam" +msgstr "Costura" + +msgid "Precision" +msgstr "Precisão" + +msgid "Wall generator" +msgstr "Gerador de perímetros" + +msgid "Walls and surfaces" +msgstr "Perímetros e superfícies" + +msgid "Bridging" +msgstr "Ponte" + +msgid "Overhangs" +msgstr "Overhangs" + +msgid "Walls" +msgstr "Perímetros" + +msgid "Top/bottom shells" +msgstr "Camadas de topo/base" + +msgid "Initial layer speed" +msgstr "Velocidade da primeira camada" + +msgid "Other layers speed" +msgstr "Velocidade de outras camadas" + +msgid "Overhang speed" +msgstr "Velocidade em overhangs" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Esta é a velocidade para vários graus de avanço. Os graus de avanço são " +"expressos como uma porcentagem da largura da linha. A velocidade 0 significa " +"que não há desaceleração para o intervalo de graus de avanço e a velocidade " +"do perímetro é usada" + +msgid "Bridge" +msgstr "Ponte" + +msgid "Set speed for external and internal bridges" +msgstr "Definir velocidade para pontes externas e internas" + +msgid "Travel speed" +msgstr "Velocidade de deslocamento" + +msgid "Acceleration" +msgstr "Aceleração" + +msgid "Jerk(XY)" +msgstr "Jerk(XY)" + +msgid "Raft" +msgstr "Jangada" + +msgid "Support filament" +msgstr "Filamento de suporte" + +msgid "Tree supports" +msgstr "Suportes de árvore" + +msgid "Skirt" +msgstr "Saia" + +msgid "Prime tower" +msgstr "Torre Prime" + +msgid "Special mode" +msgstr "Modo especial" + +msgid "G-code output" +msgstr "Opções do G-code" + +msgid "Post-processing Scripts" +msgstr "Scripts de pós-processamento" + +msgid "Notes" +msgstr "Notas" + +msgid "Frequent" +msgstr "Frequente" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"A linha %s seguinte contém palavras-chave reservadas.\n" +"Por favor, remova-a, ou afetará a visualização do código G e a estimativa de " +"tempo de impressão." +msgstr[1] "" +"As linhas %s seguintes contêm palavras-chave reservadas.\n" +"Por favor, remova-as, ou afetará a visualização do código G e a estimativa " +"de tempo de impressão." + +msgid "Reserved keywords found" +msgstr "Palavras-chave reservadas encontradas" + +msgid "Setting Overrides" +msgstr "Sobrescrever configurações" + +msgid "Retraction" +msgstr "Retração" + +msgid "Basic information" +msgstr "Informações básicas" + +msgid "Recommended nozzle temperature" +msgstr "Temperatura recomendada do bico" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Faixa de temperatura recomendada para esta boquilha. 0 significa não definido" + +msgid "Print chamber temperature" +msgstr "Temperatura da câmara de impressão" + +msgid "Print temperature" +msgstr "Temperatura de impressão" + +msgid "Nozzle" +msgstr "Bico" + +msgid "Nozzle temperature when printing" +msgstr "Temperatura do bico ao imprimir" + +msgid "Cool plate" +msgstr "Mesa fria" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Temperatura da mesa quando a cool plate (mesa fria) está instalada. Valor 0 " +"significa que o filamento não suporta impressão na cool plate" + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "Mesa de engenharia" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Temperatura da mesa quando a mesa de engenharia está instalada. Valor 0 " +"significa que o filamento não suporta impressão na Mesa de Engenharia" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Mesa PEI lisa / Mesa de alta temperatura" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Temperatura da mesa quando a mesa PEI lisa/ de alta temperatura está " +"instalada. O valor 0 significa que o filamento não suporta a impressão na " +"Mesa PEI lisa/Mesa de Alta Temperatura" + +msgid "Textured PEI Plate" +msgstr "Mesa PEI Texturizada" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Temperatura da mesa quando a mesa PEI texturizada está instalada. O valor 0 " +"significa que o filamento não suporta impressão na mesa PEI texturizada" + +msgid "Volumetric speed limitation" +msgstr "Limitação de fluxo volumétrico" + +msgid "Cooling" +msgstr "Resfriamento" + +msgid "Cooling for specific layer" +msgstr "Resfriamento para camada específica" + +msgid "Part cooling fan" +msgstr "Ventilador de resfriamento da peça" + +msgid "Min fan speed threshold" +msgstr "Limiar de velocidade mínima do ventilador" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"A velocidade do ventilador de resfriamento da peça começará a funcionar na " +"velocidade mínima quando o tempo estimado da camada não for mais longo do " +"que o tempo da camada ajustado. Quando o tempo da camada for menor que o " +"limite, a velocidade do ventilador é interpolada entre a velocidade mínima e " +"máxima de acordo com o tempo de impressão da camada" + +msgid "Max fan speed threshold" +msgstr "Limiar de velocidade máxima do ventilador" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"A velocidade do ventilador de resfriamento da peça será máxima quando o " +"tempo estimado da camada for menor que o valor ajustado" + +msgid "Auxiliary part cooling fan" +msgstr "Ventilador auxiliar de resfriamento da peça" + +msgid "Exhaust fan" +msgstr "Ventilador de exaustão" + +msgid "During print" +msgstr "Durante a impressão" + +msgid "Complete print" +msgstr "Impressão concluída" + +msgid "Filament start G-code" +msgstr "G-code de início do filamento" + +msgid "Filament end G-code" +msgstr "G-code final do filamento" + +msgid "Multimaterial" +msgstr "Multimaterial" + +msgid "Wipe tower parameters" +msgstr "Parâmetros da Torre Prime" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "" +"Parâmetros de troca de ferramentas com impressoras MM de extrusora única" + +msgid "Ramming settings" +msgstr "Configurações de moldeamento" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "" +"Parâmetros de troca de ferramentas com impressoras MM de múltiplas extrusoras" + +msgid "Printable space" +msgstr "Espaço de impressão" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "" + +msgid "G-code flavor is switched" +msgstr "" + +msgid "Cooling Fan" +msgstr "Ventilador de resfriamento" + +msgid "Fan speed-up time" +msgstr "Tempo de aceleração do ventilador" + +msgid "Extruder Clearance" +msgstr "Margem da extrusora" + +msgid "Adaptive bed mesh" +msgstr "Bed Mesh adaptativo" + +msgid "Accessory" +msgstr "Acessório" + +msgid "Machine gcode" +msgstr "G-Code da máquina" + +msgid "Machine start G-code" +msgstr "G-Code de início da máquina" + +msgid "Machine end G-code" +msgstr "G-Code final da máquina" + +msgid "Printing by object G-code" +msgstr "G-Code de impressão por objeto" + +msgid "Before layer change G-code" +msgstr "G-Code antes da mudança de camada" + +msgid "Layer change G-code" +msgstr "G-Code de mudança de camada" + +msgid "Time lapse G-code" +msgstr "G-Code de timelapse" + +msgid "Change filament G-code" +msgstr "G-Code de mudança de filamento" + +msgid "Change extrusion role G-code" +msgstr "G-Code de mudança de tipo de extrusão" + +msgid "Pause G-code" +msgstr "G-Code de pausa" + +msgid "Template Custom G-code" +msgstr "G-Code personalizado do modelo" + +msgid "Motion ability" +msgstr "Movimento" + +msgid "Normal" +msgstr "normal" + +msgid "Speed limitation" +msgstr "Limitação de velocidade" + +msgid "Acceleration limitation" +msgstr "Limitação de aceleração" + +msgid "Jerk limitation" +msgstr "Limitação de Jerk" + +msgid "Single extruder multimaterial setup" +msgstr "Configuração de múltiplos materiais com um único extrusor" + +msgid "Wipe tower" +msgstr "Torre Prime" + +msgid "Single extruder multimaterial parameters" +msgstr "Parâmetros de múltiplos materiais com um único extrusor" + +msgid "Layer height limits" +msgstr "Limites de altura da camada" + +msgid "Lift Z Enforcement" +msgstr "Aplicação do Z hop" + +msgid "Retraction when switching material" +msgstr "Retração ao trocar material" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"A opção de Limpeza não está disponível ao usar o modo de Retração de " +"Firmware.\n" +"\n" +"Deseja desativá-lo para habilitar a Retração de Firmware?" + +msgid "Firmware Retraction" +msgstr "Retração de Firmware" + +msgid "Detached" +msgstr "Desanexado" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"%d Preset de Filamento e %d Preset de Processo estão vinculados a esta " +"impressora. Esses presets serão excluídos se a impressora for deletada." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "Os perfis herdados por outros perfis não podem ser excluídos!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Os seguintes perfis herdam este perfil." +msgstr[1] "O seguinte perfil herda este perfil." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Perfil" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "O seguinte perfil também será excluído." +msgstr[1] "Os seguintes perfis também serão excluídos." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Tem certeza de que deseja excluir o perfil selecionado? \n" +"Se o perfil corresponde a um filamento atualmente em uso em sua impressora, " +"redefina as informações do filamento para esse slot." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Tem certeza de %1% o perfil selecionado?" + +msgid "All" +msgstr "Todos" + +msgid "Set" +msgstr "Definir" + +msgid "Click to reset current value and attach to the global value." +msgstr "Clique para redefinir o valor atual e anexá-lo ao valor global." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Clique para descartar a modificação atual e redefinir para o valor salvo." + +msgid "Process Settings" +msgstr "Configurações do Processo" + +msgid "Undef" +msgstr "Indefinido" + +msgid "Unsaved Changes" +msgstr "Alterações não salvas" + +msgid "Transfer or discard changes" +msgstr "Transferir ou descartar alterações" + +msgid "Old Value" +msgstr "Valor Antigo" + +msgid "New Value" +msgstr "Novo Valor" + +msgid "Transfer" +msgstr "Transferir" + +msgid "Don't save" +msgstr "Não salvar" + +msgid "Discard" +msgstr "Descartar" + +msgid "Click the right mouse button to display the full text." +msgstr "Clique com o botão direito do mouse para exibir o texto completo." + +msgid "All changes will not be saved" +msgstr "Todas as alterações não serão salvas" + +msgid "All changes will be discarded." +msgstr "Todas as alterações serão descartadas." + +msgid "Save the selected options." +msgstr "Salvar as opções selecionadas." + +msgid "Keep the selected options." +msgstr "Manter as opções selecionadas." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Transferir as opções selecionadas para o perfil recém-selecionado." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Salvar as opções selecionadas para o perfil \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Transferir as opções selecionadas para o perfil recém-selecionado \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "O perfil \"%1%\" contém as seguintes alterações não salvas:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"O perfil \"%1%\" não é compatível com o novo perfil da impressora e contém " +"as seguintes alterações não salvas:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"O perfil \"%1%\" não é compatível com o novo perfil de processo e contém as " +"seguintes alterações não salvas:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "Você alterou algumas configurações do preset \"%1%\". " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"Você pode salvar ou descartar os valores predefinidos que você modificou." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" +"\n" +"Você pode salvar ou descartar os valores predefinidos que você modificou, ou " +"escolher transferir os valores modificados para o novo preset." + +msgid "You have previously modified your settings." +msgstr "Você modificou suas configurações anteriormente." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"Você pode descartar os valores predefinidos que você modificou, ou escolher " +"transferir os valores modificados para o novo projeto." + +msgid "Extruders count" +msgstr "Número de extrusoras" + +msgid "General" +msgstr "Geral" + +msgid "Capabilities" +msgstr "Capacidades" + +msgid "Show all presets (including incompatible)" +msgstr "Mostrar todos os perfis (incluindo os incompatíveis)" + +msgid "Select presets to compare" +msgstr "Selecione os perfis para comparar" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" +"Só é possível transferir para o perfil ativo atual porque ele foi modificado." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"Transfira as opções selecionadas do perfil à esquerda para o da direita.\n" +"Nota: Novos perfis modificados serão selecionados nas guias de configurações " +"após fechar este diálogo." + +msgid "Transfer values from left to right" +msgstr "Transferir valores da esquerda para a direita" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" +"Se ativo, este diálogo pode ser usado para transferir valores selecionados " +"do perfil à esquerda para o da direita." + +msgid "Add File" +msgstr "Adicionar arquivo" + +msgid "Set as cover" +msgstr "Definir como capa" + +msgid "Cover" +msgstr "Capa" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "O nome \"%1%\" já existe." + +msgid "Basic Info" +msgstr "Informações Básicas" + +msgid "Pictures" +msgstr "Imagens" + +msgid "Bill of Materials" +msgstr "Lista de Materiais" + +msgid "Assembly Guide" +msgstr "Guia de Montagem" + +msgid "Author" +msgstr "Autor" + +msgid "Model Name" +msgstr "Nome do Modelo" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Atualizar" + +msgid "A new version is available" +msgstr "Uma nova versão está disponível" + +msgid "Configuration update" +msgstr "Atualização de configuração" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "Um novo pacote de configuração está disponível, Deseja instalá-lo?" + +msgid "Description:" +msgstr "Descrição:" + +msgid "Configuration incompatible" +msgstr "Configuração incompatível" + +msgid "the configuration package is incompatible with current application." +msgstr "o pacote de configuração é incompatível com a aplicação atual." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"O pacote de configuração é incompatível com a aplicação atual.\n" +"%s atualizará o pacote de configuração, caso contrário, não será possível " +"iniciar" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Sair %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "o pacote de configuração é incompatível com o APP atual." + +msgid "Configuration updates" +msgstr "Atualizações de configuração" + +msgid "No updates available." +msgstr "Nenhuma atualização disponível." + +msgid "The configuration is up to date." +msgstr "A configuração está atualizada." + +msgid "Obj file Import color" +msgstr "" + +msgid "Specify number of colors:" +msgstr "" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "" + +msgid "Recommended " +msgstr "" + +msgid "Current filament colors:" +msgstr "" + +msgid "Quick set:" +msgstr "" + +msgid "Color match" +msgstr "" + +msgid "Approximate color matching." +msgstr "" + +msgid "Append" +msgstr "" + +msgid "Add consumable extruder after existing extruders." +msgstr "" + +msgid "Reset mapped extruders." +msgstr "" + +msgid "Cluster colors" +msgstr "" + +msgid "Map Filament" +msgstr "" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" + +msgid "Ramming customization" +msgstr "Customização de moldeamento" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"O moldeamento denota a extrusão rápida logo antes de uma troca de " +"ferramentas em uma impressora MM de extrusão única. Seu propósito é dar " +"forma adequadamente à ponta do filamento descarregado para que não impeça a " +"inserção do novo filamento e possa ser reinserido posteriormente. Essa fase " +"é importante e diferentes materiais podem exigir velocidades de extrusão " +"diferentes para obter uma boa forma. Por esse motivo, as taxas de extrusão " +"durante o moldeamento são ajustáveis.\n" +"\n" +"Esta é uma configuração de nível especialista, ajustes incorretos " +"provavelmente resultarão em travamentos, moagem da roda de extrusão no " +"filamento, etc." + +msgid "Total ramming time" +msgstr "Tempo total de moldeamento" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "Volume total de moldeamento de extremidade" + +msgid "Ramming line width" +msgstr "Largura da linha de moldeamento" + +msgid "Ramming line spacing" +msgstr "Espaçamento da linha de moldeamento" + +msgid "Auto-Calc" +msgstr "Auto-Calc" + +msgid "Re-calculate" +msgstr "Recalcular" + +msgid "Flushing volumes for filament change" +msgstr "Volumes de purga para troca de filamento" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"O Orca recalculará seus volumes de purga toda vez que a cor dos filamentos " +"for alterada. Você pode desativar o cálculo automático em Snapmaker Orca > " +"Preferências" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Volume de purga (mm³) para cada par de filamentos." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Sugestão: Volume de Purga no intervalo [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "O multiplicador deve estar no intervalo [%.2f, %.2f]." + +msgid "Multiplier" +msgstr "Multiplicador" + +msgid "unloaded" +msgstr "descarregado" + +msgid "loaded" +msgstr "carregado" + +msgid "Filament #" +msgstr "Filamento #" + +msgid "From" +msgstr "De" + +msgid "To" +msgstr "Para" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "Plug-in de Rede Bambu não detectado." + +msgid "Click here to download it." +msgstr "Clique aqui para baixá-lo." + +msgid "Login" +msgstr "Entrar" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "O pacote de configuração é alterado no Guia de Configuração anterior" + +msgid "Configuration package changed" +msgstr "Pacote de configuração alterado" + +msgid "Toolbar" +msgstr "Barra de ferramentas" + +msgid "Objects list" +msgstr "Lista de objetos" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Importar dados de geometria de arquivos STL/STEP/3MF/OBJ/AMF" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Colar da área de transferência" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "Mostrar/Ocultar diálogo de configurações de dispositivos 3Dconnexion" + +msgid "Switch table page" +msgstr "Trocar página da tabela" + +msgid "Show keyboard shortcuts list" +msgstr "Mostrar lista de atalhos de teclado" + +msgid "Global shortcuts" +msgstr "Atalhos globais" + +msgid "Rotate View" +msgstr "Rotacionar visualização" + +msgid "Pan View" +msgstr "Movimentar visualização" + +msgid "Mouse wheel" +msgstr "Roda do mouse" + +msgid "Zoom View" +msgstr "Aproximar visualização" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Orienta automaticamente os objetos selecionados ou todos os objetos. Se " +"houver objetos selecionados, ele apenas orientará os selecionados. Caso " +"contrário, orientará todos os objetos no disco atual." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Recolher/Expandir a barra lateral" + +msgid "⌘+Any arrow" +msgstr "⌘+Qualquer seta" + +msgid "Movement in camera space" +msgstr "Movimento no espaço da câmera" + +msgid "⌥+Left mouse button" +msgstr "Botão esquerdo do mouse ⌥+" + +msgid "Select a part" +msgstr "Selecionar uma peça" + +msgid "⌘+Left mouse button" +msgstr "Botão esquerdo do mouse ⌘+" + +msgid "Select multiple objects" +msgstr "Selecionar vários objetos" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+Qualquer seta" + +msgid "Alt+Left mouse button" +msgstr "Botão esquerdo do mouse Alt+" + +msgid "Ctrl+Left mouse button" +msgstr "Botão esquerdo do mouse Ctrl+" + +msgid "Shift+Left mouse button" +msgstr "Botão esquerdo do mouse Shift+" + +msgid "Select objects by rectangle" +msgstr "Selecionar objetos por retângulo" + +msgid "Arrow Up" +msgstr "Seta para cima" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Mover seleção 10 mm na direção Y positiva" + +msgid "Arrow Down" +msgstr "Seta para baixo" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Mover seleção 10 mm na direção Y negativa" + +msgid "Arrow Left" +msgstr "Seta para esquerda" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Mover seleção 10 mm na direção X negativa" + +msgid "Arrow Right" +msgstr "Seta para direita" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Mover seleção 10 mm na direção X positiva" + +msgid "Shift+Any arrow" +msgstr "Shift+Qualquer seta" + +msgid "Movement step set to 1 mm" +msgstr "Passo de movimento configurado para 1 mm" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "teclado 1-9: ajustar filamento para objeto/peça" + +msgid "Camera view - Default" +msgstr "Visualização da câmera - Padrão" + +msgid "Camera view - Top" +msgstr "Visualização da câmera - Superior" + +msgid "Camera view - Bottom" +msgstr "Visualização da câmera - Inferior" + +msgid "Camera view - Front" +msgstr "Visualização da câmera - Frontal" + +msgid "Camera view - Behind" +msgstr "Visualização da câmera - Posterior" + +msgid "Camera Angle - Left side" +msgstr "Ângulo da câmera - Lado esquerdo" + +msgid "Camera Angle - Right side" +msgstr "Ângulo da câmera - Lado direito" + +msgid "Select all objects" +msgstr "Selecionar todos os objetos" + +msgid "Gizmo move" +msgstr "Mover gizmo" + +msgid "Gizmo scale" +msgstr "Escala do gizmo" + +msgid "Gizmo rotate" +msgstr "Rotacionar gizmo" + +msgid "Gizmo cut" +msgstr "Cortar gizmo" + +msgid "Gizmo Place face on bed" +msgstr "Posicionar face do gizmo na mesa" + +msgid "Gizmo SLA support points" +msgstr "Pontos de suporte SLA do gizmo" + +msgid "Gizmo FDM paint-on seam" +msgstr "Costura de pintura FDM do gizmo" + +msgid "Gizmo Text emboss / engrave" +msgstr "Texturizar / gravar texto no gizmo" + +msgid "Zoom in" +msgstr "Dar zoom" + +msgid "Zoom out" +msgstr "Dar zoom" + +msgid "Switch between Prepare/Preview" +msgstr "Alternar entre Preparar/Visualizar" + +msgid "Plater" +msgstr "Mesa" + +msgid "Move: press to snap by 1mm" +msgstr "Mover: pressione para ajustar em 1mm" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Roda do mouse" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Suporte/Pintura em cores: ajustar o raio da caneta" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Roda do mouse" + +msgid "Support/Color Painting: adjust section position" +msgstr "Suporte/Pintura em cores: ajustar a posição da seção" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Roda do mouse" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Roda do mouse" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Definir o número da extrusora para os objetos e peças" + +msgid "Delete objects, parts, modifiers " +msgstr "Excluir objetos, peças, modificadores " + +msgid "Select the object/part and press space to change the name" +msgstr "Selecione o objeto/peça e pressione espaço para mudar o nome" + +msgid "Mouse click" +msgstr "Clique do mouse" + +msgid "Select the object/part and mouse click to change the name" +msgstr "Selecione o objeto/peça e clique do mouse para mudar o nome" + +msgid "Objects List" +msgstr "Lista de Objetos" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Controle deslizante vertical - Mover o polegar ativo para cima" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Controle deslizante vertical - Mover o polegar ativo para baixo" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Controle deslizante horizontal - Mover o polegar ativo para a esquerda" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Controle deslizante horizontal - Mover o polegar ativo para a direita" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "Ativar/Desativar modo de uma camada do controle deslizante vertical" + +msgid "On/Off g-code window" +msgstr "Ativar/Desativar janela de G-Code" + +msgid "Move slider 5x faster" +msgstr "Mover o controle deslizante 5 vezes mais rápido" + +msgid "Shift+Mouse wheel" +msgstr "Shift+Roda do mouse" + +msgid "Horizontal slider - Move to start position" +msgstr "Barra deslizante horizontal — Mover para a posição inicial" + +msgid "Horizontal slider - Move to last position" +msgstr "Barra deslizante horizontal — Mover para a última posição" + +msgid "Release Note" +msgstr "Nota de lançamento" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "informações de atualização da versão %s:" + +msgid "Network plug-in update" +msgstr "Atualização do plug-in de rede" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Clique em OK para atualizar o plug-in de rede quando o Snapmaker Orca for " +"iniciado novamente." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "Um novo plug-in de rede (%s) está disponível. Deseja instalá-lo?" + +msgid "New version of Snapmaker Orca" +msgstr "Nova versão do Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Pular esta versão" + +msgid "Done" +msgstr "Concluído" + +msgid "resume" +msgstr "retomar" + +msgid "Resume Printing" +msgstr "Retomar impressão" + +msgid "Resume Printing(defects acceptable)" +msgstr "Retomar Impressão (defeitos aceitáveis)" + +msgid "Resume Printing(problem solved)" +msgstr "Retomar Impressão (problema resolvido)" + +msgid "Stop Printing" +msgstr "Parar impressão" + +msgid "Check Assistant" +msgstr "Checar Assistente" + +msgid "Filament Extruded, Continue" +msgstr "Filamento Extrudado, Continuar" + +msgid "Not Extruded Yet, Retry" +msgstr "Não Extrudado, Tente Novamente" + +msgid "Finished, Continue" +msgstr "Concluído, Continuar" + +msgid "Load Filament" +msgstr "Carregar Filamento" + +msgid "Filament Loaded, Resume" +msgstr "Filamento Carregado, Retomar" + +msgid "View Liveview" +msgstr "Exibir vista ao vivo" + +msgid "Confirm and Update Nozzle" +msgstr "Confirmar e Atualizar Bico" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "Falha na conexão LAN (enviando arquivo de impressão)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Passo 1, por favor, confirme se o Snapmaker Orca e sua impressora estão na " +"mesma LAN." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Passo 2, se o IP e o Código de Acesso abaixo forem diferentes dos valores " +"reais na sua impressora, corrija-os." + +msgid "IP" +msgstr "PI" + +msgid "Access Code" +msgstr "Código de Acesso" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Onde encontrar o IP e o Código de Acesso da sua impressora?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"Passo 3: Pingue o endereço IP para verificar a perda de pacotes e a latência." + +msgid "Test" +msgstr "Testar" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP e Código de Acesso Verificados! Você pode fechar a janela" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "Falha na conexão, por favor, verifique o IP e o Código de Acesso" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Conexão falhou! Se o seu IP e Código de Acesso estão corretos, \n" +"por favor, passe para o passo 3 para resolver problemas de rede" + +msgid "Model:" +msgstr "Modelo:" + +msgid "Serial:" +msgstr "Número de série:" + +msgid "Version:" +msgstr "Versão:" + +msgid "Update firmware" +msgstr "Atualizar firmware" + +msgid "Beta version" +msgstr "Versão beta" + +msgid "Latest version" +msgstr "Última versão" + +msgid "Updating" +msgstr "Atualizando" + +msgid "Updating failed" +msgstr "Falha na atualização" + +msgid "Updating successful" +msgstr "Atualização bem-sucedida" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Tem certeza de que deseja atualizar? Isso levará cerca de 10 minutos. Não " +"desligue a energia enquanto a impressora estiver atualizando." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Uma atualização importante foi detectada e precisa ser executada antes que a " +"impressão possa continuar. Deseja atualizar agora? Você também pode " +"atualizar posteriormente em 'Atualizar firmware'." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"A versão do firmware está anormal. Reparar e atualizar é necessário antes de " +"imprimir. Você deseja atualizar agora? Você também pode atualizar mais tarde " +"na impressora ou atualizar da próxima vez que iniciar o Orca." + +msgid "Extension Board" +msgstr "Mesa de Extensão" + +msgid "Saving objects into the 3mf failed." +msgstr "Falha ao salvar objetos no formato 3mf." + +msgid "Only Windows 10 is supported." +msgstr "Apenas o Windows 10 é suportado." + +msgid "Failed to initialize the WinRT library." +msgstr "Falha ao inicializar a biblioteca WinRT." + +msgid "Exporting objects" +msgstr "Exportando objetos" + +msgid "Failed loading objects." +msgstr "Falha ao carregar objetos." + +msgid "Repairing object by Windows service" +msgstr "Reparando objeto pelo serviço do Windows" + +msgid "Repair failed." +msgstr "Falha na reparação." + +msgid "Loading repaired objects" +msgstr "Carregando objetos reparados" + +msgid "Exporting 3mf file failed" +msgstr "Falha ao exportar o arquivo 3mf" + +msgid "Import 3mf file failed" +msgstr "Falha ao importar o arquivo 3mf" + +msgid "Repaired 3mf file does not contain any object" +msgstr "O arquivo 3mf reparado não contém nenhum objeto" + +msgid "Repaired 3mf file contains more than one object" +msgstr "O arquivo 3mf reparado contém mais de um objeto" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "O arquivo 3mf reparado não contém nenhum volume" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "O arquivo 3mf reparado contém mais de um volume" + +msgid "Repair finished" +msgstr "Reparo concluído" + +msgid "Repair canceled" +msgstr "Reparo cancelado" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Falha ao copiar o arquivo %1% para %2%: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" +"É necessário verificar as alterações não salvas antes das atualizações de " +"configuração." + +msgid "Configuration package: " +msgstr "Pacote de configuração: " + +msgid " updated to " +msgstr " atualizado para " + +msgid "Open G-code file:" +msgstr "Abrir arquivo G-code:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Um objeto tem uma primeira camada vazia e não pode ser impresso. Por favor, " +"corte a base ou habilite os suportes." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "" +"O objeto não pode ser impresso devido a uma camada vazia entre %1% e %2%." + +#, boost-format +msgid "Object: %1%" +msgstr "Objeto: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Talvez partes do objeto nessa altura sejam muito finas, ou o objeto tenha " +"uma malha com falhas" + +msgid "No object can be printed. Maybe too small" +msgstr "Nenhum objeto pode ser impresso. Talvez seja muito pequeno" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Falha ao gerar o código G para um G-code personalizado inválido.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "Verifique o G-code personalizado ou use o G-code personalizado padrão." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Gerando código G: camada %1%" + +msgid "Inner wall" +msgstr "Perímetro interno" + +msgid "Outer wall" +msgstr "Perímetro externo" + +msgid "Overhang wall" +msgstr "Overhang" + +msgid "Sparse infill" +msgstr "Preenchimento" + +msgid "Internal solid infill" +msgstr "Preenchimento sólido" + +msgid "Top surface" +msgstr "Superfície superior" + +msgid "Bottom surface" +msgstr "Superfície inferior" + +msgid "Internal Bridge" +msgstr "Ponte interna" + +msgid "Gap infill" +msgstr "Preenchimento de vão" + +msgid "Support interface" +msgstr "Interface de suporte" + +msgid "Support transition" +msgstr "Transição de suporte" + +msgid "Multiple" +msgstr "Múltiplo" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Falha ao calcular a largura da linha de %1%. Não é possível obter o valor de " +"\"%2%\". " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Espaçamento inválido fornecido para Flow::with_spacing(), verifique a altura " +"da camada e a largura da extrusão." + +msgid "undefined error" +msgstr "erro indefinido" + +msgid "too many files" +msgstr "muitos arquivos" + +msgid "file too large" +msgstr "arquivo muito grande" + +msgid "unsupported method" +msgstr "método não suportado" + +msgid "unsupported encryption" +msgstr "criptografia não suportada" + +msgid "unsupported feature" +msgstr "recurso não suportado" + +msgid "failed finding central directory" +msgstr "falha ao encontrar o diretório central" + +msgid "not a ZIP archive" +msgstr "não é um arquivo ZIP" + +msgid "invalid header or corrupted" +msgstr "cabeçalho inválido ou corrompido" + +msgid "unsupported multidisk" +msgstr "multidisco não suportado" + +msgid "decompression failed" +msgstr "falha na descompressão" + +msgid "compression failed" +msgstr "falha na compressão" + +msgid "unexpected decompressed size" +msgstr "tamanho descomprimido inesperado" + +msgid "CRC check failed" +msgstr "verificação de CRC falhou" + +msgid "unsupported central directory size" +msgstr "tamanho de diretório central não suportado" + +msgid "allocation failed" +msgstr "falha na alocação" + +msgid "file open failed" +msgstr "falha na abertura do arquivo" + +msgid "file create failed" +msgstr "falha na criação do arquivo" + +msgid "file write failed" +msgstr "falha na escrita do arquivo" + +msgid "file read failed" +msgstr "falha na leitura do arquivo" + +msgid "file close failed" +msgstr "falha no fechamento do arquivo" + +msgid "file seek failed" +msgstr "falha na busca do arquivo" + +msgid "file stat failed" +msgstr "falha na estatística do arquivo" + +msgid "invalid parameter" +msgstr "parâmetro inválido" + +msgid "invalid filename" +msgstr "nome de arquivo inválido" + +msgid "buffer too small" +msgstr "buffer muito pequeno" + +msgid "internal error" +msgstr "erro interno" + +msgid "file not found" +msgstr "arquivo não encontrado" + +msgid "archive too large" +msgstr "arquivo muito grande" + +msgid "validation failed" +msgstr "validação falhou" + +msgid "write callback failed" +msgstr "falha na chamada de escrita" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% está muito perto da área de exclusão, pode haver colisões durante a " +"impressão." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% está muito perto de outros, e colisões podem ocorrer." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% está muito alto, e ocorrerão colisões." + +msgid " is too close to others, there may be collisions when printing." +msgstr " está muito perto de outros, pode haver colisões durante a impressão." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" está muito perto da área de exclusão, pode haver colisões durante a " +"impressão." + +msgid "Prime Tower" +msgstr "Torre Prime" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " está muito perto de outros, e colisões podem ocorrer.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr " está muito perto da área de exclusão, e ocorrerão colisões.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Não é possível imprimir vários filamentos que têm grande diferença de " +"temperatura juntos. Caso contrário, o extrusor e a bocal podem ficar " +"bloqueados ou danificados durante a impressão" + +msgid "No extrusions under current settings." +msgstr "Nenhuma extrusão com as configurações atuais." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"O modo suave do timelapse não é suportado quando a sequência \"por objeto\" " +"está ativada." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Por favor, selecione a sequência de impressão \"Por objeto\" para imprimir " +"vários objetos no modo vaso espiral." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"O modo de vaso espiral não funciona quando um objeto contém mais de um " +"material." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "O objeto %1% excede a altura máxima do volume de impressão." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"Embora o objeto %1% em si se ajuste ao volume de impressão, sua última " +"camada excede a altura máxima do volume de impressão." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"Você pode querer reduzir o tamanho do seu modelo ou alterar as configurações " +"de impressão atuais e tentar novamente." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "A altura de camada variável não é suportada com suportes orgânicos." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Diâmetros de bico diferentes e diâmetros de filamento diferentes não são " +"permitidos quando a Torre Prime está ativa." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"A Torre Prime atualmente só é suportada com o endereçamento relativo da " +"extrusora (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"A prevenção de vazamento atualmente não é suportada com a Torre Prime ativa." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"A Torre Prime atualmente só é suportada para os G-code do tipo Marlin, " +"RepRap/Sprinter, RepRapFirmware e Repetier." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "A Torre Prime não é suportada na impressão \"Por objeto\"." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"A Torre Prime não é suportada quando a altura de camada adaptativa está " +"ativa. Isso requer que todos os objetos tenham a mesma altura de camada." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"A Torre Prime requer que o \"lacuna de suporte\" seja múltiplo da altura da " +"camada" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" +"A Torre Prime requer que todos os objetos tenham as mesmas alturas de camada" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"A Torre Prime requer que todos os objetos sejam impressos sobre o mesmo " +"número de camadas da Jangada." + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"A Torre Prime requer que todos os objetos sejam fatiados com as mesmas " +"alturas de camada." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"A Torre Prime só é suportada se todos os objetos tiverem a mesma altura de " +"camada variável" + +msgid "Too small line width" +msgstr "Largura de linha muito pequena" + +msgid "Too large line width" +msgstr "Largura de linha muito grande" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"A Torre Prime requer que o suporte tenha a mesma altura de camada do objeto." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"O diâmetro da ponta da árvore de suporte orgânico não deve ser menor do que " +"a largura de extrusão do material de suporte." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"O diâmetro do ramo de suporte orgânico não deve ser menor do que 2x a " +"largura de extrusão do material de suporte." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"O diâmetro do ramo de suporte orgânico não deve ser menor do que o diâmetro " +"da ponta da árvore de suporte." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Os reforços de suporte são usados, mas o suporte não está habilitado. Por " +"favor, habilite o suporte." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "A altura da camada não pode exceder o diâmetro da bocal" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"O endereçamento relativo do extrusor requer a reinicialização da posição do " +"extrusor em cada camada para evitar perda de precisão de ponto flutuante. " +"Adicione \"G92 E0\" ao código de camada." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"\"G92 E0\" foi encontrado em before_layer_gcode, o que é incompatível com o " +"endereçamento absoluto do extrusor." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"\"G92 E0\" foi encontrado em layer_gcode, o que é incompatível com o " +"endereçamento absoluto do extrusor." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Mesa %d: %s não suporta filamento %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" +"Definir a velocidade de jerk muito baixa pode levar a artefatos em " +"superfícies curvas" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"A configuração de jerk excede o jerk máximo da impressora " +"(machine_max_jerk_x/machine_max_jerk_y).\n" +"Orca automaticamente limitará a velocidade do jerk para garantir que não " +"ultrapasse as capacidades da impressora.\n" +"Você pode ajustar a configuração de jerk máximo na configuração da sua " +"impressora para obter velocidades mais altas." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"A configuração de aceleração excede a aceleração máxima da impressora " +"(machine_max_acceleration_extruding).\n" +"Orca automaticamente limitará a velocidade de aceleração para garantir que " +"não ultrapasse as capacidades da impressora.\n" +"Você pode ajustar o valor de machine_max_acceleration_extruding na " +"configuração da sua impressora para obter velocidades mais altas." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"A configuração de aceleração de deslocamento excede a aceleração máxima de " +"deslocamento da impressora (machine_max_acceleration_travel).\n" +"O Orca irá automaticamente limitar a velocidade de aceleração de " +"deslocamento para garantir que não ultrapasse as capacidades da impressora.\n" +"Você pode ajustar o valor de machine_max_acceleration_travel na configuração " +"da sua impressora para obter velocidades mais altas." + +msgid "Generating skirt & brim" +msgstr "Gerando saia e borda" + +msgid "Exporting G-code" +msgstr "Exportando G-code" + +msgid "Generating G-code" +msgstr "Gerando G-code" + +msgid "Failed processing of the filename_format template." +msgstr "Falha no processamento do modelo filename_format." + +msgid "Printable area" +msgstr "Área de impressão" + +msgid "Bed exclude area" +msgstr "Área de exclusão da mesa" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Área não imprimível no plano XY. Por exemplo, impressoras da série X1 usam o " +"canto esquerdo frontal para cortar o filamento durante a troca de filamento. " +"A área é expressa como um polígono por pontos no seguinte formato: \"XxY, " +"XxY, ...\"" + +msgid "Bed custom texture" +msgstr "Textura personalizada da mesa" + +msgid "Bed custom model" +msgstr "Modelo personalizado da mesa" + +msgid "Elephant foot compensation" +msgstr "Compensação de pé de elefante" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Reduza a primeira camada na mesa para compensar o efeito de pé de elefante" + +msgid "Elephant foot compensation layers" +msgstr "Camadas de compensação de pé de elefante" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"O número de camadas em que a compensação de pé de elefante estará ativa. A " +"primeira camada será reduzida pelo valor de compensação de pé de elefante, e " +"então as próximas camadas serão reduzidas linearmente, até a camada indicada " +"por este valor." + +msgid "layers" +msgstr "camadas" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Altura de fatiamento para cada camada. Altura de camada menor significa mais " +"precisão e mais tempo de impressão" + +msgid "Printable height" +msgstr "Altura de impressão" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "Altura máxima de impressão limitada pelo mecanismo da impressora" + +msgid "Preferred orientation" +msgstr "Orientação preferida" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" +"Orientar automaticamente os arquivos STL no eixo Z durante a importação " +"inicial" + +msgid "Printer preset names" +msgstr "Nomes de presets da impressora" + +msgid "Use 3rd-party print host" +msgstr "Usar host de impressão de terceiros" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" +"Permitir o controle da impressora BambuLab por meio de hosts de impressão de " +"terceiros" + +msgid "Hostname, IP or URL" +msgstr "Nome do host, IP ou URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"O Snapmaker Orca pode enviar arquivos G-code para um host de impressora. Este " +"campo deve conter o nome do host, o endereço IP ou a URL da instância do " +"host de impressora. O host de impressão atrás do HAProxy com autenticação " +"básica ativada pode ser acessado colocando o nome de usuário e senha na URL " +"no seguinte formato: https://username:password@your-octopi-address/" + +msgid "Device UI" +msgstr "Interface do dispositivo" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Especifique a URL da interface do usuário do seu dispositivo se não for a " +"mesma do print_host" + +msgid "API Key / Password" +msgstr "Chave da API / Senha" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"O Snapmaker Orca pode enviar arquivos G-code para um host de impressora. Este " +"campo deve conter a Chave da API ou a senha necessária para autenticação." + +msgid "Name of the printer" +msgstr "Nome da impressora" + +msgid "HTTPS CA File" +msgstr "Arquivo CA HTTPS" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"O arquivo de certificado CA personalizado pode ser especificado para " +"conexões HTTPS OctoPrint, no formato crt/pem. Se deixado em branco, o " +"repositório de certificados CA padrão do sistema operacional é usado." + +msgid "User" +msgstr "Usuário" + +msgid "Password" +msgstr "Senha" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Ignorar verificações de revogação de certificado HTTPS" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ignorar verificações de revogação de certificado HTTPS em caso de pontos de " +"distribuição ausentes ou offline. Pode-se querer habilitar esta opção para " +"certificados autoassinados se a conexão falhar." + +msgid "Names of presets related to the physical printer" +msgstr "Nomes dos presets relacionados à impressora física" + +msgid "Authorization Type" +msgstr "Tipo de autorização" + +msgid "API key" +msgstr "API Key" + +msgid "HTTP digest" +msgstr "Digest HTTP" + +msgid "Avoid crossing wall" +msgstr "Evitar perímetros" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Desvio e evite viajar através do perímetro que pode causar irregularidade na " +"superfície" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Evitar perímetros - Distância máximo do desvio" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Distância máxima de desvio para evitar atravessar o perímetro. Não desviar " +"se a distância de desvio for maior que esse valor. A distancia do desvio " +"pode ser especificada como um valor absoluto ou como porcentagem (por " +"exemplo, 50%) de um caminho de deslocamento direto. Zero para desativar" + +msgid "mm or %" +msgstr "mm ou %" + +msgid "Other layers" +msgstr "Outras camadas" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Temperatura da mesa para camadas exceto a inicial. O valor 0 significa que o " +"filamento não suporta a impressão na Cool Plate (Mesa Fria)" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Temperatura da mesa para camadas exceto a inicial. O valor 0 significa que o " +"filamento não suporta a impressão no Engenharia Plate" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Temperatura da mesa para camadas exceto a inicial. O valor 0 significa que o " +"filamento não suporta a impressão no Plate de Alta Temperatura" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Temperatura da mesa para camadas exceto a inicial. O valor 0 significa que o " +"filamento não suporta a impressão no Plate de PEI Texturizado" + +msgid "Initial layer" +msgstr "Primeira camada" + +msgid "Initial layer bed temperature" +msgstr "Temperatura da mesa da primeira camada" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Temperatura da mesa na primeira camada. O valor 0 significa que o filamento " +"não suporta a impressão na Cool Plate (Mesa Fria)" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Temperatura da mesa na primeira camada. O valor 0 significa que o filamento " +"não suporta a impressão no Engenharia Plate" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Temperatura da mesa na primeira camada. O valor 0 significa que o filamento " +"não suporta a impressão no Plate de Alta Temperatura" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Temperatura da mesa na primeira camada. O valor 0 significa que o filamento " +"não suporta a impressão no Plate de PEI Texturizado" + +msgid "Bed types supported by the printer" +msgstr "Tipos de mesa suportadas pela impressora" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "Engenharia Plate" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "Sequência de impressão da primeira camada" + +msgid "Other layers print sequence" +msgstr "Sequência de impressão de outras camadas" + +msgid "The number of other layers print sequence" +msgstr "O número de sequência de impressão de outras camadas" + +msgid "Other layers filament sequence" +msgstr "Sequência de impressão de outros filamentos" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "Este código G é inserido em cada mudança de camada antes de levantar z" + +msgid "Bottom shell layers" +msgstr "Camadas de base" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Este é o número de camadas sólidas da base, incluindo a primeira camada. " +"Quando a espessura calculada por este valor for mais fina do que a espessura " +"da base, o número das camadas da base serão aumentadas" + +msgid "Bottom shell thickness" +msgstr "Espessura da base" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"O número de camadas sólidas da base é aumentado ao fatiar se a espessura " +"calculada pelas camadas da base for mais fina do que este valor. Isso pode " +"evitar que a base seja muito fina quando a altura da camada é pequena. 0 " +"significa que esta configuração está desativada e a espessura da base é " +"absolutamente determinada pelas camadas da base" + +msgid "Apply gap fill" +msgstr "Preenchimento de vão" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"Ativa o preenchimento de vão para as superfícies selecionadas. O comprimento " +"mínimo do vão que será preenchida pode ser controlado a partir da opção de " +"filtrar pequenas s abaixo.\n" +"\n" +"Opções:\n" +"1. Em todos os lugares: Aplica preenchimento de s às superfícies sólidas " +"superior, inferior e interna\n" +"2. Superfícies superior e inferior: Aplica preenchimento de s apenas às " +"superfícies superior e inferior\n" +"3. Em nenhum lugar: Desativa o preenchimento de s\n" + +msgid "Everywhere" +msgstr "Sempre" + +msgid "Top and bottom surfaces" +msgstr "Superfícies superior e inferior" + +msgid "Nowhere" +msgstr "Nunca" + +msgid "Force cooling for overhang and bridge" +msgstr "Forçar resfriamento para overhangs e pontes" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Ative esta opção para otimizar a velocidade do ventilador de resfriamento de " +"peças para overhangs e ponte para obter melhor resfriamento" + +msgid "Fan speed for overhang" +msgstr "Velocidade do ventilador para overhangs" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Forçar o ventilador de resfriamento da peça a ser nesta velocidade ao " +"imprimir ponte ou overhang que tenha um grande grau de inclinação. Forçar o " +"resfriamento para overhang e ponte pode obter melhor qualidade para estas " +"partes" + +msgid "Cooling overhang threshold" +msgstr "Overhang limiar de resfriamento" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Forçar o ventilador de resfriamento a ser uma velocidade específica quando o " +"grau de inclinação da peça impressa excede este valor. Expresso como " +"porcentagem, que indica quanto da largura da linha sem suporte da camada " +"inferior.Zero significa forçar o resfriamento para toda o perímetro externo, " +"não importa quanto seja o grau de inclinação" + +msgid "Bridge infill direction" +msgstr "Direção de preenchimento de ponte" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Substituição de ângulo de ponte. Se deixado em zero, o ângulo de ponte será " +"calculado automaticamente. Caso contrário, o ângulo fornecido será usado " +"para pontes externas. Use 180° para ângulo zero." + +msgid "Bridge density" +msgstr "Densidade de ponte" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Densidade de pontes externas. 100% significa ponte sólida. O padrão é 100%." + +msgid "Bridge flow ratio" +msgstr "Fluxo em ponte" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Diminua ligeiramente este valor (por exemplo, 0.9) para reduzir a quantidade " +"de material para ponte, para melhorar a flacidez" + +msgid "Internal bridge flow ratio" +msgstr "Fluxo em ponte interna" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"Este valor governa a espessura da camada interna da ponte. Esta é a primeira " +"camada sobre o preenchimento. Diminua ligeiramente este valor (por exemplo, " +"0.9) para melhorar a qualidade da superfície sobre o preenchimento " +"esparsamente." + +msgid "Top surface flow ratio" +msgstr "Fluxo em superfície superior" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Este fator afeta a quantidade de material para o preenchimento sólido " +"superior. Você pode diminuí-lo ligeiramente para ter um acabamento de " +"superfície suave" + +msgid "Bottom surface flow ratio" +msgstr "Fluxo em superfície inferior" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" +"Este fator afeta a quantidade de material para o preenchimento sólido " +"inferior" + +msgid "Precise wall" +msgstr "Parede precisa" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"Melhore a precisão da parede ajustando o espaçamento do perímetro externo. " +"Isso também melhora a consistência da camada.\n" +"Nota: Esta configuração só terá efeito se a sequência do perímetro estiver " +"configurada para Interior-Exterior" + +msgid "Only one wall on top surfaces" +msgstr "Perímetro único em superfícies superiores" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Use apenas um perímetro em superfície superior, para dar mais espaço ao " +"padrão de preenchimento superior" + +msgid "One wall threshold" +msgstr "Limite de perímetro único" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Se uma superfície superior tiver que ser impressa e estiver parcialmente " +"coberta por outra camada, ela não será considerada em uma camada superior " +"onde sua largura estiver abaixo deste valor. Isso pode ser útil para não " +"permitir que o 'um perímetro no topo' seja ativado em uma superfície que " +"deve ser coberta apenas por perímetros. Este valor pode ser em mm ou % da " +"largura de extrusão do perímetro.\n" +"Aviso: Se habilitado, artefatos podem ser criados se você tiver algumas " +"características finas na próxima camada, como letras. Defina esta " +"configuração para 0 para remover esses artefatos." + +msgid "Only one wall on first layer" +msgstr "Perímetro único na primeira camada" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Use apenas um perímetro na primeira camada, para dar mais espaço ao padrão " +"de preenchimento inferior" + +msgid "Extra perimeters on overhangs" +msgstr "Perímetros extras em overhangs" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Crie caminhos de perímetro adicionais em overhangs íngremes e áreas onde " +"pontes não podem ser ancoradas. " + +msgid "Reverse on odd" +msgstr "Inverter em ímpares" + +msgid "Overhang reversal" +msgstr "Reversão de suspensão" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"Extruir perímetros, que tenham uma parte sobre um overhang, na direção " +"reversa em camadas ímpares. Este padrão alternado pode melhorar " +"drasticamente perímetros íngremes.\n" +"\n" +"Este ajuste também pode ajudar a reduzir a deformação da peça devido à " +"redução das tensões nas paredes da peça." + +msgid "Reverse only internal perimeters" +msgstr "Inverter apenas os perímetros internos" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"Aplicar a lógica de perímetros reversos apenas em perímetros internos.\n" +"\n" +"Este ajuste reduz muito as tensões na peça, já que agora são distribuídas em " +"direções alternadas. Isso deve reduzir a deformação da peça, mantendo a " +"qualidade do perímetro externo. Este recurso pode ser muito útil para " +"materiais propensos a deformações, como ABS/ASA, e também para filamentos " +"elásticos, como TPU e Silk PLA. Também pode ajudar a reduzir a deformação em " +"regiões flutuantes sobre suportes.\n" +"\n" +"Para que este ajuste seja mais eficaz, recomenda-se definir o Limiar Reverso " +"como 0 para que todos os perímetros internos sejam impressos em direções " +"alternadas em camadas ímpares, independentemente de seu grau de ." + +msgid "Bridge counterbore holes" +msgstr "Pontes para furos rebaixados" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"Esta opção cria pontes para furos rebaixados, permitindo que sejam impressos " +"sem suporte. Os modos disponíveis incluem:\n" +"1. Nenhum: Nenhuma ponte é criada.\n" +"2. Parcialmente Ponteada: Apenas uma parte da área não suportada será " +"ponteada.\n" +"3. Camada Sacrificial: Uma camada completa de ponte sacrificial é criada." + +msgid "Partially bridged" +msgstr "Ponte parcial" + +msgid "Sacrificial layer" +msgstr "Camada de sacrifício" + +msgid "Reverse threshold" +msgstr "Limiar de inversão" + +msgid "Overhang reversal threshold" +msgstr "Limiar de inversão de overhang" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Número de milímetros que o precisa ter para que a reversão seja considerada " +"útil. Pode ser um % da largura do perímetro.\n" +"O valor 0 permite a reversão em todas as camadas ímpares independentemente." + +msgid "Classic mode" +msgstr "Modo clássico" + +msgid "Enable this option to use classic mode" +msgstr "Ative esta opção para usar o modo clássico" + +msgid "Slow down for overhang" +msgstr "Reduzir velocidade em overhangs" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Ative esta opção para diminuir a velocidade de impressão em diferentes graus " +"de inclinação" + +msgid "Slow down for curled perimeters" +msgstr "Reduzir vel. para perímetros encurvados" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Ative esta opção para diminuir a velocidade de impressão em áreas onde podem " +"existir potenciais perímetros curvados (warping)" + +msgid "mm/s or %" +msgstr "mm/s ou %" + +msgid "External" +msgstr "Externo" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Velocidade de ponte e paredes compostas completamente de overhangs" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "Interno" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Velocidade da ponte interna. Se o valor for expresso como porcentagem, será " +"calculado com base na velocidade da ponte. O valor padrão é 150%." + +msgid "Brim width" +msgstr "Largura da borda" + +msgid "Distance from model to the outermost brim line" +msgstr "Distância do modelo até a linha da borda mais externa" + +msgid "Brim type" +msgstr "Tipo de borda" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Isso controla a geração da borda no lado externo e/ou interno dos modelos. " +"Automático significa que a largura da borda é analisada e calculada " +"automaticamente." + +msgid "Brim-object gap" +msgstr "Espaço entre a borda e objeto" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Um espaço entre a linha da borda mais interna e o objeto pode facilitar a " +"remoção da borda" + +msgid "Brim ears" +msgstr "Orelhas da borda" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "Desenhe a borda apenas sobre as bordas afiadas do modelo." + +msgid "Brim ear max angle" +msgstr "Ângulo máximo da orelha da borda" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Ângulo máximo para permitir que uma orelha da borda apareça. \n" +"Se definido como 0, nenhuma borda será criado. \n" +"Se definido como ~180, a borda será criada em tudo, exceto em seções retas." + +msgid "Brim ear detection radius" +msgstr "Raio de detecção da orelha da borda" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"A geometria será decimada antes de detectar ângulos agudos. Este parâmetro " +"indica o comprimento mínimo da divergência para a decimação.\n" +"0 para desativar" + +msgid "Compatible machine" +msgstr "Máquina compatível" + +msgid "upward compatible machine" +msgstr "uáquina compatível ascendente" + +msgid "Compatible machine condition" +msgstr "Condição de máquina compatível" + +msgid "Compatible process profiles" +msgstr "Perfis de processo compatíveis" + +msgid "Compatible process profiles condition" +msgstr "Condição de perfis de processo compatíveis" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Sequência de impressão, camada por camada ou objeto por objeto" + +msgid "By layer" +msgstr "Por camada" + +msgid "By object" +msgstr "Por objeto" + +msgid "Intra-layer order" +msgstr "Ordem intra-camada" + +msgid "Print order within a single layer" +msgstr "Ordem de impressão dentro de uma única camada" + +msgid "As object list" +msgstr "Como lista de objetos" + +msgid "Slow printing down for better layer cooling" +msgstr "Diminuir a velocidade de impressão para melhor resfriamento de camada" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Ative esta opção para diminuir a velocidade de impressão para que o tempo da " +"camada final não seja menor do que o limite de tempo da camada em \"Limiar " +"de velocidade máxima do ventilador\", para que a camada possa ser resfriada " +"por mais tempo. Isso pode melhorar a qualidade de resfriamento para detalhes " +"pequenos" + +msgid "Normal printing" +msgstr "Impressão normal" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"A aceleração padrão tanto para a impressão normal quanto para o movimento, " +"exceto na primeira camada" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Perfil de filamento padrão" + +msgid "Default filament profile when switch to this machine profile" +msgstr "Perfil de filamento padrão ao mudar para este perfil de máquina" + +msgid "Default process profile" +msgstr "Perfil de processo padrão" + +msgid "Default process profile when switch to this machine profile" +msgstr "Perfil de processo padrão ao mudar para este perfil de máquina" + +msgid "Activate air filtration" +msgstr "Ativar filtragem de ar" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" +"Ative para uma melhor filtragem de ar. Comando G-code: M106 P3 S(0-255)" + +msgid "Fan speed" +msgstr "Velocidade do ventilador" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Velocidade do ventilador de exaustão durante a impressão. Esta velocidade " +"substituirá a velocidade no gcode personalizado do filamento" + +msgid "Speed of exhaust fan after printing completes" +msgstr "Velocidade do ventilador de exaustão após a conclusão da impressão" + +msgid "No cooling for the first" +msgstr "Sem resfriamento para as primeiras" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Feche todos os ventiladores de resfriamento para as primeiras camadas. O " +"ventilador de resfriamento da primeira camada costuma ser desligado para " +"obter uma melhor adesão à mesa" + +msgid "Don't support bridges" +msgstr "Não suportar pontes" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Não suportar toda a área da ponte que faz com que o suporte seja muito " +"grande. Ponte geralmente pode ser impressa diretamente sem suporte se não " +"for muito longa" + +msgid "Thick bridges" +msgstr "Ponte grossa" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Se ativado, as pontes são mais confiáveis, podem cobrir distâncias maiores, " +"mas podem parecer piores. Se desativado, as pontes ficam melhores, mas são " +"confiáveis apenas para distâncias de ponte mais curtas." + +msgid "Thick internal bridges" +msgstr "Ponte interna grossa" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"Se ativado, serão usadas pontes internas grossas. Geralmente é recomendado " +"ter este recurso ativado. No entanto, considere desativá-lo se estiver " +"usando bocais grandes." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "Não filtrar pequenas pontes internas (beta)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"Esta opção pode ajudar a reduzir o pillowing nas superfícies superiores em " +"modelos fortemente inclinados ou curvos.\n" +"\n" +"Por padrão, pequenas pontes internas são filtradas e o preenchimento sólido " +"interno é impresso diretamente sobre o preenchimento não sólido. Isso " +"funciona bem na maioria dos casos, acelerando a impressão sem comprometer " +"muito a qualidade da superfície superior. \n" +"\n" +"No entanto, em modelos fortemente inclinados ou curvos, especialmente quando " +"a densidade de preenchimento não sólido é muito baixa, isso pode resultar em " +"enrolamento do preenchimento sólido não suportado, causando pillowing.\n" +"\n" +"Ativar esta opção imprimirá uma camada de ponte interna sobre o " +"preenchimento sólido interno ligeiramente não suportado. As opções abaixo " +"controlam a quantidade de filtragem, ou seja, a quantidade de pontes " +"internas criadas.\n" +"\n" +"Desativado - Desativa esta opção. Este é o comportamento padrão e funciona " +"bem na maioria dos casos.\n" +"\n" +"Filtragem limitada - Cria pontes internas em superfícies fortemente " +"inclinadas, evitando a criação de pontes internas desnecessárias. Isso " +"funciona bem para a maioria dos modelos difíceis.\n" +"\n" +"Sem filtragem - Cria pontes internas em cada inclinação interna potencial. " +"Esta opção é útil para modelos com superfície superior fortemente inclinada. " +"No entanto, na maioria dos casos, cria pontes desnecessárias demais." + +msgid "Disabled" +msgstr "Desativado" + +msgid "Limited filtering" +msgstr "Filtragem limitada" + +msgid "No filtering" +msgstr "Sem filtragem" + +msgid "Max bridge length" +msgstr "Distância de ponte máxima" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Comprimento máximo de pontes que não precisam de suporte. Defina-o como 0 se " +"desejar que todas as pontes tenham suporte, e defina-o como um valor muito " +"grande se não desejar que nenhuma ponte tenha suporte." + +msgid "End G-code" +msgstr "G-code de finalização" + +msgid "End G-code when finish the whole printing" +msgstr "G-code de finalização ao terminar a impressão completa" + +msgid "Between Object Gcode" +msgstr "G-code entre objetos" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Insira o G-code entre objetos. Este parâmetro só terá efeito quando você " +"imprimir seus modelos objeto por objeto" + +msgid "End G-code when finish the printing of this filament" +msgstr "G-code de finalização ao terminar a impressão deste filamento" + +msgid "Ensure vertical shell thickness" +msgstr "Garantir a espessura vertical do perímetro" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"Adicione preenchimento sólido próximo a superfícies inclinadas para garantir " +"a espessura vertical (camadas de topo+base)\n" +"Nenhum: Nenhum preenchimento sólido será adicionado em nenhum lugar. " +"Cuidado: Use esta opção com cuidado se o seu modelo tiver superfícies " +"inclinadas\n" +"Apenas crítico: Evite adicionar preenchimento sólido para paredes\n" +"Moderado: Adicione preenchimento sólido apenas para superfícies fortemente " +"inclinadas\n" +"Todos: Adicione preenchimento sólido para todas as superfícies inclinadas " +"adequadas\n" +"O valor padrão é Todos." + +msgid "Critical Only" +msgstr "Apenas crítico" + +msgid "Moderate" +msgstr "Moderado" + +msgid "Top surface pattern" +msgstr "Padrão de superfície superior" + +msgid "Line pattern of top surface infill" +msgstr "Padrão de linha do preenchimento da superfície superior" + +msgid "Concentric" +msgstr "Concêntrico" + +msgid "Rectilinear" +msgstr "Retilíneo" + +msgid "Monotonic" +msgstr "Monótono" + +msgid "Monotonic line" +msgstr "Linha monótona" + +msgid "Aligned Rectilinear" +msgstr "Retilíneo alinhado" + +msgid "Hilbert Curve" +msgstr "Curva de Hilbert" + +msgid "Archimedean Chords" +msgstr "Cordas Arquimedeanas" + +msgid "Octagram Spiral" +msgstr "Espiral de Octagrama" + +msgid "Bottom surface pattern" +msgstr "Padrão de superfície inferior" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "" +"Padrão de linha do preenchimento da superfície inferior, não do " +"preenchimento da ponte" + +msgid "Internal solid infill pattern" +msgstr "Padrão de preenchimento sólido interno" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"Padrão de linha do preenchimento sólido interno. Se a detecção de " +"preenchimento sólido interno estreito estiver ativada, o padrão concêntrico " +"será usado para a área pequena." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Largura da linha do perímetro externo. Se expresso como porcentagem, será " +"calculado sobre o diâmetro do bico." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Velocidade do perímetro externo que é o mais externo e visível. Geralmente é " +"mais lenta que a velocidade do perímetro interno para obter melhor qualidade." + +msgid "Small perimeters" +msgstr "Pequenos perímetros" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"Essa configuração separada afetará a velocidade dos perímetros com raio <= " +"small_perimeter_threshold (geralmente buracos). Se expresso como porcentagem " +"(por exemplo: 80%), será calculado com base na configuração de velocidade do " +"perímetro externo acima. Defina como zero para automático." + +msgid "Small perimeters threshold" +msgstr "Limiar de pequenos perímetros" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"Isso define o limite para o comprimento do perímetro pequeno. O limite " +"padrão é 0mm" + +msgid "Walls printing order" +msgstr "Ordem de impressão dos perímetros" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"Sequência de impressão dos perímetros internos e externos. \n" +"\n" +"Use Interior/Exterior para melhores overhangs. Isso ocorre porque os " +"perímetros salientes podem aderir a um perímetro vizinho durante a " +"impressão. No entanto, esta opção resulta em uma qualidade superficial " +"ligeiramente reduzida, pois o perímetro externo é deformado ao ser esmagado " +"pelo perímetro interno.\n" +"\n" +"Use Interior/Exterior/Interior para o melhor acabamento superficial externo " +"e precisão dimensional, pois o perímetro externo é impresso sem interrupções " +"a partir de um perímetro interno. No entanto, o desempenho da inclinaçãoserá " +"reduzido, pois não há perímetro interno para imprimir o perímetro externo. " +"Esta opção requer um mínimo de 3 perímetros para ser eficaz, pois imprime os " +"perímetros internos a partir do terceiro perímetro em diante primeiro, " +"depois o perímetro externo e, por fim, o primeiro perímetro interno. Esta " +"opção é recomendada em relação à opção Exterior/Interior na maioria dos " +"casos. \n" +"\n" +"Use Exterior/Interior para obter os mesmos benefícios de qualidade de parede " +"externa e precisão dimensional da opção Interior/Exterior/Interior. No " +"entanto, as costuras z aparecerão menos consistentes, pois a primeira " +"extrusão de uma nova camada começa em uma superfície visível.\n" +"\n" +" " + +msgid "Inner/Outer" +msgstr "Interior/Exterior" + +msgid "Outer/Inner" +msgstr "Exterior/Interior" + +msgid "Inner/Outer/Inner" +msgstr "Interior/Exterior/Interior" + +msgid "Print infill first" +msgstr "Preenchimento primeiro" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" +"Ordem de perímetro/preenchimento. Quando a caixa de seleção não desmarcada, " +"as paredes são impressas primeiro, o que funciona melhor na maioria dos " +"casos.\n" +"\n" +"Imprimir as paredes primeiro pode ajudar com overhangs extremos, pois as " +"paredes têm o preenchimento vizinho para aderir. No entanto, o preenchimento " +"empurrará levemente as paredes impressas onde está conectado a elas, " +"resultando em um acabamento de superfície externa pior. Também pode fazer " +"com que o preenchimento apareça através das superfícies externas da peça." + +msgid "Wall loop direction" +msgstr "Direção da volta do perímetro" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"A direção na qual os loops da perímetro são extrudados quando vistos de " +"cima.\n" +"\n" +"Por padrão, todas as paredes são extrudadas no sentido anti-horário, a menos " +"que o Reverso em ímpar esteja ativado. Definir isso como qualquer opção que " +"não seja Automático forçará a direção do perímetro, independentemente do " +"Reverso em ímpar.\n" +"\n" +"Esta opção será desativada se o modo de vaso espiral estiver ativado." + +msgid "Counter clockwise" +msgstr "Sentido anti-horário" + +msgid "Clockwise" +msgstr "Sentido horário" + +msgid "Height to rod" +msgstr "Altura até a haste" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Distância da ponta do bico ao tubo inferior. Usado para evitar colisões na " +"impressão por objeto." + +msgid "Height to lid" +msgstr "Altura até a tampa" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Distância da ponta do bico à tampa. Usado para evitar colisões na impressão " +"por objeto." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Raio de folga ao redor do extrusor. Usado para evitar colisões na impressão " +"por objeto." + +msgid "Nozzle height" +msgstr "Altura do bico" + +msgid "The height of nozzle tip." +msgstr "Altura da ponta do bico." + +msgid "Bed mesh min" +msgstr "Mínimo do bed mesh" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Esta opção define o ponto mínimo para a área permitida do bed mesh. Devido " +"ao deslocamento XY da sonda, a maioria das impressoras não consegue sondar " +"toda a mesa. Para garantir que o ponto da sonda não saia da área da mesa, os " +"pontos mínimo e máximo do bed mesh devem ser configurados adequadamente. O " +"Snapmaker Orca garante que os valores adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max não excedam esses pontos mínimo/máximo. Essas " +"informações geralmente podem ser obtidas com o fabricante da sua impressora. " +"A configuração padrão é (-99999, -99999), o que significa que não há " +"limites, permitindo a sondagem em toda a mesa." + +msgid "Bed mesh max" +msgstr "Máximo do bed mesh" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Esta opção define o ponto máximo para a área permitida do bed mesh. Devido " +"ao deslocamento XY da sonda, a maioria das impressoras não consegue sondar " +"toda a mesa. Para garantir que o ponto da sonda não saia da área da mesa, os " +"pontos mínimo e máximo do bed mesh devem ser configurados adequadamente. O " +"Snapmaker Orca garante que os valores adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max não excedam esses pontos mínimo/máximo. Essas " +"informações geralmente podem ser obtidas com o fabricante da sua impressora. " +"A configuração padrão é (99999, 99999), o que significa que não há limites, " +"permitindo a sondagem em toda a mesa." + +msgid "Probe point distance" +msgstr "Distância entre pontos de sonda" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"Esta opção define a distância preferencial entre pontos de sonda (tamanho da " +"grade) para as direções X e Y, sendo o padrão 50mm para ambas as direções X " +"e Y." + +msgid "Mesh margin" +msgstr "Margem da malha" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" +"Esta opção determina a distância adicional pela qual a área do bed mesh " +"adaptável deve ser expandida nas direções XY." + +msgid "Extruder Color" +msgstr "Cor do extrusor" + +msgid "Only used as a visual help on UI" +msgstr "Usado apenas como ajuda visual na interface do usuário" + +msgid "Extruder offset" +msgstr "Offset da Extrusora" + +msgid "Flow ratio" +msgstr "Fluxo" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"O material pode ter mudança volumétrica após a troca entre o estado fundido " +"e o estado cristalino. Esta configuração altera todo o fluxo de extrusão " +"deste filamento no gcode proporcionalmente. A faixa de valores recomendada " +"está entre 0.95 e 1.05. Talvez você possa ajustar esse valor para obter uma " +"superfície plana agradável quando houver um leve transbordamento ou subfluxo" + +msgid "Enable pressure advance" +msgstr "Habilitar Pressure advance" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Habilitar Pressure advance, o resultado da calibração automática será " +"sobrescrito uma vez habilitado." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" +"Pressure advance(Klipper) também conhecido como Linear advance factor(Marlin)" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"Largura de linha padrão se outras larguras de linha estiverem definidas como " +"0. Se expresso como %, será calculado sobre o diâmetro do bico." + +msgid "Keep fan always on" +msgstr "Manter o ventilador sempre ligado" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Se habilitar esta configuração, o ventilador de resfriamento da peça nunca " +"será desligado e funcionará pelo menos na velocidade mínima para reduzir a " +"frequência de início e parada" + +msgid "Don't slow down outer walls" +msgstr "" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "Tempo da camada" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"O ventilador de resfriamento da peça será ativado para camadas cujo tempo " +"estimado seja menor que esse valor. A velocidade do ventilador é interpolada " +"entre as velocidades mínima e máxima do ventilador de acordo com o tempo de " +"impressão da camada" + +msgid "Default color" +msgstr "Cor padrão" + +msgid "Default filament color" +msgstr "Cor padrão do filamento" + +msgid "Filament notes" +msgstr "Observações do filamento" + +msgid "You can put your notes regarding the filament here." +msgstr "Você pode colocar suas observações sobre o filamento aqui." + +msgid "Required nozzle HRC" +msgstr "HRC do bico requerido" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"HRC mínimo do bico necessário para imprimir o filamento. Zero significa que " +"não há verificação do HRC do bico." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Essa configuração representa quanto volume de filamento pode ser derretido e " +"extrudado por segundo. A velocidade de impressão é limitada pela fluxo " +"volumétrico máximo, no caso de configurações de velocidade muito altas e " +"irrazoáveis. Não pode ser zero" + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Tempo de carga do filamento" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Tempo para carregar novo filamento ao trocar de filamento. Apenas para " +"estatísticas" + +msgid "Filament unload time" +msgstr "Tempo de descarga do filamento" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Tempo para descarregar o filamento antigo ao trocar de filamento. Apenas " +"para estatísticas" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"O diâmetro do filamento é usado para calcular a extrusão no gcode, portanto, " +"é importante e deve ser preciso" + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "Retração" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Informe a porcentagem de retração que o filamento terá após o resfriamento " +"(94% se você medir 94mm em vez de 100mm). A peça será escalada em xy para " +"compensar. Apenas o filamento usado para o perímetro é levado em " +"consideração.\n" +"Certifique-se de permitir espaço suficiente entre objetos, pois essa " +"compensação é feita após as verificações." + +msgid "Loading speed" +msgstr "Velocidade de carregamento" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Velocidade usada para carregar o filamento na Torre Prime" + +msgid "Loading speed at the start" +msgstr "Velocidade de carregamento no início" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Velocidade usada no início da fase de carregamento." + +msgid "Unloading speed" +msgstr "Velocidade de descarregamento" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Velocidade usada para descarregar o filamento na Torre Prime (não afeta a " +"parte inicial do descarregamento logo após o moldeamento)." + +msgid "Unloading speed at the start" +msgstr "Velocidade de descarregamento no início" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Velocidade usada para descarregar a ponta do filamento imediatamente após o " +"moldeamento." + +msgid "Delay after unloading" +msgstr "Atraso após o descarregamento" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Tempo de espera após o filamento ser descarregado. Pode ajudar a obter " +"trocas de ferramentas confiáveis com materiais flexíveis que podem precisar " +"de mais tempo para encolher para as dimensões originais." + +msgid "Number of cooling moves" +msgstr "Número de movimentos de resfriamento" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"O filamento é resfriado movendo-se para frente e para trás nos tubos de " +"resfriamento. Especifique o número desejado desses movimentos." + +msgid "Speed of the first cooling move" +msgstr "Velocidade do primeiro movimento de resfriamento" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "" +"Os movimentos de resfriamento estão gradualmente acelerando a partir desta " +"velocidade." + +msgid "Minimal purge on wipe tower" +msgstr "Purga mínima na Torre Prime" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"Após uma troca de filamento, a posição exata do filamento recém-carregado " +"dentro do bico pode não ser conhecida, e a pressão do filamento " +"provavelmente ainda não está estável. Antes de purgar a cabeça de impressão " +"em um preenchimento ou em um objeto de sacrifício, o Snapmaker Orca sempre " +"preparará essa quantidade de material na Torre Prime para produzir extrusões " +"sucessivas de preenchimento ou de objeto de sacrifício de forma confiável." + +msgid "Speed of the last cooling move" +msgstr "Velocidade do último movimento de resfriamento" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "" +"Os movimentos de resfriamento estão gradualmente acelerando em direção a " +"esta velocidade." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Tempo para o firmware da impressora (ou a Unidade de Material Multi 2.0) " +"carregar um novo filamento durante uma troca de ferramenta (ao executar o " +"código T). Este tempo é adicionado ao tempo total de impressão pelo " +"estimador de tempo do G-code." + +msgid "Ramming parameters" +msgstr "Parâmetros de moldeamento" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Esta frase é editada pelo RammingDialog e contém parâmetros específicos de " +"moldeamento." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Tempo para o firmware da impressora (ou a Unidade de Material Multi 2.0) " +"descarregar um filamento durante uma troca de ferramenta (ao executar o " +"código T). Este tempo é adicionado ao tempo total de impressão pelo " +"estimador de tempo do G-code." + +msgid "Enable ramming for multitool setups" +msgstr "Habilitar moldeamento para configurações de multi-extrusora" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Realizar moldeamentoao usando impressora multi-extrusora(ou seja, quando a " +"opção 'Único Extrusor Multimaterial' em Configurações de Impressora está " +"desmarcada). Quando ativo, uma pequena quantidade de filamento é rapidamente " +"extrudado na Torre Prime logo antes da troca de extrusora. Esta opção é " +"usada apenas quando a Torre Prime está habilitada." + +msgid "Multitool ramming volume" +msgstr "Volume de moldeamento multi-extrusora" + +msgid "The volume to be rammed before the toolchange." +msgstr "O volume a ser esmagado antes da troca de ferramenta." + +msgid "Multitool ramming flow" +msgstr "Fluxo de esmagamento multi-extrusora" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "Fluxo usado para moldar o filamento antes da troca de extrusora." + +msgid "Density" +msgstr "Densidade" + +msgid "Filament density. For statistics only" +msgstr "Densidade do filamento. Apenas para estatísticas" + +msgid "g/cm³" +msgstr "g/cm3" + +msgid "The material type of filament" +msgstr "O tipo de material do filamento" + +msgid "Soluble material" +msgstr "Material solúvel" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"O material solúvel é comumente usado para imprimir suporte e interface de " +"suporte" + +msgid "Support material" +msgstr "Material de suporte" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"O material de suporte é comumente usado para imprimir suporte e interface de " +"suporte" + +msgid "Softening temperature" +msgstr "Temperatura de amolecimento" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"O material amolece a esta temperatura, portanto, quando a temperatura da " +"mesa for igual ou maior que ela, é altamente recomendável abrir a porta da " +"frente e/ou remover o vidro superior para evitar entupimentos." + +msgid "Price" +msgstr "Preço" + +msgid "Filament price. For statistics only" +msgstr "Preço do filamento. Apenas para estatísticas" + +msgid "money/kg" +msgstr "dinheiro/kg" + +msgid "Vendor" +msgstr "Fornecedor" + +msgid "Vendor of filament. For show only" +msgstr "Fornecedor do filamento. Apenas para mostrar" + +msgid "(Undefined)" +msgstr "(Indefinido)" + +msgid "Sparse infill direction" +msgstr "Direção do preenchimento" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Ângulo para o padrão de preenchimento não sólido, que controla o início ou a " +"direção principal da linha" + +msgid "Solid infill direction" +msgstr "Direção do preenchimento sólido" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Ângulo para padrão de preenchimento sólido, que controla a direção inicial " +"ou principal da linha" + +msgid "Rotate solid infill direction" +msgstr "Rotaciona a direção do preenchimento sólido" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "Rotaciona a direção do preenchimento em 90° para cada camada." + +msgid "Sparse infill density" +msgstr "Densidade do preenchimento" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"Densidade do preenchimento não sólido interno, 100% transforma todo o " +"preenchimento não sólido em preenchimento sólido e será usado o padrão de " +"preenchimento sólido interno" + +msgid "Sparse infill pattern" +msgstr "Padrão de preenchimento" + +msgid "Line pattern for internal sparse infill" +msgstr "Padrão de linha para preenchimento interno" + +msgid "Grid" +msgstr "Grade" + +msgid "Line" +msgstr "Linha" + +msgid "Cubic" +msgstr "Cúbico" + +msgid "Tri-hexagon" +msgstr "Tri-hexágono" + +msgid "Gyroid" +msgstr "Giroide" + +msgid "Honeycomb" +msgstr "Honeycomb" + +msgid "Adaptive Cubic" +msgstr "Cúbico Adaptativo" + +msgid "3D Honeycomb" +msgstr "Honeycomb 3D" + +msgid "Support Cubic" +msgstr "Cúbico de Suporte" + +msgid "Lightning" +msgstr "Relâmpago" + +msgid "Cross Hatch" +msgstr "Padrão Cruzado" + +msgid "Sparse infill anchor length" +msgstr "Comp. da âncora de preenchimento" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"Conecte uma linha de preenchimento a um perímetro interno com um segmento " +"curto de um perímetro adicional. Se expresso como porcentagem (exemplo: " +"15%), é calculado sobre a largura de extrusão do preenchimento. O Orca " +"Slicer tenta conectar duas linhas de preenchimento próximas a um segmento " +"curto de perímetro. Se nenhum segmento de perímetro mais curto que " +"infill_anchor_max for encontrado, a linha de preenchimento é conectada a um " +"segmento de perímetro em apenas um lado e o comprimento do segmento de " +"perímetro tomado é limitado a este parâmetro, mas não mais do que " +"anchor_length_max. \n" +"Defina este parâmetro como zero para desabilitar os perímetros de ancoragem " +"conectados a uma única linha de preenchimento." + +msgid "0 (no open anchors)" +msgstr "0 (sem ancoras abertas)" + +msgid "1000 (unlimited)" +msgstr "1000 (ilimitado)" + +msgid "Maximum length of the infill anchor" +msgstr "Comp. máx. da âncora de preench." + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"Conecte uma linha de preenchimento a um perímetro interno com um segmento " +"curto de um perímetro adicional. Se expresso como porcentagem (exemplo: " +"15%), é calculado sobre a largura de extrusão do preenchimento. O Orca " +"Slicer tenta conectar duas linhas de preenchimento próximas a um segmento " +"curto de perímetro. Se nenhum segmento de perímetro mais curto que este " +"parâmetro for encontrado, a linha de preenchimento é conectada a um segmento " +"de perímetro em apenas um lado e o comprimento do segmento de perímetro " +"tomado é limitado a infill_anchor, mas não mais do que este parâmetro. \n" +"Se definido como 0, o antigo algoritmo de conexão de preenchimento será " +"usado, ele deve criar o mesmo resultado que com 1000 e 0." + +msgid "0 (Simple connect)" +msgstr "0 (Conexão simples)" + +msgid "Acceleration of outer walls" +msgstr "Aceleração das paredes externas" + +msgid "Acceleration of inner walls" +msgstr "Aceleração das paredes internas" + +msgid "Acceleration of travel moves" +msgstr "Aceleração dos movimentos de deslocamento" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Aceleração do preenchimento da superfície superior. Usar um valor menor pode " +"melhorar a qualidade da superfície superior" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Aceleração do perímetro externo. Usar um valor menor pode melhorar a " +"qualidade" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Aceleração das pontes. Se o valor for expresso como uma porcentagem (por " +"exemplo, 50%), será calculado com base na aceleração do perímetro externo." + +msgid "mm/s² or %" +msgstr "mm/s² ou %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Aceleração do preenchimento não sólido. Se o valor for expresso como uma " +"porcentagem (por exemplo, 100%), será calculado com base na aceleração " +"padrão." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"Aceleração do preenchimento sólido interno. Se o valor for expresso como uma " +"porcentagem (por exemplo, 100%), será calculado com base na aceleração " +"padrão." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Aceleração da primeira camada. Usar um valor menor pode melhorar a adesão à " +"mesa" + +msgid "Enable accel_to_decel" +msgstr "Habilitar accel_to_decel" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "O max_accel_to_decel do Klipper será ajustado automaticamente" + +msgid "accel_to_decel" +msgstr "accel_to_decel" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" +"O max_accel_to_decel do Klipper será ajustado para esse %% de aceleração" + +msgid "Jerk of outer walls" +msgstr "Jerk nas paredes externas" + +msgid "Jerk of inner walls" +msgstr "Jerk nas paredes internas" + +msgid "Jerk for top surface" +msgstr "Jerk na superfície superior" + +msgid "Jerk for infill" +msgstr "Jerk no preenchimento" + +msgid "Jerk for initial layer" +msgstr "Jerk na primeira camada" + +msgid "Jerk for travel" +msgstr "Jerk no deslocamento" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Largura da linha da primeira camada. Se expresso como uma %, será calculado " +"sobre o diâmetro do bico." + +msgid "Initial layer height" +msgstr "Altura da primeira camada" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Altura da primeira camada. Tornar a altura da primeira camada ligeiramente " +"espessa pode melhorar a adesão à mesa" + +msgid "Speed of initial layer except the solid infill part" +msgstr "Velocidade da primeira camada, exceto a parte de preenchimento sólido" + +msgid "Initial layer infill" +msgstr "Preenchimento da primeira camada" + +msgid "Speed of solid infill part of initial layer" +msgstr "Velocidade da parte de preenchimento sólido da primeira camada" + +msgid "Initial layer travel speed" +msgstr "Velocidade de deslocamento da primeira camada" + +msgid "Travel speed of initial layer" +msgstr "Velocidade de deslocamento da primeira camada" + +msgid "Number of slow layers" +msgstr "Número de camadas lentas" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"As primeiras camadas são impressas mais lentamente do que o normal. A " +"velocidade é aumentada gradualmente de forma linear sobre o número " +"especificado de camadas." + +msgid "Initial layer nozzle temperature" +msgstr "Temperatura do bico da primeira camada" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" +"Temperatura do bico para imprimir a primeira camada ao usar este filamento" + +msgid "Full fan speed at layer" +msgstr "Velocidade total do ventilador na camada" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"A velocidade do ventilador aumentará linearmente de zero na camada " +"\"close_fan_the_first_x_layers\" para o máximo na camada " +"\"full_fan_speed_layer\". \"full_fan_speed_layer\" será ignorado se for " +"menor que \"close_fan_the_first_x_layers\", caso em que o ventilador " +"funcionará na velocidade máxima permitida na camada " +"\"close_fan_the_first_x_layers\" + 1." + +msgid "layer" +msgstr "" + +msgid "Support interface fan speed" +msgstr "Velocidade do ventilador de interface de suporte" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"Esta velocidade do ventilador é aplicada durante todas as interfaces de " +"suporte, para enfraquecer sua ligação com uma alta velocidade do " +"ventilador.\n" +"Defina como -1 para desativar esta substituição.\n" +"Só pode ser substituído por disable_fan_first_layers." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Movimento aleatório durante a impressão do perímetro, de modo que a " +"superfície tenha uma aparência áspera. Essa configuração controla a textura " +"fuzzy" + +msgid "Contour" +msgstr "Contorno" + +msgid "Contour and hole" +msgstr "Contorno e furo" + +msgid "All walls" +msgstr "Todas as paredes" + +msgid "Fuzzy skin thickness" +msgstr "Espessura da textura fuzzy" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"A largura dentro da qual tremer. É desaconselhável que seja menor do que a " +"largura da linha do perímetro externo" + +msgid "Fuzzy skin point distance" +msgstr "Distância do ponto da textura fuzzy" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"A distância média entre os pontos aleatórios introduzidos em cada segmento " +"de linha" + +msgid "Apply fuzzy skin to first layer" +msgstr "Aplicar texture fuzzy à primeira camada" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "Se deve aplicar textura fuzzy na primeira camada" + +msgid "Filter out tiny gaps" +msgstr "Filtrar vazios pequenos" + +msgid "Layers and Perimeters" +msgstr "Camadas e Perímetros" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "Filtrar vazios menores que o limite especificado" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Velocidade de preenchimento de vão. Vazios geralmente têm largura de linha " +"irregular e devem ser impressas mais lentamente" + +msgid "Precise Z height" +msgstr "Altura Z precisa" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Ative isto para obter altura Z precisa do objeto após fatiar. Ele obterá a " +"altura do objeto exata ajustando as alturas da camada das últimas camadas. " +"Observe que este é um parâmetro experimental." + +msgid "Arc fitting" +msgstr "Ajuste de arco (Arc fitting)" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" +"Habilite isso para obter um arquivo de código G, que tenha movimentos G2 e " +"G3. A tolerância adequada é a mesma que a resolução. \n" +"\n" +"Nota: Para máquinas klipper, esta opção é recomendada estar desativada. " +"Klipper não beneficia de comandos de arco pois eles são divididos novamente " +"em segmentos de linha pelo firmware. Isso resulta em uma redução da " +"qualidade de superfície à medida que os segmentos de linha são convertidos " +"em arcos pelo fatiador e depois revertem para segmentos de linha pelo " +"firmware." + +msgid "Add line number" +msgstr "Adicionar número da linha" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Habilitar isso para adicionar o número da linha (Nx) no início de cada linha " +"do G-Code" + +msgid "Scan first layer" +msgstr "Escanear primeira camada" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Habilitar isso para ativar a câmera na impressora para verificar a qualidade " +"da primeira camada" + +msgid "Nozzle type" +msgstr "Tipo de bico" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"O material metálico do bico. Isso determina a resistência ao desgaste do " +"bico e que tipo de filamento pode ser impresso" + +msgid "Undefine" +msgstr "Não definido" + +msgid "Hardened steel" +msgstr "Aço endurecido" + +msgid "Stainless steel" +msgstr "Aço inoxidável" + +msgid "Brass" +msgstr "Latão" + +msgid "Nozzle HRC" +msgstr "Bico HRC" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"A dureza do bico. Zero significa que não há verificação da dureza do bico " +"durante a fatiamento." + +msgid "HRC" +msgstr "RH" + +msgid "Printer structure" +msgstr "Estrutura da impressora" + +msgid "The physical arrangement and components of a printing device" +msgstr "A disposição física e componentes de um dispositivo de impressão" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "Melhor posição do objeto" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Melhor posição de arranjo automático na faixa [0,1] em relação ao formato da " +"mesa." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"Habilitar esta opção se a máquina tiver ventilador auxiliar de resfriamento " +"da peça. Comando G-code: M106 P2 S(0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Comece o ventilador este número de segundos antes do tempo de início do alvo " +"(você pode usar segundos fracionários). Ele assume aceleração infinita para " +"esta estimativa de tempo e só levará em conta os movimentos G1 e G0 (o " +"ajuste de arco não é suportado).\n" +"Não moverá comandos do ventilador de gcodes personalizados (eles funcionam " +"como uma espécie de 'barreira').\n" +"Não moverá comandos do ventilador para o início do gcode se o 'apenas gcode " +"de início personalizado' estiver ativado.\n" +"Use 0 para desativar." + +msgid "Only overhangs" +msgstr "Apenas overhangs" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "Levará em conta apenas o atraso para o resfriamento dos s." + +msgid "Fan kick-start time" +msgstr "Tempo de inicialização do ventilador" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Emita um comando de velocidade máxima do ventilador por esta quantidade de " +"segundos antes de reduzir para a velocidade alvo para iniciar o ventilador " +"de resfriamento.\n" +"Isto é útil para ventiladores onde um baixo PWM/potência pode ser " +"insuficiente para fazer o ventilador começar a girar a partir de uma parada, " +"ou para fazer o ventilador alcançar a velocidade mais rapidamente.\n" +"Defina como 0 para desativar." + +msgid "Time cost" +msgstr "Custo de tempo" + +msgid "The printer cost per hour" +msgstr "O custo da impressora por hora" + +msgid "money/h" +msgstr "dinheiro/h" + +msgid "Support control chamber temperature" +msgstr "Controlar a temperatura da câmara de suporte" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Esta opção está habilitada se a máquina suportar o controle da temperatura " +"da câmara.\n" +"Comando G-code: M141 S(0-255)" + +msgid "Support air filtration" +msgstr "Filtragem de ar de suporte" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Esta opção está habilitada se a máquina suportar o controle da temperatura " +"da câmara.\n" +"Comando G-code: M141 S(0-255)" + +msgid "G-code flavor" +msgstr "Tipo de G-code" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Com que tipo de G-code a impressora é compatível" + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "Suportar vários tipos de mesa" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "Ative esta opção se quiser usar vários tipos de mesa" + +msgid "Label objects" +msgstr "Etiquetar objetos" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"Ative isso para adicionar comentários no G-Code etiquetando movimentos de " +"impressão com a qual objeto eles pertencem, o que é útil para o plugin " +"CancelObject do Octoprint. Esta configuração NÃO é compatível com a " +"configuração de Material Múltiplo de Extrusora Única e Limpeza no Objeto / " +"Limpeza no Preenchimento." + +msgid "Exclude objects" +msgstr "Excluir objetos" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "Ative esta opção para adicionar o comando EXCLUDE OBJECT no g-code" + +msgid "Verbose G-code" +msgstr "G-code detalhado" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Ative isso para obter um arquivo G-code comentado, com cada linha explicada " +"por um texto descritivo. Se você imprimir do cartão SD, o peso adicional do " +"arquivo pode fazer com que o firmware fique mais lento." + +msgid "Infill combination" +msgstr "Combinar preenchimento" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Combina automaticamente o preenchimento não sólido de várias camadas para " +"imprimir juntas e reduzir o tempo. O perímetro ainda é impresso com a altura " +"original da camada." + +msgid "Filament to print internal sparse infill." +msgstr "Filamento para imprimir preenchimento interno não sólido." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Largura da linha do preenchimento interno não sólido. Se expresso como %, " +"será calculado sobre o diâmetro do bico." + +msgid "Infill/Wall overlap" +msgstr "Sobreposição de preenchimento/perímetro" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" +"A área de preenchimento é aumentada ligeiramente para se sobrepor à parede " +"para uma melhor ligação. O valor percentual é relativo à largura da linha do " +"preencimento. Defina este valor como ~10-15% para minimizar uma potencial " +"sobre extrusão e acumulo de material resultando em superfícies superiores " +"ásperas." + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "Sobreposição Superior/Inferior de preenchimento sólido/parede" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"A área de preenchimento sólido é ligeiramente alargada para se sobrepor à " +"parede para melhor ligação e para minimizar a aparência de buracos onde o " +"preenchimento encontra as paredes. Um valor de 25-30% é um bom ponto de " +"partida, minimizando a aparência dos buracos. O valor percentual é relativo " +"à largura da linha do preenchimento" + +msgid "Speed of internal sparse infill" +msgstr "Velocidade do preenchimento" + +msgid "Interface shells" +msgstr "Paredes de interface" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Força a geração de perímetros sólidos entre materiais/volumes adjacentes. " +"Útil para impressões com múltiplos extrusores com materiais translúcidos ou " +"suporte solúvel manual" + +msgid "Maximum width of a segmented region" +msgstr "Largura máxima de uma região segmentada" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Largura máxima de uma região segmentada. Zero desativa essa funcionalidade." + +msgid "Interlocking depth of a segmented region" +msgstr "Profundidade de entrelaçamento de uma região segmentada" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Profundidade de entrelaçamento de uma região segmentada. Zero desativa essa " +"funcionalidade." + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "Tipo do passar ferro" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"Passar a ferro utiliza um pequeno fluxo para imprimir na mesma altura da " +"superfície novamente para deixá-la mais lisa. Esta configuração controla " +"qual camada está sendo passada a ferro" + +msgid "No ironing" +msgstr "Desativado" + +msgid "Top surfaces" +msgstr "Superfícies superiores" + +msgid "Topmost surface" +msgstr "Superfície superior mais alta" + +msgid "All solid layer" +msgstr "Todas as camadas sólidas" + +msgid "Ironing Pattern" +msgstr "Padrão do passar ferro" + +msgid "The pattern that will be used when ironing" +msgstr "O padrão que será usado ao passar a ferro" + +msgid "Ironing flow" +msgstr "Fluxo do passar ferro" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"A quantidade de material a extrudar durante o passar a ferro. Relativo ao " +"fluxo da altura normal da camada. Um valor muito alto resulta em " +"superextrusão na superfície" + +msgid "Ironing line spacing" +msgstr "Espaçamento de linha do passar ferro" + +msgid "The distance between the lines of ironing" +msgstr "A distância entre as linhas do passar ferro" + +msgid "Ironing speed" +msgstr "Velocidade do passar ferro" + +msgid "Print speed of ironing lines" +msgstr "Velocidade de impressão das linhas do passar ferro" + +msgid "Ironing angle" +msgstr "Ângulo do passar ferro" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"O ângulo em que o passar a ferro é feito. Um número negativo desativa essa " +"função e usa o método padrão." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"Esta parte do gcode é inserida em cada mudança de camada após levantar z" + +msgid "Supports silent mode" +msgstr "Suporta modo silencioso" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Se a máquina suporta o modo silencioso, no qual a máquina usa uma aceleração " +"mais baixa para imprimir" + +msgid "Emit limits to G-code" +msgstr "Emitir limites para o G-code" + +msgid "Machine limits" +msgstr "Limites da máquina" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"Se ativado, os limites da máquina serão emitidos para o arquivo de G-code.\n" +"Esta opção será ignorada se o tipo do G-code estiver definido para Klipper." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Este G-code será usado como um código para pausar a impressão. O usuário " +"pode inserir o G-code de pausa no visualizador de G-code" + +msgid "This G-code will be used as a custom code" +msgstr "Este G-code será usado como um código personalizado" + +msgid "Small area flow compensation (beta)" +msgstr "Compensação de fluxo de área pequena (beta)" + +msgid "Enable flow compensation for small infill areas" +msgstr "Habilitar compensação de fluxo para áreas de preenchimento pequenas" + +msgid "Flow Compensation Model" +msgstr "Modelo de Compensação de Fluxo" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"Modelo de Compensação de Fluxo, usado para ajustar o fluxo para áreas de " +"preenchimento pequenas. O modelo é expresso como um par de valores separados " +"por vírgula para o comprimento de extrusão e os fatores de correção de " +"fluxo, um por linha, no seguinte formato: \"1.234,5.678\"" + +msgid "Maximum speed X" +msgstr "Velocidade máxima X" + +msgid "Maximum speed Y" +msgstr "Velocidade máxima Y" + +msgid "Maximum speed Z" +msgstr "Velocidade máxima Z" + +msgid "Maximum speed E" +msgstr "Velocidade máxima E" + +msgid "Maximum X speed" +msgstr "Velocidade máxima em X" + +msgid "Maximum Y speed" +msgstr "Velocidade máxima em Y" + +msgid "Maximum Z speed" +msgstr "Velocidade máxima em Z" + +msgid "Maximum E speed" +msgstr "Velocidade máxima em E" + +msgid "Maximum acceleration X" +msgstr "Aceleração máxima em X" + +msgid "Maximum acceleration Y" +msgstr "Aceleração máxima em Y" + +msgid "Maximum acceleration Z" +msgstr "Aceleração máxima em Z" + +msgid "Maximum acceleration E" +msgstr "Aceleração máxima em E" + +msgid "Maximum acceleration of the X axis" +msgstr "Aceleração máxima do eixo X" + +msgid "Maximum acceleration of the Y axis" +msgstr "Aceleração máxima do eixo Y" + +msgid "Maximum acceleration of the Z axis" +msgstr "Aceleração máxima do eixo Z" + +msgid "Maximum acceleration of the E axis" +msgstr "Aceleração máxima do eixo E" + +msgid "Maximum jerk X" +msgstr "Jerk máximo em X" + +msgid "Maximum jerk Y" +msgstr "Jerk máximo em Y" + +msgid "Maximum jerk Z" +msgstr "Jerk máximo em Z" + +msgid "Maximum jerk E" +msgstr "Jerk máximo em E" + +msgid "Maximum jerk of the X axis" +msgstr "Jerk máximo do eixo X" + +msgid "Maximum jerk of the Y axis" +msgstr "Jerk máximo do eixo Y" + +msgid "Maximum jerk of the Z axis" +msgstr "Jerk máximo do eixo Z" + +msgid "Maximum jerk of the E axis" +msgstr "Jerk máximo do eixo E" + +msgid "Minimum speed for extruding" +msgstr "Velocidade mínima para extrusão" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Velocidade mínima para extrusão (M205 S)" + +msgid "Minimum travel speed" +msgstr "Velocidade mínima de movimento" + +msgid "Minimum travel speed (M205 T)" +msgstr "Velocidade mínima de movimento (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Aceleração máxima para extrusão" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Aceleração máxima para extrusão (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Aceleração máxima para retrair" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Aceleração máxima para retrair (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Aceleração máxima para deslocamento" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" +"Aceleração máxima para deslocamento (M204 T), aplica-se apenas ao Marlin 2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"A velocidade do ventilador de resfriamento da peça pode ser aumentada quando " +"o resfriamento automático está habilitado. Este é o limite máximo de " +"velocidade do ventilador de resfriamento da peça" + +msgid "Max" +msgstr "Máx" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"A maior altura de camada imprimível para o extrusor. Usado para limitar a " +"altura máxima da camada quando a altura da camada adaptativa está ativada" + +msgid "Extrusion rate smoothing" +msgstr "Suavização da extrusão" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Este parâmetro suaviza as mudanças súbitas na taxa de extrusão que ocorrem " +"quando a impressora faz a transição de uma extrusão de alto fluxo (alta " +"velocidade/maior largura) para uma extrusão de baixo fluxo (baixa velocidade/" +"menor largura) e vice-versa.\n" +"\n" +"Define a taxa máxima pela qual o fluxo volumétrico extrudado em mm3/seg pode " +"mudar ao longo do tempo. Valores mais altos significam que mudanças de taxa " +"de extrusão mais altas são permitidas, resultando em transições de " +"velocidade mais rápidas.\n" +"\n" +"Um valor de 0 desativa o recurso.\n" +"\n" +"Para uma impressora de acionamento direto de alta velocidade e alto fluxo " +"(como a Bambu lab ou Voron), esse valor geralmente não é necessário. No " +"entanto, pode fornecer alguns benefícios marginais em certos casos em que as " +"velocidades das características variam muito. Por exemplo, quando há " +"desacelerações agressivas devido a overhangs. Nesses casos, um valor alto de " +"cerca de 300-350mm3/s2 é recomendado, pois isso permite apenas suavização " +"suficiente para ajudar o Pressure advance a alcançar uma transição de fluxo " +"mais suave.\n" +"\n" +"Para impressoras mais lentas sem Pressure advance, o valor deve ser definido " +"muito mais baixo. Um valor de 10-15mm3/s2 é um bom ponto de partida para " +"extrusoras de acionamento direto e 5-10mm3/s2 para estilo Bowden.\n" +"\n" +"Este recurso é conhecido como Equalizador de Pressão no slicer Prusa.\n" +"\n" +"Nota: este parâmetro desativa o ajuste de arco." + +msgid "mm³/s²" +msgstr "mm3/s2" + +msgid "Smoothing segment length" +msgstr "Distancia do segmento de suavização" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Um valor menor resulta em transições de extrusão mais suaves. No entanto, " +"isso resulta em um arquivo Gcode significativamente maior e mais instruções " +"para a impressora processar.\n" +"\n" +"O valor padrão de 3 funciona bem para a maioria dos casos. Se sua impressora " +"estiver engasgando, aumente este valor para reduzir o número de ajustes " +"feitos.\n" +"\n" +"Valores permitidos: 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "Velocidade mínima para o ventilador de resfriamento da peça" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Velocidade do ventilador auxiliar de resfriamento de peças. O ventilador " +"auxiliar funcionará nesta velocidade durante a impressão, exceto nas " +"primeiras camadas, que são definidas por camadas sem resfriamento.\n" +"\n" +"Por favor, habilite o ventilador auxiliar nas configurações da impressora " +"para usar esta função. Comando G-code: M106 P2 S(0-255)" + +msgid "Min" +msgstr "Mín" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"A menor altura de camada imprimível para o extrusor. Usado para limitar a " +"altura mínima da camada ao habilitar a altura de camada adaptativa" + +msgid "Min print speed" +msgstr "Velocidade de impressão mínima" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"A velocidade de impressão mínima para a qual a impressora diminuirá a " +"velocidade para tentar manter o tempo mínimo de camada acima, quando a " +"desaceleração para um melhor resfriamento da camada estiver habilitada." + +msgid "Nozzle diameter" +msgstr "Diâmetro do bico" + +msgid "Diameter of nozzle" +msgstr "Diâmetro do bico" + +msgid "Configuration notes" +msgstr "Notas de configuração" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Você pode colocar aqui suas notas pessoais. Este texto será adicionado aos " +"comentários do cabeçalho do G-code." + +msgid "Host Type" +msgstr "Tipo de Host" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"O Snapmaker Orca pode carregar arquivos de código G para um hospedeiro de " +"impressora. Este campo deve conter o tipo de hospedeiro." + +msgid "Nozzle volume" +msgstr "Volume do bico" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Volume do bico entre o cortador e a extremidade do bico" + +msgid "Cooling tube position" +msgstr "Posição do tubo de resfriamento" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "" +"Distância do ponto central do tubo de resfriamento da ponta do extrusor." + +msgid "Cooling tube length" +msgstr "Comprimento do tubo de resfriamento" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Comprimento do tubo de resfriamento para limitar o espaço para movimentos de " +"resfriamento dentro dele." + +msgid "High extruder current on filament swap" +msgstr "Corrente da extrusora alta na troca de filamento" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Pode ser benéfico aumentar a corrente do motor da extrusora durante a " +"sequência de troca de filamento para permitir taxas de moldeamento rápidas e " +"para superar a resistência ao carregar um filamento com uma ponta com forma " +"irregular." + +msgid "Filament parking position" +msgstr "Posição de estacionamento do filamento" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Distância da ponta do extrusor da posição onde o filamento é estacionado " +"quando descarregado. Isso deve corresponder ao valor no firmware da " +"impressora." + +msgid "Extra loading distance" +msgstr "Distância de carregamento extra" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Quando definido como zero, a distância que o filamento é movido da posição " +"de estacionamento durante o carregamento é exatamente a mesma que foi movida " +"durante o descarregamento. Quando positivo, é carregado mais longe, se " +"negativo, o movimento de carregamento é mais curto do que o descarregamento." + +msgid "Start end points" +msgstr "Pontos de início e fim" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "" +"Os pontos de início e fim que vão da área do cortador até a lata de lixo." + +msgid "Reduce infill retraction" +msgstr "Reduzir retração durante o preenchimento" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Não retrair quando o movimento está na área de preenchimento completamente. " +"Isso significa que o vazamento não pode ser visto. Isso pode reduzir o " +"número de retratações para modelos complexos e economizar tempo de " +"impressão, mas torna a geração de fatiamento e G-code mais lenta" + +msgid "Filename format" +msgstr "Formato do nome do arquivo" + +msgid "User can self-define the project file name when export" +msgstr "O usuário pode auto-definir o nome do arquivo do projeto ao exportar" + +msgid "Make overhangs printable" +msgstr "Overhangs imprimíveis" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "Modifica a geometria para imprimir overhangs sem suporte." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Overhangs imprimíveis - ângulo máx" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Ângulo máximo do overhang permitido antes de fazer ângulos mais íngremes " +"imprimíveis. 90° não vai fazer nenhuma mudança no modelo e vai permitir " +"qualquer overhang. 0 vai substituir todos overhangs por uma forma cônica." + +msgid "Make overhangs printable - Hole area" +msgstr "Overhangs imprimíveis - área do furo" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Área maxima de um furo na base do modelo antes que ele seja preenchido por " +"uma forma cônica. Um valor 0 irá preencher todos os furos do modelo." + +msgid "mm²" +msgstr "mm2" + +msgid "Detect overhang wall" +msgstr "Detectar overhangs" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Detecta a porcentagem relativa de overhang em relação a largura do perímetro " +"e usa uma velocidade diferente de impressão. Para overhangs 100%%, a " +"velocidade de ponte é usada." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Largura do perímetro interno. Se expressado como %, será computado de acordo " +"com o diâmetro do bico." + +msgid "Speed of inner wall" +msgstr "Velocidade do perímetro interno" + +msgid "Number of walls of every layer" +msgstr "Número de perímetros em cada camada" + +msgid "Alternate extra wall" +msgstr "Parede extra alternada" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"Esta configuração adiciona um perímetro extra a cada duas camadas. Dessa " +"forma, o preenchimento fica encaixado verticalmente entre as paredes, " +"resultando em impressões mais resistentes. \n" +"\n" +"Quando esta opção está ativada, a opção de garantir a espessura vertical do " +"perímetro precisa ser desativada. \n" +"\n" +"Não é recomendado usar o preenchimento rápido juntamente com esta opção, " +"pois há preenchimento limitado para ancorar os perímetros extras." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Se você deseja processar o G-code de saída por meio de scripts " +"personalizados, basta listar seus caminhos absolutos aqui. Separe vários " +"scripts com um ponto e vírgula. Os scripts receberão o caminho absoluto para " +"o arquivo G-code como primeiro argumento, e eles podem acessar as " +"configurações do Snapmaker Orca lendo variáveis de ambiente." + +msgid "Printer notes" +msgstr "Notas da impressora" + +msgid "You can put your notes regarding the printer here." +msgstr "Você pode inserir suas observações sobre a impressora aqui." + +msgid "Raft contact Z distance" +msgstr "Distância (Z) de contato da Jangada" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "Lacuna (Z) entre o objeto e a Jangada. Ignorado para interface solúvel" + +msgid "Raft expansion" +msgstr "Expansão da Jangada" + +msgid "Expand all raft layers in XY plane" +msgstr "Expandir todas as camadas da Jangada no plano XY" + +msgid "Initial layer density" +msgstr "Densidade da primeira camada" + +msgid "Density of the first raft or support layer" +msgstr "Densidade da primeira camada da Jangada ou Suporte" + +msgid "Initial layer expansion" +msgstr "Expansão da primeira camada" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Expanda a primeira camada da Jangada ou Suporte para melhorar a adesão à " +"mesa de impressão" + +msgid "Raft layers" +msgstr "Camadas da Jangada" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"O objeto será elevado por este número de camadas de suporte. Use esta função " +"para evitar o enrugamento ao imprimir ABS" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"O caminho do G-code é gerado após simplificar o contorno do modelo para " +"evitar muitos pontos e linhas de código G no arquivo de código G. Um valor " +"menor significa maior resolução e mais tempo para fatiar" + +msgid "Travel distance threshold" +msgstr "Limiar de distância de deslocamento" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Disparar a retração somente quando a distância da deslocamento for maior que " +"este limite" + +msgid "Retract amount before wipe" +msgstr "Quantidade de retração antes da limpeza" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"O comprimento da retração rápida antes da limpeza, em relação ao comprimento " +"da retração" + +msgid "Retract when change layer" +msgstr "Retrair ao mudar de camada" + +msgid "Force a retraction when changes layer" +msgstr "Forçar uma retração ao mudar de camada" + +msgid "Retraction Length" +msgstr "Distância de retração" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Alguma quantidade de material no extrusor é puxada para trás para evitar " +"oozing durante viagens longas. Defina zero para desativar a retração" + +msgid "Long retraction when cut(experimental)" +msgstr "Retração longa quando cortado(experimental)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Recurso experimental. Retrair e cortar o filamento a uma distância mais " +"longa durante mudanças para minimizar a purga. Isto reduz significativamente " +"a purga, pode também aumentar o risco de bolhas no bico ou de outros " +"problemas de impressão." + +msgid "Retraction distance when cut" +msgstr "Distância de retração ao cortar" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Funcionalidade experimental. Comprimento de retração antes de cortar durante " +"a mudança de filamento" + +msgid "Z hop when retract" +msgstr "Z hop ao retrair" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Sempre que a retração é feita, o bico é levantado um pouco para criar folga " +"entre o bico e a impressão. Isso evita que o bico atinja a impressão ao se " +"mover. Usar linha espiral para levantar z pode evitar stringing" + +msgid "Z hop lower boundary" +msgstr "Limite inferior do Z hop" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"O Z hop só entrará em vigor quando Z estiver acima deste valor e abaixo do " +"parâmetro: \"Limite superior do Z hop\"" + +msgid "Z hop upper boundary" +msgstr "Limite superior do Z hop" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Se este valor for positivo, o Z hop só entrará em vigor quando Z estiver " +"acima do parâmetro: \"Limite inferior do Z hop\" e abaixo deste valor" + +msgid "Z hop type" +msgstr "Tipo de Z hop" + +msgid "Slope" +msgstr "Declive" + +msgid "Spiral" +msgstr "Espiral" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "Elevar Z apenas acima de" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Se você definir isso como um valor positivo, a elevação de Z só ocorrerá " +"acima do Z absoluto especificado." + +msgid "Only lift Z below" +msgstr "Elevar Z apenas abaixo de" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Se você definir isso como um valor positivo, a elevação de Z só ocorrerá " +"abaixo do Z absoluto especificado." + +msgid "On surfaces" +msgstr "Nas superfícies" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Forçar Z Hop. Essa configuração é impactada pelas configurações acima " +"(Somente elevar Z acima/abaixo)" + +msgid "All Surfaces" +msgstr "Todas as superfícies" + +msgid "Top Only" +msgstr "Somente a parte superior" + +msgid "Bottom Only" +msgstr "Somente a parte inferior" + +msgid "Top and Bottom" +msgstr "Parte superior e inferior" + +msgid "Extra length on restart" +msgstr "Comprimento extra na retração" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Quando a retração é compensada após o movimento de deslocamento, o extrusor " +"empurrará essa quantidade adicional de filamento. Esta configuração é " +"raramente necessária." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Quando a retração é compensada após a troca de ferramenta, o extrusor " +"empurrará essa quantidade adicional de filamento." + +msgid "Retraction Speed" +msgstr "Velocidade de retração" + +msgid "Speed of retractions" +msgstr "Velocidade das retratações" + +msgid "Deretraction Speed" +msgstr "Velocidade de desretração" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Velocidade para recarregar o filamento no extrusor. Zero significa mesma " +"velocidade de retração" + +msgid "Use firmware retraction" +msgstr "Usar retração de firmware" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"Esta configuração experimental usa os comandos G10 e G11 para fazer com que " +"o firmware gerencie a retração. Isso é suportado apenas no Marlin mais " +"recente." + +msgid "Show auto-calibration marks" +msgstr "Mostrar marcas de autocalibração automática" + +msgid "Disable set remaining print time" +msgstr "Desabilitar definir tempo de impressão restante" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" +"Desativar a geração do M73: Definir tempo restante de impressão no código " +"final" + +msgid "Seam position" +msgstr "Posição da costura" + +msgid "The start position to print each part of outer wall" +msgstr "A posição inicial para imprimir cada parte do perímetro externo" + +msgid "Nearest" +msgstr "Mais próximo" + +msgid "Aligned" +msgstr "Alinhado" + +msgid "Back" +msgstr "Atrás" + +msgid "Random" +msgstr "Aleatório" + +msgid "Staggered inner seams" +msgstr "Costuras internas escalonadas" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Esta opção faz com que as costuras internas sejam deslocadas para trás com " +"base em sua profundidade, formando um padrão de zigue-zague." + +msgid "Seam gap" +msgstr "Espaço entre costuras" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Para reduzir a visibilidade da costura em uma extrusão de loop fechado, o " +"loop é interrompido e encurtado por uma quantidade especificada.\n" +"Esta quantidade pode ser especificada em milímetros ou como uma porcentagem " +"do diâmetro atual do extrusor. O valor padrão para este parâmetro é 10%." + +msgid "Scarf joint seam (beta)" +msgstr "Costura Scarf (beta)" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Use a Costura Scarf para minimizar a visibilidade da costura e aumentar a " +"resistência da costura." + +msgid "Conditional scarf joint" +msgstr "Costura Scarf condicional" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Aplique a Costura Scarf apenas em perímetros suaves onde costuras " +"tradicionais não escondem as costuras em cantos agudos de forma eficaz." + +msgid "Conditional angle threshold" +msgstr "Ângulo condicional" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"Esta opção define o ângulo limite para aplicar uma costura scarf " +"condicional.\n" +"Se o ângulo máximo dentro do loop do perímetro exceder esse valor (indicando " +"a ausência de cantos afiados), será usada uma costura scarf. O valor padrão " +"é 155°." + +msgid "Conditional overhang threshold" +msgstr "Overhang condicional" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"Esta opção determina o limiar de inclinação para a aplicação de costuras " +"Scarf. Se a parte sem suporte do perímetro for inferior a esse limite, as " +"costuras Scarf serão aplicadas. O limite padrão é definido em 40% da largura " +"do perímetro externo. Devido a considerações de desempenho, o grau de " +"inclinação é estimado." + +msgid "Scarf joint speed" +msgstr "Velocidade da Costura Scarf" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"Esta opção define a velocidade de impressão para as costuras Scarf. É " +"recomendável imprimir as costuras Scarf em uma velocidade baixa (menor que " +"100 mm/s). Também é aconselhável habilitar 'Suavização da taxa de extrusão' " +"se a velocidade definida variar significativamente da velocidade das paredes " +"externas ou internas. Se a velocidade especificada aqui for maior que a " +"velocidade das paredes externas ou internas, a impressora utilizará a mais " +"lenta das duas velocidades. Quando especificado como uma porcentagem (por " +"exemplo, 80%), a velocidade é calculada com base na velocidade do perímetro " +"externo ou interna respectiva. O valor padrão é definido como 100%." + +msgid "Scarf joint flow ratio" +msgstr "Fluxo da Costura Scarf" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "Este fator afeta a quantidade de material para as costuras Scarf." + +msgid "Scarf start height" +msgstr "Altura inicial da junta Scarf" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Altura inicial da costura Scarf.\n" +"Esta quantidade pode ser especificada em milímetros ou como uma porcentagem " +"da altura atual da camada. O valor padrão para este parâmetro é 0." + +msgid "Scarf around entire wall" +msgstr "Costura Scarf em torno do perímetro" + +msgid "The scarf extends to the entire length of the wall." +msgstr "A junta Scarf se estende por todo o comprimento do perímetro." + +msgid "Scarf length" +msgstr "Comprimento da Costura Scarf" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Comprimento da costura Scarf. Definir este parâmetro como zero desabilita a " +"costura Scarf." + +msgid "Scarf steps" +msgstr "Passos da junta Scarf" + +msgid "Minimum number of segments of each scarf." +msgstr "Número mínimo de segmentos de cada costura scarf." + +msgid "Scarf joint for inner walls" +msgstr "Junta Scarf em paredes internas" + +msgid "Use scarf joint for inner walls as well." +msgstr "Usar costura Scarf em paredes internas também." + +msgid "Role base wipe speed" +msgstr "Velocidade base de limpeza da função" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"A velocidade de limpeza é determinada pela velocidade do tipo de extrusão " +"atual. Por exemplo, se uma ação de limpeza for executada imediatamente após " +"uma extrusão de perímetro externo, a velocidade da extrusão do perímetro " +"externo será utilizada para a ação de limpeza." + +msgid "Wipe on loops" +msgstr "Limpeza em loops" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Para minimizar a visibilidade da costura em uma extrusão de loop fechado, é " +"executado um pequeno movimento para dentro antes que o extrusor saia do loop." + +msgid "Wipe before external loop" +msgstr "Limpeza antes do loop externo" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"Para minimizar a visibilidade de sobreextrusão potencial no início de um " +"perímetro externo ao imprimir com a ordem de impressão de perímetro Externo/" +"Interno ou Interno/Externo/Interno, a desretração é executada ligeiramente " +"no interior a partir do início do perímetro externo. Dessa forma, qualquer " +"sobreextrusão potencial é ocultada da superfície externa. \n" +"\n" +"Isso é útil ao imprimir com a ordem de impressão de perímetro Externa/" +"Interna ou Interna/Externa/Interna, pois nesses modos é mais provável que um " +"perímetro externo seja impresso imediatamente após um movimento de " +"desretração." + +msgid "Wipe speed" +msgstr "Velocidade de limpeza" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"A velocidade de limpeza é determinada pela velocidade especificada nesta " +"configuração. Se o valor for expresso como uma porcentagem (por exemplo, " +"80%), será calculado com base na configuração de velocidade de deslocamento " +"acima. O valor padrão para este parâmetro é 80%" + +msgid "Skirt distance" +msgstr "Distância da saia" + +msgid "Distance from skirt to brim or object" +msgstr "Distância da saia para a borda ou objeto" + +msgid "Skirt height" +msgstr "Altura da saia" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Quantas camadas de saia. Geralmente apenas uma camada" + +msgid "Draft shield" +msgstr "Escudo" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"Um escudo é útil para proteger uma impressão ABS ou ASA de empenamento e de " +"se descolar da mesa de impressão devido à corrrentes de ar. Normalmente, só " +"é necessária com impressoras abertas, ou seja, sem câmara fechada. \n" +"\n" +"Opções:\n" +"Ativado = saia tem a mesma altura que o maior objeto a ser impresso.\n" +"Limitado = saia tem altura especificada pela altura de saia.\n" +"\n" +"Nota: Com o escudo ativo, a saia será impressa na distância de saia do " +"objeto. Portanto, se bordas estiverem ativas, pode se interceptar com eles. " +"Para evitar isso, aumente o valor da distância da saia.\n" + +msgid "Limited" +msgstr "Limitada" + +msgid "Enabled" +msgstr "Ativado" + +msgid "Skirt loops" +msgstr "Voltas da saia" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "Número de voltas da saia. Zero significa desativar a saia" + +msgid "Skirt speed" +msgstr "Velocidade da saia" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" +"Velocidade da saia, em mm/s. Zero significa usar a velocidade padrão de " +"extrusão da camada." + +msgid "Skirt minimum extrusion length" +msgstr "Comprimento mínimo de extrusão da saia" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"Comprimento mínimo de extrusão de filamento em mm ao imprimir a saia. Zero " +"significa que esta característica está desabilitada.\n" +"\n" +"Usar um valor não zero é útil se a impressora estiver configurada para " +"imprimir sem uma linha de limpeza." + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"A velocidade de impressão no gcode exportado será reduzida quando o tempo " +"estimado da camada for menor que esse valor, para obter uma melhor " +"resfriamento para essas camadas" + +msgid "Minimum sparse infill threshold" +msgstr "Limiar mínimo de preenchimento" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"A área de preenchimento não sólido que é menor que o valor de limiar é " +"substituída por preenchimento sólido interno" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Largura da linha de preenchimento sólido interno. Se expresso como uma %, " +"será calculado sobre o diâmetro do bico." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"Velocidade de preenchimento sólido interno, não a superfície superior e " +"inferior" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"A espiralização suaviza os movimentos z do contorno externo. E transforma um " +"modelo sólido em uma impressão de perímetro único com camadas inferiores " +"sólidas. O modelo final gerado não tem costura" + +msgid "Smooth Spiral" +msgstr "Espiral Suave" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"A Espiral Suave suaviza os movimentos X e Y, resultando em nenhuma costura " +"visível, mesmo nas direções XY em paredes que não são verticais" + +msgid "Max XY Smoothing" +msgstr "Suavização Máxima XY" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Distância máxima para mover pontos em XY para tentar obter uma espiral " +"suave. Se expresso como uma %, será calculado sobre o diâmetro do bico" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Se o modo suave ou tradicional for selecionado, um vídeo em time-lapse será " +"gerado para cada impressão. Após cada camada ser impressa, uma captura de " +"tela é feita com a câmera da câmara. Todas essas capturas de tela são " +"compostas em um vídeo em time-lapse quando a impressão é concluída. Se o " +"modo suave for selecionado, a extrusora se moverá para fora após cada camada " +"ser impressa e então tirará uma captura de tela. Como o filamento derretido " +"pode vazar do bico durante o processo de tirar uma captura de tela, é " +"necessário uma Torre Prime para o modo suave para limpar o bico." + +msgid "Traditional" +msgstr "Tradicional" + +msgid "Temperature variation" +msgstr "Variação de temperatura" + +msgid "Start G-code" +msgstr "Código de Início" + +msgid "Start G-code when start the whole printing" +msgstr "Código de início ao iniciar a impressão completa" + +msgid "Start G-code when start the printing of this filament" +msgstr "Código de início ao iniciar a impressão deste filamento" + +msgid "Single Extruder Multi Material" +msgstr "Múltiplos Materiais com um Extrusor" + +msgid "Use single nozzle to print multi filament" +msgstr "Use um único bico para imprimir múltiplos filamentos" + +msgid "Manual Filament Change" +msgstr "Troca Manual de Filamento" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Ative esta opção para omitir o código G de troca de filamento personalizado " +"apenas no início da impressão. O comando de troca de ferramenta (por " +"exemplo, T0) será ignorado durante toda a impressão. Isso é útil para " +"impressão manual de vários materiais, onde usamos M600/PAUSE para acionar a " +"ação de troca manual de filamento." + +msgid "Purge in prime tower" +msgstr "Purgar na Torre Prime" + +msgid "Purge remaining filament into prime tower" +msgstr "Purgar o filamento restante na Torre Prime" + +msgid "Enable filament ramming" +msgstr "Ativar moldeamento de ponta de filamento" + +msgid "No sparse layers (beta)" +msgstr "Sem camadas esparsas (beta)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Se ativado, a Torre Prime não será impressa em camadas sem troca de " +"ferramenta. Em camadas com uma troca de ferramenta, a extrusora viajará para " +"baixo para imprimir a Torre Prime. O usuário é responsável por garantir que " +"não haja colisão com a impressão." + +msgid "Prime all printing extruders" +msgstr "Primer todos os extrusores de impressão" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Se ativado, todos os extrusores de impressão serão iniciados na borda " +"frontal da mesa de impressão no início da impressão." + +msgid "Slice gap closing radius" +msgstr "Tolerância do fatiamento" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Espaços menores que 2x a tolerância de fatiamentoo serão preenchidas durante " +"o fatiamento da malha. Aumentar a tolerância de fatiamento pode reduzir a " +"resolução final da impressão, portanto, é aconselhável manter o valor " +"razoavelmente baixo." + +msgid "Slicing Mode" +msgstr "Modo de Fatiamento" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Use \"Par-impar\" para modelos de avião 3DLabPrint. Use \"Fechar buracos\" " +"para fechar todos os buracos no modelo." + +msgid "Regular" +msgstr "Padrão" + +msgid "Even-odd" +msgstr "Par-impar" + +msgid "Close holes" +msgstr "Fechar buracos" + +msgid "Z offset" +msgstr "Deslocamento Z" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Este valor será adicionado (ou subtraído) de todas as coordenadas Z no G-" +"code de saída. É usado para compensar a má posição do fim de curso Z: por " +"exemplo, se o zero do seu fim de curso na verdade deixa o bico 0,3 mm longe " +"da mesa de impressão, ajuste isso para -0,3 (ou corrija o seu fim de curso)." + +msgid "Enable support" +msgstr "Ativar suporte" + +msgid "Enable support generation." +msgstr "Ativar a geração de suporte." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"normal(auto) e tree(auto) são usados para gerar suporte automaticamente. Se " +"normal(manual) ou tree(manual) for selecionado, apenas os suportes são " +"gerados" + +msgid "normal(auto)" +msgstr "normal(automático)" + +msgid "tree(auto)" +msgstr "árvore(automático)" + +msgid "normal(manual)" +msgstr "normal(manual)" + +msgid "tree(manual)" +msgstr "árvore(manual)" + +msgid "Support/object xy distance" +msgstr "Distância xy entre suporte e objeto" + +msgid "XY separation between an object and its support" +msgstr "Separação XY entre um objeto e seu suporte" + +msgid "Pattern angle" +msgstr "Ângulo de padrão" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Use esta configuração para girar o padrão de suporte no plano horizontal." + +msgid "On build plate only" +msgstr "Somente na mesa" + +msgid "Don't create support on model surface, only on build plate" +msgstr "Não criar suporte na superfície do modelo, apenas na mesa" + +msgid "Support critical regions only" +msgstr "Suportar apenas regiões críticas" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Crie suporte apenas para regiões críticas, incluindo cauda afiada, balanço, " +"etc." + +msgid "Remove small overhangs" +msgstr "Remover pequenos overhangs" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "Remova pequenos balanços que possivelmente não precisam de suporte." + +msgid "Top Z distance" +msgstr "Distância Z superior" + +msgid "The z gap between the top support interface and object" +msgstr "A diferença z entre a interface superior de suporte e o objeto" + +msgid "Bottom Z distance" +msgstr "Distância Z inferior" + +msgid "The z gap between the bottom support interface and object" +msgstr "A diferença z entre a interface inferior de suporte e o objeto" + +msgid "Support/raft base" +msgstr "Suporte/Jangada" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filamento para imprimir Jangada e Suporte. \"Padrão\" significa nenhum " +"filamento específico para Suporte e o filamento atual será usado" + +msgid "Avoid interface filament for base" +msgstr "Evitar o filamento da interface para a base" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Evite usar o filamento da interface de suporte para imprimir a base, se " +"possível." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Largura da linha de suporte. Se expresso como %, será calculado sobre o " +"diâmetro do bico." + +msgid "Interface use loop pattern" +msgstr "Interface usa padrão de loop" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Cubra a camada de contato superior dos suportes com loops. Desativado por " +"padrão." + +msgid "Support/raft interface" +msgstr "Interface de Suporte/Jangada" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filamento para imprimir a interface de suporte. \"Padrão\" significa nenhum " +"filamento específico para a interface de suporte e o filamento atual é usado" + +msgid "Top interface layers" +msgstr "Camadas de interface superior" + +msgid "Number of top interface layers" +msgstr "Número de camadas de interface superior" + +msgid "Bottom interface layers" +msgstr "Camadas de interface inferior" + +msgid "Number of bottom interface layers" +msgstr "Número de camadas de interface inferior" + +msgid "Same as top" +msgstr "Mesmo que superior" + +msgid "Top interface spacing" +msgstr "Espaçamento da interface superior" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "Espaçamento das linhas de interface. Zero significa interface sólida" + +msgid "Bottom interface spacing" +msgstr "Espaçamento da interface inferior" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Espaçamento das linhas de interface inferior. Zero significa interface sólida" + +msgid "Speed of support interface" +msgstr "Velocidade da interface de suporte" + +msgid "Base pattern" +msgstr "Padrão da base" + +msgid "Line pattern of support" +msgstr "Padrão de linha de suporte" + +msgid "Rectilinear grid" +msgstr "Grade reticulada" + +msgid "Hollow" +msgstr "Oco" + +msgid "Interface pattern" +msgstr "Padrão de interface" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Padrão de linha de interface de suporte. O padrão padrão para interface de " +"suporte não solúvel é reticulado, enquanto o padrão padrão para interface de " +"suporte solúvel é concêntrico" + +msgid "Rectilinear Interlaced" +msgstr "Reticulado Interligado" + +msgid "Base pattern spacing" +msgstr "Espaçamento do padrão de base" + +msgid "Spacing between support lines" +msgstr "Espaçamento entre as linhas de suporte" + +msgid "Normal Support expansion" +msgstr "Expansão normal de suporte" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "Expanda (+) ou contraia (-) a extensão horizontal do suporte normal" + +msgid "Speed of support" +msgstr "Velocidade do suporte" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"Estilo e forma do suporte. Para suporte normal, projetar os suportes em uma " +"grade regular criará suportes mais estáveis (padrão), enquanto torres de " +"suporte ajustadas economizarão material e reduzirão a cicatrização do " +"objeto.\n" +"Para suporte de árvore, estilo fino e orgânico mesclarão os galhos de forma " +"mais agressiva e economizarão muito material (orgânico padrão), enquanto o " +"estilo híbrido criará uma estrutura semelhante ao suporte normal em grandes " +"overhangs planas." + +msgid "Snug" +msgstr "Ajustado" + +msgid "Tree Slim" +msgstr "Árvore Estreita" + +msgid "Tree Strong" +msgstr "Árvore Forte" + +msgid "Tree Hybrid" +msgstr "Árvore Híbrida" + +msgid "Organic" +msgstr "Orgânico" + +msgid "Independent support layer height" +msgstr "Altura independente da camada de suporte" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"A camada de suporte usa uma altura de camada independente da camada do " +"objeto. Isso é para suportar a personalização do z-gap e economizar tempo de " +"impressão. Esta opção será inválida quando a Torre Prime estiver ativa." + +msgid "Threshold angle" +msgstr "Ângulo de limite" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"O suporte será gerado para overhangs cujo ângulo de inclinação estiver " +"abaixo do limite." + +msgid "Tree support branch angle" +msgstr "Ângulo da ramificação" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Esta configuração determina o ângulo máximo de inclinação que as " +"ramificações de suporte de árvore podem fazer. Se o ângulo for aumentado, as " +"ramificações podem ser impressas de forma mais horizontal, permitindo que " +"alcancem mais longe." + +msgid "Preferred Branch Angle" +msgstr "Ângulo preferido da ramificação" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"O ângulo preferido das ramificações, quando eles não precisam evitar o " +"modelo. Use um ângulo mais baixo para torná-los mais verticais e mais " +"estáveis. Use um ângulo mais alto para que as ramificações se fundam mais " +"rápido." + +msgid "Tree support branch distance" +msgstr "Distância entre ramificações" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"Essa configuração determina a distância entre os nós de suporte de árvore " +"vizinhos." + +msgid "Branch Density" +msgstr "Densidade da ramificação" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"Ajusta a densidade da estrutura de suporte usada para gerar as pontas das " +"ramificações. Um valor mais alto resulta em overhangs melhores, mas os " +"suportes são mais difíceis de remover, portanto, é recomendável ativar as " +"interfaces superiores de suporte em vez de um valor de densidade de ramo " +"alto se forem necessárias interfaces densas." + +msgid "Adaptive layer height" +msgstr "Altura de camada adaptativa" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"Ao ativar essa opção, a altura da camada de suporte de árvore, exceto a " +"primeira, será calculada automaticamente " + +msgid "Auto brim width" +msgstr "Largura de borda automática" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"Ao ativar essa opção, a largura da borda para suporte de árvore será " +"calculada automaticamente" + +msgid "Tree support brim width" +msgstr "Largura da borda de suporte de árvore" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "Distância do ramo da árvore até a linha de borda mais externa" + +msgid "Tip Diameter" +msgstr "Diâmetro da ponta" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Diâmetro da ponta do ramo para suportes orgânicos." + +msgid "Tree support branch diameter" +msgstr "Diâmetro do ramo de suporte de árvore" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Essa configuração determina o diâmetro inicial dos nós de suporte." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Ângulo do diâmetro da ramificação" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"O ângulo das ramificações à medida que elas gradualmente se tornam mais " +"espessos em direção à base. Um ângulo de 0 fará com que as ramificações " +"tenham espessura uniforme ao longo de seu comprimento. Um pequeno ângulo " +"pode aumentar a estabilidade do suporte orgânico." + +msgid "Branch Diameter with double walls" +msgstr "Diâmetro da ramificação com perí. duplo" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"Ramificações com área maior do que a área de um círculo com este diâmetro " +"serão impressas com paredes duplas para estabilidade. Defina este valor como " +"zero para não ter paredes duplas." + +msgid "Support wall loops" +msgstr "Perímetros de suporte" + +msgid "This setting specify the count of walls around support" +msgstr "Esta configuração especifica a contagem de paredes ao redor do suporte" + +msgid "Tree support with infill" +msgstr "Suporte de árvore com preenchimento" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Essa configuração especifica se deve adicionar preenchimento dentro de " +"grandes cavidades do suporte de árvore" + +msgid "Activate temperature control" +msgstr "Ativar controle de temperatura" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Ative esta opção para controle de temperatura da câmara. Um comando M191 " +"será adicionado antes de \"machine_start_gcode\"\n" +"Comandos G-code: M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "Temperatura da câmara" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Uma temperatura mais alta na câmara pode ajudar a suprimir ou reduzir o " +"empenamento e potencialmente levar a uma maior resistência de ligação entre " +"camadas para materiais de alta temperatura como ABS, ASA, PC, PA e assim por " +"diante. Ao mesmo tempo, a filtragem de ar de ABS e ASA ficará pior. Para " +"PLA, PETG, TPU, PVA e outros materiais de baixa temperatura, a temperatura " +"real da câmara não deve ser alta para evitar obstruções, portanto, é " +"altamente recomendável usar 0, que significa desligado" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Temperatura do bico para camadas após a inicial" + +msgid "Detect thin wall" +msgstr "Detectar perímetro fino" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Detecta paredes finas que não podem conter duas larguras de linha. E usa uma " +"linha única para imprimir. Talvez seja impresso não muito bem, porque não é " +"um loop fechado" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Este gcode é inserido ao trocar o filamento, incluindo o comando T para " +"acionar a troca de ferramenta" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "Esse gcode é inserido quando o tipo de extrusão muda" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Largura da linha para superfícies superiores. Se expressa em %, será " +"calculada sobre o diâmetro do bico." + +msgid "Speed of top surface infill which is solid" +msgstr "Velocidade de preenchimento da superfície superior, que é sólida" + +msgid "Top shell layers" +msgstr "Camadas de topo" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Este é o número de camadas sólidas do perímetro superior, incluindo a camada " +"da superfície superior. Quando a espessura calculada por este valor for " +"menor do que a espessura do perímetro superior, as camadas do perímetro " +"superior serão aumentadas" + +msgid "Top solid layers" +msgstr "Camadas sólidas superiores" + +msgid "Top shell thickness" +msgstr "Espessura da parede de topo" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"O número de camadas sólidas superiores é aumentado ao fatiar se a espessura " +"calculada pelas camadas da parede superior for menor do que este valor. Isso " +"pode evitar que a parede seja muito fina quando a altura da camada é " +"pequena. 0 significa que esta configuração está desativada e a espessura da " +"parede superior é determinada exclusivamente pelas camadas da parede superior" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Velocidade de deslocamento mais rápida e sem extrusão" + +msgid "Wipe while retracting" +msgstr "Limpar enquanto retrai" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Movimentar o bico ao longo do último caminho de extrusão ao retrair para " +"limpar o material vazado no bico. Isso pode minimizar a formação de blob " +"quando imprimir uma nova peça após o deslocamento" + +msgid "Wipe Distance" +msgstr "Distância de limpeza" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"Descreva por quanto tempo o bico se moverá ao longo do último caminho ao " +"retrair. \n" +"\n" +"Dependendo de quanto tempo dura a operação de limpeza, quão rápidas e longas " +"são as configurações de retração do extrusor/filamento, pode ser necessário " +"um movimento de retração para recolher o filamento restante. \n" +"\n" +"Definir um valor na configuração de quantidade de retração antes da limpeza " +"abaixo executará qualquer retração em excesso antes da limpeza, caso " +"contrário, será realizada após." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"A Torre Prime pode ser usada para limpar o resíduo no bico e estabilizar a " +"pressão na câmara dentro do bico, a fim de evitar defeitos de aparência ao " +"imprimir objetos." + +msgid "Purging volumes" +msgstr "Volumes de purga" + +msgid "Flush multiplier" +msgstr "Multiplicador de purga" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"Os volumes de purga reais são iguais ao multiplicador de purga multiplicado " +"pelos volumes de purga na tabela." + +msgid "Prime volume" +msgstr "Volume de material" + +msgid "The volume of material to prime extruder on tower." +msgstr "O volume de material para preparar a extrusora na torre." + +msgid "Width of prime tower" +msgstr "Largura da Torre Prime" + +msgid "Wipe tower rotation angle" +msgstr "Ângulo de rotação da Torre Prime" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Ângulo de rotação da Torre Prime em relação ao eixo x." + +msgid "Stabilization cone apex angle" +msgstr "Ângulo do ápice do cone de estabilização" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Ângulo no ápice do cone usado para estabilizar a Torre Prime. Um ângulo " +"maior significa uma base mais larga." + +msgid "Wipe tower purge lines spacing" +msgstr "Espaçamento das linhas de purga da Torre Prime" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Espaçamento das linhas de purga na Torre Prime." + +msgid "Maximum wipe tower print speed" +msgstr "Velocidade máxima de impressão da Torre Prime" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"A velocidade máxima de impressão ao purgar na Torre Prime e ao imprimir as " +"camadas esparsas da Torre Prime. Ao purgar, se a velocidade do preenchimento " +"ou a velocidade calculada a partir da velocidade volumétrica máxima do " +"filamento for menor, a menor será utilizada.\n" +"\n" +"Ao imprimir as camadas esparsas, se a velocidade do perímetro interno ou a " +"velocidade calculada a partir da velocidade volumétrica máxima do filamento " +"for menor, a menor será utilizada.\n" +"\n" +"Aumentar essa velocidade pode afetar a estabilidade da torre, bem como " +"aumentar a força com que o bico colide com quaisquer bolhas que possam ter " +"se formado na Torre Prime.\n" +"\n" +"Antes de aumentar esse parâmetro além do padrão de 90mm/s, certifique-se de " +"que sua impressora pode realizar pontes de forma confiável nas velocidades " +"aumentadas e que a extrusão ao trocar a ferramenta está bem controlada.\n" +"\n" +"Para os perímetros externos da Torre Prime, a velocidade do perímetro " +"interno é utilizada independentemente dessa configuração." + +msgid "Wipe tower extruder" +msgstr "Extrusora da Torre Prime" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"Extrusor a ser usada ao imprimir o perímetro da Torre Prime. Defina como 0 " +"para usar a disponível (não solúvel é preferido)." + +msgid "Purging volumes - load/unload volumes" +msgstr "Volumes de purga - volumes de carga/descarga" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"Este vetor salva os volumes necessários para mudar de/para cada ferramenta " +"usada na Torre Prime. Esses valores são usados para simplificar a criação " +"dos volumes de purga completos abaixo." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"A purga após a troca de filamento será feita dentro do preenchimento dos " +"objetos. Isso pode reduzir a quantidade de resíduos e diminuir o tempo de " +"impressão. Se as paredes forem impressas com filamento transparente, o " +"preenchimento de cor mista será visível do lado de fora. Isso não terá " +"efeito, a menos que a Torre Prime esteja ativa." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"A purga após a troca de filamento será feita dentro do suporte dos objetos. " +"Isso pode reduzir a quantidade de resíduos e diminuir o tempo de impressão. " +"Isso não terá efeito, a menos que a Torre Prime esteja ativa." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Este objeto será usado para purgar o bico após uma troca de filamento para " +"economizar filamento e diminuir o tempo de impressão. As cores dos objetos " +"serão misturadas como resultado. Isso não terá efeito, a menos que a Torre " +"Prime esteja ativa." + +msgid "Maximal bridging distance" +msgstr "Distância máxima de ponte" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "Distância máxima entre suportes em seções de preenchimento não sólido." + +msgid "X-Y hole compensation" +msgstr "Compensação XY de furos" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Os furos do objeto serão aumentados ou reduzidos no plano XY pelo valor " +"configurado. Valor positivo aumenta os furos. Valor negativo reduz os furos. " +"Essa função é usada para ajustar ligeiramente o tamanho quando o objeto tem " +"problema de montagem" + +msgid "X-Y contour compensation" +msgstr "Compensação XY de contornos" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"O contorno do objeto será expandido ou reduzido no plano XY pelo valor " +"configurado. Valor positivo aumenta o contorno. Valor negativo diminui o " +"contorno. Essa função é usada para ajustar ligeiramente o tamanho quando o " +"objeto tem problemas de montagem" + +msgid "Convert holes to polyholes" +msgstr "Converter furos em polifuros" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Procura por furos quase circulares que abrangem mais de uma camada e " +"converta a geometria em polifuros. Usa o tamanho do bico e o diâmetro " +"(maior) para calcular o polifuro.\n" +"Consulte http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "Margem de detecção de polifuros" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Máxima deflexão de um ponto para o raio estimado do círculo.\n" +"Como os cilindros frequentemente são exportados como triângulos de tamanho " +"variável, os pontos podem não estar na circunferência do círculo. Esta " +"configuração permite-lhe alguma margem para alargar a detecção.\n" +"Em milímetros ou em % do raio." + +msgid "Polyhole twist" +msgstr "Torção de polifuros" + +msgid "Rotate the polyhole every layer." +msgstr "Girar o polifuro a cada camada." + +msgid "G-code thumbnails" +msgstr "Miniaturas de G-code" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Tamanhos das imagens a serem armazenados em arquivos .gcode e .sl1 / .sl1s, " +"no seguinte formato: \"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "Formato das miniaturas de G-code" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Formato das miniaturas de G-code: PNG para melhor qualidade, JPG para menor " +"tamanho, QOI para firmware de baixa memória" + +msgid "Use relative E distances" +msgstr "Usar distâncias E relativas" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"A extrusão relativa é recomendada ao usar a opção \"label_objects\". Algumas " +"extrusoras funcionam melhor com esta opção desmarcada (modo de extrusão " +"absoluta). A Torre Prime é compatível apenas com o modo relativo. É " +"recomendado na maioria das impressoras. O padrão é ativado" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"O gerador de perímetro clássico produz paredes com largura de extrusão " +"constante e para áreas muito finas é usado preenchimento de vão. O motor " +"Arachne produz perímetros com largura de extrusão variável" + +msgid "Classic" +msgstr "Clássico" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Comprimento da transição de perímetro" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Ao fazer a transição entre diferentes números de paredes à medida que a peça " +"fica mais fina, uma certa quantidade de espaço é designada para dividir ou " +"unir os segmentos do perímetro. É expresso como uma porcentagem sobre o " +"diâmetro do bico" + +msgid "Wall transitioning filter margin" +msgstr "Margem de filtro de transição de perímetro" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Evita a transição de ida e volta entre um perímetro extra e um a menos. Esta " +"margem amplia o intervalo de larguras de extrusão que seguem para [Largura " +"mínima da perímetro - margem, 2 * Largura mínima da perímetro + margem]. " +"Aumentar esta margem reduz o número de transições, o que reduz o número de " +"inícios / paradas de extrusão e o tempo de deslocamento. No entanto, uma " +"grande variação na largura de extrusão pode levar a problemas de subextrusão " +"ou superextrusão. É expresso como uma porcentagem sobre o diâmetro do bico" + +msgid "Wall transitioning threshold angle" +msgstr "Ângulo de limite de transição de perímetro" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Quando criar transições entre números pares e ímpares de paredes. Uma forma " +"de cunha com um ângulo maior do que esta configuração não terá transições e " +"nenhumo perímetro será impresso no centro para preencher o espaço restante. " +"Reduzir esta configuração reduz o número e o comprimento dessas paredes " +"centrais, mas pode deixar vazios ou extrusão excessiva" + +msgid "Wall distribution count" +msgstr "Contagem de distribuição de perímetro" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"O número de paredes, contadas a partir do centro, sobre as quais a variação " +"precisa ser espalhada. Valores menores significam que as paredes externas " +"não mudam de largura" + +msgid "Minimum feature size" +msgstr "Tamanho mínimo do elemento" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Espessura mínima de elementos finos. Elementos do modelo que são mais finos " +"do que este valor não serão impressos, enquanto elementos mais espessos que " +"o tamanho mínimo do elemento serão alargados até a largura mínima do " +"perímetro. É expresso como uma porcentagem sobre o diâmetro do bico" + +msgid "Minimum wall length" +msgstr "Comprimento mínimo do perímetro" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"Ajuste este valor para evitar que perímetros curtos e não fechados sejam " +"impressos, o que poderia aumentar o tempo de impressão. Valores mais altos " +"removem perímetros mais longos.\n" +"\n" +"NOTA: As superfícies inferior e superior não serão afetadas por este valor " +"para evitar lacunas visuais no exterior do modelo. Ajuste o 'Limiar de um " +"perímetro' nas configurações avançadas abaixo para ajustar a sensibilidade " +"do que é considerado uma superfície superior. 'Limiar de um perímetro' só é " +"visível se esta configuração estiver acima do valor padrão de 0,5, ou se " +"superfícies superiores de uma única parede estiverem habilitadas." + +msgid "First layer minimum wall width" +msgstr "Largura mínima do perímetro da primeira camada" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"A largura mínima do perímetro que deve ser usada para a primeira camada é " +"recomendada para ser definida com o mesmo tamanho do bico. Este ajuste é " +"esperado para melhorar a aderência." + +msgid "Minimum wall width" +msgstr "Largura mínima do perímetro" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Largura do perímetro que substituirá elementos finos (de acordo com o " +"tamanho mínimo do elemento) do modelo. Se a Largura mínima do perímetro for " +"mais fina do que a espessura do elemento, o perímetro será tão espesso " +"quanto o próprio elemento. É expresso como uma porcentagem sobre o diâmetro " +"do bico" + +msgid "Detect narrow internal solid infill" +msgstr "Detectar preenchimento sólido interno estreito" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Esta opção irá detectar automaticamente áreas de preenchimento sólido " +"interno estreito. Se ativada, o padrão concêntrico será usado para a área " +"para acelerar a impressão. Caso contrário, o padrão reticulado é usado por " +"padrão." + +msgid "invalid value " +msgstr "valor inválido " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Valor inválido quando o modo de vaso espiral está ativado: " + +msgid "too large line width " +msgstr "largura de linha muito grande " + +msgid " not in range " +msgstr " fora do intervalo " + +msgid "Minimum save" +msgstr "Salvar mínimo" + +msgid "export 3mf with minimum size." +msgstr "exportar 3mf com tamanho mínimo." + +msgid "No check" +msgstr "Sem verificação" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"Não execute nenhuma verificação de validade, como a verificação de conflitos " +"de caminho do gcode." + +msgid "Ensure on bed" +msgstr "Garantir na mesa" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Eleve o objeto acima da mesa quando estiver parcialmente abaixo. Desativado " +"por padrão" + +msgid "Orient Options" +msgstr "Opções de Orientação" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "Opções de orientação: 0-desativar, 1-habilitar, outros-auto" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Ângulo de rotação ao redor do eixo Z em graus." + +msgid "Rotate around Y" +msgstr "Girar ao redor de Y" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Ângulo de rotação ao redor do eixo Y em graus." + +msgid "Data directory" +msgstr "Diretório de dados" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Carregar e armazenar configurações no diretório fornecido. Isso é útil para " +"manter diferentes perfis ou incluir configurações de um armazenamento em " +"rede." + +msgid "Load custom gcode" +msgstr "Carregar gcode personalizado" + +msgid "Load custom gcode from json" +msgstr "Carregar gcode personalizado do json" + +msgid "Current z-hop" +msgstr "Z-hop atual" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "Contém o z-hop presente no início do bloco de G-code personalizado." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Posição do extrusor no início do bloco de G-code personalizado. Se o G-code " +"personalizado se deslocar para outro lugar, ele deve escrever nesta variável " +"para que o PrusaSlicer saiba de onde se desloca quando recupera o controle." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"Estado de retração no início do bloco de G-code personalizado. Se o G-code " +"personalizado mover o eixo do extrusor, ele deve escrever nesta variável " +"para que o PrusaSlicer desretraia corretamente quando recupera o controle." + +msgid "Extra deretraction" +msgstr "Desretração extra" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "Priming de extrusora extra planejado atualmente após a desretração." + +msgid "Current extruder" +msgstr "Extrusora atual" + +msgid "Zero-based index of currently used extruder." +msgstr "Índice base zero da extrusora atualmente utilizada." + +msgid "Current object index" +msgstr "Índice do objeto atual" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Específico para impressão sequencial. Índice base zero do objeto atualmente " +"impresso." + +msgid "Has wipe tower" +msgstr "Tem Torre Prime" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Se a Torre Prime está sendo gerada ou não na impressão." + +msgid "Initial extruder" +msgstr "Extrusora inicial" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Índice base zero da primeira extrusora utilizada na impressão. Mesmo que " +"ferramenta_inicial." + +msgid "Initial tool" +msgstr "Ferramenta inicial" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Índice base zero da primeira extrusora utilizada na impressão. Mesmo que " +"extrusora_inicial." + +msgid "Is extruder used?" +msgstr "Extrusora utilizada?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" +"Vetor de booleanos indicando se uma dada extrusora é utilizada na impressão." + +msgid "Volume per extruder" +msgstr "Volume por extrusora" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" +"Volume total de filamento extrudado por extrusora durante toda a impressão." + +msgid "Total toolchanges" +msgstr "Total de trocas de ferramenta" + +msgid "Number of toolchanges during the print." +msgstr "Número de trocas de ferramenta durante a impressão." + +msgid "Total volume" +msgstr "Volume total" + +msgid "Total volume of filament used during the entire print." +msgstr "Volume total de filamento usado durante toda a impressão." + +msgid "Weight per extruder" +msgstr "Peso por extrusora" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" +"Peso por extrusora extrudido durante toda a impressão. Calculado a partir do " +"valor de densidade do filamento nas configurações de filamento." + +msgid "Total weight" +msgstr "Peso total" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" +"Peso total da impressão. Calculado a partir do valor de densidade do " +"filamento nas configurações de filamento." + +msgid "Total layer count" +msgstr "Total de camadas" + +msgid "Number of layers in the entire print." +msgstr "Número de camadas em toda a impressão." + +msgid "Number of objects" +msgstr "Número de objetos" + +msgid "Total number of objects in the print." +msgstr "Número total de objetos na impressão." + +msgid "Number of instances" +msgstr "Número de instâncias" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" +"Número total de instâncias de objeto na impressão, somadas sobre todos os " +"objetos." + +msgid "Scale per object" +msgstr "Escala por objeto" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"Contém uma frase com informações sobre qual escala foi aplicada aos objetos " +"individuais. A indexação dos objetos é baseada em zero (o primeiro objeto " +"tem índice 0).\n" +"Exemplo: 'x:100% y:50% z:100'." + +msgid "Input filename without extension" +msgstr "Nome do arquivo de entrada sem extensão" + +msgid "Source filename of the first object, without extension." +msgstr "Nome do arquivo de origem do primeiro objeto, sem extensão." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" +"O vetor possui dois elementos: coordenada x e y do ponto. Valores em mm." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" +"O vetor tem dois elementos: dimensão x e y da caixa delimitadora. Valores em " +"mm." + +msgid "First layer convex hull" +msgstr "Parede convexa da primeira camada" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"Vetor de pontos do perímetro convexo da primeira camada. Cada elemento tem o " +"seguinte formato: '[x, y]' (x e y são números em ponto flutuante em mm)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "Canto inferior esquerdo da caixa delimitadora da primeira camada" + +msgid "Top-right corner of first layer bounding box" +msgstr "Canto superior direito da caixa delimitadora da primeira camada" + +msgid "Size of the first layer bounding box" +msgstr "Tamanho da caixa delimitadora da primeira camada" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "Canto inferior esquerdo da caixa delimitadora da mesa de impressão" + +msgid "Top-right corner of print bed bounding box" +msgstr "Canto superior direito da caixa delimitadora da mesa de impressão" + +msgid "Size of the print bed bounding box" +msgstr "Tamanho da caixa delimitadora da mesa de impressão" + +msgid "Timestamp" +msgstr "Data/hora" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "String contendo a hora atual no formato yyyyMMdd-hhmmss." + +msgid "Day" +msgstr "Dia" + +msgid "Hour" +msgstr "Hora" + +msgid "Minute" +msgstr "Minuto" + +msgid "Print preset name" +msgstr "Nome do perfil de impressão" + +msgid "Name of the print preset used for slicing." +msgstr "Nome do perfil de impressão usado para fatiar." + +msgid "Filament preset name" +msgstr "Nome do perfil de filamento" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Nomes dos perfis de filamento usados para fatiar. A variável é um vetor " +"contendo um nome para cada extrusora." + +msgid "Printer preset name" +msgstr "Nome do perfil de impressora" + +msgid "Name of the printer preset used for slicing." +msgstr "Nome do perfil de impressora usado para fatiar." + +msgid "Physical printer name" +msgstr "Nome da impressora física" + +msgid "Name of the physical printer used for slicing." +msgstr "Nome da impressora física utilizada para fatiar." + +msgid "Layer number" +msgstr "Número da camada" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" +"Índice da camada atual. Baseado em um (ou seja, a primeira camada é o número " +"1)." + +msgid "Layer z" +msgstr "Camada z" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Altura da camada atual acima da mesa de impressão, medida até o topo da " +"camada." + +msgid "Maximal layer z" +msgstr "Altura máxima da camada z" + +msgid "Height of the last layer above the print bed." +msgstr "Altura da última camada acima da mesa de impressão." + +msgid "Filament extruder ID" +msgstr "ID do extrusor de filamento" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "O ID do extrusor atual. O mesmo que extrusora_atual." + +msgid "Error in zip archive" +msgstr "Erro no arquivo zip" + +msgid "Generating walls" +msgstr "Gerando perímetros" + +msgid "Generating infill regions" +msgstr "Gerando regiões de preenchimento" + +msgid "Generating infill toolpath" +msgstr "Gerando caminho da ferramenta de preenchimento" + +msgid "Detect overhangs for auto-lift" +msgstr "Detectar overhangs para levantamento automático" + +msgid "Generating support" +msgstr "Gerando suporte" + +msgid "Checking support necessity" +msgstr "Verificando necessidade de suporte" + +msgid "floating regions" +msgstr "regiões flutuantes" + +msgid "floating cantilever" +msgstr "balanço flutuante" + +msgid "large overhangs" +msgstr "overhangs grandes" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Parece que o objeto %s tem %s. Por favor, reoriente o objeto ou habilite a " +"geração de suporte." + +msgid "Optimizing toolpath" +msgstr "Otimizando caminho da ferramenta" + +msgid "Slicing mesh" +msgstr "Fatiando malha" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"Nenhuma camada foi detectada. Você pode querer reparar seu(s) arquivo(s) STL " +"ou verificar seu tamanho ou espessura e tentar novamente.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"A compensação de tamanho XY de um objeto não será usada porque ele também " +"está pintado com cor.\n" +"A compensação de tamanho XY não pode ser combinada com pintura colorida." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Suporte: gerar caminho da ferramenta na camada %d" + +msgid "Support: detect overhangs" +msgstr "Suporte: detectar overhangs" + +msgid "Support: generate contact points" +msgstr "Suporte: gerar pontos de contato" + +msgid "Support: propagate branches" +msgstr "Suporte: propagar ramificações" + +msgid "Support: draw polygons" +msgstr "Suporte: desenhar polígonos" + +msgid "Support: generate toolpath" +msgstr "Suporte: gerar caminho da ferramenta" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Suporte: gerar polígonos na camada %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Suporte: corrigir buracos na camada %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Suporte: propagar ramificações na camada %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Formato de arquivo desconhecido. O arquivo de entrada deve ter extensão ." +"stl, .obj, .amf(.xml)." + +msgid "Loading of a model file failed." +msgstr "Falha ao carregar um arquivo de modelo." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "O arquivo fornecido não pôde ser lido porque está vazio" + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Formato de arquivo desconhecido. O arquivo de entrada deve ter extensão .3mf " +"ou .zip.amf." + +msgid "Canceled" +msgstr "Cancelado" + +msgid "load_obj: failed to parse" +msgstr "load_obj: falha ao analisar" + +msgid "load mtl in obj: failed to parse" +msgstr "carregar mtl em obj: falha ao analisar" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "O arquivo contém polígonos com mais de 4 vértices." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "O arquivo contém polígonos com menos de 2 vértices." + +msgid "The file contains invalid vertex index." +msgstr "O arquivo contém um índice de vértice inválido." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Este arquivo OBJ não pôde ser lido porque está vazio." + +msgid "Flow Rate Calibration" +msgstr "Calibração de fluxo" + +msgid "Max Volumetric Speed Calibration" +msgstr "Calibração de fluxo volumétrico máximo" + +msgid "Manage Result" +msgstr "Gerenciar Resultado" + +msgid "Manual Calibration" +msgstr "Calibração Manual" + +msgid "Result can be read by human eyes." +msgstr "O resultado pode ser lido por olhos humanos." + +msgid "Auto-Calibration" +msgstr "Auto-Calibração" + +msgid "We would use Lidar to read the calibration result" +msgstr "Usaríamos o Lidar para ler o resultado da calibração" + +msgid "Prev" +msgstr "Anterior" + +msgid "Recalibration" +msgstr "Recalibração" + +msgid "Calibrate" +msgstr "Calibrar" + +msgid "Finish" +msgstr "Terminar" + +msgid "How to use calibration result?" +msgstr "Como usar o resultado da calibração?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"Você pode alterar o Fator de Calibração de Dinâmica de Fluxo na edição de " +"materiais" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"A versão atual do firmware da impressora não suporta calibração.\n" +"Por favor, atualize o firmware da impressora." + +msgid "Calibration not supported" +msgstr "Calibração não suportada" + +msgid "Error desc" +msgstr "Descrição do erro" + +msgid "Extra info" +msgstr "Informação extra" + +msgid "Flow Dynamics" +msgstr "Dinâmica de Fluxo" + +msgid "Flow Rate" +msgstr "Fluxo" + +msgid "Max Volumetric Speed" +msgstr "Velocidade Volumétrica Máxima" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Por favor, insira valores válidos:\n" +"Valor de início: >= %.1f\n" +"Valor de término: <= %.1f\n" +"Valor de término: > Valor de início\n" +"Passo de valor: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "O nome não pode estar vazio." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "O preset selecionado: %s não foi encontrado." + +msgid "The name cannot be the same as the system preset name." +msgstr "O nome não pode ser o mesmo que o nome do preset do sistema." + +msgid "The name is the same as another existing preset name" +msgstr "O nome é o mesmo que outro nome de preset existente" + +msgid "create new preset failed." +msgstr "falha ao criar novo preset." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Tem certeza de que deseja cancelar a calibração atual e retornar à página " +"inicial?" + +msgid "No Printer Connected!" +msgstr "Nenhuma impressora conectada!" + +msgid "Printer is not connected yet." +msgstr "A impressora ainda não está conectada." + +msgid "Please select filament to calibrate." +msgstr "Por favor, selecione o filamento para calibrar." + +msgid "The input value size must be 3." +msgstr "O tamanho do valor de entrada deve ser 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"Esse tipo de máquina só pode manter 16 resultados por bico no histórico. " +"Você pode deletar resultados existentes e então começar a calibração. Ou " +"você pode continuar, mas não poderá criar novos resultados. \n" +"Você ainda quer continuar com a calibração?" + +msgid "Connecting to printer..." +msgstr "Conectando à impressora..." + +msgid "The failed test result has been dropped." +msgstr "O resultado do teste falhado foi descartado." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "O resultado da Calibração de Dinâmica de Fluxo foi salvo na impressora" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"Já existe um resultado de calibração histórico com o mesmo nome: %s. Apenas " +"um dos resultados com o mesmo nome é salvo. Tem certeza que deseja " +"sobrescrever o resultado histórico?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"Este tipo de máquina só pode salvar %d resultados por bico. Este resultado " +"não será salvo." + +msgid "Internal Error" +msgstr "Erro Interno" + +msgid "Please select at least one filament for calibration" +msgstr "Por favor, selecione pelo menos um filamento para calibrar" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "O resultado da calibração de fluxo foi salvo no preset" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"O resultado da calibração de fluxo volumétrico máximo foi salvo no preset" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Quando você precisa da Calibração de Dinâmica de Fluxo" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Adicionamos agora a auto-calibração para diferentes filamentos, que é " +"totalmente automatizada e o resultado será salvo na impressora para uso " +"futuro. Você só precisa fazer a calibração nos seguintes casos limitados:\n" +"1. Se você introduzir um novo filamento de marcas/modelos diferentes ou se o " +"filamento estiver úmido;\n" +"2. se o bico estiver desgastado ou substituído por um novo;\n" +"3. Se o fluxo volumétrico máximo ou a temperatura de impressão forem " +"alteradas na configuração do filamento." + +msgid "About this calibration" +msgstr "Sobre esta calibração" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "Quando usar a Calibração de Fluxo" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"Depois de usar a Calibração de Dinâmica de Fluxo, ainda pode haver alguns " +"problemas de extrusão, como:\n" +"1. Superextrusão: excesso de material no objeto impresso, formando grumos ou " +"espinhas, ou as camadas parecem mais espessas do que o esperado e não " +"uniformes.\n" +"2. Subextrusão: camadas muito finas, resistência fraca do preenchimento ou " +"vazios na camada superior do modelo, mesmo ao imprimir lentamente.\n" +"3. Baixa Qualidade de Superfície: a superfície de suas impressões parece " +"áspera ou irregular.\n" +"4. Integridade Estrutural Fraca: as impressões quebram facilmente ou não " +"parecem tão robustas quanto deveriam." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Além disso, a Calibração de Fluxo é crucial para materiais espumantes como " +"LW-PLA usados em aviões RC. Esses materiais se expandem muito quando " +"aquecidos, e a calibração fornece uma taxa de fluxo de referência útil." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"A Calibração de Fluxo mede a relação entre os volumes de extrusão esperados " +"e reais. A configuração padrão funciona bem em impressoras Bambu Lab e " +"filamentos oficiais, pois foram pré-calibrados e ajustados. Para um " +"filamento regular, geralmente você não precisará realizar uma Calibração da " +"Taxa de Fluxo a menos que ainda veja os defeitos listados após ter feito " +"outras calibrações. Para mais detalhes, consulte o artigo na wiki." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"A Calibração Automática de Fluxo utiliza a tecnologia Micro-Lidar da Bambu " +"Lab, medindo diretamente os padrões de calibração. No entanto, esteja ciente " +"de que a eficácia e precisão deste método podem ser comprometidas com tipos " +"específicos de materiais. Especialmente, filamentos que são transparentes ou " +"semi-transparentes, com partículas brilhantes ou com acabamento altamente " +"reflexivo podem não ser adequados para esta calibração e podem produzir " +"resultados abaixo do desejado.\n" +"\n" +"Os resultados da calibração podem variar entre cada calibração ou filamento. " +"Ainda estamos melhorando a precisão e compatibilidade desta calibração por " +"meio de atualizações de firmware ao longo do tempo.\n" +"\n" +"Atenção: A Calibração da Taxa de Fluxo é um processo avançado, para ser " +"tentado apenas por aqueles que entendem completamente seu propósito e " +"implicações. O uso incorreto pode resultar em impressões de baixa qualidade " +"ou danos à impressora. Certifique-se de ler e entender cuidadosamente o " +"processo antes de fazê-lo." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Quando você precisa da Calibração de Velocidade Volumétrica Máxima" + +msgid "Over-extrusion or under extrusion" +msgstr "Sobre-extrusão ou sub-extrusão" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"A calibração de Velocidade Volumétrica Máxima é recomendada quando você " +"imprime com:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "material com significativa contração/expansão térmica, como..." + +msgid "materials with inaccurate filament diameter" +msgstr "materiais com diâmetro de filamento impreciso" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "Encontramos o melhor Fator de Calibração de Dinâmica de Fluxo" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Parte da calibração falhou! Você pode limpar a mesa e tentar novamente. O " +"resultado do teste falho será descartado." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Recomendamos que você adicione marca, material, tipo e até mesmo nível de " +"umidade no nome" + +msgid "Failed" +msgstr "Falhou" + +msgid "Please enter the name you want to save to printer." +msgstr "Por favor, insira o nome que você deseja salvar na impressora." + +msgid "The name cannot exceed 40 characters." +msgstr "O nome não pode ter mais de 40 caracteres." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" + +msgid "Please find the best line on your plate" +msgstr "Por favor, encontre a melhor linha em sua mesa" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "" + +msgid "Input Value" +msgstr "Valor de entrada" + +msgid "Save to Filament Preset" +msgstr "Salvar no Preset de Filamento" + +msgid "Preset" +msgstr "Preset" + +msgid "Record Factor" +msgstr "Registrar Fator" + +msgid "We found the best flow ratio for you" +msgstr "Encontramos o melhor fluxo para você" + +msgid "Flow Ratio" +msgstr "Fluxo" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Por favor, insira um valor válido (0.0 < fluxo < 2.0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Por favor, insira o nome do preset que você deseja salvar." + +msgid "Calibration1" +msgstr "Calibração1" + +msgid "Calibration2" +msgstr "Calibração2" + +msgid "Please find the best object on your plate" +msgstr "Por favor, encontre o melhor objeto em sua mesa" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Preencha o valor acima do bloco com a superfície superior mais lisa" + +msgid "Skip Calibration2" +msgstr "Pular Calibração2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "fluxo: %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Por favor, escolha um bloco com a superfície superior mais lisa" + +msgid "Please choose a block with smoothest top surface." +msgstr "Por favor, escolha um bloco com a superfície superior mais lisa." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "" +"Por favor, insira um valor válido (0 <= Velocidade Volumétrica Máxima <= 60)" + +msgid "Calibration Type" +msgstr "Tipo de Calibração" + +msgid "Complete Calibration" +msgstr "Calibração Completa" + +msgid "Fine Calibration based on flow ratio" +msgstr "Calibração Fina baseada no fluxo" + +msgid "Title" +msgstr "Título" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Um modelo de teste será impresso. Por favor, limpe a mesa e a coloque de " +"volta na mesa aquecida antes da calibração." + +msgid "Printing Parameters" +msgstr "Parâmetros de Impressão" + +msgid "Plate Type" +msgstr "Tipo de mesa" + +msgid "filament position" +msgstr "posição do filamento" + +msgid "External Spool" +msgstr "Carretel Externo" + +msgid "Filament For Calibration" +msgstr "Filamento Para Calibração" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Dicas para material de calibração:\n" +"- Materiais que podem compartilhar a mesma temperatura de mesa aquecida\n" +"- Diferentes marcas e famílias de filamentos (Marca = Bambu, Família = " +"Básico, Fosco)" + +msgid "Pattern" +msgstr "Padrão" + +msgid "Method" +msgstr "Método" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s não é compatível com %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "TPU não é suportado para Auto-Calibração de Dinâmica de Fluxo." + +msgid "Connecting to printer" +msgstr "Conectando à impressora" + +msgid "From k Value" +msgstr "Do Valor k" + +msgid "To k Value" +msgstr "Para o Valor k" + +msgid "Step value" +msgstr "Valor do Passo" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "O diâmetro do bico foi sincronizado das configurações da impressora" + +msgid "From Volumetric Speed" +msgstr "Da Velocidade Volumétrica" + +msgid "To Volumetric Speed" +msgstr "Para a Velocidade Volumétrica" + +msgid "Flow Dynamics Calibration Result" +msgstr "Resultado da Calibração de Dinâmica de Fluxo" + +msgid "New" +msgstr "Novo" + +msgid "No History Result" +msgstr "Nenhum Resultado Anterior" + +msgid "Success to get history result" +msgstr "Sucesso ao obter o resultado anterior" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Atualizando os registros históricos de Calibração de Dinâmica de Fluxo" + +msgid "Action" +msgstr "Ação" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "Este tipo de máquina só pode salvar %d resultados por bico." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Editar Calibração de Dinâmica de Fluxo" + +msgid "New Flow Dynamic Calibration" +msgstr "Nova Calibração de Dinâmica de Fluxo" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "O filamento deve ser selecionado." + +msgid "Network lookup" +msgstr "Procura de Rede" + +msgid "Address" +msgstr "Endereço" + +msgid "Hostname" +msgstr "Nome do Host" + +msgid "Service name" +msgstr "Nome do Serviço" + +msgid "OctoPrint version" +msgstr "Versão do OctoPrint" + +msgid "Searching for devices" +msgstr "Procurando por dispositivos" + +msgid "Finished" +msgstr "Concluído" + +msgid "Multiple resolved IP addresses" +msgstr "Múltiplos endereços IP resolvidos" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"Há vários endereços IP resolvendo para o nome do host %1%.\n" +"Por favor, selecione um que deve ser usado." + +msgid "PA Calibration" +msgstr "Calibração de PA" + +msgid "DDE" +msgstr "DDE" + +msgid "Bowden" +msgstr "Tubo" + +msgid "Extruder type" +msgstr "Tipo de Extrusor" + +msgid "PA Tower" +msgstr "Torre de PA" + +msgid "PA Line" +msgstr "Linha de PA" + +msgid "PA Pattern" +msgstr "Padrão de PA" + +msgid "Start PA: " +msgstr "Iniciar PA: " + +msgid "End PA: " +msgstr "Finalizar PA: " + +msgid "PA step: " +msgstr "Passo de PA: " + +msgid "Print numbers" +msgstr "Número de Impressões" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Por favor, insira valores válidos:\n" +"Iniciar PA: >= 0.0\n" +"Finalizar PA: > Iniciar PA\n" +"Passo de PA: >= 0.001)" + +msgid "Temperature calibration" +msgstr "Calibração de Temperatura" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Tipo de Filamento" + +msgid "Start temp: " +msgstr "Temp. inicial: " + +msgid "End temp: " +msgstr "Temp. final: " + +msgid "Temp step: " +msgstr "Passo de Temperatura: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Por favor, insira valores válidos:\n" +"Temp. inicial: <= 350\n" +"Temp. final: >= 170\n" +"Temp. inicial > Temp. final + 5)" + +msgid "Max volumetric speed test" +msgstr "Teste de Velocidade Volumétrica Máxima" + +msgid "Start volumetric speed: " +msgstr "Iniciar Velocidade Volumétrica: " + +msgid "End volumetric speed: " +msgstr "Finalizar Velocidade Volumétrica: " + +msgid "step: " +msgstr "passo: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Por favor, insira valores válidos:\n" +"início > 0\n" +"passo >= 0\n" +"fim > início + passo)" + +msgid "VFA test" +msgstr "Teste VFA" + +msgid "Start speed: " +msgstr "Velocidade Inicial: " + +msgid "End speed: " +msgstr "Velocidade Final: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Por favor, insira valores válidos:\n" +"início > 10\n" +"passo >= 0\n" +"fim > início + passo)" + +msgid "Start retraction length: " +msgstr "Distância de Retração Inicial: " + +msgid "End retraction length: " +msgstr "Distância de Retração Final: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "Enviar G-Code para o host da impressora" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Enviar para o Host da Impressora com o seguinte nome de arquivo:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "" +"Use barras inclinadas ( / ) como separador de diretórios, se necessário." + +msgid "Upload to storage" +msgstr "Enviar para armazenamento" + +msgid "Switch to Device tab after upload." +msgstr "" + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "O nome do arquivo enviado não termina com \"%s\". Deseja continuar?" + +msgid "Upload" +msgstr "Enviar" + +msgid "Print host upload queue" +msgstr "Fila de envio do host de impressão" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Progresso" + +msgid "Host" +msgstr "Servidor" + +msgctxt "OfFile" +msgid "Size" +msgstr "Tamanho" + +msgid "Filename" +msgstr "Nome do Arquivo" + +msgid "Cancel selected" +msgstr "Cancelar selecionados" + +msgid "Show error message" +msgstr "Mostrar mensagem de erro" + +msgid "Enqueued" +msgstr "Enfileirado" + +msgid "Uploading" +msgstr "Enviando" + +msgid "Cancelling" +msgstr "Cancelando" + +msgid "Error uploading to print host" +msgstr "Erro ao enviar para o host de impressão" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Não é possível realizar operação booleana nas peças selecionadas" + +msgid "Mesh Boolean" +msgstr "Operações Booleanas" + +msgid "Union" +msgstr "Unir" + +msgid "Difference" +msgstr "Subtrair" + +msgid "Intersection" +msgstr "Interseção" + +msgid "Source Volume" +msgstr "Volume Fonte" + +msgid "Tool Volume" +msgstr "Volume de Ferramenta" + +msgid "Subtract from" +msgstr "Subtrair de" + +msgid "Subtract with" +msgstr "Subtrair com" + +msgid "selected" +msgstr "selecionado" + +msgid "Part 1" +msgstr "Parte 1" + +msgid "Part 2" +msgstr "Parte 2" + +msgid "Delete input" +msgstr "Excluir entrada" + +msgid "Network Test" +msgstr "Teste de Rede" + +msgid "Start Test Multi-Thread" +msgstr "Iniciar Teste Multi-Thread" + +msgid "Start Test Single-Thread" +msgstr "Iniciar Teste de Única Thread" + +msgid "Export Log" +msgstr "Exportar Registro" + +msgid "Snapmaker Orca Version:" +msgstr "Versão do Snapmaker Orca:" + +msgid "System Version:" +msgstr "Versão do Sistema:" + +msgid "DNS Server:" +msgstr "Servidor DNS:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "Testar Snapmaker Orca (GitHub)" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "Testar Snapmaker Orca (GitHub):" + +msgid "Test Bing.com" +msgstr "Testar Bing.com" + +msgid "Test bing.com:" +msgstr "Testar bing.com:" + +msgid "Log Info" +msgstr "Informações do Registro" + +msgid "Select filament preset" +msgstr "Selecionar Preset de Filamento" + +msgid "Create Filament" +msgstr "Criar Filamento" + +msgid "Create Based on Current Filament" +msgstr "Criar com Base no Filamento Atual" + +msgid "Copy Current Filament Preset " +msgstr "Copiar Preset de Filamento Atual " + +msgid "Basic Information" +msgstr "Informações Básicas" + +msgid "Add Filament Preset under this filament" +msgstr "Adicionar Preset de Filamento sob este filamento" + +msgid "We could create the filament presets for your following printer:" +msgstr "Nós criamos presets de filamento para a sua impressora:" + +msgid "Select Vendor" +msgstr "Selecionar Fornecedor" + +msgid "Input Custom Vendor" +msgstr "Inserir Fornecedor Personalizado" + +msgid "Can't find vendor I want" +msgstr "Não consigo encontrar o fornecedor que desejo" + +msgid "Select Type" +msgstr "Selecionar Tipo" + +msgid "Select Filament Preset" +msgstr "Selecionar Preset de Filamento" + +msgid "Serial" +msgstr "Série" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "por exemplo, Básico, Fosco, Seda, Mármore" + +msgid "Filament Preset" +msgstr "Preset de Filamento" + +msgid "Create" +msgstr "Criar" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Fornecedor não está selecionado, por favor, reselecione o fornecedor." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" +"O fornecedor personalizado não foi inserido, por favor insira o fornecedor " +"personalizado." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" ou \"Genérico\" não podem ser usados como fornecedor para " +"filamentos personalizados." + +msgid "Filament type is not selected, please reselect type." +msgstr "" +"O tipo de filamento não está selecionado, por favor, reselecione o tipo." + +msgid "Filament serial is not inputed, please input serial." +msgstr "O serial do filamento não foi inserido, por favor, insira o serial." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"Pode haver caracteres de escape na entrada de fornecedor ou serial do " +"filamento. Por favor, exclua e insira novamente." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Todas as entradas no fornecedor personalizado ou serial são espaços. Por " +"favor, insira novamente." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "O fornecedor não pode ser um número. Por favor, insira novamente." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"Você ainda não selecionou uma impressora ou preset. Por favor, selecione " +"pelo menos um." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"O nome do Filamento %s que você criou já existe. \n" +"Se você continuar a criar, a preset criado será exibido com o seu nome " +"completo. Você quer continuar?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Alguns presets existentes falharam ao serem criados, como segue:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Você deseja reescrevê-lo?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"Renomearíamos os presets como \"Fornecedor Tipo Serial @ impressora que você " +"selecionou\". \n" +"Para adicionar preset para mais impressoras, Por favor, vá para a seleção de " +"impressoras" + +msgid "Create Printer/Nozzle" +msgstr "Criar Impressora/Bico" + +msgid "Create Printer" +msgstr "Criar Impressora" + +msgid "Create Nozzle for Existing Printer" +msgstr "Criar Bico para Impressora Existente" + +msgid "Create from Template" +msgstr "Criar a Partir de um Modelo" + +msgid "Create Based on Current Printer" +msgstr "Criar com Base na Impressora Atual" + +msgid "Import Preset" +msgstr "Importar Preset" + +msgid "Create Type" +msgstr "Tipo de Criação" + +msgid "The model is not found, place reselect vendor." +msgstr "O modelo não foi encontrado, por favor, reselecione o fornecedor." + +msgid "Select Model" +msgstr "Selecionar Modelo" + +msgid "Select Printer" +msgstr "Selecionar Impressora" + +msgid "Input Custom Model" +msgstr "Inserir Modelo Personalizado" + +msgid "Can't find my printer model" +msgstr "Não consigo encontrar o modelo da minha impressora" + +msgid "Rectangle" +msgstr "Retângulo" + +msgid "Printable Space" +msgstr "Espaço Imprimível" + +msgid "Hot Bed STL" +msgstr "STL da Base Aquecida" + +msgid "Load stl" +msgstr "Carregar STL" + +msgid "Hot Bed SVG" +msgstr "SVG da Base Aquecida" + +msgid "Load svg" +msgstr "Carregar svg" + +msgid "Max Print Height" +msgstr "Altura de impressão máxima" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "O arquivo excede %d MB, por favor, importe novamente." + +msgid "Exception in obtaining file size, please import again." +msgstr "Exceção ao obter o tamanho do arquivo, por favor, importe novamente." + +msgid "Preset path is not find, please reselect vendor." +msgstr "" +"O caminho do preset não é encontrado, por favor, reselecione o fornecedor." + +msgid "The printer model was not found, please reselect." +msgstr "O modelo da impressora não foi encontrado, por favor, reselecione." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "O diâmetro do bico não foi encontrado, por favor, reselecione." + +msgid "The printer preset is not found, place reselect." +msgstr "O preset da impressora não foi encontrado, por favor, reselecione." + +msgid "Printer Preset" +msgstr "Preset de Impressora" + +msgid "Filament Preset Template" +msgstr "Modelo de Preset de Filamento" + +msgid "Deselect All" +msgstr "Desselecionar Tudo" + +msgid "Process Preset Template" +msgstr "Processar Modelo de Preset" + +msgid "Back Page 1" +msgstr "Voltar à Página 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Você ainda não escolheu em qual preset de impressora basear-se. Por favor, " +"escolha o fornecedor e modelo da impressora" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"Você inseriu uma entrada ilegal na seção de área imprimível na primeira " +"página. Por favor, verifique antes de criar." + +msgid "The custom printer or model is not inputed, place input." +msgstr "A impressora ou modelo personalizado não foi colocado." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"O modelo de impressora que você criou já possui um modelo com o mesmo nome. " +"Deseja substituí-lo?\n" +" \tSim: Substituir o modelo de impressora com o mesmo nome, e os modelos de " +"filamento e processo com o mesmo nome do modelo serão recriados, \n" +" e os modelos de filamento e processo sem o mesmo nome do modelo serão " +"preservados.\n" +" \tCancelar: Não criar um modelo, retornar para a interface de criação." + +msgid "You need to select at least one filament preset." +msgstr "Você precisa selecionar pelo menos um modelo de filamento." + +msgid "You need to select at least one process preset." +msgstr "Você precisa selecionar pelo menos um modelo de processo." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Falha ao criar modelos de filamento. Como segue:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "Falha ao criar modelos de processo. Como segue:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Fornecedor não encontrado, por favor selecione novamente." + +msgid "Current vendor has no models, please reselect." +msgstr "O fornecedor atual não possui modelos, por favor, selecione novamente." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"Você não selecionou um fornecedor e modelo nem colocou fornecer e modelo " +"personalizado." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"Pode haver caracteres de escape no fornecedor ou modelo personalizado da " +"impressora. Por favor, exclua e insira novamente." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"Todas as entradas no fornecedor ou modelo personalizado da impressora são " +"espaços. Por favor, insira novamente." + +msgid "Please check bed printable shape and origin input." +msgstr "Por favor, verifique a forma imprimível da mesa e a entrada de origem." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Você ainda não selecionou a impressora para substituir o bico, por favor, " +"escolha." + +msgid "Create Printer Successful" +msgstr "Impressora criada com sucesso" + +msgid "Create Filament Successful" +msgstr "Filamento criado com sucesso" + +msgid "Printer Created" +msgstr "Impressora criada" + +msgid "Please go to printer settings to edit your presets" +msgstr "" +"Por favor vá parar configurações de impressora para editar os seus presets" + +msgid "Filament Created" +msgstr "Filamento criado" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Por favor, vá para as configurações do filamento para editar seus presets, " +"se necessário. \n" +"Por favor, note que a temperatura do bico, temperatura da mesa aquecida e " +"velocidade volumétrica máxima têm um impacto significativo na qualidade de " +"impressão. Por favor, ajuste-os com cuidado." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"Orca detectou que a função de sincronização das suas predefinições de " +"usuário não está habilitada, o que pode resultar em falhas nas configurações " +"de Filamento na página do Dispositivo. \n" +"Clique em \"Sincronizar presets do usuário\" para habilitar a função de " +"sincronização." + +msgid "Printer Setting" +msgstr "Configuração da Impressora" + +msgid "Printer config bundle(.orca_printer)" +msgstr "Pacote de configuração da impressora (.orca_printer)" + +msgid "Filament bundle(.orca_filament)" +msgstr "Pacote de filamento (.orca_filament)" + +msgid "Printer presets(.zip)" +msgstr "Presets da impressora (.zip)" + +msgid "Filament presets(.zip)" +msgstr "Presets de filamento (.zip)" + +msgid "Process presets(.zip)" +msgstr "Presets de processo (.zip)" + +msgid "initialize fail" +msgstr "falha na inicialização" + +msgid "add file fail" +msgstr "falha ao adicionar arquivo" + +msgid "add bundle structure file fail" +msgstr "falha ao adicionar arquivo de estrutura de pacote" + +msgid "finalize fail" +msgstr "falha na finalização" + +msgid "open zip written fail" +msgstr "falha ao abrir o arquivo zip para escrita" + +msgid "Export successful" +msgstr "Exportação bem-sucedida" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"A pasta '%s' já existe no diretório atual. Deseja limpá-la e reconstruí-la?\n" +"Se não, um sufixo de tempo será adicionado, e você poderá modificar o nome " +"após a criação." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"Presets da impressora e todos os filamentos e processos que pertencem à " +"impressora. \n" +"Pode ser compartilhado com outros." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Conjunto de presets de filamento do usuário. \n" +"Pode ser compartilhado com outros." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Só exibir nomes de impressoras com alterações nos presets de impressora, " +"filamento e processo." + +msgid "Only display the filament names with changes to filament presets." +msgstr "" +"Apenas exibir os nomes dos filamentos com alterações nos presets de " +"filamento." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Apenas os nomes das impressoras com presets de impressora do usuário serão " +"exibidos, e cada preset escolhido será exportado como um arquivo zip." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Apenas os nomes dos filamentos com presets de filamento do usuário serão " +"exibidos, \n" +"e todas as presets de filamento do usuário em cada nome de filamento " +"selecionado serão exportadas como um arquivo zip." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Apenas os nomes das impressoras com presets de processo alterados serão " +"exibidos, \n" +"e todos os presets de processo do usuário em cada nome de impressora " +"selecionado serão exportados como um arquivo zip." + +msgid "Please select at least one printer or filament." +msgstr "Por favor, selecione pelo menos uma impressora ou filamento." + +msgid "Please select a type you want to export" +msgstr "Por favor, selecione um tipo que deseja exportar" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" +"Falha ao criar uma pasta temporária, por favor, tente exportar as " +"configurações novamente." + +msgid "Edit Filament" +msgstr "Editar Filamento" + +msgid "Filament presets under this filament" +msgstr "Presets de filamento sob este filamento" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Nota: Se o único preset sob este filamento for excluído, o filamento será " +"excluído após sair da janela." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "Presets herdados por outros presets não podem ser excluídos" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Os seguintes presets herdam este preset." +msgstr[1] "A seguinte predefinição herda essa predefinição." + +msgid "Delete Preset" +msgstr "Excluir Preset" + +msgid "Are you sure to delete the selected preset?" +msgstr "Tem certeza de que deseja excluir o preset selecionado?" + +msgid "Delete preset" +msgstr "Excluir preset" + +msgid "+ Add Preset" +msgstr "+ Adicionar Preset" + +msgid "Delete Filament" +msgstr "Excluir Filamento" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Todos os presets de filamento pertencentes a este filamento seriam " +"excluídas. \n" +"Se você estiver usando este filamento em sua impressora, redefina as " +"informações do filamento para esse slot." + +msgid "Delete filament" +msgstr "Excluir filamento" + +msgid "Add Preset" +msgstr "Adicionar Preset" + +msgid "Add preset for new printer" +msgstr "Adicionar preset para nova impressora" + +msgid "Copy preset from filament" +msgstr "Copiar preset do filamento" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "" +"O filamento selecionado não encontra preset de filamento, por favor, " +"selecione novamente" + +msgid "[Delete Required]" +msgstr "[Excluir Necessário]" + +msgid "Edit Preset" +msgstr "Editar Preset" + +msgid "For more information, please check out Wiki" +msgstr "Para mais informações, por favor, consulte a Wiki" + +msgid "Collapse" +msgstr "Recolher" + +msgid "Daily Tips" +msgstr "Dicas Diárias" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "bico memorizado: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"O diâmetro do bico no seu perfil não está consistente com o diâmetro do bico " +"memorizado. Você mudou seu bico recentemente?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*Imprimir material %s com %s pode causar danos ao bico" + +msgid "Need select printer" +msgstr "É necessário selecionar uma impressora" + +msgid "The start, end or step is not valid value." +msgstr "O início, fim ou passo não é um valor válido." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Incapaz de calibrar: talvez porque a faixa de valor de calibração definida " +"seja muito grande ou o passo seja muito pequeno" + +msgid "Physical Printer" +msgstr "Impressora Física" + +msgid "Print Host upload" +msgstr "Upload do Host de Impressão" + +msgid "Could not get a valid Printer Host reference" +msgstr "Não foi possível obter uma referência válida do Host de Impressão" + +msgid "Success!" +msgstr "Sucesso!" + +msgid "Are you sure to log out?" +msgstr "Tem certeza de que deseja sair?" + +msgid "Refresh Printers" +msgstr "Atualizar Impressoras" + +msgid "View print host webui in Device tab" +msgstr "" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"O arquivo CA HTTPS é opcional. É necessário apenas se você usar HTTPS com um " +"certificado autoassinado." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "" +"Arquivos de certificado (*.crt, *.pem)|*.crt;*.pem|Todos os arquivos|*.*" + +msgid "Open CA certificate file" +msgstr "Abrir arquivo de certificado CA" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"Neste sistema, %s usa certificados HTTPS da loja de certificados do sistema " +"ou do Keychain." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Para usar um arquivo CA personalizado, importe seu arquivo CA para a loja de " +"certificados / Keychain." + +msgid "Login/Test" +msgstr "Login/Teste" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"A conexão às impressoras conectadas através do host de impressão falhou." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Tipo de Host de Impressão incompatível: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "A conexão com o AstroBox funciona corretamente." + +msgid "Could not connect to AstroBox" +msgstr "Não foi possível conectar-se ao AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Nota: Versão do AstroBox de pelo menos 1.1.0 é necessária." + +msgid "Connection to Duet works correctly." +msgstr "A conexão com o Duet funciona corretamente." + +msgid "Could not connect to Duet" +msgstr "Não foi possível conectar-se ao Duet" + +msgid "Unknown error occured" +msgstr "Ocorreu um erro desconhecido" + +msgid "Wrong password" +msgstr "Senha incorreta" + +msgid "Could not get resources to create a new connection" +msgstr "Não foi possível obter recursos para criar uma nova conexão" + +msgid "Upload not enabled on FlashAir card." +msgstr "Upload não ativado no cartão FlashAir." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "" +"A conexão com o FlashAir funciona corretamente e o upload está ativado." + +msgid "Could not connect to FlashAir" +msgstr "Não foi possível conectar-se ao FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Nota: FlashAir com firmware 2.00.02 ou mais recente e função de upload " +"ativada são necessárias." + +msgid "Connection to MKS works correctly." +msgstr "A conexão com o MKS funciona corretamente." + +msgid "Could not connect to MKS" +msgstr "Não foi possível conectar-se ao MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "A conexão com o OctoPrint funciona corretamente." + +msgid "Could not connect to OctoPrint" +msgstr "Não foi possível conectar-se ao OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Nota: Versão do OctoPrint de pelo menos 1.1.0 é necessária." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "A Conexão com Prusa SL1 / SL1S funciona corretamente." + +msgid "Could not connect to Prusa SLA" +msgstr "Não foi possível conectar-se ao Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "A conexão com PrusaLink funciona corretamente." + +msgid "Could not connect to PrusaLink" +msgstr "Não foi possível conectar-se ao PrusaLink" + +msgid "Storages found" +msgstr "Armazenamento encontrado" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1%: somente leitura" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : sem espaço livre" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "Falha no ‘upload’. Não há armazenamento suficiente em %1%." + +msgid "Connection to Prusa Connect works correctly." +msgstr "A conexão com o Prusa Connect funciona corretamente." + +msgid "Could not connect to Prusa Connect" +msgstr "Não foi possível conectar-se ao Prusa Connect." + +msgid "Connection to Repetier works correctly." +msgstr "A conexão com o Repetier funciona corretamente." + +msgid "Could not connect to Repetier" +msgstr "Não foi possível conectar-se ao Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Nota: A versão do Repetier deve ser igual ou maior que 0.90.0" + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP status: %1%\n" +"Corpo da mensagem: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Resposta ao host falhou.\n" +"Corpo da Mensagem \"%1%\"\n" +"Error: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Enumeração das impressoras host falhou\n" +"Corpo da Mensagem: \"%1%\"\n" +"Error: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"Possui uma pequena altura de camada, resultando em linhas de camada quase " +"imperceptíveis e alta qualidade de impressão. É adequado para a maioria dos " +"casos gerais de impressão." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,2 mm, ele tem velocidades e " +"aceleração mais baixas, e o padrão de preenchimento é Giroide. Isso resulta " +"em uma qualidade de impressão muito superior, mas um tempo de impressão " +"muito mais longo." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,2 mm, tem uma altura de camada " +"um pouco maior, resultando em linhas de camada quase insignificantes e um " +"tempo de impressão ligeiramente menor." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,2 mm, tem uma altura de camada " +"maior, o que resulta em linhas de camada ligeiramente visíveis, mas um tempo " +"de impressão menor." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,2 mm, tem uma altura de camada " +"menor, resultando em linhas de camada quase invisíveis e maior qualidade de " +"impressão, mas um tempo de impressão menor." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,2 mm, tem linhas de camada " +"menores, velocidades e aceleração mais baixas, e o padrão de preenchimento é " +"Giroide. Isso resulta em linhas de camada quase invisíveis e uma qualidade " +"de impressão muito superior, mas um tempo de impressão muito maior." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,2 mm, tem uma altura de camada " +"menor, resultando em linhas de camada mínimas e maior qualidade de " +"impressão, mas um tempo de impressão menor." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,2 mm, tem linhas de camada " +"menores, velocidades e aceleração mais baixas, e o padrão de preenchimento é " +"Giroide. Isso resulta em linhas de camada mínimas e uma qualidade de " +"impressão muito superior, mas um tempo de impressão muito maior." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"Tem uma altura de camada padrão e resulta em linhas de camada e qualidade de " +"impressão padrão. É adequado para a maioria dos casos de impressão." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Comparado com o perfil padrão de uma bico de 0,4 mm, tem mais paredes e uma " +"densidade de preenchimento mais alta. Portanto, resulta em maior " +"resistência, mas com consumo maior de filamento e tempo de impressão mais " +"longo." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"Comparado com o perfil padrão de uma bico de 0,4 mm, tem uma altura de " +"camada maior, resultando em linhas de camada mais aparentes e qualidade mais " +"baixa, mas com um tempo de impressão um pouco menor." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"Comparado com o perfil padrão de uma bico de 0,4 mm, tem uma altura de " +"camada maior, resultando em linhas de camada mais aparentes e qualidade mais " +"baixa, mas com um tempo de impressão menor." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,4 mm, tem uma altura de camada " +"menor, resultando em linhas de camada menos aparentes e maior qualidade de " +"impressão, mas com um tempo de impressão maior." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,4 mm, tem uma altura de camada " +"menor, velocidades e aceleração mais baixas, e o padrão de preenchimento é " +"Giroide. Portanto, resulta em linhas de camada menos aparentes e qualidade " +"de impressão maior, mas com um tempo de impressão muito maior." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,4 mm, tem uma altura de camada " +"menor, resultando em linhas de camada quase insignificantes e maior " +"qualidade de impressão, mas com um maior tempo de impressão." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,4 mm, tem uma altura de camada " +"menor, velocidades e aceleração mais baixas, e o padrão de preenchimento é " +"Giroide. Portanto, resulta em linhas de camada quase insignificantes e " +"qualidade de impressão muito maior, mas com um tempo de impressão muito " +"maior." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,4 mm, tem uma altura de camada " +"menor, resultando em linhas de camada quase insignificantes, mas com um " +"tempo de impressão maior." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"Tem uma altura de camada grande, resultando em linhas de camada aparentes " +"com qualidade e tempo de impressão normais." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,6 mm, tem mais paredes e uma " +"densidade de preenchimento mais alta. Portanto, resulta em uma resistência " +"maior, mas com um consumo de filamento maior e um tempo de impressão mais " +"longo." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,6 mm, tem uma altura de camada " +"maior, resultando em linhas de camada mais aparentes e qualidade mais baixa, " +"mas com um tempo de impressão menor em alguns casos de impressão." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,6 mm, tem uma altura de camada " +"maior, resultando em linhas de camada muito mais aparentes e qualidade muito " +"mais baixa, mas com um tempo de impressão menor em alguns casos de impressão." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,6 mm, tem uma altura de camada " +"menor, resultando em linhas de camada menos aparentes e qualidade " +"ligeiramente maior, mas com um tempo de impressão maior." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,6 mm, tem uma altura de camada " +"menor, resultando em linhas de camada menos aparentes e maior qualidade de " +"impressão, mas com um tempo de impressão maior." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"Tem uma altura de camada muito grande, resultando em linhas de camada muito " +"aparentes, com qualidade e tempo de impressão baixo." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,8 mm, tem uma altura de camada " +"maior, resultando em linhas de camada muito aparentes e qualidade muito mais " +"baixa, mas com um tempo de impressão menor em alguns casos de impressão." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,8 mm, tem uma altura de camada " +"muito maior, resultando em linhas de camada extremamente aparentes e " +"qualidade muito mais baixa, mas com um tempo de impressão muito menor em " +"alguns casos de impressão." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,8 mm, tem uma altura de camada " +"ligeiramente menor, resultando em linhas de camada menos aparentes, mas " +"ainda visíveis, e qualidade ligeiramente maior, mas com um tempo de " +"impressão maior em alguns casos de impressão." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"Comparado com o perfil padrão de um bico de 0,8 mm, tem uma altura de camada " +"menor, resultando em linhas de camada menos aparentes, mas ainda visíveis, e " +"qualidade ligeiramente maior, mas com um tempo de impressão maior em alguns " +"casos de impressão." + +msgid "Connected to Obico successfully!" +msgstr "Conectado ao Obico com sucesso!" + +msgid "Could not connect to Obico" +msgstr "Não é possível conectar a Obico" + +msgid "Connected to SimplyPrint successfully!" +msgstr "Conectado ao SimplyPrint com sucesso!" + +msgid "Could not connect to SimplyPrint" +msgstr "Não é possível conectar a SimplyPrint" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "Erro desconhecido" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" +"Conta SimplyPrint não vinculada. Vá para as opções de conexão para configurá-" +"la." + +msgid "Connection to Flashforge works correctly." +msgstr "A conexão com a Flashforge está funcionando corretamente." + +msgid "Could not connect to Flashforge" +msgstr "Não é possível conectar a Flashforge" + +msgid "The provided state is not correct." +msgstr "O estado fornecido não está correto." + +msgid "Please give the required permissions when authorizing this application." +msgstr "" +"Por favor, forneça as permissões necessárias ao autorizar este aplicativo." + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" +"Algo inesperado aconteceu ao tentar conectar, por favor tente novamente." + +msgid "User cancelled." +msgstr "O usuário cancelou." + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"Parede precisa\n" +"Você sabia que ativar o Perímetro Preciso pode melhorar a precisão e a " +"consistência da camada?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"Modo sanduíche\n" +"Você sabia que pode usar o modo sanduíche (interno-externo-interno) para " +"melhorar a precisão e a consistência da camada se o seu modelo não tiver " +"overhangs muito íngremes?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"Temperatura da câmara\n" +"Você sabia que o Snapmaker Orca suporta temperatura da câmara?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"Calibração\n" +"Você sabia que calibrar sua impressora pode fazer maravilhas? Confira nossa " +"amada solução de calibração no Snapmaker Orca." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"Ventilador auxiliar\n" +"Você sabia que o Snapmaker Orca suporta ventilador auxiliar de resfriamento de " +"peças?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"Filtragem de ar/Exaustor\n" +"Você sabia que o Snapmaker Orca pode suportar filtragem de ar/exaustor?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"Janela do G-code\n" +"Você pode ligar/desligar a janela do G-code pressionando a tecla C." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"Alternar espaços de trabalho\n" +"Você pode alternar entre os espaços de trabalho Preparar e " +"Visualizar pressionando a tecla Tab." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"Como usar atalhos de teclado\n" +"Você sabia que o Snapmaker Orca oferece uma ampla gama de atalhos de teclado e " +"operações de cena 3D?" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"Inverter em ímpar\n" +"Você sabia que a função Inverter em ímpar pode melhorar " +"significativamente a qualidade da superfície dos overhangs?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Ferramenta de corte\n" +"Você sabia que pode cortar um modelo em qualquer ângulo e posição com a " +"ferramenta de corte?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Corrigir Modelo\n" +"Você sabia que pode corrigir um modelo 3D corrompido para evitar muitos " +"problemas de fatiamento no sistema Windows?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Timelapse\n" +"Você sabia que pode gerar um vídeo de timelapse durante cada impressão?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Auto-arranjo\n" +"Você sabia que pode auto-posicionar todos os objetos em seu projeto?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Auto-orientar\n" +"Você sabia que pode girar objetos para uma orientação ideal para impressão " +"com um simples clique?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Apoiar face à superfície\n" +"Você sabia que pode rapidamente orientar um modelo para que uma de suas " +"faces fique sobre a base de impressão? Selecione a função \"Apoiar na face\" " +"ou pressione a tecla F." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Lista de Objetos\n" +"Você sabia que pode visualizar todos os objetos/peças em uma lista e alterar " +"as configurações para cada objeto/peça?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"Funcionalidade de Busca\n" +"Você sabia que pode usar a ferramenta de busca para encontrar rapidamente " +"uma configuração específica do Snapmaker Orca?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"Simplificar Modelo\n" +"Você sabia que pode reduzir o número de triângulos em uma malha usando a " +"função Simplificar malha? Clique com o botão direito no modelo e selecione " +"Simplificar modelo." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Tabela de Parâmetros de Fatiamento\n" +"Você sabia que pode visualizar todos os objetos/peças em uma tabela e " +"alterar as configurações para cada objeto/peça?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Dividir em Objetos/Peças\n" +"Você sabia que pode dividir um objeto grande em peças menores para facilitar " +"a colorização ou a impressão?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"Subtrair uma Peça\n" +"Você sabia que pode subtrair uma malha da outra usando o modificador de peça " +"negativa? Dessa forma, você pode, por exemplo, criar facilmente furos " +"redimensionáveis diretamente no Snapmaker Orca." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP\n" +"Você sabia que pode melhorar a qualidade da impressão fatiando um arquivo " +"STEP ao invés de um STL?\n" +"Snapmaker Orca é compatível com arquivos STEP, gerando resultados mais suaves " +"do que um STL em baixa resolução. Tente!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Local da costura\n" +"Você sabia que pode customizar a posição da costura, e até mesmo pintá-la na " +"sua peça, para tê-la em um lugar menos visível? Isso vai aumentar a " +"qualidade geral do seu modelo. Tente!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Ajuste fino do fluxo\n" +"Você sabia que o fluxo pode ser ajustado para impressões ainda melhores? " +"Dependendo do material, você pode melhorar o acabamento final da sua peça " +"fazendo alguns ajustes." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Divida suas impressões em mesas\n" +"Você sabia que pode dividir um modelo que tem diversas peças individuais em " +"mesas distintas prontas para imprimir? Isso vai simplificar o processo e o " +"avanço das impressões." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Agilize sua impressão com a Altura de Camada Adaptativa\n" +"Você sabia que pode imprimir um modelo ainda mais rápido, usando a opção de " +"Altura de Camada Adaptativa? Tente!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Pintura de suporte\n" +"Você sabia que pode pintar a localização dos seus suportes? Essa " +"funcionalidade facilita colocar o material de suporte apenas nas seções do " +"modelo que realmente precisam." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Diferentes tipos de suportes\n" +"Você sabia que pode escolher entre vários tipos de suportes? Os suportes de " +"árvore funcionam muito bem para modelos orgânicos, enquanto economizam " +"filamento e melhoram a velocidade de impressão. Confira-os!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Impressão de Filamento de Seda\n" +"Você sabia que o filamento de seda precisa de considerações especiais para " +"ser impresso com sucesso? Uma temperatura mais alta e uma velocidade mais " +"baixa são sempre recomendadas para obter os melhores resultados." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Borda para melhor adesão\n" +"Você sabia que, ao imprimir modelos com uma pequena interface de contato com " +"a superfície de impressão, é recomendável usar uma borda?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Definir parâmetros para vários objetos\n" +"Você sabia que pode definir parâmetros de fatiamento para todos os objetos " +"selecionados de uma só vez?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Empilhar objetos\n" +"Você sabia que pode empilhar objetos como um todo?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Purga no suporte/objetos/preenchimento\n" +"Você sabia que pode economizar o filamento desperdiçado ao purgar nos " +"suportes/objetos/preenchimento durante a troca de filamento?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Melhorar a resistência\n" +"Você sabia que pode usar mais loops de perímetro e densidade de " +"preenchimento não sólido mais alta para melhorar a resistência do modelo?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Quando é necessário imprimir com a porta da impressora aberta\n" +"Você sabia que abrir a porta da impressora pode reduzir a probabilidade de " +"entupimento do extrusor/bico aquecido ao imprimir filamento de temperatura " +"mais baixa com uma temperatura de invólucro mais alta. Mais informações " +"sobre isso na Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Evitar empenamento\n" +"Você sabia que ao imprimir materiais propensos ao empenamento, como ABS, " +"aumentar adequadamente a temperatura da mesa aquecida pode reduzir a " +"probabilidade de empenamento?" + +#~ msgid "Current association: " +#~ msgstr "Associação atual: " + +#~ msgid "Associate prusaslicer://" +#~ msgstr "Associar prusaslicer://" + +#~ msgid "Not associated to any application" +#~ msgstr "Não associado a nenhum aplicativo" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "models from Printable.com" +#~ msgstr "" +#~ "Associar Snapmaker Orca com links prusaslicer:// para que o Orca possa abrir " +#~ "modelos do Printable.com" + +#~ msgid "Associate bambustudio://" +#~ msgstr "Associar bambustudio://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with bambustudio:// links so that Orca can open " +#~ "models from makerworld.com" +#~ msgstr "" +#~ "Associar Snapmaker Orca com bambustudio:// para que o Orca possa abrir " +#~ "modelos de makerworld.com" + +#~ msgid "Associate cura://" +#~ msgstr "Associar cura://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with cura:// links so that Orca can open models from " +#~ "thingiverse.com" +#~ msgstr "" +#~ "Associar Snapmaker Orca com links cura:// para que o Orca possa abrir modelos " +#~ "do thingiverse.com" + +#~ msgid "" +#~ "File size exceeds the 100MB upload limit. Please upload your file through " +#~ "the panel." +#~ msgstr "" +#~ "O tamanho do arquivo excede o limite de envio de 100MB. Por favor, envie " +#~ "seu arquivo através do painel." + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Por favor, insira um valor válido (K entre 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Por favor, insira um valor válido (K entre 0~0.3, N entre 0.6~2.0))" + +#~ msgid "Select connected printetrs (0/6)" +#~ msgstr "Selecione as impressoras conectadas (0/6)" + +#, c-format, boost-format +#~ msgid "Select Connected Printetrs (%d/6)" +#~ msgstr "Selecionar as impressoras conectadas (%d/6)" + +#~ msgid "PrintingPause" +#~ msgstr "Pausa na Impressão" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "Falha na conexão local da impressora, por favor, tente novamente." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Encontre os detalhes da Calibração de Dinâmica de Fluxo na nossa wiki.\n" +#~ "\n" +#~ "Normalmente, a calibração não é necessária. Quando você inicia uma " +#~ "impressão de cor/material única, com a opção \"calibração de dinâmica de " +#~ "fluxo\" ativada no menu de início da impressão, a impressora seguirá o " +#~ "método antigo, calibrando o filamento antes da impressão; Quando você " +#~ "inicia uma impressão de cor/material múltipla, a impressora usará o " +#~ "parâmetro de compensação padrão para o filamento durante cada troca de " +#~ "filamento, o que resultará em um bom resultado na maioria dos casos.\n" +#~ "\n" +#~ "Por favor, note que existem alguns casos que podem tornar o resultado da " +#~ "calibração não confiável: usar uma mesa texturizada para fazer a " +#~ "calibração; a mesa não tem boa adesão (por favor, lave a mesa ou aplique " +#~ "cola!) ... Você pode encontrar mais informações em nossa wiki.\n" +#~ "\n" +#~ "Os resultados da calibração têm cerca de 10 por cento de oscilação em " +#~ "nossos testes, o que pode fazer com que o resultado não seja exatamente o " +#~ "mesmo em cada calibração. Ainda estamos investigando a causa raiz para " +#~ "fazer melhorias com novas atualizações." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Apenas um dos resultados com o mesmo nome será salvo. Você tem certeza de " +#~ "que deseja substituir os outros resultados?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Já existe um resultado de calibração histórico com o mesmo nome: %s. " +#~ "Apenas um dos resultados com o mesmo nome é salvo. Você tem certeza de " +#~ "que deseja substituir o resultado histórico?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Por favor, encontre o canto com o grau perfeito de extrusão" + +#~ msgid "X" +#~ msgstr "X" + +#~ msgid "Y" +#~ msgstr "A" diff --git a/localization/i18n/ru/Snapmaker_Orca_ru.po b/localization/i18n/ru/Snapmaker_Orca_ru.po new file mode 100644 index 0000000000..19282409ba --- /dev/null +++ b/localization/i18n/ru/Snapmaker_Orca_ru.po @@ -0,0 +1,17210 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca V2.0.0 Official Release\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: 2024-06-19 16:50+0700\n" +"Last-Translator: \n" +"Language-Team: Andylg \n" +"Language: ru_RU\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n" +"X-Generator: Poedit 3.4.2\n" + +msgid "Supports Painting" +msgstr "Рисование поддержек" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Колесо мыши" + +msgid "Section view" +msgstr "Отсечение вида" + +msgid "Reset direction" +msgstr "Сброс направления" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Колесо мыши" + +msgid "Pen size" +msgstr "Размер кисти" + +msgid "Left mouse button" +msgstr "Левая кнопка мыши" + +msgid "Enforce supports" +msgstr "Принудительная поддержка" + +msgid "Right mouse button" +msgstr "Правая кнопка мыши" + +msgid "Block supports" +msgstr "Блокировка поддержки" + +msgid "Shift + Left mouse button" +msgstr "Shift + Левая кнопка мыши" + +msgid "Erase" +msgstr "Очистить" + +msgid "Erase all painting" +msgstr "Очистить всё" + +msgid "Highlight overhang areas" +msgstr "Выделение свеса по углу" + +msgid "Gap fill" +msgstr "Заполнение пробелов" + +msgid "Perform" +msgstr "Выполнить" + +msgid "Gap area" +msgstr "Площадь пробела" + +msgid "Tool type" +msgstr "Тип инструмента" + +msgid "Smart fill angle" +msgstr "Угол для умной заливки" + +msgid "On overhangs only" +msgstr "Только на свесах" + +msgid "Auto support threshold angle: " +msgstr "Пороговый угол автоподдержки: " + +msgid "Circle" +msgstr "Окружность" + +msgid "Sphere" +msgstr "Сфера" + +msgid "Fill" +msgstr "Заливка" + +msgid "Gap Fill" +msgstr "Заполнение пробелов" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Позволяет рисовать на выбранных гранях, используя: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Выделение граней по углу свеса." + +msgid "No auto support" +msgstr "Откл. автоподдержку" + +msgid "Support Generated" +msgstr "Поддержка сгенерирована" + +msgid "Gizmo-Place on Face" +msgstr "Гизмо поверхностью на стол" + +msgid "Lay on face" +msgstr "Поверхностью на стол" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Количество пластиковых нитей превышает максимальное количество " +"поддерживаемое инструментом рисования. Только первые %1% материала будут " +"доступны в инструменте для рисования." + +msgid "Color Painting" +msgstr "Покраска" + +msgid "Pen shape" +msgstr "Форма кисти" + +msgid "Paint" +msgstr "Рисовать" + +msgid "Key 1~9" +msgstr "Клавиша 1~9" + +msgid "Choose filament" +msgstr "Выберите пруток" + +msgid "Edge detection" +msgstr "Обнаружение граней" + +msgid "Triangles" +msgstr "Треугольники" + +msgid "Filaments" +msgstr "Прутки" + +msgid "Brush" +msgstr "Кисть" + +msgid "Smart fill" +msgstr "Умная заливка" + +msgid "Bucket fill" +msgstr "Заливка" + +msgid "Height range" +msgstr "Диапазон высоты слоёв" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "Показать/скрыть каркас" + +msgid "Shortcut Key " +msgstr "Горячая клавиша " + +msgid "Triangle" +msgstr "Треугольник" + +msgid "Height Range" +msgstr "" +"Диапазон \n" +"высоты слоёв" + +msgid "Vertical" +msgstr "Вертикальная линия" + +msgid "Horizontal" +msgstr "Горизонтальная линия" + +msgid "Remove painted color" +msgstr "Удаление окрашенного участка" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Окрашено с использованием прутка %1%" + +msgid "Move" +msgstr "Перемещение" + +msgid "Gizmo-Move" +msgstr "Гизмо перемещения" + +msgid "Rotate" +msgstr "Поворот" + +msgid "Gizmo-Rotate" +msgstr "Гизмо поворота" + +msgid "Optimize orientation" +msgstr "Оптимизация положения модели" + +msgid "Apply" +msgstr "Применить" + +msgid "Scale" +msgstr "Масштаб" + +msgid "Gizmo-Scale" +msgstr "Гизмо масштаба" + +msgid "Error: Please close all toolbar menus first" +msgstr "Ошибка: пожалуйста, сначала закройте все меню панели инструментов." + +msgid "in" +msgstr "дюйм" + +msgid "mm" +msgstr "мм" + +msgid "Position" +msgstr "Позиция" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Вращение" + +msgid "Scale ratios" +msgstr "Коэф. масштаба" + +msgid "Object Operations" +msgstr "Операции с моделями" + +msgid "Volume Operations" +msgstr "Булевы операции с объёмами" + +msgid "Translate" +msgstr "Перемещение" + +msgid "Group Operations" +msgstr "Групповые манипуляции" + +msgid "Set Position" +msgstr "Задание позиции" + +msgid "Set Orientation" +msgstr "Задание поворота" + +msgid "Set Scale" +msgstr "Задание масштаба" + +msgid "Reset Position" +msgstr "Сброс позиции" + +msgid "Reset Rotation" +msgstr "Сброс вращения" + +msgid "World coordinates" +msgstr "Мировая СК" + +msgid "Object coordinates" +msgstr "СК модели" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Размер" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "Равномерное масштабирование" + +msgid "Planar" +msgstr "Плоский" + +msgid "Dovetail" +msgstr "Ласточкин хвост" + +msgid "Auto" +msgstr "Автоматич." + +msgid "Manual" +msgstr "Вручную" + +msgid "Plug" +msgstr "Шип-паз" + +msgid "Dowel" +msgstr "Штифт" + +msgid "Snap" +msgstr "Клипса" + +msgid "Prism" +msgstr "Призма" + +msgid "Frustum" +msgstr "Усечённый конус" + +msgid "Square" +msgstr "Квадрат" + +msgid "Hexagon" +msgstr "Шестиугольник" + +msgid "Keep orientation" +msgstr "Сохранить ориентацию" + +msgid "Place on cut" +msgstr "Срезом на стол" + +msgid "Flip upside down" +msgstr "Перевернуть вверх дном" + +msgid "Connectors" +msgstr "Соединения" + +msgid "Type" +msgstr "Тип" + +msgid "Style" +msgstr "Стиль" + +msgid "Shape" +msgstr "Форма" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Глубина" + +msgid "Groove" +msgstr "Паз" + +msgid "Width" +msgstr "Ширина" + +msgid "Flap Angle" +msgstr "Угол наклона" + +msgid "Groove Angle" +msgstr "Угол скоса" + +msgid "Part" +msgstr "Модель" + +msgid "Object" +msgstr "Модель" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Нажмите, чтобы перевернуть секущую плоскость\n" +"Двигайте, чтобы переместить секущую плоскость" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Нажмите, чтобы перевернуть секущую плоскость\n" +"Двигайте, чтобы переместить секущую плоскость\n" +"Правая кнопка мыши на части модели для переназначения стороны" + +msgid "Move cut plane" +msgstr "Перемещение секущей плоскости" + +msgid "Mode" +msgstr "Режим" + +msgid "Change cut mode" +msgstr "Выбор режима секущей плоскости" + +msgid "Tolerance" +msgstr "Допуск" + +msgid "Drag" +msgstr "Перетащить" + +msgid "Draw cut line" +msgstr "Нарисуйте линию разреза" + +msgid "Left click" +msgstr "Левая кнопка мыши" + +msgid "Add connector" +msgstr "Добавить соединение" + +msgid "Right click" +msgstr "Правая кнопка мыши" + +msgid "Remove connector" +msgstr "Удалить соединение" + +msgid "Move connector" +msgstr "Переместить соединение" + +msgid "Add connector to selection" +msgstr "Добавить соединение к выбранному" + +msgid "Remove connector from selection" +msgstr "Удалить соединение из выбранного" + +msgid "Select all connectors" +msgstr "Выбрать все соединения" + +# Разный перевод одного слова -Одно название действия Разрезать в другой в Правке -> Вырезать +msgid "Cut" +msgstr "Разрезать" + +msgid "Rotate cut plane" +msgstr "Поворот секущей плоскости" + +msgid "Remove connectors" +msgstr "Удалить соединения" + +msgid "Bulge" +msgstr "Выпуклость" + +msgid "Bulge proportion related to radius" +msgstr "Пропорция выпуклости клипсы, связанная с радиусом" + +msgid "Space" +msgstr "Пробел" + +msgid "Space proportion related to radius" +msgstr "Пропорция прорези в клипсе, связанная с радиусом" + +msgid "Confirm connectors" +msgstr "Подтвердить" + +msgid "Cancel" +msgstr "Отмена" + +msgid "Build Volume" +msgstr "Область построения" + +msgid "Flip cut plane" +msgstr "Перевернуть секущую плоскость" + +msgid "Groove change" +msgstr "Изменить паз" + +msgid "Reset" +msgstr "Сброс" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Изменено" + +msgid "Cut position" +msgstr "Положение секущей плоскости" + +msgid "Reset cutting plane" +msgstr "Сброс позиции секущей плоскости" + +msgid "Edit connectors" +msgstr "Редактировать соединения" + +msgid "Add connectors" +msgstr "Добавить соединения" + +msgid "Reset cut" +msgstr "Сброс" + +msgid "Reset cutting plane and remove connectors" +msgstr "Сброс позиции секущей плоскости и удаление всех соединений" + +msgid "Upper part" +msgstr "Верхняя часть" + +msgid "Lower part" +msgstr "Нижняя часть" + +msgid "Keep" +msgstr "Сохранять" + +msgid "Flip" +msgstr "Перевернуть" + +msgid "After cut" +msgstr "После разрезания" + +msgid "Cut to parts" +msgstr "Разрезать на части" + +msgid "Perform cut" +msgstr "Выполнить разрез" + +msgid "Warning" +msgstr "Предупреждение" + +msgid "Invalid connectors detected" +msgstr "Обнаружены недопустимые соединения" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "%1$d соединение выходит за контур модели" +msgstr[1] "%1$d соединения выходит за контур модели" +msgstr[2] "%1$d соединений выходит за контур модели" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "%1$d соединение находится за пределами модели" +msgstr[1] "%1$d соединения находится за пределами модели" +msgstr[2] "%1$d соединений находится за пределами модели" + +msgid "Some connectors are overlapped" +msgstr "Имеются пересекающие соединения" + +msgid "Select at least one object to keep after cutting." +msgstr "Выберите хотя бы одну из частей для сохранения после разреза." + +msgid "Cut plane is placed out of object" +msgstr "Секущая плоскость находится за пределами модели." + +msgid "Cut plane with groove is invalid" +msgstr "Текущее положение секущей плоскости с пазом недопустимо." + +msgid "Connector" +msgstr "Соединение" + +msgid "Cut by Plane" +msgstr "Разрез по плоскости" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"При работе режущего инструмента образовались открытые рёбра. Хотите починить " +"это сейчас?" + +msgid "Repairing model object" +msgstr "Починка модели" + +msgid "Cut by line" +msgstr "Разрез по линии" + +msgid "Delete connector" +msgstr "Удалить соединение" + +msgid "Mesh name" +msgstr "Имя сетки" + +msgid "Detail level" +msgstr "Уровень детализации" + +msgid "Decimate ratio" +msgstr "Коэффициент упрощения" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Обработка модели '%1%' с более чем 1 млн. треугольников может быть " +"медленной. Настоятельно рекомендуется упростить модель." + +msgid "Simplify model" +msgstr "Упростить полигональную сетку" + +msgid "Simplify" +msgstr "Упрощение полигональной сетки" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "В настоящее время упрощение работает только при выборе одной модели." + +msgid "Error" +msgstr "Ошибка" + +msgid "Extra high" +msgstr "Очень высокая" + +msgid "High" +msgstr "Высокая" + +msgid "Medium" +msgstr "Средняя" + +msgid "Low" +msgstr "Низкая" + +msgid "Extra low" +msgstr "Очень низкая" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "Треугольников: %d" + +msgid "Show wireframe" +msgstr "Показывать каркас" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +# ??? +msgid "Can't apply when process preview." +msgstr "Невозможно применить при предпросмотре нарезки." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Операция уже отменена. Пожалуйста, подождите несколько секунд." + +msgid "Face recognition" +msgstr "Распознавание граней" + +# ??? Выполнить распознавание +msgid "Perform Recognition" +msgstr "Выполнение распознавания" + +msgid "Brush size" +msgstr "Размер кисти" + +msgid "Brush shape" +msgstr "Форма кисти" + +msgid "Enforce seam" +msgstr "Принудительный шов" + +msgid "Block seam" +msgstr "Блокировка шва" + +msgid "Seam painting" +msgstr "Рисование шва" + +msgid "Remove selection" +msgstr "Удаление выделенного" + +msgid "Entering Seam painting" +msgstr "Вход в рисование шва" + +msgid "Leaving Seam painting" +msgstr "Выход из рисования шва" + +msgid "Paint-on seam editing" +msgstr "Редактирование рисования шва" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Шрифт" + +msgid "Thickness" +msgstr "Толщина" + +msgid "Text Gap" +msgstr "" +"Межбуквенный \n" +"интервал" + +msgid "Angle" +msgstr "Угол" + +msgid "" +"Embeded\n" +"depth" +msgstr "" +"Глубина\n" +"проникновения" + +msgid "Input text" +msgstr "Введите текст" + +msgid "Surface" +msgstr "На поверхности" + +msgid "Horizontal text" +msgstr "Горизонтальный текст" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Мышь вверх или вниз" + +msgid "Rotate text" +msgstr "Поворот текста" + +msgid "Text shape" +msgstr "Форма текста" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Поворот текста" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Перемещение текста" + +msgid "Set Mirror" +msgstr "Задание отражения" + +msgid "Embossed text" +msgstr "Рельефный текст" + +msgid "Enter emboss gizmo" +msgstr "Вход в гизмо рельефный текст" + +msgid "Leave emboss gizmo" +msgstr "Выход из гизмо рельефный текст" + +msgid "Embossing actions" +msgstr "Действие c рельефным текстом" + +msgid "Emboss" +msgstr "Рельефный текст" + +msgid "NORMAL" +msgstr "NORMAL" + +msgid "SMALL" +msgstr "SMALL" + +msgid "ITALIC" +msgstr "ITALIC" + +msgid "SWISS" +msgstr "SWISS" + +msgid "MODERN" +msgstr "MODERN" + +msgid "First font" +msgstr "Первый шрифт" + +msgid "Default font" +msgstr "Шрифт по умолчанию" + +msgid "Advanced" +msgstr "Дополнительно" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"Текст не может быть написан выбранным шрифтом. Пожалуйста, выберите другой " +"шрифт." + +msgid "Embossed text cannot contain only white spaces." +msgstr "Рельефный текст не может содержать одни пробелы." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "Текст содержит символ ('?'), которого нет в шрифте." + +msgid "Text input doesn't show font skew." +msgstr "Визуализация наклона шрифта в окне ввода текста не поддерживается." + +msgid "Text input doesn't show font boldness." +msgstr "Визуализация толщины шрифта в окне ввода текста не поддерживается." + +msgid "Text input doesn't show gap between lines." +msgstr "" +"Визуализация межстрочного интервала в окне ввода текста не поддерживается." + +msgid "Too tall, diminished font height inside text input." +msgstr "Слишком высокий. Уменьшите высоту шрифта в окне ввода текста." + +msgid "Too small, enlarged font height inside text input." +msgstr "Слишком маленький. Увеличьте высоту шрифта в окне ввода текста." + +msgid "Text doesn't show current horizontal alignment." +msgstr "Текст не отображает текущее горизонтальное выравнивание." + +msgid "Revert font changes." +msgstr "Сброс шрифта." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "Шрифт \"%1%\" не может быть выбран." + +msgid "Operation" +msgstr "Операция" + +msgid "Join" +msgstr "Добавление" + +msgid "Click to change text into object part." +msgstr "Выберите, если хотите преобразовать текст в часть модели." + +msgid "You can't change a type of the last solid part of the object." +msgstr "Вы не можете изменить тип последнего твердотельного элемента модели." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Вырезание" + +msgid "Click to change part type into negative volume." +msgstr "Выберите, если хотите произвести операцию вычитания текста из модели." + +msgid "Modifier" +msgstr "Модификатор" + +msgid "Click to change part type into modifier." +msgstr "Выберите, если хотите изменить тип детали на Модификатор." + +msgid "Change Text Type" +msgstr "Изменить тип текста" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Переименование стиля (%1%) для рельефного текста" + +msgid "Name can't be empty." +msgstr "Имя не может быть пустым." + +msgid "Name has to be unique." +msgstr "Имя должно быть уникальным." + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "Переименовать стиль" + +msgid "Rename current style." +msgstr "Переименовать текущий стиль." + +msgid "Can't rename temporary style." +msgstr "Невозможно переименовать временный стиль." + +msgid "First Add style to list." +msgstr "Сначала добавьте стиль в список." + +#, boost-format +msgid "Save %1% style" +msgstr "Сохранить стиль \"%1%\"." + +msgid "No changes to save." +msgstr "Нет изменений для сохранения." + +msgid "New name of style" +msgstr "Новое имя стиля" + +msgid "Save as new style" +msgstr "Сохранить как новый стиль" + +msgid "Only valid font can be added to style." +msgstr "Только корректный шрифт может быть добавлен в стиль." + +msgid "Add style to my list." +msgstr "Добавьте стиль в мой список." + +msgid "Save as new style." +msgstr "Сохранить стиль с новым именем." + +msgid "Remove style" +msgstr "Удалить стиль" + +msgid "Can't remove the last existing style." +msgstr "Нельзя удалить последний существующий стиль." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "Вы уверены, что хотите навсегда удалить стиль \"%1%\"?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "Удалить стиль \"%1%\"." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "Не удается удалить \"%1%\". Это последний стиль." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "Невозможно удалить временный стиль \"%1%\"." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Стиль \"%1%\" изменён" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "Текущий стиль \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"При смене стиля на \"%1%\" изменения текущего стиля будут утеряны.\n" +"\n" +"Хотите продолжить?" + +msgid "Not valid style." +msgstr "Не допустимый стиль." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "Стиль \"%1%\" не может быть использован и будет удалён из списка." + +msgid "Unset italic" +msgstr "Убрать стиль Italic" + +msgid "Set italic" +msgstr "Задать стиль Italic" + +msgid "Unset bold" +msgstr "Убрать стиль Bold" + +msgid "Set bold" +msgstr "Задать стиль Bold" + +msgid "Revert text size." +msgstr "Сброс размера шрифта." + +msgid "Revert embossed depth." +msgstr "Сброс высоты рельефа шрифта." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"Дополнительные параметры для выбранного шрифта изменить нельзя.\n" +"Выберите другой шрифт." + +msgid "Revert using of model surface." +msgstr "Сброс расположения." + +msgid "Revert Transformation per glyph." +msgstr "Сброс преобразования." + +msgid "Set global orientation for whole text." +msgstr "Задать глобальную ориентацию для всего текста." + +msgid "Set position and orientation per glyph." +msgstr "Задать положение и ориентацию для каждого глифа." + +msgctxt "Alignment" +msgid "Left" +msgstr "Слева" + +msgctxt "Alignment" +msgid "Center" +msgstr "По центру" + +msgctxt "Alignment" +msgid "Right" +msgstr "Справа" + +msgctxt "Alignment" +msgid "Top" +msgstr "Сверху" + +msgctxt "Alignment" +msgid "Middle" +msgstr "По середине" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Снизу" + +msgid "Revert alignment." +msgstr "Сброс выравнивания." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "пунктов" + +msgid "Revert gap between characters" +msgstr "Сброс расстояния между буквами" + +msgid "Distance between characters" +msgstr "Расстояние между буквами" + +msgid "Revert gap between lines" +msgstr "Сброс расстояния между строк" + +msgid "Distance between lines" +msgstr "Расстояние между строк" + +msgid "Undo boldness" +msgstr "Сброс толщины шрифта" + +msgid "Tiny / Wide glyphs" +msgstr "Тонкие/Толстые символы" + +msgid "Undo letter's skew" +msgstr "Сброс наклона букв" + +msgid "Italic strength ratio" +msgstr "Коэффициент наклона символов" + +msgid "Undo translation" +msgstr "Сброс перемещения" + +msgid "Distance of the center of the text to the model surface." +msgstr "Расстояние от центра текста до поверхности модели." + +msgid "Undo rotation" +msgstr "Сброс вращения" + +msgid "Rotate text Clock-wise." +msgstr "Поворот текста по часовой стрелке." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"Разблокировать вращение текста при перемещении текста по поверхности модели." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" +"Заблокировать вращение текста при перемещении текста по поверхности модели." + +msgid "Select from True Type Collection." +msgstr "Выберите True Type шрифт." + +msgid "Set text to face camera" +msgstr "Текст лицевой стороной к камере" + +msgid "Orient the text towards the camera." +msgstr "Сориентировать текст по направлению к камере." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"Т.к. не удалось загрузить тот же шрифт (\"%1%\"), приложение выбрало похожий " +"шрифт (\"%2%\"). Выберите шрифт для включения редактирования текста." + +msgid "No symbol" +msgstr "Нет символов" + +msgid "Loading" +msgstr "Загрузка" + +msgid "In queue" +msgstr "В очереди" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Высота" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Только на поверхности" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "Ориентация по глифу" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Выравнивание" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Межбуквенный интервал" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Межстрочный интервал" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Толщина шрифта" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Коэффициент наклона" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Сдвиг от поверхности" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "Сохранять верт. ориентацию" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Коллекция" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "Поворот SVG" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "Перемещение SVG" + +msgid "Enter SVG gizmo" +msgstr "Вход в гизмо SVG" + +msgid "Leave SVG gizmo" +msgstr "Выход из гизмо SVG" + +msgid "SVG actions" +msgstr "Действия с SVG" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Непрозрачность (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Цветовой градиент (%1%)" + +msgid "Undefined fill type" +msgstr "Неопределенный тип заливки" + +msgid "Linear gradient" +msgstr "Линейный градиент" + +msgid "Radial gradient" +msgstr "Радиальный градиент" + +msgid "Open filled path" +msgstr "Открытый контур с заливкой" + +msgid "Undefined stroke type" +msgstr "Неопределенный тип обводки" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" +"Контур не может быть исправлен от проблемы самопересечения и дублирующихся " +"точек." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"У конечной фигуры имеется самопересечение или несколько точек с одинаковыми " +"координатами." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "Фигура помечена как невидимая (%1%)." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "Заливка фигуры (%1%) не поддерживается: %2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "Обводка фигуры (%1%) слишком тонкая (минимальная толщина %2% мм)." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "Обводка фигуры (%1%) не поддерживается: %2%." + +msgid "Face the camera" +msgstr "Лицевой стороной к камере" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Неизвестное имя файла" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "Путь к файлу SVG \"%1%\"" + +msgid "Reload SVG file from disk." +msgstr "Перезагрузить SVG файл с диска." + +msgid "Change file" +msgstr "Изменить файл" + +msgid "Change to another .svg file" +msgstr "Выбрать другой SVG файл." + +msgid "Forget the file path" +msgstr "Забыть путь к файлу" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"Не сохранять локальный путь к 3MF файлу.\n" +"Также отключается опция «Перезагрузить с диска»." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Запечь" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Запекание SVG в модель т.е. преобразование в нередактируемую." + +msgid "Save as" +msgstr "Сохранить как" + +msgid "Save SVG file" +msgstr "Сохранить SVG файл" + +msgid "Save as '.svg' file" +msgstr "Сохранить как '.svg' файл." + +msgid "Size in emboss direction." +msgstr "Глубина рельефа." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "Масштаб также изменяет количество выборок кривой (%1%)" + +msgid "Width of SVG." +msgstr "Ширина SVG." + +msgid "Height of SVG." +msgstr "Высота SVG." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "Блокировка/разблокировка пропорции SVG." + +msgid "Reset scale" +msgstr "Сброс масштаба" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "Расстояние от центра SVG до поверхности модели." + +msgid "Reset distance" +msgstr "Сбросить расстояние" + +msgid "Reset rotation" +msgstr "Сброс вращения" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" +"Блокировка/разблокировка угла поворота при перетаскивании над поверхностью." + +msgid "Mirror vertically" +msgstr "Зеркалировать по вертикали" + +msgid "Mirror horizontally" +msgstr "Зеркалировать по горизонтали" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "Изменение типа SVG" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Отразить" + +msgid "Choose SVG file for emboss:" +msgstr "Выберите SVG файл для рельефа:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "Файл не существует (%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "Имя файла должно заканчиваться на \".svg\", а не на %1%" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "Парсер NanoSVG не может прочитать файл (%1%)." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "Файл SVG не содержит ни одного контура для рельефного текста (%1%)." + +msgid "Vertex" +msgstr "Вершина" + +msgid "Edge" +msgstr "Ребро" + +msgid "Plane" +msgstr "Грань" + +msgid "Point on edge" +msgstr "Точка на ребре" + +msgid "Point on circle" +msgstr "Точка на окружности" + +msgid "Point on plane" +msgstr "Точка на грани" + +msgid "Center of edge" +msgstr "Центр ребра" + +msgid "Center of circle" +msgstr "Центр окружности" + +msgid "ShiftLeft mouse button" +msgstr "Левая кнопка мыши" + +msgid "Select feature" +msgstr "Выбрать элемент" + +msgid "Select point" +msgstr "Выбрать точку" + +# ?????? В двух местах - в одном месте действие в другом кнопка, как быть? +msgid "Delete" +msgstr "Удалить" + +msgid "Restart selection" +msgstr "Выбрать заново" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "Отменить выбор" + +msgid "Measure" +msgstr "Измерения" + +msgid "Edit to scale" +msgstr "Редактировать масштаб" + +msgctxt "Verb" +msgid "Scale" +msgstr "Масштаб" + +msgid "None" +msgstr "Нет" + +msgid "Diameter" +msgstr "Диаметр" + +msgid "Length" +msgstr "Длина" + +msgid "Selection" +msgstr "Выделение" + +msgid "Copy to clipboard" +msgstr "Скопировать в буфер обмена" + +msgid "Perpendicular distance" +msgstr "Длина перпендикуляра" + +msgid "Distance" +msgstr "Расстояние" + +msgid "Direct distance" +msgstr "Длина прямой" + +msgid "Distance XYZ" +msgstr "Расстояние XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Примечание" + +msgid "Undefined" +msgstr "Не указано" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% было заменено на %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "Возможно, эта конфигурация создана в более новой версии Snapmaker Orca." + +msgid "Some values have been replaced. Please check them:" +msgstr "Некоторые значения были заменены. Пожалуйста, проверьте их:" + +# ?????6 В одном месте юзается? +msgid "Process" +msgstr "Профиль процесса" + +# ?????6 В одном месте юзается? +msgid "Filament" +msgstr "Профиль прутка" + +msgid "Machine" +msgstr "Принтер" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "" +"Пакет конфигурации был загружен, но некоторые значения не были распознаны." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Файл конфигурации \"%1%\" был загружен, но некоторые значения не были " +"распознаны." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca завершает работу из-за нехватки памяти. Возможно, это баг " +"программы. Будем признательны, если вы сообщите о проблеме нашей команде." + +msgid "Fatal error" +msgstr "Критическая ошибка" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca завершит работу из-за ошибки локализации. Будем признательны, " +"если вы сообщите о конкретном сценарии возникновения этой проблемы." + +msgid "Critical error" +msgstr "Критическая ошибка" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Неизвестная ошибка Snapmaker Orca : %1%" + +msgid "Untitled" +msgstr "Без названия" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Загрузка сетевого плагина для принтеров Bambu" + +msgid "Login information expired. Please login again." +msgstr "Срок действия данных для входа истек. Пожалуйста, авторизуйтесь снова." + +msgid "Incorrect password" +msgstr "Неверный пароль" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "Сбой подключения к %s [Серийный №:%s, код=%s]!" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Для работы некоторых функций Snapmaker Orca требуется Microsoft WebView2 " +"Runtime.\n" +"Нажмите Да, чтобы установить." + +msgid "WebView2 Runtime" +msgstr "WebView2 Runtime" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Хотите продолжить?" + +msgid "Remember my choice" +msgstr "Запомнить выбор" + +msgid "Loading configuration" +msgstr "Загрузка настроек" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "" +"Нажмите OK, чтобы загрузить последнюю версию в браузере по умолчанию: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Orca Slice нуждается в обновлении." + +msgid "This is the newest version." +msgstr "У вас стоит самая последняя версия." + +msgid "Info" +msgstr "Информация" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"Возможно, файл конфигурации Snapmaker Orca повреждён и не может быть обработан.\n" +"Snapmaker Orca попытался воссоздать файл конфигурации.\n" +"Обратите внимание, что настройки приложения будут потеряны, но профили " +"принтера не будут затронуты." + +msgid "Rebuild" +msgstr "Пересоздание" + +msgid "Loading current presets" +msgstr "Загрузка текущих профилей" + +msgid "Loading a mode view" +msgstr "Загрузка режима отображения" + +msgid "Choose one file (3mf):" +msgstr "Выберите один файл (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "" +"Выберите один или несколько файлов (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Выберите один или несколько файлов (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "Выберите zip-файл" + +msgid "Choose one file (gcode/3mf):" +msgstr "Выберите один файл (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "В некоторых профилях имеются изменения." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Вы можете сохранить изменённые профили в новом проекте, отменить или " +"сохранить изменения в новые профили." + +msgid "User logged out" +msgstr "Пользователь вышел из системы" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "Создание или открытие файла проекта во время нарезки не допускается!" + +msgid "Open Project" +msgstr "Открыть проект" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"Слишком старая версия Snapmaker Orca. Для корректной работы обновите программу " +"до последней версии." + +msgid "Privacy Policy Update" +msgstr "Обновление политики конфиденциальности" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"Количество пользовательских профилей, кэшированных в облаке, превысило " +"установленный лимит. Новые создаваемые пользовательские профили можно будет " +"использовать только локально." + +msgid "Sync user presets" +msgstr "Синхронизировать пользовательские профили" + +msgid "Loading user preset" +msgstr "Загрузка пользовательского профиля" + +msgid "Switching application language" +msgstr "Изменение языка приложения" + +msgid "Select the language" +msgstr "Выбор языка" + +msgid "Language" +msgstr "Язык" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Загрузки всё ещё продолжаются" + +msgid "Stop them and continue anyway?" +msgstr "Остановить их и продолжить?" + +msgid "Ongoing uploads" +msgstr "Текущие загрузки" + +msgid "Select a G-code file:" +msgstr "Выберите файл G-кода:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"Не удалось запустить загрузку по URL-адресу. Не задана папка назначения. " +"Пожалуйста, задайте папку назначения в мастере настройки." + +msgid "Import File" +msgstr "Импорт файла" + +msgid "Choose files" +msgstr "Выберите файлы" + +msgid "New Folder" +msgstr "Новая папка" + +msgid "Open" +msgstr "Открыть" + +msgid "Rename" +msgstr "Переименовать" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Ошибка инициализации графического интерфейса приложения" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Критическая ошибка, обнаружено исключение: %1%" + +msgid "Quality" +msgstr "Качество" + +msgid "Shell" +msgstr "Оболочка" + +msgid "Infill" +msgstr "Заполнение" + +msgid "Support" +msgstr "Поддержка" + +msgid "Flush options" +msgstr "Параметры очистки" + +msgid "Speed" +msgstr "Скорость" + +msgid "Strength" +msgstr "Прочность" + +msgid "Top Solid Layers" +msgstr "Сплошных слоёв сверху" + +msgid "Top Minimum Shell Thickness" +msgstr "Минимальная толщина оболочки сверху" + +msgid "Bottom Solid Layers" +msgstr "Сплошных слоёв снизу" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Минимальная толщина оболочки снизу" + +msgid "Ironing" +msgstr "Разглаживание" + +msgid "Fuzzy Skin" +msgstr "Нечёткая оболочка" + +msgid "Extruders" +msgstr "Экструдеры" + +msgid "Extrusion Width" +msgstr "Ширина экструзии" + +msgid "Wipe options" +msgstr "Параметры очистки" + +msgid "Bed adhesion" +msgstr "Адгезия к столу" + +msgid "Add part" +msgstr "Добавить элемент" + +msgid "Add negative part" +msgstr "Добавить объём для вычитания" + +msgid "Add modifier" +msgstr "Добавить модификатор" + +msgid "Add support blocker" +msgstr "Добавить блокировщик поддержки" + +msgid "Add support enforcer" +msgstr "Добавить принудительную поддержку" + +msgid "Add text" +msgstr "Добавить текст" + +msgid "Add negative text" +msgstr "Добавить текст для вычитания" + +msgid "Add text modifier" +msgstr "Добавить текстовый модификатор" + +msgid "Add SVG part" +msgstr "Добавить SVG элемент" + +msgid "Add negative SVG" +msgstr "Добавить SVG для вычитания" + +msgid "Add SVG modifier" +msgstr "Добавить SVG модификатор" + +msgid "Select settings" +msgstr "Выберите параметры" + +msgid "Hide" +msgstr "Скрыть" + +msgid "Show" +msgstr "Показать" + +msgid "Del" +msgstr "Del" + +msgid "Delete the selected object" +msgstr "Удаление выбранных моделей" + +msgid "Load..." +msgstr "Загрузить…" + +msgid "Cube" +msgstr "Куб" + +msgid "Cylinder" +msgstr "Цилиндр" + +msgid "Cone" +msgstr "Конус" + +msgid "Disc" +msgstr "Диск" + +msgid "Torus" +msgstr "Тороид" + +msgid "Orca Cube" +msgstr "Куб Orca Design" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "FDM тест от Autodesk" + +msgid "Voron Cube" +msgstr "Куб Voron Design" + +msgid "Stanford Bunny" +msgstr "Стенфордский кролик" + +msgid "Orca String Hell" +msgstr "«Струнный ад» Orca" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"На верхней поверхности модели присутствует рельефный текст. Для достижения " +"оптимального результата рекомендуется установить значение «Порог одного " +"периметра» (min_width_top_surface)\" равным 0, чтобы хорошо работал параметр " +"«Только один периметр на верхней поверхности».\n" +"Да - Изменить эти настройки автоматически\n" +"Нет - Не изменять эти настройки" + +msgid "Text" +msgstr "Текст" + +msgid "Height range Modifier" +msgstr "Модификатор диапазона высоты слоёв" + +msgid "Add settings" +msgstr "Добавить настройки" + +msgid "Change type" +msgstr "Изменить тип" + +msgid "Set as an individual object" +msgstr "Задать как отдельную модель" + +msgid "Set as individual objects" +msgstr "Задать как отдельные модели" + +msgid "Fill bed with copies" +msgstr "Заполнить весь стол копиями" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Заполнить оставшуюся область печатного стола копиями выбранной модели." + +msgid "Printable" +msgstr "Для печати" + +msgid "Fix model" +msgstr "Починить модель" + +msgid "Export as one STL" +msgstr "Экспорт в один STL" + +msgid "Export as STLs" +msgstr "Экспорт в отдельные STL" + +msgid "Reload from disk" +msgstr "Перезагрузить с диска" + +msgid "Reload the selected parts from disk" +msgstr "Перезагрузить выбранные модели с диска" + +msgid "Replace with STL" +msgstr "Заменить на другую модель" + +msgid "Replace the selected part with new STL" +msgstr "Заменить выбранную модель другой" + +msgid "Change filament" +msgstr "Сменить пруток" + +msgid "Set filament for selected items" +msgstr "Задать пруток для выбранных элементов" + +msgid "Default" +msgstr "По умолчанию" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Пруток %d" + +msgid "current" +msgstr "текущий" + +msgid "Scale to build volume" +msgstr "Отмасштабировать под область печати" + +msgid "Scale an object to fit the build volume" +msgstr "Отмасштабировать выбранную модель до объёма стола" + +msgid "Flush Options" +msgstr "Опции очистки" + +msgid "Flush into objects' infill" +msgstr "Очистка в заполнение модели" + +msgid "Flush into this object" +msgstr "Очистка в модель" + +msgid "Flush into objects' support" +msgstr "Очистка в поддержку" + +msgid "Edit in Parameter Table" +msgstr "Редактирование таблицы параметров" + +msgid "Convert from inch" +msgstr "Преобразовать размеры из дюймов" + +msgid "Restore to inch" +msgstr "Восстановить размеры в дюймы" + +msgid "Convert from meter" +msgstr "Преобразовать размеры из метров" + +msgid "Restore to meter" +msgstr "Восстановить размеры в метры" + +# при выборе на столе +msgid "Assemble" +msgstr "Объединить в сборку" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "" +"Объединение выбранных объектов в модель, состоящую из несколько частей." + +msgid "Assemble the selected objects to an object with single part" +msgstr "Объединение выбранных моделей в единую." + +msgid "Mesh boolean" +msgstr "Булевы операции" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Булевы операции с сеткой, включая объединение и вычитание" + +msgid "Along X axis" +msgstr "Вдоль оси X" + +msgid "Mirror along the X axis" +msgstr "Отразить модель вдоль оси X" + +msgid "Along Y axis" +msgstr "Вдоль оси Y" + +msgid "Mirror along the Y axis" +msgstr "Отразить модель вдоль оси Y" + +msgid "Along Z axis" +msgstr "Вдоль оси Z" + +msgid "Mirror along the Z axis" +msgstr "Отразить модель вдоль оси Z" + +msgid "Mirror object" +msgstr "Отразить модель" + +msgid "Edit text" +msgstr "Изменить текст" + +msgid "Ability to change text, font, size, ..." +msgstr "Возможность изменять текст, шрифт, размер и т.д." + +msgid "Edit SVG" +msgstr "Изменить SVG" + +msgid "Change SVG source file, projection, size, ..." +msgstr "Изменение исходного файла SVG, проекции, размера..." + +msgid "Invalidate cut info" +msgstr "Удалить информацию о разрезе" + +msgid "Add Primitive" +msgstr "Добавить примитив" + +msgid "Add Handy models" +msgstr "Добавьте тестовую модель" + +msgid "Add Models" +msgstr "Добавить модель" + +msgid "Show Labels" +msgstr "Показать имена файлов" + +msgid "To objects" +msgstr "На модели" + +msgid "Split the selected object into multiple objects" +msgstr "Разделить выбранную модель на отдельные модели" + +msgid "To parts" +msgstr "На части" + +msgid "Split the selected object into multiple parts" +msgstr "Разделить выбранную модель на отдельные части" + +msgid "Split" +msgstr "Разделить" + +msgid "Split the selected object" +msgstr "Разделить выбранную модель" + +msgid "Auto orientation" +msgstr "Автоориентация" + +msgid "Auto orient the object to improve print quality." +msgstr "Автоориентация модели для улучшения качества печати." + +msgid "Select All" +msgstr "Выбрать всё" + +msgid "select all objects on current plate" +msgstr "Выбрать все модели на текущем столе" + +msgid "Delete All" +msgstr "Удалить всё" + +msgid "delete all objects on current plate" +msgstr "Удаление всех моделей на текущем столе" + +msgid "Arrange" +msgstr "Расставить" + +msgid "arrange current plate" +msgstr "Расстановка моделей на текущем столе" + +msgid "Reload All" +msgstr "Перезагрузить всё" + +msgid "reload all from disk" +msgstr "Перезагрузить всё с диска" + +msgid "Auto Rotate" +msgstr "Автоповорот" + +msgid "auto rotate current plate" +msgstr "Автоповорот моделей на текущем стола" + +msgid "Delete Plate" +msgstr "Удалить стол" + +msgid "Remove the selected plate" +msgstr "Удалить выбранный стол" + +msgid "Clone" +msgstr "Сделать копию" + +msgid "Simplify Model" +msgstr "Упростить полигональную сетку" + +msgid "Center" +msgstr "По центру" + +msgid "Edit Process Settings" +msgstr "Редактировать настройки процесса печати" + +msgid "Edit print parameters for a single object" +msgstr "Редактировать параметры печати для одной модели" + +msgid "Change Filament" +msgstr "Сменить пруток" + +msgid "Set Filament for selected items" +msgstr "Задать пруток для выбранных элементов" + +msgid "Unlock" +msgstr "Разблокировать" + +msgid "Lock" +msgstr "Заблокировать" + +msgid "Edit Plate Name" +msgstr "Изменить имя печатной пластины" + +msgid "Name" +msgstr "Имя" + +msgid "Fila." +msgstr "Прут." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "Исправлена %1$d ошибка" +msgstr[1] "Исправлено %1$d ошибки" +msgstr[2] "Исправлено %1$d ошибок" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Ошибка: %1$d открытое ребро." +msgstr[1] "Ошибка: %1$d открытых ребра." +msgstr[2] "Ошибка: %1$d открытых рёбер." + +msgid "Remaining errors" +msgstr "Осталось ошибок" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d открытое ребро" +msgstr[1] "%1$d открытых ребра" +msgstr[2] "%1$d открытых рёбер" + +msgid "Right click the icon to fix model object" +msgstr "Нажмите правой кнопкой мыши на значок, чтобы починить модель" + +msgid "Right button click the icon to drop the object settings" +msgstr "Нажмите правой кнопкой мыши на значок, чтобы изменить настройки модели" + +msgid "Click the icon to reset all settings of the object" +msgstr "Нажмите на значок, чтобы сбросить все настройки модели" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Нажмите правой кнопкой мыши на значок, чтобы разрешить/запретить печать " +"модели" + +msgid "Click the icon to toggle printable property of the object" +msgstr "Нажмите на значок, чтобы разрешить/запретить печать модели" + +msgid "Click the icon to edit support painting of the object" +msgstr "Нажмите на значок, чтобы отредактировать рисунок поддержки этой модели" + +msgid "Click the icon to edit color painting of the object" +msgstr "Нажмите на значок, чтобы изменить цвет модели" + +msgid "Click the icon to shift this object to the bed" +msgstr "Нажмите на значок, чтобы переместить эту модель на стол" + +msgid "Loading file" +msgstr "Загрузка файла" + +msgid "Error!" +msgstr "Ошибка!" + +msgid "Failed to get the model data in the current file." +msgstr "Не удалось получить данные модели из текущего файла." + +msgid "Generic" +msgstr "Базовый примитив" + +msgid "Add Modifier" +msgstr "Добавление модификатора" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Переключение в режим работы с моделями для редактирования настроек " +"модификатора." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Переключение в режим работы с моделями для редактирования настроек процесса " +"печати." + +msgid "Delete connector from object which is a part of cut" +msgstr "Удаление соединения из модели, которое является частью разреза" + +msgid "Delete solid part from object which is a part of cut" +msgstr "" +"Удаление твердотельной части из модели, которая является частью разреза" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "" +"Удаление объёма для вычитания из модели, которая является частью разреза" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Для сохранения информации о разрезе, вы можете удалить все соединения из " +"всех связанных объектов." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"Это действие приведёт к удалению информации о разрезе.\n" +"После этого согласованность модели не может быть гарантирована.\n" +"\n" +"Чтобы манипулировать с твердотельными частями или объёмами для вычитания, " +"необходимо сначала удалить информацию о сделанном разрезе." + +msgid "Delete all connectors" +msgstr "Удалить все соединения" + +msgid "Deleting the last solid part is not allowed." +msgstr "Удаление последней твердотельной части не допускается." + +msgid "The target object contains only one part and can not be splited." +msgstr "Целевая модель едина и не может быть разделена на части." + +msgid "Assembly" +msgstr "Сборка" + +msgid "Cut Connectors information" +msgstr "Информация о вырезанных соединениях" + +msgid "Object manipulation" +msgstr "Манипуляция над моделями" + +msgid "Group manipulation" +msgstr "Групповые манипуляции" + +msgid "Object Settings to modify" +msgstr "Параметры модели для изменения" + +msgid "Part Settings to modify" +msgstr "Параметры элемента для изменения" + +msgid "Layer range Settings to modify" +msgstr "Изменение параметров диапазона слоёв" + +msgid "Part manipulation" +msgstr "Манипуляция с частями" + +msgid "Instance manipulation" +msgstr "Манипуляция с копиями" + +msgid "Height ranges" +msgstr "Диапазон высот слоёв" + +msgid "Settings for height range" +msgstr "Настройки для диапазона высот слоёв" + +msgid "Layer" +msgstr "Слой" + +msgid "Selection conflicts" +msgstr "Конфликты при выборе" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Если первый выбранный элемент является моделью, то второй тоже должен быть " +"моделью." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Если первый выбранный элемент является частью модели, то второй должен быть " +"частью той же модели." + +msgid "The type of the last solid object part is not to be changed." +msgstr "Вы не можете изменить тип последнего твердотельного элемента модели." + +msgid "Negative Part" +msgstr "Объём для вычитания" + +msgid "Support Blocker" +msgstr "Блокировщик поддержки" + +msgid "Support Enforcer" +msgstr "Принудительная поддержка" + +msgid "Type:" +msgstr "Тип:" + +msgid "Choose part type" +msgstr "Выберите тип элемента" + +msgid "Enter new name" +msgstr "Введите новое имя" + +msgid "Renaming" +msgstr "Переименование" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "Следующая модель были успешно починена" +msgstr[1] "Следующие модели были успешно починены" +msgstr[2] "Следующие модели были успешно починены" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Не удалось починить следующую модель" +msgstr[1] "Не удалось починить следующие модели" +msgstr[2] "Не удалось починить следующие модели" + +msgid "Repairing was canceled" +msgstr "Ремонт был отменён" + +msgid "Additional process preset" +msgstr "Доп. настройки профиля процесса" + +msgid "Remove parameter" +msgstr "Удалить параметр" + +msgid "to" +msgstr "до" + +msgid "Remove height range" +msgstr "Удаление диапазона высот слоёв" + +msgid "Add height range" +msgstr "Добавление диапазон высот слоёв" + +msgid "Invalid numeric." +msgstr "Неправильное числовое значение." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"Одна ячейка может быть скопирована только в одну или несколько ячеек одного " +"и того же столбца." + +msgid "multiple cells copy is not supported" +msgstr "копирование нескольких ячеек не поддерживается" + +msgid "Outside" +msgstr "Вне стола" + +msgid "Layer height" +msgstr "Высота слоя" + +msgid "Wall loops" +msgstr "Периметров" + +msgid "Infill density(%)" +msgstr "Плот. заполнения (%)" + +msgid "Auto Brim" +msgstr "Автокайма" + +msgid "Mouse ear" +msgstr "Мышиные ушки" + +msgid "Outer brim only" +msgstr "Кайма только снаружи" + +msgid "Inner brim only" +msgstr "Кайма только внутри" + +msgid "Outer and inner brim" +msgstr "Кайма снаружи и внутри" + +msgid "No-brim" +msgstr "Без каймы" + +msgid "Outer wall speed" +msgstr "Скор. внеш. периметра" + +msgid "Plate" +msgstr "Стол" + +msgid "Brim" +msgstr "Кайма" + +msgid "Object/Part Setting" +msgstr "Настройка для модели/частей" + +msgid "Reset parameter" +msgstr "Сброс параметра" + +msgid "Multicolor Print" +msgstr "Многоцветная печать" + +msgid "Line Type" +msgstr "Тип линии" + +msgid "More" +msgstr "Подробнее" + +msgid "Open Preferences." +msgstr "Открыть настройки приложения." + +msgid "Open next tip." +msgstr "Следующий совет." + +msgid "Open Documentation in web browser." +msgstr "Открыть документацию в браузере." + +msgid "Color" +msgstr "Цвет" + +msgid "Pause" +msgstr "Пауза" + +msgid "Template" +msgstr "Шаблон" + +msgid "Custom" +msgstr "Пользовательский" + +msgid "Pause:" +msgstr "Пауза:" + +msgid "Custom Template:" +msgstr "Шаблон пользовательского G-кода:" + +msgid "Custom G-code:" +msgstr "Пользовательский G-код:" + +msgid "Custom G-code" +msgstr "Пользовательский G-код" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Введите пользовательский G-код для текущего слоя:" + +msgid "Jump to Layer" +msgstr "Перейти к слою" + +msgid "Please enter the layer number" +msgstr "Пожалуйста, введите номер слоя" + +msgid "Add Pause" +msgstr "Добавить паузу" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Вставить команду паузы в начале этого слоя." + +msgid "Add Custom G-code" +msgstr "Добавить пользовательский G-код" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Вставить пользовательский G-код в начале этого слоя." + +msgid "Add Custom Template" +msgstr "Добавить шаблон пользовательского G-кода" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Вставить шаблон пользовательского G-кода в начале этого слоя." + +msgid "Filament " +msgstr "Пруток " + +msgid "Change filament at the beginning of this layer." +msgstr "Сменить пластиковую нить в начале этого слоя." + +msgid "Delete Pause" +msgstr "Удалить паузу печати" + +msgid "Delete Custom Template" +msgstr "Удалить шаблон пользовательского G-кода" + +msgid "Edit Custom G-code" +msgstr "Изменить пользовательский G-код" + +msgid "Delete Custom G-code" +msgstr "Удалить пользовательский G-код" + +msgid "Delete Filament Change" +msgstr "Удалить команду смены прутка" + +msgid "No printer" +msgstr "Принтер не выбран" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Не удалось подключиться к серверу" + +msgid "Check the status of current system services" +msgstr "Проверка состояния текущих системных служб" + +msgid "code" +msgstr "код" + +msgid "Failed to connect to cloud service" +msgstr "Не удалось подключиться к облачному сервису" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "" +"Для просмотра состояния статуса сервиса нажмите на вышерасположенную ссылку" + +msgid "Failed to connect to the printer" +msgstr "Не удалось подключиться к принтеру" + +msgid "Connection to printer failed" +msgstr "Не удалось подключиться к принтеру" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Пожалуйста, проверьте сетевое подключение принтера с Snapmaker Orca." + +msgid "Connecting..." +msgstr "Подключение..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Пусто" + +msgid "AMS" +msgstr "АСПП" + +msgid "Auto Refill" +msgstr "Автодозаправка" + +msgid "AMS not connected" +msgstr "АСПП не подключена" + +# ???? кнопка в интерфейсе? Extrude - Выдавить - Load +msgid "Load" +msgstr "Выдавить" + +# ???? кнопка в интерфейсе? retract - Втянуть - Unload (Выгрузить, Вырузка) +msgid "Unload" +msgstr "Втянуть" + +msgid "Ext Spool" +msgstr "Внеш. катушка" + +msgid "Tips" +msgstr "Подсказки" + +msgid "Guide" +msgstr "Инстр." + +msgid "Retry" +msgstr "Повтор" + +msgid "Calibrating AMS..." +msgstr "Калибровка АСПП..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"Во время калибровки возникла проблема. Нажмите, чтобы посмотреть способ " +"исправления проблемы." + +msgid "Calibrate again" +msgstr "Повторить калибровку" + +msgid "Cancel calibration" +msgstr "Отменить калибровку" + +msgid "Idling..." +msgstr "Простой..." + +msgid "Heat the nozzle" +msgstr "Нагрев сопла" + +msgid "Cut filament" +msgstr "Отрезка прутка" + +msgid "Pull back current filament" +msgstr "Извлечение текущего прутка" + +msgid "Push new filament into extruder" +msgstr "Вставка нового прутка в экструдер" + +msgid "Purge old filament" +msgstr "Очистка от старого материала" + +msgid "Feed Filament" +msgstr "Подача прутка" + +msgid "Confirm extruded" +msgstr "Подтверждение экструзии" + +msgid "Check filament location" +msgstr "Проверка расположения прутка" + +msgid "Grab new filament" +msgstr "Загрузка нового прутка" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Выберите слот АСПП, затем нажмите кнопку «Загрузить» или «Выгрузить» для " +"автоматической загрузки или выгрузки прутка." + +msgid "Edit" +msgstr "Правка" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Авторасстановка недоступна,\n" +"т.к. все выбранные модели находятся на заблокированном столе." + +msgid "No arrangable objects are selected." +msgstr "Не выбрано моделей для расстановки." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Этот стол заблокирован.\n" +"Авторасстановка на этом столе невозможна." + +msgid "Arranging..." +msgstr "Расстановка..." + +msgid "Arranging" +msgstr "Расстановка" + +msgid "Arranging canceled." +msgstr "Расстановка отменена." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Расстановка завершена, но не всё уместилось на столе. Уменьшите интервал " +"расстановки и повторите попытку." + +msgid "Arranging done." +msgstr "Расстановка выполнена." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Ошибка расстановки. Обнаружены некоторые исключения при обработке геометрии " +"моделей." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"При расстановке были проигнорированы следующие модели, которые не помещаются " +"на одном столе:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Автоориентация недоступна,\n" +"т.к. все выбранные модели находятся на заблокированном столе." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Этот стол заблокирован.\n" +"Автоориентация на этом столе невозможна." + +msgid "Orienting..." +msgstr "Ориентация..." + +msgid "Orienting" +msgstr "Ориентация" + +msgid "Orienting canceled." +msgstr "Ориентация отменена." + +msgid "Filling" +msgstr "Заполнение стола" + +msgid "Bed filling canceled." +msgstr "Заполнение стола отменено." + +msgid "Bed filling done." +msgstr "Заполнение стола закончено." + +msgid "Searching for optimal orientation" +msgstr "Поиск оптимального положения" + +msgid "Orientation search canceled." +msgstr "Поиск оптимального положения отменён." + +msgid "Orientation found." +msgstr "Оптимальное положения найдено." + +msgid "Logging in" +msgstr "Авторизация" + +msgid "Login failed" +msgstr "Ошибка авторизации" + +msgid "Please check the printer network connection." +msgstr "Пожалуйста, проверьте сетевое подключение принтера." + +msgid "Abnormal print file data. Please slice again." +msgstr "Неправильные данные файла печати. Пожалуйста, нарежьте ещё раз." + +msgid "Task canceled." +msgstr "Задание отменено." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"Истекло время ожидания отправки задания. Проверьте сетевое подключение и " +"повторите попытку." + +msgid "Cloud service connection failed. Please try again." +msgstr "" +"Не удалось подключиться к облачному сервису. Пожалуйста, попробуйте ещё раз." + +# Print file - речь про g-код +msgid "Print file not found. please slice again." +msgstr "Файл печати не найден, нарежьте ещё раз." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"Файл печати превышает максимально допустимый размер (1 ГБ). Пожалуйста, " +"упростите модель и нарежьте ещё раз." + +msgid "Failed to send the print job. Please try again." +msgstr "" +"Не удалось отправить задание на печать. Пожалуйста, попробуйте ещё раз." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Не удалось загрузить файл на FTP. Пожалуйста, попробуйте ещё раз." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Проверить текущий статус сервера Bambu можно перейдя по указанной выше " +"ссылке." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"Размер файла для печати слишком велик. Пожалуйста, уменьшите размер файла и " +"повторите попытку." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" +"Файл печати не найден. Пожалуйста, нарежьте его ещё раз и отправьте на " +"печать." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Не удалось загрузить файл печати на FTP. Проверьте состояние сети и " +"повторите попытку." + +msgid "Sending print job over LAN" +msgstr "Отправка задания на печать по локальной сети" + +msgid "Sending print job through cloud service" +msgstr "Отправка задания на печать через облачную службу" + +msgid "Print task sending times out." +msgstr "Время отправки задания на печать истекло." + +msgid "Service Unavailable" +msgstr "Сервис недоступен" + +msgid "Unknown Error." +msgstr "Неизвестная ошибка." + +msgid "Sending print configuration" +msgstr "Отправка конфигурации печати" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "" +"Успешно отправлено. Автоматический переход на страницу устройства через %s с." + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "" +"Успешно отправлено. Автоматический переход на следующую страницу через %s с." + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "Перед печатью через локальную сеть необходимо вставить SD-карту." + +msgid "Sending gcode file over LAN" +msgstr "Отправка файла G-кода по локальной сети" + +msgid "Sending gcode file to sdcard" +msgstr "Отправка файла G-кода на SD-карту" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Успешно отправлено. Закрытие текущей страницы через %s с." + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Перед отправкой на принтер необходимо вставить SD-карту." + +msgid "Importing SLA archive" +msgstr "Импорт SLA архива" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"Архив SLA не содержит никаких профилей. Пожалуйста, сначала активируйте " +"какой-нибудь профиль SLA принтера, прежде чем импортировать этот SLA архив." + +msgid "Importing canceled." +msgstr "Импорт отменен." + +msgid "Importing done." +msgstr "Импорт завершён." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"Импортированный SLA архив не содержит никаких профилей. Текущие SLA профили " +"использовались в качестве резервных." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "Вы не можете загрузить SLA проект с составной моделью на столе" + +msgid "Please check your object list before preset changing." +msgstr "Пожалуйста, проверьте список моделей перед изменением профиля." + +msgid "Attention!" +msgstr "Внимание!" + +msgid "Downloading" +msgstr "Загрузка" + +msgid "Download failed" +msgstr "Ошибка загрузки" + +msgid "Cancelled" +msgstr "Отменено" + +msgid "Install successfully." +msgstr "Установка успешно завершена." + +msgid "Installing" +msgstr "Установка" + +msgid "Install failed" +msgstr "Ошибка установки." + +msgid "Portions copyright" +msgstr "С использованием разработок" + +msgid "Copyright" +msgstr "Copyright" + +msgid "License" +msgstr "Лицензия" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca распространяется под лицензией " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public третьей версии" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca is Based on Orca Slicer" + +msgid "Libraries" +msgstr "Библиотеки" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"В данном программном обеспечении используются компоненты с открытым исходным " +"кодом, авторские и иные права на которые принадлежат их соответствующим " +"владельцам." + +#, c-format, boost-format +msgid "About %s" +msgstr "О %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca основан на проектах BambuStudio, PrusaSlicer и SuperSlicer." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "Bambu Studio основана на PrusaSlicer от компании PrusaResearch." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer основан на проекте Slic3r от Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r был создан Alessandro Ranellucci совместно с многими другими " +"участниками сообщества." + +msgid "Version" +msgstr "Версия" + +msgid "AMS Materials Setting" +msgstr "Настройка материалов АСПП" + +msgid "Confirm" +msgstr "Подтвердить" + +msgid "Close" +msgstr "Закрыть" + +msgid "Colour" +msgstr "Цвет" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Температура\n" +"сопла" + +msgid "max" +msgstr "макс." + +msgid "min" +msgstr "мин." + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "Введённое значение должно быть больше %1%, но меньше %2%." + +msgid "SN" +msgstr "Серийный №" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "Изменение информации о слотах АСПП во время печати не поддерживается" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Коэф. калиб. динам. потока" + +msgid "PA Profile" +msgstr "Профиль PA" + +msgid "Factor K" +msgstr "Коэф. K" + +msgid "Factor N" +msgstr "Коэф. N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "" +"Настройка информации виртуального слота во время печати не поддерживается" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Вы уверены, что хотите удалить информацию о пластиковой нити?" + +msgid "You need to select the material type and color first." +msgstr "Сначала необходимо выбрать тип материала и цвет." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "Пожалуйста, введите допустимое значение (K в диапазоне %.1f~%.1f)" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" +"Пожалуйста, введите допустимое значение (K в диапазоне %.1f~%.1f, N в " +"диапазоне %.1f~%.1f)" + +msgid "Other Color" +msgstr "Другой цвет" + +msgid "Custom Color" +msgstr "Пользовательский цвет" + +msgid "Dynamic flow calibration" +msgstr "Калибровка динамики потока" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"Температура сопла и максимальный объёмный расход влияют на результаты " +"калибровки. Введите те же значения, которые вы используете при фактической " +"печати. Их можно заполнить автоматически, выбрав существующий профиль " +"пластиковой нити." + +msgid "Nozzle Diameter" +msgstr "Диаметр сопла" + +msgid "Bed Type" +msgstr "Тип стола" + +msgid "Nozzle temperature" +msgstr "Темп. сопла" + +msgid "Bed Temperature" +msgstr "Температура стола" + +msgid "Max volumetric speed" +msgstr "Макс. объёмный расход" + +msgid "℃" +msgstr "℃" + +msgid "Bed temperature" +msgstr "Температура стола" + +msgid "mm³" +msgstr "мм³" + +# Если короче - Запуск калибровки +msgid "Start calibration" +msgstr "Запустить калибровку" + +msgid "Next" +msgstr "Далее" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Калибровка завершена. Теперь найдите на столе наиболее равномерно " +"экструдированную линию, как показано на рисунке ниже, и введите это значение " +"в поле ввода коэффициента K." + +msgid "Save" +msgstr "Сохранить" + +msgid "Last Step" +msgstr "Последний шаг" + +msgid "Example" +msgstr "Пример" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Калибровка... %d%%" + +msgid "Calibration completed" +msgstr "Калибровка завершена" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s не поддерживает %s" + +msgid "Dynamic flow Calibration" +msgstr "Калибровка динамики потока" + +msgid "Step" +msgstr "Шаг" + +msgid "AMS Slots" +msgstr "Слоты АСПП" + +# Примечание: выбор слотов ограничен одним типом материала. +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "Примечание: можно выбирать только слоты с одинаковым типом материала." + +msgid "Enable AMS" +msgstr "Включить АСПП" + +msgid "Print with filaments in the AMS" +msgstr "Печать пластиковыми нитями из АСПП." + +msgid "Disable AMS" +msgstr "Отключить АСПП" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Печать материалом, установленным на задней части корпуса." + +msgid "Current Cabin humidity" +msgstr "Текущая влажность внутри АСПП" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Пожалуйста, замените влагопоглотитель, если он слишком влажный. Индикатор " +"может показывать неточно в следующих случаях: при открытой крышке или замене " +"влагопоглотителя. Для поглощения влаги требуется несколько часов. Низкая " +"температура окружающей среды также замедляют этот процесс." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Задайте слот АСПП, который должен использоваться для прутка, используемого в " +"текущем задании." + +msgid "Filament used in this print job" +msgstr "Пруток используемый в этом задании" + +# убрал АСПП ибо длинно +msgid "AMS slot used for this filament" +msgstr "Слот используемый для этого прутка" + +# убрал АСПП ибо длинно +msgid "Click to select AMS slot manually" +msgstr "Нажмите, чтобы выбрать слот вручную" + +msgid "Do not Enable AMS" +msgstr "Не включать АСПП" + +msgid "Print using materials mounted on the back of the case" +msgstr "" +"Печать с использованием материала, установленного на задней части корпуса" + +msgid "Print with filaments in ams" +msgstr "" +"Печать пластиковыми\n" +"нитями из АСПП" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Печать материалами, установленными на задней части корпуса." + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Когда текущий материал закончится, принтер продолжит печать в указанном " +"порядке." + +msgid "Group" +msgstr "Группа" + +msgid "The printer does not currently support auto refill." +msgstr "В настоящее время принтер не поддерживает функцию автодозаправки." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"Резервирование материала АСПП не включено, пожалуйста, включите его в " +"настройках АСПП." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"При наличии в АСПП двух одинаковых материалов включается функция " +"резервирования материала (автодозаправка). \n" +"(В настоящее время поддерживается автоматическая дозаправка материала только " +"одного производителя, типа и цвета)" + +msgid "DRY" +msgstr "СУХОЙ" + +msgid "WET" +msgstr "ВЛАЖНЫЙ" + +msgid "AMS Settings" +msgstr "Настройки АСПП" + +# ??? Обновление при вставке материала, Обновлять данные о материале при вставке +msgid "Insertion update" +msgstr "Обновлять данные при вставке материала" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"АСПП автоматически считывает информацию о материале при установке новой " +"катушки Bambu. Это занимает около 20 секунд." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Примечание: если во время печати вставляется новая пластиковая нить, АСПП " +"автоматически считает информацию о ней только по завершению печати." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"При вставке новой пластиковой нити, АСПП не будет автоматически считывать " +"информацию о ней, оставляя поле пустым, чтобы пользователь мог ввести данные " +"о ней вручную." + +# ??? Обновление при включении принтера, Обновлять данные о материале при включении принтера +msgid "Power on update" +msgstr "Обновлять данные при включении принтера" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"При каждом включении принтера АСПП будет автоматически считывать информацию " +"о вставленных материалах. Это занимает приблизительно одну минуту. В " +"процессе считывания информации о материале катушка вращается." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"При каждом включении принтера, считывание информации о вставленных " +"материалах АСПП будет отключено. Будет использоваться информация, полученная " +"перед последним выключением." + +msgid "Update remaining capacity" +msgstr "Обновлять оставшуюся ёмкость катушки" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"АСПП считывает информацию о материале Bambu и рассчитывает его остаточную " +"ёмкость на катушке. Остаточная ёмкость обновляется автоматически в процессе " +"печати." + +msgid "AMS filament backup" +msgstr "Резервирование материала АСПП" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"АСПП автоматически переключится на другую катушку с тем же типом материала, " +"когда текущий закончится." + +msgid "Air Printing Detection" +msgstr "Обнаружение печати в воздухе" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"При обнаружении засорения сопла или истирания прутка, печать немедленно " +"прекращается для экономии времени и материала." + +msgid "File" +msgstr "Файл" + +msgid "Calibration" +msgstr "Калибровка" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Не удалось загрузить плагин. Пожалуйста, проверьте настройки брандмауэра и " +"vpn, и повторите попытку." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Не удалось установить плагин. Пожалуйста, проверьте, не заблокирован ли он " +"или не удалён антивирусом." + +msgid "click here to see more info" +msgstr "Нажмите здесь, чтобы увидеть больше информации" + +msgid "Please home all axes (click " +msgstr "Пожалуйста, припаркуйте все оси в начало координат (нажав " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") для определения положения печатной головы. Это предотвращает перемещение " +"за пределы области печати и износ оборудования." + +msgid "Go Home" +msgstr "На главную" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Произошла ошибка. Возможно, недостаточно системной памяти или это баг " +"программы." + +msgid "Please save project and restart the program. " +msgstr "Пожалуйста, сохраните проект и перезапустите программу. " + +msgid "Processing G-Code from Previous file..." +msgstr "Обработка G-кода из предыдущего файла..." + +msgid "Slicing complete" +msgstr "Нарезка завершена" + +msgid "Access violation" +msgstr "Нарушение прав доступа" + +msgid "Illegal instruction" +msgstr "Недопустимая инструкция" + +msgid "Divide by zero" +msgstr "Деление на ноль не допускается" + +msgid "Overflow" +msgstr "Переполнение" + +msgid "Underflow" +msgstr "Ошибка обнуления" + +msgid "Floating reserved operand" +msgstr "Плавающий зарезервированный операнд" + +msgid "Stack overflow" +msgstr "Переполнение стека" + +msgid "Running post-processing scripts" +msgstr "Запуск скриптов постобработки" + +msgid "Successfully executed post-processing script" +msgstr "Скрипт постобработки успешно выполнен." + +msgid "Unknown error occured during exporting G-code." +msgstr "При экспорте G-кода произошла неизвестная ошибка." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Не удалось скопировать временный G-код в местонахождение выходного файла G-" +"кода. Может ваша SD карта защищена от записи?\n" +"Сообщение об ошибке: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"Не удалось скопировать временный G-код в местонахождение выходного файла G-" +"кода. Возможно, проблема с устройством назначения, попробуйте снова " +"выполнить экспорт или использовать другое устройство. Повреждённый выходной " +"файл G-кода находится в %1%.tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"Не удалось переименовать G-код после копирования в выбранную папку " +"назначения. Текущий путь %1%.tmp. Пожалуйста, попробуйте экспортировать ещё " +"раз." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"Копирование временного G-кода завершено, но исходный код в %1% не удалось " +"открыть во время проверки копии. Выходной G-код находится в %2%.tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"Копирование временного G-кода завершено, но экспортированный код не удалось " +"открыть во время проверки копии. Выходной G-код находится в %1%.tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "Файл G-кода экспортирован в %1%" + +msgid "Unknown error when export G-code." +msgstr "Неизвестная ошибка при экспорте G-кода." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Не удалось сохранить файл G-кода.\n" +"Сообщение об ошибке: %1%.\n" +"Исходный файл %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "" +"Не удалось скопировать временный G-код в местонахождение выходного файла G-" +"кода" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Планирование загрузки на `%1%`. Смотрите Окна -> Очередь загрузки на хост " +"печати" + +msgid "Device" +msgstr "Принтер" + +msgid "Task Sending" +msgstr "Отправка заданий" + +msgid "Task Sent" +msgstr "Отправленные задания" + +msgid "Edit multiple printers" +msgstr "Редактирование нескольких принтеров" + +msgid "Select connected printers (0/6)" +msgstr "Выберите подключённые принтеры (%d/6)" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "Выберите подключённые принтеры (%d/6)" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "Максимальное количество принтеров, которое можно выбрать - %d" + +msgid "Offline" +msgstr "Не в сети" + +msgid "No task" +msgstr "Нет заданий" + +msgid "View" +msgstr "Вид" + +msgid "N/A" +msgstr "Н/Д" + +msgid "Edit Printers" +msgstr "Редактировать принтеры" + +msgid "Device Name" +msgstr "Имя устройства" + +msgid "Task Name" +msgstr "Имя задания" + +msgid "Device Status" +msgstr "Статус устройства" + +msgid "Actions" +msgstr "Действия" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" +"Пожалуйста, выберите устройства, которыми хотите управлять (до 6 устройств)" + +msgid "Add" +msgstr "Добавить" + +msgid "Idle" +msgstr "Простой" + +msgid "Printing" +msgstr "Печать" + +msgid "Upgrading" +msgstr "Обновление" + +msgid "Incompatible" +msgstr "Несовместимы" + +msgid "syncing" +msgstr "синхронизация" + +msgid "Printing Finish" +msgstr "Печать завершена" + +msgid "Printing Failed" +msgstr "Ошибка печати" + +msgid "Printing Pause" +msgstr "Пауза печати" + +msgid "Prepare" +msgstr "Подготовка" + +msgid "Slicing" +msgstr "Нарезка" + +msgid "Pending" +msgstr "Ожидание" + +msgid "Sending" +msgstr "Отправка" + +msgid "Sending Finish" +msgstr "Отправка завершена" + +msgid "Sending Cancel" +msgstr "Отправка отменена" + +msgid "Sending Failed" +msgstr "Ошибка отправки" + +msgid "Print Success" +msgstr "Успешно напечатано" + +msgid "Print Failed" +msgstr "Ошибка печати" + +msgid "Removed" +msgstr "Удалено" + +msgid "Resume" +msgstr "Продолжить" + +msgid "Stop" +msgstr "Остановить" + +msgid "Task Status" +msgstr "Статус задания" + +msgid "Sent Time" +msgstr "Время отправки" + +msgid "There are no tasks to be sent!" +msgstr "Нет заданий для отправки!" + +msgid "No historical tasks!" +msgstr "История заданий пуста!" + +msgid "Loading..." +msgstr "Загрузка..." + +msgid "No AMS" +msgstr "АСПП отсутствует" + +msgid "Send to Multi-device" +msgstr "Отправить на несколько устройств" + +msgid "Preparing print job" +msgstr "Подготовка задания на печать" + +msgid "Abnormal print file data. Please slice again" +msgstr "Неправильные данные файла печати. Пожалуйста, нарежьте ещё раз." + +msgid "There is no device available to send printing." +msgstr "Отсутствует устройство для отправки на печать." + +# ??? для начала печати необходимо, чтобы хотя бы один принтер был активен? +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" +"Необходимость наличия хотя бы одного работающего принтера для выполнения " +"задач печати." + +msgid "Use External Spool" +msgstr "Исп. внешнюю катушку" + +msgid "Use AMS" +msgstr "Исп. АСПП" + +msgid "Select Printers" +msgstr "Выбор принтеров" + +msgid "Ams Status" +msgstr "Статус АСПП" + +msgid "Printing Options" +msgstr "Параметры печати" + +msgid "Bed Leveling" +msgstr "" +"Выравнивание\n" +"стола" + +msgid "Timelapse" +msgstr "Таймлапсы" + +msgid "Flow Dynamic Calibration" +msgstr "Калибровка динамики потока" + +msgid "Send Options" +msgstr "Параметры отправки" + +msgid "Send to" +msgstr "Отправить на" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"принтера(-ов) одновременно (зависит от того, сколько устройств может " +"нагреваться одновременно без перегрузки вашей электросети.)" + +msgid "Wait" +msgstr "Ждать" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"минут для отправки каждого пакета заданий (зависит от того, сколько времени " +"требуется для завершения нагрева перед началом печати)." + +# ??????? Используется в двух местах или уже исправили? +msgid "Send" +msgstr "Отправить G-код стола на SD-карту" + +msgid "Name is invalid;" +msgstr "Некорректное имя;" + +msgid "illegal characters:" +msgstr "недопустимые символы:" + +msgid "illegal suffix:" +msgstr "недопустимый суффикс:" + +msgid "The name is not allowed to be empty." +msgstr "Имя не может быть пустым." + +msgid "The name is not allowed to start with space character." +msgstr "Имя не должно начитаться с пробела." + +msgid "The name is not allowed to end with space character." +msgstr "Имя не должно заканчиваться пробелом." + +msgid "The name length exceeds the limit." +msgstr "Длина имени превышает установленное ограничение." + +msgid "Origin" +msgstr "Начало координат" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Размеры прямоугольного стола в XY координатах." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" +"Расстояние до точки начало координат. Отсчёт от левого переднего угла " +"прямоугольного стола." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Диаметр стола. Предполагается, что начало координат (0,0) находится в центре." + +msgid "Rectangular" +msgstr "Прямоугольная" + +msgid "Circular" +msgstr "Круглая" + +msgid "Load shape from STL..." +msgstr "Загрузка формы стола из STL файла..." + +msgid "Settings" +msgstr "Настройки" + +msgid "Texture" +msgstr "Текстура" + +msgid "Remove" +msgstr "Удалить" + +msgid "Not found:" +msgstr "Не найдено:" + +msgid "Model" +msgstr "Модели" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Выберите STL файл для импорта формы стола из:" + +msgid "Invalid file format." +msgstr "Неверный формат файла." + +msgid "Error! Invalid model" +msgstr "Ошибка! Недопустимая модель" + +msgid "The selected file contains no geometry." +msgstr "Выбранный файл не содержит геометрии." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"Выбранный файл содержит несколько не пересекающихся областей. Такие файлы не " +"поддерживаются." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "Выберите файл для импорта текстуры стола из PNG/SVG:" + +msgid "Choose an STL file to import bed model from:" +msgstr "Выберите STL файл для импорта формы стола из:" + +msgid "Bed Shape" +msgstr "Форма стола" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"Минимально рекомендуемая температура меньше 190 градусов или максимально " +"рекомендуемая температура выше 300 градусов.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"Минимально рекомендуемая температура не может быть выше максимально " +"рекомендуемой.\n" + +msgid "Please check.\n" +msgstr "Пожалуйста, проверьте.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"Сопло может засориться, если температура превышает рекомендуемый диапазон.\n" +"Пожалуйста, убедитесь, что вы задали нужную температуру для печати.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"Рекомендуемая температура сопла для данного типа пластиковой нити составляет " +"[%d, %d] градусов Цельсия." + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Слишком маленький максимальный объёмный расход.\n" +"Значение будет сброшено на 0,5." + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"Текущая температура внутри термокамеры превышает безопасную температуру для " +"этого материала, что может привести к размягчению материала или засорению " +"экструдера. Безопасная температура текущего материала составляет %d." + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Слишком маленькая высота слоя.\n" +"Значение будет сброшено на 0,2." + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Слишком маленькое расстояние между линиями разглаживания.\n" +"Значение будет сброшено на 0,1." + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"Нулевая высота первого слоя недопустима.\n" +"\n" +"Высота первого слоя будет сброшена до 0,2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Этот параметр используется только для точной корректировки размера модели в " +"определенных случаях.\n" +"Например, когда есть небольшая погрешность в размерах модели и её трудно " +"собрать.\n" +"Для более значительной корректировки размеров используйте функцию " +"масштабирования модели.\n" +"\n" +"Это значение будет сброшено на 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Слишком большая компенсация слоновьей ноги нецелесообразна.\n" +"Если имеется серьёзный эффект слоновьей ноги, проверьте другие настройки " +"печати.\n" +"Например, не слишком ли высокая температура стола.\n" +"\n" +"Значение будет сброшено на 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" +"Чередующаяся дополнительная стенка не работает, если для \"Обеспечивать " +"верт. толщину оболочки\" установлено значение «Везде»." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"Изменить эти настройки автоматически?\n" +"Да - Изменить в «Обеспечивать верт. толщину оболочки» на значение " +"«Умеренное» и включить чередующуюся дополнительную стенку\n" +"Нет - Отказаться от использования чередующейся дополнительной стенки" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"Черновая башня не работает, когда включена функция «Переменная высота слоёв» " +"или «Независимая высота слоя поддержки»\n" +"Что вы хотите сохранить?\n" +"ДА - Сохранить черновую башню\n" +"НЕТ - Сохранить переменную высоту слоя и независимую высоту слоя поддержки" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"Черновая башня не работает, когда включена функция «Переменная высота " +"слоёв».\n" +"Что вы хотите сохранить?\n" +"Да - Сохранить черновую башню\n" +"Нет - Сохранить переменную высоту слоёв" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"Черновая башня не работает, если включена функция «Независимая высота слоя " +"поддержки»\n" +"Что вы хотите сохранить?\n" +"ДА - Сохранить черновую башню\n" +"НЕТ - Сохранить независимую высоту слоя поддержки" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"При печати по очереди экструдер может столкнуться с юбкой.\n" +"Чтобы избежать этого, сбросьте значение слоёв юбки до 1." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"seam_slope_start_height должна быть меньше высоты слоя.\n" +"Значение сброшено на 0." + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Для режима печати «Спиральная ваза» необходимо чтобы соблюдались следующие " +"условия:\n" +"- одностеночный периметр\n" +"- отсутствие поддержки\n" +"- отсутствие верхних сплошных слоёв\n" +"- плотность заполнения 0%\n" +"- отключено «Обнаружение тонких стенок»\n" +"- Режим записи таймлапсов - обычный режим" + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " Но принтеры с кинематикой I3 не будут писать таймлапс." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Изменить эти настройки автоматически? \n" +"Да - Изменить эти настройки и включить режим «Спиральная ваза»\n" +"Нет - Отказаться от использования режима «Спиральная ваза»" + +msgid "Auto bed leveling" +msgstr "Автовыравнивание стола" + +msgid "Heatbed preheating" +msgstr "Преднагрев стола" + +# Режим проверки XY-механики +msgid "Sweeping XY mech mode" +msgstr "Проверка XY-механики" + +msgid "Changing filament" +msgstr "Смена прутка" + +msgid "M400 pause" +msgstr "M400 (пауза)" + +msgid "Paused due to filament runout" +msgstr "Пауза при окончании прутка" + +msgid "Heating hotend" +msgstr "Нагрев хотэнда" + +msgid "Calibrating extrusion" +msgstr "Калибровка экструзии" + +msgid "Scanning bed surface" +msgstr "Сканирование поверхности стола" + +msgid "Inspecting first layer" +msgstr "Проверка первого слоя" + +msgid "Identifying build plate type" +msgstr "Определение типа стола" + +msgid "Calibrating Micro Lidar" +msgstr "Калибровка микролидаром" + +msgid "Homing toolhead" +msgstr "Парковка головы" + +msgid "Cleaning nozzle tip" +msgstr "Очистка кончика сопла" + +msgid "Checking extruder temperature" +msgstr "Проверка температуры экструдера" + +msgid "Printing was paused by the user" +msgstr "Печать приостановлена пользователем" + +msgid "Pause of front cover falling" +msgstr "Пауза при падения передней крышки с головы" + +msgid "Calibrating the micro lida" +msgstr "Калибровка микролидаром" + +msgid "Calibrating extrusion flow" +msgstr "Калибровка потока экструзии" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Пауза при неисправности температуры сопла" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Пауза при неисправности температуры стола" + +msgid "Filament unloading" +msgstr "Выгрузка прутка" + +msgid "Skip step pause" +msgstr "Пропуск команды паузы" + +msgid "Filament loading" +msgstr "Загрузка прутка" + +msgid "Motor noise calibration" +msgstr "Калибровка шума двигателя" + +msgid "Paused due to AMS lost" +msgstr "Печать приостановлена из-за потери связи с АСПП" + +msgid "Paused due to low speed of the heat break fan" +msgstr "" +"Печать приостановлена из-за низкой скорости вентилятора обдува радиатора " +"головы" + +msgid "Paused due to chamber temperature control error" +msgstr "" +"Печать приостановлена из-за ошибки контроля температуры внутри термокамеры" + +msgid "Cooling chamber" +msgstr "Охлаждение термокамеры" + +msgid "Paused by the Gcode inserted by user" +msgstr "Печать приостановлена G-кодом, вставленным пользователем" + +# ??? Демонстрация шума двигателя +msgid "Motor noise showoff" +msgstr "Результат калибровки шума двигателя" + +msgid "Nozzle filament covered detected pause" +msgstr "Пауза при обнаружении протечки материала" + +msgid "Cutter error pause" +msgstr "Пауза при ошибке обрезки прутка" + +msgid "First layer error pause" +msgstr "Пауза при ошибке на первом слое" + +msgid "Nozzle clog pause" +msgstr "Пауза при засорении сопла" + +msgid "Unknown" +msgstr "Неизвестно" + +msgid "Fatal" +msgstr "Критическая ошибка" + +msgid "Serious" +msgstr "Серьезный" + +msgid "Common" +msgstr "Обычный" + +msgid "Update successful." +msgstr "Обновление успешно выполнено." + +msgid "Downloading failed." +msgstr "Ошибка загрузки." + +msgid "Verification failed." +msgstr "Ошибка идентификации." + +msgid "Update failed." +msgstr "Сбой обновления." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"Текущая температура или целевая температура внутри термокамеры превышает " +"45℃. Чтобы избежать засорения экструдера, запрещается загрузка " +"низкотемпературной печатной нити (PLA/PETG/TPU)." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"В экструдер загружается низкотемпературная пластиковая нить (PLA/PETG/TPU). " +"Чтобы избежать засорения экструдера, запрещается устанавливать температуру " +"внутри термокамеры выше 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Если вы установили температура внутри термокамеры ниже 40℃, то контроль " +"температуры не запустится, а целевая температура в ней будет автоматически " +"установлена на 0℃." + +msgid "Failed to start printing job" +msgstr "Не удалось запустить задание на печать." + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "Данная калибровка не поддерживает выбранный диаметр сопла" + +msgid "Current flowrate cali param is invalid" +msgstr "Текущая величина калибровки скорости потока недопустима" + +msgid "Selected diameter and machine diameter do not match" +msgstr "Выбранный диаметр и диаметр профиля принтера не совпадают" + +msgid "Failed to generate cali gcode" +msgstr "Не удалось сгенерировать калибровочный G-код" + +msgid "Calibration error" +msgstr "Ошибка калибровки" + +msgid "TPU is not supported by AMS." +msgstr "Печать TPU с помощью АСПП не поддерживается." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Печать Bambu PET-CF/PA6-CF с помощью АСПП не поддерживается." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Влажный PVA становится гибким и застревает внутри АСПП, поэтому перед " +"использованием его необходимо просушить." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"CF/GF пластиковые нити твердые и хрупкие, легко ломаются или застревают в " +"АСПП, поэтому используйте их с осторожностью." + +msgid "default" +msgstr "По ум." + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Изменение пользовательского G-кода (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" +"Встроенные заполнители. Для добавить его в G-код, дважды щелкните на " +"выбранное." + +msgid "Search gcode placeholders" +msgstr "Поиск G-кода в заполнителях" + +msgid "Add selected placeholder to G-code" +msgstr "Добавить выбранный заполнитель в G-код" + +msgid "Select placeholder" +msgstr "Выберите заполнитель" + +msgid "[Global] Slicing State" +msgstr "[Глобальное] Состояние нарезки" + +msgid "Read Only" +msgstr "Только чтение" + +msgid "Read Write" +msgstr "Только запись" + +msgid "Slicing State" +msgstr "Состояние нарезки" + +msgid "Print Statistics" +msgstr "Статистика печати" + +msgid "Objects Info" +msgstr "Информация об моделях" + +msgid "Dimensions" +msgstr "Размеры" + +msgid "Temperatures" +msgstr "Температуры" + +msgid "Timestamps" +msgstr "Временные метки" + +#, boost-format +msgid "Specific for %1%" +msgstr "Специфично для %1%" + +msgid "Presets" +msgstr "Профили" + +msgid "Print settings" +msgstr "Настройки печати" + +msgid "Filament settings" +msgstr "Настройки прутка" + +msgid "SLA Materials settings" +msgstr "Настройки SLA материалов" + +msgid "Printer settings" +msgstr "Настройки принтера" + +msgid "parameter name" +msgstr "Имя параметра" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s не может быть в процентах" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "Значение %s вне диапазона. Продолжить?" + +msgid "Parameter validation" +msgstr "Проверка корректности параметра" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "" +"Значение %s выходит за пределы допустимого диапазона. Допустимый диапазон - " +"от %d до %d." + +msgid "Value is out of range." +msgstr "Введённое значение вне диапазона." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"Это %s%% или %s %s?\n" +"ДА для %s%%, \n" +"НЕТ для %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Неверный входной формат. Ожидаемый вектор размерности в следующем формате: " +"\"%1%\"" + +msgid "Input value is out of range" +msgstr "Введённое значение вне диапазона" + +msgid "Some extension in the input is invalid" +msgstr "Недопустимое расширение на входе" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Недопустимый формат. Ожидаемый векторный формат: \"%1%\"" + +msgid "Layer Height" +msgstr "Высота слоя" + +msgid "Line Width" +msgstr "Ширина экструзии" + +msgid "Fan Speed" +msgstr "Скорость вентилятора" + +msgid "Temperature" +msgstr "Температура" + +msgid "Flow" +msgstr "Поток" + +msgid "Tool" +msgstr "Инструмент" + +msgid "Layer Time" +msgstr "Время печати слоя" + +msgid "Layer Time (log)" +msgstr "Время печати слоя (логарифмич.)" + +msgid "Height: " +msgstr "Высота: " + +msgid "Width: " +msgstr "Ширина: " + +msgid "Speed: " +msgstr "Скорость: " + +msgid "Flow: " +msgstr "Поток: " + +msgid "Layer Time: " +msgstr "Время печати слоя: " + +msgid "Fan: " +msgstr "Скорость вентилятора: " + +msgid "Temperature: " +msgstr "Температура: " + +msgid "Loading G-codes" +msgstr "Загрузка G-кода" + +msgid "Generating geometry vertex data" +msgstr "Генерация данных индекса вершин" + +msgid "Generating geometry index data" +msgstr "Генерация данных индекса геометрии" + +msgid "Statistics of All Plates" +msgstr "Статистика по всем столам" + +msgid "Display" +msgstr "Видимость" + +msgid "Flushed" +msgstr "Очищено" + +msgid "Tower" +msgstr "Башня" + +# ???? было Общее +msgid "Total" +msgstr "Всего" + +msgid "Total Estimation" +msgstr "Общая оценка" + +msgid "Total time" +msgstr "Общее время печати" + +msgid "Total cost" +msgstr "Общая стоимость" + +msgid "up to" +msgstr "до" + +msgid "above" +msgstr "после" + +msgid "from" +msgstr "с" + +msgid "Color Scheme" +msgstr "Цветовая схема" + +msgid "Time" +msgstr "Время" + +msgid "Percent" +msgstr "%" + +msgid "Used filament" +msgstr "Использ. прутка" + +msgid "Layer Height (mm)" +msgstr "Высота слоя (мм)" + +msgid "Line Width (mm)" +msgstr "Ширина экструзии (мм)" + +msgid "Speed (mm/s)" +msgstr "Скорость (мм/с)" + +msgid "Fan Speed (%)" +msgstr "Скорость вентилятора (%)" + +msgid "Temperature (°C)" +msgstr "Температура (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Объёмный расход (мм³/с)" + +msgid "Travel" +msgstr "Перемещения" + +msgid "Seams" +msgstr "Швы" + +msgid "Retract" +msgstr "Откат" + +msgid "Unretract" +msgstr "Подача" + +msgid "Filament Changes" +msgstr "Смена прутка" + +msgid "Wipe" +msgstr "Очистка" + +msgid "Options" +msgstr "Параметры" + +msgid "travel" +msgstr "Перемещения" + +msgid "Extruder" +msgstr "Экструдер" + +msgid "Filament change times" +msgstr "Время смены прутка" + +msgid "Cost" +msgstr "Стоимость" + +msgid "Color change" +msgstr "Смена цвета" + +msgid "Print" +msgstr "Печать" + +# ?????6 +msgid "Printer" +msgstr "Профиль принтера" + +msgid "Custom g-code" +msgstr "Пользовательский G-код" + +msgid "ToolChange" +msgstr "Смена инструмента" + +msgid "Time Estimation" +msgstr "Оценка времени" + +msgid "Normal mode" +msgstr "Нормальный режим" + +msgid "Total Filament" +msgstr "Всего использовано прутка" + +msgid "Model Filament" +msgstr "Исп. прутка для моделей" + +msgid "Prepare time" +msgstr "Время подготовки" + +msgid "Model printing time" +msgstr "Расчётное время печати" + +msgid "Switch to silent mode" +msgstr "Переключиться на бесшумный режим" + +msgid "Switch to normal mode" +msgstr "Переключиться на обычный режим" + +msgid "Variable layer height" +msgstr "Переменная высота слоёв" + +msgid "Adaptive" +msgstr "Адаптивная" + +msgid "Quality / Speed" +msgstr "Качество / Скорость" + +msgid "Smooth" +msgstr "Сгладить" + +msgid "Radius" +msgstr "Радиус" + +msgid "Keep min" +msgstr "Сохранять минимумы" + +msgid "Left mouse button:" +msgstr "Левая кнопка мыши:" + +msgid "Add detail" +msgstr "Увеличить детализацию" + +msgid "Right mouse button:" +msgstr "Правая кнопка мыши:" + +msgid "Remove detail" +msgstr "Уменьшить детализацию" + +msgid "Shift + Left mouse button:" +msgstr "Shift + Левая кнопка мыши:" + +msgid "Reset to base" +msgstr "Сброс до базовой высоты слоя" + +msgid "Shift + Right mouse button:" +msgstr "Shift + Правая кнопка мыши:" + +msgid "Smoothing" +msgstr "Сглаживание" + +msgid "Mouse wheel:" +msgstr "Колесо мыши:" + +msgid "Increase/decrease edit area" +msgstr "Увелич. /уменьш. области редактирования" + +msgid "Sequence" +msgstr "Последовательность" + +msgid "Mirror Object" +msgstr "Отразить модель" + +msgid "Tool Move" +msgstr "Инструмент перемещения" + +msgid "Tool Rotate" +msgstr "Инструмент вращения" + +msgid "Move Object" +msgstr "Перемещение модели" + +msgid "Auto Orientation options" +msgstr "Параметры автоориентации" + +msgid "Enable rotation" +msgstr "Разрешить вращение" + +msgid "Optimize support interface area" +msgstr "Оптимизация области связующего слоя" + +msgid "Orient" +msgstr "Ориентация" + +msgid "Arrange options" +msgstr "Параметры расстановки" + +msgid "Spacing" +msgstr "Интервал" + +msgid "0 means auto spacing." +msgstr "0 - автоматический интервал." + +msgid "Auto rotate for arrangement" +msgstr "Разрешить вращение при расстановке" + +msgid "Allow multiple materials on same plate" +msgstr "Разрешить использование нескольких материалов на одном столе" + +msgid "Avoid extrusion calibration region" +msgstr "Избегать зону калибровки экструзии" + +msgid "Align to Y axis" +msgstr "Выравнивать по оси Y" + +msgid "Add plate" +msgstr "Добавить стол" + +msgid "Auto orient" +msgstr "Автоориентация" + +msgid "Arrange all objects" +msgstr "Расставить все модели" + +msgid "Arrange objects on selected plates" +msgstr "Расставить выбранные модели на выбранных столах" + +msgid "Split to objects" +msgstr "Разделить на модели" + +msgid "Split to parts" +msgstr "Разделить на части" + +msgid "Assembly View" +msgstr "Сборочный вид" + +msgid "Select Plate" +msgstr "Выбор печатной пластины" + +msgid "Assembly Return" +msgstr "Выйти из сборки" + +msgid "return" +msgstr "Назад" + +msgid "Paint Toolbar" +msgstr "Панель рисования" + +msgid "Explosion Ratio" +msgstr "Коэффициент разброса" + +msgid "Section View" +msgstr "Отсечение вида" + +msgid "Assemble Control" +msgstr "Управление сборкой" + +msgid "Total Volume:" +msgstr "Общий объём:" + +msgid "Assembly Info" +msgstr "Информация о сборке" + +msgid "Volume:" +msgstr "Объём:" + +msgid "Size:" +msgstr "Размер:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"В G-коде на %d слое (z = %.2lf мм) обнаружен конфликт путей. Пожалуйста, " +"разместите конфликтующие модели дальше друг от друга (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "Модель выходить за границы печатного стола." + +msgid "A G-code path goes beyond the max print height." +msgstr "Траектория перемещения в G-коде превышает высоту области печати." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Траектория перемещения в G-коде выходит за границы печатного стола." + +msgid "Only the object being edit is visible." +msgstr "При редактировании, те модели с которыми вы не работаете скрываются." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Модель выходит за границы стола или превышает высоту печати.\n" +"Пожалуйста, устраните проблему, уместив всю модель в границы стола (или за " +"пределы стола) и убедитесь, что высота модели находится в пределах область " +"построения." + +msgid "Calibration step selection" +msgstr "Выбор шага калибровки" + +msgid "Micro lidar calibration" +msgstr "Калибровка микролидаром" + +msgid "Bed leveling" +msgstr "Выравнивание стола" + +msgid "Vibration compensation" +msgstr "Компенсация вибрации" + +msgid "Motor noise cancellation" +msgstr "Шумоподавление двигателя" + +# ??? О калибровке +msgid "Calibration program" +msgstr "Программа калибровки" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"Программа калибровки автоматически определяет состояние вашего принтера, " +"чтобы свести к минимуму ошибки оборудования.\n" +"Это обеспечивает оптимальную работу устройства." + +msgid "Calibration Flow" +msgstr "Калибровка потока" + +# Если короче - Запуск калибровки +msgid "Start Calibration" +msgstr "Запустить калибровку" + +msgid "Completed" +msgstr "Завершено" + +msgid "Calibrating" +msgstr "Калибровка" + +msgid "No step selected" +msgstr "Шаг не задан" + +msgid "Auto-record Monitoring" +msgstr "Автозапись мониторинга" + +msgid "Go Live" +msgstr "Запустить трансляцию" + +# ??? Повторить попытку просмотра , Попробовать перезапустить видеотрансляцию +msgid "Liveview Retry" +msgstr "Перезапустить видеотрансляцию" + +msgid "Resolution" +msgstr "Разрешение" + +msgid "Enable" +msgstr "Включить" + +msgid "Hostname or IP" +msgstr "Имя хоста или IP-адрес" + +# ??? Пользовательский источник камеры +msgid "Custom camera source" +msgstr "Пользовательская камера" + +msgid "Show \"Live Video\" guide page." +msgstr "Показать страницу руководства «Прямая трансляция»." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Подключение принтера (локальная сеть)" + +msgid "Please input the printer access code:" +msgstr "Пожалуйста, введите код доступа к принтеру:" + +# ??? Перенёс на другую строку, проверить как отображается +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Вы можете найти его на принтере в разделе \n" +"Настройки > Сеть > Код подключения, как показано на рисунке:" + +msgid "Invalid input." +msgstr "Неверный ввод." + +msgid "New Window" +msgstr "Новое окно" + +msgid "Open a new window" +msgstr "Открыть новое окно" + +msgid "Application is closing" +msgstr "Закрытие приложения" + +msgid "Closing Application while some presets are modified." +msgstr "Закрытие приложения, при имеющихся изменениях в профилях." + +msgid "Logging" +msgstr "Авторизация" + +msgid "Preview" +msgstr "Предпросмотр нарезки" + +# ??? Управ. принтерами, Управ. устройствами, менеджер устройств, Диспетчер устройств, Принтеры +msgid "Multi-device" +msgstr "Принтеры" + +msgid "Project" +msgstr "Проект" + +msgid "Yes" +msgstr "Да" + +msgid "No" +msgstr "Нет" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "будет закрыт перед созданием новой модели. Хотите продолжить?" + +msgid "Slice plate" +msgstr "Нарезать стол" + +msgid "Print plate" +msgstr "Распечатать стол" + +msgid "Slice all" +msgstr "Нарезать все столы" + +msgid "Export G-code file" +msgstr "Экспорт в G-код" + +msgid "Export plate sliced file" +msgstr "Экспорт стола в файл проекта" + +msgid "Export all sliced file" +msgstr "Экспорт всех столов в файл проекта" + +msgid "Print all" +msgstr "Распечатать все столы" + +msgid "Send all" +msgstr "Отправить G-код всех столов на SD-карту" + +msgid "Keyboard Shortcuts" +msgstr "Горячие клавиши" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Показать список сочетаний клавиш" + +msgid "Setup Wizard" +msgstr "Мастер настройки" + +msgid "Show Configuration Folder" +msgstr "Показать конфигурационную папку" + +msgid "Show Tip of the Day" +msgstr "Показать полезный совет" + +msgid "Check for Update" +msgstr "Проверка обновления" + +msgid "Open Network Test" +msgstr "Проверка сети" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&O программе %s" + +msgid "Upload Models" +msgstr "Отправить модели" + +msgid "Download Models" +msgstr "Загрузить модели" + +msgid "Default View" +msgstr "Вид по умолчанию" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Сверху" + +msgid "Top View" +msgstr "Вид сверху" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Снизу" + +msgid "Bottom View" +msgstr "Вид снизу" + +msgid "Front" +msgstr "Спереди" + +msgid "Front View" +msgstr "Вид спереди" + +msgid "Rear" +msgstr "Сзади" + +msgid "Rear View" +msgstr "Вид сзади" + +msgid "Left" +msgstr "Слева" + +msgid "Left View" +msgstr "Вид слева" + +msgid "Right" +msgstr "Справа" + +msgid "Right View" +msgstr "Вид справа" + +msgid "Start a new window" +msgstr "Открыть новое окно" + +msgid "New Project" +msgstr "Новый проект" + +msgid "Start a new project" +msgstr "Начать новый проект" + +msgid "Open a project file" +msgstr "Открыть файл проекта" + +msgid "Recent projects" +msgstr "Недавние проекты" + +msgid "Save Project" +msgstr "Сохранить проект" + +msgid "Save current project to file" +msgstr "Сохранить текущий проект в файл" + +msgid "Save Project as" +msgstr "Сохранить проект как" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Сохранить текущий проект как" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Импортировать 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Загрузка модели" + +msgid "Import Zip Archive" +msgstr "Импортировать ZIP-архив" + +msgid "Load models contained within a zip archive" +msgstr "Загрузка моделей, содержащихся в ZIP-архиве" + +msgid "Import Configs" +msgstr "Импортировать конфигурацию" + +msgid "Load configs" +msgstr "Загрузка настроек" + +msgid "Import" +msgstr "Импорт" + +msgid "Export all objects as one STL" +msgstr "Экспорт всех моделей в один STL" + +msgid "Export all objects as STLs" +msgstr "Экспорт всех моделей в отдельные STL" + +msgid "Export Generic 3MF" +msgstr "Экспорт в общий 3MF" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Экспорт в 3mf без использования 3mf-расширений" + +msgid "Export current sliced file" +msgstr "Экспортировать текущий нарезанный файл" + +msgid "Export all plate sliced file" +msgstr "Экспорт всех нарезанных столов в файл" + +msgid "Export G-code" +msgstr "Экспорт в G-код" + +msgid "Export current plate as G-code" +msgstr "Экспортировать текущие модели со стола в G-код" + +msgid "Export Preset Bundle" +msgstr "Экспорт пакетов конфигурации" + +msgid "Export current configuration to files" +msgstr "Экспортировать текущую конфигурацию в файл" + +msgid "Export" +msgstr "Экспорт" + +msgid "Quit" +msgstr "Выйти" + +msgid "Undo" +msgstr "Отмена действия" + +msgid "Redo" +msgstr "Повтор действия" + +msgid "Cut selection to clipboard" +msgstr "Вырезать выбранное в буфер обмена" + +msgid "Copy" +msgstr "Копировать" + +msgid "Copy selection to clipboard" +msgstr "Скопировать выделенное в буфер обмена" + +msgid "Paste" +msgstr "Вставить" + +msgid "Paste clipboard" +msgstr "Вставить из буфера обмена" + +msgid "Delete selected" +msgstr "Удалить выбранное" + +msgid "Deletes the current selection" +msgstr "Удалить текущие выбранные модели" + +msgid "Delete all" +msgstr "Удалить всё" + +msgid "Deletes all objects" +msgstr "Удалить все модели" + +msgid "Clone selected" +msgstr "Копия выбранного" + +msgid "Clone copies of selections" +msgstr "Сделать копию выбранного" + +msgid "Select all" +msgstr "Выбрать всё" + +msgid "Selects all objects" +msgstr "Выбрать все модели" + +msgid "Deselect all" +msgstr "Снять выбор со всего" + +msgid "Deselects all objects" +msgstr "Снять выбор со всех моделей" + +msgid "Use Perspective View" +msgstr "Вид в перспективе" + +msgid "Use Orthogonal View" +msgstr "Ортогональный вид" + +msgid "Show &G-code Window" +msgstr "&Показать окно G-кода" + +msgid "Show g-code window in Previce scene" +msgstr "Показать окно G-кода в окне предпросмотра" + +msgid "Show 3D Navigator" +msgstr "Показать навигационный куб" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "" +"Показать навигационный куб в режиме подготовки и предварительного просмотра" + +msgid "Reset Window Layout" +msgstr "Сбросить настройки окон" + +msgid "Reset to default window layout" +msgstr "Восстановить расположение окон по умолчанию" + +msgid "Show &Labels" +msgstr "Показать &имена файлов" + +msgid "Show object labels in 3D scene" +msgstr "Показать имена моделей в 3D-сцене" + +msgid "Show &Overhang" +msgstr "Показать &нависания" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Подсвечивать нависания у модели в окне подготовки" + +msgid "Preferences" +msgstr "Параметры" + +msgid "Help" +msgstr "Помощь" + +msgid "Temperature Calibration" +msgstr "Калибровка температуры" + +msgid "Pass 1" +msgstr "Проход 1" + +msgid "Flow rate test - Pass 1" +msgstr "Тест скорости потока - 1-ый проход" + +msgid "Pass 2" +msgstr "Проход 2" + +msgid "Flow rate test - Pass 2" +msgstr "Тест скорости потока - 2-ой проход" + +msgid "Flow rate" +msgstr "Скорость потока" + +msgid "Pressure advance" +msgstr "Коэф. Pressure advance" + +msgid "Retraction test" +msgstr "Тест откатов" + +msgid "Orca Tolerance Test" +msgstr "Тест допусков от Orca" + +msgid "Max flowrate" +msgstr "Макс. объёмный расход" + +msgid "VFA" +msgstr "Тест на вертикальные артефакты (VFA)" + +msgid "More..." +msgstr "Дополнительно..." + +msgid "Tutorial" +msgstr "Руководство" + +msgid "Calibration help" +msgstr "Помощь в калибровке" + +msgid "More calibrations" +msgstr "Больше калибровок" + +msgid "&Open G-code" +msgstr "&Открыть файл G-кода" + +msgid "Open a G-code file" +msgstr "Выберите файл G-кода" + +msgid "Re&load from Disk" +msgstr "Пере&загрузить с диска" + +msgid "Reload the plater from disk" +msgstr "Перезагрузить стол с диска" + +msgid "Export &Toolpaths as OBJ" +msgstr "Экспорт траектории &инструмента в OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Экспортировать траекторию инструмента в OBJ" + +msgid "Open &Slicer" +msgstr "Открыть &слайсер" + +msgid "Open Slicer" +msgstr "Открыть слайсер" + +msgid "&Quit" +msgstr "В&ыход" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Выйти из %s" + +msgid "&File" +msgstr "&Файл" + +msgid "&View" +msgstr "&Вид" + +msgid "&Help" +msgstr "&Помощь" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "Файл с именем %s уже существует. Перезаписать его?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "Конфигурация с именем %s уже существует. Перезаписать её?" + +msgid "Overwrite file" +msgstr "Перезаписать файл" + +msgid "Yes to All" +msgstr "Да для всех" + +msgid "No to All" +msgstr "Нет для всех" + +msgid "Choose a directory" +msgstr "Выберите папку" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "Экспортирована %d конфигурация (только не системная)." +msgstr[1] "Экспортировано %d конфигурации (только не системные)." +msgstr[2] "Экспортировано %d конфигураций (только не системные)." + +msgid "Export result" +msgstr "Результат экспортирования" + +msgid "Select profile to load:" +msgstr "Выберите профиль для загрузки:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "Импортирована %d конфигурация (только не системная и совместимая)." +msgstr[1] "Импортировано %d конфигурации (только не системные и совместимые)." +msgstr[2] "Импортировано %d конфигураций (только не системные и совместимые)." + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"Подсказка: перед импортом конфигураций убедитесь, что вы добавили " +"соответствующий принтер." + +msgid "Import result" +msgstr "Импортировать результат" + +msgid "File is missing" +msgstr "Файл отсутствует" + +msgid "The project is no longer available." +msgstr "Проект больше не доступен." + +msgid "Filament Settings" +msgstr "Настройки прутка" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Вы хотите синхронизировать свои данные с Bambu Cloud? \n" +"В облаке храниться следующая информация:\n" +"1. Профили процессов печати\n" +"2. Профили пластиковых нитей\n" +"3. Профили принтеров" + +msgid "Synchronization" +msgstr "Синхронизация" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" +"Устройство не может обработать больше сообщений. Пожалуйста, повторите " +"попытку позже." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" +"Проигрыватель неисправен. Пожалуйста, переустановите системный проигрыватель." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"Проигрыватель не загружается. Нажмите кнопку «Воспроизвести», чтобы " +"повторить попытку." + +msgid "Please confirm if the printer is connected." +msgstr "Пожалуйста, проверьте, подключен ли принтер." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "Сейчас идёт загрузка. Пожалуйста, повторите попытку после завершения." + +msgid "Printer camera is malfunctioning." +msgstr "Камера принтера неисправна." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Возникла проблема. Пожалуйста, обновите прошивку принтера и повторите " +"попытку." + +# ??? Видеотрансляция, Трансляция с видеокамеры +# ??? Прямая трансляция для локальной сети отключена. Пожалуйста, включите её с экрана принтера. +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"Видеотрансляция для режима «Только LAN» отключена. Пожалуйста, включите её с " +"экрана принтера." + +msgid "Please enter the IP of printer to connect." +msgstr "Введите IP-адрес принтера для подключения." + +msgid "Initializing..." +msgstr "Инициализация..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "" +"Не удалось установить соединение. Пожалуйста, проверьте сеть и повторите " +"попытку" + +# ??? Проверить влезает ли теперь. Или ещё короче - Проверьте сеть и повторите попытку. Если не помогло, перезагрузите или обновите принтер. +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Проверьте сеть и повторите попытку. Если не помогло, попробуйте " +"перезагрузить или обновить принтер." + +# ??? Принтер разлогинился и не может подключиться +msgid "The printer has been logged out and cannot connect." +msgstr "Принтер вышел из системы и не может подключиться." + +# ??? Трансляция, видеотрансляция остановлена +msgid "Stopped." +msgstr "Трансляция с камеры остановлена." + +# ??? Сбой подключения к локальной сети (не удалось запустить просмотр в реальном времени +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "" +"Сбой подключения к локальной сети (не удалось запустить видеотрансляцию)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Для этой задачи потребуется Virtual Camera Tools!\n" +"Хотите установить?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Загрузка Virtual Camera Tools" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Уже работает одна виртуальная камера.\n" +"Snapmaker Orca поддерживает только одну виртуальную камеру.\n" +"Хотите остановить эту виртуальную камеру?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Не удалось инициализировать виртуальную камеру (%s)!" + +msgid "Network unreachable" +msgstr "Сеть недоступна" + +msgid "Information" +msgstr "Информация" + +msgid "Playing..." +msgstr "Воспроизведение..." + +msgid "Year" +msgstr "Год" + +msgid "Month" +msgstr "Месяц" + +msgid "All Files" +msgstr "Все файлы" + +msgid "Group files by year, recent first." +msgstr "Группировать файлы по годам (по убыванию)" + +msgid "Group files by month, recent first." +msgstr "Группировать файлы по месяцам (по убыванию)" + +msgid "Show all files, recent first." +msgstr "Показать все файлы (недавние первые)" + +msgid "Switch to timelapse files." +msgstr "Переключиться на файлы таймлапсов." + +msgid "Video" +msgstr "Видео" + +msgid "Switch to video files." +msgstr "Переключиться на видеофайлы." + +msgid "Switch to 3mf model files." +msgstr "Переключиться на файлы моделей в формате 3mf." + +msgid "Delete selected files from printer." +msgstr "Удалить выбранные файлы с принтера." + +msgid "Download" +msgstr "Скачать" + +msgid "Download selected files from printer." +msgstr "Скачать выбранные файлы с принтера." + +msgid "Select" +msgstr "Выбрать" + +msgid "Batch manage files." +msgstr "Пакетное управление файлами." + +msgid "Refresh" +msgstr "Обновить" + +msgid "Reload file list from printer." +msgstr "Перезагрузка списка файлов с принтера." + +msgid "No printers." +msgstr "Принтеры отсутствуют." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Ошибка подключения [%d]!" + +msgid "Loading file list..." +msgstr "Загрузка списка файлов..." + +msgid "No files" +msgstr "Файлы отсутствуют" + +msgid "Load failed" +msgstr "Ошибка загрузки" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Ошибка инициализации (подключённое устройство не готово)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"На текущей версии прошивки просмотр файлов на SD-карте не поддерживается. " +"Пожалуйста, обновите прошивку принтера." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "Ошибка инициализации (хранилище недоступно, вставьте SD-карту)!" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "Сбой подключения к локальной сети (не удалось просмотреть sd-карту)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "Просмотр файлов на SD-карте не поддерживается в режиме «Только LAN»." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Ошибка инициализации (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +"Вы собираетесь удалить %u файл с принтера. Вы уверены, что хотите это " +"сделать?" +msgstr[1] "" +"Вы собираетесь удалить %u файла с принтера. Вы уверены, что хотите это " +"сделать?" +msgstr[2] "" +"Вы собираетесь удалить %u файлов с принтера. Вы уверены, что хотите это " +"сделать?" + +msgid "Delete files" +msgstr "Удалить файлы" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Удалить файл '%s' с принтера?" + +msgid "Delete file" +msgstr "Удалить файл" + +msgid "Fetching model infomations ..." +msgstr "Извлечение информации о модели..." + +msgid "Failed to fetch model information from printer." +msgstr "Не удалось получить информацию о модели с принтера." + +msgid "Failed to parse model information." +msgstr "Не удалось обработать информацию о модели." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +"Файл .gcode.3mf не содержит G-кода. Пожалуйста, нарежьте его в программе " +"Snapmaker Orca и экспортируйте новый файл .gcode.3mf." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "Файл '%s' потерян! Пожалуйста, загрузите его снова." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"Файл: %s\n" +"Заголовок: %s\n" + +msgid "Download waiting..." +msgstr "Ожидание загрузки..." + +msgid "Play" +msgstr "Воспроизвести" + +msgid "Open Folder" +msgstr "Открыть папку" + +msgid "Download finished" +msgstr "Загрузка завершена" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Загрузка %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"При повторном подключении принтера операция не может быть завершена " +"немедленно, повторите попытку позже." + +msgid "File does not exist." +msgstr "Файла не существует." + +msgid "File checksum error. Please retry." +msgstr "Ошибка контрольной суммы файла. Повторите попытку." + +msgid "Not supported on the current printer version." +msgstr "Не поддерживается в текущей версии принтера." + +msgid "Storage unavailable, insert SD card." +msgstr "Накопитель недоступен, вставьте SD-карту." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Код ошибки: %d" + +msgid "Speed:" +msgstr "Скорость:" + +msgid "Deadzone:" +msgstr "Мёртвая зона:" + +msgid "Options:" +msgstr "Опции:" + +msgid "Zoom" +msgstr "Масштаб" + +msgid "Translation/Zoom" +msgstr "Перемещение/Масштаб" + +msgid "3Dconnexion settings" +msgstr "Настройки 3Dconnexion" + +msgid "Swap Y/Z axes" +msgstr "Поменять местами оси Y/Z" + +msgid "Invert X axis" +msgstr "Инвертировать ось X" + +msgid "Invert Y axis" +msgstr "Инвертировать ось Y" + +msgid "Invert Z axis" +msgstr "Инвертировать ось Z" + +msgid "Invert Yaw axis" +msgstr "Инвертировать ось рыскания (Y)" + +msgid "Invert Pitch axis" +msgstr "Инвертировать ось тангажа (X)" + +msgid "Invert Roll axis" +msgstr "Инвертировать ось крена (Z)" + +msgid "Printing Progress" +msgstr "Прогресс печати" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Слой: Н/Д" + +msgid "Clear" +msgstr "Очистить" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"Печать модели из Makerworld успешно завершена, \n" +"но синхронизировать информацию о рейтинге не удалось." + +# т.е. по сути g-код. На сколько вы оцениваете этот файл печати?" +msgid "How do you like this printing file?" +msgstr "На сколько вы оцениваете этот файл печати?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "(Модель уже была оценена. Ваша оценка перезапишет предыдущую оценку.)" + +msgid "Rate" +msgstr "Оценка" + +msgid "Camera" +msgstr "Камера" + +msgid "SD Card" +msgstr "SD-карта" + +msgid "Camera Setting" +msgstr "Настройки камеры" + +msgid "Switch Camera View" +msgstr "Переключение позиции камеры" + +msgid "Control" +msgstr "Управление" + +msgid "Printer Parts" +msgstr "Части принтера" + +msgid "Print Options" +msgstr "Настройки печати" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Свет" + +msgid "Aux" +msgstr "Вспом." + +msgid "Cham" +msgstr "Выдув" + +msgid "Bed" +msgstr "Стол" + +msgid "Debug Info" +msgstr "Отладочная информация" + +msgid "No SD Card" +msgstr "Отсутствует SD-карта" + +msgid "SD Card Abnormal" +msgstr "Неисправность SD-карты" + +msgid "Cancel print" +msgstr "Отмена печати" + +msgid "Are you sure you want to cancel this print?" +msgstr "Вы уверены, что хотите отменить эту печать?" + +msgid "Downloading..." +msgstr "Загрузка..." + +msgid "Cloud Slicing..." +msgstr "Облачная нарезка..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "Количество заданий в очереди на облачной нарезке: %s." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Слой: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Слой: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Пожалуйста, перед загрузкой или выгрузкой прутка, нагрейте сопло до " +"температуры выше 170°C." + +msgid "Still unload" +msgstr "Ещё выгружается" + +msgid "Still load" +msgstr "Ещё загружается" + +msgid "Please select an AMS slot before calibration" +msgstr "Пожалуйста, выберите слот АСПП перед калибровкой" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Не удаётся считать информацию о пластиковой нити. Пластиковая нить загружена " +"в голову, пожалуйста, выгрузите её и повторите попытку." + +msgid "This only takes effect during printing" +msgstr "Применимо только во время печати" + +msgid "Silent" +msgstr "Тихий" + +msgid "Standard" +msgstr "Стандартный" + +msgid "Sport" +msgstr "Спортивный" + +msgid "Ludicrous" +msgstr "Сумасшедший" + +msgid "Can't start this without SD card." +msgstr "Невозможно запустить без SD-карты." + +msgid "Rate the Print Profile" +msgstr "Оценить профиль печати" + +msgid "Comment" +msgstr "Комментарий" + +msgid "Rate this print" +msgstr "Оценить эту печать" + +msgid "Add Photo" +msgstr "Добавить фото" + +msgid "Delete Photo" +msgstr "Удалить фото" + +msgid "Submit" +msgstr "Отправить" + +msgid "Please click on the star first." +msgstr "Пожалуйста, сначала нажмите на звездочку." + +msgid "InFo" +msgstr "Информация" + +msgid "Get oss config failed." +msgstr "" +"Не удалось получить конфигурацию OSS.\n" +"\n" +"Ошибка получения конфигурации OSS." + +msgid "Upload Pictrues" +msgstr "Отправка изображений" + +msgid "Number of images successfully uploaded" +msgstr "Количество успешно отправленных изображений" + +msgid " upload failed" +msgstr " ошибка отправки" + +msgid " upload config prase failed\n" +msgstr " ошибка обработки конфигурации при отправке\n" + +msgid " No corresponding storage bucket\n" +msgstr " Отсутствует хранилище данных\n" + +msgid " can not be opened\n" +msgstr " не удаётся открыть\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"В процессе загрузки изображений возникли следующие проблемы. Игнорировать " +"их?\n" +"\n" + +msgid "info" +msgstr "Информация" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"Синхронизация результатов печати. Повторите попытку через несколько секунд." + +msgid "Upload failed\n" +msgstr "Ошибка отправки\n" + +msgid "obtaining instance_id failed\n" +msgstr "не удалось получить instance_id\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Ваш комментарий не может быть отправлен по некоторым причинам. Причины:\n" +"\n" +"Код ошибки: " + +msgid "error message: " +msgstr "сообщение об ошибке: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Хотите перейти на страницу для выставления оценки?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Некоторые из ваших изображений не удалось загрузить. Хотите перейти на " +"страницу для выставления оценки?" + +msgid "You can select up to 16 images." +msgstr "Допускается выбор до 16 изображений." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"Для выставления положительной оценки (4 или 5 звезд) требуется хотя бы одна " +"успешная запись о печати данным профилем печати." + +msgid "Status" +msgstr "Статус" + +msgid "Update" +msgstr "Обновление" + +msgid "Don't show again" +msgstr "Больше не показывать" + +#, c-format, boost-format +msgid "%s error" +msgstr "Ошибка %s" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s обнаружил ошибку" + +#, c-format, boost-format +msgid "%s warning" +msgstr "Предупреждение %s" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "Предупреждение %s" + +#, c-format, boost-format +msgid "%s info" +msgstr "Информация %s" + +#, c-format, boost-format +msgid "%s information" +msgstr "Информация %s" + +msgid "Skip" +msgstr "Пропустить" + +msgid "Newer 3mf version" +msgstr "Новая версия 3mf" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" +"Версия этого 3mf файла сохранена в бета-версии приложения и она новее вашей " +"текущей версии Snapmaker Orca." + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "Если хотите попробовать бета-версию Snapmaker Orca, вы можете нажать на" + +msgid "Download Beta Version" +msgstr "Скачать бета-версию" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "Версия файла 3mf новее, чем ваша текущая версия Snapmaker Orca." + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" +"Обновите Snapmaker Orca, чтобы включить все функции сохранённые в этом 3mf " +"файле." + +msgid "Current Version: " +msgstr "Текущая версия: " + +msgid "Latest Version: " +msgstr "Последняя версия: " + +msgid "Not for now" +msgstr "Не сейчас" + +msgid "3D Mouse disconnected." +msgstr "3D-мышь отключена." + +msgid "Configuration can update now." +msgstr "Конфигурация может быть обновлена сейчас." + +msgid "Detail." +msgstr "Подробности." + +msgid "Integration was successful." +msgstr "Интеграция прошла успешно." + +msgid "Integration failed." +msgstr "Не удалось выполнить интеграцию." + +msgid "Undo integration was successful." +msgstr "Отмена интеграции прошла успешно." + +msgid "New network plug-in available." +msgstr "Доступно обновление сетевого плагина." + +msgid "Details" +msgstr "Подробности" + +msgid "New printer config available." +msgstr "Доступна новая конфигурация принтера." + +msgid "Wiki" +msgstr "Вики-сайт" + +msgid "Undo integration failed." +msgstr "Не удалось отменить интеграцию." + +msgid "Exporting." +msgstr "Экспорт..." + +msgid "Software has New version." +msgstr "Доступна новая версия приложения." + +msgid "Goto download page." +msgstr "Перейти на страницу загрузки." + +msgid "Open Folder." +msgstr "Открыть папку." + +msgid "Safely remove hardware." +msgstr "Безопасное извлечение устройства." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d модель имеет пользовательскую поддержку." +msgstr[1] "%1$d модели имеют пользовательские поддержки." +msgstr[2] "%1$d моделей имеют пользовательские поддержки." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d модель окрашена." +msgstr[1] "%1$d модели окрашены." +msgstr[2] "%1$d моделей окрашено." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "Загружена %1$d деталь, являющаяся частью разрезанной модели." +msgstr[1] "Загружена %1$d детали, являющиеся частью разрезанной модели." +msgstr[2] "Загружена %1$d деталей, являющиеся частью разрезанной модели." + +msgid "ERROR" +msgstr "ОШИБКА" + +msgid "COMPLETED" +msgstr "ЗАВЕРШЕНО" + +msgid "CANCELED" +msgstr "ОТМЕНЕНО" + +msgid "Cancel upload" +msgstr "Отменить отправку" + +msgid "Jump to" +msgstr "Перейти к" + +msgid "Error:" +msgstr "Ошибка:" + +msgid "Warning:" +msgstr "Предупреждение:" + +msgid "Export successfully." +msgstr "Успешно экспортировано." + +msgid "Model file downloaded." +msgstr "Файл модели скачан." + +msgid "Serious warning:" +msgstr "Серьезное предупреждение:" + +msgid " (Repair)" +msgstr " (Починить модель)" + +msgid " Click here to install it." +msgstr " Нажмите здесь, чтобы установить." + +msgid "WARNING:" +msgstr "ПРЕДУПРЕЖДЕНИЕ:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "Вашей модели необходима поддержка, включите её генерацию!" + +msgid "Gcode path overlap" +msgstr "Перекрытие пути G-кода" + +msgid "Support painting" +msgstr "Рисование поддержек" + +msgid "Color painting" +msgstr "Покраска" + +msgid "Cut connectors" +msgstr "Вырезанные соединения" + +msgid "Layers" +msgstr "Слои" + +msgid "Range" +msgstr "Диапазон" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"Приложение не может работать нормально, так как версия OpenGL ниже 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Пожалуйста, обновите драйвер вашей видеокарты." + +msgid "Unsupported OpenGL version" +msgstr "Неподдерживаемая версия OpenGL" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Не удалось загрузить шейдеры:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Ошибка загрузки шейдеров" + +msgctxt "Layers" +msgid "Top" +msgstr "Сверху" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Снизу" + +msgid "Enable AI monitoring of printing" +msgstr "Контроль процесса печати с помощью ИИ" + +msgid "Sensitivity of pausing is" +msgstr "Чувствительность" + +msgid "Enable detection of build plate position" +msgstr "Определение положения печатной пластины" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"Функция обнаружения метки (QR-кода) печатной пластины. Печать " +"приостанавливается, если метка находится не в том месте." + +msgid "First Layer Inspection" +msgstr "Проверка первого слоя" + +msgid "Auto-recovery from step loss" +msgstr "Автовосстановление после потери шагов" + +msgid "Allow Prompt Sound" +msgstr "Разрешить звуковые уведомления" + +msgid "Filament Tangle Detect" +msgstr "Обнаружение запутывания прутка" + +# ???протечки, засорения +msgid "Nozzle Clumping Detection" +msgstr "Обнаружение сгустков на сопле" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" +"Обнаружение накапливания на сопле материала в результате засорения/протечки " +"сопла или других причин." + +msgid "Nozzle Type" +msgstr "Тип сопла" + +msgid "Stainless Steel" +msgstr "Нержавеющая сталь" + +msgid "Hardened Steel" +msgstr "Закалённая сталь" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Общие" + +msgid "Objects" +msgstr "Модели" + +msgid "Advance" +msgstr "Расширенный" + +msgid "Compare presets" +msgstr "Сравнение профилей" + +msgid "View all object's settings" +msgstr "Просмотр всех настроек модели" + +msgid "Material settings" +msgstr "Параметры материала" + +msgid "Remove current plate (if not last one)" +msgstr "Удалить текущую печатную пластину (кроме последней)" + +msgid "Auto orient objects on current plate" +msgstr "Автоориентация моделей на текущей печатной пластине" + +msgid "Arrange objects on current plate" +msgstr "Расставить модели на текущей печатной пластине" + +msgid "Unlock current plate" +msgstr "Разблокировать текущую печатную пластину" + +msgid "Lock current plate" +msgstr "Заблокировать текущую печатную пластину" + +msgid "Edit current plate name" +msgstr "Изменить имя текущей пластины" + +msgid "Move plate to the front" +msgstr "Переместить пластину вперед" + +msgid "Customize current plate" +msgstr "Настроить текущую печатную пластину" + +#, boost-format +msgid " plate %1%:" +msgstr " печатной пластины %1%: " + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Недопустимое имя файла. Следующие символов не разрешены:" + +msgid "Sliced Info" +msgstr "Информация о нарезке" + +msgid "Used Filament (m)" +msgstr "Использовано прутка (м)" + +msgid "Used Filament (mm³)" +msgstr "Использовано прутка (мм³)" + +msgid "Used Filament (g)" +msgstr "Использовано прутка (г)" + +msgid "Used Materials" +msgstr "Использовано материалов" + +msgid "Estimated time" +msgstr "Расчётное время печати" + +msgid "Filament changes" +msgstr "Смена прутка" + +msgid "Click to edit preset" +msgstr "Нажмите, чтобы изменить профиль" + +msgid "Connection" +msgstr "Подключиться" + +msgid "Bed type" +msgstr "Тип стола" + +msgid "Flushing volumes" +msgstr "Объём очистки" + +msgid "Add one filament" +msgstr "Добавить пластиковую нить" + +msgid "Remove last filament" +msgstr "Удалить предыдущую добавленную пластиковую нить" + +msgid "Synchronize filament list from AMS" +msgstr "Синхронизировать список материалов из АСПП" + +msgid "Set filaments to use" +msgstr "Выбор пластиковой нити" + +msgid "Search plate, object and part." +msgstr "Поиск печатной пластины, модели или части модели." + +msgid "Pellets" +msgstr "Гранулы" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"АСПП недоступна. Пожалуйста, выберите принтер \n" +"на вкладке «Принтер», чтобы загрузить информацию о АСПП." + +msgid "Sync filaments with AMS" +msgstr "Синхронизация прутка с АСПП" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"При синхронизации пластиковых нитей с АСПП все текущие выбранные профили " +"прутков и цвета будут сброшены. Продолжить?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Синхронизация уже выполнена. Хотите синхронизировать только изменения или " +"заново синхронизировать всё?" + +msgid "Sync" +msgstr "Только изменения" + +msgid "Resync" +msgstr "Всё" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "" +"Синхронизация не выполнена, ввиду отсутствия совместимых пластиковых нитей." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Имеются несколько неизвестных материалов, сопоставленных с общим профилем. " +"Обновите или перезапустите Snapmaker Orca, чтобы проверить наличие обновлений " +"системных профилей." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Вы хотите сохранить изменения в \"%1%\"?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Размонтирование прошло успешно. Теперь устройство %s(%s) может быть " +"безопасно извлечено из компьютера." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "Не удалось извлечь устройство %s(%s)." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "Обнаружен предыдущий несохранённый проект. Хотите восстановить его?" + +msgid "Restore" +msgstr "Восстановить" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"Текущая температура стола довольно высока. При печати этим материалом в " +"закрытом корпусе возможно засорение сопла. Откройте переднюю дверцу и/или " +"верхнюю крышку принтера." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"Твердость сопла, установленного по умолчанию, не достаточна для печати " +"данной пластиковой нитью. Замените сопло на закалённое или смените " +"пластиковую нить. В противном случае сопло будет изношено или повреждено." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Включение обычного режима таймлапса может привести к появлению дефектов " +"поверхности, поэтому рекомендуется изменить режим на плавный." + +msgid "Expand sidebar" +msgstr "Развернуть боковую панель" + +msgid "Collapse sidebar" +msgstr "Свернуть боковую панель" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Загрузка файла: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "" +"Этот 3mf создан не в Snapmaker Orca, поэтому загрузятся только данные геометрии." + +msgid "Load 3mf" +msgstr "Загрузка 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"Версия этого формата 3mf (%s) новее текущей версии %s (%s).\n" +"Обнаружены следующие нераспознанные ключи:" + +msgid "You'd better upgrade your software.\n" +msgstr "Рекомендуем вам обновить программу.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"Версия этого формата 3mf (%s) новее текущей версии %s (%s).\n" +"Рекомендуется обновить программу." + +msgid "Invalid values found in the 3mf:" +msgstr "В файле 3mf найдены недопустимые значения:" + +msgid "Please correct them in the param tabs" +msgstr "Пожалуйста, исправьте их на вкладках параметров" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" +"В профиле прутка или принтера этого 3mf файла содержится следующий " +"модифицированный G-код:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Пожалуйста, подтвердите, что этот модифицированный G-код безопасен во " +"избежание повреждения принтера!" + +msgid "Modified G-codes" +msgstr "Модифицированный G-код" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" +"В этом 3mf файле содержаться следующие пользовательские профили прутка или " +"принтера:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Во избежание повреждения принтера убедитесь, что G-код в этих профилях " +"безопасен!" + +msgid "Customized Preset" +msgstr "Пользовательский профиль" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "Имена компонентов внутри step файла не в формате UTF8!" + +msgid "The name may show garbage characters!" +msgstr "В названии могут присутствовать ненужные символы!" + +msgid "Remember my choice." +msgstr "Запомнить выбор" + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Не удалось загрузить файл \"%1%\". Обнаружена недопустимая конфигурация." + +msgid "Objects with zero volume removed" +msgstr "Модели с нулевым объёмом удалены" + +msgid "The volume of the object is zero" +msgstr "Объём модели равен нулю" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"Модель из файла %s слишком мала. Возможно, её размеры \n" +"в метрах или дюймах. Внутренней единицей программы \n" +"являются миллиметры. Пересчитать размеры модели?" + +msgid "Object too small" +msgstr "Модель слишком мала" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Этот файл содержит несколько моделей, находящихся на разной высоте.\n" +"Следует ли загружать файл как единую модель, состоящий из нескольких\n" +"частей (вместо того, чтобы рассматривать их как несколько моделей)?" + +msgid "Multi-part object detected" +msgstr "Обнаружена модель, состоящая из нескольких частей" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "" +"Загрузить эти файлы как единую модель состоящую из нескольких частей?\n" + +msgid "Object with multiple parts was detected" +msgstr "Обнаружена модель, состоящая из нескольких частей" + +msgid "The file does not contain any geometry data." +msgstr "Файл не содержит никаких геометрических данных." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Похоже, ваша модель слишком большая. \n" +"Хотите автоматически уменьшить её масштаб, \n" +"чтобы она уместилась на столе?" + +msgid "Object too large" +msgstr "Модель слишком большая" + +msgid "Export STL file:" +msgstr "Экспорт в STL файл:" + +msgid "Export AMF file:" +msgstr "Экспорт в AMF файл:" + +msgid "Save file as:" +msgstr "Сохранить файл как:" + +msgid "Export OBJ file:" +msgstr "Экспорт в OBJ файл:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"Файл %s уже существует.\n" +"Хотите заменить его?" + +msgid "Confirm Save As" +msgstr "Подтвердить сохранение как" + +msgid "Delete object which is a part of cut object" +msgstr "Удаление детали, являющейся частью разрезанной модели" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Вы пытаетесь удалить деталь, являющейся частью разрезанной модели. \n" +"Это действие приведёт к удалению информации о разрезе. \n" +"После этого согласованность модели не может быть гарантирована." + +msgid "The selected object couldn't be split." +msgstr "Выбранная модель не может быть разделена." + +msgid "Another export job is running." +msgstr "Уже идёт другой процесс экспорта." + +msgid "Unable to replace with more than one volume" +msgstr "Невозможно заменить более чем одним объём" + +msgid "Error during replace" +msgstr "Ошибка при выполнении замены" + +msgid "Replace from:" +msgstr "Заменить из:" + +msgid "Select a new file" +msgstr "Выберите новый файл" + +msgid "File for the replace wasn't selected" +msgstr "Файл для замены не выбран" + +msgid "Please select a file" +msgstr "Пожалуйста, выберите файл" + +msgid "Do you want to replace it" +msgstr "Хотите заменить его" + +msgid "Message" +msgstr "Сообщение" + +msgid "Reload from:" +msgstr "Перезагрузка из:" + +msgid "Unable to reload:" +msgstr "Не удалось перезагрузить:" + +msgid "Error during reload" +msgstr "Ошибка во время перезагрузки" + +msgid "There are warnings after slicing models:" +msgstr "Предупреждение о нарезке моделей:" + +msgid "warnings" +msgstr "предупреждения" + +msgid "Invalid data" +msgstr "Неверные данные" + +msgid "Slicing Canceled" +msgstr "Нарезка отменена" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Нарезка стола %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Пожалуйста, устраните ошибки нарезки и попробуйте опубликовать снова." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "Сетевой плагин не обнаружен. Функции, связанные с сетью, недоступны." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Режим только предпросмотра:\n" +"Загруженный файл содержит только G-код, поэтому переход на страницу " +"«Подготовка» невозможен." + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "Изменённые профили можно сохранить в новом проекте или отказаться." + +msgid "Creating a new project" +msgstr "Создание нового проекта" + +msgid "Load project" +msgstr "Загрузить проект" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Не удалось сохранить проект.\n" +"Убедитесь, что папка существует и что файл проекта не открыт в другой " +"программе." + +msgid "Save project" +msgstr "Сохранение проекта" + +msgid "Importing Model" +msgstr "Импортирование модели" + +msgid "prepare 3mf file..." +msgstr "подготовка 3mf файла..." + +msgid "Download failed, unknown file format." +msgstr "Не удалось загрузить, неизвестный формат файла." + +msgid "downloading project ..." +msgstr "скачивание проекта..." + +msgid "Download failed, File size exception." +msgstr "Загрузка не удалась, ошибка размера файла." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Проект загружен %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"Не удалось импортировать в Snapmaker Orca. Загрузите файл и импортируйте его " +"вручную." + +msgid "Import SLA archive" +msgstr "Импорт SLA архива" + +msgid "The selected file" +msgstr "В выбранном файле" + +msgid "does not contain valid gcode." +msgstr "G-кода содержатся недопустимые данные." + +msgid "Error occurs while loading G-code file" +msgstr "Ошибка при загрузке файла G-кода" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "Не удалось загрузить ZIP-архив расположенный по пути %1%." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "Не удалось разархивировать файл в %1%: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "Ошибка поиска распакованного файла в %1%. Не удалось распаковать файл." + +msgid "Drop project file" +msgstr "Операции с файлами проекта" + +msgid "Please select an action" +msgstr "Пожалуйста, выберите действие с" + +msgid "Open as project" +msgstr "Открыть как проект" + +msgid "Import geometry only" +msgstr "Импортировать только геометрию" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Одновременно можно открыть только один файл G-кода." + +msgid "G-code loading" +msgstr "Загрузка G-кода" + +msgid "G-code files can not be loaded with models together!" +msgstr "Одновременная загрузка файла G-кода и модели невозможна!" + +msgid "Can not add models when in preview mode!" +msgstr "В режиме предпросмотра добавление моделей недоступно!" + +msgid "All objects will be removed, continue?" +msgstr "Все модели будут удалены, продолжить?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"В текущем проекте имеются несохранённые изменения. \n" +"Сохранить их перед продолжением?" + +msgid "Number of copies:" +msgstr "Количество копий:" + +msgid "Copies of the selected object" +msgstr "Количество копий выбранной модели" + +msgid "Save G-code file as:" +msgstr "Сохранить файл G-кода как:" + +msgid "Save SLA file as:" +msgstr "Сохранить SLA файл как:" + +msgid "The provided file name is not valid." +msgstr "Указано недопустимое имя файла." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "Следующие символы не разрешены файловой системой FAT:" + +msgid "Save Sliced file as:" +msgstr "Сохранить нарезанный файл как:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "Файл %s отправлен в память принтера и может быть просмотрен на нём." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Невозможно выполнить булеву операцию над сетками модели. Будут сохранены " +"только положительные части. Вы можете исправить сетки и попробовать снова." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Причина: часть \"%1%\" пустая." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Причина: часть \"%1%\" не ограничивает объём." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Причина: часть \"%1%\" имеет самопересечение." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Причина: \"%1%\" и другая часть не пересекаются." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"Вы уверены, что хотите сохранить исходные SVG файлы с их локальными путями в " +"3MF файле?\n" +"Если нажмете «НЕТ», все SVG файлы в проекте больше не будут доступны для " +"редактирования." + +msgid "Private protection" +msgstr "Частная охрана" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "Готов ли 3D-принтер? Печатная пластина на месте, пустая и чистая?" + +msgid "Upload and Print" +msgstr "Загрузить и напечатать" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Печать по очереди: \n" +"Рекомендуется использовать автоматическую расстановку, чтобы избежать " +"столкновений при печати." + +msgid "Send G-code" +msgstr "Отправить G-код" + +msgid "Send to printer" +msgstr "Отправить на принтер" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "Пользовательские поддержки и раскраска были удалены перед починкой." + +msgid "Optimize Rotation" +msgstr "Оптимизация вращения" + +msgid "Invalid number" +msgstr "Неправильное числовое значение" + +msgid "Plate Settings" +msgstr "Настройки печатной пластины" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Количество выбранных частей: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Количество выбранных моделей: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Имя части: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Имя модели: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Размер: %1% x %2% x %3% дюйм\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Размер: %1% x %2% x %3% мм\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Объём: %1% дюйм³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "" +"Объём: %1% мм³\n" +"\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Треугольников: %1%\n" + +msgid "Tips:" +msgstr "Подсказки:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"Функция «Починить модель» в настоящее время доступна только в Windows. " +"Пожалуйста, почините модель с помощью Bambu Studio (Windows) или в другой " +"CAD программе." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Не рекомендуется использовать печатную пластину% d (%s) для печати прутком " +"%s (%s). Если вы всё же хотите сделать это, то установите температуру стола " +"для этого прутка на ненулевое значение." + +msgid "Switching the language requires application restart.\n" +msgstr "Для смены языка требуется перезапуск приложения.\n" + +msgid "Do you want to continue?" +msgstr "Хотите продолжить?" + +msgid "Language selection" +msgstr "Выбор языка" + +msgid "Switching application language while some presets are modified." +msgstr "Смена языка приложения при изменении некоторых профилей." + +msgid "Changing application language" +msgstr "Изменение языка приложения" + +msgid "Changing the region will log out your account.\n" +msgstr "Смена региона приведёт к выходу из вашей учётной записи.\n" + +msgid "Region selection" +msgstr "Выделение области" + +msgid "Second" +msgstr "секунд" + +msgid "Browse" +msgstr "Обзор" + +msgid "Choose Download Directory" +msgstr "Выбор папки загрузки" + +msgid "Associate" +msgstr "Ассоциация" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "Текущая ассоциация: " + +msgid "Current Instance" +msgstr "Текущая копия" + +msgid "Current Instance Path: " +msgstr "Путь к текущей копии: " + +msgid "General Settings" +msgstr "Общие настройки" + +msgid "Asia-Pacific" +msgstr "Азиатско-Тихоокеанский" + +msgid "China" +msgstr "Китай" + +msgid "Europe" +msgstr "Европа" + +msgid "North America" +msgstr "Северная Америка" + +msgid "Others" +msgstr "Прочее" + +msgid "Login Region" +msgstr "Регион входа" + +msgid "Stealth Mode" +msgstr "Режим конфиденциальности (отключение телеметрии Bambulab)" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" +"Это остановит передачу данных в облачные сервисы Bambu. Пользователи, " +"которые не используют принтеры BBL или используют режим «Только LAN», могут " +"безопасно включить эту функцию." + +msgid "Enable network plugin" +msgstr "Включить сетевой плагин" + +msgid "Check for stable updates only" +msgstr "Уведомлять только о стабильных версиях программы" + +msgid "Metric" +msgstr "Метрическая СИ" + +msgid "Imperial" +msgstr "Имперская СИ" + +msgid "Units" +msgstr "" +"Единицы \n" +"измерения" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "Запускать только один экземпляр программы" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"В OSX по умолчанию всегда работает только один экземпляр приложения. Однако " +"из командной строки можно запускать несколько экземпляров одного и того же " +"приложения. В таком случае эти настройки разрешат работу только одного " +"экземпляра." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" +"Если включено, разрешена работа только одного экземпляра той же самой версии " +"программы." + +msgid "Home" +msgstr "Home" + +msgid "Default Page" +msgstr "" +"Страница \n" +"по умолчанию" + +msgid "Set the page opened on startup." +msgstr "Задание страницы, открываемой при запуске приложения." + +msgid "Touchpad" +msgstr "Тачпад" + +msgid "Camera style" +msgstr "" +"Стиль управ-\n" +"ления камерой" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"Выбор стиля управления камерой.\n" +"По умолчанию: ЛКМ+перемещение для вращения, ПК/СК мыши для перемещения " +"камеры.\n" +"Сенсорная панель: Alt + перемещение для вращения, Shift + перемещение для " +"перемещения камеры." + +msgid "Zoom to mouse position" +msgstr "Приближать к положению курсора" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Увеличивать масштаб по направлению к курсору в 3D-виде, а не к центру 2D-" +"окна." + +msgid "Use free camera" +msgstr "Использовать свободную камеру" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Если включено, используется свободное вращение камеры. Если выключено, " +"используется вращение камера с ограничениями." + +msgid "Reverse mouse zoom" +msgstr "Инвертировать управление масштабом" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" +"Если включено, направление масштабирования с помощью колесика мыши будет " +"инвертировано." + +msgid "Show splash screen" +msgstr "Показывать заставку при запуске программы" + +msgid "Show the splash screen during startup." +msgstr "Показывать окно приветствия при запуске приложения." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Показывать уведомление с полезным советом при запуске приложения" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "" +"Если включено, будут показываться уведомления с полезном советом при запуске " +"приложения." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "Объём очистки: автопересчёт при каждом изменении цвета" + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "" +"Если включено, выполняется автоматический перерасчёт объёма очистки при " +"каждом изменении цвета." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "Объём очистки: автопересчёт при каждой смене прутка" + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "" +"Если включено, выполняется автоматический перерасчёт объёма очистки при " +"каждой смене прутка." + +msgid "Remember printer configuration" +msgstr "Запоминать конфигурацию принтера" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" +"Если включено, программа автоматически запоминает и переключает конфигурацию " +"материала/процесса печати для каждого принтера." + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "Управление несколькими принтерами (требуется перезапуск программы)" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"Если включено, вы сможете управлять несколькими устройствами и отправлять " +"задания на печать на несколько устройств одновременно." + +msgid "Network" +msgstr "Сеть" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "Автосинхронизация пользовательских профилей (принтера/прутка/процесса)" + +msgid "User Sync" +msgstr "Синхронизация пользовательских данных." + +msgid "Update built-in Presets automatically." +msgstr "Обновлять встроенные профили автоматически" + +msgid "System Sync" +msgstr "Синхронизация системных данных." + +msgid "Clear my choice on the unsaved presets." +msgstr "Очистить мой выбор от несохранённых профилей." + +msgid "Associate files to Snapmaker Orca" +msgstr "Сопоставление типов файлов с Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Ассоциировать файлы .3mf с Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Если включено, назначает Snapmaker Orca в качестве приложения по умолчанию для " +"открытия .3mf файлов." + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Ассоциировать файлы .stl с Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Если включено, назначает Snapmaker Orca в качестве приложения по умолчанию для " +"открытия .stl файлов." + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Ассоциировать файлы .step/.stp с Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Если включено, назначает Snapmaker Orca в качестве приложения по умолчанию для " +"открытия .step файлов." + +msgid "Associate web links to Snapmaker Orca" +msgstr "Сопоставление веб-ссылок с Snapmaker Orca" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "Ассоциировать URL-адреса с Snapmaker Orca" + +msgid "Maximum recent projects" +msgstr "Максимальное количество недавних проектов" + +msgid "Maximum count of recent projects" +msgstr "" +"Максимальное количество проектов, отображаемое в списке недавних проектов." + +msgid "Clear my choice on the unsaved projects." +msgstr "Очистить мой выбор от несохранённых проектов." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "Отключить предупреждения при загрузке 3MF с модифицированным G-кодом" + +msgid "Auto-Backup" +msgstr "Автосоздание резервной копии" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Периодическое создание резервной копии проекта для восстановления после " +"непредвиденного сбоя программы." + +msgid "every" +msgstr "каждые" + +msgid "The peroid of backup in seconds." +msgstr "Время резервного копирования в секундах." + +msgid "Downloads" +msgstr "Загрузки" + +msgid "Dark Mode" +msgstr "Тёмная тема" + +msgid "Enable Dark mode" +msgstr "Включить тёмную тему" + +msgid "Develop mode" +msgstr "Режим разработчика" + +msgid "Skip AMS blacklist check" +msgstr "Пропуск проверки материалов в АСПП из файла чёрного списка" + +msgid "Home page and daily tips" +msgstr "Домашняя страница и ежедневные советы" + +msgid "Show home page on startup" +msgstr "Показывать домашнюю страницу при запуске" + +msgid "Sync settings" +msgstr "Настройки синхронизации" + +msgid "User sync" +msgstr "Синхронизация пользователя" + +msgid "Preset sync" +msgstr "Синхронизация профилей" + +msgid "Preferences sync" +msgstr "Синхронизация настроек" + +msgid "View control settings" +msgstr "Просмотр настроек управления" + +msgid "Rotate of view" +msgstr "Вращение камеры" + +msgid "Move of view" +msgstr "Перемещение камеры" + +msgid "Zoom of view" +msgstr "Масштабирование вида" + +msgid "Other" +msgstr "Прочее" + +msgid "Mouse wheel reverses when zooming" +msgstr "Менять направление масштабирования с помощью колеса мыши" + +msgid "Enable SSL(MQTT)" +msgstr "Включить SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Включить SSL(FTP)" + +msgid "Internal developer mode" +msgstr "Режим внутреннего разработчика" + +msgid "Log Level" +msgstr "Уровень ведения журнала" + +msgid "fatal" +msgstr "критическая ошибка" + +msgid "error" +msgstr "ошибка" + +msgid "warning" +msgstr "предупреждение" + +msgid "debug" +msgstr "отладка" + +msgid "trace" +msgstr "трассировка" + +msgid "Host Setting" +msgstr "Настройка хоста" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEV host: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA host: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "PRE host: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Хост принтера" + +msgid "debug save button" +msgstr "кнопка сохранения отладки" + +msgid "save debug settings" +msgstr "Сохранить настройки отладки" + +msgid "DEBUG settings have saved successfully!" +msgstr "Настройки отладки успешно сохранены!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Смена облачной среды, пройдите повторную аутентификацию!" + +msgid "System presets" +msgstr "Системные профили" + +msgid "User presets" +msgstr "Пользовательские профили" + +msgid "Incompatible presets" +msgstr "Несовместимые профили" + +msgid "AMS filaments" +msgstr "Прутки АСПП" + +msgid "Click to pick filament color" +msgstr "Нажмите, чтобы выбрать цвет нити" + +msgid "Please choose the filament colour" +msgstr "Пожалуйста, выберите цвет прутка" + +msgid "Add/Remove presets" +msgstr "Добавить/удалить профиль" + +msgid "Edit preset" +msgstr "Изменить профиль" + +msgid "Project-inside presets" +msgstr "Внутрипроектные профили" + +msgid "Add/Remove filaments" +msgstr "Добавить/удалить пруток" + +msgid "Add/Remove materials" +msgstr "Добавить/удалить материал" + +msgid "Select/Remove printers(system presets)" +msgstr "Выбор/удаление принтеров (системные профили)" + +msgid "Create printer" +msgstr "Создать принтер" + +msgid "The selected preset is null!" +msgstr "Выбранный профиль пуст!" + +# ?????? В двух местах - в одном месте кнопка в другом Конечный слой +msgid "End" +msgstr "End" + +msgid "Customize" +msgstr "Настройка" + +# ??? layer? +msgid "Other layer filament sequence" +msgstr "Последовательность прутков на других слоях" + +msgid "Please input layer value (>= 2)." +msgstr "Пожалуйста, введите значение слоя (>= 2)." + +msgid "Plate name" +msgstr "Имя печатной пластины" + +msgid "Same as Global Print Sequence" +msgstr "Аналогично глобальной последовательности печати" + +msgid "Print sequence" +msgstr "Последовательность печати моделей" + +msgid "Same as Global" +msgstr "Аналогично глобальной настройке" + +msgid "Disable" +msgstr "Отключить" + +msgid "Spiral vase" +msgstr "Спиральная ваза" + +msgid "First layer filament sequence" +msgstr "Последовательность прутков на первом слое" + +msgid "Same as Global Plate Type" +msgstr "Аналогично глобальному типу пластины" + +msgid "Same as Global Bed Type" +msgstr "Аналогично глобальному типу стола" + +msgid "By Layer" +msgstr "Одновременно" + +msgid "By Object" +msgstr "По очереди" + +msgid "Accept" +msgstr "Принять" + +msgid "Log Out" +msgstr "Выход" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "" +"Нарезка всех столов для получения примерного времени печати и расчёта " +"необходимого количества материала." + +msgid "Packing project data into 3mf file" +msgstr "Упаковка данных проекта в файл формата 3mf" + +msgid "Uploading 3mf" +msgstr "Отправка 3mf" + +msgid "Jump to model publish web page" +msgstr "Перейти на веб-страницу публикации модели" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "" +"Примечание: подготовка может занять несколько минут. Пожалуйста, наберитесь " +"терпения." + +msgid "Publish" +msgstr "Опубликовать" + +msgid "Publish was cancelled" +msgstr "Публикация была отменена" + +msgid "Slicing Plate 1" +msgstr "Нарезка стола 1" + +msgid "Packing data to 3mf" +msgstr "Упаковка данных в 3mf" + +msgid "Jump to webpage" +msgstr "Перейти на страницу" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Сохранить %s как" + +msgid "User Preset" +msgstr "Пользовательский профиль" + +msgid "Preset Inside Project" +msgstr "Внутрипроектный профиль" + +msgid "Name is unavailable." +msgstr "Имя недоступно." + +msgid "Overwrite a system profile is not allowed" +msgstr "Перезапись системного профиля запрещена" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "Профиль \"%1%\" уже существует." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "Профиль \"%1%\" уже существует и несовместим с текущим принтером." + +msgid "Please note that saving action will replace this preset" +msgstr "" +"Обратите внимание, что при сохранении произойдёт замена текущего профиля." + +msgid "The name cannot be the same as a preset alias name." +msgstr "Имя не должно совпадать с именем предустановленного профиля." + +msgid "Save preset" +msgstr "Сохранить профиль" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Копировать" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "Принтер \"%1%\" выбран с профилем \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Пожалуйста, выберите действие с профилем \"%1%\" после сохранения." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Для \"%1%\" сменить \"%2%\" на \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Для \"%1%\" добавить \"%2%\" как новый шаблон" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Просто переключиться на \"%1%\"" + +msgid "Task canceled" +msgstr "Задание отменено" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Поиск" + +msgid "My Device" +msgstr "Мой принтер" + +msgid "Other Device" +msgstr "Другое устройство" + +msgid "Online" +msgstr "В сети" + +msgid "Input access code" +msgstr "Введите код доступа" + +msgid "Can't find my devices?" +msgstr "Не удаётся найти свои принтеры?" + +msgid "Log out successful." +msgstr "Выход выполнен успешно." + +msgid "Busy" +msgstr "Занят" + +msgid "Bambu Cool Plate" +msgstr "Не нагреваемая пластина Bambu" + +msgid "PLA Plate" +msgstr "PLA пластина" + +msgid "Bambu Engineering Plate" +msgstr "Инженерная пластина Bambu" + +msgid "Bambu Smooth PEI Plate" +msgstr "Гладкая PEI пластина Bambu" + +msgid "High temperature Plate" +msgstr "Высокотемпературная пластина" + +msgid "Bambu Textured PEI Plate" +msgstr "Текстурированная PEI пластина Bambu" + +msgid "Send print job to" +msgstr "Отправка задания на печать" + +msgid "Flow Dynamics Calibration" +msgstr "" +"Калибровка\n" +"динамики потока" + +msgid "Click here if you can't connect to the printer" +msgstr "Не удаётся подключиться к принтеру?" + +msgid "send completed" +msgstr "отправка завершена" + +msgid "Error code" +msgstr "Код ошибки" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "" +"Без входа в учётную запись, отображаются только \n" +"принтеры в локальной сети." + +msgid "Connecting to server" +msgstr "Подключение к серверу" + +msgid "Synchronizing device information" +msgstr "Синхронизация информации об устройстве" + +msgid "Synchronizing device information time out" +msgstr "Время синхронизации информации об устройстве истекло" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"Невозможно отправить задание на печать, при обновлении прошивки принтера." + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"Принтер выполняет инструкции. Пожалуйста, перезапустите печать после их " +"завершения." + +msgid "The printer is busy on other print job" +msgstr "Принтер занят другим заданием" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Количество пластиковых нитей - %s, что превышает количество слотов АСПП. " +"Обновите прошивку принтера, чтобы получить поддержку функции назначения " +"слотов АСПП." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Количество пластиковых нитей превышает количество слотов АСПП. Обновите " +"прошивку принтера, чтобы получить поддержку функции назначения слотов АСПП." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Соответствия между материалами и слотами АСПП были установлены. Вы можете " +"нажать на пластиковую нить выше, чтобы вручную задать для неё нужный слот " +"АСПП." + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Перед отправкой задания на печать, нажмите на каждую пластиковую нить, чтобы " +"вручную задать для неё нужный слот АСПП." + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"Материал %s не соответствует материалу в слоте %s АСПП. Обновите прошивку " +"принтера, чтобы получить поддержку функции назначения слотов АСПП." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Материал не соответствует материалу в слоте АСПП. Обновите прошивку " +"принтера, чтобы получить поддержку функции назначения слотов АСПП." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"Текущая прошивка принтера поддерживает только последовательное сопоставление " +"пластиковых нитей => слот АСПП." + +msgid "An SD card needs to be inserted before printing." +msgstr "Перед печатью необходимо вставить SD-карту." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"Выбранный принтер (%s) несовместим с профилем принтера (%s), выбранным в " +"слайсере." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "Для записи таймлапсов необходимо вставить SD-карту." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Невозможно отправить задание печати на принтер, прошивка которого нуждается " +"в обновлении." + +msgid "Cannot send the print job for empty plate" +msgstr "Невозможно отправить задание на печать, так как стол пуст." + +msgid "This printer does not support printing all plates" +msgstr "Данный принтер не поддерживает печать на всех типах печатных пластин." + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"При включении режима «Спиральная ваза» принтеры с кинематикой I3 не будут " +"писать таймлапс." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Таймлапс не поддерживается, поскольку для последовательности печати " +"установлено значение «Печать по очереди»." + +msgid "Errors" +msgstr "Ошибок" + +msgid "Please check the following:" +msgstr "Пожалуйста, проверьте следующую информацию:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"Выбранный профиль принтера в настройках слайсера не совпадает с фактическим " +"принтером. Для нарезки рекомендуется использовать тот же профиль принтера." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"В АСПП установлены неизвестные пластиковые нити. Убедитесь, что стоят именно " +"те, что вам нужны. Если всё в порядке, нажмите «Подтвердить», чтобы начать " +"печать." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "сопло в профиле: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "сопло сохранённое: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Диаметр сопла в нарезанном файле не соответствует сохранённому. Если вы " +"недавно меняли сопло, перейдите на вкладку Принтер > Части принтера, чтобы " +"изменить настройки." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Печать высокотемпературным материалом (%s) с %s может привести к повреждению " +"сопла" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "" +"Пожалуйста, устраните вышеуказанную ошибку, иначе печать не может " +"продолжиться." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "Нажмите кнопку подтверждения, если всё ещё хотите продолжить печать." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Подключение к принтеру. Невозможно отменить во время процесса подключения." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Внимание! Калибровка потока на текстурированной пластине с PEI покрытием " +"может быть неудачной из-за шероховатой поверхности." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Автокалибровка потока с помощью микролидара" + +msgid "Modifying the device name" +msgstr "Изменение имени принтера" + +# не длинно? +msgid "Bind with Pin Code" +msgstr "Привязать с помощью пин-кода" + +msgid "Send to Printer SD card" +msgstr "Отправить на SD-карту принтера" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "Во время обновления невозможно отправить задание на печать" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "Выбранный принтер несовместим с выбранными профилями принтера." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "Перед отправкой на SD-карту, сначала вставьте её в принтер." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "Принтер должен находиться в одной локальной сети с Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "Принтер не поддерживает отправку на SD-карту." + +msgid "Slice ok." +msgstr "Нарезка завершена." + +msgid "View all Daily tips" +msgstr "Посмотреть все советы" + +msgid "Failed to create socket" +msgstr "Не удалось создать сокет" + +msgid "Failed to connect socket" +msgstr "Не удалось подключить сокет" + +msgid "Failed to publish login request" +msgstr "Не удалось опубликовать запрос на вход в систему" + +msgid "Get ticket from device timeout" +msgstr "Тайм-аут при получении заявки с устройства" + +msgid "Get ticket from server timeout" +msgstr "Тайм-аут получения заявки с сервера" + +msgid "Failed to post ticket to server" +msgstr "Не удалось отправить заявку на сервер" + +msgid "Failed to parse login report reason" +msgstr "Не удалось обработать причину ошибки входа" + +msgid "Receive login report timeout" +msgstr "Таймаут получения отчета о входе" + +msgid "Unknown Failure" +msgstr "Неизвестная ошибка" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Найдите пин-код на экране принтера на странице учётной записи и введите его " +"ниже." + +msgid "Can't find Pin Code?" +msgstr "Не можете найти пин-код?" + +msgid "Pin Code" +msgstr "Пин-код" + +msgid "Binding..." +msgstr "Привязка..." + +msgid "Please confirm on the printer screen" +msgstr "Пожалуйста, подтвердите привязку на экране принтера." + +msgid "Log in failed. Please check the Pin Code." +msgstr "Не удалось выполнить вход в систему. Пожалуйста, проверьте пин-код." + +msgid "Log in printer" +msgstr "Войти в принтер" + +msgid "Would you like to log in this printer with current account?" +msgstr "Войти в этот принтер с текущей учётной записью?" + +msgid "Check the reason" +msgstr "Выяснить причину" + +msgid "Read and accept" +msgstr "Прочитать и принять" + +msgid "Terms and Conditions" +msgstr "Условия использования" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Перед использованием устройства Bambu Lab ознакомьтесь с правилами и " +"условиями. Нажимая на кнопку \"Согласие на использование устройства Bambu Lab" +"\", вы соглашаетесь соблюдать Политику конфиденциальности и Условия " +"использования (далее - \"Условия\"). Если вы не соблюдаете или не согласны с " +"Политикой конфиденциальности Bambu Lab, пожалуйста, не пользуйтесь " +"оборудованием и услугами Bambu Lab." + +msgid "and" +msgstr "и" + +msgid "Privacy Policy" +msgstr "Политика конфиденциальности" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Мы просим вашей помощи, чтобы улучшить работу принтера" + +msgid "Statement about User Experience Improvement Program" +msgstr "Заявление о программе улучшения пользовательского опыта" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"В сообществе 3D-печатников мы учимся на успехах и неудачах друг друга, чтобы " +"корректировать свои собственные параметры и настройки нарезки. Система %s " +"работает по тому же принципу и использует машинное обучение для улучшения " +"своей работы на основе успехов и неудач огромного количества отпечатков " +"наших пользователей. Мы обучаем %s быть умнее, предоставляя ему данные из " +"реального мира. По вашему желанию эта служба получит доступ к информации из " +"журналу ошибок и журналу использования, которая может включать информацию, " +"описанную в Политике конфиденциальности. Мы не будем собирать никаких " +"персональных данных, по которым можно прямо или косвенно идентифицировать " +"физическое лицо, включая, помимо прочего, имена, адреса, платежную " +"информацию или номера телефонов. Включая данную услугу, вы соглашаетесь с " +"данными условиями и заявлением о Политике конфиденциальности." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Заявление о плане улучшения взаимодействия с пользователем" + +msgid "Log in successful." +msgstr "Вход успешный." + +msgid "Log out printer" +msgstr "Выйти из принтера" + +msgid "Would you like to log out the printer?" +msgstr "Выйти из этого принтера?" + +msgid "Please log in first." +msgstr "Пожалуйста, сначала авторизуйтесь." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "" +"Возникла проблема с подключением к принтеру. Пожалуйста, попробуйте ещё раз." + +msgid "Failed to log out." +msgstr "Не удалось выйти." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Сохранить текущий %s" + +msgid "Delete this preset" +msgstr "Удалить этот профиль" + +msgid "Search in preset" +msgstr "Поиск в профиле" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Нажмите, чтобы сбросить все настройки до последнего сохраненного профиля." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"Для плавного таймлапса требуется черновая башня. На модели без использования " +"черновой башни могут быть дефекты. Вы уверены, что хотите отключить черновую " +"башню?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"Для плавного таймлапса требуется черновая башня. На модели без использования " +"черновой башни могут быть дефекты. Вы хотите включить черновую башню?" + +msgid "Still print by object?" +msgstr "Продолжить печать по очереди?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Мы добавили экспериментальный стиль «Стройный (древ. поддержка)», который " +"отличается меньшим объёмом поддержки, а следовательно, и меньшей прочностью. " +"Мы рекомендуем использовать его со следующими параметрами: количество " +"связующих слоёв - 0, зазор поддержки сверху - 0, периметров - 2." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Изменить эти настройки автоматически? \n" +"Да - Изменить эти настройки автоматически\n" +"Нет - Не изменять эти настройки" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Для стилей «Крепкий (древ. поддержка)» и «Гибридный (древ. поддержка)» \n" +"мы рекомендуем следующие параметры: \n" +"не менее 2-х связующих слоёв, \n" +"зазор поддержки сверху не менее 0,1 мм \n" +"или использование «материалов для поддержек» в качестве связующего слоя." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"При использовании «материалов для поддержек» в качестве связующего \n" +"слоя поддержки, мы рекомендуем следующие параметры:\n" +"зазор поддержки сверху - 0, \n" +"расстояние между связующими линиями - 0, \n" +"шаблон связующего слоя - концентрический, \n" +"отключение независимой высоты слоя поддержки." + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"Включение этой опции приведёт к изменению формы модели. Если ваша печать " +"требует точных размеров или является частью сборки, важно перепроверить, не " +"повлияет ли изменение геометрии на функциональность напечатанного." + +msgid "Are you sure you want to enable this option?" +msgstr "Вы уверены, что хотите включить эту опцию?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"Высота слоя слишком мала.\n" +"Будет установлено значение min_layer_height\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"Высота слоя не может превышать ограничения установленные в настройках " +"принтера -> Экструдер -> Ограничение высоты слоя. Это может вызвать проблемы " +"с качеством печати." + +msgid "Adjust to the set range automatically? \n" +msgstr "Автоматически подстроиться под заданный в настройках диапазон?\n" + +msgid "Adjust" +msgstr "Подстроиться" + +msgid "Ignore" +msgstr "Игнорировать" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Экспериментальная функция. Втягивание и обрезка пластиковой нити на большем " +"расстоянии во время её замены для минимизации очистки. Хотя это значительно " +"сокращает величину очистки, это может повысить риск засорения сопла или " +"вызвать другие проблемы при печати." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Экспериментальная функция. Втягивание и обрезка пластиковой нити на большем " +"расстоянии во время её замены для минимизации очистки. Хотя это значительно " +"сокращает величину очистки, это может повысить риск засорения сопла или " +"вызвать другие проблемы при печати. Пожалуйста, используйте для принтера " +"последнюю версию прошивки." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"При записи таймлапса без видимости головы рекомендуется добавить «Черновая " +"башня таймлапса». \n" +"Щёлкните правой кнопкой мыши на пустом месте стола и выберите «Добавить " +"примитив» -> «Черновая башня таймлапса»." + +msgid "Line width" +msgstr "Ширина экструзии" + +msgid "Seam" +msgstr "Шов" + +msgid "Precision" +msgstr "Точность" + +msgid "Wall generator" +msgstr "Генератор периметров" + +msgid "Walls and surfaces" +msgstr "Периметры и поверхности" + +msgid "Bridging" +msgstr "Мосты" + +msgid "Overhangs" +msgstr "Нависания" + +msgid "Walls" +msgstr "Периметры" + +msgid "Top/bottom shells" +msgstr "Горизонтальные оболочки сверху/снизу" + +msgid "Initial layer speed" +msgstr "Скорость печати первого слоя" + +msgid "Other layers speed" +msgstr "Скорость печати других слоёв" + +msgid "Overhang speed" +msgstr "Скорость печати нависаний" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Скорость печати нависаний разной степени свеса. Размер этого свеса " +"выражается в процентах от ширины линии. Скорость 0 означает, что для данного " +"диапазона нависаний замедление отсутствует и используется скорость " +"периметра. Скорость для промежуточных значений рассчитывается с помощью " +"линейной интерполяции." + +msgid "Bridge" +msgstr "Мосты" + +msgid "Set speed for external and internal bridges" +msgstr "Скорость печати внешних и внутренних мостов." + +msgid "Travel speed" +msgstr "Скорость перемещения" + +msgid "Acceleration" +msgstr "Ускорение" + +msgid "Jerk(XY)" +msgstr "Рывок (XY)" + +msgid "Raft" +msgstr "Подложка" + +msgid "Support filament" +msgstr "Пруток для поддержки" + +msgid "Tree supports" +msgstr "Древовидная поддержка" + +msgid "Skirt" +msgstr "Юбка" + +msgid "Prime tower" +msgstr "Черновая башня" + +msgid "Special mode" +msgstr "Специальные режимы" + +msgid "G-code output" +msgstr "Выходной G-код" + +msgid "Post-processing Scripts" +msgstr "Скрипты постобработки" + +msgid "Notes" +msgstr "Заметки" + +msgid "Frequent" +msgstr "Частые" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"Следующая строка %s содержит зарезервированные ключевые слова.\n" +"Удалите их, иначе может возникнуть проблемы при визуализации G-кода и оценка " +"времени печати." +msgstr[1] "" +"Следующие строки %s содержат зарезервированные ключевые слова.\n" +"Удалите их, иначе может возникнуть проблемы при визуализации G-кода и оценка " +"времени печати." +msgstr[2] "" +"Следующие строки %s содержат зарезервированные ключевые слова.\n" +"Удалите их, иначе может возникнуть проблемы при визуализации G-кода и оценка " +"времени печати." + +msgid "Reserved keywords found" +msgstr "Найдены зарезервированные ключевые слова" + +msgid "Setting Overrides" +msgstr "Переопределение параметров" + +msgid "Retraction" +msgstr "Откат" + +msgid "Basic information" +msgstr "Общая информация" + +msgid "Recommended nozzle temperature" +msgstr "Рекомендуемая температура сопла" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Рекомендуемый диапазон температуры сопла для данной пластиковой нити. 0 " +"значит не задано." + +msgid "Print chamber temperature" +msgstr "Температура в камере" + +msgid "Print temperature" +msgstr "Температура печати" + +msgid "Nozzle" +msgstr "Сопло" + +msgid "Nozzle temperature when printing" +msgstr "Температура сопла при печати" + +msgid "Cool plate" +msgstr "Не нагреваемая пластина" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Температура стола при установленной не нагреваемой пластине. 0 означает, что " +"пластиковая нить не поддерживает печать на этой печатной пластине." + +# ??????? Текстурированная не нагреваемая пластина Bambu, Текстурированная пластина Bambu +msgid "Textured Cool plate" +msgstr "Не нагреваемая текстур. пластина Bambu" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" +"Температура стола при установленной не нагреваемой текстурированной пластине " +"Bambu. 0 означает, что пластиковая нить не поддерживает печать на этой " +"печатной пластине." + +msgid "Engineering plate" +msgstr "Инженерная пластина" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Температура стола при установленной инженерной печатной пластине. 0 " +"означает, что пластиковая нить не поддерживает печать на этой печатной " +"пластине." + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Гладкая PEI/высокотемп. пластина" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Температура стола при установленной гладкой PEI/высокотемпературный печатной " +"пластине. 0 означает, что пластиковая нить не поддерживает печать на этой " +"печатной пластине." + +msgid "Textured PEI Plate" +msgstr "Текстурированная PEI пластина" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Температура стола при установленной текстурированной пластите с PEI " +"покрытием. 0 означает, что пластиковая нить не поддерживает печать на этой " +"печатной пластине." + +msgid "Volumetric speed limitation" +msgstr "Ограничение объёмной скорости" + +msgid "Cooling" +msgstr "Охлаждение" + +msgid "Cooling for specific layer" +msgstr "Обдув определенного слоя" + +msgid "Part cooling fan" +msgstr "Вентилятор обдува модели" + +msgid "Min fan speed threshold" +msgstr "Порог мин. скорости вентилятора" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"Вентилятор для охлаждения моделей начнет работать с минимальной скоростью, " +"когда расчётное время печати слоя не превышает заданное время печати слоя. " +"Если время печати слоя меньше порогового значения, скорость вентилятора " +"интерполируется между минимальной и максимальной скоростью вентилятора в " +"зависимости от времени печати слоя." + +msgid "Max fan speed threshold" +msgstr "Порог макс. скорости вентилятора" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"Скорость вентилятора для охлаждения детали будет максимальной, если " +"расчётное время печати слоя меньше установленного значения." + +msgid "Auxiliary part cooling fan" +msgstr "Вспомогательный вентилятор для охлаждения моделей" + +msgid "Exhaust fan" +msgstr "Вытяжной вентилятор" + +# ??? Скорость во время печати +msgid "During print" +msgstr "Скорость вентилятора во время печати" + +# ??? Скорость после завершения печати +msgid "Complete print" +msgstr "Скорость вентилятора после завершения печати" + +msgid "Filament start G-code" +msgstr "Стартовый G-код прутка" + +msgid "Filament end G-code" +msgstr "Завершающий G-код прутка" + +msgid "Multimaterial" +msgstr "Экструдер ММ" + +msgid "Wipe tower parameters" +msgstr "Параметры черновой башни" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "" +"Параметры смены инструмента в одноэкструдерных мультиматериальных принтерах" + +msgid "Ramming settings" +msgstr "Настройки рэмминга" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "" +"Параметры смены инструмента в многоэкструдерных мультиматериальных принтерах" + +msgid "Printable space" +msgstr "Область печати" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "Указано недопустимое значение параметра %1%: %2%" + +msgid "G-code flavor is switched" +msgstr "Тип G-кода переключён" + +msgid "Cooling Fan" +msgstr "Вентилятор обдува модели" + +msgid "Fan speed-up time" +msgstr "Смещение времени запуска вентилятора" + +msgid "Extruder Clearance" +msgstr "Радиус безопасной зоны экструдера" + +msgid "Adaptive bed mesh" +msgstr "Адаптивная сетка стола" + +msgid "Accessory" +msgstr "Аксессуары" + +msgid "Machine gcode" +msgstr "G-код принтера" + +msgid "Machine start G-code" +msgstr "Стартовый G-код принтера" + +msgid "Machine end G-code" +msgstr "Завершающий G-код принтера" + +msgid "Printing by object G-code" +msgstr "G-код между моделями (для последовательной печати)" + +msgid "Before layer change G-code" +msgstr "G-код перед сменой слоя" + +msgid "Layer change G-code" +msgstr "G-код после смены слоя" + +msgid "Time lapse G-code" +msgstr "G-код таймлапса" + +msgid "Change filament G-code" +msgstr "G-код смены прутка" + +msgid "Change extrusion role G-code" +msgstr "G-код смены роли экструзии" + +msgid "Pause G-code" +msgstr "G-код паузы печати" + +msgid "Template Custom G-code" +msgstr "Шаблон пользовательского G-кода" + +msgid "Motion ability" +msgstr "Ограничения принтера" + +msgid "Normal" +msgstr "Обычный" + +msgid "Speed limitation" +msgstr "Максимальные скорости перемещения" + +msgid "Acceleration limitation" +msgstr "Максимальные ускорения" + +msgid "Jerk limitation" +msgstr "Максимальные рывки" + +msgid "Single extruder multimaterial setup" +msgstr "Мультиматериальный одиночный экструдер" + +msgid "Wipe tower" +msgstr "Черновая башня" + +msgid "Single extruder multimaterial parameters" +msgstr "Параметры мультиматериального одиночного экструдера" + +msgid "Layer height limits" +msgstr "Ограничение высоты слоя" + +msgid "Lift Z Enforcement" +msgstr "Принудительный подъем оси Z" + +msgid "Retraction when switching material" +msgstr "Откат при смене материала" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"Параметр прочистки недоступен при использовании отката из прошивки.\n" +"\n" +"Отключить его для включения отката из прошивки?" + +msgid "Firmware Retraction" +msgstr "Откат из прошивки" + +msgid "Detached" +msgstr "Отсоединён" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"К этому принтеру прикреплено: \n" +"профилей прутка -%d шт. и профилей процесса печати - %d шт.\n" +"При удалении принтера эти профили так же будут удалены." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "Профили на которых основаны другие профили не могут быть удалены!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Профиль указанный ниже, наследуется от текущего профиля." +msgstr[1] "Профили указанные ниже, наследуются от текущего профиля." +msgstr[2] "Профили указанные ниже, наследуются от текущего профиля." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% профиль" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "Следующий профиль также будет удалён." +msgstr[1] "Следующие профили также будут удалены." +msgstr[2] "Следующие профили также будут удалены." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Вы уверены, что хотите удалить выбранный профиль? \n" +"Если этот профиль используется в данный момент в вашем принтере, пожалуйста, " +"сбросьте информацию о прутке для этого слота." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "%1% выбранный профиль?" + +# в Обеспечивать верт. толщину оболочки +msgid "All" +msgstr "Везде" + +msgid "Set" +msgstr "Выбор" + +msgid "Click to reset current value and attach to the global value." +msgstr "Нажмите, чтобы сбросить текущее значение до глобального значения." + +msgid "Click to drop current modify and reset to saved value." +msgstr "Нажмите, чтобы сбросить текущее изменение к сохраненному значению." + +msgid "Process Settings" +msgstr "Настройки процесса" + +msgid "Undef" +msgstr "Не задано" + +msgid "Unsaved Changes" +msgstr "Несохранённые изменения" + +msgid "Transfer or discard changes" +msgstr "Отклонить или сохранить изменения" + +msgid "Old Value" +msgstr "Старое значение" + +msgid "New Value" +msgstr "Новое значение" + +msgid "Transfer" +msgstr "Перенести" + +msgid "Don't save" +msgstr "Не сохранять" + +msgid "Discard" +msgstr "Не сохранять" + +msgid "Click the right mouse button to display the full text." +msgstr "Нажмите правой кнопкой мыши, чтобы отобразить полный текст." + +msgid "All changes will not be saved" +msgstr "Все изменения не будут сохранены" + +msgid "All changes will be discarded." +msgstr "Все изменения будут потеряны." + +msgid "Save the selected options." +msgstr "Сохранить выбранные параметры." + +msgid "Keep the selected options." +msgstr "Сохранить выбранные параметры." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Перенести выбранные параметры во вновь выбранный профиль." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Сохранить выбранные параметры в профиль \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Перенести выбранные параметры во вновь выбранный профиль \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "Профиль \"%1%\" имеет следующие несохранённые изменения:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"Профиль \"%1%\" несовместим с новым профилем принтера, и имеет следующие " +"несохранённые изменения:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"Профиль \"%1%\" несовместим с новым профилем процесса, и имеет следующие " +"несохранённые изменения:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "Вы изменили некоторые параметры профиля \"%1%\". " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"Вы можете сохранить или сбросить изменённые вами значения профиля." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" +"\n" +"Вы можете сохранить или сбросить изменённые вами значения профиля, или " +"перенести их в новый профиль." + +msgid "You have previously modified your settings." +msgstr "Ранее вы изменили свои настройки." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"Вы можете сбросить изменённые вами значения профиля, или перенести их в " +"новый проект." + +msgid "Extruders count" +msgstr "Количество экструдеров" + +msgid "General" +msgstr "Общие" + +msgid "Capabilities" +msgstr "Характеристики принтера" + +msgid "Show all presets (including incompatible)" +msgstr "Показать все профили (включая несовместимые)" + +msgid "Select presets to compare" +msgstr "Выберите профили для сравнения" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" +"Перенос в текущий активный профиль невозможен потому, что он был изменён." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"Перенос выбранных параметров из левого профиля в правый.\n" +"Примечание: новые изменённые профили будут выбраны после закрытия этого " +"диалогового окна." + +msgid "Transfer values from left to right" +msgstr "Перенос значений слева направо" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" +"Если включено, это диалоговое окно можно использовать для переноса выбранных " +"значений из левого профиля в правый." + +msgid "Add File" +msgstr "Добавить файл" + +msgid "Set as cover" +msgstr "Задать в качестве обложки" + +msgid "Cover" +msgstr "Обложка" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "Имя \"%1%\" уже существует." + +msgid "Basic Info" +msgstr "Общая информация" + +msgid "Pictures" +msgstr "Изображения" + +msgid "Bill of Materials" +msgstr "Список материалов" + +msgid "Assembly Guide" +msgstr "Памятка по сборке" + +msgid "Author" +msgstr "Автор" + +msgid "Model Name" +msgstr "Имя модели" + +#, c-format, boost-format +msgid "%s Update" +msgstr "Обновление %s" + +msgid "A new version is available" +msgstr "Доступна новая версия" + +msgid "Configuration update" +msgstr "Обновление конфигурации" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "Доступен новый пакет конфигурации. Установить его?" + +msgid "Description:" +msgstr "Описание:" + +msgid "Configuration incompatible" +msgstr "Несовместимая конфигурация" + +msgid "the configuration package is incompatible with current application." +msgstr "пакет конфигурации несовместим с текущим приложением." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"Пакет конфигурации несовместим с текущим приложением.\n" +"%s обновит пакет конфигурации, иначе он не сможет запуститься." + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Выйти из %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "пакет конфигурации несовместим с текущим приложением." + +msgid "Configuration updates" +msgstr "Обновления конфигурации" + +msgid "No updates available." +msgstr "Обновления отсутствуют." + +msgid "The configuration is up to date." +msgstr "Текущая конфигурация не требует обновления." + +msgid "Obj file Import color" +msgstr "Импорт цветного obj-файла" + +msgid "Specify number of colors:" +msgstr "Количество цветов:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "Количество цветов должно быть в диапазоне [%d, %d]." + +msgid "Recommended " +msgstr "рекомендуется" + +msgid "Current filament colors:" +msgstr "Текущие цвета прутков:" + +msgid "Quick set:" +msgstr "Быстрый выбор:" + +# ??? Цветовая схема +msgid "Color match" +msgstr "Подбор цвета" + +msgid "Approximate color matching." +msgstr "Приблизительный подбор по цвету прутков." + +# ??? +msgid "Append" +msgstr "Добавить" + +# ?????? Добавить используемый экструдер после существующих экструдеров, Добавьте новый экструдер после существующих экструдеров, Добавить экструдер с расходным материалом после существующих экструдеров. +msgid "Add consumable extruder after existing extruders." +msgstr "" +"Добавить экструдер с расходными материалами после существующих экструдеров." + +# ??? +msgid "Reset mapped extruders." +msgstr "Сброс сопоставленных экструдеров." + +msgid "Cluster colors" +msgstr "Цветовой кластер" + +# ??? Цвет прутка +msgid "Map Filament" +msgstr "Выбранные цвета" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Примечание: цвета уже выбраны, вы можете нажать «OK» \n" +" для продолжения или подобрать его вручную." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Предупреждение: количество новых \n" +" и текущих экструдеров превышает 16." + +msgid "Ramming customization" +msgstr "Настройки рэмминга" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"Рэмминг (ramming, дословно утрамбовка) означает быстрое экструдирование " +"непосредственно перед сменой инструмента в одноэкструдерном " +"мультиматериальном принтере. Цель процесса состоит в том, чтобы правильно " +"сформировать конец выгружаемого прутка, чтобы он не препятствовал вставке " +"нового прутка или этого же прутка, вставленного позже. Эта фаза важна и " +"разные материалы могут потребовать разных скоростей экструзии, чтобы " +"получить хорошую форму. По этой причине скорость экструзии во время рэмминга " +"регулируется.\n" +"\n" +"Эта опция для опытных пользователей, неправильная настройка может привести к " +"замятию, протиранию прутка приводом экструдера и т.д." + +msgid "Total ramming time" +msgstr "Общее время рэмминга" + +msgid "s" +msgstr "с" + +msgid "Total rammed volume" +msgstr "Общий объём при рэмминге" + +msgid "Ramming line width" +msgstr "Ширина линии при рэмминге" + +msgid "Ramming line spacing" +msgstr "Расстояние между линиями при рэмминге" + +msgid "Auto-Calc" +msgstr "Авторасчёт" + +msgid "Re-calculate" +msgstr "Пересчитать" + +msgid "Flushing volumes for filament change" +msgstr "Объёмы очистки при смене пластиковой нити" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Программа будет пересчитывать объёмы очистки каждый раз при изменении цвета " +"пластиковых нитей. Это можно отключить в меню Snapmaker Orca > Параметры." + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "" +"Объём очистки (мм³), необходимый для переключения \n" +"между двумя материалами." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Рекомендуемый объём очистки в диапазоне [%d - %d]." + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "Множитель должен находиться в диапазоне [%.2f - %.2f]." + +msgid "Multiplier" +msgstr "Множитель" + +msgid "unloaded" +msgstr "выгрузку" + +msgid "loaded" +msgstr "загрузку" + +msgid "Filament #" +msgstr "Пруток #" + +msgid "From" +msgstr "С" + +msgid "To" +msgstr "На" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" +"Для этой задачи требуется Windows Media Player! Хотите включить его в своей " +"ОС?" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" +"Компонент BambuSource неправильно зарегистрирован для воспроизведения " +"медиафайлов! Нажмите «Да», чтобы повторно зарегистрировать его." + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" +"Отсутствует компонент BambuSource зарегистрированный для воспроизведения " +"медиафайлов! Переустановите BambuStutio или обратитесь за помощью в службу " +"поддержки." + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" +"Используя компоненты BambuSource из другого инсталлятора воспроизведение " +"видео может работать некорректно! Нажмите «Да», чтобы исправить это." + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" +"В вашей системе отсутствуют кодеки H.264 для GStreamer, которые необходимы " +"для воспроизведения видео. Попробуйте установить пакеты gstreamer1.0-plugins-" +"bad или gstreamer1.0-libav, а затем перезапустите Snapmaker Orca." + +msgid "Bambu Network plug-in not detected." +msgstr "Сетевой плагин Bambu не обнаружен." + +msgid "Click here to download it." +msgstr "Нажмите здесь, чтобы загрузить его." + +msgid "Login" +msgstr "Войти" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "" +"Пакет конфигурации был изменён при предыдущем запуске мастера настройки." + +msgid "Configuration package changed" +msgstr "Пакет конфигурации изменён" + +msgid "Toolbar" +msgstr "Панель инструментов" + +msgid "Objects list" +msgstr "Список моделей" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Импорт геометрических данных из STL/STEP/3MF/OBJ/AMF файлов" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Вставить из буфера обмена" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "" +"Показать/Скрыть диалоговое окно настроек \n" +"устройств 3Dconnexion" + +msgid "Switch table page" +msgstr "Переключение между вкладками" + +msgid "Show keyboard shortcuts list" +msgstr "Показать список сочетаний клавиш" + +msgid "Global shortcuts" +msgstr "Глобальные горячие клавиши" + +msgid "Rotate View" +msgstr "Вращение камеры" + +msgid "Pan View" +msgstr "Перемещение камеры" + +msgid "Mouse wheel" +msgstr "Колесо мыши" + +msgid "Zoom View" +msgstr "Масштабирование вида" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Автоориентация моделей (ориентация выбранного, иначе всего на текущем столе)" + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Свернуть/Развернуть боковую панель" + +msgid "⌘+Any arrow" +msgstr "⌘ + Любая стрелка" + +msgid "Movement in camera space" +msgstr "Перемещение выбранного по отношению к камере" + +msgid "⌥+Left mouse button" +msgstr "⌥ + Левая кнопка мыши" + +msgid "Select a part" +msgstr "Выбор части модели" + +msgid "⌘+Left mouse button" +msgstr "⌘ + Левая кнопка мыши" + +msgid "Select multiple objects" +msgstr "Выбор нескольких моделей" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl + Любая стрелка" + +msgid "Alt+Left mouse button" +msgstr "Alt + Левая кнопка мыши" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl + Левая кнопка мыши" + +msgid "Shift+Left mouse button" +msgstr "Shift + Левая кнопка мыши" + +msgid "Select objects by rectangle" +msgstr "Выбор прямоугольником" + +msgid "Arrow Up" +msgstr "Стрелка вверх" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Перемещение выбранного на 10 мм по оси Y+" + +msgid "Arrow Down" +msgstr "Стрелка вниз" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Перемещение выбранного на 10 мм по оси Y-" + +msgid "Arrow Left" +msgstr "Стрелка влево" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Перемещение выбранного на 10 мм по оси X-" + +msgid "Arrow Right" +msgstr "Стрелка вправо" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Перемещение выбранного на 10 мм по оси X+" + +msgid "Shift+Any arrow" +msgstr "Shift + Любая стрелка" + +msgid "Movement step set to 1 mm" +msgstr "Зафиксировать шаг перемещения на 1 мм" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "Клавиши 1-9: задать пруток для модели/части модели" + +msgid "Camera view - Default" +msgstr "Камера по умолчанию" + +msgid "Camera view - Top" +msgstr "Камера сверху" + +msgid "Camera view - Bottom" +msgstr "Камера снизу" + +msgid "Camera view - Front" +msgstr "Камера спереди" + +msgid "Camera view - Behind" +msgstr "Камера сзади" + +msgid "Camera Angle - Left side" +msgstr "Камера слева" + +msgid "Camera Angle - Right side" +msgstr "Камера справа" + +msgid "Select all objects" +msgstr "Выбрать все модели" + +msgid "Gizmo move" +msgstr "Гизмо перемещения" + +msgid "Gizmo scale" +msgstr "Гизмо масштаба" + +msgid "Gizmo rotate" +msgstr "Гизмо поворота" + +msgid "Gizmo cut" +msgstr "Гизмо разреза" + +msgid "Gizmo Place face on bed" +msgstr "Гизмо поверхностью на стол" + +msgid "Gizmo SLA support points" +msgstr "Гизмо точки SLA поддержки" + +msgid "Gizmo FDM paint-on seam" +msgstr "Гизмо рисования шва (FDM)" + +msgid "Gizmo Text emboss / engrave" +msgstr "Гизмо рельефного/выгравированного текста" + +msgid "Zoom in" +msgstr "Приблизить" + +msgid "Zoom out" +msgstr "Отдалить" + +msgid "Switch between Prepare/Preview" +msgstr "Переключение между окном подготовки/предпросмотр нарезки" + +msgid "Plater" +msgstr "Печатная пластина" + +msgid "Move: press to snap by 1mm" +msgstr "Перемещение: Фиксация перемещения на 1 мм" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Колесо мыши" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Рисование поддержки/Шва/Покраски: регулировка радиуса кисти" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Колесо мыши" + +msgid "Support/Color Painting: adjust section position" +msgstr "Рисование поддержки/Шва/Покраски: регулировка положения сечения" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Колесо мыши" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Колесо мыши" + +msgid "Gizmo" +msgstr "Гизмо" + +msgid "Set extruder number for the objects and parts" +msgstr "Задать номер экструдера для моделей/частей" + +msgid "Delete objects, parts, modifiers " +msgstr "Удаление моделей, частей, модификаторов " + +msgid "Select the object/part and press space to change the name" +msgstr "Выберите модель/часть и нажмите пробел, чтобы изменить имя" + +msgid "Mouse click" +msgstr "Щелчок кнопкой мыши" + +msgid "Select the object/part and mouse click to change the name" +msgstr "Выберите модель/часть и нажмите клавишу мыши, чтобы изменить имя" + +msgid "Objects List" +msgstr "Список моделей" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Вертикальный ползунок - Сдвинуть активный ползунок вверх" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Вертикальный ползунок - Сдвинуть активный ползунок вниз" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Горизонтальный ползунок - Сдвинуть активный ползунок влево" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Горизонтальный ползунок - Сдвинуть активный ползунок вправо" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "" +"Включение/Отключение функции «Режим одного слоя» у вертикального ползунка" + +msgid "On/Off g-code window" +msgstr "Показать/скрыть окно отображения G-кода" + +msgid "Move slider 5x faster" +msgstr "Перемещение ползунка быстрее в 5 раз" + +msgid "Shift+Mouse wheel" +msgstr "Shift + Колесо мыши" + +msgid "Horizontal slider - Move to start position" +msgstr "Горизонтальный ползунок - Перемещение в начальную позицию" + +msgid "Horizontal slider - Move to last position" +msgstr "Горизонтальный ползунок - Перемещение в конечную позицию" + +msgid "Release Note" +msgstr "Информация о версии" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "Информация об обновлении версии %s:" + +msgid "Network plug-in update" +msgstr "Обновление сетевого плагина" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Нажмите OK, чтобы обновить сетевой плагин при следующем запуске Snapmaker Orca." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "Доступен новый сетевой плагин (%s). Хотите установить?" + +msgid "New version of Snapmaker Orca" +msgstr "Доступна новая версия Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Пропустить эту версию" + +msgid "Done" +msgstr "Готово" + +msgid "resume" +msgstr "Продолжить" + +msgid "Resume Printing" +msgstr "Возобновить печать" + +msgid "Resume Printing(defects acceptable)" +msgstr "Возобновить печать (допустимы дефекты)" + +msgid "Resume Printing(problem solved)" +msgstr "Возобновить печать (проблема решена)" + +msgid "Stop Printing" +msgstr "Остановить печать" + +# ??? Перейти к помощнику, Помощник по проверке +msgid "Check Assistant" +msgstr "Ассистент проверки" + +msgid "Filament Extruded, Continue" +msgstr "Пруток выдавлен, Продолжить" + +msgid "Not Extruded Yet, Retry" +msgstr "Пруток ещё не выдавлен, Повторить" + +# ????? Готово +msgid "Finished, Continue" +msgstr "Завершено, Продолжить" + +# кнопка в интерфейсе +msgid "Load Filament" +msgstr "Загрузить" + +msgid "Filament Loaded, Resume" +msgstr "Пруток загружен, Повторить" + +# ??? Просмотр камеры, Посмотреть, Открыть прямую трансляцию +msgid "View Liveview" +msgstr "Открыть видеотрансляцию" + +msgid "Confirm and Update Nozzle" +msgstr "Подтвердить и обновить сопло" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "Сбой подключения к локальной сети (отправка файла на печать)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Шаг 1. Пожалуйста, убедитесь, что Snapmaker Orca и ваш принтер находятся в " +"одной локальной сети." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Шаг 2. Если приведенный ниже IP-адрес и код доступа отличаются от " +"фактических значений на вашем принтере, пожалуйста, исправьте их." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Код доступа" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Где найти IP-адрес и код доступа к вашему принтеру?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"Шаг 3. Пропингуйте IP-адрес, чтобы проверить потерю пакетов и задержку." + +msgid "Test" +msgstr "Тест" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP-адрес и код доступа подтверждены! Вы можете закрыть окно." + +msgid "Connection failed, please double check IP and Access Code" +msgstr "" +"Не удалось подключиться, пожалуйста, перепроверьте IP-адрес и код доступа" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Не удалось подключиться! Если ваш IP-адрес и код доступа верные,\n" +"тогда перейдите к шагу 3 для устранения проблем с сетью." + +msgid "Model:" +msgstr "Модель:" + +msgid "Serial:" +msgstr "Серийный номер:" + +msgid "Version:" +msgstr "Версия:" + +msgid "Update firmware" +msgstr "Обновить прошивку" + +msgid "Beta version" +msgstr "Бета-версия" + +msgid "Latest version" +msgstr "Последняя версия" + +msgid "Updating" +msgstr "Обновление" + +msgid "Updating failed" +msgstr "Сбой при обновлении" + +msgid "Updating successful" +msgstr "Обновление успешно выполнено" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Вы уверены, что хотите обновить? Это займёт около 10 минут. Не выключайте " +"питание во время обновления принтера." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Было обнаружено важное обновление, которое необходимо установить перед " +"продолжением печати. Хотите обновиться сейчас? Обновление можно выполнить и " +"позже, нажав «Обновить прошивку»." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"Ошибка в версии прошивки. Перед печатью её необходимо исправить и обновить. " +"Хотите обновить сейчас? Вы можете сделать это позже с принтера или при " +"следующем запуске программы." + +msgid "Extension Board" +msgstr "Плата расширения" + +msgid "Saving objects into the 3mf failed." +msgstr "Произошла ошибка при сохранении моделей в 3mf файл." + +msgid "Only Windows 10 is supported." +msgstr "Поддерживается только Windows 10." + +msgid "Failed to initialize the WinRT library." +msgstr "Не удалось инициализировать библиотеку WinRT." + +msgid "Exporting objects" +msgstr "Экспорт моделей" + +msgid "Failed loading objects." +msgstr "Ошибка загрузки модели." + +msgid "Repairing object by Windows service" +msgstr "Починка модели службой Windows." + +msgid "Repair failed." +msgstr "Не удалось починить модель." + +msgid "Loading repaired objects" +msgstr "Загрузка отремонтированной модели." + +msgid "Exporting 3mf file failed" +msgstr "Ошибка экспорта 3mf файла" + +msgid "Import 3mf file failed" +msgstr "Сбой импорта 3mf файла" + +msgid "Repaired 3mf file does not contain any object" +msgstr "Отремонтированный 3MF файл не содержит никаких моделей" + +msgid "Repaired 3mf file contains more than one object" +msgstr "Отремонтированный 3MF файл содержит более одной модели" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "Отремонтированный 3MF файл не содержит объёма" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "Отремонтированный 3MF файл содержит более одного объёма" + +msgid "Repair finished" +msgstr "Починка модели завершена." + +msgid "Repair canceled" +msgstr "Починка модели отменена." + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Не удалось скопировать файл %1% в %2%: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" +"Перед обновлением конфигурации необходимо проверить несохранённые изменения." + +msgid "Configuration package: " +msgstr "Пакет конфигурации: " + +msgid " updated to " +msgstr " обновлён до " + +msgid "Open G-code file:" +msgstr "Выберите G-код файл:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Одна модель имеет пустой начальный слой и не может быть напечатана. " +"Пожалуйста, обрежьте нижнюю часть или включите поддержку." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "Модель не может быть напечатан из-за пустого слоя между %1% и %2%." + +#, boost-format +msgid "Object: %1%" +msgstr "Модель: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Возможно, части модели на этой высоте слишком тонкие, или она имеет " +"дефектную сетку." + +msgid "No object can be printed. Maybe too small" +msgstr "Печать моделей невозможна. Возможно, они слишком маленькие." + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Не удалось сгенерировать G-код из-за недопустимого пользовательского G-" +"кода.\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" +"Пожалуйста, проверьте пользовательский G-код или используйте " +"пользовательский G-код по умолчанию." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Генерация G-кода: слой %1%" + +msgid "Inner wall" +msgstr "Внутренние периметры" + +msgid "Outer wall" +msgstr "Внешний периметр" + +msgid "Overhang wall" +msgstr "Нависающие периметры" + +msgid "Sparse infill" +msgstr "Заполнение" + +msgid "Internal solid infill" +msgstr "Сплошное заполнение" + +msgid "Top surface" +msgstr "Верхняя поверхность" + +msgid "Bottom surface" +msgstr "Нижняя поверхность" + +msgid "Internal Bridge" +msgstr "Внутренний мост" + +msgid "Gap infill" +msgstr "Заполнение пробелов" + +msgid "Support interface" +msgstr "Связующий слой" + +msgid "Support transition" +msgstr "Переход поддержки" + +msgid "Multiple" +msgstr "Множитель" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Не удалось вычислить ширину линии %1%. Не удается получить значение \"%2%\". " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Для Flow::with_spacing () был указан недопустимый интервал. Проверьте высоту " +"слоя и ширину экструзии." + +msgid "undefined error" +msgstr "неопределённая ошибка" + +msgid "too many files" +msgstr "слишком много файлов" + +msgid "file too large" +msgstr "файл слишком большой" + +msgid "unsupported method" +msgstr "неподдерживаемый метод" + +msgid "unsupported encryption" +msgstr "неподдерживаемое шифрование" + +msgid "unsupported feature" +msgstr "неподдерживаемая функция" + +msgid "failed finding central directory" +msgstr "не удалось найти центральный каталог" + +msgid "not a ZIP archive" +msgstr "это не ZIP архив" + +msgid "invalid header or corrupted" +msgstr "неверный или поврежденный заголовок" + +msgid "unsupported multidisk" +msgstr "неподдерживаемый многотомный архив" + +msgid "decompression failed" +msgstr "сбой распаковки" + +msgid "compression failed" +msgstr "сбой сжатия" + +msgid "unexpected decompressed size" +msgstr "непредвиденный распакованный размер" + +msgid "CRC check failed" +msgstr "Ошибка проверки контрольной суммы" + +msgid "unsupported central directory size" +msgstr "неподдерживаемый размер центрального каталога" + +msgid "allocation failed" +msgstr "ошибка распределения" + +msgid "file open failed" +msgstr "ошибка открытия файла" + +msgid "file create failed" +msgstr "ошибка создания файла" + +msgid "file write failed" +msgstr "ошибка записи файла" + +msgid "file read failed" +msgstr "ошибка чтения файла" + +msgid "file close failed" +msgstr "ошибка закрытия файла" + +msgid "file seek failed" +msgstr "файл не найден" + +msgid "file stat failed" +msgstr "ошибка файла статистики" + +msgid "invalid parameter" +msgstr "неверный параметр" + +msgid "invalid filename" +msgstr "неверное имя" + +msgid "buffer too small" +msgstr "буфер слишком мал" + +msgid "internal error" +msgstr "внутренняя ошибка" + +msgid "file not found" +msgstr "файл не найден" + +msgid "archive too large" +msgstr "слишком большой архив" + +msgid "validation failed" +msgstr "ошибка проверки" + +msgid "write callback failed" +msgstr "ошибка записи функции обратного вызова" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% находится слишком близко к области исключения, что может привести к " +"столкновению при печати." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "" +"%1% находится слишком близко к другим, что может привести к столкновению." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "Модель «%1%» слишком высокая, что может привести к столкновению." + +msgid " is too close to others, there may be collisions when printing." +msgstr "" +" находится слишком близко к другим моделям, что может привести к " +"столкновению при печати." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" находится слишком близко к области исключения, что может привести к " +"столкновению при печати." + +msgid "Prime Tower" +msgstr "Черновая башня" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr "" +" находится слишком близко к другим моделям, что может привести к " +"столкновению.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" +" находится слишком близко к области исключения, что может привести к " +"столкновению.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Не допускается совместная печать несколькими материалами, имеющими большую " +"разницу в температуре печати. Это может привести к засорению и повреждению " +"сопла и экструдера." + +msgid "No extrusions under current settings." +msgstr "При текущих настройках экструзия отсутствует." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"Плавный режим таймлапса не поддерживается, когда включена последовательность " +"печати моделей по очереди." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Выберите последовательность печати «По очереди», для поддержки печати " +"несколько моделей в режиме спиральной вазы." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"Режим «Спиральная ваза» не работает, когда модель печатается несколькими " +"материалами." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "Высота модели %1% превышает максимально допустимую области построения." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"Хотя сама модель %1% вписывается в область построения, её последний слой " +"превышает максимальную высоту области построения." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"Попробуйте уменьшить размер модели или изменить текущие настройки печати и " +"повторить попытку." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "" +"Функция переменной высоты слоя не совместима с органическими поддержками." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"При включении черновой башни не допускается использования разных диаметров " +"сопел и разных диаметров пластиковой нити." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"В настоящее время для режима черновой башни поддерживается только " +"относительная адресация экструдера (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"Предотвращение течи материала с помощью черновой башни в настоящее время не " +"поддерживается." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"В настоящее время режим черновой башни поддерживается только следующими " +"типами G-кода: Marlin, Klipper, RepRap/Sprinter, RepRapFirmware и Repetier." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "Черновая башня не поддерживается при печати в режиме «По очереди»." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"Черновой башни не поддерживается, когда включена функция переменной высоты " +"слоя. Требуется, чтобы все модели имели одинаковую высоту слоя." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"Для черновой башни требуется, чтобы зазор поддержки был кратен высоте слоя." + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" +"Для использования черновой башни требуется, чтобы у всех моделей была " +"одинаковая высота слоя." + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"Для черновой башни требуется, чтобы все модели были напечатаны на одинаковом " +"количестве слоёв подложки." + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"Для использования черновой башни требуется, чтобы все модели были нарезаны с " +"одинаковой высотой слоя." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"Для черновой башни требуется, чтобы все модели имели одинаковую переменную " +"высоту слоя." + +msgid "Too small line width" +msgstr "Слишком маленькая ширина экструзии" + +msgid "Too large line width" +msgstr "Слишком большая ширина экструзии" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"Для черновой башни требуется, чтобы поддержка и модель имели одинаковую " +"высоту слоя." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"Диаметр кончика ветки органической поддержки не должен быть меньше значения " +"ширины экструзии поддержки." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"Диаметр ветки органической поддержки должен быть хотя бы в два раза больше " +"значения ширины экструзии поддержки." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"Диаметр ветвей органической поддержки должен быть больше диаметра кончика " +"ветки." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Используется принудительная поддержка, но её генерация не включена. " +"Пожалуйста, включите генерацию поддержки в настройках слайсера." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "Высота слоя не может быть больше диаметра сопла" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"При относительной адресации экструдера его положение необходимо " +"корректировать на каждом слое, чтобы предотвратить потерю точности с " +"плавающей запятой. Добавьте \"G92 E0\" в G-код выполняемый при смене слоя " +"(layer_gcode)." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"В G-коде выполняемом перед сменой слоя (before_layer_gcode) была найдена " +"команда \"G92 E0\", которая несовместима с абсолютной адресацией экструдера." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"В G-коде выполняемом при смене слоя (layer_gcode) была найдена команда \"G92 " +"E0\", которая несовместима с абсолютной адресацией экструдера." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Печатная пластина %d: %s не поддерживает пруток %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" +"Слишком низкая скорость рывка может привести к появлению артефактов на " +"изогнутых поверхностях. " + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"Значение максимального рывка (machine_max_jerk_x/machine_max_jerk_y) " +"превышает значение заданное в настройках принтера.\n" +"Программа автоматически ограничит рывок, чтобы он не превышал возможности " +"принтера.\n" +"Если хотите получить более высокие скорости, вы можете изменить это значение " +"в настройках принтера (вкладка «Ограничение принтера»)." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"Значение максимального ускорения при печати " +"(machine_max_acceleration_extruding) превышает значение заданное в " +"настройках принтера.\n" +"Программа автоматически ограничит это ускорение, чтобы оно не превышало " +"возможности принтера.\n" +"Если хотите получить более высокие скорости, вы можете изменить это значение " +"в настройках принтера (вкладка «Ограничение принтера»)." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"Значение ускорения перемещения превышает значение заданное в настройках " +"принтера (machine_max_acceleration_travel).\n" +"Программа автоматически ограничит это ускорение, чтобы оно не превышало " +"возможности принтера. \n" +"Если хотите получить более высокие скорости, вы можете изменить это значение " +"в настройках принтера (вкладка «Ограничение принтера»)." + +msgid "Generating skirt & brim" +msgstr "Генерация юбки и каймы" + +msgid "Exporting G-code" +msgstr "Экспорт в G-код" + +msgid "Generating G-code" +msgstr "Генерация G-кода" + +msgid "Failed processing of the filename_format template." +msgstr "Ошибка обработки шаблона filename_format." + +msgid "Printable area" +msgstr "Область печати" + +msgid "Bed exclude area" +msgstr "Область исключения" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Непечатаемая область в плоскости XY. Например, в принтерах серии X1 передний " +"левый угол используется для обрезания материала при его замене. Область " +"выражается в виде многоугольника по точкам в следующем формате: \"XxY, " +"XxY, ...\"" + +msgid "Bed custom texture" +msgstr "Пользовательская текстура стола" + +msgid "Bed custom model" +msgstr "Пользовательская модель стола" + +msgid "Elephant foot compensation" +msgstr "Компенсация «слоновьей ноги»" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Уменьшение первого слоя в плоскости XY на заданное значение, чтобы " +"компенсировать эффект слоновьей ноги." + +msgid "Elephant foot compensation layers" +msgstr "Компенсирующих слоёв «слоновьей ноги»" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"Количество слоёв, на которые будет распространяться компенсация слоновьей " +"ноги. Первый слой будет уменьшен на величину компенсации слоновьей ноги с " +"последующим линейным уменьшением до слоя, указанного здесь." + +msgid "layers" +msgstr "слой(-я)" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Высота каждого слоя. Чем меньше значение, тем лучше качество, но требуется " +"больше времени для печати, и наоборот." + +msgid "Printable height" +msgstr "Высота печати" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "Максимальная высота печати, которая ограничена механикой принтера." + +msgid "Preferred orientation" +msgstr "Предпочтительная ориентация" + +# Автоориентация stl файлов по оси Z при первоначальном импорте. +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "Автоориентация моделей относительно оси Z при первоначальном импорте." + +msgid "Printer preset names" +msgstr "Имена профиля принтера" + +msgid "Use 3rd-party print host" +msgstr "Использовать сторонний хост печати" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "Позволяет управлять принтером BambuLab через сторонние хосты печати." + +msgid "Hostname, IP or URL" +msgstr "Имя хоста, IP/URL-адрес" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca может загружать G-код файлы на хост принтера. В этом поле нужно " +"указать имя хоста, IP-адрес или URL-адрес хост-экземпляра принтера. Доступ к " +"узлу печати на основе HAProxy с включенной базовой аутентификацией можно " +"получить, указав имя пользователя и пароль в поле URL-адрес в следующем " +"формате: https://username:password@your-octopi-address/" + +msgid "Device UI" +msgstr "URL-адрес хоста" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Укажите URL-адрес пользовательского интерфейса вашего устройства, если он не " +"совпадает с print_host" + +msgid "API Key / Password" +msgstr "API-ключ / Пароль" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orcaможет загружать файл G-кода на хост принтера. Это поле должно " +"содержать API ключ или пароль, необходимые для проверки подлинности." + +msgid "Name of the printer" +msgstr "Название принтера" + +msgid "HTTPS CA File" +msgstr "Файл корневого сертификата HTTPS" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Для подключений по HTTPS к OctoPrint укажите пользовательский файл корневого " +"сертификата в формате crt/pem. Если оставить поле пустым, будет " +"использоваться хранилище сертификатов ОС по умолчанию." + +msgid "User" +msgstr "Пользователь" + +msgid "Password" +msgstr "Пароль" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Игнорировать проверки отзыва HTTPS сертификата" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Игнорировать проверки отзыва HTTPS сертификата в случае его отсутствия или " +"автономности точек распространения. Можно включить эту опцию для " +"самоподписанных сертификатов в случае сбоя подключения." + +msgid "Names of presets related to the physical printer" +msgstr "Имена профилей, связанных с физическим принтером" + +msgid "Authorization Type" +msgstr "Тип авторизации" + +msgid "API key" +msgstr "API-ключ" + +msgid "HTTP digest" +msgstr "HTTP digest-авторизация" + +msgid "Avoid crossing wall" +msgstr "Избегать пересечения периметров" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Объезжать и избегать пересечения периметров, для предотвращения образования " +"дефектов на поверхности модели." + +msgid "Avoid crossing wall - Max detour length" +msgstr "Максимальная длина обхода" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Максимальное расстояние обхода сопла от модели во избежание пересечения " +"периметров при движении. Если расстояние обхода превышает это значение, то " +"для данного маршрута эта опция не применяется. Длина обхода может быть " +"задана как в абсолютном значении, так и в процентах (например, 50%) от " +"прямого пути перемещения. 0 - отключено." + +msgid "mm or %" +msgstr "мм или %" + +msgid "Other layers" +msgstr "Последующие слои" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Температура стола для всех слоёв, кроме первого. 0 означает, что пластиковая " +"нить не поддерживает печать на этой печатной пластине." + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" +"Температура стола для всех слоёв, кроме первого. 0 означает, что пластиковая " +"нить не поддерживает печать на этой печатной пластине." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Температура стола для всех слоёв, кроме первого. 0 означает, что пластиковая " +"нить не поддерживает печать на этой печатной пластине." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Температура стола для всех слоёв, кроме первого. 0 означает, что пластиковая " +"нить не поддерживает печать на этой печатной пластине." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Температура стола для всех слоёв, кроме первого. 0 означает, что пластиковая " +"нить не поддерживает печать на этой печатной пластине." + +msgid "Initial layer" +msgstr "Первый слой" + +msgid "Initial layer bed temperature" +msgstr "Температура стола для первого слоя" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Температура стола для первого слоя. 0 означает, что пластиковая нить не " +"поддерживает печать на этой печатной пластине." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" +"Температура стола для первого слоя. 0 означает, что пластиковая нить не " +"поддерживает печать на этой печатной пластине." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Температура стола для первого слоя. 0 означает, что пластиковая нить не " +"поддерживает печать на этой печатной пластине." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Температура стола для первого слоя. 0 означает, что пластиковая нить не " +"поддерживает печать на этой печатной пластине." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Температура стола для первого слоя. 0 означает, что пластиковая нить не " +"поддерживает печать на этой печатной пластине." + +msgid "Bed types supported by the printer" +msgstr "Типы столов, поддерживаемые принтером" + +msgid "Smooth Cool Plate" +msgstr "Не нагреваемая гладкая пластина Bambu" + +msgid "Engineering Plate" +msgstr "Инженерная пластина" + +msgid "Smooth High Temp Plate" +msgstr "Высокотемп. гладкая пластина" + +msgid "Textured Cool Plate" +msgstr "Не нагреваемая текстур. пластина Bambu" + +msgid "First layer print sequence" +msgstr "Последовательность печати первого слоя" + +msgid "Other layers print sequence" +msgstr "Последовательность печати других слоёв" + +# ??? Количество слоёв при последовательной печати остальных слоёв, Количество других слоёв в последовательной печати +msgid "The number of other layers print sequence" +msgstr "Количество других слоёв при последовательной печати" + +msgid "Other layers filament sequence" +msgstr "Последовательность прутков на других слоях" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "" +"Команды в G-коде, которые выполняются каждый раз перед сменой слоя, то есть " +"перед поднятием оси Z." + +msgid "Bottom shell layers" +msgstr "Сплошных слоёв снизу" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Количество сплошных слоёв при печати нижней поверхности модели, включая " +"нижний поверхностный слой. Если толщина, рассчитанная с помощью этого " +"значения, меньше толщины оболочки снизу, количество слоёв оболочки снизу " +"будет увеличено." + +msgid "Bottom shell thickness" +msgstr "Толщина оболочки снизу" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"Минимальная толщина оболочки снизу в мм. Если толщина оболочки, рассчитанная " +"по количеству сплошных слоёв снизу, меньше этого значения, количество " +"сплошных слоёв снизу будет автоматически увеличено при нарезке, для " +"удовлетворения минимальной толщины оболочки. Это позволяет избежать слишком " +"тонкой оболочки при небольшой высоте слоя. 0 означает, что этот параметр " +"отключён, а толщина оболочки снизу полностью задаётся количеством сплошных " +"слоёв снизу." + +msgid "Apply gap fill" +msgstr "Заполнять щели" + +# ??? Чет все сумбурно описано в анг. версии как-то +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"Включает заполнение пробелов для выбранных поверхностей. Минимальной длиной " +"пробела, который будет заполнен, можно управлять с помощью нижерасположенной " +"опции «Игнорировать небольшие пробелы».\n" +"Доступные режимы:\n" +"1. Везде (заполнение пробелов применяется на верхних, нижних и внутренних " +"сплошных поверхностях)\n" +"2. Верхняя и нижняя поверхности (заполнение пробелов применяется только к " +"верхней и нижней поверхностям)\n" +"3. Нигде (заполнение пробелов отключено)\n" + +msgid "Everywhere" +msgstr "Везде" + +msgid "Top and bottom surfaces" +msgstr "Верхняя и нижняя поверхности" + +msgid "Nowhere" +msgstr "Нигде" + +msgid "Force cooling for overhang and bridge" +msgstr "Принудительный обдув навесов и мостов" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Включите, чтобы оптимизировать скорость вентилятора охлаждения моделей для " +"нависаний и мостов для обеспечения лучшего их охлаждения." + +msgid "Fan speed for overhang" +msgstr "Скорость вентилятора на нависаниях" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Заставляет вентилятор обдува модели работать на этой скорости при печати " +"мостов или нависающих периметров, имеющих большую степень свеса. " +"Принудительное охлаждение позволяет повысить качество печати этих частей." + +msgid "Cooling overhang threshold" +msgstr "Порог включения обдува на нависаниях" + +#, fuzzy, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Принудительное включение вентилятора обдува модели на определенную скорость, " +"если степень нависания печатаемой части превышает данное значение. " +"Выражается в процентах и показывает, насколько велика ширина периметра без " +"поддержки со стороны нижнего слоя. 0% означает принудительное охлаждение " +"всего внешнего периметра независимо от степени нависания." + +msgid "Bridge infill direction" +msgstr "Угол печати мостов" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Переопределение угла печати мостов. Если задано 0, угол печати мостов " +"рассчитывается автоматически. В противном случае заданный угол будет " +"использоваться для наружных мостов. Для нулевого угла установите 180°." + +msgid "Bridge density" +msgstr "Плотность мостов" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Плотность наружных мостов. 100% - сплошной мост. По умолчанию задано 100%." + +msgid "Bridge flow ratio" +msgstr "Коэффициент потока мостов" + +# ???1 +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Параметр задаёт количество пластика, затрачиваемое для построения мостов. В " +"большинстве случаев настроек по умолчанию достаточно, тем не менее, при " +"печати некоторых моделей уменьшение параметра может сократить провисание " +"пластика при печати мостов." + +msgid "Internal bridge flow ratio" +msgstr "Коэффициент потока внутреннего моста" + +# ???1 +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"Это значение определяет толщину слоя внутреннего моста, печатаемого поверх " +"разреженного заполнения. Немного уменьшите это значение (например 0,9), " +"чтобы улучшить качество поверхности печатаемой поверх разреженного " +"заполнения." + +msgid "Top surface flow ratio" +msgstr "Коэффициент потока на верхней поверхности" + +# ???1 +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Этот параметр задаёт количество выдавливаемого материала для верхнего " +"сплошного слоя заполнения. Вы можете немного уменьшить его, чтобы получить " +"более гладкую поверхность." + +msgid "Bottom surface flow ratio" +msgstr "Коэффициент потока на нижней поверхности" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" +"Этот параметр задаёт количество выдавливаемого материала для нижнего " +"сплошного слоя заполнения." + +msgid "Precise wall" +msgstr "Точные периметры" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"Повышение точности оболочки за счет регулировки расстояния между внешними " +"периметрами. Это также позволяет уменьшить расслоение слоёв.\n" +"Примечание: параметр будет действовать только в том случае, если " +"последовательность печати периметров задана «Внутренний/внешний»." + +msgid "Only one wall on top surfaces" +msgstr "Только один периметр на верхней поверхности" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Печатать только один периметр на верхней поверхности, чтобы оставить больше " +"пространства для верхнего шаблона заполнения." + +msgid "One wall threshold" +msgstr "Порог одного периметра" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Если должна быть напечатана верхняя поверхность и частично покрыта другим " +"слоем, она не будет рассматриваться как верхний слой, ширина которого ниже " +"этого значения. Это может быть полезно, чтобы не допустить срабатывания " +"функции «Только один периметр на верхней поверхности» на поверхности, " +"которая должна быть покрыта только периметрами. Это значение может быть " +"задано в мм или % от ширины экструзии периметра.\n" +"Предупреждение: если этот параметр включён, то могут возникнуть дефекты, " +"если у вас на следующем слое имеются какие-то тонкие элементы, например, " +"буквы. Установите значение 0, чтобы избавиться от этих дефектов." + +msgid "Only one wall on first layer" +msgstr "Только один периметр на первом слое" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Печатать только один периметр на первом слое, чтобы оставить больше " +"пространства для нижнего шаблона заполнения." + +msgid "Extra perimeters on overhangs" +msgstr "Дополнительные периметры на нависаниях" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Создание дополнительных дорожек по периметру над крутыми нависаниями и " +"участками, где мосты не могут быть закреплены. " + +msgid "Reverse on odd" +msgstr "Реверс на нависаниях" + +msgid "Overhang reversal" +msgstr "Реверс на нависаниях" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"Печать нависающих периметров в обратном направлении на нечётных слоях. Такое " +"чередование может значительно улучшить качество печати крутых нависаний.\n" +"\n" +"Эта настройка также может помочь уменьшить деформацию детали за счет " +"уменьшения напряжений в её стенках." + +msgid "Reverse only internal perimeters" +msgstr "Реверс только для внутренних периметров" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"Применяется логика реверса печати периметров только для внутренних " +"периметров.\n" +"\n" +"Эта настройка значительно снижает напряжения в деталях, поскольку теперь они " +"распределяются в чередующихся направлениях. Это должно уменьшить деформацию " +"детали, сохраняя при этом качество внешнего периметра. Эта функция может " +"быть очень полезна для материалов, склонных к деформации, таких как ABS/ASA, " +"а также для эластичных материалов, таких как TPU и Silk PLA. Это также может " +"помочь уменьшить деформацию нависающих над поддержкой частей.\n" +"\n" +"Чтобы эта настройка была наиболее эффективной, рекомендуется установить " +"параметр «Порог для реверса» равным 0, чтобы все внутренние периметры " +"печатались в чередующихся направлениях на нечётных слоях независимо от " +"степени их нависания." + +msgid "Bridge counterbore holes" +msgstr "Мост для зенкованных отверстий" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"Эта опция создаёт мосты для отверстий с зенковкой, позволяя печатать их без " +"поддержки. \n" +"Доступные режимы:\n" +"1. Нет (т.е. отключено)\n" +"2. Частичный мост (мост будет построен только над частью неподдерживаемой " +"области)\n" +"3. Жертвенный слой (создаётся полноценный жертвенный слой моста)" + +msgid "Partially bridged" +msgstr "Частичный мост" + +msgid "Sacrificial layer" +msgstr "Жертвенный слой" + +msgid "Reverse threshold" +msgstr "Порог для реверса" + +msgid "Overhang reversal threshold" +msgstr "Порог разворота на свесах" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Величина свеса периметра при которой она считается достаточной для активации " +"функции реверса печати нависаний.\n" +"Может быть задано как в процентах, так и в миллиметрах от ширины периметра." + +msgid "Classic mode" +msgstr "Классический режим" + +msgid "Enable this option to use classic mode" +msgstr "Включите эту опцию для использования классического режима." + +msgid "Slow down for overhang" +msgstr "Замедляться на нависаниях" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "Включение динамического управления скоростью печати нависаний." + +msgid "Slow down for curled perimeters" +msgstr "Замедляться на изогнутых периметрах" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Включите эту опцию для замедления печати в тех областях, где потенциально " +"могут возникать изогнутые периметры." + +msgid "mm/s or %" +msgstr "мм/с или %" + +msgid "External" +msgstr "Внешние" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Скорость печати мостов и периметров с полным нависанием." + +msgid "mm/s" +msgstr "мм/с" + +msgid "Internal" +msgstr "Внутренние" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Скорость печати внутреннего моста. Если задано в процентах, то значение " +"вычисляться относительно скорости внешнего моста (bridge_speed). Значение по " +"умолчанию равно 150%." + +msgid "Brim width" +msgstr "Ширина каймы" + +msgid "Distance from model to the outermost brim line" +msgstr "Расстояние от модели до внешней линии каймы." + +msgid "Brim type" +msgstr "Тип каймы" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Этот параметр управляет формированием каймы на внешней/внутренней стороне " +"моделей. Авто означает, что ширина каймы анализируется и рассчитывается " +"автоматически." + +msgid "Brim-object gap" +msgstr "Смещение каймы" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "Смещение каймы от печатаемой модели, может облегчить её удаление." + +msgid "Brim ears" +msgstr "Ушки каймы" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "Генерировать кайму только на острых краях модели." + +msgid "Brim ear max angle" +msgstr "Максимальный угол ушек каймы" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Максимальный угол, при котором печатается ушко каймы.\n" +"При 0°, кайма не создаётся.\n" +"При ~180°, кайма будет создаваться на всех участках, кроме прямых." + +msgid "Brim ear detection radius" +msgstr "Радиус обнаружения ушек каймы" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"Геометрия модели будет упрощена перед обнаружением острых углов. Этот " +"параметр задаёт минимальную длину отклонения для её упрощения.\n" +"Установите 0 для отключения." + +msgid "Compatible machine" +msgstr "Совместимые принтеры" + +msgid "upward compatible machine" +msgstr "условия для совместимых принтеров" + +msgid "Compatible machine condition" +msgstr "Состояние совместимой машины" + +msgid "Compatible process profiles" +msgstr "Совместимые профили процессов" + +msgid "Compatible process profiles condition" +msgstr "Состояние совместимых профилей процессов" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Выбор последовательности печати моделей - одновременно или по очереди." + +msgid "By layer" +msgstr "Одновременно" + +msgid "By object" +msgstr "По очереди" + +# ???Внутрислойный порядок печати +msgid "Intra-layer order" +msgstr "Порядок печати слоёв" + +msgid "Print order within a single layer" +msgstr "Последовательность печати слоёв в пределах одного слоя." + +msgid "As object list" +msgstr "Согласно списку моделей" + +msgid "Slow printing down for better layer cooling" +msgstr "Замедлять печать для лучшего охлаждения слоёв" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Включите эту опцию для разрешения замедления скорости печати в зависимости " +"от времени печати слоя, чтобы слой мог охлаждаться дольше. Это позволяет " +"улучшить качество охлаждения острых концов и мелких деталей." + +msgid "Normal printing" +msgstr "Ускорение по умолчанию" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"Ускорение по умолчанию для обычной печати и перемещения, кроме первого слоя." + +msgid "mm/s²" +msgstr "мм/с²" + +msgid "Default filament profile" +msgstr "Профиль прутка по умолчанию" + +msgid "Default filament profile when switch to this machine profile" +msgstr "" +"Профиль пластиковой нити по умолчанию при переключении на этот профиль " +"принтера." + +msgid "Default process profile" +msgstr "Профиль процесса по умолчанию" + +msgid "Default process profile when switch to this machine profile" +msgstr "" +"Профиль процесса по умолчанию при переключении на этот профиль принтера." + +msgid "Activate air filtration" +msgstr "Вкл. вытяжной вентилятор" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" +"Включение вытяжного вентилятора для лучшего охлаждения внутренней области " +"принтера. G-код команда: M106 P3 S(0-255)" + +msgid "Fan speed" +msgstr "Скорость вентилятора" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Скорость вытяжного вентилятора во время печати. Эта скорость переопределяет " +"скорость в пользовательском G-коде прутка." + +msgid "Speed of exhaust fan after printing completes" +msgstr "Скорость вытяжного вентилятора после завершения печати" + +msgid "No cooling for the first" +msgstr "Не включать вентилятор на первых" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Количество слоёв, начиная с первого, на которых всем вентиляторам запрещено " +"включаться, чтобы не ухудшить адгезию к столу." + +msgid "Don't support bridges" +msgstr "Не печатать поддержки под мостами" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Опция, препятствующая печати поддержки под мостами. Мост обычно можно " +"печатать без поддержки, если он не очень длинный." + +msgid "Thick bridges" +msgstr "Толстые мосты" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Если включено, мосты печатаются более надёжные и на большие расстояния, но " +"могут выглядеть хуже. Если отключено, мосты выглядят лучше, но они надёжны " +"только на коротких расстояниях." + +msgid "Thick internal bridges" +msgstr "Толстые внутренние мосты" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"Если включено, будут использоваться толстые внутренние мосты. Обычно " +"рекомендуется включить эту функцию. Однако при использовании сопел больших " +"диаметров рекомендуется отключить эту опцию." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "Не отфильтровать небольшие внутренние мосты (beta)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"Эта опция может помочь уменьшить образование эффекта «дырявой подушки» на " +"верхних сильно наклонных поверхностях или изогнутых моделях.\n" +"\n" +"По умолчанию, маленькие внутренние мосты фильтруются и внутреннее сплошное " +"заполнение печатается непосредственно поверх разреженного заполнения. В " +"большинстве случаев это хорошо работает, ускоряя печать без особого ущерба " +"для качества верхней поверхности. Однако, на сильно наклонных поверхностях " +"или изогнутых моделях, особенно при низкой плотности заполнения, это может " +"привести к скручиванию неподдерживаемого сплошного заполнения и образованию " +"эффекта «дырявой подушки».\n" +"\n" +"Включение позволит печатать слой внутреннего моста над слабо поддерживаемым " +"внутренним сплошным заполнением. Приведённые ниже параметры управляют " +"степенью фильтрации, т.е. количеством создаваемых внутренних мостов.\n" +"\n" +"Отключение - отключает эту опцию. Это задано по умолчанию и в большинстве " +"случаев работает хорошо.\n" +"\n" +"Ограниченная фильтрация - создаёт внутренние мосты на сильно наклонных " +"поверхностях, при этом избегая создания ненужных внутренних мостов. Это " +"хорошо работает на большинстве сложных моделях.\n" +"\n" +"Без фильтрации - мосты создаются над каждым потенциально внутреннем " +"нависании. Этот вариант полезен для моделей с сильно наклонной верхней " +"поверхностью. Однако в большинстве случаев этот вариант создаёт слишком " +"много ненужных мостов." + +msgid "Disabled" +msgstr "Отключено" + +msgid "Limited filtering" +msgstr "Ограниченная фильтрация" + +msgid "No filtering" +msgstr "Без фильтрации" + +msgid "Max bridge length" +msgstr "Максимальная длина моста" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Максимальная длина мостов, не нуждающихся в поддержке. Установите 0, если " +"требуется поддержка всех мостов, или очень большое значение, если поддержка " +"мостов не требуется." + +msgid "End G-code" +msgstr "Завершающий G-код" + +msgid "End G-code when finish the whole printing" +msgstr "Команды в G-коде, которые выполняются в самом конце печати." + +msgid "Between Object Gcode" +msgstr "G-код между моделями" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Команды в G-коде, которые выполняются каждый раз перед сменой модели. " +"Действует только при печати моделей «По очереди»." + +msgid "End G-code when finish the printing of this filament" +msgstr "" +"Команды в G-коде, которые выполняются при окончании печатью этой пластиковой " +"нитью." + +msgid "Ensure vertical shell thickness" +msgstr "Обеспечивать верт. толщину оболочки" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"Добавление сплошного заполнения вблизи наклонных поверхностей для " +"обеспечения вертикальной толщины оболочки (верхний+нижний сплошные слои).\n" +"\n" +"Нет - сплошное заполнение нигде не будет добавляться. Внимание: если ваша " +"модель имеет наклонные поверхности, подумайте стоит ли выбирать эту опцию.\n" +"Только критические - избегать добавления сплошного заполнения для стен.\n" +"Умеренное - добавление сплошного заполнения только для сильно наклонных " +"поверхностей.\n" +"Везде - добавление сплошного заполнения для всех подходящих наклонных " +"поверхностей.\n" +"Значение по умолчанию - Везде." + +msgid "Critical Only" +msgstr "Только критические" + +msgid "Moderate" +msgstr "Умеренное" + +msgid "Top surface pattern" +msgstr "Шаблон заполнения верхней поверхности" + +msgid "Line pattern of top surface infill" +msgstr "Шаблон заполнения верхней поверхности." + +msgid "Concentric" +msgstr "Концентрический" + +msgid "Rectilinear" +msgstr "Прямолинейный" + +msgid "Monotonic" +msgstr "Монотонный" + +msgid "Monotonic line" +msgstr "Монотонная линия" + +msgid "Aligned Rectilinear" +msgstr "Выровн. прямолинейн." + +msgid "Hilbert Curve" +msgstr "Кривая Гильберта" + +msgid "Archimedean Chords" +msgstr "Хорды Архимеда" + +msgid "Octagram Spiral" +msgstr "Спиральная октаграмма" + +msgid "Bottom surface pattern" +msgstr "Шаблон заполнения нижней поверхности" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "Шаблон заполнения нижней поверхности, кроме мостов." + +msgid "Internal solid infill pattern" +msgstr "Шаблон сплошного заполнения" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"Шаблон печати внутреннего сплошного заполнения. Если включена функция " +"«Обнаруживать узкую область сплошного заполнения», то для небольшой области " +"будет использоваться концентрический шаблон заполнения." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Ширина экструзии для внешнего периметра. Если задано в процентах, то " +"значение вычисляться относительно диаметра сопла." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Скорость печати внешнего периметра (видимого). Для улучшения качества, эту " +"скорость делают ниже скорости внутренних периметров." + +msgid "Small perimeters" +msgstr "Маленькие периметры" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"Этот параметр влияет на скорость печати периметров, имеющих радиус <= " +"значению порога маленьких периметров (обычно это отверстия). Если задано в " +"процентах, параметр вычисляется относительно скорости печати внешнего " +"периметра указанного выше. Установите 0 для автонастройки." + +msgid "Small perimeters threshold" +msgstr "Порог маленьких периметров" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"Пороговое значение длины маленьких периметров. Значение по умолчанию - 0 мм." + +msgid "Walls printing order" +msgstr "Порядок печати периметров" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"Последовательность печати внутреннего/внешнего периметров.\n" +"\n" +"Используйте порядок печати периметров «Внутренний/Внешний» для получения " +"наилучших нависаний. Однако этот вариант приводит к небольшому снижению " +"качества внешней поверхности.\n" +"\n" +"Используйте порядок печати периметров «Внутренний/Внешний/Внутренний» для " +"получения наилучшего качества внешней поверхности и точности размеров, так " +"как внешний периметр печатается без помех со стороны внутреннего периметра. " +"Однако при этом снижается качество печати нависаний, поскольку отсутствует " +"внутренний периметр к которому прикрепляется внешний. Для этого варианта " +"требуется минимум 3 периметра, так как сначала печатаются внутренние " +"периметры, начиная с 3-го периметра, затем внешний периметр и, наконец, " +"первый внутренний периметр. В большинстве случаев этот вариант рекомендуется " +"использовать вместо варианта «Внешний/Внутренний». \n" +"\n" +"Используйте порядок печати периметров «Внешний/Внутренний», чтобы получить " +"то же качество внешних периметров и точность размеров, что и при " +"использовании варианта «Внутренний/Внешний/Внутренний». Однако, поскольку " +"первая экструзия нового слоя начинается на видимой поверхности, швы по оси Z " +"будут выглядеть менее равномерными.\n" +"\n" +" " + +msgid "Inner/Outer" +msgstr "Внутренний/Внешний" + +msgid "Outer/Inner" +msgstr "Внешний/Внутренний" + +msgid "Inner/Outer/Inner" +msgstr "Внутренний/Внешний/Внутренний" + +msgid "Print infill first" +msgstr "Сначала печатать заполнение" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" +"Последовательность печати периметров/заполнения. Когда отключено, сначала " +"печатаются периметры, что в большинстве случаев работает лучше всего.\n" +"\n" +"Печать заполнения первым может помочь при экстремальных нависаниях, " +"поскольку периметры будут прилегать к соседнему заполнению. Однако в этом " +"случае последующее заполнение будет слегка выдавливать напечатанные " +"периметры в местах примыкания к ним, что приводит к ухудшению качества " +"внешней поверхности. Кроме того, это может приводить к тому, что заполнение " +"будет просвечиваться через внешнюю поверхность детали." + +msgid "Wall loop direction" +msgstr "Направление петель периметров" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"Направление, в котором выдавливаются петли периметров при взгляде сверху " +"вниз.\n" +"\n" +"По умолчанию все периметры выдавливаются против часовой стрелки, если не " +"включена опция «Реверс на нависаниях». При установке этого параметра в " +"значение, отличное от автоматического, направление периметров будет " +"задаваться независимо от опция «Реверс на нависаниях».\n" +"\n" +"Эта опция будет отключена, если включен режим спиральной вазы." + +msgid "Counter clockwise" +msgstr "Против часовой стрелки" + +msgid "Clockwise" +msgstr "По часовой стрелке" + +msgid "Height to rod" +msgstr "Высота до вала" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Расстояние от кончика сопла до нижнего вала. Значение важно при печати " +"моделей «По очереди» для предотвращения столкновений." + +msgid "Height to lid" +msgstr "Высота до крышки" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Расстояние от кончика сопла до крышки. Значение важно при печати моделей «По " +"очереди» для предотвращения столкновений." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Безопасное расстояние вокруг экструдера. Используется для предотвращения " +"столкновений при печати отдельно стоящих моделей." + +msgid "Nozzle height" +msgstr "Высота сопла" + +msgid "The height of nozzle tip." +msgstr "Высота кончика сопла." + +msgid "Bed mesh min" +msgstr "Мин. сетка стола" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Этот параметр устанавливает минимальную точку для допустимой области сетки " +"стола. Большинство принтеров из-за смещения датчика по оси XY не могут " +"производить зондирование всей площади стола. Чтобы точка зондирования не " +"выходила за пределы области стола, нужно правильно задать эти минимальные и " +"максимальные точки. Snapmaker Orca следит за тем, чтобы значения " +"adaptive_bed_mesh_min/adaptive_bed_mesh_max не превышают эти минимальные/" +"максимальные значения. Эту информацию можно получить у производителя " +"принтера. По умолчанию установлено значение (-99999, -99999), которое " +"означает отсутствие ограничений, что позволяет проводить зондирование по " +"всему столу." + +msgid "Bed mesh max" +msgstr "Макс. сетка стола" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Этот параметр устанавливает максимальную точку для допустимой области сетки " +"стола. Большинство принтеров из-за смещения датчика по оси XY не могут " +"производить зондирование всей площади стола. Чтобы точка зондирования не " +"выходила за пределы области стола, нужно правильно задать эти минимальные и " +"максимальные точки. Snapmaker Orca следит за тем, чтобы значения " +"adaptive_bed_mesh_min/adaptive_bed_mesh_max не превышают эти минимальные/" +"максимальные значения. Эту информацию можно получить у производителя " +"принтера. По умолчанию установлено значение (-99999, -99999), которое " +"означает отсутствие ограничений, что позволяет проводить зондирование по " +"всему столу." + +msgid "Probe point distance" +msgstr "Расстояние между точками зондирования" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"Этот параметр задаёт расстояние между точками зондирования (размер сетки) в " +"направлениях XY. По умолчанию оно равно 50 мм как для X, так и для Y." + +msgid "Mesh margin" +msgstr "Граница сетки" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" +"Этот параметр определяет дополнительное расстояние, на которое должна быть " +"расширена адаптивная сетка стола в направлениях XY." + +msgid "Extruder Color" +msgstr "Цвет экструдера" + +msgid "Only used as a visual help on UI" +msgstr "" +"Используется только в качестве визуальной помощи в пользовательском " +"интерфейсе" + +# ??? Смещение экструдера по осям X/Y +msgid "Extruder offset" +msgstr "Смещение координат экструдера" + +msgid "Flow ratio" +msgstr "Коэффициент потока модели" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"Коэффициент пропорционального изменения величины потока подаваемого " +"пластика. Рекомендуемый диапазон значений от 0,95 до 1,05.\n" +"При небольшом переливе или недоливе на поверхности, корректировка этого " +"параметра поможет получить хорошую гладкую поверхность." + +msgid "Enable pressure advance" +msgstr "Включить Pressure advance" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Включить Pressure advance (прогнозирование давления). Результат " +"автокалибровки будет перезаписан после включения." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" +"Pressure advance (прогнозирование давления) в прошивки Klipper, это одно и " +"тоже что Linear advance в прошивке Marlin." + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"Ширина экструзии по умолчанию, если какие-либо из значений ширины экструзии " +"установлены равные нулю. Если задано в процентах, то значение вычисляться " +"относительно диаметра сопла." + +msgid "Keep fan always on" +msgstr "Вентилятор включён всегда" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Если включено, вентилятор охлаждения модели никогда не будет останавливаться " +"и будет работать на минимальной скорости, чтобы сократить частоту его " +"запуска и остановки." + +msgid "Don't slow down outer walls" +msgstr "Не замедляться на внешнем периметре" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" +"Если включено, то скорость печати внешних периметров не будет снижаться, " +"чтобы уложиться в минимальное время печати слоя. Это особенно полезно при " +"следующих сценариях:\n" +"\n" +"1. Чтобы при печати глянцевыми материалами избежать изменения блеска \n" +"2. Чтобы избежать появления небольших дефектов, которые возникают при " +"изменении скорости и выглядят как горизонтальные полосы \n" +"3. Чтобы избежать печати на скоростях, при которых на внешних периметрах " +"возникают вертикальные артефакты (VFA)\n" +"\n" + +msgid "Layer time" +msgstr "Время слоя" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"Вентилятор охлаждения моделей будет включён для слоёв, расчётное время " +"которых меньше этого значения. Скорость вентилятора интерполируется между " +"минимальной и максимальной скоростями вентилятора зависимости от времени " +"печати слоя." + +msgid "Default color" +msgstr "Цвет по умолчанию" + +msgid "Default filament color" +msgstr "Цвет пластиковой нити по умолчанию" + +msgid "Filament notes" +msgstr "Примечание о прутке" + +msgid "You can put your notes regarding the filament here." +msgstr "Здесь вы можете написать свои заметки для текущей пластиковой нити." + +msgid "Required nozzle HRC" +msgstr "Необходимая твёрдость сопла" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"Минимальная твёрдость материала сопла (HRC), необходимая для печати " +"пластиковой нитью. 0 - отключение контроля сопел на твёрдость." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Этот параметр определяет, какой объём материала может быть расплавлен и " +"выдавлен в секунду. Скорость печати ограничена максимальным объёмным " +"расходом в случае слишком высокой и необоснованной установки скорости. " +"Параметр не может быть нулевым." + +msgid "mm³/s" +msgstr "мм³/с" + +msgid "Filament load time" +msgstr "Время загрузки прутка" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Время загрузки новой пластиковой нити при её смене. Только для статистики." + +msgid "Filament unload time" +msgstr "Время выгрузки прутка" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Время выгрузки старой пластиковой нити при её смене. Только для статистики." + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Диаметр пластиковой нити используется для расчёта экструзии, поэтому он " +"важен и должен быть точным" + +msgid "Pellet flow coefficient" +msgstr "Коэф. потока гранул" + +# ??????? PI это π? +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" +"Коэффициент потока гранул определяется эмпирическим путем и позволяет " +"рассчитать объём для гранульных принтеров.\n" +"\n" +"Внутри коэффициент преобразуется в диаметр прутка ('filament_diameter'). Все " +"остальные расчёты объёма остаются прежними.\n" +"\n" +"диаметр прутка = √( (4 * коэф. потока гранул) / π )" + +msgid "Shrinkage" +msgstr "Усадка материала" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Введите процент усадки пластиковой нити, которую получит она после " +"охлаждения (пишите 94%, если вы намерили 94 мм, вместо 100 мм). Для " +"компенсации усадки деталь будет отмасштабированна по оси XY. При этом " +"учитывается только пластиковая нить, используемая для печати внешнего " +"периметра.\n" +"Убедитесь, что между моделями достаточно места, так как эта компенсация " +"выполняется после проверок." + +msgid "Loading speed" +msgstr "Скорость загрузки" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Скорость загрузки прутка при печати черновой башни." + +msgid "Loading speed at the start" +msgstr "Начальная скорость загрузки" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Скорость в начальной фазе загрузки прутка." + +msgid "Unloading speed" +msgstr "Скорость выгрузки" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Скорость выгрузки прутка на черновую башню. (не влияет на начальную фазу " +"выгрузки сразу после рэмминга)." + +msgid "Unloading speed at the start" +msgstr "Начальная скорость выгрузки" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "Скорость выгрузки кончика прутка сразу после рэмминга." + +msgid "Delay after unloading" +msgstr "Задержка после выгрузки" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Время ожидания после выгрузки прутка. Это может помочь вам легко сменить " +"сопло при печати гибкими материалами, которым требуется больше времени, " +"чтобы вернуться к своим первоначальным размерам." + +msgid "Number of cooling moves" +msgstr "Количество охлаждающих движений" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"Пруток охлаждается в охлаждающих трубках путём перемещения назад и вперёд. " +"Укажите желаемое количество таких движений." + +msgid "Speed of the first cooling move" +msgstr "Скорость первого охлаждающего движения" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "Охлаждающие движения постепенно ускоряются, начиная с этой скорости." + +msgid "Minimal purge on wipe tower" +msgstr "Мин. объём сброса на черновой башне" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"После смены инструмента, точное положение вновь загруженного прутка внутри " +"него может быть неизвестно, и давление прутка, вероятно, ещё не стабильно. " +"Перед тем, как очистить печатающую головку в заполнение или в «жертвенную» " +"модель Snapmaker Orca всегда будет выдавливать это количество материала на " +"черновую башню, чтобы обеспечить надёжную печать заполнения или «жертвенной» " +"модели." + +msgid "Speed of the last cooling move" +msgstr "Скорость последнего охлаждающего движения" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "Охлаждающие движения постепенно ускоряют до этой скорости." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Время за которое прошивка принтера (или Multi Material Unit 2.0) выгружает " +"пруток во время смены инструмента (при выполнении кода Т). Это время " +"добавляется к общему времени печати с помощью алгоритма оценки времени " +"выполнения G-кода." + +msgid "Ramming parameters" +msgstr "Параметры рэмминга" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Эта строка редактируется диалоговым окном рэмминга и содержит его конкретные " +"параметры." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Время за которое прошивка принтера (или Multi Material Unit 2.0) выгружает " +"пруток во время смены инструмента (при выполнении кода Т). Это время " +"добавляется к общему времени печати с помощью алгоритма оценки времени " +"выполнения G-кода." + +msgid "Enable ramming for multitool setups" +msgstr "Включить рэмминг для мультиинструментальных устройств" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Выполнять рэмминг при использовании многоинструментального принтера (т. е. " +"когда в настройках принтера снят флажок «Одноэкструдерный ММ принтер»). При " +"включении этой опции, небольшое количество материала быстро выдавливается на " +"черновую башню непосредственно перед сменой инструмента. Эта опция " +"используется только в том случае, если включена черновая башня." + +msgid "Multitool ramming volume" +msgstr "Объём рэмминга мультиинструмента" + +msgid "The volume to be rammed before the toolchange." +msgstr "Объём рэмминга перед сменой инструмента." + +msgid "Multitool ramming flow" +msgstr "Поток рэмминга мультиинструмента" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "Поток рэмминга пластиковой нити перед сменой инструмента." + +msgid "Density" +msgstr "Плотность" + +msgid "Filament density. For statistics only" +msgstr "" +"Плотность пластиковой нити. Это необходимо только для отображения " +"статистической информации." + +msgid "g/cm³" +msgstr "г/см³" + +msgid "The material type of filament" +msgstr "Тип материала пластиковой нити." + +msgid "Soluble material" +msgstr "Растворимый материал" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"Растворимый материал обычно используется для печати поддержки и связующего " +"слоя поддержки." + +msgid "Support material" +msgstr "Поддержка" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"«Материал для поддержки» обычно используется для печати поддержки и " +"связующего слоя поддержки." + +msgid "Softening temperature" +msgstr "Температура размягчения" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"При этой температуре материал размягчается, поэтому, когда температура стола " +"равна или превышает её, настоятельно рекомендуется открыть переднюю дверцу и/" +"или верхнюю крышку принтера, чтобы избежать засорения сопла." + +msgid "Price" +msgstr "Стоимость" + +msgid "Filament price. For statistics only" +msgstr "" +"Стоимость пластиковой нити. Это необходимо только для отображения " +"статистической информации." + +msgid "money/kg" +msgstr "цена/кг" + +msgid "Vendor" +msgstr "Производитель" + +msgid "Vendor of filament. For show only" +msgstr "" +"Производитель пластиковой нити. Это необходимо только для отображения " +"статистической информации." + +msgid "(Undefined)" +msgstr "(Не указано)" + +msgid "Sparse infill direction" +msgstr "Угол разреженного заполнения" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Угол ориентации шаблона разреженного заполнения, который определяет начало " +"или основное направление линий." + +msgid "Solid infill direction" +msgstr "Угол сплошного заполнения" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Угол ориентации шаблона сплошного заполнения, который определяет начало или " +"основное направление линий." + +msgid "Rotate solid infill direction" +msgstr "Поворот сплошного заполнения" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "Разрешить поворот шаблона сплошного заполнение на 90° на каждом слое." + +msgid "Sparse infill density" +msgstr "Плотность заполнения" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"Плотность внутреннего заполнения, выраженная в процентах. 100% означает " +"сплошное заполнение." + +msgid "Sparse infill pattern" +msgstr "Шаблон заполнения" + +msgid "Line pattern for internal sparse infill" +msgstr "Шаблон разреженного заполнения." + +msgid "Grid" +msgstr "Сетка" + +msgid "Line" +msgstr "Линии" + +msgid "Cubic" +msgstr "Куб" + +msgid "Tri-hexagon" +msgstr "Звёзды" + +msgid "Gyroid" +msgstr "Гироид" + +msgid "Honeycomb" +msgstr "Соты" + +msgid "Adaptive Cubic" +msgstr "Динамический куб" + +msgid "3D Honeycomb" +msgstr "3D соты" + +msgid "Support Cubic" +msgstr "Динам. куб. поддержка" + +msgid "Lightning" +msgstr "Молния" + +msgid "Cross Hatch" +msgstr "Перекрестная решётка" + +msgid "Sparse infill anchor length" +msgstr "Длина привязок разреженного заполнения" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"Соединять линию заполнения с внутренним периметром с помощью короткого " +"отрезка дополнительного периметра (привязок). Если выражено в процентах, то " +"она вычисляется по ширине экструзии заполнения. Программа пытается соединить " +"две ближайшие линии заполнения с коротким отрезком периметра. Если не " +"найдено такого отрезка периметра короче «Максимальной длины привязок " +"разреженного заполнения» (anchor_length_max), то линия заполнения " +"соединяется с отрезком периметра только с одной стороны, а длина отрезка " +"периметра ограничена этим параметром, но не больше «Максимальной длины " +"привязок разреженного заполнения» (anchor_length_max).\n" +"Установите этот параметр равным нулю для отключения привязок периметров, " +"соединённых с одной линии заполнения." + +msgid "0 (no open anchors)" +msgstr "0 (нет открытых привязок)" + +msgid "1000 (unlimited)" +msgstr "1000 (неограниченно)" + +msgid "Maximum length of the infill anchor" +msgstr "Максимальная длина привязок разреженного заполнения" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"Соединять линию заполнения с внутренним периметром с помощью короткого " +"отрезка дополнительного периметра (привязок). Если выражено в процентах, то " +"она вычисляется по ширине экструзии заполнения. Slic3r пытается соединить " +"две ближайшие линии заполнения с коротким отрезком периметра. Если не " +"найдено такого отрезка периметра короче этого параметра, линия заполнения " +"соединяется с отрезком периметра только с одной стороны, а длина отрезка " +"периметра ограничена значением «Длина привязок разреженного " +"заполнения» (infill_anchor), но не больше этого параметра.\n" +"Если установить 0, то будет использоваться старый алгоритм для соединения " +"заполнения, который даёт такой же результат, как и при значениях 1000 и 0." + +msgid "0 (Simple connect)" +msgstr "0 (без привязок)" + +msgid "Acceleration of outer walls" +msgstr "Ускорение на наружных периметрах." + +msgid "Acceleration of inner walls" +msgstr "Ускорение на внутренних периметрах." + +msgid "Acceleration of travel moves" +msgstr "Ускорение холостого перемещения." + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Ускорение на верхней поверхности. Использование меньшего значения может " +"улучшить качество верхней поверхности." + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Ускорение на внешнем периметре. Использование более низкого значения может " +"улучшить качество." + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Ускорение на мостах. Если задано в процентах, то значение вычисляться " +"относительно ускорения внешнего периметра." + +msgid "mm/s² or %" +msgstr "мм/с² или %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Ускорение на разреженном заполнении. Если задано в процентах, то значение " +"вычисляться относительно ускорения по умолчанию." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"Ускорение на внутреннем сплошном заполнении. Если задано в процентах, то " +"значение вычисляться относительно ускорения по умолчанию." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Ускорение на первом слое. Использование более низкого значения может " +"улучшить адгезию к столу." + +msgid "Enable accel_to_decel" +msgstr "Вкл. ограничение ускорения зигзагов" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "" +"Значение ограничение ускорения зигзагов (max_accel_to_decel) в Klipper будет " +"скорректировано автоматически.\n" +"\n" +"Параметр предназначен для ограничения влияния экстремальных переходов от " +"ускорения к замедлению, типичных для коротких зигзагообразных перемещений." + +# ??? Ускорение к замедлению, Ускорение торможения, Скорость торможения, Скорость торможения перед поворотом, Соотношение ускорения к замедлению +msgid "accel_to_decel" +msgstr "Ограничение ускорение зигзагов" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" +"Значение ограничение ускорения зигзагов (max_accel_to_decel) в Klipper будет " +"скорректировано на заданный процент ускорения." + +msgid "Jerk of outer walls" +msgstr "Рывок для внешних периметров." + +msgid "Jerk of inner walls" +msgstr "Рывок для внутренних периметров." + +msgid "Jerk for top surface" +msgstr "Рывок для верхней поверхности." + +msgid "Jerk for infill" +msgstr "Рывок для заполнения." + +msgid "Jerk for initial layer" +msgstr "Рывок для первого слоя." + +msgid "Jerk for travel" +msgstr "Рывок при перемещении." + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Ширина экструзии для первого слоя. Если задано в процентах, то значение " +"вычисляться относительно диаметра сопла." + +msgid "Initial layer height" +msgstr "Высота первого слоя" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Высота первого слоя. Незначительное увеличение толщины первого слоя может " +"улучшить сцепление со столом." + +msgid "Speed of initial layer except the solid infill part" +msgstr "Скорость печати первого слоя, кроме сплошного заполнения." + +msgid "Initial layer infill" +msgstr "Заполнение первого слоя" + +msgid "Speed of solid infill part of initial layer" +msgstr "Скорость печати сплошного заполнения на первом слое." + +msgid "Initial layer travel speed" +msgstr "Скорость перемещения на первом слое" + +msgid "Travel speed of initial layer" +msgstr "Скорость перемещения на первом слое." + +msgid "Number of slow layers" +msgstr "Количество медленных слоёв" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"Первые несколько слоёв печатаются медленнее, чем обычно. Скорость постепенно " +"линейно увеличивается в течение заданного количества слоёв." + +msgid "Initial layer nozzle temperature" +msgstr "Температура сопла на первом слое" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" +"Температура сопла для печати первого слоя при использовании данной " +"пластиковой нити." + +msgid "Full fan speed at layer" +msgstr "Полная скорость вентилятора на слое" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"Скорость вентилятора будет нарастать линейно от нуля на слое " +"\"close_fan_the_first_x_layers\" до максимума на слое \"full_fan_speed_layer" +"\". Значение \"full_fan_speed_layer\" будет игнорироваться, если оно меньше " +"значения \"close_fan_the_first_x_layers\", в этом случае вентилятор будет " +"работать на максимально допустимой скорости на слое " +"\"close_fan_the_first_x_layers\" + 1." + +msgid "layer" +msgstr "слой" + +msgid "Support interface fan speed" +msgstr "Скорость вентилятора на связующем слое" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"Скорость, применяемая ко всем связующим слоях, чтобы высокой скоростью " +"вентилятора ослабить сцепление между слоями.\n" +"Установите значение -1, чтобы запретить переопределять этот параметр.\n" +"Может быть отменено только командой disable_fan_first_layers." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Случайное дрожание сопла при печати внешнего периметра для создания эффекта " +"шероховатой поверхности. Эта настройка определяет положение нечёткой " +"оболочки." + +msgid "Contour" +msgstr "Внешний периметр" + +msgid "Contour and hole" +msgstr "Внешний периметр и отверстия" + +msgid "All walls" +msgstr "Все периметры" + +msgid "Fuzzy skin thickness" +msgstr "Толщина нечёткой оболочки" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"Величина амплитуды дрожания (т.е. в обои направления) измеряемая " +"перпендикулярно печатаемому периметру. Желательно, чтобы она была меньше " +"ширины внешнего периметра." + +msgid "Fuzzy skin point distance" +msgstr "Расстояние между точками нечёткой оболочки" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"Среднее расстояние между случайными точками, которые вносятся в каждый " +"сегмент линии периметра. Уменьшение расстояния между точками нечёткой " +"оболочки, увеличит число случайно смещённых точек на стенке периметра, т.е. " +"увеличит их плотность." + +msgid "Apply fuzzy skin to first layer" +msgstr "Нечёткая оболочки на первом слое" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "Применять ли нечёткую оболочку к первому слою." + +# Или пробелы оставить??? +msgid "Filter out tiny gaps" +msgstr "Игнорировать небольшие щели" + +msgid "Layers and Perimeters" +msgstr "Слои и периметры" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "Небольшие промежутки меньше указанного порога не будут заполняться." + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Скорость заполнения пробелов. Пробелы обычно имеют неравномерную ширину " +"линии и должен печататься медленнее." + +msgid "Precise Z height" +msgstr "Точная высота по Z" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Включите этот параметр, чтобы получить точную высоту модели по оси Z после " +"нарезки. Точная высота модели будет получена путем точной настройки высоты " +"последних нескольких слоёв." + +msgid "Arc fitting" +msgstr "Аппроксимация дугами" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" +"Включите, если хотите чтобы программа пыталась заменить последовательности " +"из коротких прямолинейных участков дугами (используя команды G2 и G3). " +"Функция должна поддерживаться прошивкой принтера. Значение допуска " +"траектории такое же как разрешение G-кода. \n" +"\n" +"Примечание: для устройств с прошивкой Klipper рекомендуется отключить эту " +"опцию. Klipper не получает преимуществ от этой опции, поскольку прошивка " +"снова разбивает дуги на линейные сегменты. Это приводит к снижению качества " +"поверхности, поскольку линейные сегменты сначала преобразуются в дуги с " +"помощью слайсера, а затем снова в линейные сегменты с помощью прошивки." + +msgid "Add line number" +msgstr "Добавить номер строки" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"При включении, в начало каждой строки G-кода, будет добавляться номер строки " +"(Nx)." + +msgid "Scan first layer" +msgstr "Проверка первого слоя" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"При включении, камера принтера будет проверять качество печати первого слоя." + +msgid "Nozzle type" +msgstr "Тип сопла" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"Материал сопла. Определяет абразивную стойкость сопла, а также то, каким " +"материалом можно печатать." + +msgid "Undefine" +msgstr "Не задано" + +msgid "Hardened steel" +msgstr "Закалённая сталь" + +msgid "Stainless steel" +msgstr "Нержавеющая сталь" + +msgid "Brass" +msgstr "Латунь" + +msgid "Nozzle HRC" +msgstr "Твердость сопла (HRC)" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"Твёрдость сопел. 0 - отключение контроля сопел на твёрдость во время нарезки." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Кинематика принтера" + +msgid "The physical arrangement and components of a printing device" +msgstr "Конструкция физического принтера" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "Наилучшее расположение модели" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Наилучшее расположение модели при авторасстановке в диапазоне [0,1] " +"относительно формы стола." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"Если в принтере имеет вспомогательный вентилятор для охлаждения моделей, " +"можете включить эту опцию. \n" +"G-код команда: M106 P2 S(0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Запуск вентилятора на указанное количество секунд раньше целевого времени " +"запуска (поддерживаются доли секунды). При этом предполагается бесконечное " +"ускорение для оценки этого времени, и учёт только перемещений G1 и G0 " +"(Аппроксимация дугами).\n" +"Это не приведёт к сдвигу команд вентилятора из пользовательских G-кодов (они " +"действуют как своего рода барьер).\n" +"Это не приведёт к сдвигу команд вентилятора в стартовом G-коде, если " +"активировано «только пользовательский стартовый G-код».\n" +"Установите 0 для отключения." + +msgid "Only overhangs" +msgstr "Только на свесах" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "Применять смещение времени только для охлаждения нависаний." + +msgid "Fan kick-start time" +msgstr "Продолжительность принудительного запуска вентилятора" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Время принудительного запуска (kick-start) вентилятора на максимальной " +"скорости, после чего скорость снижается до целевой. Это необходимо для " +"вентиляторов у которых низкое значение уровня ШИМ/мощности может быть " +"недостаточен для запуска вентилятора после остановки или для более быстрого " +"увеличения скорости его вращения.\n" +"Установите 0 для отключения." + +msgid "Time cost" +msgstr "Стоимость часа печати" + +msgid "The printer cost per hour" +msgstr "Стоимость часа работы принтера." + +msgid "money/h" +msgstr "цена/ч" + +msgid "Support control chamber temperature" +msgstr "Контроль температуры в термокамере" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Если принтер поддерживает контроль температуры внутри термокамеры принтера, " +"включите эту опцию.\n" +"G-код команда: M141 S(0-255)" + +msgid "Support air filtration" +msgstr "Вытяжной вентилятор" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Если в принтере имеется вытяжной вентилятор и вам требуется дополнительное " +"охлаждение внутренней области принтера, включите эту опцию. G-код команда: " +"M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "Тип G-кода" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Выбор типа G-кода совместимым с вашим принтером." + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "Гранульная модификация принтера" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" +"Включите, если для печати вместо пластиковых нитей используются пластиковые " +"гранулы." + +msgid "Support multi bed types" +msgstr "Поддержка нескольких типов столов" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "Включите, если хотите использовать несколько типов столов." + +# ?????? Название моделей +msgid "Label objects" +msgstr "Помечать объекты" + +# ?????? +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"Отвечает за присвоение уникальных меток или названий каждой модели или " +"элементу, что позволяет отменять печать любого из них по вашему выбору." +"Включите эту опцию, чтобы добавить комментарии в G-код с указанием того, к " +"какой модели он принадлежит, что полезно для плагина Octoprint CancelObject. " +"Эта настройка не совместима с настройкой «Одноэкструдерный " +"мультиматериальный принтер» и «Очистка в модель» / «Очистка в заполнение " +"модели»." + +msgid "Exclude objects" +msgstr "Исключить модели" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "" +"Включите эту опцию, чтобы добавить команду EXCLUDE OBJECT (исключения " +"моделей) в G-код для принтера с прошивкой Klipper." + +msgid "Verbose G-code" +msgstr "Подробный G-код" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Включите эту опцию, чтобы в каждой строке файла G-кода, присутствовал " +"комментарий с поясняющим текстом. При печати с SD-карты, скорость чтение " +"данных вашей прошивкой может снизится за счёт увеличения размера файла." + +msgid "Infill combination" +msgstr "Комбинированное заполнение" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Для сокращения времени печати есть возможность печатать заполнение не на " +"каждом слое, а на нескольких слоях сразу. \n" +"Периметры по-прежнему печатаются с исходной высотой слоя." + +msgid "Filament to print internal sparse infill." +msgstr "Пластиковая нить для печати заполнения." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Ширина экструзии для заполнения. Если задано в процентах, то значение " +"вычисляться относительно диаметра сопла." + +# Придется сократить «Перекрытие линий заполнения с линиями периметра» +msgid "Infill/Wall overlap" +msgstr "Перекрытие заполнения с периметром" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" +"Параметр указывает на сколько процентов заполнение будет перекрываться с " +"периметром для лучшего соединения друг с другом. Установите значение равным " +"~10-15%, чтобы свести к минимуму вероятность чрезмерной экструзии и " +"накопления материала приводящее к шероховатости поверхности." + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "Перекрытие заполнения с периметром на верхней /нижней поверхностях" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"Площадь верхнего сплошного заполнения немного увеличивается, чтобы перекрыть " +"периметр для лучшего сцепления и минимизировать появление мелких отверстий в " +"местах соединения верхнего заполнения с периметрами. Значение 25-30% " +"является хорошей отправной точкой, минимизирующей появление таких отверстий." + +msgid "Speed of internal sparse infill" +msgstr "Скорость заполнения" + +msgid "Interface shells" +msgstr "Связующие оболочки" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Принудительное создание сплошных оболочек между смежными материалами/" +"объёмами. Полезно для многоэкструдерной печати полупрозрачными материалами " +"или растворимой поддержки." + +msgid "Maximum width of a segmented region" +msgstr "Максимальная ширина сегментированной области" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Максимальная ширина сегментированной области. Установите 0 для отключения " +"этой функции." + +msgid "Interlocking depth of a segmented region" +msgstr "Глубина переплетения окрашенной области" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Глубина взаимосвязи сегментированной области. Установите 0 для отключения " +"этой функции." + +msgid "Use beam interlocking" +msgstr "Создать взаимосвязанную структуру" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" +"Создать взаимосвязанную структуру балок в местах соприкосновения моделей. " +"Это улучшит адгезию между моделями, особенно моделями из разных материалов." + +msgid "Interlocking beam width" +msgstr "Ширина взаимосвязанных балок" + +msgid "The width of the interlocking structure beams." +msgstr "Ширина балок взаимосвязанной конструкции." + +msgid "Interlocking direction" +msgstr "Направление взаимосвязанных балок" + +msgid "Orientation of interlock beams." +msgstr "Направление балок взаимосвязанной конструкции." + +msgid "Interlocking beam layers" +msgstr "Количество слоёв взаимосвязанных балок" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" +"Высота балок взаимосвязанной структуры, измеряемая в количестве слоев. Чем " +"меньше слоев, тем она будет прочнее, но более подвержена дефектам." + +msgid "Interlocking depth" +msgstr "Глубина взаимосвязанной структуры" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" +"Расстояние от границы между моделями для создания взаимосвязанной структуры, " +"измеряемое в ячейках. Слишком малое количество ячеек приведет к плохой " +"адгезии." + +msgid "Interlocking boundary avoidance" +msgstr "Избегание границ взаимосвязанной структуры" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" +"Расстояние от внешней стороны модели, где взаимосвязанные структуры не будут " +"создаваться, измеряемое в ячейках." + +msgid "Ironing Type" +msgstr "Тип разглаживания" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"Включение разглаживания верхних слоёв с помощью горячего сопла для получения " +"гладкой поверхности. После печати верхнего слоя сопло пройдётся по нему ещё " +"раз, но с значительно меньшей скоростью и потоком. Это нужно чтобы " +"разгладить поверхность, скрыв шаблон заполнения и другие дефекты " +"поверхности. Эта функция увеличивает время печати." + +msgid "No ironing" +msgstr "Без разглаживания" + +msgid "Top surfaces" +msgstr "Все верхние поверхности" + +msgid "Topmost surface" +msgstr "Самая верхняя поверхность" + +msgid "All solid layer" +msgstr "Все сплошные поверхности" + +msgid "Ironing Pattern" +msgstr "Шаблон разглаживания" + +msgid "The pattern that will be used when ironing" +msgstr "Шаблон по которому будет производиться разглаживание." + +msgid "Ironing flow" +msgstr "Поток" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"Количество материала, которое необходимо выдавить во время разглаживания " +"относительно потока при нормальной высоте слоя." + +msgid "Ironing line spacing" +msgstr "Расстояние между линиями разглаживания" + +msgid "The distance between the lines of ironing" +msgstr "Расстояние между линиями разглаживания." + +msgid "Ironing speed" +msgstr "Скорость разглаживания" + +msgid "Print speed of ironing lines" +msgstr "Скорость разглаживания" + +msgid "Ironing angle" +msgstr "Угол разглаживания" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"Выбор угла разглаживания. Отрицательное число отключает эту функцию и " +"использует метод по умолчанию." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"Команды в G-коде, которые выполняются каждый раз после смены слоя, то есть " +"после поднятия оси Z." + +msgid "Supports silent mode" +msgstr "Поддержка тихого режима" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Поддержка тихого режима, в котором принтер использует более низкие ускорения " +"печати для уменьшения уровня шума. Прошивка принтера должна поддерживать " +"данную возможность." + +msgid "Emit limits to G-code" +msgstr "Отправлять в G-код" + +msgid "Machine limits" +msgstr "Ограничения принтера" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"Если включено, ограничения принтера будут передаваться в файл G-кода.\n" +"Если в качестве типа G-кода выбран Klipper опция будет игнорироваться." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Команды в G-коде, которые выполняются при ручной постановке паузы печати. " +"Пользователь может вставить её в окне предпросмотра нарезки." + +# используется для пользовательского шаблона +msgid "This G-code will be used as a custom code" +msgstr "" +"Команды в G-коде, которые выполняются при вставке его в окне предпросмотра " +"нарезки (ПКМ по полосе выбора слоя)." + +msgid "Small area flow compensation (beta)" +msgstr "Компенсация потока небольших областей (beta)" + +msgid "Enable flow compensation for small infill areas" +msgstr "Включение компенсации потока для небольших областей заполнения." + +msgid "Flow Compensation Model" +msgstr "Модель компенсации потока" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"Модель представлена в виде разделенных запятыми пар значений, длины " +"экструзии и поправочного коэффициента потока, по одному на строку в " +"следующем формате: \"1.234,5.678\"." + +msgid "Maximum speed X" +msgstr "Максимальная скорость перемещения по X" + +msgid "Maximum speed Y" +msgstr "Максимальная скорость перемещения по Y" + +msgid "Maximum speed Z" +msgstr "Максимальная скорость перемещения по Z" + +msgid "Maximum speed E" +msgstr "Максимальная скорость подачи у экструдера" + +msgid "Maximum X speed" +msgstr "Максимальная скорость перемещения по X" + +msgid "Maximum Y speed" +msgstr "Максимальная скорость перемещения по Y" + +msgid "Maximum Z speed" +msgstr "Максимальная скорость перемещения по Z" + +msgid "Maximum E speed" +msgstr "Максимальная скорость подачи у экструдера" + +msgid "Maximum acceleration X" +msgstr "Максимальное ускорение по X" + +msgid "Maximum acceleration Y" +msgstr "Максимальное ускорение по Y" + +msgid "Maximum acceleration Z" +msgstr "Максимальное ускорение по Z" + +msgid "Maximum acceleration E" +msgstr "Максимальное ускорение подачи у экструдера" + +msgid "Maximum acceleration of the X axis" +msgstr "Максимальное ускорение по оси X." + +msgid "Maximum acceleration of the Y axis" +msgstr "Максимальное ускорение по оси Y." + +msgid "Maximum acceleration of the Z axis" +msgstr "Максимальное ускорение по оси Z." + +msgid "Maximum acceleration of the E axis" +msgstr "Максимальное ускорение подачи у экструдера." + +msgid "Maximum jerk X" +msgstr "Максимальный рывок по X" + +msgid "Maximum jerk Y" +msgstr "Максимальный рывок по Y" + +msgid "Maximum jerk Z" +msgstr "Максимальный рывок по Z" + +msgid "Maximum jerk E" +msgstr "Максимальный рывок у экструдера" + +msgid "Maximum jerk of the X axis" +msgstr "Максимальный рывок по оси X." + +msgid "Maximum jerk of the Y axis" +msgstr "Максимальный рывок по оси Y." + +msgid "Maximum jerk of the Z axis" +msgstr "Максимальный рывок по оси Z." + +msgid "Maximum jerk of the E axis" +msgstr "Максимальный рывок у экструдера." + +msgid "Minimum speed for extruding" +msgstr "Минимальная скорость перемещения при печати" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Минимальная скорость перемещения при печати (M205 S)" + +msgid "Minimum travel speed" +msgstr "Минимальная скорость холостых перемещений" + +msgid "Minimum travel speed (M205 T)" +msgstr "Минимальная скорость перемещения без печати (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Максимальное ускорение при печати" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Максимальное ускорение при печати (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Максимальное ускорение отката" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Максимальное ускорение отката (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Максимальное ускорение холостых перемещений" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" +"Максимальное ускорение при перемещении без печати (M204 T), применяемое " +"только для Marlin 2." + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"Скорость вентилятора охлаждения моделей может быть увеличена, если включено " +"автоматическое охлаждение. Это максимальное ограничение скорости вентилятора " +"для охлаждения моделей." + +msgid "Max" +msgstr "Максимальная" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"Это наибольшая высота печатаемого слоя для этого экструдера, которая " +"используется для ограничения функции «Переменная высота слоёв»." + +# ????? +msgid "Extrusion rate smoothing" +msgstr "Сглаживание скорости экструзии" + +# ????? проверить Pressure equalizer +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Этот параметр сглаживает резкие изменения скорости экструзии, которые " +"происходят, когда принтер переходит от печати с большим расходом (высокая " +"скорость/большая ширина) к печати с меньшим расходом (меньшая скорость/" +"меньшая ширина) и наоборот.\n" +"\n" +"Параметр задаёт максимальную скорость, с которой объёмный расход " +"экструдируемого материала может изменяться с течением времени. Более высокие " +"значения означают, что допускаются более высокие изменения скорости " +"экструзии, что приводит к более быстрому переключению скоростей.\n" +"\n" +"Значение 0 отключает эту функцию. \n" +"\n" +"Для высокоскоростных принтеров с прямым приводом (например, Bambu lab или " +"Voron) обычно не требуется использование данного значения. Однако в " +"некоторых случаях, когда скорость печати сильно различается, это может " +"принести некоторую дополнительную пользу. Например, когда происходят резкие " +"замедления из-за нависаний. В этих случаях рекомендуется использовать " +"высокое значение, составляющее около 300-350 мм³/с², так как это " +"обеспечивает достаточное сглаживание, помогающее прогнозированию давления " +"достичь более плавного перехода потока.\n" +"\n" +"Для более медленных принтеров, не использующих прогнозирование давления " +"(pressure advance), это значение должно быть значительно ниже. Значение " +"10-15 мм³/с² является хорошей отправной точкой для экструдеров с прямым " +"приводом и 5-10 мм³/с² для боуден экструдеров.\n" +"\n" +"В Prusa Slicer эта функция известна как «Сглаживание расхода» (Pressure " +"equalizer).\n" +"\n" +"Примечание: этот параметр отключает аппроксимацию дугами." + +msgid "mm³/s²" +msgstr "мм³/с²" + +msgid "Smoothing segment length" +msgstr "Длина сглаживающего сегмента" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Меньшее значение приводит к более плавному изменению скорости экструзии. " +"Однако это приводит к значительному увеличению размера G-код файла и " +"увеличению количества инструкций для обработки принтером. \n" +"\n" +"Значение по умолчанию, равное 3, хорошо подходит для большинства случаев. " +"Если принтер печатает с мини-фризами, увеличьте это значение, чтобы " +"уменьшить количество выполняемых изменений.\n" +"\n" +"Допустимые значения: 1–5." + +msgid "Minimum speed for part cooling fan" +msgstr "Минимальная скорость вентилятора обдува модели." + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Скорость вращения вспомогательного вентилятора для охлаждения моделей. Он " +"всегда будет работать с этой скоростью, за исключением первых нескольких " +"слоёв, которые обычно настроены на работу без охлаждения.\n" +"Пожалуйста, включите вспомогательный вентилятор для охлаждения моделей " +"(auxiliary_fan) в настройках принтера, чтобы использовать эту функцию. \n" +"G-код команда: M106 P2 S(0-255)." + +msgid "Min" +msgstr "Минимальная" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"Это наименьшая высота печатаемого слоя для данного экструдера и в то же " +"время нижний предел для функции «Переменная высота слоёв»." + +msgid "Min print speed" +msgstr "Минимальная скорость печати" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"Минимальная скорость печати, до которой принтер замедлится, чтобы попытаться " +"сохранить минимальное время слоя, указанное выше, если включена опция " +"«Замедлять печать для лучшего охлаждения слоёв»." + +msgid "Nozzle diameter" +msgstr "Диаметр сопла" + +msgid "Diameter of nozzle" +msgstr "Диаметр сопла" + +msgid "Configuration notes" +msgstr "Примечание конфигурации" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Здесь вы можете написать свои заметки для текущего профиля. Этот текст будет " +"добавлен к комментариям в заголовок G-кода." + +msgid "Host Type" +msgstr "Тип хоста" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca может загружать файл G-кода на хост принтера. Это поле должно " +"содержать тип хоста." + +msgid "Nozzle volume" +msgstr "Объём сопла" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Объём сопла между резцом прутка и кончиком сопла." + +msgid "Cooling tube position" +msgstr "Позиция охлаждающей трубки" + +# ????? до кончика сопла может быть? +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "" +"Расстояние между центральной точкой охлаждающей трубки и кончиком экструдера." + +msgid "Cooling tube length" +msgstr "Длина охлаждающей трубки" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Длина трубки охлаждения для ограничения перемещения при охлаждающих " +"движениях." + +msgid "High extruder current on filament swap" +msgstr "Повышение тока экструдера при замене прутка" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Это может быть полезно для увеличения тока двигателя экструдера во время " +"замены прутка, чтобы быстро увеличить скорость подачи и преодолеть " +"сопротивление при загрузке прутка с плохой формой кончика." + +# ??? Положение прутка при парковке +msgid "Filament parking position" +msgstr "Положение парковки прутка" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Расстояние от кончика экструдера до точки, где размещается пруток при " +"выгрузке. Расстояние должно соответствовать значению в прошивке принтера." + +msgid "Extra loading distance" +msgstr "Дополнительная длина загрузки" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Если установлено 0, то расстояние, которое проходит пруток при перемещении " +"из положения парковки во время загрузки, точно такое же, как и при выгрузке. " +"При положительном значении, она загружается дальше; при отрицательном, ход " +"загрузки короче (по сравнению с выгрузкой)." + +msgid "Start end points" +msgstr "Начальные и конечные точки" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "Начальная и конечная точки от зоны обрезки до мусорного лотка." + +msgid "Reduce infill retraction" +msgstr "Уменьшать отката при заполнении" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Отключает откат, когда перемещения полностью совершаются в области " +"заполнения (и, таким образом, любые подтёки скорее всего будут не заметны). " +"Это поможет снизить количество откатов при печати сложной модели и " +"сэкономить время печати, но увеличит время нарезки и генерации G-кода." + +msgid "Filename format" +msgstr "Формат имени файла" + +msgid "User can self-define the project file name when export" +msgstr "Пользователь может сам задать имя файла проекта при экспорте." + +msgid "Make overhangs printable" +msgstr "Делать нависания пригодными для печати" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "Изменение геометрии модели для печати нависающих части без поддержки." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Делать нависания пригодными для печати под максимальным углом" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Максимальный угол нависания, получаемый после изменения геометрии крутых " +"нависаний. При 90°не происходит изменения формы модели. При 0° же, все " +"нависания заменяются материалом конической геометрии." + +msgid "Make overhangs printable - Hole area" +msgstr "Делать нависания отверстий пригодными для печати" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Максимальная площадь отверстия в основании модели до его заполнения " +"материалом конической геометрии. При 0 все отверстия в основании модели " +"будут заполнены." + +msgid "mm²" +msgstr "мм²" + +msgid "Detect overhang wall" +msgstr "Определять нависающие периметры" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Определяет процент нависания относительно ширины линии и использует разную " +"скорость печати. Для 100%%-го свеса используется скорость печати мостов." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Ширина экструзии внутренних периметров. Если задано в процентах, то значение " +"вычисляться относительно диаметра сопла." + +msgid "Speed of inner wall" +msgstr "Скорость печати внутренних периметров." + +msgid "Number of walls of every layer" +msgstr "Количество периметров на каждом слое модели." + +msgid "Alternate extra wall" +msgstr "Чередующаяся дополнительная стенка" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"Печать дополнительного периметра через каждый слой. Таким образом, линии " +"заполнения заключаются между этими дополнительными стенками, что приводит к " +"повышению прочности печати.\n" +"\n" +"При включении этой опции необходимо отключить опцию «Обеспечивать верт. " +"толщину оболочки».\n" +"\n" +"Использование шаблона заполнения «Молния» вместе с этой опцией не " +"рекомендуется, поскольку количество заполнения, к которому можно прикрепить " +"дополнительные периметры, ограничено." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Если вы хотите обработать выходной G-код с помощью пользовательских " +"скриптов, просто перечислите здесь абсолютные пути к ним. Разделяйте скрипты " +"точкой с запятой. Скриптам будет передан абсолютный путь к файлу G-кода в " +"качестве первого аргумента, и они смогут получить доступ к настройкам " +"конфигурации Snapmaker Orca, читая переменные окружения." + +msgid "Printer notes" +msgstr "Примечания к принтеру" + +msgid "You can put your notes regarding the printer here." +msgstr "Здесь вы можете написать свои заметки о текущем принтере." + +msgid "Raft contact Z distance" +msgstr "Зазор между подложкой и моделью" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"Вертикальное расстояние между подложкой и моделью. Значение игнорируется при " +"выборе растворимого материала." + +msgid "Raft expansion" +msgstr "Расширение подложки" + +msgid "Expand all raft layers in XY plane" +msgstr "Расширение всех слоёв подложки в плоскости XY." + +msgid "Initial layer density" +msgstr "Плотность первого слоя" + +msgid "Density of the first raft or support layer" +msgstr "" +"Плотность первого слоя поддержки или первого слоя подложки, если она " +"включена." + +msgid "Initial layer expansion" +msgstr "Расширение первого слоя" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Расширение первого слоя подложки или поддержки в плоскости XY для улучшения " +"адгезии с материалами склонными к отлипанию и закручиванию." + +msgid "Raft layers" +msgstr "Слоёв в подложке" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"Параметр устанавливает высоту подложки в слоях, тем самым поднимая модель на " +"заданное количество слоёв от стола. Используйте эту функцию, чтобы избежать " +"деформации при печати ABS пластиком." + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"Разрешение G-кода. Максимальное отклонение экспортируемых в G-код путей до и " +"после упрощения. Для нарезки и предпросмотра G-кода с очень высоким " +"разрешением требуется большой объём оперативной памяти. Также при печати " +"принтер может подвисать, не имея возможности своевременно обрабатывать такой " +"G-код. Увеличение значения разрешения G-кода снижает нагрузку на электронику " +"принтера. Но слишком высокие значения приводят к видимым артефактам, типа " +"эффекта низкополигональной модели." + +msgid "Travel distance threshold" +msgstr "Порог перемещения для отката" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Откат будет срабатывать только в том случае, если расстояние перемещения " +"превысит этот порог." + +msgid "Retract amount before wipe" +msgstr "Величина отката перед очисткой" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"Длина быстрого отката перед очисткой, выраженная в процентах от общей длины " +"отката." + +msgid "Retract when change layer" +msgstr "Откат при смене слоя" + +msgid "Force a retraction when changes layer" +msgstr "Эта опция включает принудительный откат при переходе со слоя на слой." + +msgid "Retraction Length" +msgstr "Длина отката" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Некоторое количество материала в экструдере откатывается назад, чтобы " +"избежать его течи при длительном перемещении. 0 - отключение отката." + +msgid "Long retraction when cut(experimental)" +msgstr "Длинное втягивания перед отрезанием прутка" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Экспериментальная функция. Втягивание и обрезка пластиковой нити на большем " +"расстоянии во время её замены для минимизации очистки. Хотя это значительно " +"уменьшает величину очистки, это может повысить риск засорения сопла или " +"вызвать другие проблемы при печати." + +msgid "Retraction distance when cut" +msgstr "Длина втягивания перед отрезанием прутка" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Экспериментальная функция. Длина втягивания перед отрезанием пластиковой " +"нити при её смене." + +msgid "Z hop when retract" +msgstr "Подъём оси Z при откате" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Здесь задаётся на сколько миллиметров будет каждый раз приподниматься ось Z, " +"когда срабатывает откат. Это предотвращает задевание соплом печатаемой " +"модели при перемещении. Использование спирального типа подъёма оси Z может " +"предотвратить образование паутины." + +msgid "Z hop lower boundary" +msgstr "Приподнимать ось Z только ниже" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Если указать положительное значение, ось Z будет подниматься только ниже " +"(до) заданной здесь высоты (высота считается от стола). Таким образом вы " +"можете запретить подъём оси Z выше установленной высоты." + +msgid "Z hop upper boundary" +msgstr "Приподнимать ось Z только выше" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Если указать положительное значение, ось Z будет подниматься только выше " +"(после) заданной здесь высоты (высота считается от стола). Таким образом вы " +"можете отключить подъём оси Z при печати на первых слоях (в начале печати)." + +msgid "Z hop type" +msgstr "Тип подъёма оси Z" + +msgid "Slope" +msgstr "Наклонный" + +msgid "Spiral" +msgstr "Спиральный" + +msgid "Traveling angle" +msgstr "Угол подъёма" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" +"Угол для наклонного и спирального подъёма оси Z. При 90° получаем «обычный» " +"подъём." + +msgid "Only lift Z above" +msgstr "Приподнимать ось Z только выше" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Если указать положительное значение, ось Z будет подниматься только выше " +"(после) заданной здесь высоты (высота считается от стола). Таким образом вы " +"можете отключить подъём оси Z при печати первых слоёв." + +msgid "Only lift Z below" +msgstr "Приподнимать ось Z только ниже" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Если указать положительное значение, ось Z будет подниматься только ниже " +"(до) заданной здесь высоты (высота считается от стола). Таким образом вы " +"можете запретить подъём оси Z выше установленной высоты." + +msgid "On surfaces" +msgstr "На поверхностях" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Принудительное поднятие оси Z. На этот параметр влияют указанные выше " +"параметры (Приподнимать ось Z только выше/ниже)." + +msgid "All Surfaces" +msgstr "Все верхние поверхности" + +msgid "Top Only" +msgstr "Только на верхней" + +msgid "Bottom Only" +msgstr "Только на нижней" + +msgid "Top and Bottom" +msgstr "На верхней и нижней" + +msgid "Extra length on restart" +msgstr "Доп. длина подачи перед возобновлением печати" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"После того как экструдер совершил откат и переместился в другое место " +"печати, происходит обратная подача того же количества материала + заданное " +"тут значение. Для увеличения длины выдавливания ставится положительное " +"значение (например 0.5 мм), для уменьшения отрицательное. Этот параметр " +"редко нуждается в правке." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Компенсация длины выдавливаемого пластика перед возобновлением печати после " +"смены сопла." + +msgid "Retraction Speed" +msgstr "Скорость извлечения при откате" + +msgid "Speed of retractions" +msgstr "Скорость извлечения материала при откате." + +msgid "Deretraction Speed" +msgstr "Скорость заправки при откате" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Скорость возврата материала при откате. Если оставить 0, будет " +"использоваться та же скорость что и при извлечении." + +msgid "Use firmware retraction" +msgstr "Исп. откат из прошивки" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"Эта экспериментальная опция использует команды G10 и G11, чтобы сама " +"прошивка обрабатывала откаты. Поддерживается только в последних версиях " +"Marlin." + +msgid "Show auto-calibration marks" +msgstr "Отображать на столе линии автокалибровки" + +msgid "Disable set remaining print time" +msgstr "Откл. генерацию оставшегося времени печати" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" +"Отключение генерации команды M73 - вывода оставшегося времени печати в " +"конечный G-код." + +msgid "Seam position" +msgstr "Позиция шва" + +msgid "The start position to print each part of outer wall" +msgstr "Начальная позиция для печати каждой части внешнего периметра." + +msgid "Nearest" +msgstr "Ближайшая" + +msgid "Aligned" +msgstr "Выровненная" + +msgid "Back" +msgstr "Сзади" + +msgid "Random" +msgstr "Случайно" + +msgid "Staggered inner seams" +msgstr "Смещение внутренних швов" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Этот параметр заставляет внутренние швы смещаться назад в зависимости от их " +"глубины, образуя зигзагообразный рисунок. Таким образом местоположение швов " +"разных внутренних периметров не будет совпадать, тем самым делая деталь " +"прочнее. Это также может помочь улучшить водонепроницаемость модели." + +msgid "Seam gap" +msgstr "Зазор шва" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Чтобы уменьшить видимость шва при печати замкнутого контура, контур будет " +"укорачиваться на заданную величину.\n" +"Это величина может быть указана в миллиметрах или в процентах от текущего " +"диаметра сопла. Значение по умолчанию - 10%." + +msgid "Scarf joint seam (beta)" +msgstr "Клиновидный шов" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Использование клиновидного шва для минимизации его видимости и повышения " +"прочности." + +msgid "Conditional scarf joint" +msgstr "Условие для клиновидного шва" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Использовать клиновидный шов только на гладких периметрах, где традиционные " +"швы не могут быть эффективно скрыты." + +msgid "Conditional angle threshold" +msgstr "Пороговый угол для клиновидного шва" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"Этот параметр задаёт пороговое значение угла для применения клиновидного " +"шва.\n" +"Если максимальный угол в контуре периметра превышает это значение (что " +"указывает на отсутствие острых углов), будет использован клиновидный шов. " +"Значение по умолчанию - 155°." + +msgid "Conditional overhang threshold" +msgstr "Пороговая величина нависания" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"Этот параметр задаёт пороговое значение нависания для применения " +"клиновидного шва. Если неподдерживаемая часть периметра меньше этого " +"порогового значения, то будут применён клиновидный шов. Пороговое значение " +"по умолчанию установлено на 40% от ширины внешней периметра. Из соображений " +"производительности оценивается степень нависания." + +msgid "Scarf joint speed" +msgstr "Скорость клиновидного шва" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"Этот параметр задает скорость печати клиновидного шва. Рекомендуется " +"печатать его на низкой скорости (менее 100 мм/с). Также рекомендуется " +"включить функцию «Сглаживание скорости экструзии«, если заданная скорость " +"значительно отличается от скорости внешних или внутренних периметров. Если " +"заданная здесь скорость выше скорости внешних или внутренних периметров, " +"принтер по умолчанию будет использовать более медленную из двух скоростей. " +"Если скорость указана в процентах, то она рассчитывается на основе скорости " +"внешнего или внутреннего периметра. По умолчанию - 100%." + +msgid "Scarf joint flow ratio" +msgstr "Поток клиновидного шва" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "Поток материала для клиновидного шва." + +msgid "Scarf start height" +msgstr "Начальная высота клиновидного шва" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Начальная высота клиновидного шва.\n" +"Значение может быть задано в миллиметрах или в процентах от высоты текущего " +"слоя. Значение по умолчанию - 0." + +msgid "Scarf around entire wall" +msgstr "Клиновидный шов по всей стене" + +msgid "The scarf extends to the entire length of the wall." +msgstr "Клиновидный шов простирается на всю высоту стены." + +msgid "Scarf length" +msgstr "Длина клиновидного шва" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Длина клиновидного шва. Установка этого параметра на ноль фактически " +"отключает шарф." + +msgid "Scarf steps" +msgstr "Шагов клиновидного шва" + +msgid "Minimum number of segments of each scarf." +msgstr "Минимальное количество сегментов каждого клиновидного шва." + +msgid "Scarf joint for inner walls" +msgstr "Клиновидный шов для внутренних периметров" + +msgid "Use scarf joint for inner walls as well." +msgstr "Использовать клиновидный шов и для внутренних периметров." + +msgid "Role base wipe speed" +msgstr "Скорость очистки по типу экструзии" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"Скорость очистки будет определяться скоростью текущего типа экструзии, т.е " +"если операция очистки выполняется сразу после экструзии внешнего периметра, " +"то для очистки используется скорость экструзии внешнего периметра." + +msgid "Wipe on loops" +msgstr "Очистка в периметры" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Чтобы минимизировать видимость шва при экструзии по замкнутому контуру, " +"перед выходом экструдера из контура выполняется небольшое движение внутрь." + +msgid "Wipe before external loop" +msgstr "Очистка перед печатью внешнего периметра" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"Чтобы минимизировать возможную переэкструзию в начале внешнего периметра при " +"порядке печати «Внешний/Внутренний» или «Внутренний/Внешний/Внутренний», " +"выдавливание выполняется немного внутрь от точки начала внешнего периметра. " +"Таким образом, возможная избыточная экструзия не будет видна на внешней " +"поверхности.\n" +"\n" +"Это полезно при порядке печати периметров «Внешний/Внутренний» или " +"«Внутренний/Внешний/Внутренний», так как в этих режимах внешний периметр " +"чаще всего печатается сразу после подачи." + +msgid "Wipe speed" +msgstr "Скорость очистки" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"Скорость очистки определяется текущей настройкой. Если задано в процентах, " +"то она вычисляться относительно скорости перемещения. 80% - значение по " +"умолчанию." + +msgid "Skirt distance" +msgstr "Расстояние до юбки" + +msgid "Distance from skirt to brim or object" +msgstr "Расстояние между юбкой и каймой, или моделью." + +msgid "Skirt height" +msgstr "Слоёв юбки" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Количество слоёв юбки. Обычно только один слой." + +msgid "Draft shield" +msgstr "Защитный кожух" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"Защитный кожух полезен для защиты материалов типа ABS, ASA от деформации и " +"отрыва от стола из-за внешнего воздушного потока. Обычно защитный кожух " +"необходим только для принтеров без камеры.\n" +"\n" +"Опции:\n" +"Включено - высота юбки равна высоте самой высокой модели.\n" +"Ограничено - высота юбки задается параметром «Слоёв юбки».\n" +"\n" +"Примечание: при включённом защитном кожухе, юбка будет печататься на " +"расстоянии от модели, которое задаётся параметром «Расстояние до юбки». Если " +"активны кайма, она может пересекаться с юбкой. Чтобы избежать этого, " +"увеличьте значение «Расстояние до юбки».\n" + +msgid "Limited" +msgstr "Ограничено" + +msgid "Enabled" +msgstr "Включено" + +msgid "Skirt loops" +msgstr "Петель юбки" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "Количество линий юбки вокруг модели. 0 - отключение юбки." + +msgid "Skirt speed" +msgstr "Скорость печати юбки" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "Скорость печати юбки (мм/с). 0 - скорость экструзии слоя по умолчанию." + +msgid "Skirt minimum extrusion length" +msgstr "Мин. длина экструзии юбки" + +# ??? Конечное число петель юбки не учитывается при расстановке или проверке расстояния между моделями, поэтому если их недостаточно, то увеличьте их количество. +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"Минимальная длина экструзии в мм при печати юбки. 0 - функция отключена.\n" +"\n" +"Использование ненулевого значения полезно, если принтер настроен на печать " +"без стартовой линии очистки сопла." + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"Скорость печати в экспортированном G-коде будет замедлена, если расчётное " +"время печати слоя меньше заданного здесь значения, для обеспечения лучшего " +"охлаждения этих слоёв." + +msgid "Minimum sparse infill threshold" +msgstr "Мин. порог разреженного заполнения" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"Область с разреженным заполнением, размер которого меньше этого порогового " +"значения, заменяется сплошным заполнением." + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Ширина экструзии для внутреннего сплошного заполнения. Если задано в " +"процентах, то значение вычисляться относительно диаметра сопла." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"Скорость печати внутреннего сплошного заполнения, за исключением верхней и " +"нижней поверхностей." + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Печать пустотелых и тонкостенных моделей по спирали. Модель печатается в " +"одну стенку без верхней поверхности, заполнения и поддержки. При этом сопло " +"при печати движется непрерывно по спирали вверх, что создаёт ровное и " +"эстетически привлекательное изделие без шва." + +msgid "Smooth Spiral" +msgstr "Сглаживать спиральные контуры" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Опция сглаживает перемещение по осям X и Y, в результате чего шов " +"отсутствует даже в направлении XY на невертикальных периметрах." + +msgid "Max XY Smoothing" +msgstr "Макс. сглаживание по XY" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Максимальное расстояние перемещения точек по XY для достижения плавной " +"спирали. Если задано в процентах, то значение вычисляться относительно " +"диаметра сопла." + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Если выбран плавный или обычный режим записи, то при каждой печати будет " +"создаваться ускоренное видео печати. После печати каждого слоя встроенная " +"камера делает снимок и по её завершении все эти снимки объединяются в единое " +"ускоренное видео. Если включён плавный режим, то после печати каждого слоя " +"головка перемещается к лотку для удаления излишков, а уже затем делается " +"снимок. Очистка сопла на черновой башне обязательна, т.к. при плавном режиме " +"возможно вытекание материалы из сопла когда делается снимок." + +msgid "Traditional" +msgstr "Обычный" + +msgid "Temperature variation" +msgstr "Колебания температуры" + +msgid "Start G-code" +msgstr "Стартовый G-код" + +msgid "Start G-code when start the whole printing" +msgstr "Команды в G-коде, которые выполняются в самом начале печати." + +msgid "Start G-code when start the printing of this filament" +msgstr "" +"Команды в G-коде, которые выполняются при запуске печати с этой пластиковой " +"нитью." + +msgid "Single Extruder Multi Material" +msgstr "Одноэкструдерный ММ принтер" + +msgid "Use single nozzle to print multi filament" +msgstr "" +"Использование одной экструзионной головы для печати несколькими видами/" +"цветами пластика." + +msgid "Manual Filament Change" +msgstr "Ручная смена прутка" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Включите этот параметр, чтобы пропустить пользовательский G-код смены " +"пластиковой нити с самого начала печати. Команда смены инструмента будет " +"пропускаться на протяжении всей печати. Полезно при мультиматериальной " +"печати при ручной замене пластиковой нити, где для этого используются " +"команды M600/PAUSE." + +msgid "Purge in prime tower" +msgstr "Очистка в черновую башню" + +msgid "Purge remaining filament into prime tower" +msgstr "Очистка сопла от остатков материала в черновую башню" + +msgid "Enable filament ramming" +msgstr "Включить рэмминг прутка" + +msgid "No sparse layers (beta)" +msgstr "Без разреженных слоёв (beta)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Если включено, черновая башня не будет печататься на слоях где не происходит " +"смена материала/инструмента. На слоях, где происходит смена материала, " +"экструдер будет опускаться вниз до верхней части черновой башни, чтобы " +"напечатать её. Это экономит материал и практически во всех случаях сокращает " +"время печати. Рекомендуется помещать черновую башню в задний правый угол " +"печатного стола, а модель в противоположный угол. Функция находится в бета " +"тестировании и в настоящее время программа не проверяет столкновение " +"экструдера с печатаемой моделью при его опускании вниз до черновой башни. " +"Поэтому пользователь сам несет ответственность за правильную настройку всех " +"соответствующих параметров." + +msgid "Prime all printing extruders" +msgstr "Подготовка всех печатающих экструдеров" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Если этот параметр включён, все печатающие экструдеры в начале печати будут " +"подготавливаться на переднем крае стола." + +msgid "Slice gap closing radius" +msgstr "Радиус закрытия зазоров полигональной сетки" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Часто в импортируемых в программу моделях, встречаются небольшие зазоры " +"между полигонами. Если зазор окажется меньше двукратного значения этого " +"параметра, то он будет автоматически закрыт перед нарезкой. Это операция " +"может уменьшить окончательное разрешение печати (детализацию модели), " +"поэтому рекомендуется выставлять это значение достаточно низким." + +msgid "Slicing Mode" +msgstr "Режим нарезки" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Режим нарезки «Чётный-нечётный» применяется для незамкнутых пустотелых " +"моделей с тонкими внутренними ребрами усиления, таких как модели самолетов с " +"ресурса 3DLabPrint.\n" +"\n" +"Режим нарезки «Закрытие отверстий» применяется для закрытия всех " +"вертикальных отверстий в модели. Чаще всего используется для создания мастер-" +"моделей под литьё." + +msgid "Regular" +msgstr "Обычный" + +msgid "Even-odd" +msgstr "Чётный-нечётный" + +msgid "Close holes" +msgstr "Закрытие отверстий" + +msgid "Z offset" +msgstr "Смещение координат оси Z" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Это значение будет прибавлено ко всем координатам оси Z в выходном G-код " +"файле, тем самым смещая всю печатаемую деталь выше (если значение " +"положительное, например 0.3) или ниже (если значение отрицательное, например " +"-0.3) относительно стола 3D принтера. Используется для компенсации слишком " +"малого или слишком большого расстояния от сопла до стола на первом слое, вне " +"зависимости от причины почему оно такое большое или маленькое." + +msgid "Enable support" +msgstr "Включить поддержку" + +msgid "Enable support generation." +msgstr "Включить генерацию поддержки." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"Тип поддержки «Обычная (авто)» и «Древовидная (авто)» используются для " +"автоматического создания поддержки. Если выбран тип поддержки «Обычная " +"(вручную)» или «Древовидная (вручную)», генерируется только принудительная " +"поддержка." + +msgid "normal(auto)" +msgstr "Обычная (авто)" + +msgid "tree(auto)" +msgstr "Древовидная (авто)" + +msgid "normal(manual)" +msgstr "Обычная (вручную)" + +msgid "tree(manual)" +msgstr "Древовидная (вручную)" + +msgid "Support/object xy distance" +msgstr "Зазор между моделью и поддержкой по XY" + +msgid "XY separation between an object and its support" +msgstr "Зазор между моделью и поддержкой по осям XY." + +msgid "Pattern angle" +msgstr "Угол шаблона поддержки" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Используйте эту настройку для поворота шаблона поддержки в горизонтальной " +"плоскости." + +msgid "On build plate only" +msgstr "Поддержка только от стола" + +msgid "Don't create support on model surface, only on build plate" +msgstr "Создавать поддержку только от стола." + +msgid "Support critical regions only" +msgstr "Поддержка только критических областей" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Создание поддержек только для критических областей, включая острые концы, " +"консоли (горизонтально выступающие элементы) и т.д." + +msgid "Remove small overhangs" +msgstr "Игнорировать небольшие нависания" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "" +"Не печатать поддержку под небольшими нависаниями, которые, как вам казалось, " +"нуждаются в них." + +msgid "Top Z distance" +msgstr "Зазор поддержки сверху" + +msgid "The z gap between the top support interface and object" +msgstr "" +"Вертикальное расстояние между связующим слоем поддержки сверху и моделью." + +msgid "Bottom Z distance" +msgstr "Зазор поддержки снизу" + +msgid "The z gap between the bottom support interface and object" +msgstr "" +"Вертикальное расстояние между связующим слоем поддержки снизу и моделью." + +msgid "Support/raft base" +msgstr "Базовая поддержка/подложка" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Пластиковая нить для печати базовой поддержки и подложки. Значение «По " +"умолчанию» означает, что для поддержки используется текущая пластиковая нить." + +msgid "Avoid interface filament for base" +msgstr "Избегать исп. связующего прутка для тела поддержки" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Избегать использования прутка связующего слоя поддержки для тела поддержки." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Ширина экструзии для поддержки. Если задано в процентах, то значение " +"вычисляться относительно диаметра сопла." + +msgid "Interface use loop pattern" +msgstr "Связующий слой петлями" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Печатать контактный слой связующего слоя поддержки петлями. По умолчанию " +"отключено." + +msgid "Support/raft interface" +msgstr "Связующий слой поддержки/подложки" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Пластиковая нить для печати связующего слоя поддержки. Значение «По " +"умолчанию» означает, что для связующего слоя поддержки используется текущая " +"пластиковая нить." + +msgid "Top interface layers" +msgstr "Связующих слоёв сверху" + +msgid "Number of top interface layers" +msgstr "Количество связующих слоёв сверху." + +msgid "Bottom interface layers" +msgstr "Связующих слоёв снизу" + +msgid "Number of bottom interface layers" +msgstr "Количество связующих слоёв снизу." + +msgid "Same as top" +msgstr "Как и сверху" + +msgid "Top interface spacing" +msgstr "Расстояние между линиями связующего слоя сверху" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "" +"Расстояние между линиями связующего слоя сверху. Установите 0, чтобы " +"получить сплошной слой." + +msgid "Bottom interface spacing" +msgstr "Расстояние между линиями связующего слоя снизу" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Расстояние между линиями связующего слоя снизу. Установите 0, чтобы получить " +"сплошной слой." + +msgid "Speed of support interface" +msgstr "Скорость печати связующего слоя поддержки." + +msgid "Base pattern" +msgstr "Шаблон поддержки" + +msgid "Line pattern of support" +msgstr "Шаблон печати поддержки." + +msgid "Rectilinear grid" +msgstr "Прямолинейная сетка" + +msgid "Hollow" +msgstr "Полость" + +msgid "Interface pattern" +msgstr "Шаблон связующего слоя" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Шаблон, по которому будет происходить печать связующего слоя поддержки. При " +"выборе по умолчанию, шаблон для нерастворимой связующей поддержки - " +"прямолинейный, для растворимой - концентрический." + +msgid "Rectilinear Interlaced" +msgstr "Прямолинейный (чередование направлений)" + +msgid "Base pattern spacing" +msgstr "Плотность поддержки" + +msgid "Spacing between support lines" +msgstr "Расстояние между линиями поддержки." + +msgid "Normal Support expansion" +msgstr "Горизонтальное расширение поддержки" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "" +"Горизонтальное расширение (+) или сужение (-) базовой поддержки в плоскости " +"XY." + +msgid "Speed of support" +msgstr "Скорость печати поддержки." + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"Стиль и форма создаваемой поддержки.\n" +"\n" +"Стиль «Сетка» создаёт более устойчивые опоры (по умолчанию). Стиль " +"«Аккуратный» экономит материал и уменьшает образование дефектов на моделях.\n" +"\n" +"Для древовидной поддержки, при стройном и органическом стиле происходит " +"более агрессивное объединение ветвей и экономия материала (по умолчанию " +"органический). В то время как гибридный стиль создаёт структуру, схожую с " +"обычную поддержкой при больших плоских нависаниях." + +msgid "Snug" +msgstr "Аккуратный" + +msgid "Tree Slim" +msgstr "Стройный (древ. поддержка)" + +msgid "Tree Strong" +msgstr "Крепкий (древ. поддержка)" + +msgid "Tree Hybrid" +msgstr "Гибридный (древ. поддержка)" + +msgid "Organic" +msgstr "Органический" + +msgid "Independent support layer height" +msgstr "Независимая высота слоя поддержки" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Слои поддержки будут иметь высоту слоя, отличную от высоты слоя модели. Это " +"необходимо для настройки зазора между моделью и поддержкой для экономии " +"времени печати. Опция неактивна, когда включена черновая башня." + +msgid "Threshold angle" +msgstr "Пороговый угол поддержки" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "" +"Для нависаний, угол наклона которых ниже заданного порогового значения, " +"будут использоваться поддержки." + +msgid "Tree support branch angle" +msgstr "Угол нависания ветвей древовидной поддержки" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Этот параметр определяет максимальный угол нависания ветвей древовидной " +"поддержки. При увеличении угла, ветви печатаются более горизонтально, что " +"позволяет им достигать большего охвата. При указании меньшего угла, " +"поддержка будет более вертикальной и устойчивой." + +msgid "Preferred Branch Angle" +msgstr "Предпочтительный угол ответвления" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"Предпочтительный угол ответвления ветвей, когда им не нужно избегать модель. " +"При указании меньшего угла поддержка будет более вертикальной и устойчивой. " +"Используйте больший угол, чтобы ветки сливались быстрее." + +msgid "Tree support branch distance" +msgstr "Расстояние между ветвями древовидной поддержки" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"Этот параметр определяет, насколько далеко должны друг от друга " +"располагаться ветви при касании модели." + +msgid "Branch Density" +msgstr "Плотность ветвей" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"Регулирует плотность создания ветвей в месте контакта с моделью. Большее " +"значение приводит к улучшению качества печати нависаний, но такие поддержки " +"сложнее удалять, поэтому рекомендуется вместо высокого значения плотности " +"ветвей включать связующие слои поддержки." + +msgid "Adaptive layer height" +msgstr "Переменная высота слоёв" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"Включение автоматического расчёта высоты слоя древовидной поддержки, кроме " +"первого слоя. " + +msgid "Auto brim width" +msgstr "Автоширина каймы" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"Включение автоматического расчёта ширины каймы для древовидной поддержки." + +msgid "Tree support brim width" +msgstr "Ширина каймы древовидной поддержки" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "Расстояние от древовидной поддержки до внешней линии каймы." + +msgid "Tip Diameter" +msgstr "Диаметр кончика ветки" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Диаметр кончика ветки органической поддержки." + +msgid "Tree support branch diameter" +msgstr "Диаметр ветвей древовидной поддержки" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "" +"Этот параметр определяет начальный диаметр ветвей, т.е. их диаметр в месте " +"контакта с моделью." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Угол изменения диаметра ветвей" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"Угол изменения диаметра ветвей по мере их постепенного утолщения к " +"основанию. Если значение угла равно 0, ветви будут иметь одинаковую толщину " +"по всей своей длине. Небольшой угол может повысить устойчивость органической " +"поддержки." + +msgid "Branch Diameter with double walls" +msgstr "Диаметр ветвей с двойными стенками" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"Ветви, толщина которых больше указанного диаметра, будут напечатаны с " +"двойными стенками для прочности. Установите 0, если двойные стенки у ветвей " +"не нужны." + +msgid "Support wall loops" +msgstr "Периметров поддержки" + +msgid "This setting specify the count of walls around support" +msgstr "Этот параметр определяет количество периметров у печатаемой поддержки." + +msgid "Tree support with infill" +msgstr "Древовидная поддержка с заполнением" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Этот параметр определяет, следует ли заполнять большие полости внутри " +"древовидной поддержки." + +msgid "Activate temperature control" +msgstr "Вкл. контроль температуры" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Для контроля температуры в камере принтера включите эту опцию. Команда M191 " +"будет добавлена перед стартовый G-кодом принтера (machine_start_gcode).\n" +"G-код команда: M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "Температура в термокамере" + +# ??? +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Более высокая температура в камере может помочь уменьшить или даже исключить " +"коробление материала. Так же это улучшает межслойное соединения у " +"высокотемпературных материалов, таких как ABS, ASA, PC, PA и т.д. (в то же " +"время фильтрация воздуха при печати ABS и ASA сделает её хуже). Для " +"низкотемпературных материалов, таких как PLA, PETG, TPU, PVA и т. д., " +"фактическая температура в камере не должна быть слишком высокой, чтобы " +"избежать засорения сопла, поэтому настоятельно рекомендуется установить " +"температуру в камере равной 0°C." + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Температура сопла при печати для слоёв после первого." + +msgid "Detect thin wall" +msgstr "Обнаружение тонких стенок" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Обнаружение тонких стенок (стенки одинарной ширины), которые можно " +"напечатать только в один проход экструдера. Возможно, будет напечатано не " +"очень хорошо, так как это не замкнутый контур." + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Команды в G-коде, которые выполняются для ручной смены пластиковой нити " +"(цвета\\типа), включая команду T для запуска смены инструмента." + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "" +"Команды в G-коде, которые выполняются при смене роли экструзии (т.е. " +"например, от печати периметра к заполнению)." + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Ширина экструзии для верхней поверхности. Если задано в процентах, то " +"значение вычисляться относительно диаметра сопла." + +msgid "Speed of top surface infill which is solid" +msgstr "Скорость печати верхних сплошных поверхностей." + +msgid "Top shell layers" +msgstr "Сплошных слоёв сверху" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Количество сплошных слоёв при печати верхней поверхности модели. Если " +"толщина, рассчитанная с помощью этого значения, меньше толщины оболочки " +"сверху, количество сплошных слоёв сверху будет увеличено." + +msgid "Top solid layers" +msgstr "Сплошных слоёв сверху" + +msgid "Top shell thickness" +msgstr "Толщина оболочки сверху" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"Минимальная толщина оболочки сверху в мм. Если толщина оболочки, " +"рассчитанная по количеству сплошных слоёв сверху, меньше этого значения, " +"количество сплошных слоёв сверху будет автоматически увеличено при нарезке, " +"для удовлетворения минимальной толщины оболочки. Это позволяет избежать " +"слишком тонкой оболочки при небольшой высоте слоя. 0 означает, что этот " +"параметр отключён, а толщина оболочки сверху полностью задаётся количеством " +"сплошных слоёв снизу." + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Скорость перемещения экструдера при позиционировании без печати." + +msgid "Wipe while retracting" +msgstr "Очистка сопла при откате" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Если включено, то во время отката сопло продолжит движение вдоль периметра " +"модели, чтобы очистить его от вытекшего материала. Это может снизить " +"появление дефектов (каплей, пупырышек) при печати нового участка после " +"перемещения." + +# ??????? Расстояние очистки внешней стенки +msgid "Wipe Distance" +msgstr "Расстояние очистки" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"Задаёт расстояние перемещения, добавленное после печати последнего участка " +"пути при совершении отката.\n" +"\n" +"В зависимости от продолжительности операция очистки, заданной скорости и " +"величины отката экструдера/прутка, может потребоваться движение отката, " +"чтобы втянуть оставшийся материал. \n" +"\n" +"Установка значения в приведенном ниже параметре «Величина отката перед " +"очисткой» приведёт к выполнению дополнительного отката перед очисткой, в " +"противном случае это будет выполнено после." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"Этот параметр включает печать черновой башни - специальной структуры, " +"которая используется для очистки сопла от остатков материала и стабилизации " +"давления внутри сопла при смене экструдера, чтобы избежать дефектов на " +"поверхности печатаемой модели. В основном она используется для многоцветной " +"и мультиматериальной печати в многоинструментальных принтерах." + +msgid "Purging volumes" +msgstr "Объём очистки" + +msgid "Flush multiplier" +msgstr "Множитель очистки" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"Реальные объёмы очистки равны множителю очистки, умноженному на объёмы " +"очистки указанные в таблице." + +msgid "Prime volume" +msgstr "Объём сброса на черновой башни" + +msgid "The volume of material to prime extruder on tower." +msgstr "" +"Объём выдавленного материала для заправки экструдера на черновой башне." + +msgid "Width of prime tower" +msgstr "" +"Размер черновой башни по оси X. Размер по оси Y будет автоматически вычислен " +"исходя из необходимого объёма очистки и ширины башни. Таким образом, " +"увеличивая ширину башни вы уменьшаете её длину и наоборот." + +msgid "Wipe tower rotation angle" +msgstr "Угол поворота черновой башни" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Угол поворота черновой башни относительно оси X." + +msgid "Stabilization cone apex angle" +msgstr "Угол вершины стабилизирующего конуса" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Регулировка угла «стабилизирующего конуса», который используется для " +"предотвращения опрокидывания черновой башни. Больший угол означает более " +"широкое основание конуса." + +msgid "Wipe tower purge lines spacing" +msgstr "Расстояние между линиями очистки черновой башни" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Расстояние между линиями очистки на черновой башне." + +msgid "Maximum wipe tower print speed" +msgstr "Макс. скорость печати черновой башни" + +# ?????? +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"Максимальная скорость печати при очистке в черновую башню и печати " +"разреженных слоёв черновой башни. \n" +"\n" +"Увеличение этой скорости может повлиять на устойчивость башни, а также " +"увеличить силу столкновения сопла с каплями, которые могут образовываться на " +"черновой башне.\n" +"\n" +"Прежде чем увеличивать этот параметр выше установленного по умолчанию " +"значения 90 мм/с, убедитесь, что ваш принтер способен работать на повышенных " +"скоростях и что образование соплей при смене инструмента хорошо " +"контролируется." + +msgid "Wipe tower extruder" +msgstr "Экструдер черновой башни" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"Номер экструдера, которым печатаются периметры черновой башни. Установите 0, " +"чтобы использовать тот, который доступен (предпочтительнее нерастворимый)." + +msgid "Purging volumes - load/unload volumes" +msgstr "Объём очистки - Объём загрузки/выгрузки" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"Этот параметр задаёт объём материала, который будет выдавлен на черновую " +"башню для прочистки сопла при смене экструдеров/инструментов. Эти значения " +"используются для упрощения создания полноты объёмов очистки указанной ниже." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Очистка сопла после смены материала будет производиться в заполнение модели. " +"Это снижает количество отходов и сокращает время печати. Эта функция " +"работает только при включенной черновой башне." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"Очистка сопла после смены материала будет производиться в поддержку модели. " +"Это снижает количество отходов и сокращает время печати. Эта функция " +"работает только при включенной черновой башне." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Эта модель будет использоваться для очистки сопла после смены материала для " +"его экономии и сокращения времени печати. В результате цвета будут " +"смешиваться. Это не будет действовать, если не будет включена черновая башня." + +msgid "Maximal bridging distance" +msgstr "Максимальное длина моста" + +# ??? Максимальное расстояние между опорами на разряженных участках заполнения. +msgid "Maximal distance between supports on sparse infill sections." +msgstr "" +"Максимальное расстояние моста черновой башни на её разряженных участках." + +msgid "X-Y hole compensation" +msgstr "Компенсация размера отверстий по XY" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Отверстия модели будут увеличены или уменьшены в плоскости XY на заданное " +"значение. Положительное значение увеличивает отверстия, отрицательное - " +"уменьшает. Эта функция используется для небольшой корректировки размера, " +"когда возникают проблемы со сборкой." + +msgid "X-Y contour compensation" +msgstr "Компенсация размера модели по XY" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"Параметр отвечает за смещение всех полигонов модели в плоскости XY на " +"заданное значение. Положительное значение увеличивает модель, отрицательное " +"- уменьшает. Эта функция используется для небольшой корректировки размера, " +"когда возникают проблемы со сборкой." + +msgid "Convert holes to polyholes" +msgstr "Многогранные отверстия" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Поиск цилиндрических отверстий в двух или более слоях и преобразование их " +"геометрии в многогранники. Для расчёта многогранного отверстия используется " +"размер сопла и наибольший диаметр найденного отверстия.\n" +"Подробнее на http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "Предел обнаружения" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Максимальное отклонение точки от расчётного радиуса окружности.\n" +"Поскольку цилиндры часто экспортируются в виде треугольников разного " +"размера, точки могут находиться не на окружности. Эта параметр позволяет " +"немного расширить область обнаружения.\n" +"В мм или в % от радиуса." + +msgid "Polyhole twist" +msgstr "Скручивание многогранника" + +msgid "Rotate the polyhole every layer." +msgstr "Вращение многогранного отверстия на каждом слое." + +msgid "G-code thumbnails" +msgstr "Эскизы G-кода" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Размеры изображения, которые будут сохранены в файлах .sl1 / .sl1s в " +"следующем формате: \"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "Формат эскизов G-кода" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Формат эскизов G-кода: PNG для наилучшего качества, JPG для наименьшего " +"размера, QOI для прошивки с малым объемом памяти." + +msgid "Use relative E distances" +msgstr "Относительные координаты экструдера" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"Относительная экструзия рекомендуется при использовании опции «Помечать " +"объекты». Некоторые экструдеры работают лучше при отключении этой опции " +"(абсолютный режим экструзии). Черновая башня совместима только с " +"относительной экструзии. Рекомендуется включить для большинства принтеров " +"(по умолчанию включено)." + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"Движок классического генератора периметров создаёт их с постоянной шириной " +"экструзии, а для очень тонких участков используется параметр «Заполнять " +"щели». Движок Arachne же создаёт периметры с переменной шириной экструзии, " +"что позволяет печатать без щелей, лучше пропечатывать мелкие элементы (при " +"условии, что у вас правильно откалиброван LA/PA)." + +msgid "Classic" +msgstr "Классический" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Длина перехода к периметру" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"При переходе между разным количеством периметров по мере того, как деталь " +"становится тоньше, выделяется определенное пространство для разделения или " +"соединения линий периметров. Выражается в процентах от диаметра сопла." + +msgid "Wall transitioning filter margin" +msgstr "Поле фильтра при переходе между периметрами" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Предотвращает переход туда и обратно между одним лишним периметром и одним " +"недостающим. Это поле расширяет диапазон значений ширины экструзии, который " +"определяется как [Минимальная ширина периметра - Поле, 2 * Минимальная " +"ширина периметра + Поле]. Расширение этого поля позволяет сократить " +"количество переходов, что в свою очередь позволяет сократить количество " +"запусков/остановок экструдирования и время перемещения. Однако большой " +"разброс значений ширины экструзии может привести к проблемам недо/" +"переэкструзии материала. Если задано в процентах, то расчёт производится " +"относительно диаметра сопла." + +msgid "Wall transitioning threshold angle" +msgstr "Пороговый угол перехода между периметрами" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Когда требуется создавать переходы между чётным и нечётным количеством " +"периметров. Клиновидная форма с углом, превышающим этот параметр, не будет " +"иметь переходов, и периметры не будут напечатаны в центре для заполнения " +"оставшегося пространства. Уменьшение значения этого параметра позволяет " +"сократить количество и длину этих центральных периметров, но при этом могут " +"остаться зазоры или произойти чрезмерное экструдирование." + +msgid "Wall distribution count" +msgstr "Счётчик распределений по периметрам" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"Количество периметров, отсчитываемое от центра, на которые необходимо " +"распространить изменения. Более низкое значение означает, что ширина внешних " +"периметров не изменяется." + +msgid "Minimum feature size" +msgstr "Минимальный размер элемента" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Минимальная толщина тонких элементов. Элементы модели, которые тоньше этого " +"значения, не будут напечатаны, в то время как элементы, толщина которых " +"превышает «Минимальный размер элемента», будут расширены до минимальной " +"ширины периметра. Выражается в процентах от диаметра сопла." + +msgid "Minimum wall length" +msgstr "Минимальная длина периметра" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"Отрегулируйте это значение, чтобы предотвратить печать коротких незамкнутых " +"периметров, что может увеличить время печати. Более высокие значения удаляют " +"большие и более длинные периметры.\n" +"\n" +"Примечание: нижние и верхние поверхности не будут затронуты этим значением, " +"чтобы избежать визуальных пробелов на наружной стороне модели. Настройте " +"параметр «Порог одного периметра» в расширенных настройках ниже, чтобы " +"настроить чувствительность определения верхней поверхности. «Порог одного " +"периметра» будет отображаться только в том случае, если этот параметр " +"установлен выше значения по умолчанию, равным 0,5 или если включён параметр " +"«Только один периметр на верхней поверхности».ы" + +msgid "First layer minimum wall width" +msgstr "Минимальная ширина периметра первого слоя" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"Минимальная ширина периметра, используемая для печати первого слоя. Значение " +"рекомендуется устанавливать равным диаметру сопла. Ожидается, что такая " +"регулировка повышает адгезию." + +msgid "Minimum wall width" +msgstr "Минимальная ширина периметра" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Ширина периметра, которая заменит тонкие элементы (в соответствии с " +"минимальным размера элемента) модели. Если минимальная ширина периметра " +"меньше толщины элемента, толщина периметра будет приведена к толщине самого " +"элемента. Если задано в процентах, то значение вычисляться относительно " +"диаметра сопла." + +msgid "Detect narrow internal solid infill" +msgstr "Обнаруживать узкую область сплошного заполнения" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Этот параметр автоматически определяет узкую внутреннюю область сплошного " +"заполнения. Если включено, для ускорения печати будет использоваться " +"концентрический шаблон. В противном случае по умолчанию используется " +"прямолинейный шаблон." + +msgid "invalid value " +msgstr "недопустимое значение " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Недопустимое значение при включенном режиме спиральной вазы: " + +msgid "too large line width " +msgstr "слишком большая ширина экструзии " + +msgid " not in range " +msgstr " вне диапазона " + +msgid "Minimum save" +msgstr "Минимальное сохранение" + +msgid "export 3mf with minimum size." +msgstr "экспорт 3mf файла с минимальным размером." + +msgid "No check" +msgstr "Без проверки" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"Не запускать никакие проверки валидности, такие как проверка на конфликт " +"путей в G-коде." + +msgid "Ensure on bed" +msgstr "Обеспечивать размещение на столе" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Поднимает модель над столом, когда она частично находится ниже его уровня. " +"По умолчанию отключено." + +msgid "Orient Options" +msgstr "Параметры ориентации" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "" +"Параметры ориентации: 0 - отключить, 1 - включить, другие - автоматически" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Угол поворота вокруг оси Z в градусах." + +msgid "Rotate around Y" +msgstr "Поворот вокруг оси Y" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Угол поворота вокруг оси Y в градусах." + +msgid "Data directory" +msgstr "Папка конфигурации пользователя" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Загрузка и сохранение настроек будет производиться в заданную папку. Это " +"полезно для сохранения различных профилей или конфигураций из сетевого " +"хранилища." + +msgid "Load custom gcode" +msgstr "Загрузить пользовательский G-код" + +msgid "Load custom gcode from json" +msgstr "Загрузить пользовательской G-код из json" + +msgid "Current z-hop" +msgstr "Подъём оси Z" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "" +"Содержит текущее значение вертикального подъём оси Z, заданное в начале " +"пользовательского G-кода." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Положение экструдера в начале пользовательского G-кода. Если " +"пользовательский G-код перемещает экструдер в другое место, то информация о " +"его новом положении должна записываться в данную переменную, чтобы " +"OrcaSlicer знал, откуда он перемещается, когда управление возвращается назад." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"Статус отката в начале пользовательского G-кода. Если пользовательский G-код " +"перемещает ось экструдера, то информация о статусе отката должна " +"записываться в данную переменную, чтобы программа корректно совершала " +"подачу, при возврате контроля над процессом печати." + +msgid "Extra deretraction" +msgstr "Доп. выдавливание" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "Запланированная дополнительная предзарядка экструдера после подачи." + +msgid "Current extruder" +msgstr "Текущий экструдер" + +msgid "Zero-based index of currently used extruder." +msgstr "Отсчитываемый от нуля номер используемого в данный момент экструдера." + +msgid "Current object index" +msgstr "Номер текущей модели" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Предназначено для последовательной печати. Отсчитываемый от нуля номер " +"текущей печатаемой модели." + +msgid "Has wipe tower" +msgstr "Имеется черновая башня" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Независимо от того, генерируется ли при печати черновая башня или нет." + +msgid "Initial extruder" +msgstr "Начальный экструдер" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Отсчитываемый от нуля номер первого экструдера, используемого при печати. То " +"же самой, что и initial_tool." + +msgid "Initial tool" +msgstr "Начальный инструмент" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Отсчитываемый от нуля номер первого экструдера, используемого при печати. То " +"же самой, что и initial_extruder." + +msgid "Is extruder used?" +msgstr "Используется ли экструдер?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" +"Вектор логического значения, указывающий, используется ли данный экструдер " +"при печати." + +msgid "Volume per extruder" +msgstr "Объём для каждого экструдера" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" +"Общий объём материала, выдавленного одним экструдером в процесса всей печати." + +# ??? Всего смен инструментов +msgid "Total toolchanges" +msgstr "Число смен инструментов" + +msgid "Number of toolchanges during the print." +msgstr "Число смен инструментов в процессе всей печати." + +msgid "Total volume" +msgstr "Общий объём материала" + +msgid "Total volume of filament used during the entire print." +msgstr "Общий объём материала, использованного в процессе всей печати." + +msgid "Weight per extruder" +msgstr "Вес для каждого экструдера" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" +"Вес материала, выдавленного одним экструдером в процессе всей печати. " +"Рассчитывается исходя из плотности материала указанной в настройках прутка." + +msgid "Total weight" +msgstr "Общий вес" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" +"Общий вес затраченного материала. Рассчитывается исходя из плотности " +"материала указанной в настройках прутка." + +msgid "Total layer count" +msgstr "Общее количество слоёв" + +msgid "Number of layers in the entire print." +msgstr "Количество слоёв всей печати." + +msgid "Number of objects" +msgstr "Количество моделей" + +msgid "Total number of objects in the print." +msgstr "Общее количество моделей при печати." + +msgid "Number of instances" +msgstr "Количество копий" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" +"Общее количество копий моделей в печати, суммированное по всем моделям." + +msgid "Scale per object" +msgstr "Масштаб для каждой модели" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"Содержит строку с информацией о том, какое масштабирование было применено к " +"отдельным моделям. Нумерация моделей начинается с нуля (первая модель имеет " +"номер 0).\n" +"Пример: 'x:100% y:50% z:100%'." + +msgid "Input filename without extension" +msgstr "Имя входного файла без расширения" + +msgid "Source filename of the first object, without extension." +msgstr "Имя исходного файла первой модели без расширения." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" +"Вектор состоит из двух элементов: координаты точки x и y. Значения заданы в " +"мм." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" +"Вектор состоит из двух элементов: ширина (x-размер) и высота (y-размер) " +"ограничивающего прямоугольника. Значения заданы в мм." + +msgid "First layer convex hull" +msgstr "Выпуклая оболочка первого слоя" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"Вектор точек выпуклой оболочки первого слоя. Каждый элемент вектора имеет " +"следующий формат: '[x, y]' (Координаты x и y - числа с плавающей запятой " +"измеряемые в мм)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "Нижний левый угол ограничивающего прямоугольника первого слоя" + +msgid "Top-right corner of first layer bounding box" +msgstr "Верхний правый угол ограничивающего прямоугольника первого слоя" + +msgid "Size of the first layer bounding box" +msgstr "Размер ограничивающего прямоугольника первого слоя" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "Нижний левый угол ограничивающего прямоугольника печатного стола" + +msgid "Top-right corner of print bed bounding box" +msgstr "Верхний правый угол ограничивающего прямоугольника печатного стола" + +msgid "Size of the print bed bounding box" +msgstr "Размер прямоугольной рамки, ограничивающей область печати" + +msgid "Timestamp" +msgstr "Временная метка" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "Строка, содержащая текущее время в формате yyyyMMdd-hhmmss." + +msgid "Day" +msgstr "День" + +msgid "Hour" +msgstr "Час" + +msgid "Minute" +msgstr "Минута" + +msgid "Print preset name" +msgstr "Имя профиля печати" + +msgid "Name of the print preset used for slicing." +msgstr "Имя профиля печати, используемого для нарезки." + +msgid "Filament preset name" +msgstr "Имя профиля прутка" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Имя профиля прутка, используемого для нарезки. Это переменная является " +"вектором, содержащим одно имя профиля для каждого экструдера." + +msgid "Printer preset name" +msgstr "Имя профиля принтера" + +msgid "Name of the printer preset used for slicing." +msgstr "Имя профиля принтера, используемого для нарезки." + +msgid "Physical printer name" +msgstr "Имя физического принтера" + +msgid "Name of the physical printer used for slicing." +msgstr "Имя физического принтера, используемого для нарезки." + +msgid "Layer number" +msgstr "Номер слоя" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" +"Номер текущего слоя отсчитываемый от единицы (т.е. первый слой имеет номер " +"1)." + +msgid "Layer z" +msgstr "Высота слоя над столом" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Высота текущего слоя над печатным столом, измеренная до верхней части слоя." + +msgid "Maximal layer z" +msgstr "Макс. высота слоя над столом" + +msgid "Height of the last layer above the print bed." +msgstr "Высота последнего слоя над печатным столом." + +msgid "Filament extruder ID" +msgstr "Номер текущего экструдера" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "Номер текущего экструдера (то же что и current_extruder.)" + +msgid "Error in zip archive" +msgstr "Ошибка с ZIP-архивом" + +msgid "Generating walls" +msgstr "Генерация периметров" + +msgid "Generating infill regions" +msgstr "Генерация областей заполнения" + +msgid "Generating infill toolpath" +msgstr "Генерация траектории заполнения" + +msgid "Detect overhangs for auto-lift" +msgstr "Обнаружение нависаний для автоподъёма" + +msgid "Generating support" +msgstr "Генерация поддержки" + +msgid "Checking support necessity" +msgstr "Проверка необходимости поддержки" + +msgid "floating regions" +msgstr "нависающие части" + +msgid "floating cantilever" +msgstr "нависающий горизонтальный выступ (консоль)" + +msgid "large overhangs" +msgstr "большая области нависания" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Похоже, что у модели %s имеются замечания - %s. \n" +"Переориентируйте её или включите генерацию поддержки." + +msgid "Optimizing toolpath" +msgstr "Оптимизация траектории инструмента" + +msgid "Slicing mesh" +msgstr "Нарезка сетки" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"Слоёв не обнаружено. Возможно, требуется починить STL файл(ы) или проверить " +"размер/толщину и повторить попытку.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"Коррекция горизонтальных размеров модели не будет действовать, поскольку для " +"этой модели была выполнена операция окрашивания.\n" +"Коррекция горизонтальных размеров модели не может использоваться в сочетании " +"с функцией раскрашивания." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Поддержка: генерация траектории инструмента на слое %d" + +msgid "Support: detect overhangs" +msgstr "Поддержка: обнаружение нависаний" + +msgid "Support: generate contact points" +msgstr "Поддержка: генерация точек контакта" + +msgid "Support: propagate branches" +msgstr "Поддержка: построение ветвей" + +msgid "Support: draw polygons" +msgstr "Поддержка: рисование полигонов" + +msgid "Support: generate toolpath" +msgstr "Поддержка: генерация траектории инструмента" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Поддержка: генерация полигонов на слое %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Поддержка: ремонт отверстий на слое %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Поддержка: построение ветвей на слое %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Неизвестный формат файла. Входной файл должен иметь расширение *.stl, *.obj, " +"*.amf(.xml)." + +msgid "Loading of a model file failed." +msgstr "Не удалось загрузить файл модели." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "Предоставленный файл не может быть прочитан, так как он пуст." + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Неизвестный формат файла. Входной файл должен иметь расширение *.3mf или *." +"zip.amf." + +msgid "Canceled" +msgstr "Отменено" + +msgid "load_obj: failed to parse" +msgstr "load_obj: ошибка обработки" + +msgid "load mtl in obj: failed to parse" +msgstr "Загрузка mtl в obj: не удалось обработать" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "Файл содержит многоугольники с более чем 4 вершинами." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "Файл содержит многоугольники с менее чем 2 вершинами." + +msgid "The file contains invalid vertex index." +msgstr "Файл содержит неверный количество вершин." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Этот OBJ файл не может быть прочитан, так как он пуст." + +msgid "Flow Rate Calibration" +msgstr "Калибровка скорости потока" + +# ????7 +msgid "Max Volumetric Speed Calibration" +msgstr "Калибровка макс. объёмного расхода" + +msgid "Manage Result" +msgstr "Управление результатами" + +msgid "Manual Calibration" +msgstr "Ручная калибровка" + +msgid "Result can be read by human eyes." +msgstr "Результат калибровки может быть визуально оценен человеческим глазом." + +msgid "Auto-Calibration" +msgstr "Автокалибровка" + +msgid "We would use Lidar to read the calibration result" +msgstr "Для считывания результата калибровки будет использоваться лидар." + +msgid "Prev" +msgstr "Назад" + +msgid "Recalibration" +msgstr "Перекалибровка" + +msgid "Calibrate" +msgstr "Калибровка" + +msgid "Finish" +msgstr "Завершить" + +msgid "How to use calibration result?" +msgstr "Как использовать результаты калибровки?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"Коэффициент калибровки динамики потока можно изменить в настройках материала." + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"Текущая версия прошивки принтера не поддерживает калибровку.\n" +"Обновите прошивку принтера." + +msgid "Calibration not supported" +msgstr "Калибровка не поддерживается" + +msgid "Error desc" +msgstr "Описание ошибки" + +msgid "Extra info" +msgstr "Доп. информация" + +msgid "Flow Dynamics" +msgstr "Динамика потока" + +msgid "Flow Rate" +msgstr "Скорость потока" + +msgid "Max Volumetric Speed" +msgstr "Максимальный объёмный расход" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Введите допустимое значение:\n" +"Начальное: >= %.1f\n" +"Конечное: <= %.1f\n" +"Конечное: > Начальное\n" +"Шаг: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "Имя не может быть пустым." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "Выбранный профиль %s не найден." + +msgid "The name cannot be the same as the system preset name." +msgstr "Имя не должно совпадать с именем системного профиля." + +msgid "The name is the same as another existing preset name" +msgstr "Имя совпадает с именем другого существующего профиля" + +msgid "create new preset failed." +msgstr "не удалось создать новый профиль." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Вы уверены, что хотите отменить текущую калибровку и вернуться на главную " +"страницу?" + +msgid "No Printer Connected!" +msgstr "Принтер не подключён!" + +msgid "Printer is not connected yet." +msgstr "Принтер ещё не подключен." + +msgid "Please select filament to calibrate." +msgstr "Пожалуйста, выберите пруток для калибровки." + +msgid "The input value size must be 3." +msgstr "Размер входного значения должен быть равен 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"Этот тип принтера может хранить для каждого сопла только 16 последних " +"результатов. Вы можете удалить существующие результаты, а затем запустить " +"калибровку. Или вы можете продолжить калибровку, но результаты калибровки не " +"будут сохранены. \n" +"Хотите продолжить калибровку?" + +msgid "Connecting to printer..." +msgstr "Подключение к принтеру..." + +msgid "The failed test result has been dropped." +msgstr "Результат неудачного теста был удалён." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Результат калибровки динамики потока был сохранён на принтере" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"Результат калибровки с таким именем уже с существует: %s. Вы уверены, что " +"хотите перезаписать прошлый результат?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"Этот тип принтера может хранить для каждого сопла только %d последних " +"результатов. Этот результат не будет сохранён." + +msgid "Internal Error" +msgstr "Внутренняя ошибка" + +msgid "Please select at least one filament for calibration" +msgstr "Выберите хотя бы один пруток для калибровки" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "Результат калибровки динамики потока был сохранён в профиль" + +# не длинно??? +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"Результат калибровки максимального объёмного расхода был сохранён в профиль" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "В каких случаях необходима калибровка динамики потока" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Мы добавили функцию автоматической калибровки для различных материалов, " +"которая полностью автоматизирована, а результат калибровки сохраняется в " +"принтере для дальнейшего использования. Калибровка требуется только в " +"следующих ограниченных случаях:\n" +"1. При использовании нового материала другого производителя/типа или при " +"отсыревании материала;\n" +"2. При износе сопла или его замене на новое;\n" +"3. При изменении в настройках материала максимального объёмного расхода или " +"температуры печати." + +msgid "About this calibration" +msgstr "О данном виде калибровки" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" +"Подробную информацию про калибровку динамики потока можно найти на нашем " +"вики-сайте.\n" +"\n" +"При обычных обстоятельствах калибровка не требуется. \n" +"Если при запуске печати одним цветом/материалом в меню запуска печати " +"отмечена опция «Калибровка динамики потока», то калибровка пластиковой нити " +"будет производится старым способом. \n" +"При запуске печати несколькими цветами/материалами, принтер будет " +"использовать параметр компенсации по умолчанию для материала при каждой его " +"смене, что в большинстве случаев позволяет получить хороший результат.\n" +"\n" +"Обратите внимание, что есть несколько случаев, когда результат калибровки " +"будет недостоверным, например, когда у печатной пластины плохая адгезия с " +"материалом. Улучшить адгезию можно, помыв печатную пластину или нанеся на " +"неё клей для 3D печати. Более подробную информацию можно найти на нашем вики-" +"сайте.\n" +"\n" +"По нашим тестам, результаты калибровки имеют погрешность примерно 10%, что " +"может приводить к разным результатам при каждой калибровке. Мы продолжаем " +"выяснять причину, чтобы улучшить ситуацию в новых обновлениях." + +msgid "When to use Flow Rate Calibration" +msgstr "В каких случаях необходима калибровка скорости потока" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"После проведения калибровки динамики потока всё ещё могут возникать " +"некоторые проблемы с экструзией, такие как:\n" +"1. Избыточная экструзия. Это приводит к образованию на модели капель или " +"сгустков, слои кажутся толще и неравномерными, чем ожидалось.\n" +"2. Недоэкструзия. Очень тонкие слои, слабая прочность заполнения или пробелы " +"на верхнем слое модели, даже при медленной печати.\n" +"3. Низкое качество поверхности. Поверхность деталей кажется шероховатой или " +"неровной.\n" +"4. Слабая конструкционная прочность. Напечатанное легко ломается или кажется " +"не таким прочным, как должно быть." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Кроме того, калибровка скорости потока крайне важна для вспенивающихся " +"материалов, таких как LW-PLA, используемых при печати деталей для " +"радиоуправляемых самолетов. Эти материалы сильно расширяются при нагревании, " +"а калибровка позволяет получить эталонную скорости потока." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"Калибровка скорости потока измеряет соотношение ожидаемого и фактического " +"объёмов экструзии. На принтерах Bambu Lab с официальными материалами, " +"стандартные настройки работают хорошо, так как они были предварительно " +"откалиброваны и тщательно настроены. Для обычного материала обычно не " +"требуется выполнять калибровку скорости потока, если только после выполнения " +"других калибровок вы всё ещё видите перечисленные дефекты. Более подробную " +"информацию можно найти на нашем вики-сайте." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Автоматическая калибровка скорости потока использует технологию микролидара " +"Bambu Lab, непосредственно измеряя калибровочные шаблоны. Однако имейте " +"ввиду, что эффективность и точность этого метода может быть снижена при " +"использовании определенных типов материалов. В частности, прозрачные или " +"полупрозрачные материалы, материалы с блестящими частицами или с " +"светоотражающим покрытием могут не подойти для данной калибровки и привести " +"к нежелательным результатам.\n" +"\n" +"\n" +"Результаты калибровки могут различаться от калибровки к калибровке или от " +"материала к материалу. Мы продолжаем улучшать точность и совместимость этой " +"калибровки путем обновления прошивки принтера.\n" +"\n" +"Внимание: калибровка скорости потока - это сложный процесс, к которому " +"следует прибегать только тем, кто полностью понимает её назначение и " +"последствия. Неправильное использование может привести к некачественной " +"печати или повреждению принтера. Пожалуйста, внимательно прочитайте и " +"поймите суть процесса, прежде чем приступать к его выполнению." + +# ????7 калибровка? Может определение? +msgid "When you need Max Volumetric Speed Calibration" +msgstr "В каких случаях необходима калибровка максимального объёмного расхода" + +msgid "Over-extrusion or under extrusion" +msgstr "Избыточная или недостаточная экструзия" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"Калибровка максимального объёмного расхода рекомендуется при печати с " +"использованием:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "" +"материалов со значительной термической усадкой/расширением, например..." + +msgid "materials with inaccurate filament diameter" +msgstr "материалов с неточным диаметром пластиковой нити" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "Мы нашли лучший коэффициент калибровки динамики потока" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Часть калибровки выполнена неудачно! Вы можете очистить печатную пластину и " +"повторить попытку. Результат неудачного теста будет удалён." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Мы рекомендуем добавить к названию материала, производителя, тип и даже " +"уровень влажности" + +msgid "Failed" +msgstr "Неудачно" + +msgid "Please enter the name you want to save to printer." +msgstr "Введите имя, который хотите сохранить на принтере." + +msgid "The name cannot exceed 40 characters." +msgstr "Максимальная длина имени 40 символов." + +# ??? +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Можно сохранить только один результат с одинаковым именем. Вы уверены, что " +"хотите перезаписать другие результаты?" + +msgid "Please find the best line on your plate" +msgstr "Пожалуйста, найдите лучшую линию на столе" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Пожалуйста, найдите угол с идеальной экструзией" + +msgid "Input Value" +msgstr "Входное значение" + +msgid "Save to Filament Preset" +msgstr "Сохранить в профиль прутка" + +msgid "Preset" +msgstr "Профиль" + +msgid "Record Factor" +msgstr "Запись коэффициента" + +msgid "We found the best flow ratio for you" +msgstr "Мы нашли для вас лучший коэффициент потока" + +msgid "Flow Ratio" +msgstr "Коэффициент потока" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Введите допустимое значение (0.0 < коэффициент потока < 2.0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Введите имя профили, который хотите сохранить." + +msgid "Calibration1" +msgstr "Калибровка 1" + +msgid "Calibration2" +msgstr "Калибровка 2" + +msgid "Please find the best object on your plate" +msgstr "Пожалуйста, найдите лучшую модель на своей столе" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Заполните значение над блоком с самой гладкой верхней поверхностью" + +msgid "Skip Calibration2" +msgstr "Пропустить калибровку 2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "коэффициент потока: %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Выберите блок с самой гладкой верхней поверхностью" + +msgid "Please choose a block with smoothest top surface." +msgstr "Выберите блок с самой гладкой верхней поверхностью." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "Введите допустимое значение (0 <= Макс. объёмный расход <= 60)" + +msgid "Calibration Type" +msgstr "Тип калибровки" + +msgid "Complete Calibration" +msgstr "Калибровка завершена" + +msgid "Fine Calibration based on flow ratio" +msgstr "Точная калибровка на основе коэффициента потока" + +msgid "Title" +msgstr "Заголовок" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Будет напечатана тестовая модель. Перед калибровкой очистите печатную " +"пластину \n" +"и установите её обратно на нагреваемый стол." + +msgid "Printing Parameters" +msgstr "Параметры печати" + +msgid "Plate Type" +msgstr "Типа печатной пластины" + +msgid "filament position" +msgstr "положение прутка" + +msgid "External Spool" +msgstr "Внешняя катушка" + +msgid "Filament For Calibration" +msgstr "Пруток для калибровки" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Советы по выбору материала для калибровки: \n" +"- Материалы, которые имеют близкие значения температуры нагреваемого стола\n" +"- Различные марки и семейства расходных материалов (Производитель = Bambu, " +"семейство = Basic - базовый, Matte - матовый)" + +msgid "Pattern" +msgstr "Шаблон" + +msgid "Method" +msgstr "Метод" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s не совместима с %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "Автоматическая калибровка динамики потока для TPU не поддерживается." + +msgid "Connecting to printer" +msgstr "Подключением к принтеру" + +msgid "From k Value" +msgstr "Начальный коэф. K" + +msgid "To k Value" +msgstr "Конечный коэф. K" + +msgid "Step value" +msgstr "Шаг" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "Диаметр сопла был синхронизирован с настройками принтера" + +msgid "From Volumetric Speed" +msgstr "От объёмной скорости" + +msgid "To Volumetric Speed" +msgstr "К объёмной скорости" + +msgid "Flow Dynamics Calibration Result" +msgstr "Результаты калибровки динамики потока" + +msgid "New" +msgstr "Новая" + +msgid "No History Result" +msgstr "Журнал результатов пуст" + +msgid "Success to get history result" +msgstr "История успешных результатов калибровки" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Обновление записей истории калибровки динамики потока" + +msgid "Action" +msgstr "Действие" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "" +"Этот тип принтера может хранить для каждого сопла только %d последних " +"результатов." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Редактировать калибровку динамики потока" + +msgid "New Flow Dynamic Calibration" +msgstr "Новая калибровка динамика потока" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "Выберите пластиковую нить." + +msgid "Network lookup" +msgstr "Поиск по сети" + +msgid "Address" +msgstr "Адрес" + +msgid "Hostname" +msgstr "Имя хоста" + +msgid "Service name" +msgstr "Имя службы" + +msgid "OctoPrint version" +msgstr "Версия OctoPrint" + +msgid "Searching for devices" +msgstr "Поиск устройств" + +msgid "Finished" +msgstr "Завершено" + +msgid "Multiple resolved IP addresses" +msgstr "Несколько разрешенных IP-адресов" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"Существует несколько IP-адресов, соответствующих имени хоста %1%.\n" +"Пожалуйста, выберите тот, который хотите использовать." + +msgid "PA Calibration" +msgstr "Калибровка PA" + +msgid "DDE" +msgstr "Директ" + +msgid "Bowden" +msgstr "Боуден" + +msgid "Extruder type" +msgstr "Тип экструдера" + +msgid "PA Tower" +msgstr "Башня" + +msgid "PA Line" +msgstr "Линии" + +msgid "PA Pattern" +msgstr "Шаблон" + +msgid "Start PA: " +msgstr "Начальный коэффициент PA: " + +msgid "End PA: " +msgstr "Конечный коэффициент PA: " + +msgid "PA step: " +msgstr "Шаг коэффициента PA: " + +msgid "Print numbers" +msgstr "Печатать значения коэффициентов" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Введите допустимые значения:\n" +"Начальный коэффициент PA: >= 0.0\n" +"Конечный коэффициент PA: > Start PA\n" +"Шаг коэффициента PA: >= 0.001)" + +msgid "Temperature calibration" +msgstr "Калибровка температуры" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "PCTG" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Тип прутка" + +msgid "Start temp: " +msgstr "Начальная температура: " + +msgid "End temp: " +msgstr "Конечная температура: " + +msgid "Temp step: " +msgstr "Шаг температуры: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Введите допустимые значения:\n" +"Начальная температура: <= 350\n" +"Конечная температура: >= 180\n" +"Начальная температура > Конечная температура + 5)" + +msgid "Max volumetric speed test" +msgstr "Тест макс. объёмного расхода" + +msgid "Start volumetric speed: " +msgstr "Начальный объёмный расход: " + +msgid "End volumetric speed: " +msgstr "Конечный объёмный расход: " + +msgid "step: " +msgstr "Шаг изменения: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Введите допустимое значение:\n" +"Начальное > 0\n" +"Шаг >= 0\n" +"Конечное > Начальное + Шаг" + +msgid "VFA test" +msgstr "Тест на вертикальные артефакты (VFA)" + +msgid "Start speed: " +msgstr "Начальная скорость: " + +msgid "End speed: " +msgstr "Конечная скорость: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Введите допустимое значение:\n" +"Начальное > 10\n" +"Шаг >= 0\n" +"Конечное > Начальное + Шаг" + +msgid "Start retraction length: " +msgstr "Начальная длина отката: " + +msgid "End retraction length: " +msgstr "Конечная длина отката: " + +msgid "mm/mm" +msgstr "мм/мм" + +msgid "Send G-Code to printer host" +msgstr "Отправить G-кода на хост принтера" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Загрузить на хост принтера со следующим именем:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "В качестве разделителя каталогов используйте косую черту ( / ). " + +msgid "Upload to storage" +msgstr "Загрузить в хранилище" + +msgid "Switch to Device tab after upload." +msgstr "После загрузки переключиться на вкладку «Принтер»." + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "Имя загружаемого файла не заканчивается на \"%s\". Хотите продолжить?" + +msgid "Upload" +msgstr "Загрузить" + +msgid "Print host upload queue" +msgstr "Очередь загрузки на хост печати" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Прогресс" + +msgid "Host" +msgstr "Хост" + +msgctxt "OfFile" +msgid "Size" +msgstr "Размер" + +msgid "Filename" +msgstr "Имя файла" + +msgid "Cancel selected" +msgstr "Отменить выбранное" + +msgid "Show error message" +msgstr "Показать сообщение об ошибке" + +msgid "Enqueued" +msgstr "Поставлено в очередь" + +msgid "Uploading" +msgstr "Отправка" + +msgid "Cancelling" +msgstr "Отмена" + +msgid "Error uploading to print host" +msgstr "Ошибка при отправке на хост печати" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Невозможно выполнить булевую операцию над выбранными элементами." + +msgid "Mesh Boolean" +msgstr "Булевы операции" + +msgid "Union" +msgstr "Объединение" + +msgid "Difference" +msgstr "Разность" + +msgid "Intersection" +msgstr "Пересечение" + +msgid "Source Volume" +msgstr "Исходный объём" + +msgid "Tool Volume" +msgstr "" + +msgid "Subtract from" +msgstr "Главный" + +msgid "Subtract with" +msgstr "Вычитаемый" + +msgid "selected" +msgstr "выбрано" + +msgid "Part 1" +msgstr "Элемент 1" + +msgid "Part 2" +msgstr "Элемент 2" + +msgid "Delete input" +msgstr "Удалить исходные" + +msgid "Network Test" +msgstr "Проверка сети" + +msgid "Start Test Multi-Thread" +msgstr "Запуск многопоточного теста" + +msgid "Start Test Single-Thread" +msgstr "Запуск однопоточного теста" + +msgid "Export Log" +msgstr "Журнал экспорта" + +msgid "Snapmaker Orca Version:" +msgstr "Версия Snapmaker Orca:" + +msgid "System Version:" +msgstr "Версия ОС:" + +msgid "DNS Server:" +msgstr "DNS-сервер:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "Тест доступности Snapmaker Orca(GitHub)" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "Тест доступности Snapmaker Orca(GitHub):" + +msgid "Test Bing.com" +msgstr "Тест доступности Bing.com" + +msgid "Test bing.com:" +msgstr "Тест доступности bing.com:" + +msgid "Log Info" +msgstr "Журнал сведений" + +msgid "Select filament preset" +msgstr "Выбор профиля прутка" + +msgid "Create Filament" +msgstr "Создание пластиковой нити" + +msgid "Create Based on Current Filament" +msgstr "Создать на основе профиля выбранного прутка" + +msgid "Copy Current Filament Preset " +msgstr "Скопировать текущий профиль прутка " + +msgid "Basic Information" +msgstr "Основная информация" + +msgid "Add Filament Preset under this filament" +msgstr "Добавление профиля прутка под текущий пруток" + +msgid "We could create the filament presets for your following printer:" +msgstr "Мы можем создать профили прутка для ваших следующих принтеров:" + +msgid "Select Vendor" +msgstr "Выбор производителя" + +msgid "Input Custom Vendor" +msgstr "Введите производителя" + +msgid "Can't find vendor I want" +msgstr "Производитель отсутствует в списке" + +msgid "Select Type" +msgstr "Тип прутка" + +msgid "Select Filament Preset" +msgstr "Выбор профиля прутка" + +msgid "Serial" +msgstr "Серия" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "например обычная, матовая, шёлковая, мраморная" + +msgid "Filament Preset" +msgstr "Профиль прутка" + +msgid "Create" +msgstr "Создать" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Не выбран производитель, пожалуйста, выберите его заново." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "Не задан производитель, пожалуйста, введите производителя." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" или \"Generic\" не могут быть заданы в качестве производителей для " +"пользовательский пластиковых нитей." + +msgid "Filament type is not selected, please reselect type." +msgstr "Не выбран тип прутка, пожалуйста, выберите его заново." + +msgid "Filament serial is not inputed, please input serial." +msgstr "Пожалуйста, введите серию прутка." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"В имени производителя или серии прутка могут присутствовать управляющие " +"символы. Пожалуйста, удалите их и введите повторно." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"В поле ввода производителя/серии пластиковой нити введены пробелы. \n" +"Пожалуйста, введите нормальное имя." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "" +"Имя производителя не может начинаться с числа. Пожалуйста, введите " +"нормальное имя." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "Выберите хотя бы один принтер или профиль." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"Пластиковая нить с таким именем %s уже существует. \n" +"Если продолжить создание, то созданный профиль будет отображаться с полным " +"именем. Хотите продолжить?" + +# ??? При создании некоторых существующих профилей произошла ошибка, а именно: +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Не удалось создать некоторые из следующих существующих профилей:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Хотите перезаписать его?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"Мы переименуем профиль в \"Производитель Тип Серия @выбранный принтер\".\n" +"Чтобы добавить профиль для других принтеров, перейдите к выбору принтера." + +msgid "Create Printer/Nozzle" +msgstr "Создать принтер/сопло" + +msgid "Create Printer" +msgstr "Создать принтер" + +msgid "Create Nozzle for Existing Printer" +msgstr "Создать сопло для выбранного принтера" + +msgid "Create from Template" +msgstr "Создать из шаблона" + +msgid "Create Based on Current Printer" +msgstr "Создать на основе профиля выбранного принтера" + +msgid "Import Preset" +msgstr "Импорт профиля" + +msgid "Create Type" +msgstr "Создать тип" + +msgid "The model is not found, place reselect vendor." +msgstr "Модель не найдена, выберите производителя." + +msgid "Select Model" +msgstr "Выбор модели" + +msgid "Select Printer" +msgstr "Выбор принтера" + +msgid "Input Custom Model" +msgstr "Введите название модели" + +msgid "Can't find my printer model" +msgstr "Мой принтер отсутствует в списке" + +msgid "Rectangle" +msgstr "Прямоугольник" + +msgid "Printable Space" +msgstr "Область печати" + +msgid "Hot Bed STL" +msgstr "Модель стола" + +msgid "Load stl" +msgstr "Загрузить stl" + +msgid "Hot Bed SVG" +msgstr "Текстура стола" + +msgid "Load svg" +msgstr "Загрузить svg" + +msgid "Max Print Height" +msgstr "Высота области печати" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "" +"Размер файла превышает %d МБ, пожалуйста, попробуйте импортировать его ещё " +"раз." + +msgid "Exception in obtaining file size, please import again." +msgstr "" +"Ошибка при получении размера файла, пожалуйста, попробуйте импортировать его " +"ещё раз." + +msgid "Preset path is not find, please reselect vendor." +msgstr "Путь к профилю не найден, пожалуйста, выберите другого производителя." + +msgid "The printer model was not found, please reselect." +msgstr "Модель принтера не найдена, пожалуйста, выберите заново." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "Диаметр сопла не задан, пожалуйста, выберите заново." + +msgid "The printer preset is not found, place reselect." +msgstr "Профиль принтера не найдена, выберите заново." + +msgid "Printer Preset" +msgstr "Профиль принтера" + +msgid "Filament Preset Template" +msgstr "Шаблон профиля прутка" + +msgid "Deselect All" +msgstr "Снять выбор со всего" + +msgid "Process Preset Template" +msgstr "Шаблон профиля процесса" + +msgid "Back Page 1" +msgstr "Вернуться на 1-ю страницу" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Вы не выбрали на базе какого профиля принтера хотите создать новый профиль " +"принтера. \n" +"Пожалуйста, выберите производителя и модель принтера." + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"В разделе «Область печати» на первой странице введено недопустимое значение. " +"Проверьте введение значение перед созданием." + +msgid "The custom printer or model is not inputed, place input." +msgstr "Пожалуйста, введите имя пользовательского принтера или модель." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"Профиль принтера с таким именем уже существует. Хотите перезаписать его?\n" +"\tДа: перезаписать профиль принтера. Профили прутка и процесса с теми же " +"именами будут созданы заново, а профили без имени будут зарезервированы.\n" +"\tОтмена: не создавать профиль и вернуться на экран создания." + +msgid "You need to select at least one filament preset." +msgstr "Необходимо выбрать хотя бы один профиль прутка." + +msgid "You need to select at least one process preset." +msgstr "Необходимо выбрать хотя бы один профиль процесса." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Не удалось создать профиль прутка. Причины: \n" + +msgid "Create process presets failed. As follows:\n" +msgstr "Не удалось создать профиль процесса. Причины: \n" + +# ??? выберите занова +msgid "Vendor is not find, please reselect." +msgstr "Производитель не найден, пожалуйста, выберите другого." + +msgid "Current vendor has no models, please reselect." +msgstr "" +"У текущего производителя отсутствуют модели принтеров, пожалуйста, выберите " +"заново." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "Вы не выбрали или не ввели производителя и модель принтера." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"В имени производителя или модели пользовательского принтера могут " +"присутствовать управляющие символы. Пожалуйста, удалите их и введите " +"повторно." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"В поле ввода производителя/модели принтера введены пробелы. \n" +"Пожалуйста, введите нормальное имя." + +msgid "Please check bed printable shape and origin input." +msgstr "Пожалуйста, проверьте правильность введённых значений области печати." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "Для замены сопла сначала выберите принтер." + +msgid "Create Printer Successful" +msgstr "Профиль принтера успешно создан" + +msgid "Create Filament Successful" +msgstr "Профиль прутка успешно создан" + +msgid "Printer Created" +msgstr "Профиль принтера создан" + +msgid "Please go to printer settings to edit your presets" +msgstr "Для редактирования настроек профиля перейдите в настройки принтера!" + +msgid "Filament Created" +msgstr "Профиль прутка создан" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"При необходимости перейдите в настройку прутка для редактирования настроек " +"профиля.\n" +"Обратите внимание, что на качество печати существенно влияют температура " +"сопла, температура \n" +"нагреваемого стола и максимальный объёмный расход. Пожалуйста, тщательнее " +"подбирайте настройки." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"Программа обнаружила, что функция синхронизации пользовательских профилей " +"отключена, \n" +"что может привести к неудачной настройке прутка на вкладке «Принтер». \n" +"Нажмите «Синхронизировать пользовательские профили», чтобы включить функцию " +"синхронизации." + +msgid "Printer Setting" +msgstr "Настройка принтера" + +# ???????8 +msgid "Printer config bundle(.orca_printer)" +msgstr "Printer config bundle(.orca_printer) - Пакет конфигурации принтера" + +msgid "Filament bundle(.orca_filament)" +msgstr "Filament bundle(.orca_filament) - Пакет конфигурации прутков" + +msgid "Printer presets(.zip)" +msgstr "Printer presets(.zip) - Профили принтеров" + +msgid "Filament presets(.zip)" +msgstr "Filament presets (.zip) - Профили прутков" + +msgid "Process presets(.zip)" +msgstr "Process presets (.zip) - Профили процессов" + +msgid "initialize fail" +msgstr "ошибка инициализации" + +msgid "add file fail" +msgstr "ошибка добавления файла" + +# ??? +msgid "add bundle structure file fail" +msgstr "ошибка добавления файла пакета конфигурации" + +# ??? завершилось с ошибкой +msgid "finalize fail" +msgstr "Ошибка записи" + +msgid "open zip written fail" +msgstr "Ошибка открытия zip-файла для записи" + +msgid "Export successful" +msgstr "Успешно экспортировано!" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"Файл '%s' уже существует в текущем каталоге. Хотите перезаписать его?\n" +"Если нет, то к имени будет добавлен временной суффикс." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"Принтер и все профили пластиковых нитей и процессов, принадлежащие " +"выбранному принтеру.\n" +"Можно будет поделиться с другими пользователями." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Набор пользовательских профилей пластиковых нитей.\n" +"Можно будет поделиться с другими пользователями." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Будут отображаться только профили принтеров, пластиковых нитей и процессов, " +"которые были изменены." + +msgid "Only display the filament names with changes to filament presets." +msgstr "Будут отображаться только изменённые профили пластиковых нитей." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Будут отображаться только пользовательские профили принтеров. \n" +"Каждый выбранный профиль будет экспортирован в zip-файл." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Будут отображаться только пользовательские профили пластиковых нитей.\n" +"Все они будут экспортированы в zip-файл." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Будут отображаться только профили принтеров с изменёнными профилями " +"процесса. \n" +"Все пользовательские профили процессов для каждого выбранного профиля " +"принтера будут экспортированы в zip-файл." + +msgid "Please select at least one printer or filament." +msgstr "Пожалуйста, выберите хотя бы один принтер или пластиковую нить." + +msgid "Please select a type you want to export" +msgstr "Пожалуйста, выберите то, что вы хотите экспортировать" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" +"Не удалось создать временную папку, пожалуйста, попробуйте экспортировать " +"конфигурации ещё раз." + +msgid "Edit Filament" +msgstr "Изменение прутка" + +msgid "Filament presets under this filament" +msgstr "Профили прутка под эту пластиковую нить" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Примечание: если удаляется единственный профиль для этого материала, \n" +"то сам материал также будет удалён после закрытия окна." + +# ??? Профили, наследуемые от других профилей, не могут быть удалены. +msgid "Presets inherited by other presets can not be deleted" +msgstr "Профили на которых основаны другие профили не могут быть удалены." + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Профиль указанный ниже, наследуется от текущего профиля." +msgstr[1] "Профили указанные ниже, наследуются от текущего профиля." +msgstr[2] "Профили указанные ниже, наследуются от текущего профиля." + +msgid "Delete Preset" +msgstr "Удалить профиль" + +msgid "Are you sure to delete the selected preset?" +msgstr "Вы уверены, что хотите удалить выбранный профиль?" + +msgid "Delete preset" +msgstr "Удалить профиль" + +msgid "+ Add Preset" +msgstr "+ Добавить профиль" + +msgid "Delete Filament" +msgstr "Удалить пруток" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Все профили прутка, относящиеся к этому материалу, будут удалены. Если вы " +"используете этот пруток в принтере, пожалуйста, сбросьте информацию о прутке " +"для этого слота." + +msgid "Delete filament" +msgstr "Удаление прутка" + +msgid "Add Preset" +msgstr "Добавить профиль" + +msgid "Add preset for new printer" +msgstr "Добавление профиля для нового принтера" + +msgid "Copy preset from filament" +msgstr "Копировать профиль из прутка" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "При выборе прутка не найден профиль прутка, выберите его повторно." + +msgid "[Delete Required]" +msgstr "[Необходимо удалить]" + +msgid "Edit Preset" +msgstr "Изменить профиль" + +msgid "For more information, please check out Wiki" +msgstr "Более подробно читайте на сайте -> " + +msgid "Collapse" +msgstr "Свернуть" + +msgid "Daily Tips" +msgstr "Ежедневные советы " + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "сопло сохранённое: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Диаметр сопла в профиле не соответствует сохранённому \n" +"в памяти диаметру сопла. Вы недавно сменили сопло?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*Печать %s материалом с %s может привести к повреждению сопла." + +msgid "Need select printer" +msgstr "Нужно выбрать принтер" + +msgid "The start, end or step is not valid value." +msgstr "Недопустимое значение: начальное, конечное или шаг." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Невозможно выполнить калибровку: возможно, установленный диапазон значений " +"калибровки слишком велик или шаг слишком мал." + +msgid "Physical Printer" +msgstr "Физический принтер" + +msgid "Print Host upload" +msgstr "Загрузка на хост печати" + +msgid "Could not get a valid Printer Host reference" +msgstr "Не удалось получить действительную ссылку на хост принтера" + +msgid "Success!" +msgstr "Успешно!" + +# ??? Вы уверены, что хотите разлогиниться... завершить сеанс? +msgid "Are you sure to log out?" +msgstr "Вы уверены, что хотите выйти из системы?" + +msgid "Refresh Printers" +msgstr "Обновить принтеры" + +# ??? +msgid "View print host webui in Device tab" +msgstr "Веб-интерфейс хоста печати на вкладке «Принтер»" + +# ??? Замена вкладки... +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "Заменить вкладку принтера BambuLab на веб-интерфейс хоста печати" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"Файл корневого сертификата HTTPS не обязателен. Он необходим только \n" +"при использовании HTTPS с самоподписанным сертификатом." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Файлы сертификатов (*.crt, *.pem)|*.crt;*.pem|Все файлы|*.*" + +msgid "Open CA certificate file" +msgstr "Открыть файл корневого сертификата" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"В этой системе %s использует HTTPS сертификаты из системного хранилища " +"сертификатов/Keychain." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Чтобы использовать пользовательский файл корневого сертификата, импортируйте " +"его в хранилище сертификатов/Keychain." + +msgid "Login/Test" +msgstr "Вход/Тест" + +msgid "Connection to printers connected via the print host failed." +msgstr "Не удалось подключиться к принтерам, подключенным через хост печати." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Несоответствующий тип хоста печати: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "Подключение к AstroBox успешно установлено." + +msgid "Could not connect to AstroBox" +msgstr "Не удалось подключиться к AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Примечание: требуется версия AstroBox не ниже 1.1.0." + +msgid "Connection to Duet works correctly." +msgstr "Подключение к Duet успешно установлено." + +msgid "Could not connect to Duet" +msgstr "Не удалось подключиться к Duet" + +msgid "Unknown error occured" +msgstr "Произошла неизвестная ошибка" + +msgid "Wrong password" +msgstr "Неверный пароль" + +msgid "Could not get resources to create a new connection" +msgstr "Не удалось получить ресурсы для создания нового подключения" + +msgid "Upload not enabled on FlashAir card." +msgstr "Загрузка на карту FlashAir не была включена." + +# ????? +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "" +"Подключение к FlashAir успешно установлено. Загрузка на карту включена." + +msgid "Could not connect to FlashAir" +msgstr "Не удалось подключиться к FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Примечание: для активации функцией загрузки, требуется FlashAir с прошивкой " +"2.00.02 и выше." + +msgid "Connection to MKS works correctly." +msgstr "Подключение к MKS успешно установлено." + +msgid "Could not connect to MKS" +msgstr "Не удалось подключиться к MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "Подключение к OctoPrint успешно установлено." + +msgid "Could not connect to OctoPrint" +msgstr "Не удалось подключиться к OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Примечание: требуется версия OctoPrint не ниже 1.1.0." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Подключение к Prusa SL1 / SL1S успешно установлено." + +msgid "Could not connect to Prusa SLA" +msgstr "Не удалось подключиться к Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "Подключение к PrusaLink успешно установлено." + +msgid "Could not connect to PrusaLink" +msgstr "Не удалось подключиться к PrusaLink" + +msgid "Storages found" +msgstr "Найденные хранилища" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : только чтение" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : нет свободного места" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "Ошибка при отправке. Не найдено подходящего хранилища в %1%." + +msgid "Connection to Prusa Connect works correctly." +msgstr "Подключение к Prusa Connect успешно установлено." + +msgid "Could not connect to Prusa Connect" +msgstr "Не удалось подключиться к Prusa Connect" + +msgid "Connection to Repetier works correctly." +msgstr "Подключение к Repetier успешно установлено." + +msgid "Could not connect to Repetier" +msgstr "Не удалось подключиться к Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Примечание: требуется версия Repetier не ниже 0.90.0." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"Статус HTTP: %1%\n" +"Текст сообщения: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Не удалось проанализировать ответ хоста.\n" +"Текст сообщения: \"%1%\"\n" +"Ошибка: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Ошибка при перечислении хост-принтеров.\n" +"Текст сообщения: \"%1%\"\n" +"Ошибка: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"Стандартная высота слоя для сопла 0.2 мм. Маленькая высота слоя обеспечивает " +"практически незаметные слои и высокое качество печати. Подходит для " +"большинства обычных сценариев печати." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.2 мм, имеет более низкие " +"скорости и ускорения, а также задан гироидный шаблон заполнения. Это " +"обеспечивает гораздо более высокое качество печати, но приводит к " +"увеличивает время печати." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.2 мм, имеет немного большую " +"высоту слоя, что обеспечивает практически незаметные слои и немного " +"сокращает время печати." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.2 мм, имеет наибольшую " +"высоту слоя, слои становятся немного более заметными, но при этом " +"сокращается время печати." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.2 мм, имеет меньшую высоту " +"слоя, что обеспечивает практически незаметные слои и более высокое качество " +"печати, но при этом увеличивается время печати." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.2 мм, имеет меньшую высоту " +"слоя, более низкие скорости и ускорения, а также задан гироидный шаблон " +"заполнения. Это обеспечивает практически невидимые слои и более высокое " +"качество печати, но при этом значительно увеличивается время печати." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.2 мм, имеет наименьшую " +"высоту слоя, что обеспечивает незаметные слои и гораздо более высокое " +"качество печати, но при этом увеличивается время печати." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.2 мм, имеет наименьшую " +"высоту слоя, более низкие скорости и ускорения, а также задан гироидный " +"шаблон заполнения. Это обеспечивает незаметные слои и наилучшее качество " +"печати, но при этом значительно увеличивается время печати." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"Стандартная высота слоя для сопла 0.4 мм, обеспечивающая нормальное качество " +"печати, подходящее для большинства обычных сценариев печати." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.4 мм, имеет больше " +"периметров и более высокую плотность заполнения. Это приводит к повышению " +"прочности напечатанного, но при этом увеличивается расход материала и время " +"печати." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.4 мм, имеет большую высоту " +"слоя. Как результат - более заметные слои и снижение качества печати, но при " +"этом немного сокращается время печати." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.4 мм, имеет большую высоту " +"слоя. Как результат - более заметные слои, снижение качества печати, но при " +"этом сокращается время печати." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"По сравнению с профилем по умолчанию для соплом 0.4 мм, имеет меньшую высоту " +"слоя. Как результат - менее заметные слои, более высокое качество печати, но " +"при этом увеличивается время печати." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"По сравнению с профилем по умолчанию для соплом 0.4 мм, имеет меньшую высоту " +"слоя, более низкие скорости и ускорения, а также задан гироидный шаблон " +"заполнения. Как результат - менее заметные слои и гораздо более высокое " +"качество печати, но при этом заметно увеличивается время печати." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"По сравнению с профилем по умолчанию для соплом 0.4 мм, имеет меньшую высоту " +"слоя. Как результат - почти незначительные слои и более высокое качество " +"печати, но при этом увеличивается время печати." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"По сравнению с профилем по умолчанию для соплом 0.4 мм, имеет наименьшую " +"высоту слоя, более низкие скорость и ускорение, а также задан гироидный " +"шаблон заполнения. Как результат - почти незаметные слои и гораздо более " +"высокое качество печати, но при этом значительно увеличивается время печати." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"По сравнению с профилем по умолчанию для соплом 0.4 мм, имеет наименьшую " +"высоту слоя. Как результат - почти незначительные слои, но при этом " +"увеличивается время печати." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"Стандартная высота слоя для сопла 0.6 мм. Большая высота слоя, как результат " +"- видимые слои при нормальном качестве и времени печати." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"По сравнению с профилем по умолчанию для соплом 0.6 мм, имеет больше " +"периметров и более высокую плотность заполнения. Это приводит к повышению " +"прочности напечатанного, но увеличивает расход материала и время печати." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"По сравнению с профилем по умолчанию для соплом 0.6 мм, имеет большую высоту " +"слоя. Как результат - более заметные слои и снижение качества печати, но при " +"этом в некоторых случаях сокращается время печати." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"По сравнению с профилем по умолчанию для соплом 0.6 мм, имеет большую высоту " +"слоя. Как результат - более заметные слои и значительное снижение качества " +"печати, но при этом в некоторых случаях сокращается время печати." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"По сравнению с профилем по умолчанию для соплом 0.6 мм, имеет меньшую высоту " +"слоя. Как результат - менее заметные слои и незначительное повышению " +"качества печати, но при этом увеличивается время печати." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"По сравнению с профилем по умолчанию для соплом 0.6 мм, имеет меньшую высоту " +"слоя. Как результат - менее заметные слои и более высокое качество печати, " +"но при этом увеличивается время печати." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"Стандартная высота слоя для сопла 0.8 мм. Очень большая высота слоя, как " +"результат - чётко видимые слои, низкое качество печати и обычное время " +"печати." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.8 мм, имеет немного большую " +"высоту слоя. Как результат - чётко видимые слои и гораздо более низкое " +"качество печати, но при этом в некоторых случаях сокращается время печати." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.8 мм, имеет гораздо большую " +"высоту слоя. Как результат - очень заметные слои и значительно более низкое " +"качество печати, но при этом в некоторых случаях значительно сокращается " +"время печати." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"По сравнению со стандартным профилем для сопла 0.8 мм, имеет немного меньшую " +"высоту слоя. Как результат - немного менее заметные слоя и немного более " +"высокое качество печати, но при этом в некоторых случаях увеличивается время " +"печати." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"По сравнению с профилем по умолчанию для сопла 0,8 мм, он имеет меньшую " +"высоту слоя, что приводит к меньшим, но все же заметным слоям и более " +"высокому качеству печати, и в некоторых случаях увеличению время печати." + +msgid "Connected to Obico successfully!" +msgstr "Подключение к Obico успешно установлено." + +msgid "Could not connect to Obico" +msgstr "Не удалось подключиться к Obico" + +msgid "Connected to SimplyPrint successfully!" +msgstr "Подключение к SimplyPrint успешно установлено." + +msgid "Could not connect to SimplyPrint" +msgstr "Не удалось подключиться к SimplyPrint" + +msgid "Internal error" +msgstr "Внутренняя ошибка" + +msgid "Unknown error" +msgstr "Неизвестная ошибка" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" +"Учётная запись SimplyPrint не привязана. Перейдите в раздел подключения для " +"настройки." + +msgid "Connection to Flashforge works correctly." +msgstr "Подключение к Flashforge успешно установлено." + +msgid "Could not connect to Flashforge" +msgstr "Не удалось подключиться к Flashforge" + +msgid "The provided state is not correct." +msgstr "Указано неверное состояние." + +msgid "Please give the required permissions when authorizing this application." +msgstr "" +"Пожалуйста, предоставьте необходимые разрешения при авторизации этого " +"приложения." + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "При попытке войти произошла какая-то ошибка, попробуйте ещё раз." + +msgid "User cancelled." +msgstr "Отменено пользователем." + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"Точные периметры\n" +"Знаете ли вы, что включение точных периметров позволяет повысить точность и " +"однородность слоёв?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"Порядок печати периметров «Сэндвич»\n" +"Знаете ли вы, что можно использовать порядок печати периметров «Сэндвич» (т." +"е. внутренний-внешний-внутренний) для повышения точности и согласованности " +"слоёв, если у вашей модели не очень крутые нависания?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"Температура термокамеры\n" +"Знаете ли вы, что Snapmaker Orca поддерживает управление температурой в камере " +"принтера?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"Калибровка\n" +"Знаете ли вы, что калибровка принтера может творить чудеса? Ознакомьтесь с " +"нашим избранными калибровками в Snapmaker Orca." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"Вспомогательный вентилятор для охлаждения моделей\n" +"Знаете ли вы, что Snapmaker Orca поддерживает управление вспомогательным " +"вентилятором для охлаждения моделей?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"Вытяжной вентилятор\n" +"Знаете ли вы, что Snapmaker Orca поддерживает управление вытяжным вентилятором?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"Окно G-кода\n" +"Вы можете отобразить/скрыть окно G-кода, нажав клавишу C." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"Переключение между вкладками\n" +"Вы можете переключаться между вкладками Подготовка и Предпросмотр " +"нарезки, нажав клавишу Tab." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"Использование горячих клавиш\n" +"Знаете ли вы, что в Snapmaker Orca имеется большой список горячих клавиш для " +"облегчения и ускорения работы с программой?" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"Реверс на нависаниях\n" +"Знаете ли вы, что функция Реверс на нависаниях может значительно " +"улучшить качество поверхности нависающий частей?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Режущий инструмент\n" +"Знаете ли вы, что можно разрезать модель под любым углом с помощью режущего " +"инструмента?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Починка модели\n" +"Знаете ли вы, что можно починить повреждённую модель в системе Windows, " +"чтобы избежать множества проблем при нарезке?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Таймлапсы (ускоренная видеосъёмка)\n" +"Знаете ли вы, что во время печати можно создавать таймлапсы?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Авторасстановка\n" +"Знаете ли вы, что можно автоматически расставить все модели на вашем столе?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Автоориентация\n" +"Знаете ли вы, что можно повернуть модели в оптимальную для печати ориентацию " +"простым щелчком мыши?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Поверхностью на стол\n" +"Знаете ли вы, что можно быстро сориентировать модель так, чтобы одна из её " +"граней лежала на столе? Используйте функцию «Поверхностью на стол» или " +"нажмите клавишу F." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Список моделей\n" +"Знаете ли вы, что можно просматривать все модели/части в списке и изменять " +"настройки для каждой из них?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"Функция поиска\n" +"Знаете ли вы, что используя инструментПоискможно быстро найти нужную " +"вам настройку Snapmaker Orca?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"Упростить сетку модели\n" +"Знаете ли вы, что можно уменьшить количество треугольников в полигональной " +"сетке, используя функцию упрощения сетки? Щёлкните правой кнопкой мыши на " +"модели и выберите «Упростить полигональную сетку»." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Таблица параметров нарезки\n" +"Знаете ли вы, что можно просмотреть все модели/части в таблице и изменить " +"параметры печати для каждой из них?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Разделение на модели/части\n" +"Знаете ли вы, что можно разделить большую модель на маленькие для удобства " +"раскрашивания или печати?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"Вычитание объёмов\n" +"Знаете ли вы, что можно вычесть одну сетку из другой с помощью модификатора " +"«Объём для вычитания»? Таким образом, например, отверстия в модели можно " +"создавать непосредственно в Snapmaker Orca." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP\n" +"Знаете ли вы, что можно улучшить качество печати, используя STEP файлы " +"вместо STL?\n" +"Snapmaker Orca поддерживает нарезку STEP файлов, что обеспечивает более точное " +"представление геометрии, чем при нарезке STL файлов." + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Позиция шва\n" +"Знаете ли вы, что можно изменить расположение шва и даже нарисовать его на " +"модели, чтобы он был менее заметен? Это улучшает общий вид модели. " +"Попробуйте это!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Точная настройка потока\n" +"Знаете ли вы, что поток можно точно настроить для получения ещё более " +"качественной печати? В зависимости от материала можно внести некоторые " +"корректировки, чтобы улучшить общее качество печати." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Распределение печатаемого на другие столы\n" +"Знаете ли вы, что модель, состоящую из большого количества частей, можно " +"распределить на несколько столов? Это упрощает процесс отслеживания всех " +"деталей при печати." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Ускорение печати с функцией «Переменная высота слоёв»\n" +"Знаете ли вы, что можно печатать ещё быстрее, используя функцию «Переменная " +"высота слоёв». Попробуйте!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Рисование поддержек\n" +"Знаете ли вы, что можно прямо на модели рисовать где будет размещаться " +"принудительная поддержка, а где поддержка будет заблокирована? Используйте " +"для этого функцию «Рисование поддержек»." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Различные типы поддержек\n" +"Знаете ли вы, что можно выбрать один из нескольких типов поддержек? " +"Древовидная поддержка отлично подходит для органических моделей, экономя при " +"этом материал и уменьшая время печати." + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Печать блестящей пластиковой нитью\n" +"Знаете ли вы, что блестящая пластиковая нить требует особого внимания для " +"успешной печати? Для достижения наилучшего результата рекомендуется более " +"высокая температура и более низкая скорость печати." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Кайма для лучшей адгезии\n" +"Знаете ли вы, что при печати модели имеющей небольшой контакт с поверхностью " +"стола, рекомендуется использовать кайму?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Задание параметров для нескольких моделей\n" +"Знаете ли вы, что можно задать параметры нарезки сразу для всех выбранных " +"моделей?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Объединение моделей\n" +"Знаете ли вы, что можно объединить несколько моделей в единую? Используйте " +"для этого команду «Объединить в сборку», выбрав несколько моделей." + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Очистка в поддержку/модель/заполнение\n" +"Знаете ли вы, что при смене пластиковой нити, можно сохранить материал, " +"который иначе попал бы на черновую башню, сбросив его в поддержку/модель/" +"заполнение?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Увеличение прочности\n" +"Знаете ли вы, что для повышения прочности модели можно увеличить количество " +"периметров и плотность заполнения?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Когда необходимо печатать с открытой дверцей принтера?\n" +"Знаете ли вы, что при печати низкотемпературным материалом при более высокой " +"температуре внутри термокамеры, открытие дверцы принтера снижает вероятность " +"засорения экструдера/хотэнда? Более подробную информацию читайте на вики-" +"сайте." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Предотвращение коробления материала\n" +"Знаете ли вы, что при печати материалами, склонными к короблению, таких как " +"ABS, повышение температуры подогреваемого стола может снизить эту " +"вероятность?" + +#~ msgid "Associate prusaslicer://" +#~ msgstr "Ассоциация c prusaslicer://" + +#~ msgid "Not associated to any application" +#~ msgstr "Нет ассоциации ни с одним приложением" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "models from Printable.com" +#~ msgstr "" +#~ "Ассоциировать Snapmaker Orca с ссылками prusaslicer://, чтобы она могла " +#~ "открывать модели сразу с printable.com" + +#~ msgid "Associate bambustudio://" +#~ msgstr "Ассоциация c bambustudio://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with bambustudio:// links so that Orca can open " +#~ "models from makerworld.com" +#~ msgstr "" +#~ "Ассоциировать Snapmaker Orca с ссылками bambustudio://, чтобы она могла " +#~ "открывать модели сразу с makerworld.com" + +#~ msgid "Associate cura://" +#~ msgstr "Ассоциация c cura://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with cura:// links so that Orca can open models from " +#~ "thingiverse.com" +#~ msgstr "" +#~ "Ассоциировать Snapmaker Orca с ссылками bambustudio://, чтобы она могла " +#~ "открывать модели сразу с thingiverse.com" diff --git a/localization/i18n/sv/Snapmaker_Orca_sv.po b/localization/i18n/sv/Snapmaker_Orca_sv.po new file mode 100644 index 0000000000..8f8734c7a3 --- /dev/null +++ b/localization/i18n/sv/Snapmaker_Orca_sv.po @@ -0,0 +1,16510 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n==1) ? 0 : 1;\n" +"X-Generator: Localazy (https://localazy.com)\n" + +msgid "Supports Painting" +msgstr "Färgläggning av Support" + +msgid "Alt + Mouse wheel" +msgstr "Alt + mushjul" + +msgid "Section view" +msgstr "Sektionsvy" + +msgid "Reset direction" +msgstr "Återställ riktning" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Mushjul" + +msgid "Pen size" +msgstr "Penn storlek" + +msgid "Left mouse button" +msgstr "Vänster musknapp" + +msgid "Enforce supports" +msgstr "Tvinga support" + +msgid "Right mouse button" +msgstr "Höger musknapp" + +msgid "Block supports" +msgstr "Blockera support" + +msgid "Shift + Left mouse button" +msgstr "Shift + Vänster musknapp" + +msgid "Erase" +msgstr "Radera" + +msgid "Erase all painting" +msgstr "Radera all färgläggning" + +msgid "Highlight overhang areas" +msgstr "Markera områden med överhäng" + +msgid "Gap fill" +msgstr "Gap fyllning" + +msgid "Perform" +msgstr "Utför" + +msgid "Gap area" +msgstr "Gap område" + +msgid "Tool type" +msgstr "Verktygs typ" + +msgid "Smart fill angle" +msgstr "Smart fyllningsvinkel" + +msgid "On overhangs only" +msgstr "Endast på överhäng" + +msgid "Auto support threshold angle: " +msgstr "Automatisk support tröskelsvinkel: " + +msgid "Circle" +msgstr "Cirkel" + +msgid "Sphere" +msgstr "Sfär" + +msgid "Fill" +msgstr "Fyll" + +msgid "Gap Fill" +msgstr "Gap Fyllning" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Tillåter målning endast på fasetter som valts av: ”%1%”" + +msgid "Highlight faces according to overhang angle." +msgstr "Markera ytor enligt överhängs vinkeln." + +msgid "No auto support" +msgstr "Ingen auto support" + +msgid "Support Generated" +msgstr "Support skapad" + +msgid "Gizmo-Place on Face" +msgstr "" + +msgid "Lay on face" +msgstr "Lägg på yta" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Filamentåtgången överstiger det maximala antalet som målningsverktyget " +"stöder, bara det första %1% filamentet kommeratt vara tillgängligt i " +"färgläggnings verktyget." + +msgid "Color Painting" +msgstr "Färgläggning" + +msgid "Pen shape" +msgstr "Penn form" + +msgid "Paint" +msgstr "Färglägga" + +msgid "Key 1~9" +msgstr "Nyckel 1~9" + +msgid "Choose filament" +msgstr "Välj filament" + +msgid "Edge detection" +msgstr "Kant detektering" + +msgid "Triangles" +msgstr "Trianglar" + +msgid "Filaments" +msgstr "Filamenter" + +msgid "Brush" +msgstr "Pensel" + +msgid "Smart fill" +msgstr "Smart fyllnad" + +msgid "Bucket fill" +msgstr "Hinkfyllning" + +msgid "Height range" +msgstr "Höjd intervall" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Skift + Enter" + +msgid "Toggle Wireframe" +msgstr "Växla Wireframe" + +msgid "Shortcut Key " +msgstr "Snabbkommando " + +msgid "Triangle" +msgstr "Triangel" + +msgid "Height Range" +msgstr "Höjd intervall" + +msgid "Vertical" +msgstr "Vertikal" + +msgid "Horizontal" +msgstr "Horisontell" + +msgid "Remove painted color" +msgstr "Ta bort färgläggning" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Färgläggning använder: Filament %1%" + +msgid "Move" +msgstr "Flytta" + +msgid "Gizmo-Move" +msgstr "" + +msgid "Rotate" +msgstr "Rotera" + +msgid "Gizmo-Rotate" +msgstr "" + +msgid "Optimize orientation" +msgstr "Optimisera placering" + +msgid "Apply" +msgstr "Applicera" + +msgid "Scale" +msgstr "Skala" + +msgid "Gizmo-Scale" +msgstr "" + +msgid "Error: Please close all toolbar menus first" +msgstr "FEL: Stäng alla verktygsmenyer först" + +msgid "in" +msgstr "i" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Position" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Rotation" + +msgid "Scale ratios" +msgstr "Skalnings förhållande" + +msgid "Object Operations" +msgstr "Objekt Åtgärder" + +msgid "Volume Operations" +msgstr "Volym Åtgärder" + +msgid "Translate" +msgstr "Översätt" + +msgid "Group Operations" +msgstr "Grupp Åtgärder" + +msgid "Set Position" +msgstr "Ställ in Position" + +msgid "Set Orientation" +msgstr "Ställ in Orientering" + +msgid "Set Scale" +msgstr "Ställ in Skala" + +msgid "Reset Position" +msgstr "Återställ Position" + +msgid "Reset Rotation" +msgstr "Återställ Rotation" + +msgid "World coordinates" +msgstr "Världskoordinater" + +msgid "Object coordinates" +msgstr "" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Storlek" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "enhetlig skala" + +msgid "Planar" +msgstr "Platt" + +msgid "Dovetail" +msgstr "Laxstjärt" + +msgid "Auto" +msgstr "Auto" + +msgid "Manual" +msgstr "Manuell" + +msgid "Plug" +msgstr "Kontakt" + +msgid "Dowel" +msgstr "Plugg" + +msgid "Snap" +msgstr "Fäst" + +msgid "Prism" +msgstr "" + +msgid "Frustum" +msgstr "Avstympat parti" + +msgid "Square" +msgstr "Kvadrat" + +msgid "Hexagon" +msgstr "Hexagon" + +msgid "Keep orientation" +msgstr "Behåll orienteringen" + +msgid "Place on cut" +msgstr "Placera på snitt" + +msgid "Flip upside down" +msgstr "" + +msgid "Connectors" +msgstr "Kontaktdon" + +msgid "Type" +msgstr "Typ" + +msgid "Style" +msgstr "Stil" + +msgid "Shape" +msgstr "Form" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Djup" + +msgid "Groove" +msgstr "Spår" + +msgid "Width" +msgstr "Bredd" + +msgid "Flap Angle" +msgstr "Vinkel på klaff" + +msgid "Groove Angle" +msgstr "Spårvinkel" + +msgid "Part" +msgstr "Del" + +msgid "Object" +msgstr "Objekt" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" + +msgid "Move cut plane" +msgstr "" + +msgid "Mode" +msgstr "Läge" + +msgid "Change cut mode" +msgstr "" + +msgid "Tolerance" +msgstr "Tolerans" + +msgid "Drag" +msgstr "Dra" + +msgid "Draw cut line" +msgstr "" + +msgid "Left click" +msgstr "Vänsterklicka" + +msgid "Add connector" +msgstr "Lägg till kontaktdon" + +msgid "Right click" +msgstr "Högerklicka" + +msgid "Remove connector" +msgstr "Ta bort kontakten" + +msgid "Move connector" +msgstr "Flytta kontakt" + +msgid "Add connector to selection" +msgstr "Lägg till kontaktdon i urvalet" + +msgid "Remove connector from selection" +msgstr "Ta bort kontakten från urvalet" + +msgid "Select all connectors" +msgstr "Välj alla kontakter" + +msgid "Cut" +msgstr "Beskär" + +msgid "Rotate cut plane" +msgstr "" + +msgid "Remove connectors" +msgstr "Ta bort kontakterna" + +msgid "Bulge" +msgstr "Utbuktning" + +msgid "Bulge proportion related to radius" +msgstr "" + +msgid "Space" +msgstr "Mellanslag" + +msgid "Space proportion related to radius" +msgstr "" + +msgid "Confirm connectors" +msgstr "Bekräfta kontakterna" + +msgid "Cancel" +msgstr "Avbryt" + +msgid "Build Volume" +msgstr "" + +msgid "Flip cut plane" +msgstr "" + +msgid "Groove change" +msgstr "" + +msgid "Reset" +msgstr "Återställ" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "" + +msgid "Cut position" +msgstr "" + +msgid "Reset cutting plane" +msgstr "" + +msgid "Edit connectors" +msgstr "Redigera kontaktdon" + +msgid "Add connectors" +msgstr "Lägg till kontaktdon" + +msgid "Reset cut" +msgstr "" + +msgid "Reset cutting plane and remove connectors" +msgstr "" + +msgid "Upper part" +msgstr "Övre del" + +msgid "Lower part" +msgstr "Nedre del" + +msgid "Keep" +msgstr "Behåll" + +msgid "Flip" +msgstr "Vänd" + +msgid "After cut" +msgstr "Efter skärning" + +msgid "Cut to parts" +msgstr "Beskär till delar" + +msgid "Perform cut" +msgstr "Utför beskärning" + +msgid "Warning" +msgstr "Varning" + +msgid "Invalid connectors detected" +msgstr "Ogiltiga anslutningar upptäckta" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "" +msgstr[1] "" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "" +msgstr[1] "" + +msgid "Some connectors are overlapped" +msgstr "Vissa kontakter är överlappande" + +msgid "Select at least one object to keep after cutting." +msgstr "" + +msgid "Cut plane is placed out of object" +msgstr "" + +msgid "Cut plane with groove is invalid" +msgstr "" + +msgid "Connector" +msgstr "Kontakt" + +msgid "Cut by Plane" +msgstr "" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "Icke-mångsidiga kanter orsakade av skärverktyg: vill du fixa det nu?" + +msgid "Repairing model object" +msgstr "Reparerar modell objektet" + +msgid "Cut by line" +msgstr "" + +msgid "Delete connector" +msgstr "" + +msgid "Mesh name" +msgstr "Mesh namn" + +msgid "Detail level" +msgstr "Detaljnivå" + +msgid "Decimate ratio" +msgstr "Decimera förhållandet" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Processar modell '%1%' med mer än 1M trianglar kan ta lång tid. Det " +"rekommenderas att förenkla modellen." + +msgid "Simplify model" +msgstr "Förenkla modellen" + +msgid "Simplify" +msgstr "Förenkla" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"Förenkling är för tillfället endast accepterat när en enkel del är vald" + +msgid "Error" +msgstr "FEL" + +msgid "Extra high" +msgstr "Extra hög" + +msgid "High" +msgstr "Hög" + +msgid "Medium" +msgstr "Medel" + +msgid "Low" +msgstr "Låg" + +msgid "Extra low" +msgstr "Extra låg" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d trianglar" + +msgid "Show wireframe" +msgstr "Visa trådram" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "Kan inte tillämpas när processen förhandsgranskas." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Åtgärden avbryts redan. Vänligen vänta." + +msgid "Face recognition" +msgstr "Ansiktsigenkänning" + +msgid "Perform Recognition" +msgstr "Utför igenkänning" + +msgid "Brush size" +msgstr "Pensel storlek" + +msgid "Brush shape" +msgstr "Pensel form" + +msgid "Enforce seam" +msgstr "Tvinga söm" + +msgid "Block seam" +msgstr "Blockera söm" + +msgid "Seam painting" +msgstr "Målning av sömmar" + +msgid "Remove selection" +msgstr "Ta bort val" + +msgid "Entering Seam painting" +msgstr "Inmatning söm målning" + +msgid "Leaving Seam painting" +msgstr "Lämnar söm målning" + +msgid "Paint-on seam editing" +msgstr "Redigering av måla på sömmen" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Typsnitt" + +msgid "Thickness" +msgstr "Tjocklek" + +msgid "Text Gap" +msgstr "Text mellanrum" + +msgid "Angle" +msgstr "Vinkel" + +msgid "" +"Embeded\n" +"depth" +msgstr "Inbäddat djup" + +msgid "Input text" +msgstr "Skriv in text" + +msgid "Surface" +msgstr "Yta" + +msgid "Horizontal text" +msgstr "Vågrät text" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Mus flytta uppåt eller nedåt" + +msgid "Rotate text" +msgstr "Rotera text" + +msgid "Text shape" +msgstr "Text form" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "" + +msgid "Set Mirror" +msgstr "" + +msgid "Embossed text" +msgstr "" + +msgid "Enter emboss gizmo" +msgstr "" + +msgid "Leave emboss gizmo" +msgstr "" + +msgid "Embossing actions" +msgstr "" + +msgid "Emboss" +msgstr "" + +msgid "NORMAL" +msgstr "" + +msgid "SMALL" +msgstr "" + +msgid "ITALIC" +msgstr "" + +msgid "SWISS" +msgstr "" + +msgid "MODERN" +msgstr "" + +msgid "First font" +msgstr "" + +msgid "Default font" +msgstr "" + +msgid "Advanced" +msgstr "Avancerat" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" + +msgid "Embossed text cannot contain only white spaces." +msgstr "" + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" + +msgid "Text input doesn't show font skew." +msgstr "" + +msgid "Text input doesn't show font boldness." +msgstr "" + +msgid "Text input doesn't show gap between lines." +msgstr "" + +msgid "Too tall, diminished font height inside text input." +msgstr "" + +msgid "Too small, enlarged font height inside text input." +msgstr "" + +msgid "Text doesn't show current horizontal alignment." +msgstr "" + +msgid "Revert font changes." +msgstr "" + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "" + +msgid "Operation" +msgstr "" + +msgid "Join" +msgstr "" + +msgid "Click to change text into object part." +msgstr "" + +msgid "You can't change a type of the last solid part of the object." +msgstr "" + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Beskär" + +msgid "Click to change part type into negative volume." +msgstr "" + +msgid "Modifier" +msgstr "Modifierare" + +msgid "Click to change part type into modifier." +msgstr "" + +msgid "Change Text Type" +msgstr "" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "" + +msgid "Name can't be empty." +msgstr "" + +msgid "Name has to be unique." +msgstr "" + +msgid "OK" +msgstr "OK" + +msgid "Rename style" +msgstr "" + +msgid "Rename current style." +msgstr "" + +msgid "Can't rename temporary style." +msgstr "" + +msgid "First Add style to list." +msgstr "" + +#, boost-format +msgid "Save %1% style" +msgstr "" + +msgid "No changes to save." +msgstr "" + +msgid "New name of style" +msgstr "" + +msgid "Save as new style" +msgstr "" + +msgid "Only valid font can be added to style." +msgstr "" + +msgid "Add style to my list." +msgstr "" + +msgid "Save as new style." +msgstr "" + +msgid "Remove style" +msgstr "" + +msgid "Can't remove the last existing style." +msgstr "" + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "" + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "" + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "" + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" + +msgid "Not valid style." +msgstr "" + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "" + +msgid "Unset italic" +msgstr "" + +msgid "Set italic" +msgstr "" + +msgid "Unset bold" +msgstr "" + +msgid "Set bold" +msgstr "" + +msgid "Revert text size." +msgstr "" + +msgid "Revert embossed depth." +msgstr "" + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" + +msgid "Revert using of model surface." +msgstr "" + +msgid "Revert Transformation per glyph." +msgstr "" + +msgid "Set global orientation for whole text." +msgstr "" + +msgid "Set position and orientation per glyph." +msgstr "" + +msgctxt "Alignment" +msgid "Left" +msgstr "Vänster" + +msgctxt "Alignment" +msgid "Center" +msgstr "Center" + +msgctxt "Alignment" +msgid "Right" +msgstr "Höger" + +msgctxt "Alignment" +msgid "Top" +msgstr "Topplager" + +msgctxt "Alignment" +msgid "Middle" +msgstr "" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Bottenlager" + +msgid "Revert alignment." +msgstr "" + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "" + +msgid "Revert gap between characters" +msgstr "" + +msgid "Distance between characters" +msgstr "" + +msgid "Revert gap between lines" +msgstr "" + +msgid "Distance between lines" +msgstr "" + +msgid "Undo boldness" +msgstr "" + +msgid "Tiny / Wide glyphs" +msgstr "" + +msgid "Undo letter's skew" +msgstr "" + +msgid "Italic strength ratio" +msgstr "" + +msgid "Undo translation" +msgstr "" + +msgid "Distance of the center of the text to the model surface." +msgstr "" + +msgid "Undo rotation" +msgstr "" + +msgid "Rotate text Clock-wise." +msgstr "" + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Select from True Type Collection." +msgstr "" + +msgid "Set text to face camera" +msgstr "" + +msgid "Orient the text towards the camera." +msgstr "" + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" + +msgid "No symbol" +msgstr "" + +msgid "Loading" +msgstr "Laddar" + +msgid "In queue" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Höjd" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "" + +msgid "Enter SVG gizmo" +msgstr "" + +msgid "Leave SVG gizmo" +msgstr "" + +msgid "SVG actions" +msgstr "" + +msgid "SVG" +msgstr "" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "" + +msgid "Undefined fill type" +msgstr "" + +msgid "Linear gradient" +msgstr "" + +msgid "Radial gradient" +msgstr "" + +msgid "Open filled path" +msgstr "" + +msgid "Undefined stroke type" +msgstr "" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "" + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "" + +msgid "Face the camera" +msgstr "" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "" + +msgid "Reload SVG file from disk." +msgstr "" + +msgid "Change file" +msgstr "" + +msgid "Change to another .svg file" +msgstr "" + +msgid "Forget the file path" +msgstr "" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "" + +msgid "Save as" +msgstr "" + +msgid "Save SVG file" +msgstr "" + +msgid "Save as '.svg' file" +msgstr "" + +msgid "Size in emboss direction." +msgstr "" + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "" + +msgid "Width of SVG." +msgstr "" + +msgid "Height of SVG." +msgstr "" + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "" + +msgid "Reset scale" +msgstr "" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "" + +msgid "Reset distance" +msgstr "" + +msgid "Reset rotation" +msgstr "" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" + +msgid "Mirror vertically" +msgstr "" + +msgid "Mirror horizontally" +msgstr "" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Spegelvänd" + +msgid "Choose SVG file for emboss:" +msgstr "" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "" + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "" + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "" + +msgid "Vertex" +msgstr "Vertex" + +msgid "Edge" +msgstr "Edge" + +msgid "Plane" +msgstr "Plane" + +msgid "Point on edge" +msgstr "Point on edge" + +msgid "Point on circle" +msgstr "Point on circle" + +msgid "Point on plane" +msgstr "Point on plane" + +msgid "Center of edge" +msgstr "Center of edge" + +msgid "Center of circle" +msgstr "Center of circle" + +msgid "ShiftLeft mouse button" +msgstr "" + +msgid "Select feature" +msgstr "Select feature" + +msgid "Select point" +msgstr "Select point" + +msgid "Delete" +msgstr "Radera" + +msgid "Restart selection" +msgstr "Restart selection" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "" + +msgid "Measure" +msgstr "Measure" + +msgid "Edit to scale" +msgstr "Edit to scale" + +msgctxt "Verb" +msgid "Scale" +msgstr "Skala" + +msgid "None" +msgstr "Ingen" + +msgid "Diameter" +msgstr "Diameter" + +msgid "Length" +msgstr "Längd" + +msgid "Selection" +msgstr "Selection" + +msgid "Copy to clipboard" +msgstr "Kopiera till urklipp" + +msgid "Perpendicular distance" +msgstr "Perpendicular distance" + +msgid "Distance" +msgstr "Distance" + +msgid "Direct distance" +msgstr "Direct distance" + +msgid "Distance XYZ" +msgstr "Distance XYZ" + +msgid "Ctrl+" +msgstr "Ctrl +" + +msgid "Notice" +msgstr "Iakttag" + +msgid "Undefined" +msgstr "Oidentifierad" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% ersättes med %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" + +msgid "Some values have been replaced. Please check them:" +msgstr "Några värde har ersatts. Kontrollera dem:" + +msgid "Process" +msgstr "Bearbeta" + +msgid "Filament" +msgstr "Filament" + +msgid "Machine" +msgstr "Maskin" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "Konfigurations paketet har laddats, men vissa värden känns inte igen." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Konfigurations fil “%1%” har laddats, men vissa värden känns inte igen." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" + +msgid "Fatal error" +msgstr "Allvarligt fel" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" + +msgid "Critical error" +msgstr "Kritiskt fel" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "" + +msgid "Untitled" +msgstr "Ej namngiven" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Nedladdning av Bambu Network Plug-in" + +msgid "Login information expired. Please login again." +msgstr "Inloggningsinformationen har löpt ut. Logga in igen." + +msgid "Incorrect password" +msgstr "Felaktigt lösenord" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "Det gick inte att ansluta %s! [SN: %s, kod=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" + +msgid "WebView2 Runtime" +msgstr "" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Vill du fortsätta?" + +msgid "Remember my choice" +msgstr "Kom ihåg mina val" + +msgid "Loading configuration" +msgstr "Konfigurationen laddas" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "Tryck på ladda ner ny version ifrån standard webbläsaren: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca behöver uppdateras" + +msgid "This is the newest version." +msgstr "Det är den senaste versionen." + +msgid "Info" +msgstr "Info" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" + +msgid "Rebuild" +msgstr "Återskapa" + +msgid "Loading current presets" +msgstr "Laddar nuvarande inställningar" + +msgid "Loading a mode view" +msgstr "Laddar modell vy" + +msgid "Choose one file (3mf):" +msgstr "Välj en fil (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "Välj en eller flera filer (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Välj en eller flera filer (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "" + +msgid "Choose one file (gcode/3mf):" +msgstr "" + +msgid "Some presets are modified." +msgstr "Några inställningar har ändrats." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Fortsätt med redigerings inställningarna till nytt projekt, avfärda dem " +"eller spara som ny inställning." + +msgid "User logged out" +msgstr "Användaren utloggad" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" +"ny eller öppen projekt fil är inte tillåten under berednings processen!" + +msgid "Open Project" +msgstr "Öppna Projekt" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"Versionen av Snapmaker Orca är för låg och behöver uppdateras till den senaste " +"versionen innan den kan användas normalt" + +msgid "Privacy Policy Update" +msgstr "Uppdatering av integritetspolicy" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"Antalet användar inställningar som cachats i molnet har överskridit den övre " +"gränsen, nyskapade användar inställningar kan endast användas lokalt." + +msgid "Sync user presets" +msgstr "Synkronisera användar inställningar" + +msgid "Loading user preset" +msgstr "Laddar användarens förinställning" + +msgid "Switching application language" +msgstr "Byt applikationsspråk" + +msgid "Select the language" +msgstr "Välj språk" + +msgid "Language" +msgstr "Språk" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Uppladdningarna pågår fortfarande." + +msgid "Stop them and continue anyway?" +msgstr "Stoppa dem och fortsätta ändå?" + +msgid "Ongoing uploads" +msgstr "Pågående uppladdningar" + +msgid "Select a G-code file:" +msgstr "Välj en G-kod fil:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" + +msgid "Import File" +msgstr "Importera fil" + +msgid "Choose files" +msgstr "Välj filer" + +msgid "New Folder" +msgstr "Ny mapp" + +msgid "Open" +msgstr "Öppna" + +msgid "Rename" +msgstr "Döp om" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Snapmaker Orca GUI-initiering misslyckades" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Allvarligt fel, undantag hittat: %1%" + +msgid "Quality" +msgstr "Kvalitet" + +msgid "Shell" +msgstr "Skal" + +msgid "Infill" +msgstr "Ifyllnad" + +msgid "Support" +msgstr "Support" + +msgid "Flush options" +msgstr "Rensnings alternativ" + +msgid "Speed" +msgstr "Hastighet" + +msgid "Strength" +msgstr "Styrka" + +msgid "Top Solid Layers" +msgstr "Massiva Top Lager" + +msgid "Top Minimum Shell Thickness" +msgstr "Minsta Top Skal Tjocklek" + +msgid "Bottom Solid Layers" +msgstr "Massiva Botten Lager" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Minsta Botten Skal Tjocklek" + +msgid "Ironing" +msgstr "Strykning" + +msgid "Fuzzy Skin" +msgstr "Ojämn Yta" + +msgid "Extruders" +msgstr "Extruders" + +msgid "Extrusion Width" +msgstr "Extruderings Bredd" + +msgid "Wipe options" +msgstr "Avstryknings val" + +msgid "Bed adhesion" +msgstr "Byggplattans vidhäftningsförmåga" + +msgid "Add part" +msgstr "Lägg till del" + +msgid "Add negative part" +msgstr "Lägg till negativ del" + +msgid "Add modifier" +msgstr "Lägg till modifierare" + +msgid "Add support blocker" +msgstr "Lägg till support blockerare" + +msgid "Add support enforcer" +msgstr "Lägg till support förstärkning" + +msgid "Add text" +msgstr "" + +msgid "Add negative text" +msgstr "" + +msgid "Add text modifier" +msgstr "" + +msgid "Add SVG part" +msgstr "" + +msgid "Add negative SVG" +msgstr "" + +msgid "Add SVG modifier" +msgstr "" + +msgid "Select settings" +msgstr "Välj inställningar" + +msgid "Hide" +msgstr "Dölj" + +msgid "Show" +msgstr "Visa" + +msgid "Del" +msgstr "Del" + +msgid "Delete the selected object" +msgstr "Radera det valda objektet" + +msgid "Load..." +msgstr "Ladda..." + +msgid "Cube" +msgstr "Kub" + +msgid "Cylinder" +msgstr "Cylinder" + +msgid "Cone" +msgstr "Kon" + +msgid "Disc" +msgstr "Skiva" + +msgid "Torus" +msgstr "Torus" + +msgid "Orca Cube" +msgstr "" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "" + +msgid "Voron Cube" +msgstr "" + +msgid "Stanford Bunny" +msgstr "" + +msgid "Orca String Hell" +msgstr "" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" + +msgid "Text" +msgstr "" + +msgid "Height range Modifier" +msgstr "Modifierare av höjd intervall" + +msgid "Add settings" +msgstr "Lägg till inställning" + +msgid "Change type" +msgstr "Ändra typ" + +msgid "Set as an individual object" +msgstr "Ställ in som ett enskilt objekt" + +msgid "Set as individual objects" +msgstr "Ställ in som enskilda objekt" + +msgid "Fill bed with copies" +msgstr "Fyll byggplattan med kopior" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "" +"Fyll det återstående området av byggytan med kopior av det valda objektet" + +msgid "Printable" +msgstr "Utskriftsbar" + +msgid "Fix model" +msgstr "Fixa modell" + +msgid "Export as one STL" +msgstr "Exportera som en STL" + +msgid "Export as STLs" +msgstr "Exportera som STL" + +msgid "Reload from disk" +msgstr "Ladda om från disk" + +msgid "Reload the selected parts from disk" +msgstr "Ladda om de valda delarna från disken" + +msgid "Replace with STL" +msgstr "Ersätt med STL" + +msgid "Replace the selected part with new STL" +msgstr "Ersätt den valda delen med ny STL" + +msgid "Change filament" +msgstr "Byta filament" + +msgid "Set filament for selected items" +msgstr "Välj filament för valda objekt" + +msgid "Default" +msgstr "Standard" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filament %d" + +msgid "current" +msgstr "nuvarande" + +msgid "Scale to build volume" +msgstr "Skala till bygg volymen" + +msgid "Scale an object to fit the build volume" +msgstr "Anpassa skalning av ett objekt till byggvolymen" + +msgid "Flush Options" +msgstr "Rensnings alternativ" + +msgid "Flush into objects' infill" +msgstr "Rensa in i föremålens ifyllnad" + +msgid "Flush into this object" +msgstr "Rensa in i det här objektet" + +msgid "Flush into objects' support" +msgstr "Rensa in i objektets support" + +msgid "Edit in Parameter Table" +msgstr "Redigera i Parameter Tabell" + +msgid "Convert from inch" +msgstr "Konvertera ifrån inch" + +msgid "Restore to inch" +msgstr "Återställ till inch" + +msgid "Convert from meter" +msgstr "Konvertera ifrån meter" + +msgid "Restore to meter" +msgstr "Återställ till meter" + +msgid "Assemble" +msgstr "Montera" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Montera de valda objekten till ett objekt med multipla delar" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Montera de valda objekten till ett objekt med en enda del" + +msgid "Mesh boolean" +msgstr "Mesh boolean" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Mesh boolean operationer inklusive union och subtraktion" + +msgid "Along X axis" +msgstr "Längs med X Axis" + +msgid "Mirror along the X axis" +msgstr "Spegelvänd längs med X Axis" + +msgid "Along Y axis" +msgstr "Längs med Y Axis" + +msgid "Mirror along the Y axis" +msgstr "Spegelvänd längs med Y Axis" + +msgid "Along Z axis" +msgstr "Längs med Z Axis" + +msgid "Mirror along the Z axis" +msgstr "Spegelvänd längs med Z Axis" + +msgid "Mirror object" +msgstr "Spegelvänd objektet" + +msgid "Edit text" +msgstr "" + +msgid "Ability to change text, font, size, ..." +msgstr "" + +msgid "Edit SVG" +msgstr "" + +msgid "Change SVG source file, projection, size, ..." +msgstr "" + +msgid "Invalidate cut info" +msgstr "Ogiltig förklara delnings info" + +msgid "Add Primitive" +msgstr "Lägg till Primitiv" + +msgid "Add Handy models" +msgstr "" + +msgid "Add Models" +msgstr "Lägg till modeller" + +msgid "Show Labels" +msgstr "Visa Etiketter" + +msgid "To objects" +msgstr "Till objekten" + +msgid "Split the selected object into multiple objects" +msgstr "Dela det valda objektet till multipla objekt" + +msgid "To parts" +msgstr "Till delarna" + +msgid "Split the selected object into multiple parts" +msgstr "Dela det valda objektet till multipla delar" + +msgid "Split" +msgstr "Dela" + +msgid "Split the selected object" +msgstr "Dela det valda objektet" + +msgid "Auto orientation" +msgstr "Auto placera" + +msgid "Auto orient the object to improve print quality." +msgstr "Auto placera objektet för att förbättra utskriftskvaliteten." + +msgid "Select All" +msgstr "Välj Alla" + +msgid "select all objects on current plate" +msgstr "Välj alla objekt på plattan" + +msgid "Delete All" +msgstr "Radera Allt" + +msgid "delete all objects on current plate" +msgstr "Radera alla objekt på plattan" + +msgid "Arrange" +msgstr "Arrangera" + +msgid "arrange current plate" +msgstr "Arrangera plattan" + +msgid "Reload All" +msgstr "" + +msgid "reload all from disk" +msgstr "" + +msgid "Auto Rotate" +msgstr "Auto Rotera" + +msgid "auto rotate current plate" +msgstr "auto rotera plattan" + +msgid "Delete Plate" +msgstr "Radera platta" + +msgid "Remove the selected plate" +msgstr "Radera den valda plattan" + +msgid "Clone" +msgstr "Klona" + +msgid "Simplify Model" +msgstr "Förenkla modellen" + +msgid "Center" +msgstr "Center" + +msgid "Edit Process Settings" +msgstr "Redigera Process Inställningar" + +msgid "Edit print parameters for a single object" +msgstr "Redigera utskriftsinställningar för ett enda objekt" + +msgid "Change Filament" +msgstr "Byta Filament" + +msgid "Set Filament for selected items" +msgstr "Välj Filament för valda delar" + +msgid "Unlock" +msgstr "Lås upp" + +msgid "Lock" +msgstr "Lås" + +msgid "Edit Plate Name" +msgstr "Redigera plattans namn" + +msgid "Name" +msgstr "Namn" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d fel åtgärdat@%1$d felen åtgärdade" +msgstr[1] "%1$d fel åtgärdat@%1$d felen åtgärdade" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Fel: %1$d inte mångfaldig kant.@Fel: %1$d inte mångfaldiga kanter." +msgstr[1] "Fel: %1$d inte mångfaldig kant.@Fel: %1$d inte mångfaldiga kanter." + +msgid "Remaining errors" +msgstr "Kvarstående fel" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d inte mångfaldig kant@%1$d inte mångfaldiga kanter" +msgstr[1] "%1$d inte mångfaldig kant@%1$d inte mångfaldiga kanter" + +msgid "Right click the icon to fix model object" +msgstr "Höger klicka på ikonen för att reparera modell objektet" + +msgid "Right button click the icon to drop the object settings" +msgstr "Höger klicka på ikonen för att släppa objekts inställningarna" + +msgid "Click the icon to reset all settings of the object" +msgstr "Klicka på ikonen för att återställa alla objekts inställningar" + +msgid "Right button click the icon to drop the object printable property" +msgstr "Höger klicka på ikonen för att släppa objektets utskrifts egenskaper" + +msgid "Click the icon to toggle printable property of the object" +msgstr "Klicka på ikonen för att bläddra igenom utskriftens egenskaper" + +msgid "Click the icon to edit support painting of the object" +msgstr "Klicka på ikonen för att redigera support färgläggningen av objektet" + +msgid "Click the icon to edit color painting of the object" +msgstr "Klicka på ikonen för att redigera färgläggningen av objektet" + +msgid "Click the icon to shift this object to the bed" +msgstr "Klicka på ikonen för att flytta detta föremål till byggplattan" + +msgid "Loading file" +msgstr "Laddar fil" + +msgid "Error!" +msgstr "Fel!" + +msgid "Failed to get the model data in the current file." +msgstr "Det gick inte att hämta modelldata i den aktuella filen." + +msgid "Generic" +msgstr "Allmän" + +msgid "Add Modifier" +msgstr "Lägg till Modifierare" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "Ändra till per objekt inställningsläge till redigerings inställningar." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Växla till inställningsläge för varje objekt för att redigera process " +"inställningar för valda objekt." + +msgid "Delete connector from object which is a part of cut" +msgstr "Ta bort kopplingen från objekt som är en del av snittet" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Radera den fasta delen från föremål som är en del av snittet" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Ta bort negativ volym från objekt som är en del av snittet" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"För att spara korrespondens kan du ta bort alla kontakter från alla " +"relaterade objekt." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"Denna åtgärd kommer att bryta en skuren korrespondens.\n" +"Därefter kan inte modell konsistens garanteras .\n" +"\n" +"Om du vill manipulera med solida delar eller negativa volymer måste du först " +"ogiltigförklara skär informationen." + +msgid "Delete all connectors" +msgstr "Ta bort alla kopplingar" + +msgid "Deleting the last solid part is not allowed." +msgstr "Ej tillåtet att radera den senaste fasta delen." + +msgid "The target object contains only one part and can not be splited." +msgstr "Det valda objektet innehåller endast en del och kan inte delas." + +msgid "Assembly" +msgstr "Montering" + +msgid "Cut Connectors information" +msgstr "Information om kontakter" + +msgid "Object manipulation" +msgstr "Manipulation av objekt" + +msgid "Group manipulation" +msgstr "Grupp manipulation" + +msgid "Object Settings to modify" +msgstr "Objektinställningar att ändra" + +msgid "Part Settings to modify" +msgstr "Del inställningar att ändra" + +msgid "Layer range Settings to modify" +msgstr "Inställningar för lagerintervall att ändra" + +msgid "Part manipulation" +msgstr "Manipulation av del" + +msgid "Instance manipulation" +msgstr "Manipulation av instanser" + +msgid "Height ranges" +msgstr "Höjd intervall" + +msgid "Settings for height range" +msgstr "Inställningar för höjdintervall" + +msgid "Layer" +msgstr "Lager" + +msgid "Selection conflicts" +msgstr "Urvalskonflikt" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Om den första valda delen är ett objekt, så bör även den andra vara ett " +"objekt." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Om den första valda delen är en del, så bör den andra delen tillhöra samma " +"objekt." + +msgid "The type of the last solid object part is not to be changed." +msgstr "Den sista fasta objekts delen ska inte ändras." + +msgid "Negative Part" +msgstr "Negativ Del" + +msgid "Support Blocker" +msgstr "Support Blockerare" + +msgid "Support Enforcer" +msgstr "Support Förstärkare" + +msgid "Type:" +msgstr "Typ:" + +msgid "Choose part type" +msgstr "Välj en del typ" + +msgid "Enter new name" +msgstr "Skriv in nytt namn" + +msgid "Renaming" +msgstr "Byter namn" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "" +"Följande modellobjekt har reparerats@Följande modellobjekt har reparerats" +msgstr[1] "" +"Följande modellobjekt har reparerats@Följande modellobjekt har reparerats" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "" +"Reparationen av följande modellobjekt misslyckades@Reparation av de följande " +"modellobjekten misslyckades" +msgstr[1] "" +"Reparationen av följande modellobjekt misslyckades@Reparation av de följande " +"modellobjekten misslyckades" + +msgid "Repairing was canceled" +msgstr "Reparation avbruten" + +msgid "Additional process preset" +msgstr "Ytterligare process inställning" + +msgid "Remove parameter" +msgstr "Ta bort parameter" + +msgid "to" +msgstr "till" + +msgid "Remove height range" +msgstr "Ta bort höjdintervall" + +msgid "Add height range" +msgstr "Lägg till höjdintervall" + +msgid "Invalid numeric." +msgstr "Ogiltig siffra." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"En cell kan endast kopieras till en eller flertalet celler i samma kolumn" + +msgid "multiple cells copy is not supported" +msgstr "Kopiering av flertalet celler stöds ej" + +msgid "Outside" +msgstr "Utsida" + +msgid "Layer height" +msgstr "Lager höjd" + +msgid "Wall loops" +msgstr "Antal väggar" + +msgid "Infill density(%)" +msgstr "Ifyllnads densitet(%)" + +msgid "Auto Brim" +msgstr "Auto Brim" + +msgid "Mouse ear" +msgstr "" + +msgid "Outer brim only" +msgstr "Endast yttre brim" + +msgid "Inner brim only" +msgstr "Endast inre kant" + +msgid "Outer and inner brim" +msgstr "Yttre och inre brim" + +msgid "No-brim" +msgstr "Ingen Brim" + +msgid "Outer wall speed" +msgstr "Ytterväggs hastighet" + +msgid "Plate" +msgstr "Platta" + +msgid "Brim" +msgstr "Brim" + +msgid "Object/Part Setting" +msgstr "Objekt/Del Inställningar" + +msgid "Reset parameter" +msgstr "Återställ parameter" + +msgid "Multicolor Print" +msgstr "Multifärgs Utskrift" + +msgid "Line Type" +msgstr "Linje typ" + +msgid "More" +msgstr "Mer" + +msgid "Open Preferences." +msgstr "Öppna inställningar" + +msgid "Open next tip." +msgstr "Öppna nästa tips" + +msgid "Open Documentation in web browser." +msgstr "Öppna dokumentationen i webbläsaren" + +msgid "Color" +msgstr "Färg" + +msgid "Pause" +msgstr "Paus" + +msgid "Template" +msgstr "Mall" + +msgid "Custom" +msgstr "Custom" + +msgid "Pause:" +msgstr "Pausa:" + +msgid "Custom Template:" +msgstr "Anpassad mall:" + +msgid "Custom G-code:" +msgstr "Anpassad G-kod:" + +msgid "Custom G-code" +msgstr "Custom G-kod" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Ange anpassad G-kod som används på det aktuella lagret:" + +msgid "Jump to Layer" +msgstr "Hoppa till lager" + +msgid "Please enter the layer number" +msgstr "Ange lager numret." + +msgid "Add Pause" +msgstr "Lägg till paus" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Infoga ett paus kommando i början av detta lager." + +msgid "Add Custom G-code" +msgstr "Lägg till anpassad G-kod" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Infoga anpassad G-kod i början av detta lager." + +msgid "Add Custom Template" +msgstr "Lägg till anpassad mall" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Infoga mall anpassad G-kod i början av detta lager." + +msgid "Filament " +msgstr "Filament " + +msgid "Change filament at the beginning of this layer." +msgstr "Byt filament i början av detta lager." + +msgid "Delete Pause" +msgstr "Ta bort paus" + +msgid "Delete Custom Template" +msgstr "Radera anpassad mall" + +msgid "Edit Custom G-code" +msgstr "Redigera anpassad G-kod" + +msgid "Delete Custom G-code" +msgstr "Radera anpassad G-kod" + +msgid "Delete Filament Change" +msgstr "Radera filament byte" + +msgid "No printer" +msgstr "Ingen skrivare" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Uppkoppling till servern misslyckades" + +msgid "Check the status of current system services" +msgstr "Kontrollera status för aktuella systemtjänster" + +msgid "code" +msgstr "kod" + +msgid "Failed to connect to cloud service" +msgstr "Det gick inte att ansluta till molntjänsten" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "Klicka på hyperlänken ovan för att se molntjänstens status" + +msgid "Failed to connect to the printer" +msgstr "Uppkoppling till printern misslyckades" + +msgid "Connection to printer failed" +msgstr "Anslutning till skrivaren misslyckades" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Kontrollera nätverksanslutningen för skrivaren och Studio." + +msgid "Connecting..." +msgstr "Sammankopplar..." + +msgid "?" +msgstr " ?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Tom" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Auto Refill" + +msgid "AMS not connected" +msgstr "AMS ej ansluten" + +msgid "Load" +msgstr "Load" + +msgid "Unload" +msgstr "Mata ut" + +msgid "Ext Spool" +msgstr "Ext Spole" + +msgid "Tips" +msgstr "Tips" + +msgid "Guide" +msgstr "Guide" + +msgid "Retry" +msgstr "Försök igen" + +msgid "Calibrating AMS..." +msgstr "Kalibrerar AMS..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "Ett problem uppstod vid kalibrering. Tryck för att se åtgärd." + +msgid "Calibrate again" +msgstr "Kalibrera igen" + +msgid "Cancel calibration" +msgstr "Avbryt kalibrering" + +msgid "Idling..." +msgstr "Tomgång..." + +msgid "Heat the nozzle" +msgstr "Värm upp nozzle" + +msgid "Cut filament" +msgstr "Skär filament" + +msgid "Pull back current filament" +msgstr "Reversera nuvarande filament" + +msgid "Push new filament into extruder" +msgstr "Mata in nytt filament i extrudern" + +msgid "Purge old filament" +msgstr "Rensa gammalt filament" + +msgid "Feed Filament" +msgstr "Mata filament" + +msgid "Confirm extruded" +msgstr "Bekräfta extruderad" + +msgid "Check filament location" +msgstr "Kontrollera filamentets placering" + +msgid "Grab new filament" +msgstr "Ta ett nytt filament" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Välj ett AMS fack och tryck sedan på knappen \"Ladda\" eller \"Mata ut\" för " +"att automatiskt ladda eller mata ut filament." + +msgid "Edit" +msgstr "Redigera" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Alla valda objekt är på den låsta plattan,\n" +"det går inte att auto-placera dessa objekten." + +msgid "No arrangable objects are selected." +msgstr "Inga placerbara objekt är valda." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Denna plattan är låst,\n" +"det går inte att auto-placera på denna plattan." + +msgid "Arranging..." +msgstr "Placerar..." + +msgid "Arranging" +msgstr "Placerar" + +msgid "Arranging canceled." +msgstr "Placering avbruten." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Placering klar, några objekt kan inte placeras. Minska avståndet emellan " +"dessa och försök igen." + +msgid "Arranging done." +msgstr "Placering klar." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Placering misslyckades. Avvikelser hittades när objektets geometri " +"bearbetades." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"Följande objekt har inte placerats då de inte får plats på plattan:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Alla valda objekt är på den låsta plattan,\n" +"det går inte att auto-placera dessa objekten." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Denna plattan är låst,\n" +"det går inte att auto-placera på denna plattan." + +msgid "Orienting..." +msgstr "Placerar..." + +msgid "Orienting" +msgstr "Placerar" + +msgid "Orienting canceled." +msgstr "" + +msgid "Filling" +msgstr "Fyllnad" + +msgid "Bed filling canceled." +msgstr "Byggplattans fyllning avbruten." + +msgid "Bed filling done." +msgstr "Byggplattans fyllning utförd." + +msgid "Searching for optimal orientation" +msgstr "" + +msgid "Orientation search canceled." +msgstr "" + +msgid "Orientation found." +msgstr "" + +msgid "Logging in" +msgstr "Loggar in" + +msgid "Login failed" +msgstr "Inloggning misslyckades" + +msgid "Please check the printer network connection." +msgstr "Kontrollera skrivarens nätverksanslutning." + +msgid "Abnormal print file data. Please slice again." +msgstr "Onormal utskrifts fil data: Vänligen bered igen." + +msgid "Task canceled." +msgstr "Uppgiften avbruten." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"Uppladdningsuppgiften tog slut. Kontrollera nätverksstatusen och försök igen." + +msgid "Cloud service connection failed. Please try again." +msgstr "Anslutningen till molntjänsten misslyckades. Försök igen." + +msgid "Print file not found. please slice again." +msgstr "Det gick inte att hitta utskrifts filen; bered den igen" + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"Utskrifts filen överskrider den högsta tillåtna storleken (1 GB). Förenkla " +"modellen och bered igen" + +msgid "Failed to send the print job. Please try again." +msgstr "Det gick inte att skicka utskriftsjobbet. Var god försök igen." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Det gick inte att ladda upp filen till ftp. Vänligen försök igen." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Kontrollera den aktuella statusen för Bambu Lab servern genom att klicka på " +"länken ovan." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"Storleken på utskrifts filen är för stor. Vänligen justera filstorleken och " +"försök igen." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" +"Utskrifts filen hittades inte; bered den igen och skicka till utskrift." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Det gick inte att ladda upp utskriftsfilen via FTP. Kontrollera " +"nätverksstatusen och försök igen." + +msgid "Sending print job over LAN" +msgstr "Skicka utskriftsjobb via LAN" + +msgid "Sending print job through cloud service" +msgstr "Skicka utskriftsjobb via molntjänst" + +msgid "Print task sending times out." +msgstr "Timeout för sändning av utskriftsuppgift." + +msgid "Service Unavailable" +msgstr "Tjänsten är inte tillgänglig" + +msgid "Unknown Error." +msgstr "Okänt fel" + +msgid "Sending print configuration" +msgstr "Skicka utskrifts konfiguration" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "" +"Framgångsrikt skickat. Kommer automatiskt att hoppa till enhetssidan om %s s" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "Skickat. Hoppar automatiskt till nästa sida in%s s" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "Ett Micro SD-kort måste sättas i innan utskrift via LAN." + +msgid "Sending gcode file over LAN" +msgstr "Skickar G-kod fil över LAN" + +msgid "Sending gcode file to sdcard" +msgstr "Skickar G-kod fil till MicroSD-kort" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Framgångsrikt skickat. Stäng den aktuella sidan i %s s" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Ett Micro SD-kort måste sättas i innan det skickas till skrivaren." + +msgid "Importing SLA archive" +msgstr "Importera SLA arkiv" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"SLA arkivet innehåller inga förinställningar. Aktivera först några " +"förinställningar för SLA skrivare innan du importerar SLA arkivet." + +msgid "Importing canceled." +msgstr "Importen avbröts" + +msgid "Importing done." +msgstr "Import utförd." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"Det importerade SLA arkivet innehöll inga förinställningar. De aktuella SLA " +"förinställningarna användes som reserv." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "" +"Du kan inte ladda ett SLA projekt med ett fler delat objekt på byggplattan" + +msgid "Please check your object list before preset changing." +msgstr "Kontrollera objektlistan innan du ändrar inställningen." + +msgid "Attention!" +msgstr "Observera!" + +msgid "Downloading" +msgstr "Laddar ner" + +msgid "Download failed" +msgstr "Nedladdningen misslyckades" + +msgid "Cancelled" +msgstr "Avbruten" + +msgid "Install successfully." +msgstr "Installationen lyckades" + +msgid "Installing" +msgstr "Installerar" + +msgid "Install failed" +msgstr "Installation misslyckades" + +msgid "Portions copyright" +msgstr "Information om licens" + +msgid "Copyright" +msgstr "Upphovsrätt" + +msgid "License" +msgstr "Licens" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca är licensierad under " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero General Public License, version 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "" + +msgid "Libraries" +msgstr "Bibliotek" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Denna programvara använder komponenter med öppen källkod vars upphovsrätt " +"och andra äganderätt tillhör respektive ägare" + +#, c-format, boost-format +msgid "About %s" +msgstr "Om %s" + +msgid "Snapmaker Orca " +msgstr "" + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "" + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "" + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "" +"PrusaSlicer är ursprungligen baserad på Slic3r av Alessandro Ranellucci." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r skapades av Alessandro Ranellucci med hjälp av många andra " +"medarbetare." + +msgid "Version" +msgstr "Version" + +msgid "AMS Materials Setting" +msgstr "AMS Material Inställning" + +msgid "Confirm" +msgstr "Acceptera" + +msgid "Close" +msgstr "Stäng" + +msgid "Colour" +msgstr "Färg" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Nozzle \n" +"temperatur" + +msgid "max" +msgstr "max" + +msgid "min" +msgstr "min" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "Inmatningsvärdet ska vara större än %1% och mindre än %2%" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "Inställning av AMS-facks information under utskrift stöds inte" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Faktorer för kalibrering av flödesdynamik" + +msgid "PA Profile" +msgstr "PA profil" + +msgid "Factor K" +msgstr "Faktor K" + +msgid "Factor N" +msgstr "Faktor N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "Inställning av information om virtuell plats under utskrift stöds inte" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Är du säker på att du vill rensa filament informationen?" + +msgid "You need to select the material type and color first." +msgstr "Du måste först välja materialtyp och färg." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" + +msgid "Other Color" +msgstr "Annan färg" + +msgid "Custom Color" +msgstr "Anpassa färg" + +msgid "Dynamic flow calibration" +msgstr "Dynamisk flödeskalibrering" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"Nozzelns temperatur och högsta volymhastighet påverkar " +"kalibreringsresultaten. Fyll i samma värden som vid den faktiska utskriften. " +"De kan fyllas i automatiskt genom att välja en filament inställning." + +msgid "Nozzle Diameter" +msgstr "Nozzel diameter" + +msgid "Bed Type" +msgstr "Typ av byggplatta" + +msgid "Nozzle temperature" +msgstr "Nozzel temperatur" + +msgid "Bed Temperature" +msgstr "Byggplattans temperatur" + +msgid "Max volumetric speed" +msgstr "Max volymetrisk hastighet" + +msgid "℃" +msgstr "" + +msgid "Bed temperature" +msgstr "Byggplattans temperatur" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Starta" + +msgid "Next" +msgstr "Nästa" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Kalibreringen klar. Vänligen hitta den mest enhetliga extruderingslinjen på " +"din heta säng som bilden nedan, och fyll värdet på vänster sida i faktor K-" +"inmatningsrutan." + +msgid "Save" +msgstr "Spara" + +msgid "Last Step" +msgstr "Tillbaka" + +msgid "Example" +msgstr "Exempel" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Kalibrerar... %d%%" + +msgid "Calibration completed" +msgstr "Kalibreringen klar" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s stöder inte %s" + +msgid "Dynamic flow Calibration" +msgstr "Dynamisk flödeskalibrering" + +msgid "Step" +msgstr "Steg" + +msgid "AMS Slots" +msgstr "AMS Fack" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Observera: Endast de AMS-fack som är laddade med samma materialtyp kan " +"väljas." + +msgid "Enable AMS" +msgstr "Aktivera AMS" + +msgid "Print with filaments in the AMS" +msgstr "Skriv ut med filament i AMS" + +msgid "Disable AMS" +msgstr "Inaktivera AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Skriv ut med filament på en extern spole" + +msgid "Current Cabin humidity" +msgstr "Current Cabin humidity" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases: when the lid is open or the " +"desiccant pack is changed. It takes a few hours to absorb the moisture, and " +"low temperatures also slow down the process." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Konfigurera vilket AMS-fack som ska användas för filamentet som används i " +"utskriftsjobbet." + +msgid "Filament used in this print job" +msgstr "Filament som används i detta utskriftsjobb" + +msgid "AMS slot used for this filament" +msgstr "AMS fack som används för detta filament" + +msgid "Click to select AMS slot manually" +msgstr "Klicka för att välja AMS fack manuellt" + +msgid "Do not Enable AMS" +msgstr "Aktivera inte AMS" + +msgid "Print using materials mounted on the back of the case" +msgstr "Skriv ut med filament på en extern spole." + +msgid "Print with filaments in ams" +msgstr "Skriv ut med filament i AMS" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Skriv ut med filament på en extern spole" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"När det aktuella materialet tar slut, fortsätter printern att skriva ut " +"material i följande ordning." + +msgid "Group" +msgstr "Grupp" + +msgid "The printer does not currently support auto refill." +msgstr "Printern stöder för närvarande inte automatisk påfyllning." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"AMS filament backup is not enabled; please enable it in the AMS settings." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"If there are two identical filaments in an AMS, AMS filament backup will be " +"enabled. \n" +"(This currently supports automatic supply of consumables with the same " +"brand, material type, and color)" + +msgid "DRY" +msgstr "DRY" + +msgid "WET" +msgstr "WET" + +msgid "AMS Settings" +msgstr "AMS Inställningar" + +msgid "Insertion update" +msgstr "Infoga uppdatering" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"AMS läser automatiskt filament informationen när du sätter in ett nytt Bambu " +"Lab-filament. Det tar ungefär 20 sekunder." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Obs: Om ett nytt filament sätts in under utskriften kommer AMS inte att " +"automatiskt läsa av någon information förrän utskriften är klar." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Vid matning av nytt filament, AMS läser inte av dess information automatiskt " +"utan lämnar det blankt för dig att fylla i manuellt." + +msgid "Power on update" +msgstr "Slå på uppdatering" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"AMS läser automatiskt informationen om insatt Bambu Lab filament vid " +"uppstart. Det tar cirka 1 minut. Läsprocessen kommer att rulla " +"filamentspolarna." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"AMS kommer inte att automatiskt läsa informationen ifrån imatat filament " +"under uppstart och senast använd information kommer att användas." + +msgid "Update remaining capacity" +msgstr "Uppdatera den återstående kapaciteten" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"AMS kommer att uppskatta Bambu filamentets återstående kapacitet när " +"filament informationen har uppdaterats. Under utskrift uppdateras den " +"återstående kapaciteten automatiskt." + +msgid "AMS filament backup" +msgstr "AMS filament backup" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"AMS fortsätter automatiskt till en annan spole med samma filament egenskaper " +"när det aktuella filamentet tar slut." + +msgid "Air Printing Detection" +msgstr "Air Printing Detection" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." + +msgid "File" +msgstr "Fil" + +msgid "Calibration" +msgstr "Kalibrering" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Det gick inte att ladda ned plugin-programmet. Kontrollera dina " +"brandväggsinställningar och vpn-programvara och försök igen." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Det gick inte att installera plugin-programmet. Kontrollera om den är " +"blockerad eller har raderats av antivirusprogram." + +msgid "click here to see more info" +msgstr "Klicka här för att se mer information" + +msgid "Please home all axes (click " +msgstr "Nollställ alla axlar (tryck " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") för att lokalisera verktygshuvudets position. Detta förhindrar att enheten " +"rör sig utanför den utskrivbara gränsen och orsakar slitage på utrustningen." + +msgid "Go Home" +msgstr "Gå hem" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "Ett fel uppstod. För lite system minne eller en bugg i programmet" + +msgid "Please save project and restart the program. " +msgstr "Spara projekt och starta om programmet. " + +msgid "Processing G-Code from Previous file..." +msgstr "Processera G-Code från Föregående fil…" + +msgid "Slicing complete" +msgstr "Beredning komplett" + +msgid "Access violation" +msgstr "Åtkomstfel" + +msgid "Illegal instruction" +msgstr "Ogiltligt kommando" + +msgid "Divide by zero" +msgstr "Dela med noll" + +msgid "Overflow" +msgstr "Överflöde" + +msgid "Underflow" +msgstr "Underflöde" + +msgid "Floating reserved operand" +msgstr "Reservations operand med flytande värde" + +msgid "Stack overflow" +msgstr "Lagra överflöde" + +msgid "Running post-processing scripts" +msgstr "Kör efterbearbetnings skript" + +msgid "Successfully executed post-processing script" +msgstr "Successfully executed post-processing script" + +msgid "Unknown error occured during exporting G-code." +msgstr "" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "" + +msgid "Unknown error when export G-code." +msgstr "Okänt fel vid exportering av G-code." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Misslyckades att spara gcode fil.\n" +"Felmeddelande: %1%.\n" +"Source file %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Kopiering av den tillfälliga G-koden till utgången G-kod misslyckades." + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Planerar uppladdning till `%1%`. Se fönster -> Kö för uppladdning av " +"utskriftsvärd" + +msgid "Device" +msgstr "Enhet" + +msgid "Task Sending" +msgstr "Task Sending" + +msgid "Task Sent" +msgstr "Task Sent" + +msgid "Edit multiple printers" +msgstr "" + +msgid "Select connected printers (0/6)" +msgstr "" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "" + +msgid "Offline" +msgstr "Offline" + +msgid "No task" +msgstr "No task" + +msgid "View" +msgstr "Vy" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "" + +msgid "Device Name" +msgstr "Device Name" + +msgid "Task Name" +msgstr "Task Name" + +msgid "Device Status" +msgstr "Device Status" + +msgid "Actions" +msgstr "Actions" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" + +msgid "Add" +msgstr "Lägg till" + +msgid "Idle" +msgstr "Inaktiv" + +msgid "Printing" +msgstr "Utskrift pågår" + +msgid "Upgrading" +msgstr "" + +msgid "Incompatible" +msgstr "Inkompatibel" + +msgid "syncing" +msgstr "" + +msgid "Printing Finish" +msgstr "" + +msgid "Printing Failed" +msgstr "" + +msgid "Printing Pause" +msgstr "" + +msgid "Prepare" +msgstr "Förbered" + +msgid "Slicing" +msgstr "Bereder" + +msgid "Pending" +msgstr "" + +msgid "Sending" +msgstr "Skickar" + +msgid "Sending Finish" +msgstr "" + +msgid "Sending Cancel" +msgstr "" + +msgid "Sending Failed" +msgstr "" + +msgid "Print Success" +msgstr "" + +msgid "Print Failed" +msgstr "" + +msgid "Removed" +msgstr "" + +msgid "Resume" +msgstr "Återuppta" + +msgid "Stop" +msgstr "Stopp" + +msgid "Task Status" +msgstr "Task Status" + +msgid "Sent Time" +msgstr "Sent Time" + +msgid "There are no tasks to be sent!" +msgstr "There are no tasks to be sent!" + +msgid "No historical tasks!" +msgstr "No historical tasks!" + +msgid "Loading..." +msgstr "Laddar..." + +msgid "No AMS" +msgstr "No AMS" + +msgid "Send to Multi-device" +msgstr "Send to Multi-device" + +msgid "Preparing print job" +msgstr "Förbereder utskriftsjobb" + +msgid "Abnormal print file data. Please slice again" +msgstr "Onormal utskrifts fil data. Vänligen bered igen" + +msgid "There is no device available to send printing." +msgstr "" + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" + +msgid "Use External Spool" +msgstr "Use External Spool" + +msgid "Use AMS" +msgstr "Use AMS" + +msgid "Select Printers" +msgstr "Select Printers" + +msgid "Ams Status" +msgstr "AMS Status" + +msgid "Printing Options" +msgstr "Printing Options" + +msgid "Bed Leveling" +msgstr "Justering av Byggplattan" + +msgid "Timelapse" +msgstr "Timelapse" + +msgid "Flow Dynamic Calibration" +msgstr "" + +msgid "Send Options" +msgstr "Send Options" + +msgid "Send to" +msgstr "" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"printers at the same time. (It depends on how many devices can undergo " +"heating at the same time.)" + +msgid "Wait" +msgstr "Wait" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"minute each batch. (It depends on how long it takes to complete heating.)" + +msgid "Send" +msgstr "Skicka" + +msgid "Name is invalid;" +msgstr "Namnet är ogiltligt;" + +msgid "illegal characters:" +msgstr "Ogiltliga tecken:" + +msgid "illegal suffix:" +msgstr "Ogiltlig ändelse:" + +msgid "The name is not allowed to be empty." +msgstr "Namn fältet får inte vara tomt." + +msgid "The name is not allowed to start with space character." +msgstr "Namnet får inte börja med mellanrum." + +msgid "The name is not allowed to end with space character." +msgstr "Namnet får inte avslutas med mellanrum." + +msgid "The name length exceeds the limit." +msgstr "Namnlängden överskrider gränsen." + +msgid "Origin" +msgstr "Ursprung" + +msgid "Size in X and Y of the rectangular plate." +msgstr "X & Y storlek av den rektangulära plattan." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "" +"Avståndet av 0,0 G-code koordineras ifrån främre vänstra hörnet av " +"rektangeln." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Diametern av byggplattan. Det utgår ifrån (0,0) är lokaliserad i centrum." + +msgid "Rectangular" +msgstr "Rektangulär" + +msgid "Circular" +msgstr "Cirkulär" + +msgid "Load shape from STL..." +msgstr "Ladda form ifrån STL..." + +msgid "Settings" +msgstr "Inställningar" + +msgid "Texture" +msgstr "Textur" + +msgid "Remove" +msgstr "Ta bort" + +msgid "Not found:" +msgstr "Ej funnen:" + +msgid "Model" +msgstr "Modell" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Välj en STL fil för att importera bygglattans form ifrån:" + +msgid "Invalid file format." +msgstr "Ogiltligt fil-format." + +msgid "Error! Invalid model" +msgstr "Fel! Ogiltlig model" + +msgid "The selected file contains no geometry." +msgstr "Den valda filen saknar geometri." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"Den valda filen innehåller flera osammanhängande område. Denna fil stöds " +"inte." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "Välj fil att importera byggplattans textur från (PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Välj en STL fil att importera byggplattans model från:" + +msgid "Bed Shape" +msgstr "Byggplattans Form" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"Den rekommenderade lägsta temperaturen är lägre än 190 grader eller den " +"rekommenderade max temperaturen är högre än 300 grader.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" + +msgid "Please check.\n" +msgstr "Kontrollera.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"Nozzeln kan blockeras när temperaturen är utanför rekommenderad intervall.\n" +"Säkerställ om temperaturen ska användas vid utskrift.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"Rekommenderad nozzel temperatur med denna filament typ är [%d, %d] grader " +"celius" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"För liten max volymhastighet.\n" +"Värdet återställdes till 0,5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"Current chamber temperature is higher than the material's safe temperature; " +"this may result in material softening and nozzle clogs.The maximum safe " +"temperature for the material is %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"För liten lagerhöjd.\n" +"Den har återställts till 0.2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"För litet avstånd för strykning.\n" +"Återställ till 0.1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"Noll som första lagerhöjd är ogiltligt.\n" +"\n" +"Första lagerhöjden återställs till 0.2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Den här inställningen används endast för optimering av modellstorlek med " +"litet värde i vissa fall.\n" +"Till exempel när modellstorleken har små fel och svåra att montera.\n" +"För justering av stor storlek, använd modellskalnings funktionen.\n" +"\n" +"Värdet kommer att återställas till 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"För stor elefantfots kompensation är orimlig.\n" +"Om det finns en elefantfotseffekt, kontrollera andra inställningar.\n" +"Till exempel, byggytans temperatur kan vara för hög.\n" +"\n" +"Värdet kommer att återställas till 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"Prime torn fungerar inte med Adaptiv Lagerhöjd eller när Oberoende Lagerhöjd " +"på Support är aktiverad.\n" +"Vilken ska behållas?\n" +"JA - Behåll Prime Torn\n" +"NEJ - Behåll Adaptiv Lagerhöjd och Oberoende Lagerhöjd på Support" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"Prime Torn fungerar inte med Adaptiv Lagerhöjd aktiverad.\n" +"Vilken ska behållas?\n" +"JA - Behåll Prime Torn\n" +"NEJ - Behåll Adaptiv Lagerhöjd" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"Prime Torn fungerar inte med Oberoende Lagerhöjd på support är aktiverad.\n" +"Vilken ska behållas?\n" +"JA - Behåll Prime Torn\n" +"NEJ - Behåll Oberoende Lagerhöjd på support" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Vid utskrift av objekt kan extrudern kollidera med en skirt.\n" +"Återställ därför skirt lagret till 1 för att undvika kollisioner." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Spiralläget fungerar endast när vägg varv är 1, support är inaktiverat, top " +"skalets lager är 0, gles ifyllnad är 0 och timelapse typen är traditionell." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " Maskiner med I3-struktur kan dock inte generera timelapse videor." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Ändra dessa inställningar automatiskt? \n" +"JA -Ändra dessa inställningar och möjliggör Spiral läge automatiskt\n" +"NEJ -Avbryt Spiral läge denna gång" + +msgid "Auto bed leveling" +msgstr "Auto justera byggplattan" + +msgid "Heatbed preheating" +msgstr "Byggplattan förvärms" + +msgid "Sweeping XY mech mode" +msgstr "Sveper XY mech-läge" + +msgid "Changing filament" +msgstr "Byter filament" + +msgid "M400 pause" +msgstr "M400 paus" + +msgid "Paused due to filament runout" +msgstr "Pausad på grund av filament slut" + +msgid "Heating hotend" +msgstr "Värmer hotend" + +msgid "Calibrating extrusion" +msgstr "Kalibrerar extrudering" + +msgid "Scanning bed surface" +msgstr "Skannar byggplattan" + +msgid "Inspecting first layer" +msgstr "Inspekterar första lager" + +msgid "Identifying build plate type" +msgstr "Identifiering av byggplatta" + +msgid "Calibrating Micro Lidar" +msgstr "Kalibrerar Micro Lidar" + +msgid "Homing toolhead" +msgstr "Nollställer verktygshuvudet" + +msgid "Cleaning nozzle tip" +msgstr "Rengör nozzle spetsen" + +msgid "Checking extruder temperature" +msgstr "Kontrollerar extruderings temperatur" + +msgid "Printing was paused by the user" +msgstr "Utskriften pausades av användaren" + +msgid "Pause of front cover falling" +msgstr "Paus av front luckan faller" + +msgid "Calibrating the micro lida" +msgstr "Kalibrerar Micro Lidar" + +msgid "Calibrating extrusion flow" +msgstr "Kalibrerar extruderings flödet" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Pausad på grund av fel i nozzle temperaturen" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Pausad på grund av fel i byggplattans temperatur" + +msgid "Filament unloading" +msgstr "Utmatar filament" + +msgid "Skip step pause" +msgstr "Hoppa över steg paus" + +msgid "Filament loading" +msgstr "Laddning av filament" + +msgid "Motor noise calibration" +msgstr "Kalibrering av motorljud" + +msgid "Paused due to AMS lost" +msgstr "Pausad på grund av att AMS förlorats" + +msgid "Paused due to low speed of the heat break fan" +msgstr "Pausad på grund av låg hastighet på heat break fläkten" + +msgid "Paused due to chamber temperature control error" +msgstr "Pausad på grund av fel i styrningen av kammar temperaturen" + +msgid "Cooling chamber" +msgstr "Kyler kammare" + +msgid "Paused by the Gcode inserted by user" +msgstr "Pausad av G-koden som infogats av användaren" + +msgid "Motor noise showoff" +msgstr "Uppvisning av motorljud" + +msgid "Nozzle filament covered detected pause" +msgstr "Filament på nozzel upptäckt paus" + +msgid "Cutter error pause" +msgstr "Fel på skärare paus" + +msgid "First layer error pause" +msgstr "Fel på första lagret paus" + +msgid "Nozzle clog pause" +msgstr "Stopp i nozzel paus" + +msgid "Unknown" +msgstr "Okänd" + +msgid "Fatal" +msgstr "Allvarligt" + +msgid "Serious" +msgstr "Allvarlig" + +msgid "Common" +msgstr "Vanlig" + +msgid "Update successful." +msgstr "Uppdateringen lyckades." + +msgid "Downloading failed." +msgstr "Nedladdning misslyckad." + +msgid "Verification failed." +msgstr "Verifikation misslyckade." + +msgid "Update failed." +msgstr "Uppdatering misslyckades." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃. In order to avoid extruder clogging, low temperature filament (PLA/PETG/" +"TPU) is not allowed to be loaded." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Low temperature filament (PLA/PETG/TPU) is loaded in the extruder. In order " +"to avoid extruder clogging, it is not allowed to set the chamber temperature " +"above 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated, and the target chamber temperature will " +"automatically be set to 0℃." + +msgid "Failed to start printing job" +msgstr "Det gick inte att starta utskriftsjobbet" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "" +"Denna kalibrering stöder inte den för tillfället valda nozzle diametern" + +msgid "Current flowrate cali param is invalid" +msgstr "Aktuell flödeshastighets kalibrerings parameter är ogiltig" + +msgid "Selected diameter and machine diameter do not match" +msgstr "Vald diameter och maskinens diameter stämmer inte överens" + +msgid "Failed to generate cali gcode" +msgstr "Misslyckades med att generera cali G kod" + +msgid "Calibration error" +msgstr "Fel vid kalibrering" + +msgid "TPU is not supported by AMS." +msgstr "TPU stöds inte av AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF stöds inte av AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Fuktig PVA blir flexibel och fastnar i AMS, var noga med att torka den väl " +"före användning." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"CF/GF-trådar är hårda och spröda, så de kan lätt gå sönder eller fastna i en " +"AMS; använd dem med försiktighet." + +msgid "default" +msgstr "standard" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" + +msgid "Search gcode placeholders" +msgstr "" + +msgid "Add selected placeholder to G-code" +msgstr "" + +msgid "Select placeholder" +msgstr "" + +msgid "[Global] Slicing State" +msgstr "" + +msgid "Read Only" +msgstr "" + +msgid "Read Write" +msgstr "" + +msgid "Slicing State" +msgstr "" + +msgid "Print Statistics" +msgstr "" + +msgid "Objects Info" +msgstr "" + +msgid "Dimensions" +msgstr "" + +msgid "Temperatures" +msgstr "" + +msgid "Timestamps" +msgstr "" + +#, boost-format +msgid "Specific for %1%" +msgstr "" + +msgid "Presets" +msgstr "Förinställningar" + +msgid "Print settings" +msgstr "Utskrifts inställningar" + +msgid "Filament settings" +msgstr "Filament inställningar" + +msgid "SLA Materials settings" +msgstr "" + +msgid "Printer settings" +msgstr "Skrivarens inställningar" + +msgid "parameter name" +msgstr "Parameter namn" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s kan inte vara procent" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "Värdet %s är utanför intervallet, fortsätta?" + +msgid "Parameter validation" +msgstr "Parameter validering" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "Value %s is out of range. The valid range is from %d to %d." + +msgid "Value is out of range." +msgstr "Värdet är utanför intervallet." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"Det är %s%% eller %s %s?\n" +"JA för %s%%, \n" +"NEJ för %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" + +msgid "Input value is out of range" +msgstr "" + +msgid "Some extension in the input is invalid" +msgstr "" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Ogiltligt format. Förväntat vector format: \"%1%\"" + +msgid "Layer Height" +msgstr "Lagerhöjd" + +msgid "Line Width" +msgstr "Linjebredd" + +msgid "Fan Speed" +msgstr "Fläkt Hastighet" + +msgid "Temperature" +msgstr "Temperatur" + +msgid "Flow" +msgstr "Flöde" + +msgid "Tool" +msgstr "Verktyg" + +msgid "Layer Time" +msgstr "Lager tid" + +msgid "Layer Time (log)" +msgstr "Lagertid (logg)" + +msgid "Height: " +msgstr "Höjd: " + +msgid "Width: " +msgstr "Bredd: " + +msgid "Speed: " +msgstr "Hastighet: " + +msgid "Flow: " +msgstr "Flöde: " + +msgid "Layer Time: " +msgstr "Lager Tid: " + +msgid "Fan: " +msgstr "Fläkthastighet: " + +msgid "Temperature: " +msgstr "Temperatur: " + +msgid "Loading G-codes" +msgstr "Laddar G-koder" + +msgid "Generating geometry vertex data" +msgstr "Genererar geometrisk vertex data" + +msgid "Generating geometry index data" +msgstr "Genererar geometrisk index data" + +msgid "Statistics of All Plates" +msgstr "Statistik för alla plattor" + +msgid "Display" +msgstr "Visa" + +msgid "Flushed" +msgstr "Rensad" + +msgid "Tower" +msgstr "Tower" + +msgid "Total" +msgstr "Totalt" + +msgid "Total Estimation" +msgstr "Total Uppskattning" + +msgid "Total time" +msgstr "Total tid" + +msgid "Total cost" +msgstr "Total cost" + +msgid "up to" +msgstr "upp till" + +msgid "above" +msgstr "över" + +msgid "from" +msgstr "från" + +msgid "Color Scheme" +msgstr "Färgschema" + +msgid "Time" +msgstr "Tid" + +msgid "Percent" +msgstr "Procent" + +msgid "Used filament" +msgstr "Använt filament" + +msgid "Layer Height (mm)" +msgstr "Lagerhöjd (mm)" + +msgid "Line Width (mm)" +msgstr "Linje Bredd (mm)" + +msgid "Speed (mm/s)" +msgstr "Hastighet (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Fläkt hastighet (%)" + +msgid "Temperature (°C)" +msgstr "Temperatur (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Volymetrisk flödeshastighet (mm³/s)" + +msgid "Travel" +msgstr "Flytta" + +msgid "Seams" +msgstr "Sömmar" + +msgid "Retract" +msgstr "Reversera" + +msgid "Unretract" +msgstr "Reversera Ej" + +msgid "Filament Changes" +msgstr "Filament byten" + +msgid "Wipe" +msgstr "Torka" + +msgid "Options" +msgstr "Val" + +msgid "travel" +msgstr "flytta" + +msgid "Extruder" +msgstr "Extruder" + +msgid "Filament change times" +msgstr "Filament bytes tider" + +msgid "Cost" +msgstr "Kostnad" + +msgid "Color change" +msgstr "Färg byte" + +msgid "Print" +msgstr "Skriv ut" + +msgid "Printer" +msgstr "Skrivare" + +msgid "Custom g-code" +msgstr "" + +msgid "ToolChange" +msgstr "" + +msgid "Time Estimation" +msgstr "Beräknad tid" + +msgid "Normal mode" +msgstr "Normalt läge" + +msgid "Total Filament" +msgstr "Total Filament" + +msgid "Model Filament" +msgstr "Model Filament" + +msgid "Prepare time" +msgstr "Förbered tid" + +msgid "Model printing time" +msgstr "Utskriftstid för modellen" + +msgid "Switch to silent mode" +msgstr "Ändra till tyst läge" + +msgid "Switch to normal mode" +msgstr "Ändra till normal läge" + +msgid "Variable layer height" +msgstr "Variabel lagerhöjd" + +msgid "Adaptive" +msgstr "Adaptiv" + +msgid "Quality / Speed" +msgstr "Kvalitet/Hastighet" + +msgid "Smooth" +msgstr "Smooth" + +msgid "Radius" +msgstr "Radie" + +msgid "Keep min" +msgstr "Håll minimal" + +msgid "Left mouse button:" +msgstr "Vänster musknapp:" + +msgid "Add detail" +msgstr "Lägg till detalj" + +msgid "Right mouse button:" +msgstr "Höger musknapp:" + +msgid "Remove detail" +msgstr "Ta bort detalj" + +msgid "Shift + Left mouse button:" +msgstr "Shift + Vänster musknapp" + +msgid "Reset to base" +msgstr "Återställ till basen" + +msgid "Shift + Right mouse button:" +msgstr "Shift+Höger musknapp:" + +msgid "Smoothing" +msgstr "Utjämning" + +msgid "Mouse wheel:" +msgstr "Mus hjul:" + +msgid "Increase/decrease edit area" +msgstr "Öka/minska redigeringsområdet" + +msgid "Sequence" +msgstr "Sekvens" + +msgid "Mirror Object" +msgstr "Spegelvänd Objektet" + +msgid "Tool Move" +msgstr "Verktygs Förflyttning" + +msgid "Tool Rotate" +msgstr "Verktygs rotation" + +msgid "Move Object" +msgstr "Flytta Objektet" + +msgid "Auto Orientation options" +msgstr "Auto Placerings val" + +msgid "Enable rotation" +msgstr "Aktivera rotation" + +msgid "Optimize support interface area" +msgstr "Optimisera support områdets gränssnitts yta" + +msgid "Orient" +msgstr "Placera" + +msgid "Arrange options" +msgstr "Arrangera val" + +msgid "Spacing" +msgstr "Mellanrum" + +msgid "0 means auto spacing." +msgstr "0 means auto spacing." + +msgid "Auto rotate for arrangement" +msgstr "Auto rotera för arrangemang" + +msgid "Allow multiple materials on same plate" +msgstr "Tillåt multipla material på samma byggplatta" + +msgid "Avoid extrusion calibration region" +msgstr "Undvik kalibrerings området" + +msgid "Align to Y axis" +msgstr "Justera mot Y-axeln" + +msgid "Add plate" +msgstr "Lägg till byggplata" + +msgid "Auto orient" +msgstr "Auto placera" + +msgid "Arrange all objects" +msgstr "Ordna alla objekt" + +msgid "Arrange objects on selected plates" +msgstr "Ordna alla objekt på vald platta" + +msgid "Split to objects" +msgstr "Dela upp till objekt" + +msgid "Split to parts" +msgstr "Dela upp i delar" + +msgid "Assembly View" +msgstr "Monterings vy" + +msgid "Select Plate" +msgstr "Välj Byggplatta" + +msgid "Assembly Return" +msgstr "Monterings retur" + +msgid "return" +msgstr "tillbaka" + +msgid "Paint Toolbar" +msgstr "Färgläggningsverktyg" + +msgid "Explosion Ratio" +msgstr "Explosions Förhållande" + +msgid "Section View" +msgstr "Sektionsvy" + +msgid "Assemble Control" +msgstr "Monterings Kontroll" + +msgid "Total Volume:" +msgstr "Total Volym:" + +msgid "Assembly Info" +msgstr "Monterings Info" + +msgid "Volume:" +msgstr "Volym:" + +msgid "Size:" +msgstr "Storlek:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" + +msgid "An object is layed over the boundary of plate." +msgstr "Ett objekt är placerad över byggplattans begränsningar." + +msgid "A G-code path goes beyond the max print height." +msgstr "En G-kod bana går utöver den maximala utskriftshöjden." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "En G-kod väg passerar över byggplattans begränsningar." + +msgid "Only the object being edit is visible." +msgstr "Bara objektet som editeras är synligt." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Ett objekt ligger över plattans gränser eller överskrider höjdgränsen.\n" +"Lös problemet genom att flytta det helt på eller av plattan, och bekräfta " +"att höjden ligger inom byggvolymen." + +msgid "Calibration step selection" +msgstr "Val av kalibreringssteg" + +msgid "Micro lidar calibration" +msgstr "Micro Lidar Kalibrering" + +msgid "Bed leveling" +msgstr "Justering av Byggplattan" + +msgid "Vibration compensation" +msgstr "Vibrations kompensation" + +msgid "Motor noise cancellation" +msgstr "Brusreducering av motorer" + +msgid "Calibration program" +msgstr "Kalibrerings program" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"Kalibreringsprogrammet avläser status på enheten för att automatiskt " +"minimera avvikelser. \n" +"Detta gör att enheten kan fungera optimalt." + +msgid "Calibration Flow" +msgstr "Kalibrerings Flöde" + +msgid "Start Calibration" +msgstr "Starta Kalibrering" + +msgid "Completed" +msgstr "Slutförd" + +msgid "Calibrating" +msgstr "Kalibrerar" + +msgid "No step selected" +msgstr "Inget steg valt" + +msgid "Auto-record Monitoring" +msgstr "Automatisk inspelning av övervakning" + +msgid "Go Live" +msgstr "Sänd live" + +msgid "Liveview Retry" +msgstr "Försök igen med Liveview" + +msgid "Resolution" +msgstr "Upplösning" + +msgid "Enable" +msgstr "Aktivera" + +msgid "Hostname or IP" +msgstr "" + +msgid "Custom camera source" +msgstr "" + +msgid "Show \"Live Video\" guide page." +msgstr "Visa sidan \"Live Video\"." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Anslut skrivare (LAN)" + +msgid "Please input the printer access code:" +msgstr "Ange skrivarens åtkomstkod:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Du hittar den i ”Inställningar> Nätverk> Anslutningskod”\n" +"på skrivaren, som visas i figuren:" + +msgid "Invalid input." +msgstr "Ogiltig inmatning" + +msgid "New Window" +msgstr "Nytt fönster" + +msgid "Open a new window" +msgstr "Öppna ett nytt fönster" + +msgid "Application is closing" +msgstr "Begäran avslutas" + +msgid "Closing Application while some presets are modified." +msgstr "Stänger Begäran medans vissa inställningar ändrats." + +msgid "Logging" +msgstr "Loggar" + +msgid "Preview" +msgstr "Förhandsvisning" + +msgid "Multi-device" +msgstr "Multi-device" + +msgid "Project" +msgstr "Projekt" + +msgid "Yes" +msgstr "Ja" + +msgid "No" +msgstr "Nej" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "avslutas innan en ny modell skapas. Vill du fortsätta?" + +msgid "Slice plate" +msgstr "Bered plattan" + +msgid "Print plate" +msgstr "Skriv ut byggplattan" + +msgid "Slice all" +msgstr "Bered allt" + +msgid "Export G-code file" +msgstr "Exportera G-kod filen" + +msgid "Export plate sliced file" +msgstr "Exportera byggplattans beredda fil" + +msgid "Export all sliced file" +msgstr "Exportera alla beredda filer" + +msgid "Print all" +msgstr "Skriv ut allt" + +msgid "Send all" +msgstr "Skicka alla" + +msgid "Keyboard Shortcuts" +msgstr "Kortkommando" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Visa lista över kortkommandon" + +msgid "Setup Wizard" +msgstr "Installationsguide" + +msgid "Show Configuration Folder" +msgstr "Visa Konfigurations Mapp" + +msgid "Show Tip of the Day" +msgstr "Visa dagens tips" + +msgid "Check for Update" +msgstr "Sök efter Uppdatering" + +msgid "Open Network Test" +msgstr "Öppna nätverks test" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&Om %s" + +msgid "Upload Models" +msgstr "Ladda upp modeller" + +msgid "Download Models" +msgstr "Ladda ner modeller" + +msgid "Default View" +msgstr "Standard Vy" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Topplager" + +msgid "Top View" +msgstr "Vy Top" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Botten" + +msgid "Bottom View" +msgstr "Vy Botten" + +msgid "Front" +msgstr "Framifrån" + +msgid "Front View" +msgstr "Vy Framifrån" + +msgid "Rear" +msgstr "Bakom" + +msgid "Rear View" +msgstr "Vy Bakifrån" + +msgid "Left" +msgstr "Vänster" + +msgid "Left View" +msgstr "Vy Vänster" + +msgid "Right" +msgstr "Höger" + +msgid "Right View" +msgstr "Vy Höger" + +msgid "Start a new window" +msgstr "Starta ett nytt fönster" + +msgid "New Project" +msgstr "Nytt Pojekt" + +msgid "Start a new project" +msgstr "Skapa nytt projekt" + +msgid "Open a project file" +msgstr "Öppna en projekt fil" + +msgid "Recent projects" +msgstr "Senaste projekten" + +msgid "Save Project" +msgstr "Spara Projekt" + +msgid "Save current project to file" +msgstr "Spara nuvarande projekt till fil" + +msgid "Save Project as" +msgstr "Spara Projekt som" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Spara nuvarande projekt som" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Importera 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Ladda modell" + +msgid "Import Zip Archive" +msgstr "" + +msgid "Load models contained within a zip archive" +msgstr "" + +msgid "Import Configs" +msgstr "Importera konfiguration" + +msgid "Load configs" +msgstr "Ladda konfiguration" + +msgid "Import" +msgstr "Importera" + +msgid "Export all objects as one STL" +msgstr "Exportera alla objekt som en STL" + +msgid "Export all objects as STLs" +msgstr "Exportera alla objekt som STL" + +msgid "Export Generic 3MF" +msgstr "Exportera generisk 3mf" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Exportera 3mf fil utan några 3mf-tillägg" + +msgid "Export current sliced file" +msgstr "Exportera aktuell beredd fil" + +msgid "Export all plate sliced file" +msgstr "Exportera alla beredda filer" + +msgid "Export G-code" +msgstr "Exportera G-kod" + +msgid "Export current plate as G-code" +msgstr "Exportera aktuell byggplatta som G-kod" + +msgid "Export Preset Bundle" +msgstr "" + +msgid "Export current configuration to files" +msgstr "Exportera aktuell konfiguration till filer" + +msgid "Export" +msgstr "Exportera" + +msgid "Quit" +msgstr "Avsluta" + +msgid "Undo" +msgstr "Ångra" + +msgid "Redo" +msgstr "Gör om" + +msgid "Cut selection to clipboard" +msgstr "Klipp ut markeringen till urklipp" + +msgid "Copy" +msgstr "Kopiera" + +msgid "Copy selection to clipboard" +msgstr "Kopiera markeringen till urklipp" + +msgid "Paste" +msgstr "Klistra in" + +msgid "Paste clipboard" +msgstr "Klistra in urklipp" + +msgid "Delete selected" +msgstr "Radera vald" + +msgid "Deletes the current selection" +msgstr "Radera vald markering" + +msgid "Delete all" +msgstr "Radera allt" + +msgid "Deletes all objects" +msgstr "Radera alla objekt" + +msgid "Clone selected" +msgstr "Kopia vald" + +msgid "Clone copies of selections" +msgstr "Kopiera markeringen" + +msgid "Select all" +msgstr "Välj allt" + +msgid "Selects all objects" +msgstr "Välj alla objekt" + +msgid "Deselect all" +msgstr "Avmarkera allt" + +msgid "Deselects all objects" +msgstr "Avmarkera alla objekt" + +msgid "Use Perspective View" +msgstr "Använd Perspektiv Vy" + +msgid "Use Orthogonal View" +msgstr "Använd Ortogonal Vy" + +msgid "Show &G-code Window" +msgstr "" + +msgid "Show g-code window in Previce scene" +msgstr "" + +msgid "Show 3D Navigator" +msgstr "" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "" + +msgid "Reset Window Layout" +msgstr "" + +msgid "Reset to default window layout" +msgstr "" + +msgid "Show &Labels" +msgstr "Visa & Etiketter" + +msgid "Show object labels in 3D scene" +msgstr "Visa objekt etiketter i 3D-scenen" + +msgid "Show &Overhang" +msgstr "Visa & Överhäng" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Visa objektets överhäng i 3D-scen" + +msgid "Preferences" +msgstr "Inställningar" + +msgid "Help" +msgstr "Hjälp" + +msgid "Temperature Calibration" +msgstr "Kalibrering av temperatur" + +msgid "Pass 1" +msgstr "Pass 1" + +msgid "Flow rate test - Pass 1" +msgstr "Test av flödeshastighet - Godkänt 1" + +msgid "Pass 2" +msgstr "Pass 2" + +msgid "Flow rate test - Pass 2" +msgstr "Test av flödeshastighet - Godkänt 2" + +msgid "Flow rate" +msgstr "Flödeshastighet" + +msgid "Pressure advance" +msgstr "Pressure advance" + +msgid "Retraction test" +msgstr "Retraction test" + +msgid "Orca Tolerance Test" +msgstr "Orca Tolerance Test" + +msgid "Max flowrate" +msgstr "Max flödes hastighet" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Mer..." + +msgid "Tutorial" +msgstr "Guide" + +msgid "Calibration help" +msgstr "Hjälp med kalibrering" + +msgid "More calibrations" +msgstr "Fler kalibreringar" + +msgid "&Open G-code" +msgstr "&Öppna G-kod" + +msgid "Open a G-code file" +msgstr "Öppna en G-kod fil" + +msgid "Re&load from Disk" +msgstr "Ladda om från disk" + +msgid "Reload the plater from disk" +msgstr "Ladda om plattan från disken" + +msgid "Export &Toolpaths as OBJ" +msgstr "Exportera &Toolpaths som OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Exportera toolpaths som OBJ" + +msgid "Open &Slicer" +msgstr "Öppna &Studio" + +msgid "Open Slicer" +msgstr "Öppna Studio" + +msgid "&Quit" +msgstr "&Avsluta" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Avsluta %s" + +msgid "&File" +msgstr "&Fil" + +msgid "&View" +msgstr "&Visa" + +msgid "&Help" +msgstr "&Hjälp" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "Det finns en fil med samma namn: %s. Vill du åsidosätta den?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "Det finns en konfiguration med samma namn: %s. Vill du åsidosätta den?" + +msgid "Overwrite file" +msgstr "Skriv över fil" + +msgid "Yes to All" +msgstr "Ja till allt" + +msgid "No to All" +msgstr "Nej till allt" + +msgid "Choose a directory" +msgstr "Välj ett register" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +msgstr[1] "" + +msgid "Export result" +msgstr "Export resultat" + +msgid "Select profile to load:" +msgstr "Välj den profil som ska laddas:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +msgstr[1] "" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" + +msgid "Import result" +msgstr "Importera resultat" + +msgid "File is missing" +msgstr "Filen saknas" + +msgid "The project is no longer available." +msgstr "Detta projekt är inte tillgängligt." + +msgid "Filament Settings" +msgstr "Filament Inställningar" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Vill du synkronisera dina personuppgifter från Bambu Cloud? \n" +"Den innehåller följande information:\n" +"1. Process inställningar\n" +"2. Inställningar av filament\n" +"3. Inställningar för skrivare" + +msgid "Synchronization" +msgstr "Synkronisering" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "Enhetenen kan inte hantera fler konversationer. Försök igen senare." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" +"Spelaren fungerar inte som den ska. Vänligen installera om system spelaren." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"Spelaren är inte laddad; klicka på \"play\" knappen för att försöka igen." + +msgid "Please confirm if the printer is connected." +msgstr "Kontrollera om printern är ansluten." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"Printern är upptagen med att ladda ner. Vänta tills nedladdningen är klar." + +msgid "Printer camera is malfunctioning." +msgstr "Printerns kamera fungerar inte som den ska." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Ett problem har uppstått. Uppdatera printerns programvara och försök igen." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." + +msgid "Please enter the IP of printer to connect." +msgstr "Ange printerns IP för att ansluta." + +msgid "Initializing..." +msgstr "Startar..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "Anslutningen misslyckades. Kontrollera nätverket och försök igen" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Kontrollera nätverket och försök igen. Du kan starta om eller uppdatera " +"skrivaren om problemet kvarstår." + +msgid "The printer has been logged out and cannot connect." +msgstr "Printern har loggats ut och kan inte anslutas." + +msgid "Stopped." +msgstr "Avbruten." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "LAN-anslutning misslyckades (Det gick inte att starta liveview)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Virtuella kamera verktyg krävs för denna uppgift!\n" +"Vill du installera dem?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Ladda ner Virtuella Kamerans Verktyg" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"En annan virtuell kamera körs.\n" +"Snapmaker Orca stöder endast en virtuell kamera.\n" +"Vill du stoppa den här virtuella kameran?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Initieringen av virtuell kamera misslyckades (%s)!" + +msgid "Network unreachable" +msgstr "Nätverket kan inte nås" + +msgid "Information" +msgstr "information" + +msgid "Playing..." +msgstr "Spelar..." + +msgid "Year" +msgstr "År" + +msgid "Month" +msgstr "Månad" + +msgid "All Files" +msgstr "Alla Filer" + +msgid "Group files by year, recent first." +msgstr "Gruppera filer efter år, senaste först." + +msgid "Group files by month, recent first." +msgstr "Gruppera filer efter månad, senaste först." + +msgid "Show all files, recent first." +msgstr "Visa alla filer, de senaste först." + +msgid "Switch to timelapse files." +msgstr "Växla till timelapse filer." + +msgid "Video" +msgstr "Video" + +msgid "Switch to video files." +msgstr "Växla till video filer." + +msgid "Switch to 3mf model files." +msgstr "Byt till 3mf modell filer." + +msgid "Delete selected files from printer." +msgstr "Ta bort valda filer från skrivaren." + +msgid "Download" +msgstr "Ladda ner" + +msgid "Download selected files from printer." +msgstr "Ladda ner valda filer från skrivaren." + +msgid "Select" +msgstr "Välj" + +msgid "Batch manage files." +msgstr "Batch hantera filer." + +msgid "Refresh" +msgstr "Uppdatera" + +msgid "Reload file list from printer." +msgstr "Reload file list from printer." + +msgid "No printers." +msgstr "Ingen printer." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Sammankoppling misslyckades [%d]" + +msgid "Loading file list..." +msgstr "Laddar fil lista..." + +msgid "No files" +msgstr "Inga filer" + +msgid "Load failed" +msgstr "Load failed" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Initieringen misslyckades (Enhets anslutningen är inte klar)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "LAN Connection Failed (Failed to view sdcard)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "Browsing file in SD card is not supported in LAN Only Mode." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Initieringen misslyckades (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +msgstr[1] "" + +msgid "Delete files" +msgstr "Radera filer" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Vill du radera filen '%s' från skrivaren?" + +msgid "Delete file" +msgstr "Radera fil" + +msgid "Fetching model infomations ..." +msgstr "Hämtar information om modellen..." + +msgid "Failed to fetch model information from printer." +msgstr "Det gick inte att hämta modellinformation från printern." + +msgid "Failed to parse model information." +msgstr "Det gick inte att analysera modellinformation" + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "Filen '%s' förlorades! Ladda ner den igen." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"File: %s\n" +"Title: %s\n" + +msgid "Download waiting..." +msgstr "Nedladdning väntar..." + +msgid "Play" +msgstr "Spela" + +msgid "Open Folder" +msgstr "Öppna mapp" + +msgid "Download finished" +msgstr "Nedladdning slutförd" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Laddar ner %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." + +msgid "File does not exist." +msgstr "Filen finns inte." + +msgid "File checksum error. Please retry." +msgstr "Fel på filens kontrollsumma. Vänligen försök igen." + +msgid "Not supported on the current printer version." +msgstr "Stöds inte av den aktuella skrivarversionen." + +msgid "Storage unavailable, insert SD card." +msgstr "Lagring saknas, sätt i SD-kort." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Felkod: %d" + +msgid "Speed:" +msgstr "Hastighet:" + +msgid "Deadzone:" +msgstr "Upphör:" + +msgid "Options:" +msgstr "Val:" + +msgid "Zoom" +msgstr "Zooma" + +msgid "Translation/Zoom" +msgstr "Översättning/Zoom" + +msgid "3Dconnexion settings" +msgstr "3Dconnexion inställningar" + +msgid "Swap Y/Z axes" +msgstr "Byta Y/Z axes" + +msgid "Invert X axis" +msgstr "" + +msgid "Invert Y axis" +msgstr "" + +msgid "Invert Z axis" +msgstr "" + +msgid "Invert Yaw axis" +msgstr "" + +msgid "Invert Pitch axis" +msgstr "" + +msgid "Invert Roll axis" +msgstr "" + +msgid "Printing Progress" +msgstr "Utskriftsförlopp" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Lager: N/A" + +msgid "Clear" +msgstr "Rensa" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"You have completed printing the mall model, \n" +"but synchronizing rating information has failed." + +msgid "How do you like this printing file?" +msgstr "Vad tycker du om den här utskriftsfilen?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"(Modellen har redan betygsatts. Ditt betyg kommer att skriva över det " +"tidigare betyget.)" + +msgid "Rate" +msgstr "Betygsätt" + +msgid "Camera" +msgstr "Kamera" + +msgid "SD Card" +msgstr "MicroSD-kort" + +msgid "Camera Setting" +msgstr "Kamerainställning" + +msgid "Switch Camera View" +msgstr "" + +msgid "Control" +msgstr "Kontroll" + +msgid "Printer Parts" +msgstr "Printer Parts" + +msgid "Print Options" +msgstr "Utskriftsalternativ" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Lampa" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Kammare" + +msgid "Bed" +msgstr "Byggplattan" + +msgid "Debug Info" +msgstr "Felsöknings Information" + +msgid "No SD Card" +msgstr "Inget MicroSD-kort" + +msgid "SD Card Abnormal" +msgstr "MicroSD-kortet är onormalt" + +msgid "Cancel print" +msgstr "Avbryt utskrift" + +msgid "Are you sure you want to cancel this print?" +msgstr "Är du säker på att du vill avbryta utskriften?" + +msgid "Downloading..." +msgstr "Laddar ner..." + +msgid "Cloud Slicing..." +msgstr "Moln beredning..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "I Moln Berednings Kön finns det %s uppgifter framför dig." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Lager: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Lager: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Värm nozzeln till över 170 grader innan du laddar eller matar ut filament." + +msgid "Still unload" +msgstr "Matar ut fortfarande" + +msgid "Still load" +msgstr "Laddar fortfarande" + +msgid "Please select an AMS slot before calibration" +msgstr "Välj ett AMS-fack innan kalibrering." + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Kan inte läsa filament information: Filamentet är laddat till " +"verktygshuvudet; ta bort filamentet och försök igen." + +msgid "This only takes effect during printing" +msgstr "Detta gäller endast under utskrift." + +msgid "Silent" +msgstr "Tyst" + +msgid "Standard" +msgstr "Standard" + +msgid "Sport" +msgstr "Sport" + +msgid "Ludicrous" +msgstr "Galet" + +msgid "Can't start this without SD card." +msgstr "Kan inte starta utan MicroSD-kort." + +msgid "Rate the Print Profile" +msgstr "Betygsätt utskriftsprofil" + +msgid "Comment" +msgstr "Kommentera" + +msgid "Rate this print" +msgstr "Betygsätt denna utskrift" + +msgid "Add Photo" +msgstr "Lägg till en bild" + +msgid "Delete Photo" +msgstr "Ta bort foto" + +msgid "Submit" +msgstr "Skicka in" + +msgid "Please click on the star first." +msgstr "Klicka på stjärnan först." + +msgid "InFo" +msgstr "Info" + +msgid "Get oss config failed." +msgstr "Hämta konfigurationen för oss misslyckades." + +msgid "Upload Pictrues" +msgstr "Upload Pictures" + +msgid "Number of images successfully uploaded" +msgstr "Antal bilder som laddats upp framgångsrikt" + +msgid " upload failed" +msgstr " uppladdning misslyckades" + +msgid " upload config prase failed\n" +msgstr " uppladdning av konfiguration misslyckades\n" + +msgid " No corresponding storage bucket\n" +msgstr " Ingen motsvarande lagrings plats\n" + +msgid " can not be opened\n" +msgstr " cannot be opened\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"Följande problem uppstod under uppladdningen av bilder. Vill du ignorera " +"dem?\n" +"\n" + +msgid "info" +msgstr "info" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "Synkroniserar utskriftsresultaten. Försök igen om några sekunder." + +msgid "Upload failed\n" +msgstr "Uppladdningen misslyckades\n" + +msgid "obtaining instance_id failed\n" +msgstr "det gick inte att få instance_id\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Your comment result cannot be uploaded due to the following reasons:\n" +"\n" +" error code: " + +msgid "error message: " +msgstr "felmeddelande: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Would you like to redirect to the webpage to give a rating?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Några av dina bilder kunde inte laddas upp. Vill du bli omdirigerad till " +"webbsidan för betygsättning?" + +msgid "You can select up to 16 images." +msgstr "Du kan välja upp till 16 bilder." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating (4 or 5 stars)." + +msgid "Status" +msgstr "Status" + +msgid "Update" +msgstr "Uppdatera" + +msgid "Don't show again" +msgstr "Visa inte igen" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s fel" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s har stött på ett fel" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s varning" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s har en varning" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s info" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s information" + +msgid "Skip" +msgstr "Hoppa över" + +msgid "Newer 3mf version" +msgstr "Nyare 3mf version" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" + +msgid "Download Beta Version" +msgstr "Ladda ner betaversion" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" + +msgid "Current Version: " +msgstr "Aktuell version: " + +msgid "Latest Version: " +msgstr "Senaste versionen: " + +msgid "Not for now" +msgstr "Not for now" + +msgid "3D Mouse disconnected." +msgstr "3D mus bortkopplad." + +msgid "Configuration can update now." +msgstr "Ny konfiguration upptäckt! Uppdatera nu?" + +msgid "Detail." +msgstr "Detalj." + +msgid "Integration was successful." +msgstr "Integrationen lyckades." + +msgid "Integration failed." +msgstr "Integrationen misslyckades." + +msgid "Undo integration was successful." +msgstr "Återställande av integrationen lyckades." + +msgid "New network plug-in available." +msgstr "Ny nätverks plugin tillgänglig" + +msgid "Details" +msgstr "Detaljer" + +msgid "New printer config available." +msgstr "Ny printer konfiguration tillgänglig." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "Återställande av integrationen misslyckades." + +msgid "Exporting." +msgstr "Exporterar." + +msgid "Software has New version." +msgstr "En uppdatering finns tillgänglig." + +msgid "Goto download page." +msgstr "Besök nedladdnings sidan." + +msgid "Open Folder." +msgstr "Öppna Mapp." + +msgid "Safely remove hardware." +msgstr "Ta bort hårdvaran på ett säkert sätt." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d Objektet har custom support.@%1$d Objekten har custom support." +msgstr[1] "%1$d Objektet har custom support.@%1$d Objekten har custom support." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d Objektet har färgläggning.@%1$d Objekten har färgläggning." +msgstr[1] "%1$d Objektet har färgläggning.@%1$d Objekten har färgläggning." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "" +msgstr[1] "" + +msgid "ERROR" +msgstr "FEL" + +msgid "COMPLETED" +msgstr "Klar" + +msgid "CANCELED" +msgstr "Avbruten" + +msgid "Cancel upload" +msgstr "Avbryt uppladdning" + +msgid "Jump to" +msgstr "Hoppa till" + +msgid "Error:" +msgstr "Fel:" + +msgid "Warning:" +msgstr "Varning:" + +msgid "Export successfully." +msgstr "Exportering lyckades" + +msgid "Model file downloaded." +msgstr "Modellfil nedladdad." + +msgid "Serious warning:" +msgstr "Allvarlig varning:" + +msgid " (Repair)" +msgstr " (Reparera)" + +msgid " Click here to install it." +msgstr " Klicka här för att installera den." + +msgid "WARNING:" +msgstr "VARNING:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "Modellen behöver support ! Aktivera support inställningarna." + +msgid "Gcode path overlap" +msgstr "G-kodens rutt överlappar" + +msgid "Support painting" +msgstr "Support färgläggning" + +msgid "Color painting" +msgstr "Färgläggning" + +msgid "Cut connectors" +msgstr "Klipp kontakter" + +msgid "Layers" +msgstr "Lager" + +msgid "Range" +msgstr "Räckvidd" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"Begäran kan inte köras normalt för att OpenGL version är lägre än 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Uppdatera grafikkortets drivrutiner." + +msgid "Unsupported OpenGL version" +msgstr "OpenGL version stöttas ej" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Kan inte ladda skuggor:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Fel vid laddning av skuggor" + +msgctxt "Layers" +msgid "Top" +msgstr "Topplager" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Bottenlager" + +msgid "Enable AI monitoring of printing" +msgstr "Aktivera AI-övervakning av utskrifter" + +msgid "Sensitivity of pausing is" +msgstr "Känsligheten för paus är" + +msgid "Enable detection of build plate position" +msgstr "Aktivera detektering av byggplattans position" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"Lokaliseringsmärket på byggplattan registreras och utskriften pausas om " +"märket inte ligger inom det fördefinierade intervallet." + +msgid "First Layer Inspection" +msgstr "Första Lager Inspektion" + +msgid "Auto-recovery from step loss" +msgstr "Automatisk återhämtning vid stegförlust" + +msgid "Allow Prompt Sound" +msgstr "Tillåt Prompt Ljud" + +msgid "Filament Tangle Detect" +msgstr "Filament Tangle Detection" + +msgid "Nozzle Clumping Detection" +msgstr "Nozzle Clumping Detection" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "Check if the nozzle is clumping by filament or other foreign objects." + +msgid "Nozzle Type" +msgstr "Nozzle Type" + +msgid "Stainless Steel" +msgstr "Rostfritt stål" + +msgid "Hardened Steel" +msgstr "Härdat stål" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Global" + +msgid "Objects" +msgstr "Objekten" + +msgid "Advance" +msgstr "Avancerat" + +msgid "Compare presets" +msgstr "Jämför inställningar" + +msgid "View all object's settings" +msgstr "Se alla objektens inställningar" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "" + +msgid "Auto orient objects on current plate" +msgstr "" + +msgid "Arrange objects on current plate" +msgstr "" + +msgid "Unlock current plate" +msgstr "" + +msgid "Lock current plate" +msgstr "" + +msgid "Edit current plate name" +msgstr "" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "" + +#, boost-format +msgid " plate %1%:" +msgstr " platta %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Ogiltligt namn, följande tecken är inte tillåtna:" + +msgid "Sliced Info" +msgstr "Berednings Info" + +msgid "Used Filament (m)" +msgstr "Filament Åtgång (m)" + +msgid "Used Filament (mm³)" +msgstr "Filament Åtgång (mm³)" + +msgid "Used Filament (g)" +msgstr "Filament Åtgång (g)" + +msgid "Used Materials" +msgstr "Material Åtgång" + +msgid "Estimated time" +msgstr "Uppskattad tid" + +msgid "Filament changes" +msgstr "Filament byten" + +msgid "Click to edit preset" +msgstr "Tryck för att redigera inställningar" + +msgid "Connection" +msgstr "Anslutning" + +msgid "Bed type" +msgstr "Typ av byggplatta" + +msgid "Flushing volumes" +msgstr "Rensnings volymer" + +msgid "Add one filament" +msgstr "Lägg till ett filament" + +msgid "Remove last filament" +msgstr "Ta bort senaste filamentet" + +msgid "Synchronize filament list from AMS" +msgstr "Synkronisera filament listan från AMS" + +msgid "Set filaments to use" +msgstr "Ställ in filament som ska användas" + +msgid "Search plate, object and part." +msgstr "Sök platta, objekt och del." + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Inga AMS-filament. Välj en skrivare på sidan ”Enhet” för att ladda AMS-" +"information." + +msgid "Sync filaments with AMS" +msgstr "Synkronisera filament med AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Synkronisering av filament med AMS kommer att ta bort alla förvalda filament " +"inställningar och färger. Vill du fortsätta?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Du har redan gjort en synkronisering; vill du bara synkronisera ändringar " +"eller synkronisera allt på nytt?" + +msgid "Sync" +msgstr "Synkronisera" + +msgid "Resync" +msgstr "Synkronisera om" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "Det finns inga kompatibla filament och synkronisering utförs inte." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Spara ändringarna till \"%1%\"?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Avinstallationen lyckades. Enheten %s(%s) kan nu tas bort från datorn på ett " +"säkert sätt." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "Utmatning av enheten %s(%s) misslyckades." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "Tidigare osparat projekt upptäckt, återställa det?" + +msgid "Restore" +msgstr "Återställ" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"The current heatbed temperature is relatively high. The nozzle may clog when " +"printing this filament in a closed environment. Please open the front door " +"and/or remove the upper glass." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"Nozzelns hårdhet som filamentet kräver är högre än skrivarens standard för " +"nozzeln. Byt ut den härdade nozzeln eller filamentet, annars kommer nozzeln " +"att slitas ner eller skadas." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Aktivering av traditionell timelapse fotografering kan orsaka ojämnheter i " +"ytan. Det rekommenderas att ändra till jämnt läge." + +msgid "Expand sidebar" +msgstr "" + +msgid "Collapse sidebar" +msgstr "" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Laddar fil: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "3mf kommer inte från Snapmaker Orca, laddar endast geometri data." + +msgid "Load 3mf" +msgstr "Ladda 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"3mf:s version %s är nyare än %s version %s, Följande nycklar har hittats som " +"inte känns igen:" + +msgid "You'd better upgrade your software.\n" +msgstr "Uppdatera mjukvaran.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"3mf:s version %s är nyare än %s version %s, Föreslår att du uppdaterar din " +"programvara." + +msgid "Invalid values found in the 3mf:" +msgstr "Ogiltiga värden hittades i 3mf:" + +msgid "Please correct them in the param tabs" +msgstr "Vänligen korrigera dem i Parameter flikarna" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "The 3mf has following modified G-code in filament or printer presets:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Bekräfta att dessa modifierade G-koder är säkra för att förhindra skador på " +"maskinen!" + +msgid "Modified G-codes" +msgstr "Modified G-code" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "3mf har följande anpassade filament eller inställningar för printern:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Bekräfta att G-koderna i dessa inställningar är säkra för att förhindra " +"skador på maskinen!" + +msgid "Customized Preset" +msgstr "Anpassad inställning" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "Komponent namnet i step filen är inte UTF8 format!" + +msgid "The name may show garbage characters!" +msgstr "På grund av textkodning som inte stöds så kan skräptecken visas!" + +msgid "Remember my choice." +msgstr "Kom ihåg mitt val." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Laddning av fil misslyckades \"%1%\". En ogiltlig konfiguration hittades." + +msgid "Objects with zero volume removed" +msgstr "Objekt utan volym raderade" + +msgid "The volume of the object is zero" +msgstr "Objektet är utan volym" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"Objektets fil %s är för litet, det är kanske i meter eller inches.\n" +"Skala om till millimeter?" + +msgid "Object too small" +msgstr "För litet objekt" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Filen innehåller flera objekt som är placerade på olika höjder.\n" +"Istället för att betrakta dem som flera objekt, ska\n" +"filen laddas som ett enda objekt med flera delar?" + +msgid "Multi-part object detected" +msgstr "Objekt i flera delar har upptäckts" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "Ladda dessa filer som ett enkelt objekt med multipla delar?\n" + +msgid "Object with multiple parts was detected" +msgstr "Ett objekt med multipla delar har upptäckts" + +msgid "The file does not contain any geometry data." +msgstr "Filen innehåller ingen geometrisk data." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Objektet verkar vara för stort, vill du skala ner det så att det passar " +"byggplattan automatiskt?" + +msgid "Object too large" +msgstr "Objektet är för stort" + +msgid "Export STL file:" +msgstr "Exportera STL-fil:" + +msgid "Export AMF file:" +msgstr "Exportera AMF-fil:" + +msgid "Save file as:" +msgstr "Spara fil som:" + +msgid "Export OBJ file:" +msgstr "Exportera OBJ-fil:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"The file %s already exists.\n" +"Do you want to replace it?" + +msgid "Confirm Save As" +msgstr "Bekräfta Spara som" + +msgid "Delete object which is a part of cut object" +msgstr "Radera objekt som är en del av det utskurna objektet" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Du försöker radera ett objekt som är en del av ett klippt objekt.\n" +"Denna åtgärd kommer att bryta en klippt korrespondens.\n" +"Efter det kan modell konsistens inte garanteras." + +msgid "The selected object couldn't be split." +msgstr "Det valda objektet kan inte delas." + +msgid "Another export job is running." +msgstr "En annan exportering pågår." + +msgid "Unable to replace with more than one volume" +msgstr "Går inte att ersätta med mer än en volym" + +msgid "Error during replace" +msgstr "Fel vid byte" + +msgid "Replace from:" +msgstr "Ersätt från:" + +msgid "Select a new file" +msgstr "Välj en ny fil" + +msgid "File for the replace wasn't selected" +msgstr "Ersättningsfilen valdes inte" + +msgid "Please select a file" +msgstr "Välj en fil" + +msgid "Do you want to replace it" +msgstr "Do you want to replace it?" + +msgid "Message" +msgstr "Meddelande" + +msgid "Reload from:" +msgstr "Ladda om från:" + +msgid "Unable to reload:" +msgstr "Det gick inte att ladda om:" + +msgid "Error during reload" +msgstr "Fel vid omladdning" + +msgid "There are warnings after slicing models:" +msgstr "Varningar efter beredning:" + +msgid "warnings" +msgstr "varningar" + +msgid "Invalid data" +msgstr "Ogiltlig data" + +msgid "Slicing Canceled" +msgstr "Beredning avbruten" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Bereder plattan %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Lös berednings felen och publicera igen." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Nätverks plugin programmet detekteras inte. Nätverksrelaterade funktioner är " +"inte tillgängliga." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Endast förhandsgranskningsläge:\n" +"Den inlästa filen innehåller endast G-kod, kan inte komma in på sidan " +"Förbered" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" +"Fortsätt med redigerings inställningarna till nytt projekt eller avfärda dem" + +msgid "Creating a new project" +msgstr "Skapar nytt projekt" + +msgid "Load project" +msgstr "Ladda projekt" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Det gick inte att spara projektet.\n" +"Kontrollera om mappen finns online eller om andra program har projektfilen " +"öppen." + +msgid "Save project" +msgstr "Spara projekt" + +msgid "Importing Model" +msgstr "Importerar Modell" + +msgid "prepare 3mf file..." +msgstr "förbereder 3mf-filen..." + +msgid "Download failed, unknown file format." +msgstr "Download failed; unknown file format." + +msgid "downloading project ..." +msgstr "laddar ner projekt ..." + +msgid "Download failed, File size exception." +msgstr "Download failed; File size exception." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Projektet har laddats ned %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" + +msgid "Import SLA archive" +msgstr "" + +msgid "The selected file" +msgstr "Den valda filen" + +msgid "does not contain valid gcode." +msgstr "Innehåller ingen giltlig G-kod." + +msgid "Error occurs while loading G-code file" +msgstr "Fel uppstod vid laddningen av G-kod" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "" + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" + +msgid "Drop project file" +msgstr "Släpp projekt filen" + +msgid "Please select an action" +msgstr "Välj en åtgärd" + +msgid "Open as project" +msgstr "Öppna som projekt" + +msgid "Import geometry only" +msgstr "Importera endast geometrin" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Endast en G-kod kan öppnas åt gången." + +msgid "G-code loading" +msgstr "Laddar G-kod" + +msgid "G-code files can not be loaded with models together!" +msgstr "G-kod filer och modeller kan inte laddas tillsammans!!" + +msgid "Can not add models when in preview mode!" +msgstr "Det gick inte att lägga till modeller i förhandsvisningsläge" + +msgid "All objects will be removed, continue?" +msgstr "Alla objekt kommer att raderas, fortsätta?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "Nuvarande projekt har ej sparade ändringar, spara innan du går vidare?" + +msgid "Number of copies:" +msgstr "Antal kopior:" + +msgid "Copies of the selected object" +msgstr "Kopior av det valda objektet" + +msgid "Save G-code file as:" +msgstr "Spara G-kod som:" + +msgid "Save SLA file as:" +msgstr "Spara SLA fil som:" + +msgid "The provided file name is not valid." +msgstr "Det angivna filnamnet är inte giltigt." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "Följande tecken är inte tillåtna i ett FAT-fil system:" + +msgid "Save Sliced file as:" +msgstr "Spara beredningen som:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"Filen %s har skickats till skrivarens lagringsutrymme och kan visas på " +"skrivaren." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Reason: part \"%1%\" is empty." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Reason: part \"%1%\" does not bound a volume." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Reason: part \"%1%\" has self intersection." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Reason: \"%1%\" and another part have no intersection." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Det går inte att utföra booleska operationer på modell mesh. Endast positiva " +"delar kommer att exporteras." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" + +msgid "Private protection" +msgstr "" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "" + +msgid "Upload and Print" +msgstr "" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Skriv ut per Objekt:\n" +"Rekommenderar att auto-placering för att undvika kollisioner under utskrift." + +msgid "Send G-code" +msgstr "Skicka G-kod" + +msgid "Send to printer" +msgstr "Skicka till skrivare" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "Custom support och färgläggning raderades innan reparation." + +msgid "Optimize Rotation" +msgstr "" + +msgid "Invalid number" +msgstr "Ogiltligt nummer" + +msgid "Plate Settings" +msgstr "Inställningar för platta" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Antal för tillfället valda delar: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Antal för närvarande markerade objekt: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Delens namn: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Objektets namn: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Storlek: %1% x %2% x %3% in\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Storlek: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Volym: %1% i³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Volym: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Trianglar: %1%\n" + +msgid "Tips:" +msgstr "Tips:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Platta% d: %s rekommenderas inte för användning av filament %s(%s). Om du " +"fortfarande vill göra detta utskriftsjobb, vänligen ställ in detta filaments " +"byggplattas temperatur till ett tal som inte är noll." + +msgid "Switching the language requires application restart.\n" +msgstr "Byte av språk krävs för omstart.\n" + +msgid "Do you want to continue?" +msgstr "Fortsätta?" + +msgid "Language selection" +msgstr "Språkval" + +msgid "Switching application language while some presets are modified." +msgstr "Byter språk medans inställningarna ändras." + +msgid "Changing application language" +msgstr "Byter språk" + +msgid "Changing the region will log out your account.\n" +msgstr "Om du ändrar regionen loggas du ut från ditt konto.\n" + +msgid "Region selection" +msgstr "Val av region" + +msgid "Second" +msgstr "Andra" + +msgid "Browse" +msgstr "Sök" + +msgid "Choose Download Directory" +msgstr "Välj Nedladdnings Register" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "Allmänna inställningar" + +msgid "Asia-Pacific" +msgstr "Asien-Stillahavsområdet" + +msgid "China" +msgstr "Kina" + +msgid "Europe" +msgstr "Europa" + +msgid "North America" +msgstr "Nordamerika" + +msgid "Others" +msgstr "Andra" + +msgid "Login Region" +msgstr "Logga in Region" + +msgid "Stealth Mode" +msgstr "" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" + +msgid "Enable network plugin" +msgstr "" + +msgid "Check for stable updates only" +msgstr "" + +msgid "Metric" +msgstr "Metrisk" + +msgid "Imperial" +msgstr "Brittisk standard" + +msgid "Units" +msgstr "Enheter" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"På OSX körs alltid bara en instans av appen som standard. Det är dock " +"tillåtet att köra flera instanser av samma app från kommandoraden. I sådana " +"fall tillåter denna inställning endast en instans." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Default Page" +msgstr "" + +msgid "Set the page opened on startup." +msgstr "" + +msgid "Touchpad" +msgstr "" + +msgid "Camera style" +msgstr "" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" + +msgid "Zoom to mouse position" +msgstr "Zooma till musens position" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Zooma in mot muspekarens position i 3D-vyn, istället för mot 2D-fönstrets " +"mitt." + +msgid "Use free camera" +msgstr "" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" + +msgid "Reverse mouse zoom" +msgstr "" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" + +msgid "Show splash screen" +msgstr "" + +msgid "Show the splash screen during startup." +msgstr "" + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Visa \"Dagens tips\" efter start" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Om aktiverad visas användbara tips vid start." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "Rensnings volymer: Beräkna automatiskt varje gång färgen ändras." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "Om aktiverat, beräkna automatiskt varje gång färgen ändras." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "Flushing volumes: Auto-calculate every time the filament is changed." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "If enabled, auto-calculate every time filament is changed" + +msgid "Remember printer configuration" +msgstr "" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." + +msgid "Network" +msgstr "" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Automatisk synkronisering av användarens förinställningar (skrivare/filament/" +"process)" + +msgid "User Sync" +msgstr "Användar synkronisering" + +msgid "Update built-in Presets automatically." +msgstr "Uppdatera inbyggda förinställningar automatiskt." + +msgid "System Sync" +msgstr "Synkronisering av system" + +msgid "Clear my choice on the unsaved presets." +msgstr "Rensa mitt val för de osparade förinställningarna." + +msgid "Associate files to Snapmaker Orca" +msgstr "Associerade filer till Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Associerade .3mf files till Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "Om aktiverad, väljs Snapmaker Orca som standard att öppna .3mf filer" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Associerade .stl filer till Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "Om aktiverad, väljs Snapmaker Orca som standard att öppna .stl filer" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Associera .step/.stp-filer till Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "Om aktiverad, väljs Snapmaker Orca som standard att öppna .step filer" + +msgid "Associate web links to Snapmaker Orca" +msgstr "" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "" + +msgid "Maximum recent projects" +msgstr "Maximalt antal nyligen genomförda projekt" + +msgid "Maximum count of recent projects" +msgstr "Maximalt antal nyligen genomförda projekt" + +msgid "Clear my choice on the unsaved projects." +msgstr "Rensa mitt val för de osparade projekten." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "No warnings when loading 3MF with modified G-code" + +msgid "Auto-Backup" +msgstr "Auto Säkerhetskopiera" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Säkerhetskopiera ditt projekt med jämna mellanrum för att underlätta " +"återställning efter en tillfällig krasch." + +msgid "every" +msgstr "varje" + +msgid "The peroid of backup in seconds." +msgstr "Säkerhetskopieringens varaktighet i sekunder." + +msgid "Downloads" +msgstr "Nedladdningar" + +msgid "Dark Mode" +msgstr "Mörkt Läge" + +msgid "Enable Dark mode" +msgstr "Aktivera mörkt läge" + +msgid "Develop mode" +msgstr "Utvecklingsläge" + +msgid "Skip AMS blacklist check" +msgstr "Hoppa över kontrollen av AMS svarta lista" + +msgid "Home page and daily tips" +msgstr "Hemsida och dagliga förslag" + +msgid "Show home page on startup" +msgstr "Visa hemsida vid uppstart" + +msgid "Sync settings" +msgstr "Sync inställningar" + +msgid "User sync" +msgstr "Användar synkronisering" + +msgid "Preset sync" +msgstr "Förinställd synkronisering" + +msgid "Preferences sync" +msgstr "Synkronisera inställningar" + +msgid "View control settings" +msgstr "Kontroll inställningar" + +msgid "Rotate of view" +msgstr "Rotera vy" + +msgid "Move of view" +msgstr "Panoreringsvy" + +msgid "Zoom of view" +msgstr "Zoomvy" + +msgid "Other" +msgstr "Andra" + +msgid "Mouse wheel reverses when zooming" +msgstr "Reversera mushjulet för att zooma" + +msgid "Enable SSL(MQTT)" +msgstr "Aktivera SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Aktivera SSL(FTP)" + +msgid "Internal developer mode" +msgstr "Internt utvecklarläge" + +msgid "Log Level" +msgstr "Logg Nivå" + +msgid "fatal" +msgstr "allvarlig" + +msgid "error" +msgstr "fel" + +msgid "warning" +msgstr "varning" + +msgid "debug" +msgstr "felsök" + +msgid "trace" +msgstr "spåra" + +msgid "Host Setting" +msgstr "Värd Inställning" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEV host: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA host: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "PRE host: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Produktvärd" + +msgid "debug save button" +msgstr "Spar knappen för felsökning" + +msgid "save debug settings" +msgstr "spara felsöknings knappen" + +msgid "DEBUG settings have saved successfully!" +msgstr "FELSÖKNINGS inställningarna har sparats!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Moln miljön har bytts ut; vänligen logga in igen!" + +msgid "System presets" +msgstr "Systemets förinställningar" + +msgid "User presets" +msgstr "Användarens förinställningar" + +msgid "Incompatible presets" +msgstr "Ej giltliga förinställningar" + +msgid "AMS filaments" +msgstr "AMS-filament" + +msgid "Click to pick filament color" +msgstr "Tryck för att välja filament färg" + +msgid "Please choose the filament colour" +msgstr "Välj filament färg" + +msgid "Add/Remove presets" +msgstr "Lägg till/Ta bort förinställningar" + +msgid "Edit preset" +msgstr "Redigera förinställningar" + +msgid "Project-inside presets" +msgstr "Projekt förinställningar" + +msgid "Add/Remove filaments" +msgstr "Lägg till/Ta bort filament" + +msgid "Add/Remove materials" +msgstr "Lägg till/Ta bort material" + +msgid "Select/Remove printers(system presets)" +msgstr "Välj/ta bort printer(systemet inställningar)" + +msgid "Create printer" +msgstr "Skapa printer" + +msgid "The selected preset is null!" +msgstr "Den valda förinställningen är noll!" + +msgid "End" +msgstr "End" + +msgid "Customize" +msgstr "Anpassa" + +msgid "Other layer filament sequence" +msgstr "Other layer filament sequence" + +msgid "Please input layer value (>= 2)." +msgstr "Please input layer value (>= 2)." + +msgid "Plate name" +msgstr "Plattans namn" + +msgid "Same as Global Print Sequence" +msgstr "Samma som Global Utskrifts Sekvens" + +msgid "Print sequence" +msgstr "Utskrifts sekvens" + +msgid "Same as Global" +msgstr "Same as Global" + +msgid "Disable" +msgstr "Disable" + +msgid "Spiral vase" +msgstr "Spiral vas" + +msgid "First layer filament sequence" +msgstr "Första lagrets filament sekvens" + +msgid "Same as Global Plate Type" +msgstr "Samma som Global Bed Type" + +msgid "Same as Global Bed Type" +msgstr "Samma som Global Bed Type" + +msgid "By Layer" +msgstr "Per lager" + +msgid "By Object" +msgstr "Per objekt" + +msgid "Accept" +msgstr "Godkänn" + +msgid "Log Out" +msgstr "Logga ut" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "Bered alla plattor för att mottaga tid och filament uppskattning" + +msgid "Packing project data into 3mf file" +msgstr "Packa projekt data till 3mf fil" + +msgid "Uploading 3mf" +msgstr "Laddar upp 3mf" + +msgid "Jump to model publish web page" +msgstr "Växla till modell publicerings hemsidan" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "Notera: Förberedelserna kan ta flera minuter. Vänligen vänta." + +msgid "Publish" +msgstr "Publicera" + +msgid "Publish was cancelled" +msgstr "Publiceringen avbröts" + +msgid "Slicing Plate 1" +msgstr "Beredningsplatta 1" + +msgid "Packing data to 3mf" +msgstr "Packar data till 3mf" + +msgid "Jump to webpage" +msgstr "Växla till hemsidan" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Spara %s som" + +msgid "User Preset" +msgstr "Användar förinställning" + +msgid "Preset Inside Project" +msgstr "Projekt förinställning" + +msgid "Name is unavailable." +msgstr "Namnet ej tillgängligt." + +msgid "Overwrite a system profile is not allowed" +msgstr "Ej tillåtet att skriva över system profilen" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "Förinställning \"%1%\" finns redan." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "" +"Förinställning \"%1%\" finns redan och fungerar inte med nuvarande skrivare." + +msgid "Please note that saving action will replace this preset" +msgstr "" +"Observera att om du sparar kommer den aktuella förinställningen att skrivas " +"över" + +msgid "The name cannot be the same as a preset alias name." +msgstr "Namnet får inte vara samma som förinställt namn." + +msgid "Save preset" +msgstr "Spara förinställning" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Kopiera" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "Skrivare \"%1%\" är vald med förinställning \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Välj en åtgärd med \"%1%\" förinställning efter det sparats." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "För \"%1%\", byta \"%2%\" till \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "För \"%1%\", lägg till \"%2%\" som ny förinställning" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Byta till \"%1%\"" + +msgid "Task canceled" +msgstr "Uppgift avbruten" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Sök" + +msgid "My Device" +msgstr "Min Enhet" + +msgid "Other Device" +msgstr "Andra Enheter" + +msgid "Online" +msgstr "Online" + +msgid "Input access code" +msgstr "Inmatning av åtkomstkod" + +msgid "Can't find my devices?" +msgstr "Hittar du inte enheter?" + +msgid "Log out successful." +msgstr "Utloggning lyckades." + +msgid "Busy" +msgstr "Upptagen" + +msgid "Bambu Cool Plate" +msgstr "Bambu Cool Plate" + +msgid "PLA Plate" +msgstr "PLA platta" + +msgid "Bambu Engineering Plate" +msgstr "Bambu Engineering Plate" + +msgid "Bambu Smooth PEI Plate" +msgstr "" + +msgid "High temperature Plate" +msgstr "Högtemperatur platta" + +msgid "Bambu Textured PEI Plate" +msgstr "" + +msgid "Send print job to" +msgstr "Skicka utskriftsjobb till" + +msgid "Flow Dynamics Calibration" +msgstr "Kalibrering av flödesdynamik" + +msgid "Click here if you can't connect to the printer" +msgstr "Klicka här om du inte kan ansluta till printern" + +msgid "send completed" +msgstr "Skicka komplett" + +msgid "Error code" +msgstr "Felkod" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "Inget inloggningskonto, bara skrivare i LAN-läge visas" + +msgid "Connecting to server" +msgstr "Ansluter till server" + +msgid "Synchronizing device information" +msgstr "Synkroniserar enhetsinformation" + +msgid "Synchronizing device information time out" +msgstr "Time-out för synkronisering av enhetsinformation" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "" +"Det går inte att skicka ett utskriftsjobb medan skrivaren uppdaterar firmware" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"Skrivaren utför instruktioner. Vänligen starta utskriften igen när den är " +"avslutad." + +msgid "The printer is busy on other print job" +msgstr "Skrivaren är upptagen med ett annat utskriftsjobb." + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament %s överskrider antalet AMS-fack. Uppdatera skrivarens programvara " +"för att stödja tilldelning av AMS-fack." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Filament överskrider antalet AMS-fack. Uppdatera skrivarens programvara för " +"att stödja tilldelning av AMS-fack." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Filament i AMS facken har fastställts. Du kan klicka på ett filament ovan " +"för att ändra dess plats i AMS facken" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Klicka på varje filament ovan för att ange dess plats i AMS-facken innan du " +"skickar utskriftsjobbet" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"Filamentet %s matchar inte filamentet i AMS-facket %s. Uppdatera skrivarens " +"programvara för att stödja tilldelning av AMS-fack." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filamentet matchar inte filamentet i AMS-facket. Uppdatera skrivarens " +"programvara för att stödja tilldelning av AMS-fack." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"Skrivarens firmware stöder endast sekventiell mappning av filament => AMS-" +"fack plats." + +msgid "An SD card needs to be inserted before printing." +msgstr "Ett Micro SD-kort måste sättas i innan utskrift." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "Ett Micro SD-kort måste sättas i för att spela in en timelapse." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Det går inte att skicka utskriftsjobbet till en skrivare vars fasta " +"programvara måste uppdateras." + +msgid "Cannot send the print job for empty plate" +msgstr "Det går inte att skicka ett utskriftsjobb för en tom platta." + +msgid "This printer does not support printing all plates" +msgstr "Den här skrivaren stöder inte utskrift av alla byggplattor" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"When spiral vase mode is enabled, machines with I3 structure will not " +"generate timelapse videos." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Timelapse stöds inte eftersom utskrifts sekvensen är inställd på \"Per objekt" +"\"." + +msgid "Errors" +msgstr "Fel" + +msgid "Please check the following:" +msgstr "Kontrollera följande:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"Den skrivar typ som valdes vid generering av G-kod överensstämmer inte med " +"den för tillfället valda skrivaren. Vi rekommenderar att du använder samma " +"skrivartyp för beredning." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"Det finns några okända filament i AMS-mappningen. Kontrollera om det är de " +"filament som krävs. Om de är okej, klicka du på \"Confirm\" för att börja " +"skriva ut." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "nozzel i inställning: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "nozzel memorerat: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Your nozzle diameter in sliced file is not consistent with the saved nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "Please fix the error above, otherwise printing cannot continue." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Klicka på knappen Bekräfta om du fortfarande vill fortsätta med utskriften." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"Ansluter till skrivaren. Det går inte att avbryta under anslutnings " +"processen." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Varning! Flödes kalibrering på texturerade PEI plattor kan misslyckas på " +"grund av ytan." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Automatic flow calibration using the Micro Lidar" + +msgid "Modifying the device name" +msgstr "Ändra enhetens namn" + +msgid "Bind with Pin Code" +msgstr "Bind with Pin Code" + +msgid "Send to Printer SD card" +msgstr "Skicka till skrivarens MicroSD-kort" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "Det går inte att skicka utskriftsuppgiften när uppgraderingen pågår" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "" +"Den valda skrivaren är inte kompatibel med de valda skrivar inställningarna." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "Ett MicroSD-kort måste sättas i innan du skickar till skrivaren." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "Skrivaren måste finnas på samma LAN som Snapmaker Orca." + +msgid "The printer does not support sending to printer SD card." +msgstr "Skrivaren har inte stöd för att skicka till skrivarens MicroSD kort." + +msgid "Slice ok." +msgstr "Beredning klar." + +msgid "View all Daily tips" +msgstr "Visa alla dagliga tips" + +msgid "Failed to create socket" +msgstr "Det gick inte att skapa uttaget" + +msgid "Failed to connect socket" +msgstr "Det gick inte att ansluta uttaget" + +msgid "Failed to publish login request" +msgstr "Det gick inte att publicera inloggningsbegäran" + +msgid "Get ticket from device timeout" +msgstr "Timeout för att hämta ärende från enhet" + +msgid "Get ticket from server timeout" +msgstr "Timeout för att hämta ärende från server" + +msgid "Failed to post ticket to server" +msgstr "Misslyckades med att skicka biljett till server" + +msgid "Failed to parse login report reason" +msgstr "Det gick inte att analysera orsaken till inloggningsrapporten" + +msgid "Receive login report timeout" +msgstr "Timeout för mottagande av inloggnings rapport" + +msgid "Unknown Failure" +msgstr "Okänt fel" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." + +msgid "Can't find Pin Code?" +msgstr "Can't find Pin Code?" + +msgid "Pin Code" +msgstr "Pin Code" + +msgid "Binding..." +msgstr "Binding..." + +msgid "Please confirm on the printer screen" +msgstr "Please confirm on the printer screen" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Log in failed. Please check the Pin Code." + +msgid "Log in printer" +msgstr "Logga in skrivare" + +msgid "Would you like to log in this printer with current account?" +msgstr "Logga in skrivaren till nuvarande konto?" + +msgid "Check the reason" +msgstr "Kontrollera orsaken" + +msgid "Read and accept" +msgstr "Läs och acceptera" + +msgid "Terms and Conditions" +msgstr "Villkor och bestämmelser" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Tack för att du har köpt en Bambu Lab enhet. Innan du använder din Bambu Lab " +"enhet ska du läsa villkoren. Genom att klicka för att godkänna användningen " +"av din Bambu Lab enhet godkänner du att följa sekretesspolicyn och " +"användningsvillkoren (gemensamt kallade \"Villkor\"). Om du inte följer " +"eller samtycker till Bambu Labs integritetspolicy ska du inte använda Bambu " +"Labs utrustning och tjänster." + +msgid "and" +msgstr "och" + +msgid "Privacy Policy" +msgstr "Integritetspolicy" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Vi ber om din hjälp för att förbättra allas skrivare." + +msgid "Statement about User Experience Improvement Program" +msgstr "Uttalande om programmet för förbättring av användarupplevelsen" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"I 3D-utskrifts gemenskapen lär vi oss av varandras framgångar och " +"misslyckanden för att justera våra egna berednings parametrar och " +"inställningar. %s följer samma princip och använder maskin inlärning för att " +"förbättra sin prestanda från framgångar och misslyckanden i det stora " +"antalet utskrifter av våra användare. Vi tränar %s att bli smartare genom " +"att ge dem data från den verkliga världen. Om du är villig kommer denna " +"tjänst att få tillgång till information från dina fel- och " +"användningsloggar, som kan innehålla information som beskrivs i " +"sekretesspolicyn. Vi kommer inte att samla in några personuppgifter genom " +"vilka en person kan identifieras direkt eller indirekt, inklusive men inte " +"begränsat till namn, adresser, betalningsinformation eller telefonnummer. " +"Genom att aktivera denna tjänst godkänner du dessa villkor och uttalandet om " +"integritetspolicy." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Uttalande om plan för förbättring av användarupplevelsen" + +msgid "Log in successful." +msgstr "Inloggningen lyckades." + +msgid "Log out printer" +msgstr "Logga ut skrivaren" + +msgid "Would you like to log out the printer?" +msgstr "Logga ut skrivaren?" + +msgid "Please log in first." +msgstr "Logga in först." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "Problem uppstod vid sammankoppling till skrivaren. Försök igen." + +msgid "Failed to log out." +msgstr "Utloggning misslyckades." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Spara nuvarande %s" + +msgid "Delete this preset" +msgstr "Radera denna förinställning" + +msgid "Search in preset" +msgstr "Sök i inställning" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Klicka för att återställa alla inställningar till den senast sparade " +"förinställningen." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"Prime tower krävs för smooth timelapse-läge. Det kan bli fel på modellen " +"utan ett prime tower. Är du säker på att du vill inaktivera prime tower?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"Prime tower krävs för Smooth timelapse-läge. Det kan bli fel på modellen " +"utan prime tower. Vill du aktivera prime tower?" + +msgid "Still print by object?" +msgstr "Fortfarande utskrift per objekt?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Vi har lagt till en experimentell stil \"Tree Slim\" som har mindre support " +"volym men svagare styrka.\n" +"Vi rekommenderar att du använder den tillsammans med: 0 gränssnitts lager, 0 " +"övre avstånd, 2 väggar." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Ändra dessa inställningar automatiskt? \n" +"Ja - Ändra dessa inställningar automatiskt.\n" +"Nej - Ändra inte dessa inställningar för mig." + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"För ”Tree Strong” och ”Tree Hybrid” stilar rekommenderar vi följande " +"inställningar: minst 2 anläggnings lager, minst 0,1 mm topp z-avstånd eller " +"med support material på anläggningsytan." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"Vid användning av stödmaterial för stödgränssnittet rekommenderar vi " +"följande inställningar:\n" +"0 top z-avstånd, 0 gränssnittsavstånd, koncentriskt mönster och inaktivera " +"oberoende stödskiktshöjd" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" + +msgid "Are you sure you want to enable this option?" +msgstr "" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"Lagerhöjden överskrider gränsen i Skrivarinställningar -> Extruder -> " +"Lagerhöjds gränser, detta kan orsaka problem med utskriftskvaliteten." + +msgid "Adjust to the set range automatically? \n" +msgstr "Justera automatiskt till det inställda området? \n" + +msgid "Adjust" +msgstr "Justera" + +msgid "Ignore" +msgstr "Ignorera" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush. Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications. Please use with the latest printer firmware." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"När du spelar in timelapse utan verktygshuvud rekommenderas att du lägger " +"till ett \"Timelapse Wipe Tower\".\n" +"genom att högerklicka på den tomma positionen på byggplattan och välja " +"\"Lägg till Primitiv\"->\"Timelapse Wipe Tower\"." + +msgid "Line width" +msgstr "Linjebredd" + +msgid "Seam" +msgstr "Söm" + +msgid "Precision" +msgstr "Precision" + +msgid "Wall generator" +msgstr "Vägg generator" + +msgid "Walls and surfaces" +msgstr "" + +msgid "Bridging" +msgstr "" + +msgid "Overhangs" +msgstr "" + +msgid "Walls" +msgstr "Väggar" + +msgid "Top/bottom shells" +msgstr "Topp/botten skal" + +msgid "Initial layer speed" +msgstr "Hastighet på första lager" + +msgid "Other layers speed" +msgstr "Hastighet på övriga lager" + +msgid "Overhang speed" +msgstr "Hastighet vid överhäng" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Detta är hastigheten för varierande överhängs grader. Överhängs graderna " +"uttrycks som en procent av linjebredden. Hastigheten 0 betyder att den inte " +"minskar för överhängs gradernas område och hastigheten för väggarna används" + +msgid "Bridge" +msgstr "Bridge/bro" + +msgid "Set speed for external and internal bridges" +msgstr "" + +msgid "Travel speed" +msgstr "Förflyttnings hastighet" + +msgid "Acceleration" +msgstr "Acceleration" + +msgid "Jerk(XY)" +msgstr "Jerk(XY)" + +msgid "Raft" +msgstr "Raft" + +msgid "Support filament" +msgstr "Support filament" + +msgid "Tree supports" +msgstr "" + +msgid "Skirt" +msgstr "" + +msgid "Prime tower" +msgstr "Prime torn" + +msgid "Special mode" +msgstr "Special läge" + +msgid "G-code output" +msgstr "G-kod utgång" + +msgid "Post-processing Scripts" +msgstr "Skript för efterbehandling" + +msgid "Notes" +msgstr "Notes" + +msgid "Frequent" +msgstr "Återkommande" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"Följande linje %s innehåller reserverade nyckelord.\n" +"Radera den, annars påverkas G-kodens visualisering och den uppskattade " +"utskriftstiden." +msgstr[1] "" +"Följande linjer %s innehåller reserverade nyckelord.\n" +"Radera dem, annars påverkas G-kodens visualisering och den uppskattade " +"utskriftstiden." + +msgid "Reserved keywords found" +msgstr "Hittade reserverade nyckelord" + +msgid "Setting Overrides" +msgstr "Åsidosätter inställningar" + +msgid "Retraction" +msgstr "Reduktion" + +msgid "Basic information" +msgstr "Allmän information" + +msgid "Recommended nozzle temperature" +msgstr "Rekommenderad nozzel temperatur" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Rekommenderat nozzel temperaturs område för detta filament. 0 betyder inte " +"fastställt" + +msgid "Print chamber temperature" +msgstr "" + +msgid "Print temperature" +msgstr "Utskrifts temperatur" + +msgid "Nozzle" +msgstr "Nozzel" + +msgid "Nozzle temperature when printing" +msgstr "Nozzel temperatur vid utskrift" + +msgid "Cool plate" +msgstr "Kall platta" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Detta är byggplattans temperatur när Cool Plate är installerad. Värdet 0 " +"betyder att filamentet inte stöder utskrift på Cool Plate." + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "Engineering plate" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Detta är byggplattans temperatur när Engineering Plate är installerad. Ett " +"värde på 0 betyder att filamentet inte stöder utskrift på Engineering Plate." + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Slät PEI platta / Högtemperaturs platta" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Bäddtemperatur när slät PEI-platta/Högtemperatur platta är installerad. " +"Värde 0 betyder att filamentet inte stöder utskrift på den släta PEI-plattan/" +"högtemperaturplattan" + +msgid "Textured PEI Plate" +msgstr "Texturerad PEI-platta" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Byggplattans temperatur när texturerad PEI-platta är installerad. 0 betyder " +"att filamentet inte stöds på den texturerade PEI-plattan" + +msgid "Volumetric speed limitation" +msgstr "Volumetrisk hastighets begränsning" + +msgid "Cooling" +msgstr "Kylning" + +msgid "Cooling for specific layer" +msgstr "Kylning för valda lager" + +msgid "Part cooling fan" +msgstr "Del kylningsfläkten" + +msgid "Min fan speed threshold" +msgstr "Min fläkt hastighets gräns" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"Del kylfläktens hastigheten kommer att börja gå med min hastighet när den " +"beräknade lagringstiden inte är längre än lagringstiden i inställningarna." +"När lager tiden är kortare än gräns värdet, ställer fläkthastigheten sig " +"mellan lägsta och högsta fläkthastighet enligt lagrets utskriftstid" + +msgid "Max fan speed threshold" +msgstr "Max fläkt hastighets gräns" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"Del kylfläktens hastighet kommer att vara max när den beräknade " +"lagringstiden är kortare än inställningsvärdet" + +msgid "Auxiliary part cooling fan" +msgstr "Extra del kylnings fläkt" + +msgid "Exhaust fan" +msgstr "Utsugs fläkt" + +msgid "During print" +msgstr "Under utskrift" + +msgid "Complete print" +msgstr "Komplett utskrift" + +msgid "Filament start G-code" +msgstr "Filament start G-kod" + +msgid "Filament end G-code" +msgstr "Filament stop G-kod" + +msgid "Multimaterial" +msgstr "" + +msgid "Wipe tower parameters" +msgstr "" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "" + +msgid "Ramming settings" +msgstr "" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "" + +msgid "Printable space" +msgstr "Utskriftsbar yta" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "" + +msgid "G-code flavor is switched" +msgstr "" + +msgid "Cooling Fan" +msgstr "" + +msgid "Fan speed-up time" +msgstr "" + +msgid "Extruder Clearance" +msgstr "Extruder Frigång" + +msgid "Adaptive bed mesh" +msgstr "" + +msgid "Accessory" +msgstr "Tillbehör" + +msgid "Machine gcode" +msgstr "Maskin G-kod" + +msgid "Machine start G-code" +msgstr "Maskin start G-kod" + +msgid "Machine end G-code" +msgstr "Maskin stop G-kod" + +msgid "Printing by object G-code" +msgstr "Utskrift efter objekt G kod" + +msgid "Before layer change G-code" +msgstr "Före lagerskifte G-kod" + +msgid "Layer change G-code" +msgstr "Lagerskifte G-kod" + +msgid "Time lapse G-code" +msgstr "Time lapse G-kod" + +msgid "Change filament G-code" +msgstr "Byta filament G-kod" + +msgid "Change extrusion role G-code" +msgstr "" + +msgid "Pause G-code" +msgstr "Paus G-kod" + +msgid "Template Custom G-code" +msgstr "Mall för anpassad G-kod" + +msgid "Motion ability" +msgstr "Rörelseförmåga" + +msgid "Normal" +msgstr "Normal" + +msgid "Speed limitation" +msgstr "Hastighets begränsning" + +msgid "Acceleration limitation" +msgstr "Accelerations begränsning" + +msgid "Jerk limitation" +msgstr "Jerk begränsning" + +msgid "Single extruder multimaterial setup" +msgstr "" + +msgid "Wipe tower" +msgstr "" + +msgid "Single extruder multimaterial parameters" +msgstr "" + +msgid "Layer height limits" +msgstr "Lagerhöjds begränsning" + +msgid "Lift Z Enforcement" +msgstr "" + +msgid "Retraction when switching material" +msgstr "Reduktion vid material byte" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Disable it in order to enable Firmware Retraction?" + +msgid "Firmware Retraction" +msgstr "Firmware Retraktion" + +msgid "Detached" +msgstr "Fristående" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"%d Filament inställning och %d Process inställning är kopplade till denna " +"printer. Dessa inställningar raderas om printern raderas." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "Inställningar som ärvts av andra inställningar kan inte raderas!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Förinställning" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "" +"Följande förinställning raderas också.@Följande förinställningar raderas " +"också." +msgstr[1] "" +"Följande förinställning raderas också.@Följande förinställningar raderas " +"också." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Är du säker på att du vill radera den valda inställningen? \n" +"Om inställningen motsvarar ett filament som för närvarande används på din " +"skrivare, vänligen återställ filament informationen för den platsen." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Välja %1% den valda förinställningen?" + +msgid "All" +msgstr "Allt" + +msgid "Set" +msgstr "Välj" + +msgid "Click to reset current value and attach to the global value." +msgstr "" +"Klicka för att återställa aktuellt värde och koppla till det övergripande " +"värdet." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Klicka för att släppa aktuell modifiering och återställa till sparat värde." + +msgid "Process Settings" +msgstr "Processinställningar" + +msgid "Undef" +msgstr "Oidentifierad" + +msgid "Unsaved Changes" +msgstr "Ej sparade ändringar" + +msgid "Transfer or discard changes" +msgstr "Överge eller Behåll ändringar" + +msgid "Old Value" +msgstr "Gammalt värde" + +msgid "New Value" +msgstr "Nytt värde" + +msgid "Transfer" +msgstr "Överför" + +msgid "Don't save" +msgstr "Spara inte" + +msgid "Discard" +msgstr "Överge" + +msgid "Click the right mouse button to display the full text." +msgstr "Högerklicka för att se hela texten." + +msgid "All changes will not be saved" +msgstr "Ändringarna sparas ej" + +msgid "All changes will be discarded." +msgstr "Alla ändringar överges." + +msgid "Save the selected options." +msgstr "Spara de valda alternativen." + +msgid "Keep the selected options." +msgstr "Behåll de valda alternativen." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Överför de valda alternativen till den nyligen valda förinställningen." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Spara de valda alternativen för förinställning \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Överför de valda alternativen till den nyligen valda förinställningen \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "Förinställningen \"%1%\" innehåller följande osparade ändringar:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"Förinställningen \"%1%\" är inte kompatibel med den nya skrivarens profil " +"och innehåller följande osparade ändringar:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"Förinställningen \"%1%\" är inte kompatibel med den nya process profilen och " +"innehåller följande osparade ändringar:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "You have changed some settings of preset \"%1%\". " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"You can save or discard the preset values you have modified." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" + +msgid "You have previously modified your settings." +msgstr "You have previously modified your settings." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" + +msgid "Extruders count" +msgstr "Extruder kalkylering" + +msgid "General" +msgstr "Allmän" + +msgid "Capabilities" +msgstr "Förmågor" + +msgid "Show all presets (including incompatible)" +msgstr "Visa alla inställningar (inklusive inkompatibla)" + +msgid "Select presets to compare" +msgstr "Välj förinställningar att jämföra" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" + +msgid "Transfer values from left to right" +msgstr "" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" + +msgid "Add File" +msgstr "Lägg till fil" + +msgid "Set as cover" +msgstr "Ställ in som skydd" + +msgid "Cover" +msgstr "Skydd" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "Namnet \"%1%\" finns redan." + +msgid "Basic Info" +msgstr "Grundläggande information" + +msgid "Pictures" +msgstr "Bilder" + +msgid "Bill of Materials" +msgstr "Materialförteckning" + +msgid "Assembly Guide" +msgstr "Monterings Guide" + +msgid "Author" +msgstr "Författare" + +msgid "Model Name" +msgstr "Modell Namn" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Uppdatering" + +msgid "A new version is available" +msgstr "En ny version är tillgänglig" + +msgid "Configuration update" +msgstr "Konfigurerings uppdatering" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "Ett nytt konfigurations paket finns tillgängligt, Installera?" + +msgid "Description:" +msgstr "Förklaring:" + +msgid "Configuration incompatible" +msgstr "Ej kompatibel konfiguration" + +msgid "the configuration package is incompatible with current application." +msgstr "konfigurations paketet är ej kompatibel med nuvarande applicering." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"Konfigurations paketet är ej kompatibel med nuvarande applicering.\n" +"%s uppdaterar konfigurations paketet för att möjliggöra start" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Avsluta %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "" +"konfigurations paketet är ej kompatibel med nuvarande version av Bambu " +"Studio." + +msgid "Configuration updates" +msgstr "Konfigurationen uppdateras" + +msgid "No updates available." +msgstr "Inga uppdateringar tillgängliga." + +msgid "The configuration is up to date." +msgstr "Konfigurationen är aktuell." + +msgid "Obj file Import color" +msgstr "Obj file Import color" + +msgid "Specify number of colors:" +msgstr "Specify number of colors:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "The color count should be in range [%d, %d]." + +msgid "Recommended " +msgstr "Recommended " + +msgid "Current filament colors:" +msgstr "Current filament colors:" + +msgid "Quick set:" +msgstr "Quick set:" + +msgid "Color match" +msgstr "Color match" + +msgid "Approximate color matching." +msgstr "Approximate color matching." + +msgid "Append" +msgstr "Append" + +msgid "Add consumable extruder after existing extruders." +msgstr "Add consumable extruder after existing extruders." + +msgid "Reset mapped extruders." +msgstr "Reset mapped extruders." + +msgid "Cluster colors" +msgstr "Cluster colors" + +msgid "Map Filament" +msgstr "Map Filament" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Warning: The count of newly added and \n" +" current extruders exceeds 16." + +msgid "Ramming customization" +msgstr "" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" + +msgid "Total ramming time" +msgstr "" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "" + +msgid "Ramming line width" +msgstr "" + +msgid "Ramming line spacing" +msgstr "" + +msgid "Auto-Calc" +msgstr "Autoberäkna" + +msgid "Re-calculate" +msgstr "Utför beräkningen igen" + +msgid "Flushing volumes for filament change" +msgstr "Rensnings volym för filament byte" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Rensnings volym (mm³) för varje filament." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Förslag: Rensnings volym i intervallet [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "Multiplikatorn ska ligga inom intervallet [%.2f, %.2f]." + +msgid "Multiplier" +msgstr "Multiplikator" + +msgid "unloaded" +msgstr "utmatad" + +msgid "loaded" +msgstr "laddad" + +msgid "Filament #" +msgstr "Filament #" + +msgid "From" +msgstr "Från" + +msgid "To" +msgstr "Till" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "Bambu Network plug-in hittades inte." + +msgid "Click here to download it." +msgstr "Klicka här för att ladda ner den." + +msgid "Login" +msgstr "Logga in" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "Konfigurations paketet är ändrat i föregående Kofigurations Guide" + +msgid "Configuration package changed" +msgstr "Konfigurations paketet är ändrat" + +msgid "Toolbar" +msgstr "Verktygsfält" + +msgid "Objects list" +msgstr "Objektlista" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Importera geometri data från STL/STEP/3MF/OBJ/AMF filer" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Skift+G" + +msgid "Paste from clipboard" +msgstr "Klistra in ifrån urklipp" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "Visa/Dölj 3Dconnexion enheternas inställnings dialogruta" + +msgid "Switch table page" +msgstr "Byt tabellsida" + +msgid "Show keyboard shortcuts list" +msgstr "Visa tangentbordets genvägs lista" + +msgid "Global shortcuts" +msgstr "Övergripande genvägar" + +msgid "Rotate View" +msgstr "Rotera vy" + +msgid "Pan View" +msgstr "Panoreringsvy" + +msgid "Mouse wheel" +msgstr "Mus hjul" + +msgid "Zoom View" +msgstr "Zoomvy" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Auto placera valda objekt eller alla objekt. Om det finns valda objekt så " +"placeras endast dem. Alternativt så placeras alla objekt på nuvarande disk." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Dölj/Visa meny" + +msgid "⌘+Any arrow" +msgstr "⌘+Valfri pil" + +msgid "Movement in camera space" +msgstr "Rörelse i kamera område" + +msgid "⌥+Left mouse button" +msgstr "⌥+Vänster musknapp" + +msgid "Select a part" +msgstr "Välj del" + +msgid "⌘+Left mouse button" +msgstr "⌘+Vänster musknapp" + +msgid "Select multiple objects" +msgstr "Välj flera objekt" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+Valfri pil" + +msgid "Alt+Left mouse button" +msgstr "Alt+Vänster musknapp" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+vänster musknapp" + +msgid "Shift+Left mouse button" +msgstr "Shift+Vänster musknapp" + +msgid "Select objects by rectangle" +msgstr "Välj objekt efter rektangel" + +msgid "Arrow Up" +msgstr "Pil Upp" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Flytta markeringen 10mm i positiv Y riktning" + +msgid "Arrow Down" +msgstr "Pil Ner" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Flytta markeringen 10mm i negativ Y riktning" + +msgid "Arrow Left" +msgstr "Pil Vänster" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Flytta markeringen 10mm i negativ X riktning" + +msgid "Arrow Right" +msgstr "Pil Höger" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Flytta markeringen 10mm i positiv X riktning" + +msgid "Shift+Any arrow" +msgstr "Shift+valfri pil" + +msgid "Movement step set to 1 mm" +msgstr "Rörelse steg är vald till 1mm" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "tangentbord 1-9: fastställer filament för objekt/del" + +msgid "Camera view - Default" +msgstr "Kamera vy - Standard" + +msgid "Camera view - Top" +msgstr "Kamera vy - Topp" + +msgid "Camera view - Bottom" +msgstr "Kamera vy - Botten" + +msgid "Camera view - Front" +msgstr "Kamera vy - Fram" + +msgid "Camera view - Behind" +msgstr "Kamera vy - Bakom" + +msgid "Camera Angle - Left side" +msgstr "Kamera vy - Vänster sida" + +msgid "Camera Angle - Right side" +msgstr "Kamera vy - Höger sida" + +msgid "Select all objects" +msgstr "Välj alla objekt" + +msgid "Gizmo move" +msgstr "Gizmo flytta" + +msgid "Gizmo scale" +msgstr "Gizmo skala" + +msgid "Gizmo rotate" +msgstr "Gizmo rotera" + +msgid "Gizmo cut" +msgstr "Gizmo skär" + +msgid "Gizmo Place face on bed" +msgstr "Gizmo Placera ansiktet på byggytan" + +msgid "Gizmo SLA support points" +msgstr "Gizmo SLA support punkter" + +msgid "Gizmo FDM paint-on seam" +msgstr "Gizmo FDM målad söm" + +msgid "Gizmo Text emboss / engrave" +msgstr "" + +msgid "Zoom in" +msgstr "" + +msgid "Zoom out" +msgstr "" + +msgid "Switch between Prepare/Preview" +msgstr "" + +msgid "Plater" +msgstr "Plätering/Förgyllning" + +msgid "Move: press to snap by 1mm" +msgstr "Flytta: tryck för att låsa med 1mm" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Mushjul" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Support/Färgläggning: justera penn radie" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Mushjul" + +msgid "Support/Color Painting: adjust section position" +msgstr "Support/Färgläggning:justera sektions positionen" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+mushjul" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Mushjul" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Välj extruder nummer för objekten och delarna" + +msgid "Delete objects, parts, modifiers " +msgstr "Radera objekten, delarna och anpassningar " + +msgid "Select the object/part and press space to change the name" +msgstr "Välj objektet/delen och tryck space för att ändra namnet" + +msgid "Mouse click" +msgstr "Mus klick" + +msgid "Select the object/part and mouse click to change the name" +msgstr "Välj objektet/delen och mus klicka för att ändra namnet" + +msgid "Objects List" +msgstr "Objekts lista" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Vertikal reglage - Flytta aktivt tryck Upp" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Vertikal reglage - Flytta aktivt tryck Ner" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Horisontell reglage - Flytta aktivt tryck Vänster" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Horisontell reglage - Flytta aktivt tryck Höger" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "På/Av 1 lager läge för det vertikala reglaget" + +msgid "On/Off g-code window" +msgstr "" + +msgid "Move slider 5x faster" +msgstr "Flytta reglage 5x snabbare" + +msgid "Shift+Mouse wheel" +msgstr "Shift+Mushjulet" + +msgid "Horizontal slider - Move to start position" +msgstr "" + +msgid "Horizontal slider - Move to last position" +msgstr "" + +msgid "Release Note" +msgstr "Meddelande om utgåvan" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "version %s uppdaterings information:" + +msgid "Network plug-in update" +msgstr "Uppdatering av nätverks plugin" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Klicka på OK för att uppdatera Nätverks plugin programmet nästa gång Bambu " +"Studio startar." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "En ny nätverksplugin (%s) är tillgänglig. Vill du installera den?" + +msgid "New version of Snapmaker Orca" +msgstr "Ny version av Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Hoppa över denna version" + +msgid "Done" +msgstr "Klar" + +msgid "resume" +msgstr "resume" + +msgid "Resume Printing" +msgstr "Resume Printing" + +msgid "Resume Printing(defects acceptable)" +msgstr "Resume Printing (defects acceptable)" + +msgid "Resume Printing(problem solved)" +msgstr "Resume Printing (problem solved)" + +msgid "Stop Printing" +msgstr "Stop Printing" + +msgid "Check Assistant" +msgstr "Check Assistant" + +msgid "Filament Extruded, Continue" +msgstr "Filament Extruded, Continue" + +msgid "Not Extruded Yet, Retry" +msgstr "Not Extruded Yet, Retry" + +msgid "Finished, Continue" +msgstr "Finished, Continue" + +msgid "Load Filament" +msgstr "Ladda Filament" + +msgid "Filament Loaded, Resume" +msgstr "Filament Loaded, Resume" + +msgid "View Liveview" +msgstr "View Liveview" + +msgid "Confirm and Update Nozzle" +msgstr "Bekräfta och uppdatera nozzeln" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "LAN-anslutning misslyckades (skickar utskriftsfil)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "Steg 1: Bekräfta att Snapmaker Orca och din skrivare finns på samma LAN." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Steg 2, om IP- och åtkomst koden nedan skiljer sig från de faktiska värdena " +"på skrivaren, korrigera dem." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Behörighetskod: " + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Var hittar du skrivarens IP- och åtkomstkod?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "Steg 3: Pinga IP-adressen för att kontrollera paketförlust och latens." + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP- och åtkomstkoder verifierade! Du kan stänga fönstret" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "Anslutningen misslyckades, kontrollera IP och åtkomstkod" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Anslutningen misslyckades! Om din IP-adress och åtkomstkod är korrekta, \n" +"gå vidare till steg 3 för felsökning av nätverksproblem" + +msgid "Model:" +msgstr "Modell:" + +msgid "Serial:" +msgstr "Serienummer:" + +msgid "Version:" +msgstr "Version:" + +msgid "Update firmware" +msgstr "Uppdatera programvara" + +msgid "Beta version" +msgstr "Betaversion" + +msgid "Latest version" +msgstr "Senaste version" + +msgid "Updating" +msgstr "Uppdaterar" + +msgid "Updating failed" +msgstr "Uppdateringen misslyckades" + +msgid "Updating successful" +msgstr "Uppdateringen lyckades" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Är du säker på att du vill uppdatera? Uppdateringen tar ca 10 minuter. Stäng " +"inte av strömmen medans printern uppdaterar." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"En viktig uppdatering upptäcktes och måste köras innan utskriften kan " +"fortsätta. Vill du uppdatera nu? Du kan också uppdatera senare från " +"'Uppdatera Mjukvaran'." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"Firmware versionen är onormal. Reparation och uppdatering krävs före " +"utskrift. Vill du uppdatera nu? Du kan också uppdatera senare på skrivaren " +"eller uppdatera nästa gång du startar Snapmaker Orca." + +msgid "Extension Board" +msgstr "Utöknings enhet" + +msgid "Saving objects into the 3mf failed." +msgstr "Sparande av objektet till 3mf misslyckades." + +msgid "Only Windows 10 is supported." +msgstr "Endast Windows 10 stöds." + +msgid "Failed to initialize the WinRT library." +msgstr "Start av WinRT biblioteket misslyckades." + +msgid "Exporting objects" +msgstr "Exporterar objekten" + +msgid "Failed loading objects." +msgstr "Misslyckades att ladda objekten." + +msgid "Repairing object by Windows service" +msgstr "Reparerar objekt med Windows service" + +msgid "Repair failed." +msgstr "Reparation misslyckades." + +msgid "Loading repaired objects" +msgstr "Laddar de reparerade objekten" + +msgid "Exporting 3mf file failed" +msgstr "Export av 3mf filen misslyckades" + +msgid "Import 3mf file failed" +msgstr "Importen av 3mf filen misslyckades" + +msgid "Repaired 3mf file does not contain any object" +msgstr "Den reparerade 3mf filen innehåller inga objekt" + +msgid "Repaired 3mf file contains more than one object" +msgstr "Den reparerade 3mf filen innehåller mer än ett objekt" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "Den reparerade 3mf filen innehåller ingen volym" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "Den reparerade 3mf filen innehåller mer än en volym" + +msgid "Repair finished" +msgstr "Reparation klar" + +msgid "Repair canceled" +msgstr "Reparation avbruten" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Kopierar fil %1% till %2% misslyckade: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "Kontrollera ej sparade ändringar innan konfigureringen uppdateras." + +msgid "Configuration package: " +msgstr "" + +msgid " updated to " +msgstr "" + +msgid "Open G-code file:" +msgstr "Öppna G-kod fil:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Ett objekt har ett tomt första lager och kan inte skrivas ut.Skär ut botten " +"eller aktivera support." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "Ett objekt har tomma lager mellan %1% och %2% utskrift ej möjlig." + +#, boost-format +msgid "Object: %1%" +msgstr "Objekt: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Delar av objektet på dessa höjder är för tunna eller så har objektet en " +"felaktig mesh" + +msgid "No object can be printed. Maybe too small" +msgstr "Inget objekt kan skrivas ut. Det kan vara för litet" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Misslyckades att skapa G-kod för ogiltlig custom G-kod.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "Kontrollera custom G-kod elleranvänd standard custom G-kod." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Skapar G-kod: lager %1%" + +msgid "Inner wall" +msgstr "Inre vägg" + +msgid "Outer wall" +msgstr "Yttre vägg" + +msgid "Overhang wall" +msgstr "Överhängs vägg" + +msgid "Sparse infill" +msgstr "Sparsam ifyllnad" + +msgid "Internal solid infill" +msgstr "Invändig solid fyllnad" + +msgid "Top surface" +msgstr "Topp yta" + +msgid "Bottom surface" +msgstr "Botten yta" + +msgid "Internal Bridge" +msgstr "" + +msgid "Gap infill" +msgstr "Mellanrums ifyllnad" + +msgid "Support interface" +msgstr "Support kontaktyta" + +msgid "Support transition" +msgstr "Support övergång" + +msgid "Multiple" +msgstr "Flertalet" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Misslyckades att kalkylera linjebredden av %1%. Kan inte få värdet av “%2%” " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" + +msgid "undefined error" +msgstr "Oidentifierat fel" + +msgid "too many files" +msgstr "för många filer" + +msgid "file too large" +msgstr "filen är för stor" + +msgid "unsupported method" +msgstr "metoden stöds inte" + +msgid "unsupported encryption" +msgstr "avkodningen stöds inte" + +msgid "unsupported feature" +msgstr "fuktionen stöds inte" + +msgid "failed finding central directory" +msgstr "centrala katalogen hittades ej" + +msgid "not a ZIP archive" +msgstr "inte ett ZIP arkiv" + +msgid "invalid header or corrupted" +msgstr "ogiltig rubrik eller skadad" + +msgid "unsupported multidisk" +msgstr "Spara till RAID stöds ej" + +msgid "decompression failed" +msgstr "dekompression misslyckad" + +msgid "compression failed" +msgstr "kompression misslyckad" + +msgid "unexpected decompressed size" +msgstr "ej förväntad dekompressions storlek" + +msgid "CRC check failed" +msgstr "CRC kontroll misslyckad" + +msgid "unsupported central directory size" +msgstr "centrala katalogens storlek stöds ej" + +msgid "allocation failed" +msgstr "tilldelning misslyckad" + +msgid "file open failed" +msgstr "öppen fil misslyckad" + +msgid "file create failed" +msgstr "skapande av fil misslyckad" + +msgid "file write failed" +msgstr "filskrivning misslyckad" + +msgid "file read failed" +msgstr "filläsning misslyckad" + +msgid "file close failed" +msgstr "filavslutning misslyckad" + +msgid "file seek failed" +msgstr "filsökning misslyckad" + +msgid "file stat failed" +msgstr "filstatistik misslyckad" + +msgid "invalid parameter" +msgstr "ogiltig parameter" + +msgid "invalid filename" +msgstr "ogiltligt filnamn" + +msgid "buffer too small" +msgstr "bufferten för liten" + +msgid "internal error" +msgstr "internt fel" + +msgid "file not found" +msgstr "filen hittades inte" + +msgid "archive too large" +msgstr "för stort arkiv" + +msgid "validation failed" +msgstr "validering misslyckad" + +msgid "write callback failed" +msgstr "skriv återuppringning misslyckad" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% är för nära undantagsområde. Det kan förekomma kollisioner vid utskrift." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% är för nära andra och kan orsaka kollisioner." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% är för hög, och kollisioner kommer att uppstå." + +msgid " is too close to others, there may be collisions when printing." +msgstr " är för nära andra; det kan uppstå kollisioner vid utskrift." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" är för nära undantagsområdet, det kan förekomma kollisioner vid utskrift." + +msgid "Prime Tower" +msgstr "Prime Torn" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr "är för nära andra och kollisioner kan orsakas.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" +" är för nära uteslutningsområdet, och kollisioner kommer att orsakas.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Multipla filament som har större temperatur skillnader kan inte skrivas ut " +"tillsammans. Extruder och nozzel kan blockeras eller skadas under utskrift" + +msgid "No extrusions under current settings." +msgstr "Nuvarande inställning har ingen extrudering." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"Smooth läge för timelapse stöds inte när ”per objekt” -sekvens är aktiverad." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Kontrollera \"Per objekt\" utskrifts sekvens för att skriva ut multipla " +"objekt i Vase läge." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"Spiral Vase läge fungerar inte när objektet innehåller mer än ett material." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "" + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" + +msgid "Variable layer height is not supported with Organic supports." +msgstr "Variabel lagerhöjd stöds inte med organiska support." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Olika nozzel diametrar och olika filament diametrar är inte tillåtna när " +"prime tower är aktiverat." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"Wipe Tower stöds för närvarande endast med relativ extruder adressering " +"(use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"Förebyggande av läckage stöds för närvarande inte med prime tower aktiverat." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"Prime Tower stöds för närvarande endast för G-kods varianterna Marlin, " +"RepRap/Sprinter, RepRapFirmware och Repetier." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "Ett Prime Torn stöds inte i \"Per objekt\" utskrift." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"Ett Prime Torn stöds inte med adaptiv lagerhöjd är aktiverad. Det kräver att " +"samtliga objekt har samma lagerhöjd." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"Ett Prime Torn kräver att \"mellanrums ifyllnaden\" är av multipla lager " +"höjder" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "Ett Prime Torn kräver att alla objekt har samma lagerhöjd" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"Ett Prime Torn kräver att alla objekt skrivs ut med samma antal Raft lager" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "Ett Prime Torn kräver att alla object är beredda med samma lagerhöjd." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "Prime Tower stöds endast om alla objekt har samma variabla lagerhöjd." + +msgid "Too small line width" +msgstr "För liten linjebredd" + +msgid "Too large line width" +msgstr "För stor linjebredd" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "Ett Prime Torn kräver att support har samma lagerhöjd som objektet." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Tvingande support används men support är inte aktiverad. Aktivera support." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "Lagerhöjden kan inte överstiga nozzel diametern" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Plate %d: %s stöder inte filamentet %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" + +msgid "Generating skirt & brim" +msgstr "Skapar Skirt & Brim" + +msgid "Exporting G-code" +msgstr "Exporterar G-kod" + +msgid "Generating G-code" +msgstr "Skapar G-kod" + +msgid "Failed processing of the filename_format template." +msgstr "Skapande av filnamn_format template misslyckades." + +msgid "Printable area" +msgstr "Utskriftsbar yta" + +msgid "Bed exclude area" +msgstr "Utesluten yta av byggplattan" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Område som inte kan skrivas ut i XY-planet. För skrivare i X1-serien används " +"till exempel det främre vänstra hörnet för att skära av filamentet vid byte " +"av filament. Området uttrycks som en polygon med punkter i följande format: " +"\"XxY, XxY, ...\"" + +msgid "Bed custom texture" +msgstr "Anpassad byggplattas textur" + +msgid "Bed custom model" +msgstr "Anpassad byggplattas typ" + +msgid "Elephant foot compensation" +msgstr "Elefant fots kompensation" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "" +"Minska första lager på byggplattan för att kompensera elefant fots effekten" + +msgid "Elephant foot compensation layers" +msgstr "" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" + +msgid "layers" +msgstr "lager" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Lagerhöjd för varje lager. Mindre lagerhöjd ger mer exakt tolerans men ökar " +"även utskriftstiden" + +msgid "Printable height" +msgstr "Utskriftsbar höjd" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "Maximala utskriftshöjd begränsas av skrivarens mekanism" + +msgid "Preferred orientation" +msgstr "" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" + +msgid "Printer preset names" +msgstr "Namn på förinställda skrivare" + +msgid "Use 3rd-party print host" +msgstr "" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" + +msgid "Hostname, IP or URL" +msgstr "Värdnamn, IP eller URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca kan ladda upp G-kod filer till en printer värd. Det här fältet " +"ska innehålla värdnamn, IP-adress eller URL för printer värd platsen. Du kan " +"få tillgång till printer värd till HAProxy med grundläggande autentisering " +"aktiverad genom att ange användarnamn och lösenord i URL:en i följande " +"format: https://username:password@your-octopi-address/" + +msgid "Device UI" +msgstr "Enhetens gränssnitt" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Ange webbadressen till enhetens användar gränssnitt om den inte är densamma " +"som printer värd" + +msgid "API Key / Password" +msgstr "API Nyckel/Lösenord" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca kan ladda upp G-kod filer till en printer värd. Det här fältet " +"ska innehålla API nyckeln eller lösenordet som krävs för autentisering." + +msgid "Name of the printer" +msgstr "Skrivarens namn" + +msgid "HTTPS CA File" +msgstr "HTTPS CA fil" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Anpassad CA-certifikatfil kan anges för HTTPS OctoPrint-anslutningar, i crt/" +"pem-format. Om den lämnas tom används standarddatabasen för OS CA-certifikat." + +msgid "User" +msgstr "Användare" + +msgid "Password" +msgstr "Lösenord" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Ignorera kontroller för återkallande av HTTPS-certifikat" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ignorera kontroller för återkallande av HTTPS-certifikat om " +"distributionspunkter saknas eller är offline. Man kanske vill aktivera det " +"här alternativet för självsignerade certifikat om anslutningen misslyckas." + +msgid "Names of presets related to the physical printer" +msgstr "Namn på förinställningar relaterade till den fysiska skrivaren" + +msgid "Authorization Type" +msgstr "Auktoriserings Typ" + +msgid "API key" +msgstr "API nyckel" + +msgid "HTTP digest" +msgstr "HTTP sammandrag" + +msgid "Avoid crossing wall" +msgstr "Undvik att korsa väggar" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Undvik väggar vid förflyttning, för att undvika att filament droppar på ytan" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Undvik att korsa väggar - Max omvägslängd" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Maximalt omvägsavstånd för att undvika att korsa vägg: Skrivaren kommer inte " +"att omväga om omvägsavståndet är större än detta värde. Omvägs längd kan " +"anges antingen som ett absolut värde eller som procent (till exempel 50 %) " +"av en direkt färdväg. Ett värde på 0 kommer att inaktivera detta." + +msgid "mm or %" +msgstr "mm eller %" + +msgid "Other layers" +msgstr "Andra lager" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Detta är byggplattans temperatur för lager förutom det första. Värdet 0 " +"betyder att filamentet inte stöder utskrift på Cool Plate." + +msgid "°C" +msgstr "° C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Detta är byggplattans temperatur för lager förutom det första. Ett värde på " +"0 betyder att filamentet inte stöder utskrift på Engineering Plate." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Detta är byggplattans temperatur för lager förutom det första. Värdet 0 " +"betyder att filamentet inte stöder utskrift på High Temp Plate." + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Byggplattans temperatur efter det första lagret. 0 betyder att filamentet " +"inte stöds på den texturerade PEI-plattan." + +msgid "Initial layer" +msgstr "Första lager" + +msgid "Initial layer bed temperature" +msgstr "Byggplattans första lager temperatur" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Detta är byggplattans temperatur för första lager. Värdet 0 betyder att " +"filamentet inte stöder utskrift på Cool Plate." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Detta är byggplattans temperatur för första lager. Värdet 0 betyder att " +"filamentet inte stöder utskrift på Engineering Plate." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Detta är byggplattans temperatur för första lager. Värdet 0 betyder att " +"filamentet inte stöder utskrift på High Temp Plate." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Byggplattans temperatur för första lager 0 betyder att filamentet inte stöds " +"på den texturerade PEI-plattan." + +msgid "Bed types supported by the printer" +msgstr "Byggplattans typ stöds av skrivaren" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "Engineering Plate" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "Första lagrets utskrifts ordning" + +msgid "Other layers print sequence" +msgstr "Other layers print sequence" + +msgid "The number of other layers print sequence" +msgstr "The number of other layers print sequence" + +msgid "Other layers filament sequence" +msgstr "Other layers filament sequence" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "Denna G-kod används för varje lager innan Z axis lyfts" + +msgid "Bottom shell layers" +msgstr "Botten skal lager" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Antal solida lager av bottenskalet, detta inkluderar botten lager. När " +"tjockleken beräknas av detta värde som är tunnare än bottenskalets tjocklek, " +"så kommer bottenskalets lagerantal att öka" + +msgid "Bottom shell thickness" +msgstr "Bottenskals tjocklek" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"Antal solida botten lager ökar om tjockleken beräknas om bottenskals lager " +"är tunnare än detta värde. Detta kan undvikas genom att ha tunnare väggar " +"när lagerhöjden är liten. 0 betyder att denna inställningen är inaktiverad " +"och bottenskalets tjocklek är styrd av bottenskalets lager" + +msgid "Apply gap fill" +msgstr "" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" + +msgid "Everywhere" +msgstr "" + +msgid "Top and bottom surfaces" +msgstr "" + +msgid "Nowhere" +msgstr "" + +msgid "Force cooling for overhang and bridge" +msgstr "Tvinga kylning av överhäng och bridge/bryggor" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Aktivera detta val för att optimisera del kylningens hastighet för överhäng " +"och bridge/bryggor" + +msgid "Fan speed for overhang" +msgstr "Fläkthastighet för överhäng" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Tvinga del kylningsfläkten att hålla denna hastighet när utskrift av bridge/" +"bryggor eller överhäng som är större än överhängs graderna skrivs ut. " +"Tvingande kylning för överhäng och bridge/bryggor kan ge bättre kvalitet på " +"dessa delar" + +msgid "Cooling overhang threshold" +msgstr "Överhängs kylningens tröskel" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Tvinga kylfläkten att vara en specifik hastighet när överhängs graden av " +"objektets del överstiger detta värde. Detta uttrycks som en procentsats som " +"anger hur mycket bredden på linjen utan stöd från det nedre lagret. 0%% " +"betyder tvinga kylning för all yttervägg oavsett överhängs grad." + +msgid "Bridge infill direction" +msgstr "" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Bridging vinkel åsidosättning. 0 betyder att bridging vinkeln beräknas " +"automatiskt. Annars kommer den medföljande vinkeln att användas för extern " +"bridging. Använd 180° för noll vinkel." + +msgid "Bridge density" +msgstr "" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" + +msgid "Bridge flow ratio" +msgstr "Bridge/Brygg flöde" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Minska detta värde något (tex 0.9) för att minska material åtgång för " +"bridges/bryggor, detta för att förbättra kvaliteten" + +msgid "Internal bridge flow ratio" +msgstr "" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" + +msgid "Top surface flow ratio" +msgstr "Flödesförhållande för övre ytan" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Denna faktor påverkar mängden material för den övre solida fyllningen. Du " +"kan minska den något för att få en jämn ytfinish." + +msgid "Bottom surface flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" + +msgid "Precise wall" +msgstr "" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" + +msgid "Only one wall on top surfaces" +msgstr "Endast en vägg på topp ytan" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Använd endast en vägg på topp ytan, för att ge mer utrymme till det övre " +"ifyllningsmönstret" + +msgid "One wall threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" + +msgid "Only one wall on first layer" +msgstr "Endast en vägg på första lagret" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" + +msgid "Extra perimeters on overhangs" +msgstr "" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" + +msgid "Reverse on odd" +msgstr "" + +msgid "Overhang reversal" +msgstr "" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" + +msgid "Reverse only internal perimeters" +msgstr "" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" + +msgid "Bridge counterbore holes" +msgstr "" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" + +msgid "Partially bridged" +msgstr "" + +msgid "Sacrificial layer" +msgstr "" + +msgid "Reverse threshold" +msgstr "" + +msgid "Overhang reversal threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" + +msgid "Classic mode" +msgstr "" + +msgid "Enable this option to use classic mode" +msgstr "" + +msgid "Slow down for overhang" +msgstr "Sakta ner vid överhäng" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Aktivera detta val för att sänka hastigheten för olika överhängs grader" + +msgid "Slow down for curled perimeters" +msgstr "" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" + +msgid "mm/s or %" +msgstr "mm/s eller %." + +msgid "External" +msgstr "" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Hastighet för bridges/bryggor och hela överhängs väggar" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" + +msgid "Brim width" +msgstr "Brim bredd" + +msgid "Distance from model to the outermost brim line" +msgstr "Avståndet från modellen till yttersta brim linjen" + +msgid "Brim type" +msgstr "Brim typ" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Detta styr genereringen av brim på modellens yttre och/eller inre sida. Auto " +"innebär att brim bredd analyseras och beräknas automatiskt." + +msgid "Brim-object gap" +msgstr "Avstånd mellan brim och modell" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Mellanrum mellan innersta brim linjen och objektet kan underlätta vid " +"borttagande av brim" + +msgid "Brim ears" +msgstr "" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "" + +msgid "Brim ear max angle" +msgstr "" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" + +msgid "Brim ear detection radius" +msgstr "" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" + +msgid "Compatible machine" +msgstr "Kompatibel maskin" + +msgid "upward compatible machine" +msgstr "uppåt kompatibel maskin" + +msgid "Compatible machine condition" +msgstr "Kompatibel maskin status" + +msgid "Compatible process profiles" +msgstr "Kompatibla process profiler" + +msgid "Compatible process profiles condition" +msgstr "Kompatibla process profilers status" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Utskrifts sekvens, lager för lager eller objekt för objekt" + +msgid "By layer" +msgstr "Per lager" + +msgid "By object" +msgstr "Per objekt" + +msgid "Intra-layer order" +msgstr "" + +msgid "Print order within a single layer" +msgstr "" + +msgid "As object list" +msgstr "" + +msgid "Slow printing down for better layer cooling" +msgstr "Sakta ner utskrift för bättre kylning av lager" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Aktivera detta val för att sänka utskifts hastigheten för att göra den sista " +"lager tiden inte kortare än lager tidströskeln \"Max fläkthastighets tröskel" +"\", detta så att lager kan kylas under en längre tid. Detta kan förbättra " +"kylnings kvaliteten för små detaljer" + +msgid "Normal printing" +msgstr "Normal utskrift" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"Standard acceleration för både normal utskrift och förflyttning förrutom " +"första lager" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Standard filament profil" + +msgid "Default filament profile when switch to this machine profile" +msgstr "Standard filament profil vid byte till denna maskinens profil" + +msgid "Default process profile" +msgstr "Standard process profil" + +msgid "Default process profile when switch to this machine profile" +msgstr "Standard process profil vid byte till denna maskinens profil" + +msgid "Activate air filtration" +msgstr "Activate air filtration" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "Fan speed" +msgstr "Fläkt hastighet" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Hastighet för frånlufts fläkt under utskrift. Denna hastighet kommer att " +"åsidosätta hastigheten i filament anpassad g-kod" + +msgid "Speed of exhaust fan after printing completes" +msgstr "" + +msgid "No cooling for the first" +msgstr "Ingen kylning vid första" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Stoppa alla kylfläktar vid det första valda lager. Kylfläkten ska vara " +"stängd vid första lager för att förbättra fästet på byggplattan" + +msgid "Don't support bridges" +msgstr "Ingen support vid bridges/bryggor" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Detta inaktiverar support vid bridges/bryggor för att minska mängden av " +"support. Bridges/Bryggor kan vanligtvis skrivas ut utan support om de inte " +"är för långa avstånd" + +msgid "Thick bridges" +msgstr "Tjocka bridges" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Om aktiverad, bridges är mer tillförlitliga och kan överbrygga längre " +"sträckor men kan se sämre ut. Om de är inaktiverade ser bridges bättre ut " +"men är tillförlitliga endast för kortare avstånd." + +msgid "Thick internal bridges" +msgstr "" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" + +msgid "Don't filter out small internal bridges (beta)" +msgstr "" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" + +msgid "Disabled" +msgstr "" + +msgid "Limited filtering" +msgstr "" + +msgid "No filtering" +msgstr "" + +msgid "Max bridge length" +msgstr "Max bridge/brygg längd" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Maxlängd för bridge/brygga som inte behöver support. Ange 0 om du vill att " +"alla bridges/bryggor ska få support, och ett mycket stort värde om du inte " +"vill att några bridges/bryggor ska få support." + +msgid "End G-code" +msgstr "Slut G-kod" + +msgid "End G-code when finish the whole printing" +msgstr "Lägg till slut G-kod när utskriften har avslutas" + +msgid "Between Object Gcode" +msgstr "Mellan objekt G kod" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Infoga G-kod mellan objekt. Denna parameter träder i kraft först när du " +"skriver ut dina modeller objekt för objekt." + +msgid "End G-code when finish the printing of this filament" +msgstr "Lägg till slut G-kod när utskriften har avslutas med detta filament" + +msgid "Ensure vertical shell thickness" +msgstr "Säkerställ vertikal skaltjocklek" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" + +msgid "Critical Only" +msgstr "" + +msgid "Moderate" +msgstr "" + +msgid "Top surface pattern" +msgstr "Topp ytans mönster" + +msgid "Line pattern of top surface infill" +msgstr "Linjemönster för topp ytans ifyllnad" + +msgid "Concentric" +msgstr "Koncentrisk" + +msgid "Rectilinear" +msgstr "Räta linjer" + +msgid "Monotonic" +msgstr "Monoton" + +msgid "Monotonic line" +msgstr "Monoton linje" + +msgid "Aligned Rectilinear" +msgstr "Justerade Rätlinjig" + +msgid "Hilbert Curve" +msgstr "Hilbert kurvan" + +msgid "Archimedean Chords" +msgstr "Archimedean Chords" + +msgid "Octagram Spiral" +msgstr "Octagram Spiral" + +msgid "Bottom surface pattern" +msgstr "Botten ytans mönster" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "Botten ytans ifyllnads linjemönster, inte bridge/brygg ifyllnad" + +msgid "Internal solid infill pattern" +msgstr "Invändigt mönster för fyllning av solida ytor" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Hastigheten på yttre vägg som är mest synlig. Denna bör vara långsammare än " +"hastigheten på inner vägg för att uppnå bättre kvalitet." + +msgid "Small perimeters" +msgstr "Små perimetrar" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" + +msgid "Small perimeters threshold" +msgstr "" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"Detta ställer in tröskelvärdet för liten perimeterlängd. Standardgränsen är " +"0mm" + +msgid "Walls printing order" +msgstr "" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" + +msgid "Inner/Outer" +msgstr "" + +msgid "Outer/Inner" +msgstr "" + +msgid "Inner/Outer/Inner" +msgstr "" + +msgid "Print infill first" +msgstr "Printa fyllningen först" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" + +msgid "Wall loop direction" +msgstr "" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" + +msgid "Counter clockwise" +msgstr "" + +msgid "Clockwise" +msgstr "" + +msgid "Height to rod" +msgstr "Höjd till axel" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Avstånd från nozzel spetsen till den nedre stången. Används för att undvika " +"kollisioner vid utskrift av flera objekt." + +msgid "Height to lid" +msgstr "Höjd till locket" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Avstånd från nozzel spetsen till locket. Används för att undvika kollisioner " +"vid utskrift av flera objekt." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Frigångsradie runt extrudern: används för att undvika kollisioner vid " +"utskrift av flera objekt." + +msgid "Nozzle height" +msgstr "Nozzel höjd" + +msgid "The height of nozzle tip." +msgstr "Höjden på nozzel spetsen." + +msgid "Bed mesh min" +msgstr "" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Bed mesh max" +msgstr "" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Probe point distance" +msgstr "" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" + +msgid "Mesh margin" +msgstr "" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" + +msgid "Extruder Color" +msgstr "Extruder Färg" + +msgid "Only used as a visual help on UI" +msgstr "Används endast som visuell hjälp på UI" + +msgid "Extruder offset" +msgstr "Extruder offset" + +msgid "Flow ratio" +msgstr "Flödesförhållande" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"Materialets volym kan ha ändrats efter byte mellan smält och kristalliserat " +"tillstånd.Denna inställning ändrar alla inställningar för extruderings " +"flödet för detta filament proportionellt i G-koden. Det rekommenderade " +"värdet är mellan 0.95 och 1.05. Du kan finjustera detta värde för att få en " +"fin flat yta när visst överflöde eller underflöde finns" + +msgid "Enable pressure advance" +msgstr "Aktivera pressure advance" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" + +msgid "Keep fan always on" +msgstr "Behåll alltid fläkten på" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Om den här inställningen aktiveras, kommer en del kylfläkten aldrig stoppas " +"och den kommer att åtminstone gå på lägsta hastighet för att minska " +"frekvensen av start och stopp" + +msgid "Don't slow down outer walls" +msgstr "" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "Lager tid" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"Del kylfläkten kommer att aktiveras för lager vars beräknade tid är kortare " +"än detta värde. Fläkthastigheten interpoleras mellan den lägsta och högsta " +"fläkthastigheten enligt utskriftstiden för lager" + +msgid "Default color" +msgstr "Standardfärg" + +msgid "Default filament color" +msgstr "Standard filament färg" + +msgid "Filament notes" +msgstr "Filament notes" + +msgid "You can put your notes regarding the filament here." +msgstr "You can put your notes regarding the filament here." + +msgid "Required nozzle HRC" +msgstr "HRC nozzle krävs" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"Minsta HRC för nozzle som krävs för att skriva ut filament. Värdet 0 betyder " +"ingen kontroll av munstyckets HRC." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Den här inställningen är volymen filament som kan smältas och extruderas per " +"sekund. Utskriftshastigheten begränsas av den maximala volymhastigheten om " +"hastigheten är för hög och orimlig. Det här värdet kan inte vara noll." + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Inmatningstid för filament" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Ladda nytt filament vid byte av filament, endast för statistiska ändamål" + +msgid "Filament unload time" +msgstr "Utmatningstid för filament" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Ladda ur gammalt filament vid byte av filament, endast för statistiska " +"ändamål" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Filament diametern används för att beräkna extruderingen i G-kod, viktigt " +"att detta är rätt" + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" + +msgid "Loading speed" +msgstr "" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "" + +msgid "Loading speed at the start" +msgstr "" + +msgid "Speed used at the very beginning of loading phase." +msgstr "" + +msgid "Unloading speed" +msgstr "" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" + +msgid "Unloading speed at the start" +msgstr "" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" + +msgid "Delay after unloading" +msgstr "" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" + +msgid "Number of cooling moves" +msgstr "" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" + +msgid "Speed of the first cooling move" +msgstr "" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "" + +msgid "Minimal purge on wipe tower" +msgstr "Minimal purge på wipe torn" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" + +msgid "Speed of the last cooling move" +msgstr "" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" + +msgid "Ramming parameters" +msgstr "" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" + +msgid "Enable ramming for multitool setups" +msgstr "" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" + +msgid "Multitool ramming volume" +msgstr "" + +msgid "The volume to be rammed before the toolchange." +msgstr "" + +msgid "Multitool ramming flow" +msgstr "" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "" + +msgid "Density" +msgstr "Densitet" + +msgid "Filament density. For statistics only" +msgstr "Filament densitet, endast för statistiska ändamål" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "Filament material" + +msgid "Soluble material" +msgstr "Lösligt material" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "" +"Lösligt material används vanligtvis som utskrifts support och supportets " +"gränsyta" + +msgid "Support material" +msgstr "Support material" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "" +"Support material används ofta för att skriva ut support och stödja " +"gränssnittet" + +msgid "Softening temperature" +msgstr "Mjuknings temperatur" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than this, it's highly recommended to open the front " +"door and/or remove the upper glass to avoid clogs." + +msgid "Price" +msgstr "Pris" + +msgid "Filament price. For statistics only" +msgstr "Filament pris, endast för statistiska ändamål" + +msgid "money/kg" +msgstr "pris/kg" + +msgid "Vendor" +msgstr "Leverantör" + +msgid "Vendor of filament. For show only" +msgstr "Försäljare av filament. Endast för visning" + +msgid "(Undefined)" +msgstr "(Oidentifierad)" + +msgid "Sparse infill direction" +msgstr "" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Vinkeln för sparsam ifyllnads mönster, som styr start- eller huvudriktningen " +"för linjer" + +msgid "Solid infill direction" +msgstr "" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" + +msgid "Rotate solid infill direction" +msgstr "" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "" + +msgid "Sparse infill density" +msgstr "Sparsam ifyllnads densitet" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" + +msgid "Sparse infill pattern" +msgstr "Sparsam ifyllnads mönster" + +msgid "Line pattern for internal sparse infill" +msgstr "Linjemönster för sparsam ifyllnad" + +msgid "Grid" +msgstr "Grid" + +msgid "Line" +msgstr "Linje" + +msgid "Cubic" +msgstr "Kubisk" + +msgid "Tri-hexagon" +msgstr "Tri-hexagon" + +msgid "Gyroid" +msgstr "Gyroid" + +msgid "Honeycomb" +msgstr "Honeycomb" + +msgid "Adaptive Cubic" +msgstr "Adaptiv Cubic" + +msgid "3D Honeycomb" +msgstr "3D Honeycomb" + +msgid "Support Cubic" +msgstr "Kubik Support" + +msgid "Lightning" +msgstr "Blixt" + +msgid "Cross Hatch" +msgstr "Cross Hatch" + +msgid "Sparse infill anchor length" +msgstr "" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" + +msgid "0 (no open anchors)" +msgstr "0 (inga öppna ankare)" + +msgid "1000 (unlimited)" +msgstr "1000 (obegränsat)" + +msgid "Maximum length of the infill anchor" +msgstr "" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" + +msgid "0 (Simple connect)" +msgstr "" + +msgid "Acceleration of outer walls" +msgstr "" + +msgid "Acceleration of inner walls" +msgstr "" + +msgid "Acceleration of travel moves" +msgstr "" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Acceleration av fyllning av toppytan. Att använda ett lägre värde kan " +"förbättra ytkvaliteten" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "Acceleration av yttervägg: ett lägre värde kan förbättra kvaliteten." + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" + +msgid "mm/s² or %" +msgstr "mm/s² or %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Acceleration av gles utfyllnad. Om värdet uttrycks som en procentsats (t.ex. " +"100%) kommer det att beräknas baserat på standard accelerationen." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Utskrifts acceleration för första lager. Ett lägre värde kan förbättra " +"objektets fäste på byggplattan" + +msgid "Enable accel_to_decel" +msgstr "Aktivera accel_to_decel" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "Klippers max_accel_to_decel kommer att justeras automatiskt" + +msgid "accel_to_decel" +msgstr "accel_to_decel" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" + +msgid "Jerk of outer walls" +msgstr "Jerk ytterväggar" + +msgid "Jerk of inner walls" +msgstr "Jerk innerväggar" + +msgid "Jerk for top surface" +msgstr "" + +msgid "Jerk for infill" +msgstr "" + +msgid "Jerk for initial layer" +msgstr "" + +msgid "Jerk for travel" +msgstr "" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Initial layer height" +msgstr "Första lagerhöjd" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Första lagerhöjd. Högre första lager kan förbättra objektets fäste på " +"byggplattan" + +msgid "Speed of initial layer except the solid infill part" +msgstr "" +"Hastigheten för det första lagret förutom för solida ifyllnads sektioner" + +msgid "Initial layer infill" +msgstr "Första lager ifyllnad" + +msgid "Speed of solid infill part of initial layer" +msgstr "Hastigheten för fasta ifyllnadsdelar av det första lagret" + +msgid "Initial layer travel speed" +msgstr "" + +msgid "Travel speed of initial layer" +msgstr "" + +msgid "Number of slow layers" +msgstr "" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" + +msgid "Initial layer nozzle temperature" +msgstr "Nozzel temperatur för första lager" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "Nozzel temperatur för första lager med detta filament" + +msgid "Full fan speed at layer" +msgstr "Full fläkthastighet vid lager" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" + +msgid "layer" +msgstr "" + +msgid "Support interface fan speed" +msgstr "" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Inställningen gör att verktygshuvudet skakar slumpmässigt vid utskrift av " +"väggar så att ytan får ett strävt utseende. Denna inställning styr fuzzy " +"position" + +msgid "Contour" +msgstr "Kontur" + +msgid "Contour and hole" +msgstr "Kontur och hål" + +msgid "All walls" +msgstr "Alla väggar" + +msgid "Fuzzy skin thickness" +msgstr "Fuzzy skin tjocklek" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"Bredd på skakning: Det rekommenderas att hålla denna lägre än den yttre " +"vägglinjens bredd" + +msgid "Fuzzy skin point distance" +msgstr "Fuzzy skin punktavstånd" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"Den genomsnittliga distansen mellan de slumpmässiga punkter som införts på " +"varje linjesegment" + +msgid "Apply fuzzy skin to first layer" +msgstr "" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "" + +msgid "Filter out tiny gaps" +msgstr "Filtrera bort små luckor" + +msgid "Layers and Perimeters" +msgstr "Lager och perimetrar" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Hastigheten för fyllning av mellanrum. Mellanrum har vanligtvis oregelbunden " +"linjebredd och bör skrivas ut långsammare" + +msgid "Precise Z height" +msgstr "Precise Z height" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." + +msgid "Arc fitting" +msgstr "Arc passning" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" + +msgid "Add line number" +msgstr "Lägg till rad nummer" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Aktivera detta för att lägga till rad nummer(Nx) i början av varje G-kod rad" + +msgid "Scan first layer" +msgstr "Skanna första lager" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Aktivera detta för att låta kameran i skrivaren kontrollera kvaliteten på " +"det första lager" + +msgid "Nozzle type" +msgstr "Nozzel typ" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"Nozzelns metalliska material avgör munstyckets nötningsbeständighet och " +"vilken typ av filament som kan skrivas ut" + +msgid "Undefine" +msgstr "Oidentifierad" + +msgid "Hardened steel" +msgstr "Härdat stål" + +msgid "Stainless steel" +msgstr "Rostfritt stål" + +msgid "Brass" +msgstr "Mässing" + +msgid "Nozzle HRC" +msgstr "Nozzle HRC" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"Nozzelns hårdhet. Noll innebär att ingen kontroll av nozzelns hårdhet görs " +"under beredningen." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Printerns struktur" + +msgid "The physical arrangement and components of a printing device" +msgstr "Den fysiska utformningen och komponenterna i en utskriftsenhet" + +msgid "CoreXY" +msgstr "" + +msgid "I3" +msgstr "" + +msgid "Hbot" +msgstr "" + +msgid "Delta" +msgstr "" + +msgid "Best object position" +msgstr "Bästa position för objektet" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Bästa automatiska arrangemangs position i intervallet [0,1] w.r.t. bäddens " +"form." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" + +msgid "Only overhangs" +msgstr "" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "" + +msgid "Fan kick-start time" +msgstr "" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" + +msgid "Time cost" +msgstr "" + +msgid "The printer cost per hour" +msgstr "" + +msgid "money/h" +msgstr "" + +msgid "Support control chamber temperature" +msgstr "Stöd för kontroll av kammarens temperatur" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" + +msgid "Support air filtration" +msgstr "Stödjer luftfiltrering" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" + +msgid "G-code flavor" +msgstr "G-kod smak" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Vilken typ av G-kod är skrivaren kompatibel med" + +msgid "Klipper" +msgstr "" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" + +msgid "Label objects" +msgstr "" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" + +msgid "Exclude objects" +msgstr "Exkludera objekt" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "" + +msgid "Verbose G-code" +msgstr "" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" + +msgid "Infill combination" +msgstr "Ifyllnads kombination" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Automatiskt kombinera sparsam ifyllnad av flera lager att skrivas ut " +"tillsammans för att minska tiden. Väggar skrivs fortfarande ut med vald " +"lagerhöjd." + +msgid "Filament to print internal sparse infill." +msgstr "Filamentet är avsett för sparsam ifyllnad." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Infill/Wall overlap" +msgstr "Ifyllnad/Vägg överlapp" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" + +msgid "Speed of internal sparse infill" +msgstr "Hastighet för sparsam ifyllnad" + +msgid "Interface shells" +msgstr "Interface shells" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" + +msgid "Maximum width of a segmented region" +msgstr "Maximal bredd för en segmenterad region" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Maximum width of a segmented region. A value of 0 disables this feature." + +msgid "Interlocking depth of a segmented region" +msgstr "Sammanhängande djup i en segmenterad region" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Sammankopplingsdjup för en segmenterad region. Noll inaktiverar denna " +"funktion." + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "Stryknings typ" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"Strykning använder ett litet flöde för att skriva ut på samma höjd av en yta " +"för att göra plana ytor jämnare. Inställningen kontrollerar vilket lager som " +"ska strykas" + +msgid "No ironing" +msgstr "Ingen strykning" + +msgid "Top surfaces" +msgstr "Top ytor" + +msgid "Topmost surface" +msgstr "Endast högsta ytan" + +msgid "All solid layer" +msgstr "Alla solida lager" + +msgid "Ironing Pattern" +msgstr "Mönster för strykning" + +msgid "The pattern that will be used when ironing" +msgstr "" + +msgid "Ironing flow" +msgstr "Strykningsflöde" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"Denna mängd av material kommer att extruderas under strykningen. Den är " +"relativ till flödet av normal lagerhöjd. För högt värde resulterar i över " +"extrudering på ytan" + +msgid "Ironing line spacing" +msgstr "Strykning linjens mellanrum" + +msgid "The distance between the lines of ironing" +msgstr "Avståndet mellan linjerna när strykning utförs" + +msgid "Ironing speed" +msgstr "Stryknings hastighet" + +msgid "Print speed of ironing lines" +msgstr "Utskrifts hastighet för strykning" + +msgid "Ironing angle" +msgstr "" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "Denna G-kod infogas vid varje lagerbyte efter lyft av Z axis" + +msgid "Supports silent mode" +msgstr "Tyst läge" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Om maskinen stöder tyst läge där maskinen använder lägre acceleration för " +"att skriva ut" + +msgid "Emit limits to G-code" +msgstr "" + +msgid "Machine limits" +msgstr "Maskin begränsningar" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Denna G-kod kommer att användas som kod för att pausa utskriften. Användare " +"kan infoga paus G-kod i G-kod visaren." + +msgid "This G-code will be used as a custom code" +msgstr "Denna G-kod kommer att användas som en anpassad kod." + +msgid "Small area flow compensation (beta)" +msgstr "" + +msgid "Enable flow compensation for small infill areas" +msgstr "" + +msgid "Flow Compensation Model" +msgstr "" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" + +msgid "Maximum speed X" +msgstr "Max hastighet X" + +msgid "Maximum speed Y" +msgstr "Max hastighet Y" + +msgid "Maximum speed Z" +msgstr "Max hastighet Z" + +msgid "Maximum speed E" +msgstr "Max hastighet E" + +msgid "Maximum X speed" +msgstr "Max X hastighet" + +msgid "Maximum Y speed" +msgstr "Max Y hastighet" + +msgid "Maximum Z speed" +msgstr "Max Z hastighet" + +msgid "Maximum E speed" +msgstr "Max E hastighet" + +msgid "Maximum acceleration X" +msgstr "Max acceleration X" + +msgid "Maximum acceleration Y" +msgstr "Max acceleration Y" + +msgid "Maximum acceleration Z" +msgstr "Max acceleration Z" + +msgid "Maximum acceleration E" +msgstr "Max acceleration E" + +msgid "Maximum acceleration of the X axis" +msgstr "Max acceleration på X-axis" + +msgid "Maximum acceleration of the Y axis" +msgstr "Max acceleration på Y-axis" + +msgid "Maximum acceleration of the Z axis" +msgstr "Max acceleration på Z-axis" + +msgid "Maximum acceleration of the E axis" +msgstr "Max acceleration på E-axis" + +msgid "Maximum jerk X" +msgstr "Max jerk X" + +msgid "Maximum jerk Y" +msgstr "Max jerk Y" + +msgid "Maximum jerk Z" +msgstr "Max jerk Z" + +msgid "Maximum jerk E" +msgstr "Max jerk E" + +msgid "Maximum jerk of the X axis" +msgstr "Max jerk på X-axis" + +msgid "Maximum jerk of the Y axis" +msgstr "Max jerk på Y-axis" + +msgid "Maximum jerk of the Z axis" +msgstr "Max jerk på Z-axis" + +msgid "Maximum jerk of the E axis" +msgstr "Max jerk på E-axis" + +msgid "Minimum speed for extruding" +msgstr "Min hastighet för extrudering" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Min hastighet för extrudering (M205 S)" + +msgid "Minimum travel speed" +msgstr "Min förflyttnings hastighet" + +msgid "Minimum travel speed (M205 T)" +msgstr "Min förflyttnings hastighet (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Max acceleration för extrudering" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Max acceleration för extrudering (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Max acceleration för retraktion" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Max acceleration för retraktion (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Max acceleration för förflyttning" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"Del kylfläktens hastighet kan ökas när automatisk kylning är aktiverad. " +"Detta är max hastighets begränsning för en del kylfläkt" + +msgid "Max" +msgstr "Max" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"Högsta utskrivbara lagerhöjd för extrudern: detta används för att begränsa " +"den maximala lagerhöjden när adaptiv lagerhöjd är aktiverad" + +msgid "Extrusion rate smoothing" +msgstr "" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" + +msgid "mm³/s²" +msgstr "" + +msgid "Smoothing segment length" +msgstr "" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" + +msgid "Minimum speed for part cooling fan" +msgstr "Min hastighet för del kylfläkten" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" + +msgid "Min" +msgstr "Min" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"Den lägsta utskrivbara lagerhöjden för extrudering. Används tp begränsas den " +"lägsta lagerhöjden när adaptiv lagerhöjd aktiveras" + +msgid "Min print speed" +msgstr "Min utskrifts hastighet" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" + +msgid "Nozzle diameter" +msgstr "Nozzel diameter" + +msgid "Diameter of nozzle" +msgstr "Diametern på nozzeln" + +msgid "Configuration notes" +msgstr "" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" + +msgid "Host Type" +msgstr "Värd typ" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca kan ladda upp G-kod filer till en skrivar värd. Det här fältet " +"måste innehålla typ av värd." + +msgid "Nozzle volume" +msgstr "Nozzle volym" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Volymen av nozzlen mellan skäraren och nozzlens ände" + +msgid "Cooling tube position" +msgstr "" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "" + +msgid "Cooling tube length" +msgstr "" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" + +msgid "High extruder current on filament swap" +msgstr "" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" + +msgid "Filament parking position" +msgstr "" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" + +msgid "Extra loading distance" +msgstr "" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" + +msgid "Start end points" +msgstr "Start- och slutpunkter" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "Start- och slutpunkterna från skärområdet till överskottsrännan." + +msgid "Reduce infill retraction" +msgstr "Minska ifyllnads retraktionen" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Dra inte tillbaka när förflyttningen är helt i ett utfyllnadsområde. Det " +"betyder att läckage av filament inte kan ses. Detta kan minska tiderna för " +"indragning för komplexa modeller och spara utskriftstid, men gör beredning " +"och generering av G-kod långsammare." + +msgid "Filename format" +msgstr "Filnamns format" + +msgid "User can self-define the project file name when export" +msgstr "Användaren kan bestämma projekt namn när den ska exporteras" + +msgid "Make overhangs printable" +msgstr "" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "" + +msgid "Make overhangs printable - Maximum angle" +msgstr "" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" + +msgid "Make overhangs printable - Hole area" +msgstr "" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Upptäck överhängs vägg" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Upptäck överhängs procenten i förhållande till linjebredden och använd olika " +"hastigheter för att skriva ut. Vid 100%% överhäng, bridge/brygg hastighet " +"användas." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Speed of inner wall" +msgstr "Hastighet för inre vägg" + +msgid "Number of walls of every layer" +msgstr "Antal väggar för varje lager" + +msgid "Alternate extra wall" +msgstr "" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" + +msgid "Printer notes" +msgstr "Printer notes" + +msgid "You can put your notes regarding the printer here." +msgstr "You can put your notes regarding the printer here." + +msgid "Raft contact Z distance" +msgstr "Raft kontakt Z avstånd" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"Där finns Z mellanrum mellan ett objekt och en raft. Detta ignoreras för " +"lösliga gränssnitt" + +msgid "Raft expansion" +msgstr "Raft expansion" + +msgid "Expand all raft layers in XY plane" +msgstr "Öka alla raft lager i XY planet" + +msgid "Initial layer density" +msgstr "Första lager densitet" + +msgid "Density of the first raft or support layer" +msgstr "Densiteten av första raft eller support lager" + +msgid "Initial layer expansion" +msgstr "Första lager expansion" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Öka första raft eller support lager för att förbättra fäste emot byggplattan" + +msgid "Raft layers" +msgstr "Raft lager" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"Objekt kommer att höjas med detta antal support lager. Använd denna funktion " +"för att undvika warping vid utskrift av ABS" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"G-kods vägen genereras efter förenkling av modellens konturer för att " +"undvika för många punkter och G-kod linjer. Mindre värden betyder högre " +"upplösning och mer tid krävs för att bereda" + +msgid "Travel distance threshold" +msgstr "Förflyttningsavståndets gräns" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Aktivera endast retraktion när förflyttnings sträckan är längre än denna " +"gräns" + +msgid "Retract amount before wipe" +msgstr "Retraktions mängd innan wipe" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"Detta är längden av snabb retraktion före en wipe, i förhållande till " +"retraktions längden" + +msgid "Retract when change layer" +msgstr "Retraktera vid lager byte" + +msgid "Force a retraction when changes layer" +msgstr "Tvinga retraktion vid lager byte" + +msgid "Retraction Length" +msgstr "Retraktions längd" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"En del av materialet i extrudern dras tillbaka för att undvika dropp under " +"långa förflyttningar. Sätt på 0 för att inaktivera retraktion" + +msgid "Long retraction when cut(experimental)" +msgstr "Long retraction when cut (experimental)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Experimental feature: Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." + +msgid "Retraction distance when cut" +msgstr "Retraction distance when cut" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Experimental feature. Retraction length before cutting off during filament " +"change" + +msgid "Z hop when retract" +msgstr "Z hopp vid retraktion" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"När det är en retraktion lyfts nozzel en aning för att skapa ett spel mellan " +"nozzel och utskriften. Detta förhindrar att nozzel träffar utskriften när " +"den förflyttas. Att använda spirallinjer för att lyfta z kan förhindra " +"strängning" + +msgid "Z hop lower boundary" +msgstr "Z hopp nedre gräns" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Z hop kommer endast att träda i kraft när Z är över detta värde och är under " +"parametern: \"Övre gräns för Z-hopp\"" + +msgid "Z hop upper boundary" +msgstr "Z hopp övre gräns" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Om detta värde är positivt kommer Z hop endast att träda i kraft när Z är " +"över parametern: \"Z hop nedre gräns\" och är under detta värde" + +msgid "Z hop type" +msgstr "" + +msgid "Slope" +msgstr "Lutning" + +msgid "Spiral" +msgstr "Spiral" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" + +msgid "Only lift Z below" +msgstr "" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" + +msgid "On surfaces" +msgstr "" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" + +msgid "All Surfaces" +msgstr "" + +msgid "Top Only" +msgstr "" + +msgid "Bottom Only" +msgstr "" + +msgid "Top and Bottom" +msgstr "" + +msgid "Extra length on restart" +msgstr "Extra längd vid omstart" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" + +msgid "Retraction Speed" +msgstr "Retraktions hastighet" + +msgid "Speed of retractions" +msgstr "Hastighet för retraktion" + +msgid "Deretraction Speed" +msgstr "Åter retraktions hastighet" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Laddnings hastighet för filamentet in i extrudern efter en retraktion; om du " +"ställer in detta till 0 betyder det att det blir samma hastighet som " +"retraktionen" + +msgid "Use firmware retraction" +msgstr "Använd firmware retraktion" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" + +msgid "Show auto-calibration marks" +msgstr "" + +msgid "Disable set remaining print time" +msgstr "" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" + +msgid "Seam position" +msgstr "Söm position" + +msgid "The start position to print each part of outer wall" +msgstr "Utskriftens start position för varje del av yttre väggen" + +msgid "Nearest" +msgstr "Närmaste" + +msgid "Aligned" +msgstr "Linjerad" + +msgid "Back" +msgstr "Tillbaka" + +msgid "Random" +msgstr "Slumpmässig" + +msgid "Staggered inner seams" +msgstr "" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" + +msgid "Seam gap" +msgstr "Sömmens mellanrum" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" + +msgid "Scarf joint seam (beta)" +msgstr "" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Use scarf joint to minimize seam visibility and increase seam strength." + +msgid "Conditional scarf joint" +msgstr "Conditional scarf joint" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." + +msgid "Conditional angle threshold" +msgstr "Conditional angle threshold" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" + +msgid "Conditional overhang threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" + +msgid "Scarf joint speed" +msgstr "" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" + +msgid "Scarf joint flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" + +msgid "Scarf start height" +msgstr "Scarf start height" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." + +msgid "Scarf around entire wall" +msgstr "Scarf around entire wall" + +msgid "The scarf extends to the entire length of the wall." +msgstr "The scarf extends to the entire length of the wall." + +msgid "Scarf length" +msgstr "Scarf length" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." + +msgid "Scarf steps" +msgstr "Scarf steps" + +msgid "Minimum number of segments of each scarf." +msgstr "Minimum number of segments of each scarf." + +msgid "Scarf joint for inner walls" +msgstr "Scarf joint for inner walls" + +msgid "Use scarf joint for inner walls as well." +msgstr "Use scarf joint for inner walls as well." + +msgid "Role base wipe speed" +msgstr "" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" + +msgid "Wipe on loops" +msgstr "" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" + +msgid "Wipe before external loop" +msgstr "" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" + +msgid "Wipe speed" +msgstr "Hastighet för avtorkning" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"Torkhastigheten bestäms av den hastighetsinställning som anges i denna " +"konfiguration. Om värdet uttrycks i procent (t.ex. 80%), kommer det att " +"beräknas baserat på inställningen för förflyttnings hastigheten ovan. " +"Standardvärdet för denna parameter är 80%" + +msgid "Skirt distance" +msgstr "Skirt avstånd" + +msgid "Distance from skirt to brim or object" +msgstr "Avståndet ifrån skirt till brim eller objektet" + +msgid "Skirt height" +msgstr "Skirt höjd" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Antal skirt lager: vanligtvis bara en" + +msgid "Draft shield" +msgstr "" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" + +msgid "Limited" +msgstr "" + +msgid "Enabled" +msgstr "" + +msgid "Skirt loops" +msgstr "Skirt varv" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "Antal skirt varv. 0 betyder att skirt är inaktiverad" + +msgid "Skirt speed" +msgstr "" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" + +msgid "Skirt minimum extrusion length" +msgstr "" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"Utskriftshastigheten i exporterad G-kod kommer att saktas ner när den " +"beräknade lager tiden är kortare än detta värde för att få bättre kylning " +"för dessa lager" + +msgid "Minimum sparse infill threshold" +msgstr "Min sparsam ifyllnads gräns" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"Sparsam ifyllnads ytor som är mindre än detta gränsvärde ersätts med inre " +"solid ifyllnad" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "Hastighet för inre solid ifyllnad, förrutom topp och botten ytorna" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Möjliggör spiral bildning, vilket jämnar ut Z-rörelserna på den yttre " +"konturen och förvandlar en solid modell till en enkelväggig utskrift med " +"solida bottenlager. Den slutgiltligt genererade modellen har ingen söm" + +msgid "Smooth Spiral" +msgstr "Smooth Spiral" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" + +msgid "Max XY Smoothing" +msgstr "Max XY Smoothing" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Maximum distance to move points in XY to try to achieve a smooth spiral. If " +"expressed as a %, it will be computed over nozzle diameter" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Om Smooth eller Traditionellt läge väljs genereras en timelapse-video för " +"varje utskrift. När varje lager har skrivits ut tas en ögonblicksbild med " +"kammarkameran. Alla dessa ögonblicksbilder är sammansatta i en timelapse-" +"video när utskriften är klar. Om Smooth läge är valt flyttas verktygshuvudet " +"till utloppsrännan efter att varje lager har skrivits ut och tar sedan en " +"ögonblicksbild. Eftersom smält filament kan läcka från nozzeln under " +"processen att ta en ögonblicksbild krävs ett prime torn för Smooth läge för " +"att torka nozzeln." + +msgid "Traditional" +msgstr "Traditionell" + +msgid "Temperature variation" +msgstr "Temperatur variation" + +msgid "Start G-code" +msgstr "Starta G-kod" + +msgid "Start G-code when start the whole printing" +msgstr "Starta G-kod när utskrift startar" + +msgid "Start G-code when start the printing of this filament" +msgstr "Starta G-kod när utskrift startar med detta filament" + +msgid "Single Extruder Multi Material" +msgstr "" + +msgid "Use single nozzle to print multi filament" +msgstr "" + +msgid "Manual Filament Change" +msgstr "" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" + +msgid "Purge in prime tower" +msgstr "" + +msgid "Purge remaining filament into prime tower" +msgstr "" + +msgid "Enable filament ramming" +msgstr "" + +msgid "No sparse layers (beta)" +msgstr "" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" + +msgid "Prime all printing extruders" +msgstr "" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" + +msgid "Slice gap closing radius" +msgstr "Bered spaltens stängningsradie" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Sprickor mindre än 2 x gap stängningsradie fylls under triangeln mesh " +"beredning. Gap stängningsoperationen kan minska den slutliga " +"utskriftsupplösningen, därför är det lämpligt att hålla värdet rimligt lågt." + +msgid "Slicing Mode" +msgstr "Berednings läge" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Använd ”Jämn-Udda” för 3DLabPrint flygplans modeller. Använd ”Stäng hål” för " +"att stänga alla hål i modellen." + +msgid "Regular" +msgstr "Vanlig" + +msgid "Even-odd" +msgstr "Jämnt-udda" + +msgid "Close holes" +msgstr "Stäng hål" + +msgid "Z offset" +msgstr "" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" + +msgid "Enable support" +msgstr "Aktivera support" + +msgid "Enable support generation." +msgstr "Aktivera support generering." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"normal(auto) och tree(auto) används för att generera support automatiskt. Om " +"normal(manual) eller tree(manual) väljs, genereras endast support " +"förstärkare." + +msgid "normal(auto)" +msgstr "normal (auto)" + +msgid "tree(auto)" +msgstr "träd(auto)" + +msgid "normal(manual)" +msgstr "normal (manuell)" + +msgid "tree(manual)" +msgstr "tree (manuell)" + +msgid "Support/object xy distance" +msgstr "Support/objekt xy distans" + +msgid "XY separation between an object and its support" +msgstr "XY avstånd mellan objektet och support" + +msgid "Pattern angle" +msgstr "Mönster vinkel" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Använd den här inställningen för att rotera support mönstret i " +"horisontalplanet." + +msgid "On build plate only" +msgstr "Endast på byggplattan" + +msgid "Don't create support on model surface, only on build plate" +msgstr "Inställningen skapar bara support som utgår ifrån byggplattan" + +msgid "Support critical regions only" +msgstr "Endast support på kritiska områden" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Skapa endast support för kritiska regioner inklusive skarp svans, " +"utskjutande detaljer etc." + +msgid "Remove small overhangs" +msgstr "Ta bort små överhäng" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "Ta bort små överhäng som eventuellt inte behöver stöd." + +msgid "Top Z distance" +msgstr "Topp Z-distans" + +msgid "The z gap between the top support interface and object" +msgstr "" +"Detta bestämmer Z-avståndet mellan det övre support gränssnittet och objektet" + +msgid "Bottom Z distance" +msgstr "Nedre Z-avstånd" + +msgid "The z gap between the bottom support interface and object" +msgstr "Z-gapet mellan botten support och objektets anläggningsyta" + +msgid "Support/raft base" +msgstr "Support/raft bas" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Filament för att skriva ut support och rafts. ”Standard” betyder ingen " +"specifik filament för support, och nuvarande filament används" + +msgid "Avoid interface filament for base" +msgstr "Undvik gränssnitts filament för basen" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Undvik om möjligt att använda filament för stöd gränssnitt för att skriva ut " +"stödbasen." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" + +msgid "Interface use loop pattern" +msgstr "Loop mönstrets gränssnitt" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Täcker den övre kontaktytan av support med öglor. Den är inaktiverad som " +"standard." + +msgid "Support/raft interface" +msgstr "Gränssnitt för support/raft" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filament för att skriva ut supportens anläggningsyta. ” Standard” betyder " +"ingen specifik filament för supportens anläggningsyta, och nuvarande " +"filament används" + +msgid "Top interface layers" +msgstr "Översta gränssnitts lager" + +msgid "Number of top interface layers" +msgstr "Antal topp gränssnitts lager" + +msgid "Bottom interface layers" +msgstr "Botten gränssnitts lager" + +msgid "Number of bottom interface layers" +msgstr "Antal nedre gränsyte skikt" + +msgid "Same as top" +msgstr "Samma som toppen" + +msgid "Top interface spacing" +msgstr "Topp gränssnitts avstånd" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "Avstånd mellan gränssnitts linjer. 0 betyder solid gränssnitt" + +msgid "Bottom interface spacing" +msgstr "Botten gränssnitts mellanrum" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Mellanrummet på botten gränssnittets linjer. 0 betyder solid gränssnitt" + +msgid "Speed of support interface" +msgstr "Support gränssnittets hastighet" + +msgid "Base pattern" +msgstr "Botten mönster" + +msgid "Line pattern of support" +msgstr "Supportens linje mönster" + +msgid "Rectilinear grid" +msgstr "Rät linjärt nät" + +msgid "Hollow" +msgstr "Ihålig" + +msgid "Interface pattern" +msgstr "Gränssnitts mönster" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Linje mönster för support gränssnittsytan .Standardmönstret för olösligt " +"(material) support gränssnittet är Räta medan standardmönstret för " +"lösligt(material) stödgränssnittet är koncentriskt" + +msgid "Rectilinear Interlaced" +msgstr "Rätlinjig sammanflätning" + +msgid "Base pattern spacing" +msgstr "Basens mönster mellanrum" + +msgid "Spacing between support lines" +msgstr "Mellanrum mellan support linjer" + +msgid "Normal Support expansion" +msgstr "Normal support expansion" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "" +"Expandera (+) eller krymp (-) det horisontella spännvidden för normalt stöd" + +msgid "Speed of support" +msgstr "Support hastighet" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" + +msgid "Snug" +msgstr "Tight" + +msgid "Tree Slim" +msgstr "Tree Slim" + +msgid "Tree Strong" +msgstr "Tree Stark" + +msgid "Tree Hybrid" +msgstr "Tree Hybrid" + +msgid "Organic" +msgstr "" + +msgid "Independent support layer height" +msgstr "Oberoende support lagerhöjd" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Support lager använder lagerhöjd oberoende av objekt lager. Detta för att " +"stödja anpassning av z-gap och spara utskriftstid. Detta alternativ kommer " +"att vara ogiltigt när prime tower är aktiverat." + +msgid "Threshold angle" +msgstr "Gräns vinkel" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "Support skapas för överhäng vars sluttning är under denna gräns." + +msgid "Tree support branch angle" +msgstr "Tree support grenarnas vinkel" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Inställningen bestämmer max överhängs vinkel som grenarna i tree support " +"tillåts att ha. Om vinkeln ökas, kan grenarna skrivas ut mer horisontellt " +"och nå längre." + +msgid "Preferred Branch Angle" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" + +msgid "Tree support branch distance" +msgstr "Tree support grenarnas avstånd" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "" +"Inställningen bestämmer avståndet mellan närliggande tree support punkter." + +msgid "Branch Density" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" + +msgid "Adaptive layer height" +msgstr "Adaptiv lagerhöjd" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" + +msgid "Auto brim width" +msgstr "" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" + +msgid "Tree support brim width" +msgstr "Tree supportens brim bredd" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "" + +msgid "Tip Diameter" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "" + +msgid "Tree support branch diameter" +msgstr "Tree support grenarnas diameter" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Inställningen bestämmer inledande diameter på support punkterna." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" + +msgid "Branch Diameter with double walls" +msgstr "" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" + +msgid "Support wall loops" +msgstr "Vägg support" + +msgid "This setting specify the count of walls around support" +msgstr "Denna inställning anger antalet väggar runt supporten" + +msgid "Tree support with infill" +msgstr "Tree support med ifyllnad" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Inställningen bestämmer om det ska läggas till ifyllnad i stora hålrum av " +"tree support" + +msgid "Activate temperature control" +msgstr "" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" + +msgid "Chamber temperature" +msgstr "Kammarens temperatur" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on. At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials, the actual chamber temperature should not " +"be high to avoid clogs, so 0 (turned off) is highly recommended." + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Nozzel temperatur efter första lager" + +msgid "Detect thin wall" +msgstr "Upptäck tunna väggar" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Upptäck tunna väggar som inte kan ha två linjer och använder en linje för " +"att skrivas ut. Utskrifts kvaliteten begränsas efter som det inte är en " +"sluten slinga" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"G-koden sätts in vid filament byte, inklusive T kommando som aktiverar " +"verktygs byte" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" + +msgid "Speed of top surface infill which is solid" +msgstr "Hastighet för solida topp ytors ifyllnad" + +msgid "Top shell layers" +msgstr "Övre skal lager" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Antal solida topp lager på topp skal, inkluderar topp ytans lager. När " +"tjockleken kalkyleras av detta värde och det är tunnare än topp skalets " +"tjocklek, kommer toppskalets lager att öka" + +msgid "Top solid layers" +msgstr "Solida topp lager" + +msgid "Top shell thickness" +msgstr "Övre skalets tjocklek" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"Antal solida övre lager ökas när tjockleken kalkyleras och övre skalet är " +"tunnare än detta värde. Detta kan undvika att ha för tunt skal när " +"lagerhöjden är liten. 0 betyder att den här inställningen är inaktiverad och " +"tjockleken på det övre skalet bestäms av de övre skal lagerna" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Förflyttnings hastighet" + +msgid "Wipe while retracting" +msgstr "Avskrapa medans retraktering" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Detta flyttarnozzeln längs den sista extruderingsbanan när det retrakterar " +"för att rengöra eventuellt läckt material på nozzeln. Detta kan minimera " +"blobbar när du skriver ut en ny del efter förflyttning" + +msgid "Wipe Distance" +msgstr "Avskrapnings avstånd" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"Avstryknings tornet kan användas för att avlägsna rester på munstycket och " +"stabilisera kammartrycket inuti munstycket för att undvika utseendefel vid " +"utskrift av objekt." + +msgid "Purging volumes" +msgstr "Rensnings volym" + +msgid "Flush multiplier" +msgstr "Rensnings multiplikator" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"Den faktiska rensnings volymen är lika med värdet för rensnings " +"multiplikatorn multiplicerat med rensnings volymerna i tabellen." + +msgid "Prime volume" +msgstr "Prime volym (volymen av ut pressat material)" + +msgid "The volume of material to prime extruder on tower." +msgstr "Material volymen att (pressa ut) genom extrudern på tornet." + +msgid "Width of prime tower" +msgstr "Prime tornets bredd" + +msgid "Wipe tower rotation angle" +msgstr "" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "" + +msgid "Stabilization cone apex angle" +msgstr "" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" + +msgid "Wipe tower purge lines spacing" +msgstr "" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "" + +msgid "Maximum wipe tower print speed" +msgstr "" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" + +msgid "Wipe tower extruder" +msgstr "" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" + +msgid "Purging volumes - load/unload volumes" +msgstr "" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Rensning efter filamentbyte kommer att göras inuti objektens fyllningar. " +"Detta kan minska mängden avfall och minska utskriftstiden. Om väggarna är " +"tryckta med transparent filament kommer den blandade färgfyllningen att " +"synas. Det träder inte i kraft om inte prime tower är aktiverat." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"Rensning efter filamentbyte kommer att göras inuti objektens support. Detta " +"kan minska mängden avfall och minska utskriftstiden. Det träder inte i kraft " +"om inte ett prime tower är aktiverat." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Det här objektet används för att rensa nozzeln efter ett filamentbyte för " +"att spara filament och minska utskriftstiden. Färgerna i objekten kommer att " +"blandas som ett resultat. Det kommer inte att få effekt om inte prime tower " +"är aktiverat." + +msgid "Maximal bridging distance" +msgstr "" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "" + +msgid "X-Y hole compensation" +msgstr "X-Y håls kompensation" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Objektets hål kommer att krympa eller öka i XY planet med valt värde. " +"Positivt värde ökar och negativt värde minskar hålets storlek. Denna " +"funktion används för att justera storleken något när det finns monterings " +"svårigheter" + +msgid "X-Y contour compensation" +msgstr "X-Y kontur kompenstation" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"Objektets kontur kommer att krympa eller öka i XY planet med konfigurerat " +"värde. Positivt värde ökar och negativt värde minskar konturens storlek. " +"Denna funktion används för att justera storleken något när det finns " +"monterings svårigheter" + +msgid "Convert holes to polyholes" +msgstr "" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" + +msgid "Polyhole detection margin" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" + +msgid "Polyhole twist" +msgstr "" + +msgid "Rotate the polyhole every layer." +msgstr "" + +msgid "G-code thumbnails" +msgstr "" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" + +msgid "Format of G-code thumbnails" +msgstr "" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" + +msgid "Use relative E distances" +msgstr "Använd relativa E avstånd" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"Den klassiska vägg generatorn producerar väggar med konstant extruderings " +"bredd och för mycket tunna områden används gap-fill. Arachne-motorn " +"producerar väggar med variabel extruderings bredd." + +msgid "Classic" +msgstr "Klassisk" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Längd för vägg övergång" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Vid övergång mellan olika antal väggar när delen blir tunnare, tilldelas ett " +"visst utrymme för att dela eller sammanfoga väggsegmenten. Det uttrycks i " +"procent av nozzel diametern." + +msgid "Wall transitioning filter margin" +msgstr "Vägg övergångs filter marginal" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Förhindra övergång fram och tillbaka mellan en extra vägg och en mindre. " +"Denna marginal utökar intervallet av extruderingsbredder som följer till " +"[Minsta väggbredds - marginal, 2 * Minsta väggbredd + marginal]. Att öka " +"denna marginal minskar antalet övergångar, vilket minskar antalet " +"extruderings start/stopp och restiden. Stor variation av extruderings bredd " +"kan dock leda till under- eller överextruderings problem. Det uttrycks i " +"procent över nozzel diametern" + +msgid "Wall transitioning threshold angle" +msgstr "Tröskel vinkel för vägg övergång" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"När man skapar övergångar mellan jämna och udda antal väggar. En kil form " +"med en vinkel som är större än den här inställningen kommer inte att ha " +"några övergångar och inga väggar kommer att skrivas ut i mitten för att " +"fylla det återstående utrymmet. Om den här inställningen minskas, minskar " +"antalet och längden på dessa väggar i mitten men kan lämna luckor eller " +"överextrudera" + +msgid "Wall distribution count" +msgstr "Antal vägg fördelningar" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"Antalet väggar, räknat från mitten, över vilka variationen ska spridas. " +"Lägre värden innebär att de yttre väggarna inte ändras i bredd." + +msgid "Minimum feature size" +msgstr "Minsta funktions storlek" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Minsta tjocklek på tunna funktioner. Modellfunktioner som är tunnare än " +"detta värde skrivs inte ut, medan funktioner som är tjockare än minsta " +"funktionsstorlek kommer att utvidgas till minsta väggbredd. Det uttrycks som " +"en procentandel över nozzelns diameter" + +msgid "Minimum wall length" +msgstr "" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" + +msgid "First layer minimum wall width" +msgstr "" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" + +msgid "Minimum wall width" +msgstr "Minsta vägg bredd" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Bredden på den vägg som ska ersätta tunna element (enligt minsta storlek för " +"element) i modellen. Om den minsta väggbredden är tunnare än tjockleken på " +"elementet blir väggen lika tjock som själva elementet. Den uttrycks i " +"procent av nozzel diametern." + +msgid "Detect narrow internal solid infill" +msgstr "Upptäck tight inre solid ifyllnad" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Detta val kommer att auto upptäcka tight inre solid ifyllnads område. Om " +"aktiverat kommer det koncentriska mönstret att användas för området för att " +"påskynda utskriften. Annars kommer mönstret med räta linjer att användas som " +"standard." + +msgid "invalid value " +msgstr "ogiltigt värde " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Ogiltigt värde när spiralvas läget är aktiverat: " + +msgid "too large line width " +msgstr "för stor linjebredd " + +msgid " not in range " +msgstr " inte inom intervallet " + +msgid "Minimum save" +msgstr "" + +msgid "export 3mf with minimum size." +msgstr "" + +msgid "No check" +msgstr "Ingen kontroll" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"Utför inga giltighets kontroller, t.ex. kontroll av konflikter mellan G-kod " +"och banor." + +msgid "Ensure on bed" +msgstr "" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" + +msgid "Orient Options" +msgstr "" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "" + +msgid "Rotate around Y" +msgstr "" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "" + +msgid "Data directory" +msgstr "" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" + +msgid "Load custom gcode" +msgstr "" + +msgid "Load custom gcode from json" +msgstr "" + +msgid "Current z-hop" +msgstr "" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "" + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" + +msgid "Extra deretraction" +msgstr "" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" + +msgid "Current extruder" +msgstr "" + +msgid "Zero-based index of currently used extruder." +msgstr "" + +msgid "Current object index" +msgstr "" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" + +msgid "Has wipe tower" +msgstr "" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "" + +msgid "Initial extruder" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" + +msgid "Initial tool" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" + +msgid "Is extruder used?" +msgstr "" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" + +msgid "Volume per extruder" +msgstr "" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" + +msgid "Total toolchanges" +msgstr "" + +msgid "Number of toolchanges during the print." +msgstr "" + +msgid "Total volume" +msgstr "" + +msgid "Total volume of filament used during the entire print." +msgstr "" + +msgid "Weight per extruder" +msgstr "" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" + +msgid "Total weight" +msgstr "" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" + +msgid "Total layer count" +msgstr "" + +msgid "Number of layers in the entire print." +msgstr "" + +msgid "Number of objects" +msgstr "" + +msgid "Total number of objects in the print." +msgstr "" + +msgid "Number of instances" +msgstr "" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" + +msgid "Scale per object" +msgstr "" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" + +msgid "Input filename without extension" +msgstr "" + +msgid "Source filename of the first object, without extension." +msgstr "" + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" + +msgid "First layer convex hull" +msgstr "" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" + +msgid "Bottom-left corner of first layer bounding box" +msgstr "" + +msgid "Top-right corner of first layer bounding box" +msgstr "" + +msgid "Size of the first layer bounding box" +msgstr "" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "" + +msgid "Top-right corner of print bed bounding box" +msgstr "" + +msgid "Size of the print bed bounding box" +msgstr "" + +msgid "Timestamp" +msgstr "" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "" + +msgid "Day" +msgstr "" + +msgid "Hour" +msgstr "" + +msgid "Minute" +msgstr "" + +msgid "Print preset name" +msgstr "" + +msgid "Name of the print preset used for slicing." +msgstr "" + +msgid "Filament preset name" +msgstr "" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" + +msgid "Printer preset name" +msgstr "" + +msgid "Name of the printer preset used for slicing." +msgstr "" + +msgid "Physical printer name" +msgstr "" + +msgid "Name of the physical printer used for slicing." +msgstr "" + +msgid "Layer number" +msgstr "" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" + +msgid "Layer z" +msgstr "" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" + +msgid "Maximal layer z" +msgstr "" + +msgid "Height of the last layer above the print bed." +msgstr "" + +msgid "Filament extruder ID" +msgstr "" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "" + +msgid "Error in zip archive" +msgstr "Fel i zip arkiv" + +msgid "Generating walls" +msgstr "Skapa väggar" + +msgid "Generating infill regions" +msgstr "Skapa ifyllnads område" + +msgid "Generating infill toolpath" +msgstr "Skapa ifyllnadens verktygsbana" + +msgid "Detect overhangs for auto-lift" +msgstr "Identifiera överhäng för automatisk lyftning" + +msgid "Generating support" +msgstr "Skapa support" + +msgid "Checking support necessity" +msgstr "Kontrollera supportens nödvändighet" + +msgid "floating regions" +msgstr "flytande regioner" + +msgid "floating cantilever" +msgstr "flytande konsol" + +msgid "large overhangs" +msgstr "stora överhäng" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Det verkar som om objektet %s har %s. Vänligen orientera om objektet eller " +"aktivera supportgenerering." + +msgid "Optimizing toolpath" +msgstr "Optimerar verktygsbanan" + +msgid "Slicing mesh" +msgstr "Bereder mesh" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"Inga lager upptäcktes. Du kanske vill reparera din(a) STL-fil(er) eller " +"kontrollera deras storlek eller tjocklek och försöka igen.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"Ett objekts XY-storleks kompensation kommer inte att användas eftersom den " +"är också färglagd.\n" +"XY-storlekskompensation kan inte kombineras med färgläggning." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Support: generera verktygsbana vid lager %d" + +msgid "Support: detect overhangs" +msgstr "Support: upptäck överhäng" + +msgid "Support: generate contact points" +msgstr "Support: generera kontaktpunkter" + +msgid "Support: propagate branches" +msgstr "Support: föröka grenar" + +msgid "Support: draw polygons" +msgstr "Support: rita polygoner" + +msgid "Support: generate toolpath" +msgstr "Support: generera verktygsbana" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Support: generera polygoner vid lager %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Support: åtgärda hål vid lager %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Support: föröka grenar vid lager %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Okänt filformat: indata filen måste ha tillägget .stl, .obj eller .amf(.xml)." + +msgid "Loading of a model file failed." +msgstr "Laddning av modell filen misslyckades." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "Den medföljande filen kunde inte läsas eftersom den är tom." + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Okänt filformat: indata filen måste ha fil ändelsen .3mf eller .zip.amf." + +msgid "Canceled" +msgstr "Avbruten" + +msgid "load_obj: failed to parse" +msgstr "load_obj: misslyckades med att analysera" + +msgid "load mtl in obj: failed to parse" +msgstr "load mtl in obj: failed to parse" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "Filen innehåller polygoner med fler än 4 hörn." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "Filen innehåller polygoner med mindre än 2 hörn." + +msgid "The file contains invalid vertex index." +msgstr "Filen innehåller ett ogiltigt vertex index." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Denna OBJ fil kunde inte läsas eftersom den är tom." + +msgid "Flow Rate Calibration" +msgstr "Kalibrering av flödeshastighet" + +msgid "Max Volumetric Speed Calibration" +msgstr "Max volymetrisk hastighets kalibrering" + +msgid "Manage Result" +msgstr "Hantera resultat" + +msgid "Manual Calibration" +msgstr "Manuell kalibrering" + +msgid "Result can be read by human eyes." +msgstr "Resultatet kan läsas av mänskliga ögon." + +msgid "Auto-Calibration" +msgstr "Auto-Calibration" + +msgid "We would use Lidar to read the calibration result" +msgstr "Vi vill använda Lidar för att läsa av kalibrerings resultatet" + +msgid "Prev" +msgstr "Föregående" + +msgid "Recalibration" +msgstr "Omkalibrering" + +msgid "Calibrate" +msgstr "Kalibrera" + +msgid "Finish" +msgstr "Slutför" + +msgid "How to use calibration result?" +msgstr "Hur kan jag använda kalibreringsresultaten?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"Du kan ändra kalibreringsfaktorn för flödesdynamik i material redigeringen" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"Den aktuella versionen av printerns inbyggda programvara stöder inte " +"kalibrering.\n" +"Vänligen uppdatera printerns programvara." + +msgid "Calibration not supported" +msgstr "Kalibrering stöds inte" + +msgid "Error desc" +msgstr "Fel desc" + +msgid "Extra info" +msgstr "Extra info" + +msgid "Flow Dynamics" +msgstr "Flödesdynamik" + +msgid "Flow Rate" +msgstr "Flödeshastighet" + +msgid "Max Volumetric Speed" +msgstr "Max volymetrisk hastighet" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Vänligen ange giltiga värden:\n" +"Startvärde: >= %.1f\n" +"Slutvärde: <= %.1f\n" +"Slutvärde: > Startvärde\n" +"Värde steg: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "Namnet får inte vara tomt." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "Den valda inställningen: %s hittades inte." + +msgid "The name cannot be the same as the system preset name." +msgstr "Namnet får inte vara detsamma som systemets förinställda namn." + +msgid "The name is the same as another existing preset name" +msgstr "Namnet är detsamma som ett annat befintligt förinställt namn" + +msgid "create new preset failed." +msgstr "skapande av ny inställning misslyckades." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Are you sure you want to cancel the current calibration and return to the " +"home page?" + +msgid "No Printer Connected!" +msgstr "Ingen skrivare ansluten!" + +msgid "Printer is not connected yet." +msgstr "Printern är inte ansluten ännu." + +msgid "Please select filament to calibrate." +msgstr "Välj filament för kalibrering." + +msgid "The input value size must be 3." +msgstr "Storleken på ingångsvärdet måste vara 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"This machine type can only hold 16 historical results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" + +msgid "Connecting to printer..." +msgstr "Ansluter till skrivaren..." + +msgid "The failed test result has been dropped." +msgstr "Det misslyckade testresultatet har tagits bort." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Flödesdynamik kalibrerings resultaten har sparats på printern." + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"Det finns redan ett tidigare kalibreringsresultat med samma namn: %s. Endast " +"ett resultat med ett namn sparas. Är du säker på att du vill skriva över det " +"tidigare resultatet?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"This machine type can only hold %d historical results per nozzle. This " +"result will not be saved." + +msgid "Internal Error" +msgstr "Internt fel" + +msgid "Please select at least one filament for calibration" +msgstr "Välj minst ett filament för kalibrering" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "" +"Resultat för kalibrering av flödeshastigheten har sparats till inställningen." + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"Max volymetrisk hastighets kalibrerings resultat har sparats till " +"förinställningen" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "När behöver du kalibrering av flödes dynamik" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Vi har nu lagt till automatisk kalibrering för olika filament, vilket är " +"helt automatiserat och resultatet sparas i printern för framtida användning. " +"Du behöver bara göra kalibreringen i följande begränsade fall:\n" +"1. Om du introducerar ett nytt filament av olika märken/modeller eller om " +"filamentet är fuktigt;\n" +"2. Om nozzeln är utsliten eller ersatt med ett nytt;\n" +"3. Om max volymhastighet eller utskriftstemperatur ändras i filament " +"inställningen." + +msgid "About this calibration" +msgstr "Om denna kalibrering" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "När ska man använda kalibrering av flödes hastighet?" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Dessutom är flödeshastighets kalibrering avgörande för skummande material " +"som LW-PLA som används i RC-plan. Dessa material expanderar kraftigt vid " +"uppvärmning, och kalibrering ger en användbar referens flödeshastighet." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"Flödeskalibrering mäter förhållandet mellan förväntade och faktiska " +"extruderings volymer. Standardinställningen fungerar bra med Bambu Lab " +"printers och officiella filament eftersom de är förkalibrerade och " +"finjusterade. För ett vanligt filament behöver du vanligtvis inte utföra en " +"flödeshastighets kalibrering om du inte fortfarande ser de listade " +"defekterna efter att du har gjort andra kalibreringar. För mer information, " +"se vår wiki-artikel." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before performing it." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "När du behöver kalibrering av maximal volymhastighet" + +msgid "Over-extrusion or under extrusion" +msgstr "Över extrudering eller under extrudering" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"Max volymetrisk hastighets kalibrering rekommenderas när du skriver ut med:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "material med betydande termisk krympning/expansion, t.ex...." + +msgid "materials with inaccurate filament diameter" +msgstr "material med felaktig filament diameter" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "Vi hittade den bästa Flödes dynamiska kalibrerings faktorn" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"En del av kalibreringen misslyckades! Det kan hjälpa att rengöra plattan och " +"försöka igen. Det misslyckade testresultatet kommer att raderas." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Vi rekommenderar att du lägger till varumärke, material, typ och till och " +"med fuktighetsnivå i namnet" + +msgid "Failed" +msgstr "Misslyckades" + +msgid "Please enter the name you want to save to printer." +msgstr "Ange det namn som du vill spara på skrivaren." + +msgid "The name cannot exceed 40 characters." +msgstr "Namnet får inte innehålla mer än 40 tecken." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Endast ett av resultaten med samma namn kommer att sparas. Är du säker på " +"att du vill ersätta de andra resultaten?" + +msgid "Please find the best line on your plate" +msgstr "Hitta den bästa linjen på din platta." + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Hitta hörnet med den perfekta graden av extrudering" + +msgid "Input Value" +msgstr "Ingångsvärde" + +msgid "Save to Filament Preset" +msgstr "Spara till inställningar för filament" + +msgid "Preset" +msgstr "Förinställd" + +msgid "Record Factor" +msgstr "Inspelnings faktor" + +msgid "We found the best flow ratio for you" +msgstr "Vi hittade det bästa flödesförhållandet för dig" + +msgid "Flow Ratio" +msgstr "Flödes förhållande" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Ange ett giltigt värde (0.0 < flödesförhållande < 2.0) " + +msgid "Please enter the name of the preset you want to save." +msgstr "Ange namnet på den förinställning som du vill spara." + +msgid "Calibration1" +msgstr "Kalibrering1" + +msgid "Calibration2" +msgstr "Kalibrering2" + +msgid "Please find the best object on your plate" +msgstr "Hitta det bästa objektet på din platta." + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Fyll i värdet från blocket med jämnast toppyta" + +msgid "Skip Calibration2" +msgstr "Hoppa över kalibrering2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "flödes förhållande: %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Välj det block som har den jämnaste toppytan." + +msgid "Please choose a block with smoothest top surface." +msgstr "Välj det block som har den jämnaste toppytan." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "Ange ett giltigt värde (0 <= Max volym hastighet <= 60)" + +msgid "Calibration Type" +msgstr "Typ av kalibrering" + +msgid "Complete Calibration" +msgstr "Fullständig kalibrering" + +msgid "Fine Calibration based on flow ratio" +msgstr "Fin kalibrering baserad på flödesförhållande" + +msgid "Title" +msgstr "Titel" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"En testmodell kommer att skrivas ut. Ta bort byggplattan och placera " +"tillbaka den på bädden före kalibrering." + +msgid "Printing Parameters" +msgstr "Parametrar för utskrift" + +msgid "Plate Type" +msgstr "Typ av byggplatta" + +msgid "filament position" +msgstr "Filament position" + +msgid "External Spool" +msgstr "Extern spole" + +msgid "Filament For Calibration" +msgstr "Filament för kalibrering" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Tips för kalibreringsmaterial:\n" +"- Material som kan ha samma temperatur på den varma bädden\n" +"- Olika filament märken och -familjer (märke = Bambu, familj = Basic, Matte, " +"etc.)" + +msgid "Pattern" +msgstr "Mönster" + +msgid "Method" +msgstr "Metod" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s är inte kompatibel med %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "TPU stöds inte för automatisk kalibrering av flödesdynamik." + +msgid "Connecting to printer" +msgstr "Ansluter till skrivaren" + +msgid "From k Value" +msgstr "Från k Värde" + +msgid "To k Value" +msgstr "Till k Värde" + +msgid "Step value" +msgstr "" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "Nozzle diametern har synkroniserats från printer inställningarna." + +msgid "From Volumetric Speed" +msgstr "Från volymetrisk hastighet" + +msgid "To Volumetric Speed" +msgstr "Till volymetrisk hastighet" + +msgid "Flow Dynamics Calibration Result" +msgstr "Resultat för kalibrering av flödesdynamik" + +msgid "New" +msgstr "New" + +msgid "No History Result" +msgstr "Inget historikresultat" + +msgid "Success to get history result" +msgstr "Lyckades med att få historiskt resultat" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Uppdatering av tidigare kalibreringsposter för flödesdynamik" + +msgid "Action" +msgstr "Åtgärd" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "This machine type can only hold %d historical results per nozzle." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Redigera kalibrering av flödesdynamik" + +msgid "New Flow Dynamic Calibration" +msgstr "New Flow Dynamic Calibration" + +msgid "Ok" +msgstr "Ok" + +msgid "The filament must be selected." +msgstr "The filament must be selected." + +msgid "Network lookup" +msgstr "Nätverks sökning" + +msgid "Address" +msgstr "Address" + +msgid "Hostname" +msgstr "Värdnamn" + +msgid "Service name" +msgstr "Tjänstens namn" + +msgid "OctoPrint version" +msgstr "OctoPrint version" + +msgid "Searching for devices" +msgstr "Söker efter enheter" + +msgid "Finished" +msgstr "Färdig" + +msgid "Multiple resolved IP addresses" +msgstr "" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" + +msgid "PA Calibration" +msgstr "PA kalibrering" + +msgid "DDE" +msgstr "" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "" + +msgid "PA Tower" +msgstr "PA torn" + +msgid "PA Line" +msgstr "PA linje" + +msgid "PA Pattern" +msgstr "PA mönster" + +msgid "Start PA: " +msgstr "Starta PA: " + +msgid "End PA: " +msgstr "Slut PA: " + +msgid "PA step: " +msgstr "PA steg: " + +msgid "Print numbers" +msgstr "Skriv ut nummer" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Vänligen ange giltiga värden:\n" +"Start PA: >= 0.0\n" +"Slut PA: > Start PA\n" +"PA steg: >= 0.001)" + +msgid "Temperature calibration" +msgstr "Kalibrering av temperatur" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Filament typ" + +msgid "Start temp: " +msgstr "Start temp: " + +msgid "End temp: " +msgstr "Slut temp: " + +msgid "Temp step: " +msgstr "Temp steg: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" + +msgid "Max volumetric speed test" +msgstr "Max volymetrisk hastighets test" + +msgid "Start volumetric speed: " +msgstr "Start volymetrisk hastighet: " + +msgid "End volumetric speed: " +msgstr "Slut volymetrisk hastighet: " + +msgid "step: " +msgstr "steg: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "VFA test" +msgstr "VFA test" + +msgid "Start speed: " +msgstr "Start hastighet: " + +msgid "End speed: " +msgstr "Sluthastighet: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" + +msgid "Start retraction length: " +msgstr "Starta retraktion längd: " + +msgid "End retraction length: " +msgstr "Slutets indragnings längd: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Ladda upp till Printer Host med följande filnamn:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "Använd snedstreck ( / ) som katalog avgränsare om det behövs." + +msgid "Upload to storage" +msgstr "" + +msgid "Switch to Device tab after upload." +msgstr "" + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "Filnamnet slutar inte med \"%s\". Vill du fortsätta?" + +msgid "Upload" +msgstr "Ladda upp" + +msgid "Print host upload queue" +msgstr "Utskriftsvärdens uppladdnings kö" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "Förlopp" + +msgid "Host" +msgstr "Värd" + +msgctxt "OfFile" +msgid "Size" +msgstr "Storlek" + +msgid "Filename" +msgstr "Filnamn" + +msgid "Cancel selected" +msgstr "Avbryt vald" + +msgid "Show error message" +msgstr "Visa felmeddelande" + +msgid "Enqueued" +msgstr "I kö" + +msgid "Uploading" +msgstr "Laddar upp" + +msgid "Cancelling" +msgstr "Avbryter" + +msgid "Error uploading to print host" +msgstr "" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Kan inte utföra boolean operationer på valda delar" + +msgid "Mesh Boolean" +msgstr "Mesh Boolean" + +msgid "Union" +msgstr "Union" + +msgid "Difference" +msgstr "Skillnad" + +msgid "Intersection" +msgstr "Korsning" + +msgid "Source Volume" +msgstr "Source Volym" + +msgid "Tool Volume" +msgstr "Verktygets volym" + +msgid "Subtract from" +msgstr "Subtrahera från" + +msgid "Subtract with" +msgstr "Subtrahera med" + +msgid "selected" +msgstr "vald" + +msgid "Part 1" +msgstr "Del 1" + +msgid "Part 2" +msgstr "Del 2" + +msgid "Delete input" +msgstr "Ta bort inmatning" + +msgid "Network Test" +msgstr "Nätverkstest" + +msgid "Start Test Multi-Thread" +msgstr "Börja testa flera trådar" + +msgid "Start Test Single-Thread" +msgstr "Starta testet med en tråd" + +msgid "Export Log" +msgstr "Exportera logg" + +msgid "Snapmaker Orca Version:" +msgstr "" + +msgid "System Version:" +msgstr "Systemversion:" + +msgid "DNS Server:" +msgstr "DNS server:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "" + +msgid "Test Bing.com" +msgstr "Test Bing.com" + +msgid "Test bing.com:" +msgstr "Test bing.com:" + +msgid "Log Info" +msgstr "Info om logg" + +msgid "Select filament preset" +msgstr "Välj filament inställning" + +msgid "Create Filament" +msgstr "Skapa filament" + +msgid "Create Based on Current Filament" +msgstr "Skapa baserat på aktuellt filament" + +msgid "Copy Current Filament Preset " +msgstr "Kopiera aktuell filament inställning " + +msgid "Basic Information" +msgstr "Grundläggande information" + +msgid "Add Filament Preset under this filament" +msgstr "Lägg till filament inställningar för detta filament" + +msgid "We could create the filament presets for your following printer:" +msgstr "Vi kan skapa filament inställningar för följande printer:" + +msgid "Select Vendor" +msgstr "Välj leverantör" + +msgid "Input Custom Vendor" +msgstr "Ange anpassad leverantör" + +msgid "Can't find vendor I want" +msgstr "Kan inte hitta den leverantör jag vill ha" + +msgid "Select Type" +msgstr "Välj typ" + +msgid "Select Filament Preset" +msgstr "Välj filament inställning" + +msgid "Serial" +msgstr "Serienummer" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "t.ex. Basic, Matt, Silke, Marmor" + +msgid "Filament Preset" +msgstr "Filament inställning" + +msgid "Create" +msgstr "Skapa" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Vendor is not selected; please reselect vendor." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "Custom vendor missing; please input custom vendor." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" eller \"Generic\" kan inte användas som leverantör för anpassade " +"filament." + +msgid "Filament type is not selected, please reselect type." +msgstr "Filament typ är inte vald, vänligen välj typ igen." + +msgid "Filament serial is not inputed, please input serial." +msgstr "Filament serial missing; please input serial." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"There may be disallowed characters in the vendor or serial input of the " +"filament. Please delete and re-enter." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Alla inmatningar i den anpassade leverantören eller serien är mellanslag. " +"Vänligen ange på nytt." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "The vendor can not be a number; please re-enter." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "Du har ännu inte valt någon printer eller inställning. Välj minst en." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"Filamentnamnet %s som du skapade finns redan. \n" +"Om du fortsätter kommer den skapade inställningen att visas med sitt " +"fullständiga namn. Vill du fortsätta?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Vissa befintliga inställningar har inte skapats, enligt följande:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Vill du skriva om det?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" + +msgid "Create Printer/Nozzle" +msgstr "Skapa Printer/Nozzel" + +msgid "Create Printer" +msgstr "Skapa printer" + +msgid "Create Nozzle for Existing Printer" +msgstr "Skapa nozzel för befintlig skrivare" + +msgid "Create from Template" +msgstr "Skapa från mall" + +msgid "Create Based on Current Printer" +msgstr "Skapa baserat på aktuell printer" + +msgid "Import Preset" +msgstr "Importera inställning" + +msgid "Create Type" +msgstr "Skapa typ" + +msgid "The model is not found, place reselect vendor." +msgstr "The model was not found; please reselect vendor." + +msgid "Select Model" +msgstr "Välj modell" + +msgid "Select Printer" +msgstr "Välj Printer" + +msgid "Input Custom Model" +msgstr "Mata in anpassad modell" + +msgid "Can't find my printer model" +msgstr "Kan inte hitta min printer modell" + +msgid "Rectangle" +msgstr "Rektangel" + +msgid "Printable Space" +msgstr "Utskriftsbar yta" + +msgid "Hot Bed STL" +msgstr "Värmeplatta STL" + +msgid "Load stl" +msgstr "Ladda stl" + +msgid "Hot Bed SVG" +msgstr "Värmeplatta SVG" + +msgid "Load svg" +msgstr "Ladda svg" + +msgid "Max Print Height" +msgstr "Max utskriftshöjd" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "Filen överstiger %d MB, vänligen importera igen." + +msgid "Exception in obtaining file size, please import again." +msgstr "Undantag vid erhållande av filstorlek, vänligen importera igen." + +msgid "Preset path is not find, please reselect vendor." +msgstr "Inställd sökväg hittades inte; vänligen välj leverantör igen." + +msgid "The printer model was not found, please reselect." +msgstr "Printer modellen hittades inte, välj igen." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "The nozzle diameter was not found; please reselect." + +msgid "The printer preset is not found, place reselect." +msgstr "The printer preset was not found; please reselect." + +msgid "Printer Preset" +msgstr "Printer inställningar" + +msgid "Filament Preset Template" +msgstr "Filament inställnings mall" + +msgid "Deselect All" +msgstr "Avmarkera alla" + +msgid "Process Preset Template" +msgstr "Mall för process inställning" + +msgid "Back Page 1" +msgstr "Tillbaka Sida 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Du har ännu inte valt vilken printer inställning du vill skapa baserat på. " +"Välj leverantör och modell för printern" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"Du har angett ett otillåtet tecken i det utskrivbara området på första " +"sidan. Använd endast siffror." + +msgid "The custom printer or model is not inputed, place input." +msgstr "The custom printer or model missing; please input." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserved.\n" +"\tCancel: Do not create a preset; return to the creation interface." + +msgid "You need to select at least one filament preset." +msgstr "Du måste välja minst en inställning för filament." + +msgid "You need to select at least one process preset." +msgstr "Du måste välja minst en process inställning." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Skapa inställningar för filament misslyckades. Enligt följande:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "Skapa process inställningar misslyckades. Enligt följande:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Leverantören hittades inte; välj igen." + +msgid "Current vendor has no models, please reselect." +msgstr "Nuvarande leverantör har inga modeller, vänligen välj om." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"Du har inte valt leverantör och modell eller angett anpassad leverantör och " +"modell." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"Det kan finnas escape tecken i den anpassade printerns leverantör eller " +"modell. Vänligen radera och ange igen." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"Alla inmatningar i den anpassade printer leverantören eller modellen är " +"mellanslag. Vänligen ange på nytt." + +msgid "Please check bed printable shape and origin input." +msgstr "Kontrollera byggplattans utskrivbara form och ursprungs inmatning." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Du har ännu inte valt vilken printer som nozzeln ska bytas ut på; välj en " +"printer." + +msgid "Create Printer Successful" +msgstr "Skapa Printer lyckades" + +msgid "Create Filament Successful" +msgstr "Filament Created Successfully" + +msgid "Printer Created" +msgstr "Printer skapad" + +msgid "Please go to printer settings to edit your presets" +msgstr "Gå till printer inställningar för att redigera dina inställningar" + +msgid "Filament Created" +msgstr "Filament skapad" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Gå till filament inställningar för att redigera dina inställningar om du " +"behöver.\n" +"Observera att nozzel temperatur, värmebädds temperatur och maximal " +"volymhastighet alla har en betydande inverkan på utskriftskvaliteten. Ställ " +"in dem noggrant." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" + +msgid "Printer Setting" +msgstr "Printer inställningar" + +msgid "Printer config bundle(.orca_printer)" +msgstr "" + +msgid "Filament bundle(.orca_filament)" +msgstr "" + +msgid "Printer presets(.zip)" +msgstr "Printer inställningar(.zip)" + +msgid "Filament presets(.zip)" +msgstr "Filament inställningar (.zip)" + +msgid "Process presets(.zip)" +msgstr "Process inställningar(.zip)" + +msgid "initialize fail" +msgstr "initialisering misslyckad" + +msgid "add file fail" +msgstr "lägg till fil misslyckas" + +msgid "add bundle structure file fail" +msgstr "lägg till filstrukturs paket misslyckades" + +msgid "finalize fail" +msgstr "slutför misslyckande" + +msgid "open zip written fail" +msgstr "öppna zip skripten misslyckades" + +msgid "Export successful" +msgstr "Export lyckades" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it?\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Användarens inställning för filament. \n" +"Kan delas med andra." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Endast printer med ändringar av inställningar för printer, filament och " +"process visas." + +msgid "Only display the filament names with changes to filament presets." +msgstr "Visa endast filament namnen vid ändringar av filament inställningar." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Endast printer namn med inställningar för printer visas, och varje " +"inställning du väljer exporteras som zip-fil." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Endast filament namn med inställningar för användar filament visas, \n" +"och alla inställningar för användar filament i varje filament namn du väljer " +"exporteras som en zip-fil." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Endast printer namn med ändrade process inställningar visas, \n" +"och alla användarprocess inställningar i varje printer namn som du väljer " +"exporteras som zip-fil." + +msgid "Please select at least one printer or filament." +msgstr "Välj minst en printer eller ett filament." + +msgid "Please select a type you want to export" +msgstr "Välj en inställningstyp som du vill exportera" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "Failed to create temporary folder, please try Export Configs again." + +msgid "Edit Filament" +msgstr "Redigera filament" + +msgid "Filament presets under this filament" +msgstr "Filament inställningar för detta filament" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Observera: Om den enda inställningen under detta filament raderas, kommer " +"filamentet att raderas efter att dialogen har avslutats." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "Inställningar som ärvts av andra inställningar kan inte raderas" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" +msgstr[1] "" + +msgid "Delete Preset" +msgstr "Ta bort inställning" + +msgid "Are you sure to delete the selected preset?" +msgstr "Är du säker på att du vill radera den valda inställningen?" + +msgid "Delete preset" +msgstr "Ta bort inställning" + +msgid "+ Add Preset" +msgstr "+ Lägg till inställning" + +msgid "Delete Filament" +msgstr "Ta bort filament" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Alla filament inställningar som hör till detta filament kommer att " +"raderas. \n" +"Om du använder detta filament i din printer, vänligen återställ filament " +"informationen för den platsen." + +msgid "Delete filament" +msgstr "Ta bort filament" + +msgid "Add Preset" +msgstr "Lägg till inställning" + +msgid "Add preset for new printer" +msgstr "Lägg till inställningar för ny skrivare" + +msgid "Copy preset from filament" +msgstr "Kopiera inställning från filament" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "Filament valet hittar inte filament inställningen, välj det igen" + +msgid "[Delete Required]" +msgstr "[Radera krävs]" + +msgid "Edit Preset" +msgstr "Redigera inställningar" + +msgid "For more information, please check out Wiki" +msgstr "For more information, please check out our Wiki" + +msgid "Collapse" +msgstr "Komprimera" + +msgid "Daily Tips" +msgstr "Dagliga tips" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "nozzel memorerat: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Your nozzle diameter in preset is not consistent with the saved nozzle " +"diameter. Have you changed your nozzle?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*Utskrift av %s material med %s kan orsaka skador på nozzeln" + +msgid "Need select printer" +msgstr "Välj printer" + +msgid "The start, end or step is not valid value." +msgstr "Start, slut eller steg är inte giltigt värde." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Går inte att kalibrera: kan bero på att det inställda kalibreringsvärdet är " +"för stort, eller att steget är för litet" + +msgid "Physical Printer" +msgstr "Fysisk printer" + +msgid "Print Host upload" +msgstr "Uppladdning utskriftsvärd" + +msgid "Could not get a valid Printer Host reference" +msgstr "Det gick inte att hämta en giltig printer värdreferens" + +msgid "Success!" +msgstr "Lyckades!" + +msgid "Are you sure to log out?" +msgstr "" + +msgid "Refresh Printers" +msgstr "Uppdatera skrivare" + +msgid "View print host webui in Device tab" +msgstr "" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"HTTPS CA-filen är valfri. Den behövs bara om du använder HTTPS med ett " +"självsignerat certifikat." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Certifikatfiler (*.crt, *.pem)|*.crt;*.pem|Alla filer|*.*" + +msgid "Open CA certificate file" +msgstr "Öppna CA-certifikatfilen" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"På det här systemet använder %s HTTPS-certifikat från systemets " +"Certifikatarkiv eller Keyring." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Om du vill använda en anpassad CA-fil importerar du CA-filen till " +"Certificate Store/Keychain." + +msgid "Login/Test" +msgstr "" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"Anslutningen till printrar som är anslutna via printer värden misslyckades." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Felaktig typ av utskriftsvärd: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "Connection to AstroBox is working correctly." + +msgid "Could not connect to AstroBox" +msgstr "Kunde inte ansluta till AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Note: AstroBox version 1.1.0 or higher is required." + +msgid "Connection to Duet works correctly." +msgstr "Connection to Duet is working correctly." + +msgid "Could not connect to Duet" +msgstr "Kunde inte ansluta till Duet" + +msgid "Unknown error occured" +msgstr "Okänt fel uppstod" + +msgid "Wrong password" +msgstr "Fel lösenord" + +msgid "Could not get resources to create a new connection" +msgstr "Det gick inte att hämta resurser för att skapa en ny anslutning" + +msgid "Upload not enabled on FlashAir card." +msgstr "Uppladdning inte aktiverad på FlashAir kort." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "Connection to FlashAir is working correctly and upload is enabled." + +msgid "Could not connect to FlashAir" +msgstr "Kunde inte ansluta till FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Obs: FlashAir med firmware 2.00.02 eller nyare och aktiverad " +"uppladdningsfunktion krävs." + +msgid "Connection to MKS works correctly." +msgstr "Connection to MKS is working correctly." + +msgid "Could not connect to MKS" +msgstr "Kunde inte ansluta till MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "Connection to OctoPrint is working correctly." + +msgid "Could not connect to OctoPrint" +msgstr "Kunde inte ansluta till OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Note: OctoPrint version 1.1.0 or higher is required." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Connection to Prusa SL1 / SL1S is working correctly." + +msgid "Could not connect to Prusa SLA" +msgstr "Kunde inte ansluta till Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "Connection to PrusaLink is working correctly." + +msgid "Could not connect to PrusaLink" +msgstr "Kunde inte ansluta till PrusaLink" + +msgid "Storages found" +msgstr "" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" + +msgid "Connection to Prusa Connect works correctly." +msgstr "" + +msgid "Could not connect to Prusa Connect" +msgstr "" + +msgid "Connection to Repetier works correctly." +msgstr "Connection to Repetier is working correctly." + +msgid "Could not connect to Repetier" +msgstr "Kunde inte ansluta till Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Note: Repetier version 0.90.0 or higher is required." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP-status: %1%\n" +"Meddelandets kropp: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Parsning av värdsvaret misslyckades.\n" +"Meddelandetext: \"%1%\"\n" +"Fel: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Uppräkning av värdprintern misslyckades.\n" +"Meddelandets huvuddel: \"%1%\"\n" +"Felmeddelande: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a small layer height, and results in almost negligible layer lines " +"and high print quality. It is suitable for most general printing cases." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. This results in " +"much higher print quality but a much longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height. This results in almost negligible layer lines and " +"slightly longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height. This results in slightly visible layer lines but shorter print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height. This results in almost invisible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost invisible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height. This results in minimal layer lines and higher print quality but " +"longer print time." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in minimal layer lines and much higher print quality " +"but much longer print time." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"It has a normal layer height, and results in average layer lines and print " +"quality. It is suitable for most printing cases." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but slightly shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in less apparent layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. This results in almost negligible layer lines and much higher print " +"quality but much longer print time." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height. This results in almost negligible layer lines and longer print time." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. This results in higher print strength " +"but more filament consumption and longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in more apparent layer lines and lower print quality " +"but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height. This results in much more apparent layer lines and much lower print " +"quality, but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and slightly higher print " +"quality but longer print time." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height. This results in less apparent layer lines and higher print quality " +"but longer print time." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"It has a very big layer height, and results in very apparent layer lines, " +"low print quality and shorter printing time." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height. This results in very apparent layer lines and much lower print " +"quality but shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height. This results in extremely apparent layer lines and much lower " +"print quality but much shorter print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height. This results in slightly less but still apparent layer " +"lines and slightly higher print quality, but longer print time in some cases." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height. This results in less but still apparent layer lines and slightly " +"higher print quality, but longer print time in some cases." + +msgid "Connected to Obico successfully!" +msgstr "" + +msgid "Could not connect to Obico" +msgstr "" + +msgid "Connected to SimplyPrint successfully!" +msgstr "" + +msgid "Could not connect to SimplyPrint" +msgstr "" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" + +msgid "Connection to Flashforge works correctly." +msgstr "" + +msgid "Could not connect to Flashforge" +msgstr "" + +msgid "The provided state is not correct." +msgstr "" + +msgid "Please give the required permissions when authorizing this application." +msgstr "" + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" + +msgid "User cancelled." +msgstr "" + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Verktyget Klipp ut\n" +"Visste du att du kan klippa en modell i valfri vinkel och position med " +"skärverktyget?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Fixa modell\n" +"Visste du att du kan fixa en skadad 3D-modell för att undvika en hel del " +"berednings problem i Windows-systemet?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Timelapse\n" +"Visste du att du kan generera en timelapse video under varje utskrift?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Placera Automatiskt\n" +"Visste du att du automatiskt kan ordna alla objekt i ditt projekt?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Auto-Orient\n" +"Visste du att du kan rotera objekt till en optimal orientering för utskrift " +"med ett enkelt klick?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Placera på yta\n" +"Visste du att du snabbt kan orientera en modell så att ett av dess ytor " +"placeras på byggytan? Välj funktionen ”Placera på yta” eller tryck på F tangenten." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Lista över objekt\n" +"Visste du att du kan visa alla objekt/delar i en lista och ändra " +"inställningar för varje objekt/del?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Berednings Parametrar\n" +"Visste du att du kan visa alla objekt/delar på ett bord och ändra " +"inställningar för varje objekt/del?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Dela upp objekt/delar\n" +"Visste du att du kan dela upp ett stort objekt i små objekt för att " +"underlätta färgning eller utskrift?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Z-sömmens placering\n" +"Visste du att du kan anpassa placeringen av Z-sömmen och till och med måla " +"den på din utskrift för att få den på en mindre synlig plats? Detta " +"förbättrar modellens övergripande utseende. Kolla in det!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Finjustering för flödeshastighet\n" +"Visste du att flödeshastigheten kan finjusteras för ännu snyggare " +"utskrifter? Beroende på materialet kan du förbättra den totala finishen på " +"den tryckta modellen genom att göra lite finjusteringar." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Dela upp dina utskrifter i byggytor\n" +"Visste du att du kan dela upp en modell med många delar i enskilda byggytor " +"som är färdiga att skrivas ut? Detta förenklar processen att hålla reda på " +"alla delar." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Snabba upp utskriften med Adaptiv Lager Höjd\n" +"Visste du att du kan skriva ut en modell ännu snabbare med alternativet " +"Adaptiv Lager Höjd? Kolla in det!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Support målning\n" +"Visste du att du kan måla platsen för dina support? Denna funktion gör det " +"enkelt att placera support material endast på de delar av modellen som " +"faktiskt behöver det." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Olika typer av support\n" +"Visste du att du kan välja mellan flera typer av support? Trädsupport " +"fungerar bra för organiska modeller samtidigt som du sparar glödtråd och " +"förbättrar utskriftshastigheten. Kolla in dem!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Utskrift med Silk Filament\n" +"Visste du att Silk filament behöver särskild hänsyn för att utskriften ska " +"lyckas? En högre temperatur och lägre hastighet rekommenderas alltid för " +"bästa resultat." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Brim för bättre vidhäftning\n" +"Visste du att när printade modeller har ett litet kontakt område med " +"byggplattan rekommenderas det att använda en Brim?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Ange parametrar för flera objekt\n" +"Visste du att du kan ställa in berednings parametrar för alla valda objekt " +"samtidigt?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Stapla objekt\n" +"Visste du att du kan stapla objekt som en hel?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Rensa in i support/objekt/ifyllnad\n" +"Visste du att du kan minska filament åtgång genom att rensa den till support/" +"objekt/ifyllning under filament byten?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Förbättra styrkan\n" +"Visste du att du kan använda fler väggslingor och högre gles fyllningstäthet " +"för att förbättra modellens styrka?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"När behöver du skriva ut med printer dörren öppen?\n" +"Visste du att en öppen printer dörr kan minska risken för igensättning av " +"extruder/hotend vid utskrift av filament med lägre temperatur och högre " +"kapslingstemperatur? Det finns mer information om detta i Wiki." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Undvik vridning\n" +"Visste du att när du skriver ut material som är benägna att vrida, såsom " +"ABS, kan en lämplig ökning av värmebäddens temperatur minska sannolikheten " +"för vridning." + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Ange ett giltigt värde (K i 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Ange ett giltigt värde (K i 0~0.3, N i 0.6~2.0)" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "Den lokala anslutningen till skrivaren misslyckades; försök igen." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Information om Flow Dynamics Calibration finns i vår wiki.\n" +#~ "\n" +#~ "Vanligtvis är kalibreringen onödig. När du startar en utskrift i en färg/" +#~ "material, med alternativet \"flödesdynamisk kalibrering\" markerat i " +#~ "startmenyn, kommer skrivaren att följa det gamla sättet, kalibrera " +#~ "filamentet före utskriften; När du startar en utskrift i flera färger/" +#~ "material kommer skrivaren att använda standard kompensations parametern " +#~ "för filamentet vid varje filamentbyte, vilket ger ett bra resultat i de " +#~ "flesta fall.\n" +#~ "\n" +#~ "Observera att det finns några fall som gör att kalibreringsresultatet " +#~ "inte blir tillförlitligt: använd en strukturplatta för att göra " +#~ "kalibreringen; byggplattan har inte bra vidhäftning (tvätta byggplattan " +#~ "eller applicera lim!) ...Du kan hitta mer från vår wiki.\n" +#~ "\n" +#~ "Kalibreringsresultaten har cirka 10 procent fel i vårt test, vilket kan " +#~ "orsaka att resultatet inte är exakt detsamma i varje kalibrering. Vi " +#~ "undersöker fortfarande grundorsaken för att kunna göra förbättringar med " +#~ "nya uppdateringar." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Endast ett av resultaten med samma namn kommer att sparas. Är du säker på " +#~ "att du vill ersätta de andra resultaten?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Det finns redan ett tidigare kalibreringsresultat med samma namn: %s. " +#~ "Endast ett av resultaten med samma namn sparas. Är du säker på att du " +#~ "vill ersätta det tidigare resultatet?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Hitta hörnet med den perfekta graden av extrudering" + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "Export &Configs" +#~ msgstr "Exportera konfiguration" + +#~ msgid "Infill direction" +#~ msgstr "Ifyllnads riktning" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Aktivera detta för att få en G-kod med G2 och G3 drag. Passnings " +#~ "toleransen är densamma som upplösningen" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "Detta gör att ifyllnads området kan förstoras något för att överlappa " +#~ "väggarna för bättre vidhäftning.Det procentuella värdet är i förhållande " +#~ "till linjebredden för sparsam ifyllnad" + +#~ msgid "Unload Filament" +#~ msgstr "Mata ut" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Välj ett AMS fack tryck sedan \"Ladda eller \"Mata ur\" knappen för att " +#~ "automatiskt mata eller mata ut filament." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "Moderkort" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "X Kamera" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "active" +#~ msgstr "aktiv" + +#~ msgid "Jump to layer" +#~ msgstr "Hoppa till lager" + +#~ msgid "Cabin humidity" +#~ msgstr "Inkapslingens fuktighet" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "Grönt betyder att AMS-fuktigheten är normal, orange betyder att " +#~ "luftfuktigheten är hög, och rött betyder att luftfuktigheten är för hög. " +#~ "(Hygrometer: ju lägre desto bättre.)" + +#~ msgid "Desiccant status" +#~ msgstr "Status för torkmedel" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "En torkmedelsstatus som är lägre än två stänger indikerar att torkmedlet " +#~ "kan vara inaktivt. Byt torkmedel. (Ju högre desto bättre.)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Observera: När locket är öppet eller torkmedelspaketet byts ut kan det ta " +#~ "timmar eller en natt att absorbera fukten. Låga temperaturer saktar också " +#~ "ner processen. Under denna tid kan det hända att indikatorn inte " +#~ "representerar kammaren korrekt." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Observera: Om nytt filament sätts in under utskrift kommer AMS inte " +#~ "automatiskt att läsa av någon information förrän utskriften är avslutad." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "Success! G-code exporterades till %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Start misslyckad (Ingen Enhet)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Initieringen misslyckades (ingen kamera enhet)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "Skrivaren är upptagen med att ladda ner; vänta tills nedladdningen är " +#~ "klar." + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Initieringen misslyckades (Ej tillgängligt i endast LAN-läge)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "Initieringen misslyckades (skrivarens LAN-IP saknas)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Stoppad [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "Laddning misslyckad [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "Inga filer [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Inläsning misslyckades [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Det gick inte att hämta modell information från skrivaren." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Det gick inte att analysera modellinformation" + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Du har ändrat vissa inställningar för inställningen \"%1%\".\n" +#~ "Vill du behålla dessa inställningar (nytt värde) när du byter " +#~ "inställningar?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Du har ändrat några inställningar.\n" +#~ "Vill du behålla ändrade inställningar (nytt värde) när du byter " +#~ "inställningar?" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Lägg till massiv fyllning nära sluttande ytor för att garantera den " +#~ "vertikala skal tjockleken (topp+bottenfasta lager)." + +#~ msgid "Configuration package updated to " +#~ msgstr "Konfigurations paket uppdaterat till " + +#~ msgid "The Config can not be loaded." +#~ msgstr "Konfigurationen kan inte laddas." + +#~ msgid "Movement:" +#~ msgstr "Rörelse:" + +#~ msgid "Movement" +#~ msgstr "Rörelse" + +#~ msgid "Auto Segment" +#~ msgstr "Automatisk Segment" + +#~ msgid "Depth ratio" +#~ msgstr "Djup förhållande" + +#~ msgid "Prizm" +#~ msgstr "Prizm" + +#~ msgid "connector is out of cut contour" +#~ msgstr "kontakten är ur konturen" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "kontakterna är utanför skuren kontur" + +#~ msgid "connector is out of object" +#~ msgstr "kontakten är utanför objektet" + +#~ msgid "connectors is out of object" +#~ msgstr "Kontakterna måste vara på objektets yta." + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Ogiltigt tillstånd. \n" +#~ "Ingen del är vald att behålla efter skärning" + +#~ msgid "Edit Text" +#~ msgstr "Redigera text" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Fel! Det går inte att skapa tråden!" + +#~ msgid "Exception" +#~ msgstr "Undantag" + +#~ msgid "Choose SLA archive:" +#~ msgstr "Välj SLA arkiv:" + +#~ msgid "Import file" +#~ msgstr "Importera fil" + +#~ msgid "Import model and profile" +#~ msgstr "Importera modell och profil" + +#~ msgid "Import profile only" +#~ msgstr "Importera endast profil" + +#~ msgid "Import model only" +#~ msgstr "Importera endast modell" + +#~ msgid "Accurate" +#~ msgstr "Exakt" + +#~ msgid "Balanced" +#~ msgstr "Balanserad" + +#~ msgid "Quick" +#~ msgstr "Snabb" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Detta beskriver hur länge nozzeln kommer att röra sig längs den sista " +#~ "banan medan den retrakterar" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Förenkla modellen\n" +#~ "Visste du att du kan minska antalet trianglar i ett mesh med hjälp av " +#~ "funktionen Förenkla mesh? Högerklicka på modellen och välj Förenkla " +#~ "modellen. Läs mer i dokumentationen." + +#~ msgid "Filling bed " +#~ msgstr "Fyllning av byggytan" + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "%1% ifyllnads mönster stöds ej 100%% densitet." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "Byta till rätlinjigt mönster?\n" +#~ "Ja - Växla automatiskt till rätlinjigt mönster\n" +#~ "Nej - Återställ automatiskt densiteten till standardvärdet som inte är " +#~ "100 %." + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "Värm nozzeln till över 170 grader innan du laddar filamentet." + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "" +#~ "Densiteten av ifyllnad. 100%% betyder att objektet blir solid rakt igenom" + +#~ msgid "Tree support wall loops" +#~ msgstr "Tree support vägg varv" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "Inställningen bestämmer antal väggar runt tree support" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " fungerar inte vid 100%% densitet " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Ytplacerings verktyg" + +#~ msgid "Export as STL" +#~ msgstr "Exportera som STL" + +#~ msgid "Check cloud service status" +#~ msgstr "Kontrollera molntjänstens status" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Ange ett giltigt värde (K i 0 ~ 0,5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "Ange ett giltigt värde (K i 0 ~ 0,5, N i 0,6 ~ 2,0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Exportera Alla Objekt som STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "3mf ej kompatibel, laddar endast geometrin !" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Ej kompatibel 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "Lägg till/Ta bort skrivare" + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s stöds inte av AMS." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Påminn mig inte om den här versionen igen." + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Fel: IP eller Åtkomstkod är inte korrekta" + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Ordning på inre vägg/yttre vägg/ifyllnad" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "Utskriftsordning på inre vägg, yttre vägg och ifyllnad. " + +#~ msgid "inner/outer/infill" +#~ msgstr "inre/yttre/ifyllnad" + +#~ msgid "outer/inner/infill" +#~ msgstr "yttre/inre/ifyllnad" + +#~ msgid "infill/inner/outer" +#~ msgstr "ifyllnad/inre/yttre" + +#~ msgid "infill/outer/inner" +#~ msgstr "ifyllnad/yttre/inre" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "inre-yttre-inre/utfyllnad" + +#~ msgid "Export 3MF" +#~ msgstr "Exportera 3mf" + +#~ msgid "Export project as 3MF." +#~ msgstr "Exportera projekt som3mf." + +#~ msgid "Export slicing data" +#~ msgstr "Exportera beredningsdata" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Exportera beredningsdata till en mapp" + +#~ msgid "Load slicing data" +#~ msgstr "Ladda berednings data" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Ladda cachad berednings data från katalogen" + +#~ msgid "Slice" +#~ msgstr "Bered" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "Bered plattorna: 0-alla plattor, i-platta i, andra-ogiltiga" + +#~ msgid "Show command help." +#~ msgstr "Visa kommandohjälp." + +#~ msgid "UpToDate" +#~ msgstr "Aktuell" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "Uppdatera konfigurations värdena i 3mf till det senaste." + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "max antal trianglar per platta för beredning" + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "Max berednings tid per platta i sekunder" + +#~ msgid "Normative check" +#~ msgstr "Normativ kontroll" + +#~ msgid "Check the normative items." +#~ msgstr "Kontrollera de normativa objekten." + +#~ msgid "Output Model Info" +#~ msgstr "Mata ut modell information" + +#~ msgid "Output the model's information." +#~ msgstr "Mata ut modellens information." + +#~ msgid "Export Settings" +#~ msgstr "Exportera inställningar" + +#~ msgid "Export settings to a file." +#~ msgstr "Exportera inställningar till en fil." + +#~ msgid "Send progress to pipe" +#~ msgstr "Skicka framsteg till röret (SLA)" + +#~ msgid "Send progress to pipe." +#~ msgstr "Skicka framsteg till röret (SLA)" + +#~ msgid "Arrange Options" +#~ msgstr "Placera Val" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Placera val: 0-inaktivera, 1-aktivera, andra-auto" + +#~ msgid "Convert Unit" +#~ msgstr "Konvertera enhet" + +#~ msgid "Convert the units of model" +#~ msgstr "Konvertera modellens enheter" + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Skala modellen med en plus faktor" + +#~ msgid "Load General Settings" +#~ msgstr "Ladda allmänna inställningar" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "Ladda process/maskin inställningar ifrån vald fil" + +#~ msgid "Load Filament Settings" +#~ msgstr "Ladda filament inställningar" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "Ladda filament inställningar ifrån vald fil" + +#~ msgid "Skip Objects" +#~ msgstr "Hoppa över objekt" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Hoppa över vissa objekt i denna utskrift" + +#~ msgid "Output directory" +#~ msgstr "Mata ut katalog" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Mata ut katalogen för exporterade filer." + +#~ msgid "Debug level" +#~ msgstr "Felsökningsnivå" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Välj felsöknings nivå. 0:allvarlig, 1:fel, 2:varning, 3:info, 4:felsök, 5:" +#~ "spåra\n" + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "3D Vy Operationer\n" +#~ "Vet du hur du kontrollerar vy och objekt/delval med mus och pekskärm i 3D-" +#~ "scenen?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Fix Modell\n" +#~ "Visste du att du kan fixa en skadad 3D-modell för att undvika många " +#~ "berednings problem?" + +#~ msgid "Embeded" +#~ msgstr "Inbäddad" + +#~ msgid "Online Models" +#~ msgstr "Online modeller" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "Visa personalens utvalda modeller online på startsidan" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "Min utskrifts hastighet vid nedsänkning för kylning" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "Byggplattans temperatur överskrider filamentens förglasningstemperatur. " +#~ "Öppna skrivarens främre dörr innan du skriver ut för att undvika att " +#~ "nozzeln täpps till." + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Kristalliserings temperatur" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "Materialet mjuknar vid denna temperatur. Därför får inte byggplattan vara " +#~ "varmare än denna temperatur" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "Aktivera detta val om maskinen har extra kylfläkt" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "Hastigheten på extra del kylfläkten. Extra fläkten kommer att köras med " +#~ "denna hastighet under utskrift förutom de lager som definieras som inga " +#~ "kyl lager" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "Tomma lager runt botten ersätts med närmast normala lager." + +#~ msgid "The model has too many empty layers." +#~ msgstr "Modellen har för många tomma lager." + +#~ msgid "Cali" +#~ msgstr "Kalib" + +#~ msgid "Calibration of extrusion" +#~ msgstr "Kalibrering av extrudering" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "Mata nytt filament till extruder" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "Byggplattans temperatur för andra lager är mindre än temperaturen för " +#~ "första lager med mer än %d grader celsius.\n" +#~ "Detta kan medföra att utskriften släpper ifrån byggplattan under " +#~ "utskriften" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "Sängtemperaturen är högre än förglasnings temperaturen för detta " +#~ "filament.\n" +#~ "Detta kan orsaka blockering av nozzeln och utskriftsfel.\n" +#~ "Håll skrivaren öppen under utskriftsprocessen för att säkerställa " +#~ "luftcirkulationen eller minska temperaturen på den varma sängen." + +#~ msgid "Total Time Estimation" +#~ msgstr "Total tidsuppskattning" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Identifiering av resonansfrekvenser" + +#~ msgid "Immediately score" +#~ msgstr "Omedelbar resultat" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "Vänligen ge ett betyg till din favorit modell från Bambu Market." + +#~ msgid "Score" +#~ msgstr "Resultat" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Bambu High Temperature Plate" + +#~ msgid "Can't connect to the printer" +#~ msgstr "Kan inte ansluta till skrivaren" + +#~ msgid "Recommended temperature range" +#~ msgstr "Rekommenderat nozzel temperaturs område" + +#~ msgid "High Temp Plate" +#~ msgstr "High Temp Plate" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "Detta är byggplattans temperatur när High Temp Plate är installerad. " +#~ "Värdet 0 betyder att filamentet inte stöder utskrift på High Temp Plate." + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Tjocklek på inre bridge support" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Supportens stil och form. För normal support skapas en regelbunden " +#~ "rutnätsform stabilare stöd (standard), medan snäva support torn sparar " +#~ "material och minskar ärrbildning på objektet.\n" +#~ "För träd support kommer smal stil att sammanfoga grenar mer aggressivt " +#~ "och spara mycket material (standard), medan hybrid stil kommer att skapa " +#~ "liknande struktur som normalt stöd under stora platta överhäng." + +#~ msgid "Bed temperature difference" +#~ msgstr "Byggplattans temperatur skillnad" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "Det rekommenderas inte att byggytans temperatur för andra lager är lägre " +#~ "än det första lagret med mer än denna nivå. För låg byggyts temperatur på " +#~ "andra lager kan göra att modellen lossnar från byggplattan." + +#~ msgid "Orient the model" +#~ msgstr "Orientera modellen" diff --git a/localization/i18n/tr/Snapmaker_Orca_tr.po b/localization/i18n/tr/Snapmaker_Orca_tr.po new file mode 100644 index 0000000000..e88447e494 --- /dev/null +++ b/localization/i18n/tr/Snapmaker_Orca_tr.po @@ -0,0 +1,17919 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: 2024-07-11 00:22+0300\n" +"Last-Translator: Olcay ÖREN\n" +"Language-Team: \n" +"Language: tr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n==1) ? 0 : 1;\n" +"X-Generator: Poedit 3.4.4\n" + +msgid "Supports Painting" +msgstr "Destek boyama" + +msgid "Alt + Mouse wheel" +msgstr "Alt + Fare tekerleği" + +msgid "Section view" +msgstr "Bölüm görünümü" + +msgid "Reset direction" +msgstr "Yönü sıfırla" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + Fare tekerleği" + +msgid "Pen size" +msgstr "Kalem boyutu" + +msgid "Left mouse button" +msgstr "Sol fare tuşu" + +msgid "Enforce supports" +msgstr "Destekleri zorunlu kılın" + +msgid "Right mouse button" +msgstr "Sağ fare tuşu" + +msgid "Block supports" +msgstr "Blok destekleri" + +msgid "Shift + Left mouse button" +msgstr "Shift + Sol fare düğmesi" + +msgid "Erase" +msgstr "Sil" + +msgid "Erase all painting" +msgstr "Tüm boyamayı sil" + +msgid "Highlight overhang areas" +msgstr "Çıkıntı alanlarını vurgulayın" + +msgid "Gap fill" +msgstr "Boşluk doldurma" + +msgid "Perform" +msgstr "Uygula" + +msgid "Gap area" +msgstr "Boşluk alanı" + +msgid "Tool type" +msgstr "Araç türü" + +msgid "Smart fill angle" +msgstr "Akıllı doldurma açısı" + +msgid "On overhangs only" +msgstr "Yalnızca çıkıntılarda" + +msgid "Auto support threshold angle: " +msgstr "Otomatik destek eşik açısı: " + +msgid "Circle" +msgstr "Daire" + +msgid "Sphere" +msgstr "Küre" + +msgid "Fill" +msgstr "Doldur" + +msgid "Gap Fill" +msgstr "Boşluk doldurma" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "" +"Yalnızca şu kişi tarafından seçilen yüzeylerde boyamaya izin verir: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Yüzleri çıkıntı açısına göre vurgulayın." + +msgid "No auto support" +msgstr "Otomatik destek yok" + +msgid "Support Generated" +msgstr "Destek Oluşturuldu" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo-Yüzeye yerleştir" + +msgid "Lay on face" +msgstr "Yüzüstü yatır" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Filament sayısı, boyama aracının desteklediği maksimum sayıyı aşıyor. Boyama " +"aracında yalnızca ilk %1% filament mevcut olacaktır." + +msgid "Color Painting" +msgstr "Renkli Boyama" + +msgid "Pen shape" +msgstr "Kalem şekli" + +msgid "Paint" +msgstr "Boyama" + +msgid "Key 1~9" +msgstr "Tuş 1~9" + +msgid "Choose filament" +msgstr "Filament seçin" + +msgid "Edge detection" +msgstr "Kenar algılama" + +msgid "Triangles" +msgstr "Üçgenler" + +msgid "Filaments" +msgstr "Filamentler" + +msgid "Brush" +msgstr "Fırça" + +msgid "Smart fill" +msgstr "Akıllı boyama" + +msgid "Bucket fill" +msgstr "Kova boya aracı" + +msgid "Height range" +msgstr "Yükseklik aralığı" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "Wireframe Göster/Gizle" + +msgid "Shortcut Key " +msgstr "Kısayol tuşu " + +msgid "Triangle" +msgstr "Üçgen" + +msgid "Height Range" +msgstr "Yükseklik Aralığı" + +msgid "Vertical" +msgstr "Dikey" + +msgid "Horizontal" +msgstr "Yatay" + +msgid "Remove painted color" +msgstr "Boyalı rengi kaldır" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Şunlar kullanılarak boyanmıştır: Filament %1%" + +msgid "Move" +msgstr "Taşı" + +msgid "Gizmo-Move" +msgstr "Gizmo-Taşı" + +msgid "Rotate" +msgstr "Döndür" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-Döndür" + +msgid "Optimize orientation" +msgstr "Yönü optimize edin" + +msgid "Apply" +msgstr "Uygula" + +msgid "Scale" +msgstr "Ölçeklendir" + +msgid "Gizmo-Scale" +msgstr "Gizmo-Ölçeklendir" + +msgid "Error: Please close all toolbar menus first" +msgstr "Hata: Lütfen önce tüm araç çubuğu menülerini kapatın" + +msgid "in" +msgstr "in" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "Konum" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Döndürme" + +msgid "Scale ratios" +msgstr "Ölçek oranları" + +msgid "Object Operations" +msgstr "Nesne İşlemleri" + +msgid "Volume Operations" +msgstr "Hacim İşlemleri" + +msgid "Translate" +msgstr "Çeviri" + +msgid "Group Operations" +msgstr "Grup Operasyonları" + +msgid "Set Position" +msgstr "Pozisyonu ayarla" + +msgid "Set Orientation" +msgstr "Yönü Ayarla" + +msgid "Set Scale" +msgstr "Ölçeği Ayarla" + +msgid "Reset Position" +msgstr "Konumu Sıfırla" + +msgid "Reset Rotation" +msgstr "Döndürmeyi Sıfırla" + +msgid "World coordinates" +msgstr "Dünya koordinatları" + +msgid "Object coordinates" +msgstr "Nesne koordinatları" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Boyut" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "düzgün ölçek" + +msgid "Planar" +msgstr "Düzlemsel" + +msgid "Dovetail" +msgstr "Kırlangıç kuyruğu" + +msgid "Auto" +msgstr "Otomatik" + +msgid "Manual" +msgstr "Manual" + +msgid "Plug" +msgstr "Tak" + +msgid "Dowel" +msgstr "Dübel" + +msgid "Snap" +msgstr "Çıt Çıt" + +msgid "Prism" +msgstr "Prizma" + +msgid "Frustum" +msgstr "Kesik" + +msgid "Square" +msgstr "Kare" + +msgid "Hexagon" +msgstr "Altıgen" + +msgid "Keep orientation" +msgstr "Oryantasyonu koru" + +msgid "Place on cut" +msgstr "Kesime yerleştirin" + +msgid "Flip upside down" +msgstr "Baş aşağı çevir" + +msgid "Connectors" +msgstr "Konektörler" + +msgid "Type" +msgstr "Tür" + +msgid "Style" +msgstr "Stil" + +msgid "Shape" +msgstr "Şekil" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Derinlik" + +msgid "Groove" +msgstr "Oluk" + +msgid "Width" +msgstr "Genişlik" + +msgid "Flap Angle" +msgstr "Kanat açısı" + +msgid "Groove Angle" +msgstr "Oluk açısı" + +msgid "Part" +msgstr "Parça" + +msgid "Object" +msgstr "Nesne" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Kesim düzlemini çevirmek için tıklayın\n" +"Kesim düzlemini taşımak için sürükleyin" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Kesim düzlemini çevirmek için tıklayın\n" +"Kesim düzlemini taşımak için sürükleyin\n" +"Bir parçayı diğer tarafa atamak için sağ tıklayın" + +msgid "Move cut plane" +msgstr "Kesim düzlemini hareket ettir" + +msgid "Mode" +msgstr "Mod" + +msgid "Change cut mode" +msgstr "Kesme modunu değiştir" + +msgid "Tolerance" +msgstr "Tolerans" + +msgid "Drag" +msgstr "Sürükle" + +msgid "Draw cut line" +msgstr "Kesim çizgisi çiz" + +msgid "Left click" +msgstr "Sol tık" + +msgid "Add connector" +msgstr "Bağlayıcı ekle" + +msgid "Right click" +msgstr "Sağ tık" + +msgid "Remove connector" +msgstr "Bağlayıcıyı kaldır" + +msgid "Move connector" +msgstr "Bağlayıcıyı taşı" + +msgid "Add connector to selection" +msgstr "Seçime bağlayıcı ekle" + +msgid "Remove connector from selection" +msgstr "Bağlayıcıyı seçimden kaldır" + +msgid "Select all connectors" +msgstr "Tüm bağlayıcıları seç" + +msgid "Cut" +msgstr "Kes" + +msgid "Rotate cut plane" +msgstr "Kesim düzlemini döndür" + +msgid "Remove connectors" +msgstr "Bağlayıcıları kaldır" + +msgid "Bulge" +msgstr "Çıkıntı" + +msgid "Bulge proportion related to radius" +msgstr "Yarıçapla ilgili çıkıntı oranı" + +msgid "Space" +msgstr "Boşluk" + +msgid "Space proportion related to radius" +msgstr "Yarıçapla ilgili alan oranı" + +msgid "Confirm connectors" +msgstr "Bağlayıcıları onayla" + +msgid "Cancel" +msgstr "İptal" + +msgid "Build Volume" +msgstr "Birim oluştur" + +msgid "Flip cut plane" +msgstr "Kesim düzlemini çevir" + +msgid "Groove change" +msgstr "Oluk değişimi" + +msgid "Reset" +msgstr "Sıfırla" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Düzenlendi" + +msgid "Cut position" +msgstr "Kesim konumu" + +msgid "Reset cutting plane" +msgstr "Kesme düzlemini sıfırla" + +msgid "Edit connectors" +msgstr "Bağlayıcıları düzenle" + +msgid "Add connectors" +msgstr "Bağlayıcı ekle" + +msgid "Reset cut" +msgstr "Kesimi sıfırla" + +msgid "Reset cutting plane and remove connectors" +msgstr "Kesme düzlemini sıfırlayın ve bağlayıcıları çıkarın" + +msgid "Upper part" +msgstr "Üst parça" + +msgid "Lower part" +msgstr "Alt kısım" + +msgid "Keep" +msgstr "Sakla" + +msgid "Flip" +msgstr "Çevir" + +msgid "After cut" +msgstr "Kesildikten sonra" + +msgid "Cut to parts" +msgstr "Parçalara ayır" + +msgid "Perform cut" +msgstr "Kesimi gerçekleştir" + +msgid "Warning" +msgstr "Uyarı" + +msgid "Invalid connectors detected" +msgstr "Geçersiz bağlayıcılar algılandı" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "%1$d bağlayıcı kesim konturunun dışında" +msgstr[1] "%1$d bağlayıcı kesim konturunun dışında" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "%1$d bağlayıcı nesnenin dışında" +msgstr[1] "%1$d bağlayıcı nesnenin dışında" + +msgid "Some connectors are overlapped" +msgstr "Bazı konektörler üst üste binmiş" + +msgid "Select at least one object to keep after cutting." +msgstr "Kesimden sonra saklanacak en az bir nesne seçin." + +msgid "Cut plane is placed out of object" +msgstr "Kesilen düzlem nesnenin dışına yerleştirilir" + +msgid "Cut plane with groove is invalid" +msgstr "Oluklu kesme düzlemi geçersiz" + +msgid "Connector" +msgstr "Bağlayıcı" + +msgid "Cut by Plane" +msgstr "Düzlemsel Kes" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"Ana kat olmayan kenarlar kesme aletinden kaynaklanıyor, şimdi düzeltmek " +"istiyor musunuz?" + +msgid "Repairing model object" +msgstr "Model nesnesini onarma" + +msgid "Cut by line" +msgstr "Satıra göre kes" + +msgid "Delete connector" +msgstr "Bağlayıcıyı sil" + +msgid "Mesh name" +msgstr "Mesh adı" + +msgid "Detail level" +msgstr "Detay seviyesi" + +msgid "Decimate ratio" +msgstr "Oranı azalt" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"1 milyondan fazla üçgen içeren '%1%' modelinin işlenmesi yavaş olabilir. " +"Modelin basitleştirilmesi önemle tavsiye edilir." + +msgid "Simplify model" +msgstr "Modeli sadeleştir" + +msgid "Simplify" +msgstr "Sadeleştir" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "" +"Sadeleştirmeye şu anda yalnızca tek bir parça seçildiğinde izin veriliyor" + +msgid "Error" +msgstr "Hata" + +msgid "Extra high" +msgstr "Ekstra yüksek" + +msgid "High" +msgstr "Yüksek" + +msgid "Medium" +msgstr "Orta" + +msgid "Low" +msgstr "Düşük" + +msgid "Extra low" +msgstr "Ekstra düşük" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d üçgen" + +msgid "Show wireframe" +msgstr "Wireframe göster" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "İşlem önizlemesi sırasında uygulanamaz." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "İşlem zaten iptal ediliyor. Lütfen birkaç saniye bekleyin." + +msgid "Face recognition" +msgstr "Yüz tanıma" + +msgid "Perform Recognition" +msgstr "Tanıma Gerçekleştir" + +msgid "Brush size" +msgstr "Fırça boyutu" + +msgid "Brush shape" +msgstr "Fırça şekli" + +msgid "Enforce seam" +msgstr "Dikişi uygula" + +msgid "Block seam" +msgstr "Blok dikişi" + +msgid "Seam painting" +msgstr "Dikiş boyama" + +msgid "Remove selection" +msgstr "Seçimi kaldır" + +msgid "Entering Seam painting" +msgstr "Dikiş boyamaya girişi" + +msgid "Leaving Seam painting" +msgstr "Dikiş boyamasından çık" + +msgid "Paint-on seam editing" +msgstr "Boyalı dikiş düzenleme" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Yazı tipi" + +msgid "Thickness" +msgstr "Kalınlık" + +msgid "Text Gap" +msgstr "Metin Boşluğu" + +msgid "Angle" +msgstr "Açı" + +msgid "" +"Embeded\n" +"depth" +msgstr "" +"Gömülü\n" +"derinlik" + +msgid "Input text" +msgstr "Giriş metni" + +msgid "Surface" +msgstr "Yüzey" + +msgid "Horizontal text" +msgstr "Yatay metin" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + Fare yukarı veya aşağı hareket ettirir" + +msgid "Rotate text" +msgstr "Metni döndür" + +msgid "Text shape" +msgstr "Metin şekli" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Metin döndürme" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Metin taşıma" + +msgid "Set Mirror" +msgstr "Aynayı Ayarla" + +msgid "Embossed text" +msgstr "Kabartmalı metin" + +msgid "Enter emboss gizmo" +msgstr "Kabartma aletine girin" + +msgid "Leave emboss gizmo" +msgstr "Kabartma aletini bırak" + +msgid "Embossing actions" +msgstr "Kabartma eylemleri" + +msgid "Emboss" +msgstr "Kabartma" + +msgid "NORMAL" +msgstr "NORMAL" + +msgid "SMALL" +msgstr "KÜÇÜK" + +msgid "ITALIC" +msgstr "YATIK" + +msgid "SWISS" +msgstr "SWISS" + +msgid "MODERN" +msgstr "MODERN" + +msgid "First font" +msgstr "İlk yazı tipi" + +msgid "Default font" +msgstr "Varsayılan yazı tipi" + +msgid "Advanced" +msgstr "Gelişmiş" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"Metin seçilen yazı tipi kullanılarak yazılamıyor. Lütfen farklı bir yazı tipi " +"seçmeyi deneyin." + +msgid "Embossed text cannot contain only white spaces." +msgstr "Kabartmalı metin yalnızca beyaz boşluklardan oluşamaz." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" +"Metin, yazı tipi tarafından bilinmeyen karakter glifini ('?' ile temsil " +"edilir) içeriyor." + +msgid "Text input doesn't show font skew." +msgstr "Metin girişi yazı tipi çarpıklığını göstermiyor." + +msgid "Text input doesn't show font boldness." +msgstr "Metin girişi yazı tipi kalınlığını göstermiyor." + +msgid "Text input doesn't show gap between lines." +msgstr "Metin girişi satırlar arasındaki boşluğu göstermiyor." + +msgid "Too tall, diminished font height inside text input." +msgstr "Çok uzun, metin girişi içindeki yazı tipi yüksekliği azalmış." + +msgid "Too small, enlarged font height inside text input." +msgstr "Metin girişinde çok küçük, büyütülmüş yazı tipi yüksekliği." + +msgid "Text doesn't show current horizontal alignment." +msgstr "Metin geçerli yatay hizalamayı göstermiyor." + +msgid "Revert font changes." +msgstr "Yazı tipi değişikliklerini geri alın." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "\"%1%\" yazı tipi seçilemiyor." + +msgid "Operation" +msgstr "Operasyon" + +msgid "Join" +msgstr "Ekle" + +msgid "Click to change text into object part." +msgstr "Metni nesne kısmına değiştirmek için tıklayın." + +msgid "You can't change a type of the last solid part of the object." +msgstr "Nesnenin son katı kısmının türünü değiştiremezsiniz." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Kes" + +msgid "Click to change part type into negative volume." +msgstr "Parça tipini negatif hacme değiştirmek için tıklayın." + +msgid "Modifier" +msgstr "Değiştir" + +msgid "Click to change part type into modifier." +msgstr "Parça tipini değiştiriciye değiştirmek için tıklayın." + +msgid "Change Text Type" +msgstr "Metin Türünü Değiştir" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Kabartma metni için stili yeniden adlandırın (%1%)" + +msgid "Name can't be empty." +msgstr "Ad boş olamaz." + +msgid "Name has to be unique." +msgstr "Adın benzersiz olması gerekiyor." + +msgid "OK" +msgstr "TAMAM" + +msgid "Rename style" +msgstr "Stili yeniden adlandır" + +msgid "Rename current style." +msgstr "Geçerli stili yeniden adlandırın." + +msgid "Can't rename temporary style." +msgstr "Geçici stil yeniden adlandırılamıyor." + +msgid "First Add style to list." +msgstr "İlk önce listeye stil ekleyin." + +#, boost-format +msgid "Save %1% style" +msgstr "%1% stili kaydet" + +msgid "No changes to save." +msgstr "Kaydedilecek değişiklik yok." + +msgid "New name of style" +msgstr "Stilin yeni adı" + +msgid "Save as new style" +msgstr "Yeni stil olarak kaydet" + +msgid "Only valid font can be added to style." +msgstr "Stile yalnızca geçerli yazı tipi eklenebilir." + +msgid "Add style to my list." +msgstr "Stilimi listeme ekle." + +msgid "Save as new style." +msgstr "Yeni stil olarak kaydet." + +msgid "Remove style" +msgstr "Stili kaldır" + +msgid "Can't remove the last existing style." +msgstr "Mevcut son stil kaldırılamıyor." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "\"%1%\" stilini kalıcı olarak kaldırmak istediğinizden emin misiniz?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "\"%1%\" stilini silin." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "\"%1%\" silinemiyor. Son stildir." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "\"%1%\" geçici stili silinemiyor." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Değiştirilen stil \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "Şu anki stil \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"Stilin \"%1%\" olarak değiştirilmesi mevcut stil değişikliğini iptal " +"edecektir.\n" +"\n" +"Yine de devam etmek ister misin?" + +msgid "Not valid style." +msgstr "Geçerli bir stil değil." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "\"%1%\" stili kullanılamaz ve listeden kaldırılacaktır." + +msgid "Unset italic" +msgstr "Yatık ayarı kaldır" + +msgid "Set italic" +msgstr "Yatık" + +msgid "Unset bold" +msgstr "Kalın ayarı kaldır" + +msgid "Set bold" +msgstr "Kalın" + +msgid "Revert text size." +msgstr "Metin boyutunu geri döndür." + +msgid "Revert embossed depth." +msgstr "Kabartma derinliğini geri alın." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"Seçilen yazı tipi için gelişmiş seçenekler değiştirilemez.\n" +"Başka bir yazı tipi seçin." + +msgid "Revert using of model surface." +msgstr "Model yüzeyinin kullanımını geri alın." + +msgid "Revert Transformation per glyph." +msgstr "Glif başına Dönüşümü Geri Al." + +msgid "Set global orientation for whole text." +msgstr "Tüm metnin genel yönünü ayarlayın." + +msgid "Set position and orientation per glyph." +msgstr "Glif başına konum ve yönlendirmeyi ayarlayın." + +msgctxt "Alignment" +msgid "Left" +msgstr "Sol" + +msgctxt "Alignment" +msgid "Center" +msgstr "Merkez" + +msgctxt "Alignment" +msgid "Right" +msgstr "Sağ" + +msgctxt "Alignment" +msgid "Top" +msgstr "Üst" + +msgctxt "Alignment" +msgid "Middle" +msgstr "Orta" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Alt" + +msgid "Revert alignment." +msgstr "Hizalamayı geri al." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "punto" + +msgid "Revert gap between characters" +msgstr "Karakterler arasındaki boşluğu geri döndür" + +msgid "Distance between characters" +msgstr "Karakterler arasındaki mesafe" + +msgid "Revert gap between lines" +msgstr "Satırlar arasındaki boşluğu geri döndür" + +msgid "Distance between lines" +msgstr "Çizgiler arası mesafe" + +msgid "Undo boldness" +msgstr "Geri al" + +msgid "Tiny / Wide glyphs" +msgstr "Küçük / Geniş glifler" + +msgid "Undo letter's skew" +msgstr "Harflerin eğrilmesini geri al" + +msgid "Italic strength ratio" +msgstr "Yataylık güç oranı" + +msgid "Undo translation" +msgstr "Çeviriyi geri al" + +msgid "Distance of the center of the text to the model surface." +msgstr "Metnin merkezinin model yüzeyine uzaklığı." + +msgid "Undo rotation" +msgstr "Döndürmeyi geri al" + +msgid "Rotate text Clock-wise." +msgstr "Metni Saat yönünde döndürün." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"Metni nesnenin yüzeyi boyunca hareket ettirirken metnin dönüşünün kilidini " +"açın." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "Metni nesnenin yüzeyi boyunca taşırken metnin dönüşünü kilitleyin." + +msgid "Select from True Type Collection." +msgstr "True Type Koleksiyonundan seçim yapın." + +msgid "Set text to face camera" +msgstr "Metni bana çevir" + +msgid "Orient the text towards the camera." +msgstr "Metni kameraya doğru yönlendirin." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"Tam olarak aynı yazı tipi yüklenemiyor(\"%1%\"). Uygulama benzer bir uygulama " +"seçti(\"%2%\"). Metni düzenlemeyi etkinleştirmek için yazı tipini belirtmeniz " +"gerekir." + +msgid "No symbol" +msgstr "Sembol yok" + +msgid "Loading" +msgstr "Yükleniyor" + +msgid "In queue" +msgstr "Sırada" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Yükseklik" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Yüzeyi kullan" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "Glif başına" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Hizalama" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Karakter boşluğu" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Satır boşluğu" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Kalınlık" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Eğrilik oranı" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Yüzeyden" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "Sürdür" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Koleksiyon" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "SVG döndürme" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "SVG taşıma" + +msgid "Enter SVG gizmo" +msgstr "SVG aletine girin" + +msgid "Leave SVG gizmo" +msgstr "SVG aletinden ayrıl" + +msgid "SVG actions" +msgstr "SVG eylemleri" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Opaklık (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Renk gradyanı (%1%)" + +msgid "Undefined fill type" +msgstr "Tanımsız dolgu türü" + +msgid "Linear gradient" +msgstr "Doğrusal degrade" + +msgid "Radial gradient" +msgstr "Radyal degrade" + +msgid "Open filled path" +msgstr "Doldurulmuş yolu aç" + +msgid "Undefined stroke type" +msgstr "Tanımlanmamış vuruş türü" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "Yol kendi kendine kesişmeden ve birden fazla noktadan iyileştirilemez." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"Son şekil, aynı koordinata sahip birden fazla noktanın kendi kendine " +"kesişimini içerir." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "Şekil görünmez (%1%) olarak işaretlendi." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "Şeklin dolgusu (%1%) desteklenmeyenleri içeriyor: %2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "Şeklin konturu (%1%) çok ince (minimum genişlik %2% mm'dir)." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "Şeklin konturu (%1%) desteklenmeyenleri içeriyor: %2%." + +msgid "Face the camera" +msgstr "Kameraya bak" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Bilinmeyen dosya adı" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "SVG dosya yolu \"%1%\"" + +msgid "Reload SVG file from disk." +msgstr "SVG dosyasını diskten yeniden yükleyin." + +msgid "Change file" +msgstr "Dosyayı değiştir" + +msgid "Change to another .svg file" +msgstr "Başka bir .svg dosyasına geçin" + +msgid "Forget the file path" +msgstr "Dosya yolunu unut" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"Yerel yolu 3MF dosyasına kaydetmeyin.\n" +"Ayrıca 'diskten yeniden yükle' seçeneğini de devre dışı bırakır." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Düzenlenemez" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Düzenlenemez parça olarak modele dönüştürün" + +msgid "Save as" +msgstr "Farklı kaydet" + +msgid "Save SVG file" +msgstr "SVG dosyasını kaydet" + +msgid "Save as '.svg' file" +msgstr "'.svg' dosyası olarak kaydet" + +msgid "Size in emboss direction." +msgstr "Kabartma yönünde boyut." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "Ölçek ayrıca eğri örneklerinin miktarını da değiştirir (%1%)" + +msgid "Width of SVG." +msgstr "SVG'nin genişliği." + +msgid "Height of SVG." +msgstr "SVG'nin yüksekliği." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "SVG'nin en boy oranını kilitleyin/kilidini açın." + +msgid "Reset scale" +msgstr "Ölçeği sıfırla" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "SVG merkezinin model yüzeyine uzaklığı." + +msgid "Reset distance" +msgstr "Mesafeyi sıfırla" + +msgid "Reset rotation" +msgstr "Döndürmeyi sıfırla" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "Yüzeyin üzerinde sürüklerken dönüş açısını kilitleyin/kilidini açın." + +msgid "Mirror vertically" +msgstr "Dikey olarak yansıt" + +msgid "Mirror horizontally" +msgstr "Yatay olarak yansıt" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "SVG Türünü Değiştir" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Ayna" + +msgid "Choose SVG file for emboss:" +msgstr "Kabartma için SVG dosyasını seçin:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "Dosya mevcut DEĞİL (%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "Dosya adının \".svg\" ile bitmesi gerekiyor ancak siz %1%'i seçtiniz" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "Nano SVG ayrıştırıcı dosyadan (%1%) yüklenemiyor." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "SVG dosyası kabartma yapılacak tek bir yol İÇERMEZ (%1%)." + +msgid "Vertex" +msgstr "Tepe noktası" + +msgid "Edge" +msgstr "Kenar" + +msgid "Plane" +msgstr "Düzlem" + +msgid "Point on edge" +msgstr "Kenarın noktası" + +msgid "Point on circle" +msgstr "Çemberin noktası" + +msgid "Point on plane" +msgstr "Düzlemin noktası" + +msgid "Center of edge" +msgstr "Kenarın merkezi" + +msgid "Center of circle" +msgstr "Çemberin merkezi" + +msgid "ShiftLeft mouse button" +msgstr "Shift + Sol fare düğmesi" + +msgid "Select feature" +msgstr "Özellik seçin" + +msgid "Select point" +msgstr "Nokta seç" + +msgid "Delete" +msgstr "Sil" + +msgid "Restart selection" +msgstr "Seçimi sıfırla" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "Seçimi kaldır" + +msgid "Measure" +msgstr "Ölçüm" + +msgid "Edit to scale" +msgstr "Ölçeğe göre düzenleyin" + +msgctxt "Verb" +msgid "Scale" +msgstr "Ölçek" + +msgid "None" +msgstr "Hiçbiri" + +msgid "Diameter" +msgstr "Çap" + +msgid "Length" +msgstr "Uzunluk" + +msgid "Selection" +msgstr "Seçim" + +msgid "Copy to clipboard" +msgstr "Panoya kopyala" + +msgid "Perpendicular distance" +msgstr "Dikey mesafe" + +msgid "Distance" +msgstr "Mesafe" + +msgid "Direct distance" +msgstr "Doğrudan mesafe" + +msgid "Distance XYZ" +msgstr "Uzaklık XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Bildirim" + +msgid "Undefined" +msgstr "Tanımsız" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1%, %2% ile değiştirildi" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "" +"Yapılandırma, Snapmaker Orca'ın daha yeni bir sürümü tarafından oluşturulabilir." + +msgid "Some values have been replaced. Please check them:" +msgstr "Bazı değerler değiştirildi. Lütfen bunları kontrol edin:" + +msgid "Process" +msgstr "İşlem" + +msgid "Filament" +msgstr "Filament" + +msgid "Machine" +msgstr "Makine" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "Yapılandırma paketi yüklendi ancak bazı değerler tanınamadı." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "\"%1%\" yapılandırma dosyası yüklendi ancak bazı değerler tanınamadı." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca hafızasının yetersiz olması nedeniyle sonlandırılacak. Bir hata " +"olabilir. Sorunu ekibimize bildirirseniz seviniriz." + +msgid "Fatal error" +msgstr "Kritik hata" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Snapmaker Orca bir yerelleştirme hatası nedeniyle sonlandırılacak. Bu sorunun " +"gerçekleştiği spesifik senaryoyu bildirirseniz memnun oluruz." + +msgid "Critical error" +msgstr "Kritik hata" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca'da işlenmeyen bir istisna oluştu: %1%" + +msgid "Untitled" +msgstr "İsimsiz" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Bambu Ağ Eklentisini İndirme" + +msgid "Login information expired. Please login again." +msgstr "Giriş bilgilerinin süresi doldu. Lütfen tekrar giriş yapın." + +msgid "Incorrect password" +msgstr "Yanlış parola" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "%s bağlantısı başarısız oldu! [SN:%s, kod=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca, belirli özellikleri çalıştırmak için Microsoft WebView2 Runtime " +"gerektirir.\n" +"Şimdi yüklemek için Evet'e tıklayın." + +msgid "WebView2 Runtime" +msgstr "WebView2 Çalışma Zamanı" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"Devam etmek istiyor musun?" + +msgid "Remember my choice" +msgstr "Seçimimi hatırla" + +msgid "Loading configuration" +msgstr "Yapılandırma yükleniyor" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "Yeni sürümü varsayılan tarayıcıda indirmek için tıklayın: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Orca Dilimleyicinin yükseltilmesi gerekiyor" + +msgid "This is the newest version." +msgstr "Bu en yeni versiyondur." + +msgid "Info" +msgstr "Bilgi" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will not " +"be affected." +msgstr "" +"Snapmaker Orca konfigürasyon dosyası bozulmuş olabilir ve ayrıştırılamayabilir.\n" +"Snapmaker Orca, konfigürasyon dosyasını yeniden oluşturmayı denedi.\n" +"Lütfen dikkat edin, uygulama ayarları kaybolacak, ancak yazıcı profilleri " +"etkilenmeyecek." + +msgid "Rebuild" +msgstr "Yeniden yükleniyor" + +msgid "Loading current presets" +msgstr "Mevcut ön ayarlar yükleniyor" + +msgid "Loading a mode view" +msgstr "Mod görünümü yükleniyor" + +msgid "Choose one file (3mf):" +msgstr "Dosya seçin (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "" +"Bir veya daha fazla dosya seçin (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Bir veya daha fazla dosya seçin (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "ZIP dosyasını seçin:" + +msgid "Choose one file (gcode/3mf):" +msgstr "Bir dosya seçin (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "Bazı ön ayarlar değiştirildi." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Modifield ön ayarlarını yeni projede tutabilir, değişiklikleri atabilir veya " +"yeni ön ayarlar olarak kaydedebilirsiniz." + +msgid "User logged out" +msgstr "Kullanıcı oturumu kapattı" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "" +"dilimleme işlemi sırasında yeni veya açık proje dosyasına izin verilmez!" + +msgid "Open Project" +msgstr "Projeyi Aç" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"Snapmaker Orca'ın sürümü çok düşük ve normal şekilde kullanılabilmesi için en " +"son sürüme güncellenmesi gerekiyor" + +msgid "Privacy Policy Update" +msgstr "Gizlilik Politikası Güncellemesi" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"Bulutta önbelleğe alınan kullanıcı ön ayarlarının sayısı üst sınırı aştı; " +"yeni oluşturulan kullanıcı ön ayarları yalnızca yerel olarak kullanılabilir." + +msgid "Sync user presets" +msgstr "Kullanıcı ön ayarlarını senkronize edin" + +msgid "Loading user preset" +msgstr "Kullanıcı ön ayarı yükleniyor" + +msgid "Switching application language" +msgstr "Uygulama dilini değiştirme" + +msgid "Select the language" +msgstr "Dili seçin" + +msgid "Language" +msgstr "Dil" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Yüklemeler halen devam ediyor" + +msgid "Stop them and continue anyway?" +msgstr "Onları durdurup yine de devam etmek mi istiyorsunuz?" + +msgid "Ongoing uploads" +msgstr "Devam eden yüklemeler" + +msgid "Select a G-code file:" +msgstr "G kodu dosyası seçin:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"URL indirme işlemi başlatılamadı. Hedef klasör ayarlanmamış. Lütfen " +"Yapılandırma Sihirbazı’nda hedef klasörü seçin." + +msgid "Import File" +msgstr "Dosya İçe Aktar" + +msgid "Choose files" +msgstr "Dosyaları seç" + +msgid "New Folder" +msgstr "Yeni Klasör" + +msgid "Open" +msgstr "Aç" + +msgid "Rename" +msgstr "Yeniden adlandır" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Orca Dilimleyici GUI'si başlatılamadı" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Önemli hata, istisna yakalandı: %1%" + +msgid "Quality" +msgstr "Kalite" + +msgid "Shell" +msgstr "Kabuk" + +msgid "Infill" +msgstr "Dolgu" + +msgid "Support" +msgstr "Destek" + +msgid "Flush options" +msgstr "Filament Temizleme" + +msgid "Speed" +msgstr "Hız" + +msgid "Strength" +msgstr "Dayanıklılık" + +msgid "Top Solid Layers" +msgstr "Üst Katı Katmanlar" + +msgid "Top Minimum Shell Thickness" +msgstr "Üst Minimum Kabuk Kalınlığı" + +msgid "Bottom Solid Layers" +msgstr "Alt Katı Katmanlar" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Alt Minimum Kabuk Kalınlığı" + +msgid "Ironing" +msgstr "Ütüleme" + +msgid "Fuzzy Skin" +msgstr "Bulanık kaplama" + +msgid "Extruders" +msgstr "Ekstruderler" + +msgid "Extrusion Width" +msgstr "Ekstrüzyon Genişliği" + +msgid "Wipe options" +msgstr "Temizleme seçenekleri" + +msgid "Bed adhesion" +msgstr "Etek" + +msgid "Add part" +msgstr "Parça ekle" + +msgid "Add negative part" +msgstr "Negatif parça ekle" + +msgid "Add modifier" +msgstr "Değiştirici ekle" + +msgid "Add support blocker" +msgstr "Destek engelleyici ekle" + +msgid "Add support enforcer" +msgstr "Destek uygulayıcısı ekle" + +msgid "Add text" +msgstr "Yazı ekle" + +msgid "Add negative text" +msgstr "Negatif metin ekle" + +msgid "Add text modifier" +msgstr "Metin değiştirici ekle" + +msgid "Add SVG part" +msgstr "SVG parça ekle" + +msgid "Add negative SVG" +msgstr "Negatif SVG ekle" + +msgid "Add SVG modifier" +msgstr "SVG değiştirici ekle" + +msgid "Select settings" +msgstr "Ayarları şeç" + +msgid "Hide" +msgstr "Gizle" + +msgid "Show" +msgstr "Göster" + +msgid "Del" +msgstr "Sil" + +msgid "Delete the selected object" +msgstr "Seçilen nesneyi sil" + +msgid "Load..." +msgstr "Yükle..." + +msgid "Cube" +msgstr "Küp" + +msgid "Cylinder" +msgstr "Silindir" + +msgid "Cone" +msgstr "Koni" + +msgid "Disc" +msgstr "Disk" + +msgid "Torus" +msgstr "Simit" + +msgid "Orca Cube" +msgstr "Orca Küpü" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Autodesk FDM Testi" + +msgid "Voron Cube" +msgstr "Voron Küpü" + +msgid "Stanford Bunny" +msgstr "Stanford Tavşanı" + +msgid "Orca String Hell" +msgstr "Orca Cehennemi" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Bu modelin üst yüzeyinde metin kabartması bulunmaktadır. En iyi sonuçları " +"elde etmek amacıyla, 'Üst Yüzeylerde Yalnızca Bir Duvar'ın en iyi şekilde " +"çalışması için 'Tek Duvar Eşiği(min_width_top_surface)' seçeneğini 0'a " +"ayarlamanız önerilir.\n" +"Evet - Bu ayarları otomatik olarak değiştir\n" +"Hayır - Bu ayarları benim için değiştirme" + +msgid "Text" +msgstr "Metin" + +msgid "Height range Modifier" +msgstr "Yükseklik aralığı değiştirici" + +msgid "Add settings" +msgstr "Ayar ekle" + +msgid "Change type" +msgstr "Türü değiştir" + +msgid "Set as an individual object" +msgstr "Ayrı bir nesne olarak ayarla" + +msgid "Set as individual objects" +msgstr "Bireysel nesneler olarak ayarla" + +msgid "Fill bed with copies" +msgstr "Yatağı kopyalarla doldurun" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Yatağın kalan alanını seçilen nesnenin kopyalarıyla doldurun" + +msgid "Printable" +msgstr "Yazdırılabilir" + +msgid "Fix model" +msgstr "Modeli düzelt" + +msgid "Export as one STL" +msgstr "STL olarak dışa aktar" + +msgid "Export as STLs" +msgstr "STLs olarak dışa aktar" + +msgid "Reload from disk" +msgstr "Diskten yeniden yükle" + +msgid "Reload the selected parts from disk" +msgstr "Seçilen parçaları diskten yeniden yükle" + +msgid "Replace with STL" +msgstr "STL ile değiştirin" + +msgid "Replace the selected part with new STL" +msgstr "Seçilen parçayı yeni STL ile değiştirin" + +msgid "Change filament" +msgstr "Filamenti değiştir" + +msgid "Set filament for selected items" +msgstr "Seçilen öğeler için filamenti ayarla" + +msgid "Default" +msgstr "Varsayılan" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Filament %d" + +msgid "current" +msgstr "geçerli" + +msgid "Scale to build volume" +msgstr "Yapı hacmine göre ölçeklendir" + +msgid "Scale an object to fit the build volume" +msgstr "Bir nesneyi yapı hacmine uyacak şekilde ölçeklendirin" + +msgid "Flush Options" +msgstr "Hizalama Seçenekleri" + +msgid "Flush into objects' infill" +msgstr "Nesnelerin dolgusuna hizalayın" + +msgid "Flush into this object" +msgstr "Bu nesnenin içine hizala" + +msgid "Flush into objects' support" +msgstr "Nesnelerin desteğine hizalayın" + +msgid "Edit in Parameter Table" +msgstr "Parametre tablosunda düzenle" + +msgid "Convert from inch" +msgstr "İnçten dönüştür" + +msgid "Restore to inch" +msgstr "İnçe geri çevir" + +msgid "Convert from meter" +msgstr "Metreden dönüştür" + +msgid "Restore to meter" +msgstr "Metreye geri çevir" + +msgid "Assemble" +msgstr "Birleştir" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Seçilen nesneleri birden çok parçalı bir nesneyle birleştirin" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Seçilen nesneleri tek parçalı bir nesneye birleştirin" + +msgid "Mesh boolean" +msgstr "Mesh bölme" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Birleştirme ve çıkarma dahil mesh bölme işlemleri" + +msgid "Along X axis" +msgstr "X ekseni boyunca" + +msgid "Mirror along the X axis" +msgstr "X ekseni boyunca aynalama" + +msgid "Along Y axis" +msgstr "Y ekseni boyunca" + +msgid "Mirror along the Y axis" +msgstr "Y ekseni boyunca aynalama" + +msgid "Along Z axis" +msgstr "Z ekseni boyunca" + +msgid "Mirror along the Z axis" +msgstr "Z ekseni boyunca aynalama" + +msgid "Mirror object" +msgstr "Nesneyi aynala" + +msgid "Edit text" +msgstr "Metni düzenle" + +msgid "Ability to change text, font, size, ..." +msgstr "Metni, yazı tipini, boyutunu değiştirme yeteneği ..." + +msgid "Edit SVG" +msgstr "SVG'yi düzenle" + +msgid "Change SVG source file, projection, size, ..." +msgstr "SVG kaynak dosyasını, projeksiyonunu, boyutunu değiştirin ..." + +msgid "Invalidate cut info" +msgstr "Kesim bilgisini geçersiz kıl" + +msgid "Add Primitive" +msgstr "Şekil ekle" + +msgid "Add Handy models" +msgstr "Pratik model ekle" + +msgid "Add Models" +msgstr "Model ekle" + +msgid "Show Labels" +msgstr "Etiketleri Göster" + +msgid "To objects" +msgstr "Nesnelere" + +msgid "Split the selected object into multiple objects" +msgstr "Seçilen nesneyi birden çok nesneye bölme" + +msgid "To parts" +msgstr "Parçalara" + +msgid "Split the selected object into multiple parts" +msgstr "Seçilen nesneyi birden çok parçaya böl" + +msgid "Split" +msgstr "Böl" + +msgid "Split the selected object" +msgstr "Seçilen nesneyi böl" + +msgid "Auto orientation" +msgstr "Otomatik yönlendirme" + +msgid "Auto orient the object to improve print quality." +msgstr "Baskı kalitesini artırmak için nesneyi otomatik olarak yönlendirin." + +msgid "Select All" +msgstr "Hepsini seç" + +msgid "select all objects on current plate" +msgstr "geçerli plakadaki tüm nesneleri seç" + +msgid "Delete All" +msgstr "Hepsini sil" + +msgid "delete all objects on current plate" +msgstr "geçerli plakadaki tüm nesneleri sil" + +msgid "Arrange" +msgstr "Hizala" + +msgid "arrange current plate" +msgstr "Mevcut plakayı hizala" + +msgid "Reload All" +msgstr "Tümünü yeniden yükle" + +msgid "reload all from disk" +msgstr "Hepsini diskten yeniden yükle" + +msgid "Auto Rotate" +msgstr "Otomatik döndürme" + +msgid "auto rotate current plate" +msgstr "Geçerli plakayı otomatik döndürme" + +msgid "Delete Plate" +msgstr "Plakayı sil" + +msgid "Remove the selected plate" +msgstr "Seçilen plakayı kaldır" + +msgid "Clone" +msgstr "Klon oluştur" + +msgid "Simplify Model" +msgstr "Modeli basitleştir" + +msgid "Center" +msgstr "Merkez" + +msgid "Edit Process Settings" +msgstr "İşlem ayarlarını düzenle" + +msgid "Edit print parameters for a single object" +msgstr "Tek bir nesne için yazdırma parametrelerini düzenleme" + +msgid "Change Filament" +msgstr "Filamenti Değiştir" + +msgid "Set Filament for selected items" +msgstr "Seçilen öğeler için Filamenti ayarla" + +msgid "Unlock" +msgstr "Kilidi aç" + +msgid "Lock" +msgstr "Kilitle" + +msgid "Edit Plate Name" +msgstr "Plaka adını düzenle" + +msgid "Name" +msgstr "İsim" + +msgid "Fila." +msgstr "Fila." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d hata onarıldı" +msgstr[1] "%1$d hata onarıldı" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Hata: %1$d manifold olmayan kenar." +msgstr[1] "Hata: %1$d manifold olmayan kenar." + +msgid "Remaining errors" +msgstr "Kalan hatalar" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d manifold olmayan kenar" +msgstr[1] "%1$d manifold olmayan kenar" + +msgid "Right click the icon to fix model object" +msgstr "Model nesnesini düzeltmek için simgeye sağ tıklayın" + +msgid "Right button click the icon to drop the object settings" +msgstr "Nesne ayarlarını bırakmak için simgeye sağ tıklayın" + +msgid "Click the icon to reset all settings of the object" +msgstr "Nesnenin tüm ayarlarını sıfırlamak için simgeye tıklayın" + +msgid "Right button click the icon to drop the object printable property" +msgstr "Nesnenin yazdırılabilir özelliğini bırakmak için simgeye sağ tıklayın" + +msgid "Click the icon to toggle printable property of the object" +msgstr "Nesnenin yazdırılabilir özelliğini değiştirmek için simgeyi tıklayın" + +msgid "Click the icon to edit support painting of the object" +msgstr "Nesnenin destek resmini düzenlemek için simgeye tıklayın" + +msgid "Click the icon to edit color painting of the object" +msgstr "Nesnenin renk resmini düzenlemek için simgeye tıklayın" + +msgid "Click the icon to shift this object to the bed" +msgstr "Bu nesneyi yatağa taşımak için simgeye tıklayın" + +msgid "Loading file" +msgstr "Dosya yükleniyor" + +msgid "Error!" +msgstr "Hata!" + +msgid "Failed to get the model data in the current file." +msgstr "Geçerli dosyadaki model verileri alınamadı." + +msgid "Generic" +msgstr "Genel" + +msgid "Add Modifier" +msgstr "Değiştirici Ekle" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "Değiştirici ayarlarını düzenlemek için nesne başına ayar moduna geçin." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Seçilen nesnelerin işlem ayarlarını düzenlemek için nesne başına ayar moduna " +"geçin." + +msgid "Delete connector from object which is a part of cut" +msgstr "Kesilen parçanın parçası olan nesneden bağlayıcıyı sil" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Kesimin bir parçası olan nesneden katı parçayı silin" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Kesimin bir parçası olan nesneden negatif hacmi silin" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Kesilmiş yazışmaları kaydetmek için ilgili tüm nesnelerden tüm bağlayıcıları " +"silebilirsiniz." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate cut " +"infornation first." +msgstr "" +"Bu eylem kesilmiş bir yazışmayı bozacaktır.\n" +"Bundan sonra model tutarlılığı garanti edilemez.\n" +"\n" +"Katı parçalarla veya negatif hacimlerle işlem yapmak için öncelikle kesim " +"bilgisini geçersiz kılmanız gerekir." + +msgid "Delete all connectors" +msgstr "Tüm bağlayıcıları sil" + +msgid "Deleting the last solid part is not allowed." +msgstr "Son katı kısmın silinmesine izin verilmez." + +msgid "The target object contains only one part and can not be splited." +msgstr "Hedef nesne yalnızca bir parça içerir ve bölünemez." + +msgid "Assembly" +msgstr "Birleştir" + +msgid "Cut Connectors information" +msgstr "Kesim Konnektörleri bilgileri" + +msgid "Object manipulation" +msgstr "Nesne manipülasyonu" + +msgid "Group manipulation" +msgstr "Grup manipülasyonu" + +msgid "Object Settings to modify" +msgstr "Değiştirilecek Nesne Ayarları" + +msgid "Part Settings to modify" +msgstr "Değiştirilecek Parça Ayarları" + +msgid "Layer range Settings to modify" +msgstr "Katman aralığı Değiştirilecek ayarlar" + +msgid "Part manipulation" +msgstr "Parça manipülasyonu" + +msgid "Instance manipulation" +msgstr "Örnek manipülasyonu" + +msgid "Height ranges" +msgstr "Yükseklik aralıkları" + +msgid "Settings for height range" +msgstr "Yükseklik aralığı ayarları" + +msgid "Layer" +msgstr "Katman" + +msgid "Selection conflicts" +msgstr "Seçim çakışmaları" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "İlk seçilen öğe bir nesne ise ikincisi de nesne olmalıdır." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "İlk seçilen öğe bir parça ise ikincisi aynı nesnenin parçası olmalıdır." + +msgid "The type of the last solid object part is not to be changed." +msgstr "Son katı nesne parçasının tipi değiştirilNozullidir." + +msgid "Negative Part" +msgstr "Negatif Parça" + +msgid "Support Blocker" +msgstr "Destek Engelleyici" + +msgid "Support Enforcer" +msgstr "Destek Uygulayıcısı" + +msgid "Type:" +msgstr "Tip:" + +msgid "Choose part type" +msgstr "Parça tipini seçin" + +msgid "Enter new name" +msgstr "Yeni adı girin" + +msgid "Renaming" +msgstr "Yeniden adlandırma" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "Aşağıdaki model nesnesi onarıldı" +msgstr[1] "Aşağıdaki model objeler onarıldı" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Aşağıdaki model nesnesi onarılamadı" +msgstr[1] "Aşağıdaki model nesneleri onarılamadı" + +msgid "Repairing was canceled" +msgstr "Onarım iptal edildi" + +msgid "Additional process preset" +msgstr "Ek işlem ön ayarı" + +msgid "Remove parameter" +msgstr "Parametreyi kaldır" + +msgid "to" +msgstr "ile" + +msgid "Remove height range" +msgstr "Yükseklik aralığını kaldır" + +msgid "Add height range" +msgstr "Yükseklik aralığı ekle" + +msgid "Invalid numeric." +msgstr "Geçersiz sayı." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"bir hücre aynı sütundaki yalnızca bir veya daha fazla hücreye kopyalanabilir" + +msgid "multiple cells copy is not supported" +msgstr "birden fazla hücre kopyalama desteklenmiyor" + +msgid "Outside" +msgstr "Dış" + +msgid "Layer height" +msgstr "Katman Yüksekliği" + +msgid "Wall loops" +msgstr "Duvar döngüleri" + +msgid "Infill density(%)" +msgstr "Dolgu yoğunluğu (%)" + +msgid "Auto Brim" +msgstr "Otomatik Kenar" + +msgid "Mouse ear" +msgstr "Fare Kulağı" + +msgid "Outer brim only" +msgstr "Yalnızca dış kenar" + +msgid "Inner brim only" +msgstr "Yalnızca iç kenar" + +msgid "Outer and inner brim" +msgstr "Dış ve iç kenar" + +msgid "No-brim" +msgstr "Kenarsız" + +msgid "Outer wall speed" +msgstr "Dış duvar hızı" + +msgid "Plate" +msgstr "Plaka" + +msgid "Brim" +msgstr "Kenar" + +msgid "Object/Part Setting" +msgstr "Nesne/Parça Ayarı" + +msgid "Reset parameter" +msgstr "Parametreyi sıfırla" + +msgid "Multicolor Print" +msgstr "Çok Renkli Baskı" + +msgid "Line Type" +msgstr "Çizgi Tipi" + +msgid "More" +msgstr "Daha" + +msgid "Open Preferences." +msgstr "Tercihler'i açın." + +msgid "Open next tip." +msgstr "Sonraki ipucunu açın." + +msgid "Open Documentation in web browser." +msgstr "Belgeleri web tarayıcısında açın." + +msgid "Color" +msgstr "Renk" + +msgid "Pause" +msgstr "Duraklat" + +msgid "Template" +msgstr "Şablon" + +msgid "Custom" +msgstr "Özel" + +msgid "Pause:" +msgstr "Duraklat:" + +msgid "Custom Template:" +msgstr "Özel Şablon:" + +msgid "Custom G-code:" +msgstr "Özel G kodu:" + +msgid "Custom G-code" +msgstr "Özel G kodu" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Geçerli katmanda kullanılan Özel G kodunu girin:" + +msgid "Jump to Layer" +msgstr "Katmana Atla" + +msgid "Please enter the layer number" +msgstr "Lütfen katman numarasını girin" + +msgid "Add Pause" +msgstr "Duraklatma Ekle" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Bu katmanın başına bir duraklatma komutu ekleyin." + +msgid "Add Custom G-code" +msgstr "Özel G Kodu Ekle" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Bu katmanın başına özel G kodunu ekleyin." + +msgid "Add Custom Template" +msgstr "Özel Şablon Ekle" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Bu katmanın başlangıcına şablon özel G kodunu ekleyin." + +msgid "Filament " +msgstr "Filament " + +msgid "Change filament at the beginning of this layer." +msgstr "Bu katmanın başlangıcında filamenti değiştirin." + +msgid "Delete Pause" +msgstr "Duraklatmayı Sil" + +msgid "Delete Custom Template" +msgstr "Özel Şablonu Sil" + +msgid "Edit Custom G-code" +msgstr "Özel G Kodunu Düzenle" + +msgid "Delete Custom G-code" +msgstr "Özel G Kodunu Sil" + +msgid "Delete Filament Change" +msgstr "Filament Değişikliğini Sil" + +msgid "No printer" +msgstr "Yazıcı yok" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Sunucuya bağlanırken hata oluştu" + +msgid "Check the status of current system services" +msgstr "Mevcut sistem hizmetlerinin durumunu kontrol edin" + +msgid "code" +msgstr "kod" + +msgid "Failed to connect to cloud service" +msgstr "Bulut hizmetine bağlanılamadı" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "" +"Bulut hizmeti durumunu görüntülemek için lütfen yukarıdaki köprüye tıklayın" + +msgid "Failed to connect to the printer" +msgstr "Yazıcıya bağlanılamadı" + +msgid "Connection to printer failed" +msgstr "Yazıcıya bağlantı başarısız oldu" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Lütfen yazıcının ve Studio'nun ağ bağlantısını kontrol edin." + +msgid "Connecting..." +msgstr "Bağlanıyor..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Boş" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Otomatik Doldurma" + +msgid "AMS not connected" +msgstr "AMS bağlı değil" + +msgid "Load" +msgstr "Yükle" + +msgid "Unload" +msgstr "Boşalt" + +msgid "Ext Spool" +msgstr "Harici Makara" + +msgid "Tips" +msgstr "İpuçları" + +msgid "Guide" +msgstr "Rehber" + +msgid "Retry" +msgstr "Yeniden dene" + +msgid "Calibrating AMS..." +msgstr "AMS kalibre ediliyor..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"Kalibrasyon sırasında bir sorun oluştu. Çözümü görüntülemek için tıklayın." + +msgid "Calibrate again" +msgstr "Tekrar kalibre edin" + +msgid "Cancel calibration" +msgstr "Kalibrasyonu iptal et" + +msgid "Idling..." +msgstr "Rölantide Çalışıyor..." + +msgid "Heat the nozzle" +msgstr "Nozulu ısıtın" + +msgid "Cut filament" +msgstr "Filamenti kes" + +msgid "Pull back current filament" +msgstr "Mevcut filamenti geri çekin" + +msgid "Push new filament into extruder" +msgstr "Yeni filamenti ekstrudere itin" + +msgid "Purge old filament" +msgstr "Eski filamenti temizleyin" + +msgid "Feed Filament" +msgstr "Filament Ekstrude" + +msgid "Confirm extruded" +msgstr "Filamentin ekstrude edildiğini onayla" + +msgid "Check filament location" +msgstr "Filament konumunu kontrol et" + +msgid "Grab new filament" +msgstr "Yeni filament al" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Bir AMS yuvası seçin ve filamentleri otomatik olarak yüklemek veya boşaltmak " +"için “Yükle” veya “Boşalt” düğmesine basın." + +msgid "Edit" +msgstr "Düzenle" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Seçilen tüm nesneler kilitli plaka üzerindedir,\n" +"Bu nesneler üzerinde otomatik düzenleme yapamıyoruz." + +msgid "No arrangable objects are selected." +msgstr "Düzenlenebilir hiçbir nesne seçilmedi." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Bu plaka kilitli.\n" +"Bu plaka üzerinde otomatik düzenleme yapamıyoruz." + +msgid "Arranging..." +msgstr "Hizalanıyor..." + +msgid "Arranging" +msgstr "Hizalanıyor" + +msgid "Arranging canceled." +msgstr "Hizalama iptal edildi." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Hizalama yapıldı ancak paketlenmemiş ürünler var. Aralığı azaltın ve tekrar " +"deneyin." + +msgid "Arranging done." +msgstr "Hizalama tamamlandı." + +msgid "Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Hizalama başarısız oldu. Nesne geometrilerini işlerken bazı istisnalar " +"bulundu." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single bed:\n" +"%s" +msgstr "" +"Hizalama tek plakaya sığmayan aşağıdaki nesneler göz ardı edildi:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Seçilen tüm nesneler kilitli plaka üzerindedir,\n" +"Bu nesneler üzerinde otomatik yönlendirme yapamıyoruz." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Bu plaka kilitli.\n" +"Bu plaka üzerinde otomatik yönlendirme yapamıyoruz." + +msgid "Orienting..." +msgstr "Yönlendiriliyor..." + +msgid "Orienting" +msgstr "Yönlendiriliyor" + +msgid "Orienting canceled." +msgstr "Yönlendirme iptal edildi." + +msgid "Filling" +msgstr "Dolduruluyor" + +msgid "Bed filling canceled." +msgstr "Yatak dolumu iptal edildi." + +msgid "Bed filling done." +msgstr "Yatak doldurma işlemi tamamlandı." + +msgid "Searching for optimal orientation" +msgstr "Optimum yönelimi arama" + +msgid "Orientation search canceled." +msgstr "Yön araması iptal edildi." + +msgid "Orientation found." +msgstr "Yön bulundu." + +msgid "Logging in" +msgstr "Giriş Yapılıyor" + +msgid "Login failed" +msgstr "Giriş başarısız oldu" + +msgid "Please check the printer network connection." +msgstr "Lütfen yazıcının ağ bağlantısını kontrol edin." + +msgid "Abnormal print file data. Please slice again." +msgstr "Anormal yazdırma dosyası verileri. Lütfen tekrar dilimleyin." + +msgid "Task canceled." +msgstr "Görev iptal edildi." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"Yükleme görevi zaman aşımına uğradı. Lütfen ağ durumunu kontrol edin ve " +"tekrar deneyin." + +msgid "Cloud service connection failed. Please try again." +msgstr "Bulut hizmeti bağlantısı başarısız oldu. Lütfen tekrar deneyin." + +msgid "Print file not found. please slice again." +msgstr "Yazdırma dosyası bulunamadı. lütfen tekrar dilimleyin." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"Yazdırma dosyası izin verilen maksimum boyutu (1 GB) aşıyor. Lütfen modeli " +"basitleştirin ve tekrar dilimleyin." + +msgid "Failed to send the print job. Please try again." +msgstr "Yazdırma işi gönderilemedi. Lütfen tekrar deneyin." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Dosya ftp'ye yüklenemedi. Lütfen tekrar deneyin." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Yukarıdaki bağlantıya tıklayarak bambu sunucusunun mevcut durumunu kontrol " +"edin." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"Yazdırma dosyasının boyutu çok büyük. Lütfen dosya boyutunu ayarlayıp tekrar " +"deneyin." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "Yazdırma dosyası bulunamadı. Lütfen tekrar dilimleyip baskıya gönderin." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Yazdırma dosyası FTP'ye yüklenemedi. Lütfen ağ durumunu kontrol edin ve " +"tekrar deneyin." + +msgid "Sending print job over LAN" +msgstr "Yazdırma işi LAN üzerinden gönderiliyor" + +msgid "Sending print job through cloud service" +msgstr "Yazdırma işini bulut hizmeti aracılığıyla gönderme" + +msgid "Print task sending times out." +msgstr "Yazdırma görevi gönderimi zaman aşımına uğradı." + +msgid "Service Unavailable" +msgstr "Hizmet kullanılamıyor" + +msgid "Unknown Error." +msgstr "Bilinmeyen Hata." + +msgid "Sending print configuration" +msgstr "Yazdırma yapılandırması gönderiliyor" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "Başarıyla gönderildi. %ss'de otomatik olarak cihaz sayfasına atlayacak" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "" +"Başarıyla gönderildi. %ss'de otomatik olarak bir sonraki sayfaya atlayacak" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "LAN yoluyla yazdırmadan önce bir SD kartın takılması gerekir." + +msgid "Sending gcode file over LAN" +msgstr "LAN üzerinden gcode dosyası gönderiliyor" + +msgid "Sending gcode file to sdcard" +msgstr "Gcode dosyası sdcard'a gönderiliyor" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Başarıyla gönderildi. %s s'de mevcut sayfayı kapat" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Yazıcıya göndermeden önce bir SD kartın takılması gerekir." + +msgid "Importing SLA archive" +msgstr "SLA arşivi içe aktarılıyor" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA printer " +"preset first before importing that SLA archive." +msgstr "" +"SLA arşivi herhangi bir ön ayar içermez. Lütfen SLA arşivini içe aktarmadan " +"önce bazı SLA yazıcı ön ayarlarını etkinleştirin." + +msgid "Importing canceled." +msgstr "İçe aktarma iptal edildi." + +msgid "Importing done." +msgstr "İçe aktarma tamamlandı." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA presets " +"were used as fallback." +msgstr "" +"İçe aktarılan SLA arşivi herhangi bir ön ayar içermiyordu. Geçerli SLA ön " +"ayarları geri dönüş olarak kullanıldı." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "Çok parçalı bir nesne içeren SLA projesini yatağa yükleyemezsiniz" + +msgid "Please check your object list before preset changing." +msgstr "Lütfen ön ayarı değiştirmeden önce nesne listenizi kontrol edin." + +msgid "Attention!" +msgstr "Dikkat!" + +msgid "Downloading" +msgstr "İndiriliyor" + +msgid "Download failed" +msgstr "Yükleme başarısız" + +msgid "Cancelled" +msgstr "İptal edildi" + +msgid "Install successfully." +msgstr "Yükleme başarılı." + +msgid "Installing" +msgstr "Yükleniyor" + +msgid "Install failed" +msgstr "Yükleme başarısız" + +msgid "Portions copyright" +msgstr "Bazı bölümlerin telif hakkı" + +msgid "Copyright" +msgstr "Telif hakkı" + +msgid "License" +msgstr "Lisans" + +msgid "Snapmaker Orca is licensed under " +msgstr "Orca Dilimleyici şu lisansa sahiptir: " + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero Genel Kamu Lisansı, sürüm 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca is Based on Orca Slicer" + +msgid "Libraries" +msgstr "Kütüphaneler" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Bu yazılım, telif hakkı ve diğer mülkiyet hakları ilgili sahiplerine ait olan " +"açık kaynaklı bileşenleri kullanır" + +#, c-format, boost-format +msgid "About %s" +msgstr "Hakkında %s" + +msgid "Snapmaker Orca " +msgstr "Orca Dilimleyici " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca, BambuStudio, PrusaSlicer ve SuperSlicer'ı temel alır." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "" +"BambuStudio orijinal olarak PrusaResearch'ün PrusaSlicer'ını temel almaktadır." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "" +"PrusaSlicer orijinal olarak Alessandro Ranellucci'nin Slic3r'sine " +"dayanmaktadır." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r, Alessandro Ranellucci tarafından diğer birçok katkıda bulunanların " +"yardımıyla yaratıldı." + +msgid "Version" +msgstr "Sürüm" + +msgid "AMS Materials Setting" +msgstr "AMS Malzeme Ayarı" + +msgid "Confirm" +msgstr "Onayla" + +msgid "Close" +msgstr "Kapat" + +msgid "Colour" +msgstr "Renk" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Nozul\n" +"Sıcaklık" + +msgid "max" +msgstr "maksimum" + +msgid "min" +msgstr "minimum" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "Giriş değeri %1%'den büyük ve %2%'den küçük olmalıdır" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "Yazdırma sırasında AMS yuvası bilgilerinin ayarlanması desteklenmiyor" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Akış Dinamiği Kalibrasyonunun Faktörleri" + +msgid "PA Profile" +msgstr "PA Profili" + +msgid "Factor K" +msgstr "Faktör K" + +msgid "Factor N" +msgstr "Faktör N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "Yazdırma desteklenmediğinde Sanal yuva bilgilerinin ayarlanması" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Filament bilgisini temizlemek istediğinizden emin misiniz?" + +msgid "You need to select the material type and color first." +msgstr "Önce malzeme türünü ve rengini seçmeniz gerekir." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "Lütfen geçerli bir değer girin (K %.1f~%.1f içinde)" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "Lütfen geçerli bir değer girin (K %.1f~%.1f içinde, N %.1f~%.1f içinde)" + +msgid "Other Color" +msgstr "Diğer renk" + +msgid "Custom Color" +msgstr "Özel renk" + +msgid "Dynamic flow calibration" +msgstr "Dinamik akış kalibrasyonu" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration results. " +"Please fill in the same values as the actual printing. They can be auto-" +"filled by selecting a filament preset." +msgstr "" +"Nozul sıcaklığı ve maksimum hacimsel hız kalibrasyon sonuçlarını " +"etkileyecektir. Lütfen gerçek yazdırmayla aynı değerleri girin. Bir filament " +"ön ayarı seçilerek otomatik olarak doldurulabilirler." + +msgid "Nozzle Diameter" +msgstr "Nozul Çapı" + +msgid "Bed Type" +msgstr "Yatak Tipi" + +msgid "Nozzle temperature" +msgstr "Nozzle sıcaklığı" + +msgid "Bed Temperature" +msgstr "Yatak Sıcaklığı" + +msgid "Max volumetric speed" +msgstr "Maksimum hacimsel hız" + +msgid "℃" +msgstr "°C" + +msgid "Bed temperature" +msgstr "Yatak Sıcaklığı" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "Kalibrasyonu başlat" + +msgid "Next" +msgstr "Sonraki" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Kalibrasyon tamamlandı. Lütfen sıcak yatağınızdaki en düzgün ekstrüzyon " +"hattını aşağıdaki resimdeki gibi bulun ve sol tarafındaki değeri K faktörü " +"giriş kutusuna girin." + +msgid "Save" +msgstr "Kaydet" + +msgid "Last Step" +msgstr "Son adım" + +msgid "Example" +msgstr "Örnek" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Kalibre ediliyor... %d%%" + +msgid "Calibration completed" +msgstr "Kalibrasyon tamamlandı" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s, %s'yi desteklemiyor" + +msgid "Dynamic flow Calibration" +msgstr "Dinamik akış kalibrasyonu" + +msgid "Step" +msgstr "Adım" + +msgid "AMS Slots" +msgstr "AMS Yuvaları" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "Not: Yalnızca aynı malzeme türüne sahip AMS yuvaları seçilebilir." + +msgid "Enable AMS" +msgstr "AMS'yi etkinleştir" + +msgid "Print with filaments in the AMS" +msgstr "AMS'deki filamentlerle yazdırma" + +msgid "Disable AMS" +msgstr "AMS'yi devre dışı bırak" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Şasinin arkasına monte edilmiş filamentle yazdırma" + +msgid "Current Cabin humidity" +msgstr "Mevcut Kabin nemi" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Lütfen kurutucuyu çok ıslandığında değiştirin. Gösterge aşağıdaki durumlarda " +"doğru temsil etmeyebilir: kapak açıkken veya nem çekici paketi " +"değiştirildiğinde. nemin emilmesi saatler alır, düşük sıcaklıklar da süreci " +"yavaşlatır." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Yazdırma işinde kullanılan filament için hangi AMS yuvasının kullanılması " +"gerektiğini yapılandırma" + +msgid "Filament used in this print job" +msgstr "Bu yazdırma işinde kullanılan filament" + +msgid "AMS slot used for this filament" +msgstr "Bu filament için kullanılan AMS yuvası" + +msgid "Click to select AMS slot manually" +msgstr "AMS yuvasını manuel olarak seçmek için tıklayın" + +msgid "Do not Enable AMS" +msgstr "AMS'yi Etkinleştirme" + +msgid "Print using materials mounted on the back of the case" +msgstr "Kasanın arkasına monte edilen malzemeleri kullanarak yazdırma" + +msgid "Print with filaments in ams" +msgstr "Ams içerisindeki filamentlerle yazdırma" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Kasanın arkasına monte edilmiş filamentler ile yazdırma" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Mevcut malzeme bittiğinde yazıcı aşağıdaki sırayla yazdırmaya devam edecektir." + +msgid "Group" +msgstr "Grup" + +msgid "The printer does not currently support auto refill." +msgstr "Yazıcı şu anda otomatik yeniden doldurmayı desteklemiyor." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"AMS filament yedekleme özelliği etkin değil, lütfen AMS ayarlarından " +"etkinleştirin." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"Eğer AMS'de iki aynı filament bulunursa, AMS filament yedekleme özelliği " +"etkinleştirilecektir. \n" +"(Şu anda aynı markaya ait sarf malzemelerinin otomatik temini " +"desteklenmektedir, malzeme türü ve rengi)" + +msgid "DRY" +msgstr "KURU" + +msgid "WET" +msgstr "ISLAK" + +msgid "AMS Settings" +msgstr "AMS Ayarları" + +msgid "Insertion update" +msgstr "Ekleme güncellemesi" + +msgid "" +"The AMS will automatically read the filament information when inserting a new " +"Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"AMS, yeni bir Bambu Lab filamenti takıldığında filament bilgilerini otomatik " +"olarak okuyacaktır. Bu yaklaşık 20 saniye sürer." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Not: Yazdırma sırasında yeni bir filaman takılırsa AMS, yazdırma tamamlanana " +"kadar herhangi bir bilgiyi otomatik olarak okumayacaktır." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"Yeni bir filament yerleştirirken AMS, bilgileri otomatik olarak okumaz ve " +"manuel olarak girmeniz için boş bırakır." + +msgid "Power on update" +msgstr "Güncellemeyi aç" + +msgid "" +"The AMS will automatically read the information of inserted filament on start-" +"up. It will take about 1 minute.The reading process will roll filament spools." +msgstr "" +"AMS, başlangıçta takılan filamentin bilgilerini otomatik olarak okuyacaktır. " +"Yaklaşık 1 dakika sürecektir. Okuma işlemi filament makaralarını saracaktır." + +msgid "" +"The AMS will not automatically read information from inserted filament during " +"startup and will continue to use the information recorded before the last " +"shutdown." +msgstr "" +"AMS, başlatma sırasında takılan filamentden bilgileri otomatik olarak okumaz " +"ve son kapatmadan önce kaydedilen bilgileri kullanmaya devam eder." + +msgid "Update remaining capacity" +msgstr "Kalan kapasiteyi güncelle" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"AMS, filament bilgisi güncellendikten sonra Bambu filamentin kalan " +"kapasitesini tahmin edecek. Yazdırma sırasında kalan kapasite otomatik olarak " +"güncellenecektir." + +msgid "AMS filament backup" +msgstr "AMS filament yedeklemesi" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"AMS, mevcut filament bittiğinde otomatik olarak aynı özelliklere sahip başka " +"bir makaraya devam edecektir" + +msgid "Air Printing Detection" +msgstr "Hava Baskısı Algılama" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Tıkanmayı ve filament taşmasını algılar, zamandan ve filamentten tasarruf " +"etmek için yazdırmayı anında durdurur." + +msgid "File" +msgstr "Dosya" + +msgid "Calibration" +msgstr "Kalibrasyon" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Eklenti indirilemedi. Lütfen güvenlik duvarı ayarlarınızı ve vpn yazılımınızı " +"kontrol edin, kontrol edip yeniden deneyin." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Eklenti yüklenemedi. Lütfen anti-virüs yazılımı tarafından engellenip " +"engellenmediğini veya silinip silinmediğini kontrol edin." + +msgid "click here to see more info" +msgstr "daha fazla bilgi görmek için burayı tıklayın" + +msgid "Please home all axes (click " +msgstr "Lütfen tüm eksenleri hizalayın (tıklayın) " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") takım kafasının konumunu bulmak için. Bu, cihazın yazdırılabilir sınırın " +"dışına çıkmasını ve ekipmanın aşınmasına neden olmasını önler." + +msgid "Go Home" +msgstr "Anasayfaya Git" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Bir hata oluştu. Belki sistemin hafızası yeterli değildir veya programın bir " +"hatasıdır" + +msgid "Please save project and restart the program. " +msgstr "Lütfen projeyi kaydedin ve programı yeniden başlatın. " + +msgid "Processing G-Code from Previous file..." +msgstr "Önceki dosyadan G Kodu işleniyor..." + +msgid "Slicing complete" +msgstr "Dilimleme tamamlandı" + +msgid "Access violation" +msgstr "Erişim ihlali" + +msgid "Illegal instruction" +msgstr "Yasa dışı talimat" + +msgid "Divide by zero" +msgstr "Devide By Zero Hatası" + +msgid "Overflow" +msgstr "Yüksek Akış" + +msgid "Underflow" +msgstr "Düşük Akış" + +msgid "Floating reserved operand" +msgstr "Floating reserved operand" + +msgid "Stack overflow" +msgstr "Stack overflow" + +msgid "Running post-processing scripts" +msgstr "İşlem sonrası komut dosyalarını çalıştırma" + +msgid "Successfully executed post-processing script" +msgstr "İşlem sonrası komut dosyası başarıyla çalıştırıldı" + +msgid "Unknown error occured during exporting G-code." +msgstr "G kodu dışa aktarılırken bilinmeyen bir hata oluştu." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Geçici G kodunun çıkış G koduna kopyalanması başarısız oldu. Belki SD kart " +"yazma kilitlidir.\n" +"Hata mesajı: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"Geçici G kodunun çıkış G koduna kopyalanması başarısız oldu. Hedef cihazda " +"sorun olabilir, lütfen tekrar dışa aktarmayı veya farklı bir cihaz kullanmayı " +"deneyin. Bozuk çıktı G kodu %1%.tmp konumunda." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"Seçilen hedef klasöre kopyalandıktan sonra G kodunun yeniden adlandırılması " +"başarısız oldu. Geçerli yol: %1%.tmp. Lütfen dışa aktarmayı tekrar deneyin." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"Geçici G kodunun kopyalanması tamamlandı ancak %1% konumundaki orijinal kod " +"kopyalama kontrolü sırasında açılamadı. Çıkış G kodu %2%.tmp konumundadır." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"Geçici G kodunun kopyalanması tamamlandı ancak kopya kontrolü sırasında dışa " +"aktarılan kod açılamadı. Çıkış G kodu %1%.tmp konumundadır." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "G kodu dosyası %1%’e aktarıldı" + +msgid "Unknown error when export G-code." +msgstr "G kodunu dışa aktarırken bilinmeyen hata." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Gcode dosyası kaydedilemedi.\n" +"Hata mesajı: %1%.\n" +"Kaynak dosya %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Geçici G kodunun çıkış G koduna kopyalanması başarısız oldu" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"\"%1%\" hedefine yükleme planlanıyor. Bkz. Pencere -> Ana Bilgisayar Yükleme " +"Sırasını Yazdır" + +msgid "Device" +msgstr "Cihaz" + +msgid "Task Sending" +msgstr "Görev Gönderme" + +msgid "Task Sent" +msgstr "Görev Gönderildi" + +msgid "Edit multiple printers" +msgstr "Birden fazla yazıcıyı düzenleme" + +msgid "Select connected printers (0/6)" +msgstr "Bağlı yazıcıları seçin (0/6)" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "Bağlı Yazıcıları Seçin (%d/6)" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "Seçilebilecek maksimum yazıcı sayısı %d'dır" + +msgid "Offline" +msgstr "Çevrimdışı" + +msgid "No task" +msgstr "Görev yok" + +msgid "View" +msgstr "Görünüm" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "Yazıcıları Düzenle" + +msgid "Device Name" +msgstr "Cihaz Adı" + +msgid "Task Name" +msgstr "Görev Adı" + +msgid "Device Status" +msgstr "Cihaz Durumu" + +msgid "Actions" +msgstr "İşlemler" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "Lütfen buradan yönetmek istediğiniz cihazları seçin (en fazla 6 cihaz)" + +msgid "Add" +msgstr "Ekle" + +msgid "Idle" +msgstr "Boşta" + +msgid "Printing" +msgstr "Baskı" + +msgid "Upgrading" +msgstr "Yükseltiliyor" + +msgid "Incompatible" +msgstr "Uyumsuz" + +msgid "syncing" +msgstr "Senkronize ediliyor" + +msgid "Printing Finish" +msgstr "Yazdırma Bitti" + +msgid "Printing Failed" +msgstr "Yazdırma Başarısız" + +msgid "Printing Pause" +msgstr "Yazdırma Duraklatıldı" + +msgid "Prepare" +msgstr "Hazırlık" + +msgid "Slicing" +msgstr "Dilimleniyor" + +msgid "Pending" +msgstr "Askıda" + +msgid "Sending" +msgstr "Gönderiliyor" + +msgid "Sending Finish" +msgstr "Gönderme Bitti" + +msgid "Sending Cancel" +msgstr "Gönderme İptal Oldu" + +msgid "Sending Failed" +msgstr "Gönderim Başarısız" + +msgid "Print Success" +msgstr "Yazdırma Başarılı" + +msgid "Print Failed" +msgstr "Yazdırma Başarısız" + +msgid "Removed" +msgstr "Kaldırıldı" + +msgid "Resume" +msgstr "Sürdür" + +msgid "Stop" +msgstr "Durdur" + +msgid "Task Status" +msgstr "Görev durumu" + +msgid "Sent Time" +msgstr "Gönderilen Zaman" + +msgid "There are no tasks to be sent!" +msgstr "Gönderilecek görev yok!" + +msgid "No historical tasks!" +msgstr "Tarihi görevler yok!" + +msgid "Loading..." +msgstr "Yükleniyor..." + +msgid "No AMS" +msgstr "AMS Yok" + +msgid "Send to Multi-device" +msgstr "Çoklu cihaza gönder" + +msgid "Preparing print job" +msgstr "Yazdırma için hazırlanıyor" + +msgid "Abnormal print file data. Please slice again" +msgstr "Anormal yazdırma dosyası verileri. Lütfen tekrar dilimleyin" + +msgid "There is no device available to send printing." +msgstr "Baskı göndermek için kullanılabilir bir cihaz yok." + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "Aynı anda kullanımda olan yazıcı sayısı 0'a eşit olamaz." + +msgid "Use External Spool" +msgstr "Harici Makara Kullanın" + +msgid "Use AMS" +msgstr "AMS kullanın" + +msgid "Select Printers" +msgstr "Yazıcıları Seçin" + +msgid "Ams Status" +msgstr "Ams Durumu" + +msgid "Printing Options" +msgstr "Yazdırma Seçenekleri" + +msgid "Bed Leveling" +msgstr "Yatak Tesviyesi" + +msgid "Timelapse" +msgstr "Timelapse" + +msgid "Flow Dynamic Calibration" +msgstr "Akış Dinamik Kalibrasyonu" + +msgid "Send Options" +msgstr "Gönderme Seçenekleri" + +msgid "Send to" +msgstr "Gönderildi" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo heating " +"at the same time.)" +msgstr "" +"aynı anda kaç yazıcının ısıtma işleminden geçebileceği, aynı anda " +"ısıtılabilecek cihaz sayısına bağlıdır." + +msgid "Wait" +msgstr "Bekleyin" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"her parti başına dakika. (Isıtmanın tamamlanması ne kadar sürerse buna " +"bağlıdır.)" + +msgid "Send" +msgstr "Gönder" + +msgid "Name is invalid;" +msgstr "Geçersiz isim;" + +msgid "illegal characters:" +msgstr "yasadışı karakterler:" + +msgid "illegal suffix:" +msgstr "yasadışı sonek:" + +msgid "The name is not allowed to be empty." +msgstr "Ad alanı boş bırakılamaz." + +msgid "The name is not allowed to start with space character." +msgstr "Adın boşluk karakteriyle başlamasına izin verilmez." + +msgid "The name is not allowed to end with space character." +msgstr "Adın boşluk karakteriyle bitmesine izin verilmez." + +msgid "The name length exceeds the limit." +msgstr "Ad uzunluğu sınırı aşıyor." + +msgid "Origin" +msgstr "Konum" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Dikdörtgen plakanın X ve Y boyutları." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "0,0 G kodu koordinatının dikdörtgenin sol ön köşesinden uzaklığı." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "Baskı yatağının çapı. Orjinin (0,0) merkezde olduğu varsayılmaktadır." + +msgid "Rectangular" +msgstr "Dikdörtgen" + +msgid "Circular" +msgstr "Dairesel" + +msgid "Load shape from STL..." +msgstr "Şekli STL'den yükle..." + +msgid "Settings" +msgstr "Ayarlar" + +msgid "Texture" +msgstr "Doku" + +msgid "Remove" +msgstr "Kaldır" + +msgid "Not found:" +msgstr "Bulunamadı:" + +msgid "Model" +msgstr "Model" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Yatak şeklini içe aktarmak için bir STL dosyası seçin:" + +msgid "Invalid file format." +msgstr "Geçersiz dosya formatı." + +msgid "Error! Invalid model" +msgstr "Hata! Geçersiz model" + +msgid "The selected file contains no geometry." +msgstr "Seçilen dosya geometri içermiyor." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "Seçilen dosya birkaç ayrık alan içeriyor. Bu desteklenmiyor." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "Yatak dokusunu içe aktarmak için bir dosya seçin (PNG/SVG):" + +msgid "Choose an STL file to import bed model from:" +msgstr "Yatak modelini içe aktarmak için bir STL dosyası seçin:" + +msgid "Bed Shape" +msgstr "Yatak Şekli" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"Önerilen minimum sıcaklık 190 dereceden azdır veya önerilen maksimum sıcaklık " +"300 dereceden yüksektir.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"Önerilen minimum sıcaklık, önerilen maksimum sıcaklıktan yüksek olamaz.\n" + +msgid "Please check.\n" +msgstr "Lütfen kontrol edin.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"Sıcaklık önerilen aralığın dışında olduğunda nozul tıkanmış olabilir.\n" +"Lütfen yazdırmak için sıcaklığı kullanıp kullanmayacağınızdan emin olun.\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"Bu filament tipinin tavsiye edilen Nozul sıcaklığı [%d, %d] derece " +"santigrattır" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Maksimum hacimsel hız çok küçük.\n" +"0,5'e sıfırla" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature,it " +"may result in material softening and clogging.The maximum safe temperature " +"for the material is %d" +msgstr "" +"Mevcut hazne sıcaklığı malzemenin güvenli sıcaklığından yüksektir, malzemenin " +"yumuşamasına ve tıkanmasına neden olabilir Malzeme için maksimum güvenli " +"sıcaklık %d'dir" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Katman yüksekliği çok küçük.\n" +"0,2'ye sıfırla" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Çok küçük ütüleme aralığı.\n" +"0,1'e sıfırla" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"Sıfır başlangıç katman yüksekliği geçersiz.\n" +"\n" +"İlk katmanın yüksekliği 0,2'ye sıfırlanacaktır." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Bu ayar yalnızca bazı durumlarda küçük değere sahip model boyutu ayarı için " +"kullanılır.\n" +"Örneğin, model boyutunda hata küçük olduğunda ve montajı zor olduğunda.\n" +"Büyük boyutlu ayarlama için lütfen model ölçeği işlevini kullanın.\n" +"\n" +"Değer 0'a sıfırlanacaktır." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Çok büyük fil ayağı telafisi mantıksızdır.\n" +"Gerçekten fil ayağı etkisi ciddi ise lütfen diğer ayarları kontrol edin.\n" +"Örneğin yatak sıcaklığının çok yüksek olup olmadığı.\n" +"\n" +"Değer 0'a sıfırlanacaktır." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness is " +"set to All. " +msgstr "" +"Alternatif ekstra duvar, dikey kabuk kalınlığının Tümü olarak ayarlandığından " +"emin olunduğunda iyi çalışmaz. " + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable alternate " +"extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"Bu ayarlar otomatik olarak değiştirilsin mi? \n" +"Evet - Dikey kabuk kalınlığını Orta olarak değiştirin ve alternatif ekstra " +"duvarı etkinleştirin\n" +"Hayır - Alternatif ekstra duvar kullanmayın" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"Prime tower, Uyarlanabilir Katman Yüksekliği veya Bağımsız Destek Katmanı " +"Yüksekliği açıkken çalışmaz.\n" +"Hangisini saklamak istiyorsun?\n" +"EVET - Prime Tower'ı Koruyun\n" +"HAYIR - Uyarlanabilir Katman Yüksekliğini ve Bağımsız Destek Katmanı " +"Yüksekliğini Koruyun" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"Uyarlanabilir Katman Yüksekliği açıkken Prime tower çalışmıyor.\n" +"Hangisini saklamak istiyorsun?\n" +"EVET - Prime Tower'ı Koruyun\n" +"HAYIR - Uyarlanabilir Katman Yüksekliğini Koruyun" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"Prime tower, Bağımsız Destek Katmanı Yüksekliği açıkken çalışmaz.\n" +"Hangisini saklamak istiyorsun?\n" +"EVET - Prime Tower'ı Koruyun\n" +"HAYIR - Bağımsız Destek Katmanı Yüksekliğini Koruyun" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Nesne ile yazdırma sırasında ekstruder etekle çarpışabilir.\n" +"Bu durumu önlemek için etek katmanını 1'e sıfırlayın." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"Dikiş eğimi başlangıç ​​yüksekliğinin katman yüksekliğinden daha küçük olması " +"gerekir.\n" +"0 a sıfırla." + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Spiral mod yalnızca duvar döngüleri 1 olduğunda, destek devre dışı " +"bırakıldığında, üst kabuk katmanları 0 olduğunda, seyrek dolgu yoğunluğu 0 " +"olduğunda ve timelapse türü geleneksel olduğunda çalışır." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr "" +" Ancak I3 yapısına sahip yazıcılar timelapse videolar oluşturmayacaktır." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Bu ayarlar otomatik olarak değiştirilsin mi?\n" +"Evet - Bu ayarları değiştirin ve spiral modunu otomatik olarak etkinleştirin\n" +"Hayır - Bu sefer spiral modunu kullanmaktan vazgeçin" + +msgid "Auto bed leveling" +msgstr "Otomatik yatak tesviyesi" + +msgid "Heatbed preheating" +msgstr "Isıtma yatağı ön ısıtması" + +msgid "Sweeping XY mech mode" +msgstr "Süpürme XY mekanik modu" + +msgid "Changing filament" +msgstr "Filament Değişimi" + +msgid "M400 pause" +msgstr "M400 duraklatma" + +msgid "Paused due to filament runout" +msgstr "Filament bittiği için duraklatıldı" + +msgid "Heating hotend" +msgstr "Hotend ısıtılıyor" + +msgid "Calibrating extrusion" +msgstr "Ekstrüzyon kalibre ediliyor" + +msgid "Scanning bed surface" +msgstr "Yatak yüzeyi taranıyor" + +msgid "Inspecting first layer" +msgstr "İlk katmanın incelenmesi" + +msgid "Identifying build plate type" +msgstr "Yapı plakası türünü belirleme" + +msgid "Calibrating Micro Lidar" +msgstr "Mikro Lidar'ın Kalibre Ediliyor" + +msgid "Homing toolhead" +msgstr "Baskı Kafası Home Pozisyonuna Getiriliyor" + +msgid "Cleaning nozzle tip" +msgstr "Nozul temizleme ipucu" + +msgid "Checking extruder temperature" +msgstr "Ekstruder sıcaklığının kontrol edilmesi" + +msgid "Printing was paused by the user" +msgstr "Yazdırma kullanıcı tarafından duraklatıldı" + +msgid "Pause of front cover falling" +msgstr "Ön kapağın düşmesinin duraklaması" + +msgid "Calibrating the micro lida" +msgstr "Mikro Lida'nın kalibre edilmesi" + +msgid "Calibrating extrusion flow" +msgstr "Ekstrüzyon akışını kalibre et" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Nozul sıcaklığı arızası nedeniyle duraklatıldı" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Isı yatağı sıcaklık arızası nedeniyle duraklatıldı" + +msgid "Filament unloading" +msgstr "Filament boşaltma" + +msgid "Skip step pause" +msgstr "Adım duraklamasını atla" + +msgid "Filament loading" +msgstr "Filament yükleme" + +msgid "Motor noise calibration" +msgstr "Motor ses kalibrasyonu" + +msgid "Paused due to AMS lost" +msgstr "AMS kaybı nedeniyle durduruldu" + +msgid "Paused due to low speed of the heat break fan" +msgstr "Isı kesme fanının düşük hızı nedeniyle duraklatıldı" + +msgid "Paused due to chamber temperature control error" +msgstr "Oda sıcaklığı kontrol hatası nedeniyle duraklatıldı" + +msgid "Cooling chamber" +msgstr "Soğutma haznesi" + +msgid "Paused by the Gcode inserted by user" +msgstr "Kullanıcı tarafından eklenen Gcode tarafından duraklatıldı" + +msgid "Motor noise showoff" +msgstr "Motor gürültü gösterimi" + +msgid "Nozzle filament covered detected pause" +msgstr "Nozul filament ile kaplı algılandı duraklatılıyor" + +msgid "Cutter error pause" +msgstr "Kesici hatası duraklatılıyor" + +msgid "First layer error pause" +msgstr "İlk katman hatası duraklatılıyor" + +msgid "Nozzle clog pause" +msgstr "Nozul tıkanıklığı duraklatılıyor" + +msgid "Unknown" +msgstr "Bilinmeyen" + +msgid "Fatal" +msgstr "Kritik" + +msgid "Serious" +msgstr "Ciddi" + +msgid "Common" +msgstr "Yaygın" + +msgid "Update successful." +msgstr "Güncelleme başarılı." + +msgid "Downloading failed." +msgstr "İndirme başarısız oldu." + +msgid "Verification failed." +msgstr "Doğrulama başarısız oldu." + +msgid "Update failed." +msgstr "Güncelleme başarısız." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds 45℃." +"In order to avoid extruder clogging,low temperature filament(PLA/PETG/TPU) is " +"not allowed to be loaded." +msgstr "" +"Mevcut hazne sıcaklığı veya hedef hazne sıcaklığı 45 ° C'yi aşıyor Ekstruder " +"tıkanmasını önlemek için düşük sıcaklıkta filament (PLA / PETG / TPU) " +"yüklenmesine izin verilmez." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Ekstrudere düşük sıcaklıkta filament (PLA / PETG / TPU) yüklendi. Ekstruder " +"tıkanmasını önlemek için hazne sıcaklığının 45 ° C'nin üzerine ayarlanmasına " +"izin verilmez." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Hazne sıcaklığını 40°C'nin altına ayarladığınızda, hazne sıcaklık kontrolü " +"etkinleştirilmeyecektir. Ve hedef hazne sıcaklığı otomatik olarak 0°C'ye " +"ayarlanacaktır." + +msgid "Failed to start printing job" +msgstr "Yazdırma işi başlatılamadı" + +msgid "This calibration does not support the currently selected nozzle diameter" +msgstr "Bu kalibrasyon, şu anda seçilen nozzle çapını desteklememektedir" + +msgid "Current flowrate cali param is invalid" +msgstr "Geçerli akış hızı cali parametresi geçersiz" + +msgid "Selected diameter and machine diameter do not match" +msgstr "Seçilen çap ile makine çapı eşleşmiyor" + +msgid "Failed to generate cali gcode" +msgstr "Cali G-code oluşturma başarısız oldu" + +msgid "Calibration error" +msgstr "Kalibrasyon hatası" + +msgid "TPU is not supported by AMS." +msgstr "TPU, AMS tarafından desteklenmez." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF, AMS tarafından desteklenNozulktedir." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Nemli PVA esnekleşecek ve AMS'nin içine sıkışacaktır, lütfen kullanmadan önce " +"kurutmaya dikkat edin." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in AMS, " +"please use with caution." +msgstr "" +"CF/GF filamentleri sert ve kırılgandır. AMS'de kırılması veya sıkışması " +"kolaydır, lütfen dikkatli kullanın." + +msgid "default" +msgstr "varsayılan" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Özel G Kodunu Düzenle (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "Yerleşik yer tutucular (G koduna eklemek için öğeye çift tıklayın)" + +msgid "Search gcode placeholders" +msgstr "Gcode yer tutucularını arayın" + +msgid "Add selected placeholder to G-code" +msgstr "Seçili yer tutucuyu G koduna ekle" + +msgid "Select placeholder" +msgstr "Yer tutucuyu seçin" + +msgid "[Global] Slicing State" +msgstr "[Global] Dilimleme Durumu" + +msgid "Read Only" +msgstr "Sadece okunabilir" + +msgid "Read Write" +msgstr "Okuma yazma" + +msgid "Slicing State" +msgstr "Dilimleme Durumu" + +msgid "Print Statistics" +msgstr "Yazdırma İstatistikleri" + +msgid "Objects Info" +msgstr "Nesne Bilgisi" + +msgid "Dimensions" +msgstr "Boyutlar" + +msgid "Temperatures" +msgstr "Sıcaklıklar" + +msgid "Timestamps" +msgstr "Zaman damgaları" + +#, boost-format +msgid "Specific for %1%" +msgstr "%1%'e özel" + +msgid "Presets" +msgstr "Ön ayarlar" + +msgid "Print settings" +msgstr "Yazdırma ayarları" + +msgid "Filament settings" +msgstr "Filament Ayarları" + +msgid "SLA Materials settings" +msgstr "SLA Malzemeleri ayarları" + +msgid "Printer settings" +msgstr "Yazıcı Ayarları" + +msgid "parameter name" +msgstr "parametre adı" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s yüzde olamaz" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "Değer %s aralık dışında, devam edilsin mi?" + +msgid "Parameter validation" +msgstr "Parametre doğrulama" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "Değer %s aralık dışında. Geçerli aralık %d ile %d arasındadır." + +msgid "Value is out of range." +msgstr "Değer aralık dışında." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"%s%% mi yoksa %s %s mi?\n" +"%s%% için EVET,\n" +"%s %s için HAYIR." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "Geçersiz giriş biçimi. Beklenen boyut vektörü biçimi: \"%1%\"" + +msgid "Input value is out of range" +msgstr "Girilen değer limit dışı" + +msgid "Some extension in the input is invalid" +msgstr "Girilen bazı uzantılar geçersiz" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Geçersiz format. Beklenen vektör formatı: \"%1%\"" + +msgid "Layer Height" +msgstr "Katman Yüksekliği" + +msgid "Line Width" +msgstr "Katman Genişliği" + +msgid "Fan Speed" +msgstr "Fan hızı" + +msgid "Temperature" +msgstr "Sıcaklık" + +msgid "Flow" +msgstr "Akış" + +msgid "Tool" +msgstr "Araç" + +msgid "Layer Time" +msgstr "Katman Süresi" + +msgid "Layer Time (log)" +msgstr "Katman Süresi (günlük)" + +msgid "Height: " +msgstr "Yükseklik: " + +msgid "Width: " +msgstr "Genişlik: " + +msgid "Speed: " +msgstr "Hız: " + +msgid "Flow: " +msgstr "Akış: " + +msgid "Layer Time: " +msgstr "Katman Süresi: " + +msgid "Fan: " +msgstr "Fan: " + +msgid "Temperature: " +msgstr "Sıcaklık: " + +msgid "Loading G-codes" +msgstr "G kodları yükleniyor" + +msgid "Generating geometry vertex data" +msgstr "Geometri köşe verileri oluşturma" + +msgid "Generating geometry index data" +msgstr "Geometri indeksi verileri oluşturuluyor" + +msgid "Statistics of All Plates" +msgstr "Tüm Plakaların İstatistikleri" + +msgid "Display" +msgstr "Ekran" + +msgid "Flushed" +msgstr "Temizlenmiş" + +msgid "Tower" +msgstr "Kule" + +msgid "Total" +msgstr "Toplam" + +msgid "Total Estimation" +msgstr "Toplam Tahmini" + +msgid "Total time" +msgstr "Toplam süre" + +msgid "Total cost" +msgstr "Toplam tutar" + +msgid "up to" +msgstr "kadar" + +msgid "above" +msgstr "üstünde" + +msgid "from" +msgstr "itibaren" + +msgid "Color Scheme" +msgstr "Renk Şeması" + +msgid "Time" +msgstr "Zaman" + +msgid "Percent" +msgstr "Yüzde" + +msgid "Used filament" +msgstr "Kullanılan" + +msgid "Layer Height (mm)" +msgstr "Katman Yüksekliği (mm)" + +msgid "Line Width (mm)" +msgstr "Çizgi Genişliği (mm)" + +msgid "Speed (mm/s)" +msgstr "Hız (mm/s)" + +msgid "Fan Speed (%)" +msgstr "Fan hızı (%)" + +msgid "Temperature (°C)" +msgstr "Sıcaklık (°C)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Hacimsel akış hızı (mm³/s)" + +msgid "Travel" +msgstr "Seyahat" + +msgid "Seams" +msgstr "Dikişler" + +msgid "Retract" +msgstr "Geri çekme" + +msgid "Unretract" +msgstr "İleri İtme" + +msgid "Filament Changes" +msgstr "Filament Değişiklikleri" + +msgid "Wipe" +msgstr "Temizleme" + +msgid "Options" +msgstr "Seçenekler" + +msgid "travel" +msgstr "seyahat" + +msgid "Extruder" +msgstr "Ekstruder" + +msgid "Filament change times" +msgstr "Filament değişim süreleri" + +msgid "Cost" +msgstr "Maliyet" + +msgid "Color change" +msgstr "Renk değişimi" + +msgid "Print" +msgstr "Yazdır" + +msgid "Printer" +msgstr "Yazıcı" + +msgid "Custom g-code" +msgstr "Özel g-code" + +msgid "ToolChange" +msgstr "Araç Değiştirme" + +msgid "Time Estimation" +msgstr "Zaman Tahmini" + +msgid "Normal mode" +msgstr "Normal mod" + +msgid "Total Filament" +msgstr "Toplam filament" + +msgid "Model Filament" +msgstr "Model Filament" + +msgid "Prepare time" +msgstr "Hazırlık süresi" + +msgid "Model printing time" +msgstr "Model yazdırma süresi" + +msgid "Switch to silent mode" +msgstr "Sessiz moda geç" + +msgid "Switch to normal mode" +msgstr "Normal moda geç" + +msgid "Variable layer height" +msgstr "Değişken katman yüksekliği" + +msgid "Adaptive" +msgstr "Uyarlanabilir" + +msgid "Quality / Speed" +msgstr "Kalite / Hız" + +msgid "Smooth" +msgstr "Pürüzsüz" + +msgid "Radius" +msgstr "Yarıçap" + +msgid "Keep min" +msgstr "Min. tut" + +msgid "Left mouse button:" +msgstr "Sol fare tuşu:" + +msgid "Add detail" +msgstr "Ayrıntı ekle" + +msgid "Right mouse button:" +msgstr "Sağ fare tuşu:" + +msgid "Remove detail" +msgstr "Ayrıntıyı kaldır" + +msgid "Shift + Left mouse button:" +msgstr "Shift + Sol fare düğmesi:" + +msgid "Reset to base" +msgstr "Tabana sıfırla" + +msgid "Shift + Right mouse button:" +msgstr "Shift + Sağ fare düğmesi:" + +msgid "Smoothing" +msgstr "Pürüzsüzleştirme" + +msgid "Mouse wheel:" +msgstr "Fare tekerleği:" + +msgid "Increase/decrease edit area" +msgstr "Düzenleme alanını artır/azalt" + +msgid "Sequence" +msgstr "Sekans" + +msgid "Mirror Object" +msgstr "Nesneyi Aynala" + +msgid "Tool Move" +msgstr "Araç Taşıma" + +msgid "Tool Rotate" +msgstr "Araç Döndürme" + +msgid "Move Object" +msgstr "Nesneyi Taşı" + +msgid "Auto Orientation options" +msgstr "Otomatik Yönlendirme seçenekleri" + +msgid "Enable rotation" +msgstr "Döndürmeyi etkinleştir" + +msgid "Optimize support interface area" +msgstr "Destek arayüzü alanını optimize edin" + +msgid "Orient" +msgstr "Yön" + +msgid "Arrange options" +msgstr "Hizalama seçenekleri" + +msgid "Spacing" +msgstr "Boşluk" + +msgid "0 means auto spacing." +msgstr "0 otomatik aralık anlamına gelir." + +msgid "Auto rotate for arrangement" +msgstr "Düzenleme için otomatik döndür" + +msgid "Allow multiple materials on same plate" +msgstr "Aynı plaka üzerinde birden fazla malzemeye izin ver" + +msgid "Avoid extrusion calibration region" +msgstr "Ekstrüzyon kalibrasyon bölgesinden kaçın" + +msgid "Align to Y axis" +msgstr "Y eksenine hizala" + +msgid "Add plate" +msgstr "Plaka ekle" + +msgid "Auto orient" +msgstr "Otomatik yönlendir" + +msgid "Arrange all objects" +msgstr "Tüm nesneleri hizala" + +msgid "Arrange objects on selected plates" +msgstr "Seçilen plakalardaki nesneleri hizala" + +msgid "Split to objects" +msgstr "Nesnelere böl" + +msgid "Split to parts" +msgstr "Parçalara bölme" + +msgid "Assembly View" +msgstr "Montaj görünümü" + +msgid "Select Plate" +msgstr "Plaka Seç" + +msgid "Assembly Return" +msgstr "Montaj İptali" + +msgid "return" +msgstr "geri dön" + +msgid "Paint Toolbar" +msgstr "Boyama Araç Çubuğu" + +msgid "Explosion Ratio" +msgstr "Patlama Oranı" + +msgid "Section View" +msgstr "Bölüm Görünümü" + +msgid "Assemble Control" +msgstr "Montaj Kontrolü" + +msgid "Total Volume:" +msgstr "Toplam Hacim:" + +msgid "Assembly Info" +msgstr "Montaj Bilgisi" + +msgid "Volume:" +msgstr "Hacim:" + +msgid "Size:" +msgstr "Boyut:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"%d katmanında gcode yollarında çakışmalar bulundu, z = %.2lf mm. Lütfen " +"çakışan nesneleri daha uzağa ayırın (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "Plakanın sınırına bir nesne serilir." + +msgid "A G-code path goes beyond the max print height." +msgstr "Bir G kodu yolu maksimum baskı yüksekliğinin ötesine geçer." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Bir G kodu yolu plakanın sınırlarının ötesine geçer." + +msgid "Only the object being edit is visible." +msgstr "Yalnızca düzenlenen nesne görünür." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Plaka sınırının üzerine bir nesne döşenir veya yükseklik sınırını aşar.\n" +"Lütfen sorunu tamamen plakanın üzerine veya dışına hareket ettirerek ve " +"yüksekliğin yapım hacmi dahilinde olduğunu doğrulayarak çözün." + +msgid "Calibration step selection" +msgstr "Kalibrasyon adımı seçimi" + +msgid "Micro lidar calibration" +msgstr "Mikro lidar kalibrasyonu" + +msgid "Bed leveling" +msgstr "Yatak Seviyeleme" + +msgid "Vibration compensation" +msgstr "Titreşim dengeleme" + +msgid "Motor noise cancellation" +msgstr "Motor gürültüsü engelleme" + +msgid "Calibration program" +msgstr "Kalibrasyon programı" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"Kalibrasyon programı, sapmayı en aza indirmek için cihazınızın durumunu " +"otomatik olarak algılar.\n" +"Cihazın en iyi şekilde çalışmasını sağlar." + +msgid "Calibration Flow" +msgstr "Kalibrasyon Akışı" + +msgid "Start Calibration" +msgstr "Kalibrasyonu Başlat" + +msgid "Completed" +msgstr "Tamamlandı" + +msgid "Calibrating" +msgstr "Kalibre ediliyor" + +msgid "No step selected" +msgstr "Adım seçilmedi" + +msgid "Auto-record Monitoring" +msgstr "Otomatik Kayıt İzleme" + +msgid "Go Live" +msgstr "Canlı Yayına Geçin" + +msgid "Liveview Retry" +msgstr "Canlı Görüntüleme Yeniden Deneme" + +msgid "Resolution" +msgstr "Çözünürlük" + +msgid "Enable" +msgstr "Aktif et" + +msgid "Hostname or IP" +msgstr "Ana bilgisayar adı veya IP" + +msgid "Custom camera source" +msgstr "Özel kamera kaynağı" + +msgid "Show \"Live Video\" guide page." +msgstr "\"Canlı Video\" kılavuz sayfasını gösterin." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "ConnectPrinter(LAN)" + +msgid "Please input the printer access code:" +msgstr "Lütfen yazıcı erişim kodunu girin:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Bunu \"Ayarlar > Ağ > Bağlantı kodu\" bölümünde bulabilirsiniz.\n" +"şekilde gösterildiği gibi yazıcıda:" + +msgid "Invalid input." +msgstr "Geçersiz Giriş." + +msgid "New Window" +msgstr "Yeni Pencere" + +msgid "Open a new window" +msgstr "Yeni pencere aç" + +msgid "Application is closing" +msgstr "Uygulama kapanıyor" + +msgid "Closing Application while some presets are modified." +msgstr "Bazı ön ayarlar değiştirilirken Uygulama kapatılıyor." + +msgid "Logging" +msgstr "Günlük kaydı" + +msgid "Preview" +msgstr "Ön İzleme" + +msgid "Multi-device" +msgstr "Çoklu cihaz" + +msgid "Project" +msgstr "Proje" + +msgid "Yes" +msgstr "Evet" + +msgid "No" +msgstr "Hayır" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "" +"yeni bir model oluşturulmadan önce kapatılacaktır. Devam etmek istiyor musun?" + +msgid "Slice plate" +msgstr "Plakayı dilimle" + +msgid "Print plate" +msgstr "Plakayı Yazdır" + +msgid "Slice all" +msgstr "Hepsini dilimle" + +msgid "Export G-code file" +msgstr "G-kod dosyasını dışa aktar" + +msgid "Export plate sliced file" +msgstr "Dilimlenmiş plaka dosyasını dışa aktar" + +msgid "Export all sliced file" +msgstr "Tüm dilimlenmiş dosyayı dışa aktar" + +msgid "Print all" +msgstr "Tümünü yazdır" + +msgid "Send all" +msgstr "Hepsini gönder" + +msgid "Keyboard Shortcuts" +msgstr "Klavye kısayolları" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Klavye kısayollarının listesini göster" + +msgid "Setup Wizard" +msgstr "Kurulum sihirbazı" + +msgid "Show Configuration Folder" +msgstr "Yapılandırma Klasörünü Göster" + +msgid "Show Tip of the Day" +msgstr "Günün İpucunu Göster" + +msgid "Check for Update" +msgstr "Güncellemeleri kontrol et" + +msgid "Open Network Test" +msgstr "Ağ Testini Aç" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&Hakkında %s" + +msgid "Upload Models" +msgstr "Modelleri Yükle" + +msgid "Download Models" +msgstr "Modelleri İndir" + +msgid "Default View" +msgstr "Varsayılan görünüm" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Üst" + +msgid "Top View" +msgstr "Üstten görünüm" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Alt" + +msgid "Bottom View" +msgstr "Alttan görünüm" + +msgid "Front" +msgstr "Ön" + +msgid "Front View" +msgstr "Önden görünüm" + +msgid "Rear" +msgstr "Arka" + +msgid "Rear View" +msgstr "Arkadan Görünüm" + +msgid "Left" +msgstr "Sol" + +msgid "Left View" +msgstr "Soldan Görünüm" + +msgid "Right" +msgstr "Sağ" + +msgid "Right View" +msgstr "Sağdan Görünüm" + +msgid "Start a new window" +msgstr "Yeni pencere" + +msgid "New Project" +msgstr "Yeni proje" + +msgid "Start a new project" +msgstr "Yeni bir proje başlat" + +msgid "Open a project file" +msgstr "Proje dosyasını aç" + +msgid "Recent projects" +msgstr "Son Projeler" + +msgid "Save Project" +msgstr "Projeyi Kaydet" + +msgid "Save current project to file" +msgstr "Mevcut projeyi dosyaya kaydet" + +msgid "Save Project as" +msgstr "Projeyi farklı kaydet" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Mevcut projeyi farklı kaydet" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "3MF/STL/STEP/SVG/OBJ/AMF'yi içe aktar" + +msgid "Load a model" +msgstr "Model yükle" + +msgid "Import Zip Archive" +msgstr "Zip Arşivini İçe Aktar" + +msgid "Load models contained within a zip archive" +msgstr "Zip arşivindeki modelleri yükle" + +msgid "Import Configs" +msgstr "Yapılandırmaları İçe Aktar" + +msgid "Load configs" +msgstr "Yapılandırmaları yükle" + +msgid "Import" +msgstr "İçe aktar" + +msgid "Export all objects as one STL" +msgstr "Tüm nesneleri STL olarak dışa aktarın" + +msgid "Export all objects as STLs" +msgstr "Tüm nesneleri STLs olarak dışa aktarın" + +msgid "Export Generic 3MF" +msgstr "Genel 3MF olarak dışa aktar" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "3mf dosyasını bazı 3mf uzantılarını kullanmadan dışa aktarın" + +msgid "Export current sliced file" +msgstr "Geçerli dilimlenmiş dosyayı dışa aktar" + +msgid "Export all plate sliced file" +msgstr "Dilimlenmiş tüm plaka dosyalarını dışa aktar" + +msgid "Export G-code" +msgstr "G-kodunu dışa aktar" + +msgid "Export current plate as G-code" +msgstr "Geçerli plakayı G kodu olarak dışa aktar" + +msgid "Export Preset Bundle" +msgstr "Ön Ayar Paketini Dışa Aktar" + +msgid "Export current configuration to files" +msgstr "Geçerli yapılandırmayı dosyalara aktar" + +msgid "Export" +msgstr "Dışa Aktar" + +msgid "Quit" +msgstr "Çıkış" + +msgid "Undo" +msgstr "Geri al" + +msgid "Redo" +msgstr "İleri Al" + +msgid "Cut selection to clipboard" +msgstr "Seçimi panoya kes" + +msgid "Copy" +msgstr "Kopyala" + +msgid "Copy selection to clipboard" +msgstr "Seçimi panoya kopyala" + +msgid "Paste" +msgstr "Yapıştır" + +msgid "Paste clipboard" +msgstr "Panoyu yapıştır" + +msgid "Delete selected" +msgstr "Seçileni sil" + +msgid "Deletes the current selection" +msgstr "Geçerli seçimi sil" + +msgid "Delete all" +msgstr "Hepsini sil" + +msgid "Deletes all objects" +msgstr "Tüm nesneleri sil" + +msgid "Clone selected" +msgstr "Seçili olanı klonla" + +msgid "Clone copies of selections" +msgstr "Seçimlerin kopyalarını kopyala" + +msgid "Select all" +msgstr "Hepsini seç" + +msgid "Selects all objects" +msgstr "Tüm nesneleri seç" + +msgid "Deselect all" +msgstr "Hiçbirini seçme" + +msgid "Deselects all objects" +msgstr "Tüm nesnelerin seçimini kaldırır" + +msgid "Use Perspective View" +msgstr "Perspektif Görünüm" + +msgid "Use Orthogonal View" +msgstr "Ortogonal Görünüm" + +msgid "Show &G-code Window" +msgstr "&G-code Penceresini Göster" + +msgid "Show g-code window in Previce scene" +msgstr "Previce sahnesinde G-kodu penceresini göster" + +msgid "Show 3D Navigator" +msgstr "3D Gezgini Göster" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "Hazırlama ve Önizleme sahnesinde 3D gezgini göster" + +msgid "Reset Window Layout" +msgstr "Pencere Düzenini Sıfırla" + +msgid "Reset to default window layout" +msgstr "Varsayılan pencere düzenine sıfırla" + +msgid "Show &Labels" +msgstr "Etiketleri Göster" + +msgid "Show object labels in 3D scene" +msgstr "3B sahnede nesne etiketlerini göster" + +msgid "Show &Overhang" +msgstr "Çıkıntıyı Göster" + +msgid "Show object overhang highlight in 3D scene" +msgstr "3B sahnede nesne çıkıntısı vurgusunu göster" + +msgid "Preferences" +msgstr "Tercihler" + +msgid "Help" +msgstr "Yardım" + +msgid "Temperature Calibration" +msgstr "Sıcaklık Kalibrasyonu" + +msgid "Pass 1" +msgstr "Geçiş 1" + +msgid "Flow rate test - Pass 1" +msgstr "Akış hızı testi - Başarılı 1" + +msgid "Pass 2" +msgstr "Geçiş 2" + +msgid "Flow rate test - Pass 2" +msgstr "Akış hızı testi - Geçiş 2" + +msgid "Flow rate" +msgstr "Akış hızı" + +msgid "Pressure advance" +msgstr "Basınç avansı" + +msgid "Retraction test" +msgstr "Geri çekme testi" + +msgid "Orca Tolerance Test" +msgstr "Orca tolerans testi" + +msgid "Max flowrate" +msgstr "Maksimum akış hızı" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Daha fazla..." + +msgid "Tutorial" +msgstr "Öğretici" + +msgid "Calibration help" +msgstr "Kalibrasyon yardımı" + +msgid "More calibrations" +msgstr "Daha fazla kalibrasyon" + +msgid "&Open G-code" +msgstr "&G kodunu aç" + +msgid "Open a G-code file" +msgstr "G kodu dosyası aç" + +msgid "Re&load from Disk" +msgstr "Diskten yeniden yükle" + +msgid "Reload the plater from disk" +msgstr "Plakalayıcıyı diskten yeniden yükle" + +msgid "Export &Toolpaths as OBJ" +msgstr "&Takımyollarını OBJ olarak dışa aktar" + +msgid "Export toolpaths as OBJ" +msgstr "Takımyollarını OBJ olarak dışa aktar" + +msgid "Open &Slicer" +msgstr "&Stüdyo'yu aç" + +msgid "Open Slicer" +msgstr "Stüdyoyu Aç" + +msgid "&Quit" +msgstr "&Çıkış" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "%s'den çık" + +msgid "&File" +msgstr "&Dosya" + +msgid "&View" +msgstr "&Görünüm" + +msgid "&Help" +msgstr "&Yardım" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "Aynı adda bir dosya var: %s, üzerine yazmak istiyor musunuz." + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "Aynı adda bir yapılandırma mevcut: %s, üzerine yazmak istiyor musunuz." + +msgid "Overwrite file" +msgstr "Dosyanın üzerine yaz" + +msgid "Yes to All" +msgstr "Tümüne evet" + +msgid "No to All" +msgstr "Tümüne hayır" + +msgid "Choose a directory" +msgstr "Dizin seç" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +"Dışa aktarılan %d yapılandırma var. (Yalnızca sistem dışı yapılandırmalar)" +msgstr[1] "" +"Dışa aktarılan %d yapılandırma var. (Yalnızca sistem dışı yapılandırmalar)" + +msgid "Export result" +msgstr "Sonucu dışa aktar" + +msgid "Select profile to load:" +msgstr "Yüklenecek profili seç:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +"İçe aktarılan %d yapılandırma var. (Yalnızca sistem dışı ve uyumlu " +"yapılandırmalar)" +msgstr[1] "" +"İçe aktarılan %d yapılandırma var. (Yalnızca sistem dışı ve uyumlu " +"yapılandırmalar)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing the " +"configs." +msgstr "" +"\n" +"İpucu: Yapılandırmaları içe aktarmadan önce ilgili yazıcıyı eklediğinizden " +"emin olun." + +msgid "Import result" +msgstr "Sonucu içe aktar" + +msgid "File is missing" +msgstr "Dosya eksik" + +msgid "The project is no longer available." +msgstr "Proje artık mevcut değil." + +msgid "Filament Settings" +msgstr "Filament Ayarları" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Kişisel verilerinizi Bambu Cloud'dan senkronize etmek ister misiniz?\n" +"Aşağıdaki bilgileri içerir:\n" +"1. Süreç ön ayarları\n" +"2. Filament ön ayarları\n" +"3. Yazıcı ön ayarları" + +msgid "Synchronization" +msgstr "Senkronizasyon" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" +"Cihaz daha fazla konuşmayı yönetemiyor. Lütfen daha sonra tekrar deneyin." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "Oynatıcı arızalı. Lütfen sistem oynatıcısını yeniden yükleyin." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"Oynatıcı yüklü değil, lütfen yeniden denemek için “oynat” düğmesine tıklayın." + +msgid "Please confirm if the printer is connected." +msgstr "Lütfen yazıcının bağlı olup olmadığını onaylayın." + +msgid "" +"The printer is currently busy downloading. Please try again after it finishes." +msgstr "" +"Yazıcı şu anda indirmeyle meşgul. Lütfen bittikten sonra tekrar deneyin." + +msgid "Printer camera is malfunctioning." +msgstr "Yazıcı kamerası arızalı." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Sorun oluştu. Lütfen yazıcının ürün yazılımını güncelleyin ve tekrar deneyin." + +msgid "LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"Yalnızca LAN Canlı İzleme kapalı. Lütfen yazıcı ekranındaki canlı " +"görüntülemeyi açın." + +msgid "Please enter the IP of printer to connect." +msgstr "Lütfen bağlanmak için yazıcının IP’sini girin." + +msgid "Initializing..." +msgstr "Başlatılıyor..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "Bağlantı Başarısız. Lütfen ağı kontrol edip tekrar deneyin" + +msgid "" +"Please check the network and try again, You can restart or update the printer " +"if the issue persists." +msgstr "" +"Lütfen ağı kontrol edip tekrar deneyin. Sorun devam ederse yazıcıyı yeniden " +"başlatabilir veya güncelleyebilirsiniz." + +msgid "The printer has been logged out and cannot connect." +msgstr "Yazıcıda oturum kapatıldı ve bağlanamıyor." + +msgid "Stopped." +msgstr "Durdu." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "LAN Bağlantısı Başarısız Oldu (Canlı izleme başlatılamadı)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Bu görev için Sanal Kamera Araçları gereklidir!\n" +"Bunları yüklemek istiyor musunuz?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Sanal Kamera Araçlarını İndirme" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Başka bir sanal kamera çalışıyor.\n" +"Snapmaker Orca yalnızca tek bir sanal kamerayı destekler.\n" +"Bu sanal kamerayı durdurmak istiyor musunuz?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Sanal kameranın başlatılması başarısız oldu (%s)!" + +msgid "Network unreachable" +msgstr "Ağa ulaşılamıyor" + +msgid "Information" +msgstr "Bilgi" + +msgid "Playing..." +msgstr "Oynatılıyor..." + +msgid "Year" +msgstr "Yıl" + +msgid "Month" +msgstr "Ay" + +msgid "All Files" +msgstr "Tüm dosyalar" + +msgid "Group files by year, recent first." +msgstr "Dosyaları yıllara göre gruplandırın, en yenisi önce olsun." + +msgid "Group files by month, recent first." +msgstr "Dosyaları aya göre gruplandırın, en yenisi önce olsun." + +msgid "Show all files, recent first." +msgstr "Tüm dosyaları göster, en yenisi önce." + +msgid "Switch to timelapse files." +msgstr "Timelapse dosyalarına geç." + +msgid "Video" +msgstr "Video" + +msgid "Switch to video files." +msgstr "Video dosyalarına geç." + +msgid "Switch to 3mf model files." +msgstr "3mf model dosyalarına geçin." + +msgid "Delete selected files from printer." +msgstr "Seçilen dosyaları yazıcıdan silin." + +msgid "Download" +msgstr "İndir" + +msgid "Download selected files from printer." +msgstr "Seçilen dosyaları yazıcıdan indirin." + +msgid "Select" +msgstr "Seç" + +msgid "Batch manage files." +msgstr "Dosyaları toplu olarak yönet." + +msgid "Refresh" +msgstr "Yenile" + +msgid "Reload file list from printer." +msgstr "Dosya listesini yazıcıdan yeniden yükleyin." + +msgid "No printers." +msgstr "Yazıcı yok." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Bağlantı başarısız oldu [%d]!" + +msgid "Loading file list..." +msgstr "Dosya listesi yükleniyor..." + +msgid "No files" +msgstr "Dosya yok" + +msgid "Load failed" +msgstr "Yükleme başarısız" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Başlatma başarısız oldu (Cihaz bağlantısı hazır değil)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"SD karttaki dosyaya göz atmak mevcut donanım yazılımında desteklenmiyor. " +"Lütfen yazıcının ürün yazılımını güncelleyin." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" +"Başlatma başarısız oldu (Depolama alanı kullanılamıyor, SD kartı takın.)!" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "LAN Bağlantısı Başarısız (SD kart görüntülenemedi)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "SD karttaki dosyaya göz atmak Yalnızca LAN Modunda desteklenmez." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Başlatma başarısız oldu (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +"%u dosyasını yazıcıdan sileceksiniz. Devam edeceğinizden emin misiniz?" +msgstr[1] "%u dosyayı yazıcıdan sileceksiniz. Devam edeceğinizden emin misiniz?" + +msgid "Delete files" +msgstr "Dosyaları sil" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "'%s' dosyasını yazıcıdan silmek istiyor musunuz?" + +msgid "Delete file" +msgstr "Dosyayı sil" + +msgid "Fetching model infomations ..." +msgstr "Model bilgileri alınıyor..." + +msgid "Failed to fetch model information from printer." +msgstr "Model bilgileri yazıcıdan alınamadı." + +msgid "Failed to parse model information." +msgstr "Model bilgileri ayrıştırılamadı." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +".gcode.3mf dosyası hiçbir G kodu verisi içermiyor. Lütfen dosyayı Bambu " +"Studio ile dilimleyin ve yeni bir .gcode.3mf dosyasını dışa aktarın." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "'%s' dosyası kayboldu! Lütfen tekrar indirin." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"Dosyalar: %s\n" +"Başlık: %s\n" + +msgid "Download waiting..." +msgstr "İndirme bekleniyor..." + +msgid "Play" +msgstr "Oynat" + +msgid "Open Folder" +msgstr "Klasörü Aç" + +msgid "Download finished" +msgstr "İndirme tamamlandı" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "%d%% indiriliyor..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Yazıcıyı yeniden bağladığınızda işlem hemen tamamlanamıyor, lütfen daha sonra " +"tekrar deneyin." + +msgid "File does not exist." +msgstr "Dosya bulunmuyor." + +msgid "File checksum error. Please retry." +msgstr "Dosya kontrol hatası. Lütfen tekrar deneyin." + +msgid "Not supported on the current printer version." +msgstr "Geçerli yazıcı sürümünde desteklenmiyor." + +msgid "Storage unavailable, insert SD card." +msgstr "Depolama alanı kullanılamıyor, SD kartı takın." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Hata kodu: %d" + +msgid "Speed:" +msgstr "Hız:" + +msgid "Deadzone:" +msgstr "Ölü bölge:" + +msgid "Options:" +msgstr "Seçenekler:" + +msgid "Zoom" +msgstr "Yakınlaştır" + +msgid "Translation/Zoom" +msgstr "Çeviri/Yakınlaştırma" + +msgid "3Dconnexion settings" +msgstr "3D bağlantı ayarları" + +msgid "Swap Y/Z axes" +msgstr "Y/Z eksenlerini değiştirin" + +msgid "Invert X axis" +msgstr "X eksenini ters çevir" + +msgid "Invert Y axis" +msgstr "Y eksenini ters çevir" + +msgid "Invert Z axis" +msgstr "Z eksenini ters çevir" + +msgid "Invert Yaw axis" +msgstr "Sapma eksenini ters çevir" + +msgid "Invert Pitch axis" +msgstr "Pitch eksenini ters çevir" + +msgid "Invert Roll axis" +msgstr "Silindir eksenini ters çevir" + +msgid "Printing Progress" +msgstr "Yazdırma İlerlemesi" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Katman: Yok" + +msgid "Clear" +msgstr "Temizle" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"Mall modelinin baskısını tamamladınız, \n" +"ancak puanlama bilgilerinin senkronizasyonu başarısız oldu." + +msgid "How do you like this printing file?" +msgstr "Bu baskı dosyasını nasıl buldunuz?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "" +"(Model zaten derecelendirilmiştir. Derecelendirmeniz önceki derecelendirmenin " +"üzerine yazılacaktır)" + +msgid "Rate" +msgstr "Derecelendir" + +msgid "Camera" +msgstr "Kamera" + +msgid "SD Card" +msgstr "Hafıza kartı" + +msgid "Camera Setting" +msgstr "Kamera Ayarı" + +msgid "Switch Camera View" +msgstr "Kamera Görünümünü Değiştir" + +msgid "Control" +msgstr "Kontrol" + +msgid "Printer Parts" +msgstr "Printer Parts" + +msgid "Print Options" +msgstr "Yazdırma Seçenekleri" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Lamba" + +msgid "Aux" +msgstr "Yardımcı" + +msgid "Cham" +msgstr "Bölme" + +msgid "Bed" +msgstr "Yatak" + +msgid "Debug Info" +msgstr "Hata Ayıklama Bilgisi" + +msgid "No SD Card" +msgstr "SD Kart Yok" + +msgid "SD Card Abnormal" +msgstr "SD Kart Anormal" + +msgid "Cancel print" +msgstr "Yazdırmayı iptal et" + +msgid "Are you sure you want to cancel this print?" +msgstr "Bu yazdırmayı iptal etmek istediğinizden emin misiniz?" + +msgid "Downloading..." +msgstr "İndiriliyor..." + +msgid "Cloud Slicing..." +msgstr "Bulut Dilimleme..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "Bulut Dilimleme Sırasında önünüzde %s görev var." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Katman: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Katman: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Filamenti yüklemeden veya boşaltmadan önce lütfen nozulu 170 derecenin " +"üzerine ısıtın." + +msgid "Still unload" +msgstr "Daha Fazla Boşalt" + +msgid "Still load" +msgstr "Daha Fazla Yükle" + +msgid "Please select an AMS slot before calibration" +msgstr "Lütfen kalibrasyondan önce bir AMS yuvası seçin" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Filament bilgisi okunamıyor: Filament alet kafasına yüklenmiştir, lütfen " +"filamenti boşaltın ve tekrar deneyin." + +msgid "This only takes effect during printing" +msgstr "Bu yalnızca yazdırma sırasında etkili olur" + +msgid "Silent" +msgstr "Sessiz" + +msgid "Standard" +msgstr "Standart" + +msgid "Sport" +msgstr "Spor" + +msgid "Ludicrous" +msgstr "Gülünç" + +msgid "Can't start this without SD card." +msgstr "SD kart olmadan başlatılamıyor." + +msgid "Rate the Print Profile" +msgstr "Baskı Profiline Puan Verin" + +msgid "Comment" +msgstr "Yorum" + +msgid "Rate this print" +msgstr "Bu baskıyı değerlendir" + +msgid "Add Photo" +msgstr "Resim Ekle" + +msgid "Delete Photo" +msgstr "Resmi Sil" + +msgid "Submit" +msgstr "Gönder" + +msgid "Please click on the star first." +msgstr "Lütfen önce yıldıza tıklayınız." + +msgid "InFo" +msgstr "Bilgi" + +msgid "Get oss config failed." +msgstr "Oss yapılandırması başarısız." + +msgid "Upload Pictrues" +msgstr "Resim Yükle" + +msgid "Number of images successfully uploaded" +msgstr "Başarıyla yüklenen resim sayısı" + +msgid " upload failed" +msgstr " yükleme başarısız" + +msgid " upload config prase failed\n" +msgstr " yapılandırma ön yüklemesi başarısız oldu\n" + +msgid " No corresponding storage bucket\n" +msgstr " Uygun depolama alanı yok\n" + +msgid " can not be opened\n" +msgstr " açılamaz\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"Resim yükleme işlemi sırasında aşağıdaki sorunlar oluştu. Bunları görmezden " +"gelmek ister misiniz?\n" +"\n" + +msgid "info" +msgstr "bilgi" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"Yazdırma sonuçları senkronize ediliyor. Lütfen birkaç saniye sonra tekrar " +"deneyin." + +msgid "Upload failed\n" +msgstr "Yükleme başarısız\n" + +msgid "obtaining instance_id failed\n" +msgstr "instance_id alınamadı\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Yorum sonucunuz aşağıdaki bazı nedenlerden dolayı yüklenemiyor. Sebep:\n" +"\n" +" hata kodu: " + +msgid "error message: " +msgstr "hata mesajı: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Derecelendirme için web sayfasına yönlendirmek ister misiniz?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Bazı resimleriniz yüklenemedi. Değerlendirme için web sayfasına yönlendirmek " +"ister misiniz?" + +msgid "You can select up to 16 images." +msgstr "En fazla 16 görüntü seçebilirsiniz." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"Bu baskı profiline olumlu bir puan vermek için (4 veya 5 yıldız) en az bir " +"başarılı baskı kaydı gereklidir." + +msgid "Status" +msgstr "Durum" + +msgid "Update" +msgstr "Güncelle" + +msgid "Don't show again" +msgstr "Bir daha gösterme" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s hata" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s bir hatayla karşılaştı" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s uyarı" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s'de uyarı var" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s bilgi" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s bilgisi" + +msgid "Skip" +msgstr "Atla" + +msgid "Newer 3mf version" +msgstr "Daha yeni 3mf sürümü" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" +"3mf dosya sürümü Beta’dadır ve mevcut Snapmaker Orca sürümünden daha yenidir." + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "Snapmaker Orca Beta’yı denemek isterseniz tıklayabilirsiniz." + +msgid "Download Beta Version" +msgstr "Beta Sürümünü İndirin" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "3mf dosya sürümü mevcut Snapmaker Orca sürümünden daha yenidir." + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" +"Orca Dilimleyicinizi güncellemek, 3mf dosyasındaki tüm işlevleri " +"etkinleştirebilir." + +msgid "Current Version: " +msgstr "Şimdiki versiyonu:" + +msgid "Latest Version: " +msgstr "En son sürüm:" + +msgid "Not for now" +msgstr "Şu an için değil" + +msgid "3D Mouse disconnected." +msgstr "3D Fare bağlantısı kesildi." + +msgid "Configuration can update now." +msgstr "Yapılandırma şimdi güncellenebilir." + +msgid "Detail." +msgstr "Detay." + +msgid "Integration was successful." +msgstr "Entegrasyon başarılı oldu." + +msgid "Integration failed." +msgstr "Entegrasyon başarısız oldu." + +msgid "Undo integration was successful." +msgstr "Entegrasyonun geri alınması başarılı oldu." + +msgid "New network plug-in available." +msgstr "Yeni ağ eklentisi mevcut." + +msgid "Details" +msgstr "Detaylar" + +msgid "New printer config available." +msgstr "Yeni yazıcı yapılandırması mevcut." + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "Entegrasyon geri alınamadı." + +msgid "Exporting." +msgstr "Dışa Aktarılıyor." + +msgid "Software has New version." +msgstr "Yazılımın Yeni sürümü var." + +msgid "Goto download page." +msgstr "İndirme sayfasına gidin." + +msgid "Open Folder." +msgstr "Klasörü Aç." + +msgid "Safely remove hardware." +msgstr "Donanımı Güvenle Kaldır." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d Nesnenin özel destekleri var." +msgstr[1] "%1$d Nesnelerin özel destekleri var." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d Nesnenin renkli resmi var." +msgstr[1] "%1$d Nesnelerin renkli boyaması var." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d nesne, kesme nesnesinin bir parçası olarak yüklendi." +msgstr[1] "%1$d nesne, kesme nesnesinin parçaları olarak yüklendi" + +msgid "ERROR" +msgstr "HATA" + +msgid "COMPLETED" +msgstr "TAMAMLANDI" + +msgid "CANCELED" +msgstr "İPTAL EDİLDİ" + +msgid "Cancel upload" +msgstr "Yüklemeyi iptal et" + +msgid "Jump to" +msgstr "Git" + +msgid "Error:" +msgstr "Hata:" + +msgid "Warning:" +msgstr "Uyarı:" + +msgid "Export successfully." +msgstr "Başarıyla dışarı aktarıldı." + +msgid "Model file downloaded." +msgstr "Model dosyası indirildi." + +msgid "Serious warning:" +msgstr "Ciddi uyarı:" + +msgid " (Repair)" +msgstr " (Onar)" + +msgid " Click here to install it." +msgstr " Yüklemek için tıklayın." + +msgid "WARNING:" +msgstr "UYARI:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "" +"Modelinizin desteğe ihtiyacı var! Lütfen destek materyalini etkinleştirin." + +msgid "Gcode path overlap" +msgstr "Gcode yolu çakışması" + +msgid "Support painting" +msgstr "Destek boyama" + +msgid "Color painting" +msgstr "Renkli boyama" + +msgid "Cut connectors" +msgstr "Konektörleri kes" + +msgid "Layers" +msgstr "Katmanlar" + +msgid "Range" +msgstr "Aralık" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"OpenGL sürümü 2.0'dan düşük olduğundan uygulama normal şekilde çalışamıyor.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Lütfen grafik kartı sürücünüzü yükseltin." + +msgid "Unsupported OpenGL version" +msgstr "Desteklenmeyen OpenGL sürümü" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Gölgelendiriciler yüklenemiyor:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Gölgelendiriciler yüklenirken hata oluştu" + +msgctxt "Layers" +msgid "Top" +msgstr "Üst" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Alt" + +msgid "Enable AI monitoring of printing" +msgstr "Yazdırmanın AI izlemesini etkinleştirin" + +msgid "Sensitivity of pausing is" +msgstr "Duraklatma hassasiyeti" + +msgid "Enable detection of build plate position" +msgstr "Yapı plakası konumunun algılanmasını etkinleştir" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"Baskı plakasının yerelleştirme etiketi algılanır ve etiket önceden " +"tanımlanmış aralıkta değilse yazdırma duraklatılır." + +msgid "First Layer Inspection" +msgstr "Birinci Katman Denetimi" + +msgid "Auto-recovery from step loss" +msgstr "Adım kaybından otomatik kurtarma" + +msgid "Allow Prompt Sound" +msgstr "Uyarı Sesine İzin Ver" + +msgid "Filament Tangle Detect" +msgstr "Filament Dolaşma Tespiti" + +msgid "Nozzle Clumping Detection" +msgstr "Nozul Topaklanma Algılaması" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" +"Nozulun filament veya diğer yabancı cisimler nedeniyle topaklanıp " +"topaklanmadığını kontrol edin." + +msgid "Nozzle Type" +msgstr "Nozul Tipi" + +msgid "Stainless Steel" +msgstr "Paslanmaz çelik" + +msgid "Hardened Steel" +msgstr "Güçlendirilmiş çelik" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Genel" + +msgid "Objects" +msgstr "Nesneler" + +msgid "Advance" +msgstr "Gelişmiş" + +msgid "Compare presets" +msgstr "Ön ayarları karşılaştır" + +msgid "View all object's settings" +msgstr "Nesnenin tüm ayarları" + +msgid "Material settings" +msgstr "Malzeme ayarları" + +msgid "Remove current plate (if not last one)" +msgstr "Mevcut plakayı kaldırın (eğer sonuncusu değilse)" + +msgid "Auto orient objects on current plate" +msgstr "Mevcut plakada nesneleri otomatik olarak oryante et" + +msgid "Arrange objects on current plate" +msgstr "Mevcut plakada nesneleri düzenle" + +msgid "Unlock current plate" +msgstr "Mevcut plakanın kilidini aç" + +msgid "Lock current plate" +msgstr "Mevcut plakayı kilitle" + +msgid "Edit current plate name" +msgstr "Mevcut plaka adını düzenle" + +msgid "Move plate to the front" +msgstr "Plakayı öne doğru hareket ettirin" + +msgid "Customize current plate" +msgstr "Mevcut plakayı özelleştir" + +#, boost-format +msgid " plate %1%:" +msgstr " plaka %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Geçersiz ad, aşağıdaki karakterlere izin verilmiyor:" + +msgid "Sliced Info" +msgstr "Dilimleme bilgisi" + +msgid "Used Filament (m)" +msgstr "Kullanılan Filament (m)" + +msgid "Used Filament (mm³)" +msgstr "Kullanılan Filament (mm³)" + +msgid "Used Filament (g)" +msgstr "Kullanılan Filament (g)" + +msgid "Used Materials" +msgstr "Kullanılan Malzemeler" + +msgid "Estimated time" +msgstr "Tahmini süresi" + +msgid "Filament changes" +msgstr "Filament değişiklikleri" + +msgid "Click to edit preset" +msgstr "Ön ayarı düzenlemek için tıklayın" + +msgid "Connection" +msgstr "Bağlantı" + +msgid "Bed type" +msgstr "Yatak türü" + +msgid "Flushing volumes" +msgstr "Yıkama hacimleri" + +msgid "Add one filament" +msgstr "Bir filament ekle" + +msgid "Remove last filament" +msgstr "Son filamenti kaldır" + +msgid "Synchronize filament list from AMS" +msgstr "Filament listesini AMS'den senkronize edin" + +msgid "Set filaments to use" +msgstr "Kullanılacak filamentleri ayarla" + +msgid "Search plate, object and part." +msgstr "Arama plakası, nesne ve parça." + +msgid "Pellets" +msgstr "Peletler" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"AMS filamentleri yok. AMS bilgilerini yüklemek için lütfen 'Cihaz' sayfasında " +"bir yazıcı seçin." + +msgid "Sync filaments with AMS" +msgstr "Filamentleri AMS ile senkronize et" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Filamentleri AMS ile senkronize etmek, seçili tüm mevcut filament ön " +"ayarlarını ve renklerini kaldıracaktır. Devam etmek istiyor musun?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync all?" +msgstr "" +"Zaten bir senkronizasyon yaptınız. Yalnızca değişiklikleri senkronize etmek " +"mi yoksa tümünü yeniden senkronize etmek mi istiyorsunuz?" + +msgid "Sync" +msgstr "Senkronizasyon" + +msgid "Resync" +msgstr "Yeniden eşitleme" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "Uyumlu filament yok ve senkronizasyon gerçekleştirilmiyor." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update Orca " +"Slicer or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Genel ön ayara eşlenen bazı bilinmeyen filamentler var. Sistem ön ayarlarında " +"bir güncelleme olup olmadığını kontrol etmek için lütfen Snapmaker Orca'ı " +"güncelleyin veya Snapmaker Orca'ı yeniden başlatın." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "\"%1%\" dosyasındaki değişiklikleri kaydetmek istiyor musunuz?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Başarıyla kaldırıldı. %s(%s) aygıtı artık bilgisayardan güvenli bir şekilde " +"kaldırılabilir." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "%s(%s) aygıtının çıkarılması başarısız oldu." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "Önceki kaydedilmemiş proje algılandı, geri yüklemek istiyor musunuz?" + +msgid "Restore" +msgstr "Geri Yükleme" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be clogged " +"when printing this filament in a closed enclosure. Please open the front door " +"and/or remove the upper glass." +msgstr "" +"Mevcut sıcak yatak sıcaklığı oldukça yüksek. Bu filamenti kapalı bir muhafaza " +"içinde bastırırken nozzle tıkanabilir. Lütfen ön kapağı açın ve/veya üst camı " +"çıkarın." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"Filamentin gerektirdiği nozul sertliği, yazıcının varsayılan nozul " +"sertliğinden daha yüksektir. Lütfen sertleşmiş nozulu veya filamenti " +"değiştirin, aksi takdirde nozul aşınır veya hasar görür." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Geleneksel timelapse etkinleştirilmesi yüzey kusurlarına neden olabilir. " +"Yumuşak moda geçilmesi önerilir." + +msgid "Expand sidebar" +msgstr "Kenar çubuğunu genişlet" + +msgid "Collapse sidebar" +msgstr "Kenar çubuğunu daralt" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Dosya yükleniyor: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "" +"Snapmaker Orca, 3mf formatını desteklememektedir. Sadece geometri verilerini " +"yükle." + +msgid "Load 3mf" +msgstr "3mf yükle" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "" +"3mf'nin %s sürümü, %s'in %s sürümünden daha yeni, Aşağıdaki anahtarlar " +"tanınmadan bulundu:" + +msgid "You'd better upgrade your software.\n" +msgstr "Yazılımınızı yükseltseniz iyi olur.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"3mf'nin %s sürümü, %s'in %s sürümünden daha yeni, Yazılımınızı yükseltmenizi " +"öneririz." + +msgid "Invalid values found in the 3mf:" +msgstr "3mf'de geçersiz değerler bulundu:" + +msgid "Please correct them in the param tabs" +msgstr "Lütfen bunları parametre sekmelerinde düzeltin" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" +"3mf dosyasında filament veya yazıcı ön ayarlarında şu değiştirilmiş G-kodları " +"bulunmaktadır:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Lütfen bu değiştirilmiş G-kodlarının makineye herhangi bir zarar vermemesi " +"için güvenli olduğunu onaylayın!" + +msgid "Modified G-codes" +msgstr "G-kodları Değişti" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "3mf dosyasında şu özel filament veya yazıcı ayarları bulunmaktadır:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Lütfen bu ön ayarlar içindeki G-kodlarının makineye herhangi bir zararı " +"önlemek için güvenli olduğunu onaylayın!" + +msgid "Customized Preset" +msgstr "Özel Ayar" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "Adım dosyasındaki bileşenlerin adı UTF8 formatında değil!" + +msgid "The name may show garbage characters!" +msgstr "İsimde çöp karakterler görünebilir!" + +msgid "Remember my choice." +msgstr "Seçimimi hatırla." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "\"%1%\" dosyası yüklenemedi. Geçersiz bir yapılandırma bulundu." + +msgid "Objects with zero volume removed" +msgstr "Sıfır hacimli nesneler kaldırıldı" + +msgid "The volume of the object is zero" +msgstr "Cismin hacmi sıfır" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"%s dosyasındaki nesne çok küçük; metre veya inç cinsinden olabilir.\n" +" Milimetreye ölçeklendirmek istiyor musunuz?" + +msgid "Object too small" +msgstr "Nesne çok küçük" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Bu dosya birden fazla yükseklikte konumlandırılmış birkaç nesne içerir.\n" +"Bunları birden fazla nesne olarak düşünmek yerine,\n" +"dosya birden fazla parçaya sahip tek bir nesne olarak mı yüklenecek?" + +msgid "Multi-part object detected" +msgstr "Çok parçalı nesne algılandı" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "" +"Bu dosyalar birden fazla parçadan oluşan tek bir nesne olarak mı yüklensin?\n" + +msgid "Object with multiple parts was detected" +msgstr "Birden fazla parçaya sahip nesne algılandı" + +msgid "The file does not contain any geometry data." +msgstr "Dosya herhangi bir geometri verisi içermiyor." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Nesneniz çok büyük görünüyor. Isı yatağına sığacak şekilde otomatik olarak " +"küçültmek istiyor musunuz?" + +msgid "Object too large" +msgstr "Nesne çok büyük" + +msgid "Export STL file:" +msgstr "STL dosyasını dışa aktar:" + +msgid "Export AMF file:" +msgstr "AMF dosyasını dışa aktar:" + +msgid "Save file as:" +msgstr "Farklı kaydet:" + +msgid "Export OBJ file:" +msgstr "OBJ dosyasını dışa aktar:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"%s dosyası zaten mevcut\n" +"değiştirmek istiyor musun?" + +msgid "Confirm Save As" +msgstr "Farklı Kaydetmeyi Onayla" + +msgid "Delete object which is a part of cut object" +msgstr "Kesilen nesnenin bir parçası olan nesneyi silin" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Kesilmiş bir nesnenin parçası olan bir nesneyi silmeye çalışıyorsunuz.\n" +"Bu eylem kesilmiş bir yazışmayı bozacaktır.\n" +"Bundan sonra model tutarlılığı garanti edilemez." + +msgid "The selected object couldn't be split." +msgstr "Seçilen nesne bölünemedi." + +msgid "Another export job is running." +msgstr "Başka bir ihracat işi yürütülüyor." + +msgid "Unable to replace with more than one volume" +msgstr "Birden fazla hacimle değiştirme yapılamıyor." + +msgid "Error during replace" +msgstr "Değiştirme sırasında hata" + +msgid "Replace from:" +msgstr "Değiştirilecek olan:" + +msgid "Select a new file" +msgstr "Yeni dosya seç" + +msgid "File for the replace wasn't selected" +msgstr "Değiştirme dosyası seçilmedi" + +msgid "Please select a file" +msgstr "Dosya seçin" + +msgid "Do you want to replace it" +msgstr "Değiştirmek istiyor musun" + +msgid "Message" +msgstr "Mesaj" + +msgid "Reload from:" +msgstr "Yeniden yükle:" + +msgid "Unable to reload:" +msgstr "Yeniden yüklenemiyor:" + +msgid "Error during reload" +msgstr "Yeniden yükleme sırasında hata oluştu" + +msgid "There are warnings after slicing models:" +msgstr "Modellerin dilimlenmesinden sonra uyarılar vardır:" + +msgid "warnings" +msgstr "uyarılar" + +msgid "Invalid data" +msgstr "Geçersiz veri" + +msgid "Slicing Canceled" +msgstr "Dilimleme İptal Edildi" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Plaka %d dilimleniyor" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Lütfen dilimleme hatalarını giderip tekrar yayınlayın." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "Ağ Eklentisi algılanmadı. Ağla ilgili özellikler kullanılamıyor." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Yalnızca önizleme modu:\n" +"Yüklenen dosya yalnızca gcode içeriyor, Hazırlama sayfasına girilemiyor" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "Değiştirilen ön ayarları yeni projede tutabilir veya silebilirsiniz" + +msgid "Creating a new project" +msgstr "Yeni bir proje oluşturma" + +msgid "Load project" +msgstr "Projeyi Aç" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Proje kaydedilemedi.\n" +"Lütfen klasörün çevrimiçi olup olmadığını veya proje dosyasını başka " +"programların açıp açmadığını kontrol edin." + +msgid "Save project" +msgstr "Projeyi kaydet" + +msgid "Importing Model" +msgstr "Model İçe aktarılıyor" + +msgid "prepare 3mf file..." +msgstr "3mf dosyasını hazırla..." + +msgid "Download failed, unknown file format." +msgstr "İndirme başarısız oldu, dosya türü bilinmiyor." + +msgid "downloading project ..." +msgstr "proje indiriliyor..." + +msgid "Download failed, File size exception." +msgstr "İndirme başarısız oldu, Dosya boyutu sorunlu." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "" +"Proje %d%% indirildiBambu Studio’ya içe aktarma başarısız oldu. Lütfen " +"dosyayı indirin ve manuel olarak içe aktarın." + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually import " +"it." +msgstr "" +"Snapmaker Orca'ya aktarma başarısız oldu. Lütfen dosyayı indirin ve manuel " +"olarak İçe aktarın." + +msgid "Import SLA archive" +msgstr "SLA arşivini içe aktar" + +msgid "The selected file" +msgstr "Seçili dosya" + +msgid "does not contain valid gcode." +msgstr "geçerli gcode içermiyor." + +msgid "Error occurs while loading G-code file" +msgstr "G kodu dosyası yüklenirken hata oluşuyor" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "ZIP arşivinin %1% yoluna yüklenmesi başarısız oldu." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "Dosya %1% konumuna açılamadı: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"%1%'de sıkıştırılmamış dosya bulunamadı. Dosyanın sıkıştırmadan çıkartılması " +"başarısız oldu." + +msgid "Drop project file" +msgstr "Proje dosyasını sürükle" + +msgid "Please select an action" +msgstr "İşlem seçin" + +msgid "Open as project" +msgstr "Proje olarak aç" + +msgid "Import geometry only" +msgstr "Yalnızca geometriyi içe aktar" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Aynı anda yalnızca bir G kodu dosyası açılabilir." + +msgid "G-code loading" +msgstr "G-kod yükleniyor" + +msgid "G-code files can not be loaded with models together!" +msgstr "G kodu dosyaları modellerle birlikte yüklenemez!" + +msgid "Can not add models when in preview mode!" +msgstr "Önizleme modundayken model eklenemiyor!" + +msgid "All objects will be removed, continue?" +msgstr "Tüm nesneler kaldırılacak, devam edilsin mi?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"Mevcut projede kaydedilmemiş değişiklikler var. Devam etmeden önce " +"kaydedilsin mi?" + +msgid "Number of copies:" +msgstr "Kopya sayısı:" + +msgid "Copies of the selected object" +msgstr "Seçilen nesnenin kopyaları" + +msgid "Save G-code file as:" +msgstr "G-kod dosyasını şu şekilde kaydedin:" + +msgid "Save SLA file as:" +msgstr "SLA dosyasını farklı bir isimle kaydet:" + +msgid "The provided file name is not valid." +msgstr "Dosya adı geçerli değil." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "FAT dosya sistemi tarafından izin verilmeyen karakterler:" + +msgid "Save Sliced file as:" +msgstr "Dilimlenmiş dosyayı şu şekilde kaydedin:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed on " +"the printer." +msgstr "" +"%s dosyası yazıcının depolama alanına gönderildi ve yazıcıda " +"görüntülenebiliyor." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts will " +"be kept. You may fix the meshes and try again." +msgstr "" +"Model ağlarında boole işlemi gerçekleştirilemiyor. Yalnızca olumlu kısımlar " +"tutulacaktır. Kafesleri düzeltip tekrar deneyebilirsiniz." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Sebep: “%1%” kısmı boş." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Sebep: “%1%” bölümü bir birimi sınırlamıyor." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Sebep: “%1%” kısmında kendi kendine kesişme var." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Sebep: “%1%” ile başka bir parçanın kesişimi yok." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" +"Model ağlarında boole işlemi gerçekleştirilemiyor. Yalnızca pozitif parçalar " +"ihraç edilecektir." + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"Orijinal SVG'leri yerel yollarıyla birlikte 3MF dosyasına depolamak " +"istediğinizden emin misiniz?\n" +"'HAYIR' tuşuna basarsanız projedeki tüm SVG'ler artık düzenlenemez." + +msgid "Private protection" +msgstr "Özel koruma" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "Yazıcı hazır mı? Baskı plakası takılı, boş ve temiz mi?" + +msgid "Upload and Print" +msgstr "Yükle ve Yazdır" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Nesneye Göre Yazdır:\n" +"Yazdırma sırasında çarpışmaları önlemek için otomatik düzenlemeyi " +"kullanmanızı önerin." + +msgid "Send G-code" +msgstr "G-kodu gönder" + +msgid "Send to printer" +msgstr "Yazıcıya gönder" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "Tamir edilmeden önce özel destekler ve renkli boyalar kaldırıldı." + +msgid "Optimize Rotation" +msgstr "Rotasyonu Optimize Et" + +msgid "Invalid number" +msgstr "Geçersiz numara" + +msgid "Plate Settings" +msgstr "Plaka Ayarları" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Şu anda seçili parça sayısı: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Şu anda seçili nesnelerin sayısı: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Parça adı: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Nesne adı: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Boyut: %1% x %2% x %3%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Boyut: %1% x %2% x %3% mm\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Hacim: %1% in³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Hacim: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Üçgenler: %1%\n" + +msgid "Tips:" +msgstr "İpuçları:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"\"Modeli Onar\" özelliği şu anda yalnızca Windows'ta bulunmaktadır. Lütfen " +"modeli Snapmaker Orca (windows) veya CAD yazılımlarında onarın." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature to " +"non zero." +msgstr "" +"Plaka% d: %s'nin %s(%s) filamentinı yazdırmak için kullanılması önerilmez. " +"Eğer yine de bu baskıyı yapmak istiyorsanız, lütfen bu filamentin yatak " +"sıcaklığını sıfır olmayan bir değere ayarlayın." + +msgid "Switching the language requires application restart.\n" +msgstr "Dili değiştirmek uygulamanın yeniden başlatılmasını gerektirir.\n" + +msgid "Do you want to continue?" +msgstr "Devam etmek istiyor musun?" + +msgid "Language selection" +msgstr "Dil seçimi" + +msgid "Switching application language while some presets are modified." +msgstr "Bazı ön ayarlar değiştirilirken uygulama dilinin değiştirilmesi." + +msgid "Changing application language" +msgstr "Dil değiştiriliyor" + +msgid "Changing the region will log out your account.\n" +msgstr "Bölgeyi değiştirmek hesabınızdan çıkış yapmanıza neden olacaktır.\n" + +msgid "Region selection" +msgstr "Bölge seçimi" + +msgid "Second" +msgstr "Saniye" + +msgid "Browse" +msgstr "Aç" + +msgid "Choose Download Directory" +msgstr "İndirme Dizini seçin" + +msgid "Associate" +msgstr "Ortak" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "Orca’nın modelleri açabilmesi için Snapmaker Orca ile" + +msgid "Current Association: " +msgstr "Mevcut Ortak:" + +msgid "Current Instance" +msgstr "Mevcut Örnek" + +msgid "Current Instance Path: " +msgstr "Mevcut Örnek Yolu:" + +msgid "General Settings" +msgstr "Genel Ayarlar" + +msgid "Asia-Pacific" +msgstr "Asya Pasifik" + +msgid "China" +msgstr "Çin" + +msgid "Europe" +msgstr "Avrupa" + +msgid "North America" +msgstr "Kuzey Amerika" + +msgid "Others" +msgstr "Diğer" + +msgid "Login Region" +msgstr "Giriş Bölgesi" + +msgid "Stealth Mode" +msgstr "Gizli mod" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" +"Bu, Bambu’nun bulut hizmetlerine veri aktarımını durdurur. BBL makinelerini " +"kullanmayan veya yalnızca LAN modunu kullanan kullanıcılar bu işlevi güvenle " +"açabilir." + +msgid "Enable network plugin" +msgstr "Ağ eklentisini etkinleştir" + +msgid "Check for stable updates only" +msgstr "Yalnızca kararlı güncellemeleri kontrol edin" + +msgid "Metric" +msgstr "Metrik" + +msgid "Imperial" +msgstr "Imperial" + +msgid "Units" +msgstr "Birimler" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "Yalnızca bir Snapmaker Orca örneğine izin ver" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. In " +"such case this settings will allow only one instance." +msgstr "" +"OSX’te her zaman varsayılan olarak çalışan tek bir uygulama örneği vardır. " +"Ancak aynı uygulamanın birden fazla örneğinin komut satırından " +"çalıştırılmasına izin verilir. Böyle bir durumda bu ayarlar yalnızca bir " +"örneğe izin verecektir." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the same " +"Snapmaker Orca is already running, that instance will be reactivated instead." +msgstr "" +"Bu etkinleştirilirse, Snapmaker Orca başlatıldığında ve aynı Snapmaker Orca’ın başka " +"bir örneği zaten çalışıyorken, bunun yerine bu örnek yeniden " +"etkinleştirilecektir." + +msgid "Home" +msgstr "Ana Sayfa" + +msgid "Default Page" +msgstr "Varsayılan Sayfa" + +msgid "Set the page opened on startup." +msgstr "Açılışta açılacak sayfayı ayarlayın." + +msgid "Touchpad" +msgstr "Dokunmatik yüzey" + +msgid "Camera style" +msgstr "Kamera stili" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"Kamera gezinme stilini seçin.\n" +"Varsayılan: Döndürme için LMB+hareket, kaydırma için RMB/MMB+hareket.\n" +"Dokunmatik yüzey: Döndürme için Alt+hareket, kaydırma için Shift+hareket." + +msgid "Zoom to mouse position" +msgstr "Mouse konumuna yakınlaştır" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"2B pencere merkezi yerine, 3B görünümde fare işaretçisinin konumuna doğru " +"yakınlaştırın." + +msgid "Use free camera" +msgstr "Serbest kamera kullan" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Etkinleştirilirse serbest kamerayı kullanın. Etkin değilse kısıtlı kamerayı " +"kullanın." + +msgid "Reverse mouse zoom" +msgstr "Mouse yakınlaştırmasını tersine çevir" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" +"Etkinleştirilirse, mouse tekerleğiyle yakınlaştırmanın yönü tersine çevrilir." + +msgid "Show splash screen" +msgstr "Açılış ekranını göster" + +msgid "Show the splash screen during startup." +msgstr "Açılış sırasında açılış ekranını göster." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Başlangıçtan sonra \"Günün ipucu\" bildirimini göster" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Etkinleştirilirse başlangıçta faydalı ipuçları görüntülenir." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "Hacimleri temizleme: Renk her değiştiğinde otomatik olarak hesapla." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "Etkinleştirilirse, renk her değiştiğinde otomatik hesapla." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "" +"Yıkama hacimleri: Filament her değiştirildiğinde otomatik olarak hesaplanır." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "Etkinleştirilirse filaman her değiştirildiğinde otomatik hesaplama" + +msgid "Remember printer configuration" +msgstr "Yazıcı yapılandırmasını hatırla" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" +"Etkinleştirilirse, Orca her yazıcı için filament/işlem yapılandırmasını " +"hatırlayacak ve otomatik olarak değiştirecektir." + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "Çoklu Cihaz Yönetimi(Studio yeniden başlatıldıktan sonra geçerli olur)." + +msgid "" +"With this option enabled, you can send a task to multiple devices at the same " +"time and manage multiple devices." +msgstr "" +"Bu seçenek etkinleştirildiğinde, aynı anda birden fazla cihaza bir görev " +"gönderebilir ve birden fazla cihazı yönetebilirsiniz." + +msgid "Network" +msgstr "Ağ" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "Kullanıcı ön ayarları otomatik senkronizasyon (Yazıcı/Filament/İşlem)" + +msgid "User Sync" +msgstr "Kullanıcı Senkronizasyonu" + +msgid "Update built-in Presets automatically." +msgstr "Yerleşik Ön Ayarları otomatik olarak güncelleyin." + +msgid "System Sync" +msgstr "Sistem Senkronizasyonu" + +msgid "Clear my choice on the unsaved presets." +msgstr "Kaydedilmemiş ön ayarlardaki seçimimi temizle." + +msgid "Associate files to Snapmaker Orca" +msgstr "Dosyaları Snapmaker Orca ile ilişkilendirin" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr ".3mf dosyalarını Snapmaker Orca ile ilişkilendirin" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Etkinleştirilirse, Snapmaker Orca'ı .3mf dosyalarını açacak varsayılan uygulama " +"olarak ayarlar" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr ".stl dosyalarını Snapmaker Orca ile ilişkilendirin" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Etkinleştirilirse Snapmaker Orca'ı .stl dosyalarını açmak için varsayılan " +"uygulama olarak ayarlar" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr ".step/.stp dosyalarını Snapmaker Orca ile ilişkilendirin" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Etkinleştirilirse, Snapmaker Orca'ı .step dosyalarını açmak için varsayılan " +"uygulama olarak ayarlar" + +msgid "Associate web links to Snapmaker Orca" +msgstr "Web bağlantılarını Snapmaker Orca ile ilişkilendirin" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "URL’leri Snapmaker Orca ile ilişkilendirin" + +msgid "Maximum recent projects" +msgstr "Maksimum yeni proje" + +msgid "Maximum count of recent projects" +msgstr "Maksimum yeni proje sayısı" + +msgid "Clear my choice on the unsaved projects." +msgstr "Kaydedilmemiş projelerdeki seçimimi temizle." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "Değiştirilmiş G-kodları içeren 3MF dosyalarını yüklerken uyarı verme" + +msgid "Auto-Backup" +msgstr "Otomatik yedekleme" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Ara sıra meydana gelen çökmelerden sonra geri yüklemek için projenizi düzenli " +"aralıklarla yedekleyin." + +msgid "every" +msgstr "her" + +msgid "The peroid of backup in seconds." +msgstr "Saniye cinsinden yedekleme periyodu." + +msgid "Downloads" +msgstr "İndirilenler" + +msgid "Dark Mode" +msgstr "Karanlık Mod" + +msgid "Enable Dark mode" +msgstr "Karanlık modu etkinleştir" + +msgid "Develop mode" +msgstr "Geliştirici Modu" + +msgid "Skip AMS blacklist check" +msgstr "AMS kara liste kontrolünü atla" + +msgid "Home page and daily tips" +msgstr "Ana sayfa ve günlük ipuçları" + +msgid "Show home page on startup" +msgstr "Başlangıçta ana sayfayı göster" + +msgid "Sync settings" +msgstr "Ayarları senkronize et" + +msgid "User sync" +msgstr "Kullanıcı senkronizasyonu" + +msgid "Preset sync" +msgstr "Ön ayar senkronizasyonu" + +msgid "Preferences sync" +msgstr "Tercihler senkronizasyonu" + +msgid "View control settings" +msgstr "Kontrol ayarlarını görüntüle" + +msgid "Rotate of view" +msgstr "Görünümü döndür" + +msgid "Move of view" +msgstr "Görüşün taşınması" + +msgid "Zoom of view" +msgstr "Görünümü yakınlaştır" + +msgid "Other" +msgstr "Diğer" + +msgid "Mouse wheel reverses when zooming" +msgstr "Yakınlaştırma sırasında fare tekerleği ters dönüyor" + +msgid "Enable SSL(MQTT)" +msgstr "SSL'yi etkinleştir(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "SSL'yi (FTP) etkinleştir" + +msgid "Internal developer mode" +msgstr "Dahili geliştirici modu" + +msgid "Log Level" +msgstr "Günlük Düzeyi" + +msgid "fatal" +msgstr "kritik" + +msgid "error" +msgstr "hata" + +msgid "warning" +msgstr "uyarı" + +msgid "debug" +msgstr "hata ayıklama" + +msgid "trace" +msgstr "iz" + +msgid "Host Setting" +msgstr "Yazıcı Ayarı" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "DEV ana bilgisayarı: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "QA ana bilgisayarı: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "ÖN ana bilgisayar: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Ürün ana bilgisayarı" + +msgid "debug save button" +msgstr "hata ayıklama kaydet düğmesi" + +msgid "save debug settings" +msgstr "hata ayıklama ayarlarını kaydet" + +msgid "DEBUG settings have saved successfully!" +msgstr "DEBUG ayarları başarıyla kaydedildi!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Bulut ortamını değiştirin, lütfen tekrar giriş yapın!" + +msgid "System presets" +msgstr "Sistem ön ayarları" + +msgid "User presets" +msgstr "Kullanıcı ön ayarları" + +msgid "Incompatible presets" +msgstr "Uyumsuz ön ayarlar" + +msgid "AMS filaments" +msgstr "AMS filamentler" + +msgid "Click to pick filament color" +msgstr "Filament rengini seçmek için tıklayın" + +msgid "Please choose the filament colour" +msgstr "Lütfen filament rengini seçin" + +msgid "Add/Remove presets" +msgstr "Ön ayarları ekle/kaldır" + +msgid "Edit preset" +msgstr "Ön ayarı düzenle" + +msgid "Project-inside presets" +msgstr "Proje içi ön ayarlar" + +msgid "Add/Remove filaments" +msgstr "Filament Ekle/Kaldır" + +msgid "Add/Remove materials" +msgstr "Materyal Ekle/Kaldır" + +msgid "Select/Remove printers(system presets)" +msgstr "Yazıcıları Seç/Kaldır (sistem ön ayarları)" + +msgid "Create printer" +msgstr "Yazıcı oluştur" + +msgid "The selected preset is null!" +msgstr "Seçilen ön ayar boş!" + +msgid "End" +msgstr "Son" + +msgid "Customize" +msgstr "Özelleştir" + +msgid "Other layer filament sequence" +msgstr "Diğer katman filament dizisi" + +msgid "Please input layer value (>= 2)." +msgstr "Lütfen katman değerini girin (>= 2)." + +msgid "Plate name" +msgstr "Plaka adı" + +msgid "Same as Global Print Sequence" +msgstr "Global Yazdırma Sırasıyla aynı" + +msgid "Print sequence" +msgstr "Yazdırma sırası" + +msgid "Same as Global" +msgstr "Küresel ile aynı" + +msgid "Disable" +msgstr "Devre dışı bırak" + +msgid "Spiral vase" +msgstr "Spiral vazo" + +msgid "First layer filament sequence" +msgstr "İlk katman filament dizisi" + +msgid "Same as Global Plate Type" +msgstr "Global plaka tipi ile aynı" + +msgid "Same as Global Bed Type" +msgstr "Global Yatak Tipi ile aynı" + +msgid "By Layer" +msgstr "Katmana göre" + +msgid "By Object" +msgstr "Nesneye göre" + +msgid "Accept" +msgstr "Kabul et" + +msgid "Log Out" +msgstr "Çıkış" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "Zaman ve filament tahminini elde etmek için tüm plakayı dilimleyin" + +msgid "Packing project data into 3mf file" +msgstr "Proje verilerini 3mf dosyasına paketleme" + +msgid "Uploading 3mf" +msgstr "3mf yükleniyor" + +msgid "Jump to model publish web page" +msgstr "Model yayınlama web sayfasına git" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "Not: Hazırlık birkaç dakika sürebilir. Lütfen sabırlı olun." + +msgid "Publish" +msgstr "Yayınla" + +msgid "Publish was cancelled" +msgstr "Yayınlama iptal edildi" + +msgid "Slicing Plate 1" +msgstr "Dilimleme Plakası 1" + +msgid "Packing data to 3mf" +msgstr "Verileri 3mf'ye paketle" + +msgid "Jump to webpage" +msgstr "Web sayfasına atla" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "%s'yi farklı kaydet" + +msgid "User Preset" +msgstr "Kullanıcı Ön Ayarı" + +msgid "Preset Inside Project" +msgstr "Ön ayar içerisinde proje" + +msgid "Name is unavailable." +msgstr "Ad kullanılamıyor." + +msgid "Overwrite a system profile is not allowed" +msgstr "Sistem profilinin üzerine yazmaya izin verilmiyor" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "\"%1%\" ön ayarı zaten mevcut." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "\"%1%\" ön ayarı zaten mevcut ve mevcut yazıcıyla uyumlu değil." + +msgid "Please note that saving action will replace this preset" +msgstr "Kaydetme eyleminin bu ön ayarın yerini alacağını lütfen unutmayın" + +msgid "The name cannot be the same as a preset alias name." +msgstr "Ad, önceden ayarlanmış bir takma adla aynı olamaz." + +msgid "Save preset" +msgstr "Ön ayarı kaydet" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Kopyala" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "\"%1%\" yazıcısı \"%2%\" ön ayarıyla seçildi" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Lütfen kaydettikten sonra \"%1%\" ön ayarına sahip bir eylem seçin." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "\"%1%\" için \"%2%\"yi \"%3%\" olarak değiştirin " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "\"%1%\" için \"%2%\"yi yeni ön ayar olarak ekleyin" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Kolayca \"%1%\"e geçin" + +msgid "Task canceled" +msgstr "Görev iptal edildi" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Ara" + +msgid "My Device" +msgstr "Cihazım" + +msgid "Other Device" +msgstr "Diğer Cihaz" + +msgid "Online" +msgstr "Çevrimiçi" + +msgid "Input access code" +msgstr "Erişim kodunu girin" + +msgid "Can't find my devices?" +msgstr "Cihazlarımı bulamıyor musunuz?" + +msgid "Log out successful." +msgstr "Çıkış Başarılı." + +msgid "Busy" +msgstr "Meşgul" + +msgid "Bambu Cool Plate" +msgstr "Bambu Soğuk Plaka" + +msgid "PLA Plate" +msgstr "PLA Plaka" + +msgid "Bambu Engineering Plate" +msgstr "Bambu Mühendislik Plakası" + +msgid "Bambu Smooth PEI Plate" +msgstr "Bambu Pürüzsüz PEI Plaka" + +msgid "High temperature Plate" +msgstr "Yüksek Sıcaklık Plakası" + +msgid "Bambu Textured PEI Plate" +msgstr "Bambu Dokulu PEI Plaka" + +msgid "Send print job to" +msgstr "Yazdırma işini şuraya gönder" + +msgid "Flow Dynamics Calibration" +msgstr "Akış Dinamiği Kalibrasyonu" + +msgid "Click here if you can't connect to the printer" +msgstr "Yazıcıya bağlanamıyorsanız burayı tıklayın" + +msgid "send completed" +msgstr "gönderme tamamlandı" + +msgid "Error code" +msgstr "Hata kodu" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "Oturum açma hesabı yok, yalnızca LAN modundaki yazıcılar görüntüleniyor" + +msgid "Connecting to server" +msgstr "Sunucuya baglanıyor" + +msgid "Synchronizing device information" +msgstr "Cihaz bilgileri senkronize ediliyor" + +msgid "Synchronizing device information time out" +msgstr "Cihaz bilgilerinin senkronize edilmesi zaman aşımı" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "Yazıcı ürün yazılımını güncellerken yazdırma işi gönderilemiyor" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"Yazıcı talimatları yürütüyor. Lütfen bittikten sonra yazdırmayı yeniden " +"başlatın" + +msgid "The printer is busy on other print job" +msgstr "Yazıcı başka bir yazdırma işiyle meşgul" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"%s filamenti AMS yuvası sayısını aşıyor. AMS yuvası atamasını desteklemek " +"için lütfen yazıcının ürün yazılımını güncelleyin." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Filament, AMS yuvalarının sayısını aşıyor. AMS yuvası atamasını desteklemek " +"için lütfen yazıcının ürün yazılımını güncelleyin." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"AMS slot eşlemelerine yönelik filament oluşturulmuştur. Eşleme AMS yuvasını " +"değiştirmek için yukarıdaki filamentlerden birine tıklayabilirsiniz" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Yazdırma işini göndermeden önce eşleme AMS yuvasını belirtmek için lütfen " +"yukarıdaki her filamente tıklayın" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"%s filamenti, %s AMS yuvasındaki filamentle eşleşmiyor. AMS yuvası atamasını " +"desteklemek için lütfen yazıcının ürün yazılımını güncelleyin." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Filament, AMS yuvasındaki filamentle eşleşmiyor. AMS yuvası atamasını " +"desteklemek için lütfen yazıcının ürün yazılımını güncelleyin." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS slot." +msgstr "" +"Yazıcı ürün yazılımı yalnızca filament => AMS yuvasının sıralı eşlemesini " +"destekler." + +msgid "An SD card needs to be inserted before printing." +msgstr "Yazdırmadan önce bir SD kartın takılması gerekir." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"Seçilen yazıcı (%s), dilimleyicideki (%s) seçilen yazıcı profiliyle uyumlu " +"değil." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "Hızlandırılmış çekim kaydetmek için bir SD kartın takılması gerekir." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Yazdırma işi, ürün yazılımının güncellenmesi gereken bir yazıcıya " +"gönderilemiyor." + +msgid "Cannot send the print job for empty plate" +msgstr "Boş kalıp için yazdırma işi gönderilemiyor" + +msgid "This printer does not support printing all plates" +msgstr "Bu yazıcı tüm kalıpların yazdırılmasını desteklemiyor" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"Spiral vazo modu etkinleştirildiğinde, I3 yapısına sahip makineler zaman " +"atlamalı videolar oluşturmayacaktır." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Timelapse desteklenmiyor çünkü Baskı sıralaması \"Nesneye\" göre olarak " +"ayarlandı." + +msgid "Errors" +msgstr "Hatalar" + +msgid "Please check the following:" +msgstr "Lütfen aşağıdakileri kontrol edin:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"G Kodu oluşturulurken seçilen yazıcı türü mevcut seçili yazıcıyla tutarlı " +"değil. Dilimleme için aynı yazıcı tipini kullanmanız tavsiye edilir." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to start " +"printing." +msgstr "" +"AMS eşlemelerinde bazı bilinmeyen filamentler var. Lütfen bunların gerekli " +"filamentler olup olmadığını kontrol edin. Sorun yoksa, yazdırmayı başlatmak " +"için \"Onayla\"ya basın." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "önceden ayarlanmış nozul: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "hafızaya alınan nozul: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Dilimlenmiş dosyadaki nozül çapınız hafızaya alınan nozül ile tutarlı değil. " +"Püskürtme ucunuzu yakın zamanda değiştirdiyseniz ayarları değiştirmek için " +"lütfen Cihaz > Yazıcı Parçaları’na gidin." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Yüksek sıcaklıktaki malzemeyi (%s malzeme) %s ile yazdırmak püskürtme ucu " +"hasarına neden olabilir" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "Lütfen yukarıdaki hatayı düzeltin, aksi takdirde yazdırma devam edemez." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "" +"Hala yazdırma işlemine devam etmek istiyorsanız lütfen onayla düğmesine " +"tıklayın." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "Yazıcıya bağlanılıyor. Bağlantı işlemi sırasında iptal edilemiyor." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Kullanmaya dikkat edin! Dokulu PEI Plakasındaki akış kalibrasyonu, dağınık " +"yüzey nedeniyle başarısız olabilir." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Mikro Lidar kullanarak otomatik akış kalibrasyonu" + +msgid "Modifying the device name" +msgstr "Cihaz adını değiştir" + +msgid "Bind with Pin Code" +msgstr "Pin Koduyla Bağla" + +msgid "Send to Printer SD card" +msgstr "Yazıcı SD kartına gönder" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "Yükseltme devam ederken yazdırma görevi gönderilemiyor" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "Seçilen yazıcı, seçilen yazıcı ön ayarlarıyla uyumlu değil." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "Yazıcı SD kartına gönderilmeden önce bir SD kartın takılması gerekir." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "Yazıcının Snapmaker Orca ile aynı LAN'da olması gerekir." + +msgid "The printer does not support sending to printer SD card." +msgstr "Yazıcı, yazıcı SD kartına gönderimi desteklemiyor." + +msgid "Slice ok." +msgstr "Dilimleme tamam." + +msgid "View all Daily tips" +msgstr "Tüm Günlük ipuçlarını görüntüleyin" + +msgid "Failed to create socket" +msgstr "Soket oluşturulamadı" + +msgid "Failed to connect socket" +msgstr "Soket bağlanamadı" + +msgid "Failed to publish login request" +msgstr "Giriş isteği yayınlanamadı" + +msgid "Get ticket from device timeout" +msgstr "Cihaz zaman aşımından bilet al" + +msgid "Get ticket from server timeout" +msgstr "Sunucu zaman aşımından bilet al" + +msgid "Failed to post ticket to server" +msgstr "Sunucuya bilet gönderilemedi" + +msgid "Failed to parse login report reason" +msgstr "Giriş raporu nedeni ayrıştırılamadı" + +msgid "Receive login report timeout" +msgstr "Giriş raporu alma zaman aşımı" + +msgid "Unknown Failure" +msgstr "Bilinmeyen Arıza" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Lütfen yazıcı ekranındaki Hesap sayfasında Pin Kodunu bulun,\n" +" ve aşağıya Pin Kodunu yazın." + +msgid "Can't find Pin Code?" +msgstr "Pin Kodunu bulamıyor musunuz?" + +msgid "Pin Code" +msgstr "Pin Kodu" + +msgid "Binding..." +msgstr "Bağlanıyor…" + +msgid "Please confirm on the printer screen" +msgstr "Lütfen yazıcı ekranında onaylayın" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Giriş başarısız oldu. Lütfen Pin Kodunu kontrol edin." + +msgid "Log in printer" +msgstr "Yazıcıda oturum aç" + +msgid "Would you like to log in this printer with current account?" +msgstr "Bu yazıcıda geçerli hesapla oturum açmak ister misiniz?" + +msgid "Check the reason" +msgstr "Sebebini kontrol edin" + +msgid "Read and accept" +msgstr "Oku ve kabul et" + +msgid "Terms and Conditions" +msgstr "Şartlar ve koşullar" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Bir Bambu Lab cihazı satın aldığınız için teşekkür ederiz.Bambu Lab " +"cihazınızı kullanmadan önce lütfen şartlar ve koşulları okuyun.Bambu Lab " +"cihazınızı kullanmayı kabul etmek için tıklayarak, Gizlilik Politikasına ve " +"Kullanım Koşullarına (topluca \"Şartlar\" olarak anılacaktır) uymayı kabul " +"etmiş olursunuz. \"). Bambu Lab Gizlilik Politikasına uymuyorsanız veya bu " +"Politikayı kabul etmiyorsanız lütfen Bambu Lab ekipmanlarını ve hizmetlerini " +"kullanmayın." + +msgid "and" +msgstr "ve" + +msgid "Privacy Policy" +msgstr "Gizlilik Politikası" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Herkesin yazıcısını geliştirmek için yardımınızı istiyoruz" + +msgid "Statement about User Experience Improvement Program" +msgstr "Kullanıcı Deneyimini İyileştirme Programına İlişkin Açıklama" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will not " +"collect any Personal Data by which an individual can be identified directly " +"or indirectly, including without limitation names, addresses, payment " +"information, or phone numbers. By enabling this service, you agree to these " +"terms and the statement about Privacy Policy." +msgstr "" +"3D Baskı topluluğunda, kendi dilimleme parametrelerimizi ve ayarlarımızı " +"düzenlerken birbirimizin başarılarından ve başarısızlıklarından öğreniyoruz. " +"%s aynı prensibi takip ediyor ve kullanıcılarımızın yaptığı çok sayıda " +"baskının başarı ve başarısızlıklarından performansını artırmak için " +"yazıcıöğrenimini kullanıyor. %s'yi gerçek dünya verileriyle besleyerek daha " +"akıllı olmaları için eğitiyoruz. İsterseniz bu hizmet, hata günlüklerinizden " +"ve kullanım günlüklerinizden, Gizlilik Politikasında açıklanan bilgileri de " +"içerebilecek bilgilere erişecektir. İsimler, adresler, ödeme bilgileri veya " +"telefon numaraları dahil ancak bunlarla sınırlı olmamak üzere, bir bireyin " +"doğrudan veya dolaylı olarak tanımlanmasını sağlayacak hiçbir Kişisel Veri " +"toplamayacağız. Bu hizmeti etkinleştirerek bu şartları ve Gizlilik " +"Politikasına ilişkin beyanı kabul etmiş olursunuz." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Kullanıcı Deneyimi İyileştirme Planına İlişkin Açıklama" + +msgid "Log in successful." +msgstr "Giriş başarılı." + +msgid "Log out printer" +msgstr "Yazıcıdan çıkış yap" + +msgid "Would you like to log out the printer?" +msgstr "Yazıcıdaki oturumu kapatmak ister misiniz?" + +msgid "Please log in first." +msgstr "Lütfen önce giriş yapın." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "Yazıcıya bağlanırken bir sorun oluştu. Lütfen tekrar deneyin." + +msgid "Failed to log out." +msgstr "Oturum kapatılamadı." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Mevcut %s kaydet" + +msgid "Delete this preset" +msgstr "Bu ön ayarı sil" + +msgid "Search in preset" +msgstr "Ön ayarda ara" + +msgid "Click to reset all settings to the last saved preset." +msgstr "Tüm ayarları en son kaydedilen ön ayara sıfırlamak için tıklayın." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the model " +"without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"Sorunsuz timeplace için Prime Tower gereklidir. Prime tower olmayan modelde " +"kusurlar olabilir. Prime tower'ı devre dışı bırakmak istediğinizden emin " +"misiniz?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the model " +"without prime tower. Do you want to enable prime tower?" +msgstr "" +"Sorunsuz hızlandırılmış çekim için Prime Tower gereklidir. Prime tower " +"olmayan modelde kusurlar olabilir. Prime tower'ı etkinleştirmek istiyor " +"musunuz?" + +msgid "Still print by object?" +msgstr "Hala nesneye göre yazdırıyor musunuz?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Daha küçük destek hacmine ancak daha zayıf güce sahip deneysel bir tarz olan " +"\"Tree Slim\" ekledik.\n" +"Şunlarla kullanmanızı öneririz: 0 arayüz katmanı, 0 üst mesafe, 2 duvar." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Bu ayarlar otomatik olarak değiştirilsin mi?\n" +"Evet - Bu ayarları otomatik olarak değiştir\n" +"Hayır - Bu ayarları benim için değiştirme" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or using " +"support materials on interface." +msgstr "" +"\"Güçlü Ağaç\" ve \"Ağaç Hibrit\" stilleri için şu ayarları öneriyoruz: en az " +"2 arayüz katmanı, en az 0,1 mm üst z mesafesi veya arayüzde destek " +"malzemeleri kullanılması." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"Destek arayüzü için destek materyali kullanırken aşağıdaki ayarları " +"öneriyoruz:\n" +"0 üst z mesafesi, 0 arayüz aralığı, eş merkezli desen ve bağımsız destek " +"katmanı yüksekliğini devre dışı bırakma" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"Bu seçeneğin etkinleştirilmesi modelin şeklini değiştirecektir. Baskınız " +"kesin boyutlar gerektiriyorsa veya bir montajın parçasıysa geometrideki bu " +"değişikliğin baskınızın işlevselliğini etkileyip etkilemediğini bir kez daha " +"kontrol etmeniz önemlidir." + +msgid "Are you sure you want to enable this option?" +msgstr "Bu seçeneği etkinleştirmek istediğinizden emin misiniz?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"Katman yüksekliği çok küçük.\n" +"min_layer_height olarak ayarlanacak\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"Katman yüksekliği, Yazıcı Ayarları -> Ekstruder -> Katman yüksekliği " +"sınırları bölümündeki sınırı aşıyor bu durum baskı kalitesi sorunlarına neden " +"olabilir." + +msgid "Adjust to the set range automatically? \n" +msgstr "Ayarlanan aralığa otomatik olarak ayarlansın mı? \n" + +msgid "Adjust" +msgstr "Ayarla" + +msgid "Ignore" +msgstr "Atla" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications." +msgstr "" +"Deneysel özellik: Filament değişiklikleri sırasında, floşu en aza indirmek " +"için filamanı daha büyük bir mesafeden geri çekmek ve kesmek. Flush’u önemli " +"ölçüde azaltabilmesine rağmen, aynı zamanda nozül tıkanmaları veya diğer " +"yazdırma komplikasyonları riskini de artırabilir." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Deneysel özellik: Filament değişiklikleri sırasında, filamanın en aza " +"indirilmesi için filamanın daha büyük bir mesafeden geri çekilmesi ve " +"kesilmesi. Akmayı önemli ölçüde azaltabilmesine rağmen, aynı zamanda " +"püskürtme uçları tıkanması veya diğer yazdırma komplikasyonları riskini de " +"artırabilir. Lütfen en son yazıcı ürün yazılımını kullanın." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive\"-" +">\"Timelapse Wipe Tower\"." +msgstr "" +"Araç başlığı olmadan timelapse kaydederken, bir \"Timelapse Wipe Tower\" " +"eklenmesi önerilir.\n" +"Yapı plakasının boş konumuna sağ tıklayın ve \"İlkel Ekle\" -> \"Timelapse " +"Temizleme Kulesi\" seçeneğini seçin." + +msgid "Line width" +msgstr "Katman Genişliği" + +msgid "Seam" +msgstr "Dikiş" + +msgid "Precision" +msgstr "Hassasiyet" + +msgid "Wall generator" +msgstr "Duvar Türü" + +msgid "Walls and surfaces" +msgstr "Duvarlar ve Yüzeyler" + +msgid "Bridging" +msgstr "Köprüleme" + +msgid "Overhangs" +msgstr "Çıkıntılar" + +msgid "Walls" +msgstr "Duvarlar" + +msgid "Top/bottom shells" +msgstr "Alt / Üst Katmanlar" + +msgid "Initial layer speed" +msgstr "Başlangıç Katmanı" + +msgid "Other layers speed" +msgstr "Diğer Katmanlar" + +msgid "Overhang speed" +msgstr "Çıkıntı Hızı" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Bu, çeşitli sarkma dereceleri için hızdır. Çıkıntı dereceleri çizgi " +"genişliğinin yüzdesi olarak ifade edilir. 0 hız, sarkma derecesi aralığı için " +"yavaşlamanın olmadığı anlamına gelir ve duvar hızı kullanılır" + +msgid "Bridge" +msgstr "Köprü" + +msgid "Set speed for external and internal bridges" +msgstr "Harici ve dahili köprüler için hızı ayarlayın" + +msgid "Travel speed" +msgstr "Seyahat Hızı" + +msgid "Acceleration" +msgstr "Hızlanma" + +msgid "Jerk(XY)" +msgstr "Sarsıntı(XY)" + +msgid "Raft" +msgstr "Raft" + +msgid "Support filament" +msgstr "Destek Filamenti" + +msgid "Tree supports" +msgstr "Ağaç destekler" + +msgid "Skirt" +msgstr "Etek" + +msgid "Prime tower" +msgstr "Prime Kulesi" + +msgid "Special mode" +msgstr "Özel Mod" + +msgid "G-code output" +msgstr "G Kodu Çıktısı" + +msgid "Post-processing Scripts" +msgstr "İşlem Sonrası Komut Dosyaları" + +msgid "Notes" +msgstr "Notlar" + +msgid "Frequent" +msgstr "Sıklıkla" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"Aşağıdaki %s satırı ayrılmış anahtar kelimeler içeriyor.\n" +"Lütfen onu kaldırın, aksi takdirde G kodu görselleştirmesini ve yazdırma " +"süresi tahminini geçeceksiniz." +msgstr[1] "" +"Aşağıdaki satırlar %s ayrılmış anahtar sözcükler içeriyor.\n" +"Lütfen bunları kaldırın, aksi takdirde G kodu görselleştirmesini ve yazdırma " +"süresi tahminini geçeceksiniz." + +msgid "Reserved keywords found" +msgstr "Ayrılmış anahtar kelimeler bulundu" + +msgid "Setting Overrides" +msgstr "Ayarların Üzerine Yazma" + +msgid "Retraction" +msgstr "Geri Çekme" + +msgid "Basic information" +msgstr "Temel Bilgiler" + +msgid "Recommended nozzle temperature" +msgstr "Önerilen nozul sıcaklığı" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Bu filamentin önerilen Nozul sıcaklığı aralığı. 0 ayar yok anlamına gelir" + +msgid "Print chamber temperature" +msgstr "Baskı Odası Sıcaklığı" + +msgid "Print temperature" +msgstr "Yazdırma Sıcaklığı" + +msgid "Nozzle" +msgstr "Nozul" + +msgid "Nozzle temperature when printing" +msgstr "Yazdırma sırasında nozul sıcaklığı" + +msgid "Cool plate" +msgstr "Soğuk plaka" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament does " +"not support to print on the Cool Plate" +msgstr "" +"Soğutma plakası takıldığında yatak sıcaklığı. 0 değeri, filamentin Cool Plate " +"üzerine yazdırmayı desteklemediği anlamına gelir" + +msgid "Textured Cool plate" +msgstr "Dokulu Soğuk Plaka" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" +"Soğuk plaka takıldığında yatak sıcaklığı. 0 Değeri, filamentin Dokulu Soğuk " +"Plaka üzerine yazdırmayı desteklemediği anlamına gelir." + +msgid "Engineering plate" +msgstr "Mühendislik plakası" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Mühendislik plakası takıldığında yatak sıcaklığı. Değer 0, filamentin " +"Mühendislik Plakasına yazdırmayı desteklemediği anlamına gelir" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Düz PEI Plakası / Yüksek Sıcaklık Plakası" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Düz PEI Plakası/Yüksek Sıcaklık Plakası takılığın da yatak sıcaklığı. 0 " +"Değeri, filamentin Düz PEI Plakası/Yüksek Sıcaklık Plakası üzerin de baskı " +"yapmayı desteklemediği anlamına gelir." + +msgid "Textured PEI Plate" +msgstr "Dokulu PEI Plaka" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Dokulu PEI Plaka takıldığın da yatak sıcaklığı. 0 Değeri, filamentin Dokulu " +"PEI Plaka üzerine yazdırmayı desteklemediği anlamına gelir" + +msgid "Volumetric speed limitation" +msgstr "Hacimsel Hız Sınırlaması" + +msgid "Cooling" +msgstr "Soğutma" + +msgid "Cooling for specific layer" +msgstr "Belirli Katman İçin Soğutma" + +msgid "Part cooling fan" +msgstr "Parça Soğutma Fanı" + +msgid "Min fan speed threshold" +msgstr "Minimum fan hızı" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"Tahmini katman süresi ayardaki katman süresinden uzun olmadığında parça " +"soğutma fanı hızı minimum hızda çalışmaya başlayacaktır. Katman süresi " +"eşikten kısa olduğunda fan hızı, katman yazdırma süresine göre minimum ve " +"maksimum fan hızı arasında enterpole edilir" + +msgid "Max fan speed threshold" +msgstr "Maksimum fan hızı" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"Tahmini katman süresi ayar değerinden kısa olduğunda parça soğutma fanı hızı " +"maksimum olacaktır" + +msgid "Auxiliary part cooling fan" +msgstr "Yardımcı parça soğutma fanı" + +msgid "Exhaust fan" +msgstr "Egzos Fanı" + +msgid "During print" +msgstr "Baskı boyunca" + +msgid "Complete print" +msgstr "Tam baskı" + +msgid "Filament start G-code" +msgstr "Filament Başlangıç G Kodu" + +msgid "Filament end G-code" +msgstr "Filament Bitiş G Kodu" + +msgid "Multimaterial" +msgstr "Çoklu Malzeme" + +msgid "Wipe tower parameters" +msgstr "Silme Kulesi Parametreleri" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "Tek Ekstruderli MM Yazıcılarda Araç Değiştirme Parametreleri" + +msgid "Ramming settings" +msgstr "Sıkıştırma ayarları" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "Çoklu Ekstruder MM Yazıcılarda Araç Değiştirme Parametreleri" + +msgid "Printable space" +msgstr "Plaka Ayarı" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "%1% parametresi için geçersiz değer sağlandı: %2%" + +msgid "G-code flavor is switched" +msgstr "G-kod çeşidi değiştirildi" + +msgid "Cooling Fan" +msgstr "Soğutucu Fan" + +msgid "Fan speed-up time" +msgstr "Fan hızlanma süresi" + +msgid "Extruder Clearance" +msgstr "Ekstruder Boşluğu" + +msgid "Adaptive bed mesh" +msgstr "Uyarlanabilir Yatak Ağı" + +msgid "Accessory" +msgstr "Aksesuar" + +msgid "Machine gcode" +msgstr "Yazıcı G-kod" + +msgid "Machine start G-code" +msgstr "Yazıcı Başlangıç G-kod" + +msgid "Machine end G-code" +msgstr "Yazıcı Bitiş G-kod" + +msgid "Printing by object G-code" +msgstr "Nesneye Göre Yazdırma G-kod" + +msgid "Before layer change G-code" +msgstr "Katman Değişimi Öncesi G-kod" + +msgid "Layer change G-code" +msgstr "Katman Değişimi G-kod" + +msgid "Time lapse G-code" +msgstr "Time Lapse G-code" + +msgid "Change filament G-code" +msgstr "Filament Değişimi G-kod" + +msgid "Change extrusion role G-code" +msgstr "Ekstrüzyon Rolü G-kodu Değiştirme" + +msgid "Pause G-code" +msgstr "Duraklatma G-Kod" + +msgid "Template Custom G-code" +msgstr "Şablon Özel G-kod" + +msgid "Motion ability" +msgstr "Hareket" + +msgid "Normal" +msgstr "Normal" + +msgid "Speed limitation" +msgstr "Hız Sınırlaması" + +msgid "Acceleration limitation" +msgstr "Hızlanma Sınırlaması" + +msgid "Jerk limitation" +msgstr "Sarsıntı Sınırlaması" + +msgid "Single extruder multimaterial setup" +msgstr "Tek Ekstruder Çoklu Malzeme Kurulumu" + +msgid "Wipe tower" +msgstr "Silme Kulesi" + +msgid "Single extruder multimaterial parameters" +msgstr "Tek Ekstruder Çoklu Malzeme Parametreleri" + +msgid "Layer height limits" +msgstr "Katman Yüksekliği Sınırları" + +msgid "Lift Z Enforcement" +msgstr "Z Kaldırma Uygulaması" + +msgid "Retraction when switching material" +msgstr "Malzemeyi Değiştirirken Geri Çekme" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"Yazılımsal Geri Çekme modunu kullanırken Temizleme seçeneği kullanılamaz.\n" +"\n" +"Yazılımsal Geri Çekmeyi etkinleştirmek için bunu devre dışı bırakmalı mıyım?" + +msgid "Firmware Retraction" +msgstr "Yazılımsal Geri Çekme" + +msgid "Detached" +msgstr "Söküldü" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"%d Filament Ön Ayarı ve %d İşlem Ön Ayarı bu yazıcıya eklenmiştir.Yazıcı " +"silinirse bu ön ayarlar silinir." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "Diğer ön ayarlar tarafından devralınan ön ayarlar silinemez!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Aşağıdaki ön ayarlar bu ön ayarı devralır." +msgstr[1] "Aşağıdaki ön ayar bu ön ayarı devralır." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Ön Ayar" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "Aşağıdaki ön ayar da silinecektir." +msgstr[1] "Aşağıdaki ön ayarlar da silinecektir." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Seçilen ön ayarı silmek istediğinizden emin misiniz? \n" +"Eğer ön ayar, şu anda yazıcınızda kullanılan bir filamente karşılık " +"geliyorsa, lütfen o slot için filament bilgilerini sıfırlayın." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Seçilen ön ayarı %1% yaptığınızdan emin misiniz?" + +msgid "All" +msgstr "Tümü" + +msgid "Set" +msgstr "Ayarla" + +msgid "Click to reset current value and attach to the global value." +msgstr "Geçerli değeri sıfırlamak ve genel değere eklemek için tıklayın." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Geçerli değişikliği bırakmak ve kaydedilen değere sıfırlamak için tıklayın." + +msgid "Process Settings" +msgstr "İşlem Ayarları" + +msgid "Undef" +msgstr "Tanımsız" + +msgid "Unsaved Changes" +msgstr "Kaydedilmemiş Değişiklikler" + +msgid "Transfer or discard changes" +msgstr "Değişiklikleri Çıkart veya Sakla" + +msgid "Old Value" +msgstr "Eski Değer" + +msgid "New Value" +msgstr "Yeni değer" + +msgid "Transfer" +msgstr "Aktar" + +msgid "Don't save" +msgstr "Kaydetme" + +msgid "Discard" +msgstr "Çıkart" + +msgid "Click the right mouse button to display the full text." +msgstr "Tam metni görüntülemek için farenin sağ tuşuna tıklayın." + +msgid "All changes will not be saved" +msgstr "Tüm değişiklikler kaydedilmeyecek" + +msgid "All changes will be discarded." +msgstr "Tüm değişiklikler iptal edilecek." + +msgid "Save the selected options." +msgstr "Seçilen seçenekleri kaydedin." + +msgid "Keep the selected options." +msgstr "Seçilen seçenekleri sakla." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Seçilen seçenekleri yeni seçilen ön ayara aktarın." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Seçilen seçenekleri ön ayara kaydedin\n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Seçilen seçenekleri yeni seçilen ön ayara aktarın\n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "\"%1%\" ön ayarı aşağıdaki kaydedilmemiş değişiklikleri içeriyor:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it contains " +"the following unsaved changes:" +msgstr "" +"Ön ayar \"%1%\", yeni yazıcı profiliyle uyumlu değil ve aşağıdaki " +"kaydedilmemiş değişiklikleri içeriyor:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it contains " +"the following unsaved changes:" +msgstr "" +"Ön ayar \"%1%\", yeni işlem profiliyle uyumlu değil ve aşağıdaki " +"kaydedilmemiş değişiklikleri içeriyor:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "“%1%” ön ayarının bazı ayarlarını değiştirdiniz." + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"Değiştirdiğiniz ön ayar değerlerini kaydedebilir veya silebilirsiniz." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" +"\n" +"Değiştirdiğiniz ön ayar değerlerini kaydedebilir veya atabilirsiniz ya da " +"değiştirdiğiniz değerleri yeni ön ayara aktarmayı seçebilirsiniz." + +msgid "You have previously modified your settings." +msgstr "Daha önce ayarlarınızı değiştirdiniz." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"Değiştirdiğiniz ön ayar değerlerini atabilir veya değiştirilen değerleri yeni " +"projeye aktarmayı seçebilirsiniz." + +msgid "Extruders count" +msgstr "Ekstruder sayısı" + +msgid "General" +msgstr "Genel" + +msgid "Capabilities" +msgstr "Yetenekler" + +msgid "Show all presets (including incompatible)" +msgstr "Tüm ön ayarları göster (uyumsuz olanlar dahil)" + +msgid "Select presets to compare" +msgstr "Karşılaştırılacak ön ayarları seçin" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" +"Değiştirildiği için yalnızca mevcut etkin profile aktarım yapabilirsiniz." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close this " +"dialog." +msgstr "" +"Seçilen seçenekleri sol ön ayardan sağa aktarın.\n" +"Not: Bu iletişim kutusunu kapattıktan sonra ayarlar sekmelerinde değiştirilen " +"yeni ön ayarlar seçilecektir." + +msgid "Transfer values from left to right" +msgstr "Değerleri soldan sağa aktarın" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left to " +"right preset." +msgstr "" +"Etkinleştirilirse, bu iletişim kutusu seçilen değerleri soldan sağa ön ayara " +"aktarmak için kullanılabilir." + +msgid "Add File" +msgstr "Dosya Ekle" + +msgid "Set as cover" +msgstr "Kapak olarak ayarla" + +msgid "Cover" +msgstr "Kapak" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "\"%1%\" adı zaten mevcut." + +msgid "Basic Info" +msgstr "Temel bilgi" + +msgid "Pictures" +msgstr "Resimler" + +msgid "Bill of Materials" +msgstr "Malzeme Listesi" + +msgid "Assembly Guide" +msgstr "Montaj Kılavuzu" + +msgid "Author" +msgstr "Yazar" + +msgid "Model Name" +msgstr "Model adı" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Güncelleme" + +msgid "A new version is available" +msgstr "Yeni bir sürüm mevcut" + +msgid "Configuration update" +msgstr "Yapılandırma güncellemesi" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "Yeni bir konfigürasyon paketi mevcut. Kurmak istiyor musunuz?" + +msgid "Description:" +msgstr "Açıklama:" + +msgid "Configuration incompatible" +msgstr "Yapılandırma uyumsuz" + +msgid "the configuration package is incompatible with current application." +msgstr "yapılandırma paketi mevcut uygulamayla uyumlu değil." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"Yapılandırma paketi mevcut uygulamayla uyumlu değil.\n" +"%s yapılandırma paketini güncelleyecek, Aksi halde başlatılamayacak" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "%s'den çık" + +msgid "the Configuration package is incompatible with current APP." +msgstr "yapılandırma paketi mevcut APP ile uyumlu değil." + +msgid "Configuration updates" +msgstr "Yapılandırma güncellemeleri" + +msgid "No updates available." +msgstr "Güncelleme mevcut değil." + +msgid "The configuration is up to date." +msgstr "Yapılandırma güncel." + +msgid "Obj file Import color" +msgstr "Obj dosyası renkli olarak içe aktar" + +msgid "Specify number of colors:" +msgstr "Renk sayısını belirtin:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "Renk sayısı aralıkta olmalıdır [%d, %d]." + +msgid "Recommended " +msgstr "Tavsiye edilir " + +msgid "Current filament colors:" +msgstr "Mevcut filament renkleri:" + +msgid "Quick set:" +msgstr "Hızlı ayar:" + +msgid "Color match" +msgstr "Renk uyumu" + +msgid "Approximate color matching." +msgstr "Yaklaşık renk eşleşmesi." + +msgid "Append" +msgstr "Ekle" + +msgid "Add consumable extruder after existing extruders." +msgstr "Mevcut ekstrüderlerden sonra yeni sarf malzemesi ekstrüderi ekleyin." + +msgid "Reset mapped extruders." +msgstr "Eşlenmiş ekstrüderleri sıfırlayın." + +msgid "Cluster colors" +msgstr "Küme renkleri" + +msgid "Map Filament" +msgstr "Filamenti Eşle" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Not: Renk seçildi, devam etmek için Tamam'ı seçebilirsiniz\n" +" veya manuel olarak ayarlayabilirsiniz." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Uyarı: Yeni eklenen ve\n" +" mevcut ekstrüderlerin sayısı 16'yı aşıyor." + +msgid "Ramming customization" +msgstr "Sıkıştırma özelleştirme" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the unloaded " +"filament so it does not prevent insertion of the new filament and can itself " +"be reinserted later. This phase is important and different materials can " +"require different extrusion speeds to get the good shape. For this reason, " +"the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"Sıkıştırma, tek ekstruderli bir MM yazıcıda takım değişiminden hemen önce " +"yapılan hızlı ekstrüzyonu ifade eder. Amacı, yeni filamentin " +"yerleştirilmesini engellememesi ve daha sonra yeniden yerleştirilebilmesi " +"için boşaltılmış filamentin ucunu düzgün bir şekilde şekillendirmektir. Bu " +"aşama önemlidir ve farklı malzemeler iyi bir şekil elde etmek için farklı " +"ekstrüzyon hızları gerektirebilir. Bu nedenle, sıkıştırma sırasındaki " +"ekstrüzyon hızları ayarlanabilir.\n" +"\n" +"Bu uzman düzeyinde bir ayardır, yanlış ayarlama muhtemelen sıkışmalara, " +"ekstruder tekerleğinin filamente sürtünmesine vb. yol açacaktır." + +msgid "Total ramming time" +msgstr "Toplam sıkıştırma süresi" + +msgid "s" +msgstr "s" + +msgid "Total rammed volume" +msgstr "Toplam sıkıştırılmış hacim" + +msgid "Ramming line width" +msgstr "Sıkıştırma hattı genişliği" + +msgid "Ramming line spacing" +msgstr "Sıkıştırma hattı aralığı" + +msgid "Auto-Calc" +msgstr "Otomatik Hesaplama" + +msgid "Re-calculate" +msgstr "Tekrar Hesaplama" + +msgid "Flushing volumes for filament change" +msgstr "Filament değişimi için temizleme hacmi" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Orca, filamentlerin rengi her değiştiğinde yıkama hacimlerinizi yeniden " +"hesaplar. Otomatik hesaplamayı Snapmaker Orca > Tercihler bölümünden devre dışı " +"bırakabilirsiniz." + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Her filament çifti için yıkama hacmi (mm³)." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Öneri: Yıkama Hacmi [%d, %d] aralığında" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "Çarpan [%.2f, %.2f] aralığında olmalıdır." + +msgid "Multiplier" +msgstr "Çarpan" + +msgid "unloaded" +msgstr "boşaltılmış" + +msgid "loaded" +msgstr "yüklenmiş" + +msgid "Filament #" +msgstr "Filament #" + +msgid "From" +msgstr "İtibaren" + +msgid "To" +msgstr "İle" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" +"Bu görev için Windows Media Player gereklidir! İşletim sisteminiz için " +"‘Windows Media Player’ı etkinleştirmek istiyor musunuz?" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes to " +"re-register it. You will be promoted twice" +msgstr "" +"BambuSource medya oynatımı için doğru şekilde kaydedilmemiş! Yeniden " +"kaydetmek için Evet’e basın." + +msgid "" +"Missing BambuSource component registered for media playing! Please re-install " +"BambuStutio or seek after-sales help." +msgstr "" +"Medya oynatma için kayıtlı BambuSource bileşeni eksik! Lütfen BambuStutio’yu " +"yeniden yükleyin veya satış sonrası yardım isteyin." + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" +"Farklı bir kurulumdan bir BambuSource kullanıyorsunuz, video oynatma doğru " +"çalışmayabilir! Düzeltmek için Evet’e basın." + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to play " +"video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-libav " +"packages, then restart Snapmaker Orca?)" +msgstr "" +"Sisteminizde video oynatmak için gerekli olan GStreamer H.264 codec " +"bileşenleri eksik. (gstreamer1.0-plugins-bad veya gstreamer1.0-libav " +"paketlerini kurmayı deneyin, ardından Snapmaker Orca’ı yeniden başlatın)" + +msgid "Bambu Network plug-in not detected." +msgstr "Bambu Ağı eklentisi algılanmadı." + +msgid "Click here to download it." +msgstr "İndirmek için buraya tıklayın." + +msgid "Login" +msgstr "Giriş yap" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "Yapılandırma paketi önceki Yapılandırma Kılavuzu'nda değiştirildi" + +msgid "Configuration package changed" +msgstr "Yapılandırma paketi değiştirildi" + +msgid "Toolbar" +msgstr "Araç Çubuğu" + +msgid "Objects list" +msgstr "Nesne listesi" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "STL/STEP/3MF/OBJ/AMF dosyalarından geometri verilerini içe aktarın" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Panodan yapıştır" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "3Dconnexion cihazları ayarları iletişim kutusunu Göster/Gizle" + +msgid "Switch table page" +msgstr "Tablo sayfasını değiştir" + +msgid "Show keyboard shortcuts list" +msgstr "Klavye kısayolları listesini göster" + +msgid "Global shortcuts" +msgstr "Genel kısayollar" + +msgid "Rotate View" +msgstr "Görüntüyü döndür" + +msgid "Pan View" +msgstr "Pan Görünümü" + +msgid "Mouse wheel" +msgstr "Fare tekerleği" + +msgid "Zoom View" +msgstr "Zoom Görünümü" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Seçilen nesneleri veya tüm nesneleri otomatik olarak yönlendirir. Seçilen " +"nesneler varsa, yalnızca seçilenleri yönlendirir. Aksi takdirde, geçerli " +"diskteki tüm nesneleri yönlendirir." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Kenar çubuğunu daralt/genişlet" + +msgid "⌘+Any arrow" +msgstr "⌘+Herhangi bir ok" + +msgid "Movement in camera space" +msgstr "Kamera alanında hareket" + +msgid "⌥+Left mouse button" +msgstr "⌥+Sol fare düğmesi" + +msgid "Select a part" +msgstr "Parça seçin" + +msgid "⌘+Left mouse button" +msgstr "⌘+Sol fare düğmesi" + +msgid "Select multiple objects" +msgstr "Birden fazla nesne seç" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+Herhangi bir yön tuşu" + +msgid "Alt+Left mouse button" +msgstr "Alt+Sol fare düğmesi" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+Sol fare düğmesi" + +msgid "Shift+Left mouse button" +msgstr "Shift+Sol fare düğmesi" + +msgid "Select objects by rectangle" +msgstr "Nesneleri dikdörtgene göre seç" + +msgid "Arrow Up" +msgstr "Yukarı ok" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Seçimi pozitif Y yönünde 10 mm taşı" + +msgid "Arrow Down" +msgstr "Aşağı ok" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Seçimi negatif Y yönünde 10 mm taşı" + +msgid "Arrow Left" +msgstr "Sol Yön Tuşu" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Seçimi negatif X yönünde 10 mm taşı" + +msgid "Arrow Right" +msgstr "Sağ Yön Tuşu" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Seçimi pozitif X yönünde 10 mm taşı" + +msgid "Shift+Any arrow" +msgstr "Shift+Herhangi bir ok tuşu" + +msgid "Movement step set to 1 mm" +msgstr "Hareket adımı 1 mm'ye ayarlandı" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "klavye 1-9: nesne/parça için filamenti ayarlayın" + +msgid "Camera view - Default" +msgstr "Kamera görünümü - Varsayılan" + +msgid "Camera view - Top" +msgstr "Kamera görünümü - Üst" + +msgid "Camera view - Bottom" +msgstr "Kamera görünümü - Alt" + +msgid "Camera view - Front" +msgstr "Kamera görünümü - Ön" + +msgid "Camera view - Behind" +msgstr "Kamera görünümü - Arka" + +msgid "Camera Angle - Left side" +msgstr "Kamera Açısı - Sol" + +msgid "Camera Angle - Right side" +msgstr "Kamera Açısı - Sağ" + +msgid "Select all objects" +msgstr "Tüm nesneleri seç" + +msgid "Gizmo move" +msgstr "Gizmo hareket" + +msgid "Gizmo scale" +msgstr "Gizmo ölçek" + +msgid "Gizmo rotate" +msgstr "Gizmo döndürme" + +msgid "Gizmo cut" +msgstr "Gizmo kesim" + +msgid "Gizmo Place face on bed" +msgstr "Gizmo Yüzünüzü yatağa yerleştirin" + +msgid "Gizmo SLA support points" +msgstr "Gizmo SLA destek noktaları" + +msgid "Gizmo FDM paint-on seam" +msgstr "Gizmo FDM boyalı dikiş" + +msgid "Gizmo Text emboss / engrave" +msgstr "Gizmo Metin kabartma / kazıma" + +msgid "Zoom in" +msgstr "Yakınlaştır" + +msgid "Zoom out" +msgstr "Uzaklaştır" + +msgid "Switch between Prepare/Preview" +msgstr "Hazırlama/Önizleme arasında geçiş yap" + +msgid "Plater" +msgstr "Plakacı" + +msgid "Move: press to snap by 1mm" +msgstr "Hareket Ettir: 1 mm kadar yaslamak için basın" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Fare tekerleği" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Destek/Renkli Boyama: kalem yarıçapını ayarlayın" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Fare tekerleği" + +msgid "Support/Color Painting: adjust section position" +msgstr "Destek/Renkli Boyama: bölüm konumunu ayarlayın" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Fare tekerleği" + +msgid "Alt+Mouse wheel" +msgstr "Alt+Fare tekerleği" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Nesneler ve parçalar için ekstruder numarasını ayarlayın" + +msgid "Delete objects, parts, modifiers " +msgstr "Nesneleri, parçaları, değiştiricileri silin " + +msgid "Select the object/part and press space to change the name" +msgstr "Nesneyi/parçayı seçin ve adını değiştirmek için boşluk tuşuna basın" + +msgid "Mouse click" +msgstr "Fare tıklaması" + +msgid "Select the object/part and mouse click to change the name" +msgstr "Nesneyi/parçayı seçin ve adını değiştirmek için fareye tıklayın" + +msgid "Objects List" +msgstr "Nesne Listesi" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Dikey kaydırıcı - Etkin başparmağı yukarı hareket ettir" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Dikey kaydırıcı - Etkin başparmağı Aşağı hareket ettir" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Yatay kaydırıcı - Etkin başparmağı sola taşı" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Yatay kaydırıcı - Etkin başparmağı sağa taşı" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "Dikey kaydırıcının tek katman modunu açma/kapama" + +msgid "On/Off g-code window" +msgstr "G-kodu penceresini aç/kapat" + +msgid "Move slider 5x faster" +msgstr "Kaydırıcıyı 5 kat daha hızlı hareket ettirin" + +msgid "Shift+Mouse wheel" +msgstr "Shift+Fare tekerleği" + +msgid "Horizontal slider - Move to start position" +msgstr "Yatay kaydırıcı - Başlangıç ​​konumuna taşıyın" + +msgid "Horizontal slider - Move to last position" +msgstr "Yatay kaydırıcı - Son konuma git" + +msgid "Release Note" +msgstr "Sürüm notu" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "sürüm %s güncelleme bilgileri:" + +msgid "Network plug-in update" +msgstr "Ağ eklentisi güncellemesi" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Snapmaker Orca bir sonraki sefer başlatıldığında Ağ eklentisini güncellemek için " +"Tamam'a tıklayın." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "Yeni bir Ağ eklentisi(%s) mevcut, Yüklemek istiyor musunuz?" + +msgid "New version of Snapmaker Orca" +msgstr "Snapmaker Orca’ın yeni versiyonu" + +msgid "Skip this Version" +msgstr "Bu versiyonu atla" + +msgid "Done" +msgstr "Tamamlandı" + +msgid "resume" +msgstr "Devam et" + +msgid "Resume Printing" +msgstr "Yazdırmaya Devam Et" + +msgid "Resume Printing(defects acceptable)" +msgstr "Yazdırmaya Devam Et (kusurlar kabul edilebilir)" + +msgid "Resume Printing(problem solved)" +msgstr "Yazdırmaya Devam Et (sorun çözüldü)" + +msgid "Stop Printing" +msgstr "Yazdırmayı Durdur" + +msgid "Check Assistant" +msgstr "Kontrol Asistanı" + +msgid "Filament Extruded, Continue" +msgstr "Filament Ekstrüde Edildi, Devam Et" + +msgid "Not Extruded Yet, Retry" +msgstr "Henüz Ekstrüde Edilmedi, Tekrar Deneyin" + +msgid "Finished, Continue" +msgstr "Bitti, Devam Et" + +msgid "Load Filament" +msgstr "Filament Yükle" + +msgid "Filament Loaded, Resume" +msgstr "Filament Yüklendi, Devam Et" + +msgid "View Liveview" +msgstr "Canlı Önizlemeyi Görüntüle" + +msgid "Confirm and Update Nozzle" +msgstr "Nozulu Onaylayın ve Güncelleyin" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "LAN Bağlantısı Başarısız (Yazdırma dosyası gönderiliyor)" + +msgid "Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Adım 1, lütfen Snapmaker Orca ile yazıcınızın aynı LAN'da olduğunu doğrulayın." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Adım 2, aşağıdaki IP ve Erişim Kodu yazıcınızdaki gerçek değerlerden " +"farklıysa lütfen bunları düzeltin." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Giriş kodu" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Yazıcınızın IP'sini ve Erişim Kodunu nerede bulabilirsiniz?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"Adım 3: Paket kaybını ve gecikmeyi kontrol etmek için IP adresine ping atın." + +msgid "Test" +msgstr "Test" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP ve Erişim Kodu Doğrulandı! Pencereyi kapatabilirsin" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "" +"Bağlantı başarısız oldu, lütfen IP'yi ve Erişim Kodunu tekrar kontrol edin" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"Bağlantı başarısız oldu! IP'niz ve Erişim Kodunuz doğruysa \n" +"ağ sorunlarını gidermek için lütfen 3. adıma geçin" + +msgid "Model:" +msgstr "Model:" + +msgid "Serial:" +msgstr "Seri:" + +msgid "Version:" +msgstr "Sürüm:" + +msgid "Update firmware" +msgstr "Ürün yazılımını güncelle" + +msgid "Beta version" +msgstr "Beta sürüm" + +msgid "Latest version" +msgstr "Son sürüm" + +msgid "Updating" +msgstr "Güncelleniyor" + +msgid "Updating failed" +msgstr "Güncelleme başarısız oldu" + +msgid "Updating successful" +msgstr "Güncelleme başarılı" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not turn " +"off the power while the printer is updating." +msgstr "" +"Güncellemek istediğinizden emin misiniz? Bu yaklaşık 10 dakika sürecektir. " +"Yazıcı güncellenirken gücü kapatmayın." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Önemli bir güncelleme algılandı ve yazdırmanın devam edebilmesi için " +"çalıştırılması gerekiyor. Şimdi güncellemek istiyor musunuz? Daha sonra " +"'Firmware'i yükselt' seçeneğinden de güncelleme yapabilirsiniz." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"Ürün yazılımı sürümü anormal. Yazdırmadan önce onarım ve güncelleme yapılması " +"gerekir. Şimdi güncellemek istiyor musunuz? Ayrıca daha sonra yazıcıda " +"güncelleyebilir veya stüdyoyu bir sonraki başlatışınızda güncelleyebilirsiniz." + +msgid "Extension Board" +msgstr "Uzatma Kartı" + +msgid "Saving objects into the 3mf failed." +msgstr "Nesneleri 3mf'ye kaydetme işlemi başarısız oldu." + +msgid "Only Windows 10 is supported." +msgstr "Yalnızca Windows 10 desteklenmektedir." + +msgid "Failed to initialize the WinRT library." +msgstr "WinRT kitaplığı başlatılamadı." + +msgid "Exporting objects" +msgstr "Nesneleri dışa aktarma" + +msgid "Failed loading objects." +msgstr "Nesneler yüklenemedi." + +msgid "Repairing object by Windows service" +msgstr "Nesneyi Windows hizmetiyle onarma" + +msgid "Repair failed." +msgstr "Onarım başarısız oldu." + +msgid "Loading repaired objects" +msgstr "Onarılan nesnelerin yüklenmesi" + +msgid "Exporting 3mf file failed" +msgstr "3mf dosyasını dışa aktarma işlemi başarısız oldu" + +msgid "Import 3mf file failed" +msgstr "3mf dosyasını içe aktarma başarısız oldu" + +msgid "Repaired 3mf file does not contain any object" +msgstr "Onarılan 3mf dosyası herhangi bir nesne içermiyor" + +msgid "Repaired 3mf file contains more than one object" +msgstr "Onarılan 3mf dosyası birden fazla nesne içeriyor" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "Onarılan 3mf dosyası herhangi bir birim içermiyor" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "Onarılan 3mf dosyası birden fazla birim içeriyor" + +msgid "Repair finished" +msgstr "Onarım tamamlandı" + +msgid "Repair canceled" +msgstr "Onarım iptal edildi" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "%1% dosyasının %2% dosyasına kopyalanması başarısız oldu: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "" +"Yapılandırma güncellemelerinden önce kaydedilmemiş değişiklikleri kontrol " +"etmeniz gerekir." + +msgid "Configuration package: " +msgstr "Yapılandırma paketi:" + +msgid " updated to " +msgstr " güncellendi " + +msgid "Open G-code file:" +msgstr "G kodu dosyasını açın:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Bir nesnenin başlangıç katmanı boş ve yazdırılamıyor. Lütfen alt kısmı kesin " +"veya destekleri etkinleştirin." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "%1% ile %2% arasındaki boş katman için nesne yazdırılamıyor." + +#, boost-format +msgid "Object: %1%" +msgstr "Nesne: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Belki nesnenin bu yükseklikteki bazı kısımları çok incedir veya nesnenin ağı " +"hatalı olabilir" + +msgid "No object can be printed. Maybe too small" +msgstr "Hiçbir nesne yazdırılamaz. Belki çok küçük" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Geçersiz özel G kodu için gcode oluşturulamadı.\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" +"Lütfen özel G kodunu kontrol edin veya varsayılan özel G kodunu kullanın." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "G kodu oluşturuluyor: katman %1%" + +msgid "Inner wall" +msgstr "İç duvar" + +msgid "Outer wall" +msgstr "Dış duvar" + +msgid "Overhang wall" +msgstr "Çıkıntı duvarı" + +msgid "Sparse infill" +msgstr "Dolgu" + +msgid "Internal solid infill" +msgstr "İç katı dolgu" + +msgid "Top surface" +msgstr "Üst yüzey" + +msgid "Bottom surface" +msgstr "Alt yüzey" + +msgid "Internal Bridge" +msgstr "İç Köprü" + +msgid "Gap infill" +msgstr "Boşluk doldurma" + +msgid "Support interface" +msgstr "Destek arayüzü" + +msgid "Support transition" +msgstr "Destek geçişi" + +msgid "Multiple" +msgstr "Çoklu" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "%1% çizgi genişliği hesaplanamadı. \"%2%\" değeri alınamıyor " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height and " +"extrusion width" +msgstr "" +"Flow::with_spacing()'e sağlanan geçersiz boşluk, kat yüksekliğinizi ve " +"ekstrüzyon genişliğinizi kontrol edin" + +msgid "undefined error" +msgstr "bilinmeyen hata" + +msgid "too many files" +msgstr "çok fazla dosya" + +msgid "file too large" +msgstr "dosya çok büyük" + +msgid "unsupported method" +msgstr "desteklenmeyen yöntem" + +msgid "unsupported encryption" +msgstr "desteklenmeyen şifreleme" + +msgid "unsupported feature" +msgstr "desteklenmeyen özellik" + +msgid "failed finding central directory" +msgstr "merkezi dizin bulunamadı" + +msgid "not a ZIP archive" +msgstr "dosya ZIP arşivi değil" + +msgid "invalid header or corrupted" +msgstr "geçersiz başlık veya bozuk" + +msgid "unsupported multidisk" +msgstr "desteklenmeyen çoklu disk" + +msgid "decompression failed" +msgstr "dekompresyon başarısız oldu" + +msgid "compression failed" +msgstr "sıkıştırma başarısız oldu" + +msgid "unexpected decompressed size" +msgstr "beklenmedik sıkıştırılmış boyut" + +msgid "CRC check failed" +msgstr "CRC kontrolü başarısız oldu" + +msgid "unsupported central directory size" +msgstr "desteklenmeyen merkezi dizin boyutu" + +msgid "allocation failed" +msgstr "tahsis başarısız oldu" + +msgid "file open failed" +msgstr "dosya açılamadı" + +msgid "file create failed" +msgstr "dosya oluşturma başarısız oldu" + +msgid "file write failed" +msgstr "dosya yazımı başarısız oldu" + +msgid "file read failed" +msgstr "dosya okuma başarısız oldu" + +msgid "file close failed" +msgstr "dosya kapatılamadı" + +msgid "file seek failed" +msgstr "dosya arama başarısız oldu" + +msgid "file stat failed" +msgstr "dosya istatistikleri başarısız" + +msgid "invalid parameter" +msgstr "geçersiz parametre" + +msgid "invalid filename" +msgstr "geçersiz dosya adı" + +msgid "buffer too small" +msgstr "arabellek çok küçük" + +msgid "internal error" +msgstr "dahili hata" + +msgid "file not found" +msgstr "dosya bulunamadı" + +msgid "archive too large" +msgstr "arşiv çok büyük" + +msgid "validation failed" +msgstr "doğrulama başarısız" + +msgid "write callback failed" +msgstr "geri arama yazma başarısız oldu" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1%, hariç tutma alanına çok yakın; yazdırma sırasında çarpışmalar meydana " +"gelebilir." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% diğerlerine çok yakın ve çarpışmalara neden olabilir." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% çok uzun ve çarpışmalara neden olacak." + +msgid " is too close to others, there may be collisions when printing." +msgstr "" +" başkalarına çok yakınsa, yazdırma sırasında çarpışmalar meydana gelebilir." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" Hariç tutma alanına çok yakın olduğundan yazdırma sırasında çarpışmalar " +"meydana gelebilir." + +msgid "Prime Tower" +msgstr "Başbakan Kulesi" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " başkalarına çok yakın olduğundan çarpışmalara neden olabilir.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr " dışlama alanına çok yakın ve çarpışmalara neden olacak.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged during " +"printing" +msgstr "" +"Birlikte büyük sıcaklık farkına sahip birden fazla filament basılamaz. Aksi " +"takdirde baskı sırasında ekstruder ve nozul tıkanabilir veya hasar görebilir" + +msgid "No extrusions under current settings." +msgstr "Mevcut ayarlarda ekstrüzyon yok." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"\"Nesneye göre\" dizisi etkinleştirildiğinde, hızlandırılmış çekimin yumuşak " +"modu desteklenmez." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Birden fazla nesneyi spiral vazo modunda yazdırmak için lütfen \"Nesneye göre" +"\" yazdırma sırasını seçin." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "Bir nesne birden fazla malzeme içerdiğinde spiral vazo modu çalışmaz." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "%1% nesnesi maksimum yapı hacmi yüksekliğini aşıyor." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds the " +"maximum build volume height." +msgstr "" +"%1% nesnesinin kendisi yapı hacmine uysa da, son katmanı maksimum yapı hacmi " +"yüksekliğini aşıyor." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"Modelinizin boyutunu küçültmek veya mevcut yazdırma ayarlarını değiştirip " +"yeniden denemek isteyebilirsiniz." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "Değişken katman yüksekliği Organik desteklerle desteklenmez." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Ana kule etkinleştirildiğinde farklı nozul çaplarına ve farklı filament " +"çaplarına izin verilmez." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"Temizleme Kulesi şu anda yalnızca ilgili ekstruder adreslemesiyle " +"desteklenmektedir (use_relative_e_distances=1)." + +msgid "Ooze prevention is currently not supported with the prime tower enabled." +msgstr "Sızıntı önleme şu anda ana kule etkinken desteklenmemektedir." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"Prime tower şu anda yalnızca Marlin, RepRap/Sprinter, RepRapFirmware ve " +"Repetier G kodu türleri için desteklenmektedir." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "Prime tower, \"Nesneye göre\" yazdırmada desteklenmez." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"Uyarlanabilir katman yüksekliği açıkken ana kule desteklenmez. Tüm nesnelerin " +"aynı katman yüksekliğine sahip olmasını gerektirir." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "" +"Ana kule \"destek boşluğunun\" katman yüksekliğinin katı olmasını gerektirir" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "" +"Prime tower, tüm nesnelerin aynı katman yüksekliğine sahip olmasını gerektirir" + +msgid "" +"The prime tower requires that all objects are printed over the same number of " +"raft layers" +msgstr "" +"Ana kule, tüm nesnelerin aynı sayıda sal katmanı üzerine yazdırılmasını " +"gerektirir" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"Prime tower, tüm nesnelerin aynı katman yüksekliğinde dilimlenmesini " +"gerektirir." + +msgid "" +"The prime tower is only supported if all objects have the same variable layer " +"height" +msgstr "" +"Prime tower yalnızca tüm nesnelerin aynı değişken katman yüksekliğine sahip " +"olması durumunda desteklenir" + +msgid "Too small line width" +msgstr "Çizgi genişliği çok küçük" + +msgid "Too large line width" +msgstr "Çok büyük çizgi genişliği" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"Prime kulesi için, destek, nesne ile aynı katman yüksekliğine sahip olmalıdır." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"Organik destek ağacı uç çapı, destek malzemesi ekstrüzyon genişliğinden daha " +"küçük olamaz." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"Organik destek dalı çapı, destek malzemesi ekstrüzyon genişliğinin 2 katından " +"daha küçük olamaz." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "Organik destek dalı çapı, destek ağacı uç çapından küçük olamaz." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Destek uygulayıcıları kullanılıyor ancak destek etkinleştirilmiyor. Lütfen " +"desteği etkinleştirin." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "Katman yüksekliği nozul çapını aşamaz" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at each " +"layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"Göreceli ekstruder adreslemesi, kayan nokta doğruluğunun kaybını önlemek için " +"her katmandaki ekstruder konumunun sıfırlanmasını gerektirir. Layer_gcode'a " +"\"G92 E0\" ekleyin." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"Before_layer_gcode'da \"G92 E0\" bulundu ve bu, mutlak ekstruder adreslemeyle " +"uyumsuzdu." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"Layer_gcode'da mutlak ekstruder adreslemeyle uyumlu olmayan \"G92 E0\" " +"bulundu." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Plaka %d: %s, %s filamentini desteklemiyor" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" +"Sarsıntı hızının çok düşük ayarlanması kavisli yüzeylerde bozulmalara neden " +"olabilir" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"Sarsıntı ayarı yazıcının maksimum sarsıntısını aşıyor (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca, yazıcının yeteneklerini aşmadığından emin olmak için sarsıntı hızını " +"otomatik olarak sınırlayacaktır.\n" +"Daha yüksek hızlar elde etmek için yazıcınızın yapılandırmasında maksimum " +"sarsıntı ayarını yapabilirsiniz." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your printer's " +"configuration to get higher speeds." +msgstr "" +"Hızlanma ayarı yazıcının maksimum hızlanmasını aşıyor " +"(machine_max_acceleration_extruding).\n" +"Orca, yazıcının yeteneklerini aşmadığından emin olmak için hızlanma hızını " +"otomatik olarak sınırlayacaktır.\n" +"Daha yüksek hızlar elde etmek için yazıcınızın yapılandırmasındaki " +"machine_max_acceleration_extruding değerini ayarlayabilirsiniz." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"Hareket ivmesi ayarı, yazıcının maksimum hareket ivmesini " +"(machine_max_acceleration_travel) aşıyor.\n" +"Orca, yazıcının yeteneklerini aşmadığından emin olmak için seyahat hızlanma " +"hızını otomatik olarak sınırlayacaktır.\n" +"Daha yüksek hızlar elde etmek için yazıcınızın yapılandırmasındaki " +"machine_max_acceleration_travel değerini ayarlayabilirsiniz." + +msgid "Generating skirt & brim" +msgstr "Etek ve kenar oluşturma" + +msgid "Exporting G-code" +msgstr "G kodu dışa aktarılıyor" + +msgid "Generating G-code" +msgstr "G kodu oluşturuluyor" + +msgid "Failed processing of the filename_format template." +msgstr "Dosyaadı_format şablonunun işlenmesi başarısız oldu." + +msgid "Printable area" +msgstr "Yazdırılabilir alan" + +msgid "Bed exclude area" +msgstr "Yatak hariç alan" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"XY düzleminde yazdırılamayan alan. Örneğin X1 Serisi yazıcılar, filament " +"değişimi sırasında filamenti kesmek için sol ön köşeyi kullanır. Alan şu " +"formatta noktalarla çokgen olarak ifade edilir: \"XxY, XxY, ...\"" + +msgid "Bed custom texture" +msgstr "Özel plaka dokusu" + +msgid "Bed custom model" +msgstr "Özel plaka modeli" + +msgid "Elephant foot compensation" +msgstr "Fil ayağı telafi oranı" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot effect" +msgstr "" +"Fil ayağı etkisini telafi etmek için baskı plakasındaki ilk katmanı küçültün" + +msgid "Elephant foot compensation layers" +msgstr "Fil ayağı etkisini telafi katmanları" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"Fil ayağı telafisinin etkin olacağı katman sayısı. İlk katman, fil ayak " +"telafisi değeri tarafından küçültülecek, ardından sonraki katmanlar daha az " +"lineer olarak küçültülecek, bu değer tarafından belirtilen katmana kadar." + +msgid "layers" +msgstr "katman" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Her katman için dilimleme yüksekliği. Daha küçük katman yüksekliği, daha " +"doğru ve daha fazla baskı süresi anlamına gelir" + +msgid "Printable height" +msgstr "Yazdırılabilir yükseklik" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "" +"Yazıcının mekanizması tarafından sınırlanan maksimum yazdırılabilir yükseklik" + +msgid "Preferred orientation" +msgstr "Tercih edilen yönlendirme" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" +"İlk içe aktarma sonrasında stl'leri Z ekseninde otomatik olarak yönlendirin" + +msgid "Printer preset names" +msgstr "Yazıcı ön ayar adları" + +msgid "Use 3rd-party print host" +msgstr "3. taraf yazdırma ana bilgisayarını kullanın" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" +"BambuLab yazıcısının 3. taraf yazdırma ana bilgisayarları aracılığıyla " +"kontrol edilmesine izin ver" + +msgid "Hostname, IP or URL" +msgstr "Ana bilgisayar adı, IP veya URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://username:" +"password@your-octopi-address/" +msgstr "" +"Snapmaker Orca, G kodu dosyalarını bir yazıcı ana bilgisayarına yükleyebilir. Bu " +"alan, yazıcı ana bilgisayar örneğinin ana bilgisayar adını, IP adresini veya " +"URL'sini içermelidir. Temel kimlik doğrulamanın etkin olduğu HAProxy'nin " +"arkasındaki yazdırma ana bilgisayarına, kullanıcı adı ve parolanın aşağıdaki " +"biçimdeki URL'ye girilmesiyle erişilebilir: https://username:password@your-" +"octopi-address/" + +msgid "Device UI" +msgstr "Cihaz kullanıcı arayüzü" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Print_Host ile aynı değilse cihazınızın kullanıcı arayüzünün URL'sini belirtin" + +msgid "API Key / Password" +msgstr "API Anahtarı / Şifre" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca, G kodu dosyalarını bir yazıcı ana bilgisayarına yükleyebilir. Bu " +"alan, kimlik doğrulama için gereken API Anahtarını veya şifreyi içermelidir." + +msgid "Name of the printer" +msgstr "Yazıcı adı" + +msgid "HTTPS CA File" +msgstr "HTTPS CA Dosyası" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository is " +"used." +msgstr "" +"HTTPS OctoPrint bağlantıları için crt/pem formatında özel CA sertifika " +"dosyası belirtilebilir. Boş bırakılırsa varsayılan OS CA sertifika deposu " +"kullanılır." + +msgid "User" +msgstr "Kullanıcı" + +msgid "Password" +msgstr "Şifre" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "HTTPS sertifikası iptal kontrollerini yoksay" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Eksik veya çevrimdışı dağıtım noktaları olması durumunda HTTPS sertifikası " +"iptal kontrollerini göz ardı edin. Bağlantı başarısız olursa, kendinden " +"imzalı sertifikalar için bu seçeneğin etkinleştirilmesi istenebilir." + +msgid "Names of presets related to the physical printer" +msgstr "Fiziksel yazıcıyla ilgili ön ayarların adları" + +msgid "Authorization Type" +msgstr "Yetki Türü" + +msgid "API key" +msgstr "API anahtarı" + +msgid "HTTP digest" +msgstr "HTTP özeti" + +msgid "Avoid crossing wall" +msgstr "Duvar geçişinden kaçın" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "Yüzeyde lekelenmeye neden olabilecek duvar boyunca ilerlemekten kaçın" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Duvarı geçmekten kaçının - maksimum servis yolu uzunluğu" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Duvarı geçmekten kaçınmak için maksimum sapma mesafesi. Yoldan sapma mesafesi " +"bu değerden büyükse yoldan sapmayın. Yol uzunluğu, mutlak bir değer olarak " +"veya doğrudan seyahat yolunun yüzdesi (örneğin %50) olarak belirtilebilir. " +"Devre dışı bırakmak için sıfır" + +msgid "mm or %" +msgstr "mm veya %" + +msgid "Other layers" +msgstr "Diğer katmanlar" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"İlk katman dışındaki katmanlar için yatak sıcaklığı. 0 değeri, filamentin " +"Cool Plate üzerine yazdırmayı desteklemediği anlamına gelir" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the filament " +"does not support to print on the Engineering Plate" +msgstr "" +"İlk katman dışındaki katmanlar için yatak sıcaklığı. Değer 0, filamentin " +"Mühendislik Plakasına yazdırmayı desteklemediği anlamına gelir" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the filament " +"does not support to print on the High Temp Plate" +msgstr "" +"İlk katman dışındaki katmanlar için yatak sıcaklığı. 0 değeri, filamentin " +"Yüksek Sıcaklık Plakasına yazdırmayı desteklemediği anlamına gelir" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the filament " +"does not support to print on the Textured PEI Plate" +msgstr "" +"İlk katman dışındaki katmanlar için yatak sıcaklığı. 0 Değeri, filamentin " +"Dokulu PEI Plaka üzerine yazdırmayı desteklemediği anlamına gelir" + +msgid "Initial layer" +msgstr "Başlangıç katmanı" + +msgid "Initial layer bed temperature" +msgstr "İlk katman yatak sıcaklığı" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"İlk katmanın yatak sıcaklığı. 0 değeri, filamentin Cool Plate üzerine " +"yazdırmayı desteklemediği anlamına gelir" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" +"İlk katmanın yatak sıcaklığı. 0 Değeri, filamentin Dokulu Soğuk Plaka " +"üzerine yazdırmayı desteklemediği anlamına gelir." + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"İlk katmanın yatak sıcaklığı. Değer 0, filamentin Mühendislik Plakasına " +"yazdırmayı desteklemediği anlamına gelir" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"İlk katmanın yatak sıcaklığı. 0 değeri, filamentin Yüksek Sıcaklık Plakasına " +"yazdırmayı desteklemediği anlamına gelir" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"İlk katmanın yatak sıcaklığı. 0 Değeri, filamentin Dokulu PEI Plaka üzerine " +"yazdırmayı desteklemediği anlamına gelir" + +msgid "Bed types supported by the printer" +msgstr "Yazıcının desteklediği yatak türleri" + +msgid "Smooth Cool Plate" +msgstr "Pürüzsüz Soğuk Plaka" + +msgid "Engineering Plate" +msgstr "Mühendislik Plakası" + +msgid "Smooth High Temp Plate" +msgstr "Pürüzsüz Yüksek Sıcaklık Plaka" + +msgid "Textured Cool Plate" +msgstr "Dokulu Soğuk Plaka" + +msgid "First layer print sequence" +msgstr "İlk katman yazdırma sırası" + +msgid "Other layers print sequence" +msgstr "Diğer katmanların yazdırma sırası" + +msgid "The number of other layers print sequence" +msgstr "Diğer katmanların sayısı yazdırma sırası" + +msgid "Other layers filament sequence" +msgstr "Diğer katmanlar filament dizisi" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "Bu G kodu, z'yi kaldırmadan önce her katman değişikliğinde eklenir" + +msgid "Bottom shell layers" +msgstr "Alt katmanlar" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Bu, alt yüzey katmanı da dahil olmak üzere alt kabuğun katı katmanlarının " +"sayısıdır. Bu değerle hesaplanan kalınlık alt kabuk kalınlığından ince " +"olduğunda alt kabuk katmanları artırılacaktır" + +msgid "Bottom shell thickness" +msgstr "Alt katman kalınlığı" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by bottom " +"shell layers" +msgstr "" +"Alt kabuk katmanları tarafından hesaplanan kalınlık bu değerden daha ince ise " +"dilimleme sırasında alt katı katmanların sayısı arttırılır. Bu, katman " +"yüksekliği küçük olduğunda kabuğun çok ince olmasını önleyebilir. 0, bu " +"ayarın devre dışı olduğu ve alt kabuğun kalınlığının mutlaka alt kabuk " +"katmanları tarafından belirlendiği anlamına gelir" + +msgid "Apply gap fill" +msgstr "Boşluk doldurmayı uygula" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"Seçilen yüzeyler için boşluk doldurmayı etkinleştirir. Doldurulacak minimum " +"boşluk uzunluğu aşağıdaki küçük boşlukları filtrele seçeneğinden kontrol " +"edilebilir.\n" +"\n" +"Seçenekler:\n" +"1. Her Yerde: Üst, alt ve iç katı yüzeylere boşluk doldurma uygular\n" +"2. Üst ve Alt yüzeyler: Boşluk doldurmayı yalnızca üst ve alt yüzeylere " +"uygular\n" +"3. Hiçbir Yerde: Boşluk doldurmayı devre dışı bırakır\n" + +msgid "Everywhere" +msgstr "Her yerde" + +msgid "Top and bottom surfaces" +msgstr "Üst ve alt yüzeyler" + +msgid "Nowhere" +msgstr "Hiçbir yerde" + +msgid "Force cooling for overhang and bridge" +msgstr "Çıkıntı ve köprüler için soğutmayı zorla" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and bridge " +"to get better cooling" +msgstr "" +"Daha iyi soğutma elde etmek amacıyla çıkıntı ve köprü için parça soğutma fanı " +"hızını optimize etmek amacıyla bu seçeneği etkinleştirin" + +msgid "Fan speed for overhang" +msgstr "Çıkıntılar için fan hızı" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang wall " +"which has large overhang degree. Forcing cooling for overhang and bridge can " +"get better quality for these part" +msgstr "" +"Çıkıntı derecesi büyük olan köprü veya çıkıntılı duvara baskı yaparken parça " +"soğutma fanını bu hızda olmaya zorlayın. Çıkıntı ve köprü için soğutmayı " +"zorlamak, bu parça için daha iyi kalite elde edilmesini sağlayabilir" + +msgid "Cooling overhang threshold" +msgstr "Çıkıntı soğutması" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width of " +"the line without support from lower layer. 0% means forcing cooling for all " +"outer wall no matter how much overhang degree" +msgstr "" +"Yazdırılan parçanın çıkıntı derecesi bu değeri aştığında soğutma fanını " +"belirli bir hıza zorlar. Alt katmandan destek almadan çizginin ne kadar " +"genişlediğini gösteren yüzde olarak ifade edilir. 0, çıkıntı derecesi ne " +"kadar olursa olsun tüm dış duvar için soğutmayı zorlamak anlamına gelir" + +msgid "Bridge infill direction" +msgstr "Köprü dolgu açısı" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Köprüleme açısı geçersiz kılma. Sıfıra bırakılırsa köprüleme açısı otomatik " +"olarak hesaplanacaktır. Aksi halde dış köprüler için sağlanan açı " +"kullanılacaktır. Sıfır açı için 180°'yi kullanın." + +msgid "Bridge density" +msgstr "Köprü dolgu yoğunluğu" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Dış köprülerin yoğunluğu. %100 sağlam köprü anlamına gelir. Varsayılan " +"%100'dür." + +msgid "Bridge flow ratio" +msgstr "Köprülerde akış oranı" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Köprü için malzeme miktarını azaltmak ve sarkmayı iyileştirmek için bu değeri " +"biraz azaltın (örneğin 0,9)" + +msgid "Internal bridge flow ratio" +msgstr "İç köprü akış oranı" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"Bu değer iç köprü katmanının kalınlığını belirler. Bu, seyrek dolgunun " +"üzerindeki ilk katmandır. Seyrek dolguya göre yüzey kalitesini iyileştirmek " +"için bu değeri biraz azaltın (örneğin 0,9)." + +msgid "Top surface flow ratio" +msgstr "Üst katı dolgu akış oranı" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Bu faktör üst katı dolgu için malzeme miktarını etkiler. Pürüzsüz bir yüzey " +"elde etmek için biraz azaltabilirsiniz" + +msgid "Bottom surface flow ratio" +msgstr "Alt katı dolgu akış oranı" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "Bu faktör alt katı dolgu için malzeme miktarını etkiler" + +msgid "Precise wall" +msgstr "Hassas duvar" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"Dış duvar aralığını ayarlayarak kabuk hassasiyetini artırın. Bu aynı zamanda " +"katman tutarlılığını da artırır.\n" +"Not: Bu ayar yalnızca duvar sırası İç-Dış olarak yapılandırıldığında etkili " +"olacaktır." + +msgid "Only one wall on top surfaces" +msgstr "Üst yüzeylerde yalnızca bir duvar" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Üst dolgu desenine daha fazla yer açmak için düz üst yüzeyde yalnızca bir " +"duvar kullanın" + +msgid "One wall threshold" +msgstr "Tek duvar eşiği" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Eğer bir üst yüzey basılacaksa ve kısmen başka bir katman tarafından kaplıysa " +"layer genişliği bu değerin altında olan bir üst katman olarak " +"değerlendirilmeyecek. Yalnızca çevrelerle kaplanması gereken yüzeyde 'bir " +"çevre üstte' tetiklemesine izin vermemek yararlı olabilir. Bu değer mm veya a " +"% çevre ekstrüzyon genişliğinin bir yüzdesi olabilir.\n" +"Uyarı: Etkinleştirilirse bir sonraki katmanda harfler gibi bazı ince " +"özelliklerin olması durumunda yapay yapılar oluşturulabilir. Bu yapıları " +"kaldırmak için bu ayarı 0 olarak ayarlayın." + +msgid "Only one wall on first layer" +msgstr "İlk katmanda yalnızca bir duvar" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Alt dolgu desenine daha fazla yer açmak için ilk katmanda yalnızca bir duvar " +"kullanın" + +msgid "Extra perimeters on overhangs" +msgstr "Çıkıntılarda ekstra çevre (perimeter)" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Dik çıkıntılar ve köprülerin sabitlenemediği alanlar üzerinde ek çevre " +"yolları (perimeter) oluşturun. " + +msgid "Reverse on odd" +msgstr "Tersine çevir" + +msgid "Overhang reversal" +msgstr "Çıkıntıyı tersine çevir" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse direction " +"on odd layers. This alternating pattern can drastically improve steep " +"overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"Tek katmanlarda ters yönde bir çıkıntının üzerinde bir kısmı bulunan " +"çevreleri ekstrüzyonla çıkarın. Bu alternatif desen, dik çıkıntıları büyük " +"ölçüde iyileştirebilir.\n" +"\n" +"Bu ayar aynı zamanda parça duvarlarındaki gerilimin azalması nedeniyle " +"parçanın bükülmesinin azaltılmasına da yardımcı olabilir." + +msgid "Reverse only internal perimeters" +msgstr "Yalnızca iç çevreleri ters çevir" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"Ters çevre mantığını yalnızca iç çevrelere uygulayın. \n" +"\n" +"Bu ayar, parçalar artık farklı yönlerde dağıtıldığından parça gerilimlerini " +"büyük ölçüde azaltır. Bu, dış duvar kalitesini korurken parçanın bükülmesini " +"de azaltacaktır. Bu özellik, ABS/ASA gibi eğrilmeye yatkın malzemeler ve " +"ayrıca TPU ve İpek PLA gibi elastik filamentler için çok faydalı olabilir. " +"Ayrıca destekler üzerindeki yüzen bölgelerdeki bükülmenin azaltılmasına da " +"yardımcı olabilir.\n" +"\n" +"Bu ayarın en etkili olması için, tüm iç duvarların çıkıntı derecelerine " +"bakılmaksızın tek katmanlar üzerine değişen yönlerde yazdırılması için Ters " +"Eşiği 0'a ayarlamanız önerilir." + +msgid "Bridge counterbore holes" +msgstr "Köprü havşa delikleri" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"Bu seçenek, havşa delikleri için köprüler oluşturarak bunların desteksiz " +"yazdırılmasına olanak tanır. Mevcut modlar şunları içerir:\n" +"1. Yok: Köprü oluşturulmaz.\n" +"2. Kısmen Köprülendi: Desteklenmeyen alanın yalnızca bir kısmı köprülenecek.\n" +"3. Feda Katman: Tam bir feda köprü katmanı oluşturulur." + +msgid "Partially bridged" +msgstr "Kısmen köprülü" + +msgid "Sacrificial layer" +msgstr "Feda katmanı" + +msgid "Reverse threshold" +msgstr "Ters eşik" + +msgid "Overhang reversal threshold" +msgstr "Çıkıntıyı tersine çevirme eşiği" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Ters çevirmenin faydalı sayılması için çıkıntının mm sayısı olması gerekir. " +"Çevre genişliğinin %'si olabilir.\n" +"Değer 0 her tek katmanda terslemeyi etkinleştirir." + +msgid "Classic mode" +msgstr "Klasik mod" + +msgid "Enable this option to use classic mode" +msgstr "Klasik modu kullanmak için bu seçeneği etkinleştirin" + +msgid "Slow down for overhang" +msgstr "Çıkıntılarda yavaşla" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Farklı sarkma derecelerinde yazdırmayı yavaşlatmak için bu seçeneği " +"etkinleştirin" + +msgid "Slow down for curled perimeters" +msgstr "Kıvrılmış çevre çizgilerinde yavaşlat" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Potansiyel kıvrılmış çevrelerin bulunabileceği alanlarda yazdırmayı " +"yavaşlatmak için bu seçeneği etkinleştirin" + +msgid "mm/s or %" +msgstr "mm/s veya %" + +msgid "External" +msgstr "Harici" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Köprü hızı ve tamamen sarkan duvar" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "Dahili" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Dahili köprünün hızı. Değer yüzde olarak ifade edilirse köprü_hızına göre " +"hesaplanacaktır. Varsayılan değer %150'dir." + +msgid "Brim width" +msgstr "Kenar genişliği" + +msgid "Distance from model to the outermost brim line" +msgstr "Modelden en dış kenar çizgisine kadar olan mesafe" + +msgid "Brim type" +msgstr "Kenar tipi" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Bu, modellerin dış ve/veya iç kısmındaki Kenar oluşumunu kontrol eder. " +"Otomatik, kenar genişliğinin otomatik olarak analiz edilip hesaplandığı " +"anlamına gelir." + +msgid "Brim-object gap" +msgstr "Kenar-nesne boşluğu" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"En içteki kenar çizgisi ile nesne arasındaki boşluk, kenarlığın daha kolay " +"çıkarılmasını sağlayabilir" + +msgid "Brim ears" +msgstr "Kenar kulakları" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "Kenarları yalnızca modelin keskin kenarlarına çizin." + +msgid "Brim ear max angle" +msgstr "Kenar kulak maksimum açısı" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Kenarlı bir kulağın görünmesine izin veren maksimum açı.\n" +"0'a ayarlanırsa kenarlık oluşturulmaz.\n" +"~180'e ayarlanırsa, düz bölümler dışındaki her yerde kenar oluşturulacaktır." + +msgid "Brim ear detection radius" +msgstr "Kenar kulak algılama yarıçapı" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This parameter " +"indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"Keskin açılar tespit edilmeden önce geometrinin büyük bir kısmı yok " +"edilecektir. Bu parametre, ondalık sapmanın minimum uzunluğunu gösterir.\n" +"Devre dışı bırakmak için 0" + +msgid "Compatible machine" +msgstr "Uyumlu makine" + +msgid "upward compatible machine" +msgstr "yukarı doğru uyumlu makine" + +msgid "Compatible machine condition" +msgstr "Uyumlu yazıcıdurumu" + +msgid "Compatible process profiles" +msgstr "Uyumlu süreç profilleri" + +msgid "Compatible process profiles condition" +msgstr "Uyumlu süreç profillerinin durumu" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Yazdırma sırası, katman katman veya nesne nesne" + +msgid "By layer" +msgstr "Katmana göre" + +msgid "By object" +msgstr "Nesneye göre" + +msgid "Intra-layer order" +msgstr "Katman içi sipariş" + +msgid "Print order within a single layer" +msgstr "Tek bir katmanda yazdırma sırası" + +msgid "As object list" +msgstr "Nesne listesi olarak" + +msgid "Slow printing down for better layer cooling" +msgstr "Daha iyi katman soğutması için baskıyı yavaşlat" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Son katman süresinin \"Maksimum fan hızı eşiği\"ndeki katman süresi eşiğinden " +"kısa olmamasını sağlamak amacıyla yazdırma hızını yavaşlatmak için bu " +"seçeneği etkinleştirin, böylece katman daha uzun süre soğutulabilir. Bu, iğne " +"ve küçük detaylar için soğutma kalitesini artırabilir" + +msgid "Normal printing" +msgstr "Normal baskı" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"İlk katman dışında hem normal yazdırmanın hem de ilerlemenin varsayılan ivmesi" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "Varsayılan filament profili" + +msgid "Default filament profile when switch to this machine profile" +msgstr "Bu yazıcıprofiline geçildiğinde varsayılan filament profili" + +msgid "Default process profile" +msgstr "Varsayılan süreç profili" + +msgid "Default process profile when switch to this machine profile" +msgstr "Bu yazıcıprofiline geçildiğinde varsayılan işlem profili" + +msgid "Activate air filtration" +msgstr "Hava filtrelemesini etkinleştirin" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" +"Daha iyi hava filtrasyonu için etkinleştirin. G-kodu komutu: M106 P3 S(0-255)" + +msgid "Fan speed" +msgstr "Fan hızı" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Baskı sırasında egzoz fanının hızı. Bu hız, filament özel gcode'undaki hızın " +"üzerine yazılacaktır" + +msgid "Speed of exhaust fan after printing completes" +msgstr "Baskı tamamlandıktan sonra egzoz fanının hızı" + +msgid "No cooling for the first" +msgstr "Soğutmayı devre dışı bırak" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"İlk belirli katmanlar için tüm soğutma fanını kapatın. Daha iyi baskı plakası " +"yapışması sağlamak için ilk katmanın soğutma fanı kapatılırdı" + +msgid "Don't support bridges" +msgstr "Köprülerde destek olmasın" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Desteği çok büyük yapan tüm köprü alanını desteklemeyin. Bridge genellikle " +"çok uzun olmasa da destek olmadan doğrudan yazdırılabilir" + +msgid "Thick bridges" +msgstr "Kalın köprüler" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Etkinleştirilirse köprüler daha güvenilir olur, daha uzun mesafeler arasında " +"köprü kurabilir ancak daha kötü görünebilir. Devre dışı bırakıldığında " +"köprüler daha iyi görünür ancak yalnızca daha kısa köprü mesafeleri için " +"güvenilirdir." + +msgid "Thick internal bridges" +msgstr "Kalın iç köprüler" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"Etkinleştirilirse kalın iç köprüler kullanılacaktır. Genellikle bu özelliğin " +"açık olması önerilir. Ancak büyük nozul uçları kullanıyorsanız kapatmayı " +"düşünün." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "Küçük iç köprüleri filtrelemeyin (deneysel)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted or " +"curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works well " +"in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for most " +"difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal overhang. " +"This option is useful for heavily slanted top surface models. However, in " +"most cases it creates too many unecessary bridges." +msgstr "" +"Bu seçenek, aşırı eğimli veya kavisli modellerde üst yüzeylerdeki " +"yastıklamanın azaltılmasına yardımcı olabilir.\n" +"\n" +"Varsayılan olarak küçük iç köprüler filtrelenir ve iç katı dolgu doğrudan " +"seyrek dolgunun üzerine yazdırılır. Bu çoğu durumda işe yarar ve üstün yüzey " +"kalitesinden çok fazla ödün vermeden yazdırmayı hızlandırır. \n" +"\n" +"Bununla birlikte, özellikle çok düşük seyrek dolgu yoğunluğunun kullanıldığı " +"aşırı eğimli veya kavisli modellerde, bu durum desteklenmeyen katı dolgunun " +"kıvrılmasına ve yastıklanmaya neden olmasına neden olabilir.\n" +"\n" +"Bu seçeneğin etkinleştirilmesi, iç köprü katmanını hafif desteklenmeyen " +"dahili katı dolgu üzerine yazdıracaktır. Aşağıdaki seçenekler filtreleme " +"miktarını, yani oluşturulan dahili köprülerin miktarını kontrol eder.\n" +"\n" +"Devre Dışı - Bu seçeneği devre dışı bırakır. Bu varsayılan davranıştır ve " +"çoğu durumda iyi çalışır.\n" +"\n" +"Sınırlı filtreleme - Aşırı eğimli yüzeylerde iç köprüler oluştururken " +"gereksiz iç köprülerin oluşmasını da önler. Bu, çoğu zor modelde işe yarar.\n" +"\n" +"Filtreleme yok - Her potansiyel dahili çıkıntıda dahili köprüler oluşturur. " +"Bu seçenek, aşırı eğimli üst yüzey modelleri için kullanışlıdır. Ancak çoğu " +"durumda çok fazla gereksiz köprü oluşturur." + +msgid "Disabled" +msgstr "Devredışı" + +msgid "Limited filtering" +msgstr "Sınırlı filtreleme" + +msgid "No filtering" +msgstr "Filtresiz" + +msgid "Max bridge length" +msgstr "Maksimum köprü uzunluğu" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Desteğe ihtiyaç duymayan maksimum köprü uzunluğu. Tüm köprülerin " +"desteklenmesini istiyorsanız bunu 0'a, hiçbir köprünün desteklenmesini " +"istemiyorsanız çok büyük bir değere ayarlayın." + +msgid "End G-code" +msgstr "Bitiş G kodu" + +msgid "End G-code when finish the whole printing" +msgstr "Tüm yazdırmayı tamamladığında çalışacak olan G Kodu" + +msgid "Between Object Gcode" +msgstr "Nesne Arası Gcode" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Nesnelerin arasına Gcode ekleyin. Bu parametre yalnızca modellerinizi nesne " +"nesne yazdırdığınızda etkili olacaktır" + +msgid "End G-code when finish the printing of this filament" +msgstr "Bu filament ile baskı bittiğinde çalışacak G kodu" + +msgid "Ensure vertical shell thickness" +msgstr "Dikey kabuk kalınlığını onayla" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"Dikey kabuk kalınlığını garanti etmek için eğimli yüzeylerin yakınına katı " +"dolgu ekleyin (üst + alt katı katmanlar)\n" +"Yok: Hiçbir yere katı dolgu eklenmez. Dikkat: Modelinizin eğimli yüzeyleri " +"varsa bu seçeneği dikkatli kullanın.\n" +"Yalnızca kritik: Duvarlar için katı dolgu eklemekten kaçının\n" +"Orta: Yalnızca çok eğimli yüzeyler için katı dolgu ekleyin\n" +"Hepsi: Tüm uygun eğimli yüzeyler için katı dolgu ekleyin\n" +"Varsayılan değer Tümü'dür." + +msgid "Critical Only" +msgstr "Yalnızca kritik" + +msgid "Moderate" +msgstr "Orta" + +msgid "Top surface pattern" +msgstr "Üst yüzey deseni" + +msgid "Line pattern of top surface infill" +msgstr "Üst yüzey dolgusunun çizgi deseni" + +msgid "Concentric" +msgstr "Konsantrik" + +msgid "Rectilinear" +msgstr "Doğrusal" + +msgid "Monotonic" +msgstr "Monotonic" + +msgid "Monotonic line" +msgstr "Monotonik çizgi" + +msgid "Aligned Rectilinear" +msgstr "Hizalanmış doğrusal" + +msgid "Hilbert Curve" +msgstr "Hilbert eğrisi" + +msgid "Archimedean Chords" +msgstr "Arşimet akorları" + +msgid "Octagram Spiral" +msgstr "Sekizgen spiral" + +msgid "Bottom surface pattern" +msgstr "Alt yüzey deseni" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "Köprü dolgusu değil, alt yüzey dolgusunun çizgi deseni" + +msgid "Internal solid infill pattern" +msgstr "İç dolgu deseni" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"İç katı dolgunun çizgi deseni. doğal iç katı dolguyu tespit etme " +"etkinleştirilirse, küçük alan için eşmerkezli desen kullanılacaktır." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Dış duvarın çizgi genişliği. % olarak ifade edilirse Nozul çapı üzerinden " +"hesaplanacaktır." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"En dışta görünen ve görünen dış duvarın hızı. Daha iyi kalite elde etmek için " +"iç duvar hızından daha yavaş olması kullanılır." + +msgid "Small perimeters" +msgstr "Küçük çevre (perimeter)" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"Bu ayrı ayar, yarıçapı <= küçük_çevre_eşiği olan çevrelerin (genellikle " +"delikler) hızını etkileyecektir. Yüzde olarak ifade edilirse (örneğin: %80), " +"yukarıdaki dış duvar hızı ayarına göre hesaplanacaktır. Otomatik için sıfıra " +"ayarlayın." + +msgid "Small perimeters threshold" +msgstr "Küçük çevre (perimeter) eşiği" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "Bu, küçük çevre uzunluğu için eşiği belirler. Varsayılan eşik 0 mm'dir" + +msgid "Walls printing order" +msgstr "Duvar baskı sırası" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls can " +"adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"İç (iç) ve dış (dış) duvarların baskı sırası.\n" +"\n" +"En iyi çıkıntılar için İç/Dış seçeneğini kullanın. Bunun nedeni, sarkan " +"duvarların baskı sırasında komşu çevreye yapışabilmesidir. Ancak bu seçenek, " +"dış çevrenin iç çevreye sıkıştırılarak deforme olması nedeniyle yüzey " +"kalitesinin biraz düşmesine neden olur.\n" +"\n" +"Dış duvar iç çevreden rahatsız edilmeden basıldığından, en iyi dış yüzey " +"kalitesi ve boyutsal doğruluk için İç/Dış/İç seçeneğini kullanın. Ancak, dış " +"duvarın üzerine baskı yapılacak bir iç çevre olmadığından sarkma performansı " +"düşecektir. Bu seçenek, önce 3. çevreden itibaren iç duvarları, ardından dış " +"çevreyi ve son olarak da birinci iç çevreyi yazdırdığından etkili olması için " +"en az 3 duvar gerektirir. Bu seçenek çoğu durumda Dış/İç seçeneğine karşı " +"önerilir. \n" +"\n" +"İç/Dış/İç seçeneğinin aynı dış duvar kalitesi ve boyutsal doğruluk " +"avantajları için Dış/İç seçeneğini kullanın. Bununla birlikte, yeni bir " +"katmanın ilk ekstrüzyonu görünür bir yüzey üzerinde başladığından z dikişleri " +"daha az tutarlı görünecektir.\n" +"\n" +" " + +msgid "Inner/Outer" +msgstr "İç/Dış" + +msgid "Outer/Inner" +msgstr "Dış/İç" + +msgid "Inner/Outer/Inner" +msgstr "İç/Dış/İç" + +msgid "Print infill first" +msgstr "Önce dolguyu yazdır" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse external " +"surface finish. It can also cause the infill to shine through the external " +"surfaces of the part." +msgstr "" +"Duvar/dolgu sırası. Onay kutusu işaretlenmediğinde duvarlar önce yazdırılır, " +"bu çoğu durumda en iyi şekilde çalışır.\n" +"\n" +"Dolgunun önce yazdırılması, aşırı sarkmalarda yardımcı olabilir, çünkü " +"duvarlar komşu dolgulara yapışır. Ancak, dolgu duvarlara bağlı olduğu " +"yerlerde onları biraz dışarı iterek daha kötü bir dış yüzey bitişine neden " +"olabilir. Ayrıca, dolgunun parçanın dış yüzeylerinden parlamasına da sebep " +"olabilir." + +msgid "Wall loop direction" +msgstr "Duvar döngüsü yönü" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on odd " +"is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"Yukarıdan aşağıya bakıldığında duvar döngülerinin ekstrüzyona uğradığı yön.\n" +"\n" +"Tek sayıyı ters çevir seçeneği etkinleştirilmedikçe, varsayılan olarak tüm " +"duvarlar saat yönünün tersine ekstrüde edilir. Bunu Otomatik dışında herhangi " +"bir seçeneğe ayarlayın, Ters açıklığa bakılmaksızın duvar yönünü " +"zorlayacaktır.\n" +"\n" +"Spiral vazo modu etkinse bu seçenek devre dışı bırakılacaktır." + +msgid "Counter clockwise" +msgstr "Saat yönünün tersine" + +msgid "Clockwise" +msgstr "Saat yönünde" + +msgid "Height to rod" +msgstr "Çubuğa kadar olan yükseklik" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Nozul ucunun alt çubuğa olan mesafesi. Nesneye göre yazdırmada çarpışmayı " +"önlemek için kullanılır." + +msgid "Height to lid" +msgstr "Kapağa kadar olan yükseklik" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Nozul ucunun kapağa olan mesafesi. Nesneye göre yazdırmada çarpışmayı önlemek " +"için kullanılır." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Ekstruder etrafındaki boşluk yarıçapı. Nesneye göre yazdırmada çarpışmayı " +"önlemek için kullanılır." + +msgid "Nozzle height" +msgstr "Nozul yüksekliği" + +msgid "The height of nozzle tip." +msgstr "Nozul ucunun yüksekliği." + +msgid "Bed mesh min" +msgstr "Minimum yatak ağı" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not exceed " +"these min/max points. This information can usually be obtained from your " +"printer manufacturer. The default setting is (-99999, -99999), which means " +"there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Bu seçenek, izin verilen yatak ağ alanı için minimum noktayı ayarlar. Prob XY " +"ofseti nedeniyle çoğu yazıcı yatağın tamamını tarayamaz. Prob noktasının " +"yatak alanı dışına çıkmamasını sağlamak için yatak ağının minimum ve maksimum " +"noktaları uygun şekilde ayarlanmalıdır. Snapmaker Orca, adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max değerlerinin bu min/maks noktalarını aşmamasını sağlar. " +"Bu bilgi genellikle yazıcınızın üreticisinden edinilebilir. Varsayılan ayar " +"(-99999, -99999) şeklindedir; bu, herhangi bir sınırın olmadığı anlamına " +"gelir, dolayısıyla yatağın tamamında problamaya izin verilir." + +msgid "Bed mesh max" +msgstr "Maksimum yatak ağı" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not exceed " +"these min/max points. This information can usually be obtained from your " +"printer manufacturer. The default setting is (99999, 99999), which means " +"there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Bu seçenek, izin verilen yatak ağ alanı için maksimum noktayı ayarlar. Probun " +"XY ofseti nedeniyle çoğu yazıcı yatağın tamamını tarayamaz. Prob noktasının " +"yatak alanı dışına çıkmamasını sağlamak için yatak ağının minimum ve maksimum " +"noktaları uygun şekilde ayarlanmalıdır. Snapmaker Orca, adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max değerlerinin bu min/maks noktalarını aşmamasını sağlar. " +"Bu bilgi genellikle yazıcınızın üreticisinden edinilebilir. Varsayılan ayar " +"(99999, 99999) şeklindedir; bu, herhangi bir sınırın olmadığı anlamına gelir, " +"dolayısıyla yatağın tamamında problamaya izin verilir." + +msgid "Probe point distance" +msgstr "Prob noktası mesafesi" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"Bu seçenek, X ve Y yönleri için prob noktaları arasındaki tercih edilen " +"mesafeyi (ızgara boyutu) ayarlar; varsayılan değer hem X hem de Y için 50 " +"mm'dir." + +msgid "Mesh margin" +msgstr "Yatak ağı boşluğu" + +msgid "" +"This option determines the additional distance by which the adaptive bed mesh " +"area should be expanded in the XY directions." +msgstr "" +"Bu seçenek, uyarlanabilir yatak ağ alanının XY yönlerinde genişletilmesi " +"gereken ek mesafeyi belirler." + +msgid "Extruder Color" +msgstr "Ekstruder rengi" + +msgid "Only used as a visual help on UI" +msgstr "Yalnızca kullanıcı arayüzünde görsel yardım olarak kullanılır" + +msgid "Extruder offset" +msgstr "Ekstruder konum" + +msgid "Flow ratio" +msgstr "Akış oranı" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 and " +"1.05. Maybe you can tune this value to get nice flat surface when there has " +"slight overflow or underflow" +msgstr "" +"Malzeme, erimiş hal ile kristal hal arasında geçiş yaptıktan sonra hacimsel " +"değişime sahip olabilir. Bu ayar, bu filamentin gcode'daki tüm ekstrüzyon " +"akışını orantılı olarak değiştirir. Önerilen değer aralığı 0,95 ile 1,05 " +"arasındadır. Belki hafif taşma veya taşma olduğunda güzel düz bir yüzey elde " +"etmek için bu değeri ayarlayabilirsiniz" + +msgid "Enable pressure advance" +msgstr "Basınç Avansı (PA)" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Basınç avansını etkinleştirin; etkinleştirildiğinde otomatik kalibrasyon " +"sonucunun üzerine yazılacaktır." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "Basınç avansı (Klipper) Doğrusal ilerleme faktörü (Marlin)" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, it " +"will be computed over the nozzle diameter." +msgstr "" +"Diğer çizgi genişlikleri 0'a ayarlanmışsa varsayılan çizgi genişliği. % " +"olarak ifade edilirse nozul çapı üzerinden hesaplanacaktır." + +msgid "Keep fan always on" +msgstr "Fanı her zaman açık tut" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run at " +"least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Bu ayarı etkinleştirirseniz, parça soğutma fanı hiçbir zaman durdurulmayacak " +"ve başlatma ve durdurma sıklığını azaltmak için en azından minimum hızda " +"çalışacaktır" + +msgid "Don't slow down outer walls" +msgstr "Dış duvarları yavaşlatma" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" +"Bu ayar etkinleştirildiğinde, dış çevrelerin minimum katman süresine uyması " +"için yavaşlatılmamasını sağlar. Bu, özellikle aşağıdaki durumlarda yardımcı " +"olur:\n" +"\n" +"1. Parlak filamentler yazdırırken parlaklıktaki değişikliklerden kaçınmak " +"için\n" +"2. Z bantlanması gibi görünen hafif duvar kusurları yaratabilecek dış duvar " +"hızındaki değişikliklerden kaçınmak için\n" +"3. Dış duvarlarda VFAs (ince kusurlar) oluşturan hızlarda yazdırmaktan " +"kaçınmak için\n" + +msgid "Layer time" +msgstr "Katman süresi" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"Tahmini süresi bu değerden kısa olan katlarda parça soğutma fanı devreye " +"girecektir. Fan hızı, katman yazdırma süresine göre minimum ve maksimum fan " +"hızları arasında enterpole edilir" + +msgid "Default color" +msgstr "Varsayılan renk" + +msgid "Default filament color" +msgstr "Varsayılan filament rengi" + +msgid "Filament notes" +msgstr "Filament Notları" + +msgid "You can put your notes regarding the filament here." +msgstr "Filament ile ilgili notlarınızı buraya yazabilirsiniz." + +msgid "Required nozzle HRC" +msgstr "Gerekli nozul HRC" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"Filamenti yazdırmak için gereken minimum HRC nozul. Sıfır, nozulun HRC'sinin " +"kontrol edilmediği anlamına gelir." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Bu ayar, saniyede ne kadar miktarda filamentin eritilip ekstrude " +"edilebileceğini gösterir. Çok yüksek ve makul olmayan hız ayarı durumunda, " +"yazdırma hızı maksimum hacimsel hız ile sınırlanır. Sıfır olamaz" + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "Filament yükleme süresi" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Filamenti değiştirdiğinizde yeni filament yükleme zamanı. Yalnızca " +"istatistikler için" + +msgid "Filament unload time" +msgstr "Filament boşaltma süresi" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Filamenti değiştirdiğinizde eski filamenti boşaltma zamanı. Yalnızca " +"istatistikler için" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Filament çapı, gcode'da ekstrüzyonu hesaplamak için kullanılır; bu nedenle " +"önemlidir ve doğru olmalıdır" + +msgid "Pellet flow coefficient" +msgstr "Pelet akış katsayısı" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" +"Pelet akış katsayısı ampirik olarak türetilir ve pelet yazıcıları için hacim " +"hesaplamasına olanak tanır.\n" +"\n" +"Dahili olarak filament_çapına dönüştürülür. Diğer tüm hacim hesaplamaları " +"aynı kalır.\n" +"\n" +"filament_çapı = sqrt( (4 * pellet_akış_katsayısı) / PI )" + +msgid "Shrinkage" +msgstr "Büzüşme" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Filamentin soğuduktan sonra alacağı büzülme yüzdesini girin (100 mm yerine 94 " +"mm ölçerseniz 94%). Parça, telafi etmek için xy'de ölçeklendirilecektir. " +"Yalnızca çevre için kullanılan filament dikkate alınır.\n" +"Bu telafi kontrollerden sonra yapıldığından, nesneler arasında yeterli boşluk " +"bıraktığınızdan emin olun." + +msgid "Loading speed" +msgstr "Yükleme hızı" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "Filamenti silme kulesine yüklemek için kullanılan hız." + +msgid "Loading speed at the start" +msgstr "Başlangıçtaki yükleme hızı" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Yükleme aşamasının başında kullanılan hız." + +msgid "Unloading speed" +msgstr "Boşaltma hızı" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Filamenti silme kulesinde boşaltmak için kullanılan hız (sıkıştırmadan hemen " +"sonra boşaltmanın ilk kısmını etkilemez)." + +msgid "Unloading speed at the start" +msgstr "Başlangıçta boşaltma hızı" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Sıkıştırmadan hemen sonra filamentin ucunu boşaltmak için kullanılan hız." + +msgid "Delay after unloading" +msgstr "Boşaltma işleminden sonra gecikme" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Filament boşaltıldıktan sonra beklenmesi gereken süre. Orijinal boyutlara " +"küçülmesi için daha fazla zamana ihtiyaç duyabilecek esnek malzemelerle " +"güvenilir takım değişimleri elde etmeye yardımcı olabilir." + +msgid "Number of cooling moves" +msgstr "Soğutma hareketi sayısı" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"Filament, soğutma tüpleri içinde ileri geri hareket ettirilerek soğutulur. Bu " +"sayısını belirtin." + +msgid "Speed of the first cooling move" +msgstr "İlk soğutma hareketi hızı" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "Soğutma hareketleri bu hızdan başlayarak kademeli olarak hızlanır." + +msgid "Minimal purge on wipe tower" +msgstr "Silme kulesi üzerinde minimum boşaltım" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial object, " +"Snapmaker Orca will always prime this amount of material into the wipe tower to " +"produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"Bir takım değişiminden sonra, yeni yüklenen filamentin nozul içindeki kesin " +"konumu bilinmeyebilir ve filament basıncı muhtemelen henüz stabil değildir. " +"Yazdırma kafasını bir dolguya veya kurban nesneye boşaltmadan önce Orca " +"Slicer, ardışık dolgu veya kurban nesne ekstrüzyonlarını güvenilir bir " +"şekilde üretmek için her zaman bu miktardaki malzemeyi silme kulesine " +"hazırlayacaktır." + +msgid "Speed of the last cooling move" +msgstr "Son soğutma hareketi hızı" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "Soğutma hareketleri bu hıza doğru giderek hızlanır." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is added " +"to the total print time by the G-code time estimator." +msgstr "" +"Yazıcı donanım yazılımının (veya Çoklu Malzeme Ünitesi 2.0'ın) takım " +"değişikliği sırasında (T kodu yürütülürken) yeni bir filament yükleme süresi. " +"Bu süre, G kodu zaman tahmincisi tarafından toplam baskı süresine eklenir." + +msgid "Ramming parameters" +msgstr "Sıkıştırma parametreleri" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Bu dize RammingDialog tarafından düzenlenir ve ramming'e özgü parametreleri " +"içerir." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is added " +"to the total print time by the G-code time estimator." +msgstr "" +"Yazıcı ürün yazılımının (veya Çoklu Malzeme Ünitesi 2.0'ın) takım değişimi " +"sırasında (T kodu yürütülürken) filamenti boşaltma süresi. Bu süre, G kodu " +"süre tahmincisi tarafından toplam baskı süresine eklenir." + +msgid "Enable ramming for multitool setups" +msgstr "Çoklu araç kurulumları için sıkıştırmayı etkinleştirin" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Çok takımlı yazıcı kullanırken sıkıştırma gerçekleştirin (yani Yazıcı " +"Ayarları'ndaki 'Tek Ekstruder Çoklu Malzeme' işaretli olmadığında). " +"İşaretlendiğinde, takım değişiminden hemen önce silme kulesinde az miktarda " +"filament hızla ekstrude edilir. Bu seçenek yalnızca silme kulesi " +"etkinleştirildiğinde kullanılır." + +msgid "Multitool ramming volume" +msgstr "Çoklu araç sıkıştırma hacmi" + +msgid "The volume to be rammed before the toolchange." +msgstr "Takım değişiminden önce sıkıştırılacak hacim." + +msgid "Multitool ramming flow" +msgstr "Çoklu araç sıkıştırma akışı" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "Araç değişiminden önce filamenti sıkıştırmak için kullanılan akış." + +msgid "Density" +msgstr "Yoğunluk" + +msgid "Filament density. For statistics only" +msgstr "Filament yoğunluğu. Yalnızca istatistikler için" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "Filament malzeme türü" + +msgid "Soluble material" +msgstr "Çözünür malzeme" + +msgid "Soluble material is commonly used to print support and support interface" +msgstr "" +"Çözünür malzeme genellikle destek ve destek arayüzünü yazdırmak için " +"kullanılır" + +msgid "Support material" +msgstr "Destek malzemesi" + +msgid "Support material is commonly used to print support and support interface" +msgstr "" +"Destek malzemesi yaygın olarak destek ve destek arayüzünü yazdırmak için " +"kullanılır" + +msgid "Softening temperature" +msgstr "Yumuşama sıcaklığı" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"Filament bu sıcaklıkta yumuşar, bu nedenle yatak sıcaklığı bununla eşit veya " +"daha yüksekse, tıkanmaları önlemek için ön kapağı açmanız ve/veya üst camı " +"çıkarmanız şiddetle önerilir." + +msgid "Price" +msgstr "Fiyat" + +msgid "Filament price. For statistics only" +msgstr "Filament fiyatı. Yalnızca istatistikler için" + +msgid "money/kg" +msgstr "ücret/kg" + +msgid "Vendor" +msgstr "Satıcı" + +msgid "Vendor of filament. For show only" +msgstr "Filament satıcısı. Yalnızca gösteri için" + +msgid "(Undefined)" +msgstr "(Tanımsız)" + +msgid "Sparse infill direction" +msgstr "Seyrek dolgu yönü" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Hattın başlangıcını veya ana yönünü kontrol eden seyrek dolgu deseni açısı" + +msgid "Solid infill direction" +msgstr "Katı dolgu yönü" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction of " +"line" +msgstr "" +"Hattın başlangıcını veya ana yönünü kontrol eden katı dolgu deseni açısı" + +msgid "Rotate solid infill direction" +msgstr "Katı dolgu yönünü döndür" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "Katı dolgu yönünü her katman için 90° döndürün." + +msgid "Sparse infill density" +msgstr "Dolgu yoğunluğu" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"İç seyrek dolgunun yoğunluğu, %100 tüm seyrek dolguyu katı dolguya dönüştürür " +"ve iç katı dolgu modeli kullanılacaktır" + +msgid "Sparse infill pattern" +msgstr "Dolgu deseni" + +msgid "Line pattern for internal sparse infill" +msgstr "İç dolgu deseni" + +msgid "Grid" +msgstr "Kafes" + +msgid "Line" +msgstr "Çizgi" + +msgid "Cubic" +msgstr "Kübik" + +msgid "Tri-hexagon" +msgstr "Üç altıgen" + +msgid "Gyroid" +msgstr "Jiroid" + +msgid "Honeycomb" +msgstr "Bal peteği" + +msgid "Adaptive Cubic" +msgstr "Uyarlanabilir kübik" + +msgid "3D Honeycomb" +msgstr "3D petek" + +msgid "Support Cubic" +msgstr "Destek kübik" + +msgid "Lightning" +msgstr "Yıldırım" + +msgid "Cross Hatch" +msgstr "Çapraz çizgi" + +msgid "Sparse infill anchor length" +msgstr "Dolgu uzunluğu" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter segment " +"shorter than infill_anchor_max is found, the infill line is connected to a " +"perimeter segment at just one side and the length of the perimeter segment " +"taken is limited to this parameter, but no longer than anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"Bir dolgu hattını, ek bir çevrenin kısa bir bölümü ile bir iç çevreye " +"bağlayın. Yüzde olarak ifade edilirse (örnek: %15) dolgu ekstrüzyon genişliği " +"üzerinden hesaplanır. Snapmaker Orca iki yakın dolgu hattını kısa bir çevre " +"segmentine bağlamaya çalışıyor. infill_anchor_max'tan daha kısa böyle bir " +"çevre segmenti bulunamazsa, dolgu hattı yalnızca bir taraftaki bir çevre " +"segmentine bağlanır ve alınan çevre segmentinin uzunluğu bu parametreyle " +"sınırlıdır, ancak çapa_uzunluk_max'tan uzun olamaz.\n" +"Tek bir dolgu hattına bağlı sabitleme çevrelerini devre dışı bırakmak için bu " +"parametreyi sıfıra ayarlayın." + +msgid "0 (no open anchors)" +msgstr "0 (açık bağlantı yok)" + +msgid "1000 (unlimited)" +msgstr "1000 (sınırsız)" + +msgid "Maximum length of the infill anchor" +msgstr "Dolgu maksimum uzunluk" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter segment " +"shorter than this parameter is found, the infill line is connected to a " +"perimeter segment at just one side and the length of the perimeter segment " +"taken is limited to infill_anchor, but no longer than this parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"Bir dolgu hattını, ek bir çevrenin kısa bir bölümü ile bir iç çevreye " +"bağlayın. Yüzde olarak ifade edilirse (örnek: %15) dolgu ekstrüzyon genişliği " +"üzerinden hesaplanır. Snapmaker Orca iki yakın dolgu hattını kısa bir çevre " +"segmentine bağlamaya çalışıyor. Bu parametreden daha kısa bir çevre segmenti " +"bulunamazsa, dolgu hattı sadece bir kenardaki bir çevre segmentine bağlanır " +"ve alınan çevre segmentinin uzunluğu infill_anchor ile sınırlıdır ancak bu " +"parametreden daha uzun olamaz.\n" +"0'a ayarlanırsa dolgu bağlantısı için eski algoritma kullanılacaktır; 1000 ve " +"0 ile aynı sonucu oluşturmalıdır." + +msgid "0 (Simple connect)" +msgstr "0 (Basit bağlantı)" + +msgid "Acceleration of outer walls" +msgstr "Dış duvarların hızlandırılması" + +msgid "Acceleration of inner walls" +msgstr "İç duvarların hızlandırılması" + +msgid "Acceleration of travel moves" +msgstr "Seyahat hareketlerinin hızlandırılması" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Üst yüzey dolgusunun hızlandırılması. Daha düşük bir değerin kullanılması üst " +"yüzey kalitesini iyileştirebilir" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Dış duvarın hızlanması. Daha düşük bir değer kullanmak kaliteyi artırabilir" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Köprülerin hızlandırılması. Değer yüzde olarak ifade edilirse (örn. %50), dış " +"duvar ivmesine göre hesaplanacaktır." + +msgid "mm/s² or %" +msgstr "mm/s² veya %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Seyrek dolgunun hızlandırılması. Değer yüzde olarak ifade edilirse (örn. " +"%100), varsayılan ivmeye göre hesaplanacaktır." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"İç katı dolgunun hızlandırılması. Değer yüzde olarak ifade edilirse (örn. " +"%100), varsayılan ivmeye göre hesaplanacaktır." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Başlangıç katmanının hızlandırılması. Daha düşük bir değerin kullanılması " +"baskı plakası yapışkanlığını iyileştirebilir" + +msgid "Enable accel_to_decel" +msgstr "Accel_to_decel'i etkinleştir" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "Klipper'ın max_accel_to_decel'i otomatik olarak ayarlanacak" + +msgid "accel_to_decel" +msgstr "Accel_to_decel" + +#, c-format, boost-format +msgid "Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "" +"Klipper'ın max_accel_to_decel değeri ivmenin bu %%'sine göre ayarlanacak" + +msgid "Jerk of outer walls" +msgstr "Dış duvar JERK değeri" + +msgid "Jerk of inner walls" +msgstr "İç duvarlar JERK değeri" + +msgid "Jerk for top surface" +msgstr "Üst yüzey için JERK değeri" + +msgid "Jerk for infill" +msgstr "Dolgu için JERK değeri" + +msgid "Jerk for initial layer" +msgstr "İlk katman için JERK değeri" + +msgid "Jerk for travel" +msgstr "Seyahat için JERK değeri" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"İlk katmanın çizgi genişliği. % olarak ifade edilirse Nozul çapı üzerinden " +"hesaplanacaktır." + +msgid "Initial layer height" +msgstr "Başlangıç katman yüksekliği" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly can " +"improve build plate adhension" +msgstr "" +"İlk katmanın yüksekliği. İlk katman yüksekliğini biraz kalın yapmak, baskı " +"plakasının yapışmasını iyileştirebilir" + +msgid "Speed of initial layer except the solid infill part" +msgstr "Katı dolgu kısmı dışındaki ilk katmanın hızı" + +msgid "Initial layer infill" +msgstr "Başlangıç katman dolgusu" + +msgid "Speed of solid infill part of initial layer" +msgstr "İlk katmanın katı dolgu kısmının hızı" + +msgid "Initial layer travel speed" +msgstr "İlk katman seyahat hızı" + +msgid "Travel speed of initial layer" +msgstr "İlk katman seyahat hızı" + +msgid "Number of slow layers" +msgstr "Yavaş katman sayısı" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"İlk birkaç katman normalden daha yavaş yazdırılır. Hız, belirtilen katman " +"sayısı boyunca doğrusal bir şekilde kademeli olarak artırılır." + +msgid "Initial layer nozzle temperature" +msgstr "İlk katman nozul sıcaklığı" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "Bu filamenti kullanırken ilk katmanı yazdırmak için nozul sıcaklığı" + +msgid "Full fan speed at layer" +msgstr "Maksimum fan hızı" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"Fan hızı, \"close_fan_the_first_x_layers\" katmanında sıfırdan " +"\"ful_fan_speed_layer\" katmanında maksimuma doğrusal olarak artırılacaktır. " +"\"full_fan_speed_layer\", \"close_fan_the_first_x_layers\" değerinden düşükse " +"göz ardı edilecektir; bu durumda fan, \"close_fan_the_first_x_layers\" + 1 " +"katmanında izin verilen maksimum hızda çalışacaktır." + +msgid "layer" +msgstr "katman" + +msgid "Support interface fan speed" +msgstr "Destekler için fan hızı" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"Bu fan hızı, yüksek fan hızıyla bağlarını zayıflatabilmek için tüm destek " +"arayüzlerinde uygulanır.\n" +"Bu geçersiz kılmayı devre dışı bırakmak için -1'e ayarlayın.\n" +"Yalnızca devre dışı_fan_first_layers tarafından geçersiz kılınabilir." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Duvara baskı yaparken rastgele titreme, böylece yüzeyin pürüzlü bir görünüme " +"sahip olması. Bu ayar bulanık konumu kontrol eder" + +msgid "Contour" +msgstr "Kontur" + +msgid "Contour and hole" +msgstr "Kontur ve delik" + +msgid "All walls" +msgstr "Tüm duvarlar" + +msgid "Fuzzy skin thickness" +msgstr "Bulanık kaplama kalınlığı" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"Titremenin gerçekleşeceği genişlik. Dış duvar çizgi genişliğinin altında " +"olması sakıncalıdır" + +msgid "Fuzzy skin point distance" +msgstr "Bulanık kaplama noktası mesafesi" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"Her çizgi parçasına eklenen rastgele noktalar arasındaki ortalama mesafe" + +msgid "Apply fuzzy skin to first layer" +msgstr "Bulanık cildi ilk katmana uygulayın" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "İlk katmana bulanık cilt uygulanıp uygulanmayacağı" + +msgid "Filter out tiny gaps" +msgstr "Küçük boşlukları filtrele" + +msgid "Layers and Perimeters" +msgstr "Katmanlar ve Çevreler" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "Belirtilen eşikten daha küçük boşlukları filtrele" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Boşluk doldurma hızı. Boşluk genellikle düzensiz çizgi genişliğine sahiptir " +"ve daha yavaş yazdırılmalıdır" + +msgid "Precise Z height" +msgstr "Hassas z yüksekliği" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Dilimlemeden sonra nesnenin kesin z yüksekliğini elde etmek için bunu " +"etkinleştirin. Son birkaç katmanın katman yüksekliklerine ince ayar yaparak " +"kesin nesne yüksekliğini elde edecektir. Bunun deneysel bir parametre " +"olduğunu unutmayın." + +msgid "Arc fitting" +msgstr "Ark" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. Klipper " +"does not benefit from arc commands as these are split again into line " +"segments by the firmware. This results in a reduction in surface quality as " +"line segments are converted to arcs by the slicer and then back to line " +"segments by the firmware." +msgstr "" +"G2 ve G3 hareketlerine sahip bir G kodu dosyası elde etmek için bunu " +"etkinleştirin. Montaj toleransı çözünürlükle aynıdır. \n" +"\n" +"Not: Klipper makineler için bu seçeneğin devre dışı bırakılması önerilir. " +"Klipper, yazılım tarafından tekrar çizgi bölümlerine bölündüğü için yay " +"komutlarından faydalanmaz. Bu, çizgi bölümlerinin dilimleyici tarafından " +"yaylara dönüştürülmesi ve ardından donanım yazılımı tarafından tekrar çizgi " +"bölümlerine dönüştürülmesi nedeniyle yüzey kalitesinde bir azalmaya neden " +"olur." + +msgid "Add line number" +msgstr "Satır numarası ekle" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Her G Kodu satırının başına satır numarası (Nx) eklemek için bunu " +"etkinleştirin" + +msgid "Scan first layer" +msgstr "İlk katmanı tara" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Yazıcıdaki kameranın ilk katmanın kalitesini kontrol etmesini sağlamak için " +"bunu etkinleştirin" + +msgid "Nozzle type" +msgstr "Nozul tipi" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"Nozulnin metalik malzemesi. Bu, nozulun aşınma direncini ve ne tür filamentin " +"basılabileceğini belirler" + +msgid "Undefine" +msgstr "Tanımsız" + +msgid "Hardened steel" +msgstr "Güçlendirilmiş çelik" + +msgid "Stainless steel" +msgstr "Paslanmaz çelik" + +msgid "Brass" +msgstr "Pirinç" + +msgid "Nozzle HRC" +msgstr "Nozul HRC" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"Nozul sertliği. Sıfır, dilimleme sırasında nozul sertliğinin kontrol " +"edilmediği anlamına gelir." + +msgid "HRC" +msgstr "sıcak rulo" + +msgid "Printer structure" +msgstr "Yazıcı yapısı" + +msgid "The physical arrangement and components of a printing device" +msgstr "Yazıcının fiziksel düzenlemesi ve bileşenleri" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "En iyi nesne konumu" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "Yatak şekline göre [0,1] aralığında en iyi otomatik düzenleme konumu." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code command: " +"M106 P2 S(0-255)." +msgstr "" +"Makinede yardımcı parça soğutma fanı varsa bu seçeneği etkinleştirin. G-code " +"komut: M106 P2 S(0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Fanı hedef başlangıç zamanından bu kadar saniye önce başlatın (kesirli " +"saniyeleri kullanabilirsiniz). Bu süre tahmini için sonsuz ivme varsayar ve " +"yalnızca G1 ve G0 hareketlerini hesaba katar (yay uydurma desteklenmez).\n" +"Fan komutlarını özel kodlardan taşımaz (bir çeşit 'bariyer' görevi " +"görürler).\n" +"'Yalnızca özel başlangıç gcode'u etkinleştirilmişse, fan komutları başlangıç " +"gcode'una taşınmayacaktır.\n" +"Devre dışı bırakmak için 0'ı kullanın." + +msgid "Only overhangs" +msgstr "Yalnızca çıkıntılar" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "Yalnızca çıkıntıların soğumasına ilişkin gecikme dikkate alınacaktır." + +msgid "Fan kick-start time" +msgstr "Fan başlatma süresi" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Soğutma fanını başlatmak için hedef hıza düşmeden önce bu süre boyunca " +"maksimum fan hızı komutunu verin.\n" +"Bu, düşük PWM/gücün fanın durma noktasından dönmeye başlaması veya fanın daha " +"hızlı hızlanması için yetersiz olabileceği fanlar için kullanışlıdır.\n" +"Devre dışı bırakmak için 0'a ayarlayın." + +msgid "Time cost" +msgstr "Zaman maliyeti" + +msgid "The printer cost per hour" +msgstr "Yazıcı saat başına maliyeti" + +msgid "money/h" +msgstr "ücret/sa" + +msgid "Support control chamber temperature" +msgstr "Destek kontrol ortam sıcaklığı" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Bu seçenek, hazne sıcaklığını kontrol eden makine desteği varsa " +"etkinleştirilir\n" +"G-code komut: M141 S(0-255)" + +msgid "Support air filtration" +msgstr "Hava filtrasyonu desteği" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Yazıcı hava filtrelemeyi destekliyorsa bunu etkinleştirin\n" +"G-code komut: M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "G-Kod Uyumu" + +msgid "What kind of gcode the printer is compatible with" +msgstr "Yazıcının ne tür bir gcode ile uyumlu olduğu" + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "Pelet modlu yazıcı" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "Yazıcınız filament yerine pellet kullanıyorsa bu seçeneği etkinleştirin" + +msgid "Support multi bed types" +msgstr "Çoklu plaka" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" +"Birden fazla plaka tipi kullanmak istiyorsanız bu seçeneği etkinleştirin" + +msgid "Label objects" +msgstr "Nesneleri etiketle" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject plugin. " +"This settings is NOT compatible with Single Extruder Multi Material setup and " +"Wipe into Object / Wipe into Infill." +msgstr "" +"G-Code etiketleme yazdırma hareketlerine ait oldukları nesneyle ilgili " +"yorumlar eklemek için bunu etkinleştirin; bu, Octoprint CancelObject " +"eklentisi için kullanışlıdır. Bu ayarlar Tek Ekstruder Çoklu Malzeme kurulumu " +"ve Nesneye Temizleme / Dolguya Temizleme ile uyumlu DEĞİLDİR." + +msgid "Exclude objects" +msgstr "Nesneleri hariç tut" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "G koduna EXCLUDE OBJECT komutunu eklemek için bu seçeneği etkinleştirin" + +msgid "Verbose G-code" +msgstr "Ayrıntılı G kodu" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Her satırın açıklayıcı bir metinle açıklandığı, yorumlu bir G kodu dosyası " +"almak için bunu etkinleştirin. SD karttan yazdırırsanız dosyanın ilave " +"ağırlığı ürün yazılımınızın yavaşlamasına neden olabilir." + +msgid "Infill combination" +msgstr "Dolgu kombinasyonu" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Zamanı azaltmak amacıyla birden fazla katmanın seyrek dolgusunu otomatik " +"olarak birleştirerek birlikte yazdırın. Duvar hala orijinal katman " +"yüksekliğinde basılmaktadır." + +msgid "Filament to print internal sparse infill." +msgstr "İç seyrek dolguyu yazdırmak için filament." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"İç seyrek dolgunun çizgi genişliği. % olarak ifade edilirse Nozul çapı " +"üzerinden hesaplanacaktır." + +msgid "Infill/Wall overlap" +msgstr "Dolgu/Duvar örtüşmesi" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. The " +"percentage value is relative to line width of sparse infill. Set this value " +"to ~10-15% to minimize potential over extrusion and accumulation of material " +"resulting in rough top surfaces." +msgstr "" +"Daha iyi yapışma için dolgu alanı duvarla örtüşecek şekilde hafifçe " +"genişletilir. Yüzde değeri seyrek dolgunun çizgi genişliğine göredir. Aşırı " +"ekstrüzyon ve pürüzlü üst yüzeylere neden olan malzeme birikmesi " +"potansiyelini en aza indirmek için bu değeri ~%10-15’e ayarlayın." + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "Üst/Alt katı dolgu/Duvar örtüşmesi" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill meets " +"the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"Üst katı dolgu alanı, daha iyi yapışma sağlamak ve üst dolgunun duvarlarla " +"buluştuğu yerde küçük deliklerin görünümünü en aza indirmek için duvarla üst " +"üste gelecek şekilde hafifçe genişletilir. %25-30’luk bir değer, iğne " +"deliklerinin görünümünü en aza indiren iyi bir başlangıç ​​noktasıdır. Yüzde " +"değeri seyrek dolgunun çizgi genişliğine göredir" + +msgid "Speed of internal sparse infill" +msgstr "İç seyrek dolgunun hızı" + +msgid "Interface shells" +msgstr "Arayüz kabukları" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual soluble " +"support material" +msgstr "" +"Bitişik malzemeler/hacimler arasında katı kabuk oluşumunu zorlayın. Yarı " +"saydam malzemelerle veya elle çözülebilen destek malzemesiyle çoklu ekstruder " +"baskıları için kullanışlıdır" + +msgid "Maximum width of a segmented region" +msgstr "Bölümlere ayrılmış bir bölgenin maksimum genişliği" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "" +"Bölümlere ayrılmış bir bölgenin maksimum genişliği. 0 bu özelliği devre dışı " +"bırakır." + +msgid "Interlocking depth of a segmented region" +msgstr "Bölümlere ayrılmış bir bölgenin birbirine kenetlenen derinliği" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Bölümlere ayrılmış bir bölgenin birbirine kenetlenen derinliği. 0 bu özelliği " +"devre dışı bırakır." + +msgid "Use beam interlocking" +msgstr "Işın kilitlemeyi kullanın" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" +"Farklı filamentlerin temas ettiği yerlerde birbirine kenetlenen ışın yapısı " +"oluşturun. Bu, özellikle farklı malzemelerle basılan modeller olmak üzere " +"filamentler arasındaki yapışmayı artırır." + +msgid "Interlocking beam width" +msgstr "Kilitli ışın genişliği" + +msgid "The width of the interlocking structure beams." +msgstr "Birbirine kenetlenen yapı kirişlerinin genişliği." + +msgid "Interlocking direction" +msgstr "Kilitleme yönü" + +msgid "Orientation of interlock beams." +msgstr "Kilitleme kirişlerinin yönelimi." + +msgid "Interlocking beam layers" +msgstr "Birbirine kenetlenen kiriş katmanları" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" +"Birbirine kenetlenen yapının kirişlerinin yüksekliği, katman sayısıyla " +"ölçülür. Daha az katman daha güçlüdür ancak kusurlara daha yatkındır." + +msgid "Interlocking depth" +msgstr "Kilitleme derinliği" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" +"Hücrelerde ölçülen, birbirine kenetlenen yapıyı oluşturmak için filamentler " +"arasındaki sınırdan mesafe. Çok az hücre yapışmanın zayıf olmasına neden olur." + +msgid "Interlocking boundary avoidance" +msgstr "Birbirine kenetlenen sınırdan kaçınma" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" +"Birbirine kenetlenen yapıların oluşturulmayacağı bir modelin dışına olan " +"mesafe, hücrelerde ölçülür." + +msgid "Ironing Type" +msgstr "Ütüleme tipi" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"Ütüleme, düz yüzeyi daha pürüzsüz hale getirmek için aynı yükseklikteki " +"yüzeye tekrar baskı yapmak için küçük akış kullanmaktır. Bu ayar hangi " +"katmanın ütüleneceğini kontrol eder" + +msgid "No ironing" +msgstr "Ütüleme yok" + +msgid "Top surfaces" +msgstr "Üst yüzeyler" + +msgid "Topmost surface" +msgstr "En üst yüzey" + +msgid "All solid layer" +msgstr "Tamamı katı katman" + +msgid "Ironing Pattern" +msgstr "Ütüleme Deseni" + +msgid "The pattern that will be used when ironing" +msgstr "Ütüleme işlemi sırasında kullanılacak desen" + +msgid "Ironing flow" +msgstr "Ütüleme akışı" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"Ütüleme sırasında çıkacak malzeme miktarı. Normal katman yüksekliğindeki " +"akışa göre. Çok yüksek değer yüzeyde aşırı ekstrüzyona neden olur" + +msgid "Ironing line spacing" +msgstr "Ütüleme çizgi aralığı" + +msgid "The distance between the lines of ironing" +msgstr "Ütü çizgileri arasındaki mesafe" + +msgid "Ironing speed" +msgstr "Ütüleme hızı" + +msgid "Print speed of ironing lines" +msgstr "Ütüleme çizgilerinin baskı hızı" + +msgid "Ironing angle" +msgstr "Ütüleme açısı" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"Köşebent ütüleme işlemi yapılır. Negatif bir sayı bu işlevi devre dışı " +"bırakır ve varsayılan yöntemi kullanır." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "" +"Bu gcode kısmı, z kaldırma işleminden sonra her katman değişikliğinde eklenir" + +msgid "Supports silent mode" +msgstr "Sessiz modu destekler" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Makinenin yazdırmak için daha düşük hızlanma kullandığı sessiz modu " +"destekleyip desteklemediği" + +msgid "Emit limits to G-code" +msgstr "G-kod sınırları" + +msgid "Machine limits" +msgstr "Yazıcı sınırları" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"Etkinleştirilirse, makine sınırları G kodu dosyasına aktarılacaktır.\n" +"G kodu tadı Klipper olarak ayarlandığında bu seçenek göz ardı edilecektir." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert pause " +"G-code in gcode viewer" +msgstr "" +"Bu G kodu duraklatma yazdırması için bir kod olarak kullanılacaktır. " +"Kullanıcı gcode görüntüleyiciye duraklatma G kodunu ekleyebilir" + +msgid "This G-code will be used as a custom code" +msgstr "Bu G kodu özel kod olarak kullanılacak" + +msgid "Small area flow compensation (beta)" +msgstr "Küçük alan akış telafisi (beta)" + +msgid "Enable flow compensation for small infill areas" +msgstr "Küçük dolgu alanları için akış telafisini etkinleştirin" + +msgid "Flow Compensation Model" +msgstr "Akış telafisi modeli" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"Akış Telafisi Modeli, küçük dolgu alanları için akışı ayarlamak için " +"kullanılır. Model, ekstrüzyon uzunluğu ve akış düzeltme faktörleri için " +"virgülle ayrılmış değer çifti olarak, her satıra bir tane olmak üzere " +"aşağıdaki formatta ifade edilir: \"1.234,5.678\"" + +msgid "Maximum speed X" +msgstr "Maksimum hız X" + +msgid "Maximum speed Y" +msgstr "Maksimum hız Y" + +msgid "Maximum speed Z" +msgstr "Maksimum hız Z" + +msgid "Maximum speed E" +msgstr "Maksimum hız E" + +msgid "Maximum X speed" +msgstr "Maksimum X hızı" + +msgid "Maximum Y speed" +msgstr "Maksimum Y hızı" + +msgid "Maximum Z speed" +msgstr "Maksimum Z hızı" + +msgid "Maximum E speed" +msgstr "Maksimum E hızı" + +msgid "Maximum acceleration X" +msgstr "Maksimum hızlanma X" + +msgid "Maximum acceleration Y" +msgstr "Maksimum hızlanma Y" + +msgid "Maximum acceleration Z" +msgstr "Maksimum hızlanma Z" + +msgid "Maximum acceleration E" +msgstr "Maksimum hızlanma E" + +msgid "Maximum acceleration of the X axis" +msgstr "X ekseninin maksimum hızlanması" + +msgid "Maximum acceleration of the Y axis" +msgstr "Y ekseninin maksimum ivmesi" + +msgid "Maximum acceleration of the Z axis" +msgstr "Z ekseninin maksimum hızlanması" + +msgid "Maximum acceleration of the E axis" +msgstr "E ekseninin maksimum hızlanması" + +msgid "Maximum jerk X" +msgstr "Maksimum sarsıntı X" + +msgid "Maximum jerk Y" +msgstr "Maksimum sarsıntı Y" + +msgid "Maximum jerk Z" +msgstr "Maksimum sarsıntı Z" + +msgid "Maximum jerk E" +msgstr "Maksimum sarsıntı E" + +msgid "Maximum jerk of the X axis" +msgstr "X ekseninin maksimum sarsıntısı (Jerk)" + +msgid "Maximum jerk of the Y axis" +msgstr "Y ekseninin maksimum sarsıntısı (Jerk)" + +msgid "Maximum jerk of the Z axis" +msgstr "Z ekseninin maksimum sarsıntısı (Jerk)" + +msgid "Maximum jerk of the E axis" +msgstr "E ekseninin maksimum sarsıntısı (Jerk)" + +msgid "Minimum speed for extruding" +msgstr "Ekstrüzyon için minimum hız" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Ekstrüzyon için minimum hız (M205 S)" + +msgid "Minimum travel speed" +msgstr "Minimum seyahat hızı" + +msgid "Minimum travel speed (M205 T)" +msgstr "Minimum ilerleme hızı (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Ekstrüzyon için maksimum hızlanma" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Ekstrüzyon için maksimum hızlanma (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Geri çekme için maksimum hızlanma" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Geri çekilme için maksimum hızlanma (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Seyahat için maksimum hızlanma" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "Seyahat için maksimum ivme (M204 T), yalnızca Marlin 2 için geçerlidir" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This is " +"the maximum speed limitation of part cooling fan" +msgstr "" +"Otomatik soğutma etkinleştirildiğinde parça soğutma fanı hızı artırılabilir. " +"Bu, parça soğutma fanının maksimum hız sınırlamasıdır" + +msgid "Max" +msgstr "Maksimum" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"Ekstruder için yazdırılabilir en büyük katman yüksekliği. Uyarlanabilir " +"katman yüksekliği etkinleştirildiğinde maksimum katman yüksekliğini " +"sınırlamak için kullanılır" + +msgid "Extrusion rate smoothing" +msgstr "Ekstrüzyon hızını yumuşatma" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when the " +"printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some marginal " +"benefit in certain cases where feature speeds vary greatly. For example, when " +"there are aggressive slowdowns due to overhangs. In these cases a high value " +"of around 300-350mm3/s2 is recommended as this allows for just enough " +"smoothing to assist pressure advance achieve a smoother flow transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Bu parametre, yazıcı yüksek akışlı (yüksek hız/daha büyük genişlik) bir " +"ekstrüzyondan daha düşük akışlı (daha düşük hız/küçük genişlik) bir " +"ekstrüzyona geçtiğinde veya tam tersi olduğunda meydana gelen ani ekstrüzyon " +"hızı değişikliklerini düzeltir.\n" +"\n" +"Ekstrude edilen hacimsel akışın mm3/sn cinsinden zaman içinde değişebileceği " +"maksimum oranı tanımlar. Daha yüksek değerler, daha yüksek ekstrüzyon hızı " +"değişikliklerine izin verildiği anlamına gelir ve daha hızlı hız geçişlerine " +"neden olur.\n" +"\n" +"0 değeri özelliği devre dışı bırakır. \n" +"\n" +"Yüksek hızlı, yüksek akışlı doğrudan tahrikli bir yazıcı için (Bambu lab veya " +"Voron gibi) bu değer genellikle gerekli değildir. Ancak özellik hızlarının " +"büyük ölçüde değiştiği bazı durumlarda marjinal bir fayda sağlayabilir. " +"Örneğin, çıkıntılar nedeniyle agresif yavaşlamalar olduğunda. Bu durumlarda " +"300-350mm3/s2 civarında yüksek bir değer önerilir çünkü bu, basınç " +"ilerlemesinin daha yumuşak bir akış geçişi elde etmesine yardımcı olmak için " +"yeterli yumuşatmaya izin verir.\n" +"\n" +"Basınç avansı olmayan daha yavaş yazıcılar için değer çok daha düşük " +"ayarlanmalıdır. Doğrudan tahrikli ekstruderler için 10-15mm3/s2 ve Bowden " +"tarzı için 5-10mm3/s2 değeri iyi bir başlangıç noktasıdır. \n" +"\n" +"Bu özellik Prusa slicer'da Basınç Dengeleyici olarak bilinir.\n" +"\n" +"Not: bu parametre ark montajını devre dışı bırakır." + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "Segment uzunluğunu yumuşatma" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Daha düşük bir değer, daha yumuşak ekstrüzyon hızı geçişleriyle sonuçlanır. " +"Ancak bu, önemli ölçüde daha büyük bir gcode dosyası ve yazıcının işlemesi " +"için daha fazla talimatla sonuçlanır. \n" +"\n" +"Varsayılan değer olan 3 çoğu durumda iyi çalışır. Yazıcınız takılıyorsa, " +"yapılan ayarlamaların sayısını azaltmak için bu değeri artırın\n" +"\n" +"İzin verilen değerler: 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "Parça soğutma fanı için minimum hız" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Yardımcı parça soğutma fanının hızı. Yardımcı fan, soğutma katmanlarının " +"bulunmadığı ilk birkaç katman dışında, yazdırma sırasında bu hızda " +"çalışacaktır.\n" +"Lütfen bu özelliği kullanmak için yazıcı ayarlarında yardımcı_fan'ı " +"etkinleştirin. G-code komut: M106 P2 S(0-255)" + +msgid "Min" +msgstr "Minimum" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"Ekstruder için yazdırılabilir en düşük katman yüksekliği. Kullanılan tp, " +"uyarlanabilir katman yüksekliğini etkinleştirirken minimum katman " +"yüksekliğini sınırlar" + +msgid "Min print speed" +msgstr "Minimum baskı hızı" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"Daha iyi katman soğutması için yavaşlama etkinleştirildiğinde, yukarıdaki " +"minimum katman süresini korumaya çalışmak için yazıcının yavaşlayacağı " +"minimum yazdırma hızı." + +msgid "Nozzle diameter" +msgstr "Nozul çapı" + +msgid "Diameter of nozzle" +msgstr "Nozul çapı" + +msgid "Configuration notes" +msgstr "Yapılandırma notları" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Buraya kişisel notlarınızı yazabilirsiniz. Bu not G-kodu başlık yorumlarına " +"eklenecektir." + +msgid "Host Type" +msgstr "Bağlantı Türü" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca, G kodu dosyalarını bir yazıcı ana bilgisayarına yükleyebilir. Bu " +"alan ana bilgisayarın türünü içermelidir." + +msgid "Nozzle volume" +msgstr "Nozul hacmi" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Kesici ile nozulun ucu arasındaki nozul hacmi" + +msgid "Cooling tube position" +msgstr "Soğutma borusu konumu" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "Soğutma borusunun merkez noktasının ekstruder ucundan uzaklığı." + +msgid "Cooling tube length" +msgstr "Soğutma borusu uzunluğu" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"İçindeki soğutma hareketleri alanını sınırlamak üzere soğutma tüpünün " +"uzunluğu." + +msgid "High extruder current on filament swap" +msgstr "Filament değişiminde yüksek ekstruder akımı" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Hızlı sıkıştırma hızlarına izin vermek ve kötü kesilmiş bir filament " +"yüklerken direncin üstesinden gelmek için filament değişim sırası sırasında " +"ekstruder motor akımını artırmak faydalı olabilir." + +msgid "Filament parking position" +msgstr "Filament park konumu" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Ekstruder ucunun, boşaltıldığında filamentin park edildiği konumdan uzaklığı. " +"Bu ayar yazıcı ürün yazılımındaki değerle eşleşmelidir." + +msgid "Extra loading distance" +msgstr "Ekstra yükleme mesafesi" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Sıfır olarak ayarlandığında, yükleme sırasında filamentin park konumundan " +"taşındığı mesafe, boşaltma sırasında geri taşındığı mesafe ile aynıdır. " +"Pozitif olduğunda daha fazla yüklenir, negatif olduğunda yükleme hareketi " +"boşaltmadan daha kısadır." + +msgid "Start end points" +msgstr "Başlangıç bitiş noktaları" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "Kesici bölgeden çöp kutusuna kadar olan başlangıç ve bitiş noktaları." + +msgid "Reduce infill retraction" +msgstr "Dolguda geri çekmeyi azalt" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex model " +"and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Hareket kesinlikle dolgu alanına girdiğinde geri çekilmeyin. Bu, sızıntının " +"görülemeyeceği anlamına gelir. Bu, karmaşık model için geri çekme sürelerini " +"azaltabilir ve yazdırma süresinden tasarruf sağlayabilir, ancak dilimlemeyi " +"ve G kodu oluşturmayı yavaşlatır" + +msgid "Filename format" +msgstr "Dosya adı formatı" + +msgid "User can self-define the project file name when export" +msgstr "" +"Kullanıcı dışa aktarma sırasında proje dosyası adını kendisi tanımlayabilir" + +msgid "Make overhangs printable" +msgstr "Çıkıntılar yazdırılabilir" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "" +"Destek malzemesi olmadan çıkıntıları yazdırmak için geometriyi değiştirin." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Maksimum yazdırılabilir açı" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Daha dik çıkıntıları yazdırılabilir hale getirdikten sonra izin verilen " +"maksimum çıkıntı açısı. 90°, modeli hiçbir şekilde değiştirmez ve herhangi " +"bir çıkıntıya izin vermez, 0 ise tüm çıkıntıları konik malzemeyle değiştirir." + +msgid "Make overhangs printable - Hole area" +msgstr "Yazdırılabilir çıkıntı delik alanı oluşturun" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by conical " +"material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Modelin tabanındaki bir deliğin, konik malzemeyle doldurulmadan önce maksimum " +"alanı. 0 değeri, model tabanındaki tüm delikleri dolduracaktır." + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "Çıkıntılı duvarı algıla" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different speed " +"to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Çizgi genişliğine göre çıkıntı yüzdesini tespit edin ve yazdırmak için farklı " +"hızlar kullanın. %%100 çıkıntı için köprü hızı kullanılır." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"İç duvarın çizgi genişliği. % olarak ifade edilirse Nozul çapı üzerinden " +"hesaplanacaktır." + +msgid "Speed of inner wall" +msgstr "İç duvarın hızı" + +msgid "Number of walls of every layer" +msgstr "Her katmanın duvar sayısı" + +msgid "Alternate extra wall" +msgstr "Alternatif ekstra duvar" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option needs " +"to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"Bu ayar her iki katmana ekstra bir duvar ekler. Bu şekilde dolgu duvarlar " +"arasında dikey olarak sıkışır ve daha güçlü baskılar elde edilir.\n" +"\n" +"Bu seçenek etkinleştirildiğinde dikey kabuk kalınlığını sağla seçeneğinin " +"devre dışı bırakılması gerekir. \n" +"\n" +"İlave çevrelerin sabitleneceği dolgu sınırlı olduğundan, bu seçenekle " +"birlikte yıldırım dolgusunun kullanılması önerilmez." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Çıktı G-kodunu özel komut dosyaları aracılığıyla işlemek istiyorsanız, mutlak " +"yollarını burada listeleyin. Birden fazla betiği noktalı virgülle ayırın. " +"Betiklere ilk argüman olarak G-code dosyasının mutlak yolu aktarılır ve ortam " +"değişkenlerini okuyarak Snapmaker Orca yapılandırma ayarlarına erişebilirler." + +msgid "Printer notes" +msgstr "Yazıcı notları" + +msgid "You can put your notes regarding the printer here." +msgstr "Yazıcı ile ilgili notlarınızı buraya yazabilirsiniz." + +msgid "Raft contact Z distance" +msgstr "Raft kontak Z mesafesi" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "Nesne ve raft arasındaki Z boşluğu. Çözünür arayüz için göz ardı edildi" + +msgid "Raft expansion" +msgstr "Raft genişletme" + +msgid "Expand all raft layers in XY plane" +msgstr "XY düzlemindeki tüm sal katmanlarını genişlet" + +msgid "Initial layer density" +msgstr "Başlangıç katman yoğunluğu" + +msgid "Density of the first raft or support layer" +msgstr "İlk sal veya destek katmanının yoğunluğu" + +msgid "Initial layer expansion" +msgstr "İlk katman genişletme" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Yatak plakası yapışmasını iyileştirmek için ilk raft veya destek katmanını " +"genişletin" + +msgid "Raft layers" +msgstr "Raft katmanları" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"Nesne bu sayıdaki destek katmanı tarafından yükseltilecektir. ABS yazdırırken " +"sarmayı önlemek için bu işlevi kullanın" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"Gcode dosyasında çok fazla nokta ve gcode çizgisinin olmaması için modelin " +"konturu basitleştirildikten sonra G-code yolu oluşturulur. Daha küçük değer, " +"daha yüksek çözünürlük ve dilimleme için daha fazla zaman anlamına gelir" + +msgid "Travel distance threshold" +msgstr "Seyahat mesafesi" + +msgid "" +"Only trigger retraction when the travel distance is longer than this threshold" +msgstr "" +"Geri çekmeyi yalnızca hareket mesafesi bu eşikten daha uzun olduğunda " +"tetikleyin" + +msgid "Retract amount before wipe" +msgstr "Temizleme işlemi öncesi geri çekme miktarı" + +msgid "The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"Geri çekme uzunluğuna göre, temizlemeden önce hızlı geri çekilmenin uzunluğu" + +msgid "Retract when change layer" +msgstr "Katman değişiminde geri çek" + +msgid "Force a retraction when changes layer" +msgstr "Katmanı değiştirdiğinde geri çekilmeyi zorla" + +msgid "Retraction Length" +msgstr "Geri Çekme Uzunluğu" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Uzun seyahat sırasında sızıntıyı önlemek için ekstruderdeki malzemenin bir " +"kısmı geri çekilir. Geri çekmeyi devre dışı bırakmak için sıfır ayarlayın" + +msgid "Long retraction when cut(experimental)" +msgstr "Kesildiğinde uzun geri çekilme (deneysel)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Deneysel özellik. Tasfiyeyi en aza indirmek için değişiklikler sırasında " +"filamentin daha uzun bir mesafeden geri çekilmesi ve kesilmesi. Bu, yıkamayı " +"önemli ölçüde azaltırken, aynı zamanda nozul tıkanması veya diğer yazdırma " +"sorunları riskini de artırabilir." + +msgid "Retraction distance when cut" +msgstr "Kesildiğinde geri çekilme mesafesi" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Deneysel özellik.Filament değişimi sırasında kesilmeden önce geri çekilme " +"uzunluğu" + +msgid "Z hop when retract" +msgstr "Geri çekme esnasında Z sıçraması" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Geri çekme işlemi her yapıldığında, nozul ile baskı arasında açıklık " +"oluşturmak için nozul biraz kaldırılır. Hareket halindeyken nozulun baskıya " +"çarpmasını önler. Z'yi kaldırmak için spiral çizgi kullanmak çekmeyi " +"önleyebilir" + +msgid "Z hop lower boundary" +msgstr "Z sıçrama alt sınırı" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Z sıçraması yalnızca Z bu değerin üzerinde ve parametrenin altında olduğunda " +"devreye girer: \"Z sıçraması üst sınırı\"" + +msgid "Z hop upper boundary" +msgstr "Z sıçrama üst sınırı" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Bu değer pozitifse, Z sıçraması yalnızca Z parametresinin üzerinde olduğunda " +"etkinleşir: \"Z sıçrama alt sınırı\" parametresinin üzerinde ve bu değerin " +"altında olduğunda" + +msgid "Z hop type" +msgstr "Z sıçraması türü" + +msgid "Slope" +msgstr "Eğim" + +msgid "Spiral" +msgstr "Spiral" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results in " +"Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "Z'yi sadece şu değerin üstündeki durumlarda kaldır" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Bunu pozitif bir değere ayarlarsanız Z kaldırması yalnızca belirtilen mutlak " +"Z'nin üzerinde gerçekleşecektir." + +msgid "Only lift Z below" +msgstr "Z'yi sadece şu değerin altındaki durumlarda kaldır" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Bunu pozitif bir değere ayarlarsanız, Z kaldırma işlemi yalnızca belirtilen " +"mutlak Z değerinin altında gerçekleşir." + +msgid "On surfaces" +msgstr "Yüzeyler" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Z Hop davranışını zorunlu kılın. Bu ayar yukarıdaki ayarlardan etkilenir " +"(Z'yi yalnızca yukarıya/aşağıya kaldırın)." + +msgid "All Surfaces" +msgstr "Tüm Yüzeyler" + +msgid "Top Only" +msgstr "Sadece üst" + +msgid "Bottom Only" +msgstr "Sadece alt" + +msgid "Top and Bottom" +msgstr "Üst ve alt" + +msgid "Extra length on restart" +msgstr "Yeniden başlatma sırasında ekstra uzunluk" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"İlerleme hareketinden sonra geri çekilme telafi edildiğinde, ekstruder bu ek " +"filament miktarını itecektir. Bu ayara nadiren ihtiyaç duyulur." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Takım değiştirildikten sonra geri çekilme telafi edildiğinde, ekstruder bu " +"ilave filament miktarını itecektir." + +msgid "Retraction Speed" +msgstr "Geri çekme hızı" + +msgid "Speed of retractions" +msgstr "Geri çekme hızları" + +msgid "Deretraction Speed" +msgstr "İleri itme Hızı" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Filamenti ekstrudere yeniden yükleme hızı. Sıfır, geri çekilmeyle aynı hız " +"anlamına gelir" + +msgid "Use firmware retraction" +msgstr "Yazılımsal geri çekme" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"Bu deneysel ayar, bellenimin geri çekme işlemini gerçekleştirmesini sağlamak " +"için G10 ve G11 komutlarını kullanır. Bu yalnızca son Marlin'de " +"desteklenmektedir." + +msgid "Show auto-calibration marks" +msgstr "Otomatik kalibrasyon işaretlerini göster" + +msgid "Disable set remaining print time" +msgstr "Kalan yazdırma süresini ayarlamayı devre dışı bırak" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" +"M73'ün oluşturulmasını devre dışı bırakın: Son gcode'da kalan yazdırma " +"süresini ayarlayın" + +msgid "Seam position" +msgstr "Dikiş konumu" + +msgid "The start position to print each part of outer wall" +msgstr "Dış duvarın her bir parçasını yazdırmak için başlangıç konumu" + +msgid "Nearest" +msgstr "En yakın" + +msgid "Aligned" +msgstr "Hizalı" + +msgid "Back" +msgstr "Arka" + +msgid "Random" +msgstr "Rastgele" + +msgid "Staggered inner seams" +msgstr "Kademeli iç dikişler" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Bu seçenek, iç dikişlerin derinliklerine göre geriye doğru kaydırılarak " +"zikzak desen oluşturulmasına neden olur." + +msgid "Seam gap" +msgstr "Dikiş boşluğu" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, the " +"loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the current " +"extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Kapalı döngü ekstrüzyonda dikişin görünürlüğünü azaltmak için döngü kesintiye " +"uğrar ve belirli bir miktarda kısaltılır.\n" +"Bu miktar milimetre cinsinden veya mevcut ekstruder çapının yüzdesi olarak " +"belirtilebilir. Bu parametrenin varsayılan değeri %10'dur." + +msgid "Scarf joint seam (beta)" +msgstr "Atkı birleşim dikişi (beta)" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Dikiş görünürlüğünü en aza indirmek ve dikiş mukavemetini arttırmak için atkı " +"birleşimini kullanın." + +msgid "Conditional scarf joint" +msgstr "Koşullu atkı birleşimi" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Atkı bağlantılarını yalnızca geleneksel dikişlerin keskin köşelerdeki " +"dikişleri etkili bir şekilde gizleyemediği düzgün kenarlara uygulayın." + +msgid "Conditional angle threshold" +msgstr "Koşullu açı eşiği" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value (indicating " +"the absence of sharp corners), a scarf joint seam will be used. The default " +"value is 155°." +msgstr "" +"Bu seçenek, koşullu bir atkı eklem dikişi uygulamak için eşik açısını " +"ayarlar.\n" +"Çevre halkası içindeki maksimum açı bu değeri aşarsa (keskin köşelerin " +"bulunmadığını gösterir), bir atkı birleştirme dikişi kullanılacaktır. " +"Varsayılan değer 155°'dir." + +msgid "Conditional overhang threshold" +msgstr "Koşullu çıkıntı eşiği" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set at " +"40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"Bu seçenek, atkı bağlantı dikişlerinin uygulanması için sarkma eşiğini " +"belirler. Çevrenin desteklenmeyen kısmı bu eşikten az ise atkı birleştirme " +"dikişleri uygulanacaktır. Varsayılan eşik, dış duvar genişliğinin %40'ına " +"ayarlanmıştır. Performans değerlendirmeleri nedeniyle çıkıntının derecesi " +"tahmin edilir." + +msgid "Scarf joint speed" +msgstr "Atkı birleşim hızı" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also advisable " +"to enable 'Extrusion rate smoothing' if the set speed varies significantly " +"from the speed of the outer or inner walls. If the speed specified here is " +"higher than the speed of the outer or inner walls, the printer will default " +"to the slower of the two speeds. When specified as a percentage (e.g., 80%), " +"the speed is calculated based on the respective outer or inner wall speed. " +"The default value is set to 100%." +msgstr "" +"Bu seçenek, atkı bağlantılarının yazdırma hızını ayarlar. Atkı " +"bağlantılarının yavaş bir hızda (100 mm/s'den az) yazdırılması tavsiye " +"edilir. Ayarlanan hızın dış veya iç duvarların hızından önemli ölçüde farklı " +"olması durumunda 'Ekstrüzyon hızı yumuşatma' seçeneğinin etkinleştirilmesi de " +"tavsiye edilir. Burada belirtilen hız, dış veya iç duvarların hızından daha " +"yüksekse, yazıcı varsayılan olarak iki hızdan daha yavaş olanı seçecektir. " +"Yüzde olarak belirtildiğinde (örn. %80), hız, ilgili dış veya iç duvar hızına " +"göre hesaplanır. Varsayılan değer %100 olarak ayarlanmıştır." + +msgid "Scarf joint flow ratio" +msgstr "Atkı birleşimi akış oranı" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" +"Bu faktör atkı birleşimlerinde kullanılacak materyal miktarını değiştirir." + +msgid "Scarf start height" +msgstr "Atkı başlangıç ​​yüksekliği" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the current " +"layer height. The default value for this parameter is 0." +msgstr "" +"Atkı başlangıç yüksekliği.\n" +"Bu miktar milimetre cinsinden veya geçerli katman yüksekliğinin yüzdesi " +"olarak belirtilebilir. Bu parametrenin varsayılan değeri 0'dır." + +msgid "Scarf around entire wall" +msgstr "Tüm duvarın etrafına atkıla" + +msgid "The scarf extends to the entire length of the wall." +msgstr "Atkı duvarın tüm uzunluğu boyunca uzanır." + +msgid "Scarf length" +msgstr "Atkı uzunluğu" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Atkının uzunluğu. Bu parametrenin 0 a ayarlanması atkıyı dolaylı yoldan devre " +"dışı bırakır." + +msgid "Scarf steps" +msgstr "Atkı kademesi" + +msgid "Minimum number of segments of each scarf." +msgstr "Her atkının minimum segment sayısı." + +msgid "Scarf joint for inner walls" +msgstr "İç duvarlar için atkı birleşimi" + +msgid "Use scarf joint for inner walls as well." +msgstr "İç duvarlar için de atkı birleşimini kullanın." + +msgid "Role base wipe speed" +msgstr "Otomatik temizleme hızı" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"Temizleme hızı mevcut ekstrüzyon rolünün hızına göre belirlenir; bir dış " +"duvar ekstrüzyonunun hemen ardından bir silme eylemi yürütülürse, silme " +"eylemi için dış duvar ekstrüzyonunun hızı kullanılacaktır." + +msgid "Wipe on loops" +msgstr "Döngülerde temizleme" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Kapalı döngü ekstrüzyonda dikişin görünürlüğünü en aza indirmek için, " +"ekstruder döngüden ayrılmadan önce içeriye doğru küçük bir hareket " +"gerçekleştirilir." + +msgid "Wipe before external loop" +msgstr "Harici döngüden önce silin" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an external " +"perimeter when printing with Outer/Inner or Inner/Outer/Inner wall print " +"order, the deretraction is performed slightly on the inside from the start of " +"the external perimeter. That way any potential over extrusion is hidden from " +"the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall print " +"order as in these modes it is more likely an external perimeter is printed " +"immediately after a deretraction move." +msgstr "" +"Dış/İç veya İç/Dış/İç duvar baskı sırası ile yazdırırken, dış çevrenin " +"başlangıcında olası aşırı çıkıntının görünürlüğünü en aza indirmek için, " +"kaldırma işlemi dış çevrenin başlangıcından itibaren biraz içeride " +"gerçekleştirilir. Bu şekilde herhangi bir aşırı ekstrüzyon potansiyeli dış " +"yüzeyden gizlenir. \n" +"\n" +"Bu, Dış/İç veya İç/Dış/İç duvar yazdırma sırası ile yazdırırken " +"kullanışlıdır, çünkü bu modlarda, bir geri çekilme hareketinin hemen ardından " +"bir dış çevrenin yazdırılması daha olasıdır." + +msgid "Wipe speed" +msgstr "Temizleme hızı" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"Temizleme hızı, bu konfigürasyonda belirtilen hız ayarına göre belirlenir. " +"Değer yüzde olarak ifade edilirse (örn. %80), yukarıdaki ilerleme hızı " +"ayarına göre hesaplanır. Bu parametrenin varsayılan değeri %80'dir" + +msgid "Skirt distance" +msgstr "Etek mesafesi" + +msgid "Distance from skirt to brim or object" +msgstr "Etekten kenara veya nesneye olan mesafe" + +msgid "Skirt height" +msgstr "Etek yüksekliği" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Etek katman sayısı. Genellikle tek katman" + +msgid "Draft shield" +msgstr "Rüzgarlık" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"Rüzgar taslağı nedeniyle ABS veya ASA baskının eğrilmesine ve baskı " +"yatağından ayrılmasına karşı koruma sağlamak için bir rüzgarlık " +"kullanışlıdır. Genellikle yalnızca açık çerçeveli, yani muhafazasız " +"yazıcılarda gereklidir. \n" +"\n" +"Seçenekler:\n" +"Etkin = etek, yazdırılan en yüksek nesne kadar uzundur.\n" +"Sınırlı = etek, etek yüksekliğinin belirttiği kadar uzundur.\n" +"\n" +"Not: Rüzgarlık etkinken etek, nesneden etek mesafesinde yazdırılacaktır. Bu " +"nedenle eğer kenarlar aktifse onlarla kesişebilir. Bunu önlemek için etek " +"mesafesi değerini artırın.\n" + +msgid "Limited" +msgstr "Sınırlı" + +msgid "Enabled" +msgstr "Etkin" + +msgid "Skirt loops" +msgstr "Etek sayısı" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "Etek için ilmek sayısı. Sıfır, eteği devre dışı bırakmak anlamına gelir" + +msgid "Skirt speed" +msgstr "Etek hızı" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" +"Eteğin hızı, mm/s cinsinden. Sıfır, varsayılan katman ekstrüzyon hızının " +"kullanılması anlamına gelir." + +msgid "Skirt minimum extrusion length" +msgstr "Etek minimum ekstrüzyon uzunluğu" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"Etek yazdırılırken mm cinsinden minimum filaman ekstrüzyon uzunluğu. Sıfır, " +"bu özelliğin devre dışı olduğu anlamına gelir.\n" +"\n" +"Yazıcı ana hat olmadan yazdırmak üzere ayarlanmışsa sıfır dışında bir değer " +"kullanmak yararlı olur." + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"Tahmini katman süresi bu değerden kısa olduğunda, bu katmanlar için daha iyi " +"soğutma sağlamak amacıyla, dışa aktarılan gcode'daki yazdırma hızı " +"yavaşlatılacaktır" + +msgid "Minimum sparse infill threshold" +msgstr "Minimum seyrek dolgu" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"Eşik değerinden küçük olan seyrek dolgu alanı, yerini iç katı dolguya " +"bırakmıştır" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be computed " +"over the nozzle diameter." +msgstr "" +"İç katı dolgunun çizgi genişliği. % olarak ifade edilirse Nozul çapı " +"üzerinden hesaplanacaktır." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "Üst ve alt yüzeyin değil, iç katı dolgunun hızı" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Spiralleştirme, dış konturun z hareketlerini yumuşatır. Ve katı bir modeli, " +"katı alt katmanlara sahip tek duvarlı bir baskıya dönüştürür. Oluşturulan son " +"modelde dikiş yok." + +msgid "Smooth Spiral" +msgstr "Pürüzsüz spiral" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Pürüzsüz Spiral, X ve Y hareketlerini de yumuşatır ve dikey olmayan " +"duvarlarda XY yönlerinde bile hiçbir görünür ek yeri oluşmamasını sağlar." + +msgid "Max XY Smoothing" +msgstr "Maksimum xy yumuşatma" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Düzgün bir spiral elde etmek için XY'deki noktaları hareket ettirmek için " +"maksimum mesafe % olarak ifade edilirse nozül çapı üzerinden hesaplanacaktır." + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a timelapse " +"video when printing completes. If smooth mode is selected, the toolhead will " +"move to the excess chute after each layer is printed and then take a " +"snapshot. Since the melt filament may leak from the nozzle during the process " +"of taking a snapshot, prime tower is required for smooth mode to wipe nozzle." +msgstr "" +"Düzgün veya geleneksel mod seçilirse her baskı için bir hızlandırılmış video " +"oluşturulacaktır. Her katman basıldıktan sonra oda kamerasıyla anlık görüntü " +"alınır. Bu anlık görüntülerin tümü, yazdırma tamamlandığında hızlandırılmış " +"bir video halinde birleştirilir. Düzgün modu seçilirse, her katman " +"yazdırıldıktan sonra araç kafası fazla kanala hareket edecek ve ardından bir " +"anlık görüntü alacaktır. Anlık görüntü alma işlemi sırasında eriyen filament " +"nozulden sızabileceğinden, nozulu silmek için düzgün modun kullanılması için " +"prime tower gereklidir." + +msgid "Traditional" +msgstr "Geleneksel" + +msgid "Temperature variation" +msgstr "Sıcaklık değişimi" + +msgid "Start G-code" +msgstr "Başlangıç G Kodu" + +msgid "Start G-code when start the whole printing" +msgstr "Baskı başladığında çalışacak G Kodu" + +msgid "Start G-code when start the printing of this filament" +msgstr "Bu filament ile baskı başladığında çalıştırılacak G-Kod" + +msgid "Single Extruder Multi Material" +msgstr "Tek ekstruder çoklu malzeme" + +msgid "Use single nozzle to print multi filament" +msgstr "Çoklu filament basmak için tek nozul kullan" + +msgid "Manual Filament Change" +msgstr "Manuel filament değişimi" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Sadece baskının başında özel Filament Değiştirme G-kodu'nu atlamak için bu " +"seçeneği etkinleştirin. Aracı değiştirme komutu (örneğin, T0), baskının " +"tamamı boyunca atlanacaktır. Bu, manuel çoklu malzeme baskısı için " +"kullanışlıdır, burada manuel filament değişim eylemini tetiklemek için M600/" +"PAUSE kullanırız." + +msgid "Purge in prime tower" +msgstr "Prime tower'da temizlik" + +msgid "Purge remaining filament into prime tower" +msgstr "Kalan filamenti Prime Tower'da boşalt" + +msgid "Enable filament ramming" +msgstr "Filament sıkıştırmayı etkinleştir" + +msgid "No sparse layers (beta)" +msgstr "Seyrek katman yok (beta)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no toolchanges. " +"On layers with a toolchange, extruder will travel downward to print the wipe " +"tower. User is responsible for ensuring there is no collision with the print." +msgstr "" +"Etkinleştirilirse, silme kulesi araç değişimi olmayan katmanlarda " +"yazdırılmayacaktır. Araç değişimi olan katmanlarda, ekstruder silme kulesini " +"yazdırmak için aşağı doğru hareket edecektir. Baskı ile çarpışma olmamasını " +"sağlamak kullanıcının sorumluluğundadır." + +msgid "Prime all printing extruders" +msgstr "Tüm ekstruderleri temizle" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Etkinleştirilirse, tüm baskı ekstruderleri baskının başlangıcında baskı " +"yatağının ön kenarında temizlenecektir." + +msgid "Slice gap closing radius" +msgstr "Dilim aralığı kapanma yarıçapı" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Üçgen mesh dilimleme sırasında 2x boşluk kapatma yarıçapından küçük çatlaklar " +"doldurulmaktadır. Boşluk kapatma işlemi son yazdırma çözünürlüğünü " +"düşürebilir, bu nedenle değerin oldukça düşük tutulması tavsiye edilir." + +msgid "Slicing Mode" +msgstr "Dilimleme modu" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to close " +"all holes in the model." +msgstr "" +"3DLabPrint uçak modelleri için \"Çift-tek\" seçeneğini kullanın. Modeldeki " +"tüm delikleri kapatmak için \"Delikleri kapat\"ı kullanın." + +msgid "Regular" +msgstr "Düzenli" + +msgid "Even-odd" +msgstr "Tek çift" + +msgid "Close holes" +msgstr "Delikleri kapat" + +msgid "Z offset" +msgstr "Z ofseti" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Bu değer, çıkış G-kodu içindeki tüm Z koordinatlarına eklenir (veya " +"çıkarılır).Bu, kötü Z endstop konumunu telafi etmek için kullanılır: örneğin, " +"endstop sıfır noktanız aslında nozulu baskı tablasından 0.3mm uzakta " +"bırakıyorsa, bu değeri -0.3 olarak ayarlayın (veya endstop'unuzu düzeltin)." + +msgid "Enable support" +msgstr "Desteği etkinleştir" + +msgid "Enable support generation." +msgstr "Destek oluşturmayı etkinleştir." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"Desteği otomatik olarak oluşturmak için normal(otomatik) ve ağaç(otomatik) " +"kullanılır. Normal(manuel) veya ağaç(manuel) seçilirse yalnızca destek " +"uygulayıcıları oluşturulur" + +msgid "normal(auto)" +msgstr "Normal(Otomatik)" + +msgid "tree(auto)" +msgstr "Ağaç(Otomatik)" + +msgid "normal(manual)" +msgstr "Normal(Manuel)" + +msgid "tree(manual)" +msgstr "Ağaç(Manuel)" + +msgid "Support/object xy distance" +msgstr "Destek/nesne xy mesafesi" + +msgid "XY separation between an object and its support" +msgstr "Bir nesne ile desteği arasındaki XY ayrımı" + +msgid "Pattern angle" +msgstr "Desen açısı" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "Destek desenini yatay düzlemde döndürmek için bu ayarı kullanın." + +msgid "On build plate only" +msgstr "Yalnızca baskı plakasında" + +msgid "Don't create support on model surface, only on build plate" +msgstr "Model yüzeyinde destek oluşturmayın, yalnızca baskı plakasında" + +msgid "Support critical regions only" +msgstr "Yalnızca kritik bölgeleri destekleyin" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Yalnızca keskin kuyruk, konsol vb. gibi kritik bölgeler için destek oluşturun." + +msgid "Remove small overhangs" +msgstr "Küçük çıkıntıları kaldır" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "Muhtemelen desteğe ihtiyaç duymayan küçük çıkıntıları kaldırın." + +msgid "Top Z distance" +msgstr "Üst Z mesafesi" + +msgid "The z gap between the top support interface and object" +msgstr "Üst destek arayüzü ile nesne arasındaki z boşluğu" + +msgid "Bottom Z distance" +msgstr "Alt Z mesafesi" + +msgid "The z gap between the bottom support interface and object" +msgstr "Alt destek arayüzü ile nesne arasındaki z boşluğu" + +msgid "Support/raft base" +msgstr "Destek/raft tabanı" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Destek tabanını ve salı yazdırmak için filament. \"Varsayılan\", destek için " +"belirli bir filamentin olmadığı ve mevcut filamentin kullanıldığı anlamına " +"gelir" + +msgid "Avoid interface filament for base" +msgstr "Taban için arayüz filamentini azaltın" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Destek tabanını yazdırmak için destek arayüzü filamentini kullanmaktan kaçının" + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Desteğin çizgi genişliği. % olarak ifade edilirse Nozul çapı üzerinden " +"hesaplanacaktır." + +msgid "Interface use loop pattern" +msgstr "Arayüz kullanım döngüsü modeli" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Desteklerin üst temas katmanını ilmeklerle örtün. Varsayılan olarak devre " +"dışıdır." + +msgid "Support/raft interface" +msgstr "Destek/raft arayüzü" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Filament baskı desteği arayüzü. \"Varsayılan\", destek arayüzü için özel bir " +"filamentin olmadığı ve mevcut filamentin kullanıldığı anlamına gelir" + +msgid "Top interface layers" +msgstr "Üst arayüz katmanları" + +msgid "Number of top interface layers" +msgstr "Üst arayüz katmanlarının sayısı" + +msgid "Bottom interface layers" +msgstr "Alt arayüz katmanları" + +msgid "Number of bottom interface layers" +msgstr "Alt arayüz katmanlarının sayısı" + +msgid "Same as top" +msgstr "Üsttekiyle aynı" + +msgid "Top interface spacing" +msgstr "Üst arayüz aralığı" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "Arayüz çizgilerinin aralığı. Sıfır, sağlam arayüz anlamına gelir" + +msgid "Bottom interface spacing" +msgstr "Alt arayüz aralığı" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "Alt arayüz çizgilerinin aralığı. Sıfır, sağlam arayüz anlamına gelir" + +msgid "Speed of support interface" +msgstr "Destek arayüzünün hızı" + +msgid "Base pattern" +msgstr "Destek deseni" + +msgid "Line pattern of support" +msgstr "Desteğin çizgi deseni" + +msgid "Rectilinear grid" +msgstr "Doğrusal ızgara" + +msgid "Hollow" +msgstr "Oyuk" + +msgid "Interface pattern" +msgstr "Arayüz deseni" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support interface " +"is Concentric" +msgstr "" +"Destek arayüzünün çizgi deseni. Çözünmeyen destek arayüzü için varsayılan " +"model Doğrusaldır, çözünebilir destek arayüzü için varsayılan model ise " +"eşmerkezlidir" + +msgid "Rectilinear Interlaced" +msgstr "Doğrusal Taramalı" + +msgid "Base pattern spacing" +msgstr "Destek desen aralığı" + +msgid "Spacing between support lines" +msgstr "Destek hatları arasındaki boşluk" + +msgid "Normal Support expansion" +msgstr "Normal destek genişletmesi" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "Normal desteğin yatay açıklığını genişletin (+) veya daraltın (-)" + +msgid "Speed of support" +msgstr "Destek hızı" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid style " +"will create similar structure to normal support under large flat overhangs." +msgstr "" +"Destek stil ve şekli. Normal destek için, destekleri düzenli bir ızgara içine " +"projelendirmek daha stabil destekler oluşturacaktır (varsayılan), aynı " +"zamanda sıkı destek kuleleri malzeme tasarrufu sağlar ve nesne üzerindeki " +"izleri azaltır.\n" +"Ağaç destek için, ince ve organik tarz, dalları daha etkili bir şekilde " +"birleştirir ve büyük düz çıkıntılarda normal destekle benzer bir yapı " +"oluştururken birçok malzeme tasarrufu sağlar (varsayılan organik tarz). " +"Hybrid stil, büyük düz çıkıntıların altında normal destekle benzer bir yapı " +"oluşturacaktır." + +msgid "Snug" +msgstr "Snug" + +msgid "Tree Slim" +msgstr "İnce Ağaç" + +msgid "Tree Strong" +msgstr "Güçlü Ağaç" + +msgid "Tree Hybrid" +msgstr "Hibrit Ağaç" + +msgid "Organic" +msgstr "Organik" + +msgid "Independent support layer height" +msgstr "Bağımsız destek katmanı yüksekliği" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Destek katmanı, nesne katmanından bağımsız olarak katman yüksekliğini " +"kullanır. Bu, z aralığının özelleştirilmesine destek olmak ve yazdırma " +"süresinden tasarruf etmek içindir. Prime tower etkinleştirildiğinde bu " +"seçenek geçersiz olacaktır." + +msgid "Threshold angle" +msgstr "Destek açısı" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "Eğim açısı eşiğin altında olan çıkmalar için destek oluşturulacaktır." + +msgid "Tree support branch angle" +msgstr "Ağaç desteği dal açısı" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of tree " +"support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Bu ayar, ağaç desteğinin dallarının oluşmasına izin verilen maksimum çıkıntı " +"açısını belirler. Açı artırılırsa, dallar daha yatay olarak basılabilir ve " +"daha uzağa ulaşır." + +msgid "Preferred Branch Angle" +msgstr "Tercih Edilen Dal Açısı" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"Modelden kaçınmak zorunda olmadıklarında dalların tercih edilen açısı. Daha " +"dikey ve daha dengeli olmaları için daha düşük bir açı kullanın. Dalların " +"daha hızlı birleşmesi için daha yüksek bir açı kullanın." + +msgid "Tree support branch distance" +msgstr "Ağaç destek dal mesafesi" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "Bu ayar, komşu ağaç destek düğümleri arasındaki mesafeyi belirler." + +msgid "Branch Density" +msgstr "Dal Yoğunluğu" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of the " +"branches. A higher value results in better overhangs but the supports are " +"harder to remove, thus it is recommended to enable top support interfaces " +"instead of a high branch density value if dense interfaces are needed." +msgstr "" +"Dalların uçlarını oluşturmak için kullanılan destek yapısının yoğunluğunu " +"ayarlar. Daha yüksek bir değer daha iyi çıkıntılarla sonuçlanır, ancak " +"desteklerin çıkarılması daha zordur, bu nedenle yoğun arayüzler gerekiyorsa " +"yüksek bir dal yoğunluğu değeri yerine üst destek arayüzlerinin " +"etkinleştirilmesi önerilir." + +msgid "Adaptive layer height" +msgstr "Uyarlanabilir katman yüksekliği" + +msgid "" +"Enabling this option means the height of tree support layer except the first " +"will be automatically calculated " +msgstr "" +"Bu seçeneğin etkinleştirilmesi, ilki hariç ağaç destek katmanının " +"yüksekliğinin otomatik olarak hesaplanacağı anlamına gelir " + +msgid "Auto brim width" +msgstr "Otomatik kenar genişliği" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"Bu seçeneğin etkinleştirilmesi, ağaç desteğinin kenar genişliğinin otomatik " +"olarak hesaplanacağı anlamına gelir" + +msgid "Tree support brim width" +msgstr "Ağaç desteği kenar genişliği" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "Ağaç dalından en dış kenar çizgisine kadar olan mesafe" + +msgid "Tip Diameter" +msgstr "Uç Çapı" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Organik destekler için dal ucu çapı." + +msgid "Tree support branch diameter" +msgstr "Ağaç destek dalı çapı" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Bu ayar, destek düğümlerinin başlangıç çapını belirler." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Dal Çapı Açısı" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"Aşağıya doğru giderek kalınlaşan dalların çapının açısı. Açının 0 olması, " +"dalların uzunlukları boyunca eşit kalınlığa sahip olmasına neden olacaktır. " +"Birazcık açı organik desteğin stabilitesini artırabilir." + +msgid "Branch Diameter with double walls" +msgstr "Çift duvarlı dal çapı" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no double " +"walls." +msgstr "" +"Bu çaptaki bir dairenin alanından daha büyük alana sahip dallar, stabilite " +"için çift duvarlı olarak basılacaktır. Çift duvar olmaması için bu değeri " +"sıfır olarak ayarlayın." + +msgid "Support wall loops" +msgstr "Destek duvarı döngüleri" + +msgid "This setting specify the count of walls around support" +msgstr "Bu ayar desteğin etrafındaki duvarların sayısını belirtir" + +msgid "Tree support with infill" +msgstr "Dolgulu ağaç desteği" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Bu ayar, ağaç desteğinin büyük oyuklarının içine dolgu eklenip " +"eklenmeyeceğini belirtir" + +msgid "Activate temperature control" +msgstr "Sıcaklık kontrolünü etkinleştirin" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Hazne sıcaklığı kontrolü için bu seçeneği etkinleştirin. Önce bir M191 komutu " +"eklenecek \"machine_start_gcode\"\n" +"G-code komut: M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "Bölme sıcaklığı" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Daha yüksek hazne sıcaklığı, eğrilmeyi bastırmaya veya azaltmaya yardımcı " +"olabilir ve ABS, ASA, PC, PA ve benzeri gibi yüksek sıcaklıktaki malzemeler " +"için potansiyel olarak daha yüksek ara katman yapışmasına yol açabilir Aynı " +"zamanda, ABS ve ASA'nın hava filtrasyonu daha da kötüleşecektir. PLA, PETG, " +"TPU, PVA ve diğer düşük sıcaklıktaki malzemeler için, tıkanmaları önlemek " +"için gerçek hazne sıcaklığı yüksek olmamalıdır, bu nedenle kapatma anlamına " +"gelen 0 şiddetle tavsiye edilir" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "İlk katmandan sonraki katmanlar için nozul sıcaklığı" + +msgid "Detect thin wall" +msgstr "İnce duvarı algıla" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"İki çizgi genişliğini içeremeyen ince duvarı tespit edin. Ve yazdırmak için " +"tek satır kullanın. Kapalı döngü olmadığından pek iyi basılmamış olabilir" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Bu gcode, takım değişimini tetiklemek için T komutu da dahil olmak üzere " +"filament değiştirildiğinde eklenir" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "Bu gcode, ekstrüzyon rolü değiştirildiğinde eklenir" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Üst yüzeyler için çizgi genişliği. % olarak ifade edilirse Nozul çapı " +"üzerinden hesaplanacaktır." + +msgid "Speed of top surface infill which is solid" +msgstr "Sağlam üst yüzey dolgusunun hızı" + +msgid "Top shell layers" +msgstr "Üst katmanlar" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Bu, üst yüzey katmanı da dahil olmak üzere üst kabuğun katı katmanlarının " +"sayısıdır. Bu değerle hesaplanan kalınlık üst kabuk kalınlığından ince " +"olduğunda üst kabuk katmanları artırılacaktır" + +msgid "Top solid layers" +msgstr "Üst katı katmanlar" + +msgid "Top shell thickness" +msgstr "Üst katman kalınlığı" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top shell " +"layers" +msgstr "" +"Üst kabuk katmanları tarafından hesaplanan kalınlık bu değerden daha ince ise " +"dilimleme sırasında üst katı katmanların sayısı artırılır. Bu, katman " +"yüksekliği küçük olduğunda kabuğun çok ince olmasını önleyebilir. 0, bu " +"ayarın devre dışı olduğu ve üst kabuğun kalınlığının kesinlikle üst kabuk " +"katmanları tarafından belirlendiği anlamına gelir" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Daha hızlı ve ekstrüzyonsuz seyahat hızı" + +msgid "Wipe while retracting" +msgstr "Geri çekme esnasında temizlik" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Nozul üzerinde sızan malzemeyi temizlemek için geri çekerken Nozulu son " +"ekstrüzyon yolu boyunca hareket ettirin. Bu işlem yeni parça yazdırırken " +"damlamayı en aza indirebilir" + +msgid "Wipe Distance" +msgstr "Temizleme mesafesi" + +msgid "" +"Discribe how long the nozzle will move along the last path when retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed to " +"retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"Geri çekilirken nozulun son yol boyunca ne kadar süre hareket edeceğini " +"açıklayın. \n" +"\n" +"Silme işleminin ne kadar sürdüğüne, ekstruder/filament geri çekme ayarlarının " +"ne kadar hızlı ve uzun olduğuna bağlı olarak, kalan filamanı geri çekmek için " +"bir geri çekme hareketine ihtiyaç duyulabilir. \n" +"\n" +"Aşağıdaki silme ayarından önce geri çekme miktarına bir değer ayarlamak, " +"silme işleminden önce aşırı geri çekme işlemini gerçekleştirecektir, aksi " +"takdirde silme işleminden sonra gerçekleştirilecektir." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"Temizleme kulesi, nesneleri yazdırırken görünüm kusurlarını önlemek amacıyla " +"nozul üzerindeki kalıntıları temizlemek ve nozul içindeki oda basıncını " +"dengelemek için kullanılabilir." + +msgid "Purging volumes" +msgstr "Hacimlerin temizlenmesi" + +msgid "Flush multiplier" +msgstr "Temizleme çarpanı" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"Gerçek temizleme hacimleri, tablodaki temizleme hacimleri ile temizleme " +"çarpanının çarpımına eşittir." + +msgid "Prime volume" +msgstr "Ana hacim" + +msgid "The volume of material to prime extruder on tower." +msgstr "Kule üzerindeki ana ekstruder malzeme hacmi." + +msgid "Width of prime tower" +msgstr "Prime tower genişliği" + +msgid "Wipe tower rotation angle" +msgstr "Silme kulesi dönüş açısı" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "X eksenine göre silme kulesi dönüş açısı." + +msgid "Stabilization cone apex angle" +msgstr "Stabilizasyon konisi tepe açısı" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Silme kulesini stabilize etmek için kullanılan koninin tepe noktasındaki açı. " +"Daha büyük açı daha geniş taban anlamına gelir." + +msgid "Wipe tower purge lines spacing" +msgstr "Silme kulesi temizleme hatları aralığı" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Silme kulesindeki boşaltma hatlarının aralığı." + +msgid "Maximum wipe tower print speed" +msgstr "Maksimum silme kulesi yazdırma hızı" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"Silme kulesinde temizleme yaparken ve silme kulesi seyrek katmanlarını " +"yazdırırken maksimum yazdırma hızı. Temizleme sırasında seyrek dolum hızı " +"veya filamanın maksimum hacimsel hızından hesaplanan hız daha düşükse, bunun " +"yerine en düşük olanı kullanılacaktır.\n" +"\n" +"Seyrek katmanları yazdırırken iç çevre hızı veya filamanın maksimum hacimsel " +"hızından hesaplanan hız daha düşükse bunun yerine en düşük olanı " +"kullanılacaktır.\n" +"\n" +"Bu hızın arttırılması kulenin stabilitesini etkileyebileceği gibi, nozülün " +"silme kulesi üzerinde oluşmuş olabilecek damlacıklarla çarpışma kuvvetini de " +"arttırabilir.\n" +"\n" +"Bu parametreyi varsayılan 90 mm/sn’nin üzerine çıkarmadan önce, yazıcınızın " +"artan hızlarda güvenilir şekilde köprü kurabildiğinden ve takım değişimi iyi " +"kontrol edildiğinde sızıntı yaptığından emin olun.\n" +"\n" +"Silme kulesi dış çevreleri için bu ayardan bağımsız olarak iç çevre hızı " +"kullanılır." + +msgid "Wipe tower extruder" +msgstr "Silme kulesi ekstruderi" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"Silme kulesinin çevresini yazdırırken kullanılacak ekstruder. Mevcut olanı " +"kullanmak için 0 olarak ayarlayın (çözünmeyen tercih edilir)." + +msgid "Purging volumes - load/unload volumes" +msgstr "Hacimleri temizleme - hacimleri yükleme/boşaltma" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"Bu vektör, silme kulesinde kullanılan her bir araçtan/araca geçiş için " +"gerekli hacimleri kaydeder. Bu değerler, aşağıdaki tam temizleme hacimlerinin " +"oluşturulmasını basitleştirmek için kullanılır." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Filament değişiminden sonra temizleme, nesnelerin dolgularının içinde " +"yapılacaktır. Bu, atık miktarını azaltabilir ve baskı süresini kısaltabilir. " +"Duvarlar şeffaf filament ile basılmışsa, karışık renkli dolgu dışarıda " +"görülecektir. Ana kule etkinleştirilmediği sürece etkili olmayacaktır." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"Filament değişiminden sonra temizleme, nesnelerin desteğinin içinde " +"yapılacaktır. Bu, atık miktarını azaltabilir ve baskı süresini kısaltabilir. " +"Prime tower etkinleştirilmediği sürece etkili olmayacaktır." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed as " +"a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Bu nesne, filamentten tasarruf etmek ve baskı süresini azaltmak için filament " +"değişiminden sonra nozulu temizlemek için kullanılacaktır. Sonuç olarak " +"nesnelerin renkleri karıştırılacaktır. Prime tower etkinleştirilmediği sürece " +"etkili olmayacaktır." + +msgid "Maximal bridging distance" +msgstr "Maksimum köprüleme mesafesi" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "" +"Bu nesne, filamentten tasarruf etmek ve baskı süresini azaltmak için bir " +"filament değişiminden sonra nozulu temizlemek için kullanılacaktır. Sonuç " +"olarak nesnelerin renkleri karıştırılacaktır. Prime tower etkinleştirilmediği " +"sürece etkili olmayacaktır." + +msgid "X-Y hole compensation" +msgstr "X-Y delik dengeleme" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Nesnenin delikleri XY düzleminde yapılandırılan değer kadar büyütülür veya " +"küçültülür. Pozitif değer delikleri büyütür. Negatif değer delikleri " +"küçültür. Bu fonksiyon, nesnenin montaj sorunu olduğunda boyutu hafifçe " +"ayarlamak için kullanılır" + +msgid "X-Y contour compensation" +msgstr "X-Y kontur telafisi" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"Nesnenin konturu XY düzleminde yapılandırılan değer kadar büyütülür veya " +"küçültülür. Pozitif değer konturu büyütür. Negatif değer konturu küçültür. Bu " +"fonksiyon, nesnenin montaj sorunu olduğunda boyutu hafifçe ayarlamak için " +"kullanılır" + +msgid "Convert holes to polyholes" +msgstr "Delikleri çokgen deliklere dönüştür" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Birden fazla katmana yayılan neredeyse dairesel delikleri arayın ve " +"geometriyi çoklu deliklere dönüştürün. Çoklu deliği hesaplamak için nozul " +"boyutunu ve (en büyük) çapı kullanın.\n" +"Bakın http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "Çokgen delik tespiti marjı" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to broaden " +"the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Bir noktanın dairenin tahmini yarıçapına göre maksimum sapması.\n" +"Silindirler genellikle farklı boyutlarda üçgenler olarak ihraç edildiğinden, " +"noktalar daire çevresinde olmayabilir. Bu ayar, algılamayı genişletmeniz için " +"size biraz alan sağlar.\n" +"inc mm cinsinden veya yarıçapın %'si cinsinden." + +msgid "Polyhole twist" +msgstr "Çokgen delik eğrisi" + +msgid "Rotate the polyhole every layer." +msgstr "Çokgeni her katmanda döndürün." + +msgid "G-code thumbnails" +msgstr "G-kodu küçük resimleri" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Resim boyutları aşağıdaki formatta bir .gcode ve .sl1 / .sl1s dosyalarında " +"saklanacaktır: \"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "G kodu küçük resimlerinin formatı" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, QOI " +"for low memory firmware" +msgstr "" +"G kodu küçük resimlerinin formatı: En iyi kalite için PNG, en küçük boyut " +"için JPG, düşük bellekli donanım yazılımı için QOI" + +msgid "Use relative E distances" +msgstr "Göreceli (relative) E mesafelerini kullan" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"\"label_objects\" seçeneği kullanılırken göreceli ekstrüzyon önerilir. Bazı " +"ekstrüderler bu seçenek işaretlenmediğinde daha iyi çalışır (mutlak " +"ekstrüzyon modu). Silme kulesi yalnızca göreceli modla uyumludur. Çoğu " +"yazıcıda önerilir. Varsayılan işaretlendi." + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with variable " +"extrusion width" +msgstr "" +"Klasik duvar oluşturucu sabit ekstrüzyon genişliğine sahip duvarlar üretir ve " +"çok ince alanlar için boşluk doldurma kullanılır. Arachne motoru değişken " +"ekstrüzyon genişliğine sahip duvarlar üretir" + +msgid "Classic" +msgstr "Klasik" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Duvar geçiş uzunluğu" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Parça inceldikçe farklı sayıdaki duvarlar arasında geçiş yaparken, duvar " +"parçalarını bölmek veya birleştirmek için belirli bir miktar alan ayrılır. " +"Nozul çapına göre yüzde olarak ifade edilir" + +msgid "Wall transitioning filter margin" +msgstr "Duvar geçiş filtresi oranı" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this margin " +"reduces the number of transitions, which reduces the number of extrusion " +"starts/stops and travel time. However, large extrusion width variation can " +"lead to under- or overextrusion problems. It's expressed as a percentage over " +"nozzle diameter" +msgstr "" +"Fazladan bir duvar ile bir eksik arasında ileri geri geçişi önleyin. Bu kenar " +"boşluğu, [Minimum duvar genişliği - kenar boşluğu, 2 * Minimum duvar " +"genişliği + kenar boşluğu] şeklinde takip eden ekstrüzyon genişlikleri " +"aralığını genişletir. Bu marjın arttırılması geçiş sayısını azaltır, bu da " +"ekstrüzyonun başlama/durma sayısını ve seyahat süresini azaltır. Bununla " +"birlikte, büyük ekstrüzyon genişliği değişimi, yetersiz veya aşırı ekstrüzyon " +"sorunlarına yol açabilir. Nozul çapına göre yüzde olarak ifade edilir" + +msgid "Wall transitioning threshold angle" +msgstr "Duvar geçiş açısı" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Çift ve tek sayıdaki duvarlar arasında geçişler ne zaman oluşturulmalıdır? Bu " +"ayardan daha büyük bir açıya sahip bir kama şeklinin geçişleri olmayacak ve " +"kalan alanı dolduracak şekilde ortada hiçbir duvar basılmayacaktır. Bu ayarın " +"düşürülmesi, bu merkez duvarların sayısını ve uzunluğunu azaltır ancak " +"boşluklara veya aşırı çıkıntıya neden olabilir" + +msgid "Wall distribution count" +msgstr "Duvar dağılım sayısı" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"Varyasyonun yayılması gereken, merkezden sayılan duvar sayısı. Daha düşük " +"değerler, dış duvarların genişliğinin değişmediği anlamına gelir" + +msgid "Minimum feature size" +msgstr "Minimum özellik boyutu" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than this " +"value will not be printed, while features thicker than the Minimum feature " +"size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"İnce özellikler için minimum kalınlık. Bu değerden daha ince olan model " +"özellikleri yazdırılmayacak, Minimum özellik boyutundan daha kalın olan " +"özellikler ise Minimum duvar genişliğine genişletilecektir. Nozul çapı " +"üzerinden yüzde olarak ifade edilir" + +msgid "Minimum wall length" +msgstr "Minimum duvar uzunluğu" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a top-" +"surface. 'One wall threshold' is only visibile if this setting is set above " +"the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"Yazdırma süresini artırabilecek kısa, kapatılmamış duvarların yazdırılmasını " +"önlemek için bu değeri ayarlayın. Daha yüksek değerler daha fazla ve daha " +"uzun duvarları kaldırır.\n" +"\n" +"NOT: Modelin dış kısmında görsel boşluk kalmaması için alt ve üst yüzeyler bu " +"değerden etkilenmeyecektir. Üst yüzey olarak kabul edilen şeyin hassasiyetini " +"ayarlamak için aşağıdaki Gelişmiş ayarlarda 'Tek duvar eşiği'ni ayarlayın. " +"'Tek duvar eşiği' yalnızca bu ayar varsayılan değer olan 0,5'in üzerine " +"ayarlandığında veya tek duvarlı üst yüzeyler etkinleştirildiğinde görünür." + +msgid "First layer minimum wall width" +msgstr "İlk katman minimum duvar genişliği" + +msgid "" +"The minimum wall width that should be used for the first layer is recommended " +"to be set to the same size as the nozzle. This adjustment is expected to " +"enhance adhesion." +msgstr "" +"İlk katman için kullanılması gereken minimum duvar genişliğinin nozul ile " +"aynı boyuta ayarlanması tavsiye edilir. Bu ayarlamanın yapışmayı artırması " +"beklenmektedir." + +msgid "Minimum wall width" +msgstr "Minimum duvar genişliği" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Modelin ince özelliklerinin yerini alacak duvarın genişliği (Minimum özellik " +"boyutuna göre). Minimum duvar genişliği özelliğin kalınlığından daha inceyse " +"duvar, özelliğin kendisi kadar kalın olacaktır. Nozul çapına göre yüzde " +"olarak ifade edilir" + +msgid "Detect narrow internal solid infill" +msgstr "Dar iç katı dolguyu tespit et" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. Otherwise, " +"rectilinear pattern is used defaultly." +msgstr "" +"Bu seçenek dar dahili katı dolgu alanını otomatik olarak algılayacaktır. " +"Etkinleştirilirse, yazdırmayı hızlandırmak amacıyla alanda eşmerkezli desen " +"kullanılacaktır. Aksi takdirde varsayılan olarak doğrusal desen kullanılır." + +msgid "invalid value " +msgstr "geçersiz değer " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Spiral vazo modu etkinleştirildiğinde geçersiz değer: " + +msgid "too large line width " +msgstr "çok büyük çizgi genişliği " + +msgid " not in range " +msgstr " aralıkta değil " + +msgid "Minimum save" +msgstr "Minimum tasarruf" + +msgid "export 3mf with minimum size." +msgstr "3mf'yi minimum boyutta dışa aktarın." + +msgid "No check" +msgstr "Kontrol yok" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"Gcode yol çakışmaları kontrolü gibi herhangi bir geçerlilik kontrolü " +"çalıştırmayın." + +msgid "Ensure on bed" +msgstr "Baskı yatağında olduğundan emin olun" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Kısmen aşağıda olduğunda nesneyi yatağın üzerine kaldırın. Varsayılan olarak " +"devre dışı" + +msgid "Orient Options" +msgstr "Yönlendirme Seçenekleri" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "" +"Yönlendirme seçenekleri: 0-devre dışı bırak, 1-etkinleştir, diğerleri-otomatik" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Z ekseni etrafında derece cinsinden dönüş açısı." + +msgid "Rotate around Y" +msgstr "Y etrafında döndür" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Y ekseni etrafında derece cinsinden dönüş açısı." + +msgid "Data directory" +msgstr "Veri dizini" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Ayarları verilen dizine yükleyin ve saklayın. Bu, farklı profilleri korumak " +"veya bir ağ depolama birimindeki yapılandırmaları dahil etmek için " +"kullanışlıdır." + +msgid "Load custom gcode" +msgstr "Özel gcode yükle" + +msgid "Load custom gcode from json" +msgstr "Json'dan özel gcode yükleyin" + +msgid "Current z-hop" +msgstr "Mevcut z-hop" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "Özel G kodu bloğunun başında bulunan z-hop'u içerir." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Ekstruderin özel G kodu bloğunun başlangıcındaki konumu. Özel G kodu başka " +"bir yere seyahat ederse, Slicer'ın kontrolü geri aldığında nereden seyahat " +"ettiğini bilmesi için bu değişkene yazması gerekir." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom G-" +"code moves the extruder axis, it should write to this variable so PrusaSlicer " +"deretracts correctly when it gets control back." +msgstr "" +"Özel G kodu bloğunun başlangıcındaki geri çekilme durumu. Özel G kodu " +"ekstruder eksenini hareket ettirirse, Slicer'ın kontrolü geri aldığında doğru " +"şekilde geri çekme yapması için bu değişkene yazması gerekir." + +msgid "Extra deretraction" +msgstr "Ekstra deretraksiyon" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" +"Şu anda, geri çekilmeden sonra ekstra ekstruder hazırlaması planlanıyor." + +msgid "Current extruder" +msgstr "Mevcut ekstruder" + +msgid "Zero-based index of currently used extruder." +msgstr "Şu anda kullanılan ekstruderin sıfır tabanlı indeksi." + +msgid "Current object index" +msgstr "Geçerli nesne dizini" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Sıralı yazdırmaya özel. Şu anda yazdırılan nesnenin sıfır tabanlı dizini." + +msgid "Has wipe tower" +msgstr "Silme kulesi var" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Yazdırmada silme kulesinin oluşturulup oluşturulmayacağı." + +msgid "Initial extruder" +msgstr "İlk ekstruder" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Baskıda kullanılan ilk ekstruderin sıfır bazlı indeksi. başlangıç_aracı ile " +"aynı." + +msgid "Initial tool" +msgstr "Başlangıç ​​aracı" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Baskıda kullanılan ilk ekstruderin sıfır bazlı indeksi. İlk ekstruder ile " +"aynı." + +msgid "Is extruder used?" +msgstr "Ekstruder kullanılıyor mu?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" +"Belirli bir ekstruderin baskıda kullanılıp kullanılmadığını belirten bool " +"vektörü." + +msgid "Volume per extruder" +msgstr "Ekstruder başına hacim" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" +"Baskının tamamı boyunca ekstruder başına ekstrüzyona tabi tutulan toplam " +"filament hacmi." + +msgid "Total toolchanges" +msgstr "Toplam takım değişiklikleri" + +msgid "Number of toolchanges during the print." +msgstr "Yazdırma sırasındaki takım değişikliği sayısı." + +msgid "Total volume" +msgstr "Toplam hacim" + +msgid "Total volume of filament used during the entire print." +msgstr "Baskının tamamı boyunca kullanılan filamentin toplam hacmi." + +msgid "Weight per extruder" +msgstr "Ekstruder başına ağırlık" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" +"Baskının tamamı boyunca ekstrüzyon yapılan ekstruder başına ağırlık. Filament " +"Ayarlarındaki filaman yoğunluğu değerinden hesaplanır." + +msgid "Total weight" +msgstr "Toplam ağırlık" + +msgid "" +"Total weight of the print. Calculated from filament_density value in Filament " +"Settings." +msgstr "" +"Baskının toplam ağırlığı. Filament Ayarlarındaki filaman yoğunluğu değerinden " +"hesaplanır." + +msgid "Total layer count" +msgstr "Toplam katman sayısı" + +msgid "Number of layers in the entire print." +msgstr "Baskının tamamındaki katman sayısı." + +msgid "Number of objects" +msgstr "Nesne sayısı" + +msgid "Total number of objects in the print." +msgstr "Baskıdaki toplam nesne sayısı." + +msgid "Number of instances" +msgstr "Örnek sayısı" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" +"Tüm nesneler üzerinden toplanan, yazdırmadaki nesne örneklerinin toplam " +"sayısı." + +msgid "Scale per object" +msgstr "Nesne başına ölçeklendirme" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"Bireysel nesnelere hangi ölçeklendirmenin uygulandığına ilişkin bilgileri " +"içeren bir dize içerir. Nesnelerin indekslenmesi sıfır tabanlıdır (ilk " +"nesnenin indeksi 0'dır).\n" +"Örnek: 'x:100% y:50% z:100'." + +msgid "Input filename without extension" +msgstr "Uzantı olmadan dosya adını girin" + +msgid "Source filename of the first object, without extension." +msgstr "İlk nesnenin kaynak dosya adı, uzantısız." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" +"Vektörün iki öğesi vardır: noktanın x ve y koordinatı. Değerler mm " +"cinsindendir." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values in " +"mm." +msgstr "" +"Vektörün iki öğesi vardır: sınırlayıcı kutunun x ve y boyutu. Değerler mm " +"cinsindendir." + +msgid "First layer convex hull" +msgstr "İlk katman dışbükey gövde" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"Birinci katmanın dışbükey gövdesinin noktalarının vektörü. Her öğe şu formata " +"sahiptir:'[x, y]' (x ve y, mm cinsinden kayan noktalı sayılardır)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "İlk katman sınırlayıcı kutusunun sol alt köşesi" + +msgid "Top-right corner of first layer bounding box" +msgstr "İlk katman sınırlayıcı kutusunun sağ üst köşesi" + +msgid "Size of the first layer bounding box" +msgstr "İlk katman sınırlayıcı kutusunun boyutu" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "Baskı yatağı sınırlama kutusunun sol alt köşesi" + +msgid "Top-right corner of print bed bounding box" +msgstr "Baskı yatağı sınırlayıcı kutusunun sağ üst köşesi" + +msgid "Size of the print bed bounding box" +msgstr "Baskı yatağı sınırlama kutusunun boyutu" + +msgid "Timestamp" +msgstr "Zaman damgası" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "Geçerli saati yyyyMMdd-hhmmss biçiminde içeren dize." + +msgid "Day" +msgstr "Day" + +msgid "Hour" +msgstr "Saat" + +msgid "Minute" +msgstr "Dakika" + +msgid "Print preset name" +msgstr "Ön ayar adını yazdır" + +msgid "Name of the print preset used for slicing." +msgstr "Dilimleme için kullanılan yazdırma ön ayarının adı." + +msgid "Filament preset name" +msgstr "Filament ön ayar adı" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Dilimleme için kullanılan filament ön ayarlarının adları. Değişken, her " +"ekstruder için bir isim içeren bir vektördür." + +msgid "Printer preset name" +msgstr "Yazıcı ön ayar adı" + +msgid "Name of the printer preset used for slicing." +msgstr "Dilimleme için kullanılan yazıcı ön ayarının adı." + +msgid "Physical printer name" +msgstr "Fiziksel yazıcı adı" + +msgid "Name of the physical printer used for slicing." +msgstr "Dilimleme için kullanılan fiziksel yazıcının adı." + +msgid "Layer number" +msgstr "Katman numarası" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "Geçerli katmanın dizini. Tek tabanlı (yani ilk katman 1 numaradır)." + +msgid "Layer z" +msgstr "Z katmanı" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Geçerli katmanın baskı yatağı üzerindeki yüksekliği, katmanın tepesine kadar " +"ölçülür." + +msgid "Maximal layer z" +msgstr "Maksimum katman z" + +msgid "Height of the last layer above the print bed." +msgstr "Baskı yatağının üzerindeki son katmanın yüksekliği." + +msgid "Filament extruder ID" +msgstr "Filament ekstruder kimliği" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "Geçerli ekstruder kimliği. Mevcut ekstruder ile aynı." + +msgid "Error in zip archive" +msgstr "Zip arşivinde hata" + +msgid "Generating walls" +msgstr "Duvar oluşturma" + +msgid "Generating infill regions" +msgstr "Dolgu bölgeleri oluşturma" + +msgid "Generating infill toolpath" +msgstr "Dolgu takım yolu oluşturma" + +msgid "Detect overhangs for auto-lift" +msgstr "Otomatik kaldırma için çıkıntıları tespit edin" + +msgid "Generating support" +msgstr "Destek oluşturma" + +msgid "Checking support necessity" +msgstr "Destek gerekliliğinin kontrol edilmesi" + +msgid "floating regions" +msgstr "yayılmış bölgeler" + +msgid "floating cantilever" +msgstr "yüzen konsol" + +msgid "large overhangs" +msgstr "büyük çıkıntılar" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Görünüşe göre %s nesnesinde %s var. Lütfen nesneyi yeniden yönlendirin veya " +"destek oluşturmayı etkinleştirin." + +msgid "Optimizing toolpath" +msgstr "Takım yolunu optimize etme" + +msgid "Slicing mesh" +msgstr "Mesh dilimleme" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"Hiçbir katman algılanmadı. STL dosyalarınızı onarmak veya boyutlarını veya " +"kalınlıklarını kontrol edip yeniden denemek isteyebilirsiniz.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"Bir nesnenin XY boyutu telafisi , aynı zamanda renkli boyalı olduğundan " +"kullanılmayacaktır.\n" +"XY Boyut telafisi renkli boyamayla birleştirilemez." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Destek: %d katmanında takım yolu oluştur" + +msgid "Support: detect overhangs" +msgstr "Destek: çıkıntıları tespit et" + +msgid "Support: generate contact points" +msgstr "Destek: iletişim noktaları oluştur" + +msgid "Support: propagate branches" +msgstr "Destek: dal şeklinde oluştur" + +msgid "Support: draw polygons" +msgstr "Destek: çokgen çizme" + +msgid "Support: generate toolpath" +msgstr "Destek: takım yolu oluştur" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Destek: %d katmanında çokgenler oluşturma" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Destek: %d katmanındaki delikleri düzeltin" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Destek: %d katmanındaki dalları çoğalt" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Bilinmeyen dosya formatı. Giriş dosyası .stl, .obj, .amf(.xml) uzantılı " +"olmalıdır." + +msgid "Loading of a model file failed." +msgstr "Model dosyasının yüklenmesi başarısız oldu." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "Sağlanan dosya boş olduğundan okunamadı" + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Bilinmeyen dosya formatı. Giriş dosyası .3mf veya .zip.amf uzantılı olmalıdır." + +msgid "Canceled" +msgstr "İptal edildi" + +msgid "load_obj: failed to parse" +msgstr "load_obj: ayrıştırılamadı" + +msgid "load mtl in obj: failed to parse" +msgstr "obj’ye mtl yükle: ayrıştırılamadı" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "Dosya 4'ten fazla köşesi olan çokgenler içeriyor." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "Dosya 2'den az köşesi olan çokgenler içeriyor." + +msgid "The file contains invalid vertex index." +msgstr "Dosya geçersiz köşe dizini içeriyor." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "Bu OBJ dosyası boş olduğundan okunamadı." + +msgid "Flow Rate Calibration" +msgstr "Akış Hızı Kalibrasyonu" + +msgid "Max Volumetric Speed Calibration" +msgstr "Maksimum Hacimsel Hız Kalibrasyonu" + +msgid "Manage Result" +msgstr "Sonucu Yönet" + +msgid "Manual Calibration" +msgstr "Manuel Kalibrasyon" + +msgid "Result can be read by human eyes." +msgstr "Sonuç insan gözüyle okunabilir." + +msgid "Auto-Calibration" +msgstr "Otomatik Kalibrasyon" + +msgid "We would use Lidar to read the calibration result" +msgstr "Kalibrasyon sonucunu okumak için Lidar'ı kullanırdık" + +msgid "Prev" +msgstr "Önceki" + +msgid "Recalibration" +msgstr "Yeniden kalibrasyon" + +msgid "Calibrate" +msgstr "Kalibre et" + +msgid "Finish" +msgstr "Bitir" + +msgid "How to use calibration result?" +msgstr "Kalibrasyon sonucu nasıl kullanılır?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"Malzeme düzenlemede Akış Dinamiği Kalibrasyon Faktörünü değiştirebilirsiniz" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"Yazıcının mevcut ürün yazılımı sürümü kalibrasyonu desteklemiyor.\n" +"Lütfen yazıcının ürün yazılımını yükseltin." + +msgid "Calibration not supported" +msgstr "Kalibrasyon desteklenmiyor" + +msgid "Error desc" +msgstr "Hata açıklaması" + +msgid "Extra info" +msgstr "Fazladan bilgi" + +msgid "Flow Dynamics" +msgstr "Akış Dinamiği" + +msgid "Flow Rate" +msgstr "Akış hızı" + +msgid "Max Volumetric Speed" +msgstr "Maksimum Hacimsel Hız" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Lütfen geçerli değerleri girin:\n" +"Başlangıç değeri: >= %.1f\n" +"Bitiş değeri: <= %.1f\n" +"Bitiş değeri: > Başlangıç değeri\n" +"Değer adımı: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "Ad boş olamaz." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "Seçilen ön ayar: %s bulunamadı." + +msgid "The name cannot be the same as the system preset name." +msgstr "Ad, sistem ön ayarının adıyla aynı olamaz." + +msgid "The name is the same as another existing preset name" +msgstr "Ad, mevcut başka bir ön ayar adıyla aynı" + +msgid "create new preset failed." +msgstr "yeni ön ayar oluşturma başarısız oldu." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Mevcut kalibrasyonu iptal edip ana sayfaya dönmek istediğinizden emin misiniz?" + +msgid "No Printer Connected!" +msgstr "Yazıcı Bağlı Değil!" + +msgid "Printer is not connected yet." +msgstr "Yazıcı henüz bağlanmadı." + +msgid "Please select filament to calibrate." +msgstr "Lütfen kalibre edilecek filamenti seçin." + +msgid "The input value size must be 3." +msgstr "Giriş değeri boyutu 3 olmalıdır." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can delete " +"the existing historical results and then start calibration. Or you can " +"continue the calibration, but you cannot create new calibration historical " +"results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"Bu makine tipi, püskürtme ucu başına yalnızca 16 geçmiş sonucu tutabilir. " +"Mevcut geçmiş sonuçları silebilir ve ardından kalibrasyona başlayabilirsiniz. " +"Veya kalibrasyona devam edebilirsiniz ancak yeni kalibrasyon geçmişi " +"sonuçları oluşturamazsınız.\n" +"Hala kalibrasyona devam etmek istiyor musunuz?" + +msgid "Connecting to printer..." +msgstr "Yazıcıya bağlanılıyor..." + +msgid "The failed test result has been dropped." +msgstr "Başarısız olan test sonucu düşürüldü." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Akış Dinamiği Kalibrasyonu sonucu yazıcıya kaydedildi" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. Only " +"one of the results with the same name is saved. Are you sure you want to " +"override the historical result?" +msgstr "" +"Aynı ada sahip geçmiş bir kalibrasyon sonucu zaten var: %s. Aynı ada sahip " +"sonuçlardan yalnızca biri kaydedilir. Geçmiş sonucu geçersiz kılmak " +"istediğinizden emin misiniz?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"Bu makine türü püskürtme ucu başına yalnızca %d geçmiş sonucunu tutabilir. Bu " +"sonuç kaydedilmeyecek." + +msgid "Internal Error" +msgstr "İç hata" + +msgid "Please select at least one filament for calibration" +msgstr "Lütfen kalibrasyon için en az bir filament seçin" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "Akış hızı kalibrasyon sonucu ön ayara kaydedildi" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "Maksimum hacimsel hız kalibrasyon sonucu ön ayara kaydedildi" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Akış Dinamiği Kalibrasyonuna ne zaman ihtiyacınız olur" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future use. " +"You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the filament " +"is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Artık farklı filamentler için tamamen otomatik olan otomatik kalibrasyonu " +"ekledik ve sonuç ileride kullanılmak üzere yazıcıya kaydedilecek. " +"Kalibrasyonu yalnızca aşağıdaki sınırlı durumlarda yapmanız gerekir:\n" +"1. Farklı marka/modelde yeni bir filament taktıysanız veya filament " +"nemliyse;\n" +"2. Nozul aşınmışsa veya yenisiyle değiştirilmişse;\n" +"3. Filament ayarında maksimum hacimsel hız veya baskı sıcaklığı " +"değiştirilirse." + +msgid "About this calibration" +msgstr "Bu kalibrasyon hakkında" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the filament " +"before the print; When you start a multi color/material print, the printer " +"will use the default compensation parameter for the filament during every " +"filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" +"Akış Dinamiği Kalibrasyonu ile ilgili detayları Wiki'mizden bulabilirsiniz.\n" +"\n" +"Genellikle kalibrasyon gereksizdir. Baskı başlatma menüsünde \"akış " +"dinamikleri kalibrasyonu\" seçeneği işaretliyken tek renkli/malzemeli bir " +"baskı başlattığınızda, yazıcı eski yolu izleyecek, baskıdan önce filamenti " +"kalibre edecektir; Çok renkli/malzemeli bir baskı başlattığınızda, yazıcı her " +"filament değişimi sırasında filament için varsayılan telafi parametresini " +"kullanacaktır ve bu da çoğu durumda iyi bir sonuç verecektir.\n" +"\n" +"Yapı plakası üzerinde yetersiz yapışma gibi kalibrasyon sonuçlarını " +"güvenilmez hale getirebilecek birkaç durum olduğunu lütfen unutmayın. " +"Yapıştırma plakası yıkanarak veya yapıştırıcı uygulanarak yapışmanın " +"iyileştirilmesi sağlanabilir. Bu konu hakkında daha fazla bilgi için lütfen " +"Wiki sayfamıza bakın.\n" +"\n" +"Kalibrasyon sonuçları testimizde yaklaşık yüzde 10 titremeye sahiptir, bu da " +"sonucun her kalibrasyonda tam olarak aynı olmamasına neden olabilir. Yeni " +"güncellemelerle iyileştirmeler yapmak için hala temel nedeni araştırıyoruz." + +msgid "When to use Flow Rate Calibration" +msgstr "Akış Hızı Kalibrasyonu ne zaman kullanılmalı" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"Akış Dinamiği Kalibrasyonunu kullandıktan sonra hâlâ aşağıdaki gibi bazı " +"ekstrüzyon sorunları olabilir:\n" +"1. Aşırı Ekstrüzyon: Basılı nesnenizdeki fazla malzeme, kabarcıklar veya " +"sivilceler oluşturuyor veya katmanlar beklenenden daha kalın görünüyor ve " +"tekdüze değil.\n" +"2. Eksik Ekstrüzyon: Yavaş yazdırırken bile çok ince katmanlar, zayıf dolgu " +"mukavemeti veya modelin üst katmanındaki boşluklar.\n" +"3. Kötü Yüzey Kalitesi: Baskılarınızın yüzeyi pürüzlü veya düzensiz " +"görünüyor.\n" +"4. Zayıf Yapısal Bütünlük: Baskılar kolayca kırılıyor veya olması gerektiği " +"kadar sağlam görünmüyor." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Ayrıca RC uçaklarında kullanılan LW-PLA gibi köpürtücü malzemeler için Akış " +"Hızı Kalibrasyonu çok önemlidir. Bu malzemeler ısıtıldığında büyük oranda " +"genleşir ve kalibrasyon yararlı bir referans akış hızı sağlar." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular filament, " +"you usually won't need to perform a Flow Rate Calibration unless you still " +"see the listed defects after you have done other calibrations. For more " +"details, please check out the wiki article." +msgstr "" +"Akış Hızı Kalibrasyonu, beklenen ekstrüzyon hacimlerinin gerçek ekstrüzyon " +"hacimlerine oranını ölçer. Varsayılan ayar, önceden kalibre edilmiş ve ince " +"ayar yapılmış olduğundan Bambu Lab yazıcılarında ve resmi filamentlerde iyi " +"çalışır. Normal bir filament için, diğer kalibrasyonları yaptıktan sonra " +"listelenen kusurları hâlâ göremediğiniz sürece genellikle Akış Hızı " +"Kalibrasyonu yapmanıza gerek kalmaz. Daha fazla ayrıntı için lütfen wiki " +"makalesine göz atın." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not be " +"suitable for this calibration and can produce less-than-desirable results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We are " +"still improving the accuracy and compatibility of this calibration through " +"firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Otomatik Akış Hızı Kalibrasyonu, Bambu Lab'ın Mikro-Lidar teknolojisini " +"kullanarak kalibrasyon modellerini doğrudan ölçer. Ancak, bu yöntemin " +"etkinliğinin ve doğruluğunun belirli malzeme türleriyle tehlikeye " +"girebileceğini lütfen unutmayın. Özellikle şeffaf veya yarı şeffaf, parlak " +"parçacıklı veya yüksek yansıtıcı yüzeye sahip filamentler bu kalibrasyon için " +"uygun olmayabilir ve arzu edilenden daha az sonuçlar üretebilir.\n" +"\n" +"Kalibrasyon sonuçları her kalibrasyon veya filament arasında farklılık " +"gösterebilir. Zaman içinde ürün yazılımı güncellemeleriyle bu kalibrasyonun " +"doğruluğunu ve uyumluluğunu geliştirmeye devam ediyoruz.\n" +"\n" +"Dikkat: Akış Hızı Kalibrasyonu, yalnızca amacını ve sonuçlarını tam olarak " +"anlayan kişiler tarafından denenmesi gereken gelişmiş bir işlemdir. Yanlış " +"kullanım, ortalamanın altında baskılara veya yazıcının zarar görmesine neden " +"olabilir. Lütfen işlemi yapmadan önce işlemi dikkatlice okuyup anladığınızdan " +"emin olun." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Maksimum Hacimsel Hız Kalibrasyonuna ihtiyaç duyduğunuzda" + +msgid "Over-extrusion or under extrusion" +msgstr "Aşırı ekstrüzyon veya düşük ekstrüzyon" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"Aşağıdakilerle yazdırdığınızda Maksimum Hacimsel Hız kalibrasyonu önerilir:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "önemli termal büzülme/genleşmeye sahip malzeme, örneğin..." + +msgid "materials with inaccurate filament diameter" +msgstr "yanlış filament çapına sahip malzemeler" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "En iyi Akış Dinamiği Kalibrasyon Faktörünü bulduk" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The failed " +"test result would be dropped." +msgstr "" +"Kalibrasyonun bir kısmı başarısız oldu! Plakayı temizleyip tekrar " +"deneyebilirsiniz. Başarısız olan test sonucu görmezden gelinir." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in the " +"Name" +msgstr "*İsme marka, malzeme, tür ve hatta nem seviyesini eklemenizi öneririz" + +msgid "Failed" +msgstr "Başarısız" + +msgid "Please enter the name you want to save to printer." +msgstr "Lütfen yazıcıya kaydetmek istediğiniz adı girin." + +msgid "The name cannot exceed 40 characters." +msgstr "Ad 40 karakteri aşamaz." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Aynı ada sahip sonuçlardan yalnızca biri kaydedilecektir. Diğer sonuçları " +"geçersiz kılmak istediğinizden emin misiniz?" + +msgid "Please find the best line on your plate" +msgstr "Lütfen plakadaki en iyi çizgiyi bulun" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Lütfen mükemmel ekstrüzyon derecesine sahip köşeyi bulun" + +msgid "Input Value" +msgstr "Girdi değeri" + +msgid "Save to Filament Preset" +msgstr "Filament Ön Ayarına Kaydet" + +msgid "Preset" +msgstr "Ön ayar" + +msgid "Record Factor" +msgstr "Kayıt Faktörü" + +msgid "We found the best flow ratio for you" +msgstr "Sizin için en iyi akış oranını bulduk" + +msgid "Flow Ratio" +msgstr "Akış Oranı" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "Lütfen geçerli bir değer girin (0,0 < akış oranı < 2,0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Lütfen kaydetmek istediğiniz ön ayarın adını girin." + +msgid "Calibration1" +msgstr "Kalibrasyon1" + +msgid "Calibration2" +msgstr "Kalibrasyon2" + +msgid "Please find the best object on your plate" +msgstr "Lütfen plakadaki en iyi nesneyi bulun" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "En pürüzsüz üst yüzeye sahip bloğun üzerindeki değeri doldurun" + +msgid "Skip Calibration2" +msgstr "Kalibrasyon2'yi atla" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "akış oranı : %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Lütfen üst yüzeyi en pürüzsüz olan bloğu seçin" + +msgid "Please choose a block with smoothest top surface." +msgstr "Lütfen üst yüzeyi en pürüzsüz olan bloğu seçin." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "Lütfen geçerli bir değer girin (0 <= Maksimum Hacimsel Hız <= 60)" + +msgid "Calibration Type" +msgstr "Kalibrasyon Türü" + +msgid "Complete Calibration" +msgstr "Kalibrasyonu Tamamla" + +msgid "Fine Calibration based on flow ratio" +msgstr "Akış oranına dayalı İnce Kalibrasyon" + +msgid "Title" +msgstr "Başlık" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Test modeli yazdırılacaktır. Kalibrasyondan önce lütfen baskı plakasını " +"temizleyin ve yatağa geri koyun." + +msgid "Printing Parameters" +msgstr "Yazdırma Parametreleri" + +msgid "Plate Type" +msgstr "Plaka Tipi" + +msgid "filament position" +msgstr "filament konumu" + +msgid "External Spool" +msgstr "Harici Makara" + +msgid "Filament For Calibration" +msgstr "Kalibrasyon İçin Filament" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Kalibrasyon malzemesi için ipuçları:\n" +"- Aynı baskı yatağı sıcaklığını paylaşabilen malzemeler\n" +"- Farklı filament markası ve türü(Marka = Bambu, Tür = Basic, Matte)" + +msgid "Pattern" +msgstr "Desen" + +msgid "Method" +msgstr "Yöntem" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s, %s ile uyumlu değil" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "Flow Dynamics Otomatik Kalibrasyonunda TPU desteklenmiyor." + +msgid "Connecting to printer" +msgstr "Yazıcıya bağlanılıyor" + +msgid "From k Value" +msgstr "K değerinden" + +msgid "To k Value" +msgstr "K değerine" + +msgid "Step value" +msgstr "Adım değeri" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "Nozul çapı yazıcı ayarlarından senkronize edildi" + +msgid "From Volumetric Speed" +msgstr "Hacimsel Hızdan" + +msgid "To Volumetric Speed" +msgstr "Hacimsel Hıza" + +msgid "Flow Dynamics Calibration Result" +msgstr "Akış Dinamiği Kalibrasyon Sonucu" + +msgid "New" +msgstr "Yeni" + +msgid "No History Result" +msgstr "Geçmiş Sonucu Yok" + +msgid "Success to get history result" +msgstr "Geçmiş sonucunu alma başarısı" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Geçmiş Akış Dinamiği Kalibrasyon kayıtlarını yenileme" + +msgid "Action" +msgstr "İşlem" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "" +"Bu makine türü püskürtme ucu başına yalnızca %d geçmiş sonucunu tutabilir." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Akış Dinamiği Kalibrasyonunu Düzenle" + +msgid "New Flow Dynamic Calibration" +msgstr "Yeni Akış Dinamik Kalibrasyonu" + +msgid "Ok" +msgstr "Tamam" + +msgid "The filament must be selected." +msgstr "Filament seçilmelidir." + +msgid "Network lookup" +msgstr "Ağ araması" + +msgid "Address" +msgstr "Adres" + +msgid "Hostname" +msgstr "Ana yazıcıadı" + +msgid "Service name" +msgstr "Hizmet adı" + +msgid "OctoPrint version" +msgstr "OctoPrint sürümü" + +msgid "Searching for devices" +msgstr "Cihazlar aranıyor" + +msgid "Finished" +msgstr "Bitti" + +msgid "Multiple resolved IP addresses" +msgstr "Birden fazla çözülmüş IP adresi" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"%1% ana bilgisayar adına çözümlenen birkaç IP adresi var.\n" +"Hangisinin kullanılacağını seçin." + +msgid "PA Calibration" +msgstr "PA Kalibrasyonu" + +msgid "DDE" +msgstr "DDE" + +msgid "Bowden" +msgstr "Bowden" + +msgid "Extruder type" +msgstr "Ekstruder tipi" + +msgid "PA Tower" +msgstr "PA Kulesi" + +msgid "PA Line" +msgstr "PA Çizgi" + +msgid "PA Pattern" +msgstr "PA Deseni" + +msgid "Start PA: " +msgstr "PA başlangıcı: " + +msgid "End PA: " +msgstr "PA bitişi: " + +msgid "PA step: " +msgstr "PA adımı: " + +msgid "Print numbers" +msgstr "Sayıları yazdır" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Lütfen geçerli değerleri girin:\n" +"PA'yı başlat: >= 0,0\n" +"PA'yı sonlandır: > PA'yı başlat\n" +"PA adımı: >= 0,001)" + +msgid "Temperature calibration" +msgstr "Sıcaklık kalibrasyonu" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "PCTG" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Filament türü" + +msgid "Start temp: " +msgstr "Başlangıç sıcaklığı: " + +msgid "End temp: " +msgstr "Bitiş: " + +msgid "Temp step: " +msgstr "Sıcaklık adımı: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Lütfen geçerli değerleri girin:\n" +"Başlangıç sıcaklığı: <= 350\n" +"Bitiş sıcaklığı: >= 170\n" +"Başlangıç sıcaklığı > Bitiş sıcaklığı + 5)" + +msgid "Max volumetric speed test" +msgstr "Maksimum hacimsel hız testi" + +msgid "Start volumetric speed: " +msgstr "Hacimsel hız başlangıcı: " + +msgid "End volumetric speed: " +msgstr "Hacimsel hız bitişi: " + +msgid "step: " +msgstr "adım: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Lütfen geçerli değerleri girin:\n" +"başlangıç > 0 \n" +"adım >= 0\n" +"bitiş > başlangıç + adım)" + +msgid "VFA test" +msgstr "VFA testi" + +msgid "Start speed: " +msgstr "Başlangıç hızı: " + +msgid "End speed: " +msgstr "Bitiş hızı: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Lütfen geçerli değerleri girin:\n" +"başlangıç > 10 \n" +"adım >= 0\n" +"bitiş > başlangıç + adım)" + +msgid "Start retraction length: " +msgstr "Geri çekme uzunluğu başlangıcı: " + +msgid "End retraction length: " +msgstr "Geri çekme uzunluğu bitişi: " + +msgid "mm/mm" +msgstr "mm/mm" + +msgid "Send G-Code to printer host" +msgstr "G Kodunu yazıcı ana bilgisayarına gönder" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Yazıcıya aşağıdaki dosya adıyla yükleyin:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "Gerekirse dizin ayırıcısı olarak eğik çizgileri ( / ) kullanın." + +msgid "Upload to storage" +msgstr "Depolama alanına yükle" + +msgid "Switch to Device tab after upload." +msgstr "Yüklemeden sonra Cihaz sekmesine geçin." + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "Yüklenen dosya adı \"%s\" ile bitmiyor. Devam etmek istiyor musunuz?" + +msgid "Upload" +msgstr "Yükle" + +msgid "Print host upload queue" +msgstr "Ana yazıcıyükleme kuyruğunu yazdır" + +msgid "ID" +msgstr "İD" + +msgid "Progress" +msgstr "İlerleme" + +msgid "Host" +msgstr "Host" + +msgctxt "OfFile" +msgid "Size" +msgstr "Boyut" + +msgid "Filename" +msgstr "Dosya adı" + +msgid "Cancel selected" +msgstr "Seçileni iptal et" + +msgid "Show error message" +msgstr "Hata mesajını göster" + +msgid "Enqueued" +msgstr "Sıraya alındı" + +msgid "Uploading" +msgstr "Yükleniyor" + +msgid "Cancelling" +msgstr "İptal Ediliyor" + +msgid "Error uploading to print host" +msgstr "Yazdırma ana bilgisayarına yükleme hatası" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Seçilen parçalarda bölme işlemi gerçekleştirilemiyor" + +msgid "Mesh Boolean" +msgstr "Mesh Boolean" + +msgid "Union" +msgstr "Union" + +msgid "Difference" +msgstr "Fark" + +msgid "Intersection" +msgstr "Kesişim" + +msgid "Source Volume" +msgstr "Kaynak Hacmi" + +msgid "Tool Volume" +msgstr "Araç Hacmi" + +msgid "Subtract from" +msgstr "Şundan çıkar" + +msgid "Subtract with" +msgstr "Şununla çıkar" + +msgid "selected" +msgstr "seçili" + +msgid "Part 1" +msgstr "Bölüm 1" + +msgid "Part 2" +msgstr "Bölüm 2" + +msgid "Delete input" +msgstr "Girişi sil" + +msgid "Network Test" +msgstr "Ağ testi" + +msgid "Start Test Multi-Thread" +msgstr "Çoklu İş Parçacığı Testini Başlat" + +msgid "Start Test Single-Thread" +msgstr "Tek İş Parçacığı Testini Başlat" + +msgid "Export Log" +msgstr "Logu Dışa Aktar" + +msgid "Snapmaker Orca Version:" +msgstr "Snapmaker Orca Sürümü:" + +msgid "System Version:" +msgstr "Sistem Versiyonu:" + +msgid "DNS Server:" +msgstr "Dns sunucusu:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "Snapmaker Orca'ı (GitHub) test edin" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "Snapmaker Orca'ı (GitHub) test edin:" + +msgid "Test Bing.com" +msgstr "Bing.com'u test edin" + +msgid "Test bing.com:" +msgstr "Bing.com'u test edin:" + +msgid "Log Info" +msgstr "Günlük Bilgisi" + +msgid "Select filament preset" +msgstr "Filament ön ayarını seçin" + +msgid "Create Filament" +msgstr "Filament Oluştur" + +msgid "Create Based on Current Filament" +msgstr "Mevcut Filamente Göre Oluşturun" + +msgid "Copy Current Filament Preset " +msgstr "Geçerli Filament Ön Ayarını Kopyala " + +msgid "Basic Information" +msgstr "Temel Bilgiler" + +msgid "Add Filament Preset under this filament" +msgstr "Bu filamentin altına Filament Ön Ayarını ekleyin" + +msgid "We could create the filament presets for your following printer:" +msgstr "Aşağıdaki yazıcınız için filament ön ayarlarını oluşturabiliriz:" + +msgid "Select Vendor" +msgstr "Satıcıyı Seçin" + +msgid "Input Custom Vendor" +msgstr "Özel Satıcı Girin" + +msgid "Can't find vendor I want" +msgstr "İstediğim satıcıyı bulamıyorum" + +msgid "Select Type" +msgstr "Tür Seçin" + +msgid "Select Filament Preset" +msgstr "Filament Ön Ayarını Seçin" + +msgid "Serial" +msgstr "Seri" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "Örneğin. Basic, Mat, İpek, Mermer" + +msgid "Filament Preset" +msgstr "Filament Ön Ayarı" + +msgid "Create" +msgstr "Oluştur" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Satıcı seçilmedi, lütfen satıcıyı yeniden seçin." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "Özel satıcı girişi yapılmaz, lütfen özel satıcıyı girin." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"\"Bambu\" veya \"Genel\" özel filamentler için Satıcı olarak kullanılamaz." + +msgid "Filament type is not selected, please reselect type." +msgstr "Filament türü seçilmedi, lütfen türünü seçin." + +msgid "Filament serial is not inputed, please input serial." +msgstr "Filamentin serisi girilmedi, lütfen seri numarasını girin." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"Filamentin satıcı veya seri numarası girişinde kaçış karakterleri olabilir. " +"Lütfen silip tekrar giriniz." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Özel satıcı veya seri numarasındaki tüm girişler boşluklardan oluşuyor. " +"Lütfen tekrar girin." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "Üretici bir sayı olamaz. Lütfen tekrar girin." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "Henüz bir yazıcı veya ön ayar seçmediniz. Lütfen en az birini seçin." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"Oluşturduğunuz %s Filament adı zaten mevcut.\n" +"Oluşturmaya devam ederseniz oluşturulan ön ayar tam adıyla görüntülenecektir. " +"Devam etmek istiyor musun?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Aşağıdaki gibi bazı mevcut ön ayarlar oluşturulamadı:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Yeniden yazmak ister misin?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"Ön ayarları şu şekilde yeniden adlandırırdık: \"Satıcı Türü Seçtiğiniz Seri " +"@printer\". \n" +"Daha fazla yazıcıya yönelik ön ayar eklemek için lütfen yazıcı seçimine gidin" + +msgid "Create Printer/Nozzle" +msgstr "Yazıcı/Nozul Oluştur" + +msgid "Create Printer" +msgstr "Yazıcı Oluştur" + +msgid "Create Nozzle for Existing Printer" +msgstr "Mevcut Yazıcı için Nozul Oluştur" + +msgid "Create from Template" +msgstr "Şablondan oluştur" + +msgid "Create Based on Current Printer" +msgstr "Mevcut Yazıcıya Göre Oluşturun" + +msgid "Import Preset" +msgstr "Ön Ayarı İçe Aktar" + +msgid "Create Type" +msgstr "Tür Oluştur" + +msgid "The model is not found, place reselect vendor." +msgstr "Model bulunamadı, lütfen satıcıyı seçin." + +msgid "Select Model" +msgstr "Model Seçin" + +msgid "Select Printer" +msgstr "Yazıcıyı Seçin" + +msgid "Input Custom Model" +msgstr "Özel Model Girin" + +msgid "Can't find my printer model" +msgstr "Yazıcı modelimi bulamıyorum" + +msgid "Rectangle" +msgstr "Dikdörtgen" + +msgid "Printable Space" +msgstr "Yazdırılabilir Alan" + +msgid "Hot Bed STL" +msgstr "Sıcak Yatak STL" + +msgid "Load stl" +msgstr "Stl'i yükle" + +msgid "Hot Bed SVG" +msgstr "Sıcak Yatak SVG" + +msgid "Load svg" +msgstr "Svg'yi yükle" + +msgid "Max Print Height" +msgstr "Maksimum Baskı Yüksekliği" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "Dosya %d MB'yi aşıyor lütfen tekrar içe aktarın." + +msgid "Exception in obtaining file size, please import again." +msgstr "Dosya boyutunun elde edilmesinde istisna, lütfen tekrar içe aktarın." + +msgid "Preset path is not find, please reselect vendor." +msgstr "Ön ayar yolu bulunamıyor, lütfen satıcıyı yeniden seçin." + +msgid "The printer model was not found, please reselect." +msgstr "Yazıcı modeli bulunamadı, lütfen yeniden seçin." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "Nozul çapı bulunamadı, lütfen yeniden seçin." + +msgid "The printer preset is not found, place reselect." +msgstr "Yazıcı ön ayarı bulunamadı, lütfen yeniden seçin." + +msgid "Printer Preset" +msgstr "Yazıcı Ön Ayarı" + +msgid "Filament Preset Template" +msgstr "Filament Ön Ayar Şablonu" + +msgid "Deselect All" +msgstr "Hiçbirini seçme" + +msgid "Process Preset Template" +msgstr "İşleme Ön Ayarı Şablonu" + +msgid "Back Page 1" +msgstr "Arka Sayfa 1" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Hangi yazıcı ön ayarının temel alınacağını henüz seçmediniz. Lütfen yazıcının " +"satıcısını ve modelini seçin" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"İlk sayfadaki yazdırılabilir alan kısmına geçersiz bir giriş yaptınız. Lütfen " +"oluşturmadan önce kontrol edin." + +msgid "The custom printer or model is not inputed, place input." +msgstr "Özel yazıcı veya model girilmedi lütfen giriş yapın." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"Oluşturduğunuz yazıcı ön ayarının zaten aynı ada sahip bir ön ayarı var. " +"Üzerine yazmak istiyor musunuz?\n" +"\tEvet: Aynı adı taşıyan yazıcı ön ayarının üzerine yazın; aynı ön ayar adı " +"taşıyan filaman ve proses ön ayarları yeniden oluşturulacak ve aynı ön ayar \n" +"adı olmayan filament ve işlem ön ayarları rezerve edilecektir.\n" +"\tİptal: Ön ayar oluşturmayın, oluşturma arayüzüne dönün." + +msgid "You need to select at least one filament preset." +msgstr "En az bir filament ön ayarı seçmeniz gerekir." + +msgid "You need to select at least one process preset." +msgstr "En az bir işlem ön ayarı seçmeniz gerekir." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Filament ön ayarları oluşturulamadı. Şu şekilde:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "İşlem ön ayarları oluşturulamadı. Şu şekilde:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Satıcı bulunamadı, lütfen yeniden seçin." + +msgid "Current vendor has no models, please reselect." +msgstr "Mevcut satıcının modeli yok, lütfen yeniden seçin." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "Satıcıyı ve modeli seçmediniz veya özel satıcıyı ve modeli girmediniz." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"Özel yazıcı satıcısında veya modelinde kaçış karakterleri olabilir. Lütfen " +"silip tekrar giriniz." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"Özel yazıcı satıcısı veya modelindeki tüm girişler boşluklardan oluşuyor. " +"Lütfen tekrar girin." + +msgid "Please check bed printable shape and origin input." +msgstr "" +"Lütfen baskı yapılabilir şekil ve başlangıç ​​noktası girişini kontrol edin." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "Hala nozulu değiştirmek için yazıcı seçmediniz, lütfen bir seçim yapın." + +msgid "Create Printer Successful" +msgstr "Yazıcı Oluşturma Başarılı" + +msgid "Create Filament Successful" +msgstr "Filament Oluşturma Başarılı" + +msgid "Printer Created" +msgstr "Yazıcı Oluşturuldu" + +msgid "Please go to printer settings to edit your presets" +msgstr "Ön ayarlarınızı düzenlemek için lütfen yazıcı ayarlarına gidin" + +msgid "Filament Created" +msgstr "Filament Oluşturuldu" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"İhtiyacınız olursa ön ayarlarınızı düzenlemek için lütfen filament ayarına " +"gidin.\n" +"Lütfen püskürtme ucu sıcaklığının, sıcak yatak sıcaklığının ve maksimum " +"hacimsel hızın baskı kalitesi üzerinde önemli bir etkiye sahip olduğunu " +"unutmayın. Lütfen bunları dikkatlice ayarlayın." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"Studio, kullanıcı ön ayarları senkronizasyon işlevinizin etkin olmadığını " +"tespit etti; bu durum, Cihaz sayfasında Filament ayarlarının başarısız " +"olmasına neden olabilir.\n" +"Senkronizasyon işlevini etkinleştirmek için “Kullanıcı ön ayarlarını " +"senkronize et” seçeneğini tıklayın." + +msgid "Printer Setting" +msgstr "Yazıcı Ayarı" + +msgid "Printer config bundle(.orca_printer)" +msgstr "Yazıcı yapılandırma paketi(.orca_printer)" + +msgid "Filament bundle(.orca_filament)" +msgstr "Filament demeti(.orca_filament)" + +msgid "Printer presets(.zip)" +msgstr "Yazıcı ön ayarları (.zip)" + +msgid "Filament presets(.zip)" +msgstr "Filament ön ayarları (.zip)" + +msgid "Process presets(.zip)" +msgstr "İşlem ön ayarları (.zip)" + +msgid "initialize fail" +msgstr "başarısız başlatma" + +msgid "add file fail" +msgstr "dosya ekleme başarısız" + +msgid "add bundle structure file fail" +msgstr "paket yapısı dosyası ekle başarısız" + +msgid "finalize fail" +msgstr "Tamamlama başarısız" + +msgid "open zip written fail" +msgstr "ZIP dosyasını açma başarısız" + +msgid "Export successful" +msgstr "Dışa aktarma başarılı" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to clear " +"it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"'%s' klasörü mevcut dizinde zaten mevcut. Onu temizleyip yeniden oluşturmak " +"mı istiyorsunuz?\n" +"Değilse, bir zaman son eki eklenecektir ve oluşturulduktan sonra adı " +"değiştirebilirsiniz." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"Yazıcı ve yazıcıya ait tüm filament ve işlem ön ayarları. \n" +"Başkalarıyla paylaşılabilir." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Kullanıcının filament ön ayarı. \n" +"Başkalarıyla paylaşılabilir." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Yazıcı adlarını yalnızca yazıcı, filament ve işlem ön ayarlarında yapılan " +"değişikliklerle görüntüleyin." + +msgid "Only display the filament names with changes to filament presets." +msgstr "" +"Filament adlarını yalnızca filament ön ayarlarında yapılan değişikliklerle " +"görüntüleyin." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Yalnızca kullanıcı yazıcı ön ayarlarına sahip yazıcı adları görüntülenecek ve " +"seçtiğiniz her ön ayar zip olarak dışa aktarılacaktır." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Yalnızca kullanıcı filamenti ön ayarlarına sahip filament adları \n" +"görüntülenecek ve seçtiğiniz her filament adındaki tüm kullanıcı filamenti ön " +"ayarları zip olarak dışa aktarılacaktır." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be exported " +"as a zip." +msgstr "" +"Yalnızca işlem ön ayarları değiştirilen yazıcı adları görüntülenecek \n" +"ve seçtiğiniz her yazıcı adındaki tüm kullanıcı işlem ön ayarları zip olarak " +"dışa aktarılacaktır." + +msgid "Please select at least one printer or filament." +msgstr "Lütfen en az bir yazıcı veya filament seçin." + +msgid "Please select a type you want to export" +msgstr "Lütfen dışa aktarmak istediğiniz türü seçin" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" +"Geçici klasör oluşturulamadı. Lütfen Yapılandırmaları Dışa Aktarmayı tekrar " +"deneyin." + +msgid "Edit Filament" +msgstr "Filamenti Düzenle" + +msgid "Filament presets under this filament" +msgstr "Bu filamentin altındaki filament ön ayarları" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will be " +"deleted after exiting the dialog." +msgstr "" +"Not: Bu filamentin altındaki tek ön ayar silinirse, diyalogdan çıkıldıktan " +"sonra filament silinecektir." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "Diğer ön ayarlar tarafından devralınan ön ayarlar silinemez" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Aşağıdaki ön ayarlar bu ön ayarı devralır." +msgstr[1] "Aşağıdaki ön ayar bu ön ayarı devralır." + +msgid "Delete Preset" +msgstr "Ön Ayarı Sil" + +msgid "Are you sure to delete the selected preset?" +msgstr "Seçilen ön ayarı sildiğinizden emin misiniz?" + +msgid "Delete preset" +msgstr "Ön ayarı sil" + +msgid "+ Add Preset" +msgstr "+ Ön Ayar Ekle" + +msgid "Delete Filament" +msgstr "Filamenti Sil" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Bu filamente ait tüm filaman ön ayarları silinecektir. \n" +"Yazıcınızda bu filamenti kullanıyorsanız lütfen o yuvanın filament bilgisini " +"sıfırlayın." + +msgid "Delete filament" +msgstr "Filamenti sil" + +msgid "Add Preset" +msgstr "Ön Ayar Ekle" + +msgid "Add preset for new printer" +msgstr "Yeni yazıcı için ön ayar ekleyin" + +msgid "Copy preset from filament" +msgstr "Ön ayarı filamentten kopyala" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "Filament seçimi filament ön ayarını bulamıyor, lütfen yeniden seçin" + +msgid "[Delete Required]" +msgstr "[Silme Gerekli]" + +msgid "Edit Preset" +msgstr "Ön Ayarı Düzenle" + +msgid "For more information, please check out Wiki" +msgstr "Daha fazla bilgi için lütfen Wiki'ye göz atın" + +msgid "Collapse" +msgstr "Daralt" + +msgid "Daily Tips" +msgstr "Günlük İpuçları" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "hafızaya alınan nozul: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Ön ayardaki nozul çapınız hafızaya alınan nozul çapıyla tutarlı değil. Son " +"zamanlarda nozulunuzu değiştirdiniz mi?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "%s malzemesini %s ile yazdırmak püskürtme ucu hasarına neden olabilir" + +msgid "Need select printer" +msgstr "Yazıcı seçmeniz gerekiyor" + +msgid "The start, end or step is not valid value." +msgstr "Başlangıç, bitiş veya adım geçerli bir değer değildir." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Kalibre edilemiyor: ayarlanan kalibrasyon değeri aralığı çok büyük veya adım " +"çok küçük olduğu için olabilir" + +msgid "Physical Printer" +msgstr "Fiziksel Yazıcı" + +msgid "Print Host upload" +msgstr "Yazıcı Bağlantı Ayarları" + +msgid "Could not get a valid Printer Host reference" +msgstr "Geçerli bir Yazıcı Ana Bilgisayarı referansı alınamadı" + +msgid "Success!" +msgstr "Başarılı!" + +msgid "Are you sure to log out?" +msgstr "Çıkış yaptığınızdan emin misiniz?" + +msgid "Refresh Printers" +msgstr "Yazıcıları Yenile" + +msgid "View print host webui in Device tab" +msgstr "Aygıt sekmesinde yazdırma ana bilgisayarı web arayüzünü görüntüleyin" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" +"BambuLab’ın aygıt sekmesini yazdırma ana bilgisayarı web arayüzüyle değiştirin" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"HTTPS CA dosyası isteğe bağlıdır. Yalnızca HTTPS'yi kendinden imzalı bir " +"sertifikayla kullanıyorsanız gereklidir." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Sertifika dosyaları (*.crt, *.pem)|*.crt;*.pem|Tüm dosyalar|*.*" + +msgid "Open CA certificate file" +msgstr "CA sertifika dosyasını aç" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"Bu sistemde %s, sistem Sertifika Deposu veya Anahtar Zincirinden alınan HTTPS " +"sertifikalarını kullanıyor." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Özel bir CA dosyası kullanmak için lütfen CA dosyanızı Sertifika Deposuna/" +"Anahtarlığa aktarın." + +msgid "Login/Test" +msgstr "Giriş/Test" + +msgid "Connection to printers connected via the print host failed." +msgstr "" +"Yazdırma ana bilgisayarı aracılığıyla bağlanan yazıcılara bağlantı başarısız " +"oldu." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Eşleşmeyen yazdırma ana bilgisayarı türü: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "AstroBox'a bağlantı düzgün çalışıyor." + +msgid "Could not connect to AstroBox" +msgstr "AstroBox'a bağlanılamadı" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Not: AstroBox sürümünün en az 1.1.0 olması gerekmektedir." + +msgid "Connection to Duet works correctly." +msgstr "Duet'e bağlantı düzgün çalışıyor." + +msgid "Could not connect to Duet" +msgstr "Duet'e bağlanılamadı" + +msgid "Unknown error occured" +msgstr "Bilinmeyen hata oluştu" + +msgid "Wrong password" +msgstr "Wrong password" + +msgid "Could not get resources to create a new connection" +msgstr "Yeni bir bağlantı oluşturmak için kaynaklar alınamadı" + +msgid "Upload not enabled on FlashAir card." +msgstr "FlashAir kartında yükleme etkin değil." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "FlashAir bağlantısı düzgün çalışıyor ve yükleme etkin." + +msgid "Could not connect to FlashAir" +msgstr "FlashAir'e bağlanılamadı" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Not: Firmware 2.00.02 veya daha yeni ve etkinleştirilmiş yükleme işlevine " +"sahip FlashAir gereklidir." + +msgid "Connection to MKS works correctly." +msgstr "MKS'ye bağlantı düzgün çalışıyor." + +msgid "Could not connect to MKS" +msgstr "MKS'ye bağlanılamadı" + +msgid "Connection to OctoPrint works correctly." +msgstr "OctoPrint'e bağlantı düzgün çalışıyor." + +msgid "Could not connect to OctoPrint" +msgstr "OctoPrint'e bağlanılamadı" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Not: OctoPrint sürümü en az 1.1.0 gereklidir." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Prusa SL1 / SL1S bağlantısı düzgün çalışıyor." + +msgid "Could not connect to Prusa SLA" +msgstr "Prusa SLA'ya bağlanılamadı" + +msgid "Connection to PrusaLink works correctly." +msgstr "PrusaLink'e bağlantı düzgün çalışıyor." + +msgid "Could not connect to PrusaLink" +msgstr "PrusaLink'e bağlanılamadı" + +msgid "Storages found" +msgstr "Depolar bulundu" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : sadece okuma" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : boş alan yok" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "Yükleme başarısız oldu. %1%'de uygun depolama alanı bulunamadı." + +msgid "Connection to Prusa Connect works correctly." +msgstr "Prusa Connect'e bağlantı düzgün çalışıyor." + +msgid "Could not connect to Prusa Connect" +msgstr "Prusa Connect'e bağlanılamadı" + +msgid "Connection to Repetier works correctly." +msgstr "Repetier'e bağlantı düzgün çalışıyor." + +msgid "Could not connect to Repetier" +msgstr "Repetier'a bağlanılamadı" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Not: Repetier sürümü en az 0.90.0 gereklidir." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP durumu: %1%\n" +"Mesaj gövdesi: \"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Ana bilgisayar yanıtının ayrıştırılması başarısız oldu.\n" +"Mesaj gövdesi: \"%1%\"\n" +"Hata: \"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Ana yazıcıların numaralandırılması başarısız oldu.\n" +"Mesaj gövdesi: \"%1%\"\n" +"Hata: \"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines and " +"high printing quality. It is suitable for most general printing cases." +msgstr "" +"Küçük bir katman yüksekliğine sahiptir ve neredeyse ihmal edilebilir katman " +"çizgileri ve yüksek baskı kalitesi sağlar. Çoğu genel yazdırma durumu için " +"uygundur." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds and " +"acceleration, and the sparse infill pattern is Gyroid. So, it results in much " +"higher printing quality, but a much longer printing time." +msgstr "" +"0,2 mm’lik nozülün varsayılan profiliyle karşılaştırıldığında daha düşük hız " +"ve ivmeye sahiptir ve seyrek dolgu deseni Gyroid’dir. Böylece çok daha yüksek " +"baskı kalitesi elde edilir, ancak çok daha uzun baskı süresi elde edilir." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"0,2 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, biraz " +"daha büyük katman yüksekliğine sahiptir ve neredeyse ihmal edilebilir düzeyde " +"katman çizgileri ve biraz daha kısa yazdırma süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"0,2 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha " +"büyük bir katman yüksekliğine sahiptir ve katman çizgilerinin hafifçe " +"görülebilmesine karşın yazdırma süresinin daha kısa olmasına neden olur." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"0,2 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, " +"katman yüksekliği daha küçüktür ve neredeyse görünmez katman çizgileri ve " +"daha yüksek baskı kalitesi, ancak daha kısa yazdırma süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"0,2 mm’lik nozulun varsayılan profiliyle karşılaştırıldığında, daha küçük " +"katman çizgilerine, daha düşük hızlara ve ivmeye sahiptir ve seyrek dolgu " +"deseni Gyroid’dir. Böylece neredeyse görünmez katman çizgileri ve çok daha " +"yüksek baskı kalitesi elde edilir, ancak çok daha uzun baskı süresi elde " +"edilir." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Varsayılan 0,2 mm püskürtme ucu profiliyle karşılaştırıldığında, daha küçük " +"katman yüksekliğine sahiptir ve minimum katman çizgileri ve daha yüksek baskı " +"kalitesi sağlar, ancak daha kısa yazdırma süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"0,2 mm’lik nozulun varsayılan profiliyle karşılaştırıldığında, daha küçük " +"katman çizgilerine, daha düşük hızlara ve ivmeye sahiptir ve seyrek dolgu " +"deseni Gyroid’dir. Böylece minimum katman çizgileri ve çok daha yüksek baskı " +"kalitesi elde edilir, ancak çok daha uzun baskı süresi elde edilir." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"Genel bir katman yüksekliğine sahiptir ve genel katman çizgileri ve baskı " +"kalitesiyle sonuçlanır. Çoğu genel yazdırma durumu için uygundur." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"0,4 mm’lik nozulun varsayılan profiliyle karşılaştırıldığında, daha fazla " +"duvar döngüsüne ve daha yüksek seyrek dolgu yoğunluğuna sahiptir. Bu, " +"baskıların daha güçlü olmasına, ancak daha fazla filaman tüketimine ve daha " +"uzun baskı süresine neden olur." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"0,4 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha " +"büyük bir katman yüksekliğine sahiptir ve daha belirgin katman çizgileri ve " +"daha düşük baskı kalitesi sağlar, ancak biraz daha kısa yazdırma süresi " +"sağlar." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"0,4 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha " +"büyük bir katman yüksekliğine sahiptir ve daha belirgin katman çizgileri ve " +"daha düşük baskı kalitesi sağlar, ancak daha kısa yazdırma süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing quality, " +"but longer printing time." +msgstr "" +"0,4 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha " +"küçük bir katman yüksekliğine sahiptir ve daha az görünür katman çizgileri ve " +"daha yüksek baskı kalitesi sağlar, ancak daha uzun yazdırma süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"0,4 mm’lik nozülün varsayılan profiliyle karşılaştırıldığında daha küçük " +"katman yüksekliğine, daha düşük hızlara ve ivmeye sahiptir ve seyrek dolgu " +"deseni Gyroid’dir. Böylece daha az belirgin katman çizgileri ve çok daha " +"yüksek baskı kalitesi elde edilir, ancak çok daha uzun yazdırma süresi elde " +"edilir." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"0,4 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, " +"katman yüksekliği daha küçüktür ve neredeyse göz ardı edilebilir katman " +"çizgileri ve daha yüksek baskı kalitesi sağlar, ancak daha uzun yazdırma " +"süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"0,4 mm’lik nozülün varsayılan profiliyle karşılaştırıldığında daha küçük " +"katman yüksekliğine, daha düşük hızlara ve ivmeye sahiptir ve seyrek dolgu " +"deseni Gyroid’dir. Böylece, neredeyse göz ardı edilebilecek düzeyde katman " +"çizgileri ve çok daha yüksek baskı kalitesi elde edilirken, çok daha uzun " +"baskı süresi elde edilir." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing time." +msgstr "" +"0,4 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, " +"katman yüksekliği daha küçüktür ve neredeyse göz ardı edilebilecek düzeyde " +"katman çizgileri ve daha uzun yazdırma süresi sağlar." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"Büyük bir katman yüksekliğine sahiptir ve belirgin katman çizgileri ile " +"sıradan baskı kalitesi ve baskı süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"0,6 mm’lik nozulun varsayılan profiliyle karşılaştırıldığında, daha fazla " +"duvar döngüsüne ve daha yüksek seyrek dolgu yoğunluğuna sahiptir. Bu, " +"baskıların daha güçlü olmasına, ancak daha fazla filaman tüketimine ve daha " +"uzun baskı süresine neden olur." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"0,6 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha " +"büyük bir katman yüksekliğine sahiptir ve daha belirgin katman çizgileri ve " +"daha düşük baskı kalitesi sağlar, ancak bazı yazdırma durumlarında daha kısa " +"yazdırma süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"0,6 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha " +"büyük bir katman yüksekliğine sahiptir ve çok daha belirgin katman çizgileri " +"ve çok daha düşük baskı kalitesi sağlar, ancak bazı yazdırma durumlarında " +"daha kısa yazdırma süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"0,6 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha " +"küçük bir katman yüksekliğine sahiptir ve katman çizgilerinin daha az " +"belirgin olmasına ve biraz daha yüksek baskı kalitesine, ancak daha uzun " +"yazdırma süresine neden olur." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing quality, " +"but longer printing time." +msgstr "" +"0,6 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha " +"küçük bir katman yüksekliğine sahiptir ve daha az görünür katman çizgileri ve " +"daha yüksek baskı kalitesi sağlar, ancak daha uzun yazdırma süresi sağlar." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, low " +"printing quality and general printing time." +msgstr "" +"Çok büyük bir katman yüksekliğine sahiptir ve çok belirgin katman " +"çizgilerine, düşük baskı kalitesine ve genel yazdırma süresine neden olur." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"0,8 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha " +"büyük bir katman yüksekliğine sahiptir ve çok belirgin katman çizgileri ve " +"çok daha düşük baskı kalitesiyle sonuçlanır, ancak bazı yazdırma durumlarında " +"daha kısa yazdırma süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"0,8 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, çok " +"daha büyük bir katman yüksekliğine sahiptir ve son derece belirgin katman " +"çizgileri ve çok daha düşük baskı kalitesiyle sonuçlanır, ancak bazı yazdırma " +"durumlarında çok daha kısa yazdırma süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"0,8 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, biraz " +"daha küçük bir katman yüksekliğine sahiptir ve biraz daha az ama yine de " +"görünür katman çizgileri ve biraz daha yüksek baskı kalitesi sağlar, ancak " +"bazı yazdırma durumlarında daha uzun yazdırma süresi sağlar." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"0,8 mm’lik püskürtme ucunun varsayılan profiliyle karşılaştırıldığında, daha " +"küçük bir katman yüksekliğine sahiptir ve daha az ama yine de görünür katman " +"çizgileri ve biraz daha yüksek baskı kalitesi sağlar, ancak bazı yazdırma " +"durumlarında daha uzun yazdırma süresi sağlar." + +msgid "Connected to Obico successfully!" +msgstr "Obico'ya başarıyla bağlanıldı!" + +msgid "Could not connect to Obico" +msgstr "Obico'ya bağlanılamadı" + +msgid "Connected to SimplyPrint successfully!" +msgstr "SimplyPrint'e başarıyla bağlanıldı!" + +msgid "Could not connect to SimplyPrint" +msgstr "SimplyPrint'e bağlanılamadı" + +msgid "Internal error" +msgstr "İç hata" + +msgid "Unknown error" +msgstr "Bilinmeyen hata" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" +"SimplyPrint hesabı bağlı değil. Ayarlamak için Bağlantı seçeneklerine gidin." + +msgid "Connection to Flashforge works correctly." +msgstr "Flashforge bağlantısı düzgün çalışıyor." + +msgid "Could not connect to Flashforge" +msgstr "Flashforge'a bağlanılamadı" + +msgid "The provided state is not correct." +msgstr "Sağlanan durum doğru değil." + +msgid "Please give the required permissions when authorizing this application." +msgstr "Lütfen bu uygulamaya yetki verirken gerekli izinleri verin." + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" +"Giriş yapmaya çalışırken beklenmeyen bir şey oldu, lütfen tekrar deneyin." + +msgid "User cancelled." +msgstr "Kullanıcı iptal edildi." + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"Hassas duvar\n" +"Hassas duvarı açmanın hassasiyeti ve katman tutarlılığını artırabileceğini " +"biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"Sandviç modu\n" +"Modelinizde çok dik çıkıntılar yoksa hassasiyeti ve katman tutarlılığını " +"artırmak için sandviç modunu (iç-dış-iç) kullanabileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"Oda sıcaklığı\n" +"Snapmaker Orca'ın hazne sıcaklığını desteklediğini biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"Kalibrasyon\n" +"Yazıcınızı kalibre etmenin harikalar yaratabileceğini biliyor muydunuz? " +"Snapmaker Orca'daki sevilen kalibrasyon çözümümüze göz atın." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"Yardımcı fan\n" +"Snapmaker Orca'ın Yardımcı parça soğutma fanını desteklediğini biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"Hava filtreleme/Egzoz Fanı\n" +"Snapmaker Orca'ın Hava filtreleme/Egzoz Fanını destekleyebileceğini biliyor " +"muydunuz?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"G-kodu penceresi\n" +"C tuşuna basarak G*kodu penceresini açabilir/kapatabilirsiniz." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"Çalışma alanlarını değiştir\n" +"Sekme tuşuna basarak Hazırlık ve Önizleme çalışma " +"alanları arasında geçiş yapabilirsiniz." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"Klavye kısayolları nasıl kullanılır?\n" +"Snapmaker Orca'ın çok çeşitli klavye kısayolları ve 3B sahne işlemleri sunduğunu " +"biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve the " +"surface quality of your overhangs?" +msgstr "" +"Tersine çevir\n" +"Tersine çevir özelliğinin çıkıntılarınızın yüzey kalitesini önemli " +"ölçüde artırabileceğini biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Kesme Aleti\n" +"Kesici aletle bir modeli istediğiniz açıda ve konumda kesebileceğinizi " +"biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Modeli Düzelt\n" +"Windows sisteminde birçok dilimleme sorununu önlemek için bozuk bir 3D modeli " +"düzeltebileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Timelapse\n" +"Her baskı sırasında timelapse video oluşturabileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Otomatik Düzenleme\n" +"Projenizdeki tüm nesneleri otomatik olarak düzenleyebileceğinizi biliyor " +"muydunuz?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Otomatik Yönlendirme\n" +"Basit bir tıklamayla nesneleri yazdırma için en uygun yöne " +"döndürebileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Yüzüstü yatır\n" +"Bir modeli, yüzlerinden biri baskı yatağına oturacak şekilde hızla " +"yönlendirebileceğinizi biliyor muydunuz? \"Yüze yerleştir\" işlevini seçin " +"veya F tuşuna basın." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Nesne Listesi\n" +"Tüm nesneleri/parçaları bir listede görüntüleyebileceğinizi ve her nesne/" +"parça için ayarları değiştirebileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"Arama İşlevselliği\n" +"Belirli bir Orca Dilimleyici ayarını hızla bulmak için Arama aracını " +"kullandığınızı biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"Modeli Basitleştir\n" +"Mesh basitleştirme özelliğini kullanarak bir ağdaki üçgen sayısını " +"azaltabileceğinizi biliyor muydunuz? Modele sağ tıklayın ve Modeli " +"basitleştir'i seçin." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Dilimleme Parametre Tablosu\n" +"Bir tablodaki tüm nesneleri/parçaları görüntüleyebileceğinizi ve her nesne/" +"parça için ayarları değiştirebileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Nesnelere/Parçalara Böl\n" +"Kolayca renklendirmek veya yazdırmak için büyük bir nesneyi küçük nesnelere " +"bölebileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"Bir Parçayı Çıkar\n" +"Negatif parça değiştiriciyi kullanarak bir ağı diğerinden çıkarabileceğinizi " +"biliyor muydunuz? Bu şekilde örneğin doğrudan Snapmaker Orca'da kolayca yeniden " +"boyutlandırılabilen delikler oluşturabilirsiniz." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"ADIM\n" +"STL yerine STEP dosyasını dilimleyerek baskı kalitenizi artırabileceğinizi " +"biliyor muydunuz?\n" +"Snapmaker Orca, STEP dosyalarını dilimlemeyi destekleyerek daha düşük " +"çözünürlüklü bir STL'ye göre daha düzgün sonuçlar sağlar. Bir şans ver!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Z dikiş konumu\n" +"Z dikişinin konumunu kişiselleştirebileceğinizi ve hatta daha az görünür bir " +"konuma getirmek için baskının üzerine boyayabileceğinizi biliyor muydunuz? " +"Bu, modelinizin genel görünümünü iyileştirir. Buna bir bak!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking prints? " +"Depending on the material, you can improve the overall finish of the printed " +"model by doing some fine-tuning." +msgstr "" +"Akış hızı için ince ayar\n" +"Baskıların daha da iyi görünmesi için akış hızına ince ayar yapılabileceğini " +"biliyor muydunuz? Malzemeye bağlı olarak, bazı ince ayarlar yaparak " +"yazdırılan modelin genel yüzeyini iyileştirebilirsiniz." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Baskılarınızı plakalara ayırın\n" +"Çok sayıda parçası olan bir modeli baskıya hazır ayrı kalıplara " +"bölebileceğinizi biliyor muydunuz? Bu, tüm parçaları takip etme sürecini " +"basitleştirecektir." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Uyarlanabilir Katman Yüksekliği ile baskınızı hızlandırın\n" +"Uyarlanabilir Katman Yüksekliği seçeneğini kullanarak bir modeli daha da " +"hızlı yazdırabileceğinizi biliyor muydunuz? Buna bir bak!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the model " +"that actually need it." +msgstr "" +"Destek boyama\n" +"Desteklerinizin yerini boyayabileceğinizi biliyor muydunuz? Bu özellik, " +"destek malzemesinin yalnızca modelin gerçekten ihtiyaç duyulan bölümlerine " +"yerleştirilmesini kolaylaştırır." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Farklı destek türleri\n" +"Birden fazla destek türü arasından seçim yapabileceğinizi biliyor muydunuz? " +"Ağaç destekleri organik modeller için harika çalışır, filamentten tasarruf " +"sağlar ve baskı hızını artırır. Onlara bir göz atın!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"İpek Filament Baskı\n" +"İpek filamentin başarılı bir şekilde basılabilmesi için özel dikkat " +"gösterilmesi gerektiğini biliyor muydunuz? En iyi sonuçlar için her zaman " +"daha yüksek sıcaklık ve daha düşük hız önerilir." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Daha iyi yapışma için kenar\n" +"Baskı modellerinde baskı yüzeyi ile küçük bir temas arayüzü bulunduğunda " +"siperlik kullanılması tavsiye edildiğini biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Birden çok nesne için parametreleri ayarlama\n" +"Seçilen tüm nesneler için dilimleme parametrelerini aynı anda " +"ayarlayabileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Nesneleri yığınla\n" +"Nesneleri bir bütün olarak istifleyebileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Desteğe/nesnelere/dolguya hizalayın\n" +"Filament değişimi sırasında, boşa harcanan filamenti desteğe/nesnelere/" +"dolguya yıkayarak kurtarabileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Gücü artırın\n" +"Modelin gücünü artırmak için daha fazla duvar halkası ve daha yüksek seyrek " +"dolgu yoğunluğu kullanabileceğinizi biliyor muydunuz?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Yazıcı kapısı açıkken yazdırmanız gerektiğinde\n" +"Yazıcı kapısının açılmasının, daha yüksek muhafaza sıcaklığıyla daha düşük " +"sıcaklıktaki filamenti yazdırırken ekstrüder/sıcak ucun tıkanma olasılığını " +"azaltabileceğini biliyor muydunuz? Bununla ilgili daha fazla bilgiyi Wiki'de " +"bulabilirsiniz." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Eğilmeyi önleyin\n" +"ABS gibi bükülmeye yatkın malzemelere baskı yaparken, ısıtma yatağı " +"sıcaklığının uygun şekilde arttırılmasının bükülme olasılığını " +"azaltabileceğini biliyor muydunuz?" + +#~ msgid "Current association: " +#~ msgstr "Mevcut dernek:" + +#~ msgid "Associate prusaslicer://" +#~ msgstr "Ortak prusaslicer://" + +#~ msgid "Not associated to any application" +#~ msgstr "Herhangi bir uygulamayla ilişkili değil" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "models from Printable.com" +#~ msgstr "" +#~ "Orca’nın Printable.com’daki modelleri açabilmesi için Snapmaker Orca’ı " +#~ "prusaslicer:// bağlantılarıyla ilişkilendirin" + +#~ msgid "Associate bambustudio://" +#~ msgstr "Bambstudio’yu ilişkilendirin://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with bambustudio:// links so that Orca can open " +#~ "models from makerworld.com" +#~ msgstr "" +#~ "Orca’nın makerworld.com’daki modelleri açabilmesi için Snapmaker Orca’ı " +#~ "bambustudio:// bağlantılarıyla ilişkilendirin" + +#~ msgid "Associate cura://" +#~ msgstr "Cura’yı ilişkilendirin://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with cura:// links so that Orca can open models from " +#~ "thingiverse.com" +#~ msgstr "" +#~ "Orca’nın thingiverse.com’daki modelleri açabilmesi için Snapmaker Orca’ı " +#~ "cura:// bağlantılarıyla ilişkilendirin" + +#~ msgid "" +#~ "File size exceeds the 100MB upload limit. Please upload your file through " +#~ "the panel." +#~ msgstr "" +#~ "Dosya boyutu 100 MB yükleme sınırını aşıyor. Lütfen dosyanızı panel " +#~ "üzerinden yükleyiniz." + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Lütfen geçerli bir değer girin (K in 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Lütfen geçerli bir değer girin (K in 0~0.3, N in 0.6~2.0)" + +#~ msgid "Select connected printetrs (0/6)" +#~ msgstr "Bağlı yazıcıları seçin (0/6)" + +#, c-format, boost-format +#~ msgid "Select Connected Printetrs (%d/6)" +#~ msgstr "Bağlı Yazıcıları Seçin (%d/6)" + +#~ msgid "PrintingPause" +#~ msgstr "Yazdırma Duraklatıldı" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "Yazıcının yerel bağlantısı başarısız oldu, lütfen tekrar deneyin." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build plate " +#~ "does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Lütfen Akış Dinamiği Kalibrasyonunun ayrıntılarını wiki'mizden " +#~ "bulabilirsiniz.\n" +#~ "\n" +#~ "Genellikle kalibrasyon gereksizdir. Yazdırma başlat menüsündeki \"akış " +#~ "dinamiği kalibrasyonu\" seçeneği işaretliyken tek renkli/malzeme baskısını " +#~ "başlattığınızda, yazıcı eski yöntemi izleyecek, yazdırmadan önce filamenti " +#~ "kalibre edecektir; Çok renkli/malzeme baskısını başlattığınızda, yazıcı " +#~ "her filament değişiminde filament için varsayılan dengeleme parametresini " +#~ "kullanacaktır ve bu çoğu durumda iyi bir sonuç verecektir.\n" +#~ "\n" +#~ "Kalibrasyon sonucunun güvenilir olmamasına yol açacak birkaç durum " +#~ "olduğunu lütfen unutmayın: kalibrasyonu yapmak için doku plakası " +#~ "kullanmak; baskı plakasının yapışması iyi değil (lütfen baskı plakasını " +#~ "yıkayın veya yapıştırıcı uygulayın!) ...Daha fazlasını wiki'mizden " +#~ "bulabilirsiniz.\n" +#~ "\n" +#~ "Testimizde kalibrasyon sonuçlarında yaklaşık yüzde 10'luk bir titreşim var " +#~ "ve bu da sonucun her kalibrasyonda tam olarak aynı olmamasına neden " +#~ "olabilir. Yeni güncellemelerle iyileştirmeler yapmak için hâlâ temel " +#~ "nedeni araştırıyoruz." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure you " +#~ "want to overrides the other results?" +#~ msgstr "" +#~ "Aynı ada sahip sonuçlardan yalnızca biri kaydedilecektir. Diğer sonuçları " +#~ "geçersiz kılmak istediğinizden emin misiniz?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you want " +#~ "to overrides the historical result?" +#~ msgstr "" +#~ "Aynı ada sahip geçmiş bir kalibrasyon sonucu zaten var: %s. Aynı ada sahip " +#~ "sonuçlardan yalnızca biri kaydedilir. Geçmiş sonucu geçersiz kılmak " +#~ "istediğinizden emin misiniz?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Lütfen mükemmel ekstrüzyon derecesine sahip köşeyi bulun" + +#~ msgid "X" +#~ msgstr "X" + +#~ msgid "Y" +#~ msgstr "Y" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "PrusaSlicer links from Printable.com" +#~ msgstr "" +#~ "Orca’nın Printable.com’daki PrusaSlicer bağlantılarını açabilmesi için " +#~ "Snapmaker Orca’ı prusaslicer:// bağlantılarıyla ilişkilendirin" + +#~ msgid "" +#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed " +#~ "first, which works best in most cases.\n" +#~ "\n" +#~ "Printing walls first may help with extreme overhangs as the walls have the " +#~ "neighbouring infill to adhere to. However, the infill will slighly push " +#~ "out the printed walls where it is attached to them, resulting in a worse " +#~ "external surface finish. It can also cause the infill to shine through the " +#~ "external surfaces of the part." +#~ msgstr "" +#~ "Duvar/dolgu sırası. Onay kutusunun işareti kaldırıldığında ilk olarak " +#~ "duvarlar yazdırılır ve bu çoğu durumda en iyi sonucu verir.\n" +#~ "\n" +#~ "Duvarların komşu dolgulara yapışması nedeniyle ilk önce duvarların " +#~ "basılması aşırı çıkıntılara yardımcı olabilir. Ancak dolgu, baskılı " +#~ "duvarları tutturulduğu yerden hafifçe dışarı doğru itecek ve bu da daha " +#~ "kötü bir dış yüzey kalitesine neden olacaktır. Ayrıca dolgunun parçanın " +#~ "dış yüzeylerinden parlamasına da neden olabilir." + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from PrusaSlicer " +#~ "by Prusa Research. PrusaSlicer is from Slic3r by Alessandro Ranellucci " +#~ "and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca, Prusa Research'ün PrusaSlicer'ından Bambulab'ın " +#~ "BambuStudio'sunu temel alıyor. PrusaSlicer, Alessandro Ranellucci ve " +#~ "RepRap topluluğu tarafından hazırlanan Slic3r'dendir" + +#~ msgid "Export &Configs" +#~ msgstr "Yapılandırmaları Dışa Aktar" + +#~ msgid "" +#~ "Over 4 systems/handy are using remote access, you can close some and try " +#~ "again." +#~ msgstr "" +#~ "4’ten fazla sistem/kullanışlı uzaktan erişimi kullanıyor, bazılarını " +#~ "kapatıp tekrar deneyebilirsiniz." + +#~ msgid "Infill direction" +#~ msgstr "Dolgu açısı" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "G2 ve G3 hareketlerine sahip bir G kodu dosyası elde etmek için bunu " +#~ "etkinleştirin. Ve montaj toleransı çözünürlükle aynıdır" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "Daha iyi yapışma için dolgu alanı duvarla örtüşecek şekilde hafifçe " +#~ "genişletilir. Yüzde değeri seyrek dolgunun çizgi genişliğine göredir" + +#~ msgid "Export Configs" +#~ msgstr "Yapılandırmaları Dışa Aktar" + +#~ msgid "Actions For Unsaved Changes" +#~ msgstr "Kaydedilmemiş Değişikliklere İlişkin İşlemler" + +#~ msgid "Preset Value" +#~ msgstr "Ön ayar değeri" + +#~ msgid "Modified Value" +#~ msgstr "Değiştirilmiş Değer" + +#~ msgid "Transfer Modified Value" +#~ msgstr "Değiştirilen Değeri Aktar" + +#~ msgid "Use Preset Value" +#~ msgstr "Ön Ayar Değerini Kullan" + +#~ msgid "Save Modified Value" +#~ msgstr "Değiştirilen Değeri Kaydet" + +#~ msgid "" +#~ "\n" +#~ "Would you like to save these changed settings(modified value)?" +#~ msgstr "" +#~ "\n" +#~ "Bu değişiklik ayarlarını (değiştirilen değer) kaydetmek ister misiniz?" + +#~ msgid "" +#~ "\n" +#~ "Would you like to keep these changed settings(modified value) after " +#~ "switching preset?" +#~ msgstr "" +#~ "\n" +#~ "Ön ayarı değiştirdikten sonra bu değiştirilen ayarları (değiştirilen " +#~ "değer) korumak ister misiniz?" + +#~ msgid "" +#~ "You have previously modified your settings and are about to overwrite them " +#~ "with new ones." +#~ msgstr "" +#~ "Ayarlarınızı daha önce değiştirdiniz ve bunların üzerine yenilerini yazmak " +#~ "üzeresiniz." + +#~ msgid "" +#~ "\n" +#~ "Do you want to keep your current modified settings, or use preset settings?" +#~ msgstr "" +#~ "\n" +#~ "Geçerli değiştirilen ayarlarınızı korumak mı yoksa önceden ayarlanmış " +#~ "ayarları mı kullanmak istiyorsunuz?" + +#~ msgid "" +#~ "\n" +#~ "Do you want to save your current modified settings?" +#~ msgstr "" +#~ "\n" +#~ "Geçerli değiştirilen ayarlarınızı kaydetmek istiyor musunuz?" + +#~ msgid "Unload Filament" +#~ msgstr "Filamenti Çıkarın" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Filamenti otomatik olarak yüklemek veya çıkarmak için bir AMS yuvası seçin " +#~ "ve ardından \"Yükle\" veya \"Boşalt\" düğmesine basın." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "Anakart" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "- ℃" +#~ msgstr "- °C" + +#~ msgid "0.5" +#~ msgstr "0.5" + +#~ msgid "0.005" +#~ msgstr "0.005" + +#~ msgid "New Flow Dynamics Calibration" +#~ msgstr "Yeni Akış Dinamiği Kalibrasyonu" + +#~ msgid "" +#~ "Over 4 studio/handy are using remote access, you can close some and try " +#~ "again." +#~ msgstr "" +#~ "4’ten fazla stüdyo/kullanışlı uzaktan erişim kullanıyor, bazılarını " +#~ "kapatıp tekrar deneyebilirsiniz." + +#~ msgid "" +#~ "The 3mf file version is in Beta and it is newer than the current Bambu " +#~ "Studio version." +#~ msgstr "" +#~ "3mf dosya sürümü Beta aşamasındadır ve mevcut Bambu Studio sürümünden daha " +#~ "yenidir." + +#~ msgid "If you would like to try Bambu Studio Beta, you may click to" +#~ msgstr "Bambu Studio Beta’yı denemek isterseniz tıklayabilirsiniz." + +#~ msgid "The 3mf file version is newer than the current Bambu Studio version." +#~ msgstr "3mf dosya sürümü mevcut Bambu Studio sürümünden daha yenidir." + +#~ msgid "" +#~ "Update your Bambu Studio could enable all functionality in the 3mf file." +#~ msgstr "" +#~ "Bambu Studio’nuzu güncellemek, 3mf dosyasındaki tüm işlevleri " +#~ "etkinleştirebilir." + +#~ msgid "active" +#~ msgstr "aktif" + +#~ msgid "Jump to layer" +#~ msgstr "Katmana atla" + +#~ msgid "Cabin humidity" +#~ msgstr "Kabin nemi" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "Yeşil, AMS neminin normal olduğunu, turuncu nemin yüksek olduğunu, kırmızı " +#~ "ise nemin çok yüksek olduğunu gösterir.(Higrometre: ne kadar düşükse o " +#~ "kadar iyidir.)" + +#~ msgid "Desiccant status" +#~ msgstr "Kurutucu durumu" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "İki çubuktan daha düşük bir kurutucu durumu, kurutucunun etkin olmadığını " +#~ "gösterir. Lütfen kurutucuyu değiştirin.(Çubuklar: ne kadar yüksek olursa o " +#~ "kadar iyidir.)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the chamber " +#~ "accurately." +#~ msgstr "" +#~ "Not: Kapak açıkken veya kurutucu paketi değiştirildiğinde, nemin emilmesi " +#~ "saatler veya bir gece sürebilir. Düşük sıcaklıklar da süreci yavaşlatır. " +#~ "Bu süre zarfında gösterge hazneyi doğru şekilde temsil etmeyebilir." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Not: Yazdırma sırasında yeni filament takılırsa AMS, yazdırma tamamlanana " +#~ "kadar herhangi bir bilgiyi otomatik olarak okumayacaktır." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "G kodunu %1%'e aktarmayı başardınız" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Başlatma başarısız (Cihaz Yok)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Başlatma başarısız oldu (Kamera Cihazı Yok)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "Yazıcı indirme işlemiyle meşgul. Lütfen indirme işleminin bitmesini " +#~ "bekleyin." + +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "Başlatma başarısız oldu (Geçerli yazıcı sürümünde desteklenmiyor)!" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Başlatma başarısız oldu (Yalnızca LAN modunda erişilemez)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "Başlatma başarısız oldu (Yazıcının LAN ip'si eksik)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "[%d] durduruldu!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "Yükleme başarısız [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "Dosya yok [%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "Yükleme başarısız [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "Model bilgileri yazıcıdan alınamadı." + +#~ msgid "Failed to parse model infomations." +#~ msgstr "Model bilgileri ayrıştırılamadı." + +#~ msgid "Connection lost. Please retry." +#~ msgstr "Bağlantı koptu. Lütfen tekrar deneyiniz." + +#~ msgid "File not exists." +#~ msgstr "Dosya mevcut değil." + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "\"%1%\" ön ayarının bazı ayarlarını değiştirdiniz.\n" +#~ "Ön ayarı değiştirdikten sonra değiştirilen bu ayarları (yeni değer) " +#~ "korumak ister misiniz?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Bazı ön ayar ayarlarını değiştirdiniz.\n" +#~ "Ön ayarı değiştirdikten sonra değiştirilen bu ayarları (yeni değer) " +#~ "korumak ister misiniz?" + +#~ msgid " ℃" +#~ msgstr " °C" + +#~ msgid "" +#~ "Please go to filament setting to edit your presets if you need.\n" +#~ "Please note that nozzle temperature, hot bed temperature, and maximum " +#~ "volumetric speed have a significant impact on printing quality. Please set " +#~ "them carefully." +#~ msgstr "" +#~ "İhtiyacınız olursa ön ayarlarınızı düzenlemek için lütfen filament ayarına " +#~ "gidin.\n" +#~ "Lütfen püskürtme ucu sıcaklığının, sıcak yatak sıcaklığının ve maksimum " +#~ "hacimsel hızın yazdırma kalitesi üzerinde önemli bir etkiye sahip olduğunu " +#~ "unutmayın. Lütfen bunları dikkatlice ayarlayın." + +#~ msgid "Studio Version:" +#~ msgstr "Stüdyo Sürümü:" + +#~ msgid "Test BambuLab" +#~ msgstr "BambuLab'ı test edin" + +#~ msgid "Test BambuLab:" +#~ msgstr "BambuLab'ı test edin" + +#~ msgid "Test HTTP" +#~ msgstr "HTTP'yi test et" + +#~ msgid "Test HTTP Service:" +#~ msgstr "HTTP Hizmetini Test Edin:" + +#~ msgid "Test storage" +#~ msgstr "Test depolaması" + +#~ msgid "Test Storage Upload:" +#~ msgstr "Depolama Yüklemesini Test Et:" + +#~ msgid "Test storage upgrade" +#~ msgstr "Depolama yükseltmesini test edin" + +#~ msgid "Test Storage Upgrade:" +#~ msgstr "Depolama Yükseltmesini Test Edin:" + +#~ msgid "Test storage download" +#~ msgstr "Test depolama indirmesi" + +#~ msgid "Test Storage Download:" +#~ msgstr "Test Depolama İndirme:" + +#~ msgid "Test plugin download" +#~ msgstr "Test eklentisi indirme" + +#~ msgid "Test Plugin Download:" +#~ msgstr "Test Eklentisini İndirin:" + +#~ msgid "Test Storage Upload" +#~ msgstr "Depolama Yüklemesini Test Etme" + +#~ msgid "" +#~ "The speed setting exceeds the printer's maximum speed (machine_max_speed_x/" +#~ "machine_max_speed_y).\n" +#~ "Orca will automatically cap the print speed to ensure it doesn't surpass " +#~ "the printer's capabilities.\n" +#~ "You can adjust the maximum speed setting in your printer's configuration " +#~ "to get higher speeds." +#~ msgstr "" +#~ "Hız ayarı yazıcının maksimum hızını aşıyor (machine_max_speed_x/" +#~ "machine_max_speed_y).\n" +#~ "Orca, yazıcının yeteneklerini aşmadığından emin olmak için yazdırma hızını " +#~ "otomatik olarak sınırlayacaktır.\n" +#~ "Daha yüksek hızlar elde etmek için yazıcınızın yapılandırmasındaki " +#~ "maksimum hız ayarını yapabilirsiniz." + +#~ msgid "" +#~ "Alternate extra wall only works with ensure vertical shell thickness " +#~ "disabled. " +#~ msgstr "" +#~ "Alternatif ekstra duvar yalnızca dikey kabuk kalınlığının devre dışı " +#~ "bırakılmasıyla çalışır. " + +#~ msgid "" +#~ "Change these settings automatically? \n" +#~ "Yes - Disable ensure vertical shell thickness and enable alternate extra " +#~ "wall\n" +#~ "No - Dont use alternate extra wall" +#~ msgstr "" +#~ "Bu ayarlar otomatik olarak değiştirilsin mi?\n" +#~ "Evet - Dikey kabuk kalınlığını sağlamayı devre dışı bırakın ve alternatif " +#~ "ekstra duvarı etkinleştirin\n" +#~ "Hayır - Alternatif ekstra duvar kullanmayın" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Dikey kabuk kalınlığını garanti etmek için eğimli yüzeylerin yakınına katı " +#~ "dolgu ekleyin (üst + alt katı katmanlar)" + +#~ msgid "Further reduce solid infill on walls (beta)" +#~ msgstr "Duvarlardaki katı dolguyu daha da azaltın (deneysel)" + +#~ msgid "" +#~ "Further reduces any solid infill applied to walls. As there will be very " +#~ "limited infill supporting solid surfaces, make sure that you are using " +#~ "adequate number of walls to support the part on sloping surfaces.\n" +#~ "\n" +#~ "For heavily sloped surfaces this option is not suitable as it will " +#~ "generate too thin of a top layer and should be disabled." +#~ msgstr "" +#~ "Duvarlara uygulanan katı dolguları daha da azaltır. Dolguyu destekleyen " +#~ "katı yüzeyler çok sınırlı olacağından, eğimli yüzeylerde parçayı " +#~ "desteklemek için yeterli sayıda duvar kullandığınızdan emin olun.\n" +#~ "\n" +#~ "Çok eğimli yüzeyler için bu seçenek çok ince bir üst katman " +#~ "oluşturacağından ve devre dışı bırakılması gerektiğinden uygun değildir." + +#~ msgid " " +#~ msgstr " " + +#~ msgid "Text-Rotate" +#~ msgstr "Metin Döndürme" + +#~ msgid "SVG-Rotate" +#~ msgstr "SVG-Döndürme" + +#~ msgid "Resize" +#~ msgstr "Boyutlandır" + +#~ msgid "Small Area Infill Flow Compensation (beta)" +#~ msgstr "Küçük Alan Dolgusu Akış Telafisi (deneysel)" + +#~ msgid "Configuration package updated to " +#~ msgstr "Yapılandırma paketi şu şekilde güncellendi: " + +#~ msgid "" +#~ "Improve shell precision by adjusting outer wall spacing. This also " +#~ "improves layer consistency." +#~ msgstr "" +#~ "Dış duvar aralığını ayarlayarak kabuk hassasiyetini artırın. Bu aynı " +#~ "zamanda katman tutarlılığını da artırır." + +#~ msgid "Enable Flow Compensation" +#~ msgstr "Akış telafisi'ni etkinleştir" + +#~ msgid "" +#~ "The minimum printing speed for the filament when slow down for better " +#~ "layer cooling is enabled, when printing overhangs and when feature speeds " +#~ "are not specified explicitly." +#~ msgstr "" +#~ "Daha iyi katman soğutması için yavaşlama etkinleştirildiğinde, yazdırma " +#~ "çıkıntıları olduğunda ve özellik hızları açıkça belirtilmediğinde filament " +#~ "için minimum yazdırma hızı." + +#~ msgid "No sparse layers (EXPERIMENTAL)" +#~ msgstr "Seyrek katman yok (DENEYSEL)" + +#~ msgid "" +#~ "We would rename the presets as \"Vendor Type Serial @printer you selected" +#~ "\". \n" +#~ "To add preset for more prinetrs, Please go to printer selection" +#~ msgstr "" +#~ "We would rename the presets as \"Vendor Type Serial @printer you selected" +#~ "\". \n" +#~ "To add preset for more prinetrs, Please go to printer selection" + +#~ msgid "The Config can not be loaded." +#~ msgstr "Yapılandırma yüklenemiyor." + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "3mf, eski Snapmaker Orca tarafından oluşturulmuştur, yalnızca geometri " +#~ "verilerini yükleyin." + +#~ msgid "wiki" +#~ msgstr "wiki" + +#~ msgid "" +#~ "Relative extrusion is recommended when using \"label_objects\" option.Some " +#~ "extruders work better with this option unckecked (absolute extrusion " +#~ "mode). Wipe tower is only compatible with relative mode. It is always " +#~ "enabled on BambuLab printers. Default is checked" +#~ msgstr "" +#~ "\"label_objects\" seçeneği kullanılırken göreceli ekstrüzyon önerilir. " +#~ "Bazı ekstruderler bu seçeneğin işareti kaldırıldığında (mutlak ekstrüzyon " +#~ "modu) daha iyi çalışır. Temizleme kulesi yalnızca göreceli modla " +#~ "uyumludur. BambuLab yazıcılarında her zaman etkindir. Varsayılan olarak " +#~ "işaretlendi" + +#~ msgid "Movement:" +#~ msgstr "Hareket:" + +#~ msgid "Movement" +#~ msgstr "Hareket" + +#~ msgid "Auto Segment" +#~ msgstr "Otomatik Segment" + +#~ msgid "Depth ratio" +#~ msgstr "Derinlik oranı" + +#~ msgid "Prizm" +#~ msgstr "Prizma" + +#~ msgid "connector is out of cut contour" +#~ msgstr "konnektör kesim konturunun dışında" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "konektörler kesim konturunun dışında" + +#~ msgid "connector is out of object" +#~ msgstr "bağlayıcı nesnenin dışında" + +#~ msgid "connectors is out of object" +#~ msgstr "konektörler nesnenin dışında" + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Geçersiz durum.\n" +#~ "Kesimden sonra tutmak için hiçbir parça seçilmedi" + +#~ msgid "Recalculate" +#~ msgstr "Yeniden hesapla" + +#~ msgid "" +#~ "Orca recalculates your flushing volumes everytime the filament colors " +#~ "change. You can change this behavior in Preferences." +#~ msgstr "" +#~ "Orca, filament renkleri her değiştiğinde yıkama hacimlerinizi yeniden " +#~ "hesaplar. Bu davranışı Tercihler'de değiştirebilirsiniz." + +#~ msgid "" +#~ "The printer timed out while receiving a print job. Please check if the " +#~ "network is functioning properly and send the print again." +#~ msgstr "" +#~ "Yazıcı bir yazdırma işi alırken zaman aşımına uğradı. Lütfen ağ " +#~ "bağlantısının düzgün çalışıp çalışmadığını kontrol edin ve baskıyı tekrar " +#~ "gönderin." + +#~ msgid "The beginning of the vendor can not be a number. Please re-enter." +#~ msgstr "Satıcının başlangıcı sayı olamaz. Lütfen tekrar girin." + +#~ msgid "Edit Text" +#~ msgstr "Metni düzenle" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Hata! Konu oluşturulamıyor!" + +#~ msgid "Exception" +#~ msgstr "Hata" + +#~ msgid "Choose SLA archive:" +#~ msgstr "SLA arşivini seçin:" + +#~ msgid "Import file" +#~ msgstr "Dosyayı içe aktar" + +#~ msgid "Import model and profile" +#~ msgstr "Modeli ve profili içe aktar" + +#~ msgid "Import profile only" +#~ msgstr "Yalnızca profili içe aktar" + +#~ msgid "Import model only" +#~ msgstr "Yalnızca modeli içe aktar" + +#~ msgid "Accurate" +#~ msgstr "Doğru" + +#~ msgid "Balanced" +#~ msgstr "Dengeli" + +#~ msgid "Quick" +#~ msgstr "Hızlı" + +#~ msgid "Print sequence of inner wall and outer wall. " +#~ msgstr "İç duvar ve dış duvarın yazdırma sırası." + +#~ msgid "Order of wall/infill. false means print wall first. " +#~ msgstr "Duvar/dolgu sırası. kapalı önce duvarı yazdır anlamına gelir." + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Geri çekme esnasında nozulun son hat boyunca ne kadar süre hareket " +#~ "edeceğini belirtin" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Modeli Basitleştir\n" +#~ "Mesh basitleştirme özelliğini kullanarak bir ağdaki üçgen sayısını " +#~ "azaltabileceğinizi biliyor muydunuz? Modele sağ tıklayın ve Modeli " +#~ "basitleştir'i seçin. Daha fazlasını belgelerde okuyun." + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "Bir Parçayı Çıkar\n" +#~ "Negatif parça değiştiriciyi kullanarak bir ağı diğerinden " +#~ "çıkarabileceğinizi biliyor muydunuz? Bu şekilde örneğin doğrudan Orca " +#~ "Slicer'da kolayca yeniden boyutlandırılabilen delikler oluşturabilirsiniz. " +#~ "Daha fazlasını belgelerde okuyun." + +#~ msgid "Filling bed " +#~ msgstr "Yatak doldurma " + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "%1% dolgu deseni 100%% yoğunluğu desteklemiyor." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "Doğrusal desene geçilsin mi?\n" +#~ "Evet - otomatik olarak doğrusal desene geçin\n" +#~ "Hayır - yoğunluğu otomatik olarak %100 olmayan varsayılan değere sıfırlayın" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "" +#~ "Filamenti yüklemeden önce lütfen Nozulu 170 derecenin üzerine ısıtın." + +#~ msgid "Show g-code window" +#~ msgstr "G kodu penceresini göster" + +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "Etkinleştirilirse g kodu penceresi görüntülenecektir." + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "Density of internal sparse infill, 100% means solid throughout" + +#~ msgid "Tree support wall loops" +#~ msgstr "Ağaç desteği duvar döngüleri" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "Bu ayar, ağaç desteğinin etrafındaki duvarların sayısını belirtir" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " 100%% yoğunlukta çalışmıyor " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Üst Karakter + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Yüzüstü Yatırma" + +#~ msgid "Export as STL" +#~ msgstr "STL olarak dışa aktar" + +#~ msgid "Check cloud service status" +#~ msgstr "Bulut hizmeti durumunu kontrol edin" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Lütfen geçerli bir değer girin (0~0,5'te K)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "Lütfen geçerli bir değer girin (0~0,5'te K, 0,6~2,0'da N)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Tüm nesneleri STL olarak dışa aktar" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "3mf uyumlu değil, yalnızca geometri verilerini yükleyin!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Uyumsuz 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "Yazıcı Ekle/Kaldır" + +#~ msgid "" +#~ "When print by object, machines with I3 structure will not generate " +#~ "timelapse videos." +#~ msgstr "" +#~ "Nesneye göre yazdırıldığında, I3 yapısına sahip makineler zaman atlamalı " +#~ "videolar oluşturmayacaktır." + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s AMS tarafından desteklenmiyor." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Bana bir daha bu versiyonu hatırlatma" + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Hata: IP veya Erişim Kodu doğru değil" + +#~ msgid "" +#~ "Extrude perimeters that have a part over an overhang in the reverse " +#~ "direction on odd layers. This alternating pattern can drastically improve " +#~ "steep overhang." +#~ msgstr "" +#~ "Tek katmanlarda ters yönde bir çıkıntının üzerinde bir kısmı bulunan " +#~ "çevreleri ekstrüzyonla çıkarın. Bu değişen desen, dik eğimli çıkıntıları " +#~ "önemli ölçüde iyileştirebilir." + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "İç duvar/dış duvar/dolgu sırası" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "İç duvar, dış duvar ve dolgunun yazdırma sırası. " + +#~ msgid "inner/outer/infill" +#~ msgstr "iç/dış/dolgu" + +#~ msgid "outer/inner/infill" +#~ msgstr "dış/iç/dolgu" + +#~ msgid "infill/inner/outer" +#~ msgstr "dolgu/iç/dış" + +#~ msgid "infill/outer/inner" +#~ msgstr "dolgu/dış/iç" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "iç-dış-iç/dolgu" + +#, c-format, boost-format +#~ msgid "%%" +#~ msgstr "%%" + +#~ msgid "Export 3MF" +#~ msgstr "3MF'yi dışa aktar" + +#~ msgid "Export project as 3MF." +#~ msgstr "Projeyi 3MF olarak dışa aktarın." + +#~ msgid "Export slicing data" +#~ msgstr "Dilimleme verilerini dışa aktar" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Dilimleme verilerini bir klasöre aktarın." + +#~ msgid "Load slicing data" +#~ msgstr "Dilimleme verilerini yükle" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Önbelleğe alınmış dilimleme verilerini dizinden yükle" + +#~ msgid "Export STL" +#~ msgstr "STL'yi dışa aktar" + +#~ msgid "Export the objects as multiple STL." +#~ msgstr "Nesneleri birden çok STL olarak dışa aktarın." + +#~ msgid "Slice" +#~ msgstr "Dilimle" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "Plakaları dilimleyin: 0-tüm plakalar, i-plaka i, diğerleri-geçersiz" + +#~ msgid "Show command help." +#~ msgstr "Komut yardımını göster." + +#~ msgid "UpToDate" +#~ msgstr "Güncel" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "3mf'nin yapılandırma değerlerini en son sürüme güncelleyin." + +#~ msgid "Load default filaments" +#~ msgstr "Varsayılan filamentleri yükle" + +#~ msgid "Load first filament as default for those not loaded" +#~ msgstr "Yüklenmeyenler için ilk filamenti varsayılan olarak yükleyin" + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "dilimleme için plaka başına maksimum üçgen sayısı." + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "saniye cinsinden plaka başına maksimum dilimleme süresi." + +#~ msgid "Normative check" +#~ msgstr "Normatif kontrol" + +#~ msgid "Check the normative items." +#~ msgstr "Normatif maddeleri kontrol edin." + +#~ msgid "Output Model Info" +#~ msgstr "Çıktı Model Bilgileri" + +#~ msgid "Output the model's information." +#~ msgstr "Modelin bilgilerini çıktıla." + +#~ msgid "Export Settings" +#~ msgstr "Dışa Aktarma Ayarları" + +#~ msgid "Export settings to a file." +#~ msgstr "Ayarları bir dosyaya aktarın." + +#~ msgid "Send progress to pipe" +#~ msgstr "İlerlemeyi kanala gönder" + +#~ msgid "Send progress to pipe." +#~ msgstr "İlerlemeyi boruya gönder." + +#~ msgid "Arrange Options" +#~ msgstr "Hizalama Seçenekleri" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "" +#~ "Hizalama seçenekleri: 0-devre dışı bırak, 1-etkinleştir, diğer-otomatik" + +#~ msgid "Repetions count" +#~ msgstr "Tekrar sayısı" + +#~ msgid "Repetions count of the whole model" +#~ msgstr "Tüm modelin tekrar sayısı" + +#~ msgid "Convert Unit" +#~ msgstr "Birimi Dönüştür" + +#~ msgid "Convert the units of model" +#~ msgstr "Modelin birimlerini dönüştür" + +#~ msgid "Rotate around X" +#~ msgstr "X etrafında döndür" + +#~ msgid "Rotation angle around the X axis in degrees." +#~ msgstr "X ekseni etrafında derece cinsinden dönüş açısı." + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Modeli kayan nokta faktörüne göre ölçeklendirin" + +#~ msgid "Load General Settings" +#~ msgstr "Genel Ayarları Yükle" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "Belirtilen dosyadan proses/yazıcıayarlarını yükleyin" + +#~ msgid "Load Filament Settings" +#~ msgstr "Filament Ayarlarını Yükle" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "Filament ayarlarını belirtilen dosya listesinden yükleyin" + +#~ msgid "Skip Objects" +#~ msgstr "Nesneleri Atla" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Bu baskıdaki bazı nesneleri atla" + +#~ msgid "load uptodate process/machine settings when using uptodate" +#~ msgstr "güncellemeyi kullanırken güncelleme işlemi/yazıcıayarlarını yükle" + +#~ msgid "" +#~ "load uptodate process/machine settings from the specified file when using " +#~ "uptodate" +#~ msgstr "" +#~ "güncellemeyi kullanırken belirtilen dosyadan güncel işlem/yazıcıayarlarını " +#~ "yükle" + +#~ msgid "Output directory" +#~ msgstr "Çıkış dizini" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Dışa aktarılan dosyalar için çıkış dizini." + +#~ msgid "Debug level" +#~ msgstr "Hata ayıklama düzeyi" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Hata ayıklama günlüğü düzeyini ayarlar. 0:önemli, 1:hata, 2:uyarı, 3:" +#~ "bilgi, 4:hata ayıklama, 5:izleme\n" + +#, boost-format +#~ msgid "The selected preset: %1% is not found." +#~ msgstr "Seçilen ön ayar: %1% bulunamadı." + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "3D Sahne İşlemleri\n" +#~ "3D sahnede fare ve dokunmatik panel ile görünümü ve nesne/parça seçimini " +#~ "nasıl kontrol edeceğinizi biliyor muydunuz?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Modeli Düzelt\n" +#~ "Pek çok dilimleme sorununu önlemek için bozuk bir 3D modeli " +#~ "düzeltebileceğinizi biliyor muydunuz?" + +#~ msgid "Embeded" +#~ msgstr "Gömülü" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "Snapmaker Orca yapılandırma dosyası bozulmuş olabilir ve ayrıştırılması mümkün " +#~ "olmayabilir. Lütfen dosyayı silin ve tekrar deneyin." + +#~ msgid "Online Models" +#~ msgstr "Çevrimiçi Modeller" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "Personelin çevrimiçi olarak seçtiği modelleri ana sayfada göster" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "Soğutma için yavaşlama durumunda minimum yazdırma hızı" + +#~ msgid "" +#~ "There are currently no identical spare consumables available, and " +#~ "automatic replenishment is currently not possible. \n" +#~ "(Currently supporting automatic supply of consumables with the same brand, " +#~ "material type, and color)" +#~ msgstr "" +#~ "Şu anda aynı yedek sarf malzemesi mevcut değildir ve otomatik yenileme şu " +#~ "anda mümkün değildir.\n" +#~ "(Şu anda aynı marka, malzeme türü ve renkte sarf malzemelerinin otomatik " +#~ "olarak tedarik edilmesi desteklenmektedir)" + +#~ msgid "Invalid nozzle diameter" +#~ msgstr "Geçersiz nozul çapı" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "Yatak sıcaklığı filamentin vitrifikasyon sıcaklığını aşıyor. Püskürtme " +#~ "ucunun tıkanmasını önlemek için lütfen yazdırmadan önce yazıcının ön " +#~ "kapısını açın." + +#~ msgid "Activate for better air filtration" +#~ msgstr "Daha iyi hava filtrelemesi için etkinleştirin" + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Yumuşama sıcaklığı" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "Bu sıcaklıkta malzeme yumuşar. Bu nedenle ısıtma yatağı bu sıcaklıktan " +#~ "daha sıcak olamaz" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "Makinede yardımcı parça soğutma fanı varsa bu seçeneği etkinleştirin" + +#~ msgid "" +#~ "This option is enabled if machine support controlling chamber temperature" +#~ msgstr "" +#~ "Bu seçeneği, yazıcınız ortam sıcaklığını kontrol etmeyi destekliyorsa " +#~ "etkinleştirin" + +#~ msgid "Enable this if printer support air filtration" +#~ msgstr "Yazıcı hava filtrelemeyi destekliyorsa bunu etkinleştirin" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "Yardımcı parça soğutma fanının hızı. Yardımcı fan, soğutma katmanlarının " +#~ "bulunmadığı ilk birkaç katman dışında, yazdırma sırasında bu hızda " +#~ "çalışacaktır" + +#~ msgid "" +#~ "Filter out gaps smaller than the threshold specified. This setting won't " +#~ "affect top/bottom layers" +#~ msgstr "" +#~ "Belirtilen eşikten daha küçük boşlukları filtreleyin. Bu ayar üst/alt " +#~ "katmanları etkilemez" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "Alt kısımdaki boş katmanların yerini en yakın normal katmanlar alır." + +#~ msgid "The model has too many empty layers." +#~ msgstr "Modelde çok fazla boş katman var." + +#~ msgid "Total Time Estimation" +#~ msgstr "Toplam Süre Tahmini" + +#~ msgid "The 3mf is not from Bambu Lab, load geometry data only." +#~ msgstr "3mf, Bambu Lab'den değildir, yalnızca geometri verilerini yükleyin." + +#~ msgid "High Temp Plate" +#~ msgstr "Tabla" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "Yüksek sıcaklık plakası takıldığında yatak sıcaklığı. 0 değeri, filamentin " +#~ "Yüksek Sıcaklık Plakasına yazdırmayı desteklemediği anlamına gelir" + +#~ msgid "" +#~ "Klipper's max_accel_to_decel will be adjusted to this % of acceleration" +#~ msgstr "" +#~ "Klipper max_accel_to_decel değeri bu hızlanma % değerine ayarlanacaktır" + +#~ msgid "Maximum acceleration for travel (M204 T)" +#~ msgstr "Hareket için maksimum hızlanma (M204 T)" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Desteğin stili ve şekli. Normal destek için, desteklerin düzenli bir " +#~ "ızgaraya yansıtılması daha sağlam destekler oluşturur (varsayılan), rahat " +#~ "destek kuleleri ise malzemeden tasarruf sağlar ve nesne izlerini azaltır.\n" +#~ "Ağaç desteği için, ince stil, dalları daha agresif bir şekilde " +#~ "birleştirecek ve çok fazla malzeme tasarrufu sağlayacak (varsayılan), " +#~ "hibrit stil ise büyük düz çıkıntılar altında normal desteğe benzer yapı " +#~ "oluşturacaktır." + +#~ msgid "Send to print" +#~ msgstr "Baskıya gönder" + +#~ msgid "Error Message" +#~ msgstr "Hata mesajı" + +#~ msgid "Error uploading to print host:" +#~ msgstr "Ana bilgisayara yükleme hatası:" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "Start temp: <= 350\n" +#~ "End temp: >= 180\n" +#~ "Start temp > End temp + 5)" +#~ msgstr "" +#~ "Lütfen geçerli değerleri girin:\n" +#~ "Başlangıç sıcaklığı: <= 350\n" +#~ "Bitiş sıcaklığı: >= 180\n" +#~ "Başlangıç sıcaklığı > Bitiş sıcaklığı + 5)" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 0 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Lütfen geçerli değerleri girin:\n" +#~ "başlangıç > 0 adım >= 0\n" +#~ "bitiş > başlangıç + adım)" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 10 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Lütfen geçerli değerleri girin:\n" +#~ "başlangıç > 10 adım >= 0\n" +#~ "bitiş > başlangıç + adım)" diff --git a/localization/i18n/uk/Snapmaker_Orca_uk.po b/localization/i18n/uk/Snapmaker_Orca_uk.po new file mode 100644 index 0000000000..2c564eb84a --- /dev/null +++ b/localization/i18n/uk/Snapmaker_Orca_uk.po @@ -0,0 +1,17695 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# EDITOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: 2024-06-30 23:05+0300\n" +"Last-Translator: \n" +"Language-Team: \n" +"Language: uk_UA\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n" +"X-Generator: Poedit 3.4.4\n" + +msgid "Supports Painting" +msgstr "Малювання підтримки" + +msgid "Alt + Mouse wheel" +msgstr "Alt + коліщатко миші" + +msgid "Section view" +msgstr "Вигляд у розрізі" + +msgid "Reset direction" +msgstr "Скинути напрямок" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + коліщатко миші" + +msgid "Pen size" +msgstr "Розмір пера" + +msgid "Left mouse button" +msgstr "Ліва кнопка миші" + +msgid "Enforce supports" +msgstr "Примусова підтримка" + +msgid "Right mouse button" +msgstr "Права кнопка миші" + +msgid "Block supports" +msgstr "Блокування підтримки" + +msgid "Shift + Left mouse button" +msgstr "Shift + Ліва кнопка миші" + +msgid "Erase" +msgstr "Гумка" + +msgid "Erase all painting" +msgstr "Стерти всі малюнки" + +msgid "Highlight overhang areas" +msgstr "Виділяти виступаючі області" + +msgid "Gap fill" +msgstr "Заповнення пропусків" + +msgid "Perform" +msgstr "Виконати" + +msgid "Gap area" +msgstr "Площа зазору" + +msgid "Tool type" +msgstr "Тип інструменту" + +msgid "Smart fill angle" +msgstr "Розумний кут заповнення" + +msgid "On overhangs only" +msgstr "Лише на звисах" + +msgid "Auto support threshold angle: " +msgstr "Пороговий кут автоматичної підтримки: " + +msgid "Circle" +msgstr "Коло" + +msgid "Sphere" +msgstr "Сфера" + +msgid "Fill" +msgstr "Заповнити" + +msgid "Gap Fill" +msgstr "Заповнення пропусків" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "Малювання лише на вибраних гранях: \"%1%\"" + +msgid "Highlight faces according to overhang angle." +msgstr "Виділити межі з відповідним кутом виступу." + +msgid "No auto support" +msgstr "Немає автоматичної підтримки" + +msgid "Support Generated" +msgstr "Генерація підтримки" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo \"Поверхнею на стіл\"" + +msgid "Lay on face" +msgstr "Покласти на грань" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"Кількість філаменту перевищує максимальну кількість, яку підтримує " +"інструмент малювання. Лише перші %1% філаменту будуть доступні в інструменті " +"малювання." + +msgid "Color Painting" +msgstr "Кольорове малювання" + +msgid "Pen shape" +msgstr "Форма пера" + +msgid "Paint" +msgstr "Малювання" + +msgid "Key 1~9" +msgstr "Клавіша 1~9" + +msgid "Choose filament" +msgstr "Вибір філаменту" + +msgid "Edge detection" +msgstr "Виявлення кордонів" + +msgid "Triangles" +msgstr "Трикутники" + +msgid "Filaments" +msgstr "Філамент" + +msgid "Brush" +msgstr "Пензель" + +msgid "Smart fill" +msgstr "Інтелектуальне заповнення" + +msgid "Bucket fill" +msgstr "Заливка" + +msgid "Height range" +msgstr "Діапазон висот" + +msgid "Alt + Shift + Enter" +msgstr "Alt + Shift + Enter" + +msgid "Toggle Wireframe" +msgstr "Переключення каркасу" + +msgid "Shortcut Key " +msgstr "Комбінація клавіш " + +msgid "Triangle" +msgstr "Трикутник" + +msgid "Height Range" +msgstr "Діапазон висот" + +msgid "Vertical" +msgstr "Вертикальний" + +msgid "Horizontal" +msgstr "Горизонтальний" + +msgid "Remove painted color" +msgstr "Видалити зафарбований колір" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "Забарвлений за допомогою: Філамент %1%" + +msgid "Move" +msgstr "Перемістити" + +msgid "Gizmo-Move" +msgstr "Gizmo переміщення" + +msgid "Rotate" +msgstr "Повернути" + +msgid "Gizmo-Rotate" +msgstr "Gizmo обертання" + +msgid "Optimize orientation" +msgstr "Оптимізувати орієнтацію" + +msgid "Apply" +msgstr "Застосувати" + +msgid "Scale" +msgstr "Масштаб" + +msgid "Gizmo-Scale" +msgstr "Gizmo масштабування" + +msgid "Error: Please close all toolbar menus first" +msgstr "Помилка: будь ласка, спочатку закрийте все меню панелі інструментів" + +msgid "in" +msgstr "in" + +msgid "mm" +msgstr "мм" + +msgid "Position" +msgstr "Позиція" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "Обертання" + +msgid "Scale ratios" +msgstr "Коефіцієнти масштабування" + +msgid "Object Operations" +msgstr "Операції з об'єктами" + +msgid "Volume Operations" +msgstr "Операції з об’ємом" + +msgid "Translate" +msgstr "Перекласти" + +msgid "Group Operations" +msgstr "Групова орієнтація" + +msgid "Set Position" +msgstr "Встановити позицію" + +msgid "Set Orientation" +msgstr "Встановити орієнтацію" + +msgid "Set Scale" +msgstr "Встановити масштаб" + +msgid "Reset Position" +msgstr "Скинути позицію" + +msgid "Reset Rotation" +msgstr "Скинути орієнтацію" + +msgid "World coordinates" +msgstr "Світові координати" + +msgid "Object coordinates" +msgstr "Координати об'єкта" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "Розмір" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "єдина шкала" + +msgid "Planar" +msgstr "Плоский" + +msgid "Dovetail" +msgstr "Ластівчин хвіст" + +msgid "Auto" +msgstr "Авто" + +msgid "Manual" +msgstr "Manual" + +msgid "Plug" +msgstr "Підключи" + +msgid "Dowel" +msgstr "Дюбель" + +msgid "Snap" +msgstr "Захоплення" + +msgid "Prism" +msgstr "Призма" + +msgid "Frustum" +msgstr "Усічений" + +msgid "Square" +msgstr "Квадрат" + +msgid "Hexagon" +msgstr "Шестикутник" + +msgid "Keep orientation" +msgstr "Зберегти орієнтацію" + +msgid "Place on cut" +msgstr "Помістити на зріз" + +msgid "Flip upside down" +msgstr "Перевернути догори дном" + +msgid "Connectors" +msgstr "З'єднувачі" + +msgid "Type" +msgstr "Тип" + +msgid "Style" +msgstr "Стиль" + +msgid "Shape" +msgstr "Форма" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "Глибина" + +msgid "Groove" +msgstr "Жолобок" + +msgid "Width" +msgstr "Ширина" + +msgid "Flap Angle" +msgstr "Кут клапана" + +msgid "Groove Angle" +msgstr "Кут жолоба" + +msgid "Part" +msgstr "Частина" + +msgid "Object" +msgstr "Об'єкт" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"Клацніть, щоб перевернути площину розрізу\n" +"Потягни для переміщення розрізу площини" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"Клацніть, щоб перевернути площину розрізу\n" +"Перетягни для переміщення розрізу площини\n" +"Клацніть правою кнопкою миші на деталі, щоб призначити її на іншу сторону" + +msgid "Move cut plane" +msgstr "Переміщення розрізу площини" + +msgid "Mode" +msgstr "Режим" + +msgid "Change cut mode" +msgstr "Змінити режим різання" + +msgid "Tolerance" +msgstr "Допуск" + +msgid "Drag" +msgstr "Перетягніть" + +msgid "Draw cut line" +msgstr "Намалюйте лінію розрізу" + +msgid "Left click" +msgstr "Клацніть лівою кнопкою миші" + +msgid "Add connector" +msgstr "Додати з'єднувач" + +msgid "Right click" +msgstr "Клацніть правою кнопкою миші" + +msgid "Remove connector" +msgstr "Видалити з’єднання" + +msgid "Move connector" +msgstr "Перемістити з'єднувач" + +msgid "Add connector to selection" +msgstr "Додати з'єднувач до виділеного" + +msgid "Remove connector from selection" +msgstr "Видалити з'єднувач зі списку вибору" + +msgid "Select all connectors" +msgstr "Виберіть усі з'єднувачі" + +msgid "Cut" +msgstr "Вирізати" + +msgid "Rotate cut plane" +msgstr "Поверніть площину розрізу" + +msgid "Remove connectors" +msgstr "Видалити з’єднання" + +msgid "Bulge" +msgstr "Виступ" + +msgid "Bulge proportion related to radius" +msgstr "Пропорція випуклості в залежності від радіуса" + +msgid "Space" +msgstr "Пробіл" + +msgid "Space proportion related to radius" +msgstr "Пропорція простору в залежності від радіусу" + +msgid "Confirm connectors" +msgstr "Підтвердити з'єднувачі" + +msgid "Cancel" +msgstr "Скасувати" + +msgid "Build Volume" +msgstr "Створіть об'єм" + +msgid "Flip cut plane" +msgstr "Перевернути площину зрізу" + +msgid "Groove change" +msgstr "Зміна паза" + +msgid "Reset" +msgstr "Скинути" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "Відредаговано" + +msgid "Cut position" +msgstr "Положення зрізу" + +msgid "Reset cutting plane" +msgstr "Скинути площину різання" + +msgid "Edit connectors" +msgstr "Редагувати з'єднувачі" + +msgid "Add connectors" +msgstr "Додати з'єднувачі" + +msgid "Reset cut" +msgstr "Скинути зріз" + +msgid "Reset cutting plane and remove connectors" +msgstr "Скиньте площину різання та зніміть з'єднувачі" + +msgid "Upper part" +msgstr "Верхня частина" + +msgid "Lower part" +msgstr "Нижня частина" + +msgid "Keep" +msgstr "Тримати" + +msgid "Flip" +msgstr "Перевернути" + +msgid "After cut" +msgstr "Після вирізування" + +msgid "Cut to parts" +msgstr "Розрізати на частини" + +msgid "Perform cut" +msgstr "Виконати вирізання" + +msgid "Warning" +msgstr "Попередження" + +msgid "Invalid connectors detected" +msgstr "Виявлено неприпустимі з'єднувачі" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "%1$d зєднання виходить за контур моделі" +msgstr[1] "%1$d зєднання виходить за контур моделі" +msgstr[2] "%1$d зєднань виходить за контур моделі" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "%1$d зєднання знаходиться за межами моделі" +msgstr[1] "%1$d зєднання знаходяться за межами моделі" +msgstr[2] "%1$d зєднань знаходяться за межами моделі" + +msgid "Some connectors are overlapped" +msgstr "Деякі роз'єми перекриваються" + +msgid "Select at least one object to keep after cutting." +msgstr "Виберіть принаймні один об'єкт, який ви збережете після вирізання." + +msgid "Cut plane is placed out of object" +msgstr "Площина зрізу розміщена поза об'єктом" + +msgid "Cut plane with groove is invalid" +msgstr "Площина зрізу з пазом невірна" + +msgid "Connector" +msgstr "З'єднувач" + +msgid "Cut by Plane" +msgstr "Вирізати площиною" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" +"неманіфольдні ребра можуть бути викликані інструментом різання, ви хочете " +"виправити це зараз?" + +msgid "Repairing model object" +msgstr "Відновлення об'єкта моделі" + +msgid "Cut by line" +msgstr "Розрізати по лінії" + +msgid "Delete connector" +msgstr "Видалити з'єднувач" + +msgid "Mesh name" +msgstr "Назва сітки" + +msgid "Detail level" +msgstr "Рівень деталізації" + +msgid "Decimate ratio" +msgstr "Коефіцієнт зменшення" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "" +"Обробка моделі '%1%' з більш ніж 1 млн трикутниками може бути повільною. " +"Настійно рекомендується спростити модель." + +msgid "Simplify model" +msgstr "Спрощена модель" + +msgid "Simplify" +msgstr "Спростити" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "Спрощення наразі дозволено лише при виборі окремої деталі" + +msgid "Error" +msgstr "Помилка" + +msgid "Extra high" +msgstr "Надвисокий" + +msgid "High" +msgstr "Високий" + +msgid "Medium" +msgstr "Середній" + +msgid "Low" +msgstr "Низький" + +msgid "Extra low" +msgstr "Наднизький" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d трикутники" + +msgid "Show wireframe" +msgstr "Показати каркас" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "Не можна застосовувати під час попереднього перегляду процесу." + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "Операція вже скасовується. Зачекайте кілька секунд." + +msgid "Face recognition" +msgstr "Розпізнавання обличчя" + +msgid "Perform Recognition" +msgstr "Виконайте розпізнавання" + +msgid "Brush size" +msgstr "Розмір пензля" + +msgid "Brush shape" +msgstr "Форма пензля" + +msgid "Enforce seam" +msgstr "Примусове розташування шва" + +msgid "Block seam" +msgstr "Блокування шва" + +msgid "Seam painting" +msgstr "Малювання шва" + +msgid "Remove selection" +msgstr "Видалити виділення" + +msgid "Entering Seam painting" +msgstr "Entering seam painting" + +msgid "Leaving Seam painting" +msgstr "Leaving Seam Painting" + +msgid "Paint-on seam editing" +msgstr "Paint-on seam editing" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "Шрифт" + +msgid "Thickness" +msgstr "Товщина" + +msgid "Text Gap" +msgstr "Пробіл у тексті" + +msgid "Angle" +msgstr "Кут" + +msgid "" +"Embeded\n" +"depth" +msgstr "Вбудована глибина" + +msgid "Input text" +msgstr "Введення тексту" + +msgid "Surface" +msgstr "Поверхня" + +msgid "Horizontal text" +msgstr "Горизонтальний текст" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + переміщення миші вгору або вниз" + +msgid "Rotate text" +msgstr "Повернути текст" + +msgid "Text shape" +msgstr "Форма тексту" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "Поворот тексту" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "Переміщення тексту" + +msgid "Set Mirror" +msgstr "Встановити віддзеркалення" + +msgid "Embossed text" +msgstr "Рельєфний текст" + +msgid "Enter emboss gizmo" +msgstr "Ввести пристрій для тиснення" + +msgid "Leave emboss gizmo" +msgstr "Залиште пристрій для тиснення" + +msgid "Embossing actions" +msgstr "Дії з тисненням" + +msgid "Emboss" +msgstr "Рельєфне тиснення" + +msgid "NORMAL" +msgstr "НОРМАЛЬНО" + +msgid "SMALL" +msgstr "МАЛИЙ" + +msgid "ITALIC" +msgstr "КУРСИВ" + +msgid "SWISS" +msgstr "SWISS" + +msgid "MODERN" +msgstr "СУЧАСНИЙ" + +msgid "First font" +msgstr "Перший шрифт" + +msgid "Default font" +msgstr "Типовий шрифт" + +msgid "Advanced" +msgstr "Додатково" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" +"Текст не може бути написаний вибраним шрифтом. Спробуйте вибрати інший шрифт." + +msgid "Embossed text cannot contain only white spaces." +msgstr "Рельєфний текст не може містити лише пробіли." + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" +"Текст містить символ у вигляді гліфа (представлений символом '?'), шрифт " +"якого невідомий." + +msgid "Text input doesn't show font skew." +msgstr "При введенні тексту не спостерігається нахил шрифту." + +msgid "Text input doesn't show font boldness." +msgstr "При введенні тексту не відображається жирність шрифту." + +msgid "Text input doesn't show gap between lines." +msgstr "При введенні тексту не відображаються пропуски між рядками." + +msgid "Too tall, diminished font height inside text input." +msgstr "Занадто високий, зменшіть висота шрифту всередині текстового введення." + +msgid "Too small, enlarged font height inside text input." +msgstr "Занадто малий, збільшіть висоту шрифту в тексті, що вводиться." + +msgid "Text doesn't show current horizontal alignment." +msgstr "Текст не показує поточне вирівнювання по горизонталі." + +msgid "Revert font changes." +msgstr "Скасувати зміну шрифту." + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "Шрифт \"%1%\" не може бути обраний." + +msgid "Operation" +msgstr "Операція" + +msgid "Join" +msgstr "Обєднання" + +msgid "Click to change text into object part." +msgstr "Натисніть, щоб змінити текст на частині об'єкта." + +msgid "You can't change a type of the last solid part of the object." +msgstr "Ви не можете змінити тип останньої твердої частини об’єкта." + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "Вирізати" + +msgid "Click to change part type into negative volume." +msgstr "Натисніть, щоб змінити тип частини на від'ємний об'єм." + +msgid "Modifier" +msgstr "Модифікатор" + +msgid "Click to change part type into modifier." +msgstr "Натисніть, щоб змінити тип деталі на модифікаторі." + +msgid "Change Text Type" +msgstr "Змінити тип тексту" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "Перейменувати стиль(%1%) для тиснення тексту" + +msgid "Name can't be empty." +msgstr "Ім'я не повинно бути пустим." + +msgid "Name has to be unique." +msgstr "Ім'я повинно бути унікальним." + +msgid "OK" +msgstr "ОК" + +msgid "Rename style" +msgstr "Перейменувати стиль" + +msgid "Rename current style." +msgstr "Перейменувати поточний стиль." + +msgid "Can't rename temporary style." +msgstr "Неможливо перейменувати тимчасовий стиль." + +msgid "First Add style to list." +msgstr "Спочатку додайте стиль до списку." + +#, boost-format +msgid "Save %1% style" +msgstr "Зберегти стиль %1%" + +msgid "No changes to save." +msgstr "Ніяких змін не зберігати." + +msgid "New name of style" +msgstr "Нова назва стилю" + +msgid "Save as new style" +msgstr "Зберегти як новий стиль" + +msgid "Only valid font can be added to style." +msgstr "До стилю можна додати лише допустимий шрифт." + +msgid "Add style to my list." +msgstr "Додати стиль до мого списку." + +msgid "Save as new style." +msgstr "Зберегти як новий стиль." + +msgid "Remove style" +msgstr "Видалити стиль" + +msgid "Can't remove the last existing style." +msgstr "Неможливо видалити останній існуючий стиль." + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "Ви впевнені, що хочете назавжди видалити стиль \"%1%\"?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "Видаліть стиль \"%1%\"." + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "Не вдається видалити \"%1%\". Це останній стиль." + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "Не вдається видалити тимчасовий стиль \"%1%\"." + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "Модифікований стиль \"%1%\"" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "Поточний стиль \"%1%\"" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"Зміна стилю на \"%1%\" відкине поточну модифікацію стилю.\n" +"\n" +"Ви все одно хочете продовжити?" + +msgid "Not valid style." +msgstr "Невірний стиль." + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "Стиль \"%1%\" не може бути використаний і буде вилучений зі списку." + +msgid "Unset italic" +msgstr "Невстановлений курсив" + +msgid "Set italic" +msgstr "Виділено курсивом" + +msgid "Unset bold" +msgstr "Не встановлений жирний шрифт" + +msgid "Set bold" +msgstr "Виділено жирним шрифтом" + +msgid "Revert text size." +msgstr "Зміна розміру тексту." + +msgid "Revert embossed depth." +msgstr "Змінити глибину тиснення." + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"Для вибраного шрифту не можна змінити додаткові параметри.\n" +"Виберіть інший шрифт." + +msgid "Revert using of model surface." +msgstr "Скидання розташування." + +msgid "Revert Transformation per glyph." +msgstr "Скидання перетворення." + +msgid "Set global orientation for whole text." +msgstr "Встановити глобальну орієнтацію для всього тексту." + +msgid "Set position and orientation per glyph." +msgstr "Встановіть положення та орієнтацію для кожного гліфа." + +msgctxt "Alignment" +msgid "Left" +msgstr "Ліво" + +msgctxt "Alignment" +msgid "Center" +msgstr "Центр" + +msgctxt "Alignment" +msgid "Right" +msgstr "Право" + +msgctxt "Alignment" +msgid "Top" +msgstr "Верх" + +msgctxt "Alignment" +msgid "Middle" +msgstr "Середина" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "Низ" + +msgid "Revert alignment." +msgstr "Повернути вирівнювання." + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "точки" + +msgid "Revert gap between characters" +msgstr "Скидання відстані між літерами" + +msgid "Distance between characters" +msgstr "Відстань між символами" + +msgid "Revert gap between lines" +msgstr "Змінити проміжок між рядками" + +msgid "Distance between lines" +msgstr "Відстань між рядками" + +msgid "Undo boldness" +msgstr "Скасувати дію" + +msgid "Tiny / Wide glyphs" +msgstr "Тонкі/Tовсті символи" + +msgid "Undo letter's skew" +msgstr "Виправити нахил літер" + +msgid "Italic strength ratio" +msgstr "Коефіцієнт нахилу символів" + +msgid "Undo translation" +msgstr "Скасування перекладу" + +msgid "Distance of the center of the text to the model surface." +msgstr "Відстань від центру тексту до поверхні моделі." + +msgid "Undo rotation" +msgstr "Відмінити обертання" + +msgid "Rotate text Clock-wise." +msgstr "Обертати текст за годинниковою стрілкою." + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" +"Розблокувати обертання тексту при переміщенні тексту вздовж поверхні об'єкта." + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" +"Блокування обертання тексту під час переміщення тексту вздовж поверхні " +"об'єкта." + +msgid "Select from True Type Collection." +msgstr "Виберіть із колекції True Type." + +msgid "Set text to face camera" +msgstr "Текст лицьовою стороною до камери" + +msgid "Orient the text towards the camera." +msgstr "Зорієнтувати текст у напрямку камери." + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"Не вдається завантажити точно такий самий шрифт(\"%1%\"). Програма вибрала " +"схожий шрифт(\"%2%\"). Ви повинні встановити шрифт, щоб дозволити " +"редагування тексту." + +msgid "No symbol" +msgstr "Немає символів" + +msgid "Loading" +msgstr "Завантаження" + +msgid "In queue" +msgstr "У черзі" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "Висота" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "Тільки на поверхні" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "Орієнтація по гліфу" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "Вирівнювання" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "Міжлітерний інтервал" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "Міжрядковий інтервал" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "Товщина шрифту" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "Коефіцієнт нахилу" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "Зсув від поверхні" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "Зберігати верт. орієнтацію" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "Колекція" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "Обертання SVG" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "ПереміщенняSVG" + +msgid "Enter SVG gizmo" +msgstr "Вхід в гізмо SVG" + +msgid "Leave SVG gizmo" +msgstr "Вихід з гізмо SVG" + +msgid "SVG actions" +msgstr "Дії з SVG" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "Прозорість (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "Градієнт кольору (%1%)" + +msgid "Undefined fill type" +msgstr "Невизначений тип заливки" + +msgid "Linear gradient" +msgstr "Лінійний градієнт" + +msgid "Radial gradient" +msgstr "Радіальний градієнт" + +msgid "Open filled path" +msgstr "Відкритий контур із заливкою" + +msgid "Undefined stroke type" +msgstr "Невизначений тип обведення" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" +"Контур не може бути виправлений від проблеми самоперетину і крапок, що " +"дублюються." + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" +"Фінальна форма містить самоперетин або декілька точок з однаковою " +"координатою." + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "Фігура позначена як невидима (%1%)." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "Заливка фігури (%1%) не підтримується: %2%." + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "Обведення фігури (%1%) занадто тонке (мінімальна товщина %2% мм)." + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "Обведення фігури (%1%) не підтримується: %2%." + +msgid "Face the camera" +msgstr "Лицьовою стороною до камери" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "Невідоме ім'я файлу" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "Шлях до файлу SVG \"%1%\"" + +msgid "Reload SVG file from disk." +msgstr "Перезавантажте файл SVG з диска." + +msgid "Change file" +msgstr "Змінити файл" + +msgid "Change to another .svg file" +msgstr "Змінити на інший файл .svg" + +msgid "Forget the file path" +msgstr "Забути шлях до файлу" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" +"НЕ зберігати локальний шлях до 3MF-файлу.\n" +"Також вимикає опцію \"перезавантажити з диска\"." + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "Запікати" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "Запекти в модель як незмінну частину" + +msgid "Save as" +msgstr "Зберегти як" + +msgid "Save SVG file" +msgstr "Зберегти SVG файл" + +msgid "Save as '.svg' file" +msgstr "Зберегти у форматі '.svg" + +msgid "Size in emboss direction." +msgstr "Глибина рельєфу." + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "Масштаб також змінює кількість вибірок кривої (%1%)" + +msgid "Width of SVG." +msgstr "Ширина SVG." + +msgid "Height of SVG." +msgstr "Висота SVG." + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "Блокувати/розблокувати співвідношення сторін SVG." + +msgid "Reset scale" +msgstr "Скинути масштаб" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "Відстань від центру SVG до поверхні моделі." + +msgid "Reset distance" +msgstr "Скинути відстань" + +msgid "Reset rotation" +msgstr "Скинути обертання" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" +"Блокування/розблокування кута повороту при перетягуванні над поверхнею." + +msgid "Mirror vertically" +msgstr "Віддзеркалити вертикально" + +msgid "Mirror horizontally" +msgstr "Віддзеркалити горизонтально" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "Змінити тип SVG-файлу" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "Дзеркально" + +msgid "Choose SVG file for emboss:" +msgstr "Виберіть SVG файл для рельєфу:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "Файл НЕ існує (%1%)." + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "Ім'я файлу має закінчуватися на \".svg\", а не на %1%" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "Парсер NanoSVG не може прочитати файл (%1%)." + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "Файл SVG не містить жодного шляху для рельєфного тексту (%1%)." + +msgid "Vertex" +msgstr "Вершина" + +msgid "Edge" +msgstr "Ребро" + +msgid "Plane" +msgstr "Площина" + +msgid "Point on edge" +msgstr "Точка на ребрі" + +msgid "Point on circle" +msgstr "Точка на колі" + +msgid "Point on plane" +msgstr "Точка на площині" + +msgid "Center of edge" +msgstr "Центр ребра" + +msgid "Center of circle" +msgstr "Центр кола" + +msgid "ShiftLeft mouse button" +msgstr "ShiftЛіва кнопка миші" + +msgid "Select feature" +msgstr "Виберіть функцію" + +msgid "Select point" +msgstr "Виберіть точку" + +msgid "Delete" +msgstr "Видалити" + +msgid "Restart selection" +msgstr "Вибрати заново" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "Зняти виділення" + +msgid "Measure" +msgstr "Виміряти" + +msgid "Edit to scale" +msgstr "Редагувати масштаб" + +msgctxt "Verb" +msgid "Scale" +msgstr "Масштаб" + +msgid "None" +msgstr "Ні" + +msgid "Diameter" +msgstr "Діаметр" + +msgid "Length" +msgstr "Довжина" + +msgid "Selection" +msgstr "Вибір" + +msgid "Copy to clipboard" +msgstr "Копіювати в буфер обміну" + +msgid "Perpendicular distance" +msgstr "Перпендикулярна відстань" + +msgid "Distance" +msgstr "Відстань" + +msgid "Direct distance" +msgstr "Пряма відстань" + +msgid "Distance XYZ" +msgstr "Відстань XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "Повідомлення" + +msgid "Undefined" +msgstr "Не визначено" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% замінено на %2%" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "Конфігурація може бути створена новішою версією Snapmaker Orca." + +msgid "Some values have been replaced. Please check them:" +msgstr "Деякі значення було замінено. Будь ласка, перевірте їх:" + +msgid "Process" +msgstr "Процес" + +msgid "Filament" +msgstr "Філамент" + +msgid "Machine" +msgstr "Машина" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "Пакет конфігурації був завантажений, але деякі значення не розпізнано." + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "" +"Файл конфігурації “%1%” був завантажений, але деякі значення не були " +"розпізнані." + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"Snapmaker Orca завершить роботу через брак пам'яті. Можливо, це помилка. Ми " +"будемо вдячні, якщо ви повідомите про проблему нашій команді." + +msgid "Fatal error" +msgstr "Фатальна помилка" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"Програма Snapmaker Orca завершить роботу через помилку локалізації. Буде " +"вдячний, якщо ви повідомите про конкретний сценарій виникнення цієї проблеми." + +msgid "Critical error" +msgstr "Критична помилка" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Невідома помилка Snapmaker Orca : %1%" + +msgid "Untitled" +msgstr "Без назви" + +msgid "Downloading Bambu Network Plug-in" +msgstr "Завантаження мережевого плагіна для принтерів Bambu" + +msgid "Login information expired. Please login again." +msgstr "Термін дії даних для входу минув. Будь ласка, увійдіть знову." + +msgid "Incorrect password" +msgstr "Невірний пароль" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "Не вдалося підключити %s! [Серійний номер:%s, код=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Для роботи деяких функцій Snapmaker Orca потрібен Microsoft WebView2 Runtime.\n" +"Натисніть Так, щоб встановити його зараз." + +msgid "WebView2 Runtime" +msgstr "Виконання WebView2" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "%s Хочете продовжити?" + +msgid "Remember my choice" +msgstr "Запам'ятати мій вибір" + +msgid "Loading configuration" +msgstr "Завантаження конфігурації" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "" +"Натисніть OK, щоб завантажити останню версію в стандартному браузері: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca потребує оновлення" + +msgid "This is the newest version." +msgstr "Це найновіша версія." + +msgid "Info" +msgstr "Інформація" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"Можливо, файл конфігурації Snapmaker Orca пошкоджений і не може бути " +"оброблений.\n" +"Snapmaker Orca спробував відтворити конфігураційний файл.\n" +"Зверніть увагу, що налаштування програми будуть втрачені, але профілі " +"принтера не торкнуться." + +msgid "Rebuild" +msgstr "Відновлення" + +msgid "Loading current presets" +msgstr "Завантаження поточних налаштувань" + +msgid "Loading a mode view" +msgstr "Завантаження режиму перегляду" + +msgid "Choose one file (3mf):" +msgstr "Виберіть один файл (3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "" +"Виберіть один або кілька файлів (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "Виберіть один або кілька файлів (3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "Виберіть ZIP файл" + +msgid "Choose one file (gcode/3mf):" +msgstr "Виберіть один файл (gcode/3mf):" + +msgid "Some presets are modified." +msgstr "Деякі налаштування змінено." + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "" +"Ви можете зберегти модифіковані налаштування в новому проекті, відмінити або " +"зберегти зміни як нові налаштування." + +msgid "User logged out" +msgstr "Користувач вийшов із системи" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "новий або відкритий файл проекту не дозволяється в процесі нарізки!" + +msgid "Open Project" +msgstr "Відкрити проект" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "" +"Версія студії Bambu надто низька, її необхідно оновити до останньоїверсії, " +"перш ніж її можна буде використовувати у звичайному режимі" + +msgid "Privacy Policy Update" +msgstr "Оновлення політики конфіденційності" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" +"Кількість налаштувань користувача, збережених у хмарі, перевищила " +"максимально допустиму межу, тому новостворені налаштування користувача можна " +"використовувати лише локально." + +msgid "Sync user presets" +msgstr "Синхронізувати налаштування користувача" + +msgid "Loading user preset" +msgstr "Завантаження користувацького налаштування" + +msgid "Switching application language" +msgstr "Зміна мови програми" + +msgid "Select the language" +msgstr "Виберіть мову" + +msgid "Language" +msgstr "Мова" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "Завантаження все ще продовжується" + +msgid "Stop them and continue anyway?" +msgstr "Зупинити їх та продовжувати в будь-якому випадку?" + +msgid "Ongoing uploads" +msgstr "Поточні завантаження" + +msgid "Select a G-code file:" +msgstr "Виберіть файл G-коду:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" +"Не вдалося розпочати завантаження URL-адреси. Папка призначення не " +"встановлена. Будь ласка, виберіть папку призначення у Майстрі конфігурації." + +msgid "Import File" +msgstr "Імпортувати файл" + +msgid "Choose files" +msgstr "Вибрати файли" + +msgid "New Folder" +msgstr "Нова папка" + +msgid "Open" +msgstr "Відкрити" + +msgid "Rename" +msgstr "Перейменувати" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Помилка ініціалізації графічного інтерфейсу Snapmaker Orca" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "Критична помилка, виявлено виняток: %1%" + +msgid "Quality" +msgstr "Якість" + +msgid "Shell" +msgstr "Оболонка" + +msgid "Infill" +msgstr "Заповнення" + +msgid "Support" +msgstr "Підтримки" + +msgid "Flush options" +msgstr "Параметри очищення" + +msgid "Speed" +msgstr "Швидкість" + +msgid "Strength" +msgstr "Міцність" + +msgid "Top Solid Layers" +msgstr "Верхніх суцільних шарів" + +msgid "Top Minimum Shell Thickness" +msgstr "Мінімальна товщина верхньої оболонки" + +msgid "Bottom Solid Layers" +msgstr "Нижніх суцільних шарів" + +msgid "Bottom Minimum Shell Thickness" +msgstr "Мінімальна товщина нижньої оболонки" + +msgid "Ironing" +msgstr "Розгладжування" + +msgid "Fuzzy Skin" +msgstr "Нечітка оболонка" + +msgid "Extruders" +msgstr "Екструдери" + +msgid "Extrusion Width" +msgstr "Ширина екструзії" + +msgid "Wipe options" +msgstr "Параметри очищення" + +msgid "Bed adhesion" +msgstr "Прилипання до столу" + +msgid "Add part" +msgstr "Додати елемент" + +msgid "Add negative part" +msgstr "Додати об'єм для віднімання" + +msgid "Add modifier" +msgstr "Додати модифікатор" + +msgid "Add support blocker" +msgstr "Додати блокувальник підтримки" + +msgid "Add support enforcer" +msgstr "Додати примусову підтримку" + +msgid "Add text" +msgstr "Додати текст" + +msgid "Add negative text" +msgstr "Додати текст для віднімання" + +msgid "Add text modifier" +msgstr "Додати текстовий модифікатор" + +msgid "Add SVG part" +msgstr "Додати елемент SVG" + +msgid "Add negative SVG" +msgstr "Додати SVG для віднімання" + +msgid "Add SVG modifier" +msgstr "Додати модифікатор SVG" + +msgid "Select settings" +msgstr "Вибрати налаштування" + +msgid "Hide" +msgstr "Приховати" + +msgid "Show" +msgstr "Показати" + +msgid "Del" +msgstr "Видалити" + +msgid "Delete the selected object" +msgstr "Видалення вибраних моделей" + +msgid "Load..." +msgstr "Завантажити..." + +msgid "Cube" +msgstr "Куб" + +msgid "Cylinder" +msgstr "Циліндр" + +msgid "Cone" +msgstr "Конус" + +msgid "Disc" +msgstr "Диск" + +msgid "Torus" +msgstr "Тороїд" + +msgid "Orca Cube" +msgstr "Orca Куб" + +msgid "3DBenchy" +msgstr "3DBenchy" + +msgid "Autodesk FDM Test" +msgstr "Autodesk FDM Test" + +msgid "Voron Cube" +msgstr "Voron Куб" + +msgid "Stanford Bunny" +msgstr "Стенфордський кролик" + +msgid "Orca String Hell" +msgstr "«Струнне пекло» Orca" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Ця модель має тиснення тексту на верхній поверхні. Для отримання оптимальних " +"результатів рекомендується встановити \"Поріг однієї стіни " +"(min_width_top_surface)\" на 0, щоб функція \"Тільки одна стіна на верхній " +"поверхні\" працювала найкраще.\n" +"Так - змінювати ці налаштування автоматично\n" +"Ні - Не змінювати ці налаштування для мене" + +msgid "Text" +msgstr "Текст" + +msgid "Height range Modifier" +msgstr "Модифікатор діапазону висоти шарів" + +msgid "Add settings" +msgstr "Додати налаштування" + +msgid "Change type" +msgstr "Змінити тип" + +msgid "Set as an individual object" +msgstr "Встановити як окремий об'єкт" + +msgid "Set as individual objects" +msgstr "Встановити як окремі об'єкти" + +msgid "Fill bed with copies" +msgstr "Заповнити весь стіл копіями" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "Заповніть решту площу столу копіями вибраного об'єкта" + +msgid "Printable" +msgstr "Доступно для друку" + +msgid "Fix model" +msgstr "Виправити модель" + +msgid "Export as one STL" +msgstr "Експортувати як один файл STL" + +msgid "Export as STLs" +msgstr "Експортувати як файли STL" + +msgid "Reload from disk" +msgstr "Перезавантажити з диска" + +msgid "Reload the selected parts from disk" +msgstr "Перезавантажте вибрані частини з диска" + +msgid "Replace with STL" +msgstr "Замінити на STL" + +msgid "Replace the selected part with new STL" +msgstr "Замініть вибрану частину новим STL" + +msgid "Change filament" +msgstr "Зміна філаменту" + +msgid "Set filament for selected items" +msgstr "Встановити філамент для вибраних елементів" + +msgid "Default" +msgstr "За замовчуванням" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "Філамент %d" + +msgid "current" +msgstr "поточний" + +msgid "Scale to build volume" +msgstr "Масштабування для збільшення обсягу" + +msgid "Scale an object to fit the build volume" +msgstr "Відмасштабувати під область друку" + +msgid "Flush Options" +msgstr "Опції очищення" + +msgid "Flush into objects' infill" +msgstr "Очищення у заповненні моделі" + +msgid "Flush into this object" +msgstr "Очищення у модель" + +msgid "Flush into objects' support" +msgstr "Очищення на підтримку" + +msgid "Edit in Parameter Table" +msgstr "Редагування таблиці параметрів" + +msgid "Convert from inch" +msgstr "Перетворити розміри з дюймів" + +msgid "Restore to inch" +msgstr "Відновити розміри в дюйми" + +msgid "Convert from meter" +msgstr "Перетворити з метричної" + +msgid "Restore to meter" +msgstr "Відновити в метричну" + +msgid "Assemble" +msgstr "Об'єднати у збірку" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "Зібрати вибрані об'єкти в об'єкт з кількома частинами" + +msgid "Assemble the selected objects to an object with single part" +msgstr "Зібрати вибрані об'єкти в об'єкт в одне ціле" + +msgid "Mesh boolean" +msgstr "Булеві операції" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "Булеві операції з сіткою, включаючи об'єднання та віднімання" + +msgid "Along X axis" +msgstr "Вздовж осі X" + +msgid "Mirror along the X axis" +msgstr "Відобразити по осі X" + +msgid "Along Y axis" +msgstr "По осі Y" + +msgid "Mirror along the Y axis" +msgstr "Відобразити по осі Y" + +msgid "Along Z axis" +msgstr "По осі Z" + +msgid "Mirror along the Z axis" +msgstr "Відобразити осі Z" + +msgid "Mirror object" +msgstr "Відобразити модель" + +msgid "Edit text" +msgstr "Редагувати текст" + +msgid "Ability to change text, font, size, ..." +msgstr "Можливість змінювати текст, шрифт, розмір, ..." + +msgid "Edit SVG" +msgstr "Редагувати SVG" + +msgid "Change SVG source file, projection, size, ..." +msgstr "Змінити вихідний файл SVG, проекцію, розмір, ..." + +msgid "Invalidate cut info" +msgstr "Видалити інформацію про розріз" + +msgid "Add Primitive" +msgstr "Додати примітив" + +msgid "Add Handy models" +msgstr "Додати тестову модель" + +msgid "Add Models" +msgstr "Додати модель" + +msgid "Show Labels" +msgstr "Показати імена файлів" + +msgid "To objects" +msgstr "На моделі" + +msgid "Split the selected object into multiple objects" +msgstr "Розділити вибраний об'єкт на кілька об'єктів" + +msgid "To parts" +msgstr "На частини" + +msgid "Split the selected object into multiple parts" +msgstr "Розділити вибрану модель на окремі частини" + +msgid "Split" +msgstr "Розділити" + +msgid "Split the selected object" +msgstr "Розділити вибраний об'єкт" + +msgid "Auto orientation" +msgstr "Автоматична орієнтація" + +msgid "Auto orient the object to improve print quality." +msgstr "Автоматично орієнтуйте об'єкт для покращення якості друку." + +msgid "Select All" +msgstr "Вибрати все" + +msgid "select all objects on current plate" +msgstr "вибрати всі об'єкти на поточній пластині" + +msgid "Delete All" +msgstr "Видалити все" + +msgid "delete all objects on current plate" +msgstr "видалити всі об'єкти на поточній пластині" + +msgid "Arrange" +msgstr "Організувати" + +msgid "arrange current plate" +msgstr "упорядкувати поточну табличку" + +msgid "Reload All" +msgstr "Перезавантажити все" + +msgid "reload all from disk" +msgstr "перезавантажити все з диска" + +msgid "Auto Rotate" +msgstr "Авто-поворот" + +msgid "auto rotate current plate" +msgstr "автоповорот поточної пластини" + +msgid "Delete Plate" +msgstr "Видалити пластину" + +msgid "Remove the selected plate" +msgstr "Видалити вибрану пластину" + +msgid "Clone" +msgstr "Зробити копію" + +msgid "Simplify Model" +msgstr "Спростити модель" + +msgid "Center" +msgstr "Центр" + +msgid "Edit Process Settings" +msgstr "Редагувати налаштування процесу друку" + +msgid "Edit print parameters for a single object" +msgstr "Редагувати параметри друку для одного об'єкта" + +msgid "Change Filament" +msgstr "Змінити філамент" + +msgid "Set Filament for selected items" +msgstr "Встановити філамент для вибраних елементів" + +msgid "Unlock" +msgstr "Розблокувати" + +msgid "Lock" +msgstr "Заблокувати" + +msgid "Edit Plate Name" +msgstr "Редагувати назву пластини" + +msgid "Name" +msgstr "Ім'я" + +msgid "Fila." +msgstr "Філа." + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d помилка виправлена" +msgstr[1] "%1$d помилки виправлені" +msgstr[2] "%1$d помилки виправлені" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "Помилка: %1$d відкрите ребро." +msgstr[1] "Помилка: %1$d відкритих ребер." +msgstr[2] "Помилка: %1$d відкритих ребер." + +msgid "Remaining errors" +msgstr "Залишилось помилок" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d відкрите ребро" +msgstr[1] "%1$d відкритих ребер" +msgstr[2] "%1$d відкритих ребер" + +msgid "Right click the icon to fix model object" +msgstr "Клацніть правою кнопкою миші значок, щоб виправити об'єкт моделі" + +msgid "Right button click the icon to drop the object settings" +msgstr "" +"Натисніть правою кнопкою миші на значок, щоб змінити налаштування моделі" + +msgid "Click the icon to reset all settings of the object" +msgstr "Натисніть значок, щоб скинути всі налаштування моделі" + +msgid "Right button click the icon to drop the object printable property" +msgstr "" +"Натисніть правою кнопкою миші на значок, щоб дозволити/заборонити друк моделі" + +msgid "Click the icon to toggle printable property of the object" +msgstr "Натисніть , щоб дозволити/заборонити друк моделі" + +msgid "Click the icon to edit support painting of the object" +msgstr "Натисніть значок, щоб відредагувати малюнок підтримки цієї моделі" + +msgid "Click the icon to edit color painting of the object" +msgstr "Натисніть , щоб змінити колір моделі" + +msgid "Click the icon to shift this object to the bed" +msgstr "Натисніть значок, щоб перемістити цю модель на стіл" + +msgid "Loading file" +msgstr "Завантаження файлу" + +msgid "Error!" +msgstr "Помилка!" + +msgid "Failed to get the model data in the current file." +msgstr "Не вдалося отримати дані моделі в поточному файлі." + +msgid "Generic" +msgstr "Базовий примітив" + +msgid "Add Modifier" +msgstr "Додавання модифікатора" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "" +"Переключення режиму роботи з моделями для редагування параметрів " +"модифікатора." + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "" +"Переключення в режим роботи з моделями для редагування налаштувань друку " +"вибраних моделей." + +msgid "Delete connector from object which is a part of cut" +msgstr "Видалити конектор з об'єкта, який є частиною розрізу" + +msgid "Delete solid part from object which is a part of cut" +msgstr "Видалити твердотільну частину об'єкта, який є частиною вирізу" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "Видалення об'єму для віднімання з моделі, яка є частиною розрізу" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "" +"Щоб зберегти інформацію про розріз, можна видалити всі з'єднання з усіх " +"пов'язаних об'єктів." + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"Ця дія призведе до видалення інформації про розріз.\n" +"Після цього узгодженість моделі не може бути гарантована.\n" +"\n" +"Щоб маніпулювати з твердотілими частинами або об'ємами для віднімання, " +"необхідно спочатку видалити інформацію про зроблений розріз." + +msgid "Delete all connectors" +msgstr "Видалити всі з'єднання" + +msgid "Deleting the last solid part is not allowed." +msgstr "Видалення останньої твердотільного частини не допускається." + +msgid "The target object contains only one part and can not be splited." +msgstr "Цільова модель єдина і не може бути поділена на частини." + +msgid "Assembly" +msgstr "Збірка" + +msgid "Cut Connectors information" +msgstr "Інформація про вирізані з'єднання" + +msgid "Object manipulation" +msgstr "Маніпуляції з об'єктами" + +msgid "Group manipulation" +msgstr "Групові маніпуляції" + +msgid "Object Settings to modify" +msgstr "Параметри моделі для зміни" + +msgid "Part Settings to modify" +msgstr "Параметри елемента для редагування" + +msgid "Layer range Settings to modify" +msgstr "Зміна параметрів діапазону шарів" + +msgid "Part manipulation" +msgstr "Маніпуляція з частинами" + +msgid "Instance manipulation" +msgstr "Маніпуляція з копіями" + +msgid "Height ranges" +msgstr "Діапазон висот шарів" + +msgid "Settings for height range" +msgstr "Налаштування для діапазону висот шарів" + +msgid "Layer" +msgstr "Шар" + +msgid "Selection conflicts" +msgstr "Конфлікти у виборі" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "" +"Якщо перший вибраний елемент є об'єктом, другий також має бути об'єктом." + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "" +"Якщо перший обраний елемент є частиною, другий має бути частиноютого ж\n" +"об'єкту." + +msgid "The type of the last solid object part is not to be changed." +msgstr "Тип останньої твердотільної частини об'єкта не можна змінювати." + +msgid "Negative Part" +msgstr "Обсяг для віднімання" + +msgid "Support Blocker" +msgstr "Блокувальник підтримки" + +msgid "Support Enforcer" +msgstr "Примусова підтримка" + +msgid "Type:" +msgstr "Тип:" + +msgid "Choose part type" +msgstr "Виберіть тип деталі" + +msgid "Enter new name" +msgstr "Введіть нове ім'я" + +msgid "Renaming" +msgstr "Перейменування" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "Наступна частина моделі успішно відремонтована" +msgstr[1] "Наступні частини моделі успішно відремонтовані" +msgstr[2] "Наступні частини моделі успішно відремонтовані" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "Не вдалося полагодити таку частину моделі" +msgstr[1] "Не вдалося полагодити такі частини моделі" +msgstr[2] "Не вдалося полагодити такі частини моделі" + +msgid "Repairing was canceled" +msgstr "Ремонт було скасовано" + +msgid "Additional process preset" +msgstr "Додаткове налаштування процесу" + +msgid "Remove parameter" +msgstr "Видалити параметр" + +msgid "to" +msgstr "в" + +msgid "Remove height range" +msgstr "Видалення діапазону висот шарів" + +msgid "Add height range" +msgstr "Додавання діапазон висот шарів" + +msgid "Invalid numeric." +msgstr "Неприпустиме числове значення." + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "" +"одну клітинку можна скопіювати лише в одну або декілька клітинок у тому " +"самому стовпці" + +msgid "multiple cells copy is not supported" +msgstr "копіювання кількох клітинок не підтримується" + +msgid "Outside" +msgstr "Поза столом" + +msgid "Layer height" +msgstr "Висота шару" + +msgid "Wall loops" +msgstr "Кількість стінок" + +msgid "Infill density(%)" +msgstr "Щільність заповнення (%)" + +msgid "Auto Brim" +msgstr "Автоматична Кайма" + +msgid "Mouse ear" +msgstr "Мишаче вушко" + +msgid "Outer brim only" +msgstr "Кайма тільки зовні" + +msgid "Inner brim only" +msgstr "Кайма тільки всередині" + +msgid "Outer and inner brim" +msgstr "Зовні та всередині" + +msgid "No-brim" +msgstr "Без кайми" + +msgid "Outer wall speed" +msgstr "Швидкість зовнішньої стінки" + +msgid "Plate" +msgstr "Стіл" + +msgid "Brim" +msgstr "Кайма" + +msgid "Object/Part Setting" +msgstr "Налаштування об'єкта/деталі" + +msgid "Reset parameter" +msgstr "Скинути параметр" + +msgid "Multicolor Print" +msgstr "Багатоколірний друк" + +msgid "Line Type" +msgstr "Тип лінії" + +msgid "More" +msgstr "Більше" + +msgid "Open Preferences." +msgstr "Відкрийте налаштування." + +msgid "Open next tip." +msgstr "Відкрийте наступну пораду." + +msgid "Open Documentation in web browser." +msgstr "Відкрийте документацію у веб-браузері." + +msgid "Color" +msgstr "Колір" + +msgid "Pause" +msgstr "Пауза" + +msgid "Template" +msgstr "Шаблон" + +msgid "Custom" +msgstr "Стандартний" + +msgid "Pause:" +msgstr "Пауза:" + +msgid "Custom Template:" +msgstr "Користувацький шаблон:" + +msgid "Custom G-code:" +msgstr "G-код користувача:" + +msgid "Custom G-code" +msgstr "G-код користувача" + +msgid "Enter Custom G-code used on current layer:" +msgstr "Введіть G-код користувача, що використовується в поточному шарі:" + +msgid "Jump to Layer" +msgstr "Перейти до шару" + +msgid "Please enter the layer number" +msgstr "Будь ласка, введіть номер шару" + +msgid "Add Pause" +msgstr "Додати паузу" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "Вставте паузу на початку цього шару." + +msgid "Add Custom G-code" +msgstr "Додати G-код користувача" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "Вставте G-код користувача на початку цього шару." + +msgid "Add Custom Template" +msgstr "Додати користувацький шаблон" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "Вставте власний G-код шаблону на початку цього шару." + +msgid "Filament " +msgstr "Філамент " + +msgid "Change filament at the beginning of this layer." +msgstr "Заміна нитки на початку цього шару." + +msgid "Delete Pause" +msgstr "Видалити паузу" + +msgid "Delete Custom Template" +msgstr "Видалити шаблон користувача" + +msgid "Edit Custom G-code" +msgstr "Редагувати G-код користувача" + +msgid "Delete Custom G-code" +msgstr "Видалити G-код користувача" + +msgid "Delete Filament Change" +msgstr "Видалити команду заміни нитки" + +msgid "No printer" +msgstr "Принтер не вибраний" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "Не вдалося підключитися до сервера" + +msgid "Check the status of current system services" +msgstr "Перевірте стан поточних системних служб" + +msgid "code" +msgstr "код" + +msgid "Failed to connect to cloud service" +msgstr "Не вдалося підключитися до хмарної служби" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "Клацніть гіперпосилання вище, щоб переглянути статус хмарної служби" + +msgid "Failed to connect to the printer" +msgstr "Не вдалося підключитися до принтера" + +msgid "Connection to printer failed" +msgstr "Помилка підключення до принтера" + +msgid "Please check the network connection of the printer and Orca." +msgstr "Перевірте мережеве з'єднання принтера і Orca." + +msgid "Connecting..." +msgstr "Підключення..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "/" + +msgid "Empty" +msgstr "Порожній" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "Автоматична заміна" + +msgid "AMS not connected" +msgstr "АМС не підключено" + +msgid "Load" +msgstr "Завантажити" + +msgid "Unload" +msgstr "Вивантаження" + +msgid "Ext Spool" +msgstr "Зовнішня котушка" + +msgid "Tips" +msgstr "Поради" + +msgid "Guide" +msgstr "Гід" + +msgid "Retry" +msgstr "Повторити спробу" + +msgid "Calibrating AMS..." +msgstr "Калібрування АМС..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "" +"Під час калібрування виникла проблема. Натисніть, щоб переглянути рішення." + +msgid "Calibrate again" +msgstr "Повторити калібрування" + +msgid "Cancel calibration" +msgstr "Скасувати калібрування" + +msgid "Idling..." +msgstr "Очікування…" + +msgid "Heat the nozzle" +msgstr "Нагрійте сопло" + +msgid "Cut filament" +msgstr "Відрізати філамент" + +msgid "Pull back current filament" +msgstr "Відтягніть поточний філамент" + +msgid "Push new filament into extruder" +msgstr "Вставте новий філамент в екструдер" + +msgid "Purge old filament" +msgstr "Очистіть старий філамент" + +msgid "Feed Filament" +msgstr "Подача нитки філаменту" + +msgid "Confirm extruded" +msgstr "Підтвердити витіснення" + +msgid "Check filament location" +msgstr "Перевірити розташування філаменту" + +msgid "Grab new filament" +msgstr "Візьміть новий філамент" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" +"Виберіть слот AMS, а потім натисніть кнопку “Завантажити” або “Вивантажити”, " +"щоб автоматично завантажити або вивантажити філаменти." + +msgid "Edit" +msgstr "Редагувати" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"Всі вибрані об'єкти знаходяться на заблокованій пластині,\n" +"Ми не можемо робити авто-розстановку на цих об'єктах." + +msgid "No arrangable objects are selected." +msgstr "" +"Всі вибрані об'єкти знаходяться на заблокованій пластині,\\n\n" +"Ми не можемо робити авто-розстановку на цих об'єктах." + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "" +"Ця пластина заблокована,\n" +"Ми не можемо зробити автоаранжування на цій пластині." + +msgid "Arranging..." +msgstr "Організація..." + +msgid "Arranging" +msgstr "Організація" + +msgid "Arranging canceled." +msgstr "Організацію скасовано." + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "" +"Розташування завершено, але не все вмістилося на столі. Зменште інтервал " +"розміщення та спробуйте ще раз." + +msgid "Arranging done." +msgstr "Організація зроблена." + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "" +"Помилка розміщення. Виявлено деякі винятки під час обробки геометрії моделей." + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"При розміщенні були проігноровані такі моделі, які не розміщуються на одному " +"столі:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"Всі вибрані об'єкти знаходяться на заблокованій пластині,\n" +"Ми не можемо робити автоорієнтацію на цих об'єктах." + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"Ця пластина заблокована,\n" +"Ми не можемо зробити автоорієнтацію на цій пластині." + +msgid "Orienting..." +msgstr "Орієнтування..." + +msgid "Orienting" +msgstr "Орієнтація" + +msgid "Orienting canceled." +msgstr "Орієнтування скасоване." + +msgid "Filling" +msgstr "Заповнення" + +msgid "Bed filling canceled." +msgstr "Заповнення ліжка скасоване." + +msgid "Bed filling done." +msgstr "Заповнення ліжка виконане." + +msgid "Searching for optimal orientation" +msgstr "Пошук оптимальної орієнтації" + +msgid "Orientation search canceled." +msgstr "Пошук орієнтації скасовано." + +msgid "Orientation found." +msgstr "Орієнтація знайдена." + +msgid "Logging in" +msgstr "Вхід до системи" + +msgid "Login failed" +msgstr "Помилка входу" + +msgid "Please check the printer network connection." +msgstr "Будь ласка, перевірте підключення принтера до мережі." + +msgid "Abnormal print file data. Please slice again." +msgstr "Неправильні дані файлу друку. Будь ласка, наріжте ще раз." + +msgid "Task canceled." +msgstr "Завдання скасовано." + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "" +"Тайм-аут завантаження завдання. Будь ласка, перевірте статус мережі і " +"спробуйте ще раз." + +msgid "Cloud service connection failed. Please try again." +msgstr "" +"Не вдалося підключитися до хмарного сервісу. Будь ласка, спробуйте ще раз." + +msgid "Print file not found. please slice again." +msgstr "Файл друку не знайдено, наріжте ще раз." + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "" +"Розмір друкованого файлу перевищує максимально допустимий розмір (1 ГБ). " +"Будь ласка, спростіть модель і знову виконайте нарізку." + +msgid "Failed to send the print job. Please try again." +msgstr "Не вдалося надіслати завдання на друк. Будь ласка, спробуйте ще раз." + +msgid "Failed to upload file to ftp. Please try again." +msgstr "Не вдалося завантажити файл на FTP. Спробуйте ще раз." + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "" +"Перевірте поточний стан сервера Bambu Lab, натиснувши на посилання вище." + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "" +"Розмір файлу друку занадто великий. Будь ласка, зменште розмір файлу і " +"спробуйте ще раз." + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "" +"Файл друку не знайдено; будь ласка, знову наріжте його і відправте для друку." + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "" +"Не вдалося завантажити файл друку на FTP. Будь ласка, перевірте стан мережі " +"і спробуйте ще раз." + +msgid "Sending print job over LAN" +msgstr "Надсилання завдання на друк локальною мережею" + +msgid "Sending print job through cloud service" +msgstr "Надсилання завдання на друк через хмарний сервіс" + +msgid "Print task sending times out." +msgstr "Час відправлення завдання на друк закінчився." + +msgid "Service Unavailable" +msgstr "Сервіс недоступний" + +msgid "Unknown Error." +msgstr "Невідома помилка." + +msgid "Sending print configuration" +msgstr "Надсилання конфігурації друку" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "Успішно надіслано. Автоматично перейде на сторінку пристрою в %sс" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "" +"Успішно відправлено. Автоматично перейде на наступну сторінку через %sс" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "Перед друком через локальну мережу необхідно вставити картку SD." + +msgid "Sending gcode file over LAN" +msgstr "Надсилання файлу gcode по локальній мережі" + +msgid "Sending gcode file to sdcard" +msgstr "Надсилання файлу gcode на карту SD" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "Успішно надіслано. Закрити поточну сторінку в %sс" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "Перед надсиланням на принтер необхідно вставити картку SD." + +msgid "Importing SLA archive" +msgstr "Імпорт архіву SLA" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"Архів SLA не містить пресетів. Будь ласка, активуйте SLA\n" +"Перед встановленням принтера, перш ніж імпортувати цей архів SLA." + +msgid "Importing canceled." +msgstr "Імпорт скасовано." + +msgid "Importing done." +msgstr "Імпорт виконано." + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "" +"Імпортований архів SLA не містить жодних профілів. Поточні профілі SLA " +"використовувалися в якості резервних." + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "Ви не можете завантажити проект SLA зі складеним об'єктом на столі" + +msgid "Please check your object list before preset changing." +msgstr "Будь ласка, перевірте список моделей перед зміною профілю." + +msgid "Attention!" +msgstr "Увага!" + +msgid "Downloading" +msgstr "Завантаження" + +msgid "Download failed" +msgstr "Помилка завантаження" + +msgid "Cancelled" +msgstr "Скасовано" + +msgid "Install successfully." +msgstr "Успішне встановлення." + +msgid "Installing" +msgstr "Встановлення" + +msgid "Install failed" +msgstr "Встановлення не вдалося" + +msgid "Portions copyright" +msgstr "З використанням розробок" + +msgid "Copyright" +msgstr "Авторські права" + +msgid "License" +msgstr "Ліцензія" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca знаходиться під ліцензією " + +msgid "GNU Affero General Public License, version 3" +msgstr "Стандартна громадська ліцензія GNU Affero, версія 3" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca is Based on Orca Slicer" + +msgid "Libraries" +msgstr "Бібліотеки" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "" +"Це програмне забезпечення використовує компоненти з відкритим вихідним кодом," +"авторські права та інші\n" +"права власності належать їх відповідним власникам" + +#, c-format, boost-format +msgid "About %s" +msgstr "Про %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca базується на BambuStudio, PrusaSlicer та SuperSlicer." + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "BambuStudio спочатку базується на PrusaSlicer від PrusaResearch." + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer спочатку базується на Slic3r від Алессандро Ранеллуччі." + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "" +"Slic3r був створений Алессандро Ранеллуччі за допомогою багатьох інших\n" +"учасники." + +msgid "Version" +msgstr "Версія" + +msgid "AMS Materials Setting" +msgstr "Налаштування матеріалів AMS" + +msgid "Confirm" +msgstr "Підтвердити" + +msgid "Close" +msgstr "Закрити" + +msgid "Colour" +msgstr "Колір" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "" +"Температура\n" +"сопла" + +msgid "max" +msgstr "макс" + +msgid "min" +msgstr "мін" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "Вхідне значення має бути більше %1% і менше %2%" + +msgid "SN" +msgstr "SN" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "Зміна інформації про слоти AMS під час друку не підтримується" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "Фактори Калібрування динамічного потоку" + +msgid "PA Profile" +msgstr "Профіль PA" + +msgid "Factor K" +msgstr "Коэф. K" + +msgid "Factor N" +msgstr "Коэф. N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "" +"Налаштування інформації віртуального слота під час друку не підтримується" + +msgid "Are you sure you want to clear the filament information?" +msgstr "Ви впевнені, що хочете видалити інформацію про нитки?" + +msgid "You need to select the material type and color first." +msgstr "Спочатку потрібно вибрати тип матеріалу та колір." + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "Будь ласка введіть коректне значення (K в %.1f~%.1f)" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "Будь ласка введіть коректне значення (K в %.1f~%.1f, N в %.1f~%.1f)" + +msgid "Other Color" +msgstr "Інший колір" + +msgid "Custom Color" +msgstr "Користувальницький колір" + +msgid "Dynamic flow calibration" +msgstr "Калібрування динамічного потоку" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"Температура сопла та максимальна об'ємна швидкість вплинуть на результати " +"калібрування. Будь ласка, введіть такі ж значення, як при друку. Вони можуть " +"бути автозаповнені при виборі попередньо налаштованої нитки." + +msgid "Nozzle Diameter" +msgstr "Діаметр сопла" + +msgid "Bed Type" +msgstr "Тип столу" + +msgid "Nozzle temperature" +msgstr "Температура сопла" + +msgid "Bed Temperature" +msgstr "Температура столу" + +msgid "Max volumetric speed" +msgstr "Максимальна об'ємна швидкість" + +msgid "℃" +msgstr "℃" + +msgid "Bed temperature" +msgstr "Температура столу" + +msgid "mm³" +msgstr "мм³" + +msgid "Start calibration" +msgstr "Почати калібрування" + +msgid "Next" +msgstr "Наступний" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"Калібрування завершено. Тепер знайдіть на столі найбільш рівномірно " +"екструдовану лінію, як показано нижче, і введіть це значення в поле введення " +"коефіцієнта K." + +msgid "Save" +msgstr "Зберегти" + +msgid "Last Step" +msgstr "Останній крок" + +msgid "Example" +msgstr "Приклад" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "Калібрування... %d%%" + +msgid "Calibration completed" +msgstr "Калібрування завершено" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s не підтримує %s" + +msgid "Dynamic flow Calibration" +msgstr "Калібрування динамічного потоку" + +msgid "Step" +msgstr "Крок" + +msgid "AMS Slots" +msgstr "Слоти AMS" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "" +"Примітка. Можна вибрати лише слоти AMS, завантажені одним і тим же типом " +"матеріалу." + +msgid "Enable AMS" +msgstr "Увімкнути AMS" + +msgid "Print with filaments in the AMS" +msgstr "Друк філаментами в AMS" + +msgid "Disable AMS" +msgstr "Вимкнути AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "Друк із ниткою, встановленою на задній частині корпусу" + +msgid "Current Cabin humidity" +msgstr "Поточна вологість у кабіні" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"Будь ласка, змініть осушувач, коли він стає занадто вологим. Індикатор може " +"не відображати точно в наступних випадках: коли кришка відкрита або пакет з " +"осушувачем змінено. На поглинання вологи може знадобитися кілька годин, " +"низькі температури також сповільнюють процес." + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "" +"Налаштуйте, який слот AMS слід використовувати для нитки, яка " +"використовується в завдання на друк" + +msgid "Filament used in this print job" +msgstr "Філамент, який використовується в цьому завданні на друк" + +msgid "AMS slot used for this filament" +msgstr "Слот AMS, який використовується для цієї нитки" + +msgid "Click to select AMS slot manually" +msgstr "Натисніть, щоб вибрати слот AMS вручну" + +msgid "Do not Enable AMS" +msgstr "Не вмикати АМS" + +msgid "Print using materials mounted on the back of the case" +msgstr "" +"Друк із використанням матеріалів, закріплених на задній частині корпусу" + +msgid "Print with filaments in ams" +msgstr "Друк філаментами в ams" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "Друк із нитками, встановленими на задній частині корпусу" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "" +"Коли поточний матеріал закінчується, принтер буде продовжувати друк у " +"наступному порядку." + +msgid "Group" +msgstr "Група" + +msgid "The printer does not currently support auto refill." +msgstr "Принтер не підтримує функцію автозаправлення." + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "" +"Функція резервного копіювання філаменту в AMS вимкнена, будь ласка, " +"активуйте її у налаштуваннях Автоматичного заправлення." + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"Якщо в AMS є два ідентичні філаменти, резервне копіювання філаменту буде " +"увімкнено.\n" +"(Зараз підтримується автоматичне забезпечення споживних матеріалів " +"однакового бренду, типу матеріалу і кольору)" + +msgid "DRY" +msgstr "СУХИЙ" + +msgid "WET" +msgstr "ВОЛОГИЙ" + +msgid "AMS Settings" +msgstr "Налаштування AMS" + +msgid "Insertion update" +msgstr "Оновлювати дані при вставці матеріалу" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"AMS автоматично зчитає інформацію про філамент при вставці нового філаменту " +"Bambu Lab. Це займає близько 20 секунд." + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"Примітка: якщо під час друку вставляється нова пластикова нитка, AMS " +"автоматично зчитає інформацію про неї лише після завершення друку." + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"При вставці нової пластикової нитки, AMS не буде автоматично зчитуватиме " +"інформацію про неї, залишаючи поле порожнім, щоб користувач міг ввести дані " +"про неї вручну." + +msgid "Power on update" +msgstr "Оновити дані при увімкненні принтера" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"AMS автоматично зчитує інформацію про вставлений філамент. Це займе близько " +"1 хвилини. У процесі зчитування крутиться котушка." + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "" +"AMS не буде автоматично зчитувати інформацію про вставлений філамент\n" +"під час запуску і продовжуватиме використовувати інформацію, записану до\n" +"останнтого вимкнення." + +msgid "Update remaining capacity" +msgstr "Оновлювати ємність, що залишилася" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"AMS зчитує інформацію про витратний матеріал Bambu та розраховує його " +"залишкову ємність на котушці. Залишкова ємність автоматично оновлюється в " +"процесі друку." + +msgid "AMS filament backup" +msgstr "Резервування матеріалу AMS" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "" +"AMS перейде на іншу котушку з тими самими властивостями автоматично, коли " +"поточний філамент закінчиться" + +msgid "Air Printing Detection" +msgstr "Виявлення пустого друку" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" +"Виявляє засмічення та стирання нитки, негайно зупиняючи друк для економії " +"часу та матеріалу." + +msgid "File" +msgstr "Файл" + +msgid "Calibration" +msgstr "Калібрування" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "" +"Не вдалося завантажити плагін. Будь ласка, перевірте налаштування " +"брандмауера та vpn\n" +"Програмне забезпечення, перевірте та повторіть спробу." + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "" +"Не вдалося встановити плагін. Будь ласка, перевірте, чи він не заблокований " +"або видалений\n" +"за допомогою антивірусного програмного забезпечення." + +msgid "click here to see more info" +msgstr "натисніть тут, щоб побачити більше інформації" + +msgid "Please home all axes (click " +msgstr "Поверніть всі осі у вихідне положення (натисніть " + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr "" +") для визначення положення друкованої голови. Це передбачає переміщення за " +"межі області друку та розмір обладнання." + +msgid "Go Home" +msgstr "На головну" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "" +"Відбулася помилка. Можливо не вистачає системноъ пам'яті або це баг самої " +"програми" + +msgid "Please save project and restart the program. " +msgstr "Збережіть проект і перезапустіть програму. " + +msgid "Processing G-Code from Previous file..." +msgstr "Обробка G-коду з попереднього файлу..." + +msgid "Slicing complete" +msgstr "Нарізка завершена" + +msgid "Access violation" +msgstr "Порушення прав доступу" + +msgid "Illegal instruction" +msgstr "Недопустима інструкція" + +msgid "Divide by zero" +msgstr "Ділити на нуль заборонено" + +msgid "Overflow" +msgstr "Перелив" + +msgid "Underflow" +msgstr "Недолив" + +msgid "Floating reserved operand" +msgstr "Плаваючий зарезервований операнд" + +msgid "Stack overflow" +msgstr "Переповнення стека" + +msgid "Running post-processing scripts" +msgstr "Запуск скриптів постобробки" + +msgid "Successfully executed post-processing script" +msgstr "Скрипт післяобробки успішно виконаний" + +msgid "Unknown error occured during exporting G-code." +msgstr "Під час експорту G-коду сталася невідома помилка." + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"Не вдалося скопіювати тимчасовий G-код у місцезнаходження вихідного файлу G-" +"коду. Чи може ваша SD карта захищена від запису?\n" +"Повідомлення про помилку: %1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"Не вдалося скопіювати тимчасовий G-код у вихідний G-код. Можливо, проблема з " +"цільовим пристроєм, спробуйте експортувати ще раз або використати інший " +"пристрій. Пошкоджений вихідний G-код - %1% .tmp." + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"Не вдалося перейменувати G-код після копіювання у вибрану папку призначення. " +"Поточний шлях - %1%.tmp. Спробуйте експортувати ще раз." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"Копіювання тимчасового G-коду закінчено, але оригінальний код на рівні %1% " +"не вдалося відкрити під час перевірки копії. Вихідний G-код - %2% .tmp." + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"Копіювання тимчасового G-коду завершено, але експортований код не вдалося " +"відкрити під час перевірки копії. Вихідний G-код - %1% .tmp." + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "Файл G-коду експортується до %1%" + +msgid "Unknown error when export G-code." +msgstr "Невідома помилка під час експорту G-коду." + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"Не вдалося зберегти файл gcode.\n" +"Повідомлення про помилку: %1%.\n" +"Початковий файл %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "Не вдалося скопіювати тимчасовий G-код у вихідний G-код" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "" +"Планування завантаження в `%1%`. Див. вікно -> Черга завантаження на хост " +"друку" + +msgid "Device" +msgstr "Принтер" + +msgid "Task Sending" +msgstr "Відправка завдання" + +msgid "Task Sent" +msgstr "Завдання надіслане" + +msgid "Edit multiple printers" +msgstr "Редагувати кілька принтерів" + +msgid "Select connected printers (0/6)" +msgstr "Вибрати підключені принтери (0/6)" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "Вибрати підключені принтери (%d/6)" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "Максимальна кількість принтерів, які можна вибрати, становить %d" + +msgid "Offline" +msgstr "Не в мережі" + +msgid "No task" +msgstr "Немає завдань" + +msgid "View" +msgstr "Вигляд" + +msgid "N/A" +msgstr "Н/Д" + +msgid "Edit Printers" +msgstr "Редагування принтерів" + +msgid "Device Name" +msgstr "Назва пристрою" + +msgid "Task Name" +msgstr "Назва завдання" + +msgid "Device Status" +msgstr "Статус пристрою" + +msgid "Actions" +msgstr "Дії" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" +"Будь ласка, виберіть тут пристрої, якими ви хочете керувати (до 6 пристроїв)" + +msgid "Add" +msgstr "Додати" + +msgid "Idle" +msgstr "Холостий хід" + +msgid "Printing" +msgstr "Друк" + +msgid "Upgrading" +msgstr "Оновлення" + +msgid "Incompatible" +msgstr "Несумісний" + +msgid "syncing" +msgstr "синхронізація" + +msgid "Printing Finish" +msgstr "Друк завершено" + +msgid "Printing Failed" +msgstr "Помилка друку" + +msgid "Printing Pause" +msgstr "Друк на паузі" + +msgid "Prepare" +msgstr "Підготувати" + +msgid "Slicing" +msgstr "Нарізка" + +msgid "Pending" +msgstr "Очікує" + +msgid "Sending" +msgstr "Відправка" + +msgid "Sending Finish" +msgstr "Відправлення завершено" + +msgid "Sending Cancel" +msgstr "Скасовано відправку" + +msgid "Sending Failed" +msgstr "Відправлення не вдалося" + +msgid "Print Success" +msgstr "Успішний друк" + +msgid "Print Failed" +msgstr "Не вдалося надрукувати" + +msgid "Removed" +msgstr "Видалено" + +msgid "Resume" +msgstr "Продовжити" + +msgid "Stop" +msgstr "Стоп" + +msgid "Task Status" +msgstr "Статус завдання" + +msgid "Sent Time" +msgstr "Час відправлення" + +msgid "There are no tasks to be sent!" +msgstr "Немає завдань для відправлення!" + +msgid "No historical tasks!" +msgstr "Істориї завдань немає!" + +msgid "Loading..." +msgstr "Завантаження..." + +msgid "No AMS" +msgstr "Немає AMS" + +msgid "Send to Multi-device" +msgstr "Відправити на багато пристроїв" + +msgid "Preparing print job" +msgstr "Підготовка завдання для друку" + +msgid "Abnormal print file data. Please slice again" +msgstr "Неправильні дані файлу друку. Будь ласка, наріжте знову" + +msgid "There is no device available to send printing." +msgstr "Немає пристрою для надсилання друку." + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" +"Кількість принтерів, що використовуються одночасно, не може дорівнювати 0." + +msgid "Use External Spool" +msgstr "Використовуйте зовнішню катушку" + +msgid "Use AMS" +msgstr "Використовуйте AMS" + +msgid "Select Printers" +msgstr "Вибрати принтери" + +msgid "Ams Status" +msgstr "Статус AMS" + +msgid "Printing Options" +msgstr "Параметри друку" + +msgid "Bed Leveling" +msgstr "Вирівнювання столу" + +msgid "Timelapse" +msgstr "Таймлапс" + +msgid "Flow Dynamic Calibration" +msgstr "Динамічне калібрування потоку" + +msgid "Send Options" +msgstr "Параметри відправки" + +msgid "Send to" +msgstr "Відправити на" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" +"друкувати одночасно (це залежить від того, скільки пристроїв можуть " +"нагріватися одночасно)." + +msgid "Wait" +msgstr "Чекайте" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" +"хвилин на кожну партію. (Це залежить від того, скільки часу потрібно на " +"нагрівання)." + +msgid "Send" +msgstr "Надіслати" + +msgid "Name is invalid;" +msgstr "Некоректне ім'я;" + +msgid "illegal characters:" +msgstr "неприпустимі символи:" + +msgid "illegal suffix:" +msgstr "неприпустимий суфікс:" + +msgid "The name is not allowed to be empty." +msgstr "Ім'я не може бути порожнім." + +msgid "The name is not allowed to start with space character." +msgstr "Ім'я не може починатися з пробілу." + +msgid "The name is not allowed to end with space character." +msgstr "Ім'я не може закінчуватися пробілом." + +msgid "The name length exceeds the limit." +msgstr "Довжина імені перевищує обмеження." + +msgid "Origin" +msgstr "Початок координат" + +msgid "Size in X and Y of the rectangular plate." +msgstr "Розмір по осях X та Y прямокутного столу." + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "Відстань координати G-коду 0,0 від переднього лівого кута." + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "" +"Діаметр поверхні друку. Передбачається, що початок координат (0,0) " +"знаходиться у центрі." + +msgid "Rectangular" +msgstr "Прямокутний" + +msgid "Circular" +msgstr "Округлий" + +msgid "Load shape from STL..." +msgstr "Завантажити форму з STL..." + +msgid "Settings" +msgstr "Налаштування" + +msgid "Texture" +msgstr "Текстура" + +msgid "Remove" +msgstr "Видалити" + +msgid "Not found:" +msgstr "Не знайдено:" + +msgid "Model" +msgstr "Модель" + +msgid "Choose an STL file to import bed shape from:" +msgstr "Виберіть файл STL для імпорту форми столу:" + +msgid "Invalid file format." +msgstr "Неприпустимий формат файлу." + +msgid "Error! Invalid model" +msgstr "Помилка! Неприпустима модель" + +msgid "The selected file contains no geometry." +msgstr "Вибраний файл не містить геометрії." + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "" +"Вибраний файл містить кілька областей, що не перетинаються. Такі файли не " +"підтримуються." + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "Виберіть файл для імпортування текстури столу (PNG/SVG)" + +msgid "Choose an STL file to import bed model from:" +msgstr "Виберіть файл STL для імпорту моделі столу:" + +msgid "Bed Shape" +msgstr "Форма столу" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" +"Мінімально рекомендована температура менше 190 градусів або максимально " +"рекомендована температура більше 300 градусів.\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" +"Мінімальна рекомендована температура не може бути вищою за максимальну " +"рекомендовану температуру.\n" + +msgid "Please check.\n" +msgstr "Будь ласка, перевірте.\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"Сопло може засмічуватися, якщо температура перевищує діапазон, що " +"рекомендується.\n" +"Будь ласка, переконайтеся, що ви задали потрібну температуру для друку.\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "" +"Рекомендована температура сопла для цього типу нитки становить [%d, %d] " +"градусів Цельсія" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"Надто маленька максимальна об'ємна швидкість.\n" +"Скинути до 0,5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"Поточна температура камери вища, ніж безпечна температура матеріалу, це може " +"призвести до розм’якшення матеріалу та його забивання. Максимально безпечна " +"температура для цього матеріалу становить %d" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"Надто маленька висота шару.\n" +"Скинути на 0,2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"Занадто маленька відстань між розглажуванням.\n" +"Скинути на 0,1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"Нульова висота першого шару неприпустима.\n" +"\n" +"Висота першого шару буде скинуто до 0,2." + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Цей параметр використовується лише для точного налаштування розміру моделі у " +"певних випадках.\n" +"Наприклад, коли є невелика похибка у розмірах моделі та її важко зібрати.\n" +"Для більшого налаштування розмірів використовуйте функцію масштабування " +"моделі.\n" +"\n" +"Це значення буде скинуто на 0." + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"Занадто велика компенсація слонячої ноги недоцільна.\n" +"Якщо є серйозний ефект слонячої ноги, перевірте інші параметри друку.\n" +"Наприклад, чи не надто висока температура столу.\n" +"\n" +"Значення буде скинуто на 0." + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" +"Альтернативна додаткова стінка не працює, якщо для параметра \"Товщина " +"вертикальної оболонки\" встановлено значення \"Всі\". " + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"Змінити ці параметри автоматично?\n" +"Так - Змінити в «Забезпечувати верт. товщину оболонки» на значення «Помірне» " +"і включити додаткову стінку, що чергується.\n" +"Ні - Відмовитися від використання додаткової стінки, що чергується" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"Чорнова вежа не працює, коли увімкнено функцію «Змінна висота шарів» або " +"«Незалежна висота шару підтримки»\n" +"Що хочете зберегти?\n" +"ТАК - Зберегти чорнову вежу\n" +"НІ - Зберегти змінну висоту шару та незалежну висоту шару підтримки" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"Чорнова вежа не працює, коли увімкнена функція «Змінна висота шарів».\n" +"Що хочете зберегти?\n" +"Так - Зберегти чорнову вежу\n" +"Ні - Зберегти змінну висоту шарів" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"Чорнова вежа не працює, якщо увімкнена функція «Незалежна висота шару " +"підтримки»\n" +"Що хочете зберегти?\n" +"ТАК - Зберегти чорнову вежу\n" +"НІ - Зберегти незалежну висоту шару підтримки" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "" +"Під час друку по черзі екструдер може зіткнутися зі спідницею.\n" +"Щоб уникнути цього, скиньте значення шарів спідниці до 1." + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"seam_slope_start_height має бути менше висоти шару.\n" +"Значення скинуто на 0." + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"Спіральний режим працює лише тоді, коли петлі на стіні дорівнюють 1, " +"підтримку вимкнено, верхні шари оболонки дорівнюють 0, щільність заповнення " +"дорівнює 0 і тип сповільненої зйомки традиційний." + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr " Но принтери з кінематикою I3 не будуть писати таймлапс." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"Змінити ці налаштування автоматично? \n" +"Так – змінити ці налаштування та автоматично включити режим спіральна ваза\n" +"Ні - цього разу відмовитися від використання режиму спіральна ваза" + +msgid "Auto bed leveling" +msgstr "Автоматичне вирівнювання столу" + +msgid "Heatbed preheating" +msgstr "Попереднє нагрівання" + +msgid "Sweeping XY mech mode" +msgstr "Перевірка XY-механіки" + +msgid "Changing filament" +msgstr "Зміна філаменту" + +msgid "M400 pause" +msgstr "M400 пауза" + +msgid "Paused due to filament runout" +msgstr "Пуаза через датчик філаменту" + +msgid "Heating hotend" +msgstr "Нагрів хотенду" + +msgid "Calibrating extrusion" +msgstr "Калібрування екструзії" + +msgid "Scanning bed surface" +msgstr "Сканування поверхні столу" + +msgid "Inspecting first layer" +msgstr "Перевірка першого шару" + +msgid "Identifying build plate type" +msgstr "Визначення типу робочої пластини" + +msgid "Calibrating Micro Lidar" +msgstr "Калібрування мікролідаром" + +msgid "Homing toolhead" +msgstr "Паркування голови" + +msgid "Cleaning nozzle tip" +msgstr "Очищення сопла" + +msgid "Checking extruder temperature" +msgstr "Перевірка температури сопла" + +msgid "Printing was paused by the user" +msgstr "Друк припинено користувачем" + +msgid "Pause of front cover falling" +msgstr "Пауза під час падіння передньої кришки з голови" + +msgid "Calibrating the micro lida" +msgstr "Калібрування мікролідаром" + +msgid "Calibrating extrusion flow" +msgstr "Калібровка потоку екструзії" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "Пауза при несправності температури сопла" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "Пауза при несправності температури столу" + +msgid "Filament unloading" +msgstr "Вигрузка філаменту" + +msgid "Skip step pause" +msgstr "Пропустити команду паузи" + +msgid "Filament loading" +msgstr "Завантаження філаменту" + +msgid "Motor noise calibration" +msgstr "Калібрування шуму мотора" + +msgid "Paused due to AMS lost" +msgstr "Пауза через втрату сигналу AMS" + +msgid "Paused due to low speed of the heat break fan" +msgstr "Пауза через низьку швидкість вентилятора голови" + +msgid "Paused due to chamber temperature control error" +msgstr "Пауза через помилку контролю температури камери" + +msgid "Cooling chamber" +msgstr "Охолодження камери" + +msgid "Paused by the Gcode inserted by user" +msgstr "Друк припинено G-кодом, вставленим користувачем" + +msgid "Motor noise showoff" +msgstr "Результат калібрування шуму двигуна" + +msgid "Nozzle filament covered detected pause" +msgstr "Пауза при виявленні протікання матеріалу" + +msgid "Cutter error pause" +msgstr "Пауза при помилці обрізки нитки" + +msgid "First layer error pause" +msgstr "Пауза через помилку першого шару" + +msgid "Nozzle clog pause" +msgstr "Пауза через засмічення сопла" + +msgid "Unknown" +msgstr "Невідомий" + +msgid "Fatal" +msgstr "Критична помилка" + +msgid "Serious" +msgstr "Серйозний" + +msgid "Common" +msgstr "Загальний" + +msgid "Update successful." +msgstr "Оновлення успішне." + +msgid "Downloading failed." +msgstr "Завантаження не вдалося." + +msgid "Verification failed." +msgstr "Перевірка не вдалася." + +msgid "Update failed." +msgstr "Не вдалося оновити." + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"Поточна температура камери або цільова температура камери перевищує 45℃. Щоб " +"уникнути забивання екструдера, не дозволяється завантажувати філаменти " +"низької температури (PLA/PETG/TPU)." + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"Філамент низької температури (PLA/PETG/TPU) завантажено в екструдер. Щоб " +"уникнути забивання екструдера, не дозволяється встановлювати температуру " +"камери вище 45℃." + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"Якщо ви встановите температуру камери нижче 40℃, контроль температури камери " +"не буде активований, і цільова температура камери автоматично буде " +"встановлена на 0℃." + +msgid "Failed to start printing job" +msgstr "Не вдалося запустити завдання друку" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "Калібрування не підтримує обраний діаметр сопла" + +msgid "Current flowrate cali param is invalid" +msgstr "Поточна величина калібрування швидкості потоку неприпустима" + +msgid "Selected diameter and machine diameter do not match" +msgstr "Обраний діаметр і діаметр профілю принтера не відповідають один одному" + +msgid "Failed to generate cali gcode" +msgstr "Не вдалося згенерувати калібрувальний G-код" + +msgid "Calibration error" +msgstr "Помилка калібрування" + +msgid "TPU is not supported by AMS." +msgstr "TPU не підтримується AMS." + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "Bambu PET-CF/PA6-CF не підтримується AMS." + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "" +"Вологий PVA стає гнучким і може застрягти всередині AMS, будь ласка, " +"обережно висушіть його перед використанням." + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "" +"Філаменти CF/GF є жорсткими і крихкими, їх легко можна зламати або вони " +"можуть застряти в AMS, будьте обережні під час використання." + +msgid "default" +msgstr "за замовчуванням" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "Редагування користувацького G-коду (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "Вбудовані заповнювачі (Двічі клацніть елемент, щоб додати до G-коду)" + +msgid "Search gcode placeholders" +msgstr "Пошук G-коду в заповнювачах" + +msgid "Add selected placeholder to G-code" +msgstr "Додати вибраний заповнювач до G-коду" + +msgid "Select placeholder" +msgstr "Вибрати заповнювач" + +msgid "[Global] Slicing State" +msgstr "[Глобальний] Стан нарізки" + +msgid "Read Only" +msgstr "Тільки для читання" + +msgid "Read Write" +msgstr "Читати Писати" + +msgid "Slicing State" +msgstr "Стан зрізу" + +msgid "Print Statistics" +msgstr "Статистика друку" + +msgid "Objects Info" +msgstr "Інформація про об'єкти" + +msgid "Dimensions" +msgstr "Розміри" + +msgid "Temperatures" +msgstr "Температури" + +msgid "Timestamps" +msgstr "Відмітки часу" + +#, boost-format +msgid "Specific for %1%" +msgstr "Специфічно для %1%" + +msgid "Presets" +msgstr "Пресети" + +msgid "Print settings" +msgstr "Параметри друку" + +msgid "Filament settings" +msgstr "Настінні філаменти" + +msgid "SLA Materials settings" +msgstr "Налаштування матеріалів SLA" + +msgid "Printer settings" +msgstr "Налаштування принтера" + +msgid "parameter name" +msgstr "ім'я параметра" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s не може бути відсотком" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "Значення %s поза допустимим діапазоном, продовжити?" + +msgid "Parameter validation" +msgstr "Перевірка параметрів" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "" +"Значення %s знаходиться за межами діапазону. Дійсний діапазон від %d до %d." + +msgid "Value is out of range." +msgstr "Значення поза допустимим діапазоном." + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"Це %s%% або %s %s?\n" +"ТАК для %s%%, \n" +"НІ для %s %s." + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "" +"Недійсний формат введення. Очікується вектор розмірів у наступному форматі: " +"\"%1%\"" + +msgid "Input value is out of range" +msgstr "Вхідне значення виходить за межі діапазону" + +msgid "Some extension in the input is invalid" +msgstr "Якесь з розширень вводу некоректне" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "Невірний формат. Очікуваний векторний формат: \"%1%\"" + +msgid "Layer Height" +msgstr "Висота шару" + +msgid "Line Width" +msgstr "Ширина лінії" + +msgid "Fan Speed" +msgstr "Швидкість вентилятора" + +msgid "Temperature" +msgstr "Температура" + +msgid "Flow" +msgstr "Потік" + +msgid "Tool" +msgstr "Інструмент" + +msgid "Layer Time" +msgstr "Час шару" + +msgid "Layer Time (log)" +msgstr "Час шару (журнал)" + +msgid "Height: " +msgstr "Висота: " + +msgid "Width: " +msgstr "Ширіна: " + +msgid "Speed: " +msgstr "Швидкість: " + +msgid "Flow: " +msgstr "Потік: " + +msgid "Layer Time: " +msgstr "Час шару: " + +msgid "Fan: " +msgstr "Швидкість вентилятора: " + +msgid "Temperature: " +msgstr "Температура: " + +msgid "Loading G-codes" +msgstr "Завантаження G-кодів" + +msgid "Generating geometry vertex data" +msgstr "Генерація даних вершин геометрії" + +msgid "Generating geometry index data" +msgstr "Генерація даних індексу геометрії" + +msgid "Statistics of All Plates" +msgstr "Статистика" + +msgid "Display" +msgstr "Відображати" + +msgid "Flushed" +msgstr "Очищення" + +msgid "Tower" +msgstr "Вежа" + +msgid "Total" +msgstr "Загальний" + +msgid "Total Estimation" +msgstr "Загальна оцінка" + +msgid "Total time" +msgstr "Загальний час" + +msgid "Total cost" +msgstr "Загальна вартість" + +msgid "up to" +msgstr "аж до" + +msgid "above" +msgstr "вище" + +msgid "from" +msgstr "від" + +msgid "Color Scheme" +msgstr "Колірна схема" + +msgid "Time" +msgstr "Час" + +msgid "Percent" +msgstr "Відсоток" + +msgid "Used filament" +msgstr "Філамент, що використовується" + +msgid "Layer Height (mm)" +msgstr "Висота шару (мм)" + +msgid "Line Width (mm)" +msgstr "Ширина лінії (мм)" + +msgid "Speed (mm/s)" +msgstr "Швидкість (мм/с)" + +msgid "Fan Speed (%)" +msgstr "Швидкість вентилятора (%)" + +msgid "Temperature (°C)" +msgstr "Температура (°С)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "Об'ємна витрата (мм³/с)" + +msgid "Travel" +msgstr "Переміщення" + +msgid "Seams" +msgstr "Шви" + +msgid "Retract" +msgstr "Втягування" + +msgid "Unretract" +msgstr "Подача" + +msgid "Filament Changes" +msgstr "Зміна філаменту" + +msgid "Wipe" +msgstr "Протирання" + +msgid "Options" +msgstr "Параметри" + +msgid "travel" +msgstr "переміщення" + +msgid "Extruder" +msgstr "Екструдер" + +msgid "Filament change times" +msgstr "Час зміни філаменту" + +msgid "Cost" +msgstr "Витрата" + +msgid "Color change" +msgstr "Зміна кольору" + +msgid "Print" +msgstr "Друк" + +msgid "Printer" +msgstr "Принтер" + +msgid "Custom g-code" +msgstr "Користувацький g-код" + +msgid "ToolChange" +msgstr "Зміна інструменту" + +msgid "Time Estimation" +msgstr "Оцінка часу" + +msgid "Normal mode" +msgstr "Нормальний режим" + +msgid "Total Filament" +msgstr "Загальний філамент" + +msgid "Model Filament" +msgstr "Філамент моделі" + +msgid "Prepare time" +msgstr "Час підготовки" + +msgid "Model printing time" +msgstr "Час друку моделі" + +msgid "Switch to silent mode" +msgstr "Переключитися в тихий режим" + +msgid "Switch to normal mode" +msgstr "Переключитися у звичайний режим" + +msgid "Variable layer height" +msgstr "Змінна висота шару" + +msgid "Adaptive" +msgstr "Адаптивний" + +msgid "Quality / Speed" +msgstr "Якість/Швидкість" + +msgid "Smooth" +msgstr "Гладкий" + +msgid "Radius" +msgstr "Радіус" + +msgid "Keep min" +msgstr "Мімальне утримання" + +msgid "Left mouse button:" +msgstr "Ліва кнопка миші:" + +msgid "Add detail" +msgstr "Додати деталі" + +msgid "Right mouse button:" +msgstr "Права кнопка миші:" + +msgid "Remove detail" +msgstr "Видалити деталі" + +msgid "Shift + Left mouse button:" +msgstr "SHIFT + Ліва кнопка миші:" + +msgid "Reset to base" +msgstr "Скинути на базу" + +msgid "Shift + Right mouse button:" +msgstr "Shift + права кнопка миші:" + +msgid "Smoothing" +msgstr "Згладжування" + +msgid "Mouse wheel:" +msgstr "Кольця миші:" + +msgid "Increase/decrease edit area" +msgstr "Збільшення/зменшення області редагування" + +msgid "Sequence" +msgstr "Послідовність" + +msgid "Mirror Object" +msgstr "Дзеркальний об'єкт" + +msgid "Tool Move" +msgstr "Інструмент Переміщення" + +msgid "Tool Rotate" +msgstr "Інструмент обертання" + +msgid "Move Object" +msgstr "Перемістити об'єкт" + +msgid "Auto Orientation options" +msgstr "Параметри Автоорієнтації" + +msgid "Enable rotation" +msgstr "Увімкнути обертання" + +msgid "Optimize support interface area" +msgstr "Оптимізація області підтримки" + +msgid "Orient" +msgstr "Орієнтація" + +msgid "Arrange options" +msgstr "Упорядкувати варіанти" + +msgid "Spacing" +msgstr "Відстань" + +msgid "0 means auto spacing." +msgstr "0 означає автоматичний інтервал." + +msgid "Auto rotate for arrangement" +msgstr "Автоповорот для розташування" + +msgid "Allow multiple materials on same plate" +msgstr "Дозволити використання декількох матеріалів на одній пластині" + +msgid "Avoid extrusion calibration region" +msgstr "Уникайте області калібрування екструзії" + +msgid "Align to Y axis" +msgstr "Вирівняти за осі Y" + +msgid "Add plate" +msgstr "Додати плату" + +msgid "Auto orient" +msgstr "Автоорієнтація" + +msgid "Arrange all objects" +msgstr "Упорядкувати всі об'єкти" + +msgid "Arrange objects on selected plates" +msgstr "Розставити об'єкти на столі" + +msgid "Split to objects" +msgstr "Розділити на об'єкти" + +msgid "Split to parts" +msgstr "Розділити на частини" + +msgid "Assembly View" +msgstr "Вигляд складання" + +msgid "Select Plate" +msgstr "Вибір столу" + +msgid "Assembly Return" +msgstr "Повернення збірки" + +msgid "return" +msgstr "повернення" + +msgid "Paint Toolbar" +msgstr "Панель інструментів малювання" + +msgid "Explosion Ratio" +msgstr "Коефіцієнт вибуху" + +msgid "Section View" +msgstr "Розріз" + +msgid "Assemble Control" +msgstr "Складання керування" + +msgid "Total Volume:" +msgstr "Загальний обсяг:" + +msgid "Assembly Info" +msgstr "Інформація про збирання" + +msgid "Volume:" +msgstr "Об'єм:" + +msgid "Size:" +msgstr "Розмір:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"Виявлено конфлікти шляхів gcode на рівні %d, z = %.2lf мм. Будь ласка \n" +"розділити конфліктуючі об'єкти далі (%s <-> %s)." + +msgid "An object is layed over the boundary of plate." +msgstr "Об'єкт накладений на межу столу." + +msgid "A G-code path goes beyond the max print height." +msgstr "Шлях G-коду виходить за максимально допустиму висоту друку." + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "Шлях G-коду виходить за межі зони друку." + +msgid "Only the object being edit is visible." +msgstr "Відображається лише редагований об'єкт." + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"Об'єкт знаходиться за кордоном пластини або перевищує обмеження по висоті.\n" +"Будь ласка, вирішіть проблему, перемістивши її повністю на тарілку або з неї," +"і підтвердження того, що висота знаходиться в межах обсягу збирання." + +msgid "Calibration step selection" +msgstr "Вибір кроку калібрування" + +msgid "Micro lidar calibration" +msgstr "Калібрування мікролідара" + +msgid "Bed leveling" +msgstr "Вирівнювання столу" + +msgid "Vibration compensation" +msgstr "Компенсація вібрації" + +msgid "Motor noise cancellation" +msgstr "Скасування шуму мотора" + +msgid "Calibration program" +msgstr "Програма калібрування" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"Програма калібрування автоматично визначає стан вашого пристрою,щоб\n" +"звести до мінімуму відхилення.\n" +"Це забезпечує оптимальну роботу пристрою." + +msgid "Calibration Flow" +msgstr "Калібрувальний потік" + +msgid "Start Calibration" +msgstr "Почати калібрування" + +msgid "Completed" +msgstr "Завершений" + +msgid "Calibrating" +msgstr "Калібрування" + +msgid "No step selected" +msgstr "Не вибрано крок" + +msgid "Auto-record Monitoring" +msgstr "Автозапис Моніторингу" + +msgid "Go Live" +msgstr "У прямому ефірі" + +msgid "Liveview Retry" +msgstr "Повторити перегляд у реальному часі" + +msgid "Resolution" +msgstr "Дозвіл нарізки" + +msgid "Enable" +msgstr "Увімкнення" + +msgid "Hostname or IP" +msgstr "Ім'я хоста або IP-адреса" + +msgid "Custom camera source" +msgstr "Спеціальне джерело камери" + +msgid "Show \"Live Video\" guide page." +msgstr "Показати \\Пряме відео\\ сторінку посібника." + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +msgid "ConnectPrinter(LAN)" +msgstr "Підключити принтер (локальна мережа)" + +msgid "Please input the printer access code:" +msgstr "Введіть код доступу до принтера:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"Ви можете знайти його в \\Установки > Мережа > Код підключення\"\n" +"на принтері, як показано на малюнку:" + +msgid "Invalid input." +msgstr "Помилка введення." + +msgid "New Window" +msgstr "Нове вікно" + +msgid "Open a new window" +msgstr "Відкрити нове вікно" + +msgid "Application is closing" +msgstr "Додаток закривається" + +msgid "Closing Application while some presets are modified." +msgstr "Закриття програми під чвс зміни деяких налаштувань." + +msgid "Logging" +msgstr "Ведення журналу" + +msgid "Preview" +msgstr "Попередній перегляд" + +msgid "Multi-device" +msgstr "Багато пристроїв" + +msgid "Project" +msgstr "Проєкт" + +msgid "Yes" +msgstr "Так" + +msgid "No" +msgstr "Ні" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "буде закрито перед створенням нової моделі. Ви хочете продовжити?" + +msgid "Slice plate" +msgstr "Нарізати моделі" + +msgid "Print plate" +msgstr "Друкована пластина" + +msgid "Slice all" +msgstr "Нарізати все" + +msgid "Export G-code file" +msgstr "Експорт файлу G-коду" + +msgid "Export plate sliced file" +msgstr "Експорт файлу зрізів планшета" + +msgid "Export all sliced file" +msgstr "Експортувати весь нарізаний файл" + +msgid "Print all" +msgstr "Роздрукувати все" + +msgid "Send all" +msgstr "Надіслати все" + +msgid "Keyboard Shortcuts" +msgstr "Гарячі клавіші" + +msgid "Show the list of the keyboard shortcuts" +msgstr "Показати список гарячих клавіш" + +msgid "Setup Wizard" +msgstr "Майстер налаштувань" + +msgid "Show Configuration Folder" +msgstr "Показати папку конфігурації" + +msgid "Show Tip of the Day" +msgstr "Показати Раду дня" + +msgid "Check for Update" +msgstr "Перевірити оновлення" + +msgid "Open Network Test" +msgstr "Відкритий мережевий тест" + +#, c-format, boost-format +msgid "&About %s" +msgstr "&Про %s" + +msgid "Upload Models" +msgstr "Завантажити моделі" + +msgid "Download Models" +msgstr "Завантажити моделі" + +msgid "Default View" +msgstr "За замовчуванням" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "Верх" + +msgid "Top View" +msgstr "Вигляд зверху" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "Ніз" + +msgid "Bottom View" +msgstr "Вигляд знизу" + +msgid "Front" +msgstr "Перед" + +msgid "Front View" +msgstr "Вид спереду" + +msgid "Rear" +msgstr "Зад" + +msgid "Rear View" +msgstr "Вигляд ззаду" + +msgid "Left" +msgstr "Ліво" + +msgid "Left View" +msgstr "Вигляд зліва" + +msgid "Right" +msgstr "Право" + +msgid "Right View" +msgstr "Вигляд справа" + +msgid "Start a new window" +msgstr "Почати нове вікно" + +msgid "New Project" +msgstr "Новий проект" + +msgid "Start a new project" +msgstr "Почати новий проект" + +msgid "Open a project file" +msgstr "Відкрийте файл проекту" + +msgid "Recent projects" +msgstr "Недавні проекти" + +msgid "Save Project" +msgstr "Зберегти проект" + +msgid "Save current project to file" +msgstr "Зберегти поточний проект у файл" + +msgid "Save Project as" +msgstr "Зберегти проект як" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "Зберегти поточний проект як" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "Імпорт 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "Завантажте модель" + +msgid "Import Zip Archive" +msgstr "Імпорт Zip-архіву" + +msgid "Load models contained within a zip archive" +msgstr "Завантажити моделі, що містяться в zip-архіві" + +msgid "Import Configs" +msgstr "Імпорт конфігурацій" + +msgid "Load configs" +msgstr "Завантажити конфігурацію" + +msgid "Import" +msgstr "Імпорт" + +msgid "Export all objects as one STL" +msgstr "Експортувати всі об’єкти як один файл STL" + +msgid "Export all objects as STLs" +msgstr "Експортувати всі об’єкти як файли STL" + +msgid "Export Generic 3MF" +msgstr "Експорт спільного 3MF" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "Експорт файлу 3mf без використання будь-яких 3mf-розширень" + +msgid "Export current sliced file" +msgstr "Експорт поточного нарізаного файлу" + +msgid "Export all plate sliced file" +msgstr "Експортувати весь файл нарізки" + +msgid "Export G-code" +msgstr "Експорт G-коду" + +msgid "Export current plate as G-code" +msgstr "Експортувати поточну пластину як G-код" + +msgid "Export Preset Bundle" +msgstr "Експорт пакета пресетів" + +msgid "Export current configuration to files" +msgstr "Експорт поточної конфігурації до файлів" + +msgid "Export" +msgstr "Експорт" + +msgid "Quit" +msgstr "Вихід" + +msgid "Undo" +msgstr "Скасувати" + +msgid "Redo" +msgstr "Повторити" + +msgid "Cut selection to clipboard" +msgstr "Вирізати виділення в буфер обміну" + +msgid "Copy" +msgstr "Копіювати" + +msgid "Copy selection to clipboard" +msgstr "Копіювати виділення в буфер обміну" + +msgid "Paste" +msgstr "Вставити" + +msgid "Paste clipboard" +msgstr "Вставити буфер обміну" + +msgid "Delete selected" +msgstr "Видалити вибране" + +msgid "Deletes the current selection" +msgstr "Видаляє поточний вибір" + +msgid "Delete all" +msgstr "Видаляє все" + +msgid "Deletes all objects" +msgstr "Видаляє всі об'єкти" + +msgid "Clone selected" +msgstr "Клонувати вибране" + +msgid "Clone copies of selections" +msgstr "Клонувати копії вибраних об'єктів" + +msgid "Select all" +msgstr "Вибрати все" + +msgid "Selects all objects" +msgstr "Вибрати всі об'єкти" + +msgid "Deselect all" +msgstr "Прибрати виділення з усього" + +msgid "Deselects all objects" +msgstr "Скасує вибір усіх об'єктів" + +msgid "Use Perspective View" +msgstr "Використовуйте вигляд у перспективі" + +msgid "Use Orthogonal View" +msgstr "Використовувати ортогональний вигляд" + +msgid "Show &G-code Window" +msgstr "Показати вікно G-коду" + +msgid "Show g-code window in Previce scene" +msgstr "Показати вікно g-коду у сцені попереднього перегляду" + +msgid "Show 3D Navigator" +msgstr "Показати 3D-навігатор" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "Показати 3D-навігатор у сцені підготовки та попереднього перегляду" + +msgid "Reset Window Layout" +msgstr "Скинути розташування вікон" + +msgid "Reset to default window layout" +msgstr "Скидання до стандартного вигляду вікна" + +msgid "Show &Labels" +msgstr "Показати &Ярлики" + +msgid "Show object labels in 3D scene" +msgstr "Показати мітки об'єктів у 3D-сцені" + +msgid "Show &Overhang" +msgstr "Показати &Виступ" + +msgid "Show object overhang highlight in 3D scene" +msgstr "Показати підсвічування виступу об'єкта у 3D сцені" + +msgid "Preferences" +msgstr "Налаштування" + +msgid "Help" +msgstr "Допомога" + +msgid "Temperature Calibration" +msgstr "Калібрування температури" + +msgid "Pass 1" +msgstr "Прохід 1" + +msgid "Flow rate test - Pass 1" +msgstr "Тест витрати - Пройдено 1" + +msgid "Pass 2" +msgstr "Прохід 2" + +msgid "Flow rate test - Pass 2" +msgstr "Тест витрати - Пройдено 2" + +msgid "Flow rate" +msgstr "Швидкість потоку" + +msgid "Pressure advance" +msgstr "Випередження тиску PA" + +msgid "Retraction test" +msgstr "Тест на втягування" + +msgid "Orca Tolerance Test" +msgstr "Тест на допуски ORCA" + +msgid "Max flowrate" +msgstr "Максимальний потік" + +msgid "VFA" +msgstr "VFA" + +msgid "More..." +msgstr "Більше..." + +msgid "Tutorial" +msgstr "Посібник" + +msgid "Calibration help" +msgstr "Довідка з калібрування" + +msgid "More calibrations" +msgstr "Більше калібрування" + +msgid "&Open G-code" +msgstr "&Відкрити G-код" + +msgid "Open a G-code file" +msgstr "Відкрийте файл G-коду" + +msgid "Re&load from Disk" +msgstr "Перезавантажити з диска" + +msgid "Reload the plater from disk" +msgstr "Перезавантажити планшет із диска" + +msgid "Export &Toolpaths as OBJ" +msgstr "Експорт траєкторій як OBJ" + +msgid "Export toolpaths as OBJ" +msgstr "Експортувати траєкторії як OBJ" + +msgid "Open &Slicer" +msgstr "Відкрити &студію" + +msgid "Open Slicer" +msgstr "Відкрита студія" + +msgid "&Quit" +msgstr "&Вихід" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "Вийти %s" + +msgid "&File" +msgstr "&Файл" + +msgid "&View" +msgstr "&Вигляд" + +msgid "&Help" +msgstr "&Допомога" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "Існує файл із таким же ім'ям: %s, ви хочете перевизначити його." + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "Існує конфігурація з таким же ім'ям: %s, ви хочете перевизначити її." + +msgid "Overwrite file" +msgstr "Перезаписати файл" + +msgid "Yes to All" +msgstr "Так для всіх" + +msgid "No to All" +msgstr "Ні для всіх" + +msgid "Choose a directory" +msgstr "Виберіть каталог" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "" +"Експортовано конфігураційні елементи: %d. (Тільки несистемні конфігураційні " +"елементи)" +msgstr[1] "" +"Експортовано конфігураційні елементи: %d. (Тільки несистемні конфігураційні " +"елементи)" +msgstr[2] "" +"Експортовано конфігураційні елементи: %d. (Тільки несистемні конфігураційні " +"елементи)" + +msgid "Export result" +msgstr "Експорт результату" + +msgid "Select profile to load:" +msgstr "Виберіть профіль для завантаження:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "" +"Імпортовано конфігураційних елементів: %d. (Тільки несистемні та сумісні " +"конфігураційні елементи)" +msgstr[1] "" +"Імпортовано конфігураційних елементів: %d. (Тільки несистемні та сумісні " +"конфігураційні елементи)" +msgstr[2] "" +"Імпортовано конфігураційних елементів: %d. (Тільки несистемні та сумісні " +"конфігураційні елементи)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"Підказка: Перед імпортом конфігурацій переконайтеся, що ви додали " +"відповідний принтер." + +msgid "Import result" +msgstr "Імпортувати результат" + +msgid "File is missing" +msgstr "Файл відсутній" + +msgid "The project is no longer available." +msgstr "Проект недоступний." + +msgid "Filament Settings" +msgstr "Налаштування філаменту" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"Ви хочете синхронізувати свої особисті дані з Bambu Cloud? \n" +"Він містить таку інформацію:\n" +"1. Передустановки процесу\n" +"2. Передустановки філаменту\n" +"3. Передустановки принтера" + +msgid "Synchronization" +msgstr "Синхронізація" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" +"Пристрій не може обробляти більше розмов. Будь ласка, спробуйте пізніше." + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "Програвач несправний. Будь ласка, перевстановіть систему програвача." + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" +"Програвач не завантажений, будь ласка, натисніть кнопку “Відтворити”, щоб " +"спробувати ще раз." + +msgid "Please confirm if the printer is connected." +msgstr "Будь ласка, підтвердіть, чи принтер підключений." + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" +"Принтер зараз зайнятий завантаженням. Будь ласка, спробуйте ще раз після " +"завершення завантаження." + +msgid "Printer camera is malfunctioning." +msgstr "Камера принтера несправна." + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" +"Виникла проблема. Будь ласка, оновіть прошивку принтера і спробуйте знову." + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" +"Режим прямого підключення до мережі вимкнений. Будь ласка, увімкніть режим " +"прямого перегляду на екрані принтера." + +msgid "Please enter the IP of printer to connect." +msgstr "Будь ласка, введіть IP-адресу принтера для підключення." + +msgid "Initializing..." +msgstr "Ініціалізація..." + +msgid "Connection Failed. Please check the network and try again" +msgstr "" +"Підключення не вдалося. Будь ласка, перевірте мережу та спробуйте ще раз" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" +"Будь ласка, перевірте мережу та спробуйте ще раз. Якщо проблема " +"продовжується, ви можете перезавантажити або оновити принтер." + +msgid "The printer has been logged out and cannot connect." +msgstr "Принтер був вийшов із системи та не може підключитися." + +msgid "Stopped." +msgstr "Зупинено." + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "" +"Помилка підключення до локальної мережі (не вдалося запустити перегляд у " +"реальному часі)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "" +"Для цього завдання потрібні інструменти віртуальної камери!\n" +"\n" +"Ви хочете встановити їх?" + +msgid "Downloading Virtual Camera Tools" +msgstr "Завантаження інструментів віртуальної камери" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"Працює інша віртуальна камера.\n" +"Snapmaker Orca підтримує лише одну віртуальну камеру.\n" +"Ви хочете зупинити цю віртуальну камеру?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "Помилка ініціалізації віртуальної камери (%s)!" + +msgid "Network unreachable" +msgstr "Мережа недоступна" + +msgid "Information" +msgstr "Інформація" + +msgid "Playing..." +msgstr "Гра..." + +msgid "Year" +msgstr "Рік" + +msgid "Month" +msgstr "Місяць" + +msgid "All Files" +msgstr "Всі файли" + +msgid "Group files by year, recent first." +msgstr "Згрупуйте файли за роками, спочатку нещодавні." + +msgid "Group files by month, recent first." +msgstr "Згрупуйте файли по місяцях, спочатку нещодавні." + +msgid "Show all files, recent first." +msgstr "Показати всі файли спочатку останні." + +msgid "Switch to timelapse files." +msgstr "Перехід до файлів уповільненої зйомки." + +msgid "Video" +msgstr "Відео" + +msgid "Switch to video files." +msgstr "Перехід до відеофайлів." + +msgid "Switch to 3mf model files." +msgstr "Переключитися на файли моделей 3mf." + +msgid "Delete selected files from printer." +msgstr "Видалити вибрані файли з принтера." + +msgid "Download" +msgstr "Завантажити" + +msgid "Download selected files from printer." +msgstr "Завантажте вибрані файли з принтера." + +msgid "Select" +msgstr "Вибір" + +msgid "Batch manage files." +msgstr "Пакетне керування файлами." + +msgid "Refresh" +msgstr "Оновити" + +msgid "Reload file list from printer." +msgstr "Перезавантажте список файлів з принтера." + +msgid "No printers." +msgstr "Ніяких принтерів." + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "Помилка підключення [%d]!" + +msgid "Loading file list..." +msgstr "Завантаження списку файлів..." + +msgid "No files" +msgstr "No files" + +msgid "Load failed" +msgstr "Не вдалося завантажити" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "Ініціалізація не вдалася (З'єднання пристрою не готове)!" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" +"Перегляд файлів на SD-картці не підтримується в поточній версії прошивки. " +"Будь ласка, оновіть прошивку принтера." + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "Помилка ініціалізації (Сховище недоступне, вставте SD-карту)!" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "Помилка підключення LAN (Не вдалося переглянути sd-карту)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "Перегляд файлів на SD-картці не підтримується в режимі лише LAN." + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "Помилка ініціалізації (%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "" +"Ви збираєтеся видалити %u файл із принтера. Ви впевнені, що хочете це " +"зробити?" +msgstr[1] "" +"Ви збираєтеся видалити %u файл із принтера. Ви впевнені, що хочете це " +"зробити?" +msgstr[2] "" +"Ви збираєтеся видалити %u файлів із принтера. Ви впевнені, що хочете це " +"зробити?" + +msgid "Delete files" +msgstr "Видалити файли" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "Ви хочете видалити файл '%s' з принтера?" + +msgid "Delete file" +msgstr "Видалити файл" + +msgid "Fetching model infomations ..." +msgstr "Отримання інформації про модель ..." + +msgid "Failed to fetch model information from printer." +msgstr "Не вдалося отримати інформацію про модель з принтера." + +msgid "Failed to parse model information." +msgstr "Не вдалося розібрати інформацію про модель." + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +"Файл .gcode.3mf не містить даних G-коду. Будь ласка, розріжте його за " +"допомогою Snapmaker Orca і експортуйте новий файл .gcode.3mf." + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "Файл '%s' втрачений! Завантажте його знову." + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" +"Файл: %s\n" +"Заголовок: %s\n" + +msgid "Download waiting..." +msgstr "Чекання завантаження..." + +msgid "Play" +msgstr "Відтворити" + +msgid "Open Folder" +msgstr "Відкрити папку" + +msgid "Download finished" +msgstr "Завантаження завершено" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "Завантаження %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" +"Перепідключення принтера. Операцію не можна завершити негайно, спробуйте ще " +"раз пізніше." + +msgid "File does not exist." +msgstr "Файл не існує." + +msgid "File checksum error. Please retry." +msgstr "Помилка контрольної суми файлу. Будь ласка, спробуйте ще раз." + +msgid "Not supported on the current printer version." +msgstr "Не підтримується на поточній версії принтера." + +msgid "Storage unavailable, insert SD card." +msgstr "Зберігання недоступне, вставте SD-карту." + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "Код помилки: %d" + +msgid "Speed:" +msgstr "Швидкість:" + +msgid "Deadzone:" +msgstr "Мертва зона:" + +msgid "Options:" +msgstr "Параметри:" + +msgid "Zoom" +msgstr "Збільшити" + +msgid "Translation/Zoom" +msgstr "Переклад/Збільшення" + +msgid "3Dconnexion settings" +msgstr "Налаштування 3D-з'єднання" + +msgid "Swap Y/Z axes" +msgstr "Змінити місцями осі Y/Z" + +msgid "Invert X axis" +msgstr "Інвертувати вісь X" + +msgid "Invert Y axis" +msgstr "Інвертувати вісь Y" + +msgid "Invert Z axis" +msgstr "Інвертувати вісь Z" + +msgid "Invert Yaw axis" +msgstr "Інвертувати вісь повороту" + +msgid "Invert Pitch axis" +msgstr "Інвертувати вісь нахилу" + +msgid "Invert Roll axis" +msgstr "Інвертувати вісь Roll" + +msgid "Printing Progress" +msgstr "Хід друку" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "Шар: немає даних" + +msgid "Clear" +msgstr "Очищення" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "" +"Ви завершили друк моделі торгового центру, \n" +"але синхронізація інформації про рейтинг не вдалася." + +msgid "How do you like this printing file?" +msgstr "Як вам подобається цей файл для друку?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "(Модель вже була оцінена. Ваша оцінка перезапише попередню оцінку.)" + +msgid "Rate" +msgstr "Оцінити" + +msgid "Camera" +msgstr "Камера" + +msgid "SD Card" +msgstr "SD картка" + +msgid "Camera Setting" +msgstr "Налаштування камери" + +msgid "Switch Camera View" +msgstr "Переключити вид камери" + +msgid "Control" +msgstr "Контроль" + +msgid "Printer Parts" +msgstr "Частини принтера" + +msgid "Print Options" +msgstr "Параметри друку" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "Лампа" + +msgid "Aux" +msgstr "Aux" + +msgid "Cham" +msgstr "Камера" + +msgid "Bed" +msgstr "Стіл" + +msgid "Debug Info" +msgstr "Налагоджувальна інформація" + +msgid "No SD Card" +msgstr "Немає картки SD" + +msgid "SD Card Abnormal" +msgstr "SD-картка не в порядку" + +msgid "Cancel print" +msgstr "Скасувати друк" + +msgid "Are you sure you want to cancel this print?" +msgstr "Ви впевнені, що хочете скасувати цей друк?" + +msgid "Downloading..." +msgstr "Завантаження..." + +msgid "Cloud Slicing..." +msgstr "Поділ хмари..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "У черзі Cloud Slicing Queue попереду %s завдань." + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "Шар: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "Шар: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" +"Будь ласка, нагрійте насадку до понад 170 градусів перед завантаженням або " +"вивантаженням філаменту." + +msgid "Still unload" +msgstr "Ще розвантажити" + +msgid "Still load" +msgstr "Ще завантажити" + +msgid "Please select an AMS slot before calibration" +msgstr "Будь ласка, виберіть слот AMS перед калібруванням" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "" +"Неможливо прочитати інформацію про філамент: філамент завантажений у " +"головкуІнструменту, будь ласка, вивантажте філамент і повторіть спробу." + +msgid "This only takes effect during printing" +msgstr "Це діє лише під час друку" + +msgid "Silent" +msgstr "Тихий" + +msgid "Standard" +msgstr "Стандартний" + +msgid "Sport" +msgstr "Спортивний" + +msgid "Ludicrous" +msgstr "Безглуздий" + +msgid "Can't start this without SD card." +msgstr "Не можу запустити це без SD-карти." + +msgid "Rate the Print Profile" +msgstr "Оцінити профіль друку" + +msgid "Comment" +msgstr "Коментувати" + +msgid "Rate this print" +msgstr "Оцініть цей друк" + +msgid "Add Photo" +msgstr "Додати фото" + +msgid "Delete Photo" +msgstr "Видалити фото" + +msgid "Submit" +msgstr "Підтвердити" + +msgid "Please click on the star first." +msgstr "Будь ласка, спочатку клацніть на зірку." + +msgid "InFo" +msgstr "Інформація" + +msgid "Get oss config failed." +msgstr "Не вдалося отримати конфігурацію OSS." + +msgid "Upload Pictrues" +msgstr "Завантажити фотографії" + +msgid "Number of images successfully uploaded" +msgstr "Кількість успішно завантажених зображень" + +msgid " upload failed" +msgstr " Помилка завантаження" + +msgid " upload config prase failed\n" +msgstr " Помилка при спробі завантажити конфігураційний файл\n" + +msgid " No corresponding storage bucket\n" +msgstr " Відсутній відповідний сховищний контейнер\n" + +msgid " can not be opened\n" +msgstr " Не може бути відкрито\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "" +"Під час процесу завантаження зображень виникли наступні проблеми. Бажаєте їх " +"проігнорувати?\n" +"\n" + +msgid "info" +msgstr "інфо" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "" +"Синхронізація результатів друку. Будь ласка, повторіть спробу через кілька " +"секунд." + +msgid "Upload failed\n" +msgstr "Помилка завантаження\n" + +msgid "obtaining instance_id failed\n" +msgstr "помилка отримання instance_id\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"Ваш коментар не може бути завантажений з якихось причин. Ось деталі " +"помилки:\n" +"\n" +" код помилки: " + +msgid "error message: " +msgstr "текст помилки: " + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"Чи бажаєте ви перейти на веб-сторінку для оцінки?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "" +"Деякі з ваших зображень не вдалося завантажити. Бажаєте перейти на веб-" +"сторінку для оцінки?" + +msgid "You can select up to 16 images." +msgstr "Ви можете вибрати до 16 зображень." + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"Для того щоб поставити позитивний рейтинг (4 або 5 зірок), потрібно \n" +"мати принаймні один успішний запис про друк з цим профілем друку." + +msgid "Status" +msgstr "Статус" + +msgid "Update" +msgstr "Оновлення" + +msgid "Don't show again" +msgstr "Більше не показувати" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s помилка" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s виявив помилку" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s попередження" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s має попередження" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s інфо" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s інформація" + +msgid "Skip" +msgstr "Пропустити" + +msgid "Newer 3mf version" +msgstr "Нова версія 3mf" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" +"Версія 3mf-файлу знаходиться в стадії бета-тестування і є новішою за поточну " +"версію Snapmaker Orca." + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" +"Якщо ви хочете спробувати бета-версію Snapmaker Orca, ви можете натиснути на" + +msgid "Download Beta Version" +msgstr "Завантажити бета-версію" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "Версія файлу 3mf новіша, ніж поточна версія Snapmaker Orca." + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" +"Оновлення вашого Snapmaker Orca може увімкнути всю функціональність у файлі 3mf." + +msgid "Current Version: " +msgstr "Поточна версія: " + +msgid "Latest Version: " +msgstr "Остання версія: " + +msgid "Not for now" +msgstr "Наразі не потрібно" + +msgid "3D Mouse disconnected." +msgstr "3D-миша відключена." + +msgid "Configuration can update now." +msgstr "Конфігурацію можна оновити зараз." + +msgid "Detail." +msgstr "Деталь." + +msgid "Integration was successful." +msgstr "Інтеграція пройшла успішно." + +msgid "Integration failed." +msgstr "Інтеграція не вдалася." + +msgid "Undo integration was successful." +msgstr "Скасувати інтеграцію вдалося." + +msgid "New network plug-in available." +msgstr "Доступний новий мережевий плагін." + +msgid "Details" +msgstr "Подробиці" + +msgid "New printer config available." +msgstr "Доступна нова конфігурація принтера." + +msgid "Wiki" +msgstr "Енциклопедія" + +msgid "Undo integration failed." +msgstr "Скасувати інтеграцію не вдалося." + +msgid "Exporting." +msgstr "Експорт." + +msgid "Software has New version." +msgstr "Програмне забезпечення має нову версію." + +msgid "Goto download page." +msgstr "Перейти до сторінки завантаження." + +msgid "Open Folder." +msgstr "Відкрити папку." + +msgid "Safely remove hardware." +msgstr "Безпечне видалення пристрою." + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d Об'єкт має опори користувача." +msgstr[1] "%1$d Об'єкти мають опори користувача." +msgstr[2] "%1$d Об'єкти мають опори користувача." + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d Об'єкт має кольорове забарвлення." +msgstr[1] "%1$d Об'єкти мають кольорове забарвлення." +msgstr[2] "%1$d Об'єкти мають кольорове забарвлення." + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d завантажено як частину обрізаного об'єкта." +msgstr[1] "%1$d завантажено як частини обрізаних об'єктів" +msgstr[2] "%1$d завантажено як частини обрізаних об'єктів" + +msgid "ERROR" +msgstr "ПОМИЛКА" + +msgid "COMPLETED" +msgstr "ВИКОНАНО" + +msgid "CANCELED" +msgstr "Скасовано" + +msgid "Cancel upload" +msgstr "Скасувати завантаження" + +msgid "Jump to" +msgstr "Перейти до" + +msgid "Error:" +msgstr "Помилка:" + +msgid "Warning:" +msgstr "Попередження:" + +msgid "Export successfully." +msgstr "Експорт успішно." + +msgid "Model file downloaded." +msgstr "Завантажений файл моделі." + +msgid "Serious warning:" +msgstr "Серйозне попередження:" + +msgid " (Repair)" +msgstr " (Ремонт)" + +msgid " Click here to install it." +msgstr " Натисніть тут, щоб встановити його." + +msgid "WARNING:" +msgstr "ПОПЕРЕДЖЕННЯ:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "Вашій моделі потрібна підтримка! Увімкніть допоміжний матеріал." + +msgid "Gcode path overlap" +msgstr "Перекриття шляху Gcode" + +msgid "Support painting" +msgstr "Підтримка малювання" + +msgid "Color painting" +msgstr "Кольорове малювання" + +msgid "Cut connectors" +msgstr "Вирізати з'єднувачі" + +msgid "Layers" +msgstr "Шари" + +msgid "Range" +msgstr "Діапазон" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "" +"Додаток не може працювати нормально, оскільки версія OpenGL нижче, ніж 2.0.\n" + +msgid "Please upgrade your graphics card driver." +msgstr "Будь ласка, оновіть драйвер відеокарти." + +msgid "Unsupported OpenGL version" +msgstr "Непідтримувана версія OpenGL" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "" +"Не вдалося завантажити шейдери:\n" +"%s" + +msgid "Error loading shaders" +msgstr "Помилка завантаження шейдерів" + +msgctxt "Layers" +msgid "Top" +msgstr "Верх" + +msgctxt "Layers" +msgid "Bottom" +msgstr "Низ" + +msgid "Enable AI monitoring of printing" +msgstr "Увімкнути ШІ-моніторинг друку" + +msgid "Sensitivity of pausing is" +msgstr "Чутливість паузи" + +msgid "Enable detection of build plate position" +msgstr "Увімкнути визначення положення робочого столу" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "" +"Виявлено тег локалізації робочої пластини, і друк припиняється, якщо\n" +"тег не знаходиться в певному діапазоні." + +msgid "First Layer Inspection" +msgstr "Перевірка першого шару" + +msgid "Auto-recovery from step loss" +msgstr "Автоматичне відновлення після втрати кроку" + +msgid "Allow Prompt Sound" +msgstr "Дозволити звук підказки" + +msgid "Filament Tangle Detect" +msgstr "Виявлення заплутування філаменту" + +msgid "Nozzle Clumping Detection" +msgstr "Виявлення згортання сопла" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" +"Перевірте, чи сопло не затверділо від філаменту або інших чужорідних " +"предметів." + +msgid "Nozzle Type" +msgstr "Тип насадки" + +msgid "Stainless Steel" +msgstr "Нержавіюча сталь" + +msgid "Hardened Steel" +msgstr "Закалена сталь" + +#, c-format, boost-format +msgid "%.1f" +msgstr "%.1f" + +msgid "Global" +msgstr "Глобальний" + +msgid "Objects" +msgstr "Об'єкти" + +msgid "Advance" +msgstr "Профі" + +msgid "Compare presets" +msgstr "Порівняти пресети" + +msgid "View all object's settings" +msgstr "Переглянути всі налаштування об'єкта" + +msgid "Material settings" +msgstr "" + +msgid "Remove current plate (if not last one)" +msgstr "Видалити поточну пластину (якщо вона не є остання)" + +msgid "Auto orient objects on current plate" +msgstr "Автоматичне орієнтування об'єктів на поточній пластині" + +msgid "Arrange objects on current plate" +msgstr "Впорядкувати об'єкти на поточній пластині" + +msgid "Unlock current plate" +msgstr "Розблокувати поточну пластину" + +msgid "Lock current plate" +msgstr "Блокування поточної пластини" + +msgid "Edit current plate name" +msgstr "Редагувати поточну назву пластини" + +msgid "Move plate to the front" +msgstr "" + +msgid "Customize current plate" +msgstr "Налаштувати поточну пластину" + +#, boost-format +msgid " plate %1%:" +msgstr " Пластина %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "Неприпустиме ім'я, такі символи не допускаються:" + +msgid "Sliced Info" +msgstr "Нарізана інформація" + +msgid "Used Filament (m)" +msgstr "Використання філаменту (м)" + +msgid "Used Filament (mm³)" +msgstr "Використання філаменту (мм³)" + +msgid "Used Filament (g)" +msgstr "Використання філаменту (g)" + +msgid "Used Materials" +msgstr "Використовувані матеріали" + +msgid "Estimated time" +msgstr "Розрахунковий час" + +msgid "Filament changes" +msgstr "Зміни нитки" + +msgid "Click to edit preset" +msgstr "Натисніть, щоб змінити попереднє встановлення" + +msgid "Connection" +msgstr "Зв'язок" + +msgid "Bed type" +msgstr "Тип столу" + +msgid "Flushing volumes" +msgstr "Промивні обсяги" + +msgid "Add one filament" +msgstr "Додайте один філамент" + +msgid "Remove last filament" +msgstr "Видалити останній філамент" + +msgid "Synchronize filament list from AMS" +msgstr "Синхронізувати список ниток з AMS" + +msgid "Set filaments to use" +msgstr "Встановіть нитки для використання" + +msgid "Search plate, object and part." +msgstr "Пошук плити, об’єкта і деталі." + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "" +"Немає ниток AMS. Виберіть принтер на сторінці «Пристрій», щоб завантажити " +"інформацію AMS." + +msgid "Sync filaments with AMS" +msgstr "Синхронізація ниток з AMS" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"Синхронізація ниток з AMS видаляє всі поточні вибрані пресети ниток і\n" +"Кольори. Ви хочете продовжувати?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "" +"Синхронізацію вже робив, синхронізувати лише зміни абопересинхронізувати\n" +"Усе?" + +msgid "Sync" +msgstr "Синхронізувати" + +msgid "Resync" +msgstr "Повторна синхронізація" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "Немає сумісних філаментів, а синхронізація не виконується." + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"Є кілька невідомих ниток, зіставлених із загальною передустановкою.Будь " +"ласка, оновіть Snapmaker Orca або перезапустіть Snapmaker Orca, щоб перевірити, чи " +"є оновлення для системи пресети." + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "Ви хочете зберегти зміни в \\%1%\\?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "" +"Успішно змонтовано. Тепер пристрій %s(%s) можна безпечно видалити з " +"комп'ютер." + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "Помилка виймання пристрою %s(%s)." + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "Виявлено попередній незбережений проект, відновити його?" + +msgid "Restore" +msgstr "Відновити" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"Поточна температура гарячого ложа висока. При друку цим філаментом в " +"закритому приміщенні може статися забивання сопла. Будь ласка, відкрийте " +"передню дверцю та/або видаліть верхнє скло." + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"Твердість сопла, необхідна для нитки напруження, вища, ніж за " +"замовчуванням.\n" +"жорсткість сопла принтера. Будь ласка, замініть загартоване сопло або\n" +"нитки розжарювання, інакше сопло буде зношене або пошкоджене." + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "" +"Включення традиційної фотографії таймлапсу може призвести до дефектів на " +"поверхні. Рекомендується перейти в режим згладжування." + +msgid "Expand sidebar" +msgstr "Розгорнути бічну панель" + +msgid "Collapse sidebar" +msgstr "Згорнути бічну панель" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "Завантаження файлу: %s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "3mf не від Snapmaker Orca, завантажуйте лише дані геометрії." + +msgid "Load 3mf" +msgstr "Завантажити 3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "Версія 3mf %s новіша, ніж версія %s %s, знайдено наступні ключі:" + +msgid "You'd better upgrade your software.\n" +msgstr "Вам краще оновити програмне забезпечення.\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "" +"Версія 3mf %s новіша, ніж версія %s %s, запропонуйте оновити програмне " +"забезпечення." + +msgid "Invalid values found in the 3mf:" +msgstr "У 3mf знайдено неприпустимі значення:" + +msgid "Please correct them in the param tabs" +msgstr "Будь ласка, виправте їх у вкладках параметрів" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" +"У файлі 3mf знаходяться наступні змінені G-коди в налаштуваннях філаменту " +"або принтера:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" +"Будь ласка, підтвердьте, що ці змінені G-коди безпечні і не призведуть до " +"пошкодження пристрою!" + +msgid "Modified G-codes" +msgstr "Змінені G-коди" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" +"У файлі 3mf містяться наступні налаштовані параметри філаменту або принтера:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" +"Будь ласка, підтвердьте, що G-коди в цих налаштованих параметрах безпечні і " +"не призведуть до пошкодження пристрою!" + +msgid "Customized Preset" +msgstr "Налаштований параметр" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "Ім'я компонентів всередині крокового файлу не у форматі UTF8!" + +msgid "The name may show garbage characters!" +msgstr "Ім'я може містити символи для сміття!" + +msgid "Remember my choice." +msgstr "Запам'ятай мій вибір." + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "" +"Не вдалося завантажити файл \\%1%\\. Виявлено неприпустиму конфігурацію." + +msgid "Objects with zero volume removed" +msgstr "Об'єкти з нульовим об'ємом видалені" + +msgid "The volume of the object is zero" +msgstr "Об'єм об'єкта дорівнює нулю" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"Об'єкт із файлу %s занадто малий, можливо, в метрах або дюймах.\n" +"Ви хочете масштабувати до міліметрів?" + +msgid "Object too small" +msgstr "Об'єкт занадто малий" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"Цей файл містить декілька об'єктів, розташованих на різних висотах.\n" +"Замість того, щоб розглядати їх як кілька об'єктів, слід \n" +"файл завантажується як єдиний об'єкт, що складається з кількох частин?" + +msgid "Multi-part object detected" +msgstr "Виявлено об'єкт, що складається з кількох частин" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "Завантажити ці файли як єдиний об'єкт з кількома частинами?\n" + +msgid "Object with multiple parts was detected" +msgstr "Виявлено об'єкт, що складається з кількох частин" + +msgid "The file does not contain any geometry data." +msgstr "Файл не містить геометричних даних." + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "" +"Ваш об'єкт здається занадто великим. Ви хочете зменшити його, щоб він " +"відповідав розміру?\n" +"підігрів столу автоматично?" + +msgid "Object too large" +msgstr "Об'єкт занадто великий" + +msgid "Export STL file:" +msgstr "Експорт файлу STL:" + +msgid "Export AMF file:" +msgstr "Експор файлу AMF:" + +msgid "Save file as:" +msgstr "Зберегти файл як:" + +msgid "Export OBJ file:" +msgstr "Експор файлу OBJ:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"Файл %s вже існує.\n" +"Бажаєте замінити його?" + +msgid "Confirm Save As" +msgstr "Підтвердити збереження як" + +msgid "Delete object which is a part of cut object" +msgstr "Видалити об'єкт, який є частиною обрізаного об'єкта" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"Ви намагаєтеся видалити об'єкт, який є частиною обрізаного об'єкта.\n" +"Ця дія розірве обрізану кореспонденцію.\n" +"Після цього узгодженість моделі не може бути гарантована." + +msgid "The selected object couldn't be split." +msgstr "Вибраний об'єкт не може бути поділений." + +msgid "Another export job is running." +msgstr "Виконується інше завдання експорту." + +msgid "Unable to replace with more than one volume" +msgstr "Неможливо замінити більше, ніж один об’єм" + +msgid "Error during replace" +msgstr "Помилка заміни" + +msgid "Replace from:" +msgstr "Замінити з:" + +msgid "Select a new file" +msgstr "Виберіть новий файл" + +msgid "File for the replace wasn't selected" +msgstr "Не вибраний файл для заміни" + +msgid "Please select a file" +msgstr "Будь ласка, виберіть файл" + +msgid "Do you want to replace it" +msgstr "Ви хочете замінити його" + +msgid "Message" +msgstr "Повідомлення" + +msgid "Reload from:" +msgstr "Перезавантажити з:" + +msgid "Unable to reload:" +msgstr "Не вдається перезавантажити:" + +msgid "Error during reload" +msgstr "Помилка під час перезавантаження" + +msgid "There are warnings after slicing models:" +msgstr "Є попередження після нарізки моделей:" + +msgid "warnings" +msgstr "попередження" + +msgid "Invalid data" +msgstr "Неправильні дані" + +msgid "Slicing Canceled" +msgstr "Нарізка скасована" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "Пластина для нарізки %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "Виправте помилки нарізки та опублікуйте знову." + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "" +"Мережевий плагін не виявлено. Функції, пов'язані з мережею, недоступні." + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"Режим тільки попереднього перегляду:\n" +"Завантажений файл містить лише gcode, не вдається увійти на сторінку " +"підготовки" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "" +"Ви можете зберегти змінені пресети у новому проекті або відмовитися від них" + +msgid "Creating a new project" +msgstr "Створення нового проекту" + +msgid "Load project" +msgstr "Завантажити проект" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"Не вдалося зберегти проект.\n" +"Будь ласка, перевірте, чи існує папка в мережі або інші програмивідкривають " +"її файл проекту." + +msgid "Save project" +msgstr "Зберегти проект" + +msgid "Importing Model" +msgstr "Імпорт моделі" + +msgid "prepare 3mf file..." +msgstr "підготувати файл 3mf..." + +msgid "Download failed, unknown file format." +msgstr "Не вдалося завантажити, невідомий формат файлу." + +msgid "downloading project ..." +msgstr "завантажую проект..." + +msgid "Download failed, File size exception." +msgstr "Завантаження не вдалося через виняток розміру файлу." + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "Проект завантажено %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "" +"Не вдалося імпортувати файл до Snapmaker Orca. Завантажте файл і імпортуйте " +"його вручну." + +msgid "Import SLA archive" +msgstr "Імпорт SLА-архіву" + +msgid "The selected file" +msgstr "Вибраний файл" + +msgid "does not contain valid gcode." +msgstr "не містить дійсний gcode." + +msgid "Error occurs while loading G-code file" +msgstr "Помилка під час завантаження файлу G-коду" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "Не вдалося завантажити ZIP-архів за шляхом %1%." + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "Не вдалося розархівувати файл до %1%: %2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" +"Не вдалося знайти розархівований файл за адресою %1%. Не вдалося " +"розархівувати файл." + +msgid "Drop project file" +msgstr "Видалити файл проекту" + +msgid "Please select an action" +msgstr "Виберіть дію" + +msgid "Open as project" +msgstr "Відкрити як проект" + +msgid "Import geometry only" +msgstr "Імпортувати лише геометрію" + +msgid "Only one G-code file can be opened at the same time." +msgstr "Водночас можна відкрити лише один файл G-коду." + +msgid "G-code loading" +msgstr "Завантаження G-коду" + +msgid "G-code files can not be loaded with models together!" +msgstr "Файли G-коду не можна завантажувати разом із моделями!" + +msgid "Can not add models when in preview mode!" +msgstr "Неможливо додати моделі у режимі попереднього перегляду!" + +msgid "All objects will be removed, continue?" +msgstr "Усі об'єкти будуть видалені, продовжити?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "" +"У поточному проекті є незбережені зміни, зберегти їх, перш ніжпродовжити?" + +msgid "Number of copies:" +msgstr "Кількість копій:" + +msgid "Copies of the selected object" +msgstr "Копії вибраного об'єкта" + +msgid "Save G-code file as:" +msgstr "Збережіть файл G-коду як:" + +msgid "Save SLA file as:" +msgstr "Зберегти файл SLA як:" + +msgid "The provided file name is not valid." +msgstr "Подана назва файлу недійсна." + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "Слідуючі символи не допускаються файловою системою FAT:" + +msgid "Save Sliced file as:" +msgstr "Зберегти нарізаний файл як:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "" +"Файл %s надіслано до пам'яті принтера та доступний для перегляду на принтері." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"Неможливо виконати булеву операцію на сітках моделі. Будуть залишені лише " +"позитивні частини. Ви можете виправити сітки і спробувати ще раз." + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "Причина: частина “%1%” порожня." + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "Причина: частина “%1%” не обмежує об’єм." + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "Причина: частина “%1%” має самоперетин." + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "Причина: “%1%” та інша частина не мають перетину." + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "" + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"Ви впевнені, що хочете зберегти оригінальні SVG-файли з їхніми локальними " +"шляхами у 3MF-файл?\n" +"Якщо ви натиснете \"НІ\", всі SVG-файли у проекті будуть недоступні для " +"редагування." + +msgid "Private protection" +msgstr "Приватний захист" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "Чи готовий принтер? Чи є стіл для друку на місці, чистий і порожній?" + +msgid "Upload and Print" +msgstr "Завантажити і друкувати" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"Друк за об'єктом: \n" +"Рекомендовано використовувати автоматичне розташування, щоб уникнути колізій " +"під час друку." + +msgid "Send G-code" +msgstr "Надіслати G-код" + +msgid "Send to printer" +msgstr "Надіслати на принтер" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "" +"Нестандартні опори та кольорове забарвлення були видалені перед ремонтом." + +msgid "Optimize Rotation" +msgstr "Оптимізація повороту" + +msgid "Invalid number" +msgstr "Неправильний номер" + +msgid "Plate Settings" +msgstr "Параметри планшета" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "Кількість вибраних зараз деталей: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "Кількість об'єктів, що вибрані зараз: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "Назва частини: %1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "Ім'я об'єкта: %1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "Розмір: %1% x %2% x %3% in\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "Розмір: %1% x %2% x %3% мм\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "Об'єм: %1% in³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "Об'єм: %1% мм³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "Трикутники: %1%\n" + +msgid "Tips:" +msgstr "Поради:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"Функція \\Fix Model\\ доступна лише у Windows. Будь ласка, відремонтуйте " +"модель \n" +"на Snapmaker Orca (Windows) або у програмах САПР." + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"Пластина% d: %s не рекомендується використовувати для друку на нитках " +"%s(%s). Якщо ви все ще хочете зробити цей друк, будь ласка, встановіть " +"температуру шару цієї нитки до ненульового." + +msgid "Switching the language requires application restart.\n" +msgstr "Для перемикання мови потрібно перезапустити програму.\n" + +msgid "Do you want to continue?" +msgstr "Ви хочете продовжувати?" + +msgid "Language selection" +msgstr "Вибір мови" + +msgid "Switching application language while some presets are modified." +msgstr "Переключення мови програми при зміні деяких пресетів." + +msgid "Changing application language" +msgstr "Зміна мови програми" + +msgid "Changing the region will log out your account.\n" +msgstr "Зміна регіону призведе до виходу з вашого облікового запису.\n" + +msgid "Region selection" +msgstr "Вибір регіону" + +msgid "Second" +msgstr "Секунд" + +msgid "Browse" +msgstr "Переглядати" + +msgid "Choose Download Directory" +msgstr "Виберіть каталог завантаження" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "Загальні налаштування" + +msgid "Asia-Pacific" +msgstr "Азіатсько-Тихоокеанський регіон" + +msgid "China" +msgstr "Китай" + +msgid "Europe" +msgstr "Європа" + +msgid "North America" +msgstr "Північна Америка" + +msgid "Others" +msgstr "Інші" + +msgid "Login Region" +msgstr "Регіон входу" + +msgid "Stealth Mode" +msgstr "Прихований режим" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" +"Це зупиняє передачу даних до хмарних сервісів Bambu. Користувачі, які не " +"користуються машинами BBL або використовують лише режим локальної мережі, " +"можуть безпечно ввімкнути цю функцію." + +msgid "Enable network plugin" +msgstr "Увімкнути мережевий плагін" + +msgid "Check for stable updates only" +msgstr "Перевіряти лише стабільні оновлення" + +msgid "Metric" +msgstr "Метрика" + +msgid "Imperial" +msgstr "Імперський" + +msgid "Units" +msgstr "Одиниці" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "Дозволити лише один екземпляр Snapmaker Orca" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"На MacOS за замовчуванням завжди працює лише один екземпляр програми. Однак " +"з командного рядка дозволяється запускати кілька екземплярів однієї й тієї ж " +"програми. У цьому випадку цей параметр дозволить запускати лише один " +"екземпляр." + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" +"Якщо цей параметр увімкнено, під час запуску Snapmaker Orca, коли вже запущено " +"інший екземпляр того ж самого Snapmaker Orca, цей екземпляр буде повторно " +"активовано замість нього." + +msgid "Home" +msgstr "Домівка" + +msgid "Default Page" +msgstr "Сторінка за замовчуванням" + +msgid "Set the page opened on startup." +msgstr "Задати сторінку, яка відкривається при запуску." + +msgid "Touchpad" +msgstr "Тачпад" + +msgid "Camera style" +msgstr "Тип камери" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"Вибір стилю навігації камерою.\n" +"За замовчуванням: ЛКМ+рух для обертання, ПКМ/СКМ+рух для панорамування.\n" +"Сенсорна панель: Alt+рух для обертання, Shift+рух для панорамування." + +msgid "Zoom to mouse position" +msgstr "Наблизити до положення миші" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "" +"Наблизьтеся до положення покажчика миші у 3D-виді, а не до центру 2D вікна." + +msgid "Use free camera" +msgstr "Використовувати вільну камеру" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "" +"Якщо увімкнено, використовуватиметься вільна камера. Якщо вимкнено, " +"використовуватиметься камера з обмеженими можливостями." + +msgid "Reverse mouse zoom" +msgstr "Реверсний зум миші" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" +"Якщо увімкнено, змінює напрямок масштабування за допомогою коліщатка миші." + +msgid "Show splash screen" +msgstr "Показувати заставку" + +msgid "Show the splash screen during startup." +msgstr "Показувати заставку під час запуску." + +msgid "Show \"Tip of the day\" notification after start" +msgstr "Показувати повідомлення \"Рада дня\" після запуску" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "Якщо увімкнено, під час запуску відображаються корисні підказки." + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "" +"Змивання обсягів: авто-перераховується кожного разу, коли змінюється колір." + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "" +"Якщо увімкнено, авто-розраховувння кожного разу, коли змінюється колір." + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "" +"Об’єми промивання: автоматично обчислювати кожного разу при зміні філаменту." + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "" +"Якщо ввімкнено, автоматично обчислювати кожного разу, коли змінюється " +"філамент" + +msgid "Remember printer configuration" +msgstr "Запам'ятати конфігурацію принтера" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" +"Якщо увімкнено, Orca запам'ятовує та автоматично перемикає конфігурацію " +"нитки/процесу для кожного принтера." + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" +"Керування кількома пристроями (набуває чинності після перезапуску Orca)." + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" +"З цією опцією ввімкненою, ви можете відправляти завдання на кілька пристроїв " +"одночасно та керувати декількома пристроями." + +msgid "Network" +msgstr "Мережа" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "" +"Автоматична синхронізація користувацьких пресетів (принтер/філамент/процес)" + +msgid "User Sync" +msgstr "Синхронізація користувачів" + +msgid "Update built-in Presets automatically." +msgstr "Оновлюйте вбудовані пресети автоматично." + +msgid "System Sync" +msgstr "Синхронізація системи" + +msgid "Clear my choice on the unsaved presets." +msgstr "Очистіть мій вибір від незахищених пресетів." + +msgid "Associate files to Snapmaker Orca" +msgstr "Асоціювати файли з Snapmaker Orca" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "Асоціювати файли .3mf з Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "" +"Якщо включено, встановлює Snapmaker Orca як програму за замовчуваннямдля " +"відкриття файлів .3mf" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "Асоціювати файли .stl з Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "" +"Якщо включено, встановлює Snapmaker Orca як програму за замовчуваннямдля " +"відкриття файлів .stl" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "Асоціювати файли .step/.stp з Snapmaker Orca" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "" +"Якщо включено, встановлює Snapmaker Orca як програму за замовчуваннямдля " +"відкриття файлів .step" + +msgid "Associate web links to Snapmaker Orca" +msgstr "Асоціювати веб-посилання з Snapmaker Orca" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "Асоціювати URL-адреси з Snapmaker Orca" + +msgid "Maximum recent projects" +msgstr "Максимум останніх проектів" + +msgid "Maximum count of recent projects" +msgstr "Максимальна кількість останніх проектів" + +msgid "Clear my choice on the unsaved projects." +msgstr "Очистити мій вибір для незбережених проектів." + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "Немає попереджень при завантаженні файлу 3MF із зміненими G-кодами" + +msgid "Auto-Backup" +msgstr "Автобекап" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "" +"Періодично робіть резервну копію вашого проекту для відновлення після " +"випадкового збою." + +msgid "every" +msgstr "кожен" + +msgid "The peroid of backup in seconds." +msgstr "Період резервного копіювання в секундах." + +msgid "Downloads" +msgstr "Завантаження" + +msgid "Dark Mode" +msgstr "Темний режим" + +msgid "Enable Dark mode" +msgstr "Увімкнути темний режим" + +msgid "Develop mode" +msgstr "Режим розробки" + +msgid "Skip AMS blacklist check" +msgstr "Пропустити перевірку чорного списку AMS" + +msgid "Home page and daily tips" +msgstr "Головна сторінка та щоденні поради" + +msgid "Show home page on startup" +msgstr "Показувати домашню сторінку під час запуску" + +msgid "Sync settings" +msgstr "Налаштування синхронізації" + +msgid "User sync" +msgstr "Синхронізація користувача" + +msgid "Preset sync" +msgstr "Синхронізація пресетів" + +msgid "Preferences sync" +msgstr "Синхронізація налаштувань" + +msgid "View control settings" +msgstr "Перегляд параметрів керування" + +msgid "Rotate of view" +msgstr "Повернути вигляд" + +msgid "Move of view" +msgstr "Переміщення виду" + +msgid "Zoom of view" +msgstr "Масштаб вигляду" + +msgid "Other" +msgstr "Інший" + +msgid "Mouse wheel reverses when zooming" +msgstr "Колісок миші реверсує при масштабуванні" + +msgid "Enable SSL(MQTT)" +msgstr "Увімкнути SSL (MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "Увімкнути SSL(FTP)" + +msgid "Internal developer mode" +msgstr "Внутрішній режим розробника" + +msgid "Log Level" +msgstr "Журнал рівня" + +msgid "fatal" +msgstr "фатальний" + +msgid "error" +msgstr "помилка" + +msgid "warning" +msgstr "попередження" + +msgid "debug" +msgstr "налагодження" + +msgid "trace" +msgstr "слід" + +msgid "Host Setting" +msgstr "Налаштування хоста" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "Хост розробника: api-dev.bambu-lab.com/v1" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "Хост QA: api-qa.bambu-lab.com/v1" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "Хост PRE: api-pre.bambu-lab.com/v1" + +msgid "Product host" +msgstr "Хост продукту" + +msgid "debug save button" +msgstr "кнопка збереження налагодження" + +msgid "save debug settings" +msgstr "зберегти налаштування налагодження" + +msgid "DEBUG settings have saved successfully!" +msgstr "Налаштування налагодження успішно збережено!" + +msgid "Switch cloud environment, Please login again!" +msgstr "Перемкніть хмарне середовище, будь ласка, увійдіть знову!" + +msgid "System presets" +msgstr "Системні пресети" + +msgid "User presets" +msgstr "Користувацькі пресети" + +msgid "Incompatible presets" +msgstr "Несумісні пресети" + +msgid "AMS filaments" +msgstr "AMS філамент" + +msgid "Click to pick filament color" +msgstr "Натисніть, щоб вибрати колір філаменту" + +msgid "Please choose the filament colour" +msgstr "Будь ласка, виберіть колір філаменту" + +msgid "Add/Remove presets" +msgstr "Додати/видалити пресети" + +msgid "Edit preset" +msgstr "Змінити попереднє встановлення" + +msgid "Project-inside presets" +msgstr "Внутрішні пресети проекту" + +msgid "Add/Remove filaments" +msgstr "Додати/видалити філаменти" + +msgid "Add/Remove materials" +msgstr "Додати/видалити матеріали" + +msgid "Select/Remove printers(system presets)" +msgstr "Вибрати/Вилучити принтери (системні налаштування)" + +msgid "Create printer" +msgstr "Створити" + +msgid "The selected preset is null!" +msgstr "Обраний пресет є порожнім!" + +msgid "End" +msgstr "Кінець" + +msgid "Customize" +msgstr "Налаштувати" + +msgid "Other layer filament sequence" +msgstr "Послідовність філатури на інших шарах" + +msgid "Please input layer value (>= 2)." +msgstr "Будь ласка, введіть значення шару (≥ 2)." + +msgid "Plate name" +msgstr "Назва пластини" + +msgid "Same as Global Print Sequence" +msgstr "Те ж, що й глобальна послідовність друку" + +msgid "Print sequence" +msgstr "Послідовність друку" + +msgid "Same as Global" +msgstr "Те саме, що й глобально" + +msgid "Disable" +msgstr "Вимкнути" + +msgid "Spiral vase" +msgstr "Спіральна ваза" + +msgid "First layer filament sequence" +msgstr "Послідовність філаменту першого шару" + +msgid "Same as Global Plate Type" +msgstr "Так само, як Глобальний Тип Пластини" + +msgid "Same as Global Bed Type" +msgstr "Те ж, що й глобальний тип столу" + +msgid "By Layer" +msgstr "За шаром" + +msgid "By Object" +msgstr "По об'єкту" + +msgid "Accept" +msgstr "Приймати" + +msgid "Log Out" +msgstr "Вийти" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "Розріжте всю пластину, щоб отримати оцінку часу та філаменту" + +msgid "Packing project data into 3mf file" +msgstr "Упаковка даних проекту у файл 3mf" + +msgid "Uploading 3mf" +msgstr "Завантаження 3mf" + +msgid "Jump to model publish web page" +msgstr "Перейти на веб-сторінку публікації моделі" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "" +"Примітка. Підготовка може тривати кілька хвилин. Будь ласка, будьте терплячі." + +msgid "Publish" +msgstr "Публікувати" + +msgid "Publish was cancelled" +msgstr "Публікація скасована" + +msgid "Slicing Plate 1" +msgstr "Пластина для нарізки 1" + +msgid "Packing data to 3mf" +msgstr "Упаковка даних у 3mf" + +msgid "Jump to webpage" +msgstr "Перейти на веб-сторінку" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "Зберегти %s як" + +msgid "User Preset" +msgstr "Установка користувача" + +msgid "Preset Inside Project" +msgstr "Налаштування проекту всередині" + +msgid "Name is unavailable." +msgstr "Ім'я недоступне." + +msgid "Overwrite a system profile is not allowed" +msgstr "Перезаписування системного профілю заборонено" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "Предустановка \\%1%\\ вже існує." + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "Предустановка \\%1%\\ вже існує і несумісна з поточним принтером." + +msgid "Please note that saving action will replace this preset" +msgstr "Зверніть увагу, що дія збереження замінить цей пресет" + +msgid "The name cannot be the same as a preset alias name." +msgstr "Ім'я не може збігатися з встановленим псевдонімом." + +msgid "Save preset" +msgstr "Зберегти пресет" + +msgctxt "PresetName" +msgid "Copy" +msgstr "Копіювати" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "Принтер \"%1%\" вибраний з попередньо інсталяцією \"%2%\"" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "Після збереження виберіть дію з налаштуванням \"%1%\"." + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "Для \"%1%\" змініть \"%2%\" на \"%3%\" " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "Для \"%1%\" додайте \"%2%\" як новий пресет" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "Просто перейдіть на \"%1%\"" + +msgid "Task canceled" +msgstr "Завдання скасовано" + +msgid "(LAN)" +msgstr "(LAN)" + +msgid "Search" +msgstr "Пошук" + +msgid "My Device" +msgstr "Мій пристрій" + +msgid "Other Device" +msgstr "Інші пристрої" + +msgid "Online" +msgstr "У мережі" + +msgid "Input access code" +msgstr "Введіть код доступу" + +msgid "Can't find my devices?" +msgstr "Не можу знайти пристрої?" + +msgid "Log out successful." +msgstr "Вийти успішно." + +msgid "Busy" +msgstr "Зайнятий" + +msgid "Bambu Cool Plate" +msgstr "Холодний стіл" + +msgid "PLA Plate" +msgstr "PLA Plate" + +msgid "Bambu Engineering Plate" +msgstr "Інженерний стіл" + +msgid "Bambu Smooth PEI Plate" +msgstr "Bambu Smooth PEI пластина" + +msgid "High temperature Plate" +msgstr "High temperature Plate" + +msgid "Bambu Textured PEI Plate" +msgstr "Текстурована пластина PEI з текстурою Bambu" + +msgid "Send print job to" +msgstr "Надіслати завдання на друк на" + +msgid "Flow Dynamics Calibration" +msgstr "Калібрування динаміки потоку" + +msgid "Click here if you can't connect to the printer" +msgstr "Клацніть тут, якщо ви не можете підключитися до принтера" + +msgid "send completed" +msgstr "відправлення завершено" + +msgid "Error code" +msgstr "Код помилки" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "" +"Немає облікового запису для входу, відображаються лише принтери в режимі LAN" + +msgid "Connecting to server" +msgstr "Підключення до сервера" + +msgid "Synchronizing device information" +msgstr "Синхронізація інформації про пристрій" + +msgid "Synchronizing device information time out" +msgstr "Тайм-аут синхронізації інформації про пристрій" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "Неможливо надіслати завдання друку, коли принтер оновлює мікропрограму" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "" +"Принтер виконує вказівки. Будь ласка, перезапустіть друк після неїзакінчення" + +msgid "The printer is busy on other print job" +msgstr "Принтер зайнятий іншим завданням друку" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Філамент %s перевищує кількість слотів AMS. Будь ласка, оновіть прошивку " +"принтер для підтримки призначення слотів AMS." + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "" +"Філамент перевищує кількість слотів AMS. Будь ласка, оновіть " +"прошивкупринтера\n" +"для підтримки призначення слотів AMS." + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"Встановили зіставлення ниток зі слотами AMS. Ви можете натиснути\n" +"Філамент вище, щоб змінити її слот зіставлення AMS" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "" +"Клацніть кожен філамент вище, щоб вказати його слот зіставлення AMS,Перш ніж " +"відправити завдання на друк" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"Філамент %s не відповідає філаменту в слоті AMS %s. Будь ласка, оновіть " +"прошивку принтера для підтримки перепризначення слотів AMS." + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"Філамент не відповідає філаменту в слоті AMS. Будь ласка, оновіть Прошивка " +"принтера для підтримки призначення слотів AMS." + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"Прошивка принтера підтримує лише послідовне зіставлення філаменту => AMS " +"слот." + +msgid "An SD card needs to be inserted before printing." +msgstr "Перед початком друку необхідно вставити картку SD." + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" +"Вибраний принтер (%s) несумісний з обраним профілем принтера в різальні (%s)." + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "SD-карта повинна бути вставлена для запису таймлапсу." + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "" +"Неможливо надіслати завдання друку на принтер, прошивка якого повинна бути " +"оновлено." + +msgid "Cannot send the print job for empty plate" +msgstr "Неможливо надіслати завдання на друк для порожньої форми" + +msgid "This printer does not support printing all plates" +msgstr "Цей принтер не підтримує друк усіх форм" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "" +"При увімкненні режиму спіралі для вази машини з I3 структурою не будуть " +"створювати відео в режимі таймлапсу." + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" +"Таймлапс не підтримується через те, що послідовність друку встановлена в “За " +"об’єктом”." + +msgid "Errors" +msgstr "Помилки" + +msgid "Please check the following:" +msgstr "Будь ласка, перевірте таке:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"Тип принтера, вибраний під час створення G-коду, не відповідає поточному " +"Вибраному принтеру. Рекомендується використовувати той самий тип принтера " +"для нарізки." + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"У порівнянні AMS є кілька невідомих філаментів. Будь ласка,перевірте, вони є " +"необхідними нитками. Якщо вони гаразд, натисніть \"Подтвердити\", щоб почати " +"друк." + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "сопло в налаштуваннях: %s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "сопло у пам'яті: %.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"Ваш діаметр сопла в розрізаному файлі не відповідає запам’ятаному діаметру " +"сопла. Якщо ви недавно змінили сопло, будь ласка, перейдіть до “Пристрій > " +"Частини принтера”, щоб змінити налаштування." + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" +"Друк високотемпературного матеріалу (%s матеріал) з %s може призвести до " +"пошкодження сопла" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "Будь ласка, виправте помилку вище, інакше друк не може продовжитися." + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "Натисніть кнопку підтвердження, якщо ви все ще хочете продовжити друк." + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "" +"З’єднання з принтером. Під час процесу підключення скасувати неможливо." + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "" +"Увага! Калібрування потоку на Textured PEI Plate може не вдалося через " +"розсіяну поверхню." + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "Автоматична калібрування потоку за допомогою мікро лідару" + +msgid "Modifying the device name" +msgstr "Зміна імені пристрою" + +msgid "Bind with Pin Code" +msgstr "Прив’язати за допомогою Пін-коду" + +msgid "Send to Printer SD card" +msgstr "Надіслати на SD-карту принтера" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "Не вдалося надіслати завдання на друк під час оновлення" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "Вибраний принтер несумісний зі встановленими налаштуваннями." + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "Перед надсиланням на картку SD принтера необхідно вставити картку SD." + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "" +"Принтер повинен бути підключений до тієї ж локальної мережі, що й Orca " +"Slicer." + +msgid "The printer does not support sending to printer SD card." +msgstr "Принтер не підтримує надсилання на картку SD принтера." + +msgid "Slice ok." +msgstr "Нарізка прибл." + +msgid "View all Daily tips" +msgstr "Переглянути всі щоденні поради" + +msgid "Failed to create socket" +msgstr "Не вдалося створити сокет" + +msgid "Failed to connect socket" +msgstr "Не вдалося підключити сокет" + +msgid "Failed to publish login request" +msgstr "Не вдалося опублікувати запит на вхід" + +msgid "Get ticket from device timeout" +msgstr "Перевищено час очікування при отриманні квитка від пристрою" + +msgid "Get ticket from server timeout" +msgstr "Перевищено час очікування при отриманні квитка від сервера" + +msgid "Failed to post ticket to server" +msgstr "Не вдалося відправити квиток на сервер" + +msgid "Failed to parse login report reason" +msgstr "Не вдалося розібрати причину звіту про вхід" + +msgid "Receive login report timeout" +msgstr "Отримано звіт про вхід з перевищеним часом очікування" + +msgid "Unknown Failure" +msgstr "Невідомий збій" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" +"Будь ласка, знайдіть Пін-код на сторінці облікового запису на екрані " +"принтера, \n" +" і введіть Пін-код нижче." + +msgid "Can't find Pin Code?" +msgstr "Не можу знайти Пін-код?" + +msgid "Pin Code" +msgstr "Пін-код" + +msgid "Binding..." +msgstr "Прив’язка…" + +msgid "Please confirm on the printer screen" +msgstr "Будь ласка, підтвердьте на екрані принтера" + +msgid "Log in failed. Please check the Pin Code." +msgstr "Вхід не вдається. Будь ласка, перевірте Пін-код." + +msgid "Log in printer" +msgstr "Вхід до принтера" + +msgid "Would you like to log in this printer with current account?" +msgstr "Ви хочете увійти до цього принтера з поточним обліковим записом?" + +msgid "Check the reason" +msgstr "Перевірте причину" + +msgid "Read and accept" +msgstr "Прочитайте і згодьтеся" + +msgid "Terms and Conditions" +msgstr "Умови використання" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"Дякуємо за покупку пристрою Bambu Lab. Перед використанням вашого пристрою " +"Bambu Lab, ознайомтеся з умовами та положеннями. Клацнувши, щоб погодитися " +"використовувати ваш пристрій Bambu Lab, ви погоджуєтесь дотримуватися " +"Політики конфіденційності та Умов використання (разом \"Умови\"). Якщо ви не " +"виконуєте або не погоджуєтесь із Політикою конфіденційності Bambu Lab, будь " +"ласка, не використовуйте обладнання та послуги Bambu Lab." + +msgid "and" +msgstr "і" + +msgid "Privacy Policy" +msgstr "Політика конфіденційності" + +msgid "We ask for your help to improve everyone's printer" +msgstr "Ми просимо вашої допомоги для покращення роботи всіх принтерів" + +msgid "Statement about User Experience Improvement Program" +msgstr "Заява про Програму покращення користувацького досвіду" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"У спільноті 3D-друку ми навчаємося на прикладі успіхів і невдач інших, щоб " +"налаштувати параметри і налаштування свого власного зрізування. %s " +"дотримується того ж принципу і використовує машинне навчання для покращення " +"своєї ефективності на основі успіхів і невдач великої кількості друків наших " +"користувачів. Ми навчаємо %s бути розумнішими, подаючи їм дані з реального " +"світу. Якщо ви готові, ця послуга буде мати доступ до інформації з вашого " +"журналу помилок і журналу використання, включаючи інформацію, описану в " +"Політиці конфіденційності. Ми не будемо збирати жодних Особистих даних, за " +"якими можна ідентифікувати особу безпосередньо чи опосередковано, включаючи, " +"але не обмежуючись, імена, адреси, інформацію про платежі або номери " +"телефонів. Увімкнувши цю службу, ви погоджуєтеся з цими умовами та заявою " +"про Політику конфіденційності." + +msgid "Statement on User Experience Improvement Plan" +msgstr "Заява щодо Плану покращення користувацького досвіду" + +msgid "Log in successful." +msgstr "Авторизація успішна." + +msgid "Log out printer" +msgstr "Вийти з принтера" + +msgid "Would you like to log out the printer?" +msgstr "Хочете вийти з принтера?" + +msgid "Please log in first." +msgstr "Будь ласка, увійдіть спочатку." + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "" +"Виникла проблема з підключенням до принтера. Будь ласка, спробуйте ще раз." + +msgid "Failed to log out." +msgstr "Не вдалося вийти." + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "Зберегти поточний %s" + +msgid "Delete this preset" +msgstr "Видалити цей пресет" + +msgid "Search in preset" +msgstr "Пошук у пресеті" + +msgid "Click to reset all settings to the last saved preset." +msgstr "" +"Натисніть, щоб скинути всі налаштування до останньої збереженої попередньої " +"установки." + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"Prime Tower потрібно для плавного таймлапсу. Можуть бути недоліки в " +"моделібез головної вежі. Ви впевнені, що хочете вимкнути основну вежу?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"Для плавного таймлапсу потрібно Prime Tower. Можуть бути недоліки в " +"моделіБез головної вежі. Ви хочете включити головну вежу?" + +msgid "Still print by object?" +msgstr "Ви все ще друкуєте за об’єктом?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"Ми додали експериментальний стиль \"Tree Slim\", який відрізняється меншим " +"розміром, але слабким.\n" +"Ми рекомендуємо використовувати його з: 0 інтерфейсних шарів, 0 верхнього " +"відстань, 2 периметри." + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"Змінити ці налаштування автоматично? \n" +"Так - Змінити ці налаштування автоматично\n" +"Ні - Не змінювати ці настройки для мене" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"Для стилів \"Tree Strong\" та \"Tree Hybrid\" ми рекомендуємо наступні " +"параметри: не менше 2 інтерфейсних шарів, не менше 0,1 мм відстань між " +"вершинами z або використання допоміжних матеріалів в якості інтерфейсу." + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"При використанні допоміжного матеріалу для друку підтримки рекомендується \n" +"налаштування:\n" +"0 відстань між вершинами z, 0 відстань між підтримкою, концентричний малюнок " +"та відключення висота незалежного опорного шару" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"Увімкнення цієї опції змінить форму моделі. Якщо ваш друк вимагає точних " +"розмірів або є частиною збірки, важливо перевірити, чи не вплине зміна " +"геометрії на функціональність вашого друку." + +msgid "Are you sure you want to enable this option?" +msgstr "Ви впевнені, що хочете ввімкнути цю опцію?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"Висота шару занадто мала.\n" +"Буде встановлено значення min_layer_height\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"Висота шару перевищує ліміт у Налаштуваннях принтера -> Екструдер -> Ліміти " +"висоти шару, це може призвести до проблем з якістю друку." + +msgid "Adjust to the set range automatically? \n" +msgstr "Автоматично налаштувати на встановлений діапазон? \n" + +msgid "Adjust" +msgstr "Налаштувати" + +msgid "Ignore" +msgstr "Ігнорувати" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"Експериментальна функція: Втягування та відрізання філаменту на більшій " +"відстані під час зміни філаменту для мінімізації промивання. Хоча це може " +"помітно зменшити промивання, це також може підвищити ризик засмічення сопла " +"або інших ускладнень друку." + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"Експериментальна функція: Втягування та відрізання філаменту на більшій " +"відстані під час зміни філаменту для мінімізації промивання. Хоча це може " +"помітно зменшити промивання, це також може підвищити ризик засмічення сопла " +"або інших ускладнень друку. Будь ласка, використовуйте з останніми " +"прошивками принтера." + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"При записі таймлапсу без інструментальної головки рекомендується додати " +"“Timelapse Wipe Tower” \n" +"Клацніть правою кнопкою миші на порожній позиції монтажної плити та виберіть " +"\"Додати Примітів\"->\"Timelapse Wipe Tower\"." + +msgid "Line width" +msgstr "Ширина лінії" + +msgid "Seam" +msgstr "Шов" + +msgid "Precision" +msgstr "Точність" + +msgid "Wall generator" +msgstr "Генерація стінок" + +msgid "Walls and surfaces" +msgstr "Стінки та поверхні" + +msgid "Bridging" +msgstr "Створення мостів" + +msgid "Overhangs" +msgstr "Звисання" + +msgid "Walls" +msgstr "Стінки" + +msgid "Top/bottom shells" +msgstr "Верхня/нижня оболонка" + +msgid "Initial layer speed" +msgstr "Швидкість першого шару" + +msgid "Other layers speed" +msgstr "Швидкість інших шарів" + +msgid "Overhang speed" +msgstr "Швидкість звису" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"Це швидкість для різних градусів звису. Ступені звису виражаються в " +"відсотках від ширини лінії. 0 швидкість означає відсутність уповільнення для " +"діапазону ступенів звису і використовується швидкість друку стінок" + +msgid "Bridge" +msgstr "Міст" + +msgid "Set speed for external and internal bridges" +msgstr "Встановіть швидкість для зовнішнього та внутрішнього мостів" + +msgid "Travel speed" +msgstr "Швидкість переміщення" + +msgid "Acceleration" +msgstr "Прискорення" + +msgid "Jerk(XY)" +msgstr "Ривок (XY)" + +msgid "Raft" +msgstr "Підкладка" + +msgid "Support filament" +msgstr "Філамент підтримки" + +msgid "Tree supports" +msgstr "Органічні підтримки" + +msgid "Skirt" +msgstr "Плінтус" + +msgid "Prime tower" +msgstr "Вежа Очищення" + +msgid "Special mode" +msgstr "Спеціальний режим" + +msgid "G-code output" +msgstr "Вихідний G-code" + +msgid "Post-processing Scripts" +msgstr "Сценарії постобробки" + +msgid "Notes" +msgstr "Примітки" + +msgid "Frequent" +msgstr "Частий" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"Наступний рядок %s містить зарезервовані ключові слова.\n" +"Видаліть його або виконайте візуалізацію G-коду та оцінку часу друку." +msgstr[1] "" +"Наступні рядки %s містять зарезервовані ключові слова.\n" +"Видаліть їх або виконайте візуалізацію G-коду та оцінку часу друку." +msgstr[2] "" +"Наступні рядки %s містять зарезервовані ключові слова.\n" +"Видаліть їх або виконайте візуалізацію G-коду та оцінку часу друку." + +msgid "Reserved keywords found" +msgstr "Знайдено зарезервовані ключові слова" + +msgid "Setting Overrides" +msgstr "Налаштування перевизначень" + +msgid "Retraction" +msgstr "Втягування" + +msgid "Basic information" +msgstr "Базова інформація" + +msgid "Recommended nozzle temperature" +msgstr "Рекомендована температура сопла" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "" +"Рекомендований діапазон температур сопла для цього філаменту. 0 означає " +"відсутність установки" + +msgid "Print chamber temperature" +msgstr "Температура в камері друку" + +msgid "Print temperature" +msgstr "Температура друку" + +msgid "Nozzle" +msgstr "Сопло" + +msgid "Nozzle temperature when printing" +msgstr "Температура сопла під час друку" + +msgid "Cool plate" +msgstr "Холодний стіл" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "" +"Температура шару при встановленій охолодній пластині. Значення 0 означає, що " +"філамент\n" +"не підтримує друк на Холодному столі" + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "Engineering plate" +msgstr "Інженерний стіл" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Температура стола при встановленій інженерній плиті. Значення 0 означає \n" +"Філамент не підтримує друк на інженерній пластині" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "Гладка ПЕІ пластина / Високотемпературна пластина" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"Температура столу, коли встановлена Гладка ПЕІ пластина / Високотемпературна " +"пластина. Значення 0 означає, що філамент не підтримує друк на Гладкій ПЕІ " +"пластині / Високотемпературній пластині" + +msgid "Textured PEI Plate" +msgstr "Текстурована пластина PEI" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Температура шару під час встановлення плити Textured PEI Plate. Значення 0 " +"означає Філамент не підтримує друк на текстурованій пластині PEI" + +msgid "Volumetric speed limitation" +msgstr "Об'ємне обмеження швидкості" + +msgid "Cooling" +msgstr "Охолодження" + +msgid "Cooling for specific layer" +msgstr "Охолодження для конкретного шару" + +msgid "Part cooling fan" +msgstr "Вентилятор охолодження деталей" + +msgid "Min fan speed threshold" +msgstr "Поріг мінімальної швидкості вентилятора" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"Швидкість вентилятора охолодження деталей почне працювати на " +"мінімальнійшвидкості, коли розрахунковий час шару не більше, ніж час шару " +"при налаштування. Коли час шару менше порогового значення, швидкість " +"вентилятора інтерполюється між мінімальним і максимальна швидкість " +"обертаннявентилятор залежно від часу друку шару" + +msgid "Max fan speed threshold" +msgstr "Поріг максимальної швидкості вентилятора" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "" +"Швидкість вентилятора охолодження деталі буде максимальною, якщо " +"розрахунковечас шару менший за задане значення" + +msgid "Auxiliary part cooling fan" +msgstr "Вентилятор охолодження допоміжних деталей" + +msgid "Exhaust fan" +msgstr "Витяжний вентилятор" + +msgid "During print" +msgstr "Під час друку" + +msgid "Complete print" +msgstr "Завершити друк" + +msgid "Filament start G-code" +msgstr "G-код початку філаменту" + +msgid "Filament end G-code" +msgstr "G-код кінця філаменту" + +msgid "Multimaterial" +msgstr "Мультиматеріал" + +msgid "Wipe tower parameters" +msgstr "Параметри вежі витирання" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "Параметри зміни інструменту в одно-екструдерному ММ-принтері" + +msgid "Ramming settings" +msgstr "Налаштування раммінгу" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "Параметри заміни інструменту в багатоекструдерних MM-принтерах" + +msgid "Printable space" +msgstr "Місце для друку" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "Надано некоректне значення для параметру %1%: %2%" + +msgid "G-code flavor is switched" +msgstr "Варіацію G-коду змінено" + +msgid "Cooling Fan" +msgstr "Охолоджуючий вентилятор" + +msgid "Fan speed-up time" +msgstr "Час розгону вентилятора" + +msgid "Extruder Clearance" +msgstr "Очищення екструдера" + +msgid "Adaptive bed mesh" +msgstr "Адаптивна сітка стола" + +msgid "Accessory" +msgstr "Аксесуари" + +msgid "Machine gcode" +msgstr "G-code машини" + +msgid "Machine start G-code" +msgstr "Стартовий G-code" + +msgid "Machine end G-code" +msgstr "Кінцевий G-code" + +msgid "Printing by object G-code" +msgstr "Друк за об’єктом за допомогою G-коду" + +msgid "Before layer change G-code" +msgstr "G-code перед зміною шару" + +msgid "Layer change G-code" +msgstr "G-code Зміни шару" + +msgid "Time lapse G-code" +msgstr "G-код для часової зйомки" + +msgid "Change filament G-code" +msgstr "G-code Зміни філаменту" + +msgid "Change extrusion role G-code" +msgstr "Змінити роль екструзії G-код" + +msgid "Pause G-code" +msgstr "G-code Паузи" + +msgid "Template Custom G-code" +msgstr "Шаблон G-code користувача" + +msgid "Motion ability" +msgstr "Здатність руху" + +msgid "Normal" +msgstr "Нормальний" + +msgid "Speed limitation" +msgstr "Обмеження швидкості" + +msgid "Acceleration limitation" +msgstr "Обмеження прискорення" + +msgid "Jerk limitation" +msgstr "Обмеження ривка" + +msgid "Single extruder multimaterial setup" +msgstr "Установка для роботи з декількома матеріалами на одному екструдері" + +msgid "Wipe tower" +msgstr "Вежа витирання" + +msgid "Single extruder multimaterial parameters" +msgstr "Параметри екструдеру в багато-екструдерному принтері" + +msgid "Layer height limits" +msgstr "Обмеження висоти шару" + +msgid "Lift Z Enforcement" +msgstr "Забезпечення стрибків Z" + +msgid "Retraction when switching material" +msgstr "Втягування під час зміни матеріалу" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"Опція Wipe недоступна під час використання режиму Firmware Retraction.\n" +"\n" +"Чи я повинен відключити його, щоб включити Firmware Retraction?" + +msgid "Firmware Retraction" +msgstr "Firmware Retraction" + +msgid "Detached" +msgstr "Окремий" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"За цим принтером прикріплено %d налаштувань філаменту та %d налаштувань " +"процесу. Ці налаштування будуть видалені, якщо принтер буде видалено." + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "" +"Налаштування, які успадковуються іншими налаштуваннями, не можуть бути " +"видалені!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Профіль вказаний нижче, успадковується від поточного профілю." +msgstr[1] "Профілі вказані нижче, успадковуються від поточного профілю." +msgstr[2] "Профілі вказані нижче, успадковуються від поточного профілю." + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% Передустановка" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "Наступне попереднє встановлення також буде видалено." +msgstr[1] "Наступні стилі також будуть видалені." +msgstr[2] "Наступні стилі також будуть видалені." + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"Ви впевнені, що хочете видалити вибраний пресет?\n" +"Якщо пресет відповідає філаменту, який в даний момент використовується на " +"вашому принтері, будь ласка, скиньте інформацію про філамент для цього слоту." + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "Ви впевнені, що %1% вибраної установки?" + +msgid "All" +msgstr "Все" + +msgid "Set" +msgstr "Вибір" + +msgid "Click to reset current value and attach to the global value." +msgstr "" +"Натисніть, щоб скинути поточне значення та приєднати його до " +"глобальногозначення." + +msgid "Click to drop current modify and reset to saved value." +msgstr "" +"Натисніть, щоб скасувати поточну зміну та повернутися до збереженоїзначення." + +msgid "Process Settings" +msgstr "Налаштування процесу" + +msgid "Undef" +msgstr "Undef" + +msgid "Unsaved Changes" +msgstr "Незбережені зміни" + +msgid "Transfer or discard changes" +msgstr "Відкинути або зберегти зміни" + +msgid "Old Value" +msgstr "Старе значення" + +msgid "New Value" +msgstr "Нове значення" + +msgid "Transfer" +msgstr "Передача" + +msgid "Don't save" +msgstr "Не зберігати" + +msgid "Discard" +msgstr "Не зберігати" + +msgid "Click the right mouse button to display the full text." +msgstr "Натисніть праву кнопку миші, щоб відобразити повний текст." + +msgid "All changes will not be saved" +msgstr "Всі зміни не будуть збережені" + +msgid "All changes will be discarded." +msgstr "Всі зміни будуть відкинуті." + +msgid "Save the selected options." +msgstr "Зберегти вибрані параметри." + +msgid "Keep the selected options." +msgstr "Збережіть вибрані установки." + +msgid "Transfer the selected options to the newly selected preset." +msgstr "Перенесіть вибрані параметри в новий вибраний пресет." + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"Збережіть вибрані параметри у передвстановленні \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"Перенесіть вибрані опції в нове попереднє встановлення \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "Попередня установка \"%1%\" містить такі незбережені зміни:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "" +"Попередня установка \"%1%\" не сумісна з новим профілем принтера, і вона " +"містить такі незбережені зміни:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "" +"Попередня установка \"%1%\" не сумісна з новим профілем процесу, і " +"вонамістить такі незбережені зміни:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "Ви змінили деякі налаштування пресету “%1%”. " + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"Ви можете зберегти або відхилити змінені значення пресету." + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" +"\n" +"Ви можете зберегти або відкинути змінені значення пресетів, або перенести " +"змінені значення до нового пресету." + +msgid "You have previously modified your settings." +msgstr "Ви раніше змінювали свої налаштування." + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"Ви можете відкинути попередньо встановлені значення, які ви змінили, або " +"перенести змінені значення до нового проекту" + +msgid "Extruders count" +msgstr "Кількість екструдерів" + +msgid "General" +msgstr "Загальні" + +msgid "Capabilities" +msgstr "Можливості" + +msgid "Show all presets (including incompatible)" +msgstr "Показати всі налаштування (включаючи несумісні)" + +msgid "Select presets to compare" +msgstr "Виберіть налаштування для порівняння" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" +"Ви можете перейти до поточного активного профілю лише тому, що він був " +"змінений." + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"Перенесіть вибрані параметри з лівого пресета до правого.\n" +"Примітка: Після закриття цього діалогового вікна у вкладках налаштувань буде " +"обрано нові змінені пресети." + +msgid "Transfer values from left to right" +msgstr "Перенесення значень зліва направо" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" +"Якщо увімкнено, цей діалог можна використовувати для перенесення вибраних " +"значень зліва направо." + +msgid "Add File" +msgstr "Додати файл" + +msgid "Set as cover" +msgstr "Встановити як обкладинку" + +msgid "Cover" +msgstr "Обкладинка" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "Ім'я %1% вже існує." + +msgid "Basic Info" +msgstr "Основна інформація" + +msgid "Pictures" +msgstr "Малюнки" + +msgid "Bill of Materials" +msgstr "Відомість матеріалів" + +msgid "Assembly Guide" +msgstr "Посібник зі збирання" + +msgid "Author" +msgstr "Автор" + +msgid "Model Name" +msgstr "Назва моделі" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s Оновлення" + +msgid "A new version is available" +msgstr "Доступна нова версія" + +msgid "Configuration update" +msgstr "Оновлення конфігурації" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "Доступний новий пакет конфігурації, чи хочете ви встановити його?" + +msgid "Description:" +msgstr "Опис:" + +msgid "Configuration incompatible" +msgstr "Несумісність конфігурації" + +msgid "the configuration package is incompatible with current application." +msgstr "пакет конфігурації несумісний із поточною програмою." + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"Пакет конфігурації несумісний із поточною програмою.\n" +"%s оновить пакет конфігурації, інакше він не зможе запуститися" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "Вихід %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "пакет конфігурації несумісний з поточним APP." + +msgid "Configuration updates" +msgstr "Оновлення конфігурації" + +msgid "No updates available." +msgstr "Оновлення відсутні." + +msgid "The configuration is up to date." +msgstr "Конфігурація є актуальною." + +msgid "Obj file Import color" +msgstr "Імпорт кольору файлу OBJ" + +msgid "Specify number of colors:" +msgstr "Вкажіть кількість кольорів:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "Кількість кольорів повинна бути в діапазоні [%d, %d]." + +msgid "Recommended " +msgstr "Рекомендовано " + +msgid "Current filament colors:" +msgstr "Поточні кольори філаменту:" + +msgid "Quick set:" +msgstr "Швидке встановлення:" + +msgid "Color match" +msgstr "Відповідність кольору" + +msgid "Approximate color matching." +msgstr "Приблизне відповідання кольору." + +msgid "Append" +msgstr "Додати" + +msgid "Add consumable extruder after existing extruders." +msgstr "Додати споживчий екструдер після існуючих екструдерів." + +msgid "Reset mapped extruders." +msgstr "Скинути відображені екструдери." + +msgid "Cluster colors" +msgstr "Згрупувати кольори" + +msgid "Map Filament" +msgstr "Відображення філаменту" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"Примітка: Колір вже вибрано. Ви можете вибрати ОК \n" +" щоб продовжити або вручну відкоригувати його." + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"Попередження: Кількість новостворених та \n" +" поточних екструдерів перевищує 16." + +msgid "Ramming customization" +msgstr "Налаштування раммінгу" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"Раммінг означає швидке екструдування безпосередньо перед заміною інструменту " +"в одно-екструдерному принтері ММ. Його мета полягає у правильній формі кінця " +"виведеного філаменту, щоб вона не заважала вставці нового філаменту і може " +"бути знову встановлений пізніше. Ця фаза є важливою, і різні матеріали " +"можуть вимагати різної швидкості екструзії для отримання гарної форми. З " +"цієї причини швидкість екструдування під час раммінгу регулюється.\n" +"\n" +"Це налаштування на рівні експерта, неправильне регулювання, ймовірно, " +"призведе до заклинювання, подрібнення екструдерного колеса до філаменту тощо." + +msgid "Total ramming time" +msgstr "Загальний час швидкої екструзії" + +msgid "s" +msgstr "c" + +msgid "Total rammed volume" +msgstr "Загальний обсяг швидкої екструзії" + +msgid "Ramming line width" +msgstr "Ширина ліній раммінгу" + +msgid "Ramming line spacing" +msgstr "Проміжки між лініями раммінгу" + +msgid "Auto-Calc" +msgstr "Автокалькулятор" + +msgid "Re-calculate" +msgstr "Перерахувати" + +msgid "Flushing volumes for filament change" +msgstr "Обсяги промивання для зміни Філаменту" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Orca буде перераховувати об'єми видавлювання нитки кожного разу, коли колір " +"ниток змінюється. Ви можете вимкнути автоматичний розрахунок у меню Orca " +"Slicer > Параметри" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "Об'єм промивки (мм³) для кожної пари Філаменту." + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "Пропозиція: Об'єм промивання в діапазоні [%d, %d]" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "Множина повинна знаходитися в діапазоні [%.2f, %.2f]" + +msgid "Multiplier" +msgstr "Множина" + +msgid "unloaded" +msgstr "вивантажено" + +msgid "loaded" +msgstr "завантажено" + +msgid "Filament #" +msgstr "Філамент #" + +msgid "From" +msgstr "Від" + +msgid "To" +msgstr "В" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" +"Для виконання цього завдання потрібен Windows Media Player! Бажаєте " +"увімкнути 'Windows Media Player' для вашої операційної системи?" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" +"BambuSource не було правильно зареєстровано для відтворення медіафайлів! " +"Натисніть \"Так\", щоб зареєструвати його повторно. Вас буде сповіщено двічі" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" +"Відсутній компонент BambuSource, зареєстрований для відтворення медіафайлів! " +"Будь ласка, перевстановіть BambuStudio або зверніться за додатковою " +"допомогою." + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" +"Використовується BambuSource з іншої інсталяції, відтворення відео може " +"працювати неправильно! Натисніть \"Так\", щоб виправити це." + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" +"Вашій системі бракує кодеків H.264 для GStreamer, які необхідні для " +"відтворення відео. (Спробуйте встановити пакети gstreamer1.0-plugins-bad або " +"gstreamer1.0-libav, а потім перезапустіть Snapmaker Orca?)" + +msgid "Bambu Network plug-in not detected." +msgstr "Плагін мережі Bambu не виявлено." + +msgid "Click here to download it." +msgstr "Натисніть тут, щоб завантажити його." + +msgid "Login" +msgstr "Логін" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "Пакет конфігурації змінено в попередньому посібнику конфігурації" + +msgid "Configuration package changed" +msgstr "Змінено пакет конфігурації" + +msgid "Toolbar" +msgstr "Панель інструментів" + +msgid "Objects list" +msgstr "Список об'єктів" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "Імпорт геометричних даних із файлів STL/STEP/3MF/OBJ/AMF" + +msgid "⌘+Shift+G" +msgstr "⌘+Shift+G" + +msgid "Ctrl+Shift+G" +msgstr "Ctrl+Shift+G" + +msgid "Paste from clipboard" +msgstr "Вставити з буфера обміну" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "Показати/приховати діалог налаштувань пристроїв 3Dconnexion" + +msgid "Switch table page" +msgstr "Перемкнути сторінку таблиці" + +msgid "Show keyboard shortcuts list" +msgstr "Показати список клавіш" + +msgid "Global shortcuts" +msgstr "Глобальні ярлики" + +msgid "Rotate View" +msgstr "Повернути вигляд" + +msgid "Pan View" +msgstr "Панорамний вигляд" + +msgid "Mouse wheel" +msgstr "Колісок миші" + +msgid "Zoom View" +msgstr "Перегляд масштабу" + +msgid "Shift+A" +msgstr "Shift+A" + +msgid "Shift+R" +msgstr "Shift+R" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"Автоматично орієнтує вибрані об'єкти або всі об'єкти. Якщо вибрано об'єкти, " +"він просто орієнтує обрані. В іншому випадку він будеОрієнтувати всі об'єкти " +"на поточному диску." + +msgid "Shift+Tab" +msgstr "Shift+Tab" + +msgid "Collapse/Expand the sidebar" +msgstr "Згорнути/розгорнути бічну панель" + +msgid "⌘+Any arrow" +msgstr "⌘+будь-яка стрілка" + +msgid "Movement in camera space" +msgstr "Рух у просторі камери" + +msgid "⌥+Left mouse button" +msgstr "⌥+Ліва кнопка миші" + +msgid "Select a part" +msgstr "Виберіть частину" + +msgid "⌘+Left mouse button" +msgstr "⌘+Ліва кнопка миші" + +msgid "Select multiple objects" +msgstr "Вибрати кілька об'єктів" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+будь-яка стрілка" + +msgid "Alt+Left mouse button" +msgstr "Alt+Ліва кнопка миші" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+Ліва кнопка миші" + +msgid "Shift+Left mouse button" +msgstr "Shift+Ліва кнопка миші" + +msgid "Select objects by rectangle" +msgstr "Виділити об'єкти прямокутником" + +msgid "Arrow Up" +msgstr "Стрілка вгору" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Перемістити виділення на 10 мм у позитивному напрямку Y" + +msgid "Arrow Down" +msgstr "Стрілка вниз" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Перемістити виділення на 10 мм у негативному напрямку Y" + +msgid "Arrow Left" +msgstr "Стрілка вліво" + +msgid "Move selection 10 mm in negative X direction" +msgstr "Перемістити виділення на 10 мм у негативному напрямку по осі X" + +msgid "Arrow Right" +msgstr "Стрілка праворуч" + +msgid "Move selection 10 mm in positive X direction" +msgstr "Перемістити виділення на 10 мм у позитивному напрямку X" + +msgid "Shift+Any arrow" +msgstr "Shift+будь-яка стрілка" + +msgid "Movement step set to 1 mm" +msgstr "Крок переміщення встановлено на 1 мм" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "клавіатура 1-9: встановити філамент для об'єкта/деталі" + +msgid "Camera view - Default" +msgstr "Вигляд камери за промовчанням" + +msgid "Camera view - Top" +msgstr "Вигляд камери зверху" + +msgid "Camera view - Bottom" +msgstr "Вигляд камери знизу" + +msgid "Camera view - Front" +msgstr "Вигляд камери - спереду" + +msgid "Camera view - Behind" +msgstr "Вигляд камери - ззаду" + +msgid "Camera Angle - Left side" +msgstr "Кут камери – ліва сторона" + +msgid "Camera Angle - Right side" +msgstr "Кут камери - правий бік" + +msgid "Select all objects" +msgstr "Виділити всі об'єкти" + +msgid "Gizmo move" +msgstr "Рух Gizmo" + +msgid "Gizmo scale" +msgstr "Шкала Gizmo" + +msgid "Gizmo rotate" +msgstr "Поворот Gizmo" + +msgid "Gizmo cut" +msgstr "Виріз Gizmo" + +msgid "Gizmo Place face on bed" +msgstr "Gizmo Покладіть обличчя на стіл" + +msgid "Gizmo SLA support points" +msgstr "Точки підтримки Gizmo SL" + +msgid "Gizmo FDM paint-on seam" +msgstr "Швид, що фарбується Gizmo FDM" + +msgid "Gizmo Text emboss / engrave" +msgstr "Gizmo Текстове тиснення / гравіювання" + +msgid "Zoom in" +msgstr "Приблизити" + +msgid "Zoom out" +msgstr "Віддалити" + +msgid "Switch between Prepare/Preview" +msgstr "Переключення між Підготовка/Попередній перегляд" + +msgid "Plater" +msgstr "Тарілка" + +msgid "Move: press to snap by 1mm" +msgstr "Переміщення: натисніть для переміщення на 1 мм" + +msgid "⌘+Mouse wheel" +msgstr "⌘+Колесо миші" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "Підтримка/Колірне малювання: регулювання радіуса пера" + +msgid "⌥+Mouse wheel" +msgstr "⌥+Колесо миші" + +msgid "Support/Color Painting: adjust section position" +msgstr "Підтримка/кольорове фарбування: регулювання положення секцій" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+Колесо миші" + +msgid "Alt+Mouse wheel" +msgstr "Alt+колесо миші" + +msgid "Gizmo" +msgstr "Gizmo" + +msgid "Set extruder number for the objects and parts" +msgstr "Встановіть номер екструдера для об'єктів та деталей" + +msgid "Delete objects, parts, modifiers " +msgstr "Видалення об'єктів, частин, модифікаторів " + +msgid "Select the object/part and press space to change the name" +msgstr "Виберіть об'єкт/деталь і натисніть пробіл, щоб змінити назву" + +msgid "Mouse click" +msgstr "Клацання миші" + +msgid "Select the object/part and mouse click to change the name" +msgstr "Виберіть об'єкт/деталь і клацніть, щоб змінити ім'я" + +msgid "Objects List" +msgstr "Список об'єктів" + +msgid "Vertical slider - Move active thumb Up" +msgstr "Вертикальний повзунок - рух активного великого пальця вгору" + +msgid "Vertical slider - Move active thumb Down" +msgstr "Вертикальний повзунок - Перемістити активний палець вниз" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "Горизонтальний повзунок - Перемістити активний палець вліво" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "Горизонтальний повзунок - Перемістити активний палець праворуч" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "Увімкнення/вимкнення одношарового режиму вертикального повзунка" + +msgid "On/Off g-code window" +msgstr "Увімкнення/вимкнення вікна g-коду" + +msgid "Move slider 5x faster" +msgstr "Переміщення повзунка в 5 разів швидше" + +msgid "Shift+Mouse wheel" +msgstr "Shift+колесо миші" + +msgid "Horizontal slider - Move to start position" +msgstr "Горизонтальний повзунок - Перемістити в початкове положення" + +msgid "Horizontal slider - Move to last position" +msgstr "Горизонтальний повзунок - Перемістити в останню позицію" + +msgid "Release Note" +msgstr "Примітка до випуску" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "версія %s інформація про оновлення:" + +msgid "Network plug-in update" +msgstr "Оновлення мережевого плагіна" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "" +"Натисніть OK, щоб оновити мережевий плагін під час наступного запуску Orca " +"Slicer." + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "Доступний новий мережевий плагін (%s), чи хочете ви встановити його?" + +msgid "New version of Snapmaker Orca" +msgstr "Нова версія Snapmaker Orca" + +msgid "Skip this Version" +msgstr "Пропустити цю версію" + +msgid "Done" +msgstr "Виконано" + +msgid "resume" +msgstr "продовжити" + +msgid "Resume Printing" +msgstr "Відновити друк" + +msgid "Resume Printing(defects acceptable)" +msgstr "Відновлення друку (прийнятно дефекти)" + +msgid "Resume Printing(problem solved)" +msgstr "Відновлення друку (проблема вирішена)" + +msgid "Stop Printing" +msgstr "Зупинити друк" + +msgid "Check Assistant" +msgstr "Перевірка помічника" + +msgid "Filament Extruded, Continue" +msgstr "Філамент витиснутий, Продовжити" + +msgid "Not Extruded Yet, Retry" +msgstr "Ще не витиснуто філамент, Повторити" + +msgid "Finished, Continue" +msgstr "Завершено, Продовжити" + +msgid "Load Filament" +msgstr "Завантажте філамент" + +msgid "Filament Loaded, Resume" +msgstr "Філамент завантажений, Відновити" + +msgid "View Liveview" +msgstr "Перегляд в реальному часі" + +msgid "Confirm and Update Nozzle" +msgstr "Підтвердити і оновити сопло" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "Помилка з’єднання LAN (Надсилання файлу друку)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "" +"Крок 1: Переконайтеся, що Snapmaker Orca і ваш принтер знаходяться в одній " +"локальній мережі." + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"Крок 2, якщо наведені нижче IP і код доступу відрізняються від " +"фактичнихзначень \n" +"на вашому принтері, будь ласка, виправте їх." + +msgid "IP" +msgstr "IP" + +msgid "Access Code" +msgstr "Код доступу" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "Де знайти IP-адресу та код доступу вашого принтера?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" +"Крок 3: Виконайте пінг до IP-адреси для перевірки втрат пакетів та затримки." + +msgid "Test" +msgstr "Тест" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP-адреса та доступний код перевірено! Ви можете закрити вікно" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "З’єднання не вдалося, будь ласка, перевірте IP-адресу та доступний код" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"З’єднання не вдалося! Якщо ваша IP-адреса та доступний код вірні, \n" +"перейдіть до кроку 3 для вирішення проблем з мережею" + +msgid "Model:" +msgstr "Модель:" + +msgid "Serial:" +msgstr "Серійний номер:" + +msgid "Version:" +msgstr "Версія:" + +msgid "Update firmware" +msgstr "Оновити прошивку" + +msgid "Beta version" +msgstr "Бета-версія" + +msgid "Latest version" +msgstr "Остання версія" + +msgid "Updating" +msgstr "Оновлення" + +msgid "Updating failed" +msgstr "Оновлення не вдалося" + +msgid "Updating successful" +msgstr "Успішне оновлення" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "" +"Ви впевнені, що хочете оновитися? Це займе близько 10 хвилин. Не вимикайте " +"живлення під час оновлення принтера." + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"Було виявлено важливе оновлення, яке необхідно запустити перед друком. Ви " +"хочете оновити зараз? Ви також можете оновити пізніше з розділу ‘Оновити " +"прошивку’." + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"Версія прошивки незвичайна. Потрібно виправити та оновити перед друком. Ви " +"хочете оновити зараз? Ви також можете оновити пізніше на принтері або " +"оновлення при наступному запуску програми." + +msgid "Extension Board" +msgstr "Плата розширення" + +msgid "Saving objects into the 3mf failed." +msgstr "Збереження об'єктів у 3mf не вдалося." + +msgid "Only Windows 10 is supported." +msgstr "Підтримується лише Windows 10." + +msgid "Failed to initialize the WinRT library." +msgstr "Не вдалося ініціалізувати бібліотеку WinRT." + +msgid "Exporting objects" +msgstr "Експорт об'єктів" + +msgid "Failed loading objects." +msgstr "Не вдалося завантажити об'єкти." + +msgid "Repairing object by Windows service" +msgstr "Відновлення об'єкта службою Windows" + +msgid "Repair failed." +msgstr "Ремонт не вдалося." + +msgid "Loading repaired objects" +msgstr "Завантаження відремонтованих об'єктів" + +msgid "Exporting 3mf file failed" +msgstr "Експорт файлу 3mf не вдалося" + +msgid "Import 3mf file failed" +msgstr "Імпорт файлу 3mf не вдалося" + +msgid "Repaired 3mf file does not contain any object" +msgstr "Відремонтований файл 3mf не містить жодного об'єкта" + +msgid "Repaired 3mf file contains more than one object" +msgstr "Відремонтований файл 3mf містить більше одного об'єкта" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "Відремонтований файл 3mf не містить жодного тома" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "Відремонтований файл 3mf містить більше одного тома" + +msgid "Repair finished" +msgstr "Ремонт завершено" + +msgid "Repair canceled" +msgstr "Ремонт скасовано" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "Копіювання %1% у %2% не вдалося: %3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "Необхідність перевірки незбережених змін перед оновленнямконфігурації." + +msgid "Configuration package: " +msgstr "Пакет конфігурації: " + +msgid " updated to " +msgstr " оновлено до " + +msgid "Open G-code file:" +msgstr "Відкрийте файл G-коду:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "" +"Один об'єкт має порожній початковий шар і не може бути надрукований. Будь " +"ласка, обріжте нижні або опори, що включають." + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "Об'єкт не може бути надрукований для порожнього шару між %1% та %2%." + +#, boost-format +msgid "Object: %1%" +msgstr "Об'єкт: %1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "" +"Можливо, частини об'єкта на цій висоті надто тонкі, або об'єкт має \n" +"несправна сітка" + +msgid "No object can be printed. Maybe too small" +msgstr "Жодний об'єкт не може бути надрукований. Можливо, занадто маленький" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"Не вдалося згенерувати g-код для неприпустимого G-коду користувача. \n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "" +"Будь ласка, перевірте G-код користувача або використовуйте за замовчуванням " +"G-код." + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "Генерація G-коду: шар %1%" + +msgid "Inner wall" +msgstr "Внутрішня стінка" + +msgid "Outer wall" +msgstr "Зовнішня стінка" + +msgid "Overhang wall" +msgstr "Нависаюча стінка" + +msgid "Sparse infill" +msgstr "Заповнення" + +msgid "Internal solid infill" +msgstr "Внутрішнє суцільне заповнення" + +msgid "Top surface" +msgstr "Верхній шар" + +msgid "Bottom surface" +msgstr "Нижня поверхня" + +msgid "Internal Bridge" +msgstr "Внутрішній міст" + +msgid "Gap infill" +msgstr "Заповнення пропусків" + +msgid "Support interface" +msgstr "Інтерфейс підтримки" + +msgid "Support transition" +msgstr "Годтримка переходу" + +msgid "Multiple" +msgstr "Кілька" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "" +"Не вдалося обчислити ширину лінії %1%. Неможливо отримати значення \"%2%\" " + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" +"Неправильний інтервал, переданий до Flow::with_spacing(), перевірте висоту " +"шару та ширину екструзії" + +msgid "undefined error" +msgstr "невизначена помилка" + +msgid "too many files" +msgstr "занадто багато файлів" + +msgid "file too large" +msgstr "занадто великий файл" + +msgid "unsupported method" +msgstr "непідтримуваний метод" + +msgid "unsupported encryption" +msgstr "непідтримуване шифрування" + +msgid "unsupported feature" +msgstr "функція, що не підтримується" + +msgid "failed finding central directory" +msgstr "не вдалося знайти центральний каталог" + +msgid "not a ZIP archive" +msgstr "не ZIP-архів" + +msgid "invalid header or corrupted" +msgstr "недійсний або пошкоджений заголовок" + +msgid "unsupported multidisk" +msgstr "непідтримуваний мультидиск" + +msgid "decompression failed" +msgstr "декомпресія не вдалася" + +msgid "compression failed" +msgstr "збій стиснення" + +msgid "unexpected decompressed size" +msgstr "несподіваний розмір розпакованого файлу" + +msgid "CRC check failed" +msgstr "Перевірка CRC не вдалася" + +msgid "unsupported central directory size" +msgstr "непідтримуваний розмір центрального каталогу" + +msgid "allocation failed" +msgstr "не вдалося виділити" + +msgid "file open failed" +msgstr "не вдалося відкрити файл" + +msgid "file create failed" +msgstr "не вдалося створити файл" + +msgid "file write failed" +msgstr "помилка запису файлу" + +msgid "file read failed" +msgstr "читання файлу не вдалося" + +msgid "file close failed" +msgstr "закриття файлу не вдалося" + +msgid "file seek failed" +msgstr "пошук файлу не вдалося" + +msgid "file stat failed" +msgstr "збій стану файлу" + +msgid "invalid parameter" +msgstr "неприпустимий параметр" + +msgid "invalid filename" +msgstr "неприпустиме ім'я файлу" + +msgid "buffer too small" +msgstr "надто маленький буфер" + +msgid "internal error" +msgstr "внутрішня помилка" + +msgid "file not found" +msgstr "файл не знайдено" + +msgid "archive too large" +msgstr "великий архів" + +msgid "validation failed" +msgstr "валідація не пройшла" + +msgid "write callback failed" +msgstr "збій зворотного виклику запису" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "" +"%1% знаходиться надто близько до забороненої зони, можливі зіткнення при " +"друку." + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% знаходиться надто близько до інших, що може призвести до зіткнень." + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% занадто високий, і можуть виникнути зіткнення." + +msgid " is too close to others, there may be collisions when printing." +msgstr " занадто близько до інших, під час друку можливі зіткнення." + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "" +" знаходиться надто близько до зони відчуження, при друку можуть виникати " +"колізії." + +msgid "Prime Tower" +msgstr "Prime Tower" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr " залишається близько до інших, що може призвести до зіткнення.\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "" +" знаходиться надто близько до зони відчуження, що призведе до зіткнень.\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"Не можна друкувати кілька ниток, які мають значну різницю в температурі " +"разом. В іншому випадку екструдер та сопло можуть бути заблоковані або " +"пошкоджені під час друку" + +msgid "No extrusions under current settings." +msgstr "Немає екструзій під час поточних налаштувань." + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "" +"Плавний режим таймлапсу не підтримується, коли послідовність \"по об'єкт\" " +"увімкнено." + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "" +"Будь ласка, виберіть послідовність друку \"По об'єкту\" для друку кілька " +"об'єктів у режим спіральної вази." + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "" +"Режим спіральної вази не працює, якщо об'єкт містить більше одногоматеріалу." + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "Об'єкт %1% перевищує максимальну висоту об'єму друку." + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "" +"Хоча сам об'єкт %1% вписується в об'єм збірки, його останній шар перевищує " +"максимальну висоту об'єму друку." + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "" +"Можливо, ви захочете зменшити розмір моделі або змінити поточні налаштування " +"друку і спробувати ще раз." + +msgid "Variable layer height is not supported with Organic supports." +msgstr "Змінна висота шару не підтримується з органічними підтримками." + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" +"Використання різних діаметрів насадок та різних діаметрів філаментів не " +"допускається, коли увімкнено вежу підготовки." + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"Вежа протирання в даний момент підтримується лише з використанням відносної " +"адресації екструдера (use_relative_e_distances=1)." + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" +"Запобігання витіканню з увімкненою вежею підготовки в даний момент не " +"підтримується." + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"Вежа підготовки в даний момент підтримується лише для кодів Marlin, RepRap/" +"Sprinter, RepRapFirmware і Repetier G-code." + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "Під час друку \"По об'єкту\" праймер не підтримується." + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "" +"Основна вежа не підтримується при включеній адаптивній висоті шару. Для " +"цього потрібно, щоб усі об'єкти мали однакову висоту шару." + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "Основна вежа вимагає, щоб «опорний зазор» був крадений висотою шару" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "Основна башта вимагає, щоб усі об'єкти мали однакову висоту шару" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "" +"Основна вежа вимагає, щоб усі об'єкти друкувалися на однаковомукількості " +"шарів плоту" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "" +"Основна вежа вимагає, щоб усі об'єкти були розрізані з однаковоювисотою шару." + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "" +"Основна башта підтримується лише в тому випадку, якщо всі об'єкти " +"маютьоднакову змінну висоту шару" + +msgid "Too small line width" +msgstr "Надто маленька ширина лінії" + +msgid "Too large line width" +msgstr "Занадто велика ширина лінії" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "" +"Прайм-тауер вимагає, щоб підтримка мала однакову висоту шару з об'єктом." + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "" +"Діаметр наконечника органічного опорного дерева не повинен бути меншим за " +"ширину екструзії опорного матеріалу." + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "" +"Діаметр гілки органічної опори не повинен бути меншим за 2x ширину екструзії " +"опорного матеріалу." + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "" +"Діаметр органічної опорної гілки не повинен бути меншим за діаметр верхівки " +"опорного дерева." + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "" +"Засоби підтримки використовуються, але підтримка не включена.Увімкніть " +"підтримку." + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "Висота шару не може перевищувати діаметр сопла" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"Відносна адресація екструдера вимагає скидання позиції екструдера на кожному " +"шарі, щоб запобігти втраті точності обчислень з плаваючою комою. Додайте " +"\"G92 E0\" до layer_gcode." + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"У before_layer_gcode знайдено \"G92 E0\", що несумісне з абсолютною " +"адресацією екструдера." + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "" +"У layer_gcode знайдено \"G92 E0\", що несумісне з абсолютною адресацією " +"екструдера." + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "Плита %d: %s не підтримує філамент %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" +"Занадто низька швидкість ривка може призвести до артефактів на вигнутих " +"поверхнях" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"Налаштування ривка перевищує максимальний ривок принтера (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca автоматично обмежує швидкість ривка, щоб вона не перевищувала " +"можливості принтера.\n" +"Ви можете змінити налаштування максимального ривка у конфігурації принтера, " +"щоб отримати вищу швидкість." + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"Налаштування прискорення перевищує максимальне прискорення принтера " +"(machine_max_acceleration_extruding).\n" +"Orca автоматично обмежує швидкість прискорення, щоб вона не перевищувала " +"можливості принтера.\n" +"Ви можете змінити значення machine_max_acceleration_extruding у конфігурації " +"принтера, щоб отримати вищу швидкість." + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"Налаштування прискорення руху перевищує максимальне прискорення руху " +"принтера (machine_max_acceleration_travel).\n" +"Orca автоматично обмежує швидкість прискорення руху, щоб вона не " +"перевищувала можливості принтера.\n" +"Ви можете змінити значення machine_max_acceleration_travel у конфігурації " +"принтера, щоб отримати вищу швидкість." + +msgid "Generating skirt & brim" +msgstr "Створення спідниці та кайми" + +msgid "Exporting G-code" +msgstr "Експорт G-code" + +msgid "Generating G-code" +msgstr "Генерація G-code" + +msgid "Failed processing of the filename_format template." +msgstr "Не вдалося обробити шаблон filename_format." + +msgid "Printable area" +msgstr "Область друку" + +msgid "Bed exclude area" +msgstr "Площа виключення столу" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"Недрукована область у площині XY. Наприклад, у принтерах серії X1 " +"використовується передня панель лівий кут для обрізання нитки під час " +"змінинитки. Площа виражається як багатокутник по точках у такому форматі: " +"\"XxY, XxY, ...\"." + +msgid "Bed custom texture" +msgstr "Текстура користувача столу" + +msgid "Bed custom model" +msgstr "Стіл індивідуальної моделі" + +msgid "Elephant foot compensation" +msgstr "Компенсація слонової ноги" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "Усадка початкового шару на столі для компенсації ефекту слонової ноги" + +msgid "Elephant foot compensation layers" +msgstr "Шари компенсації слонячої стопи" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"Кількість шарів, на яких буде активна компенсація \"слонової стопи\". Перший " +"шар буде стиснуто на значення компенсації \"слонової стопи\", наступні шари " +"будуть лінійно стискатися менше, аж до шару, вказаного цим значенням." + +msgid "layers" +msgstr "шари" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "" +"Висота нарізки для кожного шару. Найменша висота шару означає більш точний " +"друк, але більше часу на друк" + +msgid "Printable height" +msgstr "Висота друку" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "Максимальна висота друку, яка обмежена механізмом принтера" + +msgid "Preferred orientation" +msgstr "Бажана орієнтація" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "Автоматичне орієнтування stl за віссю Z під час першого імпорту" + +msgid "Printer preset names" +msgstr "Імена налаштувань принтера" + +msgid "Use 3rd-party print host" +msgstr "Використовувати сторонній хост для друку" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "Дозволяє керувати принтером BambuLab через сторонні хости друку" + +msgid "Hostname, IP or URL" +msgstr "Ім'я хоста, IP або URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca може завантажувати файли G-коду на хост принтера. Це поле " +"повинно містити ім'я хоста, IP-адресу або URL-адресу екземпляра вузла " +"принтера. Вузол друку за HAProxy з увімкненою базовою авторизацією можна " +"отримати доступ, ввівши користувача ім'я та пароль в URL у наступному " +"форматі: https://username:\n" +"password@your-octopi-address/" + +msgid "Device UI" +msgstr "Інтерфейс користувача" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "" +"Вкажіть URL інтерфейсу користувача пристрою, якщо він не збігається з " +"print_host" + +msgid "API Key / Password" +msgstr "Ключ API / Пароль" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca може завантажувати файли G-коду на хост принтера. Це поле " +"повинно утримувати \n" +"API-ключ або пароль, необхідний для автентифікації." + +msgid "Name of the printer" +msgstr "Назва принтера" + +msgid "HTTPS CA File" +msgstr "Файл HTTPS CA" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"Для HTTPS-з'єднань OctoPrint можна вказати файл сертифіката ЦС користувача, " +"у форматі crt/pem. Якщо залишити порожнім, за замовчуванням " +"використовуватиметься сховище сертифікатів ЦС ОС." + +msgid "User" +msgstr "Користувач" + +msgid "Password" +msgstr "Пароль" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "Ігнорування перевірок відкликання сертифікатів HTTPS" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"Ігнорування перевірок відкликання сертифікатів HTTPS у разі відсутності або " +"відключення від мережі точки розповсюдження. Можна увімкнути цю опцію для " +"підписання сертифікатів під час невдалого підключення." + +msgid "Names of presets related to the physical printer" +msgstr "Назви налаштувань, пов'язаних з фізичним принтером" + +msgid "Authorization Type" +msgstr "Тип авторизації" + +msgid "API key" +msgstr "Ключ API" + +msgid "HTTP digest" +msgstr "HTTP-дайджест" + +msgid "Avoid crossing wall" +msgstr "Уникати перетину стінок" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "" +"Об'їжджати та уникати проїзду через стінку, що може призвести до утворенню " +"плям на поверхні" + +msgid "Avoid crossing wall - Max detour length" +msgstr "Уникати перетину стінки - Максимальна довжина об'їзду" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"Максимальна відстань об'їзду для уникнення перетину стінки. Не об'їжджати, " +"якщо відстань об'їзду більша, ніж це значення. Довжина об'їзду може бути " +"задана або як абсолютне значення, або як відсоток (наприклад, 50%) від " +"прямого шляху руху. Нуль для відключення" + +msgid "mm or %" +msgstr "мм або %" + +msgid "Other layers" +msgstr "Інші шари" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "" +"Температура шару для всіх шарів, крім першого. Значення 0 означає філаментне " +"підтримує друк на холодному столі" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "" +"Температура шару для всіх шарів, крім початкового. Значення 0 означає \n" +"Філамент не підтримує друк на інженерній пластині" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "" +"Температура шару для всіх шарів, крім початкового. Значення 0 означає \n" +"Філамент не підтримує друк на високотемпературній пластині" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"Температура шару для всіх шарів, крім початкового. Значення 0 означає \n" +"Філамент не підтримує друк на текстурованій пластині PEI" + +msgid "Initial layer" +msgstr "Перший шар" + +msgid "Initial layer bed temperature" +msgstr "Температура першого шару" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "" +"Температура першого шару. Значення 0 означає, що філамент не підтримує друк " +"на холодному столі" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "" +"Температура першого шару. Значення 0 означає, що філамент не підтримує друк " +"на інженерному столі" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "" +"Температура першого шару. Значення 0 означає, що філамент не підтримує друк " +"на високотемпературному столі" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "" +"Температура першого шару. Значення 0 означає, що філамент не підтримує друк " +"на текстурованій пластині PEI" + +msgid "Bed types supported by the printer" +msgstr "Типи ліжок, які підтримує принтер" + +msgid "Smooth Cool Plate" +msgstr "" + +msgid "Engineering Plate" +msgstr "Інженерна пластина" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "Послідовність друку першого шару" + +msgid "Other layers print sequence" +msgstr "Послідовність друку інших шарів" + +msgid "The number of other layers print sequence" +msgstr "Кількість шарів для друку в іншій послідовності" + +msgid "Other layers filament sequence" +msgstr "Послідовність філаменту для інших шарів" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "Типи ліжок, які підтримує принтер" + +msgid "Bottom shell layers" +msgstr "Суцільних шарів знизу" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"Це кількість суцільних шарів нижньої оболонки, включаючи нижній " +"поверхневийшар. Якщо товщина, розрахована за цим значенням, менша за товщину " +"нижньої оболонки, то шари нижньої оболонки будуть збільшені" + +msgid "Bottom shell thickness" +msgstr "Товщина нижньої частини оболонки" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"Кількість нижніх суцільних шарів збільшується при розрізанні, якщо товщина, " +"обчислена шарами нижньої оболонки, тонше, ніж це значення. Це дозволяє " +"уникнути занадто тонкої оболонки при невеликій висоті шару. 0 означає, що ця " +"настройка вимкнена і товщина нижньої оболонки повністю обмеженашарами " +"нижньої оболонки" + +msgid "Apply gap fill" +msgstr "Заповнення проміжків" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" +"Вмикає заповнення проміжків для вибраних поверхонь. Мінімальну довжину " +"проміжку, який буде заповнено, можна контролювати за допомогою опції " +"\"Відфільтрувати крихітні проміжки\" нижче.\n" +"\n" +"Параметри:\n" +"1. Скрізь: Застосовує заповнення проміжків до верхньої, нижньої та " +"внутрішніх суцільних поверхонь\n" +"2. Верхня та нижня поверхні: Застосовує заповнення лише до верхньої та " +"нижньої поверхонь\n" +"3. Ніде: Вимикає заповнення проміжків\n" + +msgid "Everywhere" +msgstr "Всюди" + +msgid "Top and bottom surfaces" +msgstr "Верхня та нижня поверхні" + +msgid "Nowhere" +msgstr "Ніде" + +msgid "Force cooling for overhang and bridge" +msgstr "Силове охолодження для звису та мосту" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "" +"Увімкніть цю опцію, щоб оптимізувати швидкість вентилятора охолодженнядеталі " +"для звису та мосту, щоб покращити охолодження" + +msgid "Fan speed for overhang" +msgstr "Швидкість вентилятора для звису" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"Примусити вентилятор охолодження деталі працювати на цій швидкості під час " +"друку мостів або нависаючої стінки яка має великий кут нахилу. Примусове " +"охолодження для нависань та мостів може покращити якість друку для таких " +"деталей" + +msgid "Cooling overhang threshold" +msgstr "Поріг охолоджувального звису" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"Коли ступінь звису друкарської деталі перевищує це значення, примусово " +"Встановіть вентилятор охолодження на певну швидкість. Виражається в " +"відсотках, що вказують на ширину лінії без опори від нижнього шару. .0%% " +"означає примусове охолодження всього зовнішньої стінки незалежно від ступеня " +"звису" + +msgid "Bridge infill direction" +msgstr "Напрямок заповнення мосту" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"Перевизначення кута моста. Якщо залишити значення рівним нулю, кут моста " +"обчислюватиметься автоматично. Інакше наданий кут використовуйте для " +"зовнішніх мостів. Використовуйте 180 ° для нульового кута." + +msgid "Bridge density" +msgstr "Щільність мосту" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "" +"Щільність зовнішніх мостів. 100% означає суцільний міст. Значення по за " +"замовчуванням - 100%." + +msgid "Bridge flow ratio" +msgstr "Потік мосту" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "" +"Трохи зменшіть це значення (наприклад, 0.9), щоб зменшити кількість " +"матеріалу для мосту, щоб покращити провисання" + +msgid "Internal bridge flow ratio" +msgstr "Коефіцієнт потоку для внутрішніх мостів" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" +"Це значення визначає товщину внутрішнього мостовидного шару. Це перший шар " +"над внутрішнім заповненням. Зменшіть це значення (наприклад, до 0,9), щоб " +"покращити якість поверхні над внутрішнім заповненням." + +msgid "Top surface flow ratio" +msgstr "Коефіцієнт потоку верхньої поверхні" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "" +"Цей фактор впливає на кількість матеріалу для заповнення верхнього " +"твердоготіла. Можна трохи зменшити його, щоб отримати гладку " +"шорсткістьповерхні" + +msgid "Bottom surface flow ratio" +msgstr "Коефіцієнт потоку нижньої поверхні" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "" +"Цей фактор впливає на кількість матеріалу для заповнення нижнього " +"твердоготіла" + +msgid "Precise wall" +msgstr "Точна стінка" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" +"Підвищуйте точність оболонки, регулюючи відстань між зовнішніми стінками. Це " +"також покращує консистенцію шару.\n" +"Примітка: Цей параметр набуде чинності, лише якщо послідовність стінок " +"налаштовано як Внутрішня-зовнішня" + +msgid "Only one wall on top surfaces" +msgstr "Тільки одна стінка на верхніх поверхнях" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "" +"Використовуйте лише одну стінку на плоскій верхній поверхні, щоб надати " +"більше місця для верхнього масиву заповнення" + +msgid "One wall threshold" +msgstr "Поріг в одну стіну" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"Якщо потрібно надрукувати верхню поверхню, яка частково закрита іншим шаром, " +"вона не буде врахована у верхньому шарі, де її ширина менша за це значення. " +"Це може бути корисним для того, щоб не дозволити спрацьовуванню ефекту " +"\"один периметр зверху\" на поверхні, яка має бути покрита лише периметрами. " +"Це значення може бути в мм або у % ширини екструзії периметра.\n" +"Попередження: Якщо цей параметр увімкнено, можуть створюватися артефакти, " +"якщо на наступному шарі є якісь тонкі об'єкти, наприклад, літери. Встановіть " +"цей параметр на 0, щоб усунути ці артефакти." + +msgid "Only one wall on first layer" +msgstr "Тільки одна стінка на першому шарі" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "" +"Використовувати лише одну стінку на першому шарі, щоб надати більше місця " +"структурі нижнього заповнення" + +msgid "Extra perimeters on overhangs" +msgstr "Додаткові периметри при нависаннях" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "" +"Створіть додаткові лінії друку по периметру над крутими виступами та " +"ділянками, де неможливо закріпити мости. " + +msgid "Reverse on odd" +msgstr "Зворотній на непарних" + +msgid "Overhang reversal" +msgstr "Реверс звису" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"Екструдуйте периметри, які мають деталі над звисом, у зворотному напрямку на " +"непарних шарах. Таке чергування шаблонів може значно покращити круті " +"нависання.\n" +"\n" +"Це налаштування також може допомогти зменшити деформацію деталі завдяки " +"зменшенню напружень у стінках деталі." + +msgid "Reverse only internal perimeters" +msgstr "Реверс тільки внутрішніх периметрах" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"Застосовуйте логіку зворотних периметрів тільки до внутрішніх периметрів. \n" +"\n" +"Це налаштування значно зменшує напруження деталі, оскільки вони " +"розподіляються в різних напрямках. Це повинно зменшити викривлення деталі, " +"зберігаючи при цьому якість зовнішньої стінки. Ця функція може бути дуже " +"корисною для матеріалів, схильних до деформації, таких як ABS/ASA, а також " +"для еластичних ниток, таких як TPU і Silk PLA. Вона також може допомогти " +"зменшити деформацію на пливучих ділянках над опорами.\n" +"\n" +"Щоб це налаштування було найефективнішим, рекомендується встановити Поріг " +"реверсу на 0, щоб усі внутрішні стінки друкувалися в поперемінному напрямку " +"на непарних шарах незалежно від ступеня їхнього вильоту." + +msgid "Bridge counterbore holes" +msgstr "Отвори для мостових стійок" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"Ця опція створює перемички для зенкованих отворів, що дозволяє друкувати їх " +"без підтримки. Доступні наступні режими\n" +"1. Ніякий: Перемичка не створюється.\n" +"2. Частково з мостом: Буде перекрита лише частина непідтримуваної ділянки.\n" +"3. Жертвенний шар: Створюється повний шар мостового перекриття." + +msgid "Partially bridged" +msgstr "Частково перекрито" + +msgid "Sacrificial layer" +msgstr "Жертовний пласт" + +msgid "Reverse threshold" +msgstr "Зворотний поріг" + +msgid "Overhang reversal threshold" +msgstr "Поріг розвороту звису" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"Кількість мм вильоту, який повинен бути для того, щоб розворот вважався " +"корисним. Може бути % від ширини периметра.\n" +"Значення 0 вмикає розворот на всіх непарних шарах незалежно від цього." + +msgid "Classic mode" +msgstr "Класичний режим" + +msgid "Enable this option to use classic mode" +msgstr "Увімкнути цей параметр для використання класичного режиму" + +msgid "Slow down for overhang" +msgstr "Уповільнення звису" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "" +"Увімкнути цей параметр для уповільнення друку при різних ступенях звису" + +msgid "Slow down for curled perimeters" +msgstr "Уповільнення для нависаючих периметрів" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "" +"Увімкніть цей параметр, щоб сповільнити друк у зонах, де можуть існувати " +"потенційно нависаючі периметри" + +msgid "mm/s or %" +msgstr "мм/с або %" + +msgid "External" +msgstr "Зовнішні" + +msgid "Speed of bridge and completely overhang wall" +msgstr "Швидкість мосту і периметр, що повністю звисає" + +msgid "mm/s" +msgstr "мм/с" + +msgid "Internal" +msgstr "Внутрішні" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"Швидкість внутрішнього мосту. Якщо значення виражено у відсотках, воно буде " +"розраховано на основі bridge_speed. Значення за замовчуванням - 150%." + +msgid "Brim width" +msgstr "Ширина кайми" + +msgid "Distance from model to the outermost brim line" +msgstr "Відстань від моделі до крайньої лінії кайми" + +msgid "Brim type" +msgstr "Тип кайми" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"Це керує формуванням поля на зовнішній та/або внутрішній сторонімоделей. " +"Auto означає, що ширина поля аналізується та обчислюється автоматично." + +msgid "Brim-object gap" +msgstr "Зазор між каймою та об'єктом" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "" +"Зазор між внутрішньою лінією кайми та предметом може сприяти легшому зняттю " +"кайми" + +msgid "Brim ears" +msgstr "Кайма вушка" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "Робить кайму вушка лише на гострих краях моделі." + +msgid "Brim ear max angle" +msgstr "Максимальний кут для кайми вушка" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"Максимальний кут, під яким з'являється кайма вушко. \n" +"Якщо встановлено на 0, то край не буде створено. \n" +"Якщо встановлено ~180, то край буде створено на всіх ділянках, окрім прямих." + +msgid "Brim ear detection radius" +msgstr "Кайма вушка радіус виявлення" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"Геометрія буде оброблена перед детектуванням гострих кутів. Цей параметр " +"вказує мінімальну довжину відхилення для обробки.\n" +"0 для вимкнення" + +msgid "Compatible machine" +msgstr "Сумісна машина" + +msgid "upward compatible machine" +msgstr "висхідна сумісна машина" + +msgid "Compatible machine condition" +msgstr "Сумісний стан машини" + +msgid "Compatible process profiles" +msgstr "Сумісні профілі процесів" + +msgid "Compatible process profiles condition" +msgstr "Стан сумісних профілів процесів" + +msgid "Print sequence, layer by layer or object by object" +msgstr "Послідовність друку, шар за шаром або об'єкт за об'єктом" + +msgid "By layer" +msgstr "За шаром" + +msgid "By object" +msgstr "По об'єкту" + +msgid "Intra-layer order" +msgstr "Внутрішній порядок шарів" + +msgid "Print order within a single layer" +msgstr "Друк замовлення в один шар" + +msgid "As object list" +msgstr "Як перелік об'єктів" + +msgid "Slow printing down for better layer cooling" +msgstr "Повільний друк для кращого охолодження шару" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"Увімкніть цю опцію, щоб уповільнити швидкість друку та зробити кінцевий час " +"шару не коротше порога часу шару в \"Max fan speed threshold\", щоб шар міг " +"охолоджуватися довше. Це може покращити якість охолодження голок та дрібних " +"деталей" + +msgid "Normal printing" +msgstr "Звичайний друк" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "" +"Прискорення за умовчанням як для звичайного друку, так і для переміщення за " +"виключенням початкового шару" + +msgid "mm/s²" +msgstr "мм/с²" + +msgid "Default filament profile" +msgstr "Профіль стандартного філаменту" + +msgid "Default filament profile when switch to this machine profile" +msgstr "Профіль стандартного філаменту при перемиканні на цей профіль машини" + +msgid "Default process profile" +msgstr "Профіль за промовчанням" + +msgid "Default process profile when switch to this machine profile" +msgstr "Профіль за промовчанням при перемиканні на цей профіль машини" + +msgid "Activate air filtration" +msgstr "Активувати повітряну фільтрацію" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "" +"Активуйте для кращої фільтрації повітря. Команда G-коду: M106 P3 S(0-255)" + +msgid "Fan speed" +msgstr "Швидкість вентилятора" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "" +"Швидкість вентилятора відсмоктування під час друку. Ця швидкість перезапише " +"швидкість у користувацькому G-коді філаменту" + +msgid "Speed of exhaust fan after printing completes" +msgstr "Швидкість витяжного вентилятора після завершення друку" + +msgid "No cooling for the first" +msgstr "Немає охолодження для першого шару" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"Вимкнути всі вентилятори охолодження для певної кількості перших шарів. " +"Вентилятор охолодження першого шару зазвичай вимкнений, щоб покращити " +"прилипання до робочої поверхні" + +msgid "Don't support bridges" +msgstr "Не підтримувати мости" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"Не підтримуйте всю площу мосту, тому що підтримка буде дуже великою.Міст\n" +"зазвичай можна друкувати безпосередньо без підтримки, якщо не дуже довго" + +msgid "Thick bridges" +msgstr "Товсті мости" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"Якщо ця функція увімкнена, мости більш надійні, можуть з'єднувати " +"великівідстань, але можуть виглядати гірше. Якщо відключити, мости " +"виглядають краще,Але надійні лише для більш коротких мостових відстаней." + +msgid "Thick internal bridges" +msgstr "Товсті внутрішні мости" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"Якщо увімкнено, будуть використовуватися товсті внутрішні мости. Зазвичай " +"рекомендується вмикати цю функцію. Однак, якщо ви використовуєте великі " +"сопла, краще вимкнути її." + +msgid "Don't filter out small internal bridges (beta)" +msgstr "Не відфільтровувати маленькі внутрішні мости (бета)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"Ця опція може допомогти зменшити подушку на верхніх поверхнях у сильно " +"нахилених або вигнутих моделях.\n" +"\n" +"За замовчуванням невеликі внутрішні містки відфільтровуються, а внутрішня " +"суцільна заливка друкується безпосередньо поверх внутрішнього заповнення. У " +"більшості випадків це добре працює, прискорюючи друк без надто великого " +"компромісу з якістю верхньої поверхні.\n" +"\n" +"Однак у сильно нахилених або вигнутих моделях, особливо якщо " +"використовується надто низька щільність внутрішнього заповнення, це може " +"призвести до скручування непідтримуваного суцільного заповнення, що " +"спричиняє \"подушку\".\n" +"\n" +"Увімкнення цього параметра призведе до друку внутрішнього мостового шару над " +"злегка непідтримуваним внутрішнім суцільним заповненням. Наведені нижче " +"опції контролюють кількість фільтрації, тобто кількість створених внутрішніх " +"мостів.\n" +"\n" +"Вимкнено - вимикає цей параметр. Це поведінка за замовчуванням, яка добре " +"працює у більшості випадків.\n" +"\n" +"Обмежена фільтрація - створює внутрішні мости на сильно нахилених поверхнях, " +"уникаючи створення зайвих проміжних мостів. Це добре працює для більшості " +"складних моделей.\n" +"\n" +"Без фільтрації - створює внутрішні мости на кожному потенційному " +"внутрішньому виступі. Цей параметр корисний для моделей з сильно нахиленою " +"верхньою поверхнею. Однак, у більшості випадків він створює занадто багато " +"непотрібних перемичок." + +msgid "Disabled" +msgstr "Вимкнено" + +msgid "Limited filtering" +msgstr "Обмежена фільтрація" + +msgid "No filtering" +msgstr "Без фільтрації" + +msgid "Max bridge length" +msgstr "Максимальна довжина мосту" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"Макс. довжина мостів, які не потребують підтримки. Встановіть значення 0, " +"якщо потрібна підтримка всіх мостів, і дуже велике значення, якщо підтримка " +"мостів не потрібна." + +msgid "End G-code" +msgstr "Завершальний G-code" + +msgid "End G-code when finish the whole printing" +msgstr "Завершальний G-code, коли закінчити весь друк" + +msgid "Between Object Gcode" +msgstr "Між G-кодами об’єктів" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" +"Вставити G-код між об’єктами. Цей параметр буде врахований лише тоді, коли " +"ви друкуєте свої моделі по об’єктах" + +msgid "End G-code when finish the printing of this filament" +msgstr "Завершальний G-code, коли закінчите друк цієї нитки" + +msgid "Ensure vertical shell thickness" +msgstr "Забезпечення вертикальної товщини оболонки" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"Додайте суцільне заповнення біля похилих поверхонь, щоб гарантувати " +"вертикальну товщину оболонки (верхній+нижній суцільні шари)\n" +"Ні: Ніде не буде додано жодного твердого заповнювача. Увага: Обережно " +"використовуйте цю опцію, якщо ваша модель має похилі поверхні\n" +"Тільки критично: Уникайте додавання суцільної заливки для стін\n" +"Помірно: Додавати суцільну заливку лише для сильно нахилених поверхонь\n" +"Усі: Додати суцільну заливку для всіх придатних похилих поверхонь\n" +"Значення за замовчуванням - Усі." + +msgid "Critical Only" +msgstr "Тільки критично" + +msgid "Moderate" +msgstr "Помірно" + +msgid "Top surface pattern" +msgstr "Малюнок верхньої поверхні" + +msgid "Line pattern of top surface infill" +msgstr "Малюнок заповнення верхньої поверхні" + +msgid "Concentric" +msgstr "Концентричний" + +msgid "Rectilinear" +msgstr "Прямолінійний" + +msgid "Monotonic" +msgstr "Монотонний" + +msgid "Monotonic line" +msgstr "Монотонний прямолінійний" + +msgid "Aligned Rectilinear" +msgstr "Вирівняний прямолінійний" + +msgid "Hilbert Curve" +msgstr "Крива Гільберта" + +msgid "Archimedean Chords" +msgstr "Хорди Архімеда" + +msgid "Octagram Spiral" +msgstr "Спіральна октограма" + +msgid "Bottom surface pattern" +msgstr "Малюнок нижньої поверхні" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "Малюнок заповнення нижньої поверхні, а не заповнення мосту" + +msgid "Internal solid infill pattern" +msgstr "Внутрішній малюнок заповнення суцільними шарами" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"Лінійний шаблон внутрішньої суцільної заливки. якщо увімкнено функцію " +"виявлення вузької внутрішньої суцільної заливки, для невеликих ділянок буде " +"використано концентричний шаблон." + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Ширина лінії зовнішньої стінки. Якщо виражена у %, буде розрахована по " +"діаметру сопла." + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "" +"Швидкість зовнішнього периметра, яка є найбільш віддаленою та видимою.Це " +"раніше було повільніше, ніж швидкість внутрішнього периметра, щоботримати " +"кращу якість." + +msgid "Small perimeters" +msgstr "Маленькі периметри" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"Це окреме налаштування впливає на швидкість периметрів, що мають радіус < = " +"small_perimeter_threshold (зазвичай отворів). Якщо він виражений у " +"відсотках(наприклад, 80%), то він розраховуватиметься на зазначеній вище " +"швидкостіЗовнішній периметр. Встановіть нульове значення для автоматичного " +"налаштування." + +msgid "Small perimeters threshold" +msgstr "Поріг малих периметрів" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "" +"При цьому встановлюється поріг для невеликої довжини периметра. Порігове за " +"замовчуванням - 0 мм" + +msgid "Walls printing order" +msgstr "Послідовність друку стінок" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"Послідовність друку внутрішніх (inner) та зовнішніх (outer) стін. \n" +"\n" +"Використовуйте внутрішню/зовнішню для найкращих виступів. Це пов'язано з " +"тим, що стіни, які виступають, можуть прилипати до сусіднього периметра під " +"час друку. Однак цей параметр призводить до деякого зниження якості " +"поверхні, оскільки зовнішній периметр деформується, притискаючись до " +"внутрішнього.\n" +"\n" +"Використовуйте Внутрішній/Зовнішній/Внутрішній для найкращої якості " +"зовнішньої поверхні та точності розмірів, оскільки зовнішня стіна друкується " +"без порушень від внутрішнього периметра. Однак, продуктивність на виході " +"зменшиться, оскільки немає внутрішнього периметра, до якого можна було б " +"притискати зовнішню стіну. Для ефективної роботи цієї опції потрібно " +"щонайменше 3 стіни, оскільки спочатку друкуються внутрішні стіни, починаючи " +"з 3-го периметра, потім зовнішній периметр і, нарешті, перший внутрішній " +"периметр. У більшості випадків цей параметр рекомендується використовувати " +"замість параметра Зовнішній/Внутрішній. \n" +"\n" +"Використовуйте опцію Зовнішня/Внутрішня для отримання такої ж якості " +"зовнішньої стіни і точності розмірів, як і в опції Внутрішня/Зовнішня/" +"Внутрішня. Однак шви по Z будуть виглядати менш рівномірними, оскільки перша " +"екструзія нового шару починається на видимій поверхні " + +msgid "Inner/Outer" +msgstr "Внутрішня/Зовнішня" + +msgid "Outer/Inner" +msgstr "Зовнішня/Внутрішня" + +msgid "Inner/Outer/Inner" +msgstr "Внутрішня/Зовнішня/Внутрішня" + +msgid "Print infill first" +msgstr "Спочатку друкувати заповнення" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" + +msgid "Wall loop direction" +msgstr "Напрямок контуру стінки" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"Напрямок, в якому екструдуються периметри стінок, якщо дивитися зверху " +"вниз.\n" +"\n" +"За замовчуванням усі стінки екструдуються проти годинникової стрілки, якщо " +"тільки не увімкнено Реверс по непарних периметрах. Якщо встановити будь-яку " +"іншу опцію, окрім Авто, то напрямок друку стінки буде визначатися незалежно " +"від значення Реверс по непарних периметрах.\n" +"\n" +"Ця опція буде вимкнена, якщо увімкнено режим Спіральної вази." + +msgid "Counter clockwise" +msgstr "Проти годинникової стрілки" + +msgid "Clockwise" +msgstr "За годинниковою стрілкою" + +msgid "Height to rod" +msgstr "Висота до сопла" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "" +"Відстань від кінчика сопла до нижнього штока. Використовується для уникнення " +"зіткнення під час друку за об’єктами." + +msgid "Height to lid" +msgstr "Висота до кришки" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "" +"Відстань від кінчика сопла до кришки. Використовується для уникнення " +"зіткнення під час друку за обʼєктами." + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "" +"Радіус вільного простору навколо екструдера. Використовується для уникнення " +"зіткнення під час друку за об’єктами." + +msgid "Nozzle height" +msgstr "Висота насадки" + +msgid "The height of nozzle tip." +msgstr "Висота кінчика насадки." + +msgid "Bed mesh min" +msgstr "Сітка для стола min" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Цей параметр встановлює мінімальну точку для допустимої площі сітки столу. " +"Через зміщення датчика по осях XY більшість принтерів не можуть промацувати " +"все полотно. Щоб переконатися, що точка зонда не виходить за межі поля, " +"мінімальна і максимальна точки сітки поля повинні бути встановлені " +"відповідним чином. Snapmaker Orca гарантує, що значення adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max не перевищують ці мінімальні/максимальні точки. Цю " +"інформацію зазвичай можна отримати від виробника принтера. За замовчуванням " +"встановлено значення (-99999, -99999), що означає відсутність обмежень, що " +"дозволяє проводити зондування по всьому шару." + +msgid "Bed mesh max" +msgstr "Сітка столу макс" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"Цей параметр встановлює максимальну точку для допустимої площі сітки столу. " +"Через зміщення датчика по осях XY більшість принтерів не можуть промацувати " +"всю поверхню полотна. Щоб переконатися, що точка зонда не виходить за межі " +"поля, мінімальна і максимальна точки сітки поля повинні бути встановлені " +"відповідним чином. Snapmaker Orca гарантує, що значення adaptive_bed_mesh_min/" +"adaptive_bed_mesh_max не перевищують ці мінімальні/максимальні точки. Цю " +"інформацію зазвичай можна отримати від виробника принтера. За замовчуванням " +"встановлено значення (99999, 99999), що означає відсутність обмежень, що " +"дозволяє проводити зондування по всьому шару." + +msgid "Probe point distance" +msgstr "Відстань до зонда" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"Цей параметр встановлює бажану відстань між точками зонда (розмір сітки) для " +"напрямків X і Y, за замовчуванням 50 мм для X і Y." + +msgid "Mesh margin" +msgstr "Поле сітки" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" +"Цей параметр визначає додаткову відстань, на яку слід розширити площу " +"адаптивної сітки в напрямках XY." + +msgid "Extruder Color" +msgstr "Колір екструдера" + +msgid "Only used as a visual help on UI" +msgstr "Використовується лише як візуальна допомога в інтерфейсі користувача" + +msgid "Extruder offset" +msgstr "Зміщення екструдера" + +msgid "Flow ratio" +msgstr "Коефіцієнт потоку" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"Матеріал може мати об'ємну зміну після перемикання між розплавленим станом " +"та кристалічним станом. Це налаштування пропорційно змінює весь екструзійний " +"потік цієї нитки розжарювання в gcode. Рекомендований діапазон значень - від " +"0,95 до 1,05. Можливо, ви можете налаштувати це значення, щоб отримати " +"хорошу плоску поверхню, коли є невелике переповнення або недолив" + +msgid "Enable pressure advance" +msgstr "Увімкнути випередження тиску PA" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "" +"Включити випередження тиску, результат автоматичного калібрування " +"будеперезаписано після увімкнення." + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "" +"Підвищення тиску (Klipper) AKA Коефіцієнт лінійного просування (Marlin)" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"Ширина лінії за замовчуванням, якщо інші ширини ліній встановлено на 0. Якщо " +"виражено у %, вона буде розрахована за діаметром сопла." + +msgid "Keep fan always on" +msgstr "Тримайте вентилятор завжди увімкненим" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"Якщо увімкнути цей параметр, вентилятор охолодження деталі ніколи не " +"будезупинятиметься і працюватиме\n" +"хоча б на мінімальній швидкості для зменшення частоти пусків та зупинок" + +msgid "Don't slow down outer walls" +msgstr "Не сповільнюватись на зовнішніх стінках" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "Час шару" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"Вентилятор охолодження деталі буде включений для шарів, розрахунковий " +"часяких менше цього значення. Швидкість вентилятора інтерполюється між " +"мінімальної та максимальної швидкості вентилятора відповідно до часудруку " +"шару" + +msgid "Default color" +msgstr "Колір за замовчуванням" + +msgid "Default filament color" +msgstr "Колір філаменту за замовчуванням" + +msgid "Filament notes" +msgstr "Примітки щодо філаменту" + +msgid "You can put your notes regarding the filament here." +msgstr "Ви можете залишити свої примітки щодо філаменту тут." + +msgid "Required nozzle HRC" +msgstr "Потрібний HRC сопла" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "" +"Мінімальний HRC сопла, необхідний для друку філаменту. Нуль означає " +"відсутність перевірки HRC сопла." + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"Це налаштування визначає, скільки обсягу нитки може бути розплавлено та " +"екструдовано за секунду. Швидкість друку обмежена максимальною об'ємною " +"швидкістю, у разі надто високого та необґрунтованого налаштування швидкості. " +"Не може бути нулем" + +msgid "mm³/s" +msgstr "мм³/с" + +msgid "Filament load time" +msgstr "Час завантаження філаменту" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "" +"Час завантаження нового філаменту при перемиканні філаменту. Тільки для " +"статистики" + +msgid "Filament unload time" +msgstr "Час вивантаження філаменту" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "" +"Час вивантаження нового філаменту при перемиканні філаменту. Тільки для " +"статистики" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "" +"Діаметр нитки використовується для розрахунку екструзії в gcode, тому він " +"важливий імає бути точним" + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "Усадка" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"Введіть відсоток усадки, який отримає нитка після охолодження (94%, якщо ви " +"вимірюєте 94 мм замість 100 мм). Деталь буде масштабовано по осях X та Y для " +"компенсації. До уваги береться лише нитка, що використовується для " +"периметра.\n" +"Переконайтеся, що між об'єктами достатньо місця, оскільки ця компенсація " +"виконується після перевірки." + +msgid "Loading speed" +msgstr "Швидкість заведення" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "" +"Швидкість, що використовується для заведення філаменту на вежі витирання." + +msgid "Loading speed at the start" +msgstr "Швидкість заведення на старті" + +msgid "Speed used at the very beginning of loading phase." +msgstr "Швидкість, що використовується на самому початку фази заведення." + +msgid "Unloading speed" +msgstr "Швидкість виведення" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "" +"Швидкість, яка використовується для виведення філаменту на вежі витирання " +"(не впливає на початкову частину виведення безпосередньо після раммінгу)." + +msgid "Unloading speed at the start" +msgstr "Швидкість виведення на старті" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "" +"Швидкість, яка використовується для виведення кінчику філаменту " +"безпосередньо після раммінгу." + +msgid "Delay after unloading" +msgstr "Затримка після виведення" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"Час очікування після виведення філаменту. Може допомогти отримати надійну " +"заміну інструменту для гнучких матеріалів, яким може знадобитися більше " +"часу, щоб зменшитись до початкових розмірів." + +msgid "Number of cooling moves" +msgstr "Кількість охолоджуючих рухів" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "" +"Філамент охолоджується шляхом переміщення вперед-назад у охолоджувальних " +"трубках. Вкажіть бажану кількість цих рухів." + +msgid "Speed of the first cooling move" +msgstr "Швидкість першого охолоджуючого руху" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "" +"Охолоджувальні рухи поступово прискорюються, починаючи з цієї швидкості." + +msgid "Minimal purge on wipe tower" +msgstr "Мінімальне продування на очисній вежі" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"Після заміни інструменту точне положення новонавантаженої нитки " +"напруженнявсередині сопла може бути невідомо, і тиск нитки розжарення, " +"ймовірно, ще неє стабільним. Перед продуванням друкувальної головки в " +"наповнювач або об'єкт Snapmaker Orca, що витрачається, завжди буде дозувати цю " +"кількість матеріалу в вежу для протирання, щоб забезпечити надійне " +"послідовне заповненняабо видавлювання об'єкта, що витрачається." + +msgid "Speed of the last cooling move" +msgstr "Швидкість останнього охолоджуючого руху" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "Охолоджувальні рухи поступово прискорюються до цієї швидкості." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Час для прошивки принтера (або Multi Material Unit 2.0), щоб завести новий " +"філамент під час заміни інструменту (під час виконання коду Т). Цей час " +"додається до загального часу друку за допомогою оцінювача часу G-коду." + +msgid "Ramming parameters" +msgstr "Параметри раммінгу" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "" +"Цей рядок відредаговано у діалогу налаштувань раммінгу та містить певні " +"параметри раммінгу." + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"Час для прошивки принтера (або Multi Material Unit 2.0), щоб вивести " +"філамент під час заміни інструменту (під час виконання коду Т). Цей час " +"додається до загального часу друку за допомогою оцінювача часу G-коду." + +msgid "Enable ramming for multitool setups" +msgstr "Увімкнути накат для багатоінструментальних установок" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"Виконати накат при використанні багатофункціонального принтера (тобто, коли " +"в налаштуваннях принтера знято прапорець з опції \"Мультиматеріал для одного " +"екструдера\"). Якщо ця опція встановлена, невелика кількість нитки швидко " +"екструдується на витиральні башти безпосередньо перед зміною інструменту. " +"Цей параметр використовується лише тоді, коли увімкнено витиральні башти." + +msgid "Multitool ramming volume" +msgstr "Об'єм накату багатофункціонального інструменту" + +msgid "The volume to be rammed before the toolchange." +msgstr "Об'єм, який потрібно виштовхнути перед зміною інструменту." + +msgid "Multitool ramming flow" +msgstr "Багатоінструментальний потік накату" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "Потік використовується для накату нитки перед зміною інструменту." + +msgid "Density" +msgstr "Щільність" + +msgid "Filament density. For statistics only" +msgstr "Щільність нитки. Тільки для статистики" + +msgid "g/cm³" +msgstr "г/см³" + +msgid "The material type of filament" +msgstr "Тип матеріалу філаменту" + +msgid "Soluble material" +msgstr "Розчинний філамент" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "Розчинний матеріал зазвичай використовується для друку підтримки" + +msgid "Support material" +msgstr "Матеріал підтримки" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "Допоміжний матеріал зазвичай використовується для друку підтримки" + +msgid "Softening temperature" +msgstr "Температура розм'якшення" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"Матеріал м’якшує при цій температурі, тому, коли температура столу рівна або " +"вища за цей показник, настійно рекомендується відкрити передні двері та/або " +"видалити верхнє скло, щоб уникнути засмічення (clogging)." + +msgid "Price" +msgstr "Ціна" + +msgid "Filament price. For statistics only" +msgstr "Ціна філаменту. Тільки для статистики" + +msgid "money/kg" +msgstr "р/кг" + +msgid "Vendor" +msgstr "Виробник" + +msgid "Vendor of filament. For show only" +msgstr "Виробник філаменту. Для показу, тільки для відображення" + +msgid "(Undefined)" +msgstr "(Невизначений)" + +msgid "Sparse infill direction" +msgstr "Напрямок внутрішнього заповнення" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Кут для внутрішнього заповнення, який контролює початок або основний " +"напрямок лінії" + +msgid "Solid infill direction" +msgstr "Суцільний напрямок заповнення" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" +"Кут для суцільної заливки, який контролює початок або основний напрямок лінії" + +msgid "Rotate solid infill direction" +msgstr "Поверніть внутрішне заповнення в напрямку" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "Поверніть напрямок внутрішного заповнення на 90° для кожного шару." + +msgid "Sparse infill density" +msgstr "Щільність заповнення" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" +"Щільність внутрішнього розрідженого заповнення, 100% перетворює все " +"розріджене заповнення на суцільне, і буде використовуватися внутрішній " +"шаблон внутрішнього заповнення" + +msgid "Sparse infill pattern" +msgstr "Малюнок заповнення" + +msgid "Line pattern for internal sparse infill" +msgstr "Шаблон лінії для внутрішнього заповнення" + +msgid "Grid" +msgstr "Сітка" + +msgid "Line" +msgstr "Лінія" + +msgid "Cubic" +msgstr "Кубічний" + +msgid "Tri-hexagon" +msgstr "Зірки" + +msgid "Gyroid" +msgstr "Гіроїд" + +msgid "Honeycomb" +msgstr "Медові стільники" + +msgid "Adaptive Cubic" +msgstr "Адаптивний кубічний" + +msgid "3D Honeycomb" +msgstr "3D медові стільники" + +msgid "Support Cubic" +msgstr "Підтримуючий кубічний" + +msgid "Lightning" +msgstr "Блискавка" + +msgid "Cross Hatch" +msgstr "Перехресний штрих" + +msgid "Sparse infill anchor length" +msgstr "Довжина прив'язки заповнення" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"З'єднайте лінію заповнення з внутрішнім периметром із коротким " +"сегментомдодаткового периметра. Якщо воно виражено у відсотках (наприклад, " +"15%), воно розраховується за шириною екструзії заповнення. Snapmaker Orca " +"намагається з'єднати Дві близькі лінії заповнення з коротким сегментом " +"периметра. Якщо такий сегмент периметра коротше infill_anchor_max не " +"знайдено, лінія заповнення з'єднується з сегментом периметра лише з одного " +"боку, і довжина взятого сегменту периметра обмежена цим параметром, але не " +"більше anchor_length_max.\n" +"Встановіть цей параметр рівним нулю, щоб вимкнути периметри прив'язки." +"пов'язані з однією лінією заповнення." + +msgid "0 (no open anchors)" +msgstr "0 (немає відкритих прив'язок)" + +msgid "1000 (unlimited)" +msgstr "1000 (необмежено)" + +msgid "Maximum length of the infill anchor" +msgstr "Максимальна довжина прив'язки, що заповнює" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"З'єднайте лінію заповнення з внутрішнім периметром із коротким " +"сегментомдодаткового периметра. Якщо воно виражено у відсотках (наприклад, " +"15%), воно розраховується за шириною екструзії заповнення. Snapmaker Orca " +"намагається з'єднати Дві близькі лінії заповнення з коротким сегментом " +"периметра. Якщо такий сегмент периметра коротший за цей параметр не " +"знайдено, лінія заповнення з'єднується з сегментом периметра лише з одного " +"боку, і довжина взятого сегмент периметра обмежений infill_anchor, але не " +"довшим за цей параметр.\n" +"Якщо встановлено значення 0, буде використано старий алгоритм для " +"Підключення заповнення, він повинен створити той же результат, що і для 1000 " +"& 0." + +msgid "0 (Simple connect)" +msgstr "0 (просте підключення)" + +msgid "Acceleration of outer walls" +msgstr "Прискорення зовнішніх периметрів" + +msgid "Acceleration of inner walls" +msgstr "Прискорення внутрішніх периметрів" + +msgid "Acceleration of travel moves" +msgstr "Прискорення холостого руху" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "" +"Прискорення заповнення верхньої поверхні. Використання меншого значенняможе " +"покращити якість верхньої поверхні" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "" +"Прискорення зовнішнього периметра. Використання меншого значення може " +"поліпшити якість" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"Прискорення мостів. Якщо значення виражено у відсотках (наприклад, 50%), " +"воно розраховано з урахуванням прискорення зовнішнього периметра." + +msgid "mm/s² or %" +msgstr "мм/с² або %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"Прискорення заповнення. Якщо значення виражено у відсотках (наприклад, " +"100%), воно буде розраховане на основі прискорення за умовчанням." + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"Прискорення заповнення внутрішнього твердого тіла. Якщо значення виражено в " +"процентах (наприклад, 100%), воно буде розраховане на основі прискорення по " +"за замовчуванням." + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "" +"Прискорення вихідного шару. Використання меншого значення може покращити " +"прилипання будівельної плити" + +msgid "Enable accel_to_decel" +msgstr "Увімкнути прискорення до уповільнення" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "" +"Max \"прискорення до уповільнення\" для Klipper буде скориговано автоматично" + +msgid "accel_to_decel" +msgstr "прискорення до уповільнення" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "Klipper-ів max_accel_to_decel буде скориговано на цей %% прискорення" + +msgid "Jerk of outer walls" +msgstr "Ривок зовнішніх периметрів" + +msgid "Jerk of inner walls" +msgstr "Ривок внутрішніх периметрів" + +msgid "Jerk for top surface" +msgstr "Ривок для верхньої поверхні" + +msgid "Jerk for infill" +msgstr "Ривок для заповнення" + +msgid "Jerk for initial layer" +msgstr "Ривок для початкового шару" + +msgid "Jerk for travel" +msgstr "Ривок для переміщення" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Ширина лінії початкового шару. Якщо виражена у %, вона буде розрахована по " +"діаметру сопла." + +msgid "Initial layer height" +msgstr "Початкова висота шару" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "" +"Висота вихідного шару. Незначна товщина початкової висоти шару може " +"поліпшити прилипання до столу" + +msgid "Speed of initial layer except the solid infill part" +msgstr "Швидкість першого шару, за винятком суцільної заповнювальної частини" + +msgid "Initial layer infill" +msgstr "Початкове заповнення шару" + +msgid "Speed of solid infill part of initial layer" +msgstr "Швидкість суцільної заповнювальної частини вихідного шару" + +msgid "Initial layer travel speed" +msgstr "Початкова швидкість переміщення шару" + +msgid "Travel speed of initial layer" +msgstr "Швидкість переміщення вихідного шару" + +msgid "Number of slow layers" +msgstr "Кількість повільних шарів" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "" +"Перші кілька шарів друкуються повільніше, ніж зазвичай. Швидкість " +"поступовозбільшується лінійним чином за заданою кількістю шарів." + +msgid "Initial layer nozzle temperature" +msgstr "Температура сопла першого шару" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "" +"Температура сопла для друку першого шару під час використання цього філаменту" + +msgid "Full fan speed at layer" +msgstr "Повна швидкість вентилятора на шарі" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"Швидкість вентилятора лінійно збільшується від нуля на " +"рівні«close_fan_the_first_x_layers» до максимуму на рівні " +"«full_fan_speed_layer.». «full_fan_speed_layer» буде ігноруватися, якщо " +"нижче «close_fan_the_first_x_layers,», в цьому випадку вентилятор буде " +"працювати з максимально допустимою швидкістю на " +"рівні«close_fan_the_first_x_layers» + 1." + +msgid "layer" +msgstr "шар" + +msgid "Support interface fan speed" +msgstr "Швидкість вентилятора під час друку підтримки" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"Ця швидкість вентилятора забезпечується під час усіх інтерфейсів підтримки," +"щоб мати можливість послабити їхнє з'єднання з високою " +"швидкістювентилятора.\n" +"Встановіть -1, щоб вимкнути це перевизначення.\n" +"Може бути перевизначений лише disable_fan_first_layers." + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "" +"Випадкове тремтіння під час друку зовнішнього периметра, так що поверхня " +"була шорсткої. Цей параметр керує нечіткою оболонкою" + +msgid "Contour" +msgstr "Контур" + +msgid "Contour and hole" +msgstr "Контур та отвір" + +msgid "All walls" +msgstr "Всі периметри" + +msgid "Fuzzy skin thickness" +msgstr "Нечітка товщина шкіри" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "" +"Ширина, в межах якої відбувається тремтіння. Небажано бути нижчеширини лінії " +"зовнішнього периметра" + +msgid "Fuzzy skin point distance" +msgstr "Нечітка відстань від точки шкіри" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "" +"Середня відстань між випадковими точками, введеними на кожному відрізкулінії" + +msgid "Apply fuzzy skin to first layer" +msgstr "Нанести нечітку оболочку на перший шар" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "Чи потрібно наносити нечітку оболочку на перший шар" + +msgid "Filter out tiny gaps" +msgstr "Відфільтрувати крихітні зазори" + +msgid "Layers and Perimeters" +msgstr "Шари та периметри" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "Відфільтруйте прогалини, менші за вказаний поріг" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "" +"Швидкість заповнення зазору. Зазор зазвичай має неправильну ширину лінії та " +"має друкуватися повільніше" + +msgid "Precise Z height" +msgstr "Точна висота Z" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"Увімкніть це, щоб отримати точну висоту об’єкта Z після нарізки. Він отримає " +"точну висоту об’єкта, уточнивши висоти шарів останніх кількох шарів. " +"Зауважте, що це експериментальний параметр." + +msgid "Arc fitting" +msgstr "Дугові траекторії" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" +"Увімкніть цю опцію, щоб отримати файл G-коду з ходами G2 і G3. Допуск на " +"припасування такий самий, як і роздільна здатність. \n" +"\n" +"Примітка: Для машин з кліперним керуванням цю опцію рекомендується вимкнути. " +"Klipper не використовує команди дуги, оскільки вони знову розбиваються " +"прошивкою на сегменти ліній. Це призводить до зниження якості поверхні, " +"оскільки сегменти ліній перетворюються на дуги слайсером, а потім знову на " +"сегменти ліній прошивкою." + +msgid "Add line number" +msgstr "Додати номер рядка" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "" +"Ця опція використовується для додавання номера рядка (Nx) на початку " +"кожногорядки G-Code" + +msgid "Scan first layer" +msgstr "Сканувати перший шар" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "" +"Увімкнення цього параметра дозволяє камері на принтері перевіряти " +"якістьпершого шару" + +msgid "Nozzle type" +msgstr "Тип сопла" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "" +"Металевий матеріал сопла. Це визначає зносостійкість сопла та який тип нитки " +"можна друкувати" + +msgid "Undefine" +msgstr "Скасувати визначення" + +msgid "Hardened steel" +msgstr "Гартова сталь" + +msgid "Stainless steel" +msgstr "Нержавіюча сталь" + +msgid "Brass" +msgstr "Латунь" + +msgid "Nozzle HRC" +msgstr "HRC Сопла" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "" +"Твердість сопла. Нуль означає відсутність перевірки жорсткості сопла під час " +"нарізка." + +msgid "HRC" +msgstr "HRC" + +msgid "Printer structure" +msgstr "Структура принтера" + +msgid "The physical arrangement and components of a printing device" +msgstr "Фізична структура та компоненти пристрою для друку" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta" + +msgid "Best object position" +msgstr "Найкраще положення об’єкта" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "" +"Найкраще автоматичне розташування об’єкта в діапазоні [0,1] відносно форми " +"ліжка." + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"Увімкніть цю опцію, якщо принтер має вентилятор охолодження допоміжної " +"частини. Команда G-коду: M106 P2 S(0-255)." + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"Запустіть вентилятор на таку кількість секунд раніше за цільовий час початку " +"(можна використовувати дробові секунди). Він передбачає нескінченне " +"прискорення для цієї оцінки часу і враховуватиме лише переміщення G1 і G0 " +"(дуговий фітинг не підтримується).\n" +"Він не буде переміщати команди вентиляторів з кодів користувача (вони діють " +"як свого роду «бар'єр»).\n" +"Він не переміщає команди вентиляторів у початковий gcode, якщо " +"активовано«єдиний початковий gcode користувача».\n" +"Використовуйте 0 для деактивації." + +msgid "Only overhangs" +msgstr "Тільки нависання" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "Враховуйте лише затримку охолодження звисів." + +msgid "Fan kick-start time" +msgstr "Час запуску вентилятора" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"Видайте команду max fan speed (максимальна швидкість вентилятора) за " +"цекількість секунд до зниження до цільової швидкості, щоб " +"запуститивентилятор охолодження.\n" +"Це корисно для вентиляторів, у яких низький рівень PWM/потужності може бути " +"недостатнім для того, щоб вентилятор почав обертатися з упору, абодля " +"прискорення роботи вентилятора.\n" +"Для деактивації встановіть значення 0." + +msgid "Time cost" +msgstr "Вартість часу" + +msgid "The printer cost per hour" +msgstr "Вартість друку за годину" + +msgid "money/h" +msgstr "гроші/год" + +msgid "Support control chamber temperature" +msgstr "Керування температурою камери для підтримки" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"Ця опція ввімкнена, якщо машина підтримує контроль температури в камері\n" +"Команда G-коду: M141 S(0-255)" + +msgid "Support air filtration" +msgstr "Підтримка повітряної фільтрації" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"Увімкніть цей параметр, якщо принтер підтримує фільтрацію повітря\n" +"Команда G-коду: M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "Тип G-коду" + +msgid "What kind of gcode the printer is compatible with" +msgstr "З яким gcode сумісний принтер" + +msgid "Klipper" +msgstr "Klipper" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "Підтримка різних типів поверхонь стола" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" +"Увімкніть цю опцію, якщо ви хочете використовувати кілька типів поверхонь " +"стола" + +msgid "Label objects" +msgstr "Маркувати об'єкти" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"Увімкніть цей параметр, щоб додати коментарі до друку друку мітки G-Code із " +"зазначенням об'єкта, якому вони належать, що корисно для модуля Octoprint " +"CancelObject, що підключається. Ці налаштування НЕ сумісні з налаштуваннями " +"«Один екструдер» (Single Extruder Multi Material) і «Протирати в об'єкт/" +"протирати в заповнення» (Wipe into Object/Wipe into Infill)." + +msgid "Exclude objects" +msgstr "Виключити об'єкт" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "Увімкнути цей параметр для додавання команди ВИКЛЮЧИТИ ОБ'ЄКТ у g-code" + +msgid "Verbose G-code" +msgstr "Докладний G-код" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"Увімкніть цей параметр, щоб отримати прокоментований файл G-коду, Кожний " +"рядок якого пояснюється описовим текстом. Під час друку з SD-карти додаткова " +"вага файлу може уповільнити роботу вбудованого програмного забезпечення." + +msgid "Infill combination" +msgstr "Об'єднання заповнення" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"Автоматично комбінуйте розріджене заповнення кількох шарів, щоб друкувати їх " +"разом і зменшити час друку. Стіни все ще друкуються з оригінальною висотою " +"шару." + +msgid "Filament to print internal sparse infill." +msgstr "Філамент для друку внутрішнього заповнення." + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Ширина лінії внутрішнього розрідженого заповнення. Якщо виражена у %, вона " +"буде розрахована по діаметру сопла." + +msgid "Infill/Wall overlap" +msgstr "Заповнення/перекриття периметрів" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" +"Область заповнення дещо збільшена, щоб перекривати стіну для кращого " +"зчеплення. Значення у відсотках відносно ширини лінії розрідженого " +"заповнення. Встановіть це значення на рівні ~10-15%, щоб мінімізувати " +"можливість надмірного видавлювання та накопичення матеріалу, що призводить " +"до шорсткості верхньої поверхні." + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "Верхнє/нижнє суцільне заповнення/перекриття стін" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"Верхній суцільний шар заповнення трохи збільшується, щоб перекривати стіну " +"для кращого зчеплення і мінімізувати появу прогалин у місцях прилягання " +"верхнього шару заповнення до стінки. Значення 25-30% є хорошою відправною " +"точкою, що мінімізує появу прогалин. Значення у відсотках відносно ширини " +"лінії заповнення" + +msgid "Speed of internal sparse infill" +msgstr "Швидкість внутрішнього заповнення" + +msgid "Interface shells" +msgstr "Інтерфейсні оболонки" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"Примусове створення твердих оболонок між сусідніми матеріалами/об'ємами. " +"Корисна для друку кількома екструдерами напівпрозорими матеріалами або " +"ручним розчинним матеріалом підтримки" + +msgid "Maximum width of a segmented region" +msgstr "Максимальна ширина сегментованої області" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "Максимальна ширина сегментованої області. Нуль вимикає цю функцію." + +msgid "Interlocking depth of a segmented region" +msgstr "Глибина взаємного взаємодії сегментованої області" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" +"Глибина взаємного взаємодії сегментованої області. Нуль вимикає цю функцію." + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "Тип Розглажування" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"При розглажуванні використовується невеликий потік для повторного друку на " +"тій самійвисота поверхні, щоб зробити плоску поверхню більш гладкою. Цей " +"параметр визначає, який шар гладити" + +msgid "No ironing" +msgstr "Немає Розглажування" + +msgid "Top surfaces" +msgstr "Верхові поверхні" + +msgid "Topmost surface" +msgstr "Найвища поверхня" + +msgid "All solid layer" +msgstr "Весь суцільний шар" + +msgid "Ironing Pattern" +msgstr "Зразок прасування" + +msgid "The pattern that will be used when ironing" +msgstr "Візерунок, який буде використовуватися під час прасування" + +msgid "Ironing flow" +msgstr "Плавний потік" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "" +"Кількість матеріалу, що видавлюється під час розглажування. Щодо " +"потокунормальної висоти шару. Надто високе значення призводить до " +"надмірноїекструзії на поверхню" + +msgid "Ironing line spacing" +msgstr "Крок лінії розглажування" + +msgid "The distance between the lines of ironing" +msgstr "Відстань між лініями розглажування" + +msgid "Ironing speed" +msgstr "Швидкість розглажування" + +msgid "Print speed of ironing lines" +msgstr "Швидкість друку прасувальних ліній" + +msgid "Ironing angle" +msgstr "Кут прасування" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" +"Прасування виконується під кутом. Від'ємне число вимикає цю функцію і " +"використовує метод за замовчуванням." + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "Ця частина gcode вставляється при кожній зміні шару після підйому z" + +msgid "Supports silent mode" +msgstr "Підтримує безшумний режим" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "" +"Чи підтримує машина безшумний режим, у якому машина використовує " +"меншеприскорення для друку" + +msgid "Emit limits to G-code" +msgstr "Обмеження на емітацію G-коду" + +msgid "Machine limits" +msgstr "Обмеження машини" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"Якщо увімкнено, ліміти машини будуть виводитися у файл G-коду.\n" +"Цей параметр буде проігноровано, якщо у параметрах g-коду встановлено " +"значення Klipper." + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "" +"Цей G-код буде використовуватися як код для друку паузи.Користувач може " +"вставити паузу G-коду в gcode viewer" + +msgid "This G-code will be used as a custom code" +msgstr "Цей G-код буде використовуватися як код користувача" + +msgid "Small area flow compensation (beta)" +msgstr "Компенсація потоку на малих площах (бета)" + +msgid "Enable flow compensation for small infill areas" +msgstr "Увімкніть компенсацію потоку для невеликих ділянок заповнення" + +msgid "Flow Compensation Model" +msgstr "Модель компенсації потоку" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"Модель компенсації потоку, що використовується для коригування потоку для " +"невеликих ділянок заповнення. Модель виражається у вигляді пари значень " +"довжини екструзії та коефіцієнтів корекції потоку, розділених комами, по " +"одному в рядку, у наступному форматі: \"1.234,5.678\"" + +msgid "Maximum speed X" +msgstr "Максимальна швидкість X" + +msgid "Maximum speed Y" +msgstr "Максимальна швидкість Y" + +msgid "Maximum speed Z" +msgstr "Максимальна швидкість Z" + +msgid "Maximum speed E" +msgstr "Максимальна швидкість E" + +msgid "Maximum X speed" +msgstr "Максимальна швидкість X" + +msgid "Maximum Y speed" +msgstr "Максимальна швидкість Y" + +msgid "Maximum Z speed" +msgstr "Максимальна швидкість Z" + +msgid "Maximum E speed" +msgstr "Максимальна швидкість E" + +msgid "Maximum acceleration X" +msgstr "Максимальне прискорення X" + +msgid "Maximum acceleration Y" +msgstr "Максимальне прискорення Y" + +msgid "Maximum acceleration Z" +msgstr "Максимальне прискорення Z" + +msgid "Maximum acceleration E" +msgstr "Максимальне прискорення E" + +msgid "Maximum acceleration of the X axis" +msgstr "Максимальне прискорення осі X" + +msgid "Maximum acceleration of the Y axis" +msgstr "Максимальне прискорення осі Y" + +msgid "Maximum acceleration of the Z axis" +msgstr "Максимальне прискорення осі Z" + +msgid "Maximum acceleration of the E axis" +msgstr "Максимальне прискорення осі E" + +msgid "Maximum jerk X" +msgstr "Максимальний ривок X" + +msgid "Maximum jerk Y" +msgstr "Максимальний ривок Y" + +msgid "Maximum jerk Z" +msgstr "Максимальний ривок Z" + +msgid "Maximum jerk E" +msgstr "Максимальний ривок E" + +msgid "Maximum jerk of the X axis" +msgstr "Максимальний ривок осі X" + +msgid "Maximum jerk of the Y axis" +msgstr "Максимальний ривок осі Y" + +msgid "Maximum jerk of the Z axis" +msgstr "Максимальний ривок осі Z" + +msgid "Maximum jerk of the E axis" +msgstr "Максимальний ривок осі E" + +msgid "Minimum speed for extruding" +msgstr "Мінімальна швидкість екструзії" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "Мінімальна швидкість для видавлювання (M205 S)" + +msgid "Minimum travel speed" +msgstr "Мінімальна швидкість руху" + +msgid "Minimum travel speed (M205 T)" +msgstr "Мінімальна швидкість руху (M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "Максимальне прискорення для екструдування" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "Максимальне прискорення видавлювання (M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "Максимальне прискорення для втягування" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "Максимальне прискорення для втягування (M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "Максимальне прискорення руху" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "" +"Максимальне прискорення для пересування (M204 T), застосовується лише до " +"Marlin 2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"Швидкість вентилятора охолодження деталі може бути збільшена, якщо " +"увімкненоавтоматичне охолодження. Це максимальне обмеження швидкості " +"вентилятораохолодження деталі" + +msgid "Max" +msgstr "Макс" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "" +"Найбільша висота шару, що друкується, для екструдера. Використовуваний tp " +"обмежує максимальну висоту шару при включенні адаптивної висоти шару" + +msgid "Extrusion rate smoothing" +msgstr "Вирівнювання швидкості екструзії" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"Цей параметр згладжує різкі зміни швидкості екструзії, які відбуваються, " +"коли принтер переходить від друку екструзії з високим об'ємним потоком " +"(висока швидкість/велика ширина) до екструзії з низьким об'ємним потоком " +"(низька швидкість/маленька ширина) і навпаки.\n" +"\n" +"Він визначає максимальну швидкість, на яку з часом може змінюватися об'ємний " +"потік екструдованого матеріалу в мм3/с. Вищі значення означають, що " +"дозволені більші зміни швидкості екструзії, що призводить до швидшого " +"переходу від однієї швидкості до іншої.\n" +"\n" +"Значення 0 вимикає цю функцію. \n" +"\n" +"Для високошвидкісних, високопродуктивних принтерів з прямим приводом " +"(наприклад, Bambu lab або Voron) це значення зазвичай не потрібне. Однак " +"воно може мати певну перевагу в певних випадках, коли швидкість друку дуже " +"різниться. Наприклад, коли виникають агресивні сповільнення через висячі " +"елементи. У таких випадках рекомендується високе значення близько 300-350 " +"мм3/с2, оскільки воно забезпечує достатнє згладжування, щоб допомогти " +"випередженню тиску досягти більш плавного переходу потоку.\n" +"\n" +"Для повільніших принтерів без попереднього випередження тиску значення має " +"бути значно нижчим. Значення 10-15 мм3/с2 є хорошою відправною точкою для " +"екструдерів з прямим приводом і 5-10 мм3/с2 для екструдерів типу Боудена. \n" +"\n" +"Ця функція відома як \"Вирівнювач тиску\" в слайсерах Prusa.\n" +"\n" +"Примітка: цей параметр відключає рух по дугам." + +msgid "mm³/s²" +msgstr "мм³/с²" + +msgid "Smoothing segment length" +msgstr "Довжина сегмента згладжування" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" +"Менше значення забезпечує плавніші переходи швидкості екструзії. Однак це " +"призводить до значно більшого розміру файлу gcode і більшої кількості " +"інструкцій для обробки принтером. \n" +"\n" +"Значення за замовчуванням 3 добре підходить для більшості випадків. Якщо ваш " +"принтер зависає, збільште це значення, щоб зменшити кількість інструкцій для " +"принтера.\n" +"\n" +"Допустимі значення: 1-5" + +msgid "Minimum speed for part cooling fan" +msgstr "Мінімальна швидкість вентилятора охолодження деталі" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"Швидкість вентилятора охолодження допоміжної частини. Допоміжний вентилятор " +"працюватиме з цією швидкістю під час друку, окрім перших кількох шарів, що " +"визначаються відсутністю охолоджувальних шарів.\n" +"Щоб скористатися цією функцією, увімкніть параметр auxiliary_fan у " +"налаштуваннях принтера. Команда G-коду: M106 P2 S(0-255)" + +msgid "Min" +msgstr "Мін" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "" +"Найнижча висота шару, що друкується, для екструдера. Використовуваний tp " +"обмежує мінімальну висоту шару при включенні адаптивної висоти шару" + +msgid "Min print speed" +msgstr "Мін. швидкість друку" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" +"Мінімальна швидкість друку, до якої принтер сповільнюватиметься, щоб " +"зберегти мінімальний час проходження шару, вказаний вище, коли ввімкнено " +"сповільнення для кращого охолодження шару." + +msgid "Nozzle diameter" +msgstr "Діаметр сопла" + +msgid "Diameter of nozzle" +msgstr "Діаметр сопла" + +msgid "Configuration notes" +msgstr "Примітки до конфігурації" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "" +"Ви можете додати тут свої особисті примітки. Цей текст буде додано до " +"коментарів заголовка G-коду." + +msgid "Host Type" +msgstr "Тип хоста" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "" +"Snapmaker Orca може завантажувати файли G-коду на хост принтера. Це поле " +"повинно утримувати тип хоста." + +msgid "Nozzle volume" +msgstr "Об'єм сопла" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "Об'єм сопла між різцем та кінцем сопла" + +msgid "Cooling tube position" +msgstr "Позиція охолоджувальної трубки" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "" +"Відстань центральної точки охолоджувальної трубки від наконечника екструдера." + +msgid "Cooling tube length" +msgstr "Довжина охолоджувальної трубки" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "" +"Довжина охолоджувальної трубки для обмеження простору для охолоджуючих рухів " +"всередині неї." + +msgid "High extruder current on filament swap" +msgstr "Звищення струму екструдера на заміні філамента" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"Може бути корисно збільшити струм двигуна екструдера під час заміни " +"філаменту, щоб забезпечити швидкий раммінг та подолати опір при заведенні " +"філаменту з кінчиком потворної форми." + +msgid "Filament parking position" +msgstr "Позиція паркування філаменту" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"Відстань наконечника екструдера від місця паркування філаменту при " +"виведенні. Це має відповідати значенню в мікропрограмі принтера." + +msgid "Extra loading distance" +msgstr "Додаткова відстань заведення" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"Якщо встановлено на нуль, відстань, на яку філамент переміщується з " +"положення стоянки під час заведення, є точно такою ж, як і при переміщенні " +"назад під час виведення. Якщо позитивне, воно заводеться далі, якщо " +"негативне, рух заведення коротший, ніж виведення." + +msgid "Start end points" +msgstr "Початкові кінцеві точки" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "Початкова та кінцева точки від зони різання до сміттєвого бака." + +msgid "Reduce infill retraction" +msgstr "Зменшити втягування заповнення" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"Повністю відключає втягування при переміщенні в зоні заповнення. При цьому " +"витікання не буде помітно. Це може зменшити час втягування складної моделі " +"та заощадити час друку, але уповільнить нарізку та генерацію G-коду" + +msgid "Filename format" +msgstr "Формат імені файлу" + +msgid "User can self-define the project file name when export" +msgstr "" +"Користувач може самостійно визначити ім'я файлу проекту під час експорту" + +msgid "Make overhangs printable" +msgstr "Зробити нависання можливими для друку" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "Змінює геометрію, щоб надрукувати нависання без підтримок." + +msgid "Make overhangs printable - Maximum angle" +msgstr "Зробити нависання можливими для друку - Максимальний кут" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"Максимальний кут нависань, щоб дозволити друк більш крутих нависань. 90° не " +"змінює модель взагалі і дозволяє будь-які нависання, в той час як 0 замінює " +"всі нависання конічним матеріалом." + +msgid "Make overhangs printable - Hole area" +msgstr "Зробити нависання можливими для друку - Область отворів" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"Максимальна площа отвору в основі моделі перед заповненням його конічним " +"матеріалом. Значення 0 заповнює всі отвори в основі моделі." + +msgid "mm²" +msgstr "мм²" + +msgid "Detect overhang wall" +msgstr "Виявлення стінок, що нависають" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"Визначте відсоток звису щодо ширини лінії та використовуйте для друку іншу " +"швидкість. Для 100%% -ного звису використовується швидкість моста." + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Ширина лінії внутрішньої стінки. Якщо виражається у %, вона буде розрахована " +"по діаметру сопла." + +msgid "Speed of inner wall" +msgstr "Швидкість внутрішнього периметра" + +msgid "Number of walls of every layer" +msgstr "Кількість стінок кожного шару" + +msgid "Alternate extra wall" +msgstr "Альтернативна додаткова стінка" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"Цей параметр додає додаткову стінку до кожного другого шару. Таким чином, " +"заповнення затискається вертикально між стінками, що призводить до більш " +"міцних відбитків. \n" +"\n" +"Якщо цей параметр увімкнено, параметр Забезпечити вертикальну товщину " +"оболонки потрібно вимкнути. \n" +"\n" +"Використання блискавичної заливки разом з цією опцією не рекомендується, " +"оскільки кількість заливки, до якої можна прикріпити додаткові периметри, " +"обмежена." + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"Якщо ви хочете обробити вихідний G-код через користувацькі сценарії,Просто " +"перерахуйте їх абсолютні шляхи тут. Розділіть кілька сценаріївточкою з " +"комою. Сценаріям передається абсолютний шлях до файлу G-коду в як перший " +"аргумент, і вони можуть отримати доступ до налаштувань Snapmaker Orca " +"конфігурації шляхом читання змінних середовища." + +msgid "Printer notes" +msgstr "Нотатки для принтера" + +msgid "You can put your notes regarding the printer here." +msgstr "Ви можете залишити свої примітки щодо принтера тут." + +msgid "Raft contact Z distance" +msgstr "Відстань контакту плоту Z" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "" +"Z зазор між об'єктом та підкладкою. Ігнорується для розчинного матеріалу" + +msgid "Raft expansion" +msgstr "Розширення плоту" + +msgid "Expand all raft layers in XY plane" +msgstr "Розгорнути всі шари плоту в площині XY" + +msgid "Initial layer density" +msgstr "Початкова щільність шару" + +msgid "Density of the first raft or support layer" +msgstr "Щільність першого шару або опорного шару" + +msgid "Initial layer expansion" +msgstr "Розширення початкового шару" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "" +"Розширити першу підкладку або шар підтримки, щоб покращити прилипання до " +"робочої поверхні" + +msgid "Raft layers" +msgstr "Кількість шарів підкладки" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"Об'єкт буде піднятий такою кількістю опорних шарів. Використовуйте цю " +"функцію, щоб уникнути обтікання під час друку ABS" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"Контур G-коду генерується після спрощення контуру моделей, щоб уникнути " +"надмірної кількості точок і ліній G-коду. Менші значення означають вищу " +"роздільну здатність і більше часу, необхідного для нарізки" + +msgid "Travel distance threshold" +msgstr "Поріг відстані в дорозі" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "" +"Втягувати тільки в тому випадку, якщо відстань переміщення перевищує цей " +"поріг" + +msgid "Retract amount before wipe" +msgstr "Втягування при розгладжуванні" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "" +"Довжина швидкого втягування перед очищенням, відносно довжини втягування" + +msgid "Retract when change layer" +msgstr "Втягування при зміні шару" + +msgid "Force a retraction when changes layer" +msgstr "Примусове втягування при зміні шару" + +msgid "Retraction Length" +msgstr "Довжина втягування" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"Деяка кількість матеріалу в екструдері витягується назад, щоб уникнути " +"витікання під час тривалого переміщення. Встановіть нуль, щоб відключити " +"втягування" + +msgid "Long retraction when cut(experimental)" +msgstr "Довге втягування при відрізанні (експериментально)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"Експериментальна функція. Втягування та відрізання філаменту на більшій " +"відстані під час змін для мінімізації очищення. Хоча це значно зменшує " +"кількість витоку, це також може збільшити ризик забивання сопла або інших " +"проблем з друку." + +msgid "Retraction distance when cut" +msgstr "Відстань втягування при відрізанні" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" +"Експериментальна функція. Відстань втягування перед відрізанням під час " +"зміни філаменту" + +msgid "Z hop when retract" +msgstr "Z-стрибок при втягуванні" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"Під час кожного втягування сопло трохи піднімається, щоб створити зазор між " +"соплом та об’єктом друку. Це запобігає зіткненню сопла з об’єктом друку під " +"час переміщення. Використання спіральної лінії підняття по осі Z може " +"запобігти появі ниток" + +msgid "Z hop lower boundary" +msgstr "Межа зниження Z-hop" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" +"Z-hop буде активуватися лише тоді, коли Z перевищує це значення і " +"знаходиться нижче параметра “Верхня межа зниження Z”." + +msgid "Z hop upper boundary" +msgstr "Верхня межа зниження Z" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" +"Якщо це значення позитивне, то Z-hop буде діяти лише тоді, коли Z перевищує " +"параметр “Межа зниження Z” і знаходиться нижче цього значення" + +msgid "Z hop type" +msgstr "Тип Z-стрибка" + +msgid "Slope" +msgstr "Схил" + +msgid "Spiral" +msgstr "Спіраль" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "Підіймати Z лише вище" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "" +"Якщо ви встановите додатне значення, підйом Z відбуватиметься лише над " +"вказаний абсолютний висоті Z." + +msgid "Only lift Z below" +msgstr "Підіймати Z лише нижче" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "" +"Якщо встановити додатне значення, підйом по Z відбуватиметься лише нижче " +"вказаний абсолютний висоті Z." + +msgid "On surfaces" +msgstr "На поверхнях" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"Увімкнути поведінку стрибків Z. На цей параметр впливають попередні " +"налаштування (Тільки піднімати Z вище/нижче)." + +msgid "All Surfaces" +msgstr "Усі поверхні" + +msgid "Top Only" +msgstr "Тільки вгорі" + +msgid "Bottom Only" +msgstr "Тільки знизу" + +msgid "Top and Bottom" +msgstr "Зверху та знизу" + +msgid "Extra length on restart" +msgstr "Додаткова довжина під час перезавантаження" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "" +"Коли втягування компенсується після переміщення, екструдер проштовхуєЦе " +"додаткова кількість нитки. Ця установка рідко потрібна." + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "" +"Коли втягування компенсується після заміни інструменту, екструдерпроштовхує " +"цю додаткову кількість нитки." + +msgid "Retraction Speed" +msgstr "Швидкість ретракту" + +msgid "Speed of retractions" +msgstr "Швидкість ретракту" + +msgid "Deretraction Speed" +msgstr "Швидкість компенсуючого ретракту" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "" +"Швидкість перезарядки філпмента в екструдер. Нуль означає ту ж швидкість при " +"ретракті" + +msgid "Use firmware retraction" +msgstr "Використовувати ретракт прошивки" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"Це експериментальне налаштування використовує команди G10 і G11 для того, " +"щоб Мікропрограмне забезпечення обробляло ретракт. Це підтримується тількиу " +"недавньому Марліні." + +msgid "Show auto-calibration marks" +msgstr "Показати мітки автоматичного калібрування" + +msgid "Disable set remaining print time" +msgstr "Вимкнути опцію Час друку що залишився" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" +"Вимкнути генерацію M73: Встановити час друку, що залишився, у кінцевому gcode" + +msgid "Seam position" +msgstr "Положення шва" + +msgid "The start position to print each part of outer wall" +msgstr "Початкове положення для друку кожної частини зовнішнього периметра" + +msgid "Nearest" +msgstr "Найближчий" + +msgid "Aligned" +msgstr "Вирівняний" + +msgid "Back" +msgstr "Ззаду" + +msgid "Random" +msgstr "Випадковий" + +msgid "Staggered inner seams" +msgstr "Зміщений внутрішній шов" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "" +"Ця опція призводить до того, що внутрішні шви зміщуються назад відповідно до " +"їх глибини, утворюючи зигзагоподібний візерунок." + +msgid "Seam gap" +msgstr "Зазор шва" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" +"Щоб зменшити видимість шва при екструзії із замкнутим контуром, контур " +"переривається і коротшає на задану величину.\n" +"Ця кількість може бути вказана в міліметрах або у відсотках від " +"поточногодіаметр екструдера. Стандартне значення для цього параметра " +"становить 10%." + +msgid "Scarf joint seam (beta)" +msgstr "Шарфовий шов (бета)" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" +"Використовувати з'єднання шва шарфом, щоб мінімізувати видимість шва та " +"збільшити міцність шва." + +msgid "Conditional scarf joint" +msgstr "Умовне з’єднання шарфом" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" +"Застосовувати з’єднання з шарфом лише до гладких периметрів, де традиційні " +"шви не ефективно приховують шви в гострих кутах." + +msgid "Conditional angle threshold" +msgstr "Умовний поріг кута" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"Ця опція встановлює поріговий кут для застосування умовного з’єднання " +"шарфом.\n" +"Якщо максимальний кут в межах периметрового контуру перевищує це значення " +"(що свідчить про відсутність гострих кутів), використовується з’єднання " +"шарфом. Значення за замовчуванням - 155°." + +msgid "Conditional overhang threshold" +msgstr "Умовний поріг звису" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"Ця опція визначає поріг звису для застосування стрічкових швів. Якщо " +"непідтримувана частина периметра менша за цей поріг, будуть застосовані " +"стрічкові шви. За замовчуванням поріг встановлюється на рівні 40% від ширини " +"зовнішньої стіни. З міркувань продуктивності оцінюється ступінь звису." + +msgid "Scarf joint speed" +msgstr "Швидкість з'єднання шва" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"Цей параметр задає швидкість друку швів. Рекомендується друкувати " +"з'єднувальні стрічки на повільній швидкості (менше 100 мм/с). Також " +"рекомендується ввімкнути \"Згладжування швидкості екструзії\", якщо задана " +"швидкість значно відрізняється від швидкості зовнішньої або внутрішньої " +"стінок. Якщо вказана тут швидкість вища за швидкість зовнішньої або " +"внутрішньої стінок, принтер за замовчуванням працюватиме на повільнішій з " +"двох швидкостей. Якщо значення вказано у відсотках (наприклад, 80%), " +"швидкість розраховується на основі відповідної швидкості зовнішньої або " +"внутрішньої стінки. За замовчуванням встановлено значення 100%." + +msgid "Scarf joint flow ratio" +msgstr "Коефіцієнт пропускної здатності шарфового шва" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "Цей фактор впливає на кількість матеріалу для з'єднання швів." + +msgid "Scarf start height" +msgstr "Висота початку шарфу" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"Висота початку шарфу.\n" +"Ця величина може бути вказана в міліметрах або як відсоток від поточної " +"товщини шару. Значення за замовчуванням для цього параметра - 0." + +msgid "Scarf around entire wall" +msgstr "Шарф навколо всієї стіни" + +msgid "The scarf extends to the entire length of the wall." +msgstr "Шарф простягається на всю довжину стіни." + +msgid "Scarf length" +msgstr "Довжина шарфа" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" +"Довжина шарфа. Встановлення цього параметра на нуль ефективно вимикає шарф." + +msgid "Scarf steps" +msgstr "Кроки шарфа" + +msgid "Minimum number of segments of each scarf." +msgstr "Мінімальна кількість сегментів кожного шарфу." + +msgid "Scarf joint for inner walls" +msgstr "З’єднання з шарфом для внутрішніх стін" + +msgid "Use scarf joint for inner walls as well." +msgstr "Використовувати з’єднання з шарфом також для внутрішніх стін." + +msgid "Role base wipe speed" +msgstr "Базова швидкість очищення ролей" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"Швидкість очищення визначається швидкістю поточної ролі екструзії. " +"Наприкладякщо дія очищення виконується відразу після екструзії зовнішнього " +"периметра,швидкість екструзії зовнішнього периметра буде використовуватися " +"для діїочищення." + +msgid "Wipe on loops" +msgstr "Розгладжування шва" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"Щоб звести до мінімуму видимість шва при екструзії із замкнутим контуром," +"Невеликий рух усередину виконується до виходу екструдера з контуру." + +msgid "Wipe before external loop" +msgstr "Протирання перед зовнішньою стінкою" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"Щоб мінімізувати видимість потенційного надмірного видавлювання на початку " +"зовнішнього периметра під час друку з опцією друку стінок \"Зовнішній/" +"внутрішній\" або \"Внутрішній/зовнішній/внутрішній\", втягування виконується " +"злегка зсередини від початку зовнішнього периметра. Таким чином, будь-який " +"потенційний надлишок накату приховується від зовнішньої поверхні. \n" +"\n" +"Це корисно під час друку із зовнішнім/внутрішнім або внутрішнім/зовнішнім/" +"внутрішнім друком стінок, оскільки в цих режимах, найімовірніше, зовнішній " +"периметр буде надруковано одразу після руху втягування." + +msgid "Wipe speed" +msgstr "Швидкість очищення" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"Швидкість очищення визначається налаштуванням швидкості, зазначеної в " +"данійконфігурації. Якщо це значення виражено у відсотках (наприклад, 80%), " +"то воно буде розраховано на основі наведеної вище установки швидкості руху. " +"За замовчуванням для цього параметра - 80%" + +msgid "Skirt distance" +msgstr "Відстань між спідницею/каймою" + +msgid "Distance from skirt to brim or object" +msgstr "Відстань між спідницею/каймою або моделлю" + +msgid "Skirt height" +msgstr "Шари спідниці" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "Скільки шарів спідниці. Зазвичай лише один шар" + +msgid "Draft shield" +msgstr "Чорновий щит" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"Захист від протягів потрібен для захисту відбитків на ABS або ASA від " +"деформації та відриву від друкарської платформи через протяги. Зазвичай він " +"потрібен лише для принтерів з відкритою рамою, тобто без корпусу. \n" +"\n" +"Параметри:\n" +"Увімкнено = висота спідниці дорівнює висоті найвищого надрукованого " +"об'єкта.\n" +"Обмежено = висота об'єкта не перевищує заданої висоти об'єкта.\n" +"\n" +"Примітка: При активному захисному екрані спідниця буде надрукована на " +"відстані крайки від об'єкта. Тому, якщо активовані краї, вона може " +"перетинатися з ними. Щоб уникнути цього, збільште значення відстані до " +"об'єкта.\n" + +msgid "Limited" +msgstr "Обмежено" + +msgid "Enabled" +msgstr "Увімкнуто" + +msgid "Skirt loops" +msgstr "Спідниця навколо моделі" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "Кількість петель для спідниці. Нуль означає відключення спідниці" + +msgid "Skirt speed" +msgstr "Швидкість спідниці" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "" +"Швидкість спідниці, у мм/с. Нуль означає використання стандартної швидкості " +"екструзії шару." + +msgid "Skirt minimum extrusion length" +msgstr "Мінімальна довжина екструзії спідниці" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"Мінімальна довжина витягування нитки в мм під час друку спідниці. Нуль " +"означає, що ця функція вимкнена.\n" +"\n" +"Використання ненульового значення корисне, якщо принтер налаштовано на друк " +"без початкової лінії." + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"Швидкість друку в експортованому gcode буде уповільнена, коли розрахунковий " +"час шару менше цього значення, щоб отримати найкраще охолодження для цих " +"шарів" + +msgid "Minimum sparse infill threshold" +msgstr "Мінімальний поріг заповнення" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "" +"Площа заповнення, яка менша за порогове значення, замінюється внутрішнім " +"суцільним заповненням" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "" +"Ширина лінії внутрішнього суцільного заповнення. Якщо виражена у %, вона " +"буде розрахована по діаметру сопла." + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "" +"Швидкість внутрішнього твердого заповнення, а не верхньої та нижньої поверхні" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"Перехід спіраллю згладжує рух z зовнішнього контуру. І перетворює " +"твердотільна модель в одностінний друк із суцільними нижніми шарами.Кінічна " +"згенерована модель не має шва" + +msgid "Smooth Spiral" +msgstr "Плавна спіраль" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"Плавна спіраль згладжує переміщення по X та Y, що призводить до відсутності " +"видимого шва, навіть у напрямках XY на стінах, які не є вертикальними" + +msgid "Max XY Smoothing" +msgstr "Максимальне згладжування XY" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"Максимальна відстань переміщення точок по XY для спроби досягнення плавної " +"спіралі. Якщо виражено у відсотках, вона буде обчислена відносно діаметра " +"сопла" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"Якщо вибрано плавний або традиційний режим, для кожного друку буде " +"згенеровано відео з часовим інтервалом. Після друку кожного шару Знімок " +"камери робиться. Всі ці знімки створюються у вигляді відео з тимчасовим " +"інтервалом після завершення друку. Якщо вибрано режим згладжування, то Після " +"друку кожного шару головка інструментів переміщається до надмірноголотку, а " +"потім знімається знімок. Оскільки філамент може просочуватися з сопла під " +"час отримання знімка, для гладкого режиму очищення сопла потрібна вежа " +"очищення." + +msgid "Traditional" +msgstr "Традиційний" + +msgid "Temperature variation" +msgstr "Зміна температури" + +msgid "Start G-code" +msgstr "Стартовий G-code" + +msgid "Start G-code when start the whole printing" +msgstr "Стартовий G-code під час запуску всієї печатки" + +msgid "Start G-code when start the printing of this filament" +msgstr "Стартовий G-code при запуску друку цим філаментом" + +msgid "Single Extruder Multi Material" +msgstr "Мульти-матеріальний (ММ) друк з одним екструдером" + +msgid "Use single nozzle to print multi filament" +msgstr "Використовувати одне сопло для друку декількома нитками" + +msgid "Manual Filament Change" +msgstr "Ручна заміна нитки" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"Увімкніть цей параметр, щоб пропустити користувацький G-код зміни нитки лише " +"на початку друку. Команда зміни інструмента (наприклад, T0) буде пропущена " +"протягом усього друку. Це корисно для ручного друку на декількох матеріалах, " +"де ми використовуємо M600/PAUSE для запуску ручної заміни нитки." + +msgid "Purge in prime tower" +msgstr "Очищення в головній башті" + +msgid "Purge remaining filament into prime tower" +msgstr "Видаліть залишки нитки в башту первинного намотування" + +msgid "Enable filament ramming" +msgstr "Увімкнути накат нитки" + +msgid "No sparse layers (beta)" +msgstr "Без розріджених шарів (бета)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"Якщо увімкнено, вежа витирання не друкується на шарах без змін інструментів. " +"На шарах із зміною інструменту екструдер рухатиметься вниз, щоб надрукувати " +"вежу витирання. Користувач несе відповідальність за те, щоб не було " +"зіткнення з друком." + +msgid "Prime all printing extruders" +msgstr "Підготовка всіх друкуючих екструдерів" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "" +"Якщо увімкнено, усі друкуючі екструдери будуть отестовані на передньому краї " +"друкарського столу перед початком друку." + +msgid "Slice gap closing radius" +msgstr "Радіус закриття пробілів під час нарізування" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"Під час розрізання тріщини на трикутну сітку заповнюються тріщини,менше ніж " +"2 радіуси замикання зазору. Операція закриття проміжку може зменшити " +"кінцевий дозвіл друку, тому бажано підтримувати значення на досить низькому " +"рівні." + +msgid "Slicing Mode" +msgstr "Режим нарізки" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"Використовуйте «парний-непарний» для моделей літаків 3DLabPrint. " +"Використовуйте «Закрити отвори», щоб закрити всі отвори в моделі." + +msgid "Regular" +msgstr "Звичайний" + +msgid "Even-odd" +msgstr "Парний-непарний" + +msgid "Close holes" +msgstr "Закрити отвори" + +msgid "Z offset" +msgstr "Зміщення Z" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"Це значення буде додано/вилучено до/з усіх координат Z у вихідному G-коді. " +"Воно використовується для зрівноваження поганої кінцевої позиції Z: " +"наприклад, якщо ваш кінцевий нуль фактично залишає сопло на 0,3 мм від " +"полотна друку, встановіть його на значення -0,3 (або виправте ваш endstop)." + +msgid "Enable support" +msgstr "Увімкнути підтримку" + +msgid "Enable support generation." +msgstr "Увімкнути генерацію підтримки." + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"звичайна (auto) та деревоподібна (auto) використовується для " +"автоматичногостворення підтримки. Якщо вибрано звичайну (ручну) або " +"деревоподібну (ручну), створюються лише засоби забезпечення підтримки" + +msgid "normal(auto)" +msgstr "звичайна (авто)" + +msgid "tree(auto)" +msgstr "деревоподібна (авто)" + +msgid "normal(manual)" +msgstr "звичайна (ручна)" + +msgid "tree(manual)" +msgstr "деревоподібна (ручна)" + +msgid "Support/object xy distance" +msgstr "Підтримка/об'єкт XY відстань" + +msgid "XY separation between an object and its support" +msgstr "Контролює відстань по XY між об’єктом та його опорою" + +msgid "Pattern angle" +msgstr "Кут шаблону" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "" +"Використовуйте це налаштування, щоб повернути шаблон підтримки в " +"горизонтальному площини." + +msgid "On build plate only" +msgstr "Тільки від столу" + +msgid "Don't create support on model surface, only on build plate" +msgstr "Не створюйте опору на поверхні моделі лише від столу" + +msgid "Support critical regions only" +msgstr "Підтримувати лише критичні області" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "" +"Створювати підтримку тільки для критичних областей, включаючи гострий хвіст," +"консоль і т.д." + +msgid "Remove small overhangs" +msgstr "Видалити невеликі виступи" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "Видалити невеликі виступи, які, можливо, не потребують підтримки." + +msgid "Top Z distance" +msgstr "Верхня відстань Z" + +msgid "The z gap between the top support interface and object" +msgstr "Зазор осі z між верхом підтримки та об'єктом" + +msgid "Bottom Z distance" +msgstr "Нижня відстань Z" + +msgid "The z gap between the bottom support interface and object" +msgstr "Зазор осі z між низом підтримки та об'єктом" + +msgid "Support/raft base" +msgstr "Підтримка/основа плоту" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"Філамент для друку опорної основи та плоту. «За замовчуванням» означає " +"відсутність конкретного філаменту для опори та використання поточного " +"філаменту" + +msgid "Avoid interface filament for base" +msgstr "Уникати філаменту інтерфейсу для бази" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" +"Уникайте використання філаменту інтерфейсу опори для друку опорної бази, " +"якщо це можливо." + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "" +"Ширина лінії підтримки. Якщо вона виражена у %, то буде розрахована по " +"діаметру сопла." + +msgid "Interface use loop pattern" +msgstr "Інтерфейс використовує шаблон шлейфу" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "" +"Накрийте петлями верхній контактний шар опор. Вимкнено за замовчуванням." + +msgid "Support/raft interface" +msgstr "Інтерфейс підтримки/плота" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "" +"Філамент для друку підтримки. «За замовчуванням» означає відсутність " +"конкретного філаменту для друку підтримки, і використовується поточний " +"філамент" + +msgid "Top interface layers" +msgstr "Верхній шар підтримки" + +msgid "Number of top interface layers" +msgstr "Кількість верхніх шарів підтримки" + +msgid "Bottom interface layers" +msgstr "Нижні шари підтримки" + +msgid "Number of bottom interface layers" +msgstr "Кількість шарів інтерфейсу на дні" + +msgid "Same as top" +msgstr "Так само, як вище" + +msgid "Top interface spacing" +msgstr "Відстань між верхніми інтерфейсами" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "Відстань між лініями підтримки. Нуль означає суцільну підтримку" + +msgid "Bottom interface spacing" +msgstr "Інтервал нижнього шару підтримки" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "" +"Відстань між нижніми інтерфейсними лініями. Нуль означає суцільнийінтерфейс" + +msgid "Speed of support interface" +msgstr "Швидкість друку підтримки" + +msgid "Base pattern" +msgstr "Базовий шаблон" + +msgid "Line pattern of support" +msgstr "Лінія підтримки" + +msgid "Rectilinear grid" +msgstr "Прямолінійна сітка" + +msgid "Hollow" +msgstr "Порожній" + +msgid "Interface pattern" +msgstr "Шаблон інтерфейсу" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"Шаблон підтримки. Шаблон за замовчуванням для нерозчинної підтримки - " +"прямолінійний, у той час як шаблон за замовчуванням для розчинної підтримки- " +"концентричний" + +msgid "Rectilinear Interlaced" +msgstr "Прямолінійний черезрядковий" + +msgid "Base pattern spacing" +msgstr "Базовий інтервал шаблону" + +msgid "Spacing between support lines" +msgstr "Відстань між лініями підтримки" + +msgid "Normal Support expansion" +msgstr "Нормальне розширення підтримки" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "Розширити (+) або зменшити (-) горизонтальний проліт підтримки" + +msgid "Speed of support" +msgstr "Швидкість підтримки" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"Стиль і форма підтримки. Для звичайної підтримки проектування опор на " +"регулярну сітку створить більш стійкі опори (за замовчуванням), тоді як " +"щільно прилягаючі підтримки заощадять матеріал і зменшать пошкодження " +"об'єкта.\n" +"Для підтримок органічний, більш агресивно з'єднує гілки та економить багато " +"матеріалу (за замовчуванням органічний), тоді як гібридний стиль створить " +"структуру, схожу на звичайну опору під великими пласкими звисами." + +msgid "Snug" +msgstr "Обережний" + +msgid "Tree Slim" +msgstr "Деревоподібна тонка" + +msgid "Tree Strong" +msgstr "Деревоподібна сильна" + +msgid "Tree Hybrid" +msgstr "Деревоподібна гібридна" + +msgid "Organic" +msgstr "Органічна" + +msgid "Independent support layer height" +msgstr "Незалежна висота опорного шару" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"Опорний шар використовує висоту шару, що не залежить від шару об'єкта. Це " +"необхідний для підтримки налаштування z-gap та збереження часу друку. Цей " +"параметр буде неприпустимим, якщо увімкнено основну башту." + +msgid "Threshold angle" +msgstr "Кут порога" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "Буде створена опора для звисів з кутом нахилу нижче порога." + +msgid "Tree support branch angle" +msgstr "Кут гілки опори дерева" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"Цей параметр визначає максимальний кут звису, який допускається для Гілки " +"підтримки дерева. Якщо кут збільшено, гілки можуть друкуватись " +"більшегоризонтально, дозволяючи їм досягати більшої відстані." + +msgid "Preferred Branch Angle" +msgstr "Бажаний кут повороту гілки" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"Найкращий кут нахилу гілок, коли вони не повинні уникати моделі. " +"Використовуйте менший кут, щоб зробити їх більш вертикальними та стійкими. " +"Використовуйте вищий кут, щоб гілки швидше зливалися." + +msgid "Tree support branch distance" +msgstr "Адаптивна висота шару" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "Цей параметр визначає відстань між сусідніми вузлами підтримки дерева." + +msgid "Branch Density" +msgstr "Щільність гілок" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"Регулює щільність опорної структури, яка використовується для створення " +"кінчиків гілок. Вище значення призводить до кращих звисів, але опори важче " +"видаляти, тому рекомендується увімкнути верхні опорні інтерфейси замість " +"високого значення щільності гілок, якщо потрібні щільні інтерфейси." + +msgid "Adaptive layer height" +msgstr "Адаптивна ширина шару" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "" +"Включення цієї опції означає, що висота шару підтримки дерева, за " +"виключенням першого, буде розрахована автоматично " + +msgid "Auto brim width" +msgstr "Автоматична ширина кайми" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "" +"Увімкнення цієї опції означає, що ширина поля для підтримки дерева " +"будерозрахована автоматично" + +msgid "Tree support brim width" +msgstr "Ширина кайми деревовидної підтримки" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "Відстань від гілки дерева до зовнішньої крайньої лінії кайми" + +msgid "Tip Diameter" +msgstr "Діаметр кінчика" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Діаметр кінчика гілки для органічних підтримок." + +msgid "Tree support branch diameter" +msgstr "Діаметр гілки деревоподібної підтримки" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "Цей параметр визначає початковий діаметр опорних вузлів." + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "Діаметр гілки Кут нахилу гілок" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"Кут нахилу діаметра гілок, оскільки вони поступово стають товстішими донизу. " +"Кут 0 призведе до того, що гілки матимуть рівномірну товщину по всій " +"довжині. Невеликий кут може збільшити стабільність органічної опори." + +msgid "Branch Diameter with double walls" +msgstr "Діаметр гілки з двома стінками" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"Гілки, площа яких більша за площу кола цього діаметру, будуть надруковані з " +"подвійними стінками для стабільності. Встановіть це значення рівним нулю, " +"щоб не друкувати подвійні стінки." + +msgid "Support wall loops" +msgstr "Опорні стінові петлі" + +msgid "This setting specify the count of walls around support" +msgstr "Цей параметр визначає кількість стінок навколо підтримки" + +msgid "Tree support with infill" +msgstr "Підтримка дерева із заповненням" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "" +"Цей параметр визначає, чи слід додавати заповнення всередині " +"великихПорожнини підтримки дерева" + +msgid "Activate temperature control" +msgstr "Увімкнути контроль температури" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"Увімкніть цю опцію для керування температурою в камері. Перед " +"\"machine_start_gcode\" буде додано команду M191\n" +"Команди G-коду: M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "Температура в камері" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"Вища температура камери може допомогти стримувати або зменшувати деформацію " +"та, можливо, підвищити міцність зв’язку між шарами для матеріалів високої " +"температури, таких як ABS, ASA, PC, PA тощо. У той же час, повітряна " +"фільтрація для ABS та ASA може стати гіршею. Однак для PLA, PETG, TPU, PVA " +"та інших матеріалів низької температури фактична температура камери не " +"повинна бути високою, щоб уникнути засмічення, тому рекомендується вимкнути " +"температуру камери (0)" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "Температура сопла для шарів після початкового" + +msgid "Detect thin wall" +msgstr "Виявлення тонкої стінки" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"Визначте тонку стінку, яка не може містити дві лінії. І використовувати один " +"рядок для друку. Може бути надрукований не дуже добре, бо це не замкнутий " +"контур" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "" +"Цей gcode вставляється при зміні філаменту, включаючи команду T для запуску " +"зміни інструменту" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "Цей gcode вставляється, коли змінюється роль екструзії" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "" +"Ширина лінії для верхніх поверхонь. Якщо виражено у %, вона буде розрахована " +"по діаметру сопла." + +msgid "Speed of top surface infill which is solid" +msgstr "Швидкість суцільного заповнення верхньої поверхні" + +msgid "Top shell layers" +msgstr "Суцільних шарів зверху" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"Це кількість суцільних шарів верхньої оболонки, включаючи верхнійповерхневий " +"шар. Якщо товщина, розрахована за цим значенням, меншатовщини верхньої " +"оболонки, то верхні шари оболонки будуть збільшені" + +msgid "Top solid layers" +msgstr "Верхові суцільні шари" + +msgid "Top shell thickness" +msgstr "Товщина верхньої оболонки" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"Кількість верхніх суцільних шарів збільшується при розрізанні, якщо товщина, " +"обчислена шарами верхньої оболонки, тонша за це значення. Це дозволяє " +"уникнути занадто тонкої оболонки при невеликій висоті шару. 0 означає, що це " +"налаштування вимкнено і товщина верхньої оболонки повністюобмежена верхніми " +"шарами оболонки" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "Швидкість переміщення, яка є швидше і без екструзії" + +msgid "Wipe while retracting" +msgstr "Ретракт при очищенні" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"Переміщуйте насадку по останньому шляху видавлювання при збиранні для " +"очищеннявитеклого матеріалу на насадці. Це може мінімізувати великий " +"двійковийоб'єкт під час друку нової деталі після переміщення" + +msgid "Wipe Distance" +msgstr "Відстань очищення" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"Опишіть, як довго сопло буде рухатися вздовж останньої траєкторії під час " +"втягування. \n" +"\n" +"Залежно від тривалості операції витирання, швидкості та тривалості " +"втягування екструдера/нитки, може знадобитися рух накату для нитки. \n" +"\n" +"Якщо встановити значення у параметрі \"Кількість втягування перед витиранням" +"\" нижче, надлишкове втягування буде виконано перед витиранням, інакше воно " +"буде виконано після нього." + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"Очисна колона може використовуватися для очищення залишку на соплі та " +"стабілізації тиску в камері всередині сопла, щоб уникнути " +"дефектівзовнішнього вигляду під час друку предметів." + +msgid "Purging volumes" +msgstr "Обсяг очищення" + +msgid "Flush multiplier" +msgstr "Множина очищення" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "" +"Фактичні обсяги промивки дорівнюють множнику промивки, помноженому на " +"обсягипромивання в таблиці." + +msgid "Prime volume" +msgstr "Основний обсяг" + +msgid "The volume of material to prime extruder on tower." +msgstr "Обсяг матеріалу для первинного екструдера на башті." + +msgid "Width of prime tower" +msgstr "Ширина основної вежі" + +msgid "Wipe tower rotation angle" +msgstr "Кут повороту вежі витирання" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "Кут повороту вежі витирання за віссю Х." + +msgid "Stabilization cone apex angle" +msgstr "Кут нахилу вершини стабілізаційного конуса" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "" +"Кут на вершині конуса, який використовується для стабілізації очисної вежі. " +"Чим більший кут, тим ширша основа." + +msgid "Wipe tower purge lines spacing" +msgstr "Протерти відстань між лініями продувки башти" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "Відстань між лініями продувки на протиральній башті." + +msgid "Maximum wipe tower print speed" +msgstr "Максимальна швидкість друку протиральної башти" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"Максимальна швидкість друку під час продування у башті витирання та друку " +"розріджених шарів у башті витирання. Якщо під час продування швидкість " +"розрідженого заповнення або розрахована швидкість на основі максимальної " +"об'ємної швидкості нитки нижча, замість неї використовуватиметься найнижча " +"швидкість.\n" +"\n" +"Під час друку розріджених шарів, якщо швидкість по внутрішньому периметру " +"або розрахована швидкість на основі максимальної об'ємної швидкості нитки " +"нижча, буде використовуватися найнижча швидкість.\n" +"\n" +"Збільшення цієї швидкості може вплинути на стабільність башти, а також " +"збільшити силу, з якою сопло стикається з будь-якими згустками, що можуть " +"утворитися на башті витирання.\n" +"\n" +"Перш ніж збільшувати цей параметр понад значення за замовчуванням 90 мм/с, " +"переконайтеся, що принтер може надійно працювати на підвищених швидкостях і " +"що витікання під час заміни інструменту добре контролюється.\n" +"\n" +"Для зовнішніх периметрів вежі витирання використовується швидкість " +"внутрішнього периметра незалежно від цього параметра." + +msgid "Wipe tower extruder" +msgstr "Очисна башта екструдера" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"Екструдер для друку по периметру очищувальної вежі. Встановіть значення 0, " +"щоб використовувати той, що є в наявності (бажано нерозчинний)." + +msgid "Purging volumes - load/unload volumes" +msgstr "Обсяги очищення - обсяги завантаження/розвантаження" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"Цей вектор зберігає необхідні об'єми для заміни кожного інструменту, що " +"використовується на вежі. Ці значення використовуються для спрощення " +"створення повних об'ємів очищення нижче." + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Очищення після зміни філаменту буде виконуватися всередині заповнень " +"об’єктів. Це може зменшити кількість відходів і скоротити час друку. Якщо " +"стінки друкуються прозорим філаментом, заповнення зі змішаним кольором буде " +"видимим. Це не буде мати впливу, якщо не ввімкнено вежу для підготовки " +"філаменту." + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"Очищення після зміни філаменту буде виконуватися всередині підтримки " +"об’єктів. Це може зменшити кількість відходів і скоротити час друку. Це не " +"буде мати впливу, якщо не ввімкнено вежу для підготовки філаменту." + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"Цей об'єкт використовуватиметься для продування сопла після зміни нитки " +"розжареннядля економії нитки розжарення та зменшення часу друку. В " +"результаті кольору об'єктів будуть змішані. Він не набуде чинності, якщо не " +"включена первиннавежа." + +msgid "Maximal bridging distance" +msgstr "Максимальна мостова відстань" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "Максимальна відстань між підтримками на рідкісних ділянках заповнення." + +msgid "X-Y hole compensation" +msgstr "Компенсація отвору XY" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"Отвори об'єкта будуть вирощені або стиснуті в площині XY на задане Значення. " +"Позитивне значення робить отвори більше. Негативне значення робить отвори " +"меншими. Ця функція використовується для невеликої Корегування розміру, коли " +"об'єкт має проблему складання" + +msgid "X-Y contour compensation" +msgstr "Компенсація контуру XY" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"Контур об'єкта буде збільшено або зменшено у площині XY на задане Значення. " +"Позитивне значення робить контур більше. Негативне Зменшення контуру. Ця " +"функція використовується для невеликої Корегування розміру, коли об'єкт має " +"проблему складання" + +msgid "Convert holes to polyholes" +msgstr "Перетворення отворів у поліотвори" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"Знайдіть майже круглі отвори, які охоплюють більше одного шару, і " +"перетворіть їхню геометрію в поліотвори. Використовуйте розмір сопла і " +"(найбільший) діаметр, щоб обчислити багатокутний отвір.\n" +"Дивіться http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "Межа виявлення полігону" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"Максимальне відхилення точки від розрахункового радіуса кола.\n" +"Оскільки циліндри часто експортуються як трикутники різного розміру, точки " +"можуть не потрапляти на окружність кола. Цей параметр дає змогу розширити " +"область виявлення.\n" +"у мм або у % від радіуса." + +msgid "Polyhole twist" +msgstr "Скручування полігонів" + +msgid "Rotate the polyhole every layer." +msgstr "Повертайте полігон кожен шар." + +msgid "G-code thumbnails" +msgstr "Мініатюри G-code" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"Розміри малюнків повинні зберігатися у файлах .gcode та .sl1/.sl1s, у " +"наступному форматі: «XxY, XxY»,..." + +msgid "Format of G-code thumbnails" +msgstr "Формат мініатюр G-коду" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "" +"Формат мініатюр G-коду: PNG для найкращої якості, JPG для найменшого " +"розміру, QOI для прошивок з низьким об'ємом пам'яті" + +msgid "Use relative E distances" +msgstr "Використовуйте відносні відстані E екструдера" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" +"Відносна екструзія рекомендується при використанні опції \"label_objects\". " +"Деякі екструдери працюють краще, якщо ця опція не включена (режим абсолютної " +"екструзії). Витираюча вежа сумісна лише з відносним режимом. Він " +"рекомендується для більшості принтерів. За замовчуванням увімкнено" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"Класичний генератор стін виробляє стіни з постійною шириною екструзії, а для " +"дуже тонких ділянок використовується заповнення прогалин. Двигун Arachne " +"виробляє стіни зі змінною шириною екструзії." + +msgid "Classic" +msgstr "Класичний" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "Довжина переходу до периметру" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"При переході між різними числами периметрів, коли деталь стає тонше, для " +"поділу або з'єднання сегментів периметрів виділяєтьсяпевна кількість " +"простору. Він виражається у відсотках від діаметрасопла" + +msgid "Wall transitioning filter margin" +msgstr "Поле фільтра під час переходу між периметрами" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Запобігання переходу назад і вперед між однією додатковою стінкою та однієї " +"менше. Це поле розширює діапазон ширини видавлювання до [Мінімальна ширина " +"стінки - поле, 2 * Мінімальна ширина стінки + поле].Збільшення цього запасу " +"зменшує кількість переходів, що зменшуєкількість запусків/зупинок екструзії " +"та час переміщення. Однак велика Зміна ширини екструзії може призвести до " +"проблем недостатньої або надмірної екструзії. Він виражається у відсотках " +"від діаметра сопла" + +msgid "Wall transitioning threshold angle" +msgstr "Пороговий кут переходу між периметрами" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"Коли створювати переходи між парним та непарним числом периметрів. Форма " +"Клина з кутом більше цього параметра не буде мати переходів, і периметри Не " +"друкуватимуться в центрі для заповнення простору, що залишився.Зменшення " +"цього параметра зменшує кількість та довжину цих центральнихпериметрів, але " +"може залишати проміжки або надмірне витягування" + +msgid "Wall distribution count" +msgstr "Лічильник розподілу за периметрами" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"Кількість периметрів, що відраховується від центру, яким потрібно розкидати " +"варіацію. Нижчі значення означають, що зовнішні периметри не змінюються по " +"ширині" + +msgid "Minimum feature size" +msgstr "Мінімальний розмір об'єкта" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the minimum " +"feature size will be widened to the minimum wall width. It's expressed as a " +"percentage over nozzle diameter" + +msgid "Minimum wall length" +msgstr "Мінімальна довжина стінок" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"Налаштуйте це значення, щоб запобігти друкуванню коротких незакритих стін, " +"що може збільшити час друку. Вищі значення видаляють більше і довші стіни." + +msgid "First layer minimum wall width" +msgstr "Мінімальна ширина стінки першого шару" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"Мінімальну ширину стінки, яку слід використовувати для першого шару, " +"рекомендується встановлювати такого ж розміру, як і сопло. Очікується, що " +"таке налаштування покращить прилипання." + +msgid "Minimum wall width" +msgstr "Мінімальна товщина стінки" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"Ширина периметра, яка замінить тонкі елементи (відповідно до Мінімальним " +"розміром елемента) моделі. Якщо мінімальна ширина периметра менше товщини " +"елемента, то товщина периметра дорівнюватиме товщині самого елемента. Він " +"виражається у відсотках від діаметра сопла" + +msgid "Detect narrow internal solid infill" +msgstr "Виявлення вузького внутрішнього заповнення твердим тілом" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"Ця опція автоматично визначає вузьку внутрішню область заповненнятвердого " +"тіла. Якщо цей параметр увімкнено, для прискорення друку області " +"використовуватиметься концентричний візерунок. Інакше за умовчанням " +"Використовується прямолінійний малюнок." + +msgid "invalid value " +msgstr "неправильне значення " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "Неприпустиме значення при увімкненому режимі спіральної вази: " + +msgid "too large line width " +msgstr "надто велика ширина лінії " + +msgid " not in range " +msgstr " не в зоні " + +msgid "Minimum save" +msgstr "Мінімум" + +msgid "export 3mf with minimum size." +msgstr "експортувати 3mf з мінімальним розміром." + +msgid "No check" +msgstr "Без перевірки" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "" +"Не виконуйте перевірки дійсності, наприклад, перевірку конфліктів шляхуgcode." + +msgid "Ensure on bed" +msgstr "Переконайтеся, що на столі" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "" +"Підніміть об'єкт над ліжком, коли він частково знаходиться під ним. За " +"замовчуванням вимкнено" + +msgid "Orient Options" +msgstr "Параметри орієнтації" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "Орієнтація: 0 - вимкнено, 1 - увімкнено, інші - автоматично" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "Кут обертання навколо осі Z у градусах." + +msgid "Rotate around Y" +msgstr "Обертати навколо осі Y" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "Кут обертання навколо осі Y у градусах." + +msgid "Data directory" +msgstr "Каталог даних" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"Завантажити та зберегти налаштування в даному каталозі. Це корисно для " +"підтримки різних профілів або для ввімкнення конфігурацій із сховища мережі." + +msgid "Load custom gcode" +msgstr "Завантажити користувацький gcode" + +msgid "Load custom gcode from json" +msgstr "Завантажити користувацький код з json" + +msgid "Current z-hop" +msgstr "Поточний Z-стрибок" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "Містить Z-стрибок, присутній на початку користувацького блоку G-коду." + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" +"Позиція екструдера на початку блоку користувацького G-коду. Якщо " +"користувацький G-код переміщується в інше місце, він повинен бути записаний " +"в цю змінну, щоб PrusaSlicer знав, звідки він переміщується, коли він " +"отримає керування назад." + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" +"Стан втягування на початку блоку користувацького G-коду. Якщо користувацький " +"G-код переміщує вісь екструдера, він повинен записати в цю змінну, щоб " +"PrusaSlicer коректно робив накат, коли повертає керування." + +msgid "Extra deretraction" +msgstr "Додаткове втягування" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "В даний час планується додаткове ґрунтування екструдера після накату." + +msgid "Current extruder" +msgstr "Поточний екструдер" + +msgid "Zero-based index of currently used extruder." +msgstr "Нульовий індекс екструдера, що використовується в даний момент." + +msgid "Current object index" +msgstr "Поточний індекс об'єкту" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" +"Специфічний для послідовного друку. Нульовий індекс об'єкта, що друкується в " +"даний момент." + +msgid "Has wipe tower" +msgstr "Має протиральну вежу" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "Незалежно від того, чи створюється вежа витирання на відбитку чи ні." + +msgid "Initial extruder" +msgstr "Початковий екструдер" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" +"Нульовий індекс першого екструдера, що використовується у друці. Те саме, що " +"й initial_tool." + +msgid "Initial tool" +msgstr "Початковий інструмент" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" +"Нульовий індекс першого екструдера, що використовується у друці. Те саме, що " +"й initial_extruder." + +msgid "Is extruder used?" +msgstr "Чи використовується екструдер?" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" +"Вектор bool, що вказує на те, чи використовується даний екструдер у друці." + +msgid "Volume per extruder" +msgstr "Об'єм на один екструдер" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "Загальний об'єм нитки, екструдованої одним екструдером за весь друк." + +msgid "Total toolchanges" +msgstr "Повні зміни інструменту" + +msgid "Number of toolchanges during the print." +msgstr "Кількість замін під час друку." + +msgid "Total volume" +msgstr "Загальний обсяг" + +msgid "Total volume of filament used during the entire print." +msgstr "Загальний об’єм нитки, використаної під час усього друку." + +msgid "Weight per extruder" +msgstr "Вага одного екструдера" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "Вага на один екструдер, що видавлюється протягом усього друку." + +msgid "Total weight" +msgstr "Загальна вага" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" +"Загальна вага друку. Розраховується на основі значення filament_density у " +"налаштуваннях Filament." + +msgid "Total layer count" +msgstr "Загальна кількість шарів" + +msgid "Number of layers in the entire print." +msgstr "Кількість шарів усього друку." + +msgid "Number of objects" +msgstr "Кількість об'єктів" + +msgid "Total number of objects in the print." +msgstr "Загальна кількість об’єктів у друці." + +msgid "Number of instances" +msgstr "Кількість екземплярів" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" +"Загальна кількість екземплярів об’єктів у друці, підсумована за всіма " +"об’єктами." + +msgid "Scale per object" +msgstr "Масштаб на об'єкт" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" +"Містить рядок з інформацією про те, який масштаб було застосовано до окремих " +"об'єктів. Базова індексація об'єктів нульова (перший об'єкт має індекс 0).\n" +"Приклад: 'x:100% y:50% z:100'." + +msgid "Input filename without extension" +msgstr "Введіть назву файлу без розширення" + +msgid "Source filename of the first object, without extension." +msgstr "Ім'я вихідного файлу першого об'єкта без розширення." + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "Вектор має два елементи: X і Y координати точки. Значення в мм." + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" +"Вектор має два елементи: розміри X і Y обмежувальної рамки. Значення в мм." + +msgid "First layer convex hull" +msgstr "Перший шар опуклої оболонки" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" +"Вектор точок опуклої оболонки першого шару. Кожен елемент має такий формат: " +"'[x, y]' (x і y — числа з плаваючою комою в мм)." + +msgid "Bottom-left corner of first layer bounding box" +msgstr "Нижній лівий кут обмежувальної рамки першого шару" + +msgid "Top-right corner of first layer bounding box" +msgstr "Верхній правий кут обмежувальної рамки першого шару" + +msgid "Size of the first layer bounding box" +msgstr "Розмір обмежувальної рамки першого шару" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "Нижній лівий кут обмежувальної рамки для друку" + +msgid "Top-right corner of print bed bounding box" +msgstr "Верхній правий кут обмежувальної рамки для друку" + +msgid "Size of the print bed bounding box" +msgstr "Розмір обмежувальної рамки для друку" + +msgid "Timestamp" +msgstr "Мітка часу" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "Рядок, що містить поточний час у форматі ррррММДД-ГГММСС." + +msgid "Day" +msgstr "День" + +msgid "Hour" +msgstr "Година" + +msgid "Minute" +msgstr "Минута" + +msgid "Print preset name" +msgstr "Друк назви попередньо налаштованої" + +msgid "Name of the print preset used for slicing." +msgstr "Назва стилю друку, яка використовується для нарізки." + +msgid "Filament preset name" +msgstr "Попередня назва нитки" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" +"Назви попередньо налаштованої нитки, яка використовується для нарізки. " +"Змінна — це вектор, що містить одне ім’я для кожного екструдера." + +msgid "Printer preset name" +msgstr "Назва попередньо налаштованого принтера" + +msgid "Name of the printer preset used for slicing." +msgstr "" +"Назва попередньо налаштованого принтера, що використовується для нарізки." + +msgid "Physical printer name" +msgstr "Ім'я фізичного принтера" + +msgid "Name of the physical printer used for slicing." +msgstr "Назва фізичного принтера, який використовується для нарізки." + +msgid "Layer number" +msgstr "Номер шару" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "Індекс поточного шару. На одній основі (тобто перший шар номер 1)." + +msgid "Layer z" +msgstr "Шар Z" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" +"Висота поточного шару над поверхнею стола, виміряна до верхньої частини шару." + +msgid "Maximal layer z" +msgstr "Максимальний шар Z" + +msgid "Height of the last layer above the print bed." +msgstr "Висота останнього шару над друкарським столом." + +msgid "Filament extruder ID" +msgstr "ID номер екструдера нитки" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "Поточний ідентифікатор екструдера. Те саме, що й current_extruder." + +msgid "Error in zip archive" +msgstr "Помилка у zip архіві" + +msgid "Generating walls" +msgstr "Створення периметрів" + +msgid "Generating infill regions" +msgstr "Створення областей заповнення" + +msgid "Generating infill toolpath" +msgstr "Створення траєкторії заповнення" + +msgid "Detect overhangs for auto-lift" +msgstr "Виявлення виступів для автоматичного підйому" + +msgid "Generating support" +msgstr "Генерація підтримки" + +msgid "Checking support necessity" +msgstr "Перевірка необхідності підтримки" + +msgid "floating regions" +msgstr "області, що плавають" + +msgid "floating cantilever" +msgstr "плаваюча консоль" + +msgid "large overhangs" +msgstr "великі звіси" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "" +"Схоже, об'єкт %s має %s. Змініть орієнтацію об'єкта або увімкніть Створення " +"підтримки." + +msgid "Optimizing toolpath" +msgstr "Оптимізація траєкторії інструменту" + +msgid "Slicing mesh" +msgstr "Нарізка сітки" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"Шари не виявлені. Можливо, потрібно відновити файли STL або перевірити їх " +"розмір або товщину і повторити спробу.\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"Компенсація розміру XY об'єкта не буде використовуватись, оскільки він також " +"забарвлений кольором.\n" +"Компенсація розміру XY не може поєднуватися з кольором." + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "Підтримка: створення траєкторії інструмента на шарі %d" + +msgid "Support: detect overhangs" +msgstr "Підтримка: виявлення звисів" + +msgid "Support: generate contact points" +msgstr "Підтримка: створення точок контакту" + +msgid "Support: propagate branches" +msgstr "Підтримка: розповсюдження гілок" + +msgid "Support: draw polygons" +msgstr "Підтримка: малювання полігонів" + +msgid "Support: generate toolpath" +msgstr "Підтримка: створення траєкторії інструменту" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "Підтримка: створення полігонів на шарі %d" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "Підтримка: фіксація отворів на шарі %d" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "Підтримка: розповсюдження гілок на шарі %d" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "" +"Невідомий формат файлу: вхідний файл повинен мати розширення .stl, .obj або ." +"amf (.xml)." + +msgid "Loading of a model file failed." +msgstr "Не вдалося завантажити файл моделі." + +msgid "The supplied file couldn't be read because it's empty" +msgstr "Наданий файл не вдалося прочитати, оскільки він порожній" + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "" +"Невідомий формат файлу: вхідний файл повинен мати розширення .3mf або .zip." +"amf." + +msgid "Canceled" +msgstr "Скасовано" + +msgid "load_obj: failed to parse" +msgstr "помилка завантаження файлу OBJ: не вдалося розпізнати формат" + +msgid "load mtl in obj: failed to parse" +msgstr "не вдалося розпізнати mtl у файлі obj: помилка парсингу" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "Цей файл містить полігони з більше ніж 4 вершинами." + +msgid "The file contains polygons with less than 2 vertices." +msgstr "У файлі містяться полігони з менш ніж 2 вершинами." + +msgid "The file contains invalid vertex index." +msgstr "У файлі містяться недійсний індекс вершини." + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "" +"Цей файл формату OBJ не може бути прочитаний через те, що він порожній." + +msgid "Flow Rate Calibration" +msgstr "Калібрування витрати матеріалу" + +msgid "Max Volumetric Speed Calibration" +msgstr "Максимальна калібрування об’ємної швидкості" + +msgid "Manage Result" +msgstr "Керування результатом" + +msgid "Manual Calibration" +msgstr "Ручне калібрування" + +msgid "Result can be read by human eyes." +msgstr "Результат може бути прочитаний людським оком." + +msgid "Auto-Calibration" +msgstr "Автокалібрування" + +msgid "We would use Lidar to read the calibration result" +msgstr "Ми використовуватимемо Лідар для зчитування результату калібрування" + +msgid "Prev" +msgstr "Попередній" + +msgid "Recalibration" +msgstr "Перекалібрування" + +msgid "Calibrate" +msgstr "Калібрувати" + +msgid "Finish" +msgstr "Завершити" + +msgid "How to use calibration result?" +msgstr "Як використовувати результат калібрування?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "" +"Ви можете змінити Фактор калібрування динаміки потоку в редагуванні матеріалу" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"Поточна версія вбудованого програмного забезпечення принтера не \n" +"підтримує калібрування. Будь ласка, оновіть вбудоване програмне \n" +"забезпечення принтера." + +msgid "Calibration not supported" +msgstr "Калібрування не підтримується" + +msgid "Error desc" +msgstr "Опис помилки" + +msgid "Extra info" +msgstr "Додаткова інформація" + +msgid "Flow Dynamics" +msgstr "Динаміка потоку" + +msgid "Flow Rate" +msgstr "Швидкість потоку" + +msgid "Max Volumetric Speed" +msgstr "Максимальна об’ємна швидкість" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"Будь ласка, введіть дійсні значення:\n" +"Початкове значення: >= %.1f\n" +"Кінцеве значення: <= %.1f\n" +"Кінцеве значення: > Початкового значення\n" +"Крок значення: >= %.3f)" + +msgid "The name cannot be empty." +msgstr "Ім’я не може бути порожнім." + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "Обраний пресет: %s не знайдено." + +msgid "The name cannot be the same as the system preset name." +msgstr "Назва не може бути такою самою, як системна назва." + +msgid "The name is the same as another existing preset name" +msgstr "Назва така сама, як інша існуюча назва налаштування" + +msgid "create new preset failed." +msgstr "не вдалося створити новий передвстановлений параметр." + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "" +"Ви впевнені, що хочете скасувати поточну калібрування і повернутися на " +"домашню сторінку?" + +msgid "No Printer Connected!" +msgstr "Принтер не підключений!" + +msgid "Printer is not connected yet." +msgstr "Принтер ще не підключено." + +msgid "Please select filament to calibrate." +msgstr "Будь ласка, виберіть філамент для калібрування." + +msgid "The input value size must be 3." +msgstr "Розмір введеного значення повинен бути 3." + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"Цей тип машини може зберігати лише 16 результатів історії на сопло. Ви " +"можете видалити існуючі історичні результати та потім розпочати " +"калібрування. Або ви можете продовжити калібрування, але ви не зможете " +"створювати нові історичні результати калібрування. \n" +"Ви все ще хочете продовжити калібрування?" + +msgid "Connecting to printer..." +msgstr "Підключення до принтера…" + +msgid "The failed test result has been dropped." +msgstr "Неуспішний результат тесту було відхилено." + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "Результат калібрування динаміки потоку було збережено в принтері" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"Вже існує історичний результат калібрування з такою самою назвою: %s. " +"Зберігається лише один з результатів з такою самою назвою. Ви впевнені, що " +"хочете перезаписати історичний результат?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" +"Цей тип машини може зберігати лише %d результатів історії на сопло. Цей " +"результат не буде збережений." + +msgid "Internal Error" +msgstr "Внутрішня помилка" + +msgid "Please select at least one filament for calibration" +msgstr "Будь ласка, виберіть принаймні один матеріал для калібрування" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "" +"Результат калібрування витрати матеріалу було збережено в налаштування за " +"замовчуванням" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "" +"Результат калібрування максимальної об’ємної швидкості було збережено в " +"налаштування попередньо заданого значення" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "Коли потрібна калібрування динаміки потоку" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"Зараз у нас є можливість автоматичної калібрації для різних філаментів, яка " +"є повністю автоматизованою, і результат буде збережено в принтері для " +"подальшого використання. Вам потрібно робити калібрування лише в таких " +"обмежених випадках:\n" +"\n" +"1. Якщо ви вводите новий філамент різних брендів/моделей або філамент " +"зволожений;\n" +"2. Якщо сопло зношене або замінене новим;\n" +"3. Якщо максимальна об’ємна швидкість або температура друку змінена в " +"налаштуваннях філаменту." + +msgid "About this calibration" +msgstr "Про це калібрування" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "Коли використовувати Калібрування рівня потоку" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"Після використання калібрування Flow Dynamics можуть все ще виникати деякі " +"проблеми з екструзією, такі як:\n" +"\n" +"Перекістювання: Зайвий матеріал на надрукованому об’єкті, утворення комочків " +"або прищепок, або шари виглядають товщими, ніж очікувалося, і " +"неоднорідними.\n" +"Недостача матеріалу: Дуже тонкі шари, слабка міцність заповнення або " +"прогалини в верхньому шарі моделі, навіть при повільному друку.\n" +"Погана якість поверхні: Поверхня ваших друків виглядає шершавою або " +"нерівною.\n" +"Слабка міцність конструкції: Друки ламаються легко або не виглядають " +"настільки міцними, як повинні бути." + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"Крім того, калібрування рівня потоку є надзвичайно важливим для матеріалів, " +"як наприклад LW-PLA, які утворюють піну і використовуються в моделях літаків " +"для радіокерованої авіації. Ці матеріали значно розширюються при нагріванні, " +"і калібрування надає корисну посилання на рівень потоку." + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"Калібрування швидкості потоку вимірює співвідношення очікуваного до " +"фактичного обсягу викиду. За замовчуванням цей налаштування добре працює на " +"принтерах Bambu Lab і з офіційними філаментами, оскільки вони були " +"попередньо калібровані та налаштовані. Для звичайного філаменту вам, як " +"правило, не потрібно виконувати калібрування швидкості потоку, якщо ви все " +"ще бачите вказані дефекти після проведення інших калібрувань. Для отримання " +"більш докладної інформації ознайомтеся з статтею у вікі." + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"Автоматичне калібрування швидкості потоку використовує технологію Micro-" +"Lidar від Bambu Lab і безпосередньо вимірює калібровочні зразки. Однак " +"будьте попереджені, що ефективність і точність цього методу можуть бути " +"порушені для певних типів матеріалів. Зокрема, філаменти, які є прозорими чи " +"напівпрозорими, мають блискучі частинки або мають високий ступінь відбиття, " +"можуть бути не підходящими для цього калібрування і давати результати, які " +"не відповідають вимогам.\n" +"\n" +"Результати калібрування можуть варіюватися між кожним калібруванням або " +"філаментом. Ми постійно вдосконалюємо точність і сумісність цього " +"калібрування завдяки оновленням в програмному забезпеченні.\n" +"\n" +"Увага: Калібрування швидкості потоку - це складний процес, який слід " +"спробувати лише тим, хто повністю розуміє його призначення і наслідки. " +"Неправильне використання може призвести до неякісних друків або пошкодження " +"принтера. Будь ласка, перед тим як виконувати калібрування, докладно " +"ознайомтеся та розберіться у процесі." + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "Коли вам потрібна калібрування максимальної об'ємної швидкості" + +msgid "Over-extrusion or under extrusion" +msgstr "Перевитрати або недостатній видавання" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "" +"Калібрування максимальної об'ємної швидкості рекомендується при друку з " +"такими матеріалами:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "матеріалами зі значним термічним звуженням/розширенням, такими як..." + +msgid "materials with inaccurate filament diameter" +msgstr "матеріалами з неточним діаметром нитки" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "Ми знайшли найкращий коефіцієнт калібрування динаміки потоку" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "" +"Частина калібрування не вдалася! Ви можете очистити плиту і повторити " +"спробу. Невдалі результати тесту будуть видалені." + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "" +"*Ми рекомендуємо вам додати бренд, матеріал, тип і навіть рівень вологості у " +"назву" + +msgid "Failed" +msgstr "Помилка" + +msgid "Please enter the name you want to save to printer." +msgstr "Будь ласка, введіть ім’я, яке ви хочете зберегти на принтері." + +msgid "The name cannot exceed 40 characters." +msgstr "Ім’я не може перевищувати 40 символів." + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" +"Тільки один із результатів з однаковою назвою буде збережено. Ви впевнені, " +"що хочете перезаписати інші результати?" + +msgid "Please find the best line on your plate" +msgstr "Будь ласка, знайдіть найкращу лінію на вашій пластині" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "Будь ласка, знайдіть кут з ідеальним ступенем витіснення" + +msgid "Input Value" +msgstr "Введіть значення" + +msgid "Save to Filament Preset" +msgstr "Зберегти в попередньому матеріалі" + +msgid "Preset" +msgstr "Шаблон" + +msgid "Record Factor" +msgstr "Фактор запису" + +msgid "We found the best flow ratio for you" +msgstr "Ми знайшли найкраще співвідношення потоку для вас" + +msgid "Flow Ratio" +msgstr "Співвідношення потоку" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "" +"Будь ласка, введіть дійсне значення (0.0 < співвідношення потоку < 2.0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "Будь ласка, введіть назву шаблону, який ви хочете зберегти." + +msgid "Calibration1" +msgstr "Калібрування1" + +msgid "Calibration2" +msgstr "Калібрування2" + +msgid "Please find the best object on your plate" +msgstr "Будь ласка, знайдіть найкращий об'єкт на вашій пластині" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "Заповніть значення над блоком з найгладшою верхньою поверхнею" + +msgid "Skip Calibration2" +msgstr "Пропустити калібрування2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "співвідношення потоку : %s " + +msgid "Please choose a block with smoothest top surface" +msgstr "Будь ласка, виберіть блок з найгладшою верхньою поверхнею" + +msgid "Please choose a block with smoothest top surface." +msgstr "Будь ласка, виберіть блок з найгладшою верхньою поверхнею." + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "" +"Будь ласка, введіть дійсне значення (0 <= Максимальна об'ємна швидкість <= " +"60)" + +msgid "Calibration Type" +msgstr "Тип калібрування" + +msgid "Complete Calibration" +msgstr "Повне калібрування" + +msgid "Fine Calibration based on flow ratio" +msgstr "Точне калібрування на основі співвідношення потоку" + +msgid "Title" +msgstr "Назва" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "" +"Буде надруковано тестову модель. Будь ласка, очистіть стільцевий стіл та " +"поверніть його на гарячу ліжко перед калібруванням." + +msgid "Printing Parameters" +msgstr "Параметри друку" + +msgid "Plate Type" +msgstr "Тип стільця" + +msgid "filament position" +msgstr "положення нитки" + +msgid "External Spool" +msgstr "Зовнішній барабан" + +msgid "Filament For Calibration" +msgstr "Нитка для калібрування" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"Поради щодо матеріалу для калібрування: \n" +"- Матеріали, які можуть використовувати однакову температуру гарячого ліжка\n" +"- Різні бренди та сімейства ниток (Бренд = Bambu, Сімейство = Basic, Matte)" + +msgid "Pattern" +msgstr "Зразок" + +msgid "Method" +msgstr "Метод" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s несумісний з %s" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "TPU не підтримується для автокалібрування Flow Dynamics." + +msgid "Connecting to printer" +msgstr "Підключення до принтера" + +msgid "From k Value" +msgstr "Зі значення k" + +msgid "To k Value" +msgstr "Для значення k" + +msgid "Step value" +msgstr "Величина кроку" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "Діаметр сопла було синхронізовано з налаштувань принтера" + +msgid "From Volumetric Speed" +msgstr "З об'ємною швидкістю" + +msgid "To Volumetric Speed" +msgstr "До об'ємної швидкості" + +msgid "Flow Dynamics Calibration Result" +msgstr "Результат калібрування динаміки потоку" + +msgid "New" +msgstr "Новий" + +msgid "No History Result" +msgstr "Немає історії результатів" + +msgid "Success to get history result" +msgstr "Успішно отримано історичний результат" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "Оновлення історичних записів калібрування динаміки потоку" + +msgid "Action" +msgstr "Дія" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "Цей тип машини може зберігати лише %d результатів історії на сопло." + +msgid "Edit Flow Dynamics Calibration" +msgstr "Редагувати калібрування динаміки потоку" + +msgid "New Flow Dynamic Calibration" +msgstr "Нове калібрування динамічного потоку" + +msgid "Ok" +msgstr "Добре" + +msgid "The filament must be selected." +msgstr "Філамент повинен бути обраний." + +msgid "Network lookup" +msgstr "Мережевий пошук" + +msgid "Address" +msgstr "Адреса" + +msgid "Hostname" +msgstr "Ім'я хоста" + +msgid "Service name" +msgstr "Назва служби" + +msgid "OctoPrint version" +msgstr "Версія OctoPrint" + +msgid "Searching for devices" +msgstr "Пошук пристроїв" + +msgid "Finished" +msgstr "Завершено" + +msgid "Multiple resolved IP addresses" +msgstr "Кілька дозволених IP-адрес" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"Є кілька IP-адрес, які перетворюються на ім’я хоста %1%.\n" +"Будь ласка, виберіть той, який слід використовувати." + +msgid "PA Calibration" +msgstr "Калібрування РА" + +msgid "DDE" +msgstr "Директ" + +msgid "Bowden" +msgstr "Боуден" + +msgid "Extruder type" +msgstr "Тип екструдера" + +msgid "PA Tower" +msgstr "РА башта" + +msgid "PA Line" +msgstr "РА лінія" + +msgid "PA Pattern" +msgstr "PA Патерн" + +msgid "Start PA: " +msgstr "Стартовий PA: " + +msgid "End PA: " +msgstr "Кінцевий РА: " + +msgid "PA step: " +msgstr "Крок PA: " + +msgid "Print numbers" +msgstr "Друк значень" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"Введіть допустимі значення:\n" +"Початковий PA: >= 0,0\n" +"Кінцевий PA: > Початок PA\n" +"Крок PA: >= 0,001)" + +msgid "Temperature calibration" +msgstr "Калібрування температури" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "PCTG" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "Тип філаменту" + +msgid "Start temp: " +msgstr "Початкова температура: " + +msgid "End temp: " +msgstr "Кінцева температура: " + +msgid "Temp step: " +msgstr "Крок температури: " + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"Будь ласка, введіть правильні значення:\n" +"Початкова температура: <= 350\n" +"Кінцева температура: >= 170\n" +"Початкова температура > Кінцева температура + 5)" + +msgid "Max volumetric speed test" +msgstr "Тест максимальної об'ємної швидкості" + +msgid "Start volumetric speed: " +msgstr "Початкова об'ємна швидкість: " + +msgid "End volumetric speed: " +msgstr "Кінцева об'ємна швидкість: " + +msgid "step: " +msgstr "крок: " + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Будь ласка, введіть дійсні значення:\n" +"старт > 0 \n" +"крок >= 0\n" +"кінець > початок + крок)" + +msgid "VFA test" +msgstr "VFA тест" + +msgid "Start speed: " +msgstr "Початкова швидкість: " + +msgid "End speed: " +msgstr "Кінцева швидкість: " + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"Будь ласка, введіть коректні значення:\n" +"початок > 10\n" +"крок >= 0\n" +"кінець > початок + крок)" + +msgid "Start retraction length: " +msgstr "Початкова довжина ретракту: " + +msgid "End retraction length: " +msgstr "Кінцева довжина ретракту: " + +msgid "mm/mm" +msgstr "мм/мм" + +msgid "Send G-Code to printer host" +msgstr "Надіслання G-коду на хост друку" + +msgid "Upload to Printer Host with the following filename:" +msgstr "Завантажити на хост принтера з наступним іменем файлу:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "" +"Використовуйте косі нахилу ( / ) як роздільник каталогів, якщо потрібно." + +msgid "Upload to storage" +msgstr "Завантажити до сховища" + +msgid "Switch to Device tab after upload." +msgstr "Перемкнутися на вкладку Пристрій після завантаження." + +#, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "" +"Назва файлу для завантаження не закінчується на \"%s\". Бажаєте продовжити?" + +msgid "Upload" +msgstr "Завантаження" + +msgid "Print host upload queue" +msgstr "Черга завантаження на хост друку" + +msgid "ID" +msgstr "Ідентифікатор" + +msgid "Progress" +msgstr "Прогрес" + +msgid "Host" +msgstr "Хост" + +msgctxt "OfFile" +msgid "Size" +msgstr "Розмір" + +msgid "Filename" +msgstr "Ім'я файлу" + +msgid "Cancel selected" +msgstr "Скасувати вибране" + +msgid "Show error message" +msgstr "Показати повідомлення про помилку" + +msgid "Enqueued" +msgstr "У черзі" + +msgid "Uploading" +msgstr "Завантаження" + +msgid "Cancelling" +msgstr "Скасування" + +msgid "Error uploading to print host" +msgstr "Помилка завантаження на хост друку" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "Не вдається виконати булеву операцію на вибраних частинах" + +msgid "Mesh Boolean" +msgstr "Булева операція меша" + +msgid "Union" +msgstr "Об'єднання" + +msgid "Difference" +msgstr "Різниця" + +msgid "Intersection" +msgstr "Перетин" + +msgid "Source Volume" +msgstr "Об'єм джерела" + +msgid "Tool Volume" +msgstr "Об'єм інструмента" + +msgid "Subtract from" +msgstr "Відняти від" + +msgid "Subtract with" +msgstr "Відняти з" + +msgid "selected" +msgstr "вибрані" + +msgid "Part 1" +msgstr "Частина 1" + +msgid "Part 2" +msgstr "Частина 2" + +msgid "Delete input" +msgstr "Видалити вхід" + +msgid "Network Test" +msgstr "Тест мережі" + +msgid "Start Test Multi-Thread" +msgstr "Розпочати тестування багатопотоково" + +msgid "Start Test Single-Thread" +msgstr "Розпочати тестування однопотоково" + +msgid "Export Log" +msgstr "Експортувати журнал (лог)" + +msgid "Snapmaker Orca Version:" +msgstr "Версія Snapmaker Orca:" + +msgid "System Version:" +msgstr "Версія системи:" + +msgid "DNS Server:" +msgstr "DNS-сервер:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "Перевірте Snapmaker Orca на (GitHub)" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "Перевірте Snapmaker Orca (GitHub):" + +msgid "Test Bing.com" +msgstr "Tест Bing.com" + +msgid "Test bing.com:" +msgstr "Tест bing.com:" + +msgid "Log Info" +msgstr "Інформація журналу" + +msgid "Select filament preset" +msgstr "Вибрати налаштування філаменту" + +msgid "Create Filament" +msgstr "Створити Філамент" + +msgid "Create Based on Current Filament" +msgstr "Створити на основі поточного філаменту" + +msgid "Copy Current Filament Preset " +msgstr "Копіювати поточний набір параметрів філаменту " + +msgid "Basic Information" +msgstr "Основна інформація" + +msgid "Add Filament Preset under this filament" +msgstr "Додати налаштування філаменту під цим філаментом" + +msgid "We could create the filament presets for your following printer:" +msgstr "" +"Ми можемо створити налаштування філаменту для вашого наступного принтера:" + +msgid "Select Vendor" +msgstr "Вибрати виробника" + +msgid "Input Custom Vendor" +msgstr "Введіть власного виробника" + +msgid "Can't find vendor I want" +msgstr "Не можу знайти виробника, якого я хочу" + +msgid "Select Type" +msgstr "Виберіть Тип" + +msgid "Select Filament Preset" +msgstr "Виберіть налаштування філаменту" + +msgid "Serial" +msgstr "Серійний номер" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "наприклад, Basic, Matte, Silk, Marble" + +msgid "Filament Preset" +msgstr "Набір параметрів філаменту" + +msgid "Create" +msgstr "Створити" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "Виробник не вибраний. Будь ласка, перевиберіть виробника." + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" +"Власного виробника не введено. Будь ласка, введіть інформацію про власного " +"виробника." + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" +"“Bambu” або “Generic” не може бути використано як виробник для власних " +"налаштувань філаменту." + +msgid "Filament type is not selected, please reselect type." +msgstr "Тип філаменту не вибраний. Будь ласка, перевиберіть тип." + +msgid "Filament serial is not inputed, please input serial." +msgstr "" +"Серійний номер філаменту не введено. Будь ласка, введіть серійний номер." + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" +"Можливо, введено спеціальні символи у виробника або серійний номер " +"філаменту. Будь ласка, видаліть їх і введіть ще раз." + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" +"Усі введені значення в полі власного виробника або серійного номера є " +"пробіли. Будь ласка, введіть щось інше." + +msgid "The vendor can not be a number. Please re-enter." +msgstr "Виробник не може бути числом. Будь ласка, введіть ще раз." + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" +"Ви ще не вибрали принтер або налаштування. Будь ласка, виберіть принаймні " +"одне з них." + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"Назва філаменту %s, яку ви створили, вже існує. \n" +"Якщо ви продовжите створення, новий набір параметрів буде відображений з " +"повною назвою. Хочете продовжити?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "Деякі існуючі налаштування не вдалося створити, як показано нижче:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"Чи бажаєте ви їх перезаписати?" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"Ми б перейменували попередні налаштування на «Вибраний вами серійний " +"@принтер постачальника».\n" +"Щоб додати попередні налаштування для інших принтерів, перейдіть до вибору " +"принтера" + +msgid "Create Printer/Nozzle" +msgstr "Створити Принтер/Сопло" + +msgid "Create Printer" +msgstr "Принтер" + +msgid "Create Nozzle for Existing Printer" +msgstr "Створити сопло для існуючого принтера" + +msgid "Create from Template" +msgstr "Створити з шаблону" + +msgid "Create Based on Current Printer" +msgstr "Створити на основі поточного принтера" + +msgid "Import Preset" +msgstr "Імпорт набору параметрів" + +msgid "Create Type" +msgstr "Тип" + +msgid "The model is not found, place reselect vendor." +msgstr "Модель не знайдено. Будь ласка, перевиберіть виробника." + +msgid "Select Model" +msgstr "Виберіть модель" + +msgid "Select Printer" +msgstr "Виберіть принтер" + +msgid "Input Custom Model" +msgstr "Введіть власну модель" + +msgid "Can't find my printer model" +msgstr "Не можу знайти свою модель принтера" + +msgid "Rectangle" +msgstr "Прямокутник" + +msgid "Printable Space" +msgstr "Простір для друку" + +msgid "Hot Bed STL" +msgstr "STL файл для гарячого столу" + +msgid "Load stl" +msgstr "Завантажити STL" + +msgid "Hot Bed SVG" +msgstr "SVG для гарячого ліжка" + +msgid "Load svg" +msgstr "Завантажити SVG" + +msgid "Max Print Height" +msgstr "Максимальна висота друку" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "Файл перевищує %d МБ, будь ласка, імпортуйте знову." + +msgid "Exception in obtaining file size, please import again." +msgstr "" +"Виникла помилка під час визначення розміру файлу, будь ласка, імпортуйте " +"знову." + +msgid "Preset path is not find, please reselect vendor." +msgstr "Шлях до налаштувань не знайдено. Будь ласка, перевиберіть виробника." + +msgid "The printer model was not found, please reselect." +msgstr "Модель принтера не було знайдено. Будь ласка, перевиберіть її." + +msgid "The nozzle diameter is not found, place reselect." +msgstr "Діаметр сопла не знайдено. Будь ласка, перевиберіть його." + +msgid "The printer preset is not found, place reselect." +msgstr "Налаштування принтера не знайдено. Будь ласка, перевиберіть його." + +msgid "Printer Preset" +msgstr "Набір параметрів принтера" + +msgid "Filament Preset Template" +msgstr "Шаблон набору параметрів філаменту" + +msgid "Deselect All" +msgstr "Скасувати вибір всіх" + +msgid "Process Preset Template" +msgstr "Шаблон набору параметрів процесу" + +msgid "Back Page 1" +msgstr "Повернутися на 1 сторінку" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" +"Ви ще не вибрали налаштування принтера, на основі якого створювати. Будь " +"ласка, виберіть виробника та модель принтера" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" +"Ви ввели недопустимий ввід у розділі “Друкована область” на першій сторінці. " +"Будь ласка, перевірте перед створенням." + +msgid "The custom printer or model is not inputed, place input." +msgstr "Власна модель або принтер не введені. Будь ласка, введіть дані." + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"Налаштування принтера, яке ви створили, вже має налаштування з такою ж " +"назвою. Бажаєте перезаписати його?\n" +"\tТак: Перезаписати налаштування принтера з такою ж назвою, і налаштування " +"філаменту та процесу з \n" +"такою ж назвою буде створено знову, а налаштування філаменту та процесу без " +"такої ж назви буде збережено.\n" +"\tСкасувати: Не створювати налаштування, повернутися до інтерфейсу створення." + +msgid "You need to select at least one filament preset." +msgstr "Вам потрібно вибрати принаймні одне налаштування філаменту." + +msgid "You need to select at least one process preset." +msgstr "Вам потрібно вибрати принаймні одне налаштування процесу." + +msgid "Create filament presets failed. As follows:\n" +msgstr "Створення налаштувань філаменту не вдалося. Ось докладніше:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "Створення налаштувань процесу не вдалося. Ось докладніше:\n" + +msgid "Vendor is not find, please reselect." +msgstr "Виробника не знайдено, будь ласка, перевиберіть." + +msgid "Current vendor has no models, please reselect." +msgstr "Поточний виробник не має моделей, будь ласка, перевиберіть." + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" +"Ви не вибрали виробника та модель або не ввели власного виробника та модель." + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" +"Можливо, в власному виробнику або моделі принтера є керуючі послідовності. " +"Будь ласка, видаліть їх і введіть ще раз." + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" +"Усі введені дані в власному виробнику або моделі принтера є пропусками. Будь " +"ласка, введіть ще раз." + +msgid "Please check bed printable shape and origin input." +msgstr "" +"Будь ласка, перевірте введення форми друку на ліжку та початкову точку." + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" +"Ви ще не вибрали принтер, для якого потрібно замінити сопло. Будь ласка, " +"оберіть." + +msgid "Create Printer Successful" +msgstr "Створення принтера успішно завершено" + +msgid "Create Filament Successful" +msgstr "Створення філаменту успішно завершено" + +msgid "Printer Created" +msgstr "Принтер створено" + +msgid "Please go to printer settings to edit your presets" +msgstr "" +"Будь ласка, перейдіть до налаштувань принтера, щоб редагувати свої " +"налаштування" + +msgid "Filament Created" +msgstr "Філамент створено" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"Будь ласка, перейдіть до налаштувань філаменту, щоб відредагувати свої " +"налаштування, якщо потрібно. \n" +"Зверніть увагу, що температура насадки, температура гарячого ліжка і " +"максимальна об’ємна швидкість мають значний вплив на якість друку. Будь " +"ласка, встановіть їх обережно." + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"Orca виявила, що функція синхронізації ваших попередніх налаштувань " +"користувача не ввімкнена, що може призвести до невдалого налаштування нитки " +"на сторінці пристрою.\n" +"Натисніть «Синхронізувати налаштування користувача», щоб увімкнути функцію " +"синхронізації." + +msgid "Printer Setting" +msgstr "Налаштування принтера" + +msgid "Printer config bundle(.orca_printer)" +msgstr "Пакет конфігурації принтера (.orca_printer)" + +msgid "Filament bundle(.orca_filament)" +msgstr "Пакет конфігурації ниток (.orca_filament)" + +msgid "Printer presets(.zip)" +msgstr "Налаштування принтера (.zip)" + +msgid "Filament presets(.zip)" +msgstr "Налаштування філаменту (.zip)" + +msgid "Process presets(.zip)" +msgstr "Налаштування процесу (.zip)" + +msgid "initialize fail" +msgstr "помилка ініціалізації" + +msgid "add file fail" +msgstr "помилка додавання файлу" + +msgid "add bundle structure file fail" +msgstr "помилка додавання файлу структури пакунка" + +msgid "finalize fail" +msgstr "помилка завершення" + +msgid "open zip written fail" +msgstr "помилка відкриття записаного файлу ZIP" + +msgid "Export successful" +msgstr "Експорт успішний" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"Папка ‘%s’ вже існує в поточному каталозі. Бажаєте очистити її і побудувати " +"заново?\n" +"Якщо ні, буде додано суфікс з часом, і ви зможете змінити ім’я після " +"створення." + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"Принтер і всі нитки та налаштування процесу, які належать принтеру.\n" +"Ними можна ділитись з іншими." + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"Налаштування філаменту користувача \n" +"можна поділитися з іншими користувачами." + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" +"Показувати лише назви принтерів зі змінами у налаштуваннях принтера, " +"філаменту та процесу." + +msgid "Only display the filament names with changes to filament presets." +msgstr "Показувати лише назви філаментів зі змінами у налаштуваннях філаменту." + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"Будуть відображатися лише назви принтерів з налаштуваннями принтера " +"користувача, і кожне обране налаштування буде експортовано у форматі ZIP." + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"Будуть відображатися лише назви філаментів з налаштуваннями філаменту " +"користувача, \n" +"і всі налаштування філаменту користувача для кожної вибраної назви " +"філаменту \n" +"будуть експортовані у форматі ZIP." + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"Будуть відображатися лише назви принтерів зі зміненими налаштуваннями " +"процесу, \n" +"і всі налаштування процесу користувача для кожної вибраної назви принтера " +"будуть \n" +"експортовані у форматі ZIP." + +msgid "Please select at least one printer or filament." +msgstr "Будь ласка, виберіть принаймні один принтер або філамент." + +msgid "Please select a type you want to export" +msgstr "Будь ласка, виберіть тип, який ви хочете експортувати" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" +"Не вдалося створити тимчасову теку. Будь ласка, спробуйте експортувати " +"налаштування знову." + +msgid "Edit Filament" +msgstr "Редагувати філамент" + +msgid "Filament presets under this filament" +msgstr "Налаштування філаменту під цим філаментом" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"Примітка: Якщо єдиний пресет під цим філаментом буде видалений, то філамент " +"також буде видалений після виходу з діалогового вікна." + +msgid "Presets inherited by other presets can not be deleted" +msgstr "" +"Налаштування, що успадковуються іншими налаштуваннями, не можуть бути " +"видалені" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "Профіль вказаний нижче, успадковується від поточного профілю." +msgstr[1] "Профілі вказані нижче, успадковуються від поточного профілю." +msgstr[2] "Профілі вказані нижче, успадковуються від поточного профілю." + +msgid "Delete Preset" +msgstr "Видалити пресет" + +msgid "Are you sure to delete the selected preset?" +msgstr "Ви впевнені, що хочете видалити вибраний пресет?" + +msgid "Delete preset" +msgstr "Видалити пресет" + +msgid "+ Add Preset" +msgstr "+ Додати пресет" + +msgid "Delete Filament" +msgstr "Видалити Філамент" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"Всі набори параметрів філаменту, що належать до цього філаменту, будуть " +"видалені. \n" +"Якщо ви використовуєте цей філамент на своєму принтері, будь ласка, скиньте " +"інформацію про філамент для цього слоту." + +msgid "Delete filament" +msgstr "Видалити філамент" + +msgid "Add Preset" +msgstr "Додати Налаштування" + +msgid "Add preset for new printer" +msgstr "Додати налаштування для нового принтера" + +msgid "Copy preset from filament" +msgstr "Скопіювати налаштування з філаменту" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "" +"Вибраний філамент не знайдено в налаштуваннях філаменту. Будь ласка, " +"перевиберіть його" + +msgid "[Delete Required]" +msgstr "[Потрібно видалення]" + +msgid "Edit Preset" +msgstr "Редагувати налаштування" + +msgid "For more information, please check out Wiki" +msgstr "Для отримання додаткової інформації, будь ласка, перевірте Вікі" + +msgid "Collapse" +msgstr "Згорнути" + +msgid "Daily Tips" +msgstr "Щоденні поради" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "запам’ятоване сопло: %.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" +"Діаметр вашого сопла в налаштуваннях не відповідає збереженому діаметру " +"сопла. Чи змінювали ви своє сопло останнім часом?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "" +"*Друк матеріалу %s з використанням сопла %s може призвести до пошкодження " +"сопла" + +msgid "Need select printer" +msgstr "Потрібно вибрати принтер" + +msgid "The start, end or step is not valid value." +msgstr "Початок, кінець або крок не є дійсним значенням." + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "" +"Неможливо калібрувати: можливо, через те, що діапазон встановлених значень " +"калібрування занадто великий, або крок занадто малий" + +msgid "Physical Printer" +msgstr "Фізичний принтер" + +msgid "Print Host upload" +msgstr "Завантаження хоста друку" + +msgid "Could not get a valid Printer Host reference" +msgstr "Неможливо отримати дійсне посилання на хост принтера" + +msgid "Success!" +msgstr "Успіх!" + +msgid "Are you sure to log out?" +msgstr "Ви впевнені, що вийшли?" + +msgid "Refresh Printers" +msgstr "Оновити принтери" + +msgid "View print host webui in Device tab" +msgstr "Переглянути веб-інтерфейс друку у вкладці Пристрій" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "Замінити вкладку пристрою BambuLab на веб-інтерфейс друку" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"Файл HTTPS CA є необов'язковим. Він необхідний лише під час використання " +"HTTPS із сертифікатом." + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "Файли сертифікатів (*.crt, *.pem)|*.crt;*.pem|Всі файли|*.*" + +msgid "Open CA certificate file" +msgstr "Відкрити файл сертифіката ЦС" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "" +"У цій системі %s використовує HTTPS-сертифікати із системного сховища " +"сертифікатів або Keychain." + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "" +"Щоб використовувати власний файл ЦС, імпортуйте файл ЦС в сховище " +"сертифікатів/Keychain." + +msgid "Login/Test" +msgstr "Вхід/Тест" + +msgid "Connection to printers connected via the print host failed." +msgstr "Не вдалося підключитися до принтерів, підключених через вузол друку." + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "Невідповідність типу принт-сервера: %s" + +msgid "Connection to AstroBox works correctly." +msgstr "З’єднання з AstroBox працює коректно." + +msgid "Could not connect to AstroBox" +msgstr "Не вдалося з’єднатися з AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "Примітка: Для AstroBox потрібна версія щонайменше 1.1.0." + +msgid "Connection to Duet works correctly." +msgstr "З’єднання з Duet працює коректно." + +msgid "Could not connect to Duet" +msgstr "Не вдалося з’єднатися з Duet" + +msgid "Unknown error occured" +msgstr "Сталася невідома помилка" + +msgid "Wrong password" +msgstr "Неправильний пароль" + +msgid "Could not get resources to create a new connection" +msgstr "Не вдалося отримати ресурси для створення нового з’єднання" + +msgid "Upload not enabled on FlashAir card." +msgstr "Завантаження не активовано на картці FlashAir." + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "З’єднання з FlashAir працює коректно, і завантаження активовано." + +msgid "Could not connect to FlashAir" +msgstr "Не вдалося з’єднатися з FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "" +"Примітка: Для FlashAir потрібна прошивка версії 2.00.02 або новіша з " +"активованою функцією завантаження." + +msgid "Connection to MKS works correctly." +msgstr "З’єднання з MKS працює коректно." + +msgid "Could not connect to MKS" +msgstr "Не вдалося підключитися до MKS" + +msgid "Connection to OctoPrint works correctly." +msgstr "Підключення до OctoPrint працює правильно." + +msgid "Could not connect to OctoPrint" +msgstr "Не вдалося підключитися до OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "Примітка. Потрібна версія OctoPrint не нижче 1.1.0." + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "Підключення до Prusa SL1 / SL1S працює правильно." + +msgid "Could not connect to Prusa SLA" +msgstr "Не вдалося підключитися до Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "Підключення до PrusaLink працює коректно." + +msgid "Could not connect to PrusaLink" +msgstr "Не вдалося підключитися до PrusaLink" + +msgid "Storages found" +msgstr "Сховища знайдено" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1% : лише читання" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1% : немає вільного місця" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" +"Відбулася помилка завантаження. За адресою %1% не знайдено відповідного " +"сховища." + +msgid "Connection to Prusa Connect works correctly." +msgstr "Підключення до Prusa Connect працює коректно." + +msgid "Could not connect to Prusa Connect" +msgstr "Не вдалося підключитися до Prusa Connect" + +msgid "Connection to Repetier works correctly." +msgstr "Підключення до Repetier працює правильно." + +msgid "Could not connect to Repetier" +msgstr "Не вдалося підключитися до Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "Примітка: потрібна версія Repetier принаймні 0.90.0." + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"Статус HTTP: %1%\n" +"Тіло повідомлення: “%2%" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Помилка аналізу відповіді хоста.\n" +"Тіло повідомлення: “%1%”\n" +"Помилка: “%2%”" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"Помилка переліку хост-принтерів.\n" +"Тіло повідомлення: “%1%”\n" +"Помилка: “%2%”" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"Він має малу висоту шару, що призводить до майже непомітних ліній " +"шаруватості та високої якості друку. Він підходить для більшості загальних " +"випадків друку." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"Порівняно з типовим профілем для насадки 0,2 мм, він має менші швидкості і " +"прискорення, а також розріджену структуру наповнення у вигляді гіроїда. " +"Таким чином, він забезпечує значно вищу якість друку, але при цьому " +"друкується значно довше." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" +"Порівняно з типовим профілем для насадки 0,2 мм, він має трохи більшу висоту " +"шару, що призводить до майже непомітних ліній шаруватості та трохи коротший " +"час друку." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" +"Порівняно з типовим профілем для насадки 0,2 мм, він має більшу висоту шару, " +"що призводить до слабко видимих ліній шаруватості, але при цьому друкується " +"трохи швидше." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"Порівняно з типовим профілем для насадки 0,2 мм, це має меншу висоту шару, і " +"результатом є майже невидимі лінії шару та вища якість друку, але коротший " +"час друку." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Порівняно з типовим профілем для насадки 0,2 мм, цей профіль має меншу " +"кількість ліній шарування, менші швидкості і прискорення, і розріджене " +"наповнення виконане у вигляді геометрії “Gyroid”. Таким чином, він " +"забезпечує майже невидимі лінії шарування та значно вищу якість друку, але " +"довший час друку." + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"Порівняно з типовим профілем для насадки діаметром 0,2 мм, цей профіль має " +"меншу висоту шару, що призводить до мінімальних ліній шарування та вищої " +"якості друку, але скорочує час друку." + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Порівняно з типовим профілем для насадки 0,2 мм, цей профіль має меншу " +"кількість ліній шарування, менші швидкості та прискорення, а також " +"розріджене наповнення виконане у вигляді геометрії “Gyroid”. Таким чином, " +"він забезпечує мінімальні лінії шарування та значно вищу якість друку, але " +"збільшує час друку." + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"Він має загальну висоту шару та призводить до загальних ліній шарування і " +"якості друку. Він підходить для більшості загальних випадків друку." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Порівняно з типовим профілем для насадки діаметром 0,4 мм, цей профіль має " +"більше кількість обводок стін та вищу щільність розрідженого наповнювача. " +"Таким чином, він забезпечує більшу міцність друків, але вимагає більше " +"витрати філаменту та більшого часу друку." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"Порівняно з типовим профілем для насадки діаметром 0,4 мм, цей профіль має " +"більшу висоту шару, що призводить до більш помітних ліній шарування та " +"меншої якості друку, але трохи скорочує час друку." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"Порівняно з типовим профілем для насадки діаметром 0,4 мм, цей профіль має " +"більшу висоту шару, що призводить до більш помітних ліній шарування та " +"меншої якості друку, але скорочує час друку." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Порівняно з типовим профілем для насадки діаметром 0,4 мм, цей профіль має " +"меншу висоту шару, що призводить до менш помітних ліній шарування та вищої " +"якості друку, але збільшує час друку." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"Порівняно з типовим профілем для насадки діаметром 0,4 мм, цей профіль має " +"меншу висоту шару, менші швидкості і прискорення, а також розріджений " +"внутрішній наповнювач у вигляді геоіда. Таким чином, це призводить до менш " +"помітних ліній шарування та значно вищої якості друку, але збільшує час " +"друку." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Порівняно з типовим профілем для насадки діаметром 0,4 мм, цей профіль має " +"меншу висоту шару, що призводить до майже непомітних ліній шарування та " +"вищої якості друку, але збільшує час друку." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"Порівняно з типовим профілем для насадки діаметром 0,4 мм, цей профіль має " +"меншу висоту шару, менші швидкості та прискорення, а також розріджений " +"малюнок наповнення у вигляді геоїда. Тому він має майже непомітні лінії " +"шарування і набагато вищу якість друку, але значно довший час друку." + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"Порівняно з типовим профілем для насадки діаметром 0,4 мм, цей профіль має " +"меншу висоту шару, що призводить до майже непомітних ліній шарування, але " +"також збільшує час друку." + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"Він має велику висоту шару, що призводить до видимих ліній шарування і " +"звичайної якості друку та часу друку." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"Порівняно з типовим профілем з 0,6 мм сопла, він має більше стінних петель і " +"вищу щільність розрідженого наповнювача. Таким чином, він забезпечує більшу " +"міцність друків, але споживає більше філаменту і має довший час друку." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"Порівняно з типовим профілем з 0,6 мм сопла, він має більшу висоту шару, що " +"призводить до більш помітних ліній шару та нижчої якості друку, але " +"коротшого часу друку у деяких випадках друку." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"Порівняно з типовим профілем з 0,6 мм сопла, він має більшу висоту шару, що " +"призводить до набагато більш помітних ліній шару та значно нижчої якості " +"друку, але коротшого часу друку у деяких випадках друку." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"Порівняно з типовим профілем з 0,6 мм сопла, він має меншу висоту шару, що " +"призводить до менш помітних ліній шару і трохи вищої якості друку, але " +"довшого часу друку." + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"Порівняно з типовим профілем з 0,6 мм сопла, він має меншу висоту шару, що " +"призводить до менш помітних ліній шару та вищої якості друку, але більш " +"тривалого часу друку." + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"Він має дуже велику висоту шару, що призводить до дуже помітних ліній шару, " +"низької якості друку і загального часу друку." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"Порівняно з типовим профілем для сопла 0,8 мм, цей профіль має більшу висоту " +"шару, що призводить до дуже помітних ліній шару і значно нижчої якості " +"друку, але коротшого часу друку у деяких випадках друку." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"Порівняно з типовим профілем для сопла 0,8 мм, цей профіль має набагато " +"більшу висоту шару, що призводить до надзвичайно помітних ліній шару і " +"значно нижчої якості друку, але набагато коротшого часу друку у деяких " +"випадках друку." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"Порівняно з типовим профілем для сопла 0,8 мм, цей профіль має трохи меншу " +"висоту шару, що призводить до трохи менше, але все ще помітних ліній шару і " +"трохи вищої якості друку, але довшого часу друку у деяких випадках друку." + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"Порівняно з типовим профілем для сопла 0,8 мм, цей профіль має меншу висоту " +"шару, що призводить до менше, але все ще помітних ліній шару і трохи вищої " +"якості друку, але довшого часу друку у деяких випадках друку." + +msgid "Connected to Obico successfully!" +msgstr "Підключення до Obico успішно!" + +msgid "Could not connect to Obico" +msgstr "Не вдалося з'єднатися з Obico" + +msgid "Connected to SimplyPrint successfully!" +msgstr "Успішне підключення до SimplyPrint!" + +msgid "Could not connect to SimplyPrint" +msgstr "Не вдалося підключитися до SimplyPrint" + +msgid "Internal error" +msgstr "Внутрішня помилка" + +msgid "Unknown error" +msgstr "Невідома помилка" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" +"Обліковий запис SimplyPrint не пов’язано. Щоб налаштувати його, перейдіть до " +"параметрів підключення." + +msgid "Connection to Flashforge works correctly." +msgstr "Підключення до Flashforge працює правильно." + +msgid "Could not connect to Flashforge" +msgstr "Не вдалося підключитися до Flashforge" + +msgid "The provided state is not correct." +msgstr "Наданий стан невірний." + +msgid "Please give the required permissions when authorizing this application." +msgstr "Надайте необхідні дозволи під час авторизації цієї програми." + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "Під час спроби входу трапилося щось несподіване. Повторіть спробу." + +msgid "User cancelled." +msgstr "Користувача скасовано." + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"Точна стінка\n" +"Чи знаєте ви, що ввімкнення точної стінки може покращити точність і " +"узгодженість шару?" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"Сендвіч режим\n" +"Чи знаєте ви, що можна використовувати сендвіч-режим (внутрішній-зовнішній-" +"внутрішній), щоб покращити точність і узгодженість шарів, якщо ваша модель " +"не має дуже крутих звисів?" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"Температура камери\n" +"Чи знаєте ви, що Snapmaker Orca вміє керувати температурою камери?" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"Калібрування\n" +"Чи знаєте ви, що калібрування принтера може творити чудеса? Перегляньте наш " +"улюблений набір тестів для калібрування в Snapmaker Orca." + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"Допоміжний вентилятор\n" +"Чи знаєте ви, що Snapmaker Orca підтримує вентилятор охолодження допоміжної " +"частини?" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"Фільтрація повітря/витяжний вентилятор\n" +"Чи знаєте ви, що Snapmaker Orca підтримує фільтрацію повітря/витяжний вентилятор?" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"Вікно G-коду\n" +"Ви можете вмикати/вимикати вікно G-коду, натискаючи клавішу C." + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"Перемикання робочих областей\n" +"Ви можете переключатися між робочими областями Підготовка і " +"Перегляд, натискаючи клавішу Tab." + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"Як використовувати комбінації клавіш\n" +"Чи знаєте ви, що Snapmaker Orca пропонує широкий спектр комбінацій клавіш для " +"роботи з 3D-сценами." + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"Reverse on odd\n" +"Чи знали ви, що функція Реверс по непарних периметрах може значно " +"покращити якість поверхні ваших звисів?" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"Інструмент вирізування\n" +"Чи знаєте ви, що можна вирізати модель під будь-яким кутом і в будь-якому " +"положенніза допомогою різального інструмента?" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"Виправлення моделі\n" +"Чи знаєте ви, що ви можете виправити пошкоджену 3D-модель, щоб уникнути " +"багатьох проблем з нарізанням (slicing) на операційній системі Windows?" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"Таймлапс\n" +"Чи знаєте ви, що ви можете генерувати відео під час кожного друку?" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"Авторозбудова\n" +"Чи знаєте ви, що можна автоматично впорядкувати всі об'єкти в проекті?" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"Автоорієнтація\n" +"Чи знаєте ви, що можна повертати об'єкти в оптимальну орієнтацію для друку " +"простим клацанням?" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"Покласти на обличчя\n" +"Чи знаєте ви, що ви можете швидко зорієнтувати модель так, щоб одна з її " +"граней лежала на столі? Виберіть функцію «Розмістити на межі» або натисніть " +"клавішу < b > F ." + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"Список об'єктів\n" +"Чи знаєте ви, що можна переглядати всі об'єкти/деталі у списку та змінювати " +"Параметри для кожного об'єкта/деталі?" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"Функція пошуку\n" +"Чи знаєте ви, що для швидкого пошуку певних налаштувань Snapmaker Orca ви " +"можете скористатися інструментом \"Пошук\"?" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"Спростити модель\n" +"Чи знаєте ви, що можна зменшити кількість трикутників у сітці за допомогою " +"функції Спростити сітку? Клацніть правою кнопкою миші на моделі і виберіть " +"Спростити модель." + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"Таблиця параметрів зрізу\n" +"Чи знаєте ви, що можна переглядати всі об'єкти/деталі в таблиці та змінювати " +"налаштування для кожного об'єкта/деталі?" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"Розділити на об'єкти/деталі\n" +"Чи знаєте ви, що ви можете розділити великий об'єкт на маленькі для " +"легкоїзабарвлення чи друку?" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"Відняти частину\n" +"Чи знаєте ви, що можна віднімати одну сіть від іншої за допомогою " +"модифікатора \"Від'ємна частина\"? Таким чином, ви можете, наприклад, " +"створювати отвори зі змінним розміром безпосередньо в Snapmaker Orca." + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP\n" +"Чи знаєте ви, що ви можете покращити якість друку, нарізавши файл " +"STEPзамість STL?\n" +"Snapmaker Orca підтримує нарізання файлів STEP, забезпечуючи більш " +"плавнірезультати порівняно з нижчою роздільною здатністю STL. Спробуй!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Місце з'єднання Z-шва\n" +"Чи знали ви, що ви можете налаштовувати розташування Z-шва, і навіть " +"розфарбовувати його на друці, щоб зробити його менш видимим? Це покращує " +"загальний вигляд вашої моделі. Перевірте це!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"Тонке налаштування витрати\n" +"Чи знаєте ви, що швидкість потоку може бути точно налаштована для навіть " +"більшекрасивих відбитків? Залежно від матеріалу можна покращити загальне " +"оздобленнядрукарської моделі, виконавши деяке тонке налаштування." + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"Розбийте відбитки на пластини\n" +"Чи знаєте ви, що можна розділити модель з великою кількістю деталей на " +"окремі столи, готові до друку? Це спростить процес відстеження всіхдеталей." + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"Прискорення друку за допомогою функції «Адаптивна висота шару»\n" +"Чи знаєте ви, що можна друкувати модель ще швидше за допомогою параметра " +"«Адаптивна висота шару»? Подивися!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"Опорне забарвлення\n" +"Ти знав, що можеш намалювати розташування своїх опор? Ця функція " +"спрощуєрозміщення матеріалу опори тільки на тих перерізах моделі, які в " +"цьомупотребують." + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"Різні типи опор\n" +"Чи знаєте ви, що можна вибрати один із кількох типів опор? Підтримка Tree " +"відмінно працює для органічних моделей, зберігаючи при цьому ниткинапруження " +"і підвищуючи швидкість друку. Перевірте їх!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"Друк шовковим філаментом\n" +"Чи знаєте ви, що шовковий іламент потребує особливої уваги, щоб її Успішно " +"надрукувати? Для досягнення найкращих результатів завждирекомендується більш " +"висока температура та нижча швидкість." + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"Кайма для кращого прилипання\n" +"Чи знаєте ви, що коли моделі друку мають невелику площу контакту з поверхнею " +"друку, рекомендується використовувати кайму?" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"Встановлення параметрів для кількох об'єктів\n" +"Чи знаєте ви, що можна встановити параметри нарізки для всіх " +"вибранихоб'єктів одночасно?" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"Стек об’єктів\n" +"Чи знаєте ви, що можна складати об’єкти як одне ціле?" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"Урівень з опорою/об'єктами/заповненням\n" +"Чи знаєте ви, що ви можете зберегти втрачені нитки, промиваючи їх в опору/" +"об'єкти/заповнення під час зміни нитки?" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"Підвищення міцності\n" +"Чи знаєте ви, що для підвищення міцності моделі можна використовувати " +"більшепериметрів та вищу щільність заповнення?" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"Коли потрібно друкувати з відкритими дверцятами принтера\n" +"Чи знаєте ви, що відкриття дверцят принтера може знизити ймовірність " +"засмічення екструдера/гарячого блока при друку низькотемпературного " +"філаменту при вищій температурі усередині корпусу? Більше інформації " +"знаходиться в Вікі." + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"Уникнення деформації\n" +"Чи знаєте ви, що при друку матеріалами, схильними до деформації, такими як " +"ABS, відповідне підвищення температури гарячого ліжка може зменшити " +"ймовірність деформації." + +#~ msgid "Current association: " +#~ msgstr "Поточна асоціація: " + +#~ msgid "Associate prusaslicer://" +#~ msgstr "Асоціювати prusaslicer://" + +#~ msgid "Not associated to any application" +#~ msgstr "Не пов'язаний з жодним додатком" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "models from Printable.com" +#~ msgstr "" +#~ "Асоціювати Snapmaker Orca з prusaslicer:// посиланнями щоб Orca могла " +#~ "відкривати моделі прямо з Printable.com" + +#~ msgid "Associate bambustudio://" +#~ msgstr "Асоціювати bambustudio://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with bambustudio:// links so that Orca can open " +#~ "models from makerworld.com" +#~ msgstr "" +#~ "Асоціювати Snapmaker Orca з bambustudio:// посиланнями щоб Orca могла " +#~ "відкривати моделі прямо з makerworld.com" + +#~ msgid "Associate cura://" +#~ msgstr "Асоціювати cura://" + +#~ msgid "" +#~ "Associate Snapmaker Orca with cura:// links so that Orca can open models from " +#~ "thingiverse.com" +#~ msgstr "" +#~ "Асоціювати Snapmaker Orca з cura:// посиланнями щоб Orca могла відкривати " +#~ "моделі прямо з thingiverse.com" + +#~ msgid "" +#~ "File size exceeds the 100MB upload limit. Please upload your file through " +#~ "the panel." +#~ msgstr "" +#~ "Розмір файлу перевищує ліміт завантаження в 100 Мб. Будь ласка, " +#~ "завантажте свій файл через панель." + +#~ msgid "Please input a valid value (K in 0~0.3)" +#~ msgstr "Введіть допустиме значення (K в діапазоні 0~0.3)" + +#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" +#~ msgstr "Будь ласка, введіть допустиме значення (K від 0~0.3, N від 0.6~2.0)" + +#~ msgid "Select connected printetrs (0/6)" +#~ msgstr "Вибір підключених принтерів (0/6)" + +#, c-format, boost-format +#~ msgid "Select Connected Printetrs (%d/6)" +#~ msgstr "Виберіть Підключені принтери (%d/6)" + +#~ msgid "PrintingPause" +#~ msgstr "Пауза друку" + +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "" +#~ "Не вдалося встановити локальне підключення до принтера; спробуйте ще раз." + +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "Будь ласка, знайдіть докладну інформацію щодо калібрування “Flow Dynamics " +#~ "Calibration” у нашому вікі.\n" +#~ "\n" +#~ "Зазвичай калібрування не є необхідним. Коли ви розпочинаєте друк з одним " +#~ "кольором/матеріалом, з опцією “калібрування динаміки потоку” включеною у " +#~ "меню початку друку, принтер буде використовувати старий спосіб " +#~ "калібрування філаменту перед початком друку; Коли ви розпочинаєте друк з " +#~ "декількома кольорами/матеріалами, принтер використовуватиме стандартні " +#~ "параметри компенсації для філаменту під час кожного перемикання " +#~ "філаменту, що в більшості випадків дає гарний результат.\n" +#~ "\n" +#~ "Зверніть увагу, що є деякі випадки, коли результат калібрування може бути " +#~ "ненадійним: використання текстурної підкладки для калібрування; слабка " +#~ "адгезія підкладки (будь ласка, вимийте підкладку або нанесіть клей!) … " +#~ "Більше інформації можна знайти у нашому вікі.\n" +#~ "\n" +#~ "Результати калібрування мають приблизно 10-відсотковий шум у наших " +#~ "тестах, що може призвести до незначних відмінностей у кожному " +#~ "калібруванні. Ми все ще вивчаємо кореневу причину, щоб внести поліпшення " +#~ "в майбутніх оновленнях." + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "" +#~ "Збережено буде лише один із результатів з однаковою назвою. Ви впевнені," +#~ "що хочете перезаписати інші результати?" + +#, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "Вже існує історичний результат калібрування з такою самою назвою: %s. " +#~ "Зберігається лише один результат з такою самою назвою. Ви впевнені, що " +#~ "хочете замінити історичний результат?" + +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "Будь ласка, знайдіть кут із ідеальним ступенем екструзії" + +#~ msgid "" +#~ "Associate Snapmaker Orca with prusaslicer:// links so that Orca can open " +#~ "PrusaSlicer links from Printable.com" +#~ msgstr "" +#~ "Зв'язати Snapmaker Orca з посиланнями prusaslicer://, щоб Orca могла " +#~ "відкривати посилання PrusaSlicer з Printable.com" + +#~ msgid "" +#~ "Order of wall/infill. When the tickbox is unchecked the walls are printed " +#~ "first, which works best in most cases.\n" +#~ "\n" +#~ "Printing walls first may help with extreme overhangs as the walls have " +#~ "the neighbouring infill to adhere to. However, the infill will slighly " +#~ "push out the printed walls where it is attached to them, resulting in a " +#~ "worse external surface finish. It can also cause the infill to shine " +#~ "through the external surfaces of the part." +#~ msgstr "" +#~ "Порядок стінка/заповнення. Якщо прапорець знято, першими друкуються " +#~ "стіни, що в більшості випадків працює найкраще.\n" +#~ "\n" +#~ "Друк стінок першими може допомогти у випадку екстремальних виступів, " +#~ "оскільки стінки мають сусіднє заповнення, до якого вони прилягають. Однак " +#~ "заповнення злегка виштовхує надруковані стінки там, де воно прикріплене " +#~ "до них, що призводить до погіршення зовнішньої обробки поверхні. Це також " +#~ "може призвести до того, що заповнення просвічуватиметься крізь зовнішні " +#~ "поверхні деталі." + +#~ msgid "X" +#~ msgstr "X" + +#~ msgid "Y" +#~ msgstr "Y" + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca заснований на BambuStudio від Bambulab, який належить " +#~ "PrusaSlicer.\n" +#~ "Prusa Research. PrusaSlicer від Slic3r Алессандро Ранеллуччі і\n" +#~ "спільнота RepRap" + +#~ msgid "Export &Configs" +#~ msgstr "Експорт &конфігурації" + +#~ msgid "Infill direction" +#~ msgstr "Напрям заповнення" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "Увімкніть цей параметр, щоб отримати файл G-коду з переміщеннями G2 та " +#~ "G3. А допуск припасування однаковим дозволом" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "Область заповнення трохи збільшена для перекриття периметром для " +#~ "кращогоскріплення. Відсоткове значення щодо ширини лінії заповнення" + +#~ msgid "Unload Filament" +#~ msgstr "Вивантажте філамент" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "" +#~ "Виберіть слот AMS, потім натисніть кнопку \\Load\\ або \\Unload\\, щоб " +#~ "автоматично\n" +#~ "завантажити або вивантажити філамент." + +#~ msgid "MC" +#~ msgstr "MC" + +#~ msgid "MainBoard" +#~ msgstr "Основна плата" + +#~ msgid "TH" +#~ msgstr "TH" + +#~ msgid "XCam" +#~ msgstr "XCam" + +#~ msgid "HMS" +#~ msgstr "HMS" + +#~ msgid "active" +#~ msgstr "активно" + +#~ msgid "Jump to layer" +#~ msgstr "Перейти до шару" + +#~ msgid "Cabin humidity" +#~ msgstr "Вологість салону" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "Зелений означає, що вологість AMS нормальна, помаранчевий означає, " +#~ "щоВологість висока,\n" +#~ "червоний означає, що вологість занадто висока. (Гігрометр: чим нижче, тим " +#~ "краще.)" + +#~ msgid "Desiccant status" +#~ msgstr "Статус вологопоглинача" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "Стан влагопоглинача нижче двох поділів свідчить про те, що вологопоглинач " +#~ "може бути\n" +#~ "неактивний. Будь ласка, замініть осушувач. (Смуги: чим вище, тим краще.)" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "Примітка. Коли кришку відкрито або замінено пакет з вологопоглиначем, це " +#~ "може зайняти деякий час.\n" +#~ "годин або ночі, щоб увібрати вологу. Низькі температури також " +#~ "уповільнюють\n" +#~ "процес. У цей час індикатор може не відображати патронник.\n" +#~ "точно." + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "Примітка: якщо під час друку буде вставлено новий філамент, AMS не буде " +#~ "автоматично читати будь-яку інформацію до завершення друку." + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "Успішно експортувати G-код у %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "Помилка ініціалізації (немає пристрою)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "Помилка ініціалізації (немає камери)!" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "" +#~ "Принтер зайнятий завантаженням. Дочекайтеся завершення завантаження." + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "Ініціалізація не вдалася (недоступна лише в режимі LAN)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "" +#~ "Помилка ініціалізації (відсутня IP-адреса принтера в локальній мережі)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "Зупинено [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "Завантаження не вдалося [%d]!" + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Ви змінили деякі налаштування попередньої установки \"%1%\". \n" +#~ "Зберегти ці змінені налаштування (нове значення) після перемикання Набір " +#~ "параметрів?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "" +#~ "Ви змінили деякі налаштування передустановки. \n" +#~ "Зберегти ці змінені налаштування (нове значення) після перемикання Набір " +#~ "параметрів?" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "" +#~ "Додавання заповнення твердого тіла поблизу похилих поверхонь для Гарантії " +#~ "товщини вертикальної оболонки (верхній + нижній шари твердого тіла)" + +#~ msgid "Configuration package updated to " +#~ msgstr "Пакет конфігурації оновлено до " + +#~ msgid "" +#~ "Improve shell precision by adjusting outer wall spacing. This also " +#~ "improves layer consistency." +#~ msgstr "" +#~ "Підвищення точності оболонки за рахунок регулювання відстані між " +#~ "зовнішнімипериметрами. Це також покращує узгодженість шарів." + +#~ msgid "The Config can not be loaded." +#~ msgstr "Конфіг не завантажується." + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "" +#~ "3mf генерується старим слайсером Orca, завантажувати лише дані геометрії." + +#~ msgid "" +#~ "Relative extrusion is recommended when using \"label_objects\" option." +#~ "Some extruders work better with this option unckecked (absolute extrusion " +#~ "mode). Wipe tower is only compatible with relative mode. It is always " +#~ "enabled on BambuLab printers. Default is checked" +#~ msgstr "" +#~ "При використанні опції «label_objects» рекомендується відносне " +#~ "Видавлювання. Деякі екструдери працюють краще з цією опцією без " +#~ "перевірки(абсолютний режим екструзії). Обтиральна вежа сумісна лише з " +#~ "відносним режимом. Вона завжди включена на принтерах BambuLab. за " +#~ "замовчуванням встановлено прапорець" + +#~ msgid "Movement:" +#~ msgstr "Рух:" + +#~ msgid "Movement" +#~ msgstr "Рух" + +#~ msgid "Auto Segment" +#~ msgstr "Автосегмент" + +#~ msgid "Depth ratio" +#~ msgstr "Коефіцієнт глибини" + +#~ msgid "Prizm" +#~ msgstr "Призма" + +#~ msgid "connector is out of cut contour" +#~ msgstr "роз'єм виходить за контур вирізу" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "роз'єми виходять за контур вирізу" + +#~ msgid "connector is out of object" +#~ msgstr "роз'єм поза об'єктом" + +#~ msgid "connectors is out of object" +#~ msgstr "з’єднання відсутні в об'єкті" + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "Неприпустимий стан. Жодна деталь не вибрана для збереження після вирізання" + +#~ msgid "Edit Text" +#~ msgstr "Редагувати текст" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "Помилка! Неможливо створити тему!" + +#~ msgid "Exception" +#~ msgstr "Виняток" + +#~ msgid "Choose SLA archive:" +#~ msgstr "Виберіть архів SLA:" + +#~ msgid "Import file" +#~ msgstr "Імпортувати файл" + +#~ msgid "Import model and profile" +#~ msgstr "Імпорт моделі та профілю" + +#~ msgid "Import profile only" +#~ msgstr "Імпортувати лише профіль" + +#~ msgid "Import model only" +#~ msgstr "Тільки модель імпорту" + +#~ msgid "Accurate" +#~ msgstr "Точний" + +#~ msgid "Balanced" +#~ msgstr "Збалансований" + +#~ msgid "Quick" +#~ msgstr "Швидкий" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "" +#~ "Визначте як далеко сопло рухатиметься вздовж останнього шляху при відкаті" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "Спрощення моделі\n" +#~ "Чи знаєте ви, що можна зменшити кількість трикутників у мережі за " +#~ "допомогою Елемент Спростити мережу (Simplify mesh)? Клацніть модель " +#~ "правою кнопкою миші і виберіть «Спростити модель». Додаткову інформацію " +#~ "наведено в документації." + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "Відняти деталь\n" +#~ "Чи знаєте ви, що можна віднімати одну мережу з іншої за допомогою " +#~ "модифікаторанегативної деталі? Таким чином можна, наприклад, створити " +#~ "легкоотвори, що змінюються безпосередньо в Snapmaker Orca. Додаткова " +#~ "інформацію наведено в документації." + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "Шаблон заповнення %1% не підтримує щільність 100%%." + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "Переключити на прямолінійний шаблон?\n" +#~ "Так - автоматично перемикатися на прямолінійний шаблон\n" +#~ "Ні - автоматично скинути щільність до значення за замовчуванням, " +#~ "відмінноговід 100%" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "" +#~ "Будь ласка, нагрійте сопло до температури вище 170 градусів перед " +#~ "завантаженням нитки." + +#~ msgid "Show g-code window" +#~ msgstr "Показати вікно g-коду" + +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "Якщо увімкнено, з'явиться вікно g-коду." + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "" +#~ "Щільність внутрішнього розрідженого заповнення, 100%% означає суцільне " +#~ "заповнення по всій площі" + +#~ msgid "Tree support wall loops" +#~ msgstr "Контури опорної стінки дерева" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "Цей параметр визначає кількість периметрів навколо опори дерева" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " не працює на 100%% щільності " + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "Інструмент-укладання на обличчя" + +#~ msgid "Export as STL" +#~ msgstr "Експортувати як STL" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "Введіть допустиме значення (K в діапазоні 0~0,5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "" +#~ "Введіть допустиме значення (K у діапазоні 0~0,5, N у діапазоні 0,6~2,0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "Експортувати всі об'єкти у форматі STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "3mf не сумісний, завантажуйте лише дані геометрії!" + +#~ msgid "Incompatible 3mf" +#~ msgstr "Несумісний 3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "Додати/видалити принтери" + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s не підтримується AMS." + +#~ msgid "Don't remind me of this version again" +#~ msgstr "Не нагадуйте мені більше про цю версію" + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "Помилка: IP або код доступу не вірні" + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "Порядок внутрішні периметри/зовнішні периметри/заповнення" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "" +#~ "Роздрукуйте послідовність внутрішнього периметра, зовнішнього периметра " +#~ "та заповнення " + +#~ msgid "inner/outer/infill" +#~ msgstr "внутрішній/зовнішній/заповнення" + +#~ msgid "outer/inner/infill" +#~ msgstr "зовнішній/внутрішній/заповнення" + +#~ msgid "infill/inner/outer" +#~ msgstr "заповнення/внутрішній/зовнішній" + +#~ msgid "infill/outer/inner" +#~ msgstr "заповнення/зовнішній/внутрішній" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "внутрішній-внутрішній/заповнення" + +#~ msgid "Export 3MF" +#~ msgstr "Експорт 3MF" + +#~ msgid "Export project as 3MF." +#~ msgstr "Експортуйте проект як 3MF." + +#~ msgid "Export slicing data" +#~ msgstr "Експорт даних нарізки" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "Експорт даних нарізки до папки." + +#~ msgid "Load slicing data" +#~ msgstr "Завантажити дані про нарізку" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "Завантажити кешовані дані нарізки з каталогу" + +#~ msgid "Slice" +#~ msgstr "Нарізка" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "Нарізати пластини: 0-всі пластини, i-пластина i, інші-неприпустимі" + +#~ msgid "Show command help." +#~ msgstr "Показати довідку про команду." + +#~ msgid "UpToDate" +#~ msgstr "До цього часу" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "Оновіть значення конфігурації 3mf до останніх." + +#~ msgid "mtcpp" +#~ msgstr "mtcpp" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "максимальна кількість трикутників на стіл для нарізки." + +#~ msgid "mstpp" +#~ msgstr "mstpp" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "максимальний час нарізки на стіл у секундах." + +#~ msgid "Normative check" +#~ msgstr "Нормативна перевірка" + +#~ msgid "Check the normative items." +#~ msgstr "Перевірте нормативні позиції." + +#~ msgid "Output Model Info" +#~ msgstr "Вихідна інформація про модель" + +#~ msgid "Output the model's information." +#~ msgstr "Виведіть інформацію про модель." + +#~ msgid "Export Settings" +#~ msgstr "Експорт налаштувань" + +#~ msgid "Export settings to a file." +#~ msgstr "Експорт налаштувань у файл." + +#~ msgid "Send progress to pipe" +#~ msgstr "Надіслати прогрес до каналу" + +#~ msgid "Send progress to pipe." +#~ msgstr "Надіслати прогрес до каналу." + +#~ msgid "Arrange Options" +#~ msgstr "Упорядкувати параметри" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "Параметри упорядкування: 0-disable, 1-enable, інші-auto" + +#~ msgid "Convert Unit" +#~ msgstr "Перетворити одиницю виміру" + +#~ msgid "Convert the units of model" +#~ msgstr "Перетворення одиниць моделі" + +#~ msgid "Scale the model by a float factor" +#~ msgstr "Масштабуйте модель за допомогою плаваючого коефіцієнта" + +#~ msgid "Load General Settings" +#~ msgstr "Завантажити загальні налаштування" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "Завантажити налаштування процесу/машини із зазначеного файлу" + +#~ msgid "Load Filament Settings" +#~ msgstr "Завантажити налаштування філаменту" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "Завантажити налаштування філаменту із зазначеного списку файлів" + +#~ msgid "Skip Objects" +#~ msgstr "Пропустити об'єкти" + +#~ msgid "Skip some objects in this print" +#~ msgstr "Пропустити деякі об'єкти в цьому принті" + +#~ msgid "Output directory" +#~ msgstr "Вихідний каталог" + +#~ msgid "Output directory for the exported files." +#~ msgstr "Вихідний каталог для експортованих файлів." + +#~ msgid "Debug level" +#~ msgstr "Рівень налагодження" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "Встановлює рівень реєстрації налагодження. 0: непереборний, 1: помилка, " +#~ "2: попередження, 3: інформація, 4: налагодження, 5: трасування\n" + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "Операції з 3D сценами\n" +#~ "Чи знаєте ви, як керувати видом та вибором об'єкта/деталі за допомогою " +#~ "миші та Сенсорна панель у 3D сцені?" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "Виправити модель\n" +#~ "Чи знаєте ви, що ви можете виправити пошкоджену 3D-модель, щоб " +#~ "уникнутивеликої кількості проблем із нарізкою?" + +#~ msgid "Embeded" +#~ msgstr "Вбудовано" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "Файл конфігурації Snapmaker Orca може бути пошкоджений і не підлягає розбору. " +#~ "Видаліть файл і спробуйте ще раз." + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "Мінімальна швидкість друку при уповільненні для охолодження" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "Температура шару перевищує температуру скловання нитки. Будь ласка\n" +#~ "відчиняйте передні дверцята принтера перед печаткою, щоб уникнути " +#~ "засмічення сопла." + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "Температура склування" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "" +#~ "При цій температурі матеріал стає м'яким. Таким чином, нагрівається шар " +#~ "не може бути гарячішим, ніж ця температура" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "" +#~ "Увімкніть цю опцію, якщо машина оснащена вентилятором " +#~ "охолодженнядопоміжної частини" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "Швидкість вентилятора охолодження допоміжної частини. " +#~ "ДопоміжнийВентилятор буде працювати з такою швидкістю під час друку, за " +#~ "винятком перших кількох шарів, які не визначаються шарами охолодження" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "" +#~ "Порожні шари навколо дна замінюються найближчими нормальними шарами." + +#~ msgid "The model has too many empty layers." +#~ msgstr "У моделі занадто багато порожніх шарів." + +#~ msgid "Cali" +#~ msgstr "Калі" + +#~ msgid "Calibration of extrusion" +#~ msgstr "АМС не підключено" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "Температура шару іншого шару нижче температури шару вихідного шару більш " +#~ "ніж на %d градусів за Цельсієм.\n" +#~ "Це може призвести до відриву моделі від робочої пластини під час друку" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "Температура шару вище температури скловання цієї нитки.\n" +#~ "Це може призвести до блокування сопла та збою друку\n" +#~ " Будь ласка , тримайте принтер відкритим під час друку , щоб забезпечити " +#~ "доступ повітря циркуляція або знизити температуру столу" + +#~ msgid "Total Time Estimation" +#~ msgstr "Оцінка загального часу" + +#~ msgid "Resonance frequency identification" +#~ msgstr "Ідентифікація резонансної частоти" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "Високотемпературна пластина" + +#~ msgid "Recommended temperature range" +#~ msgstr "Рекомендований діапазон температур" + +#~ msgid "High Temp Plate" +#~ msgstr "Високотемпературна пластина" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "" +#~ "Температура столу, коли встановлено високотемпературний стіл. Значення 0 " +#~ "означає філамент не підтримує друк на високотемпературному столі" + +#~ msgid "Internal bridge support thickness" +#~ msgstr "Товщина внутрішньої опори мосту" + +#~ msgid "" +#~ "If enabled, support loops will be generated under the contours of " +#~ "internal bridges.These support loops could prevent internal bridges from " +#~ "extruding over the air and improve the top surface quality, especially " +#~ "when the sparse infill density is low.This value determines the thickness " +#~ "of the support loops. 0 means disable this feature" +#~ msgstr "" +#~ "Якщо ввімкнуто, опорні петлі будуть створюватися під контурами внутрішніх " +#~ "мости. Ці опорні петлі можуть запобігти екструзії внутрішніх мостівпо " +#~ "повітрю та покращити якість верхньої поверхні, особливо коли " +#~ "розрідженістьщільність заповнення низька. Це значення визначає товщину " +#~ "опори цикли. 0 означає вимкнути цю функцію" + +#, c-format, boost-format +#~ msgid "" +#~ "Klipper's max_accel_to_decel will be adjusted to this % of acceleration" +#~ msgstr "" +#~ "Max \"прискорення до уповільнення\" для Klipper буде скориговано на % o " +#~ "автоматично" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "Стиль та форма опори. Для звичайної підтримки проектування опор у " +#~ "звичайнусітка створить більш стійкі опори (за замовчуванням), тоді як " +#~ "завзяті опори заощадять матеріал і зменшать утворення рубців на " +#~ "об'єктах.\n" +#~ "Для підтримки дерева тонкий стиль об'єднуватиме гілки більш агресивно і " +#~ "заощаджувати багато матеріалу (за замовчуванням), в той час як гібридний " +#~ "стильСтворить структуру, аналогічну звичайній підтримці при великих " +#~ "плоских звисах." + +#~ msgid "Target chamber temperature" +#~ msgstr "Температура цільової камери" + +#~ msgid "Bed temperature difference" +#~ msgstr "Різниця температур шару" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "Не рекомендується, щоб температура шару іншого шару була нижчою, ніж " +#~ "температура вихідного шару, при перевищенні цього порога. Надто " +#~ "низькатемпература шару іншого шару може призвести до того, що модель " +#~ "будерозірвана без конструкційної пластини" + +#~ msgid "Orient the model" +#~ msgstr "Орієнтувати модель" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 0 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Введіть допустимі значення:\n" +#~ "початок > 0 крок >= 0\n" +#~ "кінець > початок + крок)" + +#~ msgid "" +#~ "Please input valid values:\n" +#~ "start > 10 step >= 0\n" +#~ "end > start + step)" +#~ msgstr "" +#~ "Введіть допустимі значення:\n" +#~ "старт > 10 кроків >= 0\n" +#~ "кінець > початок + крок)" diff --git a/localization/i18n/zh_CN/Snapmaker_Orca_zh_CN.po b/localization/i18n/zh_CN/Snapmaker_Orca_zh_CN.po new file mode 100644 index 0000000000..ef17449c00 --- /dev/null +++ b/localization/i18n/zh_CN/Snapmaker_Orca_zh_CN.po @@ -0,0 +1,16433 @@ +# Copyright (C) 2019 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST Translator Jiang Yue , 2019. +# +msgid "" +msgstr "" +"Project-Id-Version: Slic3rPE\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: 2024-07-28 07:12+0000\n" +"Last-Translator: Handle \n" +"Language-Team: \n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 3.2.2\n" + +msgid "Add Device" +msgstr "添加设备" + +msgid "Supports Painting" +msgstr "支撑绘制" + +msgid "Alt + Mouse wheel" +msgstr "Alt + 鼠标滚轮" + +msgid "Section view" +msgstr "剖面视图" + +msgid "Reset direction" +msgstr "重置方向" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + 鼠标滚轮" + +msgid "Pen size" +msgstr "画笔尺寸" + +msgid "Left mouse button" +msgstr "鼠标左键" + +msgid "Enforce supports" +msgstr "强制支撑" + +msgid "Right mouse button" +msgstr "鼠标右键" + +msgid "Block supports" +msgstr "屏蔽支撑" + +msgid "Shift + Left mouse button" +msgstr "Shift + 鼠标左键" + +msgid "Erase" +msgstr "擦除" + +msgid "Erase all painting" +msgstr "擦除所有绘制" + +msgid "Highlight overhang areas" +msgstr "高亮悬空区域" + +msgid "Gap fill" +msgstr "缝隙填充" + +msgid "Perform" +msgstr "执行" + +msgid "Gap area" +msgstr "间隙面积" + +msgid "Tool type" +msgstr "工具类型" + +msgid "Smart fill angle" +msgstr "智能填充角度" + +msgid "On overhangs only" +msgstr "仅对悬空区生效" + +msgid "Auto support threshold angle: " +msgstr "自动支撑角度阈值:" + +msgid "Circle" +msgstr "圆" + +msgid "Sphere" +msgstr "球" + +msgid "Fill" +msgstr "填充" + +msgid "Gap Fill" +msgstr "缝隙填充" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "绘制仅对由%1%选中的面片生效" + +msgid "Highlight faces according to overhang angle." +msgstr "根据当前设置的悬空角度来高亮片面。" + +msgid "No auto support" +msgstr "无自动支撑" + +msgid "Support Generated" +msgstr "已生成支撑" + +msgid "Gizmo-Place on Face" +msgstr "选择底面" + +msgid "Lay on face" +msgstr "选择底面" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "" +"耗材丝数量超过涂色工具支持的最大值,仅前%1%个耗材丝可在涂色工具中使用。" + +msgid "Color Painting" +msgstr "涂色" + +msgid "Pen shape" +msgstr "画笔形状" + +msgid "Paint" +msgstr "绘制" + +msgid "Key 1~9" +msgstr "按键 1~9" + +msgid "Choose filament" +msgstr "选择耗材丝" + +msgid "Edge detection" +msgstr "边沿检测" + +msgid "Triangles" +msgstr "三角形" + +msgid "Filaments" +msgstr "耗材丝" + +msgid "Brush" +msgstr "画刷" + +msgid "Smart fill" +msgstr "智能填充" + +msgid "Bucket fill" +msgstr "批量填充" + +msgid "Height range" +msgstr "高度范围" + +msgid "Alt + Shift + Enter" +msgstr "" + +msgid "Toggle Wireframe" +msgstr "显示/隐藏线框" + +msgid "Shortcut Key " +msgstr "快捷键 " + +msgid "Triangle" +msgstr "三角形" + +msgid "Height Range" +msgstr "高度范围" + +msgid "Vertical" +msgstr "垂直" + +msgid "Horizontal" +msgstr "水平" + +msgid "Remove painted color" +msgstr "移除已绘制的颜色" + +#, boost-format +msgid "Painted using: Filament %1%" +msgstr "绘制使用:耗材丝%1%" + +msgid "Move" +msgstr "移动" + +msgid "Gizmo-Move" +msgstr "Gizmo-移动" + +msgid "Rotate" +msgstr "旋转" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-旋转" + +msgid "Optimize orientation" +msgstr "优化朝向" + +msgid "Apply" +msgstr "应用" + +msgid "Scale" +msgstr "缩放" + +msgid "Gizmo-Scale" +msgstr "缩放工具" + +msgid "Error: Please close all toolbar menus first" +msgstr "错误:请先关闭所有工具栏菜单" + +msgid "in" +msgstr "在" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "位置" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "旋转" + +msgid "Scale ratios" +msgstr "缩放比例" + +msgid "Object Operations" +msgstr "对象操作" + +msgid "Volume Operations" +msgstr "零件操作" + +msgid "Translate" +msgstr "平移" + +msgid "Group Operations" +msgstr "组操作" + +msgid "Set Position" +msgstr "设置位置" + +msgid "Set Orientation" +msgstr "设置方向" + +msgid "Set Scale" +msgstr "设置缩放" + +msgid "Reset Position" +msgstr "重置位置" + +msgid "Reset Rotation" +msgstr "重置旋转" + +msgid "World coordinates" +msgstr "世界坐标" + +msgid "Object coordinates" +msgstr "物体坐标" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "大小" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "等比例缩放" + +msgid "Planar" +msgstr "平面" + +msgid "Dovetail" +msgstr "燕尾榫" + +msgid "Auto" +msgstr "自动" + +msgid "Manual" +msgstr "手动" + +msgid "Plug" +msgstr "插销" + +msgid "Dowel" +msgstr "销钉" + +msgid "Snap" +msgstr "按扣" + +msgid "Prism" +msgstr "棱角" + +msgid "Frustum" +msgstr "锥体" + +msgid "Square" +msgstr "正方形" + +msgid "Hexagon" +msgstr "六边形" + +msgid "Keep orientation" +msgstr "保持方向" + +msgid "Place on cut" +msgstr "切割面放置到热床" + +msgid "Flip upside down" +msgstr "倒置" + +msgid "Connectors" +msgstr "连接件" + +msgid "Type" +msgstr "类型" + +msgid "Style" +msgstr "样式" + +msgid "Shape" +msgstr "形状" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "深度" + +msgid "Groove" +msgstr "凹槽" + +msgid "Width" +msgstr "宽度" + +msgid "Flap Angle" +msgstr "翼偏角" + +msgid "Groove Angle" +msgstr "凹槽角" + +msgid "Part" +msgstr "零件" + +msgid "Object" +msgstr "对象" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" +"单击以翻转剖切面\n" +"拖动以移动剖切面" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" +"单击以翻转剖切面\n" +"拖动以移动剖切面\n" +"在零件上单击鼠标右键以将其指定给另一侧" + +msgid "Move cut plane" +msgstr "移动剖切面" + +msgid "Mode" +msgstr "模式" + +msgid "Change cut mode" +msgstr "更改切割模式" + +msgid "Tolerance" +msgstr "容差" + +msgid "Drag" +msgstr "拖拽" + +msgid "Draw cut line" +msgstr "绘制切线" + +msgid "Left click" +msgstr "左击" + +msgid "Add connector" +msgstr "添加连接件" + +msgid "Right click" +msgstr "右击" + +msgid "Remove connector" +msgstr "删除连接件" + +msgid "Move connector" +msgstr "移动连接件" + +msgid "Add connector to selection" +msgstr "选择连接件" + +msgid "Remove connector from selection" +msgstr "取消选择连接件" + +msgid "Select all connectors" +msgstr "选择所有连接件" + +msgid "Cut" +msgstr "剪切" + +msgid "Rotate cut plane" +msgstr "旋转剖切面" + +msgid "Remove connectors" +msgstr "删除所有连接件" + +msgid "Bulge" +msgstr "凸度" + +msgid "Bulge proportion related to radius" +msgstr "" + +msgid "Space" +msgstr "间隔" + +msgid "Space proportion related to radius" +msgstr "" + +msgid "Confirm connectors" +msgstr "确认" + +msgid "Cancel" +msgstr "取消" + +msgid "Build Volume" +msgstr "零件体积" + +msgid "Flip cut plane" +msgstr "翻转剖切面" + +msgid "Groove change" +msgstr "槽变化" + +msgid "Reset" +msgstr "重置" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "已编辑" + +msgid "Cut position" +msgstr "切割位置" + +msgid "Reset cutting plane" +msgstr "重置切割平面" + +msgid "Edit connectors" +msgstr "编辑连接件" + +msgid "Add connectors" +msgstr "添加连接件" + +msgid "Reset cut" +msgstr "重置" + +msgid "Reset cutting plane and remove connectors" +msgstr "重置切割平面并移除连接器" + +msgid "Upper part" +msgstr "上半部分" + +msgid "Lower part" +msgstr "下半部分" + +msgid "Keep" +msgstr "保持" + +msgid "Flip" +msgstr "翻转" + +msgid "After cut" +msgstr "切割后" + +msgid "Cut to parts" +msgstr "切割为零件" + +msgid "Perform cut" +msgstr "执行切割" + +msgid "Warning" +msgstr "警告" + +msgid "Invalid connectors detected" +msgstr "检测到无效连接件" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "%1$d 个连接件超出了切割轮廓" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "%1$d 个连接件超出了对象" + +msgid "Some connectors are overlapped" +msgstr "存在连接件相互重叠" + +msgid "Select at least one object to keep after cutting." +msgstr "切割后至少选择一个要保留的对象。" + +msgid "Cut plane is placed out of object" +msgstr "剖切面放置在对象之外" + +msgid "Cut plane with groove is invalid" +msgstr "槽所在的切割平面无效" + +msgid "Connector" +msgstr "连接件" + +msgid "Cut by Plane" +msgstr "按平面切割" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "因切割产生了非流形边,您是否想现在修复?" + +msgid "Repairing model object" +msgstr "修复模型对象" + +msgid "Cut by line" +msgstr "按线切割" + +msgid "Delete connector" +msgstr "删除连接器" + +msgid "Mesh name" +msgstr "Mesh名" + +msgid "Detail level" +msgstr "细节等级" + +msgid "Decimate ratio" +msgstr "简化率" + +#, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "处理超出1M个三角形面片的模型“%1%”可能会很慢。强烈建议简化模型。" + +msgid "Simplify model" +msgstr "简化模型" + +msgid "Simplify" +msgstr "简化" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "仅支持对单个零件做简化" + +msgid "Error" +msgstr "错误" + +msgid "Extra high" +msgstr "非常高" + +msgid "High" +msgstr "高" + +msgid "Medium" +msgstr "中" + +msgid "Low" +msgstr "低" + +msgid "Extra low" +msgstr "非常低" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d 个三角形" + +msgid "Show wireframe" +msgstr "显示线框" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "处理预览的过程中无法应用。" + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "操作已在取消中,请等待片刻。" + +msgid "Face recognition" +msgstr "外观面检测" + +msgid "Perform Recognition" +msgstr "执行检测" + +msgid "Brush size" +msgstr "画刷尺寸" + +msgid "Brush shape" +msgstr "画刷形状" + +msgid "Enforce seam" +msgstr "添加Z缝" + +msgid "Block seam" +msgstr "屏蔽Z缝" + +msgid "Seam painting" +msgstr "Z缝绘制" + +msgid "Remove selection" +msgstr "移除绘制" + +msgid "Entering Seam painting" +msgstr "进入Z缝绘制" + +msgid "Leaving Seam painting" +msgstr "退出Z缝绘制" + +msgid "Paint-on seam editing" +msgstr "编辑手绘填缝" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "字体" + +msgid "Thickness" +msgstr "厚度" + +msgid "Text Gap" +msgstr "文字间距" + +msgid "Angle" +msgstr "角度" + +msgid "" +"Embeded\n" +"depth" +msgstr "内嵌深度" + +msgid "Input text" +msgstr "输入文本" + +msgid "Surface" +msgstr "附着曲面" + +msgid "Horizontal text" +msgstr "水平文字" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + 鼠标上移或下移" + +msgid "Rotate text" +msgstr "旋转文字" + +msgid "Text shape" +msgstr "文本形状" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "旋转文字" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "移动文字" + +msgid "Set Mirror" +msgstr "设置镜像" + +msgid "Embossed text" +msgstr "浮雕文字" + +msgid "Enter emboss gizmo" +msgstr "进入浮雕小工具" + +msgid "Leave emboss gizmo" +msgstr "离开浮雕小工具" + +msgid "Embossing actions" +msgstr "浮雕动作" + +msgid "Emboss" +msgstr "浮雕" + +msgid "NORMAL" +msgstr "常规" + +msgid "SMALL" +msgstr "小" + +msgid "ITALIC" +msgstr "斜体" + +msgid "SWISS" +msgstr "" + +msgid "MODERN" +msgstr "现代" + +msgid "First font" +msgstr "第一个字体" + +msgid "Default font" +msgstr "缺省字体" + +msgid "Advanced" +msgstr "高级" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "无法使用所选字体书写文本。请尝试选择其他字体。" + +msgid "Embossed text cannot contain only white spaces." +msgstr "浮雕文本不能只包含空格。" + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "文本包含字体未知的字符字形(用“?”表示)。" + +msgid "Text input doesn't show font skew." +msgstr "文本输入不显示字体倾斜。" + +msgid "Text input doesn't show font boldness." +msgstr "文本输入不显示字体加粗。" + +msgid "Text input doesn't show gap between lines." +msgstr "文本输入不显示行之间的间隙。" + +msgid "Too tall, diminished font height inside text input." +msgstr "太高,文本输入中的字体高度减小。" + +msgid "Too small, enlarged font height inside text input." +msgstr "文字输入里面的字体高度太小,放大了。" + +msgid "Text doesn't show current horizontal alignment." +msgstr "" + +msgid "Revert font changes." +msgstr "还原字体更改。" + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "无法选择字体“%1%”。" + +msgid "Operation" +msgstr "操作" + +msgid "Join" +msgstr "合并" + +msgid "Click to change text into object part." +msgstr "单击可将文本更改为对象部分。" + +msgid "You can't change a type of the last solid part of the object." +msgstr "不能更改对象的最后一个实体部分的类型。" + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "切割" + +msgid "Click to change part type into negative volume." +msgstr "单击可将零件类型更改为负体积。" + +msgid "Modifier" +msgstr "修改器" + +msgid "Click to change part type into modifier." +msgstr "单击可将零件类型更改为修改器。" + +msgid "Change Text Type" +msgstr "更改文本类型" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "重命名浮雕文本的样式(%1%)" + +msgid "Name can't be empty." +msgstr "名称不能为空。" + +msgid "Name has to be unique." +msgstr "名称必须是唯一的。" + +msgid "OK" +msgstr "确认" + +msgid "Rename style" +msgstr "重命名样式" + +msgid "Rename current style." +msgstr "重命名当前样式。" + +msgid "Can't rename temporary style." +msgstr "无法重命名临时样式。" + +msgid "First Add style to list." +msgstr "首先将样式添加到列表中。" + +#, boost-format +msgid "Save %1% style" +msgstr "保存%1%样式" + +msgid "No changes to save." +msgstr "没有要保存的更改。" + +msgid "New name of style" +msgstr "样式的新名称" + +msgid "Save as new style" +msgstr "另存为新样式" + +msgid "Only valid font can be added to style." +msgstr "只有有效的字体才能添加到样式中。" + +msgid "Add style to my list." +msgstr "将样式添加到我的列表中。" + +msgid "Save as new style." +msgstr "另存为新样式。" + +msgid "Remove style" +msgstr "删除样式" + +msgid "Can't remove the last existing style." +msgstr "无法删除最后一个现有样式。" + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "您确定要永久删除“%1%”样式吗?" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "删除“%1%”样式。" + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "无法删除“%1%”。这是最后一种风格。" + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "无法删除临时样式“%1%”。" + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "已修改样式“%1%”" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "当前样式为“%1%”" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" +"将样式更改为“%1%”将放弃当前的样式修改。\n" +"是否仍要继续?" + +msgid "Not valid style." +msgstr "无效的样式。" + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "样式“%1%”无法使用,将从列表中删除。" + +msgid "Unset italic" +msgstr "取消斜体" + +msgid "Set italic" +msgstr "斜体" + +msgid "Unset bold" +msgstr "取消加粗" + +msgid "Set bold" +msgstr "加粗" + +msgid "Revert text size." +msgstr "恢复文本大小。" + +msgid "Revert embossed depth." +msgstr "还原浮雕深度。" + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" +"无法更改所选字体的高级选项。\n" +"选择其他字体。" + +msgid "Revert using of model surface." +msgstr "恢复使用模型曲面。" + +msgid "Revert Transformation per glyph." +msgstr "恢复按字符变形选项。" + +msgid "Set global orientation for whole text." +msgstr "为整段文本使用同一基准。" + +msgid "Set position and orientation per glyph." +msgstr "为每个字符独立计算位置和方向。" + +msgctxt "Alignment" +msgid "Left" +msgstr "左对齐" + +msgctxt "Alignment" +msgid "Center" +msgstr "水平居中" + +msgctxt "Alignment" +msgid "Right" +msgstr "右对齐" + +msgctxt "Alignment" +msgid "Top" +msgstr "顶对齐" + +msgctxt "Alignment" +msgid "Middle" +msgstr "垂直居中" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "底对齐" + +msgid "Revert alignment." +msgstr "还原对齐。" + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "点" + +msgid "Revert gap between characters" +msgstr "恢复字间距" + +msgid "Distance between characters" +msgstr "字间距" + +msgid "Revert gap between lines" +msgstr "恢复行间距" + +msgid "Distance between lines" +msgstr "行间距" + +msgid "Undo boldness" +msgstr "撤销粗细调整" + +msgid "Tiny / Wide glyphs" +msgstr "细小/粗大的字形" + +msgid "Undo letter's skew" +msgstr "撤消字母的斜体效果" + +msgid "Italic strength ratio" +msgstr "倾斜强度比" + +msgid "Undo translation" +msgstr "撤消翻译" + +msgid "Distance of the center of the text to the model surface." +msgstr "文字中心到模型曲面的距离。" + +msgid "Undo rotation" +msgstr "撤消旋转" + +msgid "Rotate text Clock-wise." +msgstr "顺时针旋转文本。" + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "沿对象曲面移动文本时,解除锁定文本的旋转。" + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "沿对象曲面移动文本时,锁定文本的旋转。" + +msgid "Select from True Type Collection." +msgstr "从True Type集合中选择。" + +msgid "Set text to face camera" +msgstr "文字面向摄像头" + +msgid "Orient the text towards the camera." +msgstr "选择文字使其面向摄像头" + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" +"不能加载完全相同的字体(\"%1%\")。应用程序选择了一种类似的字体(\"%2%\")。你" +"必须为启用编辑文本指定字体。" + +msgid "No symbol" +msgstr "无符号" + +msgid "Loading" +msgstr "载入中" + +msgid "In queue" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "高度" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "使用表面" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "按字符" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "对齐" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "字间距" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "行间距" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "仿字重" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "仿斜体" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "距表面" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "保持向上" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "收集" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "旋转SVG图形" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "移动SVG图形" + +msgid "Enter SVG gizmo" +msgstr "" + +msgid "Leave SVG gizmo" +msgstr "" + +msgid "SVG actions" +msgstr "" + +msgid "SVG" +msgstr "SVG矢量图" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "不透明度 (%1%)" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "渐变 (%1%)" + +msgid "Undefined fill type" +msgstr "未定义的填充类型" + +msgid "Linear gradient" +msgstr "线性渐变" + +msgid "Radial gradient" +msgstr "径向渐变" + +msgid "Open filled path" +msgstr "" + +msgid "Undefined stroke type" +msgstr "未定义的描边类型" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "形状已被标记为不可见 (%1%)." + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "形状 (%1%) 的描边太细了(不小于 %2% mm)。" + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "" + +msgid "Face the camera" +msgstr "面向摄像机" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "未知文件名" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "SVG文件路径:\"%1%\"" + +msgid "Reload SVG file from disk." +msgstr "从磁盘重新加载SVG文件。" + +msgid "Change file" +msgstr "" + +msgid "Change to another .svg file" +msgstr "" + +msgid "Forget the file path" +msgstr "" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "" + +msgid "Save as" +msgstr "另存为" + +msgid "Save SVG file" +msgstr "保存SVG文件" + +msgid "Save as '.svg' file" +msgstr "另存为“.svg”文件" + +msgid "Size in emboss direction." +msgstr "" + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "" + +msgid "Width of SVG." +msgstr "" + +msgid "Height of SVG." +msgstr "" + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "" + +msgid "Reset scale" +msgstr "重置缩放" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "" + +msgid "Reset distance" +msgstr "" + +msgid "Reset rotation" +msgstr "重置旋转" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" + +msgid "Mirror vertically" +msgstr "垂直镜像" + +msgid "Mirror horizontally" +msgstr "水平镜像" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "镜像" + +msgid "Choose SVG file for emboss:" +msgstr "选择SVG文件进行浮雕操作:" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "文件不存在 (%1%)。" + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "文件名必须以“.svg”结尾,但您选择的是%1%" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "Nano SVG解析器无法从文件中加载 (%1%)。" + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "SVG文件不包含路径以进行浮雕操作 (%1%)。" + +msgid "Vertex" +msgstr "顶点" + +msgid "Edge" +msgstr "边" + +msgid "Plane" +msgstr "平面" + +msgid "Point on edge" +msgstr "边上的点" + +msgid "Point on circle" +msgstr "圆上的点" + +msgid "Point on plane" +msgstr "平面上的点" + +msgid "Center of edge" +msgstr "边的中心" + +msgid "Center of circle" +msgstr "圆心" + +msgid "ShiftLeft mouse button" +msgstr "Shift + 鼠标左键" + +msgid "Select feature" +msgstr "选择特征" + +msgid "Select point" +msgstr "选择点" + +msgid "Delete" +msgstr "删除" + +msgid "Restart selection" +msgstr "重新选择" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "取消选择" + +msgid "Measure" +msgstr "测量" + +msgid "Edit to scale" +msgstr "编辑比例" + +msgctxt "Verb" +msgid "Scale" +msgstr "比例" + +msgid "None" +msgstr "无" + +msgid "Diameter" +msgstr "直径" + +msgid "Length" +msgstr "长度" + +msgid "Selection" +msgstr "选中" + +msgid "Copy to clipboard" +msgstr "复制到剪贴板" + +msgid "Perpendicular distance" +msgstr "垂直距离" + +msgid "Distance" +msgstr "距离" + +msgid "Direct distance" +msgstr "直线距离" + +msgid "Distance XYZ" +msgstr "距离 XYZ" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "通知" + +msgid "Undefined" +msgstr "未定义" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1%已被%2%替换" + +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "此配置可能由新版本的Snapmaker Orca生成" + +msgid "Some values have been replaced. Please check them:" +msgstr "部分数值已被替换,请检查:" + +msgid "Process" +msgstr "工艺" + +msgid "Filament" +msgstr "耗材丝" + +msgid "Machine" +msgstr "打印机" + +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "配置包已被加载,但部分数值未被识别。" + +#, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "配置文件“%1%”已被加载,但部分数值未被识别。" + +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"系统内存耗尽,Snapmaker Orca 即将终止运行。这可能是个缺陷,希望您可以报告此问题," +"我们将非常感激。" + +msgid "Fatal error" +msgstr "致命错误" + +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"遇到本地化错误,Snapmaker Orca 即将终止运行。希望您可以报告发生此问题的具体场景," +"我们将非常感激。" + +msgid "Critical error" +msgstr "严重错误" + +#, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca 捕捉到一个未处理的异常:%1%" + +msgid "Untitled" +msgstr "未命名" + +msgid "Downloading Bambu Network Plug-in" +msgstr "正在下载Bambu网络插件" + +msgid "Login information expired. Please login again." +msgstr "登录信息过期。请重新登录。" + +msgid "Incorrect password" +msgstr "访问码不正确" + +#, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "连接 %s 失败。[SN:%s, code=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca 依赖 Microsoft WebView2 运行时以运行部分功能。\n" +"请点击 Yes 进行安装。" + +msgid "WebView2 Runtime" +msgstr "WebView2 运行库" + +#, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "%s 是否继续?" + +msgid "Remember my choice" +msgstr "记住我的选择" + +msgid "Loading configuration" +msgstr "正在加载配置" + +#, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "在默认浏览器中点击下载最新版本: %s" + +msgid "The Snapmaker Orca needs an upgrade" +msgstr "Snapmaker Orca需要进行升级" + +msgid "This is the newest version." +msgstr "已经是最新版本。" + +msgid "Info" +msgstr "信息" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" +"Snapmaker Orca 配置文件无法解析,可能已经损坏。\n" +"Snapmaker Orca 已尝试重新创建配置文件。\n" +"请注意,您的程序设置会丢失,但打印机配置文件不会受到影响。" + +msgid "Rebuild" +msgstr "重新构建" + +msgid "Loading current presets" +msgstr "加载当前预设" + +msgid "Loading a mode view" +msgstr "加载模式视图" + +msgid "Choose one file (3mf):" +msgstr "选择一个文件(3mf):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "选择一个或多个文件(3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "选择一个或多个文件(3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "选择ZIP文件" + +msgid "Choose one file (gcode/3mf):" +msgstr "选择一个文件(gcode/3mf):" + +msgid "Some presets are modified." +msgstr "预设已被修改。" + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "您可以保留未保存修改的预设应用到新项目中,或者选择忽略。" + +msgid "User logged out" +msgstr "用户登出" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "在切片过程不允许新建或打开项目文件!" + +msgid "Open Project" +msgstr "打开项目" + +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr "Snapmaker Orca版本过低,需要更新到最新版本方可正常使用" + +msgid "Privacy Policy Update" +msgstr "隐私协议更新" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "云端缓存的用户预设数量已超过上限,新创建的用户预设只能在本地使用。" + +msgid "Sync user presets" +msgstr "同步用户预设" + +msgid "Loading user preset" +msgstr "正在加载用户预设" + +msgid "Switching application language" +msgstr "切换应用程序语言" + +msgid "Select the language" +msgstr "选择语言" + +msgid "Language" +msgstr "语言" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "上传任务依然在继续" + +msgid "Stop them and continue anyway?" +msgstr "停止它们并且继续?" + +msgid "Ongoing uploads" +msgstr "正在进行的上传" + +msgid "Select a G-code file:" +msgstr "选择一个G-code文件:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "无法启动URL下载。目标文件夹没有设置。请在配置向导中选择目标文件夹。" + +msgid "Import File" +msgstr "导入文件" + +msgid "Choose files" +msgstr "选择文件" + +msgid "New Folder" +msgstr "新建文件夹" + +msgid "Open" +msgstr "打开" + +msgid "Rename" +msgstr "重命名" + +msgid "Snapmaker Orca GUI initialization failed" +msgstr "Snapmaker Orca图形界面初始化失败" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "致命错误,捕获到异常:%1%" + +msgid "Quality" +msgstr "质量" + +msgid "Shell" +msgstr "外壳" + +msgid "Infill" +msgstr "填充" + +msgid "Support" +msgstr "支撑" + +msgid "Import Profile" +msgstr "导入预设包" + +msgid "Import Web Resource" +msgstr "导入web资源包" + +msgid "Merge with" +msgstr "合并到" + +msgid "The following profiles could not be imported due to outdated versions." +msgstr "以下预设由于版本较低,未被导入" + +msgid "This web resouce could not be imported due to outdated versions." +msgstr "该web资源包由于版本较低,未被导入" + +msgid "Import Failed" +msgstr "导入失败" + +msgid "Please choose a system profile package file:" +msgstr "请选择系统预设包:" + +msgid "Please choose a web resource package file:" +msgstr "请选择web资源包:" + +msgid "Updating the web resources requires application restart." +msgstr "当前需要重启以使web资源包生效" + +msgid "Updating the system resources requires application restart." +msgstr "当前需要重启以使预设生效" + +msgid "Print Preprocessing" +msgstr "打印预处理" + +msgid "Pretreat the uploaded content" +msgstr "上传预处理" + +msgid "Flush options" +msgstr "换料冲刷选项" + +msgid "Speed" +msgstr "速度" + +msgid "Strength" +msgstr "强度" + +msgid "Top Solid Layers" +msgstr "顶部实心层" + +msgid "Top Minimum Shell Thickness" +msgstr "顶部外壳最小厚度" + +msgid "Bottom Solid Layers" +msgstr "底部实心层" + +msgid "Bottom Minimum Shell Thickness" +msgstr "底部外壳最小厚度" + +msgid "Ironing" +msgstr "熨烫" + +msgid "Fuzzy Skin" +msgstr "绒毛表面" + +msgid "Extruders" +msgstr "挤出机" + +msgid "Extrusion Width" +msgstr "挤出宽度" + +msgid "Wipe options" +msgstr "擦除选项" + +msgid "Bed adhesion" +msgstr "热床粘接" + +msgid "Add part" +msgstr "添加部件" + +msgid "Add negative part" +msgstr "添加负零件" + +msgid "Add modifier" +msgstr "添加修改器" + +msgid "Add support blocker" +msgstr "添加支撑屏蔽" + +msgid "Add support enforcer" +msgstr "添加支撑生成器" + +msgid "Add text" +msgstr "添加文本" + +msgid "Add negative text" +msgstr "添加负文本" + +msgid "Add text modifier" +msgstr "添加文本修改器" + +msgid "Add SVG part" +msgstr "" + +msgid "Add negative SVG" +msgstr "" + +msgid "Add SVG modifier" +msgstr "" + +msgid "Select settings" +msgstr "选择设置" + +msgid "Hide" +msgstr "隐藏" + +msgid "Show" +msgstr "显示" + +msgid "Del" +msgstr "删除" + +msgid "Delete the selected object" +msgstr "删除所选对象" + +msgid "Load..." +msgstr "加载..." + +msgid "Cube" +msgstr "立方体" + +msgid "Cylinder" +msgstr "圆柱体" + +msgid "Cone" +msgstr "锥体" + +msgid "Disc" +msgstr "圆盘" + +msgid "Torus" +msgstr "环面" + +msgid "Orca Cube" +msgstr "Orca逆方块" + +msgid "3DBenchy" +msgstr "小船" + +msgid "Autodesk FDM Test" +msgstr "欧特克FDM测试" + +msgid "Voron Cube" +msgstr "Voron方块" + +msgid "Stanford Bunny" +msgstr "斯坦福兔子" + +msgid "Orca String Hell" +msgstr "Orca拉丝地狱" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"该模型顶面具有文字浮雕。\n" +"为了获得最佳效果,我们推荐您将“单层墙阈值”设置为 0 " +"以使“仅首层单层墙”效果最佳。\n" +"\n" +"自动调整这些设置?\n" +"是 - 自动调整这些设置\n" +"否 - 不用为我调整这些设置" + +msgid "Text" +msgstr "文字浮雕" + +msgid "Height range Modifier" +msgstr "高度范围修改器" + +msgid "Add settings" +msgstr "添加设置" + +msgid "Change type" +msgstr "更改类型" + +msgid "Set as an individual object" +msgstr "设置为独立对象" + +msgid "Set as individual objects" +msgstr "设置为独立对象" + +msgid "Fill bed with copies" +msgstr "铺满打印板" + +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "用选定对象的副本填充床的剩余区域" + +msgid "Printable" +msgstr "可打印的" + +msgid "Fix model" +msgstr "修复模型" + +msgid "Export as one STL" +msgstr "导出为一个STL" + +msgid "Export as STLs" +msgstr "导出为多个STL" + +msgid "Reload from disk" +msgstr "从磁盘重新加载" + +msgid "Reload the selected parts from disk" +msgstr "从磁盘重新加载选中的零件" + +msgid "Replace with STL" +msgstr "替换为STL" + +msgid "Replace the selected part with new STL" +msgstr "用新的STL替换选中的零件" + +msgid "Change filament" +msgstr "更换耗材丝" + +msgid "Set filament for selected items" +msgstr "设置所选项的耗材丝" + +msgid "Default" +msgstr "缺省" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "耗材丝%d" + +msgid "current" +msgstr "当前" + +msgid "Scale to build volume" +msgstr "缩放到构建空间大小" + +msgid "Scale an object to fit the build volume" +msgstr "缩放对象以适应构建空间大小" + +msgid "Flush Options" +msgstr "换料冲刷选项" + +msgid "Flush into objects' infill" +msgstr "冲刷到对象的填充" + +msgid "Flush into this object" +msgstr "冲刷到这个对象" + +msgid "Flush into objects' support" +msgstr "冲刷到对象的支撑" + +msgid "Edit in Parameter Table" +msgstr "在参数表格中编辑" + +msgid "Convert from inch" +msgstr "从英寸转换" + +msgid "Restore to inch" +msgstr "恢复到英寸" + +msgid "Convert from meter" +msgstr "从米转换" + +msgid "Restore to meter" +msgstr "恢复到米" + +msgid "Assemble" +msgstr "组合" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "组合所选对象为一个多零件对象" + +msgid "Assemble the selected objects to an object with single part" +msgstr "组合所选对象为一个单零件对象" + +msgid "Mesh boolean" +msgstr "网格布尔操作" + +msgid "Mesh boolean operations including union and subtraction" +msgstr "包括并集和差集的网格布尔运算" + +msgid "Along X axis" +msgstr "沿 X 轴" + +msgid "Mirror along the X axis" +msgstr "沿X轴镜像" + +msgid "Along Y axis" +msgstr "沿 Y 轴" + +msgid "Mirror along the Y axis" +msgstr "沿Y轴镜像" + +msgid "Along Z axis" +msgstr "沿 Z 轴" + +msgid "Mirror along the Z axis" +msgstr "沿Z轴镜像" + +msgid "Mirror object" +msgstr "镜像对象" + +msgid "Edit text" +msgstr "编辑文字" + +msgid "Ability to change text, font, size, ..." +msgstr "能够更改文本、字体、大小。。。" + +msgid "Edit SVG" +msgstr "编辑SVG" + +msgid "Change SVG source file, projection, size, ..." +msgstr "改变SVG源文件,投影,大小,..." + +msgid "Invalidate cut info" +msgstr "解除切割关系" + +msgid "Add Primitive" +msgstr "添加标准模型" + +msgid "Add Handy models" +msgstr "添加实用模型" + +msgid "Add Models" +msgstr "添加模型" + +msgid "Show Labels" +msgstr "显示标签" + +msgid "To objects" +msgstr "拆分到对象" + +msgid "Split the selected object into multiple objects" +msgstr "拆分所选对象为多个对象" + +msgid "To parts" +msgstr "到零件" + +msgid "Split the selected object into multiple parts" +msgstr "拆分所选对象为多个零件" + +msgid "Split" +msgstr "拆分" + +msgid "Split the selected object" +msgstr "拆分所选对象" + +msgid "Auto orientation" +msgstr "自动朝向" + +msgid "Auto orient the object to improve print quality." +msgstr "自动调整对象朝向以提高打印质量。" + +msgid "Select All" +msgstr "全选" + +msgid "select all objects on current plate" +msgstr "全选当前盘对象" + +msgid "Delete All" +msgstr "删除所有" + +msgid "delete all objects on current plate" +msgstr "删除当前盘所有对象" + +msgid "Arrange" +msgstr "自动摆放" + +msgid "arrange current plate" +msgstr "在当前盘执行自动摆放" + +msgid "Reload All" +msgstr "重新加载全部" + +msgid "reload all from disk" +msgstr "" + +msgid "Auto Rotate" +msgstr "自动朝向" + +msgid "auto rotate current plate" +msgstr "在当前盘执行自动朝向" + +msgid "Delete Plate" +msgstr "删除盘" + +msgid "Remove the selected plate" +msgstr "删除所选盘" + +msgid "Clone" +msgstr "克隆" + +msgid "Simplify Model" +msgstr "简化模型" + +msgid "Center" +msgstr "居中" + +msgid "Edit Process Settings" +msgstr "编辑工艺参数" + +msgid "Edit print parameters for a single object" +msgstr "编辑单个对象的打印参数" + +msgid "Change Filament" +msgstr "更换耗材丝" + +msgid "Set Filament for selected items" +msgstr "设置所选项的耗材丝" + +msgid "Unlock" +msgstr "解锁" + +msgid "Lock" +msgstr "锁定" + +msgid "Edit Plate Name" +msgstr "编辑盘名" + +msgid "Name" +msgstr "名称" + +msgid "Fila." +msgstr "耗材丝" + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d个错误被修复" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "错误: %1$d 非流形边." + +msgid "Remaining errors" +msgstr "剩余错误" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d 非流形边" + +msgid "Right click the icon to fix model object" +msgstr "右键点击此图标可修复模型对象" + +msgid "Right button click the icon to drop the object settings" +msgstr "右键点击此图标以舍弃对象的设置" + +msgid "Click the icon to reset all settings of the object" +msgstr "点击此图标可重置对象的所有设置" + +msgid "Right button click the icon to drop the object printable property" +msgstr "右键点击此图标以舍弃对象的可打印属性" + +msgid "Click the icon to toggle printable property of the object" +msgstr "点击此图标可切换这个对象的可打印属性" + +msgid "Click the icon to edit support painting of the object" +msgstr "点击此图标可编辑这个对象的支撑绘制" + +msgid "Click the icon to edit color painting of the object" +msgstr "点击此图标可编辑这个对象的颜色绘制" + +msgid "Click the icon to shift this object to the bed" +msgstr "点击这个图标可将对象移动到热床上" + +msgid "Loading file" +msgstr "载入文件中" + +msgid "Error!" +msgstr "错误!" + +msgid "Failed to get the model data in the current file." +msgstr "无法获取当前文件中的模型数据。" + +msgid "Generic" +msgstr "通用" + +msgid "Add Modifier" +msgstr "添加修改器" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "切换到对象模式以编辑修改器的设置。" + +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "切换到对象设置模式,以编辑所选对象的工艺参数" + +msgid "Delete connector from object which is a part of cut" +msgstr "删除的连接件属于切割对象的一部分" + +msgid "Delete solid part from object which is a part of cut" +msgstr "删除的实体属于切割对象的一部分" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "删除的负体积属于切割对象的一部分" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "为保证切割关系,您可以将所有关联对象的连接件一起删除。" + +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"该行为将破坏切割关系,在此之后将无法保证模型一致性。\n" +"\n" +"如果要操作子部件或者负零件,需要先解除切割关系。" + +msgid "Delete all connectors" +msgstr "删除所有连接件" + +msgid "Deleting the last solid part is not allowed." +msgstr "不允许删除对象的最后一个实体零件。" + +msgid "The target object contains only one part and can not be splited." +msgstr "目标对象仅包含一个零件,无法被拆分。" + +msgid "Assembly" +msgstr "组合体" + +msgid "Cut Connectors information" +msgstr "切割连接件信息" + +msgid "Object manipulation" +msgstr "操作对象" + +msgid "Group manipulation" +msgstr "操作组" + +msgid "Object Settings to modify" +msgstr "要修改的对象设置" + +msgid "Part Settings to modify" +msgstr "要修改的零件设置" + +msgid "Layer range Settings to modify" +msgstr "要修改的图层范围设置" + +msgid "Part manipulation" +msgstr "零件操作" + +msgid "Instance manipulation" +msgstr "实例操作" + +msgid "Height ranges" +msgstr "高度范围" + +msgid "Settings for height range" +msgstr "高度范围设置" + +msgid "Layer" +msgstr "层" + +msgid "Selection conflicts" +msgstr "选择冲突" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "如果第一个选择的是对象,那么第二个选择的也必须是对象。" + +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "如果第一个选择的是零件,那么第二个选择的也必须是同一个对象中的零件。" + +msgid "The type of the last solid object part is not to be changed." +msgstr "不允许修改对象中最后一个实体零件的类型。" + +msgid "Negative Part" +msgstr "负零件" + +msgid "Support Blocker" +msgstr "支撑去除器" + +msgid "Support Enforcer" +msgstr "支撑添加器" + +msgid "Type:" +msgstr "类型:" + +msgid "Choose part type" +msgstr "选择零件类型" + +msgid "Enter new name" +msgstr "输入新名称" + +msgid "Renaming" +msgstr "重命名" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "以下模型对象已被修复" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "以下模型对象修复失败" + +msgid "Repairing was canceled" +msgstr "修复被取消" + +msgid "Additional process preset" +msgstr "附加工艺预设" + +msgid "Remove parameter" +msgstr "删除参数" + +msgid "to" +msgstr "到" + +msgid "Remove height range" +msgstr "移除高度范围" + +msgid "Add height range" +msgstr "添加高度范围" + +msgid "Invalid numeric." +msgstr "数值错误。" + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "一个单元格仅能被复制到同一列的一个或多个单元格" + +msgid "multiple cells copy is not supported" +msgstr "不支持多个单元格的复制" + +msgid "Outside" +msgstr "盘外" + +msgid "Layer height" +msgstr "层高" + +msgid "Wall loops" +msgstr "墙层数" + +msgid "Infill density(%)" +msgstr "填充密度(%)" + +msgid "Auto Brim" +msgstr "自动Brim" + +msgid "Mouse ear" +msgstr "圆盘" + +msgid "Outer brim only" +msgstr "仅外侧" + +msgid "Inner brim only" +msgstr "仅内侧" + +msgid "Outer and inner brim" +msgstr "内侧和外侧" + +msgid "No-brim" +msgstr "无brim" + +msgid "Outer wall speed" +msgstr "外墙速度" + +msgid "Plate" +msgstr "盘" + +msgid "Brim" +msgstr "Brim" + +msgid "Object/Part Setting" +msgstr "对象/零件设置" + +msgid "Reset parameter" +msgstr "重置参数" + +msgid "Multicolor Print" +msgstr "多色打印" + +msgid "Line Type" +msgstr "走线类型" + +msgid "More" +msgstr "详情" + +msgid "Open Preferences." +msgstr "打开首选项" + +msgid "Open next tip." +msgstr "打开下一条提示" + +msgid "Open Documentation in web browser." +msgstr "在web浏览器中打开文档。" + +msgid "Color" +msgstr "颜色" + +msgid "Pause" +msgstr "暂停" + +msgid "Template" +msgstr "模板" + +msgid "Custom" +msgstr "自定义" + +msgid "Pause:" +msgstr "暂停" + +msgid "Custom Template:" +msgstr "自定义模板:" + +msgid "Custom G-code:" +msgstr "自定义G-code:" + +msgid "Custom G-code" +msgstr "自定义 G-code" + +msgid "Enter Custom G-code used on current layer:" +msgstr "输入当前层上使用的自定义G-code:" + +msgid "Jump to Layer" +msgstr "跳转到层" + +msgid "Please enter the layer number" +msgstr "请输入层数" + +msgid "Add Pause" +msgstr "添加暂停打印" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "在该层的起始位置插入暂停。" + +msgid "Add Custom G-code" +msgstr "添加自定义G-code" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "在该层的起始位置插入自定义G-code。" + +msgid "Add Custom Template" +msgstr "添加自定义模板" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "在该层的起始位置插入模板自定义G-code。" + +msgid "Filament " +msgstr "耗材丝" + +msgid "Change filament at the beginning of this layer." +msgstr "在该层的起始位置更换耗材丝。" + +msgid "Delete Pause" +msgstr "删除暂停打印" + +msgid "Delete Custom Template" +msgstr "删除自定义模板" + +msgid "Edit Custom G-code" +msgstr "编辑自定义G-code" + +msgid "Delete Custom G-code" +msgstr "删除自定义G-code" + +msgid "Delete Filament Change" +msgstr "删除耗材丝更换" + +msgid "No printer" +msgstr "无打印机" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "无法连接服务器" + +msgid "Check the status of current system services" +msgstr "请检查当前系统服务状态" + +msgid "code" +msgstr "代码" + +msgid "Failed to connect to cloud service" +msgstr "无法连接到云服务" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "请点击上方的超链接以查看云服务状态" + +msgid "Failed to connect to the printer" +msgstr "无法连接打印机" + +msgid "Connection to printer failed" +msgstr "连接打印机失败" + +msgid "Please check the network connection of the printer and Orca." +msgstr "请检查打印机和工作室的网络连接" + +msgid "Connecting..." +msgstr "连接中..." + +msgid "?" +msgstr "?" + +msgid "/" +msgstr "" + +msgid "Empty" +msgstr "空" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "自动补给" + +msgid "AMS not connected" +msgstr "AMS 未连接" + +msgid "Load" +msgstr "进料" + +msgid "Unload" +msgstr "退料" + +msgid "Ext Spool" +msgstr "外挂料卷" + +msgid "Tips" +msgstr "提示" + +msgid "Guide" +msgstr "引导" + +msgid "Retry" +msgstr "重试" + +msgid "Calibrating AMS..." +msgstr "正在校准AMS..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "校准过程遇到问题。点击查看解决方案。" + +msgid "Calibrate again" +msgstr "重新校准" + +msgid "Cancel calibration" +msgstr "取消校准" + +msgid "Idling..." +msgstr "空闲..." + +msgid "Heat the nozzle" +msgstr "加热喷嘴" + +msgid "Cut filament" +msgstr "切断耗材丝" + +msgid "Pull back current filament" +msgstr "抽回耗材丝" + +msgid "Push new filament into extruder" +msgstr "送出新的耗材丝到挤出机" + +msgid "Purge old filament" +msgstr "冲刷旧耗材丝" + +msgid "Feed Filament" +msgstr "送料" + +msgid "Confirm extruded" +msgstr "确认挤出" + +msgid "Check filament location" +msgstr "检查耗材丝位置" + +msgid "Grab new filament" +msgstr "咬入耗材丝" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "选择1个AMS槽位,然后点击进料/退料按钮以自动进料/退料。" + +msgid "Edit" +msgstr "编辑" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"所有选中的对象都处于被锁定的盘上,\n" +"无法对这些对象做自动摆盘。" + +msgid "No arrangable objects are selected." +msgstr "没有可摆盘的对象被选中。" + +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "该盘处于锁定状态,无法对其进行自动摆盘。" + +msgid "Arranging..." +msgstr "自动摆放中..." + +msgid "Arranging" +msgstr "自动摆放" + +msgid "Arranging canceled." +msgstr "已取消自动摆放。" + +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "已完成自动摆放,但是有未被摆到盘内的项,可在减小间距后重试。" + +msgid "Arranging done." +msgstr "已完成自动摆放。" + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "自动摆放失败,处理对象几何数据时遇到异常。" + +#, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"自动摆放会忽略以下无法放入单盘的零件:\n" +"%s" + +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"所有选中的对象都处于被锁定的盘上,\n" +"无法对这些对象做自动朝向。" + +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"该盘处于锁定状态,\n" +"无法对其进行自动朝向。" + +msgid "Orienting..." +msgstr "自动朝向中..." + +msgid "Orienting" +msgstr "自动朝向中..." + +msgid "Orienting canceled." +msgstr "自动朝向已取消。" + +msgid "Filling" +msgstr "正在填充" + +msgid "Bed filling canceled." +msgstr "填充热床已取消。" + +msgid "Bed filling done." +msgstr "填充热床已完成。" + +msgid "Searching for optimal orientation" +msgstr "搜索最佳方向" + +msgid "Orientation search canceled." +msgstr "方向搜索已取消。" + +msgid "Orientation found." +msgstr "找到方向。" + +msgid "Logging in" +msgstr "登录中" + +msgid "Login failed" +msgstr "登录失败" + +msgid "Please check the printer network connection." +msgstr "请检查打印机的网络连接。" + +msgid "Abnormal print file data. Please slice again." +msgstr "打印文件数据异常,请重新切片" + +msgid "Task canceled." +msgstr "任务已取消。" + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "上传任务超时,请排查网络状态后重试。" + +msgid "Cloud service connection failed. Please try again." +msgstr "云服务连接失败,请重试" + +msgid "Print file not found. please slice again." +msgstr "未找到打印文件,请重新切片。" + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "打印文件超过最大允许大小(1GB),请简化模型后重新切片。" + +msgid "Failed to send the print job. Please try again." +msgstr "无法发送打印任务,请重试。" + +msgid "Failed to upload file to ftp. Please try again." +msgstr "上传文件至FTP失败,请重试。" + +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "点击上方的链接检查Bambu服务器的当前状态。" + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "打印文件的大小过大,请调整文件大小后重试。" + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "未找到打印文件,请重新切片后再发送打印。" + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "无法将打印文件上传至FTP。请检查网络状态并重试。" + +msgid "Sending print job over LAN" +msgstr "正在通过局域网发送打印任务" + +msgid "Sending print job through cloud service" +msgstr "正在通过云端服务发送打印任务" + +msgid "Print task sending times out." +msgstr "发送打印任务超时。" + +msgid "Service Unavailable" +msgstr "服务不可用" + +msgid "Unknown Error." +msgstr "未知错误" + +msgid "Sending print configuration" +msgstr "正在发送打印配置" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "已发送完成,即将自动跳转到设备页面(%s秒)" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "已成功发送。将自动跳转到%ss中的下一页。" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "需要插入SD卡后方可发送局域网打印" + +msgid "Sending gcode file over LAN" +msgstr "通过局域网发送gcode文件" + +msgid "Sending gcode file to sdcard" +msgstr "发送gcode文件到sd卡" + +#, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "成功发送。即将关闭当前页面(%s秒)" + +msgid "An SD card needs to be inserted before sending to printer." +msgstr "需要插入SD卡后方可发送到打印机。" + +msgid "Importing SLA archive" +msgstr "导入SLA存档" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"SLA存档不包含任何预设。在导入该SLA存档之前,请先激活一些SLA打印机预设。" + +msgid "Importing canceled." +msgstr "导入已取消。" + +msgid "Importing done." +msgstr "导入完成。" + +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "导入的SLA存档不包含任何预设。当前的SLA预设被用作备用选项。" + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "您不能加载一个在床上有多个部件的SLA项目" + +msgid "Please check your object list before preset changing." +msgstr "请在预设更改之前检查对象列表。" + +msgid "Attention!" +msgstr "注意!" + +msgid "Downloading" +msgstr "下载中" + +msgid "Download failed" +msgstr "下载失败" + +msgid "Cancelled" +msgstr "已取消" + +msgid "Install successfully." +msgstr "安装成功。" + +msgid "Installing" +msgstr "安装中" + +msgid "Install failed" +msgstr "安装失败" + +# snapmaker orca beta +msgid "Note: The firmware version of SnapmakerU1 should be no less than" +msgstr "提示:建议SnapmakerU1 固件版本不低于" + +msgid "Snapmaker Orca beta is forked from Orca Slicer by SoftFever." +msgstr "Snapmaker Orca beta 基于 SoftFever 的 Orca Slicer开发。" + +msgid "OrcaSlicer is forked from Bambu Studio by Bambu Lab." +msgstr "Orca Slicer 基于 Bambu Lab 的 Bambu Studio 开发而来。" + +msgid "Bambu Studio is forked from PrusaSlicer by Prusa Research, which is from Slic3r by Alessandro Ranellucci and the RepRap community. Orca Slicer incorporates a lot of features from SuperSlicer by @supermerill." +msgstr "Bambu Studio 基于 Prusa Research 的 PrusaSlicer 开发而来,而 PrusaSlicer 又是基于 Alessandro Ranellucci 和 RepRap 社区的 Slic3r进行开发。Orca Slicer 整合了许多来自 @supermerill 的SuperSlicer 的特性。" + +msgid "Snapmaker Orca integrates some features from the 3D printing open-source community, with specific attributions provided in the code comments." +msgstr "Snapmaker Orca 集成了来自 3D 打印开源社区的一些特性,并在代码注释中提供了具体的归属说明。" + +msgid "Snapmaker Orca is licensed under the GNU Affero Generall Public License, version 3." +msgstr "Snapmaker Orca 采用 GNU Affero 通用公共许可证,第 3 版进行授权。" + +msgid "Portions copyright" +msgstr "部分版权" + +msgid "Copyright" +msgstr "版权" + +msgid "License" +msgstr "许可证" + +msgid "Snapmaker Orca is licensed under " +msgstr "Snapmaker Orca是在" + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero 通用公共许可证,版本 3下授权的" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "Snapmaker Orca 基于 Orca Slicer 开发" + +msgid "Libraries" +msgstr "库" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "本软件使用开源组件,其版权和其他所有权属于各自的所有者" + +#, c-format, boost-format +msgid "About %s" +msgstr "关于 %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca" + +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "Snapmaker Orca基于BambuStudio、PrusaSlicer 以及SuperSlicer开发。" + +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "BambuStudio基于PrusaResearch的PrusaSlicer开发而来。" + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer最初是基于Alessandro Ranellucci的Slic3r。" + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "Slic3r由Alessandro Ranellucci在其他众多贡献者的帮助下创建。" + +msgid "Version" +msgstr "版本" + +msgid "AMS Materials Setting" +msgstr "AMS 材料设置" + +msgid "Confirm" +msgstr "确定" + +msgid "Close" +msgstr "关闭" + +msgid "Colour" +msgstr "颜色" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "挤出头温度" + +msgid "max" +msgstr "最大" + +msgid "min" +msgstr "最小" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "输入的范围应当在 %1% 和 %2% 之间" + +msgid "SN" +msgstr "序列号" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "不支持在打印时修改AMS槽位信息" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "动态流量校准系数" + +msgid "PA Profile" +msgstr "PA 配置文件" + +msgid "Factor K" +msgstr "系数K" + +msgid "Factor N" +msgstr "系数N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "不支持在打印时设置虚拟槽位信息" + +msgid "Are you sure you want to clear the filament information?" +msgstr "您确定要清除耗材丝信息吗?" + +msgid "You need to select the material type and color first." +msgstr "您需要先选择材料类型和颜色。" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "请输入有效的数值(K的范围为%.1f~%.1f)" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "请输入有效的数值(K的范围为%.1f~%.1f,N的范围为%.1f~%.1f)" + +msgid "Other Color" +msgstr "其他颜色" + +msgid "Custom Color" +msgstr "自定义颜色" + +msgid "Dynamic flow calibration" +msgstr "动态流量标定" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"喷嘴温度和最大体积速度会影响到标定结果,请填写与实际打印相同的数值。可通过选" +"择已有的材料预设来自动填写。" + +msgid "Nozzle Diameter" +msgstr "喷嘴直径" + +msgid "Bed Type" +msgstr "热床类型" + +msgid "Nozzle temperature" +msgstr "喷嘴温度" + +msgid "Bed Temperature" +msgstr "热床温度" + +msgid "Max volumetric speed" +msgstr "最大体积速度" + +msgid "℃" +msgstr "" + +msgid "Bed temperature" +msgstr "床温" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "开始" + +msgid "Next" +msgstr "下一步" + +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"标定完成。如下图中的示例,请在您的热床上找到最均匀的挤出线,并将其左侧的数值" +"填入系数K输入框。" + +msgid "Save" +msgstr "保存" + +msgid "Last Step" +msgstr "上一步" + +msgid "Example" +msgstr "示例" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "标定中... %d%%" + +msgid "Calibration completed" +msgstr "标定已完成" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s 不支持 %s" + +msgid "Dynamic flow Calibration" +msgstr "动态流量标定" + +msgid "Step" +msgstr "步骤" + +msgid "AMS Slots" +msgstr "AMS舱内材料" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "仅允许选择放入同种材质耗材丝的AMS槽位" + +msgid "Enable AMS" +msgstr "启用AMS" + +msgid "Print with filaments in the AMS" +msgstr "采用AMS里的材料打印" + +msgid "Disable AMS" +msgstr "不启用AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "使用机箱背后挂载的材料打印" + +msgid "Current Cabin humidity" +msgstr "当前舱内湿度" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" +"当干燥剂过于潮湿时,请及时更换。以下几种情况下,指示器可能无法准确反映情况:盖子" +"打开或干燥剂包被替换时。干燥剂需要数小时吸收潮气,低温也会延缓该过程。" + +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "配置当前打印任务应使用哪个AMS槽位" + +msgid "Filament used in this print job" +msgstr "当前打印使用的耗材丝" + +msgid "AMS slot used for this filament" +msgstr "当前耗材丝对应的AMS槽位" + +msgid "Click to select AMS slot manually" +msgstr "点击以手动选择AMS槽位" + +msgid "Do not Enable AMS" +msgstr "不启用AMS" + +msgid "Print using materials mounted on the back of the case" +msgstr "使用安装在机箱背面的材料进行打印" + +msgid "Print with filaments in ams" +msgstr "采用AMS里的材料打印" + +msgid "Print with filaments mounted on the back of the chassis" +msgstr "采用挂载在机箱背部的材料打印" + +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "当前材料耗尽时,打印机将按照以下顺序继续打印。" + +msgid "Group" +msgstr "组" + +msgid "The printer does not currently support auto refill." +msgstr "打印机当前不支持自动补给耗材。" + +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "AMS耗材备份未启用,请在AMS设置中启用。" + +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"如果AMS中有两卷相同的耗材,则自动补给启用。\n" +"(目前支持品牌、材料种类、颜色相同的耗材的自动补给)" + +msgid "DRY" +msgstr "干燥" + +msgid "WET" +msgstr "潮湿" + +msgid "AMS Settings" +msgstr "AMS 设置" + +msgid "Insertion update" +msgstr "插入料时更新" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"当插入新的Bambu Lab耗材丝的时候,AMS会自动读取耗材丝信息。这个过程大约需要20" +"秒。" + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" +"注意:如果是在打印过程中插入新的耗材丝,AMS会在打印结束后自动读取此耗材丝信" +"息。" + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"在插入一卷新料时,AMS将不会自动读取料卷信息,预留一个空的料卷信息等待您手动输" +"入。" + +msgid "Power on update" +msgstr "开机时检测" + +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"每次开机时,AMS将会自动读取其所插入的耗材信息(读取过程会转料卷)。需要花时大约" +"1分钟。" + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "AMS不会在启动时自动读取耗材丝信息。它会使用上次关机前记录的信息。" + +msgid "Update remaining capacity" +msgstr "更新剩余容量" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"AMS读取Bambu Lab耗材丝信息同时推算料卷的剩余容量。在打印过程中,剩余容量会自" +"动更新。" + +msgid "AMS filament backup" +msgstr "AMS材料备份" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "AMS料材丝耗尽后将自动切换到属性完全相同的耗材丝" + +msgid "Air Printing Detection" +msgstr "空打检测" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "检测到堵塞和耗材丝碾磨,立即停止打印以节约时间和耗材丝" + +msgid "File" +msgstr "文件" + +msgid "Calibration" +msgstr "校准" + +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "插件下载失败。请检查您的防火墙设置和vpn软件,检查后重试。" + +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "安装插件失败。请检查是否被杀毒软件屏蔽或删除。" + +msgid "click here to see more info" +msgstr "点击这里查看更多信息" + +msgid "Please home all axes (click " +msgstr "请先执行回原点(点击" + +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr ")操作以定位当前工具头位置,以防止轴移动时超出边界造成设备磨损" + +msgid "Go Home" +msgstr "回原点" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "发生错误。可能系统内存不足或者程序存在bug。" + +msgid "Please save project and restart the program. " +msgstr "请保存项目并重启程序。" + +msgid "Processing G-Code from Previous file..." +msgstr "从之前的文件加载G代码..." + +msgid "Slicing complete" +msgstr "切片完成" + +msgid "Access violation" +msgstr "非法访问" + +msgid "Illegal instruction" +msgstr "非法指令" + +msgid "Divide by zero" +msgstr "除零" + +msgid "Overflow" +msgstr "上溢" + +msgid "Underflow" +msgstr "下溢" + +msgid "Floating reserved operand" +msgstr "浮点保留操作数" + +msgid "Stack overflow" +msgstr "栈溢出" + +msgid "Running post-processing scripts" +msgstr "运行后处理脚本" + +msgid "Successfully executed post-processing script" +msgstr "成功执行后处理脚本" + +msgid "Unknown error occured during exporting G-code." +msgstr "导出 G-Code 时出现未知错误。" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"将临时 G-Code 复制到输出 G-Code 失败。也许 SD 卡被写锁定了?\n" +"错误消息:%1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"将临时 G-Code 复制到输出 G-Code 失败。目标设备可能有问题,请再次尝试导出或使" +"用其他设备。损坏的输出 G-Code 在 %1%.tmp。" + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"复制到所选目标文件夹后重命名 G-Code 失败。当前路径为 %1%.tmp。请再次尝试导" +"出。" + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"临时 G-Code 的复制已完成,但在复制检查期间无法打开位于 %1% 的原始代码。输出 " +"G-Code 为 %2%.tmp。" + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"临时 G-Code 的复制已完成,但在复制检查期间无法打开导出的代码。输出 G-Code 为 " +"%1%.tmp。" + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "G 代码文件导出到 %1%" + +msgid "Unknown error when export G-code." +msgstr "导出G-code文件发生未知错误。" + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"无法保存Gcode文件。\n" +"错误信息:%1%。\n" +"源文件 %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "将临时 G 代码复制到输出 G 代码失败" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "计划上传到 `%1%`。请参阅窗口-> 打印主机上传队列" + +msgid "Device" +msgstr "设备" + +msgid "Task Sending" +msgstr "正在发送的任务" + +msgid "Task Sent" +msgstr "已发送的任务" + +msgid "Edit multiple printers" +msgstr "编辑多个打印机" + +msgid "Select connected printers (0/6)" +msgstr "选择已连接的打印机 (0/6)" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "选择已连接的打印机 (%d/6)" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "可以选择的打印机数量最多为 %d。" + +msgid "Offline" +msgstr "离线" + +msgid "No task" +msgstr "没有任务" + +msgid "View" +msgstr "视图" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "编辑打印机" + +msgid "Device Name" +msgstr "设备名" + +msgid "Task Name" +msgstr "任务名" + +msgid "Device Status" +msgstr "设备状态" + +msgid "Actions" +msgstr "动作" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "请在此处选择您想管理的设备(最多6个设备)。" + +msgid "Add" +msgstr "添加" + +msgid "Idle" +msgstr "空闲" + +msgid "Printing" +msgstr "打印中" + +msgid "Upgrading" +msgstr "升级中" + +msgid "Incompatible" +msgstr "不兼容的预设" + +msgid "syncing" +msgstr "同步中" + +msgid "Printing Finish" +msgstr "打印成功" + +msgid "Printing Failed" +msgstr "打印失败" + +msgid "Printing Pause" +msgstr "打印暂停" + +msgid "Prepare" +msgstr "准备" + +msgid "Slicing" +msgstr "正在切片" + +msgid "Pending" +msgstr "等待中" + +msgid "Sending" +msgstr "发送中" + +msgid "Sending Finish" +msgstr "发送成功" + +msgid "Sending Cancel" +msgstr "取消发送" + +msgid "Sending Failed" +msgstr "发送失败" + +msgid "Print Success" +msgstr "打印成功" + +msgid "Print Failed" +msgstr "打印失败" + +msgid "Removed" +msgstr "移除" + +msgid "Resume" +msgstr "继续" + +msgid "Stop" +msgstr "停止" + +msgid "Task Status" +msgstr "任务状态" + +msgid "Sent Time" +msgstr "发送时间" + +msgid "There are no tasks to be sent!" +msgstr "没有任务正在发送!" + +msgid "No historical tasks!" +msgstr "没有历史任务!" + +msgid "Loading..." +msgstr "正在加载视频……" + +msgid "No AMS" +msgstr "没有AMS" + +msgid "Send to Multi-device" +msgstr "发送到多设备" + +msgid "Preparing print job" +msgstr "正在准备打印任务" + +msgid "Abnormal print file data. Please slice again" +msgstr "打印文件数据异常,请重新切片" + +msgid "There is no device available to send printing." +msgstr "没有可用于发送打印的设备。" + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "同时使用的打印机数量不能等于0。" + +msgid "Use External Spool" +msgstr "使用外挂料卷" + +msgid "Use AMS" +msgstr "使用AMS" + +msgid "Select Printers" +msgstr "选择打印机" + +msgid "Ams Status" +msgstr "AMS状态" + +msgid "Printing Options" +msgstr "打印选项" + +msgid "Bed Leveling" +msgstr "热床调平" + +msgid "Timelapse" +msgstr "延时摄影" + +msgid "Flow Dynamic Calibration" +msgstr "动态流量校准" + +msgid "Send Options" +msgstr "发送选项" + +msgid "Send to" +msgstr "发送至" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "打印机在同一时间。(这取决于有多少设备可以接受同时加热。)" + +msgid "Wait" +msgstr "等待" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "分钟发送一次。(这取决于完成加热需要多长时间。)" + +msgid "Send" +msgstr "发送" + +msgid "Name is invalid;" +msgstr "无效名称;" + +msgid "illegal characters:" +msgstr "非法字符:" + +msgid "illegal suffix:" +msgstr "非法后缀:" + +msgid "The name is not allowed to be empty." +msgstr "名称不允许为空。" + +msgid "The name is not allowed to start with space character." +msgstr "名称不允许以空格开头。" + +msgid "The name is not allowed to end with space character." +msgstr "名称不允许以空格结尾。" + +msgid "The name length exceeds the limit." +msgstr "名称长度超过限制。" + +msgid "Origin" +msgstr "原点" + +msgid "Size in X and Y of the rectangular plate." +msgstr "矩形框在X和Y方向的尺寸。" + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "G-code 0,0 坐标相对于矩形框左前角的距离。" + +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "热床直径。假定原点 (0,0) 位于中心。" + +msgid "Rectangular" +msgstr "矩形" + +msgid "Circular" +msgstr "圆" + +msgid "Load shape from STL..." +msgstr "从STL文件加载形状..." + +msgid "Settings" +msgstr "设置" + +msgid "Texture" +msgstr "纹理" + +msgid "Remove" +msgstr "移除" + +msgid "Not found:" +msgstr "未发现:" + +msgid "Model" +msgstr "模型" + +msgid "Choose an STL file to import bed shape from:" +msgstr "选择热床形状的 STL 文件:" + +msgid "Invalid file format." +msgstr "无效的文件格式。" + +msgid "Error! Invalid model" +msgstr "错误!无效模型" + +msgid "The selected file contains no geometry." +msgstr "所选文件不包含任何几何数据。" + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "所选文件包含多个未连接的区域。不支持这种类型。" + +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "选择 (PNG/SVG) 文件作为热床纹理:" + +msgid "Choose an STL file to import bed model from:" +msgstr "选择 STL 文件来导入床模型:" + +msgid "Bed Shape" +msgstr "热床形状" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "建议最低温度低于 190 度或建议最高温度高于 300 度。\n" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "推荐最低温度不能大于推荐最高温度。\n" + +msgid "Please check.\n" +msgstr "请检查。\n" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"当温度超过建议的范围时,喷嘴可能会堵塞。\n" +"请确认是否使用该温度打印\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "该耗材的推荐喷嘴温度是[%d, %d]摄氏度" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"最大体积流量设置过小\n" +"重置为0.5" + +#, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"当前腔体温度高于材料的安全温度,这可能导致材料软化和堵塞。该材料的最高安全温" +"度为 %d。" + +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "层高过小。将重置为0.2" + +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "熨烫线距过小。将重置为0.1" + +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"首层层高为无效的0值。\n" +"将被重置为0.2。" + +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"这个设置仅用于在特定场景下微调模型尺寸。\n" +"例如,当模型尺寸有小误差,难以装配。\n" +"对于大尺寸的调整,请使用模型缩放功能。\n" +"\n" +"这个数值将被重置为0。" + +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"过大的象脚补偿是不合理的。\n" +"如果确实有严重的象脚效应,请检查其他设置。\n" +"例如,是否设置了过高的床温。\n" +"\n" +"这个数值将被重置为0。" + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "“交替添加额外”与“确保垂直外壳厚度”的”全部“选项不兼容。" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" +"自动调整这些设置?\n" +"是 - 自动调整确保垂直外壳厚度为“适量”,并开启交替添加额外内墙\n" +"否 - 不使用交替添加额外内墙" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"擦拭塔不支持和自适应层高或支撑独立层高。同时开启\n" +"如何选择?\n" +"是 - 选择开启擦拭塔\n" +"否 - 选择保留自适应层高或支撑独立层高" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"擦拭塔不支持和自适应层高同时开启。\n" +"如何选择?\n" +"是 - 选择开启擦拭塔\n" +"否 - 选择保留自适应层高" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"擦拭塔不支持和支撑独立层高同时开启。\n" +"如何选择?\n" +"是 - 选择开启擦拭塔\n" +"否 - 选择保留支撑独立层高" + +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "逐件打印时,挤出机可能与裙边碰撞。因此将裙边的层数重置为1。" + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" +"seam_slope_start_height需要小于layer_height。\n" +"重置为0。" + +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"旋转模式只能在外墙层数为1,关闭支撑,顶层层数为0,稀疏填充密度为0,传统延时摄" +"影时有效。" + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr "但是使用I3结构的机器将不会生成延时视频。" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"自动调整这些设置?\n" +"是 - 自动调整这些设置并开启旋转模式\n" +"否 - 暂不使用旋转模式" + +msgid "Auto bed leveling" +msgstr "自动热床调平" + +msgid "Heatbed preheating" +msgstr "预加热热床" + +msgid "Sweeping XY mech mode" +msgstr "扫描XY轴机械模态" + +msgid "Changing filament" +msgstr "换料" + +msgid "M400 pause" +msgstr "M400暂停" + +msgid "Paused due to filament runout" +msgstr "断料暂停" + +msgid "Heating hotend" +msgstr "加热热端" + +msgid "Calibrating extrusion" +msgstr "标定挤出补偿" + +msgid "Scanning bed surface" +msgstr "扫描热床" + +msgid "Inspecting first layer" +msgstr "扫描首层" + +msgid "Identifying build plate type" +msgstr "识别打印板类型" + +msgid "Calibrating Micro Lidar" +msgstr "标定轮廓仪外参" + +msgid "Homing toolhead" +msgstr "工具头回到起始点" + +msgid "Cleaning nozzle tip" +msgstr "清理喷嘴头" + +msgid "Checking extruder temperature" +msgstr "检查挤出温度" + +msgid "Printing was paused by the user" +msgstr "用户暂停" + +msgid "Pause of front cover falling" +msgstr "工具头前盖掉落暂停" + +msgid "Calibrating the micro lida" +msgstr "轮廓仪激光标定" + +msgid "Calibrating extrusion flow" +msgstr "挤出绝对流量标定" + +msgid "Paused due to nozzle temperature malfunction" +msgstr "热端温控异常暂停" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "热床温控异常暂停" + +msgid "Filament unloading" +msgstr "耗材丝卸载中" + +msgid "Skip step pause" +msgstr "丢步暂停" + +msgid "Filament loading" +msgstr "耗材丝加载中" + +msgid "Motor noise calibration" +msgstr "电机噪声校准" + +msgid "Paused due to AMS lost" +msgstr "暂停,由于AMS丢失" + +msgid "Paused due to low speed of the heat break fan" +msgstr "暂停,由于散热风扇转速低" + +msgid "Paused due to chamber temperature control error" +msgstr "暂停,由于仓温控制错误" + +msgid "Cooling chamber" +msgstr "冷却仓温" + +msgid "Paused by the Gcode inserted by user" +msgstr "暂停,由于用户插入的Gcode" + +msgid "Motor noise showoff" +msgstr "电机噪音标定结果展示" + +msgid "Nozzle filament covered detected pause" +msgstr "裹头暂停" + +msgid "Cutter error pause" +msgstr "切刀异常暂停" + +msgid "First layer error pause" +msgstr "首层扫描异常暂停" + +msgid "Nozzle clog pause" +msgstr "堵头暂停" + +msgid "Unknown" +msgstr "未定义" + +msgid "Fatal" +msgstr "致命" + +msgid "Serious" +msgstr "严重" + +msgid "Common" +msgstr "普通" + +msgid "Update successful." +msgstr "更新成功。" + +msgid "Downloading failed." +msgstr "下载失败。" + +msgid "Verification failed." +msgstr "验证失败。" + +msgid "Update failed." +msgstr "更新失败。" + +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"当前仓温或目标仓温超过45℃为了避免挤出机堵塞,低温耗材(PLA/PETG/TPU)不允许被" +"装入。" + +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"低温耗材(PLA/PETG/TPU)被装入挤出机中。为了避免挤出机堵塞,不允许将仓温设置" +"在45℃以上" + +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"当您将仓温设置在40℃以下时,仓温控制将不会激活。目标仓温将自动设置为0℃。" + +msgid "Failed to start printing job" +msgstr "发起打印任务失败" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "该标定不支持当前选中喷嘴直径" + +msgid "Current flowrate cali param is invalid" +msgstr "当前流量校准参数无效" + +msgid "Selected diameter and machine diameter do not match" +msgstr "选择的直径和机器直径不匹配" + +msgid "Failed to generate cali gcode" +msgstr "生成校准gcode失败" + +msgid "Calibration error" +msgstr "校准错误" + +msgid "TPU is not supported by AMS." +msgstr "AMS不支持TPU。" + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "AMS不支持Bambu PET-CF/PA6-CF。" + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "潮湿的PVA会变得柔软并粘在AMS内,请在使用前注意干燥。" + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "CF/GF耗材丝丝又硬又脆,在AMS中很容易断裂或卡住,请谨慎使用。" + +msgid "default" +msgstr "缺省" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "编辑自定义G-code (%1%)" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" + +msgid "Search gcode placeholders" +msgstr "" + +msgid "Add selected placeholder to G-code" +msgstr "" + +msgid "Select placeholder" +msgstr "" + +msgid "[Global] Slicing State" +msgstr "" + +msgid "Read Only" +msgstr "" + +msgid "Read Write" +msgstr "" + +msgid "Slicing State" +msgstr "" + +msgid "Print Statistics" +msgstr "" + +msgid "Objects Info" +msgstr "" + +msgid "Dimensions" +msgstr "" + +msgid "Temperatures" +msgstr "温度" + +msgid "Timestamps" +msgstr "时间戳" + +#, boost-format +msgid "Specific for %1%" +msgstr "" + +msgid "Presets" +msgstr "预设" + +msgid "Print settings" +msgstr "打印设置" + +msgid "Filament settings" +msgstr "耗材丝设置" + +msgid "SLA Materials settings" +msgstr "" + +msgid "Printer settings" +msgstr "打印机设置" + +msgid "parameter name" +msgstr "参数名称" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s 不可以是百分比" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "值 %s 越界,是否继续?" + +msgid "Parameter validation" +msgstr "参数验证" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "值 %s 超出了范围,有效的范围是从 %d 到 %d 。" + +msgid "Value is out of range." +msgstr "值越界。" + +#, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"%s%%还是%s %s?\n" +"是:%s%%\n" +"否:%s %s" + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "输入格式无效。应为以下格式的维度向量:“%1%”" + +msgid "Input value is out of range" +msgstr "输入值超出范围外" + +msgid "Some extension in the input is invalid" +msgstr "" + +#, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "无效格式,应该是\"%1%\"这种数组格式" + +msgid "Layer Height" +msgstr "层高" + +msgid "Line Width" +msgstr "线宽" + +msgid "Fan Speed" +msgstr "风扇速度" + +msgid "Temperature" +msgstr "温度" + +msgid "Flow" +msgstr "流量" + +msgid "Tool" +msgstr "工具" + +msgid "Layer Time" +msgstr "层时间" + +msgid "Layer Time (log)" +msgstr "层时间(对数)" + +msgid "Height: " +msgstr "层高: " + +msgid "Width: " +msgstr "线宽: " + +msgid "Speed: " +msgstr "速度: " + +msgid "Flow: " +msgstr "挤出流量: " + +msgid "Layer Time: " +msgstr "层时间: " + +msgid "Fan: " +msgstr "风扇速度: " + +msgid "Temperature: " +msgstr "温度: " + +msgid "Loading G-codes" +msgstr "正在加载G-code" + +msgid "Generating geometry vertex data" +msgstr "正在生成几何顶点数据" + +msgid "Generating geometry index data" +msgstr "正在生成几何索引数据" + +msgid "Statistics of All Plates" +msgstr "所有盘切片信息" + +msgid "Display" +msgstr "显示" + +msgid "Flushed" +msgstr "冲刷" + +msgid "Tower" +msgstr "擦料塔" + +msgid "Total" +msgstr "总计" + +msgid "Total Estimation" +msgstr "总预估" + +msgid "Total time" +msgstr "总时间" + +msgid "Total cost" +msgstr "总成本" + +msgid "up to" +msgstr "达到" + +msgid "above" +msgstr "高于" + +msgid "from" +msgstr "从" + +msgid "Color Scheme" +msgstr "颜色方案" + +msgid "Time" +msgstr "时间" + +msgid "Percent" +msgstr "百分比" + +msgid "Used filament" +msgstr "使用的耗材丝" + +msgid "Layer Height (mm)" +msgstr "层高(mm)" + +msgid "Line Width (mm)" +msgstr "线宽(mm)" + +msgid "Speed (mm/s)" +msgstr "速度(mm/s)" + +msgid "Fan Speed (%)" +msgstr "风扇速度(%)" + +msgid "Temperature (°C)" +msgstr "温度(℃)" + +msgid "Volumetric flow rate (mm³/s)" +msgstr "体积流量速度(mm³/s)" + +msgid "Travel" +msgstr "空驶" + +msgid "Seams" +msgstr "缝" + +msgid "Retract" +msgstr "回抽" + +msgid "Unretract" +msgstr "装填回抽" + +msgid "Filament Changes" +msgstr "耗材丝更换" + +msgid "Wipe" +msgstr "擦拭" + +msgid "Options" +msgstr "选项" + +msgid "travel" +msgstr "空驶" + +msgid "Extruder" +msgstr "挤出机" + +msgid "Filament change times" +msgstr "换料次数" + +msgid "Cost" +msgstr "成本" + +msgid "Color change" +msgstr "颜色更换" + +msgid "Print" +msgstr "打印" + +msgid "Printer" +msgstr "打印机" + +msgid "Custom g-code" +msgstr "" + +msgid "ToolChange" +msgstr "" + +msgid "Time Estimation" +msgstr "时间预估" + +msgid "Normal mode" +msgstr "普通模式" + +msgid "Total Filament" +msgstr "总耗材丝" + +msgid "Model Filament" +msgstr "模型耗材丝" + +msgid "Prepare time" +msgstr "准备时间" + +msgid "Model printing time" +msgstr "模型打印时间" + +msgid "Switch to silent mode" +msgstr "切换到静音模式" + +msgid "Switch to normal mode" +msgstr "切换到普通模式" + +msgid "Variable layer height" +msgstr "可变层高" + +msgid "Adaptive" +msgstr "自适应" + +msgid "Quality / Speed" +msgstr "细节/速度" + +msgid "Smooth" +msgstr "平滑模式" + +msgid "Radius" +msgstr "半径" + +msgid "Keep min" +msgstr "保留最小" + +msgid "Left mouse button:" +msgstr "鼠标左键:" + +msgid "Add detail" +msgstr "减小层高" + +msgid "Right mouse button:" +msgstr "鼠标右键:" + +msgid "Remove detail" +msgstr "增大层高" + +msgid "Shift + Left mouse button:" +msgstr "Shift + 鼠标左键:" + +msgid "Reset to base" +msgstr "设置到基础层高" + +msgid "Shift + Right mouse button:" +msgstr "Shift + 鼠标右键:" + +msgid "Smoothing" +msgstr "平滑" + +msgid "Mouse wheel:" +msgstr "鼠标滚轮:" + +msgid "Increase/decrease edit area" +msgstr "增加/减小编辑区域" + +msgid "Sequence" +msgstr "顺序" + +msgid "Mirror Object" +msgstr "镜像物体" + +msgid "Tool Move" +msgstr "工具 移动" + +msgid "Tool Rotate" +msgstr "工具 旋转" + +msgid "Move Object" +msgstr "移动对象" + +msgid "Auto Orientation options" +msgstr "自动朝向选项" + +msgid "Enable rotation" +msgstr "开启旋转" + +msgid "Optimize support interface area" +msgstr "优化接触面面积" + +# src/slic3r/GUI/GLCanvas3D.cpp:4767 +msgid "Orient" +msgstr "调整朝向" + +msgid "Arrange options" +msgstr "自动摆放选项" + +msgid "Spacing" +msgstr "间距" + +msgid "0 means auto spacing." +msgstr "0 表示自动间距。" + +msgid "Auto rotate for arrangement" +msgstr "自动旋转以优化自动摆放效果" + +msgid "Allow multiple materials on same plate" +msgstr "允许同一盘中包含多种材料" + +msgid "Avoid extrusion calibration region" +msgstr "避开挤出标定区域" + +msgid "Align to Y axis" +msgstr "对齐到Y轴" + +msgid "Add plate" +msgstr "添加新盘" + +msgid "Auto orient" +msgstr "自动朝向" + +msgid "Arrange all objects" +msgstr "全局整理" + +msgid "Arrange objects on selected plates" +msgstr "单盘整理" + +msgid "Split to objects" +msgstr "拆分为对象" + +msgid "Split to parts" +msgstr "拆分为零件" + +msgid "Assembly View" +msgstr "装配体视图" + +msgid "Select Plate" +msgstr "选择盘" + +msgid "Assembly Return" +msgstr "退出装配体视图" + +msgid "return" +msgstr "返回" + +msgid "Paint Toolbar" +msgstr "上色工具条" + +msgid "Explosion Ratio" +msgstr "爆炸比例" + +msgid "Section View" +msgstr "剖面视图" + +msgid "Assemble Control" +msgstr "拼装视图控制" + +msgid "Total Volume:" +msgstr "总体积:" + +msgid "Assembly Info" +msgstr "装配体信息" + +msgid "Volume:" +msgstr "体积:" + +msgid "Size:" +msgstr "尺寸:" + +#, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"发现gcode路径在层%d,高为%.2lf mm处的冲突。请将有冲突的对象分离得更远(%s <-> " +"%s)。" + +msgid "An object is layed over the boundary of plate." +msgstr "检测到有对象放在盘的边界上。" + +msgid "A G-code path goes beyond the max print height." +msgstr "检测出超出打印高度的G-code路径。" + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "检测超出热床边界的G-code路径。" + +msgid "Only the object being edit is visible." +msgstr "只有正在编辑的对象是可见的。" + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"对象被放置在构建板的边界上或超过高度限制。\n" +"请通过将其完全移动到构建板内或构建板外,并确认高度在构建空间以内来解决问题。" + +msgid "Calibration step selection" +msgstr "校准步骤选择" + +msgid "Micro lidar calibration" +msgstr "微激光雷达校准" + +msgid "Bed leveling" +msgstr "热床调平" + +msgid "Vibration compensation" +msgstr "振动补偿" + +msgid "Motor noise cancellation" +msgstr "电机噪音消除" + +msgid "Calibration program" +msgstr "校准程序" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"校准程序会自动检测设备以最小化设备误差。\n" +"它可以让设备保持最佳性能。" + +msgid "Calibration Flow" +msgstr "校准流程" + +msgid "Start Calibration" +msgstr "开始校准" + +msgid "Completed" +msgstr "已完成" + +msgid "Calibrating" +msgstr "校准中" + +msgid "No step selected" +msgstr "未选择步骤" + +msgid "Auto-record Monitoring" +msgstr "监控录像" + +msgid "Go Live" +msgstr "开启直播" + +msgid "Liveview Retry" +msgstr "实时预览重试" + +msgid "Resolution" +msgstr "分辨率" + +msgid "Enable" +msgstr "开启" + +msgid "Hostname or IP" +msgstr "主机名或IP地址" + +msgid "Custom camera source" +msgstr "自定义摄像机源" + +msgid "Show \"Live Video\" guide page." +msgstr "显示\"直播视频流\"指南" + +msgid "720p" +msgstr "" + +msgid "1080p" +msgstr "" + +msgid "ConnectPrinter(LAN)" +msgstr "连接打印机(局域网)" + +msgid "Please input the printer access code:" +msgstr "请输入打印机访问码:" + +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"你可以在打印机“设置->网络->连接->访问码\"\n" +"查看,如下图所示:" + +msgid "Invalid input." +msgstr "非法输入" + +msgid "New Window" +msgstr "新窗口" + +msgid "Open a new window" +msgstr "打开新窗口" + +msgid "Application is closing" +msgstr "正在关闭应用程序" + +msgid "Closing Application while some presets are modified." +msgstr "正在关闭应用程序,部分预设已修改。" + +msgid "Logging" +msgstr "日志" + +msgid "Preview" +msgstr "预览" + +msgid "Multi-device" +msgstr "多设备" + +msgid "Project" +msgstr "项目" + +msgid "Yes" +msgstr "是" + +msgid "No" +msgstr "否" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "将会被关闭以创建新模型,是否继续?" + +msgid "Slice plate" +msgstr "切片单盘" + +msgid "Print plate" +msgstr "打印单盘" + +msgid "Slice all" +msgstr "切片所有盘" + +msgid "Export G-code file" +msgstr "导出G-code文件" + +msgid "Export plate sliced file" +msgstr "导出单盘切片文件" + +msgid "Export all sliced file" +msgstr "导出所有切片文件" + +msgid "Print all" +msgstr "打印所有盘" + +msgid "Send all" +msgstr "发送所有盘" + +msgid "Keyboard Shortcuts" +msgstr "快捷键" + +msgid "Show the list of the keyboard shortcuts" +msgstr "显示快捷键列表" + +msgid "Setup Wizard" +msgstr "配置向导" + +msgid "Show Configuration Folder" +msgstr "打开配置文件夹" + +msgid "Show Tip of the Day" +msgstr "展示每日小贴士" + +msgid "Check for Update" +msgstr "检查新版本" + +msgid "Open Network Test" +msgstr "打开网络测试" + +#, c-format, boost-format +msgid "&About %s" +msgstr "关于 %s" + +msgid "Upload Models" +msgstr "上传模型" + +msgid "Download Models" +msgstr "下载模型" + +msgid "Default View" +msgstr "默认视图" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "上" + +msgid "Top View" +msgstr "顶部视图" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "下" + +msgid "Bottom View" +msgstr "底部视图" + +msgid "Front" +msgstr "前" + +msgid "Front View" +msgstr "前视图" + +msgid "Rear" +msgstr "后" + +msgid "Rear View" +msgstr "后视图" + +msgid "Left" +msgstr "左" + +msgid "Left View" +msgstr "左视图" + +msgid "Right" +msgstr "右" + +msgid "Right View" +msgstr "右视图" + +msgid "Start a new window" +msgstr "打开新窗口" + +msgid "New Project" +msgstr "新建项目" + +msgid "Start a new project" +msgstr "新建一个项目" + +msgid "Open a project file" +msgstr "打开项目文件" + +msgid "Recent projects" +msgstr "最近的项目" + +msgid "Save Project" +msgstr "保存项目" + +msgid "Save current project to file" +msgstr "保存当前项目到文件" + +msgid "Save Project as" +msgstr "项目另存为" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "项目另存为" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "导入 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "加载模型" + +msgid "Import Zip Archive" +msgstr "导入 ZIP 压缩文件" + +msgid "Load models contained within a zip archive" +msgstr "从 ZIP 压缩文件中导入一个或多个模型" + +msgid "Import Configs" +msgstr "导入预设" + +msgid "Load configs" +msgstr "加载配置" + +msgid "Import" +msgstr "导入" + +msgid "Export all objects as one STL" +msgstr "导出所有对象为一个STL" + +msgid "Export all objects as STLs" +msgstr "导出所有对象为多个STL" + +msgid "Export Generic 3MF" +msgstr "导出通用 3MF" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "导出不含 3mf 扩展的 3mf 文件" + +msgid "Export current sliced file" +msgstr "导出当前已切片的文件" + +msgid "Export all plate sliced file" +msgstr "导出所有盘已切片的文件" + +msgid "Export G-code" +msgstr "导出 G-code" + +msgid "Export current plate as G-code" +msgstr "导出当前盘的G-code" + +msgid "Export Preset Bundle" +msgstr "导出预设包" + +msgid "Export current configuration to files" +msgstr "导出当前选择的预设" + +msgid "Export" +msgstr "导出" + +msgid "Quit" +msgstr "退出程序" + +msgid "Undo" +msgstr "撤销" + +msgid "Redo" +msgstr "重做" + +msgid "Cut selection to clipboard" +msgstr "剪切所选项到剪贴板" + +msgid "Copy" +msgstr "复制" + +msgid "Copy selection to clipboard" +msgstr "复制所选项到剪贴板" + +msgid "Paste" +msgstr "粘贴" + +msgid "Paste clipboard" +msgstr "从剪贴板粘贴" + +msgid "Delete selected" +msgstr "删除所选项" + +msgid "Deletes the current selection" +msgstr "删除当前所选项" + +msgid "Delete all" +msgstr "全部删除" + +msgid "Deletes all objects" +msgstr "删除所有对象" + +msgid "Clone selected" +msgstr "克隆所选项" + +msgid "Clone copies of selections" +msgstr "克隆多份所选项" + +msgid "Select all" +msgstr "选中所有" + +msgid "Selects all objects" +msgstr "选中所有对象" + +msgid "Deselect all" +msgstr "取消所有选中" + +msgid "Deselects all objects" +msgstr "取消所有选中" + +msgid "Use Perspective View" +msgstr "使用透视视角" + +msgid "Use Orthogonal View" +msgstr "使用正交视角" + +msgid "Show &G-code Window" +msgstr "显示G-code窗口" + +msgid "Show g-code window in Previce scene" +msgstr "显示G-code窗口" + +msgid "Show 3D Navigator" +msgstr "显示3D导航器" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "显示3D导航器" + +msgid "Reset Window Layout" +msgstr "重置窗口布局" + +msgid "Reset to default window layout" +msgstr "重置为默认窗口布局" + +msgid "Show &Labels" +msgstr "显示名称" + +msgid "Show object labels in 3D scene" +msgstr "在3D场景中显示对象名称" + +msgid "Show &Overhang" +msgstr "显示悬空高亮" + +msgid "Show object overhang highlight in 3D scene" +msgstr "在3D场景中显示悬空高亮" + +msgid "Preferences" +msgstr "偏好设置" + +msgid "Help" +msgstr "帮助" + +msgid "Temperature Calibration" +msgstr "温度校准" + +msgid "Pass 1" +msgstr "粗调" + +msgid "Flow rate test - Pass 1" +msgstr "流量测试 - 通过 1" + +msgid "Pass 2" +msgstr "细调" + +msgid "Flow rate test - Pass 2" +msgstr "流量测试 - 通过 2" + +msgid "Flow rate" +msgstr "流量" + +msgid "Pressure advance" +msgstr "压力提前" + +msgid "Retraction test" +msgstr "回抽测试" + +msgid "Orca Tolerance Test" +msgstr "Orca误差测试" + +msgid "Max flowrate" +msgstr "最大体积流量" + +msgid "VFA" +msgstr "VFA(Vertical Fine Artifacts垂直振纹)" + +# SoftFever +msgid "More..." +msgstr "进阶校准" + +msgid "Tutorial" +msgstr "教程" + +msgid "Calibration help" +msgstr "校准帮助" + +msgid "More calibrations" +msgstr "更多校准" + +msgid "&Open G-code" +msgstr "打开G-code" + +msgid "Open a G-code file" +msgstr "打开G-code 文件" + +msgid "Re&load from Disk" +msgstr "从磁盘重新加载" + +msgid "Reload the plater from disk" +msgstr "从磁盘重新加载平台" + +msgid "Export &Toolpaths as OBJ" +msgstr "将工具路径导出为OBJ格式" + +msgid "Export toolpaths as OBJ" +msgstr "将工具路径导出为OBJ格式" + +msgid "Open &Slicer" +msgstr "打开 Studio" + +msgid "Open Slicer" +msgstr "打开 Studio" + +msgid "&Quit" +msgstr "退出" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "退出 %s" + +msgid "&File" +msgstr "文件" + +msgid "&View" +msgstr "视图" + +msgid "&Help" +msgstr "帮助" + +#, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "有一个同名的文件 %s。你想覆盖它吗?" + +#, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "有一个同名的配置 %s。你想覆盖它吗?" + +msgid "Overwrite file" +msgstr "覆盖文件" + +msgid "Yes to All" +msgstr "全是" + +msgid "No to All" +msgstr "全否" + +msgid "Choose a directory" +msgstr "选择目录" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "共导出 %d 组预设(仅包含当前使用的非系统的预设)" + +msgid "Export result" +msgstr "导出结果" + +msgid "Select profile to load:" +msgstr "选择要加载的配置:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "共导入 %d 组预设(仅包含非系统且与当前配置兼容的预设)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" +"\n" +"注意:请确保您在导入配置前,已经添加了相应的打印机。" + +msgid "Import result" +msgstr "导入结果" + +msgid "File is missing" +msgstr "文件丢失" + +msgid "The project is no longer available." +msgstr "此项目不可用。" + +msgid "Filament Settings" +msgstr "打印丝设置" + +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"想从Bambu 云同步你的个人数据吗?\n" +"包含如下信息:\n" +"1. 工艺预设\n" +"2. 打印丝预设\n" +"3. 打印机预设" + +msgid "Synchronization" +msgstr "同步" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "设备无法处理更多的对话。请稍后重试。" + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "播放器异常,请重新安装系统播放器。" + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "未能加载播放器,请重新点击“播放”按钮。" + +msgid "Please confirm if the printer is connected." +msgstr "请确认打印机是否连接成功。" + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "打印机正在忙于下载,请等下载完成后再尝试。" + +msgid "Printer camera is malfunctioning." +msgstr "打印机摄像头异常。" + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "出现了一些问题。请更新打印机固件后重试。" + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "局域网模式直播未开启,请前往打印机屏幕开启。" + +msgid "Please enter the IP of printer to connect." +msgstr "请输入打印机IP后尝试连接。" + +msgid "Initializing..." +msgstr "正在初始化……" + +msgid "Connection Failed. Please check the network and try again" +msgstr "链接失败。请检查网络后重试" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "检查网络后重试。如仍未恢复,可重启或更新打印机。" + +msgid "The printer has been logged out and cannot connect." +msgstr "打印机已注销,无法连接。" + +msgid "Stopped." +msgstr "已经停止。" + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "局域网连接失败(无法启动直播)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "该功能需要“虚拟摄像头工具包”,是否下载并安装该工具包?" + +msgid "Downloading Virtual Camera Tools" +msgstr "正在下载“虚拟摄像头工具包”" + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"另一个虚拟摄像头正在工作。\n" +"Snapmaker Orca 同时只能支持一个虚拟摄像头。\n" +"是否停止前一个虚拟摄像头?" + +#, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "虚拟摄像头初始化失败(%s)!" + +msgid "Network unreachable" +msgstr "网络不可访问" + +msgid "Information" +msgstr "信息" + +msgid "Playing..." +msgstr "正在播放中……" + +msgid "Year" +msgstr "年" + +msgid "Month" +msgstr "月" + +msgid "All Files" +msgstr "所有文件" + +msgid "Group files by year, recent first." +msgstr "按年份分组,从最近的开始展示" + +msgid "Group files by month, recent first." +msgstr "按月份分组,从最近的开始展示" + +msgid "Show all files, recent first." +msgstr "显示所有文件,从最近的开始展示" + +msgid "Switch to timelapse files." +msgstr "切换到延时摄影文件列表" + +msgid "Video" +msgstr "录像" + +msgid "Switch to video files." +msgstr "切换到视频文件列表" + +msgid "Switch to 3mf model files." +msgstr "切换到3MF模型文件。" + +msgid "Delete selected files from printer." +msgstr "从打印机中删除选中的文件" + +msgid "Download" +msgstr "下载" + +msgid "Download selected files from printer." +msgstr "从打印机中下载选择的文件" + +msgid "Select" +msgstr "选择" + +msgid "Batch manage files." +msgstr "批量管理文件" + +msgid "Refresh" +msgstr "刷新" + +msgid "Reload file list from printer." +msgstr "从打印机重新加载文件列表。" + +msgid "No printers." +msgstr "未选择打印机" + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "连接失败 [%d]!" + +msgid "Loading file list..." +msgstr "加载文件列表..." + +msgid "No files" +msgstr "文件列表为空" + +msgid "Load failed" +msgstr "加载失败" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "初始化失败(设备未连接)" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "当前固件暂不支持查看SD卡中文件。请更新打印机固件后重试。" + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "初始化失败(存储不可用,请插入 SD 卡)!" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "局域网连接失败(无法查看SD卡)" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "局域网模式下暂不支持查看SD卡内文件。" + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "初始化失败(%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "您将从打印机中删除%u个文件。确定要继续吗?" + +msgid "Delete files" +msgstr "删除文件" + +#, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "你确定要从打印机中删除文件'%s'吗?" + +msgid "Delete file" +msgstr "删除文件" + +msgid "Fetching model infomations ..." +msgstr "正在获取模型信息..." + +msgid "Failed to fetch model information from printer." +msgstr "无法从打印机获取模型信息。" + +msgid "Failed to parse model information." +msgstr "解析模型信息失败。" + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +".gcode.3mf文件中不包含G-code数据。请使用Snapmaker Orca进行切片并导出新的." +"gcode.3mf文件。" + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "文件%s丢失,请重新下载。" + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" + +msgid "Download waiting..." +msgstr "等待下载中..." + +msgid "Play" +msgstr "播放" + +msgid "Open Folder" +msgstr "打开目录" + +msgid "Download finished" +msgstr "下载完成" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "下载中 %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "重新连接打印机,该操作无法立即完成,请稍后再试。" + +msgid "File does not exist." +msgstr "文件不存在。" + +msgid "File checksum error. Please retry." +msgstr "文件校验和错误。请重试。" + +msgid "Not supported on the current printer version." +msgstr "当前打印机的版本不支持。" + +msgid "Storage unavailable, insert SD card." +msgstr "存储不可用,请插入SD卡。" + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "错误码:%d" + +msgid "Speed:" +msgstr "速度:" + +msgid "Deadzone:" +msgstr "死区:" + +msgid "Options:" +msgstr "选项:" + +msgid "Zoom" +msgstr "视角缩放" + +msgid "Translation/Zoom" +msgstr "平移/缩放" + +msgid "3Dconnexion settings" +msgstr "3Dconnexion设置" + +msgid "Swap Y/Z axes" +msgstr "交换Y/Z轴" + +msgid "Invert X axis" +msgstr "反转X轴" + +msgid "Invert Y axis" +msgstr "反转Y轴" + +msgid "Invert Z axis" +msgstr "反转Z轴" + +msgid "Invert Yaw axis" +msgstr "反转垂直轴,偏航轴" + +msgid "Invert Pitch axis" +msgstr "反转横轴,俯仰轴" + +msgid "Invert Roll axis" +msgstr "反转纵轴,横滚轴" + +msgid "Printing Progress" +msgstr "打印进度" + +msgid "0" +msgstr "" + +msgid "Layer: N/A" +msgstr "层: N/A" + +msgid "Clear" +msgstr "清除" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "您已经完成了商城模型的打印,但是评分信息的同步失败了。" + +msgid "How do you like this printing file?" +msgstr "你觉得这个打印文件怎么样?" + +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "(该模型已进行评分。您的评分将覆盖之前的评分。)" + +msgid "Rate" +msgstr "评分" + +msgid "Camera" +msgstr "摄像机" + +msgid "SD Card" +msgstr "SD卡" + +msgid "Camera Setting" +msgstr "相机设置" + +msgid "Switch Camera View" +msgstr "切换相机视图" + +msgid "Control" +msgstr "控制" + +msgid "Printer Parts" +msgstr "打印机零件" + +msgid "Print Options" +msgstr "打印选项" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "LED灯" + +msgid "Aux" +msgstr "辅助" + +msgid "Cham" +msgstr "机箱" + +msgid "Bed" +msgstr "热床" + +msgid "Debug Info" +msgstr "调试信息" + +msgid "No SD Card" +msgstr "无SD卡" + +msgid "SD Card Abnormal" +msgstr "SD卡异常" + +msgid "Cancel print" +msgstr "取消打印" + +msgid "Are you sure you want to cancel this print?" +msgstr "你确定要取消这次打印吗?" + +msgid "Downloading..." +msgstr "下载中..." + +msgid "Cloud Slicing..." +msgstr "云切片中..." + +#, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "前面还有%s个任务在云端切片队列中" + +#, c-format, boost-format +msgid "Layer: %s" +msgstr "层: %s" + +#, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "层: %d/%d" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "请在进料或退料前把喷嘴升温到170℃以上。" + +msgid "Still unload" +msgstr "继续退料" + +msgid "Still load" +msgstr "继续进料" + +msgid "Please select an AMS slot before calibration" +msgstr "请先选择一个AMS槽位后进行标定" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "无法读取耗材丝信息:耗材丝已经加载到工具头,请退出耗材丝后再重试。" + +msgid "This only takes effect during printing" +msgstr "仅在打印过程中生效" + +msgid "Silent" +msgstr "静音" + +msgid "Standard" +msgstr "标准" + +msgid "Sport" +msgstr "运动" + +msgid "Ludicrous" +msgstr "狂暴" + +msgid "Can't start this without SD card." +msgstr "没有SD卡无法开始任务" + +msgid "Rate the Print Profile" +msgstr "对打印配置文件进行评分" + +msgid "Comment" +msgstr "评论" + +msgid "Rate this print" +msgstr "对此次打印进行评分" + +msgid "Add Photo" +msgstr "添加照片" + +msgid "Delete Photo" +msgstr "删除照片" + +msgid "Submit" +msgstr "提交" + +msgid "Please click on the star first." +msgstr "请先点击星星。" + +msgid "InFo" +msgstr "信息" + +msgid "Get oss config failed." +msgstr "获取oss配置失败。" + +msgid "Upload Pictrues" +msgstr "上传图片" + +msgid "Number of images successfully uploaded" +msgstr "图像上传成功" + +msgid " upload failed" +msgstr "上传失败" + +msgid " upload config prase failed\n" +msgstr "上传配置解析失败\n" + +msgid " No corresponding storage bucket\n" +msgstr "没有相应的存储桶\n" + +msgid " can not be opened\n" +msgstr "无法打开\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "在上传图像的过程中出现以下问题。你想忽略它们吗?\n" + +msgid "info" +msgstr "信息" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "正在同步打印结果。请稍后重试。" + +msgid "Upload failed\n" +msgstr "上传失败\n" + +msgid "obtaining instance_id failed\n" +msgstr "获取instance_id失败\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"由于某些原因,您的评论结果无法上传。如下所示:\n" +"\n" +"错误代码:" + +msgid "error message: " +msgstr "错误消息:" + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"您是否想要重定向到评分网页?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "您的一些图像上传失败。您是否想要重定向到评分网页?" + +msgid "You can select up to 16 images." +msgstr "您最多可以选择16张图像。" + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"此打印配置文件至少需要一个成功的打印记录 \n" +"才能给出好评(4星或5星)。" + +msgid "Status" +msgstr "设备状态" + +msgid "Update" +msgstr "固件更新" + +msgid "Don't show again" +msgstr "不再显示" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s 错误" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s 遇到一个错误" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s 警告" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s 有一个警告" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s 信息" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s 信息" + +msgid "Skip" +msgstr "跳过" + +msgid "Newer 3mf version" +msgstr "较新的3mf版本" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "3mf文件版本处于Beta测试阶段,比当前Snapmaker Orca版本更新。" + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "如果您想尝试Snapmaker Orca Beta,您可以点击" + +msgid "Download Beta Version" +msgstr "下载Beta版本" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "3mf文件版本比当前Snapmaker Orca版本更新。" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "更新你的Snapmaker Orca以启用3mf文件中的所有功能。" + +msgid "Current Version: " +msgstr "当前版本:" + +msgid "Latest Version: " +msgstr "最新版本:" + +msgid "Not for now" +msgstr "暂不" + +msgid "3D Mouse disconnected." +msgstr "3D鼠标断连。" + +msgid "Configuration can update now." +msgstr "配置现在可以升级。" + +msgid "Detail." +msgstr "详情。" + +msgid "Integration was successful." +msgstr "集成成功。" + +msgid "Integration failed." +msgstr "集成失败。" + +msgid "Undo integration was successful." +msgstr "集成取消成功。" + +msgid "New network plug-in available." +msgstr "新的网络插件可用。" + +msgid "Details" +msgstr "详情" + +msgid "New printer config available." +msgstr "有新的打印机配置可用。" + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "集成取消失败。" + +msgid "Exporting." +msgstr "正在导出。" + +msgid "Software has New version." +msgstr "发现新的软件版本。" + +msgid "Goto download page." +msgstr "前往下载网站。" + +msgid "Open Folder." +msgstr "打开目录。" + +msgid "Safely remove hardware." +msgstr "安全移除硬件。" + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d 模型有自定义支撑。" + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d对象有涂色。" + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d对象加载为一个切割对象的子部件" + +msgid "ERROR" +msgstr "错误" + +msgid "COMPLETED" +msgstr "已完成" + +msgid "CANCELED" +msgstr "已取消" + +msgid "Cancel upload" +msgstr "取消上传" + +msgid "Jump to" +msgstr "跳转到" + +msgid "Error:" +msgstr "错误:" + +msgid "Warning:" +msgstr "警告:" + +msgid "Export successfully." +msgstr "导出成功." + +msgid "Model file downloaded." +msgstr "已下载模型文件。" + +msgid "Serious warning:" +msgstr "严重警告:" + +msgid " (Repair)" +msgstr "(修复)" + +msgid " Click here to install it." +msgstr "点击此处安装" + +msgid "WARNING:" +msgstr "警告:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "你的模型需要支撑才能打印。请开启材料支撑选项。" + +msgid "Gcode path overlap" +msgstr "Gcode路径有重叠" + +msgid "Support painting" +msgstr "支撑绘制" + +msgid "Color painting" +msgstr "颜色绘制" + +msgid "Cut connectors" +msgstr "切割连接件" + +msgid "Layers" +msgstr "层" + +msgid "Range" +msgstr "范围" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "应用程序无法正常运行,因为OpenGL的版本低于2.0。\n" + +msgid "Please upgrade your graphics card driver." +msgstr "请升级您的显卡驱动。" + +msgid "Unsupported OpenGL version" +msgstr "不支持的OpenGL版本" + +#, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "无法加载Shader: %s" + +msgid "Error loading shaders" +msgstr "加载shader程序时发生错误" + +msgctxt "Layers" +msgid "Top" +msgstr "顶部" + +msgctxt "Layers" +msgid "Bottom" +msgstr "底部" + +msgid "Enable AI monitoring of printing" +msgstr "启用打印过程的AI监控" + +msgid "Sensitivity of pausing is" +msgstr "暂停的灵敏度为" + +msgid "Enable detection of build plate position" +msgstr "启用构建板位置检测" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "检测构建板的定位标记,如果标记不在预定义范围内时暂停打印。" + +msgid "First Layer Inspection" +msgstr "首层扫描" + +msgid "Auto-recovery from step loss" +msgstr "自动从丢步中恢复" + +msgid "Allow Prompt Sound" +msgstr "允许提示音" + +msgid "Filament Tangle Detect" +msgstr "缠料检测" + +msgid "Nozzle Clumping Detection" +msgstr "裹头检测" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "检查喷嘴是否被耗材丝或其他异物裹住" + +msgid "Nozzle Type" +msgstr "喷嘴类型" + +msgid "Stainless Steel" +msgstr "不锈钢" + +msgid "Hardened Steel" +msgstr "硬化钢" + +#, c-format, boost-format +msgid "%.1f" +msgstr "" + +msgid "Global" +msgstr "全局" + +msgid "Objects" +msgstr "对象" + +msgid "Advance" +msgstr "高级" + +msgid "Compare presets" +msgstr "比较预设" + +msgid "View all object's settings" +msgstr "查看所有对象的配置" + +msgid "Material settings" +msgstr "材料设置" + +msgid "Remove current plate (if not last one)" +msgstr "移除当前板(如果不是最后一个)" + +msgid "Auto orient objects on current plate" +msgstr "在当前板上自动调整零件的朝向" + +msgid "Arrange objects on current plate" +msgstr "在当前板上排列零件" + +msgid "Unlock current plate" +msgstr "解锁当前板" + +msgid "Lock current plate" +msgstr "锁定当前板" + +msgid "Edit current plate name" +msgstr "编辑当前盘名" + +msgid "Move plate to the front" +msgstr "将当前板移到最前面" + +msgid "Customize current plate" +msgstr "自定义当前板" + +#, boost-format +msgid " plate %1%:" +msgstr "盘%1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "无效名称,不允许使用以下字符:" + +msgid "Sliced Info" +msgstr "切片你信息" + +msgid "Used Filament (m)" +msgstr "耗材丝消耗长度 (m)" + +msgid "Used Filament (mm³)" +msgstr "耗材丝消耗体积 (mm³)" + +msgid "Used Filament (g)" +msgstr "耗材丝消耗重量(g)" + +msgid "Used Materials" +msgstr "材料消耗" + +msgid "Estimated time" +msgstr "预估打印时间" + +msgid "Filament changes" +msgstr "材料切换" + +msgid "Click to edit preset" +msgstr "点击编辑配置" + +msgid "Connection" +msgstr "连接" + +msgid "Bed type" +msgstr "热床类型" + +msgid "Flushing volumes" +msgstr "冲刷体积" + +msgid "Add one filament" +msgstr "增加一个材料" + +msgid "Remove last filament" +msgstr "删除最后一个材料" + +msgid "Synchronize filament list from AMS" +msgstr "从AMS同步材料列表" + +msgid "Set filaments to use" +msgstr "配置可选择的材料" + +msgid "Search plate, object and part." +msgstr "搜索盘、模型和零件。" + +msgid "Pellets" +msgstr "" + +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "没有发现AMS材料。请在“设备”页面选择打印机,将加载 AMS 信息" + +msgid "Sync filaments with AMS" +msgstr "同步到 AMS 的材料列表" + +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "同步到 AMS 的材料列表将丢弃所有当前配置的材料预设、颜色。是否继续?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "已经同步过,你希望仅同步改变的材料还是重新同步所有材料?" + +msgid "Sync" +msgstr "同步" + +msgid "Resync" +msgstr "重新同步" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "没有如任何兼容的材料,同步操作未执行。" + +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"有一些未知型号的材料,映射到通用预设。请更新或者重启 Snapmaker Orca,以检查系统" +"预设有没有更新。" + +#, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "是否保存修改到“%1%”?" + +#, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "卸载成功。设备%s(%s)现在可能安全地从电脑移除。" + +#, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "弹出设备%s(%s)失败。" + +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "检测到有未保存的项目,是否恢复此项目?" + +msgid "Restore" +msgstr "恢复" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"当前热床温度相对较高。在封闭式外壳中打印这种丝可能会导致喷嘴堵塞。请打开前门" +"和/或取下上部玻璃。" + +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"打印丝所要求的喷嘴硬度高于打印机默认的喷嘴硬度。请更换硬化的喷嘴或打印丝,否" +"则喷嘴可能被磨损或损坏。" + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "启用传统的延时摄影可能会导致表面瑕疵。建议更改为平滑模式。" + +msgid "Expand sidebar" +msgstr "展开侧边栏" + +msgid "Collapse sidebar" +msgstr "折叠边栏" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "加载文件:%s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "该3mf文件不是来自Snapmaker Orca,将只加载几何数据。" + +msgid "Load 3mf" +msgstr "加载3mf" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "该3mf的版本%s比%s的版本%s新,发现以下参数键值无法识别:" + +msgid "You'd better upgrade your software.\n" +msgstr "建议升级您的软件版本。\n" + +#, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "该3mf的版本%s比%s的版本%s要新,建议升级你的软件。" + +msgid "Invalid values found in the 3mf:" +msgstr "在3mf文件中发现无效值:" + +msgid "Please correct them in the param tabs" +msgstr "请在参数页更正它们" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "该3mf文件中的材料或者打印机预设包含以下修改过的G-codes:" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "请确认这些修改过的G-codes是否安全,以防止对机器造成任何损坏!" + +msgid "Modified G-codes" +msgstr "修改过的G-codes" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "该3MF文件包含以下自定义的材料或打印机预设:" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "请确认这些预设中的G-codes是否安全,以防止对机器造成任何损坏!" + +msgid "Customized Preset" +msgstr "自定义的预设" + +msgid "Name of components inside step file is not UTF8 format!" +msgstr "step 文件中的部件名称包含非UTF8格式的字符!" + +msgid "The name may show garbage characters!" +msgstr "此名称可能显示乱码字符!" + +msgid "Remember my choice." +msgstr "记住我的选择。" + +#, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "加载文件“%1%”失败。发现无效配置。" + +msgid "Objects with zero volume removed" +msgstr "体积为零的对象已被移除" + +msgid "The volume of the object is zero" +msgstr "对象的体积为零" + +#, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"文件 %s 中对象的尺寸似乎是以米或者英寸为单位定义的。\n" +"Snapmaker Orca的内部单位为毫米。是否要转换成毫米?" + +msgid "Object too small" +msgstr "对象尺寸过小" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"该文件包含多个位于不同高度的对象。\n" +"是否将文件加载为一个由多个零件组合而成的对象,而非多个单零件的对象?" + +msgid "Multi-part object detected" +msgstr "检测到多部分对象" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "将这些文件加载为一个多零件对象?\n" + +msgid "Object with multiple parts was detected" +msgstr "检测到多零件对象" + +msgid "The file does not contain any geometry data." +msgstr "此文件不包含任何几何数据。" + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "对象看起来太大,希望将对象自动缩小以适应热床吗?" + +msgid "Object too large" +msgstr "对象太大" + +msgid "Export STL file:" +msgstr "导出 STL 文件:" + +msgid "Export AMF file:" +msgstr "导出AMF文件:" + +msgid "Save file as:" +msgstr "文件另存为:" + +msgid "Export OBJ file:" +msgstr "导出OBJ文件:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" +"文件 %s 已经存在\n" +"您是否要替换它?" + +msgid "Confirm Save As" +msgstr "确认另存为" + +msgid "Delete object which is a part of cut object" +msgstr "删除切割对象的一部分" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"您正尝试删除切割对象的一部分,这将破坏切割对应关系,删除之后,将无法再保证模" +"型的一致性。" + +msgid "The selected object couldn't be split." +msgstr "选中的模型不可分裂。" + +msgid "Another export job is running." +msgstr "有其他导出任务正在进行中。" + +msgid "Unable to replace with more than one volume" +msgstr "超过1个零件,无法替换" + +msgid "Error during replace" +msgstr "替换时发生错误" + +msgid "Replace from:" +msgstr "替换:" + +msgid "Select a new file" +msgstr "选择新文件" + +msgid "File for the replace wasn't selected" +msgstr "未选择替换文件" + +msgid "Please select a file" +msgstr "请选择一个文件" + +msgid "Do you want to replace it" +msgstr "您想要替换它吗" + +msgid "Message" +msgstr "消息" + +msgid "Reload from:" +msgstr "重新加载来源:" + +msgid "Unable to reload:" +msgstr "无法重新加载:" + +msgid "Error during reload" +msgstr "重新加载时发生错误" + +msgid "There are warnings after slicing models:" +msgstr "模型切片警告:" + +msgid "warnings" +msgstr "警告" + +msgid "Invalid data" +msgstr "无效数据" + +msgid "Slicing Canceled" +msgstr "切片已取消" + +#, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "正在切片盘%d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "请解决切片错误后再重新发布。" + +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "未检测到网络插件。网络相关功能不可用。" + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"仅预览模式:\n" +"被加载的文件仅包含G-Code,不支持进入准备页面" + +msgid "You can keep the modified presets to the new project or discard them" +msgstr "您可以保留修改的预设到新项目中或者忽略这些修改" + +msgid "Creating a new project" +msgstr "创建新项目" + +msgid "Load project" +msgstr "加载项目" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "保存文件失败。请检查目录是否存在,以及是否有其他程序打开了该项目文件。" + +msgid "Save project" +msgstr "保存项目" + +msgid "Importing Model" +msgstr "正在导入模型" + +msgid "prepare 3mf file..." +msgstr "正在准备3mf文件..." + +msgid "Download failed, unknown file format." +msgstr "下载失败,未知文件格式。" + +msgid "downloading project ..." +msgstr "项目下载中..." + +msgid "Download failed, File size exception." +msgstr "下载失败,文件大小异常。" + +#, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "项目已下载%d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "导入到Snapmaker Orca失败。请下载文件并手动导入。" + +msgid "Import SLA archive" +msgstr "导入 SLA 存档" + +msgid "The selected file" +msgstr "已选择的文件" + +msgid "does not contain valid gcode." +msgstr "不包含有效的G-code文件。" + +msgid "Error occurs while loading G-code file" +msgstr "加载G-code文件时遇到错误" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "加载路径为%1%的ZIP档案失败。" + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "解压文件到%1%失败:%2%" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "未能找到位于 %1% 的解压文件。解压缩文件失败。" + +msgid "Drop project file" +msgstr "项目文件操作" + +msgid "Please select an action" +msgstr "请选择处理方式" + +msgid "Open as project" +msgstr "按项目打开" + +msgid "Import geometry only" +msgstr "仅导入模型数据" + +msgid "Only one G-code file can be opened at the same time." +msgstr "只能同时打开一个G-code文件。" + +msgid "G-code loading" +msgstr "正在加载G-code文件" + +msgid "G-code files can not be loaded with models together!" +msgstr "G-code文件不能和模型一起加载" + +msgid "Can not add models when in preview mode!" +msgstr "在预览模式不允许添加模型" + +msgid "All objects will be removed, continue?" +msgstr "即将删除所有对象,是否继续?" + +msgid "The current project has unsaved changes, save it before continue?" +msgstr "当前项目包含未保存的修改,是否先保存?" + +msgid "Number of copies:" +msgstr "克隆数量:" + +msgid "Copies of the selected object" +msgstr "所选对象的克隆数量" + +msgid "Save G-code file as:" +msgstr "G-code文件另存为:" + +msgid "Save SLA file as:" +msgstr "SLA文件另存为:" + +msgid "The provided file name is not valid." +msgstr "提供的文件名无效。" + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "以下字符不被FAT文件系统支持:" + +msgid "Save Sliced file as:" +msgstr "切片文件另存为:" + +#, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "文件%s已经发送到打印机的存储空间,可以在打印机上浏览。" + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" +"无法对模型网格执行布尔运算。只保留正体积部分。您可以修复网格后再试一次。" + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "原因:零件\"%1%\"为空。" + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "原因:零件\"%1%\"没有封闭一个体积。" + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "原因:零件\"%1%\"有自相交。" + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "原因:零件\"%1%\"与另一个零件没有交集。" + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "无法对模型网格执行布尔运算。只有正面部分将被导出。" + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" +"您确定要将原始SVG文件与其本地路径存储到3MF文件中吗?\n" +"如果选择“否”,项目中的所有SVG文件将不再可编辑。" + +msgid "Private protection" +msgstr "隐私保护" + +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "打印机是否就绪?打印平台是否在正确的位置、有没有异物、是否干净?" + +msgid "Upload and Print" +msgstr "上传并打印" + +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"逐件打印:\n" +"建议使用自动摆盘避免打印时发生碰撞。" + +msgid "Send G-code" +msgstr "发送 G 代码" + +msgid "Send to printer" +msgstr "发送到打印机" + +msgid "Custom supports and color painting were removed before repairing." +msgstr "自定义的支撑和涂色在模型修复之前将被清除。" + +msgid "Optimize Rotation" +msgstr "优化旋转" + +msgid "Invalid number" +msgstr "无效数字" + +msgid "Plate Settings" +msgstr "盘参数设置" + +#, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "当前选择的零件数量: %1%\n" + +#, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "当前选择的对象数量: %1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "零件名字:%1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "对象名字:%1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "大小:%1% x %2% x %3% 英寸\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "大小: %1% x %2% x %3% 毫米\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "体积: %1% 英寸³\n" + +#, boost-format +msgid "Volume: %1% mm³\n" +msgstr "体积: %1% 毫米³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "三角形:%1%\n" + +msgid "Tips:" +msgstr "提示:" + +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"\"修复模型\"功能目前仅适用于Windows。请在Snapmaker Orca(windows)或CAD软件上修复模型。" + +#, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"热床% d:%s不建议被用于打印%s(%s)材料。如果你依然想打印,请设置耗材对应的热" +"床温度为非零值。" + +msgid "Switching the language requires application restart.\n" +msgstr "切换语言要求重启应用程序。\n" + +msgid "Do you want to continue?" +msgstr "是否继续?" + +msgid "Language selection" +msgstr "语言选择" + +msgid "Switching application language while some presets are modified." +msgstr "在切换应用语言之前发现某些参数预设有更改。" + +msgid "Changing application language" +msgstr "正在为应用程序切换语言" + +msgid "Changing the region will log out your account.\n" +msgstr "修改区域会自动登出您的账号。\n" + +msgid "Region selection" +msgstr "区域选择" + +msgid "Second" +msgstr "秒" + +msgid "Browse" +msgstr "浏览" + +msgid "Choose Download Directory" +msgstr "选择下载文件夹" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +msgid "General Settings" +msgstr "通用设置" + +msgid "Asia-Pacific" +msgstr "亚太" + +msgid "China" +msgstr "中国" + +msgid "Europe" +msgstr "欧洲" + +msgid "North America" +msgstr "北美" + +msgid "Others" +msgstr "其他" + +msgid "Login Region" +msgstr "登录区域" + +msgid "Stealth Mode" +msgstr "局域网模式" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "停止向拓竹科技服务器发送数据。如果您不使用Bambu " +"Lab的打印机或仅使用局域网模式,则可以安全地启用此功能。" + +msgid "Enable network plugin" +msgstr "启用网络插件" + +msgid "Check for stable updates only" +msgstr "仅检测正式版的更新" + +msgid "Metric" +msgstr "公制" + +msgid "Imperial" +msgstr "英制" + +msgid "Units" +msgstr "单位" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "同时仅运行一个 Snapmaker Orca 实例" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"在OSX上,默认情况下总是只有一个应用程序实例在运行。但是,允许从命令行运行同一" +"应用程序的多个实例。在这种情况下,此设置将只允许一个实例。" + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "如果启用,当您在已经启动一个 Snapmaker Orca 实例时再次启动 Snapmaker Orca ," +"将会激活您已经启动的 Snapmaker Orca 实例。" + +msgid "Home" +msgstr "首页" + +msgid "Default Page" +msgstr "起始页" + +msgid "Set the page opened on startup." +msgstr "设置启动Snapmaker Orca时首先显示的页面。" + +msgid "Touchpad" +msgstr "触控板" + +msgid "Camera style" +msgstr "视角控制模式" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" +"选择摄像机的导航模式。\n" +"缺省:鼠标左键+拖动 旋转,鼠标右键+拖动 平移;\n" +"触控板:Alt+拖动 旋转,Shift+拖动 平移。" + +msgid "Zoom to mouse position" +msgstr "放大到鼠标位置" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "在3D视角放大到鼠标位置,而不是2D窗口的中心。" + +msgid "Use free camera" +msgstr "使用自由视角" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "如果启用,使用自由视角。如果未启用,使用约束视角。" + +msgid "Reverse mouse zoom" +msgstr "反转鼠标缩放" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "如果启用,使用鼠标滚轮缩放的方向会反转。" + +msgid "Show splash screen" +msgstr "显示启动画面" + +msgid "Show the splash screen during startup." +msgstr "在启动时显示启动画面。" + +msgid "Show \"Tip of the day\" notification after start" +msgstr "启动后显示“每日小贴士”通知" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "如果启用,将在启动时显示有用的提示。" + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "冲刷体积:每一次更换颜色时自动计算。" + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "如果启用,会在每一次更换颜色时自动计算。" + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "冲刷体积:每一次更换材料时自动计算。" + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "如果启用,会在每一次更换材料时自动计算。" + +msgid "Remember printer configuration" +msgstr "记住打印机选项" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "如果启用,Orca会自动记录并切换您不同打印机之间的耗材配置与打印参数。" + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "多设备管理 (重启Orca后生效)" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "启用此选项后,您可以同时向多个设备发送任务并管理多个设备。" + +msgid "Network" +msgstr "网络" + +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "同步用户预设(打印机/耗材丝/工艺)" + +msgid "User Sync" +msgstr "用户同步" + +msgid "Update built-in Presets automatically." +msgstr "自动更新系统预设" + +msgid "System Sync" +msgstr "系统同步" + +msgid "Clear my choice on the unsaved presets." +msgstr "清除我对未保存的预置的选择。" + +msgid "Associate files to Snapmaker Orca" +msgstr "Snapmaker Orca文件关联" + +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "使用Snapmaker Orca打开.3mf文件" + +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "开启后,将缺省使用Snapmaker Orca打开.3mf文件" + +msgid "Associate .stl files to Snapmaker Orca" +msgstr "使用Snapmaker Orca打开.stl文件" + +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "开启后,将缺省使用Snapmaker Orca打开.stl文件" + +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "使用Snapmaker Orca打开.step/.stp文件" + +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "开启后,将缺省使用Snapmaker Orca打开.step文件" + +msgid "Associate web links to Snapmaker Orca" +msgstr "" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "" + +msgid "Maximum recent projects" +msgstr "近期项目的最大数量" + +msgid "Maximum count of recent projects" +msgstr "近期项目的最大计数" + +msgid "Clear my choice on the unsaved projects." +msgstr "清除我对未保存的项目的选择。" + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "加载具有修改的 G-Code 的 3MF 时不会出现警告" + +msgid "Auto-Backup" +msgstr "自动备份" + +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "定期备份你的项目,以便从偶尔的崩溃中恢复过来。" + +msgid "every" +msgstr "每" + +msgid "The peroid of backup in seconds." +msgstr "备份的周期" + +msgid "Downloads" +msgstr "下载" + +msgid "Dark Mode" +msgstr "深色模式" + +msgid "Enable Dark mode" +msgstr "启用深色模式" + +msgid "Develop mode" +msgstr "开发者模式" + +msgid "Skip AMS blacklist check" +msgstr "跳过AMS黑名单检查" + +msgid "Home page and daily tips" +msgstr "首页和每日小贴士" + +msgid "Show home page on startup" +msgstr "启动时显示主页" + +msgid "Sync settings" +msgstr "同步设置" + +msgid "User sync" +msgstr "用户同步" + +msgid "Preset sync" +msgstr "配置同步" + +msgid "Preferences sync" +msgstr "首选项同步" + +msgid "View control settings" +msgstr "视图控制设置" + +msgid "Rotate of view" +msgstr "旋转视图" + +msgid "Move of view" +msgstr "移动视图" + +msgid "Zoom of view" +msgstr "缩放视图" + +msgid "Other" +msgstr "其他" + +msgid "Mouse wheel reverses when zooming" +msgstr "缩放时鼠标滚轮反转" + +msgid "Enable SSL(MQTT)" +msgstr "启用SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "启用SSL(FTP)" + +msgid "Internal developer mode" +msgstr "内部开发者模式" + +msgid "Log Level" +msgstr "日志级别" + +msgid "fatal" +msgstr "致命" + +msgid "error" +msgstr "错误" + +msgid "warning" +msgstr "警告" + +msgid "debug" +msgstr "调试" + +msgid "trace" +msgstr "跟踪" + +msgid "Host Setting" +msgstr "" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "" + +msgid "Product host" +msgstr "正式环境" + +msgid "debug save button" +msgstr "保存" + +msgid "save debug settings" +msgstr "保存调试设置" + +msgid "DEBUG settings have saved successfully!" +msgstr "DEBUG模式生效!" + +msgid "Switch cloud environment, Please login again!" +msgstr "切换云环境,请重新登录!" + +msgid "System presets" +msgstr "系统配置" + +msgid "User presets" +msgstr "用户配置" + +msgid "Incompatible presets" +msgstr "不兼容的预设" + +msgid "AMS filaments" +msgstr "AMS 打印丝" + +msgid "Click to pick filament color" +msgstr "点击设置材料颜色" + +msgid "Please choose the filament colour" +msgstr "请选择材料颜色" + +msgid "Add/Remove presets" +msgstr "添加/删除配置" + +msgid "Edit preset" +msgstr "编辑预设" + +msgid "Project-inside presets" +msgstr "项目预设" + +msgid "Add/Remove filaments" +msgstr "添加/删除材料" + +msgid "Add/Remove materials" +msgstr "添加/删除材料" + +msgid "Select/Remove printers(system presets)" +msgstr "选择/移除打印机(系统预设)" + +msgid "Create printer" +msgstr "创建打印机" + +msgid "The selected preset is null!" +msgstr "选择的预设为空!" + +msgid "End" +msgstr "" + +msgid "Customize" +msgstr "自定义" + +msgid "Other layer filament sequence" +msgstr "其它层耗材打印顺序" + +msgid "Please input layer value (>= 2)." +msgstr "请输入层号(>=2)。" + +msgid "Plate name" +msgstr "盘名称" + +msgid "Same as Global Print Sequence" +msgstr "跟随全局打印顺序" + +msgid "Print sequence" +msgstr "打印顺序" + +msgid "Same as Global" +msgstr "跟随全局" + +msgid "Disable" +msgstr "禁用" + +msgid "Spiral vase" +msgstr "旋转花瓶" + +msgid "First layer filament sequence" +msgstr "首层耗材打印顺序" + +msgid "Same as Global Plate Type" +msgstr "跟随全局打印板类型" + +msgid "Same as Global Bed Type" +msgstr "跟随全局热床类型" + +msgid "By Layer" +msgstr "逐层" + +msgid "By Object" +msgstr "逐件" + +msgid "Accept" +msgstr "接受" + +msgid "Log Out" +msgstr "登出" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "正在切片以获取切片信息和预估打印时间" + +msgid "Packing project data into 3mf file" +msgstr "正在打包数据到3mf文件" + +msgid "Uploading 3mf" +msgstr "正在上传3mf" + +msgid "Jump to model publish web page" +msgstr "跳转到发布页面" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "提示:发布前需要一些准备时间,请耐心等待。" + +msgid "Publish" +msgstr "发布" + +msgid "Publish was cancelled" +msgstr "发布已取消" + +msgid "Slicing Plate 1" +msgstr "正在切片盘 1" + +msgid "Packing data to 3mf" +msgstr "打包数据到3mf" + +msgid "Jump to webpage" +msgstr "跳转到网页" + +#, c-format, boost-format +msgid "Save %s as" +msgstr "另存%s为" + +msgid "User Preset" +msgstr "用户预设" + +msgid "Preset Inside Project" +msgstr "项目预设" + +msgid "Name is unavailable." +msgstr "名称不可用。" + +msgid "Overwrite a system profile is not allowed" +msgstr "不允许覆盖系统预设" + +#, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "预设“%1%”已存在。" + +#, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "预设“%1%”已存在,并且和当前打印机不兼容。" + +msgid "Please note that saving action will replace this preset" +msgstr "请注意这个预设会在保存过程中被替换" + +msgid "The name cannot be the same as a preset alias name." +msgstr "名称不能和一个预设的别名相同。" + +msgid "Save preset" +msgstr "保存预设" + +msgctxt "PresetName" +msgid "Copy" +msgstr "拷贝" + +#, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "选中打印机“%1%”和预设“%2%”" + +#, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "请选择保存后对%1%预设的操作。" + +#, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "为“%1%,”把“%2%”更换为“%3%” " + +#, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "为“%1%”,添加“%2%”为一个新预设" + +#, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "直接切换到“%1%”" + +msgid "Task canceled" +msgstr "任务已取消" + +msgid "(LAN)" +msgstr "(局域网)" + +msgid "Search" +msgstr "搜索" + +msgid "My Device" +msgstr "我的设备" + +msgid "Other Device" +msgstr "其他设备" + +msgid "Online" +msgstr "在线" + +msgid "Input access code" +msgstr "输入访问码" + +msgid "Can't find my devices?" +msgstr "无法找到我的设备?" + +msgid "Log out successful." +msgstr "登出成功。" + +msgid "Busy" +msgstr "忙碌" + +msgid "Bambu Cool Plate" +msgstr "低温打印板" + +msgid "PLA Plate" +msgstr "PLA打印板" + +msgid "Bambu Engineering Plate" +msgstr "工程材料打印板" + +msgid "Bambu Smooth PEI Plate" +msgstr "光面PEI打印板" + +msgid "High temperature Plate" +msgstr "高温打印板" + +msgid "Bambu Textured PEI Plate" +msgstr "纹理PEI打印板" + +msgid "Send print job to" +msgstr "发送打印任务至" + +msgid "Flow Dynamics Calibration" +msgstr "动态流量校准" + +msgid "Click here if you can't connect to the printer" +msgstr "如果无法连接到打印机,请单击此处" + +msgid "send completed" +msgstr "发送完成" + +msgid "Error code" +msgstr "错误代码" + +msgid "No login account, only printers in LAN mode are displayed" +msgstr "未登录账号,仅显示局域网模式的打印机" + +msgid "Connecting to server" +msgstr "正在连接服务器..." + +msgid "Synchronizing device information" +msgstr "正在同步设备信息" + +msgid "Synchronizing device information time out" +msgstr "同步设备信息超时" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "设备升级中,无法发送打印任务" + +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "打印机正在执行指令,请在其结束后重新发起打印" + +msgid "The printer is busy on other print job" +msgstr "打印机正在执行其他打印任务" + +#, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "材料编号%s超出AMS槽位数量,请更新打印机固件以支持AMS槽位映射功能" + +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "材料编号超出AMS槽位数量,请更新打印机固件以支持AMS槽位映射功能" + +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"已自动建立 \"耗材丝列表=>AMS槽位\" 的映射关系。 可点击上方具体的耗材丝手动设" +"置其所对应的AMS槽位" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "请在发送打印前点击上方各个耗材丝,指定其所对应的AMS槽位" + +#, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"材料编号%s和AMS槽位%s中的耗材丝材质不匹配,请更新打印机固件以支持AMS槽位映射" +"功能" + +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"材料编号和AMS槽位中的耗材丝材质不匹配,请更新打印机固件以支持AMS槽位映射功能" + +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"已自动建立 \"耗材丝列表=>AMS槽位\" 的映射关系。 可点击上方具体的耗材丝手动设" +"置其所对应的AMS槽位" + +msgid "An SD card needs to be inserted before printing." +msgstr "请在发起打印前插入SD卡" + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "所选打印机(%s)与切片软件中选择的打印机配置文件(%s)不兼容。" + +msgid "An SD card needs to be inserted to record timelapse." +msgstr "开启延迟摄影功能需要插入SD卡" + +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "需要更新打印机固件后,才能将打印任务发送到打印机" + +msgid "Cannot send the print job for empty plate" +msgstr "无法为空盘发送打印任务" + +msgid "This printer does not support printing all plates" +msgstr "此打印机类型不支持打印所有盘" + +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "当启用旋转花瓶模式时,I3结构的机器将不会生成延时摄影。" + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "切片参数中开启了逐件打印,无法支持延时摄影。" + +msgid "Errors" +msgstr "错误" + +msgid "Please check the following:" +msgstr "请检查以下内容:" + +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"生成G代码时选择的打印机类型与当前选择的打印机不一致。建议您使用相同的打印机类" +"型进行切片。" + +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"AMS映射中存在一些未知的耗材。请检查它们是否符合预期。如果符合,按“确定”以开始" +"打印任务。" + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "预设中的喷嘴:%s %s" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "记忆中的喷嘴:%.2f %s" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" +"切片文件中的喷嘴直径与记忆的喷嘴不一致。如果您最近更换了喷嘴,请前往设备 > 打" +"印机零件进行更改设置。" + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "用%s打印高温材料(%s材料)可能会导致喷嘴损坏" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "请修复上述错误,否则打印无法继续。" + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "如果您仍然想继续打印,请单击“确定”按钮。" + +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "正在连接打印机。连接过程中无法取消。" + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "小心使用!纹理PEI板上的流量校准可能会因表面散射而失败。" + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "使用微型激光雷达进行自动流量校准" + +msgid "Modifying the device name" +msgstr "修改打印机名称" + +msgid "needed, but current version is " +msgstr "开始支持此预设更新,但是当前的软件版本为 " + +msgid "Bind with Pin Code" +msgstr "通过Pin码绑定" + +msgid "Send to Printer SD card" +msgstr "发送到打印机的SD卡" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "设备升级中,无法发送打印任务" + +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "所选打印机与选择的打印机预设不兼容。" + +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "发送到打印机需要插入SD卡" + +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "打印机需要与Snapmaker Orca在同一个局域网内。" + +msgid "The printer does not support sending to printer SD card." +msgstr "该打印机不支持发送到打印机SD卡。" + +msgid "Slice ok." +msgstr "切片完成." + +msgid "View all Daily tips" +msgstr "查看所有每日贴士" + +msgid "Failed to create socket" +msgstr "无法创建套接字" + +msgid "Failed to connect socket" +msgstr "无法连接套接字" + +msgid "Failed to publish login request" +msgstr "无法发布登录请求" + +msgid "Get ticket from device timeout" +msgstr "从设备获取票据超时" + +msgid "Get ticket from server timeout" +msgstr "从服务器获取票据超时" + +msgid "Failed to post ticket to server" +msgstr "无法将票据发布到服务器" + +msgid "Failed to parse login report reason" +msgstr "无法分析登录报告原因" + +msgid "Receive login report timeout" +msgstr "接收登录报告超时" + +msgid "Unknown Failure" +msgstr "发生错误" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "请在打印机屏幕上的“帐户”页面中找到Pin码,然后在下面输入Pin码。" + +msgid "Can't find Pin Code?" +msgstr "无法找到Pin码?" + +msgid "Pin Code" +msgstr "Pin码" + +msgid "Binding..." +msgstr "绑定..." + +msgid "Please confirm on the printer screen" +msgstr "请在打印机屏幕上确认。" + +msgid "Log in failed. Please check the Pin Code." +msgstr "登录失败,请检查Pin码。" + +msgid "Log in printer" +msgstr "登录打印机" + +msgid "Would you like to log in this printer with current account?" +msgstr "你想使用当前账号登录这台打印机吗?" + +msgid "Check the reason" +msgstr "查看原因" + +msgid "Read and accept" +msgstr "我已阅读并接受" + +msgid "Terms and Conditions" +msgstr "用户使用协议" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"感谢您购买Bambu Lab设备,使用Bambu Lab设备前,请阅读一下条款,单击同意使用您" +"的Bambu Lab设备即表示您同意遵守隐私政策以及使用条款(统称为“条款”)。如果您不" +"符合或不同意Bambu Lab隐私政策,请不要使用Bambu Lab设备和服务。" + +msgid "and" +msgstr "和" + +msgid "Privacy Policy" +msgstr "隐私协议" + +msgid "We ask for your help to improve everyone's printer" +msgstr "我们请求您的帮助来改善大家的打印机" + +msgid "Statement about User Experience Improvement Program" +msgstr "关于用户体验改善计划的声明" + +#, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"在3D打印社区,我们从彼此的成功和失败中学习调整自己的切片参数和设置。%s遵循同" +"样的原则,通过机器学习的方式从大量用户打印的成功和失败中获取经验,从而改善打" +"印性能。我们正在通过向%s提供真实世界的数据来训练他们变得更聪明。如果您愿意," +"此服务将访问您的错误日志和使用日志中的信息,其中可能包括隐私政策中描述的信" +"息。我们不会收集任何可以直接或间接识别个人的个人数据,包括但不限于姓名、地" +"址、支付信息或电话号码。启用此服务即表示您同意这些条款和有关隐私政策的声明。" + +msgid "Statement on User Experience Improvement Plan" +msgstr "关于用户体验改善计划的声明" + +msgid "Log in successful." +msgstr "登录成功。" + +msgid "Log out printer" +msgstr "登出打印机" + +msgid "Would you like to log out the printer?" +msgstr "你想登出打印机吗?" + +msgid "Please log in first." +msgstr "请先登录。" + +msgid "There was a problem connecting to the printer. Please try again." +msgstr "连接打印机时发生错误。 请重试。" + +msgid "Failed to log out." +msgstr "登出失败。" + +#. TRN "Save current Settings" +#, c-format, boost-format +msgid "Save current %s" +msgstr "保存当前 %s" + +msgid "Delete this preset" +msgstr "删除此预设" + +msgid "Search in preset" +msgstr "在预设中搜索" + +msgid "Click to reset all settings to the last saved preset." +msgstr "点击以将所有设置还原到最后一次保存的版本。" + +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"平滑模式的延时摄影需要擦料塔,否则打印件上可能会有瑕疵。您确定要关闭擦料塔" +"吗?" + +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"平滑模式的延时摄影需要擦料塔,否则打印件上可能会有瑕疵。您想打开擦料塔吗?" + +msgid "Still print by object?" +msgstr "仍然按对象打印吗?" + +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"我们增加了一种实验性的风格 \"苗条树\",它的特点是支撑体积较小,但强度较弱。\n" +"因此我们推荐以下参数:接触层数为0,顶部Z距离为0,墙层数为2。" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"自动调整这些设置?\n" +"是 - 自动调整这些设置\n" +"否 - 不用为我调整这些设置" + +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"对于 \"强壮树 \"和 \"混合树 \"风格,我们推荐以下设置:至少2层界面层,至少0.1" +"毫米的顶部z距离或在界面上使用支撑材料。" + +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"当使用支持界面的支持材料时,我们推荐以下设置:\n" +"0顶层z距离,0接触层间距,同心图案,并且禁用独立支撑层高" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" +"启用此选项将改变模型的形状。如果您的打印件需要精确的尺寸或是装配体的一部分," +"请务必仔细检查这种形状的变化是否影响了最终功能。" + +msgid "Are you sure you want to enable this option?" +msgstr "您确定要启用此选项吗?" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" +"层高太小。\n" +"将自动设置为min_layer_height的值\n" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" +"层高超出了打印机设置->挤出机->层高限制中的范围,这可能导致打印质量问题。" + +msgid "Adjust to the set range automatically? \n" +msgstr "是否自动调整到范围内?\n" + +msgid "Adjust" +msgstr "调整" + +msgid "Ignore" +msgstr "忽略" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" +"实验性选项。在更换耗材丝时,将耗材丝回抽一段距离后再切断以最小化冲刷。虽然这" +"可以显著减少冲刷,但也可能增加喷嘴堵塞或其他打印问题的风险。" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" +"实验性选项。在更换耗材丝时,将耗材丝回抽一段距离后再切断以最小化冲刷。虽然这" +"可以显著减少冲刷,但也可能增加喷嘴堵塞或其他打印问题的风险。请配合打印机最新" +"固件使用。" + +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"在录制无工具头延时摄影视频时,建议添加“延时摄影擦料塔”\n" +"右键单击打印板的空白位置,选择“添加标准模型”->“延时摄影擦料塔”。" + +msgid "Line width" +msgstr "线宽" + +msgid "Seam" +msgstr "接缝" + +msgid "Precision" +msgstr "精度" + +msgid "Wall generator" +msgstr "墙生成器" + +msgid "Walls and surfaces" +msgstr "墙壁和表面" + +msgid "Bridging" +msgstr "搭桥" + +msgid "Overhangs" +msgstr "悬垂" + +msgid "Walls" +msgstr "墙" + +msgid "Top/bottom shells" +msgstr "顶部/底部外壳" + +msgid "Initial layer speed" +msgstr "首层速度" + +msgid "Other layers speed" +msgstr "其他层速度" + +msgid "Overhang speed" +msgstr "悬垂速度" + +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"不同悬垂程度的打印速度。悬垂程度使用相对于线宽的百分表示。速度为0代表这个悬垂" +"程度范围内不降速,直接使用墙的速度" + +msgid "Bridge" +msgstr "桥接" + +msgid "Set speed for external and internal bridges" +msgstr "设置外部和内部桥接的速度" + +msgid "Travel speed" +msgstr "空驶速度" + +msgid "Acceleration" +msgstr "加速度" + +msgid "Jerk(XY)" +msgstr "抖动(XY轴)" + +msgid "Raft" +msgstr "筏层" + +msgid "Support filament" +msgstr "支撑耗材" + +msgid "Tree supports" +msgstr "树状支撑" + +msgid "Skirt" +msgstr "裙边" + +msgid "Prime tower" +msgstr "擦拭塔" + +msgid "Special mode" +msgstr "特殊模式" + +msgid "G-code output" +msgstr "G-code 输出" + +msgid "Post-processing Scripts" +msgstr "后处理脚本" + +msgid "Notes" +msgstr "注释" + +msgid "Frequent" +msgstr "常用" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"以下行%s包含保留关键字。\n" +"请将其移除,否则将影响G代码可视化和打印时间估算。" + +msgid "Reserved keywords found" +msgstr "检测到保留的关键字" + +msgid "Setting Overrides" +msgstr "参数覆盖" + +msgid "Retraction" +msgstr "回抽" + +msgid "Basic information" +msgstr "基础信息" + +msgid "Recommended nozzle temperature" +msgstr "建议喷嘴温度" + +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "该材料的建议喷嘴温度范围。0表示未设置" + +msgid "Print chamber temperature" +msgstr "打印仓温度" + +msgid "Print temperature" +msgstr "打印温度" + +msgid "Nozzle" +msgstr "喷嘴" + +msgid "Left Nozzle" +msgstr "左喷嘴" + +msgid "Right Nozzle" +msgstr "右喷嘴" + +msgid "Nozzle temperature when printing" +msgstr "打印时的喷嘴温度" + +msgid "Cool plate" +msgstr "低温打印热床" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "安装低温打印热床时的热床温度。0值表示这个耗材丝不支持低温打印热床" + +msgid "Textured Cool plate" +msgstr "纹理低温打印热床" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" +"安装纹理低温打印热床时的热床温度。0值表示这个耗材丝不支持纹理低温打印热床" + +msgid "Engineering plate" +msgstr "工程材料热床" + +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "安装工程材料热床时的热床温度。0值表示这个耗材丝不支持工程材料热床" + +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "光滑PEI板/高温板" + +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"使用光滑PEI热床或高温打印热床时的床温。值0表示耗材不支持在光滑PEI热床或高温打" +"印热床上打印" + +msgid "Textured PEI Plate" +msgstr "纹理PEI热床" + +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "安装纹理PEI热床时的热床温度。0值表示这个耗材丝不支持纹理PEI热床" + +msgid "Volumetric speed limitation" +msgstr "体积速度限制" + +msgid "Cooling" +msgstr "冷却" + +msgid "Cooling for specific layer" +msgstr "特定层冷却" + +msgid "Part cooling fan" +msgstr "部件冷却风扇" + +msgid "Min fan speed threshold" +msgstr "最小风扇速度阈值" + +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"当预估的层时间不大于设定的数值时,部件冷却风扇将开始运行在最小速度。层时间小" +"于阈值时,实际风扇转速将根据层打印时间在最大和最小风扇速度之间插值获得" + +msgid "Max fan speed threshold" +msgstr "最大风扇速度阈值" + +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "当预计的层打印时间比设置值要短时,部件冷却风扇转速将达到最大值" + +msgid "Auxiliary part cooling fan" +msgstr "辅助部件冷却风扇" + +msgid "Exhaust fan" +msgstr "排气风扇" + +msgid "During print" +msgstr "打印中" + +msgid "Complete print" +msgstr "完成打印" + +msgid "Filament start G-code" +msgstr "耗材丝起始G-code" + +msgid "Filament end G-code" +msgstr "耗材丝结束G-code" + +msgid "Multimaterial" +msgstr "材料" + +msgid "Wipe tower parameters" +msgstr "色塔参数" + +msgid "Toolchange parameters with single extruder MM printers" +msgstr "单挤出机多材料打印机的换色参数" + +msgid "Ramming settings" +msgstr "尖端成型设置" + +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "多挤出机多材料打印机的换色参数" + +msgid "Printable space" +msgstr "可打印区域" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "" + +msgid "G-code flavor is switched" +msgstr "G-code风格已切换" + +msgid "Cooling Fan" +msgstr "冷却风扇" + +msgid "Fan speed-up time" +msgstr "风扇响应时间" + +msgid "Extruder Clearance" +msgstr "挤出机避让空间" + +msgid "Adaptive bed mesh" +msgstr "自适应网床" + +msgid "Accessory" +msgstr "配件" + +msgid "Machine gcode" +msgstr "打印机G-code" + +msgid "Machine start G-code" +msgstr "打印机起始G-code" + +msgid "Machine end G-code" +msgstr "打印机结束G-code" + +msgid "Printing by object G-code" +msgstr "逐件打印G-code" + +msgid "Before layer change G-code" +msgstr "换层前G-code" + +msgid "Layer change G-code" +msgstr "换层G-code" + +msgid "Time lapse G-code" +msgstr "延时摄影G-code" + +msgid "Change filament G-code" +msgstr "耗材丝更换G-code" + +msgid "Change extrusion role G-code" +msgstr "挤出类型更换G-code" + +msgid "Pause G-code" +msgstr "暂停 G-code" + +msgid "Template Custom G-code" +msgstr "模板自定义G-code" + +msgid "Motion ability" +msgstr "移动能力" + +msgid "Normal" +msgstr "普通" + +msgid "Speed limitation" +msgstr "速度限制" + +msgid "Acceleration limitation" +msgstr "加速度限制" + +msgid "Jerk limitation" +msgstr "抖动限制" + +msgid "Single extruder multimaterial setup" +msgstr "设置单挤出机多材料" + +msgid "Wipe tower" +msgstr "色塔" + +msgid "Single extruder multimaterial parameters" +msgstr "单挤出机多材料参数" + +msgid "Layer height limits" +msgstr "层高限制" + +msgid "Lift Z Enforcement" +msgstr "强化抬Z策略" + +msgid "Retraction when switching material" +msgstr "切换材料时的回抽量" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"使用固件回抽模式时,擦拭选项不可用。\n" +"我应该禁用它以启用固件回抽吗?" + +msgid "Firmware Retraction" +msgstr "固件回抽" + +msgid "Detached" +msgstr "分离的" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" +"该打印机下已关联 %d 个材料预设与 %d 个工艺预设。如删除该打印机,材料与工艺预" +"设将一并删除。" + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "不能删除被其他预设继承的预设!" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "以下预设继承此预设。" + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% 预设" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "下列预设将被一起删除。" + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" +"确定要删除所选预设吗?\n" +"如果预设对应当前在您的打印机上使用的材料,请重新设置该槽位的材料信息。" + +#, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "确定要%1%所选预设吗?" + +msgid "All" +msgstr "所有" + +msgid "Set" +msgstr "设置" + +msgid "Click to reset current value and attach to the global value." +msgstr "点击该图标,恢复到全局的配置数值,并与全局配置同步变化。" + +msgid "Click to drop current modify and reset to saved value." +msgstr "点击该图标,丢弃当前的修改,恢复到上次保存的数值。" + +msgid "Process Settings" +msgstr "工艺设置" + +msgid "Undef" +msgstr "未定义" + +msgid "Unsaved Changes" +msgstr "未保存的更改" + +msgid "Transfer or discard changes" +msgstr "放弃或保留更改" + +msgid "Old Value" +msgstr "旧值" + +msgid "New Value" +msgstr "新值" + +msgid "Transfer" +msgstr "迁移" + +msgid "Don't save" +msgstr "不保存" + +msgid "Discard" +msgstr "放弃" + +msgid "Click the right mouse button to display the full text." +msgstr "单击鼠标右键显示全文。" + +msgid "All changes will not be saved" +msgstr "所有的修改都不会被保存" + +msgid "All changes will be discarded." +msgstr "所有的修改都将被丢弃。" + +msgid "Save the selected options." +msgstr "保存所选项。" + +msgid "Keep the selected options." +msgstr "保持所选项。" + +msgid "Transfer the selected options to the newly selected preset." +msgstr "将所选项迁移到新的预设中。" + +#, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"保存所选选项到预设 \n" +"\"%1%\"." + +#, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"将选择的选项转移到新选择的预设 \n" +"\"%1%\"." + +#, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "预设 \"%1%\" 包含以下未保存的修改:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "预设 \"%1%\" 与新的打印机预设不兼容,并且包含以下未保存的修改:" + +#, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "预设“%1%”和新的工艺预设不兼容,并且它包含以下未保存的修改:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "您已更改了预设 “%1%” 的一些设置。" + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" +"\n" +"您可以保存或丢弃已经修改的预设值。" + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" + +msgid "You have previously modified your settings." +msgstr "您已经修改了预设参数。" + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" +"\n" +"您可以放弃已修改的预设值,或者将修改后的值转移到新项目" + +msgid "Extruders count" +msgstr "挤出机数量" + +msgid "General" +msgstr "常规" + +msgid "Capabilities" +msgstr "能力" + +msgid "Show all presets (including incompatible)" +msgstr "显示所有预设(包括不兼容的)" + +msgid "Select presets to compare" +msgstr "选择要比较的预设" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" +"将选定的选项从左边的预设转移到右边。\n" +"注意:关闭此对话框后,新修改的预置将在设置标签中被选中。" + +msgid "Transfer values from left to right" +msgstr "从左到右的转移值" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" + +msgid "Add File" +msgstr "添加文件" + +msgid "Set as cover" +msgstr "设置为封面" + +msgid "Cover" +msgstr "封面" + +#, boost-format +msgid "The name \"%1%\" already exists." +msgstr "名字\"%1%\"已经存在。" + +msgid "Basic Info" +msgstr "基本信息" + +msgid "Pictures" +msgstr "图片" + +msgid "Bill of Materials" +msgstr "物料清单" + +msgid "Assembly Guide" +msgstr "组装指南" + +msgid "Author" +msgstr "作者" + +msgid "Model Name" +msgstr "模型名字" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s 更新" + +msgid "A new version is available" +msgstr "发现新版本" + +msgid "Configuration update" +msgstr "配置更新" + +msgid "A new configuration package available, Do you want to install it?" +msgstr "新的配置包可用,您需要安装吗?" + +msgid "Description:" +msgstr "描述:" + +msgid "Configuration incompatible" +msgstr "配置不兼容" + +msgid "the configuration package is incompatible with current application." +msgstr "配置包和当前的应用程序不兼容。" + +#, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"配置包和当前的应用程序不兼容。\n" +"%s会更新配置包,否则无法正常启动" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "退出 %s" + +msgid "the Configuration package is incompatible with current APP." +msgstr "配置包与当前APP不兼容。" + +msgid "Configuration updates" +msgstr "配置更新" + +msgid "No updates available." +msgstr "没有可用的更新。" + +msgid "The configuration is up to date." +msgstr "当前配置已经是最新版本。" + +msgid "Obj file Import color" +msgstr "Obj文件导入颜色" + +msgid "Specify number of colors:" +msgstr "指定颜色数量:" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "颜色数量范围应该是[%d, %d]。" + +msgid "Recommended " +msgstr "推荐" + +msgid "Current filament colors:" +msgstr "当前耗材丝颜色:" + +msgid "Quick set:" +msgstr "快捷设置:" + +msgid "Color match" +msgstr "颜色匹配" + +msgid "Approximate color matching." +msgstr "近似的颜色匹配。" + +msgid "Append" +msgstr "追加" + +msgid "Add consumable extruder after existing extruders." +msgstr "近似的颜色匹配。" + +msgid "Reset mapped extruders." +msgstr "重置匹配的耗材丝。" + +msgid "Cluster colors" +msgstr "重置匹配的耗材丝" + +msgid "Map Filament" +msgstr "匹配耗材丝" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" +"注意:颜色已经选好了,您可以选中确认 \n" +" 继续或手动修改它。" + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" +"警告:新增追加耗材丝数量 \n" +" 和已有耗材丝数量超过了16." + +msgid "Ramming customization" +msgstr "自定义尖端成型" + +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"尖端成型是指在单挤出机多材料打印机中换色之前的快速抽插。\n" +"其目的是使卸载耗材的末端正确成形,这样就不会妨碍新耗材的插入,并使之可以重新" +"插入。\n" +"这个阶段很重要,不同的材料可能需要不同的挤出速度才能获得良好的形状。因此,尖" +"端成型过程中的挤压率是需要可调节的。\n" +"这是一个专家级别的设置,不正确的调节可能会导致堵塞、挤出机齿轮刨料等。" + +msgid "Total ramming time" +msgstr "尖端成型总时间" + +msgid "s" +msgstr "秒" + +msgid "Total rammed volume" +msgstr "尖端成型总体积" + +msgid "Ramming line width" +msgstr "尖端成型线宽" + +msgid "Ramming line spacing" +msgstr "尖端成型线间距" + +msgid "Auto-Calc" +msgstr "自动计算" + +msgid "Re-calculate" +msgstr "重新计算" + +msgid "Flushing volumes for filament change" +msgstr "耗材丝更换时的冲刷体积" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" +"Orca 将会在每一次更换耗材颜色时重新计算你的冲刷体积, 你可以在 Snapmaker Orca > " +"偏好设置 中关闭自动计算" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "在两个耗材丝间切换所需的冲刷量(mm³)" + +#, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "建议:冲刷量设置在[%d, %d]范围内" + +#, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "乘数的取值范围是[%.2f, %.2f]" + +msgid "Multiplier" +msgstr "乘数" + +msgid "unloaded" +msgstr "卸载" + +msgid "loaded" +msgstr "装载" + +msgid "Filament #" +msgstr "耗材丝#" + +msgid "From" +msgstr "从" + +msgid "To" +msgstr "到" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "未检测到Bambu网络插件。" + +msgid "Click here to download it." +msgstr "点此下载" + +msgid "Login" +msgstr "登录" + +msgid "The configuration package is changed in previous Config Guide" +msgstr "参数配置包在之前的配置向导中发生了变更" + +msgid "Configuration package changed" +msgstr "参数配置包发生变更" + +msgid "Toolbar" +msgstr "工具栏" + +msgid "Objects list" +msgstr "对象列表" + +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "从STL/STEP/3MF/OBJ/AMF文件中导入几何数据" + +msgid "⌘+Shift+G" +msgstr "" + +msgid "Ctrl+Shift+G" +msgstr "" + +msgid "Paste from clipboard" +msgstr "从剪切板粘贴" + +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "显示/隐藏 3Dconnexion设备的设置对话框" + +msgid "Switch table page" +msgstr "切换标签页" + +msgid "Show keyboard shortcuts list" +msgstr "显示键盘快捷键列表" + +msgid "Global shortcuts" +msgstr "全局快捷键" + +msgid "Rotate View" +msgstr "旋转视角" + +msgid "Pan View" +msgstr "移动视角" + +msgid "Mouse wheel" +msgstr "鼠标滚轮" + +msgid "Zoom View" +msgstr "缩放视角" + +msgid "Shift+A" +msgstr "" + +msgid "Shift+R" +msgstr "" + +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"自动调整选定零件/所有零件的方向,\n" +"有选定零件时调整选定零件的朝向,没有选择零件时调整当前盘所有零件的朝向" + +msgid "Shift+Tab" +msgstr "" + +msgid "Collapse/Expand the sidebar" +msgstr "收起/展开 侧边栏" + +msgid "⌘+Any arrow" +msgstr "⌘+方向键" + +msgid "Movement in camera space" +msgstr "沿相机视角移动对象" + +msgid "⌥+Left mouse button" +msgstr "⌥+鼠标左键" + +msgid "Select a part" +msgstr "选择单个零件" + +msgid "⌘+Left mouse button" +msgstr "⌘+鼠标左键" + +msgid "Select multiple objects" +msgstr "选择多个对象" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+方向键" + +msgid "Alt+Left mouse button" +msgstr "Alt+鼠标左键" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+鼠标左键" + +msgid "Shift+Left mouse button" +msgstr "Shift+鼠标左键" + +msgid "Select objects by rectangle" +msgstr "框选多个零件" + +msgid "Arrow Up" +msgstr "上箭头" + +msgid "Move selection 10 mm in positive Y direction" +msgstr "Y方向移动 10mm" + +msgid "Arrow Down" +msgstr "下箭头" + +msgid "Move selection 10 mm in negative Y direction" +msgstr "Y方向移动 10mm" + +msgid "Arrow Left" +msgstr "左箭头" + +msgid "Move selection 10 mm in negative X direction" +msgstr "X方向移动 10mm" + +msgid "Arrow Right" +msgstr "右箭头" + +msgid "Move selection 10 mm in positive X direction" +msgstr "X方向移动 10mm" + +msgid "Shift+Any arrow" +msgstr "Shift+方向键" + +msgid "Movement step set to 1 mm" +msgstr "沿X、Y轴以1mm为步进移动对象" + +msgid "keyboard 1-9: set filament for object/part" +msgstr "按键1-9:设置对象/零件的耗材丝" + +msgid "Camera view - Default" +msgstr "摄像机视角 - 默认" + +msgid "Camera view - Top" +msgstr "摄像机视角 - 顶部" + +msgid "Camera view - Bottom" +msgstr "摄像机视角 - 底部" + +msgid "Camera view - Front" +msgstr "摄像机视角 - 正面" + +msgid "Camera view - Behind" +msgstr "摄像机视角 - 后面" + +msgid "Camera Angle - Left side" +msgstr "摄像机视角 - 左面" + +msgid "Camera Angle - Right side" +msgstr "摄像机视角 - 右面" + +msgid "Select all objects" +msgstr "选择所有对象" + +msgid "Gizmo move" +msgstr "线框移动" + +msgid "Gizmo scale" +msgstr "线框缩放" + +msgid "Gizmo rotate" +msgstr "旋转物件" + +msgid "Gizmo cut" +msgstr "剪切物件" + +msgid "Gizmo Place face on bed" +msgstr "选择底面" + +msgid "Gizmo SLA support points" +msgstr "SLA支撑点" + +msgid "Gizmo FDM paint-on seam" +msgstr "FDM涂装接缝" + +msgid "Gizmo Text emboss / engrave" +msgstr "Gizmo文本浮雕/雕刻" + +msgid "Zoom in" +msgstr "放大" + +msgid "Zoom out" +msgstr "缩小" + +msgid "Switch between Prepare/Preview" +msgstr "准备/预览之间的切换" + +msgid "Plater" +msgstr "准备" + +msgid "Move: press to snap by 1mm" +msgstr "移动:以1mm为步进移动" + +msgid "⌘+Mouse wheel" +msgstr "⌘+鼠标滚轮" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "支撑/颜色绘制:调节画笔半径" + +msgid "⌥+Mouse wheel" +msgstr "⌥+鼠标滚轮" + +msgid "Support/Color Painting: adjust section position" +msgstr "支撑/色彩绘制:调节剖面位置" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+鼠标滚轮" + +msgid "Alt+Mouse wheel" +msgstr "Alt+鼠标滚轮" + +msgid "Gizmo" +msgstr "" + +msgid "Set extruder number for the objects and parts" +msgstr "设置对象、零件使用的挤出机编号" + +msgid "Delete objects, parts, modifiers " +msgstr "删除对象、零件、修改器" + +msgid "Select the object/part and press space to change the name" +msgstr "选中对象、零件,按空格可修改名称" + +msgid "Mouse click" +msgstr "鼠标点击" + +msgid "Select the object/part and mouse click to change the name" +msgstr "选中对象、零件,双击零件名可修改名称" + +msgid "Objects List" +msgstr "对象列表" + +msgid "Vertical slider - Move active thumb Up" +msgstr "垂直滑动条 - 向上移动一层" + +msgid "Vertical slider - Move active thumb Down" +msgstr "垂直滑动条 - 向下移动一层" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "水平滑动条 - 向左移动一步" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "水平滑动条 - 向右移动一步" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "开启/关闭垂直滑动条的单层模式" + +msgid "On/Off g-code window" +msgstr "开启/关闭g-code窗口" + +msgid "Move slider 5x faster" +msgstr "5倍速移动滑动条" + +msgid "Shift+Mouse wheel" +msgstr "Shift+鼠标滚轮" + +msgid "Horizontal slider - Move to start position" +msgstr "" + +msgid "Horizontal slider - Move to last position" +msgstr "" + +msgid "Release Note" +msgstr "更新说明" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "版本 %s 更新信息" + +msgid "Network plug-in update" +msgstr "网络插件升级" + +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "点击\"确定\",将在Snapmaker Orca下次启动之后自动升级网络插件" + +#, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "新的网络插件(%s) 可用,您是否需要安装它?" + +msgid "New version of Snapmaker Orca" +msgstr "新版本的Snapmaker Orca" + +msgid "Skip this Version" +msgstr "跳过本版本" + +msgid "Done" +msgstr "完成" + +msgid "resume" +msgstr "继续" + +msgid "Resume Printing" +msgstr "继续打印" + +msgid "Resume Printing(defects acceptable)" +msgstr "继续打印(缺陷可接受)" + +msgid "Resume Printing(problem solved)" +msgstr "继续打印(问题已解决)" + +msgid "Stop Printing" +msgstr "停止打印" + +msgid "Check Assistant" +msgstr "前往机器助手" + +msgid "Filament Extruded, Continue" +msgstr "耗材已挤出,继续" + +msgid "Not Extruded Yet, Retry" +msgstr "耗材未挤出,重试" + +msgid "Finished, Continue" +msgstr "已完成,继续" + +msgid "Load Filament" +msgstr "进料" + +msgid "Filament Loaded, Resume" +msgstr "耗材已加载,继续" + +msgid "View Liveview" +msgstr "查看LiveView" + +msgid "Confirm and Update Nozzle" +msgstr "确认并更新喷嘴" + +msgid "LAN Connection Failed (Sending print file)" +msgstr "LAN连接失败 (发送打印文件)" + +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "第1步,请确认Snapmaker Orca和您的打印机在同一个LAN上。" + +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "步骤2, 如果下面的IP和访问码与打印机上的实际值不同,请输入正确的值。" + +msgid "IP" +msgstr "" + +msgid "Access Code" +msgstr "访问码" + +msgid "Where to find your printer's IP and Access Code?" +msgstr "在哪里可以找到打印机的IP和访问码?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "步骤3,请ping打印机的IP地址,以此检查丢包和延迟。" + +msgid "Test" +msgstr "测试" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "IP地址和访问码验证成功!您可以关闭此窗口。" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "连接失败,请再次检查IP地址和访问码。" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" +"连接失败!如果您的IP地址和访问码是正确的,\n" +"请查看第三步的提示,以便定位网络问题所在。" + +msgid "Model:" +msgstr "型号:" + +msgid "Serial:" +msgstr "序列号:" + +msgid "Version:" +msgstr "版本:" + +msgid "Update firmware" +msgstr "更新固件" + +msgid "Beta version" +msgstr "Beta版本" + +msgid "Latest version" +msgstr "最新版本" + +msgid "Updating" +msgstr "更新中" + +msgid "Updating failed" +msgstr "更新失败" + +msgid "Updating successful" +msgstr "更新成功" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "确定要更新吗?更新需要大约10分钟,在此期间请勿关闭电源。" + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"检测到重要更新,需要升级后才可进行打印。你想现在就开始升级吗?你也可以稍后点" +"击‘升级固件’完成升级。" + +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"当前固件版本异常,需要进行修复升级,否则无法继续打印。你想现在就开始升级吗?" +"你也可以稍后在打印机上升级,或者下一次启动studio再升级。" + +msgid "Extension Board" +msgstr "扩展板" + +msgid "Saving objects into the 3mf failed." +msgstr "保存对象到3mf失败。" + +msgid "Only Windows 10 is supported." +msgstr "仅支持Windows 10。" + +msgid "Failed to initialize the WinRT library." +msgstr "初始化WinRT库失败。" + +msgid "Exporting objects" +msgstr "正在导出对象" + +msgid "Failed loading objects." +msgstr "加载对象失败。" + +msgid "Repairing object by Windows service" +msgstr "通过Windows服务修复对象" + +msgid "Repair failed." +msgstr "修复失败。" + +msgid "Loading repaired objects" +msgstr "正在加载修复的对象。" + +msgid "Exporting 3mf file failed" +msgstr "导出3mf失败" + +msgid "Import 3mf file failed" +msgstr "导入3mf失败" + +msgid "Repaired 3mf file does not contain any object" +msgstr "已修复的3mf文件不包含任何对象" + +msgid "Repaired 3mf file contains more than one object" +msgstr "已修复的3mf文件包含了不止一个对象" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "修复的3mf文件不包含任何零件" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "已修复的3mf文件包含多个零件" + +msgid "Repair finished" +msgstr "修复已完成" + +msgid "Repair canceled" +msgstr "修复被取消" + +#, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "从%1%拷贝文件到%2%失败:%3%" + +msgid "Need to check the unsaved changes before configuration updates." +msgstr "需要在配置更新之前检查没有保存的参数修改。" + +msgid "Configuration package: " +msgstr "" + +msgid " updated to " +msgstr "" + +msgid "Open G-code file:" +msgstr "打开G-code文件:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "模型出现空层无法打印。请切掉底部或打开支撑。" + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "模型在%1%和%2%之间出现空层,无法打印。" + +#, boost-format +msgid "Object: %1%" +msgstr "模型:%1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "部分模型在这些高度可能过薄,或者模型存在面片错误" + +msgid "No object can be printed. Maybe too small" +msgstr "没有可打印的对象。可能是因为尺寸过小。" + +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"由于错误的自定义G-code,G-code生成失败。\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "请检查自定义G-code,或者使用默认的。" + +#, boost-format +msgid "Generating G-code: layer %1%" +msgstr "正在生成G-code:层%1%" + +msgid "Inner wall" +msgstr "内墙" + +msgid "Outer wall" +msgstr "外墙" + +msgid "Overhang wall" +msgstr "悬空墙" + +msgid "Sparse infill" +msgstr "稀疏填充" + +msgid "Internal solid infill" +msgstr "内部实心填充" + +msgid "Top surface" +msgstr "顶面" + +msgid "Bottom surface" +msgstr "底面" + +msgid "Internal Bridge" +msgstr "内部搭桥" + +msgid "Gap infill" +msgstr "填缝" + +msgid "Support interface" +msgstr "支撑面" + +msgid "Support transition" +msgstr "支撑转换层" + +msgid "Multiple" +msgstr "多个" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "计算 %1%的线宽失败。无法获得 \"%2%\" 的值" + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "" + +msgid "undefined error" +msgstr "未定义错误" + +msgid "too many files" +msgstr "文件过多" + +msgid "file too large" +msgstr "文件太大" + +msgid "unsupported method" +msgstr "不支持的压缩方法" + +msgid "unsupported encryption" +msgstr "不支持的加密方式" + +msgid "unsupported feature" +msgstr "不支持的功能" + +msgid "failed finding central directory" +msgstr "查找中心目录失败" + +msgid "not a ZIP archive" +msgstr "不是一个zip压缩包" + +msgid "invalid header or corrupted" +msgstr "无效文件头或文件已损坏" + +msgid "unsupported multidisk" +msgstr "不支持多磁盘存档" + +msgid "decompression failed" +msgstr "解压缩失败或存档已损坏" + +msgid "compression failed" +msgstr "压缩失败" + +msgid "unexpected decompressed size" +msgstr "意外的解压缩大小" + +msgid "CRC check failed" +msgstr "CRC检查失败" + +msgid "unsupported central directory size" +msgstr "不支持的中央目录大小" + +msgid "allocation failed" +msgstr "分配内存失败" + +msgid "file open failed" +msgstr "文件打开失败" + +msgid "file create failed" +msgstr "文件创建失败" + +msgid "file write failed" +msgstr "文件写入失败" + +msgid "file read failed" +msgstr "文件读取失败" + +msgid "file close failed" +msgstr "文件关闭失败" + +msgid "file seek failed" +msgstr "文件随机访问失败" + +msgid "file stat failed" +msgstr "文件统计信息失败" + +msgid "invalid parameter" +msgstr "无效参数" + +msgid "invalid filename" +msgstr "无效的文件名" + +msgid "buffer too small" +msgstr "缓冲区太小" + +msgid "internal error" +msgstr "内部错误" + +msgid "file not found" +msgstr "文件未找到" + +msgid "archive too large" +msgstr "存档文件太大" + +msgid "validation failed" +msgstr "验证失败" + +msgid "write callback failed" +msgstr "写入回调失败" + +#, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "%1%离屏蔽区域太近,可能会发生碰撞。" + +#, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1%离其它对象太近,可能会发生碰撞。" + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1%太高,会发生碰撞。" + +msgid " is too close to others, there may be collisions when printing." +msgstr "离其它对象太近,打印时可能会发生碰撞。" + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "离不可打印区域太近,打印时可能会发生碰撞。" + +msgid "Prime Tower" +msgstr "擦拭塔" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr "离其它对象太近,可能会发生碰撞。\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "离不可打印区域太近,会发生碰撞。\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"不能将温度差异过大的材料一起打印。否则挤出机和喷嘴在打印中可能被堵塞或损坏" + +msgid "No extrusions under current settings." +msgstr "根据当前设置,不会生成任何打印。" + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "平滑模式的延时摄影不支持在逐件打印模式下使用。" + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "请选择逐件打印以支持在旋转花瓶模式下打印多个对象。" + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "不支持在包含多个材料的打印中使用旋转花瓶模式。" + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "对象 %1% 超过了最大构建体积高度" + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "对象 %1% 自身虽然构建体积合适,但最后一层却超过了最大构建体积高度" + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "或许您想要缩小模型的尺寸,或者更改当前打印设置,然后重试" + +msgid "Variable layer height is not supported with Organic supports." +msgstr "Organic支撑不支持可变层高。" + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "启用擦拭塔时,不允许使用不同的喷嘴直径和不同的材料直径。" + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "" +"当前仅支持使用相对挤出器寻址(use_relative_e_distances=1)的情况下使用擦拭" +"塔。" + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "当启用擦拭塔时,目前不支持防滴功能。" + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" +"擦拭塔目前仅支持Marlin、RepRap/Sprinter、RepRapFirmware和Repetier G-code风" +"格。" + +msgid "The prime tower is not supported in \"By object\" print." +msgstr "擦拭塔不支持在逐件打印模式下使用。" + +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "不支持在可变层高开启时使用擦拭塔。它要求所有对象拥有相同的层高。" + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "擦拭塔要求”支撑间隙“为层高的整数倍。" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "擦拭塔要求各个对象拥有同样的层高。" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "擦拭塔要求各个对象使用同样的筏层数量。" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "擦拭塔要求各个对象拥有同样的层高。" + +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "各个对象的层高存在差异,无法启用擦料塔" + +msgid "Too small line width" +msgstr "线宽太小" + +msgid "Too large line width" +msgstr "线宽太大" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "擦拭塔要求支撑和对象采用同样的层高。" + +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "Organic支撑树尖端直径不得小于支撑材料挤出宽度。" + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "Organic支撑分支的直径不得小于支撑材料挤出宽度的2倍。" + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "Organic支撑分支的直径不得小于支撑树尖端的直径。" + +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "使用了支撑添加器但没有打开支撑。请打开支撑。" + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "层高不能超过喷嘴直径" + +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"相对挤出机寻址要求在每层重置挤出机位置,以防止浮点精度损失。将 \"G92E0\" 添加" +"到图层代码中。" + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "\"G92E0\" 出现在 before_layer_gcode 中,与绝对挤出机寻址不兼容。" + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "\"G92E0\" 出现在 layer_gcode 中,这与绝对挤出机寻址不兼容。" + +#, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "盘 %d: %s 不支持耗材丝 %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "将抖动(jerk)速度设置得太低可能会导致打印曲面时出现瑕疵" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" +"抖动速度设置超过了打印机的最大抖动速度(machine_max_jerk_x/" +"machine_max_jerk_y)。\n" +"Orca将自动限制抖动速度,以确保不超过打印机的速度限制。\n" +"您可以调整打印机配置中的最大抖动速度设置,以获得更高的速度。" + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" +"加速度设置超过了打印机的最大加速度(machine_max_acceleration_extruding)。\n" +"Orca将自动限制加速度,以确保不超过打印机的速度限制。\n" +"您可以调整打印机配置中的machine_max_acceleration_extruding值,以获得更高的速" +"度。" + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" +"空驶加速度设置超过了打印机的最大空驶加速度" +"(machine_max_acceleration_travel)。\n" +"Orca将自动限制加速度,以确保不超过打印机的速度限制。\n" +"您可以调整打印机配置中的machine_max_acceleration_travel值,以获得更高的速度。" + +msgid "Generating skirt & brim" +msgstr "正在生成skirt和brim" + +msgid "Exporting G-code" +msgstr "正在导出G-code" + +msgid "Generating G-code" +msgstr "正在生成G-code" + +msgid "Failed processing of the filename_format template." +msgstr "处理文件名格式模板失败。" + +msgid "Printable area" +msgstr "可打印区域" + +msgid "Bed exclude area" +msgstr "不可打印区域" + +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"XY平面上的不可打印区域。例如,X1系列打印机在换料过程中,会使用左前角区域来切" +"断耗材丝。这个多边形区域由以下格式的点表示:“XxY,XxY,…”" + +msgid "Bed custom texture" +msgstr "自定义热床纹理" + +msgid "Bed custom model" +msgstr "自定义热床模型" + +msgid "Elephant foot compensation" +msgstr "象脚补偿" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "将首层收缩用于补偿象脚效应" + +msgid "Elephant foot compensation layers" +msgstr "象脚补偿层数" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" + +msgid "layers" +msgstr "层" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "每一层的切片高度。越小的层高意味着更高的精度和更长的打印时间。" + +msgid "Printable height" +msgstr "可打印高度" + +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "由打印机结构约束的最大可打印高度" + +msgid "Preferred orientation" +msgstr "零件朝向偏好" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "导入模型时自动旋转到指定的朝向" + +msgid "Printer preset names" +msgstr "打印机预设名" + +msgid "Use 3rd-party print host" +msgstr "启用第三方网络连接" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "允许通过第三方网络连接控制BambuLab的打印机" + +msgid "Hostname, IP or URL" +msgstr "主机名,IP或者URL" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca可以将G-code文件上传到打印机主机。此字段应包含打印机主机实例的主机" +"名、IP地址或URL。启用基本身份验证的Print host可以通过将用户名和密码放入以下格" +"式的URL中来访问:https://username:password@your-octopi-address/" + +msgid "Device UI" +msgstr "设备用户界面" + +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "如果打印机的设备用户界面的URL不同,请在此指定。" + +msgid "API Key / Password" +msgstr "API秘钥/密码" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca可以将G-code文件上传到打印机主机。此字段应包含用于身份验证的API密" +"钥或密码。" + +msgid "Name of the printer" +msgstr "打印机名称" + +msgid "HTTPS CA File" +msgstr "HTTPS CA文件" + +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"可以为HTTPS OctoPrint连接指定自定义CA证书文件,格式为crt/pem。如果留空,则使" +"用默认的操作系统CA证书存储库。" + +msgid "User" +msgstr "用户名" + +msgid "Password" +msgstr "密码" + +msgid "Ignore HTTPS certificate revocation checks" +msgstr "忽略HTTPS证书吊销检查" + +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"在缺少或离线分发点的情况下忽略HTTPS证书吊销检查。如果连接失败,可以启用此选项" +"来处理自签名证书。" + +msgid "Names of presets related to the physical printer" +msgstr "与物理打印机相关的预设名称" + +msgid "Authorization Type" +msgstr "授权类型" + +msgid "API key" +msgstr "API秘钥" + +msgid "HTTP digest" +msgstr "HTTP摘要" + +msgid "Avoid crossing wall" +msgstr "避免跨越外墙" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "空驶时绕过外墙以避免在模型外观面产生斑点" + +msgid "Avoid crossing wall - Max detour length" +msgstr "避免跨越外墙-最大绕行长度" + +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"避免跨越外墙时的最大绕行距离。当绕行距离比这个数值大时,此次空驶不绕行。绕行" +"距离可表达为绝对值,或者相对直线空驶长度的百分比(例如50%)。0表示禁用" + +msgid "mm or %" +msgstr "mm 或 %" + +msgid "Other layers" +msgstr "其它层" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "非首层热床温度。0值表示这个耗材丝不支持低温打印热床" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "非首层热床温度。0值表示这个耗材丝不支持纹理低温打印热床" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "非首层热床温度。0值表示这个耗材丝不支持工程材料热床" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "非首层热床温度。0值表示这个耗材丝不支持高温打印热床" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "非首层热床温度。0值表示这个耗材丝不支持纹理PEI热床" + +msgid "Initial layer" +msgstr "首层" + +msgid "Initial layer bed temperature" +msgstr "首层床温" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "首层热床温度。0值表示这个耗材丝不支持低温打印热床" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "首层热床温度。0值表示这个耗材丝不支持纹理低温打印热床" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "首层热床温度。0值表示这个耗材丝不支持工程材料热床" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "首层热床温度。0值表示这个耗材丝不支持高温打印热床" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "首层热床温度。0值表示这个耗材丝不支持纹理PEI热床" + +msgid "Bed types supported by the printer" +msgstr "打印机所支持的热床类型" + +msgid "Smooth Cool Plate" +msgstr "光滑的低温打印床" + +msgid "Engineering Plate" +msgstr "工程材料热床" + +msgid "Smooth High Temp Plate" +msgstr "光滑高温打印热床" + +msgid "Textured Cool Plate" +msgstr "纹理的低温打印床" + +msgid "First layer print sequence" +msgstr "第一层打印顺序" + +msgid "Other layers print sequence" +msgstr "其他层打印顺序" + +msgid "The number of other layers print sequence" +msgstr "其他层的打印顺序数量" + +msgid "Other layers filament sequence" +msgstr "其他层的耗材打印顺序" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "在每次换层抬升z高度之前插入这段G-code" + +msgid "Bottom shell layers" +msgstr "底部壳体层数" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"底部壳体实心层层数,包括底面。当由该层数计算的厚度小于底部壳体厚度,切片时会" +"增加底部壳体的层数" + +msgid "Bottom shell thickness" +msgstr "底部壳体厚度" + +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"如果由底部壳体层数算出的厚度小于这个数值,那么切片时将自动增加底部壳体层数。" +"这能够避免当层高很小时,底部壳体过薄。0表示关闭这个设置,同时底部壳体的厚度完" +"全由底部壳体层数决定" + +msgid "Apply gap fill" +msgstr "启用间隙填充" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" + +msgid "Everywhere" +msgstr "所有地方" + +msgid "Top and bottom surfaces" +msgstr "仅顶层和底层" + +msgid "Nowhere" +msgstr "不填充" + +msgid "Force cooling for overhang and bridge" +msgstr "悬垂/桥接强制冷却" + +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "勾选这个选项将自动优化桥接和悬垂的风扇转速以获得更好的冷却" + +msgid "Fan speed for overhang" +msgstr "悬垂风扇速度" + +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"当打印桥接和超过设定阈值的悬垂时,强制部件冷却风扇为设定的速度值。强制冷却能" +"够使悬垂和桥接获得更好的打印质量" + +msgid "Cooling overhang threshold" +msgstr "冷却悬空阈值" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" +"当打印件的悬空程度超过此值时,强制冷却风扇达到特定速度。用百分比表示,表明没" +"有下层支撑的线的宽度是多少。0%%意味着无论悬垂程度如何,都要对所有外壁强制冷" +"却。" + +msgid "Bridge infill direction" +msgstr "拉桥填充方向" + +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"搭桥角度覆盖。如果设置为零,该角度将自动计算。否则外部的桥接将用提供的值。" +"180°表示0度。" + +msgid "Bridge density" +msgstr "搭桥密度" + +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "外部桥接的密度。100%意味着实心桥。默认值为100%。" + +msgid "Bridge flow ratio" +msgstr "桥接流量" + +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "稍微减小这个数值(比如0.9)可以减小桥接的材料量,来改善下垂。" + +msgid "Internal bridge flow ratio" +msgstr "内部搭桥流量比例" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" + +msgid "Top surface flow ratio" +msgstr "顶部表面流量比例" + +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "稍微减小这个数值(比如0.97)可以来改善顶面的光滑程度。" + +msgid "Bottom surface flow ratio" +msgstr "底部表面流量比例" + +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "首层流量调整系数,默认为1.0" + +msgid "Precise wall" +msgstr "精准外墙尺寸" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" + +msgid "Only one wall on top surfaces" +msgstr "顶面单层墙" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "顶面只使用单层墙,从而更多的空间能够使用顶部填充图案" + +msgid "One wall threshold" +msgstr "单层墙阈值" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"如果顶面需要打印,但是它的一部分被其它层覆盖,那么当它的宽度小于这个值时,它" +"不会被认为是顶层。这个设置可以用于避免在狭窄顶面上触发“顶面单层墙”。这个值可" +"以是毫米或线宽的百分比。\n" +"警告:如果启用,可能会在下一层上产生一些薄的特征,比如字母。将此设置设置为0可" +"以消除这些伪影。" + +msgid "Only one wall on first layer" +msgstr "首层仅单层墙" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "首层只使用单层墙,从而更多的空间能够使用底部填充图案" + +msgid "Extra perimeters on overhangs" +msgstr "悬垂上的额外周长" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "在陡峭的悬垂和无法固定桥接的区域上创建额外的周长路径。" + +msgid "Reverse on odd" +msgstr "反转奇数层悬垂方向" + +msgid "Overhang reversal" +msgstr "悬垂反转" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" +"在奇数层上,将悬垂部分的走线反转。这种交替的走线模式可以大大改善陡峭的悬" +"垂。\n" +"\n" +"这个设置也可以帮助减少零件变形,因为零件墙壁的应力减少了。" + +msgid "Reverse only internal perimeters" +msgstr "仅反转内部墙壁" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" +"仅在内墙上应用反转墙壁逻辑。\n" +"\n" +"这个设置大大减少了零件的应力,因为它们现在是交替方向分布的。这应该减少零件变" +"形,同时保持外墙的质量。这个功能对于易变形的材料非常有用,比如ABS/ASA,也对于" +"弹性耗材,比如TPU和丝光PLA。它还可以帮助减少支撑上的悬空区域的变形。\n" +"\n" +"为了使这个设置最有效,建议将反转阈值设置为0,这样所有的内墙都会在奇数层交替打" +"印。" + +msgid "Bridge counterbore holes" +msgstr "沉孔搭桥" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" +"此选项为沉孔创建搭桥,使其可以在无支撑的情况下打印。可用的模式包括:\n" +"1. 无:不创建搭桥。\n" +"2. 部分搭桥:仅部分不支撑的区域将被搭桥。\n" +"3. 牺牲层:创建一个完整的牺牲层。" + +msgid "Partially bridged" +msgstr "部分搭桥" + +msgid "Sacrificial layer" +msgstr "牺牲层" + +msgid "Reverse threshold" +msgstr "反转阈值" + +msgid "Overhang reversal threshold" +msgstr "悬垂反转阈值" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "判定悬垂反转需要的值(毫米),可以是线宽的百分比。" + +msgid "Classic mode" +msgstr "经典模式" + +msgid "Enable this option to use classic mode" +msgstr "启用此选项以使用经典模式" + +msgid "Slow down for overhang" +msgstr "悬垂降速" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "启用此选项将降低不同悬垂程度的走线的打印速度" + +msgid "Slow down for curled perimeters" +msgstr "翘边降速" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "启用这个选项,降低可能存在卷曲部位的打印速度" + +msgid "mm/s or %" +msgstr "mm/s 或 %" + +msgid "External" +msgstr "外部" + +msgid "Speed of bridge and completely overhang wall" +msgstr "桥接和完全悬空的外墙的打印速度" + +msgid "mm/s" +msgstr "mm/s" + +msgid "Internal" +msgstr "内部" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"内部桥接的速度。如果该值以百分比表示,则将根据桥接速度进行计算。默认值为" +"150%。" + +msgid "Brim width" +msgstr "Brim宽度" + +msgid "Distance from model to the outermost brim line" +msgstr "从模型到最外圈brim走线的距离" + +msgid "Brim type" +msgstr "Brim类型" + +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"该参数控制在模型的外侧和/或内侧生成brim。自动是指自动分析和计算边框的宽度。" + +msgid "Brim-object gap" +msgstr "Brim与模型的间隙" + +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "在brim和模型之间设置间隙,能够让brim更容易剥离" + +msgid "Brim ears" +msgstr "圆盘" + +msgid "Only draw brim over the sharp edges of the model." +msgstr "仅在模型尖锐边缘启用brim。" + +msgid "Brim ear max angle" +msgstr "圆盘最大角度" + +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"让圆盘出现的最大角度。\n" +"如果设置为0,则不会创建圆盘。\n" +"如果设置为约180,除直线部分外,其他部分都会创建圆盘。" + +msgid "Brim ear detection radius" +msgstr "圆盘检测半径" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"在检测尖锐角度之前,几何形状将被简化。此参数表示简化的最小偏差长度。\n" +"设为0以停用" + +msgid "Compatible machine" +msgstr "兼容的机器" + +msgid "upward compatible machine" +msgstr "向上兼容的机器" + +msgid "Compatible machine condition" +msgstr "兼容的机器的条件" + +msgid "Compatible process profiles" +msgstr "兼容的切片配置" + +msgid "Compatible process profiles condition" +msgstr "兼容的切片配置的条件" + +msgid "Print sequence, layer by layer or object by object" +msgstr "打印顺序,逐层打印或者逐件打印" + +msgid "By layer" +msgstr "逐层" + +msgid "By object" +msgstr "逐件" + +msgid "Intra-layer order" +msgstr "层内打印顺序" + +msgid "Print order within a single layer" +msgstr "同一层内的打印顺序" + +msgid "As object list" +msgstr "按对象列表中的顺序" + +msgid "Slow printing down for better layer cooling" +msgstr "降低打印速度 以得到更好的冷却" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"勾选这个选项,将降低打印速度,使得最终的层打印时间不小于\"最大风扇速度阈值" +"\"里的层时间阈值,从而使得该层获得更久的冷却。这能够改善尖顶和小细节的冷却效" +"果" + +msgid "Normal printing" +msgstr "普通打印" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "除首层之外的默认的打印和空驶的加速度" + +msgid "mm/s²" +msgstr "mm/s²" + +msgid "Default filament profile" +msgstr "默认耗材配置" + +msgid "Default filament profile when switch to this machine profile" +msgstr "该机器配置的默认耗材配置" + +msgid "Default process profile" +msgstr "默认切片配置" + +msgid "Default process profile when switch to this machine profile" +msgstr "该机器的默认切片配置" + +msgid "Activate air filtration" +msgstr "启用空气过滤/排气" + +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "启用空气过滤/排气风扇。G-code命令:M106 P3 S(0-255)" + +msgid "Fan speed" +msgstr "风扇速度" + +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "打印过程中排气风扇的速度。此速度将覆盖耗材丝自定义gcode中的速度" + +msgid "Speed of exhaust fan after printing completes" +msgstr "打印完成后排气风扇的速度" + +msgid "No cooling for the first" +msgstr "关闭冷却对前" + +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"对开始的一些层关闭所有的部件冷却风扇。通常关闭首层冷却用来获得更好的热床粘接" + +msgid "Don't support bridges" +msgstr "不支撑桥接" + +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"不对整个桥接面进行支撑,否则支撑体会很大。不是很长的桥接通常可以无支撑直接打" +"印。" + +msgid "Thick bridges" +msgstr "厚桥" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"如果启用,桥接会更可靠,可以桥接更长的距离,但可能看起来更糟。如果关闭,桥梁" +"看起来更好,但只适用于较短的桥接距离。" + +msgid "Thick internal bridges" +msgstr "内部搭桥用厚桥" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" +"如果启用,将使用厚内部桥接。通常建议打开此功能。但是,如果您使用大喷嘴,请考" +"虑关闭它。" + +msgid "Don't filter out small internal bridges (beta)" +msgstr "保留细微内部桥接(试验)" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" +"此选项可以帮助减少在严重倾斜或弯曲模型的顶部表面上的枕头现象。\n" +"\n" +"默认情况下,小的内部搭桥会被过滤掉,内部实心填充会直接打印在稀疏填充上。这在" +"大多数情况下效果很好,可以加快打印速度,而对顶部表面质量的影响不大。\n" +"\n" +"然而,在严重倾斜或弯曲的模型中,特别是在使用了过低的稀疏填充密度的情况下,这" +"可能会导致不支撑的实心填充卷曲,从而导致枕头现象。\n" +"\n" +"启用此选项将在轻微不支撑的内部实心填充上打印内部搭桥层。下面的选项控制过滤的" +"程度,即创建的内部搭桥的数量。\n" +"\n" +"禁用 - 禁用此选项。这是默认行为,在大多数情况下效果很好。\n" +"\n" +"有限过滤 - 在严重倾斜的表面上创建内部搭桥,同时避免创建不必要的内部搭桥。这对" +"大多数困难模型效果很好。\n" +"\n" +"无过滤 - 在每个潜在的内部悬垂上创建内部搭桥。这个选项对于严重倾斜的顶部表面模" +"型很有用。然而,在大多数情况下,它会创建太多不必要的桥接。" + +msgid "Disabled" +msgstr "禁用" + +msgid "Limited filtering" +msgstr "有限保留" + +msgid "No filtering" +msgstr "保留全部" + +msgid "Max bridge length" +msgstr "最大桥接长度" + +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"不需要支撑的桥接的最大长度。如果希望支持所有桥接,请将其设置为0;如果不希望支" +"持任何桥接,请将其设置为非常大的值。" + +msgid "End G-code" +msgstr "结尾G-code" + +msgid "End G-code when finish the whole printing" +msgstr "所有打印结束时的结尾G-code" + +msgid "Between Object Gcode" +msgstr "对象之间Gcode" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "在对象之间插入 Gcode。此参数仅在逐个打印模型物体时生效。" + +msgid "End G-code when finish the printing of this filament" +msgstr "结束使用该耗材打印时的结尾G-code" + +msgid "Ensure vertical shell thickness" +msgstr "确保垂直外壳厚度" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" +"在倾斜表面附近添加实心填充,以保证垂直外壳的厚度(顶部+底部实心层)\n" +"无:任何地方都不会添加实心填充。注意:如果您的模型有倾斜表面,请谨慎使用此选" +"项\n" +"仅关键区域:避免为墙壁添加实心填充\n" +"适量:仅为严重倾斜的表面添加实心填充\n" +"全部:为所有适当的倾斜表面添加实心填充\n" +"默认值为全部。" + +msgid "Critical Only" +msgstr "仅关键区域" + +msgid "Moderate" +msgstr "适量" + +msgid "Top surface pattern" +msgstr "顶面图案" + +msgid "Line pattern of top surface infill" +msgstr "顶面填充的走线图案" + +msgid "Concentric" +msgstr "同心" + +msgid "Rectilinear" +msgstr "直线" + +msgid "Monotonic" +msgstr "单调" + +msgid "Monotonic line" +msgstr "单调线" + +msgid "Aligned Rectilinear" +msgstr "直线排列" + +msgid "Hilbert Curve" +msgstr "希尔伯特曲线" + +msgid "Archimedean Chords" +msgstr "阿基米德和弦" + +msgid "Octagram Spiral" +msgstr "八角螺旋" + +msgid "Bottom surface pattern" +msgstr "底面图案" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "除了桥接外的底面填充的走线图案" + +msgid "Internal solid infill pattern" +msgstr "内部实心填充图案" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"内部实心填充的线型图案。如果启用了检测狭窄的内部实心填充,将使用同心圆图案来" +"填充小区域。" + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "外墙的线宽。如果以%表示,它将基于喷嘴直径来计算" + +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "外墙的打印速度。它通常使用比内壁速度慢的速度,以获得更好的质量。" + +msgid "Small perimeters" +msgstr "微小部位" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"此设置将影响半径小于等于small_perimeter_threshold(通常是孔洞)的围墙的速度。" +"如果以百分比表示(例如:80%),则将根据上面的外壁速度设置进行计算。设置为零时" +"为自动。" + +msgid "Small perimeters threshold" +msgstr "微小部位周长阈值" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "这将设置微小部位周长的阈值。默认阈值为0mm" + +msgid "Walls printing order" +msgstr "墙顺序" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" +"内墙和外墙的打印顺序。\n" +"\n" +"使用内墙/外墙以获得最佳悬垂效果。这是因为在打印时,悬垂的墙可以粘附到相邻的围" +"墙上。但是,这个选项会导致外墙的表面质量稍微降低,因为外墙被内墙挤压。\n" +"\n" +"使用内墙/外墙/内墙以获得最佳的外部表面质量和尺寸精度,因为外墙不会受内墙的影" +"响但是,悬垂性能会降低,因为没有内墙来支撑打印外墙。此选项要求至少3层墙壁才能" +"生效,因为它首先从第3个墙壁开始打印内墙,然后是外墙,最后是第一个内墙。在大多" +"数情况下,此选项建议使用而不是外/内选项。\n" +"\n" +"使用外/内以获得与内/外/内选项相同的外部墙质量和尺寸精度优势。但是,由于新层的" +"第一次挤出是在可见表面上开始的,因此z缝隙看起来不那么一致。\n" +"\n" +" " + +msgid "Inner/Outer" +msgstr "内墙/外墙" + +msgid "Outer/Inner" +msgstr "外墙/内墙" + +msgid "Inner/Outer/Inner" +msgstr "内墙/外墙/内墙" + +msgid "Print infill first" +msgstr "首先打印填充" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" +"墙/填充的顺序。当未启用时,首先打印墙壁,这在大多数情况下都是最好的。\n" +"\n" +"首先打印填充可能有助于极端悬垂,因为墙壁有相邻的填充物可以粘附。但是,填充物" +"会在附着在墙壁上的地方轻微地挤出打印的墙壁,导致外部表面质量更差。它还会导致" +"填充物透过零件的外部表面。" + +msgid "Wall loop direction" +msgstr "围墙打印方向" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" +"从顶部往下看时,墙壁被打印的方向。\n" +"\n" +"默认情况下,所有墙壁都按逆时针方向被打印,除非启用了奇数层翻转选项。将此选项设" +"置为除自动之外的任何选项,都会强制指定墙壁方向,而不受奇数层翻转选项的影响。\n" +"\n" +"如果启用了螺旋花瓶模式,此选项将被禁用。" + +msgid "Counter clockwise" +msgstr "逆时针" + +msgid "Clockwise" +msgstr "顺时针" + +msgid "Height to rod" +msgstr "到横杆高度" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "喷嘴尖端到下方滑杆的距离。用于在逐件打印中避免碰撞。" + +msgid "Height to lid" +msgstr "到顶盖高度" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "喷嘴尖端到顶盖的距离。用于在逐件打印中避免碰撞。" + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "挤出机四周的避让半径。用于在逐件打印中避免碰撞。" + +msgid "Nozzle height" +msgstr "喷嘴高度" + +msgid "The height of nozzle tip." +msgstr "喷嘴尖端的高度。" + +msgid "Bed mesh min" +msgstr "网床最小点" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"此选项设置了允许的网床探测区域的最小点。由于探针的XY偏移,大多数打印机无法探" +"测整个打印床。为了确保探针不会超出床的范围,应适当设置网床的最小和最大点。逆" +"戟鲸切片确保adaptive_bed_mesh_min/adaptive_bed_mesh_max值不超过这些最小/最大" +"点。这些信息通常可以从您的打印机制造商那里获得。默认设置为(-99999, -99999)," +"这意味着没有限制,因此允许在整个床上进行探测。" + +msgid "Bed mesh max" +msgstr "网床最大点" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" +"此选项设置了允许的网床探测区域的最大点。由于探针的XY偏移,大多数打印机无法探" +"测整个打印床。为了确保探针不会超出床的范围,应适当设置网床的最小和最大点。逆" +"戟鲸切片确保adaptive_bed_mesh_min/adaptive_bed_mesh_max值不超过这些最小/最大" +"点。这些信息通常可以从您的打印机制造商那里获得。默认设置为(99999, 99999),这" +"意味着没有限制,因此允许在整个床上进行探测。" + +msgid "Probe point distance" +msgstr "网格点间距离" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" +"此选项设置了X和Y方向的探针点(网格大小)之间的首选距离,其默认值为X和Y方向均" +"为50mm。" + +msgid "Mesh margin" +msgstr "网床边缘外扩" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "此选项决定了自适应网床网格区域在XY方向上应扩展的额外距离。" + +msgid "Extruder Color" +msgstr "挤出机颜色" + +msgid "Only used as a visual help on UI" +msgstr "只作为界面上的可视化辅助" + +msgid "Extruder offset" +msgstr "挤出机偏移" + +msgid "Flow ratio" +msgstr "流量比例" + +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"材料经过融化后凝固可能会产生体积差异。这个设置会等比例改变所有挤出走线的挤出" +"量。推荐的范围为0.95到1.05。发现大平层模型的顶面有轻微的缺料或多料时,或许可" +"以尝试微调这个参数。" + +msgid "Enable pressure advance" +msgstr "启用压力提前" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "启用压力提前,一旦启用会覆盖自动检测的结果" + +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "压力提前(Klipper)或者线性提前(Marlin)" + +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "当线宽设置为0时走线的默认线宽。如果以%表示,它将基于喷嘴直径来计算。" + +msgid "Keep fan always on" +msgstr "保持风扇常开" + +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"如果勾选这个选项,部件冷却风扇将永远不会停止,并且会至少运行在最小风扇转速值" +"以减少风扇的启停频次" + +msgid "Don't slow down outer walls" +msgstr "不减速外墙" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" +"如果启用,此设置将确保外墙不会为了满足最小层时间而减速。这在以下情况下特别有" +"帮助:\n" +"\n" +"1. 避免在打印光滑耗材时改变光泽\n" +"2. 避免改变外墙速度,可能会产生轻微的墙壁伪影,看起来像z条纹\n" +"3. 避免以会在外墙上产生VFAs(细微伪影)的速度打印\n" +"\n" + +msgid "Layer time" +msgstr "层时间" + +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"当层预估打印时间小于该数值时,部件冷却风扇将会被开启。风扇转速将根据层打印时" +"间在最大和最小风扇转速之间插值获得" + +msgid "Default color" +msgstr "缺省颜色" + +msgid "Default filament color" +msgstr "缺省材料颜色" + +msgid "Filament notes" +msgstr "耗材注释" + +msgid "You can put your notes regarding the filament here." +msgstr "你可以把关于耗材的注释放在这里。" + +msgid "Required nozzle HRC" +msgstr "喷嘴硬度要求" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "打印此材料的所需的最小喷嘴硬度。零值表示不检查喷嘴硬度。" + +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"这个设置表示在1秒内能够融化和挤出的耗材丝体积。打印速度会受到最大体积速度的限" +"制,防止设置过高和不合理的速度。不允许设置为0。" + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "加载耗材丝的时间" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "切换耗材丝时,加载新耗材丝所需的时间。只用于统计信息。" + +msgid "Filament unload time" +msgstr "卸载耗材丝的时间" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "切换耗材丝时,卸载旧的耗材丝所需时间。只用于统计信息。" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "耗材丝直径被用于计算G-code文件中的挤出量。因此很重要,应尽可能精确。" + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "耗材收缩率" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"冷却后耗材会收缩的百分比(如果测量的长度是94mm而不是100mm,则为是收缩率为" +"94%)\n" +"补偿将按比例缩放xy轴该补偿仅考虑墙壁所使用的耗材\n" +"请确保物体之间有足够的间距,因为补偿是在边界检查之后进行" + +msgid "Loading speed" +msgstr "加载速度" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "用于擦拭塔加载耗材的速度。" + +msgid "Loading speed at the start" +msgstr "加载初始速度" + +msgid "Speed used at the very beginning of loading phase." +msgstr "最开始加载阶段的速度" + +msgid "Unloading speed" +msgstr "卸载速度" + +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "用于擦拭塔卸载耗材的速度(不影响尖端成型之后初始部分的速度)。" + +msgid "Unloading speed at the start" +msgstr "卸载初始速度" + +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "耗材尖端成型后立即卸载的速度" + +msgid "Delay after unloading" +msgstr "卸载后延迟" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"耗材丝卸载后等待的时间。有助于柔性材料(收缩到原始尺寸需更多的时间)以获得可" +"靠的换色。" + +msgid "Number of cooling moves" +msgstr "冷却移动次数" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "耗材丝通过在喉管中来回移动来冷却。指定所需的移动次数。" + +msgid "Speed of the first cooling move" +msgstr "第一次冷却移动的速度" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "从这个速度开始冷却移动逐渐加速" + +msgid "Minimal purge on wipe tower" +msgstr "擦拭塔上的最小清理量" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"换色后,新加载的耗材在喷嘴内的确切位置可能未知,耗材压力可能还不稳定。在冲刷" +"打印头到填充或作为挤出废料之前,Snapmaker Orca将始终将这些的耗材丝冲刷到擦拭塔中" +"以产生连续的填充或稳定的挤出废料。" + +msgid "Speed of the last cooling move" +msgstr "最后一次冷却移动的速度" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "冷却移动向这个速度逐渐加速。" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"在换色时(执行T代码,如T1,T2),打印机固件(或Multi Material Unit 2.0)加载" +"新耗材的所需时间。该时间将会被G-code时间评估功能加到总打印时间上去。" + +msgid "Ramming parameters" +msgstr "尖端成型参数" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "此内容由尖端成型窗口编辑,包含尖端成型的特定参数。" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"换色期间(执行T代码时如T1,T2),打印机固件(或MMU2.0)卸载耗材所需时间。该时" +"间将会被G-code时间评估功能加到总打印时间上去。" + +msgid "Enable ramming for multitool setups" +msgstr "启用多色尖端成型设置" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"多色打印机执行尖端成型时(即,当打印机设置中的单挤出机多材料未选中时)。选中" +"时,在换色之前,会迅速挤出少量耗材丝到擦拭塔上。此选项仅在启用擦拭塔时使用。" + +msgid "Multitool ramming volume" +msgstr "多色尖端成型体积" + +msgid "The volume to be rammed before the toolchange." +msgstr "换色前尖端成型的体积" + +msgid "Multitool ramming flow" +msgstr "多色尖端成型流量" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "换色前耗材尖端成型的流量" + +msgid "Density" +msgstr "密度" + +msgid "Filament density. For statistics only" +msgstr "耗材丝的密度。只用于统计信息。" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "耗材丝的材料类型" + +msgid "Soluble material" +msgstr "可溶性材料" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "可溶性材料通常用于打印支撑和支撑面" + +msgid "Support material" +msgstr "支撑材料" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "支撑材料通常用于打印支撑体和支撑接触面" + +msgid "Softening temperature" +msgstr "软化温度" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"材料在这个温度下会软化,因此当热床温度等于或高于这个温度时,强烈建议打开前门" +"和/或去除上玻璃以避免堵塞。" + +msgid "Price" +msgstr "价格" + +msgid "Filament price. For statistics only" +msgstr "耗材丝的价格。只用于统计信息。" + +msgid "money/kg" +msgstr "money/kg" + +msgid "Vendor" +msgstr "供应商" + +msgid "Vendor of filament. For show only" +msgstr "打印耗材的供应商。仅用于展示。" + +msgid "(Undefined)" +msgstr "(未定义)" + +msgid "Sparse infill direction" +msgstr "稀疏填充方向" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "稀疏填充图案的角度,决定走线的开始或整体方向。" + +msgid "Solid infill direction" +msgstr "实心填充方向" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "实心填充图案的角度,决定走线的开始或整体方向。" + +msgid "Rotate solid infill direction" +msgstr "旋转实心填充方向" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "每层都旋转实心填充方向90°。" + +msgid "Sparse infill density" +msgstr "稀疏填充密度" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" + +msgid "Sparse infill pattern" +msgstr "稀疏填充图案" + +msgid "Line pattern for internal sparse infill" +msgstr "内部稀疏填充的走线图案" + +msgid "Grid" +msgstr "网格" + +msgid "Line" +msgstr "线" + +msgid "Cubic" +msgstr "立方体" + +msgid "Tri-hexagon" +msgstr "内六边形" + +msgid "Gyroid" +msgstr "螺旋体" + +msgid "Honeycomb" +msgstr "蜂窝" + +msgid "Adaptive Cubic" +msgstr "自适应立方体" + +msgid "3D Honeycomb" +msgstr "3D 蜂窝" + +msgid "Support Cubic" +msgstr "支撑立方体" + +msgid "Lightning" +msgstr "闪电" + +msgid "Cross Hatch" +msgstr "交叉层叠" + +msgid "Sparse infill anchor length" +msgstr "稀疏填充锚线长度" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"用附加周长的一小段将填充线连接到内部周长。如果以百分比(例如:15%)表示,则计" +"算填充拉伸宽度。Snapmaker Orca 试图将两条紧密的填充线连接到一个短的周长段。如果找" +"不到短于“填充”和“锚点”最大值的周长线段,则填充线仅在一侧连接到周长线段,并且" +"所取周长线段的长度仅限于此参数,但不超过“锚点长度”最大值。将此参数设置为零," +"以禁用连接到单个填充线的锚点周长。" + +msgid "0 (no open anchors)" +msgstr "0 (无锚线)" + +msgid "1000 (unlimited)" +msgstr "1000(无限制)" + +msgid "Maximum length of the infill anchor" +msgstr "填充锚线的最大长度" + +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"用附加周长的一小段将填充线连接到内部周长。如果以百分比(例如:15%)表示,则计" +"算填充拉伸宽度。Snapmaker Orca 试图将两条紧密的填充线连接到一个短的周长段。如果找" +"不到比此参数短的周长线段,则填充线仅在一侧连接到周长线段,并且所采用的周长线" +"段的长度仅限于 infl_anchor,但不超过此参数。将此参数设置为零以禁用锚点。" + +msgid "0 (Simple connect)" +msgstr "0(简单连接)" + +msgid "Acceleration of outer walls" +msgstr "外墙的加速度。它通常使用比内壁速度慢的加速度,以获得更好的质量" + +msgid "Acceleration of inner walls" +msgstr "内圈墙加速度,使用较低值可以改善质量。" + +msgid "Acceleration of travel moves" +msgstr "空驶加速度" + +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "顶面填充的加速度。使用较低值可能会改善顶面质量" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "外墙加速度。使用较小的值可以提高质量。" + +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"桥接加速度。如果该值以百分比(例如50%)表示,则将根据外墙加速度进行计算。" + +msgid "mm/s² or %" +msgstr "mm/s² 或 %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"稀疏填充的加速度。如果该值表示为百分比(例如100%),则将根据默认加速度进行计" +"算。" + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"内部实心填充的加速度。如果该值以百分比表示(例如100%),则将根据默认加速度进" +"行计算。" + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "首层加速度。使用较低值可以改善和构建板的粘接。" + +msgid "Enable accel_to_decel" +msgstr "启用制动速度" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "Klipper的max_accel_to_decel将被自动调整" + +msgid "accel_to_decel" +msgstr "制动速度" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "Klipper的max_accel_to_decel将被调整为该加速度的百分比" + +msgid "Jerk of outer walls" +msgstr "外墙抖动值" + +msgid "Jerk of inner walls" +msgstr "内墙抖动值" + +msgid "Jerk for top surface" +msgstr "顶面抖动值" + +msgid "Jerk for infill" +msgstr "填充抖动" + +msgid "Jerk for initial layer" +msgstr "首层抖动值" + +msgid "Jerk for travel" +msgstr "空驶抖动值" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "首层的线宽。如果以%表示,它将基于喷嘴直径来计算。" + +msgid "Initial layer height" +msgstr "首层层高" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "首层层高" + +msgid "Speed of initial layer except the solid infill part" +msgstr "首层除实心填充之外的其他部分的打印速度" + +msgid "Initial layer infill" +msgstr "首层填充" + +msgid "Speed of solid infill part of initial layer" +msgstr "首层实心填充的打印速度" + +msgid "Initial layer travel speed" +msgstr "首层空驶速度" + +msgid "Travel speed of initial layer" +msgstr "首层空驶速度" + +msgid "Number of slow layers" +msgstr "慢速打印层数" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "减慢前几层的打印速度。打印速度会逐渐加速到满速" + +msgid "Initial layer nozzle temperature" +msgstr "首层打印温度" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "打印首层时的喷嘴温度" + +msgid "Full fan speed at layer" +msgstr "满速风扇在" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"风扇速度将从“禁用第一层”的零线性上升到“全风扇速度层”的最大。如果低于“禁用风扇" +"第一层”,则“全风扇速度第一层”将被忽略,在这种情况下,风扇将在“禁用风扇第一" +"层”+1层以最大允许速度运行。" + +msgid "layer" +msgstr "" + +msgid "Support interface fan speed" +msgstr "支撐接触面风扇" + +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "此风扇速度在所有支撑接触层打印期间强制执行" + +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "打印外墙时随机抖动,使外表面产生绒效果。这个设置决定适用的位置。" + +msgid "Contour" +msgstr "轮廓" + +msgid "Contour and hole" +msgstr "轮廓和孔" + +msgid "All walls" +msgstr "所有墙" + +msgid "Fuzzy skin thickness" +msgstr "绒毛表面厚度" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "产生绒毛的抖动的宽度。建议小于外圈墙的线宽。" + +msgid "Fuzzy skin point distance" +msgstr "绒毛表面点间距" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "产生绒毛表面时,插入的随机点之间的平均距离" + +msgid "Apply fuzzy skin to first layer" +msgstr "绒毛表面应用至首层" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "" + +msgid "Filter out tiny gaps" +msgstr "忽略微小间隙" + +msgid "Layers and Perimeters" +msgstr "层和墙" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "忽略小于指定阈值的间隙" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "填缝的速度。缝隙通常有不一致的线宽,应改用较慢速度打印。" + +msgid "Precise Z height" +msgstr "精准Z高度" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" +"开启这个设置,对象在切片后将得到精准的Z高度。它将通过微调对象最后几层的层高来" +"确保对象Z高度精准。注意这是一个实验性参数。" + +msgid "Arc fitting" +msgstr "圆弧拟合" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" +"启用此设置,导出的G-code将包含G2 G3指令。圆弧拟合的容许值和精度相同。\n" +"\n" +"请注意:对于使用Klipper的打印机,建议禁用此选项。\n" +"Klipper打印机并不会从圆弧拟合中受益,因为这些命令会被固件\n" +"重新分割为线段。由于切片软件将线段转换为圆弧后再次被转换为\n" +"线段进行打印,这样操作会导致打印件表面质量下降。" + +msgid "Add line number" +msgstr "标注行号" + +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "启用该设置,G-code的每一行的开头会增加Nx标注行号。" + +msgid "Scan first layer" +msgstr "首层扫描" + +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "开启这个设置将打开打印机上的摄像头用于检查首层打印质量。" + +msgid "Nozzle type" +msgstr "喷嘴类型" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "喷嘴的金属材料。这将决定喷嘴的耐磨性,以及可打印材料的种类" + +msgid "Undefine" +msgstr "未定义" + +msgid "Hardened steel" +msgstr "硬化钢" + +msgid "Stainless steel" +msgstr "不锈钢" + +msgid "Brass" +msgstr "黄铜" + +msgid "Nozzle HRC" +msgstr "喷嘴洛氏硬度" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "喷嘴硬度。零值表示在切片时不检查喷嘴硬度。" + +msgid "HRC" +msgstr "洛氏硬度" + +msgid "Printer structure" +msgstr "打印机结构" + +msgid "The physical arrangement and components of a printing device" +msgstr "打印设备的物理结构和组件" + +msgid "CoreXY" +msgstr "CoreXY" + +msgid "I3" +msgstr "I3" + +msgid "Hbot" +msgstr "Hbot" + +msgid "Delta" +msgstr "Delta(三角洲)" + +msgid "Best object position" +msgstr "最佳对象位置" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "最佳自动排列位置在[0,1]范围内,相对于打印床形状。" + +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "如果打印机有辅助风扇,可以开启此选项。G-code指令:M106 P2 S(0-255)" + +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"把风扇启动指令往前移动指定时间以补偿风扇的启动时间。目前支支持G1 G0指令\n" +"设为0以禁用此选项" + +msgid "Only overhangs" +msgstr "仅悬垂" + +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "仅对悬垂有效" + +msgid "Fan kick-start time" +msgstr "风扇" + +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"让风扇满速运行指定时间以帮助风扇顺利启动\n" +"设为0禁用此选项" + +msgid "Time cost" +msgstr "时间花费" + +msgid "The printer cost per hour" +msgstr "打印机每小时的成本" + +msgid "money/h" +msgstr "元/时" + +msgid "Support control chamber temperature" +msgstr "支持仓温控制" + +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" + +msgid "Support air filtration" +msgstr "支持空气过滤" + +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"如果打印机支持空气过滤/排气风扇,可以开启此选项\n" +"G-code指令:M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "G-code风格" + +msgid "What kind of gcode the printer is compatible with" +msgstr "打印机兼容的G-code风格'" + +msgid "Klipper" +msgstr "" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "支持多种打印床类型" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "如果要使用多种打印床类型,请启用此选项" + +msgid "Label objects" +msgstr "标注模型" + +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"启用此选项,将在G-code中添加注释,标记打印移动属于哪个对象,这对Octoprint " +"CancelObject插件非常有用。此设置与单挤出机多材料设置和擦拭到对象/擦拭到填充不" +"兼容。" + +msgid "Exclude objects" +msgstr "对象排除" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "开启此选项以支持对象排除" + +msgid "Verbose G-code" +msgstr "注释G-code" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"启用此选项,将获得带有注释的G-code文件,每行都有描述性文本解释。如果您从SD卡" +"打印,文件的额外重量可能会使您的固件变慢。" + +msgid "Infill combination" +msgstr "合并填充" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"自动合并若干层稀疏填充一起打印以可缩短时间。内外墙依然保持原始层高打印。" + +msgid "Filament to print internal sparse infill." +msgstr "打印内部稀疏填充的耗材丝" + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "内部稀疏填充的线宽。如果以%表示,它将基于喷嘴直径来计算。" + +msgid "Infill/Wall overlap" +msgstr "填充/墙 重叠" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "顶/底部实心填充/墙重叠率" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" +"顶部实心填充区域略微扩大,以便与墙壁重叠,以获得更好的粘合,并减少顶部填充与" +"墙壁相接处的小孔出现。25-30%的值是一个很好的起点,可以减少小孔的出现。百分比" +"值相对于稀疏填充的线宽" + +msgid "Speed of internal sparse infill" +msgstr "内部稀疏填充的打印速度" + +msgid "Interface shells" +msgstr "接触面外壳" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"强制在相邻材料/体积之间生成实心壳。适用于使用半透明材料或手动可溶性支撑材料的" +"多挤出机打印" + +msgid "Maximum width of a segmented region" +msgstr "分段区域的最大宽度" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "分段区域的最大宽度。将其设置为零会禁用此功能。" + +msgid "Interlocking depth of a segmented region" +msgstr "分割区域的交错深度" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "分割区域的交错深度。0 则禁用此功能。" + +msgid "Use beam interlocking" +msgstr "启用互锁梁" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "互锁梁宽度" + +msgid "The width of the interlocking structure beams." +msgstr "互锁梁的宽度" + +msgid "Interlocking direction" +msgstr "互锁方向" + +msgid "Orientation of interlock beams." +msgstr "互锁梁的方向" + +msgid "Interlocking beam layers" +msgstr "互锁梁层数" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "互锁与边界的留白量" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "模型边框与互锁结构的距离,以单元格为单位。" + +msgid "Ironing Type" +msgstr "熨烫类型" + +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"熨烫指的是使用小流量在表面的同高度打印,进而是的平面更加光滑。这个设置用于设" +"置哪些层进行熨烫。" + +msgid "No ironing" +msgstr "不熨烫" + +msgid "Top surfaces" +msgstr "顶面" + +msgid "Topmost surface" +msgstr "最顶面" + +msgid "All solid layer" +msgstr "所有实心层" + +msgid "Ironing Pattern" +msgstr "熨烫模式" + +msgid "The pattern that will be used when ironing" +msgstr "熨烫时将使用的图案" + +msgid "Ironing flow" +msgstr "熨烫流量" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "熨烫时相对正常层高流量的材料量。过高的数值将会导致表面材料过挤出。" + +msgid "Ironing line spacing" +msgstr "熨烫间距" + +msgid "The distance between the lines of ironing" +msgstr "熨烫走线的间距" + +msgid "Ironing speed" +msgstr "熨烫速度" + +msgid "Print speed of ironing lines" +msgstr "熨烫的打印速度" + +msgid "Ironing angle" +msgstr "熨烫角度" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "熨烫的角度。设为负值将禁用此功能并使用默认方法。" + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "在每次换层抬升Z高度之后插入这段G-code。" + +msgid "Supports silent mode" +msgstr "支持静音模式" + +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "机器是否支持使用低加速度打印的静音模式。" + +msgid "Emit limits to G-code" +msgstr "写入限制到G-code" + +msgid "Machine limits" +msgstr "机器限制" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" +"如果启用,机器限制将写入到G-code文件。\n" +"如果G-code风格设置为Klipper,则此选项将被忽略。" + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "该G-code用于暂停打印。您可以在gcode预览中插入暂停G-code" + +msgid "This G-code will be used as a custom code" +msgstr "该G-code是定制化指令" + +msgid "Small area flow compensation (beta)" +msgstr "小区域填充流量补偿(试验)" + +msgid "Enable flow compensation for small infill areas" +msgstr "启用小区域填充的流量补偿" + +msgid "Flow Compensation Model" +msgstr "流量补偿模型" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" +"流量补偿模型,用于调整小区域填充的流量。模型以逗号分隔的形式表示,每行一个" +"值,格式如下:\"1.234,5.678\"" + +msgid "Maximum speed X" +msgstr "X最大速度" + +msgid "Maximum speed Y" +msgstr "Y最大速度" + +msgid "Maximum speed Z" +msgstr "Z最大速度" + +msgid "Maximum speed E" +msgstr "E最大速度" + +msgid "Maximum X speed" +msgstr "X最大速度" + +msgid "Maximum Y speed" +msgstr "Y最大速度" + +msgid "Maximum Z speed" +msgstr "Z最大速度" + +msgid "Maximum E speed" +msgstr "E最大速度" + +msgid "Maximum acceleration X" +msgstr "X最大加速度" + +msgid "Maximum acceleration Y" +msgstr "Y最大加速度" + +msgid "Maximum acceleration Z" +msgstr "Z最大加速度" + +msgid "Maximum acceleration E" +msgstr "E最大加速度" + +msgid "Maximum acceleration of the X axis" +msgstr "X轴的最大加速度" + +msgid "Maximum acceleration of the Y axis" +msgstr "Y轴的最大加速度" + +msgid "Maximum acceleration of the Z axis" +msgstr "Z轴的最大加速度" + +msgid "Maximum acceleration of the E axis" +msgstr "E轴的最大加速度" + +msgid "Maximum jerk X" +msgstr "X最大抖动" + +msgid "Maximum jerk Y" +msgstr "Y最大抖动" + +msgid "Maximum jerk Z" +msgstr "Z最大抖动" + +msgid "Maximum jerk E" +msgstr "E最大抖动" + +msgid "Maximum jerk of the X axis" +msgstr "X轴最大抖动" + +msgid "Maximum jerk of the Y axis" +msgstr "Y轴最大抖动" + +msgid "Maximum jerk of the Z axis" +msgstr "Z轴最大抖动" + +msgid "Maximum jerk of the E axis" +msgstr "E轴最大抖动" + +msgid "Minimum speed for extruding" +msgstr "最小挤出速度" + +msgid "Minimum speed for extruding (M205 S)" +msgstr "最小挤出速度(M205 S)" + +msgid "Minimum travel speed" +msgstr "最小空驶速度" + +msgid "Minimum travel speed (M205 T)" +msgstr "最小空驶速度(M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "挤出最大加速度" + +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "挤出时的最大加速度(M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "回抽最大加速度" + +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "回抽最大加速度(M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "空驶最大加速度" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "最大空驶加速度(M204 T),仅适用于Marlin 2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"启用自动冷却时,可能会提高部件冷却风扇的转速。这是部件冷却风扇的最大速度限制" + +msgid "Max" +msgstr "最大" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "挤出头最大可打印的层高。用于限制开启自适应层高时的最大层高。" + +msgid "Extrusion rate smoothing" +msgstr "平滑挤出率" + +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"此参数是打印机从打印高流量挤出(高速/较大宽度)向低流量挤出(低速/较小宽度)" +"时用于突然变化挤出速率的平滑,反之亦然。\n" +"它定义了挤出体积流量(mm3/s)随时间变化的最大速率。更高的值意味着允许更高的挤" +"出速率变化,从而产生更快速的过渡。\n" +"\n" +"值为0将禁用该功能。\n" +"\n" +"对于高速、高流量的近程挤出机(如Bambu或Voron)通常不需要该值。但是,在特征速" +"度变化很大的某些情况下,它可以提供一些边际收益。例如,当由于悬垂而出现严重的" +"减速时。在这些情况下,建议使用一个大的值大约300-350 m3/s2的,因为这刚好允许足" +"够的平滑,以帮助压力提前实现更平滑的流量过渡。\n" +"\n" +"对于没有压力提前的较慢打印机,该值应该设置得非常低。对于近程挤出机来说10-15 " +"mm3/s2是一个很好值的起点,而对于远程挤出机来说是5-10 mm3/s2。\n" +"\n" +"这个功能在Prusa切片机中被称为压力均衡器。\n" +"\n" +"注意:此参数禁用圆弧拟合。" + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "平滑段长度" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" + +msgid "Minimum speed for part cooling fan" +msgstr "部件冷却风扇的最小转速" + +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"辅助部件冷却风扇的转速。辅助部件冷却风扇将一直运行在该速度,除了设置的无需冷" +"却的前若干层\n" +"请在打印机设置中启用辅助风扇以使用此功能。G-code指令:M106 P2 S(0-255)" + +msgid "Min" +msgstr "最小" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "挤出头最小可打印的层高。用于限制开启自适应层高时的最小层高。" + +msgid "Min print speed" +msgstr "最小打印速度" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "在您启用“降低打印速度 " +"以得到更好的冷却”选项时最小的打印速度,以尝试保持上方设置的最小层时间。" + +msgid "Nozzle diameter" +msgstr "喷嘴直径" + +msgid "Diameter of nozzle" +msgstr "喷嘴直径" + +msgid "Configuration notes" +msgstr "配置注释" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "你可以把你的个人注释放在这里。该文本将添加到G-code首部注释中。" + +msgid "Host Type" +msgstr "主机类型" + +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "Snapmaker Orca可以将G-code文件上传到打印机主机。此字段必须包含主机类型。" + +msgid "Nozzle volume" +msgstr "喷嘴内腔体积" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "从切刀位置到喷嘴尖端的内腔体积" + +msgid "Cooling tube position" +msgstr "喉管位置" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "喉管的中心点与挤出机齿尖的距离。" + +msgid "Cooling tube length" +msgstr "喉管长度" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "喉管的长度,用于限制冷却内部移动的空间。" + +msgid "High extruder current on filament swap" +msgstr "更换耗材挤出机大电流" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"可能有益于换耗材过程中增加挤出机电流,克服加载耗材时的阻力以加快尖端成型进料" +"速率从而避免产生难看形状的尖端。" + +msgid "Filament parking position" +msgstr "耗材停靠位置" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"卸载时,挤出机齿尖与耗材停放位置的距离。这应该与打印机固件中的值相匹配。" + +msgid "Extra loading distance" +msgstr "额外加载距离" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"当设置为零时,耗材的加载移动与卸载移动的距离相同。如果为正,加载比卸载长。如" +"果为负,加载比卸载短。" + +msgid "Start end points" +msgstr "起始终止点" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "从切割区域到垃圾桶的起始和结束点。" + +msgid "Reduce infill retraction" +msgstr "减小填充回抽" + +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"当空驶完全在填充区域内时不触发回抽。这意味着即使漏料也是不可见的。对于复杂模" +"型,该设置能够减少回抽次数以及打印时长,但是会造成G-code生成变慢" + +msgid "Filename format" +msgstr "文件名格式" + +msgid "User can self-define the project file name when export" +msgstr "用户可以自定义导出项目文件的名称。" + +msgid "Make overhangs printable" +msgstr "悬垂可打印化" + +msgid "Modify the geometry to print overhangs without support material." +msgstr "修改几何形状使得悬垂部分无需支撑材料或者搭桥打印。" + +msgid "Make overhangs printable - Maximum angle" +msgstr "悬垂可打印化的最大角度" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"在使悬垂可打印化后,允许的悬垂最大角度。90°将完全不改变模型并允许任何悬垂,而" +"0°将用圆锥形材料替换所有悬垂部分。" + +msgid "Make overhangs printable - Hole area" +msgstr "最大孔洞面积" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"模型底部的孔洞在被圆锥形材料填充前所允许的最大面积。值为0将填充模型底部的所有" +"孔洞。" + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "识别悬空外墙" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"检测悬空相对于线宽的百分比,并应用不同的速度打印。100%%的悬空将使用桥接速度。" + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "内墙的线宽。如果以%表示,它将基于喷嘴直径来计算。" + +msgid "Speed of inner wall" +msgstr "内圈墙打印速度" + +msgid "Number of walls of every layer" +msgstr "每一层的外墙" + +msgid "Alternate extra wall" +msgstr "交替添加额外内墙" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" +"此设置在每隔一层添加一层额外的内墙。这样,填充物就会垂直地夹在墙壁之间,从而" +"产生更牢固的打印件。\n" +"\n" +"启用此选项时,需要禁用确保垂直壳厚度选项。\n" +"\n" +"不建议将闪电填充与此选项一起使用,因为填充物有限,无法将额外的壁厚固定在填充" +"物上。" + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"如果您希望使用自定义脚本来处理输出的 " +"G-code,只需要在此列出这些脚本的绝对路径,使用分号来分割多个脚本。" +"脚本执行的第一个参数将会被设置为 G-code 文件的绝对路径," +"并支持脚本通过全局变量来读取 Snapmaker Orca 的设置。" + +msgid "Printer notes" +msgstr "打印机注释" + +msgid "You can put your notes regarding the printer here." +msgstr "你可以把你关于打印机的注释放在这里。" + +msgid "Raft contact Z distance" +msgstr "筏层Z间距" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "模型和筏层之间的Z间隙" + +msgid "Raft expansion" +msgstr "筏层扩展" + +msgid "Expand all raft layers in XY plane" +msgstr "在XY平面扩展所有筏层" + +msgid "Initial layer density" +msgstr "首层密度" + +msgid "Density of the first raft or support layer" +msgstr "筏和支撑的首层密度" + +msgid "Initial layer expansion" +msgstr "首层扩展" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "扩展筏和支撑的首层可以改善和热床的粘接。" + +msgid "Raft layers" +msgstr "筏层" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"模型会在相应层数的支撑上抬高进行打印。使用该功能通常用于打印ABS时翘曲。" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"为了避免G-code文件中过密集的点和走线,G-code走线通常是在简化模型的外轮廓之后" +"生成。越小的数值代表更高的分辨率,同时需要更长的切片时间。" + +msgid "Travel distance threshold" +msgstr "空驶距离阈值" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "只在空驶距离大于该数值时触发回抽。" + +msgid "Retract amount before wipe" +msgstr "擦拭前的回抽量" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "擦拭之前的回抽长度,用总回抽长度的百分比表示。" + +msgid "Retract when change layer" +msgstr "换层时回抽" + +msgid "Force a retraction when changes layer" +msgstr "强制在换层时回抽。" + +msgid "Retraction Length" +msgstr "回抽长度" + +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"挤出机中的一些材料会被拉回特定长度,避免空驶较长时材料渗出。设置为0表示关闭回" +"抽。" + +msgid "Long retraction when cut(experimental)" +msgstr "切料时回抽(实验)" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" +"实验性选项。在更换耗材丝时,将耗材丝回抽一段距离后再切断以最小化冲刷。虽然这" +"大大减少了冲刷,但也可能增加喷嘴堵塞或其他打印问题的风险。" + +msgid "Retraction distance when cut" +msgstr "切料回抽距离" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "实验性选项。在更换耗材丝时,切断前的回抽长度" + +msgid "Z hop when retract" +msgstr "回抽时抬升Z" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"回抽完成之后,喷嘴轻微抬升,和打印件之间产生一定间隙。这能够避免空驶时喷嘴和" +"打印件剐蹭和碰撞。使用螺旋线抬升z能够减少拉丝。" + +msgid "Z hop lower boundary" +msgstr "Z抬升下边界" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "只有当Z高于此值且低于参数(Z抬升上边界)时,Z抬升才会生效" + +msgid "Z hop upper boundary" +msgstr "Z抬升上边界" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "如果该值为正,则Z抬升仅在Z高于参数(Z抬升下边界)且低于该值时才会生效" + +msgid "Z hop type" +msgstr "抬Z类型" + +msgid "Slope" +msgstr "梯形" + +msgid "Spiral" +msgstr "螺旋" + +msgid "Traveling angle" +msgstr "空驶抬高角度" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "仅在高度以上抬Z" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "如果将其设置为正值,则Z抬升仅在指定的绝对Z之上发生" + +msgid "Only lift Z below" +msgstr "仅在高度以下抬Z" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "如果将其设置为正值,则Z抬升仅在指定的绝对Z以下发生。" + +msgid "On surfaces" +msgstr "仅表面抬Z" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"强制Z抬升行为。此设置受上述设置的影响(仅在高度以下抬Z/仅在高度以上抬Z)。" + +msgid "All Surfaces" +msgstr "所有表面" + +msgid "Top Only" +msgstr "仅顶面" + +msgid "Bottom Only" +msgstr "仅底面" + +msgid "Top and Bottom" +msgstr "顶面和地面" + +msgid "Extra length on restart" +msgstr "额外回填长度" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "每当空驶后回抽被补偿时,挤出机将推入额外数量的耗材丝。很少需要此设置。" + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "当换色后回抽被补偿时,挤出机将推入额外数量的耗材丝。" + +msgid "Retraction Speed" +msgstr "回抽速度" + +msgid "Speed of retractions" +msgstr "回抽速度" + +msgid "Deretraction Speed" +msgstr "装填速度" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "耗材丝装填的速度,0表示和回抽速度一致。" + +msgid "Use firmware retraction" +msgstr "使用固件回抽" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"(实验设置)使用G10和G11命令让固件处理回抽。该功能仅支持最近版本的Marlin固" +"件。" + +msgid "Show auto-calibration marks" +msgstr "显示雷达标定线" + +msgid "Disable set remaining print time" +msgstr "禁用M73剩余打印时间" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "在最终生成的G-code中禁用M73命令:设置剩余打印时间" + +msgid "Seam position" +msgstr "接缝位置" + +msgid "The start position to print each part of outer wall" +msgstr "开始打印外墙的位置" + +msgid "Nearest" +msgstr "最近" + +msgid "Aligned" +msgstr "对齐" + +msgid "Back" +msgstr "背面" + +msgid "Random" +msgstr "随机" + +msgid "Staggered inner seams" +msgstr "交错的内墙接缝" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "此选项会根据内墙深度使接缝向后移动,形成锯齿形模式。" + +msgid "Seam gap" +msgstr "接缝间隔" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" + +msgid "Scarf joint seam (beta)" +msgstr "斜拼接缝(试验)" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "使用斜拼接缝来最小化接缝的可见性并增加接缝的强度。" + +msgid "Conditional scarf joint" +msgstr "选择性应用斜拼接缝" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "当墙壁没有合适的锐角以至于传统接缝无法有效隐藏的时候使用斜拼接缝。" + +msgid "Conditional angle threshold" +msgstr "角度阈值" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" +"此选项设置判断是否应用斜拼接缝的角度阈值。\n" +"如果围墙环内的最大角度超过了这个值(表示没有足够锐的角),则使用斜拼接缝接" +"缝。默认值为155°。" + +msgid "Conditional overhang threshold" +msgstr "悬垂阈值" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" +"此选项设置斜拼接缝应用的悬垂阈值。如果围墙的未支撑部分小于此阈值,则应用斜拼" +"接缝接缝。默认阈值设置为外墙宽度的40%。由于性能考虑,悬垂程度是粗略估算。" + +msgid "Scarf joint speed" +msgstr "斜拼接缝速度" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" +"这个选项设置斜拼接缝的打印速度。建议以较慢的速度(小于100mm/s)打印斜拼接缝。" +"如果设置的速度与外墙或内墙的速度相差较大,建议启用“平滑挤出率”。如果此处指定" +"的速度高于外墙或内墙的速度,则打印机将默认使用两者中较慢的速度。当以百分比" +"(例如80%)指定时,速度将基于外墙或内墙的速度进行计算。默认值为100%。" + +msgid "Scarf joint flow ratio" +msgstr "斜拼接缝流量" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "这个参数影响斜拼接缝的材料用量。" + +msgid "Scarf start height" +msgstr "斜拼接缝起始高度" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" +"斜拼接缝的起始高度。\n" +"这个数值可以用毫米或者当前层高的百分比表示。默认值为0。" + +msgid "Scarf around entire wall" +msgstr "围绕整个围墙" + +msgid "The scarf extends to the entire length of the wall." +msgstr "将斜拼接缝延伸到整个围墙" + +msgid "Scarf length" +msgstr "斜拼接缝长度" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "斜拼接缝的长度。长度为0时会禁用斜拼接缝" + +msgid "Scarf steps" +msgstr "斜拼段数" + +msgid "Minimum number of segments of each scarf." +msgstr "斜拼接缝所需的最少段数" + +msgid "Scarf joint for inner walls" +msgstr "应用斜拼于内墙" + +msgid "Use scarf joint for inner walls as well." +msgstr "同时应用斜拼接缝于内墙" + +msgid "Role base wipe speed" +msgstr "自动擦拭速度" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" +"擦拭速度由当前挤出类型的速度决定。例如,如果擦拭动作紧随外墙,擦拭速度将使用" +"外墙的速度。" + +msgid "Wipe on loops" +msgstr "闭环擦拭" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"为了最大限度地减少闭环挤出中接缝的可见性,在挤出机离开环之前,会向内执行一个" +"小小的移动。" + +msgid "Wipe before external loop" +msgstr "额外的外墙打印前擦拭" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" +"为了最大限度地减少在使用外/内或内/外/内墙打印顺序时,外墙起始处的潜在过挤出," +"在外墙起始处外略微向内执行回填。这样,任何潜在的过挤都会隐藏在外表面之下。\n" +"\n" +"当使用外/内或内/外/内墙打印顺序时,这是有用的,因为在这些模式中,外墙可能会在" +"回填移动之后立即打印。" + +msgid "Wipe speed" +msgstr "擦拭速度" + +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"擦拭速度是根据此配置中指定的速度设置确定的。如果该值以百分比形式表示(例如" +"80%),则将根据上方的移动速度设置进行计算。该参数的默认值为80%。" + +msgid "Skirt distance" +msgstr "Skirt距离" + +msgid "Distance from skirt to brim or object" +msgstr "从skirt到模型或者brim的距离" + +msgid "Skirt height" +msgstr "Skirt高度" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "skirt有多少层。通常只有一层" + +msgid "Draft shield" +msgstr "风挡" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" +"打印风挡有助于保护ABS或ASA材料的打印件,避免因气流流动产生变形或从打印床上脱" +"落。通常只有在开放式框架打印机上需要使用它,即没有封箱的打印机。\n" +"\n" +"选项:\n" +"启用 = Skirt和您的打印物体一样高。\n" +"限制 = Skirt高度将由Skirt高度选项指定。\n" +"\n" +"注意:当风挡功能启用时,Skirt将在远离物体自身的Skirt一定距离处打印。因此,如" +"果同时启用了Brims,则可能与Skirt相交。为避免这种情况,请增加Skirt距离值。\n" + +msgid "Limited" +msgstr "限制" + +msgid "Enabled" +msgstr "启用" + +msgid "Skirt loops" +msgstr "Skirt圈数" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "skirt的圈数。0表示关闭skirt。" + +msgid "Skirt speed" +msgstr "Skirt速度" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "skirt速度,单位为mm/s。0表示使用默认的层挤出速度。" + +msgid "Skirt minimum extrusion length" +msgstr "Skirt最小挤出长度" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" +"打印skirt时的最小挤出长度,单位为mm。0表示关闭此功能。\n" +"\n" +"如果打印机设置为不使用擦拭塔,使用非零值是有用的。" + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"当层预估打印时间小于这个数值时,打印速度将会降低,从而获得更好的冷却效果。" + +msgid "Minimum sparse infill threshold" +msgstr "稀疏填充最小阈值" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "小于这个阈值的稀疏填充区域将会被内部实心填充替代。" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "内部实心填充的线宽。如果以%表示,它将基于喷嘴直径来计算。" + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "内部实心填充的速度,不是顶面和底面。" + +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"沿着对象的外轮廓螺旋上升,将实体模型转变为只有底面实心层和侧面单层墙壁的打" +"印。最后生成的打印件没有接缝。" + +msgid "Smooth Spiral" +msgstr "光滑螺旋模式" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" +"光滑螺旋模式平滑X和Y轴移动,从而在所有方向上都没有可见的接缝,即使在不垂直的" +"墙壁上也是如此。" + +msgid "Max XY Smoothing" +msgstr "最大XY平滑阈值" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" +"在XY平面上移动点的最大距离,以尝试实现平滑的螺旋。如果以%表示,它将基于喷嘴直" +"径来计算。" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"如果启用平滑模式或者传统模式,将在每次打印时生成延时摄影视频。打印完每层后," +"将用内置相机拍摄快照。打印完成后,所有这些快照会组合成一个延时视频。如果启用" +"平滑模式,打印完每层后,工具头将移动到吐料槽,然后拍摄快照。由于平滑模式在拍" +"摄快照的过程中熔丝可能会从喷嘴中泄漏,因此需要使用擦拭塔进行喷嘴擦拭。" + +msgid "Traditional" +msgstr "传统模式" + +msgid "Temperature variation" +msgstr "软化温度" + +msgid "Start G-code" +msgstr "起始G-code" + +msgid "Start G-code when start the whole printing" +msgstr "整个打印开始前的起始G-code" + +msgid "Start G-code when start the printing of this filament" +msgstr "开始使用这个耗材丝打印的起始G-code" + +msgid "Single Extruder Multi Material" +msgstr "单挤出机多材料" + +msgid "Use single nozzle to print multi filament" +msgstr "使用单喷嘴打印多耗材" + +msgid "Manual Filament Change" +msgstr "手动更换丝材" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" +"启用该选项可以在打印开始时省略自定义更换耗材丝的 " +"G-code。整个打印过程中的工具头指令(如 " +"T0)将会被跳过。这对于手动多材料打印十分有用,其将会使用 M600/PAUSE " +"指令来使您可以进行手动对耗材丝进行更换。" + +msgid "Purge in prime tower" +msgstr "冲刷进擦拭塔" + +msgid "Purge remaining filament into prime tower" +msgstr "冲刷剩余的耗材丝进入擦拭塔" + +msgid "Enable filament ramming" +msgstr "启用耗材尖端成型" + +msgid "No sparse layers (beta)" +msgstr "无稀疏层 (实验)" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"如果启用,将不会在没有换色的层打印擦拭塔。存在换色的层时,挤出机将降低高度打" +"印擦拭塔。用户应该确保不会与打印内容发生冲突。" + +msgid "Prime all printing extruders" +msgstr "所有挤出机画线" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "如果启用,所有挤出机将在打印开始时在床前画线" + +msgid "Slice gap closing radius" +msgstr "切片间隙闭合半径" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"在三角形网格切片过程中,小于2倍间隙闭合半径的裂纹将被填充。间隙闭合操作可能会" +"降低最终打印分辨率,因此建议降值保持在合理的较低水平" + +msgid "Slicing Mode" +msgstr "切片模式" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"对3DLabPrint的飞机模型使用 \"奇偶\"。使用 \"闭孔 \"来关闭模型上的所有孔。" + +msgid "Regular" +msgstr "常规" + +msgid "Even-odd" +msgstr "奇偶" + +msgid "Close holes" +msgstr "闭孔" + +msgid "Z offset" +msgstr "Z偏移" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"此值将从输出 G-Code 中的所有 Z 坐标中添加(或减去)。它用于补偿损坏的 Z 端限位" +"器置:例如,如果限位器零实际离开喷嘴 0.3mm 远离构建板(打印床),将其设置为 " +"-0.3(或调整限位器)。" + +msgid "Enable support" +msgstr "开启支撑" + +msgid "Enable support generation." +msgstr "开启支撑生成。" + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"普通(自动)和树状(自动)用于自动生成支撑体。如果选择普通(手动)或树状(手" +"动),仅会在支撑强制面上生成支撑。" + +msgid "normal(auto)" +msgstr "普通(自动)" + +msgid "tree(auto)" +msgstr "树状(自动)" + +msgid "normal(manual)" +msgstr "普通(手动)" + +msgid "tree(manual)" +msgstr "树状(手动)" + +msgid "Support/object xy distance" +msgstr "支撑/模型xy间距" + +msgid "XY separation between an object and its support" +msgstr "模型和支撑之间XY分离距离" + +msgid "Pattern angle" +msgstr "模式角度" + +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "设置支撑图案在水平面的旋转角度。" + +msgid "On build plate only" +msgstr "仅在构建板生成" + +msgid "Don't create support on model surface, only on build plate" +msgstr "不在模型表面上生成支撑,只在热床上生成。" + +msgid "Support critical regions only" +msgstr "仅支撑关键区域" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "仅对关键区域生成支撑,包括尖尾、悬臂等。" + +msgid "Remove small overhangs" +msgstr "移除小悬空" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "移除可能并不需要支撑的小悬空。" + +msgid "Top Z distance" +msgstr "顶部Z距离" + +msgid "The z gap between the top support interface and object" +msgstr "支撑顶部和模型之间的z间隙" + +msgid "Bottom Z distance" +msgstr "底部Z距离" + +msgid "The z gap between the bottom support interface and object" +msgstr "支撑生成于模型表面时,支撑面底部和模型之间的z间隙" + +msgid "Support/raft base" +msgstr "支撑/筏层主体" + +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "" +"打印支撑主体和筏层的耗材丝。\"缺省\"代表不指定特定的耗材丝,并使用当前耗材" + +msgid "Avoid interface filament for base" +msgstr "界面材料不用于主体" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "避免使用支撑界面材料打印支撑主体。" + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "支撑的线宽。如果以%表示,它将基于喷嘴直径来计算。" + +msgid "Interface use loop pattern" +msgstr "接触面采用圈形走线。" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "使用圈形走线覆盖顶部接触面。默认关闭。" + +msgid "Support/raft interface" +msgstr "支撑/筏层界面" + +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "打印支撑接触面的耗材丝。\"缺省\"代表不指定特定的耗材丝,并使用当前耗材" + +msgid "Top interface layers" +msgstr "顶部接触面层数" + +msgid "Number of top interface layers" +msgstr "顶部接触面层数" + +msgid "Bottom interface layers" +msgstr "底部接触面层数" + +msgid "Number of bottom interface layers" +msgstr "底部界面层的数量" + +msgid "Same as top" +msgstr "和顶部相同" + +msgid "Top interface spacing" +msgstr "顶部接触面线距" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "接触面的线距。0代表实心接触面。" + +msgid "Bottom interface spacing" +msgstr "底部接触面线距" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "底部接触面走线的线距。0表示实心接触面。" + +msgid "Speed of support interface" +msgstr "支撑面速度" + +msgid "Base pattern" +msgstr "支撑主体图案" + +msgid "Line pattern of support" +msgstr "支撑走线图案" + +msgid "Rectilinear grid" +msgstr "直线网格" + +msgid "Hollow" +msgstr "空心" + +msgid "Interface pattern" +msgstr "支撑面图案" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"支撑接触面的走线图案。非可溶支撑接触面的缺省图案为直线,可溶支撑接触面的缺省" +"图案为同心。" + +msgid "Rectilinear Interlaced" +msgstr "交叠的直线" + +msgid "Base pattern spacing" +msgstr "主体图案线距" + +msgid "Spacing between support lines" +msgstr "支撑线距" + +msgid "Normal Support expansion" +msgstr "普通支撑拓展" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "在水平方向对普通支撑进行拓展(+)或收缩(-)" + +msgid "Speed of support" +msgstr "支撑打印速度" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"支撑物的样式和形状。对于普通支撑,将支撑投射到一个规则的网格中,将创建更稳定" +"的支撑(默认),而紧贴的支撑塔将节省材料并减少物体的瑕疵。\n" +"对于树形支撑,苗条树将更激进地合并树枝,并节省大量的材料;粗壮树会产生更大更" +"强壮的支撑结构,但用料更多;而混合树是苗条树和普通支撑的结合,它会在大的平面" +"悬垂下创建与正常支撑类似的结构(默认)。" + +msgid "Snug" +msgstr "紧贴" + +msgid "Tree Slim" +msgstr "苗条树" + +msgid "Tree Strong" +msgstr "粗壮树" + +msgid "Tree Hybrid" +msgstr "混合树" + +msgid "Organic" +msgstr "有机树" + +msgid "Independent support layer height" +msgstr "支撑独立层高" + +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"支撑层使用与对象层独立的层高。这是为了支持自定义z-gap并且节省打印时间。当擦料" +"塔被启用时,这个选项将无效。" + +msgid "Threshold angle" +msgstr "阈值角度" + +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "将会为悬垂角度低于阈值的模型表面生成支撑。" + +msgid "Tree support branch angle" +msgstr "树状支撑分支角度" + +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"此设置确定了允许树状支撑的最大悬垂角度。如果角度增加,可以更水平地打印分支," +"使它们可以到达更远的地方。" + +msgid "Preferred Branch Angle" +msgstr "首选分支角度" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"分支的首选角度,每当它们不必避开模型之时。使用小的角度使之更垂直、更稳定。使" +"用大的角度使之更快地合并。" + +msgid "Tree support branch distance" +msgstr "树状支撑分支距离" + +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "此设置确定了树状支撑的相邻节点之间的距离。" + +msgid "Branch Density" +msgstr "分支密度" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"用于调整分支尖端所生成的支撑结构的密度。值越大悬垂越好,但更难拆支撑,因此," +"如果需要密集的接触面,建议启用顶部接触面相关参数,而不是较高的分支密度。" + +msgid "Adaptive layer height" +msgstr "自适应层高" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "启用此选项将自动计算(除第一层外)树状支撑的层高。" + +msgid "Auto brim width" +msgstr "自动裙边宽度" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "启用此选项意味着树状支撑的裙边宽度将自动计算自动计算" + +msgid "Tree support brim width" +msgstr "树状支撑裙边宽度" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "从树状支撑分支到最外层裙边线的距离" + +msgid "Tip Diameter" +msgstr "尖端直径" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "Organic支撑分支的尖端直径" + +msgid "Tree support branch diameter" +msgstr "树状支撑分支直径" + +msgid "This setting determines the initial diameter of support nodes." +msgstr "此设置确定了树状支撑节点的初始直径。" + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "分支直径的角度" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"分支直径的角度,随着分支向底部逐渐变厚。如果角度为0,分支将在其长度上拥有均匀" +"的厚度。一点角度可以增加organic的稳定性。" + +msgid "Branch Diameter with double walls" +msgstr "分支直径双层墙" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"该值大于以分支直径得到的圆形面积时,将打印双层墙,以保持稳定性。如不使用双层" +"墙,请将该值设置为0。" + +msgid "Support wall loops" +msgstr "支撑外墙层数" + +msgid "This setting specify the count of walls around support" +msgstr "此设置指定了支撑的外墙层数" + +msgid "Tree support with infill" +msgstr "树状支撑生成填充" + +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "这个设置决定是否为树状支撑内部的空腔生成填充。" + +msgid "Activate temperature control" +msgstr "激活温度控制" + +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"启用该选项以控制打印仓温度,这将会在\"machine_start_gcode" +"\"之前添加一个M191命令。\n" +"G-code命令:M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "机箱温度" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" +"更高的腔温可以帮助抑制或减少翘曲,同时可能会提高高温材料(如ABS、ASA、PC、PA" +"等)的层间粘合强度。与此同时,ABS和ASA的空气过滤性能会变差。而对于PLA、PETG、" +"TPU、PVA等低温材料,为了避免堵塞,实际的腔温不应该过高,因此强烈建议使用0(表" +"示关闭)。" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "除首层外的其它层的喷嘴温度" + +msgid "Detect thin wall" +msgstr "检查薄壁" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"检查无法容纳两条走线的薄壁。使用单条走线打印。可能会打地不是很好,因为走线不" +"再闭合。" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "换料时插入的G-code,包括T命令。" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "当挤出类型改变时会插入此G-code" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "顶面的线宽。如果以%表示,它将基于喷嘴直径来计算。" + +msgid "Speed of top surface infill which is solid" +msgstr "顶面实心填充的速度" + +msgid "Top shell layers" +msgstr "顶部壳体层数" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"顶部壳体实心层层数,包括顶面。当由该层数计算的厚度小于顶部壳体厚度,切片时会" +"增加顶部壳体的层数" + +msgid "Top solid layers" +msgstr "顶部壳体层数" + +msgid "Top shell thickness" +msgstr "顶部壳体厚度" + +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"如果由顶部壳体层数算出的厚度小于这个数值,那么切片时将自动增加顶部壳体层数。" +"这能够避免当层高很小时,顶部壳体过薄。0表示关闭这个设置,同时顶部壳体的厚度完" +"全由顶部壳体层数决定" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "空驶的速度。空驶是无挤出量的快速移动。" + +msgid "Wipe while retracting" +msgstr "回抽时擦拭" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"当回抽时,让喷嘴沿着前面的走线方向继续移动,清除掉喷嘴上的漏料。这能够避免空" +"驶结束打印新的区域时产生斑点。" + +msgid "Wipe Distance" +msgstr "擦拭距离" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" +"喷嘴在回抽时将沿着最后路径移动的距离\n" +"\n" +"根据擦拭操作的距离以及挤出机/耗材丝回抽的速度和长度,可能需要执行额外的回抽动" +"作以收回剩余的丝材。\n" +"\n" +"在下方的擦拭前回抽量设置中输入一个数值,将在擦拭动作之前执行任何超出部分的回" +"抽,否则超出部分的回抽将在擦拭之后执行。" + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"擦拭塔可以用来清理喷嘴上的残留料和让喷嘴内部的腔压达到稳定状态,以避免打印物" +"体时出现外观瑕疵。" + +msgid "Purging volumes" +msgstr "冲刷体积" + +msgid "Flush multiplier" +msgstr "冲刷量乘数" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "实际冲刷量等于冲刷量乘数乘以表格单元中的冲刷量" + +msgid "Prime volume" +msgstr "清理量" + +msgid "The volume of material to prime extruder on tower." +msgstr "擦拭塔上的清理量" + +msgid "Width of prime tower" +msgstr "擦拭塔宽度" + +msgid "Wipe tower rotation angle" +msgstr "擦拭塔旋转角度" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "擦拭塔相对于x轴的旋转角度" + +msgid "Stabilization cone apex angle" +msgstr "稳定锥体顶角" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "塔锥体顶角的角度,用于稳定擦拭塔。角度越大,底座越宽。" + +msgid "Wipe tower purge lines spacing" +msgstr "擦拭塔冲刷线间距" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "擦拭塔上冲刷线的间距" + +msgid "Maximum wipe tower print speed" +msgstr "擦拭塔最大打印速度" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" +"擦拭塔冲刷和稀疏层的最大打印速度。当冲刷时,如果稀疏填充速度或从耗材最大体积" +"速度计算出的速度较低,则使用最低速度。\n" +"\n" +"当打印稀疏层时,如果内墙速度或从耗材最大体积速度计算出的速度较低,则使用最低" +"速度。\n" +"\n" +"增加此速度可能会影响塔的稳定性,同时增加喷嘴与擦拭塔上可能形成的任何斑点碰撞" +"的力。\n" +"\n" +"在将此参数增加到默认值90mm/sec之外之前,请确保您的打印机可以可靠地在增加的速" +"度下桥接,并且换料时的滴漏得到了很好的控制。\n" +"\n" +"对于擦拭塔外墙,无论此设置如何,都使用内墙速度。" + +msgid "Wipe tower extruder" +msgstr "擦拭塔挤出机" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"打印擦拭塔周长时使用的挤出机。设置为0将使用唯一的挤出机(尽量使用不可溶的材" +"料)。" + +msgid "Purging volumes - load/unload volumes" +msgstr "清理量 - 加载/卸载量" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"此矢量可保存所需的体积,用于更改每个擦拭塔上工具所使用的from/to体积 。这些值" +"用于简化完全冲刷体积的创建。" + +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"换料后的过渡料会被用来打印对象的填充。这样可以减少材料浪费和缩短打印时间,但" +"是如果对象的内外墙是采用透明材料打印的,则可以从模型外观上看到内部的混色过渡" +"料。该功能只有在启用料塔的时候才生效。" + +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"换料后的过渡料会被用来打印对象的支撑。这样可以减少材料浪费以及缩短打印时间。" +"该功能只有在启用料塔的时候才生效。" + +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"换料后的过渡料会被用来打印这个对象。这样可以减少材料浪费和缩短打印时间,但是" +"这个对象的外观会是混色的。该功能只有在启用料塔的时候才生效。" + +msgid "Maximal bridging distance" +msgstr "最大桥接距离" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "稀疏填充剖面上支撑之间的最大距离。" + +msgid "X-Y hole compensation" +msgstr "X-Y 孔洞尺寸补偿" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"垂直的孔洞的尺寸将在X-Y方向收缩或拓展特定值。正值代表扩大孔洞。负值代表缩小孔" +"洞。这个功能通常在模型有装配问题时微调尺寸" + +msgid "X-Y contour compensation" +msgstr "X-Y 外轮廓尺寸补偿" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"模型外轮廓的尺寸将在X-Y方向收缩或拓展特定值。正值代表扩大。负值代表缩小。这个" +"功能通常在模型有装配问题时微调尺寸" + +msgid "Convert holes to polyholes" +msgstr "将圆孔转换为多边型孔" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"搜索跨越多层的近似圆形孔,并将几何形状转换为多边形孔。使用喷嘴尺寸和(最大)" +"直径来计算多边形孔。\n" +"参见http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "多边型孔检测边缘" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"点到圆半径的最大偏差。\n" +"由于圆柱体通常被导出为大小不同的三角形,因此点可能不在圆周上。\n" +"此设置允许您有一些余地来扩大检测范围。\n" +"以毫米或半径的百分比表示。" + +msgid "Polyhole twist" +msgstr "扭曲多边型孔" + +msgid "Rotate the polyhole every layer." +msgstr "按层旋转多边形孔。" + +msgid "G-code thumbnails" +msgstr "G-code缩略图尺寸" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"将被存储到.gcode和.sl1/.sl1s文件中的图片尺寸,格式如下:\"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "G-code缩略图的格式" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "G-Code 缩略图格式: PNG 质量最佳,JPG 尺寸最小,QOI 用于低内存固件" + +msgid "Use relative E distances" +msgstr "使用相对E距离" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"经典墙生成器产生的墙走线具有一致的挤出宽度,对狭窄区域使用填缝。Arachne引擎则" +"产生变线宽的墙走线" + +msgid "Classic" +msgstr "经典" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "墙过渡长度" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"当零件逐渐变薄导致墙的层数发生变化时,需要在过渡段分配一定的空间来分割和连接" +"墙走线。参数值表示为相对于喷嘴直径的百分比" + +msgid "Wall transitioning filter margin" +msgstr "墙过渡过滤间距" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"防止特定厚度变化规律的局部在多一层墙和少一层墙之间来回转换。这个参数将挤压宽" +"度的范围扩大到[墙最小宽度-参数值, 2*墙最小宽度+参数值]。增大参数可以减少转换" +"的次数,从而减少挤出开始/停止和空驶的时间。然而,大的挤出宽度变化会导致过挤出" +"或欠挤出的问题。参数值表示为相对于喷嘴直径的百分比" + +msgid "Wall transitioning threshold angle" +msgstr "墙过渡阈值角度" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"何时在偶数和奇数墙层数之间创建过渡段。角度大于这个阈值的楔形将不创建过渡段," +"并且不会在楔形中心打印墙走线以填补剩余空间。减小这个数值能减少中心墙走线的数" +"量和长度,但可能会导致间隙或者过挤出" + +msgid "Wall distribution count" +msgstr "墙分布计数" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"从中心开始计算的墙层数,线宽变化需要分布在这些墙走线上。较低的数值意味着外墙" +"宽度更不易被改变" + +msgid "Minimum feature size" +msgstr "最小特征尺寸" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"薄壁特征的最小厚度。比这个数值还薄的特征将不被打印,而比最小特征厚度还厚的特" +"征将被加宽到墙最小宽度。参数值表示为相对喷嘴直径的百分比" + +msgid "Minimum wall length" +msgstr "最小允许的墙长度" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" +"调整这个值以省略打印短的、未闭合的墙,这些可能会增加打印时间。设置较高的值将" +"移除更多和更长的墙。\n" +"\n" +"注意:底部和顶部表面不会受到这个值的影响,以防止模型外部出现肉眼可见间隙。调" +"整下面的高级设置中的“单层墙阈值”来调整什么被认为是顶部表面的敏感度。只有当这" +"个设置高于默认值0.5,或者启用了单层顶部表面时,“单层墙阈值”才会显示。" + +msgid "First layer minimum wall width" +msgstr "首层墙最小线宽" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"应用于首层的墙最小线宽,建议设置与喷嘴尺寸相同。这种调整有助于增强附着力。" + +msgid "Minimum wall width" +msgstr "墙最小线宽" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"用于替换模型细小特征(根据最小特征尺寸)的墙线宽。如果墙最小线宽小于最小特征" +"的厚度,则墙将变得和特征本身一样厚。参数值表示为相对喷嘴直径的百分比" + +msgid "Detect narrow internal solid infill" +msgstr "识别狭窄内部实心填充" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"此选项用于自动识别内部狭窄的实心填充。开启后,将对狭窄实心区域使用同心填充加" +"快打印速度。否则使用默认的直线填充。" + +msgid "invalid value " +msgstr "非法的值 " + +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "旋转花瓶模式下非法的值" + +msgid "too large line width " +msgstr "线宽过大" + +msgid " not in range " +msgstr " 不在合理的区间" + +msgid "Minimum save" +msgstr "最小保存" + +msgid "export 3mf with minimum size." +msgstr "以最小尺寸导出3mf。" + +msgid "No check" +msgstr "不要检查" + +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "不要运行任何有效性检查,如gcode路径冲突检查。" + +msgid "Ensure on bed" +msgstr "确保在热床上" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "当物体部分位于热床的下方时,将其提升到热床的上方。默认情况下禁用" + +msgid "Orient Options" +msgstr "方向选项" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "方向选项:0-禁用,1-启用,其他-自动" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "绕Z轴的旋转角度(以度为单位)。" + +msgid "Rotate around Y" +msgstr "绕Y旋转" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "绕Y轴的旋转角度(以度为单位)" + +msgid "Data directory" +msgstr "数据目录" + +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"在给定目录加载和存储设置。这对于维护不同的配置文件或包括网络存储中的配置非常" +"有用。" + +msgid "Load custom gcode" +msgstr "加载自定义G-code" + +msgid "Load custom gcode from json" +msgstr "从json文件加载自定义G-code" + +msgid "Current z-hop" +msgstr "" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "" + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" + +msgid "Extra deretraction" +msgstr "" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" + +msgid "Current extruder" +msgstr "" + +msgid "Zero-based index of currently used extruder." +msgstr "" + +msgid "Current object index" +msgstr "" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" + +msgid "Has wipe tower" +msgstr "" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "" + +msgid "Initial extruder" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" + +msgid "Initial tool" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" + +msgid "Is extruder used?" +msgstr "" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" + +msgid "Volume per extruder" +msgstr "" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" + +msgid "Total toolchanges" +msgstr "" + +msgid "Number of toolchanges during the print." +msgstr "" + +msgid "Total volume" +msgstr "" + +msgid "Total volume of filament used during the entire print." +msgstr "" + +msgid "Weight per extruder" +msgstr "" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" + +msgid "Total weight" +msgstr "" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" + +msgid "Total layer count" +msgstr "" + +msgid "Number of layers in the entire print." +msgstr "" + +msgid "Number of objects" +msgstr "" + +msgid "Total number of objects in the print." +msgstr "" + +msgid "Number of instances" +msgstr "" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" + +msgid "Scale per object" +msgstr "" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" + +msgid "Input filename without extension" +msgstr "" + +msgid "Source filename of the first object, without extension." +msgstr "" + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" + +msgid "First layer convex hull" +msgstr "" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" + +msgid "Bottom-left corner of first layer bounding box" +msgstr "第一层边界框的左下角" + +msgid "Top-right corner of first layer bounding box" +msgstr "第一层边界框的右上角" + +msgid "Size of the first layer bounding box" +msgstr "第一层边界框" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "热床边界框的左下角" + +msgid "Top-right corner of print bed bounding box" +msgstr "热床边界框的右上角" + +msgid "Size of the print bed bounding box" +msgstr "热床边界框" + +msgid "Timestamp" +msgstr "时间戳" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "包含当前时间的字符串,格式为yyyyMMdd-hhmmss。" + +msgid "Day" +msgstr "日" + +msgid "Hour" +msgstr "时" + +msgid "Minute" +msgstr "分" + +msgid "Print preset name" +msgstr "打印预设名称" + +msgid "Name of the print preset used for slicing." +msgstr "用于切片的打印预设的名称。" + +msgid "Filament preset name" +msgstr "打印材料预设名称" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "用于切片的打印材料预设的名称。该变量是一个向量,包含每个挤出机的名称。" + +msgid "Printer preset name" +msgstr "打印机预设名称" + +msgid "Name of the printer preset used for slicing." +msgstr "用于切片的打印机预设的名称。" + +msgid "Physical printer name" +msgstr "物理打印机名称" + +msgid "Name of the physical printer used for slicing." +msgstr "用于切片的物理打印机的名称。" + +msgid "Layer number" +msgstr "层编号" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "当前层编号。从1开始编号(即第一层编号为1)。" + +msgid "Layer z" +msgstr "" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" + +msgid "Maximal layer z" +msgstr "" + +msgid "Height of the last layer above the print bed." +msgstr "" + +msgid "Filament extruder ID" +msgstr "" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "" + +msgid "Error in zip archive" +msgstr "zip文件中存在错误" + +msgid "Generating walls" +msgstr "生成内外墙" + +msgid "Generating infill regions" +msgstr "正在生成填充区域" + +msgid "Generating infill toolpath" +msgstr "正在生成填充走线" + +msgid "Detect overhangs for auto-lift" +msgstr "探测悬空区域为自动抬升做准备" + +msgid "Generating support" +msgstr "正在生成支撑" + +msgid "Checking support necessity" +msgstr "正在检查支撑必要性" + +msgid "floating regions" +msgstr "浮空区域" + +msgid "floating cantilever" +msgstr "浮空悬臂" + +msgid "large overhangs" +msgstr "大面积悬空" + +#, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "似乎对象%s有%s。请重新调整对象的方向或启用支持生成。" + +msgid "Optimizing toolpath" +msgstr "正在优化走线" + +msgid "Slicing mesh" +msgstr "正在切片网格" + +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"没有检测到层。您可能需要修复STL文件,或检查模型尺寸、厚度等,之后再重试。\n" + +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"对象的XY尺寸补偿不会生效,因为在此对象上做过涂色操作。\n" +"XY尺寸补偿不能与涂色功能一起使用。" + +#, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "支撑:正在生成层%d的走线路径" + +msgid "Support: detect overhangs" +msgstr "支撑:正在检测悬空面" + +msgid "Support: generate contact points" +msgstr "支撑:正在生成接触点" + +msgid "Support: propagate branches" +msgstr "支撑:正在生长树枝" + +msgid "Support: draw polygons" +msgstr "支撑:正在生成多边形" + +msgid "Support: generate toolpath" +msgstr "支撑:正在生成走线路径" + +#, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "支撑:正在生成层%d的多边形" + +#, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "支撑:正在修补层%d的空洞" + +#, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "支撑:正在生长层%d的树枝" + +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "未知的文件格式。输入文件的扩展名必须为.stl、.obj 或 .amf(.xml)。" + +msgid "Loading of a model file failed." +msgstr "加载模型文件失败。" + +msgid "The supplied file couldn't be read because it's empty" +msgstr "无法读取提供的文件,因为该文件为空。" + +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "未知的文件格式。输入文件的扩展名必须为.3mf或.zip .amf。" + +msgid "Canceled" +msgstr "已取消" + +msgid "load_obj: failed to parse" +msgstr "加载对象:无法分析" + +msgid "load mtl in obj: failed to parse" +msgstr "" + +msgid "The file contains polygons with more than 4 vertices." +msgstr "该文件包含顶点超过4个的多边形。" + +msgid "The file contains polygons with less than 2 vertices." +msgstr "该文件包含顶点少于2个的多边形。" + +msgid "The file contains invalid vertex index." +msgstr "文件包含无效的顶点索引。" + +msgid "This OBJ file couldn't be read because it's empty." +msgstr "无法读取此OBJ文件,因为它是空的。" + +msgid "Flow Rate Calibration" +msgstr "流量比例校准" + +msgid "Max Volumetric Speed Calibration" +msgstr "最大体积速度校准" + +msgid "Manage Result" +msgstr "管理结果" + +msgid "Manual Calibration" +msgstr "手动校准" + +msgid "Result can be read by human eyes." +msgstr "结果可由人眼读取。" + +msgid "Auto-Calibration" +msgstr "自动校准" + +msgid "We would use Lidar to read the calibration result" +msgstr "我们将使用激光雷达来读取校准结果。" + +msgid "Prev" +msgstr "上一个" + +msgid "Recalibration" +msgstr "重新校准" + +msgid "Calibrate" +msgstr "校准" + +msgid "Finish" +msgstr "完成" + +msgid "How to use calibration result?" +msgstr "如何使用校准结果?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "您可以在材料编辑中更改流量动态校准因子。" + +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"打印机当前的固件版本不支持校准。\n" +"请升级打印机固件。" + +msgid "Calibration not supported" +msgstr "不支持校准" + +msgid "Error desc" +msgstr "错误描述" + +msgid "Extra info" +msgstr "额外信息" + +msgid "Flow Dynamics" +msgstr "动态流量" + +msgid "Flow Rate" +msgstr "流量比例" + +msgid "Max Volumetric Speed" +msgstr "最大容积速度" + +#, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"请输入有效值:\n" +"起始值:>= %.1f\n" +"结束值:<= %.1f\n" +"结束值:> 起始值\n" +"步距:>= %.3f)" + +msgid "The name cannot be empty." +msgstr "名称不能为空。" + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "未找到选定的预设:%s。" + +msgid "The name cannot be the same as the system preset name." +msgstr "名称不能与系统预设名称相同。" + +msgid "The name is the same as another existing preset name" +msgstr "该名称与另一个现有预设名称相同。" + +msgid "create new preset failed." +msgstr "创建新预设失败" + +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "您确定要取消当前的校准并返回主页吗?" + +msgid "No Printer Connected!" +msgstr "没有连接打印机!" + +msgid "Printer is not connected yet." +msgstr "打印机尚未连接。" + +msgid "Please select filament to calibrate." +msgstr "请选择要校准的耗材丝。" + +msgid "The input value size must be 3." +msgstr "输入值大小必须为3。" + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" +"该机型每个喷嘴最多只能保存16个历史结果。您可以删除先已有历史结果再开始校准。" +"或者您可以直接开始校准,但是无法创建新的校准历史结果。您仍继续校准吗?" + +msgid "Connecting to printer..." +msgstr "正在连接打印机..." + +msgid "The machine has been connected and is currently in working mode" +msgstr "设备已连接,当前处于工作模式" + +msgid "The failed test result has been dropped." +msgstr "测试失败的结果已被删除。" + +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "动态流量校准的结果已保存至打印机。" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" +"已经存在一个具有相同名称的历史校准结果:%s。相同名称的结果只会保存一个。您确" +"定要覆盖历史结果吗?" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "该机型每个喷嘴最多只能保存%d个历史结果, 该结果将不会被保存" + +msgid "Internal Error" +msgstr "内部错误" + +msgid "Please select at least one filament for calibration" +msgstr "请至少选择一种材料进行校准。" + +msgid "Flow rate calibration result has been saved to preset" +msgstr "流量比例校准结果已保存到预设" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "最大体积速度校准结果已保存到预设值" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "在什么情况下需要进行动态流量校准" + +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"我们现在已经为不同的打印材料添加了自动校准功能,该功能是完全自动化的,并且结" +"果将保存在打印机中以供将来使用。您只需要在以下有限情况下进行校准:\n" +"1. 如果您引入了不同品牌/型号的新打印材料,或者打印材料受潮;\n" +"2. 如果喷嘴磨损或更换了新的喷嘴;\n" +"3. 如果您在打印材料设置中更改了最大体积速度或打印温度。" + +msgid "About this calibration" +msgstr "关于此校准" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" +"请从我们的wiki中找到动态流量校准的详细信息。\n" +"\n" +"通常情况下,校准是不必要的。当您开始单色/单材料打印,并在打印开始菜单中勾选" +"了“动态流量校准”选项时,打印机将按照旧的方式,在打印前校准丝料;当您开始多色/" +"多材料打印时,打印机将在每次换丝料时使用默认的补偿参数,这在大多数情况下会产" +"生良好的效果。\n" +"\n" +"有几种情况可能导致校准结果不可靠,例如打印板的的附着力不足。清洗打印板或者使" +"用胶水可以增强打印板附着力。您可以在我们的维基上找到更多相关信息。\n" +"\n" +"在我们的测试中,校准结果有约10%的波动,这可能导致每次校准的结果略有不同。我们" +"仍在调查根本原因,并通过新的更新进行改进。" + +msgid "When to use Flow Rate Calibration" +msgstr "何时使用流量率校准" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"使用流量动态校准后,仍可能出现一些挤出问题,例如:\n" +"1. 过度挤出:打印物体上有过多的材料,形成凸起或小球,或者层次看起来比预期的厚" +"而且不均匀。\n" +"2. 不足挤出:层次非常薄,填充强度不足,或者在缓慢打印时模型顶层有缺陷。\n" +"3. 表面质量差:打印的表面看起来粗糙或不均匀。\n" +"4. 结构稳固性差:打印件容易断裂,或者没有应有的稳固性。" + +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"此外,对于像用于遥控飞机的轻质发泡PLA(LW-PLA)这样的发泡材料,流量率校准非常" +"重要。这些材料在加热时会大幅膨胀,而校准提供了有用的流量率参考。" + +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"流量率校准测量预期挤出体积与实际挤出体积之间的比率。默认设置在Bambu Lab打印机" +"和官方材料上表现良好,因为它们已经进行了预先校准和微调。对于普通的材料,通常" +"情况下,您不需要执行流量率校准,除非在完成其他校准后仍然看到上述列出的缺陷。" +"如需更多详细信息,请查阅wiki文章。" + +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"自动流量率校准采用Bambu Lab的微型激光雷达技术,直接测量校准图案。然而,请注" +"意,这种方法的功效和准确性可能会因特定类型的材料而受影响。特别是透明或半透" +"明、带有闪光颗粒或具有高反射表面的材料可能不适合这种校准,并可能产生不理想的" +"结果。\n" +"\n" +"校准结果可能因每次校准或材料的不同而有所不同。我们仍在通过固件更新不断提高这" +"种校准的准确性和兼容性。\n" +"\n" +"注意:流量率校准是一项高级的过程,只有完全理解其目的和影响的人才应尝试。错误" +"的使用可能导致打印质量不佳或损坏打印机。请确保在执行之前仔细阅读和理解此过" +"程。" + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "当您需要最大体积速度校准时" + +msgid "Over-extrusion or under extrusion" +msgstr "过度挤压或挤压不足" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "使用以下选项打印时,建议进行最大体积速度校准:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "具有显著热收缩/膨胀的材料,例如..." + +msgid "materials with inaccurate filament diameter" +msgstr "耗材直径不准确的材料" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "我们找到了最佳的流量动态校准因子。" + +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "部分校准失败!您可以清理平台,然后重试。失败的测试结果将被丢弃。" + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "*我们建议您在名称中添加品牌、材料、类型,甚至湿度水平。" + +msgid "Failed" +msgstr "失败" + +msgid "Please enter the name you want to save to printer." +msgstr "请输入要保存到打印机的名称。" + +msgid "The name cannot exceed 40 characters." +msgstr "名称不能超过40个字符。" + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "相同名称的结果只会保存一个。您确定要覆盖其他结果吗?" + +msgid "Please find the best line on your plate" +msgstr "请在您的打印板上找到最佳线条" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "请找到具有完美挤出度的角落" + +msgid "Input Value" +msgstr "输入值" + +msgid "Save to Filament Preset" +msgstr "保存到材料预设" + +msgid "Preset" +msgstr "预设" + +msgid "Record Factor" +msgstr "记录系数" + +msgid "We found the best flow ratio for you" +msgstr "我们为您找到了最佳流量比" + +msgid "Flow Ratio" +msgstr "流量比" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "请输入一个有效值(0.0<流量比<2.0)" + +msgid "Please enter the name of the preset you want to save." +msgstr "请输入要保存的预设的名称。" + +msgid "Calibration1" +msgstr "校准1" + +msgid "Calibration2" +msgstr "校准2" + +msgid "Please find the best object on your plate" +msgstr "请在你的盘里找到最好的对象" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "用最光滑的顶面填充块上方的值" + +msgid "Skip Calibration2" +msgstr "跳过校准2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "流量比:%s " + +msgid "Please choose a block with smoothest top surface" +msgstr "请选择顶部表面最光滑的块" + +msgid "Please choose a block with smoothest top surface." +msgstr "请选择顶部表面最光滑的块。" + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "请输入一个有效值(0<=最大容积速度<=60)" + +msgid "Calibration Type" +msgstr "校准类型" + +msgid "Complete Calibration" +msgstr "完整校准" + +msgid "Fine Calibration based on flow ratio" +msgstr "基于流量比的精细校准" + +msgid "Title" +msgstr "标题" + +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "将打印一份测试模型。在校准之前,请清理打印平台并将其放回热床上。" + +msgid "Printing Parameters" +msgstr "打印参数" + +msgid "Plate Type" +msgstr "热床类型" + +msgid "filament position" +msgstr "耗材丝位置" + +msgid "External Spool" +msgstr "外部线轴" + +msgid "Filament For Calibration" +msgstr "校准用耗材" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"校准材料提示:\n" +"-可以共享相同热床温度的材料\n" +"-不同的耗材品牌和系列(Brand = Bambu, Family = Basic, Matte)" + +msgid "Pattern" +msgstr "图案" + +msgid "Method" +msgstr "方法" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s 与 %s 不兼容" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "不支持TPU进行流量动态自动校准。" + +msgid "Connecting to printer" +msgstr "正在连接打印机" + +msgid "From k Value" +msgstr "起始k值" + +msgid "To k Value" +msgstr "结束k值" + +msgid "Step value" +msgstr "步进长度" + +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "喷嘴直径已从打印机设置同步" + +msgid "From Volumetric Speed" +msgstr "从体积速度" + +msgid "To Volumetric Speed" +msgstr "至体积速度" + +msgid "Flow Dynamics Calibration Result" +msgstr "动态流量校准结果" + +msgid "New" +msgstr "新建" + +msgid "No History Result" +msgstr "无历史结果" + +msgid "Success to get history result" +msgstr "成功获取历史结果" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "刷新历史流量动态校准记录" + +msgid "Action" +msgstr "操作" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "该机型每个喷嘴最多只能保存%d个历史结果" + +msgid "Edit Flow Dynamics Calibration" +msgstr "编辑动态流量校准" + +msgid "New Flow Dynamic Calibration" +msgstr "新建动态流量校准" + +msgid "Ok" +msgstr "确认" + +msgid "The filament must be selected." +msgstr "请选择材料" + +msgid "Network lookup" +msgstr "搜索网络" + +msgid "Address" +msgstr "地址" + +msgid "Hostname" +msgstr "主机名" + +msgid "Service name" +msgstr "服务名" + +msgid "OctoPrint version" +msgstr "OctoPrint版本" + +msgid "Searching for devices" +msgstr "正在查找设备" + +msgid "Finished" +msgstr "完成" + +msgid "Multiple resolved IP addresses" +msgstr "多个解析的IP地址" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" +"有几个IP地址可以解析到主机名 %1%。\n" +"请选择一个应该使用的地址。" + +msgid "PA Calibration" +msgstr "PA校准" + +msgid "DDE" +msgstr "近程挤出机" + +msgid "Bowden" +msgstr "远程挤出机" + +msgid "Extruder type" +msgstr "挤出机类型" + +msgid "PA Tower" +msgstr "PA塔" + +msgid "PA Line" +msgstr "划线模式" + +msgid "PA Pattern" +msgstr "V形模式" + +msgid "Start PA: " +msgstr "起始值" + +msgid "End PA: " +msgstr "结束值" + +msgid "PA step: " +msgstr "步距" + +msgid "Print numbers" +msgstr "打印数字" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"请输入有效值:\n" +"起始PA: >= 0.0\n" +"结束PA: > 起始PA\n" +"PA步距:>= 0.001)" + +msgid "Temperature calibration" +msgstr "温度校准" + +msgid "PLA" +msgstr "PLA" + +msgid "ABS/ASA" +msgstr "ABS/ASA" + +msgid "PETG" +msgstr "PETG" + +msgid "PCTG" +msgstr "PCTG" + +msgid "TPU" +msgstr "TPU" + +msgid "PA-CF" +msgstr "PA-CF" + +msgid "PET-CF" +msgstr "PET-CF" + +msgid "Filament type" +msgstr "耗材类型" + +msgid "Start temp: " +msgstr "起始温度: " + +msgid "End temp: " +msgstr "结束温度" + +msgid "Temp step: " +msgstr "温度步距" + +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"请输入有效值:\n" +"起始温度:<= 350\n" +"结束温度:>= 170\n" +"起始温度 > 结束温度 + 5)" + +msgid "Max volumetric speed test" +msgstr "最大体积流量速度测试" + +msgid "Start volumetric speed: " +msgstr "起始流量" + +msgid "End volumetric speed: " +msgstr "结束流量" + +msgid "step: " +msgstr "步距" + +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"请输入有效值:\n" +"起始 > 0\n" +"步距 >= 0\n" +"结束 > 起始 + 步距)" + +msgid "VFA test" +msgstr "VFA震纹测试" + +msgid "Start speed: " +msgstr "起始速度" + +msgid "End speed: " +msgstr "结束速度" + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"请输入有效值:\n" +"开始 > 10\n" +"步距 >= 0\n" +"结束 > 开始 + 步距)" + +msgid "Start retraction length: " +msgstr "起始回抽长度" + +msgid "End retraction length: " +msgstr "结束回抽长度" + +msgid "mm/mm" +msgstr "" + +msgid "Send G-Code to printer host" +msgstr "将G-Code发送到打印机" + +msgid "Upload to Printer Host with the following filename:" +msgstr "使用下列文件名上传到打印机:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "如有需要,请使用正斜杠( / )作为目录分隔符。" + +msgid "Please do not include the special characters #, *, and ;in filenames." +msgstr "请不要在文件名中包含特殊字符 #, *, 和 ;。" + +msgid "Upload to storage" +msgstr "上传到存储单位" + +msgid "Switch to Device tab after upload." +msgstr "上传后跳转到设备页。" + +#, c-format, boost-format +msgid "The filename '%s' contains special characters (#, *, or ;) which may cause issues.Do you wish to continue?" +msgstr "上传文件名\"%s\"有“#,*,;”特殊字符。您是否要继续?" + +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "上传文件名不以\"%s\"结尾。您是否要继续?" + +msgid "Upload" +msgstr "上传" + +msgid "Print host upload queue" +msgstr "打印主机上传队列" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "进程" + +msgid "Host" +msgstr "主机" + +msgctxt "OfFile" +msgid "Size" +msgstr "大小" + +msgid "Filename" +msgstr "文件名" + +msgid "Cancel selected" +msgstr "取消选中" + +msgid "Show error message" +msgstr "显示错误信息" + +msgid "Enqueued" +msgstr "已加入队列" + +msgid "Uploading" +msgstr "正在上传" + +msgid "Cancelling" +msgstr "取消中" + +msgid "Error uploading to print host" +msgstr "上传到打印机时错误" + +msgid "Unable to perform boolean operation on selected parts" +msgstr "无法对所选部件执行布尔运算" + +msgid "Mesh Boolean" +msgstr "布尔运算" + +msgid "Union" +msgstr "并集" + +msgid "Difference" +msgstr "差集" + +msgid "Intersection" +msgstr "交集" + +msgid "Source Volume" +msgstr "源体积" + +msgid "Tool Volume" +msgstr "工具体积" + +msgid "Subtract from" +msgstr "从中减去" + +msgid "Subtract with" +msgstr "与之相减" + +msgid "selected" +msgstr "已选中" + +msgid "Part 1" +msgstr "零件 1" + +msgid "Part 2" +msgstr "零件 2" + +msgid "Delete input" +msgstr "删除输入" + +msgid "Network Test" +msgstr "网络测试" + +msgid "Start Test Multi-Thread" +msgstr "多线程开始测试" + +msgid "Start Test Single-Thread" +msgstr "单线程开始测试" + +msgid "Export Log" +msgstr "输出日志" + +msgid "Snapmaker Orca Version:" +msgstr "Snapmaker Orca版本:" + +msgid "System Version:" +msgstr "系统版本:" + +msgid "DNS Server:" +msgstr "DNS服务:" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "测试Snapmaker Orca项目网站(GitHub)" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "测试Snapmaker Orca项目网站(GitHub)" + +msgid "Test Bing.com" +msgstr "测试 Bing.com" + +msgid "Test bing.com:" +msgstr "测试 Bing.com:" + +msgid "Log Info" +msgstr "日志信息" + +msgid "Select filament preset" +msgstr "选择材料预设" + +msgid "Create Filament" +msgstr "创建材料" + +msgid "Create Based on Current Filament" +msgstr "基于当前材料创建" + +msgid "Copy Current Filament Preset " +msgstr "复制当前材料预设" + +msgid "Basic Information" +msgstr "基本信息" + +msgid "Add Filament Preset under this filament" +msgstr "添加该材料的材料预设" + +msgid "We could create the filament presets for your following printer:" +msgstr "我们可以为您的以下打印机创建材料预设:" + +msgid "Select Vendor" +msgstr "选择供应商" + +msgid "Input Custom Vendor" +msgstr "输入自定义供应商" + +msgid "Can't find vendor I want" +msgstr "找不到我想要的供应商" + +msgid "Select Type" +msgstr "选择类型" + +msgid "Select Filament Preset" +msgstr "选择材料预设" + +msgid "Serial" +msgstr "系列" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "例如:Basic, Matte, Silk, Marble" + +msgid "Filament Preset" +msgstr "材料预设" + +msgid "Create" +msgstr "创建" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "未选择供应商,请重新选择供应商。" + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "未输入自定义供应商,请输入自定义供应商。" + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "“Bambu”或者“Generic”不能用于自定义材料的厂商" + +msgid "Filament type is not selected, please reselect type." +msgstr "未选择材料类型,请重新选择。" + +msgid "Filament serial is not inputed, please input serial." +msgstr "未输入材料系列,请输入材料系列。" + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "材料的供应商或系列输入中可能包含转义字符。请删除并重新输入。" + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "自定义供应商或系列中的所有输入都是空格。请重新输入。" + +msgid "The vendor can not be a number. Please re-enter." +msgstr "自定义供应商不能是数字。请重新输入。" + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "您还没有选择打印机或预设。请至少选择一个。" + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" +"您创建的耗材丝名字%s已经存在。\n" +"如果您继续创建,您创建的预设将以全名显示。您想继续吗?" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "以下一些现有预设未能成功创建:\n" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" +"\n" +"你想重写预设吗" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" +"我们将会把预设重命名为“供应商类型名 @ 您选择的打印机”\n" +"如果您希望为更多打印机添加预设,请前往打印机选择页面" + +msgid "Create Printer/Nozzle" +msgstr "创建打印机/喷嘴" + +msgid "Create Printer" +msgstr "创建打印机" + +msgid "Create Nozzle for Existing Printer" +msgstr "为现有打印机创建喷嘴" + +msgid "Create from Template" +msgstr "基于模板创建" + +msgid "Create Based on Current Printer" +msgstr "基于当前打印机创建" + +msgid "Import Preset" +msgstr "导入预设" + +msgid "Create Type" +msgstr "创建类型" + +msgid "The model is not found, place reselect vendor." +msgstr "该模型未找到,请重新选择供应商。" + +msgid "Select Model" +msgstr "选择型号" + +msgid "Select Printer" +msgstr "选择打印机" + +msgid "Input Custom Model" +msgstr "输入自定义型号" + +msgid "Can't find my printer model" +msgstr "不能找到我的打印机模型" + +msgid "Rectangle" +msgstr "矩形" + +msgid "Printable Space" +msgstr "可打印形状" + +msgid "Hot Bed STL" +msgstr "热床STL模型" + +msgid "Load stl" +msgstr "加载stl" + +msgid "Hot Bed SVG" +msgstr "热床SVG图片" + +msgid "Load svg" +msgstr "加载svg" + +msgid "Max Print Height" +msgstr "最大打印高度" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "文件超过 %d MB,请重新导入。" + +msgid "Exception in obtaining file size, please import again." +msgstr "获取文件大小异常,请重新导入。" + +msgid "Preset path is not find, please reselect vendor." +msgstr "预设路径未找到,请重新选择供应商。" + +msgid "The printer model was not found, please reselect." +msgstr "未找到打印机型号,请重新选择。" + +msgid "The nozzle diameter is not found, place reselect." +msgstr "未找到喷嘴直径,请重新选择。" + +msgid "The printer preset is not found, place reselect." +msgstr "打印机预设未找到,请重新选择。" + +msgid "Printer Preset" +msgstr "打印机预设" + +msgid "Filament Preset Template" +msgstr "材料预设模板" + +msgid "Deselect All" +msgstr "全部取消选中" + +msgid "Process Preset Template" +msgstr "工艺预设模板" + +msgid "Back Page 1" +msgstr "返回第一页" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "您尚未选择要基于哪个打印机预设来创建。请先选择打印机的供应商和型号。" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "您在第一页的可打印区域部分输入了非法输入。请检查后再创建。" + +msgid "The custom printer or model is not inputed, place input." +msgstr "自定义打印机或型号未输入,请输入。" + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" +"\"您创建的打印机预设已经有一个同名的预设。您想要覆盖它吗?\n" +"- 是:覆盖同名的打印机预设,具有相同预设名称的材料和工艺预设将被重新创建,没" +"有相同预设名称的材料和工艺预设将被保留。\n" +"- 取消:不创建预设,返回到创建界面。\"" + +msgid "You need to select at least one filament preset." +msgstr "您需要至少选择一个材料预设。" + +msgid "You need to select at least one process preset." +msgstr "您需要至少选择一个工艺预设。" + +msgid "Create filament presets failed. As follows:\n" +msgstr "创建材料预设失败。如下:\n" + +msgid "Create process presets failed. As follows:\n" +msgstr "创建工艺预设失败。如下:\n" + +msgid "Vendor is not find, please reselect." +msgstr "供应商未找到,请重新选择。" + +msgid "Current vendor has no models, please reselect." +msgstr "当前的供应商没有模型,请重新选择。" + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "您还没有选择供应商和模型,或者没有输入自定义供应商和模型。" + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "自定义打印机供应商或型号中可能有转义字符。请删除并重新输入。" + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "自定义打印机供应商或型号的所有输入都是空格。请重新输入。" + +msgid "Please check bed printable shape and origin input." +msgstr "请检查可打印区域和原点的输入。" + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "您尚未选择要更换喷嘴的打印机,请进行选择。" + +msgid "Create Printer Successful" +msgstr "创建打印机成功" + +msgid "Create Filament Successful" +msgstr "创建材料成功" + +msgid "Printer Created" +msgstr "打印机已创建" + +msgid "Please go to printer settings to edit your presets" +msgstr "请去打印机设置编辑您的预设" + +msgid "Filament Created" +msgstr "材料已创建" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" +"如果需要,请转到灯丝设置以编辑您的预设。\n" +"请注意喷嘴温度、热床温度和最大体积流量对打印质量有重大影响。请小心设置它们。" + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" +"\n" +"\n" +"Orca 检测到您没有启用同步用户预设功能,这可能会导致您在设备页面上无法成功设置" +"耗材丝。\n" +"点击“同步用户预设”以启用同步功能。" + +msgid "Printer Setting" +msgstr "打印机设置" + +msgid "Printer config bundle(.orca_printer)" +msgstr "打印机预设集(.orca_printer)" + +msgid "Filament bundle(.orca_filament)" +msgstr "材料预设集(.orca_filament)" + +msgid "Printer presets(.zip)" +msgstr "打印机预设(.zip)" + +msgid "Filament presets(.zip)" +msgstr "材料预设(.zip)" + +msgid "Process presets(.zip)" +msgstr "工艺预设(.zip)" + +msgid "initialize fail" +msgstr "初始化失败" + +msgid "add file fail" +msgstr "添加文件失败" + +msgid "add bundle structure file fail" +msgstr "添加预设集结构文件失败" + +msgid "finalize fail" +msgstr "写入失败" + +msgid "open zip written fail" +msgstr "打开zip写入失败" + +msgid "Export successful" +msgstr "导出成功" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" +"当前目录中已存在名为 '%s' 的文件夹。您要清除它并重新构建吗?\n" +"如果不清除,将会在文件夹名后添加时间后缀,您可以在创建后进行修改。" + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" +"打印机和属于打印机的所有的材料和工艺预设。\n" +"能与他人分享。" + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" +"用户材料预设集。\n" +"能与他人分享。" + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "仅显示发生了更改的打印机、材料和工艺预设的打印机名称。" + +msgid "Only display the filament names with changes to filament presets." +msgstr "仅显示发生了更改的材料预设的材料名称。" + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" +"只显示带有用户打印机预设的打印机名称,并且您选择的每个预设都将导出为一个ZIP文" +"件。" + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" +"只显示带有用户材料预设的材料名称,您选择的每个材料名称中的所有用户材料预设都" +"将导出为一个ZIP文件。" + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" +"只显示带有更改的工艺预设的打印机名称,您选择的每个打印机名称中的所有用户工艺" +"预设都将导出为一个ZIP文件。" + +msgid "Please select at least one printer or filament." +msgstr "请至少选择一种打印机或耗材丝。" + +msgid "Please select a type you want to export" +msgstr "请选择一个你想导出的类型" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "创建临时文件夹失败,请尝试重新导出配置文件。" + +msgid "Edit Filament" +msgstr "编辑材料" + +msgid "Filament presets under this filament" +msgstr "此材料下的所有材料预设" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" +"注意:如果在该材料下仅有的预设被删除,那么在退出对话框后该材料将被删除。" + +msgid "Presets inherited by other presets can not be deleted" +msgstr "被其他预设继承的预设不能被删除。" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "以下预设继承此预设。" + +msgid "Delete Preset" +msgstr "删除预设" + +msgid "Are you sure to delete the selected preset?" +msgstr "你确定要删除所选预设?" + +msgid "Delete preset" +msgstr "删除预设" + +msgid "+ Add Preset" +msgstr "+ 添加预设" + +msgid "Delete Filament" +msgstr "删除材料" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" +"删除材料后,附属的材料预设也会被一并删除。\n" +"如果该材料正在您的打印机上使用,请重新设置该槽位的材料信息。" + +msgid "Delete filament" +msgstr "删除材料" + +msgid "Add Preset" +msgstr "添加预设" + +msgid "Add preset for new printer" +msgstr "为新打印机添加预设" + +msgid "Copy preset from filament" +msgstr "从材料中复制预设" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "您选择的材料未找到材料预设,请重新选择。" + +msgid "[Delete Required]" +msgstr "[删除请求]" + +msgid "Edit Preset" +msgstr "编辑预设" + +msgid "For more information, please check out Wiki" +msgstr "了解更多信息,请参阅Wiki" + +msgid "Collapse" +msgstr "收起" + +msgid "Daily Tips" +msgstr "每日贴士" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "记忆中的喷嘴:%.1f %s" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "预设中的喷嘴直径与记忆的喷嘴直径不一致。您最近更换了喷嘴吗?" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "*使用 %s 材料和 %s 打印可能会导致喷嘴损坏" + +msgid "Need select printer" +msgstr "需要选择打印机" + +msgid "The start, end or step is not valid value." +msgstr "起始、结束或者步长输入值无效。" + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "无法标定:可能是标定值范围过大,或者是补偿过小" + +msgid "Physical Printer" +msgstr "物理打印机" + +msgid "Print Host upload" +msgstr "打印主机上传" + +msgid "Could not get a valid Printer Host reference" +msgstr "无法获取有效的打印机主机引用" + +msgid "Success!" +msgstr "成功!" + +msgid "Are you sure to log out?" +msgstr "您确定要登出吗?" + +msgid "Refresh Printers" +msgstr "刷新打印机" + +msgid "View print host webui in Device tab" +msgstr "在设备标签页中,查看打印机主机的WebUI" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "使用打印机主机的WebUI替换BambuLab设备页面" + +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "HTTPS CA文件是可选的。只有在使用自签名证书进行HTTPS连接时才需要。" + +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "证书文件 (*.crt,*.pem)|*.crt;*.pem|所有文件|*.*" + +msgid "Open CA certificate file" +msgstr "打开CA证书文件" + +#, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "在此系统上,%s 使用来自系统证书存储或密钥链的HTTPS证书。" + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "要使用自定义 CA 文件,请将您的 CA 文件导入到证书存储 / 密钥链中。" + +msgid "Login/Test" +msgstr "" + +msgid "Connection to printers connected via the print host failed." +msgstr "连接到通过打印主机连接的打印机失败。" + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "打印主机的类型不匹配:%s" + +msgid "Connection to AstroBox works correctly." +msgstr "与 AstroBox 的连接正常。" + +msgid "Could not connect to AstroBox" +msgstr "无法连接到 AstroBox。" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "请注意,需要至少 AstroBox 版本 1.1.0。" + +msgid "Connection to Duet works correctly." +msgstr "成功连接到 Duet 控制器。" + +msgid "Could not connect to Duet" +msgstr "无法连接到 Duet 控制器。" + +msgid "Unknown error occured" +msgstr "发生了未知错误。" + +msgid "Wrong password" +msgstr "密码错误。" + +msgid "Could not get resources to create a new connection" +msgstr "无法获取资源以创建新连接。" + +msgid "Upload not enabled on FlashAir card." +msgstr "FlashAir卡未启用上传。" + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "FlashAir连接正常,并启用了上传。" + +msgid "Could not connect to FlashAir" +msgstr "FlashAir 连接失败。" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "需要 FlashAir 固件版本为 2.00.02 或更高,并激活上传功能。" + +msgid "Connection to MKS works correctly." +msgstr "MKS的连接正常。" + +msgid "Could not connect to MKS" +msgstr "无法连接到MKS。" + +msgid "Connection to OctoPrint works correctly." +msgstr "成功连接到 OctoPrint。" + +msgid "Could not connect to OctoPrint" +msgstr "无法连接到OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "注意:至少需要 OctoPrint 版本 1.1.0。" + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "与 Prusa SL1 / SL1S 的连接正常。" + +msgid "Could not connect to Prusa SLA" +msgstr "无法连接到 Prusa SLA。" + +msgid "Connection to PrusaLink works correctly." +msgstr "连接到 PrusaLink 的连接正常。" + +msgid "Could not connect to PrusaLink" +msgstr "无法连接到 PrusaLink。" + +msgid "Storages found" +msgstr "已找到存储" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "%1%:只读" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "%1%:没有可用空间" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "上载失败。在%1%找不到合适的存储。" + +msgid "Connection to Prusa Connect works correctly." +msgstr "与Prusa Connect的连接工作正常。" + +msgid "Could not connect to Prusa Connect" +msgstr "无法连接到Prusa connect" + +msgid "Connection to Repetier works correctly." +msgstr "与 Repetier 的连接正常。" + +msgid "Could not connect to Repetier" +msgstr "无法连接到Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "注意:需要 Repetier 版本至少为 0.90.0。" + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP状态:%1%\n" +"消息体:\"%2%\"" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"主机响应解析失败。\n" +"消息体:\"%1%\"错误:\"%2%\"" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "主机打印机的枚举失败。消息体:\"%1%\"错误:\"%2%\"" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" +"0.2 mm 喷嘴的默认参数,层高小,层纹不明显,打印质量高,适合大部分常规打印场" +"景。" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" +"此为高质量参数,相比于此喷嘴的默认参数,打印速度、加速度较低,稀疏填充图案为" +"螺旋体,打印质量更高,但耗时更长。" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "相比于此喷嘴的默认参数,层高较大,层纹不明显,打印耗时稍短。" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "相比于此喷嘴的默认参数,层高较大,层纹稍显现,打印耗时较短。" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" +"相比于此喷嘴的默认参数,层高较小,几乎不显层纹,打印质量较高,但打印耗时较" +"长。" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"此为高质量参数,相比于此喷嘴的默认参数,层高较小,打印速度、加速度较低,稀疏" +"填充图案为螺旋体,几乎不显层纹,打印质量非常高,但打印耗时很长。" + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" +"相比于此喷嘴的默认参数,层高较小,几乎不显层纹,打印质量较高,但打印耗时较" +"长。" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"此为高质量参数,相比于此喷嘴的默认参数,层高较小,打印速度、加速度较低,稀疏" +"填充图案为螺旋体,几乎不显层纹,打印质量非常高,但打印耗时很长。" + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" +"0.4 mm 喷嘴的默认参数,层高常规,层纹一般,打印质量常规,适合大部分常规打印场" +"景。" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"此为强度参数,相比于此喷嘴的默认参数,墙层数较大,稀疏填充密度较高,打印件的" +"强度更高,但耗材用量更大,耗时更长。" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" +"相比于此喷嘴的默认参数,层高较大,层纹较明显,打印质量较低,部分模型的打印耗" +"时稍短。" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" +"相比于此喷嘴的默认参数,层高较大,层纹较明显,打印质量较低,部分模型的打印耗" +"时较短。" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"相比于此喷嘴的默认参数,层高较小,层纹较不明显,打印质量较高,但打印耗时较" +"长。" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" +"此为高质量参数,相比于此喷嘴的默认参数,层高较小,打印速度、加速度较低,稀疏" +"填充图案为螺旋体,层纹较不明显,打印质量较高,但打印耗时很长。" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"相比于此喷嘴的默认参数,层高较小,层纹更不明显,打印质量较高,但打印耗时较" +"长。" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" +"此为高质量参数,相比于此喷嘴的默认参数,层高较小,打印速度、加速度较低,稀疏" +"填充图案为螺旋体,层纹更不明显,打印质量很高,但打印耗时很长。" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" +"相比于此喷嘴的默认参数,层高较小,层纹更不明显,打印质量较高,但打印耗时较" +"长。" + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" +"0.6 mm 喷嘴的默认参数,层高较大,层纹明显,打印质量一般,打印耗时一般。" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" +"此为强度参数,相比于此喷嘴的默认参数,墙层数较大,稀疏填充密度较高,打印件的" +"强度更高,但耗材用量更大,耗时更长。" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" +"相比于此喷嘴的默认参数,层高较大,层纹较明显,打印质量较低,部分模型的打印耗" +"时较短。" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" +"相比于此喷嘴的默认参数,层高较大,层纹很明显,打印质量较低,部分模型的打印耗" +"时较短。" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" +"相比于此喷嘴的默认参数,层高较小,层纹较不明显,打印质量稍微较高,部分模型的" +"打印耗时较长。" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" +"相比于此喷嘴的默认参数,层高较小,层纹较不明显,打印质量较高,部分模型的打印" +"耗时较长。" + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" +"0.8 mm 喷嘴的默认参数,层高较大,层纹很明显,打印质量低,打印耗时一般。" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" +"相比于此喷嘴的默认参数,层高更大,层纹非常明显,打印质量较低,部分模型的打印" +"耗时较短。" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" +"相比于此喷嘴的默认参数,层高较大,层纹非常明显,打印质量较低,部分模型的打印" +"耗时较短。" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" +"相比于此喷嘴的默认参数,层高较小,层纹较不明显,打印质量稍微较高,部分模型的" +"打印耗时较长。" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" +"相比于此喷嘴的默认参数,层高较小,层纹较不明显,打印质量较高,部分模型的打印" +"耗时较长。" + +msgid "Connected to Obico successfully!" +msgstr "已成功连接到Obico" + +msgid "Could not connect to Obico" +msgstr "无法连接到Obico" + +msgid "Connected to SimplyPrint successfully!" +msgstr "已成功连接到SimplyPrint" + +msgid "Could not connect to SimplyPrint" +msgstr "无法连接到SimplyPrint" + +msgid "Internal error" +msgstr "内部错误" + +msgid "Unknown error" +msgstr "未知错误" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "尚未连接到SimplyPrint账户,前往连接选项来进行配置。" + +msgid "Connection to Flashforge works correctly." +msgstr "与Flashforge的连接工作正常。" + +msgid "Could not connect to Flashforge" +msgstr "无法连接至Flashforge" + +msgid "The provided state is not correct." +msgstr "提供的状态不正确。" + +msgid "Please give the required permissions when authorizing this application." +msgstr "在您为此应用程序进行授权时,请允许所需的权限。" + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "在尝试登录时发生了异常,请重试。" + +msgid "User cancelled." +msgstr "用户已取消。" + +msgid "Nozzle Bind" +msgstr "喷嘴信息绑定" + +msgid "The target machine model has been detected as" +msgstr "检测目标机型为" + +msgid "Please bind the nozzle information" +msgstr "请绑定喷嘴信息" + +msgid "Machine Disconnected" +msgstr "设备断联" + +msgid "Connection has been disconnected and recovery attempt failed. Please reconnect." +msgstr "设备已断联,且尝试重连失败,请尝试重新连接" + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" +"精准外墙尺寸\n" +"您知道吗?您可以启用精准外墙尺寸选项,提高精度和层一致性。" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" +"三明治模式\n" +"您知道吗?如果您的模型没有非常陡峭的悬垂,您可以使用三明治模式(内-外-内)来" +"提高精度和层一致性。" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" +"仓温\n" +"您知道吗?Snapmaker Orca支持仓温。" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" +"校准\n" +"您知道吗?校准您的打印机可以带来奇迹?在Snapmaker Orca中查看我们的备受欢迎的校准" +"解决方案。" + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" +"辅助风扇\n" +"您知道吗?Snapmaker Orca支持辅助部件冷却风扇。" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" +"空气过滤/排气扇\n" +"您知道吗?Snapmaker Orca可以支持空气过滤/排气扇。" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" +"G-code预览\n" +"您可以通过按下C键打开/关闭G-code预览窗口。" + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" +"切换工作区\n" +"您可以通过按下Tab键在准备预览工作区之间切换。" + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" +"如何使用键盘快捷键\n" +"您知道吗?Snapmaker Orca提供了广泛的键盘快捷键和3D场景操作。" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" +"奇数层反转\n" +"您知道吗?奇数层反转功能可以显著提高您悬垂的表面质量。" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"切割工具\n" +"您知道吗?您可以使用切割工具以任何角度和位置切割模型。" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" +"修复模型\n" +"您知道吗?在Windows系统上,您可以修复一个损坏的3D模型以避免诸多切片问题。" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"延时摄影\n" +"您知道吗?您可以每次打印时生成一段延时摄影。" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"自动摆盘\n" +"您知道吗?您可以自动排列项目中的所有对象。" + +#: resources/data/hints.ini: [hint:Auto-Orient] +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"自动朝向\n" +"您知道吗,您只需单击鼠标,即可将对象旋转到适合的打印方向。" + +#: resources/data/hints.ini: [hint:Lay on Face] +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"放置在面部\n" +"您知道吗,您可以快速指定模型的底面,使其位于打印床上。选择“放置在面部”功能或" +"按F键。" + +#: resources/data/hints.ini: [hint:Object List] +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"对象列表\n" +"您知道对象列表吗?您可以在其中的查看所有对象/部件,并更改每个对象/部件的设" +"置。" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" +"搜索功能\n" +"您知道吗?您可以使用搜索工具快速查找特定的Snapmaker Orca设置。" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" +"简化模型\n" +"您知道吗?您可以使用简化三角面片功能减少网格中的三角形数量。右键单击模型,然" +"后选择简化模型。" + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"参数表格\n" +"您知道吗?您可以参数表格上的所有对象/部件,并更改每个对象/部件的设置。" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"分割成对象/零件\n" +"您知道吗,您可以把一个大对象分割成多个小对象/零件以便着色或打印。" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" +"减去一个部分\n" +"您知道吗,您可以使用负零件修改器从一个网格中减去另一个网格。这样,您就可以直" +"接在Snapmaker Orca中创建易于调整大小的孔。" + +#: resources/data/hints.ini: [hint:STEP] +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP文件\n" +"您知道吗,通过切片STEP文件而不是STL文件可以提高打印质量。\n" +"Snapmaker Orca支持切片STEP文件,提供比低分辨率STL更平滑的结果。试试看!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Z接缝位置\n" +"您知道吗,您可以自定义Z接缝的位置,甚至可以将其绘制在打印上,使其位于不太可见" +"的位置。这样可以改善模型的整体外观。试试看!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"流量微调\n" +"你知道吗,您可以微调流量,以获得更好看的打印效果。根据材料的不同,可以通过进" +"行一些微调来提高打印模型的整体光洁度。" + +#: resources/data/hints.ini: [hint:Split your prints into plates] +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"分盘打印\n" +"您知道吗,您可以把一个有很多零件的模型安排到多个独立的分盘,然后打印出来,这" +"将简化对所有零件的管理。" + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"自适应层高度加速打印\n" +"您知道吗,您可以使用“自适应层高度”选项可以更快地打印模型。试试看!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"绘制支撑\n" +"您知道吗,您可以手动绘制添加/屏蔽支撑的位置,此功能使仅将支撑材料放置在实际需" +"要的模型截面上变得容易。" + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"支撑类型\n" +"您知道吗,有多种可选的支撑类型,树状支撑非常适合人物/动物模型,同时可以节耗材" +"并提高打印速度。试试看!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"打印丝绸耗材\n" +"你知道吗,丝绸耗材需要特别考虑才能成功打印。为了获得最佳效果,通常建议使用较" +"高的温度和较低的速度。" + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"使用Brim\n" +"您知道吗?当模型与热床表面的接触面积较小时,建议使用brim以提高打印成功率。" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"为多个对象设置参数\n" +"您知道吗,可以同时为所有选定对象设置切片参数。" + +#: resources/data/hints.ini: [hint:Stack objects] +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"组合物体\n" +"你知道吗?你可以把多个对象组合为一个整体。" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"冲刷到支持/对象/填充中\n" +"你知道吗?你可以在换料时将它们冲入支撑/对象/填充,以节省浪费的料丝。" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"提高强度\n" +"你知道吗?你可以使用更多的墙层数和更高的疏散填充密度来提高模型的强度。" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" +"什么时候需要打开机箱门打印\n" +"您知道吗?在较高腔温下打印低温耗材,打开机箱门可以减少挤出机/热端堵塞的概率。" +"有关此的更多信息,请参阅Wiki。" + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" +"避免翘曲\n" +"您知道吗?打印ABS这类易翘曲材料时,适当提高热床温度可以降低翘曲的概率。" + +#~ msgid "V" +#~ msgstr "V" + +#~ msgid "Export &Configs" +#~ msgstr "导出预设" + +#~ msgid "Infill direction" +#~ msgstr "填充方向" + +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "启用此设置,导出的G-code将包含G2 G3指令。圆弧拟合的容许值和精度相同。" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "填充区域被轻微扩大,并和外墙产生重叠,进而产生更好的粘接。表示为相对稀疏填" +#~ "充的线宽的百分比。" + +#~ msgid "Export Configs" +#~ msgstr "导出预设" + +#~ msgid "Unload Filament" +#~ msgstr "退料" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "选择1个AMS槽位,然后点击进料/退料按钮以自动进料/退料。" + +#~ msgid "MainBoard" +#~ msgstr "主板" + +#~ msgid "active" +#~ msgstr "活动的" + +#~ msgid "Jump to layer" +#~ msgstr "跳转到层" + +#~ msgid "Cabin humidity" +#~ msgstr "舱内湿度" + +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "绿色表示 AMS 湿度正常,橙色表示湿度高,红色表示湿度过高。(湿度计:越低越" +#~ "好。)" + +#~ msgid "Desiccant status" +#~ msgstr "干燥剂状态" + +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "干燥剂状态低于两格表示干燥剂可能不活跃。请更换干燥剂。(杠:越高越好)。" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "注意:当盖子打开或更换干燥剂包装时,可能需要数小时或一晚才能吸收水分,低温" +#~ "也会减慢这一过程。在此期间,指示器的数值可能并不准确。" + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "注意:如果是在打印过程中插入新的耗材丝,AMS会在打印结束后自动读取此耗材丝" +#~ "信息。" + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "成功导出G-code至 %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "初始化失败(没有设备)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "初始化失败(没有摄像头)" + +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "打印机正忙于下载,请等待下载完成。" + +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "初始化失败(当前打印机的版本不支持)!" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "初始化失败(在局域网模式中不可访问)!" + +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "初始化失败(未找到打印机的局域网地址)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "已停止 [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "加载失败 [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "文件列表为空[%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "加载失败 [%d]" + +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "无法从打印机获取模型信息。" + +#~ msgid "Failed to parse model infomations." +#~ msgstr "解析模型信息失败。" + +#~ msgid "Connection lost. Please retry." +#~ msgstr "连接丢失。请重试。" + +#~ msgid "File not exists." +#~ msgstr "文件不存在" + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "您已经更改了预设 \"%1%\",是否在切换后要保留这些更改的预设参数?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "您已经更改了预设参数,是否在切换后要保留这些更改的预设参数?" + +#~ msgid "" +#~ "Please go to filament setting to edit your presets if you need.\n" +#~ "Please note that nozzle temperature, hot bed temperature, and maximum " +#~ "volumetric speed have a significant impact on printing quality. Please " +#~ "set them carefully." +#~ msgstr "" +#~ "如果需要,请转到灯丝设置以编辑您的预设。\n" +#~ "请注意喷嘴温度、热床温度和最大体积流量对打印质量有重大影响。请小心设置它" +#~ "们。" + +#~ msgid "Studio Version:" +#~ msgstr "Studio 版本:" + +#~ msgid "Test BambuLab" +#~ msgstr "测试 BambuLab" + +#~ msgid "Test BambuLab:" +#~ msgstr "测试 BambuLab:" + +#~ msgid "Test HTTP" +#~ msgstr "测试 HTTP" + +#~ msgid "Test HTTP Service:" +#~ msgstr "测试 HTTP 服务:" + +#~ msgid "Test storage" +#~ msgstr "测试存储" + +#~ msgid "Test Storage Upload:" +#~ msgstr "测试存储上传:" + +#~ msgid "Test storage upgrade" +#~ msgstr "测试存储升级" + +#~ msgid "Test Storage Upgrade:" +#~ msgstr "测试存储升级:" + +#~ msgid "Test storage download" +#~ msgstr "测试存储下载" + +#~ msgid "Test Storage Download:" +#~ msgstr "测试存储下载:" + +#~ msgid "Test plugin download" +#~ msgstr "测试插件下载" + +#~ msgid "Test Plugin Download:" +#~ msgstr "测试插件下载:" + +#~ msgid "Test Storage Upload" +#~ msgstr "测试存储上传" + +#~ msgid "" +#~ "The speed setting exceeds the printer's maximum speed " +#~ "(machine_max_speed_x/machine_max_speed_y).\n" +#~ "Orca will automatically cap the print speed to ensure it doesn't surpass " +#~ "the printer's capabilities.\n" +#~ "You can adjust the maximum speed setting in your printer's configuration " +#~ "to get higher speeds." +#~ msgstr "" +#~ "速度设置超过了打印机的最大速度(machine_max_speed_x/" +#~ "machine_max_speed_y)。\n" +#~ "Orca将自动限制打印速度,以确保不超过打印机的速度限制。\n" +#~ "您可以调整打印机配置中的最大速度设置,以获得更高的速度。" + +#~ msgid "" +#~ "The travel acceleration setting exceeds the printer's maximum " +#~ "acceleration (machine_max_acceleration_travel).\n" +#~ "Orca will automatically cap the acceleration speed to ensure it doesn't " +#~ "surpass the printer's capabilities.\n" +#~ "You can adjust the machine_max_acceleration_travel value in your " +#~ "printer's configuration to get higher speeds." +#~ msgstr "" +#~ "空驶加速度设置超过了打印机的最大空驶加速度" +#~ "(machine_max_acceleration_travel)。\n" +#~ "Orca将自动限制加速度,以确保不超过打印机的速度限制。\n" +#~ "您可以调整打印机配置中的machine_max_acceleration_travel值,以获得更高的速" +#~ "度。" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "在斜面表面附近添加实心填充,以保证垂直外壳厚度(顶部+底部实心层)" + +#~ msgid " " +#~ msgstr " " + +#~ msgid "Text-Rotate" +#~ msgstr "旋转文字" + +#~ msgid "Configuration package updated to " +#~ msgstr "配置包已更新到" + +#~ msgid "" +#~ "Improve shell precision by adjusting outer wall spacing. This also " +#~ "improves layer consistency." +#~ msgstr "优化外墙刀路以提高外墙精度。这个优化同时减少层纹" + +#~ msgid "No sparse layers (EXPERIMENTAL)" +#~ msgstr "无稀疏层(实验)" + +#~ msgid "" +#~ "We would rename the presets as \"Vendor Type Serial @printer you selected" +#~ "\". \n" +#~ "To add preset for more prinetrs, Please go to printer selection" +#~ msgstr "" +#~ "我们会将预设重命名为“供应商 类型 系列 @您选择的打印机”。\n" +#~ "要为更多的打印机添加预设,请前往打印机选择。" + +#~ msgid "The Config can not be loaded." +#~ msgstr "配置无法加载。" + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "该3mf文件来自旧版本的Snapmaker Orca,将只加载几何数据。" + +#~ msgid "Movement:" +#~ msgstr "移动:" + +#~ msgid "Movement" +#~ msgstr "移动" + +#~ msgid "Auto Segment" +#~ msgstr "自动分割" + +#~ msgid "Depth ratio" +#~ msgstr "深度" + +#~ msgid "Prizm" +#~ msgstr "棱柱" + +#~ msgid "connector is out of cut contour" +#~ msgstr "个连接件超出了切割面范围" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "个连接件超出了切割面范围" + +#~ msgid "connector is out of object" +#~ msgstr "个连接件穿透了模型" + +#~ msgid "connectors is out of object" +#~ msgstr "个连接件穿透了模型" + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "无效状态。\n" +#~ "切割后没有选中要保留的部分" + +#~ msgid "Edit Text" +#~ msgstr "编辑文字" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "发生错误,无法创建线程。" + +#~ msgid "Exception" +#~ msgstr "异常" + +#~ msgid "Choose SLA archive:" +#~ msgstr "选择SLA存档:" + +#~ msgid "Import file" +#~ msgstr "导入文件" + +#~ msgid "Import model and profile" +#~ msgstr "导入模型和配置" + +#~ msgid "Import profile only" +#~ msgstr "仅导入配置" + +#~ msgid "Import model only" +#~ msgstr "仅导入模型" + +#~ msgid "Accurate" +#~ msgstr "精确的" + +#~ msgid "Balanced" +#~ msgstr "均衡的" + +#~ msgid "Quick" +#~ msgstr "快速的" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "表示回抽时擦拭的移动距离。" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "简化模型\n" +#~ "您知道吗,您可以使用“简化模型”功能减少模型的三角形数。在模型上单击鼠标右" +#~ "键,然后选择“简化模型”。" + +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "减去部分几何体\n" +#~ "您知道吗,您可以使用负零件从另一个几何体中减去另一个几何体。例如,可以直接" +#~ "在Snapmaker Orca中创建可轻松调整大小的孔。" + +#~ msgid "Filling bed " +#~ msgstr "填充热床" + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "%1% 填充图案不支持 100%% 密度。" + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "切换到直线图案?\n" +#~ "是 - 自动切换到直线图案\n" +#~ "否 - 自动将密度重置为默认的非100%值" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "请在进料前把喷嘴升温到170℃" + +#~ msgid "Show g-code window" +#~ msgstr "显示g-code窗口" + +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "如果启用,将显示g-code窗口。" + +#, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "稀疏填充密度, 100%% 意味着完全实心。" + +#~ msgid "Tree support wall loops" +#~ msgstr "树状支撑外墙层数" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "树状支撑外墙层数" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " 填充图案不支持 100%% 密度" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "工具-选择底面" + +#~ msgid "Export as STL" +#~ msgstr "导出为 STL" + +#~ msgid "Check cloud service status" +#~ msgstr "检查云服务状态" + +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "请输入有效的数值(K的范围为0~0.5)" + +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "请输入有效的数值 (K的范围为0~0.5, N的范围为0.6~2.0)" + +#~ msgid "Export all objects as STL" +#~ msgstr "导出所有对象为STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "该3mf文件与软件不兼容,将只加载几何数据。" + +#~ msgid "Incompatible 3mf" +#~ msgstr "不兼容的3mf" + +#~ msgid "Add/Remove printers" +#~ msgstr "添加/删除打印机" + +#~ msgid "" +#~ "When print by object, machines with I3 structure will not generate " +#~ "timelapse videos." +#~ msgstr "当逐件打印时,I3结构的机器将不会生成延时摄影。" + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "%s 不受AMS支持。" + +#~ msgid "Don't remind me of this version again" +#~ msgstr "此版本不再提示" + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "错误:IP或访问码不正确" + +#~ msgid "" +#~ "Extrude perimeters that have a part over an overhang in the reverse " +#~ "direction on odd layers. This alternating pattern can drastically improve " +#~ "steep overhang." +#~ msgstr "" +#~ "在奇数层,将悬垂的打印方向反转。这种交替的模式可以大大改善陡峭悬垂的打印质" +#~ "量。" + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "内墙/外墙/填充的顺序" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "内圈墙/外圈墙/填充的打印顺序" + +#~ msgid "inner/outer/infill" +#~ msgstr "内墙/外墙/填充" + +#~ msgid "outer/inner/infill" +#~ msgstr "外墙/内墙/填充" + +#~ msgid "infill/inner/outer" +#~ msgstr "填充/内墙/外墙" + +#~ msgid "infill/outer/inner" +#~ msgstr "填充/外墙/内墙" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "内墙/外墙/内墙/填充" + +#~ msgid "Export 3MF" +#~ msgstr "导出3MF" + +#~ msgid "Export project as 3MF." +#~ msgstr "导出项目为3MF。" + +#~ msgid "Export slicing data" +#~ msgstr "导出切片数据" + +#~ msgid "Export slicing data to a folder." +#~ msgstr "导出切片数据到目录" + +#~ msgid "Load slicing data" +#~ msgstr "导入切片数据" + +#~ msgid "Load cached slicing data from directory" +#~ msgstr "从目录导入缓存的切片数据" + +#~ msgid "Export STL" +#~ msgstr "导出STL文件" + +#~ msgid "Export the objects as multiple STL." +#~ msgstr "将对象导出为多个STL文件" + +#~ msgid "Slice" +#~ msgstr "切片" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "切片平台:0-所有平台,i-第i个平台,其他-无效" + +#~ msgid "Show command help." +#~ msgstr "显示命令行帮助。" + +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "将3mf的配置值更新为最新值。" + +#~ msgid "Load default filaments" +#~ msgstr "加载默认打印材料" + +#~ msgid "Load first filament as default for those not loaded" +#~ msgstr "加载第一个打印材料为默认材料" + +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "切片时每个盘的最大三角形数。" + +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "每个盘的最大切片时间(秒)。" + +#~ msgid "Normative check" +#~ msgstr "规范性检查" + +#~ msgid "Check the normative items." +#~ msgstr "检查规范性项目。" + +#~ msgid "Output Model Info" +#~ msgstr "输出模型信息" + +#~ msgid "Output the model's information." +#~ msgstr "输出模型的信息。" + +#~ msgid "Export Settings" +#~ msgstr "导出配置" + +#~ msgid "Export settings to a file." +#~ msgstr "导出配置到文件。" + +#~ msgid "Send progress to pipe" +#~ msgstr "将进度发送到管道" + +#~ msgid "Send progress to pipe." +#~ msgstr "将进度发送到管道。" + +#~ msgid "Arrange Options" +#~ msgstr "摆放选项" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "摆放选项:0-关闭,1-开启,其他-自动" + +#~ msgid "Repetions count" +#~ msgstr "重复次数" + +#~ msgid "Repetions count of the whole model" +#~ msgstr "整个模型的重复次数" + +#~ msgid "Convert Unit" +#~ msgstr "转换单位" + +#~ msgid "Convert the units of model" +#~ msgstr "转换模型的单位" + +#~ msgid "Rotate around X" +#~ msgstr "绕X旋转" + +#~ msgid "Rotation angle around the X axis in degrees." +#~ msgstr "绕X轴的旋转角度(以度为单位)。" + +#~ msgid "Scale the model by a float factor" +#~ msgstr "根据因子缩放模型" + +#~ msgid "Load General Settings" +#~ msgstr "加载通用设置" + +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "从指定文件加载工艺/打印机设置" + +#~ msgid "Load Filament Settings" +#~ msgstr "加载耗材丝设置" + +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "从指定文件加载耗材丝设置" + +#~ msgid "Skip Objects" +#~ msgstr "零件跳过" + +#~ msgid "Skip some objects in this print" +#~ msgstr "打印过程中跳过一些零件" + +#~ msgid "load uptodate process/machine settings when using uptodate" +#~ msgstr "在使用最新设置时加载最新的进程/机器设置" + +#~ msgid "" +#~ "load uptodate process/machine settings from the specified file when using " +#~ "uptodate" +#~ msgstr "在使用最新设置时,从指定的文件中加载最新的进程/机器设置。" + +#~ msgid "Output directory" +#~ msgstr "输出路径" + +#~ msgid "Output directory for the exported files." +#~ msgstr "导出文件的输出路径。" + +#~ msgid "Debug level" +#~ msgstr "调试等级" + +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "设置调试日志等级。0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" + +#, boost-format +#~ msgid "The selected preset: %1% is not found." +#~ msgstr "未找到选定的预设:%1%。" + +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "3D场景操作\n" +#~ "如何在3D场景中使用鼠标和触摸面板进行视角控制和对象/部件选择" + +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "修复模型\n" +#~ "您知道吗?您可以修复一个损坏的3D模型以避免诸多切片问题。" + +#~ msgid "Embeded" +#~ msgstr "嵌入的" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "Snapmaker Orca 配置文件可能已损坏而无法解析。请删除此文件并重新启动" +#~ "Snapmaker Orca。" + +#~ msgid "Online Models" +#~ msgstr "在线模型" + +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "在主页上显示工作人员挑选的在线模型" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "自动冷却降速的最小打印速度" + +#~ msgid "" +#~ "There are currently no identical spare consumables available, and " +#~ "automatic replenishment is currently not possible. \n" +#~ "(Currently supporting automatic supply of consumables with the same " +#~ "brand, material type, and color)" +#~ msgstr "" +#~ "当前无相同的备用耗材,暂时无法自动补给。\n" +#~ "(目前支持品牌、材料种类、颜色相同的耗材的自动补给)" + +#~ msgid "Invalid nozzle diameter" +#~ msgstr "非法喷嘴口径" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "热床温度超过了材料的软化温度。请在打印前打开打印机前门以防堵头。" + +#~ msgid "Activate for better air filtration" +#~ msgstr "激活以获得更好的空气过滤" + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "软化温度" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "材料在这个温度开始变软。因此热床温度不能超过这个温度。" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "如果机器有辅助部件冷却风扇,勾选该选项" + +#~ msgid "" +#~ "This option is enabled if machine support controlling chamber temperature" +#~ msgstr "如果机器支持仓温控制,则启用此选项" + +#~ msgid "Enable this if printer support air filtration" +#~ msgstr "如果打印机支持空气过滤,则启用此功能" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "辅助部件冷却风扇的转速。辅助部件冷却风扇将一直运行在该速度,除了设置的无需" +#~ "冷却的前若干层" + +#~ msgid "" +#~ "Filter out gaps smaller than the threshold specified. This setting won't " +#~ "affect top/bottom layers" +#~ msgstr "小于指定阈值的微小间隙不填充。本设置不会对顶/底层起作用" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "底部出现空层,已被最近的正常层替换。" + +#~ msgid "The model has too many empty layers." +#~ msgstr "模型有太多空层。" + +#~ msgid "Cali" +#~ msgstr "标定" + +#~ msgid "Calibration of extrusion" +#~ msgstr "挤出标定" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "将新的耗材丝推入挤出机" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "其它层的热床温度比首层热床温度低太多,超过了%d 摄氏度。\n" +#~ "这可能导致打印中模型从热床脱落" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "热床温度超过了耗材丝的软化温度,材料软化可能造成喷头堵塞。\n" +#~ "请保持打印机在打印过程中敞开,保证空气流通或降低热床温度" + +#~ msgid "Total Time Estimation" +#~ msgstr "总时间预估" + +#~ msgid "Resonance frequency identification" +#~ msgstr "共振频率辨识" + +#~ msgid "Immediately score" +#~ msgstr "立即打分" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "请为您喜欢的 Bambu 商城模型打分。" + +#~ msgid "Score" +#~ msgstr "打分" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "高温打印热床" + +#~ msgid "Can't connect to the printer" +#~ msgstr "无法连接打印机" + +#~ msgid "Recommended temperature range" +#~ msgstr "建议温度范围" + +#~ msgid "High Temp Plate" +#~ msgstr "高温打印热床" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "安装高温打印热床时的热床温度。0值表示这个耗材丝不支持高温打印热床" + +#~ msgid "Internal bridge support thickness" +#~ msgstr "内部桥接支撑厚度" + +#~ msgid "" +#~ "If enabled, support loops will be generated under the contours of " +#~ "internal bridges.These support loops could prevent internal bridges from " +#~ "extruding over the air and improve the top surface quality, especially " +#~ "when the sparse infill density is low.This value determines the thickness " +#~ "of the support loops. 0 means disable this feature" +#~ msgstr "" +#~ "如果开启,Snapmaker Orca会沿着内部桥接的边沿在其下方生成支撑轮廓。这些支撑轮廓" +#~ "可以防止悬空地打印内部桥接并提高顶面质量,特别是在填充密度较低的情况下。这" +#~ "个设置用于调整支撑轮廓的厚度,0表示关闭此特性。" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "支撑物的样式和形状。对于普通支撑,将支撑投射到一个规则的网格中,将创建更稳" +#~ "定的支撑(默认),而紧贴的支撑塔将节省材料并减少物体的瑕疵。\n" +#~ "对于树形支撑,苗条板的风格将更积极地合并树枝,并节省大量的材料(默认),而" +#~ "混合风格将在大的平面悬垂下创建与正常支撑类似的结构。" + +#~ msgid "Target chamber temperature" +#~ msgstr "目标腔体温度" + +#~ msgid "Bed temperature difference" +#~ msgstr "热床温差" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "不建议其它层热床温度比首层的热床温度低于这个值。太低的其它层热床温度可能导" +#~ "致打印过程中模型从打印板脱落。" + +#~ msgid "Orient the model" +#~ msgstr "旋转模型" diff --git a/localization/i18n/zh_TW/Snapmaker_Orca_zh_TW.po b/localization/i18n/zh_TW/Snapmaker_Orca_zh_TW.po new file mode 100644 index 0000000000..6e71954452 --- /dev/null +++ b/localization/i18n/zh_TW/Snapmaker_Orca_zh_TW.po @@ -0,0 +1,16615 @@ +# Copyright (C) 2019 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST Translator Jiang Yue , 2019. +# +msgid "" +msgstr "" +"Project-Id-Version: Snapmaker Orca\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-06-30 15:44+0200\n" +"PO-Revision-Date: 2023-11-06 14:37+0800\n" +"Last-Translator: ablegods \n" +"Language-Team: \n" +"Language: zh_TW\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 3.4.1\n" + +#, fuzzy +msgid "Supports Painting" +msgstr "自訂支撐" + +msgid "Alt + Mouse wheel" +msgstr "Alt + 滑鼠滾輪" + +msgid "Section view" +msgstr "剖面圖" + +msgid "Reset direction" +msgstr "重置方向" + +msgid "Ctrl + Mouse wheel" +msgstr "Ctrl + 滑鼠滾輪" + +#, fuzzy +msgid "Pen size" +msgstr "筆刷尺寸" + +msgid "Left mouse button" +msgstr "滑鼠左鍵" + +#, fuzzy +msgid "Enforce supports" +msgstr "新增支撐區" + +msgid "Right mouse button" +msgstr "滑鼠右鍵" + +#, fuzzy +msgid "Block supports" +msgstr "不產生支撐區" + +msgid "Shift + Left mouse button" +msgstr "Shift + 滑鼠左鍵" + +#, fuzzy +msgid "Erase" +msgstr "擦除" + +#, fuzzy +msgid "Erase all painting" +msgstr "擦除所有手繪支撐" + +#, fuzzy +msgid "Highlight overhang areas" +msgstr "突顯出懸空區域" + +msgid "Gap fill" +msgstr "縫隙填充" + +msgid "Perform" +msgstr "套用" + +msgid "Gap area" +msgstr "間隙面積" + +#, fuzzy +msgid "Tool type" +msgstr "筆刷類型" + +msgid "Smart fill angle" +msgstr "智慧填充角度" + +msgid "On overhangs only" +msgstr "僅對懸空區生效" + +msgid "Auto support threshold angle: " +msgstr "自動支撐角度臨界值:" + +#, fuzzy +msgid "Circle" +msgstr "圓形" + +#, fuzzy +msgid "Sphere" +msgstr "球形" + +msgid "Fill" +msgstr "填充" + +msgid "Gap Fill" +msgstr "縫隙填充" + +#, boost-format +msgid "Allows painting only on facets selected by: \"%1%\"" +msgstr "僅允許在由以下條件選擇的平面上進行繪製:%1%" + +#, fuzzy +msgid "Highlight faces according to overhang angle." +msgstr "根據懸空角度突出顯示面。" + +msgid "No auto support" +msgstr "無自動支撐" + +msgid "Support Generated" +msgstr "已產生支撐" + +msgid "Gizmo-Place on Face" +msgstr "Gizmo-放置在臉上" + +msgid "Lay on face" +msgstr "選擇底面" + +#, boost-format +msgid "" +"Filament count exceeds the maximum number that painting tool supports. only " +"the first %1% filaments will be available in painting tool." +msgstr "線材數量超過上色工具支援的最大值,僅前 %1% 個線材可在上色工具中使用。" + +#, fuzzy +msgid "Color Painting" +msgstr "自訂顏色" + +#, fuzzy +msgid "Pen shape" +msgstr "筆刷形狀" + +msgid "Paint" +msgstr "繪製" + +#, fuzzy +msgid "Key 1~9" +msgstr "按鍵 1~9" + +msgid "Choose filament" +msgstr "選擇線材" + +#, fuzzy +msgid "Edge detection" +msgstr "邊緣偵測" + +msgid "Triangles" +msgstr "三角形" + +msgid "Filaments" +msgstr "線材" + +#, fuzzy +msgid "Brush" +msgstr "筆刷" + +msgid "Smart fill" +msgstr "智慧填充" + +msgid "Bucket fill" +msgstr "批次填充" + +msgid "Height range" +msgstr "高度範圍" + +msgid "Alt + Shift + Enter" +msgstr "" + +msgid "Toggle Wireframe" +msgstr "顯示/隱藏線框" + +msgid "Shortcut Key " +msgstr "快捷鍵 " + +msgid "Triangle" +msgstr "三角形" + +msgid "Height Range" +msgstr "高度範圍" + +msgid "Vertical" +msgstr "垂直" + +msgid "Horizontal" +msgstr "水平" + +msgid "Remove painted color" +msgstr "移除已繪製的顏色" + +#, fuzzy, boost-format +msgid "Painted using: Filament %1%" +msgstr "使用:線材 %1% 上色" + +msgid "Move" +msgstr "移動" + +msgid "Gizmo-Move" +msgstr "Gizmo-移動" + +msgid "Rotate" +msgstr "旋轉" + +msgid "Gizmo-Rotate" +msgstr "Gizmo-旋轉" + +msgid "Optimize orientation" +msgstr "最佳化方向" + +msgid "Apply" +msgstr "套用" + +msgid "Scale" +msgstr "縮放" + +msgid "Gizmo-Scale" +msgstr "Gizmo 比例" + +msgid "Error: Please close all toolbar menus first" +msgstr "錯誤:請先關閉所有工具欄選單" + +msgid "in" +msgstr "在" + +msgid "mm" +msgstr "mm" + +msgid "Position" +msgstr "位置" + +#. TRN - Input label. Be short as possible +#. Angle between Y axis and text line direction. +#. TRN - Input label. Be short as possible +msgid "Rotation" +msgstr "旋轉" + +msgid "Scale ratios" +msgstr "縮放比例" + +#, fuzzy +msgid "Object Operations" +msgstr "物件操作" + +msgid "Volume Operations" +msgstr "零件操作" + +msgid "Translate" +msgstr "平移" + +msgid "Group Operations" +msgstr "群組操作" + +msgid "Set Position" +msgstr "設定位置" + +msgid "Set Orientation" +msgstr "設定方向" + +msgid "Set Scale" +msgstr "設定縮放" + +#, fuzzy +msgid "Reset Position" +msgstr "重設位置" + +#, fuzzy +msgid "Reset Rotation" +msgstr "重設旋轉" + +msgid "World coordinates" +msgstr "世界坐標" + +msgid "Object coordinates" +msgstr "" + +msgid "°" +msgstr "°" + +#. TRN - Input label. Be short as possible +msgid "Size" +msgstr "尺寸" + +msgid "%" +msgstr "%" + +msgid "uniform scale" +msgstr "等比例縮放" + +msgid "Planar" +msgstr "" + +msgid "Dovetail" +msgstr "" + +msgid "Auto" +msgstr "自動" + +msgid "Manual" +msgstr "" + +msgid "Plug" +msgstr "插銷" + +msgid "Dowel" +msgstr "銷釘" + +msgid "Snap" +msgstr "" + +msgid "Prism" +msgstr "" + +msgid "Frustum" +msgstr "錐體" + +msgid "Square" +msgstr "正方形" + +msgid "Hexagon" +msgstr "六邊形" + +msgid "Keep orientation" +msgstr "" + +#, fuzzy +msgid "Place on cut" +msgstr "切割面放置到列印板上" + +msgid "Flip upside down" +msgstr "" + +msgid "Connectors" +msgstr "連接件" + +msgid "Type" +msgstr "類型" + +msgid "Style" +msgstr "樣式" + +msgid "Shape" +msgstr "形狀" + +#. TRN - Input label. Be short as possible +#. Size in emboss direction +#. TRN - Input label. Be short as possible +msgid "Depth" +msgstr "" + +msgid "Groove" +msgstr "溝槽" + +msgid "Width" +msgstr "寬度" + +msgid "Flap Angle" +msgstr "" + +msgid "Groove Angle" +msgstr "" + +msgid "Part" +msgstr "零件" + +msgid "Object" +msgstr "物件" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane" +msgstr "" + +msgid "" +"Click to flip the cut plane\n" +"Drag to move the cut plane\n" +"Right-click a part to assign it to the other side" +msgstr "" + +msgid "Move cut plane" +msgstr "" + +msgid "Mode" +msgstr "模式" + +msgid "Change cut mode" +msgstr "" + +msgid "Tolerance" +msgstr "公差" + +msgid "Drag" +msgstr "拖拉" + +msgid "Draw cut line" +msgstr "" + +msgid "Left click" +msgstr "滑鼠左鍵" + +msgid "Add connector" +msgstr "新增連接件" + +msgid "Right click" +msgstr "滑鼠右鍵" + +msgid "Remove connector" +msgstr "刪除連接件" + +msgid "Move connector" +msgstr "移動連接件" + +msgid "Add connector to selection" +msgstr "選擇連接件" + +msgid "Remove connector from selection" +msgstr "取消選擇連接件" + +msgid "Select all connectors" +msgstr "選擇所有連接件" + +#, fuzzy +msgid "Cut" +msgstr "切割" + +msgid "Rotate cut plane" +msgstr "" + +msgid "Remove connectors" +msgstr "刪除所有連接件" + +msgid "Bulge" +msgstr "" + +msgid "Bulge proportion related to radius" +msgstr "" + +msgid "Space" +msgstr "空格鍵" + +msgid "Space proportion related to radius" +msgstr "" + +msgid "Confirm connectors" +msgstr "確認" + +msgid "Cancel" +msgstr "取消" + +msgid "Build Volume" +msgstr "" + +msgid "Flip cut plane" +msgstr "" + +msgid "Groove change" +msgstr "" + +msgid "Reset" +msgstr "重設" + +#. TRN: This is an entry in the Undo/Redo stack. The whole line will be 'Edited: (name of whatever was edited)'. +msgid "Edited" +msgstr "" + +msgid "Cut position" +msgstr "" + +msgid "Reset cutting plane" +msgstr "" + +msgid "Edit connectors" +msgstr "編輯連接件" + +msgid "Add connectors" +msgstr "新增連接件" + +msgid "Reset cut" +msgstr "" + +msgid "Reset cutting plane and remove connectors" +msgstr "" + +msgid "Upper part" +msgstr "上半部分" + +msgid "Lower part" +msgstr "下半部分" + +#, fuzzy +msgid "Keep" +msgstr "保留" + +msgid "Flip" +msgstr "翻轉" + +msgid "After cut" +msgstr "切割後" + +msgid "Cut to parts" +msgstr "切割為零件" + +msgid "Perform cut" +msgstr "執行切割" + +msgid "Warning" +msgstr "警告" + +msgid "Invalid connectors detected" +msgstr "偵測到無效連接件" + +#, c-format, boost-format +msgid "%1$d connector is out of cut contour" +msgid_plural "%1$d connectors are out of cut contour" +msgstr[0] "" + +#, c-format, boost-format +msgid "%1$d connector is out of object" +msgid_plural "%1$d connectors are out of object" +msgstr[0] "" + +msgid "Some connectors are overlapped" +msgstr "存在連接件相互重疊" + +msgid "Select at least one object to keep after cutting." +msgstr "" + +msgid "Cut plane is placed out of object" +msgstr "" + +msgid "Cut plane with groove is invalid" +msgstr "" + +msgid "Connector" +msgstr "連接件" + +msgid "Cut by Plane" +msgstr "用平面分割" + +msgid "non-manifold edges be caused by cut tool, do you want to fix it now?" +msgstr "" + +msgid "Repairing model object" +msgstr "修復模型物件" + +msgid "Cut by line" +msgstr "" + +msgid "Delete connector" +msgstr "" + +msgid "Mesh name" +msgstr "Mesh名" + +msgid "Detail level" +msgstr "細節等級" + +msgid "Decimate ratio" +msgstr "簡化率" + +#, fuzzy, boost-format +msgid "" +"Processing model '%1%' with more than 1M triangles could be slow. It is " +"highly recommended to simplify the model." +msgstr "處理超過具有 1M 個三角形的模型 '%1%' 可能會很慢。強烈建議簡化模型。" + +msgid "Simplify model" +msgstr "簡化模型" + +msgid "Simplify" +msgstr "簡化" + +msgid "Simplification is currently only allowed when a single part is selected" +msgstr "僅支援對單一零件做簡化" + +msgid "Error" +msgstr "錯誤" + +msgid "Extra high" +msgstr "非常高" + +msgid "High" +msgstr "高" + +msgid "Medium" +msgstr "中" + +msgid "Low" +msgstr "低" + +msgid "Extra low" +msgstr "非常低" + +#, c-format, boost-format +msgid "%d triangles" +msgstr "%d 個三角形" + +msgid "Show wireframe" +msgstr "顯示線框" + +#, boost-format +msgid "%1%" +msgstr "%1%" + +msgid "Can't apply when process preview." +msgstr "處理預覽的過程中無法套用。" + +msgid "Operation already cancelling. Please wait few seconds." +msgstr "操作已在取消中,請稍後。" + +msgid "Face recognition" +msgstr "外觀面偵測" + +msgid "Perform Recognition" +msgstr "執行偵測" + +#, fuzzy +msgid "Brush size" +msgstr "筆刷尺寸" + +#, fuzzy +msgid "Brush shape" +msgstr "筆刷形狀" + +#, fuzzy +msgid "Enforce seam" +msgstr "新增Z縫產生區" + +#, fuzzy +msgid "Block seam" +msgstr "不產生Z縫區" + +#, fuzzy +msgid "Seam painting" +msgstr "自訂Z縫" + +msgid "Remove selection" +msgstr "移除繪製" + +msgid "Entering Seam painting" +msgstr "" + +msgid "Leaving Seam painting" +msgstr "" + +msgid "Paint-on seam editing" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Select look of letter shape +msgid "Font" +msgstr "字體" + +msgid "Thickness" +msgstr "厚度" + +msgid "Text Gap" +msgstr "文字間距" + +msgid "Angle" +msgstr "角度" + +msgid "" +"Embeded\n" +"depth" +msgstr "內嵌深度" + +msgid "Input text" +msgstr "輸入文字" + +msgid "Surface" +msgstr "附著於曲面" + +msgid "Horizontal text" +msgstr "水平文字" + +msgid "Shift + Mouse move up or down" +msgstr "Shift + 滑鼠上移或下移" + +msgid "Rotate text" +msgstr "旋轉文字" + +#, fuzzy +msgid "Text shape" +msgstr "新增文字" + +#. TRN - Title in Undo/Redo stack after rotate with text around emboss axe +msgid "Text rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with text along emboss axe - From surface +msgid "Text move" +msgstr "" + +msgid "Set Mirror" +msgstr "設定鏡像" + +msgid "Embossed text" +msgstr "" + +msgid "Enter emboss gizmo" +msgstr "" + +msgid "Leave emboss gizmo" +msgstr "" + +msgid "Embossing actions" +msgstr "" + +msgid "Emboss" +msgstr "" + +msgid "NORMAL" +msgstr "" + +msgid "SMALL" +msgstr "" + +msgid "ITALIC" +msgstr "" + +msgid "SWISS" +msgstr "" + +msgid "MODERN" +msgstr "" + +msgid "First font" +msgstr "" + +msgid "Default font" +msgstr "預設字型" + +msgid "Advanced" +msgstr "高級" + +msgid "" +"The text cannot be written using the selected font. Please try choosing a " +"different font." +msgstr "" + +msgid "Embossed text cannot contain only white spaces." +msgstr "" + +msgid "Text contains character glyph (represented by '?') unknown by font." +msgstr "" + +msgid "Text input doesn't show font skew." +msgstr "" + +msgid "Text input doesn't show font boldness." +msgstr "" + +msgid "Text input doesn't show gap between lines." +msgstr "" + +msgid "Too tall, diminished font height inside text input." +msgstr "" + +msgid "Too small, enlarged font height inside text input." +msgstr "" + +msgid "Text doesn't show current horizontal alignment." +msgstr "" + +msgid "Revert font changes." +msgstr "" + +#, boost-format +msgid "Font \"%1%\" can't be selected." +msgstr "" + +msgid "Operation" +msgstr "" + +msgid "Join" +msgstr "" + +msgid "Click to change text into object part." +msgstr "" + +msgid "You can't change a type of the last solid part of the object." +msgstr "您無法變更模型最後一個實體部分的類型。" + +msgctxt "EmbossOperation" +msgid "Cut" +msgstr "切割" + +msgid "Click to change part type into negative volume." +msgstr "" + +msgid "Modifier" +msgstr "修改器" + +msgid "Click to change part type into modifier." +msgstr "" + +msgid "Change Text Type" +msgstr "" + +#, boost-format +msgid "Rename style(%1%) for embossing text" +msgstr "" + +msgid "Name can't be empty." +msgstr "" + +msgid "Name has to be unique." +msgstr "" + +msgid "OK" +msgstr "確認" + +msgid "Rename style" +msgstr "" + +msgid "Rename current style." +msgstr "" + +msgid "Can't rename temporary style." +msgstr "" + +msgid "First Add style to list." +msgstr "" + +#, boost-format +msgid "Save %1% style" +msgstr "" + +msgid "No changes to save." +msgstr "" + +msgid "New name of style" +msgstr "" + +msgid "Save as new style" +msgstr "" + +msgid "Only valid font can be added to style." +msgstr "" + +msgid "Add style to my list." +msgstr "" + +msgid "Save as new style." +msgstr "" + +msgid "Remove style" +msgstr "" + +msgid "Can't remove the last existing style." +msgstr "" + +#, boost-format +msgid "Are you sure you want to permanently remove the \"%1%\" style?" +msgstr "" + +#, boost-format +msgid "Delete \"%1%\" style." +msgstr "" + +#, boost-format +msgid "Can't delete \"%1%\". It is last style." +msgstr "" + +#, boost-format +msgid "Can't delete temporary style \"%1%\"." +msgstr "" + +#, boost-format +msgid "Modified style \"%1%\"" +msgstr "" + +#, boost-format +msgid "Current style is \"%1%\"" +msgstr "" + +#, boost-format +msgid "" +"Changing style to \"%1%\" will discard current style modification.\n" +"\n" +"Would you like to continue anyway?" +msgstr "" + +msgid "Not valid style." +msgstr "" + +#, boost-format +msgid "Style \"%1%\" can't be used and will be removed from a list." +msgstr "" + +msgid "Unset italic" +msgstr "" + +msgid "Set italic" +msgstr "" + +msgid "Unset bold" +msgstr "" + +msgid "Set bold" +msgstr "" + +msgid "Revert text size." +msgstr "" + +msgid "Revert embossed depth." +msgstr "" + +msgid "" +"Advanced options cannot be changed for the selected font.\n" +"Select another font." +msgstr "" + +msgid "Revert using of model surface." +msgstr "" + +msgid "Revert Transformation per glyph." +msgstr "" + +msgid "Set global orientation for whole text." +msgstr "" + +msgid "Set position and orientation per glyph." +msgstr "" + +msgctxt "Alignment" +msgid "Left" +msgstr "左" + +msgctxt "Alignment" +msgid "Center" +msgstr "置中" + +msgctxt "Alignment" +msgid "Right" +msgstr "右" + +msgctxt "Alignment" +msgid "Top" +msgstr "頂部" + +msgctxt "Alignment" +msgid "Middle" +msgstr "" + +msgctxt "Alignment" +msgid "Bottom" +msgstr "底部" + +msgid "Revert alignment." +msgstr "" + +#. TRN EmbossGizmo: font units +msgid "points" +msgstr "" + +msgid "Revert gap between characters" +msgstr "" + +msgid "Distance between characters" +msgstr "" + +msgid "Revert gap between lines" +msgstr "" + +msgid "Distance between lines" +msgstr "" + +msgid "Undo boldness" +msgstr "" + +msgid "Tiny / Wide glyphs" +msgstr "" + +msgid "Undo letter's skew" +msgstr "" + +msgid "Italic strength ratio" +msgstr "" + +msgid "Undo translation" +msgstr "" + +msgid "Distance of the center of the text to the model surface." +msgstr "" + +msgid "Undo rotation" +msgstr "" + +msgid "Rotate text Clock-wise." +msgstr "" + +msgid "Unlock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Lock the text's rotation when moving text along the object's surface." +msgstr "" + +msgid "Select from True Type Collection." +msgstr "" + +msgid "Set text to face camera" +msgstr "" + +msgid "Orient the text towards the camera." +msgstr "" + +#, boost-format +msgid "" +"Can't load exactly same font(\"%1%\"). Application selected a similar " +"one(\"%2%\"). You have to specify font for enable edit text." +msgstr "" + +msgid "No symbol" +msgstr "" + +msgid "Loading" +msgstr "載入中" + +msgid "In queue" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Height of one text line - Font Ascent +msgid "Height" +msgstr "高度" + +#. TRN - Input label. Be short as possible +#. Copy surface of model on surface of the embossed text +#. TRN - Input label. Be short as possible +msgid "Use surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Option to change projection on curved surface +#. for each character(glyph) in text separately +msgid "Per glyph" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Align Top|Middle|Bottom and Left|Center|Right +msgid "Alignment" +msgstr "對齊" + +#. TRN - Input label. Be short as possible +msgid "Char gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Line gap" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Boldness" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Like Font italic +msgid "Skew ratio" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Distance from model surface to be able +#. move text as part fully into not flat surface +#. move text as modifier fully out of not flat surface +#. TRN - Input label. Be short as possible +msgid "From surface" +msgstr "" + +#. TRN - Input label. Be short as possible +#. Keep vector from bottom to top of text aligned with printer Y axis +msgid "Keep up" +msgstr "" + +#. TRN - Input label. Be short as possible. +#. Some Font file contain multiple fonts inside and +#. this is numerical selector of font inside font collections +msgid "Collection" +msgstr "" + +#. TRN - Title in Undo/Redo stack after rotate with SVG around emboss axe +msgid "SVG rotate" +msgstr "" + +#. TRN - Title in Undo/Redo stack after move with SVG along emboss axe - From surface +msgid "SVG move" +msgstr "" + +msgid "Enter SVG gizmo" +msgstr "" + +msgid "Leave SVG gizmo" +msgstr "" + +msgid "SVG actions" +msgstr "" + +msgid "SVG" +msgstr "SVG" + +#, boost-format +msgid "Opacity (%1%)" +msgstr "" + +#, boost-format +msgid "Color gradient (%1%)" +msgstr "" + +msgid "Undefined fill type" +msgstr "" + +msgid "Linear gradient" +msgstr "" + +msgid "Radial gradient" +msgstr "" + +msgid "Open filled path" +msgstr "" + +msgid "Undefined stroke type" +msgstr "" + +msgid "Path can't be healed from selfintersection and multiple points." +msgstr "" + +msgid "" +"Final shape constains selfintersection or multiple points with same " +"coordinate." +msgstr "" + +#, boost-format +msgid "Shape is marked as invisible (%1%)." +msgstr "" + +#. TRN: The first placeholder is shape identifier, the second one is text describing the problem. +#, boost-format +msgid "Fill of shape (%1%) contains unsupported: %2%." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) is too thin (minimal width is %2% mm)." +msgstr "" + +#, boost-format +msgid "Stroke of shape (%1%) contains unsupported: %2%." +msgstr "" + +msgid "Face the camera" +msgstr "" + +#. TRN - Preview of filename after clear local filepath. +msgid "Unknown filename" +msgstr "" + +#, boost-format +msgid "SVG file path is \"%1%\"" +msgstr "" + +msgid "Reload SVG file from disk." +msgstr "" + +msgid "Change file" +msgstr "" + +msgid "Change to another .svg file" +msgstr "" + +msgid "Forget the file path" +msgstr "" + +msgid "" +"Do NOT save local path to 3MF file.\n" +"Also disables 'reload from disk' option." +msgstr "" + +#. TRN: An menu option to convert the SVG into an unmodifiable model part. +msgid "Bake" +msgstr "" + +#. TRN: Tooltip for the menu item. +msgid "Bake into model as uneditable part" +msgstr "" + +msgid "Save as" +msgstr "" + +msgid "Save SVG file" +msgstr "" + +msgid "Save as '.svg' file" +msgstr "" + +msgid "Size in emboss direction." +msgstr "" + +#. TRN: The placeholder contains a number. +#, boost-format +msgid "Scale also changes amount of curve samples (%1%)" +msgstr "" + +msgid "Width of SVG." +msgstr "" + +msgid "Height of SVG." +msgstr "" + +msgid "Lock/unlock the aspect ratio of the SVG." +msgstr "" + +msgid "Reset scale" +msgstr "重置比例" + +msgid "Distance of the center of the SVG to the model surface." +msgstr "" + +msgid "Reset distance" +msgstr "" + +msgid "Reset rotation" +msgstr "重置旋轉" + +msgid "Lock/unlock rotation angle when dragging above the surface." +msgstr "" + +msgid "Mirror vertically" +msgstr "垂直鏡像" + +msgid "Mirror horizontally" +msgstr "水平鏡像" + +#. TRN: This is the name of the action that shows in undo/redo stack (changing part type from SVG to something else). +msgid "Change SVG Type" +msgstr "" + +#. TRN - Input label. Be short as possible +msgid "Mirror" +msgstr "鏡像" + +msgid "Choose SVG file for emboss:" +msgstr "" + +#, boost-format +msgid "File does NOT exist (%1%)." +msgstr "" + +#, boost-format +msgid "Filename has to end with \".svg\" but you selected %1%" +msgstr "" + +#, boost-format +msgid "Nano SVG parser can't load from file (%1%)." +msgstr "" + +#, boost-format +msgid "SVG file does NOT contain a single path to be embossed (%1%)." +msgstr "" + +msgid "Vertex" +msgstr "" + +msgid "Edge" +msgstr "" + +msgid "Plane" +msgstr "" + +msgid "Point on edge" +msgstr "" + +msgid "Point on circle" +msgstr "" + +msgid "Point on plane" +msgstr "" + +msgid "Center of edge" +msgstr "" + +msgid "Center of circle" +msgstr "" + +msgid "ShiftLeft mouse button" +msgstr "" + +msgid "Select feature" +msgstr "" + +msgid "Select point" +msgstr "" + +msgid "Delete" +msgstr "刪除" + +msgid "Restart selection" +msgstr "" + +msgid "Esc" +msgstr "Esc" + +msgid "Unselect" +msgstr "" + +msgid "Measure" +msgstr "" + +msgid "Edit to scale" +msgstr "" + +msgctxt "Verb" +msgid "Scale" +msgstr "縮放" + +msgid "None" +msgstr "無" + +msgid "Diameter" +msgstr "直徑" + +msgid "Length" +msgstr "長度" + +msgid "Selection" +msgstr "所選項目" + +msgid "Copy to clipboard" +msgstr "複製到剪貼簿" + +msgid "Perpendicular distance" +msgstr "" + +msgid "Distance" +msgstr "" + +msgid "Direct distance" +msgstr "" + +msgid "Distance XYZ" +msgstr "" + +msgid "Ctrl+" +msgstr "Ctrl+" + +msgid "Notice" +msgstr "通知" + +msgid "Undefined" +msgstr "未定義" + +#, boost-format +msgid "%1% was replaced with %2%" +msgstr "%1% 已被 %2% 替換" + +#, fuzzy +msgid "The configuration may be generated by a newer version of Snapmaker Orca." +msgstr "此設定可能由新版本的 Snapmaker Orca 產生" + +msgid "Some values have been replaced. Please check them:" +msgstr "部分數值已被更換,請檢查:" + +msgid "Process" +msgstr "列印參數" + +msgid "Filament" +msgstr "線材" + +#, fuzzy +msgid "Machine" +msgstr "列印設備" + +#, fuzzy +msgid "Configuration package was loaded, but some values were not recognized." +msgstr "設定檔已被載入,但部分數值未被識別。" + +#, fuzzy, boost-format +msgid "" +"Configuration file \"%1%\" was loaded, but some values were not recognized." +msgstr "設定檔 “%1%” 已被載入,但部分數值未被識別。" + +#, fuzzy +msgid "" +"Snapmaker Orca will terminate because of running out of memory.It may be a bug. " +"It will be appreciated if you report the issue to our team." +msgstr "" +"系統記憶體耗盡,Snapmaker Orca 即將停止並且結束。這可能是個錯誤,希望您可以報告" +"此問題,我們將非常感激。" + +msgid "Fatal error" +msgstr "致命錯誤" + +#, fuzzy +msgid "" +"Snapmaker Orca will terminate because of a localization error. It will be " +"appreciated if you report the specific scenario this issue happened." +msgstr "" +"遇到語系本地化錯誤,Snapmaker Orca 即將停止並且結束。希望您可以報告發生此問題的" +"具體狀況,我們將非常感激。" + +msgid "Critical error" +msgstr "嚴重錯誤" + +#, fuzzy, boost-format +msgid "Snapmaker Orca got an unhandled exception: %1%" +msgstr "Snapmaker Orca 遭遇到一個未處理的異常:%1%" + +msgid "Untitled" +msgstr "未命名" + +msgid "Downloading Bambu Network Plug-in" +msgstr "正在下載 Bambu 網路套件" + +msgid "Login information expired. Please login again." +msgstr "登入資訊已過期。請重新登入。" + +msgid "Incorrect password" +msgstr "密碼不正確" + +#, fuzzy, c-format, boost-format +msgid "Connect %s failed! [SN:%s, code=%s]" +msgstr "連接 %s 失敗。[SN:%s, code=%s]" + +msgid "" +"Snapmaker Orca requires the Microsoft WebView2 Runtime to operate certain " +"features.\n" +"Click Yes to install it now." +msgstr "" +"Snapmaker Orca 需要 Microsoft WebView2 Runtime 才能操作某些功能,請點擊 Yes 進行" +"安裝。" + +msgid "WebView2 Runtime" +msgstr "WebView2 Runtime" + +#, fuzzy, c-format, boost-format +msgid "" +"%s\n" +"Do you want to continue?" +msgstr "" +"%s\n" +"是否繼續?" + +msgid "Remember my choice" +msgstr "記住我的選擇" + +#, fuzzy +msgid "Loading configuration" +msgstr "正在讀取設定檔" + +#, fuzzy, c-format, boost-format +msgid "Click to download new version in default browser: %s" +msgstr "在預設瀏覽器中點擊下載最新版本: %s" + +#, fuzzy +msgid "The Snapmaker Orca needs an upgrade" +msgstr " Snapmaker Orca 需要進行升級" + +msgid "This is the newest version." +msgstr "已經是最新版本。" + +msgid "Info" +msgstr "資訊" + +msgid "" +"The Snapmaker Orca configuration file may be corrupted and cannot be parsed.\n" +"Snapmaker Orca has attempted to recreate the configuration file.\n" +"Please note, application settings will be lost, but printer profiles will " +"not be affected." +msgstr "" + +msgid "Rebuild" +msgstr "重新建構" + +#, fuzzy +msgid "Loading current presets" +msgstr "載入目前預設" + +msgid "Loading a mode view" +msgstr "載入模式視圖" + +#, fuzzy +msgid "Choose one file (3mf):" +msgstr "選擇一個檔案(3mf)" + +#, fuzzy +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf/usd*/abc/ply):" +msgstr "選擇一個或多個檔案(3mf/step/stl/svg/obj/amf/usd*/abc/ply):" + +msgid "Choose one or more files (3mf/step/stl/svg/obj/amf):" +msgstr "選擇一個或多個檔案(3mf/step/stl/svg/obj/amf):" + +msgid "Choose ZIP file" +msgstr "" + +#, fuzzy +msgid "Choose one file (gcode/3mf):" +msgstr "選擇一個檔案(gcode/3mf):" + +msgid "Some presets are modified." +msgstr "部分預設已被修改。" + +msgid "" +"You can keep the modifield presets to the new project, discard or save " +"changes as new presets." +msgstr "您可以保留尚未儲存修改的預設應用到新項目中,或者選擇忽略。" + +msgid "User logged out" +msgstr "使用者登出" + +msgid "new or open project file is not allowed during the slicing process!" +msgstr "在執行切片過程中不允許新增或打開專案項目!" + +msgid "Open Project" +msgstr "打開專案項目" + +#, fuzzy +msgid "" +"The version of Snapmaker Orca is too low and needs to be updated to the latest " +"version before it can be used normally" +msgstr " Snapmaker Orca 版本過低,需要更新到最新版本方可正常使用" + +msgid "Privacy Policy Update" +msgstr "隱私協議更新" + +msgid "" +"The number of user presets cached in the cloud has exceeded the upper limit, " +"newly created user presets can only be used locally." +msgstr "" + +msgid "Sync user presets" +msgstr "" + +msgid "Loading user preset" +msgstr "正在載入使用者預設" + +msgid "Switching application language" +msgstr "切換應用程式語言" + +msgid "Select the language" +msgstr "選擇語言" + +msgid "Language" +msgstr "語言" + +msgid "*" +msgstr "*" + +msgid "The uploads are still ongoing" +msgstr "正在上傳任務中" + +msgid "Stop them and continue anyway?" +msgstr "停止並且繼續?" + +msgid "Ongoing uploads" +msgstr "正在進行的上傳" + +msgid "Select a G-code file:" +msgstr "選擇一個 G-code 檔案:" + +msgid "" +"Could not start URL download. Destination folder is not set. Please choose " +"destination folder in Configuration Wizard." +msgstr "" + +msgid "Import File" +msgstr "匯入檔案" + +msgid "Choose files" +msgstr "選擇檔案" + +msgid "New Folder" +msgstr "新增資料夾" + +msgid "Open" +msgstr "打開" + +msgid "Rename" +msgstr "重新命名" + +#, fuzzy +msgid "Snapmaker Orca GUI initialization failed" +msgstr " Snapmaker Orca 圖形界面初始化失敗" + +#, boost-format +msgid "Fatal error, exception catched: %1%" +msgstr "致命錯誤,遭遇到異常:%1%" + +#, fuzzy +msgid "Quality" +msgstr "列印品質" + +msgid "Shell" +msgstr "外殼" + +msgid "Infill" +msgstr "填充" + +msgid "Support" +msgstr "支撐" + +msgid "Flush options" +msgstr "換料沖刷選項" + +#, fuzzy +msgid "Speed" +msgstr "列印速度" + +#, fuzzy +msgid "Strength" +msgstr "列印強度" + +msgid "Top Solid Layers" +msgstr "頂部實心層" + +msgid "Top Minimum Shell Thickness" +msgstr "頂部外殼最小厚度" + +msgid "Bottom Solid Layers" +msgstr "底部實心層" + +msgid "Bottom Minimum Shell Thickness" +msgstr "底部外殼最小厚度" + +msgid "Ironing" +msgstr "熨燙" + +msgid "Fuzzy Skin" +msgstr "絨毛表面" + +msgid "Extruders" +msgstr "擠出機" + +msgid "Extrusion Width" +msgstr "擠出寬度" + +msgid "Wipe options" +msgstr "擦除選項" + +msgid "Bed adhesion" +msgstr "熱床黏接" + +#, fuzzy +msgid "Add part" +msgstr "新增零件" + +msgid "Add negative part" +msgstr "新增負零件" + +msgid "Add modifier" +msgstr "新增修改器" + +msgid "Add support blocker" +msgstr "新增支撐遮蔽" + +msgid "Add support enforcer" +msgstr "新增支撐產生器" + +msgid "Add text" +msgstr "" + +msgid "Add negative text" +msgstr "" + +msgid "Add text modifier" +msgstr "" + +msgid "Add SVG part" +msgstr "" + +msgid "Add negative SVG" +msgstr "" + +msgid "Add SVG modifier" +msgstr "" + +msgid "Select settings" +msgstr "選擇設定" + +msgid "Hide" +msgstr "隱藏" + +msgid "Show" +msgstr "顯示" + +msgid "Del" +msgstr "刪除" + +msgid "Delete the selected object" +msgstr "刪除所選物件" + +msgid "Load..." +msgstr "載入..." + +msgid "Cube" +msgstr "立方體" + +msgid "Cylinder" +msgstr "圓柱體" + +msgid "Cone" +msgstr "錐體" + +msgid "Disc" +msgstr "" + +msgid "Torus" +msgstr "" + +msgid "Orca Cube" +msgstr "Orca 立方體" + +msgid "3DBenchy" +msgstr "測試小船" + +msgid "Autodesk FDM Test" +msgstr "Autodesk FDM 測試" + +msgid "Voron Cube" +msgstr "Voron 立方體" + +msgid "Stanford Bunny" +msgstr "" + +msgid "Orca String Hell" +msgstr "" + +msgid "" +"This model features text embossment on the top surface. For optimal results, " +"it is advisable to set the 'One Wall Threshold(min_width_top_surface)' to 0 " +"for the 'Only One Wall on Top Surfaces' to work best.\n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" + +msgid "Text" +msgstr "" + +msgid "Height range Modifier" +msgstr "高度範圍修改器" + +msgid "Add settings" +msgstr "新增設定" + +msgid "Change type" +msgstr "更改類型" + +#, fuzzy +msgid "Set as an individual object" +msgstr "設定為獨立物件" + +#, fuzzy +msgid "Set as individual objects" +msgstr "設定為獨立物件" + +msgid "Fill bed with copies" +msgstr "鋪滿列印板" + +#, fuzzy +msgid "Fill the remaining area of bed with copies of the selected object" +msgstr "用選取物件的副本鋪滿列印板的空白區域" + +msgid "Printable" +msgstr "可列印的" + +msgid "Fix model" +msgstr "修復模型" + +msgid "Export as one STL" +msgstr "" + +msgid "Export as STLs" +msgstr "" + +msgid "Reload from disk" +msgstr "從磁碟重新載入" + +msgid "Reload the selected parts from disk" +msgstr "從磁碟重新載入選中的零件" + +msgid "Replace with STL" +msgstr "替換為 STL" + +msgid "Replace the selected part with new STL" +msgstr "用新的 STL 替換選中的零件" + +msgid "Change filament" +msgstr "更換線材" + +#, fuzzy +msgid "Set filament for selected items" +msgstr "為所選項目設定使用的線材" + +msgid "Default" +msgstr "預設" + +#, c-format, boost-format +msgid "Filament %d" +msgstr "線材 %d" + +#, fuzzy +msgid "current" +msgstr "目前" + +msgid "Scale to build volume" +msgstr "縮放到列印空間範圍大小" + +msgid "Scale an object to fit the build volume" +msgstr "縮放物件以適應列印空間範圍大小" + +#, fuzzy +msgid "Flush Options" +msgstr "換料沖刷選項" + +msgid "Flush into objects' infill" +msgstr "將換料的廢料使用在物件的填充" + +msgid "Flush into this object" +msgstr "將換料的廢料使用在這個物件" + +msgid "Flush into objects' support" +msgstr "將換料的廢料使用在物件的支撐" + +msgid "Edit in Parameter Table" +msgstr "在參數表格中編輯" + +msgid "Convert from inch" +msgstr "從英寸轉換" + +msgid "Restore to inch" +msgstr "恢復到英寸" + +msgid "Convert from meter" +msgstr "從公尺轉換" + +msgid "Restore to meter" +msgstr "恢復到公尺" + +msgid "Assemble" +msgstr "組合" + +msgid "Assemble the selected objects to an object with multiple parts" +msgstr "組合所選物件為一個多零件物件" + +msgid "Assemble the selected objects to an object with single part" +msgstr "組合所選物件為一個單零件物件" + +#, fuzzy +msgid "Mesh boolean" +msgstr "網格布林操作" + +#, fuzzy +msgid "Mesh boolean operations including union and subtraction" +msgstr "包括併集和差集的網格布林運算" + +msgid "Along X axis" +msgstr "沿 X 軸" + +msgid "Mirror along the X axis" +msgstr "沿 X 軸鏡像" + +msgid "Along Y axis" +msgstr "沿 Y 軸" + +msgid "Mirror along the Y axis" +msgstr "沿 Y 軸鏡像" + +msgid "Along Z axis" +msgstr "沿 Z 軸" + +msgid "Mirror along the Z axis" +msgstr "沿 Z 軸鏡像" + +msgid "Mirror object" +msgstr "鏡像物件" + +msgid "Edit text" +msgstr "" + +msgid "Ability to change text, font, size, ..." +msgstr "" + +msgid "Edit SVG" +msgstr "" + +msgid "Change SVG source file, projection, size, ..." +msgstr "" + +msgid "Invalidate cut info" +msgstr "解除切割關係" + +msgid "Add Primitive" +msgstr "新增標準模型" + +msgid "Add Handy models" +msgstr "" + +msgid "Add Models" +msgstr "新增模型" + +msgid "Show Labels" +msgstr "顯示標籤" + +msgid "To objects" +msgstr "拆分到物件" + +msgid "Split the selected object into multiple objects" +msgstr "拆分所選物件為多個物件" + +msgid "To parts" +msgstr "到零件" + +msgid "Split the selected object into multiple parts" +msgstr "拆分所選物件為多個零件" + +msgid "Split" +msgstr "拆分" + +msgid "Split the selected object" +msgstr "拆分所選物件" + +msgid "Auto orientation" +msgstr "自動定向" + +#, fuzzy +msgid "Auto orient the object to improve print quality." +msgstr "自動調整物件方向以提高列印品質。" + +msgid "Select All" +msgstr "全選" + +#, fuzzy +msgid "select all objects on current plate" +msgstr "全選列印板上所有物件" + +msgid "Delete All" +msgstr "刪除所有" + +#, fuzzy +msgid "delete all objects on current plate" +msgstr "刪除列印板上所有物件" + +msgid "Arrange" +msgstr "自動擺放" + +#, fuzzy +msgid "arrange current plate" +msgstr "在列印板執行自動擺放" + +msgid "Reload All" +msgstr "" + +msgid "reload all from disk" +msgstr "" + +msgid "Auto Rotate" +msgstr "自動旋轉方向" + +#, fuzzy +msgid "auto rotate current plate" +msgstr "在列印板執行自動旋轉方向" + +#, fuzzy +msgid "Delete Plate" +msgstr "刪除列印板" + +#, fuzzy +msgid "Remove the selected plate" +msgstr "刪除所選列印板" + +msgid "Clone" +msgstr "複製" + +msgid "Simplify Model" +msgstr "簡化模型" + +msgid "Center" +msgstr "居中" + +msgid "Edit Process Settings" +msgstr "編輯列印參數" + +msgid "Edit print parameters for a single object" +msgstr "編輯單個物件的列印參數" + +msgid "Change Filament" +msgstr "更換線材" + +msgid "Set Filament for selected items" +msgstr "為所選項目設定使用的線材" + +msgid "Unlock" +msgstr "解鎖" + +msgid "Lock" +msgstr "鎖定" + +#, fuzzy +msgid "Edit Plate Name" +msgstr "編輯列印板名" + +msgid "Name" +msgstr "名稱" + +msgid "Fila." +msgstr "線材" + +#, c-format, boost-format +msgid "%1$d error repaired" +msgid_plural "%1$d errors repaired" +msgstr[0] "%1$d 個錯誤被修復" + +#, c-format, boost-format +msgid "Error: %1$d non-manifold edge." +msgid_plural "Error: %1$d non-manifold edges." +msgstr[0] "錯誤:%1$d 非流形邊." + +msgid "Remaining errors" +msgstr "剩餘錯誤" + +#, c-format, boost-format +msgid "%1$d non-manifold edge" +msgid_plural "%1$d non-manifold edges" +msgstr[0] "%1$d 非流形邊" + +#, fuzzy +msgid "Right click the icon to fix model object" +msgstr "滑鼠右鍵點擊此圖示可修復模型物件" + +#, fuzzy +msgid "Right button click the icon to drop the object settings" +msgstr "滑鼠右鍵點擊此圖示以放棄物件的設定參數" + +#, fuzzy +msgid "Click the icon to reset all settings of the object" +msgstr "滑鼠左鍵點擊此圖示可重設物件的所有設定參數" + +#, fuzzy +msgid "Right button click the icon to drop the object printable property" +msgstr "滑鼠右鍵點擊此圖示以捨棄物件的可列印屬性" + +#, fuzzy +msgid "Click the icon to toggle printable property of the object" +msgstr "滑鼠左點擊此圖示可切換這個物件的可列印屬性" + +#, fuzzy +msgid "Click the icon to edit support painting of the object" +msgstr "滑鼠左鍵點擊此圖示可編輯這個物件的支撐繪製" + +#, fuzzy +msgid "Click the icon to edit color painting of the object" +msgstr "滑鼠左鍵點擊此圖示可編輯這個物件的顏色繪製" + +#, fuzzy +msgid "Click the icon to shift this object to the bed" +msgstr "滑鼠左鍵點擊這個圖示可將物件移動到列印板上" + +msgid "Loading file" +msgstr "載入檔案中" + +msgid "Error!" +msgstr "錯誤!" + +msgid "Failed to get the model data in the current file." +msgstr "取得目前檔案中的模型數據失敗。" + +msgid "Generic" +msgstr "一般" + +msgid "Add Modifier" +msgstr "新增修改器" + +msgid "Switch to per-object setting mode to edit modifier settings." +msgstr "切換到各個物件設定模式以編輯修改器的設定參數。" + +#, fuzzy +msgid "" +"Switch to per-object setting mode to edit process settings of selected " +"objects." +msgstr "切換到各個物件設定模式以編輯所選物件的列印參數" + +msgid "Delete connector from object which is a part of cut" +msgstr "刪除的連接件屬於切割物件的一部分" + +msgid "Delete solid part from object which is a part of cut" +msgstr "刪除的實體屬於切割物件的一部分" + +msgid "Delete negative volume from object which is a part of cut" +msgstr "刪除的負體積屬於切割物件的一部分" + +msgid "" +"To save cut correspondence you can delete all connectors from all related " +"objects." +msgstr "為保證切割關係,您可以將所有關聯物件的連接件一起刪除。" + +#, fuzzy +msgid "" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed .\n" +"\n" +"To manipulate with solid parts or negative volumes you have to invalidate " +"cut infornation first." +msgstr "" +"該行為將破壞切割關係,在此之後將無法保證模型一致性。\n" +"\n" +"如果要操作子零件或者負零件,需要先解除切割關係。" + +msgid "Delete all connectors" +msgstr "刪除所有連接件" + +msgid "Deleting the last solid part is not allowed." +msgstr "不允許刪除物件的最後一個實體零件。" + +msgid "The target object contains only one part and can not be splited." +msgstr "目標物件僅包含一個零件,無法被拆分。" + +msgid "Assembly" +msgstr "組合體" + +msgid "Cut Connectors information" +msgstr "切割連接件資訊" + +msgid "Object manipulation" +msgstr "物件操作" + +msgid "Group manipulation" +msgstr "群組操作" + +msgid "Object Settings to modify" +msgstr "要修改的物件設定" + +msgid "Part Settings to modify" +msgstr "要修改的零件設定" + +msgid "Layer range Settings to modify" +msgstr "要修改的圖層範圍設定" + +msgid "Part manipulation" +msgstr "零件操作" + +msgid "Instance manipulation" +msgstr "實例操作" + +msgid "Height ranges" +msgstr "高度範圍" + +msgid "Settings for height range" +msgstr "高度範圍設定" + +msgid "Layer" +msgstr "層" + +msgid "Selection conflicts" +msgstr "選擇衝突" + +msgid "" +"If first selected item is an object, the second one should also be object." +msgstr "如果第一個選擇的是物件,那麼第二個選擇的也必須是物件。" + +#, fuzzy +msgid "" +"If first selected item is a part, the second one should be part in the same " +"object." +msgstr "如果第一個選擇的是零件,那麼第二個選擇的也必須是同一個物件中的零件。" + +msgid "The type of the last solid object part is not to be changed." +msgstr "不允許修改物件中最後一個實體零件的類型。" + +msgid "Negative Part" +msgstr "負零件" + +msgid "Support Blocker" +msgstr "支撐去除器" + +msgid "Support Enforcer" +msgstr "支撐添加器" + +msgid "Type:" +msgstr "類型:" + +msgid "Choose part type" +msgstr "選擇零件類型" + +msgid "Enter new name" +msgstr "輸入新名稱" + +msgid "Renaming" +msgstr "重新命名" + +msgid "Following model object has been repaired" +msgid_plural "Following model objects have been repaired" +msgstr[0] "以下模型物件已被修復" + +msgid "Failed to repair following model object" +msgid_plural "Failed to repair following model objects" +msgstr[0] "以下模型物件修復失敗" + +msgid "Repairing was canceled" +msgstr "修復被取消" + +msgid "Additional process preset" +msgstr "附加列印參數預設" + +msgid "Remove parameter" +msgstr "刪除參數" + +msgid "to" +msgstr "到" + +msgid "Remove height range" +msgstr "移除高度範圍" + +msgid "Add height range" +msgstr "新增高度範圍" + +msgid "Invalid numeric." +msgstr "數值錯誤。" + +msgid "one cell can only be copied to one or multiple cells in the same column" +msgstr "一個單元格僅能被複製到同一列的一個或多個單元格" + +msgid "multiple cells copy is not supported" +msgstr "不支援多個單元格的複製" + +#, fuzzy +msgid "Outside" +msgstr "列印板外" + +msgid "Layer height" +msgstr "層高" + +msgid "Wall loops" +msgstr "牆層數" + +#, fuzzy +msgid "Infill density(%)" +msgstr "填充密度(%)" + +msgid "Auto Brim" +msgstr "自動Brim(裙邊)" + +msgid "Mouse ear" +msgstr "圓盤" + +msgid "Outer brim only" +msgstr "僅外側" + +msgid "Inner brim only" +msgstr "僅內側" + +msgid "Outer and inner brim" +msgstr "內側和外側" + +#, fuzzy +msgid "No-brim" +msgstr "無brim(裙邊)" + +msgid "Outer wall speed" +msgstr "外牆速度" + +#, fuzzy +msgid "Plate" +msgstr "列印板" + +#, fuzzy +msgid "Brim" +msgstr "Brim(裙邊)" + +#, fuzzy +msgid "Object/Part Setting" +msgstr "物件/零件 設定" + +msgid "Reset parameter" +msgstr "重設參數" + +msgid "Multicolor Print" +msgstr "多色列印" + +msgid "Line Type" +msgstr "走線類型" + +msgid "More" +msgstr "詳情" + +msgid "Open Preferences." +msgstr "偏好設定" + +msgid "Open next tip." +msgstr "打開下一條提示" + +msgid "Open Documentation in web browser." +msgstr "在網頁瀏覽器中打開檔案。" + +msgid "Color" +msgstr "顏色" + +msgid "Pause" +msgstr "暫停" + +msgid "Template" +msgstr "" + +msgid "Custom" +msgstr "自訂" + +msgid "Pause:" +msgstr "暫停" + +msgid "Custom Template:" +msgstr "自訂模板:" + +msgid "Custom G-code:" +msgstr "自訂 G-code:" + +msgid "Custom G-code" +msgstr "自訂 G-code" + +#, fuzzy +msgid "Enter Custom G-code used on current layer:" +msgstr "輸入目前層上使用的自訂 G-code:" + +msgid "Jump to Layer" +msgstr "轉換到層" + +msgid "Please enter the layer number" +msgstr "請輸入層數" + +msgid "Add Pause" +msgstr "新增暫停列印" + +msgid "Insert a pause command at the beginning of this layer." +msgstr "在該層的初始位置插入暫停。" + +msgid "Add Custom G-code" +msgstr "新增自訂 G-code" + +msgid "Insert custom G-code at the beginning of this layer." +msgstr "在該層的初始位置插入自訂 G-code。" + +msgid "Add Custom Template" +msgstr "新增自訂模板" + +msgid "Insert template custom G-code at the beginning of this layer." +msgstr "在該層的初始位置插入模板自訂 G-code。" + +msgid "Filament " +msgstr "線材" + +msgid "Change filament at the beginning of this layer." +msgstr "在該層的初始位置更換線材。" + +msgid "Delete Pause" +msgstr "刪除暫停列印" + +msgid "Delete Custom Template" +msgstr "刪除自訂模板" + +msgid "Edit Custom G-code" +msgstr "編輯自訂 G-code" + +msgid "Delete Custom G-code" +msgstr "刪除自訂 G-code" + +msgid "Delete Filament Change" +msgstr "刪除線材更換" + +#, fuzzy +msgid "No printer" +msgstr "無列印設備" + +msgid "..." +msgstr "..." + +msgid "Failed to connect to the server" +msgstr "無法連接伺服器" + +#, fuzzy +msgid "Check the status of current system services" +msgstr "請檢查目前系統服務狀態" + +msgid "code" +msgstr "" + +msgid "Failed to connect to cloud service" +msgstr "無法連接到雲端服務" + +msgid "Please click on the hyperlink above to view the cloud service status" +msgstr "請點擊上方的超連結以查看雲端服務狀態" + +#, fuzzy +msgid "Failed to connect to the printer" +msgstr "無法連接列印設備" + +#, fuzzy +msgid "Connection to printer failed" +msgstr "連接列印設備失敗" + +#, fuzzy +msgid "Please check the network connection of the printer and Orca." +msgstr "請檢查列印設備和 Snapmaker Orca 的網路連接" + +msgid "Connecting..." +msgstr "連線中..." + +msgid "?" +msgstr "" + +msgid "/" +msgstr "" + +msgid "Empty" +msgstr "空" + +msgid "AMS" +msgstr "AMS" + +msgid "Auto Refill" +msgstr "自動補充" + +msgid "AMS not connected" +msgstr "AMS 尚未連接" + +msgid "Load" +msgstr "匯入" + +msgid "Unload" +msgstr "退料" + +msgid "Ext Spool" +msgstr "外掛線材" + +msgid "Tips" +msgstr "提示" + +msgid "Guide" +msgstr "引導" + +msgid "Retry" +msgstr "重試" + +msgid "Calibrating AMS..." +msgstr "正在校準 AMS..." + +msgid "A problem occurred during calibration. Click to view the solution." +msgstr "校準過程遇到問題。點擊查看解決方案。" + +msgid "Calibrate again" +msgstr "重新校準" + +msgid "Cancel calibration" +msgstr "取消校準" + +msgid "Idling..." +msgstr "閒置..." + +msgid "Heat the nozzle" +msgstr "加熱噴嘴" + +msgid "Cut filament" +msgstr "切斷線材" + +msgid "Pull back current filament" +msgstr "抽回線材" + +msgid "Push new filament into extruder" +msgstr "送出新的線材到擠出機" + +msgid "Purge old filament" +msgstr "清除舊線材" + +msgid "Feed Filament" +msgstr "進料" + +msgid "Confirm extruded" +msgstr "確認擠出" + +msgid "Check filament location" +msgstr "檢查線材位置" + +msgid "Grab new filament" +msgstr "咬入線材" + +msgid "" +"Choose an AMS slot then press \"Load\" or \"Unload\" button to automatically " +"load or unload filaments." +msgstr "" + +msgid "Edit" +msgstr "編輯" + +#, fuzzy +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-arrange on these objects." +msgstr "" +"所有選中的物件都處於被鎖定的列印板上,\n" +"無法對這些物件做自動擺放。" + +msgid "No arrangable objects are selected." +msgstr "未選擇欲排列的物件象。" + +#, fuzzy +msgid "" +"This plate is locked,\n" +"We can not do auto-arrange on this plate." +msgstr "該列印板處於鎖定狀態,無法對其進行自動擺放。" + +msgid "Arranging..." +msgstr "自動擺放中..." + +msgid "Arranging" +msgstr "自動擺放" + +msgid "Arranging canceled." +msgstr "已取消自動擺放。" + +#, fuzzy +msgid "" +"Arranging is done but there are unpacked items. Reduce spacing and try again." +msgstr "已完成自動擺放,但是有未被擺到列印板內的物件,可在減小物件間距後重試。" + +msgid "Arranging done." +msgstr "已完成自動擺放。" + +msgid "" +"Arrange failed. Found some exceptions when processing object geometries." +msgstr "自動擺放失敗,處理物件位置時遇到異常。" + +#, fuzzy, c-format, boost-format +msgid "" +"Arrangement ignored the following objects which can't fit into a single " +"bed:\n" +"%s" +msgstr "" +"自動擺放會忽略以下無法放入單一列印板的物件:\n" +"%s" + +#, fuzzy +msgid "" +"All the selected objects are on the locked plate,\n" +"We can not do auto-orient on these objects." +msgstr "" +"所有選中的物件都處於被鎖定的列印板上,\n" +"無法對這些物件做自動定向。" + +#, fuzzy +msgid "" +"This plate is locked,\n" +"We can not do auto-orient on this plate." +msgstr "" +"該列印板處於鎖定狀態,\n" +"無法對其進行自動定向。" + +msgid "Orienting..." +msgstr "自動旋轉方向..." + +msgid "Orienting" +msgstr "自動旋轉方向..." + +msgid "Orienting canceled." +msgstr "" + +msgid "Filling" +msgstr "" + +msgid "Bed filling canceled." +msgstr "填充列印板已取消。" + +msgid "Bed filling done." +msgstr "填充列印板已完成。" + +msgid "Searching for optimal orientation" +msgstr "查詢最佳方向" + +msgid "Orientation search canceled." +msgstr "定向搜尋已取消." + +msgid "Orientation found." +msgstr "找到方向。" + +msgid "Logging in" +msgstr "登入中" + +msgid "Login failed" +msgstr "登入失敗" + +#, fuzzy +msgid "Please check the printer network connection." +msgstr "請檢查列印設備的網路連接。" + +msgid "Abnormal print file data. Please slice again." +msgstr "列印檔案資料異常,請重新切片" + +msgid "Task canceled." +msgstr "任務已取消。" + +msgid "Upload task timed out. Please check the network status and try again." +msgstr "上傳任務逾時,請排查網路狀態後重試。" + +msgid "Cloud service connection failed. Please try again." +msgstr "雲端服務連接失敗,請重試" + +msgid "Print file not found. please slice again." +msgstr "未找到列印檔案,請重新切片。" + +msgid "" +"The print file exceeds the maximum allowable size (1GB). Please simplify the " +"model and slice again." +msgstr "列印檔案超過最大允許大小(1GB),請簡化模型後重新切片。" + +msgid "Failed to send the print job. Please try again." +msgstr "無法傳送列印作業,請重試。" + +msgid "Failed to upload file to ftp. Please try again." +msgstr "上傳檔案至 FTP 失敗,請重試。" + +#, fuzzy +msgid "" +"Check the current status of the bambu server by clicking on the link above." +msgstr "點擊上方的連結檢查 Bambu 伺服器的即時狀態。" + +msgid "" +"The size of the print file is too large. Please adjust the file size and try " +"again." +msgstr "列印檔案過大,請調整檔案大小後重試。" + +msgid "Print file not found, Please slice it again and send it for printing." +msgstr "未找到列印檔案,請重新切片後再傳送列印。" + +msgid "" +"Failed to upload print file to FTP. Please check the network status and try " +"again." +msgstr "無法將列印檔案上傳至 FTP。請檢查網路狀態並重試。" + +msgid "Sending print job over LAN" +msgstr "正在通過區域網路傳送列印作業" + +msgid "Sending print job through cloud service" +msgstr "正在通過雲端服務傳送列印作業" + +msgid "Print task sending times out." +msgstr "" + +msgid "Service Unavailable" +msgstr "暫停服務" + +msgid "Unknown Error." +msgstr "未知錯誤" + +msgid "Sending print configuration" +msgstr "正在傳送列印設定" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the device page in %ss" +msgstr "已傳送完成,即將自動轉換到設備頁面(%s秒)" + +#, c-format, boost-format +msgid "Successfully sent. Will automatically jump to the next page in %ss" +msgstr "已成功傳送。將自動轉換到 %ss 中的下一頁。" + +msgid "An SD card needs to be inserted before printing via LAN." +msgstr "透過區域網路列印之前需要插入 SD 記憶卡。" + +msgid "Sending gcode file over LAN" +msgstr "透過區域網路傳送 gcode 檔案" + +msgid "Sending gcode file to sdcard" +msgstr "傳送 gcode 檔案到 SD 記憶卡" + +#, fuzzy, c-format, boost-format +msgid "Successfully sent. Close current page in %s s" +msgstr "傳送成功。即將關閉目前頁面(%s秒)" + +#, fuzzy +msgid "An SD card needs to be inserted before sending to printer." +msgstr "傳送到列印設備前需要先插入 SD 記憶卡。" + +msgid "Importing SLA archive" +msgstr "匯入 SLA 存檔" + +msgid "" +"The SLA archive doesn't contain any presets. Please activate some SLA " +"printer preset first before importing that SLA archive." +msgstr "" +"SLA 存檔不包含任何預設。在匯入該 SLA 存檔之前,請先啟用一些 SLA 印表機預設。" + +msgid "Importing canceled." +msgstr "匯入已取消。" + +msgid "Importing done." +msgstr "匯入完成。" + +#, fuzzy +msgid "" +"The imported SLA archive did not contain any presets. The current SLA " +"presets were used as fallback." +msgstr "匯入的 SLA 存檔不包含任何預設。目前的 SLA 預設被用作備用選項。" + +msgid "You cannot load SLA project with a multi-part object on the bed" +msgstr "您無法在列印板上載入包含多部分物件的 SLA 項目" + +msgid "Please check your object list before preset changing." +msgstr "請在更改預設之前檢查您的物件清單。" + +msgid "Attention!" +msgstr "注意!" + +msgid "Downloading" +msgstr "下載中" + +msgid "Download failed" +msgstr "下載失敗" + +msgid "Cancelled" +msgstr "已取消" + +msgid "Install successfully." +msgstr "安裝成功。" + +msgid "Installing" +msgstr "安裝中" + +msgid "Install failed" +msgstr "安裝失敗" + +msgid "Portions copyright" +msgstr "部分版權" + +msgid "Copyright" +msgstr "版權" + +msgid "License" +msgstr "憑證" + +#, fuzzy +msgid "Snapmaker Orca is licensed under " +msgstr " Snapmaker Orca 是在" + +msgid "GNU Affero General Public License, version 3" +msgstr "GNU Affero 通用公共許可證,版本 3 下授權的" + +msgid "Snapmaker Orca is Based on Orca Slicer" +msgstr "" + +msgid "Libraries" +msgstr "庫" + +msgid "" +"This software uses open source components whose copyright and other " +"proprietary rights belong to their respective owners" +msgstr "本軟體使用開源組件,其版權和其他所有權屬於各自的所有者" + +#, c-format, boost-format +msgid "About %s" +msgstr "關於 %s" + +msgid "Snapmaker Orca " +msgstr "Snapmaker Orca " + +#, fuzzy +msgid "Snapmaker Orca is based on BambuStudio, PrusaSlicer, and SuperSlicer." +msgstr "" +"Snapmaker Orca 是基於 Bambulab 的 BambuStudio, PrusaSlicer, and SuperSlicer 開發" + +#, fuzzy +msgid "BambuStudio is originally based on PrusaSlicer by PrusaResearch." +msgstr "BambuStudio 最初是基於 PrusaResearch 的 PrusaSlicer。" + +msgid "PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci." +msgstr "PrusaSlicer 最初是基於 Alessandro Ranellucci 的 Slic3r。" + +msgid "" +"Slic3r was created by Alessandro Ranellucci with the help of many other " +"contributors." +msgstr "Slic3r 由 Alessandro Ranellucci 在其他眾多貢獻者的幫助下創建。" + +msgid "Version" +msgstr "版本" + +msgid "AMS Materials Setting" +msgstr "AMS 線材設定" + +msgid "Confirm" +msgstr "確定" + +msgid "Close" +msgstr "關閉" + +msgid "Colour" +msgstr "顏色" + +msgid "" +"Nozzle\n" +"Temperature" +msgstr "噴嘴溫度" + +msgid "max" +msgstr "最大" + +msgid "min" +msgstr "最小" + +#, boost-format +msgid "The input value should be greater than %1% and less than %2%" +msgstr "輸入的範圍在 %1% 和 %2% 之間" + +msgid "SN" +msgstr "序號" + +msgid "Setting AMS slot information while printing is not supported" +msgstr "不支援在列印時修改 AMS 槽位資訊" + +msgid "Factors of Flow Dynamics Calibration" +msgstr "動態流量係數校準" + +msgid "PA Profile" +msgstr "PA 配置檔" + +msgid "Factor K" +msgstr "係數 K" + +msgid "Factor N" +msgstr "係數 N" + +msgid "Setting Virtual slot information while printing is not supported" +msgstr "不支援在列印時設定虛擬槽位資訊" + +msgid "Are you sure you want to clear the filament information?" +msgstr "您確定要清除線材資訊嗎?" + +msgid "You need to select the material type and color first." +msgstr "您需要先選擇線材類型和顏色。" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f)" +msgstr "" + +#, c-format, boost-format +msgid "Please input a valid value (K in %.1f~%.1f, N in %.1f~%.1f)" +msgstr "" + +msgid "Other Color" +msgstr "其他顏色" + +msgid "Custom Color" +msgstr "自訂顏色" + +msgid "Dynamic flow calibration" +msgstr "動態流量校準" + +msgid "" +"The nozzle temp and max volumetric speed will affect the calibration " +"results. Please fill in the same values as the actual printing. They can be " +"auto-filled by selecting a filament preset." +msgstr "" +"噴嘴溫度和最大體積速度會影響到校準結果,請填寫與實際列印相同的數值。可通過選" +"擇已有的材料預設來自動填寫。" + +msgid "Nozzle Diameter" +msgstr "噴嘴直徑" + +#, fuzzy +msgid "Bed Type" +msgstr "列印板類型" + +msgid "Nozzle temperature" +msgstr "噴嘴溫度" + +msgid "Bed Temperature" +msgstr "熱床溫度" + +msgid "Max volumetric speed" +msgstr "最大體積速度" + +msgid "℃" +msgstr "" + +msgid "Bed temperature" +msgstr "床溫" + +msgid "mm³" +msgstr "mm³" + +msgid "Start calibration" +msgstr "開始" + +msgid "Next" +msgstr "下一步" + +#, fuzzy +msgid "" +"Calibration completed. Please find the most uniform extrusion line on your " +"hot bed like the picture below, and fill the value on its left side into the " +"factor K input box." +msgstr "" +"校準完成。如下圖中的範例,請在您的熱床上找到最均勻完整的擠出線,並將其左側的" +"數值填入係數 K 欄位。" + +msgid "Save" +msgstr "儲存" + +msgid "Last Step" +msgstr "上一步" + +msgid "Example" +msgstr "範例" + +#, c-format, boost-format +msgid "Calibrating... %d%%" +msgstr "校準中... %d%%" + +msgid "Calibration completed" +msgstr "校準已完成" + +#, c-format, boost-format +msgid "%s does not support %s" +msgstr "%s 不支援 %s" + +msgid "Dynamic flow Calibration" +msgstr "動態流量校準" + +msgid "Step" +msgstr "步驟" + +msgid "AMS Slots" +msgstr "AMS 槽內線材" + +msgid "" +"Note: Only the AMS slots loaded with the same material type can be selected." +msgstr "僅允許選擇放入同種材質線材的 AMS 槽位" + +#, fuzzy +msgid "Enable AMS" +msgstr "使用 AMS" + +#, fuzzy +msgid "Print with filaments in the AMS" +msgstr "使用 AMS 裡的線材列印" + +#, fuzzy +msgid "Disable AMS" +msgstr "停用 AMS" + +msgid "Print with the filament mounted on the back of chassis" +msgstr "使用機箱背後掛載的線材列印" + +msgid "Current Cabin humidity" +msgstr "" + +msgid "" +"Please change the desiccant when it is too wet. The indicator may not " +"represent accurately in following cases : when the lid is open or the " +"desiccant pack is changed. it take hours to absorb the moisture, low " +"temperatures also slow down the process." +msgstr "" + +#, fuzzy +msgid "" +"Config which AMS slot should be used for a filament used in the print job" +msgstr "設定列印作業中所使用的線材應使用哪個 AMS 插槽" + +msgid "Filament used in this print job" +msgstr "目前列印作業中使用的線材" + +msgid "AMS slot used for this filament" +msgstr "目前線材對應的 AMS 槽位" + +msgid "Click to select AMS slot manually" +msgstr "滑鼠左鍵點擊以手動選擇 AMS 槽位" + +msgid "Do not Enable AMS" +msgstr "不使用 AMS" + +msgid "Print using materials mounted on the back of the case" +msgstr "使用安裝在機箱背面的線材進行列印" + +#, fuzzy +msgid "Print with filaments in ams" +msgstr "使用 AMS 裡的線材列印" + +#, fuzzy +msgid "Print with filaments mounted on the back of the chassis" +msgstr "使用掛載在機箱背部的線材列印" + +#, fuzzy +msgid "" +"When the current material run out, the printer will continue to print in the " +"following order." +msgstr "當目前線材用完時,列印設備將按照以下順序繼續列印。" + +msgid "Group" +msgstr "組" + +#, fuzzy +msgid "The printer does not currently support auto refill." +msgstr "此列印設備目前不支援自動補給備用線材。" + +#, fuzzy +msgid "" +"AMS filament backup is not enabled, please enable it in the AMS settings." +msgstr "AMS 備用線材自動補給未啟用,請在 AMS 設定中啟用。" + +#, fuzzy +msgid "" +"If there are two identical filaments in AMS, AMS filament backup will be " +"enabled. \n" +"(Currently supporting automatic supply of consumables with the same brand, " +"material type, and color)" +msgstr "" +"如果 AMS 中有兩個相同的線材,則會啟用 AMS 備用線材自動補給功能。\n" +"(目前支援同品牌、同材質、同顏色的耗材自動供應)" + +msgid "DRY" +msgstr "" + +msgid "WET" +msgstr "" + +msgid "AMS Settings" +msgstr "AMS 設定" + +msgid "Insertion update" +msgstr "插入線材時更新" + +msgid "" +"The AMS will automatically read the filament information when inserting a " +"new Bambu Lab filament. This takes about 20 seconds." +msgstr "" +"當插入新的 Bambu Lab 官方線材的時候,AMS 會自動讀取線材資訊。這個過程大約需要" +"20秒。" + +msgid "" +"Note: if a new filament is inserted during printing, the AMS will not " +"automatically read any information until printing is completed." +msgstr "" + +msgid "" +"When inserting a new filament, the AMS will not automatically read its " +"information, leaving it blank for you to enter manually." +msgstr "" +"在插入一卷新線材時,AMS 將不會自動讀取線材資訊,預留一個空的線材資訊等待您手" +"動輸入。" + +msgid "Power on update" +msgstr "開機時偵測" + +#, fuzzy +msgid "" +"The AMS will automatically read the information of inserted filament on " +"start-up. It will take about 1 minute.The reading process will roll filament " +"spools." +msgstr "" +"每次開機時,AMS 將會自動讀取其所插入的線材資訊(讀取過程會轉動線材卷)。需要" +"花時大約1分鐘。" + +msgid "" +"The AMS will not automatically read information from inserted filament " +"during startup and will continue to use the information recorded before the " +"last shutdown." +msgstr "AMS 不會在啟動時自動讀取線材資訊。它會使用上次關機前記錄的資訊。" + +#, fuzzy +msgid "Update remaining capacity" +msgstr "更新線材剩餘容量" + +msgid "" +"The AMS will estimate Bambu filament's remaining capacity after the filament " +"info is updated. During printing, remaining capacity will be updated " +"automatically." +msgstr "" +"AMS 讀取 Bambu Lab 官方線材資訊同時預估線材卷的剩餘線材量。在列印過程中,剩餘" +"線材量會自動更新。" + +#, fuzzy +msgid "AMS filament backup" +msgstr "AMS 備用線材" + +msgid "" +"AMS will continue to another spool with the same properties of filament " +"automatically when current filament runs out" +msgstr "AMS 線材耗盡後將自動切換到屬性完全相同的線材" + +msgid "Air Printing Detection" +msgstr "" + +msgid "" +"Detects clogging and filament grinding, halting printing immediately to " +"conserve time and filament." +msgstr "" + +msgid "File" +msgstr "檔案" + +msgid "Calibration" +msgstr "校準" + +#, fuzzy +msgid "" +"Failed to download the plug-in. Please check your firewall settings and vpn " +"software, check and retry." +msgstr "套件下載失敗。請檢查您的防火牆設定和 VPN 軟體,檢查後重試。" + +#, fuzzy +msgid "" +"Failed to install the plug-in. Please check whether it is blocked or deleted " +"by anti-virus software." +msgstr "安裝套件失敗。請檢查是否被防毒軟體阻擋或刪除。" + +msgid "click here to see more info" +msgstr "點擊這裡查看更多資訊" + +msgid "Please home all axes (click " +msgstr "請先執行回原點(點擊" + +#, fuzzy +msgid "" +") to locate the toolhead's position. This prevents device moving beyond the " +"printable boundary and causing equipment wear." +msgstr ")操作以定位目前工具頭位置,以防止軸移動時超出邊界造成設備損壞" + +msgid "Go Home" +msgstr "回原點" + +msgid "" +"A error occurred. Maybe memory of system is not enough or it's a bug of the " +"program" +msgstr "發生錯誤。可能系統記憶體不足或者程式存在錯誤。" + +msgid "Please save project and restart the program. " +msgstr "請儲存專案項目並重啟程式。" + +msgid "Processing G-Code from Previous file..." +msgstr "從之前的檔案載入 G-Code..." + +msgid "Slicing complete" +msgstr "切片完成" + +msgid "Access violation" +msgstr "非法訪問" + +msgid "Illegal instruction" +msgstr "非法指令" + +msgid "Divide by zero" +msgstr "除零" + +msgid "Overflow" +msgstr "上溢" + +msgid "Underflow" +msgstr "下溢" + +msgid "Floating reserved operand" +msgstr "浮點保留操作數" + +msgid "Stack overflow" +msgstr "堆疊溢位" + +msgid "Running post-processing scripts" +msgstr "執行後處理腳本" + +msgid "Successfully executed post-processing script" +msgstr "" + +msgid "Unknown error occured during exporting G-code." +msgstr "匯出 G-code 期間發生未知錯誤。" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. Maybe the SD " +"card is write locked?\n" +"Error message: %1%" +msgstr "" +"將臨時的 G-code 複製到輸出的 G-code 失敗 ,也許 SD 卡寫入被鎖定?\n" +"錯誤訊息:%1%" + +#, boost-format +msgid "" +"Copying of the temporary G-code to the output G-code failed. There might be " +"problem with target device, please try exporting again or using different " +"device. The corrupted output G-code is at %1%.tmp." +msgstr "" +"將臨時 G-code 複製到輸出 G-code 時失敗。目標設備可能存在問題,請嘗試再次匯出" +"或使用不同的設備。損壞的G-code 已輸出為%1%.tmp。" + +#, boost-format +msgid "" +"Renaming of the G-code after copying to the selected destination folder has " +"failed. Current path is %1%.tmp. Please try exporting again." +msgstr "" +"複製到選取之目標檔案夾的 G-code 重命名失敗。當前路徑為%1%.tmp。請再試看看匯" +"出。" + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the original code at %1% " +"couldn't be opened during copy check. The output G-code is at %2%.tmp." +msgstr "" +"臨時 G-code 的 複製已完成,但原始 G-code 因%1%在複製檢查期間無法打開。輸出 G-" +"code 為%2%.tmp。" + +#, boost-format +msgid "" +"Copying of the temporary G-code has finished but the exported code couldn't " +"be opened during copy check. The output G-code is at %1%.tmp." +msgstr "" +"臨時 G-code 的複制已完成,但匯出的 G-code 無法在復製檢查過程中打開。輸出 G-" +"code 為%1%.tmp。" + +#, boost-format +msgid "G-code file exported to %1%" +msgstr "G-code 檔案已匯出為 %1%" + +msgid "Unknown error when export G-code." +msgstr "匯出 G-code 檔案發生未知錯誤。" + +#, boost-format +msgid "" +"Failed to save gcode file.\n" +"Error message: %1%.\n" +"Source file %2%." +msgstr "" +"無法儲存 G-code 檔案。\n" +"錯誤資訊:%1%。\n" +"原始檔 %2%." + +msgid "Copying of the temporary G-code to the output G-code failed" +msgstr "將臨時 G-Code 複製到輸出 G-Code 失敗" + +#, boost-format +msgid "Scheduling upload to `%1%`. See Window -> Print Host Upload Queue" +msgstr "計劃上傳到 `%1%`。請參閱視窗-> 列印設備上傳隊列" + +msgid "Device" +msgstr "設備" + +msgid "Task Sending" +msgstr "" + +msgid "Task Sent" +msgstr "" + +msgid "Edit multiple printers" +msgstr "" + +msgid "Select connected printers (0/6)" +msgstr "" + +#, c-format, boost-format +msgid "Select Connected Printers (%d/6)" +msgstr "" + +#, c-format, boost-format +msgid "The maximum number of printers that can be selected is %d" +msgstr "" + +msgid "Offline" +msgstr "離線" + +msgid "No task" +msgstr "" + +msgid "View" +msgstr "視角" + +msgid "N/A" +msgstr "N/A" + +msgid "Edit Printers" +msgstr "" + +msgid "Device Name" +msgstr "" + +msgid "Task Name" +msgstr "" + +msgid "Device Status" +msgstr "" + +msgid "Actions" +msgstr "" + +msgid "" +"Please select the devices you would like to manage here (up to 6 devices)" +msgstr "" + +msgid "Add" +msgstr "新增" + +msgid "Idle" +msgstr "閒置" + +msgid "Printing" +msgstr "列印中" + +msgid "Upgrading" +msgstr "" + +msgid "Incompatible" +msgstr "不相容的預設" + +msgid "syncing" +msgstr "" + +msgid "Printing Finish" +msgstr "" + +msgid "Printing Failed" +msgstr "" + +msgid "Printing Pause" +msgstr "" + +msgid "Prepare" +msgstr "準備" + +#, fuzzy +msgid "Slicing" +msgstr "正在切片中" + +msgid "Pending" +msgstr "" + +msgid "Sending" +msgstr "" + +msgid "Sending Finish" +msgstr "" + +msgid "Sending Cancel" +msgstr "" + +msgid "Sending Failed" +msgstr "" + +msgid "Print Success" +msgstr "" + +msgid "Print Failed" +msgstr "" + +msgid "Removed" +msgstr "" + +msgid "Resume" +msgstr "繼續" + +msgid "Stop" +msgstr "停止" + +msgid "Task Status" +msgstr "" + +msgid "Sent Time" +msgstr "" + +msgid "There are no tasks to be sent!" +msgstr "" + +msgid "No historical tasks!" +msgstr "" + +msgid "Loading..." +msgstr "正在載入影片……" + +msgid "No AMS" +msgstr "" + +msgid "Send to Multi-device" +msgstr "" + +msgid "Preparing print job" +msgstr "正在準備列印作業" + +#, fuzzy +msgid "Abnormal print file data. Please slice again" +msgstr "列印檔案資料異常,請重新切片" + +msgid "There is no device available to send printing." +msgstr "" + +msgid "The number of printers in use simultaneously cannot be equal to 0." +msgstr "" + +msgid "Use External Spool" +msgstr "" + +msgid "Use AMS" +msgstr "" + +msgid "Select Printers" +msgstr "" + +msgid "Ams Status" +msgstr "" + +msgid "Printing Options" +msgstr "" + +msgid "Bed Leveling" +msgstr "熱床調平" + +msgid "Timelapse" +msgstr "縮時攝影" + +msgid "Flow Dynamic Calibration" +msgstr "" + +msgid "Send Options" +msgstr "" + +msgid "Send to" +msgstr "" + +msgid "" +"printers at the same time.(It depends on how many devices can undergo " +"heating at the same time.)" +msgstr "" + +msgid "Wait" +msgstr "等待" + +msgid "" +"minute each batch.(It depends on how long it takes to complete the heating.)" +msgstr "" + +msgid "Send" +msgstr "傳送" + +msgid "Name is invalid;" +msgstr "無效名稱;" + +msgid "illegal characters:" +msgstr "非法字元:" + +msgid "illegal suffix:" +msgstr "非法後綴:" + +msgid "The name is not allowed to be empty." +msgstr "名稱不允許為空。" + +msgid "The name is not allowed to start with space character." +msgstr "名稱不允許以空格開頭。" + +msgid "The name is not allowed to end with space character." +msgstr "名稱不允許以空格結尾。" + +msgid "The name length exceeds the limit." +msgstr "名稱長度超過限制。" + +msgid "Origin" +msgstr "原點" + +msgid "Size in X and Y of the rectangular plate." +msgstr "矩形框在 X 和 Y 方向的尺寸。" + +msgid "" +"Distance of the 0,0 G-code coordinate from the front left corner of the " +"rectangle." +msgstr "G-code 0,0 坐標相對於矩形框左前角的距離。" + +#, fuzzy +msgid "" +"Diameter of the print bed. It is assumed that origin (0,0) is located in the " +"center." +msgstr "熱床直徑。假定原點(0,0) 位於中心。" + +msgid "Rectangular" +msgstr "矩形" + +msgid "Circular" +msgstr "圓" + +msgid "Load shape from STL..." +msgstr "從 STL 檔案載入形狀..." + +msgid "Settings" +msgstr "設定" + +msgid "Texture" +msgstr "紋理" + +msgid "Remove" +msgstr "移除" + +msgid "Not found:" +msgstr "未發現:" + +msgid "Model" +msgstr "模型" + +msgid "Choose an STL file to import bed shape from:" +msgstr "選擇熱床形狀的 STL 檔案:" + +msgid "Invalid file format." +msgstr "無效的檔案格式。" + +msgid "Error! Invalid model" +msgstr "錯誤!無效模型" + +msgid "The selected file contains no geometry." +msgstr "所選檔案不包含任何幾何數據。" + +msgid "" +"The selected file contains several disjoint areas. This is not supported." +msgstr "所選檔案包含多個未連接的區域。不支援這種類型。" + +#, fuzzy +msgid "Choose a file to import bed texture from (PNG/SVG):" +msgstr "選擇(PNG/SVG) 檔案作為熱床紋理:" + +#, fuzzy +msgid "Choose an STL file to import bed model from:" +msgstr "選擇 STL 檔案來匯入熱床模型:" + +msgid "Bed Shape" +msgstr "熱床形狀" + +msgid "" +"The recommended minimum temperature is less than 190 degree or the " +"recommended maximum temperature is greater than 300 degree.\n" +msgstr "" + +msgid "" +"The recommended minimum temperature cannot be higher than the recommended " +"maximum temperature.\n" +msgstr "" + +msgid "Please check.\n" +msgstr "" + +msgid "" +"Nozzle may be blocked when the temperature is out of recommended range.\n" +"Please make sure whether to use the temperature to print.\n" +"\n" +msgstr "" +"當溫度超過建議的範圍時,噴嘴可能會堵塞。\n" +"請確認是否使用該溫度列印\n" +"\n" + +#, c-format, boost-format +msgid "" +"Recommended nozzle temperature of this filament type is [%d, %d] degree " +"centigrade" +msgstr "該線材的推薦噴嘴溫度是攝氏[%d, %d]度" + +msgid "" +"Too small max volumetric speed.\n" +"Reset to 0.5" +msgstr "" +"最大體積速度設定過小\n" +"重設為 0.5" + +#, fuzzy, c-format, boost-format +msgid "" +"Current chamber temperature is higher than the material's safe temperature," +"it may result in material softening and clogging.The maximum safe " +"temperature for the material is %d" +msgstr "" +"目前列印設備內部溫高於線材的安全溫度,可能會導致線材軟化和堵塞。線材的最高安" +"全溫度為:%d" + +#, fuzzy +msgid "" +"Too small layer height.\n" +"Reset to 0.2" +msgstr "" +"層高過小。\n" +"將重設為 0.2。" + +#, fuzzy +msgid "" +"Too small ironing spacing.\n" +"Reset to 0.1" +msgstr "" +"熨燙線距過小。\n" +"將重設為 0.1。" + +#, fuzzy +msgid "" +"Zero initial layer height is invalid.\n" +"\n" +"The first layer height will be reset to 0.2." +msgstr "" +"首層層高為無效的 0 值。\n" +"將被重設為0.2。" + +#, fuzzy +msgid "" +"This setting is only used for model size tunning with small value in some " +"cases.\n" +"For example, when model size has small error and hard to be assembled.\n" +"For large size tuning, please use model scale function.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"這個設定僅用於在特定場景下微調模型尺寸。\n" +"例如,當模型尺寸誤差較小,難以組裝。\n" +"對於大尺寸的調整,請使用模型縮放功能。\n" +"\n" +"這個數值將被重設為 0。" + +#, fuzzy +msgid "" +"Too large elephant foot compensation is unreasonable.\n" +"If really have serious elephant foot effect, please check other settings.\n" +"For example, whether bed temperature is too high.\n" +"\n" +"The value will be reset to 0." +msgstr "" +"過大的象腳補償是不合理的。\n" +"如果確實有嚴重的象腳效應,請檢查其他設定。\n" +"例如,是否設定了過高的床溫。\n" +"\n" +"這個數值將被重設為 0。" + +msgid "" +"Alternate extra wall does't work well when ensure vertical shell thickness " +"is set to All. " +msgstr "" + +msgid "" +"Change these settings automatically? \n" +"Yes - Change ensure vertical shell thickness to Moderate and enable " +"alternate extra wall\n" +"No - Dont use alternate extra wall" +msgstr "" + +msgid "" +"Prime tower does not work when Adaptive Layer Height or Independent Support " +"Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height and Independent Support Layer Height" +msgstr "" +"擦拭塔不支援和自適應層高或支撐獨立層高。同時開啟\n" +"如何選擇?\n" +"是 - 選擇開啟擦拭塔\n" +"否 - 選擇保留自適應層高或支撐獨立層高" + +msgid "" +"Prime tower does not work when Adaptive Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Adaptive Layer Height" +msgstr "" +"擦拭塔不支援和自適應層高同時開啟。\n" +"如何選擇?\n" +"是 - 選擇開啟擦拭塔\n" +"否 - 選擇保留自適應層高" + +msgid "" +"Prime tower does not work when Independent Support Layer Height is on.\n" +"Which do you want to keep?\n" +"YES - Keep Prime Tower\n" +"NO - Keep Independent Support Layer Height" +msgstr "" +"擦拭塔不支援和支撐獨立層高同時開啟。\n" +"如何選擇?\n" +"是 - 選擇開啟擦拭塔\n" +"否 - 選擇保留支撐獨立層高" + +#, fuzzy +msgid "" +"While printing by Object, the extruder may collide skirt.\n" +"Thus, reset the skirt layer to 1 to avoid that." +msgstr "逐件列印時,擠出機可能與裙邊碰撞。因此將裙邊的層數重設為 1。" + +msgid "" +"seam_slope_start_height need to be smaller than layer_height.\n" +"Reset to 0." +msgstr "" + +#, fuzzy +msgid "" +"Spiral mode only works when wall loops is 1, support is disabled, top shell " +"layers is 0, sparse infill density is 0 and timelapse type is traditional." +msgstr "" +"花瓶模式只能在外牆層數為 1,關閉支撐,頂層層數為 0,稀疏填充密度為 0,傳統縮" +"時攝影時有效。" + +msgid " But machines with I3 structure will not generate timelapse videos." +msgstr "I3 結構機型將不產生縮時攝影。" + +#, fuzzy +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings and enable spiral mode automatically\n" +"No - Give up using spiral mode this time" +msgstr "" +"自動調整這些設定?\n" +"是 - 自動調整這些設定並開啟花瓶模式\n" +"否 - 不使用花瓶模式" + +msgid "Auto bed leveling" +msgstr "熱床自動調平" + +msgid "Heatbed preheating" +msgstr "預熱熱床" + +msgid "Sweeping XY mech mode" +msgstr "掃描 XY 軸機械模態" + +msgid "Changing filament" +msgstr "更換線材" + +msgid "M400 pause" +msgstr "M400 暫停" + +msgid "Paused due to filament runout" +msgstr "斷料暫停" + +msgid "Heating hotend" +msgstr "加熱熱端" + +msgid "Calibrating extrusion" +msgstr "校準擠出補償" + +msgid "Scanning bed surface" +msgstr "掃描熱床" + +#, fuzzy +msgid "Inspecting first layer" +msgstr "檢查首層" + +msgid "Identifying build plate type" +msgstr "識別列印板類型" + +msgid "Calibrating Micro Lidar" +msgstr "校準微型雷射雷達" + +msgid "Homing toolhead" +msgstr "工具頭回到起始點" + +msgid "Cleaning nozzle tip" +msgstr "清理噴嘴頭" + +msgid "Checking extruder temperature" +msgstr "檢查擠出溫度" + +msgid "Printing was paused by the user" +msgstr "使用者暫停列印" + +msgid "Pause of front cover falling" +msgstr "工具頭前蓋掉落暫停列印" + +msgid "Calibrating the micro lida" +msgstr "校準微型雷射雷達" + +msgid "Calibrating extrusion flow" +msgstr "校準擠出流量" + +#, fuzzy +msgid "Paused due to nozzle temperature malfunction" +msgstr "噴嘴溫度異常暫停" + +msgid "Paused due to heat bed temperature malfunction" +msgstr "熱床溫度異常暫停" + +msgid "Filament unloading" +msgstr "退料中" + +msgid "Skip step pause" +msgstr "丟步暫停" + +msgid "Filament loading" +msgstr "進料中" + +msgid "Motor noise calibration" +msgstr "電機噪音校準" + +msgid "Paused due to AMS lost" +msgstr "由於 AMS 遺失而暫停" + +#, fuzzy +msgid "Paused due to low speed of the heat break fan" +msgstr "散熱風扇轉速過低導致暫停" + +#, fuzzy +msgid "Paused due to chamber temperature control error" +msgstr "列印設備內部溫度控制錯誤導致暫停" + +#, fuzzy +msgid "Cooling chamber" +msgstr "列印設備內部溫度冷卻中" + +msgid "Paused by the Gcode inserted by user" +msgstr "使用者插入的 Gcode 導致暫停" + +msgid "Motor noise showoff" +msgstr "電機噪音" + +msgid "Nozzle filament covered detected pause" +msgstr "" + +msgid "Cutter error pause" +msgstr "" + +msgid "First layer error pause" +msgstr "" + +msgid "Nozzle clog pause" +msgstr "" + +msgid "Unknown" +msgstr "未定義" + +msgid "Fatal" +msgstr "致命" + +msgid "Serious" +msgstr "嚴重" + +msgid "Common" +msgstr "普通" + +msgid "Update successful." +msgstr "更新成功。" + +msgid "Downloading failed." +msgstr "下載失敗。" + +msgid "Verification failed." +msgstr "驗證失敗。" + +msgid "Update failed." +msgstr "更新失敗。" + +#, fuzzy +msgid "" +"The current chamber temperature or the target chamber temperature exceeds " +"45℃.In order to avoid extruder clogging,low temperature filament(PLA/PETG/" +"TPU) is not allowed to be loaded." +msgstr "" +"目前設備內部溫度超過 45℃。為避免擠出機阻塞,不允許導入低溫線材(PLA / PETG / " +"TPU)。" + +#, fuzzy +msgid "" +"Low temperature filament(PLA/PETG/TPU) is loaded in the extruder.In order to " +"avoid extruder clogging,it is not allowed to set the chamber temperature " +"above 45℃." +msgstr "" +"為避免擠出機堵塞,設備內部溫度不允許設定在 45℃ 以上時將低溫線材(PLA / " +"PETG / TPU)導入擠出機中。" + +#, fuzzy +msgid "" +"When you set the chamber temperature below 40℃, the chamber temperature " +"control will not be activated. And the target chamber temperature will " +"automatically be set to 0℃." +msgstr "" +"當您設定的設備內部溫度低於 40℃ 時,內部溫度控制將不會啟動。 且目標溫度將自動" +"設定為 0℃。" + +msgid "Failed to start printing job" +msgstr "無法啟動列印作業" + +msgid "" +"This calibration does not support the currently selected nozzle diameter" +msgstr "校準不支援目前選擇的噴嘴直徑" + +msgid "Current flowrate cali param is invalid" +msgstr "目前流量校準參數無效" + +#, fuzzy +msgid "Selected diameter and machine diameter do not match" +msgstr "所選噴嘴直徑與設備不匹配" + +msgid "Failed to generate cali gcode" +msgstr "產生校準代碼失敗" + +msgid "Calibration error" +msgstr "校準錯誤" + +msgid "TPU is not supported by AMS." +msgstr "AMS 不支援 TPU 線材。" + +msgid "Bambu PET-CF/PA6-CF is not supported by AMS." +msgstr "AMS 不支援 Bambu PET-CF/PA6-CF。" + +msgid "" +"Damp PVA will become flexible and get stuck inside AMS,please take care to " +"dry it before use." +msgstr "潮濕的 PVA 會變得柔軟並黏在 AMS 內,請在使用前注意乾燥。" + +msgid "" +"CF/GF filaments are hard and brittle, It's easy to break or get stuck in " +"AMS, please use with caution." +msgstr "含 CF/GF 線材又硬又脆,在 AMS 中很容易斷裂或卡住,請謹慎使用。" + +msgid "default" +msgstr "預設" + +#, boost-format +msgid "Edit Custom G-code (%1%)" +msgstr "" + +msgid "Built-in placeholders (Double click item to add to G-code)" +msgstr "" + +msgid "Search gcode placeholders" +msgstr "" + +msgid "Add selected placeholder to G-code" +msgstr "" + +msgid "Select placeholder" +msgstr "" + +msgid "[Global] Slicing State" +msgstr "" + +msgid "Read Only" +msgstr "" + +msgid "Read Write" +msgstr "" + +msgid "Slicing State" +msgstr "" + +msgid "Print Statistics" +msgstr "" + +msgid "Objects Info" +msgstr "" + +msgid "Dimensions" +msgstr "" + +msgid "Temperatures" +msgstr "溫度" + +msgid "Timestamps" +msgstr "" + +#, boost-format +msgid "Specific for %1%" +msgstr "" + +msgid "Presets" +msgstr "預設" + +msgid "Print settings" +msgstr "列印設定" + +msgid "Filament settings" +msgstr "線材設定" + +msgid "SLA Materials settings" +msgstr "" + +#, fuzzy +msgid "Printer settings" +msgstr "列印設備設定" + +msgid "parameter name" +msgstr "參數名稱" + +#, c-format, boost-format +msgid "%s can't be percentage" +msgstr "%s 不可以是百分比" + +#, c-format, boost-format +msgid "Value %s is out of range, continue?" +msgstr "值 %s 超出範圍,是否繼續?" + +msgid "Parameter validation" +msgstr "參數驗證" + +#, c-format, boost-format +msgid "Value %s is out of range. The valid range is from %d to %d." +msgstr "" + +msgid "Value is out of range." +msgstr "值超出範圍。" + +#, fuzzy, c-format, boost-format +msgid "" +"Is it %s%% or %s %s?\n" +"YES for %s%%, \n" +"NO for %s %s." +msgstr "" +"%s%% 還是 %s %s?\n" +"是:%s%%\n" +"否:%s %s" + +#, boost-format +msgid "" +"Invalid input format. Expected vector of dimensions in the following format: " +"\"%1%\"" +msgstr "輸入格式無效。預期向量應使用以下格式:“%1%”" + +msgid "Input value is out of range" +msgstr "輸入值超出範圍" + +msgid "Some extension in the input is invalid" +msgstr "" + +#, fuzzy, boost-format +msgid "Invalid format. Expected vector format: \"%1%\"" +msgstr "無效格式,應該是 \"%1%\" 這種格式" + +msgid "Layer Height" +msgstr "層高" + +msgid "Line Width" +msgstr "線寬" + +msgid "Fan Speed" +msgstr "風扇速度" + +msgid "Temperature" +msgstr "溫度" + +msgid "Flow" +msgstr "流量" + +msgid "Tool" +msgstr "工具" + +msgid "Layer Time" +msgstr "層時間" + +#, fuzzy +msgid "Layer Time (log)" +msgstr "層時間(對數)" + +#, fuzzy +msgid "Height: " +msgstr "層高:" + +#, fuzzy +msgid "Width: " +msgstr "線寬:" + +#, fuzzy +msgid "Speed: " +msgstr "速度:" + +#, fuzzy +msgid "Flow: " +msgstr "擠出流量:" + +#, fuzzy +msgid "Layer Time: " +msgstr "層時間:" + +#, fuzzy +msgid "Fan: " +msgstr "風扇速度:" + +#, fuzzy +msgid "Temperature: " +msgstr "溫度:" + +#, fuzzy +msgid "Loading G-codes" +msgstr "載入 G-code 中" + +msgid "Generating geometry vertex data" +msgstr "正在產生幾何頂點數據" + +msgid "Generating geometry index data" +msgstr "正在產生幾何索引數據" + +#, fuzzy +msgid "Statistics of All Plates" +msgstr "所有列印板切片資訊" + +msgid "Display" +msgstr "顯示" + +#, fuzzy +msgid "Flushed" +msgstr "廢料" + +msgid "Tower" +msgstr "" + +msgid "Total" +msgstr "總計" + +msgid "Total Estimation" +msgstr "總預估" + +msgid "Total time" +msgstr "總時間" + +msgid "Total cost" +msgstr "總成本" + +msgid "up to" +msgstr "達到" + +msgid "above" +msgstr "高於" + +msgid "from" +msgstr "從" + +msgid "Color Scheme" +msgstr "顏色方案" + +msgid "Time" +msgstr "時間" + +msgid "Percent" +msgstr "百分比" + +msgid "Used filament" +msgstr "使用的線材" + +#, fuzzy +msgid "Layer Height (mm)" +msgstr "層高(mm)" + +#, fuzzy +msgid "Line Width (mm)" +msgstr "線寬{mm)" + +#, fuzzy +msgid "Speed (mm/s)" +msgstr "速度(mm/s)" + +msgid "Fan Speed (%)" +msgstr "風扇速度(%)" + +msgid "Temperature (°C)" +msgstr "溫度(℃)" + +#, fuzzy +msgid "Volumetric flow rate (mm³/s)" +msgstr "體積流量速度(mm³/s)" + +msgid "Travel" +msgstr "空駛" + +msgid "Seams" +msgstr "縫" + +msgid "Retract" +msgstr "回抽" + +msgid "Unretract" +msgstr "裝填回抽" + +msgid "Filament Changes" +msgstr "線材更換" + +msgid "Wipe" +msgstr "擦拭" + +msgid "Options" +msgstr "選項" + +msgid "travel" +msgstr "空駛" + +msgid "Extruder" +msgstr "擠出機" + +msgid "Filament change times" +msgstr "更換線材次數" + +msgid "Cost" +msgstr "成本" + +msgid "Color change" +msgstr "顏色更換" + +msgid "Print" +msgstr "列印" + +#, fuzzy +msgid "Printer" +msgstr "列印設備" + +msgid "Custom g-code" +msgstr "" + +msgid "ToolChange" +msgstr "" + +msgid "Time Estimation" +msgstr "時間預估" + +msgid "Normal mode" +msgstr "普通模式" + +msgid "Total Filament" +msgstr "" + +msgid "Model Filament" +msgstr "" + +msgid "Prepare time" +msgstr "準備時間" + +msgid "Model printing time" +msgstr "模型列印時間" + +msgid "Switch to silent mode" +msgstr "切換到靜音模式" + +msgid "Switch to normal mode" +msgstr "切換到普通模式" + +msgid "Variable layer height" +msgstr "可變層高" + +msgid "Adaptive" +msgstr "自適應" + +msgid "Quality / Speed" +msgstr "細節/速度" + +msgid "Smooth" +msgstr "平滑模式" + +msgid "Radius" +msgstr "半徑" + +msgid "Keep min" +msgstr "保留最小" + +msgid "Left mouse button:" +msgstr "滑鼠左鍵:" + +msgid "Add detail" +msgstr "減小層高" + +msgid "Right mouse button:" +msgstr "滑鼠右鍵:" + +msgid "Remove detail" +msgstr "增大層高" + +msgid "Shift + Left mouse button:" +msgstr "Shift + 滑鼠左鍵:" + +msgid "Reset to base" +msgstr "設定到基礎層高" + +msgid "Shift + Right mouse button:" +msgstr "Shift + 滑鼠右鍵:" + +msgid "Smoothing" +msgstr "平滑" + +msgid "Mouse wheel:" +msgstr "滑鼠滾輪:" + +msgid "Increase/decrease edit area" +msgstr "增加/減小編輯區域" + +msgid "Sequence" +msgstr "順序" + +msgid "Mirror Object" +msgstr "鏡像物體" + +msgid "Tool Move" +msgstr "工具 移動" + +msgid "Tool Rotate" +msgstr "工具 旋轉" + +msgid "Move Object" +msgstr "移動物件" + +msgid "Auto Orientation options" +msgstr "自動定向選項" + +msgid "Enable rotation" +msgstr "開啟旋轉" + +msgid "Optimize support interface area" +msgstr "最佳化接觸面面積" + +# src/slic3r/GUI/GLCanvas3D.cpp:4767 +msgid "Orient" +msgstr "調整定向" + +msgid "Arrange options" +msgstr "自動擺放選項" + +msgid "Spacing" +msgstr "間距" + +msgid "0 means auto spacing." +msgstr "" + +msgid "Auto rotate for arrangement" +msgstr "自動旋轉以最佳化自動擺放效果" + +#, fuzzy +msgid "Allow multiple materials on same plate" +msgstr "允許同一列印板中包含多種材料" + +msgid "Avoid extrusion calibration region" +msgstr "避開擠出校準區域" + +msgid "Align to Y axis" +msgstr "與 Y 軸對齊" + +#, fuzzy +msgid "Add plate" +msgstr "新增列印板" + +msgid "Auto orient" +msgstr "自動定向" + +msgid "Arrange all objects" +msgstr "全域整理" + +#, fuzzy +msgid "Arrange objects on selected plates" +msgstr "單一列印板整理" + +msgid "Split to objects" +msgstr "拆分為物件" + +msgid "Split to parts" +msgstr "拆分為零件" + +msgid "Assembly View" +msgstr "組裝視角" + +#, fuzzy +msgid "Select Plate" +msgstr "選擇列印板" + +msgid "Assembly Return" +msgstr "退出組裝視角" + +msgid "return" +msgstr "返回" + +msgid "Paint Toolbar" +msgstr "上色工具列" + +msgid "Explosion Ratio" +msgstr "爆炸比例" + +msgid "Section View" +msgstr "剖面視圖" + +msgid "Assemble Control" +msgstr "拼裝視角控制" + +msgid "Total Volume:" +msgstr "總體積:" + +msgid "Assembly Info" +msgstr "裝配體資訊" + +msgid "Volume:" +msgstr "體積:" + +msgid "Size:" +msgstr "尺寸:" + +#, fuzzy, c-format, boost-format +msgid "" +"Conflicts of gcode paths have been found at layer %d, z = %.2lf mm. Please " +"separate the conflicted objects farther (%s <-> %s)." +msgstr "" +"發現 gcode 路徑在 %d 層,高為 %.2lf mm處的衝突。請將有衝突的物件分離得更遠" +"(%s <-> %s)。" + +#, fuzzy +msgid "An object is layed over the boundary of plate." +msgstr "偵測到有物件放在列印板的邊界上。" + +msgid "A G-code path goes beyond the max print height." +msgstr "偵測到超出列印高度的 G-code 路徑。" + +msgid "A G-code path goes beyond the boundary of plate." +msgstr "偵測到超出熱床邊界的 G-code 路徑。" + +msgid "Only the object being edit is visible." +msgstr "只有正在編輯的物件是可見的。" + +msgid "" +"An object is laid over the boundary of plate or exceeds the height limit.\n" +"Please solve the problem by moving it totally on or off the plate, and " +"confirming that the height is within the build volume." +msgstr "" +"物件被放置在列印板的邊界上或超過高度限制。\n" +"請將其完全移動到列印板內或列印板外,並確認高度在列印空間範圍以內來解決問題。" + +msgid "Calibration step selection" +msgstr "校準步驟選擇" + +msgid "Micro lidar calibration" +msgstr "微型雷射雷達校準" + +msgid "Bed leveling" +msgstr "熱床調平" + +msgid "Vibration compensation" +msgstr "共振補償" + +msgid "Motor noise cancellation" +msgstr "電機噪音消除" + +msgid "Calibration program" +msgstr "校準程序" + +msgid "" +"The calibration program detects the status of your device automatically to " +"minimize deviation.\n" +"It keeps the device performing optimally." +msgstr "" +"校準程序會自動偵測設備以最小化設備誤差。\n" +"它可以讓設備保持最佳性能。" + +msgid "Calibration Flow" +msgstr "校準流程" + +msgid "Start Calibration" +msgstr "開始校準" + +msgid "Completed" +msgstr "已完成" + +msgid "Calibrating" +msgstr "校準中" + +msgid "No step selected" +msgstr "未選擇任何步驟" + +msgid "Auto-record Monitoring" +msgstr "監控錄影" + +msgid "Go Live" +msgstr "開啟直播" + +msgid "Liveview Retry" +msgstr "" + +msgid "Resolution" +msgstr "解析度" + +msgid "Enable" +msgstr "開啟" + +msgid "Hostname or IP" +msgstr "" + +msgid "Custom camera source" +msgstr "" + +msgid "Show \"Live Video\" guide page." +msgstr "顯示\"直播影片\"引導" + +msgid "720p" +msgstr "720p" + +msgid "1080p" +msgstr "1080p" + +#, fuzzy +msgid "ConnectPrinter(LAN)" +msgstr "連接列印設備(區域網路)" + +#, fuzzy +msgid "Please input the printer access code:" +msgstr "請輸入列印設備訪問碼:" + +#, fuzzy +msgid "" +"You can find it in \"Settings > Network > Connection code\"\n" +"on the printer, as shown in the figure:" +msgstr "" +"你可以在列印設備\"設置->網路->連接->訪問碼\"\n" +"查看,如下圖所示:" + +msgid "Invalid input." +msgstr "輸入無效" + +msgid "New Window" +msgstr "新視窗" + +msgid "Open a new window" +msgstr "打開新視窗" + +msgid "Application is closing" +msgstr "正在關閉應用程式" + +msgid "Closing Application while some presets are modified." +msgstr "正在關閉應用程式,部分預設已修改。" + +msgid "Logging" +msgstr "日誌" + +msgid "Preview" +msgstr "預覽" + +msgid "Multi-device" +msgstr "" + +msgid "Project" +msgstr "專案項目" + +msgid "Yes" +msgstr "是" + +msgid "No" +msgstr "否" + +msgid "will be closed before creating a new model. Do you want to continue?" +msgstr "將會被關閉以建立新模型,是否繼續?" + +#, fuzzy +msgid "Slice plate" +msgstr "切片單一列印板" + +#, fuzzy +msgid "Print plate" +msgstr "列印單一列印板" + +#, fuzzy +msgid "Slice all" +msgstr "切片所有列印板" + +msgid "Export G-code file" +msgstr "匯出 G-code 檔案" + +#, fuzzy +msgid "Export plate sliced file" +msgstr "匯出單一列印板切片檔案" + +#, fuzzy +msgid "Export all sliced file" +msgstr "匯出所有列印板切片檔案" + +#, fuzzy +msgid "Print all" +msgstr "列印所有列印板" + +#, fuzzy +msgid "Send all" +msgstr "傳送所有列印板" + +msgid "Keyboard Shortcuts" +msgstr "快捷鍵" + +msgid "Show the list of the keyboard shortcuts" +msgstr "顯示快捷鍵清單" + +msgid "Setup Wizard" +msgstr "設定精靈" + +msgid "Show Configuration Folder" +msgstr "打開設定檔的資料夾" + +msgid "Show Tip of the Day" +msgstr "顯示每日小提示" + +msgid "Check for Update" +msgstr "檢查新版本" + +msgid "Open Network Test" +msgstr "打開網路測試" + +#, c-format, boost-format +msgid "&About %s" +msgstr "關於 %s" + +msgid "Upload Models" +msgstr "上傳模型" + +msgid "Download Models" +msgstr "下載模型" + +msgid "Default View" +msgstr "默認視圖" + +#. TRN To be shown in the main menu View->Top +msgid "Top" +msgstr "頂部" + +msgid "Top View" +msgstr "頂部視圖" + +#. TRN To be shown in the main menu View->Bottom +msgid "Bottom" +msgstr "底部" + +msgid "Bottom View" +msgstr "底部視圖" + +msgid "Front" +msgstr "前面" + +msgid "Front View" +msgstr "前視圖" + +msgid "Rear" +msgstr "後面" + +msgid "Rear View" +msgstr "後視圖" + +msgid "Left" +msgstr "左面" + +msgid "Left View" +msgstr "左視圖" + +msgid "Right" +msgstr "右面" + +msgid "Right View" +msgstr "右視圖" + +msgid "Start a new window" +msgstr "打開新視窗" + +msgid "New Project" +msgstr "新建專案項目" + +msgid "Start a new project" +msgstr "新建一個專案項目" + +msgid "Open a project file" +msgstr "打開專案項目" + +msgid "Recent projects" +msgstr "最近的專案項目" + +msgid "Save Project" +msgstr "儲存專案項目" + +#, fuzzy +msgid "Save current project to file" +msgstr "儲存目前專案項目到檔案" + +msgid "Save Project as" +msgstr "另存專案項目為" + +msgid "Shift+" +msgstr "Shift+" + +msgid "Save current project as" +msgstr "將目前專案項目另存為" + +msgid "Import 3MF/STL/STEP/SVG/OBJ/AMF" +msgstr "匯入 3MF/STL/STEP/SVG/OBJ/AMF" + +msgid "Load a model" +msgstr "載入模型" + +msgid "Import Zip Archive" +msgstr "" + +msgid "Load models contained within a zip archive" +msgstr "" + +#, fuzzy +msgid "Import Configs" +msgstr "匯入設定檔" + +#, fuzzy +msgid "Load configs" +msgstr "載入設定檔" + +msgid "Import" +msgstr "匯入" + +msgid "Export all objects as one STL" +msgstr "" + +msgid "Export all objects as STLs" +msgstr "" + +msgid "Export Generic 3MF" +msgstr "匯出通用 3MF" + +msgid "Export 3mf file without using some 3mf-extensions" +msgstr "匯出不含 3mf 擴展的 3mf 檔案" + +#, fuzzy +msgid "Export current sliced file" +msgstr "匯出目前已切片的檔案" + +#, fuzzy +msgid "Export all plate sliced file" +msgstr "匯出所有列印板已切片的檔案" + +msgid "Export G-code" +msgstr "匯出 G-code" + +#, fuzzy +msgid "Export current plate as G-code" +msgstr "匯出目前列印板的 G-code" + +msgid "Export Preset Bundle" +msgstr "" + +#, fuzzy +msgid "Export current configuration to files" +msgstr "匯出目前選擇的設定檔" + +msgid "Export" +msgstr "匯出" + +msgid "Quit" +msgstr "結束" + +msgid "Undo" +msgstr "復原" + +msgid "Redo" +msgstr "重做" + +msgid "Cut selection to clipboard" +msgstr "剪下所選項目到剪貼簿" + +msgid "Copy" +msgstr "複製" + +msgid "Copy selection to clipboard" +msgstr "複製所選項目到剪貼簿" + +msgid "Paste" +msgstr "貼上" + +msgid "Paste clipboard" +msgstr "從剪貼簿貼上" + +msgid "Delete selected" +msgstr "刪除所選項目" + +#, fuzzy +msgid "Deletes the current selection" +msgstr "刪除目前所選項目" + +msgid "Delete all" +msgstr "全部刪除" + +#, fuzzy +msgid "Deletes all objects" +msgstr "刪除所有物件" + +msgid "Clone selected" +msgstr "複製所選項目" + +msgid "Clone copies of selections" +msgstr "複製多份所選項目" + +msgid "Select all" +msgstr "選取所有" + +msgid "Selects all objects" +msgstr "選取所有物件" + +msgid "Deselect all" +msgstr "取消所有選取" + +msgid "Deselects all objects" +msgstr "取消所有選取物件" + +msgid "Use Perspective View" +msgstr "使用透視視角" + +msgid "Use Orthogonal View" +msgstr "使用正交視角" + +msgid "Show &G-code Window" +msgstr "" + +msgid "Show g-code window in Previce scene" +msgstr "" + +msgid "Show 3D Navigator" +msgstr "" + +msgid "Show 3D navigator in Prepare and Preview scene" +msgstr "" + +msgid "Reset Window Layout" +msgstr "" + +msgid "Reset to default window layout" +msgstr "" + +msgid "Show &Labels" +msgstr "顯示名稱" + +msgid "Show object labels in 3D scene" +msgstr "在 3D 場景中顯示物件名稱" + +msgid "Show &Overhang" +msgstr "凸顯懸空" + +msgid "Show object overhang highlight in 3D scene" +msgstr "在 3D 場景中凸顯懸空" + +msgid "Preferences" +msgstr "偏好設定" + +msgid "Help" +msgstr "幫助" + +msgid "Temperature Calibration" +msgstr "溫度校準" + +msgid "Pass 1" +msgstr "粗調" + +msgid "Flow rate test - Pass 1" +msgstr "流量測試 - 通過 1" + +msgid "Pass 2" +msgstr "細調" + +msgid "Flow rate test - Pass 2" +msgstr "流量測試 - 通過 2" + +msgid "Flow rate" +msgstr "流量" + +msgid "Pressure advance" +msgstr "壓力提前" + +msgid "Retraction test" +msgstr "回抽測試" + +msgid "Orca Tolerance Test" +msgstr "Orca 誤差測試" + +msgid "Max flowrate" +msgstr "最大體積流量" + +msgid "VFA" +msgstr "VFA" + +# SoftFever +msgid "More..." +msgstr "進階校準" + +msgid "Tutorial" +msgstr "教學" + +msgid "Calibration help" +msgstr "校準幫助" + +msgid "More calibrations" +msgstr "更多校準" + +msgid "&Open G-code" +msgstr "打開 G-code" + +msgid "Open a G-code file" +msgstr "打開 G-code 檔案" + +msgid "Re&load from Disk" +msgstr "從磁碟重新載入" + +#, fuzzy +msgid "Reload the plater from disk" +msgstr "從磁碟重新載入" + +msgid "Export &Toolpaths as OBJ" +msgstr "將工具路徑匯出為 OBJ 格式" + +msgid "Export toolpaths as OBJ" +msgstr "將工具路徑匯出為 OBJ 格式" + +msgid "Open &Slicer" +msgstr "開啟 Studio" + +msgid "Open Slicer" +msgstr "開啟 Studio" + +msgid "&Quit" +msgstr "離開" + +#, c-format, boost-format +msgid "Quit %s" +msgstr "離開 %s" + +msgid "&File" +msgstr "檔案" + +msgid "&View" +msgstr "視角" + +msgid "&Help" +msgstr "幫助" + +#, fuzzy, c-format, boost-format +msgid "A file exists with the same name: %s, do you want to override it." +msgstr "有一個同名稱的檔案 %s。要覆蓋它嗎?" + +#, fuzzy, c-format, boost-format +msgid "A config exists with the same name: %s, do you want to override it." +msgstr "有一個同名稱的設定檔 %s。要覆蓋它嗎?" + +msgid "Overwrite file" +msgstr "覆蓋檔案" + +#, fuzzy +msgid "Yes to All" +msgstr "全部覆蓋" + +#, fuzzy +msgid "No to All" +msgstr "放棄" + +msgid "Choose a directory" +msgstr "選擇目錄" + +#, c-format, boost-format +msgid "There is %d config exported. (Only non-system configs)" +msgid_plural "There are %d configs exported. (Only non-system configs)" +msgstr[0] "共匯出 %d 組預設檔(僅包含目前使用的非系統的預設檔)" + +msgid "Export result" +msgstr "匯出結果" + +msgid "Select profile to load:" +msgstr "選擇要載入的設定檔:" + +#, c-format, boost-format +msgid "There is %d config imported. (Only non-system and compatible configs)" +msgid_plural "" +"There are %d configs imported. (Only non-system and compatible configs)" +msgstr[0] "共匯入 %d 組預設檔(僅包含非系統且與目前配置相容的預設檔)" + +msgid "" +"\n" +"Hint: Make sure you have added the corresponding printer before importing " +"the configs." +msgstr "" + +msgid "Import result" +msgstr "匯入結果" + +msgid "File is missing" +msgstr "檔案遺失" + +msgid "The project is no longer available." +msgstr "此項目不可用。" + +msgid "Filament Settings" +msgstr "線材設定" + +#, fuzzy +msgid "" +"Do you want to synchronize your personal data from Bambu Cloud? \n" +"It contains the following information:\n" +"1. The Process presets\n" +"2. The Filament presets\n" +"3. The Printer presets" +msgstr "" +"想從 Bambu 雲端同步你的個人數據嗎?\n" +"包含如下資訊:\n" +"1. 列印參數預設檔\n" +"2. 線材預設檔\n" +"3. 列印設備預設檔" + +msgid "Synchronization" +msgstr "同步" + +msgid "The device cannot handle more conversations. Please retry later." +msgstr "" + +msgid "Player is malfunctioning. Please reinstall the system player." +msgstr "" + +msgid "The player is not loaded, please click \"play\" button to retry." +msgstr "" + +msgid "Please confirm if the printer is connected." +msgstr "" + +msgid "" +"The printer is currently busy downloading. Please try again after it " +"finishes." +msgstr "" + +msgid "Printer camera is malfunctioning." +msgstr "" + +msgid "Problem occured. Please update the printer firmware and try again." +msgstr "" + +msgid "" +"LAN Only Liveview is off. Please turn on the liveview on printer screen." +msgstr "" + +msgid "Please enter the IP of printer to connect." +msgstr "" + +msgid "Initializing..." +msgstr "正在初始化……" + +msgid "Connection Failed. Please check the network and try again" +msgstr "" + +msgid "" +"Please check the network and try again, You can restart or update the " +"printer if the issue persists." +msgstr "" + +msgid "The printer has been logged out and cannot connect." +msgstr "" + +msgid "Stopped." +msgstr "已經停止。" + +msgid "LAN Connection Failed (Failed to start liveview)" +msgstr "區域網路連接失敗(無法啟動直播)" + +msgid "" +"Virtual Camera Tools is required for this task!\n" +"Do you want to install them?" +msgstr "該功能需要“虛擬攝影機工具包”,是否下載並安裝該工具包?" + +#, fuzzy +msgid "Downloading Virtual Camera Tools" +msgstr "正在下載虛擬攝影機工具包...." + +msgid "" +"Another virtual camera is running.\n" +"Snapmaker Orca supports only a single virtual camera.\n" +"Do you want to stop this virtual camera?" +msgstr "" +"另一個虛擬攝影機正在工作。\n" +"Snapmaker Orca 同時只能支援一個虛擬攝影機。\n" +"是否停止前一個虛擬攝影機?" + +#, fuzzy, c-format, boost-format +msgid "Virtual camera initialize failed (%s)!" +msgstr "虛擬攝影機初始化失敗(%s)!" + +msgid "Network unreachable" +msgstr "網路不可存取" + +msgid "Information" +msgstr "資訊" + +msgid "Playing..." +msgstr "正在播放中……" + +msgid "Year" +msgstr "年" + +msgid "Month" +msgstr "月" + +msgid "All Files" +msgstr "所有檔案" + +msgid "Group files by year, recent first." +msgstr "按年份分組,從最近的開始展示" + +msgid "Group files by month, recent first." +msgstr "按月份分組,從最近的開始展示" + +msgid "Show all files, recent first." +msgstr "顯示所有檔案,從最近的開始展示" + +msgid "Switch to timelapse files." +msgstr "切換到縮時攝影檔案清單" + +msgid "Video" +msgstr "錄影" + +msgid "Switch to video files." +msgstr "切換到影片檔案清單" + +msgid "Switch to 3mf model files." +msgstr "切換到 3MF 模型檔案。" + +#, fuzzy +msgid "Delete selected files from printer." +msgstr "從列印設備中刪除選中的檔案" + +msgid "Download" +msgstr "下載" + +#, fuzzy +msgid "Download selected files from printer." +msgstr "從列印設備中下載選中的檔案" + +msgid "Select" +msgstr "選擇" + +msgid "Batch manage files." +msgstr "批次管理檔案" + +msgid "Refresh" +msgstr "刷新" + +msgid "Reload file list from printer." +msgstr "" + +#, fuzzy +msgid "No printers." +msgstr "未選擇列印設備" + +#, c-format, boost-format +msgid "Connect failed [%d]!" +msgstr "連接失敗 [%d]!" + +msgid "Loading file list..." +msgstr "載入檔案清單..." + +msgid "No files" +msgstr "" + +msgid "Load failed" +msgstr "" + +msgid "Initialize failed (Device connection not ready)!" +msgstr "初始化失敗(未連接列印設備)" + +msgid "" +"Browsing file in SD card is not supported in current firmware. Please update " +"the printer firmware." +msgstr "" + +msgid "Initialize failed (Storage unavailable, insert SD card.)!" +msgstr "" + +msgid "LAN Connection Failed (Failed to view sdcard)" +msgstr "" + +msgid "Browsing file in SD card is not supported in LAN Only Mode." +msgstr "" + +#, c-format, boost-format +msgid "Initialize failed (%s)!" +msgstr "初始化失敗(%s)!" + +#, c-format, boost-format +msgid "You are going to delete %u file from printer. Are you sure to continue?" +msgid_plural "" +"You are going to delete %u files from printer. Are you sure to continue?" +msgstr[0] "將從列印設備中刪除 %u 個檔案。確定要繼續嗎?" + +msgid "Delete files" +msgstr "刪除檔案" + +#, fuzzy, c-format, boost-format +msgid "Do you want to delete the file '%s' from printer?" +msgstr "確定要從列印設備中刪除檔案 '%s' 嗎?" + +msgid "Delete file" +msgstr "刪除檔案" + +msgid "Fetching model infomations ..." +msgstr "正在獲取模型資訊..." + +msgid "Failed to fetch model information from printer." +msgstr "" + +msgid "Failed to parse model information." +msgstr "" + +msgid "" +"The .gcode.3mf file contains no G-code data.Please slice it with Snapmaker Orca " +"and export a new .gcode.3mf file." +msgstr "" +".gcode.3mf 檔案中不包含 G-code 數據。請使用 Snapmaker Orca 進行切片並匯出新的." +"gcode.3mf 檔案。" + +#, c-format, boost-format +msgid "File '%s' was lost! Please download it again." +msgstr "檔案 %s 遺失,請重新下載。" + +#, c-format, boost-format +msgid "" +"File: %s\n" +"Title: %s\n" +msgstr "" + +msgid "Download waiting..." +msgstr "等待下載中..." + +msgid "Play" +msgstr "播放" + +msgid "Open Folder" +msgstr "打開資料夾" + +msgid "Download finished" +msgstr "下載完成" + +#, c-format, boost-format +msgid "Downloading %d%%..." +msgstr "下載中 %d%%..." + +msgid "" +"Reconnecting the printer, the operation cannot be completed immediately, " +"please try again later." +msgstr "" + +msgid "File does not exist." +msgstr "" + +msgid "File checksum error. Please retry." +msgstr "" + +#, fuzzy +msgid "Not supported on the current printer version." +msgstr "目前列印設備的版本不支援。" + +#, fuzzy +msgid "Storage unavailable, insert SD card." +msgstr "儲存不可用,請插入 SD 記憶卡。" + +#, c-format, boost-format +msgid "Error code: %d" +msgstr "" + +msgid "Speed:" +msgstr "速度:" + +#, fuzzy +msgid "Deadzone:" +msgstr "盲點區:" + +msgid "Options:" +msgstr "選項:" + +msgid "Zoom" +msgstr "視角縮放" + +msgid "Translation/Zoom" +msgstr "平移/縮放" + +msgid "3Dconnexion settings" +msgstr "3Dconnexion 設定" + +msgid "Swap Y/Z axes" +msgstr "交換 Y/Z 軸" + +msgid "Invert X axis" +msgstr "反轉 X 軸" + +msgid "Invert Y axis" +msgstr "反轉 Y 軸" + +msgid "Invert Z axis" +msgstr "反轉 Z 軸" + +msgid "Invert Yaw axis" +msgstr "反轉偏航軸(垂直軸)" + +msgid "Invert Pitch axis" +msgstr "反轉俯仰軸(橫軸)" + +msgid "Invert Roll axis" +msgstr "反轉橫滾軸(縱軸)" + +msgid "Printing Progress" +msgstr "列印進度" + +msgid "0" +msgstr "0" + +msgid "Layer: N/A" +msgstr "層: N/A" + +msgid "Clear" +msgstr "清除" + +msgid "" +"You have completed printing the mall model, \n" +"but the synchronization of rating information has failed." +msgstr "已經完成了 MakeWorld 模型的列印,但評論資料同步失敗。" + +msgid "How do you like this printing file?" +msgstr "您覺得這個列印檔案怎麼樣?" + +#, fuzzy +msgid "" +"(The model has already been rated. Your rating will overwrite the previous " +"rating.)" +msgstr "(此模型已被評價。您的評價將覆蓋先前的評價。)" + +msgid "Rate" +msgstr "速率" + +msgid "Camera" +msgstr "攝影機" + +msgid "SD Card" +msgstr "SD 記憶卡" + +msgid "Camera Setting" +msgstr "攝影機設定" + +msgid "Switch Camera View" +msgstr "" + +msgid "Control" +msgstr "控制" + +msgid "Printer Parts" +msgstr "" + +msgid "Print Options" +msgstr "列印選項" + +msgid "100%" +msgstr "100%" + +msgid "Lamp" +msgstr "LED 燈" + +msgid "Aux" +msgstr "輔助" + +msgid "Cham" +msgstr "機箱" + +msgid "Bed" +msgstr "熱床" + +msgid "Debug Info" +msgstr "除錯資訊" + +#, fuzzy +msgid "No SD Card" +msgstr "無 SD 記憶卡" + +msgid "SD Card Abnormal" +msgstr "SD 記憶卡異常" + +msgid "Cancel print" +msgstr "取消列印" + +msgid "Are you sure you want to cancel this print?" +msgstr "確定要取消這次列印嗎?" + +msgid "Downloading..." +msgstr "下載中..." + +msgid "Cloud Slicing..." +msgstr "雲端切片中..." + +#, fuzzy, c-format, boost-format +msgid "In Cloud Slicing Queue, there are %s tasks ahead." +msgstr "前面還有 %s 個任務在雲端切片隊列中" + +#, fuzzy, c-format, boost-format +msgid "Layer: %s" +msgstr "%s 層" + +#, fuzzy, c-format, boost-format +msgid "Layer: %d/%d" +msgstr "%d/%d 層" + +msgid "" +"Please heat the nozzle to above 170 degree before loading or unloading " +"filament." +msgstr "" + +msgid "Still unload" +msgstr "繼續退料" + +msgid "Still load" +msgstr "繼續進料" + +msgid "Please select an AMS slot before calibration" +msgstr "請先選擇一個 AMS 槽位後進行校準" + +msgid "" +"Cannot read filament info: the filament is loaded to the tool head,please " +"unload the filament and try again." +msgstr "無法讀取線材資訊:線材已經載入到工具頭,請退出線材後再重試。" + +msgid "This only takes effect during printing" +msgstr "僅在列印過程中生效" + +#, fuzzy +msgid "Silent" +msgstr "靜音模式(50%)" + +#, fuzzy +msgid "Standard" +msgstr "標準模式(100%)" + +#, fuzzy +msgid "Sport" +msgstr "運動模式(125%)" + +#, fuzzy +msgid "Ludicrous" +msgstr "狂暴模式(150%)" + +#, fuzzy +msgid "Can't start this without SD card." +msgstr "沒有 SD 記憶卡無法開始任務" + +msgid "Rate the Print Profile" +msgstr "評價列印設定檔" + +msgid "Comment" +msgstr "評論" + +msgid "Rate this print" +msgstr "評價這個印刷品" + +msgid "Add Photo" +msgstr "新增照片" + +msgid "Delete Photo" +msgstr "刪除照片" + +msgid "Submit" +msgstr "送出" + +msgid "Please click on the star first." +msgstr "請先點擊星星數量。" + +msgid "InFo" +msgstr "資訊" + +msgid "Get oss config failed." +msgstr "取得 oss 設定失敗。" + +msgid "Upload Pictrues" +msgstr "上傳圖片" + +msgid "Number of images successfully uploaded" +msgstr "成功上傳的圖片數量" + +msgid " upload failed" +msgstr "上傳失敗" + +#, fuzzy +msgid " upload config prase failed\n" +msgstr "上傳設定檔失敗\n" + +msgid " No corresponding storage bucket\n" +msgstr "沒有對應的儲存區\n" + +msgid " can not be opened\n" +msgstr "無法開啟\n" + +msgid "" +"The following issues occurred during the process of uploading images. Do you " +"want to ignore them?\n" +"\n" +msgstr "在上傳圖片的過程中出現了以下問題。要忽略此問題嗎?\n" + +msgid "info" +msgstr "資訊" + +msgid "Synchronizing the printing results. Please retry a few seconds later." +msgstr "正在同步列印結果。請稍後重試。" + +msgid "Upload failed\n" +msgstr "上傳失敗\n" + +msgid "obtaining instance_id failed\n" +msgstr "取得 instance_id 失敗\n" + +msgid "" +"Your comment result cannot be uploaded due to some reasons. As follows:\n" +"\n" +" error code: " +msgstr "" +"由於某些原因,您的評論結果無法上傳。如下:\n" +"\n" +"錯誤代碼: " + +#, fuzzy +msgid "error message: " +msgstr "錯誤訊息:" + +msgid "" +"\n" +"\n" +"Would you like to redirect to the webpage for rating?" +msgstr "" +"\n" +"\n" +"您想重新導向到評價網頁嗎?" + +msgid "" +"Some of your images failed to upload. Would you like to redirect to the " +"webpage for rating?" +msgstr "您的部分圖片上傳失敗。 要重定導向評價網頁嗎?" + +msgid "You can select up to 16 images." +msgstr "您最多可以選擇 16 張圖片。" + +msgid "" +"At least one successful print record of this print profile is required \n" +"to give a positive rating(4 or 5stars)." +msgstr "" +"該列印設定檔至少需要一筆成功的列印記錄\n" +"給予正面評價(4 或 5 顆星)。" + +msgid "Status" +msgstr "設備狀態" + +msgid "Update" +msgstr "韌體更新" + +msgid "Don't show again" +msgstr "不再顯示" + +#, c-format, boost-format +msgid "%s error" +msgstr "%s 錯誤" + +#, c-format, boost-format +msgid "%s has encountered an error" +msgstr "%s 遇到一個錯誤" + +#, c-format, boost-format +msgid "%s warning" +msgstr "%s 警告" + +#, c-format, boost-format +msgid "%s has a warning" +msgstr "%s 有一個警告" + +#, c-format, boost-format +msgid "%s info" +msgstr "%s 資訊" + +#, c-format, boost-format +msgid "%s information" +msgstr "%s 資訊" + +msgid "Skip" +msgstr "跳過" + +msgid "Newer 3mf version" +msgstr "較新的 3mf 版本" + +msgid "" +"The 3mf file version is in Beta and it is newer than the current Snapmaker Orca " +"version." +msgstr "" + +msgid "If you would like to try Snapmaker Orca Beta, you may click to" +msgstr "" + +msgid "Download Beta Version" +msgstr "" + +msgid "The 3mf file version is newer than the current Snapmaker Orca version." +msgstr "" + +msgid "Update your Snapmaker Orca could enable all functionality in the 3mf file." +msgstr "" + +msgid "Current Version: " +msgstr "" + +msgid "Latest Version: " +msgstr "" + +msgid "Not for now" +msgstr "" + +#, fuzzy +msgid "3D Mouse disconnected." +msgstr "3D 滑鼠已中斷連線。" + +#, fuzzy +msgid "Configuration can update now." +msgstr "設定檔現在可以升級。" + +msgid "Detail." +msgstr "詳細。" + +msgid "Integration was successful." +msgstr "整合成功。" + +msgid "Integration failed." +msgstr "整合失敗。" + +msgid "Undo integration was successful." +msgstr "整合取消成功。" + +#, fuzzy +msgid "New network plug-in available." +msgstr "新的網路套件可用。" + +msgid "Details" +msgstr "詳細" + +msgid "New printer config available." +msgstr "" + +msgid "Wiki" +msgstr "Wiki" + +msgid "Undo integration failed." +msgstr "整合取消失敗。" + +msgid "Exporting." +msgstr "正在匯出。" + +msgid "Software has New version." +msgstr "發現新的軟體版本。" + +msgid "Goto download page." +msgstr "前往下載網站。" + +msgid "Open Folder." +msgstr "打開資料夾。" + +msgid "Safely remove hardware." +msgstr "安全移除硬體。" + +#, c-format, boost-format +msgid "%1$d Object has custom supports." +msgid_plural "%1$d Objects have custom supports." +msgstr[0] "%1$d 物件有自訂支撐。" + +#, c-format, boost-format +msgid "%1$d Object has color painting." +msgid_plural "%1$d Objects have color painting." +msgstr[0] "%1$d 物件有上色。" + +#, c-format, boost-format +msgid "%1$d object was loaded as a part of cut object." +msgid_plural "%1$d objects were loaded as parts of cut object" +msgstr[0] "%1$d 物件載入為一個切割物件的子零件" + +msgid "ERROR" +msgstr "錯誤" + +msgid "COMPLETED" +msgstr "已完成" + +msgid "CANCELED" +msgstr "已取消" + +msgid "Cancel upload" +msgstr "取消上傳" + +msgid "Jump to" +msgstr "轉換到" + +msgid "Error:" +msgstr "錯誤:" + +msgid "Warning:" +msgstr "警告:" + +#, fuzzy +msgid "Export successfully." +msgstr "匯出成功。" + +msgid "Model file downloaded." +msgstr "模型檔案已下載。" + +msgid "Serious warning:" +msgstr "嚴重警告:" + +msgid " (Repair)" +msgstr "(修復)" + +msgid " Click here to install it." +msgstr "點擊此處安裝" + +msgid "WARNING:" +msgstr "警告:" + +msgid "Your model needs support ! Please make support material enable." +msgstr "你的模型需要支撐才能列印。請開啟支撐選項。" + +msgid "Gcode path overlap" +msgstr "Gcode 路徑有重疊" + +msgid "Support painting" +msgstr "支撐繪製" + +#, fuzzy +msgid "Color painting" +msgstr "上色" + +msgid "Cut connectors" +msgstr "切割連接件" + +msgid "Layers" +msgstr "層" + +msgid "Range" +msgstr "範圍" + +msgid "" +"The application cannot run normally because OpenGL version is lower than " +"2.0.\n" +msgstr "應用程式無法正常運行,因為 OpenGL 的版本低於 2.0。\n" + +msgid "Please upgrade your graphics card driver." +msgstr "請升級您的顯示卡驅動。" + +msgid "Unsupported OpenGL version" +msgstr "不支援的 OpenGL 版本" + +#, fuzzy, c-format, boost-format +msgid "" +"Unable to load shaders:\n" +"%s" +msgstr "無法載入 Shader: %s" + +msgid "Error loading shaders" +msgstr "載入 shader 程序時發生錯誤" + +msgctxt "Layers" +msgid "Top" +msgstr "頂部" + +msgctxt "Layers" +msgid "Bottom" +msgstr "底部" + +msgid "Enable AI monitoring of printing" +msgstr "啟用列印過程的 AI 智慧監控" + +msgid "Sensitivity of pausing is" +msgstr "暫停的靈敏度為" + +msgid "Enable detection of build plate position" +msgstr "啟用列印板位置偵測" + +msgid "" +"The localization tag of build plate is detected, and printing is paused if " +"the tag is not in predefined range." +msgstr "偵測列印板的定位標記,如果標記不在預定義範圍內時暫停列印。" + +#, fuzzy +msgid "First Layer Inspection" +msgstr "首層檢查" + +msgid "Auto-recovery from step loss" +msgstr "自動從丟步中恢復" + +msgid "Allow Prompt Sound" +msgstr "允許提示音效" + +msgid "Filament Tangle Detect" +msgstr "" + +msgid "Nozzle Clumping Detection" +msgstr "" + +msgid "Check if the nozzle is clumping by filament or other foreign objects." +msgstr "" + +msgid "Nozzle Type" +msgstr "" + +msgid "Stainless Steel" +msgstr "" + +msgid "Hardened Steel" +msgstr "" + +#, c-format, boost-format +msgid "%.1f" +msgstr "" + +msgid "Global" +msgstr "全局" + +msgid "Objects" +msgstr "物件" + +msgid "Advance" +msgstr "高級" + +#, fuzzy +msgid "Compare presets" +msgstr "比較預設檔" + +msgid "View all object's settings" +msgstr "查看所有物件的設定" + +msgid "Material settings" +msgstr "" + +#, fuzzy +msgid "Remove current plate (if not last one)" +msgstr "刪除目前列印板(如果不是最後一個)" + +#, fuzzy +msgid "Auto orient objects on current plate" +msgstr "自動選轉列印板上物件方向" + +#, fuzzy +msgid "Arrange objects on current plate" +msgstr "自動擺放列印板上物件" + +#, fuzzy +msgid "Unlock current plate" +msgstr "解鎖列印板" + +#, fuzzy +msgid "Lock current plate" +msgstr "鎖定列印板" + +msgid "Edit current plate name" +msgstr "" + +msgid "Move plate to the front" +msgstr "" + +#, fuzzy +msgid "Customize current plate" +msgstr "自訂列印板參數" + +#, fuzzy, boost-format +msgid " plate %1%:" +msgstr "列印板 %1%:" + +msgid "Invalid name, the following characters are not allowed:" +msgstr "無效名稱,不允許使用以下字元:" + +msgid "Sliced Info" +msgstr "切片資訊" + +#, fuzzy +msgid "Used Filament (m)" +msgstr "線材消耗長度(m)" + +#, fuzzy +msgid "Used Filament (mm³)" +msgstr "線材消耗體積(mm³)" + +#, fuzzy +msgid "Used Filament (g)" +msgstr "線材消耗重量(克)" + +msgid "Used Materials" +msgstr "線材消耗" + +msgid "Estimated time" +msgstr "預估列印時間" + +msgid "Filament changes" +msgstr "線材切換" + +#, fuzzy +msgid "Click to edit preset" +msgstr "點擊編輯預設檔設定" + +msgid "Connection" +msgstr "連接" + +#, fuzzy +msgid "Bed type" +msgstr "列印板類型" + +msgid "Flushing volumes" +msgstr "廢料體積" + +msgid "Add one filament" +msgstr "增加一個線材" + +msgid "Remove last filament" +msgstr "刪除最後一個線材" + +msgid "Synchronize filament list from AMS" +msgstr "從 AMS 同步線材清單" + +#, fuzzy +msgid "Set filaments to use" +msgstr "設定可選擇的線材" + +msgid "Search plate, object and part." +msgstr "" + +msgid "Pellets" +msgstr "" + +#, fuzzy +msgid "" +"No AMS filaments. Please select a printer in 'Device' page to load AMS info." +msgstr "沒有發現 AMS 線材。請在“設備”頁面選擇列印設備,將載入 AMS 資訊" + +msgid "Sync filaments with AMS" +msgstr "同步到 AMS 的線材清單" + +#, fuzzy +msgid "" +"Sync filaments with AMS will drop all current selected filament presets and " +"colors. Do you want to continue?" +msgstr "" +"同步到 AMS 的線材清單將刪除所有目前設定的線材預設檔、顏色。確定要繼續嗎?" + +msgid "" +"Already did a synchronization, do you want to sync only changes or resync " +"all?" +msgstr "已經同步過,你希望僅同步改變的線材還是重新同步所有線材?" + +msgid "Sync" +msgstr "僅同步改變的" + +msgid "Resync" +msgstr "重新同步所有" + +msgid "There are no compatible filaments, and sync is not performed." +msgstr "沒有任何相容的線材,同步操作未執行。" + +#, fuzzy +msgid "" +"There are some unknown filaments mapped to generic preset. Please update " +"Snapmaker Orca or restart Snapmaker Orca to check if there is an update to system " +"presets." +msgstr "" +"有一些未知型號的線材,映射到通用預設檔。請更新或者重啟 Snapmaker Orca,以檢查系" +"統預設檔有沒有更新。" + +#, fuzzy, boost-format +msgid "Do you want to save changes to \"%1%\"?" +msgstr "是否儲存修改到 \"%1%\"?" + +#, fuzzy, c-format, boost-format +msgid "" +"Successfully unmounted. The device %s(%s) can now be safely removed from the " +"computer." +msgstr "卸載成功。設備 %s(%s) 現在可能安全地從電腦移除。" + +#, fuzzy, c-format, boost-format +msgid "Ejecting of device %s(%s) has failed." +msgstr "退出設備 %s(%s) 失敗。" + +#, fuzzy +msgid "Previous unsaved project detected, do you want to restore it?" +msgstr "偵測到有未儲存的專案項目,是否恢復此專案項目?" + +msgid "Restore" +msgstr "恢復" + +msgid "" +"The current hot bed temperature is relatively high. The nozzle may be " +"clogged when printing this filament in a closed enclosure. Please open the " +"front door and/or remove the upper glass." +msgstr "" +"目前熱床溫度比較高。在封閉的列印設備中列印該線材時,噴嘴可能會堵塞。請打開前" +"門和/或拆下上部玻璃。" + +#, fuzzy +msgid "" +"The nozzle hardness required by the filament is higher than the default " +"nozzle hardness of the printer. Please replace the hardened nozzle or " +"filament, otherwise, the nozzle will be attrited or damaged." +msgstr "" +"線材所要求的噴嘴硬度高於列印設備預設的噴嘴硬度。請更換硬化的噴嘴或線材,否則" +"噴嘴可能被磨損或損壞。" + +msgid "" +"Enabling traditional timelapse photography may cause surface imperfections. " +"It is recommended to change to smooth mode." +msgstr "使用傳統模式的縮時攝影可能會導致表面缺陷。建議改為平滑模式。" + +msgid "Expand sidebar" +msgstr "展開側邊欄" + +msgid "Collapse sidebar" +msgstr "折疊側邊欄" + +#, c-format, boost-format +msgid "Loading file: %s" +msgstr "載入檔案:%s" + +msgid "The 3mf is not supported by Snapmaker Orca, load geometry data only." +msgstr "該 3mf 檔案不是來自 Snapmaker Orca,將只載入幾何數據。" + +msgid "Load 3mf" +msgstr "載入 3mf" + +#, fuzzy, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Found following keys " +"unrecognized:" +msgstr "該 3mf 的版本 %s 比 %s 的版本 %s 新,發現以下參數值無法識別:" + +msgid "You'd better upgrade your software.\n" +msgstr "建議升級您的軟體版本。\n" + +#, fuzzy, c-format, boost-format +msgid "" +"The 3mf's version %s is newer than %s's version %s, Suggest to upgrade your " +"software." +msgstr "該 3mf 的版本 %s 比 %s 的版本 %s 要新,建議升級你的軟體。" + +msgid "Invalid values found in the 3mf:" +msgstr "在 3mf 檔案中發現無效值:" + +#, fuzzy +msgid "Please correct them in the param tabs" +msgstr "請在參數設定頁更正它們" + +msgid "The 3mf has following modified G-codes in filament or printer presets:" +msgstr "" + +msgid "" +"Please confirm that these modified G-codes are safe to prevent any damage to " +"the machine!" +msgstr "" + +msgid "Modified G-codes" +msgstr "" + +msgid "The 3mf has following customized filament or printer presets:" +msgstr "" + +msgid "" +"Please confirm that the G-codes within these presets are safe to prevent any " +"damage to the machine!" +msgstr "" + +msgid "Customized Preset" +msgstr "" + +#, fuzzy +msgid "Name of components inside step file is not UTF8 format!" +msgstr "step 檔案中的零件名稱包含非 UTF8 格式的字元!" + +msgid "The name may show garbage characters!" +msgstr "此名稱可能顯示亂碼字元!" + +msgid "Remember my choice." +msgstr "記住我的選擇。" + +#, fuzzy, boost-format +msgid "Failed loading file \"%1%\". An invalid configuration was found." +msgstr "載入檔案 \"%1%\" 失敗。發現無效設定值。" + +#, fuzzy +msgid "Objects with zero volume removed" +msgstr "體積為零的物件已被移除" + +msgid "The volume of the object is zero" +msgstr "物件的體積為零" + +#, fuzzy, c-format, boost-format +msgid "" +"The object from file %s is too small, and maybe in meters or inches.\n" +" Do you want to scale to millimeters?" +msgstr "" +"文件 %s 中的物件太小,可能以公尺(M)或英吋(Inches)為單位。\n" +"是否要轉換成公厘(mm)?" + +msgid "Object too small" +msgstr "物件尺寸過小" + +msgid "" +"This file contains several objects positioned at multiple heights.\n" +"Instead of considering them as multiple objects, should \n" +"the file be loaded as a single object having multiple parts?" +msgstr "" +"該檔案包含多個位於不同高度的物件。\n" +"是否將檔案載入為一個由多個零件組合而成的物件,而非多個單零件的物件?" + +msgid "Multi-part object detected" +msgstr "偵測到多部分物件" + +msgid "Load these files as a single object with multiple parts?\n" +msgstr "將這些檔案載入為一個多零件物件?\n" + +msgid "Object with multiple parts was detected" +msgstr "偵測到多零件物件" + +msgid "The file does not contain any geometry data." +msgstr "此檔案不包含任何幾何數據。" + +msgid "" +"Your object appears to be too large, Do you want to scale it down to fit the " +"heat bed automatically?" +msgstr "物件看起來太大,希望將物件自動縮小以適應列印板嗎?" + +msgid "Object too large" +msgstr "物件太大" + +msgid "Export STL file:" +msgstr "匯出 STL 檔案:" + +msgid "Export AMF file:" +msgstr "匯出 AMF 檔案:" + +msgid "Save file as:" +msgstr "檔案另存為:" + +msgid "Export OBJ file:" +msgstr "匯出 OBJ 檔案:" + +#, c-format, boost-format +msgid "" +"The file %s already exists\n" +"Do you want to replace it?" +msgstr "" + +msgid "Confirm Save As" +msgstr "" + +msgid "Delete object which is a part of cut object" +msgstr "刪除切割物件的一部分" + +msgid "" +"You try to delete an object which is a part of a cut object.\n" +"This action will break a cut correspondence.\n" +"After that model consistency can't be guaranteed." +msgstr "" +"您正嘗試刪除切割物件的一部分,這將破壞切割對應關係,刪除之後,將無法再保證模" +"型的一致性。" + +msgid "The selected object couldn't be split." +msgstr "選中的模型不可分割。" + +msgid "Another export job is running." +msgstr "有其他匯出任務正在進行中。" + +msgid "Unable to replace with more than one volume" +msgstr "無法取代超過一個體積" + +msgid "Error during replace" +msgstr "替換時發生錯誤" + +msgid "Replace from:" +msgstr "替換自:" + +msgid "Select a new file" +msgstr "選擇新檔案" + +msgid "File for the replace wasn't selected" +msgstr "未選擇替換檔案" + +msgid "Please select a file" +msgstr "請選擇一個檔案" + +msgid "Do you want to replace it" +msgstr "確定要更換它嗎" + +msgid "Message" +msgstr "訊息" + +msgid "Reload from:" +msgstr "重新載入自:" + +msgid "Unable to reload:" +msgstr "無法重新載入:" + +msgid "Error during reload" +msgstr "重新載入時出現錯誤" + +msgid "There are warnings after slicing models:" +msgstr "模型切片警告:" + +msgid "warnings" +msgstr "警告" + +msgid "Invalid data" +msgstr "無效數據" + +msgid "Slicing Canceled" +msgstr "切片已取消" + +#, fuzzy, c-format, boost-format +msgid "Slicing Plate %d" +msgstr "正在切片列印板 %d" + +msgid "Please resolve the slicing errors and publish again." +msgstr "請解決切片錯誤後再重新發布。" + +#, fuzzy +msgid "" +"Network Plug-in is not detected. Network related features are unavailable." +msgstr "未偵測到網路套件。網路相關功能不可用。" + +msgid "" +"Preview only mode:\n" +"The loaded file contains gcode only, Can not enter the Prepare page" +msgstr "" +"僅預覽模式:\n" +"被載入的檔案僅包含 G-Code,不支援進入準備頁面" + +#, fuzzy +msgid "You can keep the modified presets to the new project or discard them" +msgstr "您可以將修改後的預設檔保留到新專案項目中或者忽略這些修改" + +#, fuzzy +msgid "Creating a new project" +msgstr "建立新專案項目" + +msgid "Load project" +msgstr "載入專案項目" + +msgid "" +"Failed to save the project.\n" +"Please check whether the folder exists online or if other programs open the " +"project file." +msgstr "" +"儲存檔案失敗。請檢查資料夾是否存在,以及是否有其他程式打開了該專案項目檔案。" + +msgid "Save project" +msgstr "儲存專案項目" + +msgid "Importing Model" +msgstr "正在匯入模型" + +msgid "prepare 3mf file..." +msgstr "正在準備 3mf 檔案..." + +msgid "Download failed, unknown file format." +msgstr "" + +msgid "downloading project ..." +msgstr "專案項目下載中..." + +msgid "Download failed, File size exception." +msgstr "" + +#, fuzzy, c-format, boost-format +msgid "Project downloaded %d%%" +msgstr "專案項目已下載 %d%%" + +msgid "" +"Importing to Snapmaker Orca failed. Please download the file and manually " +"import it." +msgstr "匯入 Snapmaker Orca 失敗。 請下載該檔案並手動匯入。" + +msgid "Import SLA archive" +msgstr "匯入 SLA 存檔" + +msgid "The selected file" +msgstr "已選擇的檔案" + +msgid "does not contain valid gcode." +msgstr "不包含有效的 G-code 檔案。" + +msgid "Error occurs while loading G-code file" +msgstr "載入 G-code 檔案時遇到錯誤" + +#. TRN %1% is archive path +#, boost-format +msgid "Loading of a ZIP archive on path %1% has failed." +msgstr "" + +#. TRN: First argument = path to file, second argument = error description +#, boost-format +msgid "Failed to unzip file to %1%: %2%" +msgstr "" + +#, boost-format +msgid "Failed to find unzipped file at %1%. Unzipping of file has failed." +msgstr "" + +#, fuzzy +msgid "Drop project file" +msgstr "刪除專案項目" + +msgid "Please select an action" +msgstr "請選擇處理方式" + +msgid "Open as project" +msgstr "作為專案項目打開" + +msgid "Import geometry only" +msgstr "僅匯入模型數據" + +msgid "Only one G-code file can be opened at the same time." +msgstr "只能同時打開一個 G-code 檔案。" + +msgid "G-code loading" +msgstr "正在載入 G-code 檔案" + +msgid "G-code files can not be loaded with models together!" +msgstr "G-code 檔案不能和模型一起載入" + +msgid "Can not add models when in preview mode!" +msgstr "在預覽模式不允許增加模型" + +msgid "All objects will be removed, continue?" +msgstr "即將刪除所有物件,是否繼續?" + +#, fuzzy +msgid "The current project has unsaved changes, save it before continue?" +msgstr "目前專案項目包含未儲存的修改,是否先儲存?" + +msgid "Number of copies:" +msgstr "複製數量:" + +#, fuzzy +msgid "Copies of the selected object" +msgstr "所選物件的複製數量" + +msgid "Save G-code file as:" +msgstr "G-code 檔案另存為:" + +msgid "Save SLA file as:" +msgstr "SLA 檔案另存為:" + +msgid "The provided file name is not valid." +msgstr "檔案名稱無效。" + +msgid "The following characters are not allowed by a FAT file system:" +msgstr "FAT 檔案系統不允許使用以下字元:" + +msgid "Save Sliced file as:" +msgstr "切片檔案另存為:" + +#, fuzzy, c-format, boost-format +msgid "" +"The file %s has been sent to the printer's storage space and can be viewed " +"on the printer." +msgstr "檔案 %s 已經傳送到列印設備的儲存空間,可以在列印設備上瀏覽。" + +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be kept. You may fix the meshes and try again." +msgstr "" + +#, boost-format +msgid "Reason: part \"%1%\" is empty." +msgstr "" + +#, boost-format +msgid "Reason: part \"%1%\" does not bound a volume." +msgstr "" + +#, boost-format +msgid "Reason: part \"%1%\" has self intersection." +msgstr "" + +#, boost-format +msgid "Reason: \"%1%\" and another part have no intersection." +msgstr "" + +#, fuzzy +msgid "" +"Unable to perform boolean operation on model meshes. Only positive parts " +"will be exported." +msgstr "無法對模型網格執行布林運算。只有正面部分將被導出。" + +msgid "" +"Are you sure you want to store original SVGs with their local paths into the " +"3MF file?\n" +"If you hit 'NO', all SVGs in the project will not be editable any more." +msgstr "" + +msgid "Private protection" +msgstr "" + +#, fuzzy +msgid "Is the printer ready? Is the print sheet in place, empty and clean?" +msgstr "列印設備是否準備完成?列印平台是否在正確的位置、有沒有異物、是否乾淨?" + +msgid "Upload and Print" +msgstr "上傳並列印" + +#, fuzzy +msgid "" +"Print By Object: \n" +"Suggest to use auto-arrange to avoid collisions when printing." +msgstr "" +"逐件列印:\n" +"建議使用自動擺放避免列印時發生碰撞。" + +msgid "Send G-code" +msgstr "傳送 G-code" + +#, fuzzy +msgid "Send to printer" +msgstr "傳送到列印設備" + +#, fuzzy +msgid "Custom supports and color painting were removed before repairing." +msgstr "自訂的支撐和上色在模型修復之前將被清除。" + +msgid "Optimize Rotation" +msgstr "" + +msgid "Invalid number" +msgstr "無效數字" + +#, fuzzy +msgid "Plate Settings" +msgstr "列印板參數設定" + +#, fuzzy, boost-format +msgid "Number of currently selected parts: %1%\n" +msgstr "目前選擇的零件數量:%1%\n" + +#, fuzzy, boost-format +msgid "Number of currently selected objects: %1%\n" +msgstr "目前選擇的物件數量:%1%\n" + +#, boost-format +msgid "Part name: %1%\n" +msgstr "零件名字:%1%\n" + +#, boost-format +msgid "Object name: %1%\n" +msgstr "物件名字:%1%\n" + +#, boost-format +msgid "Size: %1% x %2% x %3% in\n" +msgstr "大小:%1% x %2% x %3% 英寸\n" + +#, fuzzy, boost-format +msgid "Size: %1% x %2% x %3% mm\n" +msgstr "大小: %1% x %2% x %3% m\n" + +#, boost-format +msgid "Volume: %1% in³\n" +msgstr "體積: %1% 英寸³\n" + +#, fuzzy, boost-format +msgid "Volume: %1% mm³\n" +msgstr "體積: %1% mm³\n" + +#, boost-format +msgid "Triangles: %1%\n" +msgstr "三角形:%1%\n" + +msgid "Tips:" +msgstr "提示:" + +#, fuzzy +msgid "" +"\"Fix Model\" feature is currently only on Windows. Please repair the model " +"on Snapmaker Orca(windows) or CAD softwares." +msgstr "" +"\"修復模型\"功能目前僅適用於 Windows 系統。請在 Windows 版本的 Snapmaker Orca " +"或 CAD 軟體上修復模型。" + +#, fuzzy, c-format, boost-format +msgid "" +"Plate% d: %s is not suggested to be used to print filament %s(%s). If you " +"still want to do this printing, please set this filament's bed temperature " +"to non zero." +msgstr "" +"列印板 %d:%s 不建議被用於列印 %s(%s)線材。如果你依然想列印,請設定線材對應" +"的熱床溫度為非零值。" + +msgid "Switching the language requires application restart.\n" +msgstr "切換語言要求重啟應用程式。\n" + +msgid "Do you want to continue?" +msgstr "是否繼續?" + +msgid "Language selection" +msgstr "語言選擇" + +msgid "Switching application language while some presets are modified." +msgstr "在切換應用語言之前發現某些參數預設有更改。" + +msgid "Changing application language" +msgstr "正在為應用程式切換語言" + +msgid "Changing the region will log out your account.\n" +msgstr "修改區域會自動登出您的帳號。\n" + +msgid "Region selection" +msgstr "區域選擇" + +msgid "Second" +msgstr "秒" + +msgid "Browse" +msgstr "瀏覽" + +msgid "Choose Download Directory" +msgstr "選擇下載資料夾" + +msgid "Associate" +msgstr "" + +msgid "with Snapmaker Orca so that Orca can open models from" +msgstr "" + +msgid "Current Association: " +msgstr "" + +msgid "Current Instance" +msgstr "" + +msgid "Current Instance Path: " +msgstr "" + +#, fuzzy +msgid "General Settings" +msgstr "一般設定" + +msgid "Asia-Pacific" +msgstr "亞太" + +msgid "China" +msgstr "中國" + +msgid "Europe" +msgstr "歐洲" + +msgid "North America" +msgstr "北美" + +msgid "Others" +msgstr "其他" + +msgid "Login Region" +msgstr "登入區域" + +msgid "Stealth Mode" +msgstr "區域網路模式" + +msgid "" +"This stops the transmission of data to Bambu's cloud services. Users who " +"don't use BBL machines or use LAN mode only can safely turn on this function." +msgstr "" + +msgid "Enable network plugin" +msgstr "" + +msgid "Check for stable updates only" +msgstr "" + +msgid "Metric" +msgstr "公制" + +msgid "Imperial" +msgstr "英製" + +msgid "Units" +msgstr "單位" + +msgid "Allow only one Snapmaker Orca instance" +msgstr "" + +msgid "" +"On OSX there is always only one instance of app running by default. However " +"it is allowed to run multiple instances of same app from the command line. " +"In such case this settings will allow only one instance." +msgstr "" +"在 OSX 上,預設情況下總是只有一個應用程式實例在運行。但是卻允許從命令視窗執行" +"同一應用程式的多個實例。當您設定了這個設定後將只允許一個實例執行。" + +msgid "" +"If this is enabled, when starting Snapmaker Orca and another instance of the " +"same Snapmaker Orca is already running, that instance will be reactivated " +"instead." +msgstr "" + +msgid "Home" +msgstr "首頁" + +msgid "Default Page" +msgstr "預設頁面" + +msgid "Set the page opened on startup." +msgstr "設定為啟動頁面。" + +msgid "Touchpad" +msgstr "" + +msgid "Camera style" +msgstr "" + +msgid "" +"Select camera navigation style.\n" +"Default: LMB+move for rotation, RMB/MMB+move for panning.\n" +"Touchpad: Alt+move for rotation, Shift+move for panning." +msgstr "" + +msgid "Zoom to mouse position" +msgstr "放大到滑鼠位置" + +msgid "" +"Zoom in towards the mouse pointer's position in the 3D view, rather than the " +"2D window center." +msgstr "在 3D 視角放大到滑鼠位置,而不是 2D 窗口的中心。" + +msgid "Use free camera" +msgstr "使用自由鏡頭" + +msgid "If enabled, use free camera. If not enabled, use constrained camera." +msgstr "如果啟用,則使用自由鏡頭。若未啟用,則使用受限鏡頭。" + +msgid "Reverse mouse zoom" +msgstr "" + +msgid "If enabled, reverses the direction of zoom with mouse wheel." +msgstr "" + +msgid "Show splash screen" +msgstr "顯示啟動動畫" + +msgid "Show the splash screen during startup." +msgstr "啟動時顯示啟動動畫。" + +#, fuzzy +msgid "Show \"Tip of the day\" notification after start" +msgstr "啟動後顯示\"每日小提示\"通知" + +msgid "If enabled, useful hints are displayed at startup." +msgstr "如果啟用,將在啟動時顯示有用的提示。" + +msgid "Flushing volumes: Auto-calculate everytime the color changed." +msgstr "" + +msgid "If enabled, auto-calculate everytime the color changed." +msgstr "" + +msgid "" +"Flushing volumes: Auto-calculate every time when the filament is changed." +msgstr "" + +msgid "If enabled, auto-calculate every time when filament is changed" +msgstr "" + +msgid "Remember printer configuration" +msgstr "" + +msgid "" +"If enabled, Orca will remember and switch filament/process configuration for " +"each printer automatically." +msgstr "" + +msgid "Multi-device Management(Take effect after restarting Orca)." +msgstr "" + +msgid "" +"With this option enabled, you can send a task to multiple devices at the " +"same time and manage multiple devices." +msgstr "" + +msgid "Network" +msgstr "網路" + +#, fuzzy +msgid "Auto sync user presets(Printer/Filament/Process)" +msgstr "同步使用者預設(列印設備/線材/列印品質參數)" + +msgid "User Sync" +msgstr "使用者同步" + +msgid "Update built-in Presets automatically." +msgstr "自動更新系統預設" + +msgid "System Sync" +msgstr "系統同步" + +msgid "Clear my choice on the unsaved presets." +msgstr "清除我對未儲存預設的選擇。" + +#, fuzzy +msgid "Associate files to Snapmaker Orca" +msgstr " Snapmaker Orca 檔案關聯" + +#, fuzzy +msgid "Associate .3mf files to Snapmaker Orca" +msgstr "使用 Snapmaker Orca 打開 .3mf 檔案" + +#, fuzzy +msgid "If enabled, sets Snapmaker Orca as default application to open .3mf files" +msgstr "開啟後,將預設使用 Snapmaker Orca 打開 .3mf 檔案" + +#, fuzzy +msgid "Associate .stl files to Snapmaker Orca" +msgstr "使用 Snapmaker Orca 打開 .stl 檔案" + +#, fuzzy +msgid "If enabled, sets Snapmaker Orca as default application to open .stl files" +msgstr "開啟後,將預設使用 Snapmaker Orca 打開 .stl 檔案" + +#, fuzzy +msgid "Associate .step/.stp files to Snapmaker Orca" +msgstr "使用 Snapmaker Orca 打開 .step/.stp 檔案" + +#, fuzzy +msgid "If enabled, sets Snapmaker Orca as default application to open .step files" +msgstr "開啟後,將預設使用 Snapmaker Orca 打開 .step 檔案" + +msgid "Associate web links to Snapmaker Orca" +msgstr "" + +msgid "Associate URLs to Snapmaker Orca" +msgstr "" + +msgid "Maximum recent projects" +msgstr "最近專案項目的最大數量" + +msgid "Maximum count of recent projects" +msgstr "近期專案項目的最大統計" + +msgid "Clear my choice on the unsaved projects." +msgstr "清除我對未儲存的專案項目的選擇。" + +msgid "No warnings when loading 3MF with modified G-codes" +msgstr "" + +msgid "Auto-Backup" +msgstr "自動備份" + +#, fuzzy +msgid "" +"Backup your project periodically for restoring from the occasional crash." +msgstr "定期備份專案項目,以便從未預期的錯誤中恢復。" + +msgid "every" +msgstr "所有" + +msgid "The peroid of backup in seconds." +msgstr "備份的週期" + +msgid "Downloads" +msgstr "下載" + +msgid "Dark Mode" +msgstr "深色模式" + +msgid "Enable Dark mode" +msgstr "啟用深色模式" + +msgid "Develop mode" +msgstr "開發者模式" + +msgid "Skip AMS blacklist check" +msgstr "跳過 AMS 黑名單檢查" + +#, fuzzy +msgid "Home page and daily tips" +msgstr "首頁和每日小提示" + +msgid "Show home page on startup" +msgstr "啟動時顯示首頁" + +msgid "Sync settings" +msgstr "同步設定" + +msgid "User sync" +msgstr "使用者同步" + +#, fuzzy +msgid "Preset sync" +msgstr "預設檔同步" + +msgid "Preferences sync" +msgstr "偏好設定同步" + +msgid "View control settings" +msgstr "視角控制設定" + +#, fuzzy +msgid "Rotate of view" +msgstr "旋轉視角" + +#, fuzzy +msgid "Move of view" +msgstr "移動視角" + +#, fuzzy +msgid "Zoom of view" +msgstr "縮放視角" + +msgid "Other" +msgstr "其他" + +msgid "Mouse wheel reverses when zooming" +msgstr "縮放時滑鼠滾輪反轉" + +msgid "Enable SSL(MQTT)" +msgstr "啟用SSL(MQTT)" + +msgid "Enable SSL(FTP)" +msgstr "啟用SSL(FTP)" + +msgid "Internal developer mode" +msgstr "內部開發者模式" + +msgid "Log Level" +msgstr "日誌級別" + +msgid "fatal" +msgstr "致命" + +msgid "error" +msgstr "錯誤" + +msgid "warning" +msgstr "警告" + +msgid "debug" +msgstr "除錯" + +msgid "trace" +msgstr "跟蹤" + +#, fuzzy +msgid "Host Setting" +msgstr "伺服器設定" + +msgid "DEV host: api-dev.bambu-lab.com/v1" +msgstr "" + +msgid "QA host: api-qa.bambu-lab.com/v1" +msgstr "" + +msgid "PRE host: api-pre.bambu-lab.com/v1" +msgstr "" + +msgid "Product host" +msgstr "正式環境" + +msgid "debug save button" +msgstr "儲存" + +msgid "save debug settings" +msgstr "儲存除錯設定" + +msgid "DEBUG settings have saved successfully!" +msgstr "除錯模式生效!" + +msgid "Switch cloud environment, Please login again!" +msgstr "切換雲端環境,請重新登入!" + +#, fuzzy +msgid "System presets" +msgstr "系統預設檔" + +#, fuzzy +msgid "User presets" +msgstr "使用者預設檔" + +msgid "Incompatible presets" +msgstr "不相容的預設" + +msgid "AMS filaments" +msgstr "AMS 線材" + +msgid "Click to pick filament color" +msgstr "點擊設定線材顏色" + +msgid "Please choose the filament colour" +msgstr "請選擇線材顏色" + +#, fuzzy +msgid "Add/Remove presets" +msgstr "新增/刪除 預設檔" + +msgid "Edit preset" +msgstr "編輯預設" + +msgid "Project-inside presets" +msgstr "項目預設" + +msgid "Add/Remove filaments" +msgstr "新增/刪除線材" + +msgid "Add/Remove materials" +msgstr "新增/刪除材料" + +msgid "Select/Remove printers(system presets)" +msgstr "" + +msgid "Create printer" +msgstr "" + +msgid "The selected preset is null!" +msgstr "選擇的預設為空!" + +msgid "End" +msgstr "End" + +msgid "Customize" +msgstr "自訂" + +msgid "Other layer filament sequence" +msgstr "" + +msgid "Please input layer value (>= 2)." +msgstr "" + +#, fuzzy +msgid "Plate name" +msgstr "列印板名稱" + +msgid "Same as Global Print Sequence" +msgstr "跟隨全局列印順序" + +msgid "Print sequence" +msgstr "列印順序" + +msgid "Same as Global" +msgstr "" + +msgid "Disable" +msgstr "" + +msgid "Spiral vase" +msgstr "花瓶模式" + +msgid "First layer filament sequence" +msgstr "首層線材列印順序" + +#, fuzzy +msgid "Same as Global Plate Type" +msgstr "跟隨全局列印板設定" + +#, fuzzy +msgid "Same as Global Bed Type" +msgstr "跟隨全局列印板設定" + +msgid "By Layer" +msgstr "逐層" + +msgid "By Object" +msgstr "逐件" + +msgid "Accept" +msgstr "接受" + +msgid "Log Out" +msgstr "登出" + +msgid "Slice all plate to obtain time and filament estimation" +msgstr "正在切片以獲取切片資訊和預估列印時間" + +#, fuzzy +msgid "Packing project data into 3mf file" +msgstr "正在將專案資料打包到 3mf 檔案中" + +#, fuzzy +msgid "Uploading 3mf" +msgstr "正在上傳 3mf" + +msgid "Jump to model publish web page" +msgstr "發布頁面" + +msgid "Note: The preparation may takes several minutes. Please be patiant." +msgstr "提示:發布前需要一些準備時間,請耐心等待。" + +msgid "Publish" +msgstr "發布" + +msgid "Publish was cancelled" +msgstr "發布已取消" + +#, fuzzy +msgid "Slicing Plate 1" +msgstr "正在切片列印板 1" + +#, fuzzy +msgid "Packing data to 3mf" +msgstr "將資料打包至 3mf" + +msgid "Jump to webpage" +msgstr "轉換到網頁" + +#, fuzzy, c-format, boost-format +msgid "Save %s as" +msgstr "另存 %s 為" + +msgid "User Preset" +msgstr "使用者預設" + +msgid "Preset Inside Project" +msgstr "項目預設" + +msgid "Name is unavailable." +msgstr "名稱不可用。" + +msgid "Overwrite a system profile is not allowed" +msgstr "不允許覆蓋系統預設" + +#, fuzzy, boost-format +msgid "Preset \"%1%\" already exists." +msgstr "預設 \"%1%\" 已存在。" + +#, fuzzy, boost-format +msgid "Preset \"%1%\" already exists and is incompatible with current printer." +msgstr "預設 \"%1%\" 已存在,並且和目前列印設備不相容。" + +msgid "Please note that saving action will replace this preset" +msgstr "請注意這個預設會在儲存過程中被替換" + +msgid "The name cannot be the same as a preset alias name." +msgstr "名稱不能和一個預設的別名相同。" + +msgid "Save preset" +msgstr "儲存預設" + +msgctxt "PresetName" +msgid "Copy" +msgstr "複製" + +#, fuzzy, boost-format +msgid "Printer \"%1%\" is selected with preset \"%2%\"" +msgstr "選中的列印設備 \"%1%\" 和預設 \"%2%\"" + +#, fuzzy, boost-format +msgid "Please choose an action with \"%1%\" preset after saving." +msgstr "請選擇儲存後對 \"%1%\" 預設的操作。" + +#, fuzzy, boost-format +msgid "For \"%1%\", change \"%2%\" to \"%3%\" " +msgstr "為 \"%1%\",把 \"%2%\" 更換為 \"%3%\" " + +#, fuzzy, boost-format +msgid "For \"%1%\", add \"%2%\" as a new preset" +msgstr "為 \"%1%\",增加 \"%2%\" 為一個新預設" + +#, fuzzy, boost-format +msgid "Simply switch to \"%1%\"" +msgstr "直接切換到 \"%1%\" " + +msgid "Task canceled" +msgstr "任務已取消" + +msgid "(LAN)" +msgstr "(區域網路)" + +msgid "Search" +msgstr "搜尋" + +msgid "My Device" +msgstr "我的設備" + +msgid "Other Device" +msgstr "其他設備" + +msgid "Online" +msgstr "在線" + +msgid "Input access code" +msgstr "輸入訪問碼" + +msgid "Can't find my devices?" +msgstr "無法找到我的設備?" + +msgid "Log out successful." +msgstr "登出成功。" + +msgid "Busy" +msgstr "忙碌" + +#, fuzzy +msgid "Bambu Cool Plate" +msgstr "低溫列印版" + +msgid "PLA Plate" +msgstr "PLA 列印板" + +msgid "Bambu Engineering Plate" +msgstr "工程列印熱床" + +msgid "Bambu Smooth PEI Plate" +msgstr "" + +#, fuzzy +msgid "High temperature Plate" +msgstr "高溫列印板" + +msgid "Bambu Textured PEI Plate" +msgstr "" + +msgid "Send print job to" +msgstr "傳送列印作業至" + +msgid "Flow Dynamics Calibration" +msgstr "動態流量校準" + +msgid "Click here if you can't connect to the printer" +msgstr "如果無法連接到列印設備,請按一下此處" + +msgid "send completed" +msgstr "傳送完成" + +msgid "Error code" +msgstr "錯誤代碼" + +#, fuzzy +msgid "No login account, only printers in LAN mode are displayed" +msgstr "未登入帳號,僅顯示區域網路模式的列印設備" + +msgid "Connecting to server" +msgstr "正在連接伺服器..." + +msgid "Synchronizing device information" +msgstr "正在同步設備資訊" + +msgid "Synchronizing device information time out" +msgstr "同步設備資訊逾時" + +msgid "Cannot send the print job when the printer is updating firmware" +msgstr "設備升級中,無法傳送列印作業" + +#, fuzzy +msgid "" +"The printer is executing instructions. Please restart printing after it ends" +msgstr "列印設備正在執行指令,請在指令結束後重新開始列印" + +#, fuzzy +msgid "The printer is busy on other print job" +msgstr "列印設備正在執行其他列印作業" + +#, fuzzy, c-format, boost-format +msgid "" +"Filament %s exceeds the number of AMS slots. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"線材編號 %s 超出 AMS 槽位數量,請更新列印設備韌體以支援 AMS 槽位映射功能。" + +#, fuzzy +msgid "" +"Filament exceeds the number of AMS slots. Please update the printer firmware " +"to support AMS slot assignment." +msgstr "線材編號超出 AMS 槽位數量,請更新列印設備韌體以支援 AMS 槽位映射功能。" + +#, fuzzy +msgid "" +"Filaments to AMS slots mappings have been established. You can click a " +"filament above to change its mapping AMS slot" +msgstr "" +"已自動建立 \"線材清單=>AMS 槽位\" 的映射關係。 可點擊上方的線材來手動設定其所" +"對應的 AMS 槽位" + +msgid "" +"Please click each filament above to specify its mapping AMS slot before " +"sending the print job" +msgstr "請在傳送列印前點擊上方各個線材,指定其所對應的 AMS 槽位" + +#, fuzzy, c-format, boost-format +msgid "" +"Filament %s does not match the filament in AMS slot %s. Please update the " +"printer firmware to support AMS slot assignment." +msgstr "" +"線材編號 %s 和 AMS 槽位 %s 中的線材材質不相符,請更新列印設備韌體以支援 AMS " +"槽位映射功能" + +#, fuzzy +msgid "" +"Filament does not match the filament in AMS slot. Please update the printer " +"firmware to support AMS slot assignment." +msgstr "" +"材料編號和 AMS 槽位中的線材材質不相符,請更新列印設備韌體以支援 AMS 槽位映射" +"功能" + +#, fuzzy +msgid "" +"The printer firmware only supports sequential mapping of filament => AMS " +"slot." +msgstr "" +"已自動建立 \"線材清單=>AMS 槽位\" 的映射關係。 可點擊上方的線材來手動設定其所" +"對應的 AMS 槽位" + +#, fuzzy +msgid "An SD card needs to be inserted before printing." +msgstr "請在進行列印前插入 SD記憶卡" + +#, c-format, boost-format +msgid "" +"The selected printer (%s) is incompatible with the chosen printer profile in " +"the slicer (%s)." +msgstr "" + +#, fuzzy +msgid "An SD card needs to be inserted to record timelapse." +msgstr "使用縮時攝影功能需要插入 SD 記憶卡" + +#, fuzzy +msgid "" +"Cannot send the print job to a printer whose firmware is required to get " +"updated." +msgstr "需要更新列印設備韌體後,才能將列印作業傳送到列印設備" + +#, fuzzy +msgid "Cannot send the print job for empty plate" +msgstr "無法為空列印板傳送列印作業" + +#, fuzzy +msgid "This printer does not support printing all plates" +msgstr "此列印設備類型不支援列印所有列印板" + +#, fuzzy +msgid "" +"When enable spiral vase mode, machines with I3 structure will not generate " +"timelapse videos." +msgstr "當啟用花瓶模式時,龍門結構的設備不會產生縮時攝影影片" + +msgid "" +"Timelapse is not supported because Print sequence is set to \"By object\"." +msgstr "" + +msgid "Errors" +msgstr "錯誤" + +msgid "Please check the following:" +msgstr "請檢查以下內容:" + +#, fuzzy +msgid "" +"The printer type selected when generating G-Code is not consistent with the " +"currently selected printer. It is recommended that you use the same printer " +"type for slicing." +msgstr "" +"產生 G-code 時選擇的列印設備類型與目前選擇的列印設備不一致。建議您使用相同的" +"列印設備類型進行切片。" + +#, fuzzy +msgid "" +"There are some unknown filaments in the AMS mappings. Please check whether " +"they are the required filaments. If they are okay, press \"Confirm\" to " +"start printing." +msgstr "" +"AMS 映射中存在一些未知的線材。請檢查是否符合預期線材。如果符合,按“確定”以開" +"始列印作業。" + +#, c-format, boost-format +msgid "nozzle in preset: %s %s" +msgstr "" + +#, c-format, boost-format +msgid "nozzle memorized: %.2f %s" +msgstr "" + +msgid "" +"Your nozzle diameter in sliced file is not consistent with memorized nozzle. " +"If you changed your nozzle lately, please go to Device > Printer Parts to " +"change settings." +msgstr "" + +#, c-format, boost-format +msgid "" +"Printing high temperature material(%s material) with %s may cause nozzle " +"damage" +msgstr "" + +msgid "Please fix the error above, otherwise printing cannot continue." +msgstr "" + +msgid "" +"Please click the confirm button if you still want to proceed with printing." +msgstr "如果您仍然想繼續列印,請滑鼠左鍵點擊 確定 按鈕。" + +#, fuzzy +msgid "" +"Connecting to the printer. Unable to cancel during the connection process." +msgstr "正在連接列印設備。連接過程中無法取消。" + +msgid "" +"Caution to use! Flow calibration on Textured PEI Plate may fail due to the " +"scattered surface." +msgstr "小心使用!金屬紋理 PEI 板 上的流量校準可能會因表面光線散射而失敗。" + +msgid "Automatic flow calibration using Micro Lidar" +msgstr "使用微型雷射雷達進行自動流量校準" + +#, fuzzy +msgid "Modifying the device name" +msgstr "修改列印設備名稱" + +msgid "Bind with Pin Code" +msgstr "" + +#, fuzzy +msgid "Send to Printer SD card" +msgstr "傳送到列印設備的 SD 記憶卡" + +msgid "Cannot send the print task when the upgrade is in progress" +msgstr "設備升級中,無法傳送列印作業" + +#, fuzzy +msgid "The selected printer is incompatible with the chosen printer presets." +msgstr "所選列印設備與選擇的列印設備預設檔不相容。" + +#, fuzzy +msgid "An SD card needs to be inserted before send to printer SD card." +msgstr "傳送到列印設備需要插入 SD 記憶卡" + +#, fuzzy +msgid "The printer is required to be in the same LAN as Snapmaker Orca." +msgstr "列印設備需要與 Snapmaker Orca 在同一個區域網路內。" + +#, fuzzy +msgid "The printer does not support sending to printer SD card." +msgstr "該列印設備不支援傳送到 SD 記憶卡。" + +msgid "Slice ok." +msgstr "切片完成." + +msgid "View all Daily tips" +msgstr "" + +msgid "Failed to create socket" +msgstr "建立網路端點連線失敗" + +msgid "Failed to connect socket" +msgstr "無法連線網路端點" + +msgid "Failed to publish login request" +msgstr "請求登陸失敗" + +msgid "Get ticket from device timeout" +msgstr "" + +msgid "Get ticket from server timeout" +msgstr "" + +msgid "Failed to post ticket to server" +msgstr "" + +#, fuzzy +msgid "Failed to parse login report reason" +msgstr "無法解析登入回覆" + +msgid "Receive login report timeout" +msgstr "接收登入回覆逾時" + +msgid "Unknown Failure" +msgstr "未知錯誤" + +msgid "" +"Please Find the Pin Code in Account page on printer screen,\n" +" and type in the Pin Code below." +msgstr "" + +msgid "Can't find Pin Code?" +msgstr "" + +msgid "Pin Code" +msgstr "" + +msgid "Binding..." +msgstr "" + +msgid "Please confirm on the printer screen" +msgstr "" + +msgid "Log in failed. Please check the Pin Code." +msgstr "" + +#, fuzzy +msgid "Log in printer" +msgstr "登入列印設備" + +#, fuzzy +msgid "Would you like to log in this printer with current account?" +msgstr "你想使用目前帳號登入這台列印設備嗎?" + +msgid "Check the reason" +msgstr "查看原因" + +msgid "Read and accept" +msgstr "閱讀並接受" + +msgid "Terms and Conditions" +msgstr "使用者協議" + +msgid "" +"Thank you for purchasing a Bambu Lab device.Before using your Bambu Lab " +"device, please read the termsand conditions.By clicking to agree to use your " +"Bambu Lab device, you agree to abide by the Privacy Policyand Terms of " +"Use(collectively, the \"Terms\"). If you do not comply with or agree to the " +"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services." +msgstr "" +"感謝您購買 Bambu Lab 設備,使用 Bambu Lab 設備前,請閱讀一下條款,點擊同意使" +"用您的 Bambu Lab 設備即表示您同意遵守隱私政策以及使用條款(統稱為 條款 )。如" +"果您不願遵守或不同意 Bambu Lab 隱私政策,請不要使用 Bambu Lab 設備和服務。" + +msgid "and" +msgstr "" + +msgid "Privacy Policy" +msgstr "隱私協議" + +#, fuzzy +msgid "We ask for your help to improve everyone's printer" +msgstr "我們請求您的幫助來改善大家的列印設備" + +msgid "Statement about User Experience Improvement Program" +msgstr "關於使用者體驗改善計劃的聲明" + +#, fuzzy, c-format, boost-format +msgid "" +"In the 3D Printing community, we learn from each other's successes and " +"failures to adjust our own slicing parameters and settings. %s follows the " +"same principle and uses machine learning to improve its performance from the " +"successes and failures of the vast number of prints by our users. We are " +"training %s to be smarter by feeding them the real-world data. If you are " +"willing, this service will access information from your error logs and usage " +"logs, which may include information described in Privacy Policy. We will " +"not collect any Personal Data by which an individual can be identified " +"directly or indirectly, including without limitation names, addresses, " +"payment information, or phone numbers. By enabling this service, you agree " +"to these terms and the statement about Privacy Policy." +msgstr "" +"在 3D 列印社區,我們從彼此的成功和失敗中學習調整自己的切片參數和設定。%s 遵循" +"同樣的原則,透過機器學習的方式從大量使用者列印的成功和失敗中獲取經驗,從而改" +"善列印性能。我們正在透過向 %s 提供真實世界的資料來訓練他們變得更聰明。如果您" +"願意,此服務將訪問您的錯誤日誌和使用日誌中的資訊,其中可能包括隱私政策中描述" +"的資料。我們不會收集任何可以直接或間接識別個人的個人資料,包括但不限於姓名、" +"地址、支付資訊或電話號碼。啟用此服務即表示您同意這些條款和有關隱私政策的聲" +"明。" + +msgid "Statement on User Experience Improvement Plan" +msgstr "關於使用者體驗改善計劃的聲明" + +msgid "Log in successful." +msgstr "登入成功。" + +#, fuzzy +msgid "Log out printer" +msgstr "登出列印設備" + +#, fuzzy +msgid "Would you like to log out the printer?" +msgstr "你想登出列印設備嗎?" + +msgid "Please log in first." +msgstr "請先登入。" + +#, fuzzy +msgid "There was a problem connecting to the printer. Please try again." +msgstr "連接列印設備時發生錯誤。 重新連接。" + +msgid "Failed to log out." +msgstr "登出失敗。" + +#. TRN "Save current Settings" +#, fuzzy, c-format, boost-format +msgid "Save current %s" +msgstr "儲存目前 %s" + +msgid "Delete this preset" +msgstr "刪除此預設" + +msgid "Search in preset" +msgstr "在預設中搜索" + +#, fuzzy +msgid "Click to reset all settings to the last saved preset." +msgstr "點擊以將所有設定還原到最後一次儲存的版本。" + +#, fuzzy +msgid "" +"Prime tower is required for smooth timeplase. There may be flaws on the " +"model without prime tower. Are you sure you want to disable prime tower?" +msgstr "" +"平滑模式的縮時錄影需要擦拭塔,否則列印物件上可能會有瑕疵。確定要關閉擦拭塔" +"嗎?" + +#, fuzzy +msgid "" +"Prime tower is required for smooth timelapse. There may be flaws on the " +"model without prime tower. Do you want to enable prime tower?" +msgstr "" +"平滑模式的縮時錄影需要擦拭塔,否則列印物件上可能會有瑕疵。要打開擦拭塔嗎?" + +msgid "Still print by object?" +msgstr "" + +#, fuzzy +msgid "" +"We have added an experimental style \"Tree Slim\" that features smaller " +"support volume but weaker strength.\n" +"We recommend using it with: 0 interface layers, 0 top distance, 2 walls." +msgstr "" +"我們增加了一種實驗性的支撐樣式 \"苗條樹\",它的特點是支撐體積較小,但強度較" +"弱。\n" +"因此我們推薦以下參數:接觸層數為 0,頂部Z距離為 0,牆層數為 2。" + +#, fuzzy +msgid "" +"Change these settings automatically? \n" +"Yes - Change these settings automatically\n" +"No - Do not change these settings for me" +msgstr "" +"自動調整這些設定?\n" +"是 - 自動調整這些設定\n" +"否 - 不用為我調整這些設定" + +#, fuzzy +msgid "" +"For \"Tree Strong\" and \"Tree Hybrid\" styles, we recommend the following " +"settings: at least 2 interface layers, at least 0.1mm top z distance or " +"using support materials on interface." +msgstr "" +"對於 \"強壯樹 \"和 \"混合樹 \"的支撐樣式,我們推薦以下設定:至少 2 層界面層," +"至少 0.1 毫米的頂部z距離或使用專用的支撐線材。" + +#, fuzzy +msgid "" +"When using support material for the support interface, We recommend the " +"following settings:\n" +"0 top z distance, 0 interface spacing, concentric pattern and disable " +"independent support layer height" +msgstr "" +"當使用專用的支撐線材時,我們推薦以下設定:\n" +"0 頂層z距離,0 接觸層間距,同心圖案,並且禁用獨立支撐層高" + +msgid "" +"Enabling this option will modify the model's shape. If your print requires " +"precise dimensions or is part of an assembly, it's important to double-check " +"whether this change in geometry impacts the functionality of your print." +msgstr "" + +msgid "Are you sure you want to enable this option?" +msgstr "" + +msgid "" +"Layer height is too small.\n" +"It will set to min_layer_height\n" +msgstr "" + +msgid "" +"Layer height exceeds the limit in Printer Settings -> Extruder -> Layer " +"height limits ,this may cause printing quality issues." +msgstr "" + +msgid "Adjust to the set range automatically? \n" +msgstr "" + +msgid "Adjust" +msgstr "" + +msgid "Ignore" +msgstr "忽略" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other " +"printing complications." +msgstr "" + +msgid "" +"Experimental feature: Retracting and cutting off the filament at a greater " +"distance during filament changes to minimize flush.Although it can notably " +"reduce flush, it may also elevate the risk of nozzle clogs or other printing " +"complications.Please use with the latest printer firmware." +msgstr "" + +#, fuzzy +msgid "" +"When recording timelapse without toolhead, it is recommended to add a " +"\"Timelapse Wipe Tower\" \n" +"by right-click the empty position of build plate and choose \"Add Primitive" +"\"->\"Timelapse Wipe Tower\"." +msgstr "" +"在錄製無工具頭縮時錄影影片時,建議增加“縮時錄影擦拭塔”\n" +"右鍵單擊列印板的空白位置,選擇“新增標準模型”->“縮時錄影擦拭塔”。" + +msgid "Line width" +msgstr "線寬" + +msgid "Seam" +msgstr "接縫" + +msgid "Precision" +msgstr "精度" + +msgid "Wall generator" +msgstr "牆產生器" + +msgid "Walls and surfaces" +msgstr "" + +msgid "Bridging" +msgstr "" + +msgid "Overhangs" +msgstr "" + +msgid "Walls" +msgstr "牆" + +msgid "Top/bottom shells" +msgstr "頂部/底部外殼" + +msgid "Initial layer speed" +msgstr "首層速度" + +msgid "Other layers speed" +msgstr "其他層速度" + +#, fuzzy +msgid "Overhang speed" +msgstr "懸空列印速度" + +#, fuzzy +msgid "" +"This is the speed for various overhang degrees. Overhang degrees are " +"expressed as a percentage of line width. 0 speed means no slowing down for " +"the overhang degree range and wall speed is used" +msgstr "" +"不同懸空程度的列印速度。懸空程度使用相對於線寬的百分比表示。速度為 0 代表這個" +"懸空程度範圍內不降速,直接使用牆的速度" + +msgid "Bridge" +msgstr "橋接" + +#, fuzzy +msgid "Set speed for external and internal bridges" +msgstr "設定外部和內部橋接的速度" + +msgid "Travel speed" +msgstr "空駛速度" + +msgid "Acceleration" +msgstr "加速度" + +msgid "Jerk(XY)" +msgstr "抖動(XY軸)" + +msgid "Raft" +msgstr "筏層" + +#, fuzzy +msgid "Support filament" +msgstr "支撐線材" + +msgid "Tree supports" +msgstr "樹狀支撐" + +msgid "Skirt" +msgstr "側裙" + +msgid "Prime tower" +msgstr "擦拭塔" + +msgid "Special mode" +msgstr "特殊模式" + +msgid "G-code output" +msgstr "G-code 輸出" + +msgid "Post-processing Scripts" +msgstr "後處理腳本" + +#, fuzzy +msgid "Notes" +msgstr "備註" + +msgid "Frequent" +msgstr "常用" + +#, c-format, boost-format +msgid "" +"Following line %s contains reserved keywords.\n" +"Please remove it, or will beat G-code visualization and printing time " +"estimation." +msgid_plural "" +"Following lines %s contain reserved keywords.\n" +"Please remove them, or will beat G-code visualization and printing time " +"estimation." +msgstr[0] "" +"以下行 %s 包含保留關鍵字。\n" +"請將其移除,否則將影響 G-code 視覺化和列印時間估計。" + +msgid "Reserved keywords found" +msgstr "偵測到保留的關鍵字" + +msgid "Setting Overrides" +msgstr "參數覆蓋" + +msgid "Retraction" +msgstr "回抽" + +#, fuzzy +msgid "Basic information" +msgstr "基本資訊" + +msgid "Recommended nozzle temperature" +msgstr "建議噴嘴溫度" + +#, fuzzy +msgid "Recommended nozzle temperature range of this filament. 0 means no set" +msgstr "該線材的建議噴嘴溫度範圍。0 表示未設定" + +#, fuzzy +msgid "Print chamber temperature" +msgstr "列印設備內部溫度" + +msgid "Print temperature" +msgstr "列印溫度" + +msgid "Nozzle" +msgstr "噴嘴" + +msgid "Left Nozzle" +msgstr "左噴嘴" + +msgid "Right Nozzle" +msgstr "右噴嘴" + +msgid "Nozzle temperature when printing" +msgstr "列印時的噴嘴溫度" + +#, fuzzy +msgid "Cool plate" +msgstr "低溫列印板" + +#, fuzzy +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Cool Plate" +msgstr "使用低溫列印板時的熱床溫度。0 值表示這個線材不支援低溫列印板" + +msgid "Textured Cool plate" +msgstr "" + +msgid "" +"Bed temperature when cool plate is installed. Value 0 means the filament " +"does not support to print on the Textured Cool Plate" +msgstr "" + +#, fuzzy +msgid "Engineering plate" +msgstr "工程高溫列印板" + +#, fuzzy +msgid "" +"Bed temperature when engineering plate is installed. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "使用工程高溫列印板時的熱床溫度。0 值表示這個線材不支援工程高溫列印板" + +#, fuzzy +msgid "Smooth PEI Plate / High Temp Plate" +msgstr "光滑面 PEI 列印板/高溫列印板" + +#, fuzzy +msgid "" +"Bed temperature when Smooth PEI Plate/High temperature plate is installed. " +"Value 0 means the filament does not support to print on the Smooth PEI Plate/" +"High Temp Plate" +msgstr "" +"使用光滑面 PEI 列印板/高溫列印板時的熱床溫度。0 值表示這個線材不支援光滑面列" +"印板/高溫列印板" + +#, fuzzy +msgid "Textured PEI Plate" +msgstr "金屬紋理 PEI 列印板" + +#, fuzzy +msgid "" +"Bed temperature when Textured PEI Plate is installed. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "" +"使用金屬紋理 PEI 列印板時的熱床溫度。0 值表示這個線材不支援金屬紋理 PEI 列印" +"板" + +msgid "Volumetric speed limitation" +msgstr "體積流量速度限制" + +msgid "Cooling" +msgstr "冷卻" + +msgid "Cooling for specific layer" +msgstr "特定層冷卻" + +#, fuzzy +msgid "Part cooling fan" +msgstr "部件冷卻風扇" + +msgid "Min fan speed threshold" +msgstr "最小風扇速度臨界值" + +#, fuzzy +msgid "" +"Part cooling fan speed will start to run at min speed when the estimated " +"layer time is no longer than the layer time in setting. When layer time is " +"shorter than threshold, fan speed is interpolated between the minimum and " +"maximum fan speed according to layer printing time" +msgstr "" +"當預計的層時間不大於設定的層時間時,部件冷卻風扇速度將開始以最小速度運轉。當" +"層時間小於設定值時,風扇速度將根據該層列印時間在最小和最大風扇速度之間自動調" +"整" + +msgid "Max fan speed threshold" +msgstr "最大風扇速度臨界值" + +#, fuzzy +msgid "" +"Part cooling fan speed will be max when the estimated layer time is shorter " +"than the setting value" +msgstr "當預計的層列印時間比設定值要小時,部件冷卻風扇轉速將達到最大值" + +#, fuzzy +msgid "Auxiliary part cooling fan" +msgstr "輔助冷卻風扇" + +msgid "Exhaust fan" +msgstr "排風扇" + +msgid "During print" +msgstr "列印期間" + +msgid "Complete print" +msgstr "列印完成" + +#, fuzzy +msgid "Filament start G-code" +msgstr "線材起始 G-code" + +msgid "Filament end G-code" +msgstr "線材結束 G-code" + +msgid "Multimaterial" +msgstr "多線材" + +msgid "Wipe tower parameters" +msgstr "色塔參數" + +#, fuzzy +msgid "Toolchange parameters with single extruder MM printers" +msgstr "單擠出機多線材列印設備換色參數" + +#, fuzzy +msgid "Ramming settings" +msgstr "尖端成型設定" + +#, fuzzy +msgid "Toolchange parameters with multi extruder MM printers" +msgstr "多擠出機多線材列印設備換色參數" + +msgid "Printable space" +msgstr "可列印區域" + +#. TRN: First argument is parameter name, the second one is the value. +#, boost-format +msgid "Invalid value provided for parameter %1%: %2%" +msgstr "" + +msgid "G-code flavor is switched" +msgstr "" + +msgid "Cooling Fan" +msgstr "冷卻風扇" + +msgid "Fan speed-up time" +msgstr "風扇反應時間" + +msgid "Extruder Clearance" +msgstr "擠出機避讓空間" + +msgid "Adaptive bed mesh" +msgstr "" + +msgid "Accessory" +msgstr "配件" + +#, fuzzy +msgid "Machine gcode" +msgstr "列印設備 G-code" + +#, fuzzy +msgid "Machine start G-code" +msgstr "列印設備起始 G-code" + +#, fuzzy +msgid "Machine end G-code" +msgstr "列印設備結束 G-code" + +msgid "Printing by object G-code" +msgstr "" + +msgid "Before layer change G-code" +msgstr "換層前 G-code" + +msgid "Layer change G-code" +msgstr "換層 G-code" + +msgid "Time lapse G-code" +msgstr "縮時錄影 G-code" + +msgid "Change filament G-code" +msgstr "線材更換 G-code" + +msgid "Change extrusion role G-code" +msgstr "" + +msgid "Pause G-code" +msgstr "暫停 G-code" + +msgid "Template Custom G-code" +msgstr "模板自訂 G-code" + +msgid "Motion ability" +msgstr "移動能力" + +msgid "Normal" +msgstr "普通" + +msgid "Speed limitation" +msgstr "速度限制" + +msgid "Acceleration limitation" +msgstr "加速度限制" + +msgid "Jerk limitation" +msgstr "抖動限制" + +#, fuzzy +msgid "Single extruder multimaterial setup" +msgstr "單擠出機多線材設定" + +msgid "Wipe tower" +msgstr "色塔" + +msgid "Single extruder multimaterial parameters" +msgstr "單擠出機多線材參數" + +msgid "Layer height limits" +msgstr "層高限制" + +msgid "Lift Z Enforcement" +msgstr "強化抬Z策略" + +msgid "Retraction when switching material" +msgstr "切換線材時的回抽量" + +msgid "" +"The Wipe option is not available when using the Firmware Retraction mode.\n" +"\n" +"Shall I disable it in order to enable Firmware Retraction?" +msgstr "" +"使用韌體回抽模式時,擦拭選項不可用。\n" +"是否禁用擦拭選項來啟用韌體回抽?" + +msgid "Firmware Retraction" +msgstr "韌體回抽" + +msgid "Detached" +msgstr "分離的" + +#, c-format, boost-format +msgid "" +"%d Filament Preset and %d Process Preset is attached to this printer. Those " +"presets would be deleted if the printer is deleted." +msgstr "" + +msgid "Presets inherited by other presets can not be deleted!" +msgstr "" + +msgid "The following presets inherit this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" + +#. TRN Remove/Delete +#, boost-format +msgid "%1% Preset" +msgstr "%1% 預設" + +msgid "Following preset will be deleted too." +msgid_plural "Following presets will be deleted too." +msgstr[0] "下列預設將被一起刪除。" + +msgid "" +"Are you sure to delete the selected preset? \n" +"If the preset corresponds to a filament currently in use on your printer, " +"please reset the filament information for that slot." +msgstr "" + +#, fuzzy, boost-format +msgid "Are you sure to %1% the selected preset?" +msgstr "確定要 %1% 所選預設嗎?" + +msgid "All" +msgstr "所有" + +msgid "Set" +msgstr "設定" + +#, fuzzy +msgid "Click to reset current value and attach to the global value." +msgstr "點擊該圖示,恢復到全局的設定數值,並與全局設定同步變化。" + +#, fuzzy +msgid "Click to drop current modify and reset to saved value." +msgstr "點擊該圖示,放棄目前的修改,恢復到上次儲存的數值。" + +#, fuzzy +msgid "Process Settings" +msgstr "列印參數設定" + +msgid "Undef" +msgstr "未定義" + +msgid "Unsaved Changes" +msgstr "未儲存的更改" + +msgid "Transfer or discard changes" +msgstr "放棄或保留更改" + +msgid "Old Value" +msgstr "舊值" + +msgid "New Value" +msgstr "新值" + +msgid "Transfer" +msgstr "遷移" + +msgid "Don't save" +msgstr "不儲存" + +msgid "Discard" +msgstr "放棄" + +msgid "Click the right mouse button to display the full text." +msgstr "單擊滑鼠右鍵顯示全文。" + +msgid "All changes will not be saved" +msgstr "所有的修改都不會被儲存" + +msgid "All changes will be discarded." +msgstr "所有的修改都將被丟棄。" + +msgid "Save the selected options." +msgstr "儲存所選項目。" + +msgid "Keep the selected options." +msgstr "保留所選項目。" + +msgid "Transfer the selected options to the newly selected preset." +msgstr "將所選項目遷移到新的預設中。" + +#, fuzzy, boost-format +msgid "" +"Save the selected options to preset \n" +"\"%1%\"." +msgstr "" +"儲存所選選項到預設 \n" +"\"%1%\"。" + +#, fuzzy, boost-format +msgid "" +"Transfer the selected options to the newly selected preset \n" +"\"%1%\"." +msgstr "" +"將選擇的選項轉移到新選擇的預設 \n" +"\"%1%\"。" + +#, fuzzy, boost-format +msgid "Preset \"%1%\" contains the following unsaved changes:" +msgstr "預設 \"%1%\" 包含以下未儲存的修改:" + +#, fuzzy, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new printer profile and it " +"contains the following unsaved changes:" +msgstr "預設檔 \"%1%\" 與新的列印設備預設不相容,並且包含以下未儲存的修改:" + +#, fuzzy, boost-format +msgid "" +"Preset \"%1%\" is not compatible with the new process profile and it " +"contains the following unsaved changes:" +msgstr "預設 \"%1%\" 和新的列印品質預設不相容,並且它包含以下未儲存的修改:" + +#, boost-format +msgid "You have changed some settings of preset \"%1%\". " +msgstr "" + +msgid "" +"\n" +"You can save or discard the preset values you have modified." +msgstr "" + +msgid "" +"\n" +"You can save or discard the preset values you have modified, or choose to " +"transfer the values you have modified to the new preset." +msgstr "" + +msgid "You have previously modified your settings." +msgstr "" + +msgid "" +"\n" +"You can discard the preset values you have modified, or choose to transfer " +"the modified values to the new project" +msgstr "" + +msgid "Extruders count" +msgstr "擠出機數量" + +#, fuzzy +msgid "General" +msgstr "一般" + +msgid "Capabilities" +msgstr "能力" + +#, fuzzy +msgid "Show all presets (including incompatible)" +msgstr "顯示所有預設(包括不相容的)" + +msgid "Select presets to compare" +msgstr "選擇要比較的預設" + +msgid "" +"You can only transfer to current active profile because it has been modified." +msgstr "" + +msgid "" +"Transfer the selected options from left preset to the right.\n" +"Note: New modified presets will be selected in settings tabs after close " +"this dialog." +msgstr "" + +msgid "Transfer values from left to right" +msgstr "" + +msgid "" +"If enabled, this dialog can be used for transfer selected values from left " +"to right preset." +msgstr "" + +msgid "Add File" +msgstr "新增檔案" + +#, fuzzy +msgid "Set as cover" +msgstr "設定為封面" + +msgid "Cover" +msgstr "封面" + +#, fuzzy, boost-format +msgid "The name \"%1%\" already exists." +msgstr "名字 \"%1%\" 已經存在。" + +msgid "Basic Info" +msgstr "基本資訊" + +msgid "Pictures" +msgstr "圖片" + +#, fuzzy +msgid "Bill of Materials" +msgstr "材料清單" + +#, fuzzy +msgid "Assembly Guide" +msgstr "組裝說明" + +msgid "Author" +msgstr "作者" + +msgid "Model Name" +msgstr "模型名字" + +#, c-format, boost-format +msgid "%s Update" +msgstr "%s 更新" + +msgid "A new version is available" +msgstr "發現新版本" + +#, fuzzy +msgid "Configuration update" +msgstr "設定檔更新" + +#, fuzzy +msgid "A new configuration package available, Do you want to install it?" +msgstr "新的設定檔可用,確定要安裝嗎?" + +msgid "Description:" +msgstr "描述:" + +#, fuzzy +msgid "Configuration incompatible" +msgstr "設定檔不相容" + +#, fuzzy +msgid "the configuration package is incompatible with current application." +msgstr "設定檔和目前的應用程式不相容。" + +#, fuzzy, c-format, boost-format +msgid "" +"The configuration package is incompatible with current application.\n" +"%s will update the configuration package, Otherwise it won't be able to start" +msgstr "" +"設定檔和目前的應用程式不相容。\n" +"%s 會更新設定檔,否則無法正常啟動" + +#, c-format, boost-format +msgid "Exit %s" +msgstr "退出 %s" + +#, fuzzy +msgid "the Configuration package is incompatible with current APP." +msgstr "設定檔與目前手機應用程式不相容。" + +msgid "Configuration updates" +msgstr "組態檔更新" + +#, fuzzy +msgid "No updates available." +msgstr "以更新到最新。" + +#, fuzzy +msgid "The configuration is up to date." +msgstr "目前設定檔已經是最新版本。" + +msgid "Obj file Import color" +msgstr "" + +msgid "Specify number of colors:" +msgstr "" + +#, c-format, boost-format +msgid "The color count should be in range [%d, %d]." +msgstr "" + +msgid "Recommended " +msgstr "" + +msgid "Current filament colors:" +msgstr "" + +msgid "Quick set:" +msgstr "" + +msgid "Color match" +msgstr "" + +msgid "Approximate color matching." +msgstr "" + +msgid "Append" +msgstr "" + +msgid "Add consumable extruder after existing extruders." +msgstr "" + +msgid "Reset mapped extruders." +msgstr "" + +msgid "Cluster colors" +msgstr "" + +msgid "Map Filament" +msgstr "" + +msgid "" +"Note:The color has been selected, you can choose OK \n" +" to continue or manually adjust it." +msgstr "" + +msgid "" +"Waring:The count of newly added and \n" +" current extruders exceeds 16." +msgstr "" + +#, fuzzy +msgid "Ramming customization" +msgstr "自訂尖端成型" + +#, fuzzy +msgid "" +"Ramming denotes the rapid extrusion just before a tool change in a single-" +"extruder MM printer. Its purpose is to properly shape the end of the " +"unloaded filament so it does not prevent insertion of the new filament and " +"can itself be reinserted later. This phase is important and different " +"materials can require different extrusion speeds to get the good shape. For " +"this reason, the extrusion rates during ramming are adjustable.\n" +"\n" +"This is an expert-level setting, incorrect adjustment will likely lead to " +"jams, extruder wheel grinding into filament etc." +msgstr "" +"尖端成型是指在單擠出機多線材印表機中換色之前的快速抽插。\n" +"其目的是使退出的線材末端正確成形,這樣就不會妨礙新線材的插入,並可以重新插" +"入。\n" +"這個階段很重要,不同的線材可能需要不同的擠出速度才能獲得良好的形狀。因此尖端" +"成型過程中的擠壓率是需要可調整的。\n" +"這是一個專業的設定,不正確的調整可能會導致堵塞、擠出機齒輪刨料等。" + +#, fuzzy +msgid "Total ramming time" +msgstr "尖端成型總時間" + +msgid "s" +msgstr "秒" + +#, fuzzy +msgid "Total rammed volume" +msgstr "尖端成型總體積" + +#, fuzzy +msgid "Ramming line width" +msgstr "尖端成型線寬" + +#, fuzzy +msgid "Ramming line spacing" +msgstr "尖端成型線間距" + +msgid "Auto-Calc" +msgstr "自動計算" + +msgid "Re-calculate" +msgstr "" + +msgid "Flushing volumes for filament change" +msgstr "線材更換時產生的廢料體積" + +msgid "" +"Orca would re-calculate your flushing volumes everytime the filaments color " +"changed. You could disable the auto-calculate in Snapmaker Orca > Preferences" +msgstr "" + +msgid "Flushing volume (mm³) for each filament pair." +msgstr "在兩個線材間切換所需的廢料體積(mm³)" + +#, fuzzy, c-format, boost-format +msgid "Suggestion: Flushing Volume in range [%d, %d]" +msgstr "建議:廢料體積量應設定在[ %d, %d ]範圍內" + +#, fuzzy, c-format, boost-format +msgid "The multiplier should be in range [%.2f, %.2f]." +msgstr "倍數的數值範圍是[%.2f, %.2f]" + +#, fuzzy +msgid "Multiplier" +msgstr "倍數" + +msgid "unloaded" +msgstr "退料" + +msgid "loaded" +msgstr "進料" + +msgid "Filament #" +msgstr "線材#" + +msgid "From" +msgstr "從" + +msgid "To" +msgstr "" + +msgid "" +"Windows Media Player is required for this task! Do you want to enable " +"'Windows Media Player' for your operation system?" +msgstr "" + +msgid "" +"BambuSource has not correctly been registered for media playing! Press Yes " +"to re-register it. You will be promoted twice" +msgstr "" + +msgid "" +"Missing BambuSource component registered for media playing! Please re-" +"install BambuStutio or seek after-sales help." +msgstr "" + +msgid "" +"Using a BambuSource from a different install, video play may not work " +"correctly! Press Yes to fix it." +msgstr "" + +msgid "" +"Your system is missing H.264 codecs for GStreamer, which are required to " +"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-" +"libav packages, then restart Snapmaker Orca?)" +msgstr "" + +msgid "Bambu Network plug-in not detected." +msgstr "" + +msgid "Click here to download it." +msgstr "" + +msgid "Login" +msgstr "登入" + +#, fuzzy +msgid "The configuration package is changed in previous Config Guide" +msgstr "設定檔在之前的設定引導過程中以改變" + +#, fuzzy +msgid "Configuration package changed" +msgstr "設定檔以改變" + +msgid "Toolbar" +msgstr "工具欄" + +msgid "Objects list" +msgstr "物件清單" + +#, fuzzy +msgid "Import geometry data from STL/STEP/3MF/OBJ/AMF files" +msgstr "從 STL/STEP/3MF/OBJ/AMF 檔案中匯入幾何數據" + +msgid "⌘+Shift+G" +msgstr "" + +msgid "Ctrl+Shift+G" +msgstr "" + +msgid "Paste from clipboard" +msgstr "從剪貼簿貼上" + +#, fuzzy +msgid "Show/Hide 3Dconnexion devices settings dialog" +msgstr "顯示/隱藏 3Dconnexion 設備的設定對話框" + +msgid "Switch table page" +msgstr "" + +msgid "Show keyboard shortcuts list" +msgstr "顯示鍵盤快捷鍵清單" + +#, fuzzy +msgid "Global shortcuts" +msgstr "全局快捷鍵" + +msgid "Rotate View" +msgstr "旋轉視角" + +msgid "Pan View" +msgstr "移動視角" + +msgid "Mouse wheel" +msgstr "滑鼠滾輪" + +msgid "Zoom View" +msgstr "縮放視角" + +msgid "Shift+A" +msgstr "" + +msgid "Shift+R" +msgstr "" + +#, fuzzy +msgid "" +"Auto orientates selected objects or all objects.If there are selected " +"objects, it just orientates the selected ones.Otherwise, it will orientates " +"all objects in the current disk." +msgstr "" +"自動調整選取零件/所有零件的方向,\n" +"有選取零件時調整選取零件的方向,沒有選取零件時調整目前列印板所有零件的方向" + +msgid "Shift+Tab" +msgstr "" + +#, fuzzy +msgid "Collapse/Expand the sidebar" +msgstr "摺疊/展開 側邊欄" + +msgid "⌘+Any arrow" +msgstr "⌘+方向鍵" + +#, fuzzy +msgid "Movement in camera space" +msgstr "沿相機視角移動物件" + +msgid "⌥+Left mouse button" +msgstr "⌥+滑鼠左鍵" + +msgid "Select a part" +msgstr "選擇單一零件" + +msgid "⌘+Left mouse button" +msgstr "⌘+滑鼠左鍵" + +#, fuzzy +msgid "Select multiple objects" +msgstr "選擇多個物件" + +msgid "Ctrl+Any arrow" +msgstr "Ctrl+方向鍵" + +msgid "Alt+Left mouse button" +msgstr "Alt+滑鼠左鍵" + +msgid "Ctrl+Left mouse button" +msgstr "Ctrl+滑鼠左鍵" + +msgid "Shift+Left mouse button" +msgstr "Shift+滑鼠左鍵" + +msgid "Select objects by rectangle" +msgstr "框選多個零件" + +msgid "Arrow Up" +msgstr "上箭頭" + +#, fuzzy +msgid "Move selection 10 mm in positive Y direction" +msgstr "Y 方向移動 10mm" + +msgid "Arrow Down" +msgstr "下箭頭" + +#, fuzzy +msgid "Move selection 10 mm in negative Y direction" +msgstr "Y 方向移動 10mm" + +msgid "Arrow Left" +msgstr "左箭頭" + +#, fuzzy +msgid "Move selection 10 mm in negative X direction" +msgstr "X 方向移動 10mm" + +msgid "Arrow Right" +msgstr "右箭頭" + +#, fuzzy +msgid "Move selection 10 mm in positive X direction" +msgstr "X 方向移動 10mm" + +msgid "Shift+Any arrow" +msgstr "Shift+方向鍵" + +#, fuzzy +msgid "Movement step set to 1 mm" +msgstr "沿 X、Y 軸以 1mm 為單位步進移動" + +#, fuzzy +msgid "keyboard 1-9: set filament for object/part" +msgstr "按鍵 1~9:設定物件/零件的線材" + +msgid "Camera view - Default" +msgstr "攝影機視角 - 默認" + +msgid "Camera view - Top" +msgstr "攝影機視角 - 頂部" + +msgid "Camera view - Bottom" +msgstr "攝影機視角 - 底部" + +msgid "Camera view - Front" +msgstr "攝影機視角 - 前面" + +msgid "Camera view - Behind" +msgstr "攝影機視角 - 後面" + +msgid "Camera Angle - Left side" +msgstr "攝影機視角 - 左面" + +msgid "Camera Angle - Right side" +msgstr "攝影機視角 - 右面" + +msgid "Select all objects" +msgstr "選擇所有物件" + +msgid "Gizmo move" +msgstr "線框移動" + +msgid "Gizmo scale" +msgstr "線框縮放" + +msgid "Gizmo rotate" +msgstr "旋轉物件" + +msgid "Gizmo cut" +msgstr "切割物件" + +msgid "Gizmo Place face on bed" +msgstr "選擇底面" + +msgid "Gizmo SLA support points" +msgstr "SLA 支撐點" + +msgid "Gizmo FDM paint-on seam" +msgstr "FDM 塗裝接縫" + +msgid "Gizmo Text emboss / engrave" +msgstr "" + +msgid "Zoom in" +msgstr "放大" + +msgid "Zoom out" +msgstr "縮小" + +msgid "Switch between Prepare/Preview" +msgstr "在準備/預覽模式之中切換" + +msgid "Plater" +msgstr "準備" + +#, fuzzy +msgid "Move: press to snap by 1mm" +msgstr "移動:以 1mm 為單位步進移動" + +msgid "⌘+Mouse wheel" +msgstr "⌘+滑鼠滾輪" + +msgid "Support/Color Painting: adjust pen radius" +msgstr "支撐/顏色繪製:調整筆刷半徑" + +msgid "⌥+Mouse wheel" +msgstr "⌥+滑鼠滾輪" + +msgid "Support/Color Painting: adjust section position" +msgstr "支撐/色彩繪製:調整剖面位置" + +msgid "Ctrl+Mouse wheel" +msgstr "Ctrl+滑鼠滾輪" + +msgid "Alt+Mouse wheel" +msgstr "Alt+滑鼠滾輪" + +msgid "Gizmo" +msgstr "" + +#, fuzzy +msgid "Set extruder number for the objects and parts" +msgstr "設定物件、零件使用的擠出機編號" + +msgid "Delete objects, parts, modifiers " +msgstr "刪除物件、零件、修改器" + +msgid "Select the object/part and press space to change the name" +msgstr "選取物件、零件,按空格可修改名稱" + +msgid "Mouse click" +msgstr "滑鼠點擊" + +msgid "Select the object/part and mouse click to change the name" +msgstr "選取物件或零件,雙擊可修改名稱" + +msgid "Objects List" +msgstr "物件清單" + +msgid "Vertical slider - Move active thumb Up" +msgstr "垂直滑動條 - 向上移動一層" + +msgid "Vertical slider - Move active thumb Down" +msgstr "垂直滑動條 - 向下移動一層" + +msgid "Horizontal slider - Move active thumb Left" +msgstr "水平滑動條 - 向左移動一步" + +msgid "Horizontal slider - Move active thumb Right" +msgstr "水平滑動條 - 向右移動一步" + +msgid "On/Off one layer mode of the vertical slider" +msgstr "開啟/關閉垂直滑動條的單層模式" + +#, fuzzy +msgid "On/Off g-code window" +msgstr "開啟/關閉 G-code 視窗" + +msgid "Move slider 5x faster" +msgstr "5 倍速移動滑動條" + +msgid "Shift+Mouse wheel" +msgstr "Shift+滑鼠滾輪" + +msgid "Horizontal slider - Move to start position" +msgstr "" + +msgid "Horizontal slider - Move to last position" +msgstr "" + +msgid "Release Note" +msgstr "更新說明" + +#, c-format, boost-format +msgid "version %s update information :" +msgstr "版本 %s 更新資訊" + +#, fuzzy +msgid "Network plug-in update" +msgstr "網路套件升級" + +#, fuzzy +msgid "" +"Click OK to update the Network plug-in when Snapmaker Orca launches next time." +msgstr "按一下「確定」以在下次啟動 Snapmaker Orca 時更新網路套件" + +#, fuzzy, c-format, boost-format +msgid "A new Network plug-in(%s) available, Do you want to install it?" +msgstr "新的網路套件( %s) 可用,您是否需要安裝它?" + +msgid "New version of Snapmaker Orca" +msgstr "新版本的 Snapmaker Orca" + +msgid "Skip this Version" +msgstr "" + +msgid "Done" +msgstr "完成" + +msgid "resume" +msgstr "" + +msgid "Resume Printing" +msgstr "" + +msgid "Resume Printing(defects acceptable)" +msgstr "" + +msgid "Resume Printing(problem solved)" +msgstr "" + +msgid "Stop Printing" +msgstr "" + +msgid "Check Assistant" +msgstr "" + +msgid "Filament Extruded, Continue" +msgstr "" + +msgid "Not Extruded Yet, Retry" +msgstr "" + +msgid "Finished, Continue" +msgstr "" + +msgid "Load Filament" +msgstr "進料" + +msgid "Filament Loaded, Resume" +msgstr "" + +msgid "View Liveview" +msgstr "" + +msgid "Confirm and Update Nozzle" +msgstr "" + +#, fuzzy +msgid "LAN Connection Failed (Sending print file)" +msgstr "區域網路連接失敗(傳送列印作業)" + +#, fuzzy +msgid "" +"Step 1, please confirm Snapmaker Orca and your printer are in the same LAN." +msgstr "第1步,請確認 Snapmaker Orca 和您的列印設備在同一個區域網路上。" + +#, fuzzy +msgid "" +"Step 2, if the IP and Access Code below are different from the actual values " +"on your printer, please correct them." +msgstr "" +"步驟2, 如果下面的 IP 和訪問碼與列印設備上的實際值不同,請輸入正確的數值。" + +msgid "IP" +msgstr "" + +msgid "Access Code" +msgstr "訪問碼" + +#, fuzzy +msgid "Where to find your printer's IP and Access Code?" +msgstr "在哪裡可以找到列印設備的 IP 和訪問碼?" + +msgid "Step 3: Ping the IP address to check for packet loss and latency." +msgstr "" + +msgid "Test" +msgstr "測試" + +msgid "IP and Access Code Verified! You may close the window" +msgstr "" + +msgid "Connection failed, please double check IP and Access Code" +msgstr "" + +msgid "" +"Connection failed! If your IP and Access Code is correct, \n" +"please move to step 3 for troubleshooting network issues" +msgstr "" + +msgid "Model:" +msgstr "型號:" + +msgid "Serial:" +msgstr "序號:" + +msgid "Version:" +msgstr "版本:" + +msgid "Update firmware" +msgstr "更新韌體" + +msgid "Beta version" +msgstr "" + +msgid "Latest version" +msgstr "最新版本" + +msgid "Updating" +msgstr "更新中" + +msgid "Updating failed" +msgstr "更新失敗" + +msgid "Updating successful" +msgstr "更新成功" + +msgid "" +"Are you sure you want to update? This will take about 10 minutes. Do not " +"turn off the power while the printer is updating." +msgstr "確定要更新嗎?更新需要大約10分鐘,更新期間請勿關閉電源。" + +msgid "" +"An important update was detected and needs to be run before printing can " +"continue. Do you want to update now? You can also update later from 'Upgrade " +"firmware'." +msgstr "" +"偵測到重要更新,需要升級後才可進行列印。你想現在就開始升級嗎?你也可以稍後點" +"擊‘升級韌體’完成升級。" + +#, fuzzy +msgid "" +"The firmware version is abnormal. Repairing and updating are required before " +"printing. Do you want to update now? You can also update later on printer or " +"update next time starting Orca." +msgstr "" +"目前韌體版本異常,需要進行修復升級,否則無法繼續列印。你想現在就開始升級嗎?" +"你也可以稍後在列印設備上升級,或者下一次啟動 Snapmaker Orca 再升級。" + +msgid "Extension Board" +msgstr "擴展板" + +msgid "Saving objects into the 3mf failed." +msgstr "將物件儲存到 3mf 失敗。" + +#, fuzzy +msgid "Only Windows 10 is supported." +msgstr "僅支援 Windows 10 作業系統。" + +msgid "Failed to initialize the WinRT library." +msgstr "無法初始化 WinRT 函式庫。。" + +msgid "Exporting objects" +msgstr "正在匯出物件" + +msgid "Failed loading objects." +msgstr "載入物件失敗。" + +msgid "Repairing object by Windows service" +msgstr "透過 Windows 服務修復物件" + +msgid "Repair failed." +msgstr "修復失敗。" + +#, fuzzy +msgid "Loading repaired objects" +msgstr "正在載入修復的物件" + +msgid "Exporting 3mf file failed" +msgstr "匯出 3mf 檔案失敗" + +msgid "Import 3mf file failed" +msgstr "匯入 3mf 檔案失敗" + +msgid "Repaired 3mf file does not contain any object" +msgstr "已修復的 3mf 檔案不包含任何物件" + +msgid "Repaired 3mf file contains more than one object" +msgstr "已修復的 3mf 檔案包含了不止一個物件" + +msgid "Repaired 3mf file does not contain any volume" +msgstr "修復的 3mf 檔案不包含任何零件" + +msgid "Repaired 3mf file contains more than one volume" +msgstr "已修復的 3mf 檔案包含多個零件" + +msgid "Repair finished" +msgstr "修復已完成" + +msgid "Repair canceled" +msgstr "修復被取消" + +#, fuzzy, boost-format +msgid "Copying of file %1% to %2% failed: %3%" +msgstr "從 %1% 複製檔案到 %2% 失敗:%3%" + +#, fuzzy +msgid "Need to check the unsaved changes before configuration updates." +msgstr "在設定更新之前需要檢查未儲存的設定變更。" + +msgid "Configuration package: " +msgstr "" + +msgid " updated to " +msgstr "" + +msgid "Open G-code file:" +msgstr "打開 G-code 檔案:" + +msgid "" +"One object has empty initial layer and can't be printed. Please Cut the " +"bottom or enable supports." +msgstr "模型出現空層無法列印。請切掉底部或打開支撐。" + +#, boost-format +msgid "Object can't be printed for empty layer between %1% and %2%." +msgstr "模型在 %1% 和 %2% 之間出現空層,無法列印。" + +#, boost-format +msgid "Object: %1%" +msgstr "模型:%1%" + +msgid "" +"Maybe parts of the object at these height are too thin, or the object has " +"faulty mesh" +msgstr "部分模型在這些高度可能過薄,或者模型存在缺陷" + +msgid "No object can be printed. Maybe too small" +msgstr "沒有可列印的物件。可能是因為尺寸過小。" + +#, fuzzy +msgid "" +"Failed to generate gcode for invalid custom G-code.\n" +"\n" +msgstr "" +"錯誤的自訂 G-code 導致 G-code 產生失敗。\n" +"\n" + +msgid "Please check the custom G-code or use the default custom G-code." +msgstr "請檢查自訂 G-code,或者使用預設的。" + +#, fuzzy, boost-format +msgid "Generating G-code: layer %1%" +msgstr "正在產生 G-code:%1% 層" + +msgid "Inner wall" +msgstr "內牆" + +msgid "Outer wall" +msgstr "外牆" + +msgid "Overhang wall" +msgstr "懸空牆" + +msgid "Sparse infill" +msgstr "稀疏填充" + +msgid "Internal solid infill" +msgstr "內部實心填充" + +msgid "Top surface" +msgstr "頂面" + +msgid "Bottom surface" +msgstr "底面" + +#, fuzzy +msgid "Internal Bridge" +msgstr "內部橋接" + +msgid "Gap infill" +msgstr "填縫" + +msgid "Support interface" +msgstr "支撐面" + +msgid "Support transition" +msgstr "支撐轉換層" + +msgid "Multiple" +msgstr "多個" + +#, boost-format +msgid "Failed to calculate line width of %1%. Can not get value of \"%2%\" " +msgstr "計算 %1% 的線寬失敗。無法獲得 \"%2%\" 的值" + +msgid "" +"Invalid spacing supplied to Flow::with_spacing(), check your layer height " +"and extrusion width" +msgstr "提供給 Flow::with_spacing() 的間距無效,請檢查層高和擠出寬度" + +msgid "undefined error" +msgstr "未定義的錯誤" + +msgid "too many files" +msgstr "檔案過多" + +msgid "file too large" +msgstr "檔案太大" + +msgid "unsupported method" +msgstr "不支援的壓縮方法" + +msgid "unsupported encryption" +msgstr "不支援的加密方式" + +msgid "unsupported feature" +msgstr "不支援的功能" + +msgid "failed finding central directory" +msgstr "找不到主目錄" + +msgid "not a ZIP archive" +msgstr "不是一個 zip 壓縮檔" + +msgid "invalid header or corrupted" +msgstr "無效檔案頭或檔案已損壞" + +msgid "unsupported multidisk" +msgstr "不支援多磁碟儲存" + +msgid "decompression failed" +msgstr "解壓縮失敗或存檔已損壞" + +msgid "compression failed" +msgstr "壓縮失敗" + +msgid "unexpected decompressed size" +msgstr "意外的解壓縮大小" + +msgid "CRC check failed" +msgstr "CRC 檢查失敗" + +msgid "unsupported central directory size" +msgstr "不支援的主目錄容量" + +msgid "allocation failed" +msgstr "分配記憶體失敗" + +msgid "file open failed" +msgstr "檔案開啟失敗" + +msgid "file create failed" +msgstr "檔案建立失敗" + +msgid "file write failed" +msgstr "檔案寫入失敗" + +msgid "file read failed" +msgstr "檔案讀取失敗" + +msgid "file close failed" +msgstr "檔案關閉失敗" + +msgid "file seek failed" +msgstr "檔案隨機存取失敗" + +msgid "file stat failed" +msgstr "檔案統計資訊失敗" + +msgid "invalid parameter" +msgstr "無效參數" + +msgid "invalid filename" +msgstr "無效的檔案名" + +msgid "buffer too small" +msgstr "緩衝區太小" + +msgid "internal error" +msgstr "內部錯誤" + +msgid "file not found" +msgstr "檔案未找到" + +msgid "archive too large" +msgstr "存檔檔案太大" + +msgid "validation failed" +msgstr "驗證失敗" + +msgid "write callback failed" +msgstr "寫入回調失敗" + +#, fuzzy, boost-format +msgid "" +"%1% is too close to exclusion area, there may be collisions when printing." +msgstr "%1% 離不可列印區域太近,可能會發生碰撞。" + +#, fuzzy, boost-format +msgid "%1% is too close to others, and collisions may be caused." +msgstr "%1% 離其它物件太近,可能會發生碰撞。" + +#, boost-format +msgid "%1% is too tall, and collisions will be caused." +msgstr "%1% 太高,會發生碰撞。" + +msgid " is too close to others, there may be collisions when printing." +msgstr "離其它物件太近,列印時可能會發生碰撞。" + +msgid " is too close to exclusion area, there may be collisions when printing." +msgstr "離不可列印區域太近,列印時可能會發生碰撞。" + +msgid "Prime Tower" +msgstr "擦拭塔" + +msgid " is too close to others, and collisions may be caused.\n" +msgstr "離其它物件太近,可能會發生碰撞。\n" + +msgid " is too close to exclusion area, and collisions will be caused.\n" +msgstr "離不可列印區域太近,會發生碰撞。\n" + +msgid "" +"Can not print multiple filaments which have large difference of temperature " +"together. Otherwise, the extruder and nozzle may be blocked or damaged " +"during printing" +msgstr "" +"不能將溫度差異過大的線材一起列印。否則擠出機和噴嘴在列印中可能被堵塞或損壞" + +msgid "No extrusions under current settings." +msgstr "根據目前設定,不會進行任何列印。" + +msgid "" +"Smooth mode of timelapse is not supported when \"by object\" sequence is " +"enabled." +msgstr "平滑模式的縮時錄影不支援在逐件列印模式下使用。" + +msgid "" +"Please select \"By object\" print sequence to print multiple objects in " +"spiral vase mode." +msgstr "請選擇逐件列印以支援在花瓶模式下列印多個物件。" + +msgid "" +"The spiral vase mode does not work when an object contains more than one " +"materials." +msgstr "不支援在包含多個線材的列印中使用花瓶模式。" + +#, boost-format +msgid "The object %1% exceeds the maximum build volume height." +msgstr "物件 %1% 超出了最大體積高度。" + +#, boost-format +msgid "" +"While the object %1% itself fits the build volume, its last layer exceeds " +"the maximum build volume height." +msgstr "雖然物件 %1% 本身符合列印體積,但最後一層超出了最大列印體積高度。" + +msgid "" +"You might want to reduce the size of your model or change current print " +"settings and retry." +msgstr "您可能想要減小模型的尺寸或更改目前的列印設定並重試。" + +#, fuzzy +msgid "Variable layer height is not supported with Organic supports." +msgstr "有機樹支撐不支持可變層高。" + +msgid "" +"Different nozzle diameters and different filament diameters is not allowed " +"when prime tower is enabled." +msgstr "" + +msgid "" +"The Wipe Tower is currently only supported with the relative extruder " +"addressing (use_relative_e_distances=1)." +msgstr "擦拭塔目前僅支援相對擠出機定址 (use_relative_e_distances=1)。" + +msgid "" +"Ooze prevention is currently not supported with the prime tower enabled." +msgstr "" + +msgid "" +"The prime tower is currently only supported for the Marlin, RepRap/Sprinter, " +"RepRapFirmware and Repetier G-code flavors." +msgstr "" + +#, fuzzy +msgid "The prime tower is not supported in \"By object\" print." +msgstr "逐件列印模式下無法使用擦拭塔。" + +#, fuzzy +msgid "" +"The prime tower is not supported when adaptive layer height is on. It " +"requires that all objects have the same layer height." +msgstr "可變層高開啟時無法使用擦拭塔。它要求所有物件擁有相同的層高。" + +msgid "The prime tower requires \"support gap\" to be multiple of layer height" +msgstr "擦拭塔要求”支撐間隙“為層高的整數倍數。" + +msgid "The prime tower requires that all objects have the same layer heights" +msgstr "擦拭塔要求各個物件擁有同樣的層高。" + +msgid "" +"The prime tower requires that all objects are printed over the same number " +"of raft layers" +msgstr "擦拭塔要求各個物件使用同樣的筏層數量。" + +msgid "" +"The prime tower requires that all objects are sliced with the same layer " +"heights." +msgstr "擦拭塔要求各個物件擁有同樣的層高。" + +#, fuzzy +msgid "" +"The prime tower is only supported if all objects have the same variable " +"layer height" +msgstr "各個物件的層高存在差異,無法啟用擦拭塔" + +msgid "Too small line width" +msgstr "線寬太小" + +msgid "Too large line width" +msgstr "線寬太大" + +msgid "" +"The prime tower requires that support has the same layer height with object." +msgstr "擦拭塔要求支撐和物件採用同樣的層高。" + +#, fuzzy +msgid "" +"Organic support tree tip diameter must not be smaller than support material " +"extrusion width." +msgstr "有機樹狀支撐尖端直徑不得小於支撐材料擠出寬度。" + +msgid "" +"Organic support branch diameter must not be smaller than 2x support material " +"extrusion width." +msgstr "有機樹狀支撐分支直徑不得小於支撐材料擠出寬度的 2 倍。" + +msgid "" +"Organic support branch diameter must not be smaller than support tree tip " +"diameter." +msgstr "有機樹狀支撐枝直徑不得小於支撐樹梢直徑。" + +#, fuzzy +msgid "" +"Support enforcers are used but support is not enabled. Please enable support." +msgstr "使用支撐添加器但沒有打開支撐。請打開支撐。" + +msgid "Layer height cannot exceed nozzle diameter" +msgstr "層高不能超過噴嘴直徑" + +#, fuzzy +msgid "" +"Relative extruder addressing requires resetting the extruder position at " +"each layer to prevent loss of floating point accuracy. Add \"G92 E0\" to " +"layer_gcode." +msgstr "" +"相對擠出機尋址需要重置每層的擠出機位置,以防止浮點精度損失。 將 \"G92 E0\" 加" +"入到 layer_gcode。" + +msgid "" +"\"G92 E0\" was found in before_layer_gcode, which is incompatible with " +"absolute extruder addressing." +msgstr "" +"在 before_layer_gcode 中發現 \"G92 E0\",該程式碼與絕對擠出機尋址不相容。" + +msgid "" +"\"G92 E0\" was found in layer_gcode, which is incompatible with absolute " +"extruder addressing." +msgstr "在 layer_gcode 中發現 \"G92 E0\",它與絕對擠出機尋址不相容。" + +#, fuzzy, c-format, boost-format +msgid "Plate %d: %s does not support filament %s" +msgstr "列印板 %d:%s 不支援線材 %s" + +msgid "" +"Setting the jerk speed too low could lead to artifacts on curved surfaces" +msgstr "" + +msgid "" +"The jerk setting exceeds the printer's maximum jerk (machine_max_jerk_x/" +"machine_max_jerk_y).\n" +"Orca will automatically cap the jerk speed to ensure it doesn't surpass the " +"printer's capabilities.\n" +"You can adjust the maximum jerk setting in your printer's configuration to " +"get higher speeds." +msgstr "" + +msgid "" +"The acceleration setting exceeds the printer's maximum acceleration " +"(machine_max_acceleration_extruding).\n" +"Orca will automatically cap the acceleration speed to ensure it doesn't " +"surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_extruding value in your " +"printer's configuration to get higher speeds." +msgstr "" + +msgid "" +"The travel acceleration setting exceeds the printer's maximum travel " +"acceleration (machine_max_acceleration_travel).\n" +"Orca will automatically cap the travel acceleration speed to ensure it " +"doesn't surpass the printer's capabilities.\n" +"You can adjust the machine_max_acceleration_travel value in your printer's " +"configuration to get higher speeds." +msgstr "" + +#, fuzzy +msgid "Generating skirt & brim" +msgstr "正在產生 skirt 和 brim(裙邊)" + +msgid "Exporting G-code" +msgstr "正在匯出 G-code" + +msgid "Generating G-code" +msgstr "正在產生 G-code" + +#, fuzzy +msgid "Failed processing of the filename_format template." +msgstr "處理檔案名稱格式範本失敗。" + +msgid "Printable area" +msgstr "可列印區域" + +msgid "Bed exclude area" +msgstr "不可列印區域" + +#, fuzzy +msgid "" +"Unprintable area in XY plane. For example, X1 Series printers use the front " +"left corner to cut filament during filament change. The area is expressed as " +"polygon by points in following format: \"XxY, XxY, ...\"" +msgstr "" +"XY 平面上的不可列印區域。例如,X1系列設備在換料過程中,會使用左前角區域來切斷" +"線材。這個多邊形區域由以下格式的點表示:“XxY,XxY,…”" + +#, fuzzy +msgid "Bed custom texture" +msgstr "自訂列印板紋理" + +#, fuzzy +msgid "Bed custom model" +msgstr "自訂列印板模型" + +msgid "Elephant foot compensation" +msgstr "象腳補償" + +msgid "" +"Shrink the initial layer on build plate to compensate for elephant foot " +"effect" +msgstr "將首層收縮用於補償象腳效應" + +msgid "Elephant foot compensation layers" +msgstr "象腳補償層數" + +msgid "" +"The number of layers on which the elephant foot compensation will be active. " +"The first layer will be shrunk by the elephant foot compensation value, then " +"the next layers will be linearly shrunk less, up to the layer indicated by " +"this value." +msgstr "" +"象腳補償將處於活動狀態的層數。 第一層將縮小象腳補償值,然後接下來的層將線性縮" +"小,直到該值指示的層。" + +msgid "layers" +msgstr "層" + +msgid "" +"Slicing height for each layer. Smaller layer height means more accurate and " +"more printing time" +msgstr "每一層的切片高度。越小的層高意味著更高的精度和更長的列印時間。" + +msgid "Printable height" +msgstr "可列印高度" + +#, fuzzy +msgid "Maximum printable height which is limited by mechanism of printer" +msgstr "最大可列印高度受列印設備硬體限制" + +msgid "Preferred orientation" +msgstr "" + +msgid "Automatically orient stls on the Z-axis upon initial import" +msgstr "" + +#, fuzzy +msgid "Printer preset names" +msgstr "列印設備預設名稱" + +msgid "Use 3rd-party print host" +msgstr "" + +msgid "Allow controlling BambuLab's printer through 3rd party print hosts" +msgstr "" + +msgid "Hostname, IP or URL" +msgstr "主機名,IP 或者 URL" + +#, fuzzy +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the hostname, IP address or URL of the printer host instance. Print " +"host behind HAProxy with basic auth enabled can be accessed by putting the " +"user name and password into the URL in the following format: https://" +"username:password@your-octopi-address/" +msgstr "" +"Snapmaker Orca 可以將 G-code 檔案上傳到列印設備。此欄位應包含列印設備的主機名、" +"IP 位址或 URL。啟用基本身份驗證的列印設備可以透過將使用者名稱和密碼放入以下格" +"式的URL中來訪問:https://username:password@your-octopi-address/" + +msgid "Device UI" +msgstr "設備使用者界面" + +#, fuzzy +msgid "" +"Specify the URL of your device user interface if it's not same as print_host" +msgstr "如果列印設備的使用者界面 URL 不同,請在此指定。" + +msgid "API Key / Password" +msgstr "API Key / 密碼" + +#, fuzzy +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field should " +"contain the API Key or the password required for authentication." +msgstr "" +"Snapmaker Orca 可以將 G-code 檔案上傳到列印設備。此欄位應包含用於身份驗證的 API " +"金鑰或密碼。" + +#, fuzzy +msgid "Name of the printer" +msgstr "列印設備名稱" + +msgid "HTTPS CA File" +msgstr "HTTPS CA憑證 檔" + +#, fuzzy +msgid "" +"Custom CA certificate file can be specified for HTTPS OctoPrint connections, " +"in crt/pem format. If left blank, the default OS CA certificate repository " +"is used." +msgstr "" +"可以為 HTTPS OctoPrint 連接指定自訂 CA憑證 檔案,格式為 crt/pem。如果留空,則" +"使用預設的操作系統 CA憑證 儲存庫。" + +msgid "User" +msgstr "使用者名稱" + +msgid "Password" +msgstr "密碼" + +#, fuzzy +msgid "Ignore HTTPS certificate revocation checks" +msgstr "忽略 HTTPS憑證 吊銷檢查" + +#, fuzzy +msgid "" +"Ignore HTTPS certificate revocation checks in case of missing or offline " +"distribution points. One may want to enable this option for self signed " +"certificates if connection fails." +msgstr "" +"在缺少或離線的情況下忽略 HTTPS憑證 吊銷檢查。如果連接失敗,可以啟用此選項來處" +"理自簽名憑證。" + +#, fuzzy +msgid "Names of presets related to the physical printer" +msgstr "與實體列印設備相關的預設名稱" + +msgid "Authorization Type" +msgstr "授權類型" + +msgid "API key" +msgstr "API 金鑰" + +msgid "HTTP digest" +msgstr "HTTP摘要" + +msgid "Avoid crossing wall" +msgstr "避免跨越外牆" + +msgid "Detour and avoid to travel across wall which may cause blob on surface" +msgstr "空駛時繞過外牆以避免在模型外觀表面產生斑點" + +msgid "Avoid crossing wall - Max detour length" +msgstr "避免跨越外牆-最大繞行長度" + +#, fuzzy +msgid "" +"Maximum detour distance for avoiding crossing wall. Don't detour if the " +"detour distance is large than this value. Detour length could be specified " +"either as an absolute value or as percentage (for example 50%) of a direct " +"travel path. Zero to disable" +msgstr "" +"避免跨越外牆時的最大繞行距離。如果繞行距離大於該數值,則空駛不繞行。繞行距離" +"可指定為絕對值或直接空駛路徑的百分比(例如 50%)。0 表示禁用" + +msgid "mm or %" +msgstr "mm 或 %" + +msgid "Other layers" +msgstr "其它層" + +#, fuzzy +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Cool Plate" +msgstr "除首層外的床溫。0 值表示這個線材不支援低溫列印板" + +msgid "°C" +msgstr "°C" + +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured Cool Plate" +msgstr "" + +#, fuzzy +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Engineering Plate" +msgstr "除首層外的熱床溫度。0 值表示這個線材不支援工程高溫列印板" + +#, fuzzy +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the High Temp Plate" +msgstr "除首層外的熱床溫度。0 值表示這個線材不支援高溫列印板" + +#, fuzzy +msgid "" +"Bed temperature for layers except the initial one. Value 0 means the " +"filament does not support to print on the Textured PEI Plate" +msgstr "除首層外的熱床溫度。0 值表示這個線材不支援金屬紋理 PEI 列印板" + +msgid "Initial layer" +msgstr "首層" + +msgid "Initial layer bed temperature" +msgstr "首層床溫" + +#, fuzzy +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Cool Plate" +msgstr "首層熱床溫度。0 值表示這個線材不支援低溫列印板" + +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured Cool Plate" +msgstr "" + +#, fuzzy +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Engineering Plate" +msgstr "首層熱床溫度。0 值表示這個線材不支援工程高溫列印板" + +#, fuzzy +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the High Temp Plate" +msgstr "首層熱床溫度。0 值表示這個線材不支援高溫列印板" + +#, fuzzy +msgid "" +"Bed temperature of the initial layer. Value 0 means the filament does not " +"support to print on the Textured PEI Plate" +msgstr "首層熱床溫度。0 值表示這個線材不支援金屬紋理 PEI 列印板" + +#, fuzzy +msgid "Bed types supported by the printer" +msgstr "列印設備所支援的列印板類型" + +msgid "Smooth Cool Plate" +msgstr "" + +#, fuzzy +msgid "Engineering Plate" +msgstr "工程高溫列印板" + +msgid "Smooth High Temp Plate" +msgstr "" + +msgid "Textured Cool Plate" +msgstr "" + +msgid "First layer print sequence" +msgstr "首層列印順序" + +msgid "Other layers print sequence" +msgstr "" + +msgid "The number of other layers print sequence" +msgstr "" + +msgid "Other layers filament sequence" +msgstr "" + +msgid "This G-code is inserted at every layer change before lifting z" +msgstr "在每次換層抬升z高度之前插入這段 G-code" + +msgid "Bottom shell layers" +msgstr "底部殼體層數" + +msgid "" +"This is the number of solid layers of bottom shell, including the bottom " +"surface layer. When the thickness calculated by this value is thinner than " +"bottom shell thickness, the bottom shell layers will be increased" +msgstr "" +"底部殼體實心層層數,包括底面。當由該層數計算的厚度小於底部殼體厚度,切片時會" +"增加底部殼體的層數" + +msgid "Bottom shell thickness" +msgstr "底部殼體厚度" + +#, fuzzy +msgid "" +"The number of bottom solid layers is increased when slicing if the thickness " +"calculated by bottom shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of bottom shell is absolutely determained by " +"bottom shell layers" +msgstr "" +"如果由底部殼體層數算出的厚度小於這個數值,那麼切片時將自動增加底部殼體層數。" +"這能夠避免當層高很小時,底部殼體過薄。0 表示關閉這個設定,同時底部殼體的厚度" +"完全由底部殼體層數決定" + +msgid "Apply gap fill" +msgstr "" + +msgid "" +"Enables gap fill for the selected surfaces. The minimum gap length that will " +"be filled can be controlled from the filter out tiny gaps option below.\n" +"\n" +"Options:\n" +"1. Everywhere: Applies gap fill to top, bottom and internal solid surfaces\n" +"2. Top and Bottom surfaces: Applies gap fill to top and bottom surfaces " +"only\n" +"3. Nowhere: Disables gap fill\n" +msgstr "" + +msgid "Everywhere" +msgstr "全部" + +msgid "Top and bottom surfaces" +msgstr "" + +msgid "Nowhere" +msgstr "" + +#, fuzzy +msgid "Force cooling for overhang and bridge" +msgstr "懸空/橋接強制冷卻" + +#, fuzzy +msgid "" +"Enable this option to optimize part cooling fan speed for overhang and " +"bridge to get better cooling" +msgstr "勾選這個選項將自動最佳化橋接和懸空的風扇轉速以獲得更好的冷卻" + +#, fuzzy +msgid "Fan speed for overhang" +msgstr "懸空風扇速度" + +#, fuzzy +msgid "" +"Force part cooling fan to be this speed when printing bridge or overhang " +"wall which has large overhang degree. Forcing cooling for overhang and " +"bridge can get better quality for these part" +msgstr "" +"當列印橋接和超過臨界值設定的懸空時,強制部件冷卻風扇為設定的速度數值。強制冷" +"卻能夠使懸空和橋接獲得更好的列印品質" + +msgid "Cooling overhang threshold" +msgstr "冷卻懸空臨界值" + +#, c-format +msgid "" +"Force cooling fan to be specific speed when overhang degree of printed part " +"exceeds this value. Expressed as percentage which indicides how much width " +"of the line without support from lower layer. 0% means forcing cooling for " +"all outer wall no matter how much overhang degree" +msgstr "" + +#, fuzzy +msgid "Bridge infill direction" +msgstr "橋接填充角度" + +#, fuzzy +msgid "" +"Bridging angle override. If left to zero, the bridging angle will be " +"calculated automatically. Otherwise the provided angle will be used for " +"external bridges. Use 180°for zero angle." +msgstr "" +"橋接角度覆蓋。如果為零,該角度將自動計算。否則外部的橋接將用提供的值。180° 表" +"示 0 度。" + +#, fuzzy +msgid "Bridge density" +msgstr "橋接密度" + +#, fuzzy +msgid "Density of external bridges. 100% means solid bridge. Default is 100%." +msgstr "外部橋接的密度。 100% 意味著堅固的橋樑。 預設值為 100%。" + +msgid "Bridge flow ratio" +msgstr "橋接流量" + +#, fuzzy +msgid "" +"Decrease this value slightly(for example 0.9) to reduce the amount of " +"material for bridge, to improve sag" +msgstr "稍微減小這個數值(比如 0.9)可以減小橋接的線材量,來改善下垂。" + +msgid "Internal bridge flow ratio" +msgstr "" + +msgid "" +"This value governs the thickness of the internal bridge layer. This is the " +"first layer over sparse infill. Decrease this value slightly (for example " +"0.9) to improve surface quality over sparse infill." +msgstr "" + +msgid "Top surface flow ratio" +msgstr "頂部表面流量比例" + +#, fuzzy +msgid "" +"This factor affects the amount of material for top solid infill. You can " +"decrease it slightly to have smooth surface finish" +msgstr "稍微減小這個數值(比如 0.97)可以來改善頂面的光滑程度。" + +msgid "Bottom surface flow ratio" +msgstr "底部表面流量比例" + +#, fuzzy +msgid "This factor affects the amount of material for bottom solid infill" +msgstr "首層流量調整係數,預設為 1.0" + +#, fuzzy +msgid "Precise wall" +msgstr "精準外牆尺寸" + +msgid "" +"Improve shell precision by adjusting outer wall spacing. This also improves " +"layer consistency.\n" +"Note: This setting will only take effect if the wall sequence is configured " +"to Inner-Outer" +msgstr "" + +msgid "Only one wall on top surfaces" +msgstr "頂面單層牆" + +msgid "" +"Use only one wall on flat top surface, to give more space to the top infill " +"pattern" +msgstr "頂面只使用單層牆,從而更多的空間能夠使用頂部填充圖案" + +msgid "One wall threshold" +msgstr "單層牆臨界值" + +#, no-c-format, no-boost-format +msgid "" +"If a top surface has to be printed and it's partially covered by another " +"layer, it won't be considered at a top layer where its width is below this " +"value. This can be useful to not let the 'one perimeter on top' trigger on " +"surface that should be covered only by perimeters. This value can be a mm or " +"a % of the perimeter extrusion width.\n" +"Warning: If enabled, artifacts can be created if you have some thin features " +"on the next layer, like letters. Set this setting to 0 to remove these " +"artifacts." +msgstr "" +"如果頂面需要列印,但是它的一部分被其它層覆蓋,那麼當它的寬度小於這個值時,它" +"不會被認為是頂層。這個設定可以用於避免在狹窄頂面上觸發“頂面單層牆”。這個值可" +"以是 mm 或線寬的 %。\n" +"警告:如果啟用該選項,可能會在下一層上產生一些薄的特徵,比如字母。將此設定設" +"為 0 可以消除這些偽影。" + +msgid "Only one wall on first layer" +msgstr "首層僅單層牆" + +msgid "" +"Use only one wall on first layer, to give more space to the bottom infill " +"pattern" +msgstr "首層只使用單層牆,從而更多的空間能夠使用底部填充圖案" + +msgid "Extra perimeters on overhangs" +msgstr "懸空上的額外周長" + +msgid "" +"Create additional perimeter paths over steep overhangs and areas where " +"bridges cannot be anchored. " +msgstr "在陡峭的懸空和無法固定橋接的區域中增加額外的周長路徑。" + +#, fuzzy +msgid "Reverse on odd" +msgstr "反轉奇數層懸空方向" + +#, fuzzy +msgid "Overhang reversal" +msgstr "懸空反轉" + +msgid "" +"Extrude perimeters that have a part over an overhang in the reverse " +"direction on odd layers. This alternating pattern can drastically improve " +"steep overhangs.\n" +"\n" +"This setting can also help reduce part warping due to the reduction of " +"stresses in the part walls." +msgstr "" + +msgid "Reverse only internal perimeters" +msgstr "" + +msgid "" +"Apply the reverse perimeters logic only on internal perimeters. \n" +"\n" +"This setting greatly reduces part stresses as they are now distributed in " +"alternating directions. This should reduce part warping while also " +"maintaining external wall quality. This feature can be very useful for warp " +"prone material, like ABS/ASA, and also for elastic filaments, like TPU and " +"Silk PLA. It can also help reduce warping on floating regions over " +"supports.\n" +"\n" +"For this setting to be the most effective, it is recomended to set the " +"Reverse Threshold to 0 so that all internal walls print in alternating " +"directions on odd layers irrespective of their overhang degree." +msgstr "" + +msgid "Bridge counterbore holes" +msgstr "" + +msgid "" +"This option creates bridges for counterbore holes, allowing them to be " +"printed without support. Available modes include:\n" +"1. None: No bridge is created.\n" +"2. Partially Bridged: Only a part of the unsupported area will be bridged.\n" +"3. Sacrificial Layer: A full sacrificial bridge layer is created." +msgstr "" + +msgid "Partially bridged" +msgstr "" + +msgid "Sacrificial layer" +msgstr "" + +msgid "Reverse threshold" +msgstr "反轉臨界值" + +msgid "Overhang reversal threshold" +msgstr "懸空反轉臨界值" + +#, no-c-format, no-boost-format +msgid "" +"Number of mm the overhang need to be for the reversal to be considered " +"useful. Can be a % of the perimeter width.\n" +"Value 0 enables reversal on every odd layers regardless." +msgstr "" +"判定懸空反轉需要的值(mm),可以是線寬的百分比。\n" +" 0 值則會在每個奇數層上啟用反向。" + +msgid "Classic mode" +msgstr "經典模式" + +msgid "Enable this option to use classic mode" +msgstr "開啟此選項以使用經典模式" + +#, fuzzy +msgid "Slow down for overhang" +msgstr "懸空降速" + +msgid "Enable this option to slow printing down for different overhang degree" +msgstr "打開這個選項將降低不同懸垂程度的走線的列印速度" + +#, fuzzy +msgid "Slow down for curled perimeters" +msgstr "翹邊降速" + +msgid "" +"Enable this option to slow printing down in areas where potential curled " +"perimeters may exist" +msgstr "啟用此選項降低可能存在潛在翹邊區域的列印速度" + +msgid "mm/s or %" +msgstr "mm/s 或 %" + +#, fuzzy +msgid "External" +msgstr "外部" + +msgid "Speed of bridge and completely overhang wall" +msgstr "橋接和完全懸空的外牆的列印速度" + +msgid "mm/s" +msgstr "mm/s" + +#, fuzzy +msgid "Internal" +msgstr "內部" + +msgid "" +"Speed of internal bridge. If the value is expressed as a percentage, it will " +"be calculated based on the bridge_speed. Default value is 150%." +msgstr "" +"內部橋接速度。 如果該值以百分比表示,則會根據 橋接速度 進行計算。 預設值為 " +"150%" + +#, fuzzy +msgid "Brim width" +msgstr "Brim(裙邊) 寬度" + +#, fuzzy +msgid "Distance from model to the outermost brim line" +msgstr "從模型到最外圈 brim(裙邊) 走線的距離" + +#, fuzzy +msgid "Brim type" +msgstr "Brim(裙邊) 類型" + +#, fuzzy +msgid "" +"This controls the generation of the brim at outer and/or inner side of " +"models. Auto means the brim width is analysed and calculated automatically." +msgstr "" +"該參數控制在模型的外側和/或內側產生 brim(裙邊)。自動是指自動分析和計算邊框" +"的寬度。" + +#, fuzzy +msgid "Brim-object gap" +msgstr "Brim(裙邊) 與模型的間隙" + +#, fuzzy +msgid "" +"A gap between innermost brim line and object can make brim be removed more " +"easily" +msgstr "在 brim(裙邊)和模型之間設定間隙,能夠讓 brim(裙邊)更容易剝離" + +msgid "Brim ears" +msgstr "圓盤" + +#, fuzzy +msgid "Only draw brim over the sharp edges of the model." +msgstr "僅在模型的鋒利邊緣上產生Brim(裙邊)。" + +msgid "Brim ear max angle" +msgstr "圓盤最大角度" + +#, fuzzy +msgid "" +"Maximum angle to let a brim ear appear. \n" +"If set to 0, no brim will be created. \n" +"If set to ~180, brim will be created on everything but straight sections." +msgstr "" +"讓圓盤出現的最大角度。\n" +"如果設定為 0,則不會建立圓盤。\n" +"設定越趨近 180,除直線部分外,其他部分都會建立圓盤。" + +msgid "Brim ear detection radius" +msgstr "圓盤偵測半徑" + +msgid "" +"The geometry will be decimated before dectecting sharp angles. This " +"parameter indicates the minimum length of the deviation for the decimation.\n" +"0 to deactivate" +msgstr "" +"在偵測尖銳角度之前,幾何形狀將被簡化。此參數表示簡化的最小偏差長度。\n" +"設為 0 以停用" + +#, fuzzy +msgid "Compatible machine" +msgstr "相容的設備" + +#, fuzzy +msgid "upward compatible machine" +msgstr "向上相容的設備" + +#, fuzzy +msgid "Compatible machine condition" +msgstr "相容的設備條件" + +#, fuzzy +msgid "Compatible process profiles" +msgstr "相容的切片設定" + +#, fuzzy +msgid "Compatible process profiles condition" +msgstr "相容的切片設定條件" + +msgid "Print sequence, layer by layer or object by object" +msgstr "列印順序,逐層列印或者逐件列印" + +msgid "By layer" +msgstr "逐層" + +msgid "By object" +msgstr "逐件" + +msgid "Intra-layer order" +msgstr "" + +msgid "Print order within a single layer" +msgstr "" + +msgid "As object list" +msgstr "" + +msgid "Slow printing down for better layer cooling" +msgstr "降低列印速度 以得到更好的冷卻" + +msgid "" +"Enable this option to slow printing speed down to make the final layer time " +"not shorter than the layer time threshold in \"Max fan speed threshold\", so " +"that layer can be cooled for longer time. This can improve the cooling " +"quality for needle and small details" +msgstr "" +"勾選這個選項,將降低列印速度,使得最終的層列印時間不小於\"最大風扇速度臨界值" +"\"裡的層時間臨界值,從而使得該層獲得更久的冷卻。這能夠改善尖頂和小細節的冷卻" +"效果" + +msgid "Normal printing" +msgstr "普通列印" + +msgid "" +"The default acceleration of both normal printing and travel except initial " +"layer" +msgstr "除首層之外的預設的列印和空駛的加速度" + +msgid "mm/s²" +msgstr "mm/s²" + +#, fuzzy +msgid "Default filament profile" +msgstr "預設線材設定檔" + +#, fuzzy +msgid "Default filament profile when switch to this machine profile" +msgstr "切換設備自動更換預設線材設定檔" + +#, fuzzy +msgid "Default process profile" +msgstr "預設切片設定檔" + +#, fuzzy +msgid "Default process profile when switch to this machine profile" +msgstr "切換設備自動更換預設切片設定檔" + +#, fuzzy +msgid "Activate air filtration" +msgstr "開啟空氣過濾器/排風扇" + +#, fuzzy +msgid "Activate for better air filtration. G-code command: M106 P3 S(0-255)" +msgstr "啟動空氣過濾器/排風扇。 G-code 指令:M106 P3 S(0-255)" + +msgid "Fan speed" +msgstr "風扇速度" + +#, fuzzy +msgid "" +"Speed of exhaust fan during printing.This speed will overwrite the speed in " +"filament custom gcode" +msgstr "列印過程中排風扇的速度。此速度將覆蓋線材自訂 G-code 中的速度" + +msgid "Speed of exhaust fan after printing completes" +msgstr "列印完成後排風扇的轉速" + +#, fuzzy +msgid "No cooling for the first" +msgstr "對前N層關閉部件風扇" + +#, fuzzy +msgid "" +"Close all cooling fan for the first certain layers. Cooling fan of the first " +"layer used to be closed to get better build plate adhesion" +msgstr "" +"對開始的一些層關閉所有的部件冷卻風扇。通常關閉首層冷卻用來獲得更好的首層黏附" + +msgid "Don't support bridges" +msgstr "不支撐橋接" + +#, fuzzy +msgid "" +"Don't support the whole bridge area which make support very large. Bridge " +"usually can be printing directly without support if not very long" +msgstr "" +"不對整個橋接面進行支撐,否則支撐體會很大。不是很長的橋接通常可以無支撐直接列" +"印。" + +msgid "Thick bridges" +msgstr "厚橋" + +msgid "" +"If enabled, bridges are more reliable, can bridge longer distances, but may " +"look worse. If disabled, bridges look better but are reliable just for " +"shorter bridged distances." +msgstr "" +"如果啟用,橋接會更可靠,可以橋接更長的距離,但可能看起來更糟。如果關閉,橋梁" +"看起來更好,但只適用於較短的橋接距離。" + +msgid "Thick internal bridges" +msgstr "" + +msgid "" +"If enabled, thick internal bridges will be used. It's usually recommended to " +"have this feature turned on. However, consider turning it off if you are " +"using large nozzles." +msgstr "" + +msgid "Don't filter out small internal bridges (beta)" +msgstr "" + +msgid "" +"This option can help reducing pillowing on top surfaces in heavily slanted " +"or curved models.\n" +"\n" +"By default, small internal bridges are filtered out and the internal solid " +"infill is printed directly over the sparse infill. This works well in most " +"cases, speeding up printing without too much compromise on top surface " +"quality. \n" +"\n" +"However, in heavily slanted or curved models especially where too low sparse " +"infill density is used, this may result in curling of the unsupported solid " +"infill, causing pillowing.\n" +"\n" +"Enabling this option will print internal bridge layer over slightly " +"unsupported internal solid infill. The options below control the amount of " +"filtering, i.e. the amount of internal bridges created.\n" +"\n" +"Disabled - Disables this option. This is the default behaviour and works " +"well in most cases.\n" +"\n" +"Limited filtering - Creates internal bridges on heavily slanted surfaces, " +"while avoiding creating uncessesary interal bridges. This works well for " +"most difficult models.\n" +"\n" +"No filtering - Creates internal bridges on every potential internal " +"overhang. This option is useful for heavily slanted top surface models. " +"However, in most cases it creates too many unecessary bridges." +msgstr "" + +msgid "Disabled" +msgstr "停用" + +msgid "Limited filtering" +msgstr "" + +msgid "No filtering" +msgstr "" + +msgid "Max bridge length" +msgstr "最大橋接長度" + +#, fuzzy +msgid "" +"Max length of bridges that don't need support. Set it to 0 if you want all " +"bridges to be supported, and set it to a very large value if you don't want " +"any bridges to be supported." +msgstr "" +"不需要支撐的橋接的最大長度。如果希望支援所有橋接,請將其設定為 0;如果不希望" +"支援任何橋接,請將其設定為非常大的值。" + +#, fuzzy +msgid "End G-code" +msgstr "結尾 G-code" + +#, fuzzy +msgid "End G-code when finish the whole printing" +msgstr "所有列印結束時的結尾 G-code" + +msgid "Between Object Gcode" +msgstr "" + +msgid "" +"Insert Gcode between objects. This parameter will only come into effect when " +"you print your models object by object" +msgstr "" + +#, fuzzy +msgid "End G-code when finish the printing of this filament" +msgstr "結束使用該耗材列印時的結尾 G-code" + +msgid "Ensure vertical shell thickness" +msgstr "確保垂直外殼厚度" + +msgid "" +"Add solid infill near sloping surfaces to guarantee the vertical shell " +"thickness (top+bottom solid layers)\n" +"None: No solid infill will be added anywhere. Caution: Use this option " +"carefully if your model has sloped surfaces\n" +"Critical Only: Avoid adding solid infill for walls\n" +"Moderate: Add solid infill for heavily sloping surfaces only\n" +"All: Add solid infill for all suitable sloping surfaces\n" +"Default value is All." +msgstr "" + +msgid "Critical Only" +msgstr "" + +msgid "Moderate" +msgstr "" + +msgid "Top surface pattern" +msgstr "頂面圖案" + +msgid "Line pattern of top surface infill" +msgstr "頂面填充的走線圖案" + +msgid "Concentric" +msgstr "同心" + +msgid "Rectilinear" +msgstr "直線" + +msgid "Monotonic" +msgstr "單調" + +msgid "Monotonic line" +msgstr "單調線" + +msgid "Aligned Rectilinear" +msgstr "直線排列" + +msgid "Hilbert Curve" +msgstr "希爾伯特曲線" + +msgid "Archimedean Chords" +msgstr "阿基米德和弦" + +msgid "Octagram Spiral" +msgstr "八角螺旋" + +msgid "Bottom surface pattern" +msgstr "底面圖案" + +msgid "Line pattern of bottom surface infill, not bridge infill" +msgstr "除了橋接外的底面填充的走線圖案" + +msgid "Internal solid infill pattern" +msgstr "內部實心填充圖案" + +msgid "" +"Line pattern of internal solid infill. if the detect narrow internal solid " +"infill be enabled, the concentric pattern will be used for the small area." +msgstr "" +"內部實心填充的線型圖案。如果啟用了偵測狹窄的內部實心填充,將使用同心圓圖案來" +"填充小區域。" + +msgid "" +"Line width of outer wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "外牆的線寬。如果以 % 表示,將以噴嘴直徑為基準來計算" + +#, fuzzy +msgid "" +"Speed of outer wall which is outermost and visible. It's used to be slower " +"than inner wall speed to get better quality." +msgstr "外牆的列印速度。它通常使用比內壁速度慢的速度,以獲得更好的列印品質。" + +msgid "Small perimeters" +msgstr "微小部位" + +msgid "" +"This separate setting will affect the speed of perimeters having radius <= " +"small_perimeter_threshold (usually holes). If expressed as percentage (for " +"example: 80%) it will be calculated on the outer wall speed setting above. " +"Set to zero for auto." +msgstr "" +"這個單獨的設定將影響半徑 <= small_perimeter_threshold(通常是圓孔)的周長的速" +"度。 如果以百分比表示(例如:80%),它將根據上面的外牆速度設定進行計算。 自動" +"設定為零。" + +msgid "Small perimeters threshold" +msgstr "微小部位周長臨界值" + +msgid "" +"This sets the threshold for small perimeter length. Default threshold is 0mm" +msgstr "這設定了微小部位周長的臨界值。 預設臨界值是 0mm" + +msgid "Walls printing order" +msgstr "" + +msgid "" +"Print sequence of the internal (inner) and external (outer) walls. \n" +"\n" +"Use Inner/Outer for best overhangs. This is because the overhanging walls " +"can adhere to a neighouring perimeter while printing. However, this option " +"results in slightly reduced surface quality as the external perimeter is " +"deformed by being squashed to the internal perimeter.\n" +"\n" +"Use Inner/Outer/Inner for the best external surface finish and dimensional " +"accuracy as the external wall is printed undisturbed from an internal " +"perimeter. However, overhang performance will reduce as there is no internal " +"perimeter to print the external wall against. This option requires a minimum " +"of 3 walls to be effective as it prints the internal walls from the 3rd " +"perimeter onwards first, then the external perimeter and, finally, the first " +"internal perimeter. This option is recomended against the Outer/Inner option " +"in most cases. \n" +"\n" +"Use Outer/Inner for the same external wall quality and dimensional accuracy " +"benefits of Inner/Outer/Inner option. However, the z seams will appear less " +"consistent as the first extrusion of a new layer starts on a visible " +"surface.\n" +"\n" +" " +msgstr "" + +msgid "Inner/Outer" +msgstr "" + +msgid "Outer/Inner" +msgstr "" + +msgid "Inner/Outer/Inner" +msgstr "" + +msgid "Print infill first" +msgstr "" + +msgid "" +"Order of wall/infill. When the tickbox is unchecked the walls are printed " +"first, which works best in most cases.\n" +"\n" +"Printing infill first may help with extreme overhangs as the walls have the " +"neighbouring infill to adhere to. However, the infill will slighly push out " +"the printed walls where it is attached to them, resulting in a worse " +"external surface finish. It can also cause the infill to shine through the " +"external surfaces of the part." +msgstr "" + +msgid "Wall loop direction" +msgstr "" + +msgid "" +"The direction which the wall loops are extruded when looking down from the " +"top.\n" +"\n" +"By default all walls are extruded in counter-clockwise, unless Reverse on " +"odd is enabled. Set this to any option other than Auto will force the wall " +"direction regardless of the Reverse on odd.\n" +"\n" +"This option will be disabled if sprial vase mode is enabled." +msgstr "" + +msgid "Counter clockwise" +msgstr "" + +msgid "Clockwise" +msgstr "" + +msgid "Height to rod" +msgstr "到橫杆高度" + +msgid "" +"Distance of the nozzle tip to the lower rod. Used for collision avoidance in " +"by-object printing." +msgstr "噴嘴尖端到下方滑杆的距離。用於在逐件列印中避免碰撞。" + +msgid "Height to lid" +msgstr "到頂蓋高度" + +msgid "" +"Distance of the nozzle tip to the lid. Used for collision avoidance in by-" +"object printing." +msgstr "噴嘴尖端到頂蓋的距離。用於在逐件列印中避免碰撞。" + +msgid "" +"Clearance radius around extruder. Used for collision avoidance in by-object " +"printing." +msgstr "擠出機四周的避讓半徑。用於在逐件列印中避免碰撞。" + +msgid "Nozzle height" +msgstr "" + +msgid "The height of nozzle tip." +msgstr "" + +msgid "Bed mesh min" +msgstr "" + +msgid "" +"This option sets the min point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (-99999, -99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Bed mesh max" +msgstr "" + +msgid "" +"This option sets the max point for the allowed bed mesh area. Due to the " +"probe's XY offset, most printers are unable to probe the entire bed. To " +"ensure the probe point does not go outside the bed area, the minimum and " +"maximum points of the bed mesh should be set appropriately. Snapmaker Orca " +"ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not " +"exceed these min/max points. This information can usually be obtained from " +"your printer manufacturer. The default setting is (99999, 99999), which " +"means there are no limits, thus allowing probing across the entire bed." +msgstr "" + +msgid "Probe point distance" +msgstr "" + +msgid "" +"This option sets the preferred distance between probe points (grid size) for " +"the X and Y directions, with the default being 50mm for both X and Y." +msgstr "" + +msgid "Mesh margin" +msgstr "" + +msgid "" +"This option determines the additional distance by which the adaptive bed " +"mesh area should be expanded in the XY directions." +msgstr "" + +msgid "Extruder Color" +msgstr "擠出機顏色" + +#, fuzzy +msgid "Only used as a visual help on UI" +msgstr "作為使用者介面上的輔助" + +msgid "Extruder offset" +msgstr "擠出機偏移" + +msgid "Flow ratio" +msgstr "流量比例" + +#, fuzzy +msgid "" +"The material may have volumetric change after switching between molten state " +"and crystalline state. This setting changes all extrusion flow of this " +"filament in gcode proportionally. Recommended value range is between 0.95 " +"and 1.05. Maybe you can tune this value to get nice flat surface when there " +"has slight overflow or underflow" +msgstr "" +"線材經過融化後凝固可能會產生體積差異。這個設定會等比例改變所有擠出走線的擠出" +"量。推薦的範圍為 0.95 到 1.05。發現大平層模型的頂面有輕微的缺料或多料時,或許" +"可以嘗試微調這個參數。" + +msgid "Enable pressure advance" +msgstr "啟用壓力提前" + +msgid "" +"Enable pressure advance, auto calibration result will be overwriten once " +"enabled." +msgstr "啟用壓力提前,一旦啟用會覆蓋自動校準的結果" + +#, fuzzy +msgid "Pressure advance(Klipper) AKA Linear advance factor(Marlin)" +msgstr "壓力提前(Klipper)或者線性提前(Marlin)" + +#, fuzzy +msgid "" +"Default line width if other line widths are set to 0. If expressed as a %, " +"it will be computed over the nozzle diameter." +msgstr "" +"當線寬設定為 0 時走線的默認線寬。如果以 % 表示,將以噴嘴直徑為基準來計算。" + +msgid "Keep fan always on" +msgstr "保持風扇永遠開啟" + +#, fuzzy +msgid "" +"If enable this setting, part cooling fan will never be stoped and will run " +"at least at minimum speed to reduce the frequency of starting and stoping" +msgstr "" +"如果勾選這個選項,部件冷卻風扇將永遠不會停止,並且會以最小風扇轉速設定值持運" +"運轉以減少風扇的頻繁開關" + +msgid "Don't slow down outer walls" +msgstr "" + +msgid "" +"If enabled, this setting will ensure external perimeters are not slowed down " +"to meet the minimum layer time. This is particularly helpful in the below " +"scenarios:\n" +"\n" +" 1. To avoid changes in shine when printing glossy filaments \n" +"2. To avoid changes in external wall speed which may create slight wall " +"artefacts that appear like z banding \n" +"3. To avoid printing at speeds which cause VFAs (fine artefacts) on the " +"external walls\n" +"\n" +msgstr "" + +msgid "Layer time" +msgstr "層時間" + +#, fuzzy +msgid "" +"Part cooling fan will be enabled for layers of which estimated time is " +"shorter than this value. Fan speed is interpolated between the minimum and " +"maximum fan speeds according to layer printing time" +msgstr "" +"當層預估列印時間小於該數值時,部件冷卻風扇將會被開啟。風扇轉速將根據層列印時" +"間在最大和最小風扇轉速之間自動調整" + +msgid "Default color" +msgstr "預設顏色" + +msgid "Default filament color" +msgstr "預設線材顏色" + +msgid "Filament notes" +msgstr "線材備註" + +msgid "You can put your notes regarding the filament here." +msgstr "您可以將有關線材的備註存放在這裡。" + +msgid "Required nozzle HRC" +msgstr "噴嘴硬度要求" + +msgid "" +"Minimum HRC of nozzle required to print the filament. Zero means no checking " +"of nozzle's HRC." +msgstr "列印此線材的所需的最小噴嘴硬度。零值表示不檢查噴嘴硬度。" + +#, fuzzy +msgid "" +"This setting stands for how much volume of filament can be melted and " +"extruded per second. Printing speed is limited by max volumetric speed, in " +"case of too high and unreasonable speed setting. Can't be zero" +msgstr "" +"這個設定表示在 1 秒內能夠融化和擠出的線材體積。列印速度會受到最大體積速度的限" +"制,防止設定過高和不合理的速度。不允許設定為 0。" + +msgid "mm³/s" +msgstr "mm³/s" + +msgid "Filament load time" +msgstr "進料的時間" + +msgid "Time to load new filament when switch filament. For statistics only" +msgstr "切換線材時,進料所需的時間。只用於統計資訊。" + +msgid "Filament unload time" +msgstr "退料的時間" + +msgid "Time to unload old filament when switch filament. For statistics only" +msgstr "切換線材時,退料所需時間。只用於統計資訊。" + +msgid "" +"Filament diameter is used to calculate extrusion in gcode, so it's important " +"and should be accurate" +msgstr "線材直徑被用於計算 G-code 檔案中的擠出量。因此很重要,應盡可能精確。" + +msgid "Pellet flow coefficient" +msgstr "" + +msgid "" +"Pellet flow coefficient is emperically derived and allows for volume " +"calculation for pellet printers.\n" +"\n" +"Internally it is converted to filament_diameter. All other volume " +"calculations remain the same.\n" +"\n" +"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )" +msgstr "" + +msgid "Shrinkage" +msgstr "耗材收縮率" + +#, no-c-format, no-boost-format +msgid "" +"Enter the shrinkage percentage that the filament will get after cooling (94% " +"if you measure 94mm instead of 100mm). The part will be scaled in xy to " +"compensate. Only the filament used for the perimeter is taken into account.\n" +"Be sure to allow enough space between objects, as this compensation is done " +"after the checks." +msgstr "" +"冷卻後耗材會收縮的百分比(如果測量的長度是 94mm 而不是 100mm,則為是收縮率為 " +"94%)\n" +"補償將按比例縮放 xy 軸該補償僅考慮牆壁所使用的耗材\n" +"請確保物體之間有足夠的間距,因為補償是在邊界檢查之後進行" + +#, fuzzy +msgid "Loading speed" +msgstr "進料速度" + +msgid "Speed used for loading the filament on the wipe tower." +msgstr "將線材擠出到擦拭塔上的速度。" + +#, fuzzy +msgid "Loading speed at the start" +msgstr "啟動時進料速度" + +#, fuzzy +msgid "Speed used at the very beginning of loading phase." +msgstr "初始進料階段速度。" + +msgid "Unloading speed" +msgstr "退料速度" + +#, fuzzy +msgid "" +"Speed used for unloading the filament on the wipe tower (does not affect " +"initial part of unloading just after ramming)." +msgstr "使用於擦拭塔上退料的速度(不影響尖端成型之後初始部分的速度)。" + +msgid "Unloading speed at the start" +msgstr "退料初始速度" + +#, fuzzy +msgid "" +"Speed used for unloading the tip of the filament immediately after ramming." +msgstr "線材尖端成型後立即退料的速度。" + +msgid "Delay after unloading" +msgstr "退料後延遲" + +msgid "" +"Time to wait after the filament is unloaded. May help to get reliable " +"toolchanges with flexible materials that may need more time to shrink to " +"original dimensions." +msgstr "" +"退料後等待的時間。有助於使用柔性線材(收縮到原始尺寸需更多的時間)以獲得可靠" +"的换色。" + +msgid "Number of cooling moves" +msgstr "冷卻移動次數" + +msgid "" +"Filament is cooled by being moved back and forth in the cooling tubes. " +"Specify desired number of these moves." +msgstr "藉由在喉管中來回移動以冷卻線材。指定移動所需的次數。" + +msgid "Speed of the first cooling move" +msgstr "第一次冷卻移動的速度" + +msgid "Cooling moves are gradually accelerating beginning at this speed." +msgstr "從這個速度開始冷卻移動逐漸加速。" + +msgid "Minimal purge on wipe tower" +msgstr "擦拭塔上的最小清理量" + +msgid "" +"After a tool change, the exact position of the newly loaded filament inside " +"the nozzle may not be known, and the filament pressure is likely not yet " +"stable. Before purging the print head into an infill or a sacrificial " +"object, Snapmaker Orca will always prime this amount of material into the wipe " +"tower to produce successive infill or sacrificial object extrusions reliably." +msgstr "" +"換色後,新載入的線材在噴嘴內的確切位置可能未知,耗材壓力可能還不穩定。在沖刷" +"列印頭到填充或作為擠出廢料之前,將始終將這些的線材沖刷到擦拭塔中以產生連續的" +"填充或穩定的擠出廢料。" + +msgid "Speed of the last cooling move" +msgstr "最後一次冷卻移動的速度" + +msgid "Cooling moves are gradually accelerating towards this speed." +msgstr "冷卻移動向這個速度逐漸加速。" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to load a new " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"在換色時(執行 T-code ,如 T1,T2),列印設備韌體(或 Multi Material Unit " +"2.0)載入新線材的所需時間。該時間將會被 G-code 時間評估功能加到總列印時間上" +"去。" + +msgid "Ramming parameters" +msgstr "尖端成型參數" + +msgid "" +"This string is edited by RammingDialog and contains ramming specific " +"parameters." +msgstr "此內容由尖端成型欄位編輯,包含尖端成型的特定參數。" + +msgid "" +"Time for the printer firmware (or the Multi Material Unit 2.0) to unload a " +"filament during a tool change (when executing the T code). This time is " +"added to the total print time by the G-code time estimator." +msgstr "" +"換色期間(執行T-cide 時如 T1,T2),列印設備韌體(或 Multi Material Unit " +"2.0)退出線材所需時間。該時間將會被 G-code 時間評估功能加到總列印時間上去。" + +msgid "Enable ramming for multitool setups" +msgstr "使用多色尖端成形設定" + +msgid "" +"Perform ramming when using multitool printer (i.e. when the 'Single Extruder " +"Multimaterial' in Printer Settings is unchecked). When checked, a small " +"amount of filament is rapidly extruded on the wipe tower just before the " +"toolchange. This option is only used when the wipe tower is enabled." +msgstr "" +"多色列印設備執行尖端成型時(即,當列印設備設定中的單擠出機多材料未選取時)。" +"選取時,在換色之前,會迅速擠出少量線材絲到擦拭塔上。此選項僅在啟用擦拭塔時使" +"用。" + +msgid "Multitool ramming volume" +msgstr "多色尖端成型體積" + +msgid "The volume to be rammed before the toolchange." +msgstr "換色前尖端成型的體積" + +msgid "Multitool ramming flow" +msgstr "多色尖端成型流量" + +msgid "Flow used for ramming the filament before the toolchange." +msgstr "換色前線材尖端成型的流量" + +msgid "Density" +msgstr "密度" + +msgid "Filament density. For statistics only" +msgstr "線材的密度。只用於統計資訊。" + +msgid "g/cm³" +msgstr "g/cm³" + +msgid "The material type of filament" +msgstr "線材的材料類型" + +msgid "Soluble material" +msgstr "可溶性材料" + +msgid "" +"Soluble material is commonly used to print support and support interface" +msgstr "可溶性材料通常用於列印支撐和支撐面" + +msgid "Support material" +msgstr "支撐材料" + +msgid "" +"Support material is commonly used to print support and support interface" +msgstr "支撐材料通常用於列印支撐體和支撐接觸面" + +msgid "Softening temperature" +msgstr "線材軟化溫度" + +msgid "" +"The material softens at this temperature, so when the bed temperature is " +"equal to or greater than it, it's highly recommended to open the front door " +"and/or remove the upper glass to avoid cloggings." +msgstr "" +"線材在此溫度下容易軟化,因此當熱床床溫等於或高於該溫度時,強烈建議打開前門和/" +"或拆下上部玻璃以避免堵塞。" + +msgid "Price" +msgstr "價格" + +msgid "Filament price. For statistics only" +msgstr "線材的價格。只用於統計資訊。" + +#, fuzzy +msgid "money/kg" +msgstr "元/公斤" + +msgid "Vendor" +msgstr "供應商" + +msgid "Vendor of filament. For show only" +msgstr "列印線材的供應商。僅用於展示。" + +msgid "(Undefined)" +msgstr "(未定義)" + +msgid "Sparse infill direction" +msgstr "" + +msgid "" +"Angle for sparse infill pattern, which controls the start or main direction " +"of line" +msgstr "稀疏填充圖案的角度,決定走線的開始或整體方向。" + +msgid "Solid infill direction" +msgstr "" + +msgid "" +"Angle for solid infill pattern, which controls the start or main direction " +"of line" +msgstr "" + +msgid "Rotate solid infill direction" +msgstr "" + +msgid "Rotate the solid infill direction by 90° for each layer." +msgstr "" + +msgid "Sparse infill density" +msgstr "稀疏填充密度" + +#, no-c-format, no-boost-format +msgid "" +"Density of internal sparse infill, 100% turns all sparse infill into solid " +"infill and internal solid infill pattern will be used" +msgstr "" + +msgid "Sparse infill pattern" +msgstr "稀疏填充圖案" + +msgid "Line pattern for internal sparse infill" +msgstr "內部稀疏填充的走線圖案" + +msgid "Grid" +msgstr "網格" + +msgid "Line" +msgstr "線" + +msgid "Cubic" +msgstr "立方體" + +msgid "Tri-hexagon" +msgstr "內六邊形" + +msgid "Gyroid" +msgstr "螺旋體" + +msgid "Honeycomb" +msgstr "蜂窩" + +msgid "Adaptive Cubic" +msgstr "自適應立方體" + +msgid "3D Honeycomb" +msgstr "3D 蜂窩" + +msgid "Support Cubic" +msgstr "支撐立方體" + +msgid "Lightning" +msgstr "閃電" + +msgid "Cross Hatch" +msgstr "" + +msgid "Sparse infill anchor length" +msgstr "稀疏填充錨線長度" + +#, fuzzy +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than infill_anchor_max is found, the infill line is " +"connected to a perimeter segment at just one side and the length of the " +"perimeter segment taken is limited to this parameter, but no longer than " +"anchor_length_max. \n" +"Set this parameter to zero to disable anchoring perimeters connected to a " +"single infill line." +msgstr "" +"用附加周長的一小段將填充線連接到內部周長。如果以百分比(例如:15%)表示,則計" +"算填充拉伸寬度。Snapmaker Orca 試圖將兩條緊密的填充線連接到一個短的周長段。如果" +"找不到短於“填充”和“錨點”最大值的周長線段,則填充線僅在一側連接到周長線段,並" +"且所取周長線段的長度僅限於此參數,但不超過“錨點長度”最大值。將此參數設定為" +"零,以禁用連接到單個填充線的錨點周長。" + +#, fuzzy +msgid "0 (no open anchors)" +msgstr "0(無錨線)" + +msgid "1000 (unlimited)" +msgstr "1000(無限制)" + +msgid "Maximum length of the infill anchor" +msgstr "填充錨線的最大長度" + +#, fuzzy +msgid "" +"Connect an infill line to an internal perimeter with a short segment of an " +"additional perimeter. If expressed as percentage (example: 15%) it is " +"calculated over infill extrusion width. Snapmaker Orca tries to connect two " +"close infill lines to a short perimeter segment. If no such perimeter " +"segment shorter than this parameter is found, the infill line is connected " +"to a perimeter segment at just one side and the length of the perimeter " +"segment taken is limited to infill_anchor, but no longer than this " +"parameter. \n" +"If set to 0, the old algorithm for infill connection will be used, it should " +"create the same result as with 1000 & 0." +msgstr "" +"用附加周長的一小段將填充線連接到內部周長。如果以百分比(例如:15%)表示,則計" +"算填充拉伸寬度。Snapmaker Orca 試圖將兩條緊密的填充線連接到一個短的周長段。如果" +"找不到比此參數短的周長線段,則填充線僅在一側連接到周長線段,並且所採用的周長" +"線段的長度僅限於 infl_anchor,但不超過此參數。將此參數設定為零以禁用錨點。" + +msgid "0 (Simple connect)" +msgstr "0(簡單連接)" + +#, fuzzy +msgid "Acceleration of outer walls" +msgstr "外牆的加速度。它通常使用比內壁速度慢的加速度,以獲得更好的列印品質" + +#, fuzzy +msgid "Acceleration of inner walls" +msgstr "內圈牆加速度,使用較低值可以改善列印品質。" + +msgid "Acceleration of travel moves" +msgstr "空駛加速度" + +#, fuzzy +msgid "" +"Acceleration of top surface infill. Using a lower value may improve top " +"surface quality" +msgstr "頂面填充的加速度。使用較低值可能會改善頂面列印品質" + +msgid "Acceleration of outer wall. Using a lower value can improve quality" +msgstr "外牆加速度。使用較小的值可以提高列印品質。" + +#, fuzzy +msgid "" +"Acceleration of bridges. If the value is expressed as a percentage (e.g. " +"50%), it will be calculated based on the outer wall acceleration." +msgstr "" +"橋接加速度。 如果該值以百分比表示(例如 50%),則將根據外牆加速度進行計算。" + +msgid "mm/s² or %" +msgstr "mm/s² 或 %" + +msgid "" +"Acceleration of sparse infill. If the value is expressed as a percentage (e." +"g. 100%), it will be calculated based on the default acceleration." +msgstr "" +"稀疏填充的加速度。如果該值表示為百分比(例如 100%),則將根據預設加速度進行計" +"算。" + +msgid "" +"Acceleration of internal solid infill. If the value is expressed as a " +"percentage (e.g. 100%), it will be calculated based on the default " +"acceleration." +msgstr "" +"內部實心填充加速度。 如果該值以百分比表示(例如 100%),則將根據預設加速度進" +"行計算。" + +msgid "" +"Acceleration of initial layer. Using a lower value can improve build plate " +"adhesive" +msgstr "首層加速度。使用較低值可以改善和列印板的黏附。" + +msgid "Enable accel_to_decel" +msgstr "啟用煞車速度" + +msgid "Klipper's max_accel_to_decel will be adjusted automatically" +msgstr "Klipper 會依照煞車速度值自動調整" + +msgid "accel_to_decel" +msgstr "煞車速度" + +#, c-format, boost-format +msgid "" +"Klipper's max_accel_to_decel will be adjusted to this %% of acceleration" +msgstr "Klipper 的最大煞車速度將調整為加速度的 %%" + +msgid "Jerk of outer walls" +msgstr "外牆抖動值" + +msgid "Jerk of inner walls" +msgstr "內牆抖動值" + +msgid "Jerk for top surface" +msgstr "頂面抖動值" + +msgid "Jerk for infill" +msgstr "填充抖動" + +msgid "Jerk for initial layer" +msgstr "首層抖動值" + +msgid "Jerk for travel" +msgstr "空駛抖動值" + +msgid "" +"Line width of initial layer. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "首層的線寬。如果以 % 表示,它將以噴嘴直徑為基準來計算。" + +msgid "Initial layer height" +msgstr "首層層高" + +msgid "" +"Height of initial layer. Making initial layer height to be thick slightly " +"can improve build plate adhesion" +msgstr "首層層高" + +msgid "Speed of initial layer except the solid infill part" +msgstr "首層除實心填充之外的其他部分的列印速度" + +msgid "Initial layer infill" +msgstr "首層填充" + +msgid "Speed of solid infill part of initial layer" +msgstr "首層實心填充的列印速度" + +msgid "Initial layer travel speed" +msgstr "首層空駛速度" + +msgid "Travel speed of initial layer" +msgstr "首層空駛速度" + +msgid "Number of slow layers" +msgstr "慢速列印層數" + +msgid "" +"The first few layers are printed slower than normal. The speed is gradually " +"increased in a linear fashion over the specified number of layers." +msgstr "減慢前幾層的列印速度。列印速度會逐漸加速到滿速" + +msgid "Initial layer nozzle temperature" +msgstr "首層列印溫度" + +msgid "Nozzle temperature to print initial layer when using this filament" +msgstr "列印首層時的噴嘴溫度" + +msgid "Full fan speed at layer" +msgstr "滿速風扇在" + +msgid "" +"Fan speed will be ramped up linearly from zero at layer " +"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer" +"\". \"full_fan_speed_layer\" will be ignored if lower than " +"\"close_fan_the_first_x_layers\", in which case the fan will be running at " +"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1." +msgstr "" +"風扇速度將從“禁用第一層”的零線性上升到“全風扇速度層”的最大。如果低於“禁用風扇" +"第一層”,則“全風扇速度第一層”將被忽略,在這種情況下,風扇將在“禁用風扇第一" +"層”+1層以最大允許速度運行。" + +msgid "layer" +msgstr "" + +#, fuzzy +msgid "Support interface fan speed" +msgstr "支撐接觸面風扇速度" + +#, fuzzy +msgid "" +"This fan speed is enforced during all support interfaces, to be able to " +"weaken their bonding with a high fan speed.\n" +"Set to -1 to disable this override.\n" +"Can only be overriden by disable_fan_first_layers." +msgstr "" +"所有支撐接觸層列印期間強制執行速度,透過高轉速風扇速度減少支撐與物件的融" +"合。\n" +"設定為 -1 以停用。" + +#, fuzzy +msgid "" +"Randomly jitter while printing the wall, so that the surface has a rough " +"look. This setting controls the fuzzy position" +msgstr "列印外牆時隨機抖動,使外表面產生絨毛效果。這個設定決定適用的位置。" + +msgid "Contour" +msgstr "輪廓" + +msgid "Contour and hole" +msgstr "輪廓和孔" + +msgid "All walls" +msgstr "所有牆" + +msgid "Fuzzy skin thickness" +msgstr "絨毛表面厚度" + +msgid "" +"The width within which to jitter. It's adversed to be below outer wall line " +"width" +msgstr "產生絨毛的抖動的寬度。建議小於外圈牆的線寬。" + +msgid "Fuzzy skin point distance" +msgstr "絨毛表面點間距" + +msgid "" +"The average diatance between the random points introducded on each line " +"segment" +msgstr "產生絨毛表面時,插入的隨機點之間的平均距離" + +msgid "Apply fuzzy skin to first layer" +msgstr "" + +msgid "Whether to apply fuzzy skin on the first layer" +msgstr "" + +msgid "Filter out tiny gaps" +msgstr "忽略微小間隙" + +msgid "Layers and Perimeters" +msgstr "層和牆" + +msgid "Filter out gaps smaller than the threshold specified" +msgstr "忽略小於指定數值的間隙" + +msgid "" +"Speed of gap infill. Gap usually has irregular line width and should be " +"printed more slowly" +msgstr "填縫的速度。縫隙通常有不一致的線寬,應改用較慢速度列印。" + +msgid "Precise Z height" +msgstr "" + +msgid "" +"Enable this to get precise z height of object after slicing. It will get the " +"precise object height by fine-tuning the layer heights of the last few " +"layers. Note that this is an experimental parameter." +msgstr "" + +msgid "Arc fitting" +msgstr "圓弧擬合" + +msgid "" +"Enable this to get a G-code file which has G2 and G3 moves. The fitting " +"tolerance is same as the resolution. \n" +"\n" +"Note: For klipper machines, this option is recomended to be disabled. " +"Klipper does not benefit from arc commands as these are split again into " +"line segments by the firmware. This results in a reduction in surface " +"quality as line segments are converted to arcs by the slicer and then back " +"to line segments by the firmware." +msgstr "" + +msgid "Add line number" +msgstr "標註行號" + +#, fuzzy +msgid "Enable this to add line number(Nx) at the beginning of each G-Code line" +msgstr "打開這個設定,G-code 的每一行的開頭會增加Nx標註行號。" + +msgid "Scan first layer" +msgstr "首層檢查" + +#, fuzzy +msgid "" +"Enable this to enable the camera on printer to check the quality of first " +"layer" +msgstr "打開這個設定將使用列印設備上的鏡頭用於檢查首層列印品質。" + +msgid "Nozzle type" +msgstr "噴嘴類型" + +msgid "" +"The metallic material of nozzle. This determines the abrasive resistance of " +"nozzle, and what kind of filament can be printed" +msgstr "噴嘴的金屬材料。這將決定噴嘴的耐磨性,以及可列印線材的種類" + +msgid "Undefine" +msgstr "未定義" + +msgid "Hardened steel" +msgstr "硬化鋼" + +msgid "Stainless steel" +msgstr "不鏽鋼" + +msgid "Brass" +msgstr "黃銅" + +msgid "Nozzle HRC" +msgstr "噴嘴洛氏硬度" + +msgid "" +"The nozzle's hardness. Zero means no checking for nozzle's hardness during " +"slicing." +msgstr "噴嘴硬度。零值表示在切片時不檢查噴嘴硬度。" + +msgid "HRC" +msgstr "洛氏硬度" + +#, fuzzy +msgid "Printer structure" +msgstr "列印設備結構" + +msgid "The physical arrangement and components of a printing device" +msgstr "列印設備的實體佈置和組件" + +msgid "CoreXY" +msgstr "" + +msgid "I3" +msgstr "" + +msgid "Hbot" +msgstr "" + +msgid "Delta" +msgstr "" + +msgid "Best object position" +msgstr "最佳物件位置" + +msgid "Best auto arranging position in range [0,1] w.r.t. bed shape." +msgstr "針對列印版的形狀,範圍 [0,1] 內的最佳自動擺放位置 。" + +#, fuzzy +msgid "" +"Enable this option if machine has auxiliary part cooling fan. G-code " +"command: M106 P2 S(0-255)." +msgstr "" +"如果設備有輔助部件冷卻風扇,請啟用此選項。 G-code 指令:M106 P2 S(0-255)。" + +#, fuzzy +msgid "" +"Start the fan this number of seconds earlier than its target start time (you " +"can use fractional seconds). It assumes infinite acceleration for this time " +"estimation, and will only take into account G1 and G0 moves (arc fitting is " +"unsupported).\n" +"It won't move fan comands from custom gcodes (they act as a sort of " +"'barrier').\n" +"It won't move fan comands into the start gcode if the 'only custom start " +"gcode' is activated.\n" +"Use 0 to deactivate." +msgstr "" +"將風扇啟動指令往前移動指定時間以補償風扇的啟動時間。目前支援 G1 G0 指令\n" +"設為 0 以禁用此選項" + +#, fuzzy +msgid "Only overhangs" +msgstr "僅懸空" + +#, fuzzy +msgid "Will only take into account the delay for the cooling of overhangs." +msgstr "僅對懸空有效" + +msgid "Fan kick-start time" +msgstr "風扇" + +#, fuzzy +msgid "" +"Emit a max fan speed command for this amount of seconds before reducing to " +"target speed to kick-start the cooling fan.\n" +"This is useful for fans where a low PWM/power may be insufficient to get the " +"fan started spinning from a stop, or to get the fan up to speed faster.\n" +"Set to 0 to deactivate." +msgstr "" +"在降低到目標速度以啟動冷卻風扇之前,持續發出最大風扇速度命令。\n" +"這對於低 PWM/功率可能不足以使風扇從停止狀態開始旋轉或使風扇加速得更快的風扇很" +"有用。\n" +"設定為 0 以停用。" + +msgid "Time cost" +msgstr "時間成本" + +#, fuzzy +msgid "The printer cost per hour" +msgstr "列印設備每小時成本" + +msgid "money/h" +msgstr "元/小時" + +#, fuzzy +msgid "Support control chamber temperature" +msgstr "支援控制列印設備內部溫度" + +#, fuzzy +msgid "" +"This option is enabled if machine support controlling chamber temperature\n" +"G-code command: M141 S(0-255)" +msgstr "" +"如果支援列印設備內部溫度控制,則啟用此選項\n" +"G-code 指令:M141 S(0-255)" + +msgid "Support air filtration" +msgstr "支援空氣過濾" + +#, fuzzy +msgid "" +"Enable this if printer support air filtration\n" +"G-code command: M106 P3 S(0-255)" +msgstr "" +"如果列印設備支援空氣過濾,請啟用此選項\n" +"G-code 指令:M106 P3 S(0-255)" + +msgid "G-code flavor" +msgstr "G-code 風格" + +#, fuzzy +msgid "What kind of gcode the printer is compatible with" +msgstr "列印設備相容的 G-code 樣式" + +msgid "Klipper" +msgstr "" + +msgid "Pellet Modded Printer" +msgstr "" + +msgid "Enable this option if your printer uses pellets instead of filaments" +msgstr "" + +msgid "Support multi bed types" +msgstr "" + +msgid "Enable this option if you want to use multiple bed types" +msgstr "" + +msgid "Label objects" +msgstr "標註物件" + +#, fuzzy +msgid "" +"Enable this to add comments into the G-Code labeling print moves with what " +"object they belong to, which is useful for the Octoprint CancelObject " +"plugin. This settings is NOT compatible with Single Extruder Multi Material " +"setup and Wipe into Object / Wipe into Infill." +msgstr "" +"啟用此選項可將註解新增至 G-code 中,標記列印移動及其所屬物件,這對於 " +"Octoprint CancelObject 外掛程式非常有用。此設定與單擠出機多色設定和擦除到物" +"件/擦除到填充不相容。" + +msgid "Exclude objects" +msgstr "物件排除" + +msgid "Enable this option to add EXCLUDE OBJECT command in g-code" +msgstr "開啟此選項以支援物件排除" + +msgid "Verbose G-code" +msgstr "詳細 G-code" + +msgid "" +"Enable this to get a commented G-code file, with each line explained by a " +"descriptive text. If you print from SD card, the additional weight of the " +"file could make your firmware slow down." +msgstr "" +"啟用此選項可取得帶註釋的 G-code,其中每一行均由描述性文字進行解釋。 如果您從 " +"SD 卡列印,檔案的額外容量可能會導致韌體速度變慢。" + +msgid "Infill combination" +msgstr "合併填充" + +msgid "" +"Automatically Combine sparse infill of several layers to print together to " +"reduce time. Wall is still printed with original layer height." +msgstr "" +"自動合併若干層稀疏填充一起列印以可縮短時間。內外牆依然保持原始層高列印。" + +msgid "Filament to print internal sparse infill." +msgstr "列印內部稀疏填充的線材" + +msgid "" +"Line width of internal sparse infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "內部稀疏填充的線寬。如果以%表示,它將以噴嘴直徑為基準來計算。" + +msgid "Infill/Wall overlap" +msgstr "填充/牆 重疊" + +#, no-c-format, no-boost-format +msgid "" +"Infill area is enlarged slightly to overlap with wall for better bonding. " +"The percentage value is relative to line width of sparse infill. Set this " +"value to ~10-15% to minimize potential over extrusion and accumulation of " +"material resulting in rough top surfaces." +msgstr "" + +msgid "Top/Bottom solid infill/wall overlap" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"Top solid infill area is enlarged slightly to overlap with wall for better " +"bonding and to minimize the appearance of pinholes where the top infill " +"meets the walls. A value of 25-30% is a good starting point, minimising the " +"appearance of pinholes. The percentage value is relative to line width of " +"sparse infill" +msgstr "" + +msgid "Speed of internal sparse infill" +msgstr "內部稀疏填充的列印速度" + +msgid "Interface shells" +msgstr "接觸面外殼" + +msgid "" +"Force the generation of solid shells between adjacent materials/volumes. " +"Useful for multi-extruder prints with translucent materials or manual " +"soluble support material" +msgstr "" +"強制在相鄰材料/體積之間產生實體殼。 適用於使用半透明材料或手動可溶支撐材料的" +"多擠出機列印" + +msgid "Maximum width of a segmented region" +msgstr "分隔區域的最大寬度" + +msgid "Maximum width of a segmented region. Zero disables this feature." +msgstr "分隔區域的最大寬度。零表示禁用此功能。" + +msgid "Interlocking depth of a segmented region" +msgstr "" + +msgid "Interlocking depth of a segmented region. Zero disables this feature." +msgstr "" + +msgid "Use beam interlocking" +msgstr "" + +msgid "" +"Generate interlocking beam structure at the locations where different " +"filaments touch. This improves the adhesion between filaments, especially " +"models printed in different materials." +msgstr "" + +msgid "Interlocking beam width" +msgstr "" + +msgid "The width of the interlocking structure beams." +msgstr "" + +msgid "Interlocking direction" +msgstr "" + +msgid "Orientation of interlock beams." +msgstr "" + +msgid "Interlocking beam layers" +msgstr "" + +msgid "" +"The height of the beams of the interlocking structure, measured in number of " +"layers. Less layers is stronger, but more prone to defects." +msgstr "" + +msgid "Interlocking depth" +msgstr "" + +msgid "" +"The distance from the boundary between filaments to generate interlocking " +"structure, measured in cells. Too few cells will result in poor adhesion." +msgstr "" + +msgid "Interlocking boundary avoidance" +msgstr "" + +msgid "" +"The distance from the outside of a model where interlocking structures will " +"not be generated, measured in cells." +msgstr "" + +msgid "Ironing Type" +msgstr "熨燙類型" + +#, fuzzy +msgid "" +"Ironing is using small flow to print on same height of surface again to make " +"flat surface more smooth. This setting controls which layer being ironed" +msgstr "" +"熨燙指的是使用小流量在表面的同高度列印,進而是的平面更加光滑。這個功能用於設" +"定哪些層進行熨燙。" + +msgid "No ironing" +msgstr "不熨燙" + +msgid "Top surfaces" +msgstr "頂面" + +msgid "Topmost surface" +msgstr "最頂面" + +msgid "All solid layer" +msgstr "所有實心層" + +msgid "Ironing Pattern" +msgstr "熨燙模式" + +msgid "The pattern that will be used when ironing" +msgstr "熨燙時將使用的圖案" + +msgid "Ironing flow" +msgstr "熨燙流量" + +msgid "" +"The amount of material to extrude during ironing. Relative to flow of normal " +"layer height. Too high value results in overextrusion on the surface" +msgstr "熨燙時相對正常層高流量的材料量。過高的數值將會導致表面材料過擠出。" + +msgid "Ironing line spacing" +msgstr "熨燙間距" + +msgid "The distance between the lines of ironing" +msgstr "熨燙走線的間距" + +msgid "Ironing speed" +msgstr "熨燙速度" + +msgid "Print speed of ironing lines" +msgstr "熨燙的列印速度" + +msgid "Ironing angle" +msgstr "熨燙角度" + +msgid "" +"The angle ironing is done at. A negative number disables this function and " +"uses the default method." +msgstr "" + +msgid "This gcode part is inserted at every layer change after lift z" +msgstr "在每次換層抬升Z高度之後插入這段 G-code。" + +msgid "Supports silent mode" +msgstr "支援靜音模式" + +#, fuzzy +msgid "" +"Whether the machine supports silent mode in which machine use lower " +"acceleration to print" +msgstr "設備是否支援使用低加速度列印的靜音模式。" + +msgid "Emit limits to G-code" +msgstr "" + +#, fuzzy +msgid "Machine limits" +msgstr "設備限制" + +msgid "" +"If enabled, the machine limits will be emitted to G-code file.\n" +"This option will be ignored if the g-code flavor is set to Klipper." +msgstr "" + +msgid "" +"This G-code will be used as a code for the pause print. User can insert " +"pause G-code in gcode viewer" +msgstr "該 G-code 用於暫停列印。您可以在 gcode 預覽中插入暫停 G-code" + +msgid "This G-code will be used as a custom code" +msgstr "該 G-code 是訂製化指令" + +msgid "Small area flow compensation (beta)" +msgstr "" + +msgid "Enable flow compensation for small infill areas" +msgstr "" + +msgid "Flow Compensation Model" +msgstr "" + +msgid "" +"Flow Compensation Model, used to adjust the flow for small infill areas. The " +"model is expressed as a comma separated pair of values for extrusion length " +"and flow correction factors, one per line, in the following format: " +"\"1.234,5.678\"" +msgstr "" + +msgid "Maximum speed X" +msgstr "X最大速度" + +msgid "Maximum speed Y" +msgstr "Y最大速度" + +msgid "Maximum speed Z" +msgstr "Z最大速度" + +msgid "Maximum speed E" +msgstr "E最大速度" + +msgid "Maximum X speed" +msgstr "X最大速度" + +msgid "Maximum Y speed" +msgstr "Y最大速度" + +msgid "Maximum Z speed" +msgstr "Z最大速度" + +msgid "Maximum E speed" +msgstr "E最大速度" + +msgid "Maximum acceleration X" +msgstr "X最大加速度" + +msgid "Maximum acceleration Y" +msgstr "Y最大加速度" + +msgid "Maximum acceleration Z" +msgstr "Z最大加速度" + +msgid "Maximum acceleration E" +msgstr "E最大加速度" + +msgid "Maximum acceleration of the X axis" +msgstr "X軸的最大加速度" + +msgid "Maximum acceleration of the Y axis" +msgstr "Y軸的最大加速度" + +msgid "Maximum acceleration of the Z axis" +msgstr "Z軸的最大加速度" + +msgid "Maximum acceleration of the E axis" +msgstr "E軸的最大加速度" + +msgid "Maximum jerk X" +msgstr "X最大抖動" + +msgid "Maximum jerk Y" +msgstr "Y最大抖動" + +msgid "Maximum jerk Z" +msgstr "Z最大抖動" + +msgid "Maximum jerk E" +msgstr "E最大抖動" + +msgid "Maximum jerk of the X axis" +msgstr "X軸最大抖動" + +msgid "Maximum jerk of the Y axis" +msgstr "Y軸最大抖動" + +msgid "Maximum jerk of the Z axis" +msgstr "Z軸最大抖動" + +msgid "Maximum jerk of the E axis" +msgstr "E軸最大抖動" + +msgid "Minimum speed for extruding" +msgstr "最小擠出速度" + +#, fuzzy +msgid "Minimum speed for extruding (M205 S)" +msgstr "最小擠出速度(M205 S)" + +msgid "Minimum travel speed" +msgstr "最小空駛速度" + +#, fuzzy +msgid "Minimum travel speed (M205 T)" +msgstr "最小空駛速度(M205 T)" + +msgid "Maximum acceleration for extruding" +msgstr "擠出最大加速度" + +#, fuzzy +msgid "Maximum acceleration for extruding (M204 P)" +msgstr "擠出時的最大加速度(M204 P)" + +msgid "Maximum acceleration for retracting" +msgstr "回抽最大加速度" + +#, fuzzy +msgid "Maximum acceleration for retracting (M204 R)" +msgstr "回抽最大加速度(M204 R)" + +msgid "Maximum acceleration for travel" +msgstr "空駛最大加速度" + +msgid "Maximum acceleration for travel (M204 T), it only applies to Marlin 2" +msgstr "最大行駛加速度(M204 T),僅適用於 Marlin 2" + +msgid "" +"Part cooling fan speed may be increased when auto cooling is enabled. This " +"is the maximum speed limitation of part cooling fan" +msgstr "" +"啟用自動冷卻時,可能會提高部件冷卻風扇的轉速。這是部件冷卻風扇的最大速度限制" + +msgid "Max" +msgstr "最大" + +msgid "" +"The largest printable layer height for extruder. Used tp limits the maximum " +"layer hight when enable adaptive layer height" +msgstr "擠出頭最大可列印的層高。用於限制開啟自適應層高時的最大層高。" + +msgid "Extrusion rate smoothing" +msgstr "平滑擠出率" + +#, fuzzy +msgid "" +"This parameter smooths out sudden extrusion rate changes that happen when " +"the printer transitions from printing a high flow (high speed/larger width) " +"extrusion to a lower flow (lower speed/smaller width) extrusion and vice " +"versa.\n" +"\n" +"It defines the maximum rate by which the extruded volumetric flow in mm3/sec " +"can change over time. Higher values mean higher extrusion rate changes are " +"allowed, resulting in faster speed transitions.\n" +"\n" +"A value of 0 disables the feature. \n" +"\n" +"For a high speed, high flow direct drive printer (like the Bambu lab or " +"Voron) this value is usually not needed. However it can provide some " +"marginal benefit in certain cases where feature speeds vary greatly. For " +"example, when there are aggressive slowdowns due to overhangs. In these " +"cases a high value of around 300-350mm3/s2 is recommended as this allows for " +"just enough smoothing to assist pressure advance achieve a smoother flow " +"transition.\n" +"\n" +"For slower printers without pressure advance, the value should be set much " +"lower. A value of 10-15mm3/s2 is a good starting point for direct drive " +"extruders and 5-10mm3/s2 for Bowden style. \n" +"\n" +"This feature is known as Pressure Equalizer in Prusa slicer.\n" +"\n" +"Note: this parameter disables arc fitting." +msgstr "" +"此參數是列印設備從列印高流量(高速/較大寬度)擠出轉換到較低流量(較低速度/較" +"小寬度)擠出時,用於突然變化擠出速率的平滑,反之亦然。\n" +"它定義了擠出體積流量(以 mm3/秒為單位)隨時間變化的最大速率。數值越高意味著允" +"許更高的擠出速率變化,從而實現更快的速度轉換。\n" +"\n" +"值為 0 會停用該功能。\n" +"\n" +"對於高速、高流量的機型(如 Bambu lab 或 Voron),通常不需要此值。但是,在某些" +"功能速度差異很大的情況下,它可以提供一些邊際效益。 例如,當懸空而出現嚴重的減" +"速時。 在這些情況下,建議使用大約 300-350 mm3/s2,因為這樣剛好允許足夠的平" +"滑,以幫助壓力提前實現更平滑的流量過渡。\n" +"\n" +"對於速度較慢且沒有壓力提前的機種,該值應設定的非常低。對於近程擠出機來說\n" +"10-15 mm3/s2 是一個相對好的起點,而對於遠程擠出機來說是 5-10 mm3/s2。\n" +"此功能在 Prusa 切片機中稱為壓力均衡器。\n" +"\n" +"注意:此參數會停用圓弧擬合。" + +msgid "mm³/s²" +msgstr "mm³/s²" + +msgid "Smoothing segment length" +msgstr "平滑段長度" + +msgid "" +"A lower value results in smoother extrusion rate transitions. However, this " +"results in a significantly larger gcode file and more instructions for the " +"printer to process. \n" +"\n" +"Default value of 3 works well for most cases. If your printer is stuttering, " +"increase this value to reduce the number of adjustments made\n" +"\n" +"Allowed values: 1-5" +msgstr "" + +msgid "Minimum speed for part cooling fan" +msgstr "部件冷卻風扇的最小轉速" + +#, fuzzy +msgid "" +"Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +"during printing except the first several layers which is defined by no " +"cooling layers.\n" +"Please enable auxiliary_fan in printer settings to use this feature. G-code " +"command: M106 P2 S(0-255)" +msgstr "" +"輔助冷卻風扇的轉速。 列印期間,輔助風扇將以該速度運行,除了設定無須冷卻的前幾" +"層除外\n" +"請在列印設備設定中啟用輔助風扇才能使用此功能。 G碼指令:M106 P2 S(0-255)" + +msgid "Min" +msgstr "最小" + +msgid "" +"The lowest printable layer height for extruder. Used tp limits the minimum " +"layer hight when enable adaptive layer height" +msgstr "擠出頭最小可列印的層高。用於限制開啟自適應層高時的最小層高。" + +msgid "Min print speed" +msgstr "最小列印速度" + +msgid "" +"The minimum printing speed that the printer will slow down to to attempt to " +"maintain the minimum layer time above, when slow down for better layer " +"cooling is enabled." +msgstr "" + +msgid "Nozzle diameter" +msgstr "噴嘴直徑" + +msgid "Diameter of nozzle" +msgstr "噴嘴直徑" + +msgid "Configuration notes" +msgstr "設定備註" + +msgid "" +"You can put here your personal notes. This text will be added to the G-code " +"header comments." +msgstr "您可以在這裡放置您的個人備註。 該文字將會加入 G 代碼標題註釋中。" + +msgid "Host Type" +msgstr "主機類型" + +#, fuzzy +msgid "" +"Snapmaker Orca can upload G-code files to a printer host. This field must " +"contain the kind of the host." +msgstr "切片軟體可以將 G-code 檔案上傳到列印設備。此欄位必須包含設備類型。" + +msgid "Nozzle volume" +msgstr "噴嘴內腔體積" + +msgid "Volume of nozzle between the cutter and the end of nozzle" +msgstr "從切刀位置到噴嘴尖端的內腔體積" + +msgid "Cooling tube position" +msgstr "喉管位置" + +msgid "Distance of the center-point of the cooling tube from the extruder tip." +msgstr "喉管的中心點與擠出機齒尖的距離。" + +msgid "Cooling tube length" +msgstr "喉管長度" + +msgid "Length of the cooling tube to limit space for cooling moves inside it." +msgstr "喉管的長度,用於限制冷卻內部移動的空間。" + +msgid "High extruder current on filament swap" +msgstr "更換線材擠出機大電流" + +msgid "" +"It may be beneficial to increase the extruder motor current during the " +"filament exchange sequence to allow for rapid ramming feed rates and to " +"overcome resistance when loading a filament with an ugly shaped tip." +msgstr "" +"可能有益於更換線材過程中增加擠出機電流,克服進料時的阻力以加快尖端成型進料速" +"率而避免產生難看形狀的尖端。" + +msgid "Filament parking position" +msgstr "線材停放位置" + +msgid "" +"Distance of the extruder tip from the position where the filament is parked " +"when unloaded. This should match the value in printer firmware." +msgstr "" +"退料時,擠出機齒尖與線材停放位置的距離。這應該與列印設備韌體中的值相符合。" + +msgid "Extra loading distance" +msgstr "額外進料距離" + +msgid "" +"When set to zero, the distance the filament is moved from parking position " +"during load is exactly the same as it was moved back during unload. When " +"positive, it is loaded further, if negative, the loading move is shorter " +"than unloading." +msgstr "" +"當設定為零時,線材的進料移動與退料移動的距離相同。如果為正,進料比退料長。如" +"果為負,進料比退料短。" + +msgid "Start end points" +msgstr "起始終止點" + +msgid "The start and end points which is from cutter area to garbage can." +msgstr "從切割區域到垃圾桶的起始和結束點。" + +msgid "Reduce infill retraction" +msgstr "減小填充回抽" + +#, fuzzy +msgid "" +"Don't retract when the travel is in infill area absolutely. That means the " +"oozing can't been seen. This can reduce times of retraction for complex " +"model and save printing time, but make slicing and G-code generating slower" +msgstr "" +"當空駛完全在填充區域內時不觸發回抽。這意味著即使漏料也是不可見的。對於複雜模" +"型,該設定能夠減少回抽次數以及列印時長,但是會造成 G-code 產生變慢" + +msgid "Filename format" +msgstr "檔案名稱格式" + +msgid "User can self-define the project file name when export" +msgstr "使用者可以自訂匯出項目檔案的名稱。" + +#, fuzzy +msgid "Make overhangs printable" +msgstr "懸空可列印" + +#, fuzzy +msgid "Modify the geometry to print overhangs without support material." +msgstr "修改幾何形狀使得懸空部分無需支撐材料或者橋接列印。" + +#, fuzzy +msgid "Make overhangs printable - Maximum angle" +msgstr "懸空可列印的最大角度" + +msgid "" +"Maximum angle of overhangs to allow after making more steep overhangs " +"printable.90° will not change the model at all and allow any overhang, while " +"0 will replace all overhangs with conical material." +msgstr "" +"開啟使懸空可列印後,允許的懸空最大角度。90° 將完全不改變模型並允許任何懸空," +"而0° 將用圓錐形材料替換所有懸空部分。" + +msgid "Make overhangs printable - Hole area" +msgstr "最大孔洞面積" + +msgid "" +"Maximum area of a hole in the base of the model before it's filled by " +"conical material.A value of 0 will fill all the holes in the model base." +msgstr "" +"模型底部的孔洞在被圓錐形材料填充前所允許的最大面積。值為 0 將填充模型底部的所" +"有孔洞。" + +msgid "mm²" +msgstr "mm²" + +msgid "Detect overhang wall" +msgstr "識別懸空外牆" + +#, c-format, boost-format +msgid "" +"Detect the overhang percentage relative to line width and use different " +"speed to print. For 100%% overhang, bridge speed is used." +msgstr "" +"偵測懸空相對於線寬的百分比,並應用不同的速度列印。100%% 的懸空將使用橋接速" +"度。" + +msgid "" +"Line width of inner wall. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "內牆的線寬。如果以 % 表示,它將以噴嘴直徑為基準來計算。" + +msgid "Speed of inner wall" +msgstr "內圈牆列印速度" + +msgid "Number of walls of every layer" +msgstr "每一層的外牆" + +msgid "Alternate extra wall" +msgstr "" + +msgid "" +"This setting adds an extra wall to every other layer. This way the infill " +"gets wedged vertically between the walls, resulting in stronger prints. \n" +"\n" +"When this option is enabled, the ensure vertical shell thickness option " +"needs to be disabled. \n" +"\n" +"Using lightning infill together with this option is not recommended as there " +"is limited infill to anchor the extra perimeters to." +msgstr "" + +msgid "" +"If you want to process the output G-code through custom scripts, just list " +"their absolute paths here. Separate multiple scripts with a semicolon. " +"Scripts will be passed the absolute path to the G-code file as the first " +"argument, and they can access the Snapmaker Orca config settings by reading " +"environment variables." +msgstr "" +"如果您想透過自訂腳本處理輸出的 G-code,只需在此處列出它們的絕對路徑即可。 用" +"分號分隔多個腳本。 腳本將傳遞 G-code 檔案的絕對路徑作為第一個參數,並且它們可" +"以透過讀取環境變數來讀取 Snapmaker Orca 設定。" + +msgid "Printer notes" +msgstr "列印設備備註" + +msgid "You can put your notes regarding the printer here." +msgstr "可以將列印設備的備註填寫在此處" + +msgid "Raft contact Z distance" +msgstr "筏層Z間距" + +msgid "Z gap between object and raft. Ignored for soluble interface" +msgstr "模型和筏層之間的Z間隙" + +msgid "Raft expansion" +msgstr "筏層擴展" + +msgid "Expand all raft layers in XY plane" +msgstr "在 XY 平面擴展所有筏層" + +msgid "Initial layer density" +msgstr "首層密度" + +msgid "Density of the first raft or support layer" +msgstr "筏和支撐的首層密度" + +msgid "Initial layer expansion" +msgstr "首層擴展" + +msgid "Expand the first raft or support layer to improve bed plate adhesion" +msgstr "擴展筏和支撐的首層可以改善和熱床的黏附。" + +msgid "Raft layers" +msgstr "筏層" + +msgid "" +"Object will be raised by this number of support layers. Use this function to " +"avoid wrapping when print ABS" +msgstr "" +"模型會在相應層數的支撐上抬高進行列印。使用該功能通常用於列印 ABS 時翹曲。" + +msgid "" +"G-code path is genereated after simplifing the contour of model to avoid too " +"much points and gcode lines in gcode file. Smaller value means higher " +"resolution and more time to slice" +msgstr "" +"為了避免 G-code 檔案中過密集的點和走線,G-code走線通常是在簡化模型的外輪廓之" +"後產生。越小的數值代表更高的解析度,同時需要更長的切片時間。" + +msgid "Travel distance threshold" +msgstr "空駛距離臨界值" + +msgid "" +"Only trigger retraction when the travel distance is longer than this " +"threshold" +msgstr "只在空駛距離大於該數值時觸發回抽。" + +msgid "Retract amount before wipe" +msgstr "擦拭前的回抽量" + +msgid "" +"The length of fast retraction before wipe, relative to retraction length" +msgstr "擦拭之前的回抽長度,用總回抽長度的百分比表示。" + +msgid "Retract when change layer" +msgstr "換層時回抽" + +msgid "Force a retraction when changes layer" +msgstr "強制在換層時回抽。" + +msgid "Retraction Length" +msgstr "回抽長度" + +#, fuzzy +msgid "" +"Some amount of material in extruder is pulled back to avoid ooze during long " +"travel. Set zero to disable retraction" +msgstr "" +"擠出機中的一些材料會被拉回特定長度,避免空駛較長時軟化的線材滲出。設定為 0 表" +"示關閉回抽。" + +msgid "Long retraction when cut(experimental)" +msgstr "" + +msgid "" +"Experimental feature.Retracting and cutting off the filament at a longer " +"distance during changes to minimize purge.While this reduces flush " +"significantly, it may also raise the risk of nozzle clogs or other printing " +"problems." +msgstr "" + +msgid "Retraction distance when cut" +msgstr "" + +msgid "" +"Experimental feature.Retraction length before cutting off during filament " +"change" +msgstr "" + +msgid "Z hop when retract" +msgstr "回抽時抬升Z" + +msgid "" +"Whenever the retraction is done, the nozzle is lifted a little to create " +"clearance between nozzle and the print. It prevents nozzle from hitting the " +"print when travel move. Using spiral line to lift z can prevent stringing" +msgstr "" +"回抽完成之後,噴嘴輕微抬升,和列印物件之間產生一定間隙。這能夠避免空駛時噴嘴" +"和列印物件剮蹭和碰撞。使用螺旋線抬升z能夠減少拉絲。" + +msgid "Z hop lower boundary" +msgstr "" + +msgid "" +"Z hop will only come into effect when Z is above this value and is below the " +"parameter: \"Z hop upper boundary\"" +msgstr "" + +msgid "Z hop upper boundary" +msgstr "" + +msgid "" +"If this value is positive, Z hop will only come into effect when Z is above " +"the parameter: \"Z hop lower boundary\" and is below this value" +msgstr "" + +msgid "Z hop type" +msgstr "抬Z類型" + +msgid "Slope" +msgstr "梯形" + +msgid "Spiral" +msgstr "螺旋" + +msgid "Traveling angle" +msgstr "" + +msgid "" +"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results " +"in Normal Lift" +msgstr "" + +msgid "Only lift Z above" +msgstr "僅在高度以上抬Z" + +msgid "" +"If you set this to a positive value, Z lift will only take place above the " +"specified absolute Z." +msgstr "如果設定為正值,則 Z 抬升僅在指定的絕對 Z 之上發生" + +msgid "Only lift Z below" +msgstr "僅在高度以下抬Z" + +msgid "" +"If you set this to a positive value, Z lift will only take place below the " +"specified absolute Z." +msgstr "如果設定為正值,則 Z 抬升僅在指定的絕對 Z 以下發生。" + +msgid "On surfaces" +msgstr "僅表面抬Z" + +msgid "" +"Enforce Z Hop behavior. This setting is impacted by the above settings (Only " +"lift Z above/below)." +msgstr "" +"強制 Z 抬升行為。此設定受上述設定的影響(僅在高度以下抬Z/僅在高度以上抬Z)。" + +msgid "All Surfaces" +msgstr "所有表面" + +msgid "Top Only" +msgstr "僅頂面" + +msgid "Bottom Only" +msgstr "僅底面" + +msgid "Top and Bottom" +msgstr "頂面和地面" + +msgid "Extra length on restart" +msgstr "額外回填長度" + +msgid "" +"When the retraction is compensated after the travel move, the extruder will " +"push this additional amount of filament. This setting is rarely needed." +msgstr "每當空駛後回抽被補償時,擠出機將推入額外長度的線材。很少需要此設定。" + +msgid "" +"When the retraction is compensated after changing tool, the extruder will " +"push this additional amount of filament." +msgstr "當換色後回抽被補償時,擠出機將推入額外長度的線材。" + +msgid "Retraction Speed" +msgstr "回抽速度" + +msgid "Speed of retractions" +msgstr "回抽速度" + +msgid "Deretraction Speed" +msgstr "裝填速度" + +msgid "" +"Speed for reloading filament into extruder. Zero means same speed with " +"retraction" +msgstr "線材裝填的速度,0 表示和回抽速度一致。" + +msgid "Use firmware retraction" +msgstr "使用韌體回抽" + +msgid "" +"This experimental setting uses G10 and G11 commands to have the firmware " +"handle the retraction. This is only supported in recent Marlin." +msgstr "" +"(實驗設定)使用 G10 和 G11 命令讓韌體處理回抽。該功能僅支持最近版本的 " +"Marlin 固件。" + +msgid "Show auto-calibration marks" +msgstr "顯示雷達校準線" + +msgid "Disable set remaining print time" +msgstr "" + +msgid "" +"Disable generating of the M73: Set remaining print time in the final gcode" +msgstr "" + +msgid "Seam position" +msgstr "接縫位置" + +msgid "The start position to print each part of outer wall" +msgstr "Z縫(外牆銜接)的位置" + +msgid "Nearest" +msgstr "最近" + +msgid "Aligned" +msgstr "對齊" + +msgid "Back" +msgstr "背面" + +msgid "Random" +msgstr "隨機" + +msgid "Staggered inner seams" +msgstr "交錯的內牆接縫" + +msgid "" +"This option causes the inner seams to be shifted backwards based on their " +"depth, forming a zigzag pattern." +msgstr "此選項會根據內牆深度使接縫向後移動,形成鋸齒形模式。" + +msgid "Seam gap" +msgstr "接縫間隔" + +msgid "" +"In order to reduce the visibility of the seam in a closed loop extrusion, " +"the loop is interrupted and shortened by a specified amount.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current extruder diameter. The default value for this parameter is 10%." +msgstr "" + +msgid "Scarf joint seam (beta)" +msgstr "" + +msgid "Use scarf joint to minimize seam visibility and increase seam strength." +msgstr "" + +msgid "Conditional scarf joint" +msgstr "" + +msgid "" +"Apply scarf joints only to smooth perimeters where traditional seams do not " +"conceal the seams at sharp corners effectively." +msgstr "" + +msgid "Conditional angle threshold" +msgstr "" + +msgid "" +"This option sets the threshold angle for applying a conditional scarf joint " +"seam.\n" +"If the maximum angle within the perimeter loop exceeds this value " +"(indicating the absence of sharp corners), a scarf joint seam will be used. " +"The default value is 155°." +msgstr "" + +msgid "Conditional overhang threshold" +msgstr "" + +#, no-c-format, no-boost-format +msgid "" +"This option determines the overhang threshold for the application of scarf " +"joint seams. If the unsupported portion of the perimeter is less than this " +"threshold, scarf joint seams will be applied. The default threshold is set " +"at 40% of the external wall's width. Due to performance considerations, the " +"degree of overhang is estimated." +msgstr "" + +msgid "Scarf joint speed" +msgstr "" + +msgid "" +"This option sets the printing speed for scarf joints. It is recommended to " +"print scarf joints at a slow speed (less than 100 mm/s). It's also " +"advisable to enable 'Extrusion rate smoothing' if the set speed varies " +"significantly from the speed of the outer or inner walls. If the speed " +"specified here is higher than the speed of the outer or inner walls, the " +"printer will default to the slower of the two speeds. When specified as a " +"percentage (e.g., 80%), the speed is calculated based on the respective " +"outer or inner wall speed. The default value is set to 100%." +msgstr "" + +msgid "Scarf joint flow ratio" +msgstr "" + +msgid "This factor affects the amount of material for scarf joints." +msgstr "" + +msgid "Scarf start height" +msgstr "" + +msgid "" +"Start height of the scarf.\n" +"This amount can be specified in millimeters or as a percentage of the " +"current layer height. The default value for this parameter is 0." +msgstr "" + +msgid "Scarf around entire wall" +msgstr "" + +msgid "The scarf extends to the entire length of the wall." +msgstr "" + +msgid "Scarf length" +msgstr "" + +msgid "" +"Length of the scarf. Setting this parameter to zero effectively disables the " +"scarf." +msgstr "" + +msgid "Scarf steps" +msgstr "" + +msgid "Minimum number of segments of each scarf." +msgstr "" + +msgid "Scarf joint for inner walls" +msgstr "" + +msgid "Use scarf joint for inner walls as well." +msgstr "" + +msgid "Role base wipe speed" +msgstr "自動擦拭速度" + +msgid "" +"The wipe speed is determined by the speed of the current extrusion role.e.g. " +"if a wipe action is executed immediately following an outer wall extrusion, " +"the speed of the outer wall extrusion will be utilized for the wipe action." +msgstr "" + +msgid "Wipe on loops" +msgstr "閉環擦拭" + +msgid "" +"To minimize the visibility of the seam in a closed loop extrusion, a small " +"inward movement is executed before the extruder leaves the loop." +msgstr "" +"為了最大限度地減少閉環擠出中接縫的可見性,在擠出機離開環之前,會向內執行一個" +"小小的移動。" + +msgid "Wipe before external loop" +msgstr "" + +msgid "" +"To minimise visibility of potential overextrusion at the start of an " +"external perimeter when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order, the deretraction is performed slightly on the inside from the " +"start of the external perimeter. That way any potential over extrusion is " +"hidden from the outside surface. \n" +"\n" +"This is useful when printing with Outer/Inner or Inner/Outer/Inner wall " +"print order as in these modes it is more likely an external perimeter is " +"printed immediately after a deretraction move." +msgstr "" + +msgid "Wipe speed" +msgstr "擦拭速度" + +#, fuzzy +msgid "" +"The wipe speed is determined by the speed setting specified in this " +"configuration.If the value is expressed as a percentage (e.g. 80%), it will " +"be calculated based on the travel speed setting above.The default value for " +"this parameter is 80%" +msgstr "" +"擦拭速度是根據此配置中指定的速度設定確定的。如果該值以百分比形式表示(例如 " +"80%),則將根據上方的移動速度設定進行計算。該參數的預設值為 80%。" + +msgid "Skirt distance" +msgstr "Skirt距離" + +msgid "Distance from skirt to brim or object" +msgstr "從 skirt 到模型或者 brim(裙邊)的距離" + +msgid "Skirt height" +msgstr "Skirt 高度" + +msgid "How many layers of skirt. Usually only one layer" +msgstr "skirt 有多少層。通常只有一層" + +msgid "Draft shield" +msgstr "防風罩" + +msgid "" +"A draft shield is useful to protect an ABS or ASA print from warping and " +"detaching from print bed due to wind draft. It is usually needed only with " +"open frame printers, i.e. without an enclosure. \n" +"\n" +"Options:\n" +"Enabled = skirt is as tall as the highest printed object.\n" +"Limited = skirt is as tall as specified by skirt height.\n" +"\n" +"Note: With the draft shield active, the skirt will be printed at skirt " +"distance from the object. Therefore, if brims are active it may intersect " +"with them. To avoid this, increase the skirt distance value.\n" +msgstr "" + +msgid "Limited" +msgstr "有限" + +msgid "Enabled" +msgstr "啟用" + +msgid "Skirt loops" +msgstr "Skirt 圈數" + +msgid "Number of loops for the skirt. Zero means disabling skirt" +msgstr "skirt 的圈數。0 表示關閉 skirt。" + +msgid "Skirt speed" +msgstr "Skirt 速度" + +msgid "Speed of skirt, in mm/s. Zero means use default layer extrusion speed." +msgstr "Skirt 速度,單位為 mm/秒。 0 表示使用預設層擠出速度。" + +msgid "Skirt minimum extrusion length" +msgstr "" + +msgid "" +"Minimum filament extrusion length in mm when printing the skirt. Zero means " +"this feature is disabled.\n" +"\n" +"Using a non zero value is useful if the printer is set up to print without a " +"prime line." +msgstr "" + +msgid "" +"The printing speed in exported gcode will be slowed down, when the estimated " +"layer time is shorter than this value, to get better cooling for these layers" +msgstr "" +"當層預估列印時間小於這個數值時,列印速度將會降低,從而獲得更好的冷卻效果。" + +msgid "Minimum sparse infill threshold" +msgstr "稀疏填充最小臨界值" + +msgid "" +"Sparse infill area which is smaller than threshold value is replaced by " +"internal solid infill" +msgstr "小於這個臨界值的稀疏填充區域將會被內部實心填充替代。" + +msgid "" +"Line width of internal solid infill. If expressed as a %, it will be " +"computed over the nozzle diameter." +msgstr "內部實心填充的線寬。如果以%表示,它將以噴嘴直徑為基準來計算。" + +msgid "Speed of internal solid infill, not the top and bottom surface" +msgstr "內部實心填充的速度,不是頂面和底面。" + +#, fuzzy +msgid "" +"Spiralize smooths out the z moves of the outer contour. And turns a solid " +"model into a single walled print with solid bottom layers. The final " +"generated model has no seam" +msgstr "" +"沿著物件的外輪廓螺旋上升,將實體模型轉變為只有底面實心層和側面單層牆壁的列" +"印。最後產生的列印物件沒有接縫。" + +msgid "Smooth Spiral" +msgstr "" + +msgid "" +"Smooth Spiral smoothes out X and Y moves as wellresulting in no visible seam " +"at all, even in the XY directions on walls that are not vertical" +msgstr "" + +msgid "Max XY Smoothing" +msgstr "" + +msgid "" +"Maximum distance to move points in XY to try to achieve a smooth spiralIf " +"expressed as a %, it will be computed over nozzle diameter" +msgstr "" + +msgid "" +"If smooth or traditional mode is selected, a timelapse video will be " +"generated for each print. After each layer is printed, a snapshot is taken " +"with the chamber camera. All of these snapshots are composed into a " +"timelapse video when printing completes. If smooth mode is selected, the " +"toolhead will move to the excess chute after each layer is printed and then " +"take a snapshot. Since the melt filament may leak from the nozzle during the " +"process of taking a snapshot, prime tower is required for smooth mode to " +"wipe nozzle." +msgstr "" +"如果啟用平滑模式或者傳統模式,將在每次列印時產生縮時錄影影片。列印完每層後," +"將用內建相機拍攝快照。列印完成後,所有這些快照會組合成一個延時影片。如果啟用" +"平滑模式,列印完每層後,工具頭將移動到吐料槽,然後拍攝快照。由於平滑模式在拍" +"攝快照的過程中熔融的線材可能會從噴嘴中洩漏,因此需要使用擦拭塔進行噴嘴擦拭。" + +msgid "Traditional" +msgstr "傳統模式" + +msgid "Temperature variation" +msgstr "軟化溫度" + +msgid "Start G-code" +msgstr "起始 G-code" + +msgid "Start G-code when start the whole printing" +msgstr "整個列印開始前的起始 G-code" + +msgid "Start G-code when start the printing of this filament" +msgstr "開始使用這個線材列印的起始 G-code" + +msgid "Single Extruder Multi Material" +msgstr "單擠出機多線材" + +msgid "Use single nozzle to print multi filament" +msgstr "使用單噴嘴列印多線材" + +msgid "Manual Filament Change" +msgstr "手動更換線材" + +msgid "" +"Enable this option to omit the custom Change filament G-code only at the " +"beginning of the print. The tool change command (e.g., T0) will be skipped " +"throughout the entire print. This is useful for manual multi-material " +"printing, where we use M600/PAUSE to trigger the manual filament change " +"action." +msgstr "" + +msgid "Purge in prime tower" +msgstr "沖刷進擦拭塔" + +msgid "Purge remaining filament into prime tower" +msgstr "沖刷剩餘的線材進入擦拭塔" + +msgid "Enable filament ramming" +msgstr "啟用線材尖端成型" + +msgid "No sparse layers (beta)" +msgstr "" + +msgid "" +"If enabled, the wipe tower will not be printed on layers with no " +"toolchanges. On layers with a toolchange, extruder will travel downward to " +"print the wipe tower. User is responsible for ensuring there is no collision " +"with the print." +msgstr "" +"如果啟用,將不會在沒有換色的層列印擦拭塔。存在換色的層時,擠出機將降低高度打" +"印擦拭塔。使用者應該確保不會與列印物件發生衝突。" + +msgid "Prime all printing extruders" +msgstr "所有擠出機畫線" + +msgid "" +"If enabled, all printing extruders will be primed at the front edge of the " +"print bed at the start of the print." +msgstr "如果啟用,所有擠出機將在列印開始時在列印板前方畫線" + +msgid "Slice gap closing radius" +msgstr "切片間隙閉合半徑" + +msgid "" +"Cracks smaller than 2x gap closing radius are being filled during the " +"triangle mesh slicing. The gap closing operation may reduce the final print " +"resolution, therefore it is advisable to keep the value reasonably low." +msgstr "" +"在三角形網格切片過程中,小於2倍間隙閉合半徑的裂紋將被填充。間隙閉合操作可能會" +"降低最終列印解析度,因此建議降值保持在合理的較低水準" + +msgid "Slicing Mode" +msgstr "切片模式" + +msgid "" +"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to " +"close all holes in the model." +msgstr "" +"對 3DLabPrint 的飛機模型使用 \"奇偶\"。使用 \"閉孔 \"來關閉模型上的所有孔。" + +msgid "Regular" +msgstr "常規" + +msgid "Even-odd" +msgstr "奇偶" + +msgid "Close holes" +msgstr "閉孔" + +#, fuzzy +msgid "Z offset" +msgstr "Z 軸偏移(Z offset)" + +msgid "" +"This value will be added (or subtracted) from all the Z coordinates in the " +"output G-code. It is used to compensate for bad Z endstop position: for " +"example, if your endstop zero actually leaves the nozzle 0.3mm far from the " +"print bed, set this to -0.3 (or fix your endstop)." +msgstr "" +"該設定值將從輸出 G-code 中的所有 Z 座標增加(或 減少)。 它用於 Z 軸限位器位" +"置的補償:例如,您的 Z 軸限位器實際上使噴嘴距離列印板高了 0.3 mm,請將其設定" +"為 -0.3。" + +msgid "Enable support" +msgstr "開啟支撐" + +msgid "Enable support generation." +msgstr "開啟支撐產生。" + +msgid "" +"normal(auto) and tree(auto) is used to generate support automatically. If " +"normal(manual) or tree(manual) is selected, only support enforcers are " +"generated" +msgstr "" +"普通(自動)和樹狀(自動)用於自動產生支撐體。如果選擇普通(手動)或樹狀(手" +"動),僅會在支撐強制面上產生支撐。" + +#, fuzzy +msgid "normal(auto)" +msgstr "普通(自動)" + +#, fuzzy +msgid "tree(auto)" +msgstr "樹狀(自動)" + +#, fuzzy +msgid "normal(manual)" +msgstr "普通(手動)" + +#, fuzzy +msgid "tree(manual)" +msgstr "樹狀(手動)" + +msgid "Support/object xy distance" +msgstr "支撐/模型 xy 間距" + +msgid "XY separation between an object and its support" +msgstr "模型和支撐之間 XY 分離距離" + +msgid "Pattern angle" +msgstr "模式角度" + +#, fuzzy +msgid "Use this setting to rotate the support pattern on the horizontal plane." +msgstr "設定支撐圖案在水平面的旋轉角度。" + +msgid "On build plate only" +msgstr "僅在列印板產生" + +msgid "Don't create support on model surface, only on build plate" +msgstr "不在模型表面上產生支撐,只在列印板上產生。" + +msgid "Support critical regions only" +msgstr "僅支撐關鍵區域" + +msgid "" +"Only create support for critical regions including sharp tail, cantilever, " +"etc." +msgstr "僅對關鍵區域產生支撐,包括尖尾、懸臂等。" + +msgid "Remove small overhangs" +msgstr "移除小懸空" + +msgid "Remove small overhangs that possibly need no supports." +msgstr "移除可能並不需要支撐的小懸空。" + +msgid "Top Z distance" +msgstr "頂部Z距離" + +msgid "The z gap between the top support interface and object" +msgstr "支撐頂部和模型之間的z間隙" + +msgid "Bottom Z distance" +msgstr "底部Z距離" + +msgid "The z gap between the bottom support interface and object" +msgstr "支撐產生於模型表面時,支撐面底部和模型之間的z間隙" + +msgid "Support/raft base" +msgstr "支撐/筏層主體" + +#, fuzzy +msgid "" +"Filament to print support base and raft. \"Default\" means no specific " +"filament for support and current filament is used" +msgstr "列印支撐主體和筏層的線材。\"預設\"代表不指定特定的線材,並使用目前線材" + +msgid "Avoid interface filament for base" +msgstr "" + +msgid "" +"Avoid using support interface filament to print support base if possible." +msgstr "" + +msgid "" +"Line width of support. If expressed as a %, it will be computed over the " +"nozzle diameter." +msgstr "支撐的線寬。如果以 % 表示,它將以噴嘴直徑為基準來計算。" + +msgid "Interface use loop pattern" +msgstr "接觸面採用圈形走線。" + +msgid "" +"Cover the top contact layer of the supports with loops. Disabled by default." +msgstr "使用圈形走線覆蓋頂部接觸面。預設關閉。" + +msgid "Support/raft interface" +msgstr "支撐/筏層界面" + +#, fuzzy +msgid "" +"Filament to print support interface. \"Default\" means no specific filament " +"for support interface and current filament is used" +msgstr "列印支撐接觸面的線材。\"預設\"代表不指定特定的線材,並使用目前線材" + +msgid "Top interface layers" +msgstr "頂部接觸面層數" + +msgid "Number of top interface layers" +msgstr "頂部接觸面層數" + +msgid "Bottom interface layers" +msgstr "底部接觸面層數" + +msgid "Number of bottom interface layers" +msgstr "" + +msgid "Same as top" +msgstr "與頂部相同" + +msgid "Top interface spacing" +msgstr "頂部接觸面線距" + +msgid "Spacing of interface lines. Zero means solid interface" +msgstr "接觸面的線距。0 代表實心接觸面。" + +msgid "Bottom interface spacing" +msgstr "底部接觸面線距" + +msgid "Spacing of bottom interface lines. Zero means solid interface" +msgstr "底部接觸面走線的線距。0 表示實心接觸面。" + +msgid "Speed of support interface" +msgstr "支撐面速度" + +msgid "Base pattern" +msgstr "支撐主體圖案" + +msgid "Line pattern of support" +msgstr "支撐走線圖案" + +msgid "Rectilinear grid" +msgstr "直線網格" + +msgid "Hollow" +msgstr "空心" + +msgid "Interface pattern" +msgstr "支撐面圖案" + +msgid "" +"Line pattern of support interface. Default pattern for non-soluble support " +"interface is Rectilinear, while default pattern for soluble support " +"interface is Concentric" +msgstr "" +"支撐接觸面的走線圖案。非可溶支撐接觸面的預設圖案為直線,可溶支撐接觸面的預設" +"圖案為同心。" + +msgid "Rectilinear Interlaced" +msgstr "交疊的直線" + +msgid "Base pattern spacing" +msgstr "主體圖案線距" + +msgid "Spacing between support lines" +msgstr "支撐線距" + +msgid "Normal Support expansion" +msgstr "普通支撐延伸" + +msgid "Expand (+) or shrink (-) the horizontal span of normal support" +msgstr "在水平方向對普通支撐進行延伸(+)或收縮(-)" + +msgid "Speed of support" +msgstr "支撐列印速度" + +msgid "" +"Style and shape of the support. For normal support, projecting the supports " +"into a regular grid will create more stable supports (default), while snug " +"support towers will save material and reduce object scarring.\n" +"For tree support, slim and organic style will merge branches more " +"aggressively and save a lot of material (default organic), while hybrid " +"style will create similar structure to normal support under large flat " +"overhangs." +msgstr "" +"支撐的樣式和形狀。 對於普通支撐,將支撐投影到網格中將創建更穩定的支撐(預" +"設),而緊貼的支撐塔將節省材料並減少物體表面的痕跡。\n" +"對於樹狀支撐,細長和有機風格將更積極地合併樹枝並節省大量材料(預設有機),而" +"混合風格將在大平面懸空下建立與正常支撐類似的結構。" + +msgid "Snug" +msgstr "緊貼" + +msgid "Tree Slim" +msgstr "苗條樹" + +msgid "Tree Strong" +msgstr "粗壯樹" + +msgid "Tree Hybrid" +msgstr "混合樹" + +msgid "Organic" +msgstr "有機樹" + +msgid "Independent support layer height" +msgstr "支撐獨立層高" + +#, fuzzy +msgid "" +"Support layer uses layer height independent with object layer. This is to " +"support customizing z-gap and save print time.This option will be invalid " +"when the prime tower is enabled." +msgstr "" +"支撐層使用與物件層獨立的層高。這是為了支援自訂 Z間隙(z-gap)並且節省列印時" +"間。當擦拭塔被啟用時,這個選項將無效。" + +msgid "Threshold angle" +msgstr "臨界值角度" + +#, fuzzy +msgid "" +"Support will be generated for overhangs whose slope angle is below the " +"threshold." +msgstr "將會為懸空角度低於臨界值的模型表面產生支撐。" + +msgid "Tree support branch angle" +msgstr "樹狀支撐分支角度" + +#, fuzzy +msgid "" +"This setting determines the maximum overhang angle that t he branches of " +"tree support allowed to make.If the angle is increased, the branches can be " +"printed more horizontally, allowing them to reach farther." +msgstr "" +"此設定確定了允許樹狀支撐的最大懸垂角度。如果角度增加,可以更水平地列印分支," +"使它們可以到達更遠的地方。" + +#, fuzzy +msgid "Preferred Branch Angle" +msgstr "偏好樹狀分支角度" + +#. TRN PrintSettings: "Organic supports" > "Preferred Branch Angle" +#, fuzzy +msgid "" +"The preferred angle of the branches, when they do not have to avoid the " +"model. Use a lower angle to make them more vertical and more stable. Use a " +"higher angle for branches to merge faster." +msgstr "" +"樹狀分支的偏好角度,當它們不必避開模型時。 使用較低的角度使它們更垂直且更穩" +"定。 使用更高的角度使分支合併得更快。" + +msgid "Tree support branch distance" +msgstr "樹狀支撐分支距離" + +#, fuzzy +msgid "" +"This setting determines the distance between neighboring tree support nodes." +msgstr "此設定確定了樹狀支撐的相鄰節點之間的距離。" + +msgid "Branch Density" +msgstr "樹狀分支密度" + +#. TRN PrintSettings: "Organic supports" > "Branch Density" +msgid "" +"Adjusts the density of the support structure used to generate the tips of " +"the branches. A higher value results in better overhangs but the supports " +"are harder to remove, thus it is recommended to enable top support " +"interfaces instead of a high branch density value if dense interfaces are " +"needed." +msgstr "" +"用於調整產生樹狀支撐結構的密度。 較高的值會產生更好的懸空,但支撐更難移除,因" +"此如果需要密集的支撐,建議啟用頂部支撐而不是高分支密度值。" + +msgid "Adaptive layer height" +msgstr "自適應層高" + +msgid "" +"Enabling this option means the height of tree support layer except the " +"first will be automatically calculated " +msgstr "啟用此選項將自動計算(除第一層外)樹狀支撐的層高。" + +msgid "Auto brim width" +msgstr "自動 brim(裙邊)寬度" + +msgid "" +"Enabling this option means the width of the brim for tree support will be " +"automatically calculated" +msgstr "啟用此選項意味著樹狀支撐的裙邊寬度將自動計算自動計算" + +msgid "Tree support brim width" +msgstr "樹狀支撐brim(裙邊)寬度" + +msgid "Distance from tree branch to the outermost brim line" +msgstr "從樹狀支撐分支到最外層brim(裙邊)線的距離" + +msgid "Tip Diameter" +msgstr "末端直徑" + +#. TRN PrintSettings: "Organic supports" > "Tip Diameter" +msgid "Branch tip diameter for organic supports." +msgstr "有機樹狀支撐的分支末端直徑。" + +msgid "Tree support branch diameter" +msgstr "樹狀支撐分支直徑" + +#, fuzzy +msgid "This setting determines the initial diameter of support nodes." +msgstr "此設定確定了樹狀支撐節點的初始直徑。" + +#. TRN PrintSettings: #lmFIXME +msgid "Branch Diameter Angle" +msgstr "分支直徑角度" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter Angle" +msgid "" +"The angle of the branches' diameter as they gradually become thicker towards " +"the bottom. An angle of 0 will cause the branches to have uniform thickness " +"over their length. A bit of an angle can increase stability of the organic " +"support." +msgstr "" +"樹狀分支直徑隨著向底部逐漸變粗的角度。 0 角度將導致分支在其長度上具有均勻的厚" +"度。 一點角度可以增加有機樹支撐的穩定性。" + +#, fuzzy +msgid "Branch Diameter with double walls" +msgstr "分支直徑雙層牆" + +#. TRN PrintSettings: "Organic supports" > "Branch Diameter" +msgid "" +"Branches with area larger than the area of a circle of this diameter will be " +"printed with double walls for stability. Set this value to zero for no " +"double walls." +msgstr "" +"該數值大於以分支直徑得到的圓形面積時,將列印雙層牆以確保穩定性。 如果不使用雙" +"層牆體,請將此值設為 0。" + +msgid "Support wall loops" +msgstr "" + +msgid "This setting specify the count of walls around support" +msgstr "" + +msgid "Tree support with infill" +msgstr "樹狀支撐產生填充" + +#, fuzzy +msgid "" +"This setting specifies whether to add infill inside large hollows of tree " +"support" +msgstr "此設定決定是否為樹狀支撐內部的空間產生填充。" + +msgid "Activate temperature control" +msgstr "啟動溫度控制" + +#, fuzzy +msgid "" +"Enable this option for chamber temperature control. An M191 command will be " +"added before \"machine_start_gcode\"\n" +"G-code commands: M141/M191 S(0-255)" +msgstr "" +"啟用此選項以控製列印設備內部溫度。 在「machine_start_gcode」之前將會新增一個" +"M191指令\n" +"G碼指令:M141/M191 S(0-255)" + +msgid "Chamber temperature" +msgstr "機箱溫度" + +msgid "" +"Higher chamber temperature can help suppress or reduce warping and " +"potentially lead to higher interlayer bonding strength for high temperature " +"materials like ABS, ASA, PC, PA and so on.At the same time, the air " +"filtration of ABS and ASA will get worse.While for PLA, PETG, TPU, PVA and " +"other low temperature materials,the actual chamber temperature should not be " +"high to avoid cloggings, so 0 which stands for turning off is highly " +"recommended" +msgstr "" + +msgid "Nozzle temperature for layers after the initial one" +msgstr "除首層外的其它層的噴嘴溫度" + +msgid "Detect thin wall" +msgstr "檢查薄壁" + +msgid "" +"Detect thin wall which can't contain two line width. And use single line to " +"print. Maybe printed not very well, because it's not closed loop" +msgstr "" +"檢查無法容納兩條走線的薄壁。使用單條走線列印。可能會打地不是很好,因為走線不" +"再閉合。" + +msgid "" +"This gcode is inserted when change filament, including T command to trigger " +"tool change" +msgstr "換料時插入的G-code,包括T命令。" + +msgid "This gcode is inserted when the extrusion role is changed" +msgstr "" + +msgid "" +"Line width for top surfaces. If expressed as a %, it will be computed over " +"the nozzle diameter." +msgstr "頂面的線寬。如果以%表示,它將以噴嘴直徑為基準來計算。" + +msgid "Speed of top surface infill which is solid" +msgstr "頂面實心填充的速度" + +msgid "Top shell layers" +msgstr "頂部殼體層數" + +msgid "" +"This is the number of solid layers of top shell, including the top surface " +"layer. When the thickness calculated by this value is thinner than top shell " +"thickness, the top shell layers will be increased" +msgstr "" +"頂部殼體實心層層數,包括頂面。當由該層數計算的厚度小於頂部殼體厚度,切片時會" +"增加頂部殼體的層數" + +msgid "Top solid layers" +msgstr "頂部殼體層數" + +msgid "Top shell thickness" +msgstr "頂部殼體厚度" + +#, fuzzy +msgid "" +"The number of top solid layers is increased when slicing if the thickness " +"calculated by top shell layers is thinner than this value. This can avoid " +"having too thin shell when layer height is small. 0 means that this setting " +"is disabled and thickness of top shell is absolutely determained by top " +"shell layers" +msgstr "" +"如果由頂部殼體層數算出的厚度小於這個數值,那麼切片時將自動增加頂部殼體層數。" +"這能夠避免當層高很小時,頂部殼體過薄。0 表示關閉這個設定,同時頂部殼體的厚度" +"完全由頂部殼體層數決定" + +msgid "Speed of travel which is faster and without extrusion" +msgstr "空駛的速度。空駛是無擠出量的快速移動。" + +msgid "Wipe while retracting" +msgstr "回抽時擦拭" + +msgid "" +"Move nozzle along the last extrusion path when retracting to clean leaked " +"material on nozzle. This can minimize blob when print new part after travel" +msgstr "" +"當回抽時,讓噴嘴沿著前面的走線方向繼續移動,清除掉噴嘴上的漏料。這能夠避免空" +"駛結束列印新的區域時產生斑點。" + +msgid "Wipe Distance" +msgstr "擦拭距離" + +msgid "" +"Discribe how long the nozzle will move along the last path when " +"retracting. \n" +"\n" +"Depending on how long the wipe operation lasts, how fast and long the " +"extruder/filament retraction settings are, a retraction move may be needed " +"to retract the remaining filament. \n" +"\n" +"Setting a value in the retract amount before wipe setting below will perform " +"any excess retraction before the wipe, else it will be performed after." +msgstr "" + +msgid "" +"The wiping tower can be used to clean up the residue on the nozzle and " +"stabilize the chamber pressure inside the nozzle, in order to avoid " +"appearance defects when printing objects." +msgstr "" +"擦拭塔可以用來清理噴嘴上的殘留料和讓噴嘴內部的腔壓達到穩定狀態,以避免列印物" +"體時出現外觀瑕疵。" + +msgid "Purging volumes" +msgstr "沖刷體積" + +msgid "Flush multiplier" +msgstr "沖刷量乘數" + +msgid "" +"The actual flushing volumes is equal to the flush multiplier multiplied by " +"the flushing volumes in the table." +msgstr "實際沖刷量等於沖刷量乘數乘以表格單元中的沖刷量" + +msgid "Prime volume" +msgstr "清理量" + +msgid "The volume of material to prime extruder on tower." +msgstr "擦拭塔上的清理量" + +msgid "Width of prime tower" +msgstr "擦拭塔寬度" + +msgid "Wipe tower rotation angle" +msgstr "擦拭塔旋轉角度" + +msgid "Wipe tower rotation angle with respect to x-axis." +msgstr "擦拭塔相對於 x 軸的旋轉角度。" + +msgid "Stabilization cone apex angle" +msgstr "穩定錐形頂角" + +msgid "" +"Angle at the apex of the cone that is used to stabilize the wipe tower. " +"Larger angle means wider base." +msgstr "圓錐體頂點處的角度,用於穩定擦拭塔。 更大的角度意味著更寬的底座。" + +msgid "Wipe tower purge lines spacing" +msgstr "擦拭塔線距" + +msgid "Spacing of purge lines on the wipe tower." +msgstr "擦拭塔上的線距。" + +msgid "Maximum wipe tower print speed" +msgstr "" + +msgid "" +"The maximum print speed when purging in the wipe tower and printing the wipe " +"tower sparse layers. When purging, if the sparse infill speed or calculated " +"speed from the filament max volumetric speed is lower, the lowest will be " +"used instead.\n" +"\n" +"When printing the sparse layers, if the internal perimeter speed or " +"calculated speed from the filament max volumetric speed is lower, the lowest " +"will be used instead.\n" +"\n" +"Increasing this speed may affect the tower's stability as well as increase " +"the force with which the nozzle collides with any blobs that may have formed " +"on the wipe tower.\n" +"\n" +"Before increasing this parameter beyond the default of 90mm/sec, make sure " +"your printer can reliably bridge at the increased speeds and that ooze when " +"tool changing is well controlled.\n" +"\n" +"For the wipe tower external perimeters the internal perimeter speed is used " +"regardless of this setting." +msgstr "" + +msgid "Wipe tower extruder" +msgstr "擦拭塔擠出機" + +msgid "" +"The extruder to use when printing perimeter of the wipe tower. Set to 0 to " +"use the one that is available (non-soluble would be preferred)." +msgstr "" +"列印擦拭塔周長時使用的擠出機。設置為 0 將使用唯一的擠出機(盡量使用不可溶的材" +"料)。" + +#, fuzzy +msgid "Purging volumes - load/unload volumes" +msgstr "清理量 - 進料/退料 量" + +msgid "" +"This vector saves required volumes to change from/to each tool used on the " +"wipe tower. These values are used to simplify creation of the full purging " +"volumes below." +msgstr "" +"可保存所需的體積,用於更改每個擦拭塔上工具所使用的 from/to 體積 。這些值用於" +"簡化完全沖刷體積的建立。" + +#, fuzzy +msgid "" +"Purging after filament change will be done inside objects' infills. This may " +"lower the amount of waste and decrease the print time. If the walls are " +"printed with transparent filament, the mixed color infill will be seen " +"outside. It will not take effect, unless the prime tower is enabled." +msgstr "" +"多色列印換色後的廢料會被用來列印物件的填充。這樣可以減少線材浪費和縮短列印時" +"間,但是如果物件的內外牆是採用透明線材列印的,則可以從模型外觀上看到內部的混" +"色廢料。該功能只有在啟用擦拭塔的時候才生效。" + +#, fuzzy +msgid "" +"Purging after filament change will be done inside objects' support. This may " +"lower the amount of waste and decrease the print time. It will not take " +"effect, unless the prime tower is enabled." +msgstr "" +"多色列印換色後的廢料會被用來列印物件的支撐。這樣可以減少線材浪費和縮短列印時" +"間。該功能只有在啟用擦拭塔的時候才生效。" + +#, fuzzy +msgid "" +"This object will be used to purge the nozzle after a filament change to save " +"filament and decrease the print time. Colours of the objects will be mixed " +"as a result. It will not take effect, unless the prime tower is enabled." +msgstr "" +"多色列印換色後的廢料會被用來列印這個物件。這樣可以減少線材浪費和縮短列印時" +"間,但是這個物件的外觀會是混色的。該功能只有在啟用擦拭塔的時候才生效。" + +msgid "Maximal bridging distance" +msgstr "最大橋接距離" + +msgid "Maximal distance between supports on sparse infill sections." +msgstr "稀疏填充截面上的支撐之間的最大距離。" + +msgid "X-Y hole compensation" +msgstr "X-Y 孔洞尺寸補償" + +msgid "" +"Holes of object will be grown or shrunk in XY plane by the configured value. " +"Positive value makes holes bigger. Negative value makes holes smaller. This " +"function is used to adjust size slightly when the object has assembling issue" +msgstr "" +"垂直的孔洞的尺寸將在X-Y方向收縮或拓展特定值。正值代表擴大孔洞。負值代表縮小孔" +"洞。這個功能通常在模型有裝配問題時微調尺寸" + +msgid "X-Y contour compensation" +msgstr "X-Y 外輪廓尺寸補償" + +msgid "" +"Contour of object will be grown or shrunk in XY plane by the configured " +"value. Positive value makes contour bigger. Negative value makes contour " +"smaller. This function is used to adjust size slightly when the object has " +"assembling issue" +msgstr "" +"模型外輪廓的尺寸將在X-Y方向收縮或拓展特定值。正值代表擴大。負值代表縮小。這個" +"功能通常在模型有裝配問題時微調尺寸" + +msgid "Convert holes to polyholes" +msgstr "將圓孔轉換為多邊形孔" + +msgid "" +"Search for almost-circular holes that span more than one layer and convert " +"the geometry to polyholes. Use the nozzle size and the (biggest) diameter to " +"compute the polyhole.\n" +"See http://hydraraptor.blogspot.com/2011/02/polyholes.html" +msgstr "" +"搜索跨越多層的近似圓形孔,並將幾何形狀轉換為多邊形孔。使用噴嘴尺寸和(最大)" +"直徑來計算多邊形孔。\n" +"參見http://hydraraptor.blogspot.com/2011/02/polyholes.html" + +msgid "Polyhole detection margin" +msgstr "偵測多邊形孔邊緣" + +#, no-c-format, no-boost-format +msgid "" +"Maximum defection of a point to the estimated radius of the circle.\n" +"As cylinders are often exported as triangles of varying size, points may not " +"be on the circle circumference. This setting allows you some leway to " +"broaden the detection.\n" +"In mm or in % of the radius." +msgstr "" +"點到圓半徑的最大偏差。\n" +"由於圓柱體通常被導出為大小不同的三角形,因此點可能不在圓周上。\n" +"此設定允許有一些餘地來擴大偵測範圍。\n" +"以 mm 或半徑的百分比 %% 表示。" + +msgid "Polyhole twist" +msgstr "扭曲多邊形孔" + +msgid "Rotate the polyhole every layer." +msgstr "依層旋轉多邊形孔" + +#, fuzzy +msgid "G-code thumbnails" +msgstr "G-code 縮圖尺寸" + +msgid "" +"Picture sizes to be stored into a .gcode and .sl1 / .sl1s files, in the " +"following format: \"XxY, XxY, ...\"" +msgstr "" +"將被儲存到 .gcode 和 .sl1/.sl1s 檔案中圖片尺寸,格式如下:\"XxY, XxY, ...\"" + +msgid "Format of G-code thumbnails" +msgstr "G-code 縮圖的格式" + +msgid "" +"Format of G-code thumbnails: PNG for best quality, JPG for smallest size, " +"QOI for low memory firmware" +msgstr "G-code 縮圖的格式:PNG 品質最佳,JPG 檔案最小,QOI 最低記憶體韌體" + +msgid "Use relative E distances" +msgstr "使用相對 E 距離" + +msgid "" +"Relative extrusion is recommended when using \"label_objects\" option.Some " +"extruders work better with this option unckecked (absolute extrusion mode). " +"Wipe tower is only compatible with relative mode. It is recommended on most " +"printers. Default is checked" +msgstr "" + +msgid "" +"Classic wall generator produces walls with constant extrusion width and for " +"very thin areas is used gap-fill. Arachne engine produces walls with " +"variable extrusion width" +msgstr "" +"經典牆產生器產生的牆走線具有一致的擠出寬度,對狹窄區域使用填縫。Arachne 引擎" +"則產生變線寬的牆走線" + +msgid "Classic" +msgstr "經典" + +msgid "Arachne" +msgstr "Arachne" + +msgid "Wall transition length" +msgstr "牆過渡長度" + +msgid "" +"When transitioning between different numbers of walls as the part becomes " +"thinner, a certain amount of space is allotted to split or join the wall " +"segments. It's expressed as a percentage over nozzle diameter" +msgstr "" +"當零件逐漸變薄導致牆的層數發生變化時,需要在過渡段分配一定的空間來分割和連接" +"牆走線。參數值表示為相對於噴嘴直徑的百分比" + +msgid "Wall transitioning filter margin" +msgstr "牆過渡過濾間距" + +msgid "" +"Prevent transitioning back and forth between one extra wall and one less. " +"This margin extends the range of extrusion widths which follow to [Minimum " +"wall width - margin, 2 * Minimum wall width + margin]. Increasing this " +"margin reduces the number of transitions, which reduces the number of " +"extrusion starts/stops and travel time. However, large extrusion width " +"variation can lead to under- or overextrusion problems. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"防止特定厚度變化規律的局部在多一層牆和少一層牆之間來迴轉換。這個參數將擠壓寬" +"度的範圍擴大到[牆最小寬度-參數值, 2*牆最小寬度+參數值]。增大參數可以減少轉換" +"的次數,從而減少擠出開始/停止和空駛的時間。然而,大的擠出寬度變化會導致過擠出" +"或欠擠出的問題。參數值表示為相對於噴嘴直徑的百分比" + +msgid "Wall transitioning threshold angle" +msgstr "牆過渡臨界值角度" + +msgid "" +"When to create transitions between even and odd numbers of walls. A wedge " +"shape with an angle greater than this setting will not have transitions and " +"no walls will be printed in the center to fill the remaining space. Reducing " +"this setting reduces the number and length of these center walls, but may " +"leave gaps or overextrude" +msgstr "" +"何時在偶數和奇數牆層數之間創建過渡段。角度大於這個臨界值的楔形將不創建過渡" +"段,並且不會在楔形中心列印牆走線以填補剩餘空間。減小這個數值能減少中心牆走線" +"的數量和長度,但可能會導致間隙或者過擠出" + +msgid "Wall distribution count" +msgstr "牆分布計數" + +msgid "" +"The number of walls, counted from the center, over which the variation needs " +"to be spread. Lower values mean that the outer walls don't change in width" +msgstr "" +"從中心開始計算的牆層數,線寬變化需要分布在這些牆走線上。較低的數值意味著外牆" +"寬度更不易被改變" + +msgid "Minimum feature size" +msgstr "最小特徵尺寸" + +msgid "" +"Minimum thickness of thin features. Model features that are thinner than " +"this value will not be printed, while features thicker than the Minimum " +"feature size will be widened to the Minimum wall width. It's expressed as a " +"percentage over nozzle diameter" +msgstr "" +"薄壁特徵的最小厚度。比這個數值還薄的特徵將不被列印,而比最小特徵厚度還厚的特" +"征將被加寬到牆最小寬度。參數值表示為相對噴嘴直徑的百分比" + +msgid "Minimum wall length" +msgstr "" + +msgid "" +"Adjust this value to prevent short, unclosed walls from being printed, which " +"could increase print time. Higher values remove more and longer walls.\n" +"\n" +"NOTE: Bottom and top surfaces will not be affected by this value to prevent " +"visual gaps on the ouside of the model. Adjust 'One wall threshold' in the " +"Advanced settings below to adjust the sensitivity of what is considered a " +"top-surface. 'One wall threshold' is only visibile if this setting is set " +"above the default value of 0.5, or if single-wall top surfaces is enabled." +msgstr "" + +msgid "First layer minimum wall width" +msgstr "首層牆最小線寬" + +msgid "" +"The minimum wall width that should be used for the first layer is " +"recommended to be set to the same size as the nozzle. This adjustment is " +"expected to enhance adhesion." +msgstr "" +"應用於首層的牆最小線寬,建議設定與噴嘴尺寸相同。這種調整有助於增強附著力。" + +msgid "Minimum wall width" +msgstr "牆最小線寬" + +msgid "" +"Width of the wall that will replace thin features (according to the Minimum " +"feature size) of the model. If the Minimum wall width is thinner than the " +"thickness of the feature, the wall will become as thick as the feature " +"itself. It's expressed as a percentage over nozzle diameter" +msgstr "" +"用於替換模型細小特徵(根據最小特徵尺寸)的牆線寬。如果牆最小線寬小於最小特徵" +"的厚度,則牆將變得和特徵本身一樣厚。參數值表示為相對噴嘴直徑的百分比" + +msgid "Detect narrow internal solid infill" +msgstr "識別狹窄內部實心填充" + +msgid "" +"This option will auto detect narrow internal solid infill area. If enabled, " +"concentric pattern will be used for the area to speed printing up. " +"Otherwise, rectilinear pattern is used defaultly." +msgstr "" +"此選項用於自動識別內部狹窄的實心填充。開啟後,將對狹窄實心區域使用同心填充加" +"快列印速度。否則使用預設的直線填充。" + +#, fuzzy +msgid "invalid value " +msgstr "無效值" + +#, fuzzy +msgid "Invalid value when spiral vase mode is enabled: " +msgstr "花瓶模式時無效值:" + +msgid "too large line width " +msgstr "線寬過大" + +msgid " not in range " +msgstr " 不在合理的區間" + +msgid "Minimum save" +msgstr "" + +msgid "export 3mf with minimum size." +msgstr "匯出最小尺寸的 3mf。" + +msgid "No check" +msgstr "不檢查" + +#, fuzzy +msgid "Do not run any validity checks, such as gcode path conflicts check." +msgstr "不要執行任何有效性檢查,如 G-code 路徑衝突檢查。" + +msgid "Ensure on bed" +msgstr "確認在列印板上" + +msgid "" +"Lift the object above the bed when it is partially below. Disabled by default" +msgstr "當物件部分位於列印板的下方時,將其提升到列印板的上方。預設情況下禁用" + +msgid "Orient Options" +msgstr "" + +msgid "Orient options: 0-disable, 1-enable, others-auto" +msgstr "" + +msgid "Rotation angle around the Z axis in degrees." +msgstr "繞 Z 軸的旋轉角度(以度為單位)。" + +msgid "Rotate around Y" +msgstr "繞 Y 旋轉" + +msgid "Rotation angle around the Y axis in degrees." +msgstr "繞 Y 軸的旋轉角度(以度為單位)" + +#, fuzzy +msgid "Data directory" +msgstr "檔案路徑" + +#, fuzzy +msgid "" +"Load and store settings at the given directory. This is useful for " +"maintaining different profiles or including configurations from a network " +"storage." +msgstr "" +"指定目錄用以載入或儲存設定檔。 這對於維護不同的設定檔或包含來自網路儲存的設定" +"檔非常有用。" + +msgid "Load custom gcode" +msgstr "載入自訂 G-code" + +msgid "Load custom gcode from json" +msgstr "從 json 載入自訂 gcode" + +msgid "Current z-hop" +msgstr "" + +msgid "Contains z-hop present at the beginning of the custom G-code block." +msgstr "" + +msgid "" +"Position of the extruder at the beginning of the custom G-code block. If the " +"custom G-code travels somewhere else, it should write to this variable so " +"PrusaSlicer knows where it travels from when it gets control back." +msgstr "" + +msgid "" +"Retraction state at the beginning of the custom G-code block. If the custom " +"G-code moves the extruder axis, it should write to this variable so " +"PrusaSlicer deretracts correctly when it gets control back." +msgstr "" + +msgid "Extra deretraction" +msgstr "" + +msgid "Currently planned extra extruder priming after deretraction." +msgstr "" + +msgid "Current extruder" +msgstr "" + +msgid "Zero-based index of currently used extruder." +msgstr "" + +msgid "Current object index" +msgstr "" + +msgid "" +"Specific for sequential printing. Zero-based index of currently printed " +"object." +msgstr "" + +msgid "Has wipe tower" +msgstr "" + +msgid "Whether or not wipe tower is being generated in the print." +msgstr "" + +msgid "Initial extruder" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_tool." +msgstr "" + +msgid "Initial tool" +msgstr "" + +msgid "" +"Zero-based index of the first extruder used in the print. Same as " +"initial_extruder." +msgstr "" + +msgid "Is extruder used?" +msgstr "" + +msgid "Vector of bools stating whether a given extruder is used in the print." +msgstr "" + +msgid "Volume per extruder" +msgstr "" + +msgid "Total filament volume extruded per extruder during the entire print." +msgstr "" + +msgid "Total toolchanges" +msgstr "" + +msgid "Number of toolchanges during the print." +msgstr "" + +msgid "Total volume" +msgstr "" + +msgid "Total volume of filament used during the entire print." +msgstr "" + +msgid "Weight per extruder" +msgstr "" + +msgid "" +"Weight per extruder extruded during the entire print. Calculated from " +"filament_density value in Filament Settings." +msgstr "" + +msgid "Total weight" +msgstr "" + +msgid "" +"Total weight of the print. Calculated from filament_density value in " +"Filament Settings." +msgstr "" + +msgid "Total layer count" +msgstr "" + +msgid "Number of layers in the entire print." +msgstr "" + +msgid "Number of objects" +msgstr "" + +msgid "Total number of objects in the print." +msgstr "" + +msgid "Number of instances" +msgstr "" + +msgid "Total number of object instances in the print, summed over all objects." +msgstr "" + +msgid "Scale per object" +msgstr "" + +msgid "" +"Contains a string with the information about what scaling was applied to the " +"individual objects. Indexing of the objects is zero-based (first object has " +"index 0).\n" +"Example: 'x:100% y:50% z:100'." +msgstr "" + +msgid "Input filename without extension" +msgstr "" + +msgid "Source filename of the first object, without extension." +msgstr "" + +msgid "" +"The vector has two elements: x and y coordinate of the point. Values in mm." +msgstr "" + +msgid "" +"The vector has two elements: x and y dimension of the bounding box. Values " +"in mm." +msgstr "" + +msgid "First layer convex hull" +msgstr "" + +msgid "" +"Vector of points of the first layer convex hull. Each element has the " +"following format:'[x, y]' (x and y are floating-point numbers in mm)." +msgstr "" + +msgid "Bottom-left corner of first layer bounding box" +msgstr "" + +msgid "Top-right corner of first layer bounding box" +msgstr "" + +msgid "Size of the first layer bounding box" +msgstr "" + +msgid "Bottom-left corner of print bed bounding box" +msgstr "" + +msgid "Top-right corner of print bed bounding box" +msgstr "" + +msgid "Size of the print bed bounding box" +msgstr "" + +msgid "Timestamp" +msgstr "" + +msgid "String containing current time in yyyyMMdd-hhmmss format." +msgstr "" + +msgid "Day" +msgstr "" + +msgid "Hour" +msgstr "" + +msgid "Minute" +msgstr "" + +msgid "Print preset name" +msgstr "" + +msgid "Name of the print preset used for slicing." +msgstr "" + +msgid "Filament preset name" +msgstr "" + +msgid "" +"Names of the filament presets used for slicing. The variable is a vector " +"containing one name for each extruder." +msgstr "" + +msgid "Printer preset name" +msgstr "" + +msgid "Name of the printer preset used for slicing." +msgstr "" + +msgid "Physical printer name" +msgstr "" + +msgid "Name of the physical printer used for slicing." +msgstr "" + +msgid "Layer number" +msgstr "" + +msgid "Index of the current layer. One-based (i.e. first layer is number 1)." +msgstr "" + +msgid "Layer z" +msgstr "" + +msgid "" +"Height of the current layer above the print bed, measured to the top of the " +"layer." +msgstr "" + +msgid "Maximal layer z" +msgstr "" + +msgid "Height of the last layer above the print bed." +msgstr "" + +msgid "Filament extruder ID" +msgstr "" + +msgid "The current extruder ID. The same as current_extruder." +msgstr "" + +#, fuzzy +msgid "Error in zip archive" +msgstr "zip 檔案中存在錯誤" + +msgid "Generating walls" +msgstr "產生內外牆" + +msgid "Generating infill regions" +msgstr "正在產生填充區域" + +msgid "Generating infill toolpath" +msgstr "正在產生填充走線" + +msgid "Detect overhangs for auto-lift" +msgstr "偵測懸空區域為自動抬升做準備" + +msgid "Generating support" +msgstr "正在產生支撐" + +msgid "Checking support necessity" +msgstr "正在檢查支撐必要性" + +msgid "floating regions" +msgstr "浮空區域" + +msgid "floating cantilever" +msgstr "浮空懸臂" + +msgid "large overhangs" +msgstr "大面積懸空" + +#, fuzzy, c-format, boost-format +msgid "" +"It seems object %s has %s. Please re-orient the object or enable support " +"generation." +msgstr "似乎物件 %s 有 %s。請重新調整物件的方向或啟用支撐。" + +msgid "Optimizing toolpath" +msgstr "正在最佳化走線" + +msgid "Slicing mesh" +msgstr "正在切片網格" + +#, fuzzy +msgid "" +"No layers were detected. You might want to repair your STL file(s) or check " +"their size or thickness and retry.\n" +msgstr "" +"沒有偵測到層。您可能需要修復 STL 檔案,或檢查模型尺寸、厚度等,之後再重試。\n" + +#, fuzzy +msgid "" +"An object's XY size compensation will not be used because it is also color-" +"painted.\n" +"XY Size compensation can not be combined with color-painting." +msgstr "" +"物件的 XY 尺寸補償不會生效,因為在此物件上做過上色操作。\n" +"XY 尺寸補償不能與上色功能一起使用。" + +#, fuzzy, c-format, boost-format +msgid "Support: generate toolpath at layer %d" +msgstr "支撐:正在產生 %d 層的走線路徑" + +msgid "Support: detect overhangs" +msgstr "支撐:正在偵測懸空面" + +msgid "Support: generate contact points" +msgstr "支撐:正在產生接觸點" + +msgid "Support: propagate branches" +msgstr "支撐:正在生長樹枝" + +msgid "Support: draw polygons" +msgstr "支撐:正在產生多邊形" + +msgid "Support: generate toolpath" +msgstr "支撐:正在產生走線路徑" + +#, fuzzy, c-format, boost-format +msgid "Support: generate polygons at layer %d" +msgstr "支撐:正在產生 %d 層的多邊形" + +#, fuzzy, c-format, boost-format +msgid "Support: fix holes at layer %d" +msgstr "支撐:正在修補 %d 層的空洞" + +#, fuzzy, c-format, boost-format +msgid "Support: propagate branches at layer %d" +msgstr "支撐:正在生長 %d 層的樹枝" + +#, fuzzy +msgid "" +"Unknown file format. Input file must have .stl, .obj, .amf(.xml) extension." +msgstr "未知的檔案格式。輸入檔案的副檔名必須為 .stl、.obj 或 .amf(.xml)。" + +msgid "Loading of a model file failed." +msgstr "載入模型檔案失敗。" + +msgid "The supplied file couldn't be read because it's empty" +msgstr "無法讀取提供的檔案,因為該檔案為空。" + +#, fuzzy +msgid "Unknown file format. Input file must have .3mf or .zip.amf extension." +msgstr "未知的檔案格式。輸入檔案的副檔名必須為 .3mf 或 .zip .amf。" + +msgid "Canceled" +msgstr "已取消" + +#, fuzzy +msgid "load_obj: failed to parse" +msgstr "載入物件:無法分析" + +msgid "load mtl in obj: failed to parse" +msgstr "" + +#, fuzzy +msgid "The file contains polygons with more than 4 vertices." +msgstr "該檔案包含頂點超過 4 個的多邊形。" + +#, fuzzy +msgid "The file contains polygons with less than 2 vertices." +msgstr "該檔案包含頂點少於 2 個的多邊形。" + +msgid "The file contains invalid vertex index." +msgstr "檔案包含無效的頂點索引。" + +#, fuzzy +msgid "This OBJ file couldn't be read because it's empty." +msgstr "無法讀取此 OBJ 檔案,因為它是空的。" + +msgid "Flow Rate Calibration" +msgstr "流量比例校準" + +msgid "Max Volumetric Speed Calibration" +msgstr "最大體積速度校準" + +msgid "Manage Result" +msgstr "管理結果" + +msgid "Manual Calibration" +msgstr "手動校準" + +msgid "Result can be read by human eyes." +msgstr "結果可由人眼讀取。" + +msgid "Auto-Calibration" +msgstr "自動校準" + +#, fuzzy +msgid "We would use Lidar to read the calibration result" +msgstr "將使用微型雷射雷達來讀取校準結果。" + +msgid "Prev" +msgstr "上一個" + +msgid "Recalibration" +msgstr "重新校準" + +msgid "Calibrate" +msgstr "校準" + +msgid "Finish" +msgstr "完成" + +msgid "How to use calibration result?" +msgstr "如何使用校準結果?" + +msgid "" +"You could change the Flow Dynamics Calibration Factor in material editing" +msgstr "您可以在線材編輯中更改流量動態校準因子。" + +#, fuzzy +msgid "" +"The current firmware version of the printer does not support calibration.\n" +"Please upgrade the printer firmware." +msgstr "" +"列印設備目前的韌體版本不支援校準。\n" +"請升級列印設備韌體。" + +msgid "Calibration not supported" +msgstr "不支援校準" + +msgid "Error desc" +msgstr "錯誤描述" + +msgid "Extra info" +msgstr "額外資訊" + +msgid "Flow Dynamics" +msgstr "動態流量" + +msgid "Flow Rate" +msgstr "流量比例" + +msgid "Max Volumetric Speed" +msgstr "最大體積速度" + +#, fuzzy, c-format, boost-format +msgid "" +"Please input valid values:\n" +"Start value: >= %.1f\n" +"End value: <= %.1f\n" +"End value: > Start value\n" +"Value step: >= %.3f)" +msgstr "" +"請輸入有效值:\n" +"起始值:>= %.1f\n" +"最終值:<= %.1f\n" +"結束值:> 起始值\n" +"步距:>= %.3f)" + +msgid "The name cannot be empty." +msgstr "名稱不能為空。" + +#, c-format, boost-format +msgid "The selected preset: %s is not found." +msgstr "" + +#, fuzzy +msgid "The name cannot be the same as the system preset name." +msgstr "名稱不能與系統預設值名稱相同。" + +#, fuzzy +msgid "The name is the same as another existing preset name" +msgstr "該名稱與另一個現有預設值名稱相同。" + +#, fuzzy +msgid "create new preset failed." +msgstr "新增預設值失敗" + +#, fuzzy +msgid "" +"Are you sure to cancel the current calibration and return to the home page?" +msgstr "您確定要取消目前的校準並返回首頁嗎?" + +#, fuzzy +msgid "No Printer Connected!" +msgstr "沒有連接列印設備!" + +#, fuzzy +msgid "Printer is not connected yet." +msgstr "列印設備尚未連接。" + +msgid "Please select filament to calibrate." +msgstr "請選擇要校準的線材。" + +#, fuzzy +msgid "The input value size must be 3." +msgstr "輸入值大小必須為 3。" + +msgid "" +"This machine type can only hold 16 history results per nozzle. You can " +"delete the existing historical results and then start calibration. Or you " +"can continue the calibration, but you cannot create new calibration " +"historical results. \n" +"Do you still want to continue the calibration?" +msgstr "" + +#, fuzzy +msgid "Connecting to printer..." +msgstr "正在連接列印設備..." + +msgid "The failed test result has been dropped." +msgstr "測試失敗的結果已被刪除。" + +#, fuzzy +msgid "Flow Dynamics Calibration result has been saved to the printer" +msgstr "動態流量校準的結果已儲存至列印設備。" + +#, c-format, boost-format +msgid "" +"There is already a historical calibration result with the same name: %s. " +"Only one of the results with the same name is saved. Are you sure you want " +"to override the historical result?" +msgstr "" + +#, c-format, boost-format +msgid "" +"This machine type can only hold %d history results per nozzle. This result " +"will not be saved." +msgstr "" + +msgid "Internal Error" +msgstr "內部錯誤" + +msgid "Please select at least one filament for calibration" +msgstr "請至少選擇一種線材進行校準。" + +#, fuzzy +msgid "Flow rate calibration result has been saved to preset" +msgstr "流量比例校準結果已儲存到預設值" + +msgid "Max volumetric speed calibration result has been saved to preset" +msgstr "最大體積速度校準結果已儲存到預設值" + +msgid "When do you need Flow Dynamics Calibration" +msgstr "在什麼情況下需要進行動態流量校準" + +#, fuzzy +msgid "" +"We now have added the auto-calibration for different filaments, which is " +"fully automated and the result will be saved into the printer for future " +"use. You only need to do the calibration in the following limited cases:\n" +"1. If you introduce a new filament of different brands/models or the " +"filament is damp;\n" +"2. if the nozzle is worn out or replaced with a new one;\n" +"3. If the max volumetric speed or print temperature is changed in the " +"filament setting." +msgstr "" +"我們現在已經為不同的列印線材新增了自動校準功能,該功能是完全自動化的,並且結" +"果將儲存在列印設備中以供將來使用。您只需要在以下有限情況下進行校準:\n" +"1. 如果您引入了不同品牌/型號的新列印線材,或者列印線材受潮;\n" +"2. 如果噴嘴磨損或更換了新的噴嘴;\n" +"3. 如果您在列印線材設定中更改了最大體積速度或列印溫度。" + +msgid "About this calibration" +msgstr "關於此校準" + +msgid "" +"Please find the details of Flow Dynamics Calibration from our wiki.\n" +"\n" +"Usually the calibration is unnecessary. When you start a single color/" +"material print, with the \"flow dynamics calibration\" option checked in the " +"print start menu, the printer will follow the old way, calibrate the " +"filament before the print; When you start a multi color/material print, the " +"printer will use the default compensation parameter for the filament during " +"every filament switch which will have a good result in most cases.\n" +"\n" +"Please note that there are a few cases that can make the calibration results " +"unreliable, such as insufficient adhesion on the build plate. Improving " +"adhesion can be achieved by washing the build plate or applying glue. For " +"more information on this topic, please refer to our Wiki.\n" +"\n" +"The calibration results have about 10 percent jitter in our test, which may " +"cause the result not exactly the same in each calibration. We are still " +"investigating the root cause to do improvements with new updates." +msgstr "" + +msgid "When to use Flow Rate Calibration" +msgstr "何時使用流量率校準" + +msgid "" +"After using Flow Dynamics Calibration, there might still be some extrusion " +"issues, such as:\n" +"1. Over-Extrusion: Excess material on your printed object, forming blobs or " +"zits, or the layers seem thicker than expected and not uniform.\n" +"2. Under-Extrusion: Very thin layers, weak infill strength, or gaps in the " +"top layer of the model, even when printing slowly.\n" +"3. Poor Surface Quality: The surface of your prints seems rough or uneven.\n" +"4. Weak Structural Integrity: Prints break easily or don't seem as sturdy as " +"they should be." +msgstr "" +"使用流量動態校準後,仍可能出現一些擠出問題,例如:\n" +"1. 過度擠出:列印物體上有過多的線材,形成凸起或小球,或者層次看起來比預期的厚" +"而且不均勻。\n" +"2. 不足擠出:層次非常薄,填充強度不足,或者在緩慢列印時模型頂層有缺陷。\n" +"3. 表面品質差:列印的表面看起來粗糙或不均勻。\n" +"4. 結構穩固性差:列印物件容易斷裂,或者沒有應有的穩固性。" + +#, fuzzy +msgid "" +"In addition, Flow Rate Calibration is crucial for foaming materials like LW-" +"PLA used in RC planes. These materials expand greatly when heated, and " +"calibration provides a useful reference flow rate." +msgstr "" +"此外,對於像用於遙控飛機的輕質發泡 PLA(LW-PLA)這樣的發泡線材,流量率校準非" +"常重要。這些線材在加熱時會大幅膨脹,而校準提供了有用的流量率參考。" + +#, fuzzy +msgid "" +"Flow Rate Calibration measures the ratio of expected to actual extrusion " +"volumes. The default setting works well in Bambu Lab printers and official " +"filaments as they were pre-calibrated and fine-tuned. For a regular " +"filament, you usually won't need to perform a Flow Rate Calibration unless " +"you still see the listed defects after you have done other calibrations. For " +"more details, please check out the wiki article." +msgstr "" +"流量率校準測量預期擠出體積與實際擠出體積之間的比率。預設設定在 Bambu Lab 列印" +"設備和官方線材上表現良好,因為它們已經進行了預先校準和微調。對於普通的線材," +"通常情況下,您不需要執行流量率校準,除非在完成其他校準後仍然看到上述列出的缺" +"陷。如需更多詳細資訊,請查閱 wiki 文章。" + +#, fuzzy +msgid "" +"Auto Flow Rate Calibration utilizes Bambu Lab's Micro-Lidar technology, " +"directly measuring the calibration patterns. However, please be advised that " +"the efficacy and accuracy of this method may be compromised with specific " +"types of materials. Particularly, filaments that are transparent or semi-" +"transparent, sparkling-particled, or have a high-reflective finish may not " +"be suitable for this calibration and can produce less-than-desirable " +"results.\n" +"\n" +"The calibration results may vary between each calibration or filament. We " +"are still improving the accuracy and compatibility of this calibration " +"through firmware updates over time.\n" +"\n" +"Caution: Flow Rate Calibration is an advanced process, to be attempted only " +"by those who fully understand its purpose and implications. Incorrect usage " +"can lead to sub-par prints or printer damage. Please make sure to carefully " +"read and understand the process before doing it." +msgstr "" +"自動流量率校準採用 Bambu Lab 的微型雷射雷達技術,直接測量校準圖案。然而,請注" +"意,這種方法的功效和準確性可能會因特定類型的線材而受影響。特別是透明或半透" +"明、帶有閃光顆粒或具有高反射表面的線材可能不適合這種校準,並可能產生不理想的" +"結果。\n" +"\n" +"校準結果可能因每次校準或線材的不同而有所不同。我們仍在透過韌體更新不斷提高這" +"種校準的準確性和相容性。\n" +"\n" +"注意:流量率校準是一項先進的技術,只有完全理解其目的和影響的人才應嘗試。錯誤" +"的使用可能導致列印品質不佳或損壞列印設備。請確保在執行之前仔細閱讀和理解此過" +"程。" + +msgid "When you need Max Volumetric Speed Calibration" +msgstr "當您需要最大體積速度校準時" + +msgid "Over-extrusion or under extrusion" +msgstr "過度擠壓或擠壓不足" + +msgid "Max Volumetric Speed calibration is recommended when you print with:" +msgstr "使用以下選項列印時,建議進行最大體積速度校準:" + +msgid "material with significant thermal shrinkage/expansion, such as..." +msgstr "具有顯著熱收縮/膨脹的材料,例如..." + +msgid "materials with inaccurate filament diameter" +msgstr "耗材直徑不準確的線材" + +msgid "We found the best Flow Dynamics Calibration Factor" +msgstr "我們找到了最佳的流量動態校準因子。" + +#, fuzzy +msgid "" +"Part of the calibration failed! You may clean the plate and retry. The " +"failed test result would be dropped." +msgstr "部分校準失敗! 您可以清潔列印板並重試。 失敗的測試結果將不會儲存。" + +msgid "" +"*We recommend you to add brand, materia, type, and even humidity level in " +"the Name" +msgstr "*我們建議您在名稱中加入品牌、材料、類型,甚至濕度水平。" + +msgid "Failed" +msgstr "失敗" + +#, fuzzy +msgid "Please enter the name you want to save to printer." +msgstr "請輸入要儲存到列印設備的名稱。" + +msgid "The name cannot exceed 40 characters." +msgstr "名稱不能超過40個字元。" + +msgid "" +"Only one of the results with the same name will be saved. Are you sure you " +"want to override the other results?" +msgstr "" + +msgid "Please find the best line on your plate" +msgstr "請在您的列印板上找到最佳線條" + +msgid "Please find the corner with perfect degree of extrusion" +msgstr "" + +msgid "Input Value" +msgstr "輸入值" + +#, fuzzy +msgid "Save to Filament Preset" +msgstr "儲存到材料預設值" + +#, fuzzy +msgid "Preset" +msgstr "預設值" + +msgid "Record Factor" +msgstr "記錄係數" + +msgid "We found the best flow ratio for you" +msgstr "我們為您找到了最佳流量比" + +msgid "Flow Ratio" +msgstr "流量比" + +msgid "Please input a valid value (0.0 < flow ratio < 2.0)" +msgstr "請輸入一個有效值(0.0<流量比<2.0)" + +#, fuzzy +msgid "Please enter the name of the preset you want to save." +msgstr "請輸入要儲存的預設值的名稱。" + +msgid "Calibration1" +msgstr "校準 1" + +msgid "Calibration2" +msgstr "校準 2" + +#, fuzzy +msgid "Please find the best object on your plate" +msgstr "請在你的列印板裡找到最好的物件" + +msgid "Fill in the value above the block with smoothest top surface" +msgstr "用最光滑的頂面填充塊上方的值" + +msgid "Skip Calibration2" +msgstr "跳過校準2" + +#, c-format, boost-format +msgid "flow ratio : %s " +msgstr "流量比:%s " + +msgid "Please choose a block with smoothest top surface" +msgstr "請選擇頂部表面最光滑的塊" + +msgid "Please choose a block with smoothest top surface." +msgstr "請選擇頂部表面最光滑的塊。" + +msgid "Please input a valid value (0 <= Max Volumetric Speed <= 60)" +msgstr "請輸入一個有效值(0<=最大體積速度<=60)" + +msgid "Calibration Type" +msgstr "校準類型" + +msgid "Complete Calibration" +msgstr "完整校準" + +msgid "Fine Calibration based on flow ratio" +msgstr "基於流量比的精細校準" + +msgid "Title" +msgstr "標題" + +#, fuzzy +msgid "" +"A test model will be printed. Please clear the build plate and place it back " +"to the hot bed before calibration." +msgstr "將列印一份測試模型。在校準之前,請清理列印板並將其放回熱床上。" + +msgid "Printing Parameters" +msgstr "列印參數" + +msgid "Plate Type" +msgstr "熱床類型" + +msgid "filament position" +msgstr "線材位置" + +msgid "External Spool" +msgstr "外部線軸" + +msgid "Filament For Calibration" +msgstr "校準用線材" + +msgid "" +"Tips for calibration material: \n" +"- Materials that can share same hot bed temperature\n" +"- Different filament brand and family(Brand = Bambu, Family = Basic, Matte)" +msgstr "" +"校準線材提示:\n" +"-可以共享相同熱床溫度的線材\n" +"-不同的線材品牌和系列(Brand = Bambu, Family = Basic, Matte)" + +msgid "Pattern" +msgstr "花紋" + +msgid "Method" +msgstr "方法" + +#, c-format, boost-format +msgid "%s is not compatible with %s" +msgstr "%s 與 %s 不相容" + +msgid "TPU is not supported for Flow Dynamics Auto-Calibration." +msgstr "不支援 TPU 進行流量動態自動校準。" + +#, fuzzy +msgid "Connecting to printer" +msgstr "正在連接列印設備" + +msgid "From k Value" +msgstr "" + +msgid "To k Value" +msgstr "" + +msgid "Step value" +msgstr "" + +#, fuzzy +msgid "The nozzle diameter has been synchronized from the printer Settings" +msgstr "噴嘴直徑已從列印設備設定中同步" + +msgid "From Volumetric Speed" +msgstr "從體積速度" + +msgid "To Volumetric Speed" +msgstr "至體積速度" + +msgid "Flow Dynamics Calibration Result" +msgstr "動態流量校準結果" + +msgid "New" +msgstr "新增" + +msgid "No History Result" +msgstr "無歷史結果" + +msgid "Success to get history result" +msgstr "成功獲取歷史結果" + +msgid "Refreshing the historical Flow Dynamics Calibration records" +msgstr "重整歷史流量動態校準記錄" + +msgid "Action" +msgstr "操作" + +#, c-format, boost-format +msgid "This machine type can only hold %d history results per nozzle." +msgstr "" + +msgid "Edit Flow Dynamics Calibration" +msgstr "編輯動態流量校準" + +msgid "New Flow Dynamic Calibration" +msgstr "" + +msgid "Ok" +msgstr "" + +msgid "The filament must be selected." +msgstr "" + +msgid "Network lookup" +msgstr "搜尋網路" + +msgid "Address" +msgstr "地址" + +msgid "Hostname" +msgstr "主機名" + +msgid "Service name" +msgstr "服務名" + +msgid "OctoPrint version" +msgstr "OctoPrint版本" + +msgid "Searching for devices" +msgstr "正在尋找設備" + +msgid "Finished" +msgstr "完成" + +msgid "Multiple resolved IP addresses" +msgstr "" + +#, boost-format +msgid "" +"There are several IP addresses resolving to hostname %1%.\n" +"Please select one that should be used." +msgstr "" + +msgid "PA Calibration" +msgstr "PA校準" + +msgid "DDE" +msgstr "近程擠出機" + +msgid "Bowden" +msgstr "遠程擠出機" + +msgid "Extruder type" +msgstr "擠出機類型" + +msgid "PA Tower" +msgstr "PA塔" + +msgid "PA Line" +msgstr "劃線模式" + +msgid "PA Pattern" +msgstr "V形模式" + +msgid "Start PA: " +msgstr "起始值" + +msgid "End PA: " +msgstr "結束值" + +msgid "PA step: " +msgstr "步距" + +msgid "Print numbers" +msgstr "列印數字" + +msgid "" +"Please input valid values:\n" +"Start PA: >= 0.0\n" +"End PA: > Start PA\n" +"PA step: >= 0.001)" +msgstr "" +"請輸入有效值:\n" +"起始PA:>= 0.0\n" +"結束PA:> 起始PA\n" +"PA步距:>= 0.001)" + +msgid "Temperature calibration" +msgstr "溫度校準" + +msgid "PLA" +msgstr "" + +msgid "ABS/ASA" +msgstr "" + +msgid "PETG" +msgstr "" + +msgid "PCTG" +msgstr "" + +msgid "TPU" +msgstr "" + +msgid "PA-CF" +msgstr "" + +msgid "PET-CF" +msgstr "" + +msgid "Filament type" +msgstr "線材類型" + +#, fuzzy +msgid "Start temp: " +msgstr "起始溫度: " + +msgid "End temp: " +msgstr "結束溫度" + +msgid "Temp step: " +msgstr "溫度步距" + +#, fuzzy +msgid "" +"Please input valid values:\n" +"Start temp: <= 350\n" +"End temp: >= 170\n" +"Start temp > End temp + 5)" +msgstr "" +"請輸入有效值:\n" +"起始溫度:<= 350\n" +"結束溫度:>= 170\n" +"開始溫度 > 結束溫度 + 5)" + +msgid "Max volumetric speed test" +msgstr "最大體積速度測試" + +msgid "Start volumetric speed: " +msgstr "起始流量" + +msgid "End volumetric speed: " +msgstr "結束流量" + +msgid "step: " +msgstr "步距" + +#, fuzzy +msgid "" +"Please input valid values:\n" +"start > 0 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"請輸入有效值:\n" +"開始 > 0\n" +"步距 >= 0\n" +"結束 > 開始 + 步距)" + +msgid "VFA test" +msgstr "VFA震紋測試" + +msgid "Start speed: " +msgstr "起始速度" + +msgid "End speed: " +msgstr "結束速度" + +msgid "" +"Please input valid values:\n" +"start > 10 \n" +"step >= 0\n" +"end > start + step)" +msgstr "" +"請輸入有效值:\n" +"開始 > 10\n" +"步距 >= 0\n" +"結束 > 開始 + 步距)" + +msgid "Start retraction length: " +msgstr "起始回抽長度" + +msgid "End retraction length: " +msgstr "結束回抽長度" + +msgid "mm/mm" +msgstr "" + +#, fuzzy +msgid "Send G-Code to printer host" +msgstr "傳送 G-code 到列印設備" + +msgid "Upload to Printer Host with the following filename:" +msgstr "使用下列檔案名上傳到列印設備:" + +msgid "Use forward slashes ( / ) as a directory separator if needed." +msgstr "如有需要,請使用正斜槓( / )作為目錄分隔符號。" + +msgid "Upload to storage" +msgstr "上傳到儲存單位" + +msgid "Switch to Device tab after upload." +msgstr "" + +#, fuzzy, c-format, boost-format +msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?" +msgstr "上傳的檔名不以 \"%s\" 結尾。確定要繼續嗎?" + +msgid "Upload" +msgstr "上傳" + +msgid "Print host upload queue" +msgstr "列印主機上傳隊列" + +msgid "ID" +msgstr "ID" + +msgid "Progress" +msgstr "進度" + +msgid "Host" +msgstr "主機" + +msgctxt "OfFile" +msgid "Size" +msgstr "尺寸" + +msgid "Filename" +msgstr "檔案名" + +msgid "Cancel selected" +msgstr "取消選取" + +msgid "Show error message" +msgstr "顯示錯誤資訊" + +msgid "Enqueued" +msgstr "已加入隊列" + +msgid "Uploading" +msgstr "正在上傳" + +msgid "Cancelling" +msgstr "取消中" + +#, fuzzy +msgid "Error uploading to print host" +msgstr "上傳到列印設備時發生錯誤" + +#, fuzzy +msgid "Unable to perform boolean operation on selected parts" +msgstr "無法對所選零件執行布林運算" + +#, fuzzy +msgid "Mesh Boolean" +msgstr "布林運算" + +msgid "Union" +msgstr "併集" + +msgid "Difference" +msgstr "差集" + +msgid "Intersection" +msgstr "交集" + +msgid "Source Volume" +msgstr "" + +msgid "Tool Volume" +msgstr "" + +msgid "Subtract from" +msgstr "從中減去" + +msgid "Subtract with" +msgstr "與之相減" + +msgid "selected" +msgstr "已選取" + +msgid "Part 1" +msgstr "零件 1" + +msgid "Part 2" +msgstr "零件 2" + +msgid "Delete input" +msgstr "刪除輸入" + +msgid "Network Test" +msgstr "" + +msgid "Start Test Multi-Thread" +msgstr "" + +msgid "Start Test Single-Thread" +msgstr "" + +msgid "Export Log" +msgstr "" + +msgid "Snapmaker Orca Version:" +msgstr "" + +msgid "System Version:" +msgstr "" + +msgid "DNS Server:" +msgstr "" + +msgid "Test Snapmaker Orca(GitHub)" +msgstr "" + +msgid "Test Snapmaker Orca(GitHub):" +msgstr "" + +msgid "Test Bing.com" +msgstr "" + +msgid "Test bing.com:" +msgstr "" + +msgid "Log Info" +msgstr "" + +msgid "Select filament preset" +msgstr "" + +msgid "Create Filament" +msgstr "" + +msgid "Create Based on Current Filament" +msgstr "" + +msgid "Copy Current Filament Preset " +msgstr "" + +msgid "Basic Information" +msgstr "" + +msgid "Add Filament Preset under this filament" +msgstr "" + +msgid "We could create the filament presets for your following printer:" +msgstr "" + +msgid "Select Vendor" +msgstr "" + +msgid "Input Custom Vendor" +msgstr "" + +msgid "Can't find vendor I want" +msgstr "" + +msgid "Select Type" +msgstr "" + +msgid "Select Filament Preset" +msgstr "" + +msgid "Serial" +msgstr "" + +msgid "e.g. Basic, Matte, Silk, Marble" +msgstr "" + +msgid "Filament Preset" +msgstr "" + +msgid "Create" +msgstr "" + +msgid "Vendor is not selected, please reselect vendor." +msgstr "" + +msgid "Custom vendor is not input, please input custom vendor." +msgstr "" + +msgid "" +"\"Bambu\" or \"Generic\" can not be used as a Vendor for custom filaments." +msgstr "" + +msgid "Filament type is not selected, please reselect type." +msgstr "" + +msgid "Filament serial is not inputed, please input serial." +msgstr "" + +msgid "" +"There may be escape characters in the vendor or serial input of filament. " +"Please delete and re-enter." +msgstr "" + +msgid "All inputs in the custom vendor or serial are spaces. Please re-enter." +msgstr "" + +msgid "The vendor can not be a number. Please re-enter." +msgstr "" + +msgid "" +"You have not selected a printer or preset yet. Please select at least one." +msgstr "" + +#, c-format, boost-format +msgid "" +"The Filament name %s you created already exists. \n" +"If you continue creating, the preset created will be displayed with its full " +"name. Do you want to continue?" +msgstr "" + +msgid "Some existing presets have failed to be created, as follows:\n" +msgstr "" + +msgid "" +"\n" +"Do you want to rewrite it?" +msgstr "" + +msgid "" +"We would rename the presets as \"Vendor Type Serial @printer you selected" +"\". \n" +"To add preset for more printers, Please go to printer selection" +msgstr "" + +msgid "Create Printer/Nozzle" +msgstr "" + +msgid "Create Printer" +msgstr "" + +msgid "Create Nozzle for Existing Printer" +msgstr "" + +msgid "Create from Template" +msgstr "" + +msgid "Create Based on Current Printer" +msgstr "" + +msgid "Import Preset" +msgstr "" + +msgid "Create Type" +msgstr "" + +msgid "The model is not found, place reselect vendor." +msgstr "" + +msgid "Select Model" +msgstr "" + +msgid "Select Printer" +msgstr "" + +msgid "Input Custom Model" +msgstr "" + +msgid "Can't find my printer model" +msgstr "" + +msgid "Rectangle" +msgstr "" + +msgid "Printable Space" +msgstr "" + +msgid "Hot Bed STL" +msgstr "" + +msgid "Load stl" +msgstr "" + +msgid "Hot Bed SVG" +msgstr "" + +msgid "Load svg" +msgstr "" + +msgid "Max Print Height" +msgstr "" + +#, c-format, boost-format +msgid "The file exceeds %d MB, please import again." +msgstr "" + +msgid "Exception in obtaining file size, please import again." +msgstr "" + +msgid "Preset path is not find, please reselect vendor." +msgstr "" + +msgid "The printer model was not found, please reselect." +msgstr "" + +msgid "The nozzle diameter is not found, place reselect." +msgstr "" + +msgid "The printer preset is not found, place reselect." +msgstr "" + +msgid "Printer Preset" +msgstr "" + +msgid "Filament Preset Template" +msgstr "" + +msgid "Deselect All" +msgstr "" + +msgid "Process Preset Template" +msgstr "" + +msgid "Back Page 1" +msgstr "" + +msgid "" +"You have not yet chosen which printer preset to create based on. Please " +"choose the vendor and model of the printer" +msgstr "" + +msgid "" +"You have entered an illegal input in the printable area section on the first " +"page. Please check before creating it." +msgstr "" + +msgid "The custom printer or model is not inputed, place input." +msgstr "" + +msgid "" +"The printer preset you created already has a preset with the same name. Do " +"you want to overwrite it?\n" +"\tYes: Overwrite the printer preset with the same name, and filament and " +"process presets with the same preset name will be recreated \n" +"and filament and process presets without the same preset name will be " +"reserve.\n" +"\tCancel: Do not create a preset, return to the creation interface." +msgstr "" + +msgid "You need to select at least one filament preset." +msgstr "" + +msgid "You need to select at least one process preset." +msgstr "" + +msgid "Create filament presets failed. As follows:\n" +msgstr "" + +msgid "Create process presets failed. As follows:\n" +msgstr "" + +msgid "Vendor is not find, please reselect." +msgstr "" + +msgid "Current vendor has no models, please reselect." +msgstr "" + +msgid "" +"You have not selected the vendor and model or inputed the custom vendor and " +"model." +msgstr "" + +msgid "" +"There may be escape characters in the custom printer vendor or model. Please " +"delete and re-enter." +msgstr "" + +msgid "" +"All inputs in the custom printer vendor or model are spaces. Please re-enter." +msgstr "" + +msgid "Please check bed printable shape and origin input." +msgstr "" + +msgid "" +"You have not yet selected the printer to replace the nozzle, please choose." +msgstr "" + +msgid "Create Printer Successful" +msgstr "" + +msgid "Create Filament Successful" +msgstr "" + +msgid "Printer Created" +msgstr "" + +msgid "Please go to printer settings to edit your presets" +msgstr "" + +msgid "Filament Created" +msgstr "" + +msgid "" +"Please go to filament setting to edit your presets if you need.\n" +"Please note that nozzle temperature, hot bed temperature, and maximum " +"volumetric speed has a significant impact on printing quality. Please set " +"them carefully." +msgstr "" + +msgid "" +"\n" +"\n" +"Orca has detected that your user presets synchronization function is not " +"enabled, which may result in unsuccessful Filament settings on the Device " +"page. \n" +"Click \"Sync user presets\" to enable the synchronization function." +msgstr "" + +msgid "Printer Setting" +msgstr "" + +msgid "Printer config bundle(.orca_printer)" +msgstr "" + +msgid "Filament bundle(.orca_filament)" +msgstr "" + +msgid "Printer presets(.zip)" +msgstr "" + +msgid "Filament presets(.zip)" +msgstr "" + +msgid "Process presets(.zip)" +msgstr "" + +msgid "initialize fail" +msgstr "" + +msgid "add file fail" +msgstr "" + +msgid "add bundle structure file fail" +msgstr "" + +msgid "finalize fail" +msgstr "" + +msgid "open zip written fail" +msgstr "" + +msgid "Export successful" +msgstr "" + +#, c-format, boost-format +msgid "" +"The '%s' folder already exists in the current directory. Do you want to " +"clear it and rebuild it.\n" +"If not, a time suffix will be added, and you can modify the name after " +"creation." +msgstr "" + +msgid "" +"Printer and all the filament&&process presets that belongs to the printer. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"User's fillment preset set. \n" +"Can be shared with others." +msgstr "" + +msgid "" +"Only display printer names with changes to printer, filament, and process " +"presets." +msgstr "" + +msgid "Only display the filament names with changes to filament presets." +msgstr "" + +msgid "" +"Only printer names with user printer presets will be displayed, and each " +"preset you choose will be exported as a zip." +msgstr "" + +msgid "" +"Only the filament names with user filament presets will be displayed, \n" +"and all user filament presets in each filament name you select will be " +"exported as a zip." +msgstr "" + +msgid "" +"Only printer names with changed process presets will be displayed, \n" +"and all user process presets in each printer name you select will be " +"exported as a zip." +msgstr "" + +msgid "Please select at least one printer or filament." +msgstr "" + +msgid "Please select a type you want to export" +msgstr "" + +msgid "Failed to create temporary folder, please try Export Configs again." +msgstr "" + +msgid "Edit Filament" +msgstr "" + +msgid "Filament presets under this filament" +msgstr "" + +msgid "" +"Note: If the only preset under this filament is deleted, the filament will " +"be deleted after exiting the dialog." +msgstr "" + +msgid "Presets inherited by other presets can not be deleted" +msgstr "" + +msgid "The following presets inherits this preset." +msgid_plural "The following preset inherits this preset." +msgstr[0] "" + +msgid "Delete Preset" +msgstr "" + +msgid "Are you sure to delete the selected preset?" +msgstr "" + +msgid "Delete preset" +msgstr "" + +msgid "+ Add Preset" +msgstr "" + +msgid "Delete Filament" +msgstr "" + +msgid "" +"All the filament presets belong to this filament would be deleted. \n" +"If you are using this filament on your printer, please reset the filament " +"information for that slot." +msgstr "" + +msgid "Delete filament" +msgstr "" + +msgid "Add Preset" +msgstr "" + +msgid "Add preset for new printer" +msgstr "" + +msgid "Copy preset from filament" +msgstr "" + +msgid "The filament choice not find filament preset, please reselect it" +msgstr "" + +msgid "[Delete Required]" +msgstr "" + +msgid "Edit Preset" +msgstr "" + +msgid "For more information, please check out Wiki" +msgstr "" + +msgid "Collapse" +msgstr "摺疊" + +msgid "Daily Tips" +msgstr "" + +#, c-format, boost-format +msgid "nozzle memorized: %.1f %s" +msgstr "" + +msgid "" +"Your nozzle diameter in preset is not consistent with memorized nozzle " +"diameter. Did you change your nozzle lately?" +msgstr "" + +#, c-format, boost-format +msgid "*Printing %s material with %s may cause nozzle damage" +msgstr "" + +#, fuzzy +msgid "Need select printer" +msgstr "需要選擇列印設備" + +msgid "The start, end or step is not valid value." +msgstr "開始、結束或步距不是有效值。" + +msgid "" +"Unable to calibrate: maybe because the set calibration value range is too " +"large, or the step is too small" +msgstr "無法校準:可能是設定的校準值範圍太大,或步距太小" + +#, fuzzy +msgid "Physical Printer" +msgstr "實體列印設備" + +msgid "Print Host upload" +msgstr "打印主機上傳" + +msgid "Could not get a valid Printer Host reference" +msgstr "無法獲得有效的打印機主機參考資料" + +msgid "Success!" +msgstr "成功!" + +msgid "Are you sure to log out?" +msgstr "" + +#, fuzzy +msgid "Refresh Printers" +msgstr "重新整理列印設備" + +msgid "View print host webui in Device tab" +msgstr "" + +msgid "Replace the BambuLab's device tab with print host webui" +msgstr "" + +#, fuzzy +msgid "" +"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-" +"signed certificate." +msgstr "" +"HTTPS CA 憑證檔案是可選的。 僅當您使用具有自帶簽名憑證的 HTTPS 時才需要它。" + +#, fuzzy +msgid "Certificate files (*.crt, *.pem)|*.crt;*.pem|All files|*.*" +msgstr "憑證檔(*.crt, *.pem)|*.crt;*.pem|All files|*.*" + +msgid "Open CA certificate file" +msgstr "開啟 CA憑證檔" + +#, fuzzy, c-format, boost-format +msgid "" +"On this system, %s uses HTTPS certificates from the system Certificate Store " +"or Keychain." +msgstr "在此系統上,%s 使用系統憑證儲存庫或鑰匙圈中的 HTTPS 憑證。" + +msgid "" +"To use a custom CA file, please import your CA file into Certificate Store / " +"Keychain." +msgstr "若要使用自訂 CA 憑證檔,請將您的 CA 憑證檔匯入到憑證儲存庫/鑰匙圈中。" + +msgid "Login/Test" +msgstr "" + +msgid "Connection to printers connected via the print host failed." +msgstr "經由打印主機連接的打印機連接失敗。" + +#, c-format, boost-format +msgid "Mismatched type of print host: %s" +msgstr "打印主機類型不符:%s" + +msgid "Connection to AstroBox works correctly." +msgstr "與 AstroBox 的連接工作正常。" + +msgid "Could not connect to AstroBox" +msgstr "無法連接到 AstroBox" + +msgid "Note: AstroBox version at least 1.1.0 is required." +msgstr "注意:AstroBox 版本至少需要 1.1.0。" + +msgid "Connection to Duet works correctly." +msgstr "與 Duet 的連接工作正常。" + +msgid "Could not connect to Duet" +msgstr "無法連接到 Duet" + +msgid "Unknown error occured" +msgstr "發生未知的錯誤" + +msgid "Wrong password" +msgstr "密碼錯誤" + +msgid "Could not get resources to create a new connection" +msgstr "無法取得建立新連結的資源" + +msgid "Upload not enabled on FlashAir card." +msgstr "FlashAir 卡上未啟用上傳。" + +msgid "Connection to FlashAir works correctly and upload is enabled." +msgstr "與 FlashAir 的連接工作正常並啟用上傳。" + +msgid "Could not connect to FlashAir" +msgstr "無法連接到 FlashAir" + +msgid "" +"Note: FlashAir with firmware 2.00.02 or newer and activated upload function " +"is required." +msgstr "注意:FlashAir 需要韌體為 2.00.02 或更新版本並啟動上傳功能。" + +msgid "Connection to MKS works correctly." +msgstr "" + +msgid "Could not connect to MKS" +msgstr "" + +msgid "Connection to OctoPrint works correctly." +msgstr "與 OctoPrint 的連接工作正常。" + +msgid "Could not connect to OctoPrint" +msgstr "無法連接到 OctoPrint" + +msgid "Note: OctoPrint version at least 1.1.0 is required." +msgstr "注意:OctoPrint 版本至少需要 1.1.0。" + +msgid "Connection to Prusa SL1 / SL1S works correctly." +msgstr "與 Prusa SL1 / SL1S 的連接工作正常。" + +msgid "Could not connect to Prusa SLA" +msgstr "無法連接到 Prusa SLA" + +msgid "Connection to PrusaLink works correctly." +msgstr "與 PrusaLink 的連接工作正常。" + +msgid "Could not connect to PrusaLink" +msgstr "無法連接到 PrusaLink" + +msgid "Storages found" +msgstr "" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : read only" +msgstr "" + +#. TRN %1% = storage path +#, boost-format +msgid "%1% : no free space" +msgstr "" + +#. TRN %1% = host +#, boost-format +msgid "Upload has failed. There is no suitable storage found at %1%." +msgstr "" + +msgid "Connection to Prusa Connect works correctly." +msgstr "" + +msgid "Could not connect to Prusa Connect" +msgstr "" + +msgid "Connection to Repetier works correctly." +msgstr "與 Repetier 的連接工作正常。" + +msgid "Could not connect to Repetier" +msgstr "無法連接到 Repetier" + +msgid "Note: Repetier version at least 0.90.0 is required." +msgstr "注意:Repetier 版本至少需要 0.90.0。" + +#, boost-format +msgid "" +"HTTP status: %1%\n" +"Message body: \"%2%\"" +msgstr "" +"HTTP 狀態:%1%\n" +"訊息內容:“%2%”" + +#, boost-format +msgid "" +"Parsing of host response failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"主機溝通解析失敗。\n" +"訊息內容:“%1%”\n" +"錯誤碼:“%2%”" + +#, boost-format +msgid "" +"Enumeration of host printers failed.\n" +"Message body: \"%1%\"\n" +"Error: \"%2%\"" +msgstr "" +"主機打印機例舉失敗。\n" +"訊息內容:“%1%”\n" +"錯誤碼:“%2%”" + +msgid "" +"It has a small layer height, and results in almost negligible layer lines " +"and high printing quality. It is suitable for most general printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has lower speeds " +"and acceleration, and the sparse infill pattern is Gyroid. So, it results in " +"much higher printing quality, but a much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a slightly " +"bigger layer height, and results in almost negligible layer lines, and " +"slightly shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a bigger layer " +"height, and results in slightly visible layer lines, but shorter printing " +"time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"height, and results in almost invisible layer lines and higher printing " +"quality, but shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost invisible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of 0.2 mm nozzle, it has a smaller layer " +"height, and results in minimal layer lines and higher printing quality, but " +"shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.2 mm nozzle, it has a smaller layer " +"lines, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in minimal layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" + +msgid "" +"It has a general layer height, and results in general layer lines and " +"printing quality. It is suitable for most general printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but slightly shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in less apparent layer lines and much higher printing " +"quality, but much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, lower speeds and acceleration, and the sparse infill pattern is " +"Gyroid. So, it results in almost negligible layer lines and much higher " +"printing quality, but much longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.4 mm nozzle, it has a smaller layer " +"height, and results in almost negligible layer lines and longer printing " +"time." +msgstr "" + +msgid "" +"It has a big layer height, and results in apparent layer lines and ordinary " +"printing quality and printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has more wall loops " +"and a higher sparse infill density. So, it results in higher strength of the " +"prints, but more filament consumption and longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in more apparent layer lines and lower printing quality, " +"but shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a bigger layer " +"height, and results in much more apparent layer lines and much lower " +"printing quality, but shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and slight higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.6 mm nozzle, it has a smaller layer " +"height, and results in less apparent layer lines and higher printing " +"quality, but longer printing time." +msgstr "" + +msgid "" +"It has a very big layer height, and results in very apparent layer lines, " +"low printing quality and general printing time." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a bigger layer " +"height, and results in very apparent layer lines and much lower printing " +"quality, but shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a much bigger " +"layer height, and results in extremely apparent layer lines and much lower " +"printing quality, but much shorter printing time in some printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a slightly " +"smaller layer height, and results in slightly less but still apparent layer " +"lines and slightly higher printing quality, but longer printing time in some " +"printing cases." +msgstr "" + +msgid "" +"Compared with the default profile of a 0.8 mm nozzle, it has a smaller layer " +"height, and results in less but still apparent layer lines and slightly " +"higher printing quality, but longer printing time in some printing cases." +msgstr "" + +msgid "Connected to Obico successfully!" +msgstr "" + +msgid "Could not connect to Obico" +msgstr "" + +msgid "Connected to SimplyPrint successfully!" +msgstr "" + +msgid "Could not connect to SimplyPrint" +msgstr "" + +msgid "Internal error" +msgstr "" + +msgid "Unknown error" +msgstr "" + +msgid "SimplyPrint account not linked. Go to Connect options to set it up." +msgstr "" + +msgid "Connection to Flashforge works correctly." +msgstr "" + +msgid "Could not connect to Flashforge" +msgstr "" + +msgid "The provided state is not correct." +msgstr "" + +msgid "Please give the required permissions when authorizing this application." +msgstr "" + +msgid "Something unexpected happened when trying to log in, please try again." +msgstr "" + +msgid "User cancelled." +msgstr "" + +#: resources/data/hints.ini: [hint:Precise wall] +msgid "" +"Precise wall\n" +"Did you know that turning on precise wall can improve precision and layer " +"consistency?" +msgstr "" + +#: resources/data/hints.ini: [hint:Sandwich mode] +msgid "" +"Sandwich mode\n" +"Did you know that you can use sandwich mode (inner-outer-inner) to improve " +"precision and layer consistency if your model doesn't have very steep " +"overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Chamber temperature] +msgid "" +"Chamber temperature\n" +"Did you know that Snapmaker Orca supports chamber temperature?" +msgstr "" + +#: resources/data/hints.ini: [hint:Calibration] +msgid "" +"Calibration\n" +"Did you know that calibrating your printer can do wonders? Check out our " +"beloved calibration solution in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:Auxiliary fan] +msgid "" +"Auxiliary fan\n" +"Did you know that Snapmaker Orca supports Auxiliary part cooling fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:Air filtration] +msgid "" +"Air filtration/Exhaust Fan\n" +"Did you know that Snapmaker Orca can support Air filtration/Exhaust Fan?" +msgstr "" + +#: resources/data/hints.ini: [hint:G-code window] +msgid "" +"G-code window\n" +"You can turn on/off the G-code window by pressing the C key." +msgstr "" + +#: resources/data/hints.ini: [hint:Switch workspaces] +msgid "" +"Switch workspaces\n" +"You can switch between Prepare and Preview workspaces by " +"pressing the Tab key." +msgstr "" + +#: resources/data/hints.ini: [hint:How to use keyboard shortcuts] +msgid "" +"How to use keyboard shortcuts\n" +"Did you know that Snapmaker Orca offers a wide range of keyboard shortcuts and " +"3D scene operations." +msgstr "" + +#: resources/data/hints.ini: [hint:Reverse on odd] +msgid "" +"Reverse on odd\n" +"Did you know that Reverse on odd feature can significantly improve " +"the surface quality of your overhangs?" +msgstr "" + +#: resources/data/hints.ini: [hint:Cut Tool] +msgid "" +"Cut Tool\n" +"Did you know that you can cut a model at any angle and position with the " +"cutting tool?" +msgstr "" +"切割工具\n" +"您知道嗎?您可以使用切割工具以任何角度和位置切割模型。" + +#: resources/data/hints.ini: [hint:Fix Model] +msgid "" +"Fix Model\n" +"Did you know that you can fix a corrupted 3D model to avoid a lot of slicing " +"problems on the Windows system?" +msgstr "" + +#: resources/data/hints.ini: [hint:Timelapse] +msgid "" +"Timelapse\n" +"Did you know that you can generate a timelapse video during each print?" +msgstr "" +"縮時錄影\n" +"您知道嗎?您可以每次列印時產生一段縮時錄影。" + +#: resources/data/hints.ini: [hint:Auto-Arrange] +#, fuzzy +msgid "" +"Auto-Arrange\n" +"Did you know that you can auto-arrange all objects in your project?" +msgstr "" +"自動擺放\n" +"您知道嗎?您可以自動擺放專案項目中的所有物件。" + +#: resources/data/hints.ini: [hint:Auto-Orient] +#, fuzzy +msgid "" +"Auto-Orient\n" +"Did you know that you can rotate objects to an optimal orientation for " +"printing by a simple click?" +msgstr "" +"自動定向\n" +"您知道嗎,您只需單擊滑鼠,即可將物件旋轉到適合的列印方向。" + +#: resources/data/hints.ini: [hint:Lay on Face] +#, fuzzy +msgid "" +"Lay on Face\n" +"Did you know that you can quickly orient a model so that one of its faces " +"sits on the print bed? Select the \"Place on face\" function or press the " +"F key." +msgstr "" +"指定列印物件底部\n" +"您知道嗎,您可以快速指定模型的底面,使其位於列印板上。選擇 \"選擇底面” 功能或" +"按F鍵。" + +#: resources/data/hints.ini: [hint:Object List] +#, fuzzy +msgid "" +"Object List\n" +"Did you know that you can view all objects/parts in a list and change " +"settings for each object/part?" +msgstr "" +"物件清單\n" +"您知道物件清單嗎?您可以在其中的查看所有物件/零件,並更改每個物件/零件的設" +"定。" + +#: resources/data/hints.ini: [hint:Search Functionality] +msgid "" +"Search Functionality\n" +"Did you know that you use the Search tool to quickly find a specific Orca " +"Slicer setting?" +msgstr "" + +#: resources/data/hints.ini: [hint:Simplify Model] +msgid "" +"Simplify Model\n" +"Did you know that you can reduce the number of triangles in a mesh using the " +"Simplify mesh feature? Right-click the model and select Simplify model." +msgstr "" + +#: resources/data/hints.ini: [hint:Slicing Parameter Table] +#, fuzzy +msgid "" +"Slicing Parameter Table\n" +"Did you know that you can view all objects/parts on a table and change " +"settings for each object/part?" +msgstr "" +"參數表格\n" +"您知道嗎?您可以參數表格上的所有物件/零件,並更改每個物件/零件的設定。" + +#: resources/data/hints.ini: [hint:Split to Objects/Parts] +#, fuzzy +msgid "" +"Split to Objects/Parts\n" +"Did you know that you can split a big object into small ones for easy " +"colorizing or printing?" +msgstr "" +"分割成物件/零件\n" +"您知道嗎,您可以把一個大物件分割成多個小物件/零件以便著色或列印。" + +#: resources/data/hints.ini: [hint:Subtract a Part] +msgid "" +"Subtract a Part\n" +"Did you know that you can subtract one mesh from another using the Negative " +"part modifier? That way you can, for example, create easily resizable holes " +"directly in Snapmaker Orca." +msgstr "" + +#: resources/data/hints.ini: [hint:STEP] +#, fuzzy +msgid "" +"STEP\n" +"Did you know that you can improve your print quality by slicing a STEP file " +"instead of an STL?\n" +"Snapmaker Orca supports slicing STEP files, providing smoother results than a " +"lower resolution STL. Give it a try!" +msgstr "" +"STEP檔案\n" +"您知道嗎,通過切片 STEP 檔案而不是 STL 檔案可以提高列印品質。\n" +" Snapmaker Orca 支援切片 STEP 檔案,提供比低解析度 STL 更平滑的結果。試試看!" + +#: resources/data/hints.ini: [hint:Z seam location] +msgid "" +"Z seam location\n" +"Did you know that you can customize the location of the Z seam, and even " +"paint it on your print, to have it in a less visible location? This improves " +"the overall look of your model. Check it out!" +msgstr "" +"Z接縫位置\n" +"您知道嗎,您可以自訂Z接縫的位置,甚至可以將其繪製在列印上,使其位於不太可見的" +"位置。這樣可以改善模型的整體外觀。試試看!" + +#: resources/data/hints.ini: [hint:Fine-tuning for flow rate] +msgid "" +"Fine-tuning for flow rate\n" +"Did you know that flow rate can be fine-tuned for even better-looking " +"prints? Depending on the material, you can improve the overall finish of the " +"printed model by doing some fine-tuning." +msgstr "" +"流量微調\n" +"你知道嗎,您可以微調流量,以獲得更好看的列印效果。根據線材的不同,可以通過進" +"行一些微調來提高列印模型的整體光潔度。" + +#: resources/data/hints.ini: [hint:Split your prints into plates] +#, fuzzy +msgid "" +"Split your prints into plates\n" +"Did you know that you can split a model that has a lot of parts into " +"individual plates ready to print? This will simplify the process of keeping " +"track of all the parts." +msgstr "" +"分類列印\n" +"您知道嗎,您可以把一個有很多零件的模型安排到多個獨立的列印板,然後列印出來," +"這將簡化對所有零件的管理。" + +#: resources/data/hints.ini: [hint:Speed up your print with Adaptive Layer +#: Height] +msgid "" +"Speed up your print with Adaptive Layer Height\n" +"Did you know that you can print a model even faster, by using the Adaptive " +"Layer Height option? Check it out!" +msgstr "" +"自適應層高度加速列印\n" +"您知道嗎,您可以使用“自適應層高度”選項可以更快地列印模型。試試看!" + +#: resources/data/hints.ini: [hint:Support painting] +msgid "" +"Support painting\n" +"Did you know that you can paint the location of your supports? This feature " +"makes it easy to place the support material only on the sections of the " +"model that actually need it." +msgstr "" +"自訂支撐\n" +"您知道嗎,您可以手動繪製增加/隱藏支撐的位置,此功能使僅將支撐材料放置在實際需" +"要的模型截面上變得容易。" + +#: resources/data/hints.ini: [hint:Different types of supports] +msgid "" +"Different types of supports\n" +"Did you know that you can choose from multiple types of supports? Tree " +"supports work great for organic models, while saving filament and improving " +"print speed. Check them out!" +msgstr "" +"支撐類型\n" +"您知道嗎,有多種可選的支撐類型,樹狀支撐非常適合人物/動物模型,同時可以節耗材" +"並提高列印速度。試試看!" + +#: resources/data/hints.ini: [hint:Printing Silk Filament] +msgid "" +"Printing Silk Filament\n" +"Did you know that Silk filament needs special consideration to print it " +"successfully? Higher temperature and lower speed are always recommended for " +"the best results." +msgstr "" +"列印絲綢線材\n" +"你知道嗎,絲綢耗材需要特別考慮才能成功列印。為了獲得最佳效果,通常建議使用較" +"高的溫度和較低的速度。" + +#: resources/data/hints.ini: [hint:Brim for better adhesion] +msgid "" +"Brim for better adhesion\n" +"Did you know that when printing models have a small contact interface with " +"the printing surface, it's recommended to use a brim?" +msgstr "" +"使用 Brim(裙邊)\n" +"您知道嗎?當模型與熱床表面的接觸面積較小時,建議使用 brim(裙邊)以提高列印成" +"功率。" + +#: resources/data/hints.ini: [hint:Set parameters for multiple objects] +#, fuzzy +msgid "" +"Set parameters for multiple objects\n" +"Did you know that you can set slicing parameters for all selected objects at " +"one time?" +msgstr "" +"為多個物件設定參數\n" +"您知道嗎,可以同時為所有選取的物件設定切片參數。" + +#: resources/data/hints.ini: [hint:Stack objects] +#, fuzzy +msgid "" +"Stack objects\n" +"Did you know that you can stack objects as a whole one?" +msgstr "" +"組合物體\n" +"你知道嗎?你可以把多個物件組合為一個整體。" + +#: resources/data/hints.ini: [hint:Flush into support/objects/infill] +#, fuzzy +msgid "" +"Flush into support/objects/infill\n" +"Did you know that you can save the wasted filament by flushing them into " +"support/objects/infill during filament change?" +msgstr "" +"廢料運用到支撐/物件/填充中\n" +"你知道嗎?你可以在換料時將廢料運用到支撐/物件/填充,以節省浪費的線材。" + +#: resources/data/hints.ini: [hint:Improve strength] +msgid "" +"Improve strength\n" +"Did you know that you can use more wall loops and higher sparse infill " +"density to improve the strength of the model?" +msgstr "" +"提高強度\n" +"你知道嗎?你可以使用更多的牆層數和更高的疏散填充密度來提高模型的強度。" + +#: resources/data/hints.ini: [hint:When need to print with the printer door +#: opened] +msgid "" +"When need to print with the printer door opened\n" +"Did you know that opening the printer door can reduce the probability of " +"extruder/hotend clogging when printing lower temperature filament with a " +"higher enclosure temperature. More info about this in the Wiki." +msgstr "" + +#: resources/data/hints.ini: [hint:Avoid warping] +msgid "" +"Avoid warping\n" +"Did you know that when printing materials that are prone to warping such as " +"ABS, appropriately increasing the heatbed temperature can reduce the " +"probability of warping." +msgstr "" + +#, fuzzy +#~ msgid "Printer local connection failed, please try again." +#~ msgstr "列印設備區域網路連接失敗,請重試。" + +#, fuzzy +#~ msgid "" +#~ "Please find the details of Flow Dynamics Calibration from our wiki.\n" +#~ "\n" +#~ "Usually the calibration is unnecessary. When you start a single color/" +#~ "material print, with the \"flow dynamics calibration\" option checked in " +#~ "the print start menu, the printer will follow the old way, calibrate the " +#~ "filament before the print; When you start a multi color/material print, " +#~ "the printer will use the default compensation parameter for the filament " +#~ "during every filament switch which will have a good result in most " +#~ "cases.\n" +#~ "\n" +#~ "Please note there are a few cases that will make the calibration result " +#~ "not reliable: using a texture plate to do the calibration; the build " +#~ "plate does not have good adhesion (please wash the build plate or apply " +#~ "gluestick!) ...You can find more from our wiki.\n" +#~ "\n" +#~ "The calibration results have about 10 percent jitter in our test, which " +#~ "may cause the result not exactly the same in each calibration. We are " +#~ "still investigating the root cause to do improvements with new updates." +#~ msgstr "" +#~ "請從我們的wiki中找到流量動態校準的詳細資訊。\n" +#~ "\n" +#~ "通常情況下,校準是不必要的。當您開始單色/單線材列印,並在列印開始選單中勾" +#~ "選了“流量動態校準”選項時,列印設備將按照舊的方式,在列印前校準絲料;當您開" +#~ "始多色/多線材列印時,列印設備將在每次換絲料時使用預設的補償參數,這在大多" +#~ "數情況下會產生良好的效果。\n" +#~ "\n" +#~ "請注意,有幾種情況會導致校準結果不可靠:使用紋理板進行校準;建模平台黏附效" +#~ "果不好(請清洗建模平台或塗抹膠棒)... 您可以在我們的wiki中找到更多資訊。\n" +#~ "\n" +#~ "在我們的測試中,校準結果有約 10% 的波動,這可能導致每次校準的結果略有不" +#~ "同。我們仍在調查根本原因,並通過新的更新進行改進。" + +#~ msgid "" +#~ "Only one of the results with the same name will be saved. Are you sure " +#~ "you want to overrides the other results?" +#~ msgstr "相同名稱的結果只會儲存一個。確定要覆蓋其他結果嗎?" + +#, fuzzy, c-format, boost-format +#~ msgid "" +#~ "There is already a historical calibration result with the same name: %s. " +#~ "Only one of the results with the same name is saved. Are you sure you " +#~ "want to overrides the historical result?" +#~ msgstr "" +#~ "已經存在一個具有相同名稱的校準結果:%s。相同名稱的結果只會儲存一個。確定要" +#~ "覆蓋嗎?" + +#, fuzzy +#~ msgid "Please find the cornor with perfect degree of extrusion" +#~ msgstr "請在您的列印板上找到最接近完美的直角" + +#~ msgid "V" +#~ msgstr "版本:" + +#, fuzzy +#~ msgid "" +#~ "Snapmaker Orca is based on BambuStudio by Bambulab, which is from " +#~ "PrusaSlicer by Prusa Research. PrusaSlicer is from Slic3r by Alessandro " +#~ "Ranellucci and the RepRap community" +#~ msgstr "" +#~ "Snapmaker Orca 是基於 Bambulab 的 BambuStudio 開發,而 BambuStudio 源自於 " +#~ "Prusa Research 的 PrusaSlicer。PrusaSlicer 源自於 Alessandro Ranellucci " +#~ "的 Slic3r 和 RepRap 社群" + +#, fuzzy +#~ msgid "Export &Configs" +#~ msgstr "匯出設定檔" + +#~ msgid "Infill direction" +#~ msgstr "填充方向" + +#, fuzzy +#~ msgid "" +#~ "Enable this to get a G-code file which has G2 and G3 moves. And the " +#~ "fitting tolerance is same with resolution" +#~ msgstr "" +#~ "打開這個設定,匯出的 G-code 將包含 G2 G3 指令。圓弧擬合的容許值和精度相" +#~ "同。" + +#~ msgid "" +#~ "Infill area is enlarged slightly to overlap with wall for better bonding. " +#~ "The percentage value is relative to line width of sparse infill" +#~ msgstr "" +#~ "填充區域被輕微擴大,並和外牆產生重疊,進而產生更好的黏接。表示為相對稀疏填" +#~ "充的線寬的百分比。" + +#~ msgid "Unload Filament" +#~ msgstr "退料" + +#~ msgid "" +#~ "Choose an AMS slot then press \"Load\" or \"Unload\" button to " +#~ "automatically load or unload filiament." +#~ msgstr "選擇 1 個 AMS 槽位,然後點擊進料/退料按鈕以自動進料/退料。" + +#~ msgid "MainBoard" +#~ msgstr "主板" + +#~ msgid "active" +#~ msgstr "活動的" + +#~ msgid "Jump to layer" +#~ msgstr "轉換到層" + +#~ msgid "Cabin humidity" +#~ msgstr "AMS 內部濕度" + +#, fuzzy +#~ msgid "" +#~ "Green means that AMS humidity is normal, orange represent humidity is " +#~ "high, red represent humidity is too high.(Hygrometer: lower the better.)" +#~ msgstr "" +#~ "綠色表示 AMS 濕度正常,橙色表示濕度高,紅色表示濕度過高。(濕度計:越低越" +#~ "好。)" + +#~ msgid "Desiccant status" +#~ msgstr "乾燥劑狀態" + +#, fuzzy +#~ msgid "" +#~ "A desiccant status lower than two bars indicates that desiccant may be " +#~ "inactive. Please change the desiccant.(The bars: higher the better.)" +#~ msgstr "" +#~ "乾燥劑狀態低於兩格表示乾燥劑可能是趨近無效。請更換乾燥劑。(指示格:越高越" +#~ "好)。" + +#~ msgid "" +#~ "Note: When the lid is open or the desiccant pack is changed, it can take " +#~ "hours or a night to absorb the moisture. Low temperatures also slow down " +#~ "the process. During this time, the indicator may not represent the " +#~ "chamber accurately." +#~ msgstr "" +#~ "注意:當 AMS 蓋子打開或更換乾燥劑包裝時,可能需要數小時或一晚才能吸收水" +#~ "分,低溫也會減慢這一過程。在此期間,濕度指示的數值可能並不準確。" + +#~ msgid "" +#~ "Note: if new filament is inserted during printing, the AMS will not " +#~ "automatically read any information until printing is completed." +#~ msgstr "" +#~ "注意:如果是在列印過程中插入新的線材,AMS 會在列印作業結束後自動讀取此線材" +#~ "信息。" + +#, boost-format +#~ msgid "Succeed to export G-code to %1%" +#~ msgstr "成功匯出 G-code 至 %1%" + +#~ msgid "Initialize failed (No Device)!" +#~ msgstr "初始化失敗(沒有列印設備)!" + +#~ msgid "Initialize failed (No Camera Device)!" +#~ msgstr "初始化失敗(沒有攝影機)" + +#, fuzzy +#~ msgid "" +#~ "Printer is busy downloading, Please wait for the downloading to finish." +#~ msgstr "列印設備正忙於下載,請等待下載完成。" + +#, fuzzy +#~ msgid "Initialize failed (Not supported on the current printer version)!" +#~ msgstr "初始化失敗(目前列印設備的版本不支援)!" + +#~ msgid "Initialize failed (Not accessible in LAN-only mode)!" +#~ msgstr "初始化失敗(在區域網路模式中不可存取)!" + +#, fuzzy +#~ msgid "Initialize failed (Missing LAN ip of printer)!" +#~ msgstr "初始化失敗(未找到列印設備的區域網路地址)!" + +#, c-format, boost-format +#~ msgid "Stopped [%d]!" +#~ msgstr "已停止 [%d]!" + +#, c-format, boost-format +#~ msgid "Load failed [%d]!" +#~ msgstr "載入失敗 [%d]!" + +#, c-format, boost-format +#~ msgid "No files [%d]" +#~ msgstr "檔案清單為空[%d]" + +#, c-format, boost-format +#~ msgid "Load failed [%d]" +#~ msgstr "載入失敗 [%d]" + +#, fuzzy +#~ msgid "Failed to fetching model infomations from printer." +#~ msgstr "無法從列印設備獲取模型資訊。" + +#~ msgid "Failed to parse model infomations." +#~ msgstr "解析模型資訊失敗。" + +#, boost-format +#~ msgid "" +#~ "You have changed some settings of preset \"%1%\". \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "您已經更改了預設 \"%1%\",是否在切換後要保留這些更改的預設參數?" + +#~ msgid "" +#~ "You have changed some preset settings. \n" +#~ "Would you like to keep these changed settings (new value) after switching " +#~ "preset?" +#~ msgstr "您已經更改了預設參數,是否在切換後要保留這些更改的預設參數?" + +#~ msgid "" +#~ "Add solid infill near sloping surfaces to guarantee the vertical shell " +#~ "thickness (top+bottom solid layers)" +#~ msgstr "在斜面表面附近增加實心填充,以保證垂直外殼厚度(頂部+底部實心層)" + +#, fuzzy +#~ msgid "Configuration package updated to " +#~ msgstr "設定檔已更新到" + +#, fuzzy +#~ msgid "" +#~ "Improve shell precision by adjusting outer wall spacing. This also " +#~ "improves layer consistency." +#~ msgstr "最佳化外牆路徑以提高外牆精度。這個最佳化同時減少層紋" + +#~ msgid "" +#~ "The minimum printing speed for the filament when slow down for better " +#~ "layer cooling is enabled, when printing overhangs and when feature speeds " +#~ "are not specified explicitly." +#~ msgstr "" +#~ "線材最小列印速度。當啟用減速以實現更好的層冷卻、列印懸空以及未明確指定特徵" +#~ "速度時" + +#~ msgid "No sparse layers (EXPERIMENTAL)" +#~ msgstr "無稀疏層(实验性功能)" + +#, fuzzy +#~ msgid "The Config can not be loaded." +#~ msgstr "設定檔無法載入。" + +#~ msgid "The 3mf is generated by old Snapmaker Orca, load geometry data only." +#~ msgstr "該 3mf 檔案來自舊版本的 Snapmaker Orca" + +#~ msgid "Movement:" +#~ msgstr "移動:" + +#~ msgid "Movement" +#~ msgstr "移動" + +#~ msgid "Auto Segment" +#~ msgstr "自動分割" + +#~ msgid "Depth ratio" +#~ msgstr "深度" + +#~ msgid "Prizm" +#~ msgstr "稜柱" + +#~ msgid "connector is out of cut contour" +#~ msgstr "個連接件超出了切割面範圍" + +#~ msgid "connectors are out of cut contour" +#~ msgstr "個連接件超出了切割面範圍" + +#~ msgid "connector is out of object" +#~ msgstr "個連接件穿透了模型" + +#~ msgid "connectors is out of object" +#~ msgstr "個連接件穿透了模型" + +#~ msgid "" +#~ "Invalid state. \n" +#~ "No one part is selected for keep after cut" +#~ msgstr "" +#~ "無效狀態。\n" +#~ "切割後沒有選取要保留的部分" + +#~ msgid "Edit Text" +#~ msgstr "編輯文字" + +#~ msgid "Error! Unable to create thread!" +#~ msgstr "發生錯誤,無法建立執行緒。" + +#~ msgid "Exception" +#~ msgstr "異常" + +#~ msgid "Choose SLA archive:" +#~ msgstr "選擇 SLA 存檔:" + +#~ msgid "Import file" +#~ msgstr "匯入檔案" + +#~ msgid "Import model and profile" +#~ msgstr "匯入模型和設定檔" + +#~ msgid "Import profile only" +#~ msgstr "僅匯入設定檔" + +#~ msgid "Import model only" +#~ msgstr "僅匯入模型" + +#~ msgid "Accurate" +#~ msgstr "準確的" + +#~ msgid "Balanced" +#~ msgstr "平衡的" + +#~ msgid "Quick" +#~ msgstr "快速的" + +#~ msgid "" +#~ "Discribe how long the nozzle will move along the last path when retracting" +#~ msgstr "表示回抽時擦拭的移動距離。" + +#~ msgid "" +#~ "Simplify Model\n" +#~ "Did you know that you can reduce the number of triangles in a mesh using " +#~ "the Simplify mesh feature? Right-click the model and select Simplify " +#~ "model. Read more in the documentation." +#~ msgstr "" +#~ "簡化模型\n" +#~ "您知道嗎,您可以使用“簡化模型”功能減少模型的三角形數。在模型上單擊滑鼠右" +#~ "鍵,然後選擇“簡化模型”。" + +#, fuzzy +#~ msgid "" +#~ "Subtract a Part\n" +#~ "Did you know that you can subtract one mesh from another using the " +#~ "Negative part modifier? That way you can, for example, create easily " +#~ "resizable holes directly in Snapmaker Orca. Read more in the documentation." +#~ msgstr "" +#~ "減去部分幾何體\n" +#~ "您知道嗎,您可以使用負零件從另一個幾何體中減去另一個幾何體。例如,可以直接" +#~ "在 Snapmaker Orca 中建立可輕鬆調整大小的孔。" + +#~ msgid "Filling bed " +#~ msgstr "填充自動朝向" + +#, boost-format +#~ msgid "%1% infill pattern doesn't support 100%% density." +#~ msgstr "%1% 填充圖案不支援 100%% 密度。" + +#~ msgid "" +#~ "Switch to rectilinear pattern?\n" +#~ "Yes - switch to rectilinear pattern automaticlly\n" +#~ "No - reset density to default non 100% value automaticlly" +#~ msgstr "" +#~ "切換到直線圖案?\n" +#~ "是 - 自動切換到直線圖案\n" +#~ "否 - 自動將密度重設為預設的非 100% 值" + +#~ msgid "Please heat the nozzle to above 170 degree before loading filament." +#~ msgstr "請在進料前把噴嘴升溫到 170℃" + +#, fuzzy +#~ msgid "Show g-code window" +#~ msgstr "顯示 G-code 視窗" + +#, fuzzy +#~ msgid "If enabled, g-code window will be displayed." +#~ msgstr "如果啟用,將顯示 G-Code 視窗。" + +#, fuzzy, c-format +#~ msgid "Density of internal sparse infill, 100% means solid throughout" +#~ msgstr "內部稀疏填充密度,100%% 表示整體實心" + +#~ msgid "Tree support wall loops" +#~ msgstr "樹狀支撐外牆層數" + +#~ msgid "This setting specify the count of walls around tree support" +#~ msgstr "樹狀支撐外牆層數" + +#, c-format, boost-format +#~ msgid " doesn't work at 100%% density " +#~ msgstr " 填充圖案不支援 100%% 密度" + +#~ msgid "Ctrl + Shift + Enter" +#~ msgstr "Ctrl + Shift + Enter" + +#~ msgid "Tool-Lay on Face" +#~ msgstr "工具-選擇底面" + +#~ msgid "Export as STL" +#~ msgstr "匯出為 STL" + +#~ msgid "Check cloud service status" +#~ msgstr "檢查雲端服務狀態" + +#, fuzzy +#~ msgid "Please input a valid value (K in 0~0.5)" +#~ msgstr "請輸入有效的數值(K 值的範圍為 0~0.5)" + +#, fuzzy +#~ msgid "Please input a valid value (K in 0~0.5, N in 0.6~2.0)" +#~ msgstr "請輸入有效的數值(K 值的範圍為 0~0.5, N 值的範圍為 0.6~2.0)" + +#, fuzzy +#~ msgid "Export all objects as STL" +#~ msgstr "匯出所有物件為 STL" + +#~ msgid "The 3mf is not compatible, load geometry data only!" +#~ msgstr "該 3mf 檔案與軟體不相容,將只載入幾何數據。" + +#~ msgid "Incompatible 3mf" +#~ msgstr "不相容的 3mf" + +#, fuzzy +#~ msgid "Add/Remove printers" +#~ msgstr "新增/刪除列印設備" + +#, fuzzy +#~ msgid "" +#~ "When print by object, machines with I3 structure will not generate " +#~ "timelapse videos." +#~ msgstr "按物件列印時,龍門結構的設備不會產生縮時攝影影片" + +#, c-format, boost-format +#~ msgid "%s is not supported by AMS." +#~ msgstr "AMS 不支援 %s 。" + +#, fuzzy +#~ msgid "Don't remind me of this version again" +#~ msgstr "不要再提醒我這個版本" + +#~ msgid "Error: IP or Access Code are not correct" +#~ msgstr "錯誤:IP 或訪問碼不正確" + +#~ msgid "" +#~ "Extrude perimeters that have a part over an overhang in the reverse " +#~ "direction on odd layers. This alternating pattern can drastically improve " +#~ "steep overhang." +#~ msgstr "" +#~ "在奇數層上以相反方向列印懸空部位。 這種交替模式的可以大大改善陡峭的懸空列" +#~ "印品質。" + +#~ msgid "Order of inner wall/outer wall/infil" +#~ msgstr "內牆/外牆/填充的順序" + +#~ msgid "Print sequence of inner wall, outer wall and infill. " +#~ msgstr "內圈牆/外圈牆/填充的列印順序" + +#~ msgid "inner/outer/infill" +#~ msgstr "內牆/外牆/填充" + +#~ msgid "outer/inner/infill" +#~ msgstr "外牆/內牆/填充" + +#~ msgid "infill/inner/outer" +#~ msgstr "填充/內牆/外牆" + +#~ msgid "infill/outer/inner" +#~ msgstr "填充/外牆/內牆" + +#~ msgid "inner-outer-inner/infill" +#~ msgstr "內牆/外牆/內牆/填充" + +#, fuzzy +#~ msgid "Export 3MF" +#~ msgstr "匯出 3MF" + +#, fuzzy +#~ msgid "Export project as 3MF." +#~ msgstr "匯出項目為 3MF。" + +#, fuzzy +#~ msgid "Export slicing data" +#~ msgstr "匯出切片資料" + +#, fuzzy +#~ msgid "Export slicing data to a folder." +#~ msgstr "匯出切片資料到資料夾" + +#, fuzzy +#~ msgid "Load slicing data" +#~ msgstr "匯入切片資料" + +#, fuzzy +#~ msgid "Load cached slicing data from directory" +#~ msgstr "從目錄匯入快取的切片資料" + +#, fuzzy +#~ msgid "Export STL" +#~ msgstr "匯出 STL 檔案" + +#, fuzzy +#~ msgid "Export the objects as multiple STL." +#~ msgstr "將物件匯出為多個 STL 檔案" + +#~ msgid "Slice" +#~ msgstr "切片" + +#~ msgid "Slice the plates: 0-all plates, i-plate i, others-invalid" +#~ msgstr "切片平台:0-所有平台,i-第i個平台,其他-無效" + +#~ msgid "Show command help." +#~ msgstr "顯示命令行幫助。" + +#, fuzzy +#~ msgid "Update the configs values of 3mf to latest." +#~ msgstr "將 3mf 的設定值更新為最新值。" + +#, fuzzy +#~ msgid "Load default filaments" +#~ msgstr "載入預設列印線材" + +#, fuzzy +#~ msgid "Load first filament as default for those not loaded" +#~ msgstr "載入第一個列印線材為預設線材" + +#, fuzzy +#~ msgid "max triangle count per plate for slicing." +#~ msgstr "切片時每個列印板的最大三角形數。" + +#, fuzzy +#~ msgid "max slicing time per plate in seconds." +#~ msgstr "每個列印板的最大切片時間(秒)。" + +#~ msgid "Normative check" +#~ msgstr "規範性檢查" + +#~ msgid "Check the normative items." +#~ msgstr "檢查規範性項目。" + +#~ msgid "Output Model Info" +#~ msgstr "輸出模型資訊" + +#~ msgid "Output the model's information." +#~ msgstr "輸出模型的資訊。" + +#, fuzzy +#~ msgid "Export Settings" +#~ msgstr "匯出設定" + +#, fuzzy +#~ msgid "Export settings to a file." +#~ msgstr "匯出設定檔到檔案。" + +#~ msgid "Send progress to pipe" +#~ msgstr "將進度傳送到管道" + +#~ msgid "Send progress to pipe." +#~ msgstr "將進度傳送到管道。" + +#~ msgid "Arrange Options" +#~ msgstr "擺放選項" + +#~ msgid "Arrange options: 0-disable, 1-enable, others-auto" +#~ msgstr "擺放選項:0-關閉,1-開啟,其他-自動" + +#~ msgid "Repetions count" +#~ msgstr "重複次數" + +#~ msgid "Repetions count of the whole model" +#~ msgstr "整個模型的重複次數" + +#~ msgid "Convert Unit" +#~ msgstr "轉換單位" + +#~ msgid "Convert the units of model" +#~ msgstr "轉換模型的單位" + +#~ msgid "Rotate around X" +#~ msgstr "繞 X 旋轉" + +#~ msgid "Rotation angle around the X axis in degrees." +#~ msgstr "繞 X 軸的旋轉角度(以度為單位)。" + +#~ msgid "Scale the model by a float factor" +#~ msgstr "根據因子縮放模型" + +#, fuzzy +#~ msgid "Load General Settings" +#~ msgstr "載入一般設定" + +#, fuzzy +#~ msgid "Load process/machine settings from the specified file" +#~ msgstr "從指定檔案載入列印參數/設備設定" + +#, fuzzy +#~ msgid "Load Filament Settings" +#~ msgstr "載入線材設定" + +#, fuzzy +#~ msgid "Load filament settings from the specified file list" +#~ msgstr "從指定檔案清單載入線材設定" + +#~ msgid "Skip Objects" +#~ msgstr "零件跳過" + +#~ msgid "Skip some objects in this print" +#~ msgstr "列印過程中跳過一些零件" + +#, fuzzy +#~ msgid "load uptodate process/machine settings when using uptodate" +#~ msgstr "使用最新設定時載入最新的列印參數/設備設定" + +#, fuzzy +#~ msgid "" +#~ "load uptodate process/machine settings from the specified file when using " +#~ "uptodate" +#~ msgstr "使用最新設定時,從指定的檔案清單中載入最新的列印參數/設備設定。" + +#~ msgid "Output directory" +#~ msgstr "輸出路徑" + +#~ msgid "Output directory for the exported files." +#~ msgstr "匯出檔案的輸出路徑。" + +#~ msgid "Debug level" +#~ msgstr "除錯等級" + +#, fuzzy +#~ msgid "" +#~ "Sets debug logging level. 0:fatal, 1:error, 2:warning, 3:info, 4:debug, 5:" +#~ "trace\n" +#~ msgstr "" +#~ "設定除錯日誌等級。0:fatal, 1:error, 2:warning, 3:info, 4:debug, " +#~ "5:trace\n" + +#, fuzzy, boost-format +#~ msgid "The selected preset: %1% is not found." +#~ msgstr "未找到選定的預設值:%1%。" + +#, fuzzy +#~ msgid "" +#~ "3D Scene Operations\n" +#~ "Did you know how to control view and object/part selection with mouse and " +#~ "touchpanel in the 3D scene?" +#~ msgstr "" +#~ "3D 場景操作\n" +#~ "如何在 3D 場景中使用滑鼠和觸碰面板進行視角控制和物件/零件選擇" + +#, fuzzy +#~ msgid "" +#~ "Fix Model\n" +#~ "Did you know that you can fix a corrupted 3D model to avoid a lot of " +#~ "slicing problems?" +#~ msgstr "" +#~ "修復模型\n" +#~ "您知道嗎?您可以修復一個損壞的 3D 模型以避免諸多切片問題。" + +#, fuzzy +#~ msgid "" +#~ "When need to print with the printer door opened\n" +#~ "Opening the printer door can reduce the probability of extruder/hotend " +#~ "clogging when printing lower temperature filament with a higher enclosure " +#~ "temperature. More info about this in the Wiki." +#~ msgstr "" +#~ "當需要打開印表機門進行列印時\n" +#~ "當列印較低溫度的耗材時,打開印表機門可以減少擠出機或熱端堵塞的可能性。 有" +#~ "關此內容的更多信息,請參見 Wiki。" + +#~ msgid "Embeded" +#~ msgstr "嵌入的" + +#~ msgid "" +#~ "Snapmaker Orca configuration file may be corrupted and is not abled to be " +#~ "parsed.Please delete the file and try again." +#~ msgstr "" +#~ "Snapmaker Orca 設定檔可能已損壞而無法解析。請刪除此檔案並重新啟動 Orca " +#~ "Slicer。" + +#~ msgid "Online Models" +#~ msgstr "線上模型" + +#, fuzzy +#~ msgid "Show online staff-picked models on the home page" +#~ msgstr "在首頁上顯示工作人員推薦的線上模型" + +#, c-format +#~ msgid "" +#~ "Force cooling fan to be specific speed when overhang degree of printed " +#~ "part exceeds this value. Expressed as percentage which indicides how much " +#~ "width of the line without support from lower layer. 0%% means forcing " +#~ "cooling for all outer wall no matter how much overhang degree" +#~ msgstr "" +#~ "當列印物件的懸空程度超過此值時,強制冷卻風扇達到特定速度。\n" +#~ "用百分比表示,表明沒有下層支撐的線的寬度是多少。0%% 意味著無論懸空程度如" +#~ "何,都要對所有外壁強制冷卻。" + +#~ msgid "The minimum printing speed when slow down for cooling" +#~ msgstr "自動冷卻降速的最小列印速度" + +#~ msgid "" +#~ "There are currently no identical spare consumables available, and " +#~ "automatic replenishment is currently not possible. \n" +#~ "(Currently supporting automatic supply of consumables with the same " +#~ "brand, material type, and color)" +#~ msgstr "" +#~ "目前無相同的備用線材,暫時無法自動補充線材。\n" +#~ "(目前支援品牌、線材種類、顏色相同的線材的自動補給)" + +#~ msgid "Invalid nozzle diameter" +#~ msgstr "無效的噴嘴口徑" + +#~ msgid "" +#~ "The bed temperature exceeds filament's vitrification temperature. Please " +#~ "open the front door of printer before printing to avoid nozzle clog." +#~ msgstr "" +#~ "熱床溫度超過了線材的軟化溫度。請在列印前打開3D列印機前門以防堵頭。" + +#~ msgid "Temperature of vitrificaiton" +#~ msgstr "軟化溫度" + +#~ msgid "" +#~ "Material becomes soft at this temperature. Thus the heatbed cannot be " +#~ "hotter than this tempature" +#~ msgstr "材料在這個溫度開始變軟。因此熱床溫度不能超過這個溫度。" + +#~ msgid "Enable this option if machine has auxiliary part cooling fan" +#~ msgstr "如果機器有輔助部件冷卻風扇,勾選該選項" + +#~ msgid "" +#~ "Speed of auxiliary part cooling fan. Auxiliary fan will run at this speed " +#~ "during printing except the first several layers which is defined by no " +#~ "cooling layers" +#~ msgstr "" +#~ "輔助部件冷卻風扇的轉速。輔助部件冷卻風扇將一直運行在該速度,除了設置的無需" +#~ "冷卻的前若干層" + +#~ msgid "" +#~ "Filter out gaps smaller than the threshold specified. This setting won't " +#~ "affect top/bottom layers" +#~ msgstr "小於指定臨界值的微小間隙不填充。本設置不會對頂/底層起作用" + +#~ msgid "Empty layers around bottom are replaced by nearest normal layers." +#~ msgstr "底部出現空層,已被最近的正常層替換。" + +#~ msgid "The model has too many empty layers." +#~ msgstr "模型有太多空層。" + +#~ msgid "Cali" +#~ msgstr "校準" + +#~ msgid "Calibration of extrusion" +#~ msgstr "擠出校準" + +#~ msgid "Push new filament into the extruder" +#~ msgstr "將新的線材推入擠出機" + +#, c-format, boost-format +#~ msgid "" +#~ "Bed temperature of other layer is lower than bed temperature of initial " +#~ "layer for more than %d degree centigrade.\n" +#~ "This may cause model broken free from build plate during printing" +#~ msgstr "" +#~ "其它層的熱床溫度比首層熱床溫度低太多,超過了攝氏 %d 度。\n" +#~ "這可能導致列印中模型從熱床脫落" + +#~ msgid "" +#~ "Bed temperature is higher than vitrification temperature of this " +#~ "filament.\n" +#~ "This may cause nozzle blocked and printing failure\n" +#~ "Please keep the printer open during the printing process to ensure air " +#~ "circulation or reduce the temperature of the hot bed" +#~ msgstr "" +#~ "熱床溫度超過了線材的軟化溫度,線材軟化可能造成噴頭堵塞。\n" +#~ "請保持3D列印機在列印過程中敞開,保證空氣流通或降低熱床溫度" + +#~ msgid "Total Time Estimation" +#~ msgstr "總時間預估" + +#~ msgid "Resonance frequency identification" +#~ msgstr "共振頻率辨識" + +#~ msgid "Immediately score" +#~ msgstr "立即打分" + +#~ msgid "Please give a score for your favorite Bambu Market model." +#~ msgstr "請為您喜歡的 Bambu 商城模型打分。" + +#~ msgid "Score" +#~ msgstr "打分" + +#~ msgid "Bambu High Temperature Plate" +#~ msgstr "高溫列印熱床" + +#~ msgid "Can't connect to the printer" +#~ msgstr "無法連接3D列印機" + +#~ msgid "Recommended temperature range" +#~ msgstr "建議溫度範圍" + +#~ msgid "High Temp Plate" +#~ msgstr "高溫列印熱床" + +#~ msgid "" +#~ "Bed temperature when high temperature plate is installed. Value 0 means " +#~ "the filament does not support to print on the High Temp Plate" +#~ msgstr "安裝高溫列印熱床時的熱床溫度。0值表示這個線材不支援高溫列印熱床" + +#~ msgid "Internal bridge support thickness" +#~ msgstr "內部橋接支撐厚度" + +#~ msgid "" +#~ "If enabled, support loops will be generated under the contours of " +#~ "internal bridges.These support loops could prevent internal bridges from " +#~ "extruding over the air and improve the top surface quality, especially " +#~ "when the sparse infill density is low.This value determines the thickness " +#~ "of the support loops. 0 means disable this feature" +#~ msgstr "" +#~ "如果開啟, Snapmaker Orca 切片會沿著內部橋接的邊沿在其下方產生支撐輪廓。這些" +#~ "支撐輪廓可以防止懸空地列印內部橋接並提高頂面質量,特別是在填充密度較低的情" +#~ "況下。這個設置用於調整支撐輪廓的厚度,0表示關閉此特性。" + +#~ msgid "" +#~ "Style and shape of the support. For normal support, projecting the " +#~ "supports into a regular grid will create more stable supports (default), " +#~ "while snug support towers will save material and reduce object scarring.\n" +#~ "For tree support, slim style will merge branches more aggressively and " +#~ "save a lot of material (default), while hybrid style will create similar " +#~ "structure to normal support under large flat overhangs." +#~ msgstr "" +#~ "支撐物的樣式和形狀。對於普通支撐,將支撐投射到一個規則的網格中,將創建更穩" +#~ "定的支撐(默認),而緊貼的支撐塔將節省材料並減少物體的瑕疵。\n" +#~ "對於樹形支撐,苗條板的風格將更積極地合併樹枝,並節省大量的材料(默認),而" +#~ "混合風格將在大的平面懸垂下創建與正常支撐類似的結構。" + +#~ msgid "Target chamber temperature" +#~ msgstr "目標腔體溫度" + +#~ msgid "Bed temperature difference" +#~ msgstr "熱床溫差" + +#~ msgid "" +#~ "Do not recommend bed temperature of other layer to be lower than initial " +#~ "layer for more than this threshold. Too low bed temperature of other " +#~ "layer may cause the model broken free from build plate" +#~ msgstr "" +#~ "不建議其它層熱床溫度比首層的熱床溫度低於這個值。太低的其它層熱床溫度可能導" +#~ "致列印過程中模型從列印板脫落。" + +#~ msgid "Orient the model" +#~ msgstr "旋轉模型" diff --git a/resources/Icon.icns b/resources/Icon.icns index 122961c97c..a9999b38ab 100644 Binary files a/resources/Icon.icns and b/resources/Icon.icns differ diff --git a/resources/data/hints.ini b/resources/data/hints.ini index f4edae1265..9ccdb374f7 100644 --- a/resources/data/hints.ini +++ b/resources/data/hints.ini @@ -64,25 +64,25 @@ [hint:Precise wall] text = Precise wall\nDid you know that turning on precise wall can improve precision and layer consistency? -documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_precision +documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Precise-wall [hint:Sandwich mode] text = Sandwich mode\nDid you know that you can use sandwich mode (inner-outer-inner) to improve precision and layer consistency if your model doesn't have very steep overhangs? [hint:Chamber temperature] -text = Chamber temperature\nDid you know that OrcaSlicer supports chamber temperature? +text = Chamber temperature\nDid you know that Snapmaker Orca supports chamber temperature? documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Chamber-temperature [hint:Calibration] -text = Calibration\nDid you know that calibrating your printer can do wonders? Check out our beloved calibration solution in OrcaSlicer. +text = Calibration\nDid you know that calibrating your printer can do wonders? Check out our beloved calibration solution in Snapmaker Orca. documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Calibration [hint:Auxiliary fan] -text = Auxiliary fan\nDid you know that OrcaSlicer supports Auxiliary part cooling fan? +text = Auxiliary fan\nDid you know that Snapmaker Orca supports Auxiliary part cooling fan? documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Auxiliary-fan [hint:Air filtration] -text = Air filtration/Exhaust Fan\nDid you know that OrcaSlicer can support Air filtration/Exhaust Fan? +text = Air filtration/Exhaust Fan\nDid you know that Snapmaker Orca can support Air filtration/Exhaust Fan? documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/air-filtration [hint:G-code window] @@ -92,7 +92,7 @@ text = G-code window\nYou can turn on/off the G-code window by pressing the C text = Switch workspaces\nYou can switch between Prepare and Preview workspaces by pressing the Tab key. [hint:How to use keyboard shortcuts] -text = How to use keyboard shortcuts\nDid you know that Orca Slicer offers a wide range of keyboard shortcuts and 3D scene operations? +text = How to use keyboard shortcuts\nDid you know that Snapmaker Orca offers a wide range of keyboard shortcuts and 3D scene operations. [hint:Reverse on odd] text = Reverse on odd\nDid you know that Reverse on odd feature can significantly improve the surface quality of your overhangs? @@ -107,10 +107,10 @@ text = Fix Model\nDid you know that you can fix a corrupted 3D model to avoid a text = Timelapse\nDid you know that you can generate a timelapse video during each print? [hint:Auto-Arrange] -text = Auto-Arrange\nDid you know that you can auto-arrange all the objects in your project? +text = Auto-Arrange\nDid you know that you can auto-arrange all objects in your project? [hint:Auto-Orient] -text = Auto-Orient\nDid you know that you can rotate objects to an optimal orientation for printing with a simple click? +text = Auto-Orient\nDid you know that you can rotate objects to an optimal orientation for printing by a simple click? [hint:Lay on Face] text = Lay on Face\nDid you know that you can quickly orient a model so that one of its faces sits on the print bed? Select the \"Place on face\" function or press the F key. @@ -119,7 +119,7 @@ text = Lay on Face\nDid you know that you can quickly orient a model so that one text = Object List\nDid you know that you can view all objects/parts in a list and change settings for each object/part? [hint:Search Functionality] -text = Search Functionality\nDid you know that you use the Search tool to quickly find a specific Orca Slicer setting? +text = Search Functionality\nDid you know that you use the Search tool to quickly find a specific Snapmaker Orca setting? [hint:Simplify Model] text = Simplify Model\nDid you know that you can reduce the number of triangles in a mesh using the Simplify mesh feature? Right-click the model and select Simplify model. @@ -131,10 +131,10 @@ text = Slicing Parameter Table\nDid you know that you can view all objects/parts text = Split to Objects/Parts\nDid you know that you can split a big object into small ones for easy colorizing or printing? [hint:Subtract a Part] -text = Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Orca Slicer. +text = Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Snapmaker Orca. [hint:STEP] -text = STEP\nDid you know that you can improve your print quality by slicing a STEP file instead of an STL?\nOrca Slicer supports slicing STEP files, providing smoother results than a lower resolution STL. Give it a try! +text = STEP\nDid you know that you can improve your print quality by slicing a STEP file instead of an STL?\nSnapmaker Orca supports slicing STEP files, providing smoother results than a lower resolution STL. Give it a try! [hint:Z seam location] text = Z seam location\nDid you know that you can customize the location of the Z seam, and even paint it on your print, to have it in a less visible location? This improves the overall look of your model. Check it out! @@ -158,25 +158,25 @@ text = Different types of supports\nDid you know that you can choose from multip text = Printing Silk Filament\nDid you know that Silk filament needs special consideration to print it successfully? Higher temperature and lower speed are always recommended for the best results. [hint:Brim for better adhesion] -text = Brim for better adhesion\nDid you know that when printed models have a small contact interface with the printing surface, it's recommended to use a brim? +text = Brim for better adhesion\nDid you know that when printing models have a small contact interface with the printing surface, it's recommended to use a brim? [hint:Set parameters for multiple objects] -text = Set parameters for multiple objects\nDid you know that you can set slicing parameters for all selected objects at once? +text = Set parameters for multiple objects\nDid you know that you can set slicing parameters for all selected objects at one time? [hint:Stack objects] text = Stack objects\nDid you know that you can stack objects as a whole one? [hint:Flush into support/objects/infill] -text = Flush into support/objects/infill\nDid you know that you can save wasted filament by flushing it into support/objects/infill during filament change? +text = Flush into support/objects/infill\nDid you know that you can save the wasted filament by flushing them into support/objects/infill during filament change? [hint:Improve strength] text = Improve strength\nDid you know that you can use more wall loops and higher sparse infill density to improve the strength of the model? -[hint:When do you need to print with the printer door opened] -text = When do you need to print with the printer door opened?\nDid you know that opening the printer door can reduce the probability of extruder/hotend clogging when printing lower temperature filament with a higher enclosure temperature? More info about this in the Wiki. +[hint:When need to print with the printer door opened] +text = When need to print with the printer door opened\nDid you know that opening the printer door can reduce the probability of extruder/hotend clogging when printing lower temperature filament with a higher enclosure temperature. More info about this in the Wiki. [hint:Avoid warping] -text = Avoid warping\nDid you know that when printing materials that are prone to warping such as ABS, appropriately increasing the heatbed temperature can reduce the probability of warping? +text = Avoid warping\nDid you know that when printing materials that are prone to warping such as ABS, appropriately increasing the heatbed temperature can reduce the probability of warping. #[hint:] #text = diff --git a/resources/images/OrcaSlicer-mac_128px.png b/resources/images/OrcaSlicer-mac_128px.png deleted file mode 100644 index 4e34d48e36..0000000000 Binary files a/resources/images/OrcaSlicer-mac_128px.png and /dev/null differ diff --git a/resources/images/OrcaSlicer-mac_256px.ico b/resources/images/OrcaSlicer-mac_256px.ico deleted file mode 100644 index 6556443c1f..0000000000 Binary files a/resources/images/OrcaSlicer-mac_256px.ico and /dev/null differ diff --git a/resources/images/OrcaSlicer.icns b/resources/images/OrcaSlicer.icns deleted file mode 100644 index 40df0a8a26..0000000000 Binary files a/resources/images/OrcaSlicer.icns and /dev/null differ diff --git a/resources/images/OrcaSlicer.ico b/resources/images/OrcaSlicer.ico deleted file mode 100644 index 67c77feda8..0000000000 Binary files a/resources/images/OrcaSlicer.ico and /dev/null differ diff --git a/resources/images/OrcaSlicer.png b/resources/images/OrcaSlicer.png deleted file mode 100644 index d362364b61..0000000000 Binary files a/resources/images/OrcaSlicer.png and /dev/null differ diff --git a/resources/images/OrcaSlicer.svg b/resources/images/OrcaSlicer.svg deleted file mode 100644 index f8d677c555..0000000000 --- a/resources/images/OrcaSlicer.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/resources/images/OrcaSlicerTitle.ico b/resources/images/OrcaSlicerTitle.ico deleted file mode 100644 index 84da66f76e..0000000000 Binary files a/resources/images/OrcaSlicerTitle.ico and /dev/null differ diff --git a/resources/images/OrcaSlicerTitle.png b/resources/images/OrcaSlicerTitle.png deleted file mode 100644 index 3a35f8eaf7..0000000000 Binary files a/resources/images/OrcaSlicerTitle.png and /dev/null differ diff --git a/resources/images/OrcaSlicer_128px.png b/resources/images/OrcaSlicer_128px.png deleted file mode 100644 index 4e34d48e36..0000000000 Binary files a/resources/images/OrcaSlicer_128px.png and /dev/null differ diff --git a/resources/images/OrcaSlicer_154.png b/resources/images/OrcaSlicer_154.png deleted file mode 100644 index e634bedadd..0000000000 Binary files a/resources/images/OrcaSlicer_154.png and /dev/null differ diff --git a/resources/images/OrcaSlicer_154_title.png b/resources/images/OrcaSlicer_154_title.png deleted file mode 100644 index 3d8d34ffad..0000000000 Binary files a/resources/images/OrcaSlicer_154_title.png and /dev/null differ diff --git a/resources/images/OrcaSlicer_192px.png b/resources/images/OrcaSlicer_192px.png deleted file mode 100644 index 8a155dd862..0000000000 Binary files a/resources/images/OrcaSlicer_192px.png and /dev/null differ diff --git a/resources/images/OrcaSlicer_192px_grayscale.png b/resources/images/OrcaSlicer_192px_grayscale.png deleted file mode 100644 index 9570a16be6..0000000000 Binary files a/resources/images/OrcaSlicer_192px_grayscale.png and /dev/null differ diff --git a/resources/images/OrcaSlicer_192px_transparent.png b/resources/images/OrcaSlicer_192px_transparent.png deleted file mode 100644 index a9781fe4eb..0000000000 Binary files a/resources/images/OrcaSlicer_192px_transparent.png and /dev/null differ diff --git a/resources/images/OrcaSlicer_32px.png b/resources/images/OrcaSlicer_32px.png deleted file mode 100644 index c1a9e8bf41..0000000000 Binary files a/resources/images/OrcaSlicer_32px.png and /dev/null differ diff --git a/resources/images/OrcaSlicer_64.png b/resources/images/OrcaSlicer_64.png deleted file mode 100644 index a3eee3cb67..0000000000 Binary files a/resources/images/OrcaSlicer_64.png and /dev/null differ diff --git a/resources/images/OrcaSlicer_about.svg b/resources/images/OrcaSlicer_about.svg deleted file mode 100644 index 5b675c07f8..0000000000 --- a/resources/images/OrcaSlicer_about.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/resources/images/OrcaSlicer_about_dark.svg b/resources/images/OrcaSlicer_about_dark.svg deleted file mode 100644 index efff0dc6fc..0000000000 --- a/resources/images/OrcaSlicer_about_dark.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/resources/images/OrcaSlicer_gradient.svg b/resources/images/OrcaSlicer_gradient.svg deleted file mode 100644 index 6e3829cad1..0000000000 --- a/resources/images/OrcaSlicer_gradient.svg +++ /dev/null @@ -1,137 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/resources/images/OrcaSlicer_gradient_circle.svg b/resources/images/OrcaSlicer_gradient_circle.svg deleted file mode 100644 index adcb8839c1..0000000000 --- a/resources/images/OrcaSlicer_gradient_circle.svg +++ /dev/null @@ -1,282 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/resources/images/OrcaSlicer_gradient_narrow.svg b/resources/images/OrcaSlicer_gradient_narrow.svg deleted file mode 100644 index 69bf400b90..0000000000 --- a/resources/images/OrcaSlicer_gradient_narrow.svg +++ /dev/null @@ -1,137 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/resources/images/OrcaSlicer_gray.svg b/resources/images/OrcaSlicer_gray.svg deleted file mode 100644 index ef9f5de303..0000000000 --- a/resources/images/OrcaSlicer_gray.svg +++ /dev/null @@ -1,140 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/resources/images/Snapmaker A250 BKit_cover.png b/resources/images/Snapmaker A250 BKit_cover.png new file mode 100644 index 0000000000..9da7df1fb3 Binary files /dev/null and b/resources/images/Snapmaker A250 BKit_cover.png differ diff --git a/resources/images/Snapmaker A250 Dual BKit_cover.png b/resources/images/Snapmaker A250 Dual BKit_cover.png new file mode 100644 index 0000000000..4f8748bba9 Binary files /dev/null and b/resources/images/Snapmaker A250 Dual BKit_cover.png differ diff --git a/resources/images/Snapmaker A250 Dual QS+B Kit_cover.png b/resources/images/Snapmaker A250 Dual QS+B Kit_cover.png new file mode 100644 index 0000000000..f0e30cac4e Binary files /dev/null and b/resources/images/Snapmaker A250 Dual QS+B Kit_cover.png differ diff --git a/resources/images/Snapmaker A250 Dual QSKit_cover.png b/resources/images/Snapmaker A250 Dual QSKit_cover.png new file mode 100644 index 0000000000..1d0c8f787a Binary files /dev/null and b/resources/images/Snapmaker A250 Dual QSKit_cover.png differ diff --git a/resources/images/Snapmaker A250 Dual_cover.png b/resources/images/Snapmaker A250 Dual_cover.png new file mode 100644 index 0000000000..fd8952940c Binary files /dev/null and b/resources/images/Snapmaker A250 Dual_cover.png differ diff --git a/resources/images/Snapmaker A250 QS+B Kit_cover.png b/resources/images/Snapmaker A250 QS+B Kit_cover.png new file mode 100644 index 0000000000..1a0ffad591 Binary files /dev/null and b/resources/images/Snapmaker A250 QS+B Kit_cover.png differ diff --git a/resources/images/Snapmaker A250 QSKit_cover.png b/resources/images/Snapmaker A250 QSKit_cover.png new file mode 100644 index 0000000000..9413061bf0 Binary files /dev/null and b/resources/images/Snapmaker A250 QSKit_cover.png differ diff --git a/resources/images/Snapmaker A250_cover.png b/resources/images/Snapmaker A250_cover.png new file mode 100644 index 0000000000..690fa692a4 Binary files /dev/null and b/resources/images/Snapmaker A250_cover.png differ diff --git a/resources/images/Snapmaker A350 BKit_cover.png b/resources/images/Snapmaker A350 BKit_cover.png new file mode 100644 index 0000000000..e93a39438e Binary files /dev/null and b/resources/images/Snapmaker A350 BKit_cover.png differ diff --git a/resources/images/Snapmaker A350 Dual BKit_cover.png b/resources/images/Snapmaker A350 Dual BKit_cover.png new file mode 100644 index 0000000000..32497f44b2 Binary files /dev/null and b/resources/images/Snapmaker A350 Dual BKit_cover.png differ diff --git a/resources/images/Snapmaker A350 Dual QS+B Kit_cover.png b/resources/images/Snapmaker A350 Dual QS+B Kit_cover.png new file mode 100644 index 0000000000..d3a17a1656 Binary files /dev/null and b/resources/images/Snapmaker A350 Dual QS+B Kit_cover.png differ diff --git a/resources/images/Snapmaker A350 Dual QSKit_cover.png b/resources/images/Snapmaker A350 Dual QSKit_cover.png new file mode 100644 index 0000000000..01bce804a3 Binary files /dev/null and b/resources/images/Snapmaker A350 Dual QSKit_cover.png differ diff --git a/resources/images/Snapmaker A350 Dual_cover.png b/resources/images/Snapmaker A350 Dual_cover.png new file mode 100644 index 0000000000..48dbf589d1 Binary files /dev/null and b/resources/images/Snapmaker A350 Dual_cover.png differ diff --git a/resources/images/Snapmaker A350 QS+B Kit_cover.png b/resources/images/Snapmaker A350 QS+B Kit_cover.png new file mode 100644 index 0000000000..9b118b06f1 Binary files /dev/null and b/resources/images/Snapmaker A350 QS+B Kit_cover.png differ diff --git a/resources/images/Snapmaker A350 QSKit_cover.png b/resources/images/Snapmaker A350 QSKit_cover.png new file mode 100644 index 0000000000..a11de0f768 Binary files /dev/null and b/resources/images/Snapmaker A350 QSKit_cover.png differ diff --git a/resources/images/Snapmaker A350_cover.png b/resources/images/Snapmaker A350_cover.png new file mode 100644 index 0000000000..5c4aa01dab Binary files /dev/null and b/resources/images/Snapmaker A350_cover.png differ diff --git a/resources/images/Snapmaker Artisan_cover.png b/resources/images/Snapmaker Artisan_cover.png new file mode 100644 index 0000000000..9aa7091326 Binary files /dev/null and b/resources/images/Snapmaker Artisan_cover.png differ diff --git a/resources/images/Snapmaker J1_cover.png b/resources/images/Snapmaker J1_cover.png new file mode 100644 index 0000000000..8940180d6b Binary files /dev/null and b/resources/images/Snapmaker J1_cover.png differ diff --git a/resources/images/Snapmaker U1_cover.png b/resources/images/Snapmaker U1_cover.png new file mode 100644 index 0000000000..d3f48f7852 Binary files /dev/null and b/resources/images/Snapmaker U1_cover.png differ diff --git a/resources/images/Snapmaker_Orca-mac_128px.png b/resources/images/Snapmaker_Orca-mac_128px.png new file mode 100644 index 0000000000..cf16b5d730 Binary files /dev/null and b/resources/images/Snapmaker_Orca-mac_128px.png differ diff --git a/resources/images/Snapmaker_Orca-mac_256px.ico b/resources/images/Snapmaker_Orca-mac_256px.ico new file mode 100644 index 0000000000..3f9fa08e19 Binary files /dev/null and b/resources/images/Snapmaker_Orca-mac_256px.ico differ diff --git a/resources/images/Snapmaker_Orca.icns b/resources/images/Snapmaker_Orca.icns new file mode 100644 index 0000000000..a9999b38ab Binary files /dev/null and b/resources/images/Snapmaker_Orca.icns differ diff --git a/resources/images/Snapmaker_Orca.ico b/resources/images/Snapmaker_Orca.ico new file mode 100644 index 0000000000..3a12cd1f23 Binary files /dev/null and b/resources/images/Snapmaker_Orca.ico differ diff --git a/resources/images/Snapmaker_Orca.png b/resources/images/Snapmaker_Orca.png new file mode 100644 index 0000000000..506b68e69c Binary files /dev/null and b/resources/images/Snapmaker_Orca.png differ diff --git a/resources/images/Snapmaker_OrcaTitle.ico b/resources/images/Snapmaker_OrcaTitle.ico new file mode 100644 index 0000000000..6107ce2ea0 Binary files /dev/null and b/resources/images/Snapmaker_OrcaTitle.ico differ diff --git a/resources/images/Snapmaker_OrcaTitle.png b/resources/images/Snapmaker_OrcaTitle.png new file mode 100644 index 0000000000..8c6776414c Binary files /dev/null and b/resources/images/Snapmaker_OrcaTitle.png differ diff --git a/resources/images/Snapmaker_Orca_128px.png b/resources/images/Snapmaker_Orca_128px.png new file mode 100644 index 0000000000..cf16b5d730 Binary files /dev/null and b/resources/images/Snapmaker_Orca_128px.png differ diff --git a/resources/images/Snapmaker_Orca_154.png b/resources/images/Snapmaker_Orca_154.png new file mode 100644 index 0000000000..64bad0a1a3 Binary files /dev/null and b/resources/images/Snapmaker_Orca_154.png differ diff --git a/resources/images/Snapmaker_Orca_154_title.png b/resources/images/Snapmaker_Orca_154_title.png new file mode 100644 index 0000000000..9cc51caba9 Binary files /dev/null and b/resources/images/Snapmaker_Orca_154_title.png differ diff --git a/resources/images/Snapmaker_Orca_192px.png b/resources/images/Snapmaker_Orca_192px.png new file mode 100644 index 0000000000..60871703df Binary files /dev/null and b/resources/images/Snapmaker_Orca_192px.png differ diff --git a/resources/images/Snapmaker_Orca_192px_grayscale.png b/resources/images/Snapmaker_Orca_192px_grayscale.png new file mode 100644 index 0000000000..60871703df Binary files /dev/null and b/resources/images/Snapmaker_Orca_192px_grayscale.png differ diff --git a/resources/images/Snapmaker_Orca_192px_transparent.png b/resources/images/Snapmaker_Orca_192px_transparent.png new file mode 100644 index 0000000000..e66de32767 Binary files /dev/null and b/resources/images/Snapmaker_Orca_192px_transparent.png differ diff --git a/resources/images/Snapmaker_Orca_32px.png b/resources/images/Snapmaker_Orca_32px.png new file mode 100644 index 0000000000..58f0615c4f Binary files /dev/null and b/resources/images/Snapmaker_Orca_32px.png differ diff --git a/resources/images/Snapmaker_Orca_64.png b/resources/images/Snapmaker_Orca_64.png new file mode 100644 index 0000000000..369dd27802 Binary files /dev/null and b/resources/images/Snapmaker_Orca_64.png differ diff --git a/resources/images/Snapmaker_Orca_about.svg b/resources/images/Snapmaker_Orca_about.svg new file mode 100644 index 0000000000..401babdf82 --- /dev/null +++ b/resources/images/Snapmaker_Orca_about.svg @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/images/Snapmaker_Orca_gradient.png b/resources/images/Snapmaker_Orca_gradient.png new file mode 100644 index 0000000000..506b68e69c Binary files /dev/null and b/resources/images/Snapmaker_Orca_gradient.png differ diff --git a/resources/images/Snapmaker_Orca_gradient_circle.png b/resources/images/Snapmaker_Orca_gradient_circle.png new file mode 100644 index 0000000000..506b68e69c Binary files /dev/null and b/resources/images/Snapmaker_Orca_gradient_circle.png differ diff --git a/resources/images/Snapmaker_Orca_gradient_narrow.png b/resources/images/Snapmaker_Orca_gradient_narrow.png new file mode 100644 index 0000000000..506b68e69c Binary files /dev/null and b/resources/images/Snapmaker_Orca_gradient_narrow.png differ diff --git a/resources/images/Snapmaker_Orca_gray.png b/resources/images/Snapmaker_Orca_gray.png new file mode 100644 index 0000000000..506b68e69c Binary files /dev/null and b/resources/images/Snapmaker_Orca_gray.png differ diff --git a/resources/images/im_all_plates_stats.svg b/resources/images/im_all_plates_stats.svg index eba03a0741..711b59ee02 100644 --- a/resources/images/im_all_plates_stats.svg +++ b/resources/images/im_all_plates_stats.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/resources/images/im_all_plates_stats_transparent.svg b/resources/images/im_all_plates_stats_transparent.svg new file mode 100644 index 0000000000..8254696754 --- /dev/null +++ b/resources/images/im_all_plates_stats_transparent.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/resources/images/info.png b/resources/images/info.png new file mode 100644 index 0000000000..cf16b5d730 Binary files /dev/null and b/resources/images/info.png differ diff --git a/resources/images/menu_filament.svg b/resources/images/menu_filament.svg new file mode 100644 index 0000000000..1a4a0eddb0 --- /dev/null +++ b/resources/images/menu_filament.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/resources/images/monitor_machine_working.svg b/resources/images/monitor_machine_working.svg new file mode 100644 index 0000000000..1cc9f4b879 --- /dev/null +++ b/resources/images/monitor_machine_working.svg @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/resources/images/printer_placeholder.png b/resources/images/printer_placeholder.png index bc1b2af2ed..8274019d83 100644 Binary files a/resources/images/printer_placeholder.png and b/resources/images/printer_placeholder.png differ diff --git a/resources/images/printer_placeholder_cover.png b/resources/images/printer_placeholder_cover.png new file mode 100644 index 0000000000..8274019d83 Binary files /dev/null and b/resources/images/printer_placeholder_cover.png differ diff --git a/resources/images/question.png b/resources/images/question.png new file mode 100644 index 0000000000..cf16b5d730 Binary files /dev/null and b/resources/images/question.png differ diff --git a/resources/images/question.svg b/resources/images/question.svg deleted file mode 100644 index 5b4ecc50e1..0000000000 --- a/resources/images/question.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/resources/images/splash_logo.svg b/resources/images/splash_logo.svg index 3bcd34637d..45a5b3be25 100644 --- a/resources/images/splash_logo.svg +++ b/resources/images/splash_logo.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/resources/images/splash_logo_dark.svg b/resources/images/splash_logo_dark.svg index 5caad657ed..5ea2bebcbd 100644 --- a/resources/images/splash_logo_dark.svg +++ b/resources/images/splash_logo_dark.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/resources/profiles/Snapmaker.json b/resources/profiles/Snapmaker.json index e5b3b2b155..8b814c19bb 100644 --- a/resources/profiles/Snapmaker.json +++ b/resources/profiles/Snapmaker.json @@ -1,1606 +1,1708 @@ { - "name": "Snapmaker", - "version": "02.03.01.10", - "force_update": "0", - "description": "Snapmaker configurations", - "machine_model_list": [ - { - "name": "Snapmaker A250", - "sub_path": "machine/Snapmaker A250.json" - }, - { - "name": "Snapmaker A250 BKit", - "sub_path": "machine/Snapmaker A250 BKit.json" - }, - { - "name": "Snapmaker A250 Dual", - "sub_path": "machine/Snapmaker A250 Dual.json" - }, - { - "name": "Snapmaker A250 Dual BKit", - "sub_path": "machine/Snapmaker A250 Dual BKit.json" - }, - { - "name": "Snapmaker A250 Dual QS+B Kit", - "sub_path": "machine/Snapmaker A250 Dual QS+B Kit.json" - }, - { - "name": "Snapmaker A250 Dual QSKit", - "sub_path": "machine/Snapmaker A250 Dual QSKit.json" - }, - { - "name": "Snapmaker A250 QS+B Kit", - "sub_path": "machine/Snapmaker A250 QS+B Kit.json" - }, - { - "name": "Snapmaker A250 QSKit", - "sub_path": "machine/Snapmaker A250 QSKit.json" - }, - { - "name": "Snapmaker A350", - "sub_path": "machine/Snapmaker A350.json" - }, - { - "name": "Snapmaker A350 BKit", - "sub_path": "machine/Snapmaker A350 BKit.json" - }, - { - "name": "Snapmaker A350 Dual", - "sub_path": "machine/Snapmaker A350 Dual.json" - }, - { - "name": "Snapmaker A350 Dual BKit", - "sub_path": "machine/Snapmaker A350 Dual BKit.json" - }, - { - "name": "Snapmaker A350 Dual QS+B Kit", - "sub_path": "machine/Snapmaker A350 Dual QS+B Kit.json" - }, - { - "name": "Snapmaker A350 Dual QSKit", - "sub_path": "machine/Snapmaker A350 Dual QSKit.json" - }, - { - "name": "Snapmaker A350 QS+B Kit", - "sub_path": "machine/Snapmaker A350 QS+B Kit.json" - }, - { - "name": "Snapmaker A350 QSKit", - "sub_path": "machine/Snapmaker A350 QSKit.json" - }, - { - "name": "Snapmaker Artisan", - "sub_path": "machine/Snapmaker Artisan.json" - }, - { - "name": "Snapmaker J1", - "sub_path": "machine/Snapmaker J1.json" - }, - { - "name": "Snapmaker U1", - "sub_path": "machine/Snapmaker U1.json" - } - ], - "process_list": [ - { - "name": "fdm_process_U1", - "sub_path": "process/fdm_process_U1.json" - }, - { - "name": "fdm_process_common", - "sub_path": "process/fdm_process_common.json" - }, - { - "name": "0.25 Benchy @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.25 Benchy @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "fdm_process_U1_common", - "sub_path": "process/fdm_process_U1_common.json" - }, - { - "name": "0.06 Standard @Snapmaker (0.2 nozzle)", - "sub_path": "process/0.06 Standard @Snapmaker (0.2 nozzle).json" - }, - { - "name": "0.08 Extra Fine @Snapmaker (0.4 nozzle)", - "sub_path": "process/0.08 Extra Fine @Snapmaker (0.4 nozzle).json" - }, - { - "name": "0.10 Standard @Snapmaker (0.2 nozzle)", - "sub_path": "process/0.10 Standard @Snapmaker (0.2 nozzle).json" - }, - { - "name": "0.12 Fine @Snapmaker (0.4 nozzle)", - "sub_path": "process/0.12 Fine @Snapmaker (0.4 nozzle).json" - }, - { - "name": "0.14 Standard @Snapmaker (0.2 nozzle)", - "sub_path": "process/0.14 Standard @Snapmaker (0.2 nozzle).json" - }, - { - "name": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "sub_path": "process/0.16 Optimal @Snapmaker (0.4 nozzle).json" - }, - { - "name": "0.18 Standard @Snapmaker (0.6 nozzle)", - "sub_path": "process/0.18 Standard @Snapmaker (0.6 nozzle).json" - }, - { - "name": "0.20 Standard @Snapmaker (0.4 nozzle)", - "sub_path": "process/0.20 Standard @Snapmaker (0.4 nozzle).json" - }, - { - "name": "0.20 Strength @Snapmaker (0.4 nozzle)", - "sub_path": "process/0.20 Strength @Snapmaker (0.4 nozzle).json" - }, - { - "name": "0.24 Draft @Snapmaker (0.4 nozzle)", - "sub_path": "process/0.24 Draft @Snapmaker (0.4 nozzle).json" - }, - { - "name": "0.24 Standard @Snapmaker (0.6 nozzle)", - "sub_path": "process/0.24 Standard @Snapmaker (0.6 nozzle).json" - }, - { - "name": "0.24 Standard @Snapmaker (0.8 nozzle)", - "sub_path": "process/0.24 Standard @Snapmaker (0.8 nozzle).json" - }, - { - "name": "0.28 Extra Draft @Snapmaker (0.4 nozzle)", - "sub_path": "process/0.28 Extra Draft @Snapmaker (0.4 nozzle).json" - }, - { - "name": "0.30 Standard @Snapmaker (0.6 nozzle)", - "sub_path": "process/0.30 Standard @Snapmaker (0.6 nozzle).json" - }, - { - "name": "0.30 Strength @Snapmaker (0.6 nozzle)", - "sub_path": "process/0.30 Strength @Snapmaker (0.6 nozzle).json" - }, - { - "name": "0.32 Standard @Snapmaker (0.8 nozzle)", - "sub_path": "process/0.32 Standard @Snapmaker (0.8 nozzle).json" - }, - { - "name": "0.34 Standard @Snapmaker (0.6 nozzle)", - "sub_path": "process/0.34 Standard @Snapmaker (0.6 nozzle).json" - }, - { - "name": "0.36 Standard @Snapmaker (0.8 nozzle)", - "sub_path": "process/0.36 Standard @Snapmaker (0.8 nozzle).json" - }, - { - "name": "0.38 Standard @Snapmaker (0.6 nozzle)", - "sub_path": "process/0.38 Standard @Snapmaker (0.6 nozzle).json" - }, - { - "name": "0.40 Standard @Snapmaker (0.8 nozzle)", - "sub_path": "process/0.40 Standard @Snapmaker (0.8 nozzle).json" - }, - { - "name": "0.42 Draft @Snapmaker (0.6 nozzle)", - "sub_path": "process/0.42 Draft @Snapmaker (0.6 nozzle).json" - }, - { - "name": "0.48 Draft @Snapmaker (0.8 nozzle)", - "sub_path": "process/0.48 Draft @Snapmaker (0.8 nozzle).json" - }, - { - "name": "fdm_process_a400", - "sub_path": "process/fdm_process_a400.json" - }, - { - "name": "fdm_process_idex", - "sub_path": "process/fdm_process_idex.json" - }, - { - "name": "fdm_process_U1_0.08", - "sub_path": "process/fdm_process_U1_0.08.json" - }, - { - "name": "fdm_process_U1_0.12", - "sub_path": "process/fdm_process_U1_0.12.json" - }, - { - "name": "fdm_process_U1_0.16", - "sub_path": "process/fdm_process_U1_0.16.json" - }, - { - "name": "fdm_process_U1_0.20", - "sub_path": "process/fdm_process_U1_0.20.json" - }, - { - "name": "fdm_process_U1_0.24", - "sub_path": "process/fdm_process_U1_0.24.json" - }, - { - "name": "fdm_process_U1_0.28", - "sub_path": "process/fdm_process_U1_0.28.json" - }, - { - "name": "0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle)", - "sub_path": "process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json" - }, - { - "name": "0.10 Standard @Snapmaker Artisan (0.2 nozzle)", - "sub_path": "process/0.10 Standard @Snapmaker Artisan (0.2 nozzle).json" - }, - { - "name": "0.12 Fine @Snapmaker Artisan (0.4 nozzle)", - "sub_path": "process/0.12 Fine @Snapmaker Artisan (0.4 nozzle).json" - }, - { - "name": "0.14 Standard @Snapmaker Artisan (0.2 nozzle)", - "sub_path": "process/0.14 Standard @Snapmaker Artisan (0.2 nozzle).json" - }, - { - "name": "0.16 Optimal @Snapmaker Artisan (0.4 nozzle)", - "sub_path": "process/0.16 Optimal @Snapmaker Artisan (0.4 nozzle).json" - }, - { - "name": "0.18 Standard @Snapmaker Artisan (0.6 nozzle)", - "sub_path": "process/0.18 Standard @Snapmaker Artisan (0.6 nozzle).json" - }, - { - "name": "0.20 Standard @Snapmaker Artisan (0.4 nozzle)", - "sub_path": "process/0.20 Standard @Snapmaker Artisan (0.4 nozzle).json" - }, - { - "name": "0.20 Strength @Snapmaker Artisan (0.4 nozzle)", - "sub_path": "process/0.20 Strength @Snapmaker Artisan (0.4 nozzle).json" - }, - { - "name": "0.24 Draft @Snapmaker Artisan (0.4 nozzle)", - "sub_path": "process/0.24 Draft @Snapmaker Artisan (0.4 nozzle).json" - }, - { - "name": "0.24 Standard @Snapmaker Artisan (0.6 nozzle)", - "sub_path": "process/0.24 Standard @Snapmaker Artisan (0.6 nozzle).json" - }, - { - "name": "0.24 Standard @Snapmaker Artisan (0.8 nozzle)", - "sub_path": "process/0.24 Standard @Snapmaker Artisan (0.8 nozzle).json" - }, - { - "name": "0.25 Benchy @Snapmaker Artisan (0.4 nozzle)", - "sub_path": "process/0.25 Benchy @Snapmaker Artisan (0.4 nozzle).json" - }, - { - "name": "0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle)", - "sub_path": "process/0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle).json" - }, - { - "name": "0.30 Standard @Snapmaker Artisan (0.6 nozzle)", - "sub_path": "process/0.30 Standard @Snapmaker Artisan (0.6 nozzle).json" - }, - { - "name": "0.30 Strength @Snapmaker Artisan (0.6 nozzle)", - "sub_path": "process/0.30 Strength @Snapmaker Artisan (0.6 nozzle).json" - }, - { - "name": "0.32 Standard @Snapmaker Artisan (0.8 nozzle)", - "sub_path": "process/0.32 Standard @Snapmaker Artisan (0.8 nozzle).json" - }, - { - "name": "0.34 Standard @Snapmaker Artisan (0.6 nozzle)", - "sub_path": "process/0.34 Standard @Snapmaker Artisan (0.6 nozzle).json" - }, - { - "name": "0.36 Standard @Snapmaker Artisan (0.8 nozzle)", - "sub_path": "process/0.36 Standard @Snapmaker Artisan (0.8 nozzle).json" - }, - { - "name": "0.38 Standard @Snapmaker Artisan (0.6 nozzle)", - "sub_path": "process/0.38 Standard @Snapmaker Artisan (0.6 nozzle).json" - }, - { - "name": "0.40 Standard @Snapmaker Artisan (0.8 nozzle)", - "sub_path": "process/0.40 Standard @Snapmaker Artisan (0.8 nozzle).json" - }, - { - "name": "0.42 Draft @Snapmaker Artisan (0.6 nozzle)", - "sub_path": "process/0.42 Draft @Snapmaker Artisan (0.6 nozzle).json" - }, - { - "name": "0.48 Draft @Snapmaker Artisan (0.8 nozzle)", - "sub_path": "process/0.48 Draft @Snapmaker Artisan (0.8 nozzle).json" - }, - { - "name": "0.06 Standard @Snapmaker J1 (0.2 nozzle)", - "sub_path": "process/0.06 Standard @Snapmaker J1 (0.2 nozzle).json" - }, - { - "name": "0.08 Extra Fine @Snapmaker J1 (0.4 nozzle)", - "sub_path": "process/0.08 Extra Fine @Snapmaker J1 (0.4 nozzle).json" - }, - { - "name": "0.10 Standard @Snapmaker J1 (0.2 nozzle)", - "sub_path": "process/0.10 Standard @Snapmaker J1 (0.2 nozzle).json" - }, - { - "name": "0.12 Fine @Snapmaker J1 (0.4 nozzle)", - "sub_path": "process/0.12 Fine @Snapmaker J1 (0.4 nozzle).json" - }, - { - "name": "0.14 Standard @Snapmaker J1 (0.2 nozzle)", - "sub_path": "process/0.14 Standard @Snapmaker J1 (0.2 nozzle).json" - }, - { - "name": "0.16 Optimal @Snapmaker J1 (0.4 nozzle)", - "sub_path": "process/0.16 Optimal @Snapmaker J1 (0.4 nozzle).json" - }, - { - "name": "0.18 Standard @Snapmaker J1 (0.6 nozzle)", - "sub_path": "process/0.18 Standard @Snapmaker J1 (0.6 nozzle).json" - }, - { - "name": "0.20 Standard @Snapmaker J1 (0.4 nozzle)", - "sub_path": "process/0.20 Standard @Snapmaker J1 (0.4 nozzle).json" - }, - { - "name": "0.20 Strength @Snapmaker J1 (0.4 nozzle)", - "sub_path": "process/0.20 Strength @Snapmaker J1 (0.4 nozzle).json" - }, - { - "name": "0.24 Draft @Snapmaker J1 (0.4 nozzle)", - "sub_path": "process/0.24 Draft @Snapmaker J1 (0.4 nozzle).json" - }, - { - "name": "0.24 Standard @Snapmaker J1 (0.6 nozzle)", - "sub_path": "process/0.24 Standard @Snapmaker J1 (0.6 nozzle).json" - }, - { - "name": "0.24 Standard @Snapmaker J1 (0.8 nozzle)", - "sub_path": "process/0.24 Standard @Snapmaker J1 (0.8 nozzle).json" - }, - { - "name": "0.25 Benchy @Snapmaker J1 (0.4 nozzle)", - "sub_path": "process/0.25 Benchy @Snapmaker J1 (0.4 nozzle).json" - }, - { - "name": "0.28 Extra Draft @Snapmaker J1 (0.4 nozzle)", - "sub_path": "process/0.28 Extra Draft @Snapmaker J1 (0.4 nozzle).json" - }, - { - "name": "0.30 Standard @Snapmaker J1 (0.6 nozzle)", - "sub_path": "process/0.30 Standard @Snapmaker J1 (0.6 nozzle).json" - }, - { - "name": "0.30 Strength @Snapmaker J1 (0.6 nozzle)", - "sub_path": "process/0.30 Strength @Snapmaker J1 (0.6 nozzle).json" - }, - { - "name": "0.32 Standard @Snapmaker J1 (0.8 nozzle)", - "sub_path": "process/0.32 Standard @Snapmaker J1 (0.8 nozzle).json" - }, - { - "name": "0.34 Standard @Snapmaker J1 (0.6 nozzle)", - "sub_path": "process/0.34 Standard @Snapmaker J1 (0.6 nozzle).json" - }, - { - "name": "0.36 Standard @Snapmaker J1 (0.8 nozzle)", - "sub_path": "process/0.36 Standard @Snapmaker J1 (0.8 nozzle).json" - }, - { - "name": "0.38 Standard @Snapmaker J1 (0.6 nozzle)", - "sub_path": "process/0.38 Standard @Snapmaker J1 (0.6 nozzle).json" - }, - { - "name": "0.40 Standard @Snapmaker J1 (0.8 nozzle)", - "sub_path": "process/0.40 Standard @Snapmaker J1 (0.8 nozzle).json" - }, - { - "name": "0.42 Draft @Snapmaker J1 (0.6 nozzle)", - "sub_path": "process/0.42 Draft @Snapmaker J1 (0.6 nozzle).json" - }, - { - "name": "0.48 Draft @Snapmaker J1 (0.8 nozzle)", - "sub_path": "process/0.48 Draft @Snapmaker J1 (0.8 nozzle).json" - }, - { - "name": "0.08 Extra Fine @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.08 Extra Fine @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.08 High Quality @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.08 High Quality @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.12 Fine @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.12 Fine @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.12 High Quality @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.12 High Quality @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.16 High Quality @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.16 High Quality @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.16 Optimal @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.20 Quality @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.20 Quality @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.20 Standard @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.20 Strength @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.20 Support @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.20 Support @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.20 Support W @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.20 Support W @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.24 Draft @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.24 Draft @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.28 Extra Draft @Snapmaker U1 (0.4 nozzle)", - "sub_path": "process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "0.06 Standard @Snapmaker Artisan (0.2 nozzle)", - "sub_path": "process/0.06 Standard @Snapmaker Artisan (0.2 nozzle).json" - } - ], - "filament_list": [ - { - "name": "PolyTerra PLA @0.2 nozzle", - "sub_path": "filament/PolyTerra PLA @0.2 nozzle.json" - }, - { - "name": "Snapmaker PLA Lite @U1 base", - "sub_path": "filament/Snapmaker PLA Lite @U1 base.json" - }, - { - "name": "Snapmaker PLA SnapSpeed @U1 base", - "sub_path": "filament/Snapmaker PLA SnapSpeed @U1 base.json" - }, - { - "name": "Snapmaker TPU 95A @U1 base", - "sub_path": "filament/Snapmaker TPU 95A @U1 base.json" - }, - { - "name": "fdm_filament_common", - "sub_path": "filament/fdm_filament_common.json" - }, - { - "name": "PolyTerra Dual PLA @0.2 nozzle", - "sub_path": "filament/PolyTerra Dual PLA @0.2 nozzle.json" - }, - { - "name": "PolyTerra J1 PLA @0.2 nozzle", - "sub_path": "filament/PolyTerra J1 PLA @0.2 nozzle.json" - }, - { - "name": "Snapmaker PLA Lite @U1", - "sub_path": "filament/Snapmaker PLA Lite @U1.json" - }, - { - "name": "Snapmaker PLA SnapSpeed @U1", - "sub_path": "filament/Snapmaker PLA SnapSpeed @U1.json" - }, - { - "name": "Snapmaker TPU 95A @U1", - "sub_path": "filament/Snapmaker TPU 95A @U1.json" - }, - { - "name": "fdm_filament_abs", - "sub_path": "filament/fdm_filament_abs.json" - }, - { - "name": "fdm_filament_asa", - "sub_path": "filament/fdm_filament_asa.json" - }, - { - "name": "fdm_filament_breakaway", - "sub_path": "filament/fdm_filament_breakaway.json" - }, - { - "name": "fdm_filament_pa", - "sub_path": "filament/fdm_filament_pa.json" - }, - { - "name": "fdm_filament_pet", - "sub_path": "filament/fdm_filament_pet.json" - }, - { - "name": "fdm_filament_petg", - "sub_path": "filament/fdm_filament_petg.json" - }, - { - "name": "fdm_filament_pla", - "sub_path": "filament/fdm_filament_pla.json" - }, - { - "name": "fdm_filament_pva", - "sub_path": "filament/fdm_filament_pva.json" - }, - { - "name": "fdm_filament_tpu", - "sub_path": "filament/fdm_filament_tpu.json" - }, - { - "name": "Snapmaker ABS @U1 base", - "sub_path": "filament/Snapmaker ABS @U1 base.json" - }, - { - "name": "Snapmaker ABS @base", - "sub_path": "filament/Snapmaker ABS @base.json" - }, - { - "name": "Snapmaker Dual ABS @base", - "sub_path": "filament/Snapmaker Dual ABS @base.json" - }, - { - "name": "Snapmaker J1 ABS @base", - "sub_path": "filament/Snapmaker J1 ABS @base.json" - }, - { - "name": "Snapmaker ASA @U1 base", - "sub_path": "filament/Snapmaker ASA @U1 base.json" - }, - { - "name": "Snapmaker ASA @base", - "sub_path": "filament/Snapmaker ASA @base.json" - }, - { - "name": "Snapmaker Dual ASA @base", - "sub_path": "filament/Snapmaker Dual ASA @base.json" - }, - { - "name": "Snapmaker J1 ASA @base", - "sub_path": "filament/Snapmaker J1 ASA @base.json" - }, - { - "name": "Snapmaker Dual Breakaway @base", - "sub_path": "filament/Snapmaker Dual Breakaway @base.json" - }, - { - "name": "Snapmaker J1 Breakaway @base", - "sub_path": "filament/Snapmaker J1 Breakaway @base.json" - }, - { - "name": "Snapmaker Dual PA-CF @base", - "sub_path": "filament/Snapmaker Dual PA-CF @base.json" - }, - { - "name": "Snapmaker J1 PA-CF @base", - "sub_path": "filament/Snapmaker J1 PA-CF @base.json" - }, - { - "name": "Snapmaker PA-CF @U1 base", - "sub_path": "filament/Snapmaker PA-CF @U1 base.json" - }, - { - "name": "Snapmaker PA-CF @base", - "sub_path": "filament/Snapmaker PA-CF @base.json" - }, - { - "name": "Snapmaker Dual PET @base", - "sub_path": "filament/Snapmaker Dual PET @base.json" - }, - { - "name": "Snapmaker J1 PET @base", - "sub_path": "filament/Snapmaker J1 PET @base.json" - }, - { - "name": "Snapmaker PET @U1 base", - "sub_path": "filament/Snapmaker PET @U1 base.json" - }, - { - "name": "Snapmaker PET @base", - "sub_path": "filament/Snapmaker PET @base.json" - }, - { - "name": "Snapmaker Dual PETG @base", - "sub_path": "filament/Snapmaker Dual PETG @base.json" - }, - { - "name": "Snapmaker Dual PETG-CF @base", - "sub_path": "filament/Snapmaker Dual PETG-CF @base.json" - }, - { - "name": "Snapmaker J1 PETG @base", - "sub_path": "filament/Snapmaker J1 PETG @base.json" - }, - { - "name": "Snapmaker J1 PETG-CF @base", - "sub_path": "filament/Snapmaker J1 PETG-CF @base.json" - }, - { - "name": "Snapmaker PETG @U1 base", - "sub_path": "filament/Snapmaker PETG @U1 base.json" - }, - { - "name": "Snapmaker PETG @base", - "sub_path": "filament/Snapmaker PETG @base.json" - }, - { - "name": "Snapmaker PETG-CF @U1 base", - "sub_path": "filament/Snapmaker PETG-CF @U1 base.json" - }, - { - "name": "Snapmaker PETG-CF @base", - "sub_path": "filament/Snapmaker PETG-CF @base.json" - }, - { - "name": "PolyLite PLA @U1 base", - "sub_path": "filament/PolyLite PLA @U1 base.json" - }, - { - "name": "PolyLite PLA @base", - "sub_path": "filament/PolyLite PLA @base.json" - }, - { - "name": "PolyTerra PLA @U1 base", - "sub_path": "filament/PolyTerra PLA @U1 base.json" - }, - { - "name": "Snapmaker Dual PLA @base", - "sub_path": "filament/Snapmaker Dual PLA @base.json" - }, - { - "name": "Snapmaker Dual PLA Matte @base", - "sub_path": "filament/Snapmaker Dual PLA Matte @base.json" - }, - { - "name": "Snapmaker Dual PLA Metal @base", - "sub_path": "filament/Snapmaker Dual PLA Metal @base.json" - }, - { - "name": "Snapmaker Dual PLA Silk @base", - "sub_path": "filament/Snapmaker Dual PLA Silk @base.json" - }, - { - "name": "Snapmaker Dual PLA-CF @base", - "sub_path": "filament/Snapmaker Dual PLA-CF @base.json" - }, - { - "name": "Snapmaker J1 PLA @base", - "sub_path": "filament/Snapmaker J1 PLA @base.json" - }, - { - "name": "Snapmaker J1 PLA Matte @base", - "sub_path": "filament/Snapmaker J1 PLA Matte @base.json" - }, - { - "name": "Snapmaker J1 PLA Metal @base", - "sub_path": "filament/Snapmaker J1 PLA Metal @base.json" - }, - { - "name": "Snapmaker J1 PLA Silk @base", - "sub_path": "filament/Snapmaker J1 PLA Silk @base.json" - }, - { - "name": "Snapmaker J1 PLA-CF @base", - "sub_path": "filament/Snapmaker J1 PLA-CF @base.json" - }, - { - "name": "Snapmaker PLA @U1 base", - "sub_path": "filament/Snapmaker PLA @U1 base.json" - }, - { - "name": "Snapmaker PLA @base", - "sub_path": "filament/Snapmaker PLA @base.json" - }, - { - "name": "Snapmaker PLA Metal @U1 base", - "sub_path": "filament/Snapmaker PLA Metal @U1 base.json" - }, - { - "name": "Snapmaker PLA Silk @U1 base", - "sub_path": "filament/Snapmaker PLA Silk @U1 base.json" - }, - { - "name": "Snapmaker PLA Silk @base", - "sub_path": "filament/Snapmaker PLA Silk @base.json" - }, - { - "name": "Snapmaker PLA-CF @U1 base", - "sub_path": "filament/Snapmaker PLA-CF @U1 base.json" - }, - { - "name": "Snapmaker PLA-CF @base", - "sub_path": "filament/Snapmaker PLA-CF @base.json" - }, - { - "name": "fdm_filament_pla_eco", - "sub_path": "filament/fdm_filament_pla_eco.json" - }, - { - "name": "Snapmaker Dual PVA @base", - "sub_path": "filament/Snapmaker Dual PVA @base.json" - }, - { - "name": "Snapmaker J1 PVA @base", - "sub_path": "filament/Snapmaker J1 PVA @base.json" - }, - { - "name": "Snapmaker PVA @U1 base", - "sub_path": "filament/Snapmaker PVA @U1 base.json" - }, - { - "name": "Snapmaker PVA @base", - "sub_path": "filament/Snapmaker PVA @base.json" - }, - { - "name": "Snapmaker Dual TPU @base", - "sub_path": "filament/Snapmaker Dual TPU @base.json" - }, - { - "name": "Snapmaker J1 TPU @base", - "sub_path": "filament/Snapmaker J1 TPU @base.json" - }, - { - "name": "Snapmaker TPU @U1 base", - "sub_path": "filament/Snapmaker TPU @U1 base.json" - }, - { - "name": "Snapmaker TPU @base", - "sub_path": "filament/Snapmaker TPU @base.json" - }, - { - "name": "Snapmaker ABS @U1", - "sub_path": "filament/Snapmaker ABS @U1.json" - }, - { - "name": "Snapmaker ABS Benchy @U1", - "sub_path": "filament/Snapmaker ABS Benchy @U1.json" - }, - { - "name": "Snapmaker ABS", - "sub_path": "filament/Snapmaker ABS.json" - }, - { - "name": "Snapmaker ABS @0.2 nozzle", - "sub_path": "filament/Snapmaker ABS @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual ABS", - "sub_path": "filament/Snapmaker Dual ABS.json" - }, - { - "name": "Snapmaker Dual ABS @0.2 nozzle", - "sub_path": "filament/Snapmaker Dual ABS @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual ABS @0.8 nozzle", - "sub_path": "filament/Snapmaker Dual ABS @0.8 nozzle.json" - }, - { - "name": "Snapmaker Dual ABS Benchy", - "sub_path": "filament/Snapmaker Dual ABS Benchy.json" - }, - { - "name": "Snapmaker J1 ABS", - "sub_path": "filament/Snapmaker J1 ABS.json" - }, - { - "name": "Snapmaker J1 ABS @0.2 nozzle", - "sub_path": "filament/Snapmaker J1 ABS @0.2 nozzle.json" - }, - { - "name": "Snapmaker J1 ABS @0.8 nozzle", - "sub_path": "filament/Snapmaker J1 ABS @0.8 nozzle.json" - }, - { - "name": "Snapmaker J1 ABS Benchy", - "sub_path": "filament/Snapmaker J1 ABS Benchy.json" - }, - { - "name": "Snapmaker ASA @U1", - "sub_path": "filament/Snapmaker ASA @U1.json" - }, - { - "name": "Snapmaker ASA", - "sub_path": "filament/Snapmaker ASA.json" - }, - { - "name": "Snapmaker ASA @0.2 nozzle", - "sub_path": "filament/Snapmaker ASA @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual ASA", - "sub_path": "filament/Snapmaker Dual ASA.json" - }, - { - "name": "Snapmaker Dual ASA @0.2 nozzle", - "sub_path": "filament/Snapmaker Dual ASA @0.2 nozzle.json" - }, - { - "name": "Snapmaker J1 ASA", - "sub_path": "filament/Snapmaker J1 ASA.json" - }, - { - "name": "Snapmaker J1 ASA @0.2 nozzle", - "sub_path": "filament/Snapmaker J1 ASA @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual Breakaway", - "sub_path": "filament/Snapmaker Dual Breakaway.json" - }, - { - "name": "Snapmaker Dual Breakaway @0.2 nozzle", - "sub_path": "filament/Snapmaker Dual Breakaway @0.2 nozzle.json" - }, - { - "name": "Snapmaker J1 Breakaway", - "sub_path": "filament/Snapmaker J1 Breakaway.json" - }, - { - "name": "Snapmaker J1 Breakaway @0.2 nozzle", - "sub_path": "filament/Snapmaker J1 Breakaway @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual PA-CF", - "sub_path": "filament/Snapmaker Dual PA-CF.json" - }, - { - "name": "Snapmaker J1 PA-CF", - "sub_path": "filament/Snapmaker J1 PA-CF.json" - }, - { - "name": "Snapmaker PA-CF @U1", - "sub_path": "filament/Snapmaker PA-CF @U1.json" - }, - { - "name": "Snapmaker PA-CF", - "sub_path": "filament/Snapmaker PA-CF.json" - }, - { - "name": "Snapmaker Dual PET", - "sub_path": "filament/Snapmaker Dual PET.json" - }, - { - "name": "Snapmaker PET @Dual", - "sub_path": "filament/Snapmaker PET @Dual.json" - }, - { - "name": "Snapmaker J1 PET", - "sub_path": "filament/Snapmaker J1 PET.json" - }, - { - "name": "Snapmaker PET @U1", - "sub_path": "filament/Snapmaker PET @U1.json" - }, - { - "name": "Snapmaker PET", - "sub_path": "filament/Snapmaker PET.json" - }, - { - "name": "Snapmaker Dual PETG", - "sub_path": "filament/Snapmaker Dual PETG.json" - }, - { - "name": "Snapmaker Dual PETG @0.2 nozzle", - "sub_path": "filament/Snapmaker Dual PETG @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual PETG @0.8 nozzle", - "sub_path": "filament/Snapmaker Dual PETG @0.8 nozzle.json" - }, - { - "name": "Snapmaker Dual PETG-CF", - "sub_path": "filament/Snapmaker Dual PETG-CF.json" - }, - { - "name": "Snapmaker J1 PETG", - "sub_path": "filament/Snapmaker J1 PETG.json" - }, - { - "name": "Snapmaker J1 PETG @0.2 nozzle", - "sub_path": "filament/Snapmaker J1 PETG @0.2 nozzle.json" - }, - { - "name": "Snapmaker J1 PETG @0.8 nozzle", - "sub_path": "filament/Snapmaker J1 PETG @0.8 nozzle.json" - }, - { - "name": "Snapmaker J1 PETG-CF", - "sub_path": "filament/Snapmaker J1 PETG-CF.json" - }, - { - "name": "Snapmaker PETG @U1", - "sub_path": "filament/Snapmaker PETG @U1.json" - }, - { - "name": "Snapmaker PETG", - "sub_path": "filament/Snapmaker PETG.json" - }, - { - "name": "Snapmaker PETG @0.2 nozzle", - "sub_path": "filament/Snapmaker PETG @0.2 nozzle.json" - }, - { - "name": "Snapmaker PETG-CF @U1", - "sub_path": "filament/Snapmaker PETG-CF @U1.json" - }, - { - "name": "Snapmaker PETG-CF", - "sub_path": "filament/Snapmaker PETG-CF.json" - }, - { - "name": "PolyLite PLA @U1", - "sub_path": "filament/PolyLite PLA @U1.json" - }, - { - "name": "PolyLite J1 PLA", - "sub_path": "filament/PolyLite J1 PLA.json" - }, - { - "name": "PolyLite PLA @0.2 nozzle", - "sub_path": "filament/PolyLite PLA @0.2 nozzle.json" - }, - { - "name": "PolyTerra PLA @U1", - "sub_path": "filament/PolyTerra PLA @U1.json" - }, - { - "name": "Snapmaker Dual PLA", - "sub_path": "filament/Snapmaker Dual PLA.json" - }, - { - "name": "Snapmaker Dual PLA Matte", - "sub_path": "filament/Snapmaker Dual PLA Matte.json" - }, - { - "name": "Snapmaker Dual PLA Matte @0.2 nozzle", - "sub_path": "filament/Snapmaker Dual PLA Matte @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual PLA Matte @0.8 nozzle", - "sub_path": "filament/Snapmaker Dual PLA Matte @0.8 nozzle.json" - }, - { - "name": "Snapmaker Dual PLA Metal", - "sub_path": "filament/Snapmaker Dual PLA Metal.json" - }, - { - "name": "Snapmaker Dual PLA Metal @0.2 nozzle", - "sub_path": "filament/Snapmaker Dual PLA Metal @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual PLA Silk", - "sub_path": "filament/Snapmaker Dual PLA Silk.json" - }, - { - "name": "Snapmaker Dual PLA Silk @0.2 nozzle", - "sub_path": "filament/Snapmaker Dual PLA Silk @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual PLA-CF", - "sub_path": "filament/Snapmaker Dual PLA-CF.json" - }, - { - "name": "Snapmaker Dual PLA-CF @0.8 nozzle", - "sub_path": "filament/Snapmaker Dual PLA-CF @0.8 nozzle.json" - }, - { - "name": "Snapmaker J1 PLA", - "sub_path": "filament/Snapmaker J1 PLA.json" - }, - { - "name": "Snapmaker J1 PLA Matte", - "sub_path": "filament/Snapmaker J1 PLA Matte.json" - }, - { - "name": "Snapmaker J1 PLA Matte @0.2 nozzle", - "sub_path": "filament/Snapmaker J1 PLA Matte @0.2 nozzle.json" - }, - { - "name": "Snapmaker J1 PLA Matte @0.8 nozzle", - "sub_path": "filament/Snapmaker J1 PLA Matte @0.8 nozzle.json" - }, - { - "name": "Snapmaker J1 PLA Metal", - "sub_path": "filament/Snapmaker J1 PLA Metal.json" - }, - { - "name": "Snapmaker J1 PLA Metal @0.2 nozzle", - "sub_path": "filament/Snapmaker J1 PLA Metal @0.2 nozzle.json" - }, - { - "name": "Snapmaker J1 PLA Silk", - "sub_path": "filament/Snapmaker J1 PLA Silk.json" - }, - { - "name": "Snapmaker J1 PLA Silk @0.2 nozzle", - "sub_path": "filament/Snapmaker J1 PLA Silk @0.2 nozzle.json" - }, - { - "name": "Snapmaker J1 PLA-CF", - "sub_path": "filament/Snapmaker J1 PLA-CF.json" - }, - { - "name": "Snapmaker J1 PLA-CF @0.8 nozzle", - "sub_path": "filament/Snapmaker J1 PLA-CF @0.8 nozzle.json" - }, - { - "name": "Snapmaker PLA @U1", - "sub_path": "filament/Snapmaker PLA @U1.json" - }, - { - "name": "Snapmaker PLA Matte @U1", - "sub_path": "filament/Snapmaker PLA Matte @U1.json" - }, - { - "name": "Snapmaker PLA", - "sub_path": "filament/Snapmaker PLA.json" - }, - { - "name": "Snapmaker PLA Metal @U1", - "sub_path": "filament/Snapmaker PLA Metal @U1.json" - }, - { - "name": "Snapmaker PLA Silk @U1", - "sub_path": "filament/Snapmaker PLA Silk @U1.json" - }, - { - "name": "Snapmaker PLA Silk", - "sub_path": "filament/Snapmaker PLA Silk.json" - }, - { - "name": "Snapmaker PLA Silk @0.2 nozzle", - "sub_path": "filament/Snapmaker PLA Silk @0.2 nozzle.json" - }, - { - "name": "Snapmaker PLA-CF @U1", - "sub_path": "filament/Snapmaker PLA-CF @U1.json" - }, - { - "name": "Snapmaker PLA-CF", - "sub_path": "filament/Snapmaker PLA-CF.json" - }, - { - "name": "Snapmaker Dual PLA Eco @base", - "sub_path": "filament/Snapmaker Dual PLA Eco @base.json" - }, - { - "name": "Snapmaker J1 PLA Eco @base", - "sub_path": "filament/Snapmaker J1 PLA Eco @base.json" - }, - { - "name": "Snapmaker PLA Eco @U1 base", - "sub_path": "filament/Snapmaker PLA Eco @U1 base.json" - }, - { - "name": "Snapmaker PLA Eco @base", - "sub_path": "filament/Snapmaker PLA Eco @base.json" - }, - { - "name": "Snapmaker Dual PVA", - "sub_path": "filament/Snapmaker Dual PVA.json" - }, - { - "name": "Snapmaker Dual PVA @0.2 nozzle", - "sub_path": "filament/Snapmaker Dual PVA @0.2 nozzle.json" - }, - { - "name": "Snapmaker J1 PVA", - "sub_path": "filament/Snapmaker J1 PVA.json" - }, - { - "name": "Snapmaker J1 PVA @0.2 nozzle", - "sub_path": "filament/Snapmaker J1 PVA @0.2 nozzle.json" - }, - { - "name": "Snapmaker PVA @U1", - "sub_path": "filament/Snapmaker PVA @U1.json" - }, - { - "name": "Snapmaker PVA", - "sub_path": "filament/Snapmaker PVA.json" - }, - { - "name": "Snapmaker PVA @0.2 nozzle", - "sub_path": "filament/Snapmaker PVA @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual TPE", - "sub_path": "filament/Snapmaker Dual TPE.json" - }, - { - "name": "Snapmaker Dual TPU", - "sub_path": "filament/Snapmaker Dual TPU.json" - }, - { - "name": "Snapmaker Dual TPU High-Flow", - "sub_path": "filament/Snapmaker Dual TPU High-Flow.json" - }, - { - "name": "Snapmaker J1 TPE", - "sub_path": "filament/Snapmaker J1 TPE.json" - }, - { - "name": "Snapmaker J1 TPU", - "sub_path": "filament/Snapmaker J1 TPU.json" - }, - { - "name": "Snapmaker J1 TPU High-Flow", - "sub_path": "filament/Snapmaker J1 TPU High-Flow.json" - }, - { - "name": "Snapmaker TPE @U1", - "sub_path": "filament/Snapmaker TPE @U1.json" - }, - { - "name": "Snapmaker TPU @U1", - "sub_path": "filament/Snapmaker TPU @U1.json" - }, - { - "name": "Snapmaker TPU High-Flow @U1", - "sub_path": "filament/Snapmaker TPU High-Flow @U1.json" - }, - { - "name": "Snapmaker TPE", - "sub_path": "filament/Snapmaker TPE.json" - }, - { - "name": "Snapmaker TPU", - "sub_path": "filament/Snapmaker TPU.json" - }, - { - "name": "PolyLite Dual PLA @0.2 nozzle", - "sub_path": "filament/PolyLite Dual PLA @0.2 nozzle.json" - }, - { - "name": "PolyLite J1 PLA @0.2 nozzle", - "sub_path": "filament/PolyLite J1 PLA @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual PLA Eco", - "sub_path": "filament/Snapmaker Dual PLA Eco.json" - }, - { - "name": "Snapmaker Dual PLA Eco @0.2 nozzle", - "sub_path": "filament/Snapmaker Dual PLA Eco @0.2 nozzle.json" - }, - { - "name": "Snapmaker Dual PLA Eco @0.8 nozzle", - "sub_path": "filament/Snapmaker Dual PLA Eco @0.8 nozzle.json" - }, - { - "name": "Snapmaker J1 PLA Eco", - "sub_path": "filament/Snapmaker J1 PLA Eco.json" - }, - { - "name": "Snapmaker J1 PLA Eco @0.2 nozzle", - "sub_path": "filament/Snapmaker J1 PLA Eco @0.2 nozzle.json" - }, - { - "name": "Snapmaker J1 PLA Eco @0.8 nozzle", - "sub_path": "filament/Snapmaker J1 PLA Eco @0.8 nozzle.json" - }, - { - "name": "Snapmaker PLA Eco @U1", - "sub_path": "filament/Snapmaker PLA Eco @U1.json" - }, - { - "name": "Snapmaker PLA Eco", - "sub_path": "filament/Snapmaker PLA Eco.json" - }, - { - "name": "Snapmaker Breakaway Support @base", - "sub_path": "filament/Snapmaker Breakaway Support @base.json" - }, - { - "name": "Snapmaker Breakaway Support For PLA @U1", - "sub_path": "filament/Snapmaker Breakaway Support For PLA @U1.json" - }, - { - "name": "PolyTerra J1 PLA", - "sub_path": "filament/PolyTerra J1 PLA.json" - }, - { - "name": "Snapmaker PLA Matte @U1 base", - "sub_path": "filament/Snapmaker PLA Matte @U1 base.json" - } - ], - "machine_list": [ - { - "name": "fdm_common", - "sub_path": "machine/fdm_common.json" - }, - { - "name": "fdm_klipper", - "sub_path": "machine/fdm_klipper.json" - }, - { - "name": "fdm_idex", - "sub_path": "machine/fdm_idex.json" - }, - { - "name": "fdm_linear2", - "sub_path": "machine/fdm_linear2.json" - }, - { - "name": "fdm_toolchanger", - "sub_path": "machine/fdm_toolchanger.json" - }, - { - "name": "Snapmaker J1 (0.2 nozzle)", - "sub_path": "machine/Snapmaker J1 (0.2 nozzle).json" - }, - { - "name": "Snapmaker J1 (0.4 nozzle)", - "sub_path": "machine/Snapmaker J1 (0.4 nozzle).json" - }, - { - "name": "Snapmaker J1 (0.6 nozzle)", - "sub_path": "machine/Snapmaker J1 (0.6 nozzle).json" - }, - { - "name": "Snapmaker J1 (0.8 nozzle)", - "sub_path": "machine/Snapmaker J1 (0.8 nozzle).json" - }, - { - "name": "fdm_a250", - "sub_path": "machine/fdm_a250.json" - }, - { - "name": "fdm_a350", - "sub_path": "machine/fdm_a350.json" - }, - { - "name": "fdm_linear2_dual", - "sub_path": "machine/fdm_linear2_dual.json" - }, - { - "name": "fdm_U1", - "sub_path": "machine/fdm_U1.json" - }, - { - "name": "Snapmaker A250 (0.2 nozzle)", - "sub_path": "machine/Snapmaker A250 (0.2 nozzle).json" - }, - { - "name": "Snapmaker A250 (0.4 nozzle)", - "sub_path": "machine/Snapmaker A250 (0.4 nozzle).json" - }, - { - "name": "Snapmaker A250 (0.6 nozzle)", - "sub_path": "machine/Snapmaker A250 (0.6 nozzle).json" - }, - { - "name": "Snapmaker A250 (0.8 nozzle)", - "sub_path": "machine/Snapmaker A250 (0.8 nozzle).json" - }, - { - "name": "fdm_a250_bk", - "sub_path": "machine/fdm_a250_bk.json" - }, - { - "name": "fdm_a250_qs", - "sub_path": "machine/fdm_a250_qs.json" - }, - { - "name": "fdm_a250_qs_bk", - "sub_path": "machine/fdm_a250_qs_bk.json" - }, - { - "name": "Snapmaker A350 (0.2 nozzle)", - "sub_path": "machine/Snapmaker A350 (0.2 nozzle).json" - }, - { - "name": "Snapmaker A350 (0.4 nozzle)", - "sub_path": "machine/Snapmaker A350 (0.4 nozzle).json" - }, - { - "name": "Snapmaker A350 (0.6 nozzle)", - "sub_path": "machine/Snapmaker A350 (0.6 nozzle).json" - }, - { - "name": "Snapmaker A350 (0.8 nozzle)", - "sub_path": "machine/Snapmaker A350 (0.8 nozzle).json" - }, - { - "name": "fdm_a350_bk", - "sub_path": "machine/fdm_a350_bk.json" - }, - { - "name": "fdm_a350_qs", - "sub_path": "machine/fdm_a350_qs.json" - }, - { - "name": "fdm_a350_qs_bk", - "sub_path": "machine/fdm_a350_qs_bk.json" - }, - { - "name": "fdm_a250_dual", - "sub_path": "machine/fdm_a250_dual.json" - }, - { - "name": "fdm_a350_dual", - "sub_path": "machine/fdm_a350_dual.json" - }, - { - "name": "fdm_a400", - "sub_path": "machine/fdm_a400.json" - }, - { - "name": "Snapmaker U1 (0.4 nozzle)", - "sub_path": "machine/Snapmaker U1 (0.4 nozzle).json" - }, - { - "name": "Snapmaker A250 BKit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A250 BKit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A250 BKit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A250 BKit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A250 BKit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A250 BKit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A250 BKit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A250 BKit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A250 QSKit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A250 QSKit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A250 QSKit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A250 QSKit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A250 QSKit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A250 QSKit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A250 QSKit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A250 QSKit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A250 QS+B Kit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A250 QS+B Kit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A250 QS+B Kit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A250 QS+B Kit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A350 BKit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A350 BKit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A350 BKit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A350 BKit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A350 BKit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A350 BKit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A350 BKit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A350 BKit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A350 QSKit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A350 QSKit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A350 QSKit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A350 QSKit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A350 QSKit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A350 QSKit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A350 QSKit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A350 QSKit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A350 QS+B Kit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A350 QS+B Kit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A350 QS+B Kit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A350 QS+B Kit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual (0.2 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual (0.2 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual (0.4 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual (0.4 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual (0.6 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual (0.6 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual (0.8 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual (0.8 nozzle).json" - }, - { - "name": "fdm_a250_dual_bk", - "sub_path": "machine/fdm_a250_dual_bk.json" - }, - { - "name": "fdm_a250_dual_qs", - "sub_path": "machine/fdm_a250_dual_qs.json" - }, - { - "name": "fdm_a250_dual_qs_bk", - "sub_path": "machine/fdm_a250_dual_qs_bk.json" - }, - { - "name": "Snapmaker A350 Dual (0.2 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual (0.2 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual (0.4 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual (0.4 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual (0.6 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual (0.6 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual (0.8 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual (0.8 nozzle).json" - }, - { - "name": "fdm_a350_dual_bk", - "sub_path": "machine/fdm_a350_dual_bk.json" - }, - { - "name": "fdm_a350_dual_qs", - "sub_path": "machine/fdm_a350_dual_qs.json" - }, - { - "name": "fdm_a350_dual_qs_bk", - "sub_path": "machine/fdm_a350_dual_qs_bk.json" - }, - { - "name": "Snapmaker Artisan (0.2 nozzle)", - "sub_path": "machine/Snapmaker Artisan (0.2 nozzle).json" - }, - { - "name": "Snapmaker Artisan (0.4 nozzle)", - "sub_path": "machine/Snapmaker Artisan (0.4 nozzle).json" - }, - { - "name": "Snapmaker Artisan (0.6 nozzle)", - "sub_path": "machine/Snapmaker Artisan (0.6 nozzle).json" - }, - { - "name": "Snapmaker Artisan (0.8 nozzle)", - "sub_path": "machine/Snapmaker Artisan (0.8 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual BKit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual BKit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual BKit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual BKit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual BKit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual BKit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual BKit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual BKit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual QSKit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual QSKit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual QSKit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual QSKit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual QS+B Kit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual QS+B Kit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual QS+B Kit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A250 Dual QS+B Kit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual BKit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual BKit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual BKit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual BKit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual BKit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual BKit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual BKit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual BKit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual QSKit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual QSKit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual QSKit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual QSKit (0.8 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual QS+B Kit (0.2 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual QS+B Kit (0.4 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual QS+B Kit (0.6 nozzle).json" - }, - { - "name": "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "sub_path": "machine/Snapmaker A350 Dual QS+B Kit (0.8 nozzle).json" - } - ] -} \ No newline at end of file + "name": "Snapmaker", + "version": "02.02.39.02", + "force_update": "0", + "description": "Snapmaker configurations", + "machine_model_list": [ + { + "name": "Snapmaker U1", + "sub_path": "machine/Snapmaker U1.json" + }, + { + "name": "Snapmaker Artisan", + "sub_path": "machine/Snapmaker Artisan.json" + }, + { + "name": "Snapmaker J1", + "sub_path": "machine/Snapmaker J1.json" + }, + { + "name": "Snapmaker A350 Dual", + "sub_path": "machine/Snapmaker A350 Dual.json" + }, + { + "name": "Snapmaker A250 Dual", + "sub_path": "machine/Snapmaker A250 Dual.json" + }, + { + "name": "Snapmaker A350 Dual QSKit", + "sub_path": "machine/Snapmaker A350 Dual QSKit.json" + }, + { + "name": "Snapmaker A250 Dual QSKit", + "sub_path": "machine/Snapmaker A250 Dual QSKit.json" + }, + { + "name": "Snapmaker A350 Dual BKit", + "sub_path": "machine/Snapmaker A350 Dual BKit.json" + }, + { + "name": "Snapmaker A250 Dual BKit", + "sub_path": "machine/Snapmaker A250 Dual BKit.json" + }, + { + "name": "Snapmaker A350 Dual QS+B Kit", + "sub_path": "machine/Snapmaker A350 Dual QS+B Kit.json" + }, + { + "name": "Snapmaker A250 Dual QS+B Kit", + "sub_path": "machine/Snapmaker A250 Dual QS+B Kit.json" + }, + { + "name": "Snapmaker A350 QSKit", + "sub_path": "machine/Snapmaker A350 QSKit.json" + }, + { + "name": "Snapmaker A250 QSKit", + "sub_path": "machine/Snapmaker A250 QSKit.json" + }, + { + "name": "Snapmaker A350", + "sub_path": "machine/Snapmaker A350.json" + }, + { + "name": "Snapmaker A250", + "sub_path": "machine/Snapmaker A250.json" + }, + { + "name": "Snapmaker A350 BKit", + "sub_path": "machine/Snapmaker A350 BKit.json" + }, + { + "name": "Snapmaker A250 BKit", + "sub_path": "machine/Snapmaker A250 BKit.json" + }, + { + "name": "Snapmaker A350 QS+B Kit", + "sub_path": "machine/Snapmaker A350 QS+B Kit.json" + }, + { + "name": "Snapmaker A250 QS+B Kit", + "sub_path": "machine/Snapmaker A250 QS+B Kit.json" + } + ], + "process_list": [ + + { + "name": "fdm_process_common", + "sub_path": "process/fdm_process_common.json" + }, + { + "name": "fdm_process_idex", + "sub_path": "process/fdm_process_idex.json" + }, + { + "name": "fdm_process_a400", + "sub_path": "process/fdm_process_a400.json" + }, + { + "name": "fdm_process_U1", + "sub_path": "process/fdm_process_U1.json" + }, + + + { + "name": "fdm_process_U1_common", + "sub_path": "process/fdm_process_U1_common.json" + }, + { + "name": "fdm_process_U1_0.08", + "sub_path": "process/fdm_process_U1_0.08.json" + }, + { + "name": "fdm_process_U1_0.12", + "sub_path": "process/fdm_process_U1_0.12.json" + }, + { + "name": "fdm_process_U1_0.16", + "sub_path": "process/fdm_process_U1_0.16.json" + }, + { + "name": "fdm_process_U1_0.20", + "sub_path": "process/fdm_process_U1_0.20.json" + }, + { + "name": "fdm_process_U1_0.24", + "sub_path": "process/fdm_process_U1_0.24.json" + }, + { + "name": "fdm_process_U1_0.28", + "sub_path": "process/fdm_process_U1_0.28.json" + }, + + + + + + { + "name": "0.20 Standard @Snapmaker U1 (0.4 nozzle)", + "sub_path": "process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json" + }, + { + "name": "0.08 Extra Fine @Snapmaker U1 (0.4 nozzle)", + "sub_path": "process/0.08 Extra Fine @Snapmaker U1 (0.4 nozzle).json" + }, + { + "name": "0.08 High Quality @Snapmaker U1 (0.4 nozzle)", + "sub_path": "process/0.08 High Quality @Snapmaker U1 (0.4 nozzle).json" + }, + { + "name": "0.12 Fine @Snapmaker U1 (0.4 nozzle)", + "sub_path": "process/0.12 Fine @Snapmaker U1 (0.4 nozzle).json" + }, + { + "name": "0.12 High Quality @Snapmaker U1 (0.4 nozzle)", + "sub_path": "process/0.12 High Quality @Snapmaker U1 (0.4 nozzle).json" + }, + { + "name": "0.16 High Quality @Snapmaker U1 (0.4 nozzle)", + "sub_path": "process/0.16 High Quality @Snapmaker U1 (0.4 nozzle).json" + }, + { + "name": "0.16 Optimal @Snapmaker U1 (0.4 nozzle)", + "sub_path": "process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json" + }, + { + "name": "0.20 Strength @Snapmaker U1 (0.4 nozzle)", + "sub_path": "process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json" + }, + { + "name": "0.24 Draft @Snapmaker U1 (0.4 nozzle)", + "sub_path": "process/0.24 Draft @Snapmaker U1 (0.4 nozzle).json" + }, + { + "name": "0.28 Extra Draft @Snapmaker U1 (0.4 nozzle)", + "sub_path": "process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json" + }, + + + + + + + + + { + "name": "0.06 Standard @Snapmaker (0.2 nozzle)", + "sub_path": "process/0.06 Standard @Snapmaker (0.2 nozzle).json" + }, + { + "name": "0.06 Standard @Snapmaker J1 (0.2 nozzle)", + "sub_path": "process/0.06 Standard @Snapmaker J1 (0.2 nozzle).json" + }, + { + "name": "0.06 Standard @Snapmaker Artisan (0.2 nozzle)", + "sub_path": "process/0.06 Standard @Snapmaker Artisan (0.2 nozzle).json" + }, + { + "name": "0.08 Extra Fine @Snapmaker (0.4 nozzle)", + "sub_path": "process/0.08 Extra Fine @Snapmaker (0.4 nozzle).json" + }, + { + "name": "0.08 Extra Fine @Snapmaker J1 (0.4 nozzle)", + "sub_path": "process/0.08 Extra Fine @Snapmaker J1 (0.4 nozzle).json" + }, + { + "name": "0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle)", + "sub_path": "process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json" + }, + { + "name": "0.10 Standard @Snapmaker (0.2 nozzle)", + "sub_path": "process/0.10 Standard @Snapmaker (0.2 nozzle).json" + }, + { + "name": "0.10 Standard @Snapmaker J1 (0.2 nozzle)", + "sub_path": "process/0.10 Standard @Snapmaker J1 (0.2 nozzle).json" + }, + { + "name": "0.10 Standard @Snapmaker Artisan (0.2 nozzle)", + "sub_path": "process/0.10 Standard @Snapmaker Artisan (0.2 nozzle).json" + }, + { + "name": "0.12 Fine @Snapmaker (0.4 nozzle)", + "sub_path": "process/0.12 Fine @Snapmaker (0.4 nozzle).json" + }, + { + "name": "0.12 Fine @Snapmaker J1 (0.4 nozzle)", + "sub_path": "process/0.12 Fine @Snapmaker J1 (0.4 nozzle).json" + }, + { + "name": "0.12 Fine @Snapmaker Artisan (0.4 nozzle)", + "sub_path": "process/0.12 Fine @Snapmaker Artisan (0.4 nozzle).json" + }, + { + "name": "0.14 Standard @Snapmaker (0.2 nozzle)", + "sub_path": "process/0.14 Standard @Snapmaker (0.2 nozzle).json" + }, + { + "name": "0.14 Standard @Snapmaker J1 (0.2 nozzle)", + "sub_path": "process/0.14 Standard @Snapmaker J1 (0.2 nozzle).json" + }, + { + "name": "0.14 Standard @Snapmaker Artisan (0.2 nozzle)", + "sub_path": "process/0.14 Standard @Snapmaker Artisan (0.2 nozzle).json" + }, + { + "name": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "sub_path": "process/0.16 Optimal @Snapmaker (0.4 nozzle).json" + }, + { + "name": "0.16 Optimal @Snapmaker J1 (0.4 nozzle)", + "sub_path": "process/0.16 Optimal @Snapmaker J1 (0.4 nozzle).json" + }, + { + "name": "0.16 Optimal @Snapmaker Artisan (0.4 nozzle)", + "sub_path": "process/0.16 Optimal @Snapmaker Artisan (0.4 nozzle).json" + }, + { + "name": "0.18 Standard @Snapmaker (0.6 nozzle)", + "sub_path": "process/0.18 Standard @Snapmaker (0.6 nozzle).json" + }, + { + "name": "0.18 Standard @Snapmaker J1 (0.6 nozzle)", + "sub_path": "process/0.18 Standard @Snapmaker J1 (0.6 nozzle).json" + }, + { + "name": "0.18 Standard @Snapmaker Artisan (0.6 nozzle)", + "sub_path": "process/0.18 Standard @Snapmaker Artisan (0.6 nozzle).json" + }, + { + "name": "0.20 Standard @Snapmaker (0.4 nozzle)", + "sub_path": "process/0.20 Standard @Snapmaker (0.4 nozzle).json" + }, + { + "name": "0.20 Standard @Snapmaker J1 (0.4 nozzle)", + "sub_path": "process/0.20 Standard @Snapmaker J1 (0.4 nozzle).json" + }, + { + "name": "0.20 Standard @Snapmaker Artisan (0.4 nozzle)", + "sub_path": "process/0.20 Standard @Snapmaker Artisan (0.4 nozzle).json" + }, + { + "name": "0.20 Strength @Snapmaker (0.4 nozzle)", + "sub_path": "process/0.20 Strength @Snapmaker (0.4 nozzle).json" + }, + { + "name": "0.20 Strength @Snapmaker J1 (0.4 nozzle)", + "sub_path": "process/0.20 Strength @Snapmaker J1 (0.4 nozzle).json" + }, + { + "name": "0.20 Strength @Snapmaker Artisan (0.4 nozzle)", + "sub_path": "process/0.20 Strength @Snapmaker Artisan (0.4 nozzle).json" + }, + { + "name": "0.24 Draft @Snapmaker (0.4 nozzle)", + "sub_path": "process/0.24 Draft @Snapmaker (0.4 nozzle).json" + }, + { + "name": "0.24 Draft @Snapmaker J1 (0.4 nozzle)", + "sub_path": "process/0.24 Draft @Snapmaker J1 (0.4 nozzle).json" + }, + { + "name": "0.24 Draft @Snapmaker Artisan (0.4 nozzle)", + "sub_path": "process/0.24 Draft @Snapmaker Artisan (0.4 nozzle).json" + }, + { + "name": "0.25 Benchy @Snapmaker J1 (0.4 nozzle)", + "sub_path": "process/0.25 Benchy @Snapmaker J1 (0.4 nozzle).json" + }, + { + "name": "0.25 Benchy @Snapmaker Artisan (0.4 nozzle)", + "sub_path": "process/0.25 Benchy @Snapmaker Artisan (0.4 nozzle).json" + }, + { + "name": "0.24 Standard @Snapmaker (0.6 nozzle)", + "sub_path": "process/0.24 Standard @Snapmaker (0.6 nozzle).json" + }, + { + "name": "0.24 Standard @Snapmaker J1 (0.6 nozzle)", + "sub_path": "process/0.24 Standard @Snapmaker J1 (0.6 nozzle).json" + }, + { + "name": "0.24 Standard @Snapmaker Artisan (0.6 nozzle)", + "sub_path": "process/0.24 Standard @Snapmaker Artisan (0.6 nozzle).json" + }, + { + "name": "0.24 Standard @Snapmaker J1 (0.8 nozzle)", + "sub_path": "process/0.24 Standard @Snapmaker J1 (0.8 nozzle).json" + }, + { + "name": "0.24 Standard @Snapmaker Artisan (0.8 nozzle)", + "sub_path": "process/0.24 Standard @Snapmaker Artisan (0.8 nozzle).json" + }, + { + "name": "0.28 Extra Draft @Snapmaker (0.4 nozzle)", + "sub_path": "process/0.28 Extra Draft @Snapmaker (0.4 nozzle).json" + }, + { + "name": "0.28 Extra Draft @Snapmaker J1 (0.4 nozzle)", + "sub_path": "process/0.28 Extra Draft @Snapmaker J1 (0.4 nozzle).json" + }, + { + "name": "0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle)", + "sub_path": "process/0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle).json" + }, + { + "name": "0.30 Standard @Snapmaker (0.6 nozzle)", + "sub_path": "process/0.30 Standard @Snapmaker (0.6 nozzle).json" + }, + { + "name": "0.30 Standard @Snapmaker J1 (0.6 nozzle)", + "sub_path": "process/0.30 Standard @Snapmaker J1 (0.6 nozzle).json" + }, + { + "name": "0.30 Standard @Snapmaker Artisan (0.6 nozzle)", + "sub_path": "process/0.30 Standard @Snapmaker Artisan (0.6 nozzle).json" + }, + { + "name": "0.30 Strength @Snapmaker (0.6 nozzle)", + "sub_path": "process/0.30 Strength @Snapmaker (0.6 nozzle).json" + }, + { + "name": "0.30 Strength @Snapmaker J1 (0.6 nozzle)", + "sub_path": "process/0.30 Strength @Snapmaker J1 (0.6 nozzle).json" + }, + { + "name": "0.30 Strength @Snapmaker Artisan (0.6 nozzle)", + "sub_path": "process/0.30 Strength @Snapmaker Artisan (0.6 nozzle).json" + }, + { + "name": "0.32 Standard @Snapmaker (0.8 nozzle)", + "sub_path": "process/0.32 Standard @Snapmaker (0.8 nozzle).json" + }, + { + "name": "0.32 Standard @Snapmaker J1 (0.8 nozzle)", + "sub_path": "process/0.32 Standard @Snapmaker J1 (0.8 nozzle).json" + }, + { + "name": "0.32 Standard @Snapmaker Artisan (0.8 nozzle)", + "sub_path": "process/0.32 Standard @Snapmaker Artisan (0.8 nozzle).json" + }, + { + "name": "0.34 Standard @Snapmaker (0.6 nozzle)", + "sub_path": "process/0.34 Standard @Snapmaker (0.6 nozzle).json" + }, + { + "name": "0.34 Standard @Snapmaker J1 (0.6 nozzle)", + "sub_path": "process/0.34 Standard @Snapmaker J1 (0.6 nozzle).json" + }, + { + "name": "0.34 Standard @Snapmaker Artisan (0.6 nozzle)", + "sub_path": "process/0.34 Standard @Snapmaker Artisan (0.6 nozzle).json" + }, + { + "name": "0.36 Standard @Snapmaker (0.8 nozzle)", + "sub_path": "process/0.36 Standard @Snapmaker (0.8 nozzle).json" + }, + { + "name": "0.36 Standard @Snapmaker J1 (0.8 nozzle)", + "sub_path": "process/0.36 Standard @Snapmaker J1 (0.8 nozzle).json" + }, + { + "name": "0.36 Standard @Snapmaker Artisan (0.8 nozzle)", + "sub_path": "process/0.36 Standard @Snapmaker Artisan (0.8 nozzle).json" + }, + { + "name": "0.38 Standard @Snapmaker (0.6 nozzle)", + "sub_path": "process/0.38 Standard @Snapmaker (0.6 nozzle).json" + }, + { + "name": "0.38 Standard @Snapmaker J1 (0.6 nozzle)", + "sub_path": "process/0.38 Standard @Snapmaker J1 (0.6 nozzle).json" + }, + { + "name": "0.38 Standard @Snapmaker Artisan (0.6 nozzle)", + "sub_path": "process/0.38 Standard @Snapmaker Artisan (0.6 nozzle).json" + }, + { + "name": "0.40 Standard @Snapmaker (0.8 nozzle)", + "sub_path": "process/0.40 Standard @Snapmaker (0.8 nozzle).json" + }, + { + "name": "0.40 Standard @Snapmaker J1 (0.8 nozzle)", + "sub_path": "process/0.40 Standard @Snapmaker J1 (0.8 nozzle).json" + }, + { + "name": "0.40 Standard @Snapmaker Artisan (0.8 nozzle)", + "sub_path": "process/0.40 Standard @Snapmaker Artisan (0.8 nozzle).json" + }, + { + "name": "0.42 Draft @Snapmaker (0.6 nozzle)", + "sub_path": "process/0.42 Draft @Snapmaker (0.6 nozzle).json" + }, + { + "name": "0.42 Draft @Snapmaker J1 (0.6 nozzle)", + "sub_path": "process/0.42 Draft @Snapmaker J1 (0.6 nozzle).json" + }, + { + "name": "0.42 Draft @Snapmaker Artisan (0.6 nozzle)", + "sub_path": "process/0.42 Draft @Snapmaker Artisan (0.6 nozzle).json" + }, + { + "name": "0.48 Draft @Snapmaker (0.8 nozzle)", + "sub_path": "process/0.48 Draft @Snapmaker (0.8 nozzle).json" + }, + { + "name": "0.48 Draft @Snapmaker J1 (0.8 nozzle)", + "sub_path": "process/0.48 Draft @Snapmaker J1 (0.8 nozzle).json" + }, + { + "name": "0.48 Draft @Snapmaker Artisan (0.8 nozzle)", + "sub_path": "process/0.48 Draft @Snapmaker Artisan (0.8 nozzle).json" + } + ], + "filament_list": [ + { + "name": "fdm_filament_common_generic", + "sub_path": "filament/fdm_filament_common_generic.json" + }, + { + "name": "fdm_filament_pla_generic", + "sub_path": "filament/fdm_filament_pla_generic.json" + }, + { + "name": "fdm_filament_pctg_generic", + "sub_path": "filament/fdm_filament_pctg_generic.json" + }, + { + "name": "fdm_filament_bvoh_generic", + "sub_path":"filament/fdm_filament_bvoh_generic.json" + }, + { + "name": "fdm_filament_abs_generic", + "sub_path": "filament/fdm_filament_abs_generic.json" + }, + { + "name": "fdm_filament_asa_generic", + "sub_path": "filament/fdm_filament_asa_generic.json" + }, + { + "name": "fdm_filament_pa_generic", + "sub_path": "filament/fdm_filament_pa_generic.json" + }, + { + "name": "fdm_filament_pc_generic", + "sub_path": "filament/fdm_filament_pc_generic.json" + }, + { + "name": "Generic ABS @base", + "sub_path": "filament/Generic ABS @base.json" + }, + { + "name": "Generic ABS", + "sub_path": "filament/Generic ABS.json" + }, + { + "name": "Generic ASA @base", + "sub_path": "filament/Generic ASA @base.json" + }, + { + "name": "Generic ASA", + "sub_path": "filament/Generic ASA.json" + }, + { + "name": "Generic PA", + "sub_path": "filament/Generic PA.json" + }, + { + "name": "Generic PA-CF", + "sub_path": "filament/Generic PA-CF.json" + }, + { + "name": "Generic PC @base", + "sub_path": "filament/Generic PC @base.json" + }, + { + "name": "Generic PC", + "sub_path": "filament/Generic PC.json" + }, + { + "name": "Generic Support For PLA @base", + "sub_path": "filament/Generic Support For PLA @base.json" + }, + { + "name": "Generic Support For PLA", + "sub_path": "filament/Generic Support For PLA.json" + }, + { + "name": "fdm_filament_pva_generic", + "sub_path": "filament/fdm_filament_pva_generic.json" + }, + { + "name": "Generic PVA @base", + "sub_path": "filament/Generic PVA @base.json" + }, + { + "name": "Generic PVA", + "sub_path": "filament/Generic PVA.json" + }, + { + "name": "fdm_filament_pet_generic", + "sub_path": "filament/fdm_filament_pet_generic.json" + }, + { + "name": "Generic PETG @base", + "sub_path": "filament/Generic PETG @base.json" + }, + { + "name": "Generic PETG", + "sub_path": "filament/Generic PETG.json" + }, + { + "name": "fdm_filament_tpu_generic", + "sub_path": "filament/fdm_filament_tpu_generic.json" + }, + { + "name": "Generic TPU", + "sub_path": "filament/Generic TPU.json" + }, + { + "name": "Generic PCTG @base", + "sub_path": "filament/Generic PCTG @base.json" + }, + { + "name": "Generic PCTG", + "sub_path": "filament/Generic PCTG.json" + }, + { + "name": "Generic PETG HF @base", + "sub_path": "filament/Generic PETG HF @base.json" + }, + { + "name": "Generic PETG HF", + "sub_path": "filament/Generic PETG HF.json" + }, + { + "name": "Generic PETG-CF @base", + "sub_path": "filament/Generic PETG-CF @base.json" + }, + { + "name": "Generic PETG-CF", + "sub_path": "filament/Generic PETG-CF.json" + }, + { + "name": "Generic PETG-GF @base", + "sub_path": "filament/Generic PETG-GF @base.json" + }, + { + "name": "Generic PETG-GF", + "sub_path": "filament/Generic PETG-GF.json" + }, + { + "name": "Generic PLA High Speed @base", + "sub_path": "filament/Generic PLA High Speed @base.json" + }, + { + "name": "Generic PLA High Speed", + "sub_path": "filament/Generic PLA High Speed.json" + }, + { + "name": "Generic PLA Silk @base", + "sub_path": "filament/Generic PLA Silk @base.json" + }, + { + "name": "Generic PLA Silk", + "sub_path": "filament/Generic PLA Silk.json" + }, + { + "name": "Generic PLA @base", + "sub_path": "filament/Generic PLA @base.json" + }, + { + "name": "Generic PLA", + "sub_path": "filament/Generic PLA.json" + }, + { + "name": "Generic PLA-CF @base", + "sub_path": "filament/Generic PLA-CF @base.json" + }, + { + "name": "Generic PLA-CF", + "sub_path": "filament/Generic PLA-CF.json" + }, + { + "name": "Generic BVOH @base", + "sub_path": "filament/Generic BVOH @base.json" + }, + { + "name": "Generic BVOH", + "sub_path": "filament/Generic BVOH.json" + }, + { + "name": "Generic TPU 95A HF @base", + "sub_path": "filament/Generic TPU 95A HF @base.json" + }, + { + "name": "Generic TPU 95A HF", + "sub_path": "filament/Generic TPU 95A HF.json" + }, + + + + + + + + + + + + + + + + + + + + + + + + + + + { + "name": "fdm_filament_common", + "sub_path": "filament/fdm_filament_common.json" + }, + { + "name": "fdm_filament_abs", + "sub_path": "filament/fdm_filament_abs.json" + }, + { + "name": "fdm_filament_asa", + "sub_path": "filament/fdm_filament_asa.json" + }, + { + "name": "fdm_filament_pa", + "sub_path": "filament/fdm_filament_pa.json" + }, + { + "name": "fdm_filament_petg", + "sub_path": "filament/fdm_filament_petg.json" + }, + { + "name": "fdm_filament_pet", + "sub_path": "filament/fdm_filament_pet.json" + }, + { + "name": "fdm_filament_pla", + "sub_path": "filament/fdm_filament_pla.json" + }, + { + "name": "fdm_filament_pla_eco", + "sub_path": "filament/fdm_filament_pla_eco.json" + }, + { + "name": "fdm_filament_pva", + "sub_path": "filament/fdm_filament_pva.json" + }, + { + "name": "fdm_filament_tpu", + "sub_path": "filament/fdm_filament_tpu.json" + }, + { + "name": "Snapmaker ABS @base", + "sub_path": "filament/Snapmaker ABS @base.json" + }, + { + "name": "Snapmaker ABS", + "sub_path": "filament/Snapmaker ABS.json" + }, + { + "name": "Snapmaker ABS @0.2 nozzle", + "sub_path": "filament/Snapmaker ABS @0.2 nozzle.json" + }, + { + "name": "Snapmaker ASA @base", + "sub_path": "filament/Snapmaker ASA @base.json" + }, + { + "name": "Snapmaker ASA", + "sub_path": "filament/Snapmaker ASA.json" + }, + { + "name": "Snapmaker ASA @0.2 nozzle", + "sub_path": "filament/Snapmaker ASA @0.2 nozzle.json" + }, + { + "name": "Snapmaker PA-CF @base", + "sub_path": "filament/Snapmaker PA-CF @base.json" + }, + { + "name": "Snapmaker PA-CF", + "sub_path": "filament/Snapmaker PA-CF.json" + }, + { + "name": "Snapmaker PETG @base", + "sub_path": "filament/Snapmaker PETG @base.json" + }, + { + "name": "Snapmaker PETG", + "sub_path": "filament/Snapmaker PETG.json" + }, + { + "name": "Snapmaker PETG @0.2 nozzle", + "sub_path": "filament/Snapmaker PETG @0.2 nozzle.json" + }, + { + "name": "Snapmaker PET @base", + "sub_path": "filament/Snapmaker PET @base.json" + }, + { + "name": "Snapmaker PET", + "sub_path": "filament/Snapmaker PET.json" + }, + { + "name": "Snapmaker PETG-CF @base", + "sub_path": "filament/Snapmaker PETG-CF @base.json" + }, + { + "name": "Snapmaker PETG-CF", + "sub_path": "filament/Snapmaker PETG-CF.json" + }, + { + "name": "Snapmaker PLA Eco @base", + "sub_path": "filament/Snapmaker PLA Eco @base.json" + }, + { + "name": "Snapmaker PLA Eco", + "sub_path": "filament/Snapmaker PLA Eco.json" + }, + { + "name": "Snapmaker PLA @base", + "sub_path": "filament/Snapmaker PLA @base.json" + }, + { + "name": "Snapmaker PLA", + "sub_path": "filament/Snapmaker PLA.json" + }, + { + "name": "Snapmaker PLA-CF @base", + "sub_path": "filament/Snapmaker PLA-CF @base.json" + }, + { + "name": "Snapmaker PLA-CF", + "sub_path": "filament/Snapmaker PLA-CF.json" + }, + { + "name": "Snapmaker PLA Silk @base", + "sub_path": "filament/Snapmaker PLA Silk @base.json" + }, + { + "name": "Snapmaker PLA Silk", + "sub_path": "filament/Snapmaker PLA Silk.json" + }, + { + "name": "Snapmaker PLA Silk @0.2 nozzle", + "sub_path": "filament/Snapmaker PLA Silk @0.2 nozzle.json" + }, + { + "name": "PolyLite PLA @base", + "sub_path": "filament/PolyLite PLA @base.json" + }, + { + "name": "PolyLite PLA", + "sub_path": "filament/PolyLite PLA.json" + }, + { + "name": "PolyLite PLA @0.2 nozzle", + "sub_path": "filament/PolyLite PLA @0.2 nozzle.json" + }, + { + "name": "PolyTerra PLA @base", + "sub_path": "filament/PolyTerra PLA @base.json" + }, + { + "name": "PolyTerra PLA", + "sub_path": "filament/PolyTerra PLA.json" + }, + { + "name": "PolyTerra PLA @0.2 nozzle", + "sub_path": "filament/PolyTerra PLA @0.2 nozzle.json" + }, + { + "name": "Snapmaker PVA @base", + "sub_path": "filament/Snapmaker PVA @base.json" + }, + { + "name": "Snapmaker PVA", + "sub_path": "filament/Snapmaker PVA.json" + }, + { + "name": "Snapmaker PVA @0.2 nozzle", + "sub_path": "filament/Snapmaker PVA @0.2 nozzle.json" + }, + { + "name": "Snapmaker TPU @base", + "sub_path": "filament/Snapmaker TPU @base.json" + }, + { + "name": "Snapmaker TPU", + "sub_path": "filament/Snapmaker TPU.json" + }, + { + "name": "Snapmaker TPE", + "sub_path": "filament/Snapmaker TPE.json" + }, + { + "name": "Snapmaker ABS @J1 base", + "sub_path": "filament/Snapmaker ABS @J1 base.json" + }, + { + "name": "Snapmaker ABS @J1", + "sub_path": "filament/Snapmaker ABS @J1.json" + }, + { + "name": "Snapmaker ABS @J1 0.2 nozzle", + "sub_path": "filament/Snapmaker ABS @J1 0.2 nozzle.json" + }, + { + "name": "Snapmaker ABS @J1 0.8 nozzle", + "sub_path": "filament/Snapmaker ABS @J1 0.8 nozzle.json" + }, + { + "name": "Snapmaker ABS Benchy @J1", + "sub_path": "filament/Snapmaker ABS Benchy @J1.json" + }, + { + "name": "Snapmaker ASA @J1 base", + "sub_path": "filament/Snapmaker ASA @J1 base.json" + }, + { + "name": "Snapmaker ASA @J1", + "sub_path": "filament/Snapmaker ASA @J1.json" + }, + { + "name": "Snapmaker ASA @J1 0.2 nozzle", + "sub_path": "filament/Snapmaker ASA @J1 0.2 nozzle.json" + }, + { + "name": "Snapmaker PA-CF @J1 base", + "sub_path": "filament/Snapmaker PA-CF @J1 base.json" + }, + { + "name": "Snapmaker PA-CF @J1", + "sub_path": "filament/Snapmaker PA-CF @J1.json" + }, + { + "name": "Snapmaker PETG @J1 base", + "sub_path": "filament/Snapmaker PETG @J1 base.json" + }, + { + "name": "Snapmaker PETG @J1", + "sub_path": "filament/Snapmaker PETG @J1.json" + }, + { + "name": "Snapmaker PETG @J1 0.2 nozzle", + "sub_path": "filament/Snapmaker PETG @J1 0.2 nozzle.json" + }, + { + "name": "Snapmaker PETG @J1 0.8 nozzle", + "sub_path": "filament/Snapmaker PETG @J1 0.8 nozzle.json" + }, + { + "name": "Snapmaker PET @J1 base", + "sub_path": "filament/Snapmaker PET @J1 base.json" + }, + { + "name": "Snapmaker PET @J1", + "sub_path": "filament/Snapmaker PET @J1.json" + }, + { + "name": "Snapmaker PETG-CF @J1 base", + "sub_path": "filament/Snapmaker PETG-CF @J1 base.json" + }, + { + "name": "Snapmaker PETG-CF @J1", + "sub_path": "filament/Snapmaker PETG-CF @J1.json" + }, + { + "name": "Snapmaker PLA Eco @J1 base", + "sub_path": "filament/Snapmaker PLA Eco @J1 base.json" + }, + { + "name": "Snapmaker PLA Eco @J1", + "sub_path": "filament/Snapmaker PLA Eco @J1.json" + }, + { + "name": "Snapmaker PLA Eco @J1 0.2 nozzle", + "sub_path": "filament/Snapmaker PLA Eco @J1 0.2 nozzle.json" + }, + { + "name": "Snapmaker PLA Eco @J1 0.8 nozzle", + "sub_path": "filament/Snapmaker PLA Eco @J1 0.8 nozzle.json" + }, + { + "name": "Snapmaker PLA @J1 base", + "sub_path": "filament/Snapmaker PLA @J1 base.json" + }, + { + "name": "Snapmaker PLA @J1", + "sub_path": "filament/Snapmaker PLA @J1.json" + }, + { + "name": "Snapmaker PLA Matte @base", + "sub_path": "filament/Snapmaker PLA Matte @base.json" + }, + { + "name": "Snapmaker PLA Matte @J1", + "sub_path": "filament/Snapmaker PLA Matte @J1.json" + }, + { + "name": "Snapmaker PLA Metal @J1 base", + "sub_path": "filament/Snapmaker PLA Metal @J1 base.json" + }, + { + "name": "Snapmaker PLA Metal @J1", + "sub_path": "filament/Snapmaker PLA Metal @J1.json" + }, + { + "name": "Snapmaker PLA Metal @J1 0.2 nozzle", + "sub_path": "filament/Snapmaker PLA Metal @J1 0.2 nozzle.json" + }, + { + "name": "Snapmaker PLA-CF @J1 base", + "sub_path": "filament/Snapmaker PLA-CF @J1 base.json" + }, + { + "name": "Snapmaker PLA-CF @J1", + "sub_path": "filament/Snapmaker PLA-CF @J1.json" + }, + { + "name": "Snapmaker PLA-CF @J1 0.8 nozzle", + "sub_path": "filament/Snapmaker PLA-CF @J1 0.8 nozzle.json" + }, + { + "name": "Snapmaker PLA Silk @J1 base", + "sub_path": "filament/Snapmaker PLA Silk @J1 base.json" + }, + { + "name": "Snapmaker PLA Silk @J1", + "sub_path": "filament/Snapmaker PLA Silk @J1.json" + }, + { + "name": "Snapmaker PLA Silk @J1 0.2 nozzle", + "sub_path": "filament/Snapmaker PLA Silk @J1 0.2 nozzle.json" + }, + { + "name": "PolyLite PLA @J1", + "sub_path": "filament/PolyLite PLA @J1.json" + }, + { + "name": "PolyLite PLA @J1 0.2 nozzle", + "sub_path": "filament/PolyLite PLA @J1 0.2 nozzle.json" + }, + { + "name": "PolyTerra PLA @J1", + "sub_path": "filament/PolyTerra PLA @J1.json" + }, + { + "name": "PolyTerra PLA @J1 0.2 nozzle", + "sub_path": "filament/PolyTerra PLA @J1 0.2 nozzle.json" + }, + { + "name": "Snapmaker PVA @J1 base", + "sub_path": "filament/Snapmaker PVA @J1 base.json" + }, + { + "name": "Snapmaker PVA @J1", + "sub_path": "filament/Snapmaker PVA @J1.json" + }, + { + "name": "Snapmaker PVA @J1 0.2 nozzle", + "sub_path": "filament/Snapmaker PVA @J1 0.2 nozzle.json" + }, + { + "name": "Snapmaker TPU @J1 base", + "sub_path": "filament/Snapmaker TPU @J1 base.json" + }, + { + "name": "Snapmaker TPU @J1", + "sub_path": "filament/Snapmaker TPU @J1.json" + }, + { + "name": "Snapmaker TPU High-Flow @J1", + "sub_path": "filament/Snapmaker TPU High-Flow @J1.json" + }, + { + "name": "Snapmaker TPE @J1", + "sub_path": "filament/Snapmaker TPE @J1.json" + }, + { + "name": "Snapmaker ABS @Dual base", + "sub_path": "filament/Snapmaker ABS @Dual base.json" + }, + { + "name": "Snapmaker ABS @Dual", + "sub_path": "filament/Snapmaker ABS @Dual.json" + }, + { + "name": "Snapmaker ABS @Dual 0.2 nozzle", + "sub_path": "filament/Snapmaker ABS @Dual 0.2 nozzle.json" + }, + { + "name": "Snapmaker ABS @Dual 0.8 nozzle", + "sub_path": "filament/Snapmaker ABS @Dual 0.8 nozzle.json" + }, + { + "name": "Snapmaker ABS Benchy @Dual", + "sub_path": "filament/Snapmaker ABS Benchy @Dual.json" + }, + { + "name": "Snapmaker ASA @Dual base", + "sub_path": "filament/Snapmaker ASA @Dual base.json" + }, + { + "name": "Snapmaker ASA @Dual", + "sub_path": "filament/Snapmaker ASA @Dual.json" + }, + { + "name": "Snapmaker ASA @Dual 0.2 nozzle", + "sub_path": "filament/Snapmaker ASA @Dual 0.2 nozzle.json" + }, + { + "name": "Snapmaker PA-CF @Dual base", + "sub_path": "filament/Snapmaker PA-CF @Dual base.json" + }, + { + "name": "Snapmaker PA-CF @Dual", + "sub_path": "filament/Snapmaker PA-CF @Dual.json" + }, + { + "name": "Snapmaker PETG @Dual base", + "sub_path": "filament/Snapmaker PETG @Dual base.json" + }, + { + "name": "Snapmaker PETG @Dual", + "sub_path": "filament/Snapmaker PETG @Dual.json" + }, + { + "name": "Snapmaker PETG @Dual 0.2 nozzle", + "sub_path": "filament/Snapmaker PETG @Dual 0.2 nozzle.json" + }, + { + "name": "Snapmaker PETG @Dual 0.8 nozzle", + "sub_path": "filament/Snapmaker PETG @Dual 0.8 nozzle.json" + }, + { + "name": "Snapmaker PET @Dual base", + "sub_path": "filament/Snapmaker PET @Dual base.json" + }, + { + "name": "Snapmaker PET @Dual 0.8 nozzle", + "sub_path": "filament/Snapmaker PET @Dual 0.8 nozzle.json" + }, + { + "name": "Snapmaker PET @Dual", + "sub_path": "filament/Snapmaker PET @Dual.json" + }, + { + "name": "Snapmaker PETG-CF @Dual base", + "sub_path": "filament/Snapmaker PETG-CF @Dual base.json" + }, + { + "name": "Snapmaker PETG-CF @Dual", + "sub_path": "filament/Snapmaker PETG-CF @Dual.json" + }, + { + "name": "Snapmaker PLA Eco @Dual base", + "sub_path": "filament/Snapmaker PLA Eco @Dual base.json" + }, + { + "name": "Snapmaker PLA Eco @Dual", + "sub_path": "filament/Snapmaker PLA Eco @Dual.json" + }, + { + "name": "Snapmaker PLA Eco @Dual 0.2 nozzle", + "sub_path": "filament/Snapmaker PLA Eco @Dual 0.2 nozzle.json" + }, + { + "name": "Snapmaker PLA Eco @Dual 0.8 nozzle", + "sub_path": "filament/Snapmaker PLA Eco @Dual 0.8 nozzle.json" + }, + { + "name": "Snapmaker PLA @Dual base", + "sub_path": "filament/Snapmaker PLA @Dual base.json" + }, + { + "name": "Snapmaker PLA @Dual", + "sub_path": "filament/Snapmaker PLA @Dual.json" + }, + { + "name": "Snapmaker PLA Matte @Dual", + "sub_path": "filament/Snapmaker PLA Matte @Dual.json" + }, + { + "name": "Snapmaker PLA Metal @Dual base", + "sub_path": "filament/Snapmaker PLA Metal @Dual base.json" + }, + { + "name": "Snapmaker PLA Metal @Dual", + "sub_path": "filament/Snapmaker PLA Metal @Dual.json" + }, + { + "name": "Snapmaker PLA Metal @Dual 0.2 nozzle", + "sub_path": "filament/Snapmaker PLA Metal @Dual 0.2 nozzle.json" + }, + { + "name": "Snapmaker PLA-CF @Dual base", + "sub_path": "filament/Snapmaker PLA-CF @Dual base.json" + }, + { + "name": "Snapmaker PLA-CF @Dual", + "sub_path": "filament/Snapmaker PLA-CF @Dual.json" + }, + { + "name": "Snapmaker PLA-CF @Dual 0.8 nozzle", + "sub_path": "filament/Snapmaker PLA-CF @Dual 0.8 nozzle.json" + }, + { + "name": "Snapmaker PLA Silk @Dual base", + "sub_path": "filament/Snapmaker PLA Silk @Dual base.json" + }, + { + "name": "Snapmaker PLA Silk @Dual", + "sub_path": "filament/Snapmaker PLA Silk @Dual.json" + }, + { + "name": "Snapmaker PLA Silk @Dual 0.2 nozzle", + "sub_path": "filament/Snapmaker PLA Silk @Dual 0.2 nozzle.json" + }, + { + "name": "PolyLite PLA @Dual", + "sub_path": "filament/PolyLite PLA @Dual.json" + }, + { + "name": "PolyLite PLA @Dual 0.2 nozzle", + "sub_path": "filament/PolyLite PLA @Dual 0.2 nozzle.json" + }, + { + "name": "PolyTerra PLA @Dual", + "sub_path": "filament/PolyTerra PLA @Dual.json" + }, + { + "name": "PolyTerra PLA @Dual 0.2 nozzle", + "sub_path": "filament/PolyTerra PLA @Dual 0.2 nozzle.json" + }, + { + "name": "Snapmaker PVA @Dual base", + "sub_path": "filament/Snapmaker PVA @Dual base.json" + }, + { + "name": "Snapmaker PVA @Dual", + "sub_path": "filament/Snapmaker PVA @Dual.json" + }, + { + "name": "Snapmaker PVA @Dual 0.2 nozzle", + "sub_path": "filament/Snapmaker PVA @Dual 0.2 nozzle.json" + }, + { + "name": "Snapmaker TPU @Dual base", + "sub_path": "filament/Snapmaker TPU @Dual base.json" + }, + { + "name": "Snapmaker TPU @Dual", + "sub_path": "filament/Snapmaker TPU @Dual.json" + }, + { + "name": "Snapmaker TPU High-Flow @Dual", + "sub_path": "filament/Snapmaker TPU High-Flow @Dual.json" + }, + { + "name": "Snapmaker TPE @Dual", + "sub_path": "filament/Snapmaker TPE @Dual.json" + }, + { + "name": "Snapmaker Breakaway Support @base", + "sub_path": "filament/Snapmaker Breakaway Support @base.json" + }, + { + "name": "Snapmaker Breakaway Support", + "sub_path": "filament/Snapmaker Breakaway Support.json" + }, + { + "name": "Snapmaker Breakaway Support @J1", + "sub_path": "filament/Snapmaker Breakaway Support @J1.json" + }, + + + + + + + { + "name": "Snapmaker PLA @U1 base", + "sub_path": "filament/Snapmaker PLA @U1 base.json" + }, + { + "name": "Snapmaker PLA Eco @U1 base", + "sub_path": "filament/Snapmaker PLA Eco @U1 base.json" + }, + { + "name": "Snapmaker PLA Matte", + "sub_path": "filament/Snapmaker PLA Matte.json" + }, + { + "name": "Snapmaker PLA Matte @U1 base", + "sub_path": "filament/Snapmaker PLA Matte @U1 base.json" + }, + { + "name": "Snapmaker PLA Matte @U1", + "sub_path": "filament/Snapmaker PLA Matte @U1.json" + }, + { + "name": "Snapmaker PLA Basic @U1 base", + "sub_path": "filament/Snapmaker PLA Basic @U1 base.json" + }, + { + "name": "Snapmaker PLA Basic @U1", + "sub_path": "filament/Snapmaker PLA Basic @U1.json" + }, + { + "name": "Snapmaker PLA SnapSpeed @base", + "sub_path": "filament/Snapmaker PLA SnapSpeed @base.json" + }, + { + "name": "Snapmaker PLA SnapSpeed", + "sub_path": "filament/Snapmaker PLA SnapSpeed.json" + }, + { + "name": "Snapmaker PLA SnapSpeed @J1", + "sub_path": "filament/Snapmaker PLA SnapSpeed @J1.json" + }, + { + "name": "Snapmaker PLA SnapSpeed @Dual", + "sub_path": "filament/Snapmaker PLA SnapSpeed @Dual.json" + }, + { + "name": "Snapmaker PLA SnapSpeed @U1 base", + "sub_path": "filament/Snapmaker PLA SnapSpeed @U1 base.json" + }, + { + "name": "Snapmaker PLA SnapSpeed @U1 base", + "sub_path": "filament/Snapmaker PLA SnapSpeed @U1 base.json" + }, + { + "name": "Snapmaker PLA SnapSpeed @U1", + "sub_path": "filament/Snapmaker PLA SnapSpeed @U1.json" + }, + { + "name": "Snapmaker PLA Metal @U1 base", + "sub_path": "filament/Snapmaker PLA Metal @U1 base.json" + }, + { + "name": "Snapmaker PLA Silk @U1 base", + "sub_path": "filament/Snapmaker PLA Silk @U1 base.json" + }, + { + "name": "Snapmaker PLA-CF @U1 base", + "sub_path": "filament/Snapmaker PLA-CF @U1 base.json" + }, + { + "name": "Snapmaker PVA @U1 base", + "sub_path": "filament/Snapmaker PVA @U1 base.json" + }, + { + "name": "Snapmaker TPU @U1 base", + "sub_path": "filament/Snapmaker TPU @U1 base.json" + }, + { + "name": "Snapmaker TPU 95A @U1 base", + "sub_path":"filament/Snapmaker TPU 95A @U1 base.json" + } + + ], + "machine_list": [ + { + "name": "fdm_klipper", + "sub_path": "machine/fdm_klipper.json" + }, + { + "name": "fdm_toolchanger", + "sub_path": "machine/fdm_toolchanger.json" + }, + { + "name": "fdm_common", + "sub_path": "machine/fdm_common.json" + }, + { + "name": "fdm_linear2", + "sub_path": "machine/fdm_linear2.json" + }, + { + "name": "fdm_linear2_dual", + "sub_path": "machine/fdm_linear2_dual.json" + }, + { + "name": "fdm_idex", + "sub_path": "machine/fdm_idex.json" + }, + { + "name": "fdm_a250", + "sub_path": "machine/fdm_a250.json" + }, + { + "name": "fdm_a350", + "sub_path": "machine/fdm_a350.json" + }, + { + "name": "fdm_a250_dual", + "sub_path": "machine/fdm_a250_dual.json" + }, + { + "name": "fdm_a350_dual", + "sub_path": "machine/fdm_a350_dual.json" + }, + { + "name": "fdm_a250_qs", + "sub_path": "machine/fdm_a250_qs.json" + }, + { + "name": "fdm_a350_qs", + "sub_path": "machine/fdm_a350_qs.json" + }, + { + "name": "fdm_a250_bk", + "sub_path": "machine/fdm_a250_bk.json" + }, + { + "name": "fdm_a350_bk", + "sub_path": "machine/fdm_a350_bk.json" + }, + { + "name": "fdm_a250_qs_bk", + "sub_path": "machine/fdm_a250_qs_bk.json" + }, + { + "name": "fdm_a350_qs_bk", + "sub_path": "machine/fdm_a350_qs_bk.json" + }, + { + "name": "fdm_a250_dual_qs", + "sub_path": "machine/fdm_a250_dual_qs.json" + }, + { + "name": "fdm_a350_dual_qs", + "sub_path": "machine/fdm_a350_dual_qs.json" + }, + { + "name": "fdm_a250_dual_bk", + "sub_path": "machine/fdm_a250_dual_bk.json" + }, + { + "name": "fdm_a350_dual_bk", + "sub_path": "machine/fdm_a350_dual_bk.json" + }, + { + "name": "fdm_a250_dual_qs_bk", + "sub_path": "machine/fdm_a250_dual_qs_bk.json" + }, + { + "name": "fdm_a350_dual_qs_bk", + "sub_path": "machine/fdm_a350_dual_qs_bk.json" + }, + { + "name": "fdm_a400", + "sub_path": "machine/fdm_a400.json" + }, + { + "name": "fdm_U1", + "sub_path": "machine/fdm_U1.json" + }, + { + "name": "Snapmaker J1 (0.2 nozzle)", + "sub_path": "machine/Snapmaker J1 (0.2 nozzle).json" + }, + { + "name": "Snapmaker J1 (0.4 nozzle)", + "sub_path": "machine/Snapmaker J1 (0.4 nozzle).json" + }, + { + "name": "Snapmaker J1 (0.6 nozzle)", + "sub_path": "machine/Snapmaker J1 (0.6 nozzle).json" + }, + { + "name": "Snapmaker J1 (0.8 nozzle)", + "sub_path": "machine/Snapmaker J1 (0.8 nozzle).json" + }, + { + "name": "Snapmaker A250 (0.2 nozzle)", + "sub_path": "machine/Snapmaker A250 (0.2 nozzle).json" + }, + { + "name": "Snapmaker A250 (0.4 nozzle)", + "sub_path": "machine/Snapmaker A250 (0.4 nozzle).json" + }, + { + "name": "Snapmaker A250 (0.6 nozzle)", + "sub_path": "machine/Snapmaker A250 (0.6 nozzle).json" + }, + { + "name": "Snapmaker A250 (0.8 nozzle)", + "sub_path": "machine/Snapmaker A250 (0.8 nozzle).json" + }, + { + "name": "Snapmaker A350 (0.2 nozzle)", + "sub_path": "machine/Snapmaker A350 (0.2 nozzle).json" + }, + { + "name": "Snapmaker A350 (0.4 nozzle)", + "sub_path": "machine/Snapmaker A350 (0.4 nozzle).json" + }, + { + "name": "Snapmaker A350 (0.6 nozzle)", + "sub_path": "machine/Snapmaker A350 (0.6 nozzle).json" + }, + { + "name": "Snapmaker A350 (0.8 nozzle)", + "sub_path": "machine/Snapmaker A350 (0.8 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual (0.2 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual (0.2 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual (0.4 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual (0.4 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual (0.6 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual (0.6 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual (0.8 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual (0.8 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual (0.2 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual (0.2 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual (0.4 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual (0.4 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual (0.6 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual (0.6 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual (0.8 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual (0.8 nozzle).json" + }, + { + "name": "Snapmaker A250 QSKit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A250 QSKit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A250 QSKit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A250 QSKit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A250 QSKit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A250 QSKit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A250 QSKit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A250 QSKit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A350 QSKit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A350 QSKit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A350 QSKit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A350 QSKit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A350 QSKit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A350 QSKit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A350 QSKit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A350 QSKit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A250 BKit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A250 BKit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A250 BKit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A250 BKit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A250 BKit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A250 BKit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A250 BKit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A250 BKit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A350 BKit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A350 BKit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A350 BKit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A350 BKit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A350 BKit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A350 BKit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A350 BKit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A350 BKit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A250 QS+B Kit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A250 QS+B Kit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A250 QS+B Kit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A250 QS+B Kit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A350 QS+B Kit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A350 QS+B Kit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A350 QS+B Kit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A350 QS+B Kit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual QSKit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual QSKit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual QSKit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual QSKit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual QSKit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual QSKit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual QSKit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual QSKit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual BKit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual BKit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual BKit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual BKit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual BKit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual BKit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual BKit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual BKit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual BKit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual BKit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual BKit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual BKit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual BKit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual BKit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual BKit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual BKit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual QS+B Kit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual QS+B Kit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual QS+B Kit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A250 Dual QS+B Kit (0.8 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual QS+B Kit (0.2 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual QS+B Kit (0.4 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual QS+B Kit (0.6 nozzle).json" + }, + { + "name": "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "sub_path": "machine/Snapmaker A350 Dual QS+B Kit (0.8 nozzle).json" + }, + { + "name": "Snapmaker U1 (0.4 nozzle)", + "sub_path": "machine/Snapmaker U1 (0.4 nozzle).json" + }, + { + "name": "Snapmaker Artisan (0.2 nozzle)", + "sub_path": "machine/Snapmaker Artisan (0.2 nozzle).json" + }, + { + "name": "Snapmaker Artisan (0.4 nozzle)", + "sub_path": "machine/Snapmaker Artisan (0.4 nozzle).json" + }, + { + "name": "Snapmaker Artisan (0.6 nozzle)", + "sub_path": "machine/Snapmaker Artisan (0.6 nozzle).json" + }, + { + "name": "Snapmaker Artisan (0.8 nozzle)", + "sub_path": "machine/Snapmaker Artisan (0.8 nozzle).json" + } + ] +} + diff --git a/resources/profiles/Snapmaker/filament/Generic ABS @base.json b/resources/profiles/Snapmaker/filament/Generic ABS @base.json new file mode 100644 index 0000000000..2c602c01de --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic ABS @base.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "Generic ABS @base", + "inherits": "fdm_filament_abs_generic", + "from": "system", + "filament_id": "GFB99", + "instantiation": "false", + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "16" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic ABS.json b/resources/profiles/Snapmaker/filament/Generic ABS.json new file mode 100644 index 0000000000..4a25db1a10 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic ABS.json @@ -0,0 +1,41 @@ +{ + "type": "filament", + "name": "Generic ABS", + "inherits": "Generic ABS @base", + "from": "system", + "setting_id": "GFSB99", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "15" + ], + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "15" + ], + "filament_multitool_ramming_volume": [ + "0.5" + ], + "filament_retract_length_toolchange": [ + "10" + ], + "filament_start_gcode": [ + "" + ], + "filament_vendor": [ + "Generic" + ], + "nozzle_temperature_initial_layer": [ + "270" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic ASA @base.json b/resources/profiles/Snapmaker/filament/Generic ASA @base.json new file mode 100644 index 0000000000..580ab98acc --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic ASA @base.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "Generic ASA @base", + "inherits": "fdm_filament_asa_generic", + "from": "system", + "filament_id": "GFB98", + "instantiation": "false", + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "12" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic ASA.json b/resources/profiles/Snapmaker/filament/Generic ASA.json new file mode 100644 index 0000000000..cc754ea953 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic ASA.json @@ -0,0 +1,35 @@ +{ + "type": "filament", + "name": "Generic ASA", + "inherits": "Generic ASA @base", + "from": "system", + "setting_id": "GFSB98", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "12" + ], + "filament_multitool_ramming_volume": [ + "0.5" + ], + "filament_retract_length_toolchange": [ + "10" + ], + "filament_start_gcode": [ + "" + ], + "filament_vendor": [ + "Generic" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic BVOH @base.json b/resources/profiles/Snapmaker/filament/Generic BVOH @base.json new file mode 100644 index 0000000000..20d44a0cae --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic BVOH @base.json @@ -0,0 +1,8 @@ +{ + "type": "filament", + "name": "Generic BVOH @base", + "inherits": "fdm_filament_bvoh_generic", + "from": "system", + "filament_id": "GFS97", + "instantiation": "false" +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic BVOH.json b/resources/profiles/Snapmaker/filament/Generic BVOH.json new file mode 100644 index 0000000000..adb7b520b0 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic BVOH.json @@ -0,0 +1,56 @@ +{ + "type": "filament", + "name": "Generic BVOH", + "inherits": "Generic BVOH @base", + "from": "system", + "setting_id": "GFSS97_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "" + ], + "filament_max_volumetric_speed": [ + "6" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "6" + ], + "filament_multitool_ramming_volume": [ + "0.1" + ], + "filament_retract_length_toolchange": [ + "3" + ], + "filament_soluble": [ + "1" + ], + "filament_start_gcode": [ + "" + ], + "filament_vendor": [ + "Generic" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "pressure_advance": [ + "0.025" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PA-CF.json b/resources/profiles/Snapmaker/filament/Generic PA-CF.json new file mode 100644 index 0000000000..a816b6a07a --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PA-CF.json @@ -0,0 +1,60 @@ +{ + "type": "filament", + "name": "Generic PA-CF", + "inherits": "fdm_filament_pa_generic", + "from": "system", + "filament_id": "GFN98", + "setting_id": "GFSN99", + "instantiation": "true", + "fan_cooling_layer_time": [ + "5" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "10" + ], + "filament_type": [ + "PA-CF" + ], + "full_fan_speed_layer": [ + "2" + ], + "overhang_fan_speed": [ + "40" + ], + "overhang_fan_threshold": [ + "0%" + ], + "temperature_vitrification": [ + "170" + ], + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "8" + ], + "filament_multitool_ramming_volume": [ + "0.5" + ], + "filament_retract_length_toolchange": [ + "10" + ], + "filament_start_gcode": [ + "" + ], + "filament_vendor": [ + "Generic" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PA.json b/resources/profiles/Snapmaker/filament/Generic PA.json new file mode 100644 index 0000000000..b40d836629 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PA.json @@ -0,0 +1,78 @@ +{ + "type": "filament", + "name": "Generic PA", + "inherits": "fdm_filament_pa_generic", + "from": "system", + "filament_id": "GFN99", + "setting_id": "GFSN98", + "instantiation": "true", + "chamber_temperatures": [ + "60" + ], + "fan_cooling_layer_time": [ + "65" + ], + "fan_max_speed": [ + "85" + ], + "fan_min_speed": [ + "40" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature": [ + "260" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "95" + ], + "overhang_fan_threshold": [ + "10%" + ], + "required_nozzle_HRC": [ + "3" + ], + "slow_down_layer_time": [ + "8" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "12" + ], + "filament_multitool_ramming_volume": [ + "0.5" + ], + "filament_retract_length_toolchange": [ + "10" + ], + "filament_start_gcode": [ + "" + ], + "filament_vendor": [ + "Generic" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PC @base.json b/resources/profiles/Snapmaker/filament/Generic PC @base.json new file mode 100644 index 0000000000..8d1f05a99b --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PC @base.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "Generic PC @base", + "inherits": "fdm_filament_pc_generic", + "from": "system", + "filament_id": "GFC99", + "instantiation": "false", + "filament_max_volumetric_speed": [ + "16" + ], + "filament_flow_ratio": [ + "0.94" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PC.json b/resources/profiles/Snapmaker/filament/Generic PC.json new file mode 100644 index 0000000000..9c9a8cc3f0 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PC.json @@ -0,0 +1,56 @@ +{ + "type": "filament", + "name": "Generic PC", + "inherits": "Generic PC @base", + "from": "system", + "setting_id": "GFSC99", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "eng_plate_temp": [ + "100" + ], + "eng_plate_temp_initial_layer": [ + "100" + ], + "hot_plate_temp": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "\n" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "16" + ], + "filament_multitool_ramming_volume": [ + "0.5" + ], + "filament_retract_length_toolchange": [ + "10" + ], + "filament_start_gcode": [ + "" + ], + "filament_vendor": [ + "Generic" + ], + "nozzle_temperature_initial_layer": [ + "280" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PCTG @base.json b/resources/profiles/Snapmaker/filament/Generic PCTG @base.json new file mode 100644 index 0000000000..7ef5a80de2 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PCTG @base.json @@ -0,0 +1,74 @@ +{ + "type": "filament", + "name": "Generic PCTG @base", + "inherits": "fdm_filament_pctg_generic", + "from": "system", + "filament_id": "GFG970", + "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "10" + ], + "filament_cost": [ + "28.99" + ], + "filament_density": [ + "1.29" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "6" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "10%" + ], + "slow_down_layer_time": [ + "12" + ], + "temperature_vitrification": [ + "90" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >80)||(bed_temperature_initial_layer[current_extruder] >80)}M106 P3 S255\n{elsif (bed_temperature[current_extruder] >60)||(bed_temperature_initial_layer[current_extruder] >60)}M106 P3 S180\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PCTG.json b/resources/profiles/Snapmaker/filament/Generic PCTG.json new file mode 100644 index 0000000000..28b1925e35 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PCTG.json @@ -0,0 +1,53 @@ +{ + "type": "filament", + "name": "Generic PCTG", + "inherits": "Generic PCTG @base", + "from": "system", + "setting_id": "GFSG97_001", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "" + ], + "filament_minimal_purge_on_wipe_tower": [ + "50" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_volume": [ + "5" + ], + "filament_start_gcode": [ + "" + ], + "hot_plate_temp": [ + "95" + ], + "hot_plate_temp_initial_layer": [ + "95" + ], + "pressure_advance": [ + "0.04" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "10" + ], + "filament_retract_restart_extra_toolchange": [ + "0" + ], + "textured_plate_temp": [ + "95" + ], + "textured_plate_temp_initial_layer": [ + "95" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PETG @base.json b/resources/profiles/Snapmaker/filament/Generic PETG @base.json new file mode 100644 index 0000000000..0c42ab16e2 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PETG @base.json @@ -0,0 +1,74 @@ +{ + "type": "filament", + "name": "Generic PETG @base", + "inherits": "fdm_filament_pet_generic", + "from": "system", + "filament_id": "GFG00", + "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "10" + ], + "filament_cost": [ + "24.99" + ], + "filament_density": [ + "1.25" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_vendor": [ + "Snapmaker" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "230" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "10%" + ], + "slow_down_layer_time": [ + "12" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >80)||(bed_temperature_initial_layer[current_extruder] >80)}M106 P3 S255\n{elsif (bed_temperature[current_extruder] >60)||(bed_temperature_initial_layer[current_extruder] >60)}M106 P3 S180\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PETG HF @base.json b/resources/profiles/Snapmaker/filament/Generic PETG HF @base.json new file mode 100644 index 0000000000..2caa3f3063 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PETG HF @base.json @@ -0,0 +1,80 @@ +{ + "type": "filament", + "name": "Generic PETG HF @base", + "inherits": "fdm_filament_pet_generic", + "from": "system", + "filament_id": "GFG021", + "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "10" + ], + "filament_cost": [ + "24.99" + ], + "filament_density": [ + "1.28" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "filament_vendor": [ + "Snapmaker" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "nozzle_temperature": [ + "245" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "230" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "10%" + ], + "slow_down_layer_time": [ + "12" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >80)||(bed_temperature_initial_layer[current_extruder] >80)}M106 P3 S255\n{elsif (bed_temperature[current_extruder] >60)||(bed_temperature_initial_layer[current_extruder] >60)}M106 P3 S180\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PETG HF.json b/resources/profiles/Snapmaker/filament/Generic PETG HF.json new file mode 100644 index 0000000000..c9884b9e43 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PETG HF.json @@ -0,0 +1,77 @@ +{ + "type": "filament", + "name": "Generic PETG HF", + "inherits": "Generic PETG HF @base", + "from": "system", + "setting_id": "GFSG02_001", + "instantiation": "true", + "fan_cooling_layer_time": [ + "30" + ], + "fan_min_speed": [ + "20" + ], + "overhang_fan_speed": [ + "90" + ], + "slow_down_layer_time": [ + "25" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "filament_minimal_purge_on_wipe_tower": [ + "50" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "20" + ], + "filament_multitool_ramming_volume": [ + "5" + ], + "filament_start_gcode": [ + "" + ], + "hot_plate_temp": [ + "80" + ], + "hot_plate_temp_initial_layer": [ + "80" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_range_low": [ + "220" + ], + "pressure_advance": [ + "0.04" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "10" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PETG-CF @base.json b/resources/profiles/Snapmaker/filament/Generic PETG-CF @base.json new file mode 100644 index 0000000000..cdd51bebab --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PETG-CF @base.json @@ -0,0 +1,80 @@ +{ + "type": "filament", + "name": "Generic PETG-CF @base", + "inherits": "fdm_filament_pet_generic", + "from": "system", + "filament_id": "GFG501", + "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "34.99" + ], + "filament_density": [ + "1.25" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "14" + ], + "filament_type": [ + "PETG-CF" + ], + "filament_vendor": [ + "Snapmaker" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "10%" + ], + "required_nozzle_HRC": [ + "40" + ], + "slow_down_layer_time": [ + "6" + ], + "temperature_vitrification": [ + "70" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >80)||(bed_temperature_initial_layer[current_extruder] >80)}M106 P3 S255\n{elsif (bed_temperature[current_extruder] >60)||(bed_temperature_initial_layer[current_extruder] >60)}M106 P3 S180\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PETG-CF.json b/resources/profiles/Snapmaker/filament/Generic PETG-CF.json new file mode 100644 index 0000000000..7c69287b5a --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PETG-CF.json @@ -0,0 +1,68 @@ +{ + "type": "filament", + "name": "Generic PETG-CF", + "inherits": "Generic PETG-CF @base", + "from": "system", + "setting_id": "GFSG50_021", + "instantiation": "true", + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "11" + ], + "overhang_fan_speed": [ + "100" + ], + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "\n" + ], + "filament_minimal_purge_on_wipe_tower": [ + "50" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "15" + ], + "filament_multitool_ramming_volume": [ + "5" + ], + "filament_start_gcode": [ + "" + ], + "hot_plate_temp": [ + "80" + ], + "hot_plate_temp_initial_layer": [ + "80" + ], + "pressure_advance": [ + "0.02" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "10" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PETG-GF @base.json b/resources/profiles/Snapmaker/filament/Generic PETG-GF @base.json new file mode 100644 index 0000000000..2d37414884 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PETG-GF @base.json @@ -0,0 +1,80 @@ +{ + "type": "filament", + "name": "Generic PETG-GF @base", + "inherits": "fdm_filament_pet_generic", + "from": "system", + "filament_id": "GFG5022", + "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "34.99" + ], + "filament_density": [ + "1.25" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "14" + ], + "filament_type": [ + "PETG-CF" + ], + "filament_vendor": [ + "Snapmaker" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "10%" + ], + "required_nozzle_HRC": [ + "40" + ], + "slow_down_layer_time": [ + "6" + ], + "temperature_vitrification": [ + "70" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >80)||(bed_temperature_initial_layer[current_extruder] >80)}M106 P3 S255\n{elsif (bed_temperature[current_extruder] >60)||(bed_temperature_initial_layer[current_extruder] >60)}M106 P3 S180\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PETG-GF.json b/resources/profiles/Snapmaker/filament/Generic PETG-GF.json new file mode 100644 index 0000000000..3291e95429 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PETG-GF.json @@ -0,0 +1,50 @@ +{ + "type": "filament", + "name": "Generic PETG-GF", + "inherits": "Generic PETG-GF @base", + "from": "system", + "setting_id": "GFSG50_022", + "instantiation": "true", + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "overhang_fan_speed": [ + "100" + ], + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "" + ], + "filament_start_gcode": [ + "" + ], + "filament_vendor": [ + "Generic" + ], + "pressure_advance": [ + "0.03" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_volume": [ + "5" + ], + "filament_retract_length_toolchange": [ + "10" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PETG.json b/resources/profiles/Snapmaker/filament/Generic PETG.json new file mode 100644 index 0000000000..25cba5a4f2 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PETG.json @@ -0,0 +1,62 @@ +{ + "type": "filament", + "name": "Generic PETG", + "inherits": "Generic PETG @base", + "from": "system", + "setting_id": "GFSG00_01", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "12" + ], + "filament_long_retractions_when_cut": [ + "1" + ], + "filament_retraction_distances_when_cut": [ + "18" + ], + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_end_gcode": [ + "" + ], + "filament_start_gcode": [ + "" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "20" + ], + "filament_multitool_ramming_volume": [ + "5" + ], + "filament_minimal_purge_on_wipe_tower": [ + "50" + ], + "hot_plate_temp": [ + "80" + ], + "hot_plate_temp_initial_layer": [ + "80" + ], + "pressure_advance": [ + "0.04" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "10" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PLA @base.json b/resources/profiles/Snapmaker/filament/Generic PLA @base.json new file mode 100644 index 0000000000..45a74b92cd --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PLA @base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "name": "Generic PLA @base", + "inherits": "fdm_filament_pla_generic", + "from": "system", + "filament_id": "GFL9922", + "instantiation": "false", + "filament_flow_ratio": [ + "0.98" + ], + "slow_down_layer_time": [ + "8" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S255\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S180\n{endif};Prevent PLA from jamming\n\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PLA High Speed @base.json b/resources/profiles/Snapmaker/filament/Generic PLA High Speed @base.json new file mode 100644 index 0000000000..393bacc09c --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PLA High Speed @base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "name": "Generic PLA High Speed @base", + "inherits": "fdm_filament_pla_generic", + "from": "system", + "filament_id": "GFL95111", + "instantiation": "false", + "filament_flow_ratio": [ + "0.98" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "slow_down_layer_time": [ + "8" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PLA High Speed.json b/resources/profiles/Snapmaker/filament/Generic PLA High Speed.json new file mode 100644 index 0000000000..06597b3b38 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PLA High Speed.json @@ -0,0 +1,41 @@ +{ + "type": "filament", + "name": "Generic PLA High Speed", + "inherits": "Generic PLA High Speed @base", + "from": "system", + "setting_id": "GFSL95_0011", + "instantiation": "true", + "slow_down_layer_time": [ + "4" + ], + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_start_gcode": [ + "" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "" + ], + "filament_minimal_purge_on_wipe_tower": [ + "60" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "25" + ], + "filament_multitool_ramming_volume": [ + "5" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "10" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PLA Silk @base.json b/resources/profiles/Snapmaker/filament/Generic PLA Silk @base.json new file mode 100644 index 0000000000..5fe88be8d8 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PLA Silk @base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "name": "Generic PLA Silk @base", + "inherits": "fdm_filament_pla_generic", + "from": "system", + "filament_id": "GFL96222", + "instantiation": "false", + "filament_flow_ratio": [ + "0.98" + ], + "slow_down_layer_time": [ + "8" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S255\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S180\n{endif};Prevent PLA from jamming\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PLA Silk.json b/resources/profiles/Snapmaker/filament/Generic PLA Silk.json new file mode 100644 index 0000000000..ee7d783fee --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PLA Silk.json @@ -0,0 +1,35 @@ +{ + "type": "filament", + "name": "Generic PLA Silk", + "inherits": "Generic PLA Silk @base", + "from": "system", + "setting_id": "GFSL99_0122", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "7.5" + ], + "filament_retraction_length": [ + "0.5" + ], + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_start_gcode": [ + "" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_volume": [ + "5" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "10" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PLA-CF @base.json b/resources/profiles/Snapmaker/filament/Generic PLA-CF @base.json new file mode 100644 index 0000000000..e72233f43d --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PLA-CF @base.json @@ -0,0 +1,32 @@ +{ + "type": "filament", + "name": "Generic PLA-CF @base", + "inherits": "fdm_filament_pla_generic", + "from": "system", + "filament_id": "GFL98111", + "instantiation": "false", + "additional_cooling_fan_speed": [ + "0" + ], + "cool_plate_temp": [ + "45" + ], + "cool_plate_temp_initial_layer": [ + "45" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_type": [ + "PLA-CF" + ], + "required_nozzle_HRC": [ + "40" + ], + "slow_down_layer_time": [ + "7" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PLA-CF.json b/resources/profiles/Snapmaker/filament/Generic PLA-CF.json new file mode 100644 index 0000000000..bd66387f11 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PLA-CF.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Generic PLA-CF", + "inherits": "Generic PLA-CF @base", + "from": "system", + "setting_id": "GFSL9811", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "" + ], + "filament_minimal_purge_on_wipe_tower": [ + "60" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "20" + ], + "filament_multitool_ramming_volume": [ + "5" + ], + "filament_start_gcode": [ + "" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "10" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PLA.json b/resources/profiles/Snapmaker/filament/Generic PLA.json new file mode 100644 index 0000000000..e05dac1655 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PLA.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Generic PLA", + "inherits": "Generic PLA @base", + "from": "system", + "setting_id": "GFSL991", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_start_gcode": [ + "" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "\n" + ], + "filament_minimal_purge_on_wipe_tower": [ + "60" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "20" + ], + "filament_multitool_ramming_volume": [ + "5" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "10" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PVA @base.json b/resources/profiles/Snapmaker/filament/Generic PVA @base.json new file mode 100644 index 0000000000..21291a8f0f --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PVA @base.json @@ -0,0 +1,20 @@ +{ + "type": "filament", + "name": "Generic PVA @base", + "inherits": "fdm_filament_pva_generic", + "from": "system", + "filament_id": "GFS99", + "instantiation": "false", + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "slow_down_layer_time": [ + "7" + ], + "slow_down_min_speed": [ + "20" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic PVA.json b/resources/profiles/Snapmaker/filament/Generic PVA.json new file mode 100644 index 0000000000..12c6b1ec9b --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic PVA.json @@ -0,0 +1,47 @@ +{ + "type": "filament", + "name": "Generic PVA", + "inherits": "Generic PVA @base", + "from": "system", + "setting_id": "GFSS99", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "; filament end gcode \n\n" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "6" + ], + "filament_multitool_ramming_volume": [ + "0.1" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "3" + ], + "filament_max_volumetric_speed": [ + "6" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "pressure_advance": [ + "0.028" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic Support For PLA @base.json b/resources/profiles/Snapmaker/filament/Generic Support For PLA @base.json new file mode 100644 index 0000000000..bdc25559c4 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic Support For PLA @base.json @@ -0,0 +1,32 @@ +{ + "type": "filament", + "name": "Generic Support For PLA @base", + "inherits": "fdm_filament_pla_generic", + "from": "system", + "filament_id": "GFS00", + "instantiation": "false", + "cool_plate_temp": [ + "40" + ], + "cool_plate_temp_initial_layer": [ + "40" + ], + "filament_cost": [ + "69.98" + ], + "filament_density": [ + "1.30" + ], + "filament_is_support": [ + "1" + ], + "filament_vendor": [ + "Snapmaker" + ], + "slow_down_layer_time": [ + "8" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic Support For PLA.json b/resources/profiles/Snapmaker/filament/Generic Support For PLA.json new file mode 100644 index 0000000000..a7b54c00ba --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic Support For PLA.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "name": "Generic Support For PLA", + "inherits": "Generic Support For PLA @base", + "from": "system", + "setting_id": "GFSS00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "\n\n" + ], + "filament_start_gcode": [ + "" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "15" + ], + "filament_multitool_ramming_volume": [ + "0.1" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "10" + ], + "pressure_advance": [ + "0.03" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Silk @base.json b/resources/profiles/Snapmaker/filament/Generic TPU 95A HF @base.json similarity index 58% rename from resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Silk @base.json rename to resources/profiles/Snapmaker/filament/Generic TPU 95A HF @base.json index 944598b702..68909fe8a4 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Silk @base.json +++ b/resources/profiles/Snapmaker/filament/Generic TPU 95A HF @base.json @@ -1,32 +1,29 @@ { "type": "filament", - "name": "Snapmaker J1 PLA Silk @base", - "inherits": "fdm_filament_pla", + "name": "Generic TPU 95A HF @base", + "inherits": "fdm_filament_tpu_generic", "from": "system", - "filament_id": "1528786603", + "filament_id": "GFU00", "instantiation": "false", - "hot_plate_temp_initial_layer": [ - "65" - ], "filament_cost": [ - "70" + "41.99" ], "filament_density": [ - "1.32" + "1.22" ], "filament_max_volumetric_speed": [ "12" ], "filament_retraction_length": [ - "0.5" + "0.8" ], - "nozzle_temperature_initial_layer": [ - "230" + "filament_vendor": [ + "Snapmaker" ], "nozzle_temperature": [ "230" ], - "default_filament_colour": [ - "" + "nozzle_temperature_initial_layer": [ + "230" ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic TPU 95A HF.json b/resources/profiles/Snapmaker/filament/Generic TPU 95A HF.json new file mode 100644 index 0000000000..b2fa12a511 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic TPU 95A HF.json @@ -0,0 +1,77 @@ +{ + "type": "filament", + "name": "Generic TPU 95A HF", + "inherits": "Generic TPU 95A HF @base", + "from": "system", + "setting_id": "GFSU00_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "additional_cooling_fan_speed": [ + "70" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_end_gcode": [ + "" + ], + "filament_max_volumetric_speed": [ + "10.5" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "10" + ], + "filament_multitool_ramming_volume": [ + "0.1" + ], + "filament_retraction_length": [ + "1.5" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_start_gcode": [ + "" + ], + "pressure_advance": [ + "0.15" + ], + "fan_cooling_layer_time": [ + "40" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "10" + ], + "filament_minimal_purge_on_wipe_tower": [ + "60" + ], + "filament_retract_length_toolchange": [ + "4" + ], + "filament_vendor": [ + "Generic" + ], + "nozzle_temperature": [ + "235" + ], + "nozzle_temperature_initial_layer": [ + "235" + ], + "overhang_fan_threshold": [ + "25%" + ], + "slow_down_layer_time": [ + "10" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Generic TPU.json b/resources/profiles/Snapmaker/filament/Generic TPU.json new file mode 100644 index 0000000000..96ff9eed47 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Generic TPU.json @@ -0,0 +1,51 @@ +{ + "type": "filament", + "name": "Generic TPU", + "inherits": "fdm_filament_tpu_generic", + "from": "system", + "filament_id": "GFU99", + "setting_id": "GFSR99", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3.2" + ], + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_end_gcode": [ + "; filament end gcode \n\n" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_flow": [ + "3.2" + ], + "filament_multitool_ramming_volume": [ + "0.1" + ], + "filament_vendor": [ + "Generic" + ], + "filament_retract_length_toolchange": [ + "2" + ], + "filament_deretraction_speed": [ + "20" + ], + "filament_retraction_length": [ + "1.5" + ], + "filament_retraction_speed": [ + "20" + ], + "pressure_advance": [ + "0.4" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite Dual PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/PolyLite Dual PLA @0.2 nozzle.json deleted file mode 100644 index 6528cd8ca0..0000000000 --- a/resources/profiles/Snapmaker/filament/PolyLite Dual PLA @0.2 nozzle.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "filament", - "name": "PolyLite Dual PLA @0.2 nozzle", - "inherits": "PolyLite PLA @0.2 nozzle", - "from": "system", - "setting_id": "490991920", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite J1 PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/PolyLite J1 PLA @0.2 nozzle.json deleted file mode 100644 index 65a87c28d8..0000000000 --- a/resources/profiles/Snapmaker/filament/PolyLite J1 PLA @0.2 nozzle.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "type": "filament", - "name": "PolyLite J1 PLA @0.2 nozzle", - "inherits": "PolyLite PLA @0.2 nozzle", - "from": "system", - "setting_id": "431382384", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite J1 PLA.json b/resources/profiles/Snapmaker/filament/PolyLite J1 PLA.json deleted file mode 100644 index 0d09c5528a..0000000000 --- a/resources/profiles/Snapmaker/filament/PolyLite J1 PLA.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "PolyLite J1 PLA", - "inherits": "PolyLite PLA @base", - "from": "system", - "setting_id": "116125055", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/PolyLite PLA @0.2 nozzle.json index 69999b740a..b3c643a042 100644 --- a/resources/profiles/Snapmaker/filament/PolyLite PLA @0.2 nozzle.json +++ b/resources/profiles/Snapmaker/filament/PolyLite PLA @0.2 nozzle.json @@ -1,21 +1,21 @@ { - "type": "filament", - "name": "PolyLite PLA @0.2 nozzle", - "inherits": "PolyLite PLA @base", - "from": "system", - "setting_id": "1592803578", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "1.6" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyLite PLA @0.2 nozzle", + "setting_id": "1592803578", + "inherits": "PolyLite PLA @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "1.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite PLA @Dual 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/PolyLite PLA @Dual 0.2 nozzle.json new file mode 100644 index 0000000000..be753e15cd --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyLite PLA @Dual 0.2 nozzle.json @@ -0,0 +1,19 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyLite PLA @Dual 0.2 nozzle", + "setting_id": "490991920", + "inherits": "PolyLite PLA @0.2 nozzle", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker Artisan (0.2 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite PLA @Dual.json b/resources/profiles/Snapmaker/filament/PolyLite PLA @Dual.json new file mode 100644 index 0000000000..6eed0a8a9e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyLite PLA @Dual.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyLite PLA @Dual", + "setting_id": "64868365", + "inherits": "PolyLite PLA @base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite PLA @J1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/PolyLite PLA @J1 0.2 nozzle.json new file mode 100644 index 0000000000..cea9493058 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyLite PLA @J1 0.2 nozzle.json @@ -0,0 +1,11 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyLite PLA @J1 0.2 nozzle", + "setting_id": "431382384", + "inherits": "PolyLite PLA @0.2 nozzle", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite PLA @J1.json b/resources/profiles/Snapmaker/filament/PolyLite PLA @J1.json new file mode 100644 index 0000000000..bb01937a34 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyLite PLA @J1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyLite PLA @J1", + "setting_id": "116125055", + "inherits": "PolyLite PLA @base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite PLA @U1 base.json b/resources/profiles/Snapmaker/filament/PolyLite PLA @U1 base.json index fb9c55cdc7..89f30a6ae0 100644 --- a/resources/profiles/Snapmaker/filament/PolyLite PLA @U1 base.json +++ b/resources/profiles/Snapmaker/filament/PolyLite PLA @U1 base.json @@ -1,20 +1,17 @@ { - "type": "filament", - "name": "PolyLite PLA @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "13938660340", - "instantiation": "false", - "filament_flow_ratio": [ - "0.95" - ], - "filament_cost": [ - "90" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "default_filament_colour": [ - "" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "PolyLite PLA @U1 base", + "filament_id": "13938660340", + "inherits": "fdm_filament_pla", + "filament_flow_ratio": [ + "0.95" + ], + "filament_cost": [ + "90" + ], + "filament_max_volumetric_speed": [ + "15" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite PLA @U1.json b/resources/profiles/Snapmaker/filament/PolyLite PLA @U1.json index 0648fdde39..ad81f2d79d 100644 --- a/resources/profiles/Snapmaker/filament/PolyLite PLA @U1.json +++ b/resources/profiles/Snapmaker/filament/PolyLite PLA @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "PolyLite PLA @U1", - "inherits": "PolyLite PLA @U1 base", - "from": "system", - "setting_id": "6486836500", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyLite PLA @U1", + "setting_id": "6486836500", + "inherits": "PolyLite PLA @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite PLA @base.json b/resources/profiles/Snapmaker/filament/PolyLite PLA @base.json index e4db1c70b6..5758d1c253 100644 --- a/resources/profiles/Snapmaker/filament/PolyLite PLA @base.json +++ b/resources/profiles/Snapmaker/filament/PolyLite PLA @base.json @@ -1,20 +1,17 @@ { - "type": "filament", - "name": "PolyLite PLA @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "1393866034", - "instantiation": "false", - "filament_flow_ratio": [ - "0.95" - ], - "filament_cost": [ - "90" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "default_filament_colour": [ - "" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "PolyLite PLA @base", + "filament_id": "1393866034", + "inherits": "fdm_filament_pla", + "filament_flow_ratio": [ + "0.95" + ], + "filament_cost": [ + "90" + ], + "filament_max_volumetric_speed": [ + "15" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyLite PLA.json b/resources/profiles/Snapmaker/filament/PolyLite PLA.json new file mode 100644 index 0000000000..aa38602aa8 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyLite PLA.json @@ -0,0 +1,34 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyLite PLA", + "setting_id": "599651858", + "inherits": "PolyLite PLA @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra Dual PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/PolyTerra Dual PLA @0.2 nozzle.json deleted file mode 100644 index 9ce3e9f972..0000000000 --- a/resources/profiles/Snapmaker/filament/PolyTerra Dual PLA @0.2 nozzle.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "type": "filament", - "name": "PolyTerra Dual PLA @0.2 nozzle", - "inherits": "PolyTerra PLA @0.2 nozzle", - "from": "system", - "setting_id": "1258531391", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra J1 PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/PolyTerra J1 PLA @0.2 nozzle.json deleted file mode 100644 index a2f99fd132..0000000000 --- a/resources/profiles/Snapmaker/filament/PolyTerra J1 PLA @0.2 nozzle.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "type": "filament", - "name": "PolyTerra J1 PLA @0.2 nozzle", - "inherits": "PolyTerra PLA @0.2 nozzle", - "from": "system", - "setting_id": "1072374370", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra J1 PLA.json b/resources/profiles/Snapmaker/filament/PolyTerra J1 PLA.json deleted file mode 100644 index c696f52735..0000000000 --- a/resources/profiles/Snapmaker/filament/PolyTerra J1 PLA.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "PolyTerra J1 PLA", - "inherits": "PolyTerra PLA @base", - "from": "system", - "setting_id": "3958200796", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra PLA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/PolyTerra PLA @0.2 nozzle.json index f996844ce1..215685b8e3 100644 --- a/resources/profiles/Snapmaker/filament/PolyTerra PLA @0.2 nozzle.json +++ b/resources/profiles/Snapmaker/filament/PolyTerra PLA @0.2 nozzle.json @@ -1,21 +1,21 @@ { - "type": "filament", - "name": "PolyTerra PLA @0.2 nozzle", - "inherits": "PolyTerra PLA @base", - "from": "system", - "setting_id": "409934824", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "1.4" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyTerra PLA @0.2 nozzle", + "setting_id": "409934824", + "inherits": "PolyTerra PLA @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "1.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra PLA @Dual 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/PolyTerra PLA @Dual 0.2 nozzle.json new file mode 100644 index 0000000000..bac7342039 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyTerra PLA @Dual 0.2 nozzle.json @@ -0,0 +1,19 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyTerra PLA @Dual 0.2 nozzle", + "setting_id": "1258531391", + "inherits": "PolyTerra PLA @0.2 nozzle", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker Artisan (0.2 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra PLA @Dual.json b/resources/profiles/Snapmaker/filament/PolyTerra PLA @Dual.json new file mode 100644 index 0000000000..e5910b35c5 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyTerra PLA @Dual.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyTerra PLA @Dual", + "setting_id": "1258005940", + "inherits": "PolyTerra PLA @base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra PLA @J1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/PolyTerra PLA @J1 0.2 nozzle.json new file mode 100644 index 0000000000..5f77696405 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyTerra PLA @J1 0.2 nozzle.json @@ -0,0 +1,11 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyTerra PLA @J1 0.2 nozzle", + "setting_id": "1072374370", + "inherits": "PolyTerra PLA @0.2 nozzle", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra PLA @J1.json b/resources/profiles/Snapmaker/filament/PolyTerra PLA @J1.json new file mode 100644 index 0000000000..fc84a33300 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyTerra PLA @J1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyTerra PLA @J1", + "setting_id": "3958200796", + "inherits": "PolyTerra PLA @base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra PLA @U1 base.json b/resources/profiles/Snapmaker/filament/PolyTerra PLA @U1 base.json index 3b7b9a8b94..b60e333209 100644 --- a/resources/profiles/Snapmaker/filament/PolyTerra PLA @U1 base.json +++ b/resources/profiles/Snapmaker/filament/PolyTerra PLA @U1 base.json @@ -1,20 +1,17 @@ { - "type": "filament", - "name": "PolyTerra PLA @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "37895926870", - "instantiation": "false", - "filament_cost": [ - "80" - ], - "filament_density": [ - "1.31" - ], - "filament_max_volumetric_speed": [ - "14.4" - ], - "default_filament_colour": [ - "" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "PolyTerra PLA @U1 base", + "filament_id": "37895926870", + "inherits": "fdm_filament_pla", + "filament_cost": [ + "80" + ], + "filament_density": [ + "1.31" + ], + "filament_max_volumetric_speed": [ + "14.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra PLA @U1.json b/resources/profiles/Snapmaker/filament/PolyTerra PLA @U1.json index 478c008d7a..f77d1d8082 100644 --- a/resources/profiles/Snapmaker/filament/PolyTerra PLA @U1.json +++ b/resources/profiles/Snapmaker/filament/PolyTerra PLA @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "PolyTerra PLA @U1", - "inherits": "PolyTerra PLA @U1 base", - "from": "system", - "setting_id": "12580059400", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyTerra PLA @U1", + "setting_id": "12580059400", + "inherits": "PolyTerra PLA @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra PLA @base.json b/resources/profiles/Snapmaker/filament/PolyTerra PLA @base.json new file mode 100644 index 0000000000..172c260f9c --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyTerra PLA @base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "PolyTerra PLA @base", + "filament_id": "3789592687", + "inherits": "fdm_filament_pla", + "filament_cost": [ + "80" + ], + "filament_density": [ + "1.31" + ], + "filament_max_volumetric_speed": [ + "14.4" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/PolyTerra PLA.json b/resources/profiles/Snapmaker/filament/PolyTerra PLA.json new file mode 100644 index 0000000000..644b87e1ab --- /dev/null +++ b/resources/profiles/Snapmaker/filament/PolyTerra PLA.json @@ -0,0 +1,34 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "PolyTerra PLA", + "setting_id": "3016316214", + "inherits": "PolyTerra PLA @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @0.2 nozzle.json index 6a51d07ac5..33966f31c7 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ABS @0.2 nozzle.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @0.2 nozzle.json @@ -1,21 +1,21 @@ { - "type": "filament", - "name": "Snapmaker ABS @0.2 nozzle", - "inherits": "Snapmaker ABS @base", - "from": "system", - "setting_id": "363717724", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS @0.2 nozzle", + "setting_id": "363717724", + "inherits": "Snapmaker ABS @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual 0.2 nozzle.json new file mode 100644 index 0000000000..91cc830aba --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual 0.2 nozzle.json @@ -0,0 +1,70 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS @Dual 0.2 nozzle", + "setting_id": "2402717089", + "inherits": "Snapmaker ABS @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker Artisan (0.2 nozzle)" + ], + "filament_end_gcode": [ + "" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "overhang_fan_speed": [ + "80" + ], + "filament_flow_ratio": [ + "0.93" + ], + "filament_max_volumetric_speed": [ + "2" + ], + "filament_loading_speed_start": [ + "3" + ], + "filament_loading_speed": [ + "25" + ], + "filament_unloading_speed_start": [ + "3" + ], + "filament_unloading_speed": [ + "25" + ], + "filament_load_time": [ + "0" + ], + "filament_unload_time": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_cooling_initial_speed": [ + "2.2" + ], + "filament_cooling_final_speed": [ + "3.4" + ], + "fan_max_speed": [ + "80" + ], + "pressure_advance": [ + "0.015" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual 0.8 nozzle.json new file mode 100644 index 0000000000..566a9c5fdc --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual 0.8 nozzle.json @@ -0,0 +1,25 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS @Dual 0.8 nozzle", + "setting_id": "519475561", + "inherits": "Snapmaker ABS @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "slow_down_min_speed": [ + "10" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual base.json new file mode 100644 index 0000000000..8c678c51a8 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual base.json @@ -0,0 +1,59 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker ABS @Dual base", + "filament_id": "168223792", + "inherits": "fdm_filament_abs", + "filament_end_gcode": [ + "" + ], + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "105" + ], + "overhang_fan_speed": [ + "20" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_max_speed": [ + "15" + ], + "pressure_advance": [ + "0.02" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual.json new file mode 100644 index 0000000000..ca07522c40 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @Dual.json @@ -0,0 +1,28 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS @Dual", + "setting_id": "937533070", + "inherits": "Snapmaker ABS @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1 0.2 nozzle.json new file mode 100644 index 0000000000..c2cde550f8 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1 0.2 nozzle.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS @J1 0.2 nozzle", + "setting_id": "418980201", + "inherits": "Snapmaker ABS @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ], + "filament_end_gcode": [ + "" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "overhang_fan_speed": [ + "80" + ], + "filament_flow_ratio": [ + "0.93" + ], + "filament_max_volumetric_speed": [ + "2" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "15" + ], + "pressure_advance": [ + "0.015" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1 0.8 nozzle.json new file mode 100644 index 0000000000..893ce6e1eb --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1 0.8 nozzle.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS @J1 0.8 nozzle", + "setting_id": "2302229921", + "inherits": "Snapmaker ABS @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.8 nozzle)" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "slow_down_min_speed": [ + "10" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1 base.json new file mode 100644 index 0000000000..3caec965a6 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1 base.json @@ -0,0 +1,35 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker ABS @J1 base", + "filament_id": "1223824394", + "inherits": "fdm_filament_abs", + "filament_end_gcode": [ + "" + ], + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "105" + ], + "overhang_fan_speed": [ + "22" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "9.6" + ], + "fan_max_speed": [ + "22" + ], + "fan_min_speed": [ + "22" + ], + "pressure_advance": [ + "0.02" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1.json new file mode 100644 index 0000000000..d95e22af79 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @J1.json @@ -0,0 +1,12 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS @J1", + "setting_id": "3810006449", + "inherits": "Snapmaker ABS @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1 base.json index cce3667736..3e91fe6a81 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1 base.json @@ -1,59 +1,59 @@ { - "type": "filament", - "name": "Snapmaker ABS @U1 base", - "inherits": "fdm_filament_abs", - "from": "system", - "filament_id": "1682237920", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "hot_plate_temp": [ - "110" - ], - "hot_plate_temp_initial_layer": [ - "105" - ], - "overhang_fan_speed": [ - "20" - ], - "filament_flow_ratio": [ - "0.95" - ], - "filament_max_volumetric_speed": [ - "8" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_max_speed": [ - "15" - ], - "pressure_advance": [ - "0.02" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker ABS @U1 base", + "filament_id": "1682237920", + "inherits": "fdm_filament_abs", + "filament_end_gcode": [ + "" + ], + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "105" + ], + "overhang_fan_speed": [ + "20" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_max_speed": [ + "15" + ], + "pressure_advance": [ + "0.02" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1.json index e99ac9018f..8e6cf25849 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker ABS @U1", - "inherits": "Snapmaker ABS @U1 base", - "from": "system", - "setting_id": "937533070", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS @U1", + "setting_id": "937533070", + "inherits": "Snapmaker ABS @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS @base.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS @base.json index 062a3b992e..446aca9041 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ABS @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS @base.json @@ -1,8 +1,8 @@ { - "type": "filament", - "name": "Snapmaker ABS @base", - "inherits": "fdm_filament_abs", - "from": "system", - "filament_id": "3811508002", - "instantiation": "false" + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker ABS @base", + "filament_id": "3811508002", + "inherits": "fdm_filament_abs" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS Benchy @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS Benchy @Dual.json new file mode 100644 index 0000000000..ee8a555c71 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS Benchy @Dual.json @@ -0,0 +1,59 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS Benchy @Dual", + "setting_id": "3540754477", + "inherits": "Snapmaker ABS @Dual base", + "compatible_printers": [ + "Snapmaker Artisan (0.4 nozzle)" + ], + "compatible_prints": [ + "0.25 Benchy @Snapmaker Artisan (0.4 nozzle)" + ], + "overhang_fan_speed": [ + "35" + ], + "slow_down_for_layer_cooling": [ + "0" + ], + "fan_cooling_layer_time": [ + "2" + ], + "filament_deretraction_speed": [ + "55" + ], + "filament_max_volumetric_speed": [ + "31" + ], + "filament_retract_when_changing_layer": [ + "0" + ], + "filament_retraction_length": [ + "0.5" + ], + "filament_z_hop": [ + "0" + ], + "filament_retraction_speed": [ + "55" + ], + "filament_wipe": [ + "0" + ], + "nozzle_temperature": [ + "250" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "35" + ], + "slow_down_min_speed": [ + "0" + ], + "slow_down_layer_time": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS Benchy @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS Benchy @J1.json new file mode 100644 index 0000000000..979af5e9c3 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS Benchy @J1.json @@ -0,0 +1,86 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS Benchy @J1", + "setting_id": "356879727", + "inherits": "Snapmaker ABS @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)" + ], + "compatible_prints": [ + "0.25 Benchy @Snapmaker J1 (0.4 nozzle)" + ], + "overhang_fan_speed": [ + "35" + ], + "slow_down_for_layer_cooling": [ + "0" + ], + "fan_cooling_layer_time": [ + "2" + ], + "filament_deretraction_speed": [ + "55" + ], + "filament_max_volumetric_speed": [ + "31" + ], + "filament_retract_when_changing_layer": [ + "0" + ], + "filament_retraction_length": [ + "0.5" + ], + "filament_z_hop": [ + "0" + ], + "filament_retraction_speed": [ + "55" + ], + "filament_wipe": [ + "0" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature": [ + "250" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "65" + ], + "slow_down_min_speed": [ + "0" + ], + "slow_down_layer_time": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS Benchy @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS Benchy @U1.json index 424fd80a0f..0e791164d7 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ABS Benchy @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS Benchy @U1.json @@ -1,62 +1,59 @@ { - "type": "filament", - "name": "Snapmaker ABS Benchy @U1", - "inherits": "Snapmaker ABS @U1 base", - "from": "system", - "setting_id": "35407544770", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "compatible_prints": [ - "0.25 Benchy @Snapmaker U1 (0.4 nozzle)" - ], - "overhang_fan_speed": [ - "35" - ], - "slow_down_for_layer_cooling": [ - "0" - ], - "fan_cooling_layer_time": [ - "2" - ], - "filament_deretraction_speed": [ - "55" - ], - "filament_max_volumetric_speed": [ - "31" - ], - "filament_retract_when_changing_layer": [ - "0" - ], - "filament_retraction_length": [ - "0.5" - ], - "filament_z_hop": [ - "0" - ], - "filament_retraction_speed": [ - "55" - ], - "filament_wipe": [ - "0" - ], - "nozzle_temperature": [ - "250" - ], - "fan_max_speed": [ - "50" - ], - "fan_min_speed": [ - "35" - ], - "slow_down_min_speed": [ - "0" - ], - "slow_down_layer_time": [ - "0" - ], - "default_filament_colour": [ - "" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS Benchy @U1", + "setting_id": "35407544770", + "inherits": "Snapmaker ABS @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "compatible_prints": [ + "0.25 Benchy @Snapmaker U1 (0.4 nozzle)" + ], + "overhang_fan_speed": [ + "35" + ], + "slow_down_for_layer_cooling": [ + "0" + ], + "fan_cooling_layer_time": [ + "2" + ], + "filament_deretraction_speed": [ + "55" + ], + "filament_max_volumetric_speed": [ + "31" + ], + "filament_retract_when_changing_layer": [ + "0" + ], + "filament_retraction_length": [ + "0.5" + ], + "filament_z_hop": [ + "0" + ], + "filament_retraction_speed": [ + "55" + ], + "filament_wipe": [ + "0" + ], + "nozzle_temperature": [ + "250" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "35" + ], + "slow_down_min_speed": [ + "0" + ], + "slow_down_layer_time": [ + "0" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ABS.json b/resources/profiles/Snapmaker/filament/Snapmaker ABS.json index 78c2e9e232..5afe4a5632 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ABS.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ABS.json @@ -1,34 +1,34 @@ { - "type": "filament", - "name": "Snapmaker ABS", - "inherits": "Snapmaker ABS @base", - "from": "system", - "setting_id": "536148164", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ABS", + "setting_id": "536148164", + "inherits": "Snapmaker ABS @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @0.2 nozzle.json index 19e003e71f..0edcc66bdc 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ASA @0.2 nozzle.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @0.2 nozzle.json @@ -1,21 +1,21 @@ { - "type": "filament", - "name": "Snapmaker ASA @0.2 nozzle", - "inherits": "Snapmaker ASA @base", - "from": "system", - "setting_id": "978004695", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2.4" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ASA @0.2 nozzle", + "setting_id": "978004695", + "inherits": "Snapmaker ASA @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "2.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @Dual 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @Dual 0.2 nozzle.json new file mode 100644 index 0000000000..fb18f2d0da --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @Dual 0.2 nozzle.json @@ -0,0 +1,67 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ASA @Dual 0.2 nozzle", + "setting_id": "2698003242", + "inherits": "Snapmaker ASA @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker Artisan (0.2 nozzle)" + ], + "filament_end_gcode": [ + "" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "overhang_fan_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "2.4" + ], + "filament_loading_speed_start": [ + "3" + ], + "filament_loading_speed": [ + "25" + ], + "filament_unloading_speed_start": [ + "3" + ], + "filament_unloading_speed": [ + "25" + ], + "filament_load_time": [ + "0" + ], + "filament_unload_time": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_cooling_initial_speed": [ + "2.2" + ], + "filament_cooling_final_speed": [ + "3.4" + ], + "fan_max_speed": [ + "35" + ], + "fan_min_speed": [ + "10" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @Dual base.json new file mode 100644 index 0000000000..69de03978b --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @Dual base.json @@ -0,0 +1,56 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker ASA @Dual base", + "filament_id": "1247172706", + "inherits": "fdm_filament_asa", + "filament_end_gcode": [ + "" + ], + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "overhang_fan_speed": [ + "15" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_max_speed": [ + "15" + ], + "fan_min_speed": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @Dual.json new file mode 100644 index 0000000000..d4877c8dfe --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @Dual.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ASA @Dual", + "setting_id": "2541866198", + "inherits": "Snapmaker ASA @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @J1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @J1 0.2 nozzle.json new file mode 100644 index 0000000000..eff83da5ca --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @J1 0.2 nozzle.json @@ -0,0 +1,29 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ASA @J1 0.2 nozzle", + "setting_id": "924839906", + "inherits": "Snapmaker ASA @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "overhang_fan_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "2.4" + ], + "fan_max_speed": [ + "35" + ], + "fan_min_speed": [ + "10" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @J1 base.json new file mode 100644 index 0000000000..b2edc6070e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @J1 base.json @@ -0,0 +1,26 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker ASA @J1 base", + "filament_id": "144877656", + "inherits": "fdm_filament_asa", + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "overhang_fan_speed": [ + "20" + ], + "filament_max_volumetric_speed": [ + "9.6" + ], + "fan_max_speed": [ + "20" + ], + "fan_min_speed": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @J1.json new file mode 100644 index 0000000000..ec7c395b06 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @J1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ASA @J1", + "setting_id": "1131956201", + "inherits": "Snapmaker ASA @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1 base.json index 3458164f7f..273d20a188 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1 base.json @@ -1,56 +1,56 @@ { - "type": "filament", - "name": "Snapmaker ASA @U1 base", - "inherits": "fdm_filament_asa", - "from": "system", - "filament_id": "12471727060", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "hot_plate_temp": [ - "110" - ], - "hot_plate_temp_initial_layer": [ - "100" - ], - "overhang_fan_speed": [ - "15" - ], - "filament_max_volumetric_speed": [ - "8" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_max_speed": [ - "15" - ], - "fan_min_speed": [ - "0" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker ASA @U1 base", + "filament_id": "12471727060", + "inherits": "fdm_filament_asa", + "filament_end_gcode": [ + "" + ], + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "overhang_fan_speed": [ + "15" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_max_speed": [ + "15" + ], + "fan_min_speed": [ + "0" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1.json index 9b03d21d3e..d1f7589054 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker ASA @U1", - "inherits": "Snapmaker ASA @U1 base", - "from": "system", - "setting_id": "25418661980", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ASA @U1", + "setting_id": "25418661980", + "inherits": "Snapmaker ASA @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA @base.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA @base.json index 49da46db3b..d9e39a0879 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ASA @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA @base.json @@ -1,8 +1,8 @@ { - "type": "filament", - "name": "Snapmaker ASA @base", - "inherits": "fdm_filament_asa", - "from": "system", - "filament_id": "2742961008", - "instantiation": "false" + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker ASA @base", + "filament_id": "2742961008", + "inherits": "fdm_filament_asa" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker ASA.json b/resources/profiles/Snapmaker/filament/Snapmaker ASA.json index e6a29e2ea5..762c3f8fe4 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker ASA.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker ASA.json @@ -1,34 +1,34 @@ { - "type": "filament", - "name": "Snapmaker ASA", - "inherits": "Snapmaker ASA @base", - "from": "system", - "setting_id": "3214191260", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker ASA", + "setting_id": "3214191260", + "inherits": "Snapmaker ASA @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support @J1.json new file mode 100644 index 0000000000..d3d9949a6b --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support @J1.json @@ -0,0 +1,19 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker Breakaway Support @J1", + "filament_id": "4227461134", + "inherits": "Snapmaker Breakaway Support @base", + "filament_end_gcode": [ + "" + ], + "slow_down_layer_time": [ + "8" + ], + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support @base.json index dda6b159ad..af7bd88327 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support @base.json @@ -1,9 +1,4 @@ { - "type": "filament", - "name": "Snapmaker Breakaway Support @base", - "inherits": "Snapmaker J1 PVA", - "from": "User", - "instantiation": "false", "filament_cost": [ "100" ], @@ -25,12 +20,17 @@ "filament_type": [ "Breakaway Support" ], + "from": "User", + "instantiation": "false", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "70" ], + "inherits": "Snapmaker PVA @J1", + "is_custom_defined": "0", + "name": "Snapmaker Breakaway Support @base", "nozzle_temperature": [ "220" ], @@ -45,5 +45,6 @@ ], "temperature_vitrification": [ "45" - ] -} \ No newline at end of file + ], + "version": "2.1.1.0" +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1.json index 717e3ab4dd..163bb5c628 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support For PLA @U1.json @@ -1,14 +1,14 @@ { - "type": "filament", - "name": "Snapmaker Breakaway Support For PLA @U1", - "inherits": "Snapmaker Breakaway Support @base", - "from": "system", - "setting_id": "41460000000", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "filament_type": [ - "PLA" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker Breakaway Support For PLA @U1", + "setting_id": "41460000000", + "inherits": "Snapmaker Breakaway Support @base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_type": [ + "PLA" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support.json b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support.json new file mode 100644 index 0000000000..053d64666b --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker Breakaway Support.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker Breakaway Support", + "setting_id": "4146000000", + "inherits": "Snapmaker Breakaway Support @base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS @0.2 nozzle.json deleted file mode 100644 index 971e6cdc15..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS @0.2 nozzle.json +++ /dev/null @@ -1,67 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual ABS @0.2 nozzle", - "inherits": "Snapmaker Dual ABS @base", - "from": "system", - "setting_id": "2402717089", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ], - "hot_plate_temp": [ - "90" - ], - "hot_plate_temp_initial_layer": [ - "90" - ], - "overhang_fan_speed": [ - "80" - ], - "filament_flow_ratio": [ - "0.93" - ], - "filament_max_volumetric_speed": [ - "2" - ], - "filament_loading_speed_start": [ - "3" - ], - "filament_loading_speed": [ - "25" - ], - "filament_unloading_speed_start": [ - "3" - ], - "filament_unloading_speed": [ - "25" - ], - "filament_load_time": [ - "0" - ], - "filament_unload_time": [ - "0" - ], - "filament_cooling_moves": [ - "0" - ], - "filament_cooling_initial_speed": [ - "2.2" - ], - "filament_cooling_final_speed": [ - "3.4" - ], - "fan_max_speed": [ - "80" - ], - "pressure_advance": [ - "0.015" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS @0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS @0.8 nozzle.json deleted file mode 100644 index eb086fef3d..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS @0.8 nozzle.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual ABS @0.8 nozzle", - "inherits": "Snapmaker Dual ABS @base", - "from": "system", - "setting_id": "519475561", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ], - "filament_max_volumetric_speed": [ - "16" - ], - "slow_down_min_speed": [ - "10" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS @base.json deleted file mode 100644 index c1efd4ef28..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS @base.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual ABS @base", - "inherits": "fdm_filament_abs", - "from": "system", - "filament_id": "168223792", - "instantiation": "false", - "hot_plate_temp": [ - "110" - ], - "hot_plate_temp_initial_layer": [ - "105" - ], - "overhang_fan_speed": [ - "20" - ], - "filament_flow_ratio": [ - "0.95" - ], - "filament_max_volumetric_speed": [ - "8" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_max_speed": [ - "15" - ], - "pressure_advance": [ - "0.02" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS Benchy.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS Benchy.json deleted file mode 100644 index 4d8fe16ab4..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS Benchy.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual ABS Benchy", - "inherits": "Snapmaker Dual ABS @base", - "from": "system", - "setting_id": "3540754477", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.4 nozzle)" - ], - "compatible_prints": [ - "0.25 Benchy @Snapmaker Artisan (0.4 nozzle)" - ], - "overhang_fan_speed": [ - "35" - ], - "slow_down_for_layer_cooling": [ - "0" - ], - "fan_cooling_layer_time": [ - "2" - ], - "filament_deretraction_speed": [ - "55" - ], - "filament_max_volumetric_speed": [ - "31" - ], - "filament_retract_when_changing_layer": [ - "0" - ], - "filament_retraction_length": [ - "0.5" - ], - "filament_z_hop": [ - "0" - ], - "filament_retraction_speed": [ - "55" - ], - "filament_wipe": [ - "0" - ], - "nozzle_temperature": [ - "250" - ], - "fan_max_speed": [ - "50" - ], - "fan_min_speed": [ - "35" - ], - "slow_down_min_speed": [ - "0" - ], - "slow_down_layer_time": [ - "0" - ], - "default_filament_colour": [ - "" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS.json deleted file mode 100644 index 46f0c8b47e..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual ABS.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual ABS", - "inherits": "Snapmaker Dual ABS @base", - "from": "system", - "setting_id": "937533070", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual ASA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual ASA @0.2 nozzle.json deleted file mode 100644 index 341cdaf4d3..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual ASA @0.2 nozzle.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual ASA @0.2 nozzle", - "inherits": "Snapmaker Dual ASA @base", - "from": "system", - "setting_id": "2698003242", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ], - "hot_plate_temp": [ - "90" - ], - "hot_plate_temp_initial_layer": [ - "90" - ], - "overhang_fan_speed": [ - "80" - ], - "filament_max_volumetric_speed": [ - "2.4" - ], - "filament_loading_speed_start": [ - "3" - ], - "filament_loading_speed": [ - "25" - ], - "filament_unloading_speed_start": [ - "3" - ], - "filament_unloading_speed": [ - "25" - ], - "filament_load_time": [ - "0" - ], - "filament_unload_time": [ - "0" - ], - "filament_cooling_moves": [ - "0" - ], - "filament_cooling_initial_speed": [ - "2.2" - ], - "filament_cooling_final_speed": [ - "3.4" - ], - "fan_max_speed": [ - "35" - ], - "fan_min_speed": [ - "10" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual ASA @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual ASA @base.json deleted file mode 100644 index 0a423c0429..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual ASA @base.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual ASA @base", - "inherits": "fdm_filament_asa", - "from": "system", - "filament_id": "1247172706", - "instantiation": "false", - "hot_plate_temp": [ - "110" - ], - "hot_plate_temp_initial_layer": [ - "100" - ], - "overhang_fan_speed": [ - "15" - ], - "filament_max_volumetric_speed": [ - "8" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_max_speed": [ - "15" - ], - "fan_min_speed": [ - "0" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual ASA.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual ASA.json deleted file mode 100644 index 5a6f67897e..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual ASA.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual ASA", - "inherits": "Snapmaker Dual ASA @base", - "from": "system", - "setting_id": "2541866198", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual Breakaway @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual Breakaway @0.2 nozzle.json deleted file mode 100644 index 7edc7e6339..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual Breakaway @0.2 nozzle.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual Breakaway @0.2 nozzle", - "inherits": "Snapmaker Dual Breakaway @base", - "from": "system", - "setting_id": "98433967", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "1.4" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual Breakaway @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual Breakaway @base.json deleted file mode 100644 index 47d0a79a93..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual Breakaway @base.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual Breakaway @base", - "inherits": "fdm_filament_breakaway", - "from": "system", - "filament_id": "1207881278", - "instantiation": "false", - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual Breakaway.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual Breakaway.json deleted file mode 100644 index f09dd8e6eb..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual Breakaway.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual Breakaway", - "inherits": "Snapmaker Dual Breakaway @base", - "from": "system", - "setting_id": "1762361484", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PA-CF @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PA-CF @base.json deleted file mode 100644 index 8d23162195..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PA-CF @base.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PA-CF @base", - "inherits": "fdm_filament_pa", - "from": "system", - "filament_id": "3493177425", - "instantiation": "false", - "hot_plate_temp": [ - "100" - ], - "hot_plate_temp_initial_layer": [ - "95" - ], - "overhang_fan_speed": [ - "50" - ], - "filament_flow_ratio": [ - "0.96" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_max_speed": [ - "50" - ], - "fan_min_speed": [ - "15" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PA-CF.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PA-CF.json deleted file mode 100644 index 421646b497..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PA-CF.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PA-CF", - "inherits": "Snapmaker Dual PA-CF @base", - "from": "system", - "setting_id": "2799665789", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PET @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PET @base.json deleted file mode 100644 index 645ffa22e5..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PET @base.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PET @base", - "inherits": "fdm_filament_pet", - "from": "system", - "filament_id": "2128577941", - "instantiation": "false", - "overhang_fan_speed": [ - "40" - ], - "filament_max_volumetric_speed": [ - "6.8" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_max_speed": [ - "50" - ], - "fan_min_speed": [ - "26" - ], - "slow_down_min_speed": [ - "35" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PET.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PET.json deleted file mode 100644 index 37df7c678e..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PET.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PET", - "inherits": "Snapmaker Dual PET @base", - "from": "system", - "setting_id": "4213200045", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG @0.2 nozzle.json deleted file mode 100644 index f9498a73bf..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG @0.2 nozzle.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PETG @0.2 nozzle", - "inherits": "Snapmaker Dual PETG @base", - "from": "system", - "setting_id": "2935726097", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "1.6" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG @0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG @0.8 nozzle.json deleted file mode 100644 index 1c4d456d44..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG @0.8 nozzle.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PETG @0.8 nozzle", - "inherits": "Snapmaker Dual PETG @base", - "from": "system", - "setting_id": "1060879577", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ], - "fan_max_speed": [ - "25" - ], - "fan_min_speed": [ - "10" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG @base.json deleted file mode 100644 index 29de5f83e9..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG @base.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PETG @base", - "inherits": "fdm_filament_petg", - "from": "system", - "filament_id": "2209001062", - "instantiation": "false", - "overhang_fan_speed": [ - "25" - ], - "filament_density": [ - "1.25" - ], - "filament_z_hop_types": [ - "Spiral Lift" - ], - "filament_retraction_speed": [ - "35" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "250" - ], - "temperature_vitrification": [ - "178" - ], - "fan_max_speed": [ - "20" - ], - "fan_min_speed": [ - "0" - ], - "nozzle_temperature_range_low": [ - "240" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG-CF @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG-CF @base.json deleted file mode 100644 index dce0a326df..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG-CF @base.json +++ /dev/null @@ -1,95 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PETG-CF @base", - "inherits": "fdm_filament_petg", - "from": "system", - "filament_id": "1042511226", - "instantiation": "false", - "required_nozzle_HRC": [ - "40" - ], - "overhang_fan_threshold": [ - "10%" - ], - "overhang_fan_speed": [ - "55" - ], - "fan_cooling_layer_time": [ - "10" - ], - "filament_cost": [ - "40" - ], - "filament_density": [ - "1.25" - ], - "filament_max_volumetric_speed": [ - "6.4" - ], - "filament_retraction_minimum_travel": [ - "nil" - ], - "filament_retraction_length": [ - "nil" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "250" - ], - "temperature_vitrification": [ - "178" - ], - "fan_max_speed": [ - "20" - ], - "fan_min_speed": [ - "0" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "6" - ], - "enable_pressure_advance": [ - "0" - ], - "pressure_advance": [ - "0.04" - ], - "filament_type": [ - "PETG-CF" - ], - "default_filament_colour": [ - "" - ], - "nozzle_temperature_range_high": [ - "255" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG-CF.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG-CF.json deleted file mode 100644 index ca5920134f..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG-CF.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PETG-CF", - "inherits": "Snapmaker Dual PETG-CF @base", - "from": "system", - "setting_id": "950459082", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG.json deleted file mode 100644 index 1792f90735..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PETG.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PETG", - "inherits": "Snapmaker Dual PETG @base", - "from": "system", - "setting_id": "2452014271", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA @base.json deleted file mode 100644 index 1bd0be66ca..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA @base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "1417031127", - "instantiation": "false", - "filament_retraction_length": [ - "nil" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature": [ - "220" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco @0.2 nozzle.json deleted file mode 100644 index f0a8513b1f..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco @0.2 nozzle.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Eco @0.2 nozzle", - "inherits": "Snapmaker Dual PLA Eco @base", - "from": "system", - "setting_id": "3529576452", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco @0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco @0.8 nozzle.json deleted file mode 100644 index 0f880f6456..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco @0.8 nozzle.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Eco @0.8 nozzle", - "inherits": "Snapmaker Dual PLA Eco @base", - "from": "system", - "setting_id": "1134628044", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ], - "slow_down_min_speed": [ - "20" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco @base.json deleted file mode 100644 index 51ee49302f..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco @base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Eco @base", - "inherits": "fdm_filament_pla_eco", - "from": "system", - "filament_id": "200803790", - "instantiation": "false", - "filament_density": [ - "1.26" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco.json deleted file mode 100644 index 1416b4460e..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Eco.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Eco", - "inherits": "Snapmaker Dual PLA Eco @base", - "from": "system", - "setting_id": "2158656028", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte @0.2 nozzle.json deleted file mode 100644 index e99a196ae3..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte @0.2 nozzle.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Matte @0.2 nozzle", - "inherits": "Snapmaker Dual PLA Matte @base", - "from": "system", - "setting_id": "2269792171", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte @0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte @0.8 nozzle.json deleted file mode 100644 index 9fbb85e40b..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte @0.8 nozzle.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Matte @0.8 nozzle", - "inherits": "Snapmaker Dual PLA Matte @base", - "from": "system", - "setting_id": "378166115", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ], - "slow_down_min_speed": [ - "20" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte @base.json deleted file mode 100644 index a39265ea19..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte @base.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Matte @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "3503790988", - "instantiation": "false", - "filament_density": [ - "1.32" - ], - "filament_max_volumetric_speed": [ - "9.6" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "215" - ], - "default_filament_colour": [ - "" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte.json deleted file mode 100644 index cc7282d6e3..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Matte.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Matte", - "inherits": "Snapmaker Dual PLA Matte @base", - "from": "system", - "setting_id": "3959402964", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Metal @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Metal @0.2 nozzle.json deleted file mode 100644 index 283ca5605c..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Metal @0.2 nozzle.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Metal @0.2 nozzle", - "inherits": "Snapmaker Dual PLA Metal @base", - "from": "system", - "setting_id": "922702789", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Metal @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Metal @base.json deleted file mode 100644 index 6691807c3f..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Metal @base.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Metal @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "2029994346", - "instantiation": "false", - "filament_cost": [ - "90" - ], - "filament_density": [ - "1.25" - ], - "filament_max_volumetric_speed": [ - "16" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature": [ - "220" - ], - "default_filament_colour": [ - "" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Metal.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Metal.json deleted file mode 100644 index 0f2b2a9e51..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Metal.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Metal", - "inherits": "Snapmaker Dual PLA Metal @base", - "from": "system", - "setting_id": "720664627", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Silk @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Silk @0.2 nozzle.json deleted file mode 100644 index 92c535b022..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Silk @0.2 nozzle.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Silk @0.2 nozzle", - "inherits": "Snapmaker Dual PLA Silk @base", - "from": "system", - "setting_id": "965040007", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Silk @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Silk @base.json deleted file mode 100644 index 4be5ab1082..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Silk @base.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Silk @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "1181363872", - "instantiation": "false", - "hot_plate_temp_initial_layer": [ - "65" - ], - "filament_cost": [ - "70" - ], - "filament_density": [ - "1.32" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_retraction_length": [ - "0.5" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "230" - ], - "nozzle_temperature": [ - "230" - ], - "default_filament_colour": [ - "" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Silk.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Silk.json deleted file mode 100644 index 8e124bdd1b..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA Silk.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA Silk", - "inherits": "Snapmaker Dual PLA Silk @base", - "from": "system", - "setting_id": "1328250686", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA-CF @0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA-CF @0.8 nozzle.json deleted file mode 100644 index 615976a310..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA-CF @0.8 nozzle.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA-CF @0.8 nozzle", - "inherits": "Snapmaker Dual PLA-CF @base", - "from": "system", - "setting_id": "154056642", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ], - "filament_max_volumetric_speed": [ - "12.8" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA-CF @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA-CF @base.json deleted file mode 100644 index 4fae185d71..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA-CF @base.json +++ /dev/null @@ -1,74 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA-CF @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "1702147325", - "instantiation": "false", - "required_nozzle_HRC": [ - "40" - ], - "hot_plate_temp": [ - "55" - ], - "hot_plate_temp_initial_layer": [ - "55" - ], - "filament_density": [ - "1.22" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "230" - ], - "nozzle_temperature": [ - "230" - ], - "temperature_vitrification": [ - "150" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "PLA-CF" - ], - "nozzle_temperature_range_low": [ - "210" - ], - "nozzle_temperature_range_high": [ - "250" - ], - "additional_cooling_fan_speed": [ - "0" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA-CF.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA-CF.json deleted file mode 100644 index 2431346b7d..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA-CF.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA-CF", - "inherits": "Snapmaker Dual PLA-CF @base", - "from": "system", - "setting_id": "3589359438", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA.json deleted file mode 100644 index f13233b2ed..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PLA.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PLA", - "inherits": "Snapmaker Dual PLA @base", - "from": "system", - "setting_id": "1195313935", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.2 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PVA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PVA @0.2 nozzle.json deleted file mode 100644 index ddbd49c494..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PVA @0.2 nozzle.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PVA @0.2 nozzle", - "inherits": "Snapmaker Dual PVA @base", - "from": "system", - "setting_id": "3656018400", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker Artisan (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "1.4" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature": [ - "220" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PVA @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PVA @base.json deleted file mode 100644 index a10f2565e4..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PVA @base.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PVA @base", - "inherits": "fdm_filament_pva", - "from": "system", - "filament_id": "3104636980", - "instantiation": "false", - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "slow_down_layer_time": [ - "8" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual PVA.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual PVA.json deleted file mode 100644 index c390755315..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual PVA.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual PVA", - "inherits": "Snapmaker Dual PVA @base", - "from": "system", - "setting_id": "4145213908", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual TPE.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual TPE.json deleted file mode 100644 index 40828457d0..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual TPE.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual TPE", - "inherits": "Snapmaker Dual TPU @base", - "from": "system", - "setting_id": "2704030359", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ], - "hot_plate_temp": [ - "45" - ], - "overhang_fan_speed": [ - "65" - ], - "filament_flow_ratio": [ - "1.1" - ], - "filament_density": [ - "1.22" - ], - "filament_max_volumetric_speed": [ - "7.2" - ], - "fan_max_speed": [ - "65" - ], - "fan_min_speed": [ - "65" - ], - "default_filament_colour": [ - "" - ], - "filament_notes": [ - "eSUN eLastic TPE-83A\n" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual TPU @base.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual TPU @base.json deleted file mode 100644 index 97db8d7850..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual TPU @base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual TPU @base", - "inherits": "fdm_filament_tpu", - "from": "system", - "filament_id": "2971656290", - "instantiation": "false", - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "240" - ], - "nozzle_temperature": [ - "240" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual TPU High-Flow.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual TPU High-Flow.json deleted file mode 100644 index c1d946809d..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual TPU High-Flow.json +++ /dev/null @@ -1,55 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual TPU High-Flow", - "inherits": "Snapmaker Dual TPU @base", - "from": "system", - "setting_id": "1072918854", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ], - "filament_flow_ratio": [ - "0.983" - ], - "filament_deretraction_speed": [ - "nil" - ], - "filament_max_volumetric_speed": [ - "7.6" - ], - "filament_retraction_length": [ - "0.8" - ], - "filament_retraction_speed": [ - "nil" - ], - "filament_notes": [ - "!! It needs to be dried before use.\nSnapmaker TPU 95A High-Flow\n" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker Dual TPU.json b/resources/profiles/Snapmaker/filament/Snapmaker Dual TPU.json deleted file mode 100644 index 9f62513639..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker Dual TPU.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker Dual TPU", - "inherits": "Snapmaker Dual TPU @base", - "from": "system", - "setting_id": "3164285683", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker Artisan (0.4 nozzle)", - "Snapmaker Artisan (0.6 nozzle)", - "Snapmaker Artisan (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS @0.2 nozzle.json deleted file mode 100644 index 328f48d2e9..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS @0.2 nozzle.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 ABS @0.2 nozzle", - "inherits": "Snapmaker J1 ABS @base", - "from": "system", - "setting_id": "418980201", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "hot_plate_temp": [ - "90" - ], - "hot_plate_temp_initial_layer": [ - "90" - ], - "overhang_fan_speed": [ - "80" - ], - "filament_flow_ratio": [ - "0.93" - ], - "filament_max_volumetric_speed": [ - "2" - ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ - "15" - ], - "pressure_advance": [ - "0.015" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS @0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS @0.8 nozzle.json deleted file mode 100644 index b84389c34c..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS @0.8 nozzle.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 ABS @0.8 nozzle", - "inherits": "Snapmaker J1 ABS @base", - "from": "system", - "setting_id": "2302229921", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.8 nozzle)" - ], - "filament_max_volumetric_speed": [ - "16" - ], - "slow_down_min_speed": [ - "10" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS @base.json deleted file mode 100644 index 9361683a14..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS @base.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 ABS @base", - "inherits": "fdm_filament_abs", - "from": "system", - "filament_id": "1223824394", - "instantiation": "false", - "hot_plate_temp": [ - "110" - ], - "hot_plate_temp_initial_layer": [ - "105" - ], - "overhang_fan_speed": [ - "22" - ], - "filament_flow_ratio": [ - "0.95" - ], - "filament_max_volumetric_speed": [ - "9.6" - ], - "fan_max_speed": [ - "22" - ], - "fan_min_speed": [ - "22" - ], - "pressure_advance": [ - "0.02" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS Benchy.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS Benchy.json deleted file mode 100644 index 99074fd63e..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS Benchy.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 ABS Benchy", - "inherits": "Snapmaker J1 ABS @base", - "from": "system", - "setting_id": "356879727", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)" - ], - "compatible_prints": [ - "0.25 Benchy @Snapmaker J1 (0.4 nozzle)" - ], - "overhang_fan_speed": [ - "35" - ], - "slow_down_for_layer_cooling": [ - "0" - ], - "fan_cooling_layer_time": [ - "2" - ], - "filament_deretraction_speed": [ - "55" - ], - "filament_max_volumetric_speed": [ - "31" - ], - "filament_retract_when_changing_layer": [ - "0" - ], - "filament_retraction_length": [ - "0.5" - ], - "filament_z_hop": [ - "0" - ], - "filament_retraction_speed": [ - "55" - ], - "filament_wipe": [ - "0" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature": [ - "250" - ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ - "65" - ], - "slow_down_min_speed": [ - "0" - ], - "slow_down_layer_time": [ - "0" - ], - "default_filament_colour": [ - "" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS.json deleted file mode 100644 index e0e44afff8..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 ABS.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 ABS", - "inherits": "Snapmaker J1 ABS @base", - "from": "system", - "setting_id": "3810006449", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 ASA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 ASA @0.2 nozzle.json deleted file mode 100644 index 6c0defdbee..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 ASA @0.2 nozzle.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 ASA @0.2 nozzle", - "inherits": "Snapmaker J1 ASA @base", - "from": "system", - "setting_id": "924839906", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "hot_plate_temp": [ - "90" - ], - "hot_plate_temp_initial_layer": [ - "90" - ], - "overhang_fan_speed": [ - "80" - ], - "filament_max_volumetric_speed": [ - "2.4" - ], - "fan_max_speed": [ - "35" - ], - "fan_min_speed": [ - "10" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 ASA @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 ASA @base.json deleted file mode 100644 index 7d3b8a6129..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 ASA @base.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 ASA @base", - "inherits": "fdm_filament_asa", - "from": "system", - "filament_id": "144877656", - "instantiation": "false", - "hot_plate_temp": [ - "110" - ], - "hot_plate_temp_initial_layer": [ - "100" - ], - "overhang_fan_speed": [ - "20" - ], - "filament_max_volumetric_speed": [ - "9.6" - ], - "fan_max_speed": [ - "20" - ], - "fan_min_speed": [ - "0" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 ASA.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 ASA.json deleted file mode 100644 index 9c5c52935d..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 ASA.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 ASA", - "inherits": "Snapmaker J1 ASA @base", - "from": "system", - "setting_id": "1131956201", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 Breakaway @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 Breakaway @0.2 nozzle.json deleted file mode 100644 index c531378648..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 Breakaway @0.2 nozzle.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 Breakaway @0.2 nozzle", - "inherits": "Snapmaker J1 Breakaway @base", - "from": "system", - "setting_id": "2613265860", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "1.4" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 Breakaway @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 Breakaway @base.json deleted file mode 100644 index bccc9fe444..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 Breakaway @base.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 Breakaway @base", - "inherits": "fdm_filament_breakaway", - "from": "system", - "filament_id": "3492897526", - "instantiation": "false" -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 Breakaway.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 Breakaway.json deleted file mode 100644 index 4d072446c8..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 Breakaway.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 Breakaway", - "inherits": "Snapmaker J1 Breakaway @base", - "from": "system", - "setting_id": "738160822", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PA-CF @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PA-CF @base.json deleted file mode 100644 index 7bc66afba4..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PA-CF @base.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PA-CF @base", - "inherits": "fdm_filament_pa", - "from": "system", - "filament_id": "1210173120", - "instantiation": "false", - "overhang_fan_speed": [ - "55" - ], - "filament_flow_ratio": [ - "0.96" - ], - "fan_max_speed": [ - "55" - ], - "fan_min_speed": [ - "29" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PA-CF.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PA-CF.json deleted file mode 100644 index fd6247d3a4..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PA-CF.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PA-CF", - "inherits": "Snapmaker J1 PA-CF @base", - "from": "system", - "setting_id": "2221614608", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PET @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PET @base.json deleted file mode 100644 index 9b4b4af688..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PET @base.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PET @base", - "inherits": "fdm_filament_pet", - "from": "system", - "filament_id": "1009481135", - "instantiation": "false", - "overhang_fan_speed": [ - "40" - ], - "filament_max_volumetric_speed": [ - "6.8" - ], - "fan_max_speed": [ - "50" - ], - "fan_min_speed": [ - "26" - ], - "slow_down_min_speed": [ - "35" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PET.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PET.json deleted file mode 100644 index ce6a2d75ed..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PET.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PET", - "inherits": "Snapmaker J1 PET @base", - "from": "system", - "setting_id": "802807698", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG @0.2 nozzle.json deleted file mode 100644 index 42a02381b1..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG @0.2 nozzle.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PETG @0.2 nozzle", - "inherits": "Snapmaker J1 PETG @base", - "from": "system", - "setting_id": "1003693375", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "1.6" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG @0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG @0.8 nozzle.json deleted file mode 100644 index feffa571d6..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG @0.8 nozzle.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PETG @0.8 nozzle", - "inherits": "Snapmaker J1 PETG @base", - "from": "system", - "setting_id": "2853386743", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.8 nozzle)" - ], - "fan_max_speed": [ - "60" - ], - "fan_min_speed": [ - "20" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG @base.json deleted file mode 100644 index d5966cf3a9..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG @base.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PETG @base", - "inherits": "fdm_filament_petg", - "from": "system", - "filament_id": "1172603684", - "instantiation": "false", - "overhang_fan_speed": [ - "35" - ], - "filament_density": [ - "1.25" - ], - "filament_z_hop_types": [ - "Spiral Lift" - ], - "filament_retraction_speed": [ - "35" - ], - "nozzle_temperature": [ - "255" - ], - "temperature_vitrification": [ - "178" - ], - "fan_max_speed": [ - "30" - ], - "fan_min_speed": [ - "10" - ], - "nozzle_temperature_range_low": [ - "240" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG-CF @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG-CF @base.json deleted file mode 100644 index cf72c1cdaf..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG-CF @base.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PETG-CF @base", - "inherits": "fdm_filament_petg", - "from": "system", - "filament_id": "4235401834", - "instantiation": "false", - "required_nozzle_HRC": [ - "40" - ], - "overhang_fan_threshold": [ - "10%" - ], - "overhang_fan_speed": [ - "55" - ], - "fan_cooling_layer_time": [ - "10" - ], - "filament_cost": [ - "40" - ], - "filament_density": [ - "1.25" - ], - "filament_max_volumetric_speed": [ - "6.4" - ], - "filament_retraction_minimum_travel": [ - "nil" - ], - "filament_retraction_length": [ - "nil" - ], - "nozzle_temperature_initial_layer": [ - "250" - ], - "temperature_vitrification": [ - "178" - ], - "fan_max_speed": [ - "30" - ], - "fan_min_speed": [ - "0" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "6" - ], - "enable_pressure_advance": [ - "0" - ], - "pressure_advance": [ - "0.04" - ], - "filament_type": [ - "PETG-CF" - ], - "default_filament_colour": [ - "" - ], - "nozzle_temperature_range_high": [ - "255" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG-CF.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG-CF.json deleted file mode 100644 index 9818e3f668..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG-CF.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PETG-CF", - "inherits": "Snapmaker J1 PETG-CF @base", - "from": "system", - "setting_id": "961448549", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG.json deleted file mode 100644 index cec6036054..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PETG.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PETG", - "inherits": "Snapmaker J1 PETG @base", - "from": "system", - "setting_id": "613683209", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA @base.json deleted file mode 100644 index 37e7c73c51..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA @base.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "377675245", - "instantiation": "false", - "filament_retraction_length": [ - "nil" - ], - "nozzle_temperature": [ - "220" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco @0.2 nozzle.json deleted file mode 100644 index b919e8d017..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco @0.2 nozzle.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Eco @0.2 nozzle", - "inherits": "Snapmaker J1 PLA Eco @base", - "from": "system", - "setting_id": "2482225039", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco @0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco @0.8 nozzle.json deleted file mode 100644 index 2bd164d57b..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco @0.8 nozzle.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Eco @0.8 nozzle", - "inherits": "Snapmaker J1 PLA Eco @base", - "from": "system", - "setting_id": "36938567", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.8 nozzle)" - ], - "slow_down_min_speed": [ - "20" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco @base.json deleted file mode 100644 index e1240b1288..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco @base.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Eco @base", - "inherits": "fdm_filament_pla_eco", - "from": "system", - "filament_id": "3383257822", - "instantiation": "false", - "filament_density": [ - "1.26" - ], - "filament_max_volumetric_speed": [ - "12" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco.json deleted file mode 100644 index 5fe4469854..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Eco.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Eco", - "inherits": "Snapmaker J1 PLA Eco @base", - "from": "system", - "setting_id": "2168597171", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte @0.2 nozzle.json deleted file mode 100644 index d18162a663..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte @0.2 nozzle.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Matte @0.2 nozzle", - "inherits": "Snapmaker J1 PLA Matte @base", - "from": "system", - "setting_id": "424999360", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte @0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte @0.8 nozzle.json deleted file mode 100644 index f46a68be51..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte @0.8 nozzle.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Matte @0.8 nozzle", - "inherits": "Snapmaker J1 PLA Matte @base", - "from": "system", - "setting_id": "2291459336", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.8 nozzle)" - ], - "slow_down_min_speed": [ - "20" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte @base.json deleted file mode 100644 index 7009d49315..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte @base.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Matte @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "1192769348", - "instantiation": "false", - "filament_density": [ - "1.32" - ], - "filament_max_volumetric_speed": [ - "9.6" - ], - "nozzle_temperature_initial_layer": [ - "215" - ], - "default_filament_colour": [ - "" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte.json deleted file mode 100644 index e94c82461c..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Matte.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Matte", - "inherits": "Snapmaker J1 PLA Matte @base", - "from": "system", - "setting_id": "2836087278", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Metal @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Metal @0.2 nozzle.json deleted file mode 100644 index 8e12b86403..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Metal @0.2 nozzle.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Metal @0.2 nozzle", - "inherits": "Snapmaker J1 PLA Metal @base", - "from": "system", - "setting_id": "2833378734", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Metal @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Metal @base.json deleted file mode 100644 index 143e39d02b..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Metal @base.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Metal @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "4012961186", - "instantiation": "false", - "filament_cost": [ - "90" - ], - "filament_density": [ - "1.25" - ], - "filament_max_volumetric_speed": [ - "16" - ], - "nozzle_temperature": [ - "220" - ], - "default_filament_colour": [ - "" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Metal.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Metal.json deleted file mode 100644 index f8c55e9386..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Metal.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Metal", - "inherits": "Snapmaker J1 PLA Metal @base", - "from": "system", - "setting_id": "1744865289", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Silk @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Silk @0.2 nozzle.json deleted file mode 100644 index 7545dcabff..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Silk @0.2 nozzle.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Silk @0.2 nozzle", - "inherits": "Snapmaker J1 PLA Silk @base", - "from": "system", - "setting_id": "1135517568", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Silk.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Silk.json deleted file mode 100644 index 0938554cec..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA Silk.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA Silk", - "inherits": "Snapmaker J1 PLA Silk @base", - "from": "system", - "setting_id": "155396375", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA-CF @0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA-CF @0.8 nozzle.json deleted file mode 100644 index 7d3fc81d83..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA-CF @0.8 nozzle.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA-CF @0.8 nozzle", - "inherits": "Snapmaker J1 PLA-CF @base", - "from": "system", - "setting_id": "2684050537", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.8 nozzle)" - ], - "filament_max_volumetric_speed": [ - "12.8" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA-CF @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA-CF @base.json deleted file mode 100644 index 9a8978b5e0..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA-CF @base.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA-CF @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "3806593857", - "instantiation": "false", - "required_nozzle_HRC": [ - "40" - ], - "hot_plate_temp": [ - "55" - ], - "hot_plate_temp_initial_layer": [ - "55" - ], - "filament_density": [ - "1.22" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "nozzle_temperature_initial_layer": [ - "230" - ], - "nozzle_temperature": [ - "230" - ], - "temperature_vitrification": [ - "150" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "PLA-CF" - ], - "nozzle_temperature_range_low": [ - "210" - ], - "nozzle_temperature_range_high": [ - "250" - ], - "additional_cooling_fan_speed": [ - "0" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA-CF.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA-CF.json deleted file mode 100644 index 195c1c45e5..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA-CF.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA-CF", - "inherits": "Snapmaker J1 PLA-CF @base", - "from": "system", - "setting_id": "3872452111", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA.json deleted file mode 100644 index 3691ff1d19..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PLA.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PLA", - "inherits": "Snapmaker J1 PLA @base", - "from": "system", - "setting_id": "2479259696", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)", - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PVA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PVA @0.2 nozzle.json deleted file mode 100644 index 5443968c7e..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PVA @0.2 nozzle.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PVA @0.2 nozzle", - "inherits": "Snapmaker J1 PVA @base", - "from": "system", - "setting_id": "1311098152", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "1.2" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature": [ - "220" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PVA @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PVA @base.json deleted file mode 100644 index 7e4f2cb77a..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PVA @base.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PVA @base", - "inherits": "fdm_filament_pva", - "from": "system", - "filament_id": "4227461134", - "instantiation": "false", - "slow_down_layer_time": [ - "8" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 PVA.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 PVA.json deleted file mode 100644 index 5535cd0516..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 PVA.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 PVA", - "inherits": "Snapmaker J1 PVA @base", - "from": "system", - "setting_id": "602634987", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 TPE.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 TPE.json deleted file mode 100644 index c63b40636e..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 TPE.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 TPE", - "inherits": "Snapmaker J1 TPU @base", - "from": "system", - "setting_id": "1976938920", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ], - "hot_plate_temp": [ - "45" - ], - "overhang_fan_speed": [ - "65" - ], - "filament_flow_ratio": [ - "1.1" - ], - "filament_density": [ - "1.22" - ], - "filament_max_volumetric_speed": [ - "7.2" - ], - "fan_max_speed": [ - "65" - ], - "fan_min_speed": [ - "65" - ], - "default_filament_colour": [ - "" - ], - "filament_notes": [ - "eSUN eLastic TPE-83A\n" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 TPU @base.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 TPU @base.json deleted file mode 100644 index a6e4a23044..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 TPU @base.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 TPU @base", - "inherits": "fdm_filament_tpu", - "from": "system", - "filament_id": "4092268632", - "instantiation": "false", - "nozzle_temperature_initial_layer": [ - "240" - ], - "nozzle_temperature": [ - "240" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 TPU High-Flow.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 TPU High-Flow.json deleted file mode 100644 index b2b15a101f..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 TPU High-Flow.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 TPU High-Flow", - "inherits": "Snapmaker J1 TPU @base", - "from": "system", - "setting_id": "4255325782", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ], - "filament_flow_ratio": [ - "0.983" - ], - "filament_deretraction_speed": [ - "nil" - ], - "filament_max_volumetric_speed": [ - "7.6" - ], - "filament_retraction_length": [ - "0.8" - ], - "filament_retraction_speed": [ - "nil" - ], - "filament_notes": [ - "!! It needs to be dried before use.\nSnapmaker TPU 95A High-Flow\n" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker J1 TPU.json b/resources/profiles/Snapmaker/filament/Snapmaker J1 TPU.json deleted file mode 100644 index fa0ab338c6..0000000000 --- a/resources/profiles/Snapmaker/filament/Snapmaker J1 TPU.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "type": "filament", - "name": "Snapmaker J1 TPU", - "inherits": "Snapmaker J1 TPU @base", - "from": "system", - "setting_id": "1751294412", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)", - "Snapmaker J1 (0.6 nozzle)", - "Snapmaker J1 (0.8 nozzle)" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @Dual base.json new file mode 100644 index 0000000000..17ba4d94dd --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @Dual base.json @@ -0,0 +1,56 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PA-CF @Dual base", + "filament_id": "3493177425", + "inherits": "fdm_filament_pa", + "filament_end_gcode": [ + "" + ], + "hot_plate_temp": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "95" + ], + "overhang_fan_speed": [ + "50" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "15" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @Dual.json new file mode 100644 index 0000000000..c035e52663 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @Dual.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PA-CF @Dual", + "setting_id": "2799665789", + "inherits": "Snapmaker PA-CF @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @J1 base.json new file mode 100644 index 0000000000..9fdb229742 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @J1 base.json @@ -0,0 +1,23 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PA-CF @J1 base", + "filament_id": "1210173120", + "inherits": "fdm_filament_pa", + "filament_end_gcode": [ + "" + ], + "overhang_fan_speed": [ + "55" + ], + "filament_flow_ratio": [ + "0.96" + ], + "fan_max_speed": [ + "55" + ], + "fan_min_speed": [ + "29" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @J1.json new file mode 100644 index 0000000000..9d88562ec8 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @J1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PA-CF @J1", + "setting_id": "2221614608", + "inherits": "Snapmaker PA-CF @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @U1 base.json index 7b6b14b703..e870c4bd7d 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @U1 base.json @@ -1,56 +1,56 @@ { - "type": "filament", - "name": "Snapmaker PA-CF @U1 base", - "inherits": "fdm_filament_pa", - "from": "system", - "filament_id": "34931774250", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "hot_plate_temp": [ - "100" - ], - "hot_plate_temp_initial_layer": [ - "95" - ], - "overhang_fan_speed": [ - "50" - ], - "filament_flow_ratio": [ - "0.96" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_max_speed": [ - "50" - ], - "fan_min_speed": [ - "15" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PA-CF @U1 base", + "filament_id": "34931774250", + "inherits": "fdm_filament_pa", + "filament_end_gcode": [ + "" + ], + "hot_plate_temp": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "95" + ], + "overhang_fan_speed": [ + "50" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "15" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @U1.json index efd1314642..80ef97e308 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @U1.json @@ -1,13 +1,13 @@ { - "type": "filament", - "name": "Snapmaker PA-CF @U1", - "inherits": "Snapmaker PA-CF @U1 base", - "from": "system", - "setting_id": "27996657890", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)", - "Snapmaker U1 (0.4 nozzle)", - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PA-CF @U1", + "setting_id": "27996657890", + "inherits": "Snapmaker PA-CF @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)", + "Snapmaker U1 (0.4 nozzle)", + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @base.json index a396cc4e5f..fa98fa8e2c 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF @base.json @@ -1,8 +1,8 @@ { - "type": "filament", - "name": "Snapmaker PA-CF @base", - "inherits": "fdm_filament_pa", - "from": "system", - "filament_id": "581236806", - "instantiation": "false" + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PA-CF @base", + "filament_id": "581236806", + "inherits": "fdm_filament_pa" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF.json b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF.json index 5ebdd32ce4..7f1cf4b346 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PA-CF.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PA-CF.json @@ -1,34 +1,34 @@ { - "type": "filament", - "name": "Snapmaker PA-CF", - "inherits": "Snapmaker PA-CF @base", - "from": "system", - "setting_id": "144230794", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PA-CF", + "setting_id": "144230794", + "inherits": "Snapmaker PA-CF @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual 0.8 nozzle.json new file mode 100644 index 0000000000..5b8f3d7084 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual 0.8 nozzle.json @@ -0,0 +1,11 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PET @Dual 0.8 nozzle", + "setting_id": "145337790", + "inherits": "Snapmaker PET @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual base.json new file mode 100644 index 0000000000..8ab5a5667b --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual base.json @@ -0,0 +1,53 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PET @Dual base", + "filament_id": "2128577941", + "inherits": "fdm_filament_pet", + "filament_end_gcode": [ + "" + ], + "overhang_fan_speed": [ + "40" + ], + "filament_max_volumetric_speed": [ + "6.8" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "26" + ], + "slow_down_min_speed": [ + "35" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual.json index d0b9ea7dae..4a47047ae9 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PET @Dual.json @@ -1,11 +1,37 @@ { - "type": "filament", - "name": "Snapmaker PET @Dual", - "inherits": "Snapmaker Dual PET @base", - "from": "system", - "setting_id": "145337790", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 Dual (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PET @Dual", + "setting_id": "4213200045", + "inherits": "Snapmaker PET @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PET @J1 base.json new file mode 100644 index 0000000000..d907d05869 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PET @J1 base.json @@ -0,0 +1,26 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PET @J1 base", + "filament_id": "1009481135", + "inherits": "fdm_filament_pet", + "filament_end_gcode": [ + "" + ], + "overhang_fan_speed": [ + "40" + ], + "filament_max_volumetric_speed": [ + "6.8" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "26" + ], + "slow_down_min_speed": [ + "35" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PET @J1.json new file mode 100644 index 0000000000..18ed687235 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PET @J1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PET @J1", + "setting_id": "802807698", + "inherits": "Snapmaker PET @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PET @U1 base.json index 118ebc8db7..f2ed67a2bd 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PET @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PET @U1 base.json @@ -1,53 +1,53 @@ { - "type": "filament", - "name": "Snapmaker PET @U1 base", - "inherits": "fdm_filament_pet", - "from": "system", - "filament_id": "21285779410", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "overhang_fan_speed": [ - "40" - ], - "filament_max_volumetric_speed": [ - "6.8" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_max_speed": [ - "50" - ], - "fan_min_speed": [ - "26" - ], - "slow_down_min_speed": [ - "35" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PET @U1 base", + "filament_id": "21285779410", + "inherits": "fdm_filament_pet", + "filament_end_gcode": [ + "" + ], + "overhang_fan_speed": [ + "40" + ], + "filament_max_volumetric_speed": [ + "6.8" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "26" + ], + "slow_down_min_speed": [ + "35" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PET @U1.json index af70402f48..79da9ec77e 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PET @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PET @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker PET @U1", - "inherits": "Snapmaker PET @U1 base", - "from": "system", - "setting_id": "42132000450", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PET @U1", + "setting_id": "42132000450", + "inherits": "Snapmaker PET @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PET @base.json index f99fb892e4..47594a10d7 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PET @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PET @base.json @@ -1,8 +1,8 @@ { - "type": "filament", - "name": "Snapmaker PET @base", - "inherits": "fdm_filament_pet", - "from": "system", - "filament_id": "2549587591", - "instantiation": "false" + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PET @base", + "filament_id": "2549587591", + "inherits": "fdm_filament_pet" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PET.json b/resources/profiles/Snapmaker/filament/Snapmaker PET.json index 593aea0cc8..0357f8ce70 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PET.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PET.json @@ -1,34 +1,34 @@ { - "type": "filament", - "name": "Snapmaker PET", - "inherits": "Snapmaker PET @base", - "from": "system", - "setting_id": "3543479015", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PET", + "setting_id": "3543479015", + "inherits": "Snapmaker PET @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @0.2 nozzle.json index 9007d7b05c..eceef2ca82 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PETG @0.2 nozzle.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @0.2 nozzle.json @@ -1,21 +1,21 @@ { - "type": "filament", - "name": "Snapmaker PETG @0.2 nozzle", - "inherits": "Snapmaker PETG @base", - "from": "system", - "setting_id": "1835906521", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "1.6" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG @0.2 nozzle", + "setting_id": "1835906521", + "inherits": "Snapmaker PETG @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "1.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual 0.2 nozzle.json new file mode 100644 index 0000000000..c4a7f49654 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual 0.2 nozzle.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG @Dual 0.2 nozzle", + "setting_id": "2935726097", + "inherits": "Snapmaker PETG @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker Artisan (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "1.6" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual 0.8 nozzle.json new file mode 100644 index 0000000000..e2c5f35ae0 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual 0.8 nozzle.json @@ -0,0 +1,25 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG @Dual 0.8 nozzle", + "setting_id": "1060879577", + "inherits": "Snapmaker PETG @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ], + "fan_max_speed": [ + "25" + ], + "fan_min_speed": [ + "10" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual base.json new file mode 100644 index 0000000000..0f47d6883d --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PETG @Dual base", + "filament_id": "2209001062", + "inherits": "fdm_filament_petg", + "filament_end_gcode": [ + "" + ], + "overhang_fan_speed": [ + "25" + ], + "filament_density": [ + "1.25" + ], + "filament_z_hop_types": [ + "Spiral Lift" + ], + "filament_retraction_speed": [ + "35" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "temperature_vitrification": [ + "178" + ], + "fan_max_speed": [ + "20" + ], + "fan_min_speed": [ + "0" + ], + "nozzle_temperature_range_low": [ + "240" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual.json new file mode 100644 index 0000000000..9bf5fbb51b --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @Dual.json @@ -0,0 +1,28 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG @Dual", + "setting_id": "2452014271", + "inherits": "Snapmaker PETG @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1 0.2 nozzle.json new file mode 100644 index 0000000000..b9b7a97e98 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1 0.2 nozzle.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG @J1 0.2 nozzle", + "setting_id": "1003693375", + "inherits": "Snapmaker PETG @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "1.6" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1 0.8 nozzle.json new file mode 100644 index 0000000000..6894204397 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1 0.8 nozzle.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG @J1 0.8 nozzle", + "setting_id": "2853386743", + "inherits": "Snapmaker PETG @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.8 nozzle)" + ], + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "20" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1 base.json new file mode 100644 index 0000000000..935626ff52 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1 base.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PETG @J1 base", + "filament_id": "1172603684", + "inherits": "fdm_filament_petg", + "filament_end_gcode": [ + "" + ], + "overhang_fan_speed": [ + "35" + ], + "filament_density": [ + "1.25" + ], + "filament_z_hop_types": [ + "Spiral Lift" + ], + "filament_retraction_speed": [ + "35" + ], + "nozzle_temperature": [ + "255" + ], + "temperature_vitrification": [ + "178" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "10" + ], + "nozzle_temperature_range_low": [ + "240" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1.json new file mode 100644 index 0000000000..be02a92500 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @J1.json @@ -0,0 +1,12 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG @J1", + "setting_id": "613683209", + "inherits": "Snapmaker PETG @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @U1 base.json index c0a9f70ca6..5e88c82c51 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PETG @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @U1 base.json @@ -1,65 +1,65 @@ { - "type": "filament", - "name": "Snapmaker PETG @U1 base", - "inherits": "fdm_filament_petg", - "from": "system", - "filament_id": "22090010620", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "overhang_fan_speed": [ - "25" - ], - "filament_density": [ - "1.25" - ], - "filament_z_hop_types": [ - "Spiral Lift" - ], - "filament_retraction_speed": [ - "35" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "250" - ], - "temperature_vitrification": [ - "178" - ], - "fan_max_speed": [ - "20" - ], - "fan_min_speed": [ - "0" - ], - "nozzle_temperature_range_low": [ - "240" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PETG @U1 base", + "filament_id": "22090010620", + "inherits": "fdm_filament_petg", + "filament_end_gcode": [ + "" + ], + "overhang_fan_speed": [ + "25" + ], + "filament_density": [ + "1.25" + ], + "filament_z_hop_types": [ + "Spiral Lift" + ], + "filament_retraction_speed": [ + "35" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "temperature_vitrification": [ + "178" + ], + "fan_max_speed": [ + "20" + ], + "fan_min_speed": [ + "0" + ], + "nozzle_temperature_range_low": [ + "240" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @U1.json index 38e247ea6b..a45967876d 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PETG @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker PETG @U1", - "inherits": "Snapmaker PETG @U1 base", - "from": "system", - "setting_id": "24520142710", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG @U1", + "setting_id": "24520142710", + "inherits": "Snapmaker PETG @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG @base.json index ce6615e866..e038808bcc 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PETG @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG @base.json @@ -1,8 +1,8 @@ { - "type": "filament", - "name": "Snapmaker PETG @base", - "inherits": "fdm_filament_petg", - "from": "system", - "filament_id": "1895495477", - "instantiation": "false" + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PETG @base", + "filament_id": "1895495477", + "inherits": "fdm_filament_petg" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @Dual base.json new file mode 100644 index 0000000000..a1ec6fe7ce --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @Dual base.json @@ -0,0 +1,92 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PETG-CF @Dual base", + "filament_id": "1042511226", + "inherits": "fdm_filament_petg", + "filament_end_gcode": [ + "" + ], + "required_nozzle_HRC": [ + "40" + ], + "overhang_fan_threshold": [ + "10%" + ], + "overhang_fan_speed": [ + "55" + ], + "fan_cooling_layer_time": [ + "10" + ], + "filament_cost": [ + "40" + ], + "filament_density": [ + "1.25" + ], + "filament_max_volumetric_speed": [ + "6.4" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "temperature_vitrification": [ + "178" + ], + "fan_max_speed": [ + "20" + ], + "fan_min_speed": [ + "0" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "6" + ], + "enable_pressure_advance": [ + "0" + ], + "filament_type": [ + "PETG-CF" + ], + "nozzle_temperature_range_high": [ + "255" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @Dual.json new file mode 100644 index 0000000000..4e6e08a92c --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @Dual.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG-CF @Dual", + "setting_id": "950459082", + "inherits": "Snapmaker PETG-CF @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @J1 base.json new file mode 100644 index 0000000000..4fb443835e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @J1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PETG-CF @J1 base", + "filament_id": "4235401834", + "inherits": "fdm_filament_petg", + "filament_end_gcode": [ + "" + ], + "required_nozzle_HRC": [ + "40" + ], + "overhang_fan_threshold": [ + "10%" + ], + "overhang_fan_speed": [ + "55" + ], + "fan_cooling_layer_time": [ + "10" + ], + "filament_cost": [ + "40" + ], + "filament_density": [ + "1.25" + ], + "filament_max_volumetric_speed": [ + "6.4" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "temperature_vitrification": [ + "178" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "0" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "6" + ], + "enable_pressure_advance": [ + "0" + ], + "filament_type": [ + "PETG-CF" + ], + "nozzle_temperature_range_high": [ + "255" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @J1.json new file mode 100644 index 0000000000..743c04dcab --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @J1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG-CF @J1", + "setting_id": "961448549", + "inherits": "Snapmaker PETG-CF @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @U1 base.json index b3b7a09755..0bd298356a 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @U1 base.json @@ -1,95 +1,92 @@ { - "type": "filament", - "name": "Snapmaker PETG-CF @U1 base", - "inherits": "fdm_filament_petg", - "from": "system", - "filament_id": "10425112260", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "required_nozzle_HRC": [ - "40" - ], - "overhang_fan_threshold": [ - "10%" - ], - "overhang_fan_speed": [ - "55" - ], - "fan_cooling_layer_time": [ - "10" - ], - "filament_cost": [ - "40" - ], - "filament_density": [ - "1.25" - ], - "filament_max_volumetric_speed": [ - "6.4" - ], - "filament_retraction_minimum_travel": [ - "nil" - ], - "filament_retraction_length": [ - "nil" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "250" - ], - "temperature_vitrification": [ - "178" - ], - "fan_max_speed": [ - "20" - ], - "fan_min_speed": [ - "0" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "6" - ], - "enable_pressure_advance": [ - "0" - ], - "filament_type": [ - "PETG-CF" - ], - "default_filament_colour": [ - "" - ], - "nozzle_temperature_range_high": [ - "255" - ] -} \ No newline at end of file + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PETG-CF @U1 base", + "filament_id": "10425112260", + "inherits": "fdm_filament_petg", + "filament_end_gcode": [ + "" + ], + "required_nozzle_HRC": [ + "40" + ], + "overhang_fan_threshold": [ + "10%" + ], + "overhang_fan_speed": [ + "55" + ], + "fan_cooling_layer_time": [ + "10" + ], + "filament_cost": [ + "40" + ], + "filament_density": [ + "1.25" + ], + "filament_max_volumetric_speed": [ + "6.4" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "temperature_vitrification": [ + "178" + ], + "fan_max_speed": [ + "20" + ], + "fan_min_speed": [ + "0" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "6" + ], + "enable_pressure_advance": [ + "0" + ], + "filament_type": [ + "PETG-CF" + ], + "nozzle_temperature_range_high": [ + "255" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @U1.json index 51d6dae795..19ca1db499 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker PETG-CF @U1", - "inherits": "Snapmaker PETG-CF @U1 base", - "from": "system", - "setting_id": "9504590820", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG-CF @U1", + "setting_id": "9504590820", + "inherits": "Snapmaker PETG-CF @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @base.json index 6cba2329e3..17d28515c2 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF @base.json @@ -1,68 +1,62 @@ { - "type": "filament", - "name": "Snapmaker PETG-CF @base", - "inherits": "fdm_filament_petg", - "from": "system", - "filament_id": "1355502217", - "instantiation": "false", - "required_nozzle_HRC": [ - "40" - ], - "overhang_fan_threshold": [ - "10%" - ], - "overhang_fan_speed": [ - "55" - ], - "fan_cooling_layer_time": [ - "10" - ], - "filament_cost": [ - "40" - ], - "filament_density": [ - "1.25" - ], - "filament_max_volumetric_speed": [ - "6.4" - ], - "filament_retraction_minimum_travel": [ - "nil" - ], - "filament_retraction_length": [ - "nil" - ], - "nozzle_temperature_initial_layer": [ - "250" - ], - "temperature_vitrification": [ - "178" - ], - "fan_max_speed": [ - "30" - ], - "fan_min_speed": [ - "0" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "6" - ], - "enable_pressure_advance": [ - "0" - ], - "pressure_advance": [ - "0.04" - ], - "filament_type": [ - "PETG-CF" - ], - "default_filament_colour": [ - "" - ], - "nozzle_temperature_range_high": [ - "255" - ] -} \ No newline at end of file + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PETG-CF @base", + "filament_id": "1355502217", + "inherits": "fdm_filament_petg", + "required_nozzle_HRC": [ + "40" + ], + "overhang_fan_threshold": [ + "10%" + ], + "overhang_fan_speed": [ + "55" + ], + "fan_cooling_layer_time": [ + "10" + ], + "filament_cost": [ + "40" + ], + "filament_density": [ + "1.25" + ], + "filament_max_volumetric_speed": [ + "6.4" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "temperature_vitrification": [ + "178" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "0" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "6" + ], + "enable_pressure_advance": [ + "0" + ], + "filament_type": [ + "PETG-CF" + ], + "nozzle_temperature_range_high": [ + "255" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF.json index 44b47bf3b5..6901560cc3 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG-CF.json @@ -1,34 +1,34 @@ { - "type": "filament", - "name": "Snapmaker PETG-CF", - "inherits": "Snapmaker PETG-CF @base", - "from": "system", - "setting_id": "2186648559", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG-CF", + "setting_id": "2186648559", + "inherits": "Snapmaker PETG-CF @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PETG.json b/resources/profiles/Snapmaker/filament/Snapmaker PETG.json index ccdbf7f965..855640f556 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PETG.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PETG.json @@ -1,34 +1,34 @@ { - "type": "filament", - "name": "Snapmaker PETG", - "inherits": "Snapmaker PETG @base", - "from": "system", - "setting_id": "67598679", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PETG", + "setting_id": "67598679", + "inherits": "Snapmaker PETG @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA @Dual base.json new file mode 100644 index 0000000000..76a9da8b9d --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA @Dual base.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA @Dual base", + "filament_id": "1417031127", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature": [ + "220" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA @Dual.json new file mode 100644 index 0000000000..02a3c08270 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA @Dual.json @@ -0,0 +1,46 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA @Dual", + "setting_id": "1195313935", + "inherits": "Snapmaker PLA @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.2 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA @J1 base.json new file mode 100644 index 0000000000..561ecf4ed3 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA @J1 base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA @J1 base", + "filament_id": "377675245", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "filament_retraction_length": [ + "nil" + ], + "nozzle_temperature": [ + "220" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA @J1.json new file mode 100644 index 0000000000..19d360d949 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA @J1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA @J1", + "setting_id": "2479259696", + "inherits": "Snapmaker PLA @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)", + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA @U1 base.json index 9639668d3d..04947e0840 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA @U1 base.json @@ -1,44 +1,44 @@ { - "type": "filament", - "name": "Snapmaker PLA @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "14170311270", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "filament_retraction_length": [ - "nil" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature": [ - "220" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA @U1 base", + "filament_id": "14170311270", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature": [ + "220" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA @U1.json index 277dad2377..d92a90178e 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA @U1.json @@ -1,17 +1,17 @@ { - "type": "filament", - "name": "Snapmaker PLA @U1", - "inherits": "Snapmaker PLA @U1 base", - "from": "system", - "setting_id": "11953139350", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "hot_plate_temp": [ - "55" - ], - "hot_plate_temp_initial_layer": [ - "55" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA @U1", + "setting_id": "11953139350", + "inherits": "Snapmaker PLA @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "hot_plate_temp":[ + "55" + ], + "hot_plate_temp_initial_layer":[ + "55" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA @base.json index f1a29e6e44..d2de6a6e62 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA @base.json @@ -1,8 +1,8 @@ { - "type": "filament", - "name": "Snapmaker PLA @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "3177068229", - "instantiation": "false" + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA @base", + "filament_id": "3177068229", + "inherits": "fdm_filament_pla" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1 base.json new file mode 100644 index 0000000000..ef7858c17e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1 base.json @@ -0,0 +1,127 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Basic @U1 base", + "filament_id": "1417031127011", + "filament_end_gcode": [ + "" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_cooling_layer_time": [ + "100" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_type": [ + "PLA" + ], + "filament_density": [ + "1.24" + ], + "filament_cost": [ + "20" + ], + "cool_plate_temp" : [ + "60" + ], + "eng_plate_temp" : [ + "60" + ], + "hot_plate_temp" : [ + "60" + ], + "textured_plate_temp" : [ + "60" + ], + "cool_plate_temp_initial_layer" : [ + "60" + ], + "eng_plate_temp_initial_layer" : [ + "60" + ], + "hot_plate_temp_initial_layer" : [ + "60" + ], + "textured_plate_temp_initial_layer" : [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "50%" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "nozzle_temperature": [ + "220" + ], + "temperature_vitrification": [ + "60" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "4" + ], + "additional_cooling_fan_speed": [ + "70" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Lite @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1.json similarity index 95% rename from resources/profiles/Snapmaker/filament/Snapmaker PLA Lite @U1.json rename to resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1.json index c888709123..beda921b91 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Lite @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Basic @U1.json @@ -1,10 +1,10 @@ { "type": "filament", - "name": "Snapmaker PLA Lite @U1", - "inherits": "Snapmaker PLA Lite @U1 base", "from": "system", - "setting_id": "1195313935011", "instantiation": "true", + "name": "Snapmaker PLA Basic @U1", + "setting_id": "1195313935011", + "inherits": "Snapmaker PLA Basic @U1 base", "compatible_printers": [ "Snapmaker U1 (0.4 nozzle)" ], @@ -47,9 +47,6 @@ "cool_plate_temp_initial_layer": [ "60" ], - "default_filament_colour": [ - "" - ], "dont_slow_down_outer_wall": [ "0" ], @@ -129,7 +126,7 @@ "40" ], "filament_multitool_ramming_volume": [ - "10" + "5" ], "filament_notes": [ "" @@ -183,7 +180,7 @@ "29" ], "filament_start_gcode": [ - "SET_PRESSURE_ADVANCE ADVANCE=0.02\n; filament start gcode\n" + "" ], "filament_toolchange_delay": [ "0" @@ -198,7 +195,7 @@ "100" ], "filament_vendor": [ - "Polymaker" + "Snapmaker" ], "filament_wipe": [ "nil" @@ -224,6 +221,7 @@ "idle_temperature": [ "0" ], + "is_custom_defined": "0", "nozzle_temperature": [ "220" ], @@ -276,9 +274,12 @@ "40" ], "textured_plate_temp": [ - "60" + "55" ], "textured_plate_temp_initial_layer": [ - "60" + "55" + ], + "filament_retract_length_toolchange": [ + "10" ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual 0.2 nozzle.json new file mode 100644 index 0000000000..90ce6f7cc5 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual 0.2 nozzle.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Eco @Dual 0.2 nozzle", + "setting_id": "3529576452", + "inherits": "Snapmaker PLA Eco @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker Artisan (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "2" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual 0.8 nozzle.json new file mode 100644 index 0000000000..ae452a5c34 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual 0.8 nozzle.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Eco @Dual 0.8 nozzle", + "setting_id": "1134628044", + "inherits": "Snapmaker PLA Eco @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ], + "slow_down_min_speed": [ + "20" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual base.json new file mode 100644 index 0000000000..f04dc506d6 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual base.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Eco @Dual base", + "filament_id": "200803790", + "inherits": "fdm_filament_pla_eco", + "filament_end_gcode": [ + "" + ], + "filament_density": [ + "1.26" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual.json new file mode 100644 index 0000000000..8ea8be215e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @Dual.json @@ -0,0 +1,28 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Eco @Dual", + "setting_id": "2158656028", + "inherits": "Snapmaker PLA Eco @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1 0.2 nozzle.json new file mode 100644 index 0000000000..d11c6125c7 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1 0.2 nozzle.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Eco @J1 0.2 nozzle", + "setting_id": "2482225039", + "inherits": "Snapmaker PLA Eco @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "2" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1 0.8 nozzle.json new file mode 100644 index 0000000000..b1ce299963 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1 0.8 nozzle.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Eco @J1 0.8 nozzle", + "setting_id": "36938567", + "inherits": "Snapmaker PLA Eco @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.8 nozzle)" + ], + "slow_down_min_speed": [ + "20" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1 base.json new file mode 100644 index 0000000000..998d8ee570 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1 base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Eco @J1 base", + "filament_id": "3383257822", + "inherits": "fdm_filament_pla_eco", + "filament_end_gcode": [ + "" + ], + "filament_density": [ + "1.26" + ], + "filament_max_volumetric_speed": [ + "12" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1.json new file mode 100644 index 0000000000..b3197b5ba4 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @J1.json @@ -0,0 +1,12 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Eco @J1", + "setting_id": "2168597171", + "inherits": "Snapmaker PLA Eco @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @U1 base.json index c690e1c3ed..cb9ee03431 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @U1 base.json @@ -1,44 +1,44 @@ { - "type": "filament", - "name": "Snapmaker PLA Eco @U1 base", - "inherits": "fdm_filament_pla_eco", - "from": "system", - "filament_id": "2008037900", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "filament_density": [ - "1.26" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Eco @U1 base", + "filament_id": "2008037900", + "inherits": "fdm_filament_pla_eco", + "filament_end_gcode": [ + "" + ], + "filament_density": [ + "1.26" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @U1.json index de68e679e9..03c51c7ff6 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker PLA Eco @U1", - "inherits": "Snapmaker PLA Eco @U1 base", - "from": "system", - "setting_id": "21586560280", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Eco @U1", + "setting_id": "21586560280", + "inherits": "Snapmaker PLA Eco @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @base.json index 22d4a13f2d..1913f9c86f 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco @base.json @@ -1,8 +1,8 @@ { - "type": "filament", - "name": "Snapmaker PLA Eco @base", - "inherits": "fdm_filament_pla_eco", - "from": "system", - "filament_id": "1695556157", - "instantiation": "false" + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Eco @base", + "filament_id": "1695556157", + "inherits": "fdm_filament_pla_eco" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco.json index b579921520..ee4863686b 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Eco.json @@ -1,42 +1,42 @@ { - "type": "filament", - "name": "Snapmaker PLA Eco", - "inherits": "Snapmaker PLA Eco @base", - "from": "system", - "setting_id": "978926393", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Eco", + "setting_id": "978926393", + "inherits": "Snapmaker PLA Eco @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @Dual.json new file mode 100644 index 0000000000..6ef98da1c3 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @Dual.json @@ -0,0 +1,55 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Matte @Dual", + "setting_id": "3959402964", + "inherits": "Snapmaker PLA Matte @base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.2 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ], + "filament_flow_ratio": [ + "1.07" + ], + "filament_retraction_length": [ + "1.5" + ], + "pressure_advance": [ + "0.055" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @J1.json new file mode 100644 index 0000000000..35acade870 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @J1.json @@ -0,0 +1,26 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Matte @J1", + "setting_id": "2836087278", + "inherits": "Snapmaker PLA Matte @base", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)", + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ], + "filament_flow_ratio": [ + "1.07" + ], + "filament_retraction_length": [ + "1.5" + ], + "pressure_advance": [ + "0.055" + ], + "slow_down_layer_time": [ + "16" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 base.json index 21fa8eb691..be5b458fab 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1 base.json @@ -1,127 +1,127 @@ { - "type": "filament", - "name": "Snapmaker PLA Matte @U1 base", - "from": "system", - "filament_id": "141703112701", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "filament_retraction_length": [ - "nil" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_cooling_layer_time": [ - "100" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_type": [ - "PLA" - ], - "filament_density": [ - "1.24" - ], - "filament_cost": [ - "20" - ], - "cool_plate_temp": [ - "60" - ], - "eng_plate_temp": [ - "60" - ], - "hot_plate_temp": [ - "60" - ], - "textured_plate_temp": [ - "60" - ], - "cool_plate_temp_initial_layer": [ - "60" - ], - "eng_plate_temp_initial_layer": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "textured_plate_temp_initial_layer": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "overhang_fan_speed": [ - "100" - ], - "overhang_fan_threshold": [ - "50%" - ], - "close_fan_the_first_x_layers": [ - "1" - ], - "nozzle_temperature": [ - "220" - ], - "temperature_vitrification": [ - "60" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "nozzle_temperature_range_high": [ - "230" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "4" - ], - "additional_cooling_fan_speed": [ - "70" - ], - "filament_start_gcode": [ - "; filament start gcode\n" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Matte @U1 base", + "filament_id": "141703112701", + "filament_end_gcode": [ + "" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_cooling_layer_time": [ + "100" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_type": [ + "PLA" + ], + "filament_density": [ + "1.24" + ], + "filament_cost": [ + "20" + ], + "cool_plate_temp" : [ + "60" + ], + "eng_plate_temp" : [ + "60" + ], + "hot_plate_temp" : [ + "60" + ], + "textured_plate_temp" : [ + "60" + ], + "cool_plate_temp_initial_layer" : [ + "60" + ], + "eng_plate_temp_initial_layer" : [ + "60" + ], + "hot_plate_temp_initial_layer" : [ + "60" + ], + "textured_plate_temp_initial_layer" : [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "50%" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "nozzle_temperature": [ + "220" + ], + "temperature_vitrification": [ + "60" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "4" + ], + "additional_cooling_fan_speed": [ + "70" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1.json index fc7abb25c3..08c29149bf 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @U1.json @@ -1,10 +1,10 @@ { "type": "filament", - "name": "Snapmaker PLA Matte @U1", - "inherits": "Snapmaker PLA @U1 base", "from": "system", - "setting_id": "119531393501", "instantiation": "true", + "name": "Snapmaker PLA Matte @U1", + "setting_id": "119531393501", + "inherits": "Snapmaker PLA @U1 base", "compatible_printers": [ "Snapmaker U1 (0.4 nozzle)" ], @@ -47,9 +47,6 @@ "cool_plate_temp_initial_layer": [ "60" ], - "default_filament_colour": [ - "" - ], "dont_slow_down_outer_wall": [ "0" ], @@ -224,6 +221,7 @@ "idle_temperature": [ "0" ], + "is_custom_defined": "0", "nozzle_temperature": [ "220" ], @@ -276,9 +274,12 @@ "40" ], "textured_plate_temp": [ - "60" + "55" ], "textured_plate_temp_initial_layer": [ - "60" + "55" + ], + "filament_retract_length_toolchange": [ + "10" ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @base.json new file mode 100644 index 0000000000..5888f0564a --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte @base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Matte @base", + "filament_id": "37895926871", + "inherits": "fdm_filament_pla", + "filament_cost": [ + "80" + ], + "filament_density": [ + "1.31" + ], + "filament_max_volumetric_speed": [ + "14.4" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte.json new file mode 100644 index 0000000000..7e45be7bb5 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Matte.json @@ -0,0 +1,51 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Matte", + "setting_id": "30163162141", + "inherits": "Snapmaker PLA Matte @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ], + "filament_flow_ratio": [ + "1.08" + ], + "pressure_advance": [ + "0.055" + ], + "slow_down_layer_time": [ + "16" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @Dual 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @Dual 0.2 nozzle.json new file mode 100644 index 0000000000..72455478fb --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @Dual 0.2 nozzle.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Metal @Dual 0.2 nozzle", + "setting_id": "922702789", + "inherits": "Snapmaker PLA Metal @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker Artisan (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "2" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @Dual base.json new file mode 100644 index 0000000000..dfdedfe676 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @Dual base.json @@ -0,0 +1,50 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Metal @Dual base", + "filament_id": "2029994346", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "filament_cost": [ + "90" + ], + "filament_density": [ + "1.25" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature": [ + "220" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @Dual.json new file mode 100644 index 0000000000..62590d3671 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @Dual.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Metal @Dual", + "setting_id": "720664627", + "inherits": "Snapmaker PLA Metal @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @J1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @J1 0.2 nozzle.json new file mode 100644 index 0000000000..21c35018d7 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @J1 0.2 nozzle.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Metal @J1 0.2 nozzle", + "setting_id": "2833378734", + "inherits": "Snapmaker PLA Metal @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "2" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @J1 base.json new file mode 100644 index 0000000000..ba861858e5 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @J1 base.json @@ -0,0 +1,23 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Metal @J1 base", + "filament_id": "4012961186", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "filament_cost": [ + "90" + ], + "filament_density": [ + "1.25" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "nozzle_temperature": [ + "220" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @J1.json new file mode 100644 index 0000000000..42c0d7e9b7 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @J1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Metal @J1", + "setting_id": "1744865289", + "inherits": "Snapmaker PLA Metal @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1 base.json index d300e90f99..5214ccc286 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1 base.json @@ -1,53 +1,50 @@ { - "type": "filament", - "name": "Snapmaker PLA Metal @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "20299943460", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "filament_cost": [ - "90" - ], - "filament_density": [ - "1.25" - ], - "filament_max_volumetric_speed": [ - "16" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature": [ - "220" - ], - "default_filament_colour": [ - "" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Metal @U1 base", + "filament_id": "20299943460", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "filament_cost": [ + "90" + ], + "filament_density": [ + "1.25" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature": [ + "220" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1.json index 44499a8192..fec713c9be 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Metal @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker PLA Metal @U1", - "inherits": "Snapmaker PLA Metal @U1 base", - "from": "system", - "setting_id": "7206646270", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Metal @U1", + "setting_id": "7206646270", + "inherits": "Snapmaker PLA Metal @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @0.2 nozzle.json index b509527077..90f05057b6 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @0.2 nozzle.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @0.2 nozzle.json @@ -1,21 +1,21 @@ { - "type": "filament", - "name": "Snapmaker PLA Silk @0.2 nozzle", - "inherits": "Snapmaker PLA Silk @base", - "from": "system", - "setting_id": "3051834979", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)" - ], - "filament_max_volumetric_speed": [ - "2" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Silk @0.2 nozzle", + "setting_id": "3051834979", + "inherits": "Snapmaker PLA Silk @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @Dual 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @Dual 0.2 nozzle.json new file mode 100644 index 0000000000..31dbd4d13b --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @Dual 0.2 nozzle.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Silk @Dual 0.2 nozzle", + "setting_id": "965040007", + "inherits": "Snapmaker PLA Silk @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker Artisan (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "2" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @Dual base.json new file mode 100644 index 0000000000..f7932ed354 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @Dual base.json @@ -0,0 +1,59 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Silk @Dual base", + "filament_id": "1181363872", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "hot_plate_temp_initial_layer": [ + "65" + ], + "filament_cost": [ + "70" + ], + "filament_density": [ + "1.32" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_retraction_length": [ + "0.5" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature": [ + "230" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @Dual.json new file mode 100644 index 0000000000..cf9dcef4b9 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @Dual.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Silk @Dual", + "setting_id": "1328250686", + "inherits": "Snapmaker PLA Silk @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @J1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @J1 0.2 nozzle.json new file mode 100644 index 0000000000..2360636d5f --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @J1 0.2 nozzle.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Silk @J1 0.2 nozzle", + "setting_id": "1135517568", + "inherits": "Snapmaker PLA Silk @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "2" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @J1 base.json new file mode 100644 index 0000000000..32ebb5c640 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @J1 base.json @@ -0,0 +1,32 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Silk @J1 base", + "filament_id": "1528786603", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "hot_plate_temp_initial_layer": [ + "65" + ], + "filament_cost": [ + "70" + ], + "filament_density": [ + "1.32" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_retraction_length": [ + "0.5" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature": [ + "230" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @J1.json new file mode 100644 index 0000000000..91853e49c9 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @J1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Silk @J1", + "setting_id": "155396375", + "inherits": "Snapmaker PLA Silk @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 base.json index 110a3c6e8a..720b171b36 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1 base.json @@ -1,62 +1,59 @@ { - "type": "filament", - "name": "Snapmaker PLA Silk @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "11813638720", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "hot_plate_temp_initial_layer": [ - "65" - ], - "filament_cost": [ - "70" - ], - "filament_density": [ - "1.32" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_retraction_length": [ - "0.5" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "230" - ], - "nozzle_temperature": [ - "230" - ], - "default_filament_colour": [ - "" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Silk @U1 base", + "filament_id": "11813638720", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "hot_plate_temp_initial_layer": [ + "65" + ], + "filament_cost": [ + "70" + ], + "filament_density": [ + "1.32" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_retraction_length": [ + "0.5" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature": [ + "230" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1.json index b3a6c52432..d67a1f3bad 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker PLA Silk @U1", - "inherits": "Snapmaker PLA Silk @U1 base", - "from": "system", - "setting_id": "13282506860", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Silk @U1", + "setting_id": "13282506860", + "inherits": "Snapmaker PLA Silk @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @base.json index eac9b8a8e7..637f309b63 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk @base.json @@ -1,23 +1,20 @@ { - "type": "filament", - "name": "Snapmaker PLA Silk @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "1655727393", - "instantiation": "false", - "hot_plate_temp_initial_layer": [ - "65" - ], - "filament_cost": [ - "70" - ], - "filament_max_volumetric_speed": [ - "7.5" - ], - "filament_retraction_length": [ - "0.5" - ], - "default_filament_colour": [ - "" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA Silk @base", + "filament_id": "1655727393", + "inherits": "fdm_filament_pla", + "hot_plate_temp_initial_layer": [ + "65" + ], + "filament_cost": [ + "70" + ], + "filament_max_volumetric_speed": [ + "7.5" + ], + "filament_retraction_length": [ + "0.5" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk.json index a2a3b7c7b7..6928499914 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA Silk.json @@ -1,34 +1,34 @@ { - "type": "filament", - "name": "Snapmaker PLA Silk", - "inherits": "Snapmaker PLA Silk @base", - "from": "system", - "setting_id": "76896312", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA Silk", + "setting_id": "76896312", + "inherits": "Snapmaker PLA Silk @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @Dual.json new file mode 100644 index 0000000000..cf0c611884 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @Dual.json @@ -0,0 +1,313 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA SnapSpeed @Dual", + "setting_id": "39594029641", + "inherits": "Snapmaker PLA SnapSpeed @base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.2 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ], + "activate_air_filtration": [ + "0" + ], + "activate_chamber_temp_control": [ + "0" + ], + "adaptive_pressure_advance": [ + "0" + ], + "adaptive_pressure_advance_bridges": [ + "0" + ], + "adaptive_pressure_advance_model": [ + "0,0,0\n0,0,0" + ], + "adaptive_pressure_advance_overhangs": [ + "0" + ], + "additional_cooling_fan_speed": [ + "0" + ], + "chamber_temperature": [ + "0" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "cool_plate_temp": [ + "35" + ], + "cool_plate_temp_initial_layer": [ + "35" + ], + "dont_slow_down_outer_wall": [ + "0" + ], + "during_print_exhaust_fan_speed": [ + "60" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "enable_pressure_advance": [ + "1" + ], + "eng_plate_temp": [ + "45" + ], + "eng_plate_temp_initial_layer": [ + "45" + ], + "fan_cooling_layer_time": [ + "60" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "filament_cooling_final_speed": [ + "3.4" + ], + "filament_cooling_initial_speed": [ + "2.2" + ], + "filament_cooling_moves": [ + "4" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.25" + ], + "filament_deretraction_speed": [ + "60" + ], + "filament_diameter": [ + "1.75" + ], + "filament_end_gcode": [ + " " + ], + "filament_flow_ratio": [ + "0.99" + ], + "filament_is_support": [ + "0" + ], + "filament_loading_speed": [ + "28" + ], + "filament_loading_speed_start": [ + "3" + ], + "filament_long_retractions_when_cut": [ + "nil" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_multitool_ramming": [ + "0" + ], + "filament_multitool_ramming_flow": [ + "10" + ], + "filament_multitool_ramming_volume": [ + "10" + ], + "filament_notes": [ + "" + ], + "filament_ramming_parameters": [ + "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_lift_above": [ + "nil" + ], + "filament_retract_lift_below": [ + "nil" + ], + "filament_retract_lift_enforce": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_distances_when_cut": [ + "nil" + ], + "filament_retraction_length": [ + "1.5" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retraction_speed": [ + "60" + ], + "filament_shrink": [ + "100%" + ], + "filament_shrinkage_compensation_z": [ + "100%" + ], + "filament_soluble": [ + "0" + ], + "filament_stamping_distance": [ + "0" + ], + "filament_stamping_loading_speed": [ + "0" + ], + "filament_start_gcode": [ + " " + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_type": [ + "PLA" + ], + "filament_unloading_speed": [ + "90" + ], + "filament_unloading_speed_start": [ + "100" + ], + "filament_vendor": [ + "Snapmaker" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "filament_z_hop": [ + "0.2" + ], + "filament_z_hop_types": [ + "Normal Lift" + ], + "full_fan_speed_layer": [ + "0" + ], + "hot_plate_temp": [ + "45" + ], + "hot_plate_temp_initial_layer": [ + "45" + ], + "idle_temperature": [ + "0" + ], + "nozzle_temperature": [ + "200" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "240" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "95%" + ], + "pellet_flow_coefficient": [ + "0.4157" + ], + "pressure_advance": [ + "0.04" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "required_nozzle_HRC": [ + "0" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "16" + ], + "slow_down_min_speed": [ + "10" + ], + "support_material_interface_fan_speed": [ + "-1" + ], + "temperature_vitrification": [ + "100" + ], + "textured_cool_plate_temp": [ + "40" + ], + "textured_cool_plate_temp_initial_layer": [ + "40" + ], + "textured_plate_temp": [ + "45" + ], + "textured_plate_temp_initial_layer": [ + "45" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @J1.json new file mode 100644 index 0000000000..ba37d9dd85 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @J1.json @@ -0,0 +1,281 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA SnapSpeed @J1", + "setting_id": "28360872781", + "inherits": "Snapmaker PLA SnapSpeed @base", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)", + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ], + "activate_air_filtration": [ + "0" + ], + "activate_chamber_temp_control": [ + "0" + ], + "adaptive_pressure_advance": [ + "0" + ], + "adaptive_pressure_advance_bridges": [ + "0" + ], + "adaptive_pressure_advance_model": [ + "0,0,0\n0,0,0" + ], + "adaptive_pressure_advance_overhangs": [ + "0" + ], + "additional_cooling_fan_speed": [ + "0" + ], + "chamber_temperature": [ + "0" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "cool_plate_temp": [ + "35" + ], + "cool_plate_temp_initial_layer": [ + "35" + ], + "dont_slow_down_outer_wall": [ + "0" + ], + "during_print_exhaust_fan_speed": [ + "60" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "enable_pressure_advance": [ + "1" + ], + "eng_plate_temp": [ + "45" + ], + "eng_plate_temp_initial_layer": [ + "45" + ], + "fan_cooling_layer_time": [ + "60" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "filament_cooling_final_speed": [ + "3.4" + ], + "filament_cooling_initial_speed": [ + "2.2" + ], + "filament_cooling_moves": [ + "4" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.25" + ], + "filament_deretraction_speed": [ + "60" + ], + "filament_diameter": [ + "1.75" + ], + "filament_end_gcode": [ + " " + ], + "filament_flow_ratio": [ + "0.99" + ], + "filament_is_support": [ + "0" + ], + "filament_loading_speed": [ + "28" + ], + "filament_loading_speed_start": [ + "3" + ], + "filament_long_retractions_when_cut": [ + "nil" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_multitool_ramming": [ + "0" + ], + "filament_multitool_ramming_flow": [ + "10" + ], + "filament_multitool_ramming_volume": [ + "10" + ], + "filament_notes": [ + "" + ], + "filament_ramming_parameters": [ + "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_lift_above": [ + "nil" + ], + "filament_retract_lift_below": [ + "nil" + ], + "filament_retract_lift_enforce": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_distances_when_cut": [ + "nil" + ], + "filament_retraction_length": [ + "1.5" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retraction_speed": [ + "60" + ], + "filament_shrink": [ + "100%" + ], + "filament_shrinkage_compensation_z": [ + "100%" + ], + "filament_soluble": [ + "0" + ], + "filament_stamping_distance": [ + "0" + ], + "filament_stamping_loading_speed": [ + "0" + ], + "filament_start_gcode": [ + " " + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_type": [ + "PLA" + ], + "filament_unloading_speed": [ + "90" + ], + "filament_unloading_speed_start": [ + "100" + ], + "filament_vendor": [ + "Snapmaker" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "filament_z_hop": [ + "0.2" + ], + "filament_z_hop_types": [ + "Normal Lift" + ], + "full_fan_speed_layer": [ + "0" + ], + "hot_plate_temp": [ + "45" + ], + "hot_plate_temp_initial_layer": [ + "45" + ], + "idle_temperature": [ + "0" + ], + "nozzle_temperature": [ + "200" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "240" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "95%" + ], + "pellet_flow_coefficient": [ + "0.4157" + ], + "pressure_advance": [ + "0.04" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "required_nozzle_HRC": [ + "0" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "16" + ], + "slow_down_min_speed": [ + "10" + ], + "support_material_interface_fan_speed": [ + "-1" + ], + "temperature_vitrification": [ + "100" + ], + "textured_cool_plate_temp": [ + "40" + ], + "textured_cool_plate_temp_initial_layer": [ + "40" + ], + "textured_plate_temp": [ + "45" + ], + "textured_plate_temp_initial_layer": [ + "45" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 base.json index 222109bfc8..cd0cd6710b 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1 base.json @@ -1,127 +1,127 @@ { - "type": "filament", - "name": "Snapmaker PLA SnapSpeed @U1 base", - "from": "system", - "filament_id": "141703112701", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "filament_retraction_length": [ - "nil" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_cooling_layer_time": [ - "100" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_type": [ - "PLA" - ], - "filament_density": [ - "1.24" - ], - "filament_cost": [ - "20" - ], - "cool_plate_temp": [ - "60" - ], - "eng_plate_temp": [ - "60" - ], - "hot_plate_temp": [ - "60" - ], - "textured_plate_temp": [ - "60" - ], - "cool_plate_temp_initial_layer": [ - "60" - ], - "eng_plate_temp_initial_layer": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "textured_plate_temp_initial_layer": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "overhang_fan_speed": [ - "100" - ], - "overhang_fan_threshold": [ - "50%" - ], - "close_fan_the_first_x_layers": [ - "1" - ], - "nozzle_temperature": [ - "220" - ], - "temperature_vitrification": [ - "60" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "nozzle_temperature_range_high": [ - "230" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "4" - ], - "additional_cooling_fan_speed": [ - "70" - ], - "filament_start_gcode": [ - "; filament start gcode\n" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA SnapSpeed @U1 base", + "filament_id": "141703112701", + "filament_end_gcode": [ + "" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "fan_cooling_layer_time": [ + "100" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_type": [ + "PLA" + ], + "filament_density": [ + "1.24" + ], + "filament_cost": [ + "20" + ], + "cool_plate_temp" : [ + "60" + ], + "eng_plate_temp" : [ + "60" + ], + "hot_plate_temp" : [ + "60" + ], + "textured_plate_temp" : [ + "60" + ], + "cool_plate_temp_initial_layer" : [ + "60" + ], + "eng_plate_temp_initial_layer" : [ + "60" + ], + "hot_plate_temp_initial_layer" : [ + "60" + ], + "textured_plate_temp_initial_layer" : [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "50%" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "nozzle_temperature": [ + "220" + ], + "temperature_vitrification": [ + "60" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "4" + ], + "additional_cooling_fan_speed": [ + "70" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1.json index 75648b3c1d..355e1c1fa5 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @U1.json @@ -1,10 +1,10 @@ { "type": "filament", - "name": "Snapmaker PLA SnapSpeed @U1", - "inherits": "Snapmaker PLA SnapSpeed @U1 base", "from": "system", - "setting_id": "119531393501", "instantiation": "true", + "name": "Snapmaker PLA SnapSpeed @U1", + "setting_id": "119531393501", + "inherits": "Snapmaker PLA SnapSpeed @U1 base", "compatible_printers": [ "Snapmaker U1 (0.4 nozzle)" ], @@ -47,9 +47,6 @@ "cool_plate_temp_initial_layer": [ "60" ], - "default_filament_colour": [ - "" - ], "dont_slow_down_outer_wall": [ "0" ], @@ -102,7 +99,7 @@ "; filament end gcode \n" ], "filament_flow_ratio": [ - "0.99" + "0.98" ], "filament_is_support": [ "0" @@ -159,7 +156,7 @@ "nil" ], "filament_retraction_length": [ - "0.8" + "1.6" ], "filament_retraction_minimum_travel": [ "nil" @@ -246,7 +243,7 @@ "0.4157" ], "pressure_advance": [ - "0.026" + "0.0181" ], "reduce_fan_stop_start_freq": [ "1" @@ -276,9 +273,12 @@ "40" ], "textured_plate_temp": [ - "60" + "55" ], "textured_plate_temp_initial_layer": [ - "60" + "55" + ], + "filament_retract_length_toolchange": [ + "10" ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @base.json new file mode 100644 index 0000000000..73b74fbce5 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed @base.json @@ -0,0 +1,274 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA SnapSpeed @base", + "filament_id": "16557273931", + "activate_air_filtration": [ + "0" + ], + "activate_chamber_temp_control": [ + "0" + ], + "adaptive_pressure_advance": [ + "0" + ], + "adaptive_pressure_advance_bridges": [ + "0" + ], + "adaptive_pressure_advance_model": [ + "0,0,0\n0,0,0" + ], + "adaptive_pressure_advance_overhangs": [ + "0" + ], + "additional_cooling_fan_speed": [ + "0" + ], + "chamber_temperature": [ + "0" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "cool_plate_temp": [ + "35" + ], + "cool_plate_temp_initial_layer": [ + "35" + ], + "dont_slow_down_outer_wall": [ + "0" + ], + "during_print_exhaust_fan_speed": [ + "60" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "enable_pressure_advance": [ + "1" + ], + "eng_plate_temp": [ + "45" + ], + "eng_plate_temp_initial_layer": [ + "45" + ], + "fan_cooling_layer_time": [ + "60" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "filament_cooling_final_speed": [ + "3.4" + ], + "filament_cooling_initial_speed": [ + "2.2" + ], + "filament_cooling_moves": [ + "4" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.25" + ], + "filament_deretraction_speed": [ + "60" + ], + "filament_diameter": [ + "1.75" + ], + "filament_end_gcode": [ + " " + ], + "filament_flow_ratio": [ + "0.99" + ], + "filament_is_support": [ + "0" + ], + "filament_loading_speed": [ + "28" + ], + "filament_loading_speed_start": [ + "3" + ], + "filament_long_retractions_when_cut": [ + "nil" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_multitool_ramming": [ + "0" + ], + "filament_multitool_ramming_flow": [ + "10" + ], + "filament_multitool_ramming_volume": [ + "10" + ], + "filament_notes": [ + "" + ], + "filament_ramming_parameters": [ + "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_lift_above": [ + "nil" + ], + "filament_retract_lift_below": [ + "nil" + ], + "filament_retract_lift_enforce": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_distances_when_cut": [ + "nil" + ], + "filament_retraction_length": [ + "3" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retraction_speed": [ + "60" + ], + "filament_shrink": [ + "100%" + ], + "filament_shrinkage_compensation_z": [ + "100%" + ], + "filament_soluble": [ + "0" + ], + "filament_stamping_distance": [ + "0" + ], + "filament_stamping_loading_speed": [ + "0" + ], + "filament_start_gcode": [ + " " + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_type": [ + "PLA" + ], + "filament_unloading_speed": [ + "90" + ], + "filament_unloading_speed_start": [ + "100" + ], + "filament_vendor": [ + "Snapmaker" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "filament_z_hop": [ + "0.2" + ], + "filament_z_hop_types": [ + "Normal Lift" + ], + "full_fan_speed_layer": [ + "0" + ], + "hot_plate_temp": [ + "45" + ], + "hot_plate_temp_initial_layer": [ + "45" + ], + "idle_temperature": [ + "0" + ], + "nozzle_temperature": [ + "200" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "240" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "95%" + ], + "pellet_flow_coefficient": [ + "0.4157" + ], + "pressure_advance": [ + "0.04" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "required_nozzle_HRC": [ + "0" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "5" + ], + "slow_down_min_speed": [ + "10" + ], + "support_material_interface_fan_speed": [ + "-1" + ], + "temperature_vitrification": [ + "100" + ], + "textured_cool_plate_temp": [ + "40" + ], + "textured_cool_plate_temp_initial_layer": [ + "40" + ], + "textured_plate_temp": [ + "45" + ], + "textured_plate_temp_initial_layer": [ + "45" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed.json new file mode 100644 index 0000000000..837a47a3f7 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA SnapSpeed.json @@ -0,0 +1,310 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA SnapSpeed", + "setting_id": "301631621411", + "inherits": "Snapmaker PLA SnapSpeed @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ], + "activate_air_filtration": [ + "0" + ], + "activate_chamber_temp_control": [ + "0" + ], + "adaptive_pressure_advance": [ + "0" + ], + "adaptive_pressure_advance_bridges": [ + "0" + ], + "adaptive_pressure_advance_model": [ + "0,0,0\n0,0,0" + ], + "adaptive_pressure_advance_overhangs": [ + "0" + ], + "additional_cooling_fan_speed": [ + "0" + ], + "chamber_temperature": [ + "0" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "cool_plate_temp": [ + "35" + ], + "cool_plate_temp_initial_layer": [ + "35" + ], + "dont_slow_down_outer_wall": [ + "0" + ], + "during_print_exhaust_fan_speed": [ + "60" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "eng_plate_temp": [ + "45" + ], + "eng_plate_temp_initial_layer": [ + "45" + ], + "fan_cooling_layer_time": [ + "60" + ], + "fan_max_speed": [ + "100" + ], + "filament_cooling_final_speed": [ + "3.4" + ], + "filament_cooling_initial_speed": [ + "2.2" + ], + "filament_cooling_moves": [ + "4" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "0" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_diameter": [ + "1.75" + ], + "filament_end_gcode": [ + " " + ], + "filament_is_support": [ + "0" + ], + "filament_loading_speed": [ + "28" + ], + "filament_loading_speed_start": [ + "3" + ], + "filament_long_retractions_when_cut": [ + "nil" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_multitool_ramming": [ + "0" + ], + "filament_multitool_ramming_flow": [ + "10" + ], + "filament_multitool_ramming_volume": [ + "10" + ], + "filament_notes": [ + "" + ], + "filament_ramming_parameters": [ + "120 100 6.6 6.8 7.2 7.6 7.9 8.2 8.7 9.4 9.9 10.0| 0.05 6.6 0.45 6.8 0.95 7.8 1.45 8.3 1.95 9.7 2.45 10 2.95 7.6 3.45 7.6 3.95 7.6 4.45 7.6 4.95 7.6" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_lift_above": [ + "nil" + ], + "filament_retract_lift_below": [ + "nil" + ], + "filament_retract_lift_enforce": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_distances_when_cut": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_shrink": [ + "100%" + ], + "filament_shrinkage_compensation_z": [ + "100%" + ], + "filament_soluble": [ + "0" + ], + "filament_stamping_distance": [ + "0" + ], + "filament_stamping_loading_speed": [ + "0" + ], + "filament_start_gcode": [ + " " + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_type": [ + "PLA" + ], + "filament_unloading_speed": [ + "90" + ], + "filament_unloading_speed_start": [ + "100" + ], + "filament_vendor": [ + "Snapmaker" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "full_fan_speed_layer": [ + "0" + ], + "hot_plate_temp": [ + "45" + ], + "hot_plate_temp_initial_layer": [ + "45" + ], + "idle_temperature": [ + "0" + ], + "nozzle_temperature": [ + "200" + ], + "nozzle_temperature_range_high": [ + "240" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "95%" + ], + "pellet_flow_coefficient": [ + "0.4157" + ], + "required_nozzle_HRC": [ + "0" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "20" + ], + "slow_down_min_speed": [ + "10" + ], + "support_material_interface_fan_speed": [ + "-1" + ], + "temperature_vitrification": [ + "100" + ], + "textured_cool_plate_temp": [ + "40" + ], + "textured_cool_plate_temp_initial_layer": [ + "40" + ], + "textured_plate_temp": [ + "45" + ], + "textured_plate_temp_initial_layer": [ + "45" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "is_custom_defined": "0", + "pressure_advance": [ + "0.045" + ], + "fan_min_speed": [ + "100" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "reduce_fan_stop_start_freq": [ + "1" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @Dual 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @Dual 0.8 nozzle.json new file mode 100644 index 0000000000..040d904e38 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @Dual 0.8 nozzle.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA-CF @Dual 0.8 nozzle", + "setting_id": "154056642", + "inherits": "Snapmaker PLA-CF @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ], + "filament_max_volumetric_speed": [ + "12.8" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @Dual base.json new file mode 100644 index 0000000000..db6f3ac7ad --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @Dual base.json @@ -0,0 +1,74 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA-CF @Dual base", + "filament_id": "1702147325", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "required_nozzle_HRC": [ + "40" + ], + "hot_plate_temp": [ + "55" + ], + "hot_plate_temp_initial_layer": [ + "55" + ], + "filament_density": [ + "1.22" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature": [ + "230" + ], + "temperature_vitrification": [ + "150" + ], + "filament_type": [ + "PLA-CF" + ], + "nozzle_temperature_range_low": [ + "210" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "additional_cooling_fan_speed": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @Dual.json new file mode 100644 index 0000000000..5edcd5e9b3 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @Dual.json @@ -0,0 +1,28 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA-CF @Dual", + "setting_id": "3589359438", + "inherits": "Snapmaker PLA-CF @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @J1 0.8 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @J1 0.8 nozzle.json new file mode 100644 index 0000000000..8adce8513d --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @J1 0.8 nozzle.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA-CF @J1 0.8 nozzle", + "setting_id": "2684050537", + "inherits": "Snapmaker PLA-CF @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.8 nozzle)" + ], + "filament_max_volumetric_speed": [ + "12.8" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @J1 base.json new file mode 100644 index 0000000000..f82b09872a --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @J1 base.json @@ -0,0 +1,47 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA-CF @J1 base", + "filament_id": "3806593857", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "required_nozzle_HRC": [ + "40" + ], + "hot_plate_temp": [ + "55" + ], + "hot_plate_temp_initial_layer": [ + "55" + ], + "filament_density": [ + "1.22" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature": [ + "230" + ], + "temperature_vitrification": [ + "150" + ], + "filament_type": [ + "PLA-CF" + ], + "nozzle_temperature_range_low": [ + "210" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "additional_cooling_fan_speed": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @J1.json new file mode 100644 index 0000000000..f738fa893a --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @J1.json @@ -0,0 +1,12 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA-CF @J1", + "setting_id": "3872452111", + "inherits": "Snapmaker PLA-CF @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 base.json index 8a0755d19c..2e91cd39cd 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1 base.json @@ -1,77 +1,74 @@ { - "type": "filament", - "name": "Snapmaker PLA-CF @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "17021473250", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "required_nozzle_HRC": [ - "40" - ], - "hot_plate_temp": [ - "55" - ], - "hot_plate_temp_initial_layer": [ - "55" - ], - "filament_density": [ - "1.22" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "230" - ], - "nozzle_temperature": [ - "230" - ], - "temperature_vitrification": [ - "150" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "PLA-CF" - ], - "nozzle_temperature_range_low": [ - "210" - ], - "nozzle_temperature_range_high": [ - "250" - ], - "additional_cooling_fan_speed": [ - "0" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA-CF @U1 base", + "filament_id": "17021473250", + "inherits": "fdm_filament_pla", + "filament_end_gcode": [ + "" + ], + "required_nozzle_HRC": [ + "40" + ], + "hot_plate_temp": [ + "55" + ], + "hot_plate_temp_initial_layer": [ + "55" + ], + "filament_density": [ + "1.22" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature": [ + "230" + ], + "temperature_vitrification": [ + "150" + ], + "filament_type": [ + "PLA-CF" + ], + "nozzle_temperature_range_low": [ + "210" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "additional_cooling_fan_speed": [ + "0" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1.json index 5248a6f198..7a870c11cf 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker PLA-CF @U1", - "inherits": "Snapmaker PLA-CF @U1 base", - "from": "system", - "setting_id": "35893594380", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA-CF @U1", + "setting_id": "35893594380", + "inherits": "Snapmaker PLA-CF @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @base.json index 17de1e4e2b..e2f8567028 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF @base.json @@ -1,32 +1,29 @@ { - "type": "filament", - "name": "Snapmaker PLA-CF @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "3864371306", - "instantiation": "false", - "required_nozzle_HRC": [ - "40" - ], - "filament_flow_ratio": [ - "0.95" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "temperature_vitrification": [ - "150" - ], - "slow_down_layer_time": [ - "7" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "PLA-CF" - ], - "additional_cooling_fan_speed": [ - "0" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PLA-CF @base", + "filament_id": "3864371306", + "inherits": "fdm_filament_pla", + "required_nozzle_HRC": [ + "40" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "temperature_vitrification": [ + "150" + ], + "slow_down_layer_time": [ + "7" + ], + "filament_type": [ + "PLA-CF" + ], + "additional_cooling_fan_speed": [ + "0" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF.json index c212856bde..5439435abf 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA-CF.json @@ -1,34 +1,34 @@ { - "type": "filament", - "name": "Snapmaker PLA-CF", - "inherits": "Snapmaker PLA-CF @base", - "from": "system", - "setting_id": "4136003514", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA-CF", + "setting_id": "4136003514", + "inherits": "Snapmaker PLA-CF @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA.json b/resources/profiles/Snapmaker/filament/Snapmaker PLA.json index 0c957784ce..5dd453dfa4 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PLA.json @@ -1,42 +1,42 @@ { - "type": "filament", - "name": "Snapmaker PLA", - "inherits": "Snapmaker PLA @base", - "from": "system", - "setting_id": "1865051461", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PLA", + "setting_id": "1865051461", + "inherits": "Snapmaker PLA @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @0.2 nozzle.json index d9035d970a..18b8430d15 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PVA @0.2 nozzle.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @0.2 nozzle.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker PVA @0.2 nozzle", - "inherits": "Snapmaker PVA @base", - "from": "system", - "setting_id": "1131479069", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PVA @0.2 nozzle", + "setting_id": "1131479069", + "inherits": "Snapmaker PVA @base", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @Dual 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @Dual 0.2 nozzle.json new file mode 100644 index 0000000000..de73eb60a2 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @Dual 0.2 nozzle.json @@ -0,0 +1,28 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PVA @Dual 0.2 nozzle", + "setting_id": "3656018400", + "inherits": "Snapmaker PVA @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker Artisan (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "1.4" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature": [ + "220" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @Dual base.json new file mode 100644 index 0000000000..3fc221889b --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @Dual base.json @@ -0,0 +1,41 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PVA @Dual base", + "filament_id": "3104636980", + "inherits": "fdm_filament_pva", + "filament_end_gcode": [ + "" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "slow_down_layer_time": [ + "8" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @Dual.json new file mode 100644 index 0000000000..64cd535cfa --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @Dual.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PVA @Dual", + "setting_id": "4145213908", + "inherits": "Snapmaker PVA @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @J1 0.2 nozzle.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @J1 0.2 nozzle.json new file mode 100644 index 0000000000..8d6a4fed8e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @J1 0.2 nozzle.json @@ -0,0 +1,20 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PVA @J1 0.2 nozzle", + "setting_id": "1311098152", + "inherits": "Snapmaker PVA @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ], + "filament_max_volumetric_speed": [ + "1.2" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature": [ + "220" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @J1 base.json new file mode 100644 index 0000000000..2031a2d2a8 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @J1 base.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PVA @J1 base", + "filament_id": "4227461134", + "inherits": "fdm_filament_pva", + "filament_end_gcode": [ + "" + ], + "slow_down_layer_time": [ + "8" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @J1.json new file mode 100644 index 0000000000..cce7f74924 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @J1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PVA @J1", + "setting_id": "602634987", + "inherits": "Snapmaker PVA @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1 base.json index 3ca9eacc5d..3b4da2a815 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1 base.json @@ -1,41 +1,41 @@ { - "type": "filament", - "name": "Snapmaker PVA @U1 base", - "inherits": "fdm_filament_pva", - "from": "system", - "filament_id": "31046369800", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "slow_down_layer_time": [ - "8" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PVA @U1 base", + "filament_id": "31046369800", + "inherits": "fdm_filament_pva", + "filament_end_gcode": [ + "" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ], + "slow_down_layer_time": [ + "8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1.json index 4d22ed9b37..e4622e6bfd 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @U1.json @@ -1,11 +1,11 @@ { - "type": "filament", - "name": "Snapmaker PVA @U1", - "inherits": "Snapmaker PVA @U1 base", - "from": "system", - "setting_id": "41452139080", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PVA @U1", + "setting_id": "41452139080", + "inherits": "Snapmaker PVA @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA @base.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA @base.json index d27ecc1101..e17b384590 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PVA @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA @base.json @@ -1,8 +1,8 @@ { - "type": "filament", - "name": "Snapmaker PVA @base", - "inherits": "fdm_filament_pva", - "from": "system", - "filament_id": "1344609062", - "instantiation": "false" + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker PVA @base", + "filament_id": "1344609062", + "inherits": "fdm_filament_pva" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PVA.json b/resources/profiles/Snapmaker/filament/Snapmaker PVA.json index 7c9de6b790..0a44bae8ee 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PVA.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker PVA.json @@ -1,34 +1,34 @@ { - "type": "filament", - "name": "Snapmaker PVA", - "inherits": "Snapmaker PVA @base", - "from": "system", - "setting_id": "3741816734", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker PVA", + "setting_id": "3741816734", + "inherits": "Snapmaker PVA @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPE @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker TPE @Dual.json new file mode 100644 index 0000000000..dfa71e1dbd --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPE @Dual.json @@ -0,0 +1,64 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPE @Dual", + "setting_id": "2704030359", + "inherits": "Snapmaker TPU @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ], + "hot_plate_temp": [ + "45" + ], + "hot_plate_temp_initial_layer": [ + "45" + ], + "overhang_fan_speed": [ + "65" + ], + "filament_flow_ratio": [ + "1.1" + ], + "filament_density": [ + "1.22" + ], + "filament_max_volumetric_speed": [ + "7.2" + ], + "fan_max_speed": [ + "65" + ], + "fan_min_speed": [ + "65" + ], + "filament_notes": [ + "eSUN eLastic TPE-83A\n" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPE @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker TPE @J1.json new file mode 100644 index 0000000000..f01e993137 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPE @J1.json @@ -0,0 +1,40 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPE @J1", + "setting_id": "1976938920", + "inherits": "Snapmaker TPU @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ], + "hot_plate_temp": [ + "45" + ], + "hot_plate_temp_initial_layer": [ + "45" + ], + "overhang_fan_speed": [ + "65" + ], + "filament_flow_ratio": [ + "1.1" + ], + "filament_density": [ + "1.22" + ], + "filament_max_volumetric_speed": [ + "7.2" + ], + "fan_max_speed": [ + "65" + ], + "fan_min_speed": [ + "65" + ], + "filament_notes": [ + "eSUN eLastic TPE-83A\n" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPE @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker TPE @U1.json index 9abe479e7b..841a3583eb 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker TPE @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPE @U1.json @@ -1,41 +1,38 @@ { - "type": "filament", - "name": "Snapmaker TPE @U1", - "inherits": "Snapmaker TPU @U1 base", - "from": "system", - "setting_id": "27040303590", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "hot_plate_temp": [ - "45" - ], - "hot_plate_temp_initial_layer": [ - "45" - ], - "overhang_fan_speed": [ - "65" - ], - "filament_flow_ratio": [ - "1.1" - ], - "filament_density": [ - "1.22" - ], - "filament_max_volumetric_speed": [ - "7.2" - ], - "fan_max_speed": [ - "65" - ], - "fan_min_speed": [ - "65" - ], - "default_filament_colour": [ - "" - ], - "filament_notes": [ - "eSUN eLastic TPE-83A\n" - ] -} \ No newline at end of file + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPE @U1", + "setting_id": "27040303590", + "inherits": "Snapmaker TPU @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "hot_plate_temp": [ + "45" + ], + "hot_plate_temp_initial_layer": [ + "45" + ], + "overhang_fan_speed": [ + "65" + ], + "filament_flow_ratio": [ + "1.1" + ], + "filament_density": [ + "1.22" + ], + "filament_max_volumetric_speed": [ + "7.2" + ], + "fan_max_speed": [ + "65" + ], + "fan_min_speed": [ + "65" + ], + "filament_notes": [ + "eSUN eLastic TPE-83A\n" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPE.json b/resources/profiles/Snapmaker/filament/Snapmaker TPE.json index 71f19675cd..36ab49903b 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker TPE.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPE.json @@ -1,64 +1,58 @@ { - "type": "filament", - "name": "Snapmaker TPE", - "inherits": "Snapmaker TPU @base", - "from": "system", - "setting_id": "2302237917", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ], - "hot_plate_temp": [ - "45" - ], - "overhang_fan_speed": [ - "100" - ], - "filament_density": [ - "1.22" - ], - "filament_max_volumetric_speed": [ - "7.2" - ], - "nozzle_temperature_initial_layer": [ - "240" - ], - "nozzle_temperature": [ - "240" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "default_filament_colour": [ - "" - ], - "filament_notes": [ - "eSUN eLastic TPE-83A\n" - ] -} \ No newline at end of file + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPE", + "setting_id": "2302237917", + "inherits": "Snapmaker TPU @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ], + "hot_plate_temp": [ + "45" + ], + "hot_plate_temp_initial_layer": [ + "45" + ], + "overhang_fan_speed": [ + "100" + ], + "filament_density": [ + "1.22" + ], + "filament_max_volumetric_speed": [ + "7.2" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "filament_notes": [ + "eSUN eLastic TPE-83A\n" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1 base.json index 6b13805889..801c0ba690 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1 base.json @@ -1,9 +1,10 @@ { "type": "filament", - "name": "Snapmaker TPU 95A @U1 base", "from": "system", - "filament_id": "297165629001", "instantiation": "false", + "name": "Snapmaker TPU 95A @U1 base", + "filament_id": "297165629001", + "overhang_fan_threshold": [ "95%" ], @@ -70,28 +71,31 @@ "slow_down_layer_time": [ "8" ], - "cool_plate_temp": [ + + + + "cool_plate_temp" : [ "30" ], - "eng_plate_temp": [ + "eng_plate_temp" : [ "30" ], - "hot_plate_temp": [ + "hot_plate_temp" : [ "35" ], - "textured_plate_temp": [ + "textured_plate_temp" : [ "35" ], - "cool_plate_temp_initial_layer": [ + "cool_plate_temp_initial_layer" : [ "30" ], - "eng_plate_temp_initial_layer": [ + "eng_plate_temp_initial_layer" : [ "30" ], - "hot_plate_temp_initial_layer": [ + "hot_plate_temp_initial_layer" : [ "35" ], - "textured_plate_temp_initial_layer": [ + "textured_plate_temp_initial_layer" : [ "35" ], "fan_cooling_layer_time": [ @@ -151,4 +155,5 @@ "filament_start_gcode": [ "; filament start gcode\n" ] -} \ No newline at end of file + +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1.json index 3b8b1436a3..b27a95b171 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU 95A @U1.json @@ -1,14 +1,16 @@ { - "type": "filament", - "name": "Snapmaker TPU 95A @U1", - "inherits": "Snapmaker TPU 95A @U1 base", - "from": "system", - "setting_id": "316428530", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "activate_air_filtration": [ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPU 95A @U1", + "setting_id": "316428530", + "inherits": "Snapmaker TPU 95A @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + + + "activate_air_filtration": [ "0" ], "activate_chamber_temp_control": [ @@ -277,8 +279,6 @@ ], "textured_plate_temp_initial_layer": [ "35" - ], - "default_filament_colour": [ - "" ] + } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU @Dual base.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU @Dual base.json new file mode 100644 index 0000000000..1ff8af8b45 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU @Dual base.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker TPU @Dual base", + "filament_id": "2971656290", + "inherits": "fdm_filament_tpu", + "filament_end_gcode": [ + "" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU @Dual.json new file mode 100644 index 0000000000..3080aea6a3 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU @Dual.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPU @Dual", + "setting_id": "3164285683", + "inherits": "Snapmaker TPU @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU @J1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU @J1 base.json new file mode 100644 index 0000000000..f1a3b2968e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU @J1 base.json @@ -0,0 +1,11 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker TPU @J1 base", + "filament_id": "4092268632", + "inherits": "fdm_filament_tpu", + "filament_end_gcode": [ + "" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU @J1.json new file mode 100644 index 0000000000..6083f1930a --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU @J1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPU @J1", + "setting_id": "1751294412", + "inherits": "Snapmaker TPU @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU @U1 base.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU @U1 base.json index 650304e15a..97180f569a 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker TPU @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU @U1 base.json @@ -1,38 +1,38 @@ { - "type": "filament", - "name": "Snapmaker TPU @U1 base", - "inherits": "fdm_filament_tpu", - "from": "system", - "filament_id": "29716562900", - "instantiation": "false", - "filament_end_gcode": [ - "" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ] -} \ No newline at end of file + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker TPU @U1 base", + "filament_id": "29716562900", + "inherits": "fdm_filament_tpu", + "filament_end_gcode": [ + "" + ], + "filament_loading_speed_start": [ + "35" + ], + "filament_loading_speed": [ + "35" + ], + "filament_unloading_speed_start": [ + "35" + ], + "filament_unloading_speed": [ + "35" + ], + "filament_load_time": [ + "2" + ], + "filament_unload_time": [ + "2" + ], + "filament_cooling_moves": [ + "2" + ], + "filament_cooling_initial_speed": [ + "35" + ], + "filament_cooling_final_speed": [ + "60" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU @U1.json index afd590118e..1d00d0800d 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker TPU @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU @U1.json @@ -1,13 +1,13 @@ { - "type": "filament", - "name": "Snapmaker TPU @U1", - "inherits": "Snapmaker TPU @U1 base", - "from": "system", - "setting_id": "31642856830", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)", - "Snapmaker U1 (0.6 nozzle)", - "Snapmaker U1 (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPU @U1", + "setting_id": "31642856830", + "inherits": "Snapmaker TPU @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)", + "Snapmaker U1 (0.6 nozzle)", + "Snapmaker U1 (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU @base.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU @base.json index 16dc681b24..31380da4fc 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker TPU @base.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU @base.json @@ -1,8 +1,8 @@ { - "type": "filament", - "name": "Snapmaker TPU @base", - "inherits": "fdm_filament_tpu", - "from": "system", - "filament_id": "1480063856", - "instantiation": "false" + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "Snapmaker TPU @base", + "filament_id": "1480063856", + "inherits": "fdm_filament_tpu" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU High-Flow @Dual.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU High-Flow @Dual.json new file mode 100644 index 0000000000..b1fa522472 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU High-Flow @Dual.json @@ -0,0 +1,55 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPU High-Flow @Dual", + "setting_id": "1072918854", + "inherits": "Snapmaker TPU @Dual base", + "compatible_printers": [ + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker Artisan (0.4 nozzle)", + "Snapmaker Artisan (0.6 nozzle)", + "Snapmaker Artisan (0.8 nozzle)" + ], + "filament_flow_ratio": [ + "0.983" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_max_volumetric_speed": [ + "7.6" + ], + "filament_retraction_length": [ + "0.8" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_notes": [ + "!! It needs to be dried before use.\nSnapmaker TPU 95A High-Flow\n" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU High-Flow @J1.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU High-Flow @J1.json new file mode 100644 index 0000000000..97882062fe --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU High-Flow @J1.json @@ -0,0 +1,31 @@ +{ + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPU High-Flow @J1", + "setting_id": "4255325782", + "inherits": "Snapmaker TPU @J1 base", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)", + "Snapmaker J1 (0.6 nozzle)", + "Snapmaker J1 (0.8 nozzle)" + ], + "filament_flow_ratio": [ + "0.983" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_max_volumetric_speed": [ + "7.6" + ], + "filament_retraction_length": [ + "0.8" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_notes": [ + "!! It needs to be dried before use.\nSnapmaker TPU 95A High-Flow\n" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU High-Flow @U1.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU High-Flow @U1.json index 150b4723f1..bbfd209a0a 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker TPU High-Flow @U1.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU High-Flow @U1.json @@ -1,31 +1,31 @@ { - "type": "filament", - "name": "Snapmaker TPU High-Flow @U1", - "inherits": "Snapmaker TPU @U1 base", - "from": "system", - "setting_id": "10729188540", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)", - "Snapmaker U1 (0.6 nozzle)", - "Snapmaker U1 (0.8 nozzle)" - ], - "filament_flow_ratio": [ - "0.983" - ], - "filament_deretraction_speed": [ - "nil" - ], - "filament_max_volumetric_speed": [ - "7.6" - ], - "filament_retraction_length": [ - "0.8" - ], - "filament_retraction_speed": [ - "nil" - ], - "filament_notes": [ - "!! It needs to be dried before use.\nSnapmaker TPU 95A High-Flow\n" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPU High-Flow @U1", + "setting_id": "10729188540", + "inherits": "Snapmaker TPU @U1 base", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)", + "Snapmaker U1 (0.6 nozzle)", + "Snapmaker U1 (0.8 nozzle)" + ], + "filament_flow_ratio": [ + "0.983" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_max_volumetric_speed": [ + "7.6" + ], + "filament_retraction_length": [ + "0.8" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_notes": [ + "!! It needs to be dried before use.\nSnapmaker TPU 95A High-Flow\n" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Snapmaker TPU.json b/resources/profiles/Snapmaker/filament/Snapmaker TPU.json index 69014354c1..3d203bcd72 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker TPU.json +++ b/resources/profiles/Snapmaker/filament/Snapmaker TPU.json @@ -1,34 +1,34 @@ { - "type": "filament", - "name": "Snapmaker TPU", - "inherits": "Snapmaker TPU @base", - "from": "system", - "setting_id": "2492353721", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)" - ] + "type": "filament", + "from": "system", + "instantiation": "true", + "name": "Snapmaker TPU", + "setting_id": "2492353721", + "inherits": "Snapmaker TPU @base", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_abs.json b/resources/profiles/Snapmaker/filament/fdm_filament_abs.json index c85f6ea95a..594140cc4e 100644 --- a/resources/profiles/Snapmaker/filament/fdm_filament_abs.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_abs.json @@ -1,88 +1,41 @@ { - "type": "filament", - "name": "fdm_filament_abs", - "inherits": "fdm_filament_common", - "from": "system", - "instantiation": "false", - "hot_plate_temp": [ - "90" - ], - "hot_plate_temp_initial_layer": [ - "90" - ], - "overhang_fan_threshold": [ - "25%" - ], - "overhang_fan_speed": [ - "80" - ], - "close_fan_the_first_x_layers": [ - "3" - ], - "filament_flow_ratio": [ - "0.93" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "fan_cooling_layer_time": [ - "30" - ], - "filament_cost": [ - "50" - ], - "filament_density": [ - "1.04" - ], - "filament_max_volumetric_speed": [ - "16" - ], - "filament_retraction_length": [ - "0.6" - ], - "filament_z_hop": [ - "0.7" - ], - "nozzle_temperature_initial_layer": [ - "260" - ], - "nozzle_temperature": [ - "260" - ], - "temperature_vitrification": [ - "189" - ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ - "15" - ], - "slow_down_min_speed": [ - "20" - ], - "slow_down_layer_time": [ - "3" - ], - "enable_pressure_advance": [ - "1" - ], - "pressure_advance": [ - "0.015" - ], - "filament_type": [ - "ABS" - ], - "nozzle_temperature_range_low": [ - "240" - ], - "nozzle_temperature_range_high": [ - "280" - ], - "default_filament_colour": [ - "" - ], - "filament_notes": [ - "eSUN ABS+\nSunlu ABS+\n" - ] -} \ No newline at end of file + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "fdm_filament_abs", + "inherits": "fdm_filament_common", + "filament_cost": ["100"], + "filament_density": ["1.04"], + "filament_max_volumetric_speed": ["16"], + "filament_settings_id": ["Snapmaker_ABS"], + "filament_type": ["ABS"], + "hot_plate_temp": ["80"], + "hot_plate_temp_initial_layer": ["80"], + "is_custom_defined": "0", + + "nozzle_temperature": ["255"], + "nozzle_temperature_initial_layer": ["265"], + "pressure_advance": ["0.03"], + "temperature_vitrification": ["100"], + + "overhang_fan_threshold": ["25%"], + "overhang_fan_speed": ["80"], + "close_fan_the_first_x_layers": ["3"], + "filament_flow_ratio": ["0.93"], + "reduce_fan_stop_start_freq": ["1"], + "fan_cooling_layer_time": ["30"], + + "filament_retraction_length": ["0.6"], + "filament_z_hop": ["0.7"], + + "fan_max_speed": ["80"], + "fan_min_speed": ["15"], + "slow_down_min_speed": ["20"], + "slow_down_layer_time": ["3"], + "enable_pressure_advance": ["1"], + + "nozzle_temperature_range_low": ["240"], + "nozzle_temperature_range_high": ["280"], + + "filament_notes": ["eSUN ABS+\nSunlu ABS+\n"] +} diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_abs_generic.json b/resources/profiles/Snapmaker/filament/fdm_filament_abs_generic.json new file mode 100644 index 0000000000..d3347578fd --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_abs_generic.json @@ -0,0 +1,82 @@ +{ + "type": "filament", + "name": "fdm_filament_abs_generic", + "inherits": "fdm_filament_common_generic", + "from": "system", + "instantiation": "false", + "activate_air_filtration": [ + "0" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "90" + ], + "eng_plate_temp_initial_layer": [ + "90" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "10" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.04" + ], + "filament_max_volumetric_speed": [ + "28.6" + ], + "filament_type": [ + "ABS" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "80" + ], + "overhang_fan_threshold": [ + "25%" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_layer_time": [ + "3" + ], + "slow_down_min_speed": [ + "20" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_asa.json b/resources/profiles/Snapmaker/filament/fdm_filament_asa.json index 171940ac5f..07a3b7fd05 100644 --- a/resources/profiles/Snapmaker/filament/fdm_filament_asa.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_asa.json @@ -1,82 +1,79 @@ { - "type": "filament", - "name": "fdm_filament_asa", - "inherits": "fdm_filament_common", - "from": "system", - "instantiation": "false", - "hot_plate_temp": [ - "90" - ], - "hot_plate_temp_initial_layer": [ - "90" - ], - "overhang_fan_threshold": [ - "25%" - ], - "overhang_fan_speed": [ - "80" - ], - "close_fan_the_first_x_layers": [ - "4" - ], - "filament_flow_ratio": [ - "0.94" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "fan_cooling_layer_time": [ - "20" - ], - "filament_cost": [ - "80" - ], - "filament_density": [ - "1.04" - ], - "filament_max_volumetric_speed": [ - "7.6" - ], - "filament_retraction_length": [ - "0.6" - ], - "filament_z_hop": [ - "0.7" - ], - "nozzle_temperature_initial_layer": [ - "255" - ], - "nozzle_temperature": [ - "255" - ], - "temperature_vitrification": [ - "182" - ], - "fan_max_speed": [ - "35" - ], - "fan_min_speed": [ - "10" - ], - "slow_down_min_speed": [ - "20" - ], - "slow_down_layer_time": [ - "5" - ], - "enable_pressure_advance": [ - "1" - ], - "filament_type": [ - "ASA" - ], - "default_filament_colour": [ - "" - ], - "nozzle_temperature_range_low": [ - "240" - ], - "nozzle_temperature_range_high": [ - "280" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "fdm_filament_asa", + "inherits": "fdm_filament_common", + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "overhang_fan_threshold": [ + "25%" + ], + "overhang_fan_speed": [ + "80" + ], + "close_fan_the_first_x_layers": [ + "4" + ], + "filament_flow_ratio": [ + "0.94" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_cooling_layer_time": [ + "20" + ], + "filament_cost": [ + "80" + ], + "filament_density": [ + "1.04" + ], + "filament_max_volumetric_speed": [ + "7.6" + ], + "filament_retraction_length": [ + "0.6" + ], + "filament_z_hop": [ + "0.7" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "nozzle_temperature": [ + "255" + ], + "temperature_vitrification": [ + "182" + ], + "fan_max_speed": [ + "35" + ], + "fan_min_speed": [ + "10" + ], + "slow_down_min_speed": [ + "20" + ], + "slow_down_layer_time": [ + "5" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_type": [ + "ASA" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "nozzle_temperature_range_high": [ + "280" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_asa_generic.json b/resources/profiles/Snapmaker/filament/fdm_filament_asa_generic.json new file mode 100644 index 0000000000..1eececcf43 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_asa_generic.json @@ -0,0 +1,172 @@ +{ + "chamber_temperatures": [ + "0" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "complete_print_exhaust_fan_speed": [ + "70" + ], + "during_print_exhaust_fan_speed": [ + "70" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_diameter": [ + "1.75" + ], + "filament_flow_ratio": [ + "1" + ], + "filament_is_support": [ + "0" + ], + "filament_long_retractions_when_cut": [ + "nil" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_distances_when_cut": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_settings_id": [ + "" + ], + "filament_soluble": [ + "0" + ], + "filament_vendor": [ + "Snapmaker" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "full_fan_speed_layer": [ + "0" + ], + "required_nozzle_HRC": [ + "3" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "temperature_vitrification": [ + "100" + ], + "compatible_printers": [], + "filament_start_gcode": [ + "; Filament gcode\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ], + "filament_end_gcode": [ + "; filament end gcode \nM106 P3 S0\n" + ], + "type": "filament", + "name": "fdm_filament_asa_generic", + "from": "system", + "instantiation": "false", + "activate_air_filtration": [ + "0" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "90" + ], + "eng_plate_temp_initial_layer": [ + "90" + ], + "fan_cooling_layer_time": [ + "35" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "10" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.04" + ], + "filament_max_volumetric_speed": [ + "28.6" + ], + "filament_type": [ + "ASA" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "nozzle_temperature": [ + "260" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "80" + ], + "overhang_fan_threshold": [ + "25%" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_layer_time": [ + "3" + ], + "slow_down_min_speed": [ + "20" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_breakaway.json b/resources/profiles/Snapmaker/filament/fdm_filament_breakaway.json deleted file mode 100644 index 3dac620f93..0000000000 --- a/resources/profiles/Snapmaker/filament/fdm_filament_breakaway.json +++ /dev/null @@ -1,52 +0,0 @@ -{ - "type": "filament", - "name": "fdm_filament_breakaway", - "inherits": "fdm_filament_common", - "from": "system", - "instantiation": "false", - "filament_is_support": [ - "1" - ], - "hot_plate_temp": [ - "65" - ], - "hot_plate_temp_initial_layer": [ - "70" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_cost": [ - "100" - ], - "filament_density": [ - "1.32" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_retraction_length": [ - "1.8" - ], - "nozzle_temperature_initial_layer": [ - "230" - ], - "nozzle_temperature": [ - "220" - ], - "temperature_vitrification": [ - "154" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "Breakaway Support" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "200" - ] -} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_bvoh_generic.json b/resources/profiles/Snapmaker/filament/fdm_filament_bvoh_generic.json new file mode 100644 index 0000000000..0adff73370 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_bvoh_generic.json @@ -0,0 +1,85 @@ +{ + "type": "filament", + "name": "fdm_filament_bvoh_generic", + "inherits": "fdm_filament_common_generic", + "from": "system", + "instantiation": "false", + "additional_cooling_fan_speed": [ + "70" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "cool_plate_temp": [ + "40" + ], + "cool_plate_temp_initial_layer": [ + "40" + ], + "eng_plate_temp": [ + "0" + ], + "eng_plate_temp_initial_layer": [ + "0" + ], + "fan_cooling_layer_time": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "filament_cost": [ + "69.99" + ], + "filament_density": [ + "1.13" + ], + "filament_is_support": [ + "1" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_type": [ + "BVOH" + ], + "hot_plate_temp": [ + "55" + ], + "hot_plate_temp_initial_layer": [ + "55" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "240" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "overhang_fan_threshold": [ + "50%" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_min_speed": [ + "20" + ], + "temperature_vitrification": [ + "45" + ], + "textured_plate_temp": [ + "55" + ], + "textured_plate_temp_initial_layer": [ + "55" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_common.json b/resources/profiles/Snapmaker/filament/fdm_filament_common.json index e2583d74e5..4e6b9230ff 100644 --- a/resources/profiles/Snapmaker/filament/fdm_filament_common.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_common.json @@ -1,189 +1,189 @@ { - "type": "filament", - "name": "fdm_filament_common", - "from": "system", - "instantiation": "false", - "filament_vendor": [ - "Snapmaker" - ], - "filament_start_gcode": [ - "" - ], - "filament_end_gcode": [ - "" - ], - "filament_is_support": [ - "0" - ], - "filament_soluble": [ - "0" - ], - "filament_settings_id": [ - "" - ], - "required_nozzle_HRC": [ - "3" - ], - "bed_type": [ - "Hot Plate" - ], - "hot_plate_temp": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "overhang_fan_threshold": [ - "95%" - ], - "overhang_fan_speed": [ - "100" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "close_fan_the_first_x_layers": [ - "2" - ], - "filament_flow_ratio": [ - "1" - ], - "reduce_fan_stop_start_freq": [ - "0" - ], - "fan_cooling_layer_time": [ - "60" - ], - "filament_cost": [ - "0" - ], - "filament_density": [ - "0" - ], - "filament_deretraction_speed": [ - "nil" - ], - "filament_diameter": [ - "1.75" - ], - "filament_max_volumetric_speed": [ - "0" - ], - "filament_minimal_purge_on_wipe_tower": [ - "0" - ], - "filament_retraction_minimum_travel": [ - "nil" - ], - "filament_retract_before_wipe": [ - "nil" - ], - "filament_retract_when_changing_layer": [ - "nil" - ], - "filament_retraction_length": [ - "nil" - ], - "filament_z_hop": [ - "nil" - ], - "filament_z_hop_types": [ - "nil" - ], - "filament_retract_restart_extra": [ - "nil" - ], - "filament_retraction_speed": [ - "nil" - ], - "filament_wipe": [ - "nil" - ], - "filament_wipe_distance": [ - "nil" - ], - "filament_loading_speed_start": [ - "3" - ], - "filament_loading_speed": [ - "25" - ], - "filament_unloading_speed_start": [ - "3" - ], - "filament_unloading_speed": [ - "25" - ], - "filament_load_time": [ - "0" - ], - "filament_unload_time": [ - "0" - ], - "filament_toolchange_delay": [ - "0" - ], - "filament_cooling_moves": [ - "0" - ], - "filament_cooling_initial_speed": [ - "2.2" - ], - "filament_cooling_final_speed": [ - "3.4" - ], - "filament_multitool_ramming": [ - "0" - ], - "filament_multitool_ramming_volume": [ - "0" - ], - "nozzle_temperature_initial_layer": [ - "200" - ], - "nozzle_temperature": [ - "200" - ], - "temperature_vitrification": [ - "140" - ], - "full_fan_speed_layer": [ - "0" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "35" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "8" - ], - "enable_pressure_advance": [ - "0" - ], - "pressure_advance": [ - "0.04" - ], - "cool_plate_temp": [ - "0" - ], - "eng_plate_temp": [ - "0" - ], - "textured_plate_temp": [ - "0" - ], - "cool_plate_temp_initial_layer": [ - "0" - ], - "eng_plate_temp_initial_layer": [ - "0" - ], - "textured_plate_temp_initial_layer": [ - "0" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "fdm_filament_common", + "filament_vendor": [ + "Snapmaker" + ], + "filament_start_gcode": [ + "" + ], + "filament_end_gcode": [ + "" + ], + "filament_is_support": [ + "0" + ], + "filament_soluble": [ + "0" + ], + "filament_settings_id": [ + "" + ], + "required_nozzle_HRC": [ + "3" + ], + "bed_type": [ + "Hot Plate" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_threshold": [ + "95%" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "2" + ], + "filament_flow_ratio": [ + "1" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "fan_cooling_layer_time": [ + "60" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "0" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_diameter": [ + "1.75" + ], + "filament_max_volumetric_speed": [ + "0" + ], + "filament_minimal_purge_on_wipe_tower": [ + "0" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "filament_loading_speed_start": [ + "3" + ], + "filament_loading_speed": [ + "25" + ], + "filament_unloading_speed_start": [ + "3" + ], + "filament_unloading_speed": [ + "25" + ], + "filament_load_time": [ + "0" + ], + "filament_unload_time": [ + "0" + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_cooling_initial_speed": [ + "2.2" + ], + "filament_cooling_final_speed": [ + "3.4" + ], + "filament_multitool_ramming": [ + "0" + ], + "filament_multitool_ramming_volume": [ + "0" + ], + "nozzle_temperature_initial_layer": [ + "200" + ], + "nozzle_temperature": [ + "200" + ], + "temperature_vitrification": [ + "140" + ], + "full_fan_speed_layer": [ + "0" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "35" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "8" + ], + "enable_pressure_advance": [ + "0" + ], + "pressure_advance": [ + "0.04" + ], + "cool_plate_temp": [ + "0" + ], + "eng_plate_temp": [ + "0" + ], + "textured_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp_initial_layer": [ + "0" + ], + "textured_plate_temp_initial_layer": [ + "0" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_common_generic.json b/resources/profiles/Snapmaker/filament/fdm_filament_common_generic.json new file mode 100644 index 0000000000..153e224f95 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_common_generic.json @@ -0,0 +1,166 @@ +{ + "type": "filament", + "name": "fdm_filament_common_generic", + "from": "system", + "instantiation": "false", + "activate_air_filtration": [ + "0" + ], + "chamber_temperatures": [ + "0" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "complete_print_exhaust_fan_speed": [ + "70" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "during_print_exhaust_fan_speed": [ + "70" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "fan_cooling_layer_time": [ + "60" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "35" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "0" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_diameter": [ + "1.75" + ], + "filament_flow_ratio": [ + "1" + ], + "filament_is_support": [ + "0" + ], + "filament_long_retractions_when_cut": [ + "nil" + ], + "filament_max_volumetric_speed": [ + "0" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_distances_when_cut": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_settings_id": [ + "" + ], + "filament_soluble": [ + "0" + ], + "filament_type": [ + "PLA" + ], + "filament_vendor": [ + "Snapmaker" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "full_fan_speed_layer": [ + "0" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature": [ + "200" + ], + "nozzle_temperature_initial_layer": [ + "200" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "95%" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "required_nozzle_HRC": [ + "3" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "8" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "100" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "compatible_printers": [], + "filament_start_gcode": [ + "; Filament gcode\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ], + "filament_end_gcode": [ + "; filament end gcode \nM106 P3 S0\n" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_pa.json b/resources/profiles/Snapmaker/filament/fdm_filament_pa.json index 9993a80ef9..f2eeff4cb9 100644 --- a/resources/profiles/Snapmaker/filament/fdm_filament_pa.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pa.json @@ -1,88 +1,85 @@ { - "type": "filament", - "name": "fdm_filament_pa", - "inherits": "fdm_filament_common", - "from": "system", - "instantiation": "false", - "required_nozzle_HRC": [ - "40" - ], - "hot_plate_temp": [ - "95" - ], - "hot_plate_temp_initial_layer": [ - "90" - ], - "overhang_fan_threshold": [ - "0%" - ], - "overhang_fan_speed": [ - "60" - ], - "close_fan_the_first_x_layers": [ - "3" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "fan_cooling_layer_time": [ - "20" - ], - "filament_cost": [ - "150" - ], - "filament_density": [ - "1.09" - ], - "filament_max_volumetric_speed": [ - "8" - ], - "filament_retraction_minimum_travel": [ - "0" - ], - "filament_retraction_length": [ - "2" - ], - "filament_retraction_speed": [ - "36" - ], - "nozzle_temperature_initial_layer": [ - "255" - ], - "nozzle_temperature": [ - "250" - ], - "temperature_vitrification": [ - "203" - ], - "full_fan_speed_layer": [ - "3" - ], - "fan_max_speed": [ - "65" - ], - "fan_min_speed": [ - "30" - ], - "slow_down_min_speed": [ - "15" - ], - "slow_down_layer_time": [ - "20" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "PA-CF" - ], - "nozzle_temperature_range_low": [ - "250" - ], - "nozzle_temperature_range_high": [ - "260" - ], - "filament_notes": [ - "!! It needs to be dried before use.\n" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "fdm_filament_pa", + "inherits": "fdm_filament_common", + "required_nozzle_HRC": [ + "40" + ], + "hot_plate_temp": [ + "95" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "overhang_fan_threshold": [ + "0%" + ], + "overhang_fan_speed": [ + "60" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_cooling_layer_time": [ + "20" + ], + "filament_cost": [ + "150" + ], + "filament_density": [ + "1.09" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_retraction_minimum_travel": [ + "0" + ], + "filament_retraction_length": [ + "2" + ], + "filament_retraction_speed": [ + "36" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "nozzle_temperature": [ + "250" + ], + "temperature_vitrification": [ + "203" + ], + "full_fan_speed_layer": [ + "3" + ], + "fan_max_speed": [ + "65" + ], + "fan_min_speed": [ + "30" + ], + "slow_down_min_speed": [ + "15" + ], + "slow_down_layer_time": [ + "20" + ], + "filament_type": [ + "PA-CF" + ], + "nozzle_temperature_range_low": [ + "250" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "filament_notes": [ + "!! It needs to be dried before use.\n" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_pa_generic.json b/resources/profiles/Snapmaker/filament/fdm_filament_pa_generic.json new file mode 100644 index 0000000000..4f465818a1 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pa_generic.json @@ -0,0 +1,82 @@ +{ + "type": "filament", + "name": "fdm_filament_pa_generic", + "inherits": "fdm_filament_common_generic", + "from": "system", + "instantiation": "false", + "activate_air_filtration": [ + "1" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "100" + ], + "eng_plate_temp_initial_layer": [ + "100" + ], + "fan_cooling_layer_time": [ + "4" + ], + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.04" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_type": [ + "PA" + ], + "hot_plate_temp": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "nozzle_temperature": [ + "290" + ], + "nozzle_temperature_initial_layer": [ + "290" + ], + "nozzle_temperature_range_high": [ + "300" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "30" + ], + "required_nozzle_HRC": [ + "40" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "20" + ], + "temperature_vitrification": [ + "108" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_pc_generic.json b/resources/profiles/Snapmaker/filament/fdm_filament_pc_generic.json new file mode 100644 index 0000000000..fae4044632 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pc_generic.json @@ -0,0 +1,82 @@ +{ + "type": "filament", + "name": "fdm_filament_pc_generic", + "inherits": "fdm_filament_common_generic", + "from": "system", + "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "110" + ], + "eng_plate_temp_initial_layer": [ + "110" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "10" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.04" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "filament_type": [ + "PC" + ], + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "110" + ], + "nozzle_temperature": [ + "280" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "60" + ], + "overhang_fan_threshold": [ + "25%" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "20" + ], + "temperature_vitrification": [ + "120" + ], + "textured_plate_temp": [ + "110" + ], + "textured_plate_temp_initial_layer": [ + "110" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_pctg_generic.json b/resources/profiles/Snapmaker/filament/fdm_filament_pctg_generic.json new file mode 100644 index 0000000000..12d1e3c973 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pctg_generic.json @@ -0,0 +1,64 @@ +{ + "type": "filament", + "name": "fdm_filament_pctg_generic", + "inherits": "fdm_filament_common_generic", + "from": "system", + "instantiation": "false", + "eng_plate_temp": [ + "0" + ], + "eng_plate_temp_initial_layer": [ + "0" + ], + "fan_cooling_layer_time": [ + "20" + ], + "fan_min_speed": [ + "20" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.27" + ], + "filament_max_volumetric_speed": [ + "25" + ], + "filament_type": [ + "PCTG" + ], + "hot_plate_temp": [ + "80" + ], + "hot_plate_temp_initial_layer": [ + "80" + ], + "nozzle_temperature": [ + "255" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "nozzle_temperature_range_low": [ + "220" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "temperature_vitrification": [ + "70" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S180\n{elsif (bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S255\n{endif};Prevent PLA from jamming\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_pet.json b/resources/profiles/Snapmaker/filament/fdm_filament_pet.json index 55e28fbb2c..2c13dc91c3 100644 --- a/resources/profiles/Snapmaker/filament/fdm_filament_pet.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pet.json @@ -1,73 +1,70 @@ { - "type": "filament", - "name": "fdm_filament_pet", - "inherits": "fdm_filament_common", - "from": "system", - "instantiation": "false", - "hot_plate_temp": [ - "65" - ], - "overhang_fan_threshold": [ - "25%" - ], - "overhang_fan_speed": [ - "60" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "fan_cooling_layer_time": [ - "7" - ], - "filament_cost": [ - "8" - ], - "filament_density": [ - "1.29" - ], - "filament_max_volumetric_speed": [ - "6" - ], - "nozzle_temperature_initial_layer": [ - "275" - ], - "nozzle_temperature": [ - "278" - ], - "temperature_vitrification": [ - "230" - ], - "fan_max_speed": [ - "40" - ], - "fan_min_speed": [ - "0" - ], - "slow_down_min_speed": [ - "50" - ], - "slow_down_layer_time": [ - "2" - ], - "enable_pressure_advance": [ - "1" - ], - "pressure_advance": [ - "0.022" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "PET" - ], - "nozzle_temperature_range_low": [ - "250" - ], - "nozzle_temperature_range_high": [ - "280" - ], - "filament_notes": [ - "JiaNong PET 1.63x1.75mm" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "fdm_filament_pet", + "inherits": "fdm_filament_common", + "hot_plate_temp": [ + "65" + ], + "overhang_fan_threshold": [ + "25%" + ], + "overhang_fan_speed": [ + "60" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_cooling_layer_time": [ + "7" + ], + "filament_cost": [ + "8" + ], + "filament_density": [ + "1.29" + ], + "filament_max_volumetric_speed": [ + "6" + ], + "nozzle_temperature_initial_layer": [ + "275" + ], + "nozzle_temperature": [ + "278" + ], + "temperature_vitrification": [ + "230" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "0" + ], + "slow_down_min_speed": [ + "50" + ], + "slow_down_layer_time": [ + "2" + ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.022" + ], + "filament_type": [ + "PET" + ], + "nozzle_temperature_range_low": [ + "250" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "filament_notes": [ + "JiaNong PET 1.63x1.75mm" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_pet_generic.json b/resources/profiles/Snapmaker/filament/fdm_filament_pet_generic.json new file mode 100644 index 0000000000..553788156e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pet_generic.json @@ -0,0 +1,64 @@ +{ + "type": "filament", + "name": "fdm_filament_pet_generic", + "inherits": "fdm_filament_common_generic", + "from": "system", + "instantiation": "false", + "eng_plate_temp": [ + "0" + ], + "eng_plate_temp_initial_layer": [ + "0" + ], + "fan_cooling_layer_time": [ + "20" + ], + "fan_min_speed": [ + "20" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.27" + ], + "filament_max_volumetric_speed": [ + "25" + ], + "filament_type": [ + "PETG" + ], + "hot_plate_temp": [ + "80" + ], + "hot_plate_temp_initial_layer": [ + "80" + ], + "nozzle_temperature": [ + "255" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "nozzle_temperature_range_low": [ + "220" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "temperature_vitrification": [ + "70" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S180\n{elsif (bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S255\n{endif};Prevent PLA from jamming\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_petg.json b/resources/profiles/Snapmaker/filament/fdm_filament_petg.json index c9f786cbdc..926a3f65a8 100644 --- a/resources/profiles/Snapmaker/filament/fdm_filament_petg.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_petg.json @@ -1,79 +1,37 @@ { - "type": "filament", - "name": "fdm_filament_petg", - "inherits": "fdm_filament_common", - "from": "system", - "instantiation": "false", - "hot_plate_temp": [ - "70" - ], - "hot_plate_temp_initial_layer": [ - "70" - ], - "overhang_fan_threshold": [ - "25%" - ], - "overhang_fan_speed": [ - "90" - ], - "filament_flow_ratio": [ - "0.95" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "fan_cooling_layer_time": [ - "30" - ], - "filament_cost": [ - "30" - ], - "filament_density": [ - "1.27" - ], - "filament_max_volumetric_speed": [ - "10" - ], - "filament_retraction_minimum_travel": [ - "0" - ], - "filament_retraction_length": [ - "1.8" - ], - "nozzle_temperature_initial_layer": [ - "255" - ], - "nozzle_temperature": [ - "245" - ], - "temperature_vitrification": [ - "160" - ], - "fan_max_speed": [ - "90" - ], - "fan_min_speed": [ - "40" - ], - "slow_down_min_speed": [ - "20" - ], - "enable_pressure_advance": [ - "1" - ], - "pressure_advance": [ - "0.03" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "PETG" - ], - "nozzle_temperature_range_low": [ - "220" - ], - "nozzle_temperature_range_high": [ - "270" - ] -} \ No newline at end of file + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "fdm_filament_petg", + "inherits": "fdm_filament_common", + "filament_cost": ["100"], + "filament_settings_id": ["Snapmaker_PETG "], + + "hot_plate_temp": ["75"], + "hot_plate_temp_initial_layer": ["80"], + "is_custom_defined": "0", + "nozzle_temperature": ["230"], + "nozzle_temperature_initial_layer": ["240"], + "pressure_advance": ["0.03"], + "temperature_vitrification": ["70"], + + "overhang_fan_threshold": ["25%"], + "overhang_fan_speed": ["90"], + "filament_flow_ratio": ["0.95"], + "reduce_fan_stop_start_freq": ["1"], + "fan_cooling_layer_time": ["30"], + + "filament_density": ["1.27"], + "filament_max_volumetric_speed": ["10"], + "filament_retraction_minimum_travel": ["0"], + "filament_retraction_length": ["1.8"], + + "fan_max_speed": ["90"], + "fan_min_speed": ["40"], + "slow_down_min_speed": ["20"], + "enable_pressure_advance": ["1"], + + "filament_type": ["PETG"], + "nozzle_temperature_range_low": ["220"], + "nozzle_temperature_range_high": ["270"] +} diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_pla.json b/resources/profiles/Snapmaker/filament/fdm_filament_pla.json index 4dc72c57dd..c8dd88ef7e 100644 --- a/resources/profiles/Snapmaker/filament/fdm_filament_pla.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pla.json @@ -1,73 +1,40 @@ { - "type": "filament", - "name": "fdm_filament_pla", - "inherits": "fdm_filament_common", - "from": "system", - "instantiation": "false", - "overhang_fan_threshold": [ - "0%" - ], - "close_fan_the_first_x_layers": [ - "1" - ], - "filament_flow_ratio": [ - "0.98" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "fan_cooling_layer_time": [ - "100" - ], - "filament_cost": [ - "60" - ], - "filament_density": [ - "1.24" - ], - "filament_max_volumetric_speed": [ - "14" - ], - "filament_retraction_length": [ - "1.2" - ], - "filament_retraction_speed": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature": [ - "210" - ], - "temperature_vitrification": [ - "154" - ], - "fan_min_speed": [ - "100" - ], - "slow_down_min_speed": [ - "15" - ], - "enable_pressure_advance": [ - "1" - ], - "pressure_advance": [ - "0.02" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "PLA" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "additional_cooling_fan_speed": [ - "70" - ] -} \ No newline at end of file + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "fdm_filament_pla", + "inherits": "fdm_filament_common", + + "filament_cost": ["100"], + "filament_flow_ratio": ["0.98"], + "filament_retraction_length": ["2"], + "filament_retraction_speed": ["60"], + "filament_settings_id": ["Snapmaker_PLA"], + + "hot_plate_temp": ["65"], + "hot_plate_temp_initial_layer": ["70"], + + "nozzle_temperature": ["215"], + "pressure_advance": ["0.02"], + "temperature_vitrification": ["65"], + + "overhang_fan_threshold": ["0%"], + "close_fan_the_first_x_layers": ["1"], + + "reduce_fan_stop_start_freq": ["1"], + "fan_cooling_layer_time": ["100"], + + "filament_density": ["1.24"], + "filament_max_volumetric_speed": ["14"], + + "nozzle_temperature_initial_layer": ["220"], + + "fan_min_speed": ["100"], + "slow_down_min_speed": ["15"], + "enable_pressure_advance": ["1"], + + "filament_type": ["PLA"], + "nozzle_temperature_range_low": ["190"], + "nozzle_temperature_range_high": ["240"], + "additional_cooling_fan_speed": ["70"] +} diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_pla_eco.json b/resources/profiles/Snapmaker/filament/fdm_filament_pla_eco.json index 3c918b3fa8..c000e03077 100644 --- a/resources/profiles/Snapmaker/filament/fdm_filament_pla_eco.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pla_eco.json @@ -1,16 +1,13 @@ { - "type": "filament", - "name": "fdm_filament_pla_eco", - "inherits": "fdm_filament_pla", - "from": "system", - "instantiation": "false", - "nozzle_temperature_initial_layer": [ - "205" - ], - "nozzle_temperature": [ - "200" - ], - "default_filament_colour": [ - "" - ] + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "fdm_filament_pla_eco", + "inherits": "fdm_filament_pla", + "nozzle_temperature_initial_layer": [ + "205" + ], + "nozzle_temperature": [ + "200" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_pla_generic.json b/resources/profiles/Snapmaker/filament/fdm_filament_pla_generic.json new file mode 100644 index 0000000000..7b6c7d8998 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pla_generic.json @@ -0,0 +1,82 @@ +{ + "type": "filament", + "name": "fdm_filament_pla_generic", + "inherits": "fdm_filament_common_generic", + "from": "system", + "instantiation": "false", + "fan_cooling_layer_time": [ + "100" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_density": [ + "1.24" + ], + "filament_cost": [ + "20" + ], + "cool_plate_temp": [ + "35" + ], + "eng_plate_temp": [ + "0" + ], + "hot_plate_temp": [ + "55" + ], + "textured_plate_temp": [ + "55" + ], + "cool_plate_temp_initial_layer": [ + "35" + ], + "eng_plate_temp_initial_layer": [ + "0" + ], + "hot_plate_temp_initial_layer": [ + "55" + ], + "textured_plate_temp_initial_layer": [ + "55" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_min_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "50%" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "nozzle_temperature": [ + "220" + ], + "temperature_vitrification": [ + "45" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "nozzle_temperature_range_high": [ + "240" + ], + "slow_down_min_speed": [ + "20" + ], + "slow_down_layer_time": [ + "4" + ], + "additional_cooling_fan_speed": [ + "70" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S255\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S180\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_pva.json b/resources/profiles/Snapmaker/filament/fdm_filament_pva.json index 8e0d4ddcf4..2d0f409696 100644 --- a/resources/profiles/Snapmaker/filament/fdm_filament_pva.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pva.json @@ -1,67 +1,38 @@ { - "type": "filament", - "name": "fdm_filament_pva", - "inherits": "fdm_filament_common", - "from": "system", - "instantiation": "false", - "filament_is_support": [ - "1" - ], - "overhang_fan_threshold": [ - "50%" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "fan_cooling_layer_time": [ - "100" - ], - "filament_cost": [ - "120" - ], - "filament_density": [ - "1.37" - ], - "filament_deretraction_speed": [ - "15" - ], - "filament_max_volumetric_speed": [ - "6" - ], - "filament_retraction_length": [ - "2" - ], - "filament_retraction_speed": [ - "28" - ], - "nozzle_temperature_initial_layer": [ - "215" - ], - "nozzle_temperature": [ - "215" - ], - "temperature_vitrification": [ - "150" - ], - "slow_down_min_speed": [ - "20" - ], - "slow_down_layer_time": [ - "7" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "PVA" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "nozzle_temperature_range_high": [ - "225" - ], - "additional_cooling_fan_speed": [ - "50" - ] -} \ No newline at end of file + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "fdm_filament_pva", + "inherits": "fdm_filament_common", + + "filament_cost": ["100"], + "filament_density": ["1.27"], + "filament_max_volumetric_speed": ["6"], + "filament_settings_id": ["Snapmaker_PVA"], + + "hot_plate_temp": ["65"], + "hot_plate_temp_initial_layer": ["70"], + + "nozzle_temperature": ["210"], + "nozzle_temperature_initial_layer": ["220"], + "nozzle_temperature_range_high": ["230"], + "temperature_vitrification": ["45"], + + "filament_is_support": ["1"], + + "overhang_fan_threshold": ["50%"], + "reduce_fan_stop_start_freq": ["1"], + "fan_cooling_layer_time": ["100"], + + "filament_deretraction_speed": ["15"], + + "filament_retraction_length": ["2"], + "filament_retraction_speed": ["28"], + + "slow_down_min_speed": ["20"], + "slow_down_layer_time": ["7"], + "filament_type": ["PVA"], + "nozzle_temperature_range_low": ["190"], + + "additional_cooling_fan_speed": ["50"] +} diff --git a/resources/profiles/Snapmaker/filament/Snapmaker PLA Lite @U1 base.json b/resources/profiles/Snapmaker/filament/fdm_filament_pva_generic.json similarity index 56% rename from resources/profiles/Snapmaker/filament/Snapmaker PLA Lite @U1 base.json rename to resources/profiles/Snapmaker/filament/fdm_filament_pva_generic.json index 5d33be1e32..b784727f57 100644 --- a/resources/profiles/Snapmaker/filament/Snapmaker PLA Lite @U1 base.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_pva_generic.json @@ -1,127 +1,91 @@ { "type": "filament", - "name": "Snapmaker PLA Lite @U1 base", + "name": "fdm_filament_pva_generic", + "inherits": "fdm_filament_common_generic", "from": "system", - "filament_id": "1417031127011", "instantiation": "false", - "filament_end_gcode": [ - "" + "additional_cooling_fan_speed": [ + "70" ], - "filament_retraction_length": [ - "nil" - ], - "filament_loading_speed_start": [ - "35" - ], - "filament_loading_speed": [ - "35" - ], - "filament_unloading_speed_start": [ - "35" - ], - "filament_unloading_speed": [ - "35" - ], - "filament_load_time": [ - "2" - ], - "filament_unload_time": [ - "2" - ], - "filament_cooling_moves": [ - "2" - ], - "filament_cooling_initial_speed": [ - "35" - ], - "filament_cooling_final_speed": [ - "60" - ], - "fan_cooling_layer_time": [ - "100" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_type": [ - "PLA" - ], - "filament_density": [ - "1.24" - ], - "filament_cost": [ - "20" + "close_fan_the_first_x_layers": [ + "1" ], "cool_plate_temp": [ - "60" - ], - "eng_plate_temp": [ - "60" - ], - "hot_plate_temp": [ - "60" - ], - "textured_plate_temp": [ - "60" + "45" ], "cool_plate_temp_initial_layer": [ - "60" + "45" + ], + "eng_plate_temp": [ + "0" ], "eng_plate_temp_initial_layer": [ - "60" + "0" ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "textured_plate_temp_initial_layer": [ - "60" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "fan_max_speed": [ + "fan_cooling_layer_time": [ "100" ], "fan_min_speed": [ "100" ], - "overhang_fan_speed": [ - "100" + "filament_cost": [ + "20" ], - "overhang_fan_threshold": [ - "50%" + "filament_density": [ + "1.24" ], - "close_fan_the_first_x_layers": [ + "filament_is_support": [ "1" ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_soluble": [ + "1" + ], + "filament_type": [ + "PVA" + ], + "hot_plate_temp": [ + "55" + ], + "hot_plate_temp_initial_layer": [ + "55" + ], "nozzle_temperature": [ "220" ], - "temperature_vitrification": [ - "60" + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "240" ], "nozzle_temperature_range_low": [ "190" ], - "nozzle_temperature_range_high": [ - "230" + "overhang_fan_threshold": [ + "50%" ], - "slow_down_min_speed": [ - "10" + "reduce_fan_stop_start_freq": [ + "1" ], "slow_down_layer_time": [ "4" ], - "additional_cooling_fan_speed": [ - "70" + "slow_down_min_speed": [ + "50" + ], + "temperature_vitrification": [ + "45" + ], + "textured_plate_temp": [ + "55" + ], + "textured_plate_temp_initial_layer": [ + "55" ], "filament_start_gcode": [ - "; filament start gcode\n" + "; filament start gcode\n{if (bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S255\n{elsif(bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S180\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_tpu.json b/resources/profiles/Snapmaker/filament/fdm_filament_tpu.json index d485921efa..deeed90339 100644 --- a/resources/profiles/Snapmaker/filament/fdm_filament_tpu.json +++ b/resources/profiles/Snapmaker/filament/fdm_filament_tpu.json @@ -1,91 +1,48 @@ { - "type": "filament", - "name": "fdm_filament_tpu", - "inherits": "fdm_filament_common", - "from": "system", - "instantiation": "false", - "hot_plate_temp": [ - "40" - ], - "hot_plate_temp_initial_layer": [ - "45" - ], - "overhang_fan_speed": [ - "70" - ], - "slow_down_for_layer_cooling": [ - "0" - ], - "close_fan_the_first_x_layers": [ - "1" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "fan_cooling_layer_time": [ - "100" - ], - "filament_cost": [ - "80" - ], - "filament_density": [ - "1.24" - ], - "filament_deretraction_speed": [ - "25" - ], - "filament_max_volumetric_speed": [ - "2.8" - ], - "filament_retract_when_changing_layer": [ - "0" - ], - "filament_retraction_length": [ - "0.5" - ], - "filament_z_hop": [ - "0" - ], - "filament_z_hop_types": [ - "Normal Lift" - ], - "filament_retraction_speed": [ - "25" - ], - "nozzle_temperature_initial_layer": [ - "230" - ], - "nozzle_temperature": [ - "225" - ], - "temperature_vitrification": [ - "138" - ], - "fan_max_speed": [ - "70" - ], - "fan_min_speed": [ - "70" - ], - "pressure_advance": [ - "0.01" - ], - "default_filament_colour": [ - "" - ], - "filament_type": [ - "TPU" - ], - "additional_cooling_fan_speed": [ - "70" - ], - "nozzle_temperature_range_low": [ - "220" - ], - "nozzle_temperature_range_high": [ - "250" - ], - "filament_notes": [ - "!! It needs to be dried before use.\nSunlu TPU 95A\n" - ] -} \ No newline at end of file + "type": "filament", + "from": "system", + "instantiation": "false", + "name": "fdm_filament_tpu", + "inherits": "fdm_filament_common", + + "filament_cost": ["100"], + "filament_density": ["1.22"], + "filament_flow_ratio": ["1"], + "filament_max_volumetric_speed": ["4.5"], + "filament_retraction_length": ["nil"], + "filament_retraction_minimum_travel": ["nil"], + "filament_settings_id": ["Snapmaker_TPU"], + "filament_type": ["TPU"], + + "hot_plate_temp": ["60"], + "hot_plate_temp_initial_layer": ["65"], + + "nozzle_temperature": ["225"], + "nozzle_temperature_initial_layer": ["230"], + "nozzle_temperature_range_high": ["250"], + "nozzle_temperature_range_low": ["200"], + "enable_pressure_advance": ["0"], + "pressure_advance": ["0.01"], + "temperature_vitrification": ["45"], + + "overhang_fan_speed": ["70"], + "slow_down_for_layer_cooling": ["0"], + "close_fan_the_first_x_layers": ["1"], + "reduce_fan_stop_start_freq": ["1"], + "fan_cooling_layer_time": ["100"], + + "filament_deretraction_speed": ["25"], + + "filament_retract_when_changing_layer": ["0"], + + "filament_z_hop": ["0"], + "filament_z_hop_types": ["Normal Lift"], + "filament_retraction_speed": ["25"], + + "fan_max_speed": ["70"], + "fan_min_speed": ["70"], + + "additional_cooling_fan_speed": ["70"], + + "filament_notes": ["!! It needs to be dried before use.\nSunlu TPU 95A\n"] +} diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_tpu_bambu.json b/resources/profiles/Snapmaker/filament/fdm_filament_tpu_bambu.json new file mode 100644 index 0000000000..377e255550 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_tpu_bambu.json @@ -0,0 +1,79 @@ +{ + "type": "filament", + "name": "fdm_filament_tpu_generic", + "inherits": "fdm_filament_common_generic", + "from": "system", + "instantiation": "false", + "additional_cooling_fan_speed": [ + "70" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "cool_plate_temp": [ + "30" + ], + "cool_plate_temp_initial_layer": [ + "30" + ], + "eng_plate_temp": [ + "30" + ], + "eng_plate_temp_initial_layer": [ + "30" + ], + "fan_cooling_layer_time": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.24" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_retraction_length": [ + "0.4" + ], + "filament_type": [ + "TPU" + ], + "hot_plate_temp": [ + "35" + ], + "hot_plate_temp_initial_layer": [ + "35" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "temperature_vitrification": [ + "30" + ], + "textured_plate_temp": [ + "35" + ], + "textured_plate_temp_initial_layer": [ + "35" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S255\n{elsif(bed_temperature[current_extruder] >30)||(bed_temperature_initial_layer[current_extruder] >30)}M106 P3 S180\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/fdm_filament_tpu_generic.json b/resources/profiles/Snapmaker/filament/fdm_filament_tpu_generic.json new file mode 100644 index 0000000000..377e255550 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/fdm_filament_tpu_generic.json @@ -0,0 +1,79 @@ +{ + "type": "filament", + "name": "fdm_filament_tpu_generic", + "inherits": "fdm_filament_common_generic", + "from": "system", + "instantiation": "false", + "additional_cooling_fan_speed": [ + "70" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "cool_plate_temp": [ + "30" + ], + "cool_plate_temp_initial_layer": [ + "30" + ], + "eng_plate_temp": [ + "30" + ], + "eng_plate_temp_initial_layer": [ + "30" + ], + "fan_cooling_layer_time": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.24" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_retraction_length": [ + "0.4" + ], + "filament_type": [ + "TPU" + ], + "hot_plate_temp": [ + "35" + ], + "hot_plate_temp_initial_layer": [ + "35" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "temperature_vitrification": [ + "30" + ], + "textured_plate_temp": [ + "35" + ], + "textured_plate_temp_initial_layer": [ + "35" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >35)||(bed_temperature_initial_layer[current_extruder] >35)}M106 P3 S255\n{elsif(bed_temperature[current_extruder] >30)||(bed_temperature_initial_layer[current_extruder] >30)}M106 P3 S180\n{endif}\n\n{if activate_air_filtration[current_extruder] && support_air_filtration}\nM106 P3 S{during_print_exhaust_fan_speed_num[current_extruder]} \n{endif}" + ] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.2 nozzle).json index 060c101307..66be63e7f8 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.2 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 (0.2 nozzle)", - "inherits": "fdm_a250", - "from": "system", - "setting_id": "2273571854", - "instantiation": "true", - "printer_model": "Snapmaker A250", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2" - ] + "name": "Snapmaker A250 (0.2 nozzle)", + "setting_id": "2273571854", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250", + "printer_model": "Snapmaker A250", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.4 nozzle).json index 30e37895ea..2aad4eaec5 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.4 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 (0.4 nozzle)", - "inherits": "fdm_a250", - "from": "system", - "setting_id": "4103703940", - "instantiation": "true", - "printer_model": "Snapmaker A250", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4" - ] + "name": "Snapmaker A250 (0.4 nozzle)", + "setting_id": "4103703940", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250", + "printer_model": "Snapmaker A250", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.6 nozzle).json index 5d65f9f73d..e07ef0eaf6 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.6 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 (0.6 nozzle)", - "inherits": "fdm_a250", - "from": "system", - "setting_id": "3664749826", - "instantiation": "true", - "printer_model": "Snapmaker A250", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6" - ] + "name": "Snapmaker A250 (0.6 nozzle)", + "setting_id": "3664749826", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250", + "printer_model": "Snapmaker A250", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.8 nozzle).json index c209f605f2..fa2ffe543f 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 (0.8 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 (0.8 nozzle)", - "inherits": "fdm_a250", - "from": "system", - "setting_id": "313360016", - "instantiation": "true", - "printer_model": "Snapmaker A250", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8" - ] + "name": "Snapmaker A250 (0.8 nozzle)", + "setting_id": "313360016", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250", + "printer_model": "Snapmaker A250", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.2 nozzle).json index cc987f9e17..0e263e8412 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.2 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 BKit (0.2 nozzle)", - "inherits": "fdm_a250_bk", - "from": "system", - "setting_id": "601809056", - "instantiation": "true", - "printer_model": "Snapmaker A250 BKit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2" - ] + "name": "Snapmaker A250 BKit (0.2 nozzle)", + "setting_id": "601809056", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_bk", + "printer_model": "Snapmaker A250 BKit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.4 nozzle).json index 2c24600e8e..149ab1f949 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.4 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 BKit (0.4 nozzle)", - "inherits": "fdm_a250_bk", - "from": "system", - "setting_id": "1355061546", - "instantiation": "true", - "printer_model": "Snapmaker A250 BKit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4" - ] + "name": "Snapmaker A250 BKit (0.4 nozzle)", + "setting_id": "1355061546", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_bk", + "printer_model": "Snapmaker A250 BKit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.6 nozzle).json index 9dd2e908cb..6971038c81 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.6 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 BKit (0.6 nozzle)", - "inherits": "fdm_a250_bk", - "from": "system", - "setting_id": "2117251500", - "instantiation": "true", - "printer_model": "Snapmaker A250 BKit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6" - ] + "name": "Snapmaker A250 BKit (0.6 nozzle)", + "setting_id": "2117251500", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_bk", + "printer_model": "Snapmaker A250 BKit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.8 nozzle).json index fa7082c5a2..0753e53bb9 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit (0.8 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 BKit (0.8 nozzle)", - "inherits": "fdm_a250_bk", - "from": "system", - "setting_id": "3069209150", - "instantiation": "true", - "printer_model": "Snapmaker A250 BKit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8" - ] + "name": "Snapmaker A250 BKit (0.8 nozzle)", + "setting_id": "3069209150", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_bk", + "printer_model": "Snapmaker A250 BKit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit.json b/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit.json index 74d1f3c623..58ce739df1 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 BKit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A250 BKit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "1921635482", - "bed_model": "Snapmaker A250_bed.stl", - "bed_texture": "Snapmaker A250_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A250 BKit", + "url": "https://github.com/macdylan", + "model_id": "1921635482", + "bed_model": "Snapmaker A250_bed.stl", + "bed_texture": "Snapmaker A250_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.2 nozzle).json index 39317fd617..8f0ba48440 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.2 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual (0.2 nozzle)", - "inherits": "fdm_a250_dual", - "from": "system", - "setting_id": "3474065981", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2", - "0.2" - ] + "name": "Snapmaker A250 Dual (0.2 nozzle)", + "setting_id": "3474065981", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual", + "printer_model": "Snapmaker A250 Dual", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2", + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.4 nozzle).json index bf525e709a..915866e244 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual (0.4 nozzle)", - "inherits": "fdm_a250_dual", - "from": "system", - "setting_id": "3154670519", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4", - "0.4" - ] + "name": "Snapmaker A250 Dual (0.4 nozzle)", + "setting_id": "3154670519", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual", + "printer_model": "Snapmaker A250 Dual", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4", + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.6 nozzle).json index 1530c36830..2ea9be0800 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.6 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual (0.6 nozzle)", - "inherits": "fdm_a250_dual", - "from": "system", - "setting_id": "2466143025", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6", - "0.6" - ] + "name": "Snapmaker A250 Dual (0.6 nozzle)", + "setting_id": "2466143025", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual", + "printer_model": "Snapmaker A250 Dual", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6", + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.8 nozzle).json index 1eab54cb19..7312b3b419 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual (0.8 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual (0.8 nozzle)", - "inherits": "fdm_a250_dual", - "from": "system", - "setting_id": "1513914531", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8", - "0.8" - ] + "name": "Snapmaker A250 Dual (0.8 nozzle)", + "setting_id": "1513914531", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual", + "printer_model": "Snapmaker A250 Dual", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8", + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.2 nozzle).json index 081ab6e871..fe7de49ffc 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.2 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual BKit (0.2 nozzle)", - "inherits": "fdm_a250_dual_bk", - "from": "system", - "setting_id": "1737970856", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual BKit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2", - "0.2" - ] + "name": "Snapmaker A250 Dual BKit (0.2 nozzle)", + "setting_id": "1737970856", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_bk", + "printer_model": "Snapmaker A250 Dual BKit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2", + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.4 nozzle).json index 745ee8cf0f..55221d047a 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual BKit (0.4 nozzle)", - "inherits": "fdm_a250_dual_bk", - "from": "system", - "setting_id": "344796450", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual BKit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4", - "0.4" - ] + "name": "Snapmaker A250 Dual BKit (0.4 nozzle)", + "setting_id": "344796450", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_bk", + "printer_model": "Snapmaker A250 Dual BKit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4", + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.6 nozzle).json index 6a92181814..04bab45414 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.6 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual BKit (0.6 nozzle)", - "inherits": "fdm_a250_dual_bk", - "from": "system", - "setting_id": "981140900", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual BKit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6", - "0.6" - ] + "name": "Snapmaker A250 Dual BKit (0.6 nozzle)", + "setting_id": "981140900", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_bk", + "printer_model": "Snapmaker A250 Dual BKit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6", + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.8 nozzle).json index 0183191bdb..b938a00d3c 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit (0.8 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual BKit (0.8 nozzle)", - "inherits": "fdm_a250_dual_bk", - "from": "system", - "setting_id": "4072267318", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual BKit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8", - "0.8" - ] + "name": "Snapmaker A250 Dual BKit (0.8 nozzle)", + "setting_id": "4072267318", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_bk", + "printer_model": "Snapmaker A250 Dual BKit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8", + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit.json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit.json index 7e91ff0d08..4d353c996d 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual BKit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A250 Dual BKit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "1463587605", - "bed_model": "Snapmaker A250_bed.stl", - "bed_texture": "Snapmaker A250 Dual_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A250 Dual BKit", + "url": "https://github.com/macdylan", + "model_id": "1463587605", + "bed_model": "Snapmaker A250_bed.stl", + "bed_texture": "Snapmaker A250 Dual_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.2 nozzle).json index 026efe9e8d..6fad47bacb 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.2 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "inherits": "fdm_a250_dual_qs_bk", - "from": "system", - "setting_id": "1173309402", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual QS+B Kit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2", - "0.2" - ] + "name": "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "setting_id": "1173309402", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_qs_bk", + "printer_model": "Snapmaker A250 Dual QS+B Kit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2", + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.4 nozzle).json index 3b84aa846f..64560104bc 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "inherits": "fdm_a250_dual_qs_bk", - "from": "system", - "setting_id": "922041936", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual QS+B Kit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4", - "0.4" - ] + "name": "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "setting_id": "922041936", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_qs_bk", + "printer_model": "Snapmaker A250 Dual QS+B Kit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4", + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.6 nozzle).json index eb4c66bf1a..c61616bf2b 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.6 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "inherits": "fdm_a250_dual_qs_bk", - "from": "system", - "setting_id": "402855638", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual QS+B Kit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6", - "0.6" - ] + "name": "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "setting_id": "402855638", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_qs_bk", + "printer_model": "Snapmaker A250 Dual QS+B Kit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6", + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.8 nozzle).json index 6f898ee569..74c02a1699 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit (0.8 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "inherits": "fdm_a250_dual_qs_bk", - "from": "system", - "setting_id": "3502361924", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual QS+B Kit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8", - "0.8" - ] + "name": "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "setting_id": "3502361924", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_qs_bk", + "printer_model": "Snapmaker A250 Dual QS+B Kit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8", + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit.json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit.json index b98defeaa8..177c6ce1f3 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QS+B Kit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A250 Dual QS+B Kit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "3396626756", - "bed_model": "Snapmaker A250_bed.stl", - "bed_texture": "Snapmaker A250 Dual_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A250 Dual QS+B Kit", + "url": "https://github.com/macdylan", + "model_id": "3396626756", + "bed_model": "Snapmaker A250_bed.stl", + "bed_texture": "Snapmaker A250 Dual_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.2 nozzle).json index 84e3751c2c..ce6885b619 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.2 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "inherits": "fdm_a250_dual_qs", - "from": "system", - "setting_id": "2546842776", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual QSKit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2", - "0.2" - ] + "name": "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "setting_id": "2546842776", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_qs", + "printer_model": "Snapmaker A250 Dual QSKit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2", + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.4 nozzle).json index d74eba60fb..879f2e0e37 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "inherits": "fdm_a250_dual_qs", - "from": "system", - "setting_id": "3839345938", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual QSKit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4", - "0.4" - ] + "name": "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "setting_id": "3839345938", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_qs", + "printer_model": "Snapmaker A250 Dual QSKit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4", + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.6 nozzle).json index 6eef7ea929..2cba0e7bb5 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.6 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "inherits": "fdm_a250_dual_qs", - "from": "system", - "setting_id": "3391221140", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual QSKit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6", - "0.6" - ] + "name": "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "setting_id": "3391221140", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_qs", + "printer_model": "Snapmaker A250 Dual QSKit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6", + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.8 nozzle).json index 695ea08c76..dffe1deaab 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit (0.8 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "inherits": "fdm_a250_dual_qs", - "from": "system", - "setting_id": "48444934", - "instantiation": "true", - "printer_model": "Snapmaker A250 Dual QSKit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8", - "0.8" - ] + "name": "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "setting_id": "48444934", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_dual_qs", + "printer_model": "Snapmaker A250 Dual QSKit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8", + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit.json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit.json index a99e319724..ebf2d3524b 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual QSKit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A250 Dual QSKit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "2661871200", - "bed_model": "Snapmaker A250_bed.stl", - "bed_texture": "Snapmaker A250 Dual_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A250 Dual QSKit", + "url": "https://github.com/macdylan", + "model_id": "2661871200", + "bed_model": "Snapmaker A250_bed.stl", + "bed_texture": "Snapmaker A250 Dual_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual.json b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual.json index d32765423e..2e655df13a 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 Dual.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A250 Dual", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "2728546690", - "bed_model": "Snapmaker A250_bed.stl", - "bed_texture": "Snapmaker A250 Dual_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A250 Dual", + "url": "https://github.com/macdylan", + "model_id": "2728546690", + "bed_model": "Snapmaker A250_bed.stl", + "bed_texture": "Snapmaker A250 Dual_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.2 nozzle).json index 4c7b25e01c..7730efb8e2 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.2 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "inherits": "fdm_a250_qs_bk", - "from": "system", - "setting_id": "302401596", - "instantiation": "true", - "printer_model": "Snapmaker A250 QS+B Kit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2" - ] + "name": "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "setting_id": "302401596", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_qs_bk", + "printer_model": "Snapmaker A250 QS+B Kit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.4 nozzle).json index 916c13e994..dbb4414dba 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.4 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "inherits": "fdm_a250_qs_bk", - "from": "system", - "setting_id": "1629237686", - "instantiation": "true", - "printer_model": "Snapmaker A250 QS+B Kit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4" - ] + "name": "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "setting_id": "1629237686", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_qs_bk", + "printer_model": "Snapmaker A250 QS+B Kit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.6 nozzle).json index 048c3ee2c9..75fb433133 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.6 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "inherits": "fdm_a250_qs_bk", - "from": "system", - "setting_id": "1340741936", - "instantiation": "true", - "printer_model": "Snapmaker A250 QS+B Kit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6" - ] + "name": "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "setting_id": "1340741936", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_qs_bk", + "printer_model": "Snapmaker A250 QS+B Kit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.8 nozzle).json index a58ccb026a..eec100468c 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit (0.8 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "inherits": "fdm_a250_qs_bk", - "from": "system", - "setting_id": "2267595426", - "instantiation": "true", - "printer_model": "Snapmaker A250 QS+B Kit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8" - ] + "name": "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "setting_id": "2267595426", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_qs_bk", + "printer_model": "Snapmaker A250 QS+B Kit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit.json b/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit.json index 49ff3b7b25..5385dfbb62 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 QS+B Kit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A250 QS+B Kit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "3626883798", - "bed_model": "Snapmaker A250_bed.stl", - "bed_texture": "Snapmaker A250_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A250 QS+B Kit", + "url": "https://github.com/macdylan", + "model_id": "3626883798", + "bed_model": "Snapmaker A250_bed.stl", + "bed_texture": "Snapmaker A250_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.2 nozzle).json index 4aef8acfc1..a05fcdb075 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.2 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 QSKit (0.2 nozzle)", - "inherits": "fdm_a250_qs", - "from": "system", - "setting_id": "2572320030", - "instantiation": "true", - "printer_model": "Snapmaker A250 QSKit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2" - ] + "name": "Snapmaker A250 QSKit (0.2 nozzle)", + "setting_id": "2572320030", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_qs", + "printer_model": "Snapmaker A250 QSKit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.4 nozzle).json index 64b4c1696e..795d74095d 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.4 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 QSKit (0.4 nozzle)", - "inherits": "fdm_a250_qs", - "from": "system", - "setting_id": "3930588308", - "instantiation": "true", - "printer_model": "Snapmaker A250 QSKit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4" - ] + "name": "Snapmaker A250 QSKit (0.4 nozzle)", + "setting_id": "3930588308", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_qs", + "printer_model": "Snapmaker A250 QSKit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.6 nozzle).json index 770a7c3ad8..1da33f76b5 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.6 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 QSKit (0.6 nozzle)", - "inherits": "fdm_a250_qs", - "from": "system", - "setting_id": "3300797458", - "instantiation": "true", - "printer_model": "Snapmaker A250 QSKit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6" - ] + "name": "Snapmaker A250 QSKit (0.6 nozzle)", + "setting_id": "3300797458", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_qs", + "printer_model": "Snapmaker A250 QSKit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.8 nozzle).json index 2c9c5943e8..0004720c56 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit (0.8 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A250 QSKit (0.8 nozzle)", - "inherits": "fdm_a250_qs", - "from": "system", - "setting_id": "209516416", - "instantiation": "true", - "printer_model": "Snapmaker A250 QSKit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8" - ] + "name": "Snapmaker A250 QSKit (0.8 nozzle)", + "setting_id": "209516416", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a250_qs", + "printer_model": "Snapmaker A250 QSKit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit.json b/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit.json index 399364ade1..06a06c068f 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250 QSKit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A250 QSKit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "3817522582", - "bed_model": "Snapmaker A250_bed.stl", - "bed_texture": "Snapmaker A250_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A250 QSKit", + "url": "https://github.com/macdylan", + "model_id": "3817522582", + "bed_model": "Snapmaker A250_bed.stl", + "bed_texture": "Snapmaker A250_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A250.json b/resources/profiles/Snapmaker/machine/Snapmaker A250.json index 0cbd448e0c..ee02048be1 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A250.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A250.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A250", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "261851393", - "bed_model": "Snapmaker A250_bed.stl", - "bed_texture": "Snapmaker A250_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A250", + "url": "https://github.com/macdylan", + "model_id": "261851393", + "bed_model": "Snapmaker A250_bed.stl", + "bed_texture": "Snapmaker A250_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.2 nozzle).json index 3952b89871..deb7ff42bb 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.2 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 (0.2 nozzle)", - "inherits": "fdm_a350", - "from": "system", - "setting_id": "703292831", - "instantiation": "true", - "printer_model": "Snapmaker A350", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2" - ] + "name": "Snapmaker A350 (0.2 nozzle)", + "setting_id": "703292831", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350", + "printer_model": "Snapmaker A350", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.4 nozzle).json index aa904ea905..29e402b25d 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.4 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 (0.4 nozzle)", - "inherits": "fdm_a350", - "from": "system", - "setting_id": "1525750805", - "instantiation": "true", - "printer_model": "Snapmaker A350", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4" - ] + "name": "Snapmaker A350 (0.4 nozzle)", + "setting_id": "1525750805", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350", + "printer_model": "Snapmaker A350", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.6 nozzle).json index 36c17f734b..35aed17cfc 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.6 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 (0.6 nozzle)", - "inherits": "fdm_a350", - "from": "system", - "setting_id": "1946629267", - "instantiation": "true", - "printer_model": "Snapmaker A350", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6" - ] + "name": "Snapmaker A350 (0.6 nozzle)", + "setting_id": "1946629267", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350", + "printer_model": "Snapmaker A350", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.8 nozzle).json index 474110370b..83604ad267 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 (0.8 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 (0.8 nozzle)", - "inherits": "fdm_a350", - "from": "system", - "setting_id": "3167088385", - "instantiation": "true", - "printer_model": "Snapmaker A350", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8" - ] + "name": "Snapmaker A350 (0.8 nozzle)", + "setting_id": "3167088385", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350", + "printer_model": "Snapmaker A350", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.2 nozzle).json index 43e3a5845e..c785a1315a 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.2 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 BKit (0.2 nozzle)", - "inherits": "fdm_a350_bk", - "from": "system", - "setting_id": "3154404158", - "instantiation": "true", - "printer_model": "Snapmaker A350 BKit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2" - ] + "name": "Snapmaker A350 BKit (0.2 nozzle)", + "setting_id": "3154404158", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_bk", + "printer_model": "Snapmaker A350 BKit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.4 nozzle).json index ea8d84bbae..941bf35c7d 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.4 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 BKit (0.4 nozzle)", - "inherits": "fdm_a350_bk", - "from": "system", - "setting_id": "3474856628", - "instantiation": "true", - "printer_model": "Snapmaker A350 BKit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4" - ] + "name": "Snapmaker A350 BKit (0.4 nozzle)", + "setting_id": "3474856628", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_bk", + "printer_model": "Snapmaker A350 BKit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.6 nozzle).json index 01c4461049..59809d5f8e 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.6 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 BKit (0.6 nozzle)", - "inherits": "fdm_a350_bk", - "from": "system", - "setting_id": "3790090802", - "instantiation": "true", - "printer_model": "Snapmaker A350 BKit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6" - ] + "name": "Snapmaker A350 BKit (0.6 nozzle)", + "setting_id": "3790090802", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_bk", + "printer_model": "Snapmaker A350 BKit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.8 nozzle).json index d987f973e2..f23011008c 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit (0.8 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 BKit (0.8 nozzle)", - "inherits": "fdm_a350_bk", - "from": "system", - "setting_id": "690678176", - "instantiation": "true", - "printer_model": "Snapmaker A350 BKit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8" - ] + "name": "Snapmaker A350 BKit (0.8 nozzle)", + "setting_id": "690678176", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_bk", + "printer_model": "Snapmaker A350 BKit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit.json b/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit.json index 7a91222e63..55d9b2301b 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 BKit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A350 BKit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "3190019076", - "bed_model": "Snapmaker A350_bed.stl", - "bed_texture": "Snapmaker A350_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A350 BKit", + "url": "https://github.com/macdylan", + "model_id": "3190019076", + "bed_model": "Snapmaker A350_bed.stl", + "bed_texture": "Snapmaker A350_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.2 nozzle).json index 0514293e48..194eb60329 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.2 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual (0.2 nozzle)", - "inherits": "fdm_a350_dual", - "from": "system", - "setting_id": "1355319715", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2", - "0.2" - ] + "name": "Snapmaker A350 Dual (0.2 nozzle)", + "setting_id": "1355319715", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual", + "printer_model": "Snapmaker A350 Dual", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2", + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.4 nozzle).json index 3cc6855979..d835acf1a0 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual (0.4 nozzle)", - "inherits": "fdm_a350_dual", - "from": "system", - "setting_id": "601026601", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4", - "0.4" - ] + "name": "Snapmaker A350 Dual (0.4 nozzle)", + "setting_id": "601026601", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual", + "printer_model": "Snapmaker A350 Dual", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4", + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.6 nozzle).json index a90a82ac7c..02b9336c2e 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.6 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual (0.6 nozzle)", - "inherits": "fdm_a350_dual", - "from": "system", - "setting_id": "220518575", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6", - "0.6" - ] + "name": "Snapmaker A350 Dual (0.6 nozzle)", + "setting_id": "220518575", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual", + "printer_model": "Snapmaker A350 Dual", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6", + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.8 nozzle).json index 5125c4eff2..dbb4a6cade 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual (0.8 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual (0.8 nozzle)", - "inherits": "fdm_a350_dual", - "from": "system", - "setting_id": "3320185661", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8", - "0.8" - ] + "name": "Snapmaker A350 Dual (0.8 nozzle)", + "setting_id": "3320185661", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual", + "printer_model": "Snapmaker A350 Dual", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8", + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.2 nozzle).json index 9e96685d97..eb0dccbbc2 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.2 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual BKit (0.2 nozzle)", - "inherits": "fdm_a350_dual_bk", - "from": "system", - "setting_id": "2156589631", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual BKit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2", - "0.2" - ] + "name": "Snapmaker A350 Dual BKit (0.2 nozzle)", + "setting_id": "2156589631", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_bk", + "printer_model": "Snapmaker A350 Dual BKit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2", + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.4 nozzle).json index ed7e04f48f..8148ed097b 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual BKit (0.4 nozzle)", - "inherits": "fdm_a350_dual_bk", - "from": "system", - "setting_id": "4086336437", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual BKit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4", - "0.4" - ] + "name": "Snapmaker A350 Dual BKit (0.4 nozzle)", + "setting_id": "4086336437", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_bk", + "printer_model": "Snapmaker A350 Dual BKit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4", + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.6 nozzle).json index f8f8280102..e589dcc894 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.6 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual BKit (0.6 nozzle)", - "inherits": "fdm_a350_dual_bk", - "from": "system", - "setting_id": "3714491187", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual BKit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6", - "0.6" - ] + "name": "Snapmaker A350 Dual BKit (0.6 nozzle)", + "setting_id": "3714491187", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_bk", + "printer_model": "Snapmaker A350 Dual BKit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6", + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.8 nozzle).json index 0b0401fab7..2b5f34c71f 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit (0.8 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual BKit (0.8 nozzle)", - "inherits": "fdm_a350_dual_bk", - "from": "system", - "setting_id": "363100321", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual BKit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8", - "0.8" - ] + "name": "Snapmaker A350 Dual BKit (0.8 nozzle)", + "setting_id": "363100321", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_bk", + "printer_model": "Snapmaker A350 Dual BKit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8", + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit.json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit.json index c02e88caac..0ba9b50af7 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual BKit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A350 Dual BKit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "2326416016", - "bed_model": "Snapmaker A350_bed.stl", - "bed_texture": "Snapmaker A350 Dual_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A350 Dual BKit", + "url": "https://github.com/macdylan", + "model_id": "2326416016", + "bed_model": "Snapmaker A350_bed.stl", + "bed_texture": "Snapmaker A350 Dual_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.2 nozzle).json index 145b7e04d5..1edb00c17a 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.2 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", - "inherits": "fdm_a350_dual_qs_bk", - "from": "system", - "setting_id": "2039456978", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual QS+B Kit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2", - "0.2" - ] + "name": "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)", + "setting_id": "2039456978", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_qs_bk", + "printer_model": "Snapmaker A350 Dual QS+B Kit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2", + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.4 nozzle).json index a2b2c9e13c..cf5552f923 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", - "inherits": "fdm_a350_dual_qs_bk", - "from": "system", - "setting_id": "177593688", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual QS+B Kit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4", - "0.4" - ] + "name": "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)", + "setting_id": "177593688", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_qs_bk", + "printer_model": "Snapmaker A350 Dual QS+B Kit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4", + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.6 nozzle).json index 03d439d155..165ba09dea 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.6 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", - "inherits": "fdm_a350_dual_qs_bk", - "from": "system", - "setting_id": "610530782", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual QS+B Kit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6", - "0.6" - ] + "name": "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)", + "setting_id": "610530782", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_qs_bk", + "printer_model": "Snapmaker A350 Dual QS+B Kit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6", + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.8 nozzle).json index 4e3da9c966..ba996f2e3b 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit (0.8 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", - "inherits": "fdm_a350_dual_qs_bk", - "from": "system", - "setting_id": "3969986124", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual QS+B Kit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8", - "0.8" - ] + "name": "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)", + "setting_id": "3969986124", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_qs_bk", + "printer_model": "Snapmaker A350 Dual QS+B Kit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8", + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit.json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit.json index 6f011c72fe..5bee6ae40d 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QS+B Kit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A350 Dual QS+B Kit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "1305649671", - "bed_model": "Snapmaker A350_bed.stl", - "bed_texture": "Snapmaker A350 Dual_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A350 Dual QS+B Kit", + "url": "https://github.com/macdylan", + "model_id": "1305649671", + "bed_model": "Snapmaker A350_bed.stl", + "bed_texture": "Snapmaker A350 Dual_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.2 nozzle).json index afec518cb4..adc4930a8b 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.2 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "inherits": "fdm_a350_dual_qs", - "from": "system", - "setting_id": "4181829593", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual QSKit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2", - "0.2" - ] + "name": "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "setting_id": "4181829593", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_qs", + "printer_model": "Snapmaker A350 Dual QSKit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2", + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.4 nozzle).json index 8ca5d5971c..59907674d8 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "inherits": "fdm_a350_dual_qs", - "from": "system", - "setting_id": "2321276499", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual QSKit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4", - "0.4" - ] + "name": "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "setting_id": "2321276499", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_qs", + "printer_model": "Snapmaker A350 Dual QSKit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4", + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.6 nozzle).json index 974bb031e7..42ba77b829 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.6 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "inherits": "fdm_a350_dual_qs", - "from": "system", - "setting_id": "2762864341", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual QSKit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6", - "0.6" - ] + "name": "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "setting_id": "2762864341", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_qs", + "printer_model": "Snapmaker A350 Dual QSKit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6", + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.8 nozzle).json index 5969c6090b..e5eff464b6 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit (0.8 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "inherits": "fdm_a350_dual_qs", - "from": "system", - "setting_id": "1819225415", - "instantiation": "true", - "printer_model": "Snapmaker A350 Dual QSKit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8", - "0.8" - ] + "name": "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "setting_id": "1819225415", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_dual_qs", + "printer_model": "Snapmaker A350 Dual QSKit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8", + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit.json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit.json index 41da149451..a8e08120cf 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual QSKit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A350 Dual QSKit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "61280022", - "bed_model": "Snapmaker A350_bed.stl", - "bed_texture": "Snapmaker A350 Dual_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A350 Dual QSKit", + "url": "https://github.com/macdylan", + "model_id": "61280022", + "bed_model": "Snapmaker A350_bed.stl", + "bed_texture": "Snapmaker A350 Dual_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual.json b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual.json index 81852a5ce8..a7c93c1eae 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 Dual.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A350 Dual", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "1846038812", - "bed_model": "Snapmaker A350_bed.stl", - "bed_texture": "Snapmaker A350 Dual_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A350 Dual", + "url": "https://github.com/macdylan", + "model_id": "1846038812", + "bed_model": "Snapmaker A350_bed.stl", + "bed_texture": "Snapmaker A350 Dual_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.2 nozzle).json index b796fbd7e6..7e774a0cdc 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.2 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "inherits": "fdm_a350_qs_bk", - "from": "system", - "setting_id": "3079526450", - "instantiation": "true", - "printer_model": "Snapmaker A350 QS+B Kit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2" - ] + "name": "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "setting_id": "3079526450", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_qs_bk", + "printer_model": "Snapmaker A350 QS+B Kit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.4 nozzle).json index a891eaf6b1..dae4dce720 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.4 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "inherits": "fdm_a350_qs_bk", - "from": "system", - "setting_id": "3298271672", - "instantiation": "true", - "printer_model": "Snapmaker A350 QS+B Kit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4" - ] + "name": "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "setting_id": "3298271672", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_qs_bk", + "printer_model": "Snapmaker A350 QS+B Kit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.6 nozzle).json index 2f28f046b2..9b99e5d97f 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.6 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "inherits": "fdm_a350_qs_bk", - "from": "system", - "setting_id": "3932260670", - "instantiation": "true", - "printer_model": "Snapmaker A350 QS+B Kit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6" - ] + "name": "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "setting_id": "3932260670", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_qs_bk", + "printer_model": "Snapmaker A350 QS+B Kit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.8 nozzle).json index 9cdd968f00..356a03b517 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit (0.8 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "inherits": "fdm_a350_qs_bk", - "from": "system", - "setting_id": "581128876", - "instantiation": "true", - "printer_model": "Snapmaker A350 QS+B Kit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8" - ] + "name": "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "setting_id": "581128876", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_qs_bk", + "printer_model": "Snapmaker A350 QS+B Kit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit.json b/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit.json index c3c8dc9003..19f60cfa36 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 QS+B Kit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A350 QS+B Kit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "1133024953", - "bed_model": "Snapmaker A350_bed.stl", - "bed_texture": "Snapmaker A350_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A350 QS+B Kit", + "url": "https://github.com/macdylan", + "model_id": "1133024953", + "bed_model": "Snapmaker A350_bed.stl", + "bed_texture": "Snapmaker A350_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.2 nozzle).json index 9284494db3..30fb4c4975 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.2 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 QSKit (0.2 nozzle)", - "inherits": "fdm_a350_qs", - "from": "system", - "setting_id": "2390366686", - "instantiation": "true", - "printer_model": "Snapmaker A350 QSKit", - "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2" - ] + "name": "Snapmaker A350 QSKit (0.2 nozzle)", + "setting_id": "2390366686", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_qs", + "printer_model": "Snapmaker A350 QSKit", + "default_print_profile": "0.14 Standard @Snapmaker (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.4 nozzle).json index 18abba9490..3150e0df8e 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.4 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 QSKit (0.4 nozzle)", - "inherits": "fdm_a350_qs", - "from": "system", - "setting_id": "4250951764", - "instantiation": "true", - "printer_model": "Snapmaker A350 QSKit", - "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4" - ] + "name": "Snapmaker A350 QSKit (0.4 nozzle)", + "setting_id": "4250951764", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_qs", + "printer_model": "Snapmaker A350 QSKit", + "default_print_profile": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.6 nozzle).json index 465f69f156..5f4b5abd0d 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.6 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 QSKit (0.6 nozzle)", - "inherits": "fdm_a350_qs", - "from": "system", - "setting_id": "3549841618", - "instantiation": "true", - "printer_model": "Snapmaker A350 QSKit", - "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6" - ] + "name": "Snapmaker A350 QSKit (0.6 nozzle)", + "setting_id": "3549841618", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_qs", + "printer_model": "Snapmaker A350 QSKit", + "default_print_profile": "0.18 Standard @Snapmaker (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.8 nozzle).json index aace8a863e..bd4c9bec85 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit (0.8 nozzle).json @@ -1,20 +1,20 @@ { - "type": "machine", - "name": "Snapmaker A350 QSKit (0.8 nozzle)", - "inherits": "fdm_a350_qs", - "from": "system", - "setting_id": "458527552", - "instantiation": "true", - "printer_model": "Snapmaker A350 QSKit", - "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8" - ] + "name": "Snapmaker A350 QSKit (0.8 nozzle)", + "setting_id": "458527552", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a350_qs", + "printer_model": "Snapmaker A350 QSKit", + "default_print_profile": "0.24 Standard @Snapmaker (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit.json b/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit.json index d284cb09b0..fb85033aa3 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350 QSKit.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A350 QSKit", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "4109488597", - "bed_model": "Snapmaker A350_bed.stl", - "bed_texture": "Snapmaker A350_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A350 QSKit", + "url": "https://github.com/macdylan", + "model_id": "4109488597", + "bed_model": "Snapmaker A350_bed.stl", + "bed_texture": "Snapmaker A350_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker A350.json b/resources/profiles/Snapmaker/machine/Snapmaker A350.json index e5bf7d21e1..1752d80275 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker A350.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker A350.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker A350", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "240771894", - "bed_model": "Snapmaker A350_bed.stl", - "bed_texture": "Snapmaker A350_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker A350", + "url": "https://github.com/macdylan", + "model_id": "240771894", + "bed_model": "Snapmaker A350_bed.stl", + "bed_texture": "Snapmaker A350_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.2 nozzle).json index f5d7617a81..0f42b93bbb 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.2 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker Artisan (0.2 nozzle)", - "inherits": "fdm_a400", - "from": "system", - "setting_id": "767951383", - "instantiation": "true", - "printer_model": "Snapmaker Artisan", - "default_print_profile": "0.14 Standard @Snapmaker Artisan (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2", - "0.2" - ] + "name": "Snapmaker Artisan (0.2 nozzle)", + "setting_id": "767951383", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a400", + "printer_model": "Snapmaker Artisan", + "default_print_profile": "0.14 Standard @Snapmaker Artisan (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2", + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.4 nozzle).json index e2567901dc..c5c4a6aaca 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker Artisan (0.4 nozzle)", - "inherits": "fdm_a400", - "from": "system", - "setting_id": "1591507869", - "instantiation": "true", - "printer_model": "Snapmaker Artisan", - "default_print_profile": "0.16 Optimal @Snapmaker Artisan (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4", - "0.4" - ] + "name": "Snapmaker Artisan (0.4 nozzle)", + "setting_id": "1591507869", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a400", + "printer_model": "Snapmaker Artisan", + "default_print_profile": "0.16 Optimal @Snapmaker Artisan (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4", + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.6 nozzle).json index 6698683665..892223ec79 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.6 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker Artisan (0.6 nozzle)", - "inherits": "fdm_a400", - "from": "system", - "setting_id": "1881821979", - "instantiation": "true", - "printer_model": "Snapmaker Artisan", - "default_print_profile": "0.18 Standard @Snapmaker Artisan (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6", - "0.6" - ] + "name": "Snapmaker Artisan (0.6 nozzle)", + "setting_id": "1881821979", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a400", + "printer_model": "Snapmaker Artisan", + "default_print_profile": "0.18 Standard @Snapmaker Artisan (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6", + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.8 nozzle).json index 161d1ce1c5..0277708e84 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker Artisan (0.8 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker Artisan (0.8 nozzle)", - "inherits": "fdm_a400", - "from": "system", - "setting_id": "3102247049", - "instantiation": "true", - "printer_model": "Snapmaker Artisan", - "default_print_profile": "0.24 Standard @Snapmaker Artisan (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8", - "0.8" - ] + "name": "Snapmaker Artisan (0.8 nozzle)", + "setting_id": "3102247049", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_a400", + "printer_model": "Snapmaker Artisan", + "default_print_profile": "0.24 Standard @Snapmaker Artisan (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8", + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker Artisan.json b/resources/profiles/Snapmaker/machine/Snapmaker Artisan.json index 46b621cc37..84d08a9e57 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker Artisan.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker Artisan.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker Artisan", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "797581801", - "bed_model": "Snapmaker Artisan_bed.stl", - "bed_texture": "Snapmaker Artisan_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker Artisan", + "url": "https://github.com/macdylan", + "model_id": "797581801", + "bed_model": "Snapmaker Artisan_bed.stl", + "bed_texture": "Snapmaker Artisan_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.2 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.2 nozzle).json index 950d947221..42443e55c4 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.2 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker J1 (0.2 nozzle)", - "inherits": "fdm_idex", - "from": "system", - "setting_id": "773945936", - "instantiation": "true", - "printer_model": "Snapmaker J1", - "default_print_profile": "0.14 Standard @Snapmaker J1 (0.2 nozzle)", - "printer_variant": "0.2", - "max_layer_height": [ - "0.14" - ], - "min_layer_height": [ - "0.06" - ], - "nozzle_diameter": [ - "0.2", - "0.2" - ] + "name": "Snapmaker J1 (0.2 nozzle)", + "setting_id": "773945936", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_idex", + "printer_model": "Snapmaker J1", + "default_print_profile": "0.14 Standard @Snapmaker J1 (0.2 nozzle)", + "printer_variant": "0.2", + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "nozzle_diameter": [ + "0.2", + "0.2" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.4 nozzle).json index f36da0edfe..4f7038976f 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker J1 (0.4 nozzle)", - "inherits": "fdm_idex", - "from": "system", - "setting_id": "1564148698", - "instantiation": "true", - "printer_model": "Snapmaker J1", - "default_print_profile": "0.16 Optimal @Snapmaker J1 (0.4 nozzle)", - "printer_variant": "0.4", - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "nozzle_diameter": [ - "0.4", - "0.4" - ] + "name": "Snapmaker J1 (0.4 nozzle)", + "setting_id": "1564148698", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_idex", + "printer_model": "Snapmaker J1", + "default_print_profile": "0.16 Optimal @Snapmaker J1 (0.4 nozzle)", + "printer_variant": "0.4", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "nozzle_diameter": [ + "0.4", + "0.4" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.6 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.6 nozzle).json index d5be80bfb4..281a17584a 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.6 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker J1 (0.6 nozzle)", - "inherits": "fdm_idex", - "from": "system", - "setting_id": "1942825820", - "instantiation": "true", - "printer_model": "Snapmaker J1", - "default_print_profile": "0.18 Standard @Snapmaker J1 (0.6 nozzle)", - "printer_variant": "0.6", - "max_layer_height": [ - "0.42" - ], - "min_layer_height": [ - "0.18" - ], - "nozzle_diameter": [ - "0.6", - "0.6" - ] + "name": "Snapmaker J1 (0.6 nozzle)", + "setting_id": "1942825820", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_idex", + "printer_model": "Snapmaker J1", + "default_print_profile": "0.18 Standard @Snapmaker J1 (0.6 nozzle)", + "printer_variant": "0.6", + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.18" + ], + "nozzle_diameter": [ + "0.6", + "0.6" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.8 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.8 nozzle).json index e986517f65..663599db38 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker J1 (0.8 nozzle).json @@ -1,21 +1,21 @@ { - "type": "machine", - "name": "Snapmaker J1 (0.8 nozzle)", - "inherits": "fdm_idex", - "from": "system", - "setting_id": "3138384078", - "instantiation": "true", - "printer_model": "Snapmaker J1", - "default_print_profile": "0.24 Standard @Snapmaker J1 (0.8 nozzle)", - "printer_variant": "0.8", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.24" - ], - "nozzle_diameter": [ - "0.8", - "0.8" - ] + "name": "Snapmaker J1 (0.8 nozzle)", + "setting_id": "3138384078", + "type": "machine", + "from": "system", + "instantiation": "true", + "inherits": "fdm_idex", + "printer_model": "Snapmaker J1", + "default_print_profile": "0.24 Standard @Snapmaker J1 (0.8 nozzle)", + "printer_variant": "0.8", + "max_layer_height": [ + "0.48" + ], + "min_layer_height": [ + "0.24" + ], + "nozzle_diameter": [ + "0.8", + "0.8" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker J1.json b/resources/profiles/Snapmaker/machine/Snapmaker J1.json index 5017724643..15b5420309 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker J1.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker J1.json @@ -1,11 +1,11 @@ { - "type": "machine_model", - "name": "Snapmaker J1", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "https://github.com/macdylan", - "model_id": "199828459", - "bed_model": "Snapmaker J1_bed.stl", - "bed_texture": "Snapmaker J1_texture.svg", - "nozzle_diameter": "0.2;0.4;0.6;0.8" + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker J1", + "url": "https://github.com/macdylan", + "model_id": "199828459", + "bed_model": "Snapmaker J1_bed.stl", + "bed_texture": "Snapmaker J1_texture.svg", + "nozzle_diameter": "0.2;0.4;0.6;0.8" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4 nozzle).json index 3c7d6fa7aa..ec350bc94b 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4 nozzle).json @@ -1,14 +1,20 @@ { "type": "machine", + "setting_id": "SM_U1", "name": "Snapmaker U1 (0.4 nozzle)", - "inherits": "fdm_U1", "from": "system", - "setting_id": "1591507869", "instantiation": "true", + "inherits": "fdm_U1", "printer_model": "Snapmaker U1", "printer_variant": "0.4", "auxiliary_fan": "1", - "change_filament_gcode": "; Change Tool[previous_extruder] -> Tool[next_extruder] (layer [layer_num])\n{\nlocal max_speed_toolchange = 350.0;\nlocal wait_for_extruder_temp = true;\nposition[2] = position[2] + 2.0;\n\nlocal speed_toolchange = max_speed_toolchange;\nif travel_speed < max_speed_toolchange then\n speed_toolchange = travel_speed;\nendif\n\"G91\nG0 Z1.5 F600\nG90\n\";\n\"G1 F\" + (speed_toolchange * 60) + \"\n\";\nif wait_for_extruder_temp and not((layer_num < 0) and (next_extruder == initial_tool)) then\n \"\n\";\n \"; \" + layer_num + \"\n\";\n if layer_num == 0 then\n \"M109 S\" + first_layer_temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n else\n \"M109 S\" + temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n endif\nendif\n\"T\" + next_extruder + \"\n\";\n}\nM400\n{if filament_type[next_extruder] == \"PVA\"}\nSET_VELOCITY_LIMIT ACCEL=3000\n{else}\n{endif}", + "change_filament_gcode": "; Change Tool[previous_extruder] -> Tool[next_extruder] (layer [layer_num])\n{\nlocal max_speed_toolchange = 350.0;\nlocal wait_for_extruder_temp = true;\nposition[2] = position[2] + 2.0;\nlocal speed_toolchange = max_speed_toolchange;\nif travel_speed < max_speed_toolchange then\n speed_toolchange = travel_speed;\nendif\n\"G91\nG1 Z1.5 F1800\nG90\n\";\n\"G1 F\" + (speed_toolchange * 60) + \"\n\";\nif wait_for_extruder_temp and not((layer_num < 0) and (next_extruder == initial_tool)) then\n \"\n\";\n \"; \" + layer_num + \"\n\";\n if layer_num == 0 then\n \"M109 S\" + first_layer_temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n else\n \"M109 S\" + temperature[next_extruder] + \" T\" + next_extruder + \"\n\";\n endif\nendif\n\"T\" + next_extruder + \"\n\";\nif filament_type[next_extruder] == \"PVA\" then\n\"SET_VELOCITY_LIMIT ACCEL=3000\n\";\nelse\nendif\nif previous_extruder != next_extruder and initial_extruder != next_extruder then\n\"SM_PRINT_PREEXTRUDE_FILAMENT INDEX=\" + next_extruder + \"\n\";\nendif\n\"G90\n\";\n}", + "deretraction_speed": [ + "30", + "30", + "30", + "30" + ], "extruder_colour": [ "#FCE94F", "#FCE94F", @@ -22,6 +28,7 @@ "0x0" ], "host_type": "octoprint", + "is_custom_defined": "0", "long_retractions_when_cut": [ "0", "0", @@ -41,6 +48,7 @@ "20", "12" ], + "machine_start_gcode": "\n;===== date: 20251010 =====================\n\nPRINT_START\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count}\nSET_PRINT_STATS_INFO CURRENT_LAYER=0\nTIMELAPSE_START\nM140 S{bed_temperature_initial_layer_single}\nM104 T{initial_extruder} S140\nM204 S10000\n\n\n;===== 取放头检测 =================\nG28 X Y\nSM_PRINT_CHECK_SWITCH_EXTRUDER\n\n;===== 粗回零 =================\nT{initial_extruder}\nM109 T{initial_extruder} S140\nG28 Z\n\n;===== 自动进料 & 挤出流量 & 预挤出 ======================\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=1 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=0\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=0\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=2 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=1\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=1\nSM_PRINT_EXTRUDER_PREHEAT EXTRUDER=3 TEMP=140\nSM_PRINT_AUTO_FEED EXTRUDER=2\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=2\nSM_PRINT_AUTO_FEED EXTRUDER=3\nSM_PRINT_FLOW_CALIBRATE EXTRUDER=3\n\n;===== 检测钢板 =================\nT{initial_extruder}\nM106 P2 S255\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 S{nozzle_temperature[initial_extruder] - 50}\nROUGHLY_CLEAN_NOZZLE\nM104 S{nozzle_temperature[initial_extruder] - 90}\nG4 P2000\nROUGHLY_CLEAN_NOZZLE\nM107 P2\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nDETECT_BED_PLATE\n\n;===== 深度清洁喷嘴 =================\nG90\nG0 Z5 F10000\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nM109 S{nozzle_temperature[initial_extruder] - 50}\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_1\nG0 Z5 F10000\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\nFINELY_CLEAN_NOZZLE_STAGE_2\n\n;===== 精回零 =================\nM106 P2 S255\nM109 S{nozzle_temperature[initial_extruder] - 90}\nM190 S{bed_temperature_initial_layer_single}\nM107 P2\nG90\nG0 Z5 F10000\nG28 Z\n\n;===== 热床调平 =================\nBED_MESH_CALIBRATE PROBE_COUNT=11,11\n\nG90\nG1 Z1.5\nG0 X10 Y3 Z2 F18000\nM109 S{nozzle_temperature_initial_layer[initial_extruder]}\nG1 Z0.2\nM83\nG1 X110 E15 F360\nG1 Z1.5\n\nG90\nM106 S0\n", "machine_tool_change_time": "5", "max_layer_height": [ "0.32", @@ -60,14 +68,14 @@ "0.4", "0.4" ], - "nozzle_type": "hardened_steel", + "nozzle_type": "stainless_steel", "printable_area": [ - "-0.5x-1", - "270.5x-1", + "0.5x1", + "270.5x1", "270.5x271", - "-0.5x271" + "0.5x271" ], - "printable_height": "270", + "printable_height": "272", "printer_settings_id": "MyToolChanger 0.4 nozzle - Copy", "retract_before_wipe": [ "0%", @@ -76,10 +84,10 @@ "0%" ], "retract_length_toolchange": [ - "10", - "10", - "10", - "10" + "0", + "0", + "0", + "0" ], "retract_lift_above": [ "0", @@ -124,10 +132,10 @@ "18" ], "retraction_length": [ - "0.8", - "0.8", - "0.8", - "0.8" + "1.5", + "1.5", + "1.5", + "1.5" ], "retraction_minimum_travel": [ "1", @@ -136,16 +144,10 @@ "1" ], "retraction_speed": [ - "40", - "40", - "40", - "40" - ], - "deretraction_speed": [ - "35", - "35", - "35", - "35" + "30", + "30", + "30", + "30" ], "thumbnails": "48x48/PNG, 300x300/PNG", "travel_slope": [ @@ -154,6 +156,7 @@ "3", "3" ], + "version": "2.2.0.4", "wipe": [ "1", "1", @@ -192,6 +195,8 @@ ], "ramming_pressure_advance_value": "0.02", "tool_change_temprature_wait": "0", - "printer_notes": "1、修改幅面坐标,原点坐标\n2、修改换头时间,5S", - "machine_pause_gcode": "M600" + "printer_notes": "", + "machine_pause_gcode": "M600", + "default_bed_type": "Textured PEI Plate", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]\nSET_PRINT_STATS_INFO TOTAL_LAYER={total_layer_count}\nSET_PRINT_STATS_INFO CURRENT_LAYER={layer_num+1}" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/Snapmaker U1.json b/resources/profiles/Snapmaker/machine/Snapmaker U1.json index 027d088e57..601a6ab4ff 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker U1.json +++ b/resources/profiles/Snapmaker/machine/Snapmaker U1.json @@ -1,11 +1,15 @@ { - "type": "machine_model", - "name": "Snapmaker U1", - "machine_tech": "FFF", - "family": "Snapmaker", - "url": "", - "model_id": "797581801", - "bed_model": "Snapmaker U1_bed.stl", - "bed_texture": "Snapmaker U1_texture.svg", - "nozzle_diameter": "0.4" -} \ No newline at end of file + "type": "machine_model", + "machine_tech": "FFF", + "family": "Snapmaker", + "name": "Snapmaker U1", + "url": "https://github.com/macdylan", + "model_id": "SM_U1", + "bed_model": "Snapmaker U1_bed.stl", + "bed_texture": "Snapmaker U1_texture.svg", + "nozzle_diameter": "0.4" +} + + + + \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_U1.json b/resources/profiles/Snapmaker/machine/fdm_U1.json index f37ec5918a..f2a119b4a4 100644 --- a/resources/profiles/Snapmaker/machine/fdm_U1.json +++ b/resources/profiles/Snapmaker/machine/fdm_U1.json @@ -1,9 +1,9 @@ { "type": "machine", "name": "fdm_U1", - "inherits": "fdm_toolchanger", "from": "system", "instantiation": "false", + "inherits": "fdm_toolchanger", "gcode_flavor": "klipper", "single_extruder_multi_material": "0", "bed_model": "Snapmaker U1_bed.stl", @@ -148,6 +148,7 @@ "3", "3" ], + "version": "2.1.1.1", "wipe": [ "1", "1", @@ -176,13 +177,12 @@ "Normal Lift", "Normal Lift" ], - "bed_mesh_max": "267,267", - "bed_mesh_min": "3,3", "purge_in_prime_tower": "0", "machine_pause_gcode": "M601", - "change_filament_gcode": "", - "machine_start_gcode": ";===== machine: PR2 ========================\n;===== date: 20250717 =====================\nPRINT_START\n;===== 预热热床和第一个挤出头 =================\nM140 S{bed_temperature_initial_layer_single}\nM104 T{initial_extruder} S140\n\n;===== 粗回零 =================\nG28 X Y\nT{initial_extruder}\nM109 T{initial_extruder} S140\nG28 Z\nG90\nG0 Z10 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nM109 S{nozzle_temperature[initial_extruder] - 50}\nROUGHLY_CLEAN_NOZZLE_WITH_DISCARD\nM104 S{nozzle_temperature[initial_extruder] - 90}\nG4 P2000\nROUGHLY_CLEAN_NOZZLE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\n\n;===== 检测钢板 =================\nDETECT_BED_PLATE\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\n\n;===== 自动进料 ======================\nSM_PRINT_AUTO_FEED EXTRUDER=0\nSM_PRINT_AUTO_FEED EXTRUDER=1\nSM_PRINT_AUTO_FEED EXTRUDER=2\nSM_PRINT_AUTO_FEED EXTRUDER=3\n\n;===== 挤出流量 ======================\n{if (is_extruder_used[0])}\nSM_PRINT_FLOW_CALIBRATE INDEX=0 TARGET_TEMP={nozzle_temperature[0]}\n{endif}\n{if (is_extruder_used[1])}\nSM_PRINT_FLOW_CALIBRATE INDEX=1 TARGET_TEMP={nozzle_temperature[1]}\n{endif}\n{if (is_extruder_used[2])}\nSM_PRINT_FLOW_CALIBRATE INDEX=2 TARGET_TEMP={nozzle_temperature[2]}\n{endif}\n{if (is_extruder_used[3])}\nSM_PRINT_FLOW_CALIBRATE INDEX=3 TARGET_TEMP={nozzle_temperature[3]}\n{endif}\n\n;===== 取出第一个挤出头 =================\nT{initial_extruder}\nSET_VELOCITY_LIMIT ACCEL=10000\nM204 S10000\n\n;===== 深度清洁喷嘴 =================\nG90\nG0 Z10 F10000\nROUGHLY_CLEAN_NOZZLE_WITH_DISCARD\nG0 Z5 F10000\nFINELY_CLEAN_NOZZLE_STAGE_1\nG0 Z5 F10000\nROUGHLY_CLEAN_NOZZLE\nG0 Z5 F10000\nFINELY_CLEAN_NOZZLE_STAGE_2\nM83\n\n;===== 第一个挤出头降温 =================\nM109 S{nozzle_temperature[initial_extruder] - 90}\nM190 S{bed_temperature_initial_layer_single}\nM106 S0\nG90\nG0 Z5 F10000\nMOVE_TO_DISCARD_FILAMENT_POSITION\nINNER_CUTOFF_BASE_DISCARD\nINNER_ROUGHLY_CLEAN_NOZZLE_BASE_DISCARD\nINNER_ROUGHLY_CLEAN_NOZZLE_BASE_DISCARD\nMOVE_TO_XY_IDLE_POSITION_EXTRUDER\n\n;===== 精回零 =================\nG28 Z\n;===== 热床调平 =================\n; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally\n; Make sure to set ADAPTIVE to 0 otherwise Klipper will use it's own adaptive bed mesh logic\nBED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=0 ADAPTIVE_MARGIN=0\n\n;BED_MESH_CALIBRATE PROBE_COUNT=7,7\n\n\n;======== 预挤出/划线 ================\n{if (is_extruder_used[0]) and 0 != initial_extruder}\nSM_PRINT_START_LINE INDEX=0 TARGET_TEMP={nozzle_temperature_initial_layer[0]}\nM83\nM104 S{nozzle_temperature[0] - 90}\n{endif}\n\n{if (is_extruder_used[1]) and 1 != initial_extruder}\nSM_PRINT_START_LINE INDEX=1 TARGET_TEMP={nozzle_temperature_initial_layer[1]}\nM83\nM104 S{nozzle_temperature[1] - 90}\n{endif}\n\n{if (is_extruder_used[2]) and 2 != initial_extruder}\nSM_PRINT_START_LINE INDEX=2 TARGET_TEMP={nozzle_temperature_initial_layer[2]}\nM83\nM104 S{nozzle_temperature[2] - 90}\n{endif}\n\n{if (is_extruder_used[3]) and 3 != initial_extruder}\nSM_PRINT_START_LINE INDEX=3 TARGET_TEMP={nozzle_temperature_initial_layer[3]}\nM83\nM104 S{nozzle_temperature[3] - 90}\n{endif}\n\n{if (is_extruder_used[initial_extruder])}\nSM_PRINT_START_LINE INDEX={initial_extruder} TARGET_TEMP={nozzle_temperature_initial_layer[initial_extruder]}\n{endif}\nM109 S{nozzle_temperature_initial_layer[initial_extruder]} T{initial_extruder}\nM106 S0\n\nTIMELAPSE_START", + "change_filament_gcode": "", + "machine_start_gcode": "PRINT_START TOOL_TEMP={first_layer_temperature[initial_tool]} {if is_extruder_used[0]}T0_TEMP={first_layer_temperature[0]}{endif} {if is_extruder_used[1]}T1_TEMP={first_layer_temperature[1]}{endif} {if is_extruder_used[2]}T2_TEMP={first_layer_temperature[2]}{endif} {if is_extruder_used[3]}T3_TEMP={first_layer_temperature[3]}{endif} {if is_extruder_used[4]}T4_TEMP={first_layer_temperature[4]}{endif} {if is_extruder_used[5]}T5_TEMP={first_layer_temperature[5]}{endif} BED_TEMP=[first_layer_bed_temperature] TOOL=[initial_tool]\n\nM83\n; set extruder temp\n{if first_layer_temperature[0] > 0 and (is_extruder_used[0])}M104 T0 S{first_layer_temperature[0]}{endif}\n{if first_layer_temperature[1] > 0 and (is_extruder_used[1])}M104 T1 S{first_layer_temperature[1]}{endif}\n{if first_layer_temperature[2] > 0 and (is_extruder_used[2])}M104 T2 S{first_layer_temperature[2]}{endif}\n{if first_layer_temperature[3] > 0 and (is_extruder_used[3])}M104 T3 S{first_layer_temperature[3]}{endif}\n{if first_layer_temperature[4] > 0 and (is_extruder_used[4])}M104 T4 S{first_layer_temperature[4]}{endif}\n{if (is_extruder_used[0]) and initial_tool != 0}\n;\n; purge first tool\n;\nG1 F{travel_speed * 60}\nM109 T0 S{first_layer_temperature[0]}\nT0; pick the tool\nG92 E0 ; reset extruder position\n\nG0 X{(0 == 0 ? 0 : (0 == 1 ? 120 : (0 == 2 ? 180 : 300)))} Y{(0 < 4 ? 0 : 3)} Z10 F{(travel_speed * 60)} ; move close to the sheet's edge\nG0 E{if filament_multitool_ramming[0]}10{else}30{endif} X40 Z0.2 F{if filament_multitool_ramming[0]}500{else}170{endif} ; purge while moving towards the sheet\nG0 X40 E9 F800 ; continue purging and wipe the nozzle\nG0 X{40 + 3} Z{0.05} F{8000} ; wipe, move close to the bed\nG0 X{40 + 3 * 2} Z0.2 F{8000} ; wipe, move quickly away from the bed\nG1 E{- 1.5 * retract_length[0]} F2400 ; retract\n{e_retracted[0] = 1.5 * retract_length[0]} ; update slicer internal retract variable\nG92 E0 ; reset extruder position\n\nM104 S{(idle_temperature[0] == 0 ? (first_layer_temperature[0] + standby_temperature_delta) : (idle_temperature[0]))} T0\n{endif}\n{if (is_extruder_used[1]) and initial_tool != 1}\n;\n; purge second tool\n;\nG1 F{travel_speed * 60}\nM109 T1 S{first_layer_temperature[1]}\nT1; pick the tool\nG92 E0 ; reset extruder position\n\nG0 X{(1 == 0 ? 0 : (1 == 1 ? 120 : (1 == 2 ? 180 : 300)))} Y{(1 < 4 ? 0 : 3)} Z10 F{(travel_speed * 60)} ; move close to the sheet's edge\nG0 E{if filament_multitool_ramming[1]}10{else}30{endif} X120 Z0.2 F{if filament_multitool_ramming[1]}500{else}170{endif} ; purge while moving towards the sheet\nG0 X80 E9 F800 ; continue purging and wipe the nozzle\nG0 X{80 - 3} Z{0.05} F{8000} ; wipe, move close to the bed\nG0 X{80 - 3 * 2} Z0.2 F{8000} ; wipe, move quickly away from the bed\nG1 E{- 1.5 * retract_length[1]} F2400 ; retract\n{e_retracted[1] = 1.5 * retract_length[1]} ; update slicer internal retract variable\nG92 E0 ; reset extruder position\n\nM104 S{(idle_temperature[1] == 0 ? (first_layer_temperature[1] + standby_temperature_delta) : (idle_temperature[1]))} T1\n{endif}\n{if (is_extruder_used[2]) and initial_tool != 2}\n;\n; purge third tool\n;\nG1 F{travel_speed * 60}\nM109 T2 S{first_layer_temperature[2]}\nT2; pick the tool\nG92 E0 ; reset extruder position\n\nG0 X{(2 == 0 ? 0 : (2 == 1 ? 120 : (2 == 2 ? 180 : 300)))} Y{(2 < 4 ? 0 : 3)} Z10 F{(travel_speed * 60)} ; move close to the sheet's edge\nG0 E{if filament_multitool_ramming[2]}10{else}30{endif} X220 Z0.2 F{if filament_multitool_ramming[2]}500{else}170{endif} ; purge while moving towards the sheet\nG0 X220 E9 F800 ; continue purging and wipe the nozzle\nG0 X{220 + 3} Z{0.05} F{8000} ; wipe, move close to the bed\nG0 X{220 + 3 * 2} Z0.2 F{8000} ; wipe, move quickly away from the bed\nG1 E{- 1.5 * retract_length[2]} F2400 ; retract\n{e_retracted[2] = 1.5 * retract_length[2]} ; update slicer internal retract variable\nG92 E0 ; reset extruder position\n\nM104 S{(idle_temperature[2] == 0 ? (first_layer_temperature[2] + standby_temperature_delta) : (idle_temperature[2]))} T2\n{endif}\n{if (is_extruder_used[3]) and initial_tool != 3}\n;\n; purge fourth tool\n;\nG1 F{travel_speed * 60}\nM109 T3 S{first_layer_temperature[3]}\nT3; pick the tool\nG92 E0 ; reset extruder position\n\nG0 X{(3 == 0 ? 0 : (3 == 1 ? 120 : (3 == 2 ? 180 : 300)))} Y{(3 < 4 ? 0 : 3)} Z10 F{(travel_speed * 60)} ; move close to the sheet's edge\nG0 E{if filament_multitool_ramming[3]}10{else}30{endif} X290 Z0.2 F{if filament_multitool_ramming[3]}500{else}170{endif} ; purge while moving towards the sheet\nG0 X260 E9 F800 ; continue purging and wipe the nozzle\nG0 X{260 - 3} Z{0.05} F{8000} ; wipe, move close to the bed\nG0 X{260 - 3 * 2} Z0.2 F{8000} ; wipe, move quickly away from the bed\nG1 E{- 1.5 * retract_length[3]} F2400 ; retract\n{e_retracted[3] = 1.5 * retract_length[3]} ; update slicer internal retract variable\nG92 E0 ; reset extruder position\n\nM104 S{(idle_temperature[3] == 0 ? (first_layer_temperature[3] + standby_temperature_delta) : (idle_temperature[3]))} T3\n{endif}\n{if (is_extruder_used[4]) and initial_tool != 4}\n;\n; purge fifth tool\n;\nG1 F{travel_speed * 60}\nM109 T4 S{first_layer_temperature[4]}\nT4; pick the tool\nG92 E0 ; reset extruder position\n\nG0 X{(4 == 0 ? 0 : (4 == 1 ? 120 : (4 == 2 ? 180 : 300)))} Y{(4 < 4 ? 0 : 3)} Z10 F{(travel_speed * 60)} ; move close to the sheet's edge\nG0 E{if filament_multitool_ramming[4]}10{else}30{endif} X290 Z0.2 F{if filament_multitool_ramming[4]}500{else}170{endif} ; purge while moving towards the sheet\nG0 X260 E9 F800 ; continue purging and wipe the nozzle\nG0 X{260 - 3} Z{0.05} F{8000} ; wipe, move close to the bed\nG0 X{260 - 3 * 2} Z0.2 F{8000} ; wipe, move quickly away from the bed\nG1 E{- 1.5 * retract_length[4]} F2400 ; retract\n{e_retracted[4] = 1.5 * retract_length[4]} ; update slicer internal retract variable\nG92 E0 ; reset extruder position\n\nM104 S{(idle_temperature[4] == 0 ? (first_layer_temperature[4] + standby_temperature_delta) : (idle_temperature[4]))} T4\n{endif}\n;\n; purge initial tool\n;\nG1 F{travel_speed * 60}\nM109 T{initial_tool} S{first_layer_temperature[initial_tool]}\nT{initial_tool}; pick the tool\nG92 E0 ; reset extruder position\n\nG0 X{(initial_tool == 0 ? 0 : (initial_tool == 1 ? 120 : (initial_tool == 2 ? 180 : 300)))} Y{(initial_tool < 4 ? 0 : 3)} Z10 F{(travel_speed * 60)} ; move close to the sheet's edge\nG0 E{if filament_multitool_ramming[initial_tool]}10{else}30{endif} X{(initial_tool == 0 ? 0 : (initial_tool == 1 ? 120 : (initial_tool == 2 ? 180 : 300))) + ((initial_tool == 0 or initial_tool == 2 ? 1 : -1) * 10)} Z0.2 F{if filament_multitool_ramming[initial_tool]}500{else}170{endif} ; purge while moving towards the sheet\nG0 X{(initial_tool == 0 ? 0 : (initial_tool == 1 ? 120 : (initial_tool == 2 ? 180 : 300))) + ((initial_tool == 0 or initial_tool == 2 ? 1 : -1) * 40)} E9 F800 ; continue purging and wipe the nozzle\nG0 X{(initial_tool == 0 ? 0 : (initial_tool == 1 ? 120 : (initial_tool == 2 ? 180 : 300))) + ((initial_tool == 0 or initial_tool == 2 ? 1 : -1) * 40) + ((initial_tool == 0 or initial_tool == 2 ? 1 : -1) * 3)} Z{0.05} F{8000} ; wipe, move close to the bed\nG0 X{(initial_tool == 0 ? 0 : (initial_tool == 1 ? 120 : (initial_tool == 2 ? 180 : 300))) + ((initial_tool == 0 or initial_tool == 2 ? 1 : -1) * 40) + ((initial_tool == 0 or initial_tool == 2 ? 1 : -1) * 3 * 2)} Z0.2 F{8000} ; wipe, move quickly away from the bed\nG1 E{- 1.5 * retract_length[initial_tool]} F2400 ; retract\n{e_retracted[initial_tool] = 1.5 * retract_length[initial_tool]}\nG92 E0 ; reset extruder position\n", "scan_first_layer": "0", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0" + "nozzle_type": "undefine", + "auxiliary_fan": "0", + "default_bed_type": "Textured PEI Plate" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a250.json b/resources/profiles/Snapmaker/machine/fdm_a250.json index 852de611e5..dda34a7b2a 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a250.json +++ b/resources/profiles/Snapmaker/machine/fdm_a250.json @@ -1,20 +1,15 @@ { - "type": "machine", - "name": "fdm_a250", - "inherits": "fdm_linear2", - "from": "system", - "instantiation": "false", - "bed_model": "Snapmaker A250_bed.stl", - "bed_texture": "Snapmaker A250_texture.svg", - "printable_height": "230", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250\n", - "printable_area": [ - "0x0", - "230x0", - "230x250", - "0x250" - ], - "machine_start_gcode": "; Model: Snapmaker A250\n; Update: 20240922\n; Maintained by https://github.com/macdylan/3dp-configs\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n\nT[initial_extruder]\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n; you can clean the nozzle\nM104 S165\nM204 S100\nG28\nG0 Z153 F960.0\nG0 Y125.0 F3420.0\nG0 X115.0\n\nM190 R{first_layer_bed_temperature[initial_extruder]}\n\nG28\n{if 0==1} ; boundary check(for dual/quick swap kit), not recommanded if there are any clamps \n G0 X0\n G0 Z0.2 F960.0\n G0 Y0 F3420.0\n G0 X230\n G0 Y250\n G0 X0\n G0 Y0\n{endif}\n\nM83\n{if 1==1 && max(hot_plate_temp_initial_layer[initial_extruder], hot_plate_temp[initial_extruder]) >= 90}\nG0 Z0.06\nG92 Z0 ;reset z\n{endif}\n\n; flush initial nozzle\nT[initial_extruder]\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( initial_extruder % 2 == 0 ? 100.0 : 130.0 )} F3420.0\nG0 Y0 F3420.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))} C2 W1\nG1 E15 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 5}\n\nG1 E9.0 F200\nG92 E0\nG1 E6.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( initial_extruder % 2 == 0 ? 55.0 : 175.0 )} F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( initial_extruder % 2 == 0 ? 0 : 230 )} E3.42995 F3420.0\nG92 E0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F3420.0\n\n; ready [plate_name]", - "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-5 F200\nG28\n\n M104 S0\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", - "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" -} \ No newline at end of file + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a250", + "inherits": "fdm_linear2", + "bed_model": "Snapmaker A250_bed.stl", + "bed_texture": "Snapmaker A250_texture.svg", + "printable_height": "230", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250\n", + "printable_area": ["0x0", "230x0", "230x250", "0x250"], + "machine_start_gcode": "; Model: Snapmaker A250\n; Update: 20250313\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n\nT[initial_extruder]\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n; you can clean the nozzle\nM104 S165\nM204 S100\nG28\n;G0 Z153 F960.0\n;G0 Y125.0 F3420.0\n;G0 X115.0\n\nM190 R{first_layer_bed_temperature[initial_extruder]}\n\n;G28\n;{if 1==1}\n; G0 X0\n; G0 Z0.2 F960.0\n; G0 Y0 F3420.0\n; G0 X230\n; G0 Y250\n; G0 X0\n; G0 Y0\n;{endif}\n\nM83\n{if 1==1 && max(hot_plate_temp_initial_layer[initial_extruder], hot_plate_temp[initial_extruder]) >= 90}\nG0 Z0.06\nG92 Z0 ;reset z\n{endif}\n\n; flush initial nozzle\nT[initial_extruder]\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))}; common flush temp\n\nG0 X10 F3420.0\nG0 Y0 F3420.0\nG0 Z1.6 F960.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))} C2 W1\n\nG0 Z0.4 F200\nG1 E4 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 5}\n\n\nG0 Z5.6 F200\nM107\n\nG0 X40 F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X220 E12 F3420.0\nG92 E0\n\nG1 Y10 E.522 F200\nG1 X40 E12 F3420.0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F3420.0\n\n; ready [plate_name]", + "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-5 F200\nG28\n\n M104 S0\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", + "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" +} diff --git a/resources/profiles/Snapmaker/machine/fdm_a250_bk.json b/resources/profiles/Snapmaker/machine/fdm_a250_bk.json index ed460df6a8..9a03e3072a 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a250_bk.json +++ b/resources/profiles/Snapmaker/machine/fdm_a250_bk.json @@ -1,39 +1,39 @@ { - "type": "machine", - "name": "fdm_a250_bk", - "inherits": "fdm_a250", - "from": "system", - "instantiation": "false", - "machine_max_acceleration_x": [ - "3500" - ], - "machine_max_acceleration_y": [ - "3500" - ], - "machine_max_acceleration_z": [ - "3000" - ], - "machine_max_acceleration_travel": [ - "3500" - ], - "machine_max_acceleration_extruding": [ - "3500" - ], - "machine_max_acceleration_retracting": [ - "3500" - ], - "machine_max_jerk_y": [ - "5" - ], - "machine_max_jerk_z": [ - "3" - ], - "printable_height": "224", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250\nPRINTER_MODEL_SNAPMAKER_A250_BRACINGKIT\n", - "bed_exclude_area": [ - "0x238", - "230x238", - "230x250", - "0x250" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a250_bk", + "inherits": "fdm_a250", + "machine_max_acceleration_x": [ + "3500" + ], + "machine_max_acceleration_y": [ + "3500" + ], + "machine_max_acceleration_z": [ + "3000" + ], + "machine_max_acceleration_travel": [ + "3500" + ], + "machine_max_acceleration_extruding": [ + "3500" + ], + "machine_max_acceleration_retracting": [ + "3500" + ], + "machine_max_jerk_y": [ + "5" + ], + "machine_max_jerk_z": [ + "3" + ], + "printable_height": "224", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250\nPRINTER_MODEL_SNAPMAKER_A250_BRACINGKIT\n", + "bed_exclude_area": [ + "0x238", + "230x238", + "230x250", + "0x250" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a250_dual.json b/resources/profiles/Snapmaker/machine/fdm_a250_dual.json index 98f2246621..afbbeb6d53 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a250_dual.json +++ b/resources/profiles/Snapmaker/machine/fdm_a250_dual.json @@ -1,27 +1,27 @@ { - "type": "machine", - "name": "fdm_a250_dual", - "inherits": "fdm_linear2_dual", - "from": "system", - "instantiation": "false", - "bed_model": "Snapmaker A250_bed.stl", - "bed_texture": "Snapmaker A250 Dual_texture.svg", - "printable_height": "190", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250_DUAL\n", - "printable_area": [ - "0x0", - "230x0", - "230x250", - "0x250" - ], - "bed_exclude_area": [ - "0x240", - "230x240", - "230x250", - "0x250" - ], - "machine_start_gcode": "; Model: Snapmaker A250 Dual ({nozzle_diameter[0]}/{nozzle_diameter[1]})\n; Update: 20240922\n; Maintained by https://github.com/macdylan/3dp-configs\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n; --- initial_extruder: [initial_extruder]\n; --- has_wipe_tower: [has_wipe_tower]\n; --- total_toolchanges: [total_toolchanges]\n; --- T0: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - 1, 0))]}\n; --- T1: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - 0, 0))]}\n\nT[initial_extruder]\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n; you can clean the nozzle\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n M104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S165\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n M104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S165\n {endif}\nM204 S100\nG28\nG0 Z126 F960.0\nG0 Y125.0 F3420.0\nG0 X115.0\n\nM190 R{first_layer_bed_temperature[initial_extruder]}\n\nG28\n{if 0==1} ; boundary check(for dual/quick swap kit), not recommanded if there are any clamps \n G0 X0\n G0 Z0.2 F960.0\n G0 Y0 F3420.0\n G0 X230\n G0 Y250\n G0 X0\n G0 Y0\n{endif}\n\nM83\n{if 1==1 && max(hot_plate_temp_initial_layer[initial_extruder], hot_plate_temp[initial_extruder]) >= 90}\nG0 Z0.06\nG92 Z0 ;reset z\n{endif}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n; preheat 0\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))}\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n; preheat 1\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))}\n {endif}\n\n {if 1==1}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] and (initial_extruder % 2) != 0}\n; flush nozzle 0\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))}\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( 0 % 2 == 0 ? 100.0 : 130.0 )} F3420.0\nG0 Y0 F3420.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( 0 % 2 == 0 ? 55.0 : 175.0 )} F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( 0 % 2 == 0 ? 0 : 230 )} E3.42995 F3420.0\nG92 E0\n\nG1 E-{retract_length_toolchange[0]} F200\nG92 E0\nG0 Y20 F3420.0\n\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n {endif}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] and (initial_extruder % 2) != 1}\n; flush nozzle 1\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))}\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( 1 % 2 == 0 ? 100.0 : 130.0 )} F3420.0\nG0 Y0 F3420.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( 1 % 2 == 0 ? 55.0 : 175.0 )} F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( 1 % 2 == 0 ? 0 : 230 )} E3.42995 F3420.0\nG92 E0\n\nG1 E-{retract_length_toolchange[1]} F200\nG92 E0\nG0 Y20 F3420.0\n\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n {endif}\n\n {endif}\n; flush initial nozzle\nT[initial_extruder]\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( initial_extruder % 2 == 0 ? 100.0 : 130.0 )} F3420.0\nG0 Y0 F3420.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( initial_extruder % 2 == 0 ? 55.0 : 175.0 )} F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( initial_extruder % 2 == 0 ? 0 : 230 )} E3.42995 F3420.0\nG92 E0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F3420.0\n\n; ready [plate_name]", - "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-10 F200\nG28\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S0\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S0\n {endif}\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", - "change_filament_gcode": ";***** Update: 20240823\n{if current_extruder != next_extruder}\n; Change T[current_extruder] -> T[next_extruder] (layer [layer_num]\n; layer\nT{next_extruder}\n\n{if layer_num == 1 &&\n ((filament_type[current_extruder] == \"PLA\" || filament_type[current_extruder] == \"TPU\")\n || (filament_type[next_extruder] == \"PLA\" || filament_type[next_extruder] == \"TPU\"))\n}\n ; set bed temp: {filament_type[current_extruder]}({bed_temperature[current_extruder]}) -> {filament_type[next_extruder]}({bed_temperature[next_extruder]})\n M140 S{min(bed_temperature[current_extruder], bed_temperature[next_extruder])}\n{endif}\n\nM109 T[next_extruder] S{if layer_num < 1}[nozzle_temperature_initial_layer]{else}[nozzle_temperature]{endif} C3 W1 ;wait T[next_extruder]\n{if layer_num == 1}\n G1 E{retraction_length[next_extruder]} F200;deretract\n{endif}\n\n{if layer_z > first_layer_height && layer_num >= close_fan_the_first_x_layers[next_extruder]}\n; M106 P[next_extruder] S{fan_min_speed[next_extruder] * 255.0 / 100.0} ;restore fan speed for T[next_extruder]\n{endif}\n; End Toolchange\n{endif}", - "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a250_dual", + "inherits": "fdm_linear2_dual", + "bed_model": "Snapmaker A250_bed.stl", + "bed_texture": "Snapmaker A250 Dual_texture.svg", + "printable_height": "190", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250_DUAL\n", + "printable_area": [ + "0x0", + "230x0", + "230x250", + "0x250" + ], + "bed_exclude_area": [ + "0x240", + "230x240", + "230x250", + "0x250" + ], + "machine_start_gcode": "; Model: Snapmaker A250 Dual\n; Update: 20250313\n; Maintained by Snapmaker\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n\nT[initial_extruder]\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n; you can clean the nozzle\nM104 S165\nM204 S100\nG28\n;G0 Z153 F960.0\n;G0 Y125.0 F3420.0\n;G0 X115.0\n\nM190 R{first_layer_bed_temperature[initial_extruder]}\n\n;G28\n;{if 1==1}\n; G0 X0\n; G0 Z0.2 F960.0\n; G0 Y0 F3420.0\n; G0 X230\n; G0 Y250\n; G0 X0\n; G0 Y0\n;{endif}\n\nM83\n{if 1==1 && max(hot_plate_temp_initial_layer[initial_extruder], hot_plate_temp[initial_extruder]) >= 90}\nG0 Z0.06\nG92 Z0 ;reset z\n{endif}\n\n; flush initial nozzle\nT[initial_extruder]\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))}; common flush temp\nG0 X10 F3420.0\nG0 Y0 F3420.0\nG0 Z1.6 F960.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))} C2 W1\n\nG0 Z0.4 F200\nG1 E4 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 5}\n\n\nG0 Z5.6 F200\nM107\n\nG0 X40 F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X220 E12 F3420.0\nG92 E0\n\nG1 Y10 E.522 F200\nG1 X40 E12 F3420.0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F3420.0\n", + "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-10 F200\nG28\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S0\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S0\n {endif}\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", + "change_filament_gcode": ";***** Update: 20230923\n{if current_extruder != next_extruder}\n; Change T[current_extruder] -> T[next_extruder] (layer [layer_num]\n; layer\nT{next_extruder}\n\nM107 P[current_extruder] ;fan off T[current_extruder]\n\n{if layer_num == 1 &&\n ((filament_type[current_extruder] == \"PLA\" || filament_type[current_extruder] == \"TPU\")\n || (filament_type[next_extruder] == \"PLA\" || filament_type[next_extruder] == \"TPU\"))\n}\n ; set bed temp: {filament_type[current_extruder]}({bed_temperature[current_extruder]}) -> {filament_type[next_extruder]}({bed_temperature[next_extruder]})\n M140 S{min(bed_temperature[current_extruder], bed_temperature[next_extruder])}\n{endif}\n\nM109 T[next_extruder] S{if layer_num < 1}[nozzle_temperature_initial_layer]{else}[nozzle_temperature]{endif} C3 W1 ;wait T[next_extruder]\n{if layer_num == 1}\n G1 E{retraction_length[next_extruder]} F200;deretract\n{endif}\n\n{if layer_z > first_layer_height && layer_num >= close_fan_the_first_x_layers[next_extruder]}\n; M106 P[next_extruder] S{fan_min_speed[next_extruder] * 255.0 / 100.0} ;restore fan speed for T[next_extruder]\n{endif}\n; End Toolchange\n{endif}", + "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a250_dual_bk.json b/resources/profiles/Snapmaker/machine/fdm_a250_dual_bk.json index c9012644d6..5d084ebfaf 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a250_dual_bk.json +++ b/resources/profiles/Snapmaker/machine/fdm_a250_dual_bk.json @@ -1,39 +1,39 @@ { - "type": "machine", - "name": "fdm_a250_dual_bk", - "inherits": "fdm_a250_dual", - "from": "system", - "instantiation": "false", - "machine_max_acceleration_x": [ - "3500" - ], - "machine_max_acceleration_y": [ - "3500" - ], - "machine_max_acceleration_z": [ - "3000" - ], - "machine_max_acceleration_travel": [ - "3500" - ], - "machine_max_acceleration_extruding": [ - "3500" - ], - "machine_max_acceleration_retracting": [ - "3500" - ], - "machine_max_jerk_y": [ - "5" - ], - "machine_max_jerk_z": [ - "3" - ], - "printable_height": "184", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250_DUAL\nPRINTER_MODEL_SNAPMAKER_A250_DUAL_BRACINGKIT\n", - "bed_exclude_area": [ - "0x228", - "230x228", - "230x250", - "0x250" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a250_dual_bk", + "inherits": "fdm_a250_dual", + "machine_max_acceleration_x": [ + "3500" + ], + "machine_max_acceleration_y": [ + "3500" + ], + "machine_max_acceleration_z": [ + "3000" + ], + "machine_max_acceleration_travel": [ + "3500" + ], + "machine_max_acceleration_extruding": [ + "3500" + ], + "machine_max_acceleration_retracting": [ + "3500" + ], + "machine_max_jerk_y": [ + "5" + ], + "machine_max_jerk_z": [ + "3" + ], + "printable_height": "184", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250_DUAL\nPRINTER_MODEL_SNAPMAKER_A250_DUAL_BRACINGKIT\n", + "bed_exclude_area": [ + "0x228", + "230x228", + "230x250", + "0x250" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a250_dual_qs.json b/resources/profiles/Snapmaker/machine/fdm_a250_dual_qs.json index 26a2aca476..59d55fc579 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a250_dual_qs.json +++ b/resources/profiles/Snapmaker/machine/fdm_a250_dual_qs.json @@ -1,15 +1,15 @@ { - "type": "machine", - "name": "fdm_a250_dual_qs", - "inherits": "fdm_a250_dual", - "from": "system", - "instantiation": "false", - "printable_height": "175", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250_DUAL\nPRINTER_MODEL_SNAPMAKER_A250_DUAL_QUICKSWAPKIT\n", - "bed_exclude_area": [ - "0x225", - "230x225", - "230x250", - "0x250" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a250_dual_qs", + "inherits": "fdm_a250_dual", + "printable_height": "175", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250_DUAL\nPRINTER_MODEL_SNAPMAKER_A250_DUAL_QUICKSWAPKIT\n", + "bed_exclude_area": [ + "0x225", + "230x225", + "230x250", + "0x250" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a250_dual_qs_bk.json b/resources/profiles/Snapmaker/machine/fdm_a250_dual_qs_bk.json index e0b1f8e185..a270c15dbc 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a250_dual_qs_bk.json +++ b/resources/profiles/Snapmaker/machine/fdm_a250_dual_qs_bk.json @@ -1,39 +1,39 @@ { - "type": "machine", - "name": "fdm_a250_dual_qs_bk", - "inherits": "fdm_a250_dual", - "from": "system", - "instantiation": "false", - "machine_max_acceleration_x": [ - "3500" - ], - "machine_max_acceleration_y": [ - "3500" - ], - "machine_max_acceleration_z": [ - "3000" - ], - "machine_max_acceleration_travel": [ - "3500" - ], - "machine_max_acceleration_extruding": [ - "3500" - ], - "machine_max_acceleration_retracting": [ - "3500" - ], - "machine_max_jerk_y": [ - "5" - ], - "machine_max_jerk_z": [ - "3" - ], - "printable_height": "169", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250_DUAL\nPRINTER_MODEL_SNAPMAKER_A250_DUAL_QUICKSWAPKIT\nPRINTER_MODEL_SNAPMAKER_A250_DUAL_BRACINGKIT\n", - "bed_exclude_area": [ - "0x213", - "230x213", - "230x250", - "0x250" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a250_dual_qs_bk", + "inherits": "fdm_a250_dual", + "machine_max_acceleration_x": [ + "3500" + ], + "machine_max_acceleration_y": [ + "3500" + ], + "machine_max_acceleration_z": [ + "3000" + ], + "machine_max_acceleration_travel": [ + "3500" + ], + "machine_max_acceleration_extruding": [ + "3500" + ], + "machine_max_acceleration_retracting": [ + "3500" + ], + "machine_max_jerk_y": [ + "5" + ], + "machine_max_jerk_z": [ + "3" + ], + "printable_height": "169", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250_DUAL\nPRINTER_MODEL_SNAPMAKER_A250_DUAL_QUICKSWAPKIT\nPRINTER_MODEL_SNAPMAKER_A250_DUAL_BRACINGKIT\n", + "bed_exclude_area": [ + "0x213", + "230x213", + "230x250", + "0x250" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a250_qs.json b/resources/profiles/Snapmaker/machine/fdm_a250_qs.json index 5fb1799453..dc606b984c 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a250_qs.json +++ b/resources/profiles/Snapmaker/machine/fdm_a250_qs.json @@ -1,15 +1,15 @@ { - "type": "machine", - "name": "fdm_a250_qs", - "inherits": "fdm_a250", - "from": "system", - "instantiation": "false", - "printable_height": "215", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250\nPRINTER_MODEL_SNAPMAKER_A250_QUICKSWAPKIT\n", - "bed_exclude_area": [ - "0x235", - "230x235", - "230x250", - "0x250" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a250_qs", + "inherits": "fdm_a250", + "printable_height": "215", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250\nPRINTER_MODEL_SNAPMAKER_A250_QUICKSWAPKIT\n", + "bed_exclude_area": [ + "0x235", + "230x235", + "230x250", + "0x250" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a250_qs_bk.json b/resources/profiles/Snapmaker/machine/fdm_a250_qs_bk.json index 52c99c9573..f450b7a38d 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a250_qs_bk.json +++ b/resources/profiles/Snapmaker/machine/fdm_a250_qs_bk.json @@ -1,39 +1,39 @@ { - "type": "machine", - "name": "fdm_a250_qs_bk", - "inherits": "fdm_a250", - "from": "system", - "instantiation": "false", - "machine_max_acceleration_x": [ - "3500" - ], - "machine_max_acceleration_y": [ - "3500" - ], - "machine_max_acceleration_z": [ - "3000" - ], - "machine_max_acceleration_travel": [ - "3500" - ], - "machine_max_acceleration_extruding": [ - "3500" - ], - "machine_max_acceleration_retracting": [ - "3500" - ], - "machine_max_jerk_y": [ - "5" - ], - "machine_max_jerk_z": [ - "3" - ], - "printable_height": "209", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250\nPRINTER_MODEL_SNAPMAKER_A250_QUICKSWAPKIT\nPRINTER_MODEL_SNAPMAKER_A250_BRACINGKIT\n", - "bed_exclude_area": [ - "0x223", - "230x223", - "230x250", - "0x250" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a250_qs_bk", + "inherits": "fdm_a250", + "machine_max_acceleration_x": [ + "3500" + ], + "machine_max_acceleration_y": [ + "3500" + ], + "machine_max_acceleration_z": [ + "3000" + ], + "machine_max_acceleration_travel": [ + "3500" + ], + "machine_max_acceleration_extruding": [ + "3500" + ], + "machine_max_acceleration_retracting": [ + "3500" + ], + "machine_max_jerk_y": [ + "5" + ], + "machine_max_jerk_z": [ + "3" + ], + "printable_height": "209", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A250\nPRINTER_MODEL_SNAPMAKER_A250_QUICKSWAPKIT\nPRINTER_MODEL_SNAPMAKER_A250_BRACINGKIT\n", + "bed_exclude_area": [ + "0x223", + "230x223", + "230x250", + "0x250" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a350.json b/resources/profiles/Snapmaker/machine/fdm_a350.json index 71a1bed17b..bd9071d64d 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a350.json +++ b/resources/profiles/Snapmaker/machine/fdm_a350.json @@ -1,20 +1,15 @@ { - "type": "machine", - "name": "fdm_a350", - "inherits": "fdm_linear2", - "from": "system", - "instantiation": "false", - "bed_model": "Snapmaker A350_bed.stl", - "bed_texture": "Snapmaker A350_texture.svg", - "printable_height": "325", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350\n", - "printable_area": [ - "0x0", - "320x0", - "320x350", - "0x350" - ], - "machine_start_gcode": "; Model: Snapmaker A350\n; Update: 20240922\n; Maintained by https://github.com/macdylan/3dp-configs\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n\nT[initial_extruder]\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n; you can clean the nozzle\nM104 S165\nM204 S100\nG28\nG0 Z216 F960.0\nG0 Y175.0 F3420.0\nG0 X160.0\n\nM190 R{first_layer_bed_temperature[initial_extruder]}\n\nG28\n{if 0==1} ; boundary check(for dual/quick swap kit), not recommanded if there are any clamps \n G0 X0\n G0 Z0.2 F960.0\n G0 Y0 F3420.0\n G0 X320\n G0 Y350\n G0 X0\n G0 Y0\n{endif}\n\nM83\n{if 1==1 && max(hot_plate_temp_initial_layer[initial_extruder], hot_plate_temp[initial_extruder]) >= 90}\nG0 Z0.06\nG92 Z0 ;reset z\n{endif}\n\n; flush initial nozzle\nT[initial_extruder]\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( initial_extruder % 2 == 0 ? 145.0 : 175.0 )} F3420.0\nG0 Y0 F3420.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))} C2 W1\nG1 E15 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 5}\n\nG1 E9.0 F200\nG92 E0\nG1 E6.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( initial_extruder % 2 == 0 ? 100.0 : 220.0 )} F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( initial_extruder % 2 == 0 ? 0 : 320 )} E6.23628 F3420.0\nG92 E0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F3420.0\n\n; ready [plate_name]", - "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-5 F200\nG28\n\n M104 S0\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", - "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" -} \ No newline at end of file + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a350", + "inherits": "fdm_linear2", + "bed_model": "Snapmaker A350_bed.stl", + "bed_texture": "Snapmaker A350_texture.svg", + "printable_height": "325", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350\n", + "printable_area": ["0x0", "320x0", "320x350", "0x350"], + "machine_start_gcode": "; Model: Snapmaker A350\n; Update: 20250313\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n\nT[initial_extruder]\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n; you can clean the nozzle\nM104 S165\nM204 S100\nG28\n;G0 Z216 F960.0\n;G0 Y175.0 F3420.0\n;G0 X160.0\n\nM190 R{first_layer_bed_temperature[initial_extruder]}\n\n;G28\n;{if 1==1}\n; G0 X0\n; G0 Z0.2 F960.0\n; G0 Y0 F3420.0\n; G0 X320\n; G0 Y350\n; G0 X0\n; G0 Y0\n;{endif}\n\nM83\n{if 1==1 && max(hot_plate_temp_initial_layer[initial_extruder], hot_plate_temp[initial_extruder]) >= 90}\nG0 Z0.06\nG92 Z0 ;reset z\n{endif}\n\n; flush initial nozzle\nT[initial_extruder]\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))}; common flush temp\n\nG0 X10 F3420.0\nG0 Y0 F3420.0\nG0 Z1.6 F960.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))} C2 W1\n\nG1 Z0.4 F200\nG1 E4 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 5}\n\nG0 Z5.6 F200\nM107\n\nG0 X40 F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X280 E12 F3420.0\nG92 E0\nG1 Y10 E.522 F200\nG1 X40 E12 F3420.0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F3420.0\n\n; ready [plate_name]", + "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-5 F200\nG28\n\n M104 S0\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", + "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" +} diff --git a/resources/profiles/Snapmaker/machine/fdm_a350_bk.json b/resources/profiles/Snapmaker/machine/fdm_a350_bk.json index 6d838d137d..3a1f9655db 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a350_bk.json +++ b/resources/profiles/Snapmaker/machine/fdm_a350_bk.json @@ -1,39 +1,39 @@ { - "type": "machine", - "name": "fdm_a350_bk", - "inherits": "fdm_a350", - "from": "system", - "instantiation": "false", - "machine_max_acceleration_x": [ - "3500" - ], - "machine_max_acceleration_y": [ - "3500" - ], - "machine_max_acceleration_z": [ - "3000" - ], - "machine_max_acceleration_travel": [ - "3500" - ], - "machine_max_acceleration_extruding": [ - "3500" - ], - "machine_max_acceleration_retracting": [ - "3500" - ], - "machine_max_jerk_y": [ - "5" - ], - "machine_max_jerk_z": [ - "3" - ], - "printable_height": "319", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350\nPRINTER_MODEL_SNAPMAKER_A350_BRACINGKIT\n", - "bed_exclude_area": [ - "0x338", - "320x338", - "320x350", - "0x350" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a350_bk", + "inherits": "fdm_a350", + "machine_max_acceleration_x": [ + "3500" + ], + "machine_max_acceleration_y": [ + "3500" + ], + "machine_max_acceleration_z": [ + "3000" + ], + "machine_max_acceleration_travel": [ + "3500" + ], + "machine_max_acceleration_extruding": [ + "3500" + ], + "machine_max_acceleration_retracting": [ + "3500" + ], + "machine_max_jerk_y": [ + "5" + ], + "machine_max_jerk_z": [ + "3" + ], + "printable_height": "319", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350\nPRINTER_MODEL_SNAPMAKER_A350_BRACINGKIT\n", + "bed_exclude_area": [ + "0x338", + "320x338", + "320x350", + "0x350" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a350_dual.json b/resources/profiles/Snapmaker/machine/fdm_a350_dual.json index bf5316dc7c..bec6c592db 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a350_dual.json +++ b/resources/profiles/Snapmaker/machine/fdm_a350_dual.json @@ -1,27 +1,27 @@ { - "type": "machine", - "name": "fdm_a350_dual", - "inherits": "fdm_linear2_dual", - "from": "system", - "instantiation": "false", - "bed_model": "Snapmaker A350_bed.stl", - "bed_texture": "Snapmaker A350 Dual_texture.svg", - "printable_height": "285", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350_DUAL\n", - "printable_area": [ - "0x0", - "320x0", - "320x350", - "0x350" - ], - "bed_exclude_area": [ - "0x330", - "320x330", - "320x350", - "0x350" - ], - "machine_start_gcode": "; Model: Snapmaker A350 Dual ({nozzle_diameter[0]}/{nozzle_diameter[1]})\n; Update: 20240922\n; Maintained by https://github.com/macdylan/3dp-configs\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n; --- initial_extruder: [initial_extruder]\n; --- has_wipe_tower: [has_wipe_tower]\n; --- total_toolchanges: [total_toolchanges]\n; --- T0: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - 1, 0))]}\n; --- T1: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - 0, 0))]}\n\nT[initial_extruder]\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n; you can clean the nozzle\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n M104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S165\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n M104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S165\n {endif}\nM204 S100\nG28\nG0 Z190 F960.0\nG0 Y175.0 F3420.0\nG0 X160.0\n\nM190 R{first_layer_bed_temperature[initial_extruder]}\n\nG28\n{if 0==1} ; boundary check(for dual/quick swap kit), not recommanded if there are any clamps \n G0 X0\n G0 Z0.2 F960.0\n G0 Y0 F3420.0\n G0 X320\n G0 Y350\n G0 X0\n G0 Y0\n{endif}\n\nM83\n{if 1==1 && max(hot_plate_temp_initial_layer[initial_extruder], hot_plate_temp[initial_extruder]) >= 90}\nG0 Z0.06\nG92 Z0 ;reset z\n{endif}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n; preheat 0\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))}\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n; preheat 1\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))}\n {endif}\n\n {if 1==1}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] and (initial_extruder % 2) != 0}\n; flush nozzle 0\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))}\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( 0 % 2 == 0 ? 145.0 : 175.0 )} F3420.0\nG0 Y0 F3420.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( 0 % 2 == 0 ? 100.0 : 220.0 )} F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( 0 % 2 == 0 ? 0 : 320 )} E6.23628 F3420.0\nG92 E0\n\nG1 E-{retract_length_toolchange[0]} F200\nG92 E0\nG0 Y20 F3420.0\n\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n {endif}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] and (initial_extruder % 2) != 1}\n; flush nozzle 1\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))}\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( 1 % 2 == 0 ? 145.0 : 175.0 )} F3420.0\nG0 Y0 F3420.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( 1 % 2 == 0 ? 100.0 : 220.0 )} F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( 1 % 2 == 0 ? 0 : 320 )} E6.23628 F3420.0\nG92 E0\n\nG1 E-{retract_length_toolchange[1]} F200\nG92 E0\nG0 Y20 F3420.0\n\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n {endif}\n\n {endif}\n; flush initial nozzle\nT[initial_extruder]\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( initial_extruder % 2 == 0 ? 145.0 : 175.0 )} F3420.0\nG0 Y0 F3420.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( initial_extruder % 2 == 0 ? 100.0 : 220.0 )} F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( initial_extruder % 2 == 0 ? 0 : 320 )} E6.23628 F3420.0\nG92 E0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F3420.0\n\n; ready [plate_name]", - "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-10 F200\nG28\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S0\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S0\n {endif}\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", - "change_filament_gcode": ";***** Update: 20240823\n{if current_extruder != next_extruder}\n; Change T[current_extruder] -> T[next_extruder] (layer [layer_num]\n; layer\nT{next_extruder}\n\n{if layer_num == 1 &&\n ((filament_type[current_extruder] == \"PLA\" || filament_type[current_extruder] == \"TPU\")\n || (filament_type[next_extruder] == \"PLA\" || filament_type[next_extruder] == \"TPU\"))\n}\n ; set bed temp: {filament_type[current_extruder]}({bed_temperature[current_extruder]}) -> {filament_type[next_extruder]}({bed_temperature[next_extruder]})\n M140 S{min(bed_temperature[current_extruder], bed_temperature[next_extruder])}\n{endif}\n\nM109 T[next_extruder] S{if layer_num < 1}[nozzle_temperature_initial_layer]{else}[nozzle_temperature]{endif} C3 W1 ;wait T[next_extruder]\n{if layer_num == 1}\n G1 E{retraction_length[next_extruder]} F200;deretract\n{endif}\n\n{if layer_z > first_layer_height && layer_num >= close_fan_the_first_x_layers[next_extruder]}\n; M106 P[next_extruder] S{fan_min_speed[next_extruder] * 255.0 / 100.0} ;restore fan speed for T[next_extruder]\n{endif}\n; End Toolchange\n{endif}", - "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a350_dual", + "inherits": "fdm_linear2_dual", + "bed_model": "Snapmaker A350_bed.stl", + "bed_texture": "Snapmaker A350 Dual_texture.svg", + "printable_height": "285", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350_DUAL\n", + "printable_area": [ + "0x0", + "320x0", + "320x350", + "0x350" + ], + "bed_exclude_area": [ + "0x330", + "320x330", + "320x350", + "0x350" + ], + "machine_start_gcode": "; Model: Snapmaker A350 Dual\n; Update: 20250313\n; Maintained by Snapmaker\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n\nT[initial_extruder]\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n; you can clean the nozzle\nM104 S165\nM204 S100\nG28\n;G0 Z216 F960.0\n;G0 Y175.0 F3420.0\n;G0 X160.0\n\nM190 R{first_layer_bed_temperature[initial_extruder]}\n\n;G28\n;{if 1==1}\n; G0 X0\n; G0 Z0.2 F960.0\n; G0 Y0 F3420.0\n; G0 X320\n; G0 Y350\n; G0 X0\n; G0 Y0\n;{endif}\n\nM83\n{if 1==1 && max(hot_plate_temp_initial_layer[initial_extruder], hot_plate_temp[initial_extruder]) >= 90}\nG0 Z0.06\nG92 Z0 ;reset z\n{endif}\n\n; flush initial nozzle\nT[initial_extruder]\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))}; common flush temp\n\nG0 X10 F3420.0\nG0 Y0 F3420.0\nG0 Z1.6 F960.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))} C2 W1\nG0 Z0.4 F200\nG1 E4 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 5}\n\nG0 Z5.6 F200\nM107\n\nG0 X40 F3420.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X280 E12 F3420.0\nG92 E0\n\nG1 Y10 E.522 F200\nG1 X40 E6.264 F3420.0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F3420.0\n\n; ready [plate_name]", + "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-10 F200\nG28\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S0\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S0\n {endif}\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", + "change_filament_gcode": ";***** Update: 20230923\n{if current_extruder != next_extruder}\n; Change T[current_extruder] -> T[next_extruder] (layer [layer_num]\n; layer\nT{next_extruder}\n\nM107 P[current_extruder] ;fan off T[current_extruder]\n\n{if layer_num == 1 &&\n ((filament_type[current_extruder] == \"PLA\" || filament_type[current_extruder] == \"TPU\")\n || (filament_type[next_extruder] == \"PLA\" || filament_type[next_extruder] == \"TPU\"))\n}\n ; set bed temp: {filament_type[current_extruder]}({bed_temperature[current_extruder]}) -> {filament_type[next_extruder]}({bed_temperature[next_extruder]})\n M140 S{min(bed_temperature[current_extruder], bed_temperature[next_extruder])}\n{endif}\n\nM109 T[next_extruder] S{if layer_num < 1}[nozzle_temperature_initial_layer]{else}[nozzle_temperature]{endif} C3 W1 ;wait T[next_extruder]\n{if layer_num == 1}\n G1 E{retraction_length[next_extruder]} F200;deretract\n{endif}\n\n{if layer_z > first_layer_height && layer_num >= close_fan_the_first_x_layers[next_extruder]}\n; M106 P[next_extruder] S{fan_min_speed[next_extruder] * 255.0 / 100.0} ;restore fan speed for T[next_extruder]\n{endif}\n; End Toolchange\n{endif}", + "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a350_dual_bk.json b/resources/profiles/Snapmaker/machine/fdm_a350_dual_bk.json index a90e45f1d9..5b16424711 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a350_dual_bk.json +++ b/resources/profiles/Snapmaker/machine/fdm_a350_dual_bk.json @@ -1,39 +1,39 @@ { - "type": "machine", - "name": "fdm_a350_dual_bk", - "inherits": "fdm_a350_dual", - "from": "system", - "instantiation": "false", - "machine_max_acceleration_x": [ - "3500" - ], - "machine_max_acceleration_y": [ - "3500" - ], - "machine_max_acceleration_z": [ - "3000" - ], - "machine_max_acceleration_travel": [ - "3500" - ], - "machine_max_acceleration_extruding": [ - "3500" - ], - "machine_max_acceleration_retracting": [ - "3500" - ], - "machine_max_jerk_y": [ - "5" - ], - "machine_max_jerk_z": [ - "3" - ], - "printable_height": "279", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350_DUAL\nPRINTER_MODEL_SNAPMAKER_A350_DUAL_BRACINGKIT\n", - "bed_exclude_area": [ - "0x318", - "320x318", - "320x350", - "0x350" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a350_dual_bk", + "inherits": "fdm_a350_dual", + "machine_max_acceleration_x": [ + "3500" + ], + "machine_max_acceleration_y": [ + "3500" + ], + "machine_max_acceleration_z": [ + "3000" + ], + "machine_max_acceleration_travel": [ + "3500" + ], + "machine_max_acceleration_extruding": [ + "3500" + ], + "machine_max_acceleration_retracting": [ + "3500" + ], + "machine_max_jerk_y": [ + "5" + ], + "machine_max_jerk_z": [ + "3" + ], + "printable_height": "279", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350_DUAL\nPRINTER_MODEL_SNAPMAKER_A350_DUAL_BRACINGKIT\n", + "bed_exclude_area": [ + "0x318", + "320x318", + "320x350", + "0x350" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a350_dual_qs.json b/resources/profiles/Snapmaker/machine/fdm_a350_dual_qs.json index f086d08bd4..0e4823e2be 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a350_dual_qs.json +++ b/resources/profiles/Snapmaker/machine/fdm_a350_dual_qs.json @@ -1,15 +1,15 @@ { - "type": "machine", - "name": "fdm_a350_dual_qs", - "inherits": "fdm_a350_dual", - "from": "system", - "instantiation": "false", - "printable_height": "270", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350_DUAL\nPRINTER_MODEL_SNAPMAKER_A350_DUAL_QUICKSWAPKIT\n", - "bed_exclude_area": [ - "0x315", - "320x315", - "320x350", - "0x350" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a350_dual_qs", + "inherits": "fdm_a350_dual", + "printable_height": "270", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350_DUAL\nPRINTER_MODEL_SNAPMAKER_A350_DUAL_QUICKSWAPKIT\n", + "bed_exclude_area": [ + "0x315", + "320x315", + "320x350", + "0x350" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a350_dual_qs_bk.json b/resources/profiles/Snapmaker/machine/fdm_a350_dual_qs_bk.json index 27245cb6aa..0494b8e7ea 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a350_dual_qs_bk.json +++ b/resources/profiles/Snapmaker/machine/fdm_a350_dual_qs_bk.json @@ -1,39 +1,39 @@ { - "type": "machine", - "name": "fdm_a350_dual_qs_bk", - "inherits": "fdm_a350_dual", - "from": "system", - "instantiation": "false", - "machine_max_acceleration_x": [ - "3500" - ], - "machine_max_acceleration_y": [ - "3500" - ], - "machine_max_acceleration_z": [ - "3000" - ], - "machine_max_acceleration_travel": [ - "3500" - ], - "machine_max_acceleration_extruding": [ - "3500" - ], - "machine_max_acceleration_retracting": [ - "3500" - ], - "machine_max_jerk_y": [ - "5" - ], - "machine_max_jerk_z": [ - "3" - ], - "printable_height": "264", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350_DUAL\nPRINTER_MODEL_SNAPMAKER_A350_DUAL_BRACINGKIT\nPRINTER_MODEL_SNAPMAKER_A350_DUAL_QUICKSWAPKIT\n", - "bed_exclude_area": [ - "0x303", - "320x303", - "320x350", - "0x350" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a350_dual_qs_bk", + "inherits": "fdm_a350_dual", + "machine_max_acceleration_x": [ + "3500" + ], + "machine_max_acceleration_y": [ + "3500" + ], + "machine_max_acceleration_z": [ + "3000" + ], + "machine_max_acceleration_travel": [ + "3500" + ], + "machine_max_acceleration_extruding": [ + "3500" + ], + "machine_max_acceleration_retracting": [ + "3500" + ], + "machine_max_jerk_y": [ + "5" + ], + "machine_max_jerk_z": [ + "3" + ], + "printable_height": "264", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350_DUAL\nPRINTER_MODEL_SNAPMAKER_A350_DUAL_BRACINGKIT\nPRINTER_MODEL_SNAPMAKER_A350_DUAL_QUICKSWAPKIT\n", + "bed_exclude_area": [ + "0x303", + "320x303", + "320x350", + "0x350" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a350_qs.json b/resources/profiles/Snapmaker/machine/fdm_a350_qs.json index 9a97cfe4ca..2b5eb369fc 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a350_qs.json +++ b/resources/profiles/Snapmaker/machine/fdm_a350_qs.json @@ -1,15 +1,15 @@ { - "type": "machine", - "name": "fdm_a350_qs", - "inherits": "fdm_a350", - "from": "system", - "instantiation": "false", - "printable_height": "310", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350\nPRINTER_MODEL_SNAPMAKER_A350_QUICKSWAPKIT\n", - "bed_exclude_area": [ - "0x335", - "320x335", - "320x350", - "0x350" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a350_qs", + "inherits": "fdm_a350", + "printable_height": "310", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350\nPRINTER_MODEL_SNAPMAKER_A350_QUICKSWAPKIT\n", + "bed_exclude_area": [ + "0x335", + "320x335", + "320x350", + "0x350" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a350_qs_bk.json b/resources/profiles/Snapmaker/machine/fdm_a350_qs_bk.json index acace39f63..e3ede6d2a5 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a350_qs_bk.json +++ b/resources/profiles/Snapmaker/machine/fdm_a350_qs_bk.json @@ -1,39 +1,39 @@ { - "type": "machine", - "name": "fdm_a350_qs_bk", - "inherits": "fdm_a350", - "from": "system", - "instantiation": "false", - "machine_max_acceleration_x": [ - "3500" - ], - "machine_max_acceleration_y": [ - "3500" - ], - "machine_max_acceleration_z": [ - "3000" - ], - "machine_max_acceleration_travel": [ - "3500" - ], - "machine_max_acceleration_extruding": [ - "3500" - ], - "machine_max_acceleration_retracting": [ - "3500" - ], - "machine_max_jerk_y": [ - "5" - ], - "machine_max_jerk_z": [ - "3" - ], - "printable_height": "304", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350\nPRINTER_MODEL_SNAPMAKER_A350_BRACINGKIT\nPRINTER_MODEL_SNAPMAKER_A350_QUICKSWAPKIT\n", - "bed_exclude_area": [ - "0x323", - "320x323", - "320x350", - "0x350" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a350_qs_bk", + "inherits": "fdm_a350", + "machine_max_acceleration_x": [ + "3500" + ], + "machine_max_acceleration_y": [ + "3500" + ], + "machine_max_acceleration_z": [ + "3000" + ], + "machine_max_acceleration_travel": [ + "3500" + ], + "machine_max_acceleration_extruding": [ + "3500" + ], + "machine_max_acceleration_retracting": [ + "3500" + ], + "machine_max_jerk_y": [ + "5" + ], + "machine_max_jerk_z": [ + "3" + ], + "printable_height": "304", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_A350\nPRINTER_MODEL_SNAPMAKER_A350_BRACINGKIT\nPRINTER_MODEL_SNAPMAKER_A350_QUICKSWAPKIT\n", + "bed_exclude_area": [ + "0x323", + "320x323", + "320x350", + "0x350" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_a400.json b/resources/profiles/Snapmaker/machine/fdm_a400.json index 64f8163905..2b590059e5 100644 --- a/resources/profiles/Snapmaker/machine/fdm_a400.json +++ b/resources/profiles/Snapmaker/machine/fdm_a400.json @@ -1,59 +1,34 @@ { - "type": "machine", - "name": "fdm_a400", - "inherits": "fdm_linear2_dual", - "from": "system", - "instantiation": "false", - "extruder_clearance_height_to_rod": "32", - "extruder_clearance_height_to_lid": "400", - "machine_max_acceleration_x": [ - "5000" - ], - "machine_max_acceleration_y": [ - "5000" - ], - "machine_max_acceleration_z": [ - "200" - ], - "machine_max_acceleration_travel": [ - "5000" - ], - "machine_max_acceleration_extruding": [ - "5000" - ], - "machine_max_acceleration_retracting": [ - "2000" - ], - "machine_max_speed_x": [ - "300" - ], - "machine_max_speed_y": [ - "300" - ], - "machine_max_jerk_x": [ - "10" - ], - "machine_max_jerk_y": [ - "10" - ], - "machine_max_jerk_z": [ - "3" - ], - "thumbnails": [ - "600x600" - ], - "bed_model": "Snapmaker Artisan_bed.stl", - "bed_texture": "Snapmaker Artisan_texture.svg", - "printable_height": "400", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_ARTISAN\nPRINTER_MODEL_SNAPMAKER_A400_DUAL\n", - "printable_area": [ - "0x0", - "400x0", - "400x400", - "0x400" - ], - "machine_start_gcode": "; Model: Snapmaker Artisan ({nozzle_diameter[0]}/{nozzle_diameter[1]})\n; Update: 20240922\n; Maintained by https://github.com/macdylan/3dp-configs\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n; --- initial_extruder: [initial_extruder]\n; --- has_wipe_tower: [has_wipe_tower]\n; --- total_toolchanges: [total_toolchanges]\n; --- T0: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - 1, 0))]}\n; --- T1: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - 0, 0))]}\n\nT[initial_extruder]\n\nM205 V[machine_max_jerk_x] ;Junction Deviation (mm)\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n; you can clean the nozzle\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n M104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S165\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n M104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S165\n {endif}\nM204 S100\nG28\nG0 Z266 F960.0\nG0 Y200.0 F6840.0\nG0 X200.0\n\n{if first_layer_print_min[0] >= 70 && first_layer_print_max[0] <= 330 && first_layer_print_min[1] >= 70 && first_layer_print_max[1] <= 330}\nM190 P0 R{first_layer_bed_temperature[initial_extruder]} ;only inner part of the bed\n{else}\nM190 R{first_layer_bed_temperature[initial_extruder]}\n{endif}\n\nG28\n{if 0==1} ; boundary check(for dual/quick swap kit), not recommanded if there are any clamps \n G0 X0\n G0 Z0.2 F960.0\n G0 Y0 F6840.0\n G0 X400\n G0 Y400\n G0 X0\n G0 Y0\n{endif}\n\nM83\n{if 1==1 && max(hot_plate_temp_initial_layer[initial_extruder], hot_plate_temp[initial_extruder]) >= 90}\nG0 Z0.06\nG92 Z0 ;reset z\n{endif}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n; preheat 0\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))}\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n; preheat 1\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))}\n {endif}\n\n {if 1==1}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] and (initial_extruder % 2) != 0}\n; flush nozzle 0\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))}\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( 0 % 2 == 0 ? 185.0 : 215.0 )} F6840.0\nG0 Y0 F6840.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( 0 % 2 == 0 ? 140.0 : 260.0 )} F6840.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( 0 % 2 == 0 ? 0 : 400 )} E8.73079 F6840.0\nG92 E0\n\nG1 E-{retract_length_toolchange[0]} F200\nG92 E0\nG0 Y20 F6840.0\n\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n {endif}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] and (initial_extruder % 2) != 1}\n; flush nozzle 1\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))}\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( 1 % 2 == 0 ? 185.0 : 215.0 )} F6840.0\nG0 Y0 F6840.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( 1 % 2 == 0 ? 140.0 : 260.0 )} F6840.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( 1 % 2 == 0 ? 0 : 400 )} E8.73079 F6840.0\nG92 E0\n\nG1 E-{retract_length_toolchange[1]} F200\nG92 E0\nG0 Y20 F6840.0\n\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n {endif}\n\n {endif}\n; flush initial nozzle\nT[initial_extruder]\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))}; common flush temp\nG0 Z1.6 F960.0\nG0 X{( initial_extruder % 2 == 0 ? 185.0 : 215.0 )} F6840.0\nG0 Y0 F6840.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( initial_extruder % 2 == 0 ? 140.0 : 260.0 )} F6840.0\nG0 Z0.3 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( initial_extruder % 2 == 0 ? 0 : 400 )} E8.73079 F6840.0\nG92 E0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F6840.0\n\n; ready [plate_name]", - "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-10 F200\nG28\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S0\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S0\n {endif}\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", - "change_filament_gcode": ";***** Update: 20240823\n{if current_extruder != next_extruder}\n; Change T[current_extruder] -> T[next_extruder] (layer [layer_num]\n; layer\nT{next_extruder}\n\n{if layer_num == 1 &&\n ((filament_type[current_extruder] == \"PLA\" || filament_type[current_extruder] == \"TPU\")\n || (filament_type[next_extruder] == \"PLA\" || filament_type[next_extruder] == \"TPU\"))\n}\n ; set bed temp: {filament_type[current_extruder]}({bed_temperature[current_extruder]}) -> {filament_type[next_extruder]}({bed_temperature[next_extruder]})\n M140 S{min(bed_temperature[current_extruder], bed_temperature[next_extruder])}\n{endif}\n\nM109 T[next_extruder] S{if layer_num < 1}[nozzle_temperature_initial_layer]{else}[nozzle_temperature]{endif} C3 W1 ;wait T[next_extruder]\n{if layer_num == 1}\n G1 E{retraction_length[next_extruder]} F200;deretract\n{endif}\n\n{if layer_z > first_layer_height && layer_num >= close_fan_the_first_x_layers[next_extruder]}\n; M106 P[next_extruder] S{fan_min_speed[next_extruder] * 255.0 / 100.0} ;restore fan speed for T[next_extruder]\n{endif}\n; End Toolchange\n{endif}", - "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" -} \ No newline at end of file + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_a400", + "inherits": "fdm_linear2_dual", + "extruder_clearance_height_to_rod": "32", + "extruder_clearance_height_to_lid": "400", + "machine_max_acceleration_x": ["5000"], + "machine_max_acceleration_y": ["5000"], + "machine_max_acceleration_z": ["200"], + "machine_max_acceleration_travel": ["5000"], + "machine_max_acceleration_extruding": ["5000"], + "machine_max_acceleration_retracting": ["2000"], + "machine_max_speed_x": ["300"], + "machine_max_speed_y": ["300"], + "machine_max_jerk_x": ["10"], + "machine_max_jerk_y": ["10"], + "machine_max_jerk_z": ["3"], + "thumbnails": ["600x600"], + "bed_model": "Snapmaker Artisan_bed.stl", + "bed_texture": "Snapmaker Artisan_texture.svg", + "printable_height": "400", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_ARTISAN\nPRINTER_MODEL_SNAPMAKER_A400_DUAL\n", + "printable_area": ["0x0", "400x0", "400x400", "0x400"], + "machine_start_gcode": "; Model: Snapmaker Artisan ({nozzle_diameter[0]}/{nozzle_diameter[1]})\n; Update: 20241211\n; Maintained by https://github.com/macdylan/3dp-configs\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n; --- initial_extruder: [initial_extruder]\n; --- has_wipe_tower: [has_wipe_tower]\n; --- total_toolchanges: [total_toolchanges]\n; --- T0: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - 1, 0))]}\n; --- T1: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - 0, 0))]}\n\nT[initial_extruder]\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n\n{if first_layer_print_min[0] >= 70 && first_layer_print_max[0] <= 330 && first_layer_print_min[1] >= 70 && first_layer_print_max[1] <= 330}\nM140 P0 R{first_layer_bed_temperature[initial_extruder]} ;only inner part of the bed\n{else}\nM140 R{first_layer_bed_temperature[initial_extruder]}\n{endif}\n\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n; preheat 0\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]} \n {endif}\n\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n; preheat 1\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]} \n {endif}\n\nG28\n\nM83\n\n{if first_layer_print_min[0] >= 70 && first_layer_print_max[0] <= 330 && first_layer_print_min[1] >= 70 && first_layer_print_max[1] <= 330}\nM190 P0 R{first_layer_bed_temperature[initial_extruder]} ;only inner part of the bed\n{else}\nM190 R{first_layer_bed_temperature[initial_extruder]}\n{endif}\n\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] and (initial_extruder % 2) != 0}\n; flush nozzle 0\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))}\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]} \nG0 X{( 0 % 2 == 0 ? 0 : 400 )} F5400\nG0 Y-0.5 Z1.6 F4800\n\nG0 X{( 0 % 2 == 0 ? 0 : 400 )} F5400.0\nG0 Z0.2 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]} C3 W1\nG1 E8 F200\nG92 E0\nG1 X{( 0 % 2 == 0 ? 140 : 260 )} E8.73079 F3000.0\nG92 E0\n\nG1 E-{retract_length_toolchange[0]} F200\nG92 E0\nG0 Y20 F5400.0\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n {endif}\n\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] and (initial_extruder % 2) != 1}\n; flush nozzle 1\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))}\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]} \nG0 X{( 1 % 2 == 0 ? 0 : 400)} F5400.0\nG0 Y-0.50 Z1.6 F4800.0\n\nG0 X{( 1 % 2 == 0 ? 140.0 : 260.0 )} F5400.0\nG0 Z0.2 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]} C3 W1\nG1 E8 F200\nG92 E0\nG1 X{( 1 % 2 == 0 ? 0 : 260 )} E8.73079 F3000.0\nG92 E0\n\nG1 E-{retract_length_toolchange[1]} F200\nG92 E0\nG0 Y20 F5400.0\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n {endif}\n\n; flush initial nozzle\nT[initial_extruder]\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]}\nG0 X{( initial_extruder % 2 == 0 ? 0 : 400 )} F5400.0\nG0 Y-0.5 Z1.6 F4800.0\n\nG0 X{( initial_extruder % 2 == 0 ? 0 : 400 )} F5400.0\nG0 Z0.2 F960.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E8 F200\nG92 E0\nG1 X{( initial_extruder % 2 == 0 ? 140 : 260 )} E8.73079 F3000.0\nG92 E0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F5400.0\n\n; ready [plate_name]", + "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-10 F200\nG28\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S0\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S0\n {endif}\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", + "change_filament_gcode": ";***** Update: 20230923\n{if current_extruder != next_extruder}\n; {if (next_wipe_x > 0) || (next_wipe_y > 0)}\n; use wipeTower\n; move to wipeTower before changing tool\nG0 X[next_wipe_x] Y[next_wipe_y]\n{endif}\n Change T[current_extruder] -> T[next_extruder] (layer [layer_num]\n; layer\nT{next_extruder}\n\nM107 P[current_extruder] ;fan off T[current_extruder]\n\n{if layer_num == 1 &&\n ((filament_type[current_extruder] == \"PLA\" || filament_type[current_extruder] == \"TPU\")\n || (filament_type[next_extruder] == \"PLA\" || filament_type[next_extruder] == \"TPU\"))\n}\n ; set bed temp: {filament_type[current_extruder]}({bed_temperature[current_extruder]}) -> {filament_type[next_extruder]}({bed_temperature[next_extruder]})\n M140 S{min(bed_temperature[current_extruder], bed_temperature[next_extruder])}\n{endif}\n\nM109 T[next_extruder] S{if layer_num < 1}[nozzle_temperature_initial_layer]{else}[nozzle_temperature]{endif} C3 W1 ;wait T[next_extruder]\n{if layer_num == 1}\n G1 E{retraction_length[next_extruder]} F200;deretract\n{endif}\n\n{if layer_z > first_layer_height && layer_num >= close_fan_the_first_x_layers[next_extruder]}\n; M106 P[next_extruder] S{fan_min_speed[next_extruder] * 255.0 / 100.0} ;restore fan speed for T[next_extruder]\n{endif}\n; End Toolchange\n{endif}", + "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0", + "retract_length_toolchange": [ + "16", + "16" + ] +} diff --git a/resources/profiles/Snapmaker/machine/fdm_common.json b/resources/profiles/Snapmaker/machine/fdm_common.json index 0d412b68f7..088f7aedd2 100644 --- a/resources/profiles/Snapmaker/machine/fdm_common.json +++ b/resources/profiles/Snapmaker/machine/fdm_common.json @@ -1,55 +1,34 @@ { - "type": "machine", - "name": "fdm_common", - "from": "system", - "instantiation": "false", - "gcode_flavor": "marlin2", - "pause_gcode": "M600 ;pause print", - "nozzle_type": "hardened_steel", - "use_relative_e_distances": "1", - "silent_mode": "0", - "auxiliary_fan": "0", - "remaining_times": "1", - "single_extruder_multi_material": "0", - "purge_in_prime_tower": "0", - "enable_filament_ramming": "0", - "nozzle_volume": "0", - "cooling_tube_retraction": "0", - "cooling_tube_length": "0", - "parking_pos_retraction": "0", - "extra_loading_move": "-2", - "high_current_on_filament_swap": "0", - "wipe": [ - "0" - ], - "wipe_distance": [ - "1" - ], - "retraction_speed": [ - "45" - ], - "deretraction_speed": [ - "45" - ], - "z_hop": [ - "0.4" - ], - "retraction_length": [ - "0.8" - ], - "retract_when_changing_layer": [ - "1" - ], - "retract_before_wipe": [ - "0%" - ], - "retraction_minimum_travel": [ - "1" - ], - "fan_speedup_overhangs": [ - "1" - ], - "z_hop_types": [ - "Auto Lift" - ] -} \ No newline at end of file + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_common", + "gcode_flavor": "marlin2", + "pause_gcode": "M600 ;pause print", + "nozzle_type": "hardened_steel", + "use_relative_e_distances": "1", + "silent_mode": "0", + "auxiliary_fan": "0", + "remaining_times": "1", + "single_extruder_multi_material": "0", + "purge_in_prime_tower": "0", + "enable_filament_ramming": "0", + "nozzle_volume": "0", + "cooling_tube_retraction": "0", + "cooling_tube_length": "0", + "parking_pos_retraction": "0", + "extra_loading_move": "-2", + "high_current_on_filament_swap": "0", + "wipe": ["0"], + "wipe_distance": ["1"], + "retraction_speed": ["45"], + "deretraction_speed": ["45"], + "z_hop": ["0.4"], + "retract_length_toolchange": ["1.8"], + "retraction_length": ["0.8"], + "retract_when_changing_layer": ["1"], + "retract_before_wipe": ["0%"], + "retraction_minimum_travel": ["0"], + "fan_speedup_overhangs": ["1"], + "z_hop_types": ["Auto Lift"] +} diff --git a/resources/profiles/Snapmaker/machine/fdm_idex.json b/resources/profiles/Snapmaker/machine/fdm_idex.json index 41fdd66194..9690480f3f 100644 --- a/resources/profiles/Snapmaker/machine/fdm_idex.json +++ b/resources/profiles/Snapmaker/machine/fdm_idex.json @@ -1,107 +1,107 @@ { - "type": "machine", - "name": "fdm_idex", - "inherits": "fdm_common", - "from": "system", - "instantiation": "false", - "wipe": [ - "1" - ], - "wipe_distance": [ - "2" - ], - "retraction_speed": [ - "25", - "25" - ], - "deretraction_speed": [ - "25", - "25" - ], - "bed_model": "Snapmaker J1_bed.stl", - "bed_texture": "Snapmaker J1_texture.svg", - "printable_height": "200", - "extruder_clearance_radius": "35", - "extruder_clearance_height_to_rod": "35", - "extruder_clearance_height_to_lid": "150", - "printer_notes": "PRINTER_MODEL_SNAPMAKER_J1\n", - "fan_speedup_time": [ - "0.3" - ], - "machine_max_acceleration_x": [ - "10000" - ], - "machine_max_acceleration_y": [ - "8000" - ], - "machine_max_acceleration_z": [ - "100" - ], - "machine_max_acceleration_e": [ - "6000" - ], - "machine_max_acceleration_travel": [ - "10000" - ], - "machine_max_acceleration_extruding": [ - "10000" - ], - "machine_max_acceleration_retracting": [ - "6000" - ], - "machine_max_speed_x": [ - "350" - ], - "machine_max_speed_y": [ - "300" - ], - "machine_max_speed_z": [ - "10" - ], - "machine_max_speed_e": [ - "40" - ], - "machine_max_jerk_x": [ - "10" - ], - "machine_max_jerk_y": [ - "10" - ], - "machine_max_jerk_z": [ - "3" - ], - "machine_max_jerk_e": [ - "2.5" - ], - "retract_length_toolchange": [ - "2", - "2" - ], - "printable_area": [ - "0x0", - "324x0", - "324x200", - "0x200" - ], - "bed_exclude_area": [ - "312x0", - "324x0", - "324x200", - "312x200" - ], - "thumbnails": [ - "300x300" - ], - "extruder_offset": [ - "0x0", - "0x0" - ], - "default_filament_profile": [ - "Snapmaker J1 PLA", - "Snapmaker J1 PETG" - ], - "machine_start_gcode": "; Model: Snapmaker J1 ({nozzle_diameter[0]}/{nozzle_diameter[1]})\n; Update: 20240922\n; Maintained by https://github.com/macdylan/3dp-configs\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n; --- initial_extruder: [initial_extruder]\n; --- has_wipe_tower: [has_wipe_tower]\n; --- total_toolchanges: [total_toolchanges]\n; --- T0: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - 1, 0))]}\n; --- T1: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - 0, 0))]}\n\nT[initial_extruder]\n\nM205 V[machine_max_jerk_x] ;Junction Deviation (mm)\n\n{if plate_name =~/.*IDEXDupl.*/ || plate_name =~/.*IDEXCopy.*/ }\n M605 S2 X162 R0 ;IDEX Duplication\n{elsif plate_name =~/.*IDEXMirr.*/}\n M605 S3 ;IDEX Mirror\n{elsif plate_name =~/.*IDEXBack.*/}\n M605 S4 ;IDEX Backup\n{endif}\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n; you can clean the nozzle\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n M104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S165\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n M104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S165\n {endif}\nM204 S100\nG28\n\nG0 Z100.0\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))}\n G0 X{if 0 == 0}80{else}240{endif} Y0 F6840.0\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))}\n G0 X{if 1 == 0}80{else}240{endif} Y0 F6840.0\n {endif}\n\nM190 R{first_layer_bed_temperature[initial_extruder]}\n\n{if 1==1}; LED\n M355 S1 P64\n G4 P100\n M355 S1 P128\n G4 P100\n M355 S1 P64\n G4 P200\n M355 S1 P255\n G4 P100\n{endif}\nG28 X Y\n\nM83\n{if 1==1 && max(hot_plate_temp_initial_layer[initial_extruder], hot_plate_temp[initial_extruder]) >= 90}\nG0 Z0.06\nG92 Z0 ;reset z\n{endif}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n; preheat 0\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))}\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n; preheat 1\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))}\n {endif}\n\n {if 1==1}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] and (initial_extruder % 2) != 0}\n; flush nozzle 0\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))}\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))}; common flush temp\nG0 Z1.6 F240.0\nG0 X{( 0 % 2 == 0 ? 147.0 : 177.0 )} F6840.0\nG0 Y0 F6840.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( 0 % 2 == 0 ? 137.0 : 187.0 )} F6840.0\nG0 Z0.3 F240.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( 0 % 2 == 0 ? 0 : 324 )} E8.5437 F6840.0\nG92 E0\n\nG1 E-{retract_length_toolchange[0]} F200\nG92 E0\nG0 Y20 F6840.0\nG28 X F6840.0\n\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n {endif}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] and (initial_extruder % 2) != 1}\n; flush nozzle 1\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))}\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))}; common flush temp\nG0 Z1.6 F240.0\nG0 X{( 1 % 2 == 0 ? 147.0 : 177.0 )} F6840.0\nG0 Y0 F6840.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( 1 % 2 == 0 ? 137.0 : 187.0 )} F6840.0\nG0 Z0.3 F240.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( 1 % 2 == 0 ? 0 : 324 )} E8.5437 F6840.0\nG92 E0\n\nG1 E-{retract_length_toolchange[1]} F200\nG92 E0\nG0 Y20 F6840.0\nG28 X F6840.0\n\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n {endif}\n\n {endif}\n; flush initial nozzle\nT[initial_extruder]\nM104 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))}; common flush temp\nG0 Z1.6 F240.0\nG0 X{( initial_extruder % 2 == 0 ? 147.0 : 177.0 )} F6840.0\nG0 Y0 F6840.0\n\nM109 S{max(250, min(290, nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 15))} C2 W1\nG1 E20 F80.0\nG92 E0\n\nM106 S{min(255, (fan_max_speed[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 10) * 2.55)}\n\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))] + 5}\n\nG1 E12.0 F200\nG92 E0\nG1 E8.0 Z4.6 F200\nG92 E0\n\nG0 Z5.6 F200\nM107\n\nG0 X{( initial_extruder % 2 == 0 ? 137.0 : 187.0 )} F6840.0\nG0 Z0.3 F240.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E3 F200\nG92 E0\nG1 X{( initial_extruder % 2 == 0 ? 0 : 324 )} E8.5437 F6840.0\nG92 E0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F6840.0\n\n; ready [plate_name]", - "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-10 F200\nG28\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S0\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S0\n {endif}\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", - "change_filament_gcode": ";***** Update: 20240823\n{if current_extruder != next_extruder}\n; Change T[current_extruder] -> T[next_extruder] (layer [layer_num] [toolchange_count]/[total_toolchanges])\n; layer [layer_num] at [layer_z]mm\nT[next_extruder]\n\n M107 P[current_extruder] ;fan off T[current_extruder]\n\n{if layer_num == 1 &&\n ((filament_type[current_extruder] == \"PLA\" || filament_type[current_extruder] == \"TPU\")\n || (filament_type[next_extruder] == \"PLA\" || filament_type[next_extruder] == \"TPU\"))\n}\n; set bed temp: {filament_type[current_extruder]}({bed_temperature[current_extruder]}) -> {filament_type[next_extruder]}({bed_temperature[next_extruder]})\nM140 S{min(bed_temperature[current_extruder], bed_temperature[next_extruder])}\n{endif}\n\nM2000 S200 V[travel_speed] A[travel_acceleration] ;quick switch extruders, S:200 mode/V:speed/A:acceleration\nM109 T[next_extruder] S{if layer_num < 1}[nozzle_temperature_initial_layer]{else}[nozzle_temperature]{endif} C3 W1 ;wait T[next_extruder]\n{if layer_z > first_layer_height && layer_num >= close_fan_the_first_x_layers[next_extruder]}\n M106 P[next_extruder] S{fan_min_speed[next_extruder] * 255.0 / 100.0} ;restore fan speed for T[next_extruder]\n{endif}\n{endif}", - "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" -} \ No newline at end of file + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_idex", + "inherits": "fdm_common", + "wipe": [ + "1" + ], + "wipe_distance": [ + "2" + ], + "retraction_speed": [ + "25", + "25" + ], + "deretraction_speed": [ + "25", + "25" + ], + "bed_model": "Snapmaker J1_bed.stl", + "bed_texture": "Snapmaker J1_texture.svg", + "printable_height": "200", + "extruder_clearance_radius": "35", + "extruder_clearance_height_to_rod": "35", + "extruder_clearance_height_to_lid": "150", + "printer_notes": "PRINTER_MODEL_SNAPMAKER_J1\n", + "fan_speedup_time": [ + "0.3" + ], + "machine_max_acceleration_x": [ + "10000" + ], + "machine_max_acceleration_y": [ + "8000" + ], + "machine_max_acceleration_z": [ + "100" + ], + "machine_max_acceleration_e": [ + "6000" + ], + "machine_max_acceleration_travel": [ + "10000" + ], + "machine_max_acceleration_extruding": [ + "10000" + ], + "machine_max_acceleration_retracting": [ + "6000" + ], + "machine_max_speed_x": [ + "350" + ], + "machine_max_speed_y": [ + "300" + ], + "machine_max_speed_z": [ + "10" + ], + "machine_max_speed_e": [ + "40" + ], + "machine_max_jerk_x": [ + "10" + ], + "machine_max_jerk_y": [ + "10" + ], + "machine_max_jerk_z": [ + "3" + ], + "machine_max_jerk_e": [ + "2.5" + ], + "retract_length_toolchange": [ + "2", + "2" + ], + "printable_area": [ + "0x0", + "324x0", + "324x200", + "0x200" + ], + "bed_exclude_area": [ + "312x0", + "324x0", + "324x200", + "312x200" + ], + "thumbnails": [ + "300x300" + ], + "extruder_offset": [ + "0x0", + "0x0" + ], + "default_filament_profile": [ + "Snapmaker J1 PLA", + "Snapmaker J1 PETG" + ], + "machine_start_gcode": "; Model: Snapmaker J1 ({nozzle_diameter[0]}/{nozzle_diameter[1]})\n; Update: 20241211\n; Maintained by https://github.com/macdylan/3dp-configs\n; Printer : [printer_preset]\n; Profile : [print_preset]\n; Plate : [plate_name]\n; --- initial_extruder: [initial_extruder]\n; --- has_wipe_tower: [has_wipe_tower]\n; --- total_toolchanges: [total_toolchanges]\n; --- T0: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - 1, 0))]}\n; --- T1: {is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - 0, 0))]}\n\nT[initial_extruder]\n\n{if plate_name =~/.*IDEXDupl.*/ || plate_name =~/.*IDEXCopy.*/ }\n M605 S2 X162 R0 ;IDEX Duplication\n\n{elsif plate_name =~/.*IDEXMirr.*/}\n M605 S3 ;IDEX Mirror\n\n{elsif plate_name =~/.*IDEXBack.*/}\n M605 S4 ;IDEX Backup\n{endif}\n\nM140 S{first_layer_bed_temperature[initial_extruder]}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n; preheat 0\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]} \n {endif}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n; preheat 1\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]} \n {endif}\n\nG28\nG0 Z0.2 F240.0\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))}\n G0 X{if 0 == 0}80{else}240{endif} Y0 F6840.0\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))}\n G0 X{if 1 == 0}80{else}240{endif} Y0 F6840.0\n {endif}\n\nM190 R{first_layer_bed_temperature[initial_extruder]}\n\nM83\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))] and (initial_extruder % 2) != 0}\n; flush nozzle 0\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))}\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]} \n\nG0 X{( 0 % 2 == 0 ? 137.0 : 187.0 )} F6840.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]} C3 W1\nG1 E6 F200\nG92 E0\nG1 X{( 0 % 2 == 0 ? -15 : 344 )} E8.5437 F3000.0\nG92 E0\n\nG1 E-{retract_length_toolchange[0]} F200\nG92 E0\nG0 Y20 F6840.0\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\n {endif}\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))] and (initial_extruder % 2) != 1}\n; flush nozzle 1\nT{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))}\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]} \n\nG0 X{( 1 % 2 == 0 ? 137.0 : 187.0 )} F3000.0\nG0 Z0.2 F240.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]} C3 W1\nG1 E8 F200\nG92 E0\nG1 X{( 1 % 2 == 0 ? -15 : 344 )} E8.5437 F3000.0\nG92 E0\n\nG1 E-{retract_length_toolchange[1]} F200\nG92 E0\nG0 Y20 F6840.0\nM104 S{temperature_vitrification[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\n {endif}\n\n; flush initial nozzle\nT[initial_extruder]\nM104 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]}\n\nG0 X{( initial_extruder % 2 == 0 ? 137.0 : 187.0 )} F3000.0\nG0 Z0.2 F240.0\nM109 S{nozzle_temperature_initial_layer[(initial_extruder % 2 == 0 ? min(initial_extruder + initial_extruder, 63) : max(initial_extruder - (1-initial_extruder), 0))]} C3 W1\nG1 E8 F200\nG92 E0\nG1 X{( initial_extruder % 2 == 0 ? -15 : 344 )} E8.5437 F3000.0\nG92 E0\n\nG1 E-{retraction_length[initial_extruder]} F200\nG92 E0\nG0 Y20 F6840.0\n\n; ready [plate_name]", + "machine_end_gcode": "G92 E0\n\nG0 Z{max_layer_z + 2.0} F600\n; retract the filament to make it easier to replace\nG0 E-10 F200\nG28\n\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 0, 63) : max(initial_extruder - (1-0), 0))} S0\n {endif}\n{if is_extruder_used[(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))]}\nM104 T{(initial_extruder % 2 == 0 ? min(initial_extruder + 1, 63) : max(initial_extruder - (1-1), 0))} S0\n {endif}\nM140 S0\nM107\nM220 S100\nM84\n\n;\n; DON'T REMOVE these lines if you're using the smfix (https://github.com/macdylan/SMFix)\n; min_x = [first_layer_print_min_0]\n; min_y = [first_layer_print_min_1]\n; max_x = [first_layer_print_max_0]\n; max_y = [first_layer_print_max_1]\n; max_z = [max_layer_z]\n; total_layer_number = [layer_num]\n;", + "change_filament_gcode": ";***** Update: 20241021\n{if current_extruder != next_extruder}\n; Change T[current_extruder] -> T[next_extruder] (layer [layer_num] [toolchange_count]/[total_toolchanges])\n; layer [layer_num] at [layer_z]mm\nT[next_extruder]\n\nM107 P[current_extruder] ;fan off T[current_extruder]\n\n{if layer_num == 1 &&\n ((filament_type[current_extruder] == \"PLA\" || filament_type[current_extruder] == \"TPU\")\n || (filament_type[next_extruder] == \"PLA\" || filament_type[next_extruder] == \"TPU\"))\n}\n; set bed temp: {filament_type[current_extruder]}({bed_temperature[current_extruder]}) -> {filament_type[next_extruder]}({bed_temperature[next_extruder]})\nM140 S{min(bed_temperature[current_extruder], bed_temperature[next_extruder])}\n{endif}\n\nM2000 S200 V[travel_speed] A[travel_acceleration] ;quick switch extruders, S:200 mode/V:speed/A:acceleration\nG4 S3\nM109 T[next_extruder] S{if layer_num < 1}[nozzle_temperature_initial_layer]{else}[nozzle_temperature]{endif} C3 W1 ;wait T[next_extruder]\n{if layer_z > first_layer_height && layer_num >= close_fan_the_first_x_layers[next_extruder]}\n M106 P[next_extruder] S{fan_min_speed[next_extruder] * 255.0 / 100.0} ;restore fan speed for T[next_extruder]\n{endif}\n{endif}", + "before_layer_change_gcode": "; layer_num: [layer_num]\nG92 E0" +} diff --git a/resources/profiles/Snapmaker/machine/fdm_klipper.json b/resources/profiles/Snapmaker/machine/fdm_klipper.json index 9f9a672d09..1d7ae66f6c 100644 --- a/resources/profiles/Snapmaker/machine/fdm_klipper.json +++ b/resources/profiles/Snapmaker/machine/fdm_klipper.json @@ -116,4 +116,4 @@ "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n", "machine_pause_gcode": "M601" -} \ No newline at end of file +} diff --git a/resources/profiles/Snapmaker/machine/fdm_linear2.json b/resources/profiles/Snapmaker/machine/fdm_linear2.json index 9cbef729d1..ed91a1489d 100644 --- a/resources/profiles/Snapmaker/machine/fdm_linear2.json +++ b/resources/profiles/Snapmaker/machine/fdm_linear2.json @@ -1,73 +1,73 @@ { - "type": "machine", - "name": "fdm_linear2", - "inherits": "fdm_common", - "from": "system", - "instantiation": "false", - "wipe": [ - "1" - ], - "wipe_distance": [ - "2" - ], - "z_hop_types": [ - "Normal Lift" - ], - "extruder_clearance_radius": "75", - "extruder_clearance_height_to_rod": "35", - "extruder_clearance_height_to_lid": "325", - "machine_max_acceleration_x": [ - "1100" - ], - "machine_max_acceleration_y": [ - "1000" - ], - "machine_max_acceleration_z": [ - "500" - ], - "machine_max_acceleration_e": [ - "3000" - ], - "machine_max_acceleration_travel": [ - "1100" - ], - "machine_max_acceleration_extruding": [ - "1100" - ], - "machine_max_acceleration_retracting": [ - "1100" - ], - "machine_max_speed_x": [ - "150" - ], - "machine_max_speed_y": [ - "150" - ], - "machine_max_speed_z": [ - "40" - ], - "machine_max_speed_e": [ - "45" - ], - "machine_max_jerk_x": [ - "5" - ], - "machine_max_jerk_y": [ - "1" - ], - "machine_max_jerk_z": [ - "1" - ], - "machine_max_jerk_e": [ - "3" - ], - "thumbnails": [ - "300x150" - ], - "retract_length_toolchange": [ - "2" - ], - "default_filament_profile": [ - "Snapmaker PLA" - ] + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_linear2", + "inherits": "fdm_common", + "wipe": [ + "1" + ], + "wipe_distance": [ + "2" + ], + "z_hop_types": [ + "Normal Lift" + ], + "extruder_clearance_radius": "75", + "extruder_clearance_height_to_rod": "35", + "extruder_clearance_height_to_lid": "325", + "machine_max_acceleration_x": [ + "1100" + ], + "machine_max_acceleration_y": [ + "1000" + ], + "machine_max_acceleration_z": [ + "500" + ], + "machine_max_acceleration_e": [ + "3000" + ], + "machine_max_acceleration_travel": [ + "1100" + ], + "machine_max_acceleration_extruding": [ + "1100" + ], + "machine_max_acceleration_retracting": [ + "1100" + ], + "machine_max_speed_x": [ + "150" + ], + "machine_max_speed_y": [ + "150" + ], + "machine_max_speed_z": [ + "40" + ], + "machine_max_speed_e": [ + "45" + ], + "machine_max_jerk_x": [ + "5" + ], + "machine_max_jerk_y": [ + "1" + ], + "machine_max_jerk_z": [ + "1" + ], + "machine_max_jerk_e": [ + "3" + ], + "thumbnails": [ + "300x150" + ], + "retract_length_toolchange": [ + "2" + ], + "default_filament_profile": [ + "Snapmaker PLA" + ] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/machine/fdm_linear2_dual.json b/resources/profiles/Snapmaker/machine/fdm_linear2_dual.json index af0a77dd4d..762acb2144 100644 --- a/resources/profiles/Snapmaker/machine/fdm_linear2_dual.json +++ b/resources/profiles/Snapmaker/machine/fdm_linear2_dual.json @@ -1,29 +1,25 @@ { - "type": "machine", - "name": "fdm_linear2_dual", - "inherits": "fdm_linear2", - "from": "system", - "instantiation": "false", - "retraction_speed": [ - "35", - "35" - ], - "deretraction_speed": [ - "35", - "35" - ], - "extruder_clearance_height_to_rod": "60", - "extruder_clearance_height_to_lid": "285", - "retract_length_toolchange": [ - "18", - "18" - ], - "default_filament_profile": [ - "Snapmaker PLA", - "Snapmaker PETG" - ], - "extruder_offset": [ - "0x0", - "0x0" - ] -} \ No newline at end of file + "type": "machine", + "from": "system", + "instantiation": "false", + "name": "fdm_linear2_dual", + "inherits": "fdm_linear2", + "retraction_speed": [ + "35", + "35" + ], + "deretraction_speed": [ + "35", + "35" + ], + "extruder_clearance_height_to_rod": "60", + "extruder_clearance_height_to_lid": "285", + "retract_length_toolchange": [ + "18", + "18" + ], + "default_filament_profile": [ + "Snapmaker PLA", + "Snapmaker PETG" + ] +} diff --git a/resources/profiles/Snapmaker/machine/fdm_toolchanger.json b/resources/profiles/Snapmaker/machine/fdm_toolchanger.json index 122771ea81..d91f4bb610 100644 --- a/resources/profiles/Snapmaker/machine/fdm_toolchanger.json +++ b/resources/profiles/Snapmaker/machine/fdm_toolchanger.json @@ -1,84 +1,29 @@ { "type": "machine", "name": "fdm_toolchanger", - "inherits": "fdm_klipper", "from": "system", "instantiation": "false", + "inherits": "fdm_klipper", "gcode_flavor": "klipper", - "machine_max_acceleration_e": [ - "5000", - "5000" - ], - "machine_max_acceleration_extruding": [ - "20000", - "20000" - ], - "machine_max_acceleration_retracting": [ - "5000", - "5000" - ], - "machine_max_acceleration_travel": [ - "20000", - "20000" - ], - "machine_max_acceleration_x": [ - "20000", - "20000" - ], - "machine_max_acceleration_y": [ - "20000", - "20000" - ], - "machine_max_acceleration_z": [ - "500", - "200" - ], - "machine_max_speed_e": [ - "25", - "25" - ], - "machine_max_speed_x": [ - "500", - "200" - ], - "machine_max_speed_y": [ - "500", - "200" - ], - "machine_max_speed_z": [ - "12", - "12" - ], - "machine_max_jerk_e": [ - "2.5", - "2.5" - ], - "machine_max_jerk_x": [ - "9", - "9" - ], - "machine_max_jerk_y": [ - "9", - "9" - ], - "machine_max_jerk_z": [ - "0.2", - "0.4" - ], - "machine_min_extruding_rate": [ - "0", - "0" - ], - "machine_min_travel_rate": [ - "0", - "0" - ], - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], + "machine_max_acceleration_e": ["5000", "5000"], + "machine_max_acceleration_extruding": ["20000", "20000"], + "machine_max_acceleration_retracting": ["5000", "5000"], + "machine_max_acceleration_travel": ["20000", "20000"], + "machine_max_acceleration_x": ["20000", "20000"], + "machine_max_acceleration_y": ["20000", "20000"], + "machine_max_acceleration_z": ["500", "200"], + "machine_max_speed_e": ["25", "25"], + "machine_max_speed_x": ["500", "200"], + "machine_max_speed_y": ["500", "200"], + "machine_max_speed_z": ["12", "12"], + "machine_max_jerk_e": ["2.5", "2.5"], + "machine_max_jerk_x": ["9", "9"], + "machine_max_jerk_y": ["9", "9"], + "machine_max_jerk_z": ["0.2", "0.4"], + "machine_min_extruding_rate": ["0", "0"], + "machine_min_travel_rate": ["0", "0"], + "max_layer_height": ["0.32"], + "min_layer_height": ["0.08"], "printable_height": "250", "extruder_clearance_radius": "65", "extruder_clearance_height_to_rod": "36", @@ -86,50 +31,26 @@ "printer_settings_id": "", "printer_technology": "FFF", "printer_variant": "0.4", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "70%" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "0.8" - ], - "retract_length_toolchange": [ - "2" - ], - "z_hop": [ - "0.4" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retraction_speed": [ - "30" - ], - "deretraction_speed": [ - "30" - ], + "retraction_minimum_travel": ["1"], + "retract_before_wipe": ["70%"], + "retract_when_changing_layer": ["1"], + "retraction_length": ["0.8"], + "retract_length_toolchange": ["2"], + "z_hop": ["0.4"], + "retract_restart_extra": ["0"], + "retract_restart_extra_toolchange": ["0"], + "retraction_speed": ["30"], + "deretraction_speed": ["30"], "z_hop_types": "Normal Lift", "silent_mode": "0", "single_extruder_multi_material": "1", "change_filament_gcode": "", - "wipe": [ - "1" - ], + "wipe": ["1"], "default_filament_profile": [ "Snapmaker PLA" ], "default_print_profile": "0.20mm Standard @Snapmaker", - "bed_exclude_area": [ - "0x0" - ], + "bed_exclude_area": ["0x0"], "machine_start_gcode": "M190 S[bed_temperature_initial_layer_single]\nM109 S[nozzle_temperature_initial_layer]\nPRINT_START EXTRUDER=[nozzle_temperature_initial_layer] BED=[bed_temperature_initial_layer_single]\n", "machine_end_gcode": "PRINT_END", "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", @@ -138,4 +59,5 @@ "scan_first_layer": "0", "nozzle_type": "undefine", "auxiliary_fan": "0" -} \ No newline at end of file + } + \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker (0.2 nozzle).json index 6d64083b57..ffbaf1b649 100644 --- a/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker (0.2 nozzle).json @@ -1,52 +1,52 @@ { - "type": "process", - "name": "0.06 Standard @Snapmaker (0.2 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "1495708454", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)" - ], - "bottom_shell_layers": "5", - "bridge_flow": "1", - "initial_layer_line_width": "0.25", - "initial_layer_print_height": "0.1", - "inner_wall_line_width": "0.22", - "internal_solid_infill_line_width": "0.22", - "layer_height": "0.06", - "line_width": "0.22", - "outer_wall_line_width": "0.22", - "sparse_infill_line_width": "0.22", - "support_line_width": "0.22", - "top_shell_layers": "7", - "top_surface_line_width": "0.22", - "wall_loops": "4", - "initial_layer_speed": "40", - "gap_infill_speed": "85", - "inner_wall_speed": "120", - "internal_solid_infill_speed": "120", - "ironing_speed": "30", - "outer_wall_speed": "100", - "support_interface_speed": "40", - "support_speed": "100", - "travel_speed": "110", - "overhang_1_4_speed": "60", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "10" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.06 Standard @Snapmaker (0.2 nozzle)", + "setting_id": "1495708454", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)" + ], + "bottom_shell_layers": "5", + "bridge_flow": "1", + "initial_layer_line_width": "0.25", + "initial_layer_print_height": "0.1", + "inner_wall_line_width": "0.22", + "internal_solid_infill_line_width": "0.22", + "layer_height": "0.06", + "line_width": "0.22", + "outer_wall_line_width": "0.22", + "sparse_infill_line_width": "0.22", + "support_line_width": "0.22", + "top_shell_layers": "7", + "top_surface_line_width": "0.22", + "wall_loops": "4", + "initial_layer_speed": "40", + "gap_infill_speed": "85", + "inner_wall_speed": "120", + "internal_solid_infill_speed": "120", + "ironing_speed": "30", + "outer_wall_speed": "100", + "support_interface_speed": "40", + "support_speed": "100", + "travel_speed": "110", + "overhang_1_4_speed": "60", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "10" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker Artisan (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker Artisan (0.2 nozzle).json index 24fd7a1000..e28c15c8f7 100644 --- a/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker Artisan (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker Artisan (0.2 nozzle).json @@ -1,27 +1,27 @@ { - "type": "process", - "name": "0.06 Standard @Snapmaker Artisan (0.2 nozzle)", - "from": "system", - "setting_id": "3200425436", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.2 nozzle)" - ], - "bottom_shell_layers": "4", - "bridge_flow": "1", - "initial_layer_line_width": "0.25", - "initial_layer_print_height": "0.1", - "inner_wall_line_width": "0.22", - "internal_solid_infill_line_width": "0.22", - "layer_height": "0.06", - "line_width": "0.22", - "outer_wall_line_width": "0.22", - "sparse_infill_line_width": "0.22", - "support_line_width": "0.22", - "top_shell_layers": "5", - "top_surface_line_width": "0.22", - "wall_loops": "4", - "initial_layer_infill_speed": "70", - "initial_layer_speed": "40", - "inner_wall_speed": "150" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.06 Standard @Snapmaker Artisan (0.2 nozzle)", + "setting_id": "3200425436", + "compatible_printers": [ + "Snapmaker Artisan (0.2 nozzle)" + ], + "bottom_shell_layers": "4", + "bridge_flow": "1", + "initial_layer_line_width": "0.25", + "initial_layer_print_height": "0.1", + "inner_wall_line_width": "0.22", + "internal_solid_infill_line_width": "0.22", + "layer_height": "0.06", + "line_width": "0.22", + "outer_wall_line_width": "0.22", + "sparse_infill_line_width": "0.22", + "support_line_width": "0.22", + "top_shell_layers": "5", + "top_surface_line_width": "0.22", + "wall_loops": "4", + "initial_layer_infill_speed": "70", + "initial_layer_speed": "40", + "inner_wall_speed": "150" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker J1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker J1 (0.2 nozzle).json index f43f14ad08..b6a267151d 100644 --- a/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker J1 (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.06 Standard @Snapmaker J1 (0.2 nozzle).json @@ -1,27 +1,27 @@ { - "type": "process", - "name": "0.06 Standard @Snapmaker J1 (0.2 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "4149563988", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "bottom_shell_layers": "4", - "bridge_flow": "1", - "initial_layer_line_width": "0.25", - "initial_layer_print_height": "0.1", - "inner_wall_line_width": "0.22", - "internal_solid_infill_line_width": "0.22", - "layer_height": "0.06", - "line_width": "0.22", - "outer_wall_line_width": "0.22", - "sparse_infill_line_width": "0.22", - "support_line_width": "0.22", - "top_shell_layers": "5", - "top_surface_line_width": "0.22", - "wall_loops": "4", - "initial_layer_infill_speed": "80", - "inner_wall_speed": "145" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.06 Standard @Snapmaker J1 (0.2 nozzle)", + "setting_id": "4149563988", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ], + "bottom_shell_layers": "4", + "bridge_flow": "1", + "initial_layer_line_width": "0.25", + "initial_layer_print_height": "0.1", + "inner_wall_line_width": "0.22", + "internal_solid_infill_line_width": "0.22", + "layer_height": "0.06", + "line_width": "0.22", + "outer_wall_line_width": "0.22", + "sparse_infill_line_width": "0.22", + "support_line_width": "0.22", + "top_shell_layers": "5", + "top_surface_line_width": "0.22", + "wall_loops": "4", + "initial_layer_infill_speed": "80", + "inner_wall_speed": "145" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker (0.4 nozzle).json index 6861389223..a081fe766e 100644 --- a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker (0.4 nozzle).json @@ -1,46 +1,46 @@ { - "type": "process", - "name": "0.08 Extra Fine @Snapmaker (0.4 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "3124178337", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" - ], - "bottom_shell_layers": "7", - "bridge_flow": "1", - "elefant_foot_compensation": "0.15", - "ironing_flow": "8%", - "layer_height": "0.08", - "initial_layer_print_height": "0.1", - "support_threshold_angle": "15", - "top_shell_layers": "9", - "gap_infill_speed": "85", - "initial_layer_infill_speed": "65", - "inner_wall_speed": "120", - "internal_solid_infill_speed": "120", - "overhang_1_4_speed": "55", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "10", - "sparse_infill_speed": "90", - "top_surface_speed": "70", - "ironing_speed": "30", - "support_speed": "100", - "travel_speed": "110" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.08 Extra Fine @Snapmaker (0.4 nozzle)", + "setting_id": "3124178337", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" + ], + "bottom_shell_layers": "7", + "bridge_flow": "1", + "elefant_foot_compensation": "0.15", + "ironing_flow": "8%", + "layer_height": "0.08", + "initial_layer_print_height": "0.1", + "support_threshold_angle": "15", + "top_shell_layers": "9", + "gap_infill_speed": "85", + "initial_layer_infill_speed": "65", + "inner_wall_speed": "120", + "internal_solid_infill_speed": "120", + "overhang_1_4_speed": "55", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "10", + "sparse_infill_speed": "90", + "top_surface_speed": "70", + "ironing_speed": "30", + "support_speed": "100", + "travel_speed": "110" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json index d759a248c6..22bdb6cb08 100644 --- a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json @@ -1,22 +1,22 @@ { - "type": "process", - "name": "0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "723238605", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.4 nozzle)" - ], - "bottom_shell_layers": "4", - "bridge_flow": "1", - "elefant_foot_compensation": "0.15", - "ironing_flow": "8%", - "layer_height": "0.08", - "initial_layer_print_height": "0.1", - "support_threshold_angle": "15", - "top_shell_layers": "5", - "initial_layer_infill_speed": "80", - "inner_wall_speed": "145", - "internal_solid_infill_speed": "150" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle)", + "setting_id": "723238605", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.4 nozzle)" + ], + "bottom_shell_layers": "4", + "bridge_flow": "1", + "elefant_foot_compensation": "0.15", + "ironing_flow": "8%", + "layer_height": "0.08", + "initial_layer_print_height": "0.1", + "support_threshold_angle": "15", + "top_shell_layers": "5", + "initial_layer_infill_speed": "80", + "inner_wall_speed": "145", + "internal_solid_infill_speed": "150" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker J1 (0.4 nozzle).json index c96a36175f..eaf51d4cd6 100644 --- a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker J1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker J1 (0.4 nozzle).json @@ -1,22 +1,22 @@ { - "type": "process", - "name": "0.08 Extra Fine @Snapmaker J1 (0.4 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "175768766", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)" - ], - "bottom_shell_layers": "4", - "bridge_flow": "1", - "elefant_foot_compensation": "0.15", - "ironing_flow": "8%", - "layer_height": "0.08", - "initial_layer_print_height": "0.1", - "support_threshold_angle": "15", - "top_shell_layers": "5", - "initial_layer_infill_speed": "80", - "inner_wall_speed": "145", - "internal_solid_infill_speed": "150" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.08 Extra Fine @Snapmaker J1 (0.4 nozzle)", + "setting_id": "175768766", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)" + ], + "bottom_shell_layers": "4", + "bridge_flow": "1", + "elefant_foot_compensation": "0.15", + "ironing_flow": "8%", + "layer_height": "0.08", + "initial_layer_print_height": "0.1", + "support_threshold_angle": "15", + "top_shell_layers": "5", + "initial_layer_infill_speed": "80", + "inner_wall_speed": "145", + "internal_solid_infill_speed": "150" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker U1 (0.4 nozzle).json index c80e4d2b53..acbb3deff2 100644 --- a/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.08 Extra Fine @Snapmaker U1 (0.4 nozzle).json @@ -12,7 +12,12 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "40", + "prime_volume": "35", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", - "wipe_tower_filament": "1" + "wipe_tower_filament": "0", + "prime_tower_brim_width": "5", + "wipe_tower_cone_angle": "15", + "wipe_tower_extra_spacing": "120%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.4 nozzle).json index 66c8e5d710..50f3c218f0 100644 --- a/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.08 High Quality @Snapmaker U1 (0.4 nozzle).json @@ -21,7 +21,12 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "40", + "prime_volume": "35", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", - "wipe_tower_filament": "1" + "wipe_tower_filament": "0", + "prime_tower_brim_width": "5", + "wipe_tower_cone_angle": "15", + "wipe_tower_extra_spacing": "120%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker (0.2 nozzle).json index dd5c2ef9c3..10f10cbe48 100644 --- a/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker (0.2 nozzle).json @@ -1,54 +1,54 @@ { - "type": "process", - "name": "0.10 Standard @Snapmaker (0.2 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "1303724634", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)" - ], - "layer_height": "0.1", - "initial_layer_print_height": "0.1", - "wall_loops": "4", - "bottom_shell_layers": "5", - "top_shell_layers": "7", - "bridge_flow": "1", - "line_width": "0.22", - "outer_wall_line_width": "0.22", - "initial_layer_line_width": "0.25", - "sparse_infill_line_width": "0.22", - "inner_wall_line_width": "0.22", - "internal_solid_infill_line_width": "0.22", - "support_line_width": "0.22", - "top_surface_line_width": "0.22", - "initial_layer_speed": "40", - "initial_layer_infill_speed": "70", - "sparse_infill_speed": "100", - "gap_infill_speed": "85", - "inner_wall_speed": "120", - "internal_solid_infill_speed": "120", - "ironing_speed": "30", - "outer_wall_speed": "100", - "support_interface_speed": "40", - "support_speed": "100", - "travel_speed": "110", - "overhang_1_4_speed": "60", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "10" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.10 Standard @Snapmaker (0.2 nozzle)", + "setting_id": "1303724634", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)" + ], + "layer_height": "0.1", + "initial_layer_print_height": "0.1", + "wall_loops": "4", + "bottom_shell_layers": "5", + "top_shell_layers": "7", + "bridge_flow": "1", + "line_width": "0.22", + "outer_wall_line_width": "0.22", + "initial_layer_line_width": "0.25", + "sparse_infill_line_width": "0.22", + "inner_wall_line_width": "0.22", + "internal_solid_infill_line_width": "0.22", + "support_line_width": "0.22", + "top_surface_line_width": "0.22", + "initial_layer_speed": "40", + "initial_layer_infill_speed": "70", + "sparse_infill_speed": "100", + "gap_infill_speed": "85", + "inner_wall_speed": "120", + "internal_solid_infill_speed": "120", + "ironing_speed": "30", + "outer_wall_speed": "100", + "support_interface_speed": "40", + "support_speed": "100", + "travel_speed": "110", + "overhang_1_4_speed": "60", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "10" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker Artisan (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker Artisan (0.2 nozzle).json index 6599f7eadf..a1bc54d546 100644 --- a/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker Artisan (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker Artisan (0.2 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.10 Standard @Snapmaker Artisan (0.2 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "2309389761", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.2 nozzle)" - ], - "layer_height": "0.1", - "initial_layer_print_height": "0.1", - "wall_loops": "4", - "bottom_shell_layers": "5", - "top_shell_layers": "7", - "bridge_flow": "1", - "line_width": "0.22", - "outer_wall_line_width": "0.22", - "initial_layer_line_width": "0.25", - "sparse_infill_line_width": "0.22", - "inner_wall_line_width": "0.22", - "internal_solid_infill_line_width": "0.22", - "support_line_width": "0.22", - "top_surface_line_width": "0.22" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.10 Standard @Snapmaker Artisan (0.2 nozzle)", + "setting_id": "2309389761", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.2 nozzle)" + ], + "layer_height": "0.1", + "initial_layer_print_height": "0.1", + "wall_loops": "4", + "bottom_shell_layers": "5", + "top_shell_layers": "7", + "bridge_flow": "1", + "line_width": "0.22", + "outer_wall_line_width": "0.22", + "initial_layer_line_width": "0.25", + "sparse_infill_line_width": "0.22", + "inner_wall_line_width": "0.22", + "internal_solid_infill_line_width": "0.22", + "support_line_width": "0.22", + "top_surface_line_width": "0.22" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker J1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker J1 (0.2 nozzle).json index 4cdd926cd3..f928d404ba 100644 --- a/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker J1 (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.10 Standard @Snapmaker J1 (0.2 nozzle).json @@ -1,27 +1,27 @@ { - "type": "process", - "name": "0.10 Standard @Snapmaker J1 (0.2 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "3458191734", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "layer_height": "0.1", - "initial_layer_print_height": "0.1", - "wall_loops": "4", - "bottom_shell_layers": "5", - "top_shell_layers": "7", - "bridge_flow": "1", - "line_width": "0.22", - "outer_wall_line_width": "0.22", - "initial_layer_line_width": "0.25", - "sparse_infill_line_width": "0.22", - "inner_wall_line_width": "0.22", - "internal_solid_infill_line_width": "0.22", - "support_line_width": "0.22", - "top_surface_line_width": "0.22", - "initial_layer_infill_speed": "80", - "inner_wall_speed": "145" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.10 Standard @Snapmaker J1 (0.2 nozzle)", + "setting_id": "3458191734", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ], + "layer_height": "0.1", + "initial_layer_print_height": "0.1", + "wall_loops": "4", + "bottom_shell_layers": "5", + "top_shell_layers": "7", + "bridge_flow": "1", + "line_width": "0.22", + "outer_wall_line_width": "0.22", + "initial_layer_line_width": "0.25", + "sparse_infill_line_width": "0.22", + "inner_wall_line_width": "0.22", + "internal_solid_infill_line_width": "0.22", + "support_line_width": "0.22", + "top_surface_line_width": "0.22", + "initial_layer_infill_speed": "80", + "inner_wall_speed": "145" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker (0.4 nozzle).json index 19b64ee78b..24216b3c5c 100644 --- a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker (0.4 nozzle).json @@ -1,46 +1,46 @@ { - "type": "process", - "name": "0.12 Fine @Snapmaker (0.4 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "659326512", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" - ], - "layer_height": "0.12", - "initial_layer_print_height": "0.2", - "bottom_shell_layers": "5", - "elefant_foot_compensation": "0.15", - "top_shell_layers": "5", - "top_shell_thickness": "0.6", - "bridge_flow": "1", - "support_threshold_angle": "20", - "initial_layer_infill_speed": "65", - "outer_wall_speed": "75", - "inner_wall_speed": "120", - "sparse_infill_speed": "90", - "internal_solid_infill_speed": "120", - "top_surface_speed": "70", - "gap_infill_speed": "85", - "overhang_1_4_speed": "55", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "10", - "ironing_speed": "30", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.12 Fine @Snapmaker (0.4 nozzle)", + "setting_id": "659326512", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" + ], + "layer_height": "0.12", + "initial_layer_print_height": "0.2", + "bottom_shell_layers": "5", + "elefant_foot_compensation": "0.15", + "top_shell_layers": "5", + "top_shell_thickness": "0.6", + "bridge_flow": "1", + "support_threshold_angle": "20", + "initial_layer_infill_speed": "65", + "outer_wall_speed": "75", + "inner_wall_speed": "120", + "sparse_infill_speed": "90", + "internal_solid_infill_speed": "120", + "top_surface_speed": "70", + "gap_infill_speed": "85", + "overhang_1_4_speed": "55", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "10", + "ironing_speed": "30", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker Artisan (0.4 nozzle).json index d85ce821ea..41cfa41d21 100644 --- a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker Artisan (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker Artisan (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "process", - "name": "0.12 Fine @Snapmaker Artisan (0.4 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "3320746901", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.4 nozzle)" - ], - "layer_height": "0.12", - "bottom_shell_layers": "5", - "elefant_foot_compensation": "0.15", - "top_shell_layers": "5", - "top_shell_thickness": "0.6", - "bridge_flow": "1", - "support_threshold_angle": "20", - "initial_layer_infill_speed": "80", - "inner_wall_speed": "145", - "internal_solid_infill_speed": "150" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.12 Fine @Snapmaker Artisan (0.4 nozzle)", + "setting_id": "3320746901", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.4 nozzle)" + ], + "layer_height": "0.12", + "bottom_shell_layers": "5", + "elefant_foot_compensation": "0.15", + "top_shell_layers": "5", + "top_shell_thickness": "0.6", + "bridge_flow": "1", + "support_threshold_angle": "20", + "initial_layer_infill_speed": "80", + "inner_wall_speed": "145", + "internal_solid_infill_speed": "150" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker J1 (0.4 nozzle).json index f64c1febb0..1ff7629339 100644 --- a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker J1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker J1 (0.4 nozzle).json @@ -1,21 +1,21 @@ { - "type": "process", - "name": "0.12 Fine @Snapmaker J1 (0.4 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "2089753458", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)" - ], - "layer_height": "0.12", - "bottom_shell_layers": "5", - "elefant_foot_compensation": "0.15", - "top_shell_layers": "5", - "top_shell_thickness": "0.6", - "bridge_flow": "1", - "support_threshold_angle": "20", - "initial_layer_infill_speed": "80", - "inner_wall_speed": "145", - "internal_solid_infill_speed": "150" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.12 Fine @Snapmaker J1 (0.4 nozzle)", + "setting_id": "2089753458", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)" + ], + "layer_height": "0.12", + "bottom_shell_layers": "5", + "elefant_foot_compensation": "0.15", + "top_shell_layers": "5", + "top_shell_thickness": "0.6", + "bridge_flow": "1", + "support_threshold_angle": "20", + "initial_layer_infill_speed": "80", + "inner_wall_speed": "145", + "internal_solid_infill_speed": "150" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker U1 (0.4 nozzle).json index 281ef4f5b5..8a9194d106 100644 --- a/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.12 Fine @Snapmaker U1 (0.4 nozzle).json @@ -14,5 +14,10 @@ "ooze_prevention": "1", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", - "wipe_tower_filament": "1" + "wipe_tower_filament": "0", + "prime_tower_brim_width": "5", + "prime_tower_width": "40", + "prime_volume": "35", + "wipe_tower_cone_angle": "15", + "wipe_tower_extra_spacing": "120%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.12 High Quality @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.12 High Quality @Snapmaker U1 (0.4 nozzle).json index f70e8f8292..4b4e14c16b 100644 --- a/resources/profiles/Snapmaker/process/0.12 High Quality @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.12 High Quality @Snapmaker U1 (0.4 nozzle).json @@ -20,6 +20,11 @@ "compatible_printers": [ "Snapmaker U1 (0.4 nozzle)" ], + "prime_tower_width": "40", + "prime_volume": "35", "slowdown_for_curled_perimeters": "0", - "wipe_tower_filament": "1" + "wipe_tower_filament": "0", + "prime_tower_brim_width": "5", + "wipe_tower_cone_angle": "15", + "wipe_tower_extra_spacing": "120%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker (0.2 nozzle).json index 8b9354c632..29567647ae 100644 --- a/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker (0.2 nozzle).json @@ -1,53 +1,53 @@ { - "type": "process", - "name": "0.14 Standard @Snapmaker (0.2 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "3753641602", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.2 nozzle)", - "Snapmaker A350 (0.2 nozzle)", - "Snapmaker A250 Dual (0.2 nozzle)", - "Snapmaker A350 Dual (0.2 nozzle)", - "Snapmaker A250 QSKit (0.2 nozzle)", - "Snapmaker A350 QSKit (0.2 nozzle)", - "Snapmaker A250 BKit (0.2 nozzle)", - "Snapmaker A350 BKit (0.2 nozzle)", - "Snapmaker A250 QS+B Kit (0.2 nozzle)", - "Snapmaker A350 QS+B Kit (0.2 nozzle)", - "Snapmaker A250 Dual QSKit (0.2 nozzle)", - "Snapmaker A350 Dual QSKit (0.2 nozzle)", - "Snapmaker A250 Dual BKit (0.2 nozzle)", - "Snapmaker A350 Dual BKit (0.2 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)" - ], - "layer_height": "0.14", - "initial_layer_print_height": "0.2", - "wall_loops": "4", - "bottom_shell_layers": "5", - "top_shell_layers": "7", - "bridge_flow": "1", - "line_width": "0.22", - "outer_wall_line_width": "0.22", - "initial_layer_line_width": "0.25", - "sparse_infill_line_width": "0.22", - "inner_wall_line_width": "0.22", - "internal_solid_infill_line_width": "0.22", - "support_line_width": "0.22", - "top_surface_line_width": "0.22", - "initial_layer_speed": "40", - "initial_layer_infill_speed": "70", - "sparse_infill_speed": "100", - "gap_infill_speed": "85", - "inner_wall_speed": "120", - "internal_solid_infill_speed": "120", - "ironing_speed": "30", - "outer_wall_speed": "100", - "support_interface_speed": "40", - "support_speed": "100", - "overhang_1_4_speed": "60", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "10" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.14 Standard @Snapmaker (0.2 nozzle)", + "setting_id": "3753641602", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.2 nozzle)", + "Snapmaker A350 (0.2 nozzle)", + "Snapmaker A250 Dual (0.2 nozzle)", + "Snapmaker A350 Dual (0.2 nozzle)", + "Snapmaker A250 QSKit (0.2 nozzle)", + "Snapmaker A350 QSKit (0.2 nozzle)", + "Snapmaker A250 BKit (0.2 nozzle)", + "Snapmaker A350 BKit (0.2 nozzle)", + "Snapmaker A250 QS+B Kit (0.2 nozzle)", + "Snapmaker A350 QS+B Kit (0.2 nozzle)", + "Snapmaker A250 Dual QSKit (0.2 nozzle)", + "Snapmaker A350 Dual QSKit (0.2 nozzle)", + "Snapmaker A250 Dual BKit (0.2 nozzle)", + "Snapmaker A350 Dual BKit (0.2 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.2 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.2 nozzle)" + ], + "layer_height": "0.14", + "initial_layer_print_height": "0.2", + "wall_loops": "4", + "bottom_shell_layers": "5", + "top_shell_layers": "7", + "bridge_flow": "1", + "line_width": "0.22", + "outer_wall_line_width": "0.22", + "initial_layer_line_width": "0.25", + "sparse_infill_line_width": "0.22", + "inner_wall_line_width": "0.22", + "internal_solid_infill_line_width": "0.22", + "support_line_width": "0.22", + "top_surface_line_width": "0.22", + "initial_layer_speed": "40", + "initial_layer_infill_speed": "70", + "sparse_infill_speed": "100", + "gap_infill_speed": "85", + "inner_wall_speed": "120", + "internal_solid_infill_speed": "120", + "ironing_speed": "30", + "outer_wall_speed": "100", + "support_interface_speed": "40", + "support_speed": "100", + "overhang_1_4_speed": "60", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "10" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker Artisan (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker Artisan (0.2 nozzle).json index 7c2d3c91df..06f70315ba 100644 --- a/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker Artisan (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker Artisan (0.2 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.14 Standard @Snapmaker Artisan (0.2 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "1624466618", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.2 nozzle)" - ], - "layer_height": "0.14", - "wall_loops": "4", - "bottom_shell_layers": "4", - "top_shell_layers": "5", - "bridge_flow": "1", - "line_width": "0.22", - "outer_wall_line_width": "0.22", - "initial_layer_line_width": "0.25", - "sparse_infill_line_width": "0.22", - "inner_wall_line_width": "0.22", - "internal_solid_infill_line_width": "0.22", - "support_line_width": "0.22", - "top_surface_line_width": "0.22", - "initial_layer_infill_speed": "80" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.14 Standard @Snapmaker Artisan (0.2 nozzle)", + "setting_id": "1624466618", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.2 nozzle)" + ], + "layer_height": "0.14", + "wall_loops": "4", + "bottom_shell_layers": "4", + "top_shell_layers": "5", + "bridge_flow": "1", + "line_width": "0.22", + "outer_wall_line_width": "0.22", + "initial_layer_line_width": "0.25", + "sparse_infill_line_width": "0.22", + "inner_wall_line_width": "0.22", + "internal_solid_infill_line_width": "0.22", + "support_line_width": "0.22", + "top_surface_line_width": "0.22", + "initial_layer_infill_speed": "80" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker J1 (0.2 nozzle).json b/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker J1 (0.2 nozzle).json index cac3719bb5..9370091a51 100644 --- a/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker J1 (0.2 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.14 Standard @Snapmaker J1 (0.2 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.14 Standard @Snapmaker J1 (0.2 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "2689370057", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.2 nozzle)" - ], - "layer_height": "0.14", - "wall_loops": "4", - "bottom_shell_layers": "4", - "top_shell_layers": "5", - "bridge_flow": "1", - "line_width": "0.22", - "outer_wall_line_width": "0.22", - "initial_layer_line_width": "0.25", - "sparse_infill_line_width": "0.22", - "inner_wall_line_width": "0.22", - "internal_solid_infill_line_width": "0.22", - "support_line_width": "0.22", - "top_surface_line_width": "0.22", - "initial_layer_infill_speed": "80" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.14 Standard @Snapmaker J1 (0.2 nozzle)", + "setting_id": "2689370057", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.2 nozzle)" + ], + "layer_height": "0.14", + "wall_loops": "4", + "bottom_shell_layers": "4", + "top_shell_layers": "5", + "bridge_flow": "1", + "line_width": "0.22", + "outer_wall_line_width": "0.22", + "initial_layer_line_width": "0.25", + "sparse_infill_line_width": "0.22", + "inner_wall_line_width": "0.22", + "internal_solid_infill_line_width": "0.22", + "support_line_width": "0.22", + "top_surface_line_width": "0.22", + "initial_layer_infill_speed": "80" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.16 High Quality @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.16 High Quality @Snapmaker U1 (0.4 nozzle).json index 7c63442c89..81a7d15e7a 100644 --- a/resources/profiles/Snapmaker/process/0.16 High Quality @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.16 High Quality @Snapmaker U1 (0.4 nozzle).json @@ -21,7 +21,12 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "40", + "prime_volume": "35", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", - "wipe_tower_filament": "1" + "wipe_tower_filament": "0", + "prime_tower_brim_width": "5", + "wipe_tower_cone_angle": "15", + "wipe_tower_extra_spacing": "120%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker (0.4 nozzle).json index 5f67aa73d0..119ae1e3e5 100644 --- a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker (0.4 nozzle).json @@ -1,45 +1,45 @@ { - "type": "process", - "name": "0.16 Optimal @Snapmaker (0.4 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "719207749", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" - ], - "layer_height": "0.16", - "initial_layer_print_height": "0.2", - "elefant_foot_compensation": "0.15", - "bottom_shell_layers": "4", - "top_shell_thickness": "0.6", - "bridge_flow": "1", - "support_threshold_angle": "25", - "initial_layer_infill_speed": "65", - "outer_wall_speed": "80", - "inner_wall_speed": "100", - "sparse_infill_speed": "95", - "infill_wall_overlap": "20%", - "top_surface_speed": "70", - "gap_infill_speed": "85", - "overhang_1_4_speed": "55", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "10", - "ironing_speed": "30", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.16 Optimal @Snapmaker (0.4 nozzle)", + "setting_id": "719207749", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" + ], + "layer_height": "0.16", + "initial_layer_print_height": "0.2", + "elefant_foot_compensation": "0.15", + "bottom_shell_layers": "4", + "top_shell_thickness": "0.6", + "bridge_flow": "1", + "support_threshold_angle": "25", + "initial_layer_infill_speed": "65", + "outer_wall_speed": "80", + "inner_wall_speed": "100", + "sparse_infill_speed": "95", + "infill_wall_overlap": "20%", + "top_surface_speed": "70", + "gap_infill_speed": "85", + "overhang_1_4_speed": "55", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "10", + "ironing_speed": "30", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker Artisan (0.4 nozzle).json index 8ecd00a565..e2547e522b 100644 --- a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker Artisan (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker Artisan (0.4 nozzle).json @@ -1,20 +1,20 @@ { - "type": "process", - "name": "0.16 Optimal @Snapmaker Artisan (0.4 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "2870109378", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.4 nozzle)" - ], - "layer_height": "0.16", - "elefant_foot_compensation": "0.15", - "bottom_shell_layers": "4", - "top_shell_layers": "5", - "top_shell_thickness": "0.6", - "bridge_flow": "1", - "support_threshold_angle": "25", - "initial_layer_infill_speed": "80", - "inner_wall_speed": "145" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.16 Optimal @Snapmaker Artisan (0.4 nozzle)", + "setting_id": "2870109378", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.4 nozzle)" + ], + "layer_height": "0.16", + "elefant_foot_compensation": "0.15", + "bottom_shell_layers": "4", + "top_shell_layers": "5", + "top_shell_thickness": "0.6", + "bridge_flow": "1", + "support_threshold_angle": "25", + "initial_layer_infill_speed": "80", + "inner_wall_speed": "145" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker J1 (0.4 nozzle).json index 3106ce8157..77a170ef61 100644 --- a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker J1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker J1 (0.4 nozzle).json @@ -1,20 +1,20 @@ { - "type": "process", - "name": "0.16 Optimal @Snapmaker J1 (0.4 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "931476703", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)" - ], - "layer_height": "0.16", - "elefant_foot_compensation": "0.15", - "bottom_shell_layers": "4", - "top_shell_layers": "5", - "top_shell_thickness": "0.6", - "bridge_flow": "1", - "support_threshold_angle": "25", - "initial_layer_infill_speed": "80", - "inner_wall_speed": "145" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.16 Optimal @Snapmaker J1 (0.4 nozzle)", + "setting_id": "931476703", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)" + ], + "layer_height": "0.16", + "elefant_foot_compensation": "0.15", + "bottom_shell_layers": "4", + "top_shell_layers": "5", + "top_shell_thickness": "0.6", + "bridge_flow": "1", + "support_threshold_angle": "25", + "initial_layer_infill_speed": "80", + "inner_wall_speed": "145" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json index 6c2469e391..3f6530b182 100644 --- a/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.16 Optimal @Snapmaker U1 (0.4 nozzle).json @@ -12,7 +12,12 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "40", + "prime_volume": "35", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", - "wipe_tower_filament": "1" + "wipe_tower_filament": "0", + "prime_tower_brim_width": "5", + "wipe_tower_cone_angle": "15", + "wipe_tower_extra_spacing": "120%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker (0.6 nozzle).json index 145dccb976..fa83e160f8 100644 --- a/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker (0.6 nozzle).json @@ -1,50 +1,50 @@ { - "type": "process", - "name": "0.18 Standard @Snapmaker (0.6 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "4013595815", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" - ], - "layer_height": "0.18", - "initial_layer_print_height": "0.2", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_flow": "1", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "initial_layer_speed": "35", - "initial_layer_infill_speed": "55", - "outer_wall_speed": "90", - "inner_wall_speed": "90", - "sparse_infill_speed": "100", - "gap_infill_speed": "50", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "ironing_speed": "30", - "support_interface_speed": "35", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.18 Standard @Snapmaker (0.6 nozzle)", + "setting_id": "4013595815", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" + ], + "layer_height": "0.18", + "initial_layer_print_height": "0.2", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_flow": "1", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "initial_layer_speed": "35", + "initial_layer_infill_speed": "55", + "outer_wall_speed": "90", + "inner_wall_speed": "90", + "sparse_infill_speed": "100", + "gap_infill_speed": "50", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50", + "ironing_speed": "30", + "support_interface_speed": "35", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker Artisan (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker Artisan (0.6 nozzle).json index 699376fd14..0993b70654 100644 --- a/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker Artisan (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker Artisan (0.6 nozzle).json @@ -1,22 +1,22 @@ { - "type": "process", - "name": "0.18 Standard @Snapmaker Artisan (0.6 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "3721468026", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.6 nozzle)" - ], - "layer_height": "0.18", - "wall_loops": "2", - "bridge_flow": "1", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.18 Standard @Snapmaker Artisan (0.6 nozzle)", + "setting_id": "3721468026", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.6 nozzle)" + ], + "layer_height": "0.18", + "wall_loops": "2", + "bridge_flow": "1", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker J1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker J1 (0.6 nozzle).json index 75996c5a22..a514ec6870 100644 --- a/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker J1 (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.18 Standard @Snapmaker J1 (0.6 nozzle).json @@ -1,24 +1,24 @@ { - "type": "process", - "name": "0.18 Standard @Snapmaker J1 (0.6 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "1330982148", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.6 nozzle)" - ], - "layer_height": "0.18", - "wall_loops": "2", - "bridge_flow": "1", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "inner_wall_speed": "145", - "internal_solid_infill_speed": "150" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.18 Standard @Snapmaker J1 (0.6 nozzle)", + "setting_id": "1330982148", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.6 nozzle)" + ], + "layer_height": "0.18", + "wall_loops": "2", + "bridge_flow": "1", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "inner_wall_speed": "145", + "internal_solid_infill_speed": "150" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle).json index c8c1e58274..44f5f7940b 100644 --- a/resources/profiles/Snapmaker/process/0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle).json @@ -1,10 +1,10 @@ { "type": "process", - "name": "0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle)", - "inherits": "fdm_process_U1_0.20", - "from": "system", "setting_id": "GP008", + "name": "0.20 Bambu Support W @Snapmaker U1 (0.4 nozzle)", + "from": "system", "instantiation": "true", + "inherits": "fdm_process_U1_0.20", "enable_support": "1", "support_interface_top_layers": "3", "support_top_z_distance": "0.2", @@ -18,6 +18,8 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "50", + "prime_volume": "38", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", "wipe_tower_filament": "1" diff --git a/resources/profiles/Snapmaker/process/0.20 Quality @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Quality @Snapmaker U1 (0.4 nozzle).json index f9bb51f002..214d13d07a 100644 --- a/resources/profiles/Snapmaker/process/0.20 Quality @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Quality @Snapmaker U1 (0.4 nozzle).json @@ -12,11 +12,14 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "40", + "prime_volume": "35", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", "wipe_tower_filament": "0", "preheat_time": "30", "wipe_tower_cone_angle": "15", "prime_tower_brim_width": "5", - "initial_layer_print_height": "0.25" + "initial_layer_print_height": "0.25", + "min_width_top_surface": "300%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker (0.4 nozzle).json index e473534f33..192d657a60 100644 --- a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker (0.4 nozzle).json @@ -1,37 +1,40 @@ { - "type": "process", - "name": "0.20 Standard @Snapmaker (0.4 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "3044804041", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" - ], - "elefant_foot_compensation": "0.15", - "initial_layer_infill_speed": "60", - "inner_wall_speed": "90", - "sparse_infill_speed": "95", - "top_surface_speed": "70", - "gap_infill_speed": "85", - "support_speed": "100", - "ironing_speed": "30", - "overhang_1_4_speed": "40", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "10" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.20 Standard @Snapmaker (0.4 nozzle)", + "setting_id": "3044804041", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" + ], + "elefant_foot_compensation": "0.15", + "initial_layer_infill_speed": "60", + "inner_wall_speed": "90", + "sparse_infill_speed": "95", + "top_surface_speed": "70", + "gap_infill_speed": "85", + "support_speed": "100", + "ironing_speed": "30", + "overhang_1_4_speed": "40", + "overhang_2_4_speed": "20", + "overhang_3_4_speed": "10", + "slowdown_for_curled_perimeters": "0", + "sparse_infill_pattern": "grid", + "wall_generator": "classic" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker Artisan (0.4 nozzle).json index 06037775b3..d284c48f2c 100644 --- a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker Artisan (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker Artisan (0.4 nozzle).json @@ -1,12 +1,16 @@ { - "type": "process", - "name": "0.20 Standard @Snapmaker Artisan (0.4 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "864558918", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.4 nozzle)" - ], - "elefant_foot_compensation": "0.15" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.20 Standard @Snapmaker Artisan (0.4 nozzle)", + "setting_id": "864558918", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.4 nozzle)" + ], + "elefant_foot_compensation": "0.15", + "outer_wall_jerk": "10", + "slowdown_for_curled_perimeters": "0", + "sparse_infill_pattern": "grid", + "wall_generator": "classic" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker J1 (0.4 nozzle).json index 9f933986e0..69841ec8be 100644 --- a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker J1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker J1 (0.4 nozzle).json @@ -1,12 +1,19 @@ { - "type": "process", - "name": "0.20 Standard @Snapmaker J1 (0.4 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "4042107035", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)" - ], - "elefant_foot_compensation": "0.15" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.20 Standard @Snapmaker J1 (0.4 nozzle)", + "setting_id": "4042107035", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)" + ], + "elefant_foot_compensation": "0.15", + "default_jerk": "10", + "inner_wall_speed": "120", + "outer_wall_jerk": "10", + "outer_wall_speed": "100", + "slowdown_for_curled_perimeters": "0", + "sparse_infill_pattern": "grid", + "wall_generator": "classic" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json index 671ef7a134..be4065868d 100644 --- a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json @@ -12,11 +12,15 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "40", + "prime_volume": "35", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", "wipe_tower_filament": "0", "preheat_time": "30", "wipe_tower_cone_angle": "15", "prime_tower_brim_width": "5", - "initial_layer_print_height": "0.25" + "initial_layer_print_height": "0.25", + "min_width_top_surface": "300%", + "wipe_tower_extra_spacing": "120%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle)_old.json b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle)_old.json new file mode 100644 index 0000000000..ba4a1de717 --- /dev/null +++ b/resources/profiles/Snapmaker/process/0.20 Standard @Snapmaker U1 (0.4 nozzle)_old.json @@ -0,0 +1,24 @@ +{ + "type": "process", + "name": "0.20 Standard @Snapmaker U1 (0.4 nozzle)", + "inherits": "fdm_process_U1_0.20", + "from": "system", + "setting_id": "GP004", + "instantiation": "true", + "description": "It has a general layer height, and results in general layer lines and printing quality. It is suitable for most general printing cases.", + "smooth_coefficient": "150", + "overhang_totally_speed": "50", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "ooze_prevention": "1", + "prime_tower_width": "40", + "prime_volume": "15", + "slowdown_for_curled_perimeters": "0", + "standby_temperature_delta": "-150", + "wipe_tower_filament": "0", + "preheat_time": "30", + "wipe_tower_cone_angle": "15", + "prime_tower_brim_width": "5", + "initial_layer_print_height": "0.25" +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker (0.4 nozzle).json index a073570a99..1d57dc1427 100644 --- a/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker (0.4 nozzle).json @@ -1,41 +1,41 @@ { - "type": "process", - "name": "0.20 Strength @Snapmaker (0.4 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "3490773493", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" - ], - "elefant_foot_compensation": "0.15", - "wall_loops": "6", - "outer_wall_speed": "90", - "sparse_infill_density": "25%", - "gap_infill_speed": "85", - "initial_layer_infill_speed": "65", - "inner_wall_speed": "100", - "infill_wall_overlap": "25%", - "ironing_speed": "30", - "sparse_infill_speed": "95", - "support_speed": "100", - "top_surface_speed": "70", - "overhang_1_4_speed": "55", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "10" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.20 Strength @Snapmaker (0.4 nozzle)", + "setting_id": "3490773493", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" + ], + "elefant_foot_compensation": "0.15", + "wall_loops": "6", + "outer_wall_speed": "90", + "sparse_infill_density": "25%", + "gap_infill_speed": "85", + "initial_layer_infill_speed": "65", + "inner_wall_speed": "100", + "infill_wall_overlap": "25%", + "ironing_speed": "30", + "sparse_infill_speed": "95", + "support_speed": "100", + "top_surface_speed": "70", + "overhang_1_4_speed": "55", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "10" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker Artisan (0.4 nozzle).json index ad1b41f408..de5b6b2cad 100644 --- a/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker Artisan (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker Artisan (0.4 nozzle).json @@ -1,15 +1,15 @@ { - "type": "process", - "name": "0.20 Strength @Snapmaker Artisan (0.4 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "1825586885", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.4 nozzle)" - ], - "elefant_foot_compensation": "0.15", - "wall_loops": "6", - "bottom_shell_layers": "4", - "sparse_infill_density": "25%" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.20 Strength @Snapmaker Artisan (0.4 nozzle)", + "setting_id": "1825586885", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.4 nozzle)" + ], + "elefant_foot_compensation": "0.15", + "wall_loops": "6", + "bottom_shell_layers": "4", + "sparse_infill_density": "25%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker J1 (0.4 nozzle).json index 6cf046b218..3bf46734bd 100644 --- a/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker J1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker J1 (0.4 nozzle).json @@ -1,15 +1,15 @@ { - "type": "process", - "name": "0.20 Strength @Snapmaker J1 (0.4 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "563165128", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)" - ], - "elefant_foot_compensation": "0.15", - "wall_loops": "6", - "bottom_shell_layers": "4", - "sparse_infill_density": "25%" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.20 Strength @Snapmaker J1 (0.4 nozzle)", + "setting_id": "563165128", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)" + ], + "elefant_foot_compensation": "0.15", + "wall_loops": "6", + "bottom_shell_layers": "4", + "sparse_infill_density": "25%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json index 016ca6499f..df6972ce2a 100644 --- a/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json @@ -15,7 +15,12 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "40", + "prime_volume": "35", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", - "wipe_tower_filament": "1" + "wipe_tower_filament": "0", + "prime_tower_brim_width": "5", + "wipe_tower_cone_angle": "15", + "wipe_tower_extra_spacing": "120%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.20 Support @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Support @Snapmaker U1 (0.4 nozzle).json index 702206ad5f..2b1c67e05f 100644 --- a/resources/profiles/Snapmaker/process/0.20 Support @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Support @Snapmaker U1 (0.4 nozzle).json @@ -12,6 +12,8 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "40", + "prime_volume": "15", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", "wipe_tower_filament": "0", diff --git a/resources/profiles/Snapmaker/process/0.20 Support W @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.20 Support W @Snapmaker U1 (0.4 nozzle).json index 0fe00c899e..6f8fab0d27 100644 --- a/resources/profiles/Snapmaker/process/0.20 Support W @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.20 Support W @Snapmaker U1 (0.4 nozzle).json @@ -1,10 +1,10 @@ { "type": "process", - "name": "0.20 Support W @Snapmaker U1 (0.4 nozzle)", - "inherits": "fdm_process_U1_0.20", - "from": "system", "setting_id": "GP008", + "name": "0.20 Support W @Snapmaker U1 (0.4 nozzle)", + "from": "system", "instantiation": "true", + "inherits": "fdm_process_U1_0.20", "enable_support": "1", "support_interface_top_layers": "3", "support_top_z_distance": "0.2", @@ -18,6 +18,8 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "50", + "prime_volume": "38", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", "wipe_tower_filament": "1" diff --git a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker (0.4 nozzle).json index 7c264e7724..17089131eb 100644 --- a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker (0.4 nozzle).json @@ -1,43 +1,43 @@ { - "type": "process", - "name": "0.24 Draft @Snapmaker (0.4 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "1966563644", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" - ], - "layer_height": "0.24", - "elefant_foot_compensation": "0.15", - "top_surface_line_width": "0.45", - "top_shell_layers": "3", - "top_shell_thickness": "0.6", - "support_threshold_angle": "35", - "initial_layer_infill_speed": "65", - "outer_wall_speed": "90", - "inner_wall_speed": "100", - "sparse_infill_speed": "100", - "top_surface_speed": "70", - "gap_infill_speed": "85", - "ironing_speed": "30", - "support_speed": "100", - "overhang_1_4_speed": "55", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "10" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.24 Draft @Snapmaker (0.4 nozzle)", + "setting_id": "1966563644", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" + ], + "layer_height": "0.24", + "elefant_foot_compensation": "0.15", + "top_surface_line_width": "0.45", + "top_shell_layers": "3", + "top_shell_thickness": "0.6", + "support_threshold_angle": "35", + "initial_layer_infill_speed": "65", + "outer_wall_speed": "90", + "inner_wall_speed": "100", + "sparse_infill_speed": "100", + "top_surface_speed": "70", + "gap_infill_speed": "85", + "ironing_speed": "30", + "support_speed": "100", + "overhang_1_4_speed": "55", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "10" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker Artisan (0.4 nozzle).json index 00a78d96ec..43947ed427 100644 --- a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker Artisan (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker Artisan (0.4 nozzle).json @@ -1,18 +1,18 @@ { - "type": "process", - "name": "0.24 Draft @Snapmaker Artisan (0.4 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "2003861482", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.4 nozzle)" - ], - "layer_height": "0.24", - "elefant_foot_compensation": "0.15", - "top_surface_line_width": "0.45", - "top_shell_layers": "3", - "top_shell_thickness": "0.6", - "support_threshold_angle": "35", - "initial_layer_infill_speed": "65" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.24 Draft @Snapmaker Artisan (0.4 nozzle)", + "setting_id": "2003861482", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.4 nozzle)" + ], + "layer_height": "0.24", + "elefant_foot_compensation": "0.15", + "top_surface_line_width": "0.45", + "top_shell_layers": "3", + "top_shell_thickness": "0.6", + "support_threshold_angle": "35", + "initial_layer_infill_speed": "65" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker J1 (0.4 nozzle).json index f420aa302e..23877e116c 100644 --- a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker J1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker J1 (0.4 nozzle).json @@ -1,18 +1,18 @@ { - "type": "process", - "name": "0.24 Draft @Snapmaker J1 (0.4 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "2742890459", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)" - ], - "layer_height": "0.24", - "elefant_foot_compensation": "0.15", - "top_surface_line_width": "0.45", - "top_shell_layers": "3", - "top_shell_thickness": "0.6", - "support_threshold_angle": "35", - "initial_layer_infill_speed": "65" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.24 Draft @Snapmaker J1 (0.4 nozzle)", + "setting_id": "2742890459", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)" + ], + "layer_height": "0.24", + "elefant_foot_compensation": "0.15", + "top_surface_line_width": "0.45", + "top_shell_layers": "3", + "top_shell_thickness": "0.6", + "support_threshold_angle": "35", + "initial_layer_infill_speed": "65" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker U1 (0.4 nozzle).json index d92b5f68af..589a050e58 100644 --- a/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.24 Draft @Snapmaker U1 (0.4 nozzle).json @@ -12,7 +12,12 @@ "Snapmaker U1 (0.4 nozzle)" ], "ooze_prevention": "1", + "prime_tower_width": "40", + "prime_volume": "35", "slowdown_for_curled_perimeters": "0", "standby_temperature_delta": "-150", - "wipe_tower_filament": "1" + "wipe_tower_filament": "0", + "prime_tower_brim_width": "5", + "wipe_tower_cone_angle": "15", + "wipe_tower_extra_spacing": "120%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker (0.6 nozzle).json index 5ffbb39e91..4c1635b046 100644 --- a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker (0.6 nozzle).json @@ -1,48 +1,48 @@ { - "type": "process", - "name": "0.24 Standard @Snapmaker (0.6 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "159607191", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" - ], - "layer_height": "0.24", - "wall_loops": "2", - "top_shell_layers": "3", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "initial_layer_speed": "35", - "initial_layer_infill_speed": "55", - "outer_wall_speed": "90", - "inner_wall_speed": "85", - "sparse_infill_speed": "100", - "gap_infill_speed": "50", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "ironing_speed": "30", - "support_interface_speed": "35", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.24 Standard @Snapmaker (0.6 nozzle)", + "setting_id": "159607191", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" + ], + "layer_height": "0.24", + "wall_loops": "2", + "top_shell_layers": "3", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "initial_layer_speed": "35", + "initial_layer_infill_speed": "55", + "outer_wall_speed": "90", + "inner_wall_speed": "85", + "sparse_infill_speed": "100", + "gap_infill_speed": "50", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50", + "ironing_speed": "30", + "support_interface_speed": "35", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker (0.8 nozzle).json index a22231eb64..f14c178747 100644 --- a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker (0.8 nozzle).json @@ -1,50 +1,50 @@ { - "type": "process", - "name": "0.24 Standard @Snapmaker (0.8 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "3242308101", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)" - ], - "layer_height": "0.24", - "wall_loops": "2", - "top_shell_layers": "3", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_speed": "35", - "initial_layer_infill_speed": "55", - "outer_wall_speed": "90", - "inner_wall_speed": "85", - "sparse_infill_speed": "100", - "gap_infill_speed": "50", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "overhang_3_4_speed": "25", - "overhang_4_4_speed": "5", - "ironing_speed": "30", - "support_interface_speed": "35", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.24 Standard @Snapmaker (0.8 nozzle)", + "setting_id": "3242308101", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)" + ], + "layer_height": "0.24", + "wall_loops": "2", + "top_shell_layers": "3", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_speed": "35", + "initial_layer_infill_speed": "55", + "outer_wall_speed": "90", + "inner_wall_speed": "85", + "sparse_infill_speed": "100", + "gap_infill_speed": "50", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50", + "overhang_3_4_speed": "25", + "overhang_4_4_speed": "5", + "ironing_speed": "30", + "support_interface_speed": "35", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker Artisan (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker Artisan (0.6 nozzle).json index c474063e6d..b01cefd7e4 100644 --- a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker Artisan (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker Artisan (0.6 nozzle).json @@ -1,22 +1,22 @@ { - "type": "process", - "name": "0.24 Standard @Snapmaker Artisan (0.6 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "4094373563", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.6 nozzle)" - ], - "layer_height": "0.24", - "wall_loops": "2", - "top_shell_layers": "3", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.24 Standard @Snapmaker Artisan (0.6 nozzle)", + "setting_id": "4094373563", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.6 nozzle)" + ], + "layer_height": "0.24", + "wall_loops": "2", + "top_shell_layers": "3", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker Artisan (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker Artisan (0.8 nozzle).json index aa6532877e..4affcd8001 100644 --- a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker Artisan (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker Artisan (0.8 nozzle).json @@ -1,23 +1,23 @@ { - "type": "process", - "name": "0.24 Standard @Snapmaker Artisan (0.8 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "1019868457", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.8 nozzle)" - ], - "layer_height": "0.24", - "initial_layer_print_height": "0.3", - "wall_loops": "2", - "top_shell_layers": "3", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.24 Standard @Snapmaker Artisan (0.8 nozzle)", + "setting_id": "1019868457", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.8 nozzle)" + ], + "layer_height": "0.24", + "initial_layer_print_height": "0.3", + "wall_loops": "2", + "top_shell_layers": "3", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker J1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker J1 (0.6 nozzle).json index 569f278255..8fb9f65bc8 100644 --- a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker J1 (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker J1 (0.6 nozzle).json @@ -1,22 +1,22 @@ { - "type": "process", - "name": "0.24 Standard @Snapmaker J1 (0.6 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "2957563554", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.6 nozzle)" - ], - "layer_height": "0.24", - "wall_loops": "2", - "top_shell_layers": "3", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.24 Standard @Snapmaker J1 (0.6 nozzle)", + "setting_id": "2957563554", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.6 nozzle)" + ], + "layer_height": "0.24", + "wall_loops": "2", + "top_shell_layers": "3", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker J1 (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker J1 (0.8 nozzle).json index 62643c4efb..e05c3bd7df 100644 --- a/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker J1 (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.24 Standard @Snapmaker J1 (0.8 nozzle).json @@ -1,23 +1,23 @@ { - "type": "process", - "name": "0.24 Standard @Snapmaker J1 (0.8 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "2022313264", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.8 nozzle)" - ], - "layer_height": "0.24", - "initial_layer_print_height": "0.3", - "wall_loops": "2", - "top_shell_layers": "3", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.24 Standard @Snapmaker J1 (0.8 nozzle)", + "setting_id": "2022313264", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.8 nozzle)" + ], + "layer_height": "0.24", + "initial_layer_print_height": "0.3", + "wall_loops": "2", + "top_shell_layers": "3", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker Artisan (0.4 nozzle).json index 9d0d0c8de9..6cb96ddab1 100644 --- a/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker Artisan (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker Artisan (0.4 nozzle).json @@ -1,60 +1,60 @@ { - "type": "process", - "name": "0.25 Benchy @Snapmaker Artisan (0.4 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "2853588009", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.4 nozzle)" - ], - "elefant_foot_compensation": "0.15", - "top_shell_layers": "3", - "top_shell_thickness": "0.5", - "initial_layer_speed": "100", - "initial_layer_infill_speed": "180", - "outer_wall_speed": "180", - "inner_wall_speed": "200", - "sparse_infill_speed": "200", - "internal_solid_infill_speed": "200", - "top_surface_speed": "180", - "gap_infill_speed": "200", - "ironing_speed": "30", - "enable_overhang_speed": "0", - "overhang_1_4_speed": "180", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "10", - "layer_height": "0.25", - "initial_layer_print_height": "0.25", - "detect_overhang_wall": "0", - "reduce_crossing_wall": "0", - "ensure_vertical_shell_thickness": "none", - "filename_format": "ArtisanBenchy_{print_time}.gcode", - "sparse_infill_density": "10%", - "sparse_infill_pattern": "alignedrectilinear", - "wall_generator": "classic", - "seam_position": "nearest", - "wall_loops": "2", - "minimum_sparse_infill_area": "0", - "infill_combination": "1", - "infill_direction": "90", - "gap_fill_target": "nowhere", - "line_width": "0.4", - "inner_wall_line_width": "0.5", - "internal_solid_infill_line_width": "0.5", - "outer_wall_line_width": "0.5", - "sparse_infill_line_width": "0.5", - "top_surface_line_width": "0.5", - "bottom_shell_layers": "2", - "initial_layer_travel_speed": "100%", - "bridge_acceleration": "3000", - "bridge_speed": "100", - "default_acceleration": "3000", - "inner_wall_acceleration": "3000", - "internal_solid_infill_acceleration": "3000", - "outer_wall_acceleration": "1600", - "small_perimeter_speed": "200", - "sparse_infill_acceleration": "3000", - "top_surface_acceleration": "3000", - "initial_layer_acceleration": "1600" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.25 Benchy @Snapmaker Artisan (0.4 nozzle)", + "setting_id": "2853588009", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.4 nozzle)" + ], + "elefant_foot_compensation": "0.15", + "top_shell_layers": "3", + "top_shell_thickness": "0.5", + "initial_layer_speed": "100", + "initial_layer_infill_speed": "180", + "outer_wall_speed": "180", + "inner_wall_speed": "200", + "sparse_infill_speed": "200", + "internal_solid_infill_speed": "200", + "top_surface_speed": "180", + "gap_infill_speed": "200", + "ironing_speed": "30", + "enable_overhang_speed": "0", + "overhang_1_4_speed": "180", + "overhang_2_4_speed": "20", + "overhang_3_4_speed": "10", + "layer_height": "0.25", + "initial_layer_print_height": "0.25", + "detect_overhang_wall": "0", + "reduce_crossing_wall": "0", + "ensure_vertical_shell_thickness": "none", + "filename_format": "ArtisanBenchy_{print_time}.gcode", + "sparse_infill_density": "10%", + "sparse_infill_pattern": "alignedrectilinear", + "wall_generator": "classic", + "seam_position": "nearest", + "wall_loops": "2", + "minimum_sparse_infill_area": "0", + "infill_combination": "1", + "infill_direction": "90", + "gap_fill_target": "nowhere", + "line_width": "0.4", + "inner_wall_line_width": "0.5", + "internal_solid_infill_line_width": "0.5", + "outer_wall_line_width": "0.5", + "sparse_infill_line_width": "0.5", + "top_surface_line_width": "0.5", + "bottom_shell_layers": "2", + "initial_layer_travel_speed": "100%", + "bridge_acceleration": "3000", + "bridge_speed": "100", + "default_acceleration": "3000", + "inner_wall_acceleration": "3000", + "internal_solid_infill_acceleration": "3000", + "outer_wall_acceleration": "1600", + "small_perimeter_speed": "200", + "sparse_infill_acceleration": "3000", + "top_surface_acceleration": "3000", + "initial_layer_acceleration": "1600" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker J1 (0.4 nozzle).json index 36254ac53e..da364c6b57 100644 --- a/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker J1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker J1 (0.4 nozzle).json @@ -1,60 +1,60 @@ { - "type": "process", - "name": "0.25 Benchy @Snapmaker J1 (0.4 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "4247211099", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)" - ], - "elefant_foot_compensation": "0.15", - "top_shell_layers": "3", - "top_shell_thickness": "0.5", - "initial_layer_speed": "120", - "initial_layer_infill_speed": "200", - "outer_wall_speed": "180", - "inner_wall_speed": "280", - "sparse_infill_speed": "200", - "internal_solid_infill_speed": "280", - "top_surface_speed": "200", - "gap_infill_speed": "280", - "ironing_speed": "30", - "enable_overhang_speed": "0", - "overhang_1_4_speed": "150", - "overhang_2_4_speed": "20", - "layer_height": "0.25", - "initial_layer_print_height": "0.25", - "detect_overhang_wall": "0", - "reduce_crossing_wall": "0", - "ensure_vertical_shell_thickness": "none", - "filename_format": "J1Benchy_{print_time}.gcode", - "sparse_infill_density": "10%", - "sparse_infill_pattern": "alignedrectilinear", - "wall_generator": "classic", - "seam_position": "nearest", - "wall_loops": "2", - "minimum_sparse_infill_area": "0", - "infill_combination": "1", - "infill_direction": "90", - "gap_fill_target": "nowhere", - "line_width": "0.4", - "inner_wall_line_width": "0.5", - "internal_solid_infill_line_width": "0.5", - "outer_wall_line_width": "0.5", - "sparse_infill_line_width": "0.5", - "top_surface_line_width": "0.5", - "bottom_shell_layers": "2", - "initial_layer_travel_speed": "100%", - "bridge_acceleration": "3000", - "bridge_speed": "180", - "default_acceleration": "15000", - "inner_wall_acceleration": "15000", - "internal_solid_infill_acceleration": "20000", - "outer_wall_acceleration": "5000", - "small_perimeter_speed": "200", - "sparse_infill_acceleration": "15000", - "top_surface_acceleration": "8000", - "travel_acceleration": "28000", - "initial_layer_acceleration": "5000" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.25 Benchy @Snapmaker J1 (0.4 nozzle)", + "setting_id": "4247211099", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)" + ], + "elefant_foot_compensation": "0.15", + "top_shell_layers": "3", + "top_shell_thickness": "0.5", + "initial_layer_speed": "120", + "initial_layer_infill_speed": "200", + "outer_wall_speed": "180", + "inner_wall_speed": "280", + "sparse_infill_speed": "200", + "internal_solid_infill_speed": "280", + "top_surface_speed": "200", + "gap_infill_speed": "280", + "ironing_speed": "30", + "enable_overhang_speed": "0", + "overhang_1_4_speed": "150", + "overhang_2_4_speed": "20", + "layer_height": "0.25", + "initial_layer_print_height": "0.25", + "detect_overhang_wall": "0", + "reduce_crossing_wall": "0", + "ensure_vertical_shell_thickness": "none", + "filename_format": "J1Benchy_{print_time}.gcode", + "sparse_infill_density": "10%", + "sparse_infill_pattern": "alignedrectilinear", + "wall_generator": "classic", + "seam_position": "nearest", + "wall_loops": "2", + "minimum_sparse_infill_area": "0", + "infill_combination": "1", + "infill_direction": "90", + "gap_fill_target": "nowhere", + "line_width": "0.4", + "inner_wall_line_width": "0.5", + "internal_solid_infill_line_width": "0.5", + "outer_wall_line_width": "0.5", + "sparse_infill_line_width": "0.5", + "top_surface_line_width": "0.5", + "bottom_shell_layers": "2", + "initial_layer_travel_speed": "100%", + "bridge_acceleration": "3000", + "bridge_speed": "180", + "default_acceleration": "15000", + "inner_wall_acceleration": "15000", + "internal_solid_infill_acceleration": "20000", + "outer_wall_acceleration": "5000", + "small_perimeter_speed": "200", + "sparse_infill_acceleration": "15000", + "top_surface_acceleration": "8000", + "travel_acceleration": "28000", + "initial_layer_acceleration": "5000" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker U1 (0.4 nozzle).json index dfae6c6e67..9d0aec1feb 100644 --- a/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.25 Benchy @Snapmaker U1 (0.4 nozzle).json @@ -1,60 +1,60 @@ { - "type": "process", - "name": "0.25 Benchy @Snapmaker U1 (0.4 nozzle)", - "inherits": "fdm_process_U1", - "from": "system", - "setting_id": "2853588009", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "elefant_foot_compensation": "0.15", - "top_shell_layers": "3", - "top_shell_thickness": "0.5", - "initial_layer_speed": "100", - "initial_layer_infill_speed": "180", - "outer_wall_speed": "180", - "inner_wall_speed": "200", - "sparse_infill_speed": "200", - "internal_solid_infill_speed": "200", - "top_surface_speed": "180", - "gap_infill_speed": "200", - "ironing_speed": "30", - "enable_overhang_speed": "0", - "overhang_1_4_speed": "180", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "10", - "layer_height": "0.25", - "initial_layer_print_height": "0.25", - "detect_overhang_wall": "0", - "reduce_crossing_wall": "0", - "ensure_vertical_shell_thickness": "none", - "filename_format": "testBenchy_{print_time}.gcode", - "sparse_infill_density": "10%", - "sparse_infill_pattern": "alignedrectilinear", - "wall_generator": "classic", - "seam_position": "nearest", - "wall_loops": "2", - "minimum_sparse_infill_area": "0", - "infill_combination": "1", - "infill_direction": "90", - "gap_fill_target": "nowhere", - "line_width": "0.4", - "inner_wall_line_width": "0.5", - "internal_solid_infill_line_width": "0.5", - "outer_wall_line_width": "0.5", - "sparse_infill_line_width": "0.5", - "top_surface_line_width": "0.5", - "bottom_shell_layers": "2", - "initial_layer_travel_speed": "100%", - "bridge_acceleration": "3000", - "bridge_speed": "100", - "default_acceleration": "3000", - "inner_wall_acceleration": "3000", - "internal_solid_infill_acceleration": "3000", - "outer_wall_acceleration": "1600", - "small_perimeter_speed": "200", - "sparse_infill_acceleration": "3000", - "top_surface_acceleration": "3000", - "initial_layer_acceleration": "1600" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.25 Benchy @Snapmaker U1 (0.4 nozzle)", + "setting_id": "2853588009", + "inherits": "fdm_process_U1", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "elefant_foot_compensation": "0.15", + "top_shell_layers": "3", + "top_shell_thickness": "0.5", + "initial_layer_speed": "100", + "initial_layer_infill_speed": "180", + "outer_wall_speed": "180", + "inner_wall_speed": "200", + "sparse_infill_speed": "200", + "internal_solid_infill_speed": "200", + "top_surface_speed": "180", + "gap_infill_speed": "200", + "ironing_speed": "30", + "enable_overhang_speed": "0", + "overhang_1_4_speed": "180", + "overhang_2_4_speed": "20", + "overhang_3_4_speed": "10", + "layer_height": "0.25", + "initial_layer_print_height": "0.25", + "detect_overhang_wall": "0", + "reduce_crossing_wall": "0", + "ensure_vertical_shell_thickness": "none", + "filename_format": "testBenchy_{print_time}.gcode", + "sparse_infill_density": "10%", + "sparse_infill_pattern": "alignedrectilinear", + "wall_generator": "classic", + "seam_position": "nearest", + "wall_loops": "2", + "minimum_sparse_infill_area": "0", + "infill_combination": "1", + "infill_direction": "90", + "gap_fill_target": "nowhere", + "line_width": "0.4", + "inner_wall_line_width": "0.5", + "internal_solid_infill_line_width": "0.5", + "outer_wall_line_width": "0.5", + "sparse_infill_line_width": "0.5", + "top_surface_line_width": "0.5", + "bottom_shell_layers": "2", + "initial_layer_travel_speed": "100%", + "bridge_acceleration": "3000", + "bridge_speed": "100", + "default_acceleration": "3000", + "inner_wall_acceleration": "3000", + "internal_solid_infill_acceleration": "3000", + "outer_wall_acceleration": "1600", + "small_perimeter_speed": "200", + "sparse_infill_acceleration": "3000", + "top_surface_acceleration": "3000", + "initial_layer_acceleration": "1600" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker (0.4 nozzle).json index 1e85d3eeee..1fa3b0654e 100644 --- a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker (0.4 nozzle).json @@ -1,45 +1,45 @@ { - "type": "process", - "name": "0.28 Extra Draft @Snapmaker (0.4 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "3717021337", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.4 nozzle)", - "Snapmaker A350 (0.4 nozzle)", - "Snapmaker A250 Dual (0.4 nozzle)", - "Snapmaker A350 Dual (0.4 nozzle)", - "Snapmaker A250 QSKit (0.4 nozzle)", - "Snapmaker A350 QSKit (0.4 nozzle)", - "Snapmaker A250 BKit (0.4 nozzle)", - "Snapmaker A350 BKit (0.4 nozzle)", - "Snapmaker A250 QS+B Kit (0.4 nozzle)", - "Snapmaker A350 QS+B Kit (0.4 nozzle)", - "Snapmaker A250 Dual QSKit (0.4 nozzle)", - "Snapmaker A350 Dual QSKit (0.4 nozzle)", - "Snapmaker A250 Dual BKit (0.4 nozzle)", - "Snapmaker A350 Dual BKit (0.4 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" - ], - "layer_height": "0.28", - "elefant_foot_compensation": "0.15", - "top_surface_line_width": "0.45", - "top_shell_layers": "3", - "top_shell_thickness": "0.6", - "support_threshold_angle": "40", - "wall_loops": "2", - "initial_layer_infill_speed": "65", - "outer_wall_speed": "85", - "inner_wall_speed": "95", - "sparse_infill_speed": "95", - "internal_solid_infill_speed": "95", - "top_surface_speed": "70", - "gap_infill_speed": "85", - "ironing_speed": "30", - "support_speed": "100", - "overhang_1_4_speed": "55", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "10" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.28 Extra Draft @Snapmaker (0.4 nozzle)", + "setting_id": "3717021337", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.4 nozzle)", + "Snapmaker A350 (0.4 nozzle)", + "Snapmaker A250 Dual (0.4 nozzle)", + "Snapmaker A350 Dual (0.4 nozzle)", + "Snapmaker A250 QSKit (0.4 nozzle)", + "Snapmaker A350 QSKit (0.4 nozzle)", + "Snapmaker A250 BKit (0.4 nozzle)", + "Snapmaker A350 BKit (0.4 nozzle)", + "Snapmaker A250 QS+B Kit (0.4 nozzle)", + "Snapmaker A350 QS+B Kit (0.4 nozzle)", + "Snapmaker A250 Dual QSKit (0.4 nozzle)", + "Snapmaker A350 Dual QSKit (0.4 nozzle)", + "Snapmaker A250 Dual BKit (0.4 nozzle)", + "Snapmaker A350 Dual BKit (0.4 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.4 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.4 nozzle)" + ], + "layer_height": "0.28", + "elefant_foot_compensation": "0.15", + "top_surface_line_width": "0.45", + "top_shell_layers": "3", + "top_shell_thickness": "0.6", + "support_threshold_angle": "40", + "wall_loops": "2", + "initial_layer_infill_speed": "65", + "outer_wall_speed": "85", + "inner_wall_speed": "95", + "sparse_infill_speed": "95", + "internal_solid_infill_speed": "95", + "top_surface_speed": "70", + "gap_infill_speed": "85", + "ironing_speed": "30", + "support_speed": "100", + "overhang_1_4_speed": "55", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "10" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle).json index 3fe6f42a3f..0780fd81b3 100644 --- a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle).json @@ -1,19 +1,19 @@ { - "type": "process", - "name": "0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "3141987096", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.4 nozzle)" - ], - "layer_height": "0.28", - "elefant_foot_compensation": "0.15", - "top_surface_line_width": "0.45", - "top_shell_layers": "3", - "top_shell_thickness": "0.6", - "support_threshold_angle": "40", - "wall_loops": "2", - "initial_layer_infill_speed": "65" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.28 Extra Draft @Snapmaker Artisan (0.4 nozzle)", + "setting_id": "3141987096", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.4 nozzle)" + ], + "layer_height": "0.28", + "elefant_foot_compensation": "0.15", + "top_surface_line_width": "0.45", + "top_shell_layers": "3", + "top_shell_thickness": "0.6", + "support_threshold_angle": "40", + "wall_loops": "2", + "initial_layer_infill_speed": "65" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker J1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker J1 (0.4 nozzle).json index 47b5b2b765..b18c01c857 100644 --- a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker J1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker J1 (0.4 nozzle).json @@ -1,19 +1,19 @@ { - "type": "process", - "name": "0.28 Extra Draft @Snapmaker J1 (0.4 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "1784261617", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.4 nozzle)" - ], - "layer_height": "0.28", - "elefant_foot_compensation": "0.15", - "top_surface_line_width": "0.45", - "top_shell_layers": "3", - "top_shell_thickness": "0.6", - "support_threshold_angle": "40", - "wall_loops": "2", - "initial_layer_infill_speed": "65" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.28 Extra Draft @Snapmaker J1 (0.4 nozzle)", + "setting_id": "1784261617", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.4 nozzle)" + ], + "layer_height": "0.28", + "elefant_foot_compensation": "0.15", + "top_surface_line_width": "0.45", + "top_shell_layers": "3", + "top_shell_thickness": "0.6", + "support_threshold_angle": "40", + "wall_loops": "2", + "initial_layer_infill_speed": "65" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json index 37ff7fe81d..ab4b30c778 100644 --- a/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json @@ -11,6 +11,11 @@ "compatible_printers": [ "Snapmaker U1 (0.4 nozzle)" ], + "prime_tower_width": "40", + "prime_volume": "35", "slowdown_for_curled_perimeters": "0", - "wipe_tower_filament": "1" + "wipe_tower_filament": "0", + "prime_tower_brim_width": "5", + "wipe_tower_cone_angle": "15", + "wipe_tower_extra_spacing": "120%" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker (0.6 nozzle).json index d1aa812dbc..74c8bb139d 100644 --- a/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker (0.6 nozzle).json @@ -1,50 +1,50 @@ { - "type": "process", - "name": "0.30 Standard @Snapmaker (0.6 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "1410611847", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" - ], - "layer_height": "0.3", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "wall_loops": "2", - "initial_layer_speed": "35", - "initial_layer_infill_speed": "55", - "outer_wall_speed": "75", - "inner_wall_speed": "85", - "sparse_infill_speed": "100", - "internal_solid_infill_speed": "85", - "gap_infill_speed": "50", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "ironing_speed": "30", - "support_interface_speed": "35", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.30 Standard @Snapmaker (0.6 nozzle)", + "setting_id": "1410611847", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" + ], + "layer_height": "0.3", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "wall_loops": "2", + "initial_layer_speed": "35", + "initial_layer_infill_speed": "55", + "outer_wall_speed": "75", + "inner_wall_speed": "85", + "sparse_infill_speed": "100", + "internal_solid_infill_speed": "85", + "gap_infill_speed": "50", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50", + "ironing_speed": "30", + "support_interface_speed": "35", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker Artisan (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker Artisan (0.6 nozzle).json index 25523ba797..76d5d0013b 100644 --- a/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker Artisan (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker Artisan (0.6 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.30 Standard @Snapmaker Artisan (0.6 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "1517142331", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.6 nozzle)" - ], - "layer_height": "0.3", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "wall_loops": "2", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.30 Standard @Snapmaker Artisan (0.6 nozzle)", + "setting_id": "1517142331", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.6 nozzle)" + ], + "layer_height": "0.3", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "wall_loops": "2", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker J1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker J1 (0.6 nozzle).json index 6ed8573d2d..1573baaf49 100644 --- a/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker J1 (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.30 Standard @Snapmaker J1 (0.6 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.30 Standard @Snapmaker J1 (0.6 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "1402174975", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.6 nozzle)" - ], - "layer_height": "0.3", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "wall_loops": "2", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.30 Standard @Snapmaker J1 (0.6 nozzle)", + "setting_id": "1402174975", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.6 nozzle)" + ], + "layer_height": "0.3", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "wall_loops": "2", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker (0.6 nozzle).json index 0857418171..471106ef3e 100644 --- a/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker (0.6 nozzle).json @@ -1,51 +1,51 @@ { - "type": "process", - "name": "0.30 Strength @Snapmaker (0.6 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "829998779", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" - ], - "layer_height": "0.3", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "wall_loops": "6", - "sparse_infill_density": "25%", - "initial_layer_speed": "35", - "initial_layer_infill_speed": "55", - "outer_wall_speed": "75", - "inner_wall_speed": "85", - "sparse_infill_speed": "100", - "internal_solid_infill_speed": "85", - "gap_infill_speed": "50", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "ironing_speed": "30", - "support_interface_speed": "35", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.30 Strength @Snapmaker (0.6 nozzle)", + "setting_id": "829998779", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" + ], + "layer_height": "0.3", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "wall_loops": "6", + "sparse_infill_density": "25%", + "initial_layer_speed": "35", + "initial_layer_infill_speed": "55", + "outer_wall_speed": "75", + "inner_wall_speed": "85", + "sparse_infill_speed": "100", + "internal_solid_infill_speed": "85", + "gap_infill_speed": "50", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50", + "ironing_speed": "30", + "support_interface_speed": "35", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker Artisan (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker Artisan (0.6 nozzle).json index 83151dc641..f564a36bc4 100644 --- a/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker Artisan (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker Artisan (0.6 nozzle).json @@ -1,26 +1,26 @@ { - "type": "process", - "name": "0.30 Strength @Snapmaker Artisan (0.6 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "87417016", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.6 nozzle)" - ], - "layer_height": "0.3", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "wall_loops": "5", - "sparse_infill_density": "25%", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.30 Strength @Snapmaker Artisan (0.6 nozzle)", + "setting_id": "87417016", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.6 nozzle)" + ], + "layer_height": "0.3", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "wall_loops": "5", + "sparse_infill_density": "25%", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker J1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker J1 (0.6 nozzle).json index 7a8d4e873c..03e484da04 100644 --- a/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker J1 (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.30 Strength @Snapmaker J1 (0.6 nozzle).json @@ -1,26 +1,26 @@ { - "type": "process", - "name": "0.30 Strength @Snapmaker J1 (0.6 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "2196759212", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.6 nozzle)" - ], - "layer_height": "0.3", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "wall_loops": "5", - "sparse_infill_density": "25%", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.30 Strength @Snapmaker J1 (0.6 nozzle)", + "setting_id": "2196759212", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.6 nozzle)" + ], + "layer_height": "0.3", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "wall_loops": "5", + "sparse_infill_density": "25%", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker (0.8 nozzle).json index 52b15a3b15..02058c5dfd 100644 --- a/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker (0.8 nozzle).json @@ -1,52 +1,52 @@ { - "type": "process", - "name": "0.32 Standard @Snapmaker (0.8 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "3587326841", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)" - ], - "layer_height": "0.32", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_speed": "35", - "initial_layer_infill_speed": "55", - "outer_wall_speed": "75", - "inner_wall_speed": "85", - "sparse_infill_speed": "100", - "internal_solid_infill_speed": "85", - "gap_infill_speed": "50", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "overhang_3_4_speed": "25", - "overhang_4_4_speed": "5", - "ironing_speed": "30", - "support_interface_speed": "35", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.32 Standard @Snapmaker (0.8 nozzle)", + "setting_id": "3587326841", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)" + ], + "layer_height": "0.32", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_speed": "35", + "initial_layer_infill_speed": "55", + "outer_wall_speed": "75", + "inner_wall_speed": "85", + "sparse_infill_speed": "100", + "internal_solid_infill_speed": "85", + "gap_infill_speed": "50", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50", + "overhang_3_4_speed": "25", + "overhang_4_4_speed": "5", + "ironing_speed": "30", + "support_interface_speed": "35", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker Artisan (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker Artisan (0.8 nozzle).json index 3ff413cba3..51103f3941 100644 --- a/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker Artisan (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker Artisan (0.8 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.32 Standard @Snapmaker Artisan (0.8 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "195892532", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.8 nozzle)" - ], - "layer_height": "0.32", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.32 Standard @Snapmaker Artisan (0.8 nozzle)", + "setting_id": "195892532", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.8 nozzle)" + ], + "layer_height": "0.32", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker J1 (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker J1 (0.8 nozzle).json index b82a67575a..37769e42d4 100644 --- a/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker J1 (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.32 Standard @Snapmaker J1 (0.8 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.32 Standard @Snapmaker J1 (0.8 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "1103138322", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.8 nozzle)" - ], - "layer_height": "0.32", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.32 Standard @Snapmaker J1 (0.8 nozzle)", + "setting_id": "1103138322", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.8 nozzle)" + ], + "layer_height": "0.32", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker (0.6 nozzle).json index 92763ee88d..c8da8c4505 100644 --- a/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker (0.6 nozzle).json @@ -1,51 +1,51 @@ { - "type": "process", - "name": "0.34 Standard @Snapmaker (0.6 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "3323821663", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" - ], - "layer_height": "0.34", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "gap_infill_speed": "50", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "35", - "inner_wall_speed": "85", - "internal_solid_infill_speed": "85", - "ironing_speed": "30", - "outer_wall_speed": "75", - "sparse_infill_speed": "100", - "support_interface_speed": "35", - "support_speed": "100", - "travel_speed": "110", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.34 Standard @Snapmaker (0.6 nozzle)", + "setting_id": "3323821663", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" + ], + "layer_height": "0.34", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "gap_infill_speed": "50", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "35", + "inner_wall_speed": "85", + "internal_solid_infill_speed": "85", + "ironing_speed": "30", + "outer_wall_speed": "75", + "sparse_infill_speed": "100", + "support_interface_speed": "35", + "support_speed": "100", + "travel_speed": "110", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker Artisan (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker Artisan (0.6 nozzle).json index c901044f09..836464a00e 100644 --- a/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker Artisan (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker Artisan (0.6 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.34 Standard @Snapmaker Artisan (0.6 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "3004749888", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.6 nozzle)" - ], - "layer_height": "0.34", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.34 Standard @Snapmaker Artisan (0.6 nozzle)", + "setting_id": "3004749888", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.6 nozzle)" + ], + "layer_height": "0.34", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker J1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker J1 (0.6 nozzle).json index 6b990b53b8..37b2265fdf 100644 --- a/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker J1 (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.34 Standard @Snapmaker J1 (0.6 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.34 Standard @Snapmaker J1 (0.6 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "1036004160", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.6 nozzle)" - ], - "layer_height": "0.34", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.34 Standard @Snapmaker J1 (0.6 nozzle)", + "setting_id": "1036004160", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.6 nozzle)" + ], + "layer_height": "0.34", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker (0.8 nozzle).json index e80e9c9201..09d8603d8f 100644 --- a/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker (0.8 nozzle).json @@ -1,52 +1,52 @@ { - "type": "process", - "name": "0.36 Standard @Snapmaker (0.8 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "1205536673", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)" - ], - "layer_height": "0.36", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "gap_infill_speed": "50", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "35", - "inner_wall_speed": "85", - "internal_solid_infill_speed": "85", - "ironing_speed": "30", - "outer_wall_speed": "75", - "sparse_infill_speed": "100", - "support_interface_speed": "35", - "support_speed": "100", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "overhang_3_4_speed": "25", - "overhang_4_4_speed": "5" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.36 Standard @Snapmaker (0.8 nozzle)", + "setting_id": "1205536673", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)" + ], + "layer_height": "0.36", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "gap_infill_speed": "50", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "35", + "inner_wall_speed": "85", + "internal_solid_infill_speed": "85", + "ironing_speed": "30", + "outer_wall_speed": "75", + "sparse_infill_speed": "100", + "support_interface_speed": "35", + "support_speed": "100", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50", + "overhang_3_4_speed": "25", + "overhang_4_4_speed": "5" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker Artisan (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker Artisan (0.8 nozzle).json index 2cb70ff79c..cc48b094d9 100644 --- a/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker Artisan (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker Artisan (0.8 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.36 Standard @Snapmaker Artisan (0.8 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "3805809743", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.8 nozzle)" - ], - "layer_height": "0.36", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.36 Standard @Snapmaker Artisan (0.8 nozzle)", + "setting_id": "3805809743", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.8 nozzle)" + ], + "layer_height": "0.36", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker J1 (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker J1 (0.8 nozzle).json index d9362845d8..f76c40b967 100644 --- a/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker J1 (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.36 Standard @Snapmaker J1 (0.8 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.36 Standard @Snapmaker J1 (0.8 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "798218413", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.8 nozzle)" - ], - "layer_height": "0.36", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.36 Standard @Snapmaker J1 (0.8 nozzle)", + "setting_id": "798218413", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.8 nozzle)" + ], + "layer_height": "0.36", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker (0.6 nozzle).json index a97b69c4c4..803c9d21c9 100644 --- a/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker (0.6 nozzle).json @@ -1,50 +1,50 @@ { - "type": "process", - "name": "0.38 Standard @Snapmaker (0.6 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "2876749174", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" - ], - "layer_height": "0.38", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "gap_infill_speed": "50", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "35", - "inner_wall_speed": "85", - "internal_solid_infill_speed": "85", - "ironing_speed": "30", - "outer_wall_speed": "75", - "sparse_infill_speed": "100", - "support_interface_speed": "35", - "support_speed": "100", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.38 Standard @Snapmaker (0.6 nozzle)", + "setting_id": "2876749174", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" + ], + "layer_height": "0.38", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "gap_infill_speed": "50", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "35", + "inner_wall_speed": "85", + "internal_solid_infill_speed": "85", + "ironing_speed": "30", + "outer_wall_speed": "75", + "sparse_infill_speed": "100", + "support_interface_speed": "35", + "support_speed": "100", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker Artisan (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker Artisan (0.6 nozzle).json index 5a2009bc78..ba2d953ab1 100644 --- a/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker Artisan (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker Artisan (0.6 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.38 Standard @Snapmaker Artisan (0.6 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "1408693644", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.6 nozzle)" - ], - "layer_height": "0.38", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.38 Standard @Snapmaker Artisan (0.6 nozzle)", + "setting_id": "1408693644", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.6 nozzle)" + ], + "layer_height": "0.38", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker J1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker J1 (0.6 nozzle).json index f26d06190f..9c7105cdf6 100644 --- a/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker J1 (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.38 Standard @Snapmaker J1 (0.6 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.38 Standard @Snapmaker J1 (0.6 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "2402668673", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.6 nozzle)" - ], - "layer_height": "0.38", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.38 Standard @Snapmaker J1 (0.6 nozzle)", + "setting_id": "2402668673", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.6 nozzle)" + ], + "layer_height": "0.38", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker (0.8 nozzle).json index ac139b65a2..2604772bce 100644 --- a/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker (0.8 nozzle).json @@ -1,52 +1,52 @@ { - "type": "process", - "name": "0.40 Standard @Snapmaker (0.8 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "2678033582", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)" - ], - "layer_height": "0.4", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "wall_loops": "2", - "initial_layer_speed": "35", - "initial_layer_infill_speed": "55", - "outer_wall_speed": "75", - "inner_wall_speed": "85", - "sparse_infill_speed": "100", - "internal_solid_infill_speed": "85", - "gap_infill_speed": "50", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "overhang_3_4_speed": "25", - "overhang_4_4_speed": "5", - "ironing_speed": "30", - "support_interface_speed": "35", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.40 Standard @Snapmaker (0.8 nozzle)", + "setting_id": "2678033582", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)" + ], + "layer_height": "0.4", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "wall_loops": "2", + "initial_layer_speed": "35", + "initial_layer_infill_speed": "55", + "outer_wall_speed": "75", + "inner_wall_speed": "85", + "sparse_infill_speed": "100", + "internal_solid_infill_speed": "85", + "gap_infill_speed": "50", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50", + "overhang_3_4_speed": "25", + "overhang_4_4_speed": "5", + "ironing_speed": "30", + "support_interface_speed": "35", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker Artisan (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker Artisan (0.8 nozzle).json index 9dc0fb161d..37e1bd3458 100644 --- a/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker Artisan (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker Artisan (0.8 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.40 Standard @Snapmaker Artisan (0.8 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "2628115465", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.8 nozzle)" - ], - "layer_height": "0.4", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "wall_loops": "2", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.40 Standard @Snapmaker Artisan (0.8 nozzle)", + "setting_id": "2628115465", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.8 nozzle)" + ], + "layer_height": "0.4", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "wall_loops": "2", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker J1 (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker J1 (0.8 nozzle).json index 01d3588e45..51fd196ebb 100644 --- a/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker J1 (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.40 Standard @Snapmaker J1 (0.8 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.40 Standard @Snapmaker J1 (0.8 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "2366200641", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.8 nozzle)" - ], - "layer_height": "0.4", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "wall_loops": "2", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.40 Standard @Snapmaker J1 (0.8 nozzle)", + "setting_id": "2366200641", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.8 nozzle)" + ], + "layer_height": "0.4", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "wall_loops": "2", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker (0.6 nozzle).json index bbbe5cf18d..9bf1ccc285 100644 --- a/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker (0.6 nozzle).json @@ -1,50 +1,50 @@ { - "type": "process", - "name": "0.42 Draft @Snapmaker (0.6 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "886975587", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.6 nozzle)", - "Snapmaker A350 (0.6 nozzle)", - "Snapmaker A250 Dual (0.6 nozzle)", - "Snapmaker A350 Dual (0.6 nozzle)", - "Snapmaker A250 QSKit (0.6 nozzle)", - "Snapmaker A350 QSKit (0.6 nozzle)", - "Snapmaker A250 BKit (0.6 nozzle)", - "Snapmaker A350 BKit (0.6 nozzle)", - "Snapmaker A250 QS+B Kit (0.6 nozzle)", - "Snapmaker A350 QS+B Kit (0.6 nozzle)", - "Snapmaker A250 Dual QSKit (0.6 nozzle)", - "Snapmaker A350 Dual QSKit (0.6 nozzle)", - "Snapmaker A250 Dual BKit (0.6 nozzle)", - "Snapmaker A350 Dual BKit (0.6 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" - ], - "layer_height": "0.42", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "initial_layer_speed": "35", - "initial_layer_infill_speed": "55", - "outer_wall_speed": "75", - "inner_wall_speed": "85", - "sparse_infill_speed": "100", - "internal_solid_infill_speed": "85", - "gap_infill_speed": "50", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "ironing_speed": "30", - "support_interface_speed": "35", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.42 Draft @Snapmaker (0.6 nozzle)", + "setting_id": "886975587", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.6 nozzle)", + "Snapmaker A350 (0.6 nozzle)", + "Snapmaker A250 Dual (0.6 nozzle)", + "Snapmaker A350 Dual (0.6 nozzle)", + "Snapmaker A250 QSKit (0.6 nozzle)", + "Snapmaker A350 QSKit (0.6 nozzle)", + "Snapmaker A250 BKit (0.6 nozzle)", + "Snapmaker A350 BKit (0.6 nozzle)", + "Snapmaker A250 QS+B Kit (0.6 nozzle)", + "Snapmaker A350 QS+B Kit (0.6 nozzle)", + "Snapmaker A250 Dual QSKit (0.6 nozzle)", + "Snapmaker A350 Dual QSKit (0.6 nozzle)", + "Snapmaker A250 Dual BKit (0.6 nozzle)", + "Snapmaker A350 Dual BKit (0.6 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.6 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.6 nozzle)" + ], + "layer_height": "0.42", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "initial_layer_speed": "35", + "initial_layer_infill_speed": "55", + "outer_wall_speed": "75", + "inner_wall_speed": "85", + "sparse_infill_speed": "100", + "internal_solid_infill_speed": "85", + "gap_infill_speed": "50", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50", + "ironing_speed": "30", + "support_interface_speed": "35", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker Artisan (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker Artisan (0.6 nozzle).json index bd5a930f5d..af11989579 100644 --- a/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker Artisan (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker Artisan (0.6 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.42 Draft @Snapmaker Artisan (0.6 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "1891109323", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.6 nozzle)" - ], - "layer_height": "0.42", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.42 Draft @Snapmaker Artisan (0.6 nozzle)", + "setting_id": "1891109323", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.6 nozzle)" + ], + "layer_height": "0.42", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker J1 (0.6 nozzle).json b/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker J1 (0.6 nozzle).json index 2080a7f5b7..2ca0c16a98 100644 --- a/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker J1 (0.6 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.42 Draft @Snapmaker J1 (0.6 nozzle).json @@ -1,25 +1,25 @@ { - "type": "process", - "name": "0.42 Draft @Snapmaker J1 (0.6 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "2589039514", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.6 nozzle)" - ], - "layer_height": "0.42", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.62", - "inner_wall_line_width": "0.62", - "internal_solid_infill_line_width": "0.62", - "support_line_width": "0.62", - "top_surface_line_width": "0.62", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.42 Draft @Snapmaker J1 (0.6 nozzle)", + "setting_id": "2589039514", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.6 nozzle)" + ], + "layer_height": "0.42", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.62", + "outer_wall_line_width": "0.62", + "initial_layer_line_width": "0.62", + "sparse_infill_line_width": "0.62", + "inner_wall_line_width": "0.62", + "internal_solid_infill_line_width": "0.62", + "support_line_width": "0.62", + "top_surface_line_width": "0.62", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker (0.8 nozzle).json index aa7323c717..3b79307201 100644 --- a/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker (0.8 nozzle).json @@ -1,53 +1,53 @@ { - "type": "process", - "name": "0.48 Draft @Snapmaker (0.8 nozzle)", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "2532073691", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker A250 (0.8 nozzle)", - "Snapmaker A350 (0.8 nozzle)", - "Snapmaker A250 Dual (0.8 nozzle)", - "Snapmaker A350 Dual (0.8 nozzle)", - "Snapmaker A250 QSKit (0.8 nozzle)", - "Snapmaker A350 QSKit (0.8 nozzle)", - "Snapmaker A250 BKit (0.8 nozzle)", - "Snapmaker A350 BKit (0.8 nozzle)", - "Snapmaker A250 QS+B Kit (0.8 nozzle)", - "Snapmaker A350 QS+B Kit (0.8 nozzle)", - "Snapmaker A250 Dual QSKit (0.8 nozzle)", - "Snapmaker A350 Dual QSKit (0.8 nozzle)", - "Snapmaker A250 Dual BKit (0.8 nozzle)", - "Snapmaker A350 Dual BKit (0.8 nozzle)", - "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", - "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)" - ], - "layer_height": "0.48", - "initial_layer_print_height": "0.4", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_speed": "35", - "initial_layer_infill_speed": "55", - "outer_wall_speed": "75", - "inner_wall_speed": "85", - "sparse_infill_speed": "100", - "internal_solid_infill_speed": "85", - "gap_infill_speed": "50", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "overhang_3_4_speed": "25", - "overhang_4_4_speed": "5", - "ironing_speed": "30", - "support_interface_speed": "35", - "support_speed": "100" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.48 Draft @Snapmaker (0.8 nozzle)", + "setting_id": "2532073691", + "inherits": "fdm_process_common", + "compatible_printers": [ + "Snapmaker A250 (0.8 nozzle)", + "Snapmaker A350 (0.8 nozzle)", + "Snapmaker A250 Dual (0.8 nozzle)", + "Snapmaker A350 Dual (0.8 nozzle)", + "Snapmaker A250 QSKit (0.8 nozzle)", + "Snapmaker A350 QSKit (0.8 nozzle)", + "Snapmaker A250 BKit (0.8 nozzle)", + "Snapmaker A350 BKit (0.8 nozzle)", + "Snapmaker A250 QS+B Kit (0.8 nozzle)", + "Snapmaker A350 QS+B Kit (0.8 nozzle)", + "Snapmaker A250 Dual QSKit (0.8 nozzle)", + "Snapmaker A350 Dual QSKit (0.8 nozzle)", + "Snapmaker A250 Dual BKit (0.8 nozzle)", + "Snapmaker A350 Dual BKit (0.8 nozzle)", + "Snapmaker A250 Dual QS+B Kit (0.8 nozzle)", + "Snapmaker A350 Dual QS+B Kit (0.8 nozzle)" + ], + "layer_height": "0.48", + "initial_layer_print_height": "0.4", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_speed": "35", + "initial_layer_infill_speed": "55", + "outer_wall_speed": "75", + "inner_wall_speed": "85", + "sparse_infill_speed": "100", + "internal_solid_infill_speed": "85", + "gap_infill_speed": "50", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "50", + "overhang_3_4_speed": "25", + "overhang_4_4_speed": "5", + "ironing_speed": "30", + "support_interface_speed": "35", + "support_speed": "100" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker Artisan (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker Artisan (0.8 nozzle).json index e548c03f0f..477d70a63a 100644 --- a/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker Artisan (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker Artisan (0.8 nozzle).json @@ -1,26 +1,26 @@ { - "type": "process", - "name": "0.48 Draft @Snapmaker Artisan (0.8 nozzle)", - "inherits": "fdm_process_a400", - "from": "system", - "setting_id": "1018401408", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker Artisan (0.8 nozzle)" - ], - "layer_height": "0.48", - "initial_layer_print_height": "0.4", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.48 Draft @Snapmaker Artisan (0.8 nozzle)", + "setting_id": "1018401408", + "inherits": "fdm_process_a400", + "compatible_printers": [ + "Snapmaker Artisan (0.8 nozzle)" + ], + "layer_height": "0.48", + "initial_layer_print_height": "0.4", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker J1 (0.8 nozzle).json b/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker J1 (0.8 nozzle).json index f72daa2661..633be804e7 100644 --- a/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker J1 (0.8 nozzle).json +++ b/resources/profiles/Snapmaker/process/0.48 Draft @Snapmaker J1 (0.8 nozzle).json @@ -1,26 +1,26 @@ { - "type": "process", - "name": "0.48 Draft @Snapmaker J1 (0.8 nozzle)", - "inherits": "fdm_process_idex", - "from": "system", - "setting_id": "3841224085", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker J1 (0.8 nozzle)" - ], - "layer_height": "0.48", - "initial_layer_print_height": "0.4", - "wall_loops": "2", - "top_shell_layers": "3", - "bridge_speed": "30", - "line_width": "0.82", - "outer_wall_line_width": "0.82", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.82", - "inner_wall_line_width": "0.82", - "internal_solid_infill_line_width": "0.82", - "support_line_width": "0.82", - "top_surface_line_width": "0.82", - "initial_layer_infill_speed": "55", - "initial_layer_speed": "40" + "type": "process", + "from": "system", + "instantiation": "true", + "name": "0.48 Draft @Snapmaker J1 (0.8 nozzle)", + "setting_id": "3841224085", + "inherits": "fdm_process_idex", + "compatible_printers": [ + "Snapmaker J1 (0.8 nozzle)" + ], + "layer_height": "0.48", + "initial_layer_print_height": "0.4", + "wall_loops": "2", + "top_shell_layers": "3", + "bridge_speed": "30", + "line_width": "0.82", + "outer_wall_line_width": "0.82", + "initial_layer_line_width": "0.82", + "sparse_infill_line_width": "0.82", + "inner_wall_line_width": "0.82", + "internal_solid_infill_line_width": "0.82", + "support_line_width": "0.82", + "top_surface_line_width": "0.82", + "initial_layer_infill_speed": "55", + "initial_layer_speed": "40" } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1.json b/resources/profiles/Snapmaker/process/fdm_process_U1.json index 4f4fba0148..6c9935cce7 100644 --- a/resources/profiles/Snapmaker/process/fdm_process_U1.json +++ b/resources/profiles/Snapmaker/process/fdm_process_U1.json @@ -17,7 +17,7 @@ "line_width": "0.45", "infill_direction": "45", "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", + "sparse_infill_pattern": "grid", "initial_layer_line_width": "0.42", "initial_layer_print_height": "0.2", "initial_layer_speed": "20", diff --git a/resources/profiles/Snapmaker/process/fdm_process_U1_common.json b/resources/profiles/Snapmaker/process/fdm_process_U1_common.json index ee74627efa..4f9c8a3407 100644 --- a/resources/profiles/Snapmaker/process/fdm_process_U1_common.json +++ b/resources/profiles/Snapmaker/process/fdm_process_U1_common.json @@ -67,10 +67,7 @@ "travel_speed": "500", "enable_prime_tower": "1", "wipe_tower_no_sparse_layers": "0", - "wipe_tower_cone_angle": "15", - "wipe_tower_wall_type": "cone", "prime_tower_width": "35", - "prime_volume": "15", "wall_generator": "classic", "compatible_printers": [] } \ No newline at end of file diff --git a/resources/profiles/Snapmaker/process/fdm_process_a400.json b/resources/profiles/Snapmaker/process/fdm_process_a400.json index bc80536275..2d9a6aac47 100644 --- a/resources/profiles/Snapmaker/process/fdm_process_a400.json +++ b/resources/profiles/Snapmaker/process/fdm_process_a400.json @@ -1,37 +1,59 @@ { - "type": "process", - "name": "fdm_process_a400", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "3085664947", - "instantiation": "false", - "initial_layer_print_height": "0.2", - "enable_arc_fitting": "1", - "initial_layer_infill_speed": "75", - "outer_wall_speed": "100", - "inner_wall_speed": "160", - "sparse_infill_speed": "160", - "internal_solid_infill_speed": "160", - "gap_infill_speed": "160", - "support_speed": "100", - "overhang_1_4_speed": "0", - "travel_speed": "190", - "default_acceleration": "2000", - "inner_wall_acceleration": "2000", - "sparse_infill_acceleration": "2000", - "internal_solid_infill_acceleration": "2000", - "travel_acceleration": "3000", - "infill_jerk": "8", - "initial_layer_jerk": "8", - "outer_wall_jerk": "4", - "top_surface_jerk": "4", - "travel_jerk": "10", - "support_filament": "1", - "support_interface_filament": "2", - "support_top_z_distance": "0", - "support_bottom_z_distance": "0", - "support_interface_top_layers": "3", - "support_interface_pattern": "rectilinear", - "small_perimeter_threshold": "0", - "support_material_synchronize_layers": "1" -} \ No newline at end of file + "type": "process", + "from": "system", + "instantiation": "false", + "name": "fdm_process_a400", + "setting_id": "3085664947", + "inherits": "fdm_process_common", + + + "initial_layer_infill_speed": "75", + "inner_wall_speed": "160", + "top_surface_acceleration": "1000", + "initial_layer_acceleration": "500", + "outer_wall_acceleration": "1000", + + "ooze_prevention": "1", + "standby_temperature_delta": "-60", + "preheat_time": "60", + "preheat_steps": "1", + + + "outer_wall_speed": "100", + "support_base_pattern": "default", + "support_bottom_interface_spacing": "0.5", + "support_bottom_z_distance": "0.16", + "support_expansion": "0", + "support_filament": "0", + "support_interface_bottom_layers": "2", + "support_interface_filament": "0", + "support_interface_pattern": "auto", + "support_interface_spacing": "0.5", + "support_interface_top_layers": "2", + "support_object_xy_distance": "0.7", + "support_on_build_plate_only": "0", + "support_style": "default", + "support_top_z_distance": "0.16", + "travel_acceleration": "2000", + "travel_speed": "200", + + "initial_layer_print_height": "0.2", + "enable_arc_fitting": "1", + + "sparse_infill_speed": "160", + "internal_solid_infill_speed": "160", + "gap_infill_speed": "160", + "support_speed": "100", + "overhang_1_4_speed": "0", + "default_acceleration": "2000", + "inner_wall_acceleration": "2000", + "sparse_infill_acceleration": "2000", + "internal_solid_infill_acceleration": "2000", + "infill_jerk": "8", + "initial_layer_jerk": "8", + "outer_wall_jerk": "4", + "top_surface_jerk": "4", + "travel_jerk": "10", + "small_perimeter_threshold": "0", + "support_material_synchronize_layers": "1" +} diff --git a/resources/profiles/Snapmaker/process/fdm_process_common.json b/resources/profiles/Snapmaker/process/fdm_process_common.json index 8d0a5bd919..4b21f11f27 100644 --- a/resources/profiles/Snapmaker/process/fdm_process_common.json +++ b/resources/profiles/Snapmaker/process/fdm_process_common.json @@ -1,185 +1,192 @@ { - "type": "process", - "name": "fdm_process_common", - "from": "system", - "setting_id": "2598417433", - "instantiation": "false", - "adaptive_layer_height": "0", - "layer_height": "0.2", - "initial_layer_print_height": "0.3", - "line_width": "0.42", - "initial_layer_line_width": "0.5", - "outer_wall_line_width": "0.42", - "inner_wall_line_width": "0.45", - "top_surface_line_width": "0.42", - "sparse_infill_line_width": "0.45", - "internal_solid_infill_line_width": "0.42", - "support_line_width": "0.42", - "seam_position": "aligned", - "seam_gap": "15%", - "role_based_wipe_speed": "1", - "wipe_speed": "80%", - "wipe_on_loops": "1", - "slice_closing_radius": "0.049", - "resolution": "0.012", - "enable_arc_fitting": "0", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "elefant_foot_compensation": "0.1", - "precise_outer_wall": "1", - "ironing_type": "no ironing", - "ironing_flow": "10%", - "ironing_spacing": "0.15", - "wall_generator": "arachne", - "wall_transition_angle": "10", - "wall_transition_filter_deviation": "25%", - "wall_transition_length": "100%", - "wall_distribution_count": "1", - "min_bead_width": "85%", - "min_feature_size": "25%", - "wall_infill_order": "inner wall/outer wall/infill", - "bridge_flow": "0.95", - "bridge_density": "100%", - "thick_bridges": "1", - "top_solid_infill_flow_ratio": "1", - "bottom_solid_infill_flow_ratio": "1.2", - "only_one_wall_top": "0", - "only_one_wall_first_layer": "0", - "detect_overhang_wall": "1", - "reduce_crossing_wall": "1", - "max_travel_detour_distance": "0", - "wipe_tower_no_sparse_layers": "0", - "wipe_tower_max_purge_speed": "55", - "draft_shield": "disabled", - "independent_support_layer_height": "1", - "interface_shells": "0", - "max_bridge_length": "10", - "print_flow_ratio": "1", - "wall_loops": "3", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonic", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "cubic", - "filter_out_gap_fill": "0", - "infill_wall_overlap": "15%", - "infill_direction": "45", - "bridge_angle": "0", - "minimum_sparse_infill_area": "15", - "infill_combination": "0", - "detect_narrow_internal_solid_infill": "1", - "ensure_vertical_shell_thickness": "1", - "internal_bridge_support_thickness": "0.8", - "initial_layer_speed": "50", - "initial_layer_infill_speed": "50", - "initial_layer_travel_speed": "80%", - "outer_wall_speed": "70", - "inner_wall_speed": "80", - "sparse_infill_speed": "85", - "internal_solid_infill_speed": "100", - "top_surface_speed": "100", - "gap_infill_speed": "100", - "support_speed": "80", - "support_interface_speed": "50", - "ironing_speed": "35", - "enable_overhang_speed": "1", - "overhang_speed_classic": "0", - "overhang_1_4_speed": "35", - "overhang_2_4_speed": "25", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "bridge_speed": "50", - "travel_speed": "120", - "default_acceleration": "1100", - "outer_wall_acceleration": "1000", - "inner_wall_acceleration": "1100", - "bridge_acceleration": "1000", - "sparse_infill_acceleration": "1100", - "internal_solid_infill_acceleration": "1100", - "initial_layer_acceleration": "500", - "top_surface_acceleration": "1000", - "travel_acceleration": "1100", - "default_jerk": "0", - "infill_jerk": "4", - "initial_layer_jerk": "4", - "inner_wall_jerk": "4", - "outer_wall_jerk": "2", - "top_surface_jerk": "2", - "travel_jerk": "4", - "enable_support": "0", - "support_type": "normal(auto)", - "support_style": "snug", - "support_threshold_angle": "30", - "support_on_build_plate_only": "1", - "support_critical_regions_only": "1", - "raft_layers": "0", - "raft_contact_distance": "0.1", - "raft_expansion": "1.5", - "raft_first_layer_density": "90%", - "raft_first_layer_expansion": "2", - "support_filament": "0", - "support_interface_filament": "0", - "tree_support_branch_distance": "5", - "tree_support_branch_diameter": "5", - "tree_support_branch_angle": "15", - "tree_support_wall_count": "2", - "tree_support_adaptive_layer_height": "1", - "tree_support_auto_brim": "1", - "tree_support_brim_width": "3", - "tree_support_with_infill": "0", - "support_top_z_distance": "0.12", - "support_bottom_z_distance": "0.12", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2.5", - "support_angle": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "3", - "support_interface_pattern": "auto", - "support_interface_spacing": "0.12", - "support_bottom_interface_spacing": "0.12", - "support_interface_loop_pattern": "0", - "support_expansion": "1", - "support_object_xy_distance": "0.9", - "bridge_no_support": "1", - "skirt_loops": "0", - "skirt_distance": "2", - "skirt_height": "1", - "brim_type": "auto_brim", - "brim_width": "5", - "brim_object_gap": "0", - "enable_prime_tower": "1", - "prime_tower_width": "25", - "prime_volume": "55", - "prime_tower_brim_width": "5", - "wipe_tower_cone_angle": "25", - "wipe_tower_extra_spacing": "150%", - "wipe_tower_rotation_angle": "90", - "ooze_prevention": "1", - "standby_temperature_delta": "-70", - "preheat_time": "80", - "preheat_steps": "1", - "flush_into_infill": "0", - "flush_into_support": "1", - "flush_into_objects": "0", - "slicing_mode": "regular", - "print_sequence": "by layer", - "spiral_mode": "0", - "fuzzy_skin": "none", - "fuzzy_skin_point_distance": "0.8", - "fuzzy_skin_thickness": "0.3", - "reduce_infill_retraction": "1", - "gcode_comments": "0", - "gcode_add_line_number": "0", - "gcode_label_objects": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{print_time}.gcode", - "post_process": "", - "enforce_support_layers": "0", - "exclude_object": "0", - "timelapse_type": "0", - "gap_fill_enabled": "0", - "single_extruder_multi_material_priming": "0" -} \ No newline at end of file + "type": "process", + "from": "system", + "instantiation": "false", + "name": "fdm_process_common", + "setting_id": "2598417433", + + "default_acceleration": "1000", + "enable_prime_tower": "1", + "enable_support": "0", + "inner_wall_acceleration": "1000", + "internal_solid_infill_acceleration": "1000", + "is_custom_defined": "0", + "outer_wall_acceleration": "800", + "sparse_infill_acceleration": "1000", + "support_bottom_interface_spacing": "0.5", + "support_bottom_z_distance": "0.2", + "support_interface_bottom_layers": "2", + "support_interface_spacing": "0.5", + "support_object_xy_distance": "0.5", + "support_style": "default", + "support_top_z_distance": "0.2", + "top_surface_acceleration": "800", + "travel_acceleration": "1000", + "travel_speed": "100", + "ooze_prevention": "1", + "standby_temperature_delta": "-60", + "preheat_time": "60", + "preheat_steps": "1", + + "adaptive_layer_height": "0", + "layer_height": "0.2", + "initial_layer_print_height": "0.3", + "line_width": "0.42", + "initial_layer_line_width": "0.5", + "outer_wall_line_width": "0.42", + "inner_wall_line_width": "0.45", + "top_surface_line_width": "0.42", + "sparse_infill_line_width": "0.45", + "internal_solid_infill_line_width": "0.42", + "support_line_width": "0.42", + "seam_position": "aligned", + "seam_gap": "15%", + "role_based_wipe_speed": "1", + "wipe_speed": "80%", + "wipe_on_loops": "1", + "slice_closing_radius": "0.049", + "resolution": "0.012", + "enable_arc_fitting": "0", + "xy_hole_compensation": "0", + "xy_contour_compensation": "0", + "elefant_foot_compensation": "0.1", + "precise_outer_wall": "1", + "ironing_type": "no ironing", + "ironing_flow": "10%", + "ironing_spacing": "0.15", + "wall_generator": "arachne", + "wall_transition_angle": "10", + "wall_transition_filter_deviation": "25%", + "wall_transition_length": "100%", + "wall_distribution_count": "1", + "min_bead_width": "85%", + "min_feature_size": "25%", + "wall_infill_order": "inner wall/outer wall/infill", + "bridge_flow": "0.95", + "bridge_density": "100%", + "thick_bridges": "1", + "top_solid_infill_flow_ratio": "1", + "bottom_solid_infill_flow_ratio": "1.2", + "only_one_wall_top": "0", + "only_one_wall_first_layer": "0", + "detect_overhang_wall": "1", + "reduce_crossing_wall": "1", + "max_travel_detour_distance": "0", + "wipe_tower_no_sparse_layers": "0", + "draft_shield": "disabled", + "independent_support_layer_height": "1", + "interface_shells": "0", + "max_bridge_length": "10", + "print_flow_ratio": "1", + "wall_loops": "3", + "detect_thin_wall": "0", + "top_surface_pattern": "monotonic", + "top_shell_layers": "4", + "top_shell_thickness": "0.8", + "bottom_surface_pattern": "monotonic", + "bottom_shell_layers": "3", + "bottom_shell_thickness": "0", + "sparse_infill_density": "15%", + "sparse_infill_pattern": "cubic", + "filter_out_gap_fill": "0", + "infill_wall_overlap": "15%", + "infill_direction": "45", + "bridge_angle": "0", + "minimum_sparse_infill_area": "15", + "infill_combination": "0", + "detect_narrow_internal_solid_infill": "1", + "ensure_vertical_shell_thickness": "1", + "internal_bridge_support_thickness": "0.8", + "initial_layer_speed": "50", + "initial_layer_infill_speed": "75", + "initial_layer_travel_speed": "80%", + "outer_wall_speed": "70", + "inner_wall_speed": "80", + "sparse_infill_speed": "85", + "internal_solid_infill_speed": "100", + "top_surface_speed": "100", + "gap_infill_speed": "100", + "support_speed": "80", + "support_interface_speed": "50", + "ironing_speed": "35", + "enable_overhang_speed": "1", + "overhang_speed_classic": "0", + "overhang_1_4_speed": "35", + "overhang_2_4_speed": "25", + "overhang_3_4_speed": "15", + "overhang_4_4_speed": "10", + "bridge_speed": "50", + + "bridge_acceleration": "1000", + + "default_jerk": "0", + "infill_jerk": "4", + "initial_layer_jerk": "4", + "inner_wall_jerk": "4", + "outer_wall_jerk": "2", + "top_surface_jerk": "2", + "travel_jerk": "4", + + "support_type": "normal(auto)", + + "support_threshold_angle": "30", + "support_on_build_plate_only": "1", + "support_critical_regions_only": "1", + "raft_layers": "0", + "raft_contact_distance": "0.1", + "raft_expansion": "1.5", + "raft_first_layer_density": "90%", + "raft_first_layer_expansion": "2", + "support_filament": "0", + "support_interface_filament": "0", + "tree_support_branch_distance": "5", + "tree_support_branch_diameter": "5", + "tree_support_branch_angle": "15", + "tree_support_wall_count": "2", + "tree_support_adaptive_layer_height": "1", + "tree_support_auto_brim": "1", + "tree_support_brim_width": "3", + "tree_support_with_infill": "0", + + "support_base_pattern": "rectilinear", + "support_base_pattern_spacing": "2.5", + "support_angle": "0", + "support_interface_top_layers": "2", + "support_interface_pattern": "auto", + + "support_interface_loop_pattern": "0", + "support_expansion": "1", + + "bridge_no_support": "1", + "skirt_loops": "0", + "skirt_distance": "2", + "skirt_height": "1", + "brim_type": "auto_brim", + "brim_width": "5", + "brim_object_gap": "0", + + "prime_tower_width": "60", + "prime_volume": "45", + "prime_tower_brim_width": "3", + "wipe_tower_cone_angle": "40", + "flush_into_infill": "0", + "flush_into_support": "1", + "flush_into_objects": "0", + "slicing_mode": "regular", + "print_sequence": "by layer", + "spiral_mode": "0", + "fuzzy_skin": "none", + "fuzzy_skin_point_distance": "0.8", + "fuzzy_skin_thickness": "0.3", + "reduce_infill_retraction": "1", + "gcode_comments": "0", + "gcode_add_line_number": "0", + "gcode_label_objects": "1", + "filename_format": "{input_filename_base}_{layer_height}mm_{print_time}.gcode", + "post_process": "", + "enforce_support_layers": "0", + "exclude_object": "0", + "timelapse_type": "0", + "gap_fill_enabled": "0", + "single_extruder_multi_material_priming": "0" +} diff --git a/resources/profiles/Snapmaker/process/fdm_process_idex.json b/resources/profiles/Snapmaker/process/fdm_process_idex.json index 91fceb2971..9fe1b884fb 100644 --- a/resources/profiles/Snapmaker/process/fdm_process_idex.json +++ b/resources/profiles/Snapmaker/process/fdm_process_idex.json @@ -1,43 +1,71 @@ { - "type": "process", - "name": "fdm_process_idex", - "inherits": "fdm_process_common", - "from": "system", - "setting_id": "2703811679", - "instantiation": "false", - "initial_layer_print_height": "0.2", - "enable_arc_fitting": "1", - "initial_layer_infill_speed": "75", - "outer_wall_speed": "120", - "inner_wall_speed": "250", - "sparse_infill_speed": "250", - "internal_solid_infill_speed": "250", - "gap_infill_speed": "250", - "support_speed": "100", - "overhang_1_4_speed": "60", - "overhang_2_4_speed": "30", - "overhang_3_4_speed": "10", - "travel_speed": "300", - "default_acceleration": "10000", - "inner_wall_acceleration": "6000", - "bridge_acceleration": "2000", - "sparse_infill_acceleration": "10000", - "internal_solid_infill_acceleration": "10000", - "top_surface_acceleration": "2000", - "travel_acceleration": "10000", - "infill_jerk": "8", - "initial_layer_jerk": "8", - "outer_wall_jerk": "4", - "top_surface_jerk": "4", - "travel_jerk": "10", - "support_filament": "1", - "support_interface_filament": "2", - "support_top_z_distance": "0", - "support_bottom_z_distance": "0", - "support_interface_top_layers": "3", - "support_interface_pattern": "rectilinear", - "preheat_time": "90", - "filename_format": "{input_filename_base}_{layer_height}mm_{print_time}_J1.gcode", - "small_perimeter_threshold": "0", - "support_material_synchronize_layers": "1" -} \ No newline at end of file + "type": "process", + "from": "system", + "instantiation": "false", + "name": "fdm_process_idex", + "setting_id": "2703811679", + "inherits": "fdm_process_common", + "initial_layer_print_height": "0.2", + "enable_arc_fitting": "1", + + "initial_layer_infill_speed": "80", + "initial_layer_acceleration": "500", + "default_acceleration": "6000", + + "support_speed": "100", + "overhang_1_4_speed": "60", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "10", + + "inner_wall_acceleration": "6000", + "bridge_acceleration": "2000", + + "top_surface_acceleration": "1000", + "infill_jerk": "8", + "initial_layer_jerk": "8", + "outer_wall_jerk": "4", + "top_surface_jerk": "4", + "travel_jerk": "10", + + "filename_format": "{input_filename_base}_{layer_height}mm_{print_time}_J1.gcode", + "small_perimeter_threshold": "0", + "support_material_synchronize_layers": "1", + + "enable_prime_tower": "1", + "wipe_tower_cone_angle": "25", + "wipe_tower_extra_spacing": "150%", + "wipe_tower_rotation_angle": "90", + "single_extruder_multi_material_priming": "0", + "ooze_prevention": "1", + "standby_temperature_delta": "-60", + "preheat_time": "60", + "preheat_steps": "1", + + "gap_infill_speed": "200", + "inner_wall_speed": "160", + "internal_solid_infill_acceleration": "6000", + "internal_solid_infill_speed": "200", + "is_custom_defined": "0", + "outer_wall_acceleration": "1000", + "outer_wall_speed": "120", + "print_settings_id": "0.20 Standard @Snapmaker J1 (0.4 nozzle) - J1s", + "sparse_infill_acceleration": "6000", + "sparse_infill_speed": "200", + "support_base_pattern": "default", + "support_bottom_interface_spacing": "0.5", + "support_bottom_z_distance": "0.16", + "support_expansion": "0", + "support_filament": "0", + "support_interface_bottom_layers": "2", + "support_interface_filament": "0", + "support_interface_pattern": "auto", + "support_interface_spacing": "0.5", + "support_interface_top_layers": "2", + "support_object_xy_distance": "0.7", + "support_on_build_plate_only": "0", + "support_style": "default", + "support_top_z_distance": "0.16", + "top_surface_speed": "120", + "travel_acceleration": "6000", + "travel_speed": "200" +} diff --git a/resources/web/data/text.js b/resources/web/data/text.js index 93093cc3bb..c8311cd2b7 100644 --- a/resources/web/data/text.js +++ b/resources/web/data/text.js @@ -1,7 +1,7 @@ var LangText = { en: { - t1: "Welcome to Orca Slicer", - t2: "Orca Slicer will be setup in several steps. Let's start!", + t1: "Welcome to Snapmaker Orca", + t2: "Snapmaker Orca will be setup in several steps. Let's start!", t3: "User Agreement", t4: "Disagree", t5: "Agree", @@ -40,13 +40,16 @@ var LangText = { t38: "Cancel", t39: "Confirm", t40: "Network disconnect, please check and try again later.", + t41: "Network connection interrupted. Possible causes:", + t42: "1. Firewall blocking the connection. Try disabling the firewall and reconnecting.", + t43: "2. Device network interruption. Check if the device has lost connectivity.", t47: "Please select your login region", t48: "Asia-Pacific", t49: "China", t50: "Log out", t52: "Skip", t53: "Join", - t54: "In the 3D Printing community, we learn from each other's successes and failures to adjust our own slicing parameters and settings. Orca Slicer follows the same principle and uses machine learning to improve its performance from the successes and failures of the vast number of prints by our users. We are training Orca Slicer to be smarter by feeding them the real-world data. If you are willing, this service will access information from your error logs and usage logs, which may include information described in ", + t54: "In the 3D Printing community, we learn from each other's successes and failures to adjust our own slicing parameters and settings. Snapmaker Orca follows the same principle and uses machine learning to improve its performance from the successes and failures of the vast number of prints by our users. We are training Snapmaker Orca to be smarter by feeding them the real-world data. If you are willing, this service will access information from your error logs and usage logs, which may include information described in ", t55: "Privacy Policy", t56: ". We will not collect any Personal Data by which an individual can be identified directly or indirectly, including without limitation names, addresses, payment information, or phone numbers. By enabling this service, you agree to these terms and the statement about Privacy Policy.", t57: "", @@ -57,7 +60,7 @@ var LangText = { t62: "Others", t63: "After changing the region, your account will be logged out. Please log in again later.", t64: "Proprietary Plugins", - t65: "Please be aware that these plugins are not developed or maintained by OrcaSlicer. They should be used at your own discretion and risk.", + t65: "Please be aware that these plugins are not developed or maintained by Snapmaker Orca. They should be used at your own discretion and risk.", t66: "Full remote control", t67: "Liveview streaming", t68: "User data synchronization", @@ -75,9 +78,9 @@ var LangText = { t80: "Try the following steps:", t81: "1, Click ", t82: " to open the plug-in directory", - t83: "2, Close all open Orca Slicer", + t83: "2, Close all open Snapmaker Orca", t84: "3, Delete all files under the plug-in directory", - t85: "4, Reopen Orca Slicer and install the plug-in again", + t85: "4, Reopen Snapmaker Orca and install the plug-in again", t86: "Close", t87: "User Manual", t88: "Remove", @@ -105,16 +108,16 @@ var LangText = { t111: "Create New", t112: "Join the Program", t113: "You may change your choice in preference anytime.", - t126: "Loading……", + t114: "Device Management", orca1: "Edit Project Info", orca2: "no model information", orca3: "Stealth Mode", orca4: "This stops the transmission of data to Bambu's cloud services. Users who don't use BBL machines or use LAN mode only can safely turn on this function.", orca5: "Enable Stealth Mode.", }, - ca_ES: { - t1: "Benvingut a Orca Slicer", - t2: "Orca Slicer es configurarà en diversos passos. Comencem!", + ca_ES: { + t1: "Benvingut a Snapmaker Orca", + t2: "Snapmaker Orca es configurarà en diversos passos. Comencem!", t3: "Acord de l'Usuari", t4: "No accepto", t5: "Accepto", @@ -159,7 +162,7 @@ var LangText = { t50: "Tancar sessió", t52: "Saltar", t53: "Unir-se", - t54: "A la comunitat d'Impressió 3D, aprenem dels èxits i fracassos dels altres per ajustar els nostres propis paràmetres i configuracions de laminació. Orca Slicer segueix el mateix principi i utilitza l'aprenentatge automàtic per millorar el seu rendiment a partir dels èxits i fracassos d'un gran nombre d'impressions dels nostres usuaris. Estem entrenant Orca Slicer per ser més intel·ligent alimentant-lo amb dades del món real. Si estàs disposat, aquest servei accedirà a informació dels teus registres d'errors i registres d'ús, que poden incloure informació descrita a la ", + t54: "A la comunitat d'Impressió 3D, aprenem dels èxits i fracassos dels altres per ajustar els nostres propis paràmetres i configuracions de laminació. Snapmaker Orca segueix el mateix principi i utilitza l'aprenentatge automàtic per millorar el seu rendiment a partir dels èxits i fracassos d'un gran nombre d'impressions dels nostres usuaris. Estem entrenant Snapmaker Orca per ser més intel·ligent alimentant-lo amb dades del món real. Si estàs disposat, aquest servei accedirà a informació dels teus registres d'errors i registres d'ús, que poden incloure informació descrita a la ", t55: "Política de Privacitat", t56: ". No recopilarem cap dada personal que pugui identificar directament o indirectament a un individu, incloent-hi noms, adreces, informació de pagament o números de telèfon. En habilitar aquest servei, acceptes aquests termes i la declaració sobre la Política de Privacitat.", t57: "", @@ -170,7 +173,7 @@ var LangText = { t62: "Altres", t63: "Després de canviar la regió, el teu compte es tancarà la sessió. Si us plau inicia sessió de nou més tard.", t64: "Connectors propietaris", - t65: "Tingues en compte que aquests connectors no són desenvolupats ni mantinguts per OrcaSlicer. S'han d'utilitzar a la teva discreció i risc.", + t65: "Tingues en compte que aquests connectors no són desenvolupats ni mantinguts per Snapmaker Orca. S'han d'utilitzar a la teva discreció i risc.", t66: "Control remot complet", t67: "Transmissió en directe", t68: "Sincronització de dades de l'usuari", @@ -188,9 +191,9 @@ var LangText = { t80: "Prova els següents passos:", t81: "1, Fes clic ", t82: " per obrir el directori de connectors", - t83: "2, Tanca totes les Orca Slicer obertes", + t83: "2, Tanca totes les Snapmaker Orca obertes", t84: "3, Elimina tots els fitxers del directori de connectors", - t85: "4, Reobre Orca Slicer i instal·la el connector de nou", + t85: "4, Reobre Snapmaker Orca i instal·la el connector de nou", t86: "Tancar", t87: "Manual de l'Usuari", t88: "Eliminar", @@ -219,11 +222,11 @@ var LangText = { t112: "Unir-se al Programa", t113: "Pots canviar la teva elecció en les preferències en qualsevol moment.", orca1: "Editar Informació del Projecte", - orca2: "no hi ha informació del model", - }, + orca2: "no hi ha informació del model" +}, es_ES: { - t1: "Bienvenido a Orca Slicer", - t2: "Va a configurar Orca Slicer mediante varios pasos. ¡Vamos a comenzar!", + t1: "Bienvenido a Snapmaker Orca", + t2: "Va a configurar Snapmaker Orca mediante varios pasos. ¡Vamos a comenzar!", t3: "Terminos de usuario", t4: "Estoy en desacuerdo", t5: "Estoy de deacuerdo", @@ -268,7 +271,7 @@ var LangText = { t50: "Desconectarse", t52: "Saltar", t53: "Ingresar", - t54: "En la comunidad de impresión 3D, pordemos aprender de los logros y los fallos de otros para obtener nuestros propios parametros y configuraciones de Orca Slicer follows the same principle and uses machine learning to improve its performance from the successes and failures of the vast number of prints by our users. We are training Orca Slicer to be smarter by feeding them the real-world data. If you are willing, this service will access information from your error logs and usage logs, which may include information described in ", + t54: "En la comunidad de impresión 3D, pordemos aprender de los logros y los fallos de otros para obtener nuestros propios parametros y configuraciones de Snapmaker Orca follows the same principle and uses machine learning to improve its performance from the successes and failures of the vast number of prints by our users. We are training Snapmaker Orca to be smarter by feeding them the real-world data. If you are willing, this service will access information from your error logs and usage logs, which may include information described in ", t55: "Política de privacidad", t56: ". No recolectaremos ningún tipo de dato personal con el que se le pueda identificar directa o indirectamente, incluyendo nombre, direcciones, información de pago, o números de teléfono. Activando este servicio, si está de acuerdo en estos términos y los acuerdos sobre Política y Privacidad.", t57: "", @@ -279,7 +282,7 @@ var LangText = { t62: "Otras", t63: "Después de cambiar de región, su cuenta será desconectada. por favor, vuelva a ingresar.", t64: "Complemento de red Bambú", - t65: "Please be aware that these plugins are not developed or maintained by OrcaSlicer. They should be used at your own discretion and risk.", + t65: "Please be aware that these plugins are not developed or maintained by Snapmaker Orca. They should be used at your own discretion and risk.", t66: "Control remoto total", t67: "Retransmisión en vivo", t68: "Sincronización de datos de usuario", @@ -297,9 +300,9 @@ var LangText = { t80: "Intente los siguientes pasos:", t81: "1, Presionar ", t82: " para abrir el directorio de complementos", - t83: "2, Cerrar todos los Orca Slicer abiertos", + t83: "2, Cerrar todos los Snapmaker Orca abiertos", t84: "3, Borrar todos los archivos en el directorio de complementos", - t85: "4, Reabrir Orca Slicer e instalar el complemento de nuevo", + t85: "4, Reabrir Snapmaker Orca e instalar el complemento de nuevo", t86: "Cerrar", t87: "Manual de usuario", t88: "Borrar", @@ -327,128 +330,15 @@ var LangText = { t111: "Crear nuevo", t112: "Unirse al programa", t113: "Puede cambiar su elección en preferencias en cualquier momento.", - t126: "Carga en progreso……", orca1: "Editar información del proyecto", orca2: "No hay información sobre el modelo", orca3: "Modo Invisible", orca4: "Esta función detiene la transmisión de datos a los servicios en la nube de Bambu. Los usuarios que no utilicen máquinas BBL o que solo utilicen el modo LAN pueden activar esta función de forma segura.", orca5: "Activar Modo Invisible.", }, - it_IT: { - t1: "Benvenuti in OrcaSlicer", - t2: "OrcaSlicer verrà configurato seguendo diversi passaggi. Cominciamo!", - t3: "Condizioni d'uso", - t4: "Non accetto", - t5: "Accetto", - t6: "Chiediamo gentilmente il tuo aiuto per migliorare la qualità delle stampe.
Iscriviti al nostro programma di miglioramento dell'esperienza utente", - t7: "Iscriviti al nostro programma di miglioramento dell'esperienza utente", - t8: "Indietro", - t9: "Avanti", - t10: "Selezione della stampante", - t11: "Tutto", - t12: "Cancella tutto", - t13: "mm ugello", - t14: "Selezione del filamento", - t15: "Stampante", - t16: "Tipo di filamento", - t17: "Produttore", - t18: "errore", - t19: "È necessario selezionare almeno un filamento.", - t20: "Vuoi utilizzare il filamento predefinito?", - t21: "sì", - t22: "no", - t23: "Note di rilascio", - t24: "Inizia", - t25: "Fine", - t26: "Accedi", - t27: "Registrati", - t28: "Recente", - t29: "Negozio", - t30: "Manuale", - t31: "Nuovo progetto", - t32: "Crea un nuovo progetto", - t33: "Apri progetto", - t34: "hotspot", - t35: "Aperti di recente", - t36: "ok", - t37: "È necessario selezionare almeno una stampante.", - t38: "Annulla", - t39: "Conferma", - t40: "Disconnesso, controlla la connessione di rete e riprova.", - t47: "Seleziona la tua regione di accesso", - t48: "Asia-Pacifico", - t49: "Cina", - t50: "Disconnettiti", - t52: "Salta", - t53: "Iscriviti", - t54: "Nella comunità di stampa 3D, impariamo dai successi e dagli insuccessi di ognuno per adattare i nostri parametri e le nostre impostazioni di slicing. OrcaSlicer segue lo stesso principio, utilizzando l'apprendimento automatico per migliorare le sue prestazioni sfruttando i successi e gli insuccessi delle numerose stampe dei nostri utenti. Stiamo addestrando OrcaSlicer ad essere più intelligente, fornendogli dati del mondo reale. Se lo desideri, questo servizio accederà alle informazioni dei tuoi registri di errore e di utilizzo, i quali possono includere informazioni descritte in ", - t55: "Politica sulla riservatezza", - t56: ". Non raccoglieremo alcun Dato Personale tramite il quale un individuo possa essere identificato direttamente o indirettamente, inclusi (senza limitazioni) nomi, indirizzi, informazioni di pagamento o numeri di telefono. Abilitando questo servizio, accetti questi termini e la dichiarazione sulla Politica sulla riservatezza.", - t57: "", - t58: "", - t59: ".", - t60: "Europa", - t61: "Nord America", - t62: "Altri", - t63: "Dopo aver cambiato la regione, il tuo profilo verrà disconnesso. Sarà necessario accedere di nuovo.", - t64: "Moduli proprietari", - t65: "Si prega di notare che questi moduli non sono sviluppati o mantenuti da OrcaSlicer. Dovrebbero essere utilizzati a proprio rischio e discrezione.", - t66: "Controllo remoto completo", - t67: "Video in diretta", - t68: "Sincronizzazione dei dati utente", - t69: "Installa il modulo di rete Bambu", - t70: "", - t71: "Scaricamento", - t72: "Scaricamento non riuscito", - t73: "Installazione riuscita.", - t74: "Riavvia", - t75: "Le stampanti di alcuni produttori richiedono dei moduli proprietari per far in modo che la comunicazione abbia successo. Seleziona il modulo corrispondente se utilizzi tali stampanti.", - t76: "Modulo di rete Bambu non rilevato. Fai clic ", - t77: "qui", - t78: " per installarlo.", - t79: "Impossibile installare il modulo. ", - t80: "Prova i seguenti passaggi:", - t81: "1, Fare clic ", - t82: " per aprire la directory del modulo", - t83: "2, Chiudere tutte le istanze di OrcaSlicer", - t84: "3, Eliminare tutti i file all'interno della directory del modulo", - t85: "4, Riaprire OrcaSlicer e installare nuovamente il modulo", - t86: "Chiudi", - t87: "Manuale d'uso", - t88: "Rimuovi", - t89: "Apri cartella con contenuto", - t90: "Modello 3D", - t91: "Scarica modelli 3D", - t92: "Creato da", - t93: "Modificato da", - t94: "Condiviso da", - t95: "Informazioni sul modello", - t96: "Accessori", - t97: "Informazioni sul profilo", - t98: "Nome del modello", - t100: "Descrizione del modello", - t101: "Elenco dei materiali", - t102: "Istruzioni di montaggio ", - t103: "Altro", - t104: "Nome del profilo", - t105: "Autore del profilo", - t106: "Descrizione del profilo", - t107: "Modelli online", - t108: "ALTRO", - t109: "Filamenti di sistema", - t110: "Filamenti personalizzati", - t111: "Crea Nuovo", - t112: "Unisciti al programma", - t113: "Puoi modificare la tua scelta in 'Preferenze' in qualsiasi momento.", - orca1: "Modifica informazioni progetto", - orca2: "nessuna informazione sul modello", - orca3: "Modalità invisibile", - orca4: "Con questa modalità, la trasmissione dei dati ai servizi cloud di Bambu sarà interrotta. Gli utenti che non utilizzano macchine BBL o che usano solo la modalità LAN possono attivare questa funzione in modo sicuro.", - orca5: "Abilita la modalità invisibile.", - }, de_DE: { - t1: "Willkommen im Orca Slicer", - t2: "Das Orca Slicer wird in mehreren Schritten eingerichtet. Lass uns anfangen!", + t1: "Willkommen im Snapmaker Orca", + t2: "Das Snapmaker Orca wird in mehreren Schritten eingerichtet. Lass uns anfangen!", t3: "Nutzervereinbarung", t4: "Ablehnen", t5: "Zustimmen", @@ -493,7 +383,7 @@ var LangText = { t50: "Abmelden", t52: "Überspringen", t53: "Beitreten", - t54: "In der 3D-Druck-Community lernen wir aus den Erfolgen und Misserfolgen der anderen Benutzer, um unsere eigenen Schneideparameter und Einstellungen anzupassen. Orca Slicer folgt demselben Prinzip und verbessert seine Leistung durch die Erfolge und Misserfolge der Vielzahl von Drucken unserer Benutzer mittels maschinellem Lernen. Wir trainieren Orca Slicer, indem wir ihnen die realen Daten zuführen. Wenn Sie bereit sind, greift dieser Dienst auf Informationen aus Ihren Fehler- und Nutzungsprotokollen zu, die Informationen enthalten können, die in der ", + t54: "In der 3D-Druck-Community lernen wir aus den Erfolgen und Misserfolgen der anderen Benutzer, um unsere eigenen Schneideparameter und Einstellungen anzupassen. Snapmaker Orca folgt demselben Prinzip und verbessert seine Leistung durch die Erfolge und Misserfolge der Vielzahl von Drucken unserer Benutzer mittels maschinellem Lernen. Wir trainieren Snapmaker Orca, indem wir ihnen die realen Daten zuführen. Wenn Sie bereit sind, greift dieser Dienst auf Informationen aus Ihren Fehler- und Nutzungsprotokollen zu, die Informationen enthalten können, die in der ", t55: "Datenschutzrichtlinie", t56: ". Wir werden keine personenbezogenen Daten sammeln, durch die eine Person direkt oder indirekt identifiziert werden kann, einschließlich, aber nicht beschränkt auf Namen, Adressen, Zahlungsinformationen oder Telefonnummern. Durch Aktivieren dieses Dienstes stimmen Sie diesen Bedingungen und der Erklärung zur Datenschutzrichtlinie zu.", t57: "", @@ -504,7 +394,7 @@ var LangText = { t62: "Andere", t63: "Nach Ändern der Region wird Ihr Konto abgemeldet. Bitte melden Sie sich später erneut an.", t64: "Bambu Network-Plug-in", - t65: "Please be aware that these plugins are not developed or maintained by OrcaSlicer. They should be used at your own discretion and risk.", + t65: "Please be aware that these plugins are not developed or maintained by Snapmaker Orca. They should be used at your own discretion and risk.", t66: "Vollständige Fernsteuerung", t67: "Live-View-Streaming", t68: "Synchronisierung von Benutzerdaten", @@ -522,9 +412,9 @@ var LangText = { t80: "Versuchen Sie die folgenden Schritte:", t81: "1, Klicken Sie auf ", t82: ", um das Plug-in-Verzeichnis zu öffnen", - t83: "2, Schließen Sie alle geöffneten Orca Slicer", + t83: "2, Schließen Sie alle geöffneten Snapmaker Orca", t84: "3, Löschen Sie alle Dateien im Plug-in-Verzeichnis", - t85: "4, Öffnen Sie Orca Slicer erneut und installieren Sie das Plug-in erneut", + t85: "4, Öffnen Sie Snapmaker Orca erneut und installieren Sie das Plug-in erneut", t86: "Schließen", t87: "Benutzerhandbuch", t88: "Entfernen", @@ -545,13 +435,12 @@ var LangText = { t104: "Profilname", t105: "Profilautor", t106: "Profilbeschreibung", - t126: "Laden……", orca1: "Edit Project Info", orca2: "no model information", }, cs_CZ: { - t1: "Vítejte v Orca Slicer", - t2: "Orca Slicer bude nastaven v několika krocích. Začněme!", + t1: "Vítejte v Snapmaker Orca", + t2: "Snapmaker Orca bude nastaven v několika krocích. Začněme!", t3: "Uživatelská smlouva", t4: "Nesouhlasím", t5: "Souhlasím", @@ -596,7 +485,7 @@ var LangText = { t50: "Odhlásit se", t52: "Přeskočit", t53: "Připojit se", - t54: "V komunitě 3D tisku se ze vzájemných úspěchů a neúspěchů učíme upravovat vlastní parametry a nastavení krájení. Orca Slicer se řídí stejným principem a využívá strojové učení ke zlepšení svého výkonu na základě úspěchů a neúspěchů počet výtisků našimi uživateli. Orca Slicer školíme, aby byl chytřejší tím, že jim poskytuje data z reálného světa. Pokud budete chtít, bude tato služba přistupovat k informacím z vašich protokolů chyb a protokolů použití, které mohou zahrnovat informace popsané v ", + t54: "V komunitě 3D tisku se ze vzájemných úspěchů a neúspěchů učíme upravovat vlastní parametry a nastavení krájení. Snapmaker Orca se řídí stejným principem a využívá strojové učení ke zlepšení svého výkonu na základě úspěchů a neúspěchů počet výtisků našimi uživateli. Snapmaker Orca školíme, aby byl chytřejší tím, že jim poskytuje data z reálného světa. Pokud budete chtít, bude tato služba přistupovat k informacím z vašich protokolů chyb a protokolů použití, které mohou zahrnovat informace popsané v ", t55: "Zásady ochrany osobních údajů", t56: ". Nebudeme shromažďovat žádné osobní údaje, pomocí kterých lze přímo nebo nepřímo identifikovat jednotlivce, včetně jmen, adres, platebních údajů nebo telefonních čísel. Povolením této služby souhlasíte s těmito podmínkami a prohlášení o zásadách ochrany osobních údajů.", t57: "", @@ -607,7 +496,7 @@ var LangText = { t62: "Ostatní", t63: "Po změně regionu bude váš účet odhlášen. Přihlaste se prosím znovu později.", t64: "Proprietary Plugins", - t65: "Please be aware that these plugins are not developed or maintained by OrcaSlicer. They should be used at your own discretion and risk.", + t65: "Please be aware that these plugins are not developed or maintained by Snapmaker Orca. They should be used at your own discretion and risk.", t66: "Plné dálkové ovládání", t67: "Streamování v přímém přenosu", t68: "Synchronizace uživatelských dat", @@ -625,9 +514,9 @@ var LangText = { t80: "Zkuste následující kroky:", t81: "1, klikněte", t82: "otevřete adresář plug-in", - t83: "2, Zavřete všechny otevřené Orca Slicer", + t83: "2, Zavřete všechny otevřené Snapmaker Orca", t84: "3, Smažte všechny soubory v adresáři plug-in", - t85: "4, znovu otevřete Orca Slicer a znovu nainstalujte zásuvný modul", + t85: "4, znovu otevřete Snapmaker Orca a znovu nainstalujte zásuvný modul", t86: "Zavřít", t87: "Uživatelská příručka", t88: "Odstranit", @@ -648,13 +537,12 @@ var LangText = { t104: "Název profilu", t105: "Autor profilu", t106: "Popis profilu", - t126: "Načtení probíhá……", orca1: "Edit Project Info", orca2: "no model information", }, fr_FR: { - t1: "Bienvenue sur Orca Slicer", - t2: "Orca Slicer sera configuré en plusieurs étapes. Commençons !", + t1: "Bienvenue sur Snapmaker Orca", + t2: "Snapmaker Orca sera configuré en plusieurs étapes. Commençons !", t3: "Accord d'utilisation", t4: "Décliner", t5: "Accepter", @@ -699,7 +587,7 @@ var LangText = { t50: "Se déconnecter", t52: "Passer", t53: "Rejoindre", - t54: "Dans la communauté de l'impression 3D, nous apprenons des succès et des échecs des uns et des autres pour ajuster nos propres paramètres et paramètres de découpage. Orca Slicer suit le même principe et utilise l'apprentissage automatique pour améliorer ses performances à partir des succès et des échecs du grand nombre d'impressions de nos utilisateurs. Nous formons Orca Slicer à être plus intelligent en leur fournissant les données du monde réel. Si vous le souhaitez, ce service accédera aux informations de vos journaux d'erreurs et de vos journaux d'utilisation, qui peuvent inclure des informations décrites dans ", + t54: "Dans la communauté de l'impression 3D, nous apprenons des succès et des échecs des uns et des autres pour ajuster nos propres paramètres et paramètres de découpage. Snapmaker Orca suit le même principe et utilise l'apprentissage automatique pour améliorer ses performances à partir des succès et des échecs du grand nombre d'impressions de nos utilisateurs. Nous formons Snapmaker Orca à être plus intelligent en leur fournissant les données du monde réel. Si vous le souhaitez, ce service accédera aux informations de vos journaux d'erreurs et de vos journaux d'utilisation, qui peuvent inclure des informations décrites dans ", t55: "Politique de confidentialité", t56: ". Nous ne collecterons aucune donnée personnelle par laquelle un individu peut être identifié directement ou indirectement, y compris, sans s'y limiter, les noms, adresses, informations de paiement ou numéros de téléphone. En activant ce service, vous acceptez ces conditions et la déclaration sur la politique de confidentialité.", t57: "", @@ -710,7 +598,7 @@ var LangText = { t62: "Autres", t63: "Après avoir changé de région, votre compte sera déconnecté. Veuillez vous reconnecter ensuite.", t64: "Plug-in Bambu Network", - t65: "Veuillez noter que ces plugins ne sont pas développés ou maintenus par OrcaSlicer. Ils doivent être utilisés à votre propre discrétion et à vos propres risques.", + t65: "Veuillez noter que ces plugins ne sont pas développés ou maintenus par Snapmaker Orca. Ils doivent être utilisés à votre propre discrétion et à vos propres risques.", t66: "Commande à distance complète", t67: "Diffusion en direct", t68: "Synchronisation des données utilisateur", @@ -728,9 +616,9 @@ var LangText = { t80: "Essayez les étapes suivantes :", t81: "1, Cliquez ", t82: " pour ouvrir le répertoire des plug-ins", - t83: "2, Fermez toutes les fenêtres de Orca Slicer", + t83: "2, Fermez toutes les fenêtres de Snapmaker Orca", t84: "3, Supprimez tous les fichiers dans le répertoire du plug-in", - t85: "4, Relancez Orca Slicer et réinstallez le plug-in.", + t85: "4, Relancez Snapmaker Orca et réinstallez le plug-in.", t86: "Fermer", t87: "Manuel d'utilisation", t88: "Supprimer", @@ -754,33 +642,32 @@ var LangText = { t109: "Filaments du système", t110: "Filaments personnalisés", t111: "Créer un nouveau filament", - t126: "Chargement en cours……", orca1: "Modifier les informations du projet", orca2: "pas d'information sur le modèle", wk1: "Démarrage rapide", - wk2: "Cet article présente l'utilisation la plus basique de Orca Slicer. Il guide les utilisateurs pour configurer le logiciel, créer des projets et effectuer la première tâche d'impression étape par étape.", + wk2: "Cet article présente l'utilisation la plus basique de Snapmaker Orca. Il guide les utilisateurs pour configurer le logiciel, créer des projets et effectuer la première tâche d'impression étape par étape.", wk3: "Workflow basé sur des projets", - wk4: "Orca Slicer met en avant un workflow de pointe pour véritablement réaliser un projet « tout en un ». Basé sur le format de projet 3MF grand public, il fournit une série de nouvelles fonctionnalités révolutionnaires, telles que la prise en charge de plusieurs plaques, un gestionnaire de ressources de projet et une vue d'assemblage/de pièce. Cela améliore considérablement l'efficacité des créateurs et des utilisateurs réguliers", + wk4: "Snapmaker Orca met en avant un workflow de pointe pour véritablement réaliser un projet « tout en un ». Basé sur le format de projet 3MF grand public, il fournit une série de nouvelles fonctionnalités révolutionnaires, telles que la prise en charge de plusieurs plaques, un gestionnaire de ressources de projet et une vue d'assemblage/de pièce. Cela améliore considérablement l'efficacité des créateurs et des utilisateurs réguliers", wk5: "Impression haute vitesse de qualité", - wk6: "Il est difficile d'imprimer à grande vitesse tout en maintenant une qualité élevée. Orca Slicer rend cela possible. « Arch Move » permet à la hotend de se déplacer en douceur et réduit les vibrations de la machine. Le refroidissement intelligent est basé sur des paramètres de refroidissement affinés pour chaque type de filament. Le « ralentissement automatique » pour les paroies en porte-à-faux permet d'éviter la déformation à grande vitesse.", + wk6: "Il est difficile d'imprimer à grande vitesse tout en maintenant une qualité élevée. Snapmaker Orca rend cela possible. « Arch Move » permet à la hotend de se déplacer en douceur et réduit les vibrations de la machine. Le refroidissement intelligent est basé sur des paramètres de refroidissement affinés pour chaque type de filament. Le « ralentissement automatique » pour les paroies en porte-à-faux permet d'éviter la déformation à grande vitesse.", wk7: "Impression multi-couleur", - wk8: "Orca Slicer fournit des outils de colorisation polyvalents pour créer un modèle coloré. Vous pouvez librement ajouter/supprimer des filaments dans un projet et coloriser votre modèle avec différents pinceaux. Avant l'impression, chaque filament sera automatiquement mappé sur un emplacement AMS, sans avoir besoin de modifier manuellement le placement de la bobine dans l'AMS.", + wk8: "Snapmaker Orca fournit des outils de colorisation polyvalents pour créer un modèle coloré. Vous pouvez librement ajouter/supprimer des filaments dans un projet et coloriser votre modèle avec différents pinceaux. Avant l'impression, chaque filament sera automatiquement mappé sur un emplacement AMS, sans avoir besoin de modifier manuellement le placement de la bobine dans l'AMS.", wk9: "Guide de réglage des paramètres de découpage", - wk10: "Les fonctionnalités de gestion des paramètres de Orca Slicer offrent un contrôle très flexible et puissant sur le processus de découpage. Cet article présente l'organisation des paramètres et fournit quelques compétences pour tirer pleinement parti de ces fonctionnalités.", + wk10: "Les fonctionnalités de gestion des paramètres de Snapmaker Orca offrent un contrôle très flexible et puissant sur le processus de découpage. Cet article présente l'organisation des paramètres et fournit quelques compétences pour tirer pleinement parti de ces fonctionnalités.", wk11: "Contrôle et surveillance à distance", - wk12: "Orca Slicer prend en charge l'envoi du travail d'impression à votre imprimante via le réseau WAN/LAN, contrôlant et surveillant chaque aspect de votre imprimante 3D et des travaux d'impression. Si vous avez plusieurs imprimantes, vous pouvez facilement basculer entre elles dans la liste des périphériques.", + wk12: "Snapmaker Orca prend en charge l'envoi du travail d'impression à votre imprimante via le réseau WAN/LAN, contrôlant et surveillant chaque aspect de votre imprimante 3D et des travaux d'impression. Si vous avez plusieurs imprimantes, vous pouvez facilement basculer entre elles dans la liste des périphériques.", wk13: "Format STEP", wk14: "Par rapport au format STL, le format STEP apporte des informations plus efficaces. Grâce à la grande précision de ce format, de nombreuses trajectoires d'extrusion peuvent être générées sous forme d'arcs. Il inclut également la relation d'assemblage de chaque pièce d'un modèle, qui peut être utilisée pour restaurer la vue d'assemblage après la coupe d'un modèle.", wk15: "Texte 3D", - wk16: "Avec l'outil Texte 3D, les utilisateurs peuvent facilement créer diverses formes de texte 3D dans le projet, ce qui rend le modèle plus personnalisé. Orca Slicer fournit des dizaines de polices et prend en charge les styles gras et italique pour donner au texte une plus grande flexibilité.", + wk16: "Avec l'outil Texte 3D, les utilisateurs peuvent facilement créer diverses formes de texte 3D dans le projet, ce qui rend le modèle plus personnalisé. Snapmaker Orca fournit des dizaines de polices et prend en charge les styles gras et italique pour donner au texte une plus grande flexibilité.", }, zh_CN: { - t1: "欢迎使用Orca Slicer", - t2: "Orca Slicer需要几步安装步骤,让我们开始吧!", + t1: "欢迎使用Snapmaker Orca", + t2: "Snapmaker Orca需要几步安装步骤,让我们开始吧!", t3: "用户使用协议", t4: "拒绝", t5: "同意", - t6: "帮助提升Orca Slicer性能", + t6: "帮助提升Snapmaker Orca性能", t7: "允许发送匿名数据", t8: "上一步", t9: "下一步", @@ -815,13 +702,16 @@ var LangText = { t38: "取消", t39: "确定", t40: "网络不通,请检查并稍后重试。", + t41: "网络连接终端,请检测是否与以下因素有关:", + t42: "1. 电脑防火墙拦截,建议关闭防火墙尝试连接;", + t43: "2. 设备网络终端,检测设备网络是否终端", t47: "请选择登录区域", t48: "亚太", t49: "中国", t50: "退出登录", t52: "忽略", t53: "同意", - t54: "在3D打印社区,我们从彼此的成功和失败中学习调整自己的切片参数和设置。Orca Slicer遵循同样的原则,通过机器学习的方式从大量用户打印的成功和失败中获取经验,从而改善打印性能。我们正在通过向Orca Slicer提供真实世界的数据来训练他们变得更聪明。如果您愿意,此服务将访问您的错误日志和使用日志中的信息,其中可能包括", + t54: "在3D打印社区,我们从彼此的成功和失败中学习调整自己的切片参数和设置。Snapmaker Orca遵循同样的原则,通过机器学习的方式从大量用户打印的成功和失败中获取经验,从而改善打印性能。我们正在通过向Snapmaker Orca提供真实世界的数据来训练他们变得更聪明。如果您愿意,此服务将访问您的错误日志和使用日志中的信息,其中可能包括", t55: "隐私政策", t56: "中描述的信息。我们不会收集任何可以直接或间接识别个人的个人数据,包括但不限于姓名、地址、支付信息或电话号码。启用此服务即表示您同意这些条款和有关隐私政策的声明。", t57: "", @@ -832,7 +722,7 @@ var LangText = { t62: "其他", t63: "切换区域后,你的账号会被登出。稍后请重新登录。", t64: "Bambu网络插件", - t65: "注意:这些插件不是由OrcaSlicer开发或维护的。使用它们需自担风险", + t65: "注意:这些插件不是由Snapmaker Orca开发或维护的。使用它们需自担风险", t66: "强大的远程控制功能", t67: "实时视频流", t68: "用户数据同步", @@ -850,9 +740,9 @@ var LangText = { t80: "请尝试如下步骤:", t81: "1, 点击", t82: "打开插件所在目录", - t83: "2, 关闭所有Orca Slicer", + t83: "2, 关闭所有Snapmaker Orca", t84: "3, 删除插件所在目录下的所有文件", - t85: "4, 重新启动Orca Slicer并尝试安装插件", + t85: "4, 重新启动Snapmaker Orca并尝试安装插件", t86: "关闭", t87: "使用引导", t88: "移除", @@ -880,33 +770,33 @@ var LangText = { t111: "新建", t112: "加入该计划", t113: "您可以随时更改您的偏好。", - t126: "正在加载……", + t114: "设备管理", wk1: "快速入门指南", - wk2: "本文介绍了Orca Slicer的最基本用法。它指导用户配置软件,创建项目,并逐步完成第一个打印任务。", + wk2: "本文介绍了Snapmaker Orca的最基本用法。它指导用户配置软件,创建项目,并逐步完成第一个打印任务。", wk3: "基于项目的工作流", - wk4: "Orca Slicer提出了领先的工作流程,真正实现了“一体化”项目。基于主流的3MF项目格式,它提供了一系列革命性的新功能,如支持多盘、项目资源管理器和装配/零件视图。它可以大幅提高模型创作者及普通用户的使用效率。", + wk4: "Snapmaker Orca提出了领先的工作流程,真正实现了“一体化”项目。基于主流的3MF项目格式,它提供了一系列革命性的新功能,如支持多盘、项目资源管理器和装配/零件视图。它可以大幅提高模型创作者及普通用户的使用效率。", wk5: "质量卓越的高速打印", - wk6: "在保持高质量的前提下进行高速打印是非常具有挑战性的。Orca Slicer让这一切发生。支持“圆弧移动”特性使工具头移动更加顺滑,有效减少机器振动。基于不同材料类型的精细标定过的冷却控制参数,使得冷却过程可以自动开展。在悬垂区域进行“自动减速”,可防止高速打印时在此区域的外观瑕疵。", + wk6: "在保持高质量的前提下进行高速打印是非常具有挑战性的。Snapmaker Orca让这一切发生。支持“圆弧移动”特性使工具头移动更加顺滑,有效减少机器振动。基于不同材料类型的精细标定过的冷却控制参数,使得冷却过程可以自动开展。在悬垂区域进行“自动减速”,可防止高速打印时在此区域的外观瑕疵。", wk7: "多色打印", - wk8: "Orca Slicer提供了多种着色工具来制作彩色模型。您可以在项目中自由添加/移除打印材料,并使用不同的笔刷为模型着色。开始打印时,打印任务中的各个材料将自动映射到匹配的AMS槽位,无需手动调整AMS中的料卷位置。", + wk8: "Snapmaker Orca提供了多种着色工具来制作彩色模型。您可以在项目中自由添加/移除打印材料,并使用不同的笔刷为模型着色。开始打印时,打印任务中的各个材料将自动映射到匹配的AMS槽位,无需手动调整AMS中的料卷位置。", wk9: "切片参数设置指南", - wk10: "Orca Slicer中的参数管理功能为切片过程提供了非常灵活和强大的控制。本文介绍了切片参数的组织分类和设置方法,并提供了一些使用技巧。", + wk10: "Snapmaker Orca中的参数管理功能为切片过程提供了非常灵活和强大的控制。本文介绍了切片参数的组织分类和设置方法,并提供了一些使用技巧。", wk11: "远程控制和监控", - wk12: "Orca Slicer支持通过WAN/LAN网络向打印机发送打印任务,控制和查看3D打印机和打印任务的各个方面。如果您有多台打印机,还可以在设备列表中轻松切换。", + wk12: "Snapmaker Orca支持通过WAN/LAN网络向打印机发送打印任务,控制和查看3D打印机和打印任务的各个方面。如果您有多台打印机,还可以在设备列表中轻松切换。", wk13: "STEP格式", wk14: "与STL相比,STEP带来了更多有效的信息。由于STEP的高精度,切片时可以生成更多的圆弧路径。STEP还包括模型每个零件的装配关系,可分割模型后恢复装配视图。", wk15: "3D文本", - wk16: "使用3D文本工具,用户可以轻松地在项目中创建各种3D文本形状,使模型更加个性化。Orca Slicer提供了数十种字体,并支持粗体和斜体样式,使文本具有更大的灵活性。", + wk16: "使用3D文本工具,用户可以轻松地在项目中创建各种3D文本形状,使模型更加个性化。Snapmaker Orca提供了数十种字体,并支持粗体和斜体样式,使文本具有更大的灵活性。", orca1: "编辑项目信息", orca2: "该模型没有相关信息", }, zh_TW: { - t1: "歡迎使用 Orca Slicer", - t2: "Orca Slicer 需要幾步安裝步驟,讓我們開始吧!", + t1: "歡迎使用 Snapmaker Orca", + t2: "Snapmaker Orca 需要幾步安裝步驟,讓我們開始吧!", t3: "使用者協議", t4: "拒絕", t5: "同意", - t6: "幫助提升 Orca Slicer 性能", + t6: "幫助提升 Snapmaker Orca 性能", t7: "允許傳送匿名數據", t8: "上一步", t9: "下一步", @@ -947,7 +837,7 @@ var LangText = { t50: "登出", t52: "忽略", t53: "同意", - t54: "在3D列印社區,我們從彼此的成功和失敗中學習調整自己的切片參數和設置。Orca Slicer 遵循同樣的原則,透過機器學習的方式從大量用戶列印的成功和失敗中獲取經驗,從而改善列印性能。我們正在通過向 Orca Slicer 提供真實世界的數據來訓練他們變得更聰明。如果您願意,此服務將訪問您的錯誤日誌和使用日誌中的資訊,其中可能包括", + t54: "在3D列印社區,我們從彼此的成功和失敗中學習調整自己的切片參數和設置。Snapmaker Orca 遵循同樣的原則,透過機器學習的方式從大量用戶列印的成功和失敗中獲取經驗,從而改善列印性能。我們正在通過向 Snapmaker Orca 提供真實世界的數據來訓練他們變得更聰明。如果您願意,此服務將訪問您的錯誤日誌和使用日誌中的資訊,其中可能包括", t55: "隱私政策", t56: "中描述的資訊。我們不會收集任何可以直接或間接識別個人的個人數據,包括但不限於姓名、地址、支付資訊或電話號碼。啟用此服務即表示您同意這些條款和有關隱私政策的聲明。", t57: "", @@ -958,7 +848,7 @@ var LangText = { t62: "其他", t63: "切換區域後,你的帳號會被登出。稍後請重新登入。", t64: "Bambu網路插件", - t65: "Please be aware that these plugins are not developed or maintained by OrcaSlicer. They should be used at your own discretion and risk.", + t65: "Please be aware that these plugins are not developed or maintained by Snapmaker Orca. They should be used at your own discretion and risk.", t66: "強大的遠端控制功能", t67: "即時影片串流", t68: "使用者數據同步", @@ -976,9 +866,9 @@ var LangText = { t80: "請嘗試如下步驟:", t81: "1, 點擊", t82: "打開插件所在目錄", - t83: "2, 關閉所有 Orca Slicer", + t83: "2, 關閉所有 Snapmaker Orca", t84: "3, 刪除插件所在目錄下的所有文件", - t85: "4, 重新啟動 Orca Slicer 並嘗試安裝插件", + t85: "4, 重新啟動 Snapmaker Orca 並嘗試安裝插件", t86: "關閉", t87: "使用引導", t88: "移除", @@ -989,25 +879,25 @@ var LangText = { orca1: "Edit Project Info", orca2: "no model information", wk1: "快速入門指南", - wk2: "本文介紹了 Orca Slicer 的最基本用法。它指導用戶配置軟體,創建項目,並逐步完成第一個列印任務。", + wk2: "本文介紹了 Snapmaker Orca 的最基本用法。它指導用戶配置軟體,創建項目,並逐步完成第一個列印任務。", wk3: "基於項目的工作流", - wk4: "Orca Slicer 提出了領先的工作流程,真正實現了“一體化”項目。基於主流的3MF項目格式,它提供了一系列革命性的新功能,如支持多盤、項目資源管理器和裝配/零件視圖。它可以大幅提高模型創作者及普通用戶的使用效率。", + wk4: "Snapmaker Orca 提出了領先的工作流程,真正實現了“一體化”項目。基於主流的3MF項目格式,它提供了一系列革命性的新功能,如支持多盤、項目資源管理器和裝配/零件視圖。它可以大幅提高模型創作者及普通用戶的使用效率。", wk5: "質量卓越的高速列印", - wk6: "在保持高品質的前提下進行高速列印是非常具有挑戰性的。Orca Slicer 讓這一切發生。支持“圓弧移動”特性使工具頭移動更加順滑,有效減少機器振動。基於不同線材類型的精細標定過的冷卻控制參數,使得冷卻過程可以自動開展。在懸垂區域進行“自動減速”,可防止高速列印時在此區域的外觀瑕疵。", + wk6: "在保持高品質的前提下進行高速列印是非常具有挑戰性的。Snapmaker Orca 讓這一切發生。支持“圓弧移動”特性使工具頭移動更加順滑,有效減少機器振動。基於不同線材類型的精細標定過的冷卻控制參數,使得冷卻過程可以自動開展。在懸垂區域進行“自動減速”,可防止高速列印時在此區域的外觀瑕疵。", wk7: "多色列印", - wk8: "Orca Slicer 提供了多種著色工具來製作彩色模型。您可以在項目中自由添加/移除列印材料,並使用不同的筆刷為模型著色。開始列印時,列印任務中的各個線材將自動映射對應到 AMS 槽位,無需手動調整 AMS 中的線材位置。", + wk8: "Snapmaker Orca 提供了多種著色工具來製作彩色模型。您可以在項目中自由添加/移除列印材料,並使用不同的筆刷為模型著色。開始列印時,列印任務中的各個線材將自動映射對應到 AMS 槽位,無需手動調整 AMS 中的線材位置。", wk9: "切片參數設置指南", - wk10: "Orca Slicer 中的參數管理功能為切片過程提供了非常靈活和強大的控制。本文介紹了切片參數的組織分類和設置方法,並提供了一些使用技巧。", + wk10: "Snapmaker Orca 中的參數管理功能為切片過程提供了非常靈活和強大的控制。本文介紹了切片參數的組織分類和設置方法,並提供了一些使用技巧。", wk11: "遠端控制和監控", - wk12: "Orca Slicer 支持透過無線網路/區域網路向3D列印機發送列印任務,控制和查看3D列印機和列印任務的各個方面。如果您有多台3D列印機,還可以在設備清單中輕鬆切換。", + wk12: "Snapmaker Orca 支持透過無線網路/區域網路向3D列印機發送列印任務,控制和查看3D列印機和列印任務的各個方面。如果您有多台3D列印機,還可以在設備清單中輕鬆切換。", wk13: "STEP格式", wk14: "與 STL 相比,STEP 帶來了更多有效的資訊。由於 STEP 的高精度,切片時可以生成更多的圓弧路徑。STEP 還包括模型每個零件的組裝關係,可分割模型後恢復裝配視圖。", wk15: "3D文本", - wk16: "使用3D文字工具,使用者可以輕鬆地在項目中建立各種3D文字形狀,使模型更加個性化。Orca Slicer 提供了數十種字體,並支援粗體和斜體樣式,使文字具有更大的靈活性。", + wk16: "使用3D文字工具,使用者可以輕鬆地在項目中建立各種3D文字形狀,使模型更加個性化。Snapmaker Orca 提供了數十種字體,並支援粗體和斜體樣式,使文字具有更大的靈活性。", }, ru_RU: { - t1: "Приветствуем в Orca Slicer!", - t2: "Для настройка Orca Slicer необходимо пройти несколько этапов. Давайте начнём!", + t1: "Приветствуем в Snapmaker Orca!", + t2: "Для настройка Snapmaker Orca необходимо пройти несколько этапов. Давайте начнём!", t3: "Пользовательское соглашение", t4: "Отказаться", t5: "Принять", @@ -1052,7 +942,7 @@ var LangText = { t50: "Выйти", t52: "Пропустить", t53: "Войти", - t54: "В сообществе 3D-печатников для выявления наилучших параметров нарезки и улучшения печати мы учимся на успехах и неудачах друг друга. Orca Slicer следует тому же принципу и использует машинное обучение для улучшения своей работы на основе успешных и неудачных печатей наших пользователей. Мы обучаем Orca Slicer быть умнее на основе реальных данных. По вашему согласию эта служба получит доступ к вашим журналам ошибок и журналам использования, в которых содержатся сведения, описанные в ", + t54: "В сообществе 3D-печатников для выявления наилучших параметров нарезки и улучшения печати мы учимся на успехах и неудачах друг друга. Snapmaker Orca следует тому же принципу и использует машинное обучение для улучшения своей работы на основе успешных и неудачных печатей наших пользователей. Мы обучаем Snapmaker Orca быть умнее на основе реальных данных. По вашему согласию эта служба получит доступ к вашим журналам ошибок и журналам использования, в которых содержатся сведения, описанные в ", t55: "политике конфиденциальности", t56: ". Мы не собираем никаких личных данных, которые могут прямо или косвенно идентифицировать отдельного человека, включая, помимо прочего, имена, адреса, платежную информацию или номера телефонов. Соглашаясь с включением данной службы, вы соглашаетесь с этими условиями и заявлением о политике конфиденциальности.", t57: "", @@ -1081,9 +971,9 @@ var LangText = { t80: "Попробуйте выполнить следующие действия:", t81: "1, Нажмите ", t82: " чтобы открыть папку плагинов", - t83: "2, Закрыть все открытые Orca Slicer", + t83: "2, Закрыть все открытые Snapmaker Orca", t84: "3, Удалить все файлы в папке плагина", - t85: "4, Откройте Orca Slicer и снова установите подключаемый модуль.", + t85: "4, Откройте Snapmaker Orca и снова установите подключаемый модуль.", t86: "Закрыть", t87: "Инструкции", t88: "Удалить", @@ -1111,16 +1001,15 @@ var LangText = { t111: "Создать новый", t112: "Присоединяйтесь к программе", t113: "Вы можете изменить свой выбор в любое время.", - t126: "Загрузка идёт……", orca1: "Редактировать информацию о проекте", orca2: "Информации о модели отсутствует", orca3: "Режим конфиденциальности", orca4: "Это остановит передачу данных в облачные сервисы Bambu. Пользователи, которые не используют принтеры Bambu Lab или используют режим «Только LAN», могут безопасно включить эту функцию.", - orca5: "Включить режим конфиденциальности", + orca5: "Включить режим конфиденциальности" }, ko_KR: { - t1: "Orca Slicer에 오신 것을 환영합니다", - t2: "Orca Slicer는 여러 단계로 설정됩니다. 시작!", + t1: "Snapmaker Orca에 오신 것을 환영합니다", + t2: "Snapmaker Orca는 여러 단계로 설정됩니다. 시작!", t3: "사용자 약관", t4: "거부", t5: "동의", @@ -1165,7 +1054,7 @@ var LangText = { t50: "로그 아웃", t52: "건너뛰기", t53: "가입", - t54: "3D 프린팅 커뮤니티에서 우리는 각자의 슬라이싱 매개변수와 설정을 조정하는 과정에서 서로의 성공과 실패를 통해 배웁니다. Orca Slicer는 동일한 원칙을 따르며 기계 학습을 사용하여 사용자의 방대한 출력물의 성공과 실패를 통해 성능을 향상시킵니다. 우리는 실제 데이터를 제공하여 Orca Slicer가 더욱 똑똑해지도록 교육하고 있습니다. 귀하가 원할 경우 이 서비스는 오류 로그 및 사용 로그의 정보에 액세스합니다. 여기에는 다음에 설명된 정보가 포함될 수 있습니다.", + t54: "3D 프린팅 커뮤니티에서 우리는 각자의 슬라이싱 매개변수와 설정을 조정하는 과정에서 서로의 성공과 실패를 통해 배웁니다. Snapmaker Orca는 동일한 원칙을 따르며 기계 학습을 사용하여 사용자의 방대한 출력물의 성공과 실패를 통해 성능을 향상시킵니다. 우리는 실제 데이터를 제공하여 Snapmaker Orca가 더욱 똑똑해지도록 교육하고 있습니다. 귀하가 원할 경우 이 서비스는 오류 로그 및 사용 로그의 정보에 액세스합니다. 여기에는 다음에 설명된 정보가 포함될 수 있습니다.", t55: "개인 정보 정책", t56: ". 당사는 이름, 주소, 결제 정보 또는 전화번호를 포함하되 이에 국한되지 않고 개인을 직간접적으로 식별할 수 있는 개인 데이터를 수집하지 않습니다. 이 서비스를 활성화함으로써 귀하는 본 약관과 개인정보 보호정책에 대한 설명에 동의하게 됩니다.", t57: "", @@ -1176,7 +1065,7 @@ var LangText = { t62: "다른 지역", t63: "지역을 변경하면 계정이 로그아웃됩니다. 나중에 다시 로그인해 주세요.", t64: "Bambu 네트워크 플러그인", - t65: "Please be aware that these plugins are not developed or maintained by OrcaSlicer. They should be used at your own discretion and risk.", + t65: "Please be aware that these plugins are not developed or maintained by Snapmaker Orca. They should be used at your own discretion and risk.", t66: "전체 원격 제어", t67: "라이브뷰 스트리밍", t68: "사용자 데이터 동기화", @@ -1194,9 +1083,9 @@ var LangText = { t80: "다음 단계를 시도해 보세요:", t81: "1, 클릭 ", t82: " 하여 플러그인 디렉토리를 엽니다.", - t83: "2, 열려 있는 모든 Orca Slicer를 닫습니다.", + t83: "2, 열려 있는 모든 Snapmaker Orca를 닫습니다.", t84: "3, 플러그인 디렉터리 아래의 모든 파일 삭제합니다", - t85: "4, Orca Slicer를 다시 열고 플러그인을 다시 설치하세요.", + t85: "4, Snapmaker Orca를 다시 열고 플러그인을 다시 설치하세요.", t86: "닫기", t87: "사용자 메뉴얼", t88: "제거", @@ -1206,12 +1095,11 @@ var LangText = { t92: "Bambu Christmas Cabin", t93: "프린터 연결", t94: "장치를 보려면 프린터 연결을 설정하세요.", - t126: "로딩 중……", orca1: "Edit Project Info", orca2: "no model information", }, tr_TR: { - t1: "Orca Slicer'a hoş geldiniz", + t1: "Snapmaker Orca'a hoş geldiniz", t2: "Orca Dilimleyici birkaç adımda kurulacaktır. Hadi başlayalım!", t3: "Kullanıcı Sözleşmesi", t4: "Reddet", @@ -1257,7 +1145,7 @@ var LangText = { t50: "Çıkış Yap", t52: "Atla", t53: "Katıl", - t54: "3D Baskı topluluğunda, kendi dilimleme parametrelerimizi ve ayarlarımızı düzenlerken birbirimizin başarılarından ve başarısızlıklarından öğreniyoruz. Orca Slicer da aynı prensibi takip ediyor ve kullanıcılarımızın yaptığı çok sayıda baskının başarı ve başarısızlıklarından performansını artırmak için makine öğrenimini kullanıyor. Orca Slicer'ı gerçek dünya verileriyle besleyerek daha akıllı olması için eğitiyoruz. İsterseniz bu hizmet, hata günlüklerinizden ve kullanım günlüklerinizden, burada açıklanan bilgileri de içerebilecek bilgilere erişecektir. ", + t54: "3D Baskı topluluğunda, kendi dilimleme parametrelerimizi ve ayarlarımızı düzenlerken birbirimizin başarılarından ve başarısızlıklarından öğreniyoruz. Snapmaker Orca da aynı prensibi takip ediyor ve kullanıcılarımızın yaptığı çok sayıda baskının başarı ve başarısızlıklarından performansını artırmak için makine öğrenimini kullanıyor. Snapmaker Orca'ı gerçek dünya verileriyle besleyerek daha akıllı olması için eğitiyoruz. İsterseniz bu hizmet, hata günlüklerinizden ve kullanım günlüklerinizden, burada açıklanan bilgileri de içerebilecek bilgilere erişecektir. ", t55: "Gizlilik Politikası", t56: ". İsimler, adresler, ödeme bilgileri veya telefon numaraları dahil ancak bunlarla sınırlı olmamak üzere, bir bireyin doğrudan veya dolaylı olarak tanımlanmasını sağlayacak hiçbir Kişisel Veri toplamayacağız. Bu hizmeti etkinleştirerek bu şartları ve Gizlilik Politikasına ilişkin beyanı kabul etmiş olursunuz.", t57: "", @@ -1268,7 +1156,7 @@ var LangText = { t62: "Diğerleri", t63: "Bölgeyi değiştirdikten sonra hesabınızdan çıkış yapılacaktır. Lütfen daha sonra tekrar giriş yapın.", t64: "Bambu Ağı eklentisi", - t65: "Lütfen bu eklentilerin OrcaSlicer tarafından geliştirilmediğini veya bakımının yapılmadığını unutmayın. Kendi takdirinize ve riskinize göre kullanılmalıdırlar.", + t65: "Lütfen bu eklentilerin Snapmaker Orca tarafından geliştirilmediğini veya bakımının yapılmadığını unutmayın. Kendi takdirinize ve riskinize göre kullanılmalıdırlar.", t66: "Tam uzaktan kontrol", t67: "Canlı görüntü akışı", t68: "Kullanıcı veri senkronizasyonu", @@ -1286,9 +1174,9 @@ var LangText = { t80: "Aşağıdaki adımları deneyin:", t81: "1, Eklenti ", t82: " dizinini açmak için tıklayın", - t83: "2, Tüm açık Orca slicerı kapatın", + t83: "2, Tüm açık Snapmaker Orcaı kapatın", t84: "3, Eklenti dizini altındaki tüm dosyaları silin", - t85: "4, Orca Slicer'ı yeniden açın ve eklentiyi tekrar yükleyin", + t85: "4, Snapmaker Orca'ı yeniden açın ve eklentiyi tekrar yükleyin", t86: "Kapat", t87: "Kullanım kılavuzu", t88: "Kaldır", @@ -1316,16 +1204,12 @@ var LangText = { t111: "Yeni Oluştur", t112: "Programa Katılın", t113: "Tercihinizi istediğiniz zaman değiştirebilirsiniz.", - t126: "Yükleme devam ediyor……", orca1: "Proje Bilgilerini Düzenle", orca2: "model bilgisi yok", - orca3: "Gizli Mod", - orca4: "Bu, Bambu'nun bulut hizmetlerine veri iletimini durdurur. BBL makinelerini kullanmayan veya yalnızca LAN modunu kullanan kullanıcılar bu işlevi güvenle açabilir.", - orca5: "Gizli Modu etkinleştirin.", }, pl_PL: { - t1: "Witamy w Orca Slicer", - t2: "Orca Slicer zostanie skonfigurowany w kilku krokach. Zacznijmy!", + t1: "Witamy w Snapmaker Orca", + t2: "Snapmaker Orca zostanie skonfigurowany w kilku krokach. Zacznijmy!", t3: "Umowa użytkownika", t4: "Nie zgadzam się", t5: "Zgadzam się", @@ -1370,7 +1254,7 @@ var LangText = { t50: "Wyloguj", t52: "Pomiń", t53: "Dołącz", - t54: "W społeczności druku 3D uczymy się od sukcesów i porażek innych, aby dostosować nasze własne parametry i ustawienia krojenia. Orca Slicer podąża tą samą zasadą i wykorzystuje uczenie maszynowe do poprawy swojej wydajności na podstawie sukcesów i porażek dużej liczby wydruków naszych użytkowników. Szkolimy Orca Slicer, aby był mądrzejszy, dostarczając mu danych z rzeczywistego świata. Jeśli chcesz, ta usługa uzyska dostęp do informacji z Twoich logów błędów i logów użytkowania, które mogą zawierać informacje opisane w ", + t54: "W społeczności druku 3D uczymy się od sukcesów i porażek innych, aby dostosować nasze własne parametry i ustawienia krojenia. Snapmaker Orca podąża tą samą zasadą i wykorzystuje uczenie maszynowe do poprawy swojej wydajności na podstawie sukcesów i porażek dużej liczby wydruków naszych użytkowników. Szkolimy Snapmaker Orca, aby był mądrzejszy, dostarczając mu danych z rzeczywistego świata. Jeśli chcesz, ta usługa uzyska dostęp do informacji z Twoich logów błędów i logów użytkowania, które mogą zawierać informacje opisane w ", t55: "Polityka Prywatności", t56: ". Nie będziemy zbierać żadnych Danych Osobowych, przez które można bezpośrednio lub pośrednio zidentyfikować osobę, w tym bez ograniczeń nazwisk, adresów, informacji o płatnościach lub numerów telefonów. Aktywując tę usługę, zgadzasz się na te warunki i oświadczenie dotyczące Polityki Prywatności.", t57: "", @@ -1381,7 +1265,7 @@ var LangText = { t62: "Inne", t63: "Po zmianie regionu, zostaniesz wylogowany z konta. Proszę zaloguj się ponownie później.", t64: "Wtyczka Bambu Network", - t65: "Proszę mieć świadomość, że te wtyczki nie są rozwijane ani utrzymywane przez OrcaSlicer. Powinny być używane na własne ryzyko i z rozwagą.", + t65: "Proszę mieć świadomość, że te wtyczki nie są rozwijane ani utrzymywane przez Snapmaker Orca. Powinny być używane na własne ryzyko i z rozwagą.", t66: "Pełna kontrola zdalna", t67: "Transmisja na żywo", t68: "Synchronizacja danych użytkownika", @@ -1399,9 +1283,9 @@ var LangText = { t80: "Spróbuj następujących kroków:", t81: "1, Kliknij ", t82: " aby otworzyć katalog wtyczek", - t83: "2, Zamknij wszystkie otwarte Orca Slicer", + t83: "2, Zamknij wszystkie otwarte Snapmaker Orca", t84: "3, Usuń wszystkie pliki z katalogu wtyczek", - t85: "4, Ponownie otwórz Orca Slicer i zainstaluj wtyczkę ponownie", + t85: "4, Ponownie otwórz Snapmaker Orca i zainstaluj wtyczkę ponownie", t86: "Zamknij", t87: "Instrukcja użytkownika", t88: "Usuń", @@ -1429,16 +1313,15 @@ var LangText = { t111: "Utwórz nowy", t112: "Dołącz do programu", t113: "Możesz zmienić swój wybór w preferencjach w dowolnym momencie.", - t126: "Ładowanie trwa……", orca1: "Edytuj informacje o projekcie", orca2: "brak informacji o modelu", - orca3: "Tryb «Niewidzialny»", + orca3: "Tryb «Niewidzialny»", orca4: "To wyłączy przesyłanie danych do usług chmurowych Bambu. Użytkownicy, którzy nie korzystają z maszyn BBL lub używają tylko trybu LAN, mogą bez obaw włączyć tę opcję.", orca5: "Włącz tryb «Niewidzialny»", }, pt_BR: { - t1: "Bem-vindo ao Orca Slicer", - t2: "Orca Slicer será configurado em várias etapas. Vamos começar!", + t1: "Bem-vindo ao Snapmaker Orca", + t2: "Snapmaker Orca será configurado em algumas etapas. Vamos começar!", t3: "Termos de Uso", t4: "Discordo", t5: "Concordo", @@ -1483,7 +1366,7 @@ var LangText = { t50: "Desconectar", t52: "Pular", t53: "Juntar", - t54: "Na comunidade de Impressão 3D, aprendemos com os sucessos e falhas uns dos outros para ajustar nossos próprios parâmetros e configurações de fatiamento. O Orca Slicer segue o mesmo princípio e utiliza aprendizado de máquina para melhorar seu desempenho com base nos sucessos e falhas de um grande número de impressões realizadas por nossos usuários. Estamos treinando o Orca Slicer para ser mais inteligente, alimentando-o com dados do mundo real. Se você concordar, este serviço acessará informações de seus registros de erros e registros de uso, que podem incluir informações descritas em…", + t54: "Na comunidade de Impressão 3D, aprendemos com os sucessos e falhas uns dos outros para ajustar nossos próprios parâmetros e configurações de fatiamento. O Snapmaker Orca segue o mesmo princípio e utiliza aprendizado de máquina para melhorar seu desempenho com base nos sucessos e falhas de um grande número de impressões realizadas por nossos usuários. Estamos treinando o Snapmaker Orca para ser mais inteligente, alimentando-o com dados do mundo real. Se você concordar, este serviço acessará informações de seus registros de erros e registros de uso, que podem incluir informações descritas em…", t55: "Política de Privacidade", t56: ". Não coletaremos nenhum dado pessoal pelo qual um indivíduo possa ser identificado diretamente ou indiretamente, incluindo, sem limitação, nomes, endereços, informações de pagamento ou números de telefone. Ao habilitar este serviço, você concorda com estes termos e com a declaração sobre a Política de Privacidade.", t57: "", @@ -1494,15 +1377,15 @@ var LangText = { t62: "Outras", t63: "Após alterar sua região, sua conta será desconectada. Por favor faça login novamente mais tarde.", t64: "Plugins Proprietários", - t65: "Por favor seja cuidadoso estes plugins não são desenvolvidos ou mantidos por OrcaSlicer. Eles devem ser usados por sua conta e risco.", + t65: "Por favor seja cuidadoso estes plugins não são desenvolvidos ou mantidos por Snapmaker Orca. Eles devem ser usados por sua conta e risco.", t66: "Controle remoto total", t67: "Transmissão Ao Vivo", t68: "Sincronização de Dados do Usuário", t69: "Instalar Bambu Network plug-in", t70: "", t71: "Baixando", - t72: "Falha baixando", - t73: "Instalação concluída.", + t72: "Baixando falhou", + t73: "Instalação concluida.", t74: "Reiniciar", t75: "Algumass fabricantes de impressoras exigem plugins proprietários para comunicação com suas impressoras. Se você utiliza tais impressoras, selecione o plug-in correspondente.", t76: "Bambu Network plug-in não detectado. Clique ", @@ -1512,9 +1395,9 @@ var LangText = { t80: "Tente os seguintes passos:", t81: "1, Clique ", t82: " para abrir a pasta do plug-in", - t83: "2, Feche totalmente o Orca Slicer", + t83: "2, Feche totalmente o Snapmaker Orca", t84: "3, Delete todos os arquivos na pasta do plug-in", - t85: "4, Reabra o Orca Slicer e instale o plug-in novamente", + t85: "4, Reabra o Snapmaker Orca e instale o plug-in novamente", t86: "Fechar", t87: "Manual de Usuário", t88: "Remover", @@ -1542,124 +1425,8 @@ var LangText = { t111: "Criar Novo", t112: "Junte-se ao Programa", t113: "Você pode alterar sua escolha nas Preferências a qualquer momento", - t126: "Carregamento em andamento……", orca1: "Editar Info do Projeto", orca2: "Sem informação do modelo", - orca3: "Modo Furtivo", - orca4: "Isso interrompe a transmissão de dados para os serviços de nuvem da Bambu. Usuários que não usam máquinas BBL ou usam somente o modo LAN podem ativar essa função com segurança.", - orca5: "Habilita Modo Furtivo.", - }, - lt: { - t1: "Pasisveikinkite su Orca Slicer", - t2: "Orca Slicer bus nustatyta per kelis žingsnius. Pradėkime!", - t3: "Naudotojo sutartis", - t4: "Nesutinku", - t5: "Sutinku", - t6: "Maloniai prašome jūsų pagalbos, kad pagerintume visų spausdinimą.
Prisijunkite prie mūsų klientų patirties gerinimo programos", - t7: "Prisijunkite prie mūsų klientų patirties gerinimo programos", - t8: "Atgal", - t9: "Pirmyn", - t10: "Spausdintuvo pasirinkimas", - t11: "Visi", - t12: "Išvalyti visus", - t13: "mm purkštukas", - t14: "Gijos pasirinkimas", - t15: "Spausdintuvas", - t16: "Gijos tipas", - t17: "Gamintojas", - t18: "klaida", - t19: "Turi būti pasirinkta bent viena gija.", - t20: "Ar norite naudoti numatytąją giją?", - t21: "taip", - t22: "ne", - t23: "Išleidimo pastabos", - t24: "Pradėti", - t25: "Pabaigti", - t26: "Prisijungti", - t27: "Prisiregistruoti", - t28: "Naujausi", - t29: "Pirkti", - t30: "Rankinis", - t31: "Naujas projektas", - t32: "Sukurti naują projektą", - t33: "Atverti projektą", - t34: "Prieigos taškas", - t35: "Neseniai atidaryti", - t36: "gerai", - t37: "Turi būti pasirinktas bent vienas spausdintuvas.", - t38: "Atšaukti", - t39: "Patvirtinti", - t40: "Tinklas atjungtas, patikrinkite ir bandykite vėliau.", - t47: "Pasirinkite prisijungimo regioną", - t48: "Azija-Ramusis vandenynas", - t49: "Kinija", - t50: "Atsijungti", - t52: "Praleisti", - t53: "Prisijungti", - t54: "3D spausdinimo bendruomenėje mokomės vieni iš kitų sėkmių ir nesėkmių, kad galėtume pritaikyti savo pjaustymo parametrus ir nustatymus. Orca Slicer vadovaujasi tuo pačiu principu ir naudoja mašininį mokymąsi, kad pagerintų savo veikimą, remdamasi daugybės mūsų naudotojų atspaudų sėkmėmis ir nesėkmėmis. Maitindami Orca Slicer realaus pasaulio duomenimis, mokome ją būti protingesne. Jei pageidaujate, ši paslauga pasieks informaciją iš jūsų klaidų žurnalų ir naudojimo žurnalų, į kuriuos gali būti įtraukta informacija, aprašyta ", - t55: "privatumo politikoje", - t56: ". Nerinksime jokių asmens duomenų, pagal kuriuos galima tiesiogiai ar netiesiogiai nustatyti asmens tapatybę, įskaitant, bet neapsiribojant vardus, adresus, mokėjimo informaciją ar telefono numerius. Įjungdami šią paslaugą sutinkate su šiomis sąlygomis ir privatumo politikos nuostatomis.", - t57: "", - t58: "", - t59: ".", - t60: "Europa", - t61: "Šiaurės Amerika", - t62: "Kiti", - t63: "Pakeitus regioną, jūsų paskyra bus išregistruota. Vėliau vėl prisijunkite.", - t64: "Patentuoti papildiniai", - t65: "Atkreipkite dėmesį, kad OrcaSlicer šių papildinių nesukuria ir neprižiūri. Juos turėtumėte naudoti savo nuožiūra ir rizika.", - t66: "Pilnas nuotolinis valdymas", - t67: "Tiesioginė transliacija", - t68: "Naudotojo duomenų sinchronizavimas", - t69: "Įdiegti Bambu tinklo papildinį", - t70: "", - t71: "Atsisiunčiama", - t72: "Nepavyko atsisiųsti", - t73: "Diegimas sėkmingas.", - t74: "Paleisti iš naujo", - t75: "Kai kurie spausdintuvų gamintojai reikalauja patentuotų priedų, kad būtų galima bendrauti su jų spausdintuvais. Jei naudojate tokius spausdintuvus, pasirinkite atitinkamą įskiepį.", - t76: "Neaptiktas Bambu tinklo papildinys. Spustelėkite ", - t77: "čia", - t78: " jo diegimui.", - t79: "Nepavyko įdiegti papildinio. ", - t80: "Išbandykite šiuos žingsnius:", - t81: "1, Spustelkite ", - t82: " atidaryti papildinių katalogą", - t83: "2, Uždarykite visas veikiančias Orca Slicer programas", - t84: "3, Ištrinkite visus failus iš papildinių katalogo", - t85: "4, Iš naujo atverkite OrcaSlicer ir iš naujo įdiekite papildinį", - t86: "Užverti", - t87: "Naudotojo vadovas", - t88: "Pašalinti", - t89: "Atidaryti katalogą, kuriame yra", - t90: "3D modelis", - t91: "Atsisiųsti 3D modelius", - t92: "Sukurta", - t93: "Perkurta", - t94: "Pasidalinta", - t95: "Modelio informacija", - t96: "Priedai", - t97: "Profilio informacija", - t98: "Modelio pavadinimas", - t100: "Modelio aprašymas", - t101: "BOM", - t102: "Surinkimo vadovas", - t103: "Kita", - t104: "Profilio pavadinimas", - t105: "Profilio autorius", - t106: "Profilio aprašymas", - t107: "Modeliai internete", - t108: "DAUGIAU", - t109: "Sistemos gijos", - t110: "Pasirinktinės gijos", - t111: "Sukurti naują", - t112: "Prisijungti prie programos", - t113: "Savo pasirinkimą galite bet kada pakeisti.", - orca1: "Redaguoti projekto informaciją", - orca2: "nėra informacijos apie modelį", - orca3: "Slaptas režimas", - orca4: "Tai sustabdo duomenų perdavimą į Bambu debesijos paslaugas. Vartotojai, kurie nenaudoja BBL mašinų arba naudoja tik LAN režimą, gali drąsiai įjungti šią funkciją.", - orca5: "Įjungti slaptą režimą.", }, }; diff --git a/resources/web/flutter_web/assets/AssetManifest.bin b/resources/web/flutter_web/assets/AssetManifest.bin new file mode 100644 index 0000000000..e7b1d35ab0 --- /dev/null +++ b/resources/web/flutter_web/assets/AssetManifest.bin @@ -0,0 +1 @@ + y*assets/files/accountDeletionAgreement.json  asset*assets/files/accountDeletionAgreement.json,assets/files/accountDeletionAgreementZh.json  asset,assets/files/accountDeletionAgreementZh.jsonassets/files/deviceError.json  assetassets/files/deviceError.json*assets/fonts/HarmonyOS_Sans_SC_Regular.ttf  asset*assets/fonts/HarmonyOS_Sans_SC_Regular.ttf$assets/fonts/NanumGothic-Regular.ttf  asset$assets/fonts/NanumGothic-Regular.ttfassets/i10n/en.json  assetassets/i10n/en.jsonassets/i10n/zh-CN.json  assetassets/i10n/zh-CN.jsonassets/images/3dprinter.png  assetassets/images/3dprinter.pngassets/images/IpInputGuide.webp  assetassets/images/IpInputGuide.webpassets/images/bindPrinter.png  assetassets/images/bindPrinter.png assets/images/controlDefault.png  asset assets/images/controlDefault.pngassets/images/defaultEmpty.png  assetassets/images/defaultEmpty.png"assets/images/deviceAuthorized.png  asset"assets/images/deviceAuthorized.png#assets/images/deviceAuthorizing.png  asset#assets/images/deviceAuthorizing.png'assets/images/deviceDisplayDefault.webp  asset'assets/images/deviceDisplayDefault.webp&assets/images/deviceInvalidVersion.png  asset&assets/images/deviceInvalidVersion.png"assets/images/deviceNoNetwork.webp  asset"assets/images/deviceNoNetwork.webp#assets/images/deviceNoResponse.webp  asset#assets/images/deviceNoResponse.webp$assets/images/deviceNotConnected.png  asset$assets/images/deviceNotConnected.png assets/images/deviceRejected.png  asset assets/images/deviceRejected.pngassets/images/expectation.webp  assetassets/images/expectation.webp!assets/images/filamentDefault.png  asset!assets/images/filamentDefault.pngassets/images/gcodeCover.png  assetassets/images/gcodeCover.png!assets/images/ipInputGuideCN.webp  asset!assets/images/ipInputGuideCN.webpassets/images/logo.png  assetassets/images/logo.png"assets/images/printtaskDefault.png  asset"assets/images/printtaskDefault.pngassets/svgs/arrowDorpDown.svg  assetassets/svgs/arrowDorpDown.svgassets/svgs/chevronRight.svg  assetassets/svgs/chevronRight.svgassets/svgs/cloud.svg  assetassets/svgs/cloud.svgassets/svgs/defaultAvatar.svg  assetassets/svgs/defaultAvatar.svgassets/svgs/demoIcPrinterN1.svg  assetassets/svgs/demoIcPrinterN1.svgassets/svgs/demoNoDevice.svg  assetassets/svgs/demoNoDevice.svgassets/svgs/demoWarning.svg  assetassets/svgs/demoWarning.svg assets/svgs/device/addDevice.svg  asset assets/svgs/device/addDevice.svgassets/svgs/device/delete.svg  assetassets/svgs/device/delete.svg'assets/svgs/device/deviceActionHome.svg  asset'assets/svgs/device/deviceActionHome.svg$assets/svgs/device/deviceControl.svg  asset$assets/svgs/device/deviceControl.svg&assets/svgs/device/exclamationMark.svg  asset&assets/svgs/device/exclamationMark.svg!assets/svgs/device/exportFile.svg  asset!assets/svgs/device/exportFile.svg)assets/svgs/device/extruderBackground.svg  asset)assets/svgs/device/extruderBackground.svg%assets/svgs/device/firmwareUpdate.svg  asset%assets/svgs/device/firmwareUpdate.svgassets/svgs/device/iconAdd.svg  assetassets/svgs/device/iconAdd.svgassets/svgs/device/iconBind.svg  assetassets/svgs/device/iconBind.svg'assets/svgs/device/iconControlPause.svg  asset'assets/svgs/device/iconControlPause.svg&assets/svgs/device/iconControlPlay.svg  asset&assets/svgs/device/iconControlPlay.svg&assets/svgs/device/iconControlStop.svg  asset&assets/svgs/device/iconControlStop.svgassets/svgs/device/iconEdit.svg  assetassets/svgs/device/iconEdit.svg'assets/svgs/device/iconExtruderHead.svg  asset'assets/svgs/device/iconExtruderHead.svgassets/svgs/device/iconFan.svg  assetassets/svgs/device/iconFan.svg(assets/svgs/device/iconFilamentCheck.svg  asset(assets/svgs/device/iconFilamentCheck.svg'assets/svgs/device/iconFilamentEdit.svg  asset'assets/svgs/device/iconFilamentEdit.svgassets/svgs/device/iconFile.svg  assetassets/svgs/device/iconFile.svgassets/svgs/device/iconHome.svg  assetassets/svgs/device/iconHome.svg,assets/svgs/device/iconHotBedTemperature.svg  asset,assets/svgs/device/iconHotBedTemperature.svgassets/svgs/device/iconLed.svg  assetassets/svgs/device/iconLed.svg*assets/svgs/device/iconModelFileFolder.svg  asset*assets/svgs/device/iconModelFileFolder.svg&assets/svgs/device/iconMoreSetting.svg  asset&assets/svgs/device/iconMoreSetting.svgassets/svgs/device/iconScan.svg  assetassets/svgs/device/iconScan.svg!assets/svgs/device/iconSearch.svg  asset!assets/svgs/device/iconSearch.svg assets/svgs/device/iconSpeed.svg  asset assets/svgs/device/iconSpeed.svgassets/svgs/device/iconTick.svg  assetassets/svgs/device/iconTick.svg$assets/svgs/device/iconTimeLapse.svg  asset$assets/svgs/device/iconTimeLapse.svg#assets/svgs/device/instructions.svg  asset#assets/svgs/device/instructions.svg,assets/svgs/device/keyboardArrowDropDown.svg  asset,assets/svgs/device/keyboardArrowDropDown.svg!assets/svgs/device/liveCamera.svg  asset!assets/svgs/device/liveCamera.svgassets/svgs/device/logout.svg  assetassets/svgs/device/logout.svgassets/svgs/device/pause.svg  assetassets/svgs/device/pause.svgassets/svgs/device/play.svg  assetassets/svgs/device/play.svgassets/svgs/device/settings.svg  assetassets/svgs/device/settings.svgassets/svgs/device/stop.svg  assetassets/svgs/device/stop.svgassets/svgs/device/vector31.svg  assetassets/svgs/device/vector31.svg assets/svgs/device/videoCall.svg  asset assets/svgs/device/videoCall.svg assets/svgs/device/videoPlay.svg  asset assets/svgs/device/videoPlay.svgassets/svgs/device/wifi.svg  assetassets/svgs/device/wifi.svgassets/svgs/deviceCardAdd.svg  assetassets/svgs/deviceCardAdd.svg assets/svgs/deviceCardLogout.svg  asset assets/svgs/deviceCardLogout.svg&assets/svgs/extruder/iconExtruder1.svg  asset&assets/svgs/extruder/iconExtruder1.svg&assets/svgs/extruder/iconExtruder2.svg  asset&assets/svgs/extruder/iconExtruder2.svg&assets/svgs/extruder/iconExtruder3.svg  asset&assets/svgs/extruder/iconExtruder3.svg&assets/svgs/extruder/iconExtruder4.svg  asset&assets/svgs/extruder/iconExtruder4.svgassets/svgs/iconArrowBack.svg  assetassets/svgs/iconArrowBack.svgassets/svgs/iconArrowRight.svg  assetassets/svgs/iconArrowRight.svg$assets/svgs/iconAuxiliaryCooling.svg  asset$assets/svgs/iconAuxiliaryCooling.svgassets/svgs/iconClose.svg  assetassets/svgs/iconClose.svgassets/svgs/iconCloseWhite.svg  assetassets/svgs/iconCloseWhite.svgassets/svgs/iconEdit.svg  assetassets/svgs/iconEdit.svgassets/svgs/iconHome.svg  assetassets/svgs/iconHome.svgassets/svgs/iconMainCooling.svg  assetassets/svgs/iconMainCooling.svgassets/svgs/iconNotific.svg  assetassets/svgs/iconNotific.svgassets/svgs/iconPurifier.svg  assetassets/svgs/iconPurifier.svg"assets/svgs/loginPlatformApple.svg  asset"assets/svgs/loginPlatformApple.svg%assets/svgs/loginPlatformFacebook.svg  asset%assets/svgs/loginPlatformFacebook.svg#assets/svgs/loginPlatformGithub.svg  asset#assets/svgs/loginPlatformGithub.svg#assets/svgs/loginPlatformGoogle.svg  asset#assets/svgs/loginPlatformGoogle.svgassets/svgs/myDevice.svg  assetassets/svgs/myDevice.svgassets/svgs/printHistory.svg  assetassets/svgs/printHistory.svgassets/svgs/recentDocuments.svg  assetassets/svgs/recentDocuments.svg!assets/svgs/tabbar/iconDevice.svg  asset!assets/svgs/tabbar/iconDevice.svg'assets/svgs/tabbar/iconDeviceActive.svg  asset'assets/svgs/tabbar/iconDeviceActive.svg+assets/svgs/tabbar/iconDeviceActiveDark.svg  asset+assets/svgs/tabbar/iconDeviceActiveDark.svg%assets/svgs/tabbar/iconDeviceDark.svg  asset%assets/svgs/tabbar/iconDeviceDark.svg#assets/svgs/tabbar/iconDiscover.svg  asset#assets/svgs/tabbar/iconDiscover.svg)assets/svgs/tabbar/iconDiscoverActive.svg  asset)assets/svgs/tabbar/iconDiscoverActive.svg-assets/svgs/tabbar/iconDiscoverActiveDark.svg  asset-assets/svgs/tabbar/iconDiscoverActiveDark.svg'assets/svgs/tabbar/iconDiscoverDark.svg  asset'assets/svgs/tabbar/iconDiscoverDark.svgassets/svgs/tabbar/iconMine.svg  assetassets/svgs/tabbar/iconMine.svg%assets/svgs/tabbar/iconMineActive.svg  asset%assets/svgs/tabbar/iconMineActive.svg)assets/svgs/tabbar/iconMineActiveDark.svg  asset)assets/svgs/tabbar/iconMineActiveDark.svg#assets/svgs/tabbar/iconMineDark.svg  asset#assets/svgs/tabbar/iconMineDark.svg"assets/svgs/tabbar/iconService.svg  asset"assets/svgs/tabbar/iconService.svg(assets/svgs/tabbar/iconServiceActive.svg  asset(assets/svgs/tabbar/iconServiceActive.svg,assets/svgs/tabbar/iconServiceActiveDark.svg  asset,assets/svgs/tabbar/iconServiceActiveDark.svg&assets/svgs/tabbar/iconServiceDark.svg  asset&assets/svgs/tabbar/iconServiceDark.svgassets/svgs/textfieldAccout.svg  assetassets/svgs/textfieldAccout.svgassets/svgs/textfieldCode.svg  assetassets/svgs/textfieldCode.svgassets/svgs/textfieldEye.svg  assetassets/svgs/textfieldEye.svg!assets/svgs/textfieldPassword.svg  asset!assets/svgs/textfieldPassword.svgassets/svgs/userIcon.svg  assetassets/svgs/userIcon.svg2packages/cupertino_icons/assets/CupertinoIcons.ttf  asset2packages/cupertino_icons/assets/CupertinoIcons.ttf7packages/lava_device_control/assets/files/filament.json  asset7packages/lava_device_control/assets/files/filament.json)packages/wakelock_plus/assets/no_sleep.js  asset)packages/wakelock_plus/assets/no_sleep.js \ No newline at end of file diff --git a/resources/web/flutter_web/assets/AssetManifest.bin.json b/resources/web/flutter_web/assets/AssetManifest.bin.json new file mode 100644 index 0000000000..f60cc358bf --- /dev/null +++ b/resources/web/flutter_web/assets/AssetManifest.bin.json @@ -0,0 +1 @@ +"DXkHKmFzc2V0cy9maWxlcy9hY2NvdW50RGVsZXRpb25BZ3JlZW1lbnQuanNvbgwBDQEHBWFzc2V0Byphc3NldHMvZmlsZXMvYWNjb3VudERlbGV0aW9uQWdyZWVtZW50Lmpzb24HLGFzc2V0cy9maWxlcy9hY2NvdW50RGVsZXRpb25BZ3JlZW1lbnRaaC5qc29uDAENAQcFYXNzZXQHLGFzc2V0cy9maWxlcy9hY2NvdW50RGVsZXRpb25BZ3JlZW1lbnRaaC5qc29uBx1hc3NldHMvZmlsZXMvZGV2aWNlRXJyb3IuanNvbgwBDQEHBWFzc2V0Bx1hc3NldHMvZmlsZXMvZGV2aWNlRXJyb3IuanNvbgcqYXNzZXRzL2ZvbnRzL0hhcm1vbnlPU19TYW5zX1NDX1JlZ3VsYXIudHRmDAENAQcFYXNzZXQHKmFzc2V0cy9mb250cy9IYXJtb255T1NfU2Fuc19TQ19SZWd1bGFyLnR0ZgckYXNzZXRzL2ZvbnRzL05hbnVtR290aGljLVJlZ3VsYXIudHRmDAENAQcFYXNzZXQHJGFzc2V0cy9mb250cy9OYW51bUdvdGhpYy1SZWd1bGFyLnR0ZgcTYXNzZXRzL2kxMG4vZW4uanNvbgwBDQEHBWFzc2V0BxNhc3NldHMvaTEwbi9lbi5qc29uBxZhc3NldHMvaTEwbi96aC1DTi5qc29uDAENAQcFYXNzZXQHFmFzc2V0cy9pMTBuL3poLUNOLmpzb24HG2Fzc2V0cy9pbWFnZXMvM2RwcmludGVyLnBuZwwBDQEHBWFzc2V0Bxthc3NldHMvaW1hZ2VzLzNkcHJpbnRlci5wbmcHH2Fzc2V0cy9pbWFnZXMvSXBJbnB1dEd1aWRlLndlYnAMAQ0BBwVhc3NldAcfYXNzZXRzL2ltYWdlcy9JcElucHV0R3VpZGUud2VicAcdYXNzZXRzL2ltYWdlcy9iaW5kUHJpbnRlci5wbmcMAQ0BBwVhc3NldAcdYXNzZXRzL2ltYWdlcy9iaW5kUHJpbnRlci5wbmcHIGFzc2V0cy9pbWFnZXMvY29udHJvbERlZmF1bHQucG5nDAENAQcFYXNzZXQHIGFzc2V0cy9pbWFnZXMvY29udHJvbERlZmF1bHQucG5nBx5hc3NldHMvaW1hZ2VzL2RlZmF1bHRFbXB0eS5wbmcMAQ0BBwVhc3NldAceYXNzZXRzL2ltYWdlcy9kZWZhdWx0RW1wdHkucG5nByJhc3NldHMvaW1hZ2VzL2RldmljZUF1dGhvcml6ZWQucG5nDAENAQcFYXNzZXQHImFzc2V0cy9pbWFnZXMvZGV2aWNlQXV0aG9yaXplZC5wbmcHI2Fzc2V0cy9pbWFnZXMvZGV2aWNlQXV0aG9yaXppbmcucG5nDAENAQcFYXNzZXQHI2Fzc2V0cy9pbWFnZXMvZGV2aWNlQXV0aG9yaXppbmcucG5nBydhc3NldHMvaW1hZ2VzL2RldmljZURpc3BsYXlEZWZhdWx0LndlYnAMAQ0BBwVhc3NldAcnYXNzZXRzL2ltYWdlcy9kZXZpY2VEaXNwbGF5RGVmYXVsdC53ZWJwByZhc3NldHMvaW1hZ2VzL2RldmljZUludmFsaWRWZXJzaW9uLnBuZwwBDQEHBWFzc2V0ByZhc3NldHMvaW1hZ2VzL2RldmljZUludmFsaWRWZXJzaW9uLnBuZwciYXNzZXRzL2ltYWdlcy9kZXZpY2VOb05ldHdvcmsud2VicAwBDQEHBWFzc2V0ByJhc3NldHMvaW1hZ2VzL2RldmljZU5vTmV0d29yay53ZWJwByNhc3NldHMvaW1hZ2VzL2RldmljZU5vUmVzcG9uc2Uud2VicAwBDQEHBWFzc2V0ByNhc3NldHMvaW1hZ2VzL2RldmljZU5vUmVzcG9uc2Uud2VicAckYXNzZXRzL2ltYWdlcy9kZXZpY2VOb3RDb25uZWN0ZWQucG5nDAENAQcFYXNzZXQHJGFzc2V0cy9pbWFnZXMvZGV2aWNlTm90Q29ubmVjdGVkLnBuZwcgYXNzZXRzL2ltYWdlcy9kZXZpY2VSZWplY3RlZC5wbmcMAQ0BBwVhc3NldAcgYXNzZXRzL2ltYWdlcy9kZXZpY2VSZWplY3RlZC5wbmcHHmFzc2V0cy9pbWFnZXMvZXhwZWN0YXRpb24ud2VicAwBDQEHBWFzc2V0Bx5hc3NldHMvaW1hZ2VzL2V4cGVjdGF0aW9uLndlYnAHIWFzc2V0cy9pbWFnZXMvZmlsYW1lbnREZWZhdWx0LnBuZwwBDQEHBWFzc2V0ByFhc3NldHMvaW1hZ2VzL2ZpbGFtZW50RGVmYXVsdC5wbmcHHGFzc2V0cy9pbWFnZXMvZ2NvZGVDb3Zlci5wbmcMAQ0BBwVhc3NldAccYXNzZXRzL2ltYWdlcy9nY29kZUNvdmVyLnBuZwchYXNzZXRzL2ltYWdlcy9pcElucHV0R3VpZGVDTi53ZWJwDAENAQcFYXNzZXQHIWFzc2V0cy9pbWFnZXMvaXBJbnB1dEd1aWRlQ04ud2VicAcWYXNzZXRzL2ltYWdlcy9sb2dvLnBuZwwBDQEHBWFzc2V0BxZhc3NldHMvaW1hZ2VzL2xvZ28ucG5nByJhc3NldHMvaW1hZ2VzL3ByaW50dGFza0RlZmF1bHQucG5nDAENAQcFYXNzZXQHImFzc2V0cy9pbWFnZXMvcHJpbnR0YXNrRGVmYXVsdC5wbmcHHWFzc2V0cy9zdmdzL2Fycm93RG9ycERvd24uc3ZnDAENAQcFYXNzZXQHHWFzc2V0cy9zdmdzL2Fycm93RG9ycERvd24uc3ZnBxxhc3NldHMvc3Zncy9jaGV2cm9uUmlnaHQuc3ZnDAENAQcFYXNzZXQHHGFzc2V0cy9zdmdzL2NoZXZyb25SaWdodC5zdmcHFWFzc2V0cy9zdmdzL2Nsb3VkLnN2ZwwBDQEHBWFzc2V0BxVhc3NldHMvc3Zncy9jbG91ZC5zdmcHHWFzc2V0cy9zdmdzL2RlZmF1bHRBdmF0YXIuc3ZnDAENAQcFYXNzZXQHHWFzc2V0cy9zdmdzL2RlZmF1bHRBdmF0YXIuc3ZnBx9hc3NldHMvc3Zncy9kZW1vSWNQcmludGVyTjEuc3ZnDAENAQcFYXNzZXQHH2Fzc2V0cy9zdmdzL2RlbW9JY1ByaW50ZXJOMS5zdmcHHGFzc2V0cy9zdmdzL2RlbW9Ob0RldmljZS5zdmcMAQ0BBwVhc3NldAccYXNzZXRzL3N2Z3MvZGVtb05vRGV2aWNlLnN2ZwcbYXNzZXRzL3N2Z3MvZGVtb1dhcm5pbmcuc3ZnDAENAQcFYXNzZXQHG2Fzc2V0cy9zdmdzL2RlbW9XYXJuaW5nLnN2ZwcgYXNzZXRzL3N2Z3MvZGV2aWNlL2FkZERldmljZS5zdmcMAQ0BBwVhc3NldAcgYXNzZXRzL3N2Z3MvZGV2aWNlL2FkZERldmljZS5zdmcHHWFzc2V0cy9zdmdzL2RldmljZS9kZWxldGUuc3ZnDAENAQcFYXNzZXQHHWFzc2V0cy9zdmdzL2RldmljZS9kZWxldGUuc3ZnBydhc3NldHMvc3Zncy9kZXZpY2UvZGV2aWNlQWN0aW9uSG9tZS5zdmcMAQ0BBwVhc3NldAcnYXNzZXRzL3N2Z3MvZGV2aWNlL2RldmljZUFjdGlvbkhvbWUuc3ZnByRhc3NldHMvc3Zncy9kZXZpY2UvZGV2aWNlQ29udHJvbC5zdmcMAQ0BBwVhc3NldAckYXNzZXRzL3N2Z3MvZGV2aWNlL2RldmljZUNvbnRyb2wuc3ZnByZhc3NldHMvc3Zncy9kZXZpY2UvZXhjbGFtYXRpb25NYXJrLnN2ZwwBDQEHBWFzc2V0ByZhc3NldHMvc3Zncy9kZXZpY2UvZXhjbGFtYXRpb25NYXJrLnN2ZwchYXNzZXRzL3N2Z3MvZGV2aWNlL2V4cG9ydEZpbGUuc3ZnDAENAQcFYXNzZXQHIWFzc2V0cy9zdmdzL2RldmljZS9leHBvcnRGaWxlLnN2ZwcpYXNzZXRzL3N2Z3MvZGV2aWNlL2V4dHJ1ZGVyQmFja2dyb3VuZC5zdmcMAQ0BBwVhc3NldAcpYXNzZXRzL3N2Z3MvZGV2aWNlL2V4dHJ1ZGVyQmFja2dyb3VuZC5zdmcHJWFzc2V0cy9zdmdzL2RldmljZS9maXJtd2FyZVVwZGF0ZS5zdmcMAQ0BBwVhc3NldAclYXNzZXRzL3N2Z3MvZGV2aWNlL2Zpcm13YXJlVXBkYXRlLnN2ZwceYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25BZGQuc3ZnDAENAQcFYXNzZXQHHmFzc2V0cy9zdmdzL2RldmljZS9pY29uQWRkLnN2ZwcfYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25CaW5kLnN2ZwwBDQEHBWFzc2V0Bx9hc3NldHMvc3Zncy9kZXZpY2UvaWNvbkJpbmQuc3ZnBydhc3NldHMvc3Zncy9kZXZpY2UvaWNvbkNvbnRyb2xQYXVzZS5zdmcMAQ0BBwVhc3NldAcnYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25Db250cm9sUGF1c2Uuc3ZnByZhc3NldHMvc3Zncy9kZXZpY2UvaWNvbkNvbnRyb2xQbGF5LnN2ZwwBDQEHBWFzc2V0ByZhc3NldHMvc3Zncy9kZXZpY2UvaWNvbkNvbnRyb2xQbGF5LnN2ZwcmYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25Db250cm9sU3RvcC5zdmcMAQ0BBwVhc3NldAcmYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25Db250cm9sU3RvcC5zdmcHH2Fzc2V0cy9zdmdzL2RldmljZS9pY29uRWRpdC5zdmcMAQ0BBwVhc3NldAcfYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25FZGl0LnN2ZwcnYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25FeHRydWRlckhlYWQuc3ZnDAENAQcFYXNzZXQHJ2Fzc2V0cy9zdmdzL2RldmljZS9pY29uRXh0cnVkZXJIZWFkLnN2ZwceYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25GYW4uc3ZnDAENAQcFYXNzZXQHHmFzc2V0cy9zdmdzL2RldmljZS9pY29uRmFuLnN2ZwcoYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25GaWxhbWVudENoZWNrLnN2ZwwBDQEHBWFzc2V0Byhhc3NldHMvc3Zncy9kZXZpY2UvaWNvbkZpbGFtZW50Q2hlY2suc3ZnBydhc3NldHMvc3Zncy9kZXZpY2UvaWNvbkZpbGFtZW50RWRpdC5zdmcMAQ0BBwVhc3NldAcnYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25GaWxhbWVudEVkaXQuc3ZnBx9hc3NldHMvc3Zncy9kZXZpY2UvaWNvbkZpbGUuc3ZnDAENAQcFYXNzZXQHH2Fzc2V0cy9zdmdzL2RldmljZS9pY29uRmlsZS5zdmcHH2Fzc2V0cy9zdmdzL2RldmljZS9pY29uSG9tZS5zdmcMAQ0BBwVhc3NldAcfYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25Ib21lLnN2ZwcsYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25Ib3RCZWRUZW1wZXJhdHVyZS5zdmcMAQ0BBwVhc3NldAcsYXNzZXRzL3N2Z3MvZGV2aWNlL2ljb25Ib3RCZWRUZW1wZXJhdHVyZS5zdmcHHmFzc2V0cy9zdmdzL2RldmljZS9pY29uTGVkLnN2ZwwBDQEHBWFzc2V0Bx5hc3NldHMvc3Zncy9kZXZpY2UvaWNvbkxlZC5zdmcHKmFzc2V0cy9zdmdzL2RldmljZS9pY29uTW9kZWxGaWxlRm9sZGVyLnN2ZwwBDQEHBWFzc2V0Byphc3NldHMvc3Zncy9kZXZpY2UvaWNvbk1vZGVsRmlsZUZvbGRlci5zdmcHJmFzc2V0cy9zdmdzL2RldmljZS9pY29uTW9yZVNldHRpbmcuc3ZnDAENAQcFYXNzZXQHJmFzc2V0cy9zdmdzL2RldmljZS9pY29uTW9yZVNldHRpbmcuc3ZnBx9hc3NldHMvc3Zncy9kZXZpY2UvaWNvblNjYW4uc3ZnDAENAQcFYXNzZXQHH2Fzc2V0cy9zdmdzL2RldmljZS9pY29uU2Nhbi5zdmcHIWFzc2V0cy9zdmdzL2RldmljZS9pY29uU2VhcmNoLnN2ZwwBDQEHBWFzc2V0ByFhc3NldHMvc3Zncy9kZXZpY2UvaWNvblNlYXJjaC5zdmcHIGFzc2V0cy9zdmdzL2RldmljZS9pY29uU3BlZWQuc3ZnDAENAQcFYXNzZXQHIGFzc2V0cy9zdmdzL2RldmljZS9pY29uU3BlZWQuc3ZnBx9hc3NldHMvc3Zncy9kZXZpY2UvaWNvblRpY2suc3ZnDAENAQcFYXNzZXQHH2Fzc2V0cy9zdmdzL2RldmljZS9pY29uVGljay5zdmcHJGFzc2V0cy9zdmdzL2RldmljZS9pY29uVGltZUxhcHNlLnN2ZwwBDQEHBWFzc2V0ByRhc3NldHMvc3Zncy9kZXZpY2UvaWNvblRpbWVMYXBzZS5zdmcHI2Fzc2V0cy9zdmdzL2RldmljZS9pbnN0cnVjdGlvbnMuc3ZnDAENAQcFYXNzZXQHI2Fzc2V0cy9zdmdzL2RldmljZS9pbnN0cnVjdGlvbnMuc3ZnByxhc3NldHMvc3Zncy9kZXZpY2Uva2V5Ym9hcmRBcnJvd0Ryb3BEb3duLnN2ZwwBDQEHBWFzc2V0Byxhc3NldHMvc3Zncy9kZXZpY2Uva2V5Ym9hcmRBcnJvd0Ryb3BEb3duLnN2ZwchYXNzZXRzL3N2Z3MvZGV2aWNlL2xpdmVDYW1lcmEuc3ZnDAENAQcFYXNzZXQHIWFzc2V0cy9zdmdzL2RldmljZS9saXZlQ2FtZXJhLnN2ZwcdYXNzZXRzL3N2Z3MvZGV2aWNlL2xvZ291dC5zdmcMAQ0BBwVhc3NldAcdYXNzZXRzL3N2Z3MvZGV2aWNlL2xvZ291dC5zdmcHHGFzc2V0cy9zdmdzL2RldmljZS9wYXVzZS5zdmcMAQ0BBwVhc3NldAccYXNzZXRzL3N2Z3MvZGV2aWNlL3BhdXNlLnN2ZwcbYXNzZXRzL3N2Z3MvZGV2aWNlL3BsYXkuc3ZnDAENAQcFYXNzZXQHG2Fzc2V0cy9zdmdzL2RldmljZS9wbGF5LnN2ZwcfYXNzZXRzL3N2Z3MvZGV2aWNlL3NldHRpbmdzLnN2ZwwBDQEHBWFzc2V0Bx9hc3NldHMvc3Zncy9kZXZpY2Uvc2V0dGluZ3Muc3ZnBxthc3NldHMvc3Zncy9kZXZpY2Uvc3RvcC5zdmcMAQ0BBwVhc3NldAcbYXNzZXRzL3N2Z3MvZGV2aWNlL3N0b3Auc3ZnBx9hc3NldHMvc3Zncy9kZXZpY2UvdmVjdG9yMzEuc3ZnDAENAQcFYXNzZXQHH2Fzc2V0cy9zdmdzL2RldmljZS92ZWN0b3IzMS5zdmcHIGFzc2V0cy9zdmdzL2RldmljZS92aWRlb0NhbGwuc3ZnDAENAQcFYXNzZXQHIGFzc2V0cy9zdmdzL2RldmljZS92aWRlb0NhbGwuc3ZnByBhc3NldHMvc3Zncy9kZXZpY2UvdmlkZW9QbGF5LnN2ZwwBDQEHBWFzc2V0ByBhc3NldHMvc3Zncy9kZXZpY2UvdmlkZW9QbGF5LnN2ZwcbYXNzZXRzL3N2Z3MvZGV2aWNlL3dpZmkuc3ZnDAENAQcFYXNzZXQHG2Fzc2V0cy9zdmdzL2RldmljZS93aWZpLnN2ZwcdYXNzZXRzL3N2Z3MvZGV2aWNlQ2FyZEFkZC5zdmcMAQ0BBwVhc3NldAcdYXNzZXRzL3N2Z3MvZGV2aWNlQ2FyZEFkZC5zdmcHIGFzc2V0cy9zdmdzL2RldmljZUNhcmRMb2dvdXQuc3ZnDAENAQcFYXNzZXQHIGFzc2V0cy9zdmdzL2RldmljZUNhcmRMb2dvdXQuc3ZnByZhc3NldHMvc3Zncy9leHRydWRlci9pY29uRXh0cnVkZXIxLnN2ZwwBDQEHBWFzc2V0ByZhc3NldHMvc3Zncy9leHRydWRlci9pY29uRXh0cnVkZXIxLnN2ZwcmYXNzZXRzL3N2Z3MvZXh0cnVkZXIvaWNvbkV4dHJ1ZGVyMi5zdmcMAQ0BBwVhc3NldAcmYXNzZXRzL3N2Z3MvZXh0cnVkZXIvaWNvbkV4dHJ1ZGVyMi5zdmcHJmFzc2V0cy9zdmdzL2V4dHJ1ZGVyL2ljb25FeHRydWRlcjMuc3ZnDAENAQcFYXNzZXQHJmFzc2V0cy9zdmdzL2V4dHJ1ZGVyL2ljb25FeHRydWRlcjMuc3ZnByZhc3NldHMvc3Zncy9leHRydWRlci9pY29uRXh0cnVkZXI0LnN2ZwwBDQEHBWFzc2V0ByZhc3NldHMvc3Zncy9leHRydWRlci9pY29uRXh0cnVkZXI0LnN2ZwcdYXNzZXRzL3N2Z3MvaWNvbkFycm93QmFjay5zdmcMAQ0BBwVhc3NldAcdYXNzZXRzL3N2Z3MvaWNvbkFycm93QmFjay5zdmcHHmFzc2V0cy9zdmdzL2ljb25BcnJvd1JpZ2h0LnN2ZwwBDQEHBWFzc2V0Bx5hc3NldHMvc3Zncy9pY29uQXJyb3dSaWdodC5zdmcHJGFzc2V0cy9zdmdzL2ljb25BdXhpbGlhcnlDb29saW5nLnN2ZwwBDQEHBWFzc2V0ByRhc3NldHMvc3Zncy9pY29uQXV4aWxpYXJ5Q29vbGluZy5zdmcHGWFzc2V0cy9zdmdzL2ljb25DbG9zZS5zdmcMAQ0BBwVhc3NldAcZYXNzZXRzL3N2Z3MvaWNvbkNsb3NlLnN2ZwceYXNzZXRzL3N2Z3MvaWNvbkNsb3NlV2hpdGUuc3ZnDAENAQcFYXNzZXQHHmFzc2V0cy9zdmdzL2ljb25DbG9zZVdoaXRlLnN2ZwcYYXNzZXRzL3N2Z3MvaWNvbkVkaXQuc3ZnDAENAQcFYXNzZXQHGGFzc2V0cy9zdmdzL2ljb25FZGl0LnN2ZwcYYXNzZXRzL3N2Z3MvaWNvbkhvbWUuc3ZnDAENAQcFYXNzZXQHGGFzc2V0cy9zdmdzL2ljb25Ib21lLnN2ZwcfYXNzZXRzL3N2Z3MvaWNvbk1haW5Db29saW5nLnN2ZwwBDQEHBWFzc2V0Bx9hc3NldHMvc3Zncy9pY29uTWFpbkNvb2xpbmcuc3ZnBxthc3NldHMvc3Zncy9pY29uTm90aWZpYy5zdmcMAQ0BBwVhc3NldAcbYXNzZXRzL3N2Z3MvaWNvbk5vdGlmaWMuc3ZnBxxhc3NldHMvc3Zncy9pY29uUHVyaWZpZXIuc3ZnDAENAQcFYXNzZXQHHGFzc2V0cy9zdmdzL2ljb25QdXJpZmllci5zdmcHImFzc2V0cy9zdmdzL2xvZ2luUGxhdGZvcm1BcHBsZS5zdmcMAQ0BBwVhc3NldAciYXNzZXRzL3N2Z3MvbG9naW5QbGF0Zm9ybUFwcGxlLnN2ZwclYXNzZXRzL3N2Z3MvbG9naW5QbGF0Zm9ybUZhY2Vib29rLnN2ZwwBDQEHBWFzc2V0ByVhc3NldHMvc3Zncy9sb2dpblBsYXRmb3JtRmFjZWJvb2suc3ZnByNhc3NldHMvc3Zncy9sb2dpblBsYXRmb3JtR2l0aHViLnN2ZwwBDQEHBWFzc2V0ByNhc3NldHMvc3Zncy9sb2dpblBsYXRmb3JtR2l0aHViLnN2ZwcjYXNzZXRzL3N2Z3MvbG9naW5QbGF0Zm9ybUdvb2dsZS5zdmcMAQ0BBwVhc3NldAcjYXNzZXRzL3N2Z3MvbG9naW5QbGF0Zm9ybUdvb2dsZS5zdmcHGGFzc2V0cy9zdmdzL215RGV2aWNlLnN2ZwwBDQEHBWFzc2V0Bxhhc3NldHMvc3Zncy9teURldmljZS5zdmcHHGFzc2V0cy9zdmdzL3ByaW50SGlzdG9yeS5zdmcMAQ0BBwVhc3NldAccYXNzZXRzL3N2Z3MvcHJpbnRIaXN0b3J5LnN2ZwcfYXNzZXRzL3N2Z3MvcmVjZW50RG9jdW1lbnRzLnN2ZwwBDQEHBWFzc2V0Bx9hc3NldHMvc3Zncy9yZWNlbnREb2N1bWVudHMuc3ZnByFhc3NldHMvc3Zncy90YWJiYXIvaWNvbkRldmljZS5zdmcMAQ0BBwVhc3NldAchYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25EZXZpY2Uuc3ZnBydhc3NldHMvc3Zncy90YWJiYXIvaWNvbkRldmljZUFjdGl2ZS5zdmcMAQ0BBwVhc3NldAcnYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25EZXZpY2VBY3RpdmUuc3ZnBythc3NldHMvc3Zncy90YWJiYXIvaWNvbkRldmljZUFjdGl2ZURhcmsuc3ZnDAENAQcFYXNzZXQHK2Fzc2V0cy9zdmdzL3RhYmJhci9pY29uRGV2aWNlQWN0aXZlRGFyay5zdmcHJWFzc2V0cy9zdmdzL3RhYmJhci9pY29uRGV2aWNlRGFyay5zdmcMAQ0BBwVhc3NldAclYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25EZXZpY2VEYXJrLnN2ZwcjYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25EaXNjb3Zlci5zdmcMAQ0BBwVhc3NldAcjYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25EaXNjb3Zlci5zdmcHKWFzc2V0cy9zdmdzL3RhYmJhci9pY29uRGlzY292ZXJBY3RpdmUuc3ZnDAENAQcFYXNzZXQHKWFzc2V0cy9zdmdzL3RhYmJhci9pY29uRGlzY292ZXJBY3RpdmUuc3ZnBy1hc3NldHMvc3Zncy90YWJiYXIvaWNvbkRpc2NvdmVyQWN0aXZlRGFyay5zdmcMAQ0BBwVhc3NldActYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25EaXNjb3ZlckFjdGl2ZURhcmsuc3ZnBydhc3NldHMvc3Zncy90YWJiYXIvaWNvbkRpc2NvdmVyRGFyay5zdmcMAQ0BBwVhc3NldAcnYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25EaXNjb3ZlckRhcmsuc3ZnBx9hc3NldHMvc3Zncy90YWJiYXIvaWNvbk1pbmUuc3ZnDAENAQcFYXNzZXQHH2Fzc2V0cy9zdmdzL3RhYmJhci9pY29uTWluZS5zdmcHJWFzc2V0cy9zdmdzL3RhYmJhci9pY29uTWluZUFjdGl2ZS5zdmcMAQ0BBwVhc3NldAclYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25NaW5lQWN0aXZlLnN2ZwcpYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25NaW5lQWN0aXZlRGFyay5zdmcMAQ0BBwVhc3NldAcpYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25NaW5lQWN0aXZlRGFyay5zdmcHI2Fzc2V0cy9zdmdzL3RhYmJhci9pY29uTWluZURhcmsuc3ZnDAENAQcFYXNzZXQHI2Fzc2V0cy9zdmdzL3RhYmJhci9pY29uTWluZURhcmsuc3ZnByJhc3NldHMvc3Zncy90YWJiYXIvaWNvblNlcnZpY2Uuc3ZnDAENAQcFYXNzZXQHImFzc2V0cy9zdmdzL3RhYmJhci9pY29uU2VydmljZS5zdmcHKGFzc2V0cy9zdmdzL3RhYmJhci9pY29uU2VydmljZUFjdGl2ZS5zdmcMAQ0BBwVhc3NldAcoYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25TZXJ2aWNlQWN0aXZlLnN2ZwcsYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25TZXJ2aWNlQWN0aXZlRGFyay5zdmcMAQ0BBwVhc3NldAcsYXNzZXRzL3N2Z3MvdGFiYmFyL2ljb25TZXJ2aWNlQWN0aXZlRGFyay5zdmcHJmFzc2V0cy9zdmdzL3RhYmJhci9pY29uU2VydmljZURhcmsuc3ZnDAENAQcFYXNzZXQHJmFzc2V0cy9zdmdzL3RhYmJhci9pY29uU2VydmljZURhcmsuc3ZnBx9hc3NldHMvc3Zncy90ZXh0ZmllbGRBY2NvdXQuc3ZnDAENAQcFYXNzZXQHH2Fzc2V0cy9zdmdzL3RleHRmaWVsZEFjY291dC5zdmcHHWFzc2V0cy9zdmdzL3RleHRmaWVsZENvZGUuc3ZnDAENAQcFYXNzZXQHHWFzc2V0cy9zdmdzL3RleHRmaWVsZENvZGUuc3ZnBxxhc3NldHMvc3Zncy90ZXh0ZmllbGRFeWUuc3ZnDAENAQcFYXNzZXQHHGFzc2V0cy9zdmdzL3RleHRmaWVsZEV5ZS5zdmcHIWFzc2V0cy9zdmdzL3RleHRmaWVsZFBhc3N3b3JkLnN2ZwwBDQEHBWFzc2V0ByFhc3NldHMvc3Zncy90ZXh0ZmllbGRQYXNzd29yZC5zdmcHGGFzc2V0cy9zdmdzL3VzZXJJY29uLnN2ZwwBDQEHBWFzc2V0Bxhhc3NldHMvc3Zncy91c2VySWNvbi5zdmcHMnBhY2thZ2VzL2N1cGVydGlub19pY29ucy9hc3NldHMvQ3VwZXJ0aW5vSWNvbnMudHRmDAENAQcFYXNzZXQHMnBhY2thZ2VzL2N1cGVydGlub19pY29ucy9hc3NldHMvQ3VwZXJ0aW5vSWNvbnMudHRmBzdwYWNrYWdlcy9sYXZhX2RldmljZV9jb250cm9sL2Fzc2V0cy9maWxlcy9maWxhbWVudC5qc29uDAENAQcFYXNzZXQHN3BhY2thZ2VzL2xhdmFfZGV2aWNlX2NvbnRyb2wvYXNzZXRzL2ZpbGVzL2ZpbGFtZW50Lmpzb24HKXBhY2thZ2VzL3dha2Vsb2NrX3BsdXMvYXNzZXRzL25vX3NsZWVwLmpzDAENAQcFYXNzZXQHKXBhY2thZ2VzL3dha2Vsb2NrX3BsdXMvYXNzZXRzL25vX3NsZWVwLmpz" \ No newline at end of file diff --git a/resources/web/flutter_web/assets/AssetManifest.json b/resources/web/flutter_web/assets/AssetManifest.json new file mode 100644 index 0000000000..2e008fa501 --- /dev/null +++ b/resources/web/flutter_web/assets/AssetManifest.json @@ -0,0 +1 @@ +{"assets/files/accountDeletionAgreement.json":["assets/files/accountDeletionAgreement.json"],"assets/files/accountDeletionAgreementZh.json":["assets/files/accountDeletionAgreementZh.json"],"assets/files/deviceError.json":["assets/files/deviceError.json"],"assets/fonts/HarmonyOS_Sans_SC_Regular.ttf":["assets/fonts/HarmonyOS_Sans_SC_Regular.ttf"],"assets/fonts/NanumGothic-Regular.ttf":["assets/fonts/NanumGothic-Regular.ttf"],"assets/i10n/en.json":["assets/i10n/en.json"],"assets/i10n/zh-CN.json":["assets/i10n/zh-CN.json"],"assets/images/3dprinter.png":["assets/images/3dprinter.png"],"assets/images/IpInputGuide.webp":["assets/images/IpInputGuide.webp"],"assets/images/bindPrinter.png":["assets/images/bindPrinter.png"],"assets/images/controlDefault.png":["assets/images/controlDefault.png"],"assets/images/defaultEmpty.png":["assets/images/defaultEmpty.png"],"assets/images/deviceAuthorized.png":["assets/images/deviceAuthorized.png"],"assets/images/deviceAuthorizing.png":["assets/images/deviceAuthorizing.png"],"assets/images/deviceDisplayDefault.webp":["assets/images/deviceDisplayDefault.webp"],"assets/images/deviceInvalidVersion.png":["assets/images/deviceInvalidVersion.png"],"assets/images/deviceNoNetwork.webp":["assets/images/deviceNoNetwork.webp"],"assets/images/deviceNoResponse.webp":["assets/images/deviceNoResponse.webp"],"assets/images/deviceNotConnected.png":["assets/images/deviceNotConnected.png"],"assets/images/deviceRejected.png":["assets/images/deviceRejected.png"],"assets/images/expectation.webp":["assets/images/expectation.webp"],"assets/images/filamentDefault.png":["assets/images/filamentDefault.png"],"assets/images/gcodeCover.png":["assets/images/gcodeCover.png"],"assets/images/ipInputGuideCN.webp":["assets/images/ipInputGuideCN.webp"],"assets/images/logo.png":["assets/images/logo.png"],"assets/images/printtaskDefault.png":["assets/images/printtaskDefault.png"],"assets/svgs/arrowDorpDown.svg":["assets/svgs/arrowDorpDown.svg"],"assets/svgs/chevronRight.svg":["assets/svgs/chevronRight.svg"],"assets/svgs/cloud.svg":["assets/svgs/cloud.svg"],"assets/svgs/defaultAvatar.svg":["assets/svgs/defaultAvatar.svg"],"assets/svgs/demoIcPrinterN1.svg":["assets/svgs/demoIcPrinterN1.svg"],"assets/svgs/demoNoDevice.svg":["assets/svgs/demoNoDevice.svg"],"assets/svgs/demoWarning.svg":["assets/svgs/demoWarning.svg"],"assets/svgs/device/addDevice.svg":["assets/svgs/device/addDevice.svg"],"assets/svgs/device/delete.svg":["assets/svgs/device/delete.svg"],"assets/svgs/device/deviceActionHome.svg":["assets/svgs/device/deviceActionHome.svg"],"assets/svgs/device/deviceControl.svg":["assets/svgs/device/deviceControl.svg"],"assets/svgs/device/exclamationMark.svg":["assets/svgs/device/exclamationMark.svg"],"assets/svgs/device/exportFile.svg":["assets/svgs/device/exportFile.svg"],"assets/svgs/device/extruderBackground.svg":["assets/svgs/device/extruderBackground.svg"],"assets/svgs/device/firmwareUpdate.svg":["assets/svgs/device/firmwareUpdate.svg"],"assets/svgs/device/iconAdd.svg":["assets/svgs/device/iconAdd.svg"],"assets/svgs/device/iconBind.svg":["assets/svgs/device/iconBind.svg"],"assets/svgs/device/iconControlPause.svg":["assets/svgs/device/iconControlPause.svg"],"assets/svgs/device/iconControlPlay.svg":["assets/svgs/device/iconControlPlay.svg"],"assets/svgs/device/iconControlStop.svg":["assets/svgs/device/iconControlStop.svg"],"assets/svgs/device/iconEdit.svg":["assets/svgs/device/iconEdit.svg"],"assets/svgs/device/iconExtruderHead.svg":["assets/svgs/device/iconExtruderHead.svg"],"assets/svgs/device/iconFan.svg":["assets/svgs/device/iconFan.svg"],"assets/svgs/device/iconFilamentCheck.svg":["assets/svgs/device/iconFilamentCheck.svg"],"assets/svgs/device/iconFilamentEdit.svg":["assets/svgs/device/iconFilamentEdit.svg"],"assets/svgs/device/iconFile.svg":["assets/svgs/device/iconFile.svg"],"assets/svgs/device/iconHome.svg":["assets/svgs/device/iconHome.svg"],"assets/svgs/device/iconHotBedTemperature.svg":["assets/svgs/device/iconHotBedTemperature.svg"],"assets/svgs/device/iconLed.svg":["assets/svgs/device/iconLed.svg"],"assets/svgs/device/iconModelFileFolder.svg":["assets/svgs/device/iconModelFileFolder.svg"],"assets/svgs/device/iconMoreSetting.svg":["assets/svgs/device/iconMoreSetting.svg"],"assets/svgs/device/iconScan.svg":["assets/svgs/device/iconScan.svg"],"assets/svgs/device/iconSearch.svg":["assets/svgs/device/iconSearch.svg"],"assets/svgs/device/iconSpeed.svg":["assets/svgs/device/iconSpeed.svg"],"assets/svgs/device/iconTick.svg":["assets/svgs/device/iconTick.svg"],"assets/svgs/device/iconTimeLapse.svg":["assets/svgs/device/iconTimeLapse.svg"],"assets/svgs/device/instructions.svg":["assets/svgs/device/instructions.svg"],"assets/svgs/device/keyboardArrowDropDown.svg":["assets/svgs/device/keyboardArrowDropDown.svg"],"assets/svgs/device/liveCamera.svg":["assets/svgs/device/liveCamera.svg"],"assets/svgs/device/logout.svg":["assets/svgs/device/logout.svg"],"assets/svgs/device/pause.svg":["assets/svgs/device/pause.svg"],"assets/svgs/device/play.svg":["assets/svgs/device/play.svg"],"assets/svgs/device/settings.svg":["assets/svgs/device/settings.svg"],"assets/svgs/device/stop.svg":["assets/svgs/device/stop.svg"],"assets/svgs/device/vector31.svg":["assets/svgs/device/vector31.svg"],"assets/svgs/device/videoCall.svg":["assets/svgs/device/videoCall.svg"],"assets/svgs/device/videoPlay.svg":["assets/svgs/device/videoPlay.svg"],"assets/svgs/device/wifi.svg":["assets/svgs/device/wifi.svg"],"assets/svgs/deviceCardAdd.svg":["assets/svgs/deviceCardAdd.svg"],"assets/svgs/deviceCardLogout.svg":["assets/svgs/deviceCardLogout.svg"],"assets/svgs/extruder/iconExtruder1.svg":["assets/svgs/extruder/iconExtruder1.svg"],"assets/svgs/extruder/iconExtruder2.svg":["assets/svgs/extruder/iconExtruder2.svg"],"assets/svgs/extruder/iconExtruder3.svg":["assets/svgs/extruder/iconExtruder3.svg"],"assets/svgs/extruder/iconExtruder4.svg":["assets/svgs/extruder/iconExtruder4.svg"],"assets/svgs/iconArrowBack.svg":["assets/svgs/iconArrowBack.svg"],"assets/svgs/iconArrowRight.svg":["assets/svgs/iconArrowRight.svg"],"assets/svgs/iconAuxiliaryCooling.svg":["assets/svgs/iconAuxiliaryCooling.svg"],"assets/svgs/iconClose.svg":["assets/svgs/iconClose.svg"],"assets/svgs/iconCloseWhite.svg":["assets/svgs/iconCloseWhite.svg"],"assets/svgs/iconEdit.svg":["assets/svgs/iconEdit.svg"],"assets/svgs/iconHome.svg":["assets/svgs/iconHome.svg"],"assets/svgs/iconMainCooling.svg":["assets/svgs/iconMainCooling.svg"],"assets/svgs/iconNotific.svg":["assets/svgs/iconNotific.svg"],"assets/svgs/iconPurifier.svg":["assets/svgs/iconPurifier.svg"],"assets/svgs/loginPlatformApple.svg":["assets/svgs/loginPlatformApple.svg"],"assets/svgs/loginPlatformFacebook.svg":["assets/svgs/loginPlatformFacebook.svg"],"assets/svgs/loginPlatformGithub.svg":["assets/svgs/loginPlatformGithub.svg"],"assets/svgs/loginPlatformGoogle.svg":["assets/svgs/loginPlatformGoogle.svg"],"assets/svgs/myDevice.svg":["assets/svgs/myDevice.svg"],"assets/svgs/printHistory.svg":["assets/svgs/printHistory.svg"],"assets/svgs/recentDocuments.svg":["assets/svgs/recentDocuments.svg"],"assets/svgs/tabbar/iconDevice.svg":["assets/svgs/tabbar/iconDevice.svg"],"assets/svgs/tabbar/iconDeviceActive.svg":["assets/svgs/tabbar/iconDeviceActive.svg"],"assets/svgs/tabbar/iconDeviceActiveDark.svg":["assets/svgs/tabbar/iconDeviceActiveDark.svg"],"assets/svgs/tabbar/iconDeviceDark.svg":["assets/svgs/tabbar/iconDeviceDark.svg"],"assets/svgs/tabbar/iconDiscover.svg":["assets/svgs/tabbar/iconDiscover.svg"],"assets/svgs/tabbar/iconDiscoverActive.svg":["assets/svgs/tabbar/iconDiscoverActive.svg"],"assets/svgs/tabbar/iconDiscoverActiveDark.svg":["assets/svgs/tabbar/iconDiscoverActiveDark.svg"],"assets/svgs/tabbar/iconDiscoverDark.svg":["assets/svgs/tabbar/iconDiscoverDark.svg"],"assets/svgs/tabbar/iconMine.svg":["assets/svgs/tabbar/iconMine.svg"],"assets/svgs/tabbar/iconMineActive.svg":["assets/svgs/tabbar/iconMineActive.svg"],"assets/svgs/tabbar/iconMineActiveDark.svg":["assets/svgs/tabbar/iconMineActiveDark.svg"],"assets/svgs/tabbar/iconMineDark.svg":["assets/svgs/tabbar/iconMineDark.svg"],"assets/svgs/tabbar/iconService.svg":["assets/svgs/tabbar/iconService.svg"],"assets/svgs/tabbar/iconServiceActive.svg":["assets/svgs/tabbar/iconServiceActive.svg"],"assets/svgs/tabbar/iconServiceActiveDark.svg":["assets/svgs/tabbar/iconServiceActiveDark.svg"],"assets/svgs/tabbar/iconServiceDark.svg":["assets/svgs/tabbar/iconServiceDark.svg"],"assets/svgs/textfieldAccout.svg":["assets/svgs/textfieldAccout.svg"],"assets/svgs/textfieldCode.svg":["assets/svgs/textfieldCode.svg"],"assets/svgs/textfieldEye.svg":["assets/svgs/textfieldEye.svg"],"assets/svgs/textfieldPassword.svg":["assets/svgs/textfieldPassword.svg"],"assets/svgs/userIcon.svg":["assets/svgs/userIcon.svg"],"packages/cupertino_icons/assets/CupertinoIcons.ttf":["packages/cupertino_icons/assets/CupertinoIcons.ttf"],"packages/lava_device_control/assets/files/filament.json":["packages/lava_device_control/assets/files/filament.json"],"packages/wakelock_plus/assets/no_sleep.js":["packages/wakelock_plus/assets/no_sleep.js"]} \ No newline at end of file diff --git a/resources/web/flutter_web/assets/FontManifest.json b/resources/web/flutter_web/assets/FontManifest.json new file mode 100644 index 0000000000..b3465a7028 --- /dev/null +++ b/resources/web/flutter_web/assets/FontManifest.json @@ -0,0 +1 @@ +[{"family":"MaterialIcons","fonts":[{"asset":"fonts/MaterialIcons-Regular.otf"}]},{"family":"HarmonyOS_Sans_SC","fonts":[{"weight":700,"asset":"assets/fonts/HarmonyOS_Sans_SC_Regular.ttf"}]},{"family":"NanumGothic","fonts":[{"weight":700,"asset":"assets/fonts/NanumGothic-Regular.ttf"}]},{"family":"packages/cupertino_icons/CupertinoIcons","fonts":[{"asset":"packages/cupertino_icons/assets/CupertinoIcons.ttf"}]}] \ No newline at end of file diff --git a/resources/web/flutter_web/assets/NOTICES b/resources/web/flutter_web/assets/NOTICES new file mode 100644 index 0000000000..01dc7db83c --- /dev/null +++ b/resources/web/flutter_web/assets/NOTICES @@ -0,0 +1,37607 @@ +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 +cpu_features +dart +etc1 +expat +flatbuffers +fuchsia_sdk +glslang +perfetto +shaderc +spirv-cross +txt +vulkan +vulkan-headers +vulkan-utility-libraries +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 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 + +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 +spring_animation +tonic +txt +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 +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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +another_flushbar + +MIT License + +Copyright (c) 2018-2022 André Haueisen Batista de Lima, Hamid Wakili + +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 + +Copyright 2013, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- +async +collection +mime +stream_channel +typed_data + +Copyright 2015, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- +boolean_selector +meta + +Copyright 2016, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- +boringssl + +Copyright (C) 1995-1997 Eric Young (eay@cryptsoft.com) +All rights reserved. + +This package is an SSL implementation written +by Eric Young (eay@cryptsoft.com). +The implementation was written so as to conform with Netscapes SSL. + +This library is free for commercial and non-commercial use as long as +the following conditions are aheared to. The following conditions +apply to all code found in this distribution, be it the RC4, RSA, +lhash, DES, etc., code; not just the SSL code. The SSL documentation +included with this distribution is covered by the same copyright terms +except that the holder is Tim Hudson (tjh@cryptsoft.com). + +Copyright remains Eric Young's, and as such any Copyright notices in +the code are not to be removed. +If this package is used in a product, Eric Young should be given attribution +as the author of the parts of the library used. +This can be in the form of a textual message at program startup or +in documentation (online or textual) provided with the package. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + "This product includes cryptographic software written by + Eric Young (eay@cryptsoft.com)" + The word 'cryptographic' can be left out if the rouines from the library + being used are not cryptographic related :-). +4. If you include any Windows specific code (or a derivative thereof) from + the apps directory (application code) you must include an acknowledgement: + "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + +THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +The licence and distribution terms for any publically available version or +derivative of this code cannot be changed. i.e. this code cannot simply be +copied and put under another distribution licence +[including the GNU Public Licence.] +-------------------------------------------------------------------------------- +boringssl + +Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) +All rights reserved. + +This package is an SSL implementation written +by Eric Young (eay@cryptsoft.com). +The implementation was written so as to conform with Netscapes SSL. + +This library is free for commercial and non-commercial use as long as +the following conditions are aheared to. The following conditions +apply to all code found in this distribution, be it the RC4, RSA, +lhash, DES, etc., code; not just the SSL code. The SSL documentation +included with this distribution is covered by the same copyright terms +except that the holder is Tim Hudson (tjh@cryptsoft.com). + +Copyright remains Eric Young's, and as such any Copyright notices in +the code are not to be removed. +If this package is used in a product, Eric Young should be given attribution +as the author of the parts of the library used. +This can be in the form of a textual message at program startup or +in documentation (online or textual) provided with the package. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. All advertising materials mentioning features or use of this software + must display the following acknowledgement: + "This product includes cryptographic software written by + Eric Young (eay@cryptsoft.com)" + The word 'cryptographic' can be left out if the rouines from the library + being used are not cryptographic related :-). +4. If you include any Windows specific code (or a derivative thereof) from + the apps directory (application code) you must include an acknowledgement: + "This product includes software written by Tim Hudson (tjh@cryptsoft.com)" + +THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +The licence and distribution terms for any publically available version or +derivative of this code cannot be changed. i.e. this code cannot simply be +copied and put under another distribution licence +[including the GNU Public Licence.] +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2000 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2001 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2002 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2003 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2004 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2006 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2007 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2002 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2003 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2004 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2005 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2007 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 1999-2008 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2000 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2000-2002 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2000-2003 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2000-2005 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2001 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2001-2011 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2002-2006 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2003 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2004 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2005 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2006 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2006,2007 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2008 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2010 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2011 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2011 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2012 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.openssl.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + openssl-core@openssl.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.openssl.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2013 The OpenSSL Project. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the + distribution. + +3. All advertising materials mentioning features or use of this + software must display the following acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit. (http://www.OpenSSL.org/)" + +4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to + endorse or promote products derived from this software without + prior written permission. For written permission, please contact + licensing@OpenSSL.org. + +5. Products derived from this software may not be called "OpenSSL" + nor may "OpenSSL" appear in their names without prior written + permission of the OpenSSL Project. + +6. Redistributions of any form whatsoever must retain the following + acknowledgment: + "This product includes software developed by the OpenSSL Project + for use in the OpenSSL Toolkit (http://www.OpenSSL.org/)" + +THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY +EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2014, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2015, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2016, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2017, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2017, the HRSS authors. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2018, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2018, Google Inc. +Copyright (c) 2020, Arm Ltd. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2019, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2020, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2021, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2022, Google Inc. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted, provided that the above +copyright notice and this permission notice appear in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION +OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +-------------------------------------------------------------------------------- +boringssl + +Copyright (c) 2022, Robert Nagy + +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 2010 The Chromium Authors +Use of this source code is governed by a BSD-style license that can be +found in the LICENSE file +-------------------------------------------------------------------------------- +boringssl + +Copyright 2011 The Chromium Authors +Use of this source code is governed by a BSD-style license that can be +found in the LICENSE file +-------------------------------------------------------------------------------- +boringssl + +Copyright 2012 The Chromium Authors +Use of this source code is governed by a BSD-style license that can be +found in the LICENSE file +-------------------------------------------------------------------------------- +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 The Chromium Authors +Use of this source code is governed by a BSD-style license that can be +found in the LICENSE file +-------------------------------------------------------------------------------- +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 The Chromium Authors +Use of this source code is governed by a BSD-style license that can be +found in the LICENSE file +-------------------------------------------------------------------------------- +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 2016 The Chromium Authors +Use of this source code is governed by a BSD-style license that can be +found in the LICENSE file +-------------------------------------------------------------------------------- +boringssl + +Copyright 2017 The Chromium Authors +Use of this source code is governed by a BSD-style license that can be +found in the LICENSE file +-------------------------------------------------------------------------------- +boringssl + +Copyright 2019 The Chromium Authors +Use of this source code is governed by a BSD-style license that can be +found in the LICENSE file +-------------------------------------------------------------------------------- +boringssl + +Copyright 2022 The Chromium Authors +Use of this source code is governed by a BSD-style license that can be +found in the LICENSE file +-------------------------------------------------------------------------------- +boringssl + +Copyright 2023 The Chromium Authors +Use of this source code is governed by a BSD-style license that can be +found in the LICENSE file +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +cached_network_image +cached_network_image_platform_interface +cached_network_image_web + + +The MIT License (MIT) + +Copyright (c) 2018 Rene Floor + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +-------------------------------------------------------------------------------- +ceval + +Copyright (c) 2021 e_t + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +-------------------------------------------------------------------------------- +characters +ffi + +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. + +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +client_id_generator +lava_core +lava_device +lava_device_control +lava_logger +lava_theme +wcp + +TODO: Add your license here. + +-------------------------------------------------------------------------------- +clock +decimal +fake_async +rational + + + 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. +-------------------------------------------------------------------------------- +common_utils + +BSD 2-Clause License + +Copyright (c) 2018, Sky24n +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must 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. + +-------------------------------------------------------------------------------- +connectivity_plus +device_info_plus +device_info_plus_platform_interface +package_info_plus +package_info_plus_platform_interface + +Copyright 2017 The Chromium Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- +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 +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. + +-------------------------------------------------------------------------------- +cpu_features + +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. + + +For files in the `ndk_compat` folder: + + +Copyright (C) 2010 The Android Open Source 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. +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. +-------------------------------------------------------------------------------- +cpu_features + +Copyright (C) 2010 The Android Open Source 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. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT +OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. +-------------------------------------------------------------------------------- +cross_file +flutter_lints +flutter_plugin_android_lifecycle +multicast_dns +path_provider +path_provider_android +path_provider_foundation +path_provider_linux +path_provider_platform_interface +path_provider_windows +plugin_platform_interface +shared_preferences +shared_preferences_android +shared_preferences_foundation +shared_preferences_linux +shared_preferences_platform_interface +shared_preferences_web +shared_preferences_windows +vector_graphics +vector_graphics_codec +vector_graphics_compiler +video_player +video_player_android +video_player_avfoundation +video_player_platform_interface +video_player_web +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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +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 (c) 2024, 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) 2024, 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 + +Mozilla Public License Version 2.0 +================================== + +1. Definitions +-------------- + +1.1. "Contributor" + means each individual or legal entity that creates, contributes to + the creation of, or owns Covered Software. + +1.2. "Contributor Version" + means the combination of the Contributions of others (if any) used + by a Contributor and that particular Contributor's Contribution. + +1.3. "Contribution" + means Covered Software of a particular Contributor. + +1.4. "Covered Software" + means Source Code Form to which the initial Contributor has attached + the notice in Exhibit A, the Executable Form of such Source Code + Form, and Modifications of such Source Code Form, in each case + including portions thereof. + +1.5. "Incompatible With Secondary Licenses" + means + + (a) that the initial Contributor has attached the notice described + in Exhibit B to the Covered Software; or + + (b) that the Covered Software was made available under the terms of + version 1.1 or earlier of the License, but not also under the + terms of a Secondary License. + +1.6. "Executable Form" + means any form of the work other than Source Code Form. + +1.7. "Larger Work" + means a work that combines Covered Software with other material, in + a separate file or files, that is not Covered Software. + +1.8. "License" + means this document. + +1.9. "Licensable" + means having the right to grant, to the maximum extent possible, + whether at the time of the initial grant or subsequently, any and + all of the rights conveyed by this License. + +1.10. "Modifications" + means any of the following: + + (a) any file in Source Code Form that results from an addition to, + deletion from, or modification of the contents of Covered + Software; or + + (b) any new file in Source Code Form that contains any Covered + Software. + +1.11. "Patent Claims" of a Contributor + means any patent claim(s), including without limitation, method, + process, and apparatus claims, in any patent Licensable by such + Contributor that would be infringed, but for the grant of the + License, by the making, using, selling, offering for sale, having + made, import, or transfer of either its Contributions or its + Contributor Version. + +1.12. "Secondary License" + means either the GNU General Public License, Version 2.0, the GNU + Lesser General Public License, Version 2.1, the GNU Affero General + Public License, Version 3.0, or any later versions of those + licenses. + +1.13. "Source Code Form" + means the form of the work preferred for making modifications. + +1.14. "You" (or "Your") + means an individual or a legal entity exercising rights under this + License. For legal entities, "You" includes any entity that + controls, is controlled by, or is under common control with You. For + purposes of this definition, "control" means (a) the power, direct + or indirect, to cause the direction or management of such entity, + whether by contract or otherwise, or (b) ownership of more than + fifty percent (50%) of the outstanding shares or beneficial + ownership of such entity. + +2. License Grants and Conditions +-------------------------------- + +2.1. Grants + +Each Contributor hereby grants You a world-wide, royalty-free, +non-exclusive license: + +(a) under intellectual property rights (other than patent or trademark) + Licensable by such Contributor to use, reproduce, make available, + modify, display, perform, distribute, and otherwise exploit its + Contributions, either on an unmodified basis, with Modifications, or + as part of a Larger Work; and + +(b) under Patent Claims of such Contributor to make, use, sell, offer + for sale, have made, import, and otherwise transfer either its + Contributions or its Contributor Version. + +2.2. Effective Date + +The licenses granted in Section 2.1 with respect to any Contribution +become effective for each Contribution on the date the Contributor first +distributes such Contribution. + +2.3. Limitations on Grant Scope + +The licenses granted in this Section 2 are the only rights granted under +this License. No additional rights or licenses will be implied from the +distribution or licensing of Covered Software under this License. +Notwithstanding Section 2.1(b) above, no patent license is granted by a +Contributor: + +(a) for any code that a Contributor has removed from Covered Software; + or + +(b) for infringements caused by: (i) Your and any other third party's + modifications of Covered Software, or (ii) the combination of its + Contributions with other software (except as part of its Contributor + Version); or + +(c) under Patent Claims infringed by Covered Software in the absence of + its Contributions. + +This License does not grant any rights in the trademarks, service marks, +or logos of any Contributor (except as may be necessary to comply with +the notice requirements in Section 3.4). + +2.4. Subsequent Licenses + +No Contributor makes additional grants as a result of Your choice to +distribute the Covered Software under a subsequent version of this +License (see Section 10.2) or under the terms of a Secondary License (if +permitted under the terms of Section 3.3). + +2.5. Representation + +Each Contributor represents that the Contributor believes its +Contributions are its original creation(s) or it has sufficient rights +to grant the rights to its Contributions conveyed by this License. + +2.6. Fair Use + +This License is not intended to limit any rights You have under +applicable copyright doctrines of fair use, fair dealing, or other +equivalents. + +2.7. Conditions + +Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted +in Section 2.1. + +3. Responsibilities +------------------- + +3.1. Distribution of Source Form + +All distribution of Covered Software in Source Code Form, including any +Modifications that You create or to which You contribute, must be under +the terms of this License. You must inform recipients that the Source +Code Form of the Covered Software is governed by the terms of this +License, and how they can obtain a copy of this License. You may not +attempt to alter or restrict the recipients' rights in the Source Code +Form. + +3.2. Distribution of Executable Form + +If You distribute Covered Software in Executable Form then: + +(a) such Covered Software must also be made available in Source Code + Form, as described in Section 3.1, and You must inform recipients of + the Executable Form how they can obtain a copy of such Source Code + Form by reasonable means in a timely manner, at a charge no more + than the cost of distribution to the recipient; and + +(b) You may distribute such Executable Form under the terms of this + License, or sublicense it under different terms, provided that the + license for the Executable Form does not attempt to limit or alter + the recipients' rights in the Source Code Form under this License. + +3.3. Distribution of a Larger Work + +You may create and distribute a Larger Work under terms of Your choice, +provided that You also comply with the requirements of this License for +the Covered Software. If the Larger Work is a combination of Covered +Software with a work governed by one or more Secondary Licenses, and the +Covered Software is not Incompatible With Secondary Licenses, this +License permits You to additionally distribute such Covered Software +under the terms of such Secondary License(s), so that the recipient of +the Larger Work may, at their option, further distribute the Covered +Software under the terms of either this License or such Secondary +License(s). + +3.4. Notices + +You may not remove or alter the substance of any license notices +(including copyright notices, patent notices, disclaimers of warranty, +or limitations of liability) contained within the Source Code Form of +the Covered Software, except that You may alter any license notices to +the extent required to remedy known factual inaccuracies. + +3.5. Application of Additional Terms + +You may choose to offer, and to charge a fee for, warranty, support, +indemnity or liability obligations to one or more recipients of Covered +Software. However, You may do so only on Your own behalf, and not on +behalf of any Contributor. You must make it absolutely clear that any +such warranty, support, indemnity, or liability obligation is offered by +You alone, and You hereby agree to indemnify every Contributor for any +liability incurred by such Contributor as a result of warranty, support, +indemnity or liability terms You offer. You may include additional +disclaimers of warranty and limitations of liability specific to any +jurisdiction. + +4. Inability to Comply Due to Statute or Regulation +--------------------------------------------------- + +If it is impossible for You to comply with any of the terms of this +License with respect to some or all of the Covered Software due to +statute, judicial order, or regulation then You must: (a) comply with +the terms of this License to the maximum extent possible; and (b) +describe the limitations and the code they affect. Such description must +be placed in a text file included with all distributions of the Covered +Software under this License. Except to the extent prohibited by statute +or regulation, such description must be sufficiently detailed for a +recipient of ordinary skill to be able to understand it. + +5. Termination +-------------- + +5.1. The rights granted under this License will terminate automatically +if You fail to comply with any of its terms. However, if You become +compliant, then the rights granted under this License from a particular +Contributor are reinstated (a) provisionally, unless and until such +Contributor explicitly and finally terminates Your grants, and (b) on an +ongoing basis, if such Contributor fails to notify You of the +non-compliance by some reasonable means prior to 60 days after You have +come back into compliance. Moreover, Your grants from a particular +Contributor are reinstated on an ongoing basis if such Contributor +notifies You of the non-compliance by some reasonable means, this is the +first time You have received notice of non-compliance with this License +from such Contributor, and You become compliant prior to 30 days after +Your receipt of the notice. + +5.2. If You initiate litigation against any entity by asserting a patent +infringement claim (excluding declaratory judgment actions, +counter-claims, and cross-claims) alleging that a Contributor Version +directly or indirectly infringes any patent, then the rights granted to +You by any and all Contributors for the Covered Software under Section +2.1 of this License shall terminate. + +5.3. In the event of termination under Sections 5.1 or 5.2 above, all +end user license agreements (excluding distributors and resellers) which +have been validly granted by You or Your distributors under this License +prior to termination shall survive termination. + +************************************************************************ +* * +* 6. Disclaimer of Warranty * +* ------------------------- * +* * +* Covered Software is provided under this License on an "as is" * +* basis, without warranty of any kind, either expressed, implied, or * +* statutory, including, without limitation, warranties that the * +* Covered Software is free of defects, merchantable, fit for a * +* particular purpose or non-infringing. The entire risk as to the * +* quality and performance of the Covered Software is with You. * +* Should any Covered Software prove defective in any respect, You * +* (not any Contributor) assume the cost of any necessary servicing, * +* repair, or correction. This disclaimer of warranty constitutes an * +* essential part of this License. No use of any Covered Software is * +* authorized under this License except under this disclaimer. * +* * +************************************************************************ + +************************************************************************ +* * +* 7. Limitation of Liability * +* -------------------------- * +* * +* Under no circumstances and under no legal theory, whether tort * +* (including negligence), contract, or otherwise, shall any * +* Contributor, or anyone who distributes Covered Software as * +* permitted above, be liable to You for any direct, indirect, * +* special, incidental, or consequential damages of any character * +* including, without limitation, damages for lost profits, loss of * +* goodwill, work stoppage, computer failure or malfunction, or any * +* and all other commercial damages or losses, even if such party * +* shall have been informed of the possibility of such damages. This * +* limitation of liability shall not apply to liability for death or * +* personal injury resulting from such party's negligence to the * +* extent applicable law prohibits such limitation. Some * +* jurisdictions do not allow the exclusion or limitation of * +* incidental or consequential damages, so this exclusion and * +* limitation may not apply to You. * +* * +************************************************************************ + +8. Litigation +------------- + +Any litigation relating to this License may be brought only in the +courts of a jurisdiction where the defendant maintains its principal +place of business and such litigation shall be governed by laws of that +jurisdiction, without reference to its conflict-of-law provisions. +Nothing in this Section shall prevent a party's ability to bring +cross-claims or counter-claims. + +9. Miscellaneous +---------------- + +This License represents the complete agreement concerning the subject +matter hereof. If any provision of this License is held to be +unenforceable, such provision shall be reformed only to the extent +necessary to make it enforceable. Any law or regulation which provides +that the language of a contract shall be construed against the drafter +shall not be used to construe this License against a Contributor. + +10. Versions of the License +--------------------------- + +10.1. New Versions + +Mozilla Foundation is the license steward. Except as provided in Section +10.3, no one other than the license steward has the right to modify or +publish new versions of this License. Each version will be given a +distinguishing version number. + +10.2. Effect of New Versions + +You may distribute the Covered Software under the terms of the version +of the License under which You originally received the Covered Software, +or under the terms of any subsequent version published by the license +steward. + +10.3. Modified Versions + +If you create software not governed by this License, and you want to +create a new license for such software, you may create and use a +modified version of this License if you rename the license and remove +any references to the name of the license steward (except to note that +such modified license differs from this License). + +10.4. Distributing Source Code Form that is Incompatible With Secondary +Licenses + +If You choose to distribute Source Code Form that is Incompatible With +Secondary Licenses under the terms of this version of the License, the +notice described in Exhibit B of this License must be attached. + +Exhibit A - Source Code Form License Notice +------------------------------------------- + + This Source Code Form is subject to the terms of the Mozilla Public + License, v. 2.0. If a copy of the MPL was not distributed with this + file, You can obtain one at http://mozilla.org/MPL/2.0/. + +If it is not possible or desirable to put the notice in a particular +file, then You may include the notice in a location (such as a LICENSE +file in a relevant directory) where a recipient would be likely to look +for such a notice. + +You may add additional accurate notices of copyright ownership. + +Exhibit B - "Incompatible With Secondary Licenses" Notice +--------------------------------------------------------- + + This Source Code Form is "Incompatible With Secondary Licenses", as + defined by the Mozilla Public License, v. 2.0. + +-------------------------------------------------------------------------------- +dio +dio_web_adapter + +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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +dropdown_button2 + +MIT License + +Copyright (c) 2021 AHMED ELSAYED + +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_loading_button + +The MIT License (MIT) + +Copyright (c) 2022 Useful 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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +easy_sidemenu + +MIT License + +Copyright (c) 2021 Mohammad Jamalianpour + +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. +-------------------------------------------------------------------------------- +engine + +License for the Ahem font embedded below is from: +https://www.w3.org/Style/CSS/Test/Fonts/Ahem/COPYING + +The Ahem font in this directory belongs to the public domain. In +jurisdictions that do not recognize public domain ownership of these +files, the following Creative Commons Zero declaration applies: + + + +which is quoted below: + + The person who has associated a work with this document (the "Work") + affirms that he or she (the "Affirmer") is the/an author or owner of + the Work. The Work may be any work of authorship, including a + database. + + The Affirmer hereby fully, permanently and irrevocably waives and + relinquishes all of her or his copyright and related or neighboring + legal rights in the Work available under any federal or state law, + treaty or contract, including but not limited to moral rights, + publicity and privacy rights, rights protecting against unfair + competition and any rights protecting the extraction, dissemination + and reuse of data, whether such rights are present or future, vested + or contingent (the "Waiver"). The Affirmer makes the Waiver for the + benefit of the public at large and to the detriment of the Affirmer's + heirs or successors. + + The Affirmer understands and intends that the Waiver has the effect + of eliminating and entirely removing from the Affirmer's control all + the copyright and related or neighboring legal rights previously held + by the Affirmer in the Work, to that extent making the Work freely + available to the public for any and all uses and purposes without + restriction of any kind, including commercial use and uses in media + and formats or by methods that have not yet been invented or + conceived. Should the Waiver for any reason be judged legally + ineffective in any jurisdiction, the Affirmer hereby grants a free, + full, permanent, irrevocable, nonexclusive and worldwide license for + all her or his copyright and related or neighboring legal rights in + the Work. +-------------------------------------------------------------------------------- +etc_decoder + +Copyright (c) 2020-2022 Hans-Kristian Arntzen + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +-------------------------------------------------------------------------------- +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/+/ffc8bb004a64f6357e3d5d1185e974e966f00931 +/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. +-------------------------------------------------------------------------------- +fixnum +stack_trace + +Copyright 2014, the Dart project authors. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above + copyright notice, this list of conditions and the following + disclaimer in the documentation and/or other materials provided + with the distribution. + * Neither the name of Google LLC nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- +flatbuffers + +Apache License +Version 2.0, January 2004 +http://www.apache.org/licenses/ + +TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + +1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + +2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + +3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + +4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + +5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + +6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + +7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + +8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + +9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + +END OF TERMS AND CONDITIONS + +APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + +Copyright 2014 Google Inc. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +-------------------------------------------------------------------------------- +flustars + +BSD 2-Clause License + +Copyright (c) 2018, Sky24n +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must 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. + +-------------------------------------------------------------------------------- +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_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_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_popup + +MIT License + +Copyright (c) 2023 mopriestt + +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_smart_dialog + +MIT License + +Copyright (c) 2023 小呆呆666 + +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_verification_code + + 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 (c) 2023 AgoraDesk / LocalMonero + + 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. + + +-------------------------------------------------------------------------------- +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".) +-------------------------------------------------------------------------------- +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 + +Copyright 2024 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. +-------------------------------------------------------------------------------- +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) 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-2013 LunarG, Inc. +Copyright (C) 2017, 2022-2024 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, 2022-2024 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-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, 2022-2024 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, 2022-2024 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. +Copyright (c) 2023, Mobica 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) 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. +Copyright (C) 2022-2024 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) 2015-2020 Google, Inc. +Copyright (C) 2017, 2022-2024 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, 2022-2024 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 Google, Inc. +Copyright (C) 2022-2024 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 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. +Copyright (C) 2023 Mobica 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 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 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) 2023 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, 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. +Copyright (C) 2022-2024 Arm Limited. +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) 2021 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) 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. +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +http +http_parser +matcher +path +source_span +string_scanner + +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. + +-------------------------------------------------------------------------------- +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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise to 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or otherwise 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 data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising or 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 LICENSE V3 + +COPYRIGHT AND PERMISSION NOTICE + +Copyright © 2016-2023 Unicode, Inc. + +NOTICE TO USER: Carefully read the following legal agreement. BY +DOWNLOADING, INSTALLING, COPYING OR OTHERWISE USING DATA FILES, AND/OR +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. + +Permission is hereby granted, free of charge, to any person obtaining a +copy of data files and any associated documentation (the "Data Files") or +software and any associated documentation (the "Software") to deal in the +Data Files or Software without restriction, including without limitation +the rights to use, copy, modify, merge, publish, distribute, and/or sell +copies of the Data Files or Software, and to permit persons to whom the +Data Files or Software are furnished to do so, provided that either (a) +this copyright and permission notice appear with all copies of the Data +Files or Software, or (b) this copyright and permission notice appear in +associated Documentation. + +THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY +KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF +THIRD PARTY RIGHTS. + +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE +BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, +OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA +FILES OR SOFTWARE. + +Except as contained in this notice, the name of a copyright holder shall +not be used in advertising 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. +-------------------------------------------------------------------------------- +idb_shim + +BSD 2-Clause License + +Copyright (c) 2014, alextekartik +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must 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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +lava_dialog + +MIT License + +Copyright (c) 2025 Snapmaker + +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. + + + +-------------------------------------------------------------------------------- +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-2024 The PNG Reference Library Authors. +* Copyright (c) 2018-2024 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. + +-------------------------------------------------------------------------------- +loading_animation_widget + +BSD 3-Clause License + +Copyright (c) 2021, Watery Desert +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. + +-------------------------------------------------------------------------------- +material_color_utilities + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 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. + +-------------------------------------------------------------------------------- +mqtt5_client + +MIT License + +Copyright (c) 2017 Steve Hamblett + +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. + + +<<< License for using the included Observable code >>> +------------------------------------------------------ + +Copyright 2016, 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. + +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +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 +open_file_android +open_file_ios +open_file_linux +open_file_mac +open_file_platform_interface +open_file_web +open_file_windows + +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. +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +pinput + +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. +-------------------------------------------------------------------------------- +pkg + +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. +-------------------------------------------------------------------------------- +pkg + +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. +-------------------------------------------------------------------------------- +pkg + +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. +-------------------------------------------------------------------------------- +pkg + +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. +-------------------------------------------------------------------------------- +pkg + +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. +-------------------------------------------------------------------------------- +pkg + +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. +-------------------------------------------------------------------------------- +pkg + +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. +-------------------------------------------------------------------------------- +pkg + +Copyright 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. +-------------------------------------------------------------------------------- +pkg + +Copyright 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. +-------------------------------------------------------------------------------- +platform + +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. + +-------------------------------------------------------------------------------- +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_dio_logger + + +MIT License + +Copyright (c) 2019 Milad Akarie + +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. + +-------------------------------------------------------------------------------- +pull_to_refresh + +MIT License + +Copyright (c) 2018 Jpeng + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +-------------------------------------------------------------------------------- +rapidjson + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip-> All rights reserved-> + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +-------------------------------------------------------------------------------- +rapidjson + +Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved. + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +-------------------------------------------------------------------------------- +rapidjson + +Copyright (c) 2006-2013 Alexander Chemeris + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the product nor the names of its contributors may + be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +rapidjson + +The above software in this distribution may have been modified by +THL A29 Limited ("Tencent Modifications"). +All Tencent Modifications are Copyright (C) 2015 THL A29 Limited. +-------------------------------------------------------------------------------- +rxdart + + 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. + +-------------------------------------------------------------------------------- +saver_gallery + +MIT License + +Copyright (c) [2018] [xuqiangqiang] + +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. + +-------------------------------------------------------------------------------- +sembast + +Copyright (c) 2020, 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. + +* Neither the name of tekartik_iodb.dart nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, 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. + + +-------------------------------------------------------------------------------- +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 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 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. +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +skia + +Copyright 2024 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. +-------------------------------------------------------------------------------- +sp_util + +BSD 3-Clause License + +Copyright (c) 2020, Sky24n +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. + +-------------------------------------------------------------------------------- +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_android +sqflite_common +sqflite_darwin +sqflite_platform_interface + +BSD 2-Clause License + +Copyright (c) 2019, Alexandre Roux Tekartik +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-------------------------------------------------------------------------------- +sqlite + +The source code for SQLite is in the public domain. No claim of +copyright is made on any part of the core source code. (The +documentation and test code is a different matter - some sections of +documentation and test logic are governed by open-source licenses.) +All contributors to the SQLite core software have signed affidavits +specifically disavowing any copyright interest in the code. This means +that anybody is able to legally do anything they want with the SQLite +source code. + +There are other SQL database engines with liberal licenses that allow +the code to be broadly and freely used. But those other engines are +still governed by copyright law. SQLite is different in that copyright +law simply does not apply. + +The source code files for other SQL database engines typically begin +with a comment describing your legal rights to view and copy that +file. The SQLite source code contains no license since it is not +governed by copyright. Instead of a license, the SQLite source code +offers a blessing: + +May you do good and not evil +May you find forgiveness for yourself and forgive others +May you share freely, never taking more than you give. +-------------------------------------------------------------------------------- +synchronized + +MIT License + +Copyright (c) 2016, Alexandre Roux Tekartik. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +test_api + +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. + +-------------------------------------------------------------------------------- +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. + +-------------------------------------------------------------------------------- +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 + +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. + + + +File: layers/external/vma/vk_mem_alloc.h + + +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. +-------------------------------------------------------------------------------- +vulkan-validation-layers + +Copyright (C) 2012-2021 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_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. +-------------------------------------------------------------------------------- +web_socket + +Copyright 2024, 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_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. + +-------------------------------------------------------------------------------- +win32 + +BSD 3-Clause License + +Copyright (c) 2024, 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. + +-------------------------------------------------------------------------------- +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. +-------------------------------------------------------------------------------- +zlib + +Copyright (C) 1995-2023 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/resources/web/flutter_web/assets/assets/files/accountDeletionAgreement.json b/resources/web/flutter_web/assets/assets/files/accountDeletionAgreement.json new file mode 100644 index 0000000000..ff6a027b6f --- /dev/null +++ b/resources/web/flutter_web/assets/assets/files/accountDeletionAgreement.json @@ -0,0 +1,6 @@ +{ + "data": "2025-02-21T15:30:46", + "version": "1.0.0", + "title": "Account Deletion Agreement", + "content": "\n

Account Deletion Agreement

\n

1. Scope of the Agreement

\n

This Account Deletion Agreement (hereinafter referred to as the \"Agreement\") applies to the deletion of your registered account on Snapmaker Websites (e.g., snapmaker.com, Snapmaker Store) and the Snapmaker mobile applications. By deleting your account, you agree to comply with the terms of this Agreement.

\n\n

2. Application for Account Deletion

\n

You can apply to delete your Snapmaker account in the following ways:

\n
    \n
  • Log in to the Snapmaker website or mobile applications, go to the account settings page, and select the \"Delete Account\" option.
  • \n
  • Contact the Snapmaker customer service team, provide your account information for identity verification, and request deletion.
  • \n
\n\n

3. Processing of Account Deletion

\n

Once you submit a deletion request, Snapmaker will process your request within a reasonable time after receiving it. After the account is deleted, you will no longer have access to any products, services, or data associated with that account.

\n\n

4. Impact of Account Deletion

\n

After deleting your account, you will lose access to all information and data within the account, including but not limited to purchase history, device information, and any user-generated content.

\n

After account deletion, Snapmaker will handle your personal data in accordance with the Privacy Policy. We will retain necessary personal data to comply with legal requirements or to prevent fraud, as permitted by law.

\n\n

5. Account Recovery

\n

Please note that once the account is deleted, you will not be able to recover the account and its related data. If you wish to use Snapmaker products and services again, you will need to register for a new account.

\n\n

6. Disclaimer

\n

Snapmaker shall not be liable for any losses or inconveniences resulting from the account deletion. You should ensure that you back up all important information and data before deleting your account.

\n\n

7. Modification of the Agreement

\n

Snapmaker reserves the right to modify this Agreement at any time. In the event of significant changes, we will notify you via email and Snapmaker mobile applications or through a notice on our website. Please regularly review this Agreement to stay informed of the latest terms.

\n " +} \ No newline at end of file diff --git a/resources/web/flutter_web/assets/assets/files/accountDeletionAgreementZh.json b/resources/web/flutter_web/assets/assets/files/accountDeletionAgreementZh.json new file mode 100644 index 0000000000..24cca63a70 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/files/accountDeletionAgreementZh.json @@ -0,0 +1,6 @@ +{ + "data": "2025-02-21T15:30:46", + "version": "1.0.0", + "title": "账号注销协议", + "content": "\n

账号注销协议

\n

1. 协议的适用范围

\n

本《账号注销协议》(以下简称“协议”)适用于您注销在 Snapmaker 网站(如 snapmaker.com、Snapmaker Store)及 Snapmaker 移动应用程序中注册的账户。通过注销账户,您同意遵守本协议的条款。

\n \n

2. 注销账户的申请

\n

您可以通过以下方式申请注销您的 Snapmaker 账户:

\n
    \n
  • 登录 Snapmaker 网站或移动应用程序,访问账户设置页面,选择“注销账户”选项。
  • \n
  • 联系 Snapmaker 客户服务团队,提供您的账户信息以验证身份,并请求注销。
  • \n
\n\n

3. 注销账户的处理

\n

一旦您提交注销申请,Snapmaker 将在收到申请后的合理时间内处理您的请求。注销账户后,您将无法再访问与该账户相关的产品、服务及数据。

\n\n

4. 注销后的影响

\n

注销账户后,您将失去对账户内所有信息和数据的访问权限,包括但不限于购买记录、设备信息及任何用户生成的内容。

\n

Snapmaker 将根据《隐私政策》的规定处理您的个人数据。我们将在法律允许的范围内保留必要的个人数据以满足法律要求或防止欺诈。

\n\n

5. 账户恢复

\n

请注意,一旦账户被注销,您将无法恢复该账户及其相关数据。如果您希望再次使用 Snapmaker 产品和服务,您需要重新注册一个新账户。

\n\n

6. 免责声明

\n

Snapmaker 对于因账户注销而导致的任何损失或不便不承担责任。您在注销账户前应确保备份所有重要信息和数据。

\n\n

7. 协议的修改

\n

Snapmaker 保留随时修改本协议的权利。若有重大变更,我们将在 Snapmaker 网站上发布或通过电子邮件与 Snapmaker 移动应用程序通知用户。请定期查阅本协议以了解最新条款。

\n " +} \ No newline at end of file diff --git a/resources/web/flutter_web/assets/assets/files/deviceError.json b/resources/web/flutter_web/assets/assets/files/deviceError.json new file mode 100644 index 0000000000..1f7e75e129 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/files/deviceError.json @@ -0,0 +1,582 @@ +{ + "en": [ + { + "ecode": "03004000", + "intro": "Homing Z axis failed." + }, + { + "ecode": "03004001", + "intro": "The printer timed out waiting for the nozzle to cool down before homing." + }, + { + "ecode": "03004002", + "intro": "Mesh bed leveling failed." + }, + { + "ecode": "03004003", + "intro": "Nozzle temperature malfunction." + }, + { + "ecode": "03004004", + "intro": "Heatbed temperature malfunction." + }, + { + "ecode": "03004005", + "intro": "The heatbreak fan speed is abnormal." + }, + { + "ecode": "03004006", + "intro": "The nozzle is clogged." + }, + { + "ecode": "03004008", + "intro": "The AMS failed to change filament." + }, + { + "ecode": "03004009", + "intro": "Homing XY axis failed." + }, + { + "ecode": "0300400A", + "intro": "Mechanical resonance mode identification failed." + }, + { + "ecode": "0300400B", + "intro": "Internal communication exception." + }, + { + "ecode": "0300400C", + "intro": "Printing was cancelled." + }, + { + "ecode": "0300400D", + "intro": "Resume failed after power loss." + }, + { + "ecode": "03008000", + "intro": "Printing was paused for unknown reason. You can click resume icon to resume the print job." + }, + { + "ecode": "03008001", + "intro": "Printing was paused by the user. You can click resume icon to resume the print job." + }, + { + "ecode": "03008002", + "intro": "Obvious defects were detected in the first layer. If the defects are acceptable, click resume icon to resume the print job." + }, + { + "ecode": "03008003", + "intro": "A possible printing failure was detected. If the defects are acceptable, click resume icon to resume the print job." + }, + { + "ecode": "03008004", + "intro": "The filament ran out. Please load new filament in Temperature/Axis and click resume icon to resume the print job." + }, + { + "ecode": "03008005", + "intro": "Printing was paused because the front cover of tool head fell. Please mount it back and click resume icon to resume the print job." + }, + { + "ecode": "03008006", + "intro": "The build plate is not the same as that is in G-code. Please change to other plate and click resume icon to resume the print job." + }, + { + "ecode": "05004001", + "intro": "Failed to connect to Bambu Cloud. Please check your network connection." + }, + { + "ecode": "05004002", + "intro": "Unable to parse the received print job. Please update the firmware to the latest version and try again." + }, + { + "ecode": "05004003", + "intro": "There was a problem parsing gcode.3mf. Please resend the printing job." + }, + { + "ecode": "05004004", + "intro": "Printing jobs are not allowed to be sent while printing." + }, + { + "ecode": "05004005", + "intro": "Print jobs are not allowed to be sent while updating firmware." + }, + { + "ecode": "05004006", + "intro": "There is not enough free storage space for the print job. Restoring to factory settings can release available space." + }, + { + "ecode": "05004007", + "intro": "Printing jobs are not allowed to be send while force upgrading or repair upgrading is required." + }, + { + "ecode": "05004008", + "intro": "Starting printing failed. please power cycle the printer and resend the print job." + }, + { + "ecode": "07008001", + "intro": "Failed to cut the filament. Please check the cutter. After troubleshooting, click the retry button." + }, + { + "ecode": "07008002", + "intro": "The cutter is stuck. Please pull out the cutter handle and click the retry button." + }, + { + "ecode": "07008003", + "intro": "Failed to pull out the filament from the extruder. Please check whether the nozzle is clogged or whether the the filament is broken inside extruder. After troubleshooting, click the retry button." + }, + { + "ecode": "07008004", + "intro": "Failed to pull back the filament to AMS. Please check whether the filament or the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07008005", + "intro": "Failed to feed the filament outside AMS. Please clean the filament tip and check whether the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07008006", + "intro": "Failed to feed the filament into the toolhead. Please check whether the filament or the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07008007", + "intro": "" + }, + { + "ecode": "07008010", + "intro": "" + }, + { + "ecode": "07008011", + "intro": "AMS filament ran out. Please put a new filament into AMS, loosen the PTFE tube connector behind the printer, pull out the old filament, reinstall the PTFE tube connector and click the retry button." + }, + { + "ecode": "07018001", + "intro": "Failed to cut the filament. Please check the cutter. After troubleshooting, click the retry button." + }, + { + "ecode": "07018002", + "intro": "The cutter is stuck. Please pull out the cutter handle and click the retry button." + }, + { + "ecode": "07018003", + "intro": "Failed to pull out the filament from the extruder. Please check whether the nozzle is clogged or whether the the filament is broken inside extruder. After troubleshooting, click the retry button." + }, + { + "ecode": "07018004", + "intro": "Failed to pull back the filament to AMS. Please check whether the filament or the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07018005", + "intro": "Failed to feed the filament outside AMS. Please clean the filament tip and check whether the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07018006", + "intro": "Failed to feed the filament into the toolhead. Please check whether the filament or the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07018007", + "intro": "" + }, + { + "ecode": "07018010", + "intro": "" + }, + { + "ecode": "07018011", + "intro": "AMS filament ran out. Please put a new filament into AMS, loosen the PTFE tube connector behind the printer, pull out the old filament, reinstall the PTFE tube connector and click the retry button." + }, + { + "ecode": "07028001", + "intro": "Failed to cut the filament. Please check the cutter. After troubleshooting, click the retry button." + }, + { + "ecode": "07028002", + "intro": "The cutter is stuck. Please pull out the cutter handle and click the retry button." + }, + { + "ecode": "07028003", + "intro": "Failed to pull out the filament from the extruder. Please check whether the nozzle is clogged or whether the the filament is broken inside extruder. After troubleshooting, click the retry button." + }, + { + "ecode": "07028004", + "intro": "Failed to pull back the filament to AMS. Please check whether the filament or the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07028005", + "intro": "Failed to feed the filament outside AMS. Please clean the filament tip and check whether the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07028006", + "intro": "Failed to feed the filament into the toolhead. Please check whether the filament or the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07028007", + "intro": "" + }, + { + "ecode": "07028010", + "intro": "" + }, + { + "ecode": "07028011", + "intro": "AMS filament ran out. Please put a new filament into AMS, loosen the PTFE tube connector behind the printer, pull out the old filament, reinstall the PTFE tube connector and click the retry button." + }, + { + "ecode": "07038001", + "intro": "Failed to cut the filament. Please check the cutter. After troubleshooting, click the retry button." + }, + { + "ecode": "07038002", + "intro": "The cutter is stuck. Please pull out the cutter handle and click the retry button." + }, + { + "ecode": "07038003", + "intro": "Failed to pull out the filament from the extruder. Please check whether the nozzle is clogged or whether the the filament is broken inside extruder. After troubleshooting, click the retry button." + }, + { + "ecode": "07038004", + "intro": "Failed to pull back the filament to AMS. Please check whether the filament or the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07038005", + "intro": "Failed to feed the filament outside AMS. Please clean the filament tip and check whether the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07038006", + "intro": "Failed to feed the filament into the toolhead. Please check whether the filament or the spool is stuck. After troubleshooting, click the retry button." + }, + { + "ecode": "07038007", + "intro": "" + }, + { + "ecode": "07038010", + "intro": "" + }, + { + "ecode": "07038011", + "intro": "AMS filament ran out. Please put a new filament into AMS, loosen the PTFE tube connector behind the printer, pull out the old filament, reinstall the PTFE tube connector and click the retry button." + }, + { + "ecode": "0C008001", + "intro": "Obvious defects were detected in the first layer. If the defects are acceptable, click resume icon to resume the print job." + }, + { + "ecode": "0C008002", + "intro": "Spaghetti failure was detected." + }, + { + "ecode": "0C00C003", + "intro": "Possible defects were detected in the first layer." + }, + { + "ecode": "0C00C004", + "intro": "Possible spaghetti failure was detected." + }, + { + "ecode": "03008007", + "intro": "There is unfinished print job when power off, click resume icon to resume the print job." + }, + { + "ecode": "03008008", + "intro": "Nozzle temperature malfunction." + }, + { + "ecode": "03008009", + "intro": "Heatbed temperature malfunction." + }, + { + "ecode": "05004009", + "intro": "Print jobs are not allowed to be sent while updating logs." + } + ], + "zh-cn": [ + { + "ecode": "03004000", + "intro": "Z轴回零失败。" + }, + { + "ecode": "03004001", + "intro": "工具头降温超时。" + }, + { + "ecode": "03004002", + "intro": "热床调平失败。" + }, + { + "ecode": "03004003", + "intro": "喷嘴温度失控" + }, + { + "ecode": "03004004", + "intro": "热床温度失控" + }, + { + "ecode": "03004005", + "intro": "热端风扇转速异常。" + }, + { + "ecode": "03004006", + "intro": "热端堵头。" + }, + { + "ecode": "03004008", + "intro": "AMS换料失败。" + }, + { + "ecode": "03004009", + "intro": "XY回零失败。" + }, + { + "ecode": "0300400A", + "intro": "机械模态识别失败。" + }, + { + "ecode": "0300400B", + "intro": "内部通讯异常。" + }, + { + "ecode": "0300400C", + "intro": "打印已取消。" + }, + { + "ecode": "0300400D", + "intro": "断电续打失败。" + }, + { + "ecode": "03008000", + "intro": "未知原因暂停。你可以点击恢复图标来恢复打印。" + }, + { + "ecode": "03008001", + "intro": "用户暂停。你可以点击恢复图标来恢复打印。" + }, + { + "ecode": "03008002", + "intro": "首层检测器已暂停打印任务。如果可接受当前瑕疵,可点击恢复图标恢复打印。" + }, + { + "ecode": "03008003", + "intro": "打印故障检测器已暂停打印任务。如果可接受当前瑕疵,可点击恢复图标恢复打印。" + }, + { + "ecode": "03008004", + "intro": "打印已暂停。打印材料耗尽。可在“温度/轴移动”中加载新料后,点击恢复图标恢复打印。" + }, + { + "ecode": "03008005", + "intro": "打印已暂停。检测到前盖掉落。可在装上前盖后,点击恢复图标恢复打印。" + }, + { + "ecode": "03008006", + "intro": "检测到热床与G-code配置不一致。请更换其他热床后,点击恢复图标恢复打印。" + }, + { + "ecode": "05004001", + "intro": "无法连接服务器,请检查网络连接。" + }, + { + "ecode": "05004002", + "intro": "无法解析收到的打印指令,请更新固件到最新版本后重试。" + }, + { + "ecode": "05004003", + "intro": "解析gcode.3mf遇到问题,请重新发送打印。" + }, + { + "ecode": "05004004", + "intro": "已经在打印过程,不允许启动新的打印" + }, + { + "ecode": "05004005", + "intro": "不允许在固件更新过程中发送打印任务。" + }, + { + "ecode": "05004006", + "intro": "内部存储空间不足,可恢复出厂设置以释放所有可用空间。" + }, + { + "ecode": "05004007", + "intro": "需要修复升级和强制升级,不允许打印。" + }, + { + "ecode": "05004008", + "intro": "启动打印失败,请重启机器并重新发送打印。" + }, + { + "ecode": "07008001", + "intro": "检测到切料失败,请检查切刀,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07008002", + "intro": "检测到切刀卡住,请拨出刀柄后点击“重试”按钮。" + }, + { + "ecode": "07008003", + "intro": "料线退出挤出机失败,请检查是否发生堵头或者料线是否断在挤出机内部。排除异常后点击“重试”按钮。" + }, + { + "ecode": "07008004", + "intro": "料线退回AMS失败,请检查料线或料盘是否卡住,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07008005", + "intro": "料线送出AMS失败,请清理料头、检查料盘是否卡住后点击“重试”按钮。" + }, + { + "ecode": "07008006", + "intro": "料线送往挤出机失败,请检查料线或料盘是否卡住,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07008007", + "intro": "" + }, + { + "ecode": "07008010", + "intro": "" + }, + { + "ecode": "07008011", + "intro": "检测到AMS材料耗尽。请放新料线,松开打印机背后料管接头,拔出旧料线并装好料管接头后点击“重试”按钮。" + }, + { + "ecode": "07018001", + "intro": "检测到切料失败,请检查切刀,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07018002", + "intro": "检测到切刀卡住,请拨出刀柄后点击“重试”按钮。" + }, + { + "ecode": "07018003", + "intro": "料线退出挤出机失败,请检查是否发生堵头或者料线是否断在挤出机内部。排除异常后点击“重试”按钮。" + }, + { + "ecode": "07018004", + "intro": "料线退回AMS失败,请检查料线或料盘是否卡住,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07018005", + "intro": "料线送出AMS失败,请清理料头、检查料盘是否卡住后点击“重试”按钮。" + }, + { + "ecode": "07018006", + "intro": "料线送往挤出机失败,请检查料线或料盘是否卡住,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07018007", + "intro": "" + }, + { + "ecode": "07018010", + "intro": "" + }, + { + "ecode": "07018011", + "intro": "检测到AMS材料耗尽。请放新料线,松开打印机背后料管接头,拔出旧料线并装好料管接头后点击“重试”按钮。" + }, + { + "ecode": "07028001", + "intro": "检测到切料失败,请检查切刀,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07028002", + "intro": "检测到切刀卡住,请拨出刀柄后点击“重试”按钮。" + }, + { + "ecode": "07028003", + "intro": "料线退出挤出机失败,请检查是否发生堵头或者料线是否断在挤出机内部。排除异常后点击“重试”按钮。" + }, + { + "ecode": "07028004", + "intro": "料线退回AMS失败,请检查料线或料盘是否卡住,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07028005", + "intro": "料线送出AMS失败,请清理料头、检查料盘是否卡住后点击“重试”按钮。" + }, + { + "ecode": "07028006", + "intro": "料线送往挤出机失败,请检查料线或料盘是否卡住,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07028007", + "intro": "" + }, + { + "ecode": "07028010", + "intro": "" + }, + { + "ecode": "07028011", + "intro": "检测到AMS材料耗尽。请放新料线,松开打印机背后料管接头,拔出旧料线并装好料管接头后点击“重试”按钮。" + }, + { + "ecode": "07038001", + "intro": "检测到切料失败,请检查切刀,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07038002", + "intro": "检测到切刀卡住,请拨出刀柄后点击“重试”按钮。" + }, + { + "ecode": "07038003", + "intro": "料线退出挤出机失败,请检查是否发生堵头或者料线是否断在挤出机内部。排除异常后点击“重试”按钮。" + }, + { + "ecode": "07038004", + "intro": "料线退回AMS失败,请检查料线或料盘是否卡住,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07038005", + "intro": "料线送出AMS失败,请清理料头、检查料盘是否卡住后点击“重试”按钮。" + }, + { + "ecode": "07038006", + "intro": "料线送往挤出机失败,请检查料线或料盘是否卡住,排除异常后点击“重试”按钮。" + }, + { + "ecode": "07038007", + "intro": "" + }, + { + "ecode": "07038010", + "intro": "" + }, + { + "ecode": "07038011", + "intro": "检测到AMS材料耗尽。请放新料线,松开打印机背后料管接头,拔出旧料线并装好料管接头后点击“重试”按钮。" + }, + { + "ecode": "0C008001", + "intro": "在首层检测到明显的缺陷。如果可以接受此缺陷,可点击恢复图标恢复打印任务。" + }, + { + "ecode": "0C008002", + "intro": "检测到打印炒面问题。" + }, + { + "ecode": "0C00C003", + "intro": "检测到首层可能存在打印瑕疵。" + }, + { + "ecode": "0C00C004", + "intro": "检测到可能发生了打印炒面失败问题。" + }, + { + "ecode": "03008007", + "intro": "检测到断电时有未完成的打印任务,可点击恢复图标恢复打印。" + }, + { + "ecode": "03008008", + "intro": "喷嘴温控故障。" + }, + { + "ecode": "03008009", + "intro": "热床温控故障。" + }, + { + "ecode": "05004009", + "intro": "不允许在日志上传过程中发送打印任务。" + } + ] +} \ No newline at end of file diff --git a/resources/web/flutter_web/assets/assets/fonts/HarmonyOS_Sans_SC_Regular.ttf b/resources/web/flutter_web/assets/assets/fonts/HarmonyOS_Sans_SC_Regular.ttf new file mode 100644 index 0000000000..95b29bcd3f Binary files /dev/null and b/resources/web/flutter_web/assets/assets/fonts/HarmonyOS_Sans_SC_Regular.ttf differ diff --git a/resources/web/flutter_web/assets/assets/fonts/NanumGothic-Regular.ttf b/resources/web/flutter_web/assets/assets/fonts/NanumGothic-Regular.ttf new file mode 100644 index 0000000000..6e4dd8748c Binary files /dev/null and b/resources/web/flutter_web/assets/assets/fonts/NanumGothic-Regular.ttf differ diff --git a/resources/web/flutter_web/assets/assets/i10n/en.json b/resources/web/flutter_web/assets/assets/i10n/en.json new file mode 100644 index 0000000000..0d22931999 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/i10n/en.json @@ -0,0 +1,725 @@ +{ + "dialog": { + "http": { + "success": "Request successful", + "bad_request": "Bad request, please check your input", + "unauthorized": "Unauthorized or session expired, please login again", + "forbidden": "Insufficient permissions to access this resource", + "not_found": "Resource not found", + "too_many_requests": "Too many requests, please try again later", + "internal_server_error": "Internal server error", + "service_unavailable": "Service temporarily unavailable, please try again later", + "unknown": "Network request failed" + }, + "open_business": { + "email_verification_failed": "Failed to send email verification code, please try again later", + "sms_verification_failed": "Failed to send SMS verification code, please try again later", + "file_upload_failed": "File upload failed, please check file format and size", + "file_info_not_found": "File information not found, please select file again", + "unknown": "Business operation failed" + }, + "permission": { + "verification_code_error": "Verification code error, please re-enter", + "login_failed": "Login failed, please check username and password", + "authorization_missing": "Authorization information missing, please login again", + "token_expired": "Session expired, please login again", + "authentication_failed": "Authentication failed, please login again", + "unknown": "Permission verification failed" + }, + "user_service": { + "not_found": "User not found, please check account information", + "frozen": "Account has been frozen, please contact customer support", + "update_failed": "Failed to update user information, please try again later", + "image_upload_failed": "Image upload failed, please check image format", + "file_upload_failed": "File upload failed, please check file format", + "certificate_expired": "User certificate has expired, retrieving new certificate", + "email_not_found": "Email not found, please check email address", + "phone_not_found": "Phone number not found, please check phone number", + "unknown": "User service error" + }, + "device_service": { + "not_found": "Device not found, please check device connection", + "register_failed": "Device registration failed, please try again later", + "bind_failed": "Device binding failed, please check device status", + "invalid": "Invalid device, please check device information", + "image_upload_failed": "Device image upload failed", + "file_upload_failed": "Device file upload failed", + "certificate_update_failed": "Device certificate update failed", + "unauthorized": "Device unauthorized, please rebind device", + "not_connected": "Device not connected, please check network", + "authorization_check_failed": "Device authorization check failed", + "auth_code_locale_not_match": "Device authorization code locale not match", + "unknown": "Device service error" + }, + "business_operation": { + "no_permission": "You don't have permission to perform this operation", + "unknown": "Operation failed" + }, + "title": { + "http": "Network Error", + "open_business": "Business Error", + "permission": "Permission Error", + "business_operation": "Operation Error", + "user_service": "User Service Error", + "device_service": "Device Service Error", + "other": "System Error" + }, + "action": { + "confirm": "Confirm", + "cancel": "Cancel", + "retry": "Retry", + "relogin": "Login Again", + "contact_support": "Contact Support", + "reselect": "Reselect", + "resend": "Resend", + "check_device": "Check Device" + } + }, + "title": "Discovery Device", + "add device": "Add Device", + "input_ip_address": "Enter IP address", + "discovery_tip1": "1. Only printers within the same LAN can be found", + "discovery_tip2": "2. The device only supports a 2.4GHz Wi-Fi connection", + "Nearby machine": "Nearby machine", + "Manual connect": "Manual connect", + "Connect": "Connect", + "Connecting...": "Connecting...", + "Snapmaker Account": "Snapmaker Account", + "Upload Image": "Upload Image", + "Upload File": "Upload File", + + + "Device Control": "Control", + "Create New Project": "NewProject", + "Waiting for device authorization": "Waiting for device authorization...", + "Device connect error, please return to device page and connect again.": "Device connect error, please return to device page and connect again.", + + "System": "System", + "Simplified Chinese": "Simplified Chinese", + "English": "English", + + "Other login methods": "Other Login Methods", + "Email Password": "Email Password", + "Email Code": "Email Code", + "Login": "Log In", + "Please read and agree": "Please read and agree ", + "And": " and ", + "Privacy Policy": "Privacy Policy", + "Terms of Use": "Terms of Use", + "Profile Page": "Profile Page", + "Nickname": "Nickname", + "Email": "Email", + "Account ID": "Account", + "Logout tip": "Are you sure you want to log out?", + "Edit Nickname": "Edit Nickname", + "edit_nickname_tip_format": "Enter a nickname ({min}-{max})", + "edit_nickname_tip_format1": "Nickname must be at least {min} and no more than {max} characters", + "input_password_tip": "Combines at least two of the following: letters, numbers, and symbols", + "input_password_tip1_format": "{}–{} characters", + "input_password_tip2": "Two different password inputs", + "input_password_tip2_format": "Passwords only support {}–{} characters", + "get_code_format": "{} s", + "Select Avatar": "Select Avatar", + "Reload": "Reload", + "Network Error": "Network Error", + "No Data": "No Data", + "destroy_account_tip": "Are you sure to cancel this account? Once the account is cancelled, all your personal data will be permanently gone and irrecoverable, including:", + "destroy_account_tip1": "Are you sure to cancel this account? Once an account is cancelled, the associated mobile phone number will not be available to register a new account for 30 days. All your personal data will be permanently gone and irrecoverable, including:", + "destroy_account_tip2": "Are you sure to cancel this account? Once an account is cancelled, the associated mobile phone number will not be available to register a new account for 30 days. All your personal data will be permanently gone and irrecoverable, including:", + "destroy_account_check_tip": "I agree to the account deletion terms", + + "Confirm": "Confirm", + "device_input_pin_code_desc": "Please enter the PIN code.", + "device_input_pin_code_tips_desc": "Please enter an 8-digit PIN code.", + "device_waiting_for_authorizing_title": "Please authorize on the device screen to continue the binding process.", + "device_waiting_for_authorizing_desc": "Waiting for device authorization...", + "Exit authorizing": "Exit authorizing", + "Exit authorizing process?": "Exit authorizing process?", + "Keep waiting": "Keep waiting", + "Bind Device": "Bind Device", + "Rename your device": "Rename your device", + "Please input your device name": "Please input your device name", + "Lan Mode": "Lan Mode", + "Finding new devices": "Finding new devices", + "More Nearby Devices": "More Nearby Devices", + "Bound successfully": "Bound successfully", + "Bound rejected": "Bound rejected", + "Device not available/device offline": "Device not available/device offline", + "Got it": "Got it", + "Connect device success": "Connect device success", + "Connect device failed": "Connect device failed", + "Control": "Control", + "ToolHead": "ToolHead", + "Move": "Move", + "Idle": "idle", + "Working": "working", + "Error": "Error", + "Offline": "Offline", + "XYZ Calibrating": "XYZ Calibrating", + "Heated bed Calibrating": "Heated bed Calibrating", + "Flow Calibrating": "Flow Calibrating", + "Vibration Compensation Calibrating": "Vibration Compensation Calibrating", + "Updating": "Updating", + "Manual Adjusting Spring Screw": "Manual Adjusting Spring Screw", + + "Homing": "Homing", + "PEI sheet placement detection in progress...": "PEI sheet placement detection in progress...", + "Resuming printing...": "Resuming printing...", + "Leveling progress...": "Leveling progress...", + "Paused": "Paused", + "Resuming print...": "Resuming print...", + "Auto-reloading filament...": "Auto-reloading filament...", + "Checking toolheads...": "Checking toolheads...", + "Auto-loading filament...": "Auto-loading filament...", + "Pre-extruding...": "Pre-extruding...", + "Cleaning Nozzle 1 (1/4)": "Cleaning Nozzle 1 (1/4)", + "Cleaning Nozzle 2 (2/4)": "Cleaning Nozzle 2 (2/4)", + "Cleaning Nozzle 3 (3/4)": "Cleaning Nozzle 3 (3/4)", + "Cleaning Nozzle 4 (4/4)": "Cleaning Nozzle 4 (4/4)", + "Calibrating Toolhead 1...": "Calibrating Toolhead 1...", + "Calibrating Toolhead 2...": "Calibrating Toolhead 2...", + "Calibrating Toolhead 3...": "Calibrating Toolhead 3...", + "Calibrating Toolhead 4...": "Calibrating Toolhead 4...", + "Wiping Nozzle...": "Wiping Nozzle...", + "Cooling Nozzle...": "Cooling Nozzle...", + "Toolhead 1 Calibrating extrusion flow": "Toolhead 1 Calibrating extrusion flow", + "Toolhead 2 Calibrating extrusion flow": "Toolhead 2 Calibrating extrusion flow", + "Toolhead 3 Calibrating extrusion flow": "Toolhead 3 Calibrating extrusion flow", + "Toolhead 4 Calibrating extrusion flow": "Toolhead 4 Calibrating extrusion flow", + "Calibrating vibration compensation...": "Calibrating vibration compensation...", + "Reset to Initial Position": "Reset to Initial Position", + "Sampling to Calculate Reference Height": "Sampling to Calculate Reference Height", + "Adjust Leveling Wheels": "Adjust Leveling Wheels", + "Re-checking reference points...": "Re-checking reference points...", + "Auto Loading": "Auto Loading", + "Unloading": "Unloading", + "Manual Loading": "Manual Loading", + "Heated Bed Temp.": "Heated Bed Temp.", + + "Print Speed": "Print Speed", + "Fan": "Fan", + + "On": "On", + "Off": "Off", + "No extruder": "No extruder", + "Extruder": "Extruder", + "Extruder Temp.": "Extruder Temp.", + "operating...": "operating...", + "Park Extruder": "Park Extruder", + "Pick Extruder": "Pick Extruder", + "Heated Bed": "Heated Bed", + "Homing...": "Homing...", + "Led": "Led", + "Device Name": "Device Name", + "Device Firmware Update": "Device Firmware Update", + "Please stay tuned.": "Please stay tuned.", + "Print Preference": "Print Preference", + "Device Calibration": "Device Calibration", + "Local Files": "Local Files", + "U-disk Files": "U-disk Files", + "Time-lapse Videos": "Time-lapse Videos", + "Delete Device": "Delete devices", + "Unbind Device": "Unbind Devices", + "Colors": "Colors", + "Filaments": "Filaments", + "color_name_black": "Black", + "color_name_white": "White", + "color_name_red": "Red", + "color_name_green": "Green", + "color_name_blue": "Blue", + "color_name_yellow": "Yellow", + "color_name_cyan": "Cyan", + "color_name_purple": "Purple", + "color_name_gray": "Gray", + "color_name_orange": "Orange", + "color_name_brown": "Brown", + "color_name_pink": "Pink", + "Select Color": "Select Color", + "Select Filament": "Select Filament", + "Main Cooling Fan Speed": "Main Cooling Fan Speed", + "Assist Cooling Fan Speed": "Assist Cooling Fan Speed", + "Air Purifier Fan Speed": "Air Purifier Fan Speed", + "Filename": "Filename", + "Estimated Time": "Estimated Time", + "Estimated Materials": "Estimated Materials", + "Configure Printing": "Configure Printing", + "Print Preferences Settings": "Print Preferences Settings", + "Auto-Leveling": "Auto-Leveling", + "Flow Calibration": "Flow Calibration", + "Time-Lapse Photography": "Time-Lapse Photography", + "Start Print": "Start Print", + + "dialog_device_control_modify_heated_bed_temperature_tips": "Heated bed temperature must be set between 0°C and 100°C", + "dialog_device_control_modify_print_speed_tips": "Print speed must be set between 50% and 150%", + "dialog_delete_device_desc_format": "Do you want to delete device {}?", + "dialog_unbind_device_desc_format": "'Do you want to unbind device {}?'", + "Do you want to disconnect with current device?": "Are you sure you want to disconnect and delete the device?", + "Are you sure you want to delete the lan device?": "Are you sure you want to delete the lan device?", + "Are you sure you want to delete the cloud device?": "Are you sure you want to delete the cloud device?", + + "bind_device_tip_format": "Confirm to bind the printer {} with the current account?", + "Filament auto feed": "Filament auto feed", + "Filament auto feed description": "Automatic Feeding\n· Insert the 3D printer filaments into the corresponding feeding port until the indicator light of the corresponding feeding port lights up. The device will pre-load the materials, and the feeding will be automatic when the printing starts.\nFilaments Information\n· Official 3D printer filaments information will be recognized by the device. For non-official filaments, the material information needs to be manually edited.\nAutomatic Resume Printing\n· When a filament break occurs during printing, if the device is equipped with the same brand, type, and color of filaments, the device will automatically resume printing.", + "cancel_print_confirm_title": "Tips", + "cancel_print_confirm_message": "Cancel printing Do you want to cancel the printing task ? ", + "cancel_print_confirm_yes": "Confirm", + "cancel_print_confirm_no": "Cancel", + + "Refresh More": "Refresh More", + "downloading_desc_format": "{},downloading...({}%)", + "downloaded_desc_format": "{},downloaded", + "Version Compatibility": "Version Compatibility", + "device_firmware_version_not_compatible_desc": "Current device version not compatible. To avoid communication problems, it is recommended to upgrade the device firmware", + "dont_remind_again_desc": "Don't remind again", + "Remind later": "Remind later", + "Could not get device version": "Could not get device version", + + "dialog_file_download_success_tips": "File {} has been downloaded successfully, initiating upload...", + "dialog_file_download_failed_tips": "File {} download failed, please try again...", + "dialog_file_upload_failed_tips": "File {} upload failed, please try again...", + "dialog_file_upload_success_to_device_tips": "File {} has been uploaded to the device, initiating print...", + "dialog_file_upload_success_to_cloud_tips": "File {} has been uploaded to the cloud, initiating print...", + "dialog_file_send_success_to_device_tips": "File {} has been sent successfully to the device", + "dialog_filament_type_not_match_tips": "This nozzle filament type does not match the preset filament type of the model. Please replace this nozzle filament type or change the preset filament type", + "dialog_filament_type_none_tips": "Filaments were not identified. Please mount the filaments on the device or edit the filament information", + "Features are under development, please stay tuned": "Features are under development, please stay tuned", + "delete_selected_files_confirm_title": "Confirm Delete Selected Files", + "delete_selected_files_confirm_message": "Are you sure you want to delete the selected files? This action cannot be undone.", + "clear_all_files_confirm_title": "Confirm Clear All Files", + "clear_all_files_confirm_message": "Are you sure you want to clear all recent files? This action cannot be undone.", + "delete_confirm_yes": "Confirm Delete", + "delete_confirm_no": "Cancel", + "connect_devcice_fail_tip_format": "Connect {} failed, please reselect your device and connect.", + + "Check": "Check", + "default_exception_title": "Exception", + "Error Code": "Error Code", + "error_0002052300000000_title": "Filament Anomaly", + "error_0002052300000000_desc": "Filament runout detected in Toolhead 1. Try reloading filament, then tap the play button to resume the print job.", + "error_0002052300010000_title": "Filament Anomaly", + "error_0002052300010000_desc": "Filament runout detected in Toolhead 2. Try reloading filament, then tap the play button to resume the print job.", + "error_0002052300020000_title": "Filament Anomaly", + "error_0002052300020000_desc": "Filament runout detected in Toolhead 3. Try reloading filament, then tap the play button to resume the print job.", + "error_0002052300030000_title": "Filament Anomaly", + "error_0002052300030000_desc": "Filament runout detected in Toolhead 4. Try reloading filament, then tap the play button to resume the print job.", + "error_0003052300000001_title": "Nozzle Temperature Anomaly", + "error_0003052300000001_desc": "Toolhead 1 nozzle temperature insufficient. Nozzle extrusion temperature must be above 170°C.", + "error_0003052300010001_title": "Nozzle Temperature Anomaly", + "error_0003052300010001_desc": "Toolhead 2 nozzle temperature insufficient. Nozzle extrusion temperature must be above 170°C.", + "error_0003052300020001_title": "Nozzle Temperature Anomaly", + "error_0003052300020001_desc": "Toolhead 3 nozzle temperature insufficient. Nozzle extrusion temperature must be above 170°C.", + "error_0003052300030001_title": "Nozzle Temperature Anomaly", + "error_0003052300030001_desc": "Toolhead 4 nozzle temperature insufficient. Nozzle extrusion temperature must be above 170°C.", + "error_0003052300000002_title": "Nozzle Temperature Anomaly", + "error_0003052300000002_desc": "Power off printer, then check the connection of Toolhead 1 thermistor.", + "error_0003052300010002_title": "Nozzle Temperature Anomaly", + "error_0003052300010002_desc": "Power off printer, then check the connection of Toolhead 2 thermistor.", + "error_0003052300020002_title": "Nozzle Temperature Anomaly", + "error_0003052300020002_desc": "Power off printer, then check the connection of Toolhead 3 thermistor.", + "error_0003052300030002_title": "Nozzle Temperature Anomaly", + "error_0003052300030002_desc": "Power off printer, then check the connection of Toolhead 4 thermistor.", + "error_0003052300000003_title": "Nozzle Temperature Anomaly", + "error_0003052300000003_desc": "Power off printer, then check the connection of Toolhead 1 ceramic heater or thermistor.", + "error_0003052300010003_title": "Nozzle Temperature Anomaly", + "error_0003052300010003_desc": "Power off printer, then check the connection of Toolhead 2 ceramic heater or thermistor.", + "error_0003052300020003_title": "Nozzle Temperature Anomaly", + "error_0003052300020003_desc": "Power off printer, then check the connection of Toolhead 3 ceramic heater or thermistor.", + "error_0003052300030003_title": "Nozzle Temperature Anomaly", + "error_0003052300030003_desc": "Power off printer, then check the connection of Toolhead 4 ceramic heater or thermistor.", + "error_0003052300000004_title": "Extrusion Length Exceeded", + "error_0003052300000004_desc": "Toolhead 1 single extrusion distance was too long. There may be incorrect codes in the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing to avoid this issue.", + "error_0003052300010004_title": "Extrusion Length Exceeded", + "error_0003052300010004_desc": "Toolhead 2 single extrusion distance was too long. There may be incorrect codes in the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing to avoid this issue.", + "error_0003052300020004_title": "Extrusion Length Exceeded", + "error_0003052300020004_desc": "Toolhead 3 single extrusion distance was too long. There may be incorrect codes in the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing to avoid this issue.", + "error_0003052300030004_title": "Extrusion Length Exceeded", + "error_0003052300030004_desc": "Toolhead 4 single extrusion distance was too long. There may be incorrect codes in the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing to avoid this issue.", + "error_0003052300000005_title": "Extrusion Flow Exceeded", + "error_0003052300000005_desc": "Toolhead 1 printing extrusion volume exceeded maximum allowed. There may be incorrect configurations in the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing to avoid this issue.", + "error_0003052300010005_title": "Extrusion Flow Exceeded", + "error_0003052300010005_desc": "Toolhead 2 printing extrusion volume exceeded maximum allowed. There may be incorrect configurations in the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing to avoid this issue.", + "error_0003052300020005_title": "Extrusion Flow Exceeded", + "error_0003052300020005_desc": "Toolhead 3 printing extrusion volume exceeded maximum allowed. There may be incorrect configurations in the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing to avoid this issue.", + "error_0003052300030005_title": "Extrusion Flow Exceeded", + "error_0003052300030005_desc": "Toolhead 4 printing extrusion volume exceeded maximum allowed. There may be incorrect configurations in the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing to avoid this issue.", + "error_0003052300000006_title": "Nozzle Temperature Anomaly", + "error_0003052300000006_desc": "The G-code file may have set a toolhead unrecognized by printer. It is recommended to use G-code files exported by Snapmaker Orca for printing to avoid this issue.", + "error_0002052300000007_title": "Toolhead Swapping Failure", + "error_0002052300000007_desc": "Toolhead 1 swapping failed. Check if Toolhead 1 and Toolhead 2 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010007_title": "Toolhead Swapping Failure", + "error_0002052300010007_desc": "Toolhead 2 swapping failed. Check if Toolhead 1 and Toolhead 2 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020007_title": "Toolhead Swapping Failure", + "error_0002052300020007_desc": "Toolhead 3 swapping failed. Check if Toolhead 1 and Toolhead 2 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030007_title": "Toolhead Swapping Failure", + "error_0002052300030007_desc": "Toolhead 4 swapping failed. Check if Toolhead 1 and Toolhead 2 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000008_title": "Toolhead Swapping Failure", + "error_0002052300000008_desc": "Toolhead 1 swapping failed. Check if Toolhead 1 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010008_title": "Toolhead Swapping Failure", + "error_0002052300010008_desc": "Toolhead 2 swapping failed. Check if Toolhead 1 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020008_title": "Toolhead Swapping Failure", + "error_0002052300020008_desc": "Toolhead 3 swapping failed. Check if Toolhead 1 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030008_title": "Toolhead Swapping Failure", + "error_0002052300030008_desc": "Toolhead 4 swapping failed. Check if Toolhead 1 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000009_title": "Toolhead Swapping Failure", + "error_0002052300000009_desc": "Toolhead 1 swapping failed. Check if Toolhead 1 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010009_title": "Toolhead Swapping Failure", + "error_0002052300010009_desc": "Toolhead 2 swapping failed. Check if Toolhead 1 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020009_title": "Toolhead Swapping Failure", + "error_0002052300020009_desc": "Toolhead 3 swapping failed. Check if Toolhead 1 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030009_title": "Toolhead Swapping Failure", + "error_0002052300030009_desc": "Toolhead 4 swapping failed. Check if Toolhead 1 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000010_title": "Toolhead Swapping Failure", + "error_0002052300000010_desc": "Toolhead 1 swapping failed. Check if Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010010_title": "Toolhead Swapping Failure", + "error_0002052300010010_desc": "Toolhead 2 swapping failed. Check if Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020010_title": "Toolhead Swapping Failure", + "error_0002052300020010_desc": "Toolhead 3 swapping failed. Check if Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030010_title": "Toolhead Swapping Failure", + "error_0002052300030010_desc": "Toolhead 4 swapping failed. Check if Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000011_title": "Toolhead Swapping Failure", + "error_0002052300000011_desc": "Toolhead 1 swapping failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010011_title": "Toolhead Swapping Failure", + "error_0002052300010011_desc": "Toolhead 2 swapping failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020011_title": "Toolhead Swapping Failure", + "error_0002052300020011_desc": "Toolhead 3 swapping failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030011_title": "Toolhead Swapping Failure", + "error_0002052300030011_desc": "Toolhead 4 swapping failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000012_title": "Toolhead Swapping Failure", + "error_0002052300000012_desc": "Toolhead 1 swapping failed. Check if Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010012_title": "Toolhead Swapping Failure", + "error_0002052300010012_desc": "Toolhead 2 swapping failed. Check if Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020012_title": "Toolhead Swapping Failure", + "error_0002052300020012_desc": "Toolhead 3 swapping failed. Check if Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030012_title": "Toolhead Swapping Failure", + "error_0002052300030012_desc": "Toolhead 4 swapping failed. Check if Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000013_title": "Toolhead Swapping Failure", + "error_0002052300000013_desc": "Toolhead 1 swapping failed. Check if Toolhead 1, Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010013_title": "Toolhead Swapping Failure", + "error_0002052300010013_desc": "Toolhead 2 swapping failed. Check if Toolhead 1, Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020013_title": "Toolhead Swapping Failure", + "error_0002052300020013_desc": "Toolhead 3 swapping failed. Check if Toolhead 1, Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030013_title": "Toolhead Swapping Failure", + "error_0002052300030013_desc": "Toolhead 4 swapping failed. Check if Toolhead 1, Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000014_title": "Toolhead Swapping Failure", + "error_0002052300000014_desc": "Toolhead 1 swapping failed. Check if Toolhead 1, Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010014_title": "Toolhead Swapping Failure", + "error_0002052300010014_desc": "Toolhead 2 swapping failed. Check if Toolhead 1, Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020014_title": "Toolhead Swapping Failure", + "error_0002052300020014_desc": "Toolhead 3 swapping failed. Check if Toolhead 1, Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030014_title": "Toolhead Swapping Failure", + "error_0002052300030014_desc": "Toolhead 4 swapping failed. Check if Toolhead 1, Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000015_title": "Toolhead Swapping Failure", + "error_0002052300000015_desc": "Toolhead 1 swapping failed. Check if Toolhead 1, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010015_title": "Toolhead Swapping Failure", + "error_0002052300010015_desc": "Toolhead 2 swapping failed. Check if Toolhead 1, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020015_title": "Toolhead Swapping Failure", + "error_0002052300020015_desc": "Toolhead 3 swapping failed. Check if Toolhead 1, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030015_title": "Toolhead Swapping Failure", + "error_0002052300030015_desc": "Toolhead 4 swapping failed. Check if Toolhead 1, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000016_title": "Toolhead Swapping Failure", + "error_0002052300000016_desc": "Toolhead 1 swapping failed. Check if Toolhead 2, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010016_title": "Toolhead Swapping Failure", + "error_0002052300010016_desc": "Toolhead 2 swapping failed. Check if Toolhead 2, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020016_title": "Toolhead Swapping Failure", + "error_0002052300020016_desc": "Toolhead 3 swapping failed. Check if Toolhead 2, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030016_title": "Toolhead Swapping Failure", + "error_0002052300030016_desc": "Toolhead 4 swapping failed. Check if Toolhead 2, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000017_title": "Toolhead Swapping Failure", + "error_0002052300000017_desc": "Toolhead 1 swapping failed. Check all toolheads one by one for dropping or tilting, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300010017_title": "Toolhead Swapping Failure", + "error_0002052300010017_desc": "Toolhead 2 swapping failed. Check all toolheads one by one for dropping or tilting, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300020017_title": "Toolhead Swapping Failure", + "error_0002052300020017_desc": "Toolhead 3 swapping failed. Check all toolheads one by one for dropping or tilting, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300030017_title": "Toolhead Swapping Failure", + "error_0002052300030017_desc": "Toolhead 4 swapping failed. Check all toolheads one by one for dropping or tilting, adjust manually and retry. If the anomaly persists, contact technical support.", + "error_0002052300000018_title": "Toolhead Swapping Anomaly", + "error_0002052300000018_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300010018_title": "Toolhead Swapping Anomaly", + "error_0002052300010018_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300020018_title": "Toolhead Swapping Anomaly", + "error_0002052300020018_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300030018_title": "Toolhead Swapping Anomaly", + "error_0002052300030018_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300000019_title": "Toolhead Parking Failure", + "error_0002052300000019_desc": "Toolhead 1 parking failed. Retry. If the issue persists, contact technical support.", + "error_0002052300010019_title": "Toolhead Parking Failure", + "error_0002052300010019_desc": "Toolhead 2 parking failed. Retry. If the issue persists, contact technical support.", + "error_0002052300020019_title": "Toolhead Parking Failure", + "error_0002052300020019_desc": "Toolhead 3 parking failed. Retry. If the issue persists, contact technical support.", + "error_0002052300030019_title": "Toolhead Parking Failure", + "error_0002052300030019_desc": "Toolhead 4 parking failed. Retry. If the issue persists, contact technical support.", + "error_0002052300000020_title": "Toolhead Swapping Anomaly", + "error_0002052300000020_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300010020_title": "Toolhead Swapping Anomaly", + "error_0002052300010020_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300020020_title": "Toolhead Swapping Anomaly", + "error_0002052300020020_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300030020_title": "Toolhead Swapping Anomaly", + "error_0002052300030020_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300000021_title": "Toolhead Picking Failure", + "error_0002052300000021_desc": "Toolhead 1 picking failed. Retry. If issue persists, contact technical support.", + "error_0002052300010021_title": "Toolhead Picking Failure", + "error_0002052300010021_desc": "Toolhead 2 picking failed. Retry. If issue persists, contact technical support.", + "error_0002052300020021_title": "Toolhead Picking Failure", + "error_0002052300020021_desc": "Toolhead 3 picking failed. Retry. If issue persists, contact technical support.", + "error_0002052300030021_title": "Toolhead Picking Failure", + "error_0002052300030021_desc": "Toolhead 4 picking failed. Retry. If issue persists, contact technical support.", + "error_0002052300000022_title": "Toolhead Picking Failure", + "error_0002052300000022_desc": "Toolhead 1 picking failed. Retry. If issue persists, contact technical support.", + "error_0002052300010022_title": "Toolhead Picking Failure", + "error_0002052300010022_desc": "Toolhead 2 picking failed. Retry. If issue persists, contact technical support.", + "error_0002052300020022_title": "Toolhead Picking Failure", + "error_0002052300020022_desc": "Toolhead 3 picking failed. Retry. If issue persists, contact technical support.", + "error_0002052300030022_title": "Toolhead Picking Failure", + "error_0002052300030022_desc": "Toolhead 4 picking failed. Retry. If issue persists, contact technical support.", + "error_0002052300000023_title": "Toolhead Swapping Anomaly", + "error_0002052300000023_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300010023_title": "Toolhead Swapping Anomaly", + "error_0002052300010023_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300020023_title": "Toolhead Swapping Anomaly", + "error_0002052300020023_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300030023_title": "Toolhead Swapping Anomaly", + "error_0002052300030023_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300000024_title": "Toolhead Picking Failure", + "error_0002052300000024_desc": "Toolhead 1 picking failed. Check if Toolhead 1 and Toolhead 2 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010024_title": "Toolhead Picking Failure", + "error_0002052300010024_desc": "Toolhead 2 picking failed. Check if Toolhead 1 and Toolhead 2 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020024_title": "Toolhead Picking Failure", + "error_0002052300020024_desc": "Toolhead 3 picking failed. Check if Toolhead 1 and Toolhead 2 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030024_title": "Toolhead Picking Failure", + "error_0002052300030024_desc": "Toolhead 4 picking failed. Check if Toolhead 1 and Toolhead 2 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000025_title": "Toolhead Picking Failure", + "error_0002052300000025_desc": "Toolhead 1 picking failed. Check if Toolhead 1 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010025_title": "Toolhead Picking Failure", + "error_0002052300010025_desc": "Toolhead 2 picking failed. Check if Toolhead 1 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020025_title": "Toolhead Picking Failure", + "error_0002052300020025_desc": "Toolhead 3 picking failed. Check if Toolhead 1 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030025_title": "Toolhead Picking Failure", + "error_0002052300030025_desc": "Toolhead 4 picking failed. Check if Toolhead 1 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000026_title": "Toolhead Picking Failure", + "error_0002052300000026_desc": "Toolhead 1 picking failed. Check if Toolhead 1 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010026_title": "Toolhead Picking Failure", + "error_0002052300010026_desc": "Toolhead 2 picking failed. Check if Toolhead 1 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020026_title": "Toolhead Picking Failure", + "error_0002052300020026_desc": "Toolhead 3 picking failed. Check if Toolhead 1 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030026_title": "Toolhead Picking Failure", + "error_0002052300030026_desc": "Toolhead 4 picking failed. Check if Toolhead 1 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000027_title": "Toolhead Picking Failure", + "error_0002052300000027_desc": "Toolhead 1 picking failed. Check if Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010027_title": "Toolhead Picking Failure", + "error_0002052300010027_desc": "Toolhead 2 picking failed. Check if Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020027_title": "Toolhead Picking Failure", + "error_0002052300020027_desc": "Toolhead 3 picking failed. Check if Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030027_title": "Toolhead Picking Failure", + "error_0002052300030027_desc": "Toolhead 4 picking failed. Check if Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000028_title": "Toolhead Picking Failure", + "error_0002052300000028_desc": "Toolhead 1 picking failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010028_title": "Toolhead Picking Failure", + "error_0002052300010028_desc": "Toolhead 2 picking failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020028_title": "Toolhead Picking Failure", + "error_0002052300020028_desc": "Toolhead 3 picking failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030028_title": "Toolhead Picking Failure", + "error_0002052300030028_desc": "Toolhead 4 picking failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000029_title": "Toolhead Picking Failure", + "error_0002052300000029_desc": "Toolhead 1 picking failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010029_title": "Toolhead Picking Failure", + "error_0002052300010029_desc": "Toolhead 2 picking failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020029_title": "Toolhead Picking Failure", + "error_0002052300020029_desc": "Toolhead 3 picking failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030029_title": "Toolhead Picking Failure", + "error_0002052300030029_desc": "Toolhead 4 picking failed. Check if Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000030_title": "Toolhead Picking Failure", + "error_0002052300000030_desc": "Toolhead 1 picking failed. Check if Toolhead 1, Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010030_title": "Toolhead Picking Failure", + "error_0002052300010030_desc": "Toolhead 2 picking failed. Check if Toolhead 1, Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020030_title": "Toolhead Picking Failure", + "error_0002052300020030_desc": "Toolhead 3 picking failed. Check if Toolhead 1, Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030030_title": "Toolhead Picking Failure", + "error_0002052300030030_desc": "Toolhead 4 picking failed. Check if Toolhead 1, Toolhead 2 and Toolhead 3 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000031_title": "Toolhead Picking Failure", + "error_0002052300000031_desc": "Toolhead 1 picking failed. Check if Toolhead 1, Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010031_title": "Toolhead Picking Failure", + "error_0002052300010031_desc": "Toolhead 2 picking failed. Check if Toolhead 1, Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020031_title": "Toolhead Picking Failure", + "error_0002052300020031_desc": "Toolhead 3 picking failed. Check if Toolhead 1, Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030031_title": "Toolhead Picking Failure", + "error_0002052300030031_desc": "Toolhead 4 picking failed. Check if Toolhead 1, Toolhead 2 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000032_title": "Toolhead Picking Failure", + "error_0002052300000032_desc": "Toolhead 1 picking failed. Check if Toolhead 1, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010032_title": "Toolhead Picking Failure", + "error_0002052300010032_desc": "Toolhead 2 picking failed. Check if Toolhead 1, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020032_title": "Toolhead Picking Failure", + "error_0002052300020032_desc": "Toolhead 3 picking failed. Check if Toolhead 1, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030032_title": "Toolhead Picking Failure", + "error_0002052300030032_desc": "Toolhead 4 picking failed. Check if Toolhead 1, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000033_title": "Toolhead Picking Failure", + "error_0002052300000033_desc": "Toolhead 1 picking failed. Check if Toolhead 2, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010033_title": "Toolhead Picking Failure", + "error_0002052300010033_desc": "Toolhead 2 picking failed. Check if Toolhead 2, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020033_title": "Toolhead Picking Failure", + "error_0002052300020033_desc": "Toolhead 3 picking failed. Check if Toolhead 2, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030033_title": "Toolhead Picking Failure", + "error_0002052300030033_desc": "Toolhead 4 picking failed. Check if Toolhead 2, Toolhead 3 and Toolhead 4 are dropped or tilted, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000034_title": "Toolhead Picking Failure", + "error_0002052300000034_desc": "Toolhead 1 picking failed. Check all toolheads one by one for dropping or tilting, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300010034_title": "Toolhead Picking Failure", + "error_0002052300010034_desc": "Toolhead 2 picking failed. Check all toolheads one by one for dropping or tilting, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300020034_title": "Toolhead Picking Failure", + "error_0002052300020034_desc": "Toolhead 3 picking failed. Check all toolheads one by one for dropping or tilting, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300030034_title": "Toolhead Picking Failure", + "error_0002052300030034_desc": "Toolhead 4 picking failed. Check all toolheads one by one for dropping or tilting, adjust manually and retry. If anomaly persists, contact technical support.", + "error_0002052300000035_title": "Toolhead Swapping Anomaly", + "error_0002052300000035_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300010035_title": "Toolhead Swapping Anomaly", + "error_0002052300010035_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300020035_title": "Toolhead Swapping Anomaly", + "error_0002052300020035_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0002052300030035_title": "Toolhead Swapping Anomaly", + "error_0002052300030035_desc": "Check if the current toolhead is properly picked and placed, and ensure all idle toolheads on the dock are securely installed. Reinstall any misaligned toolheads, then tap to resume the task.", + "error_0003052300000036_title": "Nozzle Temperature Exceeded", + "error_0003052300000036_desc": "Toolhead 1 nozzle target temperature exceeded limit. Check the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing.", + "error_0003052300010036_title": "Nozzle Temperature Exceeded", + "error_0003052300010036_desc": "Toolhead 2 nozzle target temperature exceeded limit. Check the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing.", + "error_0003052300020036_title": "Nozzle Temperature Exceeded", + "error_0003052300020036_desc": "Toolhead 3 nozzle target temperature exceeded limit. Check the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing.", + "error_0003052300030036_title": "Nozzle Temperature Exceeded", + "error_0003052300030036_desc": "Toolhead 4 nozzle target temperature exceeded limit. Check the G-code file. It is recommended to use G-code files exported by Snapmaker Orca for printing.", + "error_0002052300009000_title": "Flow Calibration Anomaly", + "error_0002052300009000_desc": "Toolhead 1 flow calibration anomaly. Contact technical support.", + "error_0002052300019000_title": "Flow Calibration Anomaly", + "error_0002052300019000_desc": "Toolhead 2 flow calibration anomaly. Contact technical support.", + "error_0002052300029000_title": "Flow Calibration Anomaly", + "error_0002052300029000_desc": "Toolhead 3 flow calibration anomaly. Contact technical support.", + "error_0002052300039000_title": "Flow Calibration Anomaly", + "error_0002052300039000_desc": "Toolhead 4 flow calibration anomaly. Contact technical support.", + "error_0001052300000037_title": "Toolhead Maintenance", + "error_0001052300000037_desc": "Toolhead swapping times have reached maintenance requirement. Clean the Pogopins on both sides, and add grease to the steel balls and steel pins of the toolhead.", + "error_0002052500000000_title": "Filament Anomaly", + "error_0002052500000000_desc": "Toolhead 1 filament feeder anomaly. Contact technical support.", + "error_0002052500010000_title": "Filament Anomaly", + "error_0002052500010000_desc": "Toolhead 2 filament feeder anomaly. Contact technical support.", + "error_0002052500020000_title": "Filament Anomaly", + "error_0002052500020000_desc": "Toolhead 3 filament feeder anomaly. Contact technical support.", + "error_0002052500030000_title": "Filament Anomaly", + "error_0002052500030000_desc": "Toolhead 4 filament feeder anomaly. Contact technical support.", + "error_0002052500000001_title": "Filament Anomaly", + "error_0002052500000001_desc": "Toolhead 1 filament feeder anomaly. Contact technical support.", + "error_0002052500010001_title": "Filament Anomaly", + "error_0002052500010001_desc": "Toolhead 2 filament feeder anomaly. Contact technical support.", + "error_0002052500020001_title": "Filament Anomaly", + "error_0002052500020001_desc": "Toolhead 3 filament feeder anomaly. Contact technical support.", + "error_0002052500030001_title": "Filament Anomaly", + "error_0002052500030001_desc": "Toolhead 4 filament feeder anomaly. Contact technical support.", + "error_0002052500000002_title": "Filament Anomaly", + "error_0002052500000002_desc": "Filament Feeder 1 Loading Anomaly. Check for filament tangles or loose connector connections. If printing is in progress, tap the play button to resume the print job after troubleshooting.", + "error_0002052500010002_title": "Filament Anomaly", + "error_0002052500010002_desc": "Filament Feeder 2 Loading Anomaly. Check for filament tangles or loose connector connections. If printing is in progress, tap the play button to resume the print job after troubleshooting.", + "error_0002052500020002_title": "Filament Anomaly", + "error_0002052500020002_desc": "Filament Feeder 3 Loading Anomaly. Check for filament tangles or loose connector connections. If printing is in progress, tap the play button to resume the print job after troubleshooting.", + "error_0002052500030002_title": "Filament Anomaly", + "error_0002052500030002_desc": "Filament Feeder 4 Loading Anomaly. Check for filament tangles or loose connector connections. If printing is in progress, tap the play button to resume the print job after troubleshooting.", + "error_0002052500000003_title": "Filament Not Loaded", + "error_0002052500000003_desc": "Toolhead 1 filament feeder detected no filament entry. Insert filament.", + "error_0002052500010003_title": "Filament Not Loaded", + "error_0002052500010003_desc": "Toolhead 2 filament feeder detected no filament entry. Insert filament.", + "error_0002052500020003_title": "Filament Not Loaded", + "error_0002052500020003_desc": "Toolhead 3 filament feeder detected no filament entry. Insert filament.", + "error_0002052500030003_title": "Filament Not Loaded", + "error_0002052500030003_desc": "Toolhead 4 filament feeder detected no filament entry. Insert filament.", + "error_0002052500000004_title": "Extrusion Blockage", + "error_0002052500000004_desc": "Filament extrusion blocked at the drive gear of Toolhead 1. Check and clean, then retry. If printer is printing, tap the play button to the play button the print job.", + "error_0002052500010004_title": "Extrusion Blockage", + "error_0002052500010004_desc": "Filament extrusion blocked at the drive gear of Toolhead 2. Check and clean, then retry. If printer is printing, tap the play button to the play button the print job.", + "error_0002052500020004_title": "Extrusion Blockage", + "error_0002052500020004_desc": "Filament extrusion blocked at the drive gear of Toolhead 3. Check and clean, then retry. If printer is printing, tap the play button to the play button the print job.", + "error_0002052500030004_title": "Extrusion Blockage", + "error_0002052500030004_desc": "Filament extrusion blocked at the drive gear of Toolhead 4. Check and clean, then retry. If printer is printing, tap the play button to the play button the print job.", + "error_0002052500000005_title": "Filament Anomaly", + "error_0002052500000005_desc": "Toolhead 1 filament feeder loading timed out. Check if the loading path is blocked, ensure it is clear, then retry. If printer is printing, tap the play button to the play button the print job.", + "error_0002052500010005_title": "Filament Anomaly", + "error_0002052500010005_desc": "Toolhead 2 filament feeder loading timed out. Check if the loading path is blocked, ensure it is clear, then retry. If printer is printing, tap the play button to resume the print job.", + "error_0002052500020005_title": "Filament Anomaly", + "error_0002052500020005_desc": "Toolhead 3 filament feeder loading timed out. Check if the loading path is blocked, ensure it is clear, then retry. If printer is printing, tap the play button to resume the print job.", + "error_0002052500030005_title": "Filament Anomaly", + "error_0002052500030005_desc": "Toolhead 4 filament feeder loading timed out. Check if the loading path is blocked, ensure it is clear, then retry. If printer is printing, tap the play button to resume the print job.", + "error_0002052500000006_title": "Filament Anomaly", + "error_0002052500000006_desc": "Toolhead 1 filament feeder loading timed out. Check if the filament tube is detached or the loading path is blocked, ensure it is clear, then retry. If printer is printing, tap the play button to resume the print job.", + "error_0002052500010006_title": "Filament Anomaly", + "error_0002052500010006_desc": "Toolhead 2 filament feeder loading timed out. Check if the filament tube is detached or the loading path is blocked, ensure it is clear, then retry. If printer is printing, tap the play button to resume the print job.", + "error_0002052500020006_title": "Filament Anomaly", + "error_0002052500020006_desc": "Toolhead 3 filament feeder loading timed out. Check if the filament tube is detached or the loading path is blocked, ensure it is clear, then retry. If printer is printing, tap the play button to resume the print job.", + "error_0002052500030006_title": "Filament Anomaly", + "error_0002052500030006_desc": "Toolhead 4 filament feeder loading timed out. Check if the filament tube is detached or the loading path is blocked, ensure it is clear, then retry. If printer is printing, tap the play button to resume the print job.", + "error_0001052500000008_title": "Filament Anomaly", + "error_0001052500000008_desc": "Toolhead 1 has residual filament. Unload the filament from the toolhead first, then retry.", + "error_0001052500010008_title": "Filament Anomaly", + "error_0001052500010008_desc": "Toolhead 2 has residual filament. Unload the filament from the toolhead first, then retry.", + "error_0001052500020008_title": "Filament Anomaly", + "error_0001052500020008_desc": "Toolhead 3 has residual filament. Unload the filament from the toolhead first, then retry.", + "error_0001052500030008_title": "Filament Anomaly", + "error_0001052500030008_desc": "Toolhead 4 has residual filament. Unload the filament from the toolhead first, then retry.", + "error_0002052800000000_title": "Homing Anomaly", + "error_0002052800000000_desc": "Home X and Y axes first, then home Z axis.", + "error_0002052800000001_title": "Homing Anomaly", + "error_0002052800000001_desc": "Current toolhead is unavailable, cannot home. Restart printer and retry. If issue persists, contact technical support.", + "error_0003052800000002_title": "Axis Movement Anomaly", + "error_0003052800000002_desc": "X-axis movement anomaly. Retry. If anomaly occurs repeatedly, contact technical support.", + "error_0003052800010002_title": "Axis Movement Anomaly", + "error_0003052800010002_desc": "Y-axis movement anomaly. Retry. If anomaly occurs repeatedly, contact technical support.", + "error_0003052800020002_title": "Axis Movement Anomaly", + "error_0003052800020002_desc": "Z-axis movement anomaly. Retry. If anomaly occurs repeatedly, contact technical support.", + "error_0003052800000003_title": "Axis Movement Anomaly", + "error_0003052800000003_desc": "X-axis movement anomaly. Retry. If anomaly occurs repeatedly, contact technical support.", + "error_0003052800010003_title": "Axis Movement Anomaly", + "error_0003052800010003_desc": "Y-axis movement anomaly. Retry. If anomaly occurs repeatedly, contact technical support.", + "error_0003052800020003_title": "Axis Movement Anomaly", + "error_0003052800020003_desc": "Z-axis movement anomaly. Retry. If anomaly occurs repeatedly, contact technical support.", + "error_0003052800000004_title": "Axis Movement Anomaly", + "error_0003052800000004_desc": "Check if X-axis movement has obvious resistance, then retry. If issue persists, contact technical support.", + "error_0003052800010004_title": "Axis Movement Anomaly", + "error_0003052800010004_desc": "Check if Y-axis movement has obvious resistance, then retry. If issue persists, contact technical support.", + "error_0003052800020004_title": "Axis Movement Anomaly", + "error_0003052800020004_desc": "Check if Z-axis movement has obvious resistance, then retry. If issue persists, contact technical support.", + "error_0003052800000005_title": "Axis Movement Anomaly", + "error_0003052800000005_desc": "Check if moving axes have obvious resistance, then retry. If issue persists, contact technical support.", + "error_0003052800000006_title": "Axis Movement Anomaly", + "error_0003052800000006_desc": "Check if timing belts are tensioned properly, X and Y axes move smoothly, and there are no obstructions at the X and Y homing positions. Retry after troubleshooting. If issue persists, contact technical support.", + "error_0003052800000007_title": "System Anomaly", + "error_0003052800000007_desc": "System is in shutdown protection, cannot home. Restart printer and retry. If the problem persists, contact technical support.", + "error_0003052800000008_title": "System Anomaly", + "error_0003052800000008_desc": "System is in shutdown protection, cannot level. Restart printer and retry. If the problem persists, contact technical support.", + "error_0003052800000009_title": "Sensor Anomaly", + "error_0003052800000009_desc": "Failed to activate. Retry. If anomaly occurs repeatedly, contact technical support.", + "error_0002052800000010_title": "Homing Anomaly", + "error_0002052800000010_desc": "Home X and Y axes first before performing this operation.", + "error_0002052800000011_title": "Homing Anomaly", + "error_0002052800000011_desc": "Check if timing belts are tensioned properly, X and Y axes move smoothly, and there are no obstructions at the X and Y homing positions. Retry after troubleshooting. If issue persists, contact technical support.", + "error_0002052800000012_title": "Homing Anomaly", + "error_0002052800000012_desc": "Check if timing belts are tensioned properly, X and Y axes move smoothly, and there are no obstructions at the X and Y homing positions. Retry after troubleshooting. If issue persists, contact technical support.", + "error_0002052300000038_title": "Printing Anomaly", + "error_0002052300000038_desc": "Check if the filament for Toolhead 1 is broken inside the tube, tangled on the spool, or if the toolhead is clogged. After troubleshooting, tap to resume printing. If issue persists, contact technical support.", + "error_0002052300010038_title": "Printing Anomaly", + "error_0002052300010038_desc": "Check if the filament for Toolhead 2 is broken inside the tube, tangled on the spool, or if the toolhead is clogged. After troubleshooting, tap to resume printing. If issue persists, contact technical support.", + "error_0002052300020038_title": "Printing Anomaly", + "error_0002052300020038_desc": "Check if the filament for Toolhead 3 is broken inside the tube, tangled on the spool, or if the toolhead is clogged. After troubleshooting, tap to resume printing. If issue persists, contact technical support.", + "error_0002052300030038_title": "Printing Anomaly", + "error_0002052300030038_desc": "Check if the filament for Toolhead 4 is broken inside the tube, tangled on the spool, or if the toolhead is clogged. After troubleshooting, tap to resume printing. If issue persists, contact technical support.", + "error_0002052300000039_title": "Filament Anomaly", + "error_0002052300000039_desc": "Filament information not set for Toolhead 1. Go to the filament page to edit, then tap to resume printing.", + "error_0002052300010039_title": "Filament Anomaly", + "error_0002052300010039_desc": "Filament information not set for Toolhead 2. Go to the filament page to edit, then tap to resume printing.", + "error_0002052300020039_title": "Filament Anomaly", + "error_0002052300020039_desc": "Filament information not set for Toolhead 3. Go to the filament page to edit, then tap to resume printing.", + "error_0002052300030039_title": "Filament Anomaly", + "error_0002052300030039_desc": "Filament information not set for Toolhead 4. Go to the filament page to edit, then tap to resume printing.", + "error_0003052800030002_title": "Homing Anomaly", + "error_0003052800030002_desc": "Retry. If issue persists, contact technical support.", + "error_0003052800030003_title": "Homing Anomaly", + "error_0003052800030003_desc": "Retry. If issue persists, contact technical support.", + "error_0003052800030004_title": "Homing Anomaly", + "error_0003052800030004_desc": "Homing sensor not triggered. Check the nozzle for residual filament and clean it before retrying. If issue persists, contact technical support.", + "error_0001053100000007_title": "System Anomaly", + "error_0001053100000007_desc": "Cloud print file download failed. Check your network connection and retry. If issue persists, contact technical support.", + "error_0001053100000008_title": "System Anomaly", + "error_0001053100000008_desc": "USB flash drive read anomaly. Ensure the USB flash drive is properly connected and retry. If issue persists, contact technical support." +} diff --git a/resources/web/flutter_web/assets/assets/i10n/zh-CN.json b/resources/web/flutter_web/assets/assets/i10n/zh-CN.json new file mode 100644 index 0000000000..62fe354ceb --- /dev/null +++ b/resources/web/flutter_web/assets/assets/i10n/zh-CN.json @@ -0,0 +1,955 @@ +{ + "dialog": { + "http": { + "success": "请求成功", + "bad_request": "请求参数错误,请检查输入", + "unauthorized": "未授权或登录已过期,请重新登录", + "forbidden": "权限不足,无法访问该资源", + "not_found": "资源未找到", + "too_many_requests": "请求过于频繁,请稍后再试", + "internal_server_error": "服务器内部错误", + "service_unavailable": "服务暂时不可用,请稍后再试", + "unknown": "网络请求失败" + }, + "open_business": { + "email_verification_failed": "邮箱验证码发送失败,请稍后重试", + "sms_verification_failed": "手机验证码发送失败,请稍后重试", + "file_upload_failed": "文件上传失败,请检查文件格式和大小", + "file_info_not_found": "文件信息不存在,请重新选择文件", + "unknown": "业务操作失败" + }, + "permission": { + "verification_code_error": "验证码错误,请重新输入", + "login_failed": "登录失败,请检查用户名和密码", + "authorization_missing": "缺少授权信息,请重新登录", + "token_expired": "登录已过期,请重新登录", + "authentication_failed": "身份验证失败,请重新登录", + "unknown": "权限验证失败" + }, + "user_service": { + "not_found": "用户不存在,请检查账户信息", + "frozen": "账户已被冻结,请联系客服", + "update_failed": "用户信息更新失败,请稍后重试", + "image_upload_failed": "图片上传失败,请检查图片格式", + "file_upload_failed": "文件上传失败,请检查文件格式", + "certificate_expired": "用户证书已失效,正在重新获取", + "email_not_found": "邮箱不存在,请检查邮箱地址", + "phone_not_found": "手机号不存在,请检查手机号码", + "unknown": "用户服务错误" + }, + "device_service": { + "not_found": "设备未找到,请检查设备连接", + "register_failed": "设备注册失败,请稍后重试", + "bind_failed": "设备绑定失败,请检查设备状态", + "invalid": "设备无效,请检查设备信息", + "image_upload_failed": "设备图片上传失败", + "file_upload_failed": "设备文件上传失败", + "certificate_update_failed": "设备证书更新失败", + "unauthorized": "设备未授权,请重新绑定", + "not_connected": "设备未连接,请检查网络", + "authorization_check_failed": "设备授权检测异常", + "auth_code_locale_not_match": "设备认证检查区域失败", + "unknown": "设备服务错误" + }, + "business_operation": { + "no_permission": "您没有执行此操作的权限", + "unknown": "操作失败" + }, + "title": { + "http": "网络错误", + "open_business": "业务错误", + "permission": "权限错误", + "business_operation": "操作错误", + "user_service": "用户服务错误", + "device_service": "设备服务错误", + "other": "系统错误" + }, + "action": { + "confirm": "确定", + "cancel": "取消", + "retry": "重试", + "relogin": "重新登录", + "contact_support": "联系客服", + "reselect": "重新选择", + "resend": "重新发送", + "check_device": "检查设备" + } + }, + "title": "发现设备", + "description": "发现设备", + "add device": "添加设备", + "input_ip_address": "输入IP地址", + "discovery_tip1": "1. 仅能发现同一局域网内的打印机", + "discovery_tip2": "2. 设备只支持使用2.4GHz Wi-Fi连接使用", + "Nearby machine": "附近机器", + "Manual connect": "手动连接", + "Connect": "连接", + "Connecting...": "连接中...", + "Connecting": "连接中...", + "Uploading...": "上传中...", + "Uploading": "上传中...", + + "Device download file success": "设备下载文件成功", + "Device download file failed": "设备下载文件失败", + + "Upload file success": "上传文件成功", + "Upload file failed": "上传文件失败", + + "Delete file success": "删除文件成功", + "Delete file failed": "删除文件失败", + + "Sending print job...": "正在发送打印任务...", + "Saving image...": "正在保存图片...", + "Save image failed.": "保存图片失败", + "Save image successfully": "保存图片成功", + + "Authorizing timeout!": "授权超时!", + + "Network connection failed. Please check your network connection.": "网络连接失败,请检查您的网络连接", + + "Set led failed": "设置LED失败", + "Set led success": "设置LED成功", + + "Set print speed failed": "设置打印速度失败", + "Set print speed success": "设置打印速度成功", + + "Could not get version from device": "无法获取设备版本", + "Device is offline": "设备已离线", + "Device is online": "设备已在线", + + "Setting extruder mapping": "设置挤出头映射", + + "Download failed": "下载失败", + "Cannot get machine filament mapping": "无法获取机器耗材映射信息", + + "please input number": "请输入数字", + "device is offline, please retry refresh": "设备已离线,请刷新重试", + "device is busy, please waiting ...": "设备繁忙,请等待...", + "device is default, please set to go Home": "设备默认,请设置归位", + "this operation requires the printer to be online, currently the printer is not online": "此操作需要设备在线,当前设备不在线", + + "Connected": "已连接", + "Bound": "已绑定", + "This device is already bound to your account": "此设备已绑定到您的账户", + "Other Machine connect": "其他设备连接", + "The current device is connected": "当前设备已连接", + "No Data": "当前无数据", + "No device found": "未发现设备", + "BED_LEVEL": "热床调平", + "FLOW_CALIBRATE": "流量校准", + "SHAPER_CALIBRATE": "整形校验", + "TIME_LAPSE_CAMERA": "延时摄影", + "Print job sent success": "打印任务已发送", + "Send": "发送", + "Jump": "跳过", + "No filament or machine found": "未发现文件或设备", + "Sending print job": "正在发送打印任务", + "Setting print preferences success": "设置打印偏好成功", + "Setting print preferences failed": "设置打印偏好失败", + "Done": "完成", + "My Devices": "我的设备", + "Recent Files": "近期文件", + "Print History": "打印历史", + "Upload File": "上传文件", + "Logout": "退出登录", + "Login/Register": "登录/注册", + "Login": "登录", + "Register": "注册", + "Open Project": "打开项目", + "Create New Project": "创建项目", + + "Recent Open Files": "近期打开文件", + + "No open files": "暂无打开的文件", + "Delete selected": "删除选中", + "Batch processing": "批量处理", + "Clear files": "清空文件", + + "Connect via device screen": "通过设备屏幕局域网网页页面的PIN进行连接", + "Bind Via PIN": "PIN码绑定", + "Bind Via IP": "IP码搜索绑定", + "Searching for devices": "正在搜索设备", + + "Please authorize on the device screen to continue binding": "请在设备屏幕授权以继续绑定", + "Waiting for device authorization": "等待设备授权中...", + "Binding rejected": "绑定被拒绝", + "Binding successful": "绑定成功", + "I know": "我知道了", + + "Device Control": "设备控制", + + "Delete lan device": "删除本地设备", + "Delete cloud device": "删除云端设备", + "Are you sure you want to delete the lan device?": "您确定是否删除本地设备?", + "Are you sure you want to delete the cloud device?": "您确定是否删除云端设备?", + + "Disconnect": "断开连接", + "Do you want to disconnect with current device?": "是否与当前设备断开连接?", + + "Disconnect success": "断开连接成功", + "Disconnect failed": "断开连接失败", + + "Please login first": "请先登录", + + "Connect success": "连接成功", + "Connect failed": "连接失败", + + "Binding...": "绑定中...", + "Binding failed": "绑定失败", + + "Refresh completed": "刷新完成", + "Refresh failed": "刷新失败", + + "User not logged in": "用户未登录", + + "Not logged in account": "未登录账户", + "• LAVA - Only devices that have enabled LAN debugging can be bound": "• LAVA - 只能绑定开启了局域网调试的设备", + "• J1、Artisan - Devices without account functions are default to LAN debugging mode": "• J1、Artisan 无账户功能的设备则默认是局域网调试模式", + + "Please locate the PIN code on the account page of the device screen and enter it in the box below.": "请在设备界面的账户页面找到PIN码,并在下方框中输入。", + "Machine IP acquisition method": "机器IP获取方法", + "Settings -> LAN Mode -> IP": "设置 -> LAN模式 -> IP", + "PIN code": "PIN码", + "Ip address": "IP地址", + "The current device already exists": "当前设备已存在", + "Whether to delete or disconnect a local presence device": "是否删除或断开本地存在的设备", + "Currently only supports IPV4 addresses": "目前仅支持IPV4地址", + "Please enter IP address": "请输入IP地址", + "Invalid IP address format": "无效的IP地址格式", + "Print history": "打印历史", + + "Loading data...": "正在加载数据...", + "No connectable device": "没有可以连接的设备", + "Please check the network or device status": "请检查网络或设备状态", + "Retry": "重试", + "Device control-new": "设备控制-new", + "Device control-old": "设备控制-old", + + "Device current mode is not available/not online": "设备当前模式不可用/不在线", + + "Device control": "设备控制", + "Firmware update": "固件更新", + + "Scan QR Code": "扫描二维码", + "Bind the device by scanning the QR code on the device screen": "通过扫描设备屏幕二维码绑定设备", + "Please scan the QR code on the printer screen": "扫描设备屏幕二维码绑定设备", + "Camera permission is needed to use the scanner": "需要使用扫描器的相机权限", + "Please grant camera permission to use the scanner": "请授予相机权限以使用扫描器", + "Camera permission not granted": "未授予相机权限", + "My Clound Device": "我的云设备", + "Bind This Device": "绑定此设备", + "More Nearby Devices": "更多附近设备", + "Discover devices in the LAN": "发现同个局域网内的设备", + "You haven't bound any devices yet": "你还没有绑定任何设备", + "Nearby Devices": "附近的设备", + "Scan QR Code to Bind": "扫码绑定", + "Bind Device": "绑定设备", + "Confirm Bind": "确认绑定", + "bind_device_tip_format": "确认将打印机{}与当前账号产绑定?", + "Cancel": "取消", + "Ok": "确定", + "Bind": "绑定", + "Search": "搜索", + "Scan": "扫一扫", + "Nearby Machine": "附近设备", + "Please make sure the device is turned on and nearby": "请确保设备已打开并在附近", + "Printing Task Messages": "打印任务消息", + "Printing Task": "打印任务", + "Control": "控制", + "ToolHead": "执行头", + "Move": "移动", + "Filament": "耗材", + "Camera": "摄像机", + + "File information": "文件信息", + "Model information": "模型信息", + "Estimated material": "预估用料", + "Estimated time": "预估用时", + "File name": "文件名称", + + "Select printer": "选择打印机", + "Edit filament": "编辑耗材", + "Select Tool Head": "选择打印头", + "Please enter the correct number": "请输入正确的数字", + + "Preference setting": "偏好设置", + "Auto leveling": "自动调平", + "Time-lapse camera": "延时摄影", + "Bed leveling": "热床调平", + "Flow calibrate": "流量校准", + "Extrusion flow calibrate": "挤出流量校准", + "When enabled, the printer will automatically calibrate flow compensation before printing. Recommended after each filament change.": "启用后,打印机将在打印前自动校准流量补偿。每次更换丝材后建议执行。", + + "Cannot get the current slice file information, or the file does not exist, please re-operate the slice": "无法获取当前切片文件信息,或文件不存在,请重新操作切片", + "Cannot get connected machine": "无法获取到当前已连接的设备信息", + "Timeout: Cannot get file filament mapping": "无法获取文件耗材映射信息", + "Cannot load file content": "无法加载文件内容", + + "Confirm": "确认", + "device_input_pin_code_desc": "请输入PIN码.", + "device_input_pin_code_tips_desc": "请输入8位PIN码", + "device_waiting_for_authorizing_title": "请在设备屏幕授权以继续绑定", + "device_waiting_for_authorizing_desc": "等待设备授权中...", + "Exit authorizing": "退出授权", + "Exit authorizing process?": "退出授权流程?", + "Keep waiting": "继续等待", + "Rename your device": "修改你的设备名称", + "Please input your device name": "请输入你的设备名称", + "Lan Mode": "局域网模式", + "Finding new devices": "发现附近新设备", + "Bound successfully": "绑定成功", + "Bound rejected": "绑定被拒绝", + "Device not available/device offline": "设备当前模式不可用/不在线", + "Got it": "我知道了", + "Connect device success": "连接设备成功", + "Connect device failed": "连接设备失败", + "Idle": "空闲", + "Working": "忙碌", + "Error": "异常", + "Offline": "离线", + "XYZ Calibrating": "XYZ校准中", + "Heated bed Calibrating": "热床校准中", + "Flow Calibrating": "流量校准中", + "Vibration Compensation Calibrating": "震动抑制校准中", + "Updating": "升级中", + "Manual Adjusting Spring Screw": "调整弹簧螺丝", + + "Homing": "正在归位", + "PEI sheet placement detection in progress...": "PEI 钢板放置状态检测中...", + "Resuming printing...": "断电续打恢复中...", + "Leveling progress...": "热床调平中...", + "Paused": "任务暂停", + "Resuming print...": "打印恢复中...", + "Auto-reloading filament...": "自动续料中...", + "Checking toolheads...": "取放头检测中...", + "Auto-loading filament...": "自动进料中...", + "Pre-extruding...": "预挤出中...", + "Cleaning Nozzle 1 (1/4)": "清洁1喷嘴 (1/4)", + "Cleaning Nozzle 2 (2/4)": "清洁2喷嘴 (2/4)", + "Cleaning Nozzle 3 (3/4)": "清洁3喷嘴 (3/4)", + "Cleaning Nozzle 4 (4/4)": "清洁4喷嘴 (4/4)", + "Calibrating Toolhead 1...": "1号执行头校准中...", + "Calibrating Toolhead 2...": "2号执行头校准中...", + "Calibrating Toolhead 3...": "3号执行头校准中...", + "Calibrating Toolhead 4...": "4号执行头校准中...", + "Wiping Nozzle...": "喷嘴擦拭中...", + "Cooling Nozzle...": "喷嘴冷却中...", + "Toolhead 1 Calibrating extrusion flow": "执行头 1 正在校准挤出流量", + "Toolhead 2 Calibrating extrusion flow": "执行头 2 正在校准挤出流量", + "Toolhead 3 Calibrating extrusion flow": "执行头 3 正在校准挤出流量", + "Toolhead 4 Calibrating extrusion flow": "执行头 4 正在校准挤出流量", + "Calibrating vibration compensation...": "振动补偿校准中...", + "Reset to Initial Position": "复原螺丝到初始位置", + "Sampling to Calculate Reference Height": "采样以计算平台高度基准值", + "Adjust Leveling Wheels": "调整手拧螺母", + "Re-checking reference points...": "基准点复测中……", + "Auto Loading": "自动进料", + "Unloading": "退料", + "Manual Loading": "手动进料", + "Wait for device response...": "等待设备响应...", + "loading...": "加载中...", + "Loading...": "加载中...", + "Login...": "登录中...", + + "Heated Bed Temp.": "热床温度", + "Print Speed": "打印速度", + "Fan": "风扇", + + "On": "开", + "Off": "关", + "No extruder": "无挤出头", + "Extruder": "挤出头", + "Extruder Temp.": "挤出头温度", + "operating...": "操作中……", + "Park Extruder": "放回执行头", + "Pick Extruder": "取出执行头", + "Heated Bed": "热床", + "Homing...": "归位中...", + "Led": "Led", + "Device Name": "设备名称", + "Device Firmware Update": "固件信息与检查更新", + "Please stay tuned.": "敬请期待", + "Print Preference": "打印偏好设置", + "Device Calibration": "设备校准", + "Local Files": "本地文件", + "Time-lapse Videos": "延时摄影", + "Delete Device": "删除设备", + "Unbind Device": "解绑设备", + "Colors": "颜色", + "Filaments": "耗材", + "color_name_black": "黑色", + "color_name_white": "白色", + "color_name_red": "红色", + "color_name_green": "绿色", + "color_name_blue": "蓝色", + "color_name_yellow": "黄色", + "color_name_cyan": "青色", + "color_name_purple": "紫色", + "color_name_gray": "灰色", + "color_name_orange": "橙色", + "color_name_brown": "棕色", + "color_name_pink": "粉色", + "Select Color": "选择颜色", + "Select Filament": "选择耗材", + "Main Cooling Fan Speed": "主散热风扇风速", + "Assist Cooling Fan Speed": "辅助散热风扇风速", + "Air Purifier Fan Speed": "空气净化风扇风速", + "Filename": "文件名称", + "Estimated Time": "预估用时", + "Estimated Materials": "预估用料", + "Configure Printing": "配置打印", + "Print Preferences Settings": "打印偏好设置", + "Auto-Leveling": "自动调平", + "Flow Calibration": "流量校准", + "Time-Lapse Photography": "延时摄影", + "Start Print": "开始打印", + + + "dialog_device_control_modify_heated_bed_temperature_tips": "温度必须在0°C到100°C之间", + "dialog_device_control_modify_print_speed_tips": "打印速度必须在50%到150%之间", + "dialog_delete_device_desc_format": "你想要删除设备{}吗?", + "dialog_unbind_device_desc_format": "你想要解绑设备{}吗?", + + "Camera not on": "摄像头未开启", + + "Are you sure you want to log in?": "确定要登录吗?", + "Login credentials have expired, please login again": "登录凭证已过期,请重新登录", + "Set Extruder Temperature": "设置挤出头温度", + "Enter Temperature": "输入温度", + "Please enter temperature value": "请输入温度值", + "Please enter a valid temperature value": "请输入有效的温度值", + "Temperature should be between 0-300°C": "温度应在0-300°C之间", + "Temperature should be between 0-100°C": "温度应在0-100°C之间", + "Temperature should be greater than 0°C": "温度应大于0°C", + "Set Header Bed Temperature": "设置热床温度", + "Please take a time-lapse photo on the device": "请在设备上进行延时摄影", + "Take a time-lapse photo": "去拍摄", + "Unconnected machine": "未连接的设备", + "Filament auto feed": "自动进料", + "Filament auto feed description": "自动进料\n• 耗材塞入对应进料口直至对应进料口指示灯亮起,设备会预载料,打印开始时会自动进料\n材料信息\n• 官方3D打印耗材信息会被设备识别。非官方耗材需要手动编辑材料信息。\n自动续打\n• 打印过程中发生耗材断裂时,若设备配备相同品牌、类型、颜色的耗材,设备会自动续打。", + "Unconnected device": "未连接设备", + "Current filament not loaded, please load filament first": "当前未装载耗材,请先装料", + "Loading filament config...": "加载耗材配置中...", + + "Ivory White": "象牙白", + "Carbon Black": "碳黑", + "Lava Orange": "熔岩橙", + "Sunburst Yellow": "日落黄", + "Moss Mist": "苔藓灰", + "Pine Green": "松绿", + "Engine Red": "引擎红", + "Ash Grey": "灰烬灰", + "Celestial Blue": "天蓝", + "Sakura Pink": "樱花粉", + "Pearl White": "珍珠白", + "Black": "黑色", + "Grey": "灰色", + "Blue": "蓝色", + "Red": "红色", + "Purple": "紫色", + "Orange": "橙色", + "Brown": "棕色", + "Pink": "粉色", + "Green": "绿色", + "Yellow": "黄色", + "White": "白色", + "Sky Blue": "天蓝", + + + "Time remaining": "剩余时间", + "N/A": "N/A", + "Are you sure you want to disconnect this device?": "确定要断开此设备吗?", + "After unbinding the device, the device will be unable to function.": "解绑后,设备将无法正常使用。", + + "Not Found Page": "找不到页面", + "Go Back": "返回", + + "Click to select printer": "点击选择打印机", + "No available printer": "暂无可用打印机", + + "Unable to obtain the current slice file information, please re-operate the slice": "无法获取当前切片文件信息,请重新操作切片", + "dialog_file_download_success_tips": "文件{}已下载成功,发起上传...", + "dialog_file_download_failed_tips": "文件{}下载失败,请重试...", + "dialog_file_upload_failed_tips": "文件{}上传失败,请重试...", + "dialog_file_upload_success_to_device_tips": "文件{}已上传到设备,发起打印...", + "dialog_file_upload_success_to_cloud_tips": "文件{}已上传到云服务,发起打印...", + "dialog_file_send_success_to_device_tips": "文件{}已发送成功到设备", + "cancel_print_confirm_title": "提示", + "cancel_print_confirm_message": "您确认要终止本次打印任务么?", + "cancel_print_confirm_yes": "确认", + "cancel_print_confirm_no": "取消", + + "Refresh More": "刷新更多", + "downloading_desc_format": "{},下载中...({}%)", + "downloaded_desc_format": "{},下载完成", + "Version Compatibility": "版本兼容", + "device_firmware_version_not_compatible_desc": "检测到当前设备固件版本过低,为避免出现通信问题,建议升级设备固件", + "dont_remind_again_desc": "不再提示", + "Remind later": "稍后提示", + "Could not get device version": "无法获取设备固件版本信息", + + "The current device is currently processing the offline state, please check the device and try again.": "当前设备处于离线状态,请检查设备并重试", + "Your account has been unbound from the device. Please reselect the device to initiate the connection.": "您的账户已被设备解绑,请重新选择设备发起连接", + "The device failed to download the model file. Please check the device network and upload it again.": "设备下载模型文件失败,请检查设备网络并重新上传", + "The current mode of the device is not available, please check the current LAN mode status.": "设备当前模式不可用,请检查当前局域网模式状态", + "The device is not available, please check the device network status.": "设备不可用,请检查设备网络状态", + "The device is not available, please check the device network status or try again later.": "设备不可用,请检查设备网络状态或稍后重试", + "File upload failed, please check network connection and try again.": "文件上传失败,请检查网络连接后重试", + "Unable to get current slicing details, go to the Prepare page to initiate slicing": "无法获取当前切片详情,请前往准备页面发起切片", + "The device is not connected, please click the printer to initiate device connection.": "设备未连接,请点击选择打印机发起设备连接", + "dialog_filament_type_not_match_tips": "此喷嘴耗材类型与模型预设耗材类型不匹配,请更换该喷嘴耗材类型或更改预设耗材类型", + "dialog_filament_type_none_tips": "未识别到耗材,请在设备上挂载耗材或编辑耗材信息", + "Features are under development, please stay tuned": "功能开发中, 敬请期待", + + "No time-lapse video": "暂无延时摄影视频", + + "Bind success": "绑定成功", + "Device connect error, please return to device page and connect again.": "设备连接异常,请返回“我的设备”页,重新发起连接", + "Failed to obtain connection authorization": "获取连接授权失败", + "The existing device connection is connecting, please wait": "当前已有设备连接正在连接,请稍候", + "The device authorization has been removed, please add the device again.": "设备授权已移除,请重新添加设备", + "The device communication failed, please check whether the device is normal and unresponsive.": "设备通信失败,请检查设备是否正常", + "The network is disconnected, please check whether the network environment of the software is normal.": "网络断开,请检查软件的网络环境是否正常", + "this command requires the printer to be online, currently the printer is not online": "当前设备不在线", + "Bind device failed, please check if pin code is correct.": "绑定失败,可能是 PIN 码输入错误或者是 PIN 码检测失败", + "Bind device failed, please check if device locale setting is not same as client.": "绑定失败,软件与设备区域设置不一致", + "delete_selected_files_confirm_title": "确认删除选中文件", + "delete_selected_files_confirm_message": "确定要删除选中的文件吗?此操作无法撤销。", + "clear_all_files_confirm_title": "确认清空所有文件", + "clear_all_files_confirm_message": "确定要清空所有最近文件吗?此操作无法撤销。", + "delete_confirm_yes": "确认", + "delete_confirm_no": "取消", + "connect_devcice_fail_tip_format": "连接{}失败,请重新选择设备并连接", + + "Check": "查看", + "default_exception_title": "异常", + "Error Code": "错误码", + "error_0002052300000000_title": "耗材异常", + "error_0002052300000000_desc": "检测到 1 号执行头断料,可尝试重新装载耗材,然后点击继续打印恢复作业。", + "error_0002052300010000_title": "耗材异常", + "error_0002052300010000_desc": "检测到 2 号执行头断料,可尝试重新装载耗材,然后点击继续打印恢复作业。", + "error_0002052300020000_title": "耗材异常", + "error_0002052300020000_desc": "检测到 3 号执行头断料,可尝试重新装载耗材,然后点击继续打印恢复作业。", + "error_0002052300030000_title": "耗材异常", + "error_0002052300030000_desc": "检测到 4 号执行头断料,可尝试重新装载耗材,然后点击继续打印恢复作业。", + "error_0003052300000001_title": "喷嘴温度异常", + "error_0003052300000001_desc": "1 号执行头喷嘴温度不足,喷嘴挤出温度须在 170℃ 以上。", + "error_0003052300010001_title": "喷嘴温度异常", + "error_0003052300010001_desc": "2 号执行头喷嘴温度不足,喷嘴挤出温度须在 170℃ 以上。", + "error_0003052300020001_title": "喷嘴温度异常", + "error_0003052300020001_desc": "3 号执行头喷嘴温度不足,喷嘴挤出温度须在 170℃ 以上。", + "error_0003052300030001_title": "喷嘴温度异常", + "error_0003052300030001_desc": "4 号执行头喷嘴温度不足,喷嘴挤出温度须在 170℃ 以上。", + "error_0003052300000002_title": "喷嘴温度异常", + "error_0003052300000002_desc": "请关机,然后检查 1 号执行头温度传感器的连接。", + "error_0003052300010002_title": "喷嘴温度异常", + "error_0003052300010002_desc": "请关机,然后检查 2 号执行头温度传感器的连接。", + "error_0003052300020002_title": "喷嘴温度异常", + "error_0003052300020002_desc": "请关机,然后检查 3 号执行头温度传感器的连接。", + "error_0003052300030002_title": "喷嘴温度异常", + "error_0003052300030002_desc": "请关机,然后检查 4 号执行头温度传感器的连接。", + "error_0003052300000003_title": "喷嘴温度异常", + "error_0003052300000003_desc": "请关机,然后检查 1 号执行头加热片或温度传感器的连接。", + "error_0003052300010003_title": "喷嘴温度异常", + "error_0003052300010003_desc": "请关机,然后检查 2 号执行头加热片或温度传感器的连接。", + "error_0003052300020003_title": "喷嘴温度异常", + "error_0003052300020003_desc": "请关机,然后检查 3 号执行头加热片或温度传感器的连接。", + "error_0003052300030003_title": "喷嘴温度异常", + "error_0003052300030003_desc": "请关机,然后检查 4 号执行头加热片或温度传感器的连接。", + "error_0003052300000004_title": "挤出长度超限", + "error_0003052300000004_desc": "1 号执行头单次挤出距离过长。可能是 G-code 切片文件中有错误代码,建议使用 Snapmaker Orca 导出的 G-code 切片文件进行打印以避免问题。", + "error_0003052300010004_title": "挤出长度超限", + "error_0003052300010004_desc": "2 号执行头单次挤出距离过长。可能是 G-code 切片文件中有错误代码,建议使用 Snapmaker Orca 导出的 G-code 切片文件进行打印以避免问题。", + "error_0003052300020004_title": "挤出长度超限", + "error_0003052300020004_desc": "3 号执行头单次挤出距离过长。可能是 G-code 切片文件中有错误代码,建议使用 Snapmaker Orca 导出的 G-code 切片文件进行打印以避免问题。", + "error_0003052300030004_title": "挤出长度超限", + "error_0003052300030004_desc": "4 号执行头单次挤出距离过长。可能是 G-code 切片文件中有错误代码,建议使用 Snapmaker Orca 导出的 G-code 切片文件进行打印以避免问题。", + "error_0003052300000005_title": "挤出流量超限", + "error_0003052300000005_desc": "1 号执行头打印挤出量超过最大允许挤出量。可能是 G-code 切片文件配置错误,建议使用 Snapmaker Orca 导出的 G-code 文件打印以避免问题。", + "error_0003052300010005_title": "挤出流量超限", + "error_0003052300010005_desc": "2 号执行头打印挤出量超过最大允许挤出量。可能是 G-code 切片文件配置错误,建议使用 Snapmaker Orca 导出的 G-code 文件打印以避免问题。", + "error_0003052300020005_title": "挤出流量超限", + "error_0003052300020005_desc": "3 号执行头打印挤出量超过最大允许挤出量。可能是 G-code 切片文件配置错误,建议使用 Snapmaker Orca 导出的 G-code 文件打印以避免题。", + "error_0003052300030005_title": "挤出流量超限", + "error_0003052300030005_desc": "4 号执行头打印挤出量超过最大允许挤出量。可能是 G-code 切片文件配置错误,建议使用 Snapmaker Orca 导出的 G-code 文件打印以避免问题。", + "error_0003052300000006_title": "喷嘴温度异常", + "error_0003052300000006_desc": "可能是 G-code 切片文件中设置了本打印机无法识别的执行头。建议使用 Snapmaker Orca 导出的 G-code 切片文件进行打印以避免问题。", + "error_0002052300000007_title": "切头失败", + "error_0002052300000007_desc": "1 号执行头切头失败。请检查 1 号和 2 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010007_title": "切头失败", + "error_0002052300010007_desc": "2 号执行头切头失败。请检查 1 号和 2 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020007_title": "切头失败", + "error_0002052300020007_desc": "3 号执行头切头失败。请检查 1 号和 2 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030007_title": "切头失败", + "error_0002052300030007_desc": "4 号执行头切头失败。请检查 1 号和 2 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000008_title": "切头失败", + "error_0002052300000008_desc": "1 号执行头切头失败。请检查 1 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010008_title": "切头失败", + "error_0002052300010008_desc": "2 号执行头切头失败。请检查 1 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020008_title": "切头失败", + "error_0002052300020008_desc": "3 号执行头切头失败。请检查 1 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030008_title": "切头失败", + "error_0002052300030008_desc": "4 号执行头切头失败。请检查 1 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000009_title": "切头失败", + "error_0002052300000009_desc": "1 号执行头切头失败。请检查 1 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010009_title": "切头失败", + "error_0002052300010009_desc": "2 号执行头切头失败。请检查 1 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020009_title": "切头失败", + "error_0002052300020009_desc": "3 号执行头切头失败。请检查 1 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030009_title": "切头失败", + "error_0002052300030009_desc": "4 号执行头切头失败。请检查 1 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000010_title": "切头失败", + "error_0002052300000010_desc": "1 号执行头切头失败,请检查 2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010010_title": "切头失败", + "error_0002052300010010_desc": "2 号执行头切头失败。请检查 2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020010_title": "切头失败", + "error_0002052300020010_desc": "3 号执行头切头失败。请检查 2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030010_title": "切头失败", + "error_0002052300030010_desc": "4 号执行头切头失败。请检查 2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000011_title": "切头失败", + "error_0002052300000011_desc": "1 号执行头切头失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010011_title": "切头失败", + "error_0002052300010011_desc": "2 号执行头切头失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020011_title": "切头失败", + "error_0002052300020011_desc": "3 号执行头切头失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030011_title": "切头失败", + "error_0002052300030011_desc": "4 号执行头切头失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000012_title": "切头失败", + "error_0002052300000012_desc": "1 号执行头切头失败。请检查 3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010012_title": "切头失败", + "error_0002052300010012_desc": "2 号执行头切头失败。请检查 3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020012_title": "切头失败", + "error_0002052300020012_desc": "3 号执行头切头失败。请检查 3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030012_title": "切头失败", + "error_0002052300030012_desc": "4 号执行头切头失败。请检查 3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000013_title": "切头失败", + "error_0002052300000013_desc": "1 号执行头切头失败。请检查 1 号、2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010013_title": "切头失败", + "error_0002052300010013_desc": "2 号执行头切头失败。请检查 1 号、2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020013_title": "切头失败", + "error_0002052300020013_desc": "3 号执行头切头失败。请检查 1 号、2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030013_title": "切头失败", + "error_0002052300030013_desc": "4 号执行头切头失败。请检查 1 号、2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000014_title": "切头失败", + "error_0002052300000014_desc": "1 号执行头切头失败。请检查 1 号、2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010014_title": "切头失败", + "error_0002052300010014_desc": "2 号执行头切头失败。请检查 1 号、2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020014_title": "切头失败", + "error_0002052300020014_desc": "3 号执行头切头失败。请检查 1 号、2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030014_title": "切头失败", + "error_0002052300030014_desc": "4 号执行头切头失败。请检查 1 号、2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000015_title": "切头失败", + "error_0002052300000015_desc": "1 号执行头切头失败。请检查 1 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010015_title": "切头失败", + "error_0002052300010015_desc": "2 号执行头切头失败。请检查 1 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020015_title": "切头失败", + "error_0002052300020015_desc": "3 号执行头切头失败。请检查 1 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030015_title": "切头失败", + "error_0002052300030015_desc": "4 号执行头切头失败。请检查 1 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000016_title": "切头失败", + "error_0002052300000016_desc": "1 号执行头切头失败。请检查 2 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010016_title": "切头失败", + "error_0002052300010016_desc": "2 号执行头切头失败。请检查 2 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020016_title": "切头失败", + "error_0002052300020016_desc": "3 号执行头切头失败。请检查 2 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030016_title": "切头失败", + "error_0002052300030016_desc": "4 号执行头切头失败。请检查 2 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000017_title": "切头失败", + "error_0002052300000017_desc": "1 号执行头切头失败。请依次检查所有执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010017_title": "切头失败", + "error_0002052300010017_desc": "2 号执行头切头失败。请依次检查所有执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020017_title": "切头失败", + "error_0002052300020017_desc": "3 号执行头切头失败。请依次检查所有执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030017_title": "切头失败", + "error_0002052300030017_desc": "4 号执行头切头失败。请依次检查所有执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000018_title": "换头异常", + "error_0002052300000018_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300010018_title": "换头异常", + "error_0002052300010018_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300020018_title": "换头异常", + "error_0002052300020018_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300030018_title": "换头异常", + "error_0002052300030018_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300000019_title": "放头失败", + "error_0002052300000019_desc": "1 号执行头放回失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300010019_title": "放头失败", + "error_0002052300010019_desc": "2 号执行头放回失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300020019_title": "放头失败", + "error_0002052300020019_desc": "3 号执行头放回失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300030019_title": "放头失败", + "error_0002052300030019_desc": "4 号执行头放回失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300000020_title": "换头异常", + "error_0002052300000020_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300010020_title": "换头异常", + "error_0002052300010020_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300020020_title": "换头异常", + "error_0002052300020020_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300030020_title": "换头异常", + "error_0002052300030020_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300000021_title": "取头失败", + "error_0002052300000021_desc": "1 号执行头取出失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300010021_title": "取头失败", + "error_0002052300010021_desc": "2 号执行头取出失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300020021_title": "取头失败", + "error_0002052300020021_desc": "3 号执行头取出失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300030021_title": "取头失败", + "error_0002052300030021_desc": "4 号执行头取出失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300000022_title": "取头失败", + "error_0002052300000022_desc": "1 号执行头取出失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300010022_title": "取头失败", + "error_0002052300010022_desc": "2 号执行头取出失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300020022_title": "取头失败", + "error_0002052300020022_desc": "3 号执行头取出失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300030022_title": "取头失败", + "error_0002052300030022_desc": "4 号执行头取出失败,请重试。若不能解决,请联系技术支持。", + "error_0002052300000023_title": "换头异常", + "error_0002052300000023_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300010023_title": "换头异常", + "error_0002052300010023_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300020023_title": "换头异常", + "error_0002052300020023_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300030023_title": "换头异常", + "error_0002052300030023_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300000024_title": "取头失败", + "error_0002052300000024_desc": "1 号执行头取出失败。请检查 1 号和 2 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010024_title": "取头失败", + "error_0002052300010024_desc": "2 号执行头取出失败。请检查 1 号和 2 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020024_title": "取头失败", + "error_0002052300020024_desc": "3 号执行头取出失败。请检查 1 号和 2 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030024_title": "取头失败", + "error_0002052300030024_desc": "4 号执行头取出失败。请检查 1 号和 2 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000025_title": "取头失败", + "error_0002052300000025_desc": "1 号执行头取出失败。请检查 1 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010025_title": "取头失败", + "error_0002052300010025_desc": "2 号执行头取出失败。请检查 1 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020025_title": "取头失败", + "error_0002052300020025_desc": "3 号执行头取出失败。请检查 1 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030025_title": "取头失败", + "error_0002052300030025_desc": "4 号执行头取出失败。请检查 1 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000026_title": "取头失败", + "error_0002052300000026_desc": "1 号执行头取出失败。请检查 1 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010026_title": "取头失败", + "error_0002052300010026_desc": "2 号执行头取出失败。请检查 1 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020026_title": "取头失败", + "error_0002052300020026_desc": "3 号执行头取出失败。请检查 1 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030026_title": "取头失败", + "error_0002052300030026_desc": "4 号执行头取出失败。请检查 1 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000027_title": "取头失败", + "error_0002052300000027_desc": "1 号执行头取出失败。请检查 2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010027_title": "取头失败", + "error_0002052300010027_desc": "2 号执行头取出失败。请检查 2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020027_title": "取头失败", + "error_0002052300020027_desc": "3 号执行头取出失败。请检查 2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030027_title": "取头失败", + "error_0002052300030027_desc": "4 号执行头取出失败。请检查 2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000028_title": "取头失败", + "error_0002052300000028_desc": "1 号执行头取出失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010028_title": "取头失败", + "error_0002052300010028_desc": "2 号执行头取出失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020028_title": "取头失败", + "error_0002052300020028_desc": "3 号执行头取出失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030028_title": "取头失败", + "error_0002052300030028_desc": "4 号执行头取出失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000029_title": "取头失败", + "error_0002052300000029_desc": "1 号执行头取出失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010029_title": "取头失败", + "error_0002052300010029_desc": "2 号执行头取出失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020029_title": "取头失败", + "error_0002052300020029_desc": "3 号执行头取出失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030029_title": "取头失败", + "error_0002052300030029_desc": "4 号执行头取出失败。请检查 2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000030_title": "取头失败", + "error_0002052300000030_desc": "1 号执行头取出失败。请检查 1 号、2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010030_title": "取头失败", + "error_0002052300010030_desc": "2 号执行头取出失败。请检查 1 号、2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020030_title": "取头失败", + "error_0002052300020030_desc": "3 号执行头取出失败。请检查 1 号、2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030030_title": "取头失败", + "error_0002052300030030_desc": "4 号执行头取出失败。请检查 1 号、2 号和 3 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000031_title": "取头失败", + "error_0002052300000031_desc": "1 号执行头取出失败。请检查 1 号、2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010031_title": "取头失败", + "error_0002052300010031_desc": "2 号执行头取出失败。请检查 1 号、2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020031_title": "取头失败", + "error_0002052300020031_desc": "3 号执行头取出失败。请检查 1 号、2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030031_title": "取头失败", + "error_0002052300030031_desc": "4 号执行头取出失败。请检查 1 号、2 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000032_title": "取头失败", + "error_0002052300000032_desc": "1 号执行头取出失败。请检查 1 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010032_title": "取头失败", + "error_0002052300010032_desc": "2 号执行头取出失败。请检查 1 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020032_title": "取头失败", + "error_0002052300020032_desc": "3 号执行头取出失败。请检查 1 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030032_title": "取头失败", + "error_0002052300030032_desc": "4 号执行头取出失败。请检查 1 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000033_title": "取头失败", + "error_0002052300000033_desc": "1 号执行头取出失败。请检查 2 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010033_title": "取头失败", + "error_0002052300010033_desc": "2 号执行头取出失败。请检查 2 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020033_title": "取头失败", + "error_0002052300020033_desc": "3 号执行头取出失败。请检查 2 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030033_title": "取头失败", + "error_0002052300030033_desc": "4 号执行头取出失败。请检查 2 号、3 号和 4 号执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000034_title": "取头失败", + "error_0002052300000034_desc": "1 号执行头取出失败。请依次检查所有执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300010034_title": "取头失败", + "error_0002052300010034_desc": "2 号执行头取出失败。请依次检查所有执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300020034_title": "取头失败", + "error_0002052300020034_desc": "3 号执行头取出失败。请依次检查所有执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300030034_title": "取头失败", + "error_0002052300030034_desc": "4 号执行头取出失败。请依次检查所有执行头是否有掉落或歪斜,请手动调整后重试。若仍报错,请联系技术支持。", + "error_0002052300000035_title": "换头异常", + "error_0002052300000035_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300010035_title": "换头异常", + "error_0002052300010035_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300020035_title": "换头异常", + "error_0002052300020035_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0002052300030035_title": "换头异常", + "error_0002052300030035_desc": "检查当前执行头的抓取、放置状态有无异常,同时检查未被抓取的执行头是否安装到位。手动将异常执行头装回放置架后,点击继续按钮尝试恢复任务。", + "error_0003052300000036_title": "喷嘴温度超限", + "error_0003052300000036_desc": "1 号执行头的喷嘴目标温度超出限制,请检查 G-code 切片文件。建议使用 Snapmaker Orca 导出的切片文件进行打印。", + "error_0003052300010036_title": "喷嘴温度超限", + "error_0003052300010036_desc": "2 号执行头的喷嘴目标温度超出限制,请检查 G-code 切片文件。建议使用 Snapmaker Orca 导出的切片文件进行打印。", + "error_0003052300020036_title": "喷嘴温度超限", + "error_0003052300020036_desc": "3 号执行头的喷嘴目标温度超出限制,请检查 G-code 切片文件。建议使用 Snapmaker Orca 导出的切片文件进行打印。", + "error_0003052300030036_title": "喷嘴温度超限", + "error_0003052300030036_desc": "4 号执行头的喷嘴目标温度超出限制,请检查 G-code 切片文件。建议使用 Snapmaker Orca 导出的切片文件进行打印。", + "error_0002052300009000_title": "流量校准异常", + "error_0002052300009000_desc": "1 号执行头流量校准异常,请联系技术支持。", + "error_0002052300019000_title": "流量校准异常", + "error_0002052300019000_desc": "2 号执行头流量校准异常,请联系技术支持。", + "error_0002052300029000_title": "流量校准异常", + "error_0002052300029000_desc": "3 号执行头流量校准异常,请联系技术支持。", + "error_0002052300039000_title": "流量校准异常", + "error_0002052300039000_desc": "4 号执行头流量校准异常,请联系技术支持。", + "error_0001052300000037_title": "执行头养护", + "error_0001052300000037_desc": "执行头换头次数已达养护要求。请依次清洁两侧的 Pogopin,并为执行头的钢珠、钢针增加润滑脂。", + "error_0002052500000000_title": "耗材异常", + "error_0002052500000000_desc": "1 号进料模块出现异常,请联系技术支持。", + "error_0002052500010000_title": "耗材异常", + "error_0002052500010000_desc": "2 号进料模块出现异常,请联系技术支持。", + "error_0002052500020000_title": "耗材异常", + "error_0002052500020000_desc": "3 号进料模块出现异常,请联系技术支持。", + "error_0002052500030000_title": "耗材异常", + "error_0002052500030000_desc": "4 号进料模块出现异常,请联系技术支持。", + "error_0002052500000001_title": "耗材异常", + "error_0002052500000001_desc": "1 号进料模块出现异常,请联系技术支持。", + "error_0002052500010001_title": "耗材异常", + "error_0002052500010001_desc": "2 号进料模块出现异常,请联系技术支持。", + "error_0002052500020001_title": "耗材异常", + "error_0002052500020001_desc": "3 号进料模块出现异常,请联系技术支持。", + "error_0002052500030001_title": "耗材异常", + "error_0002052500030001_desc": "4 号进料模块出现异常,请联系技术支持。", + "error_0002052500000002_title": "耗材异常", + "error_0002052500000002_desc": "1 号进料模块进料异常,请检查是否缠料或进料模块连接端子是否接好。若打印机正在打印中,排查问题后可点击继续打印恢复作业。", + "error_0002052500010002_title": "耗材异常", + "error_0002052500010002_desc": "2 号进料模块进料异常,请检查是否缠料或进料模块连接端子是否接好。若打印机正在打印中,排查问题后可点击继续打印恢复作业。", + "error_0002052500020002_title": "耗材异常", + "error_0002052500020002_desc": "3 号进料模块进料异常,请检查是否缠料或进料模块连接端子是否接好。若打印机正在打印中,排查问题后可点击继续打印恢复作业。", + "error_0002052500030002_title": "耗材异常", + "error_0002052500030002_desc": "4 号进料模块进料异常,请检查是否缠料或进料模块连接端子是否接好。若打印机正在打印中,排查问题后可点击继续打印恢复作业。", + "error_0002052500000003_title": "耗材未装载", + "error_0002052500000003_desc": "1 号进料模块未检测到耗材进入,请插入耗材。", + "error_0002052500010003_title": "耗材未装载", + "error_0002052500010003_desc": "2 号进料模块未检测到耗材进入,请插入耗材。", + "error_0002052500020003_title": "耗材未装载", + "error_0002052500020003_desc": "3 号进料模块未检测到耗材进入,请插入耗材。", + "error_0002052500030003_title": "耗材未装载", + "error_0002052500030003_desc": "4 号进料模块未检测到耗材进入,请插入耗材。", + "error_0002052500000004_title": "挤出受阻", + "error_0002052500000004_desc": "1 号执行头传动齿轮处出现耗材挤出受阻,请检查清理后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500010004_title": "挤出受阻", + "error_0002052500010004_desc": "2 号执行头传动齿轮处出现耗材挤出受阻。请检查清理后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500020004_title": "挤出受阻", + "error_0002052500020004_desc": "3 号执行头传动齿轮处出现耗材挤出受阻。请检查清理后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500030004_title": "挤出受阻", + "error_0002052500030004_desc": "4 号执行头传动齿轮处出现耗材挤出受阻。请检查清理后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500000005_title": "耗材异常", + "error_0002052500000005_desc": "1 号进料模块送料超时。请检查送料路径是否受阻,确保通畅后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500010005_title": "耗材异常", + "error_0002052500010005_desc": "2 号进料模块送料超时。请检查送料路径是否受阻,确保通畅后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500020005_title": "耗材异常", + "error_0002052500020005_desc": "3 号进料模块送料超时。请检查送料路径是否受阻,确保通畅后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500030005_title": "耗材异常", + "error_0002052500030005_desc": "4 号进料模块送料超时。请检查送料路径是否受阻,确保通畅后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500000006_title": "耗材异常", + "error_0002052500000006_desc": "1 号进料模块送料超时。请检查导料管是否脱落或送料路径是否受阻,确保通畅后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500010006_title": "耗材异常", + "error_0002052500010006_desc": "2 号进料模块送料超时。请检查导料管是否脱落或送料路径是否受阻,确保通畅后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500020006_title": "耗材异常", + "error_0002052500020006_desc": "3 号进料模块送料超时。请检查导料管是否脱落或送料路径是否受阻,确保通畅后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0002052500030006_title": "耗材异常", + "error_0002052500030006_desc": "4 号进料模块送料超时。请检查导料管是否脱落或送料路径是否受阻,确保通畅后重试。若打印机正在打印中,点击继续打印恢复作业。", + "error_0001052500000008_title": "耗材异常", + "error_0001052500000008_desc": "1 号执行头有残留耗材,请先清退执行头耗材,然后重试。", + "error_0001052500010008_title": "耗材异常", + "error_0001052500010008_desc": "2 号执行头有残留耗材,请先清退执行头耗材,然后重试。", + "error_0001052500020008_title": "耗材异常", + "error_0001052500020008_desc": "3 号执行头有残留耗材,请先清退执行头耗材,然后重试。", + "error_0001052500030008_title": "耗材异常", + "error_0001052500030008_desc": "4 号执行头有残留耗材,请先清退执行头耗材,然后重试。", + "error_0002052800000000_title": "返回原位异常", + "error_0002052800000000_desc": "请先将 X、Y 轴返回原位,再将 Z 轴返回原位。", + "error_0002052800000001_title": "返回原位异常", + "error_0002052800000001_desc": "当前执行头不可用,无法返回原位,可重启打印机后重试。若不能解决,请联系技术支持。", + "error_0003052800000002_title": "轴移动异常", + "error_0003052800000002_desc": "X 轴移动异常,请重试。若多次报错,请联系技术支持。", + "error_0003052800010002_title": "轴移动异常", + "error_0003052800010002_desc": "Y 轴移动异常,请重试。若多次报错,请联系技术支持。", + "error_0003052800020002_title": "轴移动异常", + "error_0003052800020002_desc": "Z 轴移动异常,请重试。若多次报错,请联系技术支持。", + "error_0003052800000003_title": "轴移动异常", + "error_0003052800000003_desc": "X 轴移动异常,请重试。若多次报错,请联系技术支持。", + "error_0003052800010003_title": "轴移动异常", + "error_0003052800010003_desc": "Y 轴移动异常,请重试。若多次报错,请联系技术支持。", + "error_0003052800020003_title": "轴移动异常", + "error_0003052800020003_desc": "Z 轴移动异常,请重试。若多次报错,请联系技术支持。", + "error_0003052800000004_title": "轴移动异常", + "error_0003052800000004_desc": "请检查 X 轴运动是否有明显阻力,然后重试。若不能解决,请联系技术支持。", + "error_0003052800010004_title": "轴移动异常", + "error_0003052800010004_desc": "请检查 Y 轴运动是否有明显阻力,然后重试。若不能解决,请联系技术支持。", + "error_0003052800020004_title": "轴移动异常", + "error_0003052800020004_desc": "请检查 Z 轴运动是否有明显阻力,然后重试。若不能解决,请联系技术支持。", + "error_0003052800000005_title": "轴移动异常", + "error_0003052800000005_desc": "请检查运动轴是否有明显阻力,然后重试。若不能解决,请联系技术支持。", + "error_0003052800000006_title": "轴移动异常", + "error_0003052800000006_desc": "请检查同步带是否张紧,X、Y 轴是否运动顺畅,碰撞位置是否有异物,请排查后重试。如不能解决,请联系技术支持。", + "error_0003052800000007_title": "系统异常", + "error_0003052800000007_desc": "系统停机保护中,无法返回原位,请重启打印机后重试。若仍出现该问题,请联系技术支持。", + "error_0003052800000008_title": "系统异常", + "error_0003052800000008_desc": "系统停机保护中,无法调平,请重启打印机后重试。若仍出现该问题,请联系技术支持。", + "error_0003052800000009_title": "传感器异常", + "error_0003052800000009_desc": "无法启用,请重试。若多次报错,请联系技术支持。", + "error_0002052800000010_title": "返回原位异常", + "error_0002052800000010_desc": "请先将 X、Y 轴返回原位,再进行该操作。", + "error_0002052800000011_title": "返回原位异常", + "error_0002052800000011_desc": "请检查同步带是否张紧,X、Y 轴是否运动顺畅,碰撞位置是否有异物,请排查后重试。如不能解决,请联系技术支持。", + "error_0002052800000012_title": "返回原位异常", + "error_0002052800000012_desc": "请检查同步带是否张紧,X、Y 轴是否运动顺畅,碰撞位置是否有异物,请排查后重试。如不能解决,请联系技术支持。", + "error_0002052300000038_title": "打印异常", + "error_0002052300000038_desc": "请检查 1 号执行头的耗材是否在导料管里断料、是否在料盘缠绕,以及执行头是否堵塞。排查后点击继续按钮恢复打印。若仍出现异常,请联系技术支持。", + "error_0002052300010038_title": "打印异常", + "error_0002052300010038_desc": "请检查 2 号执行头的耗材是否在导料管里断料、是否在料盘缠绕,以及执行头是否堵塞。排查后点击继续按钮恢复打印。若仍出现异常,请联系技术支持。", + "error_0002052300020038_title": "打印异常", + "error_0002052300020038_desc": "请检查 3 号执行头的耗材是否在导料管里断料、是否在料盘缠绕,以及执行头是否堵塞。排查后点击继续按钮恢复打印。若仍出现异常,请联系技术支持。", + "error_0002052300030038_title": "打印异常", + "error_0002052300030038_desc": "请检查 4 号执行头的耗材是否在导料管里断料、是否在料盘缠绕,以及执行头是否堵塞。排查后点击继续按钮恢复打印。若仍出现异常,请联系技术支持。", + "error_0002052300000039_title": "耗材异常", + "error_0002052300000039_desc": "1 号执行头的耗材信息未设置。请进入耗材界面编辑,再点击继续按钮恢复打印。", + "error_0002052300010039_title": "耗材异常", + "error_0002052300010039_desc": "2 号执行头的耗材信息未设置。请进入耗材界面编辑,再点击继续按钮恢复打印。", + "error_0002052300020039_title": "耗材异常", + "error_0002052300020039_desc": "3 号执行头的耗材信息未设置。请进入耗材界面编辑,再点击继续按钮恢复打印。", + "error_0002052300030039_title": "耗材异常", + "error_0002052300030039_desc": "4 号执行头的耗材信息未设置。请进入耗材界面编辑,再点击继续按钮恢复打印。", + "error_0003052800030002_title": "返回原位异常", + "error_0003052800030002_desc": "请重试。若仍出现异常,请联系技术支持。", + "error_0003052800030003_title": "返回原位异常", + "error_0003052800030003_desc": "请重试。若仍出现异常,请联系技术支持。", + "error_0003052800030004_title": "返回原位异常", + "error_0003052800030004_desc": "返回原位传感器未触发。请检查喷嘴上是否有残留耗材, 清理后重试。若仍出现异常,请联系技术支持。", + "error_0001053100000007_title": "系统异常", + "error_0001053100000007_desc": "云打印文件下载失败。请确保网络连接正常,然后重试。若仍出现异常,请联系技术支持。", + "error_0001053100000008_title": "系统异常", + "error_0001053100000008_desc": "U 盘读取异常。请确保 U 盘连接正常,然后重试。若仍出现异常,请联系技术支持。" +} diff --git a/resources/web/flutter_web/assets/assets/images/3dprinter.png b/resources/web/flutter_web/assets/assets/images/3dprinter.png new file mode 100644 index 0000000000..9716a55bd3 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/3dprinter.png differ diff --git a/resources/web/flutter_web/assets/assets/images/IpInputGuide.webp b/resources/web/flutter_web/assets/assets/images/IpInputGuide.webp new file mode 100644 index 0000000000..8ff51d3724 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/IpInputGuide.webp differ diff --git a/resources/web/flutter_web/assets/assets/images/bindPrinter.png b/resources/web/flutter_web/assets/assets/images/bindPrinter.png new file mode 100644 index 0000000000..833eb50ee2 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/bindPrinter.png differ diff --git a/resources/web/flutter_web/assets/assets/images/controlDefault.png b/resources/web/flutter_web/assets/assets/images/controlDefault.png new file mode 100644 index 0000000000..5348d1bd60 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/controlDefault.png differ diff --git a/resources/web/flutter_web/assets/assets/images/defaultEmpty.png b/resources/web/flutter_web/assets/assets/images/defaultEmpty.png new file mode 100644 index 0000000000..b5e8976119 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/defaultEmpty.png differ diff --git a/resources/web/flutter_web/assets/assets/images/deviceAuthorized.png b/resources/web/flutter_web/assets/assets/images/deviceAuthorized.png new file mode 100644 index 0000000000..575e5bedce Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/deviceAuthorized.png differ diff --git a/resources/web/flutter_web/assets/assets/images/deviceAuthorizing.png b/resources/web/flutter_web/assets/assets/images/deviceAuthorizing.png new file mode 100644 index 0000000000..240db039ad Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/deviceAuthorizing.png differ diff --git a/resources/web/flutter_web/assets/assets/images/deviceDisplayDefault.webp b/resources/web/flutter_web/assets/assets/images/deviceDisplayDefault.webp new file mode 100644 index 0000000000..ac2772ae00 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/deviceDisplayDefault.webp differ diff --git a/resources/web/flutter_web/assets/assets/images/deviceInvalidVersion.png b/resources/web/flutter_web/assets/assets/images/deviceInvalidVersion.png new file mode 100644 index 0000000000..391bae64ff Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/deviceInvalidVersion.png differ diff --git a/resources/web/flutter_web/assets/assets/images/deviceNoNetwork.webp b/resources/web/flutter_web/assets/assets/images/deviceNoNetwork.webp new file mode 100644 index 0000000000..34777ef392 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/deviceNoNetwork.webp differ diff --git a/resources/web/flutter_web/assets/assets/images/deviceNoResponse.webp b/resources/web/flutter_web/assets/assets/images/deviceNoResponse.webp new file mode 100644 index 0000000000..0efada5235 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/deviceNoResponse.webp differ diff --git a/resources/web/flutter_web/assets/assets/images/deviceNotConnected.png b/resources/web/flutter_web/assets/assets/images/deviceNotConnected.png new file mode 100644 index 0000000000..e2344eb100 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/deviceNotConnected.png differ diff --git a/resources/web/flutter_web/assets/assets/images/deviceRejected.png b/resources/web/flutter_web/assets/assets/images/deviceRejected.png new file mode 100644 index 0000000000..17c074d074 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/deviceRejected.png differ diff --git a/resources/web/flutter_web/assets/assets/images/expectation.webp b/resources/web/flutter_web/assets/assets/images/expectation.webp new file mode 100644 index 0000000000..c7402743ca Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/expectation.webp differ diff --git a/resources/web/flutter_web/assets/assets/images/filamentDefault.png b/resources/web/flutter_web/assets/assets/images/filamentDefault.png new file mode 100644 index 0000000000..c5caa5ddad Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/filamentDefault.png differ diff --git a/resources/web/flutter_web/assets/assets/images/gcodeCover.png b/resources/web/flutter_web/assets/assets/images/gcodeCover.png new file mode 100644 index 0000000000..57a1556560 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/gcodeCover.png differ diff --git a/resources/web/flutter_web/assets/assets/images/ipInputGuideCN.webp b/resources/web/flutter_web/assets/assets/images/ipInputGuideCN.webp new file mode 100644 index 0000000000..238b197e05 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/ipInputGuideCN.webp differ diff --git a/resources/web/flutter_web/assets/assets/images/logo.png b/resources/web/flutter_web/assets/assets/images/logo.png new file mode 100644 index 0000000000..7fc2a3d7a8 Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/logo.png differ diff --git a/resources/web/flutter_web/assets/assets/images/printtaskDefault.png b/resources/web/flutter_web/assets/assets/images/printtaskDefault.png new file mode 100644 index 0000000000..1523bce21a Binary files /dev/null and b/resources/web/flutter_web/assets/assets/images/printtaskDefault.png differ diff --git a/resources/web/flutter_web/assets/assets/svgs/arrowDorpDown.svg b/resources/web/flutter_web/assets/assets/svgs/arrowDorpDown.svg new file mode 100644 index 0000000000..4fe463135d --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/arrowDorpDown.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/chevronRight.svg b/resources/web/flutter_web/assets/assets/svgs/chevronRight.svg new file mode 100644 index 0000000000..fe4affe308 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/chevronRight.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/cloud.svg b/resources/web/flutter_web/assets/assets/svgs/cloud.svg new file mode 100644 index 0000000000..7c30eac465 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/cloud.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/defaultAvatar.svg b/resources/web/flutter_web/assets/assets/svgs/defaultAvatar.svg new file mode 100644 index 0000000000..b7d8d19e0b --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/defaultAvatar.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/demoIcPrinterN1.svg b/resources/web/flutter_web/assets/assets/svgs/demoIcPrinterN1.svg new file mode 100644 index 0000000000..a248d91302 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/demoIcPrinterN1.svg @@ -0,0 +1,320 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/web/flutter_web/assets/assets/svgs/demoNoDevice.svg b/resources/web/flutter_web/assets/assets/svgs/demoNoDevice.svg new file mode 100644 index 0000000000..3c9fece10a --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/demoNoDevice.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/web/flutter_web/assets/assets/svgs/demoWarning.svg b/resources/web/flutter_web/assets/assets/svgs/demoWarning.svg new file mode 100644 index 0000000000..36ae82a904 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/demoWarning.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/addDevice.svg b/resources/web/flutter_web/assets/assets/svgs/device/addDevice.svg new file mode 100644 index 0000000000..ca1ecb8488 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/addDevice.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/delete.svg b/resources/web/flutter_web/assets/assets/svgs/device/delete.svg new file mode 100644 index 0000000000..6aff807429 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/delete.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/deviceActionHome.svg b/resources/web/flutter_web/assets/assets/svgs/device/deviceActionHome.svg new file mode 100644 index 0000000000..f0508e1ba2 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/deviceActionHome.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/deviceControl.svg b/resources/web/flutter_web/assets/assets/svgs/device/deviceControl.svg new file mode 100644 index 0000000000..e7b65dfbe2 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/deviceControl.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/exclamationMark.svg b/resources/web/flutter_web/assets/assets/svgs/device/exclamationMark.svg new file mode 100644 index 0000000000..5c88103422 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/exclamationMark.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/exportFile.svg b/resources/web/flutter_web/assets/assets/svgs/device/exportFile.svg new file mode 100644 index 0000000000..cb3c5aac9d --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/exportFile.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/extruderBackground.svg b/resources/web/flutter_web/assets/assets/svgs/device/extruderBackground.svg new file mode 100644 index 0000000000..c956cd26c7 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/extruderBackground.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/firmwareUpdate.svg b/resources/web/flutter_web/assets/assets/svgs/device/firmwareUpdate.svg new file mode 100644 index 0000000000..cec5b70a32 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/firmwareUpdate.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconAdd.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconAdd.svg new file mode 100644 index 0000000000..359bb35822 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconAdd.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconBind.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconBind.svg new file mode 100644 index 0000000000..660d26461e --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconBind.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconControlPause.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconControlPause.svg new file mode 100644 index 0000000000..8825d358cd --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconControlPause.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconControlPlay.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconControlPlay.svg new file mode 100644 index 0000000000..f1b11305cf --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconControlPlay.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconControlStop.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconControlStop.svg new file mode 100644 index 0000000000..c3851a70e1 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconControlStop.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconEdit.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconEdit.svg new file mode 100644 index 0000000000..26e89b95db --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconEdit.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconExtruderHead.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconExtruderHead.svg new file mode 100644 index 0000000000..453913fc75 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconExtruderHead.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconFan.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconFan.svg new file mode 100644 index 0000000000..596a33a951 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconFan.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconFilamentCheck.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconFilamentCheck.svg new file mode 100644 index 0000000000..299cba963a --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconFilamentCheck.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconFilamentEdit.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconFilamentEdit.svg new file mode 100644 index 0000000000..b180a37520 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconFilamentEdit.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconFile.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconFile.svg new file mode 100644 index 0000000000..b1b25cebaa --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconFile.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconHome.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconHome.svg new file mode 100644 index 0000000000..31d6ecdb82 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconHome.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconHotBedTemperature.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconHotBedTemperature.svg new file mode 100644 index 0000000000..b819a63012 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconHotBedTemperature.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconLed.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconLed.svg new file mode 100644 index 0000000000..e402e527d7 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconLed.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconModelFileFolder.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconModelFileFolder.svg new file mode 100644 index 0000000000..1d4136aa92 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconModelFileFolder.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconMoreSetting.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconMoreSetting.svg new file mode 100644 index 0000000000..fd361c6675 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconMoreSetting.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconScan.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconScan.svg new file mode 100644 index 0000000000..30b4e52339 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconScan.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconSearch.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconSearch.svg new file mode 100644 index 0000000000..bd2d5bc314 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconSearch.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconSpeed.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconSpeed.svg new file mode 100644 index 0000000000..8c692e1087 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconSpeed.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconTick.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconTick.svg new file mode 100644 index 0000000000..3c7cabfa7b --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconTick.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/iconTimeLapse.svg b/resources/web/flutter_web/assets/assets/svgs/device/iconTimeLapse.svg new file mode 100644 index 0000000000..21235d469a --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/iconTimeLapse.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/instructions.svg b/resources/web/flutter_web/assets/assets/svgs/device/instructions.svg new file mode 100644 index 0000000000..037cad53ba --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/instructions.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/keyboardArrowDropDown.svg b/resources/web/flutter_web/assets/assets/svgs/device/keyboardArrowDropDown.svg new file mode 100644 index 0000000000..38f12badf4 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/keyboardArrowDropDown.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/liveCamera.svg b/resources/web/flutter_web/assets/assets/svgs/device/liveCamera.svg new file mode 100644 index 0000000000..5772402c6d --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/liveCamera.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/logout.svg b/resources/web/flutter_web/assets/assets/svgs/device/logout.svg new file mode 100644 index 0000000000..f4fa3d8f19 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/logout.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/pause.svg b/resources/web/flutter_web/assets/assets/svgs/device/pause.svg new file mode 100644 index 0000000000..58351d75d4 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/pause.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/play.svg b/resources/web/flutter_web/assets/assets/svgs/device/play.svg new file mode 100644 index 0000000000..f6b1fa7d73 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/play.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/settings.svg b/resources/web/flutter_web/assets/assets/svgs/device/settings.svg new file mode 100644 index 0000000000..fe83bb2466 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/settings.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/stop.svg b/resources/web/flutter_web/assets/assets/svgs/device/stop.svg new file mode 100644 index 0000000000..c8df59aa4f --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/stop.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/vector31.svg b/resources/web/flutter_web/assets/assets/svgs/device/vector31.svg new file mode 100644 index 0000000000..154f39ad05 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/vector31.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/videoCall.svg b/resources/web/flutter_web/assets/assets/svgs/device/videoCall.svg new file mode 100644 index 0000000000..0141e881f1 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/videoCall.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/videoPlay.svg b/resources/web/flutter_web/assets/assets/svgs/device/videoPlay.svg new file mode 100644 index 0000000000..2b04b20183 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/videoPlay.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/device/wifi.svg b/resources/web/flutter_web/assets/assets/svgs/device/wifi.svg new file mode 100644 index 0000000000..50ba118d13 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/device/wifi.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/deviceCardAdd.svg b/resources/web/flutter_web/assets/assets/svgs/deviceCardAdd.svg new file mode 100644 index 0000000000..bae2b0ef95 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/deviceCardAdd.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/deviceCardLogout.svg b/resources/web/flutter_web/assets/assets/svgs/deviceCardLogout.svg new file mode 100644 index 0000000000..587b7f9a32 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/deviceCardLogout.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder1.svg b/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder1.svg new file mode 100644 index 0000000000..2eeadcc675 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder1.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder2.svg b/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder2.svg new file mode 100644 index 0000000000..4427dcaa0e --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder2.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder3.svg b/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder3.svg new file mode 100644 index 0000000000..2057db7f31 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder3.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder4.svg b/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder4.svg new file mode 100644 index 0000000000..b6f40c3dec --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/extruder/iconExtruder4.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/iconArrowBack.svg b/resources/web/flutter_web/assets/assets/svgs/iconArrowBack.svg new file mode 100644 index 0000000000..d4ea757d18 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/iconArrowBack.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/iconArrowRight.svg b/resources/web/flutter_web/assets/assets/svgs/iconArrowRight.svg new file mode 100644 index 0000000000..fc2f156c78 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/iconArrowRight.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/iconAuxiliaryCooling.svg b/resources/web/flutter_web/assets/assets/svgs/iconAuxiliaryCooling.svg new file mode 100644 index 0000000000..06a686b4c8 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/iconAuxiliaryCooling.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/iconClose.svg b/resources/web/flutter_web/assets/assets/svgs/iconClose.svg new file mode 100644 index 0000000000..ad29ee54b7 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/iconClose.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/iconCloseWhite.svg b/resources/web/flutter_web/assets/assets/svgs/iconCloseWhite.svg new file mode 100644 index 0000000000..c2906cda0d --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/iconCloseWhite.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/iconEdit.svg b/resources/web/flutter_web/assets/assets/svgs/iconEdit.svg new file mode 100644 index 0000000000..a996674385 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/iconEdit.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/iconHome.svg b/resources/web/flutter_web/assets/assets/svgs/iconHome.svg new file mode 100644 index 0000000000..29b052c896 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/iconHome.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/iconMainCooling.svg b/resources/web/flutter_web/assets/assets/svgs/iconMainCooling.svg new file mode 100644 index 0000000000..45d77fd017 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/iconMainCooling.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/iconNotific.svg b/resources/web/flutter_web/assets/assets/svgs/iconNotific.svg new file mode 100644 index 0000000000..c754eeece9 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/iconNotific.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/iconPurifier.svg b/resources/web/flutter_web/assets/assets/svgs/iconPurifier.svg new file mode 100644 index 0000000000..c98e46cb41 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/iconPurifier.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/loginPlatformApple.svg b/resources/web/flutter_web/assets/assets/svgs/loginPlatformApple.svg new file mode 100644 index 0000000000..448822dd75 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/loginPlatformApple.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/loginPlatformFacebook.svg b/resources/web/flutter_web/assets/assets/svgs/loginPlatformFacebook.svg new file mode 100644 index 0000000000..ce304e23cd --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/loginPlatformFacebook.svg @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/loginPlatformGithub.svg b/resources/web/flutter_web/assets/assets/svgs/loginPlatformGithub.svg new file mode 100644 index 0000000000..1d3e9a25b7 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/loginPlatformGithub.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/loginPlatformGoogle.svg b/resources/web/flutter_web/assets/assets/svgs/loginPlatformGoogle.svg new file mode 100644 index 0000000000..1ef0360521 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/loginPlatformGoogle.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/myDevice.svg b/resources/web/flutter_web/assets/assets/svgs/myDevice.svg new file mode 100644 index 0000000000..276d1e28c8 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/myDevice.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/printHistory.svg b/resources/web/flutter_web/assets/assets/svgs/printHistory.svg new file mode 100644 index 0000000000..79b54914be --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/printHistory.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/recentDocuments.svg b/resources/web/flutter_web/assets/assets/svgs/recentDocuments.svg new file mode 100644 index 0000000000..fecd3ebf3a --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/recentDocuments.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDevice.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDevice.svg new file mode 100644 index 0000000000..1139f8525c --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDevice.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDeviceActive.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDeviceActive.svg new file mode 100644 index 0000000000..048240f053 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDeviceActive.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDeviceActiveDark.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDeviceActiveDark.svg new file mode 100644 index 0000000000..57f60f4106 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDeviceActiveDark.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDeviceDark.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDeviceDark.svg new file mode 100644 index 0000000000..8ba318ad40 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDeviceDark.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscover.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscover.svg new file mode 100644 index 0000000000..1aa19d0f86 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscover.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscoverActive.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscoverActive.svg new file mode 100644 index 0000000000..6bf6798196 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscoverActive.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscoverActiveDark.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscoverActiveDark.svg new file mode 100644 index 0000000000..680f76a153 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscoverActiveDark.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscoverDark.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscoverDark.svg new file mode 100644 index 0000000000..81f4976bcc --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconDiscoverDark.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMine.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMine.svg new file mode 100644 index 0000000000..70adda4cf3 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMine.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMineActive.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMineActive.svg new file mode 100644 index 0000000000..0877241206 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMineActive.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMineActiveDark.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMineActiveDark.svg new file mode 100644 index 0000000000..a0468a8773 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMineActiveDark.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMineDark.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMineDark.svg new file mode 100644 index 0000000000..20332d9cd4 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconMineDark.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconService.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconService.svg new file mode 100644 index 0000000000..90f523551b --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconService.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconServiceActive.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconServiceActive.svg new file mode 100644 index 0000000000..4920f6db6c --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconServiceActive.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconServiceActiveDark.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconServiceActiveDark.svg new file mode 100644 index 0000000000..e670660e41 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconServiceActiveDark.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/tabbar/iconServiceDark.svg b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconServiceDark.svg new file mode 100644 index 0000000000..4a93ecefcf --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/tabbar/iconServiceDark.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/textfieldAccout.svg b/resources/web/flutter_web/assets/assets/svgs/textfieldAccout.svg new file mode 100644 index 0000000000..b372528267 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/textfieldAccout.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/textfieldCode.svg b/resources/web/flutter_web/assets/assets/svgs/textfieldCode.svg new file mode 100644 index 0000000000..61a0c230e2 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/textfieldCode.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/textfieldEye.svg b/resources/web/flutter_web/assets/assets/svgs/textfieldEye.svg new file mode 100644 index 0000000000..0edd8e2232 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/textfieldEye.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/textfieldPassword.svg b/resources/web/flutter_web/assets/assets/svgs/textfieldPassword.svg new file mode 100644 index 0000000000..54bcacdcc0 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/textfieldPassword.svg @@ -0,0 +1,3 @@ + + + diff --git a/resources/web/flutter_web/assets/assets/svgs/userIcon.svg b/resources/web/flutter_web/assets/assets/svgs/userIcon.svg new file mode 100644 index 0000000000..fcd8f99044 --- /dev/null +++ b/resources/web/flutter_web/assets/assets/svgs/userIcon.svg @@ -0,0 +1,4 @@ + + + + diff --git a/resources/web/flutter_web/assets/fonts/MaterialIcons-Regular.otf b/resources/web/flutter_web/assets/fonts/MaterialIcons-Regular.otf new file mode 100644 index 0000000000..650dc58918 Binary files /dev/null and b/resources/web/flutter_web/assets/fonts/MaterialIcons-Regular.otf differ diff --git a/resources/web/flutter_web/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf b/resources/web/flutter_web/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf new file mode 100644 index 0000000000..b1cc5c554a Binary files /dev/null and b/resources/web/flutter_web/assets/packages/cupertino_icons/assets/CupertinoIcons.ttf differ diff --git a/resources/web/flutter_web/assets/packages/lava_device_control/assets/files/filament.json b/resources/web/flutter_web/assets/packages/lava_device_control/assets/files/filament.json new file mode 100644 index 0000000000..f4580a6664 --- /dev/null +++ b/resources/web/flutter_web/assets/packages/lava_device_control/assets/files/filament.json @@ -0,0 +1,326 @@ +{ + "filament": [ + { + "vendor": "Snapmaker", + "description": "Snapmaker", + "materials": [ + { + "material": "PLA", + "description": "", + "series": [ + { + "serie": "Matte", + "description": "" + }, + { + "serie": "SnapSpeed", + "description": "" + }, + { + "serie": "Basic", + "description": "" + }, + { + "serie": "Support", + "description": "Support for" + } + ] + }, + { + "material": "ABS", + "description": "", + "series": [] + }, + { + "material": "PVA", + "description": "", + "series": [] + }, + { + "material": "PETG", + "description": "", + "series": [] + }, + { + "material": "TPU", + "description": "", + "series": [ + { + "serie": "95A", + "description": "" + } + ] + } + ] + }, + { + "vendor": "Polymaker", + "description": "", + "materials": [ + { + "material": "PLA", + "description": "", + "series": [ + { + "serie": "Lite", + "description": "" + }, + { + "serie": "Terra", + "description": "" + } + ] + }, + { + "material": "PETG", + "description": "", + "series": [] + } + ] + }, + { + "vendor": "Generic", + "description": "", + "materials": [ + { + "material": "PLA", + "description": "", + "series": [ + { + "serie": "", + "description": "" + }, + { + "serie": "Support", + "description": "Support for" + }, + { + "serie": "Silk", + "description": "" + } + ] + }, + { + "material": "PETG", + "description": "", + "series": [] + }, + { + "material": "ABS", + "description": "", + "series": [] + }, + { + "material": "TPU", + "description": "", + "series": [ + { + "serie": "95A", + "description": "" + } + ] + }, + { + "material": "ASA", + "description": "", + "series": [] + }, + { + "material": "BVOH", + "description": "", + "series": [] + }, + { + "material": "EVA", + "description": "", + "series": [] + }, + { + "material": "HIPS", + "description": "", + "series": [] + }, + { + "material": "PA", + "description": "", + "series": [] + }, + { + "material": "PA-CF", + "description": "", + "series": [] + }, + { + "material": "PC", + "description": "", + "series": [] + }, + { + "material": "PCTG", + "description": "", + "series": [] + }, + { + "material": "PE", + "description": "", + "series": [] + }, + { + "material": "PE-CF", + "description": "", + "series": [] + }, + { + "material": "PETG-HF", + "description": "", + "series": [] + }, + { + "material": "PETG-CF", + "description": "", + "series": [] + }, + { + "material": "PHA", + "description": "", + "series": [] + }, + { + "material": "PLA-CF", + "description": "", + "series": [] + }, + { + "material": "PVA", + "description": "", + "series": [] + } + ] + } + ], + "filament_special_series": [ + "85A","90A","95A", "95A HF" + ], + "filament_color": [ + { + "name": "Ivory White", + "hex": "#FFFFFF", + "type": "PLA MATTE", + "sku": "34046" + }, + { + "name": "Carbon Black", + "hex": "#000000", + "type": "PLA MATTE", + "sku": "34049" + }, + { + "name": "Lava Orange", + "hex": "#F78E0E", + "type": "PLA MATTE", + "sku": "34047" + }, + { + "name": "Sunburst Yellow", + "hex": "#F0BE02", + "type": "PLA MATTE", + "sku": "34048" + }, + { + "name": "Moss Mist", + "hex": "#BEC9A5", + "type": "PLA MATTE", + "sku": "34050" + }, + { + "name": "Pine Green", + "hex": "#519F61", + "type": "PLA MATTE", + "sku": "34051" + }, + { + "name": "Engine Red", + "hex": "#DE1619", + "type": "PLA MATTE", + "sku": "34052" + }, + { + "name": "Ash Grey", + "hex": "#9B9EA0", + "type": "PLA MATTE", + "sku": "34053" + }, + { + "name": "Celestial Blue", + "hex": "#8BD5EE", + "type": "PLA MATTE", + "sku": "34054" + }, + { + "name": "Sakura Pink", + "hex": "#F3D6E5", + "type": "PLA MATTE", + "sku": "34055" + }, + { + "name": "Pearl White", + "hex": "#E2DEDB", + "type": "PLA HS", + "sku": "34031" + }, + { + "name": "Black", + "hex": "#080A0D", + "type": "PLA HS", + "sku": "34032" + }, + { + "name": "Grey", + "hex": "#8C9099", + "type": "PLA HS", + "sku": "34033" + }, + { + "name": "Blue", + "hex": "#003776", + "type": "PLA HS", + "sku": "34034" + }, + { + "name": "Red", + "hex": "#E72F1D", + "type": "PLA HS", + "sku": "34035" + }, + { + "name": "Purple", + "hex": "#6C5BB1", + "type": "PLA HS", + "sku": "34036" + }, + { + "name": "Orange", + "hex": "#F97429", + "type": "PLA HS", + "sku": "34037" + }, + { + "name": "Green", + "hex": "#2D9E59", + "type": "PLA HS", + "sku": "34038" + }, + { + "name": "Yellow", + "hex": "#F4C032", + "type": "PLA HS", + "sku": "34039" + }, + { + "name": "Brown", + "hex": "#6F4C2F", + "type": "PLA HS", + "sku": "34040" + } + ] +} \ No newline at end of file diff --git a/resources/web/flutter_web/assets/packages/wakelock_plus/assets/no_sleep.js b/resources/web/flutter_web/assets/packages/wakelock_plus/assets/no_sleep.js new file mode 100644 index 0000000000..ccfab74c1f --- /dev/null +++ b/resources/web/flutter_web/assets/packages/wakelock_plus/assets/no_sleep.js @@ -0,0 +1,230 @@ +var webm = + 'data:video/webm;base64,GkXfo0AgQoaBAUL3gQFC8oEEQvOBCEKCQAR3ZWJtQoeBAkKFgQIYU4BnQI0VSalmQCgq17FAAw9CQE2AQAZ3aGFtbXlXQUAGd2hhbW15RIlACECPQAAAAAAAFlSua0AxrkAu14EBY8WBAZyBACK1nEADdW5khkAFVl9WUDglhohAA1ZQOIOBAeBABrCBCLqBCB9DtnVAIueBAKNAHIEAAIAwAQCdASoIAAgAAUAmJaQAA3AA/vz0AAA=' +var mp4 = + 'data:video/mp4;base64,AAAAIGZ0eXBtcDQyAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZQAACKBtZGF0AAAC8wYF///v3EXpvebZSLeWLNgg2SPu73gyNjQgLSBjb3JlIDE0MiByMjQ3OSBkZDc5YTYxIC0gSC4yNjQvTVBFRy00IEFWQyBjb2RlYyAtIENvcHlsZWZ0IDIwMDMtMjAxNCAtIGh0dHA6Ly93d3cudmlkZW9sYW4ub3JnL3gyNjQuaHRtbCAtIG9wdGlvbnM6IGNhYmFjPTEgcmVmPTEgZGVibG9jaz0xOjA6MCBhbmFseXNlPTB4MToweDExMSBtZT1oZXggc3VibWU9MiBwc3k9MSBwc3lfcmQ9MS4wMDowLjAwIG1peGVkX3JlZj0wIG1lX3JhbmdlPTE2IGNocm9tYV9tZT0xIHRyZWxsaXM9MCA4eDhkY3Q9MCBjcW09MCBkZWFkem9uZT0yMSwxMSBmYXN0X3Bza2lwPTEgY2hyb21hX3FwX29mZnNldD0wIHRocmVhZHM9NiBsb29rYWhlYWRfdGhyZWFkcz0xIHNsaWNlZF90aHJlYWRzPTAgbnI9MCBkZWNpbWF0ZT0xIGludGVybGFjZWQ9MCBibHVyYXlfY29tcGF0PTAgY29uc3RyYWluZWRfaW50cmE9MCBiZnJhbWVzPTMgYl9weXJhbWlkPTIgYl9hZGFwdD0xIGJfYmlhcz0wIGRpcmVjdD0xIHdlaWdodGI9MSBvcGVuX2dvcD0wIHdlaWdodHA9MSBrZXlpbnQ9MzAwIGtleWludF9taW49MzAgc2NlbmVjdXQ9NDAgaW50cmFfcmVmcmVzaD0wIHJjX2xvb2thaGVhZD0xMCByYz1jcmYgbWJ0cmVlPTEgY3JmPTIwLjAgcWNvbXA9MC42MCBxcG1pbj0wIHFwbWF4PTY5IHFwc3RlcD00IHZidl9tYXhyYXRlPTIwMDAwIHZidl9idWZzaXplPTI1MDAwIGNyZl9tYXg9MC4wIG5hbF9ocmQ9bm9uZSBmaWxsZXI9MCBpcF9yYXRpbz0xLjQwIGFxPTE6MS4wMACAAAAAOWWIhAA3//p+C7v8tDDSTjf97w55i3SbRPO4ZY+hkjD5hbkAkL3zpJ6h/LR1CAABzgB1kqqzUorlhQAAAAxBmiQYhn/+qZYADLgAAAAJQZ5CQhX/AAj5IQADQGgcIQADQGgcAAAACQGeYUQn/wALKCEAA0BoHAAAAAkBnmNEJ/8ACykhAANAaBwhAANAaBwAAAANQZpoNExDP/6plgAMuSEAA0BoHAAAAAtBnoZFESwr/wAI+SEAA0BoHCEAA0BoHAAAAAkBnqVEJ/8ACykhAANAaBwAAAAJAZ6nRCf/AAsoIQADQGgcIQADQGgcAAAADUGarDRMQz/+qZYADLghAANAaBwAAAALQZ7KRRUsK/8ACPkhAANAaBwAAAAJAZ7pRCf/AAsoIQADQGgcIQADQGgcAAAACQGe60Qn/wALKCEAA0BoHAAAAA1BmvA0TEM//qmWAAy5IQADQGgcIQADQGgcAAAAC0GfDkUVLCv/AAj5IQADQGgcAAAACQGfLUQn/wALKSEAA0BoHCEAA0BoHAAAAAkBny9EJ/8ACyghAANAaBwAAAANQZs0NExDP/6plgAMuCEAA0BoHAAAAAtBn1JFFSwr/wAI+SEAA0BoHCEAA0BoHAAAAAkBn3FEJ/8ACyghAANAaBwAAAAJAZ9zRCf/AAsoIQADQGgcIQADQGgcAAAADUGbeDRMQz/+qZYADLkhAANAaBwAAAALQZ+WRRUsK/8ACPghAANAaBwhAANAaBwAAAAJAZ+1RCf/AAspIQADQGgcAAAACQGft0Qn/wALKSEAA0BoHCEAA0BoHAAAAA1Bm7w0TEM//qmWAAy4IQADQGgcAAAAC0Gf2kUVLCv/AAj5IQADQGgcAAAACQGf+UQn/wALKCEAA0BoHCEAA0BoHAAAAAkBn/tEJ/8ACykhAANAaBwAAAANQZvgNExDP/6plgAMuSEAA0BoHCEAA0BoHAAAAAtBnh5FFSwr/wAI+CEAA0BoHAAAAAkBnj1EJ/8ACyghAANAaBwhAANAaBwAAAAJAZ4/RCf/AAspIQADQGgcAAAADUGaJDRMQz/+qZYADLghAANAaBwAAAALQZ5CRRUsK/8ACPkhAANAaBwhAANAaBwAAAAJAZ5hRCf/AAsoIQADQGgcAAAACQGeY0Qn/wALKSEAA0BoHCEAA0BoHAAAAA1Bmmg0TEM//qmWAAy5IQADQGgcAAAAC0GehkUVLCv/AAj5IQADQGgcIQADQGgcAAAACQGepUQn/wALKSEAA0BoHAAAAAkBnqdEJ/8ACyghAANAaBwAAAANQZqsNExDP/6plgAMuCEAA0BoHCEAA0BoHAAAAAtBnspFFSwr/wAI+SEAA0BoHAAAAAkBnulEJ/8ACyghAANAaBwhAANAaBwAAAAJAZ7rRCf/AAsoIQADQGgcAAAADUGa8DRMQz/+qZYADLkhAANAaBwhAANAaBwAAAALQZ8ORRUsK/8ACPkhAANAaBwAAAAJAZ8tRCf/AAspIQADQGgcIQADQGgcAAAACQGfL0Qn/wALKCEAA0BoHAAAAA1BmzQ0TEM//qmWAAy4IQADQGgcAAAAC0GfUkUVLCv/AAj5IQADQGgcIQADQGgcAAAACQGfcUQn/wALKCEAA0BoHAAAAAkBn3NEJ/8ACyghAANAaBwhAANAaBwAAAANQZt4NExC//6plgAMuSEAA0BoHAAAAAtBn5ZFFSwr/wAI+CEAA0BoHCEAA0BoHAAAAAkBn7VEJ/8ACykhAANAaBwAAAAJAZ+3RCf/AAspIQADQGgcAAAADUGbuzRMQn/+nhAAYsAhAANAaBwhAANAaBwAAAAJQZ/aQhP/AAspIQADQGgcAAAACQGf+UQn/wALKCEAA0BoHCEAA0BoHCEAA0BoHCEAA0BoHCEAA0BoHCEAA0BoHAAACiFtb292AAAAbG12aGQAAAAA1YCCX9WAgl8AAAPoAAAH/AABAAABAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAGGlvZHMAAAAAEICAgAcAT////v7/AAAF+XRyYWsAAABcdGtoZAAAAAPVgIJf1YCCXwAAAAEAAAAAAAAH0AAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAygAAAMoAAAAAACRlZHRzAAAAHGVsc3QAAAAAAAAAAQAAB9AAABdwAAEAAAAABXFtZGlhAAAAIG1kaGQAAAAA1YCCX9WAgl8AAV+QAAK/IFXEAAAAAAAtaGRscgAAAAAAAAAAdmlkZQAAAAAAAAAAAAAAAFZpZGVvSGFuZGxlcgAAAAUcbWluZgAAABR2bWhkAAAAAQAAAAAAAAAAAAAAJGRpbmYAAAAcZHJlZgAAAAAAAAABAAAADHVybCAAAAABAAAE3HN0YmwAAACYc3RzZAAAAAAAAAABAAAAiGF2YzEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAygDKAEgAAABIAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY//8AAAAyYXZjQwFNQCj/4QAbZ01AKOyho3ySTUBAQFAAAAMAEAAr8gDxgxlgAQAEaO+G8gAAABhzdHRzAAAAAAAAAAEAAAA8AAALuAAAABRzdHNzAAAAAAAAAAEAAAABAAAB8GN0dHMAAAAAAAAAPAAAAAEAABdwAAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAADqYAAAAAQAAF3AAAAABAAAAAAAAAAEAAAu4AAAAAQAAOpgAAAABAAAXcAAAAAEAAAAAAAAAAQAAC7gAAAABAAA6mAAAAAEAABdwAAAAAQAAAAAAAAABAAALuAAAAAEAAC7gAAAAAQAAF3AAAAABAAAAAAAAABxzdHNjAAAAAAAAAAEAAAABAAAAAQAAAAEAAAEEc3RzegAAAAAAAAAAAAAAPAAAAzQAAAAQAAAADQAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAAPAAAADQAAAA0AAAARAAAADwAAAA0AAAANAAAAEQAAAA8AAAANAAAADQAAABEAAAANAAAADQAAAQBzdGNvAAAAAAAAADwAAAAwAAADZAAAA3QAAAONAAADoAAAA7kAAAPQAAAD6wAAA/4AAAQXAAAELgAABEMAAARcAAAEbwAABIwAAAShAAAEugAABM0AAATkAAAE/wAABRIAAAUrAAAFQgAABV0AAAVwAAAFiQAABaAAAAW1AAAFzgAABeEAAAX+AAAGEwAABiwAAAY/AAAGVgAABnEAAAaEAAAGnQAABrQAAAbPAAAG4gAABvUAAAcSAAAHJwAAB0AAAAdTAAAHcAAAB4UAAAeeAAAHsQAAB8gAAAfjAAAH9gAACA8AAAgmAAAIQQAACFQAAAhnAAAIhAAACJcAAAMsdHJhawAAAFx0a2hkAAAAA9WAgl/VgIJfAAAAAgAAAAAAAAf8AAAAAAAAAAAAAAABAQAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAACsm1kaWEAAAAgbWRoZAAAAADVgIJf1YCCXwAArEQAAWAAVcQAAAAAACdoZGxyAAAAAAAAAABzb3VuAAAAAAAAAAAAAAAAU3RlcmVvAAAAAmNtaW5mAAAAEHNtaGQAAAAAAAAAAAAAACRkaW5mAAAAHGRyZWYAAAAAAAAAAQAAAAx1cmwgAAAAAQAAAidzdGJsAAAAZ3N0c2QAAAAAAAAAAQAAAFdtcDRhAAAAAAAAAAEAAAAAAAAAAAACABAAAAAArEQAAAAAADNlc2RzAAAAAAOAgIAiAAIABICAgBRAFQAAAAADDUAAAAAABYCAgAISEAaAgIABAgAAABhzdHRzAAAAAAAAAAEAAABYAAAEAAAAABxzdHNjAAAAAAAAAAEAAAABAAAAAQAAAAEAAAAUc3RzegAAAAAAAAAGAAAAWAAAAXBzdGNvAAAAAAAAAFgAAAOBAAADhwAAA5oAAAOtAAADswAAA8oAAAPfAAAD5QAAA/gAAAQLAAAEEQAABCgAAAQ9AAAEUAAABFYAAARpAAAEgAAABIYAAASbAAAErgAABLQAAATHAAAE3gAABPMAAAT5AAAFDAAABR8AAAUlAAAFPAAABVEAAAVXAAAFagAABX0AAAWDAAAFmgAABa8AAAXCAAAFyAAABdsAAAXyAAAF+AAABg0AAAYgAAAGJgAABjkAAAZQAAAGZQAABmsAAAZ+AAAGkQAABpcAAAauAAAGwwAABskAAAbcAAAG7wAABwYAAAcMAAAHIQAABzQAAAc6AAAHTQAAB2QAAAdqAAAHfwAAB5IAAAeYAAAHqwAAB8IAAAfXAAAH3QAAB/AAAAgDAAAICQAACCAAAAg1AAAIOwAACE4AAAhhAAAIeAAACH4AAAiRAAAIpAAACKoAAAiwAAAItgAACLwAAAjCAAAAFnVkdGEAAAAObmFtZVN0ZXJlbwAAAHB1ZHRhAAAAaG1ldGEAAAAAAAAAIWhkbHIAAAAAAAAAAG1kaXJhcHBsAAAAAAAAAAAAAAAAO2lsc3QAAAAzqXRvbwAAACtkYXRhAAAAAQAAAABIYW5kQnJha2UgMC4xMC4yIDIwMTUwNjExMDA=' + +var _createClass = (function () { + function defineProperties(target, props) { + for (var i = 0; i < props.length; i++) { + var descriptor = props[i] + descriptor.enumerable = descriptor.enumerable || false + descriptor.configurable = true + if ('value' in descriptor) descriptor.writable = true + Object.defineProperty(target, descriptor.key, descriptor) + } + } + return function (Constructor, protoProps, staticProps) { + if (protoProps) defineProperties(Constructor.prototype, protoProps) + if (staticProps) defineProperties(Constructor, staticProps) + return Constructor + } +})() + +function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError('Cannot call a class as a function') + } +} + +// Detect iOS browsers < version 10 +var oldIOS = + typeof navigator !== 'undefined' && + parseFloat( + ( + '' + + (/CPU.*OS ([0-9_]{3,4})[0-9_]{0,1}|(CPU like).*AppleWebKit.*Mobile/i.exec( + navigator.userAgent + ) || [0, ''])[1] + ) + .replace('undefined', '3_2') + .replace('_', '.') + .replace('_', '') + ) < 10 && + !window.MSStream + +// Detect native Wake Lock API support +var nativeWakeLock = 'wakeLock' in navigator + +var NoSleep = (function () { + var _releasedNative = true + var _nativeRequestInProgress = false + + function NoSleep() { + var _this = this + + _classCallCheck(this, NoSleep) + + if (nativeWakeLock) { + this._wakeLock = null + var handleVisibilityChange = function handleVisibilityChange() { + if ( + _this._wakeLock !== null && + document.visibilityState === 'visible' + ) { + _this.enable() + } + } + document.addEventListener('visibilitychange', handleVisibilityChange) + document.addEventListener('fullscreenchange', handleVisibilityChange) + } else if (oldIOS) { + this.noSleepTimer = null + } else { + // Set up no sleep video element + this.noSleepVideo = document.createElement('video') + + this.noSleepVideo.setAttribute('title', 'No Sleep') + this.noSleepVideo.setAttribute('playsinline', '') + + this._addSourceToVideo(this.noSleepVideo, 'webm', webm) + this._addSourceToVideo(this.noSleepVideo, 'mp4', mp4) + + this.noSleepVideo.addEventListener('loadedmetadata', function () { + if (_this.noSleepVideo.duration <= 1) { + // webm source + _this.noSleepVideo.setAttribute('loop', '') + } else { + // mp4 source + _this.noSleepVideo.addEventListener('timeupdate', function () { + if (_this.noSleepVideo.currentTime > 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/resources/web/flutter_web/assets/shaders/ink_sparkle.frag b/resources/web/flutter_web/assets/shaders/ink_sparkle.frag new file mode 100644 index 0000000000..d43532a234 --- /dev/null +++ b/resources/web/flutter_web/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/resources/web/flutter_web/canvaskit/canvaskit.js b/resources/web/flutter_web/canvaskit/canvaskit.js new file mode 100644 index 0000000000..5d15fadf18 --- /dev/null +++ b/resources/web/flutter_web/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:()=>{},D: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[]})},E: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})},o: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,q: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.dd;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 wd=r._malloc=a=>(wd=r._malloc=G.cd)(a),qc=r._free=a=>(qc=r._free=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_jiiiiii=(a,b,c,d,f,k,l)=>(r.dynCall_jiiiiii=G.vd)(a,b,c,d,f,k,l);r.dynCall_jiiiiji=(a,b,c,d,f,k,l,m)=>(r.dynCall_jiiiiji=G.wd)(a,b,c,d,f,k,l,m);r.dynCall_ji=(a,b)=>(r.dynCall_ji=G.xd)(a,b);r.dynCall_iijj=(a,b,c,d,f,k)=>(r.dynCall_iijj=G.yd)(a,b,c,d,f,k);r.dynCall_iiji=(a,b,c,d,f)=>(r.dynCall_iiji=G.zd)(a,b,c,d,f);r.dynCall_iijjiii=(a,b,c,d,f,k,l,m,p)=>(r.dynCall_iijjiii=G.Ad)(a,b,c,d,f,k,l,m,p);r.dynCall_iij=(a,b,c,d)=>(r.dynCall_iij=G.Bd)(a,b,c,d); +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/resources/web/flutter_web/canvaskit/canvaskit.js.symbols b/resources/web/flutter_web/canvaskit/canvaskit.js.symbols new file mode 100644 index 0000000000..90bcfcf0a7 --- /dev/null +++ b/resources/web/flutter_web/canvaskit/canvaskit.js.symbols @@ -0,0 +1,11947 @@ +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:_embind_register_smart_ptr +15:_emval_get_method_caller +16:invoke_viii +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_finalize_value_object +30:_embind_register_integer +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_74 +224:memcmp +225:SkColorInfo::~SkColorInfo\28\29 +226:SkDebugf\28char\20const*\2c\20...\29 +227:SkString::SkString\28\29 +228:SkData::~SkData\28\29 +229:SkContainerAllocator::allocate\28int\2c\20double\29 +230:memmove +231:SkString::insert\28unsigned\20long\2c\20char\20const*\29 +232:hb_blob_destroy +233:uprv_malloc_74 +234:SkPath::~SkPath\28\29 +235:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::~__func\28\29 +236:strlen +237:sk_report_container_overflow_and_die\28\29 +238:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\29 +239:SkSL::ErrorReporter::error\28SkSL::Position\2c\20std::__2::basic_string_view>\29 +240:SkArenaAlloc::ensureSpace\28unsigned\20int\2c\20unsigned\20int\29 +241:SkRasterPipeline::append\28SkRasterPipelineOp\2c\20void*\29 +242:strcmp +243:SkString::SkString\28char\20const*\29 +244:ft_mem_free +245:FT_MulFix +246:emscripten::default_smart_ptr_trait>::share\28void*\29 +247:SkTDStorage::append\28\29 +248:SkMatrix::computeTypeMask\28\29\20const +249:GrGpuResource::notifyARefCntIsZero\28GrIORef::LastRemovedRef\29\20const +250:testSetjmp +251:SkWriter32::growToAtLeast\28unsigned\20long\29 +252:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\2c\20unsigned\20long\29 +253:fmaxf +254:std::__2::basic_string\2c\20std::__2::allocator>::size\5babi:v160004\5d\28\29\20const +255:SkString::SkString\28SkString&&\29 +256:SkSL::Pool::AllocMemory\28unsigned\20long\29 +257:std::__2::basic_string\2c\20std::__2::allocator>::__throw_length_error\5babi:v160004\5d\28\29\20const +258:GrColorInfo::~GrColorInfo\28\29 +259:SkIRect::intersect\28SkIRect\20const&\2c\20SkIRect\20const&\29 +260:GrBackendFormat::~GrBackendFormat\28\29 +261:std::__2::basic_string\2c\20std::__2::allocator>::insert\28unsigned\20long\2c\20char\20const*\29 +262:GrContext_Base::caps\28\29\20const +263:icu_74::UnicodeString::~UnicodeString\28\29 +264:std::__2::vector>::__throw_length_error\5babi:v160004\5d\28\29\20const +265:SkPaint::~SkPaint\28\29 +266:icu_74::UMemory::operator\20delete\28void*\29 +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:SkStrokeRec::getStyle\28\29\20const +273:SkString::SkString\28SkString\20const&\29 +274:void\20emscripten::internal::raw_destructor\28SkContourMeasure*\29 +275:hb_ot_map_builder_t::add_feature\28unsigned\20int\2c\20hb_ot_map_feature_flags_t\2c\20unsigned\20int\29 +276:SkMatrix::mapRect\28SkRect*\2c\20SkRect\20const&\2c\20SkApplyPerspectiveClip\29\20const +277:SkBitmap::~SkBitmap\28\29 +278:SkFontMgr*\20emscripten::base::convertPointer\28skia::textlayout::TypefaceFontProvider*\29 +279:hb_buffer_t::make_room_for\28unsigned\20int\2c\20unsigned\20int\29 +280:fminf +281:SkArenaAlloc::installFooter\28char*\20\28*\29\28char*\29\2c\20unsigned\20int\29 +282:SkArenaAlloc::allocObjectWithFooter\28unsigned\20int\2c\20unsigned\20int\29 +283:icu_74::CharString::append\28char\20const*\2c\20int\2c\20UErrorCode&\29 +284:skia_private::TArray::push_back\28SkPoint\20const&\29 +285:SkString::operator=\28SkString&&\29 +286:SkSemaphore::osSignal\28int\29 +287:SkPath::SkPath\28\29 +288:skia_png_error +289:hb_buffer_t::message\28hb_font_t*\2c\20char\20const*\2c\20...\29 +290:SkSL::Parser::nextRawToken\28\29 +291:SkArenaAlloc::~SkArenaAlloc\28\29 +292:SkMatrix::computePerspectiveTypeMask\28\29\20const +293:icu_74::StringPiece::StringPiece\28char\20const*\29 +294:SkSemaphore::osWait\28\29 +295:std::__2::__shared_weak_count::__release_weak\28\29 +296:SkColorInfo::SkColorInfo\28SkColorInfo\20const&\29 +297:SkIntersections::insert\28double\2c\20double\2c\20SkDPoint\20const&\29 +298:dlmalloc +299:FT_DivFix +300:SkString::appendf\28char\20const*\2c\20...\29 +301:uprv_isASCIILetter_74 +302:std::__throw_bad_array_new_length\5babi:v160004\5d\28\29 +303:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +304:skia_png_free +305:SkChecksum::Hash32\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20int\29 +306:utext_setNativeIndex_74 +307:utext_getNativeIndex_74 +308:skia_png_crc_finish +309:SkPath::lineTo\28float\2c\20float\29 +310:SkMatrix::setTranslate\28float\2c\20float\29 +311:ures_closeBundle\28UResourceBundle*\2c\20signed\20char\29 +312:skia_png_chunk_benign_error +313:SkMatrix::mapPoints\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +314:dlrealloc +315:skia_png_warning +316:SkBlitter::~SkBlitter\28\29 +317:OT::VarData::get_delta\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20OT::VarRegionList\20const&\2c\20float*\29\20const +318:ft_mem_qrealloc +319:SkColorInfo::bytesPerPixel\28\29\20const +320:SkPaint::SkPaint\28SkPaint\20const&\29 +321:GrVertexChunkBuilder::allocChunk\28int\29 +322:OT::DeltaSetIndexMap::map\28unsigned\20int\29\20const +323:strchr +324:ft_mem_realloc +325:SkReadBuffer::readUInt\28\29 +326:strstr +327:SkMatrix::reset\28\29 +328:SkImageInfo::MakeUnknown\28int\2c\20int\29 +329:GrSurfaceProxyView::asRenderTargetProxy\28\29\20const +330:skia_private::TArray::push_back\28unsigned\20char&&\29 +331:SkBitmap::SkBitmap\28\29 +332:skia_private::TArray::push_back\28unsigned\20long\20const&\29 +333:SkPath::SkPath\28SkPath\20const&\29 +334:ft_validator_error +335:SkPaint::SkPaint\28\29 +336:SkOpPtT::segment\28\29\20const +337:GrTextureGenerator::isTextureGenerator\28\29\20const +338:SkSL::Parser::expect\28SkSL::Token::Kind\2c\20char\20const*\2c\20SkSL::Token*\29 +339:SkJSONWriter::appendName\28char\20const*\29 +340:sk_malloc_flags\28unsigned\20long\2c\20unsigned\20int\29 +341:std::__2::basic_string\2c\20std::__2::allocator>::__get_pointer\5babi:v160004\5d\28\29 +342:skia_private::TArray\2c\20true>::push_back\28sk_sp&&\29 +343:SkMatrix::invertNonIdentity\28SkMatrix*\29\20const +344:SkJSONWriter::beginValue\28bool\29 +345:uhash_close_74 +346:dlcalloc +347:SkSL::RP::Builder::appendInstruction\28SkSL::RP::BuilderOp\2c\20SkSL::RP::Builder::SlotList\2c\20int\2c\20int\2c\20int\2c\20int\29 +348:SkImageGenerator::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +349:skia_private::TArray::push_back\28SkSL::RP::Instruction&&\29 +350:skia_png_get_uint_32 +351:skia_png_calculate_crc +352:std::__2::basic_string\2c\20std::__2::allocator>::resize\5babi:v160004\5d\28unsigned\20long\29 +353:SkSL::GLSLCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +354:skgpu::Swizzle::Swizzle\28char\20const*\29 +355:SkPoint::Length\28float\2c\20float\29 +356:GrImageInfo::GrImageInfo\28GrImageInfo\20const&\29 +357:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +358:SkPath::getBounds\28\29\20const +359:std::__2::locale::~locale\28\29 +360:SkLoadICULib\28\29 +361:ucptrie_internalSmallIndex_74 +362:skia_private::TArray::push_back\28SkString&&\29 +363:icu_74::CharString::append\28char\2c\20UErrorCode&\29 +364:SkPathRef::Editor::Editor\28sk_sp*\2c\20int\2c\20int\2c\20int\29 +365:FT_Stream_Seek +366:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28char\29 +367:SkRect::join\28SkRect\20const&\29 +368:SkRect::intersect\28SkRect\20const&\29 +369:std::__2::__throw_bad_function_call\5babi:v160004\5d\28\29 +370:hb_blob_reference +371:cf2_stack_popFixed +372:GrGLExtensions::has\28char\20const*\29\20const +373: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 +374:SkRect::setBoundsCheck\28SkPoint\20const*\2c\20int\29 +375:SkRasterPipeline::uncheckedAppend\28SkRasterPipelineOp\2c\20void*\29 +376:SkCachedData::internalUnref\28bool\29\20const +377:GrProcessor::operator\20new\28unsigned\20long\29 +378:FT_MulDiv +379:strcpy +380:std::__2::to_string\28int\29 +381:skia_private::TArray>\2c\20true>::operator=\28skia_private::TArray>\2c\20true>&&\29 +382:std::__2::ios_base::getloc\28\29\20const +383:icu_74::UnicodeString::doAppend\28char16_t\20const*\2c\20int\2c\20int\29 +384:SkRegion::~SkRegion\28\29 +385:skia_png_read_push_finish_row +386:skia::textlayout::TextStyle::~TextStyle\28\29 +387:hb_blob_make_immutable +388:SkString::operator=\28char\20const*\29 +389:SkSemaphore::~SkSemaphore\28\29 +390:SkReadBuffer::setInvalid\28\29 +391:SkColorInfo::operator=\28SkColorInfo&&\29 +392:umtx_unlock_74 +393: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 +394:embind_init_Paragraph\28\29::$_10::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +395: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 +396:VP8GetValue +397:uhash_get_74 +398:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28\29 +399:skgpu::ganesh::SurfaceContext::caps\28\29\20const +400:icu_74::UnicodeSet::~UnicodeSet\28\29 +401:icu_74::UnicodeSet::contains\28int\29\20const +402:SkSL::String::printf\28char\20const*\2c\20...\29 +403:SkPoint::normalize\28\29 +404:SkColorInfo::operator=\28SkColorInfo\20const&\29 +405:SkArenaAlloc::SkArenaAlloc\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +406:FT_Stream_ReadUShort +407:utext_next32_74 +408:jdiv_round_up +409:SkSL::RP::Builder::binary_op\28SkSL::RP::BuilderOp\2c\20int\29 +410:SkImageGenerator::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +411:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +412:jzero_far +413:hb_blob_get_data_writable +414:SkPathRef::growForVerb\28int\2c\20float\29 +415:SkColorInfo::SkColorInfo\28SkColorInfo&&\29 +416:skia_png_write_data +417:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +418:SkSL::Type::matches\28SkSL::Type\20const&\29\20const +419:SkRuntimeEffect::uniformSize\28\29\20const +420:SkMatrix::setConcat\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +421:FT_Stream_ExitFrame +422:umtx_lock_74 +423:subtag_matches\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20int\29 +424:skia_private::TArray::push_back_raw\28int\29 +425:__shgetc +426:SkBlitter::~SkBlitter\28\29.1 +427:FT_Stream_GetUShort +428:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28wchar_t\20const*\29 +429:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28char\20const*\29 +430:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +431:SkSL::SymbolTable::addWithoutOwnershipOrDie\28SkSL::Symbol*\29 +432:SkPoint::scale\28float\2c\20SkPoint*\29\20const +433:SkIRect\20skif::Mapping::map\28SkIRect\20const&\2c\20SkMatrix\20const&\29 +434:GrFragmentProcessor::ProgramImpl::invokeChild\28int\2c\20char\20const*\2c\20char\20const*\2c\20GrFragmentProcessor::ProgramImpl::EmitArgs&\2c\20std::__2::basic_string_view>\29 +435:sktext::gpu::BagOfBytes::~BagOfBytes\28\29 +436:icu_74::UVector32::expandCapacity\28int\2c\20UErrorCode&\29 +437:hb_face_reference_table +438:SkStringPrintf\28char\20const*\2c\20...\29 +439:GrSurfaceProxyView::asTextureProxy\28\29\20const +440:RoughlyEqualUlps\28float\2c\20float\29 +441:GrGLSLVaryingHandler::addVarying\28char\20const*\2c\20GrGLSLVarying*\2c\20GrGLSLVaryingHandler::Interpolation\29 +442:skia_png_chunk_error +443:SkTDStorage::reserve\28int\29 +444:SkPath::Iter::next\28SkPoint*\29 +445:SkDynamicMemoryWStream::write\28void\20const*\2c\20unsigned\20long\29 +446:OT::Layout::Common::Coverage::get_coverage\28unsigned\20int\29\20const +447:GrQuad::MakeFromRect\28SkRect\20const&\2c\20SkMatrix\20const&\29 +448:round +449:SkRecord::grow\28\29 +450:SkRGBA4f<\28SkAlphaType\293>::toBytes_RGBA\28\29\20const +451:GrProcessor::operator\20new\28unsigned\20long\2c\20unsigned\20long\29 +452:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28SkSL::SymbolTable*\29\20const +453:skgpu::ganesh::SurfaceDrawContext::addDrawOp\28GrClip\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::function\20const&\29 +454:skgpu::ResourceKeyHash\28unsigned\20int\20const*\2c\20unsigned\20long\29 +455:icu_74::UVector::elementAt\28int\29\20const +456:VP8LoadFinalBytes +457:SkSL::TProgramVisitor::visitStatement\28SkSL::Statement\20const&\29 +458:SkSL::RP::Builder::discard_stack\28int\2c\20int\29 +459:SkPath::conicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\29 +460:SkCanvas::predrawNotify\28bool\29 +461:std::__2::__cloc\28\29 +462:sscanf +463:SkSurfaceProps::SkSurfaceProps\28\29 +464:SkStrikeSpec::~SkStrikeSpec\28\29 +465:SkPath::moveTo\28float\2c\20float\29 +466:GrSkSLFP::GrSkSLFP\28sk_sp\2c\20char\20const*\2c\20GrSkSLFP::OptFlags\29 +467:GrBackendFormat::GrBackendFormat\28\29 +468:icu_74::umtx_initImplPreInit\28icu_74::UInitOnce&\29 +469:icu_74::umtx_initImplPostInit\28icu_74::UInitOnce&\29 +470:__multf3 +471:VP8LReadBits +472:SkTDStorage::append\28int\29 +473:SkPath::isFinite\28\29\20const +474:SkMatrix::setScale\28float\2c\20float\29 +475:GrOpsRenderPass::setScissorRect\28SkIRect\20const&\29 +476:GrOpsRenderPass::bindPipeline\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +477:GrCaps::getDefaultBackendFormat\28GrColorType\2c\20skgpu::Renderable\29\20const +478:hb_draw_funcs_t::start_path\28void*\2c\20hb_draw_state_t&\29 +479:SkSL::ConstructorCompound::MakeFromConstants\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20double\20const*\29 +480:SkRuntimeEffect::MakeForShader\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +481:SkPath::isEmpty\28\29\20const +482:SkColorSpaceXformSteps::SkColorSpaceXformSteps\28SkColorSpace\20const*\2c\20SkAlphaType\2c\20SkColorSpace\20const*\2c\20SkAlphaType\29 +483:GrSimpleMeshDrawOpHelper::~GrSimpleMeshDrawOpHelper\28\29 +484:GrProcessorSet::GrProcessorSet\28GrPaint&&\29 +485:GrBackendFormats::AsGLFormat\28GrBackendFormat\20const&\29 +486:std::__2::locale::id::__get\28\29 +487:std::__2::locale::facet::facet\5babi:v160004\5d\28unsigned\20long\29 +488:skia_private::TArray::push_back_raw\28int\29 +489:hb_buffer_t::_infos_set_glyph_flags\28hb_glyph_info_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +490:SkSL::PipelineStage::PipelineStageCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +491:SkSL::Inliner::inlineExpression\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20SkSL::Expression\20const&\29 +492:SkSL::GLSLCodeGenerator::writeIdentifier\28std::__2::basic_string_view>\29 +493:SkPath::reset\28\29 +494:SkPath::operator=\28SkPath\20const&\29 +495:GrGeometryProcessor::AttributeSet::initImplicit\28GrGeometryProcessor::Attribute\20const*\2c\20int\29 +496:GrContext_Base::contextID\28\29\20const +497:FT_Stream_EnterFrame +498:AlmostEqualUlps\28float\2c\20float\29 +499:udata_close_74 +500:ucln_common_registerCleanup_74 +501:std::__2::locale::__imp::install\28std::__2::locale::facet*\2c\20long\29 +502:skia_png_read_data +503:SkSpinlock::contendedAcquire\28\29 +504: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 +505:SkSL::FunctionDeclaration::description\28\29\20const +506:SkPaint::setStyle\28SkPaint::Style\29 +507:SkMatrix::setRectToRect\28SkRect\20const&\2c\20SkRect\20const&\2c\20SkMatrix::ScaleToFit\29 +508:SkDPoint::approximatelyEqual\28SkDPoint\20const&\29\20const +509:GrSurfaceProxy::backingStoreDimensions\28\29\20const +510:GrOpsRenderPass::bindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +511:uprv_asciitolower_74 +512:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +513:skgpu::ganesh::SurfaceContext::drawingManager\28\29 +514:skgpu::UniqueKey::GenerateDomain\28\29 +515:hb_buffer_t::_set_glyph_flags\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +516:emscripten_longjmp +517:GrMeshDrawOp::GrMeshDrawOp\28unsigned\20int\29 +518:FT_RoundFix +519:uprv_realloc_74 +520:std::__2::unique_ptr::~unique_ptr\5babi:v160004\5d\28\29 +521:std::__2::unique_ptr::unique_ptr\5babi:v160004\5d\28unsigned\20char*\2c\20std::__2::__dependent_type\2c\20true>::__good_rval_ref_type\29 +522:icu_74::UnicodeSet::UnicodeSet\28\29 +523:hb_face_get_glyph_count +524:cf2_stack_pushFixed +525:byn$mgfn-shared$decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkNullBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +526:__multi3 +527:SkSL::RP::Builder::push_duplicates\28int\29 +528:SkMatrix::postTranslate\28float\2c\20float\29 +529:SkColorInfo::refColorSpace\28\29\20const +530:SkCanvas::concat\28SkMatrix\20const&\29 +531:SkBlockAllocator::reset\28\29 +532:SkBitmapDevice::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +533:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20SkFilterMode\2c\20SkMipmapMode\29 +534:GrGLSLVaryingHandler::addPassThroughAttribute\28GrShaderVar\20const&\2c\20char\20const*\2c\20GrGLSLVaryingHandler::Interpolation\29 +535:GrFragmentProcessor::registerChild\28std::__2::unique_ptr>\2c\20SkSL::SampleUsage\29 +536:FT_Stream_ReleaseFrame +537:std::__2::istreambuf_iterator>::operator*\5babi:v160004\5d\28\29\20const +538:skia::textlayout::TextStyle::TextStyle\28skia::textlayout::TextStyle\20const&\29 +539:hb_buffer_t::merge_clusters_impl\28unsigned\20int\2c\20unsigned\20int\29 +540:decltype\28fp.sanitize\28this\29\29\20hb_sanitize_context_t::_dispatch\28OT::Layout::Common::Coverage\20const&\2c\20hb_priority<1u>\29 +541:SkWStream::writePackedUInt\28unsigned\20long\29 +542:SkSL::RP::Builder::push_constant_i\28int\2c\20int\29 +543:SkSL::BreakStatement::~BreakStatement\28\29 +544:SkPaint::setShader\28sk_sp\29 +545:SkNullBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +546:SkBitmap::setImmutable\28\29 +547:GrPipeline::visitProxies\28std::__2::function\20const&\29\20const +548:GrGeometryProcessor::GrGeometryProcessor\28GrProcessor::ClassID\29 +549:void\20emscripten::internal::raw_destructor\28GrDirectContext*\29 +550:std::__2::istreambuf_iterator>::operator*\5babi:v160004\5d\28\29\20const +551:icu_74::UnicodeSet::add\28int\2c\20int\29 +552:SkString::equals\28SkString\20const&\29\20const +553:SkSL::fold_expression\28SkSL::Position\2c\20double\2c\20SkSL::Type\20const*\29 +554:SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0::operator\28\29\28SkSL::FunctionDefinition\20const*\2c\20SkSL::FunctionDefinition\20const*\29\20const +555:SkSL::RP::Generator::binaryOp\28SkSL::Type\20const&\2c\20SkSL::RP::Generator::TypedOps\20const&\29 +556:SkJSONWriter::appendf\28char\20const*\2c\20...\29 +557:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29 +558:GrGeometryProcessor::Attribute&\20skia_private::TArray::emplace_back\28char\20const\20\28&\29\20\5b10\5d\2c\20GrVertexAttribType&&\2c\20SkSLType&&\29 +559:Cr_z_crc32 +560:u_strlen_74 +561:skia_png_push_save_buffer +562:cosf +563:SkSL::Type::MakeAliasType\28std::__2::basic_string_view>\2c\20SkSL::Type\20const&\29 +564:SkSL::RP::SlotManager::getVariableSlots\28SkSL::Variable\20const&\29 +565:SkSL::RP::Builder::unary_op\28SkSL::RP::BuilderOp\2c\20int\29 +566:SkReadBuffer::readScalar\28\29 +567:GrProcessorSet::visitProxies\28std::__2::function\20const&\29\20const +568:GrGLTexture::target\28\29\20const +569:ures_getByKey_74 +570:sk_srgb_singleton\28\29 +571:fmodf +572:fma +573:SkSurface_Base::aboutToDraw\28SkSurface::ContentChangeMode\29 +574:SkSL::Pool::FreeMemory\28void*\29 +575:SkPaint::SkPaint\28SkPaint&&\29 +576:SkDPoint::ApproximatelyEqual\28SkPoint\20const&\2c\20SkPoint\20const&\29 +577:SkBitmap::SkBitmap\28SkBitmap\20const&\29 +578:void\20std::__2::vector>\2c\20std::__2::allocator>>>::__push_back_slow_path>>\28std::__2::unique_ptr>&&\29 +579:std::__2::basic_string\2c\20std::__2::allocator>::__init_copy_ctor_external\28char\20const*\2c\20unsigned\20long\29 +580:skip_spaces +581:skcms_Transform +582:sk_realloc_throw\28void*\2c\20unsigned\20long\29 +583:emscripten::smart_ptr_trait>::get\28sk_sp\20const&\29 +584:cff2_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +585:cff1_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +586: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 +587:SkString::operator=\28SkString\20const&\29 +588:SkSL::Type::toCompound\28SkSL::Context\20const&\2c\20int\2c\20int\29\20const +589:SkPath::transform\28SkMatrix\20const&\2c\20SkPath*\2c\20SkApplyPerspectiveClip\29\20const +590:SkPath::quadTo\28float\2c\20float\2c\20float\2c\20float\29 +591:SkCanvas::save\28\29 +592:SkBlockAllocator::addBlock\28int\2c\20int\29 +593:SkBitmap::tryAllocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29 +594:SkAAClipBlitter::~SkAAClipBlitter\28\29 +595:OT::hb_ot_apply_context_t::match_properties_mark\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +596:GrThreadSafeCache::VertexData::~VertexData\28\29 +597:GrShape::asPath\28SkPath*\2c\20bool\29\20const +598:GrShaderVar::appendDecl\28GrShaderCaps\20const*\2c\20SkString*\29\20const +599:GrPixmapBase::~GrPixmapBase\28\29 +600:GrGLSLVaryingHandler::emitAttributes\28GrGeometryProcessor\20const&\29 +601:uhash_put_74 +602:std::__2::unique_ptr::reset\5babi:v160004\5d\28unsigned\20char*\29 +603:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +604:skia_private::TArray::push_back\28SkPaint\20const&\29 +605:png_icc_profile_error +606:icu_74::UnicodeString::getChar32At\28int\29\20const +607:icu_74::CharStringByteSink::CharStringByteSink\28icu_74::CharString*\29 +608:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression\20const&\29 +609:SkRasterClip::~SkRasterClip\28\29 +610:SkPixmap::reset\28SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +611:SkPathRef::~SkPathRef\28\29 +612:SkPath::countPoints\28\29\20const +613:SkPaint::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +614:SkPaint::canComputeFastBounds\28\29\20const +615:SkOpPtT::contains\28SkOpPtT\20const*\29\20const +616:SkOpAngle::segment\28\29\20const +617:SkMatrix::preConcat\28SkMatrix\20const&\29 +618:SkMatrix::mapVectors\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +619:SkMasks::getRed\28unsigned\20int\29\20const +620:SkMasks::getGreen\28unsigned\20int\29\20const +621:SkMasks::getBlue\28unsigned\20int\29\20const +622:SkColorInfo::shiftPerPixel\28\29\20const +623:GrProcessorSet::~GrProcessorSet\28\29 +624:GrMeshDrawOp::createProgramInfo\28GrMeshDrawTarget*\29 +625:FT_Stream_ReadFields +626:AutoLayerForImageFilter::~AutoLayerForImageFilter\28\29 +627:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +628:saveSetjmp +629:operator==\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +630:icu_74::UnicodeString::UnicodeString\28icu_74::UnicodeString\20const&\29 +631:icu_74::UnicodeSet::compact\28\29 +632:hb_face_t::load_num_glyphs\28\29\20const +633:emscripten::internal::MethodInvoker::invoke\28int\20\28SkAnimatedImage::*\20const&\29\28\29\2c\20SkAnimatedImage*\29 +634:emscripten::default_smart_ptr_trait>::construct_null\28\29 +635:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +636:VP8GetSignedValue +637:SkSafeMath::Mul\28unsigned\20long\2c\20unsigned\20long\29 +638:SkSL::Type::MakeVectorType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\29 +639:SkRasterPipeline::SkRasterPipeline\28SkArenaAlloc*\29 +640:SkPoint::setLength\28float\29 +641:SkImageGenerator::onIsValid\28GrRecordingContext*\29\20const +642:OT::GDEF::accelerator_t::mark_set_covers\28unsigned\20int\2c\20unsigned\20int\29\20const +643:GrTextureProxy::mipmapped\28\29\20const +644:GrGpuResource::~GrGpuResource\28\29 +645:FT_Stream_GetULong +646:FT_Get_Char_Index +647:Cr_z__tr_flush_bits +648:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +649:void\20emscripten::internal::MemberAccess::setWire\28int\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform&\2c\20int\29 +650:uhash_setKeyDeleter_74 +651:uhash_init_74 +652:std::__2::ctype::widen\5babi:v160004\5d\28char\29\20const +653:std::__2::__throw_overflow_error\5babi:v160004\5d\28char\20const*\29 +654:skia_private::THashMap::set\28char\20const*\2c\20unsigned\20int\29 +655:skia_png_chunk_report +656:skgpu::UniqueKey::operator=\28skgpu::UniqueKey\20const&\29 +657:sk_double_nearly_zero\28double\29 +658:int\20emscripten::internal::MemberAccess::getWire\28int\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform\20const&\29 +659:icu_74::UnicodeString::tempSubString\28int\2c\20int\29\20const +660:icu_74::Locale::~Locale\28\29 +661:hb_font_get_glyph +662:ft_mem_qalloc +663:fit_linear\28skcms_Curve\20const*\2c\20int\2c\20float\2c\20float*\2c\20float*\2c\20float*\29 +664:expf +665:_output_with_dotted_circle\28hb_buffer_t*\29 +666:WebPSafeMalloc +667:SkStream::readS32\28int*\29 +668:SkSL::GLSLCodeGenerator::getTypeName\28SkSL::Type\20const&\29 +669:SkRGBA4f<\28SkAlphaType\293>::FromColor\28unsigned\20int\29 +670:SkPath::Iter::Iter\28SkPath\20const&\2c\20bool\29 +671:SkMatrix::postConcat\28SkMatrix\20const&\29 +672:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_3::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +673:SkGlyph::rowBytes\28\29\20const +674:SkDrawable::getFlattenableType\28\29\20const +675:SkDrawable::getBounds\28\29 +676:SkDCubic::ptAtT\28double\29\20const +677:SkColorSpace::MakeSRGB\28\29 +678:SkColorInfo::SkColorInfo\28\29 +679:GrOpFlushState::drawMesh\28GrSimpleMesh\20const&\29 +680:GrImageInfo::GrImageInfo\28SkImageInfo\20const&\29 +681:DefaultGeoProc::Impl::~Impl\28\29 +682:skif::LayerSpace::mapRect\28skif::LayerSpace\20const&\29\20const +683:out +684:jpeg_fill_bit_buffer +685:icu_74::ReorderingBuffer::appendZeroCC\28char16_t\20const*\2c\20char16_t\20const*\2c\20UErrorCode&\29 +686: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 +687:SkString::data\28\29 +688:SkShaderBase::SkShaderBase\28\29 +689:SkSL::Type::coerceExpression\28std::__2::unique_ptr>\2c\20SkSL::Context\20const&\29\20const +690:SkSL::Type::MakeGenericType\28char\20const*\2c\20SkSpan\2c\20SkSL::Type\20const*\29 +691:SkSL::ConstantFolder::GetConstantValueForVariable\28SkSL::Expression\20const&\29 +692:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29 +693:SkRegion::setRect\28SkIRect\20const&\29 +694:SkRegion::SkRegion\28\29 +695:SkRecords::FillBounds::adjustForSaveLayerPaints\28SkRect*\2c\20int\29\20const +696:SkPathStroker::lineTo\28SkPoint\20const&\2c\20SkPath::Iter\20const*\29 +697:SkPaint::setPathEffect\28sk_sp\29 +698:SkPaint::setMaskFilter\28sk_sp\29 +699:SkPaint::setColor\28unsigned\20int\29 +700:SkPaint::setColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\29 +701:SkOpContourBuilder::flush\28\29 +702:SkImageFilter::getInput\28int\29\20const +703:SkData::MakeWithCopy\28void\20const*\2c\20unsigned\20long\29 +704:SkCanvas::~SkCanvas\28\29.1 +705:SkCanvas::restoreToCount\28int\29 +706:SkCanvas::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +707:SkAutoPixmapStorage::~SkAutoPixmapStorage\28\29 +708:GrMatrixEffect::Make\28SkMatrix\20const&\2c\20std::__2::unique_ptr>\29 +709:u_memcpy_74 +710:std::__2::char_traits::assign\28char&\2c\20char\20const&\29 +711:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +712:std::__2::__check_grouping\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int&\29 +713:skia_png_malloc +714:skia::textlayout::Cluster::run\28\29\20const +715:skgpu::ganesh::SurfaceDrawContext::drawFilledQuad\28GrClip\20const*\2c\20GrPaint&&\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\29 +716:sk_sp::~sk_sp\28\29 +717:png_write_complete_chunk +718:pad +719:icu_74::UnicodeString::UnicodeString\28char16_t\20const*\29 +720:icu_74::UnicodeSet::add\28int\29 +721:hb_lockable_set_t::fini\28hb_mutex_t&\29 +722:ft_mem_alloc +723:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20unsigned\20long\2c\20SkBlendMode\29\2c\20SkCanvas*\2c\20unsigned\20long\2c\20SkBlendMode\29 +724:__ashlti3 +725:SkWBuffer::writeNoSizeCheck\28void\20const*\2c\20unsigned\20long\29 +726:SkTCoincident::setPerp\28SkTCurve\20const&\2c\20double\2c\20SkDPoint\20const&\2c\20SkTCurve\20const&\29 +727:SkStrokeRec::SkStrokeRec\28SkStrokeRec::InitStyle\29 +728:SkString::printf\28char\20const*\2c\20...\29 +729:SkSL::Type::MakeMatrixType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\2c\20signed\20char\29 +730:SkSL::Operator::tightOperatorName\28\29\20const +731:SkReadBuffer::readColor4f\28SkRGBA4f<\28SkAlphaType\293>*\29 +732:SkPixmap::reset\28\29 +733:SkPictureData::requiredPaint\28SkReadBuffer*\29\20const +734:SkPath::cubicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +735:SkPath::close\28\29 +736:SkPaintToGrPaint\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +737:SkPaint::setBlendMode\28SkBlendMode\29 +738:SkFindUnitQuadRoots\28float\2c\20float\2c\20float\2c\20float*\29 +739:SkDeque::push_back\28\29 +740:SkCanvas::internalQuickReject\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\29 +741:SkBinaryWriteBuffer::writeBool\28bool\29 +742:OT::hb_paint_context_t::return_t\20OT::Paint::dispatch\28OT::hb_paint_context_t*\29\20const +743:GrShape::bounds\28\29\20const +744: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 +745:GrPixmapBase::GrPixmapBase\28GrImageInfo\2c\20void*\2c\20unsigned\20long\29 +746:GrColorInfo::GrColorInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\29 +747:FT_Outline_Translate +748:FT_Load_Glyph +749:FT_GlyphLoader_CheckPoints +750:DefaultGeoProc::~DefaultGeoProc\28\29 +751:utext_current32_74 +752:u_terminateUChars_74 +753:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +754:std::__2::basic_string\2c\20std::__2::allocator>::__set_short_size\5babi:v160004\5d\28unsigned\20long\29 +755:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_size\5babi:v160004\5d\28unsigned\20long\29 +756:sinf +757:icu_74::BMPSet::~BMPSet\28\29.1 +758:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28GrDirectContext&\2c\20unsigned\20long\29\2c\20GrDirectContext*\2c\20unsigned\20long\29 +759: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 +760:SkTextBlob::~SkTextBlob\28\29 +761:SkRasterPipeline::extend\28SkRasterPipeline\20const&\29 +762:SkMatrix::preTranslate\28float\2c\20float\29 +763:SkMatrix::mapXY\28float\2c\20float\2c\20SkPoint*\29\20const +764:SkMatrix::mapRadius\28float\29\20const +765:SkIRect::join\28SkIRect\20const&\29 +766:SkData::MakeUninitialized\28unsigned\20long\29 +767:SkDQuad::RootsValidT\28double\2c\20double\2c\20double\2c\20double*\29 +768:SkDLine::nearPoint\28SkDPoint\20const&\2c\20bool*\29\20const +769:SkConic::chopIntoQuadsPOW2\28SkPoint*\2c\20int\29\20const +770:SkColorSpaceXformSteps::apply\28float*\29\20const +771:SkCodec::applyColorXform\28void*\2c\20void\20const*\2c\20int\29\20const +772:SkCachedData::internalRef\28bool\29\20const +773:SkBitmap::installPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29 +774:GrSurface::RefCntedReleaseProc::~RefCntedReleaseProc\28\29 +775:GrStyle::initPathEffect\28sk_sp\29 +776:GrProcessor::operator\20delete\28void*\29 +777:GrGpuResource::hasRef\28\29\20const +778:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::~Impl\28\29 +779:GrBufferAllocPool::~GrBufferAllocPool\28\29.1 +780:strncpy +781:std::__2::numpunct::thousands_sep\5babi:v160004\5d\28\29\20const +782:std::__2::numpunct::grouping\5babi:v160004\5d\28\29\20const +783:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +784:skia_png_malloc_warn +785:rewind\28GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +786:icu_74::UVector::removeAllElements\28\29 +787:icu_74::BytesTrie::~BytesTrie\28\29 +788:icu_74::BytesTrie::next\28int\29 +789:cf2_stack_popInt +790:SkUTF::NextUTF8\28char\20const**\2c\20char\20const*\29 +791:SkSL::GLSLCodeGenerator::write\28std::__2::basic_string_view>\29 +792:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29 +793:SkPaint::setColorFilter\28sk_sp\29 +794:SkMatrixPriv::MapRect\28SkM44\20const&\2c\20SkRect\20const&\29 +795:SkImageInfo::MakeA8\28int\2c\20int\29 +796:SkData::MakeWithProc\28void\20const*\2c\20unsigned\20long\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +797:SkData::MakeEmpty\28\29 +798:SkConic::computeQuadPOW2\28float\29\20const +799:SkColorTypeIsAlwaysOpaque\28SkColorType\29 +800:SkColorInfo::makeColorType\28SkColorType\29\20const +801:SkCodec::~SkCodec\28\29 +802:SkAAClip::quickContains\28int\2c\20int\2c\20int\2c\20int\29\20const +803:SkAAClip::isRect\28\29\20const +804:GrSurface::ComputeSize\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\2c\20skgpu::Mipmapped\2c\20bool\29 +805:GrSimpleMeshDrawOpHelper::GrSimpleMeshDrawOpHelper\28GrProcessorSet*\2c\20GrAAType\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +806:GrGeometryProcessor::ProgramImpl::SetTransform\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrResourceHandle\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix*\29 +807:GrDrawingManager::flushIfNecessary\28\29 +808:GrBlendFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkBlendMode\2c\20bool\29 +809:FT_Stream_ExtractFrame +810:AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +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:std::__2::__throw_bad_optional_access\5babi:v160004\5d\28\29 +814:skia_png_malloc_base +815:skgpu::ganesh::AsView\28GrRecordingContext*\2c\20SkImage\20const*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +816:skcms_TransferFunction_eval +817:pow +818:icu_74::UnicodeString::setToBogus\28\29 +819:icu_74::UnicodeString::releaseBuffer\28int\29 +820:icu_74::UnicodeSet::_appendToPat\28icu_74::UnicodeString&\2c\20int\2c\20signed\20char\29 +821:icu_74::UVector::~UVector\28\29 +822:hb_ot_face_t::init0\28hb_face_t*\29 +823:hb_lazy_loader_t\2c\20hb_face_t\2c\2025u\2c\20OT::GSUB_accelerator_t>::get\28\29\20const +824:__addtf3 +825:SkTDStorage::reset\28\29 +826:SkScan::AntiHairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +827:SkSL::TProgramVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +828:SkSL::RP::Builder::label\28int\29 +829:SkSL::BinaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +830:SkRuntimeEffect::MakeForColorFilter\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +831:SkReadBuffer::skip\28unsigned\20long\2c\20unsigned\20long\29 +832:SkPath::countVerbs\28\29\20const +833:SkMatrix::set9\28float\20const*\29 +834:SkMatrix::getMaxScale\28\29\20const +835:SkImageInfo::computeByteSize\28unsigned\20long\29\20const +836:SkImageInfo::Make\28int\2c\20int\2c\20SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +837:SkImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +838:SkImageFilter_Base::SkImageFilter_Base\28sk_sp\20const*\2c\20int\2c\20std::__2::optional\29 +839:SkFontMgr::countFamilies\28\29\20const +840:SkDrawBase::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20bool\2c\20bool\2c\20SkBlitter*\29\20const +841:SkDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +842:SkBlockAllocator::SkBlockAllocator\28SkBlockAllocator::GrowthPolicy\2c\20unsigned\20long\2c\20unsigned\20long\29 +843:SkBlender::Mode\28SkBlendMode\29 +844:ReadHuffmanCode +845:GrSurfaceProxy::~GrSurfaceProxy\28\29 +846:GrRenderTask::makeClosed\28GrRecordingContext*\29 +847:GrGpuBuffer::unmap\28\29 +848:GrContext_Base::options\28\29\20const +849:GrCaps::getReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +850:GrBufferAllocPool::reset\28\29 +851:FT_Stream_ReadByte +852:std::__2::char_traits::assign\28wchar_t&\2c\20wchar_t\20const&\29 +853:std::__2::char_traits::copy\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +854:std::__2::basic_string\2c\20std::__2::allocator>::begin\5babi:v160004\5d\28\29 +855:std::__2::__next_prime\28unsigned\20long\29 +856:std::__2::__libcpp_snprintf_l\28char*\2c\20unsigned\20long\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +857:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29 +858:locale_get_default_74 +859:is_equal\28std::type_info\20const*\2c\20std::type_info\20const*\2c\20bool\29 +860:hb_buffer_t::sync\28\29 +861:cbrtf +862:__floatsitf +863:WebPSafeCalloc +864:StreamRemainingLengthIsBelow\28SkStream*\2c\20unsigned\20long\29 +865:SkSize\20skif::Mapping::map\28SkSize\20const&\2c\20SkMatrix\20const&\29 +866:SkSL::RP::Builder::swizzle\28int\2c\20SkSpan\29 +867:SkSL::Parser::expression\28\29 +868:SkRuntimeEffect::Uniform::sizeInBytes\28\29\20const +869:SkRGBA4f<\28SkAlphaType\293>::toSkColor\28\29\20const +870:SkPath::isConvex\28\29\20const +871:SkImageFilter_Base::getFlattenableType\28\29\20const +872:SkImageFilter_Base::getChildOutputLayerBounds\28int\2c\20skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +873:SkImageFilter_Base::getChildInputLayerBounds\28int\2c\20skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +874:SkIDChangeListener::List::~List\28\29 +875:SkDQuad::ptAtT\28double\29\20const +876:SkDLine::exactPoint\28SkDPoint\20const&\29\20const +877:SkDConic::ptAtT\28double\29\20const +878:SkColorInfo::makeAlphaType\28SkAlphaType\29\20const +879:SkCanvas::restore\28\29 +880:SkCanvas::drawImage\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +881:SkBitmap::setInfo\28SkImageInfo\20const&\2c\20unsigned\20long\29 +882:SkAAClip::Builder::addRun\28int\2c\20int\2c\20unsigned\20int\2c\20int\29 +883:GrSkSLFP::addChild\28std::__2::unique_ptr>\2c\20bool\29 +884:GrGLSLShaderBuilder::appendTextureLookup\28SkString*\2c\20GrResourceHandle\2c\20char\20const*\29\20const +885:GrFragmentProcessor::cloneAndRegisterAllChildProcessors\28GrFragmentProcessor\20const&\29 +886:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::~SwizzleFragmentProcessor\28\29 +887:GrDrawOpAtlas::~GrDrawOpAtlas\28\29 +888:GrBackendFormat::GrBackendFormat\28GrBackendFormat\20const&\29 +889:AutoLayerForImageFilter::AutoLayerForImageFilter\28SkCanvas*\2c\20SkPaint\20const&\2c\20SkRect\20const*\2c\20bool\29 +890:AutoFTAccess::AutoFTAccess\28SkTypeface_FreeType\20const*\29 +891:AlmostPequalUlps\28float\2c\20float\29 +892:void\20std::__2::vector>\2c\20std::__2::allocator>>>::__emplace_back_slow_path>\28unsigned\20int\20const&\2c\20sk_sp&&\29 +893:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20char\29\20const +894:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char\20const*\29 +895:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_cap\5babi:v160004\5d\28unsigned\20long\29 +896:skia_png_reset_crc +897:skia_png_benign_error +898:memchr +899:icu_74::UnicodeString::operator=\28icu_74::UnicodeString\20const&\29 +900:icu_74::UnicodeString::doReplace\28int\2c\20int\2c\20char16_t\20const*\2c\20int\2c\20int\29 +901:icu_74::UnicodeString::UnicodeString\28signed\20char\2c\20icu_74::ConstChar16Ptr\2c\20int\29 +902:icu_74::UVector::adoptElement\28void*\2c\20UErrorCode&\29 +903:icu_74::MlBreakEngine::initKeyValue\28UResourceBundle*\2c\20char\20const*\2c\20char\20const*\2c\20icu_74::Hashtable&\2c\20UErrorCode&\29 +904:icu_74::ByteSinkUtil::appendUnchanged\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20icu_74::ByteSink&\2c\20unsigned\20int\2c\20icu_74::Edits*\2c\20UErrorCode&\29 +905:hb_buffer_t::sync_so_far\28\29 +906:hb_buffer_t::move_to\28unsigned\20int\29 +907:VP8ExitCritical +908:SkTDStorage::resize\28int\29 +909:SkSwizzler::swizzle\28void*\2c\20unsigned\20char\20const*\29 +910:SkStrokeRec::SkStrokeRec\28SkPaint\20const&\2c\20float\29 +911:SkStream::readPackedUInt\28unsigned\20long*\29 +912:SkSL::Type::coercionCost\28SkSL::Type\20const&\29\20const +913:SkSL::Type::clone\28SkSL::Context\20const&\2c\20SkSL::SymbolTable*\29\20const +914:SkSL::RP::Generator::writeStatement\28SkSL::Statement\20const&\29 +915: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 +916:SkRuntimeEffectBuilder::writableUniformData\28\29 +917:SkRuntimeEffect::findUniform\28std::__2::basic_string_view>\29\20const +918:SkResourceCache::Key::init\28void*\2c\20unsigned\20long\20long\2c\20unsigned\20long\29 +919:SkReadBuffer::skip\28unsigned\20long\29 +920:SkReadBuffer::readFlattenable\28SkFlattenable::Type\29 +921:SkRRect::initializeRect\28SkRect\20const&\29 +922:SkPaint::asBlendMode\28\29\20const +923:SkGlyph::path\28\29\20const +924:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\29 +925:GrRenderTargetProxy::arenas\28\29 +926:GrOpFlushState::caps\28\29\20const +927:GrGpuResource::hasNoCommandBufferUsages\28\29\20const +928:GrGeometryProcessor::ProgramImpl::WriteLocalCoord\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20GrShaderVar\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +929:GrGLTextureParameters::SamplerOverriddenState::SamplerOverriddenState\28\29 +930:GrGLGpu::deleteFramebuffer\28unsigned\20int\29 +931:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\29 +932:FT_Stream_ReadULong +933:FT_Get_Module +934:Cr_z__tr_flush_block +935:AlmostBequalUlps\28float\2c\20float\29 +936:utext_previous32_74 +937:ures_hasNext_74 +938:ures_getByKeyWithFallback_74 +939:std::__2::numpunct::truename\5babi:v160004\5d\28\29\20const +940:std::__2::moneypunct::do_grouping\28\29\20const +941:std::__2::locale::use_facet\28std::__2::locale::id&\29\20const +942:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29\20const +943:std::__2::basic_string\2c\20std::__2::allocator>::empty\5babi:v160004\5d\28\29\20const +944:sktext::gpu::BagOfBytes::needMoreBytes\28int\2c\20int\29 +945:skia_png_save_int_32 +946:skia_png_safecat +947:skia_png_gamma_significant +948:skgpu::ganesh::SurfaceContext::readPixels\28GrDirectContext*\2c\20GrPixmap\2c\20SkIPoint\29 +949:icu_74::UnicodeString::setTo\28signed\20char\2c\20icu_74::ConstChar16Ptr\2c\20int\29 +950:icu_74::UnicodeString::getBuffer\28int\29 +951:icu_74::UnicodeString::doAppend\28icu_74::UnicodeString\20const&\2c\20int\2c\20int\29 +952:icu_74::UVector32::~UVector32\28\29 +953:icu_74::RuleBasedBreakIterator::handleNext\28\29 +954:icu_74::Locale::Locale\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +955:hb_lazy_loader_t\2c\20hb_face_t\2c\2026u\2c\20OT::GPOS_accelerator_t>::get\28\29\20const +956:hb_font_get_nominal_glyph +957:hb_buffer_t::clear_output\28\29 +958:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28SkPaint\20const&\29\2c\20SkCanvas*\2c\20SkPaint*\29 +959:emscripten::internal::FunctionInvoker::invoke\28unsigned\20long\20\28**\29\28GrDirectContext&\29\2c\20GrDirectContext*\29 +960:cff_parse_num +961:\28anonymous\20namespace\29::write_trc_tag\28skcms_Curve\20const&\29 +962:T_CString_toLowerCase_74 +963:SkWStream::writeScalarAsText\28float\29 +964:SkTSect::SkTSect\28SkTCurve\20const&\29 +965:SkString::set\28char\20const*\2c\20unsigned\20long\29 +966:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Context\20const&\2c\20SkSL::Symbol*\29 +967:SkSL::Swizzle::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20skia_private::FixedArray<4\2c\20signed\20char>\29 +968:SkSL::Parser::layoutInt\28\29 +969:SkSL::Parser::expectIdentifier\28SkSL::Token*\29 +970:SkRegion::Cliperator::next\28\29 +971:SkRegion::Cliperator::Cliperator\28SkRegion\20const&\2c\20SkIRect\20const&\29 +972:SkRRect::setOval\28SkRect\20const&\29 +973:SkPictureRecorder::~SkPictureRecorder\28\29 +974:SkPathRef::CreateEmpty\28\29 +975:SkPath::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +976:SkPaint::operator=\28SkPaint&&\29 +977:SkMasks::getAlpha\28unsigned\20int\29\20const +978:SkM44::setConcat\28SkM44\20const&\2c\20SkM44\20const&\29 +979:SkImageFilters::Crop\28SkRect\20const&\2c\20SkTileMode\2c\20sk_sp\29 +980:SkImageFilter_Base::getChildOutput\28int\2c\20skif::Context\20const&\29\20const +981:SkIDChangeListener::List::List\28\29 +982:SkData::MakeFromMalloc\28void\20const*\2c\20unsigned\20long\29 +983:SkDRect::setBounds\28SkTCurve\20const&\29 +984:SkColorFilter::isAlphaUnchanged\28\29\20const +985:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +986:SkCanvas::translate\28float\2c\20float\29 +987:SkBitmapCache::Rec::getKey\28\29\20const +988:PS_Conv_ToFixed +989: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 +990:GrTriangulator::Line::intersect\28GrTriangulator::Line\20const&\2c\20SkPoint*\29\20const +991:GrSimpleMeshDrawOpHelper::isCompatible\28GrSimpleMeshDrawOpHelper\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +992:GrQuad::MakeFromSkQuad\28SkPoint\20const*\2c\20SkMatrix\20const&\29 +993:GrOpsRenderPass::bindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +994:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkISize\20const&\29 +995:GrGLSLShaderBuilder::appendTextureLookup\28GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +996:GrColorInfo::GrColorInfo\28SkColorInfo\20const&\29 +997:AlmostDequalUlps\28double\2c\20double\29 +998:utrace_exit_74 +999:utrace_entry_74 +1000:ures_getNextResource_74 +1001:uprv_toupper_74 +1002:tt_face_get_name +1003:strrchr +1004:std::__2::vector>::size\5babi:v160004\5d\28\29\20const +1005:std::__2::to_string\28long\20long\29 +1006:std::__2::__libcpp_locale_guard::~__libcpp_locale_guard\5babi:v160004\5d\28\29 +1007:std::__2::__libcpp_locale_guard::__libcpp_locale_guard\5babi:v160004\5d\28__locale_struct*&\29 +1008:skif::FilterResult::~FilterResult\28\29 +1009:skia_png_app_error +1010:skgpu::ganesh::SurfaceFillContext::getOpsTask\28\29 +1011:isdigit +1012:icu_74::UnicodeString::doIndexOf\28char16_t\2c\20int\2c\20int\29\20const +1013:hb_sanitize_context_t::return_t\20OT::Paint::dispatch\28hb_sanitize_context_t*\29\20const +1014:hb_ot_layout_lookup_would_substitute +1015:hb_buffer_t::unsafe_to_break\28unsigned\20int\2c\20unsigned\20int\29 +1016:ft_module_get_service +1017:cf2_hintmap_map +1018: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 +1019:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28\29\20const +1020:__sindf +1021:__shlim +1022:__cosdf +1023:\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 +1024:SkTiff::ImageFileDirectory::getEntryValuesGeneric\28unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20int\2c\20void*\29\20const +1025:SkSurface::getCanvas\28\29 +1026:SkSL::cast_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +1027:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitType\28SkSL::Type\20const&\29 +1028:SkSL::VariableReference::VariableReference\28SkSL::Position\2c\20SkSL::Variable\20const*\2c\20SkSL::VariableRefKind\29 +1029:SkSL::Variable::initialValue\28\29\20const +1030:SkSL::SymbolTable::lookup\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +1031:SkSL::SymbolTable::addArrayDimension\28SkSL::Context\20const&\2c\20SkSL::Type\20const*\2c\20int\29 +1032:SkSL::StringStream::str\28\29\20const +1033: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 +1034:SkSL::RP::Generator::makeLValue\28SkSL::Expression\20const&\2c\20bool\29 +1035:SkSL::RP::DynamicIndexLValue::dynamicSlotRange\28\29 +1036:SkSL::GLSLCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +1037:SkSL::Expression::description\28\29\20const +1038:SkSL::Analysis::UpdateVariableRefKind\28SkSL::Expression*\2c\20SkSL::VariableRefKind\2c\20SkSL::ErrorReporter*\29 +1039:SkRegion::setEmpty\28\29 +1040:SkRasterPipeline::appendLoadDst\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +1041:SkRRect::setRectRadii\28SkRect\20const&\2c\20SkPoint\20const*\29 +1042:SkPointPriv::DistanceToLineSegmentBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +1043:SkPath::arcTo\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +1044:SkPath::addPath\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPath::AddPathMode\29 +1045:SkPaint::setImageFilter\28sk_sp\29 +1046:SkOpSpanBase::contains\28SkOpSegment\20const*\29\20const +1047:SkMipmap::ComputeLevelCount\28int\2c\20int\29 +1048:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint\20const*\2c\20int\29\20const +1049:SkMatrix::isSimilarity\28float\29\20const +1050:SkKnownRuntimeEffects::GetKnownRuntimeEffect\28SkKnownRuntimeEffects::StableKey\29 +1051:SkImageFilter::countInputs\28\29\20const +1052:SkIDChangeListener::List::changed\28\29 +1053:SkDynamicMemoryWStream::detachAsData\28\29 +1054:SkColorSpace::Equals\28SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +1055:SkColorFilter::filterColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\2c\20SkColorSpace*\29\20const +1056:SkCanvas::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +1057:SkAutoPixmapStorage::SkAutoPixmapStorage\28\29 +1058:SkAAClipBlitterWrapper::init\28SkRasterClip\20const&\2c\20SkBlitter*\29 +1059:SkAAClipBlitterWrapper::SkAAClipBlitterWrapper\28\29 +1060:RunBasedAdditiveBlitter::flush\28\29 +1061:GrSurface::onRelease\28\29 +1062:GrStyledShape::unstyledKeySize\28\29\20const +1063:GrShape::convex\28bool\29\20const +1064:GrRecordingContext::threadSafeCache\28\29 +1065:GrProxyProvider::caps\28\29\20const +1066:GrOp::GrOp\28unsigned\20int\29 +1067:GrMakeUncachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +1068:GrGLSLShaderBuilder::getMangledFunctionName\28char\20const*\29 +1069:GrGLGpu::bindBuffer\28GrGpuBufferType\2c\20GrBuffer\20const*\29 +1070:GrGLAttribArrayState::set\28GrGLGpu*\2c\20int\2c\20GrBuffer\20const*\2c\20GrVertexAttribType\2c\20SkSLType\2c\20int\2c\20unsigned\20long\2c\20int\29 +1071:GrAAConvexTessellator::Ring::computeNormals\28GrAAConvexTessellator\20const&\29 +1072:GrAAConvexTessellator::Ring::computeBisectors\28GrAAConvexTessellator\20const&\29 +1073:FT_Activate_Size +1074:Cr_z_adler32 +1075:vsnprintf +1076:void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +1077:void\20extend_pts<\28SkPaint::Cap\291>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +1078:ucptrie_getRange_74 +1079:u_strchr_74 +1080:top12 +1081:toSkImageInfo\28SimpleImageInfo\20const&\29 +1082:std::__2::pair::type\2c\20std::__2::__unwrap_ref_decay::type>\20std::__2::make_pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +1083:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +1084: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 +1085: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 +1086:std::__2::__num_put_base::__identify_padding\28char*\2c\20char*\2c\20std::__2::ios_base\20const&\29 +1087:std::__2::__num_get_base::__get_base\28std::__2::ios_base&\29 +1088:std::__2::__libcpp_asprintf_l\28char**\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +1089:skia_private::THashTable::Traits>::removeSlot\28int\29 +1090:skia_png_zstream_error +1091:skia::textlayout::TextLine::iterateThroughVisualRuns\28bool\2c\20std::__2::function\2c\20float*\29>\20const&\29\20const +1092:skia::textlayout::ParagraphImpl::cluster\28unsigned\20long\29 +1093:skia::textlayout::Cluster::runOrNull\28\29\20const +1094:skgpu::ganesh::SurfaceFillContext::replaceOpsTask\28\29 +1095:skcms_TransferFunction_getType +1096:skcms_GetTagBySignature +1097:res_getStringNoTrace_74 +1098:read_curve\28unsigned\20char\20const*\2c\20unsigned\20int\2c\20skcms_Curve*\2c\20unsigned\20int*\29 +1099: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 +1100: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 +1101:icu_74::UnicodeString::unBogus\28\29 +1102:icu_74::UnicodeSetStringSpan::~UnicodeSetStringSpan\28\29 +1103:icu_74::SimpleFilteredSentenceBreakIterator::operator==\28icu_74::BreakIterator\20const&\29\20const +1104:icu_74::Locale::init\28char\20const*\2c\20signed\20char\29 +1105:hb_serialize_context_t::pop_pack\28bool\29 +1106:hb_lazy_loader_t\2c\20hb_face_t\2c\206u\2c\20hb_blob_t>::get\28\29\20const +1107:getenv +1108:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::__wrap_iter\20const&\2c\20std::__2::__wrap_iter\20const&\29 +1109:afm_parser_read_vals +1110:__extenddftf2 +1111:\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29 +1112:\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 +1113:\28anonymous\20namespace\29::colrv1_transform\28FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\2c\20SkCanvas*\2c\20SkMatrix*\29 +1114:WebPRescalerImport +1115:SkTDStorage::removeShuffle\28int\29 +1116:SkString::SkString\28char\20const*\2c\20unsigned\20long\29 +1117:SkScan::HairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +1118:SkSL::ProgramUsage::get\28SkSL::Variable\20const&\29\20const +1119: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 +1120:SkSL::InlineCandidateAnalyzer::visitExpression\28std::__2::unique_ptr>*\29 +1121:SkSL::GLSLCodeGenerator::getTypePrecision\28SkSL::Type\20const&\29 +1122:SkReadBuffer::readByteArray\28void*\2c\20unsigned\20long\29 +1123:SkRasterPipeline::run\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +1124:SkRBuffer::read\28void*\2c\20unsigned\20long\29 +1125:SkPictureData::optionalPaint\28SkReadBuffer*\29\20const +1126:SkPathWriter::isClosed\28\29\20const +1127:SkPath::isRect\28SkRect*\2c\20bool*\2c\20SkPathDirection*\29\20const +1128:SkPath::getGenerationID\28\29\20const +1129:SkPaint::setStrokeWidth\28float\29 +1130:SkOpSegment::nextChase\28SkOpSpanBase**\2c\20int*\2c\20SkOpSpan**\2c\20SkOpSpanBase**\29\20const +1131:SkOpSegment::addCurveTo\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkPathWriter*\29\20const +1132:SkMemoryStream::Make\28sk_sp\29 +1133:SkMatrix::preScale\28float\2c\20float\29 +1134:SkMatrix::postScale\28float\2c\20float\29 +1135:SkMask::computeImageSize\28\29\20const +1136:SkIntersections::removeOne\28int\29 +1137:SkImageInfo::Make\28int\2c\20int\2c\20SkColorType\2c\20SkAlphaType\29 +1138:SkDevice::makeSpecial\28SkBitmap\20const&\29 +1139:SkDLine::ptAtT\28double\29\20const +1140:SkBulkGlyphMetrics::~SkBulkGlyphMetrics\28\29 +1141:SkBlockMemoryStream::getLength\28\29\20const +1142:SkBitmap::peekPixels\28SkPixmap*\29\20const +1143:SkAAClip::setEmpty\28\29 +1144:PS_Conv_Strtol +1145:OT::Layout::GSUB_impl::SubstLookup*\20hb_serialize_context_t::push\28\29 +1146:GrTriangulator::makeConnectingEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\2c\20int\29 +1147:GrTextureProxy::~GrTextureProxy\28\29 +1148: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 +1149:GrResourceAllocator::addInterval\28GrSurfaceProxy*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20GrResourceAllocator::ActualUse\2c\20GrResourceAllocator::AllowRecycling\29 +1150:GrRecordingContextPriv::makeSFCWithFallback\28GrImageInfo\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1151:GrGpuBuffer::updateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +1152:GrGLTextureParameters::NonsamplerState::NonsamplerState\28\29 +1153:GrGLSLShaderBuilder::~GrGLSLShaderBuilder\28\29 +1154:GrGLSLProgramBuilder::nameVariable\28char\2c\20char\20const*\2c\20bool\29 +1155:GrGLGpu::prepareToDraw\28GrPrimitiveType\29 +1156:GrGLFormatFromGLEnum\28unsigned\20int\29 +1157:GrBackendTexture::getBackendFormat\28\29\20const +1158:GrBackendFormats::MakeGL\28unsigned\20int\2c\20unsigned\20int\29 +1159:GrBackendFormatToCompressionType\28GrBackendFormat\20const&\29 +1160:FilterLoop24_C +1161:FT_Stream_Skip +1162:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +1163:AAT::Lookup::sanitize\28hb_sanitize_context_t*\29\20const +1164:utext_close_74 +1165:ures_open_74 +1166:ures_getStringByKey_74 +1167:ures_getKey_74 +1168:ulocimp_getLanguage_74\28char\20const*\2c\20char\20const**\2c\20UErrorCode&\29 +1169:uhash_puti_74 +1170:u_terminateChars_74 +1171: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 +1172: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 +1173: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 +1174:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +1175:std::__2::basic_string\2c\20std::__2::allocator>::__get_long_cap\5babi:v160004\5d\28\29\20const +1176:skif::LayerSpace::ceil\28\29\20const +1177:skia_private::TArray::push_back\28float\20const&\29 +1178:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +1179:skia_png_write_finish_row +1180:skia::textlayout::ParagraphImpl::ensureUTF16Mapping\28\29 +1181:scalbn +1182:non-virtual\20thunk\20to\20GrOpFlushState::allocator\28\29 +1183:icu_74::UnicodeSet::applyPattern\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29 +1184:icu_74::Normalizer2Impl::getFCD16FromNormData\28int\29\20const +1185:icu_74::Locale::Locale\28\29 +1186:icu_74::BytesTrie::readValue\28unsigned\20char\20const*\2c\20int\29 +1187:hb_lazy_loader_t\2c\20hb_face_t\2c\2022u\2c\20hb_blob_t>::get\28\29\20const +1188:hb_lazy_loader_t\2c\20hb_face_t\2c\2024u\2c\20OT::GDEF_accelerator_t>::get\28\29\20const +1189:hb_buffer_get_glyph_infos +1190:hb_buffer_destroy +1191:embind_init_Paragraph\28\29::$_5::__invoke\28skia::textlayout::ParagraphBuilderImpl&\29 +1192:cff2_path_param_t::line_to\28CFF::point_t\20const&\29 +1193:cff1_path_param_t::line_to\28CFF::point_t\20const&\29 +1194:cf2_stack_getReal +1195:byn$mgfn-shared$GrGLProgramDataManager::set1iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +1196:antifilldot8\28int\2c\20int\2c\20int\2c\20int\2c\20SkBlitter*\2c\20bool\29 +1197:afm_stream_skip_spaces +1198:WebPRescalerInit +1199:WebPRescalerExportRow +1200:SkWStream::writeDecAsText\28int\29 +1201:SkTextBlobBuilder::allocInternal\28SkFont\20const&\2c\20SkTextBlob::GlyphPositioning\2c\20int\2c\20int\2c\20SkPoint\2c\20SkRect\20const*\29 +1202:SkTDStorage::append\28void\20const*\2c\20int\29 +1203:SkString::Rec::Make\28char\20const*\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +1204:SkStrike::digestFor\28skglyph::ActionType\2c\20SkPackedGlyphID\29 +1205:SkShaders::Color\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\29 +1206:SkShader::makeWithLocalMatrix\28SkMatrix\20const&\29\20const +1207:SkSafeMath::Add\28unsigned\20long\2c\20unsigned\20long\29 +1208:SkSL::Parser::assignmentExpression\28\29 +1209:SkSL::ConstructorSplat::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1210:SkSL::ConstructorScalarCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1211:SkResourceCache::Find\28SkResourceCache::Key\20const&\2c\20bool\20\28*\29\28SkResourceCache::Rec\20const&\2c\20void*\29\2c\20void*\29 +1212:SkRegion::SkRegion\28SkIRect\20const&\29 +1213:SkRect::toQuad\28SkPoint*\29\20const +1214:SkRasterPipeline::appendTransferFunction\28skcms_TransferFunction\20const&\29 +1215:SkRasterPipeline::appendStore\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +1216:SkRasterPipeline::appendConstantColor\28SkArenaAlloc*\2c\20float\20const*\29 +1217:SkRasterClip::SkRasterClip\28\29 +1218:SkRRect::checkCornerContainment\28float\2c\20float\29\20const +1219:SkPictureData::getImage\28SkReadBuffer*\29\20const +1220:SkPathMeasure::getLength\28\29 +1221:SkPathBuilder::~SkPathBuilder\28\29 +1222:SkPathBuilder::detach\28\29 +1223:SkPathBuilder::SkPathBuilder\28\29 +1224:SkPath::addPoly\28SkPoint\20const*\2c\20int\2c\20bool\29 +1225:SkPaint::refPathEffect\28\29\20const +1226:SkMipmap::getLevel\28int\2c\20SkMipmap::Level*\29\20const +1227:SkJSONWriter::endArray\28\29 +1228:SkJSONWriter::appendCString\28char\20const*\2c\20char\20const*\29 +1229:SkIntersections::setCoincident\28int\29 +1230:SkImageInfo::computeOffset\28int\2c\20int\2c\20unsigned\20long\29\20const +1231:SkImageFilter_Base::flatten\28SkWriteBuffer&\29\20const +1232:SkDrawBase::SkDrawBase\28\29 +1233:SkDLine::NearPointV\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1234:SkDLine::NearPointH\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1235:SkDLine::ExactPointV\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1236:SkDLine::ExactPointH\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1237:SkColorSpaceXformSteps::apply\28SkRasterPipeline*\29\20const +1238:SkColorFilter::asAColorMode\28unsigned\20int*\2c\20SkBlendMode*\29\20const +1239:SkCodec::SkCodec\28SkEncodedInfo&&\2c\20skcms_PixelFormat\2c\20std::__2::unique_ptr>\2c\20SkEncodedOrigin\29 +1240:SkCanvas::drawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +1241:SkCanvas::drawColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +1242:SkCanvas::aboutToDraw\28SkPaint\20const&\2c\20SkRect\20const*\2c\20SkEnumBitMask\29 +1243:SkBulkGlyphMetrics::SkBulkGlyphMetrics\28SkStrikeSpec\20const&\29 +1244:SkBlockAllocator::releaseBlock\28SkBlockAllocator::Block*\29 +1245:SkBitmap::asImage\28\29\20const +1246:SkAAClipBlitterWrapper::SkAAClipBlitterWrapper\28SkRasterClip\20const&\2c\20SkBlitter*\29 +1247:OT::MVAR::get_var\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\29\20const +1248:GrXferProcessor::GrXferProcessor\28GrProcessor::ClassID\2c\20bool\2c\20GrProcessorAnalysisCoverage\29 +1249:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20GrCaps\20const&\2c\20float\20const*\29 +1250:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\29 +1251:GrSimpleMeshDrawOpHelper::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20bool*\29 +1252:GrResourceProvider::findResourceByUniqueKey\28skgpu::UniqueKey\20const&\29 +1253:GrRecordingContext::OwnedArenas::get\28\29 +1254: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 +1255:GrProxyProvider::assignUniqueKeyToProxy\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\29 +1256:GrProcessorSet::finalize\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrCaps\20const&\2c\20GrClampType\2c\20SkRGBA4f<\28SkAlphaType\292>*\29 +1257:GrOpFlushState::allocator\28\29 +1258:GrOp::cutChain\28\29 +1259:GrMeshDrawTarget::makeVertexWriter\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +1260:GrGpuResource::GrGpuResource\28GrGpu*\2c\20std::__2::basic_string_view>\29 +1261:GrGeometryProcessor::TextureSampler::reset\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +1262:GrGeometryProcessor::AttributeSet::end\28\29\20const +1263:GrGeometryProcessor::AttributeSet::Iter::operator++\28\29 +1264:GrGeometryProcessor::AttributeSet::Iter::operator*\28\29\20const +1265:GrGLTextureParameters::set\28GrGLTextureParameters::SamplerOverriddenState\20const*\2c\20GrGLTextureParameters::NonsamplerState\20const&\2c\20unsigned\20long\20long\29 +1266:GrClip::GetPixelIBounds\28SkRect\20const&\2c\20GrAA\2c\20GrClip::BoundsType\29 +1267:GrBackendTexture::~GrBackendTexture\28\29 +1268:FT_Outline_Get_CBox +1269:FT_Get_Sfnt_Table +1270:utf8_prevCharSafeBody_74 +1271:ures_getString_74 +1272:ulocimp_getScript_74\28char\20const*\2c\20char\20const**\2c\20UErrorCode&\29 +1273:uhash_open_74 +1274:u_UCharsToChars_74 +1275:std::__2::vector>::__destroy_vector::__destroy_vector\28std::__2::vector>&\29 +1276:std::__2::moneypunct::negative_sign\5babi:v160004\5d\28\29\20const +1277:std::__2::moneypunct::neg_format\5babi:v160004\5d\28\29\20const +1278:std::__2::moneypunct::do_pos_format\28\29\20const +1279:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +1280:std::__2::char_traits::copy\28wchar_t*\2c\20wchar_t\20const*\2c\20unsigned\20long\29 +1281:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1282:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1283:std::__2::basic_string\2c\20std::__2::allocator>::__set_size\5babi:v160004\5d\28unsigned\20long\29 +1284:std::__2::basic_string\2c\20std::__2::allocator>::__assign_external\28char\20const*\2c\20unsigned\20long\29 +1285:std::__2::__itoa::__append2\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1286:snprintf +1287:sktext::gpu::GlyphVector::glyphs\28\29\20const +1288:sktext::SkStrikePromise::SkStrikePromise\28sktext::SkStrikePromise&&\29 +1289:skif::FilterResult::resolve\28skif::Context\20const&\2c\20skif::LayerSpace\2c\20bool\29\20const +1290:skif::FilterResult::analyzeBounds\28SkMatrix\20const&\2c\20SkIRect\20const&\2c\20skif::FilterResult::BoundsScope\29\20const +1291:skia_png_read_finish_row +1292:skia_png_handle_unknown +1293:skia_png_gamma_correct +1294:skia_png_colorspace_sync +1295:skia_png_app_warning +1296:skia::textlayout::TextStyle::operator=\28skia::textlayout::TextStyle\20const&\29 +1297:skia::textlayout::TextLine::offset\28\29\20const +1298:skia::textlayout::Run::placeholderStyle\28\29\20const +1299:skia::textlayout::Cluster::Cluster\28skia::textlayout::ParagraphImpl*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkSpan\2c\20float\2c\20float\29 +1300:skgpu::ganesh::SurfaceFillContext::fillRectWithFP\28SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +1301: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 +1302:skgpu::ganesh::SurfaceContext::PixelTransferResult::~PixelTransferResult\28\29 +1303:skgpu::ganesh::ClipStack::SaveRecord::state\28\29\20const +1304:sk_doubles_nearly_equal_ulps\28double\2c\20double\2c\20unsigned\20char\29 +1305:ps_parser_to_token +1306:isspace +1307:icu_74::UnicodeString::moveIndex32\28int\2c\20int\29\20const +1308:icu_74::UnicodeString::cloneArrayIfNeeded\28int\2c\20int\2c\20signed\20char\2c\20int**\2c\20signed\20char\29 +1309:icu_74::UnicodeSet::span\28char16_t\20const*\2c\20int\2c\20USetSpanCondition\29\20const +1310:icu_74::UVector::indexOf\28void*\2c\20int\29\20const +1311:icu_74::UVector::addElement\28void*\2c\20UErrorCode&\29 +1312:icu_74::UVector32::UVector32\28UErrorCode&\29 +1313:icu_74::RuleCharacterIterator::next\28int\2c\20signed\20char&\2c\20UErrorCode&\29 +1314:icu_74::ReorderingBuffer::appendBMP\28char16_t\2c\20unsigned\20char\2c\20UErrorCode&\29 +1315:icu_74::LSR::deleteOwned\28\29 +1316:icu_74::ICUServiceKey::prefix\28icu_74::UnicodeString&\29\20const +1317:icu_74::Edits::addReplace\28int\2c\20int\29 +1318:icu_74::CharString::appendInvariantChars\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29 +1319:icu_74::CharString::appendInvariantChars\28char16_t\20const*\2c\20int\2c\20UErrorCode&\29 +1320:icu_74::BreakIterator::buildInstance\28icu_74::Locale\20const&\2c\20char\20const*\2c\20UErrorCode&\29 +1321:hb_face_t::load_upem\28\29\20const +1322:hb_buffer_t::merge_out_clusters\28unsigned\20int\2c\20unsigned\20int\29 +1323:hb_buffer_t::enlarge\28unsigned\20int\29 +1324:hb_buffer_reverse +1325: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 +1326:cff_index_init +1327:cf2_glyphpath_curveTo +1328:atan2f +1329:WebPCopyPlane +1330:SkTMaskGamma_build_correcting_lut\28unsigned\20char*\2c\20unsigned\20int\2c\20float\2c\20SkColorSpaceLuminance\20const&\2c\20float\29 +1331:SkSurface_Raster::type\28\29\20const +1332:SkString::swap\28SkString&\29 +1333:SkString::reset\28\29 +1334:SkSampler::Fill\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::ZeroInitialized\29 +1335:SkSL::Type::MakeTextureType\28char\20const*\2c\20SpvDim_\2c\20bool\2c\20bool\2c\20bool\2c\20SkSL::Type::TextureAccess\29 +1336:SkSL::Type::MakeSpecialType\28char\20const*\2c\20char\20const*\2c\20SkSL::Type::TypeKind\29 +1337:SkSL::RP::Builder::push_slots_or_immutable\28SkSL::RP::SlotRange\2c\20SkSL::RP::BuilderOp\29 +1338:SkSL::RP::Builder::push_clone_from_stack\28SkSL::RP::SlotRange\2c\20int\2c\20int\29 +1339:SkSL::Program::~Program\28\29 +1340:SkSL::PipelineStage::PipelineStageCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +1341:SkSL::Operator::isAssignment\28\29\20const +1342:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mul\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +1343:SkSL::InlineCandidateAnalyzer::visitStatement\28std::__2::unique_ptr>*\2c\20bool\29 +1344:SkSL::GLSLCodeGenerator::writeModifiers\28SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20bool\29 +1345:SkSL::ExpressionStatement::Make\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +1346:SkSL::ConstructorCompound::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +1347:SkSL::Analysis::GetReturnComplexity\28SkSL::FunctionDefinition\20const&\29 +1348:SkSL::AliasType::resolve\28\29\20const +1349:SkResourceCache::Add\28SkResourceCache::Rec*\2c\20void*\29 +1350:SkRegion::writeToMemory\28void*\29\20const +1351:SkReadBuffer::readMatrix\28SkMatrix*\29 +1352:SkReadBuffer::readBool\28\29 +1353:SkRasterClip::setRect\28SkIRect\20const&\29 +1354:SkRasterClip::SkRasterClip\28SkRasterClip\20const&\29 +1355:SkPathMeasure::~SkPathMeasure\28\29 +1356:SkPathMeasure::SkPathMeasure\28SkPath\20const&\2c\20bool\2c\20float\29 +1357:SkPath::swap\28SkPath&\29 +1358:SkParse::FindScalars\28char\20const*\2c\20float*\2c\20int\29 +1359:SkPaint::operator=\28SkPaint\20const&\29 +1360:SkOpSpan::computeWindSum\28\29 +1361:SkOpSegment::existing\28double\2c\20SkOpSegment\20const*\29\20const +1362:SkOpPtT::find\28SkOpSegment\20const*\29\20const +1363:SkOpCoincidence::addEndMovedSpans\28SkOpSpan\20const*\2c\20SkOpSpanBase\20const*\29 +1364:SkNoDrawCanvas::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +1365:SkMakeImageFromRasterBitmap\28SkBitmap\20const&\2c\20SkCopyPixelsMode\29 +1366:SkImage_Ganesh::SkImage_Ganesh\28sk_sp\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20SkColorInfo\29 +1367:SkImageInfo::makeColorSpace\28sk_sp\29\20const +1368:SkImage::refColorSpace\28\29\20const +1369:SkGlyph::imageSize\28\29\20const +1370:SkGetICULib\28\29 +1371:SkFont::textToGlyphs\28void\20const*\2c\20unsigned\20long\2c\20SkTextEncoding\2c\20unsigned\20short*\2c\20int\29\20const +1372:SkFont::setSubpixel\28bool\29 +1373:SkDraw::SkDraw\28\29 +1374:SkDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +1375:SkColorTypeBytesPerPixel\28SkColorType\29 +1376:SkColorFilter::makeComposed\28sk_sp\29\20const +1377:SkChopQuadAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +1378:SkCanvas::drawImageRect\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +1379:SkBmpCodec::getDstRow\28int\2c\20int\29\20const +1380:SkAutoDescriptor::SkAutoDescriptor\28\29 +1381:OT::DeltaSetIndexMap::sanitize\28hb_sanitize_context_t*\29\20const +1382:OT::ClassDef::sanitize\28hb_sanitize_context_t*\29\20const +1383:GrTriangulator::Comparator::sweep_lt\28SkPoint\20const&\2c\20SkPoint\20const&\29\20const +1384:GrTextureProxy::textureType\28\29\20const +1385:GrSurfaceProxy::createSurfaceImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\29\20const +1386:GrStyledShape::writeUnstyledKey\28unsigned\20int*\29\20const +1387:GrStyledShape::simplify\28\29 +1388:GrSkSLFP::setInput\28std::__2::unique_ptr>\29 +1389:GrSimpleMeshDrawOpHelperWithStencil::GrSimpleMeshDrawOpHelperWithStencil\28GrProcessorSet*\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +1390:GrShape::operator=\28GrShape\20const&\29 +1391:GrResourceProvider::createPatternedIndexBuffer\28unsigned\20short\20const*\2c\20int\2c\20int\2c\20int\2c\20skgpu::UniqueKey\20const*\29 +1392:GrRenderTarget::~GrRenderTarget\28\29 +1393:GrRecordingContextPriv::makeSC\28GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +1394:GrOpFlushState::detachAppliedClip\28\29 +1395:GrGpuBuffer::map\28\29 +1396:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\29 +1397:GrGLSLShaderBuilder::declAppend\28GrShaderVar\20const&\29 +1398:GrGLGpu::didDrawTo\28GrRenderTarget*\29 +1399:GrFragmentProcessors::Make\28GrRecordingContext*\2c\20SkColorFilter\20const*\2c\20std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1400:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +1401:GrCaps::validateSurfaceParams\28SkISize\20const&\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20GrTextureType\29\20const +1402:GrBufferAllocPool::putBack\28unsigned\20long\29 +1403: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 +1404:GrBackendTexture::GrBackendTexture\28\29 +1405:GrAAConvexTessellator::createInsetRing\28GrAAConvexTessellator::Ring\20const&\2c\20GrAAConvexTessellator::Ring*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +1406:FT_Stream_GetByte +1407:FT_Set_Transform +1408:FT_Add_Module +1409:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +1410:AlmostLessOrEqualUlps\28float\2c\20float\29 +1411:ActiveEdge::intersect\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29\20const +1412:wrapper_cmp +1413:void\20std::__2::reverse\5babi:v160004\5d\28char*\2c\20char*\29 +1414:void\20std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::__do_rehash\28unsigned\20long\29 +1415:utrace_data_74 +1416:utf8_nextCharSafeBody_74 +1417:utext_setup_74 +1418:uhash_openSize_74 +1419:uhash_nextElement_74 +1420:ubidi_getParaLevelAtIndex_74 +1421:u_charType_74 +1422:tanf +1423:std::__2::vector>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29 +1424:std::__2::vector>::capacity\5babi:v160004\5d\28\29\20const +1425: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 +1426: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 +1427:std::__2::char_traits::to_int_type\28char\29 +1428:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1429:std::__2::basic_ios>::~basic_ios\28\29 +1430:std::__2::basic_ios>::setstate\5babi:v160004\5d\28unsigned\20int\29 +1431:std::__2::__compressed_pair_elem::__compressed_pair_elem\5babi:v160004\5d\28void\20\28*&&\29\28void*\29\29 +1432:sktext::gpu::GlyphVector::~GlyphVector\28\29 +1433:sktext::StrikeMutationMonitor::~StrikeMutationMonitor\28\29 +1434:sktext::StrikeMutationMonitor::StrikeMutationMonitor\28sktext::StrikeForGPU*\29 +1435:skif::RoundOut\28SkRect\29 +1436:skif::LayerSpace::contains\28skif::LayerSpace\20const&\29\20const +1437:skif::FilterResult::AutoSurface::snap\28\29 +1438:skif::FilterResult::AutoSurface::AutoSurface\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20skif::FilterResult::PixelBoundary\2c\20bool\2c\20SkSurfaceProps\20const*\29 +1439:skif::Backend::~Backend\28\29.1 +1440:skia_private::TArray::push_back\28skif::FilterResult::Builder::SampledFilterResult&&\29 +1441:skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>::~STArray\28\29 +1442:skia_png_chunk_unknown_handling +1443:skia::textlayout::TextStyle::TextStyle\28\29 +1444: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 +1445:skgpu::ganesh::SurfaceFillContext::internalClear\28SkIRect\20const*\2c\20std::__2::array\2c\20bool\29 +1446:skgpu::ganesh::SurfaceDrawContext::fillRectToRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +1447: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 +1448:skgpu::GetApproxSize\28SkISize\29 +1449:skcms_Matrix3x3_invert +1450:res_getTableItemByKey_74 +1451:icu_74::UnicodeString::operator=\28icu_74::UnicodeString&&\29 +1452:icu_74::UnicodeString::doEquals\28icu_74::UnicodeString\20const&\2c\20int\29\20const +1453:icu_74::UnicodeSet::ensureCapacity\28int\29 +1454:icu_74::UnicodeSet::clear\28\29 +1455:icu_74::UVector::UVector\28void\20\28*\29\28void*\29\2c\20signed\20char\20\28*\29\28UElement\2c\20UElement\29\2c\20UErrorCode&\29 +1456:icu_74::UVector32::setElementAt\28int\2c\20int\29 +1457:icu_74::RuleCharacterIterator::setPos\28icu_74::RuleCharacterIterator::Pos\20const&\29 +1458:icu_74::ResourceTable::findValue\28char\20const*\2c\20icu_74::ResourceValue&\29\20const +1459:icu_74::Locale::operator=\28icu_74::Locale\20const&\29 +1460:icu_74::Edits::addUnchanged\28int\29 +1461:icu_74::CharString::extract\28char*\2c\20int\2c\20UErrorCode&\29\20const +1462:hb_lazy_loader_t\2c\20hb_face_t\2c\2011u\2c\20hb_blob_t>::get\28\29\20const +1463:hb_lazy_loader_t\2c\20hb_face_t\2c\202u\2c\20hb_blob_t>::get\28\29\20const +1464:hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +1465:hb_font_t::scale_glyph_extents\28hb_glyph_extents_t*\29 +1466:hb_font_t::get_glyph_h_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +1467:hb_buffer_append +1468: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 +1469:emscripten::internal::Invoker::invoke\28unsigned\20long\20\28*\29\28\29\29 +1470: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 +1471:cos +1472:cf2_glyphpath_lineTo +1473:byn$mgfn-shared$SkTDStorage::calculateSizeOrDie\28int\29::$_0::operator\28\29\28\29\20const +1474:alloc_small +1475:af_latin_hints_compute_segments +1476:_hb_glyph_info_set_unicode_props\28hb_glyph_info_t*\2c\20hb_buffer_t*\29 +1477:__lshrti3 +1478:__letf2 +1479:__cxx_global_array_dtor.3 +1480:\28anonymous\20namespace\29::SkBlurImageFilter::~SkBlurImageFilter\28\29 +1481:SkUTF::ToUTF16\28int\2c\20unsigned\20short*\29 +1482:SkTextBlobBuilder::~SkTextBlobBuilder\28\29 +1483:SkTextBlobBuilder::make\28\29 +1484:SkSurfaces::RenderTarget\28GrRecordingContext*\2c\20skgpu::Budgeted\2c\20SkImageInfo\20const&\2c\20int\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const*\2c\20bool\2c\20bool\29 +1485:SkSurface::makeImageSnapshot\28\29 +1486:SkString::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +1487:SkString::insertUnichar\28unsigned\20long\2c\20int\29 +1488:SkStrikeSpec::findOrCreateScopedStrike\28sktext::StrikeForGPUCacheInterface*\29\20const +1489:SkStrikeCache::GlobalStrikeCache\28\29 +1490:SkShader::isAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +1491:SkSL::is_constant_value\28SkSL::Expression\20const&\2c\20double\29 +1492: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 +1493: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 +1494:SkSL::\28anonymous\20namespace\29::ReturnsOnAllPathsVisitor::visitStatement\28SkSL::Statement\20const&\29 +1495:SkSL::Type::MakeScalarType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type::NumberKind\2c\20signed\20char\2c\20signed\20char\29 +1496:SkSL::RP::Generator::pushBinaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +1497:SkSL::RP::Builder::push_clone\28int\2c\20int\29 +1498:SkSL::ProgramUsage::remove\28SkSL::Statement\20const*\29 +1499:SkSL::Parser::statement\28bool\29 +1500: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 +1501:SkSL::ModifierFlags::description\28\29\20const +1502:SkSL::Layout::paddedDescription\28\29\20const +1503:SkSL::GetModuleData\28SkSL::ModuleName\2c\20char\20const*\29 +1504:SkSL::FieldAccess::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20int\2c\20SkSL::FieldAccessOwnerKind\29 +1505:SkSL::ConstructorCompoundCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1506:SkSL::Compiler::~Compiler\28\29 +1507:SkSL::Analysis::IsSameExpressionTree\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +1508:SkRuntimeEffect::findChild\28std::__2::basic_string_view>\29\20const +1509:SkRect\20skif::Mapping::map\28SkRect\20const&\2c\20SkMatrix\20const&\29 +1510:SkRectPriv::Subtract\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkIRect*\29 +1511:SkPictureRecorder::SkPictureRecorder\28\29 +1512:SkPictureData::~SkPictureData\28\29 +1513:SkPathMeasure::nextContour\28\29 +1514:SkPathMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29 +1515:SkPathMeasure::getPosTan\28float\2c\20SkPoint*\2c\20SkPoint*\29 +1516:SkPathBuilder::lineTo\28SkPoint\29 +1517:SkPath::getPoint\28int\29\20const +1518:SkPath::getLastPt\28SkPoint*\29\20const +1519:SkPaint::setBlender\28sk_sp\29 +1520:SkPaint::setAlphaf\28float\29 +1521:SkOpSegment::addT\28double\29 +1522:SkNoPixelsDevice::ClipState&\20skia_private::TArray::emplace_back\28SkIRect&&\2c\20bool&&\2c\20bool&&\29 +1523:SkNextID::ImageID\28\29 +1524:SkMessageBus::Inbox::Inbox\28unsigned\20int\29 +1525:SkJSONWriter::endObject\28\29 +1526:SkImage_Lazy::generator\28\29\20const +1527:SkImage_Base::~SkImage_Base\28\29 +1528:SkImage_Base::SkImage_Base\28SkImageInfo\20const&\2c\20unsigned\20int\29 +1529:SkImageInfo::Make\28SkISize\2c\20SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +1530:SkImage::isAlphaOnly\28\29\20const +1531:SkFont::getWidthsBounds\28unsigned\20short\20const*\2c\20int\2c\20float*\2c\20SkRect*\2c\20SkPaint\20const*\29\20const +1532:SkFont::getMetrics\28SkFontMetrics*\29\20const +1533:SkFont::SkFont\28sk_sp\2c\20float\29 +1534:SkFont::SkFont\28\29 +1535:SkDrawBase::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20SkRect\20const*\29\20const +1536:SkDevice::setGlobalCTM\28SkM44\20const&\29 +1537:SkDescriptor::operator==\28SkDescriptor\20const&\29\20const +1538:SkConvertPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +1539:SkConic::chopAt\28float\2c\20SkConic*\29\20const +1540:SkColorSpace::gammaIsLinear\28\29\20const +1541:SkColorSpace::MakeRGB\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +1542:SkCodec::fillIncompleteImage\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::ZeroInitialized\2c\20int\2c\20int\29 +1543:SkCanvas::saveLayer\28SkRect\20const*\2c\20SkPaint\20const*\29 +1544:SkCanvas::drawPaint\28SkPaint\20const&\29 +1545:SkCanvas::ImageSetEntry::~ImageSetEntry\28\29 +1546:SkBulkGlyphMetrics::glyphs\28SkSpan\29 +1547:SkBitmap::operator=\28SkBitmap&&\29 +1548:SkBitmap::getGenerationID\28\29\20const +1549:SkArenaAllocWithReset::reset\28\29 +1550:OT::Layout::GPOS_impl::AnchorFormat3::sanitize\28hb_sanitize_context_t*\29\20const +1551:OT::GDEF::get_glyph_props\28unsigned\20int\29\20const +1552:OT::CmapSubtable::get_glyph\28unsigned\20int\2c\20unsigned\20int*\29\20const +1553:Ins_UNKNOWN +1554:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\2c\20bool\29 +1555:GrSurfaceProxyView::mipmapped\28\29\20const +1556:GrSurfaceProxy::instantiateImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::UniqueKey\20const*\29 +1557:GrSimpleMeshDrawOpHelperWithStencil::isCompatible\28GrSimpleMeshDrawOpHelperWithStencil\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +1558:GrSimpleMeshDrawOpHelperWithStencil::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20bool*\29 +1559:GrShape::simplifyRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\2c\20unsigned\20int\29 +1560:GrQuad::projectedBounds\28\29\20const +1561:GrProcessorSet::MakeEmptySet\28\29 +1562:GrPorterDuffXPFactory::SimpleSrcOverXP\28\29 +1563:GrPixmap::Allocate\28GrImageInfo\20const&\29 +1564:GrPathTessellationShader::MakeSimpleTriangleShader\28SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +1565:GrMakeCachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20std::__2::basic_string_view>\2c\20skgpu::Mipmapped\29 +1566:GrImageInfo::operator=\28GrImageInfo&&\29 +1567:GrImageInfo::makeColorType\28GrColorType\29\20const +1568:GrGpuResource::setUniqueKey\28skgpu::UniqueKey\20const&\29 +1569:GrGpuResource::release\28\29 +1570:GrGpuResource::isPurgeable\28\29\20const +1571:GrGeometryProcessor::textureSampler\28int\29\20const +1572:GrGeometryProcessor::AttributeSet::begin\28\29\20const +1573:GrGLSLShaderBuilder::addFeature\28unsigned\20int\2c\20char\20const*\29 +1574:GrGLGpu::clearErrorsAndCheckForOOM\28\29 +1575:GrGLGpu::bindSurfaceFBOForPixelOps\28GrSurface*\2c\20int\2c\20unsigned\20int\2c\20GrGLGpu::TempFBOTarget\29 +1576: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 +1577:GrFragmentProcessor::MakeColor\28SkRGBA4f<\28SkAlphaType\292>\29 +1578:GrDirectContextPriv::flushSurfaces\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +1579:GrDefaultGeoProcFactory::Make\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +1580:GrConvertPixels\28GrPixmap\20const&\2c\20GrCPixmap\20const&\2c\20bool\29 +1581:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +1582:GrColorInfo::GrColorInfo\28\29 +1583: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 +1584:GrBackendFormat::operator=\28GrBackendFormat\20const&\29 +1585:FT_Stream_Read +1586:FT_GlyphLoader_Rewind +1587:FT_Done_Face +1588:Cr_z_inflate +1589:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +1590: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 +1591:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20unsigned\20int*&\2c\20unsigned\20int*&\29 +1592:void\20icu_74::\28anonymous\20namespace\29::MixedBlocks::extend\28unsigned\20short\20const*\2c\20int\2c\20int\2c\20int\29 +1593: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 +1594:void\20emscripten::internal::MemberAccess::setWire\28bool\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform&\2c\20bool\29 +1595:utext_nativeLength_74 +1596:ures_openDirect_74 +1597:ures_getStringWithAlias\28UResourceBundle\20const*\2c\20unsigned\20int\2c\20int\2c\20int*\2c\20UErrorCode*\29 +1598:ures_getStringByKeyWithFallback_74 +1599: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 +1600: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 +1601: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 +1602: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 +1603:ulocimp_getKeywordValue_74 +1604:ulocimp_getCountry_74\28char\20const*\2c\20char\20const**\2c\20UErrorCode&\29 +1605:ulocimp_forLanguageTag_74 +1606:uenum_close_74 +1607:udata_getMemory_74 +1608:ucptrie_openFromBinary_74 +1609:u_charsToUChars_74 +1610:toupper +1611:top12.2 +1612:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1613:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1614: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 +1615:std::__2::ctype::narrow\5babi:v160004\5d\28char\2c\20char\29\20const +1616:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28wchar_t\20const*\29 +1617:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1618:std::__2::basic_streambuf>::~basic_streambuf\28\29 +1619:std::__2::basic_streambuf>::setg\5babi:v160004\5d\28char*\2c\20char*\2c\20char*\29 +1620: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 +1621: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 +1622:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1623:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1624:src_p\28unsigned\20char\2c\20unsigned\20char\29 +1625:skif::FilterResult::subset\28skif::LayerSpace\20const&\2c\20skif::LayerSpace\20const&\2c\20bool\29\20const +1626:skif::FilterResult::operator=\28skif::FilterResult&&\29 +1627:skia_private::THashMap::operator\5b\5d\28SkSL::Variable\20const*\20const&\29 +1628:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +1629:skia_private::TArray::resize_back\28int\29 +1630:skia_png_get_valid +1631:skia_png_gamma_8bit_correct +1632:skia_png_free_data +1633:skia_png_chunk_warning +1634: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 +1635:skia::textlayout::Run::positionX\28unsigned\20long\29\20const +1636: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 +1637:skia::textlayout::ParagraphCacheKey::operator==\28skia::textlayout::ParagraphCacheKey\20const&\29\20const +1638:skia::textlayout::FontCollection::enableFontFallback\28\29 +1639: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 +1640:skgpu::ganesh::SmallPathAtlasMgr::reset\28\29 +1641:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::vertexSize\28\29\20const +1642:skgpu::ganesh::Device::readSurfaceView\28\29 +1643:skgpu::ganesh::ClipStack::clip\28skgpu::ganesh::ClipStack::RawElement&&\29 +1644:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::RawElement\20const&\29\20const +1645:skgpu::ganesh::ClipStack::RawElement::RawElement\28SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\2c\20SkClipOp\29 +1646:skgpu::TAsyncReadResult::Plane&\20skia_private::TArray::Plane\2c\20false>::emplace_back\2c\20unsigned\20long&>\28sk_sp&&\2c\20unsigned\20long&\29 +1647:skgpu::Swizzle::asString\28\29\20const +1648:skgpu::ScratchKey::GenerateResourceType\28\29 +1649:skgpu::GetBlendFormula\28bool\2c\20bool\2c\20SkBlendMode\29 +1650:select_curve_ops\28skcms_Curve\20const*\2c\20int\2c\20OpAndArg*\29 +1651:sbrk +1652:ps_tofixedarray +1653:processPropertySeq\28UBiDi*\2c\20LevState*\2c\20unsigned\20char\2c\20int\2c\20int\29 +1654:png_format_buffer +1655:png_check_keyword +1656:nextafterf +1657:jpeg_huff_decode +1658:init_entry\28char\20const*\2c\20char\20const*\2c\20UErrorCode*\29 +1659:icu_74::UnicodeString::countChar32\28int\2c\20int\29\20const +1660:icu_74::UnicodeString::UnicodeString\28char\20const*\2c\20int\2c\20icu_74::UnicodeString::EInvariant\29 +1661:icu_74::UnicodeSet::getRangeStart\28int\29\20const +1662:icu_74::UnicodeSet::getRangeEnd\28int\29\20const +1663:icu_74::UnicodeSet::getRangeCount\28\29\20const +1664:icu_74::UVector::UVector\28void\20\28*\29\28void*\29\2c\20signed\20char\20\28*\29\28UElement\2c\20UElement\29\2c\20int\2c\20UErrorCode&\29 +1665:icu_74::UVector32::addElement\28int\2c\20UErrorCode&\29 +1666:icu_74::UVector32::UVector32\28int\2c\20UErrorCode&\29 +1667:icu_74::UCharsTrie::next\28int\29 +1668:icu_74::UCharsTrie::branchNext\28char16_t\20const*\2c\20int\2c\20int\29 +1669:icu_74::StackUResourceBundle::StackUResourceBundle\28\29 +1670:icu_74::ReorderingBuffer::appendSupplementary\28int\2c\20unsigned\20char\2c\20UErrorCode&\29 +1671:icu_74::Norm2AllModes::createNFCInstance\28UErrorCode&\29 +1672:icu_74::LanguageBreakEngine::LanguageBreakEngine\28\29 +1673:icu_74::LSR::LSR\28char\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20int\2c\20UErrorCode&\29 +1674:icu_74::CharacterProperties::getInclusionsForProperty\28UProperty\2c\20UErrorCode&\29 +1675:icu_74::CharString::ensureCapacity\28int\2c\20int\2c\20UErrorCode&\29 +1676:hb_unicode_funcs_destroy +1677:hb_serialize_context_t::pop_discard\28\29 +1678:hb_buffer_set_flags +1679:hb_blob_create_sub_blob +1680:hb_array_t::hash\28\29\20const +1681: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 +1682: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 +1683:fmt_u +1684:flush_pending +1685:emscripten::internal::Invoker>::invoke\28sk_sp\20\28*\29\28\29\29 +1686:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\29\2c\20SkPath*\29 +1687:do_fixed +1688:destroy_face +1689:decltype\28fp\28\28SkRecords::NoOp*\29\28nullptr\29\29\29\20SkRecord::Record::mutate\28SkRecord::Destroyer&\29 +1690:char*\20const&\20std::__2::max\5babi:v160004\5d\28char*\20const&\2c\20char*\20const&\29 +1691:cf2_stack_pushInt +1692:cf2_interpT2CharString +1693:cf2_glyphpath_moveTo +1694:byn$mgfn-shared$skif::\28anonymous\20namespace\29::RasterBackend::~RasterBackend\28\29 +1695:byn$mgfn-shared$skif::Backend::~Backend\28\29.1 +1696:byn$mgfn-shared$SkUnicode_icu::isEmoji\28int\29 +1697:byn$mgfn-shared$SkSL::ConstructorArrayCast::clone\28SkSL::Position\29\20const +1698:byn$mgfn-shared$GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +1699:bool\20hb_hashmap_t::set_with_hash\28unsigned\20int\20const&\2c\20unsigned\20int\2c\20unsigned\20int\20const&\2c\20bool\29 +1700:bool\20emscripten::internal::MemberAccess::getWire\28bool\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform\20const&\29 +1701:_isVariantSubtag\28char\20const*\2c\20int\29 +1702:_hb_ot_metrics_get_position_common\28hb_font_t*\2c\20hb_ot_metrics_tag_t\2c\20int*\29 +1703:_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 +1704:__wasi_syscall_ret +1705:__tandf +1706:__syscall_ret +1707:__floatunsitf +1708:__cxa_allocate_exception +1709:\28anonymous\20namespace\29::PathGeoBuilder::createMeshAndPutBackReserve\28\29 +1710:\28anonymous\20namespace\29::MeshOp::fixedFunctionFlags\28\29\20const +1711:\28anonymous\20namespace\29::DrawAtlasOpImpl::fixedFunctionFlags\28\29\20const +1712:WebPDemuxGetI +1713:VP8LDoFillBitWindow +1714:VP8LClear +1715:TT_Get_MM_Var +1716:SkWStream::writeScalar\28float\29 +1717:SkUTF::UTF8ToUTF16\28unsigned\20short*\2c\20int\2c\20char\20const*\2c\20unsigned\20long\29 +1718:SkTypeface::MakeEmpty\28\29 +1719:SkTSect::BinarySearch\28SkTSect*\2c\20SkTSect*\2c\20SkIntersections*\29 +1720:SkTConic::operator\5b\5d\28int\29\20const +1721:SkTBlockList::reset\28\29 +1722:SkTBlockList::reset\28\29 +1723:SkString::insertU32\28unsigned\20long\2c\20unsigned\20int\29 +1724:SkSpecialImages::MakeDeferredFromGpu\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1725:SkShaders::MatrixRec::applyForFragmentProcessor\28SkMatrix\20const&\29\20const +1726:SkScan::FillRect\28SkRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +1727:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +1728:SkSL::optimize_comparison\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20bool\20\28*\29\28double\2c\20double\29\29 +1729:SkSL::Type::convertArraySize\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20long\20long\29\20const +1730:SkSL::String::appendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20...\29 +1731:SkSL::RP::Builder::dot_floats\28int\29 +1732:SkSL::ProgramUsage::get\28SkSL::FunctionDeclaration\20const&\29\20const +1733:SkSL::Parser::type\28SkSL::Modifiers*\29 +1734:SkSL::Parser::modifiers\28\29 +1735:SkSL::ConstructorDiagonalMatrix::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1736:SkSL::ConstructorArrayCast::~ConstructorArrayCast\28\29 +1737:SkSL::ConstantFolder::MakeConstantValueForVariable\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +1738:SkSL::Compiler::Compiler\28\29 +1739:SkSL::Analysis::IsTrivialExpression\28SkSL::Expression\20const&\29 +1740:SkRuntimeShaderBuilder::~SkRuntimeShaderBuilder\28\29 +1741:SkRuntimeShaderBuilder::makeShader\28SkMatrix\20const*\29\20const +1742:SkRuntimeShaderBuilder::SkRuntimeShaderBuilder\28sk_sp\29 +1743:SkRuntimeEffectPriv::CanDraw\28SkCapabilities\20const*\2c\20SkRuntimeEffect\20const*\29 +1744:SkRegion::setPath\28SkPath\20const&\2c\20SkRegion\20const&\29 +1745:SkRegion::operator=\28SkRegion\20const&\29 +1746:SkRegion::op\28SkRegion\20const&\2c\20SkRegion\20const&\2c\20SkRegion::Op\29 +1747:SkRegion::Iterator::next\28\29 +1748:SkRasterPipeline::compile\28\29\20const +1749:SkRasterPipeline::appendClampIfNormalized\28SkImageInfo\20const&\29 +1750:SkRRect::transform\28SkMatrix\20const&\2c\20SkRRect*\29\20const +1751:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20SkBBHFactory*\29 +1752:SkPathWriter::finishContour\28\29 +1753:SkPathStroker::cubicPerpRay\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +1754:SkPath::getSegmentMasks\28\29\20const +1755:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\29 +1756:SkPaintPriv::ComputeLuminanceColor\28SkPaint\20const&\29 +1757:SkPaint::nothingToDraw\28\29\20const +1758:SkPaint::isSrcOver\28\29\20const +1759:SkOpAngle::linesOnOriginalSide\28SkOpAngle\20const*\29 +1760:SkNotifyBitmapGenIDIsStale\28unsigned\20int\29 +1761:SkNoDrawCanvas::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +1762:SkMipmap::Build\28SkPixmap\20const&\2c\20SkDiscardableMemory*\20\28*\29\28unsigned\20long\29\2c\20bool\29 +1763:SkMeshSpecification::~SkMeshSpecification\28\29 +1764:SkMatrix::setSinCos\28float\2c\20float\2c\20float\2c\20float\29 +1765:SkMatrix::setRSXform\28SkRSXform\20const&\29 +1766:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint3\20const*\2c\20int\29\20const +1767:SkMaskFilterBase::getFlattenableType\28\29\20const +1768:SkMaskBuilder::AllocImage\28unsigned\20long\2c\20SkMaskBuilder::AllocType\29 +1769:SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_blur_2D_effect\28int\2c\20SkRuntimeEffect::Options\20const&\29 +1770:SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_blur_1D_effect\28int\2c\20SkRuntimeEffect::Options\20const&\29 +1771:SkJSONWriter::appendString\28char\20const*\2c\20unsigned\20long\29 +1772:SkIntersections::insertNear\28double\2c\20double\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29 +1773:SkIntersections::flip\28\29 +1774:SkImageFilters::Empty\28\29 +1775:SkImageFilter_Base::~SkImageFilter_Base\28\29 +1776:SkGlyph::drawable\28\29\20const +1777:SkFont::unicharToGlyph\28int\29\20const +1778:SkFont::setTypeface\28sk_sp\29 +1779:SkFont::setHinting\28SkFontHinting\29 +1780:SkFindQuadMaxCurvature\28SkPoint\20const*\29 +1781:SkEvalCubicAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29 +1782:SkDrawTiler::stepAndSetupTileDraw\28\29 +1783:SkDrawTiler::SkDrawTiler\28SkBitmapDevice*\2c\20SkRect\20const*\29 +1784:SkDevice::accessPixels\28SkPixmap*\29 +1785:SkDeque::SkDeque\28unsigned\20long\2c\20void*\2c\20unsigned\20long\2c\20int\29 +1786:SkDCubic::FindExtrema\28double\20const*\2c\20double*\29 +1787:SkColorFilters::Blend\28unsigned\20int\2c\20SkBlendMode\29 +1788:SkCodec::getPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const*\29 +1789:SkCanvas::topDevice\28\29\20const +1790:SkCanvas::internalRestore\28\29 +1791:SkCanvas::init\28sk_sp\29 +1792:SkCanvas::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +1793:SkBlendMode_AsCoeff\28SkBlendMode\2c\20SkBlendModeCoeff*\2c\20SkBlendModeCoeff*\29 +1794:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29 +1795:SkAutoPixmapStorage::tryAlloc\28SkImageInfo\20const&\29 +1796:SkAAClip::SkAAClip\28\29 +1797:OT::glyf_accelerator_t::glyf_accelerator_t\28hb_face_t*\29 +1798:OT::VariationStore::sanitize\28hb_sanitize_context_t*\29\20const +1799:OT::Layout::GPOS_impl::ValueFormat::sanitize_value_devices\28hb_sanitize_context_t*\2c\20void\20const*\2c\20OT::IntType\20const*\29\20const +1800: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 +1801:OT::HVARVVAR::sanitize\28hb_sanitize_context_t*\29\20const +1802:GrTriangulator::VertexList::insert\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\29 +1803:GrTriangulator::Poly::addEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Side\2c\20GrTriangulator*\29 +1804:GrTriangulator::EdgeList::remove\28GrTriangulator::Edge*\29 +1805:GrStyledShape::operator=\28GrStyledShape\20const&\29 +1806: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 +1807:GrResourceCache::purgeAsNeeded\28\29 +1808:GrRenderTask::addDependency\28GrDrawingManager*\2c\20GrSurfaceProxy*\2c\20skgpu::Mipmapped\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +1809:GrRenderTask::GrRenderTask\28\29 +1810:GrRenderTarget::onRelease\28\29 +1811:GrProxyProvider::findOrCreateProxyByUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxy::UseAllocator\29 +1812:GrProcessorSet::operator==\28GrProcessorSet\20const&\29\20const +1813:GrPathUtils::generateQuadraticPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +1814:GrMeshDrawOp::QuadHelper::QuadHelper\28GrMeshDrawTarget*\2c\20unsigned\20long\2c\20int\29 +1815:GrIsStrokeHairlineOrEquivalent\28GrStyle\20const&\2c\20SkMatrix\20const&\2c\20float*\29 +1816:GrImageContext::abandoned\28\29 +1817:GrGpuResource::registerWithCache\28skgpu::Budgeted\29 +1818:GrGpuBuffer::isMapped\28\29\20const +1819:GrGpu::submitToGpu\28GrSyncCpu\29 +1820:GrGpu::didWriteToSurface\28GrSurface*\2c\20GrSurfaceOrigin\2c\20SkIRect\20const*\2c\20unsigned\20int\29\20const +1821:GrGeometryProcessor::ProgramImpl::setupUniformColor\28GrGLSLFPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20GrResourceHandle*\29 +1822:GrGLGpu::flushRenderTarget\28GrGLRenderTarget*\2c\20bool\29 +1823:GrFragmentProcessor::visitTextureEffects\28std::__2::function\20const&\29\20const +1824:GrFragmentProcessor::visitProxies\28std::__2::function\20const&\29\20const +1825:GrCpuBuffer::ref\28\29\20const +1826:GrBufferAllocPool::makeSpace\28unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\29 +1827:GrBackendTextures::GetGLTextureInfo\28GrBackendTexture\20const&\2c\20GrGLTextureInfo*\29 +1828:FilterLoop26_C +1829:FT_Vector_Transform +1830:FT_Vector_NormLen +1831:FT_Outline_Transform +1832:CFF::dict_opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +1833:AlmostBetweenUlps\28float\2c\20float\2c\20float\29 +1834:void\20std::__2::vector>::__emplace_back_slow_path\28skia::textlayout::OneLineShaper::RunBlock&\29 +1835:utext_openUChars_74 +1836:utext_char32At_74 +1837:ures_openWithType\28UResourceBundle*\2c\20char\20const*\2c\20char\20const*\2c\20UResOpenType\2c\20UErrorCode*\29 +1838:ures_getSize_74 +1839:udata_openChoice_74 +1840:ucptrie_internalSmallU8Index_74 +1841:ucptrie_get_74 +1842:ubidi_getMemory_74 +1843:ubidi_getClass_74 +1844:transform\28unsigned\20int*\2c\20unsigned\20char\20const*\29 +1845:toUpperOrTitle\28int\2c\20int\20\28*\29\28void*\2c\20signed\20char\29\2c\20void*\2c\20char16_t\20const**\2c\20int\2c\20signed\20char\29 +1846:strtod +1847:strcspn +1848:std::__2::locale::locale\28std::__2::locale\20const&\29 +1849:std::__2::locale::classic\28\29 +1850:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char*\2c\20char*\2c\20char*&\29\20const +1851:std::__2::chrono::__libcpp_steady_clock_now\28\29 +1852: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 +1853:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +1854:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1855:std::__2::__wrap_iter\20std::__2::vector>::insert\28std::__2::__wrap_iter\2c\20float\20const*\2c\20float\20const*\29 +1856:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1857:std::__2::__throw_bad_variant_access\5babi:v160004\5d\28\29 +1858:std::__2::__split_buffer>::push_front\28skia::textlayout::OneLineShaper::RunBlock*&&\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:sktext::gpu::VertexFiller::vertexStride\28SkMatrix\20const&\29\20const +1865:skif::RoundIn\28SkRect\29 +1866:skif::LayerSpace::round\28\29\20const +1867:skif::LayerSpace::inverseMapRect\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29\20const +1868:skif::FilterResult::applyTransform\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkSamplingOptions\20const&\29\20const +1869:skif::FilterResult::Builder::~Builder\28\29 +1870:skif::FilterResult::Builder::Builder\28skif::Context\20const&\29 +1871: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 +1872:skia_private::THashTable::AdaptedTraits>::removeIfExists\28skgpu::UniqueKey\20const&\29 +1873:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +1874:skia_private::TArray::resize_back\28int\29 +1875:skia_private::TArray::push_back_raw\28int\29 +1876:skia_png_sig_cmp +1877:skia_png_set_progressive_read_fn +1878:skia_png_set_longjmp_fn +1879:skia_png_set_interlace_handling +1880:skia_png_reciprocal +1881:skia_png_read_chunk_header +1882:skia_png_get_io_ptr +1883:skia_png_calloc +1884:skia::textlayout::TextLine::~TextLine\28\29 +1885:skia::textlayout::ParagraphStyle::ParagraphStyle\28skia::textlayout::ParagraphStyle\20const&\29 +1886:skia::textlayout::ParagraphCacheKey::~ParagraphCacheKey\28\29 +1887:skia::textlayout::FontCollection::findTypefaces\28std::__2::vector>\20const&\2c\20SkFontStyle\2c\20std::__2::optional\20const&\29 +1888:skia::textlayout::Cluster::trimmedWidth\28unsigned\20long\29\20const +1889:skgpu::ganesh::TextureOp::BatchSizeLimiter::createOp\28GrTextureSetEntry*\2c\20int\2c\20GrAAType\29 +1890:skgpu::ganesh::SurfaceFillContext::fillWithFP\28std::__2::unique_ptr>\29 +1891:skgpu::ganesh::SurfaceDrawContext::drawShapeUsingPathRenderer\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\2c\20bool\29 +1892:skgpu::ganesh::SurfaceDrawContext::drawRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const*\29 +1893:skgpu::ganesh::SurfaceDrawContext::drawRRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20GrStyle\20const&\29 +1894:skgpu::ganesh::SurfaceContext::transferPixels\28GrColorType\2c\20SkIRect\20const&\29 +1895:skgpu::ganesh::QuadPerEdgeAA::CalcIndexBufferOption\28GrAAType\2c\20int\29 +1896:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29::$_0::operator\28\29\28GrSurfaceProxyView\20const&\29\20const +1897:skgpu::ganesh::Device::targetProxy\28\29 +1898:skgpu::ganesh::ClipStack::getConservativeBounds\28\29\20const +1899:skgpu::TAsyncReadResult::addTransferResult\28skgpu::ganesh::SurfaceContext::PixelTransferResult\20const&\2c\20SkISize\2c\20unsigned\20long\2c\20skgpu::TClientMappedBufferManager*\29 +1900:skgpu::Plot::resetRects\28\29 +1901:skcms_TransferFunction_invert +1902:res_getTableItemByIndex_74 +1903:res_getArrayItem_74 +1904:ps_dimension_add_t1stem +1905:powf +1906:log2f +1907:log +1908:jcopy_sample_rows +1909:icu_74::initSingletons\28char\20const*\2c\20UErrorCode&\29 +1910:icu_74::\28anonymous\20namespace\29::AliasReplacer::replaceLanguage\28bool\2c\20bool\2c\20bool\2c\20icu_74::UVector&\2c\20UErrorCode&\29 +1911:icu_74::UnicodeString::append\28int\29 +1912:icu_74::UnicodeSetStringSpan::UnicodeSetStringSpan\28icu_74::UnicodeSet\20const&\2c\20icu_74::UVector\20const&\2c\20unsigned\20int\29 +1913:icu_74::UnicodeSet::spanUTF8\28char\20const*\2c\20int\2c\20USetSpanCondition\29\20const +1914:icu_74::UnicodeSet::spanBack\28char16_t\20const*\2c\20int\2c\20USetSpanCondition\29\20const +1915:icu_74::UnicodeSet::spanBackUTF8\28char\20const*\2c\20int\2c\20USetSpanCondition\29\20const +1916:icu_74::UnicodeSet::retain\28int\20const*\2c\20int\2c\20signed\20char\29 +1917:icu_74::UnicodeSet::removeAllStrings\28\29 +1918:icu_74::UnicodeSet::operator=\28icu_74::UnicodeSet\20const&\29 +1919:icu_74::UnicodeSet::complement\28\29 +1920:icu_74::UnicodeSet::_add\28icu_74::UnicodeString\20const&\29 +1921:icu_74::UVector32::setSize\28int\29 +1922:icu_74::UCharsTrieBuilder::write\28char16_t\20const*\2c\20int\29 +1923:icu_74::StringEnumeration::~StringEnumeration\28\29 +1924:icu_74::RuleCharacterIterator::getPos\28icu_74::RuleCharacterIterator::Pos&\29\20const +1925:icu_74::RuleBasedBreakIterator::BreakCache::populatePreceding\28UErrorCode&\29 +1926:icu_74::ResourceDataValue::~ResourceDataValue\28\29 +1927:icu_74::ReorderingBuffer::previousCC\28\29 +1928:icu_74::Normalizer2Impl::compose\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20signed\20char\2c\20icu_74::ReorderingBuffer&\2c\20UErrorCode&\29\20const +1929:icu_74::Normalizer2Factory::getNFCImpl\28UErrorCode&\29 +1930:icu_74::LocaleUtility::initLocaleFromName\28icu_74::UnicodeString\20const&\2c\20icu_74::Locale&\29 +1931:icu_74::LocaleKeyFactory::~LocaleKeyFactory\28\29 +1932:icu_74::Locale::setToBogus\28\29 +1933:icu_74::LSR::indexForRegion\28char\20const*\29 +1934:icu_74::LSR::LSR\28icu_74::StringPiece\2c\20icu_74::StringPiece\2c\20icu_74::StringPiece\2c\20int\2c\20UErrorCode&\29 +1935:icu_74::BreakIterator::createInstance\28icu_74::Locale\20const&\2c\20int\2c\20UErrorCode&\29 +1936:hb_font_t::has_func\28unsigned\20int\29 +1937:hb_buffer_create_similar +1938:ft_service_list_lookup +1939:fseek +1940:fiprintf +1941:fflush +1942:expm1 +1943:emscripten::internal::MethodInvoker::invoke\28void\20\28GrDirectContext::*\20const&\29\28\29\2c\20GrDirectContext*\29 +1944: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 +1945:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28SkFont&\29\2c\20SkFont*\29 +1946:do_putc +1947:crc32_z +1948:cf2_hintmap_insertHint +1949:cf2_hintmap_build +1950:cf2_glyphpath_pushPrevElem +1951: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 +1952: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 +1953: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 +1954: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 +1955:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +1956: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\29 +1957:afm_stream_read_one +1958:af_latin_hints_link_segments +1959:af_latin_compute_stem_width +1960:af_glyph_hints_reload +1961:acosf +1962:__sin +1963:__cos +1964:\28anonymous\20namespace\29::PathSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +1965:VP8LHuffmanTablesDeallocate +1966:UDataMemory_createNewInstance_74 +1967:SkWriter32::writeSampling\28SkSamplingOptions\20const&\29 +1968:SkVertices::Builder::detach\28\29 +1969:SkUTF::NextUTF8WithReplacement\28char\20const**\2c\20char\20const*\29 +1970:SkTypeface_FreeType::~SkTypeface_FreeType\28\29 +1971:SkTypeface_FreeType::FaceRec::~FaceRec\28\29 +1972:SkTypeface::SkTypeface\28SkFontStyle\20const&\2c\20bool\29 +1973:SkTextBlobBuilder::TightRunBounds\28SkTextBlob::RunRecord\20const&\29 +1974:SkTextBlob::RunRecord::textSizePtr\28\29\20const +1975:SkTMultiMap::remove\28skgpu::ScratchKey\20const&\2c\20GrGpuResource\20const*\29 +1976:SkTMultiMap::insert\28skgpu::ScratchKey\20const&\2c\20GrGpuResource*\29 +1977:SkTDStorage::insert\28int\2c\20int\2c\20void\20const*\29 +1978: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 +1979:SkSwizzler::Make\28SkEncodedInfo\20const&\2c\20unsigned\20int\20const*\2c\20SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20SkIRect\20const*\29 +1980:SkSurfaces::Raster\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20SkSurfaceProps\20const*\29 +1981:SkSurface_Base::~SkSurface_Base\28\29 +1982:SkSurface::recordingContext\28\29\20const +1983:SkString::resize\28unsigned\20long\29 +1984:SkStrikeSpec::SkStrikeSpec\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +1985:SkStrikeSpec::MakeMask\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +1986:SkStrikeSpec::MakeCanonicalized\28SkFont\20const&\2c\20SkPaint\20const*\29 +1987:SkStrikeCache::findOrCreateStrike\28SkStrikeSpec\20const&\29 +1988:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20SkBitmap\20const&\2c\20SkSurfaceProps\20const&\29 +1989:SkShaders::MatrixRec::apply\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +1990:SkShaders::MatrixRec::MatrixRec\28SkMatrix\20const&\29 +1991:SkShaders::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29 +1992:SkScan::FillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\29 +1993:SkScalerContext_FreeType::emboldenIfNeeded\28FT_FaceRec_*\2c\20FT_GlyphSlotRec_*\2c\20unsigned\20short\29 +1994:SkSL::Type::displayName\28\29\20const +1995:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20double\2c\20SkSL::Position\29\20const +1996:SkSL::SymbolTable::find\28std::__2::basic_string_view>\29\20const +1997:SkSL::String::Separator\28\29::Output::~Output\28\29 +1998: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 +1999:SkSL::RP::Generator::foldComparisonOp\28SkSL::Operator\2c\20int\29 +2000:SkSL::RP::Builder::branch_if_no_lanes_active\28int\29 +2001:SkSL::PrefixExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +2002:SkSL::PipelineStage::PipelineStageCodeGenerator::typedVariable\28SkSL::Type\20const&\2c\20std::__2::basic_string_view>\29 +2003:SkSL::Parser::parseArrayDimensions\28SkSL::Position\2c\20SkSL::Type\20const**\29 +2004:SkSL::Parser::arraySize\28long\20long*\29 +2005:SkSL::Operator::operatorName\28\29\20const +2006:SkSL::ModifierFlags::paddedDescription\28\29\20const +2007:SkSL::IndexExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +2008:SkSL::ConstantFolder::GetConstantValue\28SkSL::Expression\20const&\2c\20double*\29 +2009:SkSL::ConstantFolder::GetConstantInt\28SkSL::Expression\20const&\2c\20long\20long*\29 +2010:SkSL::Compiler::convertProgram\28SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::ProgramSettings\20const&\29 +2011:SkResourceCache::remove\28SkResourceCache::Rec*\29 +2012:SkRegion::op\28SkRegion\20const&\2c\20SkIRect\20const&\2c\20SkRegion::Op\29 +2013:SkRegion::Iterator::Iterator\28SkRegion\20const&\29 +2014:SkRectPriv::ClosestDisjointEdge\28SkIRect\20const&\2c\20SkIRect\20const&\29 +2015:SkRecords::FillBounds::bounds\28SkRecords::DrawArc\20const&\29\20const +2016:SkReadBuffer::setMemory\28void\20const*\2c\20unsigned\20long\29 +2017:SkRasterClip::SkRasterClip\28SkIRect\20const&\29 +2018:SkRRect::writeToMemory\28void*\29\20const +2019:SkRRect::setRectXY\28SkRect\20const&\2c\20float\2c\20float\29 +2020:SkPointPriv::DistanceToLineBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPointPriv::Side*\29 +2021:SkPoint::setNormalize\28float\2c\20float\29 +2022:SkPixmapUtils::SwapWidthHeight\28SkImageInfo\20const&\29 +2023:SkPictureRecorder::finishRecordingAsPicture\28\29 +2024:SkPathPriv::ComputeFirstDirection\28SkPath\20const&\29 +2025:SkPathEffect::asADash\28SkPathEffect::DashInfo*\29\20const +2026:SkPathEdgeIter::SkPathEdgeIter\28SkPath\20const&\29 +2027:SkPath::rewind\28\29 +2028:SkPath::isLine\28SkPoint*\29\20const +2029:SkPath::incReserve\28int\2c\20int\2c\20int\29 +2030:SkPath::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2031:SkPaint::setStrokeCap\28SkPaint::Cap\29 +2032:SkPaint::refShader\28\29\20const +2033:SkOpSpan::setWindSum\28int\29 +2034:SkOpSegment::markAndChaseWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int\2c\20int\2c\20SkOpSpanBase**\29 +2035:SkOpContourBuilder::addCurve\28SkPath::Verb\2c\20SkPoint\20const*\2c\20float\29 +2036:SkOpAngle::starter\28\29 +2037:SkOpAngle::insert\28SkOpAngle*\29 +2038:SkNoDestructor::SkNoDestructor\28SkSL::String::Separator\28\29::Output&&\29 +2039:SkMatrixPriv::InverseMapRect\28SkMatrix\20const&\2c\20SkRect*\2c\20SkRect\20const&\29 +2040:SkMatrix::setSinCos\28float\2c\20float\29 +2041:SkMatrix::decomposeScale\28SkSize*\2c\20SkMatrix*\29\20const +2042:SkMaskFilter::MakeBlur\28SkBlurStyle\2c\20float\2c\20bool\29 +2043:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29 +2044:SkMD5::write\28void\20const*\2c\20unsigned\20long\29 +2045:SkLineClipper::IntersectLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\29 +2046:SkImage_GaneshBase::SkImage_GaneshBase\28sk_sp\2c\20SkImageInfo\2c\20unsigned\20int\29 +2047:SkImageGenerator::onRefEncodedData\28\29 +2048:SkImage::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\29\20const +2049:SkImage::makeRasterImage\28GrDirectContext*\2c\20SkImage::CachingHint\29\20const +2050:SkIDChangeListener::SkIDChangeListener\28\29 +2051:SkIDChangeListener::List::reset\28\29 +2052:SkGradientBaseShader::flatten\28SkWriteBuffer&\29\20const +2053:SkFontMgr::RefEmpty\28\29 +2054:SkFont::setEdging\28SkFont::Edging\29 +2055:SkEvalQuadAt\28SkPoint\20const*\2c\20float\29 +2056:SkEncodedInfo::makeImageInfo\28\29\20const +2057:SkEdgeClipper::next\28SkPoint*\29 +2058:SkDevice::scalerContextFlags\28\29\20const +2059:SkConic::evalAt\28float\2c\20SkPoint*\2c\20SkPoint*\29\20const +2060:SkColorInfo::SkColorInfo\28SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +2061:SkCodec::skipScanlines\28int\29 +2062:SkChopCubicAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +2063:SkCapabilities::RasterBackend\28\29 +2064:SkCanvas::saveLayer\28SkCanvas::SaveLayerRec\20const&\29 +2065:SkCanvas::imageInfo\28\29\20const +2066:SkCanvas::drawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +2067:SkCanvas::drawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +2068:SkCanvas::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +2069:SkBmpBaseCodec::~SkBmpBaseCodec\28\29 +2070:SkBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +2071:SkBlendMode\20SkReadBuffer::read32LE\28SkBlendMode\29 +2072:SkBitmap::operator=\28SkBitmap\20const&\29 +2073:SkBitmap::extractSubset\28SkBitmap*\2c\20SkIRect\20const&\29\20const +2074:SkBitmap::SkBitmap\28SkBitmap&&\29 +2075:SkBinaryWriteBuffer::writeByteArray\28void\20const*\2c\20unsigned\20long\29 +2076:SkBinaryWriteBuffer::SkBinaryWriteBuffer\28SkSerialProcs\20const&\29 +2077:SkBaseShadowTessellator::handleLine\28SkPoint\20const&\29 +2078:SkAAClip::setRegion\28SkRegion\20const&\29 +2079:R +2080:OT::hb_ot_apply_context_t::_set_glyph_class\28unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +2081:OT::cmap::find_subtable\28unsigned\20int\2c\20unsigned\20int\29\20const +2082:GrXPFactory::FromBlendMode\28SkBlendMode\29 +2083:GrTriangulator::setBottom\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2084:GrTriangulator::mergeCollinearEdges\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2085:GrTriangulator::Edge::disconnect\28\29 +2086:GrThreadSafeCache::find\28skgpu::UniqueKey\20const&\29 +2087:GrThreadSafeCache::add\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +2088:GrThreadSafeCache::Entry::makeEmpty\28\29 +2089:GrSurfaceProxyView::operator==\28GrSurfaceProxyView\20const&\29\20const +2090:GrSurfaceProxyView::Copy\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20SkIRect\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\29 +2091:GrSurfaceProxyPriv::doLazyInstantiation\28GrResourceProvider*\29 +2092:GrSurfaceProxy::isFunctionallyExact\28\29\20const +2093: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 +2094:GrSimpleMeshDrawOpHelperWithStencil::fixedFunctionFlags\28\29\20const +2095:GrSimpleMeshDrawOpHelper::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20GrProcessorAnalysisColor*\29 +2096: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 +2097:GrSimpleMeshDrawOpHelper::CreatePipeline\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20skgpu::Swizzle\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrProcessorSet&&\2c\20GrPipeline::InputFlags\29 +2098:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20void\20const*\2c\20skgpu::UniqueKey\20const&\29 +2099:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20skgpu::UniqueKey\20const&\2c\20void\20\28*\29\28skgpu::VertexWriter\2c\20unsigned\20long\29\29 +2100:GrResourceCache::findAndRefScratchResource\28skgpu::ScratchKey\20const&\29 +2101: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 +2102:GrQuadUtils::TessellationHelper::Vertices::moveAlong\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +2103:GrQuad::asRect\28SkRect*\29\20const +2104:GrProcessorSet::GrProcessorSet\28GrProcessorSet&&\29 +2105:GrPathUtils::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +2106:GrGpu::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +2107:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +2108:GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +2109:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +2110:GrGLSLColorSpaceXformHelper::emitCode\28GrGLSLUniformHandler*\2c\20GrColorSpaceXform\20const*\2c\20unsigned\20int\29 +2111:GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +2112:GrGLRenderTarget::bindInternal\28unsigned\20int\2c\20bool\29 +2113:GrGLGpu::getErrorAndCheckForOOM\28\29 +2114:GrGLGpu::bindTexture\28int\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20GrGLTexture*\29 +2115:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkMatrix\20const&\29 +2116:GrFragmentProcessor::visitWithImpls\28std::__2::function\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\20const +2117:GrFragmentProcessor::ColorMatrix\28std::__2::unique_ptr>\2c\20float\20const*\2c\20bool\2c\20bool\2c\20bool\29 +2118:GrDrawingManager::appendTask\28sk_sp\29 +2119:GrColorInfo::GrColorInfo\28GrColorInfo\20const&\29 +2120:GrCaps::isFormatCompressed\28GrBackendFormat\20const&\29\20const +2121:GrAAConvexTessellator::lineTo\28SkPoint\20const&\2c\20GrAAConvexTessellator::CurveState\29 +2122:FT_Select_Metrics +2123:FT_Select_Charmap +2124:FT_Get_Next_Char +2125:FT_Get_Module_Interface +2126:FT_Done_Size +2127:DecodeImageStream +2128:CFF::opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +2129:CFF::Charset::get_glyph\28unsigned\20int\2c\20unsigned\20int\29\20const +2130:wuffs_gif__decoder__num_decoded_frames +2131:void\20std::__2::vector\2c\20std::__2::allocator>>::__push_back_slow_path\20const&>\28sk_sp\20const&\29 +2132:void\20std::__2::reverse\5babi:v160004\5d\28wchar_t*\2c\20wchar_t*\29 +2133:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.2 +2134:void\20merge_sort<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +2135:void\20merge_sort<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +2136:void\20icu_74::\28anonymous\20namespace\29::MixedBlocks::extend\28unsigned\20int\20const*\2c\20int\2c\20int\2c\20int\29 +2137:void\20emscripten::internal::MemberAccess::setWire\28float\20StrokeOpts::*\20const&\2c\20StrokeOpts&\2c\20float\29 +2138:validate_offsetToRestore\28SkReadBuffer*\2c\20unsigned\20long\29 +2139:utrie2_enum_74 +2140:utext_clone_74 +2141:ustr_hashUCharsN_74 +2142:ures_getValueWithFallback_74 +2143:ures_appendResPath\28UResourceBundle*\2c\20char\20const*\2c\20int\2c\20UErrorCode*\29 +2144:uprv_isInvariantUString_74 +2145:umutablecptrie_set_74 +2146:umutablecptrie_close_74 +2147:uloc_getVariant_74 +2148:uhash_setValueDeleter_74 +2149:uenum_next_74 +2150:ubidi_setPara_74 +2151:ubidi_getVisualRun_74 +2152:ubidi_getRuns_74 +2153:u_strstr_74 +2154:u_getPropertyValueEnum_74 +2155:u_getIntPropertyValue_74 +2156:tt_set_mm_blend +2157:tt_face_get_ps_name +2158:trinkle +2159:strtox.1 +2160:strtoul +2161:std::__2::unique_ptr::release\5babi:v160004\5d\28\29 +2162: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 +2163:std::__2::pair::pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +2164:std::__2::moneypunct::do_decimal_point\28\29\20const +2165:std::__2::moneypunct::do_decimal_point\28\29\20const +2166:std::__2::istreambuf_iterator>::istreambuf_iterator\5babi:v160004\5d\28std::__2::basic_istream>&\29 +2167:std::__2::ios_base::good\5babi:v160004\5d\28\29\20const +2168: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 +2169:std::__2::ctype::toupper\5babi:v160004\5d\28char\29\20const +2170:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +2171: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 +2172:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +2173:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +2174: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 +2175:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +2176:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +2177:std::__2::basic_string\2c\20std::__2::allocator>::__get_short_size\5babi:v160004\5d\28\29\20const +2178: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 +2179:std::__2::basic_streambuf>::__pbump\5babi:v160004\5d\28long\29 +2180:std::__2::basic_iostream>::~basic_iostream\28\29.1 +2181:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::allocator&\2c\20wchar_t*\2c\20unsigned\20long\29 +2182:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::allocator&\2c\20char*\2c\20unsigned\20long\29 +2183:std::__2::__num_put_base::__format_int\28char*\2c\20char\20const*\2c\20bool\2c\20unsigned\20int\29 +2184:std::__2::__num_put_base::__format_float\28char*\2c\20char\20const*\2c\20unsigned\20int\29 +2185:std::__2::__itoa::__append8\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2186:sktext::gpu::VertexFiller::deviceRectAndCheckTransform\28SkMatrix\20const&\29\20const +2187:sktext::gpu::TextBlob::Key::operator==\28sktext::gpu::TextBlob::Key\20const&\29\20const +2188:sktext::gpu::GlyphVector::packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29 +2189:sktext::SkStrikePromise::strike\28\29 +2190:skif::\28anonymous\20namespace\29::downscale_step_count\28float\29 +2191:skif::FilterResult::getAnalyzedShaderView\28skif::Context\20const&\2c\20SkSamplingOptions\20const&\2c\20SkEnumBitMask\29\20const +2192:skif::FilterResult::draw\28skif::Context\20const&\2c\20SkDevice*\2c\20bool\2c\20SkBlender\20const*\29\20const +2193:skif::FilterResult::applyCrop\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkTileMode\29\20const +2194:skif::Context::~Context\28\29 +2195: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 +2196: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 +2197:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +2198:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2199: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>::resize\28int\29 +2200:skia_private::THashTable::Traits>::resize\28int\29 +2201:skia_private::TArray::move\28void*\29 +2202:skia_private::TArray::operator=\28skia_private::TArray&&\29 +2203:skia_private::TArray\2c\20true>::push_back\28SkRGBA4f<\28SkAlphaType\293>&&\29 +2204:skia_png_set_text_2 +2205:skia_png_set_palette_to_rgb +2206:skia_png_handle_IHDR +2207:skia_png_handle_IEND +2208:skia_png_destroy_write_struct +2209:skia::textlayout::operator==\28skia::textlayout::FontArguments\20const&\2c\20skia::textlayout::FontArguments\20const&\29 +2210:skia::textlayout::TextWrapper::TextStretch::extend\28skia::textlayout::Cluster*\29 +2211:skia::textlayout::FontCollection::getFontManagerOrder\28\29\20const +2212:skia::textlayout::FontArguments::FontArguments\28skia::textlayout::FontArguments\20const&\29 +2213:skia::textlayout::Decorations::calculateGaps\28skia::textlayout::TextLine::ClipContext\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\29 +2214:skia::textlayout::Block&\20skia_private::TArray::emplace_back\28unsigned\20long&&\2c\20unsigned\20long&&\2c\20skia::textlayout::TextStyle\20const&\29 +2215:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::fixedFunctionFlags\28\29\20const +2216:skgpu::ganesh::SurfaceFillContext::fillRectWithFP\28SkIRect\20const&\2c\20SkMatrix\20const&\2c\20std::__2::unique_ptr>\29 +2217:skgpu::ganesh::SurfaceFillContext::SurfaceFillContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +2218:skgpu::ganesh::SurfaceDrawContext::drawShape\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\29 +2219:skgpu::ganesh::SurfaceDrawContext::drawPaint\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\29 +2220: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 +2221:skgpu::ganesh::SurfaceContext::rescaleInto\28skgpu::ganesh::SurfaceFillContext*\2c\20SkIRect\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29 +2222:skgpu::ganesh::SurfaceContext::PixelTransferResult::operator=\28skgpu::ganesh::SurfaceContext::PixelTransferResult&&\29 +2223:skgpu::ganesh::SmallPathAtlasMgr::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +2224:skgpu::ganesh::OpsTask::~OpsTask\28\29 +2225:skgpu::ganesh::OpsTask::setColorLoadOp\28GrLoadOp\2c\20std::__2::array\29 +2226:skgpu::ganesh::OpsTask::deleteOps\28\29 +2227:skgpu::ganesh::FillRectOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +2228: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 +2229:skgpu::ganesh::ClipStack::~ClipStack\28\29 +2230:skgpu::TClientMappedBufferManager::~TClientMappedBufferManager\28\29 +2231:skgpu::Swizzle::apply\28SkRasterPipeline*\29\20const +2232:skgpu::Plot::addSubImage\28int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +2233:skgpu::GetLCDBlendFormula\28SkBlendMode\29 +2234:skcms_TransferFunction_isHLGish +2235:skcms_Matrix3x3_concat +2236:sk_srgb_linear_singleton\28\29 +2237:shr +2238:shl +2239:setRegionCheck\28SkRegion*\2c\20SkRegion\20const&\29 +2240:res_findResource_74 +2241:read_header\28SkStream*\2c\20SkPngChunkReader*\2c\20SkCodec**\2c\20png_struct_def**\2c\20png_info_def**\29 +2242:ps_dimension_set_mask_bits +2243:operator==\28SkPath\20const&\2c\20SkPath\20const&\29 +2244:mbrtowc +2245:jround_up +2246:jpeg_make_d_derived_tbl +2247:init\28\29 +2248:ilogbf +2249:icu_74::locale_set_default_internal\28char\20const*\2c\20UErrorCode&\29 +2250:icu_74::compute\28int\2c\20icu_74::ReadArray2D\20const&\2c\20icu_74::ReadArray2D\20const&\2c\20icu_74::ReadArray1D\20const&\2c\20icu_74::ReadArray1D\20const&\2c\20icu_74::Array1D&\2c\20icu_74::Array1D&\2c\20icu_74::Array1D&\29 +2251:icu_74::UnicodeString::getChar32Start\28int\29\20const +2252:icu_74::UnicodeString::fromUTF8\28icu_74::StringPiece\29 +2253:icu_74::UnicodeString::extract\28int\2c\20int\2c\20char*\2c\20int\2c\20icu_74::UnicodeString::EInvariant\29\20const +2254:icu_74::UnicodeString::doReplace\28int\2c\20int\2c\20icu_74::UnicodeString\20const&\2c\20int\2c\20int\29 +2255:icu_74::UnicodeString::copyFrom\28icu_74::UnicodeString\20const&\2c\20signed\20char\29 +2256:icu_74::UnicodeSet::setToBogus\28\29 +2257:icu_74::UnicodeSet::freeze\28\29 +2258:icu_74::UnicodeSet::copyFrom\28icu_74::UnicodeSet\20const&\2c\20signed\20char\29 +2259:icu_74::UnicodeSet::add\28int\20const*\2c\20int\2c\20signed\20char\29 +2260:icu_74::UnicodeSet::_toPattern\28icu_74::UnicodeString&\2c\20signed\20char\29\20const +2261:icu_74::UnicodeSet::UnicodeSet\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29 +2262:icu_74::UVector::removeElementAt\28int\29 +2263:icu_74::UDataPathIterator::next\28UErrorCode*\29 +2264:icu_74::StringTrieBuilder::writeNode\28int\2c\20int\2c\20int\29 +2265:icu_74::StringEnumeration::StringEnumeration\28\29 +2266:icu_74::SimpleFilteredSentenceBreakIterator::breakExceptionAt\28int\29 +2267:icu_74::RuleBasedBreakIterator::DictionaryCache::reset\28\29 +2268:icu_74::RuleBasedBreakIterator::BreakCache::reset\28int\2c\20int\29 +2269:icu_74::RuleBasedBreakIterator::BreakCache::populateNear\28int\2c\20UErrorCode&\29 +2270:icu_74::RuleBasedBreakIterator::BreakCache::populateFollowing\28\29 +2271:icu_74::ResourceDataValue::getBinary\28int&\2c\20UErrorCode&\29\20const +2272:icu_74::ResourceDataValue::getArray\28UErrorCode&\29\20const +2273:icu_74::ResourceArray::getValue\28int\2c\20icu_74::ResourceValue&\29\20const +2274:icu_74::ReorderingBuffer::init\28int\2c\20UErrorCode&\29 +2275:icu_74::Normalizer2Impl::makeFCD\28char16_t\20const*\2c\20char16_t\20const*\2c\20icu_74::ReorderingBuffer*\2c\20UErrorCode&\29\20const +2276:icu_74::Normalizer2Impl::hasCompBoundaryBefore\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\29\20const +2277:icu_74::Normalizer2Impl::decomposeShort\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20icu_74::Normalizer2Impl::StopAt\2c\20signed\20char\2c\20icu_74::ReorderingBuffer&\2c\20UErrorCode&\29\20const +2278:icu_74::Normalizer2Impl::addPropertyStarts\28USetAdder\20const*\2c\20UErrorCode&\29\20const +2279:icu_74::ICU_Utility::skipWhitespace\28icu_74::UnicodeString\20const&\2c\20int&\2c\20signed\20char\29 +2280:icu_74::CheckedArrayByteSink::CheckedArrayByteSink\28char*\2c\20int\29 +2281:hb_ucd_get_unicode_funcs +2282:hb_syllabic_insert_dotted_circles\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +2283:hb_shape_full +2284:hb_serialize_context_t::~hb_serialize_context_t\28\29 +2285:hb_serialize_context_t::resolve_links\28\29 +2286:hb_serialize_context_t::reset\28\29 +2287:hb_lazy_loader_t\2c\20hb_face_t\2c\2016u\2c\20OT::cff1_accelerator_t>::get\28\29\20const +2288:hb_lazy_loader_t\2c\20hb_face_t\2c\2034u\2c\20hb_blob_t>::get\28\29\20const +2289:hb_language_from_string +2290:hb_font_t::mults_changed\28\29 +2291:hb_font_destroy +2292:hb_buffer_t::next_glyph\28\29 +2293:get_sof +2294:ftell +2295:ft_var_readpackedpoints +2296:ft_mem_strdup +2297:float\20emscripten::internal::MemberAccess::getWire\28float\20StrokeOpts::*\20const&\2c\20StrokeOpts\20const&\29 +2298:fill_window +2299:exp +2300:encodeImage\28GrDirectContext*\2c\20sk_sp\2c\20SkEncodedImageFormat\2c\20int\29 +2301:emscripten::val\20MakeTypedArray\28int\2c\20float\20const*\29 +2302:emscripten::internal::MethodInvoker::invoke\28float\20\28SkContourMeasure::*\20const&\29\28\29\20const\2c\20SkContourMeasure\20const*\29 +2303: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 +2304:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath\20const&\2c\20SkPath\20const&\29\2c\20SkPath*\2c\20SkPath*\29 +2305:dquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2306:do_clip_op\28SkReadBuffer*\2c\20SkCanvas*\2c\20SkRegion::Op\2c\20SkClipOp*\29 +2307:do_anti_hairline\28int\2c\20int\2c\20int\2c\20int\2c\20SkIRect\20const*\2c\20SkBlitter*\29 +2308:doWriteReverse\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +2309:doWriteForward\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +2310:dline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2311:dispose_chunk +2312: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 +2313:decltype\28fp\28\28SkRecords::NoOp\29\28\29\29\29\20SkRecord::Record::visit\28SkRecords::Draw&\29\20const +2314:dcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2315:dconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2316:crop_rect_edge\28SkRect\20const&\2c\20int\2c\20int\2c\20int\2c\20int\2c\20float*\2c\20float*\2c\20float*\2c\20float*\2c\20float*\29 +2317:createPath\28char\20const*\2c\20int\2c\20char\20const*\2c\20int\2c\20char\20const*\2c\20icu_74::CharString&\2c\20UErrorCode*\29 +2318:char*\20std::__2::__rewrap_iter\5babi:v160004\5d>\28char*\2c\20char*\29 +2319:cff_slot_load +2320:cff_parse_real +2321:cff_index_get_sid_string +2322:cff_index_access_element +2323:cf2_doStems +2324:cf2_doFlex +2325:byn$mgfn-shared$tt_cmap8_get_info +2326:byn$mgfn-shared$tt_cmap0_get_info +2327:byn$mgfn-shared$skia_png_set_strip_16 +2328:byn$mgfn-shared$isBidiControl\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +2329:byn$mgfn-shared$SkSL::Tracer::line\28int\29 +2330:byn$mgfn-shared$AlmostBequalUlps\28float\2c\20float\29 +2331:buffer_verify_error\28hb_buffer_t*\2c\20hb_font_t*\2c\20char\20const*\2c\20...\29 +2332: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 +2333: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 +2334:af_sort_and_quantize_widths +2335:af_glyph_hints_align_weak_points +2336:af_glyph_hints_align_strong_points +2337:af_face_globals_new +2338:af_cjk_compute_stem_width +2339:add_huff_table +2340:addPoint\28UBiDi*\2c\20int\2c\20int\29 +2341:_addExtensionToList\28ExtensionListEntry**\2c\20ExtensionListEntry*\2c\20signed\20char\29 +2342:__uselocale +2343:__math_xflow +2344:__cxxabiv1::__base_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +2345:\28anonymous\20namespace\29::make_vertices_spec\28bool\2c\20bool\29 +2346:\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 +2347:\28anonymous\20namespace\29::draw_stencil_rect\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrHardClip\20const&\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +2348:\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 +2349:\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 +2350:\28anonymous\20namespace\29::CacheImpl::removeInternal\28\28anonymous\20namespace\29::CacheImpl::Value*\29 +2351:WebPRescalerExport +2352:WebPInitAlphaProcessing +2353:WebPFreeDecBuffer +2354:WebPDemuxDelete +2355:VP8SetError +2356:VP8LInverseTransform +2357:VP8LDelete +2358:VP8LColorCacheClear +2359:UDataMemory_init_74 +2360:TT_Load_Context +2361:StringBuffer\20apply_format_string<1024>\28char\20const*\2c\20void*\2c\20char\20\28&\29\20\5b1024\5d\2c\20SkString*\29 +2362:SkYUVAPixmaps::operator=\28SkYUVAPixmaps\20const&\29 +2363:SkYUVAPixmapInfo::SupportedDataTypes::enableDataType\28SkYUVAPixmapInfo::DataType\2c\20int\29 +2364:SkWriter32::writeMatrix\28SkMatrix\20const&\29 +2365:SkWriter32::snapshotAsData\28\29\20const +2366:SkVertices::uniqueID\28\29\20const +2367:SkVertices::approximateSize\28\29\20const +2368:SkUnicode::convertUtf8ToUtf16\28char\20const*\2c\20int\29 +2369:SkUTF::UTF16ToUTF8\28char*\2c\20int\2c\20unsigned\20short\20const*\2c\20unsigned\20long\29 +2370:SkTypefaceCache::NewTypefaceID\28\29 +2371:SkTextBlobRunIterator::next\28\29 +2372:SkTextBlobRunIterator::SkTextBlobRunIterator\28SkTextBlob\20const*\29 +2373:SkTextBlobBuilder::SkTextBlobBuilder\28\29 +2374:SkTextBlobBuilder::ConservativeRunBounds\28SkTextBlob::RunRecord\20const&\29 +2375:SkTSpan::closestBoundedT\28SkDPoint\20const&\29\20const +2376:SkTSect::updateBounded\28SkTSpan*\2c\20SkTSpan*\2c\20SkTSpan*\29 +2377:SkTSect::trim\28SkTSpan*\2c\20SkTSect*\29 +2378:SkTDStorage::erase\28int\2c\20int\29 +2379:SkTDPQueue::percolateUpIfNecessary\28int\29 +2380:SkSurfaceProps::SkSurfaceProps\28unsigned\20int\2c\20SkPixelGeometry\2c\20float\2c\20float\29 +2381:SkStrokerPriv::JoinFactory\28SkPaint::Join\29 +2382:SkStrokeRec::setStrokeStyle\28float\2c\20bool\29 +2383:SkStrokeRec::setFillStyle\28\29 +2384:SkStrokeRec::applyToPath\28SkPath*\2c\20SkPath\20const&\29\20const +2385:SkString::set\28char\20const*\29 +2386:SkStrikeSpec::findOrCreateStrike\28\29\20const +2387:SkStrikeSpec::MakeWithNoDevice\28SkFont\20const&\2c\20SkPaint\20const*\29 +2388:SkStrike::unlock\28\29 +2389:SkStrike::lock\28\29 +2390:SkSharedMutex::SkSharedMutex\28\29 +2391:SkShadowTessellator::MakeSpot\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkPoint3\20const&\2c\20float\2c\20bool\2c\20bool\29 +2392:SkShaders::Empty\28\29 +2393:SkShaders::Color\28unsigned\20int\29 +2394:SkShaderBase::appendRootStages\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +2395:SkScalerContext::~SkScalerContext\28\29.1 +2396:SkSL::write_stringstream\28SkSL::StringStream\20const&\2c\20SkSL::OutputStream&\29 +2397: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 +2398: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 +2399:SkSL::Type::priority\28\29\20const +2400:SkSL::Type::checkIfUsableInArray\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +2401:SkSL::SymbolTable::takeOwnershipOfString\28std::__2::basic_string\2c\20std::__2::allocator>\29 +2402:SkSL::SymbolTable::isBuiltinType\28std::__2::basic_string_view>\29\20const +2403:SkSL::RP::SlotManager::mapVariableToSlots\28SkSL::Variable\20const&\2c\20SkSL::RP::SlotRange\29 +2404:SkSL::RP::Program::appendStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkSL::RP::Callbacks*\2c\20SkSpan\29\20const +2405:SkSL::RP::Generator::pushVectorizedExpression\28SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +2406:SkSL::RP::Builder::ternary_op\28SkSL::RP::BuilderOp\2c\20int\29 +2407:SkSL::RP::Builder::simplifyPopSlotsUnmasked\28SkSL::RP::SlotRange*\29 +2408:SkSL::RP::Builder::pop_slots_unmasked\28SkSL::RP::SlotRange\29 +2409:SkSL::RP::Builder::exchange_src\28\29 +2410:SkSL::ProgramUsage::remove\28SkSL::ProgramElement\20const&\29 +2411:SkSL::ProgramUsage::isDead\28SkSL::Variable\20const&\29\20const +2412:SkSL::Pool::~Pool\28\29 +2413:SkSL::PipelineStage::PipelineStageCodeGenerator::typeName\28SkSL::Type\20const&\29 +2414:SkSL::LiteralType::priority\28\29\20const +2415:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sub\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +2416:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_dot\28std::__2::array\20const&\29 +2417:SkSL::GLSLCodeGenerator::writeAnyConstructor\28SkSL::AnyConstructor\20const&\2c\20SkSL::OperatorPrecedence\29 +2418:SkSL::ExpressionArray::clone\28\29\20const +2419:SkSL::Compiler::errorText\28bool\29 +2420:SkSL::Block::Make\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::unique_ptr>\29 +2421:SkSL::Block::MakeBlock\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::unique_ptr>\29 +2422:SkSL::Analysis::DetectVarDeclarationWithoutScope\28SkSL::Statement\20const&\2c\20SkSL::ErrorReporter*\29 +2423:SkRuntimeEffectPriv::TransformUniforms\28SkSpan\2c\20sk_sp\2c\20SkColorSpace\20const*\29 +2424:SkRuntimeEffect::getRPProgram\28SkSL::DebugTracePriv*\29\20const +2425:SkRegion::getBoundaryPath\28SkPath*\29\20const +2426:SkRegion::Spanerator::next\28int*\2c\20int*\29 +2427:SkRegion::SkRegion\28SkRegion\20const&\29 +2428:SkReduceOrder::Quad\28SkPoint\20const*\2c\20SkPoint*\29 +2429:SkReadBuffer::skipByteArray\28unsigned\20long*\29 +2430:SkReadBuffer::readSampling\28\29 +2431:SkReadBuffer::readRRect\28SkRRect*\29 +2432:SkReadBuffer::checkInt\28int\2c\20int\29 +2433:SkRasterPipeline::appendMatrix\28SkArenaAlloc*\2c\20SkMatrix\20const&\29 +2434:SkQuads::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +2435:SkQuadraticEdge::updateQuadratic\28\29 +2436:SkPngCodec::~SkPngCodec\28\29.1 +2437:SkPngCodec::processData\28\29 +2438:SkPixmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +2439:SkPictureRecord::~SkPictureRecord\28\29 +2440:SkPicture::~SkPicture\28\29.1 +2441:SkPathStroker::quadStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2442:SkPathStroker::preJoinTo\28SkPoint\20const&\2c\20SkPoint*\2c\20SkPoint*\2c\20bool\29 +2443:SkPathStroker::intersectRay\28SkQuadConstruct*\2c\20SkPathStroker::IntersectRayType\29\20const +2444:SkPathStroker::cubicStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2445:SkPathStroker::conicStroke\28SkConic\20const&\2c\20SkQuadConstruct*\29 +2446:SkPathMeasure::isClosed\28\29 +2447:SkPathEffectBase::getFlattenableType\28\29\20const +2448:SkPathBuilder::moveTo\28SkPoint\29 +2449:SkPathBuilder::incReserve\28int\2c\20int\29 +2450:SkPathBuilder::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2451:SkPath::isLastContourClosed\28\29\20const +2452:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2453:SkPaintToGrPaintReplaceShader\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20std::__2::unique_ptr>\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +2454:SkPaint::setStrokeMiter\28float\29 +2455:SkPaint::setStrokeJoin\28SkPaint::Join\29 +2456:SkOpSpanBase::mergeMatches\28SkOpSpanBase*\29 +2457:SkOpSpanBase::addOpp\28SkOpSpanBase*\29 +2458:SkOpSegment::subDivide\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkDCurve*\29\20const +2459:SkOpSegment::release\28SkOpSpan\20const*\29 +2460:SkOpSegment::operand\28\29\20const +2461:SkOpSegment::moveNearby\28\29 +2462:SkOpSegment::markDone\28SkOpSpan*\29 +2463:SkOpSegment::markAndChaseDone\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpSpanBase**\29 +2464:SkOpSegment::isClose\28double\2c\20SkOpSegment\20const*\29\20const +2465:SkOpSegment::init\28SkPoint*\2c\20float\2c\20SkOpContour*\2c\20SkPath::Verb\29 +2466:SkOpSegment::addT\28double\2c\20SkPoint\20const&\29 +2467:SkOpCoincidence::fixUp\28SkOpPtT*\2c\20SkOpPtT\20const*\29 +2468:SkOpCoincidence::add\28SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\29 +2469:SkOpCoincidence::addMissing\28bool*\29 +2470:SkOpCoincidence::addIfMissing\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20double\2c\20double\2c\20SkOpSegment*\2c\20SkOpSegment*\2c\20bool*\29 +2471:SkOpCoincidence::addExpanded\28\29 +2472:SkOpAngle::set\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +2473:SkOpAngle::lineOnOneSide\28SkDPoint\20const&\2c\20SkDVector\20const&\2c\20SkOpAngle\20const*\2c\20bool\29\20const +2474:SkNoPixelsDevice::ClipState::op\28SkClipOp\2c\20SkM44\20const&\2c\20SkRect\20const&\2c\20bool\2c\20bool\29 +2475:SkMatrix\20skif::Mapping::map\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +2476:SkMatrixPriv::DifferentialAreaScale\28SkMatrix\20const&\2c\20SkPoint\20const&\29 +2477:SkMatrix::writeToMemory\28void*\29\20const +2478:SkMatrix::preservesRightAngles\28float\29\20const +2479:SkM44::normalizePerspective\28\29 +2480:SkLatticeIter::~SkLatticeIter\28\29 +2481:SkLatticeIter::next\28SkIRect*\2c\20SkRect*\2c\20bool*\2c\20unsigned\20int*\29 +2482:SkImages::RasterFromBitmap\28SkBitmap\20const&\29 +2483:SkImage_Lazy::Validator::Validator\28sk_sp\2c\20SkColorType\20const*\2c\20sk_sp\29 +2484:SkImageShader::MakeSubset\28sk_sp\2c\20SkRect\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +2485:SkImageFilters::Image\28sk_sp\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\29 +2486:SkImageFilters::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +2487:SkImage::readPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +2488:SkHalfToFloat\28unsigned\20short\29 +2489: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 +2490: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 +2491:SkGradientBaseShader::commonAsAGradient\28SkShaderBase::GradientInfo*\29\20const +2492:SkGradientBaseShader::ValidGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\29 +2493:SkGradientBaseShader::SkGradientBaseShader\28SkGradientBaseShader::Descriptor\20const&\2c\20SkMatrix\20const&\29 +2494:SkGradientBaseShader::MakeDegenerateGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20float\20const*\2c\20int\2c\20sk_sp\2c\20SkTileMode\29 +2495:SkGradientBaseShader::Descriptor::~Descriptor\28\29 +2496:SkGradientBaseShader::Descriptor::Descriptor\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\29 +2497:SkGlyph::setPath\28SkArenaAlloc*\2c\20SkPath\20const*\2c\20bool\29 +2498:SkFontMgr::matchFamilyStyleCharacter\28char\20const*\2c\20SkFontStyle\20const&\2c\20char\20const**\2c\20int\2c\20int\29\20const +2499:SkFont::setSize\28float\29 +2500:SkEvalQuadAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +2501:SkEncodedInfo::~SkEncodedInfo\28\29 +2502:SkEmptyFontMgr::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +2503:SkDrawableList::~SkDrawableList\28\29 +2504:SkDrawable::draw\28SkCanvas*\2c\20SkMatrix\20const*\29 +2505:SkData::PrivateNewWithCopy\28void\20const*\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +2506:SkDashPathEffect::Make\28float\20const*\2c\20int\2c\20float\29 +2507:SkDQuad::monotonicInX\28\29\20const +2508:SkDCubic::dxdyAtT\28double\29\20const +2509:SkDCubic::RootsValidT\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +2510:SkCubicEdge::updateCubic\28\29 +2511:SkConicalGradient::~SkConicalGradient\28\29 +2512:SkColorSpace::serialize\28\29\20const +2513:SkColorSpace::MakeSRGBLinear\28\29 +2514:SkColorFilterPriv::MakeGaussian\28\29 +2515:SkColorConverter::SkColorConverter\28unsigned\20int\20const*\2c\20int\29 +2516:SkCodec::startScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const*\29 +2517:SkCodec::handleFrameIndex\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20std::__2::function\29 +2518:SkCodec::getScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +2519:SkChopQuadAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +2520:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\20const*\2c\20int\29 +2521:SkChopCubicAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +2522:SkCharToGlyphCache::SkCharToGlyphCache\28\29 +2523:SkCanvas::getTotalMatrix\28\29\20const +2524:SkCanvas::getLocalToDevice\28\29\20const +2525:SkCanvas::getLocalClipBounds\28\29\20const +2526:SkCanvas::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +2527: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 +2528:SkCanvas::concat\28SkM44\20const&\29 +2529:SkCanvas::SkCanvas\28SkBitmap\20const&\29 +2530:SkCanvas::ImageSetEntry::ImageSetEntry\28SkCanvas::ImageSetEntry\20const&\29 +2531:SkBmpCodec::ReadHeader\28SkStream*\2c\20bool\2c\20std::__2::unique_ptr>*\29 +2532:SkBlurMaskFilterImpl::computeXformedSigma\28SkMatrix\20const&\29\20const +2533:SkBlitter::blitRectRegion\28SkIRect\20const&\2c\20SkRegion\20const&\29 +2534:SkBlendMode_ShouldPreScaleCoverage\28SkBlendMode\2c\20bool\29 +2535:SkBlendMode_AppendStages\28SkBlendMode\2c\20SkRasterPipeline*\29 +2536:SkBitmap::tryAllocPixels\28SkBitmap::Allocator*\29 +2537:SkBitmap::readPixels\28SkPixmap\20const&\2c\20int\2c\20int\29\20const +2538:SkBitmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +2539:SkBitmap::installPixels\28SkPixmap\20const&\29 +2540:SkBitmap::allocPixels\28SkImageInfo\20const&\29 +2541:SkBaseShadowTessellator::handleQuad\28SkPoint\20const*\29 +2542:SkAutoDescriptor::~SkAutoDescriptor\28\29 +2543:SkAnimatedImage::getFrameCount\28\29\20const +2544:SkAAClip::~SkAAClip\28\29 +2545:SkAAClip::setPath\28SkPath\20const&\2c\20SkIRect\20const&\2c\20bool\29 +2546:SkAAClip::op\28SkAAClip\20const&\2c\20SkClipOp\29 +2547:OT::hb_ot_layout_lookup_accelerator_t*\20OT::hb_ot_layout_lookup_accelerator_t::create\28OT::Layout::GSUB_impl::SubstLookup\20const&\29 +2548:OT::hb_ot_apply_context_t::replace_glyph\28unsigned\20int\29 +2549: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 +2550:OT::Layout::GPOS_impl::ValueFormat::get_device\28OT::IntType\20const*\2c\20bool*\2c\20void\20const*\2c\20hb_sanitize_context_t&\29 +2551:OT::Layout::GPOS_impl::AnchorFormat3::get_anchor\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20float*\2c\20float*\29\20const +2552:OT::Layout::GPOS_impl::AnchorFormat2::get_anchor\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20float*\2c\20float*\29\20const +2553:OT::ClassDef::get_class\28unsigned\20int\29\20const +2554:JpegDecoderMgr::~JpegDecoderMgr\28\29 +2555:GrTriangulator::simplify\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +2556:GrTriangulator::setTop\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2557:GrTriangulator::mergeCoincidentVertices\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29\20const +2558:GrTriangulator::Vertex*\20SkArenaAlloc::make\28SkPoint&\2c\20int&&\29 +2559:GrThreadSafeCache::remove\28skgpu::UniqueKey\20const&\29 +2560:GrThreadSafeCache::internalFind\28skgpu::UniqueKey\20const&\29 +2561:GrThreadSafeCache::internalAdd\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +2562:GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29 +2563:GrTexture::markMipmapsClean\28\29 +2564:GrTessellationShader::MakePipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedClip&&\2c\20GrProcessorSet&&\29 +2565:GrSurfaceProxyView::concatSwizzle\28skgpu::Swizzle\29 +2566:GrSurfaceProxy::LazyCallbackResult::LazyCallbackResult\28sk_sp\29 +2567: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 +2568:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +2569:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +2570: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 +2571:GrShape::simplifyLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\29 +2572:GrShape::reset\28\29 +2573:GrShape::conservativeContains\28SkPoint\20const&\29\20const +2574:GrSWMaskHelper::init\28SkIRect\20const&\29 +2575:GrResourceProvider::createNonAAQuadIndexBuffer\28\29 +2576:GrResourceProvider::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\2c\20GrResourceProvider::ZeroInit\29 +2577:GrResourceCache::refAndMakeResourceMRU\28GrGpuResource*\29 +2578:GrResourceCache::findAndRefUniqueResource\28skgpu::UniqueKey\20const&\29 +2579:GrRenderTask::addTarget\28GrDrawingManager*\2c\20sk_sp\29 +2580:GrRenderTarget::~GrRenderTarget\28\29.1 +2581: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 +2582:GrQuadUtils::WillUseHairline\28GrQuad\20const&\2c\20GrAAType\2c\20GrQuadAAFlags\29 +2583:GrQuadUtils::CropToRect\28SkRect\20const&\2c\20GrAA\2c\20DrawQuad*\2c\20bool\29 +2584:GrProxyProvider::processInvalidUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\29 +2585:GrPorterDuffXPFactory::Get\28SkBlendMode\29 +2586:GrPixmap::operator=\28GrPixmap&&\29 +2587:GrPathUtils::scaleToleranceToSrc\28float\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +2588:GrPathUtils::quadraticPointCount\28SkPoint\20const*\2c\20float\29 +2589:GrPathUtils::cubicPointCount\28SkPoint\20const*\2c\20float\29 +2590:GrPaint::setPorterDuffXPFactory\28SkBlendMode\29 +2591:GrPaint::GrPaint\28GrPaint\20const&\29 +2592:GrOpsRenderPass::draw\28int\2c\20int\29 +2593:GrOpsRenderPass::drawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +2594:GrMeshDrawOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +2595:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29 +2596:GrGradientShader::MakeGradientFP\28SkGradientBaseShader\20const&\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\2c\20std::__2::unique_ptr>\2c\20SkMatrix\20const*\29 +2597:GrGpuResource::getContext\28\29 +2598:GrGpu::writePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +2599:GrGLTexture::onSetLabel\28\29 +2600:GrGLTexture::onRelease\28\29 +2601:GrGLTexture::onAbandon\28\29 +2602:GrGLTexture::backendFormat\28\29\20const +2603:GrGLSLUniformHandler::addInputSampler\28skgpu::Swizzle\20const&\2c\20char\20const*\29 +2604:GrGLSLShaderBuilder::appendFunctionDecl\28SkSLType\2c\20char\20const*\2c\20SkSpan\29 +2605:GrGLSLProgramBuilder::fragmentProcessorHasCoordsParam\28GrFragmentProcessor\20const*\29\20const +2606:GrGLRenderTarget::onRelease\28\29 +2607:GrGLRenderTarget::onAbandon\28\29 +2608:GrGLGpu::resolveRenderFBOs\28GrGLRenderTarget*\2c\20SkIRect\20const&\2c\20GrGLRenderTarget::ResolveDirection\2c\20bool\29 +2609:GrGLGpu::flushBlendAndColorWrite\28skgpu::BlendInfo\20const&\2c\20skgpu::Swizzle\20const&\29 +2610:GrGLGetVersionFromString\28char\20const*\29 +2611: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 +2612:GrGLCaps::maxRenderTargetSampleCount\28GrGLFormat\29\20const +2613:GrFragmentProcessors::Make\28SkBlenderBase\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20GrFPArgs\20const&\29 +2614:GrFragmentProcessor::isEqual\28GrFragmentProcessor\20const&\29\20const +2615:GrFragmentProcessor::asTextureEffect\28\29\20const +2616:GrFragmentProcessor::Rect\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRect\29 +2617:GrFragmentProcessor::ModulateRGBA\28std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +2618:GrDrawingManager::~GrDrawingManager\28\29 +2619:GrDrawingManager::removeRenderTasks\28\29 +2620:GrDrawingManager::getPathRenderer\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\2c\20bool\2c\20skgpu::ganesh::PathRendererChain::DrawType\2c\20skgpu::ganesh::PathRenderer::StencilSupport*\29 +2621:GrDrawOpAtlas::compact\28skgpu::AtlasToken\29 +2622:GrContext_Base::~GrContext_Base\28\29 +2623:GrContext_Base::defaultBackendFormat\28SkColorType\2c\20skgpu::Renderable\29\20const +2624:GrColorSpaceXform::XformKey\28GrColorSpaceXform\20const*\29 +2625:GrColorSpaceXform::Make\28SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +2626:GrColorSpaceXform::Make\28GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +2627:GrColorInfo::operator=\28GrColorInfo\20const&\29 +2628:GrCaps::supportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +2629:GrCaps::getFallbackColorTypeAndFormat\28GrColorType\2c\20int\29\20const +2630:GrCaps::areColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +2631:GrBufferAllocPool::~GrBufferAllocPool\28\29 +2632:GrBlurUtils::DrawShapeWithMaskFilter\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\29 +2633:GrBaseContextPriv::getShaderErrorHandler\28\29\20const +2634:GrBackendTexture::GrBackendTexture\28GrBackendTexture\20const&\29 +2635:GrBackendRenderTarget::getBackendFormat\28\29\20const +2636:GrBackendFormat::operator==\28GrBackendFormat\20const&\29\20const +2637:GrAAConvexTessellator::createOuterRing\28GrAAConvexTessellator::Ring\20const&\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring*\29 +2638:GrAAConvexTessellator::createInsetRings\28GrAAConvexTessellator::Ring&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring**\29 +2639:FindSortableTop\28SkOpContourHead*\29 +2640:FT_Set_Charmap +2641:FT_Outline_Decompose +2642:FT_Open_Face +2643:FT_New_Size +2644:FT_Load_Sfnt_Table +2645:FT_GlyphLoader_Add +2646:FT_Get_Color_Glyph_Paint +2647:FT_Get_Color_Glyph_Layer +2648:FT_Get_Advance +2649:FT_Done_Library +2650:FT_CMap_New +2651:End +2652:DecodeImageData\28sk_sp\29 +2653:Current_Ratio +2654:Cr_z__tr_stored_block +2655:ClipParams_unpackRegionOp\28SkReadBuffer*\2c\20unsigned\20int\29 +2656:CircleOp::Circle&\20skia_private::TArray::emplace_back\28CircleOp::Circle&&\29 +2657:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +2658:AlmostEqualUlps_Pin\28float\2c\20float\29 +2659:wuffs_lzw__decoder__workbuf_len +2660:wuffs_gif__decoder__decode_image_config +2661:wuffs_gif__decoder__decode_frame_config +2662:winding_mono_quad\28SkPoint\20const*\2c\20float\2c\20float\2c\20int*\29 +2663:winding_mono_conic\28SkConic\20const&\2c\20float\2c\20float\2c\20int*\29 +2664:wcrtomb +2665:wchar_t\20const*\20std::__2::find\5babi:v160004\5d\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const&\29 +2666: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 +2667: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 +2668: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 +2669: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 +2670: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 +2671: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 +2672:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.3 +2673:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29 +2674: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 +2675: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 +2676:vfprintf +2677:valid_args\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20unsigned\20long*\29 +2678:utf8_back1SafeBody_74 +2679:ustrcase_internalToUpper_74 +2680:uscript_getShortName_74 +2681:uscript_getScript_74 +2682:uprv_strnicmp_74 +2683:uprv_strdup_74 +2684:uprv_sortArray_74 +2685:uprv_min_74 +2686:uprv_mapFile_74 +2687:uprv_compareASCIIPropertyNames_74 +2688:update_offset_to_base\28char\20const*\2c\20long\29 +2689:update_box +2690:unsigned\20long\20const&\20std::__2::min\5babi:v160004\5d\28unsigned\20long\20const&\2c\20unsigned\20long\20const&\29 +2691: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 +2692: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 +2693: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 +2694: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 +2695: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 +2696: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 +2697: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 +2698: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 +2699:umutablecptrie_get_74 +2700:ultag_isUnicodeLocaleAttributes_74 +2701:ultag_isPrivateuseValueSubtags_74 +2702:ulocimp_getKeywords_74 +2703:ulocimp_canonicalize_74 +2704:uloc_openKeywords_74 +2705:uhash_remove_74 +2706:uhash_hashChars_74 +2707:uhash_getiAndFound_74 +2708:uhash_compareChars_74 +2709:udata_getHashTable\28UErrorCode&\29 +2710:ucstrTextAccess\28UText*\2c\20long\20long\2c\20signed\20char\29 +2711:u_strToUTF8_74 +2712:u_strToUTF8WithSub_74 +2713:u_strCompare_74 +2714:u_memmove_74 +2715:u_getUnicodeProperties_74 +2716:u_getDataDirectory_74 +2717:u_charMirror_74 +2718:tt_size_reset +2719:tt_sbit_decoder_load_metrics +2720:tt_face_get_location +2721:tt_face_find_bdf_prop +2722:tolower +2723:toTextStyle\28SimpleTextStyle\20const&\29 +2724:t1_cmap_unicode_done +2725:subdivide_cubic_to\28SkPath*\2c\20SkPoint\20const*\2c\20int\29 +2726:subdivide\28SkConic\20const&\2c\20SkPoint*\2c\20int\29 +2727: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 +2728:strtox +2729:strtoull_l +2730:strcat +2731:std::logic_error::~logic_error\28\29.1 +2732:std::__2::vector>::__append\28unsigned\20long\29 +2733:std::__2::vector>::push_back\5babi:v160004\5d\28float&&\29 +2734:std::__2::vector>::__append\28unsigned\20long\29 +2735: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 +2736:std::__2::vector>::reserve\28unsigned\20long\29 +2737:std::__2::vector\2c\20std::__2::allocator>>::push_back\5babi:v160004\5d\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +2738: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 +2739:std::__2::time_put>>::~time_put\28\29.1 +2740:std::__2::pair\2c\20std::__2::allocator>>>::~pair\28\29 +2741:std::__2::pair\20std::__2::__copy_trivial::operator\28\29\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +2742:std::__2::locale::operator=\28std::__2::locale\20const&\29 +2743:std::__2::locale::locale\28\29 +2744:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\29 +2745:std::__2::ios_base::~ios_base\28\29 +2746:std::__2::ios_base::init\28void*\29 +2747:std::__2::ios_base::clear\28unsigned\20int\29 +2748:std::__2::fpos<__mbstate_t>::fpos\5babi:v160004\5d\28long\20long\29 +2749: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 +2750:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28SkSL::ProgramUsage*\29\20const +2751: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 +2752: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 +2753:std::__2::char_traits::move\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +2754:std::__2::char_traits::assign\28char*\2c\20unsigned\20long\2c\20char\29 +2755:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.2 +2756:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29 +2757:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +2758:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28wchar_t\29 +2759:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +2760:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::allocator\20const&\29 +2761:std::__2::basic_string\2c\20std::__2::allocator>::__make_iterator\5babi:v160004\5d\28char*\29 +2762: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 +2763:std::__2::basic_streambuf>::setp\5babi:v160004\5d\28char*\2c\20char*\29 +2764:std::__2::basic_streambuf>::basic_streambuf\28\29 +2765:std::__2::basic_ostream>::~basic_ostream\28\29.1 +2766:std::__2::basic_istream>::~basic_istream\28\29.1 +2767:std::__2::basic_istream>::sentry::sentry\28std::__2::basic_istream>&\2c\20bool\29 +2768:std::__2::basic_iostream>::~basic_iostream\28\29.2 +2769:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +2770:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +2771:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +2772:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +2773:std::__2::__throw_system_error\28int\2c\20char\20const*\29 +2774:std::__2::__throw_out_of_range\5babi:v160004\5d\28char\20const*\29 +2775:std::__2::__throw_length_error\5babi:v160004\5d\28char\20const*\29 +2776:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +2777:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20wchar_t*\2c\20wchar_t&\2c\20wchar_t&\29 +2778: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 +2779:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20char*\2c\20char&\2c\20char&\29 +2780: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 +2781:std::__2::__libcpp_wcrtomb_l\5babi:v160004\5d\28char*\2c\20wchar_t\2c\20__mbstate_t*\2c\20__locale_struct*\29 +2782:std::__2::__less::operator\28\29\5babi:v160004\5d\28unsigned\20int\20const&\2c\20unsigned\20long\20const&\29\20const +2783:std::__2::__itoa::__base_10_u32\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2784:std::__2::__itoa::__append6\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2785:std::__2::__itoa::__append4\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2786:std::__2::__call_once\28unsigned\20long\20volatile&\2c\20void*\2c\20void\20\28*\29\28void*\29\29 +2787:sktext::gpu::VertexFiller::flatten\28SkWriteBuffer&\29\20const +2788:sktext::gpu::VertexFiller::Make\28skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20SkRect\2c\20SkSpan\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::FillerType\29 +2789: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 +2790:sktext::gpu::SubRunAllocator::SubRunAllocator\28int\29 +2791:sktext::gpu::GlyphVector::flatten\28SkWriteBuffer&\29\20const +2792:sktext::gpu::GlyphVector::Make\28sktext::SkStrikePromise&&\2c\20SkSpan\2c\20sktext::gpu::SubRunAllocator*\29 +2793:sktext::SkStrikePromise::flatten\28SkWriteBuffer&\29\20const +2794:sktext::GlyphRunBuilder::makeGlyphRunList\28sktext::GlyphRun\20const&\2c\20SkPaint\20const&\2c\20SkPoint\29 +2795:sktext::GlyphRun::GlyphRun\28SkFont\20const&\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\29 +2796: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 +2797:skip_literal_string +2798:skif::\28anonymous\20namespace\29::are_axes_nearly_integer_aligned\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29 +2799:skif::LayerSpace::relevantSubset\28skif::LayerSpace\2c\20SkTileMode\29\20const +2800:skif::FilterResult::applyColorFilter\28skif::Context\20const&\2c\20sk_sp\29\20const +2801:skif::FilterResult::Builder::outputBounds\28std::__2::optional>\29\20const +2802:skif::FilterResult::Builder::drawShader\28sk_sp\2c\20skif::LayerSpace\20const&\2c\20bool\29\20const +2803:skif::FilterResult::Builder::createInputShaders\28skif::LayerSpace\20const&\2c\20bool\29 +2804: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 +2805:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::removeSlot\28int\29 +2806:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2807:skia_private::THashTable::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2808:skia_private::THashTable::Pair\2c\20SkSL::IRNode\20const*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2809:skia_private::THashTable::AdaptedTraits>::removeIfExists\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +2810:skia_private::THashTable::Traits>::resize\28int\29 +2811:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::find\28GrProgramDesc\20const&\29\20const +2812:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrThreadSafeCache::Entry*&&\29 +2813:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +2814:skia_private::THashTable::AdaptedTraits>::removeIfExists\28skgpu::UniqueKey\20const&\29 +2815:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrTextureProxy*&&\29 +2816:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +2817:skia_private::THashTable::Traits>::uncheckedSet\28FT_Opaque_Paint_&&\29 +2818:skia_private::THashTable::Traits>::resize\28int\29 +2819:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::~THashMap\28\29 +2820:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::find\28std::__2::basic_string_view>\20const&\29\20const +2821:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::THashMap\28std::initializer_list>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>\29 +2822:skia_private::THashMap>\2c\20SkGoodHash>::set\28SkSL::Variable\20const*\2c\20std::__2::unique_ptr>\29 +2823:skia_private::THashMap\2c\20SkIcuBreakIteratorCache::Request::Hash>::set\28SkIcuBreakIteratorCache::Request\2c\20sk_sp\29 +2824:skia_private::TArray::resize_back\28int\29 +2825:skia_private::TArray::operator=\28skia_private::TArray&&\29 +2826:skia_private::TArray::push_back\28SkRasterPipeline_MemoryCtxInfo&&\29 +2827:skia_private::TArray::push_back_raw\28int\29 +2828:skia_private::TArray::resize_back\28int\29 +2829:skia_png_write_chunk +2830:skia_png_set_sBIT +2831:skia_png_set_read_fn +2832:skia_png_set_packing +2833:skia_png_set_bKGD +2834:skia_png_save_uint_32 +2835:skia_png_reciprocal2 +2836:skia_png_realloc_array +2837:skia_png_read_start_row +2838:skia_png_read_IDAT_data +2839:skia_png_handle_zTXt +2840:skia_png_handle_tRNS +2841:skia_png_handle_tIME +2842:skia_png_handle_tEXt +2843:skia_png_handle_sRGB +2844:skia_png_handle_sPLT +2845:skia_png_handle_sCAL +2846:skia_png_handle_sBIT +2847:skia_png_handle_pHYs +2848:skia_png_handle_pCAL +2849:skia_png_handle_oFFs +2850:skia_png_handle_iTXt +2851:skia_png_handle_iCCP +2852:skia_png_handle_hIST +2853:skia_png_handle_gAMA +2854:skia_png_handle_cHRM +2855:skia_png_handle_bKGD +2856:skia_png_handle_as_unknown +2857:skia_png_handle_PLTE +2858:skia_png_do_strip_channel +2859:skia_png_destroy_read_struct +2860:skia_png_destroy_info_struct +2861:skia_png_compress_IDAT +2862:skia_png_combine_row +2863:skia_png_colorspace_set_sRGB +2864:skia_png_check_fp_string +2865:skia_png_check_fp_number +2866:skia::textlayout::TypefaceFontStyleSet::createTypeface\28int\29 +2867:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::$_0::operator\28\29\28sk_sp\2c\20sk_sp\29\20const +2868:skia::textlayout::TextLine::getRectsForRange\28skia::textlayout::SkRange\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const +2869:skia::textlayout::TextLine::getGlyphPositionAtCoordinate\28float\29 +2870:skia::textlayout::Run::isResolved\28\29\20const +2871:skia::textlayout::Run::copyTo\28SkTextBlobBuilder&\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +2872:skia::textlayout::ParagraphImpl::buildClusterTable\28\29 +2873:skia::textlayout::OneLineShaper::~OneLineShaper\28\29 +2874:skia::textlayout::FontCollection::setDefaultFontManager\28sk_sp\29 +2875:skia::textlayout::FontCollection::FontCollection\28\29 +2876:skia::textlayout::Cluster::isSoftBreak\28\29\20const +2877:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::flush\28GrMeshDrawTarget*\2c\20skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::FlushInfo*\29\20const +2878:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::~Impl\28\29 +2879:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::programInfo\28\29 +2880:skgpu::ganesh::SurfaceFillContext::discard\28\29 +2881:skgpu::ganesh::SurfaceDrawContext::internalStencilClear\28SkIRect\20const*\2c\20bool\29 +2882:skgpu::ganesh::SurfaceDrawContext::drawPath\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrStyle\20const&\29 +2883:skgpu::ganesh::SurfaceDrawContext::attemptQuadOptimization\28GrClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20DrawQuad*\2c\20GrPaint*\29 +2884:skgpu::ganesh::SurfaceDrawContext::Make\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +2885: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 +2886:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +2887:skgpu::ganesh::QuadPerEdgeAA::MinColorType\28SkRGBA4f<\28SkAlphaType\292>\29 +2888:skgpu::ganesh::PathRendererChain::PathRendererChain\28GrRecordingContext*\2c\20skgpu::ganesh::PathRendererChain::Options\20const&\29 +2889:skgpu::ganesh::PathRenderer::getStencilSupport\28GrStyledShape\20const&\29\20const +2890:skgpu::ganesh::PathCurveTessellator::draw\28GrOpFlushState*\29\20const +2891:skgpu::ganesh::OpsTask::recordOp\28std::__2::unique_ptr>\2c\20bool\2c\20GrProcessorSet::Analysis\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const*\2c\20GrCaps\20const&\29 +2892:skgpu::ganesh::FilterAndMipmapHaveNoEffect\28GrQuad\20const&\2c\20GrQuad\20const&\29 +2893:skgpu::ganesh::FillRectOp::MakeNonAARect\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +2894:skgpu::ganesh::FillRRectOp::Make\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +2895:skgpu::ganesh::Device::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +2896: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 +2897:skgpu::ganesh::Device::Make\28std::__2::unique_ptr>\2c\20SkAlphaType\2c\20skgpu::ganesh::Device::InitContents\29 +2898: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 +2899:skgpu::ganesh::ClipStack::SaveRecord::invalidateMasks\28GrProxyProvider*\2c\20SkTBlockList*\29 +2900:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::SaveRecord\20const&\29\20const +2901:skgpu::ganesh::AtlasTextOp::operator\20new\28unsigned\20long\29 +2902: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 +2903:skgpu::ganesh::AtlasRenderTask::addAtlasDrawOp\28std::__2::unique_ptr>\2c\20GrCaps\20const&\29 +2904:skcms_Transform::$_2::operator\28\29\28skcms_Curve\20const*\2c\20int\29\20const +2905:skcms_TransferFunction_isPQish +2906:skcms_MaxRoundtripError +2907:sk_sp::~sk_sp\28\29 +2908:sk_free_releaseproc\28void\20const*\2c\20void*\29 +2909:siprintf +2910:sift +2911:shallowTextClone\28UText*\2c\20UText\20const*\2c\20UErrorCode*\29 +2912:rotate\28SkDCubic\20const&\2c\20int\2c\20int\2c\20SkDCubic&\29 +2913:res_getResource_74 +2914: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 +2915:read_header\28SkStream*\2c\20SkISize*\29 +2916:quad_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2917:qsort +2918:psh_globals_set_scale +2919:ps_parser_skip_PS_token +2920:ps_builder_done +2921:png_text_compress +2922:png_inflate_read +2923:png_inflate_claim +2924:png_image_size +2925:png_colorspace_endpoints_match +2926:png_build_16bit_table +2927:normalize +2928:next_marker +2929:morphpoints\28SkPoint*\2c\20SkPoint\20const*\2c\20int\2c\20SkPathMeasure&\2c\20float\29 +2930:make_unpremul_effect\28std::__2::unique_ptr>\29 +2931:long\20std::__2::__libcpp_atomic_refcount_decrement\5babi:v160004\5d\28long&\29 +2932:long\20const&\20std::__2::min\5babi:v160004\5d\28long\20const&\2c\20long\20const&\29 +2933:log1p +2934:locale_getKeywordsStart_74 +2935:load_truetype_glyph +2936:loadParentsExceptRoot\28UResourceDataEntry*&\2c\20char*\2c\20int\2c\20signed\20char\2c\20char*\2c\20UErrorCode*\29 +2937:line_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2938:lang_find_or_insert\28char\20const*\29 +2939:jpeg_calc_output_dimensions +2940:inner_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +2941:inflate_table +2942:increment_simple_rowgroup_ctr +2943:icu_74::spanOneUTF8\28icu_74::UnicodeSet\20const&\2c\20unsigned\20char\20const*\2c\20int\29 +2944:icu_74::enumGroupNames\28icu_74::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 +2945:icu_74::\28anonymous\20namespace\29::appendResult\28char16_t*\2c\20int\2c\20int\2c\20int\2c\20char16_t\20const*\2c\20int\2c\20unsigned\20int\2c\20icu_74::Edits*\29 +2946:icu_74::\28anonymous\20namespace\29::AliasReplacer::replace\28icu_74::Locale\20const&\2c\20icu_74::CharString&\2c\20UErrorCode&\29::$_0::__invoke\28UElement\2c\20UElement\29 +2947:icu_74::XLikelySubtagsData::readStrings\28icu_74::ResourceTable\20const&\2c\20char\20const*\2c\20icu_74::ResourceValue&\2c\20icu_74::LocalMemory&\2c\20int&\2c\20UErrorCode&\29 +2948:icu_74::UniqueCharStrings::addByValue\28icu_74::UnicodeString\2c\20UErrorCode&\29 +2949:icu_74::UnicodeString::getTerminatedBuffer\28\29 +2950:icu_74::UnicodeString::doCompare\28int\2c\20int\2c\20char16_t\20const*\2c\20int\2c\20int\29\20const +2951:icu_74::UnicodeString::UnicodeString\28char16_t\20const*\2c\20int\29 +2952:icu_74::UnicodeSet::retainAll\28icu_74::UnicodeSet\20const&\29 +2953:icu_74::UnicodeSet::remove\28int\2c\20int\29 +2954:icu_74::UnicodeSet::exclusiveOr\28int\20const*\2c\20int\2c\20signed\20char\29 +2955:icu_74::UnicodeSet::ensureBufferCapacity\28int\29 +2956:icu_74::UnicodeSet::applyIntPropertyValue\28UProperty\2c\20int\2c\20UErrorCode&\29 +2957:icu_74::UnicodeSet::applyFilter\28signed\20char\20\28*\29\28int\2c\20void*\29\2c\20void*\2c\20icu_74::UnicodeSet\20const*\2c\20UErrorCode&\29 +2958:icu_74::UnicodeSet::UnicodeSet\28icu_74::UnicodeSet\20const&\29 +2959:icu_74::UVector::sort\28int\20\28*\29\28UElement\2c\20UElement\29\2c\20UErrorCode&\29 +2960:icu_74::UVector::removeElement\28void*\29 +2961:icu_74::UVector::insertElementAt\28void*\2c\20int\2c\20UErrorCode&\29 +2962:icu_74::UStack::UStack\28void\20\28*\29\28void*\29\2c\20signed\20char\20\28*\29\28UElement\2c\20UElement\29\2c\20UErrorCode&\29 +2963:icu_74::UCharsTrieBuilder::add\28icu_74::UnicodeString\20const&\2c\20int\2c\20UErrorCode&\29 +2964:icu_74::StringTrieBuilder::~StringTrieBuilder\28\29 +2965:icu_74::StringPiece::compare\28icu_74::StringPiece\29 +2966:icu_74::SimpleFilteredSentenceBreakIterator::internalNext\28int\29 +2967:icu_74::RuleCharacterIterator::atEnd\28\29\20const +2968:icu_74::ResourceDataValue::getTable\28UErrorCode&\29\20const +2969:icu_74::ResourceDataValue::getString\28int&\2c\20UErrorCode&\29\20const +2970:icu_74::ReorderingBuffer::append\28char16_t\20const*\2c\20int\2c\20signed\20char\2c\20unsigned\20char\2c\20unsigned\20char\2c\20UErrorCode&\29 +2971:icu_74::PatternProps::isWhiteSpace\28int\29 +2972:icu_74::Normalizer2Impl::~Normalizer2Impl\28\29 +2973:icu_74::Normalizer2Impl::decompose\28int\2c\20unsigned\20short\2c\20icu_74::ReorderingBuffer&\2c\20UErrorCode&\29\20const +2974:icu_74::Normalizer2Impl::decompose\28char16_t\20const*\2c\20char16_t\20const*\2c\20icu_74::ReorderingBuffer*\2c\20UErrorCode&\29\20const +2975:icu_74::Normalizer2Impl::decomposeShort\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20signed\20char\2c\20icu_74::ReorderingBuffer&\2c\20UErrorCode&\29\20const +2976:icu_74::Norm2AllModes::~Norm2AllModes\28\29 +2977:icu_74::Norm2AllModes::createInstance\28icu_74::Normalizer2Impl*\2c\20UErrorCode&\29 +2978:icu_74::LocaleUtility::initNameFromLocale\28icu_74::Locale\20const&\2c\20icu_74::UnicodeString&\29 +2979:icu_74::LocaleBuilder::~LocaleBuilder\28\29 +2980:icu_74::Locale::getKeywordValue\28icu_74::StringPiece\2c\20icu_74::ByteSink&\2c\20UErrorCode&\29\20const +2981:icu_74::Locale::getDefault\28\29 +2982:icu_74::LoadedNormalizer2Impl::load\28char\20const*\2c\20char\20const*\2c\20UErrorCode&\29 +2983:icu_74::ICUServiceKey::~ICUServiceKey\28\29 +2984:icu_74::ICUResourceBundleFactory::~ICUResourceBundleFactory\28\29 +2985:icu_74::ICULocaleService::~ICULocaleService\28\29 +2986:icu_74::EmojiProps::getSingleton\28UErrorCode&\29 +2987:icu_74::Edits::reset\28\29 +2988:icu_74::DictionaryBreakEngine::~DictionaryBreakEngine\28\29 +2989:icu_74::ByteSinkUtil::appendChange\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20char16_t\20const*\2c\20int\2c\20icu_74::ByteSink&\2c\20icu_74::Edits*\2c\20UErrorCode&\29 +2990:icu_74::BreakIterator::makeInstance\28icu_74::Locale\20const&\2c\20int\2c\20UErrorCode&\29 +2991:hb_tag_from_string +2992:hb_shape_plan_destroy +2993:hb_script_get_horizontal_direction +2994:hb_paint_extents_context_t::push_clip\28hb_extents_t\29 +2995:hb_ot_color_palette_get_colors +2996:hb_lazy_loader_t\2c\20hb_face_t\2c\2012u\2c\20OT::vmtx_accelerator_t>::get\28\29\20const +2997:hb_lazy_loader_t\2c\20hb_face_t\2c\2023u\2c\20hb_blob_t>::get\28\29\20const +2998:hb_lazy_loader_t\2c\20hb_face_t\2c\201u\2c\20hb_blob_t>::get\28\29\20const +2999:hb_lazy_loader_t\2c\20hb_face_t\2c\2018u\2c\20hb_blob_t>::get\28\29\20const +3000:hb_hashmap_t::alloc\28unsigned\20int\29 +3001:hb_font_funcs_destroy +3002:hb_face_get_upem +3003:hb_face_destroy +3004: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 +3005:hb_buffer_set_segment_properties +3006:hb_blob_create +3007:gray_render_line +3008:get_vendor\28char\20const*\29 +3009:get_renderer\28char\20const*\2c\20GrGLExtensions\20const&\29 +3010:get_layer_mapping_and_bounds\28SkSpan>\2c\20SkMatrix\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\2c\20float\29 +3011:get_joining_type\28unsigned\20int\2c\20hb_unicode_general_category_t\29 +3012:getDefaultScript\28icu_74::CharString\20const&\2c\20icu_74::CharString\20const&\29 +3013:generate_distance_field_from_image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\29 +3014:ft_var_readpackeddeltas +3015:ft_var_get_item_delta +3016:ft_var_done_item_variation_store +3017:ft_glyphslot_done +3018:ft_glyphslot_alloc_bitmap +3019:freelocale +3020:free_pool +3021:fquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3022:fp_barrierf +3023:fline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3024:fixN0c\28BracketData*\2c\20int\2c\20int\2c\20unsigned\20char\29 +3025:findFirstExisting\28char\20const*\2c\20char*\2c\20char\20const*\2c\20UResOpenType\2c\20signed\20char*\2c\20signed\20char*\2c\20signed\20char*\2c\20UErrorCode*\29 +3026:fcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3027:fconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3028:fclose +3029:expm1f +3030:exp2 +3031:emscripten::internal::MethodInvoker::invoke\28void\20\28SkFont::*\20const&\29\28float\29\2c\20SkFont*\2c\20float\29 +3032: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 +3033: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 +3034: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 +3035:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28SkFontMgr&\2c\20int\29\2c\20SkFontMgr*\2c\20int\29 +3036:do_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +3037: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 +3038: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 +3039:decompose\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\2c\20unsigned\20int\29 +3040: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 +3041: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 +3042:cubic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3043:conic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3044:char\20const*\20std::__2::find\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char\20const&\29 +3045:char\20const*\20std::__2::__rewrap_range\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +3046:cff_index_get_pointers +3047:cff2_path_param_t::move_to\28CFF::point_t\20const&\29 +3048:cff1_path_param_t::move_to\28CFF::point_t\20const&\29 +3049:cf2_glyphpath_computeOffset +3050: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 +3051: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 +3052: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 +3053: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 +3054: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 +3055: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 +3056: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 +3057: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 +3058: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 +3059:byn$mgfn-shared$ultag_isExtensionSubtags_74 +3060: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 +3061: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 +3062:byn$mgfn-shared$skia_private::TArray::operator=\28skia_private::TArray&&\29 +3063:byn$mgfn-shared$skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +3064:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +3065: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 +3066:byn$mgfn-shared$icu_74::LaoBreakEngine::~LaoBreakEngine\28\29.1 +3067:byn$mgfn-shared$icu_74::LaoBreakEngine::~LaoBreakEngine\28\29 +3068:byn$mgfn-shared$getInPC\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +3069: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 +3070:byn$mgfn-shared$SkRuntimeEffect::MakeForColorFilter\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +3071:byn$mgfn-shared$SkImageInfo::MakeN32Premul\28int\2c\20int\29 +3072:byn$mgfn-shared$SkBlockMemoryStream::~SkBlockMemoryStream\28\29.1 +3073:byn$mgfn-shared$SkBlockMemoryStream::~SkBlockMemoryStream\28\29 +3074:byn$mgfn-shared$SkBinaryWriteBuffer::writeScalarArray\28float\20const*\2c\20unsigned\20int\29 +3075:byn$mgfn-shared$Round_To_Grid +3076:byn$mgfn-shared$LineConicIntersections::addLineNearEndPoints\28\29 +3077:byn$mgfn-shared$GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +3078:byn$mgfn-shared$GrGLProgramDataManager::setMatrix2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +3079:byn$mgfn-shared$GrGLProgramDataManager::setMatrix2f\28GrResourceHandle\2c\20float\20const*\29\20const +3080:byn$mgfn-shared$DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +3081:build_tree +3082:bracketAddOpening\28BracketData*\2c\20char16_t\2c\20int\29 +3083: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 +3084:bool\20OT::glyf_accelerator_t::get_points\28hb_font_t*\2c\20unsigned\20int\2c\20OT::glyf_accelerator_t::points_aggregator_t\29\20const +3085:bool\20OT::GSUBGPOSVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +3086:bool\20OT::GSUBGPOSVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +3087: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\29 +3088:auto\20std::__2::__unwrap_range\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +3089:atan +3090:alloc_large +3091:af_glyph_hints_done +3092:add_quad\28SkPoint\20const*\2c\20skia_private::TArray*\29 +3093:acos +3094:aaa_fill_path\28SkPath\20const&\2c\20SkIRect\20const&\2c\20AdditiveBlitter*\2c\20int\2c\20int\2c\20bool\2c\20bool\2c\20bool\29 +3095:_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 +3096:_get_bounds\28OT::cff1::accelerator_t\20const*\2c\20unsigned\20int\2c\20bounds_t&\2c\20bool\29 +3097:_getVariant\28char\20const*\2c\20char\2c\20icu_74::ByteSink&\2c\20signed\20char\29 +3098:_enumPropertyStartsRange\28void\20const*\2c\20int\2c\20int\2c\20unsigned\20int\29 +3099:_embind_register_bindings +3100:_canonicalize\28char\20const*\2c\20icu_74::ByteSink&\2c\20unsigned\20int\2c\20UErrorCode*\29 +3101:__trunctfdf2 +3102:__towrite +3103:__toread +3104:__subtf3 +3105:__strchrnul +3106:__rem_pio2f +3107:__rem_pio2 +3108:__math_uflowf +3109:__math_oflowf +3110:__fwritex +3111:__dynamic_cast +3112:__cxxabiv1::__class_type_info::process_static_type_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\29\20const +3113:__cxxabiv1::__class_type_info::process_static_type_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\29\20const +3114:__cxxabiv1::__class_type_info::process_found_base_class\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +3115:__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 +3116:\28anonymous\20namespace\29::ulayout_ensureData\28UErrorCode&\29 +3117:\28anonymous\20namespace\29::shape_contains_rect\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkMatrix\20const&\2c\20bool\29 +3118:\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 +3119:\28anonymous\20namespace\29::generateFacePathCOLRv1\28FT_FaceRec_*\2c\20unsigned\20short\2c\20SkPath*\29 +3120:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads_with_constraint\28SkPoint\20const*\2c\20float\2c\20SkPathFirstDirection\2c\20skia_private::TArray*\2c\20int\29 +3121:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\2c\20int\2c\20bool\2c\20bool\29 +3122:\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 +3123:\28anonymous\20namespace\29::bloat_quad\28SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkMatrix\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +3124:\28anonymous\20namespace\29::SkEmptyTypeface::onMakeClone\28SkFontArguments\20const&\29\20const +3125:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29.1 +3126:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29 +3127:\28anonymous\20namespace\29::SkBlurImageFilter::mapSigma\28skif::Mapping\20const&\2c\20bool\29\20const +3128:\28anonymous\20namespace\29::DrawAtlasOpImpl::visitProxies\28std::__2::function\20const&\29\20const +3129:\28anonymous\20namespace\29::DrawAtlasOpImpl::programInfo\28\29 +3130:\28anonymous\20namespace\29::DrawAtlasOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +3131:\28anonymous\20namespace\29::DirectMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +3132:\28anonymous\20namespace\29::DirectMaskSubRun::glyphs\28\29\20const +3133:WebPRescaleNeededLines +3134:WebPInitDecBufferInternal +3135:WebPInitCustomIo +3136:WebPGetFeaturesInternal +3137:WebPDemuxGetFrame +3138:VP8LInitBitReader +3139:VP8LColorIndexInverseTransformAlpha +3140:VP8InitIoInternal +3141:VP8InitBitReader +3142:UDatamemory_assign_74 +3143:T_CString_toUpperCase_74 +3144:TT_Vary_Apply_Glyph_Deltas +3145:TT_Set_Var_Design +3146:SkWuffsCodec::decodeFrame\28\29 +3147:SkVertices::MakeCopy\28SkVertices::VertexMode\2c\20int\2c\20SkPoint\20const*\2c\20SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20short\20const*\29 +3148:SkVertices::Builder::texCoords\28\29 +3149:SkVertices::Builder::positions\28\29 +3150:SkVertices::Builder::init\28SkVertices::Desc\20const&\29 +3151:SkVertices::Builder::colors\28\29 +3152:SkVertices::Builder::Builder\28SkVertices::VertexMode\2c\20int\2c\20int\2c\20unsigned\20int\29 +3153:SkUnicodes::ICU::Make\28\29 +3154:SkUnicode_icu::extractPositions\28char\20const*\2c\20int\2c\20SkUnicode::BreakType\2c\20char\20const*\2c\20std::__2::function\20const&\29 +3155:SkTypeface_FreeType::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +3156:SkTypeface::getTableSize\28unsigned\20int\29\20const +3157:SkTiff::ImageFileDirectory::getEntryTag\28unsigned\20short\29\20const +3158:SkTiff::ImageFileDirectory::MakeFromOffset\28sk_sp\2c\20bool\2c\20unsigned\20int\2c\20bool\29 +3159:SkTextBlobRunIterator::positioning\28\29\20const +3160:SkTSpan::splitAt\28SkTSpan*\2c\20double\2c\20SkArenaAlloc*\29 +3161:SkTSect::computePerpendiculars\28SkTSect*\2c\20SkTSpan*\2c\20SkTSpan*\29 +3162:SkTDStorage::insert\28int\29 +3163:SkTDStorage::calculateSizeOrDie\28int\29::$_0::operator\28\29\28\29\20const +3164:SkTDPQueue::percolateDownIfNecessary\28int\29 +3165:SkTConic::hullIntersects\28SkDConic\20const&\2c\20bool*\29\20const +3166:SkSurface_Base::SkSurface_Base\28int\2c\20int\2c\20SkSurfaceProps\20const*\29 +3167:SkStrokerPriv::CapFactory\28SkPaint::Cap\29 +3168:SkStrokeRec::getInflationRadius\28\29\20const +3169:SkString::equals\28char\20const*\29\20const +3170:SkStrikeSpec::MakeTransformMask\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +3171:SkStrikeSpec::MakePath\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\29 +3172:SkStrike::glyph\28SkGlyphDigest\29 +3173:SkShapers::HB::ShapeDontWrapOrReorder\28sk_sp\2c\20sk_sp\29 +3174:SkShaper::TrivialRunIterator::endOfCurrentRun\28\29\20const +3175:SkShaper::TrivialRunIterator::atEnd\28\29\20const +3176:SkShaper::MakeFontMgrRunIterator\28char\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20sk_sp\29 +3177:SkShadowTessellator::MakeAmbient\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20bool\29 +3178:SkScan::FillTriangle\28SkPoint\20const*\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3179:SkScan::FillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3180:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3181:SkScan::AntiHairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3182:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\2c\20bool\29 +3183:SkScalerContextRec::CachedMaskGamma\28unsigned\20char\2c\20unsigned\20char\29 +3184:SkScalerContextFTUtils::drawSVGGlyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29\20const +3185:SkScalarInterpFunc\28float\2c\20float\20const*\2c\20float\20const*\2c\20int\29 +3186:SkSLTypeString\28SkSLType\29 +3187:SkSL::simplify_negation\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\29 +3188: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 +3189:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +3190:SkSL::build_argument_type_list\28SkSpan>\20const>\29 +3191:SkSL::\28anonymous\20namespace\29::SwitchCaseContainsExit::visitStatement\28SkSL::Statement\20const&\29 +3192:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::returnsInputAlpha\28SkSL::Expression\20const&\29 +3193:SkSL::\28anonymous\20namespace\29::ConstantExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +3194: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 +3195:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29\20const +3196:SkSL::Type::MakeSamplerType\28char\20const*\2c\20SkSL::Type\20const&\29 +3197:SkSL::SymbolTable::moveSymbolTo\28SkSL::SymbolTable*\2c\20SkSL::Symbol*\2c\20SkSL::Context\20const&\29 +3198:SkSL::SymbolTable::isType\28std::__2::basic_string_view>\29\20const +3199:SkSL::Symbol::instantiate\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +3200:SkSL::StructType::slotCount\28\29\20const +3201:SkSL::SampleUsage::merge\28SkSL::SampleUsage\20const&\29 +3202:SkSL::ReturnStatement::~ReturnStatement\28\29.1 +3203:SkSL::ReturnStatement::~ReturnStatement\28\29 +3204:SkSL::RP::UnownedLValueSlice::~UnownedLValueSlice\28\29 +3205:SkSL::RP::Generator::pushTernaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +3206:SkSL::RP::Generator::pushStructuredComparison\28SkSL::RP::LValue*\2c\20SkSL::Operator\2c\20SkSL::RP::LValue*\2c\20SkSL::Type\20const&\29 +3207:SkSL::RP::Generator::pushMatrixMultiply\28SkSL::RP::LValue*\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +3208:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29 +3209:SkSL::RP::Builder::push_uniform\28SkSL::RP::SlotRange\29 +3210:SkSL::RP::Builder::merge_condition_mask\28\29 +3211:SkSL::RP::Builder::jump\28int\29 +3212:SkSL::RP::Builder::branch_if_no_active_lanes_on_stack_top_equal\28int\2c\20int\29 +3213:SkSL::ProgramUsage::add\28SkSL::ProgramElement\20const&\29 +3214:SkSL::Pool::detachFromThread\28\29 +3215:SkSL::PipelineStage::ConvertProgram\28SkSL::Program\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20SkSL::PipelineStage::Callbacks*\29 +3216:SkSL::Parser::unaryExpression\28\29 +3217:SkSL::Parser::swizzle\28SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::basic_string_view>\2c\20SkSL::Position\29 +3218:SkSL::Parser::block\28bool\2c\20std::__2::unique_ptr>*\29 +3219:SkSL::Operator::getBinaryPrecedence\28\29\20const +3220:SkSL::ModuleLoader::loadGPUModule\28SkSL::Compiler*\29 +3221:SkSL::ModifierFlags::checkPermittedFlags\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\29\20const +3222:SkSL::MethodReference::~MethodReference\28\29.1 +3223:SkSL::MethodReference::~MethodReference\28\29 +3224:SkSL::Mangler::uniqueName\28std::__2::basic_string_view>\2c\20SkSL::SymbolTable*\29 +3225:SkSL::LiteralType::slotType\28unsigned\20long\29\20const +3226:SkSL::Layout::operator==\28SkSL::Layout\20const&\29\20const +3227:SkSL::Layout::checkPermittedLayout\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkEnumBitMask\29\20const +3228:SkSL::Inliner::analyze\28std::__2::vector>\2c\20std::__2::allocator>>>\20const&\2c\20SkSL::SymbolTable*\2c\20SkSL::ProgramUsage*\29 +3229:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29 +3230:SkSL::GLSLCodeGenerator::writeLiteral\28SkSL::Literal\20const&\29 +3231:SkSL::GLSLCodeGenerator::writeFunctionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +3232: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::unique_ptr>\29 +3233:SkSL::FieldAccess::description\28SkSL::OperatorPrecedence\29\20const +3234:SkSL::Expression::isIncomplete\28SkSL::Context\20const&\29\20const +3235:SkSL::Expression::compareConstant\28SkSL::Expression\20const&\29\20const +3236:SkSL::DebugTracePriv::~DebugTracePriv\28\29 +3237:SkSL::Context::Context\28SkSL::BuiltinTypes\20const&\2c\20SkSL::ErrorReporter&\29 +3238:SkSL::ConstructorArrayCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +3239:SkSL::ConstructorArray::~ConstructorArray\28\29 +3240:SkSL::ConstructorArray::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +3241:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +3242:SkSL::Analysis::CallsColorTransformIntrinsics\28SkSL::Program\20const&\29 +3243:SkSL::AliasType::bitWidth\28\29\20const +3244:SkRuntimeEffectPriv::VarAsUniform\28SkSL::Variable\20const&\2c\20SkSL::Context\20const&\2c\20unsigned\20long*\29 +3245:SkRuntimeEffectPriv::UniformsAsSpan\28SkSpan\2c\20sk_sp\2c\20bool\2c\20SkColorSpace\20const*\2c\20SkArenaAlloc*\29 +3246:SkRuntimeEffect::source\28\29\20const +3247:SkRuntimeEffect::makeShader\28sk_sp\2c\20SkSpan\2c\20SkMatrix\20const*\29\20const +3248:SkRuntimeEffect::MakeForBlender\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +3249:SkResourceCache::checkMessages\28\29 +3250:SkResourceCache::NewCachedData\28unsigned\20long\29 +3251:SkRegion::translate\28int\2c\20int\2c\20SkRegion*\29\20const +3252:SkReduceOrder::Cubic\28SkPoint\20const*\2c\20SkPoint*\29 +3253:SkRectPriv::QuadContainsRectMask\28SkM44\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20float\29 +3254:SkRecords::PreCachedPath::PreCachedPath\28SkPath\20const&\29 +3255:SkRecords::FillBounds::pushSaveBlock\28SkPaint\20const*\29 +3256:SkRecordDraw\28SkRecord\20const&\2c\20SkCanvas*\2c\20SkPicture\20const*\20const*\2c\20SkDrawable*\20const*\2c\20int\2c\20SkBBoxHierarchy\20const*\2c\20SkPicture::AbortCallback*\29 +3257:SkReadBuffer::readPoint\28SkPoint*\29 +3258:SkReadBuffer::readPath\28SkPath*\29 +3259:SkReadBuffer::readByteArrayAsData\28\29 +3260:SkReadBuffer::readArray\28void*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3261:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29 +3262:SkRasterPipelineBlitter::blitRectWithTrace\28int\2c\20int\2c\20int\2c\20int\2c\20bool\29 +3263:SkRasterPipelineBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +3264: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 +3265:SkRasterPipeline::appendLoad\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +3266:SkRasterClip::op\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkClipOp\2c\20bool\29 +3267:SkRRectPriv::ConservativeIntersect\28SkRRect\20const&\2c\20SkRRect\20const&\29 +3268:SkRRect::scaleRadii\28\29 +3269:SkRRect::AreRectAndRadiiValid\28SkRect\20const&\2c\20SkPoint\20const*\29 +3270:SkRBuffer::skip\28unsigned\20long\29 +3271:SkPngCodec::IsPng\28void\20const*\2c\20unsigned\20long\29 +3272:SkPixmap::setColorSpace\28sk_sp\29 +3273:SkPixelRef::~SkPixelRef\28\29 +3274:SkPixelRef::notifyPixelsChanged\28\29 +3275:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20sk_sp\29 +3276:SkPictureRecord::addPathToHeap\28SkPath\20const&\29 +3277:SkPictureData::getPath\28SkReadBuffer*\29\20const +3278:SkPicture::serialize\28SkWStream*\2c\20SkSerialProcs\20const*\2c\20SkRefCntSet*\2c\20bool\29\20const +3279:SkPathWriter::update\28SkOpPtT\20const*\29 +3280:SkPathStroker::strokeCloseEnough\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20SkQuadConstruct*\29\20const +3281:SkPathStroker::finishContour\28bool\2c\20bool\29 +3282:SkPathRef::reset\28\29 +3283:SkPathRef::isRRect\28SkRRect*\2c\20bool*\2c\20unsigned\20int*\29\20const +3284:SkPathRef::addGenIDChangeListener\28sk_sp\29 +3285:SkPathPriv::IsRectContour\28SkPath\20const&\2c\20bool\2c\20int*\2c\20SkPoint\20const**\2c\20bool*\2c\20SkPathDirection*\2c\20SkRect*\29 +3286:SkPathEffectBase::onAsPoints\28SkPathEffectBase::PointData*\2c\20SkPath\20const&\2c\20SkStrokeRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\29\20const +3287:SkPathEffect::filterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\29\20const +3288:SkPathBuilder::quadTo\28SkPoint\2c\20SkPoint\29 +3289:SkPathBuilder::cubicTo\28SkPoint\2c\20SkPoint\2c\20SkPoint\29 +3290:SkPath::writeToMemory\28void*\29\20const +3291:SkPath::reversePathTo\28SkPath\20const&\29 +3292:SkPath::rQuadTo\28float\2c\20float\2c\20float\2c\20float\29 +3293:SkPath::contains\28float\2c\20float\29\20const +3294:SkPath::arcTo\28float\2c\20float\2c\20float\2c\20SkPath::ArcSize\2c\20SkPathDirection\2c\20float\2c\20float\29 +3295:SkPath::approximateBytesUsed\28\29\20const +3296:SkPath::addCircle\28float\2c\20float\2c\20float\2c\20SkPathDirection\29 +3297:SkPath::Rect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +3298:SkParse::FindScalar\28char\20const*\2c\20float*\29 +3299:SkPairPathEffect::flatten\28SkWriteBuffer&\29\20const +3300:SkPaintToGrPaintWithBlend\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkBlender*\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +3301:SkPaint::refImageFilter\28\29\20const +3302:SkPaint::refBlender\28\29\20const +3303:SkPaint::getBlendMode_or\28SkBlendMode\29\20const +3304:SkPackARGB_as_RGBA\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3305:SkPackARGB_as_BGRA\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3306:SkOpSpan::setOppSum\28int\29 +3307:SkOpSegment::markAndChaseWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int\2c\20SkOpSpanBase**\29 +3308:SkOpSegment::markAllDone\28\29 +3309:SkOpSegment::activeWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +3310:SkOpPtT::contains\28SkOpSegment\20const*\29\20const +3311:SkOpEdgeBuilder::closeContour\28SkPoint\20const&\2c\20SkPoint\20const&\29 +3312:SkOpCoincidence::releaseDeleted\28\29 +3313:SkOpCoincidence::markCollapsed\28SkOpPtT*\29 +3314:SkOpCoincidence::findOverlaps\28SkOpCoincidence*\29\20const +3315:SkOpCoincidence::expand\28\29 +3316:SkOpCoincidence::apply\28\29 +3317:SkOpAngle::orderable\28SkOpAngle*\29 +3318:SkOpAngle::computeSector\28\29 +3319:SkNullBlitter::~SkNullBlitter\28\29 +3320:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\2c\20sk_sp\29 +3321:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\29 +3322:SkNoDestructor>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>>::SkNoDestructor\28skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>&&\29 +3323:SkMessageBus::BufferFinishedMessage\2c\20GrDirectContext::DirectContextID\2c\20false>::Get\28\29 +3324:SkMemoryStream::SkMemoryStream\28void\20const*\2c\20unsigned\20long\2c\20bool\29 +3325:SkMemoryStream::SkMemoryStream\28sk_sp\29 +3326:SkMatrix::setRotate\28float\29 +3327:SkMatrix::setPolyToPoly\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20int\29 +3328:SkMatrix::postSkew\28float\2c\20float\29 +3329:SkMatrix::invert\28SkMatrix*\29\20const +3330:SkMatrix::getMinScale\28\29\20const +3331:SkMatrix::getMinMaxScales\28float*\29\20const +3332:SkMaskBuilder::PrepareDestination\28int\2c\20int\2c\20SkMask\20const&\29 +3333:SkMakeBitmapShaderForPaint\28SkPaint\20const&\2c\20SkBitmap\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20SkCopyPixelsMode\29 +3334:SkLineClipper::ClipLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\2c\20bool\29 +3335:SkJpegCodec::ReadHeader\28SkStream*\2c\20SkCodec**\2c\20JpegDecoderMgr**\2c\20std::__2::unique_ptr>\29 +3336:SkJSONWriter::separator\28bool\29 +3337:SkIntersections::intersectRay\28SkDQuad\20const&\2c\20SkDLine\20const&\29 +3338:SkIntersections::intersectRay\28SkDLine\20const&\2c\20SkDLine\20const&\29 +3339:SkIntersections::intersectRay\28SkDCubic\20const&\2c\20SkDLine\20const&\29 +3340:SkIntersections::intersectRay\28SkDConic\20const&\2c\20SkDLine\20const&\29 +3341:SkIntersections::cleanUpParallelLines\28bool\29 +3342:SkImage_Raster::onPeekBitmap\28\29\20const +3343:SkImage_Raster::SkImage_Raster\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20int\29 +3344:SkImage_Ganesh::~SkImage_Ganesh\28\29 +3345:SkImageShader::Make\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +3346:SkImageInfo::Make\28SkISize\2c\20SkColorType\2c\20SkAlphaType\29 +3347:SkImageInfo::MakeN32Premul\28SkISize\29 +3348:SkImageGenerator::getPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\29 +3349:SkImageGenerator::SkImageGenerator\28SkImageInfo\20const&\2c\20unsigned\20int\29 +3350:SkImageFilters::MatrixTransform\28SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20sk_sp\29 +3351:SkImageFilters::Blur\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +3352:SkImageFilter_Base::getInputBounds\28skif::Mapping\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\29\20const +3353:SkImageFilter_Base::filterImage\28skif::Context\20const&\29\20const +3354:SkImageFilter_Base::affectsTransparentBlack\28\29\20const +3355:SkImage::width\28\29\20const +3356:SkImage::readPixels\28GrDirectContext*\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +3357:SkImage::hasMipmaps\28\29\20const +3358:SkIcuBreakIteratorCache::makeBreakIterator\28SkUnicode::BreakType\2c\20char\20const*\29 +3359:SkIDChangeListener::List::add\28sk_sp\29 +3360: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 +3361: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 +3362:SkGradientBaseShader::AppendInterpolatedToDstStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20bool\2c\20SkGradientShader::Interpolation\20const&\2c\20SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +3363:SkGlyph::setPath\28SkArenaAlloc*\2c\20SkScalerContext*\29 +3364:SkGlyph::mask\28\29\20const +3365:SkFontScanner_FreeType::GetAxes\28FT_FaceRec_*\2c\20skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>*\29 +3366:SkFontPriv::ApproximateTransformedTextSize\28SkFont\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\20const&\29 +3367:SkFontMgr::matchFamily\28char\20const*\29\20const +3368:SkFindCubicMaxCurvature\28SkPoint\20const*\2c\20float*\29 +3369:SkExif::parse_ifd\28SkExif::Metadata&\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20bool\2c\20bool\29 +3370:SkEncodedInfo::ICCProfile::Make\28sk_sp\29 +3371:SkEmptyFontMgr::onMatchFamilyStyleCharacter\28char\20const*\2c\20SkFontStyle\20const&\2c\20char\20const**\2c\20int\2c\20int\29\20const +3372:SkEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkIRect\20const*\2c\20int\29 +3373:SkDynamicMemoryWStream::padToAlign4\28\29 +3374:SkDrawable::SkDrawable\28\29 +3375:SkDrawBase::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29\20const +3376:SkDrawBase::drawDevicePoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\2c\20SkDevice*\29\20const +3377:SkDraw::drawBitmap\28SkBitmap\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29\20const +3378:SkDevice::simplifyGlyphRunRSXFormAndRedraw\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +3379:SkDevice::setDeviceCoordinateSystem\28SkM44\20const&\2c\20SkM44\20const&\2c\20SkM44\20const&\2c\20int\2c\20int\29 +3380:SkDevice::SkDevice\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +3381:SkDataTable::at\28int\2c\20unsigned\20long*\29\20const +3382:SkData::MakeZeroInitialized\28unsigned\20long\29 +3383:SkData::MakeFromStream\28SkStream*\2c\20unsigned\20long\29 +3384:SkDQuad::dxdyAtT\28double\29\20const +3385:SkDQuad::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +3386:SkDQuad::FindExtrema\28double\20const*\2c\20double*\29 +3387:SkDCubic::subDivide\28double\2c\20double\29\20const +3388:SkDCubic::searchRoots\28double*\2c\20int\2c\20double\2c\20SkDCubic::SearchAxis\2c\20double*\29\20const +3389:SkDCubic::Coefficients\28double\20const*\2c\20double*\2c\20double*\2c\20double*\2c\20double*\29 +3390:SkDConic::dxdyAtT\28double\29\20const +3391:SkDConic::FindExtrema\28double\20const*\2c\20float\2c\20double*\29 +3392:SkCopyStreamToData\28SkStream*\29 +3393:SkContourMeasure_segTo\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20float\2c\20SkPath*\29 +3394:SkContourMeasureIter::next\28\29 +3395:SkContourMeasureIter::Impl::compute_quad_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3396:SkContourMeasureIter::Impl::compute_cubic_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3397: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 +3398:SkContourMeasure::getPosTan\28float\2c\20SkPoint*\2c\20SkPoint*\29\20const +3399:SkConic::evalAt\28float\29\20const +3400:SkConic::TransformW\28SkPoint\20const*\2c\20float\2c\20SkMatrix\20const&\29 +3401:SkColorToPMColor4f\28unsigned\20int\2c\20GrColorInfo\20const&\29 +3402:SkColorSpace::transferFn\28skcms_TransferFunction*\29\20const +3403:SkColorSpace::toXYZD50\28skcms_Matrix3x3*\29\20const +3404:SkColorPalette::SkColorPalette\28unsigned\20int\20const*\2c\20int\29 +3405:SkColorFilters::Blend\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\2c\20SkBlendMode\29 +3406:SkColor4fPrepForDst\28SkRGBA4f<\28SkAlphaType\293>\2c\20GrColorInfo\20const&\29 +3407:SkCodec::startIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const*\29 +3408:SkChopMonoCubicAtY\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +3409:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\2c\20float\29 +3410:SkCanvas::setMatrix\28SkM44\20const&\29 +3411:SkCanvas::scale\28float\2c\20float\29 +3412:SkCanvas::private_draw_shadow_rec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +3413:SkCanvas::peekPixels\28SkPixmap*\29 +3414:SkCanvas::onResetClip\28\29 +3415:SkCanvas::onClipShader\28sk_sp\2c\20SkClipOp\29 +3416:SkCanvas::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +3417:SkCanvas::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3418:SkCanvas::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3419:SkCanvas::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3420:SkCanvas::internal_private_resetClip\28\29 +3421:SkCanvas::internalSaveLayer\28SkCanvas::SaveLayerRec\20const&\2c\20SkCanvas::SaveLayerStrategy\2c\20bool\29 +3422:SkCanvas::internalDrawDeviceWithFilter\28SkDevice*\2c\20SkDevice*\2c\20SkSpan>\2c\20SkPaint\20const&\2c\20SkCanvas::DeviceCompatibleWithFilter\2c\20SkColorInfo\20const&\2c\20float\2c\20bool\29 +3423:SkCanvas::experimental_DrawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +3424:SkCanvas::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +3425:SkCanvas::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +3426:SkCanvas::drawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +3427:SkCanvas::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +3428:SkCanvas::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +3429:SkCanvas::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +3430:SkCanvas::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +3431:SkCanvas::attemptBlurredRRectDraw\28SkRRect\20const&\2c\20SkPaint\20const&\2c\20SkEnumBitMask\29 +3432:SkCanvas::SkCanvas\28SkIRect\20const&\29 +3433:SkCachedData::~SkCachedData\28\29 +3434:SkCTMShader::~SkCTMShader\28\29.1 +3435:SkBmpRLECodec::setPixel\28void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20char\29 +3436:SkBmpCodec::prepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +3437:SkBlitterClipper::apply\28SkBlitter*\2c\20SkRegion\20const*\2c\20SkIRect\20const*\29 +3438:SkBlitter::blitRegion\28SkRegion\20const&\29 +3439:SkBitmapDevice::BDDraw::~BDDraw\28\29 +3440:SkBitmapCacheDesc::Make\28SkImage\20const*\29 +3441:SkBitmap::writePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +3442:SkBitmap::setPixels\28void*\29 +3443:SkBitmap::pixelRefOrigin\28\29\20const +3444:SkBitmap::notifyPixelsChanged\28\29\20const +3445:SkBitmap::isImmutable\28\29\20const +3446:SkBitmap::allocPixels\28\29 +3447:SkBinaryWriteBuffer::writeScalarArray\28float\20const*\2c\20unsigned\20int\29 +3448:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29.1 +3449:SkBaseShadowTessellator::handleCubic\28SkMatrix\20const&\2c\20SkPoint*\29 +3450:SkBaseShadowTessellator::handleConic\28SkMatrix\20const&\2c\20SkPoint*\2c\20float\29 +3451:SkAutoPathBoundsUpdate::SkAutoPathBoundsUpdate\28SkPath*\2c\20SkRect\20const&\29 +3452:SkAutoDescriptor::SkAutoDescriptor\28SkAutoDescriptor&&\29 +3453:SkArenaAllocWithReset::SkArenaAllocWithReset\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3454:SkAnimatedImage::decodeNextFrame\28\29 +3455:SkAnimatedImage::Frame::copyTo\28SkAnimatedImage::Frame*\29\20const +3456:SkAnalyticQuadraticEdge::updateQuadratic\28\29 +3457:SkAnalyticCubicEdge::updateCubic\28bool\29 +3458:SkAlphaRuns::reset\28int\29 +3459:SkAAClip::setRect\28SkIRect\20const&\29 +3460:Simplify\28SkPath\20const&\2c\20SkPath*\29 +3461:ReconstructRow +3462:R.1 +3463:OpAsWinding::nextEdge\28Contour&\2c\20OpAsWinding::Edge\29 +3464:OT::sbix::sanitize\28hb_sanitize_context_t*\29\20const +3465:OT::post::accelerator_t::cmp_gids\28void\20const*\2c\20void\20const*\2c\20void*\29 +3466:OT::gvar::sanitize_shallow\28hb_sanitize_context_t*\29\20const +3467:OT::fvar::sanitize\28hb_sanitize_context_t*\29\20const +3468:OT::cmap::sanitize\28hb_sanitize_context_t*\29\20const +3469:OT::cmap::accelerator_t::accelerator_t\28hb_face_t*\29 +3470:OT::cff2::accelerator_templ_t>::~accelerator_templ_t\28\29 +3471:OT::avar::sanitize\28hb_sanitize_context_t*\29\20const +3472:OT::VarRegionList::evaluate\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20float*\29\20const +3473:OT::Rule::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +3474:OT::OpenTypeFontFile::sanitize\28hb_sanitize_context_t*\29\20const +3475:OT::MVAR::sanitize\28hb_sanitize_context_t*\29\20const +3476: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 +3477: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 +3478:OT::GDEFVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +3479:OT::Device::get_y_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +3480:OT::Device::get_x_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +3481:OT::ClipList::get_extents\28unsigned\20int\2c\20hb_glyph_extents_t*\2c\20OT::VarStoreInstancer\20const&\29\20const +3482:OT::ChainRule::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +3483:OT::CPAL::sanitize\28hb_sanitize_context_t*\29\20const +3484:OT::COLR::sanitize\28hb_sanitize_context_t*\29\20const +3485: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 +3486:MakeRasterCopyPriv\28SkPixmap\20const&\2c\20unsigned\20int\29 +3487:LineQuadraticIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineQuadraticIntersections::PinTPoint\29 +3488:LineQuadraticIntersections::checkCoincident\28\29 +3489:LineQuadraticIntersections::addLineNearEndPoints\28\29 +3490:LineCubicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineCubicIntersections::PinTPoint\29 +3491:LineCubicIntersections::checkCoincident\28\29 +3492:LineCubicIntersections::addLineNearEndPoints\28\29 +3493:LineConicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineConicIntersections::PinTPoint\29 +3494:LineConicIntersections::checkCoincident\28\29 +3495:LineConicIntersections::addLineNearEndPoints\28\29 +3496:GrXferProcessor::GrXferProcessor\28GrProcessor::ClassID\29 +3497:GrVertexChunkBuilder::~GrVertexChunkBuilder\28\29 +3498:GrTriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +3499:GrTriangulator::splitEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +3500:GrTriangulator::pathToPolys\28float\2c\20SkRect\20const&\2c\20bool*\29 +3501:GrTriangulator::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20GrTriangulator::VertexList*\2c\20int\29\20const +3502:GrTriangulator::emitTriangle\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20int\2c\20skgpu::VertexWriter\29\20const +3503:GrTriangulator::checkForIntersection\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +3504:GrTriangulator::applyFillType\28int\29\20const +3505:GrTriangulator::EdgeList::insert\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\29 +3506:GrTriangulator::Edge::insertBelow\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +3507:GrTriangulator::Edge::insertAbove\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +3508:GrToGLStencilFunc\28GrStencilTest\29 +3509:GrThreadSafeCache::dropAllRefs\28\29 +3510:GrTextureRenderTargetProxy::callbackDesc\28\29\20const +3511:GrTexture::GrTexture\28GrGpu*\2c\20SkISize\20const&\2c\20skgpu::Protected\2c\20GrTextureType\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +3512:GrTexture::ComputeScratchKey\28GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20skgpu::ScratchKey*\29 +3513:GrSurfaceProxyView::asTextureProxyRef\28\29\20const +3514: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 +3515:GrSurfaceProxy::GrSurfaceProxy\28sk_sp\2c\20SkBackingFit\2c\20GrSurfaceProxy::UseAllocator\29 +3516:GrSurface::setRelease\28sk_sp\29 +3517:GrStyledShape::styledBounds\28\29\20const +3518:GrStyledShape::asLine\28SkPoint*\2c\20bool*\29\20const +3519:GrStyledShape::addGenIDChangeListener\28sk_sp\29\20const +3520:GrSimpleMeshDrawOpHelper::fixedFunctionFlags\28\29\20const +3521:GrShape::setRect\28SkRect\20const&\29 +3522:GrShape::setRRect\28SkRRect\20const&\29 +3523:GrShape::segmentMask\28\29\20const +3524:GrResourceProvider::assignUniqueKeyToResource\28skgpu::UniqueKey\20const&\2c\20GrGpuResource*\29 +3525:GrResourceCache::releaseAll\28\29 +3526:GrResourceCache::getNextTimestamp\28\29 +3527:GrRenderTask::addDependency\28GrRenderTask*\29 +3528:GrRenderTargetProxy::canUseStencil\28GrCaps\20const&\29\20const +3529:GrRecordingContextPriv::addOnFlushCallbackObject\28GrOnFlushCallbackObject*\29 +3530:GrRecordingContext::~GrRecordingContext\28\29 +3531:GrRecordingContext::abandonContext\28\29 +3532: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 +3533:GrQuadUtils::TessellationHelper::EdgeEquations::reset\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\29 +3534:GrQuadUtils::ResolveAAType\28GrAAType\2c\20GrQuadAAFlags\2c\20GrQuad\20const&\2c\20GrAAType*\2c\20GrQuadAAFlags*\29 +3535:GrQuadBuffer<\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA>::append\28GrQuad\20const&\2c\20\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA&&\2c\20GrQuad\20const*\29 +3536:GrPixmap::GrPixmap\28GrImageInfo\2c\20void*\2c\20unsigned\20long\29 +3537:GrPipeline::GrPipeline\28GrPipeline::InitArgs\20const&\2c\20GrProcessorSet&&\2c\20GrAppliedClip&&\29 +3538:GrPersistentCacheUtils::UnpackCachedShaders\28SkReadBuffer*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\2c\20SkSL::ProgramInterface*\2c\20int\2c\20GrPersistentCacheUtils::ShaderMetadata*\29 +3539:GrPathUtils::convertCubicToQuads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\29 +3540:GrPathTessellationShader::Make\28GrShaderCaps\20const&\2c\20SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::tess::PatchAttribs\29 +3541:GrOp::chainConcat\28std::__2::unique_ptr>\29 +3542:GrOp::GenOpClassID\28\29 +3543:GrMeshDrawOp::PatternHelper::PatternHelper\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +3544:GrMemoryPool::Make\28unsigned\20long\2c\20unsigned\20long\29 +3545:GrMakeKeyFromImageID\28skgpu::UniqueKey*\2c\20unsigned\20int\2c\20SkIRect\20const&\29 +3546:GrImageInfo::GrImageInfo\28GrColorInfo\20const&\2c\20SkISize\20const&\29 +3547:GrGpuResource::removeScratchKey\28\29 +3548:GrGpuResource::registerWithCacheWrapped\28GrWrapCacheable\29 +3549:GrGpuResource::dumpMemoryStatisticsPriv\28SkTraceMemoryDump*\2c\20SkString\20const&\2c\20char\20const*\2c\20unsigned\20long\29\20const +3550:GrGpuBuffer::onGpuMemorySize\28\29\20const +3551:GrGpu::resolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +3552:GrGpu::executeFlushInfo\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +3553:GrGeometryProcessor::TextureSampler::TextureSampler\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +3554:GrGeometryProcessor::ProgramImpl::ComputeMatrixKeys\28GrShaderCaps\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\29 +3555:GrGLUniformHandler::getUniformVariable\28GrResourceHandle\29\20const +3556:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +3557:GrGLSemaphore::GrGLSemaphore\28GrGLGpu*\2c\20bool\29 +3558:GrGLSLVaryingHandler::~GrGLSLVaryingHandler\28\29 +3559:GrGLSLShaderBuilder::emitFunction\28SkSLType\2c\20char\20const*\2c\20SkSpan\2c\20char\20const*\29 +3560:GrGLSLProgramDataManager::setSkMatrix\28GrResourceHandle\2c\20SkMatrix\20const&\29\20const +3561:GrGLSLProgramBuilder::writeFPFunction\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +3562:GrGLSLProgramBuilder::invokeFP\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +3563:GrGLSLProgramBuilder::addRTFlipUniform\28char\20const*\29 +3564:GrGLSLFragmentShaderBuilder::dstColor\28\29 +3565:GrGLSLBlend::BlendKey\28SkBlendMode\29 +3566:GrGLProgramBuilder::~GrGLProgramBuilder\28\29 +3567:GrGLProgramBuilder::computeCountsAndStrides\28unsigned\20int\2c\20GrGeometryProcessor\20const&\2c\20bool\29 +3568:GrGLGpu::flushScissor\28GrScissorState\20const&\2c\20int\2c\20GrSurfaceOrigin\29 +3569:GrGLGpu::flushClearColor\28std::__2::array\29 +3570:GrGLGpu::deleteFence\28__GLsync*\29 +3571: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 +3572:GrGLGpu::copySurfaceAsDraw\28GrSurface*\2c\20bool\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +3573:GrGLGpu::SamplerObjectCache::~SamplerObjectCache\28\29 +3574:GrGLGpu::HWVertexArrayState::bindInternalVertexArray\28GrGLGpu*\2c\20GrBuffer\20const*\29 +3575: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 +3576:GrGLFinishCallbacks::callAll\28bool\29 +3577:GrGLBuffer::Make\28GrGLGpu*\2c\20unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +3578:GrGLAttribArrayState::enableVertexArrays\28GrGLGpu\20const*\2c\20int\2c\20GrPrimitiveRestart\29 +3579: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 +3580:GrFragmentProcessors::MakeChildFP\28SkRuntimeEffect::ChildPtr\20const&\2c\20GrFPArgs\20const&\29 +3581:GrFragmentProcessors::IsSupported\28SkMaskFilter\20const*\29 +3582:GrFragmentProcessor::makeProgramImpl\28\29\20const +3583:GrFragmentProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +3584:GrFragmentProcessor::MulInputByChildAlpha\28std::__2::unique_ptr>\29 +3585:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +3586:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29 +3587:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +3588:GrDynamicAtlas::makeNode\28GrDynamicAtlas::Node*\2c\20int\2c\20int\2c\20int\2c\20int\29 +3589:GrDrawingManager::setLastRenderTask\28GrSurfaceProxy\20const*\2c\20GrRenderTask*\29 +3590:GrDrawingManager::flushSurfaces\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +3591:GrDrawOpAtlas::updatePlot\28GrDeferredUploadTarget*\2c\20skgpu::AtlasLocator*\2c\20skgpu::Plot*\29 +3592:GrDirectContext::resetContext\28unsigned\20int\29 +3593:GrDirectContext::getResourceCacheLimit\28\29\20const +3594:GrDefaultGeoProcFactory::MakeForDeviceSpace\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +3595:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20sk_sp\29 +3596:GrColorSpaceXform::apply\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +3597:GrColorSpaceXform::Equals\28GrColorSpaceXform\20const*\2c\20GrColorSpaceXform\20const*\29 +3598:GrBufferAllocPool::unmap\28\29 +3599:GrBlurUtils::can_filter_mask\28SkMaskFilterBase\20const*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect*\29 +3600: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 +3601: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 +3602:GrBackendTextures::MakeGL\28int\2c\20int\2c\20skgpu::Mipmapped\2c\20GrGLTextureInfo\20const&\2c\20sk_sp\2c\20std::__2::basic_string_view>\29 +3603:GrBackendFormatStencilBits\28GrBackendFormat\20const&\29 +3604:GrBackendFormat::asMockCompressionType\28\29\20const +3605:GrAATriangulator::~GrAATriangulator\28\29 +3606:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrAATriangulator::EventList*\29\20const +3607:GrAAConvexTessellator::fanRing\28GrAAConvexTessellator::Ring\20const&\29 +3608:GrAAConvexTessellator::computePtAlongBisector\28int\2c\20SkPoint\20const&\2c\20int\2c\20float\2c\20SkPoint*\29\20const +3609:FT_Stream_ReadAt +3610:FT_Stream_OpenMemory +3611:FT_Set_Char_Size +3612:FT_Request_Metrics +3613:FT_Hypot +3614:FT_Get_Var_Design_Coordinates +3615:FT_Get_Paint +3616:FT_Get_MM_Var +3617:DecodeImageData +3618:Cr_z_inflate_table +3619:Cr_z_inflateReset +3620:Cr_z_deflateEnd +3621:Cr_z_copy_with_crc +3622:Compute_Point_Displacement +3623:AAT::trak::sanitize\28hb_sanitize_context_t*\29\20const +3624:AAT::ltag::sanitize\28hb_sanitize_context_t*\29\20const +3625:AAT::feat::sanitize\28hb_sanitize_context_t*\29\20const +3626:AAT::StateTable::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +3627:AAT::Lookup>\2c\20OT::IntType\2c\20false>>::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3628:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3629:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3630:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3631:zeroinfnan +3632:xyz_almost_equal\28skcms_Matrix3x3\20const&\2c\20skcms_Matrix3x3\20const&\29 +3633:wuffs_lzw__decoder__transform_io +3634:wuffs_gif__decoder__set_quirk_enabled +3635:wuffs_gif__decoder__restart_frame +3636:wuffs_gif__decoder__num_animation_loops +3637:wuffs_gif__decoder__frame_dirty_rect +3638:wuffs_gif__decoder__decode_up_to_id_part1 +3639:wuffs_gif__decoder__decode_frame +3640:write_vertex_position\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrShaderVar\20const&\2c\20SkMatrix\20const&\2c\20char\20const*\2c\20GrShaderVar*\2c\20GrResourceHandle*\29 +3641:write_passthrough_vertex_position\28GrGLSLVertexBuilder*\2c\20GrShaderVar\20const&\2c\20GrShaderVar*\29 +3642:wctomb +3643:wchar_t*\20std::__2::copy\5babi:v160004\5d\2c\20wchar_t*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20wchar_t*\29 +3644:walk_simple_edges\28SkEdge*\2c\20SkBlitter*\2c\20int\2c\20int\29 +3645:vsscanf +3646: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 +3647:void\20std::__2::vector>::assign\28skia::textlayout::FontFeature*\2c\20skia::textlayout::FontFeature*\29 +3648:void\20std::__2::vector\2c\20std::__2::allocator>>::__emplace_back_slow_path>\28sk_sp&&\29 +3649:void\20std::__2::vector>::assign\28SkString*\2c\20SkString*\29 +3650:void\20std::__2::vector>::__emplace_back_slow_path\28char\20const*&\29 +3651:void\20std::__2::vector>::__push_back_slow_path\28SkSL::FunctionDebugInfo&&\29 +3652:void\20std::__2::vector>::__push_back_slow_path\28SkMeshSpecification::Varying&&\29 +3653:void\20std::__2::vector>::__push_back_slow_path\28SkMeshSpecification::Attribute&&\29 +3654:void\20std::__2::vector>::assign\28SkFontArguments::VariationPosition::Coordinate*\2c\20SkFontArguments::VariationPosition::Coordinate*\29 +3655:void\20std::__2::vector>::__emplace_back_slow_path\28SkRect&\2c\20int&\2c\20int&\29 +3656:void\20std::__2::allocator_traits>::construct\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\29 +3657:void\20std::__2::__tree_balance_after_insert\5babi:v160004\5d*>\28std::__2::__tree_node_base*\2c\20std::__2::__tree_node_base*\29 +3658: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 +3659: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 +3660:void\20std::__2::__optional_storage_base::__assign_from\5babi:v160004\5d\20const&>\28std::__2::__optional_copy_assign_base\20const&\29 +3661:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20char*&\2c\20char*&\29 +3662:void\20sorted_merge<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +3663:void\20sorted_merge<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +3664:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.1 +3665:void\20skgpu::ganesh::SurfaceFillContext::clear<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\20const&\29 +3666:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +3667:void\20emscripten::internal::MemberAccess>::setWire\28sk_sp\20SkRuntimeEffect::TracedShader::*\20const&\2c\20SkRuntimeEffect::TracedShader&\2c\20sk_sp*\29 +3668:void\20emscripten::internal::MemberAccess::setWire\28SimpleFontStyle\20SimpleStrutStyle::*\20const&\2c\20SimpleStrutStyle&\2c\20SimpleFontStyle*\29 +3669: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 +3670:void\20SkTIntroSort\28int\2c\20int*\2c\20int\2c\20DistanceLessThan\20const&\29 +3671: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 +3672:void\20SkTIntroSort\28int\2c\20SkString*\2c\20int\2c\20bool\20\20const\28&\29\28SkString\20const&\2c\20SkString\20const&\29\29 +3673:void\20SkTIntroSort\28int\2c\20SkOpRayHit**\2c\20int\2c\20bool\20\20const\28&\29\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29\29 +3674: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 +3675: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 +3676: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 +3677: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 +3678:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\20const\28&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +3679:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\28*\20const&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +3680:void\20SkTIntroSort\28int\2c\20Edge*\2c\20int\2c\20EdgeLT\20const&\29 +3681: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::BaseCoord\29 +3682: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 +3683:virtual\20thunk\20to\20GrGLTexture::onSetLabel\28\29 +3684:virtual\20thunk\20to\20GrGLTexture::backendFormat\28\29\20const +3685:vfiprintf +3686:validate_texel_levels\28SkISize\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20GrCaps\20const*\29 +3687:utf8TextClose\28UText*\29 +3688:utf8TextAccess\28UText*\2c\20long\20long\2c\20signed\20char\29 +3689:utext_openConstUnicodeString_74 +3690:utext_moveIndex32_74 +3691:utext_getPreviousNativeIndex_74 +3692:utext_extract_74 +3693:ures_resetIterator_74 +3694:ures_initStackObject_74 +3695:ures_getInt_74 +3696:ures_getIntVector_74 +3697:ures_copyResb_74 +3698:uprv_stricmp_74 +3699:uprv_getMaxValues_74 +3700:uprv_compareInvAscii_74 +3701:upropsvec_addPropertyStarts_74 +3702:uprops_getSource_74 +3703:uprops_addPropertyStarts_74 +3704:unsigned\20short\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3705:unsigned\20long\20long\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3706:unsigned\20int\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3707:unsigned\20int\20const*\20std::__2::lower_bound\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\2c\20unsigned\20long\20const&\29 +3708:unorm_getFCD16_74 +3709:ultag_isUnicodeLocaleKey_74 +3710:ultag_isScriptSubtag_74 +3711:ultag_isLanguageSubtag_74 +3712:ultag_isExtensionSubtags_74 +3713:ultag_getTKeyStart_74 +3714:ulocimp_toBcpType_74 +3715:uloc_toUnicodeLocaleType_74 +3716:uloc_toUnicodeLocaleKey_74 +3717:uloc_setKeywordValue_74 +3718:uloc_getTableStringWithFallback_74 +3719:uloc_getScript_74 +3720:uloc_getName_74 +3721:uloc_getLanguage_74 +3722:uloc_getDisplayName_74 +3723:uloc_getCountry_74 +3724:uloc_canonicalize_74 +3725:uenum_unext_74 +3726:udata_open_74 +3727:udata_checkCommonData_74 +3728:ucptrie_internalU8PrevIndex_74 +3729:uchar_addPropertyStarts_74 +3730:ucase_toFullUpper_74 +3731:ucase_toFullLower_74 +3732:ucase_toFullFolding_74 +3733:ucase_getTypeOrIgnorable_74 +3734:ucase_addPropertyStarts_74 +3735:ubidi_getPairedBracketType_74 +3736:ubidi_close_74 +3737:u_unescapeAt_74 +3738:u_strFindFirst_74 +3739:u_memrchr_74 +3740:u_memcmp_74 +3741:u_hasBinaryProperty_74 +3742:u_getPropertyEnum_74 +3743:tt_size_run_prep +3744:tt_size_done_bytecode +3745:tt_sbit_decoder_load_image +3746:tt_face_vary_cvt +3747:tt_face_palette_set +3748:tt_face_load_cvt +3749:tt_face_get_metrics +3750:tt_done_blend +3751:tt_delta_interpolate +3752:tt_cmap4_set_range +3753:tt_cmap4_next +3754:tt_cmap4_char_map_linear +3755:tt_cmap4_char_map_binary +3756:tt_cmap14_get_def_chars +3757:tt_cmap13_next +3758:tt_cmap12_next +3759:tt_cmap12_init +3760:tt_cmap12_char_map_binary +3761:tt_apply_mvar +3762:toParagraphStyle\28SimpleParagraphStyle\20const&\29 +3763:tanhf +3764:t1_lookup_glyph_by_stdcharcode_ps +3765:t1_builder_close_contour +3766:t1_builder_check_points +3767:strtoull +3768:strtoll_l +3769:strtol +3770:strspn +3771:store_int +3772:std::logic_error::~logic_error\28\29 +3773:std::logic_error::logic_error\28char\20const*\29 +3774:std::exception::exception\5babi:v160004\5d\28\29 +3775:std::__2::vector>::max_size\28\29\20const +3776:std::__2::vector>::__construct_at_end\28unsigned\20long\29 +3777:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +3778:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::locale::facet**\29 +3779:std::__2::vector>::__annotate_shrink\5babi:v160004\5d\28unsigned\20long\29\20const +3780:std::__2::vector>::__annotate_new\5babi:v160004\5d\28unsigned\20long\29\20const +3781:std::__2::vector>::__annotate_delete\5babi:v160004\5d\28\29\20const +3782:std::__2::vector>::insert\28std::__2::__wrap_iter\2c\20float&&\29 +3783:std::__2::vector>::__append\28unsigned\20long\29 +3784:std::__2::unique_ptr::operator=\5babi:v160004\5d\28std::__2::unique_ptr&&\29 +3785:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3786: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 +3787:std::__2::unique_ptr>::operator=\5babi:v160004\5d\28std::nullptr_t\29 +3788:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda0'\28\29::operator\28\29\28\29\20const +3789:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda'\28\29::operator\28\29\28\29\20const +3790:std::__2::to_string\28unsigned\20long\29 +3791: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 +3792:std::__2::time_put>>::~time_put\28\29 +3793: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 +3794: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 +3795: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 +3796: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 +3797: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 +3798: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 +3799:std::__2::reverse_iterator::operator++\5babi:v160004\5d\28\29 +3800:std::__2::reverse_iterator::operator*\5babi:v160004\5d\28\29\20const +3801:std::__2::priority_queue>\2c\20GrAATriangulator::EventComparator>::push\28GrAATriangulator::Event*\20const&\29 +3802: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 +3803: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 +3804:std::__2::pair\2c\20std::__2::allocator>>>::pair\28std::__2::pair\2c\20std::__2::allocator>>>&&\29 +3805:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28wchar_t\29 +3806:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28char\29 +3807:std::__2::optional&\20std::__2::optional::operator=\5babi:v160004\5d\28SkPath\20const&\29 +3808:std::__2::numpunct::~numpunct\28\29 +3809:std::__2::numpunct::~numpunct\28\29 +3810: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 +3811:std::__2::num_get>>\20const&\20std::__2::use_facet\5babi:v160004\5d>>>\28std::__2::locale\20const&\29 +3812: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 +3813:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3814:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3815:std::__2::moneypunct::do_negative_sign\28\29\20const +3816:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3817:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3818:std::__2::moneypunct::do_negative_sign\28\29\20const +3819: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 +3820: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 +3821:std::__2::locale::__imp::~__imp\28\29 +3822: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 +3823: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 +3824:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28char*\2c\20char*\29 +3825:std::__2::iterator_traits::difference_type\20std::__2::__distance\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::random_access_iterator_tag\29 +3826:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +3827:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +3828:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +3829:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +3830:std::__2::ios_base::width\5babi:v160004\5d\28long\29 +3831:std::__2::ios_base::imbue\28std::__2::locale\20const&\29 +3832:std::__2::ios_base::__call_callbacks\28std::__2::ios_base::event\29 +3833:std::__2::hash::operator\28\29\28skia::textlayout::FontArguments\20const&\29\20const +3834:std::__2::enable_if::value\20&&\20is_move_assignable::value\2c\20void>::type\20std::__2::swap\5babi:v160004\5d\28char&\2c\20char&\29 +3835: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 +3836: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 +3837: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 +3838:std::__2::deque>::__add_back_capacity\28\29 +3839:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28sktext::gpu::TextBlobRedrawCoordinator*\29\20const +3840:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28sktext::GlyphRunBuilder*\29\20const +3841:std::__2::ctype::~ctype\28\29 +3842:std::__2::codecvt::~codecvt\28\29 +3843: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 +3844: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 +3845:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +3846: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 +3847: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 +3848:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +3849: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 +3850:std::__2::char_traits::not_eof\28int\29 +3851:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28\29\20const +3852:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29 +3853: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 +3854: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 +3855:std::__2::basic_string\2c\20std::__2::allocator>::resize\28unsigned\20long\2c\20char\29 +3856:std::__2::basic_string\2c\20std::__2::allocator>::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +3857:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20char\29 +3858:std::__2::basic_string\2c\20std::__2::allocator>::basic_string>\2c\20void>\28std::__2::basic_string_view>\20const&\29 +3859:std::__2::basic_string\2c\20std::__2::allocator>::__throw_out_of_range\5babi:v160004\5d\28\29\20const +3860:std::__2::basic_string\2c\20std::__2::allocator>::__null_terminate_at\5babi:v160004\5d\28char*\2c\20unsigned\20long\29 +3861: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 +3862:std::__2::basic_string\2c\20std::__2::allocator>&\20skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::emplace_back\28char\20const*&&\29 +3863:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +3864:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +3865:std::__2::basic_streambuf>::sputc\5babi:v160004\5d\28char\29 +3866:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +3867:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +3868:std::__2::basic_ostream>::~basic_ostream\28\29.2 +3869:std::__2::basic_ostream>::sentry::~sentry\28\29 +3870:std::__2::basic_ostream>::sentry::sentry\28std::__2::basic_ostream>&\29 +3871:std::__2::basic_ostream>::operator<<\28float\29 +3872:std::__2::basic_ostream>::flush\28\29 +3873:std::__2::basic_istream>::~basic_istream\28\29.2 +3874:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\2c\20unsigned\20long\29 +3875:std::__2::allocator::deallocate\5babi:v160004\5d\28wchar_t*\2c\20unsigned\20long\29 +3876:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3877:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3878:std::__2::__wrap_iter\20std::__2::vector>::insert\2c\200>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +3879:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +3880:std::__2::__time_put::__time_put\5babi:v160004\5d\28\29 +3881:std::__2::__time_put::__do_put\28char*\2c\20char*&\2c\20tm\20const*\2c\20char\2c\20char\29\20const +3882:std::__2::__split_buffer>::push_back\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +3883:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +3884: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 +3885: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 +3886: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 +3887: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 +3888: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 +3889: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 +3890: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 +3891: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 +3892:std::__2::__libcpp_sscanf_l\28char\20const*\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +3893: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 +3894:std::__2::__libcpp_mb_cur_max_l\5babi:v160004\5d\28__locale_struct*\29 +3895:std::__2::__libcpp_deallocate\5babi:v160004\5d\28void*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3896:std::__2::__libcpp_allocate\5babi:v160004\5d\28unsigned\20long\2c\20unsigned\20long\29 +3897:std::__2::__is_overaligned_for_new\5babi:v160004\5d\28unsigned\20long\29 +3898:std::__2::__function::__value_func::swap\5babi:v160004\5d\28std::__2::__function::__value_func&\29 +3899: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 +3900: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 +3901:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +3902:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::destroy\28\29 +3903:std::__2::__constexpr_wcslen\5babi:v160004\5d\28wchar_t\20const*\29 +3904:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::__sso_allocator&\2c\20unsigned\20long\29 +3905:start_input_pass +3906:sktext::gpu::can_use_direct\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +3907:sktext::gpu::build_distance_adjust_table\28float\29 +3908:sktext::gpu::VertexFiller::opMaskType\28\29\20const +3909:sktext::gpu::VertexFiller::isLCD\28\29\20const +3910:sktext::gpu::VertexFiller::fillVertexData\28int\2c\20int\2c\20SkSpan\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkIRect\2c\20void*\29\20const +3911:sktext::gpu::TextBlobRedrawCoordinator::internalRemove\28sktext::gpu::TextBlob*\29 +3912: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 +3913: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 +3914: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 +3915:sktext::gpu::SubRunContainer::EstimateAllocSize\28sktext::GlyphRunList\20const&\29 +3916:sktext::gpu::SubRunAllocator::SubRunAllocator\28char*\2c\20int\2c\20int\29 +3917:sktext::gpu::StrikeCache::~StrikeCache\28\29 +3918:sktext::gpu::SlugImpl::Make\28SkMatrix\20const&\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\29 +3919:sktext::gpu::BagOfBytes::BagOfBytes\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29::$_1::operator\28\29\28\29\20const +3920:sktext::glyphrun_source_bounds\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkZip\2c\20SkSpan\29 +3921:sktext::SkStrikePromise::resetStrike\28\29 +3922:sktext::GlyphRunList::makeBlob\28\29\20const +3923:sktext::GlyphRunBuilder::blobToGlyphRunList\28SkTextBlob\20const&\2c\20SkPoint\29 +3924:skstd::to_string\28float\29 +3925:skpathutils::FillPathWithPaint\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkPath*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29 +3926:skjpeg_err_exit\28jpeg_common_struct*\29 +3927:skip_string +3928:skip_procedure +3929:skif::\28anonymous\20namespace\29::decompose_transform\28SkMatrix\20const&\2c\20SkPoint\2c\20SkMatrix*\2c\20SkMatrix*\29 +3930:skif::Mapping::adjustLayerSpace\28SkMatrix\20const&\29 +3931:skif::FilterResult::imageAndOffset\28skif::Context\20const&\29\20const +3932:skif::FilterResult::draw\28skif::Context\20const&\2c\20SkDevice*\2c\20SkBlender\20const*\29\20const +3933:skif::FilterResult::drawAnalyzedImage\28skif::Context\20const&\2c\20SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkEnumBitMask\2c\20SkBlender\20const*\29\20const +3934:skif::FilterResult::MakeFromImage\28skif::Context\20const&\2c\20sk_sp\2c\20SkRect\2c\20skif::ParameterSpace\2c\20SkSamplingOptions\20const&\29 +3935:skif::FilterResult::FilterResult\28sk_sp\2c\20skif::LayerSpace\20const&\29 +3936:skif::FilterResult::FilterResult\28\29 +3937:skif::Context::withNewSource\28skif::FilterResult\20const&\29\20const +3938:skia_private::THashTable::Traits>::set\28unsigned\20long\20long\29 +3939:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3940:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +3941:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::removeIfExists\28unsigned\20int\20const&\29 +3942: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 +3943: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 +3944: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 +3945:skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3946:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\29 +3947:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::find\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +3948:skia_private::THashTable::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3949:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\29 +3950:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::resize\28int\29 +3951: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 +3952: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 +3953:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28skgpu::ganesh::SmallPathShapeData*&&\29 +3954:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +3955:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::uncheckedSet\28sk_sp&&\29 +3956:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::resize\28int\29 +3957: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 +3958: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 +3959:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +3960:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +3961:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +3962:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +3963:skia_private::THashTable::uncheckedSet\28SkResourceCache::Rec*&&\29 +3964:skia_private::THashTable::resize\28int\29 +3965:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::set\28SkLRUCache::Entry*\29 +3966:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::resize\28int\29 +3967:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::removeIfExists\28unsigned\20int\20const&\29 +3968:skia_private::THashTable>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::resize\28int\29 +3969: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 +3970:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::resize\28int\29 +3971:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrGpuResource*&&\29 +3972:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +3973:skia_private::THashMap\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::set\28unsigned\20int\2c\20sk_sp\20\28*\29\28SkReadBuffer&\29\29 +3974:skia_private::THashMap::set\28int\2c\20int\29 +3975:skia_private::THashMap>\2c\20SkGoodHash>::remove\28SkImageFilter\20const*\20const&\29 +3976:skia_private::TArray::push_back_raw\28int\29 +3977:skia_private::TArray::resize_back\28int\29 +3978:skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::checkRealloc\28int\2c\20double\29 +3979:skia_private::TArray::~TArray\28\29 +3980:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +3981:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3982:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +3983:skia_private::TArray::BufferFinishedMessage\2c\20false>::operator=\28skia_private::TArray::BufferFinishedMessage\2c\20false>&&\29 +3984:skia_private::TArray::BufferFinishedMessage\2c\20false>::installDataAndUpdateCapacity\28SkSpan\29 +3985:skia_private::TArray::Plane\2c\20false>::move\28void*\29 +3986:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3987: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::FixedArray<4\2c\20signed\20char>\29::ReorderedArgument&&\29 +3988:skia_private::TArray::TArray\28skia_private::TArray&&\29 +3989:skia_private::TArray::swap\28skia_private::TArray&\29 +3990:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +3991:skia_private::TArray::push_back_raw\28int\29 +3992:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +3993:skia_private::TArray::push_back_raw\28int\29 +3994:skia_private::TArray::push_back_raw\28int\29 +3995:skia_private::TArray::move_back_n\28int\2c\20GrTextureProxy**\29 +3996:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3997:skia_private::TArray::push_back_n\28int\2c\20EllipticalRRectOp::RRect\20const*\29 +3998:skia_png_zfree +3999:skia_png_write_zTXt +4000:skia_png_write_tIME +4001:skia_png_write_tEXt +4002:skia_png_write_iTXt +4003:skia_png_set_write_fn +4004:skia_png_set_strip_16 +4005:skia_png_set_read_user_transform_fn +4006:skia_png_set_read_user_chunk_fn +4007:skia_png_set_option +4008:skia_png_set_mem_fn +4009:skia_png_set_expand_gray_1_2_4_to_8 +4010:skia_png_set_error_fn +4011:skia_png_set_compression_level +4012:skia_png_set_IHDR +4013:skia_png_read_filter_row +4014:skia_png_process_IDAT_data +4015:skia_png_icc_set_sRGB +4016:skia_png_icc_check_tag_table +4017:skia_png_icc_check_header +4018:skia_png_get_uint_31 +4019:skia_png_get_sBIT +4020:skia_png_get_rowbytes +4021:skia_png_get_error_ptr +4022:skia_png_get_IHDR +4023:skia_png_do_swap +4024:skia_png_do_read_transformations +4025:skia_png_do_read_interlace +4026:skia_png_do_packswap +4027:skia_png_do_invert +4028:skia_png_do_gray_to_rgb +4029:skia_png_do_expand +4030:skia_png_do_check_palette_indexes +4031:skia_png_do_bgr +4032:skia_png_destroy_png_struct +4033:skia_png_destroy_gamma_table +4034:skia_png_create_png_struct +4035:skia_png_create_info_struct +4036:skia_png_crc_read +4037:skia_png_colorspace_sync_info +4038:skia_png_check_IHDR +4039:skia::textlayout::TypefaceFontStyleSet::matchStyle\28SkFontStyle\20const&\29 +4040:skia::textlayout::TextStyle::matchOneAttribute\28skia::textlayout::StyleType\2c\20skia::textlayout::TextStyle\20const&\29\20const +4041:skia::textlayout::TextStyle::equals\28skia::textlayout::TextStyle\20const&\29\20const +4042:skia::textlayout::TextShadow::operator!=\28skia::textlayout::TextShadow\20const&\29\20const +4043:skia::textlayout::TextLine::paint\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\29 +4044:skia::textlayout::TextLine::iterateThroughClustersInGlyphsOrder\28bool\2c\20bool\2c\20std::__2::function\20const&\29\20const::$_0::operator\28\29\28unsigned\20long\20const&\29\20const +4045: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 +4046:skia::textlayout::TextLine::getMetrics\28\29\20const +4047:skia::textlayout::TextLine::ensureTextBlobCachePopulated\28\29 +4048:skia::textlayout::TextLine::buildTextBlob\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +4049: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 +4050: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 +4051:skia::textlayout::Run::shift\28skia::textlayout::Cluster\20const*\2c\20float\29 +4052:skia::textlayout::Run::newRunBuffer\28\29 +4053:skia::textlayout::Run::findLimitingGlyphClusters\28skia::textlayout::SkRange\29\20const +4054:skia::textlayout::Run::addSpacesAtTheEnd\28float\2c\20skia::textlayout::Cluster*\29 +4055:skia::textlayout::ParagraphStyle::effective_align\28\29\20const +4056:skia::textlayout::ParagraphStyle::ParagraphStyle\28\29 +4057:skia::textlayout::ParagraphPainter::DecorationStyle::DecorationStyle\28unsigned\20int\2c\20float\2c\20std::__2::optional\29 +4058:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29 +4059:skia::textlayout::ParagraphImpl::text\28skia::textlayout::SkRange\29 +4060:skia::textlayout::ParagraphImpl::resolveStrut\28\29 +4061:skia::textlayout::ParagraphImpl::getGlyphInfoAtUTF16Offset\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +4062:skia::textlayout::ParagraphImpl::getGlyphClusterAt\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +4063:skia::textlayout::ParagraphImpl::findPreviousGraphemeBoundary\28unsigned\20long\29\20const +4064:skia::textlayout::ParagraphImpl::computeEmptyMetrics\28\29 +4065:skia::textlayout::ParagraphImpl::clusters\28skia::textlayout::SkRange\29 +4066:skia::textlayout::ParagraphImpl::block\28unsigned\20long\29 +4067:skia::textlayout::ParagraphCacheValue::~ParagraphCacheValue\28\29 +4068:skia::textlayout::ParagraphCacheKey::ParagraphCacheKey\28skia::textlayout::ParagraphImpl\20const*\29 +4069:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29 +4070:skia::textlayout::ParagraphBuilderImpl::make\28skia::textlayout::ParagraphStyle\20const&\2c\20sk_sp\2c\20sk_sp\29 +4071:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\2c\20bool\29 +4072:skia::textlayout::ParagraphBuilderImpl::ParagraphBuilderImpl\28skia::textlayout::ParagraphStyle\20const&\2c\20sk_sp\2c\20sk_sp\29 +4073:skia::textlayout::Paragraph::~Paragraph\28\29 +4074:skia::textlayout::OneLineShaper::clusteredText\28skia::textlayout::SkRange&\29 +4075:skia::textlayout::FontCollection::~FontCollection\28\29 +4076:skia::textlayout::FontCollection::matchTypeface\28SkString\20const&\2c\20SkFontStyle\29 +4077:skia::textlayout::FontCollection::defaultFallback\28int\2c\20SkFontStyle\2c\20SkString\20const&\29 +4078:skia::textlayout::FontCollection::FamilyKey::Hasher::operator\28\29\28skia::textlayout::FontCollection::FamilyKey\20const&\29\20const +4079:skgpu::tess::\28anonymous\20namespace\29::write_curve_index_buffer_base_index\28skgpu::VertexWriter\2c\20unsigned\20long\2c\20unsigned\20short\29 +4080:skgpu::tess::StrokeIterator::next\28\29 +4081:skgpu::tess::StrokeIterator::finishOpenContour\28\29 +4082:skgpu::tess::PreChopPathCurves\28float\2c\20SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +4083:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29 +4084: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 +4085:skgpu::ganesh::\28anonymous\20namespace\29::ChopPathIfNecessary\28SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20SkStrokeRec\20const&\2c\20SkPath*\29 +4086:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::recordDraw\28GrMeshDrawTarget*\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20int\2c\20unsigned\20short*\29 +4087: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 +4088:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::AAConvexPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrUserStencilSettings\20const*\29 +4089: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 +4090:skgpu::ganesh::TessellationPathRenderer::IsSupported\28GrCaps\20const&\29 +4091:skgpu::ganesh::SurfaceFillContext::fillRectToRectWithFP\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +4092:skgpu::ganesh::SurfaceFillContext::blitTexture\28GrSurfaceProxyView\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\29 +4093:skgpu::ganesh::SurfaceFillContext::addOp\28std::__2::unique_ptr>\29 +4094:skgpu::ganesh::SurfaceFillContext::addDrawOp\28std::__2::unique_ptr>\29 +4095:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29.1 +4096:skgpu::ganesh::SurfaceDrawContext::drawVertices\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20sk_sp\2c\20GrPrimitiveType*\2c\20bool\29 +4097: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 +4098: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 +4099:skgpu::ganesh::SurfaceDrawContext::drawStrokedLine\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPoint\20const*\2c\20SkStrokeRec\20const&\29 +4100:skgpu::ganesh::SurfaceDrawContext::drawRegion\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRegion\20const&\2c\20GrStyle\20const&\2c\20GrUserStencilSettings\20const*\29 +4101:skgpu::ganesh::SurfaceDrawContext::drawOval\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\29 +4102:skgpu::ganesh::SurfaceDrawContext::SurfaceDrawContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +4103:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29 +4104:skgpu::ganesh::SurfaceContext::writePixels\28GrDirectContext*\2c\20GrCPixmap\2c\20SkIPoint\29 +4105:skgpu::ganesh::SurfaceContext::copy\28sk_sp\2c\20SkIRect\2c\20SkIPoint\29 +4106:skgpu::ganesh::SurfaceContext::copyScaled\28sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20SkFilterMode\29 +4107: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 +4108: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 +4109: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 +4110:skgpu::ganesh::SurfaceContext::SurfaceContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +4111:skgpu::ganesh::StrokeTessellator::draw\28GrOpFlushState*\29\20const +4112:skgpu::ganesh::StrokeTessellateOp::prePrepareTessellator\28GrTessellationShader::ProgramArgs&&\2c\20GrAppliedClip&&\29 +4113: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 +4114: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 +4115:skgpu::ganesh::StencilMaskHelper::drawShape\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20SkRegion::Op\2c\20GrAA\29 +4116: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 +4117:skgpu::ganesh::SmallPathAtlasMgr::findOrCreate\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +4118:skgpu::ganesh::SmallPathAtlasMgr::deleteCacheEntry\28skgpu::ganesh::SmallPathShapeData*\29 +4119:skgpu::ganesh::ShadowRRectOp::Make\28GrRecordingContext*\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20float\2c\20float\29 +4120: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 +4121:skgpu::ganesh::RasterAsView\28GrRecordingContext*\2c\20SkImage_Raster\20const*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +4122:skgpu::ganesh::QuadPerEdgeAA::Tessellator::append\28GrQuad*\2c\20GrQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20GrQuadAAFlags\29 +4123:skgpu::ganesh::QuadPerEdgeAA::Tessellator::Tessellator\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29 +4124:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::initializeAttrs\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\29 +4125:skgpu::ganesh::QuadPerEdgeAA::IssueDraw\28GrCaps\20const&\2c\20GrOpsRenderPass*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +4126:skgpu::ganesh::QuadPerEdgeAA::GetIndexBuffer\28GrMeshDrawTarget*\2c\20skgpu::ganesh::QuadPerEdgeAA::IndexBufferOption\29 +4127:skgpu::ganesh::PathTessellateOp::usesMSAA\28\29\20const +4128:skgpu::ganesh::PathTessellateOp::prepareTessellator\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +4129:skgpu::ganesh::PathTessellateOp::PathTessellateOp\28SkArenaAlloc*\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrPaint&&\2c\20SkRect\20const&\29 +4130:skgpu::ganesh::PathStencilCoverOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +4131:skgpu::ganesh::PathInnerTriangulateOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +4132:skgpu::ganesh::PathCurveTessellator::~PathCurveTessellator\28\29 +4133:skgpu::ganesh::PathCurveTessellator::prepareWithTriangles\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20GrTriangulator::BreadcrumbTriangleList*\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +4134:skgpu::ganesh::OpsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +4135:skgpu::ganesh::OpsTask::onExecute\28GrOpFlushState*\29 +4136:skgpu::ganesh::OpsTask::addOp\28GrDrawingManager*\2c\20std::__2::unique_ptr>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +4137: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 +4138:skgpu::ganesh::OpsTask::OpsTask\28GrDrawingManager*\2c\20GrSurfaceProxyView\2c\20GrAuditTrail*\2c\20sk_sp\29 +4139: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 +4140:skgpu::ganesh::MakeFragmentProcessorFromView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +4141:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29 +4142:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29 +4143: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 +4144: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 +4145: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 +4146:skgpu::ganesh::DrawAtlasPathOp::prepareProgram\28GrCaps\20const&\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +4147:skgpu::ganesh::Device::replaceBackingProxy\28SkSurface::ContentChangeMode\2c\20sk_sp\2c\20GrColorType\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +4148:skgpu::ganesh::Device::makeSpecial\28SkBitmap\20const&\29 +4149:skgpu::ganesh::Device::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +4150: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 +4151:skgpu::ganesh::Device::discard\28\29 +4152:skgpu::ganesh::Device::android_utils_clipAsRgn\28SkRegion*\29\20const +4153: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 +4154:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +4155:skgpu::ganesh::CopyView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\2c\20std::__2::basic_string_view>\29 +4156:skgpu::ganesh::ClipStack::clipPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrAA\2c\20SkClipOp\29 +4157:skgpu::ganesh::ClipStack::SaveRecord::replaceWithElement\28skgpu::ganesh::ClipStack::RawElement&&\2c\20SkTBlockList*\29 +4158:skgpu::ganesh::ClipStack::SaveRecord::addElement\28skgpu::ganesh::ClipStack::RawElement&&\2c\20SkTBlockList*\29 +4159:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::Draw\20const&\29\20const +4160:skgpu::ganesh::AtlasTextOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +4161: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 +4162:skgpu::ganesh::AtlasRenderTask::stencilAtlasRect\28GrRecordingContext*\2c\20SkRect\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrUserStencilSettings\20const*\29 +4163:skgpu::ganesh::AtlasRenderTask::addPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkIPoint\2c\20int\2c\20int\2c\20bool\2c\20SkIPoint16*\29 +4164:skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +4165: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 +4166:skgpu::ganesh::AsFragmentProcessor\28GrRecordingContext*\2c\20SkImage\20const*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +4167:skgpu::TiledTextureUtils::OptimizeSampleArea\28SkISize\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkRect*\2c\20SkRect*\2c\20SkMatrix*\29 +4168:skgpu::TClientMappedBufferManager::process\28\29 +4169:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29 +4170:skgpu::RectanizerSkyline::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +4171:skgpu::Plot::Plot\28int\2c\20int\2c\20skgpu::AtlasGenerationCounter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20SkColorType\2c\20unsigned\20long\29 +4172:skgpu::GetReducedBlendModeInfo\28SkBlendMode\29 +4173:skgpu::CreateIntegralTable\28int\29 +4174:skgpu::BlendFuncName\28SkBlendMode\29 +4175:skcms_private::baseline::exec_stages\28skcms_private::Op\20const*\2c\20void\20const**\2c\20char\20const*\2c\20char*\2c\20int\29 +4176: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 +4177:skcms_ApproximatelyEqualProfiles +4178:sk_sp\20sk_make_sp\2c\20SkSurfaceProps\20const*&>\28SkImageInfo\20const&\2c\20sk_sp&&\2c\20SkSurfaceProps\20const*&\29 +4179:sk_sp*\20emscripten::internal::MemberAccess>::getWire\28sk_sp\20SkRuntimeEffect::TracedShader::*\20const&\2c\20SkRuntimeEffect::TracedShader\20const&\29 +4180:sk_fopen\28char\20const*\2c\20SkFILE_Flags\29 +4181:sk_fgetsize\28_IO_FILE*\29 +4182:sk_fclose\28_IO_FILE*\29 +4183:sk_error_fn\28png_struct_def*\2c\20char\20const*\29 +4184:setup_masks_arabic_plan\28arabic_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_script_t\29 +4185:set_khr_debug_label\28GrGLGpu*\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +4186:setThrew +4187:setCommonICUData\28UDataMemory*\2c\20signed\20char\2c\20UErrorCode*\29 +4188:serialize_image\28SkImage\20const*\2c\20SkSerialProcs\29 +4189:send_tree +4190:sect_with_vertical\28SkPoint\20const*\2c\20float\29 +4191:sect_with_horizontal\28SkPoint\20const*\2c\20float\29 +4192:scanexp +4193:scalbnl +4194:rewind_if_necessary\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +4195:resolveImplicitLevels\28UBiDi*\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +4196:reset_and_decode_image_config\28wuffs_gif__decoder__struct*\2c\20wuffs_base__image_config__struct*\2c\20wuffs_base__io_buffer__struct*\2c\20SkStream*\29 +4197:res_unload_74 +4198:res_countArrayItems_74 +4199:renderbuffer_storage_msaa\28GrGLGpu*\2c\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +4200: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 +4201:reclassify_vertex\28TriangulationVertex*\2c\20SkPoint\20const*\2c\20int\2c\20ReflexHash*\2c\20SkTInternalLList*\29 +4202:quad_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4203:quad_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4204:quad_in_line\28SkPoint\20const*\29 +4205:psh_hint_table_init +4206:psh_hint_table_find_strong_points +4207:psh_hint_table_activate_mask +4208:psh_hint_align +4209:psh_glyph_interpolate_strong_points +4210:psh_glyph_interpolate_other_points +4211:psh_glyph_interpolate_normal_points +4212:psh_blues_set_zones +4213:ps_parser_load_field +4214:ps_dimension_end +4215:ps_dimension_done +4216:ps_builder_start_point +4217:printf_core +4218:premultiply_argb_as_rgba\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +4219:premultiply_argb_as_bgra\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +4220: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 +4221:portable::uniform_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4222:portable::set_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4223:portable::memset64\28unsigned\20long\20long*\2c\20unsigned\20long\20long\2c\20int\29 +4224:portable::copy_from_indirect_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4225:portable::copy_2_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4226:portable::check_decal_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4227:pop_arg +4228:pntz +4229:png_inflate +4230:png_deflate_claim +4231:png_decompress_chunk +4232:png_cache_unknown_chunk +4233:operator==\28SkPaint\20const&\2c\20SkPaint\20const&\29 +4234:open_face +4235:openCommonData\28char\20const*\2c\20int\2c\20UErrorCode*\29 +4236:offsetTOCEntryCount\28UDataMemory\20const*\29 +4237:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::vertexStride\28SkMatrix\20const&\29\20const +4238:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4239:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4240:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +4241:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::glyphs\28\29\20const +4242:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +4243:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +4244:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +4245:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::size\28\29\20const +4246:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +4247:nearly_equal\28double\2c\20double\29 +4248:mbsrtowcs +4249: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 +4250:make_tiled_gradient\28GrFPArgs\20const&\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20bool\2c\20bool\29 +4251:make_premul_effect\28std::__2::unique_ptr>\29 +4252: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 +4253:make_clamped_gradient\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20bool\29 +4254:make_bmp_proxy\28GrProxyProvider*\2c\20SkBitmap\20const&\2c\20GrColorType\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +4255:longest_match +4256:long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +4257:long\20long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +4258:long\20double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +4259:load_post_names +4260:line_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4261:line_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4262:legalfunc$_embind_register_bigint +4263:jpeg_open_backing_store +4264:jpeg_destroy +4265:jpeg_alloc_huff_table +4266:jinit_upsampler +4267:isSpecialTypeCodepoints\28char\20const*\29 +4268:internal_memalign +4269:int\20icu_74::\28anonymous\20namespace\29::MixedBlocks::findBlock\28unsigned\20short\20const*\2c\20unsigned\20short\20const*\2c\20int\29\20const +4270:int\20icu_74::\28anonymous\20namespace\29::MixedBlocks::findBlock\28unsigned\20short\20const*\2c\20unsigned\20int\20const*\2c\20int\29\20const +4271:insertRootBundle\28UResourceDataEntry*&\2c\20UErrorCode*\29 +4272: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 +4273:init_error_limit +4274:init_block +4275:image_filter_color_type\28SkColorInfo\20const&\29 +4276:icu_74::set32x64Bits\28unsigned\20int*\2c\20int\2c\20int\29 +4277:icu_74::getExtName\28unsigned\20int\2c\20char*\2c\20unsigned\20short\29 +4278:icu_74::compareUnicodeString\28UElement\2c\20UElement\29 +4279:icu_74::cloneUnicodeString\28UElement*\2c\20UElement*\29 +4280:icu_74::\28anonymous\20namespace\29::mungeCharName\28char*\2c\20char\20const*\2c\20int\29 +4281:icu_74::\28anonymous\20namespace\29::MutableCodePointTrie::getDataBlock\28int\29 +4282:icu_74::XLikelySubtagsData::readLSREncodedStrings\28icu_74::ResourceTable\20const&\2c\20char\20const*\2c\20icu_74::ResourceValue&\2c\20icu_74::ResourceArray\20const&\2c\20icu_74::LocalMemory&\2c\20int&\2c\20UErrorCode&\29 +4283:icu_74::XLikelySubtags::~XLikelySubtags\28\29 +4284:icu_74::XLikelySubtags::initLikelySubtags\28UErrorCode&\29 +4285:icu_74::UnicodeString::setCharAt\28int\2c\20char16_t\29 +4286:icu_74::UnicodeString::indexOf\28char16_t\20const*\2c\20int\2c\20int\2c\20int\2c\20int\29\20const +4287:icu_74::UnicodeString::doReverse\28int\2c\20int\29 +4288:icu_74::UnicodeSetStringSpan::span\28char16_t\20const*\2c\20int\2c\20USetSpanCondition\29\20const +4289:icu_74::UnicodeSetStringSpan::spanUTF8\28unsigned\20char\20const*\2c\20int\2c\20USetSpanCondition\29\20const +4290:icu_74::UnicodeSetStringSpan::spanBack\28char16_t\20const*\2c\20int\2c\20USetSpanCondition\29\20const +4291:icu_74::UnicodeSetStringSpan::spanBackUTF8\28unsigned\20char\20const*\2c\20int\2c\20USetSpanCondition\29\20const +4292:icu_74::UnicodeSet::set\28int\2c\20int\29 +4293:icu_74::UnicodeSet::setPattern\28char16_t\20const*\2c\20int\29 +4294:icu_74::UnicodeSet::remove\28int\29 +4295:icu_74::UnicodeSet::removeAll\28icu_74::UnicodeSet\20const&\29 +4296:icu_74::UnicodeSet::matches\28icu_74::Replaceable\20const&\2c\20int&\2c\20int\2c\20signed\20char\29 +4297:icu_74::UnicodeSet::matchesIndexValue\28unsigned\20char\29\20const +4298:icu_74::UnicodeSet::clone\28\29\20const +4299:icu_74::UnicodeSet::cloneAsThawed\28\29\20const +4300:icu_74::UnicodeSet::applyPattern\28icu_74::RuleCharacterIterator&\2c\20icu_74::SymbolTable\20const*\2c\20icu_74::UnicodeString&\2c\20unsigned\20int\2c\20icu_74::UnicodeSet&\20\28icu_74::UnicodeSet::*\29\28int\29\2c\20int\2c\20UErrorCode&\29 +4301:icu_74::UnicodeSet::applyPatternIgnoreSpace\28icu_74::UnicodeString\20const&\2c\20icu_74::ParsePosition&\2c\20icu_74::SymbolTable\20const*\2c\20UErrorCode&\29 +4302:icu_74::UnicodeSet::add\28icu_74::UnicodeString\20const&\29 +4303:icu_74::UnicodeSet::addAll\28icu_74::UnicodeSet\20const&\29 +4304:icu_74::UnicodeSet::_generatePattern\28icu_74::UnicodeString&\2c\20signed\20char\29\20const +4305:icu_74::UnicodeSet::UnicodeSet\28int\2c\20int\29 +4306:icu_74::UVector::sortedInsert\28void*\2c\20int\20\28*\29\28UElement\2c\20UElement\29\2c\20UErrorCode&\29 +4307:icu_74::UVector::setElementAt\28void*\2c\20int\29 +4308:icu_74::UVector::assign\28icu_74::UVector\20const&\2c\20void\20\28*\29\28UElement*\2c\20UElement*\29\2c\20UErrorCode&\29 +4309:icu_74::UVector::UVector\28UErrorCode&\29 +4310:icu_74::UStringSet::~UStringSet\28\29.1 +4311:icu_74::UStringSet::~UStringSet\28\29 +4312:icu_74::UDataPathIterator::UDataPathIterator\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20signed\20char\2c\20UErrorCode*\29 +4313:icu_74::UCharsTrieBuilder::build\28UStringTrieBuildOption\2c\20UErrorCode&\29 +4314:icu_74::UCharsTrieBuilder::UCharsTrieBuilder\28UErrorCode&\29 +4315:icu_74::UCharsTrie::nextForCodePoint\28int\29 +4316:icu_74::UCharsTrie::Iterator::next\28UErrorCode&\29 +4317:icu_74::UCharsTrie::Iterator::branchNext\28char16_t\20const*\2c\20int\2c\20UErrorCode&\29 +4318:icu_74::UCharCharacterIterator::setText\28icu_74::ConstChar16Ptr\2c\20int\29 +4319:icu_74::StringTrieBuilder::writeBranchSubNode\28int\2c\20int\2c\20int\2c\20int\29 +4320:icu_74::StringTrieBuilder::LinearMatchNode::operator==\28icu_74::StringTrieBuilder::Node\20const&\29\20const +4321:icu_74::StringTrieBuilder::LinearMatchNode::markRightEdgesFirst\28int\29 +4322:icu_74::RuleCharacterIterator::skipIgnored\28int\29 +4323:icu_74::RuleBasedBreakIterator::~RuleBasedBreakIterator\28\29 +4324:icu_74::RuleBasedBreakIterator::handleSafePrevious\28int\29 +4325:icu_74::RuleBasedBreakIterator::RuleBasedBreakIterator\28UErrorCode*\29 +4326:icu_74::RuleBasedBreakIterator::DictionaryCache::~DictionaryCache\28\29 +4327:icu_74::RuleBasedBreakIterator::DictionaryCache::populateDictionary\28int\2c\20int\2c\20int\2c\20int\29 +4328:icu_74::RuleBasedBreakIterator::BreakCache::seek\28int\29 +4329:icu_74::RuleBasedBreakIterator::BreakCache::current\28\29 +4330:icu_74::ResourceDataValue::getIntVector\28int&\2c\20UErrorCode&\29\20const +4331:icu_74::ReorderingBuffer::equals\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\29\20const +4332:icu_74::RBBIDataWrapper::removeReference\28\29 +4333:icu_74::PropNameData::getPropertyOrValueEnum\28int\2c\20char\20const*\29 +4334:icu_74::Normalizer2WithImpl::normalizeSecondAndAppend\28icu_74::UnicodeString&\2c\20icu_74::UnicodeString\20const&\2c\20signed\20char\2c\20UErrorCode&\29\20const +4335:icu_74::Normalizer2WithImpl::isNormalized\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29\20const +4336:icu_74::Normalizer2Impl::recompose\28icu_74::ReorderingBuffer&\2c\20int\2c\20signed\20char\29\20const +4337:icu_74::Normalizer2Impl::init\28int\20const*\2c\20UCPTrie\20const*\2c\20unsigned\20short\20const*\2c\20unsigned\20char\20const*\29 +4338:icu_74::Normalizer2Impl::findNextFCDBoundary\28char16_t\20const*\2c\20char16_t\20const*\29\20const +4339:icu_74::Normalizer2Impl::decomposeUTF8\28unsigned\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20icu_74::ByteSink*\2c\20icu_74::Edits*\2c\20UErrorCode&\29\20const +4340:icu_74::Normalizer2Impl::composeUTF8\28unsigned\20int\2c\20signed\20char\2c\20unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20icu_74::ByteSink*\2c\20icu_74::Edits*\2c\20UErrorCode&\29\20const +4341:icu_74::Normalizer2Impl::composeQuickCheck\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20UNormalizationCheckResult*\29\20const +4342:icu_74::Normalizer2Factory::getNFKC_CFImpl\28UErrorCode&\29 +4343:icu_74::Normalizer2Factory::getInstance\28UNormalizationMode\2c\20UErrorCode&\29 +4344:icu_74::Normalizer2::getNFCInstance\28UErrorCode&\29 +4345:icu_74::NoopNormalizer2::normalizeSecondAndAppend\28icu_74::UnicodeString&\2c\20icu_74::UnicodeString\20const&\2c\20UErrorCode&\29\20const +4346:icu_74::NoopNormalizer2::isNormalized\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29\20const +4347:icu_74::MlBreakEngine::~MlBreakEngine\28\29 +4348:icu_74::LocaleUtility::canonicalLocaleString\28icu_74::UnicodeString\20const*\2c\20icu_74::UnicodeString&\29 +4349:icu_74::LocaleKeyFactory::LocaleKeyFactory\28int\29 +4350:icu_74::LocaleKey::LocaleKey\28icu_74::UnicodeString\20const&\2c\20icu_74::UnicodeString\20const&\2c\20icu_74::UnicodeString\20const*\2c\20int\29 +4351:icu_74::LocaleBuilder::build\28UErrorCode&\29 +4352:icu_74::LocaleBuilder::LocaleBuilder\28\29 +4353:icu_74::LocaleBased::setLocaleIDs\28char\20const*\2c\20char\20const*\29 +4354:icu_74::Locale::setKeywordValue\28char\20const*\2c\20char\20const*\2c\20UErrorCode&\29 +4355:icu_74::Locale::operator=\28icu_74::Locale&&\29 +4356:icu_74::Locale::operator==\28icu_74::Locale\20const&\29\20const +4357:icu_74::Locale::createKeywords\28UErrorCode&\29\20const +4358:icu_74::Locale::createFromName\28char\20const*\29 +4359:icu_74::LaoBreakEngine::divideUpDictionaryRange\28UText*\2c\20int\2c\20int\2c\20icu_74::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +4360:icu_74::LSR::operator=\28icu_74::LSR&&\29 +4361:icu_74::InitCanonIterData::doInit\28icu_74::Normalizer2Impl*\2c\20UErrorCode&\29 +4362:icu_74::ICU_Utility::shouldAlwaysBeEscaped\28int\29 +4363:icu_74::ICU_Utility::isUnprintable\28int\29 +4364:icu_74::ICU_Utility::escape\28icu_74::UnicodeString&\2c\20int\29 +4365:icu_74::ICUServiceKey::parseSuffix\28icu_74::UnicodeString&\29 +4366:icu_74::ICUService::~ICUService\28\29 +4367:icu_74::ICUService::getVisibleIDs\28icu_74::UVector&\2c\20UErrorCode&\29\20const +4368:icu_74::ICUService::clearServiceCache\28\29 +4369:icu_74::ICUNotifier::~ICUNotifier\28\29 +4370:icu_74::Hashtable::put\28icu_74::UnicodeString\20const&\2c\20void*\2c\20UErrorCode&\29 +4371:icu_74::DecomposeNormalizer2::hasBoundaryBefore\28int\29\20const +4372:icu_74::DecomposeNormalizer2::hasBoundaryAfter\28int\29\20const +4373:icu_74::CjkBreakEngine::~CjkBreakEngine\28\29 +4374:icu_74::CjkBreakEngine::CjkBreakEngine\28icu_74::DictionaryMatcher*\2c\20icu_74::LanguageType\2c\20UErrorCode&\29 +4375:icu_74::CharString::truncate\28int\29 +4376:icu_74::CharString::cloneData\28UErrorCode&\29\20const +4377:icu_74::CharString*\20icu_74::MemoryPool::create\28char\20const*&\2c\20UErrorCode&\29 +4378:icu_74::CharString*\20icu_74::MemoryPool::create<>\28\29 +4379:icu_74::CanonIterData::addToStartSet\28int\2c\20int\2c\20UErrorCode&\29 +4380:icu_74::BytesTrie::branchNext\28unsigned\20char\20const*\2c\20int\2c\20int\29 +4381:icu_74::ByteSinkUtil::appendCodePoint\28int\2c\20int\2c\20icu_74::ByteSink&\2c\20icu_74::Edits*\29 +4382:icu_74::BreakIterator::getLocale\28ULocDataLocaleType\2c\20UErrorCode&\29\20const +4383:icu_74::BreakIterator::getLocaleID\28ULocDataLocaleType\2c\20UErrorCode&\29\20const +4384:icu_74::BreakIterator::createCharacterInstance\28icu_74::Locale\20const&\2c\20UErrorCode&\29 +4385:hb_vector_t\2c\20false>::resize\28int\2c\20bool\2c\20bool\29 +4386:hb_vector_t\2c\20false>::resize\28int\2c\20bool\2c\20bool\29 +4387:hb_utf8_t::next\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20int*\2c\20unsigned\20int\29 +4388:hb_unicode_script +4389:hb_unicode_mirroring_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +4390:hb_unicode_funcs_t::is_default_ignorable\28unsigned\20int\29 +4391: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 +4392:hb_shape_plan_create2 +4393:hb_serialize_context_t::fini\28\29 +4394:hb_sanitize_context_t::return_t\20AAT::ChainSubtable::dispatch\28hb_sanitize_context_t*\29\20const +4395:hb_sanitize_context_t::return_t\20AAT::ChainSubtable::dispatch\28hb_sanitize_context_t*\29\20const +4396: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 +4397:hb_paint_extents_get_funcs\28\29 +4398:hb_paint_extents_context_t::hb_paint_extents_context_t\28\29 +4399:hb_ot_map_t::fini\28\29 +4400:hb_ot_layout_table_select_script +4401:hb_ot_layout_table_get_lookup_count +4402:hb_ot_layout_table_find_feature_variations +4403:hb_ot_layout_table_find_feature\28hb_face_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +4404:hb_ot_layout_script_select_language +4405:hb_ot_layout_language_get_required_feature +4406:hb_ot_layout_language_find_feature +4407:hb_ot_layout_has_substitution +4408:hb_ot_layout_feature_with_variations_get_lookups +4409:hb_ot_layout_collect_features_map +4410:hb_ot_font_set_funcs +4411:hb_lazy_loader_t\2c\20hb_face_t\2c\2038u\2c\20OT::sbix_accelerator_t>::create\28hb_face_t*\29 +4412:hb_lazy_loader_t\2c\20hb_face_t\2c\207u\2c\20OT::post_accelerator_t>::get\28\29\20const +4413:hb_lazy_loader_t\2c\20hb_face_t\2c\2019u\2c\20hb_blob_t>::get\28\29\20const +4414:hb_lazy_loader_t\2c\20hb_face_t\2c\2035u\2c\20hb_blob_t>::get\28\29\20const +4415:hb_lazy_loader_t\2c\20hb_face_t\2c\2037u\2c\20OT::CBDT_accelerator_t>::get\28\29\20const +4416:hb_lazy_loader_t\2c\20hb_face_t\2c\2032u\2c\20hb_blob_t>::get\28\29\20const +4417:hb_lazy_loader_t\2c\20hb_face_t\2c\2028u\2c\20hb_blob_t>::get\28\29\20const +4418:hb_lazy_loader_t\2c\20hb_face_t\2c\2029u\2c\20hb_blob_t>::get\28\29\20const +4419:hb_language_matches +4420:hb_indic_get_categories\28unsigned\20int\29 +4421:hb_hashmap_t::fetch_item\28hb_serialize_context_t::object_t\20const*\20const&\2c\20unsigned\20int\29\20const +4422:hb_hashmap_t::alloc\28unsigned\20int\29 +4423:hb_font_t::get_glyph_v_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +4424:hb_font_set_variations +4425:hb_font_set_funcs +4426:hb_font_get_variation_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +4427:hb_font_get_glyph_h_advance +4428:hb_font_get_glyph_extents +4429:hb_font_get_font_h_extents_nil\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +4430:hb_font_funcs_set_variation_glyph_func +4431:hb_font_funcs_set_nominal_glyphs_func +4432:hb_font_funcs_set_nominal_glyph_func +4433:hb_font_funcs_set_glyph_h_advances_func +4434:hb_font_funcs_set_glyph_extents_func +4435:hb_font_funcs_create +4436:hb_draw_move_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +4437:hb_draw_funcs_set_quadratic_to_func +4438:hb_draw_funcs_set_move_to_func +4439:hb_draw_funcs_set_line_to_func +4440:hb_draw_funcs_set_cubic_to_func +4441:hb_draw_funcs_destroy +4442:hb_draw_funcs_create +4443:hb_draw_extents_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +4444: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 +4445:hb_buffer_t::safe_to_insert_tatweel\28unsigned\20int\2c\20unsigned\20int\29 +4446:hb_buffer_t::output_info\28hb_glyph_info_t\20const&\29 +4447:hb_buffer_t::message_impl\28hb_font_t*\2c\20char\20const*\2c\20void*\29 +4448:hb_buffer_t::leave\28\29 +4449:hb_buffer_t::delete_glyphs_inplace\28bool\20\28*\29\28hb_glyph_info_t\20const*\29\29 +4450:hb_buffer_t::clear_positions\28\29 +4451:hb_buffer_set_length +4452:hb_buffer_get_glyph_positions +4453:hb_buffer_diff +4454:hb_buffer_create +4455:hb_buffer_clear_contents +4456:hb_buffer_add_utf8 +4457:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4458:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4459:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4460:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4461:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4462:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +4463:hb_aat_layout_remove_deleted_glyphs\28hb_buffer_t*\29 +4464: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 +4465:getint +4466:get_win_string +4467:get_dst_swizzle_and_store\28GrColorType\2c\20SkRasterPipelineOp*\2c\20LumMode*\2c\20bool*\2c\20bool*\29 +4468:get_driver_and_version\28GrGLStandard\2c\20GrGLVendor\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +4469:getFallbackData\28UResourceBundle\20const*\2c\20char\20const**\2c\20unsigned\20int*\2c\20UErrorCode*\29 +4470:gen_key\28skgpu::KeyBuilder*\2c\20GrProgramInfo\20const&\2c\20GrCaps\20const&\29 +4471:gen_fp_key\28GrFragmentProcessor\20const&\2c\20GrCaps\20const&\2c\20skgpu::KeyBuilder*\29 +4472: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 +4473:fwrite +4474:ft_var_to_normalized +4475:ft_var_load_item_variation_store +4476:ft_var_load_hvvar +4477:ft_var_load_avar +4478:ft_var_get_value_pointer +4479:ft_var_apply_tuple +4480:ft_validator_init +4481:ft_mem_strcpyn +4482:ft_hash_num_lookup +4483:ft_glyphslot_set_bitmap +4484:ft_glyphslot_preset_bitmap +4485:ft_corner_orientation +4486:ft_corner_is_flat +4487:frexp +4488:free_entry\28UResourceDataEntry*\29 +4489:fread +4490:fp_force_eval +4491:fp_barrier.1 +4492:fopen +4493:fold_opacity_layer_color_to_paint\28SkPaint\20const*\2c\20bool\2c\20SkPaint*\29 +4494:fmodl +4495:float\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +4496: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 +4497:fill_inverse_cmap +4498:fileno +4499:examine_app0 +4500: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 +4501: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 +4502: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 +4503: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 +4504:emscripten::internal::Invoker\2c\20SkBlendMode>::invoke\28sk_sp\20\28*\29\28SkBlendMode\29\2c\20SkBlendMode\29 +4505: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 +4506:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\29 +4507: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 +4508: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 +4509: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 +4510: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 +4511: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 +4512: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 +4513:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20SkPath\20const&\2c\20SkPathOp\29\2c\20SkPath*\2c\20SkPath*\2c\20SkPathOp\29 +4514:embind_init_builtin\28\29 +4515:embind_init_Skia\28\29 +4516:embind_init_Paragraph\28\29::$_0::__invoke\28SimpleParagraphStyle\2c\20sk_sp\29 +4517:embind_init_Paragraph\28\29 +4518:embind_init_ParagraphGen\28\29 +4519:edge_line_needs_recursion\28SkPoint\20const&\2c\20SkPoint\20const&\29 +4520:draw_nine\28SkMask\20const&\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\2c\20bool\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +4521:dquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4522:dquad_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4523:double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +4524: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 +4525:dline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4526:dline_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4527:deserialize_image\28sk_sp\2c\20SkDeserialProcs\2c\20std::__2::optional\29 +4528:deflate_stored +4529:decompose_current_character\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\29 +4530: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 +4531: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 +4532: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 +4533: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 +4534: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 +4535:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkShaderBase\20const&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTransformShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4536: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 +4537: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 +4538:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrSurfaceProxy*&\2c\20skgpu::ScratchKey&&\2c\20GrResourceProvider*&\29::'lambda'\28void*\29>\28GrResourceAllocator::Register&&\29 +4539:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrRRectShadowGeoProc::Make\28SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4540: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 +4541: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 +4542: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 +4543: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 +4544: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 +4545: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 +4546: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 +4547: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 +4548:dcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4549:dcubic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4550:dconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4551:dconic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4552:data_destroy_arabic\28void*\29 +4553:data_create_arabic\28hb_ot_shape_plan_t\20const*\29 +4554:cycle +4555:cubic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4556:cubic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4557:create_colorindex +4558:copysignl +4559:copy_bitmap_subset\28SkBitmap\20const&\2c\20SkIRect\20const&\29 +4560:conic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4561:conic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4562:compute_pos_tan\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +4563:compute_intersection\28OffsetSegment\20const&\2c\20OffsetSegment\20const&\2c\20SkPoint*\2c\20float*\2c\20float*\29 +4564:compress_block +4565:compose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +4566:clipHandlesSprite\28SkRasterClip\20const&\2c\20int\2c\20int\2c\20SkPixmap\20const&\29 +4567:clamp\28SkPoint\2c\20SkPoint\2c\20SkPoint\2c\20GrTriangulator::Comparator\20const&\29 +4568:checkint +4569:check_inverse_on_empty_return\28SkRegion*\2c\20SkPath\20const&\2c\20SkRegion\20const&\29 +4570:charIterTextAccess\28UText*\2c\20long\20long\2c\20signed\20char\29 +4571:char*\20std::__2::copy\5babi:v160004\5d\2c\20char*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20char*\29 +4572:char*\20std::__2::copy\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29 +4573:cff_vstore_done +4574:cff_subfont_load +4575:cff_subfont_done +4576:cff_size_select +4577:cff_parser_run +4578:cff_make_private_dict +4579:cff_load_private_dict +4580:cff_index_get_name +4581:cff_get_kerning +4582:cff_blend_build_vector +4583:cf2_getSeacComponent +4584:cf2_computeDarkening +4585:cf2_arrstack_push +4586:cbrt +4587:byn$mgfn-shared$void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +4588: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 +4589:byn$mgfn-shared$virtual\20thunk\20to\20GrRenderTarget::onRelease\28\29 +4590:byn$mgfn-shared$uloc_getName_74 +4591:byn$mgfn-shared$uhash_put_74 +4592:byn$mgfn-shared$ubidi_getClass_74 +4593:byn$mgfn-shared$t1_hints_open +4594: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 +4595: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 +4596:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +4597: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 +4598:byn$mgfn-shared$std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +4599:byn$mgfn-shared$std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +4600: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 +4601:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +4602: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 +4603:byn$mgfn-shared$std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +4604:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4605:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4606:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4607:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::~Impl\28\29 +4608:byn$mgfn-shared$skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4609:byn$mgfn-shared$skgpu::ScratchKey::GenerateResourceType\28\29 +4610:byn$mgfn-shared$skcms_TransferFunction_isPQish +4611:byn$mgfn-shared$setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +4612:byn$mgfn-shared$portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4613:byn$mgfn-shared$portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4614:byn$mgfn-shared$portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4615:byn$mgfn-shared$portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4616:byn$mgfn-shared$non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4617:byn$mgfn-shared$non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4618:byn$mgfn-shared$make_unpremul_effect\28std::__2::unique_ptr>\29 +4619:byn$mgfn-shared$icu_74::isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +4620:byn$mgfn-shared$icu_74::ResourceDataValue::getIntVector\28int&\2c\20UErrorCode&\29\20const +4621: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 +4622:byn$mgfn-shared$hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +4623:byn$mgfn-shared$embind_init_Skia\28\29::$_75::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +4624:byn$mgfn-shared$embind_init_Skia\28\29::$_72::__invoke\28float\2c\20float\2c\20sk_sp\29 +4625:byn$mgfn-shared$embind_init_Skia\28\29::$_11::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +4626: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 +4627: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 +4628:byn$mgfn-shared$cf2_stack_pushInt +4629:byn$mgfn-shared$__cxx_global_array_dtor.1 +4630: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 +4631:byn$mgfn-shared$\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4632:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4633:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4634:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +4635: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 +4636:byn$mgfn-shared$SkSL::RP::UnownedLValueSlice::~UnownedLValueSlice\28\29 +4637:byn$mgfn-shared$SkSL::RP::LValue::~LValue\28\29.1 +4638:byn$mgfn-shared$SkSL::ProgramUsage::add\28SkSL::ProgramElement\20const&\29 +4639:byn$mgfn-shared$SkSL::ProgramUsage::add\28SkSL::Expression\20const*\29 +4640:byn$mgfn-shared$SkSL::FunctionReference::clone\28SkSL::Position\29\20const +4641:byn$mgfn-shared$SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +4642:byn$mgfn-shared$SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +4643:byn$mgfn-shared$SkSL::ChildCall::clone\28SkSL::Position\29\20const +4644:byn$mgfn-shared$SkRuntimeBlender::~SkRuntimeBlender\28\29.1 +4645:byn$mgfn-shared$SkRuntimeBlender::~SkRuntimeBlender\28\29 +4646:byn$mgfn-shared$SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +4647:byn$mgfn-shared$SkRecorder::onDrawPaint\28SkPaint\20const&\29 +4648:byn$mgfn-shared$SkRecorder::didScale\28float\2c\20float\29 +4649:byn$mgfn-shared$SkRecorder::didConcat44\28SkM44\20const&\29 +4650:byn$mgfn-shared$SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +4651:byn$mgfn-shared$SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +4652:byn$mgfn-shared$SkPictureRecord::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +4653:byn$mgfn-shared$SkPictureRecord::didConcat44\28SkM44\20const&\29 +4654:byn$mgfn-shared$SkPairPathEffect::~SkPairPathEffect\28\29.1 +4655:byn$mgfn-shared$SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_blur_1D_effect\28int\2c\20SkRuntimeEffect::Options\20const&\29 +4656:byn$mgfn-shared$SkJSONWriter::endArray\28\29 +4657:byn$mgfn-shared$SkComposePathEffect::~SkComposePathEffect\28\29 +4658:byn$mgfn-shared$SkColorSpace::MakeSRGB\28\29 +4659:byn$mgfn-shared$SkChopMonoCubicAtY\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +4660:byn$mgfn-shared$OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +4661:byn$mgfn-shared$GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4662:byn$mgfn-shared$GrPathTessellationShader::Impl::~Impl\28\29 +4663:byn$mgfn-shared$GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29.1 +4664:byn$mgfn-shared$GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29 +4665:byn$mgfn-shared$GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::clone\28\29\20const +4666:byn$mgfn-shared$GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29.1 +4667:byn$mgfn-shared$GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +4668:byn$mgfn-shared$GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29.1 +4669:byn$mgfn-shared$GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29 +4670:byn$mgfn-shared$GrBicubicEffect::onMakeProgramImpl\28\29\20const +4671:byn$mgfn-shared$Cr_z_inflate_table +4672:byn$mgfn-shared$BlendFragmentProcessor::onMakeProgramImpl\28\29\20const +4673:byn$mgfn-shared$AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +4674:build_ycc_rgb_table +4675:bracketProcessChar\28BracketData*\2c\20int\29 +4676:bracketInit\28UBiDi*\2c\20BracketData*\29 +4677:bool\20std::__2::operator==\5babi:v160004\5d\28std::__2::unique_ptr\20const&\2c\20std::nullptr_t\29 +4678:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::variant\20const&\2c\20std::__2::variant\20const&\29 +4679: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 +4680: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 +4681: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 +4682:bool\20std::__2::__insertion_sort_incomplete\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +4683:bool\20is_parallel\28SkDLine\20const&\2c\20SkTCurve\20const&\29 +4684:bool\20hb_hashmap_t::set_with_hash\28hb_serialize_context_t::object_t*&\2c\20unsigned\20int\2c\20unsigned\20int&\2c\20bool\29 +4685:bool\20apply_string\28OT::hb_ot_apply_context_t*\2c\20GSUBProxy::Lookup\20const&\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\29 +4686:bool\20OT::hb_accelerate_subtables_context_t::cache_func_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\2c\20bool\29 +4687:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4688:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4689:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4690:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4691:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4692:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4693:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4694:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4695:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4696:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4697:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4698:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4699:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4700:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4701:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4702:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4703:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4704:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4705: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 +4706:bool\20GrTTopoSort_Visit\28GrRenderTask*\2c\20unsigned\20int*\29 +4707: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 +4708:blend_line\28SkColorType\2c\20void*\2c\20SkColorType\2c\20void\20const*\2c\20SkAlphaType\2c\20bool\2c\20int\29 +4709:bits_to_runs\28SkBlitter*\2c\20int\2c\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\2c\20long\2c\20unsigned\20char\29 +4710: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 +4711:auto\20std::__2::__unwrap_range\5babi:v160004\5d\2c\20std::__2::__wrap_iter>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +4712:atanf +4713:apply_forward\28OT::hb_ot_apply_context_t*\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\2c\20unsigned\20int\29 +4714:apply_alpha_and_colorfilter\28skif::Context\20const&\2c\20skif::FilterResult\20const&\2c\20SkPaint\20const&\29 +4715:append_multitexture_lookup\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20int\2c\20GrGLSLVarying\20const&\2c\20char\20const*\2c\20char\20const*\29 +4716:append_color_output\28PorterDuffXferProcessor\20const&\2c\20GrGLSLXPFragmentBuilder*\2c\20skgpu::BlendFormula::OutputType\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +4717:af_loader_compute_darkening +4718:af_latin_metrics_scale_dim +4719:af_latin_hints_detect_features +4720:af_latin_hint_edges +4721:af_hint_normal_stem +4722:af_cjk_metrics_scale_dim +4723:af_cjk_metrics_scale +4724:af_cjk_metrics_init_widths +4725:af_cjk_metrics_check_digits +4726:af_cjk_hints_init +4727:af_cjk_hints_detect_features +4728:af_cjk_hints_compute_blue_edges +4729:af_cjk_hints_apply +4730:af_cjk_hint_edges +4731:af_cjk_get_standard_widths +4732:af_axis_hints_new_edge +4733:adler32 +4734:a_ctz_32 +4735:_uhash_remove\28UHashtable*\2c\20UElement\29 +4736:_uhash_rehash\28UHashtable*\2c\20UErrorCode*\29 +4737:_uhash_put\28UHashtable*\2c\20UElement\2c\20UElement\2c\20signed\20char\2c\20UErrorCode*\29 +4738:_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 +4739:_iup_worker_interpolate +4740:_isUnicodeExtensionSubtag\28int&\2c\20char\20const*\2c\20int\29 +4741:_isTransformedExtensionSubtag\28int&\2c\20char\20const*\2c\20int\29 +4742:_hb_preprocess_text_vowel_constraints\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +4743:_hb_ot_shape +4744:_hb_options_init\28\29 +4745:_hb_grapheme_group_func\28hb_glyph_info_t\20const&\2c\20hb_glyph_info_t\20const&\29 +4746:_hb_font_create\28hb_face_t*\29 +4747:_hb_fallback_shape +4748:_glyf_get_advance_with_var_unscaled\28hb_font_t*\2c\20unsigned\20int\2c\20bool\29 +4749:__vfprintf_internal +4750:__trunctfsf2 +4751:__tan +4752:__rem_pio2_large +4753:__overflow +4754:__newlocale +4755:__munmap +4756:__mmap +4757:__math_xflowf +4758:__math_invalidf +4759:__loc_is_allocated +4760:__isxdigit_l +4761:__getf2 +4762:__get_locale +4763:__ftello_unlocked +4764:__fstatat +4765:__fseeko_unlocked +4766:__floatscan +4767:__expo2 +4768:__divtf3 +4769:__cxxabiv1::__base_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +4770:\28anonymous\20namespace\29::write_text_tag\28char\20const*\29 +4771:\28anonymous\20namespace\29::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 +4772:\28anonymous\20namespace\29::set_uv_quad\28SkPoint\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +4773:\28anonymous\20namespace\29::safe_to_ignore_subset_rect\28GrAAType\2c\20SkFilterMode\2c\20DrawQuad\20const&\2c\20SkRect\20const&\29 +4774:\28anonymous\20namespace\29::prepare_for_direct_mask_drawing\28SkStrike*\2c\20SkMatrix\20const&\2c\20SkZip\2c\20SkZip\2c\20SkZip\29 +4775:\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 +4776:\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 +4777:\28anonymous\20namespace\29::is_newer_better\28SkData*\2c\20SkData*\29 +4778:\28anonymous\20namespace\29::get_glyph_run_intercepts\28sktext::GlyphRun\20const&\2c\20SkPaint\20const&\2c\20float\20const*\2c\20float*\2c\20int*\29 +4779:\28anonymous\20namespace\29::get_cicp_trfn\28skcms_TransferFunction\20const&\29 +4780:\28anonymous\20namespace\29::get_cicp_primaries\28skcms_Matrix3x3\20const&\29 +4781:\28anonymous\20namespace\29::getStringArray\28ResourceData\20const*\2c\20icu_74::ResourceArray\20const&\2c\20icu_74::UnicodeString*\2c\20int\2c\20UErrorCode&\29 +4782:\28anonymous\20namespace\29::getInclusionsForSource\28UPropertySource\2c\20UErrorCode&\29 +4783:\28anonymous\20namespace\29::draw_to_sw_mask\28GrSWMaskHelper*\2c\20skgpu::ganesh::ClipStack::Element\20const&\2c\20bool\29 +4784:\28anonymous\20namespace\29::determine_clipped_src_rect\28SkIRect\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkISize\20const&\2c\20SkRect\20const*\29 +4785:\28anonymous\20namespace\29::create_hb_face\28SkTypeface\20const&\29::$_0::__invoke\28void*\29 +4786:\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 +4787:\28anonymous\20namespace\29::copyFTBitmap\28FT_Bitmap_\20const&\2c\20SkMaskBuilder*\29 +4788:\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 +4789:\28anonymous\20namespace\29::colrv1_draw_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\29 +4790:\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29 +4791:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29 +4792:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29 +4793:\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 +4794:\28anonymous\20namespace\29::TriangulatingPathOp::Triangulate\28GrEagerVertexAllocator*\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20float\2c\20bool*\29 +4795:\28anonymous\20namespace\29::TriangulatingPathOp::CreateKey\28skgpu::UniqueKey*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\29 +4796:\28anonymous\20namespace\29::TransformedMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4797:\28anonymous\20namespace\29::TextureOpImpl::propagateCoverageAAThroughoutChain\28\29 +4798:\28anonymous\20namespace\29::TextureOpImpl::characterize\28\28anonymous\20namespace\29::TextureOpImpl::Desc*\29\20const +4799:\28anonymous\20namespace\29::TextureOpImpl::appendQuad\28DrawQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\29 +4800:\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 +4801:\28anonymous\20namespace\29::TextureOpImpl::FillInVertices\28GrCaps\20const&\2c\20\28anonymous\20namespace\29::TextureOpImpl*\2c\20\28anonymous\20namespace\29::TextureOpImpl::Desc*\2c\20char*\29 +4802:\28anonymous\20namespace\29::SpotVerticesFactory::makeVertices\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint*\29\20const +4803:\28anonymous\20namespace\29::SkImageImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +4804:\28anonymous\20namespace\29::SDFTSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4805:\28anonymous\20namespace\29::RunIteratorQueue::advanceRuns\28\29 +4806:\28anonymous\20namespace\29::Pass::blur\28int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +4807:\28anonymous\20namespace\29::MipLevelHelper::allocAndInit\28SkArenaAlloc*\2c\20SkSamplingOptions\20const&\2c\20SkTileMode\2c\20SkTileMode\29 +4808:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29 +4809:\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 +4810:\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 +4811:\28anonymous\20namespace\29::MeshOp::Mesh::Mesh\28SkMesh\20const&\29 +4812:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29 +4813:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29 +4814:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineStruct\28char\20const*\29 +4815:\28anonymous\20namespace\29::FillRectOpImpl::tessellate\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29\20const +4816:\28anonymous\20namespace\29::FillRectOpImpl::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +4817:\28anonymous\20namespace\29::FillRectOpImpl::FillRectOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +4818:\28anonymous\20namespace\29::EllipticalRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRRect\20const&\29 +4819:\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 +4820:\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4821:\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4822:\28anonymous\20namespace\29::DirectMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4823:\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +4824:\28anonymous\20namespace\29::DefaultPathOp::programInfo\28\29 +4825:\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 +4826:\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 +4827:\28anonymous\20namespace\29::ClipGeometry\20\28anonymous\20namespace\29::get_clip_geometry\28skgpu::ganesh::ClipStack::SaveRecord\20const&\2c\20skgpu::ganesh::ClipStack::Draw\20const&\29 +4828:\28anonymous\20namespace\29::CircularRRectEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +4829:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29 +4830:\28anonymous\20namespace\29::CachedTessellations::CachedTessellations\28\29 +4831:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29 +4832:\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 +4833:WebPResetDecParams +4834:WebPRescalerGetScaledDimensions +4835:WebPMultRows +4836:WebPMultARGBRows +4837:WebPIoInitFromOptions +4838:WebPInitUpsamplers +4839:WebPFlipBuffer +4840:WebPDemuxGetChunk +4841:WebPCopyDecBufferPixels +4842:WebPAllocateDecBuffer +4843:VP8RemapBitReader +4844:VP8LHuffmanTablesAllocate +4845:VP8LDspInit +4846:VP8LConvertFromBGRA +4847:VP8LColorCacheInit +4848:VP8LColorCacheCopy +4849:VP8LBuildHuffmanTable +4850:VP8LBitReaderSetBuffer +4851:VP8InitScanline +4852:VP8GetInfo +4853:VP8BitReaderSetBuffer +4854:Update_Max +4855:TransformOne_C +4856:TT_Set_Named_Instance +4857:TT_Hint_Glyph +4858:StoreFrame +4859:SortContourList\28SkOpContourHead**\2c\20bool\2c\20bool\29 +4860:SkYUVAPixmapInfo::isSupported\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\29\20const +4861:SkWuffsCodec::seekFrame\28int\29 +4862:SkWuffsCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +4863:SkWuffsCodec::onIncrementalDecodeTwoPass\28\29 +4864:SkWuffsCodec::decodeFrameConfig\28\29 +4865:SkWriter32::writeString\28char\20const*\2c\20unsigned\20long\29 +4866:SkWriteICCProfile\28skcms_ICCProfile\20const*\2c\20char\20const*\29 +4867:SkWebpDecoder::IsWebp\28void\20const*\2c\20unsigned\20long\29 +4868:SkWebpCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29 +4869:SkWbmpDecoder::IsWbmp\28void\20const*\2c\20unsigned\20long\29 +4870:SkWbmpCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29 +4871:SkWStream::SizeOfPackedUInt\28unsigned\20long\29 +4872:SkWBuffer::padToAlign4\28\29 +4873:SkVertices::Builder::indices\28\29 +4874:SkUnicode_icu::extractWords\28unsigned\20short*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +4875:SkUnicode::convertUtf16ToUtf8\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4876:SkUTF::NextUTF16\28unsigned\20short\20const**\2c\20unsigned\20short\20const*\29 +4877:SkTypeface_FreeType::FaceRec::Make\28SkTypeface_FreeType\20const*\29 +4878:SkTypeface_Custom::onGetFamilyName\28SkString*\29\20const +4879:SkTypeface::textToGlyphs\28void\20const*\2c\20unsigned\20long\2c\20SkTextEncoding\2c\20unsigned\20short*\2c\20int\29\20const +4880:SkTypeface::serialize\28SkWStream*\2c\20SkTypeface::SerializeBehavior\29\20const +4881:SkTypeface::openStream\28int*\29\20const +4882:SkTypeface::getFamilyName\28SkString*\29\20const +4883:SkTransformShader::update\28SkMatrix\20const&\29 +4884:SkTransformShader::SkTransformShader\28SkShaderBase\20const&\2c\20bool\29 +4885:SkTiff::ImageFileDirectory::getEntryRawData\28unsigned\20short\2c\20unsigned\20short*\2c\20unsigned\20short*\2c\20unsigned\20int*\2c\20unsigned\20char\20const**\2c\20unsigned\20long*\29\20const +4886:SkTextBlobBuilder::allocRunPos\28SkFont\20const&\2c\20int\2c\20SkRect\20const*\29 +4887:SkTextBlob::getIntercepts\28float\20const*\2c\20float*\2c\20SkPaint\20const*\29\20const +4888:SkTextBlob::RunRecord::StorageSize\28unsigned\20int\2c\20unsigned\20int\2c\20SkTextBlob::GlyphPositioning\2c\20SkSafeMath*\29 +4889:SkTextBlob::MakeFromText\28void\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20SkTextEncoding\29 +4890:SkTextBlob::MakeFromRSXform\28void\20const*\2c\20unsigned\20long\2c\20SkRSXform\20const*\2c\20SkFont\20const&\2c\20SkTextEncoding\29 +4891:SkTextBlob::Iter::experimentalNext\28SkTextBlob::Iter::ExperimentalRun*\29 +4892:SkTextBlob::Iter::Iter\28SkTextBlob\20const&\29 +4893:SkTaskGroup::wait\28\29 +4894:SkTaskGroup::add\28std::__2::function\29 +4895:SkTSpan::onlyEndPointsInCommon\28SkTSpan\20const*\2c\20bool*\2c\20bool*\2c\20bool*\29 +4896:SkTSpan::linearIntersects\28SkTCurve\20const&\29\20const +4897:SkTSect::removeAllBut\28SkTSpan\20const*\2c\20SkTSpan*\2c\20SkTSect*\29 +4898:SkTSect::intersects\28SkTSpan*\2c\20SkTSect*\2c\20SkTSpan*\2c\20int*\29 +4899:SkTSect::deleteEmptySpans\28\29 +4900:SkTSect::addSplitAt\28SkTSpan*\2c\20double\29 +4901:SkTSect::addForPerp\28SkTSpan*\2c\20double\29 +4902:SkTSect::EndsEqual\28SkTSect\20const*\2c\20SkTSect\20const*\2c\20SkIntersections*\29 +4903:SkTMultiMap::~SkTMultiMap\28\29 +4904:SkTMaskGamma<3\2c\203\2c\203>::SkTMaskGamma\28float\2c\20float\29 +4905:SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::find\28SkImageFilterCacheKey\20const&\29\20const +4906:SkTDStorage::calculateSizeOrDie\28int\29::$_1::operator\28\29\28\29\20const +4907:SkTDStorage::SkTDStorage\28SkTDStorage&&\29 +4908:SkTCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +4909:SkTConic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +4910:SkTConic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +4911:SkTConic::controlsInside\28\29\20const +4912:SkTConic::collapsed\28\29\20const +4913:SkTBlockList::reset\28\29 +4914:SkTBlockList::reset\28\29 +4915:SkTBlockList::push_back\28GrGLProgramDataManager::GLUniformInfo\20const&\29 +4916:SkSwizzler::MakeSimple\28int\2c\20SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +4917:SkSurfaces::WrapPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkSurfaceProps\20const*\29 +4918:SkSurface_Base::outstandingImageSnapshot\28\29\20const +4919:SkSurface_Base::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +4920:SkSurface_Base::onCapabilities\28\29 +4921:SkStrokeRec::setHairlineStyle\28\29 +4922:SkStrokeRec::SkStrokeRec\28SkPaint\20const&\2c\20SkPaint::Style\2c\20float\29 +4923:SkStrokeRec::GetInflationRadius\28SkPaint::Join\2c\20float\2c\20SkPaint::Cap\2c\20float\29 +4924:SkString::insertHex\28unsigned\20long\2c\20unsigned\20int\2c\20int\29 +4925:SkString::appendVAList\28char\20const*\2c\20void*\29 +4926:SkString::SkString\28std::__2::basic_string_view>\29 +4927:SkStrikeSpec::SkStrikeSpec\28SkStrikeSpec\20const&\29 +4928:SkStrikeSpec::ShouldDrawAsPath\28SkPaint\20const&\2c\20SkFont\20const&\2c\20SkMatrix\20const&\29 +4929:SkStrSplit\28char\20const*\2c\20char\20const*\2c\20SkStrSplitMode\2c\20skia_private::TArray*\29 +4930:SkStrAppendS32\28char*\2c\20int\29 +4931:SkSpriteBlitter_Memcpy::~SkSpriteBlitter_Memcpy\28\29 +4932:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +4933:SkSpecialImages::AsBitmap\28SkSpecialImage\20const*\2c\20SkBitmap*\29 +4934:SkSharedMutex::releaseShared\28\29 +4935:SkShapers::unicode::BidiRunIterator\28sk_sp\2c\20char\20const*\2c\20unsigned\20long\2c\20unsigned\20char\29 +4936:SkShapers::HB::ScriptRunIterator\28char\20const*\2c\20unsigned\20long\29 +4937:SkShaper::MakeStdLanguageRunIterator\28char\20const*\2c\20unsigned\20long\29 +4938:SkShaders::MatrixRec::concat\28SkMatrix\20const&\29\20const +4939:SkShaders::Blend\28sk_sp\2c\20sk_sp\2c\20sk_sp\29 +4940:SkShaderUtils::VisitLineByLine\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::function\20const&\29 +4941:SkShaderUtils::PrettyPrint\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4942:SkShaderUtils::GLSLPrettyPrint::parseUntil\28char\20const*\29 +4943:SkShaderUtils::GLSLPrettyPrint::hasToken\28char\20const*\29 +4944:SkShaderBlurAlgorithm::renderBlur\28SkRuntimeShaderBuilder*\2c\20SkFilterMode\2c\20SkISize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +4945:SkShaderBlurAlgorithm::evalBlur1D\28float\2c\20int\2c\20SkV2\2c\20sk_sp\2c\20SkIRect\2c\20SkTileMode\2c\20SkIRect\29\20const +4946:SkShaderBlurAlgorithm::Compute2DBlurOffsets\28SkISize\2c\20std::__2::array&\29 +4947:SkShaderBlurAlgorithm::Compute2DBlurKernel\28SkSize\2c\20SkISize\2c\20std::__2::array&\29 +4948:SkShaderBlurAlgorithm::Compute1DBlurLinearKernel\28float\2c\20int\2c\20std::__2::array&\29 +4949:SkShaderBase::getFlattenableType\28\29\20const +4950:SkShaderBase::asLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +4951:SkShader::makeWithColorFilter\28sk_sp\29\20const +4952:SkScan::PathRequiresTiling\28SkIRect\20const&\29 +4953:SkScan::HairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +4954:SkScan::AntiFrameRect\28SkRect\20const&\2c\20SkPoint\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4955:SkScan::AntiFillXRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4956:SkScan::AntiFillRect\28SkRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4957:SkScan::AAAFillPath\28SkPath\20const&\2c\20SkBlitter*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20bool\29 +4958:SkScalerContext_FreeType::updateGlyphBoundsIfSubpixel\28SkGlyph\20const&\2c\20SkRect*\2c\20bool\29 +4959:SkScalerContext_FreeType::shouldSubpixelBitmap\28SkGlyph\20const&\2c\20SkMatrix\20const&\29 +4960:SkScalerContextRec::getSingleMatrix\28SkMatrix*\29\20const +4961:SkScalerContextFTUtils::drawCOLRv1Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29\20const +4962:SkScalerContextFTUtils::drawCOLRv0Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29\20const +4963:SkScalerContext::internalMakeGlyph\28SkPackedGlyphID\2c\20SkMask::Format\2c\20SkArenaAlloc*\29 +4964:SkScalerContext::internalGetPath\28SkGlyph&\2c\20SkArenaAlloc*\29 +4965:SkScalerContext::getFontMetrics\28SkFontMetrics*\29 +4966:SkScalerContext::SkScalerContext\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +4967:SkScalerContext::PreprocessRec\28SkTypeface\20const&\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const&\29 +4968:SkScalerContext::MakeRecAndEffects\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\2c\20SkScalerContextRec*\2c\20SkScalerContextEffects*\29 +4969:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +4970:SkScalerContext::GetMaskPreBlend\28SkScalerContextRec\20const&\29 +4971:SkScalerContext::AutoDescriptorGivenRecAndEffects\28SkScalerContextRec\20const&\2c\20SkScalerContextEffects\20const&\2c\20SkAutoDescriptor*\29 +4972:SkSampledCodec::sampledDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +4973:SkSampledCodec::accountForNativeScaling\28int*\2c\20int*\29\20const +4974:SkSampledCodec::SkSampledCodec\28SkCodec*\29 +4975:SkSL::zero_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\29 +4976:SkSL::type_to_sksltype\28SkSL::Context\20const&\2c\20SkSL::Type\20const&\2c\20SkSLType*\29 +4977:SkSL::stoi\28std::__2::basic_string_view>\2c\20long\20long*\29 +4978:SkSL::splat_scalar\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +4979: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 +4980: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 +4981: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 +4982:SkSL::negate_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +4983:SkSL::make_reciprocal_expression\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29 +4984:SkSL::index_out_of_range\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20long\20long\2c\20SkSL::Expression\20const&\29 +4985:SkSL::get_struct_definitions_from_module\28SkSL::Program&\2c\20SkSL::Module\20const&\2c\20std::__2::vector>*\29 +4986: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 +4987:SkSL::extract_matrix\28SkSL::Expression\20const*\2c\20float*\29 +4988:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +4989: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 +4990:SkSL::\28anonymous\20namespace\29::check_valid_uniform_type\28SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Context\20const&\2c\20bool\29::$_0::operator\28\29\28\29\20const +4991:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +4992:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +4993:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +4994:SkSL::VariableReference::setRefKind\28SkSL::VariableRefKind\29 +4995:SkSL::Variable::setVarDeclaration\28SkSL::VarDeclaration*\29 +4996:SkSL::Variable::setGlobalVarDeclaration\28SkSL::GlobalVarDeclaration*\29 +4997:SkSL::Variable::globalVarDeclaration\28\29\20const +4998: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 +4999: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 +5000:SkSL::VarDeclaration::Make\28SkSL::Context\20const&\2c\20SkSL::Variable*\2c\20SkSL::Type\20const*\2c\20int\2c\20std::__2::unique_ptr>\29 +5001: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 +5002:SkSL::TypeReference::description\28SkSL::OperatorPrecedence\29\20const +5003:SkSL::TypeReference::VerifyType\28SkSL::Context\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Position\29 +5004:SkSL::TypeReference::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\29 +5005:SkSL::Type::MakeStructType\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20bool\29 +5006:SkSL::Type::MakeLiteralType\28char\20const*\2c\20SkSL::Type\20const&\2c\20signed\20char\29 +5007:SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::addDeclaringElement\28SkSL::ProgramElement\20const*\29 +5008:SkSL::ToGLSL\28SkSL::Program&\2c\20SkSL::ShaderCaps\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\29 +5009: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 +5010:SkSL::SymbolTable::insertNewParent\28\29 +5011:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Symbol*\29 +5012:SkSL::Swizzle::MaskString\28skia_private::FixedArray<4\2c\20signed\20char>\20const&\29 +5013:SkSL::SwitchStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +5014:SkSL::SwitchCase::Make\28SkSL::Position\2c\20long\20long\2c\20std::__2::unique_ptr>\29 +5015:SkSL::SwitchCase::MakeDefault\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +5016:SkSL::StructType::StructType\28SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20int\2c\20bool\2c\20bool\29 +5017:SkSL::String::vappendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20void*\29 +5018:SkSL::SingleArgumentConstructor::argumentSpan\28\29 +5019:SkSL::RP::stack_usage\28SkSL::RP::Instruction\20const&\29 +5020:SkSL::RP::UnownedLValueSlice::isWritable\28\29\20const +5021:SkSL::RP::UnownedLValueSlice::dynamicSlotRange\28\29 +5022:SkSL::RP::ScratchLValue::~ScratchLValue\28\29 +5023:SkSL::RP::Program::~Program\28\29 +5024:SkSL::RP::LValue::swizzle\28\29 +5025:SkSL::RP::Generator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\29 +5026:SkSL::RP::Generator::writeFunction\28SkSL::IRNode\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSpan>\20const>\29 +5027:SkSL::RP::Generator::storeImmutableValueToSlots\28skia_private::TArray\20const&\2c\20SkSL::RP::SlotRange\29 +5028:SkSL::RP::Generator::pushVariableReferencePartial\28SkSL::VariableReference\20const&\2c\20SkSL::RP::SlotRange\29 +5029:SkSL::RP::Generator::pushPrefixExpression\28SkSL::Operator\2c\20SkSL::Expression\20const&\29 +5030:SkSL::RP::Generator::pushIntrinsic\28SkSL::IntrinsicKind\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +5031:SkSL::RP::Generator::pushImmutableData\28SkSL::Expression\20const&\29 +5032:SkSL::RP::Generator::pushAbsFloatIntrinsic\28int\29 +5033:SkSL::RP::Generator::getImmutableValueForExpression\28SkSL::Expression\20const&\2c\20skia_private::TArray*\29 +5034:SkSL::RP::Generator::foldWithMultiOp\28SkSL::RP::BuilderOp\2c\20int\29 +5035:SkSL::RP::Generator::findPreexistingImmutableData\28skia_private::TArray\20const&\29 +5036:SkSL::RP::Builder::push_slots_or_immutable_indirect\28SkSL::RP::SlotRange\2c\20int\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::BuilderOp\29 +5037:SkSL::RP::Builder::push_condition_mask\28\29 +5038:SkSL::RP::Builder::pad_stack\28int\29 +5039:SkSL::RP::Builder::copy_stack_to_slots\28SkSL::RP::SlotRange\2c\20int\29 +5040:SkSL::RP::Builder::branch_if_any_lanes_active\28int\29 +5041:SkSL::ProgramVisitor::visit\28SkSL::Program\20const&\29 +5042:SkSL::ProgramUsage::remove\28SkSL::Expression\20const*\29 +5043:SkSL::ProgramUsage::add\28SkSL::Statement\20const*\29 +5044:SkSL::ProgramUsage::add\28SkSL::Expression\20const*\29 +5045:SkSL::Pool::attachToThread\28\29 +5046:SkSL::PipelineStage::PipelineStageCodeGenerator::functionName\28SkSL::FunctionDeclaration\20const&\29 +5047:SkSL::PipelineStage::PipelineStageCodeGenerator::functionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +5048:SkSL::Parser::~Parser\28\29 +5049:SkSL::Parser::varDeclarations\28\29 +5050:SkSL::Parser::varDeclarationsOrExpressionStatement\28\29 +5051:SkSL::Parser::switchCaseBody\28SkSL::ExpressionArray*\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>*\2c\20std::__2::unique_ptr>\29 +5052:SkSL::Parser::statementOrNop\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +5053:SkSL::Parser::shiftExpression\28\29 +5054:SkSL::Parser::relationalExpression\28\29 +5055:SkSL::Parser::parameter\28std::__2::unique_ptr>*\29 +5056:SkSL::Parser::multiplicativeExpression\28\29 +5057:SkSL::Parser::logicalXorExpression\28\29 +5058:SkSL::Parser::logicalAndExpression\28\29 +5059:SkSL::Parser::localVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +5060:SkSL::Parser::intLiteral\28long\20long*\29 +5061:SkSL::Parser::globalVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +5062:SkSL::Parser::equalityExpression\28\29 +5063:SkSL::Parser::directive\28bool\29 +5064:SkSL::Parser::declarations\28\29 +5065:SkSL::Parser::checkNext\28SkSL::Token::Kind\2c\20SkSL::Token*\29 +5066:SkSL::Parser::bitwiseXorExpression\28\29 +5067:SkSL::Parser::bitwiseOrExpression\28\29 +5068:SkSL::Parser::bitwiseAndExpression\28\29 +5069:SkSL::Parser::additiveExpression\28\29 +5070:SkSL::Parser::Parser\28SkSL::Compiler*\2c\20SkSL::ProgramSettings\20const&\2c\20SkSL::ProgramKind\2c\20std::__2::unique_ptr\2c\20std::__2::allocator>\2c\20std::__2::default_delete\2c\20std::__2::allocator>>>\29 +5071:SkSL::MultiArgumentConstructor::argumentSpan\28\29 +5072:SkSL::ModuleLoader::~ModuleLoader\28\29 +5073:SkSL::ModuleLoader::loadVertexModule\28SkSL::Compiler*\29 +5074:SkSL::ModuleLoader::loadSharedModule\28SkSL::Compiler*\29 +5075:SkSL::ModuleLoader::loadPublicModule\28SkSL::Compiler*\29 +5076:SkSL::ModuleLoader::loadGraphiteVertexModule\28SkSL::Compiler*\29 +5077:SkSL::ModuleLoader::loadGraphiteFragmentModule\28SkSL::Compiler*\29 +5078:SkSL::ModuleLoader::loadFragmentModule\28SkSL::Compiler*\29 +5079:SkSL::ModuleLoader::Get\28\29 +5080:SkSL::MatrixType::bitWidth\28\29\20const +5081:SkSL::MakeRasterPipelineProgram\28SkSL::Program\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSL::DebugTracePriv*\2c\20bool\29 +5082:SkSL::Layout::description\28\29\20const +5083:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_length\28std::__2::array\20const&\29 +5084:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_add\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +5085:SkSL::InterfaceBlock::~InterfaceBlock\28\29 +5086:SkSL::Inliner::candidateCanBeInlined\28SkSL::InlineCandidate\20const&\2c\20SkSL::ProgramUsage\20const&\2c\20skia_private::THashMap*\29 +5087: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 +5088:SkSL::GLSLCodeGenerator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\2c\20bool\29 +5089:SkSL::GLSLCodeGenerator::writeProgramElement\28SkSL::ProgramElement\20const&\29 +5090:SkSL::GLSLCodeGenerator::writeMinAbsHack\28SkSL::Expression&\2c\20SkSL::Expression&\29 +5091:SkSL::GLSLCodeGenerator::generateCode\28\29 +5092:SkSL::FunctionDefinition::~FunctionDefinition\28\29.1 +5093:SkSL::FunctionDefinition::~FunctionDefinition\28\29 +5094: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 +5095: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 +5096:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29.1 +5097:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29 +5098:SkSL::FunctionDeclaration::mangledName\28\29\20const +5099:SkSL::FunctionDeclaration::determineFinalTypes\28SkSL::ExpressionArray\20const&\2c\20skia_private::STArray<8\2c\20SkSL::Type\20const*\2c\20true>*\2c\20SkSL::Type\20const**\29\20const +5100: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 +5101:SkSL::FunctionCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +5102:SkSL::FunctionCall::FindBestFunctionForCall\28SkSL::Context\20const&\2c\20SkSL::FunctionDeclaration\20const*\2c\20SkSL::ExpressionArray\20const&\29 +5103:SkSL::FunctionCall::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +5104: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>\2c\20std::__2::unique_ptr>\29 +5105:SkSL::FindIntrinsicKind\28std::__2::basic_string_view>\29 +5106:SkSL::FieldAccess::~FieldAccess\28\29.1 +5107:SkSL::FieldAccess::~FieldAccess\28\29 +5108:SkSL::ExpressionStatement::Convert\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +5109:SkSL::DoStatement::~DoStatement\28\29.1 +5110:SkSL::DoStatement::~DoStatement\28\29 +5111:SkSL::DebugTracePriv::setSource\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +5112:SkSL::ConstructorScalarCast::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +5113:SkSL::ConstructorMatrixResize::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +5114:SkSL::Constructor::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +5115: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 +5116:SkSL::Compiler::writeErrorCount\28\29 +5117:SkSL::Compiler::initializeContext\28SkSL::Module\20const*\2c\20SkSL::ProgramKind\2c\20SkSL::ProgramSettings\2c\20std::__2::basic_string_view>\2c\20bool\29 +5118:SkSL::Compiler::cleanupContext\28\29 +5119:SkSL::ChildCall::~ChildCall\28\29.1 +5120:SkSL::ChildCall::~ChildCall\28\29 +5121:SkSL::ChildCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Variable\20const&\2c\20SkSL::ExpressionArray\29 +5122:SkSL::BinaryExpression::isAssignmentIntoVariable\28\29 +5123: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 +5124:SkSL::Analysis::\28anonymous\20namespace\29::LoopControlFlowVisitor::visitStatement\28SkSL::Statement\20const&\29 +5125:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29 +5126:SkSL::Analysis::IsConstantExpression\28SkSL::Expression\20const&\29 +5127:SkSL::Analysis::IsAssignable\28SkSL::Expression&\2c\20SkSL::Analysis::AssignmentInfo*\2c\20SkSL::ErrorReporter*\29 +5128: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 +5129:SkSL::Analysis::GetLoopControlFlowInfo\28SkSL::Statement\20const&\29 +5130:SkSL::AliasType::numberKind\28\29\20const +5131:SkSL::AliasType::isAllowedInES2\28\29\20const +5132:SkRuntimeShader::~SkRuntimeShader\28\29 +5133:SkRuntimeEffectPriv::WriteChildEffects\28SkWriteBuffer&\2c\20SkSpan\29 +5134:SkRuntimeEffectPriv::TransformUniforms\28SkSpan\2c\20sk_sp\2c\20SkColorSpaceXformSteps\20const&\29 +5135:SkRuntimeEffect::~SkRuntimeEffect\28\29 +5136:SkRuntimeEffect::makeShader\28sk_sp\2c\20sk_sp*\2c\20unsigned\20long\2c\20SkMatrix\20const*\29\20const +5137:SkRuntimeEffect::makeColorFilter\28sk_sp\2c\20SkSpan\29\20const +5138:SkRuntimeEffect::TracedShader*\20emscripten::internal::raw_constructor\28\29 +5139:SkRuntimeEffect::MakeInternal\28std::__2::unique_ptr>\2c\20SkRuntimeEffect::Options\20const&\2c\20SkSL::ProgramKind\29 +5140:SkRuntimeEffect::ChildPtr&\20skia_private::TArray::emplace_back&>\28sk_sp&\29 +5141:SkRuntimeBlender::flatten\28SkWriteBuffer&\29\20const +5142:SkRgnBuilder::~SkRgnBuilder\28\29 +5143:SkResourceCache::PostPurgeSharedID\28unsigned\20long\20long\29 +5144:SkResourceCache::GetDiscardableFactory\28\29 +5145: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 +5146: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 +5147:SkRegion::Spanerator::Spanerator\28SkRegion\20const&\2c\20int\2c\20int\2c\20int\29 +5148:SkRegion::Oper\28SkRegion\20const&\2c\20SkRegion\20const&\2c\20SkRegion::Op\2c\20SkRegion*\29 +5149:SkRefCntSet::~SkRefCntSet\28\29 +5150:SkRefCntBase::internal_dispose\28\29\20const +5151:SkReduceOrder::reduce\28SkDQuad\20const&\29 +5152:SkReduceOrder::Conic\28SkConic\20const&\2c\20SkPoint*\29 +5153:SkRectClipBlitter::requestRowsPreserved\28\29\20const +5154:SkRectClipBlitter::allocBlitMemory\28unsigned\20long\29 +5155:SkRect::intersect\28SkRect\20const&\2c\20SkRect\20const&\29 +5156:SkRecords::TypedMatrix::TypedMatrix\28SkMatrix\20const&\29 +5157:SkRecords::FillBounds::popSaveBlock\28\29 +5158:SkRecordOptimize\28SkRecord*\29 +5159:SkRecordFillBounds\28SkRect\20const&\2c\20SkRecord\20const&\2c\20SkRect*\2c\20SkBBoxHierarchy::Metadata*\29 +5160:SkRecord::bytesUsed\28\29\20const +5161:SkReadPixelsRec::trim\28int\2c\20int\29 +5162:SkReadBuffer::readString\28unsigned\20long*\29 +5163:SkReadBuffer::readRegion\28SkRegion*\29 +5164:SkReadBuffer::readRect\28\29 +5165:SkReadBuffer::readPoint3\28SkPoint3*\29 +5166:SkReadBuffer::readPad32\28void*\2c\20unsigned\20long\29 +5167:SkRasterPipeline_<256ul>::SkRasterPipeline_\28\29 +5168:SkRasterPipeline::tailPointer\28\29 +5169:SkRasterPipeline::appendSetRGB\28SkArenaAlloc*\2c\20float\20const*\29 +5170:SkRasterPipeline::addMemoryContext\28SkRasterPipeline_MemoryCtx*\2c\20int\2c\20bool\2c\20bool\29 +5171:SkRasterClipStack::SkRasterClipStack\28int\2c\20int\29 +5172:SkRTreeFactory::operator\28\29\28\29\20const +5173:SkRTree::search\28SkRTree::Node*\2c\20SkRect\20const&\2c\20std::__2::vector>*\29\20const +5174:SkRTree::bulkLoad\28std::__2::vector>*\2c\20int\29 +5175:SkRTree::allocateNodeAtLevel\28unsigned\20short\29 +5176:SkRSXform::toQuad\28float\2c\20float\2c\20SkPoint*\29\20const +5177:SkRRect::isValid\28\29\20const +5178:SkRRect::computeType\28\29 +5179:SkRGBA4f<\28SkAlphaType\292>\20skgpu::Swizzle::applyTo<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\29\20const +5180:SkRBuffer::skipToAlign4\28\29 +5181:SkQuads::EvalAt\28double\2c\20double\2c\20double\2c\20double\29 +5182:SkQuadraticEdge::setQuadraticWithoutUpdate\28SkPoint\20const*\2c\20int\29 +5183:SkPtrSet::reset\28\29 +5184:SkPtrSet::copyToArray\28void**\29\20const +5185:SkPtrSet::add\28void*\29 +5186:SkPoint::Normalize\28SkPoint*\29 +5187:SkPngEncoder::Make\28SkWStream*\2c\20SkPixmap\20const&\2c\20SkPngEncoder::Options\20const&\29 +5188:SkPngEncoder::Encode\28GrDirectContext*\2c\20SkImage\20const*\2c\20SkPngEncoder::Options\20const&\29 +5189:SkPngCodec::initializeXforms\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +5190:SkPngCodec::initializeSwizzler\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20bool\29 +5191:SkPngCodec::allocateStorage\28SkImageInfo\20const&\29 +5192:SkPixmapUtils::Orient\28SkPixmap\20const&\2c\20SkPixmap\20const&\2c\20SkEncodedOrigin\29 +5193:SkPixmap::erase\28unsigned\20int\2c\20SkIRect\20const&\29\20const +5194:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const +5195:SkPixelRef::getGenerationID\28\29\20const +5196:SkPixelRef::addGenIDChangeListener\28sk_sp\29 +5197:SkPixelRef::SkPixelRef\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +5198:SkPictureShader::CachedImageInfo::makeImage\28sk_sp\2c\20SkPicture\20const*\29\20const +5199:SkPictureShader::CachedImageInfo::Make\28SkRect\20const&\2c\20SkMatrix\20const&\2c\20SkColorType\2c\20SkColorSpace*\2c\20int\2c\20SkSurfaceProps\20const&\29 +5200:SkPictureRecord::endRecording\28\29 +5201:SkPictureRecord::beginRecording\28\29 +5202:SkPicturePriv::Flatten\28sk_sp\2c\20SkWriteBuffer&\29 +5203:SkPicturePlayback::draw\28SkCanvas*\2c\20SkPicture::AbortCallback*\2c\20SkReadBuffer*\29 +5204:SkPictureData::parseBufferTag\28SkReadBuffer&\2c\20unsigned\20int\2c\20unsigned\20int\29 +5205:SkPictureData::getPicture\28SkReadBuffer*\29\20const +5206:SkPictureData::getDrawable\28SkReadBuffer*\29\20const +5207:SkPictureData::flatten\28SkWriteBuffer&\29\20const +5208:SkPictureData::flattenToBuffer\28SkWriteBuffer&\2c\20bool\29\20const +5209:SkPictureData::SkPictureData\28SkPictureRecord\20const&\2c\20SkPictInfo\20const&\29 +5210:SkPicture::backport\28\29\20const +5211:SkPicture::SkPicture\28\29 +5212:SkPicture::MakeFromStreamPriv\28SkStream*\2c\20SkDeserialProcs\20const*\2c\20SkTypefacePlayback*\2c\20int\29 +5213:SkPerlinNoiseShader::getPaintingData\28\29\20const +5214:SkPathWriter::assemble\28\29 +5215:SkPathWriter::SkPathWriter\28SkPath&\29 +5216:SkPathRef::resetToSize\28int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5217:SkPathRef::SkPathRef\28SkSpan\2c\20SkSpan\2c\20SkSpan\2c\20unsigned\20int\29 +5218:SkPathPriv::IsNestedFillRects\28SkPath\20const&\2c\20SkRect*\2c\20SkPathDirection*\29 +5219:SkPathPriv::CreateDrawArcPath\28SkPath*\2c\20SkArc\20const&\2c\20bool\29 +5220:SkPathEffectBase::PointData::~PointData\28\29 +5221:SkPathEffect::filterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +5222:SkPathBuilder::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +5223:SkPath::writeToMemoryAsRRect\28void*\29\20const +5224:SkPath::setLastPt\28float\2c\20float\29 +5225:SkPath::reverseAddPath\28SkPath\20const&\29 +5226:SkPath::readFromMemory\28void\20const*\2c\20unsigned\20long\29 +5227:SkPath::offset\28float\2c\20float\2c\20SkPath*\29\20const +5228:SkPath::isZeroLengthSincePoint\28int\29\20const +5229:SkPath::isRRect\28SkRRect*\29\20const +5230:SkPath::isOval\28SkRect*\29\20const +5231:SkPath::conservativelyContainsRect\28SkRect\20const&\29\20const +5232:SkPath::computeConvexity\28\29\20const +5233:SkPath::addPath\28SkPath\20const&\2c\20float\2c\20float\2c\20SkPath::AddPathMode\29 +5234:SkPath::Polygon\28SkPoint\20const*\2c\20int\2c\20bool\2c\20SkPathFillType\2c\20bool\29 +5235:SkPath2DPathEffect::Make\28SkMatrix\20const&\2c\20SkPath\20const&\29 +5236:SkParsePath::ToSVGString\28SkPath\20const&\2c\20SkParsePath::PathEncoding\29::$_0::operator\28\29\28char\2c\20SkPoint\20const*\2c\20unsigned\20long\29\20const +5237:SkParseEncodedOrigin\28void\20const*\2c\20unsigned\20long\2c\20SkEncodedOrigin*\29 +5238:SkPaintPriv::ShouldDither\28SkPaint\20const&\2c\20SkColorType\29 +5239:SkPaintPriv::Overwrites\28SkPaint\20const*\2c\20SkPaintPriv::ShaderOverrideOpacity\29 +5240:SkPaint::setStroke\28bool\29 +5241:SkPaint::reset\28\29 +5242:SkPaint::refColorFilter\28\29\20const +5243:SkOpSpanBase::merge\28SkOpSpan*\29 +5244:SkOpSpanBase::globalState\28\29\20const +5245:SkOpSpan::sortableTop\28SkOpContour*\29 +5246:SkOpSpan::release\28SkOpPtT\20const*\29 +5247:SkOpSpan::insertCoincidence\28SkOpSegment\20const*\2c\20bool\2c\20bool\29 +5248:SkOpSpan::init\28SkOpSegment*\2c\20SkOpSpan*\2c\20double\2c\20SkPoint\20const&\29 +5249:SkOpSegment::updateWindingReverse\28SkOpAngle\20const*\29 +5250:SkOpSegment::oppXor\28\29\20const +5251:SkOpSegment::moveMultiples\28\29 +5252:SkOpSegment::isXor\28\29\20const +5253:SkOpSegment::findNextWinding\28SkTDArray*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +5254:SkOpSegment::findNextOp\28SkTDArray*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\2c\20bool*\2c\20SkPathOp\2c\20int\2c\20int\29 +5255:SkOpSegment::computeSum\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpAngle::IncludeType\29 +5256:SkOpSegment::collapsed\28double\2c\20double\29\20const +5257:SkOpSegment::addExpanded\28double\2c\20SkOpSpanBase\20const*\2c\20bool*\29 +5258:SkOpSegment::activeAngle\28SkOpSpanBase*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +5259:SkOpSegment::UseInnerWinding\28int\2c\20int\29 +5260:SkOpPtT::ptAlreadySeen\28SkOpPtT\20const*\29\20const +5261:SkOpPtT::contains\28SkOpSegment\20const*\2c\20double\29\20const +5262:SkOpGlobalState::SkOpGlobalState\28SkOpContourHead*\2c\20SkArenaAlloc*\29 +5263:SkOpEdgeBuilder::preFetch\28\29 +5264:SkOpEdgeBuilder::init\28\29 +5265:SkOpEdgeBuilder::finish\28\29 +5266:SkOpContourBuilder::addConic\28SkPoint*\2c\20float\29 +5267:SkOpContour::addQuad\28SkPoint*\29 +5268:SkOpContour::addCubic\28SkPoint*\29 +5269:SkOpContour::addConic\28SkPoint*\2c\20float\29 +5270:SkOpCoincidence::release\28SkOpSegment\20const*\29 +5271:SkOpCoincidence::mark\28\29 +5272:SkOpCoincidence::markCollapsed\28SkCoincidentSpans*\2c\20SkOpPtT*\29 +5273:SkOpCoincidence::fixUp\28SkCoincidentSpans*\2c\20SkOpPtT*\2c\20SkOpPtT\20const*\29 +5274:SkOpCoincidence::contains\28SkCoincidentSpans\20const*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\29\20const +5275:SkOpCoincidence::checkOverlap\28SkCoincidentSpans*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20SkTDArray*\29\20const +5276:SkOpCoincidence::addOrOverlap\28SkOpSegment*\2c\20SkOpSegment*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20bool*\29 +5277:SkOpAngle::tangentsDiverge\28SkOpAngle\20const*\2c\20double\29 +5278:SkOpAngle::setSpans\28\29 +5279:SkOpAngle::setSector\28\29 +5280:SkOpAngle::previous\28\29\20const +5281:SkOpAngle::midToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +5282:SkOpAngle::loopCount\28\29\20const +5283:SkOpAngle::loopContains\28SkOpAngle\20const*\29\20const +5284:SkOpAngle::lastMarked\28\29\20const +5285:SkOpAngle::endToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +5286:SkOpAngle::alignmentSameSide\28SkOpAngle\20const*\2c\20int*\29\20const +5287:SkOpAngle::after\28SkOpAngle*\29 +5288:SkOffsetSimplePolygon\28SkPoint\20const*\2c\20int\2c\20SkRect\20const&\2c\20float\2c\20SkTDArray*\2c\20SkTDArray*\29 +5289:SkNoDrawCanvas::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +5290:SkNoDrawCanvas::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +5291:SkMipmapBuilder::countLevels\28\29\20const +5292:SkMipmap::countLevels\28\29\20const +5293:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +5294:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +5295:SkMeshPriv::CpuBuffer::size\28\29\20const +5296:SkMeshPriv::CpuBuffer::peek\28\29\20const +5297:SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +5298:SkMatrix::setRotate\28float\2c\20float\2c\20float\29 +5299:SkMatrix::mapRectScaleTranslate\28SkRect*\2c\20SkRect\20const&\29\20const +5300:SkMatrix::isFinite\28\29\20const +5301:SkMatrix::RotTrans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +5302:SkMaskSwizzler::swizzle\28void*\2c\20unsigned\20char\20const*\29 +5303:SkMaskFilterBase::NinePatch::~NinePatch\28\29 +5304:SkMask::computeTotalImageSize\28\29\20const +5305:SkMakeResourceCacheSharedIDForBitmap\28unsigned\20int\29 +5306:SkMD5::finish\28\29 +5307:SkMD5::SkMD5\28\29 +5308:SkMD5::Digest::toHexString\28\29\20const +5309:SkM44::preTranslate\28float\2c\20float\2c\20float\29 +5310:SkM44::postTranslate\28float\2c\20float\2c\20float\29 +5311:SkLocalMatrixShader::type\28\29\20const +5312:SkLinearColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +5313:SkLineParameters::cubicEndPoints\28SkDCubic\20const&\29 +5314:SkLatticeIter::SkLatticeIter\28SkCanvas::Lattice\20const&\2c\20SkRect\20const&\29 +5315:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::~SkLRUCache\28\29 +5316:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::reset\28\29 +5317:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::insert\28GrProgramDesc\20const&\2c\20std::__2::unique_ptr>\29 +5318:SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_matrix_conv_effect\28SkKnownRuntimeEffects::\28anonymous\20namespace\29::MatrixConvolutionImpl\2c\20SkRuntimeEffect::Options\20const&\29::$_0::operator\28\29\28int\2c\20SkRuntimeEffect::Options\20const&\29\20const +5319:SkJpegMetadataDecoderImpl::SkJpegMetadataDecoderImpl\28std::__2::vector>\29 +5320:SkJpegDecoder::IsJpeg\28void\20const*\2c\20unsigned\20long\29 +5321:SkJpegCodec::readRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20SkCodec::Options\20const&\29 +5322:SkJpegCodec::initializeSwizzler\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20bool\29 +5323:SkIsSimplePolygon\28SkPoint\20const*\2c\20int\29 +5324:SkIsConvexPolygon\28SkPoint\20const*\2c\20int\29 +5325:SkInvert4x4Matrix\28float\20const*\2c\20float*\29 +5326:SkInvert3x3Matrix\28float\20const*\2c\20float*\29 +5327:SkInvert2x2Matrix\28float\20const*\2c\20float*\29 +5328:SkIntersections::vertical\28SkDQuad\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5329:SkIntersections::vertical\28SkDLine\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5330:SkIntersections::vertical\28SkDCubic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5331:SkIntersections::vertical\28SkDConic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5332:SkIntersections::mostOutside\28double\2c\20double\2c\20SkDPoint\20const&\29\20const +5333:SkIntersections::intersect\28SkDQuad\20const&\2c\20SkDLine\20const&\29 +5334:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDQuad\20const&\29 +5335:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDLine\20const&\29 +5336:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDConic\20const&\29 +5337:SkIntersections::intersect\28SkDConic\20const&\2c\20SkDQuad\20const&\29 +5338:SkIntersections::intersect\28SkDConic\20const&\2c\20SkDLine\20const&\29 +5339:SkIntersections::insertCoincident\28double\2c\20double\2c\20SkDPoint\20const&\29 +5340:SkIntersections::horizontal\28SkDQuad\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5341:SkIntersections::horizontal\28SkDLine\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5342:SkIntersections::horizontal\28SkDCubic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5343:SkIntersections::horizontal\28SkDConic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5344:SkImages::RasterFromPixmap\28SkPixmap\20const&\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +5345:SkImages::RasterFromData\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\29 +5346:SkImages::DeferredFromGenerator\28std::__2::unique_ptr>\29 +5347:SkImage_Raster::onPeekMips\28\29\20const +5348:SkImage_Lazy::~SkImage_Lazy\28\29.1 +5349:SkImage_Lazy::onMakeSurface\28skgpu::graphite::Recorder*\2c\20SkImageInfo\20const&\29\20const +5350:SkImage_GaneshBase::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +5351: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 +5352:SkImage_Base::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +5353:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_1::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +5354:SkImageInfo::validRowBytes\28unsigned\20long\29\20const +5355:SkImageInfo::MakeN32Premul\28int\2c\20int\29 +5356:SkImageGenerator::~SkImageGenerator\28\29.1 +5357:SkImageFilters::ColorFilter\28sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +5358:SkImageFilter_Base::getCTMCapability\28\29\20const +5359:SkImageFilterCache::Get\28SkImageFilterCache::CreateIfNecessary\29 +5360:SkImageFilter::computeFastBounds\28SkRect\20const&\29\20const +5361:SkImage::withMipmaps\28sk_sp\29\20const +5362:SkImage::peekPixels\28SkPixmap*\29\20const +5363:SkImage::height\28\29\20const +5364:SkIcuBreakIteratorCache::purgeIfNeeded\28\29 +5365:SkIcoDecoder::IsIco\28void\20const*\2c\20unsigned\20long\29 +5366:SkIcoCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29 +5367:SkGradientBaseShader::~SkGradientBaseShader\28\29 +5368:SkGradientBaseShader::AppendGradientFillStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const*\2c\20float\20const*\2c\20int\29 +5369:SkGlyphRunListPainterCPU::SkGlyphRunListPainterCPU\28SkSurfaceProps\20const&\2c\20SkColorType\2c\20SkColorSpace*\29 +5370:SkGlyph::setImage\28SkArenaAlloc*\2c\20SkScalerContext*\29 +5371:SkGlyph::setDrawable\28SkArenaAlloc*\2c\20SkScalerContext*\29 +5372:SkGlyph::pathIsHairline\28\29\20const +5373:SkGlyph::mask\28SkPoint\29\20const +5374:SkGlyph::SkGlyph\28SkGlyph&&\29 +5375:SkGifDecoder::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::SelectionPolicy\2c\20SkCodec::Result*\29 +5376:SkGifDecoder::IsGif\28void\20const*\2c\20unsigned\20long\29 +5377:SkGenerateDistanceFieldFromA8Image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20unsigned\20long\29 +5378:SkGaussFilter::SkGaussFilter\28double\29 +5379:SkFrameHolder::setAlphaAndRequiredFrame\28SkFrame*\29 +5380:SkFrame::fillIn\28SkCodec::FrameInfo*\2c\20bool\29\20const +5381:SkFontStyleSet_Custom::appendTypeface\28sk_sp\29 +5382:SkFontStyleSet_Custom::SkFontStyleSet_Custom\28SkString\29 +5383:SkFontScanner_FreeType::scanInstance\28SkStreamAsset*\2c\20int\2c\20int\2c\20SkString*\2c\20SkFontStyle*\2c\20bool*\2c\20skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>*\29\20const +5384:SkFontScanner_FreeType::computeAxisValues\28skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>\2c\20SkFontArguments::VariationPosition\2c\20int*\2c\20SkString\20const&\2c\20SkFontStyle*\2c\20SkFontArguments::VariationPosition::Coordinate\20const*\29 +5385:SkFontScanner_FreeType::SkFontScanner_FreeType\28\29 +5386:SkFontPriv::GetFontBounds\28SkFont\20const&\29 +5387:SkFontMgr::matchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +5388:SkFontMgr::makeFromStream\28std::__2::unique_ptr>\2c\20int\29\20const +5389:SkFontMgr::makeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29\20const +5390:SkFontMgr::legacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +5391:SkFontDescriptor::SkFontStyleWidthForWidthAxisValue\28float\29 +5392:SkFontDescriptor::SkFontDescriptor\28\29 +5393:SkFont::setupForAsPaths\28SkPaint*\29 +5394:SkFont::setSkewX\28float\29 +5395:SkFont::setLinearMetrics\28bool\29 +5396:SkFont::setEmbolden\28bool\29 +5397:SkFont::operator==\28SkFont\20const&\29\20const +5398:SkFont::getPaths\28unsigned\20short\20const*\2c\20int\2c\20void\20\28*\29\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29\2c\20void*\29\20const +5399:SkFlattenable::RegisterFlattenablesIfNeeded\28\29 +5400:SkFlattenable::PrivateInitializer::InitEffects\28\29 +5401:SkFlattenable::NameToFactory\28char\20const*\29 +5402:SkFlattenable::FactoryToName\28sk_sp\20\28*\29\28SkReadBuffer&\29\29 +5403:SkFindQuadExtrema\28float\2c\20float\2c\20float\2c\20float*\29 +5404:SkFindCubicExtrema\28float\2c\20float\2c\20float\2c\20float\2c\20float*\29 +5405:SkFactorySet::~SkFactorySet\28\29 +5406:SkEncoder::encodeRows\28int\29 +5407:SkEmptyPicture::approximateBytesUsed\28\29\20const +5408:SkEdgeClipper::clipQuad\28SkPoint\20const*\2c\20SkRect\20const&\29 +5409:SkEdgeClipper::ClipPath\28SkPath\20const&\2c\20SkRect\20const&\2c\20bool\2c\20void\20\28*\29\28SkEdgeClipper*\2c\20bool\2c\20void*\29\2c\20void*\29 +5410:SkEdgeBuilder::buildEdges\28SkPath\20const&\2c\20SkIRect\20const*\29 +5411:SkDynamicMemoryWStream::bytesWritten\28\29\20const +5412:SkDrawableList::newDrawableSnapshot\28\29 +5413:SkDrawTreatAAStrokeAsHairline\28float\2c\20SkMatrix\20const&\2c\20float*\29 +5414:SkDrawShadowMetrics::GetSpotShadowTransform\28SkPoint3\20const&\2c\20float\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkRect\20const&\2c\20bool\2c\20SkMatrix*\2c\20float*\29 +5415:SkDrawShadowMetrics::GetLocalBounds\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect*\29 +5416:SkDrawBase::drawPaint\28SkPaint\20const&\29\20const +5417:SkDrawBase::DrawToMask\28SkPath\20const&\2c\20SkIRect\20const&\2c\20SkMaskFilter\20const*\2c\20SkMatrix\20const*\2c\20SkMaskBuilder*\2c\20SkMaskBuilder::CreateMode\2c\20SkStrokeRec::InitStyle\29 +5418:SkDraw::drawSprite\28SkBitmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29\20const +5419:SkDiscretePathEffectImpl::flatten\28SkWriteBuffer&\29\20const +5420:SkDiscretePathEffect::Make\28float\2c\20float\2c\20unsigned\20int\29 +5421:SkDevice::getRelativeTransform\28SkDevice\20const&\29\20const +5422:SkDevice::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +5423:SkDevice::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +5424:SkDevice::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +5425:SkDevice::drawArc\28SkArc\20const&\2c\20SkPaint\20const&\29 +5426:SkDescriptor::addEntry\28unsigned\20int\2c\20unsigned\20long\2c\20void\20const*\29 +5427:SkDeque::Iter::next\28\29 +5428:SkDeque::Iter::Iter\28SkDeque\20const&\2c\20SkDeque::Iter::IterStart\29 +5429:SkData::MakeSubset\28SkData\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +5430: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 +5431:SkDashPath::CalcDashParameters\28float\2c\20float\20const*\2c\20int\2c\20float*\2c\20int*\2c\20float*\2c\20float*\29 +5432:SkDRect::setBounds\28SkDQuad\20const&\2c\20SkDQuad\20const&\2c\20double\2c\20double\29 +5433:SkDRect::setBounds\28SkDCubic\20const&\2c\20SkDCubic\20const&\2c\20double\2c\20double\29 +5434:SkDRect::setBounds\28SkDConic\20const&\2c\20SkDConic\20const&\2c\20double\2c\20double\29 +5435:SkDQuad::subDivide\28double\2c\20double\29\20const +5436:SkDQuad::monotonicInY\28\29\20const +5437:SkDQuad::isLinear\28int\2c\20int\29\20const +5438:SkDQuad::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +5439:SkDPoint::approximatelyDEqual\28SkDPoint\20const&\29\20const +5440:SkDCurveSweep::setCurveHullSweep\28SkPath::Verb\29 +5441:SkDCurve::nearPoint\28SkPath::Verb\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29\20const +5442:SkDCubic::monotonicInX\28\29\20const +5443:SkDCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +5444:SkDCubic::hullIntersects\28SkDPoint\20const*\2c\20int\2c\20bool*\29\20const +5445:SkDConic::subDivide\28double\2c\20double\29\20const +5446:SkCubics::RootsReal\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +5447:SkCubicEdge::setCubicWithoutUpdate\28SkPoint\20const*\2c\20int\2c\20bool\29 +5448:SkCubicClipper::ChopMonoAtY\28SkPoint\20const*\2c\20float\2c\20float*\29 +5449:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20SkArenaAlloc*\2c\20sk_sp\29 +5450:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkArenaAlloc*\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +5451:SkContourMeasureIter::~SkContourMeasureIter\28\29 +5452:SkContourMeasureIter::SkContourMeasureIter\28SkPath\20const&\2c\20bool\2c\20float\29 +5453:SkContourMeasure::length\28\29\20const +5454:SkContourMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29\20const +5455:SkConic::BuildUnitArc\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkRotationDirection\2c\20SkMatrix\20const*\2c\20SkConic*\29 +5456:SkComputeRadialSteps\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float*\2c\20float*\2c\20int*\29 +5457:SkCompressedDataSize\28SkTextureCompressionType\2c\20SkISize\2c\20skia_private::TArray*\2c\20bool\29 +5458:SkColorTypeValidateAlphaType\28SkColorType\2c\20SkAlphaType\2c\20SkAlphaType*\29 +5459:SkColorSpaceSingletonFactory::Make\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +5460:SkColorSpaceLuminance::Fetch\28float\29 +5461:SkColorSpace::toProfile\28skcms_ICCProfile*\29\20const +5462:SkColorSpace::makeLinearGamma\28\29\20const +5463:SkColorSpace::isSRGB\28\29\20const +5464:SkColorMatrix_RGB2YUV\28SkYUVColorSpace\2c\20float*\29 +5465:SkColorInfo::makeColorSpace\28sk_sp\29\20const +5466:SkColorFilterShader::SkColorFilterShader\28sk_sp\2c\20float\2c\20sk_sp\29 +5467:SkColor4fXformer::SkColor4fXformer\28SkGradientBaseShader\20const*\2c\20SkColorSpace*\2c\20bool\29 +5468:SkCoincidentSpans::extend\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\29 +5469:SkCodecs::get_decoders_for_editing\28\29 +5470:SkCodec::outputScanline\28int\29\20const +5471:SkCodec::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +5472:SkCodec::initializeColorXform\28SkImageInfo\20const&\2c\20SkEncodedInfo::Alpha\2c\20bool\29 +5473:SkChopQuadAtMaxCurvature\28SkPoint\20const*\2c\20SkPoint*\29 +5474:SkChopQuadAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +5475:SkChopMonoCubicAtX\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +5476:SkChopCubicAtInflections\28SkPoint\20const*\2c\20SkPoint*\29 +5477:SkCharToGlyphCache::findGlyphIndex\28int\29\20const +5478:SkCanvasPriv::WriteLattice\28void*\2c\20SkCanvas::Lattice\20const&\29 +5479:SkCanvasPriv::ReadLattice\28SkReadBuffer&\2c\20SkCanvas::Lattice*\29 +5480:SkCanvasPriv::GetDstClipAndMatrixCounts\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20int*\2c\20int*\29 +5481:SkCanvas::~SkCanvas\28\29 +5482:SkCanvas::skew\28float\2c\20float\29 +5483:SkCanvas::only_axis_aligned_saveBehind\28SkRect\20const*\29 +5484:SkCanvas::getDeviceClipBounds\28\29\20const +5485:SkCanvas::experimental_DrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +5486:SkCanvas::drawVertices\28sk_sp\20const&\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +5487:SkCanvas::drawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +5488:SkCanvas::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +5489:SkCanvas::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +5490:SkCanvas::drawImageNine\28SkImage\20const*\2c\20SkIRect\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +5491:SkCanvas::drawClippedToSaveBehind\28SkPaint\20const&\29 +5492:SkCanvas::drawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +5493:SkCanvas::didTranslate\28float\2c\20float\29 +5494:SkCanvas::clipShader\28sk_sp\2c\20SkClipOp\29 +5495:SkCanvas::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +5496:SkCanvas::SkCanvas\28sk_sp\29 +5497:SkCanvas::ImageSetEntry::ImageSetEntry\28\29 +5498:SkCachedData::SkCachedData\28void*\2c\20unsigned\20long\29 +5499:SkCachedData::SkCachedData\28unsigned\20long\2c\20SkDiscardableMemory*\29 +5500:SkCTMShader::isOpaque\28\29\20const +5501:SkBulkGlyphMetricsAndPaths::glyphs\28SkSpan\29 +5502:SkBmpStandardCodec::decodeIcoMask\28SkStream*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\29 +5503:SkBmpMaskCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +5504:SkBmpDecoder::IsBmp\28void\20const*\2c\20unsigned\20long\29 +5505:SkBmpCodec::SkBmpCodec\28SkEncodedInfo&&\2c\20std::__2::unique_ptr>\2c\20unsigned\20short\2c\20SkCodec::SkScanlineOrder\29 +5506:SkBmpBaseCodec::SkBmpBaseCodec\28SkEncodedInfo&&\2c\20std::__2::unique_ptr>\2c\20unsigned\20short\2c\20SkCodec::SkScanlineOrder\29 +5507:SkBlurMask::ConvertRadiusToSigma\28float\29 +5508:SkBlurMask::ComputeBlurredScanline\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20unsigned\20int\2c\20float\29 +5509:SkBlurMask::BlurRect\28float\2c\20SkMaskBuilder*\2c\20SkRect\20const&\2c\20SkBlurStyle\2c\20SkIPoint*\2c\20SkMaskBuilder::CreateMode\29 +5510:SkBlockMemoryStream::getPosition\28\29\20const +5511:SkBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +5512:SkBlitter::Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +5513:SkBlitter::ChooseSprite\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkArenaAlloc*\2c\20sk_sp\29 +5514:SkBlenderBase::affectsTransparentBlack\28\29\20const +5515:SkBlendShader::~SkBlendShader\28\29.1 +5516:SkBlendShader::~SkBlendShader\28\29 +5517:SkBitmapImageGetPixelRef\28SkImage\20const*\29 +5518:SkBitmapDevice::SkBitmapDevice\28SkBitmap\20const&\2c\20SkSurfaceProps\20const&\2c\20void*\29 +5519:SkBitmapDevice::Create\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\2c\20SkRasterHandleAllocator*\29 +5520:SkBitmapCache::Rec::install\28SkBitmap*\29 +5521:SkBitmapCache::Rec::diagnostic_only_getDiscardable\28\29\20const +5522:SkBitmapCache::Find\28SkBitmapCacheDesc\20const&\2c\20SkBitmap*\29 +5523:SkBitmapCache::Alloc\28SkBitmapCacheDesc\20const&\2c\20SkImageInfo\20const&\2c\20SkPixmap*\29 +5524:SkBitmapCache::Add\28std::__2::unique_ptr\2c\20SkBitmap*\29 +5525:SkBitmap::setPixelRef\28sk_sp\2c\20int\2c\20int\29 +5526:SkBitmap::setAlphaType\28SkAlphaType\29 +5527:SkBitmap::reset\28\29 +5528:SkBitmap::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\29\20const +5529:SkBitmap::getAddr\28int\2c\20int\29\20const +5530:SkBitmap::allocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +5531:SkBitmap::HeapAllocator::allocPixelRef\28SkBitmap*\29 +5532:SkBinaryWriteBuffer::writeFlattenable\28SkFlattenable\20const*\29 +5533:SkBinaryWriteBuffer::writeColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +5534:SkBigPicture::SkBigPicture\28SkRect\20const&\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20sk_sp\2c\20unsigned\20long\29 +5535:SkBezierQuad::IntersectWithHorizontalLine\28SkSpan\2c\20float\2c\20float*\29 +5536:SkBezierCubic::IntersectWithHorizontalLine\28SkSpan\2c\20float\2c\20float*\29 +5537:SkBasicEdgeBuilder::~SkBasicEdgeBuilder\28\29 +5538:SkBaseShadowTessellator::finishPathPolygon\28\29 +5539:SkBaseShadowTessellator::computeConvexShadow\28float\2c\20float\2c\20bool\29 +5540:SkBaseShadowTessellator::computeConcaveShadow\28float\2c\20float\29 +5541:SkBaseShadowTessellator::clipUmbraPoint\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint*\29 +5542:SkBaseShadowTessellator::addInnerPoint\28SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20int*\29 +5543:SkBaseShadowTessellator::addEdge\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20bool\2c\20bool\29 +5544:SkBaseShadowTessellator::addArc\28SkPoint\20const&\2c\20float\2c\20bool\29 +5545:SkAutoCanvasMatrixPaint::~SkAutoCanvasMatrixPaint\28\29 +5546:SkAutoCanvasMatrixPaint::SkAutoCanvasMatrixPaint\28SkCanvas*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\2c\20SkRect\20const&\29 +5547:SkAndroidCodecAdapter::~SkAndroidCodecAdapter\28\29 +5548:SkAndroidCodecAdapter::SkAndroidCodecAdapter\28SkCodec*\29 +5549:SkAndroidCodec::~SkAndroidCodec\28\29 +5550:SkAndroidCodec::getAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const*\29 +5551:SkAndroidCodec::SkAndroidCodec\28SkCodec*\29 +5552:SkAnalyticEdge::update\28int\2c\20bool\29 +5553:SkAnalyticEdge::updateLine\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5554:SkAnalyticEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\29 +5555:SkAAClip::operator=\28SkAAClip\20const&\29 +5556:SkAAClip::op\28SkIRect\20const&\2c\20SkClipOp\29 +5557:SkAAClip::Builder::flushRow\28bool\29 +5558:SkAAClip::Builder::finish\28SkAAClip*\29 +5559:SkAAClip::Builder::Blitter::~Blitter\28\29 +5560:SkAAClip::Builder::Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +5561:Sk2DPathEffect::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +5562:SimpleImageInfo*\20emscripten::internal::raw_constructor\28\29 +5563:SimpleFontStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleFontStyle\20SimpleStrutStyle::*\20const&\2c\20SimpleStrutStyle\20const&\29 +5564:SharedGenerator::isTextureGenerator\28\29 +5565:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29.1 +5566:RgnOper::addSpan\28int\2c\20int\20const*\2c\20int\20const*\29 +5567:PorterDuffXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +5568:PathSegment::init\28\29 +5569:PathAddVerbsPointsWeights\28SkPath&\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +5570:ParseSingleImage +5571:ParseHeadersInternal +5572:PS_Conv_ASCIIHexDecode +5573:Op\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\2c\20SkPath*\29 +5574:OpAsWinding::markReverse\28Contour*\2c\20Contour*\29 +5575:OpAsWinding::getDirection\28Contour&\29 +5576:OpAsWinding::checkContainerChildren\28Contour*\2c\20Contour*\29 +5577:OffsetEdge::computeCrossingDistance\28OffsetEdge\20const*\29 +5578:OT::sbix::accelerator_t::get_png_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +5579:OT::sbix::accelerator_t::choose_strike\28hb_font_t*\29\20const +5580:OT::hmtxvmtx::accelerator_t::accelerator_t\28hb_face_t*\29 +5581:OT::hmtxvmtx::accelerator_t::get_advance_with_var_unscaled\28unsigned\20int\2c\20hb_font_t*\2c\20float*\29\20const +5582:OT::hmtxvmtx::accelerator_t::accelerator_t\28hb_face_t*\29 +5583:OT::hb_ot_layout_lookup_accelerator_t*\20OT::hb_ot_layout_lookup_accelerator_t::create\28OT::Layout::GPOS_impl::PosLookup\20const&\29 +5584:OT::hb_kern_machine_t::kern\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20bool\29\20const +5585:OT::hb_accelerate_subtables_context_t::return_t\20OT::Context::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +5586:OT::hb_accelerate_subtables_context_t::return_t\20OT::ChainContext::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +5587:OT::glyf_accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\29\20const +5588:OT::glyf_accelerator_t::get_advance_with_var_unscaled\28hb_font_t*\2c\20unsigned\20int\2c\20bool\29\20const +5589: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 +5590:OT::cff2::accelerator_templ_t>::accelerator_templ_t\28hb_face_t*\29 +5591:OT::cff2::accelerator_templ_t>::_fini\28\29 +5592:OT::cff1::lookup_expert_subset_charset_for_sid\28unsigned\20int\29 +5593:OT::cff1::lookup_expert_charset_for_sid\28unsigned\20int\29 +5594:OT::cff1::accelerator_templ_t>::~accelerator_templ_t\28\29 +5595:OT::cff1::accelerator_templ_t>::_fini\28\29 +5596:OT::TupleVariationData::unpack_points\28OT::IntType\20const*&\2c\20hb_vector_t&\2c\20OT::IntType\20const*\29 +5597: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 +5598:OT::RuleSet::sanitize\28hb_sanitize_context_t*\29\20const +5599:OT::RuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +5600:OT::RecordListOf::sanitize\28hb_sanitize_context_t*\29\20const +5601:OT::RecordListOf::sanitize\28hb_sanitize_context_t*\29\20const +5602:OT::PaintTranslate::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5603:OT::PaintSolid::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5604:OT::PaintSkewAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5605:OT::PaintSkew::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5606:OT::PaintScaleUniformAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5607:OT::PaintScaleUniform::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5608:OT::PaintScaleAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5609:OT::PaintScale::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5610:OT::PaintRotateAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5611:OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +5612:OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +5613:OT::Lookup::serialize\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +5614:OT::Layout::propagate_attachment_offsets\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +5615:OT::Layout::GSUB_impl::MultipleSubstFormat1_2::sanitize\28hb_sanitize_context_t*\29\20const +5616:OT::Layout::GSUB_impl::Ligature::apply\28OT::hb_ot_apply_context_t*\29\20const +5617:OT::Layout::GPOS_impl::reverse_cursive_minor_offset\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +5618:OT::Layout::GPOS_impl::MarkRecord::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5619:OT::Layout::GPOS_impl::MarkBasePosFormat1_2::sanitize\28hb_sanitize_context_t*\29\20const +5620:OT::Layout::GPOS_impl::AnchorMatrix::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5621:OT::IndexSubtableRecord::get_image_data\28unsigned\20int\2c\20void\20const*\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +5622:OT::FeatureVariationRecord::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5623:OT::FeatureParams::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5624:OT::ContextFormat3::sanitize\28hb_sanitize_context_t*\29\20const +5625:OT::ContextFormat2_5::sanitize\28hb_sanitize_context_t*\29\20const +5626:OT::ContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +5627:OT::ContextFormat1_4::sanitize\28hb_sanitize_context_t*\29\20const +5628:OT::ColorStop::get_color_stop\28OT::hb_paint_context_t*\2c\20hb_color_stop_t*\2c\20unsigned\20int\2c\20OT::VarStoreInstancer\20const&\29\20const +5629:OT::ColorLine::static_get_extend\28hb_color_line_t*\2c\20void*\2c\20void*\29 +5630:OT::ChainRuleSet::would_apply\28OT::hb_would_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +5631:OT::ChainRuleSet::sanitize\28hb_sanitize_context_t*\29\20const +5632:OT::ChainRuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +5633:OT::ChainContextFormat3::sanitize\28hb_sanitize_context_t*\29\20const +5634:OT::ChainContextFormat2_5::sanitize\28hb_sanitize_context_t*\29\20const +5635:OT::ChainContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +5636:OT::ChainContextFormat1_4::sanitize\28hb_sanitize_context_t*\29\20const +5637:OT::CBDT::accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +5638:OT::Affine2x3::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5639:MakeOnScreenGLSurface\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\2c\20int\2c\20int\29 +5640:Load_SBit_Png +5641:LineCubicIntersections::intersectRay\28double*\29 +5642:LineCubicIntersections::VerticalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +5643:LineCubicIntersections::HorizontalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +5644:Launch +5645:JpegDecoderMgr::returnFalse\28char\20const*\29 +5646:JpegDecoderMgr::getEncodedColor\28SkEncodedInfo::Color*\29 +5647:JSObjectFromLineMetrics\28skia::textlayout::LineMetrics&\29 +5648:JSObjectFromGlyphInfo\28skia::textlayout::Paragraph::GlyphInfo&\29 +5649:Ins_DELTAP +5650:HandleCoincidence\28SkOpContourHead*\2c\20SkOpCoincidence*\29 +5651:GrWritePixelsTask::~GrWritePixelsTask\28\29 +5652:GrWaitRenderTask::~GrWaitRenderTask\28\29 +5653:GrVertexBufferAllocPool::makeSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +5654:GrVertexBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +5655:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20SkPathFillType\2c\20skgpu::VertexWriter\29\20const +5656:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20GrEagerVertexAllocator*\29\20const +5657:GrTriangulator::mergeEdgesBelow\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +5658:GrTriangulator::mergeEdgesAbove\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +5659:GrTriangulator::makeSortedVertex\28SkPoint\20const&\2c\20unsigned\20char\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29\20const +5660:GrTriangulator::makeEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\29 +5661:GrTriangulator::computeBisector\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\29\20const +5662:GrTriangulator::appendQuadraticToContour\28SkPoint\20const*\2c\20float\2c\20GrTriangulator::VertexList*\29\20const +5663:GrTriangulator::SortMesh\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +5664:GrTriangulator::FindEnclosingEdges\28GrTriangulator::Vertex\20const&\2c\20GrTriangulator::EdgeList\20const&\2c\20GrTriangulator::Edge**\2c\20GrTriangulator::Edge**\29 +5665:GrTriangulator::Edge::intersect\28GrTriangulator::Edge\20const&\2c\20SkPoint*\2c\20unsigned\20char*\29\20const +5666:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29 +5667:GrThreadSafeCache::~GrThreadSafeCache\28\29 +5668:GrThreadSafeCache::findVertsWithData\28skgpu::UniqueKey\20const&\29 +5669:GrThreadSafeCache::addVertsWithData\28skgpu::UniqueKey\20const&\2c\20sk_sp\2c\20bool\20\28*\29\28SkData*\2c\20SkData*\29\29 +5670:GrThreadSafeCache::Entry::set\28skgpu::UniqueKey\20const&\2c\20sk_sp\29 +5671:GrThreadSafeCache::CreateLazyView\28GrDirectContext*\2c\20GrColorType\2c\20SkISize\2c\20GrSurfaceOrigin\2c\20SkBackingFit\29 +5672:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29 +5673:GrTextureRenderTargetProxy::GrTextureRenderTargetProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29 +5674: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 +5675:GrTextureProxyPriv::setDeferredUploader\28std::__2::unique_ptr>\29 +5676:GrTextureProxy::setUniqueKey\28GrProxyProvider*\2c\20skgpu::UniqueKey\20const&\29 +5677:GrTextureProxy::clearUniqueKey\28\29 +5678:GrTextureProxy::ProxiesAreCompatibleAsDynamicState\28GrSurfaceProxy\20const*\2c\20GrSurfaceProxy\20const*\29 +5679:GrTextureProxy::GrTextureProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29.1 +5680: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 +5681: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 +5682:GrTexture::markMipmapsDirty\28\29 +5683:GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +5684:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29 +5685:GrSurfaceProxyPriv::exactify\28\29 +5686: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 +5687:GrStyledShape::setInheritedKey\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +5688:GrStyledShape::asRRect\28SkRRect*\2c\20bool*\29\20const +5689:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20SkPaint\20const&\2c\20GrStyledShape::DoSimplify\29 +5690:GrStyle::~GrStyle\28\29 +5691:GrStyle::applyToPath\28SkPath*\2c\20SkStrokeRec::InitStyle*\2c\20SkPath\20const&\2c\20float\29\20const +5692:GrStyle::applyPathEffect\28SkPath*\2c\20SkStrokeRec*\2c\20SkPath\20const&\29\20const +5693:GrStencilSettings::SetClipBitSettings\28bool\29 +5694:GrStagingBufferManager::detachBuffers\28\29 +5695:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineStruct\28char\20const*\29 +5696:GrShape::simplify\28unsigned\20int\29 +5697:GrShape::conservativeContains\28SkRect\20const&\29\20const +5698:GrShape::closed\28\29\20const +5699:GrSWMaskHelper::toTextureView\28GrRecordingContext*\2c\20SkBackingFit\29 +5700:GrSWMaskHelper::drawShape\28GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +5701:GrSWMaskHelper::drawShape\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +5702:GrResourceProvider::writePixels\28sk_sp\2c\20GrColorType\2c\20SkISize\2c\20GrMipLevel\20const*\2c\20int\29\20const +5703:GrResourceProvider::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +5704: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 +5705: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 +5706: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 +5707: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 +5708:GrResourceProvider::createApproxTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5709:GrResourceCache::~GrResourceCache\28\29 +5710:GrResourceCache::removeResource\28GrGpuResource*\29 +5711:GrResourceCache::processFreedGpuResources\28\29 +5712:GrResourceCache::insertResource\28GrGpuResource*\29 +5713:GrResourceCache::didChangeBudgetStatus\28GrGpuResource*\29 +5714:GrResourceAllocator::~GrResourceAllocator\28\29 +5715:GrResourceAllocator::planAssignment\28\29 +5716:GrResourceAllocator::expire\28unsigned\20int\29 +5717:GrRenderTask::makeSkippable\28\29 +5718:GrRenderTask::isInstantiated\28\29\20const +5719:GrRenderTarget::GrRenderTarget\28GrGpu*\2c\20SkISize\20const&\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\2c\20sk_sp\29 +5720:GrRecordingContext::init\28\29 +5721:GrRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRRect\20const&\2c\20GrShaderCaps\20const&\29 +5722:GrQuadUtils::TessellationHelper::reset\28GrQuad\20const&\2c\20GrQuad\20const*\29 +5723:GrQuadUtils::TessellationHelper::outset\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuad*\2c\20GrQuad*\29 +5724:GrQuadUtils::TessellationHelper::adjustDegenerateVertices\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuadUtils::TessellationHelper::Vertices*\29 +5725:GrQuadUtils::TessellationHelper::OutsetRequest::reset\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\2c\20GrQuad::Type\2c\20skvx::Vec<4\2c\20float>\20const&\29 +5726: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 +5727:GrQuadUtils::ClipToW0\28DrawQuad*\2c\20DrawQuad*\29 +5728:GrQuad::bounds\28\29\20const +5729:GrProxyProvider::~GrProxyProvider\28\29 +5730:GrProxyProvider::wrapBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\2c\20GrIOType\2c\20sk_sp\29 +5731:GrProxyProvider::removeUniqueKeyFromProxy\28GrTextureProxy*\29 +5732:GrProxyProvider::processInvalidUniqueKeyImpl\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\2c\20GrProxyProvider::RemoveTableEntry\29 +5733: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 +5734:GrProxyProvider::contextID\28\29\20const +5735:GrProxyProvider::adoptUniqueKeyFromSurface\28GrTextureProxy*\2c\20GrSurface\20const*\29 +5736:GrPixmapBase::clip\28SkISize\2c\20SkIPoint*\29 +5737:GrPixmap::GrPixmap\28GrImageInfo\2c\20sk_sp\2c\20unsigned\20long\29 +5738:GrPipeline::GrPipeline\28GrPipeline::InitArgs\20const&\2c\20sk_sp\2c\20GrAppliedHardClip\20const&\29 +5739:GrPersistentCacheUtils::GetType\28SkReadBuffer*\29 +5740:GrPathUtils::QuadUVMatrix::set\28SkPoint\20const*\29 +5741:GrPathTessellationShader::MakeStencilOnlyPipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedHardClip\20const&\2c\20GrPipeline::InputFlags\29 +5742:GrPaint::setCoverageSetOpXPFactory\28SkRegion::Op\2c\20bool\29 +5743:GrOvalOpFactory::MakeOvalOp\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\2c\20GrShaderCaps\20const*\29 +5744:GrOpsRenderPass::drawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +5745:GrOpsRenderPass::drawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5746:GrOpsRenderPass::drawIndexPattern\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5747:GrOpFlushState::reset\28\29 +5748:GrOpFlushState::executeDrawsAndUploadsForMeshDrawOp\28GrOp\20const*\2c\20SkRect\20const&\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\29 +5749:GrOpFlushState::addASAPUpload\28std::__2::function&\29>&&\29 +5750:GrOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +5751:GrOp::combineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +5752:GrOnFlushResourceProvider::instantiateProxy\28GrSurfaceProxy*\29 +5753:GrMeshDrawTarget::allocMesh\28\29 +5754:GrMeshDrawOp::PatternHelper::init\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +5755:GrMeshDrawOp::CombinedQuadCountWillOverflow\28GrAAType\2c\20bool\2c\20int\29 +5756:GrMemoryPool::allocate\28unsigned\20long\29 +5757:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::changed\28\29 +5758:GrIndexBufferAllocPool::makeSpace\28int\2c\20sk_sp*\2c\20int*\29 +5759:GrIndexBufferAllocPool::makeSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +5760:GrImageInfo::refColorSpace\28\29\20const +5761:GrImageInfo::minRowBytes\28\29\20const +5762:GrImageInfo::makeDimensions\28SkISize\29\20const +5763:GrImageInfo::bpp\28\29\20const +5764:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20int\2c\20int\29 +5765:GrImageContext::abandonContext\28\29 +5766:GrGpuResource::makeBudgeted\28\29 +5767:GrGpuResource::getResourceName\28\29\20const +5768:GrGpuResource::abandon\28\29 +5769:GrGpuResource::CreateUniqueID\28\29 +5770:GrGpu::~GrGpu\28\29 +5771:GrGpu::regenerateMipMapLevels\28GrTexture*\29 +5772: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 +5773: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 +5774:GrGeometryProcessor::AttributeSet::addToKey\28skgpu::KeyBuilder*\29\20const +5775:GrGLVertexArray::invalidateCachedState\28\29 +5776:GrGLTextureParameters::invalidate\28\29 +5777:GrGLTexture::MakeWrapped\28GrGLGpu*\2c\20GrMipmapStatus\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrWrapCacheable\2c\20GrIOType\2c\20std::__2::basic_string_view>\29 +5778:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20skgpu::Budgeted\2c\20GrGLTexture::Desc\20const&\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +5779:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +5780:GrGLSLVaryingHandler::getFragDecls\28SkString*\2c\20SkString*\29\20const +5781:GrGLSLVaryingHandler::addAttribute\28GrShaderVar\20const&\29 +5782:GrGLSLUniformHandler::liftUniformToVertexShader\28GrProcessor\20const&\2c\20SkString\29 +5783:GrGLSLShaderBuilder::finalize\28unsigned\20int\29 +5784:GrGLSLShaderBuilder::emitFunction\28char\20const*\2c\20char\20const*\29 +5785:GrGLSLShaderBuilder::emitFunctionPrototype\28char\20const*\29 +5786:GrGLSLShaderBuilder::appendTextureLookupAndBlend\28char\20const*\2c\20SkBlendMode\2c\20GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +5787:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29::$_0::operator\28\29\28char\20const*\2c\20GrResourceHandle\2c\20skcms_TFType\29\20const +5788:GrGLSLShaderBuilder::addLayoutQualifier\28char\20const*\2c\20GrGLSLShaderBuilder::InterfaceQualifier\29 +5789:GrGLSLShaderBuilder::GrGLSLShaderBuilder\28GrGLSLProgramBuilder*\29 +5790:GrGLSLProgramDataManager::setRuntimeEffectUniforms\28SkSpan\2c\20SkSpan\20const>\2c\20SkSpan\2c\20void\20const*\29\20const +5791:GrGLSLProgramBuilder::~GrGLSLProgramBuilder\28\29 +5792:GrGLSLBlend::SetBlendModeUniformData\28GrGLSLProgramDataManager\20const&\2c\20GrResourceHandle\2c\20SkBlendMode\29 +5793:GrGLSLBlend::BlendExpression\28GrProcessor\20const*\2c\20GrGLSLUniformHandler*\2c\20GrResourceHandle*\2c\20char\20const*\2c\20char\20const*\2c\20SkBlendMode\29 +5794:GrGLRenderTarget::GrGLRenderTarget\28GrGLGpu*\2c\20SkISize\20const&\2c\20GrGLFormat\2c\20int\2c\20GrGLRenderTarget::IDs\20const&\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5795:GrGLProgramDataManager::set4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +5796:GrGLProgramDataManager::set2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +5797:GrGLProgramBuilder::uniformHandler\28\29 +5798: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 +5799:GrGLProgramBuilder::CreateProgram\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrGLPrecompiledProgram\20const*\29 +5800:GrGLProgram::~GrGLProgram\28\29 +5801:GrGLMakeAssembledWebGLInterface\28void*\2c\20void\20\28*\20\28*\29\28void*\2c\20char\20const*\29\29\28\29\29 +5802:GrGLGpu::~GrGLGpu\28\29 +5803:GrGLGpu::uploadTexData\28SkISize\2c\20unsigned\20int\2c\20SkIRect\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20long\2c\20GrMipLevel\20const*\2c\20int\29 +5804:GrGLGpu::uploadCompressedTexData\28SkTextureCompressionType\2c\20GrGLFormat\2c\20SkISize\2c\20skgpu::Mipmapped\2c\20unsigned\20int\2c\20void\20const*\2c\20unsigned\20long\29 +5805:GrGLGpu::uploadColorToTex\28GrGLFormat\2c\20SkISize\2c\20unsigned\20int\2c\20std::__2::array\2c\20unsigned\20int\29 +5806:GrGLGpu::readOrTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20int\29 +5807:GrGLGpu::getCompatibleStencilIndex\28GrGLFormat\29 +5808:GrGLGpu::deleteSync\28__GLsync*\29 +5809:GrGLGpu::createRenderTargetObjects\28GrGLTexture::Desc\20const&\2c\20int\2c\20GrGLRenderTarget::IDs*\29 +5810:GrGLGpu::createCompressedTexture2D\28SkISize\2c\20SkTextureCompressionType\2c\20GrGLFormat\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrGLTextureParameters::SamplerOverriddenState*\29 +5811:GrGLGpu::bindFramebuffer\28unsigned\20int\2c\20unsigned\20int\29 +5812:GrGLGpu::ProgramCache::reset\28\29 +5813:GrGLGpu::ProgramCache::findOrCreateProgramImpl\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrThreadSafePipelineBuilder::Stats::ProgramCacheResult*\29 +5814: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 +5815: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 +5816:GrGLFormatIsCompressed\28GrGLFormat\29 +5817:GrGLFinishCallbacks::check\28\29 +5818:GrGLContext::~GrGLContext\28\29.1 +5819:GrGLContext::~GrGLContext\28\29 +5820:GrGLCaps::~GrGLCaps\28\29 +5821:GrGLCaps::getTexSubImageExternalFormatAndType\28GrGLFormat\2c\20GrColorType\2c\20GrColorType\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +5822:GrGLCaps::getTexSubImageDefaultFormatTypeAndColorType\28GrGLFormat\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20GrColorType*\29\20const +5823:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrGLFormat\29\20const +5824:GrGLCaps::formatSupportsTexStorage\28GrGLFormat\29\20const +5825:GrGLCaps::canCopyAsDraw\28GrGLFormat\2c\20bool\2c\20bool\29\20const +5826: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 +5827:GrFragmentProcessor::~GrFragmentProcessor\28\29 +5828:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +5829:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +5830:GrFragmentProcessor::ProgramImpl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +5831:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::Make\28std::__2::unique_ptr>\29 +5832:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +5833:GrFragmentProcessor::ClampOutput\28std::__2::unique_ptr>\29 +5834:GrFixedClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +5835:GrFixedClip::getConservativeBounds\28\29\20const +5836:GrFixedClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +5837:GrEagerDynamicVertexAllocator::unlock\28int\29 +5838:GrDynamicAtlas::readView\28GrCaps\20const&\29\20const +5839:GrDynamicAtlas::instantiate\28GrOnFlushResourceProvider*\2c\20sk_sp\29 +5840:GrDriverBugWorkarounds::GrDriverBugWorkarounds\28\29 +5841:GrDrawingManager::getLastRenderTask\28GrSurfaceProxy\20const*\29\20const +5842:GrDrawingManager::flush\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +5843:GrDrawOpAtlasConfig::atlasDimensions\28skgpu::MaskFormat\29\20const +5844:GrDrawOpAtlasConfig::GrDrawOpAtlasConfig\28int\2c\20unsigned\20long\29 +5845:GrDrawOpAtlas::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +5846: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 +5847:GrDistanceFieldA8TextGeoProc::onTextureSampler\28int\29\20const +5848:GrDistanceFieldA8TextGeoProc::addNewViews\28GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\29 +5849:GrDisableColorXPFactory::MakeXferProcessor\28\29 +5850:GrDirectContextPriv::validPMUPMConversionExists\28\29 +5851:GrDirectContext::~GrDirectContext\28\29 +5852:GrDirectContext::onGetSmallPathAtlasMgr\28\29 +5853:GrDirectContext::getResourceCacheLimits\28int*\2c\20unsigned\20long*\29\20const +5854:GrCopyRenderTask::~GrCopyRenderTask\28\29 +5855:GrCopyRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +5856:GrCopyBaseMipMapToView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Budgeted\29 +5857:GrContext_Base::threadSafeProxy\28\29 +5858:GrContext_Base::maxSurfaceSampleCountForColorType\28SkColorType\29\20const +5859:GrContext_Base::backend\28\29\20const +5860:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29 +5861:GrColorInfo::makeColorType\28GrColorType\29\20const +5862:GrColorInfo::isLinearlyBlended\28\29\20const +5863:GrColorFragmentProcessorAnalysis::GrColorFragmentProcessorAnalysis\28GrProcessorAnalysisColor\20const&\2c\20std::__2::unique_ptr>\20const*\2c\20int\29 +5864:GrClip::IsPixelAligned\28SkRect\20const&\29 +5865:GrCaps::surfaceSupportsWritePixels\28GrSurface\20const*\29\20const +5866:GrCaps::getDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\2c\20bool\29\20const +5867:GrCPixmap::GrCPixmap\28GrPixmap\20const&\29 +5868:GrBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\2c\20unsigned\20long*\29 +5869:GrBufferAllocPool::createBlock\28unsigned\20long\29 +5870:GrBufferAllocPool::CpuBufferCache::makeBuffer\28unsigned\20long\2c\20bool\29 +5871: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 +5872:GrBlurUtils::draw_mask\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20GrPaint&&\2c\20GrSurfaceProxyView\29 +5873: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 +5874: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 +5875:GrBitmapTextGeoProc::addNewViews\28GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\29 +5876:GrBicubicEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +5877: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 +5878:GrBackendTextures::MakeGL\28int\2c\20int\2c\20skgpu::Mipmapped\2c\20GrGLTextureInfo\20const&\2c\20std::__2::basic_string_view>\29 +5879:GrBackendTexture::operator=\28GrBackendTexture\20const&\29 +5880:GrBackendRenderTargets::MakeGL\28int\2c\20int\2c\20int\2c\20int\2c\20GrGLFramebufferInfo\20const&\29 +5881:GrBackendRenderTargets::GetGLFramebufferInfo\28GrBackendRenderTarget\20const&\2c\20GrGLFramebufferInfo*\29 +5882:GrBackendRenderTarget::~GrBackendRenderTarget\28\29 +5883:GrBackendRenderTarget::isProtected\28\29\20const +5884:GrBackendFormatBytesPerBlock\28GrBackendFormat\20const&\29 +5885:GrBackendFormat::makeTexture2D\28\29\20const +5886:GrBackendFormat::isMockStencilFormat\28\29\20const +5887:GrBackendFormat::MakeMock\28GrColorType\2c\20SkTextureCompressionType\2c\20bool\29 +5888:GrAuditTrail::opsCombined\28GrOp\20const*\2c\20GrOp\20const*\29 +5889: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 +5890:GrAtlasManager::~GrAtlasManager\28\29 +5891:GrAtlasManager::getViews\28skgpu::MaskFormat\2c\20unsigned\20int*\29 +5892:GrAtlasManager::freeAll\28\29 +5893:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::EventList*\2c\20GrTriangulator::Comparator\20const&\29\20const +5894:GrAATriangulator::collapseOverlapRegions\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\2c\20GrAATriangulator::EventComparator\29 +5895:GrAAConvexTessellator::quadTo\28SkPoint\20const*\29 +5896:GetVariationDesignPosition\28AutoFTAccess&\2c\20SkFontArguments::VariationPosition::Coordinate*\2c\20int\29 +5897:GetShapedLines\28skia::textlayout::Paragraph&\29 +5898:GetLargeValue +5899:FontMgrRunIterator::endOfCurrentRun\28\29\20const +5900:FontMgrRunIterator::atEnd\28\29\20const +5901:FinishRow +5902:FindUndone\28SkOpContourHead*\29 +5903:FT_Stream_Close +5904:FT_Sfnt_Table_Info +5905:FT_Render_Glyph_Internal +5906:FT_Remove_Module +5907:FT_Outline_Get_Orientation +5908:FT_Outline_EmboldenXY +5909:FT_New_Library +5910:FT_New_GlyphSlot +5911:FT_List_Iterate +5912:FT_List_Find +5913:FT_List_Finalize +5914:FT_GlyphLoader_CheckSubGlyphs +5915:FT_Get_Postscript_Name +5916:FT_Get_Paint_Layers +5917:FT_Get_PS_Font_Info +5918:FT_Get_Kerning +5919:FT_Get_Glyph_Name +5920:FT_Get_FSType_Flags +5921:FT_Get_Colorline_Stops +5922:FT_Get_Color_Glyph_ClipBox +5923:FT_Bitmap_Convert +5924:FT_Add_Default_Modules +5925:EllipticalRRectOp::~EllipticalRRectOp\28\29.1 +5926:EllipticalRRectOp::~EllipticalRRectOp\28\29 +5927:EllipticalRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +5928:EllipticalRRectOp::RRect&\20skia_private::TArray::emplace_back\28EllipticalRRectOp::RRect&&\29 +5929:EllipticalRRectOp::EllipticalRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20SkPoint\2c\20bool\29 +5930:EllipseOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\29 +5931:EllipseOp::EllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20EllipseOp::DeviceSpaceParams\20const&\2c\20SkStrokeRec\20const&\29 +5932:EllipseGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +5933:DIEllipseOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\29 +5934:DIEllipseOp::DIEllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20DIEllipseOp::DeviceSpaceParams\20const&\2c\20SkMatrix\20const&\29 +5935:CustomXP::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +5936: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 +5937:Cr_z_deflateReset +5938:Cr_z_deflate +5939:Cr_z_crc32_z +5940:CoverageSetOpXP::onIsEqual\28GrXferProcessor\20const&\29\20const +5941:CircularRRectOp::~CircularRRectOp\28\29.1 +5942:CircularRRectOp::~CircularRRectOp\28\29 +5943:CircularRRectOp::CircularRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +5944:CircleOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +5945:CircleOp::CircleOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +5946:CircleGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +5947:CheckDecBuffer +5948:CFF::path_procs_t::rlineto\28CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\29 +5949:CFF::dict_interpreter_t\2c\20CFF::interp_env_t>::interpret\28CFF::cff1_private_dict_values_base_t&\29 +5950:CFF::cff2_cs_opset_t::process_blend\28CFF::cff2_cs_interp_env_t&\2c\20cff2_extents_param_t&\29 +5951:CFF::FDSelect3_4\2c\20OT::IntType>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5952:CFF::Charset::get_sid\28unsigned\20int\2c\20unsigned\20int\2c\20CFF::code_pair_t*\29\20const +5953:CFF::CFFIndex>::get_size\28\29\20const +5954:CFF::CFF2FDSelect::get_fd\28unsigned\20int\29\20const +5955: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 +5956:BuildHuffmanTable +5957:AutoLayerForImageFilter::addMaskFilterLayer\28SkRect\20const*\29 +5958:AsWinding\28SkPath\20const&\2c\20SkPath*\29 +5959:AngleWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int*\2c\20bool*\29 +5960:AddIntersectTs\28SkOpContour*\2c\20SkOpContour*\2c\20SkOpCoincidence*\29 +5961:ActiveEdgeList::replace\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +5962:ActiveEdgeList::remove\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +5963:ActiveEdgeList::insert\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +5964:AAT::hb_aat_apply_context_t::return_t\20AAT::ChainSubtable::dispatch\28AAT::hb_aat_apply_context_t*\29\20const +5965:AAT::hb_aat_apply_context_t::return_t\20AAT::ChainSubtable::dispatch\28AAT::hb_aat_apply_context_t*\29\20const +5966:AAT::TrackData::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5967:AAT::TrackData::get_tracking\28void\20const*\2c\20float\29\20const +5968:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5969:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5970:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5971:AAT::RearrangementSubtable::driver_context_t::transition\28AAT::StateTableDriver*\2c\20AAT::Entry\20const&\29 +5972:AAT::NoncontextualSubtable::apply\28AAT::hb_aat_apply_context_t*\29\20const +5973:AAT::Lookup>::sanitize\28hb_sanitize_context_t*\29\20const +5974:AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +5975:AAT::InsertionSubtable::driver_context_t::transition\28AAT::StateTableDriver::EntryData>*\2c\20AAT::Entry::EntryData>\20const&\29 +5976:ycck_cmyk_convert +5977:ycc_rgb_convert +5978:ycc_rgb565_convert +5979:ycc_rgb565D_convert +5980:xyzd50_to_lab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +5981:xyzd50_to_hcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +5982:wuffs_gif__decoder__tell_me_more +5983:wuffs_gif__decoder__set_report_metadata +5984:wuffs_gif__decoder__num_decoded_frame_configs +5985:wuffs_base__pixel_swizzler__xxxxxxxx__index_binary_alpha__src_over +5986:wuffs_base__pixel_swizzler__xxxxxxxx__index__src +5987:wuffs_base__pixel_swizzler__xxxx__index_binary_alpha__src_over +5988:wuffs_base__pixel_swizzler__xxxx__index__src +5989:wuffs_base__pixel_swizzler__xxx__index_binary_alpha__src_over +5990:wuffs_base__pixel_swizzler__xxx__index__src +5991:wuffs_base__pixel_swizzler__transparent_black_src_over +5992:wuffs_base__pixel_swizzler__transparent_black_src +5993:wuffs_base__pixel_swizzler__copy_1_1 +5994:wuffs_base__pixel_swizzler__bgr_565__index_binary_alpha__src_over +5995:wuffs_base__pixel_swizzler__bgr_565__index__src +5996:webgl_get_gl_proc\28void*\2c\20char\20const*\29 +5997:void\20std::__2::vector>::__emplace_back_slow_path\28char\20const*&\2c\20int&&\29 +5998:void\20std::__2::__call_once_proxy\5babi:v160004\5d>\28void*\29 +5999:void\20std::__2::__call_once_proxy\5babi:v160004\5d>\28void*\29 +6000:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +6001:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +6002:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +6003:void\20emscripten::internal::raw_destructor\28SkVertices::Builder*\29 +6004:void\20emscripten::internal::raw_destructor\28SkRuntimeEffect::TracedShader*\29 +6005:void\20emscripten::internal::raw_destructor\28SkPictureRecorder*\29 +6006:void\20emscripten::internal::raw_destructor\28SkPath*\29 +6007:void\20emscripten::internal::raw_destructor\28SkPaint*\29 +6008:void\20emscripten::internal::raw_destructor\28SkContourMeasureIter*\29 +6009:void\20emscripten::internal::raw_destructor\28SimpleImageInfo*\29 +6010:void\20emscripten::internal::MemberAccess::setWire\28SimpleTextStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle&\2c\20SimpleTextStyle*\29 +6011:void\20emscripten::internal::MemberAccess::setWire\28SimpleStrutStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle&\2c\20SimpleStrutStyle*\29 +6012:void\20emscripten::internal::MemberAccess>::setWire\28sk_sp\20SimpleImageInfo::*\20const&\2c\20SimpleImageInfo&\2c\20sk_sp*\29 +6013:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::TypefaceFontProvider*\29 +6014:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::ParagraphBuilderImpl*\29 +6015:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::Paragraph*\29 +6016:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::FontCollection*\29 +6017:void\20const*\20emscripten::internal::getActualType\28SkVertices*\29 +6018:void\20const*\20emscripten::internal::getActualType\28SkVertices::Builder*\29 +6019:void\20const*\20emscripten::internal::getActualType\28SkTypeface*\29 +6020:void\20const*\20emscripten::internal::getActualType\28SkTextBlob*\29 +6021:void\20const*\20emscripten::internal::getActualType\28SkSurface*\29 +6022:void\20const*\20emscripten::internal::getActualType\28SkShader*\29 +6023:void\20const*\20emscripten::internal::getActualType\28SkSL::DebugTrace*\29 +6024:void\20const*\20emscripten::internal::getActualType\28SkRuntimeEffect*\29 +6025:void\20const*\20emscripten::internal::getActualType\28SkPictureRecorder*\29 +6026:void\20const*\20emscripten::internal::getActualType\28SkPicture*\29 +6027:void\20const*\20emscripten::internal::getActualType\28SkPathEffect*\29 +6028:void\20const*\20emscripten::internal::getActualType\28SkPath*\29 +6029:void\20const*\20emscripten::internal::getActualType\28SkPaint*\29 +6030:void\20const*\20emscripten::internal::getActualType\28SkMaskFilter*\29 +6031:void\20const*\20emscripten::internal::getActualType\28SkImageFilter*\29 +6032:void\20const*\20emscripten::internal::getActualType\28SkImage*\29 +6033:void\20const*\20emscripten::internal::getActualType\28SkFontMgr*\29 +6034:void\20const*\20emscripten::internal::getActualType\28SkFont*\29 +6035:void\20const*\20emscripten::internal::getActualType\28SkContourMeasureIter*\29 +6036:void\20const*\20emscripten::internal::getActualType\28SkContourMeasure*\29 +6037:void\20const*\20emscripten::internal::getActualType\28SkColorSpace*\29 +6038:void\20const*\20emscripten::internal::getActualType\28SkColorFilter*\29 +6039:void\20const*\20emscripten::internal::getActualType\28SkCanvas*\29 +6040:void\20const*\20emscripten::internal::getActualType\28SkBlender*\29 +6041:void\20const*\20emscripten::internal::getActualType\28SkAnimatedImage*\29 +6042:void\20const*\20emscripten::internal::getActualType\28GrDirectContext*\29 +6043:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6044:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6045:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6046:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6047:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6048:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6049:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6050:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6051:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6052:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6053:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6054:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6055:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6056:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6057:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6058:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6059:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6060:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6061:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6062:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6063:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6064:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6065:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6066:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6067:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6068:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6069:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6070:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6071:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6072:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6073:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6074:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6075:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6076:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6077:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6078:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6079:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6080:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6081:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6082:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6083:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6084:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6085:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6086:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6087:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6088:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6089:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6090:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6091:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6092:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6093:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6094:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6095:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6096:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6097:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6098:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6099:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6100:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6101:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6102:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6103:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6104:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6105:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6106:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6107:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6108:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6109:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6110:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6111:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6112:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6113:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6114:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6115:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6116:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6117:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6118:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6119:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6120:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6121:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6122:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6123:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6124:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6125:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6126:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6127:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6128:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6129:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6130:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6131:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6132:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6133:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6134:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6135:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6136:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6137:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6138:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +6139: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 +6140: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 +6141: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 +6142: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 +6143: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 +6144: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 +6145: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 +6146: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 +6147: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 +6148: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 +6149: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 +6150: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 +6151:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +6152:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +6153:virtual\20thunk\20to\20std::__2::basic_ostream>::~basic_ostream\28\29.1 +6154:virtual\20thunk\20to\20std::__2::basic_ostream>::~basic_ostream\28\29 +6155:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29.1 +6156:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29 +6157:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +6158:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +6159:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +6160:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +6161:virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +6162:virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +6163:virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +6164:virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +6165:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29.1 +6166:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29 +6167:virtual\20thunk\20to\20GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +6168:virtual\20thunk\20to\20GrTextureProxy::instantiate\28GrResourceProvider*\29 +6169:virtual\20thunk\20to\20GrTextureProxy::getUniqueKey\28\29\20const +6170:virtual\20thunk\20to\20GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +6171:virtual\20thunk\20to\20GrTextureProxy::callbackDesc\28\29\20const +6172:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29\20const +6173:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29 +6174:virtual\20thunk\20to\20GrTexture::onGpuMemorySize\28\29\20const +6175:virtual\20thunk\20to\20GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +6176:virtual\20thunk\20to\20GrTexture::asTexture\28\29\20const +6177:virtual\20thunk\20to\20GrTexture::asTexture\28\29 +6178:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +6179:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +6180:virtual\20thunk\20to\20GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +6181:virtual\20thunk\20to\20GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +6182:virtual\20thunk\20to\20GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +6183:virtual\20thunk\20to\20GrRenderTargetProxy::callbackDesc\28\29\20const +6184:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29\20const +6185:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29 +6186:virtual\20thunk\20to\20GrRenderTarget::onRelease\28\29 +6187:virtual\20thunk\20to\20GrRenderTarget::onAbandon\28\29 +6188:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29\20const +6189:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29 +6190:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +6191:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +6192:virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +6193:virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +6194:virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +6195:virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +6196:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29.1 +6197:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29 +6198:virtual\20thunk\20to\20GrGLTexture::onRelease\28\29 +6199:virtual\20thunk\20to\20GrGLTexture::onAbandon\28\29 +6200:virtual\20thunk\20to\20GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +6201:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +6202:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +6203:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::onFinalize\28\29 +6204:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +6205:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29 +6206:virtual\20thunk\20to\20GrGLRenderTarget::onRelease\28\29 +6207:virtual\20thunk\20to\20GrGLRenderTarget::onGpuMemorySize\28\29\20const +6208:virtual\20thunk\20to\20GrGLRenderTarget::onAbandon\28\29 +6209:virtual\20thunk\20to\20GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +6210:virtual\20thunk\20to\20GrGLRenderTarget::backendFormat\28\29\20const +6211:utf8TextMapOffsetToNative\28UText\20const*\29 +6212:utf8TextMapIndexToUTF16\28UText\20const*\2c\20long\20long\29 +6213:utf8TextLength\28UText*\29 +6214:utf8TextExtract\28UText*\2c\20long\20long\2c\20long\20long\2c\20char16_t*\2c\20int\2c\20UErrorCode*\29 +6215:utf8TextClone\28UText*\2c\20UText\20const*\2c\20signed\20char\2c\20UErrorCode*\29 +6216:utext_openUTF8_74 +6217:ures_loc_resetLocales\28UEnumeration*\2c\20UErrorCode*\29 +6218:ures_loc_nextLocale\28UEnumeration*\2c\20int*\2c\20UErrorCode*\29 +6219:ures_loc_countLocales\28UEnumeration*\2c\20UErrorCode*\29 +6220:ures_loc_closeLocales\28UEnumeration*\29 +6221:ures_cleanup\28\29 +6222:unistrTextReplace\28UText*\2c\20long\20long\2c\20long\20long\2c\20char16_t\20const*\2c\20int\2c\20UErrorCode*\29 +6223:unistrTextLength\28UText*\29 +6224:unistrTextExtract\28UText*\2c\20long\20long\2c\20long\20long\2c\20char16_t*\2c\20int\2c\20UErrorCode*\29 +6225:unistrTextCopy\28UText*\2c\20long\20long\2c\20long\20long\2c\20long\20long\2c\20signed\20char\2c\20UErrorCode*\29 +6226:unistrTextClose\28UText*\29 +6227:unistrTextClone\28UText*\2c\20UText\20const*\2c\20signed\20char\2c\20UErrorCode*\29 +6228:unistrTextAccess\28UText*\2c\20long\20long\2c\20signed\20char\29 +6229:uloc_kw_resetKeywords\28UEnumeration*\2c\20UErrorCode*\29 +6230:uloc_kw_nextKeyword\28UEnumeration*\2c\20int*\2c\20UErrorCode*\29 +6231:uloc_kw_countKeywords\28UEnumeration*\2c\20UErrorCode*\29 +6232:uloc_kw_closeKeywords\28UEnumeration*\29 +6233:uloc_key_type_cleanup\28\29 +6234:uloc_getDefault_74 +6235:uloc_forLanguageTag_74 +6236:uhash_hashUnicodeString_74 +6237:uhash_hashUChars_74 +6238:uhash_hashIChars_74 +6239:uhash_deleteHashtable_74 +6240:uhash_compareUnicodeString_74 +6241:uhash_compareUChars_74 +6242:uhash_compareLong_74 +6243:uhash_compareIChars_74 +6244:uenum_unextDefault_74 +6245:udata_cleanup\28\29 +6246:ucstrTextLength\28UText*\29 +6247:ucstrTextExtract\28UText*\2c\20long\20long\2c\20long\20long\2c\20char16_t*\2c\20int\2c\20UErrorCode*\29 +6248:ucstrTextClone\28UText*\2c\20UText\20const*\2c\20signed\20char\2c\20UErrorCode*\29 +6249:ubrk_setUText_74 +6250:ubrk_setText_74 +6251:ubrk_preceding_74 +6252:ubrk_open_74 +6253:ubrk_next_74 +6254:ubrk_getRuleStatus_74 +6255:ubrk_following_74 +6256:ubrk_first_74 +6257:ubrk_current_74 +6258:ubidi_reorderVisual_74 +6259:ubidi_openSized_74 +6260:ubidi_getLevelAt_74 +6261:ubidi_getLength_74 +6262:ubidi_getDirection_74 +6263:u_strToUpper_74 +6264:u_isspace_74 +6265:u_iscntrl_74 +6266:u_isWhitespace_74 +6267:u_errorName_74 +6268:tt_vadvance_adjust +6269:tt_slot_init +6270:tt_size_select +6271:tt_size_reset_iterator +6272:tt_size_request +6273:tt_size_init +6274:tt_size_done +6275:tt_sbit_decoder_load_png +6276:tt_sbit_decoder_load_compound +6277:tt_sbit_decoder_load_byte_aligned +6278:tt_sbit_decoder_load_bit_aligned +6279:tt_property_set +6280:tt_property_get +6281:tt_name_ascii_from_utf16 +6282:tt_name_ascii_from_other +6283:tt_hadvance_adjust +6284:tt_glyph_load +6285:tt_get_var_blend +6286:tt_get_interface +6287:tt_get_glyph_name +6288:tt_get_cmap_info +6289:tt_get_advances +6290:tt_face_set_sbit_strike +6291:tt_face_load_strike_metrics +6292:tt_face_load_sbit_image +6293:tt_face_load_sbit +6294:tt_face_load_post +6295:tt_face_load_pclt +6296:tt_face_load_os2 +6297:tt_face_load_name +6298:tt_face_load_maxp +6299:tt_face_load_kern +6300:tt_face_load_hmtx +6301:tt_face_load_hhea +6302:tt_face_load_head +6303:tt_face_load_gasp +6304:tt_face_load_font_dir +6305:tt_face_load_cpal +6306:tt_face_load_colr +6307:tt_face_load_cmap +6308:tt_face_load_bhed +6309:tt_face_load_any +6310:tt_face_init +6311:tt_face_goto_table +6312:tt_face_get_paint_layers +6313:tt_face_get_paint +6314:tt_face_get_kerning +6315:tt_face_get_colr_layer +6316:tt_face_get_colr_glyph_paint +6317:tt_face_get_colorline_stops +6318:tt_face_get_color_glyph_clipbox +6319:tt_face_free_sbit +6320:tt_face_free_ps_names +6321:tt_face_free_name +6322:tt_face_free_cpal +6323:tt_face_free_colr +6324:tt_face_done +6325:tt_face_colr_blend_layer +6326:tt_driver_init +6327:tt_cvt_ready_iterator +6328:tt_cmap_unicode_init +6329:tt_cmap_unicode_char_next +6330:tt_cmap_unicode_char_index +6331:tt_cmap_init +6332:tt_cmap8_validate +6333:tt_cmap8_get_info +6334:tt_cmap8_char_next +6335:tt_cmap8_char_index +6336:tt_cmap6_validate +6337:tt_cmap6_get_info +6338:tt_cmap6_char_next +6339:tt_cmap6_char_index +6340:tt_cmap4_validate +6341:tt_cmap4_init +6342:tt_cmap4_get_info +6343:tt_cmap4_char_next +6344:tt_cmap4_char_index +6345:tt_cmap2_validate +6346:tt_cmap2_get_info +6347:tt_cmap2_char_next +6348:tt_cmap2_char_index +6349:tt_cmap14_variants +6350:tt_cmap14_variant_chars +6351:tt_cmap14_validate +6352:tt_cmap14_init +6353:tt_cmap14_get_info +6354:tt_cmap14_done +6355:tt_cmap14_char_variants +6356:tt_cmap14_char_var_isdefault +6357:tt_cmap14_char_var_index +6358:tt_cmap14_char_next +6359:tt_cmap13_validate +6360:tt_cmap13_get_info +6361:tt_cmap13_char_next +6362:tt_cmap13_char_index +6363:tt_cmap12_validate +6364:tt_cmap12_get_info +6365:tt_cmap12_char_next +6366:tt_cmap12_char_index +6367:tt_cmap10_validate +6368:tt_cmap10_get_info +6369:tt_cmap10_char_next +6370:tt_cmap10_char_index +6371:tt_cmap0_validate +6372:tt_cmap0_get_info +6373:tt_cmap0_char_next +6374:tt_cmap0_char_index +6375:transform_scanline_rgbA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6376:transform_scanline_memcpy\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6377:transform_scanline_bgra_1010102_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6378:transform_scanline_bgra_1010102\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6379:transform_scanline_bgra_10101010_xr\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6380:transform_scanline_bgr_101010x_xr\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6381:transform_scanline_bgr_101010x\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6382:transform_scanline_bgrA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6383:transform_scanline_RGBX\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6384:transform_scanline_F32_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6385:transform_scanline_F32\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6386:transform_scanline_F16_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6387:transform_scanline_F16\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6388:transform_scanline_BGRX\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6389:transform_scanline_BGRA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6390:transform_scanline_A8_to_GrayAlpha\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6391:transform_scanline_565\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6392:transform_scanline_444\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6393:transform_scanline_4444\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6394:transform_scanline_101010x\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6395:transform_scanline_1010102_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6396:transform_scanline_1010102\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +6397:t2_hints_stems +6398:t2_hints_open +6399:t1_make_subfont +6400:t1_hints_stem +6401:t1_hints_open +6402:t1_decrypt +6403:t1_decoder_parse_metrics +6404:t1_decoder_init +6405:t1_decoder_done +6406:t1_cmap_unicode_init +6407:t1_cmap_unicode_char_next +6408:t1_cmap_unicode_char_index +6409:t1_cmap_std_done +6410:t1_cmap_std_char_next +6411:t1_cmap_std_char_index +6412:t1_cmap_standard_init +6413:t1_cmap_expert_init +6414:t1_cmap_custom_init +6415:t1_cmap_custom_done +6416:t1_cmap_custom_char_next +6417:t1_cmap_custom_char_index +6418:t1_builder_start_point +6419:t1_builder_init +6420:t1_builder_add_point1 +6421:t1_builder_add_point +6422:t1_builder_add_contour +6423:swizzle_small_index_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6424:swizzle_small_index_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6425:swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6426:swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6427:swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6428:swizzle_rgba16_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6429:swizzle_rgba16_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6430:swizzle_rgba16_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6431:swizzle_rgba16_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6432:swizzle_rgb_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6433:swizzle_rgb_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6434:swizzle_rgb_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6435:swizzle_rgb16_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6436:swizzle_rgb16_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6437:swizzle_rgb16_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6438:swizzle_mask32_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6439:swizzle_mask32_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6440:swizzle_mask32_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6441:swizzle_mask32_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6442:swizzle_mask32_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6443:swizzle_mask32_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6444:swizzle_mask32_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6445:swizzle_mask24_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6446:swizzle_mask24_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6447:swizzle_mask24_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6448:swizzle_mask24_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6449:swizzle_mask24_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6450:swizzle_mask24_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6451:swizzle_mask24_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6452:swizzle_mask16_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6453:swizzle_mask16_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6454:swizzle_mask16_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6455:swizzle_mask16_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6456:swizzle_mask16_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6457:swizzle_mask16_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6458:swizzle_mask16_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6459:swizzle_index_to_n32_skipZ\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6460:swizzle_index_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6461:swizzle_index_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6462:swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6463:swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6464:swizzle_grayalpha_to_a8\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6465:swizzle_gray_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6466:swizzle_gray_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6467:swizzle_cmyk_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6468:swizzle_cmyk_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6469:swizzle_cmyk_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6470:swizzle_bit_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6471:swizzle_bit_to_grayscale\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6472:swizzle_bit_to_f16\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6473:swizzle_bit_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6474:swizzle_bgr_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6475:string_read +6476:std::exception::what\28\29\20const +6477:std::bad_variant_access::what\28\29\20const +6478:std::bad_optional_access::what\28\29\20const +6479:std::bad_array_new_length::what\28\29\20const +6480:std::bad_alloc::what\28\29\20const +6481:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +6482:std::__2::unique_ptr>::operator=\5babi:v160004\5d\28std::__2::unique_ptr>&&\29 +6483: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 +6484: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 +6485: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 +6486: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 +6487: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 +6488: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 +6489: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 +6490: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 +6491: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 +6492: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 +6493: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 +6494: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 +6495: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 +6496: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 +6497:std::__2::numpunct::~numpunct\28\29.1 +6498:std::__2::numpunct::do_truename\28\29\20const +6499:std::__2::numpunct::do_grouping\28\29\20const +6500:std::__2::numpunct::do_falsename\28\29\20const +6501:std::__2::numpunct::~numpunct\28\29.1 +6502:std::__2::numpunct::do_truename\28\29\20const +6503:std::__2::numpunct::do_thousands_sep\28\29\20const +6504:std::__2::numpunct::do_grouping\28\29\20const +6505:std::__2::numpunct::do_falsename\28\29\20const +6506:std::__2::numpunct::do_decimal_point\28\29\20const +6507:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20void\20const*\29\20const +6508:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\29\20const +6509:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\20long\29\20const +6510:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\29\20const +6511:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20long\29\20const +6512:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20double\29\20const +6513:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20double\29\20const +6514:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20bool\29\20const +6515:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20void\20const*\29\20const +6516:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\29\20const +6517:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\20long\29\20const +6518:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +6519:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20long\29\20const +6520:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +6521:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20double\29\20const +6522:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20bool\29\20const +6523: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 +6524: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 +6525: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 +6526: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 +6527: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 +6528: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 +6529: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 +6530: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 +6531: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 +6532: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 +6533: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 +6534: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 +6535: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 +6536: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 +6537: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 +6538: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 +6539: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 +6540: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 +6541: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 +6542: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 +6543: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 +6544:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +6545: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 +6546: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 +6547: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 +6548: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 +6549:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +6550:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +6551:std::__2::locale::id::__init\28\29 +6552:std::__2::locale::__imp::~__imp\28\29.1 +6553:std::__2::ios_base::~ios_base\28\29.1 +6554:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +6555:std::__2::ctype::do_toupper\28wchar_t\29\20const +6556:std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +6557:std::__2::ctype::do_tolower\28wchar_t\29\20const +6558:std::__2::ctype::do_tolower\28wchar_t*\2c\20wchar_t\20const*\29\20const +6559:std::__2::ctype::do_scan_not\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +6560:std::__2::ctype::do_scan_is\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +6561:std::__2::ctype::do_narrow\28wchar_t\2c\20char\29\20const +6562:std::__2::ctype::do_narrow\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20char\2c\20char*\29\20const +6563:std::__2::ctype::do_is\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20unsigned\20long*\29\20const +6564:std::__2::ctype::do_is\28unsigned\20long\2c\20wchar_t\29\20const +6565:std::__2::ctype::~ctype\28\29.1 +6566:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +6567:std::__2::ctype::do_toupper\28char\29\20const +6568:std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +6569:std::__2::ctype::do_tolower\28char\29\20const +6570:std::__2::ctype::do_tolower\28char*\2c\20char\20const*\29\20const +6571:std::__2::ctype::do_narrow\28char\2c\20char\29\20const +6572:std::__2::ctype::do_narrow\28char\20const*\2c\20char\20const*\2c\20char\2c\20char*\29\20const +6573:std::__2::collate::do_transform\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +6574:std::__2::collate::do_hash\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +6575:std::__2::collate::do_compare\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +6576:std::__2::collate::do_transform\28char\20const*\2c\20char\20const*\29\20const +6577:std::__2::collate::do_hash\28char\20const*\2c\20char\20const*\29\20const +6578:std::__2::collate::do_compare\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +6579:std::__2::codecvt::~codecvt\28\29.1 +6580:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char*\2c\20char*\2c\20char*&\29\20const +6581: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 +6582:std::__2::codecvt::do_max_length\28\29\20const +6583:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +6584: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 +6585:std::__2::codecvt::do_encoding\28\29\20const +6586:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +6587:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29.1 +6588:std::__2::basic_stringbuf\2c\20std::__2::allocator>::underflow\28\29 +6589:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +6590:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +6591:std::__2::basic_stringbuf\2c\20std::__2::allocator>::pbackfail\28int\29 +6592:std::__2::basic_stringbuf\2c\20std::__2::allocator>::overflow\28int\29 +6593:std::__2::basic_streambuf>::~basic_streambuf\28\29.1 +6594:std::__2::basic_streambuf>::xsputn\28char\20const*\2c\20long\29 +6595:std::__2::basic_streambuf>::xsgetn\28char*\2c\20long\29 +6596:std::__2::basic_streambuf>::uflow\28\29 +6597:std::__2::basic_streambuf>::setbuf\28char*\2c\20long\29 +6598:std::__2::basic_streambuf>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +6599:std::__2::basic_streambuf>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +6600:std::__2::bad_function_call::what\28\29\20const +6601:std::__2::__time_get_c_storage::__x\28\29\20const +6602:std::__2::__time_get_c_storage::__weeks\28\29\20const +6603:std::__2::__time_get_c_storage::__r\28\29\20const +6604:std::__2::__time_get_c_storage::__months\28\29\20const +6605:std::__2::__time_get_c_storage::__c\28\29\20const +6606:std::__2::__time_get_c_storage::__am_pm\28\29\20const +6607:std::__2::__time_get_c_storage::__X\28\29\20const +6608:std::__2::__time_get_c_storage::__x\28\29\20const +6609:std::__2::__time_get_c_storage::__weeks\28\29\20const +6610:std::__2::__time_get_c_storage::__r\28\29\20const +6611:std::__2::__time_get_c_storage::__months\28\29\20const +6612:std::__2::__time_get_c_storage::__c\28\29\20const +6613:std::__2::__time_get_c_storage::__am_pm\28\29\20const +6614:std::__2::__time_get_c_storage::__X\28\29\20const +6615: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 +6616:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6617:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6618:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +6619:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6620:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6621:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +6622:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6623:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6624: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 +6625: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 +6626:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6627: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 +6628: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 +6629: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 +6630: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 +6631: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 +6632:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6633: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 +6634: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 +6635: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 +6636: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 +6637: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 +6638:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6639: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 +6640: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 +6641: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 +6642: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 +6643:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6644:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +6645: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 +6646:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6647:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +6648: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 +6649: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 +6650: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 +6651: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 +6652: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 +6653: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 +6654: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 +6655: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 +6656: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 +6657: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 +6658: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 +6659:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6660: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 +6661: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 +6662: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 +6663: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 +6664: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 +6665:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6666: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 +6667: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 +6668: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 +6669: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 +6670: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 +6671:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6672: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 +6673: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 +6674: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 +6675: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 +6676: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 +6677:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6678: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 +6679: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 +6680: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 +6681: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 +6682: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 +6683: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 +6684: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 +6685: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 +6686: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 +6687: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 +6688: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 +6689: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 +6690:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::operator\28\29\28skia::textlayout::Cluster*&&\29 +6691:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28std::__2::__function::__base*\29\20const +6692:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28\29\20const +6693:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6694:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28\29\20const +6695: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 +6696: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 +6697: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 +6698: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 +6699: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 +6700: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 +6701: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 +6702: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 +6703: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 +6704:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::operator\28\29\28skia::textlayout::SkRange&&\29 +6705:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28std::__2::__function::__base\29>*\29\20const +6706:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28\29\20const +6707: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 +6708: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 +6709: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 +6710:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29.1 +6711:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29 +6712:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::operator\28\29\28void*&&\2c\20void\20const*&&\29 +6713:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy_deallocate\28\29 +6714:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy\28\29 +6715:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6716:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28\29\20const +6717:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6718:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6719:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6720:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6721:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6722:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6723:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +6724:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6725:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6726: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 +6727: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 +6728: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 +6729: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 +6730: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 +6731: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 +6732: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 +6733: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 +6734: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 +6735: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 +6736: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 +6737: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 +6738: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 +6739: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 +6740: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 +6741:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +6742:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6743:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +6744: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 +6745: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 +6746: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 +6747: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 +6748: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 +6749: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 +6750: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 +6751: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 +6752: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 +6753: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 +6754: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 +6755: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 +6756: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 +6757: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 +6758: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 +6759: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 +6760: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 +6761: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 +6762: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 +6763: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 +6764: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 +6765: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 +6766: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 +6767: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 +6768: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 +6769: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 +6770: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 +6771: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 +6772: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 +6773: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 +6774: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 +6775: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 +6776: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 +6777: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 +6778: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 +6779: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 +6780: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 +6781: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 +6782:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29.1 +6783:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29 +6784:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +6785:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy_deallocate\28\29 +6786:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy\28\29 +6787:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6788:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +6789:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +6790:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6791:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +6792: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 +6793: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 +6794:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +6795: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 +6796:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +6797: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 +6798: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 +6799: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 +6800:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::operator\28\29\28SkIRect\20const&\29 +6801:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6802:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +6803: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 +6804: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 +6805: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 +6806:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6807:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6808:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6809:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6810:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6811:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6812:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6813:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6814:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6815:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6816:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6817:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6818:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6819:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6820:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6821:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6822:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6823:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6824:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6825:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6826:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6827: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 +6828: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 +6829: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 +6830:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::operator\28\29\28GrBackendTexture&&\29 +6831:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28std::__2::__function::__base*\29\20const +6832:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28\29\20const +6833:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6834:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6835:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6836:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6837:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6838:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6839:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6840:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6841:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6842:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6843:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6844:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6845: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 +6846: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 +6847: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 +6848:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6849:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6850:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6851:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +6852:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +6853: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 +6854:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6855:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +6856:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +6857:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +6858:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6859:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +6860: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 +6861:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6862: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 +6863:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6864:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28\29\20const +6865:start_pass_upsample +6866:start_pass_phuff_decoder +6867:start_pass_merged_upsample +6868:start_pass_main +6869:start_pass_huff_decoder +6870:start_pass_dpost +6871:start_pass_2_quant +6872:start_pass_1_quant +6873:start_pass +6874:start_output_pass +6875:start_input_pass.1 +6876:stackSave +6877:stackRestore +6878:srgb_to_hwb\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +6879:srgb_to_hsl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +6880:srcover_p\28unsigned\20char\2c\20unsigned\20char\29 +6881:sn_write +6882:sktext::gpu::post_purge_blob_message\28unsigned\20int\2c\20unsigned\20int\29 +6883:sktext::gpu::TextBlob::~TextBlob\28\29.1 +6884:sktext::gpu::TextBlob::~TextBlob\28\29 +6885:sktext::gpu::SubRun::~SubRun\28\29 +6886:sktext::gpu::SlugImpl::~SlugImpl\28\29.1 +6887:sktext::gpu::SlugImpl::~SlugImpl\28\29 +6888:sktext::gpu::SlugImpl::sourceBounds\28\29\20const +6889:sktext::gpu::SlugImpl::sourceBoundsWithOrigin\28\29\20const +6890:sktext::gpu::SlugImpl::doFlatten\28SkWriteBuffer&\29\20const +6891:sktext::gpu::SDFMaskFilterImpl::getTypeName\28\29\20const +6892:sktext::gpu::SDFMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +6893:sktext::gpu::SDFMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +6894:skip_variable +6895:skif::\28anonymous\20namespace\29::RasterBackend::~RasterBackend\28\29 +6896:skif::\28anonymous\20namespace\29::RasterBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +6897:skif::\28anonymous\20namespace\29::RasterBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +6898:skif::\28anonymous\20namespace\29::RasterBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +6899:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +6900:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +6901:skif::\28anonymous\20namespace\29::GaneshBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +6902:skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkImageInfo\20const&\29\20const +6903:skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +6904:skif::\28anonymous\20namespace\29::GaneshBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +6905:skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +6906:skia_png_zalloc +6907:skia_png_write_rows +6908:skia_png_write_info +6909:skia_png_write_end +6910:skia_png_user_version_check +6911:skia_png_set_text +6912:skia_png_set_sRGB +6913:skia_png_set_keep_unknown_chunks +6914:skia_png_set_iCCP +6915:skia_png_set_gray_to_rgb +6916:skia_png_set_filter +6917:skia_png_set_filler +6918:skia_png_read_update_info +6919:skia_png_read_info +6920:skia_png_read_image +6921:skia_png_read_end +6922:skia_png_push_fill_buffer +6923:skia_png_process_data +6924:skia_png_default_write_data +6925:skia_png_default_read_data +6926:skia_png_default_flush +6927:skia_png_create_read_struct +6928:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29.1 +6929:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29 +6930:skia::textlayout::TypefaceFontStyleSet::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +6931:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29.1 +6932:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29 +6933:skia::textlayout::TypefaceFontProvider::onMatchFamily\28char\20const*\29\20const +6934:skia::textlayout::TypefaceFontProvider::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +6935:skia::textlayout::TypefaceFontProvider::onLegacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +6936:skia::textlayout::TypefaceFontProvider::onGetFamilyName\28int\2c\20SkString*\29\20const +6937:skia::textlayout::TypefaceFontProvider::onCreateStyleSet\28int\29\20const +6938:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29.1 +6939:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29 +6940:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6941:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6942:skia::textlayout::PositionWithAffinity*\20emscripten::internal::raw_constructor\28\29 +6943:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29.1 +6944:skia::textlayout::ParagraphImpl::visit\28std::__2::function\20const&\29 +6945:skia::textlayout::ParagraphImpl::updateTextAlign\28skia::textlayout::TextAlign\29 +6946:skia::textlayout::ParagraphImpl::updateForegroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +6947:skia::textlayout::ParagraphImpl::updateFontSize\28unsigned\20long\2c\20unsigned\20long\2c\20float\29 +6948:skia::textlayout::ParagraphImpl::updateBackgroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +6949:skia::textlayout::ParagraphImpl::unresolvedGlyphs\28\29 +6950:skia::textlayout::ParagraphImpl::unresolvedCodepoints\28\29 +6951:skia::textlayout::ParagraphImpl::paint\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\29 +6952:skia::textlayout::ParagraphImpl::paint\28SkCanvas*\2c\20float\2c\20float\29 +6953:skia::textlayout::ParagraphImpl::markDirty\28\29 +6954:skia::textlayout::ParagraphImpl::lineNumber\28\29 +6955:skia::textlayout::ParagraphImpl::layout\28float\29 +6956:skia::textlayout::ParagraphImpl::getWordBoundary\28unsigned\20int\29 +6957:skia::textlayout::ParagraphImpl::getRectsForRange\28unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +6958:skia::textlayout::ParagraphImpl::getRectsForPlaceholders\28\29 +6959: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 +6960:skia::textlayout::ParagraphImpl::getPath\28int\2c\20SkPath*\29 +6961:skia::textlayout::ParagraphImpl::getLineNumberAt\28unsigned\20long\29\20const +6962:skia::textlayout::ParagraphImpl::getLineNumberAtUTF16Offset\28unsigned\20long\29 +6963:skia::textlayout::ParagraphImpl::getLineMetrics\28std::__2::vector>&\29 +6964:skia::textlayout::ParagraphImpl::getLineMetricsAt\28int\2c\20skia::textlayout::LineMetrics*\29\20const +6965:skia::textlayout::ParagraphImpl::getGlyphPositionAtCoordinate\28float\2c\20float\29 +6966:skia::textlayout::ParagraphImpl::getFonts\28\29\20const +6967:skia::textlayout::ParagraphImpl::getFontAt\28unsigned\20long\29\20const +6968:skia::textlayout::ParagraphImpl::getFontAtUTF16Offset\28unsigned\20long\29 +6969:skia::textlayout::ParagraphImpl::getClosestUTF16GlyphInfoAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +6970:skia::textlayout::ParagraphImpl::getClosestGlyphClusterAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +6971:skia::textlayout::ParagraphImpl::getActualTextRange\28int\2c\20bool\29\20const +6972:skia::textlayout::ParagraphImpl::extendedVisit\28std::__2::function\20const&\29 +6973:skia::textlayout::ParagraphImpl::containsEmoji\28SkTextBlob*\29 +6974:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29::$_0::__invoke\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29 +6975:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29 +6976:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29.1 +6977:skia::textlayout::ParagraphBuilderImpl::pushStyle\28skia::textlayout::TextStyle\20const&\29 +6978:skia::textlayout::ParagraphBuilderImpl::pop\28\29 +6979:skia::textlayout::ParagraphBuilderImpl::peekStyle\28\29 +6980:skia::textlayout::ParagraphBuilderImpl::getText\28\29 +6981:skia::textlayout::ParagraphBuilderImpl::getParagraphStyle\28\29\20const +6982:skia::textlayout::ParagraphBuilderImpl::addText\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +6983:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\2c\20unsigned\20long\29 +6984:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\29 +6985:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\29 +6986:skia::textlayout::ParagraphBuilderImpl::Reset\28\29 +6987:skia::textlayout::ParagraphBuilderImpl::RequiresClientICU\28\29 +6988:skia::textlayout::ParagraphBuilderImpl::Build\28\29 +6989:skia::textlayout::Paragraph::getMinIntrinsicWidth\28\29 +6990:skia::textlayout::Paragraph::getMaxWidth\28\29 +6991:skia::textlayout::Paragraph::getMaxIntrinsicWidth\28\29 +6992:skia::textlayout::Paragraph::getLongestLine\28\29 +6993:skia::textlayout::Paragraph::getIdeographicBaseline\28\29 +6994:skia::textlayout::Paragraph::getHeight\28\29 +6995:skia::textlayout::Paragraph::getAlphabeticBaseline\28\29 +6996:skia::textlayout::Paragraph::didExceedMaxLines\28\29 +6997:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29.1 +6998:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29 +6999:skia::textlayout::OneLineShaper::~OneLineShaper\28\29.1 +7000:skia::textlayout::OneLineShaper::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +7001:skia::textlayout::OneLineShaper::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +7002:skia::textlayout::LangIterator::~LangIterator\28\29.1 +7003:skia::textlayout::LangIterator::~LangIterator\28\29 +7004:skia::textlayout::LangIterator::endOfCurrentRun\28\29\20const +7005:skia::textlayout::LangIterator::currentLanguage\28\29\20const +7006:skia::textlayout::LangIterator::consume\28\29 +7007:skia::textlayout::LangIterator::atEnd\28\29\20const +7008:skia::textlayout::FontCollection::~FontCollection\28\29.1 +7009:skia::textlayout::CanvasParagraphPainter::translate\28float\2c\20float\29 +7010:skia::textlayout::CanvasParagraphPainter::save\28\29 +7011:skia::textlayout::CanvasParagraphPainter::restore\28\29 +7012:skia::textlayout::CanvasParagraphPainter::drawTextShadow\28sk_sp\20const&\2c\20float\2c\20float\2c\20unsigned\20int\2c\20float\29 +7013:skia::textlayout::CanvasParagraphPainter::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20std::__2::variant\20const&\29 +7014:skia::textlayout::CanvasParagraphPainter::drawRect\28SkRect\20const&\2c\20std::__2::variant\20const&\29 +7015:skia::textlayout::CanvasParagraphPainter::drawPath\28SkPath\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +7016:skia::textlayout::CanvasParagraphPainter::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +7017:skia::textlayout::CanvasParagraphPainter::drawFilledRect\28SkRect\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +7018:skia::textlayout::CanvasParagraphPainter::clipRect\28SkRect\20const&\29 +7019:skgpu::tess::FixedCountWedges::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +7020:skgpu::tess::FixedCountWedges::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +7021:skgpu::tess::FixedCountStrokes::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +7022:skgpu::tess::FixedCountCurves::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +7023:skgpu::tess::FixedCountCurves::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +7024:skgpu::ganesh::texture_proxy_view_from_planes\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20skgpu::Budgeted\29::$_0::__invoke\28void*\2c\20void*\29 +7025:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29.1 +7026:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::visitProxies\28std::__2::function\20const&\29\20const +7027:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7028:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7029:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7030:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::name\28\29\20const +7031:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::fixedFunctionFlags\28\29\20const +7032:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7033:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::name\28\29\20const +7034:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7035:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7036:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7037:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +7038:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29.1 +7039:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29 +7040:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::name\28\29\20const +7041: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 +7042:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7043:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29.1 +7044:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29 +7045:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +7046:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7047:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7048: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 +7049:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7050:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::name\28\29\20const +7051:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::fixedFunctionFlags\28\29\20const +7052:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7053:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29.1 +7054:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29 +7055:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +7056:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7057:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7058: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 +7059:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7060:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::name\28\29\20const +7061:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7062:skgpu::ganesh::TriangulatingPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7063:skgpu::ganesh::TriangulatingPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7064:skgpu::ganesh::TriangulatingPathRenderer::name\28\29\20const +7065:skgpu::ganesh::TessellationPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +7066:skgpu::ganesh::TessellationPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +7067:skgpu::ganesh::TessellationPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7068:skgpu::ganesh::TessellationPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7069:skgpu::ganesh::TessellationPathRenderer::name\28\29\20const +7070:skgpu::ganesh::SurfaceDrawContext::willReplaceOpsTask\28skgpu::ganesh::OpsTask*\2c\20skgpu::ganesh::OpsTask*\29 +7071:skgpu::ganesh::SurfaceDrawContext::canDiscardPreviousOpsOnFullClear\28\29\20const +7072:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29.1 +7073: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 +7074: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 +7075:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29.1 +7076:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29 +7077:skgpu::ganesh::StrokeTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +7078:skgpu::ganesh::StrokeTessellateOp::usesStencil\28\29\20const +7079:skgpu::ganesh::StrokeTessellateOp::onPrepare\28GrOpFlushState*\29 +7080:skgpu::ganesh::StrokeTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7081:skgpu::ganesh::StrokeTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7082:skgpu::ganesh::StrokeTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7083:skgpu::ganesh::StrokeTessellateOp::name\28\29\20const +7084:skgpu::ganesh::StrokeTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7085:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29.1 +7086:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29 +7087:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +7088:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::programInfo\28\29 +7089:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7090:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7091: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 +7092:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::name\28\29\20const +7093:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7094:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29.1 +7095:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29 +7096:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +7097:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::programInfo\28\29 +7098:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7099:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7100: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 +7101:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7102:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::name\28\29\20const +7103:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7104:skgpu::ganesh::StencilClip::~StencilClip\28\29.1 +7105:skgpu::ganesh::StencilClip::~StencilClip\28\29 +7106:skgpu::ganesh::StencilClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +7107:skgpu::ganesh::StencilClip::getConservativeBounds\28\29\20const +7108:skgpu::ganesh::StencilClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +7109:skgpu::ganesh::SoftwarePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7110:skgpu::ganesh::SoftwarePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7111:skgpu::ganesh::SoftwarePathRenderer::name\28\29\20const +7112:skgpu::ganesh::SmallPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7113:skgpu::ganesh::SmallPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7114:skgpu::ganesh::SmallPathRenderer::name\28\29\20const +7115:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +7116:skgpu::ganesh::SmallPathAtlasMgr::preFlush\28GrOnFlushResourceProvider*\29 +7117:skgpu::ganesh::SmallPathAtlasMgr::postFlush\28skgpu::AtlasToken\29 +7118:skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +7119:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29.1 +7120:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29 +7121:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::visitProxies\28std::__2::function\20const&\29\20const +7122:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::programInfo\28\29 +7123:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +7124:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7125: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 +7126:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7127:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::name\28\29\20const +7128:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7129: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 +7130: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 +7131: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 +7132: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 +7133: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 +7134: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 +7135: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 +7136: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 +7137:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29.1 +7138:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29 +7139:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::onTextureSampler\28int\29\20const +7140:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::name\28\29\20const +7141:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7142:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7143:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7144:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +7145:skgpu::ganesh::PathWedgeTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +7146:skgpu::ganesh::PathTessellator::~PathTessellator\28\29 +7147:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29.1 +7148:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29 +7149:skgpu::ganesh::PathTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +7150:skgpu::ganesh::PathTessellateOp::usesStencil\28\29\20const +7151:skgpu::ganesh::PathTessellateOp::onPrepare\28GrOpFlushState*\29 +7152:skgpu::ganesh::PathTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7153:skgpu::ganesh::PathTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7154:skgpu::ganesh::PathTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7155:skgpu::ganesh::PathTessellateOp::name\28\29\20const +7156:skgpu::ganesh::PathTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7157:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29.1 +7158:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29 +7159:skgpu::ganesh::PathStencilCoverOp::visitProxies\28std::__2::function\20const&\29\20const +7160:skgpu::ganesh::PathStencilCoverOp::onPrepare\28GrOpFlushState*\29 +7161:skgpu::ganesh::PathStencilCoverOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7162:skgpu::ganesh::PathStencilCoverOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7163:skgpu::ganesh::PathStencilCoverOp::name\28\29\20const +7164:skgpu::ganesh::PathStencilCoverOp::fixedFunctionFlags\28\29\20const +7165:skgpu::ganesh::PathStencilCoverOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7166:skgpu::ganesh::PathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +7167:skgpu::ganesh::PathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +7168:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29.1 +7169:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29 +7170:skgpu::ganesh::PathInnerTriangulateOp::visitProxies\28std::__2::function\20const&\29\20const +7171:skgpu::ganesh::PathInnerTriangulateOp::onPrepare\28GrOpFlushState*\29 +7172:skgpu::ganesh::PathInnerTriangulateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7173:skgpu::ganesh::PathInnerTriangulateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7174:skgpu::ganesh::PathInnerTriangulateOp::name\28\29\20const +7175:skgpu::ganesh::PathInnerTriangulateOp::fixedFunctionFlags\28\29\20const +7176:skgpu::ganesh::PathInnerTriangulateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7177:skgpu::ganesh::PathCurveTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +7178:skgpu::ganesh::OpsTask::~OpsTask\28\29.1 +7179:skgpu::ganesh::OpsTask::onPrepare\28GrOpFlushState*\29 +7180:skgpu::ganesh::OpsTask::onPrePrepare\28GrRecordingContext*\29 +7181:skgpu::ganesh::OpsTask::onMakeSkippable\28\29 +7182:skgpu::ganesh::OpsTask::onIsUsed\28GrSurfaceProxy*\29\20const +7183:skgpu::ganesh::OpsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +7184:skgpu::ganesh::OpsTask::endFlush\28GrDrawingManager*\29 +7185:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29.1 +7186:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::visitProxies\28std::__2::function\20const&\29\20const +7187:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7188:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7189: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 +7190:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7191:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::name\28\29\20const +7192:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7193:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29.1 +7194:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29 +7195:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::onTextureSampler\28int\29\20const +7196:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::name\28\29\20const +7197:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7198:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7199:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7200:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +7201:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29.1 +7202:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29 +7203:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +7204:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::programInfo\28\29 +7205:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +7206:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7207: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 +7208:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7209:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::name\28\29\20const +7210:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7211:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::clipToShape\28skgpu::ganesh::SurfaceDrawContext*\2c\20SkClipOp\2c\20SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\29 +7212:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29.1 +7213:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29 +7214:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::name\28\29\20const +7215:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7216:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +7217:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7218:skgpu::ganesh::DrawableOp::~DrawableOp\28\29.1 +7219:skgpu::ganesh::DrawableOp::~DrawableOp\28\29 +7220:skgpu::ganesh::DrawableOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7221:skgpu::ganesh::DrawableOp::name\28\29\20const +7222:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29.1 +7223:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29 +7224:skgpu::ganesh::DrawAtlasPathOp::visitProxies\28std::__2::function\20const&\29\20const +7225:skgpu::ganesh::DrawAtlasPathOp::onPrepare\28GrOpFlushState*\29 +7226:skgpu::ganesh::DrawAtlasPathOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7227:skgpu::ganesh::DrawAtlasPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7228:skgpu::ganesh::DrawAtlasPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7229:skgpu::ganesh::DrawAtlasPathOp::name\28\29\20const +7230:skgpu::ganesh::DrawAtlasPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7231:skgpu::ganesh::Device::~Device\28\29.1 +7232:skgpu::ganesh::Device::~Device\28\29 +7233:skgpu::ganesh::Device::strikeDeviceInfo\28\29\20const +7234:skgpu::ganesh::Device::snapSpecial\28SkIRect\20const&\2c\20bool\29 +7235:skgpu::ganesh::Device::snapSpecialScaled\28SkIRect\20const&\2c\20SkISize\20const&\29 +7236:skgpu::ganesh::Device::replaceClip\28SkIRect\20const&\29 +7237:skgpu::ganesh::Device::recordingContext\28\29\20const +7238:skgpu::ganesh::Device::pushClipStack\28\29 +7239:skgpu::ganesh::Device::popClipStack\28\29 +7240:skgpu::ganesh::Device::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +7241:skgpu::ganesh::Device::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +7242:skgpu::ganesh::Device::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +7243:skgpu::ganesh::Device::onClipShader\28sk_sp\29 +7244:skgpu::ganesh::Device::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +7245:skgpu::ganesh::Device::makeSpecial\28SkImage\20const*\29 +7246:skgpu::ganesh::Device::isClipWideOpen\28\29\20const +7247:skgpu::ganesh::Device::isClipRect\28\29\20const +7248:skgpu::ganesh::Device::isClipEmpty\28\29\20const +7249:skgpu::ganesh::Device::isClipAntiAliased\28\29\20const +7250:skgpu::ganesh::Device::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +7251:skgpu::ganesh::Device::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +7252:skgpu::ganesh::Device::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +7253:skgpu::ganesh::Device::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +7254:skgpu::ganesh::Device::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +7255:skgpu::ganesh::Device::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +7256:skgpu::ganesh::Device::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +7257:skgpu::ganesh::Device::drawPaint\28SkPaint\20const&\29 +7258:skgpu::ganesh::Device::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +7259:skgpu::ganesh::Device::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +7260:skgpu::ganesh::Device::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +7261:skgpu::ganesh::Device::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +7262:skgpu::ganesh::Device::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +7263: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 +7264:skgpu::ganesh::Device::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +7265:skgpu::ganesh::Device::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +7266:skgpu::ganesh::Device::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +7267:skgpu::ganesh::Device::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +7268:skgpu::ganesh::Device::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +7269:skgpu::ganesh::Device::drawArc\28SkArc\20const&\2c\20SkPaint\20const&\29 +7270:skgpu::ganesh::Device::devClipBounds\28\29\20const +7271:skgpu::ganesh::Device::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +7272:skgpu::ganesh::Device::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +7273:skgpu::ganesh::Device::convertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +7274:skgpu::ganesh::Device::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +7275:skgpu::ganesh::Device::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +7276:skgpu::ganesh::Device::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +7277:skgpu::ganesh::Device::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +7278:skgpu::ganesh::Device::android_utils_clipWithStencil\28\29 +7279:skgpu::ganesh::DefaultPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +7280:skgpu::ganesh::DefaultPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +7281:skgpu::ganesh::DefaultPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7282:skgpu::ganesh::DefaultPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7283:skgpu::ganesh::DefaultPathRenderer::name\28\29\20const +7284:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::name\28\29\20const +7285:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7286:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7287:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7288:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::name\28\29\20const +7289:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +7290:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7291:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +7292:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29.1 +7293:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29 +7294:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::visitProxies\28std::__2::function\20const&\29\20const +7295:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::programInfo\28\29 +7296:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +7297:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7298: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 +7299:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7300:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::name\28\29\20const +7301:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::fixedFunctionFlags\28\29\20const +7302:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7303:skgpu::ganesh::DashLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7304:skgpu::ganesh::DashLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7305:skgpu::ganesh::DashLinePathRenderer::name\28\29\20const +7306:skgpu::ganesh::ClipStack::~ClipStack\28\29.1 +7307:skgpu::ganesh::ClipStack::preApply\28SkRect\20const&\2c\20GrAA\29\20const +7308:skgpu::ganesh::ClipStack::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +7309:skgpu::ganesh::ClearOp::~ClearOp\28\29 +7310:skgpu::ganesh::ClearOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7311:skgpu::ganesh::ClearOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7312:skgpu::ganesh::ClearOp::name\28\29\20const +7313:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29.1 +7314:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29 +7315:skgpu::ganesh::AtlasTextOp::visitProxies\28std::__2::function\20const&\29\20const +7316:skgpu::ganesh::AtlasTextOp::onPrepareDraws\28GrMeshDrawTarget*\29 +7317:skgpu::ganesh::AtlasTextOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +7318:skgpu::ganesh::AtlasTextOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7319:skgpu::ganesh::AtlasTextOp::name\28\29\20const +7320:skgpu::ganesh::AtlasTextOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +7321:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29.1 +7322:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29 +7323:skgpu::ganesh::AtlasRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +7324:skgpu::ganesh::AtlasRenderTask::onExecute\28GrOpFlushState*\29 +7325:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +7326:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +7327:skgpu::ganesh::AtlasPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7328:skgpu::ganesh::AtlasPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7329:skgpu::ganesh::AtlasPathRenderer::name\28\29\20const +7330:skgpu::ganesh::AALinearizingConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7331:skgpu::ganesh::AALinearizingConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7332:skgpu::ganesh::AALinearizingConvexPathRenderer::name\28\29\20const +7333:skgpu::ganesh::AAHairLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7334:skgpu::ganesh::AAHairLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7335:skgpu::ganesh::AAHairLinePathRenderer::name\28\29\20const +7336:skgpu::ganesh::AAConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +7337:skgpu::ganesh::AAConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +7338:skgpu::ganesh::AAConvexPathRenderer::name\28\29\20const +7339:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29.1 +7340:skgpu::TAsyncReadResult::rowBytes\28int\29\20const +7341:skgpu::TAsyncReadResult::data\28int\29\20const +7342:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29.1 +7343:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29 +7344:skgpu::StringKeyBuilder::appendComment\28char\20const*\29 +7345:skgpu::StringKeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +7346:skgpu::ShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\2c\20bool\29 +7347:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29.1 +7348:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29 +7349:skgpu::RectanizerSkyline::reset\28\29 +7350:skgpu::RectanizerSkyline::percentFull\28\29\20const +7351:skgpu::RectanizerPow2::reset\28\29 +7352:skgpu::RectanizerPow2::percentFull\28\29\20const +7353:skgpu::RectanizerPow2::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +7354:skgpu::Plot::~Plot\28\29.1 +7355:skgpu::Plot::~Plot\28\29 +7356:skgpu::KeyBuilder::~KeyBuilder\28\29 +7357:skgpu::KeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +7358:skgpu::DefaultShaderErrorHandler\28\29::DefaultShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\29 +7359:sk_write_fn\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20long\29 +7360:sk_sp*\20emscripten::internal::MemberAccess>::getWire\28sk_sp\20SimpleImageInfo::*\20const&\2c\20SimpleImageInfo\20const&\29 +7361:sk_read_user_chunk\28png_struct_def*\2c\20png_unknown_chunk_t*\29 +7362:sk_mmap_releaseproc\28void\20const*\2c\20void*\29 +7363:sk_ft_stream_io\28FT_StreamRec_*\2c\20unsigned\20long\2c\20unsigned\20char*\2c\20unsigned\20long\29 +7364:sk_ft_realloc\28FT_MemoryRec_*\2c\20long\2c\20long\2c\20void*\29 +7365:sk_ft_free\28FT_MemoryRec_*\2c\20void*\29 +7366:sk_ft_alloc\28FT_MemoryRec_*\2c\20long\29 +7367:sk_dataref_releaseproc\28void\20const*\2c\20void*\29 +7368:sfnt_table_info +7369:sfnt_stream_close +7370:sfnt_load_face +7371:sfnt_is_postscript +7372:sfnt_is_alphanumeric +7373:sfnt_init_face +7374:sfnt_get_ps_name +7375:sfnt_get_name_index +7376:sfnt_get_name_id +7377:sfnt_get_interface +7378:sfnt_get_glyph_name +7379:sfnt_get_charset_id +7380:sfnt_done_face +7381:setup_syllables_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7382:setup_syllables_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7383:setup_syllables_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7384:setup_syllables_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7385:setup_masks_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7386:setup_masks_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7387:setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7388:setup_masks_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7389:setup_masks_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7390:setup_masks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7391:service_cleanup\28\29 +7392:sep_upsample +7393:self_destruct +7394:scriptGetMaxValue\28IntProperty\20const&\2c\20UProperty\29 +7395:save_marker +7396:sample8\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7397:sample6\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7398:sample4\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7399:sample2\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7400:sample1\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7401:rgb_rgb_convert +7402:rgb_rgb565_convert +7403:rgb_rgb565D_convert +7404:rgb_gray_convert +7405:reverse_hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +7406:reverse_hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +7407:reset_marker_reader +7408:reset_input_controller +7409:reset_error_mgr +7410:request_virt_sarray +7411:request_virt_barray +7412:reorder_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7413:reorder_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7414:reorder_marks_hebrew\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +7415:reorder_marks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +7416:reorder_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7417:release_data\28void*\2c\20void*\29 +7418:record_stch\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7419:record_rphf_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7420:record_pref_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7421:realize_virt_arrays +7422:read_restart_marker +7423:read_markers +7424:read_data_from_FT_Stream +7425:rbbi_cleanup_74 +7426:quantize_ord_dither +7427:quantize_fs_dither +7428:quantize3_ord_dither +7429:putil_cleanup\28\29 +7430:psnames_get_service +7431:pshinter_get_t2_funcs +7432:pshinter_get_t1_funcs +7433:pshinter_get_globals_funcs +7434:psh_globals_new +7435:psh_globals_destroy +7436:psaux_get_glyph_name +7437:ps_table_release +7438:ps_table_new +7439:ps_table_done +7440:ps_table_add +7441:ps_property_set +7442:ps_property_get +7443:ps_parser_to_token_array +7444:ps_parser_to_int +7445:ps_parser_to_fixed_array +7446:ps_parser_to_fixed +7447:ps_parser_to_coord_array +7448:ps_parser_to_bytes +7449:ps_parser_skip_spaces +7450:ps_parser_load_field_table +7451:ps_parser_init +7452:ps_hints_t2mask +7453:ps_hints_t2counter +7454:ps_hints_t1stem3 +7455:ps_hints_t1reset +7456:ps_hints_close +7457:ps_hints_apply +7458:ps_hinter_init +7459:ps_hinter_done +7460:ps_get_standard_strings +7461:ps_get_macintosh_name +7462:ps_decoder_init +7463:ps_builder_init +7464:progress_monitor\28jpeg_common_struct*\29 +7465:process_data_simple_main +7466:process_data_crank_post +7467:process_data_context_main +7468:prescan_quantize +7469:preprocess_text_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7470:preprocess_text_thai\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7471:preprocess_text_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7472:preprocess_text_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7473:prepare_for_output_pass +7474:premultiply_data +7475:premul_rgb\28SkRGBA4f<\28SkAlphaType\292>\29 +7476:premul_polar\28SkRGBA4f<\28SkAlphaType\292>\29 +7477:postprocess_glyphs_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +7478:post_process_prepass +7479:post_process_2pass +7480:post_process_1pass +7481:portable::xy_to_unit_angle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7482:portable::xy_to_radius\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7483:portable::xy_to_2pt_conical_well_behaved\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7484:portable::xy_to_2pt_conical_strip\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7485:portable::xy_to_2pt_conical_smaller\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7486:portable::xy_to_2pt_conical_greater\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7487:portable::xy_to_2pt_conical_focal_on_circle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7488:portable::xor_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7489:portable::white_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7490:portable::unpremul_polar\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7491:portable::unpremul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7492:portable::uniform_color_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7493:portable::trace_var\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7494:portable::trace_scope\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7495:portable::trace_line\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7496:portable::trace_exit\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7497:portable::trace_enter\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7498:portable::tan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7499:portable::swizzle_copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7500:portable::swizzle_copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7501:portable::swizzle_copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7502:portable::swizzle_copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7503:portable::swizzle_copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7504:portable::swizzle_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7505:portable::swizzle_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7506:portable::swizzle_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7507:portable::swizzle_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7508:portable::swizzle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7509:portable::swap_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7510:portable::swap_rb_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7511:portable::swap_rb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7512:portable::sub_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7513:portable::sub_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7514:portable::sub_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7515:portable::sub_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7516:portable::sub_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7517:portable::sub_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7518:portable::sub_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7519:portable::sub_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7520:portable::sub_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7521:portable::sub_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7522:portable::store_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7523:portable::store_src_a\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7524:portable::store_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7525:portable::store_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7526:portable::store_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7527:portable::store_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7528:portable::store_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7529:portable::store_r8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7530:portable::store_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7531:portable::store_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7532:portable::store_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7533:portable::store_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7534:portable::store_device_xy01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7535:portable::store_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7536:portable::store_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7537:portable::store_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7538:portable::store_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7539:portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7540:portable::store_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7541:portable::store_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7542:portable::store_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7543:portable::store_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7544:portable::store_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7545:portable::store_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7546:portable::store_10101010_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7547:portable::start_pipeline\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkRasterPipelineStage*\2c\20SkSpan\2c\20unsigned\20char*\29 +7548:portable::stack_rewind\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7549:portable::stack_checkpoint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7550:portable::srcover_rgba_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7551:portable::srcover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7552:portable::srcout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7553:portable::srcin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7554:portable::srcatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7555:portable::sqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7556:portable::splat_4_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7557:portable::splat_3_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7558:portable::splat_2_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7559:portable::softlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7560:portable::smoothstep_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7561:portable::sin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7562:portable::shuffle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7563:portable::set_base_pointer\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7564:portable::seed_shader\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7565:portable::screen\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7566:portable::scale_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7567:portable::scale_native\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7568:portable::scale_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7569:portable::scale_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7570:portable::saturation\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7571:portable::rgb_to_hsl\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7572:portable::repeat_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7573:portable::repeat_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7574:portable::repeat_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7575:portable::refract_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7576:portable::reenable_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7577:portable::rect_memset64\28unsigned\20long\20long*\2c\20unsigned\20long\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +7578:portable::rect_memset32\28unsigned\20int*\2c\20unsigned\20int\2c\20int\2c\20unsigned\20long\2c\20int\29 +7579:portable::rect_memset16\28unsigned\20short*\2c\20unsigned\20short\2c\20int\2c\20unsigned\20long\2c\20int\29 +7580:portable::premul_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7581:portable::premul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7582:portable::pow_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7583:portable::plus_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7584:portable::perlin_noise\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7585:portable::parametric\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7586:portable::overlay\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7587:portable::negate_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7588:portable::multiply\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7589:portable::mul_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7590:portable::mul_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7591:portable::mul_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7592:portable::mul_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7593:portable::mul_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7594:portable::mul_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7595:portable::mul_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7596:portable::mul_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7597:portable::mul_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7598:portable::mul_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7599:portable::mul_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7600:portable::mul_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7601:portable::move_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7602:portable::move_dst_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7603:portable::modulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7604:portable::mod_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7605:portable::mod_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7606:portable::mod_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7607:portable::mod_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7608:portable::mod_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7609:portable::mix_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7610:portable::mix_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7611:portable::mix_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7612:portable::mix_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7613:portable::mix_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7614:portable::mix_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7615:portable::mix_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7616:portable::mix_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7617:portable::mix_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7618:portable::mix_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7619:portable::mirror_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7620:portable::mirror_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7621:portable::mirror_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7622:portable::mipmap_linear_update\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7623:portable::mipmap_linear_init\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7624:portable::mipmap_linear_finish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7625:portable::min_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7626:portable::min_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7627:portable::min_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7628:portable::min_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7629:portable::min_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7630:portable::min_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7631:portable::min_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7632:portable::min_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7633:portable::min_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7634:portable::min_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7635:portable::min_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7636:portable::min_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7637:portable::min_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7638:portable::min_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7639:portable::min_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7640:portable::min_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7641:portable::merge_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7642:portable::merge_inv_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7643:portable::merge_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7644:portable::memset32\28unsigned\20int*\2c\20unsigned\20int\2c\20int\29 +7645:portable::memset16\28unsigned\20short*\2c\20unsigned\20short\2c\20int\29 +7646:portable::max_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7647:portable::max_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7648:portable::max_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7649:portable::max_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7650:portable::max_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7651:portable::max_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7652:portable::max_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7653:portable::max_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7654:portable::max_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7655:portable::max_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7656:portable::max_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7657:portable::max_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7658:portable::max_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7659:portable::max_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7660:portable::max_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7661:portable::max_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7662:portable::matrix_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7663:portable::matrix_scale_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7664:portable::matrix_perspective\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7665:portable::matrix_multiply_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7666:portable::matrix_multiply_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7667:portable::matrix_multiply_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7668:portable::matrix_4x5\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7669:portable::matrix_4x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7670:portable::matrix_3x4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7671:portable::matrix_3x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7672:portable::matrix_2x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7673:portable::mask_off_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7674:portable::mask_off_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7675:portable::mask_2pt_conical_nan\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7676:portable::mask_2pt_conical_degenerates\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7677:portable::luminosity\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7678:portable::log_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7679:portable::log2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7680:portable::load_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7681:portable::load_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7682:portable::load_rgf16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7683:portable::load_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7684:portable::load_rg88_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7685:portable::load_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7686:portable::load_rg1616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7687:portable::load_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7688:portable::load_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7689:portable::load_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7690:portable::load_f32_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7691:portable::load_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7692:portable::load_f16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7693:portable::load_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7694:portable::load_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7695:portable::load_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7696:portable::load_af16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7697:portable::load_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7698:portable::load_a8_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7699:portable::load_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7700:portable::load_a16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7701:portable::load_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7702:portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7703:portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7704:portable::load_565_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7705:portable::load_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7706:portable::load_4444_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7707:portable::load_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7708:portable::load_16161616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7709:portable::load_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7710:portable::load_10x6_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7711:portable::load_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7712:portable::load_1010102_xr_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7713:portable::load_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7714:portable::load_1010102_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7715:portable::load_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7716:portable::load_10101010_xr_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7717:portable::load_10101010_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7718:portable::lighten\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7719:portable::lerp_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7720:portable::lerp_native\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7721:portable::lerp_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7722:portable::lerp_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7723:portable::just_return\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7724:portable::jump\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7725:portable::invsqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7726:portable::invsqrt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7727:portable::invsqrt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7728:portable::invsqrt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7729:portable::inverted_CMYK_to_RGB1\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7730:portable::inverted_CMYK_to_BGR1\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7731:portable::inverse_mat4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7732:portable::inverse_mat3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7733:portable::inverse_mat2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7734:portable::init_lane_masks\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7735:portable::hue\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7736:portable::hsl_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7737:portable::hardlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7738:portable::gray_to_RGB1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7739:portable::grayA_to_rgbA\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7740:portable::grayA_to_RGBA\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7741:portable::gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7742:portable::gauss_a_to_rgba\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7743:portable::gather_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7744:portable::gather_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7745:portable::gather_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7746:portable::gather_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7747:portable::gather_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7748:portable::gather_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7749:portable::gather_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7750:portable::gather_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7751:portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7752:portable::gather_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7753:portable::gather_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7754:portable::gather_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7755:portable::gather_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7756:portable::gather_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7757:portable::gather_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7758:portable::gather_10101010_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7759:portable::gamma_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7760:portable::force_opaque_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7761:portable::force_opaque\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7762:portable::floor_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7763:portable::floor_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7764:portable::floor_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7765:portable::floor_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7766:portable::exp_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7767:portable::exp2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7768:portable::exclusion\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7769:portable::exchange_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7770:portable::evenly_spaced_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7771:portable::evenly_spaced_2_stop_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7772:portable::emboss\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7773:portable::dstover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7774:portable::dstout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7775:portable::dstin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7776:portable::dstatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7777:portable::dot_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7778:portable::dot_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7779:portable::dot_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7780:portable::div_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7781:portable::div_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7782:portable::div_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7783:portable::div_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7784:portable::div_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7785:portable::div_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7786:portable::div_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7787:portable::div_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7788:portable::div_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7789:portable::div_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7790:portable::div_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7791:portable::div_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7792:portable::div_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7793:portable::div_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7794:portable::div_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7795:portable::dither\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7796:portable::difference\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7797:portable::decal_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7798:portable::decal_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7799:portable::decal_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7800:portable::darken\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7801:portable::css_oklab_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7802:portable::css_oklab_gamut_map_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7803:portable::css_lab_to_xyz\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7804:portable::css_hwb_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7805:portable::css_hsl_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7806:portable::css_hcl_to_lab\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7807:portable::cos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7808:portable::copy_uniform\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7809:portable::copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7810:portable::copy_slot_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7811:portable::copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7812:portable::copy_immutable_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7813:portable::copy_constant\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7814:portable::copy_4_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7815:portable::copy_4_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7816:portable::copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7817:portable::copy_4_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7818:portable::copy_3_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7819:portable::copy_3_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7820:portable::copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7821:portable::copy_3_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7822:portable::copy_2_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7823:portable::copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7824:portable::continue_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7825:portable::colordodge\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7826:portable::colorburn\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7827:portable::color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7828:portable::cmpne_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7829:portable::cmpne_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7830:portable::cmpne_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7831:portable::cmpne_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7832:portable::cmpne_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7833:portable::cmpne_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7834:portable::cmpne_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7835:portable::cmpne_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7836:portable::cmpne_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7837:portable::cmpne_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7838:portable::cmpne_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7839:portable::cmpne_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7840:portable::cmplt_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7841:portable::cmplt_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7842:portable::cmplt_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7843:portable::cmplt_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7844:portable::cmplt_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7845:portable::cmplt_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7846:portable::cmplt_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7847:portable::cmplt_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7848:portable::cmplt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7849:portable::cmplt_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7850:portable::cmplt_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7851:portable::cmplt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7852:portable::cmplt_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7853:portable::cmplt_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7854:portable::cmplt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7855:portable::cmplt_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7856:portable::cmplt_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7857:portable::cmplt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7858:portable::cmple_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7859:portable::cmple_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7860:portable::cmple_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7861:portable::cmple_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7862:portable::cmple_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7863:portable::cmple_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7864:portable::cmple_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7865:portable::cmple_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7866:portable::cmple_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7867:portable::cmple_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7868:portable::cmple_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7869:portable::cmple_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7870:portable::cmple_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7871:portable::cmple_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7872:portable::cmple_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7873:portable::cmple_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7874:portable::cmple_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7875:portable::cmple_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7876:portable::cmpeq_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7877:portable::cmpeq_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7878:portable::cmpeq_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7879:portable::cmpeq_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7880:portable::cmpeq_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7881:portable::cmpeq_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7882:portable::cmpeq_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7883:portable::cmpeq_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7884:portable::cmpeq_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7885:portable::cmpeq_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7886:portable::cmpeq_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7887:portable::cmpeq_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7888:portable::clear\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7889:portable::clamp_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7890:portable::clamp_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7891:portable::clamp_gamut\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7892:portable::clamp_01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7893:portable::ceil_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7894:portable::ceil_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7895:portable::ceil_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7896:portable::ceil_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7897:portable::cast_to_uint_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7898:portable::cast_to_uint_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7899:portable::cast_to_uint_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7900:portable::cast_to_uint_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7901:portable::cast_to_int_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7902:portable::cast_to_int_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7903:portable::cast_to_int_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7904:portable::cast_to_int_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7905:portable::cast_to_float_from_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7906:portable::cast_to_float_from_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7907:portable::cast_to_float_from_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7908:portable::cast_to_float_from_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7909:portable::cast_to_float_from_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7910:portable::cast_to_float_from_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7911:portable::cast_to_float_from_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7912:portable::cast_to_float_from_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7913:portable::case_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7914:portable::callback\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7915:portable::byte_tables\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7916:portable::bt709_luminance_or_luma_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7917:portable::bt709_luminance_or_luma_to_alpha\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7918:portable::branch_if_no_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7919:portable::branch_if_no_active_lanes_eq\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7920:portable::branch_if_any_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7921:portable::branch_if_all_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7922:portable::blit_row_s32a_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +7923:portable::black_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7924:portable::bitwise_xor_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7925:portable::bitwise_xor_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7926:portable::bitwise_xor_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7927:portable::bitwise_xor_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7928:portable::bitwise_xor_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7929:portable::bitwise_xor_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7930:portable::bitwise_or_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7931:portable::bitwise_or_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7932:portable::bitwise_or_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7933:portable::bitwise_or_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7934:portable::bitwise_or_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7935:portable::bitwise_and_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7936:portable::bitwise_and_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7937:portable::bitwise_and_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7938:portable::bitwise_and_imm_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7939:portable::bitwise_and_imm_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7940:portable::bitwise_and_imm_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7941:portable::bitwise_and_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7942:portable::bitwise_and_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7943:portable::bitwise_and_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7944:portable::bilinear_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7945:portable::bilinear_py\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7946:portable::bilinear_px\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7947:portable::bilinear_ny\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7948:portable::bilinear_nx\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7949:portable::bilerp_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7950:portable::bicubic_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7951:portable::bicubic_p3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7952:portable::bicubic_p3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7953:portable::bicubic_p1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7954:portable::bicubic_p1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7955:portable::bicubic_n3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7956:portable::bicubic_n3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7957:portable::bicubic_n1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7958:portable::bicubic_n1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7959:portable::bicubic_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7960:portable::atan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7961:portable::atan2_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7962:portable::asin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7963:portable::alter_2pt_conical_unswap\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7964:portable::alter_2pt_conical_compensate_focal\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7965:portable::alpha_to_red_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7966:portable::alpha_to_red\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7967:portable::alpha_to_gray_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7968:portable::alpha_to_gray\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7969:portable::add_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7970:portable::add_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7971:portable::add_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7972:portable::add_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7973:portable::add_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7974:portable::add_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7975:portable::add_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7976:portable::add_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7977:portable::add_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7978:portable::add_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7979:portable::add_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7980:portable::add_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7981:portable::acos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7982:portable::accumulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7983:portable::abs_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7984:portable::abs_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7985:portable::abs_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7986:portable::abs_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7987:portable::RGB_to_RGB1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7988:portable::RGB_to_BGR1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7989:portable::RGBA_to_rgbA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7990:portable::RGBA_to_bgrA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7991:portable::RGBA_to_BGRA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7992:portable::PQish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7993:portable::HLGish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7994:portable::HLGinvish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7995:pop_arg_long_double +7996:pointerTOCLookupFn\28UDataMemory\20const*\2c\20char\20const*\2c\20int*\2c\20UErrorCode*\29 +7997:png_read_filter_row_up +7998:png_read_filter_row_sub +7999:png_read_filter_row_paeth_multibyte_pixel +8000:png_read_filter_row_paeth_1byte_pixel +8001:png_read_filter_row_avg +8002:pass2_no_dither +8003:pass2_fs_dither +8004:override_features_khmer\28hb_ot_shape_planner_t*\29 +8005:override_features_indic\28hb_ot_shape_planner_t*\29 +8006:override_features_hangul\28hb_ot_shape_planner_t*\29 +8007:output_message\28jpeg_common_struct*\29 +8008:output_message +8009:offsetTOCLookupFn\28UDataMemory\20const*\2c\20char\20const*\2c\20int*\2c\20UErrorCode*\29 +8010:null_convert +8011:noop_upsample +8012:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +8013:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +8014:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +8015:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +8016:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.3 +8017:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.2 +8018:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +8019:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +8020:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkImageInfo\20const&\29\20const +8021:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +8022:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +8023:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +8024:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +8025:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +8026:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +8027:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +8028:non-virtual\20thunk\20to\20icu_74::UnicodeSet::~UnicodeSet\28\29.1 +8029:non-virtual\20thunk\20to\20icu_74::UnicodeSet::~UnicodeSet\28\29 +8030:non-virtual\20thunk\20to\20icu_74::UnicodeSet::toPattern\28icu_74::UnicodeString&\2c\20signed\20char\29\20const +8031:non-virtual\20thunk\20to\20icu_74::UnicodeSet::matches\28icu_74::Replaceable\20const&\2c\20int&\2c\20int\2c\20signed\20char\29 +8032:non-virtual\20thunk\20to\20icu_74::UnicodeSet::matchesIndexValue\28unsigned\20char\29\20const +8033:non-virtual\20thunk\20to\20icu_74::UnicodeSet::addMatchSetTo\28icu_74::UnicodeSet&\29\20const +8034:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +8035: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 +8036: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 +8037:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +8038: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 +8039:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +8040:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +8041: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 +8042: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 +8043:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::glyphCount\28\29\20const +8044: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 +8045:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +8046: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 +8047: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 +8048:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +8049: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 +8050:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +8051:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +8052:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +8053:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +8054:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +8055:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +8056:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29.1 +8057:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29 +8058:non-virtual\20thunk\20to\20GrOpFlushState::writeView\28\29\20const +8059:non-virtual\20thunk\20to\20GrOpFlushState::usesMSAASurface\28\29\20const +8060:non-virtual\20thunk\20to\20GrOpFlushState::threadSafeCache\28\29\20const +8061:non-virtual\20thunk\20to\20GrOpFlushState::strikeCache\28\29\20const +8062:non-virtual\20thunk\20to\20GrOpFlushState::smallPathAtlasManager\28\29\20const +8063:non-virtual\20thunk\20to\20GrOpFlushState::sampledProxyArray\28\29 +8064:non-virtual\20thunk\20to\20GrOpFlushState::rtProxy\28\29\20const +8065:non-virtual\20thunk\20to\20GrOpFlushState::resourceProvider\28\29\20const +8066:non-virtual\20thunk\20to\20GrOpFlushState::renderPassBarriers\28\29\20const +8067:non-virtual\20thunk\20to\20GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +8068:non-virtual\20thunk\20to\20GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +8069:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndirectDraws\28int\29 +8070:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndices\28int\29 +8071:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +8072:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +8073:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +8074:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +8075:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +8076:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +8077:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +8078:non-virtual\20thunk\20to\20GrOpFlushState::dstProxyView\28\29\20const +8079:non-virtual\20thunk\20to\20GrOpFlushState::detachAppliedClip\28\29 +8080:non-virtual\20thunk\20to\20GrOpFlushState::deferredUploadTarget\28\29 +8081:non-virtual\20thunk\20to\20GrOpFlushState::colorLoadOp\28\29\20const +8082:non-virtual\20thunk\20to\20GrOpFlushState::caps\28\29\20const +8083:non-virtual\20thunk\20to\20GrOpFlushState::atlasManager\28\29\20const +8084:non-virtual\20thunk\20to\20GrOpFlushState::appliedClip\28\29\20const +8085:non-virtual\20thunk\20to\20GrGpuBuffer::~GrGpuBuffer\28\29 +8086:non-virtual\20thunk\20to\20GrGpuBuffer::unref\28\29\20const +8087:non-virtual\20thunk\20to\20GrGpuBuffer::ref\28\29\20const +8088:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +8089:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +8090:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onSetLabel\28\29 +8091:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +8092:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +8093:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +8094:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +8095:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::backendFormat\28\29\20const +8096:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +8097:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +8098:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +8099:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +8100:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::dstColor\28\29 +8101:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29.1 +8102:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29 +8103:new_color_map_2_quant +8104:new_color_map_1_quant +8105:merged_2v_upsample +8106:merged_1v_upsample +8107:locale_cleanup\28\29 +8108:lin_srgb_to_oklab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +8109:lin_srgb_to_okhcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +8110:legalstub$dynCall_vijjjii +8111:legalstub$dynCall_vijiii +8112:legalstub$dynCall_viji +8113:legalstub$dynCall_vij +8114:legalstub$dynCall_viijii +8115:legalstub$dynCall_viij +8116:legalstub$dynCall_viiij +8117:legalstub$dynCall_viiiiij +8118:legalstub$dynCall_jiji +8119:legalstub$dynCall_jiiiiji +8120:legalstub$dynCall_jiiiiii +8121:legalstub$dynCall_jii +8122:legalstub$dynCall_ji +8123:legalstub$dynCall_iijjiii +8124:legalstub$dynCall_iijj +8125:legalstub$dynCall_iiji +8126:legalstub$dynCall_iij +8127:legalstub$dynCall_iiiji +8128:legalstub$dynCall_iiij +8129:legalstub$dynCall_iiiij +8130:legalstub$dynCall_iiiiijj +8131:legalstub$dynCall_iiiiij +8132:legalstub$dynCall_iiiiiijj +8133:legalfunc$glWaitSync +8134:legalfunc$glClientWaitSync +8135:lcd_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +8136:layoutGetMaxValue\28IntProperty\20const&\2c\20UProperty\29 +8137:jpeg_start_decompress +8138:jpeg_skip_scanlines +8139:jpeg_save_markers +8140:jpeg_resync_to_restart +8141:jpeg_read_scanlines +8142:jpeg_read_raw_data +8143:jpeg_read_header +8144:jpeg_idct_islow +8145:jpeg_idct_ifast +8146:jpeg_idct_float +8147:jpeg_idct_9x9 +8148:jpeg_idct_7x7 +8149:jpeg_idct_6x6 +8150:jpeg_idct_5x5 +8151:jpeg_idct_4x4 +8152:jpeg_idct_3x3 +8153:jpeg_idct_2x2 +8154:jpeg_idct_1x1 +8155:jpeg_idct_16x16 +8156:jpeg_idct_15x15 +8157:jpeg_idct_14x14 +8158:jpeg_idct_13x13 +8159:jpeg_idct_12x12 +8160:jpeg_idct_11x11 +8161:jpeg_idct_10x10 +8162:jpeg_crop_scanline +8163:is_deleted_glyph\28hb_glyph_info_t\20const*\29 +8164:isRegionalIndicator\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8165:isPOSIX_xdigit\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8166:isPOSIX_print\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8167:isPOSIX_graph\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8168:isPOSIX_blank\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8169:isPOSIX_alnum\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8170:isNormInert\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8171:isMirrored\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8172:isJoinControl\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8173:isIDSUnaryOperator\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8174:isIDCompatMathStart\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8175:isIDCompatMathContinue\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8176:isCanonSegmentStarter\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8177:isBidiControl\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8178:isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +8179:int_upsample +8180:initial_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8181:icu_74::uprv_normalizer2_cleanup\28\29 +8182:icu_74::uprv_loaded_normalizer2_cleanup\28\29 +8183:icu_74::unames_cleanup\28\29 +8184:icu_74::umtx_init\28\29 +8185:icu_74::umtx_cleanup\28\29 +8186:icu_74::sortComparator\28void\20const*\2c\20void\20const*\2c\20void\20const*\29 +8187:icu_74::segmentStarterMapper\28void\20const*\2c\20unsigned\20int\29 +8188:icu_74::isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +8189:icu_74::compareElementStrings\28void\20const*\2c\20void\20const*\2c\20void\20const*\29 +8190:icu_74::cacheDeleter\28void*\29 +8191:icu_74::\28anonymous\20namespace\29::versionFilter\28int\2c\20void*\29 +8192:icu_74::\28anonymous\20namespace\29::utf16_caseContextIterator\28void*\2c\20signed\20char\29 +8193:icu_74::\28anonymous\20namespace\29::numericValueFilter\28int\2c\20void*\29 +8194:icu_74::\28anonymous\20namespace\29::intPropertyFilter\28int\2c\20void*\29 +8195:icu_74::\28anonymous\20namespace\29::emojiprops_cleanup\28\29 +8196:icu_74::\28anonymous\20namespace\29::cleanup\28\29 +8197:icu_74::\28anonymous\20namespace\29::cleanupKnownCanonicalized\28\29 +8198:icu_74::\28anonymous\20namespace\29::AliasReplacer::replace\28icu_74::Locale\20const&\2c\20icu_74::CharString&\2c\20UErrorCode&\29::$_1::__invoke\28void*\29 +8199:icu_74::\28anonymous\20namespace\29::AliasReplacer::AliasReplacer\28UErrorCode\29::'lambda'\28UElement\2c\20UElement\29::__invoke\28UElement\2c\20UElement\29 +8200:icu_74::\28anonymous\20namespace\29::AliasData::cleanup\28\29 +8201:icu_74::UnicodeString::~UnicodeString\28\29.1 +8202:icu_74::UnicodeString::handleReplaceBetween\28int\2c\20int\2c\20icu_74::UnicodeString\20const&\29 +8203:icu_74::UnicodeString::getLength\28\29\20const +8204:icu_74::UnicodeString::getDynamicClassID\28\29\20const +8205:icu_74::UnicodeString::getCharAt\28int\29\20const +8206:icu_74::UnicodeString::extractBetween\28int\2c\20int\2c\20icu_74::UnicodeString&\29\20const +8207:icu_74::UnicodeString::copy\28int\2c\20int\2c\20int\29 +8208:icu_74::UnicodeString::clone\28\29\20const +8209:icu_74::UnicodeSet::~UnicodeSet\28\29.1 +8210:icu_74::UnicodeSet::toPattern\28icu_74::UnicodeString&\2c\20signed\20char\29\20const +8211:icu_74::UnicodeSet::size\28\29\20const +8212:icu_74::UnicodeSet::retain\28int\2c\20int\29 +8213:icu_74::UnicodeSet::operator==\28icu_74::UnicodeSet\20const&\29\20const +8214:icu_74::UnicodeSet::isEmpty\28\29\20const +8215:icu_74::UnicodeSet::hashCode\28\29\20const +8216:icu_74::UnicodeSet::getDynamicClassID\28\29\20const +8217:icu_74::UnicodeSet::contains\28int\2c\20int\29\20const +8218:icu_74::UnicodeSet::containsAll\28icu_74::UnicodeSet\20const&\29\20const +8219:icu_74::UnicodeSet::complement\28int\2c\20int\29 +8220:icu_74::UnicodeSet::complementAll\28icu_74::UnicodeSet\20const&\29 +8221:icu_74::UnicodeSet::addMatchSetTo\28icu_74::UnicodeSet&\29\20const +8222:icu_74::UnhandledEngine::~UnhandledEngine\28\29.1 +8223:icu_74::UnhandledEngine::~UnhandledEngine\28\29 +8224:icu_74::UnhandledEngine::handles\28int\2c\20char\20const*\29\20const +8225:icu_74::UnhandledEngine::handleCharacter\28int\29 +8226:icu_74::UnhandledEngine::findBreaks\28UText*\2c\20int\2c\20int\2c\20icu_74::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8227:icu_74::UVector::~UVector\28\29.1 +8228:icu_74::UVector::getDynamicClassID\28\29\20const +8229:icu_74::UVector32::~UVector32\28\29.1 +8230:icu_74::UVector32::getDynamicClassID\28\29\20const +8231:icu_74::UStack::getDynamicClassID\28\29\20const +8232:icu_74::UCharsTrieBuilder::~UCharsTrieBuilder\28\29.1 +8233:icu_74::UCharsTrieBuilder::~UCharsTrieBuilder\28\29 +8234:icu_74::UCharsTrieBuilder::write\28int\29 +8235:icu_74::UCharsTrieBuilder::writeValueAndType\28signed\20char\2c\20int\2c\20int\29 +8236:icu_74::UCharsTrieBuilder::writeValueAndFinal\28int\2c\20signed\20char\29 +8237:icu_74::UCharsTrieBuilder::writeElementUnits\28int\2c\20int\2c\20int\29 +8238:icu_74::UCharsTrieBuilder::writeDeltaTo\28int\29 +8239:icu_74::UCharsTrieBuilder::skipElementsBySomeUnits\28int\2c\20int\2c\20int\29\20const +8240:icu_74::UCharsTrieBuilder::indexOfElementWithNextUnit\28int\2c\20int\2c\20char16_t\29\20const +8241:icu_74::UCharsTrieBuilder::getMinLinearMatch\28\29\20const +8242:icu_74::UCharsTrieBuilder::getLimitOfLinearMatch\28int\2c\20int\2c\20int\29\20const +8243:icu_74::UCharsTrieBuilder::getElementValue\28int\29\20const +8244:icu_74::UCharsTrieBuilder::getElementUnit\28int\2c\20int\29\20const +8245:icu_74::UCharsTrieBuilder::getElementStringLength\28int\29\20const +8246:icu_74::UCharsTrieBuilder::createLinearMatchNode\28int\2c\20int\2c\20int\2c\20icu_74::StringTrieBuilder::Node*\29\20const +8247:icu_74::UCharsTrieBuilder::countElementUnits\28int\2c\20int\2c\20int\29\20const +8248:icu_74::UCharsTrieBuilder::UCTLinearMatchNode::write\28icu_74::StringTrieBuilder&\29 +8249:icu_74::UCharsTrieBuilder::UCTLinearMatchNode::operator==\28icu_74::StringTrieBuilder::Node\20const&\29\20const +8250:icu_74::UCharsDictionaryMatcher::~UCharsDictionaryMatcher\28\29.1 +8251:icu_74::UCharsDictionaryMatcher::~UCharsDictionaryMatcher\28\29 +8252:icu_74::UCharsDictionaryMatcher::matches\28UText*\2c\20int\2c\20int\2c\20int*\2c\20int*\2c\20int*\2c\20int*\29\20const +8253:icu_74::UCharCharacterIterator::setIndex\28int\29 +8254:icu_74::UCharCharacterIterator::setIndex32\28int\29 +8255:icu_74::UCharCharacterIterator::previous\28\29 +8256:icu_74::UCharCharacterIterator::previous32\28\29 +8257:icu_74::UCharCharacterIterator::operator==\28icu_74::ForwardCharacterIterator\20const&\29\20const +8258:icu_74::UCharCharacterIterator::next\28\29 +8259:icu_74::UCharCharacterIterator::nextPostInc\28\29 +8260:icu_74::UCharCharacterIterator::next32\28\29 +8261:icu_74::UCharCharacterIterator::next32PostInc\28\29 +8262:icu_74::UCharCharacterIterator::move\28int\2c\20icu_74::CharacterIterator::EOrigin\29 +8263:icu_74::UCharCharacterIterator::move32\28int\2c\20icu_74::CharacterIterator::EOrigin\29 +8264:icu_74::UCharCharacterIterator::last\28\29 +8265:icu_74::UCharCharacterIterator::last32\28\29 +8266:icu_74::UCharCharacterIterator::hashCode\28\29\20const +8267:icu_74::UCharCharacterIterator::hasPrevious\28\29 +8268:icu_74::UCharCharacterIterator::hasNext\28\29 +8269:icu_74::UCharCharacterIterator::getText\28icu_74::UnicodeString&\29 +8270:icu_74::UCharCharacterIterator::getDynamicClassID\28\29\20const +8271:icu_74::UCharCharacterIterator::first\28\29 +8272:icu_74::UCharCharacterIterator::firstPostInc\28\29 +8273:icu_74::UCharCharacterIterator::first32\28\29 +8274:icu_74::UCharCharacterIterator::first32PostInc\28\29 +8275:icu_74::UCharCharacterIterator::current\28\29\20const +8276:icu_74::UCharCharacterIterator::current32\28\29\20const +8277:icu_74::UCharCharacterIterator::clone\28\29\20const +8278:icu_74::ThaiBreakEngine::~ThaiBreakEngine\28\29.1 +8279:icu_74::ThaiBreakEngine::~ThaiBreakEngine\28\29 +8280:icu_74::ThaiBreakEngine::divideUpDictionaryRange\28UText*\2c\20int\2c\20int\2c\20icu_74::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8281:icu_74::StringTrieBuilder::SplitBranchNode::write\28icu_74::StringTrieBuilder&\29 +8282:icu_74::StringTrieBuilder::SplitBranchNode::operator==\28icu_74::StringTrieBuilder::Node\20const&\29\20const +8283:icu_74::StringTrieBuilder::SplitBranchNode::markRightEdgesFirst\28int\29 +8284:icu_74::StringTrieBuilder::Node::markRightEdgesFirst\28int\29 +8285:icu_74::StringTrieBuilder::ListBranchNode::write\28icu_74::StringTrieBuilder&\29 +8286:icu_74::StringTrieBuilder::ListBranchNode::operator==\28icu_74::StringTrieBuilder::Node\20const&\29\20const +8287:icu_74::StringTrieBuilder::ListBranchNode::markRightEdgesFirst\28int\29 +8288:icu_74::StringTrieBuilder::IntermediateValueNode::write\28icu_74::StringTrieBuilder&\29 +8289:icu_74::StringTrieBuilder::IntermediateValueNode::operator==\28icu_74::StringTrieBuilder::Node\20const&\29\20const +8290:icu_74::StringTrieBuilder::IntermediateValueNode::markRightEdgesFirst\28int\29 +8291:icu_74::StringTrieBuilder::FinalValueNode::write\28icu_74::StringTrieBuilder&\29 +8292:icu_74::StringTrieBuilder::FinalValueNode::operator==\28icu_74::StringTrieBuilder::Node\20const&\29\20const +8293:icu_74::StringTrieBuilder::BranchHeadNode::write\28icu_74::StringTrieBuilder&\29 +8294:icu_74::StringEnumeration::unext\28int*\2c\20UErrorCode&\29 +8295:icu_74::StringEnumeration::snext\28UErrorCode&\29 +8296:icu_74::StringEnumeration::operator==\28icu_74::StringEnumeration\20const&\29\20const +8297:icu_74::StringEnumeration::operator!=\28icu_74::StringEnumeration\20const&\29\20const +8298:icu_74::StringEnumeration::next\28int*\2c\20UErrorCode&\29 +8299:icu_74::SimpleLocaleKeyFactory::~SimpleLocaleKeyFactory\28\29.1 +8300:icu_74::SimpleLocaleKeyFactory::~SimpleLocaleKeyFactory\28\29 +8301:icu_74::SimpleLocaleKeyFactory::updateVisibleIDs\28icu_74::Hashtable&\2c\20UErrorCode&\29\20const +8302:icu_74::SimpleLocaleKeyFactory::getDynamicClassID\28\29\20const +8303:icu_74::SimpleLocaleKeyFactory::create\28icu_74::ICUServiceKey\20const&\2c\20icu_74::ICUService\20const*\2c\20UErrorCode&\29\20const +8304:icu_74::SimpleFilteredSentenceBreakIterator::~SimpleFilteredSentenceBreakIterator\28\29.1 +8305:icu_74::SimpleFilteredSentenceBreakIterator::~SimpleFilteredSentenceBreakIterator\28\29 +8306:icu_74::SimpleFilteredSentenceBreakIterator::setText\28icu_74::UnicodeString\20const&\29 +8307:icu_74::SimpleFilteredSentenceBreakIterator::setText\28UText*\2c\20UErrorCode&\29 +8308:icu_74::SimpleFilteredSentenceBreakIterator::refreshInputText\28UText*\2c\20UErrorCode&\29 +8309:icu_74::SimpleFilteredSentenceBreakIterator::previous\28\29 +8310:icu_74::SimpleFilteredSentenceBreakIterator::preceding\28int\29 +8311:icu_74::SimpleFilteredSentenceBreakIterator::next\28int\29 +8312:icu_74::SimpleFilteredSentenceBreakIterator::next\28\29 +8313:icu_74::SimpleFilteredSentenceBreakIterator::last\28\29 +8314:icu_74::SimpleFilteredSentenceBreakIterator::isBoundary\28int\29 +8315:icu_74::SimpleFilteredSentenceBreakIterator::getUText\28UText*\2c\20UErrorCode&\29\20const +8316:icu_74::SimpleFilteredSentenceBreakIterator::getText\28\29\20const +8317:icu_74::SimpleFilteredSentenceBreakIterator::following\28int\29 +8318:icu_74::SimpleFilteredSentenceBreakIterator::first\28\29 +8319:icu_74::SimpleFilteredSentenceBreakIterator::current\28\29\20const +8320:icu_74::SimpleFilteredSentenceBreakIterator::createBufferClone\28void*\2c\20int&\2c\20UErrorCode&\29 +8321:icu_74::SimpleFilteredSentenceBreakIterator::clone\28\29\20const +8322:icu_74::SimpleFilteredSentenceBreakIterator::adoptText\28icu_74::CharacterIterator*\29 +8323:icu_74::SimpleFilteredSentenceBreakData::~SimpleFilteredSentenceBreakData\28\29.1 +8324:icu_74::SimpleFilteredSentenceBreakData::~SimpleFilteredSentenceBreakData\28\29 +8325:icu_74::SimpleFilteredBreakIteratorBuilder::~SimpleFilteredBreakIteratorBuilder\28\29.1 +8326:icu_74::SimpleFilteredBreakIteratorBuilder::~SimpleFilteredBreakIteratorBuilder\28\29 +8327:icu_74::SimpleFilteredBreakIteratorBuilder::unsuppressBreakAfter\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29 +8328:icu_74::SimpleFilteredBreakIteratorBuilder::suppressBreakAfter\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29 +8329:icu_74::SimpleFilteredBreakIteratorBuilder::build\28icu_74::BreakIterator*\2c\20UErrorCode&\29 +8330:icu_74::SimpleFactory::~SimpleFactory\28\29.1 +8331:icu_74::SimpleFactory::~SimpleFactory\28\29 +8332:icu_74::SimpleFactory::updateVisibleIDs\28icu_74::Hashtable&\2c\20UErrorCode&\29\20const +8333:icu_74::SimpleFactory::getDynamicClassID\28\29\20const +8334:icu_74::SimpleFactory::getDisplayName\28icu_74::UnicodeString\20const&\2c\20icu_74::Locale\20const&\2c\20icu_74::UnicodeString&\29\20const +8335:icu_74::SimpleFactory::create\28icu_74::ICUServiceKey\20const&\2c\20icu_74::ICUService\20const*\2c\20UErrorCode&\29\20const +8336:icu_74::ServiceEnumeration::~ServiceEnumeration\28\29.1 +8337:icu_74::ServiceEnumeration::~ServiceEnumeration\28\29 +8338:icu_74::ServiceEnumeration::snext\28UErrorCode&\29 +8339:icu_74::ServiceEnumeration::reset\28UErrorCode&\29 +8340:icu_74::ServiceEnumeration::getDynamicClassID\28\29\20const +8341:icu_74::ServiceEnumeration::count\28UErrorCode&\29\20const +8342:icu_74::ServiceEnumeration::clone\28\29\20const +8343:icu_74::RuleBasedBreakIterator::~RuleBasedBreakIterator\28\29.1 +8344:icu_74::RuleBasedBreakIterator::setText\28icu_74::UnicodeString\20const&\29 +8345:icu_74::RuleBasedBreakIterator::setText\28UText*\2c\20UErrorCode&\29 +8346:icu_74::RuleBasedBreakIterator::refreshInputText\28UText*\2c\20UErrorCode&\29 +8347:icu_74::RuleBasedBreakIterator::previous\28\29 +8348:icu_74::RuleBasedBreakIterator::preceding\28int\29 +8349:icu_74::RuleBasedBreakIterator::operator==\28icu_74::BreakIterator\20const&\29\20const +8350:icu_74::RuleBasedBreakIterator::next\28int\29 +8351:icu_74::RuleBasedBreakIterator::next\28\29 +8352:icu_74::RuleBasedBreakIterator::last\28\29 +8353:icu_74::RuleBasedBreakIterator::isBoundary\28int\29 +8354:icu_74::RuleBasedBreakIterator::hashCode\28\29\20const +8355:icu_74::RuleBasedBreakIterator::getUText\28UText*\2c\20UErrorCode&\29\20const +8356:icu_74::RuleBasedBreakIterator::getText\28\29\20const +8357:icu_74::RuleBasedBreakIterator::getRules\28\29\20const +8358:icu_74::RuleBasedBreakIterator::getRuleStatus\28\29\20const +8359:icu_74::RuleBasedBreakIterator::getRuleStatusVec\28int*\2c\20int\2c\20UErrorCode&\29 +8360:icu_74::RuleBasedBreakIterator::getDynamicClassID\28\29\20const +8361:icu_74::RuleBasedBreakIterator::getBinaryRules\28unsigned\20int&\29 +8362:icu_74::RuleBasedBreakIterator::following\28int\29 +8363:icu_74::RuleBasedBreakIterator::first\28\29 +8364:icu_74::RuleBasedBreakIterator::current\28\29\20const +8365:icu_74::RuleBasedBreakIterator::createBufferClone\28void*\2c\20int&\2c\20UErrorCode&\29 +8366:icu_74::RuleBasedBreakIterator::clone\28\29\20const +8367:icu_74::RuleBasedBreakIterator::adoptText\28icu_74::CharacterIterator*\29 +8368:icu_74::RuleBasedBreakIterator::BreakCache::~BreakCache\28\29.1 +8369:icu_74::RuleBasedBreakIterator::BreakCache::~BreakCache\28\29 +8370:icu_74::ResourceDataValue::~ResourceDataValue\28\29.1 +8371:icu_74::ResourceDataValue::isNoInheritanceMarker\28\29\20const +8372:icu_74::ResourceDataValue::getUInt\28UErrorCode&\29\20const +8373:icu_74::ResourceDataValue::getType\28\29\20const +8374:icu_74::ResourceDataValue::getStringOrFirstOfArray\28UErrorCode&\29\20const +8375:icu_74::ResourceDataValue::getStringArray\28icu_74::UnicodeString*\2c\20int\2c\20UErrorCode&\29\20const +8376:icu_74::ResourceDataValue::getStringArrayOrStringAsArray\28icu_74::UnicodeString*\2c\20int\2c\20UErrorCode&\29\20const +8377:icu_74::ResourceDataValue::getInt\28UErrorCode&\29\20const +8378:icu_74::ResourceDataValue::getAliasString\28int&\2c\20UErrorCode&\29\20const +8379:icu_74::ResourceBundle::~ResourceBundle\28\29.1 +8380:icu_74::ResourceBundle::~ResourceBundle\28\29 +8381:icu_74::ResourceBundle::getDynamicClassID\28\29\20const +8382:icu_74::ParsePosition::getDynamicClassID\28\29\20const +8383:icu_74::Normalizer2WithImpl::spanQuickCheckYes\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8384:icu_74::Normalizer2WithImpl::normalize\28icu_74::UnicodeString\20const&\2c\20icu_74::UnicodeString&\2c\20UErrorCode&\29\20const +8385:icu_74::Normalizer2WithImpl::normalizeSecondAndAppend\28icu_74::UnicodeString&\2c\20icu_74::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8386:icu_74::Normalizer2WithImpl::getRawDecomposition\28int\2c\20icu_74::UnicodeString&\29\20const +8387:icu_74::Normalizer2WithImpl::getDecomposition\28int\2c\20icu_74::UnicodeString&\29\20const +8388:icu_74::Normalizer2WithImpl::getCombiningClass\28int\29\20const +8389:icu_74::Normalizer2WithImpl::composePair\28int\2c\20int\29\20const +8390:icu_74::Normalizer2WithImpl::append\28icu_74::UnicodeString&\2c\20icu_74::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8391:icu_74::Normalizer2Impl::~Normalizer2Impl\28\29.1 +8392:icu_74::Normalizer2::normalizeUTF8\28unsigned\20int\2c\20icu_74::StringPiece\2c\20icu_74::ByteSink&\2c\20icu_74::Edits*\2c\20UErrorCode&\29\20const +8393:icu_74::Normalizer2::isNormalizedUTF8\28icu_74::StringPiece\2c\20UErrorCode&\29\20const +8394:icu_74::NoopNormalizer2::spanQuickCheckYes\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8395:icu_74::NoopNormalizer2::normalize\28icu_74::UnicodeString\20const&\2c\20icu_74::UnicodeString&\2c\20UErrorCode&\29\20const +8396:icu_74::NoopNormalizer2::normalizeUTF8\28unsigned\20int\2c\20icu_74::StringPiece\2c\20icu_74::ByteSink&\2c\20icu_74::Edits*\2c\20UErrorCode&\29\20const +8397:icu_74::MlBreakEngine::~MlBreakEngine\28\29.1 +8398:icu_74::LocaleKeyFactory::~LocaleKeyFactory\28\29.1 +8399:icu_74::LocaleKeyFactory::updateVisibleIDs\28icu_74::Hashtable&\2c\20UErrorCode&\29\20const +8400:icu_74::LocaleKeyFactory::handlesKey\28icu_74::ICUServiceKey\20const&\2c\20UErrorCode&\29\20const +8401:icu_74::LocaleKeyFactory::getDynamicClassID\28\29\20const +8402:icu_74::LocaleKeyFactory::getDisplayName\28icu_74::UnicodeString\20const&\2c\20icu_74::Locale\20const&\2c\20icu_74::UnicodeString&\29\20const +8403:icu_74::LocaleKeyFactory::create\28icu_74::ICUServiceKey\20const&\2c\20icu_74::ICUService\20const*\2c\20UErrorCode&\29\20const +8404:icu_74::LocaleKey::~LocaleKey\28\29.1 +8405:icu_74::LocaleKey::~LocaleKey\28\29 +8406:icu_74::LocaleKey::prefix\28icu_74::UnicodeString&\29\20const +8407:icu_74::LocaleKey::isFallbackOf\28icu_74::UnicodeString\20const&\29\20const +8408:icu_74::LocaleKey::getDynamicClassID\28\29\20const +8409:icu_74::LocaleKey::fallback\28\29 +8410:icu_74::LocaleKey::currentLocale\28icu_74::Locale&\29\20const +8411:icu_74::LocaleKey::currentID\28icu_74::UnicodeString&\29\20const +8412:icu_74::LocaleKey::currentDescriptor\28icu_74::UnicodeString&\29\20const +8413:icu_74::LocaleKey::canonicalLocale\28icu_74::Locale&\29\20const +8414:icu_74::LocaleKey::canonicalID\28icu_74::UnicodeString&\29\20const +8415:icu_74::LocaleBuilder::~LocaleBuilder\28\29.1 +8416:icu_74::Locale::~Locale\28\29.1 +8417:icu_74::Locale::getDynamicClassID\28\29\20const +8418:icu_74::LoadedNormalizer2Impl::~LoadedNormalizer2Impl\28\29.1 +8419:icu_74::LoadedNormalizer2Impl::~LoadedNormalizer2Impl\28\29 +8420:icu_74::LoadedNormalizer2Impl::isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +8421:icu_74::LaoBreakEngine::~LaoBreakEngine\28\29.1 +8422:icu_74::LaoBreakEngine::~LaoBreakEngine\28\29 +8423:icu_74::LSTMBreakEngine::~LSTMBreakEngine\28\29.1 +8424:icu_74::LSTMBreakEngine::~LSTMBreakEngine\28\29 +8425:icu_74::LSTMBreakEngine::name\28\29\20const +8426:icu_74::LSTMBreakEngine::divideUpDictionaryRange\28UText*\2c\20int\2c\20int\2c\20icu_74::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8427:icu_74::KhmerBreakEngine::~KhmerBreakEngine\28\29.1 +8428:icu_74::KhmerBreakEngine::~KhmerBreakEngine\28\29 +8429:icu_74::KhmerBreakEngine::divideUpDictionaryRange\28UText*\2c\20int\2c\20int\2c\20icu_74::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8430:icu_74::KeywordEnumeration::~KeywordEnumeration\28\29.1 +8431:icu_74::KeywordEnumeration::~KeywordEnumeration\28\29 +8432:icu_74::KeywordEnumeration::snext\28UErrorCode&\29 +8433:icu_74::KeywordEnumeration::reset\28UErrorCode&\29 +8434:icu_74::KeywordEnumeration::next\28int*\2c\20UErrorCode&\29 +8435:icu_74::KeywordEnumeration::getDynamicClassID\28\29\20const +8436:icu_74::KeywordEnumeration::count\28UErrorCode&\29\20const +8437:icu_74::KeywordEnumeration::clone\28\29\20const +8438:icu_74::ICUServiceKey::~ICUServiceKey\28\29.1 +8439:icu_74::ICUServiceKey::isFallbackOf\28icu_74::UnicodeString\20const&\29\20const +8440:icu_74::ICUServiceKey::getDynamicClassID\28\29\20const +8441:icu_74::ICUServiceKey::currentDescriptor\28icu_74::UnicodeString&\29\20const +8442:icu_74::ICUServiceKey::canonicalID\28icu_74::UnicodeString&\29\20const +8443:icu_74::ICUService::unregister\28void\20const*\2c\20UErrorCode&\29 +8444:icu_74::ICUService::reset\28\29 +8445:icu_74::ICUService::registerInstance\28icu_74::UObject*\2c\20icu_74::UnicodeString\20const&\2c\20signed\20char\2c\20UErrorCode&\29 +8446:icu_74::ICUService::registerFactory\28icu_74::ICUServiceFactory*\2c\20UErrorCode&\29 +8447:icu_74::ICUService::reInitializeFactories\28\29 +8448:icu_74::ICUService::notifyListener\28icu_74::EventListener&\29\20const +8449:icu_74::ICUService::isDefault\28\29\20const +8450:icu_74::ICUService::getKey\28icu_74::ICUServiceKey&\2c\20icu_74::UnicodeString*\2c\20UErrorCode&\29\20const +8451:icu_74::ICUService::createSimpleFactory\28icu_74::UObject*\2c\20icu_74::UnicodeString\20const&\2c\20signed\20char\2c\20UErrorCode&\29 +8452:icu_74::ICUService::createKey\28icu_74::UnicodeString\20const*\2c\20UErrorCode&\29\20const +8453:icu_74::ICUService::clearCaches\28\29 +8454:icu_74::ICUService::acceptsListener\28icu_74::EventListener\20const&\29\20const +8455:icu_74::ICUResourceBundleFactory::~ICUResourceBundleFactory\28\29.1 +8456:icu_74::ICUResourceBundleFactory::handleCreate\28icu_74::Locale\20const&\2c\20int\2c\20icu_74::ICUService\20const*\2c\20UErrorCode&\29\20const +8457:icu_74::ICUResourceBundleFactory::getSupportedIDs\28UErrorCode&\29\20const +8458:icu_74::ICUResourceBundleFactory::getDynamicClassID\28\29\20const +8459:icu_74::ICUNotifier::removeListener\28icu_74::EventListener\20const*\2c\20UErrorCode&\29 +8460:icu_74::ICUNotifier::notifyChanged\28\29 +8461:icu_74::ICUNotifier::addListener\28icu_74::EventListener\20const*\2c\20UErrorCode&\29 +8462:icu_74::ICULocaleService::registerInstance\28icu_74::UObject*\2c\20icu_74::UnicodeString\20const&\2c\20signed\20char\2c\20UErrorCode&\29 +8463:icu_74::ICULocaleService::registerInstance\28icu_74::UObject*\2c\20icu_74::Locale\20const&\2c\20int\2c\20int\2c\20UErrorCode&\29 +8464:icu_74::ICULocaleService::registerInstance\28icu_74::UObject*\2c\20icu_74::Locale\20const&\2c\20int\2c\20UErrorCode&\29 +8465:icu_74::ICULocaleService::registerInstance\28icu_74::UObject*\2c\20icu_74::Locale\20const&\2c\20UErrorCode&\29 +8466:icu_74::ICULocaleService::getAvailableLocales\28\29\20const +8467:icu_74::ICULocaleService::createKey\28icu_74::UnicodeString\20const*\2c\20int\2c\20UErrorCode&\29\20const +8468:icu_74::ICULocaleService::createKey\28icu_74::UnicodeString\20const*\2c\20UErrorCode&\29\20const +8469:icu_74::ICULanguageBreakFactory::~ICULanguageBreakFactory\28\29.1 +8470:icu_74::ICULanguageBreakFactory::~ICULanguageBreakFactory\28\29 +8471:icu_74::ICULanguageBreakFactory::loadEngineFor\28int\2c\20char\20const*\29 +8472:icu_74::ICULanguageBreakFactory::loadDictionaryMatcherFor\28UScriptCode\29 +8473:icu_74::ICULanguageBreakFactory::getEngineFor\28int\2c\20char\20const*\29 +8474:icu_74::ICULanguageBreakFactory::addExternalEngine\28icu_74::ExternalBreakEngine*\2c\20UErrorCode&\29 +8475:icu_74::ICUBreakIteratorService::~ICUBreakIteratorService\28\29.1 +8476:icu_74::ICUBreakIteratorService::~ICUBreakIteratorService\28\29 +8477:icu_74::ICUBreakIteratorService::isDefault\28\29\20const +8478:icu_74::ICUBreakIteratorService::handleDefault\28icu_74::ICUServiceKey\20const&\2c\20icu_74::UnicodeString*\2c\20UErrorCode&\29\20const +8479:icu_74::ICUBreakIteratorService::cloneInstance\28icu_74::UObject*\29\20const +8480:icu_74::ICUBreakIteratorFactory::~ICUBreakIteratorFactory\28\29.1 +8481:icu_74::ICUBreakIteratorFactory::~ICUBreakIteratorFactory\28\29 +8482:icu_74::ICUBreakIteratorFactory::handleCreate\28icu_74::Locale\20const&\2c\20int\2c\20icu_74::ICUService\20const*\2c\20UErrorCode&\29\20const +8483:icu_74::GraphemeClusterVectorizer::vectorize\28UText*\2c\20int\2c\20int\2c\20icu_74::UVector32&\2c\20icu_74::UVector32&\2c\20UErrorCode&\29\20const +8484:icu_74::FCDNormalizer2::spanQuickCheckYes\28char16_t\20const*\2c\20char16_t\20const*\2c\20UErrorCode&\29\20const +8485:icu_74::FCDNormalizer2::normalize\28char16_t\20const*\2c\20char16_t\20const*\2c\20icu_74::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8486:icu_74::FCDNormalizer2::normalizeAndAppend\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20icu_74::UnicodeString&\2c\20icu_74::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8487:icu_74::FCDNormalizer2::isInert\28int\29\20const +8488:icu_74::EmojiProps::isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +8489:icu_74::DictionaryBreakEngine::setCharacters\28icu_74::UnicodeSet\20const&\29 +8490:icu_74::DictionaryBreakEngine::handles\28int\2c\20char\20const*\29\20const +8491:icu_74::DictionaryBreakEngine::findBreaks\28UText*\2c\20int\2c\20int\2c\20icu_74::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8492:icu_74::DecomposeNormalizer2::spanQuickCheckYes\28char16_t\20const*\2c\20char16_t\20const*\2c\20UErrorCode&\29\20const +8493:icu_74::DecomposeNormalizer2::normalize\28char16_t\20const*\2c\20char16_t\20const*\2c\20icu_74::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8494:icu_74::DecomposeNormalizer2::normalizeUTF8\28unsigned\20int\2c\20icu_74::StringPiece\2c\20icu_74::ByteSink&\2c\20icu_74::Edits*\2c\20UErrorCode&\29\20const +8495:icu_74::DecomposeNormalizer2::normalizeAndAppend\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20icu_74::UnicodeString&\2c\20icu_74::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8496:icu_74::DecomposeNormalizer2::isNormalizedUTF8\28icu_74::StringPiece\2c\20UErrorCode&\29\20const +8497:icu_74::DecomposeNormalizer2::isInert\28int\29\20const +8498:icu_74::DecomposeNormalizer2::getQuickCheck\28int\29\20const +8499:icu_74::ConstArray2D::get\28int\2c\20int\29\20const +8500:icu_74::ConstArray1D::get\28int\29\20const +8501:icu_74::ComposeNormalizer2::spanQuickCheckYes\28char16_t\20const*\2c\20char16_t\20const*\2c\20UErrorCode&\29\20const +8502:icu_74::ComposeNormalizer2::quickCheck\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8503:icu_74::ComposeNormalizer2::normalize\28char16_t\20const*\2c\20char16_t\20const*\2c\20icu_74::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8504:icu_74::ComposeNormalizer2::normalizeUTF8\28unsigned\20int\2c\20icu_74::StringPiece\2c\20icu_74::ByteSink&\2c\20icu_74::Edits*\2c\20UErrorCode&\29\20const +8505:icu_74::ComposeNormalizer2::normalizeAndAppend\28char16_t\20const*\2c\20char16_t\20const*\2c\20signed\20char\2c\20icu_74::UnicodeString&\2c\20icu_74::ReorderingBuffer&\2c\20UErrorCode&\29\20const +8506:icu_74::ComposeNormalizer2::isNormalized\28icu_74::UnicodeString\20const&\2c\20UErrorCode&\29\20const +8507:icu_74::ComposeNormalizer2::isNormalizedUTF8\28icu_74::StringPiece\2c\20UErrorCode&\29\20const +8508:icu_74::ComposeNormalizer2::isInert\28int\29\20const +8509:icu_74::ComposeNormalizer2::hasBoundaryBefore\28int\29\20const +8510:icu_74::ComposeNormalizer2::hasBoundaryAfter\28int\29\20const +8511:icu_74::ComposeNormalizer2::getQuickCheck\28int\29\20const +8512:icu_74::CodePointsVectorizer::vectorize\28UText*\2c\20int\2c\20int\2c\20icu_74::UVector32&\2c\20icu_74::UVector32&\2c\20UErrorCode&\29\20const +8513:icu_74::CjkBreakEngine::~CjkBreakEngine\28\29.1 +8514:icu_74::CjkBreakEngine::divideUpDictionaryRange\28UText*\2c\20int\2c\20int\2c\20icu_74::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8515:icu_74::CheckedArrayByteSink::Reset\28\29 +8516:icu_74::CheckedArrayByteSink::GetAppendBuffer\28int\2c\20int\2c\20char*\2c\20int\2c\20int*\29 +8517:icu_74::CheckedArrayByteSink::Append\28char\20const*\2c\20int\29 +8518:icu_74::CharacterIterator::firstPostInc\28\29 +8519:icu_74::CharacterIterator::first32PostInc\28\29 +8520:icu_74::CharStringByteSink::GetAppendBuffer\28int\2c\20int\2c\20char*\2c\20int\2c\20int*\29 +8521:icu_74::CharStringByteSink::Append\28char\20const*\2c\20int\29 +8522:icu_74::BytesDictionaryMatcher::~BytesDictionaryMatcher\28\29.1 +8523:icu_74::BytesDictionaryMatcher::~BytesDictionaryMatcher\28\29 +8524:icu_74::BytesDictionaryMatcher::matches\28UText*\2c\20int\2c\20int\2c\20int*\2c\20int*\2c\20int*\2c\20int*\29\20const +8525:icu_74::BurmeseBreakEngine::~BurmeseBreakEngine\28\29.1 +8526:icu_74::BurmeseBreakEngine::~BurmeseBreakEngine\28\29 +8527:icu_74::BreakIterator::getRuleStatusVec\28int*\2c\20int\2c\20UErrorCode&\29 +8528:icu_74::BreakEngineWrapper::~BreakEngineWrapper\28\29.1 +8529:icu_74::BreakEngineWrapper::~BreakEngineWrapper\28\29 +8530:icu_74::BreakEngineWrapper::handles\28int\2c\20char\20const*\29\20const +8531:icu_74::BreakEngineWrapper::findBreaks\28UText*\2c\20int\2c\20int\2c\20icu_74::UVector32&\2c\20signed\20char\2c\20UErrorCode&\29\20const +8532:icu_74::BMPSet::contains\28int\29\20const +8533:icu_74::Array1D::~Array1D\28\29.1 +8534:icu_74::Array1D::~Array1D\28\29 +8535:icu_74::Array1D::get\28int\29\20const +8536:hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +8537:hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +8538:hb_unicode_script_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8539:hb_unicode_general_category_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8540:hb_ucd_script\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8541:hb_ucd_mirroring\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8542:hb_ucd_general_category\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8543:hb_ucd_decompose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20void*\29 +8544:hb_ucd_compose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8545:hb_ucd_combining_class\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +8546:hb_syllabic_clear_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8547: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 +8548: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 +8549:hb_paint_push_clip_rectangle_nil\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8550: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 +8551: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 +8552:hb_paint_extents_push_group\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +8553:hb_paint_extents_push_clip_rectangle\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +8554:hb_paint_extents_push_clip_glyph\28hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_font_t*\2c\20void*\29 +8555:hb_paint_extents_pop_transform\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +8556:hb_paint_extents_pop_group\28hb_paint_funcs_t*\2c\20void*\2c\20hb_paint_composite_mode_t\2c\20void*\29 +8557:hb_paint_extents_pop_clip\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +8558: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 +8559: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 +8560:hb_paint_extents_paint_color\28hb_paint_funcs_t*\2c\20void*\2c\20int\2c\20unsigned\20int\2c\20void*\29 +8561: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 +8562:hb_outline_recording_pen_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +8563:hb_outline_recording_pen_line_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +8564: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 +8565:hb_outline_recording_pen_close_path\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +8566: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 +8567:hb_ot_map_t::lookup_map_t::cmp\28void\20const*\2c\20void\20const*\29 +8568:hb_ot_map_t::feature_map_t::cmp\28void\20const*\2c\20void\20const*\29 +8569:hb_ot_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +8570:hb_ot_get_variation_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8571: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 +8572:hb_ot_get_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8573:hb_ot_get_glyph_v_origin\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8574: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 +8575:hb_ot_get_glyph_name\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +8576: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 +8577:hb_ot_get_glyph_from_name\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +8578:hb_ot_get_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +8579:hb_ot_get_font_v_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +8580:hb_ot_get_font_h_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +8581:hb_ot_draw_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +8582: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 +8583:hb_font_get_variation_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8584: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 +8585:hb_font_get_nominal_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8586:hb_font_get_nominal_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8587:hb_font_get_glyph_v_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8588:hb_font_get_glyph_v_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8589:hb_font_get_glyph_v_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +8590: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 +8591:hb_font_get_glyph_v_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +8592:hb_font_get_glyph_v_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +8593:hb_font_get_glyph_name_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +8594:hb_font_get_glyph_name_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +8595:hb_font_get_glyph_h_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8596:hb_font_get_glyph_h_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +8597:hb_font_get_glyph_h_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +8598: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 +8599:hb_font_get_glyph_h_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +8600:hb_font_get_glyph_h_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +8601:hb_font_get_glyph_from_name_default\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +8602:hb_font_get_glyph_extents_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +8603:hb_font_get_glyph_extents_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +8604: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 +8605: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 +8606:hb_font_get_font_v_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +8607:hb_font_get_font_h_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +8608:hb_font_draw_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +8609: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 +8610: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 +8611:hb_draw_move_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +8612:hb_draw_line_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +8613: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 +8614: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 +8615: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 +8616:hb_draw_close_path_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +8617:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +8618:hb_aat_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +8619:hb_aat_map_builder_t::feature_event_t::cmp\28void\20const*\2c\20void\20const*\29 +8620:hashStringTrieNode\28UElement\29 +8621:hashEntry\28UElement\29 +8622:hasFullCompositionExclusion\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8623:hasEmojiProperty\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8624:h2v2_upsample +8625:h2v2_merged_upsample_565D +8626:h2v2_merged_upsample_565 +8627:h2v2_merged_upsample +8628:h2v2_fancy_upsample +8629:h2v1_upsample +8630:h2v1_merged_upsample_565D +8631:h2v1_merged_upsample_565 +8632:h2v1_merged_upsample +8633:h2v1_fancy_upsample +8634:grayscale_convert +8635:gray_rgb_convert +8636:gray_rgb565_convert +8637:gray_rgb565D_convert +8638:gray_raster_render +8639:gray_raster_new +8640:gray_raster_done +8641:gray_move_to +8642:gray_line_to +8643:gray_cubic_to +8644:gray_conic_to +8645:get_sk_marker_list\28jpeg_decompress_struct*\29 +8646:get_sfnt_table +8647:get_interesting_appn +8648:getVo\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8649:getTrailCombiningClass\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8650:getScript\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8651:getNumericType\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8652:getNormQuickCheck\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8653:getLeadCombiningClass\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8654:getJoiningType\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8655:getJoiningGroup\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8656:getInSC\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8657:getInPC\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8658:getHangulSyllableType\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8659:getGeneralCategory\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8660:getCombiningClass\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8661:getBiDiPairedBracketType\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8662:getBiDiClass\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8663:fullsize_upsample +8664:ft_smooth_transform +8665:ft_smooth_set_mode +8666:ft_smooth_render +8667:ft_smooth_overlap_spans +8668:ft_smooth_lcd_spans +8669:ft_smooth_init +8670:ft_smooth_get_cbox +8671:ft_gzip_free +8672:ft_gzip_alloc +8673:ft_ansi_stream_io +8674:ft_ansi_stream_close +8675:fquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +8676:format_message +8677:fmt_fp +8678:fline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +8679:first_axis_intersection\28double\20const*\2c\20bool\2c\20double\2c\20double*\29 +8680:finish_pass1 +8681:finish_output_pass +8682:finish_input_pass +8683:final_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8684:fcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +8685:fconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +8686:fast_swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8687:fast_swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8688:fast_swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8689:fast_swizzle_rgb_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8690:fast_swizzle_rgb_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8691:fast_swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8692:fast_swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8693:fast_swizzle_gray_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8694:fast_swizzle_cmyk_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8695:fast_swizzle_cmyk_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8696:error_exit +8697:error_callback +8698:equalStringTrieNodes\28UElement\2c\20UElement\29 +8699: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 +8700: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 +8701: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 +8702:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\2c\20float\29\2c\20SkCanvas*\2c\20float\2c\20float\2c\20float\29 +8703:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\29\2c\20SkCanvas*\2c\20float\2c\20float\29 +8704:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28SkPath\20const&\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20SkPath*\2c\20SkPaint*\29 +8705: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 +8706: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 +8707:emscripten::internal::MethodInvoker::invoke\28int\20\28skia::textlayout::Paragraph::*\20const&\29\28unsigned\20long\29\20const\2c\20skia::textlayout::Paragraph\20const*\2c\20unsigned\20long\29 +8708:emscripten::internal::MethodInvoker::invoke\28bool\20\28SkPath::*\20const&\29\28float\2c\20float\29\20const\2c\20SkPath\20const*\2c\20float\2c\20float\29 +8709:emscripten::internal::MethodInvoker::invoke\28SkPath&\20\28SkPath::*\20const&\29\28bool\29\2c\20SkPath*\2c\20bool\29 +8710:emscripten::internal::Invoker::invoke\28void\20\28*\29\28unsigned\20long\2c\20unsigned\20long\29\2c\20unsigned\20long\2c\20unsigned\20long\29 +8711:emscripten::internal::Invoker::invoke\28void\20\28*\29\28emscripten::val\29\2c\20emscripten::_EM_VAL*\29 +8712:emscripten::internal::Invoker::invoke\28unsigned\20long\20\28*\29\28unsigned\20long\29\2c\20unsigned\20long\29 +8713: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 +8714: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 +8715: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 +8716: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 +8717: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 +8718: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 +8719: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 +8720: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 +8721: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 +8722: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 +8723: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 +8724: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 +8725: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 +8726: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 +8727: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 +8728: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 +8729: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 +8730:emscripten::internal::Invoker\2c\20float>::invoke\28sk_sp\20\28*\29\28float\29\2c\20float\29 +8731: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 +8732: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 +8733: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 +8734: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 +8735:emscripten::internal::Invoker\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28sk_sp\29\2c\20sk_sp*\29 +8736: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 +8737: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 +8738: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 +8739: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 +8740: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 +8741: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 +8742: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 +8743: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 +8744: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 +8745: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 +8746: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 +8747:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28unsigned\20long\2c\20int\29\2c\20unsigned\20long\2c\20int\29 +8748: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 +8749: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 +8750:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\2c\20float\29\2c\20SkPath*\2c\20SkPath*\2c\20float\29 +8751:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\29\2c\20SkPath*\2c\20SkPath*\2c\20SkPathOp\29 +8752: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 +8753:emscripten::internal::Invoker\2c\20sk_sp>::invoke\28bool\20\28*\29\28sk_sp\2c\20sk_sp\29\2c\20sk_sp*\2c\20sk_sp*\29 +8754:emscripten::internal::Invoker::invoke\28bool\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\29\2c\20SkPath*\2c\20SkPath*\29 +8755: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 +8756:emscripten::internal::Invoker\2c\20int\2c\20int>::invoke\28SkRuntimeEffect::TracedShader\20\28*\29\28sk_sp\2c\20int\2c\20int\29\2c\20sk_sp*\2c\20int\2c\20int\29 +8757: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 +8758: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 +8759:emscripten::internal::Invoker&&\2c\20float&&>::invoke\28SkFont*\20\28*\29\28sk_sp&&\2c\20float&&\29\2c\20sk_sp*\2c\20float\29 +8760:emscripten::internal::Invoker&&>::invoke\28SkFont*\20\28*\29\28sk_sp&&\29\2c\20sk_sp*\29 +8761:emscripten::internal::Invoker::invoke\28SkContourMeasureIter*\20\28*\29\28SkPath\20const&\2c\20bool&&\2c\20float&&\29\2c\20SkPath*\2c\20bool\2c\20float\29 +8762:emscripten::internal::Invoker::invoke\28SkCanvas*\20\28*\29\28float&&\2c\20float&&\29\2c\20float\2c\20float\29 +8763: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 +8764: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 +8765: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 +8766: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 +8767:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\29\2c\20skia::textlayout::ParagraphBuilderImpl*\2c\20SimpleTextStyle*\29 +8768: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 +8769: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 +8770: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 +8771: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 +8772: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 +8773: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 +8774:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkContourMeasure&\2c\20float\2c\20unsigned\20long\29\2c\20SkContourMeasure*\2c\20float\2c\20unsigned\20long\29 +8775: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 +8776: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 +8777: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 +8778: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 +8779: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 +8780: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 +8781: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 +8782: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 +8783: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 +8784:emscripten::internal::FunctionInvoker\2c\20std::__2::allocator>\20\28*\29\28SkSL::DebugTrace&\29\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::DebugTrace&>::invoke\28std::__2::basic_string\2c\20std::__2::allocator>\20\28**\29\28SkSL::DebugTrace&\29\2c\20SkSL::DebugTrace*\29 +8785: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 +8786: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 +8787: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 +8788: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 +8789: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 +8790: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 +8791: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 +8792:emscripten::internal::FunctionInvoker\20\28*\29\28SkPictureRecorder&\29\2c\20sk_sp\2c\20SkPictureRecorder&>::invoke\28sk_sp\20\28**\29\28SkPictureRecorder&\29\2c\20SkPictureRecorder*\29 +8793: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 +8794: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 +8795: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 +8796:emscripten::internal::FunctionInvoker::invoke\28int\20\28**\29\28SkCanvas&\2c\20SkPaint\29\2c\20SkCanvas*\2c\20SkPaint*\29 +8797: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 +8798: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 +8799: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 +8800: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 +8801:emscripten::internal::FunctionInvoker\29\2c\20emscripten::val\2c\20sk_sp>::invoke\28emscripten::val\20\28**\29\28sk_sp\29\2c\20sk_sp*\29 +8802: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 +8803: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 +8804: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 +8805: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 +8806: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 +8807:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20StrokeOpts\29\2c\20SkPath*\2c\20StrokeOpts*\29 +8808: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 +8809:emscripten::internal::FunctionInvoker::invoke\28SkPath\20\28**\29\28SkPath\20const&\29\2c\20SkPath*\29 +8810: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 +8811:emscripten::internal::FunctionInvoker::invoke\28SkPaint\20\28**\29\28SkPaint\20const&\29\2c\20SkPaint*\29 +8812:emscripten::internal::FunctionInvoker::invoke\28SimpleImageInfo\20\28**\29\28SkSurface&\29\2c\20SkSurface*\29 +8813:emscripten::internal::FunctionInvoker::invoke\28RuntimeEffectUniform\20\28**\29\28SkRuntimeEffect&\2c\20int\29\2c\20SkRuntimeEffect*\2c\20int\29 +8814:emit_message +8815:embind_init_Skia\28\29::$_9::__invoke\28SkAnimatedImage&\29 +8816:embind_init_Skia\28\29::$_99::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\29 +8817:embind_init_Skia\28\29::$_98::__invoke\28SkPath&\2c\20unsigned\20long\2c\20int\2c\20bool\29 +8818:embind_init_Skia\28\29::$_97::__invoke\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\29 +8819:embind_init_Skia\28\29::$_96::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20int\29 +8820:embind_init_Skia\28\29::$_95::__invoke\28SkPath&\2c\20unsigned\20long\2c\20float\2c\20float\29 +8821:embind_init_Skia\28\29::$_94::__invoke\28unsigned\20long\2c\20SkPath\29 +8822:embind_init_Skia\28\29::$_93::__invoke\28float\2c\20unsigned\20long\29 +8823:embind_init_Skia\28\29::$_92::__invoke\28unsigned\20long\2c\20int\2c\20float\29 +8824:embind_init_Skia\28\29::$_91::__invoke\28\29 +8825:embind_init_Skia\28\29::$_90::__invoke\28\29 +8826:embind_init_Skia\28\29::$_8::__invoke\28emscripten::val\29 +8827:embind_init_Skia\28\29::$_89::__invoke\28sk_sp\2c\20sk_sp\29 +8828:embind_init_Skia\28\29::$_88::__invoke\28SkPaint&\2c\20unsigned\20int\2c\20sk_sp\29 +8829:embind_init_Skia\28\29::$_87::__invoke\28SkPaint&\2c\20unsigned\20int\29 +8830:embind_init_Skia\28\29::$_86::__invoke\28SkPaint&\2c\20unsigned\20long\2c\20sk_sp\29 +8831:embind_init_Skia\28\29::$_85::__invoke\28SkPaint&\2c\20unsigned\20long\29 +8832:embind_init_Skia\28\29::$_84::__invoke\28SkPaint\20const&\29 +8833:embind_init_Skia\28\29::$_83::__invoke\28SkBlurStyle\2c\20float\2c\20bool\29 +8834:embind_init_Skia\28\29::$_82::__invoke\28float\2c\20float\2c\20sk_sp\29 +8835:embind_init_Skia\28\29::$_81::__invoke\28unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20sk_sp\29 +8836:embind_init_Skia\28\29::$_80::__invoke\28unsigned\20long\2c\20float\2c\20float\2c\20sk_sp\29 +8837:embind_init_Skia\28\29::$_7::__invoke\28GrDirectContext&\2c\20unsigned\20long\29 +8838:embind_init_Skia\28\29::$_79::__invoke\28sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +8839:embind_init_Skia\28\29::$_78::__invoke\28sk_sp\2c\20float\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\29 +8840:embind_init_Skia\28\29::$_77::__invoke\28float\2c\20float\2c\20sk_sp\29 +8841:embind_init_Skia\28\29::$_76::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +8842:embind_init_Skia\28\29::$_75::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +8843:embind_init_Skia\28\29::$_74::__invoke\28sk_sp\29 +8844:embind_init_Skia\28\29::$_73::__invoke\28SkColorChannel\2c\20SkColorChannel\2c\20float\2c\20sk_sp\2c\20sk_sp\29 +8845:embind_init_Skia\28\29::$_72::__invoke\28float\2c\20float\2c\20sk_sp\29 +8846:embind_init_Skia\28\29::$_71::__invoke\28sk_sp\2c\20sk_sp\29 +8847:embind_init_Skia\28\29::$_70::__invoke\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\29 +8848:embind_init_Skia\28\29::$_6::__invoke\28GrDirectContext&\29 +8849:embind_init_Skia\28\29::$_69::__invoke\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29 +8850:embind_init_Skia\28\29::$_68::__invoke\28SkImageFilter\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +8851:embind_init_Skia\28\29::$_67::__invoke\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +8852:embind_init_Skia\28\29::$_66::__invoke\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*\29 +8853:embind_init_Skia\28\29::$_65::__invoke\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\29 +8854:embind_init_Skia\28\29::$_64::__invoke\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long\29 +8855:embind_init_Skia\28\29::$_63::__invoke\28sk_sp\29 +8856:embind_init_Skia\28\29::$_62::__invoke\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*\29 +8857:embind_init_Skia\28\29::$_61::__invoke\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\29 +8858:embind_init_Skia\28\29::$_60::__invoke\28sk_sp\29 +8859:embind_init_Skia\28\29::$_5::__invoke\28GrDirectContext&\29 +8860:embind_init_Skia\28\29::$_59::__invoke\28sk_sp\29 +8861:embind_init_Skia\28\29::$_58::__invoke\28SkFontMgr&\2c\20unsigned\20long\2c\20int\29 +8862:embind_init_Skia\28\29::$_57::__invoke\28SkFontMgr&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +8863:embind_init_Skia\28\29::$_56::__invoke\28SkFontMgr&\2c\20int\29 +8864:embind_init_Skia\28\29::$_55::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20int\29 +8865: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 +8866:embind_init_Skia\28\29::$_53::__invoke\28SkFont&\29 +8867:embind_init_Skia\28\29::$_52::__invoke\28SkFont&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +8868:embind_init_Skia\28\29::$_51::__invoke\28SkFont&\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint*\29 +8869:embind_init_Skia\28\29::$_50::__invoke\28SkContourMeasure&\2c\20float\2c\20float\2c\20bool\29 +8870:embind_init_Skia\28\29::$_4::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +8871:embind_init_Skia\28\29::$_49::__invoke\28SkContourMeasure&\2c\20float\2c\20unsigned\20long\29 +8872:embind_init_Skia\28\29::$_48::__invoke\28unsigned\20long\29 +8873:embind_init_Skia\28\29::$_47::__invoke\28unsigned\20long\2c\20SkBlendMode\2c\20sk_sp\29 +8874:embind_init_Skia\28\29::$_46::__invoke\28SkCanvas&\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +8875:embind_init_Skia\28\29::$_45::__invoke\28SkCanvas&\2c\20SkPaint\29 +8876:embind_init_Skia\28\29::$_44::__invoke\28SkCanvas&\2c\20SkPaint\20const*\2c\20unsigned\20long\2c\20SkImageFilter\20const*\2c\20unsigned\20int\29 +8877:embind_init_Skia\28\29::$_43::__invoke\28SkCanvas&\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +8878:embind_init_Skia\28\29::$_42::__invoke\28SkCanvas&\2c\20SimpleImageInfo\29 +8879:embind_init_Skia\28\29::$_41::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +8880:embind_init_Skia\28\29::$_40::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +8881: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 +8882:embind_init_Skia\28\29::$_39::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +8883: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 +8884: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 +8885:embind_init_Skia\28\29::$_36::__invoke\28SkCanvas&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +8886:embind_init_Skia\28\29::$_35::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +8887:embind_init_Skia\28\29::$_34::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +8888:embind_init_Skia\28\29::$_33::__invoke\28SkCanvas&\2c\20SkCanvas::PointMode\2c\20unsigned\20long\2c\20int\2c\20SkPaint&\29 +8889:embind_init_Skia\28\29::$_32::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +8890:embind_init_Skia\28\29::$_31::__invoke\28SkCanvas&\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29 +8891:embind_init_Skia\28\29::$_30::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +8892:embind_init_Skia\28\29::$_2::__invoke\28SimpleImageInfo\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\29 +8893: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 +8894: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 +8895:embind_init_Skia\28\29::$_27::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\20const*\2c\20bool\29 +8896:embind_init_Skia\28\29::$_26::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +8897:embind_init_Skia\28\29::$_25::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +8898:embind_init_Skia\28\29::$_24::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +8899:embind_init_Skia\28\29::$_23::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +8900: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 +8901:embind_init_Skia\28\29::$_21::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +8902:embind_init_Skia\28\29::$_20::__invoke\28SkCanvas&\2c\20unsigned\20int\2c\20SkBlendMode\29 +8903:embind_init_Skia\28\29::$_1::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +8904:embind_init_Skia\28\29::$_19::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkBlendMode\29 +8905:embind_init_Skia\28\29::$_18::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +8906: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 +8907: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 +8908:embind_init_Skia\28\29::$_15::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +8909:embind_init_Skia\28\29::$_14::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +8910:embind_init_Skia\28\29::$_148::__invoke\28SkVertices::Builder&\29 +8911:embind_init_Skia\28\29::$_147::__invoke\28SkVertices::Builder&\29 +8912:embind_init_Skia\28\29::$_146::__invoke\28SkVertices::Builder&\29 +8913:embind_init_Skia\28\29::$_145::__invoke\28SkVertices::Builder&\29 +8914:embind_init_Skia\28\29::$_144::__invoke\28SkVertices&\2c\20unsigned\20long\29 +8915:embind_init_Skia\28\29::$_143::__invoke\28SkTypeface&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +8916:embind_init_Skia\28\29::$_142::__invoke\28unsigned\20long\2c\20int\29 +8917:embind_init_Skia\28\29::$_141::__invoke\28\29 +8918:embind_init_Skia\28\29::$_140::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +8919:embind_init_Skia\28\29::$_13::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29 +8920:embind_init_Skia\28\29::$_139::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +8921:embind_init_Skia\28\29::$_138::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +8922:embind_init_Skia\28\29::$_137::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +8923:embind_init_Skia\28\29::$_136::__invoke\28SkSurface&\29 +8924:embind_init_Skia\28\29::$_135::__invoke\28SkSurface&\29 +8925:embind_init_Skia\28\29::$_134::__invoke\28SkSurface&\29 +8926:embind_init_Skia\28\29::$_133::__invoke\28SkSurface&\2c\20SimpleImageInfo\29 +8927:embind_init_Skia\28\29::$_132::__invoke\28SkSurface&\2c\20unsigned\20long\29 +8928:embind_init_Skia\28\29::$_131::__invoke\28SkSurface&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo\29 +8929:embind_init_Skia\28\29::$_130::__invoke\28SkSurface&\29 +8930:embind_init_Skia\28\29::$_12::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29 +8931:embind_init_Skia\28\29::$_129::__invoke\28SkSurface&\29 +8932:embind_init_Skia\28\29::$_128::__invoke\28SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\29 +8933:embind_init_Skia\28\29::$_127::__invoke\28SkRuntimeEffect&\2c\20int\29 +8934:embind_init_Skia\28\29::$_126::__invoke\28SkRuntimeEffect&\2c\20int\29 +8935:embind_init_Skia\28\29::$_125::__invoke\28SkRuntimeEffect&\29 +8936:embind_init_Skia\28\29::$_124::__invoke\28SkRuntimeEffect&\29 +8937:embind_init_Skia\28\29::$_123::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +8938:embind_init_Skia\28\29::$_122::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +8939:embind_init_Skia\28\29::$_121::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\29 +8940:embind_init_Skia\28\29::$_120::__invoke\28sk_sp\2c\20int\2c\20int\29 +8941:embind_init_Skia\28\29::$_11::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +8942:embind_init_Skia\28\29::$_119::__invoke\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +8943:embind_init_Skia\28\29::$_118::__invoke\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +8944:embind_init_Skia\28\29::$_117::__invoke\28SkSL::DebugTrace&\29 +8945: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 +8946:embind_init_Skia\28\29::$_115::__invoke\28float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29 +8947: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 +8948: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 +8949: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 +8950:embind_init_Skia\28\29::$_111::__invoke\28float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29 +8951:embind_init_Skia\28\29::$_110::__invoke\28unsigned\20long\2c\20sk_sp\29 +8952:embind_init_Skia\28\29::$_10::__invoke\28SkAnimatedImage&\29 +8953:embind_init_Skia\28\29::$_109::operator\28\29\28SkPicture&\29\20const::'lambda'\28SkImage*\2c\20void*\29::__invoke\28SkImage*\2c\20void*\29 +8954:embind_init_Skia\28\29::$_109::__invoke\28SkPicture&\29 +8955:embind_init_Skia\28\29::$_108::__invoke\28SkPicture&\2c\20unsigned\20long\29 +8956:embind_init_Skia\28\29::$_107::__invoke\28SkPicture&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +8957:embind_init_Skia\28\29::$_106::__invoke\28SkPictureRecorder&\29 +8958:embind_init_Skia\28\29::$_105::__invoke\28SkPictureRecorder&\2c\20unsigned\20long\2c\20bool\29 +8959:embind_init_Skia\28\29::$_104::__invoke\28SkPath&\2c\20unsigned\20long\29 +8960:embind_init_Skia\28\29::$_103::__invoke\28SkPath&\2c\20unsigned\20long\29 +8961:embind_init_Skia\28\29::$_102::__invoke\28SkPath&\2c\20int\2c\20unsigned\20long\29 +8962:embind_init_Skia\28\29::$_101::__invoke\28SkPath&\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\29 +8963:embind_init_Skia\28\29::$_100::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\29 +8964:embind_init_Skia\28\29::$_0::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +8965:embind_init_Paragraph\28\29::$_9::__invoke\28skia::textlayout::ParagraphBuilderImpl&\29 +8966:embind_init_Paragraph\28\29::$_8::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20float\2c\20float\2c\20skia::textlayout::PlaceholderAlignment\2c\20skia::textlayout::TextBaseline\2c\20float\29 +8967:embind_init_Paragraph\28\29::$_7::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\2c\20SkPaint\2c\20SkPaint\29 +8968:embind_init_Paragraph\28\29::$_6::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\29 +8969:embind_init_Paragraph\28\29::$_4::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +8970:embind_init_Paragraph\28\29::$_3::__invoke\28emscripten::val\2c\20emscripten::val\2c\20float\29 +8971:embind_init_Paragraph\28\29::$_2::__invoke\28SimpleParagraphStyle\2c\20sk_sp\29 +8972:embind_init_Paragraph\28\29::$_19::__invoke\28skia::textlayout::FontCollection&\2c\20sk_sp\20const&\29 +8973:embind_init_Paragraph\28\29::$_18::__invoke\28\29 +8974:embind_init_Paragraph\28\29::$_17::__invoke\28skia::textlayout::TypefaceFontProvider&\2c\20sk_sp\2c\20unsigned\20long\29 +8975:embind_init_Paragraph\28\29::$_16::__invoke\28\29 +8976:dispose_external_texture\28void*\29 +8977:deleteJSTexture\28void*\29 +8978:deflate_slow +8979:deflate_fast +8980:defaultGetValue\28IntProperty\20const&\2c\20int\2c\20UProperty\29 +8981:defaultGetMaxValue\28IntProperty\20const&\2c\20UProperty\29 +8982:defaultContains\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +8983:decompress_smooth_data +8984:decompress_onepass +8985:decompress_data +8986:decompose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +8987:decompose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +8988:decompose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +8989:decode_mcu_DC_refine +8990:decode_mcu_DC_first +8991:decode_mcu_AC_refine +8992:decode_mcu_AC_first +8993:decode_mcu +8994: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 +8995: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 +8996: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 +8997:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::tess::PatchAttribs&\29::'lambda'\28void*\29>\28skgpu::ganesh::StrokeTessellator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8998: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 +8999: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 +9000: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 +9001:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerSkyline&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9002:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerPow2&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9003:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make*\20SkArenaAlloc::make>\28\29::'lambda'\28void*\29>\28sk_sp&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9004: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 +9005: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 +9006: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 +9007: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 +9008: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 +9009: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 +9010: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 +9011:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28bool&&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTriColorShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9012:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTCubic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9013:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTConic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9014:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\29::'lambda'\28void*\29>\28SkSpriteBlitter_Memcpy&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9015: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 +9016:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkArenaAlloc*&\29::'lambda'\28void*\29>\28SkRasterPipelineBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9017:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkNullBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9018: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 +9019:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::PathData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9020:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::DrawableData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9021:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkGlyph&&\29::'lambda'\28void*\29>\28SkGlyph&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9022: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 +9023: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 +9024: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 +9025: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 +9026:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28GrSimpleMesh&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9027: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 +9028:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPath\20const&\2c\20SkArenaAlloc*\20const&\29::'lambda'\28void*\29>\28GrInnerFanTriangulator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9029: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 +9030: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 +9031:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrAppliedClip&&\29::'lambda'\28void*\29>\28GrAppliedClip&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9032: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 +9033: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 +9034: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 +9035: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 +9036: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 +9037: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 +9038: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 +9039: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 +9040: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 +9041: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 +9042: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 +9043: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 +9044: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 +9045: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 +9046:deallocate_buffer_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9047:ddquad_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9048:ddquad_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9049:ddline_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9050:ddline_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9051:ddcubic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9052:ddcubic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9053:ddconic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9054:ddconic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9055:data_destroy_use\28void*\29 +9056:data_create_use\28hb_ot_shape_plan_t\20const*\29 +9057:data_create_khmer\28hb_ot_shape_plan_t\20const*\29 +9058:data_create_indic\28hb_ot_shape_plan_t\20const*\29 +9059:data_create_hangul\28hb_ot_shape_plan_t\20const*\29 +9060:copy\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +9061:convert_bytes_to_data +9062:consume_markers +9063:consume_data +9064:computeTonalColors\28unsigned\20long\2c\20unsigned\20long\29 +9065:compose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9066:compose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9067:compose_hebrew\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9068:compare_ppem +9069:compare_offsets +9070:compare_myanmar_order\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +9071:compare_combining_class\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +9072:compareKeywordStructs\28void\20const*\2c\20void\20const*\2c\20void\20const*\29 +9073:compareEntries\28UElement\2c\20UElement\29 +9074:color_quantize3 +9075:color_quantize +9076:collect_features_use\28hb_ot_shape_planner_t*\29 +9077:collect_features_myanmar\28hb_ot_shape_planner_t*\29 +9078:collect_features_khmer\28hb_ot_shape_planner_t*\29 +9079:collect_features_indic\28hb_ot_shape_planner_t*\29 +9080:collect_features_hangul\28hb_ot_shape_planner_t*\29 +9081:collect_features_arabic\28hb_ot_shape_planner_t*\29 +9082:clip\28SkPath\20const&\2c\20SkHalfPlane\20const&\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +9083:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitStatement\28SkSL::Statement\20const&\29 +9084:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9085:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitExpression\28SkSL::Expression\20const&\29 +9086:charIterTextLength\28UText*\29 +9087:charIterTextExtract\28UText*\2c\20long\20long\2c\20long\20long\2c\20char16_t*\2c\20int\2c\20UErrorCode*\29 +9088:charIterTextClose\28UText*\29 +9089:charIterTextClone\28UText*\2c\20UText\20const*\2c\20signed\20char\2c\20UErrorCode*\29 +9090:changesWhenNFKC_Casefolded\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +9091:changesWhenCasefolded\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +9092:cff_slot_init +9093:cff_slot_done +9094:cff_size_request +9095:cff_size_init +9096:cff_size_done +9097:cff_sid_to_glyph_name +9098:cff_set_var_design +9099:cff_set_mm_weightvector +9100:cff_set_mm_blend +9101:cff_set_instance +9102:cff_random +9103:cff_ps_has_glyph_names +9104:cff_ps_get_font_info +9105:cff_ps_get_font_extra +9106:cff_parse_vsindex +9107:cff_parse_private_dict +9108:cff_parse_multiple_master +9109:cff_parse_maxstack +9110:cff_parse_font_matrix +9111:cff_parse_font_bbox +9112:cff_parse_cid_ros +9113:cff_parse_blend +9114:cff_metrics_adjust +9115:cff_hadvance_adjust +9116:cff_glyph_load +9117:cff_get_var_design +9118:cff_get_var_blend +9119:cff_get_standard_encoding +9120:cff_get_ros +9121:cff_get_ps_name +9122:cff_get_name_index +9123:cff_get_mm_weightvector +9124:cff_get_mm_var +9125:cff_get_mm_blend +9126:cff_get_is_cid +9127:cff_get_interface +9128:cff_get_glyph_name +9129:cff_get_glyph_data +9130:cff_get_cmap_info +9131:cff_get_cid_from_glyph_index +9132:cff_get_advances +9133:cff_free_glyph_data +9134:cff_fd_select_get +9135:cff_face_init +9136:cff_face_done +9137:cff_driver_init +9138:cff_done_blend +9139:cff_decoder_prepare +9140:cff_decoder_init +9141:cff_cmap_unicode_init +9142:cff_cmap_unicode_char_next +9143:cff_cmap_unicode_char_index +9144:cff_cmap_encoding_init +9145:cff_cmap_encoding_done +9146:cff_cmap_encoding_char_next +9147:cff_cmap_encoding_char_index +9148:cff_builder_start_point +9149:cff_builder_init +9150:cff_builder_add_point1 +9151:cff_builder_add_point +9152:cff_builder_add_contour +9153:cff_blend_check_vector +9154:cf2_free_instance +9155:cf2_decoder_parse_charstrings +9156:cf2_builder_moveTo +9157:cf2_builder_lineTo +9158:cf2_builder_cubeTo +9159:caseBinaryPropertyContains\28BinaryProperty\20const&\2c\20int\2c\20UProperty\29 +9160:bw_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +9161:bw_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9162:bw_pt_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9163:bw_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9164:bw_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9165:breakiterator_cleanup\28\29 +9166:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::SpotVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +9167:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::AmbientVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +9168:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9169:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9170:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9171:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9172:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9173:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9174:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9175:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9176:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9177: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 +9178: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 +9179: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 +9180: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 +9181: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 +9182: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 +9183: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 +9184: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 +9185:blit_row_s32a_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9186:blit_row_s32_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9187:blit_row_s32_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9188:biDiGetMaxValue\28IntProperty\20const&\2c\20UProperty\29 +9189:argb32_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +9190:arabic_fallback_shape\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9191:alwaysSaveTypefaceBytes\28SkTypeface*\2c\20void*\29 +9192:alloc_sarray +9193:alloc_barray +9194:afm_parser_parse +9195:afm_parser_init +9196:afm_parser_done +9197:afm_compare_kern_pairs +9198:af_property_set +9199:af_property_get +9200:af_latin_metrics_scale +9201:af_latin_metrics_init +9202:af_latin_hints_init +9203:af_latin_hints_apply +9204:af_latin_get_standard_widths +9205:af_indic_metrics_init +9206:af_indic_hints_apply +9207:af_get_interface +9208:af_face_globals_free +9209:af_dummy_hints_init +9210:af_dummy_hints_apply +9211:af_cjk_metrics_init +9212:af_autofitter_load_glyph +9213:af_autofitter_init +9214:access_virt_sarray +9215:access_virt_barray +9216:aa_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9217:aa_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9218:aa_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9219:_hb_ot_font_destroy\28void*\29 +9220:_hb_glyph_info_is_default_ignorable\28hb_glyph_info_t\20const*\29 +9221:_hb_face_for_data_reference_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +9222:_hb_face_for_data_closure_destroy\28void*\29 +9223:_hb_clear_substitution_flags\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9224:_embind_initialize_bindings +9225:__wasm_call_ctors +9226:__stdio_write +9227:__stdio_seek +9228:__stdio_read +9229:__stdio_close +9230:__getTypeName +9231:__cxxabiv1::__vmi_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9232:__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 +9233:__cxxabiv1::__vmi_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +9234:__cxxabiv1::__si_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9235:__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 +9236:__cxxabiv1::__si_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +9237:__cxxabiv1::__class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9238:__cxxabiv1::__class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +9239:__cxxabiv1::__class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +9240:__cxxabiv1::__class_type_info::can_catch\28__cxxabiv1::__shim_type_info\20const*\2c\20void*&\29\20const +9241:__cxx_global_array_dtor.87 +9242:__cxx_global_array_dtor.72 +9243:__cxx_global_array_dtor.6 +9244:__cxx_global_array_dtor.57 +9245:__cxx_global_array_dtor.5 +9246:__cxx_global_array_dtor.44 +9247:__cxx_global_array_dtor.42 +9248:__cxx_global_array_dtor.40 +9249:__cxx_global_array_dtor.4 +9250:__cxx_global_array_dtor.38 +9251:__cxx_global_array_dtor.36 +9252:__cxx_global_array_dtor.34 +9253:__cxx_global_array_dtor.32 +9254:__cxx_global_array_dtor.2 +9255:__cxx_global_array_dtor.17 +9256:__cxx_global_array_dtor.16 +9257:__cxx_global_array_dtor.15 +9258:__cxx_global_array_dtor.138 +9259:__cxx_global_array_dtor.135 +9260:__cxx_global_array_dtor.111 +9261:__cxx_global_array_dtor.11 +9262:__cxx_global_array_dtor.10 +9263:__cxx_global_array_dtor.1.2 +9264:__cxx_global_array_dtor.1.1 +9265:__cxx_global_array_dtor.1 +9266:__cxx_global_array_dtor +9267:__cxa_pure_virtual +9268:__cxa_is_pointer_type +9269:\28anonymous\20namespace\29::uprops_cleanup\28\29 +9270:\28anonymous\20namespace\29::ulayout_isAcceptable\28void*\2c\20char\20const*\2c\20char\20const*\2c\20UDataInfo\20const*\29 +9271:\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 +9272:\28anonymous\20namespace\29::skhb_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9273:\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 +9274:\28anonymous\20namespace\29::skhb_glyph_h_advance\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +9275:\28anonymous\20namespace\29::skhb_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +9276:\28anonymous\20namespace\29::skhb_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9277:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29::$_0::__invoke\28void*\29 +9278:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +9279:\28anonymous\20namespace\29::make_morphology\28\28anonymous\20namespace\29::MorphType\2c\20SkSize\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +9280:\28anonymous\20namespace\29::make_drop_shadow_graph\28SkPoint\2c\20SkSize\2c\20unsigned\20int\2c\20bool\2c\20sk_sp\2c\20std::__2::optional\20const&\29 +9281:\28anonymous\20namespace\29::extension_compare\28SkString\20const&\2c\20SkString\20const&\29 +9282:\28anonymous\20namespace\29::characterproperties_cleanup\28\29 +9283:\28anonymous\20namespace\29::_set_add\28USet*\2c\20int\29 +9284:\28anonymous\20namespace\29::_set_addString\28USet*\2c\20char16_t\20const*\2c\20int\29 +9285:\28anonymous\20namespace\29::_set_addRange\28USet*\2c\20int\2c\20int\29 +9286:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29.1 +9287:\28anonymous\20namespace\29::YUVPlanesRec::getCategory\28\29\20const +9288:\28anonymous\20namespace\29::YUVPlanesRec::diagnostic_only_getDiscardable\28\29\20const +9289:\28anonymous\20namespace\29::YUVPlanesRec::bytesUsed\28\29\20const +9290:\28anonymous\20namespace\29::YUVPlanesRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +9291:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29.1 +9292:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29 +9293:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29.1 +9294:\28anonymous\20namespace\29::TriangulatingPathOp::visitProxies\28std::__2::function\20const&\29\20const +9295:\28anonymous\20namespace\29::TriangulatingPathOp::programInfo\28\29 +9296:\28anonymous\20namespace\29::TriangulatingPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +9297:\28anonymous\20namespace\29::TriangulatingPathOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9298:\28anonymous\20namespace\29::TriangulatingPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9299:\28anonymous\20namespace\29::TriangulatingPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9300:\28anonymous\20namespace\29::TriangulatingPathOp::name\28\29\20const +9301:\28anonymous\20namespace\29::TriangulatingPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9302:\28anonymous\20namespace\29::TransformedMaskSubRun::unflattenSize\28\29\20const +9303:\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 +9304:\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +9305:\28anonymous\20namespace\29::TransformedMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +9306:\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 +9307:\28anonymous\20namespace\29::TransformedMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +9308:\28anonymous\20namespace\29::TransformedMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +9309:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29.1 +9310:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29 +9311:\28anonymous\20namespace\29::TextureOpImpl::visitProxies\28std::__2::function\20const&\29\20const +9312:\28anonymous\20namespace\29::TextureOpImpl::programInfo\28\29 +9313:\28anonymous\20namespace\29::TextureOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +9314:\28anonymous\20namespace\29::TextureOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9315:\28anonymous\20namespace\29::TextureOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9316:\28anonymous\20namespace\29::TextureOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9317:\28anonymous\20namespace\29::TextureOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9318:\28anonymous\20namespace\29::TextureOpImpl::name\28\29\20const +9319:\28anonymous\20namespace\29::TextureOpImpl::fixedFunctionFlags\28\29\20const +9320:\28anonymous\20namespace\29::TextureOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9321:\28anonymous\20namespace\29::TentPass::startBlur\28\29 +9322:\28anonymous\20namespace\29::TentPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +9323:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +9324:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +9325:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29.1 +9326:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29 +9327:\28anonymous\20namespace\29::StaticVertexAllocator::unlock\28int\29 +9328:\28anonymous\20namespace\29::StaticVertexAllocator::lock\28unsigned\20long\2c\20int\29 +9329:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::currentScript\28\29\20const +9330:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::consume\28\29 +9331:\28anonymous\20namespace\29::SkUbrkGetLocaleByType::getLocaleByType\28UBreakIterator\20const*\2c\20ULocDataLocaleType\2c\20UErrorCode*\29 +9332:\28anonymous\20namespace\29::SkUbrkClone::clone\28UBreakIterator\20const*\2c\20UErrorCode*\29 +9333:\28anonymous\20namespace\29::SkShaderImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9334:\28anonymous\20namespace\29::SkShaderImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9335:\28anonymous\20namespace\29::SkShaderImageFilter::getTypeName\28\29\20const +9336:\28anonymous\20namespace\29::SkShaderImageFilter::flatten\28SkWriteBuffer&\29\20const +9337:\28anonymous\20namespace\29::SkShaderImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9338:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9339:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9340:\28anonymous\20namespace\29::SkMorphologyImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9341:\28anonymous\20namespace\29::SkMorphologyImageFilter::getTypeName\28\29\20const +9342:\28anonymous\20namespace\29::SkMorphologyImageFilter::flatten\28SkWriteBuffer&\29\20const +9343:\28anonymous\20namespace\29::SkMorphologyImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9344:\28anonymous\20namespace\29::SkMergeImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9345:\28anonymous\20namespace\29::SkMergeImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9346:\28anonymous\20namespace\29::SkMergeImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9347:\28anonymous\20namespace\29::SkMergeImageFilter::getTypeName\28\29\20const +9348:\28anonymous\20namespace\29::SkMergeImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9349:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9350:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9351:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9352:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::getTypeName\28\29\20const +9353:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::flatten\28SkWriteBuffer&\29\20const +9354:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9355:\28anonymous\20namespace\29::SkImageImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9356:\28anonymous\20namespace\29::SkImageImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9357:\28anonymous\20namespace\29::SkImageImageFilter::getTypeName\28\29\20const +9358:\28anonymous\20namespace\29::SkImageImageFilter::flatten\28SkWriteBuffer&\29\20const +9359:\28anonymous\20namespace\29::SkImageImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9360:\28anonymous\20namespace\29::SkFTGeometrySink::Quad\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +9361:\28anonymous\20namespace\29::SkFTGeometrySink::Move\28FT_Vector_\20const*\2c\20void*\29 +9362:\28anonymous\20namespace\29::SkFTGeometrySink::Line\28FT_Vector_\20const*\2c\20void*\29 +9363:\28anonymous\20namespace\29::SkFTGeometrySink::Cubic\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +9364:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +9365:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFamilyName\28SkString*\29\20const +9366:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +9367:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateFamilyNameIterator\28\29\20const +9368:\28anonymous\20namespace\29::SkEmptyTypeface::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +9369:\28anonymous\20namespace\29::SkEmptyTypeface::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +9370:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9371:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9372:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9373:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::getTypeName\28\29\20const +9374:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::flatten\28SkWriteBuffer&\29\20const +9375:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9376:\28anonymous\20namespace\29::SkCropImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9377:\28anonymous\20namespace\29::SkCropImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9378:\28anonymous\20namespace\29::SkCropImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9379:\28anonymous\20namespace\29::SkCropImageFilter::onAffectsTransparentBlack\28\29\20const +9380:\28anonymous\20namespace\29::SkCropImageFilter::getTypeName\28\29\20const +9381:\28anonymous\20namespace\29::SkCropImageFilter::flatten\28SkWriteBuffer&\29\20const +9382:\28anonymous\20namespace\29::SkCropImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9383:\28anonymous\20namespace\29::SkComposeImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9384:\28anonymous\20namespace\29::SkComposeImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9385:\28anonymous\20namespace\29::SkComposeImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9386:\28anonymous\20namespace\29::SkComposeImageFilter::getTypeName\28\29\20const +9387:\28anonymous\20namespace\29::SkComposeImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9388:\28anonymous\20namespace\29::SkColorFilterImageFilter::onIsColorFilterNode\28SkColorFilter**\29\20const +9389:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9390:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9391:\28anonymous\20namespace\29::SkColorFilterImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9392:\28anonymous\20namespace\29::SkColorFilterImageFilter::onAffectsTransparentBlack\28\29\20const +9393:\28anonymous\20namespace\29::SkColorFilterImageFilter::getTypeName\28\29\20const +9394:\28anonymous\20namespace\29::SkColorFilterImageFilter::flatten\28SkWriteBuffer&\29\20const +9395:\28anonymous\20namespace\29::SkColorFilterImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9396:\28anonymous\20namespace\29::SkBlurImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9397:\28anonymous\20namespace\29::SkBlurImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9398:\28anonymous\20namespace\29::SkBlurImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9399:\28anonymous\20namespace\29::SkBlurImageFilter::getTypeName\28\29\20const +9400:\28anonymous\20namespace\29::SkBlurImageFilter::flatten\28SkWriteBuffer&\29\20const +9401:\28anonymous\20namespace\29::SkBlurImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9402:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29.1 +9403:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29 +9404:\28anonymous\20namespace\29::SkBlendImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +9405:\28anonymous\20namespace\29::SkBlendImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +9406:\28anonymous\20namespace\29::SkBlendImageFilter::onFilterImage\28skif::Context\20const&\29\20const +9407:\28anonymous\20namespace\29::SkBlendImageFilter::onAffectsTransparentBlack\28\29\20const +9408:\28anonymous\20namespace\29::SkBlendImageFilter::getTypeName\28\29\20const +9409:\28anonymous\20namespace\29::SkBlendImageFilter::flatten\28SkWriteBuffer&\29\20const +9410:\28anonymous\20namespace\29::SkBlendImageFilter::computeFastBounds\28SkRect\20const&\29\20const +9411:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29.1 +9412:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29 +9413:\28anonymous\20namespace\29::SkBidiIterator_icu::getLevelAt\28int\29 +9414:\28anonymous\20namespace\29::SkBidiIterator_icu::getLength\28\29 +9415:\28anonymous\20namespace\29::SimpleTriangleShader::name\28\29\20const +9416:\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 +9417:\28anonymous\20namespace\29::SimpleTriangleShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +9418:\28anonymous\20namespace\29::ShaperHarfBuzz::~ShaperHarfBuzz\28\29.1 +9419:\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 +9420:\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 +9421:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20bool\2c\20float\2c\20SkShaper::RunHandler*\29\20const +9422:\28anonymous\20namespace\29::ShapeDontWrapOrReorder::~ShapeDontWrapOrReorder\28\29 +9423:\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 +9424:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29.1 +9425:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29 +9426:\28anonymous\20namespace\29::ShadowInvalidator::changed\28\29 +9427:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29.1 +9428:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29 +9429:\28anonymous\20namespace\29::ShadowCircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +9430:\28anonymous\20namespace\29::ShadowCircularRRectOp::programInfo\28\29 +9431:\28anonymous\20namespace\29::ShadowCircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +9432:\28anonymous\20namespace\29::ShadowCircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9433:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9434:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9435:\28anonymous\20namespace\29::ShadowCircularRRectOp::name\28\29\20const +9436:\28anonymous\20namespace\29::ShadowCircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9437:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +9438:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +9439:\28anonymous\20namespace\29::SDFTSubRun::vertexStride\28SkMatrix\20const&\29\20const +9440:\28anonymous\20namespace\29::SDFTSubRun::vertexFiller\28\29\20const +9441:\28anonymous\20namespace\29::SDFTSubRun::unflattenSize\28\29\20const +9442:\28anonymous\20namespace\29::SDFTSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +9443:\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 +9444:\28anonymous\20namespace\29::SDFTSubRun::glyphs\28\29\20const +9445:\28anonymous\20namespace\29::SDFTSubRun::glyphCount\28\29\20const +9446:\28anonymous\20namespace\29::SDFTSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +9447:\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 +9448:\28anonymous\20namespace\29::SDFTSubRun::doFlatten\28SkWriteBuffer&\29\20const +9449:\28anonymous\20namespace\29::SDFTSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +9450:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29.1 +9451:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29 +9452:\28anonymous\20namespace\29::RectsBlurRec::getCategory\28\29\20const +9453:\28anonymous\20namespace\29::RectsBlurRec::diagnostic_only_getDiscardable\28\29\20const +9454:\28anonymous\20namespace\29::RectsBlurRec::bytesUsed\28\29\20const +9455:\28anonymous\20namespace\29::RectsBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +9456:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29.1 +9457:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29 +9458:\28anonymous\20namespace\29::RRectBlurRec::getCategory\28\29\20const +9459:\28anonymous\20namespace\29::RRectBlurRec::diagnostic_only_getDiscardable\28\29\20const +9460:\28anonymous\20namespace\29::RRectBlurRec::bytesUsed\28\29\20const +9461:\28anonymous\20namespace\29::RRectBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +9462:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29.1 +9463:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29 +9464:\28anonymous\20namespace\29::PathSubRun::unflattenSize\28\29\20const +9465:\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 +9466:\28anonymous\20namespace\29::PathSubRun::doFlatten\28SkWriteBuffer&\29\20const +9467:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29.1 +9468:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29 +9469:\28anonymous\20namespace\29::MipMapRec::getCategory\28\29\20const +9470:\28anonymous\20namespace\29::MipMapRec::diagnostic_only_getDiscardable\28\29\20const +9471:\28anonymous\20namespace\29::MipMapRec::bytesUsed\28\29\20const +9472:\28anonymous\20namespace\29::MipMapRec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +9473:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29.1 +9474:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29 +9475:\28anonymous\20namespace\29::MiddleOutShader::name\28\29\20const +9476:\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 +9477:\28anonymous\20namespace\29::MiddleOutShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +9478:\28anonymous\20namespace\29::MiddleOutShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9479:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29.1 +9480:\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const +9481:\28anonymous\20namespace\29::MeshOp::programInfo\28\29 +9482:\28anonymous\20namespace\29::MeshOp::onPrepareDraws\28GrMeshDrawTarget*\29 +9483:\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9484:\28anonymous\20namespace\29::MeshOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9485:\28anonymous\20namespace\29::MeshOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9486:\28anonymous\20namespace\29::MeshOp::name\28\29\20const +9487:\28anonymous\20namespace\29::MeshOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9488:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29.1 +9489:\28anonymous\20namespace\29::MeshGP::onTextureSampler\28int\29\20const +9490:\28anonymous\20namespace\29::MeshGP::name\28\29\20const +9491:\28anonymous\20namespace\29::MeshGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +9492:\28anonymous\20namespace\29::MeshGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9493:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29.1 +9494:\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +9495:\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +9496:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +9497:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +9498:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +9499:\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 +9500:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMangledName\28char\20const*\29 +9501:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMainName\28\29 +9502:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +9503:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +9504:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +9505:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareFunction\28char\20const*\29 +9506:\28anonymous\20namespace\29::ImageFromPictureRec::~ImageFromPictureRec\28\29.1 +9507:\28anonymous\20namespace\29::ImageFromPictureRec::~ImageFromPictureRec\28\29 +9508:\28anonymous\20namespace\29::ImageFromPictureRec::getCategory\28\29\20const +9509:\28anonymous\20namespace\29::ImageFromPictureRec::bytesUsed\28\29\20const +9510:\28anonymous\20namespace\29::ImageFromPictureRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +9511:\28anonymous\20namespace\29::HQDownSampler::buildLevel\28SkPixmap\20const&\2c\20SkPixmap\20const&\29 +9512:\28anonymous\20namespace\29::GaussPass::startBlur\28\29 +9513:\28anonymous\20namespace\29::GaussPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +9514:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +9515:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +9516:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29.1 +9517:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29 +9518:\28anonymous\20namespace\29::FillRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +9519:\28anonymous\20namespace\29::FillRectOpImpl::programInfo\28\29 +9520:\28anonymous\20namespace\29::FillRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +9521:\28anonymous\20namespace\29::FillRectOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9522:\28anonymous\20namespace\29::FillRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9523:\28anonymous\20namespace\29::FillRectOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9524:\28anonymous\20namespace\29::FillRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9525:\28anonymous\20namespace\29::FillRectOpImpl::name\28\29\20const +9526:\28anonymous\20namespace\29::FillRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9527:\28anonymous\20namespace\29::EllipticalRRectEffect::onMakeProgramImpl\28\29\20const +9528:\28anonymous\20namespace\29::EllipticalRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9529:\28anonymous\20namespace\29::EllipticalRRectEffect::name\28\29\20const +9530:\28anonymous\20namespace\29::EllipticalRRectEffect::clone\28\29\20const +9531:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +9532:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +9533:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29.1 +9534:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29 +9535:\28anonymous\20namespace\29::DrawableSubRun::unflattenSize\28\29\20const +9536:\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 +9537:\28anonymous\20namespace\29::DrawableSubRun::doFlatten\28SkWriteBuffer&\29\20const +9538:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29.1 +9539:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29 +9540:\28anonymous\20namespace\29::DrawAtlasPathShader::onTextureSampler\28int\29\20const +9541:\28anonymous\20namespace\29::DrawAtlasPathShader::name\28\29\20const +9542:\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +9543:\28anonymous\20namespace\29::DrawAtlasPathShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9544:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +9545:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +9546:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29.1 +9547:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29 +9548:\28anonymous\20namespace\29::DrawAtlasOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +9549:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9550:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9551:\28anonymous\20namespace\29::DrawAtlasOpImpl::name\28\29\20const +9552:\28anonymous\20namespace\29::DrawAtlasOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9553:\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +9554:\28anonymous\20namespace\29::DirectMaskSubRun::unflattenSize\28\29\20const +9555:\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 +9556:\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +9557:\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +9558:\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 +9559:\28anonymous\20namespace\29::DirectMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +9560:\28anonymous\20namespace\29::DirectMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +9561:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29.1 +9562:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29 +9563:\28anonymous\20namespace\29::DefaultPathOp::visitProxies\28std::__2::function\20const&\29\20const +9564:\28anonymous\20namespace\29::DefaultPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +9565:\28anonymous\20namespace\29::DefaultPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9566:\28anonymous\20namespace\29::DefaultPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9567:\28anonymous\20namespace\29::DefaultPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9568:\28anonymous\20namespace\29::DefaultPathOp::name\28\29\20const +9569:\28anonymous\20namespace\29::DefaultPathOp::fixedFunctionFlags\28\29\20const +9570:\28anonymous\20namespace\29::DefaultPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9571:\28anonymous\20namespace\29::CircularRRectEffect::onMakeProgramImpl\28\29\20const +9572:\28anonymous\20namespace\29::CircularRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +9573:\28anonymous\20namespace\29::CircularRRectEffect::name\28\29\20const +9574:\28anonymous\20namespace\29::CircularRRectEffect::clone\28\29\20const +9575:\28anonymous\20namespace\29::CircularRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +9576:\28anonymous\20namespace\29::CircularRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +9577:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29.1 +9578:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29 +9579:\28anonymous\20namespace\29::CachedTessellationsRec::getCategory\28\29\20const +9580:\28anonymous\20namespace\29::CachedTessellationsRec::bytesUsed\28\29\20const +9581:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29.1 +9582:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29.1 +9583:\28anonymous\20namespace\29::CacheImpl::set\28SkImageFilterCacheKey\20const&\2c\20SkImageFilter\20const*\2c\20skif::FilterResult\20const&\29 +9584:\28anonymous\20namespace\29::CacheImpl::purge\28\29 +9585:\28anonymous\20namespace\29::CacheImpl::purgeByImageFilter\28SkImageFilter\20const*\29 +9586:\28anonymous\20namespace\29::CacheImpl::get\28SkImageFilterCacheKey\20const&\2c\20skif::FilterResult*\29\20const +9587:\28anonymous\20namespace\29::BoundingBoxShader::name\28\29\20const +9588:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +9589:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +9590:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +9591:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29.1 +9592:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29 +9593:\28anonymous\20namespace\29::AAHairlineOp::visitProxies\28std::__2::function\20const&\29\20const +9594:\28anonymous\20namespace\29::AAHairlineOp::onPrepareDraws\28GrMeshDrawTarget*\29 +9595:\28anonymous\20namespace\29::AAHairlineOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9596:\28anonymous\20namespace\29::AAHairlineOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +9597:\28anonymous\20namespace\29::AAHairlineOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +9598:\28anonymous\20namespace\29::AAHairlineOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +9599:\28anonymous\20namespace\29::AAHairlineOp::name\28\29\20const +9600:\28anonymous\20namespace\29::AAHairlineOp::fixedFunctionFlags\28\29\20const +9601:\28anonymous\20namespace\29::AAHairlineOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +9602:YuvToRgbaRow +9603:YuvToRgba4444Row +9604:YuvToRgbRow +9605:YuvToRgb565Row +9606:YuvToBgraRow +9607:YuvToBgrRow +9608:YuvToArgbRow +9609:Write_CVT_Stretched +9610:Write_CVT +9611:WebPYuv444ToRgba_C +9612:WebPYuv444ToRgba4444_C +9613:WebPYuv444ToRgb_C +9614:WebPYuv444ToRgb565_C +9615:WebPYuv444ToBgra_C +9616:WebPYuv444ToBgr_C +9617:WebPYuv444ToArgb_C +9618:WebPRescalerImportRowShrink_C +9619:WebPRescalerImportRowExpand_C +9620:WebPRescalerExportRowShrink_C +9621:WebPRescalerExportRowExpand_C +9622:WebPMultRow_C +9623:WebPMultARGBRow_C +9624:WebPConvertRGBA32ToUV_C +9625:WebPConvertARGBToUV_C +9626:WebGLTextureImageGenerator::~WebGLTextureImageGenerator\28\29.1 +9627:WebGLTextureImageGenerator::~WebGLTextureImageGenerator\28\29 +9628:WebGLTextureImageGenerator::generateExternalTexture\28GrRecordingContext*\2c\20skgpu::Mipmapped\29 +9629:Vertish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +9630:Vertish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +9631:VerticalUnfilter_C +9632:VerticalFilter_C +9633:VertState::Triangles\28VertState*\29 +9634:VertState::TrianglesX\28VertState*\29 +9635:VertState::TriangleStrip\28VertState*\29 +9636:VertState::TriangleStripX\28VertState*\29 +9637:VertState::TriangleFan\28VertState*\29 +9638:VertState::TriangleFanX\28VertState*\29 +9639:VR4_C +9640:VP8LTransformColorInverse_C +9641:VP8LPredictor9_C +9642:VP8LPredictor8_C +9643:VP8LPredictor7_C +9644:VP8LPredictor6_C +9645:VP8LPredictor5_C +9646:VP8LPredictor4_C +9647:VP8LPredictor3_C +9648:VP8LPredictor2_C +9649:VP8LPredictor1_C +9650:VP8LPredictor13_C +9651:VP8LPredictor12_C +9652:VP8LPredictor11_C +9653:VP8LPredictor10_C +9654:VP8LPredictor0_C +9655:VP8LConvertBGRAToRGB_C +9656:VP8LConvertBGRAToRGBA_C +9657:VP8LConvertBGRAToRGBA4444_C +9658:VP8LConvertBGRAToRGB565_C +9659:VP8LConvertBGRAToBGR_C +9660:VP8LAddGreenToBlueAndRed_C +9661:VLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +9662:VLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +9663:VL4_C +9664:VFilter8i_C +9665:VFilter8_C +9666:VFilter16i_C +9667:VFilter16_C +9668:VE8uv_C +9669:VE4_C +9670:VE16_C +9671:UpsampleRgbaLinePair_C +9672:UpsampleRgba4444LinePair_C +9673:UpsampleRgbLinePair_C +9674:UpsampleRgb565LinePair_C +9675:UpsampleBgraLinePair_C +9676:UpsampleBgrLinePair_C +9677:UpsampleArgbLinePair_C +9678:UnresolvedCodepoints\28skia::textlayout::Paragraph&\29 +9679:UnicodeString_charAt\28int\2c\20void*\29 +9680:TransformWHT_C +9681:TransformUV_C +9682:TransformTwo_C +9683:TransformDC_C +9684:TransformDCUV_C +9685:TransformAC3_C +9686:ToSVGString\28SkPath\20const&\29 +9687:ToCmds\28SkPath\20const&\29 +9688:TT_Set_MM_Blend +9689:TT_RunIns +9690:TT_Load_Simple_Glyph +9691:TT_Load_Glyph_Header +9692:TT_Load_Composite_Glyph +9693:TT_Get_Var_Design +9694:TT_Get_MM_Blend +9695:TT_Forget_Glyph_Frame +9696:TT_Access_Glyph_Frame +9697:TM8uv_C +9698:TM4_C +9699:TM16_C +9700:Sync +9701:SquareCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +9702:Sprite_D32_S32::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9703:SkWuffsFrameHolder::onGetFrame\28int\29\20const +9704:SkWuffsCodec::~SkWuffsCodec\28\29.1 +9705:SkWuffsCodec::~SkWuffsCodec\28\29 +9706:SkWuffsCodec::onIncrementalDecode\28int*\29 +9707:SkWuffsCodec::onGetRepetitionCount\28\29 +9708:SkWuffsCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9709:SkWuffsCodec::onGetFrameInfo\28int\2c\20SkCodec::FrameInfo*\29\20const +9710:SkWuffsCodec::onGetFrameCount\28\29 +9711:SkWuffsCodec::getFrameHolder\28\29\20const +9712:SkWuffsCodec::getEncodedData\28\29\20const +9713:SkWriteICCProfile\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +9714:SkWebpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9715:SkWebpCodec::~SkWebpCodec\28\29.1 +9716:SkWebpCodec::~SkWebpCodec\28\29 +9717:SkWebpCodec::onGetValidSubset\28SkIRect*\29\20const +9718:SkWebpCodec::onGetRepetitionCount\28\29 +9719:SkWebpCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9720:SkWebpCodec::onGetFrameInfo\28int\2c\20SkCodec::FrameInfo*\29\20const +9721:SkWebpCodec::onGetFrameCount\28\29 +9722:SkWebpCodec::getFrameHolder\28\29\20const +9723:SkWebpCodec::FrameHolder::~FrameHolder\28\29.1 +9724:SkWebpCodec::FrameHolder::~FrameHolder\28\29 +9725:SkWebpCodec::FrameHolder::onGetFrame\28int\29\20const +9726:SkWeakRefCnt::internal_dispose\28\29\20const +9727:SkWbmpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9728:SkWbmpCodec::~SkWbmpCodec\28\29.1 +9729:SkWbmpCodec::~SkWbmpCodec\28\29 +9730:SkWbmpCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9731:SkWbmpCodec::onSkipScanlines\28int\29 +9732:SkWbmpCodec::onRewind\28\29 +9733:SkWbmpCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +9734:SkWbmpCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9735:SkWbmpCodec::getSampler\28bool\29 +9736:SkWbmpCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +9737:SkVertices::Builder*\20emscripten::internal::operator_new\28SkVertices::VertexMode&&\2c\20int&&\2c\20int&&\2c\20unsigned\20int&&\29 +9738:SkUserTypeface::~SkUserTypeface\28\29.1 +9739:SkUserTypeface::~SkUserTypeface\28\29 +9740:SkUserTypeface::onOpenStream\28int*\29\20const +9741:SkUserTypeface::onGetUPEM\28\29\20const +9742:SkUserTypeface::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +9743:SkUserTypeface::onGetFamilyName\28SkString*\29\20const +9744:SkUserTypeface::onFilterRec\28SkScalerContextRec*\29\20const +9745:SkUserTypeface::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +9746:SkUserTypeface::onCountGlyphs\28\29\20const +9747:SkUserTypeface::onComputeBounds\28SkRect*\29\20const +9748:SkUserTypeface::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +9749:SkUserTypeface::getGlyphToUnicodeMap\28int*\29\20const +9750:SkUserScalerContext::~SkUserScalerContext\28\29 +9751:SkUserScalerContext::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +9752:SkUserScalerContext::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +9753:SkUserScalerContext::generateImage\28SkGlyph\20const&\2c\20void*\29 +9754:SkUserScalerContext::generateFontMetrics\28SkFontMetrics*\29 +9755:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::~DrawableMatrixWrapper\28\29.1 +9756:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::~DrawableMatrixWrapper\28\29 +9757:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onGetBounds\28\29 +9758:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onDraw\28SkCanvas*\29 +9759:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onApproximateBytesUsed\28\29 +9760:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29 +9761:SkUnicode_icu::~SkUnicode_icu\28\29.1 +9762:SkUnicode_icu::~SkUnicode_icu\28\29 +9763:SkUnicode_icu::toUpper\28SkString\20const&\2c\20char\20const*\29 +9764:SkUnicode_icu::toUpper\28SkString\20const&\29 +9765:SkUnicode_icu::reorderVisual\28unsigned\20char\20const*\2c\20int\2c\20int*\29 +9766:SkUnicode_icu::makeBreakIterator\28char\20const*\2c\20SkUnicode::BreakType\29 +9767:SkUnicode_icu::makeBreakIterator\28SkUnicode::BreakType\29 +9768:SkUnicode_icu::makeBidiIterator\28unsigned\20short\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +9769:SkUnicode_icu::makeBidiIterator\28char\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +9770:SkUnicode_icu::isWhitespace\28int\29 +9771:SkUnicode_icu::isTabulation\28int\29 +9772:SkUnicode_icu::isSpace\28int\29 +9773:SkUnicode_icu::isRegionalIndicator\28int\29 +9774:SkUnicode_icu::isIdeographic\28int\29 +9775:SkUnicode_icu::isHardBreak\28int\29 +9776:SkUnicode_icu::isEmoji\28int\29 +9777:SkUnicode_icu::isEmojiModifier\28int\29 +9778:SkUnicode_icu::isEmojiModifierBase\28int\29 +9779:SkUnicode_icu::isEmojiComponent\28int\29 +9780:SkUnicode_icu::isControl\28int\29 +9781:SkUnicode_icu::getWords\28char\20const*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +9782:SkUnicode_icu::getUtf8Words\28char\20const*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +9783:SkUnicode_icu::getSentences\28char\20const*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +9784:SkUnicode_icu::getBidiRegions\28char\20const*\2c\20int\2c\20SkUnicode::TextDirection\2c\20std::__2::vector>*\29 +9785:SkUnicode_icu::computeCodeUnitFlags\28char16_t*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +9786:SkUnicode_icu::computeCodeUnitFlags\28char*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +9787:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29.1 +9788:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29 +9789:SkUnicodeBidiRunIterator::endOfCurrentRun\28\29\20const +9790:SkUnicodeBidiRunIterator::currentLevel\28\29\20const +9791:SkUnicodeBidiRunIterator::consume\28\29 +9792:SkUnicodeBidiRunIterator::atEnd\28\29\20const +9793:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29.1 +9794:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29 +9795:SkTypeface_FreeTypeStream::onOpenStream\28int*\29\20const +9796:SkTypeface_FreeTypeStream::onMakeFontData\28\29\20const +9797:SkTypeface_FreeTypeStream::onMakeClone\28SkFontArguments\20const&\29\20const +9798:SkTypeface_FreeTypeStream::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +9799:SkTypeface_FreeType::onGlyphMaskNeedsCurrentColor\28\29\20const +9800:SkTypeface_FreeType::onGetVariationDesignPosition\28SkFontArguments::VariationPosition::Coordinate*\2c\20int\29\20const +9801:SkTypeface_FreeType::onGetVariationDesignParameters\28SkFontParameters::Variation::Axis*\2c\20int\29\20const +9802:SkTypeface_FreeType::onGetUPEM\28\29\20const +9803:SkTypeface_FreeType::onGetTableTags\28unsigned\20int*\29\20const +9804:SkTypeface_FreeType::onGetTableData\28unsigned\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20void*\29\20const +9805:SkTypeface_FreeType::onGetPostScriptName\28SkString*\29\20const +9806:SkTypeface_FreeType::onGetKerningPairAdjustments\28unsigned\20short\20const*\2c\20int\2c\20int*\29\20const +9807:SkTypeface_FreeType::onGetAdvancedMetrics\28\29\20const +9808:SkTypeface_FreeType::onFilterRec\28SkScalerContextRec*\29\20const +9809:SkTypeface_FreeType::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +9810:SkTypeface_FreeType::onCreateFamilyNameIterator\28\29\20const +9811:SkTypeface_FreeType::onCountGlyphs\28\29\20const +9812:SkTypeface_FreeType::onCopyTableData\28unsigned\20int\29\20const +9813:SkTypeface_FreeType::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +9814:SkTypeface_FreeType::getPostScriptGlyphNames\28SkString*\29\20const +9815:SkTypeface_FreeType::getGlyphToUnicodeMap\28int*\29\20const +9816:SkTypeface_Empty::~SkTypeface_Empty\28\29 +9817:SkTypeface_Custom::~SkTypeface_Custom\28\29.1 +9818:SkTypeface_Custom::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +9819:SkTypeface::onCopyTableData\28unsigned\20int\29\20const +9820:SkTypeface::onComputeBounds\28SkRect*\29\20const +9821:SkTrimPE::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9822:SkTrimPE::getTypeName\28\29\20const +9823:SkTriColorShader::type\28\29\20const +9824:SkTriColorShader::isOpaque\28\29\20const +9825:SkTriColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9826:SkTransformShader::type\28\29\20const +9827:SkTransformShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9828:SkTQuad::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +9829:SkTQuad::setBounds\28SkDRect*\29\20const +9830:SkTQuad::ptAtT\28double\29\20const +9831:SkTQuad::make\28SkArenaAlloc&\29\20const +9832:SkTQuad::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +9833:SkTQuad::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +9834:SkTQuad::dxdyAtT\28double\29\20const +9835:SkTQuad::debugInit\28\29 +9836:SkTCubic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +9837:SkTCubic::setBounds\28SkDRect*\29\20const +9838:SkTCubic::ptAtT\28double\29\20const +9839:SkTCubic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +9840:SkTCubic::make\28SkArenaAlloc&\29\20const +9841:SkTCubic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +9842:SkTCubic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +9843:SkTCubic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +9844:SkTCubic::dxdyAtT\28double\29\20const +9845:SkTCubic::debugInit\28\29 +9846:SkTCubic::controlsInside\28\29\20const +9847:SkTCubic::collapsed\28\29\20const +9848:SkTConic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +9849:SkTConic::setBounds\28SkDRect*\29\20const +9850:SkTConic::ptAtT\28double\29\20const +9851:SkTConic::make\28SkArenaAlloc&\29\20const +9852:SkTConic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +9853:SkTConic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +9854:SkTConic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +9855:SkTConic::dxdyAtT\28double\29\20const +9856:SkTConic::debugInit\28\29 +9857:SkSwizzler::onSetSampleX\28int\29 +9858:SkSwizzler::fillWidth\28\29\20const +9859:SkSweepGradient::getTypeName\28\29\20const +9860:SkSweepGradient::flatten\28SkWriteBuffer&\29\20const +9861:SkSweepGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9862:SkSweepGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +9863:SkSurface_Raster::~SkSurface_Raster\28\29.1 +9864:SkSurface_Raster::~SkSurface_Raster\28\29 +9865:SkSurface_Raster::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +9866:SkSurface_Raster::onRestoreBackingMutability\28\29 +9867:SkSurface_Raster::onNewSurface\28SkImageInfo\20const&\29 +9868:SkSurface_Raster::onNewImageSnapshot\28SkIRect\20const*\29 +9869:SkSurface_Raster::onNewCanvas\28\29 +9870:SkSurface_Raster::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +9871:SkSurface_Raster::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +9872:SkSurface_Raster::imageInfo\28\29\20const +9873:SkSurface_Ganesh::~SkSurface_Ganesh\28\29.1 +9874:SkSurface_Ganesh::~SkSurface_Ganesh\28\29 +9875:SkSurface_Ganesh::replaceBackendTexture\28GrBackendTexture\20const&\2c\20GrSurfaceOrigin\2c\20SkSurface::ContentChangeMode\2c\20void\20\28*\29\28void*\29\2c\20void*\29 +9876:SkSurface_Ganesh::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +9877:SkSurface_Ganesh::onWait\28int\2c\20GrBackendSemaphore\20const*\2c\20bool\29 +9878:SkSurface_Ganesh::onNewSurface\28SkImageInfo\20const&\29 +9879:SkSurface_Ganesh::onNewImageSnapshot\28SkIRect\20const*\29 +9880:SkSurface_Ganesh::onNewCanvas\28\29 +9881:SkSurface_Ganesh::onIsCompatible\28GrSurfaceCharacterization\20const&\29\20const +9882:SkSurface_Ganesh::onGetRecordingContext\28\29\20const +9883:SkSurface_Ganesh::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +9884:SkSurface_Ganesh::onDiscard\28\29 +9885:SkSurface_Ganesh::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +9886:SkSurface_Ganesh::onCharacterize\28GrSurfaceCharacterization*\29\20const +9887:SkSurface_Ganesh::onCapabilities\28\29 +9888: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 +9889: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 +9890:SkSurface_Ganesh::imageInfo\28\29\20const +9891: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 +9892:SkSurface::imageInfo\28\29\20const +9893:SkSurface::height\28\29\20const +9894:SkStrikeCache::~SkStrikeCache\28\29.1 +9895:SkStrikeCache::~SkStrikeCache\28\29 +9896:SkStrikeCache::findOrCreateScopedStrike\28SkStrikeSpec\20const&\29 +9897:SkStrike::~SkStrike\28\29.1 +9898:SkStrike::~SkStrike\28\29 +9899:SkStrike::strikePromise\28\29 +9900:SkStrike::roundingSpec\28\29\20const +9901:SkStrike::prepareForPath\28SkGlyph*\29 +9902:SkStrike::prepareForImage\28SkGlyph*\29 +9903:SkStrike::prepareForDrawable\28SkGlyph*\29 +9904:SkStrike::getDescriptor\28\29\20const +9905:SkSpriteBlitter_Memcpy::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9906:SkSpriteBlitter::~SkSpriteBlitter\28\29.1 +9907:SkSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +9908:SkSpriteBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9909:SkSpriteBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +9910:SkSpriteBlitter::blitH\28int\2c\20int\2c\20int\29 +9911:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29.1 +9912:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29 +9913:SkSpecialImage_Raster::onMakeBackingStoreSubset\28SkIRect\20const&\29\20const +9914:SkSpecialImage_Raster::getSize\28\29\20const +9915:SkSpecialImage_Raster::backingStoreDimensions\28\29\20const +9916:SkSpecialImage_Raster::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +9917:SkSpecialImage_Raster::asImage\28\29\20const +9918:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29.1 +9919:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29 +9920:SkSpecialImage_Gpu::onMakeBackingStoreSubset\28SkIRect\20const&\29\20const +9921:SkSpecialImage_Gpu::getSize\28\29\20const +9922:SkSpecialImage_Gpu::backingStoreDimensions\28\29\20const +9923:SkSpecialImage_Gpu::asImage\28\29\20const +9924:SkSpecialImage::~SkSpecialImage\28\29 +9925:SkSpecialImage::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +9926:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29.1 +9927:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29 +9928:SkShaper::TrivialLanguageRunIterator::currentLanguage\28\29\20const +9929:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29.1 +9930:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29 +9931:SkShaper::TrivialBiDiRunIterator::currentLevel\28\29\20const +9932:SkShaderBlurAlgorithm::maxSigma\28\29\20const +9933:SkShaderBlurAlgorithm::blur\28SkSize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +9934:SkScan::HairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9935:SkScan::HairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9936:SkScan::HairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9937:SkScan::AntiHairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9938:SkScan::AntiHairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9939:SkScan::AntiHairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9940:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +9941:SkScalingCodec::onGetScaledDimensions\28float\29\20const +9942:SkScalingCodec::onDimensionsSupported\28SkISize\20const&\29 +9943:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29.1 +9944:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29 +9945:SkScalerContext_FreeType::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +9946:SkScalerContext_FreeType::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +9947:SkScalerContext_FreeType::generateImage\28SkGlyph\20const&\2c\20void*\29 +9948:SkScalerContext_FreeType::generateFontMetrics\28SkFontMetrics*\29 +9949:SkScalerContext_FreeType::generateDrawable\28SkGlyph\20const&\29 +9950:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::~SkScalerContext_Empty\28\29 +9951:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +9952:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +9953:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateFontMetrics\28SkFontMetrics*\29 +9954:SkSampledCodec::onGetSampledDimensions\28int\29\20const +9955:SkSampledCodec::onGetAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +9956:SkSRGBColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +9957:SkSRGBColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +9958: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 +9959: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 +9960: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 +9961: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 +9962:SkSL::remove_break_statements\28std::__2::unique_ptr>&\29::RemoveBreaksWriter::visitStatementPtr\28std::__2::unique_ptr>&\29 +9963:SkSL::hoist_vardecl_symbols_into_outer_scope\28SkSL::Context\20const&\2c\20SkSL::Block\20const&\2c\20SkSL::SymbolTable*\2c\20SkSL::SymbolTable*\29::SymbolHoister::visitStatement\28SkSL::Statement\20const&\29 +9964:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29.1 +9965:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29 +9966:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29.1 +9967:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29 +9968:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +9969:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitExpressionPtr\28std::__2::unique_ptr>&\29 +9970:SkSL::count_returns_at_end_of_control_flow\28SkSL::FunctionDefinition\20const&\29::CountReturnsAtEndOfControlFlow::visitStatement\28SkSL::Statement\20const&\29 +9971:SkSL::\28anonymous\20namespace\29::VariableWriteVisitor::visitExpression\28SkSL::Expression\20const&\29 +9972:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9973:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitExpression\28SkSL::Expression\20const&\29 +9974:SkSL::\28anonymous\20namespace\29::ReturnsNonOpaqueColorVisitor::visitStatement\28SkSL::Statement\20const&\29 +9975:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitStatement\28SkSL::Statement\20const&\29 +9976:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9977:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitStatement\28SkSL::Statement\20const&\29 +9978:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitStatement\28SkSL::Statement\20const&\29 +9979:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9980:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitExpression\28SkSL::Expression\20const&\29 +9981:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9982:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +9983:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29.1 +9984:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29 +9985:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitExpression\28SkSL::Expression\20const&\29 +9986:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29.1 +9987:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29 +9988:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitStatement\28SkSL::Statement\20const&\29 +9989:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitExpression\28SkSL::Expression\20const&\29 +9990:SkSL::VectorType::isAllowedInUniform\28SkSL::Position*\29\20const +9991:SkSL::VectorType::isAllowedInES2\28\29\20const +9992:SkSL::VariableReference::clone\28SkSL::Position\29\20const +9993:SkSL::Variable::~Variable\28\29.1 +9994:SkSL::Variable::~Variable\28\29 +9995:SkSL::Variable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +9996:SkSL::Variable::mangledName\28\29\20const +9997:SkSL::Variable::layout\28\29\20const +9998:SkSL::Variable::description\28\29\20const +9999:SkSL::VarDeclaration::~VarDeclaration\28\29.1 +10000:SkSL::VarDeclaration::~VarDeclaration\28\29 +10001:SkSL::VarDeclaration::description\28\29\20const +10002:SkSL::TypeReference::clone\28SkSL::Position\29\20const +10003:SkSL::Type::minimumValue\28\29\20const +10004:SkSL::Type::maximumValue\28\29\20const +10005:SkSL::Type::isAllowedInUniform\28SkSL::Position*\29\20const +10006:SkSL::Type::fields\28\29\20const +10007:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29.1 +10008:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29 +10009:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::visitStatementPtr\28std::__2::unique_ptr>&\29 +10010:SkSL::Tracer::var\28int\2c\20int\29 +10011:SkSL::Tracer::scope\28int\29 +10012:SkSL::Tracer::line\28int\29 +10013:SkSL::Tracer::exit\28int\29 +10014:SkSL::Tracer::enter\28int\29 +10015:SkSL::TextureType::textureAccess\28\29\20const +10016:SkSL::TextureType::isMultisampled\28\29\20const +10017:SkSL::TextureType::isDepth\28\29\20const +10018:SkSL::TextureType::isArrayedTexture\28\29\20const +10019:SkSL::TernaryExpression::~TernaryExpression\28\29.1 +10020:SkSL::TernaryExpression::~TernaryExpression\28\29 +10021:SkSL::TernaryExpression::description\28SkSL::OperatorPrecedence\29\20const +10022:SkSL::TernaryExpression::clone\28SkSL::Position\29\20const +10023:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression&\29 +10024:SkSL::Swizzle::description\28SkSL::OperatorPrecedence\29\20const +10025:SkSL::Swizzle::clone\28SkSL::Position\29\20const +10026:SkSL::SwitchStatement::description\28\29\20const +10027:SkSL::SwitchCase::description\28\29\20const +10028:SkSL::StructType::slotType\28unsigned\20long\29\20const +10029:SkSL::StructType::isOrContainsUnsizedArray\28\29\20const +10030:SkSL::StructType::isOrContainsAtomic\28\29\20const +10031:SkSL::StructType::isOrContainsArray\28\29\20const +10032:SkSL::StructType::isInterfaceBlock\28\29\20const +10033:SkSL::StructType::isBuiltin\28\29\20const +10034:SkSL::StructType::isAllowedInUniform\28SkSL::Position*\29\20const +10035:SkSL::StructType::isAllowedInES2\28\29\20const +10036:SkSL::StructType::fields\28\29\20const +10037:SkSL::StructDefinition::description\28\29\20const +10038:SkSL::StringStream::~StringStream\28\29.1 +10039:SkSL::StringStream::~StringStream\28\29 +10040:SkSL::StringStream::write\28void\20const*\2c\20unsigned\20long\29 +10041:SkSL::StringStream::writeText\28char\20const*\29 +10042:SkSL::StringStream::write8\28unsigned\20char\29 +10043:SkSL::SingleArgumentConstructor::~SingleArgumentConstructor\28\29 +10044:SkSL::Setting::description\28SkSL::OperatorPrecedence\29\20const +10045:SkSL::Setting::clone\28SkSL::Position\29\20const +10046:SkSL::ScalarType::priority\28\29\20const +10047:SkSL::ScalarType::numberKind\28\29\20const +10048:SkSL::ScalarType::minimumValue\28\29\20const +10049:SkSL::ScalarType::maximumValue\28\29\20const +10050:SkSL::ScalarType::isAllowedInUniform\28SkSL::Position*\29\20const +10051:SkSL::ScalarType::isAllowedInES2\28\29\20const +10052:SkSL::ScalarType::bitWidth\28\29\20const +10053:SkSL::SamplerType::textureAccess\28\29\20const +10054:SkSL::SamplerType::isMultisampled\28\29\20const +10055:SkSL::SamplerType::isDepth\28\29\20const +10056:SkSL::SamplerType::isArrayedTexture\28\29\20const +10057:SkSL::SamplerType::dimensions\28\29\20const +10058:SkSL::ReturnStatement::description\28\29\20const +10059:SkSL::RP::VariableLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10060:SkSL::RP::VariableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10061:SkSL::RP::VariableLValue::isWritable\28\29\20const +10062:SkSL::RP::VariableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10063:SkSL::RP::UnownedLValueSlice::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10064:SkSL::RP::UnownedLValueSlice::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10065:SkSL::RP::UnownedLValueSlice::fixedSlotRange\28SkSL::RP::Generator*\29 +10066:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29.1 +10067:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29 +10068:SkSL::RP::SwizzleLValue::swizzle\28\29 +10069:SkSL::RP::SwizzleLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10070:SkSL::RP::SwizzleLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10071:SkSL::RP::SwizzleLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10072:SkSL::RP::ScratchLValue::~ScratchLValue\28\29.1 +10073:SkSL::RP::ScratchLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10074:SkSL::RP::ScratchLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10075:SkSL::RP::LValueSlice::~LValueSlice\28\29.1 +10076:SkSL::RP::LValueSlice::~LValueSlice\28\29 +10077:SkSL::RP::LValue::~LValue\28\29.1 +10078:SkSL::RP::ImmutableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10079:SkSL::RP::ImmutableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10080:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29.1 +10081:SkSL::RP::DynamicIndexLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10082:SkSL::RP::DynamicIndexLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10083:SkSL::RP::DynamicIndexLValue::isWritable\28\29\20const +10084:SkSL::RP::DynamicIndexLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10085:SkSL::ProgramVisitor::visitStatementPtr\28std::__2::unique_ptr>\20const&\29 +10086:SkSL::ProgramVisitor::visitExpressionPtr\28std::__2::unique_ptr>\20const&\29 +10087:SkSL::PrefixExpression::description\28SkSL::OperatorPrecedence\29\20const +10088:SkSL::PrefixExpression::clone\28SkSL::Position\29\20const +10089:SkSL::PostfixExpression::description\28SkSL::OperatorPrecedence\29\20const +10090:SkSL::PostfixExpression::clone\28SkSL::Position\29\20const +10091:SkSL::Poison::description\28SkSL::OperatorPrecedence\29\20const +10092:SkSL::Poison::clone\28SkSL::Position\29\20const +10093:SkSL::PipelineStage::Callbacks::getMainName\28\29 +10094:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29.1 +10095:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29 +10096:SkSL::Parser::Checkpoint::ForwardingErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +10097:SkSL::Nop::description\28\29\20const +10098:SkSL::MultiArgumentConstructor::~MultiArgumentConstructor\28\29 +10099:SkSL::ModifiersDeclaration::description\28\29\20const +10100:SkSL::MethodReference::description\28SkSL::OperatorPrecedence\29\20const +10101:SkSL::MethodReference::clone\28SkSL::Position\29\20const +10102:SkSL::MatrixType::slotCount\28\29\20const +10103:SkSL::MatrixType::rows\28\29\20const +10104:SkSL::MatrixType::isAllowedInES2\28\29\20const +10105:SkSL::LiteralType::minimumValue\28\29\20const +10106:SkSL::LiteralType::maximumValue\28\29\20const +10107:SkSL::Literal::getConstantValue\28int\29\20const +10108:SkSL::Literal::description\28SkSL::OperatorPrecedence\29\20const +10109:SkSL::Literal::compareConstant\28SkSL::Expression\20const&\29\20const +10110:SkSL::Literal::clone\28SkSL::Position\29\20const +10111:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_uintBitsToFloat\28double\2c\20double\2c\20double\29 +10112:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_trunc\28double\2c\20double\2c\20double\29 +10113:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tanh\28double\2c\20double\2c\20double\29 +10114:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tan\28double\2c\20double\2c\20double\29 +10115:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_step\28double\2c\20double\2c\20double\29 +10116:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sqrt\28double\2c\20double\2c\20double\29 +10117:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_smoothstep\28double\2c\20double\2c\20double\29 +10118:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sinh\28double\2c\20double\2c\20double\29 +10119:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sin\28double\2c\20double\2c\20double\29 +10120:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_saturate\28double\2c\20double\2c\20double\29 +10121:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_radians\28double\2c\20double\2c\20double\29 +10122:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_pow\28double\2c\20double\2c\20double\29 +10123:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mod\28double\2c\20double\2c\20double\29 +10124:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mix\28double\2c\20double\2c\20double\29 +10125:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_min\28double\2c\20double\2c\20double\29 +10126:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_max\28double\2c\20double\2c\20double\29 +10127:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_matrixCompMult\28double\2c\20double\2c\20double\29 +10128:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log\28double\2c\20double\2c\20double\29 +10129:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log2\28double\2c\20double\2c\20double\29 +10130:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_inversesqrt\28double\2c\20double\2c\20double\29 +10131:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_intBitsToFloat\28double\2c\20double\2c\20double\29 +10132:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fract\28double\2c\20double\2c\20double\29 +10133:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fma\28double\2c\20double\2c\20double\29 +10134:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floor\28double\2c\20double\2c\20double\29 +10135:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToUint\28double\2c\20double\2c\20double\29 +10136:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToInt\28double\2c\20double\2c\20double\29 +10137:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp\28double\2c\20double\2c\20double\29 +10138:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp2\28double\2c\20double\2c\20double\29 +10139:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_degrees\28double\2c\20double\2c\20double\29 +10140:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cosh\28double\2c\20double\2c\20double\29 +10141:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cos\28double\2c\20double\2c\20double\29 +10142:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_clamp\28double\2c\20double\2c\20double\29 +10143:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_ceil\28double\2c\20double\2c\20double\29 +10144:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atanh\28double\2c\20double\2c\20double\29 +10145:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan\28double\2c\20double\2c\20double\29 +10146:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan2\28double\2c\20double\2c\20double\29 +10147:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asinh\28double\2c\20double\2c\20double\29 +10148:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asin\28double\2c\20double\2c\20double\29 +10149:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acosh\28double\2c\20double\2c\20double\29 +10150:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acos\28double\2c\20double\2c\20double\29 +10151:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_abs\28double\2c\20double\2c\20double\29 +10152:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_notEqual\28double\2c\20double\29 +10153:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThan\28double\2c\20double\29 +10154:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThanEqual\28double\2c\20double\29 +10155:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThan\28double\2c\20double\29 +10156:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThanEqual\28double\2c\20double\29 +10157:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_equal\28double\2c\20double\29 +10158:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_any\28double\2c\20double\2c\20double\29 +10159:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_all\28double\2c\20double\2c\20double\29 +10160:SkSL::InterfaceBlock::~InterfaceBlock\28\29.1 +10161:SkSL::InterfaceBlock::description\28\29\20const +10162:SkSL::IndexExpression::~IndexExpression\28\29.1 +10163:SkSL::IndexExpression::~IndexExpression\28\29 +10164:SkSL::IndexExpression::description\28SkSL::OperatorPrecedence\29\20const +10165:SkSL::IndexExpression::clone\28SkSL::Position\29\20const +10166:SkSL::IfStatement::~IfStatement\28\29.1 +10167:SkSL::IfStatement::~IfStatement\28\29 +10168:SkSL::IfStatement::description\28\29\20const +10169:SkSL::GlobalVarDeclaration::description\28\29\20const +10170:SkSL::GenericType::slotType\28unsigned\20long\29\20const +10171:SkSL::GenericType::coercibleTypes\28\29\20const +10172:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29.1 +10173:SkSL::FunctionReference::description\28SkSL::OperatorPrecedence\29\20const +10174:SkSL::FunctionReference::clone\28SkSL::Position\29\20const +10175:SkSL::FunctionPrototype::description\28\29\20const +10176:SkSL::FunctionDefinition::description\28\29\20const +10177: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 +10178: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 +10179:SkSL::FunctionCall::description\28SkSL::OperatorPrecedence\29\20const +10180:SkSL::FunctionCall::clone\28SkSL::Position\29\20const +10181:SkSL::ForStatement::~ForStatement\28\29.1 +10182:SkSL::ForStatement::~ForStatement\28\29 +10183:SkSL::ForStatement::description\28\29\20const +10184:SkSL::FieldSymbol::description\28\29\20const +10185:SkSL::FieldAccess::clone\28SkSL::Position\29\20const +10186:SkSL::Extension::description\28\29\20const +10187:SkSL::ExtendedVariable::~ExtendedVariable\28\29.1 +10188:SkSL::ExtendedVariable::~ExtendedVariable\28\29 +10189:SkSL::ExtendedVariable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +10190:SkSL::ExtendedVariable::mangledName\28\29\20const +10191:SkSL::ExtendedVariable::layout\28\29\20const +10192:SkSL::ExtendedVariable::interfaceBlock\28\29\20const +10193:SkSL::ExtendedVariable::detachDeadInterfaceBlock\28\29 +10194:SkSL::ExpressionStatement::description\28\29\20const +10195:SkSL::Expression::getConstantValue\28int\29\20const +10196:SkSL::EmptyExpression::description\28SkSL::OperatorPrecedence\29\20const +10197:SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +10198:SkSL::DoStatement::description\28\29\20const +10199:SkSL::DiscardStatement::description\28\29\20const +10200:SkSL::DebugTracePriv::~DebugTracePriv\28\29.1 +10201:SkSL::DebugTracePriv::writeTrace\28SkWStream*\29\20const +10202:SkSL::DebugTracePriv::dump\28SkWStream*\29\20const +10203:SkSL::CountReturnsWithLimit::visitStatement\28SkSL::Statement\20const&\29 +10204:SkSL::ContinueStatement::description\28\29\20const +10205:SkSL::ConstructorStruct::clone\28SkSL::Position\29\20const +10206:SkSL::ConstructorSplat::getConstantValue\28int\29\20const +10207:SkSL::ConstructorSplat::clone\28SkSL::Position\29\20const +10208:SkSL::ConstructorScalarCast::clone\28SkSL::Position\29\20const +10209:SkSL::ConstructorMatrixResize::getConstantValue\28int\29\20const +10210:SkSL::ConstructorMatrixResize::clone\28SkSL::Position\29\20const +10211:SkSL::ConstructorDiagonalMatrix::getConstantValue\28int\29\20const +10212:SkSL::ConstructorDiagonalMatrix::clone\28SkSL::Position\29\20const +10213:SkSL::ConstructorCompoundCast::clone\28SkSL::Position\29\20const +10214:SkSL::ConstructorCompound::clone\28SkSL::Position\29\20const +10215:SkSL::ConstructorArrayCast::clone\28SkSL::Position\29\20const +10216:SkSL::ConstructorArray::clone\28SkSL::Position\29\20const +10217:SkSL::Compiler::CompilerErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +10218:SkSL::CodeGenerator::~CodeGenerator\28\29 +10219:SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +10220:SkSL::ChildCall::clone\28SkSL::Position\29\20const +10221:SkSL::BreakStatement::description\28\29\20const +10222:SkSL::Block::~Block\28\29.1 +10223:SkSL::Block::~Block\28\29 +10224:SkSL::Block::isEmpty\28\29\20const +10225:SkSL::Block::description\28\29\20const +10226:SkSL::BinaryExpression::~BinaryExpression\28\29.1 +10227:SkSL::BinaryExpression::~BinaryExpression\28\29 +10228:SkSL::BinaryExpression::description\28SkSL::OperatorPrecedence\29\20const +10229:SkSL::BinaryExpression::clone\28SkSL::Position\29\20const +10230:SkSL::ArrayType::slotType\28unsigned\20long\29\20const +10231:SkSL::ArrayType::slotCount\28\29\20const +10232:SkSL::ArrayType::isUnsizedArray\28\29\20const +10233:SkSL::ArrayType::isOrContainsUnsizedArray\28\29\20const +10234:SkSL::ArrayType::isOrContainsAtomic\28\29\20const +10235:SkSL::ArrayType::isBuiltin\28\29\20const +10236:SkSL::ArrayType::isAllowedInUniform\28SkSL::Position*\29\20const +10237:SkSL::AnyConstructor::getConstantValue\28int\29\20const +10238:SkSL::AnyConstructor::description\28SkSL::OperatorPrecedence\29\20const +10239:SkSL::AnyConstructor::compareConstant\28SkSL::Expression\20const&\29\20const +10240:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29::IsDynamicallyUniformExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +10241:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29::IsCompileTimeConstantVisitor::visitExpression\28SkSL::Expression\20const&\29 +10242:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29::HasSideEffectsVisitor::visitExpression\28SkSL::Expression\20const&\29 +10243:SkSL::Analysis::ContainsVariable\28SkSL::Expression\20const&\2c\20SkSL::Variable\20const&\29::ContainsVariableVisitor::visitExpression\28SkSL::Expression\20const&\29 +10244:SkSL::Analysis::ContainsRTAdjust\28SkSL::Expression\20const&\29::ContainsRTAdjustVisitor::visitExpression\28SkSL::Expression\20const&\29 +10245:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29.1 +10246:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29 +10247:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitStatement\28SkSL::Statement\20const&\29 +10248:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitExpression\28SkSL::Expression\20const&\29 +10249:SkSL::AliasType::textureAccess\28\29\20const +10250:SkSL::AliasType::slotType\28unsigned\20long\29\20const +10251:SkSL::AliasType::slotCount\28\29\20const +10252:SkSL::AliasType::rows\28\29\20const +10253:SkSL::AliasType::priority\28\29\20const +10254:SkSL::AliasType::isVector\28\29\20const +10255:SkSL::AliasType::isUnsizedArray\28\29\20const +10256:SkSL::AliasType::isStruct\28\29\20const +10257:SkSL::AliasType::isScalar\28\29\20const +10258:SkSL::AliasType::isMultisampled\28\29\20const +10259:SkSL::AliasType::isMatrix\28\29\20const +10260:SkSL::AliasType::isLiteral\28\29\20const +10261:SkSL::AliasType::isInterfaceBlock\28\29\20const +10262:SkSL::AliasType::isDepth\28\29\20const +10263:SkSL::AliasType::isArrayedTexture\28\29\20const +10264:SkSL::AliasType::isArray\28\29\20const +10265:SkSL::AliasType::dimensions\28\29\20const +10266:SkSL::AliasType::componentType\28\29\20const +10267:SkSL::AliasType::columns\28\29\20const +10268:SkSL::AliasType::coercibleTypes\28\29\20const +10269:SkRuntimeShader::~SkRuntimeShader\28\29.1 +10270:SkRuntimeShader::type\28\29\20const +10271:SkRuntimeShader::isOpaque\28\29\20const +10272:SkRuntimeShader::getTypeName\28\29\20const +10273:SkRuntimeShader::flatten\28SkWriteBuffer&\29\20const +10274:SkRuntimeShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10275:SkRuntimeEffect::~SkRuntimeEffect\28\29.1 +10276:SkRuntimeEffect::MakeFromSource\28SkString\2c\20SkRuntimeEffect::Options\20const&\2c\20SkSL::ProgramKind\29 +10277:SkRuntimeColorFilter::~SkRuntimeColorFilter\28\29.1 +10278:SkRuntimeColorFilter::~SkRuntimeColorFilter\28\29 +10279:SkRuntimeColorFilter::onIsAlphaUnchanged\28\29\20const +10280:SkRuntimeColorFilter::getTypeName\28\29\20const +10281:SkRuntimeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10282:SkRuntimeBlender::~SkRuntimeBlender\28\29.1 +10283:SkRuntimeBlender::~SkRuntimeBlender\28\29 +10284:SkRuntimeBlender::onAppendStages\28SkStageRec\20const&\29\20const +10285:SkRuntimeBlender::getTypeName\28\29\20const +10286:SkRgnClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10287:SkRgnClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10288:SkRgnClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10289:SkRgnClipBlitter::blitH\28int\2c\20int\2c\20int\29 +10290:SkRgnClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10291:SkRgnClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10292:SkRgnBuilder::~SkRgnBuilder\28\29.1 +10293:SkRgnBuilder::blitH\28int\2c\20int\2c\20int\29 +10294:SkResourceCache::SetTotalByteLimit\28unsigned\20long\29 +10295:SkResourceCache::GetTotalBytesUsed\28\29 +10296:SkResourceCache::GetTotalByteLimit\28\29 +10297: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 +10298: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 +10299: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 +10300:SkRefCntSet::~SkRefCntSet\28\29.1 +10301:SkRefCntSet::incPtr\28void*\29 +10302:SkRefCntSet::decPtr\28void*\29 +10303:SkRectClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10304:SkRectClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10305:SkRectClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10306:SkRectClipBlitter::blitH\28int\2c\20int\2c\20int\29 +10307:SkRectClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10308:SkRectClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10309:SkRecorder::~SkRecorder\28\29.1 +10310:SkRecorder::~SkRecorder\28\29 +10311:SkRecorder::willSave\28\29 +10312:SkRecorder::onResetClip\28\29 +10313:SkRecorder::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10314:SkRecorder::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10315:SkRecorder::onDrawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +10316:SkRecorder::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +10317:SkRecorder::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10318:SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10319:SkRecorder::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10320:SkRecorder::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10321:SkRecorder::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +10322:SkRecorder::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +10323:SkRecorder::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10324:SkRecorder::onDrawPaint\28SkPaint\20const&\29 +10325:SkRecorder::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10326:SkRecorder::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +10327:SkRecorder::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10328:SkRecorder::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +10329:SkRecorder::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10330:SkRecorder::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +10331:SkRecorder::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10332:SkRecorder::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10333:SkRecorder::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +10334:SkRecorder::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10335:SkRecorder::onDrawBehind\28SkPaint\20const&\29 +10336: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 +10337:SkRecorder::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +10338:SkRecorder::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +10339:SkRecorder::onDoSaveBehind\28SkRect\20const*\29 +10340:SkRecorder::onClipShader\28sk_sp\2c\20SkClipOp\29 +10341:SkRecorder::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10342:SkRecorder::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10343:SkRecorder::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10344:SkRecorder::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10345:SkRecorder::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +10346:SkRecorder::didTranslate\28float\2c\20float\29 +10347:SkRecorder::didSetM44\28SkM44\20const&\29 +10348:SkRecorder::didScale\28float\2c\20float\29 +10349:SkRecorder::didRestore\28\29 +10350:SkRecorder::didConcat44\28SkM44\20const&\29 +10351:SkRecordedDrawable::~SkRecordedDrawable\28\29.1 +10352:SkRecordedDrawable::~SkRecordedDrawable\28\29 +10353:SkRecordedDrawable::onMakePictureSnapshot\28\29 +10354:SkRecordedDrawable::onGetBounds\28\29 +10355:SkRecordedDrawable::onDraw\28SkCanvas*\29 +10356:SkRecordedDrawable::onApproximateBytesUsed\28\29 +10357:SkRecordedDrawable::getTypeName\28\29\20const +10358:SkRecordedDrawable::flatten\28SkWriteBuffer&\29\20const +10359:SkRecord::~SkRecord\28\29.1 +10360:SkRecord::~SkRecord\28\29 +10361:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29.1 +10362:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29 +10363:SkRasterPipelineSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +10364:SkRasterPipelineSpriteBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10365:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29.1 +10366:SkRasterPipelineBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10367:SkRasterPipelineBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10368:SkRasterPipelineBlitter::blitH\28int\2c\20int\2c\20int\29 +10369:SkRasterPipelineBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10370:SkRasterPipelineBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10371:SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10372: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 +10373: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 +10374: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 +10375: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 +10376:SkRadialGradient::getTypeName\28\29\20const +10377:SkRadialGradient::flatten\28SkWriteBuffer&\29\20const +10378:SkRadialGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10379:SkRadialGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +10380:SkRTree::~SkRTree\28\29.1 +10381:SkRTree::~SkRTree\28\29 +10382:SkRTree::search\28SkRect\20const&\2c\20std::__2::vector>*\29\20const +10383:SkRTree::insert\28SkRect\20const*\2c\20int\29 +10384:SkRTree::bytesUsed\28\29\20const +10385:SkPtrSet::~SkPtrSet\28\29 +10386:SkPngNormalDecoder::~SkPngNormalDecoder\28\29 +10387:SkPngNormalDecoder::setRange\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +10388:SkPngNormalDecoder::decode\28int*\29 +10389:SkPngNormalDecoder::decodeAllRows\28void*\2c\20unsigned\20long\2c\20int*\29 +10390:SkPngNormalDecoder::RowCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +10391:SkPngNormalDecoder::AllRowsCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +10392:SkPngInterlacedDecoder::~SkPngInterlacedDecoder\28\29.1 +10393:SkPngInterlacedDecoder::~SkPngInterlacedDecoder\28\29 +10394:SkPngInterlacedDecoder::setRange\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +10395:SkPngInterlacedDecoder::decode\28int*\29 +10396:SkPngInterlacedDecoder::decodeAllRows\28void*\2c\20unsigned\20long\2c\20int*\29 +10397:SkPngInterlacedDecoder::InterlacedRowCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +10398:SkPngEncoderImpl::~SkPngEncoderImpl\28\29.1 +10399:SkPngEncoderImpl::~SkPngEncoderImpl\28\29 +10400:SkPngEncoderImpl::onEncodeRows\28int\29 +10401:SkPngDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +10402:SkPngCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10403:SkPngCodec::onRewind\28\29 +10404:SkPngCodec::onIncrementalDecode\28int*\29 +10405:SkPngCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +10406:SkPngCodec::getSampler\28bool\29 +10407:SkPngCodec::createColorTable\28SkImageInfo\20const&\29 +10408:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_2::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10409:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_1::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10410:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_0::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10411:SkPixelRef::~SkPixelRef\28\29.1 +10412:SkPictureShader::~SkPictureShader\28\29.1 +10413:SkPictureShader::~SkPictureShader\28\29 +10414:SkPictureShader::type\28\29\20const +10415:SkPictureShader::getTypeName\28\29\20const +10416:SkPictureShader::flatten\28SkWriteBuffer&\29\20const +10417:SkPictureShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10418:SkPictureRecorder*\20emscripten::internal::operator_new\28\29 +10419:SkPictureRecord::~SkPictureRecord\28\29.1 +10420:SkPictureRecord::willSave\28\29 +10421:SkPictureRecord::willRestore\28\29 +10422:SkPictureRecord::onResetClip\28\29 +10423:SkPictureRecord::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10424:SkPictureRecord::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10425:SkPictureRecord::onDrawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +10426:SkPictureRecord::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +10427:SkPictureRecord::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10428:SkPictureRecord::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10429:SkPictureRecord::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10430:SkPictureRecord::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10431:SkPictureRecord::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +10432:SkPictureRecord::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +10433:SkPictureRecord::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10434:SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +10435:SkPictureRecord::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10436:SkPictureRecord::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10437:SkPictureRecord::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +10438:SkPictureRecord::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10439:SkPictureRecord::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10440:SkPictureRecord::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10441:SkPictureRecord::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +10442:SkPictureRecord::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10443:SkPictureRecord::onDrawBehind\28SkPaint\20const&\29 +10444: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 +10445:SkPictureRecord::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +10446:SkPictureRecord::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +10447:SkPictureRecord::onDoSaveBehind\28SkRect\20const*\29 +10448:SkPictureRecord::onClipShader\28sk_sp\2c\20SkClipOp\29 +10449:SkPictureRecord::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10450:SkPictureRecord::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10451:SkPictureRecord::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10452:SkPictureRecord::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10453:SkPictureRecord::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +10454:SkPictureRecord::didTranslate\28float\2c\20float\29 +10455:SkPictureRecord::didSetM44\28SkM44\20const&\29 +10456:SkPictureRecord::didScale\28float\2c\20float\29 +10457:SkPictureRecord::didConcat44\28SkM44\20const&\29 +10458:SkPictureData::serialize\28SkWStream*\2c\20SkSerialProcs\20const&\2c\20SkRefCntSet*\2c\20bool\29\20const::DevNull::write\28void\20const*\2c\20unsigned\20long\29 +10459:SkPerlinNoiseShader::~SkPerlinNoiseShader\28\29.1 +10460:SkPerlinNoiseShader::~SkPerlinNoiseShader\28\29 +10461:SkPerlinNoiseShader::type\28\29\20const +10462:SkPerlinNoiseShader::getTypeName\28\29\20const +10463:SkPerlinNoiseShader::flatten\28SkWriteBuffer&\29\20const +10464:SkPerlinNoiseShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10465:SkPath::setIsVolatile\28bool\29 +10466:SkPath::setFillType\28SkPathFillType\29 +10467:SkPath::isVolatile\28\29\20const +10468:SkPath::getFillType\28\29\20const +10469:SkPath2DPathEffectImpl::~SkPath2DPathEffectImpl\28\29.1 +10470:SkPath2DPathEffectImpl::~SkPath2DPathEffectImpl\28\29 +10471:SkPath2DPathEffectImpl::next\28SkPoint\20const&\2c\20int\2c\20int\2c\20SkPath*\29\20const +10472:SkPath2DPathEffectImpl::getTypeName\28\29\20const +10473:SkPath2DPathEffectImpl::getFactory\28\29\20const +10474:SkPath2DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +10475:SkPath2DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +10476:SkPath1DPathEffectImpl::~SkPath1DPathEffectImpl\28\29.1 +10477:SkPath1DPathEffectImpl::~SkPath1DPathEffectImpl\28\29 +10478:SkPath1DPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10479:SkPath1DPathEffectImpl::next\28SkPath*\2c\20float\2c\20SkPathMeasure&\29\20const +10480:SkPath1DPathEffectImpl::getTypeName\28\29\20const +10481:SkPath1DPathEffectImpl::getFactory\28\29\20const +10482:SkPath1DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +10483:SkPath1DPathEffectImpl::begin\28float\29\20const +10484:SkPath1DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +10485:SkPath1DPathEffect::Make\28SkPath\20const&\2c\20float\2c\20float\2c\20SkPath1DPathEffect::Style\29 +10486:SkPath*\20emscripten::internal::operator_new\28\29 +10487:SkPairPathEffect::~SkPairPathEffect\28\29.1 +10488:SkPaint::setDither\28bool\29 +10489:SkPaint::setAntiAlias\28bool\29 +10490:SkPaint::getStrokeMiter\28\29\20const +10491:SkPaint::getStrokeJoin\28\29\20const +10492:SkPaint::getStrokeCap\28\29\20const +10493:SkPaint*\20emscripten::internal::operator_new\28\29 +10494:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29.1 +10495:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29 +10496:SkOTUtils::LocalizedStrings_SingleName::next\28SkTypeface::LocalizedString*\29 +10497:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29.1 +10498:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29 +10499:SkOTUtils::LocalizedStrings_NameTable::next\28SkTypeface::LocalizedString*\29 +10500:SkNoPixelsDevice::~SkNoPixelsDevice\28\29.1 +10501:SkNoPixelsDevice::~SkNoPixelsDevice\28\29 +10502:SkNoPixelsDevice::replaceClip\28SkIRect\20const&\29 +10503:SkNoPixelsDevice::pushClipStack\28\29 +10504:SkNoPixelsDevice::popClipStack\28\29 +10505:SkNoPixelsDevice::onClipShader\28sk_sp\29 +10506:SkNoPixelsDevice::isClipWideOpen\28\29\20const +10507:SkNoPixelsDevice::isClipRect\28\29\20const +10508:SkNoPixelsDevice::isClipEmpty\28\29\20const +10509:SkNoPixelsDevice::isClipAntiAliased\28\29\20const +10510:SkNoPixelsDevice::devClipBounds\28\29\20const +10511:SkNoPixelsDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10512:SkNoPixelsDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +10513:SkNoPixelsDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +10514:SkNoPixelsDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +10515:SkNoPixelsDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +10516:SkNoDrawCanvas::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10517: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 +10518:SkMipmap::~SkMipmap\28\29.1 +10519:SkMipmap::~SkMipmap\28\29 +10520:SkMipmap::onDataChange\28void*\2c\20void*\29 +10521:SkMemoryStream::~SkMemoryStream\28\29.1 +10522:SkMemoryStream::~SkMemoryStream\28\29 +10523:SkMemoryStream::setMemory\28void\20const*\2c\20unsigned\20long\2c\20bool\29 +10524:SkMemoryStream::seek\28unsigned\20long\29 +10525:SkMemoryStream::rewind\28\29 +10526:SkMemoryStream::read\28void*\2c\20unsigned\20long\29 +10527:SkMemoryStream::peek\28void*\2c\20unsigned\20long\29\20const +10528:SkMemoryStream::onFork\28\29\20const +10529:SkMemoryStream::onDuplicate\28\29\20const +10530:SkMemoryStream::move\28long\29 +10531:SkMemoryStream::isAtEnd\28\29\20const +10532:SkMemoryStream::getMemoryBase\28\29 +10533:SkMemoryStream::getLength\28\29\20const +10534:SkMemoryStream::getData\28\29\20const +10535:SkMatrixColorFilter::onIsAlphaUnchanged\28\29\20const +10536:SkMatrixColorFilter::onAsAColorMatrix\28float*\29\20const +10537:SkMatrixColorFilter::getTypeName\28\29\20const +10538:SkMatrixColorFilter::flatten\28SkWriteBuffer&\29\20const +10539:SkMatrixColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10540:SkMatrix::Trans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10541:SkMatrix::Trans_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10542:SkMatrix::Scale_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10543:SkMatrix::Scale_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10544:SkMatrix::ScaleTrans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10545:SkMatrix::Poly4Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +10546:SkMatrix::Poly3Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +10547:SkMatrix::Poly2Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +10548:SkMatrix::Persp_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10549:SkMatrix::Persp_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10550:SkMatrix::Identity_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +10551:SkMatrix::Identity_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10552:SkMatrix::Affine_vpts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +10553:SkMaskSwizzler::onSetSampleX\28int\29 +10554:SkMaskFilterBase::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +10555:SkMaskFilterBase::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +10556:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29.1 +10557:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29 +10558: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 +10559: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 +10560:SkLumaColorFilter::Make\28\29 +10561:SkLocalMatrixShader::~SkLocalMatrixShader\28\29.1 +10562:SkLocalMatrixShader::~SkLocalMatrixShader\28\29 +10563:SkLocalMatrixShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +10564:SkLocalMatrixShader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +10565:SkLocalMatrixShader::makeAsALocalMatrixShader\28SkMatrix*\29\20const +10566:SkLocalMatrixShader::isOpaque\28\29\20const +10567:SkLocalMatrixShader::isConstant\28\29\20const +10568:SkLocalMatrixShader::getTypeName\28\29\20const +10569:SkLocalMatrixShader::flatten\28SkWriteBuffer&\29\20const +10570:SkLocalMatrixShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10571:SkLocalMatrixShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10572:SkLinearGradient::getTypeName\28\29\20const +10573:SkLinearGradient::flatten\28SkWriteBuffer&\29\20const +10574:SkLinearGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10575:SkLine2DPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10576:SkLine2DPathEffectImpl::nextSpan\28int\2c\20int\2c\20int\2c\20SkPath*\29\20const +10577:SkLine2DPathEffectImpl::getTypeName\28\29\20const +10578:SkLine2DPathEffectImpl::getFactory\28\29\20const +10579:SkLine2DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +10580:SkLine2DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +10581:SkJpegMetadataDecoderImpl::~SkJpegMetadataDecoderImpl\28\29.1 +10582:SkJpegMetadataDecoderImpl::~SkJpegMetadataDecoderImpl\28\29 +10583:SkJpegMetadataDecoderImpl::getISOGainmapMetadata\28bool\29\20const +10584:SkJpegMetadataDecoderImpl::getICCProfileData\28bool\29\20const +10585:SkJpegMetadataDecoderImpl::getExifMetadata\28bool\29\20const +10586:SkJpegMemorySourceMgr::skipInputBytes\28unsigned\20long\2c\20unsigned\20char\20const*&\2c\20unsigned\20long&\29 +10587:SkJpegMemorySourceMgr::initSource\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +10588:SkJpegDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +10589:SkJpegCodec::~SkJpegCodec\28\29.1 +10590:SkJpegCodec::~SkJpegCodec\28\29 +10591:SkJpegCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10592:SkJpegCodec::onSkipScanlines\28int\29 +10593:SkJpegCodec::onRewind\28\29 +10594:SkJpegCodec::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +10595:SkJpegCodec::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +10596:SkJpegCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +10597:SkJpegCodec::onGetScaledDimensions\28float\29\20const +10598:SkJpegCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +10599:SkJpegCodec::onDimensionsSupported\28SkISize\20const&\29 +10600:SkJpegCodec::getSampler\28bool\29 +10601:SkJpegCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +10602:SkJpegBufferedSourceMgr::~SkJpegBufferedSourceMgr\28\29.1 +10603:SkJpegBufferedSourceMgr::~SkJpegBufferedSourceMgr\28\29 +10604:SkJpegBufferedSourceMgr::skipInputBytes\28unsigned\20long\2c\20unsigned\20char\20const*&\2c\20unsigned\20long&\29 +10605:SkJpegBufferedSourceMgr::initSource\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +10606:SkJpegBufferedSourceMgr::fillInputBuffer\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +10607:SkImage_Raster::~SkImage_Raster\28\29.1 +10608:SkImage_Raster::~SkImage_Raster\28\29 +10609:SkImage_Raster::onReinterpretColorSpace\28sk_sp\29\20const +10610:SkImage_Raster::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +10611:SkImage_Raster::onPeekPixels\28SkPixmap*\29\20const +10612:SkImage_Raster::onMakeWithMipmaps\28sk_sp\29\20const +10613:SkImage_Raster::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +10614:SkImage_Raster::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10615:SkImage_Raster::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +10616:SkImage_Raster::onHasMipmaps\28\29\20const +10617:SkImage_Raster::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +10618:SkImage_Raster::notifyAddedToRasterCache\28\29\20const +10619:SkImage_Raster::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +10620:SkImage_LazyTexture::readPixelsProxy\28GrDirectContext*\2c\20SkPixmap\20const&\29\20const +10621:SkImage_LazyTexture::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10622:SkImage_Lazy::~SkImage_Lazy\28\29 +10623:SkImage_Lazy::onReinterpretColorSpace\28sk_sp\29\20const +10624:SkImage_Lazy::onRefEncoded\28\29\20const +10625:SkImage_Lazy::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +10626:SkImage_Lazy::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +10627:SkImage_Lazy::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10628:SkImage_Lazy::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +10629:SkImage_Lazy::onIsProtected\28\29\20const +10630:SkImage_Lazy::isValid\28GrRecordingContext*\29\20const +10631:SkImage_Lazy::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +10632:SkImage_GaneshBase::~SkImage_GaneshBase\28\29 +10633:SkImage_GaneshBase::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +10634:SkImage_GaneshBase::onMakeSurface\28skgpu::graphite::Recorder*\2c\20SkImageInfo\20const&\29\20const +10635:SkImage_GaneshBase::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +10636:SkImage_GaneshBase::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10637:SkImage_GaneshBase::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +10638:SkImage_GaneshBase::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +10639:SkImage_GaneshBase::isValid\28GrRecordingContext*\29\20const +10640:SkImage_GaneshBase::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +10641:SkImage_GaneshBase::directContext\28\29\20const +10642:SkImage_Ganesh::~SkImage_Ganesh\28\29.1 +10643:SkImage_Ganesh::textureSize\28\29\20const +10644:SkImage_Ganesh::onReinterpretColorSpace\28sk_sp\29\20const +10645:SkImage_Ganesh::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +10646:SkImage_Ganesh::onIsProtected\28\29\20const +10647:SkImage_Ganesh::onHasMipmaps\28\29\20const +10648: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 +10649: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 +10650:SkImage_Ganesh::generatingSurfaceIsDeleted\28\29 +10651:SkImage_Ganesh::flush\28GrDirectContext*\2c\20GrFlushInfo\20const&\29\20const +10652:SkImage_Ganesh::asView\28GrRecordingContext*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29\20const +10653:SkImage_Ganesh::asFragmentProcessor\28GrRecordingContext*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29\20const +10654: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 +10655:SkImage_Base::notifyAddedToRasterCache\28\29\20const +10656:SkImage_Base::makeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +10657:SkImage_Base::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +10658:SkImage_Base::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +10659:SkImage_Base::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +10660:SkImage_Base::makeColorSpace\28skgpu::graphite::Recorder*\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +10661:SkImage_Base::makeColorSpace\28GrDirectContext*\2c\20sk_sp\29\20const +10662:SkImage_Base::isTextureBacked\28\29\20const +10663:SkImage_Base::isLazyGenerated\28\29\20const +10664:SkImageShader::~SkImageShader\28\29.1 +10665:SkImageShader::~SkImageShader\28\29 +10666:SkImageShader::type\28\29\20const +10667:SkImageShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +10668:SkImageShader::isOpaque\28\29\20const +10669:SkImageShader::getTypeName\28\29\20const +10670:SkImageShader::flatten\28SkWriteBuffer&\29\20const +10671:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10672:SkImageGenerator::~SkImageGenerator\28\29 +10673:SkImageFilters::Compose\28sk_sp\2c\20sk_sp\29 +10674:SkImage::~SkImage\28\29 +10675:SkIcoDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +10676:SkIcoCodec::~SkIcoCodec\28\29.1 +10677:SkIcoCodec::~SkIcoCodec\28\29 +10678:SkIcoCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10679:SkIcoCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10680:SkIcoCodec::onSkipScanlines\28int\29 +10681:SkIcoCodec::onIncrementalDecode\28int*\29 +10682:SkIcoCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +10683:SkIcoCodec::onGetScanlineOrder\28\29\20const +10684:SkIcoCodec::onGetScaledDimensions\28float\29\20const +10685:SkIcoCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +10686:SkIcoCodec::onDimensionsSupported\28SkISize\20const&\29 +10687:SkIcoCodec::getSampler\28bool\29 +10688:SkIcoCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +10689:SkGradientBaseShader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +10690:SkGradientBaseShader::isOpaque\28\29\20const +10691:SkGradientBaseShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10692:SkGifDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +10693:SkGaussianColorFilter::getTypeName\28\29\20const +10694:SkGaussianColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10695:SkGammaColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +10696:SkGammaColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +10697:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29.1 +10698:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29 +10699:SkFontStyleSet_Custom::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +10700:SkFontScanner_FreeType::~SkFontScanner_FreeType\28\29.1 +10701:SkFontScanner_FreeType::~SkFontScanner_FreeType\28\29 +10702:SkFontScanner_FreeType::scanFile\28SkStreamAsset*\2c\20int*\29\20const +10703:SkFontScanner_FreeType::scanFace\28SkStreamAsset*\2c\20int\2c\20int*\29\20const +10704:SkFontMgr_Custom::~SkFontMgr_Custom\28\29.1 +10705:SkFontMgr_Custom::~SkFontMgr_Custom\28\29 +10706:SkFontMgr_Custom::onMatchFamily\28char\20const*\29\20const +10707:SkFontMgr_Custom::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +10708:SkFontMgr_Custom::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +10709:SkFontMgr_Custom::onMakeFromStreamArgs\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29\20const +10710:SkFontMgr_Custom::onMakeFromFile\28char\20const*\2c\20int\29\20const +10711:SkFontMgr_Custom::onMakeFromData\28sk_sp\2c\20int\29\20const +10712:SkFontMgr_Custom::onLegacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +10713:SkFontMgr_Custom::onGetFamilyName\28int\2c\20SkString*\29\20const +10714:SkFont::setScaleX\28float\29 +10715:SkFont::setEmbeddedBitmaps\28bool\29 +10716:SkFont::isEmbolden\28\29\20const +10717:SkFont::getSkewX\28\29\20const +10718:SkFont::getSize\28\29\20const +10719:SkFont::getScaleX\28\29\20const +10720:SkFont*\20emscripten::internal::operator_new\2c\20float\2c\20float\2c\20float>\28sk_sp&&\2c\20float&&\2c\20float&&\2c\20float&&\29 +10721:SkFont*\20emscripten::internal::operator_new\2c\20float>\28sk_sp&&\2c\20float&&\29 +10722:SkFont*\20emscripten::internal::operator_new>\28sk_sp&&\29 +10723:SkFont*\20emscripten::internal::operator_new\28\29 +10724:SkFILEStream::~SkFILEStream\28\29.1 +10725:SkFILEStream::~SkFILEStream\28\29 +10726:SkFILEStream::seek\28unsigned\20long\29 +10727:SkFILEStream::rewind\28\29 +10728:SkFILEStream::read\28void*\2c\20unsigned\20long\29 +10729:SkFILEStream::onFork\28\29\20const +10730:SkFILEStream::onDuplicate\28\29\20const +10731:SkFILEStream::move\28long\29 +10732:SkFILEStream::isAtEnd\28\29\20const +10733:SkFILEStream::getPosition\28\29\20const +10734:SkFILEStream::getLength\28\29\20const +10735:SkEncoder::~SkEncoder\28\29 +10736:SkEmptyShader::getTypeName\28\29\20const +10737:SkEmptyPicture::~SkEmptyPicture\28\29 +10738:SkEmptyPicture::cullRect\28\29\20const +10739:SkEmptyFontMgr::onMatchFamily\28char\20const*\29\20const +10740:SkEdgeBuilder::~SkEdgeBuilder\28\29 +10741:SkEdgeBuilder::build\28SkPath\20const&\2c\20SkIRect\20const*\2c\20bool\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +10742:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29.1 +10743:SkDrawable::onMakePictureSnapshot\28\29 +10744:SkDrawBase::~SkDrawBase\28\29 +10745:SkDraw::paintMasks\28SkZip\2c\20SkPaint\20const&\29\20const +10746:SkDiscretePathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10747:SkDiscretePathEffectImpl::getTypeName\28\29\20const +10748:SkDiscretePathEffectImpl::getFactory\28\29\20const +10749:SkDiscretePathEffectImpl::computeFastBounds\28SkRect*\29\20const +10750:SkDiscretePathEffectImpl::CreateProc\28SkReadBuffer&\29 +10751:SkDevice::~SkDevice\28\29 +10752:SkDevice::strikeDeviceInfo\28\29\20const +10753:SkDevice::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +10754:SkDevice::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10755:SkDevice::drawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20sk_sp\2c\20SkPaint\20const&\29 +10756:SkDevice::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +10757:SkDevice::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10758:SkDevice::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +10759:SkDevice::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10760:SkDevice::drawCoverageMask\28SkSpecialImage\20const*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +10761:SkDevice::drawBlurredRRect\28SkRRect\20const&\2c\20SkPaint\20const&\2c\20float\29 +10762:SkDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +10763:SkDevice::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +10764:SkDevice::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +10765:SkDashImpl::~SkDashImpl\28\29.1 +10766:SkDashImpl::~SkDashImpl\28\29 +10767:SkDashImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10768:SkDashImpl::onAsPoints\28SkPathEffectBase::PointData*\2c\20SkPath\20const&\2c\20SkStrokeRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\29\20const +10769:SkDashImpl::onAsADash\28SkPathEffect::DashInfo*\29\20const +10770:SkDashImpl::getTypeName\28\29\20const +10771:SkDashImpl::flatten\28SkWriteBuffer&\29\20const +10772:SkCustomTypefaceBuilder::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +10773:SkCornerPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10774:SkCornerPathEffectImpl::getTypeName\28\29\20const +10775:SkCornerPathEffectImpl::getFactory\28\29\20const +10776:SkCornerPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +10777:SkCornerPathEffectImpl::CreateProc\28SkReadBuffer&\29 +10778:SkCornerPathEffect::Make\28float\29 +10779:SkContourMeasureIter*\20emscripten::internal::operator_new\28SkPath\20const&\2c\20bool&&\2c\20float&&\29 +10780:SkContourMeasure::~SkContourMeasure\28\29.1 +10781:SkContourMeasure::~SkContourMeasure\28\29 +10782:SkContourMeasure::isClosed\28\29\20const +10783:SkConicalGradient::getTypeName\28\29\20const +10784:SkConicalGradient::flatten\28SkWriteBuffer&\29\20const +10785:SkConicalGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10786:SkConicalGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +10787:SkComposePathEffect::~SkComposePathEffect\28\29 +10788:SkComposePathEffect::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +10789:SkComposePathEffect::getTypeName\28\29\20const +10790:SkComposePathEffect::computeFastBounds\28SkRect*\29\20const +10791:SkComposeColorFilter::onIsAlphaUnchanged\28\29\20const +10792:SkComposeColorFilter::getTypeName\28\29\20const +10793:SkComposeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10794:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29.1 +10795:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29 +10796:SkColorSpaceXformColorFilter::getTypeName\28\29\20const +10797:SkColorSpaceXformColorFilter::flatten\28SkWriteBuffer&\29\20const +10798:SkColorSpaceXformColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10799:SkColorShader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +10800:SkColorShader::isOpaque\28\29\20const +10801:SkColorShader::getTypeName\28\29\20const +10802:SkColorShader::flatten\28SkWriteBuffer&\29\20const +10803:SkColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10804:SkColorPalette::~SkColorPalette\28\29.1 +10805:SkColorPalette::~SkColorPalette\28\29 +10806:SkColorFilters::SRGBToLinearGamma\28\29 +10807:SkColorFilters::LinearToSRGBGamma\28\29 +10808:SkColorFilters::Lerp\28float\2c\20sk_sp\2c\20sk_sp\29 +10809:SkColorFilters::Compose\28sk_sp\20const&\2c\20sk_sp\29 +10810:SkColorFilterShader::~SkColorFilterShader\28\29.1 +10811:SkColorFilterShader::~SkColorFilterShader\28\29 +10812:SkColorFilterShader::isOpaque\28\29\20const +10813:SkColorFilterShader::getTypeName\28\29\20const +10814:SkColorFilterShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10815:SkColorFilterBase::onFilterColor4f\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkColorSpace*\29\20const +10816:SkColor4Shader::~SkColor4Shader\28\29.1 +10817:SkColor4Shader::~SkColor4Shader\28\29 +10818:SkColor4Shader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +10819:SkColor4Shader::isOpaque\28\29\20const +10820:SkColor4Shader::getTypeName\28\29\20const +10821:SkColor4Shader::flatten\28SkWriteBuffer&\29\20const +10822:SkColor4Shader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10823:SkCodecImageGenerator::~SkCodecImageGenerator\28\29.1 +10824:SkCodecImageGenerator::~SkCodecImageGenerator\28\29 +10825:SkCodecImageGenerator::onRefEncodedData\28\29 +10826:SkCodecImageGenerator::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +10827:SkCodecImageGenerator::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +10828:SkCodecImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +10829:SkCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10830:SkCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10831:SkCodec::onOutputScanline\28int\29\20const +10832:SkCodec::onGetScaledDimensions\28float\29\20const +10833:SkCodec::getEncodedData\28\29\20const +10834:SkCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +10835:SkCanvas::rotate\28float\2c\20float\2c\20float\29 +10836:SkCanvas::recordingContext\28\29\20const +10837:SkCanvas::recorder\28\29\20const +10838:SkCanvas::onPeekPixels\28SkPixmap*\29 +10839:SkCanvas::onNewSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +10840:SkCanvas::onImageInfo\28\29\20const +10841:SkCanvas::onGetProps\28SkSurfaceProps*\2c\20bool\29\20const +10842:SkCanvas::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10843:SkCanvas::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10844:SkCanvas::onDrawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +10845:SkCanvas::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +10846:SkCanvas::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10847:SkCanvas::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10848:SkCanvas::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10849:SkCanvas::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10850:SkCanvas::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +10851:SkCanvas::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +10852:SkCanvas::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10853:SkCanvas::onDrawPaint\28SkPaint\20const&\29 +10854:SkCanvas::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10855:SkCanvas::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +10856:SkCanvas::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10857:SkCanvas::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +10858:SkCanvas::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10859:SkCanvas::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +10860:SkCanvas::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10861:SkCanvas::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10862:SkCanvas::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +10863:SkCanvas::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10864:SkCanvas::onDrawBehind\28SkPaint\20const&\29 +10865: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 +10866:SkCanvas::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +10867:SkCanvas::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +10868:SkCanvas::onDiscard\28\29 +10869:SkCanvas::onConvertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +10870:SkCanvas::onAccessTopLayerPixels\28SkPixmap*\29 +10871:SkCanvas::isClipRect\28\29\20const +10872:SkCanvas::isClipEmpty\28\29\20const +10873:SkCanvas::getSaveCount\28\29\20const +10874:SkCanvas::getBaseLayerSize\28\29\20const +10875:SkCanvas::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10876:SkCanvas::drawPicture\28sk_sp\20const&\29 +10877:SkCanvas::drawCircle\28float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10878:SkCanvas*\20emscripten::internal::operator_new\28float&&\2c\20float&&\29 +10879:SkCanvas*\20emscripten::internal::operator_new\28\29 +10880:SkCachedData::~SkCachedData\28\29.1 +10881:SkCTMShader::~SkCTMShader\28\29 +10882:SkCTMShader::isConstant\28\29\20const +10883:SkCTMShader::getTypeName\28\29\20const +10884:SkCTMShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10885:SkCTMShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10886:SkBreakIterator_icu::~SkBreakIterator_icu\28\29.1 +10887:SkBreakIterator_icu::~SkBreakIterator_icu\28\29 +10888:SkBreakIterator_icu::status\28\29 +10889:SkBreakIterator_icu::setText\28char\20const*\2c\20int\29 +10890:SkBreakIterator_icu::setText\28char16_t\20const*\2c\20int\29 +10891:SkBreakIterator_icu::next\28\29 +10892:SkBreakIterator_icu::isDone\28\29 +10893:SkBreakIterator_icu::first\28\29 +10894:SkBreakIterator_icu::current\28\29 +10895:SkBmpStandardCodec::~SkBmpStandardCodec\28\29.1 +10896:SkBmpStandardCodec::~SkBmpStandardCodec\28\29 +10897:SkBmpStandardCodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10898:SkBmpStandardCodec::onInIco\28\29\20const +10899:SkBmpStandardCodec::getSampler\28bool\29 +10900:SkBmpStandardCodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10901:SkBmpRLESampler::onSetSampleX\28int\29 +10902:SkBmpRLESampler::fillWidth\28\29\20const +10903:SkBmpRLECodec::~SkBmpRLECodec\28\29.1 +10904:SkBmpRLECodec::~SkBmpRLECodec\28\29 +10905:SkBmpRLECodec::skipRows\28int\29 +10906:SkBmpRLECodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10907:SkBmpRLECodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +10908:SkBmpRLECodec::getSampler\28bool\29 +10909:SkBmpRLECodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10910:SkBmpMaskCodec::~SkBmpMaskCodec\28\29.1 +10911:SkBmpMaskCodec::~SkBmpMaskCodec\28\29 +10912:SkBmpMaskCodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +10913:SkBmpMaskCodec::getSampler\28bool\29 +10914:SkBmpMaskCodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +10915:SkBmpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +10916:SkBmpCodec::~SkBmpCodec\28\29 +10917:SkBmpCodec::skipRows\28int\29 +10918:SkBmpCodec::onSkipScanlines\28int\29 +10919:SkBmpCodec::onRewind\28\29 +10920:SkBmpCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +10921:SkBmpCodec::onGetScanlineOrder\28\29\20const +10922:SkBlurMaskFilterImpl::getTypeName\28\29\20const +10923:SkBlurMaskFilterImpl::flatten\28SkWriteBuffer&\29\20const +10924:SkBlurMaskFilterImpl::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +10925:SkBlurMaskFilterImpl::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +10926:SkBlurMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +10927:SkBlurMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +10928:SkBlurMaskFilterImpl::asImageFilter\28SkMatrix\20const&\29\20const +10929:SkBlurMaskFilterImpl::asABlur\28SkMaskFilterBase::BlurRec*\29\20const +10930:SkBlockMemoryStream::~SkBlockMemoryStream\28\29.1 +10931:SkBlockMemoryStream::~SkBlockMemoryStream\28\29 +10932:SkBlockMemoryStream::seek\28unsigned\20long\29 +10933:SkBlockMemoryStream::rewind\28\29 +10934:SkBlockMemoryStream::read\28void*\2c\20unsigned\20long\29 +10935:SkBlockMemoryStream::peek\28void*\2c\20unsigned\20long\29\20const +10936:SkBlockMemoryStream::onFork\28\29\20const +10937:SkBlockMemoryStream::onDuplicate\28\29\20const +10938:SkBlockMemoryStream::move\28long\29 +10939:SkBlockMemoryStream::isAtEnd\28\29\20const +10940:SkBlockMemoryStream::getMemoryBase\28\29 +10941:SkBlockMemoryRefCnt::~SkBlockMemoryRefCnt\28\29.1 +10942:SkBlockMemoryRefCnt::~SkBlockMemoryRefCnt\28\29 +10943:SkBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10944:SkBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10945:SkBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10946:SkBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10947:SkBlitter::allocBlitMemory\28unsigned\20long\29 +10948:SkBlenderBase::asBlendMode\28\29\20const +10949:SkBlendShader::getTypeName\28\29\20const +10950:SkBlendShader::flatten\28SkWriteBuffer&\29\20const +10951:SkBlendShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10952:SkBlendModeColorFilter::onIsAlphaUnchanged\28\29\20const +10953:SkBlendModeColorFilter::onAsAColorMode\28unsigned\20int*\2c\20SkBlendMode*\29\20const +10954:SkBlendModeColorFilter::getTypeName\28\29\20const +10955:SkBlendModeColorFilter::flatten\28SkWriteBuffer&\29\20const +10956:SkBlendModeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +10957:SkBlendModeBlender::onAppendStages\28SkStageRec\20const&\29\20const +10958:SkBlendModeBlender::getTypeName\28\29\20const +10959:SkBlendModeBlender::flatten\28SkWriteBuffer&\29\20const +10960:SkBlendModeBlender::asBlendMode\28\29\20const +10961:SkBitmapDevice::~SkBitmapDevice\28\29.1 +10962:SkBitmapDevice::~SkBitmapDevice\28\29 +10963:SkBitmapDevice::snapSpecial\28SkIRect\20const&\2c\20bool\29 +10964:SkBitmapDevice::setImmutable\28\29 +10965:SkBitmapDevice::replaceClip\28SkIRect\20const&\29 +10966:SkBitmapDevice::pushClipStack\28\29 +10967:SkBitmapDevice::popClipStack\28\29 +10968:SkBitmapDevice::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +10969:SkBitmapDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +10970:SkBitmapDevice::onPeekPixels\28SkPixmap*\29 +10971:SkBitmapDevice::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +10972:SkBitmapDevice::onClipShader\28sk_sp\29 +10973:SkBitmapDevice::onAccessPixels\28SkPixmap*\29 +10974:SkBitmapDevice::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +10975:SkBitmapDevice::makeSpecial\28SkImage\20const*\29 +10976:SkBitmapDevice::makeSpecial\28SkBitmap\20const&\29 +10977:SkBitmapDevice::isClipWideOpen\28\29\20const +10978:SkBitmapDevice::isClipRect\28\29\20const +10979:SkBitmapDevice::isClipEmpty\28\29\20const +10980:SkBitmapDevice::isClipAntiAliased\28\29\20const +10981:SkBitmapDevice::getRasterHandle\28\29\20const +10982:SkBitmapDevice::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +10983:SkBitmapDevice::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +10984:SkBitmapDevice::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10985:SkBitmapDevice::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10986:SkBitmapDevice::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10987:SkBitmapDevice::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +10988:SkBitmapDevice::drawPaint\28SkPaint\20const&\29 +10989:SkBitmapDevice::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10990:SkBitmapDevice::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +10991:SkBitmapDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +10992:SkBitmapDevice::devClipBounds\28\29\20const +10993:SkBitmapDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +10994:SkBitmapDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10995:SkBitmapDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +10996:SkBitmapDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +10997:SkBitmapDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +10998:SkBitmapDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +10999:SkBitmapCache::Rec::~Rec\28\29.1 +11000:SkBitmapCache::Rec::~Rec\28\29 +11001:SkBitmapCache::Rec::postAddInstall\28void*\29 +11002:SkBitmapCache::Rec::getCategory\28\29\20const +11003:SkBitmapCache::Rec::canBePurged\28\29 +11004:SkBitmapCache::Rec::bytesUsed\28\29\20const +11005:SkBitmapCache::Rec::ReleaseProc\28void*\2c\20void*\29 +11006:SkBitmapCache::Rec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +11007:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29.1 +11008:SkBinaryWriteBuffer::write\28SkM44\20const&\29 +11009:SkBinaryWriteBuffer::writeTypeface\28SkTypeface*\29 +11010:SkBinaryWriteBuffer::writeString\28std::__2::basic_string_view>\29 +11011:SkBinaryWriteBuffer::writeStream\28SkStream*\2c\20unsigned\20long\29 +11012:SkBinaryWriteBuffer::writeScalar\28float\29 +11013:SkBinaryWriteBuffer::writeSampling\28SkSamplingOptions\20const&\29 +11014:SkBinaryWriteBuffer::writeRegion\28SkRegion\20const&\29 +11015:SkBinaryWriteBuffer::writeRect\28SkRect\20const&\29 +11016:SkBinaryWriteBuffer::writePoint\28SkPoint\20const&\29 +11017:SkBinaryWriteBuffer::writePointArray\28SkPoint\20const*\2c\20unsigned\20int\29 +11018:SkBinaryWriteBuffer::writePoint3\28SkPoint3\20const&\29 +11019:SkBinaryWriteBuffer::writePath\28SkPath\20const&\29 +11020:SkBinaryWriteBuffer::writePaint\28SkPaint\20const&\29 +11021:SkBinaryWriteBuffer::writePad32\28void\20const*\2c\20unsigned\20long\29 +11022:SkBinaryWriteBuffer::writeMatrix\28SkMatrix\20const&\29 +11023:SkBinaryWriteBuffer::writeImage\28SkImage\20const*\29 +11024:SkBinaryWriteBuffer::writeColor4fArray\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20unsigned\20int\29 +11025:SkBigPicture::~SkBigPicture\28\29.1 +11026:SkBigPicture::~SkBigPicture\28\29 +11027:SkBigPicture::playback\28SkCanvas*\2c\20SkPicture::AbortCallback*\29\20const +11028:SkBigPicture::cullRect\28\29\20const +11029:SkBigPicture::approximateOpCount\28bool\29\20const +11030:SkBigPicture::approximateBytesUsed\28\29\20const +11031:SkBidiICUFactory::errorName\28UErrorCode\29\20const +11032:SkBidiICUFactory::bidi_setPara\28UBiDi*\2c\20char16_t\20const*\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20UErrorCode*\29\20const +11033:SkBidiICUFactory::bidi_reorderVisual\28unsigned\20char\20const*\2c\20int\2c\20int*\29\20const +11034:SkBidiICUFactory::bidi_openSized\28int\2c\20int\2c\20UErrorCode*\29\20const +11035:SkBidiICUFactory::bidi_getLevelAt\28UBiDi\20const*\2c\20int\29\20const +11036:SkBidiICUFactory::bidi_getLength\28UBiDi\20const*\29\20const +11037:SkBidiICUFactory::bidi_getDirection\28UBiDi\20const*\29\20const +11038:SkBidiICUFactory::bidi_close_callback\28\29\20const +11039:SkBezierCubic::Subdivide\28double\20const*\2c\20double\2c\20double*\29 +11040:SkBasicEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +11041:SkBasicEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +11042:SkBasicEdgeBuilder::addQuad\28SkPoint\20const*\29 +11043:SkBasicEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +11044:SkBasicEdgeBuilder::addLine\28SkPoint\20const*\29 +11045:SkBasicEdgeBuilder::addCubic\28SkPoint\20const*\29 +11046:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29 +11047:SkBBoxHierarchy::insert\28SkRect\20const*\2c\20SkBBoxHierarchy::Metadata\20const*\2c\20int\29 +11048:SkArenaAlloc::SkipPod\28char*\29 +11049:SkArenaAlloc::NextBlock\28char*\29 +11050:SkAnimatedImage::~SkAnimatedImage\28\29.1 +11051:SkAnimatedImage::~SkAnimatedImage\28\29 +11052:SkAnimatedImage::reset\28\29 +11053:SkAnimatedImage::onGetBounds\28\29 +11054:SkAnimatedImage::onDraw\28SkCanvas*\29 +11055:SkAnimatedImage::getRepetitionCount\28\29\20const +11056:SkAnimatedImage::getCurrentFrame\28\29 +11057:SkAnimatedImage::currentFrameDuration\28\29 +11058:SkAndroidCodecAdapter::onGetSupportedSubset\28SkIRect*\29\20const +11059:SkAndroidCodecAdapter::onGetSampledDimensions\28int\29\20const +11060:SkAndroidCodecAdapter::onGetAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +11061:SkAnalyticEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +11062:SkAnalyticEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +11063:SkAnalyticEdgeBuilder::addQuad\28SkPoint\20const*\29 +11064:SkAnalyticEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +11065:SkAnalyticEdgeBuilder::addLine\28SkPoint\20const*\29 +11066:SkAnalyticEdgeBuilder::addCubic\28SkPoint\20const*\29 +11067:SkAAClipBlitter::~SkAAClipBlitter\28\29.1 +11068:SkAAClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11069:SkAAClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11070:SkAAClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11071:SkAAClipBlitter::blitH\28int\2c\20int\2c\20int\29 +11072:SkAAClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +11073:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_1::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +11074:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_0::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +11075:SkAAClip::Builder::Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11076:SkAAClip::Builder::Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11077:SkAAClip::Builder::Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11078:SkAAClip::Builder::Blitter::blitH\28int\2c\20int\2c\20int\29 +11079:SkAAClip::Builder::Blitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +11080:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29.1 +11081:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29 +11082:SkA8_Coverage_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11083:SkA8_Coverage_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11084:SkA8_Coverage_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11085:SkA8_Coverage_Blitter::blitH\28int\2c\20int\2c\20int\29 +11086:SkA8_Coverage_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +11087:SkA8_Blitter::~SkA8_Blitter\28\29.1 +11088:SkA8_Blitter::~SkA8_Blitter\28\29 +11089:SkA8_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11090:SkA8_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11091:SkA8_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11092:SkA8_Blitter::blitH\28int\2c\20int\2c\20int\29 +11093:SkA8_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +11094:SkA8Blitter_Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +11095:Sk2DPathEffect::nextSpan\28int\2c\20int\2c\20int\2c\20SkPath*\29\20const +11096:Sk2DPathEffect::flatten\28SkWriteBuffer&\29\20const +11097:SimpleVFilter16i_C +11098:SimpleVFilter16_C +11099:SimpleTextStyle*\20emscripten::internal::raw_constructor\28\29 +11100:SimpleTextStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleTextStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle\20const&\29 +11101:SimpleStrutStyle*\20emscripten::internal::raw_constructor\28\29 +11102:SimpleStrutStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleStrutStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle\20const&\29 +11103:SimpleParagraphStyle*\20emscripten::internal::raw_constructor\28\29 +11104:SimpleHFilter16i_C +11105:SimpleHFilter16_C +11106:SimpleFontStyle*\20emscripten::internal::raw_constructor\28\29 +11107:ShaderPDXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11108:ShaderPDXferProcessor::name\28\29\20const +11109:ShaderPDXferProcessor::makeProgramImpl\28\29\20const +11110:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11111:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11112:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11113:RuntimeEffectUniform*\20emscripten::internal::raw_constructor\28\29 +11114:RuntimeEffectRPCallbacks::toLinearSrgb\28void\20const*\29 +11115:RuntimeEffectRPCallbacks::fromLinearSrgb\28void\20const*\29 +11116:RuntimeEffectRPCallbacks::appendShader\28int\29 +11117:RuntimeEffectRPCallbacks::appendColorFilter\28int\29 +11118:RuntimeEffectRPCallbacks::appendBlender\28int\29 +11119:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29 +11120:RunBasedAdditiveBlitter::getRealBlitter\28bool\29 +11121:RunBasedAdditiveBlitter::flush_if_y_changed\28int\2c\20int\29 +11122:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11123:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11124:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11125:Round_Up_To_Grid +11126:Round_To_Half_Grid +11127:Round_To_Grid +11128:Round_To_Double_Grid +11129:Round_Super_45 +11130:Round_Super +11131:Round_None +11132:Round_Down_To_Grid +11133:RoundJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11134:RoundCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +11135:Reset +11136:Read_CVT_Stretched +11137:Read_CVT +11138:RD4_C +11139:Project_y +11140:Project +11141:ProcessRows +11142:PredictorAdd9_C +11143:PredictorAdd8_C +11144:PredictorAdd7_C +11145:PredictorAdd6_C +11146:PredictorAdd5_C +11147:PredictorAdd4_C +11148:PredictorAdd3_C +11149:PredictorAdd2_C +11150:PredictorAdd1_C +11151:PredictorAdd13_C +11152:PredictorAdd12_C +11153:PredictorAdd11_C +11154:PredictorAdd10_C +11155:PredictorAdd0_C +11156:PrePostInverseBlitterProc\28SkBlitter*\2c\20int\2c\20bool\29 +11157:PorterDuffXferProcessor::onHasSecondaryOutput\28\29\20const +11158:PorterDuffXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11159:PorterDuffXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11160:PorterDuffXferProcessor::name\28\29\20const +11161:PorterDuffXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11162:PorterDuffXferProcessor::makeProgramImpl\28\29\20const +11163:ParseVP8X +11164:PackRGB_C +11165:PDLCDXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +11166:PDLCDXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11167:PDLCDXferProcessor::name\28\29\20const +11168:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +11169:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11170:PDLCDXferProcessor::makeProgramImpl\28\29\20const +11171:OT::match_glyph\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11172:OT::match_coverage\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11173:OT::match_class_cached\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11174:OT::match_class_cached2\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11175:OT::match_class_cached1\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11176:OT::match_class\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11177: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 +11178: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 +11179:OT::cff1::accelerator_t::gname_t::cmp\28void\20const*\2c\20void\20const*\29 +11180:OT::Layout::Common::RangeRecord::cmp_range\28void\20const*\2c\20void\20const*\29 +11181: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 +11182: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 +11183:OT::CmapSubtableFormat4::accelerator_t::get_glyph_func\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +11184:Move_CVT_Stretched +11185:Move_CVT +11186:MiterJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11187:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29.1 +11188:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29 +11189:MaskAdditiveBlitter::getWidth\28\29 +11190:MaskAdditiveBlitter::getRealBlitter\28bool\29 +11191:MaskAdditiveBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11192:MaskAdditiveBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11193:MaskAdditiveBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +11194:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11195:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11196:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11197:MapAlpha_C +11198:MapARGB_C +11199:MakeRenderTarget\28sk_sp\2c\20int\2c\20int\29 +11200:MakeRenderTarget\28sk_sp\2c\20SimpleImageInfo\29 +11201:MakePathFromVerbsPointsWeights\28unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +11202:MakePathFromSVGString\28std::__2::basic_string\2c\20std::__2::allocator>\29 +11203:MakePathFromOp\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\29 +11204:MakePathFromInterpolation\28SkPath\20const&\2c\20SkPath\20const&\2c\20float\29 +11205:MakePathFromCmds\28unsigned\20long\2c\20int\29 +11206:MakeOnScreenGLSurface\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\29 +11207:MakeImageFromGenerator\28SimpleImageInfo\2c\20emscripten::val\29 +11208:MakeGrContext\28\29 +11209:MakeAsWinding\28SkPath\20const&\29 +11210:LD4_C +11211:JpegDecoderMgr::returnFailure\28char\20const*\2c\20SkCodec::Result\29 +11212:JpegDecoderMgr::init\28\29 +11213:JpegDecoderMgr::SourceMgr::SkipInputData\28jpeg_decompress_struct*\2c\20long\29 +11214:JpegDecoderMgr::SourceMgr::InitSource\28jpeg_decompress_struct*\29 +11215:JpegDecoderMgr::SourceMgr::FillInputBuffer\28jpeg_decompress_struct*\29 +11216:JpegDecoderMgr::JpegDecoderMgr\28SkStream*\29 +11217:IsValidSimpleFormat +11218:IsValidExtendedFormat +11219:InverseBlitter::blitH\28int\2c\20int\2c\20int\29 +11220:Init +11221:HorizontalUnfilter_C +11222:HorizontalFilter_C +11223:Horish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +11224:Horish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +11225:HasAlpha8b_C +11226:HasAlpha32b_C +11227:HU4_C +11228:HLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +11229:HLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +11230:HFilter8i_C +11231:HFilter8_C +11232:HFilter16i_C +11233:HFilter16_C +11234:HE8uv_C +11235:HE4_C +11236:HE16_C +11237:HD4_C +11238:GradientUnfilter_C +11239:GradientFilter_C +11240:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11241:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11242:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const +11243:GrYUVtoRGBEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11244:GrYUVtoRGBEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11245:GrYUVtoRGBEffect::name\28\29\20const +11246:GrYUVtoRGBEffect::clone\28\29\20const +11247:GrXferProcessor::ProgramImpl::emitWriteSwizzle\28GrGLSLXPFragmentBuilder*\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20char\20const*\29\20const +11248:GrXferProcessor::ProgramImpl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11249: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 +11250:GrWritePixelsTask::~GrWritePixelsTask\28\29.1 +11251:GrWritePixelsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +11252:GrWritePixelsTask::onExecute\28GrOpFlushState*\29 +11253:GrWritePixelsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11254:GrWaitRenderTask::~GrWaitRenderTask\28\29.1 +11255:GrWaitRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +11256:GrWaitRenderTask::onExecute\28GrOpFlushState*\29 +11257:GrWaitRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11258:GrTriangulator::~GrTriangulator\28\29 +11259:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29.1 +11260:GrTransferFromRenderTask::onExecute\28GrOpFlushState*\29 +11261:GrTransferFromRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11262:GrThreadSafeCache::Trampoline::~Trampoline\28\29.1 +11263:GrThreadSafeCache::Trampoline::~Trampoline\28\29 +11264:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29.1 +11265:GrTextureResolveRenderTask::onExecute\28GrOpFlushState*\29 +11266:GrTextureResolveRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11267:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +11268:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +11269:GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +11270:GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +11271:GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +11272:GrTextureProxy::~GrTextureProxy\28\29.2 +11273:GrTextureProxy::~GrTextureProxy\28\29.1 +11274:GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +11275:GrTextureProxy::instantiate\28GrResourceProvider*\29 +11276:GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +11277:GrTextureProxy::callbackDesc\28\29\20const +11278:GrTextureEffect::~GrTextureEffect\28\29.1 +11279:GrTextureEffect::~GrTextureEffect\28\29 +11280:GrTextureEffect::onMakeProgramImpl\28\29\20const +11281:GrTextureEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11282:GrTextureEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11283:GrTextureEffect::name\28\29\20const +11284:GrTextureEffect::clone\28\29\20const +11285:GrTextureEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11286:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11287:GrTexture::onGpuMemorySize\28\29\20const +11288:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29.1 +11289:GrTDeferredProxyUploader>::freeData\28\29 +11290:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29.1 +11291:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29 +11292:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::freeData\28\29 +11293:GrSurfaceProxy::getUniqueKey\28\29\20const +11294:GrSurface::~GrSurface\28\29 +11295:GrSurface::getResourceType\28\29\20const +11296:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29.1 +11297:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29 +11298:GrStrokeTessellationShader::name\28\29\20const +11299:GrStrokeTessellationShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11300:GrStrokeTessellationShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11301:GrStrokeTessellationShader::Impl::~Impl\28\29.1 +11302:GrStrokeTessellationShader::Impl::~Impl\28\29 +11303:GrStrokeTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11304:GrStrokeTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11305:GrSkSLFP::~GrSkSLFP\28\29.1 +11306:GrSkSLFP::~GrSkSLFP\28\29 +11307:GrSkSLFP::onMakeProgramImpl\28\29\20const +11308:GrSkSLFP::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11309:GrSkSLFP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11310:GrSkSLFP::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11311:GrSkSLFP::clone\28\29\20const +11312:GrSkSLFP::Impl::~Impl\28\29.1 +11313:GrSkSLFP::Impl::~Impl\28\29 +11314:GrSkSLFP::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11315:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +11316:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +11317:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +11318: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 +11319:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::getMangledName\28char\20const*\29 +11320:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +11321:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +11322:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +11323:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareFunction\28char\20const*\29 +11324:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11325:GrSimpleMesh*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29::'lambda'\28char*\29::__invoke\28char*\29 +11326:GrRingBuffer::FinishSubmit\28void*\29 +11327:GrResourceCache::CompareTimestamp\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29 +11328:GrRenderTask::~GrRenderTask\28\29 +11329:GrRenderTask::disown\28GrDrawingManager*\29 +11330:GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +11331:GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +11332:GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +11333:GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +11334:GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +11335:GrRenderTargetProxy::callbackDesc\28\29\20const +11336:GrRecordingContext::~GrRecordingContext\28\29.1 +11337:GrRecordingContext::abandoned\28\29 +11338:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29.1 +11339:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29 +11340:GrRRectShadowGeoProc::onTextureSampler\28int\29\20const +11341:GrRRectShadowGeoProc::name\28\29\20const +11342:GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11343:GrRRectShadowGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11344:GrQuadEffect::name\28\29\20const +11345:GrQuadEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11346:GrQuadEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11347:GrQuadEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11348:GrQuadEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11349:GrPorterDuffXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11350:GrPorterDuffXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11351:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29.1 +11352:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29 +11353:GrPerlinNoise2Effect::onMakeProgramImpl\28\29\20const +11354:GrPerlinNoise2Effect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11355:GrPerlinNoise2Effect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11356:GrPerlinNoise2Effect::name\28\29\20const +11357:GrPerlinNoise2Effect::clone\28\29\20const +11358:GrPerlinNoise2Effect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11359:GrPerlinNoise2Effect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11360:GrPathTessellationShader::Impl::~Impl\28\29 +11361:GrPathTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11362:GrPathTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11363:GrOpsRenderPass::~GrOpsRenderPass\28\29 +11364:GrOpsRenderPass::onExecuteDrawable\28std::__2::unique_ptr>\29 +11365:GrOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11366:GrOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11367:GrOpFlushState::~GrOpFlushState\28\29.1 +11368:GrOpFlushState::~GrOpFlushState\28\29 +11369:GrOpFlushState::writeView\28\29\20const +11370:GrOpFlushState::usesMSAASurface\28\29\20const +11371:GrOpFlushState::tokenTracker\28\29 +11372:GrOpFlushState::threadSafeCache\28\29\20const +11373:GrOpFlushState::strikeCache\28\29\20const +11374:GrOpFlushState::smallPathAtlasManager\28\29\20const +11375:GrOpFlushState::sampledProxyArray\28\29 +11376:GrOpFlushState::rtProxy\28\29\20const +11377:GrOpFlushState::resourceProvider\28\29\20const +11378:GrOpFlushState::renderPassBarriers\28\29\20const +11379:GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +11380:GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +11381:GrOpFlushState::putBackIndirectDraws\28int\29 +11382:GrOpFlushState::putBackIndices\28int\29 +11383:GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +11384:GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +11385:GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +11386:GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +11387:GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +11388:GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +11389:GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +11390:GrOpFlushState::dstProxyView\28\29\20const +11391:GrOpFlushState::colorLoadOp\28\29\20const +11392:GrOpFlushState::atlasManager\28\29\20const +11393:GrOpFlushState::appliedClip\28\29\20const +11394:GrOpFlushState::addInlineUpload\28std::__2::function&\29>&&\29 +11395:GrOp::~GrOp\28\29 +11396:GrOnFlushCallbackObject::postFlush\28skgpu::AtlasToken\29 +11397:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11398:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11399:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +11400:GrModulateAtlasCoverageEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11401:GrModulateAtlasCoverageEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11402:GrModulateAtlasCoverageEffect::name\28\29\20const +11403:GrModulateAtlasCoverageEffect::clone\28\29\20const +11404:GrMeshDrawOp::onPrepare\28GrOpFlushState*\29 +11405:GrMeshDrawOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11406:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11407:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11408:GrMatrixEffect::onMakeProgramImpl\28\29\20const +11409:GrMatrixEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11410:GrMatrixEffect::name\28\29\20const +11411:GrMatrixEffect::clone\28\29\20const +11412:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29.1 +11413:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29 +11414:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::$_0::__invoke\28void\20const*\2c\20void*\29 +11415:GrImageContext::~GrImageContext\28\29.1 +11416:GrImageContext::~GrImageContext\28\29 +11417:GrHardClip::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +11418:GrGpuResource::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +11419:GrGpuBuffer::~GrGpuBuffer\28\29 +11420:GrGpuBuffer::unref\28\29\20const +11421:GrGpuBuffer::getResourceType\28\29\20const +11422:GrGpuBuffer::computeScratchKey\28skgpu::ScratchKey*\29\20const +11423:GrGeometryProcessor::onTextureSampler\28int\29\20const +11424:GrGeometryProcessor::ProgramImpl::~ProgramImpl\28\29 +11425:GrGLVaryingHandler::~GrGLVaryingHandler\28\29 +11426:GrGLUniformHandler::~GrGLUniformHandler\28\29.1 +11427:GrGLUniformHandler::~GrGLUniformHandler\28\29 +11428:GrGLUniformHandler::samplerVariable\28GrResourceHandle\29\20const +11429:GrGLUniformHandler::samplerSwizzle\28GrResourceHandle\29\20const +11430:GrGLUniformHandler::internalAddUniformArray\28GrProcessor\20const*\2c\20unsigned\20int\2c\20SkSLType\2c\20char\20const*\2c\20bool\2c\20int\2c\20char\20const**\29 +11431:GrGLUniformHandler::getUniformCStr\28GrResourceHandle\29\20const +11432:GrGLUniformHandler::appendUniformDecls\28GrShaderFlags\2c\20SkString*\29\20const +11433:GrGLUniformHandler::addSampler\28GrBackendFormat\20const&\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20GrShaderCaps\20const*\29 +11434:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +11435:GrGLTextureRenderTarget::onSetLabel\28\29 +11436:GrGLTextureRenderTarget::onRelease\28\29 +11437:GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +11438:GrGLTextureRenderTarget::onAbandon\28\29 +11439:GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +11440:GrGLTextureRenderTarget::backendFormat\28\29\20const +11441:GrGLTexture::~GrGLTexture\28\29.1 +11442:GrGLTexture::~GrGLTexture\28\29 +11443:GrGLTexture::textureParamsModified\28\29 +11444:GrGLTexture::onStealBackendTexture\28GrBackendTexture*\2c\20std::__2::function*\29 +11445:GrGLTexture::getBackendTexture\28\29\20const +11446:GrGLSemaphore::~GrGLSemaphore\28\29.1 +11447:GrGLSemaphore::~GrGLSemaphore\28\29 +11448:GrGLSemaphore::setIsOwned\28\29 +11449:GrGLSemaphore::backendSemaphore\28\29\20const +11450:GrGLSLVertexBuilder::~GrGLSLVertexBuilder\28\29 +11451:GrGLSLVertexBuilder::onFinalize\28\29 +11452:GrGLSLUniformHandler::inputSamplerSwizzle\28GrResourceHandle\29\20const +11453:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +11454:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +11455:GrGLSLFragmentShaderBuilder::onFinalize\28\29 +11456:GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +11457:GrGLSLFragmentShaderBuilder::forceHighPrecision\28\29 +11458:GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +11459:GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +11460:GrGLRenderTarget::~GrGLRenderTarget\28\29 +11461:GrGLRenderTarget::onGpuMemorySize\28\29\20const +11462:GrGLRenderTarget::getBackendRenderTarget\28\29\20const +11463:GrGLRenderTarget::completeStencilAttachment\28GrAttachment*\2c\20bool\29 +11464:GrGLRenderTarget::canAttemptStencilAttachment\28bool\29\20const +11465:GrGLRenderTarget::backendFormat\28\29\20const +11466:GrGLRenderTarget::alwaysClearStencil\28\29\20const +11467:GrGLProgramDataManager::~GrGLProgramDataManager\28\29.1 +11468:GrGLProgramDataManager::~GrGLProgramDataManager\28\29 +11469:GrGLProgramDataManager::setMatrix4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11470:GrGLProgramDataManager::setMatrix4f\28GrResourceHandle\2c\20float\20const*\29\20const +11471:GrGLProgramDataManager::setMatrix3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11472:GrGLProgramDataManager::setMatrix3f\28GrResourceHandle\2c\20float\20const*\29\20const +11473:GrGLProgramDataManager::setMatrix2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11474:GrGLProgramDataManager::setMatrix2f\28GrResourceHandle\2c\20float\20const*\29\20const +11475:GrGLProgramDataManager::set4iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11476:GrGLProgramDataManager::set4i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\2c\20int\29\20const +11477:GrGLProgramDataManager::set4f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\2c\20float\29\20const +11478:GrGLProgramDataManager::set3iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11479:GrGLProgramDataManager::set3i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\29\20const +11480:GrGLProgramDataManager::set3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11481:GrGLProgramDataManager::set3f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\29\20const +11482:GrGLProgramDataManager::set2iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11483:GrGLProgramDataManager::set2i\28GrResourceHandle\2c\20int\2c\20int\29\20const +11484:GrGLProgramDataManager::set2f\28GrResourceHandle\2c\20float\2c\20float\29\20const +11485:GrGLProgramDataManager::set1iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11486:GrGLProgramDataManager::set1i\28GrResourceHandle\2c\20int\29\20const +11487:GrGLProgramDataManager::set1fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11488:GrGLProgramDataManager::set1f\28GrResourceHandle\2c\20float\29\20const +11489:GrGLProgramBuilder::~GrGLProgramBuilder\28\29.1 +11490:GrGLProgramBuilder::varyingHandler\28\29 +11491:GrGLProgramBuilder::caps\28\29\20const +11492:GrGLProgram::~GrGLProgram\28\29.1 +11493:GrGLOpsRenderPass::~GrGLOpsRenderPass\28\29 +11494:GrGLOpsRenderPass::onSetScissorRect\28SkIRect\20const&\29 +11495:GrGLOpsRenderPass::onEnd\28\29 +11496:GrGLOpsRenderPass::onDraw\28int\2c\20int\29 +11497:GrGLOpsRenderPass::onDrawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +11498:GrGLOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11499:GrGLOpsRenderPass::onDrawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +11500:GrGLOpsRenderPass::onDrawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +11501:GrGLOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11502:GrGLOpsRenderPass::onClear\28GrScissorState\20const&\2c\20std::__2::array\29 +11503:GrGLOpsRenderPass::onClearStencilClip\28GrScissorState\20const&\2c\20bool\29 +11504:GrGLOpsRenderPass::onBindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +11505:GrGLOpsRenderPass::onBindPipeline\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +11506:GrGLOpsRenderPass::onBindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +11507:GrGLOpsRenderPass::onBegin\28\29 +11508:GrGLOpsRenderPass::inlineUpload\28GrOpFlushState*\2c\20std::__2::function&\29>&\29 +11509:GrGLInterface::~GrGLInterface\28\29.1 +11510:GrGLInterface::~GrGLInterface\28\29 +11511:GrGLGpu::~GrGLGpu\28\29.1 +11512:GrGLGpu::xferBarrier\28GrRenderTarget*\2c\20GrXferBarrierType\29 +11513:GrGLGpu::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +11514:GrGLGpu::willExecute\28\29 +11515:GrGLGpu::waitSemaphore\28GrSemaphore*\29 +11516:GrGLGpu::submit\28GrOpsRenderPass*\29 +11517:GrGLGpu::stagingBufferManager\28\29 +11518:GrGLGpu::refPipelineBuilder\28\29 +11519:GrGLGpu::prepareTextureForCrossContextUsage\28GrTexture*\29 +11520:GrGLGpu::precompileShader\28SkData\20const&\2c\20SkData\20const&\29 +11521:GrGLGpu::pipelineBuilder\28\29 +11522:GrGLGpu::onWritePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +11523:GrGLGpu::onWrapRenderableBackendTexture\28GrBackendTexture\20const&\2c\20int\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +11524:GrGLGpu::onWrapCompressedBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +11525:GrGLGpu::onWrapBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\2c\20GrIOType\29 +11526:GrGLGpu::onWrapBackendRenderTarget\28GrBackendRenderTarget\20const&\29 +11527:GrGLGpu::onUpdateCompressedBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20void\20const*\2c\20unsigned\20long\29 +11528:GrGLGpu::onTransferPixelsTo\28GrTexture*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +11529:GrGLGpu::onTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\29 +11530:GrGLGpu::onTransferFromBufferToBuffer\28sk_sp\2c\20unsigned\20long\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +11531:GrGLGpu::onSubmitToGpu\28GrSyncCpu\29 +11532:GrGLGpu::onResolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +11533:GrGLGpu::onResetTextureBindings\28\29 +11534:GrGLGpu::onResetContext\28unsigned\20int\29 +11535:GrGLGpu::onRegenerateMipMapLevels\28GrTexture*\29 +11536:GrGLGpu::onReadPixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20unsigned\20long\29 +11537: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 +11538:GrGLGpu::onDumpJSON\28SkJSONWriter*\29\20const +11539: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 +11540:GrGLGpu::onCreateCompressedTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20void\20const*\2c\20unsigned\20long\29 +11541:GrGLGpu::onCreateCompressedBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\29 +11542:GrGLGpu::onCreateBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +11543:GrGLGpu::onCreateBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +11544:GrGLGpu::onCopySurface\28GrSurface*\2c\20SkIRect\20const&\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +11545:GrGLGpu::onClearBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20std::__2::array\29 +11546:GrGLGpu::makeStencilAttachment\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\29 +11547:GrGLGpu::makeSemaphore\28bool\29 +11548:GrGLGpu::makeMSAAAttachment\28SkISize\2c\20GrBackendFormat\20const&\2c\20int\2c\20skgpu::Protected\2c\20GrMemoryless\29 +11549:GrGLGpu::insertSemaphore\28GrSemaphore*\29 +11550:GrGLGpu::getPreferredStencilFormat\28GrBackendFormat\20const&\29 +11551:GrGLGpu::finishOutstandingGpuWork\28\29 +11552:GrGLGpu::disconnect\28GrGpu::DisconnectType\29 +11553:GrGLGpu::deleteBackendTexture\28GrBackendTexture\20const&\29 +11554:GrGLGpu::compile\28GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\29 +11555:GrGLGpu::checkFinishProcs\28\29 +11556:GrGLGpu::addFinishedProc\28void\20\28*\29\28void*\29\2c\20void*\29 +11557:GrGLGpu::ProgramCache::~ProgramCache\28\29.1 +11558:GrGLGpu::ProgramCache::~ProgramCache\28\29 +11559: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 +11560: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 +11561: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 +11562:GrGLFunction::GrGLFunction\28void\20\28*\29\28float\29\29::'lambda'\28void\20const*\2c\20float\29::__invoke\28void\20const*\2c\20float\29 +11563: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 +11564:GrGLFunction::GrGLFunction\28void\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +11565: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 +11566:GrGLFunction::GrGLFunction\28unsigned\20int\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +11567:GrGLCaps::~GrGLCaps\28\29.1 +11568:GrGLCaps::surfaceSupportsReadPixels\28GrSurface\20const*\29\20const +11569:GrGLCaps::supportedWritePixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +11570:GrGLCaps::onSurfaceSupportsWritePixels\28GrSurface\20const*\29\20const +11571:GrGLCaps::onSupportsDynamicMSAA\28GrRenderTargetProxy\20const*\29\20const +11572:GrGLCaps::onSupportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +11573:GrGLCaps::onIsWindowRectanglesSupportedForRT\28GrBackendRenderTarget\20const&\29\20const +11574:GrGLCaps::onGetReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +11575:GrGLCaps::onGetDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\29\20const +11576:GrGLCaps::onGetDefaultBackendFormat\28GrColorType\29\20const +11577:GrGLCaps::onDumpJSON\28SkJSONWriter*\29\20const +11578:GrGLCaps::onCanCopySurface\28GrSurfaceProxy\20const*\2c\20SkIRect\20const&\2c\20GrSurfaceProxy\20const*\2c\20SkIRect\20const&\29\20const +11579:GrGLCaps::onAreColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +11580:GrGLCaps::onApplyOptionsOverrides\28GrContextOptions\20const&\29 +11581:GrGLCaps::maxRenderTargetSampleCount\28GrBackendFormat\20const&\29\20const +11582:GrGLCaps::makeDesc\28GrRenderTarget*\2c\20GrProgramInfo\20const&\2c\20GrCaps::ProgramDescOverrideFlags\29\20const +11583:GrGLCaps::isFormatTexturable\28GrBackendFormat\20const&\2c\20GrTextureType\29\20const +11584:GrGLCaps::isFormatSRGB\28GrBackendFormat\20const&\29\20const +11585:GrGLCaps::isFormatRenderable\28GrBackendFormat\20const&\2c\20int\29\20const +11586:GrGLCaps::isFormatCopyable\28GrBackendFormat\20const&\29\20const +11587:GrGLCaps::isFormatAsColorTypeRenderable\28GrColorType\2c\20GrBackendFormat\20const&\2c\20int\29\20const +11588:GrGLCaps::getWriteSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +11589:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrBackendFormat\20const&\29\20const +11590:GrGLCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +11591:GrGLCaps::getBackendFormatFromCompressionType\28SkTextureCompressionType\29\20const +11592:GrGLCaps::computeFormatKey\28GrBackendFormat\20const&\29\20const +11593:GrGLBuffer::~GrGLBuffer\28\29.1 +11594:GrGLBuffer::~GrGLBuffer\28\29 +11595:GrGLBuffer::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +11596:GrGLBuffer::onUpdateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +11597:GrGLBuffer::onUnmap\28GrGpuBuffer::MapType\29 +11598:GrGLBuffer::onSetLabel\28\29 +11599:GrGLBuffer::onRelease\28\29 +11600:GrGLBuffer::onMap\28GrGpuBuffer::MapType\29 +11601:GrGLBuffer::onClearToZero\28\29 +11602:GrGLBuffer::onAbandon\28\29 +11603:GrGLBackendTextureData::~GrGLBackendTextureData\28\29.1 +11604:GrGLBackendTextureData::~GrGLBackendTextureData\28\29 +11605:GrGLBackendTextureData::isSameTexture\28GrBackendTextureData\20const*\29\20const +11606:GrGLBackendTextureData::isProtected\28\29\20const +11607:GrGLBackendTextureData::getBackendFormat\28\29\20const +11608:GrGLBackendTextureData::equal\28GrBackendTextureData\20const*\29\20const +11609:GrGLBackendTextureData::copyTo\28SkAnySubclass&\29\20const +11610:GrGLBackendRenderTargetData::isProtected\28\29\20const +11611:GrGLBackendRenderTargetData::getBackendFormat\28\29\20const +11612:GrGLBackendRenderTargetData::equal\28GrBackendRenderTargetData\20const*\29\20const +11613:GrGLBackendRenderTargetData::copyTo\28SkAnySubclass&\29\20const +11614:GrGLBackendFormatData::toString\28\29\20const +11615:GrGLBackendFormatData::stencilBits\28\29\20const +11616:GrGLBackendFormatData::equal\28GrBackendFormatData\20const*\29\20const +11617:GrGLBackendFormatData::desc\28\29\20const +11618:GrGLBackendFormatData::copyTo\28SkAnySubclass&\29\20const +11619:GrGLBackendFormatData::compressionType\28\29\20const +11620:GrGLBackendFormatData::channelMask\28\29\20const +11621:GrGLBackendFormatData::bytesPerBlock\28\29\20const +11622:GrGLAttachment::~GrGLAttachment\28\29 +11623:GrGLAttachment::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +11624:GrGLAttachment::onSetLabel\28\29 +11625:GrGLAttachment::onRelease\28\29 +11626:GrGLAttachment::onAbandon\28\29 +11627:GrGLAttachment::backendFormat\28\29\20const +11628:GrFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11629:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11630:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +11631:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11632:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11633:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::name\28\29\20const +11634:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11635:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::clone\28\29\20const +11636:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11637:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const +11638:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::name\28\29\20const +11639:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::clone\28\29\20const +11640:GrFragmentProcessor::ProgramImpl::~ProgramImpl\28\29 +11641:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11642:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const +11643:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::name\28\29\20const +11644:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::clone\28\29\20const +11645:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11646:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const +11647:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::name\28\29\20const +11648:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11649:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::clone\28\29\20const +11650:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11651:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const +11652:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::name\28\29\20const +11653:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11654:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::clone\28\29\20const +11655:GrFixedClip::~GrFixedClip\28\29.1 +11656:GrFixedClip::~GrFixedClip\28\29 +11657:GrExternalTextureGenerator::onGenerateTexture\28GrRecordingContext*\2c\20SkImageInfo\20const&\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +11658:GrEagerDynamicVertexAllocator::lock\28unsigned\20long\2c\20int\29 +11659:GrDynamicAtlas::~GrDynamicAtlas\28\29.1 +11660:GrDynamicAtlas::~GrDynamicAtlas\28\29 +11661:GrDrawOp::usesStencil\28\29\20const +11662:GrDrawOp::usesMSAA\28\29\20const +11663:GrDrawOp::fixedFunctionFlags\28\29\20const +11664:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29.1 +11665:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29 +11666:GrDistanceFieldPathGeoProc::onTextureSampler\28int\29\20const +11667:GrDistanceFieldPathGeoProc::name\28\29\20const +11668:GrDistanceFieldPathGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11669:GrDistanceFieldPathGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11670:GrDistanceFieldPathGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11671:GrDistanceFieldPathGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11672:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29.1 +11673:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29 +11674:GrDistanceFieldLCDTextGeoProc::name\28\29\20const +11675:GrDistanceFieldLCDTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11676:GrDistanceFieldLCDTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11677:GrDistanceFieldLCDTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11678:GrDistanceFieldLCDTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11679:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29.1 +11680:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +11681:GrDistanceFieldA8TextGeoProc::name\28\29\20const +11682:GrDistanceFieldA8TextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11683:GrDistanceFieldA8TextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11684:GrDistanceFieldA8TextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11685:GrDistanceFieldA8TextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11686:GrDisableColorXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11687:GrDisableColorXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11688:GrDirectContext::~GrDirectContext\28\29.1 +11689:GrDirectContext::releaseResourcesAndAbandonContext\28\29 +11690:GrDirectContext::init\28\29 +11691:GrDirectContext::abandoned\28\29 +11692:GrDirectContext::abandonContext\28\29 +11693:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29.1 +11694:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29 +11695:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29.1 +11696:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29 +11697:GrCpuVertexAllocator::unlock\28int\29 +11698:GrCpuVertexAllocator::lock\28unsigned\20long\2c\20int\29 +11699:GrCpuBuffer::unref\28\29\20const +11700:GrCoverageSetOpXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11701:GrCoverageSetOpXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11702:GrCopyRenderTask::~GrCopyRenderTask\28\29.1 +11703:GrCopyRenderTask::onMakeSkippable\28\29 +11704:GrCopyRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +11705:GrCopyRenderTask::onExecute\28GrOpFlushState*\29 +11706:GrCopyRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11707:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11708:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11709:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const +11710:GrConvexPolyEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11711:GrConvexPolyEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11712:GrConvexPolyEffect::name\28\29\20const +11713:GrConvexPolyEffect::clone\28\29\20const +11714:GrContext_Base::~GrContext_Base\28\29.1 +11715:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29.1 +11716:GrContextThreadSafeProxy::isValidCharacterizationForVulkan\28sk_sp\2c\20bool\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20bool\2c\20bool\29 +11717:GrConicEffect::name\28\29\20const +11718:GrConicEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11719:GrConicEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11720:GrConicEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11721:GrConicEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11722:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29.1 +11723:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29 +11724:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11725:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11726:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const +11727:GrColorSpaceXformEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11728:GrColorSpaceXformEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11729:GrColorSpaceXformEffect::name\28\29\20const +11730:GrColorSpaceXformEffect::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11731:GrColorSpaceXformEffect::clone\28\29\20const +11732:GrCaps::~GrCaps\28\29 +11733:GrCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +11734:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29.1 +11735:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29 +11736:GrBitmapTextGeoProc::onTextureSampler\28int\29\20const +11737:GrBitmapTextGeoProc::name\28\29\20const +11738:GrBitmapTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11739:GrBitmapTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11740:GrBitmapTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11741:GrBitmapTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11742:GrBicubicEffect::onMakeProgramImpl\28\29\20const +11743:GrBicubicEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11744:GrBicubicEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11745:GrBicubicEffect::name\28\29\20const +11746:GrBicubicEffect::clone\28\29\20const +11747:GrBicubicEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11748:GrBicubicEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11749:GrAttachment::onGpuMemorySize\28\29\20const +11750:GrAttachment::getResourceType\28\29\20const +11751:GrAttachment::computeScratchKey\28skgpu::ScratchKey*\29\20const +11752:GrAtlasManager::~GrAtlasManager\28\29.1 +11753:GrAtlasManager::preFlush\28GrOnFlushResourceProvider*\29 +11754:GrAtlasManager::postFlush\28skgpu::AtlasToken\29 +11755:GrAATriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +11756:GetRectsForRange\28skia::textlayout::Paragraph&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +11757:GetRectsForPlaceholders\28skia::textlayout::Paragraph&\29 +11758:GetLineMetrics\28skia::textlayout::Paragraph&\29 +11759:GetLineMetricsAt\28skia::textlayout::Paragraph&\2c\20unsigned\20long\29 +11760:GetGlyphInfoAt\28skia::textlayout::Paragraph&\2c\20unsigned\20long\29 +11761:GetCoeffsFast +11762:GetCoeffsAlt +11763:GetClosestGlyphInfoAtCoordinate\28skia::textlayout::Paragraph&\2c\20float\2c\20float\29 +11764:FontMgrRunIterator::~FontMgrRunIterator\28\29.1 +11765:FontMgrRunIterator::~FontMgrRunIterator\28\29 +11766:FontMgrRunIterator::currentFont\28\29\20const +11767:FontMgrRunIterator::consume\28\29 +11768:ExtractGreen_C +11769:ExtractAlpha_C +11770:ExtractAlphaRows +11771:ExternalWebGLTexture::~ExternalWebGLTexture\28\29.1 +11772:ExternalWebGLTexture::~ExternalWebGLTexture\28\29 +11773:ExternalWebGLTexture::getBackendTexture\28\29 +11774:ExternalWebGLTexture::dispose\28\29 +11775:ExportAlphaRGBA4444 +11776:ExportAlpha +11777:Equals\28SkPath\20const&\2c\20SkPath\20const&\29 +11778:EmitYUV +11779:EmitSampledRGB +11780:EmitRescaledYUV +11781:EmitRescaledRGB +11782:EmitRescaledAlphaYUV +11783:EmitRescaledAlphaRGB +11784:EmitFancyRGB +11785:EmitAlphaYUV +11786:EmitAlphaRGBA4444 +11787:EmitAlphaRGB +11788:EllipticalRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11789:EllipticalRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11790:EllipticalRRectOp::name\28\29\20const +11791:EllipticalRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11792:EllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11793:EllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11794:EllipseOp::name\28\29\20const +11795:EllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11796:EllipseGeometryProcessor::name\28\29\20const +11797:EllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11798:EllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11799:EllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11800:Dual_Project +11801:DitherCombine8x8_C +11802:DispatchAlpha_C +11803:DispatchAlphaToGreen_C +11804:DisableColorXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11805:DisableColorXP::name\28\29\20const +11806:DisableColorXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11807:DisableColorXP::makeProgramImpl\28\29\20const +11808:Direct_Move_Y +11809:Direct_Move_X +11810:Direct_Move_Orig_Y +11811:Direct_Move_Orig_X +11812:Direct_Move_Orig +11813:Direct_Move +11814:DefaultGeoProc::name\28\29\20const +11815:DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11816:DefaultGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11817:DefaultGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11818:DefaultGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11819:DataFontLoader::loadSystemFonts\28SkFontScanner\20const*\2c\20skia_private::TArray\2c\20true>*\29\20const +11820:DataCacheElement_deleter\28void*\29 +11821:DIEllipseOp::~DIEllipseOp\28\29.1 +11822:DIEllipseOp::~DIEllipseOp\28\29 +11823:DIEllipseOp::visitProxies\28std::__2::function\20const&\29\20const +11824:DIEllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11825:DIEllipseOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11826:DIEllipseOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11827:DIEllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11828:DIEllipseOp::name\28\29\20const +11829:DIEllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11830:DIEllipseGeometryProcessor::name\28\29\20const +11831:DIEllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11832:DIEllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11833:DIEllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11834:DC8uv_C +11835:DC8uvNoTop_C +11836:DC8uvNoTopLeft_C +11837:DC8uvNoLeft_C +11838:DC4_C +11839:DC16_C +11840:DC16NoTop_C +11841:DC16NoTopLeft_C +11842:DC16NoLeft_C +11843:CustomXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11844:CustomXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11845:CustomXP::xferBarrierType\28GrCaps\20const&\29\20const +11846:CustomXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11847:CustomXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11848:CustomXP::name\28\29\20const +11849:CustomXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11850:CustomXP::makeProgramImpl\28\29\20const +11851:CustomTeardown +11852:CustomSetup +11853:CustomPut +11854:Current_Ppem_Stretched +11855:Current_Ppem +11856:Cr_z_zcfree +11857:Cr_z_zcalloc +11858:CoverageSetOpXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11859:CoverageSetOpXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11860:CoverageSetOpXP::name\28\29\20const +11861:CoverageSetOpXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11862:CoverageSetOpXP::makeProgramImpl\28\29\20const +11863:CopyPath\28SkPath\20const&\29 +11864:ConvertRGB24ToY_C +11865:ConvertBGR24ToY_C +11866:ConvertARGBToY_C +11867:ColorTableEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11868:ColorTableEffect::onMakeProgramImpl\28\29\20const +11869:ColorTableEffect::name\28\29\20const +11870:ColorTableEffect::clone\28\29\20const +11871:CircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +11872:CircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11873:CircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11874:CircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11875:CircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11876:CircularRRectOp::name\28\29\20const +11877:CircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11878:CircleOp::~CircleOp\28\29.1 +11879:CircleOp::~CircleOp\28\29 +11880:CircleOp::visitProxies\28std::__2::function\20const&\29\20const +11881:CircleOp::programInfo\28\29 +11882:CircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11883:CircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11884:CircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11885:CircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11886:CircleOp::name\28\29\20const +11887:CircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11888:CircleGeometryProcessor::name\28\29\20const +11889:CircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11890:CircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11891:CircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11892:CanInterpolate\28SkPath\20const&\2c\20SkPath\20const&\29 +11893:ButtCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +11894:ButtCapDashedCircleOp::visitProxies\28std::__2::function\20const&\29\20const +11895:ButtCapDashedCircleOp::programInfo\28\29 +11896:ButtCapDashedCircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11897:ButtCapDashedCircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11898:ButtCapDashedCircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11899:ButtCapDashedCircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11900:ButtCapDashedCircleOp::name\28\29\20const +11901:ButtCapDashedCircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11902:ButtCapDashedCircleGeometryProcessor::name\28\29\20const +11903:ButtCapDashedCircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11904:ButtCapDashedCircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11905:ButtCapDashedCircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11906:BluntJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11907:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11908:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11909:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const +11910:BlendFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11911:BlendFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11912:BlendFragmentProcessor::name\28\29\20const +11913:BlendFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11914:BlendFragmentProcessor::clone\28\29\20const +11915:AutoCleanPng::infoCallback\28unsigned\20long\29 +11916:AutoCleanPng::decodeBounds\28\29 +11917:ApplyTrim\28SkPath&\2c\20float\2c\20float\2c\20bool\29 +11918:ApplyTransform\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11919:ApplyStroke\28SkPath&\2c\20StrokeOpts\29 +11920:ApplySimplify\28SkPath&\29 +11921:ApplyRewind\28SkPath&\29 +11922:ApplyReset\28SkPath&\29 +11923:ApplyRQuadTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\29 +11924:ApplyRMoveTo\28SkPath&\2c\20float\2c\20float\29 +11925:ApplyRLineTo\28SkPath&\2c\20float\2c\20float\29 +11926:ApplyRCubicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11927:ApplyRConicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11928:ApplyRArcToArcSize\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29 +11929:ApplyQuadTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\29 +11930:ApplyPathOp\28SkPath&\2c\20SkPath\20const&\2c\20SkPathOp\29 +11931:ApplyMoveTo\28SkPath&\2c\20float\2c\20float\29 +11932:ApplyLineTo\28SkPath&\2c\20float\2c\20float\29 +11933:ApplyDash\28SkPath&\2c\20float\2c\20float\2c\20float\29 +11934:ApplyCubicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11935:ApplyConicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11936:ApplyClose\28SkPath&\29 +11937:ApplyArcToTangent\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +11938:ApplyArcToArcSize\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29 +11939:ApplyAlphaMultiply_C +11940:ApplyAlphaMultiply_16b_C +11941: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 +11942:AlphaReplace_C +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/resources/web/flutter_web/canvaskit/canvaskit.wasm b/resources/web/flutter_web/canvaskit/canvaskit.wasm new file mode 100644 index 0000000000..32aa3cae58 Binary files /dev/null and b/resources/web/flutter_web/canvaskit/canvaskit.wasm differ diff --git a/resources/web/flutter_web/canvaskit/chromium/canvaskit.js b/resources/web/flutter_web/canvaskit/chromium/canvaskit.js new file mode 100644 index 0000000000..f5010cda95 --- /dev/null +++ b/resources/web/flutter_web/canvaskit/chromium/canvaskit.js @@ -0,0 +1,216 @@ + +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.Gd=a.Gd||[];a.Gd.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.ge=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.ge=null,e.Oe=b,e.Le=c,e.Me=f,e.re=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.Dd(this.Cd);this._flush();if(this.ge){var c=new Uint8ClampedArray(a.HEAPU8.buffer,this.re,this.Me);c=new ImageData(c,this.Oe,this.Le);b?this.ge.getContext("2d").putImageData(c, +0,0,b[0],b[1],b[2]-b[0],b[3]-b[1]):this.ge.getContext("2d").putImageData(c,0,0)}};a.Surface.prototype.dispose=function(){this.re&&a._free(this.re);this.delete()};a.Dd=a.Dd||function(){};a.he=a.he||function(){return null}})})(r); +(function(a){a.Gd=a.Gd||[];a.Gd.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.Od.getExtension("WEBGL_debug_renderer_info");return m};a.deleteContext=function(m){x===ia[m]&&(x=null);"object"==typeof JSEvents&& +JSEvents.sf(ia[m].Od.canvas);ia[m]&&ia[m].Od.canvas&&(ia[m].Od.canvas.Je=void 0);ia[m]=null};a._setTextureCleanup({deleteTexture:function(m,q){var w=ea[q];w&&ia[m].Od.deleteTexture(w);ea[q]=null}});a.MakeWebGLContext=function(m){if(!this.Dd(m))return null;var q=this._MakeGrContext();if(!q)return null;q.Cd=m;var w=q.delete.bind(q);q["delete"]=function(){a.Dd(this.Cd);w()}.bind(q);return x.te=q};a.MakeGrContext=a.MakeWebGLContext;a.GrDirectContext.prototype.getResourceCacheLimitBytes=function(){a.Dd(this.Cd); +this._getResourceCacheLimitBytes()};a.GrDirectContext.prototype.getResourceCacheUsageBytes=function(){a.Dd(this.Cd);this._getResourceCacheUsageBytes()};a.GrDirectContext.prototype.releaseResourcesAndAbandonContext=function(){a.Dd(this.Cd);this._releaseResourcesAndAbandonContext()};a.GrDirectContext.prototype.setResourceCacheLimitBytes=function(m){a.Dd(this.Cd);this._setResourceCacheLimitBytes(m)};a.MakeOnScreenGLSurface=function(m,q,w,y,B,D){if(!this.Dd(m.Cd))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.Cd=m.Cd;return q};a.MakeRenderTarget=function(){var m=arguments[0];if(!this.Dd(m.Cd))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.Cd=m.Cd;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.Dd(this.Cd);m=c(m);if(q=this._makeImageFromTexture(this.Cd,m,q))q.be=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.Dd(this.Cd);var y=x.Od;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.be){a.Dd(this.Cd);var y=m.getImageInfo(),B=x.Od,D=k(B,ea[m.be],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.be]=null;m.be=c(D);y.colorSpace= +m.getColorSpace();q=this._makeImageFromTexture(this.Cd,m.be,y);w=m.jd.Ed;B=m.jd.Jd;m.jd.Ed=q.jd.Ed;m.jd.Jd=q.jd.Jd;q.jd.Ed=w;q.jd.Jd=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.Od,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.Dd=function(m){return m?ha(m):!1};a.he=function(){return x&&x.te&&!x.te.isDeleted()?x.te: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.Ld=g}else throw"Invalid argument to copyFlexibleColorArray, Not a color array "+typeof g;return d}function q(g){if(!g)return M;var d=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,Wd:null,subarray:function(n,t){n=this.toTypedArray().subarray(n,t);n._ck=!0;return n},toTypedArray:function(){if(this.Wd&& +this.Wd.length)return this.Wd;this.Wd=new g(a.HEAPU8.buffer,h,d);this.Wd._ck=!0;return this.Wd}}};a.Free=function(g){a._free(g.byteOffset);g.byteOffset=M;g.toTypedArray=null;g.Wd=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.he();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.he();return g(this,d,h,n,t,v,z)};a.Canvas.prototype.clear=function(d){a.Dd(this.Cd);d=y(d);this._clear(d)};a.Canvas.prototype.clipRRect=function(d,h,n){a.Dd(this.Cd);d=F(d);this._clipRRect(d, +h,n)};a.Canvas.prototype.clipRect=function(d,h,n){a.Dd(this.Cd);d=u(d);this._clipRect(d,h,n)};a.Canvas.prototype.concat=function(d){a.Dd(this.Cd);d=w(d);this._concat(d)};a.Canvas.prototype.drawArc=function(d,h,n,t,v){a.Dd(this.Cd);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.Dd(this.Cd);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.Dd(this.Cd);this._drawCircle(d,h,n,t)};a.Canvas.prototype.drawColor=function(d,h){a.Dd(this.Cd);d=y(d);void 0!==h?this._drawColor(d,h):this._drawColor(d)};a.Canvas.prototype.drawColorInt=function(d,h){a.Dd(this.Cd);this._drawColorInt(d,h||a.BlendMode.SrcOver)};a.Canvas.prototype.drawColorComponents= +function(d,h,n,t,v){a.Dd(this.Cd);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.Dd(this.Cd);d=F(d,Eb);h=F(h,kc);this._drawDRRect(d,h,n)};a.Canvas.prototype.drawImage=function(d,h,n,t){a.Dd(this.Cd);this._drawImage(d,h,n,t||null)};a.Canvas.prototype.drawImageCubic=function(d,h,n,t,v,z){a.Dd(this.Cd);this._drawImageCubic(d,h,n,t,v,z||null)};a.Canvas.prototype.drawImageOptions=function(d,h,n,t,v,z){a.Dd(this.Cd);this._drawImageOptions(d, +h,n,t,v,z||null)};a.Canvas.prototype.drawImageNine=function(d,h,n,t,v){a.Dd(this.Cd);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.Dd(this.Cd);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.Dd(this.Cd);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.Dd(this.Cd);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.Dd(this.Cd);this._drawLine(d,h,n,t,v)};a.Canvas.prototype.drawOval=function(d,h){a.Dd(this.Cd);d=u(d);this._drawOval(d,h)};a.Canvas.prototype.drawPaint=function(d){a.Dd(this.Cd);this._drawPaint(d)};a.Canvas.prototype.drawParagraph=function(d,h,n){a.Dd(this.Cd);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.Dd(this.Cd);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.Dd(this.Cd);this._drawPath(d,h)};a.Canvas.prototype.drawPicture=function(d){a.Dd(this.Cd);this._drawPicture(d)};a.Canvas.prototype.drawPoints=function(d,h,n){a.Dd(this.Cd);var t=l(h,"HEAPF32");this._drawPoints(d,t,h.length/2,n);k(t,h)};a.Canvas.prototype.drawRRect=function(d,h){a.Dd(this.Cd);d=F(d); +this._drawRRect(d,h)};a.Canvas.prototype.drawRect=function(d,h){a.Dd(this.Cd);d=u(d);this._drawRect(d,h)};a.Canvas.prototype.drawRect4f=function(d,h,n,t,v){a.Dd(this.Cd);this._drawRect4f(d,h,n,t,v)};a.Canvas.prototype.drawShadow=function(d,h,n,t,v,z,E){a.Dd(this.Cd);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.Dd(this.Cd);this._drawTextBlob(d,h,n,t)};a.Canvas.prototype.drawVertices=function(d,h,n){a.Dd(this.Cd);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.Cd=this.Cd;return d};a.Canvas.prototype.readPixels=function(d,h,n,t,v){a.Dd(this.Cd);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.Dd(this.Cd);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.Cd=this.Cd;return d};a.Surface.prototype.makeImageSnapshot=function(d){a.Dd(this.Cd);d=l(d,"HEAP32",Sa);return this._makeImageSnapshot(d)};a.Surface.prototype.makeSurface= +function(d){a.Dd(this.Cd);d=this._makeSurface(d);d.Cd=this.Cd;return d};a.Surface.prototype.Ne=function(d,h){this.ae||(this.ae=this.getCanvas());return requestAnimationFrame(function(){a.Dd(this.Cd);d(this.ae);this.flush(h)}.bind(this))};a.Surface.prototype.requestAnimationFrame||(a.Surface.prototype.requestAnimationFrame=a.Surface.prototype.Ne);a.Surface.prototype.Ke=function(d,h){this.ae||(this.ae=this.getCanvas());requestAnimationFrame(function(){a.Dd(this.Cd);d(this.ae);this.flush(h);this.dispose()}.bind(this))}; +a.Surface.prototype.drawOnce||(a.Surface.prototype.drawOnce=a.Surface.prototype.Ke);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.Ld,I.colorType,U,I.count,v,E,z,J);k(I.Ld,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.Ld,I.colorType,U,I.count,v,E, +z,J);k(I.Ld,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.Ld,V.colorType,p,V.count,v,J,I,E,z,U);k(V.Ld,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.Ld,V.colorType,p,V.count,E, +I,J,U);k(V.Ld,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.Gd&&a.Gd.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.Gd=g.Gd||[];g.Gd.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.Gd=a.Gd||[];a.Gd.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.Gd=a.Gd||[];a.Gd.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.qe=function(b){L[this.Ed+8>>2]=b};this.Td=function(b,c){this.pe();this.Ie(b);this.qe(c)};this.pe=function(){L[this.Ed+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.$e)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.Hd.Fd.name+" instance already deleted")}var Ab=!1;function Bb(){} +function Cb(a){--a.count.value;0===a.count.value&&(a.Jd?a.Nd.Rd(a.Jd):a.Hd.Fd.Rd(a.Ed))}function Db(a,b,c){if(b===c)return a;if(void 0===c.Kd)return null;a=Db(a,b,c.Kd);return null===a?null:c.Se(a)}var Jb={},Kb=[];function Lb(){for(;Kb.length;){var a=Kb.pop();a.jd.Zd=!1;a["delete"]()}}var Mb=void 0,Nb={};function Ob(a,b){for(void 0===b&&Q("ptr should not be undefined");a.Kd;)b=a.ee(b),a=a.Kd;return Nb[b]} +function Pb(a,b){b.Hd&&b.Ed||sb("makeClassHandle requires ptr and ptrType");!!b.Nd!==!!b.Jd&&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.Jd&&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].Id){var e=a[b];a[b]=function(){a[b].Id.hasOwnProperty(arguments.length)||Q(`Function '${c}' called with an invalid number of arguments (${arguments.length}) - expects one of (${a[b].Id})!`);return a[b].Id[arguments.length].apply(this,arguments)};a[b].Id=[];a[b].Id[e.Xd]=e}} +function Vb(a,b,c){r.hasOwnProperty(a)?((void 0===c||void 0!==r[a].Id&&void 0!==r[a].Id[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].Id[c]=b):(r[a]=b,void 0!==c&&(r[a].rf=c))}function Wb(a,b,c,e,f,k,l,m){this.name=a;this.constructor=b;this.$d=c;this.Rd=e;this.Kd=f;this.Ve=k;this.ee=l;this.Se=m;this.df=[]} +function Xb(a,b,c){for(;b!==c;)b.ee||Q(`Expected null or instance of ${c.name}, got an instance of ${b.name}`),a=b.ee(a),b=b.Kd;return a}function Yb(a,b){if(null===b)return this.ue&&Q(`null is not a valid ${this.name}`),0;b.jd||Q(`Cannot pass "${Zb(b)}" as a ${this.name}`);b.jd.Ed||Q(`Cannot pass deleted object as a pointer of type ${this.name}`);return Xb(b.jd.Ed,b.jd.Hd.Fd,this.Fd)} +function $b(a,b){if(null===b){this.ue&&Q(`null is not a valid ${this.name}`);if(this.je){var c=this.ve();null!==a&&a.push(this.Rd,c);return c}return 0}b.jd||Q(`Cannot pass "${Zb(b)}" as a ${this.name}`);b.jd.Ed||Q(`Cannot pass deleted object as a pointer of type ${this.name}`);!this.ie&&b.jd.Hd.ie&&Q(`Cannot convert argument of type ${b.jd.Nd?b.jd.Nd.name:b.jd.Hd.name} to parameter type ${this.name}`);c=Xb(b.jd.Ed,b.jd.Hd.Fd,this.Fd);if(this.je)switch(void 0===b.jd.Jd&&Q("Passing raw pointer to smart pointer is illegal"), +this.jf){case 0:b.jd.Nd===this?c=b.jd.Jd:Q(`Cannot convert argument of type ${b.jd.Nd?b.jd.Nd.name:b.jd.Hd.name} to parameter type ${this.name}`);break;case 1:c=b.jd.Jd;break;case 2:if(b.jd.Nd===this)c=b.jd.Jd;else{var e=b.clone();c=this.ef(c,ac(function(){e["delete"]()}));null!==a&&a.push(this.Rd,c)}break;default:Q("Unsupporting sharing policy")}return c} +function bc(a,b){if(null===b)return this.ue&&Q(`null is not a valid ${this.name}`),0;b.jd||Q(`Cannot pass "${Zb(b)}" as a ${this.name}`);b.jd.Ed||Q(`Cannot pass deleted object as a pointer of type ${this.name}`);b.jd.Hd.ie&&Q(`Cannot convert argument of type ${b.jd.Hd.name} to parameter type ${this.name}`);return Xb(b.jd.Ed,b.jd.Hd.Fd,this.Fd)} +function cc(a,b,c,e,f,k,l,m,q,w,y){this.name=a;this.Fd=b;this.ue=c;this.ie=e;this.je=f;this.cf=k;this.jf=l;this.Ee=m;this.ve=q;this.ef=w;this.Rd=y;f||void 0!==b.Kd?this.toWireType=$b:(this.toWireType=e?Yb:bc,this.Md=null)}function dc(a,b,c){r.hasOwnProperty(a)||sb("Replacing nonexistant public symbol");void 0!==r[a].Id&&void 0!==c?r[a].Id[c]=b:(r[a]=b,r[a].Xd=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.Qd=[void 0];this.Ce=[]}var vc=new uc;function wc(a){a>=vc.Td&&0===--vc.get(a).Fe&&vc.qe(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.pe({Fe: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.Ae)b.Ae=b.getExtension("EXT_disjoint_timer_query");b.qf=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.Qe;if(b){var c=b.de[a];"number"==typeof c&&(b.de[a]=c=S.getUniformLocation(b,b.Ge[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={mf:K[e>>2],lf:K[e+4>>2],ne:K[e+8>>2],we:K[e+12>>2],oe:K[e+16>>2],Vd:K[e+20>>2],Pd:K[e+24>>2],Ud:K[e+28>>2],tf:K[e+32>>2],kf:K[e+36>>2],nf: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.Pd].substring(0,3),"%A":u=>B[u.Pd],"%b":u=>D[u.oe].substring(0,3),"%B":u=>D[u.oe],"%C":u=>k((u.Vd+1900)/ +100|0,2),"%d":u=>k(u.we,2),"%e":u=>f(u.we,2," "),"%g":u=>q(u).toString().substring(2),"%G":u=>q(u),"%H":u=>k(u.ne,2),"%I":u=>{u=u.ne;0==u?u=12:12{for(var F=0,H=0;H<=u.oe-1;F+=(Dd(u.Vd+1900)?Ed:Fd)[H++]);return k(u.we+F,3)},"%m":u=>k(u.oe+1,2),"%M":u=>k(u.lf,2),"%n":()=>"\n","%p":u=>0<=u.ne&&12>u.ne?"AM":"PM","%S":u=>k(u.mf,2),"%t":()=>"\t","%u":u=>u.Pd||7,"%U":u=>k(Math.floor((u.Ud+7-u.Pd)/7),2),"%V":u=>{var F=Math.floor((u.Ud+7-(u.Pd+6)%7)/7);2>=(u.Pd+371-u.Ud- +2)%7&&F++;if(F)53==F&&(H=(u.Pd+371-u.Ud)%7,4==H||3==H&&Dd(u.Vd)||(F=1));else{F=52;var H=(u.Pd+7-u.Ud-1)%7;(4==H||5==H&&Dd(u.Vd%400-1))&&F++}return k(F,2)},"%w":u=>u.Pd,"%W":u=>k(Math.floor((u.Ud+7-(u.Pd+6)%7)/7),2),"%y":u=>(u.Vd+1900).toString().substring(2),"%Y":u=>u.Vd+1900,"%z":u=>{u=u.kf;var F=0<=u;u=Math.abs(u)/60;return(F?"+":"-")+String("0000"+(u/60*100+u%60)).slice(-4)},"%Z":u=>u.nf,"%%":()=>"%"};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.Hd.Fd,c=this.jd.Ed,e=a.jd.Hd.Fd;for(a=a.jd.Ed;b.Kd;)c=b.ee(c),b=b.Kd;for(;e.Kd;)a=e.ee(a),e=e.Kd;return b===e&&c===a}; +Rb.prototype.clone=function(){this.jd.Ed||zb(this);if(this.jd.ce)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,Zd:f.Zd,ce:f.ce,Ed:f.Ed,Hd:f.Hd,Jd:f.Jd,Nd:f.Nd}}}));a.jd.count.value+=1;a.jd.Zd=!1;return a};Rb.prototype["delete"]=function(){this.jd.Ed||zb(this);this.jd.Zd&&!this.jd.ce&&Q("Object already scheduled for deletion");Bb(this);Cb(this.jd);this.jd.ce||(this.jd.Jd=void 0,this.jd.Ed=void 0)}; +Rb.prototype.isDeleted=function(){return!this.jd.Ed};Rb.prototype.deleteLater=function(){this.jd.Ed||zb(this);this.jd.Zd&&!this.jd.ce&&Q("Object already scheduled for deletion");Kb.push(this);1===Kb.length&&Mb&&Mb(Lb);this.jd.Zd=!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.We=function(a){this.Ee&&(a=this.Ee(a));return a};cc.prototype.ye=function(a){this.Rd&&this.Rd(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.je?Pb(this.Fd.$d,{Hd:this.cf,Ed:c,Nd:this,Jd:a}):Pb(this.Fd.$d,{Hd:this,Ed:a})}var c=this.We(a);if(!c)return this.ye(a),null;var e=Ob(this.Fd,c);if(void 0!==e){if(0===e.jd.count.value)return e.jd.Ed=c,e.jd.Jd=a,e.clone();e=e.clone();this.ye(a);return e}e=this.Fd.Ve(c);e=Jb[e];if(!e)return b.call(this);e=this.ie?e.Pe:e.pointerType;var f=Db(c,this.Fd,e.Fd);return null===f?b.call(this):this.je?Pb(e.Fd.$d,{Hd:e,Ed:f,Nd:this,Jd:a}):Pb(e.Fd.$d, +{Hd:e,Ed: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.Qd[a]},has(a){return void 0!==this.Qd[a]},pe(a){var b=this.Ce.pop()||this.Qd.length;this.Qd[b]=a;return b},qe(a){this.Qd[a]=void 0;this.Ce.push(a)}});vc.Qd.push({value:void 0},{value:null},{value:!0},{value:!1});vc.Td=vc.Qd.length;r.count_emval_handles=function(){for(var a=0,b=vc.Td;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)).Td(b,c);gb=a;ib++;throw gb;},_:function(){return 0},_c:()=>{},Zc:function(){return 0},Yc:()=>{},Xc:function(){},Wc:()=>{},D:function(a){var b=lb[a];delete lb[a];var c=b.ve,e=b.Rd,f=b.Be,k=f.map(l=>l.Ze).concat(f.map(l=>l.gf));tb([a],k,l=>{var m={};f.forEach((q,w)=>{var y=l[w],B=q.Xe,D=q.Ye,u=l[w+f.length],F=q.ff,H=q.hf;m[q.Ue]={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,Md: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])},Md: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.Fd;var T=H.$d}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.Sd)throw new xb(y+ +" has no accessible constructor");var Ma=Y.Sd[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.Sd).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.Kd&&(void 0===Y.Kd.fe&&(Y.Kd.fe=[]),Y.Kd.fe.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,Pe: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.Fd.constructor;void 0===B[b]?(w.Xd=c-1,B[b]=w):(Ub(B,b,y),B[b].Id[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].Id?(D.Xd=c-1,B[b]=D):B[b].Id[c-1]=D;if(q.Fd.fe)for(const u of q.Fd.fe)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.Fd.Sd&&(m.Fd.Sd=[]);if(void 0!==m.Fd.Sd[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.Fd.Sd[b-1]=()=>{rc(`Cannot construct ${m.name} due to unbound types`,l)}; +tb([],l,function(w){w.splice(1,0,null);m.Fd.Sd[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.Fd.df.push(b);var D=w.Fd.$d,u=D[b];void 0===u||void 0===u.Id&&u.className!==w.name&&u.Xd===c-2?(y.Xd=c-2,y.className=w.name,D[b]=y):(Ub(D,b,B),D[b].Id[c-2]=y);tb([],q,function(F){F=sc(B,F, +w,k,l);void 0===D[b].Id?(F.Xd=c-2,D[b]=F):D[b].Id[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,Md: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),Md: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),Md: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[]})},E: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),Md: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},{$e:!0})},o: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.Fd,!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,Md:function(q){qc(q)}})},C:function(a,b,c,e,f,k){lb[a]={name:P(b),ve:mc(c,e),Rd:mc(f,k),Be:[]}},d:function(a,b,c,e,f,k,l,m,q,w){lb[a].Be.push({Ue:P(b),Ze:c,Xe:mc(e,f),Ye:k, +gf:l,ff:mc(m,q),hf:w})},Qc:function(a,b){b=P(b);ub(a,{bf:!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.se=b:35052==a&&(S.Yd=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.Yd||!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.Yd||!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.me=b.ke=b.le=0;b.xe=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.se&&(S.se=0),e==S.Yd&&(S.Yd=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.ze.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.ze.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.me)for(b=0;b>2]=a.me}else if(35722==b){if(!a.ke)for(b=0;b>2]=a.ke}else if(35381==b){if(!a.le)for(b=0;b>2]=a.le}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.de,f=c.He,k;if(!e)for(c.de=e={},c.Ge={},k=0;k>>0,f=b.slice(0, +k));if((f=a.He[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.de=0;a.He={}},ib:function(a, +b,c,e,f,k){S.De.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.De.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.se)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.Yd)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.Yd)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.Qe=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,q: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.cd;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 wd=r._malloc=a=>(wd=r._malloc=G.bd)(a),qc=r._free=a=>(qc=r._free=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_jiiiiii=(a,b,c,e,f,k,l)=>(r.dynCall_jiiiiii=G.td)(a,b,c,e,f,k,l);r.dynCall_jiiiiji=(a,b,c,e,f,k,l,m)=>(r.dynCall_jiiiiji=G.ud)(a,b,c,e,f,k,l,m); +r.dynCall_ji=(a,b)=>(r.dynCall_ji=G.vd)(a,b);r.dynCall_iijj=(a,b,c,e,f,k)=>(r.dynCall_iijj=G.wd)(a,b,c,e,f,k);r.dynCall_jiji=(a,b,c,e,f)=>(r.dynCall_jiji=G.xd)(a,b,c,e,f);r.dynCall_viijii=(a,b,c,e,f,k,l)=>(r.dynCall_viijii=G.yd)(a,b,c,e,f,k,l);r.dynCall_iiiiij=(a,b,c,e,f,k,l)=>(r.dynCall_iiiiij=G.zd)(a,b,c,e,f,k,l);r.dynCall_iiiiijj=(a,b,c,e,f,k,l,m,q)=>(r.dynCall_iiiiijj=G.Ad)(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.Bd)(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/resources/web/flutter_web/canvaskit/chromium/canvaskit.js.symbols b/resources/web/flutter_web/canvaskit/chromium/canvaskit.js.symbols new file mode 100644 index 0000000000..3a7525f299 --- /dev/null +++ b/resources/web/flutter_web/canvaskit/chromium/canvaskit.js.symbols @@ -0,0 +1,10903 @@ +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:_embind_register_smart_ptr +15:_emval_get_method_caller +16:invoke_viii +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_finalize_value_object +30:_embind_register_integer +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:SkString::~SkString\28\29 +219:__memcpy +220:__memset +221:GrGLSLShaderBuilder::codeAppendf\28char\20const*\2c\20...\29 +222:SkColorInfo::~SkColorInfo\28\29 +223:SkDebugf\28char\20const*\2c\20...\29 +224:SkString::SkString\28\29 +225:SkData::~SkData\28\29 +226:SkContainerAllocator::allocate\28int\2c\20double\29 +227:memcmp +228:memmove +229:SkString::insert\28unsigned\20long\2c\20char\20const*\29 +230:hb_blob_destroy +231:SkPath::~SkPath\28\29 +232:sk_report_container_overflow_and_die\28\29 +233:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\29 +234:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::~__func\28\29 +235:SkSL::ErrorReporter::error\28SkSL::Position\2c\20std::__2::basic_string_view>\29 +236:SkArenaAlloc::ensureSpace\28unsigned\20int\2c\20unsigned\20int\29 +237:SkRasterPipeline::append\28SkRasterPipelineOp\2c\20void*\29 +238:SkString::SkString\28char\20const*\29 +239:ft_mem_free +240:FT_MulFix +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:testSetjmp +246:SkWriter32::growToAtLeast\28unsigned\20long\29 +247:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\2c\20unsigned\20long\29 +248:fmaxf +249:std::__2::basic_string\2c\20std::__2::allocator>::size\5babi:v160004\5d\28\29\20const +250:SkString::SkString\28SkString&&\29 +251:SkSL::Pool::AllocMemory\28unsigned\20long\29 +252:std::__2::basic_string\2c\20std::__2::allocator>::__throw_length_error\5babi:v160004\5d\28\29\20const +253:GrColorInfo::~GrColorInfo\28\29 +254:SkIRect::intersect\28SkIRect\20const&\2c\20SkIRect\20const&\29 +255:strlen +256:GrBackendFormat::~GrBackendFormat\28\29 +257:std::__2::vector>::__throw_length_error\5babi:v160004\5d\28\29\20const +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:SkTDStorage::~SkTDStorage\28\29 +262:sk_malloc_throw\28unsigned\20long\2c\20unsigned\20long\29 +263:SkTDStorage::SkTDStorage\28int\29 +264:SkSL::RP::Generator::pushExpression\28SkSL::Expression\20const&\2c\20bool\29 +265:SkStrokeRec::getStyle\28\29\20const +266:strncmp +267:SkString::SkString\28SkString\20const&\29 +268:hb_ot_map_builder_t::add_feature\28unsigned\20int\2c\20hb_ot_map_feature_flags_t\2c\20unsigned\20int\29 +269:SkMatrix::mapRect\28SkRect*\2c\20SkRect\20const&\2c\20SkApplyPerspectiveClip\29\20const +270:void\20emscripten::internal::raw_destructor\28SkContourMeasure*\29 +271:SkBitmap::~SkBitmap\28\29 +272:hb_buffer_t::make_room_for\28unsigned\20int\2c\20unsigned\20int\29 +273:fminf +274:SkArenaAlloc::installFooter\28char*\20\28*\29\28char*\29\2c\20unsigned\20int\29 +275:SkArenaAlloc::allocObjectWithFooter\28unsigned\20int\2c\20unsigned\20int\29 +276:strcmp +277:skia_private::TArray::push_back\28SkPoint\20const&\29 +278:SkString::operator=\28SkString&&\29 +279:SkSemaphore::osSignal\28int\29 +280:SkPath::SkPath\28\29 +281:std::__2::__shared_weak_count::__release_weak\28\29 +282:skia_png_error +283:hb_buffer_t::message\28hb_font_t*\2c\20char\20const*\2c\20...\29 +284:SkSL::Parser::nextRawToken\28\29 +285:SkArenaAlloc::~SkArenaAlloc\28\29 +286:SkMatrix::computePerspectiveTypeMask\28\29\20const +287:SkFontMgr*\20emscripten::base::convertPointer\28skia::textlayout::TypefaceFontProvider*\29 +288:SkSemaphore::osWait\28\29 +289:SkColorInfo::SkColorInfo\28SkColorInfo\20const&\29 +290:SkIntersections::insert\28double\2c\20double\2c\20SkDPoint\20const&\29 +291:dlmalloc +292:FT_DivFix +293:std::__throw_bad_array_new_length\5babi:v160004\5d\28\29 +294:SkString::appendf\28char\20const*\2c\20...\29 +295:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +296:skia_png_free +297:skia_png_crc_finish +298:SkPath::lineTo\28float\2c\20float\29 +299:SkMatrix::setTranslate\28float\2c\20float\29 +300:SkChecksum::Hash32\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20int\29 +301:skia_png_chunk_benign_error +302:SkMatrix::mapPoints\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +303:dlrealloc +304:skia_png_warning +305:OT::VarData::get_delta\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20OT::VarRegionList\20const&\2c\20float*\29\20const +306:ft_mem_qrealloc +307:SkColorInfo::bytesPerPixel\28\29\20const +308:SkPaint::SkPaint\28SkPaint\20const&\29 +309:GrVertexChunkBuilder::allocChunk\28int\29 +310:skia_private::TArray::push_back\28unsigned\20long\20const&\29 +311:OT::DeltaSetIndexMap::map\28unsigned\20int\29\20const +312:ft_mem_realloc +313:SkReadBuffer::readUInt\28\29 +314:SkMatrix::reset\28\29 +315:SkImageInfo::MakeUnknown\28int\2c\20int\29 +316:GrSurfaceProxyView::asRenderTargetProxy\28\29\20const +317:skia_private::TArray::push_back\28unsigned\20char&&\29 +318:SkBitmap::SkBitmap\28\29 +319:SkPath::SkPath\28SkPath\20const&\29 +320:ft_validator_error +321:SkPaint::SkPaint\28\29 +322:SkBlitter::~SkBlitter\28\29 +323:strstr +324:SkOpPtT::segment\28\29\20const +325:SkSL::Parser::expect\28SkSL::Token::Kind\2c\20char\20const*\2c\20SkSL::Token*\29 +326:SkJSONWriter::appendName\28char\20const*\29 +327:SkImageGenerator::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +328:sk_malloc_flags\28unsigned\20long\2c\20unsigned\20int\29 +329:GrTextureGenerator::isTextureGenerator\28\29\20const +330:std::__2::basic_string\2c\20std::__2::allocator>::__get_pointer\5babi:v160004\5d\28\29 +331:skia_private::TArray\2c\20true>::push_back\28sk_sp&&\29 +332:SkMatrix::invertNonIdentity\28SkMatrix*\29\20const +333:SkJSONWriter::beginValue\28bool\29 +334:dlcalloc +335:SkSL::RP::Builder::appendInstruction\28SkSL::RP::BuilderOp\2c\20SkSL::RP::Builder::SlotList\2c\20int\2c\20int\2c\20int\2c\20int\29 +336:skia_private::TArray::push_back\28SkSL::RP::Instruction&&\29 +337:skia_png_get_uint_32 +338:skia_png_calculate_crc +339:std::__2::basic_string\2c\20std::__2::allocator>::resize\5babi:v160004\5d\28unsigned\20long\29 +340:SkSL::GLSLCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +341:skgpu::Swizzle::Swizzle\28char\20const*\29 +342:SkPoint::Length\28float\2c\20float\29 +343:GrImageInfo::GrImageInfo\28GrImageInfo\20const&\29 +344:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +345:SkPath::getBounds\28\29\20const +346:std::__2::locale::~locale\28\29 +347:skia_private::TArray::push_back\28SkString&&\29 +348:SkPathRef::Editor::Editor\28sk_sp*\2c\20int\2c\20int\2c\20int\29 +349:FT_Stream_Seek +350:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28char\29 +351:SkRect::join\28SkRect\20const&\29 +352:SkRect::intersect\28SkRect\20const&\29 +353:hb_blob_reference +354:cf2_stack_popFixed +355:GrGLExtensions::has\28char\20const*\29\20const +356:std::__2::__throw_bad_function_call\5babi:v160004\5d\28\29 +357:SkRect::setBoundsCheck\28SkPoint\20const*\2c\20int\29 +358:SkRasterPipeline::uncheckedAppend\28SkRasterPipelineOp\2c\20void*\29 +359:SkCachedData::internalUnref\28bool\29\20const +360:GrProcessor::operator\20new\28unsigned\20long\29 +361:FT_MulDiv +362:std::__2::to_string\28int\29 +363:skia_private::TArray>\2c\20true>::operator=\28skia_private::TArray>\2c\20true>&&\29 +364: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 +365:std::__2::ios_base::getloc\28\29\20const +366:SkRegion::~SkRegion\28\29 +367:skia_png_read_push_finish_row +368:skia::textlayout::TextStyle::~TextStyle\28\29 +369:hb_blob_make_immutable +370:SkString::operator=\28char\20const*\29 +371:SkReadBuffer::setInvalid\28\29 +372:SkColorInfo::operator=\28SkColorInfo&&\29 +373: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 +374: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 +375:VP8GetValue +376:SkSemaphore::~SkSemaphore\28\29 +377:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28\29 +378:skgpu::ganesh::SurfaceContext::caps\28\29\20const +379:SkSL::String::printf\28char\20const*\2c\20...\29 +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:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +387:jzero_far +388:hb_blob_get_data_writable +389:SkPathRef::growForVerb\28int\2c\20float\29 +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:SkSL::Type::matches\28SkSL::Type\20const&\29\20const +394:SkRuntimeEffect::uniformSize\28\29\20const +395:SkMatrix::setConcat\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +396:SkImageGenerator::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +397:FT_Stream_ExitFrame +398:subtag_matches\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20int\29 +399:skia_private::TArray::push_back_raw\28int\29 +400:__shgetc +401:SkBlitter::~SkBlitter\28\29.1 +402:FT_Stream_GetUShort +403:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28wchar_t\20const*\29 +404:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28char\20const*\29 +405:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +406:SkSL::SymbolTable::addWithoutOwnershipOrDie\28SkSL::Symbol*\29 +407:SkPoint::scale\28float\2c\20SkPoint*\29\20const +408:SkNullBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +409:SkIRect\20skif::Mapping::map\28SkIRect\20const&\2c\20SkMatrix\20const&\29 +410:GrFragmentProcessor::ProgramImpl::invokeChild\28int\2c\20char\20const*\2c\20char\20const*\2c\20GrFragmentProcessor::ProgramImpl::EmitArgs&\2c\20std::__2::basic_string_view>\29 +411:sktext::gpu::BagOfBytes::~BagOfBytes\28\29 +412:hb_face_reference_table +413:SkStringPrintf\28char\20const*\2c\20...\29 +414:GrSurfaceProxyView::asTextureProxy\28\29\20const +415:RoughlyEqualUlps\28float\2c\20float\29 +416:GrGLSLVaryingHandler::addVarying\28char\20const*\2c\20GrGLSLVarying*\2c\20GrGLSLVaryingHandler::Interpolation\29 +417:skia_png_chunk_error +418:SkTDStorage::reserve\28int\29 +419:SkPath::Iter::next\28SkPoint*\29 +420:SkDynamicMemoryWStream::write\28void\20const*\2c\20unsigned\20long\29 +421:OT::Layout::Common::Coverage::get_coverage\28unsigned\20int\29\20const +422:GrQuad::MakeFromRect\28SkRect\20const&\2c\20SkMatrix\20const&\29 +423:round +424:SkRecord::grow\28\29 +425:SkRGBA4f<\28SkAlphaType\293>::toBytes_RGBA\28\29\20const +426:GrProcessor::operator\20new\28unsigned\20long\2c\20unsigned\20long\29 +427:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28SkSL::SymbolTable*\29\20const +428:skgpu::ganesh::SurfaceDrawContext::addDrawOp\28GrClip\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::function\20const&\29 +429:skgpu::ResourceKeyHash\28unsigned\20int\20const*\2c\20unsigned\20long\29 +430:VP8LoadFinalBytes +431:SkSL::TProgramVisitor::visitStatement\28SkSL::Statement\20const&\29 +432:SkSL::RP::Builder::discard_stack\28int\2c\20int\29 +433:SkPath::conicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\29 +434:SkCanvas::predrawNotify\28bool\29 +435:std::__2::__cloc\28\29 +436:sscanf +437:SkSurfaceProps::SkSurfaceProps\28\29 +438:SkStrikeSpec::~SkStrikeSpec\28\29 +439:SkPath::moveTo\28float\2c\20float\29 +440:GrSkSLFP::GrSkSLFP\28sk_sp\2c\20char\20const*\2c\20GrSkSLFP::OptFlags\29 +441:GrBackendFormat::GrBackendFormat\28\29 +442:__multf3 +443:VP8LReadBits +444:SkTDStorage::append\28int\29 +445:SkPath::isFinite\28\29\20const +446:SkMatrix::setScale\28float\2c\20float\29 +447:GrOpsRenderPass::setScissorRect\28SkIRect\20const&\29 +448:GrOpsRenderPass::bindPipeline\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +449:GrCaps::getDefaultBackendFormat\28GrColorType\2c\20skgpu::Renderable\29\20const +450:hb_draw_funcs_t::start_path\28void*\2c\20hb_draw_state_t&\29 +451:SkSL::ConstructorCompound::MakeFromConstants\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20double\20const*\29 +452:SkRuntimeEffect::MakeForShader\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +453:SkPath::isEmpty\28\29\20const +454:SkColorSpaceXformSteps::SkColorSpaceXformSteps\28SkColorSpace\20const*\2c\20SkAlphaType\2c\20SkColorSpace\20const*\2c\20SkAlphaType\29 +455:GrSimpleMeshDrawOpHelper::~GrSimpleMeshDrawOpHelper\28\29 +456:GrProcessorSet::GrProcessorSet\28GrPaint&&\29 +457:GrBackendFormats::AsGLFormat\28GrBackendFormat\20const&\29 +458:std::__2::locale::id::__get\28\29 +459:std::__2::locale::facet::facet\5babi:v160004\5d\28unsigned\20long\29 +460:skia_private::TArray::push_back_raw\28int\29 +461:hb_buffer_t::_infos_set_glyph_flags\28hb_glyph_info_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +462:SkSL::PipelineStage::PipelineStageCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +463:SkSL::Inliner::inlineExpression\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20SkSL::Expression\20const&\29 +464:SkSL::GLSLCodeGenerator::writeIdentifier\28std::__2::basic_string_view>\29 +465:SkPath::reset\28\29 +466:SkPath::operator=\28SkPath\20const&\29 +467:GrGeometryProcessor::AttributeSet::initImplicit\28GrGeometryProcessor::Attribute\20const*\2c\20int\29 +468:GrContext_Base::contextID\28\29\20const +469:FT_Stream_EnterFrame +470:AlmostEqualUlps\28float\2c\20float\29 +471:std::__2::locale::__imp::install\28std::__2::locale::facet*\2c\20long\29 +472:skia_png_read_data +473:SkSpinlock::contendedAcquire\28\29 +474: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 +475:SkSL::FunctionDeclaration::description\28\29\20const +476:SkPaint::setStyle\28SkPaint::Style\29 +477:SkMatrix::setRectToRect\28SkRect\20const&\2c\20SkRect\20const&\2c\20SkMatrix::ScaleToFit\29 +478:SkDPoint::approximatelyEqual\28SkDPoint\20const&\29\20const +479:GrSurfaceProxy::backingStoreDimensions\28\29\20const +480:GrOpsRenderPass::bindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +481:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +482:skgpu::ganesh::SurfaceContext::drawingManager\28\29 +483:skgpu::UniqueKey::GenerateDomain\28\29 +484:hb_buffer_t::_set_glyph_flags\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +485:emscripten_longjmp +486:GrMeshDrawOp::GrMeshDrawOp\28unsigned\20int\29 +487:FT_RoundFix +488:std::__2::unique_ptr::~unique_ptr\5babi:v160004\5d\28\29 +489:std::__2::unique_ptr::unique_ptr\5babi:v160004\5d\28unsigned\20char*\2c\20std::__2::__dependent_type\2c\20true>::__good_rval_ref_type\29 +490:hb_face_get_glyph_count +491:cf2_stack_pushFixed +492:byn$mgfn-shared$decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkNullBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +493:__multi3 +494:SkSL::RP::Builder::push_duplicates\28int\29 +495:SkMatrix::postTranslate\28float\2c\20float\29 +496:SkColorInfo::refColorSpace\28\29\20const +497:SkCanvas::concat\28SkMatrix\20const&\29 +498:SkBlockAllocator::reset\28\29 +499:SkBitmapDevice::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +500:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20SkFilterMode\2c\20SkMipmapMode\29 +501:GrGLSLVaryingHandler::addPassThroughAttribute\28GrShaderVar\20const&\2c\20char\20const*\2c\20GrGLSLVaryingHandler::Interpolation\29 +502:GrFragmentProcessor::registerChild\28std::__2::unique_ptr>\2c\20SkSL::SampleUsage\29 +503:FT_Stream_ReleaseFrame +504:std::__2::istreambuf_iterator>::operator*\5babi:v160004\5d\28\29\20const +505:skia::textlayout::TextStyle::TextStyle\28skia::textlayout::TextStyle\20const&\29 +506:hb_buffer_t::merge_clusters_impl\28unsigned\20int\2c\20unsigned\20int\29 +507:decltype\28fp.sanitize\28this\29\29\20hb_sanitize_context_t::_dispatch\28OT::Layout::Common::Coverage\20const&\2c\20hb_priority<1u>\29 +508:SkWStream::writePackedUInt\28unsigned\20long\29 +509:SkSL::RP::Builder::push_constant_i\28int\2c\20int\29 +510:SkSL::BreakStatement::~BreakStatement\28\29 +511:SkPaint::setShader\28sk_sp\29 +512:SkNullBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +513:SkBitmap::setImmutable\28\29 +514:GrPipeline::visitProxies\28std::__2::function\20const&\29\20const +515:GrGeometryProcessor::GrGeometryProcessor\28GrProcessor::ClassID\29 +516:std::__2::istreambuf_iterator>::operator*\5babi:v160004\5d\28\29\20const +517:SkSL::fold_expression\28SkSL::Position\2c\20double\2c\20SkSL::Type\20const*\29 +518:SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0::operator\28\29\28SkSL::FunctionDefinition\20const*\2c\20SkSL::FunctionDefinition\20const*\29\20const +519:SkSL::RP::Generator::binaryOp\28SkSL::Type\20const&\2c\20SkSL::RP::Generator::TypedOps\20const&\29 +520:SkJSONWriter::appendf\28char\20const*\2c\20...\29 +521:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29 +522:GrGeometryProcessor::Attribute&\20skia_private::TArray::emplace_back\28char\20const\20\28&\29\20\5b10\5d\2c\20GrVertexAttribType&&\2c\20SkSLType&&\29 +523:Cr_z_crc32 +524:skia_png_push_save_buffer +525:cosf +526:SkSL::Type::MakeAliasType\28std::__2::basic_string_view>\2c\20SkSL::Type\20const&\29 +527:SkSL::RP::SlotManager::getVariableSlots\28SkSL::Variable\20const&\29 +528:SkSL::RP::Builder::unary_op\28SkSL::RP::BuilderOp\2c\20int\29 +529:SkReadBuffer::readScalar\28\29 +530:GrProcessorSet::visitProxies\28std::__2::function\20const&\29\20const +531:GrGLTexture::target\28\29\20const +532:sk_srgb_singleton\28\29 +533:fmodf +534:fma +535:SkSurface_Base::aboutToDraw\28SkSurface::ContentChangeMode\29 +536:SkSL::Pool::FreeMemory\28void*\29 +537:SkPaint::SkPaint\28SkPaint&&\29 +538:SkDPoint::ApproximatelyEqual\28SkPoint\20const&\2c\20SkPoint\20const&\29 +539:SkBitmap::SkBitmap\28SkBitmap\20const&\29 +540:void\20std::__2::vector>\2c\20std::__2::allocator>>>::__push_back_slow_path>>\28std::__2::unique_ptr>&&\29 +541:std::__2::basic_string\2c\20std::__2::allocator>::__init_copy_ctor_external\28char\20const*\2c\20unsigned\20long\29 +542:skip_spaces +543:skcms_Transform +544:sk_realloc_throw\28void*\2c\20unsigned\20long\29 +545:emscripten::smart_ptr_trait>::get\28sk_sp\20const&\29 +546:cff2_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +547:cff1_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +548: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 +549:SkString::operator=\28SkString\20const&\29 +550:SkString::equals\28SkString\20const&\29\20const +551:SkSL::Type::toCompound\28SkSL::Context\20const&\2c\20int\2c\20int\29\20const +552:SkPath::transform\28SkMatrix\20const&\2c\20SkPath*\2c\20SkApplyPerspectiveClip\29\20const +553:SkPath::quadTo\28float\2c\20float\2c\20float\2c\20float\29 +554:SkCanvas::save\28\29 +555:SkBlockAllocator::addBlock\28int\2c\20int\29 +556:SkBitmap::tryAllocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29 +557:SkAAClipBlitter::~SkAAClipBlitter\28\29 +558:OT::hb_ot_apply_context_t::match_properties_mark\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +559:GrThreadSafeCache::VertexData::~VertexData\28\29 +560:GrShape::asPath\28SkPath*\2c\20bool\29\20const +561:GrShaderVar::appendDecl\28GrShaderCaps\20const*\2c\20SkString*\29\20const +562:GrPixmapBase::~GrPixmapBase\28\29 +563:GrGLSLVaryingHandler::emitAttributes\28GrGeometryProcessor\20const&\29 +564:void\20emscripten::internal::raw_destructor\28GrDirectContext*\29 +565:std::__2::unique_ptr::reset\5babi:v160004\5d\28unsigned\20char*\29 +566:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +567:skia_private::TArray::push_back\28SkPaint\20const&\29 +568:png_icc_profile_error +569:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression\20const&\29 +570:SkRasterClip::~SkRasterClip\28\29 +571:SkPixmap::reset\28SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +572:SkPathRef::~SkPathRef\28\29 +573:SkPath::countPoints\28\29\20const +574:SkPaint::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +575:SkPaint::canComputeFastBounds\28\29\20const +576:SkOpPtT::contains\28SkOpPtT\20const*\29\20const +577:SkOpAngle::segment\28\29\20const +578:SkMatrix::preConcat\28SkMatrix\20const&\29 +579:SkMatrix::mapVectors\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +580:SkMasks::getRed\28unsigned\20int\29\20const +581:SkMasks::getGreen\28unsigned\20int\29\20const +582:SkMasks::getBlue\28unsigned\20int\29\20const +583:SkColorInfo::shiftPerPixel\28\29\20const +584:GrProcessorSet::~GrProcessorSet\28\29 +585:GrMeshDrawOp::createProgramInfo\28GrMeshDrawTarget*\29 +586:FT_Stream_ReadFields +587:AutoLayerForImageFilter::~AutoLayerForImageFilter\28\29 +588:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +589:saveSetjmp +590:operator==\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +591:hb_face_t::load_num_glyphs\28\29\20const +592:emscripten::internal::MethodInvoker::invoke\28int\20\28SkAnimatedImage::*\20const&\29\28\29\2c\20SkAnimatedImage*\29 +593:emscripten::default_smart_ptr_trait>::construct_null\28\29 +594:VP8GetSignedValue +595:SkSafeMath::Mul\28unsigned\20long\2c\20unsigned\20long\29 +596:SkSL::Type::MakeVectorType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\29 +597:SkRasterPipeline::SkRasterPipeline\28SkArenaAlloc*\29 +598:SkPoint::setLength\28float\29 +599:OT::GDEF::accelerator_t::mark_set_covers\28unsigned\20int\2c\20unsigned\20int\29\20const +600:GrTextureProxy::mipmapped\28\29\20const +601:GrGpuResource::~GrGpuResource\28\29 +602:FT_Stream_GetULong +603:FT_Get_Char_Index +604:Cr_z__tr_flush_bits +605:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +606:void\20emscripten::internal::MemberAccess::setWire\28int\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform&\2c\20int\29 +607:std::__2::ctype::widen\5babi:v160004\5d\28char\29\20const +608:std::__2::__throw_overflow_error\5babi:v160004\5d\28char\20const*\29 +609:skia_private::THashMap::set\28char\20const*\2c\20unsigned\20int\29 +610:skia_png_chunk_report +611:skgpu::UniqueKey::operator=\28skgpu::UniqueKey\20const&\29 +612:sk_double_nearly_zero\28double\29 +613:int\20emscripten::internal::MemberAccess::getWire\28int\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform\20const&\29 +614:hb_font_get_glyph +615:ft_mem_qalloc +616:fit_linear\28skcms_Curve\20const*\2c\20int\2c\20float\2c\20float*\2c\20float*\2c\20float*\29 +617:_output_with_dotted_circle\28hb_buffer_t*\29 +618:WebPSafeMalloc +619:SkStream::readS32\28int*\29 +620:SkSL::GLSLCodeGenerator::getTypeName\28SkSL::Type\20const&\29 +621:SkRGBA4f<\28SkAlphaType\293>::FromColor\28unsigned\20int\29 +622:SkPath::Iter::Iter\28SkPath\20const&\2c\20bool\29 +623:SkMatrix::postConcat\28SkMatrix\20const&\29 +624:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_3::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +625:SkGlyph::rowBytes\28\29\20const +626:SkDrawable::getFlattenableType\28\29\20const +627:SkDrawable::getBounds\28\29 +628:SkDCubic::ptAtT\28double\29\20const +629:SkColorSpace::MakeSRGB\28\29 +630:SkColorInfo::SkColorInfo\28\29 +631:GrOpFlushState::drawMesh\28GrSimpleMesh\20const&\29 +632:GrImageInfo::GrImageInfo\28SkImageInfo\20const&\29 +633:DefaultGeoProc::Impl::~Impl\28\29 +634:skif::LayerSpace::mapRect\28skif::LayerSpace\20const&\29\20const +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:SkShaderBase::SkShaderBase\28\29 +640:SkSL::Type::coerceExpression\28std::__2::unique_ptr>\2c\20SkSL::Context\20const&\29\20const +641:SkSL::Type::MakeGenericType\28char\20const*\2c\20SkSpan\2c\20SkSL::Type\20const*\29 +642:SkSL::ConstantFolder::GetConstantValueForVariable\28SkSL::Expression\20const&\29 +643:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29 +644:SkRegion::setRect\28SkIRect\20const&\29 +645:SkRegion::SkRegion\28\29 +646:SkRecords::FillBounds::adjustForSaveLayerPaints\28SkRect*\2c\20int\29\20const +647:SkPathStroker::lineTo\28SkPoint\20const&\2c\20SkPath::Iter\20const*\29 +648:SkPaint::setPathEffect\28sk_sp\29 +649:SkPaint::setMaskFilter\28sk_sp\29 +650:SkPaint::setColor\28unsigned\20int\29 +651:SkPaint::setColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\29 +652:SkOpContourBuilder::flush\28\29 +653:SkImageFilter::getInput\28int\29\20const +654:SkData::MakeWithCopy\28void\20const*\2c\20unsigned\20long\29 +655:SkCanvas::~SkCanvas\28\29.1 +656:SkCanvas::restoreToCount\28int\29 +657:SkCanvas::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +658:SkAutoPixmapStorage::~SkAutoPixmapStorage\28\29 +659:GrMatrixEffect::Make\28SkMatrix\20const&\2c\20std::__2::unique_ptr>\29 +660:std::__2::char_traits::assign\28char&\2c\20char\20const&\29 +661:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +662:std::__2::__check_grouping\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int&\29 +663:skia_png_malloc +664:skia::textlayout::Cluster::run\28\29\20const +665:skgpu::ganesh::SurfaceDrawContext::drawFilledQuad\28GrClip\20const*\2c\20GrPaint&&\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\29 +666:sk_sp::~sk_sp\28\29 +667:png_write_complete_chunk +668:pad +669:hb_lockable_set_t::fini\28hb_mutex_t&\29 +670:ft_mem_alloc +671:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkCanvas&\2c\20unsigned\20long\2c\20SkBlendMode\29\2c\20SkCanvas*\2c\20unsigned\20long\2c\20SkBlendMode\29 +672:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +673:__ashlti3 +674:SkWBuffer::writeNoSizeCheck\28void\20const*\2c\20unsigned\20long\29 +675:SkTCoincident::setPerp\28SkTCurve\20const&\2c\20double\2c\20SkDPoint\20const&\2c\20SkTCurve\20const&\29 +676:SkStrokeRec::SkStrokeRec\28SkStrokeRec::InitStyle\29 +677:SkString::printf\28char\20const*\2c\20...\29 +678:SkSL::Type::MakeMatrixType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\2c\20signed\20char\29 +679:SkSL::Operator::tightOperatorName\28\29\20const +680:SkReadBuffer::readColor4f\28SkRGBA4f<\28SkAlphaType\293>*\29 +681:SkPixmap::reset\28\29 +682:SkPictureData::requiredPaint\28SkReadBuffer*\29\20const +683:SkPath::cubicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +684:SkPath::close\28\29 +685:SkPaintToGrPaint\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +686:SkPaint::setBlendMode\28SkBlendMode\29 +687:SkFindUnitQuadRoots\28float\2c\20float\2c\20float\2c\20float*\29 +688:SkDeque::push_back\28\29 +689:SkCanvas::internalQuickReject\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\29 +690:SkBinaryWriteBuffer::writeBool\28bool\29 +691:OT::hb_paint_context_t::return_t\20OT::Paint::dispatch\28OT::hb_paint_context_t*\29\20const +692:GrShape::bounds\28\29\20const +693: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 +694:GrPixmapBase::GrPixmapBase\28GrImageInfo\2c\20void*\2c\20unsigned\20long\29 +695:GrColorInfo::GrColorInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\29 +696:FT_Outline_Translate +697:FT_Load_Glyph +698:FT_GlyphLoader_CheckPoints +699:DefaultGeoProc::~DefaultGeoProc\28\29 +700:uprv_malloc_skia +701:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +702:std::__2::basic_string\2c\20std::__2::allocator>::__set_short_size\5babi:v160004\5d\28unsigned\20long\29 +703:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_size\5babi:v160004\5d\28unsigned\20long\29 +704:sinf +705:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28GrDirectContext&\2c\20unsigned\20long\29\2c\20GrDirectContext*\2c\20unsigned\20long\29 +706: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 +707:SkTextBlob::~SkTextBlob\28\29 +708:SkRasterPipeline::extend\28SkRasterPipeline\20const&\29 +709:SkMatrix::preTranslate\28float\2c\20float\29 +710:SkMatrix::mapXY\28float\2c\20float\2c\20SkPoint*\29\20const +711:SkMatrix::mapRadius\28float\29\20const +712:SkImageGenerator::onIsValid\28GrRecordingContext*\29\20const +713:SkIRect::join\28SkIRect\20const&\29 +714:SkData::MakeUninitialized\28unsigned\20long\29 +715:SkDQuad::RootsValidT\28double\2c\20double\2c\20double\2c\20double*\29 +716:SkDLine::nearPoint\28SkDPoint\20const&\2c\20bool*\29\20const +717:SkConic::chopIntoQuadsPOW2\28SkPoint*\2c\20int\29\20const +718:SkColorSpaceXformSteps::apply\28float*\29\20const +719:SkCodec::applyColorXform\28void*\2c\20void\20const*\2c\20int\29\20const +720:SkCachedData::internalRef\28bool\29\20const +721:SkBitmap::installPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29 +722:GrSurface::RefCntedReleaseProc::~RefCntedReleaseProc\28\29 +723:GrStyle::initPathEffect\28sk_sp\29 +724:GrProcessor::operator\20delete\28void*\29 +725:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::~Impl\28\29 +726:GrBufferAllocPool::~GrBufferAllocPool\28\29.1 +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:rewind\28GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +732:cf2_stack_popInt +733:SkSL::GLSLCodeGenerator::write\28std::__2::basic_string_view>\29 +734:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29 +735:SkPaint::setColorFilter\28sk_sp\29 +736:SkMatrixPriv::MapRect\28SkM44\20const&\2c\20SkRect\20const&\29 +737:SkImageInfo::MakeA8\28int\2c\20int\29 +738:SkImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +739:SkData::MakeWithProc\28void\20const*\2c\20unsigned\20long\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +740:SkData::MakeEmpty\28\29 +741:SkConic::computeQuadPOW2\28float\29\20const +742:SkColorTypeIsAlwaysOpaque\28SkColorType\29 +743:SkColorInfo::makeColorType\28SkColorType\29\20const +744:SkCodec::~SkCodec\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:std::__2::__throw_bad_optional_access\5babi:v160004\5d\28\29 +757:skia_png_malloc_base +758:skgpu::ganesh::AsView\28GrRecordingContext*\2c\20SkImage\20const*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +759:skcms_TransferFunction_eval +760:pow +761:hb_ot_face_t::init0\28hb_face_t*\29 +762:hb_lazy_loader_t\2c\20hb_face_t\2c\2025u\2c\20OT::GSUB_accelerator_t>::get\28\29\20const +763:__addtf3 +764:SkUTF::NextUTF8\28char\20const**\2c\20char\20const*\29 +765:SkTDStorage::reset\28\29 +766:SkScan::AntiHairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +767:SkSL::TProgramVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +768:SkSL::RP::Builder::label\28int\29 +769:SkSL::BinaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +770:SkRuntimeEffect::MakeForColorFilter\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +771:SkReadBuffer::skip\28unsigned\20long\2c\20unsigned\20long\29 +772:SkPath::countVerbs\28\29\20const +773:SkMatrix::set9\28float\20const*\29 +774:SkMatrix::getMaxScale\28\29\20const +775:SkImageInfo::computeByteSize\28unsigned\20long\29\20const +776:SkImageInfo::Make\28int\2c\20int\2c\20SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +777:SkImageFilter_Base::SkImageFilter_Base\28sk_sp\20const*\2c\20int\2c\20std::__2::optional\29 +778:SkFontMgr::countFamilies\28\29\20const +779:SkDrawBase::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20bool\2c\20bool\2c\20SkBlitter*\29\20const +780:SkDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +781:SkBlockAllocator::SkBlockAllocator\28SkBlockAllocator::GrowthPolicy\2c\20unsigned\20long\2c\20unsigned\20long\29 +782:SkBlender::Mode\28SkBlendMode\29 +783:ReadHuffmanCode +784:GrSurfaceProxy::~GrSurfaceProxy\28\29 +785:GrRenderTask::makeClosed\28GrRecordingContext*\29 +786:GrGpuBuffer::unmap\28\29 +787:GrContext_Base::options\28\29\20const +788:GrCaps::getReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +789:GrBufferAllocPool::reset\28\29 +790:FT_Stream_ReadByte +791:std::__2::char_traits::assign\28wchar_t&\2c\20wchar_t\20const&\29 +792:std::__2::char_traits::copy\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +793:std::__2::basic_string\2c\20std::__2::allocator>::begin\5babi:v160004\5d\28\29 +794:std::__2::__next_prime\28unsigned\20long\29 +795:std::__2::__libcpp_snprintf_l\28char*\2c\20unsigned\20long\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +796:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29 +797:is_equal\28std::type_info\20const*\2c\20std::type_info\20const*\2c\20bool\29 +798:hb_buffer_t::sync\28\29 +799:cbrtf +800:__floatsitf +801:WebPSafeCalloc +802:StreamRemainingLengthIsBelow\28SkStream*\2c\20unsigned\20long\29 +803:SkSize\20skif::Mapping::map\28SkSize\20const&\2c\20SkMatrix\20const&\29 +804:SkSL::RP::Builder::swizzle\28int\2c\20SkSpan\29 +805:SkSL::Parser::expression\28\29 +806:SkRuntimeEffect::Uniform::sizeInBytes\28\29\20const +807:SkRGBA4f<\28SkAlphaType\293>::toSkColor\28\29\20const +808:SkPath::isConvex\28\29\20const +809:SkImageFilter_Base::getFlattenableType\28\29\20const +810:SkImageFilter_Base::getChildOutputLayerBounds\28int\2c\20skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +811:SkImageFilter_Base::getChildInputLayerBounds\28int\2c\20skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +812:SkIDChangeListener::List::~List\28\29 +813:SkDQuad::ptAtT\28double\29\20const +814:SkDLine::exactPoint\28SkDPoint\20const&\29\20const +815:SkDConic::ptAtT\28double\29\20const +816:SkColorInfo::makeAlphaType\28SkAlphaType\29\20const +817:SkCanvas::restore\28\29 +818:SkCanvas::drawImage\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +819:SkBitmap::setInfo\28SkImageInfo\20const&\2c\20unsigned\20long\29 +820:SkAAClip::Builder::addRun\28int\2c\20int\2c\20unsigned\20int\2c\20int\29 +821:GrSkSLFP::addChild\28std::__2::unique_ptr>\2c\20bool\29 +822:GrGpuResource::hasRef\28\29\20const +823:GrGLSLShaderBuilder::appendTextureLookup\28SkString*\2c\20GrResourceHandle\2c\20char\20const*\29\20const +824:GrFragmentProcessor::cloneAndRegisterAllChildProcessors\28GrFragmentProcessor\20const&\29 +825:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::~SwizzleFragmentProcessor\28\29 +826:GrDrawOpAtlas::~GrDrawOpAtlas\28\29 +827:GrBackendFormat::GrBackendFormat\28GrBackendFormat\20const&\29 +828:AutoLayerForImageFilter::AutoLayerForImageFilter\28SkCanvas*\2c\20SkPaint\20const&\2c\20SkRect\20const*\2c\20bool\29 +829:AutoFTAccess::AutoFTAccess\28SkTypeface_FreeType\20const*\29 +830:AlmostPequalUlps\28float\2c\20float\29 +831:void\20std::__2::vector>\2c\20std::__2::allocator>>>::__emplace_back_slow_path>\28unsigned\20int\20const&\2c\20sk_sp&&\29 +832:strchr +833:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20char\29\20const +834:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char\20const*\29 +835:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_cap\5babi:v160004\5d\28unsigned\20long\29 +836:skia_png_reset_crc +837:skia_png_benign_error +838:memchr +839:hb_buffer_t::sync_so_far\28\29 +840:hb_buffer_t::move_to\28unsigned\20int\29 +841:VP8ExitCritical +842:SkTDStorage::resize\28int\29 +843:SkSwizzler::swizzle\28void*\2c\20unsigned\20char\20const*\29 +844:SkStrokeRec::SkStrokeRec\28SkPaint\20const&\2c\20float\29 +845:SkStream::readPackedUInt\28unsigned\20long*\29 +846:SkSL::Type::coercionCost\28SkSL::Type\20const&\29\20const +847:SkSL::Type::clone\28SkSL::Context\20const&\2c\20SkSL::SymbolTable*\29\20const +848:SkSL::RP::Generator::writeStatement\28SkSL::Statement\20const&\29 +849: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 +850:SkRuntimeEffectBuilder::writableUniformData\28\29 +851:SkRuntimeEffect::findUniform\28std::__2::basic_string_view>\29\20const +852:SkResourceCache::Key::init\28void*\2c\20unsigned\20long\20long\2c\20unsigned\20long\29 +853:SkReadBuffer::skip\28unsigned\20long\29 +854:SkReadBuffer::readFlattenable\28SkFlattenable::Type\29 +855:SkRRect::initializeRect\28SkRect\20const&\29 +856:SkPaint::asBlendMode\28\29\20const +857:SkGlyph::path\28\29\20const +858:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\29 +859:GrRenderTargetProxy::arenas\28\29 +860:GrOpFlushState::caps\28\29\20const +861:GrGpuResource::hasNoCommandBufferUsages\28\29\20const +862:GrGeometryProcessor::ProgramImpl::WriteLocalCoord\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20GrShaderVar\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +863:GrGLTextureParameters::SamplerOverriddenState::SamplerOverriddenState\28\29 +864:GrGLGpu::deleteFramebuffer\28unsigned\20int\29 +865:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\29 +866:FT_Stream_ReadULong +867:FT_Get_Module +868:Cr_z__tr_flush_block +869:AlmostBequalUlps\28float\2c\20float\29 +870:uprv_realloc_skia +871:std::__2::numpunct::truename\5babi:v160004\5d\28\29\20const +872:std::__2::moneypunct::do_grouping\28\29\20const +873:std::__2::locale::use_facet\28std::__2::locale::id&\29\20const +874:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29\20const +875:std::__2::basic_string\2c\20std::__2::allocator>::empty\5babi:v160004\5d\28\29\20const +876:sktext::gpu::BagOfBytes::needMoreBytes\28int\2c\20int\29 +877:skia_png_save_int_32 +878:skia_png_safecat +879:skia_png_gamma_significant +880:skgpu::ganesh::SurfaceContext::readPixels\28GrDirectContext*\2c\20GrPixmap\2c\20SkIPoint\29 +881:hb_lazy_loader_t\2c\20hb_face_t\2c\2026u\2c\20OT::GPOS_accelerator_t>::get\28\29\20const +882:hb_font_get_nominal_glyph +883:hb_buffer_t::clear_output\28\29 +884:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28SkPaint\20const&\29\2c\20SkCanvas*\2c\20SkPaint*\29 +885:emscripten::internal::FunctionInvoker::invoke\28unsigned\20long\20\28**\29\28GrDirectContext&\29\2c\20GrDirectContext*\29 +886:cff_parse_num +887:\28anonymous\20namespace\29::write_trc_tag\28skcms_Curve\20const&\29 +888:SkWStream::writeScalarAsText\28float\29 +889:SkTSect::SkTSect\28SkTCurve\20const&\29 +890:SkString::set\28char\20const*\2c\20unsigned\20long\29 +891:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Context\20const&\2c\20SkSL::Symbol*\29 +892:SkSL::Swizzle::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20skia_private::FixedArray<4\2c\20signed\20char>\29 +893:SkSL::Parser::layoutInt\28\29 +894:SkSL::Parser::expectIdentifier\28SkSL::Token*\29 +895:SkRegion::Cliperator::next\28\29 +896:SkRegion::Cliperator::Cliperator\28SkRegion\20const&\2c\20SkIRect\20const&\29 +897:SkRRect::setOval\28SkRect\20const&\29 +898:SkPictureRecorder::~SkPictureRecorder\28\29 +899:SkPathRef::CreateEmpty\28\29 +900:SkPath::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +901:SkPaint::operator=\28SkPaint&&\29 +902:SkMasks::getAlpha\28unsigned\20int\29\20const +903:SkM44::setConcat\28SkM44\20const&\2c\20SkM44\20const&\29 +904:SkImageFilters::Crop\28SkRect\20const&\2c\20SkTileMode\2c\20sk_sp\29 +905:SkImageFilter_Base::getChildOutput\28int\2c\20skif::Context\20const&\29\20const +906:SkIDChangeListener::List::List\28\29 +907:SkData::MakeFromMalloc\28void\20const*\2c\20unsigned\20long\29 +908:SkDRect::setBounds\28SkTCurve\20const&\29 +909:SkColorFilter::isAlphaUnchanged\28\29\20const +910:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +911:SkCanvas::translate\28float\2c\20float\29 +912:SkBitmapCache::Rec::getKey\28\29\20const +913:PS_Conv_ToFixed +914: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 +915:GrTriangulator::Line::intersect\28GrTriangulator::Line\20const&\2c\20SkPoint*\29\20const +916:GrSimpleMeshDrawOpHelper::isCompatible\28GrSimpleMeshDrawOpHelper\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +917:GrQuad::MakeFromSkQuad\28SkPoint\20const*\2c\20SkMatrix\20const&\29 +918:GrOpsRenderPass::bindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +919:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkISize\20const&\29 +920:GrGLSLShaderBuilder::appendTextureLookup\28GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +921:GrColorInfo::GrColorInfo\28SkColorInfo\20const&\29 +922:AlmostDequalUlps\28double\2c\20double\29 +923:tt_face_get_name +924:std::__2::vector>::size\5babi:v160004\5d\28\29\20const +925:std::__2::to_string\28long\20long\29 +926:std::__2::__libcpp_locale_guard::~__libcpp_locale_guard\5babi:v160004\5d\28\29 +927:std::__2::__libcpp_locale_guard::__libcpp_locale_guard\5babi:v160004\5d\28__locale_struct*&\29 +928:skif::FilterResult::~FilterResult\28\29 +929:skia_png_app_error +930:skgpu::ganesh::SurfaceFillContext::getOpsTask\28\29 +931:isdigit +932:hb_sanitize_context_t::return_t\20OT::Paint::dispatch\28hb_sanitize_context_t*\29\20const +933:hb_ot_layout_lookup_would_substitute +934:hb_buffer_t::unsafe_to_break\28unsigned\20int\2c\20unsigned\20int\29 +935:ft_module_get_service +936:expf +937:cf2_hintmap_map +938: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 +939:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28\29\20const +940:__sindf +941:__shlim +942:__cosdf +943:SkTiff::ImageFileDirectory::getEntryValuesGeneric\28unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20int\2c\20void*\29\20const +944:SkSurface::getCanvas\28\29 +945:SkSL::cast_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +946:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitType\28SkSL::Type\20const&\29 +947:SkSL::VariableReference::VariableReference\28SkSL::Position\2c\20SkSL::Variable\20const*\2c\20SkSL::VariableRefKind\29 +948:SkSL::Variable::initialValue\28\29\20const +949:SkSL::SymbolTable::lookup\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +950:SkSL::SymbolTable::addArrayDimension\28SkSL::Context\20const&\2c\20SkSL::Type\20const*\2c\20int\29 +951:SkSL::StringStream::str\28\29\20const +952: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 +953:SkSL::RP::Generator::makeLValue\28SkSL::Expression\20const&\2c\20bool\29 +954:SkSL::RP::DynamicIndexLValue::dynamicSlotRange\28\29 +955:SkSL::GLSLCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +956:SkSL::Expression::description\28\29\20const +957:SkSL::Analysis::UpdateVariableRefKind\28SkSL::Expression*\2c\20SkSL::VariableRefKind\2c\20SkSL::ErrorReporter*\29 +958:SkRegion::setEmpty\28\29 +959:SkRasterPipeline::appendLoadDst\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +960:SkRRect::setRectRadii\28SkRect\20const&\2c\20SkPoint\20const*\29 +961:SkPointPriv::DistanceToLineSegmentBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +962:SkPath::arcTo\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +963:SkPath::addPath\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPath::AddPathMode\29 +964:SkPaint::setImageFilter\28sk_sp\29 +965:SkOpSpanBase::contains\28SkOpSegment\20const*\29\20const +966:SkMipmap::ComputeLevelCount\28int\2c\20int\29 +967:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint\20const*\2c\20int\29\20const +968:SkMatrix::isSimilarity\28float\29\20const +969:SkKnownRuntimeEffects::GetKnownRuntimeEffect\28SkKnownRuntimeEffects::StableKey\29 +970:SkIDChangeListener::List::changed\28\29 +971:SkDynamicMemoryWStream::detachAsData\28\29 +972:SkColorSpace::Equals\28SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +973:SkColorFilter::filterColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\2c\20SkColorSpace*\29\20const +974:SkCanvas::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +975:SkAutoPixmapStorage::SkAutoPixmapStorage\28\29 +976:SkAAClipBlitterWrapper::init\28SkRasterClip\20const&\2c\20SkBlitter*\29 +977:SkAAClipBlitterWrapper::SkAAClipBlitterWrapper\28\29 +978:RunBasedAdditiveBlitter::flush\28\29 +979:GrSurface::onRelease\28\29 +980:GrStyledShape::unstyledKeySize\28\29\20const +981:GrShape::convex\28bool\29\20const +982:GrRecordingContext::threadSafeCache\28\29 +983:GrProxyProvider::caps\28\29\20const +984:GrOp::GrOp\28unsigned\20int\29 +985:GrMakeUncachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +986:GrGLSLShaderBuilder::getMangledFunctionName\28char\20const*\29 +987:GrGLGpu::bindBuffer\28GrGpuBufferType\2c\20GrBuffer\20const*\29 +988:GrGLAttribArrayState::set\28GrGLGpu*\2c\20int\2c\20GrBuffer\20const*\2c\20GrVertexAttribType\2c\20SkSLType\2c\20int\2c\20unsigned\20long\2c\20int\29 +989:GrAAConvexTessellator::Ring::computeNormals\28GrAAConvexTessellator\20const&\29 +990:GrAAConvexTessellator::Ring::computeBisectors\28GrAAConvexTessellator\20const&\29 +991:FT_Activate_Size +992:Cr_z_adler32 +993:vsnprintf +994:void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +995:void\20extend_pts<\28SkPaint::Cap\291>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +996:top12 +997:toSkImageInfo\28SimpleImageInfo\20const&\29 +998:std::__2::pair::type\2c\20std::__2::__unwrap_ref_decay::type>\20std::__2::make_pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +999:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +1000: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 +1001: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 +1002:std::__2::__num_put_base::__identify_padding\28char*\2c\20char*\2c\20std::__2::ios_base\20const&\29 +1003:std::__2::__num_get_base::__get_base\28std::__2::ios_base&\29 +1004:std::__2::__libcpp_asprintf_l\28char**\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +1005:skia_private::THashTable::Traits>::removeSlot\28int\29 +1006:skia_png_zstream_error +1007:skia::textlayout::TextLine::iterateThroughVisualRuns\28bool\2c\20std::__2::function\2c\20float*\29>\20const&\29\20const +1008:skia::textlayout::ParagraphImpl::cluster\28unsigned\20long\29 +1009:skia::textlayout::Cluster::runOrNull\28\29\20const +1010:skgpu::ganesh::SurfaceFillContext::replaceOpsTask\28\29 +1011:skcms_TransferFunction_getType +1012:skcms_GetTagBySignature +1013:read_curve\28unsigned\20char\20const*\2c\20unsigned\20int\2c\20skcms_Curve*\2c\20unsigned\20int*\29 +1014: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 +1015: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 +1016:hb_serialize_context_t::pop_pack\28bool\29 +1017:hb_lazy_loader_t\2c\20hb_face_t\2c\206u\2c\20hb_blob_t>::get\28\29\20const +1018:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::__wrap_iter\20const&\2c\20std::__2::__wrap_iter\20const&\29 +1019:afm_parser_read_vals +1020:__extenddftf2 +1021:\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29 +1022:\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 +1023:\28anonymous\20namespace\29::colrv1_transform\28FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\2c\20SkCanvas*\2c\20SkMatrix*\29 +1024:WebPRescalerImport +1025:SkTDStorage::removeShuffle\28int\29 +1026:SkString::SkString\28char\20const*\2c\20unsigned\20long\29 +1027:SkScan::HairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +1028:SkSL::ProgramUsage::get\28SkSL::Variable\20const&\29\20const +1029: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 +1030:SkSL::InlineCandidateAnalyzer::visitExpression\28std::__2::unique_ptr>*\29 +1031:SkSL::GLSLCodeGenerator::getTypePrecision\28SkSL::Type\20const&\29 +1032:SkReadBuffer::readByteArray\28void*\2c\20unsigned\20long\29 +1033:SkRasterPipeline::run\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +1034:SkRBuffer::read\28void*\2c\20unsigned\20long\29 +1035:SkPictureData::optionalPaint\28SkReadBuffer*\29\20const +1036:SkPathWriter::isClosed\28\29\20const +1037:SkPath::isRect\28SkRect*\2c\20bool*\2c\20SkPathDirection*\29\20const +1038:SkPath::getGenerationID\28\29\20const +1039:SkPaint::setStrokeWidth\28float\29 +1040:SkOpSegment::nextChase\28SkOpSpanBase**\2c\20int*\2c\20SkOpSpan**\2c\20SkOpSpanBase**\29\20const +1041:SkOpSegment::addCurveTo\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkPathWriter*\29\20const +1042:SkMemoryStream::Make\28sk_sp\29 +1043:SkMatrix::preScale\28float\2c\20float\29 +1044:SkMatrix::postScale\28float\2c\20float\29 +1045:SkMask::computeImageSize\28\29\20const +1046:SkIntersections::removeOne\28int\29 +1047:SkImageInfo::Make\28int\2c\20int\2c\20SkColorType\2c\20SkAlphaType\29 +1048:SkDevice::makeSpecial\28SkBitmap\20const&\29 +1049:SkDLine::ptAtT\28double\29\20const +1050:SkBulkGlyphMetrics::~SkBulkGlyphMetrics\28\29 +1051:SkBitmap::peekPixels\28SkPixmap*\29\20const +1052:SkAAClip::setEmpty\28\29 +1053:PS_Conv_Strtol +1054:OT::Layout::GSUB_impl::SubstLookup*\20hb_serialize_context_t::push\28\29 +1055:GrTriangulator::makeConnectingEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\2c\20int\29 +1056:GrTextureProxy::~GrTextureProxy\28\29 +1057: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 +1058:GrResourceAllocator::addInterval\28GrSurfaceProxy*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20GrResourceAllocator::ActualUse\2c\20GrResourceAllocator::AllowRecycling\29 +1059:GrRecordingContextPriv::makeSFCWithFallback\28GrImageInfo\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1060:GrGpuBuffer::updateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +1061:GrGLTextureParameters::NonsamplerState::NonsamplerState\28\29 +1062:GrGLSLShaderBuilder::~GrGLSLShaderBuilder\28\29 +1063:GrGLSLProgramBuilder::nameVariable\28char\2c\20char\20const*\2c\20bool\29 +1064:GrGLGpu::prepareToDraw\28GrPrimitiveType\29 +1065:GrGLFormatFromGLEnum\28unsigned\20int\29 +1066:GrBackendTexture::getBackendFormat\28\29\20const +1067:GrBackendFormats::MakeGL\28unsigned\20int\2c\20unsigned\20int\29 +1068:GrBackendFormatToCompressionType\28GrBackendFormat\20const&\29 +1069:FilterLoop24_C +1070:FT_Stream_Skip +1071:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +1072:AAT::Lookup::sanitize\28hb_sanitize_context_t*\29\20const +1073:uprv_free_skia +1074:strcpy +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\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +1076: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 +1077: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 +1078:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +1079:std::__2::char_traits::eq_int_type\28int\2c\20int\29 +1080:std::__2::basic_string\2c\20std::__2::allocator>::__get_long_cap\5babi:v160004\5d\28\29\20const +1081:skif::LayerSpace::ceil\28\29\20const +1082:skia_private::TArray::push_back\28float\20const&\29 +1083:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +1084:skia_png_write_finish_row +1085:skia::textlayout::ParagraphImpl::ensureUTF16Mapping\28\29 +1086:scalbn +1087:hb_lazy_loader_t\2c\20hb_face_t\2c\2022u\2c\20hb_blob_t>::get\28\29\20const +1088:hb_lazy_loader_t\2c\20hb_face_t\2c\2024u\2c\20OT::GDEF_accelerator_t>::get\28\29\20const +1089:hb_buffer_get_glyph_infos +1090:hb_buffer_destroy +1091:cff2_path_param_t::line_to\28CFF::point_t\20const&\29 +1092:cff1_path_param_t::line_to\28CFF::point_t\20const&\29 +1093:cf2_stack_getReal +1094:byn$mgfn-shared$GrGLProgramDataManager::set1iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +1095:antifilldot8\28int\2c\20int\2c\20int\2c\20int\2c\20SkBlitter*\2c\20bool\29 +1096:afm_stream_skip_spaces +1097:WebPRescalerInit +1098:WebPRescalerExportRow +1099:SkWStream::writeDecAsText\28int\29 +1100:SkTextBlobBuilder::allocInternal\28SkFont\20const&\2c\20SkTextBlob::GlyphPositioning\2c\20int\2c\20int\2c\20SkPoint\2c\20SkRect\20const*\29 +1101:SkTDStorage::append\28void\20const*\2c\20int\29 +1102:SkString::Rec::Make\28char\20const*\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +1103:SkStrike::digestFor\28skglyph::ActionType\2c\20SkPackedGlyphID\29 +1104:SkShaders::Color\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\29 +1105:SkShader::makeWithLocalMatrix\28SkMatrix\20const&\29\20const +1106:SkSafeMath::Add\28unsigned\20long\2c\20unsigned\20long\29 +1107:SkSL::Parser::assignmentExpression\28\29 +1108:SkSL::ConstructorSplat::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1109:SkSL::ConstructorScalarCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1110:SkResourceCache::Find\28SkResourceCache::Key\20const&\2c\20bool\20\28*\29\28SkResourceCache::Rec\20const&\2c\20void*\29\2c\20void*\29 +1111:SkRegion::SkRegion\28SkIRect\20const&\29 +1112:SkRect::toQuad\28SkPoint*\29\20const +1113:SkRasterPipeline::appendTransferFunction\28skcms_TransferFunction\20const&\29 +1114:SkRasterPipeline::appendStore\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +1115:SkRasterPipeline::appendConstantColor\28SkArenaAlloc*\2c\20float\20const*\29 +1116:SkRasterClip::SkRasterClip\28\29 +1117:SkRRect::checkCornerContainment\28float\2c\20float\29\20const +1118:SkPictureData::getImage\28SkReadBuffer*\29\20const +1119:SkPathMeasure::getLength\28\29 +1120:SkPathBuilder::~SkPathBuilder\28\29 +1121:SkPathBuilder::detach\28\29 +1122:SkPathBuilder::SkPathBuilder\28\29 +1123:SkPath::addPoly\28SkPoint\20const*\2c\20int\2c\20bool\29 +1124:SkPaint::refPathEffect\28\29\20const +1125:SkMipmap::getLevel\28int\2c\20SkMipmap::Level*\29\20const +1126:SkJSONWriter::endArray\28\29 +1127:SkJSONWriter::appendCString\28char\20const*\2c\20char\20const*\29 +1128:SkIntersections::setCoincident\28int\29 +1129:SkImageInfo::computeOffset\28int\2c\20int\2c\20unsigned\20long\29\20const +1130:SkImageFilter_Base::flatten\28SkWriteBuffer&\29\20const +1131:SkImageFilter::countInputs\28\29\20const +1132:SkDrawBase::SkDrawBase\28\29 +1133:SkDLine::NearPointV\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1134:SkDLine::NearPointH\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1135:SkDLine::ExactPointV\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1136:SkDLine::ExactPointH\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +1137:SkColorSpaceXformSteps::apply\28SkRasterPipeline*\29\20const +1138:SkColorFilter::asAColorMode\28unsigned\20int*\2c\20SkBlendMode*\29\20const +1139:SkCodec::SkCodec\28SkEncodedInfo&&\2c\20skcms_PixelFormat\2c\20std::__2::unique_ptr>\2c\20SkEncodedOrigin\29 +1140:SkCanvas::drawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +1141:SkCanvas::drawColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +1142:SkCanvas::aboutToDraw\28SkPaint\20const&\2c\20SkRect\20const*\2c\20SkEnumBitMask\29 +1143:SkBulkGlyphMetrics::SkBulkGlyphMetrics\28SkStrikeSpec\20const&\29 +1144:SkBlockAllocator::releaseBlock\28SkBlockAllocator::Block*\29 +1145:SkBitmap::asImage\28\29\20const +1146:SkAAClipBlitterWrapper::SkAAClipBlitterWrapper\28SkRasterClip\20const&\2c\20SkBlitter*\29 +1147:OT::MVAR::get_var\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\29\20const +1148:GrXferProcessor::GrXferProcessor\28GrProcessor::ClassID\2c\20bool\2c\20GrProcessorAnalysisCoverage\29 +1149:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20GrCaps\20const&\2c\20float\20const*\29 +1150:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\29 +1151:GrSimpleMeshDrawOpHelper::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20bool*\29 +1152:GrResourceProvider::findResourceByUniqueKey\28skgpu::UniqueKey\20const&\29 +1153:GrRecordingContext::OwnedArenas::get\28\29 +1154: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 +1155:GrProxyProvider::assignUniqueKeyToProxy\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\29 +1156:GrProcessorSet::finalize\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrCaps\20const&\2c\20GrClampType\2c\20SkRGBA4f<\28SkAlphaType\292>*\29 +1157:GrOpFlushState::allocator\28\29 +1158:GrOp::cutChain\28\29 +1159:GrMeshDrawTarget::makeVertexWriter\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +1160:GrGpuResource::GrGpuResource\28GrGpu*\2c\20std::__2::basic_string_view>\29 +1161:GrGeometryProcessor::TextureSampler::reset\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +1162:GrGeometryProcessor::AttributeSet::end\28\29\20const +1163:GrGeometryProcessor::AttributeSet::Iter::operator++\28\29 +1164:GrGeometryProcessor::AttributeSet::Iter::operator*\28\29\20const +1165:GrGLTextureParameters::set\28GrGLTextureParameters::SamplerOverriddenState\20const*\2c\20GrGLTextureParameters::NonsamplerState\20const&\2c\20unsigned\20long\20long\29 +1166:GrClip::GetPixelIBounds\28SkRect\20const&\2c\20GrAA\2c\20GrClip::BoundsType\29 +1167:GrBackendTexture::~GrBackendTexture\28\29 +1168:FT_Outline_Get_CBox +1169:FT_Get_Sfnt_Table +1170:std::__2::vector>::__destroy_vector::__destroy_vector\28std::__2::vector>&\29 +1171:std::__2::moneypunct::negative_sign\5babi:v160004\5d\28\29\20const +1172:std::__2::moneypunct::neg_format\5babi:v160004\5d\28\29\20const +1173:std::__2::moneypunct::frac_digits\5babi:v160004\5d\28\29\20const +1174:std::__2::moneypunct::do_pos_format\28\29\20const +1175:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +1176:std::__2::char_traits::copy\28wchar_t*\2c\20wchar_t\20const*\2c\20unsigned\20long\29 +1177:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1178:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1179:std::__2::basic_string\2c\20std::__2::allocator>::__set_size\5babi:v160004\5d\28unsigned\20long\29 +1180:std::__2::basic_string\2c\20std::__2::allocator>::__assign_external\28char\20const*\2c\20unsigned\20long\29 +1181:std::__2::__itoa::__append2\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1182:snprintf +1183:sktext::gpu::GlyphVector::glyphs\28\29\20const +1184:sktext::SkStrikePromise::SkStrikePromise\28sktext::SkStrikePromise&&\29 +1185:skif::FilterResult::resolve\28skif::Context\20const&\2c\20skif::LayerSpace\2c\20bool\29\20const +1186:skif::FilterResult::analyzeBounds\28SkMatrix\20const&\2c\20SkIRect\20const&\2c\20skif::FilterResult::BoundsScope\29\20const +1187:skia_png_read_finish_row +1188:skia_png_handle_unknown +1189:skia_png_gamma_correct +1190:skia_png_colorspace_sync +1191:skia_png_app_warning +1192:skia::textlayout::TextStyle::operator=\28skia::textlayout::TextStyle\20const&\29 +1193:skia::textlayout::TextLine::offset\28\29\20const +1194:skia::textlayout::Run::placeholderStyle\28\29\20const +1195:skia::textlayout::Cluster::Cluster\28skia::textlayout::ParagraphImpl*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkSpan\2c\20float\2c\20float\29 +1196:skgpu::ganesh::SurfaceFillContext::fillRectWithFP\28SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +1197: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 +1198:skgpu::ganesh::SurfaceContext::PixelTransferResult::~PixelTransferResult\28\29 +1199:skgpu::ganesh::ClipStack::SaveRecord::state\28\29\20const +1200:sk_doubles_nearly_equal_ulps\28double\2c\20double\2c\20unsigned\20char\29 +1201:ps_parser_to_token +1202:isspace +1203:hb_face_t::load_upem\28\29\20const +1204:hb_buffer_t::merge_out_clusters\28unsigned\20int\2c\20unsigned\20int\29 +1205:hb_buffer_t::enlarge\28unsigned\20int\29 +1206:hb_buffer_reverse +1207: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 +1208:cff_index_init +1209:cf2_glyphpath_curveTo +1210:atan2f +1211:WebPCopyPlane +1212:SkTMaskGamma_build_correcting_lut\28unsigned\20char*\2c\20unsigned\20int\2c\20float\2c\20SkColorSpaceLuminance\20const&\2c\20float\29 +1213:SkSurface_Raster::type\28\29\20const +1214:SkString::swap\28SkString&\29 +1215:SkString::reset\28\29 +1216:SkSampler::Fill\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::ZeroInitialized\29 +1217:SkSL::Type::MakeTextureType\28char\20const*\2c\20SpvDim_\2c\20bool\2c\20bool\2c\20bool\2c\20SkSL::Type::TextureAccess\29 +1218:SkSL::Type::MakeSpecialType\28char\20const*\2c\20char\20const*\2c\20SkSL::Type::TypeKind\29 +1219:SkSL::RP::Builder::push_slots_or_immutable\28SkSL::RP::SlotRange\2c\20SkSL::RP::BuilderOp\29 +1220:SkSL::RP::Builder::push_clone_from_stack\28SkSL::RP::SlotRange\2c\20int\2c\20int\29 +1221:SkSL::Program::~Program\28\29 +1222:SkSL::PipelineStage::PipelineStageCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +1223:SkSL::Operator::isAssignment\28\29\20const +1224:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mul\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +1225:SkSL::InlineCandidateAnalyzer::visitStatement\28std::__2::unique_ptr>*\2c\20bool\29 +1226:SkSL::GLSLCodeGenerator::writeModifiers\28SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20bool\29 +1227:SkSL::ExpressionStatement::Make\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +1228:SkSL::ConstructorCompound::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +1229:SkSL::Analysis::GetReturnComplexity\28SkSL::FunctionDefinition\20const&\29 +1230:SkSL::AliasType::resolve\28\29\20const +1231:SkResourceCache::Add\28SkResourceCache::Rec*\2c\20void*\29 +1232:SkRegion::writeToMemory\28void*\29\20const +1233:SkReadBuffer::readMatrix\28SkMatrix*\29 +1234:SkReadBuffer::readBool\28\29 +1235:SkRasterClip::setRect\28SkIRect\20const&\29 +1236:SkRasterClip::SkRasterClip\28SkRasterClip\20const&\29 +1237:SkPathMeasure::~SkPathMeasure\28\29 +1238:SkPathMeasure::SkPathMeasure\28SkPath\20const&\2c\20bool\2c\20float\29 +1239:SkPath::swap\28SkPath&\29 +1240:SkParse::FindScalars\28char\20const*\2c\20float*\2c\20int\29 +1241:SkPaint::operator=\28SkPaint\20const&\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:SkColorFilter::makeComposed\28sk_sp\29\20const +1257:SkChopQuadAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +1258:SkCanvas::drawImageRect\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +1259:SkBmpCodec::getDstRow\28int\2c\20int\29\20const +1260:SkBlockMemoryStream::getLength\28\29\20const +1261:SkAutoDescriptor::SkAutoDescriptor\28\29 +1262:OT::DeltaSetIndexMap::sanitize\28hb_sanitize_context_t*\29\20const +1263:OT::ClassDef::sanitize\28hb_sanitize_context_t*\29\20const +1264:GrTriangulator::Comparator::sweep_lt\28SkPoint\20const&\2c\20SkPoint\20const&\29\20const +1265:GrTextureProxy::textureType\28\29\20const +1266:GrSurfaceProxy::createSurfaceImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\29\20const +1267:GrStyledShape::writeUnstyledKey\28unsigned\20int*\29\20const +1268:GrStyledShape::simplify\28\29 +1269:GrSkSLFP::setInput\28std::__2::unique_ptr>\29 +1270:GrSimpleMeshDrawOpHelperWithStencil::GrSimpleMeshDrawOpHelperWithStencil\28GrProcessorSet*\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +1271:GrShape::operator=\28GrShape\20const&\29 +1272:GrResourceProvider::createPatternedIndexBuffer\28unsigned\20short\20const*\2c\20int\2c\20int\2c\20int\2c\20skgpu::UniqueKey\20const*\29 +1273:GrRenderTarget::~GrRenderTarget\28\29 +1274:GrRecordingContextPriv::makeSC\28GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +1275:GrOpFlushState::detachAppliedClip\28\29 +1276:GrGpuBuffer::map\28\29 +1277:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\29 +1278:GrGLSLShaderBuilder::declAppend\28GrShaderVar\20const&\29 +1279:GrGLGpu::didDrawTo\28GrRenderTarget*\29 +1280:GrFragmentProcessors::Make\28GrRecordingContext*\2c\20SkColorFilter\20const*\2c\20std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1281:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +1282:GrCaps::validateSurfaceParams\28SkISize\20const&\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20GrTextureType\29\20const +1283:GrBufferAllocPool::putBack\28unsigned\20long\29 +1284: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 +1285:GrBackendTexture::GrBackendTexture\28\29 +1286:GrAAConvexTessellator::createInsetRing\28GrAAConvexTessellator::Ring\20const&\2c\20GrAAConvexTessellator::Ring*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +1287:FT_Stream_GetByte +1288:FT_Set_Transform +1289:FT_Add_Module +1290:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +1291:AlmostLessOrEqualUlps\28float\2c\20float\29 +1292:ActiveEdge::intersect\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29\20const +1293:wrapper_cmp +1294:void\20std::__2::reverse\5babi:v160004\5d\28char*\2c\20char*\29 +1295:void\20std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::__do_rehash\28unsigned\20long\29 +1296:ubidi_getParaLevelAtIndex_skia +1297:tanf +1298:std::__2::vector>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29 +1299:std::__2::vector>::capacity\5babi:v160004\5d\28\29\20const +1300: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 +1301: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 +1302:std::__2::char_traits::to_int_type\28char\29 +1303:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1304:std::__2::basic_ios>::~basic_ios\28\29 +1305:std::__2::basic_ios>::setstate\5babi:v160004\5d\28unsigned\20int\29 +1306:std::__2::__compressed_pair_elem::__compressed_pair_elem\5babi:v160004\5d\28void\20\28*&&\29\28void*\29\29 +1307:sktext::gpu::GlyphVector::~GlyphVector\28\29 +1308:sktext::StrikeMutationMonitor::~StrikeMutationMonitor\28\29 +1309:sktext::StrikeMutationMonitor::StrikeMutationMonitor\28sktext::StrikeForGPU*\29 +1310:skif::RoundOut\28SkRect\29 +1311:skif::LayerSpace::contains\28skif::LayerSpace\20const&\29\20const +1312:skif::FilterResult::AutoSurface::snap\28\29 +1313:skif::FilterResult::AutoSurface::AutoSurface\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20skif::FilterResult::PixelBoundary\2c\20bool\2c\20SkSurfaceProps\20const*\29 +1314:skif::Backend::~Backend\28\29.1 +1315:skia_private::TArray::push_back\28skif::FilterResult::Builder::SampledFilterResult&&\29 +1316:skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>::~STArray\28\29 +1317:skia_png_chunk_unknown_handling +1318:skia::textlayout::TextStyle::TextStyle\28\29 +1319: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 +1320:skgpu::ganesh::SurfaceFillContext::internalClear\28SkIRect\20const*\2c\20std::__2::array\2c\20bool\29 +1321:skgpu::ganesh::SurfaceDrawContext::fillRectToRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +1322: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 +1323:skgpu::GetApproxSize\28SkISize\29 +1324:skcms_Matrix3x3_invert +1325:non-virtual\20thunk\20to\20GrOpFlushState::allocator\28\29 +1326:hb_lazy_loader_t\2c\20hb_face_t\2c\2011u\2c\20hb_blob_t>::get\28\29\20const +1327:hb_lazy_loader_t\2c\20hb_face_t\2c\202u\2c\20hb_blob_t>::get\28\29\20const +1328:hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +1329:hb_font_t::scale_glyph_extents\28hb_glyph_extents_t*\29 +1330:hb_font_t::get_glyph_h_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +1331:hb_buffer_append +1332: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 +1333:emscripten::internal::Invoker::invoke\28unsigned\20long\20\28*\29\28\29\29 +1334: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 +1335:cos +1336:cf2_glyphpath_lineTo +1337:byn$mgfn-shared$SkTDStorage::calculateSizeOrDie\28int\29::$_0::operator\28\29\28\29\20const +1338:alloc_small +1339:af_latin_hints_compute_segments +1340:_hb_glyph_info_set_unicode_props\28hb_glyph_info_t*\2c\20hb_buffer_t*\29 +1341:__lshrti3 +1342:__letf2 +1343:__cxx_global_array_dtor.3 +1344:\28anonymous\20namespace\29::SkBlurImageFilter::~SkBlurImageFilter\28\29 +1345:SkUTF::ToUTF16\28int\2c\20unsigned\20short*\29 +1346:SkTextBlobBuilder::~SkTextBlobBuilder\28\29 +1347:SkTextBlobBuilder::make\28\29 +1348:SkSurfaces::RenderTarget\28GrRecordingContext*\2c\20skgpu::Budgeted\2c\20SkImageInfo\20const&\2c\20int\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const*\2c\20bool\2c\20bool\29 +1349:SkSurface::makeImageSnapshot\28\29 +1350:SkString::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +1351:SkString::insertUnichar\28unsigned\20long\2c\20int\29 +1352:SkStrikeSpec::findOrCreateScopedStrike\28sktext::StrikeForGPUCacheInterface*\29\20const +1353:SkStrikeCache::GlobalStrikeCache\28\29 +1354:SkShader::isAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +1355:SkSL::is_constant_value\28SkSL::Expression\20const&\2c\20double\29 +1356: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 +1357: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 +1358:SkSL::\28anonymous\20namespace\29::ReturnsOnAllPathsVisitor::visitStatement\28SkSL::Statement\20const&\29 +1359:SkSL::Type::MakeScalarType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type::NumberKind\2c\20signed\20char\2c\20signed\20char\29 +1360:SkSL::RP::Generator::pushBinaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +1361:SkSL::RP::Builder::push_clone\28int\2c\20int\29 +1362:SkSL::ProgramUsage::remove\28SkSL::Statement\20const*\29 +1363:SkSL::Parser::statement\28bool\29 +1364: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 +1365:SkSL::ModifierFlags::description\28\29\20const +1366:SkSL::Layout::paddedDescription\28\29\20const +1367:SkSL::GetModuleData\28SkSL::ModuleName\2c\20char\20const*\29 +1368:SkSL::FieldAccess::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20int\2c\20SkSL::FieldAccessOwnerKind\29 +1369:SkSL::ConstructorCompoundCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1370:SkSL::Compiler::~Compiler\28\29 +1371:SkSL::Analysis::IsSameExpressionTree\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +1372:SkRuntimeEffect::findChild\28std::__2::basic_string_view>\29\20const +1373:SkRect\20skif::Mapping::map\28SkRect\20const&\2c\20SkMatrix\20const&\29 +1374:SkRectPriv::Subtract\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkIRect*\29 +1375:SkPictureRecorder::SkPictureRecorder\28\29 +1376:SkPictureData::~SkPictureData\28\29 +1377:SkPathMeasure::nextContour\28\29 +1378:SkPathMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29 +1379:SkPathMeasure::getPosTan\28float\2c\20SkPoint*\2c\20SkPoint*\29 +1380:SkPathBuilder::lineTo\28SkPoint\29 +1381:SkPath::getPoint\28int\29\20const +1382:SkPath::getLastPt\28SkPoint*\29\20const +1383:SkPaint::setBlender\28sk_sp\29 +1384:SkPaint::setAlphaf\28float\29 +1385:SkOpSegment::addT\28double\29 +1386:SkNoPixelsDevice::ClipState&\20skia_private::TArray::emplace_back\28SkIRect&&\2c\20bool&&\2c\20bool&&\29 +1387:SkNextID::ImageID\28\29 +1388:SkMessageBus::Inbox::Inbox\28unsigned\20int\29 +1389:SkJSONWriter::endObject\28\29 +1390:SkImage_Lazy::generator\28\29\20const +1391:SkImage_Base::~SkImage_Base\28\29 +1392:SkImage_Base::SkImage_Base\28SkImageInfo\20const&\2c\20unsigned\20int\29 +1393:SkImageInfo::Make\28SkISize\2c\20SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +1394:SkImage::isAlphaOnly\28\29\20const +1395:SkFont::getWidthsBounds\28unsigned\20short\20const*\2c\20int\2c\20float*\2c\20SkRect*\2c\20SkPaint\20const*\29\20const +1396:SkFont::getMetrics\28SkFontMetrics*\29\20const +1397:SkFont::SkFont\28sk_sp\2c\20float\29 +1398:SkFont::SkFont\28\29 +1399:SkDrawBase::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20SkRect\20const*\29\20const +1400:SkDevice::setGlobalCTM\28SkM44\20const&\29 +1401:SkDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +1402:SkDescriptor::operator==\28SkDescriptor\20const&\29\20const +1403:SkConvertPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +1404:SkConic::chopAt\28float\2c\20SkConic*\29\20const +1405:SkColorSpace::gammaIsLinear\28\29\20const +1406:SkColorSpace::MakeRGB\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +1407:SkCodec::fillIncompleteImage\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::ZeroInitialized\2c\20int\2c\20int\29 +1408:SkCanvas::saveLayer\28SkRect\20const*\2c\20SkPaint\20const*\29 +1409:SkCanvas::drawPaint\28SkPaint\20const&\29 +1410:SkCanvas::ImageSetEntry::~ImageSetEntry\28\29 +1411:SkBulkGlyphMetrics::glyphs\28SkSpan\29 +1412:SkBitmap::operator=\28SkBitmap&&\29 +1413:SkBitmap::getGenerationID\28\29\20const +1414:SkArenaAllocWithReset::reset\28\29 +1415:OT::Layout::GPOS_impl::AnchorFormat3::sanitize\28hb_sanitize_context_t*\29\20const +1416:OT::GDEF::get_glyph_props\28unsigned\20int\29\20const +1417:OT::CmapSubtable::get_glyph\28unsigned\20int\2c\20unsigned\20int*\29\20const +1418:Ins_UNKNOWN +1419:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\2c\20bool\29 +1420:GrSurfaceProxyView::mipmapped\28\29\20const +1421:GrSurfaceProxy::instantiateImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::UniqueKey\20const*\29 +1422:GrSimpleMeshDrawOpHelperWithStencil::isCompatible\28GrSimpleMeshDrawOpHelperWithStencil\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +1423:GrSimpleMeshDrawOpHelperWithStencil::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20bool*\29 +1424:GrShape::simplifyRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\2c\20unsigned\20int\29 +1425:GrQuad::projectedBounds\28\29\20const +1426:GrProcessorSet::MakeEmptySet\28\29 +1427:GrPorterDuffXPFactory::SimpleSrcOverXP\28\29 +1428:GrPixmap::Allocate\28GrImageInfo\20const&\29 +1429:GrPathTessellationShader::MakeSimpleTriangleShader\28SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +1430:GrMakeCachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20std::__2::basic_string_view>\2c\20skgpu::Mipmapped\29 +1431:GrImageInfo::operator=\28GrImageInfo&&\29 +1432:GrImageInfo::makeColorType\28GrColorType\29\20const +1433:GrGpuResource::setUniqueKey\28skgpu::UniqueKey\20const&\29 +1434:GrGpuResource::release\28\29 +1435:GrGpuResource::isPurgeable\28\29\20const +1436:GrGeometryProcessor::textureSampler\28int\29\20const +1437:GrGeometryProcessor::AttributeSet::begin\28\29\20const +1438:GrGLSLShaderBuilder::addFeature\28unsigned\20int\2c\20char\20const*\29 +1439:GrGLGpu::clearErrorsAndCheckForOOM\28\29 +1440:GrGLGpu::bindSurfaceFBOForPixelOps\28GrSurface*\2c\20int\2c\20unsigned\20int\2c\20GrGLGpu::TempFBOTarget\29 +1441: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 +1442:GrFragmentProcessor::MakeColor\28SkRGBA4f<\28SkAlphaType\292>\29 +1443:GrDirectContextPriv::flushSurfaces\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +1444:GrDefaultGeoProcFactory::Make\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +1445:GrConvertPixels\28GrPixmap\20const&\2c\20GrCPixmap\20const&\2c\20bool\29 +1446:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +1447:GrColorInfo::GrColorInfo\28\29 +1448: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 +1449:GrBackendFormat::operator=\28GrBackendFormat\20const&\29 +1450:FT_Stream_Read +1451:FT_GlyphLoader_Rewind +1452:FT_Done_Face +1453:Cr_z_inflate +1454:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +1455: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 +1456:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20unsigned\20int*&\2c\20unsigned\20int*&\29 +1457: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 +1458:void\20emscripten::internal::MemberAccess::setWire\28bool\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform&\2c\20bool\29 +1459: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 +1460: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 +1461: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 +1462: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 +1463:toupper +1464:top12.2 +1465:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1466:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1467: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 +1468:std::__2::ctype::narrow\5babi:v160004\5d\28char\2c\20char\29\20const +1469:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28wchar_t\20const*\29 +1470:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1471:std::__2::basic_streambuf>::~basic_streambuf\28\29 +1472:std::__2::basic_streambuf>::setg\5babi:v160004\5d\28char*\2c\20char*\2c\20char*\29 +1473: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 +1474: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 +1475:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1476:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1477:src_p\28unsigned\20char\2c\20unsigned\20char\29 +1478:skif::FilterResult::subset\28skif::LayerSpace\20const&\2c\20skif::LayerSpace\20const&\2c\20bool\29\20const +1479:skif::FilterResult::operator=\28skif::FilterResult&&\29 +1480:skia_private::THashMap::operator\5b\5d\28SkSL::Variable\20const*\20const&\29 +1481:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +1482:skia_private::TArray::resize_back\28int\29 +1483:skia_png_get_valid +1484:skia_png_gamma_8bit_correct +1485:skia_png_free_data +1486:skia_png_chunk_warning +1487: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 +1488:skia::textlayout::Run::positionX\28unsigned\20long\29\20const +1489: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 +1490:skia::textlayout::ParagraphCacheKey::operator==\28skia::textlayout::ParagraphCacheKey\20const&\29\20const +1491:skia::textlayout::FontCollection::enableFontFallback\28\29 +1492: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 +1493:skgpu::ganesh::SmallPathAtlasMgr::reset\28\29 +1494:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::vertexSize\28\29\20const +1495:skgpu::ganesh::Device::readSurfaceView\28\29 +1496:skgpu::ganesh::ClipStack::clip\28skgpu::ganesh::ClipStack::RawElement&&\29 +1497:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::RawElement\20const&\29\20const +1498:skgpu::ganesh::ClipStack::RawElement::RawElement\28SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\2c\20SkClipOp\29 +1499:skgpu::TAsyncReadResult::Plane&\20skia_private::TArray::Plane\2c\20false>::emplace_back\2c\20unsigned\20long&>\28sk_sp&&\2c\20unsigned\20long&\29 +1500:skgpu::Swizzle::asString\28\29\20const +1501:skgpu::ScratchKey::GenerateResourceType\28\29 +1502:skgpu::GetBlendFormula\28bool\2c\20bool\2c\20SkBlendMode\29 +1503:select_curve_ops\28skcms_Curve\20const*\2c\20int\2c\20OpAndArg*\29 +1504:sbrk +1505:ps_tofixedarray +1506:processPropertySeq\28UBiDi*\2c\20LevState*\2c\20unsigned\20char\2c\20int\2c\20int\29 +1507:png_format_buffer +1508:png_check_keyword +1509:nextafterf +1510:jpeg_huff_decode +1511:hb_unicode_funcs_destroy +1512:hb_serialize_context_t::pop_discard\28\29 +1513:hb_buffer_set_flags +1514:hb_blob_create_sub_blob +1515:hb_array_t::hash\28\29\20const +1516: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 +1517: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 +1518:fmt_u +1519:flush_pending +1520:emscripten::internal::Invoker>::invoke\28sk_sp\20\28*\29\28\29\29 +1521:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\29\2c\20SkPath*\29 +1522:do_fixed +1523:destroy_face +1524:decltype\28fp\28\28SkRecords::NoOp*\29\28nullptr\29\29\29\20SkRecord::Record::mutate\28SkRecord::Destroyer&\29 +1525:char*\20const&\20std::__2::max\5babi:v160004\5d\28char*\20const&\2c\20char*\20const&\29 +1526:cf2_stack_pushInt +1527:cf2_interpT2CharString +1528:cf2_glyphpath_moveTo +1529:byn$mgfn-shared$SkSL::ConstructorArrayCast::clone\28SkSL::Position\29\20const +1530:byn$mgfn-shared$GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +1531:bool\20hb_hashmap_t::set_with_hash\28unsigned\20int\20const&\2c\20unsigned\20int\2c\20unsigned\20int\20const&\2c\20bool\29 +1532:bool\20emscripten::internal::MemberAccess::getWire\28bool\20RuntimeEffectUniform::*\20const&\2c\20RuntimeEffectUniform\20const&\29 +1533:_hb_ot_metrics_get_position_common\28hb_font_t*\2c\20hb_ot_metrics_tag_t\2c\20int*\29 +1534:__tandf +1535:__floatunsitf +1536:__cxa_allocate_exception +1537:\28anonymous\20namespace\29::PathGeoBuilder::createMeshAndPutBackReserve\28\29 +1538:\28anonymous\20namespace\29::MeshOp::fixedFunctionFlags\28\29\20const +1539:\28anonymous\20namespace\29::DrawAtlasOpImpl::fixedFunctionFlags\28\29\20const +1540:WebPDemuxGetI +1541:VP8LDoFillBitWindow +1542:VP8LClear +1543:TT_Get_MM_Var +1544:SkWStream::writeScalar\28float\29 +1545:SkUTF::UTF8ToUTF16\28unsigned\20short*\2c\20int\2c\20char\20const*\2c\20unsigned\20long\29 +1546:SkTypeface::MakeEmpty\28\29 +1547:SkTSect::BinarySearch\28SkTSect*\2c\20SkTSect*\2c\20SkIntersections*\29 +1548:SkTConic::operator\5b\5d\28int\29\20const +1549:SkTBlockList::reset\28\29 +1550:SkTBlockList::reset\28\29 +1551:SkString::insertU32\28unsigned\20long\2c\20unsigned\20int\29 +1552:SkSpecialImages::MakeDeferredFromGpu\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1553:SkShaders::MatrixRec::applyForFragmentProcessor\28SkMatrix\20const&\29\20const +1554:SkScan::FillRect\28SkRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +1555:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +1556:SkSL::optimize_comparison\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20bool\20\28*\29\28double\2c\20double\29\29 +1557:SkSL::Type::convertArraySize\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20long\20long\29\20const +1558:SkSL::String::appendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20...\29 +1559:SkSL::RP::Builder::dot_floats\28int\29 +1560:SkSL::ProgramUsage::get\28SkSL::FunctionDeclaration\20const&\29\20const +1561:SkSL::Parser::type\28SkSL::Modifiers*\29 +1562:SkSL::Parser::modifiers\28\29 +1563:SkSL::ConstructorDiagonalMatrix::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1564:SkSL::ConstructorArrayCast::~ConstructorArrayCast\28\29 +1565:SkSL::ConstantFolder::MakeConstantValueForVariable\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +1566:SkSL::Compiler::Compiler\28\29 +1567:SkSL::Analysis::IsTrivialExpression\28SkSL::Expression\20const&\29 +1568:SkRuntimeShaderBuilder::~SkRuntimeShaderBuilder\28\29 +1569:SkRuntimeShaderBuilder::makeShader\28SkMatrix\20const*\29\20const +1570:SkRuntimeShaderBuilder::SkRuntimeShaderBuilder\28sk_sp\29 +1571:SkRuntimeEffectPriv::CanDraw\28SkCapabilities\20const*\2c\20SkRuntimeEffect\20const*\29 +1572:SkRegion::setPath\28SkPath\20const&\2c\20SkRegion\20const&\29 +1573:SkRegion::operator=\28SkRegion\20const&\29 +1574:SkRegion::op\28SkRegion\20const&\2c\20SkRegion\20const&\2c\20SkRegion::Op\29 +1575:SkRegion::Iterator::next\28\29 +1576:SkRasterPipeline::compile\28\29\20const +1577:SkRasterPipeline::appendClampIfNormalized\28SkImageInfo\20const&\29 +1578:SkRRect::transform\28SkMatrix\20const&\2c\20SkRRect*\29\20const +1579:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20SkBBHFactory*\29 +1580:SkPathWriter::finishContour\28\29 +1581:SkPathStroker::cubicPerpRay\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +1582:SkPath::getSegmentMasks\28\29\20const +1583:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\29 +1584:SkPaintPriv::ComputeLuminanceColor\28SkPaint\20const&\29 +1585:SkPaint::nothingToDraw\28\29\20const +1586:SkPaint::isSrcOver\28\29\20const +1587:SkOpAngle::linesOnOriginalSide\28SkOpAngle\20const*\29 +1588:SkNotifyBitmapGenIDIsStale\28unsigned\20int\29 +1589:SkNoDrawCanvas::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +1590:SkMipmap::Build\28SkPixmap\20const&\2c\20SkDiscardableMemory*\20\28*\29\28unsigned\20long\29\2c\20bool\29 +1591:SkMeshSpecification::~SkMeshSpecification\28\29 +1592:SkMatrix::setSinCos\28float\2c\20float\2c\20float\2c\20float\29 +1593:SkMatrix::setRSXform\28SkRSXform\20const&\29 +1594:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint3\20const*\2c\20int\29\20const +1595:SkMaskBuilder::AllocImage\28unsigned\20long\2c\20SkMaskBuilder::AllocType\29 +1596:SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_blur_2D_effect\28int\2c\20SkRuntimeEffect::Options\20const&\29 +1597:SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_blur_1D_effect\28int\2c\20SkRuntimeEffect::Options\20const&\29 +1598:SkJSONWriter::appendString\28char\20const*\2c\20unsigned\20long\29 +1599:SkIntersections::insertNear\28double\2c\20double\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29 +1600:SkIntersections::flip\28\29 +1601:SkImageFilters::Empty\28\29 +1602:SkImageFilter_Base::~SkImageFilter_Base\28\29 +1603:SkGlyph::drawable\28\29\20const +1604:SkFont::unicharToGlyph\28int\29\20const +1605:SkFont::setTypeface\28sk_sp\29 +1606:SkFont::setHinting\28SkFontHinting\29 +1607:SkFindQuadMaxCurvature\28SkPoint\20const*\29 +1608:SkEvalCubicAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29 +1609:SkDrawTiler::stepAndSetupTileDraw\28\29 +1610:SkDrawTiler::SkDrawTiler\28SkBitmapDevice*\2c\20SkRect\20const*\29 +1611:SkDevice::accessPixels\28SkPixmap*\29 +1612:SkDeque::SkDeque\28unsigned\20long\2c\20void*\2c\20unsigned\20long\2c\20int\29 +1613:SkDCubic::FindExtrema\28double\20const*\2c\20double*\29 +1614:SkColorFilters::Blend\28unsigned\20int\2c\20SkBlendMode\29 +1615:SkCodec::getPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const*\29 +1616:SkCanvas::topDevice\28\29\20const +1617:SkCanvas::internalRestore\28\29 +1618:SkCanvas::init\28sk_sp\29 +1619:SkCanvas::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +1620:SkBlendMode_AsCoeff\28SkBlendMode\2c\20SkBlendModeCoeff*\2c\20SkBlendModeCoeff*\29 +1621:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29 +1622:SkAutoPixmapStorage::tryAlloc\28SkImageInfo\20const&\29 +1623:SkAAClip::SkAAClip\28\29 +1624:OT::glyf_accelerator_t::glyf_accelerator_t\28hb_face_t*\29 +1625:OT::VariationStore::sanitize\28hb_sanitize_context_t*\29\20const +1626:OT::Layout::GPOS_impl::ValueFormat::sanitize_value_devices\28hb_sanitize_context_t*\2c\20void\20const*\2c\20OT::IntType\20const*\29\20const +1627: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 +1628:OT::HVARVVAR::sanitize\28hb_sanitize_context_t*\29\20const +1629:GrTriangulator::VertexList::insert\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\29 +1630:GrTriangulator::Poly::addEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Side\2c\20GrTriangulator*\29 +1631:GrTriangulator::EdgeList::remove\28GrTriangulator::Edge*\29 +1632:GrStyledShape::operator=\28GrStyledShape\20const&\29 +1633: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 +1634:GrResourceCache::purgeAsNeeded\28\29 +1635:GrRenderTask::addDependency\28GrDrawingManager*\2c\20GrSurfaceProxy*\2c\20skgpu::Mipmapped\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +1636:GrRenderTask::GrRenderTask\28\29 +1637:GrRenderTarget::onRelease\28\29 +1638:GrProxyProvider::findOrCreateProxyByUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxy::UseAllocator\29 +1639:GrProcessorSet::operator==\28GrProcessorSet\20const&\29\20const +1640:GrPathUtils::generateQuadraticPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +1641:GrMeshDrawOp::QuadHelper::QuadHelper\28GrMeshDrawTarget*\2c\20unsigned\20long\2c\20int\29 +1642:GrIsStrokeHairlineOrEquivalent\28GrStyle\20const&\2c\20SkMatrix\20const&\2c\20float*\29 +1643:GrImageContext::abandoned\28\29 +1644:GrGpuResource::registerWithCache\28skgpu::Budgeted\29 +1645:GrGpuBuffer::isMapped\28\29\20const +1646:GrGpu::submitToGpu\28GrSyncCpu\29 +1647:GrGpu::didWriteToSurface\28GrSurface*\2c\20GrSurfaceOrigin\2c\20SkIRect\20const*\2c\20unsigned\20int\29\20const +1648:GrGeometryProcessor::ProgramImpl::setupUniformColor\28GrGLSLFPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20GrResourceHandle*\29 +1649:GrGLGpu::flushRenderTarget\28GrGLRenderTarget*\2c\20bool\29 +1650:GrFragmentProcessor::visitTextureEffects\28std::__2::function\20const&\29\20const +1651:GrFragmentProcessor::visitProxies\28std::__2::function\20const&\29\20const +1652:GrCpuBuffer::ref\28\29\20const +1653:GrBufferAllocPool::makeSpace\28unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\29 +1654:GrBackendTextures::GetGLTextureInfo\28GrBackendTexture\20const&\2c\20GrGLTextureInfo*\29 +1655:FilterLoop26_C +1656:FT_Vector_Transform +1657:FT_Vector_NormLen +1658:FT_Outline_Transform +1659:CFF::dict_opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +1660:AlmostBetweenUlps\28float\2c\20float\2c\20float\29 +1661:void\20std::__2::vector>::__emplace_back_slow_path\28skia::textlayout::OneLineShaper::RunBlock&\29 +1662:ubidi_getMemory_skia +1663:transform\28unsigned\20int*\2c\20unsigned\20char\20const*\29 +1664:strcspn +1665:std::__2::vector>::__append\28unsigned\20long\29 +1666:std::__2::locale::locale\28std::__2::locale\20const&\29 +1667:std::__2::locale::classic\28\29 +1668:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char*\2c\20char*\2c\20char*&\29\20const +1669:std::__2::chrono::__libcpp_steady_clock_now\28\29 +1670: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 +1671:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +1672:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1673:std::__2::__wrap_iter\20std::__2::vector>::insert\28std::__2::__wrap_iter\2c\20float\20const*\2c\20float\20const*\29 +1674:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1675:std::__2::__throw_bad_variant_access\5babi:v160004\5d\28\29 +1676:std::__2::__split_buffer>::push_front\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +1677:std::__2::__shared_count::__release_shared\5babi:v160004\5d\28\29 +1678:std::__2::__num_get::__stage2_int_prep\28std::__2::ios_base&\2c\20wchar_t&\29 +1679:std::__2::__num_get::__do_widen\28std::__2::ios_base&\2c\20wchar_t*\29\20const +1680:std::__2::__num_get::__stage2_int_prep\28std::__2::ios_base&\2c\20char&\29 +1681:std::__2::__itoa::__append1\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1682:sktext::gpu::VertexFiller::vertexStride\28SkMatrix\20const&\29\20const +1683:skif::RoundIn\28SkRect\29 +1684:skif::LayerSpace::round\28\29\20const +1685:skif::LayerSpace::inverseMapRect\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29\20const +1686:skif::FilterResult::applyTransform\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkSamplingOptions\20const&\29\20const +1687:skif::FilterResult::Builder::~Builder\28\29 +1688:skif::FilterResult::Builder::Builder\28skif::Context\20const&\29 +1689: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 +1690:skia_private::THashTable::AdaptedTraits>::removeIfExists\28skgpu::UniqueKey\20const&\29 +1691:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +1692:skia_private::TArray::resize_back\28int\29 +1693:skia_private::TArray::push_back_raw\28int\29 +1694:skia_png_sig_cmp +1695:skia_png_set_progressive_read_fn +1696:skia_png_set_longjmp_fn +1697:skia_png_set_interlace_handling +1698:skia_png_reciprocal +1699:skia_png_read_chunk_header +1700:skia_png_get_io_ptr +1701:skia_png_calloc +1702:skia::textlayout::TextLine::~TextLine\28\29 +1703:skia::textlayout::ParagraphStyle::ParagraphStyle\28skia::textlayout::ParagraphStyle\20const&\29 +1704:skia::textlayout::ParagraphCacheKey::~ParagraphCacheKey\28\29 +1705:skia::textlayout::FontCollection::findTypefaces\28std::__2::vector>\20const&\2c\20SkFontStyle\2c\20std::__2::optional\20const&\29 +1706:skia::textlayout::Cluster::trimmedWidth\28unsigned\20long\29\20const +1707:skgpu::ganesh::TextureOp::BatchSizeLimiter::createOp\28GrTextureSetEntry*\2c\20int\2c\20GrAAType\29 +1708:skgpu::ganesh::SurfaceFillContext::fillWithFP\28std::__2::unique_ptr>\29 +1709:skgpu::ganesh::SurfaceDrawContext::drawShapeUsingPathRenderer\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\2c\20bool\29 +1710:skgpu::ganesh::SurfaceDrawContext::drawRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const*\29 +1711:skgpu::ganesh::SurfaceDrawContext::drawRRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20GrStyle\20const&\29 +1712:skgpu::ganesh::SurfaceContext::transferPixels\28GrColorType\2c\20SkIRect\20const&\29 +1713:skgpu::ganesh::QuadPerEdgeAA::CalcIndexBufferOption\28GrAAType\2c\20int\29 +1714:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29::$_0::operator\28\29\28GrSurfaceProxyView\20const&\29\20const +1715:skgpu::ganesh::Device::targetProxy\28\29 +1716:skgpu::ganesh::ClipStack::getConservativeBounds\28\29\20const +1717:skgpu::TAsyncReadResult::addTransferResult\28skgpu::ganesh::SurfaceContext::PixelTransferResult\20const&\2c\20SkISize\2c\20unsigned\20long\2c\20skgpu::TClientMappedBufferManager*\29 +1718:skgpu::Plot::resetRects\28\29 +1719:skcms_TransferFunction_invert +1720:ps_dimension_add_t1stem +1721:powf +1722:log2f +1723:log +1724:jcopy_sample_rows +1725:hb_font_t::has_func\28unsigned\20int\29 +1726:hb_buffer_create_similar +1727:getenv +1728:ft_service_list_lookup +1729:fseek +1730:fiprintf +1731:fflush +1732:expm1 +1733:emscripten::internal::MethodInvoker::invoke\28void\20\28GrDirectContext::*\20const&\29\28\29\2c\20GrDirectContext*\29 +1734: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 +1735:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28SkFont&\29\2c\20SkFont*\29 +1736:do_putc +1737:crc32_z +1738:cf2_hintmap_insertHint +1739:cf2_hintmap_build +1740:cf2_glyphpath_pushPrevElem +1741: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 +1742: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 +1743: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 +1744: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 +1745:byn$mgfn-shared$skif::\28anonymous\20namespace\29::RasterBackend::~RasterBackend\28\29 +1746:byn$mgfn-shared$skif::Backend::~Backend\28\29.1 +1747:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +1748: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\29 +1749:afm_stream_read_one +1750:af_latin_hints_link_segments +1751:af_latin_compute_stem_width +1752:af_glyph_hints_reload +1753:acosf +1754:__wasi_syscall_ret +1755:__syscall_ret +1756:__sin +1757:__cos +1758:VP8LHuffmanTablesDeallocate +1759:SkWriter32::writeSampling\28SkSamplingOptions\20const&\29 +1760:SkVertices::Builder::detach\28\29 +1761:SkUTF::NextUTF8WithReplacement\28char\20const**\2c\20char\20const*\29 +1762:SkTypeface_FreeType::~SkTypeface_FreeType\28\29 +1763:SkTypeface_FreeType::FaceRec::~FaceRec\28\29 +1764:SkTypeface::SkTypeface\28SkFontStyle\20const&\2c\20bool\29 +1765:SkTextBlobBuilder::TightRunBounds\28SkTextBlob::RunRecord\20const&\29 +1766:SkTextBlob::RunRecord::textSizePtr\28\29\20const +1767:SkTMultiMap::remove\28skgpu::ScratchKey\20const&\2c\20GrGpuResource\20const*\29 +1768:SkTMultiMap::insert\28skgpu::ScratchKey\20const&\2c\20GrGpuResource*\29 +1769:SkTDStorage::insert\28int\2c\20int\2c\20void\20const*\29 +1770: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 +1771:SkSwizzler::Make\28SkEncodedInfo\20const&\2c\20unsigned\20int\20const*\2c\20SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20SkIRect\20const*\29 +1772:SkSurfaces::Raster\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20SkSurfaceProps\20const*\29 +1773:SkSurface_Base::~SkSurface_Base\28\29 +1774:SkSurface::recordingContext\28\29\20const +1775:SkString::resize\28unsigned\20long\29 +1776:SkStrikeSpec::SkStrikeSpec\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +1777:SkStrikeSpec::MakeMask\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +1778:SkStrikeSpec::MakeCanonicalized\28SkFont\20const&\2c\20SkPaint\20const*\29 +1779:SkStrikeCache::findOrCreateStrike\28SkStrikeSpec\20const&\29 +1780:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20SkBitmap\20const&\2c\20SkSurfaceProps\20const&\29 +1781:SkShaders::MatrixRec::apply\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +1782:SkShaders::MatrixRec::MatrixRec\28SkMatrix\20const&\29 +1783:SkShaders::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29 +1784:SkScan::FillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\29 +1785:SkScalerContext_FreeType::emboldenIfNeeded\28FT_FaceRec_*\2c\20FT_GlyphSlotRec_*\2c\20unsigned\20short\29 +1786:SkSL::Type::displayName\28\29\20const +1787:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20double\2c\20SkSL::Position\29\20const +1788:SkSL::SymbolTable::find\28std::__2::basic_string_view>\29\20const +1789:SkSL::String::Separator\28\29::Output::~Output\28\29 +1790: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 +1791:SkSL::RP::Generator::foldComparisonOp\28SkSL::Operator\2c\20int\29 +1792:SkSL::RP::Builder::branch_if_no_lanes_active\28int\29 +1793:SkSL::PrefixExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +1794:SkSL::PipelineStage::PipelineStageCodeGenerator::typedVariable\28SkSL::Type\20const&\2c\20std::__2::basic_string_view>\29 +1795:SkSL::Parser::parseArrayDimensions\28SkSL::Position\2c\20SkSL::Type\20const**\29 +1796:SkSL::Parser::arraySize\28long\20long*\29 +1797:SkSL::Operator::operatorName\28\29\20const +1798:SkSL::ModifierFlags::paddedDescription\28\29\20const +1799:SkSL::IndexExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +1800:SkSL::ConstantFolder::GetConstantValue\28SkSL::Expression\20const&\2c\20double*\29 +1801:SkSL::ConstantFolder::GetConstantInt\28SkSL::Expression\20const&\2c\20long\20long*\29 +1802:SkSL::Compiler::convertProgram\28SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::ProgramSettings\20const&\29 +1803:SkResourceCache::remove\28SkResourceCache::Rec*\29 +1804:SkRegion::op\28SkRegion\20const&\2c\20SkIRect\20const&\2c\20SkRegion::Op\29 +1805:SkRegion::Iterator::Iterator\28SkRegion\20const&\29 +1806:SkRectPriv::ClosestDisjointEdge\28SkIRect\20const&\2c\20SkIRect\20const&\29 +1807:SkRecords::FillBounds::bounds\28SkRecords::DrawArc\20const&\29\20const +1808:SkReadBuffer::setMemory\28void\20const*\2c\20unsigned\20long\29 +1809:SkRasterClip::SkRasterClip\28SkIRect\20const&\29 +1810:SkRRect::writeToMemory\28void*\29\20const +1811:SkRRect::setRectXY\28SkRect\20const&\2c\20float\2c\20float\29 +1812:SkPointPriv::DistanceToLineBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPointPriv::Side*\29 +1813:SkPoint::setNormalize\28float\2c\20float\29 +1814:SkPixmapUtils::SwapWidthHeight\28SkImageInfo\20const&\29 +1815:SkPictureRecorder::finishRecordingAsPicture\28\29 +1816:SkPathPriv::ComputeFirstDirection\28SkPath\20const&\29 +1817:SkPathEffect::asADash\28SkPathEffect::DashInfo*\29\20const +1818:SkPathEdgeIter::SkPathEdgeIter\28SkPath\20const&\29 +1819:SkPath::rewind\28\29 +1820:SkPath::isLine\28SkPoint*\29\20const +1821:SkPath::incReserve\28int\2c\20int\2c\20int\29 +1822:SkPath::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +1823:SkPaint::setStrokeCap\28SkPaint::Cap\29 +1824:SkPaint::refShader\28\29\20const +1825:SkOpSpan::setWindSum\28int\29 +1826:SkOpSegment::markAndChaseWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int\2c\20int\2c\20SkOpSpanBase**\29 +1827:SkOpContourBuilder::addCurve\28SkPath::Verb\2c\20SkPoint\20const*\2c\20float\29 +1828:SkOpAngle::starter\28\29 +1829:SkOpAngle::insert\28SkOpAngle*\29 +1830:SkNoDestructor::SkNoDestructor\28SkSL::String::Separator\28\29::Output&&\29 +1831:SkMatrixPriv::InverseMapRect\28SkMatrix\20const&\2c\20SkRect*\2c\20SkRect\20const&\29 +1832:SkMatrix::setSinCos\28float\2c\20float\29 +1833:SkMatrix::decomposeScale\28SkSize*\2c\20SkMatrix*\29\20const +1834:SkMaskFilterBase::getFlattenableType\28\29\20const +1835:SkMaskFilter::MakeBlur\28SkBlurStyle\2c\20float\2c\20bool\29 +1836:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29 +1837:SkMD5::write\28void\20const*\2c\20unsigned\20long\29 +1838:SkLineClipper::IntersectLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\29 +1839:SkImage_GaneshBase::SkImage_GaneshBase\28sk_sp\2c\20SkImageInfo\2c\20unsigned\20int\29 +1840:SkImageGenerator::onRefEncodedData\28\29 +1841:SkImage::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\29\20const +1842:SkImage::makeRasterImage\28GrDirectContext*\2c\20SkImage::CachingHint\29\20const +1843:SkIDChangeListener::SkIDChangeListener\28\29 +1844:SkIDChangeListener::List::reset\28\29 +1845:SkGradientBaseShader::flatten\28SkWriteBuffer&\29\20const +1846:SkFontMgr::RefEmpty\28\29 +1847:SkFont::setEdging\28SkFont::Edging\29 +1848:SkEvalQuadAt\28SkPoint\20const*\2c\20float\29 +1849:SkEncodedInfo::makeImageInfo\28\29\20const +1850:SkEdgeClipper::next\28SkPoint*\29 +1851:SkDevice::scalerContextFlags\28\29\20const +1852:SkConic::evalAt\28float\2c\20SkPoint*\2c\20SkPoint*\29\20const +1853:SkColorInfo::SkColorInfo\28SkColorType\2c\20SkAlphaType\2c\20sk_sp\29 +1854:SkCodec::skipScanlines\28int\29 +1855:SkChopCubicAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +1856:SkCapabilities::RasterBackend\28\29 +1857:SkCanvas::saveLayer\28SkCanvas::SaveLayerRec\20const&\29 +1858:SkCanvas::imageInfo\28\29\20const +1859:SkCanvas::drawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +1860:SkCanvas::drawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +1861:SkCanvas::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +1862:SkBmpBaseCodec::~SkBmpBaseCodec\28\29 +1863:SkBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +1864:SkBlendMode\20SkReadBuffer::read32LE\28SkBlendMode\29 +1865:SkBitmap::operator=\28SkBitmap\20const&\29 +1866:SkBitmap::extractSubset\28SkBitmap*\2c\20SkIRect\20const&\29\20const +1867:SkBitmap::SkBitmap\28SkBitmap&&\29 +1868:SkBinaryWriteBuffer::writeByteArray\28void\20const*\2c\20unsigned\20long\29 +1869:SkBinaryWriteBuffer::SkBinaryWriteBuffer\28SkSerialProcs\20const&\29 +1870:SkBaseShadowTessellator::handleLine\28SkPoint\20const&\29 +1871:SkAAClip::setRegion\28SkRegion\20const&\29 +1872:R +1873:OT::hb_ot_apply_context_t::_set_glyph_class\28unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +1874:OT::cmap::find_subtable\28unsigned\20int\2c\20unsigned\20int\29\20const +1875:GrXPFactory::FromBlendMode\28SkBlendMode\29 +1876:GrTriangulator::setBottom\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +1877:GrTriangulator::mergeCollinearEdges\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +1878:GrTriangulator::Edge::disconnect\28\29 +1879:GrThreadSafeCache::find\28skgpu::UniqueKey\20const&\29 +1880:GrThreadSafeCache::add\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +1881:GrThreadSafeCache::Entry::makeEmpty\28\29 +1882:GrSurfaceProxyView::operator==\28GrSurfaceProxyView\20const&\29\20const +1883:GrSurfaceProxyView::Copy\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20SkIRect\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\29 +1884:GrSurfaceProxyPriv::doLazyInstantiation\28GrResourceProvider*\29 +1885:GrSurfaceProxy::isFunctionallyExact\28\29\20const +1886: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 +1887:GrSimpleMeshDrawOpHelperWithStencil::fixedFunctionFlags\28\29\20const +1888:GrSimpleMeshDrawOpHelper::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20GrProcessorAnalysisColor*\29 +1889: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 +1890:GrSimpleMeshDrawOpHelper::CreatePipeline\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20skgpu::Swizzle\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrProcessorSet&&\2c\20GrPipeline::InputFlags\29 +1891:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20void\20const*\2c\20skgpu::UniqueKey\20const&\29 +1892:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20skgpu::UniqueKey\20const&\2c\20void\20\28*\29\28skgpu::VertexWriter\2c\20unsigned\20long\29\29 +1893:GrResourceCache::findAndRefScratchResource\28skgpu::ScratchKey\20const&\29 +1894: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 +1895:GrQuadUtils::TessellationHelper::Vertices::moveAlong\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1896:GrQuad::asRect\28SkRect*\29\20const +1897:GrProcessorSet::GrProcessorSet\28GrProcessorSet&&\29 +1898:GrPathUtils::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +1899:GrGpu::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +1900:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +1901:GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +1902:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +1903:GrGLSLColorSpaceXformHelper::emitCode\28GrGLSLUniformHandler*\2c\20GrColorSpaceXform\20const*\2c\20unsigned\20int\29 +1904:GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +1905:GrGLRenderTarget::bindInternal\28unsigned\20int\2c\20bool\29 +1906:GrGLGpu::getErrorAndCheckForOOM\28\29 +1907:GrGLGpu::bindTexture\28int\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20GrGLTexture*\29 +1908:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkMatrix\20const&\29 +1909:GrFragmentProcessor::visitWithImpls\28std::__2::function\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\20const +1910:GrFragmentProcessor::ColorMatrix\28std::__2::unique_ptr>\2c\20float\20const*\2c\20bool\2c\20bool\2c\20bool\29 +1911:GrDrawingManager::appendTask\28sk_sp\29 +1912:GrColorInfo::GrColorInfo\28GrColorInfo\20const&\29 +1913:GrCaps::isFormatCompressed\28GrBackendFormat\20const&\29\20const +1914:GrAAConvexTessellator::lineTo\28SkPoint\20const&\2c\20GrAAConvexTessellator::CurveState\29 +1915:FT_Select_Metrics +1916:FT_Select_Charmap +1917:FT_Get_Next_Char +1918:FT_Get_Module_Interface +1919:FT_Done_Size +1920:DecodeImageStream +1921:CFF::opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +1922:CFF::Charset::get_glyph\28unsigned\20int\2c\20unsigned\20int\29\20const +1923:wuffs_gif__decoder__num_decoded_frames +1924:void\20std::__2::vector\2c\20std::__2::allocator>>::__push_back_slow_path\20const&>\28sk_sp\20const&\29 +1925:void\20std::__2::reverse\5babi:v160004\5d\28wchar_t*\2c\20wchar_t*\29 +1926:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.2 +1927:void\20merge_sort<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +1928:void\20merge_sort<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +1929:void\20emscripten::internal::MemberAccess::setWire\28float\20StrokeOpts::*\20const&\2c\20StrokeOpts&\2c\20float\29 +1930:validate_offsetToRestore\28SkReadBuffer*\2c\20unsigned\20long\29 +1931:ubidi_setPara_skia +1932:ubidi_getVisualRun_skia +1933:ubidi_getRuns_skia +1934:ubidi_getClass_skia +1935:tt_set_mm_blend +1936:tt_face_get_ps_name +1937:trinkle +1938:std::__2::unique_ptr::release\5babi:v160004\5d\28\29 +1939: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 +1940:std::__2::pair::pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +1941:std::__2::moneypunct::do_decimal_point\28\29\20const +1942:std::__2::moneypunct::do_decimal_point\28\29\20const +1943:std::__2::istreambuf_iterator>::istreambuf_iterator\5babi:v160004\5d\28std::__2::basic_istream>&\29 +1944:std::__2::ios_base::good\5babi:v160004\5d\28\29\20const +1945:std::__2::ctype::toupper\5babi:v160004\5d\28char\29\20const +1946:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +1947: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 +1948:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +1949:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +1950: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 +1951:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +1952:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +1953:std::__2::basic_string\2c\20std::__2::allocator>::__get_short_size\5babi:v160004\5d\28\29\20const +1954: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 +1955:std::__2::basic_streambuf>::__pbump\5babi:v160004\5d\28long\29 +1956:std::__2::basic_iostream>::~basic_iostream\28\29.1 +1957:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::allocator&\2c\20wchar_t*\2c\20unsigned\20long\29 +1958:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::allocator&\2c\20char*\2c\20unsigned\20long\29 +1959:std::__2::__num_put_base::__format_int\28char*\2c\20char\20const*\2c\20bool\2c\20unsigned\20int\29 +1960:std::__2::__num_put_base::__format_float\28char*\2c\20char\20const*\2c\20unsigned\20int\29 +1961:std::__2::__itoa::__append8\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1962:sktext::gpu::VertexFiller::deviceRectAndCheckTransform\28SkMatrix\20const&\29\20const +1963:sktext::gpu::TextBlob::Key::operator==\28sktext::gpu::TextBlob::Key\20const&\29\20const +1964:sktext::gpu::GlyphVector::packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29 +1965:sktext::SkStrikePromise::strike\28\29 +1966:skif::\28anonymous\20namespace\29::downscale_step_count\28float\29 +1967:skif::FilterResult::getAnalyzedShaderView\28skif::Context\20const&\2c\20SkSamplingOptions\20const&\2c\20SkEnumBitMask\29\20const +1968:skif::FilterResult::draw\28skif::Context\20const&\2c\20SkDevice*\2c\20bool\2c\20SkBlender\20const*\29\20const +1969:skif::FilterResult::applyCrop\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkTileMode\29\20const +1970:skif::Context::~Context\28\29 +1971: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 +1972: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 +1973:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +1974:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::resize\28int\29 +1975: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>::resize\28int\29 +1976:skia_private::THashTable::Traits>::resize\28int\29 +1977:skia_private::TArray::move\28void*\29 +1978:skia_private::TArray::operator=\28skia_private::TArray&&\29 +1979:skia_private::TArray\2c\20true>::push_back\28SkRGBA4f<\28SkAlphaType\293>&&\29 +1980:skia_png_set_text_2 +1981:skia_png_set_palette_to_rgb +1982:skia_png_handle_IHDR +1983:skia_png_handle_IEND +1984:skia_png_destroy_write_struct +1985:skia::textlayout::operator==\28skia::textlayout::FontArguments\20const&\2c\20skia::textlayout::FontArguments\20const&\29 +1986:skia::textlayout::TextWrapper::TextStretch::extend\28skia::textlayout::Cluster*\29 +1987:skia::textlayout::FontCollection::getFontManagerOrder\28\29\20const +1988:skia::textlayout::FontArguments::FontArguments\28skia::textlayout::FontArguments\20const&\29 +1989:skia::textlayout::Decorations::calculateGaps\28skia::textlayout::TextLine::ClipContext\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\29 +1990:skia::textlayout::Block&\20skia_private::TArray::emplace_back\28unsigned\20long&&\2c\20unsigned\20long&&\2c\20skia::textlayout::TextStyle\20const&\29 +1991:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::fixedFunctionFlags\28\29\20const +1992:skgpu::ganesh::SurfaceFillContext::fillRectWithFP\28SkIRect\20const&\2c\20SkMatrix\20const&\2c\20std::__2::unique_ptr>\29 +1993:skgpu::ganesh::SurfaceFillContext::SurfaceFillContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +1994:skgpu::ganesh::SurfaceDrawContext::drawShape\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\29 +1995:skgpu::ganesh::SurfaceDrawContext::drawPaint\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\29 +1996: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 +1997:skgpu::ganesh::SurfaceContext::rescaleInto\28skgpu::ganesh::SurfaceFillContext*\2c\20SkIRect\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29 +1998:skgpu::ganesh::SurfaceContext::PixelTransferResult::operator=\28skgpu::ganesh::SurfaceContext::PixelTransferResult&&\29 +1999:skgpu::ganesh::SmallPathAtlasMgr::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +2000:skgpu::ganesh::OpsTask::~OpsTask\28\29 +2001:skgpu::ganesh::OpsTask::setColorLoadOp\28GrLoadOp\2c\20std::__2::array\29 +2002:skgpu::ganesh::OpsTask::deleteOps\28\29 +2003:skgpu::ganesh::FillRectOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +2004: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 +2005:skgpu::ganesh::ClipStack::~ClipStack\28\29 +2006:skgpu::TClientMappedBufferManager::~TClientMappedBufferManager\28\29 +2007:skgpu::Swizzle::apply\28SkRasterPipeline*\29\20const +2008:skgpu::Plot::addSubImage\28int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +2009:skgpu::GetLCDBlendFormula\28SkBlendMode\29 +2010:skcms_TransferFunction_isHLGish +2011:skcms_Matrix3x3_concat +2012:sk_srgb_linear_singleton\28\29 +2013:shr +2014:shl +2015:setRegionCheck\28SkRegion*\2c\20SkRegion\20const&\29 +2016:read_header\28SkStream*\2c\20SkPngChunkReader*\2c\20SkCodec**\2c\20png_struct_def**\2c\20png_info_def**\29 +2017:ps_dimension_set_mask_bits +2018:operator==\28SkPath\20const&\2c\20SkPath\20const&\29 +2019:mbrtowc +2020:jround_up +2021:jpeg_make_d_derived_tbl +2022:ilogbf +2023:hb_ucd_get_unicode_funcs +2024:hb_syllabic_insert_dotted_circles\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +2025:hb_shape_full +2026:hb_serialize_context_t::~hb_serialize_context_t\28\29 +2027:hb_serialize_context_t::resolve_links\28\29 +2028:hb_serialize_context_t::reset\28\29 +2029:hb_lazy_loader_t\2c\20hb_face_t\2c\2016u\2c\20OT::cff1_accelerator_t>::get\28\29\20const +2030:hb_lazy_loader_t\2c\20hb_face_t\2c\2034u\2c\20hb_blob_t>::get\28\29\20const +2031:hb_language_from_string +2032:hb_font_t::mults_changed\28\29 +2033:hb_font_destroy +2034:hb_buffer_t::next_glyph\28\29 +2035:get_sof +2036:ftell +2037:ft_var_readpackedpoints +2038:ft_mem_strdup +2039:float\20emscripten::internal::MemberAccess::getWire\28float\20StrokeOpts::*\20const&\2c\20StrokeOpts\20const&\29 +2040:fill_window +2041:exp +2042:encodeImage\28GrDirectContext*\2c\20sk_sp\2c\20SkEncodedImageFormat\2c\20int\29 +2043:emscripten::val\20MakeTypedArray\28int\2c\20float\20const*\29 +2044:emscripten::internal::MethodInvoker::invoke\28float\20\28SkContourMeasure::*\20const&\29\28\29\20const\2c\20SkContourMeasure\20const*\29 +2045: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 +2046:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath\20const&\2c\20SkPath\20const&\29\2c\20SkPath*\2c\20SkPath*\29 +2047:dquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2048:do_clip_op\28SkReadBuffer*\2c\20SkCanvas*\2c\20SkRegion::Op\2c\20SkClipOp*\29 +2049:do_anti_hairline\28int\2c\20int\2c\20int\2c\20int\2c\20SkIRect\20const*\2c\20SkBlitter*\29 +2050:doWriteReverse\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +2051:doWriteForward\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +2052:dline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2053:dispose_chunk +2054: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 +2055:decltype\28fp\28\28SkRecords::NoOp\29\28\29\29\29\20SkRecord::Record::visit\28SkRecords::Draw&\29\20const +2056:dcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2057:dconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2058:crop_rect_edge\28SkRect\20const&\2c\20int\2c\20int\2c\20int\2c\20int\2c\20float*\2c\20float*\2c\20float*\2c\20float*\2c\20float*\29 +2059:char*\20std::__2::__rewrap_iter\5babi:v160004\5d>\28char*\2c\20char*\29 +2060:cff_slot_load +2061:cff_parse_real +2062:cff_index_get_sid_string +2063:cff_index_access_element +2064:cf2_doStems +2065:cf2_doFlex +2066:byn$mgfn-shared$tt_cmap8_get_info +2067:byn$mgfn-shared$tt_cmap0_get_info +2068:byn$mgfn-shared$skia_png_set_strip_16 +2069:byn$mgfn-shared$SkSL::Tracer::line\28int\29 +2070:byn$mgfn-shared$AlmostBequalUlps\28float\2c\20float\29 +2071:buffer_verify_error\28hb_buffer_t*\2c\20hb_font_t*\2c\20char\20const*\2c\20...\29 +2072: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 +2073: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 +2074:af_sort_and_quantize_widths +2075:af_glyph_hints_align_weak_points +2076:af_glyph_hints_align_strong_points +2077:af_face_globals_new +2078:af_cjk_compute_stem_width +2079:add_huff_table +2080:addPoint\28UBiDi*\2c\20int\2c\20int\29 +2081:__uselocale +2082:__math_xflow +2083:__cxxabiv1::__base_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +2084:\28anonymous\20namespace\29::make_vertices_spec\28bool\2c\20bool\29 +2085:\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 +2086:\28anonymous\20namespace\29::draw_stencil_rect\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrHardClip\20const&\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +2087:\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 +2088:\28anonymous\20namespace\29::PathSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +2089:\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 +2090:\28anonymous\20namespace\29::CacheImpl::removeInternal\28\28anonymous\20namespace\29::CacheImpl::Value*\29 +2091:WebPRescalerExport +2092:WebPInitAlphaProcessing +2093:WebPFreeDecBuffer +2094:WebPDemuxDelete +2095:VP8SetError +2096:VP8LInverseTransform +2097:VP8LDelete +2098:VP8LColorCacheClear +2099:TT_Load_Context +2100:StringBuffer\20apply_format_string<1024>\28char\20const*\2c\20void*\2c\20char\20\28&\29\20\5b1024\5d\2c\20SkString*\29 +2101:SkYUVAPixmaps::operator=\28SkYUVAPixmaps\20const&\29 +2102:SkYUVAPixmapInfo::SupportedDataTypes::enableDataType\28SkYUVAPixmapInfo::DataType\2c\20int\29 +2103:SkWriter32::writeMatrix\28SkMatrix\20const&\29 +2104:SkWriter32::snapshotAsData\28\29\20const +2105:SkVertices::uniqueID\28\29\20const +2106:SkVertices::approximateSize\28\29\20const +2107:SkTypefaceCache::NewTypefaceID\28\29 +2108:SkTextBlobRunIterator::next\28\29 +2109:SkTextBlobRunIterator::SkTextBlobRunIterator\28SkTextBlob\20const*\29 +2110:SkTextBlobBuilder::SkTextBlobBuilder\28\29 +2111:SkTextBlobBuilder::ConservativeRunBounds\28SkTextBlob::RunRecord\20const&\29 +2112:SkTSpan::closestBoundedT\28SkDPoint\20const&\29\20const +2113:SkTSect::updateBounded\28SkTSpan*\2c\20SkTSpan*\2c\20SkTSpan*\29 +2114:SkTSect::trim\28SkTSpan*\2c\20SkTSect*\29 +2115:SkTDStorage::erase\28int\2c\20int\29 +2116:SkTDPQueue::percolateUpIfNecessary\28int\29 +2117:SkSurfaceProps::SkSurfaceProps\28unsigned\20int\2c\20SkPixelGeometry\2c\20float\2c\20float\29 +2118:SkStrokerPriv::JoinFactory\28SkPaint::Join\29 +2119:SkStrokeRec::setStrokeStyle\28float\2c\20bool\29 +2120:SkStrokeRec::setFillStyle\28\29 +2121:SkStrokeRec::applyToPath\28SkPath*\2c\20SkPath\20const&\29\20const +2122:SkString::set\28char\20const*\29 +2123:SkStrikeSpec::findOrCreateStrike\28\29\20const +2124:SkStrikeSpec::MakeWithNoDevice\28SkFont\20const&\2c\20SkPaint\20const*\29 +2125:SkStrike::unlock\28\29 +2126:SkStrike::lock\28\29 +2127:SkSharedMutex::SkSharedMutex\28\29 +2128:SkShadowTessellator::MakeSpot\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkPoint3\20const&\2c\20float\2c\20bool\2c\20bool\29 +2129:SkShaders::Empty\28\29 +2130:SkShaders::Color\28unsigned\20int\29 +2131:SkShaderBase::appendRootStages\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +2132:SkScalerContext::~SkScalerContext\28\29.1 +2133:SkSL::write_stringstream\28SkSL::StringStream\20const&\2c\20SkSL::OutputStream&\29 +2134: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 +2135: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 +2136:SkSL::Type::priority\28\29\20const +2137:SkSL::Type::checkIfUsableInArray\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +2138:SkSL::SymbolTable::takeOwnershipOfString\28std::__2::basic_string\2c\20std::__2::allocator>\29 +2139:SkSL::SymbolTable::isBuiltinType\28std::__2::basic_string_view>\29\20const +2140:SkSL::RP::SlotManager::mapVariableToSlots\28SkSL::Variable\20const&\2c\20SkSL::RP::SlotRange\29 +2141:SkSL::RP::Program::appendStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkSL::RP::Callbacks*\2c\20SkSpan\29\20const +2142:SkSL::RP::Generator::pushVectorizedExpression\28SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +2143:SkSL::RP::Builder::ternary_op\28SkSL::RP::BuilderOp\2c\20int\29 +2144:SkSL::RP::Builder::simplifyPopSlotsUnmasked\28SkSL::RP::SlotRange*\29 +2145:SkSL::RP::Builder::pop_slots_unmasked\28SkSL::RP::SlotRange\29 +2146:SkSL::RP::Builder::exchange_src\28\29 +2147:SkSL::ProgramUsage::remove\28SkSL::ProgramElement\20const&\29 +2148:SkSL::ProgramUsage::isDead\28SkSL::Variable\20const&\29\20const +2149:SkSL::Pool::~Pool\28\29 +2150:SkSL::PipelineStage::PipelineStageCodeGenerator::typeName\28SkSL::Type\20const&\29 +2151:SkSL::LiteralType::priority\28\29\20const +2152:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sub\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +2153:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_dot\28std::__2::array\20const&\29 +2154:SkSL::GLSLCodeGenerator::writeAnyConstructor\28SkSL::AnyConstructor\20const&\2c\20SkSL::OperatorPrecedence\29 +2155:SkSL::ExpressionArray::clone\28\29\20const +2156:SkSL::Compiler::errorText\28bool\29 +2157:SkSL::Block::Make\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::unique_ptr>\29 +2158:SkSL::Block::MakeBlock\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::unique_ptr>\29 +2159:SkSL::Analysis::DetectVarDeclarationWithoutScope\28SkSL::Statement\20const&\2c\20SkSL::ErrorReporter*\29 +2160:SkRuntimeEffectPriv::TransformUniforms\28SkSpan\2c\20sk_sp\2c\20SkColorSpace\20const*\29 +2161:SkRuntimeEffect::getRPProgram\28SkSL::DebugTracePriv*\29\20const +2162:SkRegion::getBoundaryPath\28SkPath*\29\20const +2163:SkRegion::Spanerator::next\28int*\2c\20int*\29 +2164:SkRegion::SkRegion\28SkRegion\20const&\29 +2165:SkReduceOrder::Quad\28SkPoint\20const*\2c\20SkPoint*\29 +2166:SkReadBuffer::skipByteArray\28unsigned\20long*\29 +2167:SkReadBuffer::readSampling\28\29 +2168:SkReadBuffer::readRRect\28SkRRect*\29 +2169:SkReadBuffer::checkInt\28int\2c\20int\29 +2170:SkRasterPipeline::appendMatrix\28SkArenaAlloc*\2c\20SkMatrix\20const&\29 +2171:SkQuads::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +2172:SkQuadraticEdge::updateQuadratic\28\29 +2173:SkPngCodec::~SkPngCodec\28\29.1 +2174:SkPngCodec::processData\28\29 +2175:SkPixmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +2176:SkPictureRecord::~SkPictureRecord\28\29 +2177:SkPicture::~SkPicture\28\29.1 +2178:SkPathStroker::quadStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2179:SkPathStroker::preJoinTo\28SkPoint\20const&\2c\20SkPoint*\2c\20SkPoint*\2c\20bool\29 +2180:SkPathStroker::intersectRay\28SkQuadConstruct*\2c\20SkPathStroker::IntersectRayType\29\20const +2181:SkPathStroker::cubicStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2182:SkPathStroker::conicStroke\28SkConic\20const&\2c\20SkQuadConstruct*\29 +2183:SkPathMeasure::isClosed\28\29 +2184:SkPathEffectBase::getFlattenableType\28\29\20const +2185:SkPathBuilder::moveTo\28SkPoint\29 +2186:SkPathBuilder::incReserve\28int\2c\20int\29 +2187:SkPathBuilder::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2188:SkPath::isLastContourClosed\28\29\20const +2189:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2190:SkPaintToGrPaintReplaceShader\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20std::__2::unique_ptr>\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +2191:SkPaint::setStrokeMiter\28float\29 +2192:SkPaint::setStrokeJoin\28SkPaint::Join\29 +2193:SkOpSpanBase::mergeMatches\28SkOpSpanBase*\29 +2194:SkOpSpanBase::addOpp\28SkOpSpanBase*\29 +2195:SkOpSegment::subDivide\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkDCurve*\29\20const +2196:SkOpSegment::release\28SkOpSpan\20const*\29 +2197:SkOpSegment::operand\28\29\20const +2198:SkOpSegment::moveNearby\28\29 +2199:SkOpSegment::markDone\28SkOpSpan*\29 +2200:SkOpSegment::markAndChaseDone\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpSpanBase**\29 +2201:SkOpSegment::isClose\28double\2c\20SkOpSegment\20const*\29\20const +2202:SkOpSegment::init\28SkPoint*\2c\20float\2c\20SkOpContour*\2c\20SkPath::Verb\29 +2203:SkOpSegment::addT\28double\2c\20SkPoint\20const&\29 +2204:SkOpCoincidence::fixUp\28SkOpPtT*\2c\20SkOpPtT\20const*\29 +2205:SkOpCoincidence::add\28SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\29 +2206:SkOpCoincidence::addMissing\28bool*\29 +2207:SkOpCoincidence::addIfMissing\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20double\2c\20double\2c\20SkOpSegment*\2c\20SkOpSegment*\2c\20bool*\29 +2208:SkOpCoincidence::addExpanded\28\29 +2209:SkOpAngle::set\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +2210:SkOpAngle::lineOnOneSide\28SkDPoint\20const&\2c\20SkDVector\20const&\2c\20SkOpAngle\20const*\2c\20bool\29\20const +2211:SkNoPixelsDevice::ClipState::op\28SkClipOp\2c\20SkM44\20const&\2c\20SkRect\20const&\2c\20bool\2c\20bool\29 +2212:SkMatrix\20skif::Mapping::map\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +2213:SkMatrixPriv::DifferentialAreaScale\28SkMatrix\20const&\2c\20SkPoint\20const&\29 +2214:SkMatrix::writeToMemory\28void*\29\20const +2215:SkMatrix::preservesRightAngles\28float\29\20const +2216:SkM44::normalizePerspective\28\29 +2217:SkLatticeIter::~SkLatticeIter\28\29 +2218:SkLatticeIter::next\28SkIRect*\2c\20SkRect*\2c\20bool*\2c\20unsigned\20int*\29 +2219:SkImages::RasterFromBitmap\28SkBitmap\20const&\29 +2220:SkImage_Lazy::Validator::Validator\28sk_sp\2c\20SkColorType\20const*\2c\20sk_sp\29 +2221:SkImageShader::MakeSubset\28sk_sp\2c\20SkRect\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +2222:SkImageFilters::Image\28sk_sp\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\29 +2223:SkImageFilters::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +2224:SkImage::readPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +2225:SkHalfToFloat\28unsigned\20short\29 +2226: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 +2227: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 +2228:SkGradientBaseShader::commonAsAGradient\28SkShaderBase::GradientInfo*\29\20const +2229:SkGradientBaseShader::ValidGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\29 +2230:SkGradientBaseShader::SkGradientBaseShader\28SkGradientBaseShader::Descriptor\20const&\2c\20SkMatrix\20const&\29 +2231:SkGradientBaseShader::MakeDegenerateGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20float\20const*\2c\20int\2c\20sk_sp\2c\20SkTileMode\29 +2232:SkGradientBaseShader::Descriptor::~Descriptor\28\29 +2233:SkGradientBaseShader::Descriptor::Descriptor\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20sk_sp\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\29 +2234:SkGlyph::setPath\28SkArenaAlloc*\2c\20SkPath\20const*\2c\20bool\29 +2235:SkFontMgr::matchFamilyStyleCharacter\28char\20const*\2c\20SkFontStyle\20const&\2c\20char\20const**\2c\20int\2c\20int\29\20const +2236:SkFont::setSize\28float\29 +2237:SkEvalQuadAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +2238:SkEncodedInfo::~SkEncodedInfo\28\29 +2239:SkEmptyFontMgr::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +2240:SkDrawableList::~SkDrawableList\28\29 +2241:SkDrawable::draw\28SkCanvas*\2c\20SkMatrix\20const*\29 +2242:SkData::PrivateNewWithCopy\28void\20const*\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +2243:SkDashPathEffect::Make\28float\20const*\2c\20int\2c\20float\29 +2244:SkDQuad::monotonicInX\28\29\20const +2245:SkDCubic::dxdyAtT\28double\29\20const +2246:SkDCubic::RootsValidT\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +2247:SkCubicEdge::updateCubic\28\29 +2248:SkConicalGradient::~SkConicalGradient\28\29 +2249:SkColorSpace::serialize\28\29\20const +2250:SkColorSpace::MakeSRGBLinear\28\29 +2251:SkColorFilterPriv::MakeGaussian\28\29 +2252:SkColorConverter::SkColorConverter\28unsigned\20int\20const*\2c\20int\29 +2253:SkCodec::startScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const*\29 +2254:SkCodec::handleFrameIndex\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20std::__2::function\29 +2255:SkCodec::getScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +2256:SkChopQuadAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +2257:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\20const*\2c\20int\29 +2258:SkChopCubicAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +2259:SkCharToGlyphCache::SkCharToGlyphCache\28\29 +2260:SkCanvas::getTotalMatrix\28\29\20const +2261:SkCanvas::getLocalToDevice\28\29\20const +2262:SkCanvas::getLocalClipBounds\28\29\20const +2263:SkCanvas::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +2264: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 +2265:SkCanvas::concat\28SkM44\20const&\29 +2266:SkCanvas::SkCanvas\28SkBitmap\20const&\29 +2267:SkCanvas::ImageSetEntry::ImageSetEntry\28SkCanvas::ImageSetEntry\20const&\29 +2268:SkBmpCodec::ReadHeader\28SkStream*\2c\20bool\2c\20std::__2::unique_ptr>*\29 +2269:SkBlurMaskFilterImpl::computeXformedSigma\28SkMatrix\20const&\29\20const +2270:SkBlitter::blitRectRegion\28SkIRect\20const&\2c\20SkRegion\20const&\29 +2271:SkBlendMode_ShouldPreScaleCoverage\28SkBlendMode\2c\20bool\29 +2272:SkBlendMode_AppendStages\28SkBlendMode\2c\20SkRasterPipeline*\29 +2273:SkBitmap::tryAllocPixels\28SkBitmap::Allocator*\29 +2274:SkBitmap::readPixels\28SkPixmap\20const&\2c\20int\2c\20int\29\20const +2275:SkBitmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +2276:SkBitmap::installPixels\28SkPixmap\20const&\29 +2277:SkBitmap::allocPixels\28SkImageInfo\20const&\29 +2278:SkBaseShadowTessellator::handleQuad\28SkPoint\20const*\29 +2279:SkAutoDescriptor::~SkAutoDescriptor\28\29 +2280:SkAnimatedImage::getFrameCount\28\29\20const +2281:SkAAClip::~SkAAClip\28\29 +2282:SkAAClip::setPath\28SkPath\20const&\2c\20SkIRect\20const&\2c\20bool\29 +2283:SkAAClip::op\28SkAAClip\20const&\2c\20SkClipOp\29 +2284:OT::hb_ot_layout_lookup_accelerator_t*\20OT::hb_ot_layout_lookup_accelerator_t::create\28OT::Layout::GSUB_impl::SubstLookup\20const&\29 +2285:OT::hb_ot_apply_context_t::replace_glyph\28unsigned\20int\29 +2286: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 +2287:OT::Layout::GPOS_impl::ValueFormat::get_device\28OT::IntType\20const*\2c\20bool*\2c\20void\20const*\2c\20hb_sanitize_context_t&\29 +2288:OT::Layout::GPOS_impl::AnchorFormat3::get_anchor\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20float*\2c\20float*\29\20const +2289:OT::Layout::GPOS_impl::AnchorFormat2::get_anchor\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20float*\2c\20float*\29\20const +2290:OT::ClassDef::get_class\28unsigned\20int\29\20const +2291:JpegDecoderMgr::~JpegDecoderMgr\28\29 +2292:GrTriangulator::simplify\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +2293:GrTriangulator::setTop\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2294:GrTriangulator::mergeCoincidentVertices\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29\20const +2295:GrTriangulator::Vertex*\20SkArenaAlloc::make\28SkPoint&\2c\20int&&\29 +2296:GrThreadSafeCache::remove\28skgpu::UniqueKey\20const&\29 +2297:GrThreadSafeCache::internalFind\28skgpu::UniqueKey\20const&\29 +2298:GrThreadSafeCache::internalAdd\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +2299:GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29 +2300:GrTexture::markMipmapsClean\28\29 +2301:GrTessellationShader::MakePipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedClip&&\2c\20GrProcessorSet&&\29 +2302:GrSurfaceProxyView::concatSwizzle\28skgpu::Swizzle\29 +2303:GrSurfaceProxy::LazyCallbackResult::LazyCallbackResult\28sk_sp\29 +2304: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 +2305:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +2306:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +2307: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 +2308:GrShape::simplifyLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\29 +2309:GrShape::reset\28\29 +2310:GrShape::conservativeContains\28SkPoint\20const&\29\20const +2311:GrSWMaskHelper::init\28SkIRect\20const&\29 +2312:GrResourceProvider::createNonAAQuadIndexBuffer\28\29 +2313:GrResourceProvider::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\2c\20GrResourceProvider::ZeroInit\29 +2314:GrResourceCache::refAndMakeResourceMRU\28GrGpuResource*\29 +2315:GrResourceCache::findAndRefUniqueResource\28skgpu::UniqueKey\20const&\29 +2316:GrRenderTask::addTarget\28GrDrawingManager*\2c\20sk_sp\29 +2317:GrRenderTarget::~GrRenderTarget\28\29.1 +2318: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 +2319:GrQuadUtils::WillUseHairline\28GrQuad\20const&\2c\20GrAAType\2c\20GrQuadAAFlags\29 +2320:GrQuadUtils::CropToRect\28SkRect\20const&\2c\20GrAA\2c\20DrawQuad*\2c\20bool\29 +2321:GrProxyProvider::processInvalidUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\29 +2322:GrPorterDuffXPFactory::Get\28SkBlendMode\29 +2323:GrPixmap::operator=\28GrPixmap&&\29 +2324:GrPathUtils::scaleToleranceToSrc\28float\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +2325:GrPathUtils::quadraticPointCount\28SkPoint\20const*\2c\20float\29 +2326:GrPathUtils::cubicPointCount\28SkPoint\20const*\2c\20float\29 +2327:GrPaint::setPorterDuffXPFactory\28SkBlendMode\29 +2328:GrPaint::GrPaint\28GrPaint\20const&\29 +2329:GrOpsRenderPass::draw\28int\2c\20int\29 +2330:GrOpsRenderPass::drawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +2331:GrMeshDrawOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +2332:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29 +2333:GrGradientShader::MakeGradientFP\28SkGradientBaseShader\20const&\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\2c\20std::__2::unique_ptr>\2c\20SkMatrix\20const*\29 +2334:GrGpuResource::getContext\28\29 +2335:GrGpu::writePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +2336:GrGLTexture::onSetLabel\28\29 +2337:GrGLTexture::onRelease\28\29 +2338:GrGLTexture::onAbandon\28\29 +2339:GrGLTexture::backendFormat\28\29\20const +2340:GrGLSLShaderBuilder::appendFunctionDecl\28SkSLType\2c\20char\20const*\2c\20SkSpan\29 +2341:GrGLSLProgramBuilder::fragmentProcessorHasCoordsParam\28GrFragmentProcessor\20const*\29\20const +2342:GrGLRenderTarget::onRelease\28\29 +2343:GrGLRenderTarget::onAbandon\28\29 +2344:GrGLGpu::resolveRenderFBOs\28GrGLRenderTarget*\2c\20SkIRect\20const&\2c\20GrGLRenderTarget::ResolveDirection\2c\20bool\29 +2345:GrGLGpu::flushBlendAndColorWrite\28skgpu::BlendInfo\20const&\2c\20skgpu::Swizzle\20const&\29 +2346:GrGLGetVersionFromString\28char\20const*\29 +2347: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 +2348:GrGLCaps::maxRenderTargetSampleCount\28GrGLFormat\29\20const +2349:GrFragmentProcessors::Make\28SkBlenderBase\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20GrFPArgs\20const&\29 +2350:GrFragmentProcessor::isEqual\28GrFragmentProcessor\20const&\29\20const +2351:GrFragmentProcessor::asTextureEffect\28\29\20const +2352:GrFragmentProcessor::Rect\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRect\29 +2353:GrFragmentProcessor::ModulateRGBA\28std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +2354:GrDrawingManager::~GrDrawingManager\28\29 +2355:GrDrawingManager::removeRenderTasks\28\29 +2356:GrDrawingManager::getPathRenderer\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\2c\20bool\2c\20skgpu::ganesh::PathRendererChain::DrawType\2c\20skgpu::ganesh::PathRenderer::StencilSupport*\29 +2357:GrDrawOpAtlas::compact\28skgpu::AtlasToken\29 +2358:GrContext_Base::~GrContext_Base\28\29 +2359:GrContext_Base::defaultBackendFormat\28SkColorType\2c\20skgpu::Renderable\29\20const +2360:GrColorSpaceXform::XformKey\28GrColorSpaceXform\20const*\29 +2361:GrColorSpaceXform::Make\28SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +2362:GrColorSpaceXform::Make\28GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +2363:GrColorInfo::operator=\28GrColorInfo\20const&\29 +2364:GrCaps::supportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +2365:GrCaps::getFallbackColorTypeAndFormat\28GrColorType\2c\20int\29\20const +2366:GrCaps::areColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +2367:GrBufferAllocPool::~GrBufferAllocPool\28\29 +2368:GrBlurUtils::DrawShapeWithMaskFilter\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\29 +2369:GrBaseContextPriv::getShaderErrorHandler\28\29\20const +2370:GrBackendTexture::GrBackendTexture\28GrBackendTexture\20const&\29 +2371:GrBackendRenderTarget::getBackendFormat\28\29\20const +2372:GrBackendFormat::operator==\28GrBackendFormat\20const&\29\20const +2373:GrAAConvexTessellator::createOuterRing\28GrAAConvexTessellator::Ring\20const&\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring*\29 +2374:GrAAConvexTessellator::createInsetRings\28GrAAConvexTessellator::Ring&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring**\29 +2375:FindSortableTop\28SkOpContourHead*\29 +2376:FT_Set_Charmap +2377:FT_Outline_Decompose +2378:FT_Open_Face +2379:FT_New_Size +2380:FT_Load_Sfnt_Table +2381:FT_GlyphLoader_Add +2382:FT_Get_Color_Glyph_Paint +2383:FT_Get_Color_Glyph_Layer +2384:FT_Get_Advance +2385:FT_Done_Library +2386:FT_CMap_New +2387:DecodeImageData\28sk_sp\29 +2388:Current_Ratio +2389:Cr_z__tr_stored_block +2390:ClipParams_unpackRegionOp\28SkReadBuffer*\2c\20unsigned\20int\29 +2391:CircleOp::Circle&\20skia_private::TArray::emplace_back\28CircleOp::Circle&&\29 +2392:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +2393:AlmostEqualUlps_Pin\28float\2c\20float\29 +2394:wuffs_lzw__decoder__workbuf_len +2395:wuffs_gif__decoder__decode_image_config +2396:wuffs_gif__decoder__decode_frame_config +2397:winding_mono_quad\28SkPoint\20const*\2c\20float\2c\20float\2c\20int*\29 +2398:winding_mono_conic\28SkConic\20const&\2c\20float\2c\20float\2c\20int*\29 +2399:wcrtomb +2400:wchar_t\20const*\20std::__2::find\5babi:v160004\5d\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const&\29 +2401: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 +2402: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 +2403: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 +2404: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 +2405: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 +2406: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 +2407:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.3 +2408:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29 +2409: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 +2410: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 +2411:vfprintf +2412:valid_args\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20unsigned\20long*\29 +2413:update_offset_to_base\28char\20const*\2c\20long\29 +2414:update_box +2415:unsigned\20long\20const&\20std::__2::min\5babi:v160004\5d\28unsigned\20long\20const&\2c\20unsigned\20long\20const&\29 +2416: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 +2417: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 +2418: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 +2419: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 +2420: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 +2421: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 +2422: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 +2423: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 +2424:u_charMirror_skia +2425:tt_size_reset +2426:tt_sbit_decoder_load_metrics +2427:tt_face_get_location +2428:tt_face_find_bdf_prop +2429:tolower +2430:toTextStyle\28SimpleTextStyle\20const&\29 +2431:t1_cmap_unicode_done +2432:subdivide_cubic_to\28SkPath*\2c\20SkPoint\20const*\2c\20int\29 +2433:subdivide\28SkConic\20const&\2c\20SkPoint*\2c\20int\29 +2434:strtox +2435:strtoull_l +2436:strtod +2437:std::logic_error::~logic_error\28\29.1 +2438:std::__2::vector>::__append\28unsigned\20long\29 +2439:std::__2::vector>::push_back\5babi:v160004\5d\28float&&\29 +2440:std::__2::vector>::__append\28unsigned\20long\29 +2441: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 +2442:std::__2::vector>::reserve\28unsigned\20long\29 +2443:std::__2::vector\2c\20std::__2::allocator>>::push_back\5babi:v160004\5d\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +2444: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 +2445:std::__2::time_put>>::~time_put\28\29.1 +2446:std::__2::pair\2c\20std::__2::allocator>>>::~pair\28\29 +2447:std::__2::pair\20std::__2::__copy_trivial::operator\28\29\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +2448:std::__2::locale::operator=\28std::__2::locale\20const&\29 +2449:std::__2::locale::locale\28\29 +2450:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\29 +2451:std::__2::ios_base::~ios_base\28\29 +2452:std::__2::ios_base::init\28void*\29 +2453:std::__2::ios_base::clear\28unsigned\20int\29 +2454:std::__2::fpos<__mbstate_t>::fpos\5babi:v160004\5d\28long\20long\29 +2455: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 +2456:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28SkSL::ProgramUsage*\29\20const +2457: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 +2458: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 +2459:std::__2::char_traits::move\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +2460:std::__2::char_traits::assign\28char*\2c\20unsigned\20long\2c\20char\29 +2461:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.2 +2462:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29 +2463:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +2464:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28wchar_t\29 +2465:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +2466:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::allocator\20const&\29 +2467:std::__2::basic_string\2c\20std::__2::allocator>::__make_iterator\5babi:v160004\5d\28char*\29 +2468: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 +2469:std::__2::basic_streambuf>::setp\5babi:v160004\5d\28char*\2c\20char*\29 +2470:std::__2::basic_streambuf>::basic_streambuf\28\29 +2471:std::__2::basic_ostream>::~basic_ostream\28\29.1 +2472:std::__2::basic_istream>::~basic_istream\28\29.1 +2473:std::__2::basic_istream>::sentry::sentry\28std::__2::basic_istream>&\2c\20bool\29 +2474:std::__2::basic_iostream>::~basic_iostream\28\29.2 +2475:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +2476:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +2477:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +2478:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +2479:std::__2::__throw_out_of_range\5babi:v160004\5d\28char\20const*\29 +2480:std::__2::__throw_length_error\5babi:v160004\5d\28char\20const*\29 +2481:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +2482:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20wchar_t*\2c\20wchar_t&\2c\20wchar_t&\29 +2483: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 +2484:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20char*\2c\20char&\2c\20char&\29 +2485: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 +2486:std::__2::__libcpp_wcrtomb_l\5babi:v160004\5d\28char*\2c\20wchar_t\2c\20__mbstate_t*\2c\20__locale_struct*\29 +2487:std::__2::__less::operator\28\29\5babi:v160004\5d\28unsigned\20int\20const&\2c\20unsigned\20long\20const&\29\20const +2488:std::__2::__itoa::__base_10_u32\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2489:std::__2::__itoa::__append6\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2490:std::__2::__itoa::__append4\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2491:sktext::gpu::VertexFiller::flatten\28SkWriteBuffer&\29\20const +2492:sktext::gpu::VertexFiller::Make\28skgpu::MaskFormat\2c\20SkMatrix\20const&\2c\20SkRect\2c\20SkSpan\2c\20sktext::gpu::SubRunAllocator*\2c\20sktext::gpu::FillerType\29 +2493: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 +2494:sktext::gpu::SubRunAllocator::SubRunAllocator\28int\29 +2495:sktext::gpu::GlyphVector::flatten\28SkWriteBuffer&\29\20const +2496:sktext::gpu::GlyphVector::Make\28sktext::SkStrikePromise&&\2c\20SkSpan\2c\20sktext::gpu::SubRunAllocator*\29 +2497:sktext::SkStrikePromise::flatten\28SkWriteBuffer&\29\20const +2498:sktext::GlyphRunBuilder::makeGlyphRunList\28sktext::GlyphRun\20const&\2c\20SkPaint\20const&\2c\20SkPoint\29 +2499:sktext::GlyphRun::GlyphRun\28SkFont\20const&\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\2c\20SkSpan\29 +2500: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 +2501:skip_literal_string +2502:skif::\28anonymous\20namespace\29::are_axes_nearly_integer_aligned\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29 +2503:skif::LayerSpace::relevantSubset\28skif::LayerSpace\2c\20SkTileMode\29\20const +2504:skif::FilterResult::applyColorFilter\28skif::Context\20const&\2c\20sk_sp\29\20const +2505:skif::FilterResult::Builder::outputBounds\28std::__2::optional>\29\20const +2506:skif::FilterResult::Builder::drawShader\28sk_sp\2c\20skif::LayerSpace\20const&\2c\20bool\29\20const +2507:skif::FilterResult::Builder::createInputShaders\28skif::LayerSpace\20const&\2c\20bool\29 +2508: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 +2509:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::removeSlot\28int\29 +2510:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2511:skia_private::THashTable::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2512:skia_private::THashTable::Pair\2c\20SkSL::IRNode\20const*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +2513:skia_private::THashTable::AdaptedTraits>::removeIfExists\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +2514:skia_private::THashTable::Traits>::resize\28int\29 +2515:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::find\28GrProgramDesc\20const&\29\20const +2516:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrThreadSafeCache::Entry*&&\29 +2517:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +2518:skia_private::THashTable::AdaptedTraits>::removeIfExists\28skgpu::UniqueKey\20const&\29 +2519:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrTextureProxy*&&\29 +2520:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +2521:skia_private::THashTable::Traits>::uncheckedSet\28FT_Opaque_Paint_&&\29 +2522:skia_private::THashTable::Traits>::resize\28int\29 +2523:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::~THashMap\28\29 +2524:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::find\28std::__2::basic_string_view>\20const&\29\20const +2525:skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::THashMap\28std::initializer_list>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>::Pair>\29 +2526:skia_private::THashMap>\2c\20SkGoodHash>::set\28SkSL::Variable\20const*\2c\20std::__2::unique_ptr>\29 +2527:skia_private::TArray::resize_back\28int\29 +2528:skia_private::TArray::operator=\28skia_private::TArray&&\29 +2529:skia_private::TArray::push_back\28SkRasterPipeline_MemoryCtxInfo&&\29 +2530:skia_private::TArray::push_back_raw\28int\29 +2531:skia_private::TArray::resize_back\28int\29 +2532:skia_png_write_chunk +2533:skia_png_set_sBIT +2534:skia_png_set_read_fn +2535:skia_png_set_packing +2536:skia_png_set_bKGD +2537:skia_png_save_uint_32 +2538:skia_png_reciprocal2 +2539:skia_png_realloc_array +2540:skia_png_read_start_row +2541:skia_png_read_IDAT_data +2542:skia_png_handle_zTXt +2543:skia_png_handle_tRNS +2544:skia_png_handle_tIME +2545:skia_png_handle_tEXt +2546:skia_png_handle_sRGB +2547:skia_png_handle_sPLT +2548:skia_png_handle_sCAL +2549:skia_png_handle_sBIT +2550:skia_png_handle_pHYs +2551:skia_png_handle_pCAL +2552:skia_png_handle_oFFs +2553:skia_png_handle_iTXt +2554:skia_png_handle_iCCP +2555:skia_png_handle_hIST +2556:skia_png_handle_gAMA +2557:skia_png_handle_cHRM +2558:skia_png_handle_bKGD +2559:skia_png_handle_as_unknown +2560:skia_png_handle_PLTE +2561:skia_png_do_strip_channel +2562:skia_png_destroy_read_struct +2563:skia_png_destroy_info_struct +2564:skia_png_compress_IDAT +2565:skia_png_combine_row +2566:skia_png_colorspace_set_sRGB +2567:skia_png_check_fp_string +2568:skia_png_check_fp_number +2569:skia::textlayout::TypefaceFontStyleSet::createTypeface\28int\29 +2570:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::$_0::operator\28\29\28sk_sp\2c\20sk_sp\29\20const +2571:skia::textlayout::TextLine::getRectsForRange\28skia::textlayout::SkRange\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const +2572:skia::textlayout::TextLine::getGlyphPositionAtCoordinate\28float\29 +2573:skia::textlayout::Run::isResolved\28\29\20const +2574:skia::textlayout::Run::copyTo\28SkTextBlobBuilder&\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +2575:skia::textlayout::ParagraphImpl::buildClusterTable\28\29 +2576:skia::textlayout::ParagraphBuilderImpl::ensureUTF16Mapping\28\29 +2577:skia::textlayout::OneLineShaper::~OneLineShaper\28\29 +2578:skia::textlayout::FontCollection::setDefaultFontManager\28sk_sp\29 +2579:skia::textlayout::FontCollection::FontCollection\28\29 +2580:skia::textlayout::Cluster::isSoftBreak\28\29\20const +2581:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::flush\28GrMeshDrawTarget*\2c\20skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::FlushInfo*\29\20const +2582:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::~Impl\28\29 +2583:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::programInfo\28\29 +2584:skgpu::ganesh::SurfaceFillContext::discard\28\29 +2585:skgpu::ganesh::SurfaceDrawContext::internalStencilClear\28SkIRect\20const*\2c\20bool\29 +2586:skgpu::ganesh::SurfaceDrawContext::drawPath\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrStyle\20const&\29 +2587:skgpu::ganesh::SurfaceDrawContext::attemptQuadOptimization\28GrClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20DrawQuad*\2c\20GrPaint*\29 +2588:skgpu::ganesh::SurfaceDrawContext::Make\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +2589: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 +2590:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +2591:skgpu::ganesh::QuadPerEdgeAA::MinColorType\28SkRGBA4f<\28SkAlphaType\292>\29 +2592:skgpu::ganesh::PathRendererChain::PathRendererChain\28GrRecordingContext*\2c\20skgpu::ganesh::PathRendererChain::Options\20const&\29 +2593:skgpu::ganesh::PathCurveTessellator::draw\28GrOpFlushState*\29\20const +2594:skgpu::ganesh::OpsTask::recordOp\28std::__2::unique_ptr>\2c\20bool\2c\20GrProcessorSet::Analysis\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const*\2c\20GrCaps\20const&\29 +2595:skgpu::ganesh::FilterAndMipmapHaveNoEffect\28GrQuad\20const&\2c\20GrQuad\20const&\29 +2596:skgpu::ganesh::FillRectOp::MakeNonAARect\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +2597:skgpu::ganesh::FillRRectOp::Make\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +2598:skgpu::ganesh::Device::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +2599: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 +2600:skgpu::ganesh::Device::Make\28std::__2::unique_ptr>\2c\20SkAlphaType\2c\20skgpu::ganesh::Device::InitContents\29 +2601: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 +2602:skgpu::ganesh::ClipStack::SaveRecord::invalidateMasks\28GrProxyProvider*\2c\20SkTBlockList*\29 +2603:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::SaveRecord\20const&\29\20const +2604:skgpu::ganesh::AtlasTextOp::operator\20new\28unsigned\20long\29 +2605: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 +2606:skgpu::ganesh::AtlasRenderTask::addAtlasDrawOp\28std::__2::unique_ptr>\2c\20GrCaps\20const&\29 +2607:skcms_Transform::$_2::operator\28\29\28skcms_Curve\20const*\2c\20int\29\20const +2608:skcms_TransferFunction_isPQish +2609:skcms_MaxRoundtripError +2610:sk_free_releaseproc\28void\20const*\2c\20void*\29 +2611:siprintf +2612:sift +2613:rotate\28SkDCubic\20const&\2c\20int\2c\20int\2c\20SkDCubic&\29 +2614: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 +2615:read_header\28SkStream*\2c\20SkISize*\29 +2616:quad_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2617:qsort +2618:psh_globals_set_scale +2619:ps_parser_skip_PS_token +2620:ps_builder_done +2621:png_text_compress +2622:png_inflate_read +2623:png_inflate_claim +2624:png_image_size +2625:png_colorspace_endpoints_match +2626:png_build_16bit_table +2627:normalize +2628:next_marker +2629:morphpoints\28SkPoint*\2c\20SkPoint\20const*\2c\20int\2c\20SkPathMeasure&\2c\20float\29 +2630:make_unpremul_effect\28std::__2::unique_ptr>\29 +2631:long\20std::__2::__libcpp_atomic_refcount_decrement\5babi:v160004\5d\28long&\29 +2632:long\20const&\20std::__2::min\5babi:v160004\5d\28long\20const&\2c\20long\20const&\29 +2633:log1p +2634:load_truetype_glyph +2635:line_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2636:lang_find_or_insert\28char\20const*\29 +2637:jpeg_calc_output_dimensions +2638:inner_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +2639:inflate_table +2640:increment_simple_rowgroup_ctr +2641:hb_tag_from_string +2642:hb_shape_plan_destroy +2643:hb_script_get_horizontal_direction +2644:hb_paint_extents_context_t::push_clip\28hb_extents_t\29 +2645:hb_ot_color_palette_get_colors +2646:hb_lazy_loader_t\2c\20hb_face_t\2c\2012u\2c\20OT::vmtx_accelerator_t>::get\28\29\20const +2647:hb_lazy_loader_t\2c\20hb_face_t\2c\2023u\2c\20hb_blob_t>::get\28\29\20const +2648:hb_lazy_loader_t\2c\20hb_face_t\2c\201u\2c\20hb_blob_t>::get\28\29\20const +2649:hb_lazy_loader_t\2c\20hb_face_t\2c\2018u\2c\20hb_blob_t>::get\28\29\20const +2650:hb_hashmap_t::alloc\28unsigned\20int\29 +2651:hb_font_funcs_destroy +2652:hb_face_get_upem +2653:hb_face_destroy +2654: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 +2655:hb_buffer_set_segment_properties +2656:hb_blob_create +2657:gray_render_line +2658:get_vendor\28char\20const*\29 +2659:get_renderer\28char\20const*\2c\20GrGLExtensions\20const&\29 +2660:get_layer_mapping_and_bounds\28SkSpan>\2c\20SkMatrix\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\2c\20float\29 +2661:get_joining_type\28unsigned\20int\2c\20hb_unicode_general_category_t\29 +2662:generate_distance_field_from_image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\29 +2663:ft_var_readpackeddeltas +2664:ft_var_get_item_delta +2665:ft_var_done_item_variation_store +2666:ft_glyphslot_done +2667:ft_glyphslot_alloc_bitmap +2668:freelocale +2669:free_pool +2670:fquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2671:fp_barrierf +2672:fline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2673:fixN0c\28BracketData*\2c\20int\2c\20int\2c\20unsigned\20char\29 +2674:fcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2675:fconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +2676:fclose +2677:exp2 +2678:emscripten::internal::MethodInvoker::invoke\28void\20\28SkFont::*\20const&\29\28float\29\2c\20SkFont*\2c\20float\29 +2679: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 +2680: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 +2681: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 +2682:emscripten::internal::FunctionInvoker::invoke\28emscripten::val\20\28**\29\28SkFontMgr&\2c\20int\29\2c\20SkFontMgr*\2c\20int\29 +2683:do_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +2684:decompose\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\2c\20unsigned\20int\29 +2685: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 +2686: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 +2687:cubic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2688:conic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +2689:char\20const*\20std::__2::find\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char\20const&\29 +2690:char\20const*\20std::__2::__rewrap_range\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +2691:cff_index_get_pointers +2692:cff2_path_param_t::move_to\28CFF::point_t\20const&\29 +2693:cff1_path_param_t::move_to\28CFF::point_t\20const&\29 +2694:cf2_glyphpath_computeOffset +2695: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 +2696: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 +2697: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 +2698: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 +2699: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 +2700: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 +2701: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 +2702: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 +2703: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 +2704: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 +2705: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 +2706:byn$mgfn-shared$skia_private::TArray::operator=\28skia_private::TArray&&\29 +2707:byn$mgfn-shared$skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +2708:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +2709: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 +2710: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 +2711:byn$mgfn-shared$SkRuntimeEffect::MakeForColorFilter\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +2712:byn$mgfn-shared$SkImageInfo::MakeN32Premul\28int\2c\20int\29 +2713:byn$mgfn-shared$SkBlockMemoryStream::~SkBlockMemoryStream\28\29.1 +2714:byn$mgfn-shared$SkBlockMemoryStream::~SkBlockMemoryStream\28\29 +2715:byn$mgfn-shared$SkBinaryWriteBuffer::writeScalarArray\28float\20const*\2c\20unsigned\20int\29 +2716:byn$mgfn-shared$Round_To_Grid +2717:byn$mgfn-shared$LineConicIntersections::addLineNearEndPoints\28\29 +2718:byn$mgfn-shared$GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +2719:byn$mgfn-shared$GrGLProgramDataManager::setMatrix2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +2720:byn$mgfn-shared$GrGLProgramDataManager::setMatrix2f\28GrResourceHandle\2c\20float\20const*\29\20const +2721:byn$mgfn-shared$DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +2722:build_tree +2723:bracketAddOpening\28BracketData*\2c\20char16_t\2c\20int\29 +2724: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 +2725:bool\20OT::glyf_accelerator_t::get_points\28hb_font_t*\2c\20unsigned\20int\2c\20OT::glyf_accelerator_t::points_aggregator_t\29\20const +2726:bool\20OT::GSUBGPOSVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +2727:bool\20OT::GSUBGPOSVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +2728: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\29 +2729:auto\20std::__2::__unwrap_range\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +2730:atan +2731:alloc_large +2732:af_glyph_hints_done +2733:add_quad\28SkPoint\20const*\2c\20skia_private::TArray*\29 +2734:acos +2735:aaa_fill_path\28SkPath\20const&\2c\20SkIRect\20const&\2c\20AdditiveBlitter*\2c\20int\2c\20int\2c\20bool\2c\20bool\2c\20bool\29 +2736:_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 +2737:_get_bounds\28OT::cff1::accelerator_t\20const*\2c\20unsigned\20int\2c\20bounds_t&\2c\20bool\29 +2738:_embind_register_bindings +2739:__trunctfdf2 +2740:__towrite +2741:__toread +2742:__subtf3 +2743:__strchrnul +2744:__rem_pio2f +2745:__rem_pio2 +2746:__math_uflowf +2747:__math_oflowf +2748:__fwritex +2749:__cxxabiv1::__class_type_info::process_static_type_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\29\20const +2750:__cxxabiv1::__class_type_info::process_static_type_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\29\20const +2751:__cxxabiv1::__class_type_info::process_found_base_class\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +2752:__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 +2753:\28anonymous\20namespace\29::shape_contains_rect\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkMatrix\20const&\2c\20bool\29 +2754:\28anonymous\20namespace\29::generateFacePathCOLRv1\28FT_FaceRec_*\2c\20unsigned\20short\2c\20SkPath*\29 +2755:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads_with_constraint\28SkPoint\20const*\2c\20float\2c\20SkPathFirstDirection\2c\20skia_private::TArray*\2c\20int\29 +2756:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\2c\20int\2c\20bool\2c\20bool\29 +2757:\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 +2758:\28anonymous\20namespace\29::bloat_quad\28SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkMatrix\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +2759:\28anonymous\20namespace\29::SkEmptyTypeface::onMakeClone\28SkFontArguments\20const&\29\20const +2760:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29.1 +2761:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29 +2762:\28anonymous\20namespace\29::SkBlurImageFilter::mapSigma\28skif::Mapping\20const&\2c\20bool\29\20const +2763:\28anonymous\20namespace\29::DrawAtlasOpImpl::visitProxies\28std::__2::function\20const&\29\20const +2764:\28anonymous\20namespace\29::DrawAtlasOpImpl::programInfo\28\29 +2765:\28anonymous\20namespace\29::DrawAtlasOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +2766:\28anonymous\20namespace\29::DirectMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +2767:\28anonymous\20namespace\29::DirectMaskSubRun::glyphs\28\29\20const +2768:WebPRescaleNeededLines +2769:WebPInitDecBufferInternal +2770:WebPInitCustomIo +2771:WebPGetFeaturesInternal +2772:WebPDemuxGetFrame +2773:VP8LInitBitReader +2774:VP8LColorIndexInverseTransformAlpha +2775:VP8InitIoInternal +2776:VP8InitBitReader +2777:TT_Vary_Apply_Glyph_Deltas +2778:TT_Set_Var_Design +2779:SkWuffsCodec::decodeFrame\28\29 +2780:SkVertices::MakeCopy\28SkVertices::VertexMode\2c\20int\2c\20SkPoint\20const*\2c\20SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20short\20const*\29 +2781:SkVertices::Builder::texCoords\28\29 +2782:SkVertices::Builder::positions\28\29 +2783:SkVertices::Builder::init\28SkVertices::Desc\20const&\29 +2784:SkVertices::Builder::colors\28\29 +2785:SkVertices::Builder::Builder\28SkVertices::VertexMode\2c\20int\2c\20int\2c\20unsigned\20int\29 +2786:SkTypeface_FreeType::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +2787:SkTypeface::getTableSize\28unsigned\20int\29\20const +2788:SkTiff::ImageFileDirectory::getEntryTag\28unsigned\20short\29\20const +2789:SkTiff::ImageFileDirectory::MakeFromOffset\28sk_sp\2c\20bool\2c\20unsigned\20int\2c\20bool\29 +2790:SkTextBlobRunIterator::positioning\28\29\20const +2791:SkTSpan::splitAt\28SkTSpan*\2c\20double\2c\20SkArenaAlloc*\29 +2792:SkTSect::computePerpendiculars\28SkTSect*\2c\20SkTSpan*\2c\20SkTSpan*\29 +2793:SkTDStorage::insert\28int\29 +2794:SkTDStorage::calculateSizeOrDie\28int\29::$_0::operator\28\29\28\29\20const +2795:SkTDPQueue::percolateDownIfNecessary\28int\29 +2796:SkTConic::hullIntersects\28SkDConic\20const&\2c\20bool*\29\20const +2797:SkSurface_Base::SkSurface_Base\28int\2c\20int\2c\20SkSurfaceProps\20const*\29 +2798:SkStrokerPriv::CapFactory\28SkPaint::Cap\29 +2799:SkStrokeRec::getInflationRadius\28\29\20const +2800:SkString::equals\28char\20const*\29\20const +2801:SkStrikeSpec::MakeTransformMask\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +2802:SkStrikeSpec::MakePath\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\29 +2803:SkStrike::glyph\28SkGlyphDigest\29 +2804:SkShapers::HB::ShapeDontWrapOrReorder\28sk_sp\2c\20sk_sp\29 +2805:SkShaper::TrivialRunIterator::endOfCurrentRun\28\29\20const +2806:SkShaper::TrivialRunIterator::atEnd\28\29\20const +2807:SkShaper::MakeFontMgrRunIterator\28char\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20sk_sp\29 +2808:SkShadowTessellator::MakeAmbient\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20bool\29 +2809:SkScan::FillTriangle\28SkPoint\20const*\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +2810:SkScan::FillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +2811:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +2812:SkScan::AntiHairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +2813:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\2c\20bool\29 +2814:SkScalerContextRec::CachedMaskGamma\28unsigned\20char\2c\20unsigned\20char\29 +2815:SkScalerContextFTUtils::drawSVGGlyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29\20const +2816:SkScalarInterpFunc\28float\2c\20float\20const*\2c\20float\20const*\2c\20int\29 +2817:SkSLTypeString\28SkSLType\29 +2818:SkSL::simplify_negation\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\29 +2819: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 +2820:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +2821:SkSL::build_argument_type_list\28SkSpan>\20const>\29 +2822:SkSL::\28anonymous\20namespace\29::SwitchCaseContainsExit::visitStatement\28SkSL::Statement\20const&\29 +2823:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::returnsInputAlpha\28SkSL::Expression\20const&\29 +2824:SkSL::\28anonymous\20namespace\29::ConstantExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +2825: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 +2826:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29\20const +2827:SkSL::Type::MakeSamplerType\28char\20const*\2c\20SkSL::Type\20const&\29 +2828:SkSL::SymbolTable::moveSymbolTo\28SkSL::SymbolTable*\2c\20SkSL::Symbol*\2c\20SkSL::Context\20const&\29 +2829:SkSL::SymbolTable::isType\28std::__2::basic_string_view>\29\20const +2830:SkSL::Symbol::instantiate\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +2831:SkSL::StructType::slotCount\28\29\20const +2832:SkSL::SampleUsage::merge\28SkSL::SampleUsage\20const&\29 +2833:SkSL::ReturnStatement::~ReturnStatement\28\29.1 +2834:SkSL::ReturnStatement::~ReturnStatement\28\29 +2835:SkSL::RP::UnownedLValueSlice::~UnownedLValueSlice\28\29 +2836:SkSL::RP::Generator::pushTernaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +2837:SkSL::RP::Generator::pushStructuredComparison\28SkSL::RP::LValue*\2c\20SkSL::Operator\2c\20SkSL::RP::LValue*\2c\20SkSL::Type\20const&\29 +2838:SkSL::RP::Generator::pushMatrixMultiply\28SkSL::RP::LValue*\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +2839:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29 +2840:SkSL::RP::Builder::push_uniform\28SkSL::RP::SlotRange\29 +2841:SkSL::RP::Builder::merge_condition_mask\28\29 +2842:SkSL::RP::Builder::jump\28int\29 +2843:SkSL::RP::Builder::branch_if_no_active_lanes_on_stack_top_equal\28int\2c\20int\29 +2844:SkSL::ProgramUsage::add\28SkSL::ProgramElement\20const&\29 +2845:SkSL::Pool::detachFromThread\28\29 +2846:SkSL::PipelineStage::ConvertProgram\28SkSL::Program\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20SkSL::PipelineStage::Callbacks*\29 +2847:SkSL::Parser::unaryExpression\28\29 +2848:SkSL::Parser::swizzle\28SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::basic_string_view>\2c\20SkSL::Position\29 +2849:SkSL::Parser::block\28bool\2c\20std::__2::unique_ptr>*\29 +2850:SkSL::Operator::getBinaryPrecedence\28\29\20const +2851:SkSL::ModuleLoader::loadGPUModule\28SkSL::Compiler*\29 +2852:SkSL::ModifierFlags::checkPermittedFlags\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\29\20const +2853:SkSL::MethodReference::~MethodReference\28\29.1 +2854:SkSL::MethodReference::~MethodReference\28\29 +2855:SkSL::Mangler::uniqueName\28std::__2::basic_string_view>\2c\20SkSL::SymbolTable*\29 +2856:SkSL::LiteralType::slotType\28unsigned\20long\29\20const +2857:SkSL::Layout::operator==\28SkSL::Layout\20const&\29\20const +2858:SkSL::Layout::checkPermittedLayout\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkEnumBitMask\29\20const +2859:SkSL::Inliner::analyze\28std::__2::vector>\2c\20std::__2::allocator>>>\20const&\2c\20SkSL::SymbolTable*\2c\20SkSL::ProgramUsage*\29 +2860:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29 +2861:SkSL::GLSLCodeGenerator::writeLiteral\28SkSL::Literal\20const&\29 +2862:SkSL::GLSLCodeGenerator::writeFunctionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +2863: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::unique_ptr>\29 +2864:SkSL::FieldAccess::description\28SkSL::OperatorPrecedence\29\20const +2865:SkSL::Expression::isIncomplete\28SkSL::Context\20const&\29\20const +2866:SkSL::Expression::compareConstant\28SkSL::Expression\20const&\29\20const +2867:SkSL::DebugTracePriv::~DebugTracePriv\28\29 +2868:SkSL::Context::Context\28SkSL::BuiltinTypes\20const&\2c\20SkSL::ErrorReporter&\29 +2869:SkSL::ConstructorArrayCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +2870:SkSL::ConstructorArray::~ConstructorArray\28\29 +2871:SkSL::ConstructorArray::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +2872:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +2873:SkSL::Analysis::CallsColorTransformIntrinsics\28SkSL::Program\20const&\29 +2874:SkSL::AliasType::bitWidth\28\29\20const +2875:SkRuntimeEffectPriv::VarAsUniform\28SkSL::Variable\20const&\2c\20SkSL::Context\20const&\2c\20unsigned\20long*\29 +2876:SkRuntimeEffectPriv::UniformsAsSpan\28SkSpan\2c\20sk_sp\2c\20bool\2c\20SkColorSpace\20const*\2c\20SkArenaAlloc*\29 +2877:SkRuntimeEffect::source\28\29\20const +2878:SkRuntimeEffect::makeShader\28sk_sp\2c\20SkSpan\2c\20SkMatrix\20const*\29\20const +2879:SkRuntimeEffect::MakeForBlender\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +2880:SkResourceCache::checkMessages\28\29 +2881:SkResourceCache::NewCachedData\28unsigned\20long\29 +2882:SkRegion::translate\28int\2c\20int\2c\20SkRegion*\29\20const +2883:SkReduceOrder::Cubic\28SkPoint\20const*\2c\20SkPoint*\29 +2884:SkRectPriv::QuadContainsRectMask\28SkM44\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20float\29 +2885:SkRecords::PreCachedPath::PreCachedPath\28SkPath\20const&\29 +2886:SkRecords::FillBounds::pushSaveBlock\28SkPaint\20const*\29 +2887:SkRecordDraw\28SkRecord\20const&\2c\20SkCanvas*\2c\20SkPicture\20const*\20const*\2c\20SkDrawable*\20const*\2c\20int\2c\20SkBBoxHierarchy\20const*\2c\20SkPicture::AbortCallback*\29 +2888:SkReadBuffer::readPoint\28SkPoint*\29 +2889:SkReadBuffer::readPath\28SkPath*\29 +2890:SkReadBuffer::readByteArrayAsData\28\29 +2891:SkReadBuffer::readArray\28void*\2c\20unsigned\20long\2c\20unsigned\20long\29 +2892:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29 +2893:SkRasterPipelineBlitter::blitRectWithTrace\28int\2c\20int\2c\20int\2c\20int\2c\20bool\29 +2894:SkRasterPipelineBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +2895: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 +2896:SkRasterPipeline::appendLoad\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +2897:SkRasterClip::op\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkClipOp\2c\20bool\29 +2898:SkRRectPriv::ConservativeIntersect\28SkRRect\20const&\2c\20SkRRect\20const&\29 +2899:SkRRect::scaleRadii\28\29 +2900:SkRRect::AreRectAndRadiiValid\28SkRect\20const&\2c\20SkPoint\20const*\29 +2901:SkRBuffer::skip\28unsigned\20long\29 +2902:SkPngCodec::IsPng\28void\20const*\2c\20unsigned\20long\29 +2903:SkPixmap::setColorSpace\28sk_sp\29 +2904:SkPixelRef::~SkPixelRef\28\29 +2905:SkPixelRef::notifyPixelsChanged\28\29 +2906:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20sk_sp\29 +2907:SkPictureRecord::addPathToHeap\28SkPath\20const&\29 +2908:SkPictureData::getPath\28SkReadBuffer*\29\20const +2909:SkPicture::serialize\28SkWStream*\2c\20SkSerialProcs\20const*\2c\20SkRefCntSet*\2c\20bool\29\20const +2910:SkPathWriter::update\28SkOpPtT\20const*\29 +2911:SkPathStroker::strokeCloseEnough\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20SkQuadConstruct*\29\20const +2912:SkPathStroker::finishContour\28bool\2c\20bool\29 +2913:SkPathRef::reset\28\29 +2914:SkPathRef::isRRect\28SkRRect*\2c\20bool*\2c\20unsigned\20int*\29\20const +2915:SkPathRef::addGenIDChangeListener\28sk_sp\29 +2916:SkPathPriv::IsRectContour\28SkPath\20const&\2c\20bool\2c\20int*\2c\20SkPoint\20const**\2c\20bool*\2c\20SkPathDirection*\2c\20SkRect*\29 +2917:SkPathEffectBase::onAsPoints\28SkPathEffectBase::PointData*\2c\20SkPath\20const&\2c\20SkStrokeRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\29\20const +2918:SkPathEffect::filterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\29\20const +2919:SkPathBuilder::quadTo\28SkPoint\2c\20SkPoint\29 +2920:SkPathBuilder::cubicTo\28SkPoint\2c\20SkPoint\2c\20SkPoint\29 +2921:SkPath::writeToMemory\28void*\29\20const +2922:SkPath::reversePathTo\28SkPath\20const&\29 +2923:SkPath::rQuadTo\28float\2c\20float\2c\20float\2c\20float\29 +2924:SkPath::contains\28float\2c\20float\29\20const +2925:SkPath::arcTo\28float\2c\20float\2c\20float\2c\20SkPath::ArcSize\2c\20SkPathDirection\2c\20float\2c\20float\29 +2926:SkPath::approximateBytesUsed\28\29\20const +2927:SkPath::addCircle\28float\2c\20float\2c\20float\2c\20SkPathDirection\29 +2928:SkPath::Rect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2929:SkParse::FindScalar\28char\20const*\2c\20float*\29 +2930:SkPairPathEffect::flatten\28SkWriteBuffer&\29\20const +2931:SkPaintToGrPaintWithBlend\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkBlender*\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +2932:SkPaint::refImageFilter\28\29\20const +2933:SkPaint::refBlender\28\29\20const +2934:SkPaint::getBlendMode_or\28SkBlendMode\29\20const +2935:SkPackARGB_as_RGBA\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +2936:SkPackARGB_as_BGRA\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +2937:SkOpSpan::setOppSum\28int\29 +2938:SkOpSegment::markAndChaseWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int\2c\20SkOpSpanBase**\29 +2939:SkOpSegment::markAllDone\28\29 +2940:SkOpSegment::activeWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +2941:SkOpPtT::contains\28SkOpSegment\20const*\29\20const +2942:SkOpEdgeBuilder::closeContour\28SkPoint\20const&\2c\20SkPoint\20const&\29 +2943:SkOpCoincidence::releaseDeleted\28\29 +2944:SkOpCoincidence::markCollapsed\28SkOpPtT*\29 +2945:SkOpCoincidence::findOverlaps\28SkOpCoincidence*\29\20const +2946:SkOpCoincidence::expand\28\29 +2947:SkOpCoincidence::apply\28\29 +2948:SkOpAngle::orderable\28SkOpAngle*\29 +2949:SkOpAngle::computeSector\28\29 +2950:SkNullBlitter::~SkNullBlitter\28\29 +2951:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\2c\20sk_sp\29 +2952:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\29 +2953:SkNoDestructor>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>>::SkNoDestructor\28skia_private::THashMap>\2c\20SkSL::IntrinsicKind\2c\20SkGoodHash>&&\29 +2954:SkMessageBus::BufferFinishedMessage\2c\20GrDirectContext::DirectContextID\2c\20false>::Get\28\29 +2955:SkMemoryStream::SkMemoryStream\28void\20const*\2c\20unsigned\20long\2c\20bool\29 +2956:SkMemoryStream::SkMemoryStream\28sk_sp\29 +2957:SkMatrix::setRotate\28float\29 +2958:SkMatrix::setPolyToPoly\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20int\29 +2959:SkMatrix::postSkew\28float\2c\20float\29 +2960:SkMatrix::invert\28SkMatrix*\29\20const +2961:SkMatrix::getMinScale\28\29\20const +2962:SkMatrix::getMinMaxScales\28float*\29\20const +2963:SkMaskBuilder::PrepareDestination\28int\2c\20int\2c\20SkMask\20const&\29 +2964:SkMakeBitmapShaderForPaint\28SkPaint\20const&\2c\20SkBitmap\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20SkCopyPixelsMode\29 +2965:SkLineClipper::ClipLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\2c\20bool\29 +2966:SkJpegCodec::ReadHeader\28SkStream*\2c\20SkCodec**\2c\20JpegDecoderMgr**\2c\20std::__2::unique_ptr>\29 +2967:SkJSONWriter::separator\28bool\29 +2968:SkIntersections::intersectRay\28SkDQuad\20const&\2c\20SkDLine\20const&\29 +2969:SkIntersections::intersectRay\28SkDLine\20const&\2c\20SkDLine\20const&\29 +2970:SkIntersections::intersectRay\28SkDCubic\20const&\2c\20SkDLine\20const&\29 +2971:SkIntersections::intersectRay\28SkDConic\20const&\2c\20SkDLine\20const&\29 +2972:SkIntersections::cleanUpParallelLines\28bool\29 +2973:SkImage_Raster::SkImage_Raster\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20int\29 +2974:SkImage_Ganesh::~SkImage_Ganesh\28\29 +2975:SkImageShader::Make\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +2976:SkImageInfo::Make\28SkISize\2c\20SkColorType\2c\20SkAlphaType\29 +2977:SkImageInfo::MakeN32Premul\28SkISize\29 +2978:SkImageGenerator::getPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\29 +2979:SkImageGenerator::SkImageGenerator\28SkImageInfo\20const&\2c\20unsigned\20int\29 +2980:SkImageFilters::MatrixTransform\28SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20sk_sp\29 +2981:SkImageFilters::Blur\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +2982:SkImageFilter_Base::getInputBounds\28skif::Mapping\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\29\20const +2983:SkImageFilter_Base::filterImage\28skif::Context\20const&\29\20const +2984:SkImageFilter_Base::affectsTransparentBlack\28\29\20const +2985:SkImage::width\28\29\20const +2986:SkImage::readPixels\28GrDirectContext*\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +2987:SkImage::hasMipmaps\28\29\20const +2988:SkIDChangeListener::List::add\28sk_sp\29 +2989: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 +2990: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 +2991:SkGradientBaseShader::AppendInterpolatedToDstStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20bool\2c\20SkGradientShader::Interpolation\20const&\2c\20SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +2992:SkGlyph::setPath\28SkArenaAlloc*\2c\20SkScalerContext*\29 +2993:SkGlyph::mask\28\29\20const +2994:SkFontScanner_FreeType::GetAxes\28FT_FaceRec_*\2c\20skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>*\29 +2995:SkFontPriv::ApproximateTransformedTextSize\28SkFont\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\20const&\29 +2996:SkFontMgr::matchFamily\28char\20const*\29\20const +2997:SkFindCubicMaxCurvature\28SkPoint\20const*\2c\20float*\29 +2998:SkExif::parse_ifd\28SkExif::Metadata&\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20bool\2c\20bool\29 +2999:SkEncodedInfo::ICCProfile::Make\28sk_sp\29 +3000:SkEmptyFontMgr::onMatchFamilyStyleCharacter\28char\20const*\2c\20SkFontStyle\20const&\2c\20char\20const**\2c\20int\2c\20int\29\20const +3001:SkEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkIRect\20const*\2c\20int\29 +3002:SkDynamicMemoryWStream::padToAlign4\28\29 +3003:SkDrawable::SkDrawable\28\29 +3004:SkDrawBase::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29\20const +3005:SkDrawBase::drawDevicePoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\2c\20SkDevice*\29\20const +3006:SkDraw::drawBitmap\28SkBitmap\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29\20const +3007:SkDevice::simplifyGlyphRunRSXFormAndRedraw\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +3008:SkDevice::setDeviceCoordinateSystem\28SkM44\20const&\2c\20SkM44\20const&\2c\20SkM44\20const&\2c\20int\2c\20int\29 +3009:SkDevice::SkDevice\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +3010:SkDataTable::at\28int\2c\20unsigned\20long*\29\20const +3011:SkData::MakeZeroInitialized\28unsigned\20long\29 +3012:SkData::MakeFromStream\28SkStream*\2c\20unsigned\20long\29 +3013:SkDQuad::dxdyAtT\28double\29\20const +3014:SkDQuad::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +3015:SkDQuad::FindExtrema\28double\20const*\2c\20double*\29 +3016:SkDCubic::subDivide\28double\2c\20double\29\20const +3017:SkDCubic::searchRoots\28double*\2c\20int\2c\20double\2c\20SkDCubic::SearchAxis\2c\20double*\29\20const +3018:SkDCubic::Coefficients\28double\20const*\2c\20double*\2c\20double*\2c\20double*\2c\20double*\29 +3019:SkDConic::dxdyAtT\28double\29\20const +3020:SkDConic::FindExtrema\28double\20const*\2c\20float\2c\20double*\29 +3021:SkCopyStreamToData\28SkStream*\29 +3022:SkContourMeasure_segTo\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20float\2c\20SkPath*\29 +3023:SkContourMeasureIter::next\28\29 +3024:SkContourMeasureIter::Impl::compute_quad_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3025:SkContourMeasureIter::Impl::compute_cubic_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3026: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 +3027:SkContourMeasure::getPosTan\28float\2c\20SkPoint*\2c\20SkPoint*\29\20const +3028:SkConic::evalAt\28float\29\20const +3029:SkConic::TransformW\28SkPoint\20const*\2c\20float\2c\20SkMatrix\20const&\29 +3030:SkColorToPMColor4f\28unsigned\20int\2c\20GrColorInfo\20const&\29 +3031:SkColorSpace::transferFn\28skcms_TransferFunction*\29\20const +3032:SkColorSpace::toXYZD50\28skcms_Matrix3x3*\29\20const +3033:SkColorPalette::SkColorPalette\28unsigned\20int\20const*\2c\20int\29 +3034:SkColorFilters::Blend\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\2c\20SkBlendMode\29 +3035:SkColor4fPrepForDst\28SkRGBA4f<\28SkAlphaType\293>\2c\20GrColorInfo\20const&\29 +3036:SkCodec::startIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const*\29 +3037:SkChopMonoCubicAtY\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +3038:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\2c\20float\29 +3039:SkCanvas::setMatrix\28SkM44\20const&\29 +3040:SkCanvas::scale\28float\2c\20float\29 +3041:SkCanvas::private_draw_shadow_rec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +3042:SkCanvas::peekPixels\28SkPixmap*\29 +3043:SkCanvas::onResetClip\28\29 +3044:SkCanvas::onClipShader\28sk_sp\2c\20SkClipOp\29 +3045:SkCanvas::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +3046:SkCanvas::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3047:SkCanvas::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3048:SkCanvas::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3049:SkCanvas::internal_private_resetClip\28\29 +3050:SkCanvas::internalSaveLayer\28SkCanvas::SaveLayerRec\20const&\2c\20SkCanvas::SaveLayerStrategy\2c\20bool\29 +3051:SkCanvas::internalDrawDeviceWithFilter\28SkDevice*\2c\20SkDevice*\2c\20SkSpan>\2c\20SkPaint\20const&\2c\20SkCanvas::DeviceCompatibleWithFilter\2c\20SkColorInfo\20const&\2c\20float\2c\20bool\29 +3052:SkCanvas::experimental_DrawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +3053:SkCanvas::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +3054:SkCanvas::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +3055:SkCanvas::drawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +3056:SkCanvas::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +3057:SkCanvas::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +3058:SkCanvas::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +3059:SkCanvas::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +3060:SkCanvas::attemptBlurredRRectDraw\28SkRRect\20const&\2c\20SkPaint\20const&\2c\20SkEnumBitMask\29 +3061:SkCanvas::SkCanvas\28SkIRect\20const&\29 +3062:SkCachedData::~SkCachedData\28\29 +3063:SkCTMShader::~SkCTMShader\28\29.1 +3064:SkBmpRLECodec::setPixel\28void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20char\29 +3065:SkBmpCodec::prepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +3066:SkBlitterClipper::apply\28SkBlitter*\2c\20SkRegion\20const*\2c\20SkIRect\20const*\29 +3067:SkBlitter::blitRegion\28SkRegion\20const&\29 +3068:SkBitmapDevice::BDDraw::~BDDraw\28\29 +3069:SkBitmapCacheDesc::Make\28SkImage\20const*\29 +3070:SkBitmap::writePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +3071:SkBitmap::setPixels\28void*\29 +3072:SkBitmap::pixelRefOrigin\28\29\20const +3073:SkBitmap::notifyPixelsChanged\28\29\20const +3074:SkBitmap::isImmutable\28\29\20const +3075:SkBitmap::allocPixels\28\29 +3076:SkBinaryWriteBuffer::writeScalarArray\28float\20const*\2c\20unsigned\20int\29 +3077:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29.1 +3078:SkBaseShadowTessellator::handleCubic\28SkMatrix\20const&\2c\20SkPoint*\29 +3079:SkBaseShadowTessellator::handleConic\28SkMatrix\20const&\2c\20SkPoint*\2c\20float\29 +3080:SkAutoPathBoundsUpdate::SkAutoPathBoundsUpdate\28SkPath*\2c\20SkRect\20const&\29 +3081:SkAutoDescriptor::SkAutoDescriptor\28SkAutoDescriptor&&\29 +3082:SkArenaAllocWithReset::SkArenaAllocWithReset\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3083:SkAnimatedImage::decodeNextFrame\28\29 +3084:SkAnimatedImage::Frame::copyTo\28SkAnimatedImage::Frame*\29\20const +3085:SkAnalyticQuadraticEdge::updateQuadratic\28\29 +3086:SkAnalyticCubicEdge::updateCubic\28bool\29 +3087:SkAlphaRuns::reset\28int\29 +3088:SkAAClip::setRect\28SkIRect\20const&\29 +3089:Simplify\28SkPath\20const&\2c\20SkPath*\29 +3090:ReconstructRow +3091:R.1 +3092:OpAsWinding::nextEdge\28Contour&\2c\20OpAsWinding::Edge\29 +3093:OT::sbix::sanitize\28hb_sanitize_context_t*\29\20const +3094:OT::post::accelerator_t::cmp_gids\28void\20const*\2c\20void\20const*\2c\20void*\29 +3095:OT::gvar::sanitize_shallow\28hb_sanitize_context_t*\29\20const +3096:OT::fvar::sanitize\28hb_sanitize_context_t*\29\20const +3097:OT::cmap::sanitize\28hb_sanitize_context_t*\29\20const +3098:OT::cmap::accelerator_t::accelerator_t\28hb_face_t*\29 +3099:OT::cff2::accelerator_templ_t>::~accelerator_templ_t\28\29 +3100:OT::avar::sanitize\28hb_sanitize_context_t*\29\20const +3101:OT::VarRegionList::evaluate\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20float*\29\20const +3102:OT::Rule::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +3103:OT::OpenTypeFontFile::sanitize\28hb_sanitize_context_t*\29\20const +3104:OT::MVAR::sanitize\28hb_sanitize_context_t*\29\20const +3105: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 +3106: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 +3107:OT::GDEFVersion1_2::sanitize\28hb_sanitize_context_t*\29\20const +3108:OT::Device::get_y_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +3109:OT::Device::get_x_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +3110:OT::ClipList::get_extents\28unsigned\20int\2c\20hb_glyph_extents_t*\2c\20OT::VarStoreInstancer\20const&\29\20const +3111:OT::ChainRule::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +3112:OT::CPAL::sanitize\28hb_sanitize_context_t*\29\20const +3113:OT::COLR::sanitize\28hb_sanitize_context_t*\29\20const +3114: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 +3115:MakeRasterCopyPriv\28SkPixmap\20const&\2c\20unsigned\20int\29 +3116:LineQuadraticIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineQuadraticIntersections::PinTPoint\29 +3117:LineQuadraticIntersections::checkCoincident\28\29 +3118:LineQuadraticIntersections::addLineNearEndPoints\28\29 +3119:LineCubicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineCubicIntersections::PinTPoint\29 +3120:LineCubicIntersections::checkCoincident\28\29 +3121:LineCubicIntersections::addLineNearEndPoints\28\29 +3122:LineConicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineConicIntersections::PinTPoint\29 +3123:LineConicIntersections::checkCoincident\28\29 +3124:LineConicIntersections::addLineNearEndPoints\28\29 +3125:GrXferProcessor::GrXferProcessor\28GrProcessor::ClassID\29 +3126:GrVertexChunkBuilder::~GrVertexChunkBuilder\28\29 +3127:GrTriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +3128:GrTriangulator::splitEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +3129:GrTriangulator::pathToPolys\28float\2c\20SkRect\20const&\2c\20bool*\29 +3130:GrTriangulator::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20GrTriangulator::VertexList*\2c\20int\29\20const +3131:GrTriangulator::emitTriangle\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20int\2c\20skgpu::VertexWriter\29\20const +3132:GrTriangulator::checkForIntersection\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +3133:GrTriangulator::applyFillType\28int\29\20const +3134:GrTriangulator::EdgeList::insert\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\29 +3135:GrTriangulator::Edge::insertBelow\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +3136:GrTriangulator::Edge::insertAbove\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +3137:GrToGLStencilFunc\28GrStencilTest\29 +3138:GrThreadSafeCache::dropAllRefs\28\29 +3139:GrTextureRenderTargetProxy::callbackDesc\28\29\20const +3140:GrTexture::GrTexture\28GrGpu*\2c\20SkISize\20const&\2c\20skgpu::Protected\2c\20GrTextureType\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +3141:GrTexture::ComputeScratchKey\28GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20skgpu::ScratchKey*\29 +3142:GrSurfaceProxyView::asTextureProxyRef\28\29\20const +3143: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 +3144:GrSurfaceProxy::GrSurfaceProxy\28sk_sp\2c\20SkBackingFit\2c\20GrSurfaceProxy::UseAllocator\29 +3145:GrSurface::setRelease\28sk_sp\29 +3146:GrStyledShape::styledBounds\28\29\20const +3147:GrStyledShape::asLine\28SkPoint*\2c\20bool*\29\20const +3148:GrStyledShape::addGenIDChangeListener\28sk_sp\29\20const +3149:GrSimpleMeshDrawOpHelper::fixedFunctionFlags\28\29\20const +3150:GrShape::setRect\28SkRect\20const&\29 +3151:GrShape::setRRect\28SkRRect\20const&\29 +3152:GrShape::segmentMask\28\29\20const +3153:GrResourceProvider::assignUniqueKeyToResource\28skgpu::UniqueKey\20const&\2c\20GrGpuResource*\29 +3154:GrResourceCache::releaseAll\28\29 +3155:GrResourceCache::getNextTimestamp\28\29 +3156:GrRenderTask::addDependency\28GrRenderTask*\29 +3157:GrRenderTargetProxy::canUseStencil\28GrCaps\20const&\29\20const +3158:GrRecordingContextPriv::addOnFlushCallbackObject\28GrOnFlushCallbackObject*\29 +3159:GrRecordingContext::~GrRecordingContext\28\29 +3160:GrRecordingContext::abandonContext\28\29 +3161: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 +3162:GrQuadUtils::TessellationHelper::EdgeEquations::reset\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\29 +3163:GrQuadUtils::ResolveAAType\28GrAAType\2c\20GrQuadAAFlags\2c\20GrQuad\20const&\2c\20GrAAType*\2c\20GrQuadAAFlags*\29 +3164:GrQuadBuffer<\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA>::append\28GrQuad\20const&\2c\20\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA&&\2c\20GrQuad\20const*\29 +3165:GrPixmap::GrPixmap\28GrImageInfo\2c\20void*\2c\20unsigned\20long\29 +3166:GrPipeline::GrPipeline\28GrPipeline::InitArgs\20const&\2c\20GrProcessorSet&&\2c\20GrAppliedClip&&\29 +3167:GrPersistentCacheUtils::UnpackCachedShaders\28SkReadBuffer*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\2c\20SkSL::ProgramInterface*\2c\20int\2c\20GrPersistentCacheUtils::ShaderMetadata*\29 +3168:GrPathUtils::convertCubicToQuads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\29 +3169:GrPathTessellationShader::Make\28GrShaderCaps\20const&\2c\20SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::tess::PatchAttribs\29 +3170:GrOp::chainConcat\28std::__2::unique_ptr>\29 +3171:GrOp::GenOpClassID\28\29 +3172:GrMeshDrawOp::PatternHelper::PatternHelper\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +3173:GrMemoryPool::Make\28unsigned\20long\2c\20unsigned\20long\29 +3174:GrMakeKeyFromImageID\28skgpu::UniqueKey*\2c\20unsigned\20int\2c\20SkIRect\20const&\29 +3175:GrImageInfo::GrImageInfo\28GrColorInfo\20const&\2c\20SkISize\20const&\29 +3176:GrGpuResource::removeScratchKey\28\29 +3177:GrGpuResource::registerWithCacheWrapped\28GrWrapCacheable\29 +3178:GrGpuResource::dumpMemoryStatisticsPriv\28SkTraceMemoryDump*\2c\20SkString\20const&\2c\20char\20const*\2c\20unsigned\20long\29\20const +3179:GrGpuBuffer::onGpuMemorySize\28\29\20const +3180:GrGpu::resolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +3181:GrGpu::executeFlushInfo\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +3182:GrGeometryProcessor::TextureSampler::TextureSampler\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +3183:GrGeometryProcessor::ProgramImpl::ComputeMatrixKeys\28GrShaderCaps\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\29 +3184:GrGLUniformHandler::getUniformVariable\28GrResourceHandle\29\20const +3185:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +3186:GrGLSemaphore::GrGLSemaphore\28GrGLGpu*\2c\20bool\29 +3187:GrGLSLVaryingHandler::~GrGLSLVaryingHandler\28\29 +3188:GrGLSLUniformHandler::addInputSampler\28skgpu::Swizzle\20const&\2c\20char\20const*\29 +3189:GrGLSLShaderBuilder::emitFunction\28SkSLType\2c\20char\20const*\2c\20SkSpan\2c\20char\20const*\29 +3190:GrGLSLProgramDataManager::setSkMatrix\28GrResourceHandle\2c\20SkMatrix\20const&\29\20const +3191:GrGLSLProgramBuilder::writeFPFunction\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +3192:GrGLSLProgramBuilder::invokeFP\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +3193:GrGLSLProgramBuilder::addRTFlipUniform\28char\20const*\29 +3194:GrGLSLFragmentShaderBuilder::dstColor\28\29 +3195:GrGLSLBlend::BlendKey\28SkBlendMode\29 +3196:GrGLProgramBuilder::~GrGLProgramBuilder\28\29 +3197:GrGLProgramBuilder::computeCountsAndStrides\28unsigned\20int\2c\20GrGeometryProcessor\20const&\2c\20bool\29 +3198:GrGLGpu::flushScissor\28GrScissorState\20const&\2c\20int\2c\20GrSurfaceOrigin\29 +3199:GrGLGpu::flushClearColor\28std::__2::array\29 +3200:GrGLGpu::deleteFence\28__GLsync*\29 +3201: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 +3202:GrGLGpu::copySurfaceAsDraw\28GrSurface*\2c\20bool\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +3203:GrGLGpu::SamplerObjectCache::~SamplerObjectCache\28\29 +3204:GrGLGpu::HWVertexArrayState::bindInternalVertexArray\28GrGLGpu*\2c\20GrBuffer\20const*\29 +3205: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 +3206:GrGLFinishCallbacks::callAll\28bool\29 +3207:GrGLBuffer::Make\28GrGLGpu*\2c\20unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +3208:GrGLAttribArrayState::enableVertexArrays\28GrGLGpu\20const*\2c\20int\2c\20GrPrimitiveRestart\29 +3209: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 +3210:GrFragmentProcessors::MakeChildFP\28SkRuntimeEffect::ChildPtr\20const&\2c\20GrFPArgs\20const&\29 +3211:GrFragmentProcessors::IsSupported\28SkMaskFilter\20const*\29 +3212:GrFragmentProcessor::makeProgramImpl\28\29\20const +3213:GrFragmentProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +3214:GrFragmentProcessor::MulInputByChildAlpha\28std::__2::unique_ptr>\29 +3215:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +3216:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29 +3217:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +3218:GrDynamicAtlas::makeNode\28GrDynamicAtlas::Node*\2c\20int\2c\20int\2c\20int\2c\20int\29 +3219:GrDrawingManager::setLastRenderTask\28GrSurfaceProxy\20const*\2c\20GrRenderTask*\29 +3220:GrDrawingManager::flushSurfaces\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +3221:GrDrawOpAtlas::updatePlot\28GrDeferredUploadTarget*\2c\20skgpu::AtlasLocator*\2c\20skgpu::Plot*\29 +3222:GrDirectContext::resetContext\28unsigned\20int\29 +3223:GrDirectContext::getResourceCacheLimit\28\29\20const +3224:GrDefaultGeoProcFactory::MakeForDeviceSpace\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +3225:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20sk_sp\29 +3226:GrColorSpaceXform::apply\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +3227:GrColorSpaceXform::Equals\28GrColorSpaceXform\20const*\2c\20GrColorSpaceXform\20const*\29 +3228:GrBufferAllocPool::unmap\28\29 +3229:GrBlurUtils::can_filter_mask\28SkMaskFilterBase\20const*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect*\29 +3230: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 +3231: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 +3232:GrBackendTextures::MakeGL\28int\2c\20int\2c\20skgpu::Mipmapped\2c\20GrGLTextureInfo\20const&\2c\20sk_sp\2c\20std::__2::basic_string_view>\29 +3233:GrBackendFormatStencilBits\28GrBackendFormat\20const&\29 +3234:GrBackendFormat::asMockCompressionType\28\29\20const +3235:GrAATriangulator::~GrAATriangulator\28\29 +3236:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrAATriangulator::EventList*\29\20const +3237:GrAAConvexTessellator::fanRing\28GrAAConvexTessellator::Ring\20const&\29 +3238:GrAAConvexTessellator::computePtAlongBisector\28int\2c\20SkPoint\20const&\2c\20int\2c\20float\2c\20SkPoint*\29\20const +3239:FT_Stream_ReadAt +3240:FT_Stream_OpenMemory +3241:FT_Set_Char_Size +3242:FT_Request_Metrics +3243:FT_Hypot +3244:FT_Get_Var_Design_Coordinates +3245:FT_Get_Paint +3246:FT_Get_MM_Var +3247:DecodeImageData +3248:Cr_z_inflate_table +3249:Cr_z_inflateReset +3250:Cr_z_deflateEnd +3251:Cr_z_copy_with_crc +3252:Compute_Point_Displacement +3253:AAT::trak::sanitize\28hb_sanitize_context_t*\29\20const +3254:AAT::ltag::sanitize\28hb_sanitize_context_t*\29\20const +3255:AAT::feat::sanitize\28hb_sanitize_context_t*\29\20const +3256:AAT::StateTable::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +3257:AAT::Lookup>\2c\20OT::IntType\2c\20false>>::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3258:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3259:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3260:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +3261:zeroinfnan +3262:xyz_almost_equal\28skcms_Matrix3x3\20const&\2c\20skcms_Matrix3x3\20const&\29 +3263:wuffs_lzw__decoder__transform_io +3264:wuffs_gif__decoder__set_quirk_enabled +3265:wuffs_gif__decoder__restart_frame +3266:wuffs_gif__decoder__num_animation_loops +3267:wuffs_gif__decoder__frame_dirty_rect +3268:wuffs_gif__decoder__decode_up_to_id_part1 +3269:wuffs_gif__decoder__decode_frame +3270:write_vertex_position\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrShaderVar\20const&\2c\20SkMatrix\20const&\2c\20char\20const*\2c\20GrShaderVar*\2c\20GrResourceHandle*\29 +3271:write_passthrough_vertex_position\28GrGLSLVertexBuilder*\2c\20GrShaderVar\20const&\2c\20GrShaderVar*\29 +3272:wctomb +3273:wchar_t*\20std::__2::copy\5babi:v160004\5d\2c\20wchar_t*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20wchar_t*\29 +3274:walk_simple_edges\28SkEdge*\2c\20SkBlitter*\2c\20int\2c\20int\29 +3275:vsscanf +3276:void\20std::__2::vector>::assign\28unsigned\20long*\2c\20unsigned\20long*\29 +3277: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 +3278:void\20std::__2::vector>::assign\28skia::textlayout::FontFeature*\2c\20skia::textlayout::FontFeature*\29 +3279:void\20std::__2::vector\2c\20std::__2::allocator>>::__emplace_back_slow_path>\28sk_sp&&\29 +3280:void\20std::__2::vector>::assign\28SkString*\2c\20SkString*\29 +3281:void\20std::__2::vector>::__emplace_back_slow_path\28char\20const*&\29 +3282:void\20std::__2::vector>::__push_back_slow_path\28SkSL::FunctionDebugInfo&&\29 +3283:void\20std::__2::vector>::__push_back_slow_path\28SkMeshSpecification::Varying&&\29 +3284:void\20std::__2::vector>::__push_back_slow_path\28SkMeshSpecification::Attribute&&\29 +3285:void\20std::__2::vector>::assign\28SkFontArguments::VariationPosition::Coordinate*\2c\20SkFontArguments::VariationPosition::Coordinate*\29 +3286:void\20std::__2::vector>::__emplace_back_slow_path\28SkRect&\2c\20int&\2c\20int&\29 +3287:void\20std::__2::allocator_traits>::construct\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\29 +3288:void\20std::__2::__tree_balance_after_insert\5babi:v160004\5d*>\28std::__2::__tree_node_base*\2c\20std::__2::__tree_node_base*\29 +3289: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 +3290: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 +3291:void\20std::__2::__optional_storage_base::__assign_from\5babi:v160004\5d\20const&>\28std::__2::__optional_copy_assign_base\20const&\29 +3292:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20char*&\2c\20char*&\29 +3293:void\20std::__2::__call_once_proxy\5babi:v160004\5d>\28void*\29 +3294:void\20sorted_merge<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +3295:void\20sorted_merge<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +3296:void\20sort_r_simple<>\28void*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\20\28*\29\28void\20const*\2c\20void\20const*\29\29.1 +3297:void\20skgpu::ganesh::SurfaceFillContext::clear<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\20const&\29 +3298:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +3299:void\20emscripten::internal::MemberAccess>::setWire\28sk_sp\20SkRuntimeEffect::TracedShader::*\20const&\2c\20SkRuntimeEffect::TracedShader&\2c\20sk_sp*\29 +3300:void\20emscripten::internal::MemberAccess::setWire\28SimpleFontStyle\20SimpleStrutStyle::*\20const&\2c\20SimpleStrutStyle&\2c\20SimpleFontStyle*\29 +3301: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 +3302:void\20SkTIntroSort\28int\2c\20int*\2c\20int\2c\20DistanceLessThan\20const&\29 +3303: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 +3304:void\20SkTIntroSort\28int\2c\20SkString*\2c\20int\2c\20bool\20\20const\28&\29\28SkString\20const&\2c\20SkString\20const&\29\29 +3305:void\20SkTIntroSort\28int\2c\20SkOpRayHit**\2c\20int\2c\20bool\20\20const\28&\29\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29\29 +3306: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 +3307: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 +3308: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 +3309: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 +3310:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\20const\28&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +3311:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\28*\20const&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +3312:void\20SkTIntroSort\28int\2c\20Edge*\2c\20int\2c\20EdgeLT\20const&\29 +3313: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::BaseCoord\29 +3314: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 +3315:virtual\20thunk\20to\20GrGLTexture::onSetLabel\28\29 +3316:virtual\20thunk\20to\20GrGLTexture::backendFormat\28\29\20const +3317:vfiprintf +3318:validate_texel_levels\28SkISize\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20GrCaps\20const*\29 +3319:unsigned\20short\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3320:unsigned\20long\20long\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3321:unsigned\20int\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3322:unsigned\20int\20const*\20std::__2::lower_bound\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\2c\20unsigned\20long\20const&\29 +3323:unsigned\20int\20const&\20std::__2::__identity::operator\28\29\28unsigned\20int\20const&\29\20const +3324:ubidi_close_skia +3325:u_terminateUChars_skia +3326:u_charType_skia +3327:tt_size_run_prep +3328:tt_size_done_bytecode +3329:tt_sbit_decoder_load_image +3330:tt_face_vary_cvt +3331:tt_face_palette_set +3332:tt_face_load_cvt +3333:tt_face_get_metrics +3334:tt_done_blend +3335:tt_delta_interpolate +3336:tt_cmap4_set_range +3337:tt_cmap4_next +3338:tt_cmap4_char_map_linear +3339:tt_cmap4_char_map_binary +3340:tt_cmap14_get_def_chars +3341:tt_cmap13_next +3342:tt_cmap12_next +3343:tt_cmap12_init +3344:tt_cmap12_char_map_binary +3345:tt_apply_mvar +3346:toParagraphStyle\28SimpleParagraphStyle\20const&\29 +3347:t1_lookup_glyph_by_stdcharcode_ps +3348:t1_builder_close_contour +3349:t1_builder_check_points +3350:strtox.1 +3351:strtoull +3352:strtoll_l +3353:strspn +3354:strncpy +3355:store_int +3356:std::logic_error::~logic_error\28\29 +3357:std::logic_error::logic_error\28char\20const*\29 +3358:std::exception::exception\5babi:v160004\5d\28\29 +3359:std::__2::vector>::max_size\28\29\20const +3360:std::__2::vector>::__construct_at_end\28unsigned\20long\29 +3361:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +3362:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::locale::facet**\29 +3363:std::__2::vector>::__annotate_shrink\5babi:v160004\5d\28unsigned\20long\29\20const +3364:std::__2::vector>::__annotate_new\5babi:v160004\5d\28unsigned\20long\29\20const +3365:std::__2::vector>::__annotate_delete\5babi:v160004\5d\28\29\20const +3366:std::__2::vector>::insert\28std::__2::__wrap_iter\2c\20float&&\29 +3367:std::__2::vector>::__append\28unsigned\20long\29 +3368:std::__2::unique_ptr::operator=\5babi:v160004\5d\28std::__2::unique_ptr&&\29 +3369:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3370: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 +3371:std::__2::unique_ptr>::operator=\5babi:v160004\5d\28std::nullptr_t\29 +3372:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda0'\28\29::operator\28\29\28\29\20const +3373:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda'\28\29::operator\28\29\28\29\20const +3374:std::__2::to_string\28unsigned\20long\29 +3375: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 +3376:std::__2::time_put>>::~time_put\28\29 +3377: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 +3378: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 +3379: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 +3380: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 +3381: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 +3382: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 +3383:std::__2::reverse_iterator::operator++\5babi:v160004\5d\28\29 +3384:std::__2::reverse_iterator::operator*\5babi:v160004\5d\28\29\20const +3385:std::__2::priority_queue>\2c\20GrAATriangulator::EventComparator>::push\28GrAATriangulator::Event*\20const&\29 +3386: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 +3387: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 +3388:std::__2::pair\2c\20std::__2::allocator>>>::pair\28std::__2::pair\2c\20std::__2::allocator>>>&&\29 +3389:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28wchar_t\29 +3390:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28char\29 +3391:std::__2::optional&\20std::__2::optional::operator=\5babi:v160004\5d\28SkPath\20const&\29 +3392:std::__2::numpunct::~numpunct\28\29 +3393:std::__2::numpunct::~numpunct\28\29 +3394: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 +3395:std::__2::num_get>>\20const&\20std::__2::use_facet\5babi:v160004\5d>>>\28std::__2::locale\20const&\29 +3396: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 +3397:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3398:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3399:std::__2::moneypunct::do_negative_sign\28\29\20const +3400:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3401:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +3402:std::__2::moneypunct::do_negative_sign\28\29\20const +3403: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 +3404: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 +3405:std::__2::locale::__imp::~__imp\28\29 +3406: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 +3407: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 +3408:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28char*\2c\20char*\29 +3409:std::__2::iterator_traits::difference_type\20std::__2::__distance\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::random_access_iterator_tag\29 +3410:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +3411:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +3412:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +3413:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +3414:std::__2::ios_base::width\5babi:v160004\5d\28long\29 +3415:std::__2::ios_base::imbue\28std::__2::locale\20const&\29 +3416:std::__2::ios_base::__call_callbacks\28std::__2::ios_base::event\29 +3417:std::__2::hash::operator\28\29\28skia::textlayout::FontArguments\20const&\29\20const +3418:std::__2::enable_if::value\20&&\20is_move_assignable::value\2c\20void>::type\20std::__2::swap\5babi:v160004\5d\28char&\2c\20char&\29 +3419: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 +3420: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 +3421: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 +3422:std::__2::deque>::__add_back_capacity\28\29 +3423:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28sktext::gpu::TextBlobRedrawCoordinator*\29\20const +3424:std::__2::default_delete::operator\28\29\5babi:v160004\5d\28sktext::GlyphRunBuilder*\29\20const +3425:std::__2::ctype::~ctype\28\29 +3426:std::__2::codecvt::~codecvt\28\29 +3427: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 +3428: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 +3429:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +3430: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 +3431: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 +3432:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +3433: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 +3434:std::__2::char_traits::not_eof\28int\29 +3435:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28\29\20const +3436:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29 +3437: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 +3438: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 +3439:std::__2::basic_string\2c\20std::__2::allocator>::resize\28unsigned\20long\2c\20char\29 +3440:std::__2::basic_string\2c\20std::__2::allocator>::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +3441:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20char\29 +3442:std::__2::basic_string\2c\20std::__2::allocator>::basic_string>\2c\20void>\28std::__2::basic_string_view>\20const&\29 +3443:std::__2::basic_string\2c\20std::__2::allocator>::__throw_out_of_range\5babi:v160004\5d\28\29\20const +3444:std::__2::basic_string\2c\20std::__2::allocator>::__null_terminate_at\5babi:v160004\5d\28char*\2c\20unsigned\20long\29 +3445: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 +3446:std::__2::basic_string\2c\20std::__2::allocator>&\20skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::emplace_back\28char\20const*&&\29 +3447:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +3448:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +3449:std::__2::basic_streambuf>::sputc\5babi:v160004\5d\28char\29 +3450:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +3451:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +3452:std::__2::basic_ostream>::~basic_ostream\28\29.2 +3453:std::__2::basic_ostream>::sentry::~sentry\28\29 +3454:std::__2::basic_ostream>::sentry::sentry\28std::__2::basic_ostream>&\29 +3455:std::__2::basic_ostream>::operator<<\28float\29 +3456:std::__2::basic_ostream>::flush\28\29 +3457:std::__2::basic_istream>::~basic_istream\28\29.2 +3458:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\2c\20unsigned\20long\29 +3459:std::__2::allocator::deallocate\5babi:v160004\5d\28wchar_t*\2c\20unsigned\20long\29 +3460:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3461:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3462:std::__2::__wrap_iter\20std::__2::vector>::insert\2c\200>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +3463:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +3464:std::__2::__time_put::__time_put\5babi:v160004\5d\28\29 +3465:std::__2::__time_put::__do_put\28char*\2c\20char*&\2c\20tm\20const*\2c\20char\2c\20char\29\20const +3466:std::__2::__throw_system_error\28int\2c\20char\20const*\29 +3467:std::__2::__split_buffer>::push_back\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +3468:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +3469: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 +3470: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 +3471: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 +3472: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 +3473: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 +3474: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 +3475: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 +3476: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 +3477:std::__2::__libcpp_sscanf_l\28char\20const*\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +3478: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 +3479:std::__2::__libcpp_mb_cur_max_l\5babi:v160004\5d\28__locale_struct*\29 +3480:std::__2::__libcpp_deallocate\5babi:v160004\5d\28void*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3481:std::__2::__libcpp_allocate\5babi:v160004\5d\28unsigned\20long\2c\20unsigned\20long\29 +3482:std::__2::__is_overaligned_for_new\5babi:v160004\5d\28unsigned\20long\29 +3483:std::__2::__function::__value_func::swap\5babi:v160004\5d\28std::__2::__function::__value_func&\29 +3484: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 +3485: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 +3486:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +3487:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::destroy\28\29 +3488:std::__2::__constexpr_wcslen\5babi:v160004\5d\28wchar_t\20const*\29 +3489:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::__sso_allocator&\2c\20unsigned\20long\29 +3490:start_input_pass +3491:sktext::gpu::can_use_direct\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +3492:sktext::gpu::build_distance_adjust_table\28float\29 +3493:sktext::gpu::VertexFiller::opMaskType\28\29\20const +3494:sktext::gpu::VertexFiller::isLCD\28\29\20const +3495:sktext::gpu::VertexFiller::fillVertexData\28int\2c\20int\2c\20SkSpan\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkIRect\2c\20void*\29\20const +3496:sktext::gpu::TextBlobRedrawCoordinator::internalRemove\28sktext::gpu::TextBlob*\29 +3497: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 +3498: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 +3499: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 +3500:sktext::gpu::SubRunContainer::EstimateAllocSize\28sktext::GlyphRunList\20const&\29 +3501:sktext::gpu::SubRunAllocator::SubRunAllocator\28char*\2c\20int\2c\20int\29 +3502:sktext::gpu::StrikeCache::~StrikeCache\28\29 +3503:sktext::gpu::SlugImpl::Make\28SkMatrix\20const&\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\2c\20SkStrikeDeviceInfo\2c\20sktext::StrikeForGPUCacheInterface*\29 +3504:sktext::gpu::BagOfBytes::BagOfBytes\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29::$_1::operator\28\29\28\29\20const +3505:sktext::glyphrun_source_bounds\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkZip\2c\20SkSpan\29 +3506:sktext::SkStrikePromise::resetStrike\28\29 +3507:sktext::GlyphRunList::makeBlob\28\29\20const +3508:sktext::GlyphRunBuilder::blobToGlyphRunList\28SkTextBlob\20const&\2c\20SkPoint\29 +3509:skstd::to_string\28float\29 +3510:skpathutils::FillPathWithPaint\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkPath*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29 +3511:skjpeg_err_exit\28jpeg_common_struct*\29 +3512:skip_string +3513:skip_procedure +3514:skif::\28anonymous\20namespace\29::decompose_transform\28SkMatrix\20const&\2c\20SkPoint\2c\20SkMatrix*\2c\20SkMatrix*\29 +3515:skif::Mapping::adjustLayerSpace\28SkMatrix\20const&\29 +3516:skif::FilterResult::imageAndOffset\28skif::Context\20const&\29\20const +3517:skif::FilterResult::draw\28skif::Context\20const&\2c\20SkDevice*\2c\20SkBlender\20const*\29\20const +3518:skif::FilterResult::drawAnalyzedImage\28skif::Context\20const&\2c\20SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkEnumBitMask\2c\20SkBlender\20const*\29\20const +3519:skif::FilterResult::MakeFromImage\28skif::Context\20const&\2c\20sk_sp\2c\20SkRect\2c\20skif::ParameterSpace\2c\20SkSamplingOptions\20const&\29 +3520:skif::FilterResult::FilterResult\28sk_sp\2c\20skif::LayerSpace\20const&\29 +3521:skif::FilterResult::FilterResult\28\29 +3522:skif::Context::withNewSource\28skif::FilterResult\20const&\29\20const +3523:skia_private::THashTable::Traits>::set\28unsigned\20long\20long\29 +3524:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3525:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +3526:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::removeIfExists\28unsigned\20int\20const&\29 +3527: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 +3528: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 +3529: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 +3530:skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3531:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\29 +3532:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::find\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +3533:skia_private::THashTable::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +3534:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\29 +3535:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::resize\28int\29 +3536:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28skgpu::ganesh::SmallPathShapeData*&&\29 +3537:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +3538:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::uncheckedSet\28sk_sp&&\29 +3539:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::resize\28int\29 +3540: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 +3541: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 +3542:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +3543:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +3544:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +3545:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +3546:skia_private::THashTable::uncheckedSet\28SkResourceCache::Rec*&&\29 +3547:skia_private::THashTable::resize\28int\29 +3548:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::set\28SkLRUCache::Entry*\29 +3549:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::resize\28int\29 +3550:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::removeIfExists\28unsigned\20int\20const&\29 +3551:skia_private::THashTable>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::resize\28int\29 +3552: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 +3553:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::resize\28int\29 +3554:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrGpuResource*&&\29 +3555:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +3556:skia_private::THashMap\20\28*\29\28SkReadBuffer&\29\2c\20SkGoodHash>::set\28unsigned\20int\2c\20sk_sp\20\28*\29\28SkReadBuffer&\29\29 +3557:skia_private::THashMap::set\28int\2c\20int\29 +3558:skia_private::THashMap>\2c\20SkGoodHash>::remove\28SkImageFilter\20const*\20const&\29 +3559:skia_private::TArray::push_back_raw\28int\29 +3560:skia_private::TArray::resize_back\28int\29 +3561:skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::checkRealloc\28int\2c\20double\29 +3562:skia_private::TArray::~TArray\28\29 +3563:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +3564:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3565:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +3566:skia_private::TArray::BufferFinishedMessage\2c\20false>::operator=\28skia_private::TArray::BufferFinishedMessage\2c\20false>&&\29 +3567:skia_private::TArray::BufferFinishedMessage\2c\20false>::installDataAndUpdateCapacity\28SkSpan\29 +3568:skia_private::TArray::Plane\2c\20false>::move\28void*\29 +3569:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3570: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::FixedArray<4\2c\20signed\20char>\29::ReorderedArgument&&\29 +3571:skia_private::TArray::TArray\28skia_private::TArray&&\29 +3572:skia_private::TArray::swap\28skia_private::TArray&\29 +3573:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +3574:skia_private::TArray::push_back_raw\28int\29 +3575:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +3576:skia_private::TArray::push_back_raw\28int\29 +3577:skia_private::TArray::push_back_raw\28int\29 +3578:skia_private::TArray::move_back_n\28int\2c\20GrTextureProxy**\29 +3579:skia_private::TArray::operator=\28skia_private::TArray&&\29 +3580:skia_private::TArray::push_back_n\28int\2c\20EllipticalRRectOp::RRect\20const*\29 +3581:skia_png_zfree +3582:skia_png_write_zTXt +3583:skia_png_write_tIME +3584:skia_png_write_tEXt +3585:skia_png_write_iTXt +3586:skia_png_set_write_fn +3587:skia_png_set_strip_16 +3588:skia_png_set_read_user_transform_fn +3589:skia_png_set_read_user_chunk_fn +3590:skia_png_set_option +3591:skia_png_set_mem_fn +3592:skia_png_set_expand_gray_1_2_4_to_8 +3593:skia_png_set_error_fn +3594:skia_png_set_compression_level +3595:skia_png_set_IHDR +3596:skia_png_read_filter_row +3597:skia_png_process_IDAT_data +3598:skia_png_icc_set_sRGB +3599:skia_png_icc_check_tag_table +3600:skia_png_icc_check_header +3601:skia_png_get_uint_31 +3602:skia_png_get_sBIT +3603:skia_png_get_rowbytes +3604:skia_png_get_error_ptr +3605:skia_png_get_IHDR +3606:skia_png_do_swap +3607:skia_png_do_read_transformations +3608:skia_png_do_read_interlace +3609:skia_png_do_packswap +3610:skia_png_do_invert +3611:skia_png_do_gray_to_rgb +3612:skia_png_do_expand +3613:skia_png_do_check_palette_indexes +3614:skia_png_do_bgr +3615:skia_png_destroy_png_struct +3616:skia_png_destroy_gamma_table +3617:skia_png_create_png_struct +3618:skia_png_create_info_struct +3619:skia_png_crc_read +3620:skia_png_colorspace_sync_info +3621:skia_png_check_IHDR +3622:skia::textlayout::TypefaceFontStyleSet::matchStyle\28SkFontStyle\20const&\29 +3623:skia::textlayout::TextStyle::matchOneAttribute\28skia::textlayout::StyleType\2c\20skia::textlayout::TextStyle\20const&\29\20const +3624:skia::textlayout::TextStyle::equals\28skia::textlayout::TextStyle\20const&\29\20const +3625:skia::textlayout::TextShadow::operator!=\28skia::textlayout::TextShadow\20const&\29\20const +3626:skia::textlayout::TextLine::paint\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\29 +3627:skia::textlayout::TextLine::iterateThroughClustersInGlyphsOrder\28bool\2c\20bool\2c\20std::__2::function\20const&\29\20const::$_0::operator\28\29\28unsigned\20long\20const&\29\20const +3628: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 +3629:skia::textlayout::TextLine::getMetrics\28\29\20const +3630:skia::textlayout::TextLine::ensureTextBlobCachePopulated\28\29 +3631:skia::textlayout::TextLine::buildTextBlob\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +3632: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 +3633: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 +3634:skia::textlayout::Run::shift\28skia::textlayout::Cluster\20const*\2c\20float\29 +3635:skia::textlayout::Run::newRunBuffer\28\29 +3636:skia::textlayout::Run::findLimitingGlyphClusters\28skia::textlayout::SkRange\29\20const +3637:skia::textlayout::Run::addSpacesAtTheEnd\28float\2c\20skia::textlayout::Cluster*\29 +3638:skia::textlayout::ParagraphStyle::effective_align\28\29\20const +3639:skia::textlayout::ParagraphStyle::ParagraphStyle\28\29 +3640:skia::textlayout::ParagraphPainter::DecorationStyle::DecorationStyle\28unsigned\20int\2c\20float\2c\20std::__2::optional\29 +3641:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29 +3642:skia::textlayout::ParagraphImpl::text\28skia::textlayout::SkRange\29 +3643:skia::textlayout::ParagraphImpl::resolveStrut\28\29 +3644:skia::textlayout::ParagraphImpl::getGlyphInfoAtUTF16Offset\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +3645:skia::textlayout::ParagraphImpl::getGlyphClusterAt\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +3646:skia::textlayout::ParagraphImpl::findPreviousGraphemeBoundary\28unsigned\20long\29\20const +3647:skia::textlayout::ParagraphImpl::computeEmptyMetrics\28\29 +3648:skia::textlayout::ParagraphImpl::clusters\28skia::textlayout::SkRange\29 +3649:skia::textlayout::ParagraphImpl::block\28unsigned\20long\29 +3650:skia::textlayout::ParagraphCacheValue::~ParagraphCacheValue\28\29 +3651:skia::textlayout::ParagraphCacheKey::ParagraphCacheKey\28skia::textlayout::ParagraphImpl\20const*\29 +3652:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29 +3653:skia::textlayout::ParagraphBuilderImpl::make\28skia::textlayout::ParagraphStyle\20const&\2c\20sk_sp\2c\20sk_sp\29 +3654:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\2c\20bool\29 +3655:skia::textlayout::ParagraphBuilderImpl::ParagraphBuilderImpl\28skia::textlayout::ParagraphStyle\20const&\2c\20sk_sp\2c\20sk_sp\29 +3656:skia::textlayout::Paragraph::~Paragraph\28\29 +3657:skia::textlayout::OneLineShaper::clusteredText\28skia::textlayout::SkRange&\29 +3658:skia::textlayout::FontCollection::~FontCollection\28\29 +3659:skia::textlayout::FontCollection::matchTypeface\28SkString\20const&\2c\20SkFontStyle\29 +3660:skia::textlayout::FontCollection::defaultFallback\28int\2c\20SkFontStyle\2c\20SkString\20const&\29 +3661:skia::textlayout::FontCollection::FamilyKey::Hasher::operator\28\29\28skia::textlayout::FontCollection::FamilyKey\20const&\29\20const +3662:skgpu::tess::\28anonymous\20namespace\29::write_curve_index_buffer_base_index\28skgpu::VertexWriter\2c\20unsigned\20long\2c\20unsigned\20short\29 +3663:skgpu::tess::StrokeIterator::next\28\29 +3664:skgpu::tess::StrokeIterator::finishOpenContour\28\29 +3665:skgpu::tess::PreChopPathCurves\28float\2c\20SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +3666:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29 +3667: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 +3668:skgpu::ganesh::\28anonymous\20namespace\29::ChopPathIfNecessary\28SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20SkStrokeRec\20const&\2c\20SkPath*\29 +3669:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::recordDraw\28GrMeshDrawTarget*\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20int\2c\20unsigned\20short*\29 +3670: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 +3671:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::AAConvexPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrUserStencilSettings\20const*\29 +3672: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 +3673:skgpu::ganesh::TessellationPathRenderer::IsSupported\28GrCaps\20const&\29 +3674:skgpu::ganesh::SurfaceFillContext::fillRectToRectWithFP\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +3675:skgpu::ganesh::SurfaceFillContext::blitTexture\28GrSurfaceProxyView\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\29 +3676:skgpu::ganesh::SurfaceFillContext::addOp\28std::__2::unique_ptr>\29 +3677:skgpu::ganesh::SurfaceFillContext::addDrawOp\28std::__2::unique_ptr>\29 +3678:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29.1 +3679:skgpu::ganesh::SurfaceDrawContext::drawVertices\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20sk_sp\2c\20GrPrimitiveType*\2c\20bool\29 +3680: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 +3681: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 +3682:skgpu::ganesh::SurfaceDrawContext::drawStrokedLine\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPoint\20const*\2c\20SkStrokeRec\20const&\29 +3683:skgpu::ganesh::SurfaceDrawContext::drawRegion\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRegion\20const&\2c\20GrStyle\20const&\2c\20GrUserStencilSettings\20const*\29 +3684:skgpu::ganesh::SurfaceDrawContext::drawOval\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\29 +3685:skgpu::ganesh::SurfaceDrawContext::SurfaceDrawContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +3686:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29 +3687:skgpu::ganesh::SurfaceContext::writePixels\28GrDirectContext*\2c\20GrCPixmap\2c\20SkIPoint\29 +3688:skgpu::ganesh::SurfaceContext::copy\28sk_sp\2c\20SkIRect\2c\20SkIPoint\29 +3689:skgpu::ganesh::SurfaceContext::copyScaled\28sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20SkFilterMode\29 +3690: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 +3691: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 +3692: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 +3693:skgpu::ganesh::SurfaceContext::SurfaceContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +3694:skgpu::ganesh::StrokeTessellator::draw\28GrOpFlushState*\29\20const +3695:skgpu::ganesh::StrokeTessellateOp::prePrepareTessellator\28GrTessellationShader::ProgramArgs&&\2c\20GrAppliedClip&&\29 +3696: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 +3697: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 +3698:skgpu::ganesh::StencilMaskHelper::drawShape\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20SkRegion::Op\2c\20GrAA\29 +3699: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 +3700:skgpu::ganesh::SmallPathAtlasMgr::findOrCreate\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +3701:skgpu::ganesh::SmallPathAtlasMgr::deleteCacheEntry\28skgpu::ganesh::SmallPathShapeData*\29 +3702:skgpu::ganesh::ShadowRRectOp::Make\28GrRecordingContext*\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20float\2c\20float\29 +3703: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 +3704:skgpu::ganesh::RasterAsView\28GrRecordingContext*\2c\20SkImage_Raster\20const*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +3705:skgpu::ganesh::QuadPerEdgeAA::Tessellator::append\28GrQuad*\2c\20GrQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20GrQuadAAFlags\29 +3706:skgpu::ganesh::QuadPerEdgeAA::Tessellator::Tessellator\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29 +3707:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::initializeAttrs\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\29 +3708:skgpu::ganesh::QuadPerEdgeAA::IssueDraw\28GrCaps\20const&\2c\20GrOpsRenderPass*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +3709:skgpu::ganesh::QuadPerEdgeAA::GetIndexBuffer\28GrMeshDrawTarget*\2c\20skgpu::ganesh::QuadPerEdgeAA::IndexBufferOption\29 +3710:skgpu::ganesh::PathTessellateOp::usesMSAA\28\29\20const +3711:skgpu::ganesh::PathTessellateOp::prepareTessellator\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +3712:skgpu::ganesh::PathTessellateOp::PathTessellateOp\28SkArenaAlloc*\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrPaint&&\2c\20SkRect\20const&\29 +3713:skgpu::ganesh::PathStencilCoverOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +3714:skgpu::ganesh::PathRenderer::getStencilSupport\28GrStyledShape\20const&\29\20const +3715:skgpu::ganesh::PathInnerTriangulateOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +3716:skgpu::ganesh::PathCurveTessellator::~PathCurveTessellator\28\29 +3717:skgpu::ganesh::PathCurveTessellator::prepareWithTriangles\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20GrTriangulator::BreadcrumbTriangleList*\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +3718:skgpu::ganesh::OpsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +3719:skgpu::ganesh::OpsTask::onExecute\28GrOpFlushState*\29 +3720:skgpu::ganesh::OpsTask::addOp\28GrDrawingManager*\2c\20std::__2::unique_ptr>\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +3721: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 +3722:skgpu::ganesh::OpsTask::OpsTask\28GrDrawingManager*\2c\20GrSurfaceProxyView\2c\20GrAuditTrail*\2c\20sk_sp\29 +3723: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 +3724:skgpu::ganesh::MakeFragmentProcessorFromView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +3725:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29 +3726:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29 +3727: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 +3728: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 +3729: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 +3730:skgpu::ganesh::DrawAtlasPathOp::prepareProgram\28GrCaps\20const&\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +3731:skgpu::ganesh::Device::replaceBackingProxy\28SkSurface::ContentChangeMode\2c\20sk_sp\2c\20GrColorType\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +3732:skgpu::ganesh::Device::makeSpecial\28SkBitmap\20const&\29 +3733:skgpu::ganesh::Device::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +3734: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 +3735:skgpu::ganesh::Device::discard\28\29 +3736:skgpu::ganesh::Device::android_utils_clipAsRgn\28SkRegion*\29\20const +3737: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 +3738:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +3739:skgpu::ganesh::CopyView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\2c\20std::__2::basic_string_view>\29 +3740:skgpu::ganesh::ClipStack::clipPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrAA\2c\20SkClipOp\29 +3741:skgpu::ganesh::ClipStack::SaveRecord::replaceWithElement\28skgpu::ganesh::ClipStack::RawElement&&\2c\20SkTBlockList*\29 +3742:skgpu::ganesh::ClipStack::SaveRecord::addElement\28skgpu::ganesh::ClipStack::RawElement&&\2c\20SkTBlockList*\29 +3743:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::Draw\20const&\29\20const +3744:skgpu::ganesh::AtlasTextOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +3745: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 +3746:skgpu::ganesh::AtlasRenderTask::stencilAtlasRect\28GrRecordingContext*\2c\20SkRect\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrUserStencilSettings\20const*\29 +3747:skgpu::ganesh::AtlasRenderTask::addPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkIPoint\2c\20int\2c\20int\2c\20bool\2c\20SkIPoint16*\29 +3748:skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +3749: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 +3750:skgpu::ganesh::AsFragmentProcessor\28GrRecordingContext*\2c\20SkImage\20const*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +3751:skgpu::TiledTextureUtils::OptimizeSampleArea\28SkISize\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkRect*\2c\20SkRect*\2c\20SkMatrix*\29 +3752:skgpu::TClientMappedBufferManager::process\28\29 +3753:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29 +3754:skgpu::RectanizerSkyline::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +3755:skgpu::Plot::Plot\28int\2c\20int\2c\20skgpu::AtlasGenerationCounter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20SkColorType\2c\20unsigned\20long\29 +3756:skgpu::GetReducedBlendModeInfo\28SkBlendMode\29 +3757:skgpu::CreateIntegralTable\28int\29 +3758:skgpu::BlendFuncName\28SkBlendMode\29 +3759:skcms_private::baseline::exec_stages\28skcms_private::Op\20const*\2c\20void\20const**\2c\20char\20const*\2c\20char*\2c\20int\29 +3760: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 +3761:skcms_ApproximatelyEqualProfiles +3762:sk_sp\20sk_make_sp\2c\20SkSurfaceProps\20const*&>\28SkImageInfo\20const&\2c\20sk_sp&&\2c\20SkSurfaceProps\20const*&\29 +3763:sk_sp*\20emscripten::internal::MemberAccess>::getWire\28sk_sp\20SkRuntimeEffect::TracedShader::*\20const&\2c\20SkRuntimeEffect::TracedShader\20const&\29 +3764:sk_fopen\28char\20const*\2c\20SkFILE_Flags\29 +3765:sk_fgetsize\28_IO_FILE*\29 +3766:sk_fclose\28_IO_FILE*\29 +3767:sk_error_fn\28png_struct_def*\2c\20char\20const*\29 +3768:setup_masks_arabic_plan\28arabic_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_script_t\29 +3769:set_khr_debug_label\28GrGLGpu*\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +3770:setThrew +3771:serialize_image\28SkImage\20const*\2c\20SkSerialProcs\29 +3772:send_tree +3773:sect_with_vertical\28SkPoint\20const*\2c\20float\29 +3774:sect_with_horizontal\28SkPoint\20const*\2c\20float\29 +3775:scanexp +3776:scalbnl +3777:rewind_if_necessary\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +3778:resolveImplicitLevels\28UBiDi*\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +3779:reset_and_decode_image_config\28wuffs_gif__decoder__struct*\2c\20wuffs_base__image_config__struct*\2c\20wuffs_base__io_buffer__struct*\2c\20SkStream*\29 +3780:renderbuffer_storage_msaa\28GrGLGpu*\2c\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +3781: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 +3782:reclassify_vertex\28TriangulationVertex*\2c\20SkPoint\20const*\2c\20int\2c\20ReflexHash*\2c\20SkTInternalLList*\29 +3783:quad_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +3784:quad_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +3785:quad_in_line\28SkPoint\20const*\29 +3786:psh_hint_table_init +3787:psh_hint_table_find_strong_points +3788:psh_hint_table_activate_mask +3789:psh_hint_align +3790:psh_glyph_interpolate_strong_points +3791:psh_glyph_interpolate_other_points +3792:psh_glyph_interpolate_normal_points +3793:psh_blues_set_zones +3794:ps_parser_load_field +3795:ps_dimension_end +3796:ps_dimension_done +3797:ps_builder_start_point +3798:printf_core +3799:premultiply_argb_as_rgba\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3800:premultiply_argb_as_bgra\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3801: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 +3802:portable::uniform_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3803:portable::set_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3804:portable::memset64\28unsigned\20long\20long*\2c\20unsigned\20long\20long\2c\20int\29 +3805:portable::copy_from_indirect_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3806:portable::copy_2_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3807:portable::check_decal_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3808:pop_arg +3809:pntz +3810:png_inflate +3811:png_deflate_claim +3812:png_decompress_chunk +3813:png_cache_unknown_chunk +3814:operator==\28SkPaint\20const&\2c\20SkPaint\20const&\29 +3815:open_face +3816:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::vertexStride\28SkMatrix\20const&\29\20const +3817:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +3818:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +3819:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +3820:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::glyphs\28\29\20const +3821:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +3822:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +3823:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +3824:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::size\28\29\20const +3825:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +3826:nearly_equal\28double\2c\20double\29 +3827:mbsrtowcs +3828: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 +3829:make_tiled_gradient\28GrFPArgs\20const&\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20bool\2c\20bool\29 +3830:make_premul_effect\28std::__2::unique_ptr>\29 +3831: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 +3832:make_clamped_gradient\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20bool\29 +3833:make_bmp_proxy\28GrProxyProvider*\2c\20SkBitmap\20const&\2c\20GrColorType\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +3834:longest_match +3835:long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3836:long\20long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +3837:long\20double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +3838:load_post_names +3839:line_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +3840:line_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +3841:legalfunc$_embind_register_bigint +3842:jpeg_open_backing_store +3843:jpeg_destroy +3844:jpeg_alloc_huff_table +3845:jinit_upsampler +3846: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 +3847:init_error_limit +3848:init_block +3849:image_filter_color_type\28SkColorInfo\20const&\29 +3850:hb_vector_t\2c\20false>::resize\28int\2c\20bool\2c\20bool\29 +3851:hb_vector_t\2c\20false>::resize\28int\2c\20bool\2c\20bool\29 +3852:hb_utf8_t::next\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20int*\2c\20unsigned\20int\29 +3853:hb_unicode_script +3854:hb_unicode_mirroring_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +3855:hb_unicode_funcs_t::is_default_ignorable\28unsigned\20int\29 +3856: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 +3857:hb_shape_plan_create2 +3858:hb_serialize_context_t::fini\28\29 +3859:hb_sanitize_context_t::return_t\20AAT::ChainSubtable::dispatch\28hb_sanitize_context_t*\29\20const +3860:hb_sanitize_context_t::return_t\20AAT::ChainSubtable::dispatch\28hb_sanitize_context_t*\29\20const +3861: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 +3862:hb_paint_extents_get_funcs\28\29 +3863:hb_paint_extents_context_t::hb_paint_extents_context_t\28\29 +3864:hb_ot_map_t::fini\28\29 +3865:hb_ot_layout_table_select_script +3866:hb_ot_layout_table_get_lookup_count +3867:hb_ot_layout_table_find_feature_variations +3868:hb_ot_layout_table_find_feature\28hb_face_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +3869:hb_ot_layout_script_select_language +3870:hb_ot_layout_language_get_required_feature +3871:hb_ot_layout_language_find_feature +3872:hb_ot_layout_has_substitution +3873:hb_ot_layout_feature_with_variations_get_lookups +3874:hb_ot_layout_collect_features_map +3875:hb_ot_font_set_funcs +3876:hb_lazy_loader_t\2c\20hb_face_t\2c\2038u\2c\20OT::sbix_accelerator_t>::create\28hb_face_t*\29 +3877:hb_lazy_loader_t\2c\20hb_face_t\2c\207u\2c\20OT::post_accelerator_t>::get\28\29\20const +3878:hb_lazy_loader_t\2c\20hb_face_t\2c\2019u\2c\20hb_blob_t>::get\28\29\20const +3879:hb_lazy_loader_t\2c\20hb_face_t\2c\2035u\2c\20hb_blob_t>::get\28\29\20const +3880:hb_lazy_loader_t\2c\20hb_face_t\2c\2037u\2c\20OT::CBDT_accelerator_t>::get\28\29\20const +3881:hb_lazy_loader_t\2c\20hb_face_t\2c\2032u\2c\20hb_blob_t>::get\28\29\20const +3882:hb_lazy_loader_t\2c\20hb_face_t\2c\2028u\2c\20hb_blob_t>::get\28\29\20const +3883:hb_lazy_loader_t\2c\20hb_face_t\2c\2029u\2c\20hb_blob_t>::get\28\29\20const +3884:hb_language_matches +3885:hb_indic_get_categories\28unsigned\20int\29 +3886:hb_hashmap_t::fetch_item\28hb_serialize_context_t::object_t\20const*\20const&\2c\20unsigned\20int\29\20const +3887:hb_hashmap_t::alloc\28unsigned\20int\29 +3888:hb_font_t::get_glyph_v_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +3889:hb_font_set_variations +3890:hb_font_set_funcs +3891:hb_font_get_variation_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +3892:hb_font_get_glyph_h_advance +3893:hb_font_get_glyph_extents +3894:hb_font_get_font_h_extents_nil\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +3895:hb_font_funcs_set_variation_glyph_func +3896:hb_font_funcs_set_nominal_glyphs_func +3897:hb_font_funcs_set_nominal_glyph_func +3898:hb_font_funcs_set_glyph_h_advances_func +3899:hb_font_funcs_set_glyph_extents_func +3900:hb_font_funcs_create +3901:hb_draw_move_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +3902:hb_draw_funcs_set_quadratic_to_func +3903:hb_draw_funcs_set_move_to_func +3904:hb_draw_funcs_set_line_to_func +3905:hb_draw_funcs_set_cubic_to_func +3906:hb_draw_funcs_destroy +3907:hb_draw_funcs_create +3908:hb_draw_extents_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +3909: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 +3910:hb_buffer_t::safe_to_insert_tatweel\28unsigned\20int\2c\20unsigned\20int\29 +3911:hb_buffer_t::output_info\28hb_glyph_info_t\20const&\29 +3912:hb_buffer_t::message_impl\28hb_font_t*\2c\20char\20const*\2c\20void*\29 +3913:hb_buffer_t::leave\28\29 +3914:hb_buffer_t::delete_glyphs_inplace\28bool\20\28*\29\28hb_glyph_info_t\20const*\29\29 +3915:hb_buffer_t::clear_positions\28\29 +3916:hb_buffer_set_length +3917:hb_buffer_get_glyph_positions +3918:hb_buffer_diff +3919:hb_buffer_create +3920:hb_buffer_clear_contents +3921:hb_buffer_add_utf8 +3922:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3923:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3924:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3925:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3926:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3927:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +3928:hb_aat_layout_remove_deleted_glyphs\28hb_buffer_t*\29 +3929: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 +3930:getint +3931:get_win_string +3932:get_dst_swizzle_and_store\28GrColorType\2c\20SkRasterPipelineOp*\2c\20LumMode*\2c\20bool*\2c\20bool*\29 +3933:get_driver_and_version\28GrGLStandard\2c\20GrGLVendor\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +3934:gen_key\28skgpu::KeyBuilder*\2c\20GrProgramInfo\20const&\2c\20GrCaps\20const&\29 +3935:gen_fp_key\28GrFragmentProcessor\20const&\2c\20GrCaps\20const&\2c\20skgpu::KeyBuilder*\29 +3936: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 +3937:fwrite +3938:ft_var_to_normalized +3939:ft_var_load_item_variation_store +3940:ft_var_load_hvvar +3941:ft_var_load_avar +3942:ft_var_get_value_pointer +3943:ft_var_apply_tuple +3944:ft_validator_init +3945:ft_mem_strcpyn +3946:ft_hash_num_lookup +3947:ft_glyphslot_set_bitmap +3948:ft_glyphslot_preset_bitmap +3949:ft_corner_orientation +3950:ft_corner_is_flat +3951:frexp +3952:fread +3953:fp_force_eval +3954:fp_barrier.1 +3955:fopen +3956:fold_opacity_layer_color_to_paint\28SkPaint\20const*\2c\20bool\2c\20SkPaint*\29 +3957:fmodl +3958:float\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +3959: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 +3960:fill_inverse_cmap +3961:fileno +3962:examine_app0 +3963: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 +3964: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 +3965: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 +3966: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 +3967:emscripten::internal::Invoker\2c\20SkBlendMode>::invoke\28sk_sp\20\28*\29\28SkBlendMode\29\2c\20SkBlendMode\29 +3968: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 +3969:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkPath&\2c\20float\2c\20float\29\2c\20SkPath*\2c\20float\2c\20float\29 +3970: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 +3971: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 +3972: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 +3973: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 +3974: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 +3975: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 +3976:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20SkPath\20const&\2c\20SkPathOp\29\2c\20SkPath*\2c\20SkPath*\2c\20SkPathOp\29 +3977:embind_init_builtin\28\29 +3978:embind_init_Skia\28\29 +3979:embind_init_Paragraph\28\29::$_0::__invoke\28SimpleParagraphStyle\2c\20sk_sp\29 +3980:embind_init_Paragraph\28\29 +3981:embind_init_ParagraphGen\28\29 +3982:edge_line_needs_recursion\28SkPoint\20const&\2c\20SkPoint\20const&\29 +3983:draw_nine\28SkMask\20const&\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\2c\20bool\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3984:dquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3985:dquad_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3986:double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +3987:dline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3988:dline_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3989:deserialize_image\28sk_sp\2c\20SkDeserialProcs\2c\20std::__2::optional\29 +3990:deflate_stored +3991:decompose_current_character\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\29 +3992: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 +3993: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 +3994: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 +3995: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 +3996: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 +3997:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkShaderBase\20const&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTransformShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +3998: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 +3999: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 +4000:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrSurfaceProxy*&\2c\20skgpu::ScratchKey&&\2c\20GrResourceProvider*&\29::'lambda'\28void*\29>\28GrResourceAllocator::Register&&\29 +4001:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrRRectShadowGeoProc::Make\28SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +4002: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 +4003: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 +4004: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 +4005: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 +4006: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 +4007: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 +4008: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 +4009: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 +4010:dcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4011:dcubic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4012:dconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +4013:dconic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +4014:data_destroy_arabic\28void*\29 +4015:data_create_arabic\28hb_ot_shape_plan_t\20const*\29 +4016:cycle +4017:cubic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4018:cubic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4019:create_colorindex +4020:copysignl +4021:copy_bitmap_subset\28SkBitmap\20const&\2c\20SkIRect\20const&\29 +4022:conic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4023:conic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +4024:compute_pos_tan\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +4025:compute_intersection\28OffsetSegment\20const&\2c\20OffsetSegment\20const&\2c\20SkPoint*\2c\20float*\2c\20float*\29 +4026:compress_block +4027:compose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +4028:clipHandlesSprite\28SkRasterClip\20const&\2c\20int\2c\20int\2c\20SkPixmap\20const&\29 +4029:clamp\28SkPoint\2c\20SkPoint\2c\20SkPoint\2c\20GrTriangulator::Comparator\20const&\29 +4030:checkint +4031:check_inverse_on_empty_return\28SkRegion*\2c\20SkPath\20const&\2c\20SkRegion\20const&\29 +4032:char*\20std::__2::copy\5babi:v160004\5d\2c\20char*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20char*\29 +4033:char*\20std::__2::copy\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29 +4034:cff_vstore_done +4035:cff_subfont_load +4036:cff_subfont_done +4037:cff_size_select +4038:cff_parser_run +4039:cff_make_private_dict +4040:cff_load_private_dict +4041:cff_index_get_name +4042:cff_get_kerning +4043:cff_blend_build_vector +4044:cf2_getSeacComponent +4045:cf2_computeDarkening +4046:cf2_arrstack_push +4047:cbrt +4048:byn$mgfn-shared$void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +4049: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 +4050:byn$mgfn-shared$virtual\20thunk\20to\20GrRenderTarget::onRelease\28\29 +4051:byn$mgfn-shared$ubidi_getClass_skia +4052:byn$mgfn-shared$t1_hints_open +4053: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 +4054: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 +4055:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +4056: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 +4057:byn$mgfn-shared$std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +4058:byn$mgfn-shared$std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +4059: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 +4060:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +4061: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 +4062:byn$mgfn-shared$std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +4063:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4064:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4065:byn$mgfn-shared$skia_private::TArray::push_back_raw\28int\29 +4066:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::~Impl\28\29 +4067:byn$mgfn-shared$skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4068:byn$mgfn-shared$skgpu::ScratchKey::GenerateResourceType\28\29 +4069:byn$mgfn-shared$skcms_TransferFunction_isPQish +4070:byn$mgfn-shared$setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +4071:byn$mgfn-shared$portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4072:byn$mgfn-shared$portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4073:byn$mgfn-shared$portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4074:byn$mgfn-shared$portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +4075:byn$mgfn-shared$non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4076:byn$mgfn-shared$non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4077:byn$mgfn-shared$make_unpremul_effect\28std::__2::unique_ptr>\29 +4078: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 +4079:byn$mgfn-shared$hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +4080:byn$mgfn-shared$embind_init_Skia\28\29::$_75::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +4081:byn$mgfn-shared$embind_init_Skia\28\29::$_72::__invoke\28float\2c\20float\2c\20sk_sp\29 +4082:byn$mgfn-shared$embind_init_Skia\28\29::$_11::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +4083: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 +4084: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 +4085:byn$mgfn-shared$cf2_stack_pushInt +4086:byn$mgfn-shared$__cxx_global_array_dtor.1 +4087: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 +4088:byn$mgfn-shared$\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4089:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4090:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4091:byn$mgfn-shared$\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +4092: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 +4093:byn$mgfn-shared$SkSL::RP::UnownedLValueSlice::~UnownedLValueSlice\28\29 +4094:byn$mgfn-shared$SkSL::RP::LValue::~LValue\28\29.1 +4095:byn$mgfn-shared$SkSL::ProgramUsage::add\28SkSL::ProgramElement\20const&\29 +4096:byn$mgfn-shared$SkSL::ProgramUsage::add\28SkSL::Expression\20const*\29 +4097:byn$mgfn-shared$SkSL::FunctionReference::clone\28SkSL::Position\29\20const +4098:byn$mgfn-shared$SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +4099:byn$mgfn-shared$SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +4100:byn$mgfn-shared$SkSL::ChildCall::clone\28SkSL::Position\29\20const +4101:byn$mgfn-shared$SkRuntimeBlender::~SkRuntimeBlender\28\29.1 +4102:byn$mgfn-shared$SkRuntimeBlender::~SkRuntimeBlender\28\29 +4103:byn$mgfn-shared$SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +4104:byn$mgfn-shared$SkRecorder::onDrawPaint\28SkPaint\20const&\29 +4105:byn$mgfn-shared$SkRecorder::didScale\28float\2c\20float\29 +4106:byn$mgfn-shared$SkRecorder::didConcat44\28SkM44\20const&\29 +4107:byn$mgfn-shared$SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +4108:byn$mgfn-shared$SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +4109:byn$mgfn-shared$SkPictureRecord::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +4110:byn$mgfn-shared$SkPictureRecord::didConcat44\28SkM44\20const&\29 +4111:byn$mgfn-shared$SkPairPathEffect::~SkPairPathEffect\28\29.1 +4112:byn$mgfn-shared$SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_blur_1D_effect\28int\2c\20SkRuntimeEffect::Options\20const&\29 +4113:byn$mgfn-shared$SkJSONWriter::endArray\28\29 +4114:byn$mgfn-shared$SkComposePathEffect::~SkComposePathEffect\28\29 +4115:byn$mgfn-shared$SkColorSpace::MakeSRGB\28\29 +4116:byn$mgfn-shared$SkChopMonoCubicAtY\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +4117:byn$mgfn-shared$OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +4118:byn$mgfn-shared$GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +4119:byn$mgfn-shared$GrPathTessellationShader::Impl::~Impl\28\29 +4120:byn$mgfn-shared$GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29.1 +4121:byn$mgfn-shared$GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29 +4122:byn$mgfn-shared$GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::clone\28\29\20const +4123:byn$mgfn-shared$GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29.1 +4124:byn$mgfn-shared$GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +4125:byn$mgfn-shared$GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29.1 +4126:byn$mgfn-shared$GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29 +4127:byn$mgfn-shared$GrBicubicEffect::onMakeProgramImpl\28\29\20const +4128:byn$mgfn-shared$Cr_z_inflate_table +4129:byn$mgfn-shared$BlendFragmentProcessor::onMakeProgramImpl\28\29\20const +4130:byn$mgfn-shared$AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +4131:build_ycc_rgb_table +4132:bracketProcessChar\28BracketData*\2c\20int\29 +4133:bracketInit\28UBiDi*\2c\20BracketData*\29 +4134:bool\20std::__2::operator==\5babi:v160004\5d\28std::__2::unique_ptr\20const&\2c\20std::nullptr_t\29 +4135:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::variant\20const&\2c\20std::__2::variant\20const&\29 +4136: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 +4137: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 +4138: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 +4139:bool\20std::__2::__insertion_sort_incomplete\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +4140:bool\20is_parallel\28SkDLine\20const&\2c\20SkTCurve\20const&\29 +4141:bool\20hb_hashmap_t::set_with_hash\28hb_serialize_context_t::object_t*&\2c\20unsigned\20int\2c\20unsigned\20int&\2c\20bool\29 +4142:bool\20apply_string\28OT::hb_ot_apply_context_t*\2c\20GSUBProxy::Lookup\20const&\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\29 +4143:bool\20OT::hb_accelerate_subtables_context_t::cache_func_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\2c\20bool\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::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4155:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4156:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4157:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4158:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4159:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4160:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4161:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +4162: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 +4163:bool\20GrTTopoSort_Visit\28GrRenderTask*\2c\20unsigned\20int*\29 +4164: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 +4165:blend_line\28SkColorType\2c\20void*\2c\20SkColorType\2c\20void\20const*\2c\20SkAlphaType\2c\20bool\2c\20int\29 +4166:bits_to_runs\28SkBlitter*\2c\20int\2c\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\2c\20long\2c\20unsigned\20char\29 +4167: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 +4168:auto\20std::__2::__unwrap_range\5babi:v160004\5d\2c\20std::__2::__wrap_iter>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +4169:atanf +4170:apply_forward\28OT::hb_ot_apply_context_t*\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\2c\20unsigned\20int\29 +4171:apply_alpha_and_colorfilter\28skif::Context\20const&\2c\20skif::FilterResult\20const&\2c\20SkPaint\20const&\29 +4172:append_multitexture_lookup\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20int\2c\20GrGLSLVarying\20const&\2c\20char\20const*\2c\20char\20const*\29 +4173:append_color_output\28PorterDuffXferProcessor\20const&\2c\20GrGLSLXPFragmentBuilder*\2c\20skgpu::BlendFormula::OutputType\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +4174:af_loader_compute_darkening +4175:af_latin_metrics_scale_dim +4176:af_latin_hints_detect_features +4177:af_latin_hint_edges +4178:af_hint_normal_stem +4179:af_cjk_metrics_scale_dim +4180:af_cjk_metrics_scale +4181:af_cjk_metrics_init_widths +4182:af_cjk_metrics_check_digits +4183:af_cjk_hints_init +4184:af_cjk_hints_detect_features +4185:af_cjk_hints_compute_blue_edges +4186:af_cjk_hints_apply +4187:af_cjk_hint_edges +4188:af_cjk_get_standard_widths +4189:af_axis_hints_new_edge +4190:adler32 +4191:a_ctz_32 +4192:_iup_worker_interpolate +4193:_hb_preprocess_text_vowel_constraints\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +4194:_hb_ot_shape +4195:_hb_options_init\28\29 +4196:_hb_grapheme_group_func\28hb_glyph_info_t\20const&\2c\20hb_glyph_info_t\20const&\29 +4197:_hb_font_create\28hb_face_t*\29 +4198:_hb_fallback_shape +4199:_glyf_get_advance_with_var_unscaled\28hb_font_t*\2c\20unsigned\20int\2c\20bool\29 +4200:__vfprintf_internal +4201:__trunctfsf2 +4202:__tan +4203:__rem_pio2_large +4204:__overflow +4205:__newlocale +4206:__math_xflowf +4207:__math_invalidf +4208:__loc_is_allocated +4209:__isxdigit_l +4210:__getf2 +4211:__get_locale +4212:__ftello_unlocked +4213:__fseeko_unlocked +4214:__floatscan +4215:__expo2 +4216:__dynamic_cast +4217:__divtf3 +4218:__cxxabiv1::__base_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +4219:\28anonymous\20namespace\29::write_text_tag\28char\20const*\29 +4220:\28anonymous\20namespace\29::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 +4221:\28anonymous\20namespace\29::set_uv_quad\28SkPoint\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +4222:\28anonymous\20namespace\29::safe_to_ignore_subset_rect\28GrAAType\2c\20SkFilterMode\2c\20DrawQuad\20const&\2c\20SkRect\20const&\29 +4223:\28anonymous\20namespace\29::prepare_for_direct_mask_drawing\28SkStrike*\2c\20SkMatrix\20const&\2c\20SkZip\2c\20SkZip\2c\20SkZip\29 +4224:\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 +4225:\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 +4226:\28anonymous\20namespace\29::is_newer_better\28SkData*\2c\20SkData*\29 +4227:\28anonymous\20namespace\29::get_glyph_run_intercepts\28sktext::GlyphRun\20const&\2c\20SkPaint\20const&\2c\20float\20const*\2c\20float*\2c\20int*\29 +4228:\28anonymous\20namespace\29::get_cicp_trfn\28skcms_TransferFunction\20const&\29 +4229:\28anonymous\20namespace\29::get_cicp_primaries\28skcms_Matrix3x3\20const&\29 +4230:\28anonymous\20namespace\29::draw_to_sw_mask\28GrSWMaskHelper*\2c\20skgpu::ganesh::ClipStack::Element\20const&\2c\20bool\29 +4231:\28anonymous\20namespace\29::determine_clipped_src_rect\28SkIRect\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkISize\20const&\2c\20SkRect\20const*\29 +4232:\28anonymous\20namespace\29::create_hb_face\28SkTypeface\20const&\29::$_0::__invoke\28void*\29 +4233:\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 +4234:\28anonymous\20namespace\29::copyFTBitmap\28FT_Bitmap_\20const&\2c\20SkMaskBuilder*\29 +4235:\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 +4236:\28anonymous\20namespace\29::colrv1_draw_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\29 +4237:\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29 +4238:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29 +4239:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29 +4240:\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 +4241:\28anonymous\20namespace\29::TriangulatingPathOp::Triangulate\28GrEagerVertexAllocator*\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20float\2c\20bool*\29 +4242:\28anonymous\20namespace\29::TriangulatingPathOp::CreateKey\28skgpu::UniqueKey*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\29 +4243:\28anonymous\20namespace\29::TransformedMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4244:\28anonymous\20namespace\29::TextureOpImpl::propagateCoverageAAThroughoutChain\28\29 +4245:\28anonymous\20namespace\29::TextureOpImpl::characterize\28\28anonymous\20namespace\29::TextureOpImpl::Desc*\29\20const +4246:\28anonymous\20namespace\29::TextureOpImpl::appendQuad\28DrawQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\29 +4247:\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 +4248:\28anonymous\20namespace\29::TextureOpImpl::FillInVertices\28GrCaps\20const&\2c\20\28anonymous\20namespace\29::TextureOpImpl*\2c\20\28anonymous\20namespace\29::TextureOpImpl::Desc*\2c\20char*\29 +4249:\28anonymous\20namespace\29::SpotVerticesFactory::makeVertices\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint*\29\20const +4250:\28anonymous\20namespace\29::SkImageImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +4251:\28anonymous\20namespace\29::SDFTSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4252:\28anonymous\20namespace\29::RunIteratorQueue::advanceRuns\28\29 +4253:\28anonymous\20namespace\29::Pass::blur\28int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +4254:\28anonymous\20namespace\29::MipLevelHelper::allocAndInit\28SkArenaAlloc*\2c\20SkSamplingOptions\20const&\2c\20SkTileMode\2c\20SkTileMode\29 +4255:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29 +4256:\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 +4257:\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 +4258:\28anonymous\20namespace\29::MeshOp::Mesh::Mesh\28SkMesh\20const&\29 +4259:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29 +4260:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29 +4261:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineStruct\28char\20const*\29 +4262:\28anonymous\20namespace\29::FillRectOpImpl::tessellate\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29\20const +4263:\28anonymous\20namespace\29::FillRectOpImpl::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +4264:\28anonymous\20namespace\29::FillRectOpImpl::FillRectOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +4265:\28anonymous\20namespace\29::EllipticalRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRRect\20const&\29 +4266:\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 +4267:\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29.1 +4268:\28anonymous\20namespace\29::DirectMaskSubRun::~DirectMaskSubRun\28\29 +4269:\28anonymous\20namespace\29::DirectMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +4270:\28anonymous\20namespace\29::DirectMaskSubRun::glyphCount\28\29\20const +4271:\28anonymous\20namespace\29::DefaultPathOp::programInfo\28\29 +4272:\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 +4273:\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 +4274:\28anonymous\20namespace\29::ClipGeometry\20\28anonymous\20namespace\29::get_clip_geometry\28skgpu::ganesh::ClipStack::SaveRecord\20const&\2c\20skgpu::ganesh::ClipStack::Draw\20const&\29 +4275:\28anonymous\20namespace\29::CircularRRectEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +4276:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29 +4277:\28anonymous\20namespace\29::CachedTessellations::CachedTessellations\28\29 +4278:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29 +4279:\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 +4280:WebPResetDecParams +4281:WebPRescalerGetScaledDimensions +4282:WebPMultRows +4283:WebPMultARGBRows +4284:WebPIoInitFromOptions +4285:WebPInitUpsamplers +4286:WebPFlipBuffer +4287:WebPDemuxGetChunk +4288:WebPCopyDecBufferPixels +4289:WebPAllocateDecBuffer +4290:VP8RemapBitReader +4291:VP8LHuffmanTablesAllocate +4292:VP8LDspInit +4293:VP8LConvertFromBGRA +4294:VP8LColorCacheInit +4295:VP8LColorCacheCopy +4296:VP8LBuildHuffmanTable +4297:VP8LBitReaderSetBuffer +4298:VP8InitScanline +4299:VP8GetInfo +4300:VP8BitReaderSetBuffer +4301:Update_Max +4302:TransformOne_C +4303:TT_Set_Named_Instance +4304:TT_Hint_Glyph +4305:StoreFrame +4306:SortContourList\28SkOpContourHead**\2c\20bool\2c\20bool\29 +4307:SkYUVAPixmapInfo::isSupported\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\29\20const +4308:SkWuffsCodec::seekFrame\28int\29 +4309:SkWuffsCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +4310:SkWuffsCodec::onIncrementalDecodeTwoPass\28\29 +4311:SkWuffsCodec::decodeFrameConfig\28\29 +4312:SkWriter32::writeString\28char\20const*\2c\20unsigned\20long\29 +4313:SkWriteICCProfile\28skcms_ICCProfile\20const*\2c\20char\20const*\29 +4314:SkWebpDecoder::IsWebp\28void\20const*\2c\20unsigned\20long\29 +4315:SkWebpCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29 +4316:SkWbmpDecoder::IsWbmp\28void\20const*\2c\20unsigned\20long\29 +4317:SkWbmpCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29 +4318:SkWStream::SizeOfPackedUInt\28unsigned\20long\29 +4319:SkWBuffer::padToAlign4\28\29 +4320:SkVertices::Builder::indices\28\29 +4321:SkUnicode::convertUtf16ToUtf8\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4322:SkUTF::UTF16ToUTF8\28char*\2c\20int\2c\20unsigned\20short\20const*\2c\20unsigned\20long\29 +4323:SkTypeface_FreeType::FaceRec::Make\28SkTypeface_FreeType\20const*\29 +4324:SkTypeface_Custom::onGetFamilyName\28SkString*\29\20const +4325:SkTypeface::textToGlyphs\28void\20const*\2c\20unsigned\20long\2c\20SkTextEncoding\2c\20unsigned\20short*\2c\20int\29\20const +4326:SkTypeface::serialize\28SkWStream*\2c\20SkTypeface::SerializeBehavior\29\20const +4327:SkTypeface::openStream\28int*\29\20const +4328:SkTypeface::getFamilyName\28SkString*\29\20const +4329:SkTransformShader::update\28SkMatrix\20const&\29 +4330:SkTransformShader::SkTransformShader\28SkShaderBase\20const&\2c\20bool\29 +4331:SkTiff::ImageFileDirectory::getEntryRawData\28unsigned\20short\2c\20unsigned\20short*\2c\20unsigned\20short*\2c\20unsigned\20int*\2c\20unsigned\20char\20const**\2c\20unsigned\20long*\29\20const +4332:SkTextBlobBuilder::allocRunPos\28SkFont\20const&\2c\20int\2c\20SkRect\20const*\29 +4333:SkTextBlob::getIntercepts\28float\20const*\2c\20float*\2c\20SkPaint\20const*\29\20const +4334:SkTextBlob::RunRecord::StorageSize\28unsigned\20int\2c\20unsigned\20int\2c\20SkTextBlob::GlyphPositioning\2c\20SkSafeMath*\29 +4335:SkTextBlob::MakeFromText\28void\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20SkTextEncoding\29 +4336:SkTextBlob::MakeFromRSXform\28void\20const*\2c\20unsigned\20long\2c\20SkRSXform\20const*\2c\20SkFont\20const&\2c\20SkTextEncoding\29 +4337:SkTextBlob::Iter::experimentalNext\28SkTextBlob::Iter::ExperimentalRun*\29 +4338:SkTextBlob::Iter::Iter\28SkTextBlob\20const&\29 +4339:SkTaskGroup::wait\28\29 +4340:SkTaskGroup::add\28std::__2::function\29 +4341:SkTSpan::onlyEndPointsInCommon\28SkTSpan\20const*\2c\20bool*\2c\20bool*\2c\20bool*\29 +4342:SkTSpan::linearIntersects\28SkTCurve\20const&\29\20const +4343:SkTSect::removeAllBut\28SkTSpan\20const*\2c\20SkTSpan*\2c\20SkTSect*\29 +4344:SkTSect::intersects\28SkTSpan*\2c\20SkTSect*\2c\20SkTSpan*\2c\20int*\29 +4345:SkTSect::deleteEmptySpans\28\29 +4346:SkTSect::addSplitAt\28SkTSpan*\2c\20double\29 +4347:SkTSect::addForPerp\28SkTSpan*\2c\20double\29 +4348:SkTSect::EndsEqual\28SkTSect\20const*\2c\20SkTSect\20const*\2c\20SkIntersections*\29 +4349:SkTMultiMap::~SkTMultiMap\28\29 +4350:SkTMaskGamma<3\2c\203\2c\203>::SkTMaskGamma\28float\2c\20float\29 +4351:SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::find\28SkImageFilterCacheKey\20const&\29\20const +4352:SkTDStorage::calculateSizeOrDie\28int\29::$_1::operator\28\29\28\29\20const +4353:SkTDStorage::SkTDStorage\28SkTDStorage&&\29 +4354:SkTCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +4355:SkTConic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +4356:SkTConic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +4357:SkTConic::controlsInside\28\29\20const +4358:SkTConic::collapsed\28\29\20const +4359:SkTBlockList::reset\28\29 +4360:SkTBlockList::reset\28\29 +4361:SkTBlockList::push_back\28GrGLProgramDataManager::GLUniformInfo\20const&\29 +4362:SkSwizzler::MakeSimple\28int\2c\20SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +4363:SkSurfaces::WrapPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkSurfaceProps\20const*\29 +4364:SkSurface_Base::outstandingImageSnapshot\28\29\20const +4365:SkSurface_Base::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +4366:SkSurface_Base::onCapabilities\28\29 +4367:SkStrokeRec::setHairlineStyle\28\29 +4368:SkStrokeRec::SkStrokeRec\28SkPaint\20const&\2c\20SkPaint::Style\2c\20float\29 +4369:SkStrokeRec::GetInflationRadius\28SkPaint::Join\2c\20float\2c\20SkPaint::Cap\2c\20float\29 +4370:SkString::insertHex\28unsigned\20long\2c\20unsigned\20int\2c\20int\29 +4371:SkString::appendVAList\28char\20const*\2c\20void*\29 +4372:SkString::SkString\28std::__2::basic_string_view>\29 +4373:SkStrikeSpec::SkStrikeSpec\28SkStrikeSpec\20const&\29 +4374:SkStrikeSpec::ShouldDrawAsPath\28SkPaint\20const&\2c\20SkFont\20const&\2c\20SkMatrix\20const&\29 +4375:SkStrSplit\28char\20const*\2c\20char\20const*\2c\20SkStrSplitMode\2c\20skia_private::TArray*\29 +4376:SkStrAppendS32\28char*\2c\20int\29 +4377:SkSpriteBlitter_Memcpy::~SkSpriteBlitter_Memcpy\28\29 +4378:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +4379:SkSpecialImages::AsBitmap\28SkSpecialImage\20const*\2c\20SkBitmap*\29 +4380:SkSharedMutex::releaseShared\28\29 +4381:SkShapers::unicode::BidiRunIterator\28sk_sp\2c\20char\20const*\2c\20unsigned\20long\2c\20unsigned\20char\29 +4382:SkShapers::HB::ScriptRunIterator\28char\20const*\2c\20unsigned\20long\29 +4383:SkShaper::MakeStdLanguageRunIterator\28char\20const*\2c\20unsigned\20long\29 +4384:SkShaders::MatrixRec::concat\28SkMatrix\20const&\29\20const +4385:SkShaders::Blend\28sk_sp\2c\20sk_sp\2c\20sk_sp\29 +4386:SkShaderUtils::VisitLineByLine\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::function\20const&\29 +4387:SkShaderUtils::PrettyPrint\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4388:SkShaderUtils::GLSLPrettyPrint::parseUntil\28char\20const*\29 +4389:SkShaderUtils::GLSLPrettyPrint::hasToken\28char\20const*\29 +4390:SkShaderBlurAlgorithm::renderBlur\28SkRuntimeShaderBuilder*\2c\20SkFilterMode\2c\20SkISize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +4391:SkShaderBlurAlgorithm::evalBlur1D\28float\2c\20int\2c\20SkV2\2c\20sk_sp\2c\20SkIRect\2c\20SkTileMode\2c\20SkIRect\29\20const +4392:SkShaderBlurAlgorithm::Compute2DBlurOffsets\28SkISize\2c\20std::__2::array&\29 +4393:SkShaderBlurAlgorithm::Compute2DBlurKernel\28SkSize\2c\20SkISize\2c\20std::__2::array&\29 +4394:SkShaderBlurAlgorithm::Compute1DBlurLinearKernel\28float\2c\20int\2c\20std::__2::array&\29 +4395:SkShaderBase::getFlattenableType\28\29\20const +4396:SkShaderBase::asLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +4397:SkShader::makeWithColorFilter\28sk_sp\29\20const +4398:SkScan::PathRequiresTiling\28SkIRect\20const&\29 +4399:SkScan::HairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +4400:SkScan::AntiFrameRect\28SkRect\20const&\2c\20SkPoint\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4401:SkScan::AntiFillXRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4402:SkScan::AntiFillRect\28SkRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +4403:SkScan::AAAFillPath\28SkPath\20const&\2c\20SkBlitter*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20bool\29 +4404:SkScalerContext_FreeType::updateGlyphBoundsIfSubpixel\28SkGlyph\20const&\2c\20SkRect*\2c\20bool\29 +4405:SkScalerContext_FreeType::shouldSubpixelBitmap\28SkGlyph\20const&\2c\20SkMatrix\20const&\29 +4406:SkScalerContextRec::getSingleMatrix\28SkMatrix*\29\20const +4407:SkScalerContextFTUtils::drawCOLRv1Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29\20const +4408:SkScalerContextFTUtils::drawCOLRv0Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29\20const +4409:SkScalerContext::internalMakeGlyph\28SkPackedGlyphID\2c\20SkMask::Format\2c\20SkArenaAlloc*\29 +4410:SkScalerContext::internalGetPath\28SkGlyph&\2c\20SkArenaAlloc*\29 +4411:SkScalerContext::getFontMetrics\28SkFontMetrics*\29 +4412:SkScalerContext::SkScalerContext\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +4413:SkScalerContext::PreprocessRec\28SkTypeface\20const&\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const&\29 +4414:SkScalerContext::MakeRecAndEffects\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\2c\20SkScalerContextRec*\2c\20SkScalerContextEffects*\29 +4415:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +4416:SkScalerContext::GetMaskPreBlend\28SkScalerContextRec\20const&\29 +4417:SkScalerContext::AutoDescriptorGivenRecAndEffects\28SkScalerContextRec\20const&\2c\20SkScalerContextEffects\20const&\2c\20SkAutoDescriptor*\29 +4418:SkSampledCodec::sampledDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +4419:SkSampledCodec::accountForNativeScaling\28int*\2c\20int*\29\20const +4420:SkSampledCodec::SkSampledCodec\28SkCodec*\29 +4421:SkSL::zero_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\29 +4422:SkSL::type_to_sksltype\28SkSL::Context\20const&\2c\20SkSL::Type\20const&\2c\20SkSLType*\29 +4423:SkSL::stoi\28std::__2::basic_string_view>\2c\20long\20long*\29 +4424:SkSL::splat_scalar\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +4425: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 +4426: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 +4427: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 +4428:SkSL::negate_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +4429:SkSL::make_reciprocal_expression\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29 +4430:SkSL::index_out_of_range\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20long\20long\2c\20SkSL::Expression\20const&\29 +4431:SkSL::get_struct_definitions_from_module\28SkSL::Program&\2c\20SkSL::Module\20const&\2c\20std::__2::vector>*\29 +4432: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 +4433:SkSL::extract_matrix\28SkSL::Expression\20const*\2c\20float*\29 +4434:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +4435: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 +4436:SkSL::\28anonymous\20namespace\29::check_valid_uniform_type\28SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Context\20const&\2c\20bool\29::$_0::operator\28\29\28\29\20const +4437:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +4438:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +4439:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +4440:SkSL::VariableReference::setRefKind\28SkSL::VariableRefKind\29 +4441:SkSL::Variable::setVarDeclaration\28SkSL::VarDeclaration*\29 +4442:SkSL::Variable::setGlobalVarDeclaration\28SkSL::GlobalVarDeclaration*\29 +4443:SkSL::Variable::globalVarDeclaration\28\29\20const +4444: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 +4445: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 +4446:SkSL::VarDeclaration::Make\28SkSL::Context\20const&\2c\20SkSL::Variable*\2c\20SkSL::Type\20const*\2c\20int\2c\20std::__2::unique_ptr>\29 +4447: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 +4448:SkSL::TypeReference::description\28SkSL::OperatorPrecedence\29\20const +4449:SkSL::TypeReference::VerifyType\28SkSL::Context\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Position\29 +4450:SkSL::TypeReference::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\29 +4451:SkSL::Type::MakeStructType\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20bool\29 +4452:SkSL::Type::MakeLiteralType\28char\20const*\2c\20SkSL::Type\20const&\2c\20signed\20char\29 +4453:SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::addDeclaringElement\28SkSL::ProgramElement\20const*\29 +4454:SkSL::ToGLSL\28SkSL::Program&\2c\20SkSL::ShaderCaps\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\29 +4455: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 +4456:SkSL::SymbolTable::insertNewParent\28\29 +4457:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Symbol*\29 +4458:SkSL::Swizzle::MaskString\28skia_private::FixedArray<4\2c\20signed\20char>\20const&\29 +4459:SkSL::SwitchStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +4460:SkSL::SwitchCase::Make\28SkSL::Position\2c\20long\20long\2c\20std::__2::unique_ptr>\29 +4461:SkSL::SwitchCase::MakeDefault\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +4462:SkSL::StructType::StructType\28SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20int\2c\20bool\2c\20bool\29 +4463:SkSL::String::vappendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20void*\29 +4464:SkSL::SingleArgumentConstructor::argumentSpan\28\29 +4465:SkSL::RP::stack_usage\28SkSL::RP::Instruction\20const&\29 +4466:SkSL::RP::UnownedLValueSlice::isWritable\28\29\20const +4467:SkSL::RP::UnownedLValueSlice::dynamicSlotRange\28\29 +4468:SkSL::RP::ScratchLValue::~ScratchLValue\28\29 +4469:SkSL::RP::Program::~Program\28\29 +4470:SkSL::RP::LValue::swizzle\28\29 +4471:SkSL::RP::Generator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\29 +4472:SkSL::RP::Generator::writeFunction\28SkSL::IRNode\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSpan>\20const>\29 +4473:SkSL::RP::Generator::storeImmutableValueToSlots\28skia_private::TArray\20const&\2c\20SkSL::RP::SlotRange\29 +4474:SkSL::RP::Generator::pushVariableReferencePartial\28SkSL::VariableReference\20const&\2c\20SkSL::RP::SlotRange\29 +4475:SkSL::RP::Generator::pushPrefixExpression\28SkSL::Operator\2c\20SkSL::Expression\20const&\29 +4476:SkSL::RP::Generator::pushIntrinsic\28SkSL::IntrinsicKind\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +4477:SkSL::RP::Generator::pushImmutableData\28SkSL::Expression\20const&\29 +4478:SkSL::RP::Generator::pushAbsFloatIntrinsic\28int\29 +4479:SkSL::RP::Generator::getImmutableValueForExpression\28SkSL::Expression\20const&\2c\20skia_private::TArray*\29 +4480:SkSL::RP::Generator::foldWithMultiOp\28SkSL::RP::BuilderOp\2c\20int\29 +4481:SkSL::RP::Generator::findPreexistingImmutableData\28skia_private::TArray\20const&\29 +4482:SkSL::RP::Builder::push_slots_or_immutable_indirect\28SkSL::RP::SlotRange\2c\20int\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::BuilderOp\29 +4483:SkSL::RP::Builder::push_condition_mask\28\29 +4484:SkSL::RP::Builder::pad_stack\28int\29 +4485:SkSL::RP::Builder::copy_stack_to_slots\28SkSL::RP::SlotRange\2c\20int\29 +4486:SkSL::RP::Builder::branch_if_any_lanes_active\28int\29 +4487:SkSL::ProgramVisitor::visit\28SkSL::Program\20const&\29 +4488:SkSL::ProgramUsage::remove\28SkSL::Expression\20const*\29 +4489:SkSL::ProgramUsage::add\28SkSL::Statement\20const*\29 +4490:SkSL::ProgramUsage::add\28SkSL::Expression\20const*\29 +4491:SkSL::Pool::attachToThread\28\29 +4492:SkSL::PipelineStage::PipelineStageCodeGenerator::functionName\28SkSL::FunctionDeclaration\20const&\29 +4493:SkSL::PipelineStage::PipelineStageCodeGenerator::functionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +4494:SkSL::Parser::~Parser\28\29 +4495:SkSL::Parser::varDeclarations\28\29 +4496:SkSL::Parser::varDeclarationsOrExpressionStatement\28\29 +4497:SkSL::Parser::switchCaseBody\28SkSL::ExpressionArray*\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>*\2c\20std::__2::unique_ptr>\29 +4498:SkSL::Parser::statementOrNop\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +4499:SkSL::Parser::shiftExpression\28\29 +4500:SkSL::Parser::relationalExpression\28\29 +4501:SkSL::Parser::parameter\28std::__2::unique_ptr>*\29 +4502:SkSL::Parser::multiplicativeExpression\28\29 +4503:SkSL::Parser::logicalXorExpression\28\29 +4504:SkSL::Parser::logicalAndExpression\28\29 +4505:SkSL::Parser::localVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +4506:SkSL::Parser::intLiteral\28long\20long*\29 +4507:SkSL::Parser::globalVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +4508:SkSL::Parser::equalityExpression\28\29 +4509:SkSL::Parser::directive\28bool\29 +4510:SkSL::Parser::declarations\28\29 +4511:SkSL::Parser::checkNext\28SkSL::Token::Kind\2c\20SkSL::Token*\29 +4512:SkSL::Parser::bitwiseXorExpression\28\29 +4513:SkSL::Parser::bitwiseOrExpression\28\29 +4514:SkSL::Parser::bitwiseAndExpression\28\29 +4515:SkSL::Parser::additiveExpression\28\29 +4516:SkSL::Parser::Parser\28SkSL::Compiler*\2c\20SkSL::ProgramSettings\20const&\2c\20SkSL::ProgramKind\2c\20std::__2::unique_ptr\2c\20std::__2::allocator>\2c\20std::__2::default_delete\2c\20std::__2::allocator>>>\29 +4517:SkSL::MultiArgumentConstructor::argumentSpan\28\29 +4518:SkSL::ModuleLoader::~ModuleLoader\28\29 +4519:SkSL::ModuleLoader::loadVertexModule\28SkSL::Compiler*\29 +4520:SkSL::ModuleLoader::loadSharedModule\28SkSL::Compiler*\29 +4521:SkSL::ModuleLoader::loadPublicModule\28SkSL::Compiler*\29 +4522:SkSL::ModuleLoader::loadGraphiteVertexModule\28SkSL::Compiler*\29 +4523:SkSL::ModuleLoader::loadGraphiteFragmentModule\28SkSL::Compiler*\29 +4524:SkSL::ModuleLoader::loadFragmentModule\28SkSL::Compiler*\29 +4525:SkSL::ModuleLoader::Get\28\29 +4526:SkSL::MatrixType::bitWidth\28\29\20const +4527:SkSL::MakeRasterPipelineProgram\28SkSL::Program\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSL::DebugTracePriv*\2c\20bool\29 +4528:SkSL::Layout::description\28\29\20const +4529:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_length\28std::__2::array\20const&\29 +4530:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_add\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +4531:SkSL::InterfaceBlock::~InterfaceBlock\28\29 +4532:SkSL::Inliner::candidateCanBeInlined\28SkSL::InlineCandidate\20const&\2c\20SkSL::ProgramUsage\20const&\2c\20skia_private::THashMap*\29 +4533: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 +4534:SkSL::GLSLCodeGenerator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\2c\20bool\29 +4535:SkSL::GLSLCodeGenerator::writeProgramElement\28SkSL::ProgramElement\20const&\29 +4536:SkSL::GLSLCodeGenerator::writeMinAbsHack\28SkSL::Expression&\2c\20SkSL::Expression&\29 +4537:SkSL::GLSLCodeGenerator::generateCode\28\29 +4538:SkSL::FunctionDefinition::~FunctionDefinition\28\29.1 +4539:SkSL::FunctionDefinition::~FunctionDefinition\28\29 +4540: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 +4541: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 +4542:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29.1 +4543:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29 +4544:SkSL::FunctionDeclaration::mangledName\28\29\20const +4545:SkSL::FunctionDeclaration::determineFinalTypes\28SkSL::ExpressionArray\20const&\2c\20skia_private::STArray<8\2c\20SkSL::Type\20const*\2c\20true>*\2c\20SkSL::Type\20const**\29\20const +4546: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 +4547:SkSL::FunctionCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +4548:SkSL::FunctionCall::FindBestFunctionForCall\28SkSL::Context\20const&\2c\20SkSL::FunctionDeclaration\20const*\2c\20SkSL::ExpressionArray\20const&\29 +4549:SkSL::FunctionCall::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +4550: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>\2c\20std::__2::unique_ptr>\29 +4551:SkSL::FindIntrinsicKind\28std::__2::basic_string_view>\29 +4552:SkSL::FieldAccess::~FieldAccess\28\29.1 +4553:SkSL::FieldAccess::~FieldAccess\28\29 +4554:SkSL::ExpressionStatement::Convert\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +4555:SkSL::DoStatement::~DoStatement\28\29.1 +4556:SkSL::DoStatement::~DoStatement\28\29 +4557:SkSL::DebugTracePriv::setSource\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4558:SkSL::ConstructorScalarCast::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +4559:SkSL::ConstructorMatrixResize::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +4560:SkSL::Constructor::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +4561: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 +4562:SkSL::Compiler::writeErrorCount\28\29 +4563:SkSL::Compiler::initializeContext\28SkSL::Module\20const*\2c\20SkSL::ProgramKind\2c\20SkSL::ProgramSettings\2c\20std::__2::basic_string_view>\2c\20bool\29 +4564:SkSL::Compiler::cleanupContext\28\29 +4565:SkSL::ChildCall::~ChildCall\28\29.1 +4566:SkSL::ChildCall::~ChildCall\28\29 +4567:SkSL::ChildCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Variable\20const&\2c\20SkSL::ExpressionArray\29 +4568:SkSL::BinaryExpression::isAssignmentIntoVariable\28\29 +4569: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 +4570:SkSL::Analysis::\28anonymous\20namespace\29::LoopControlFlowVisitor::visitStatement\28SkSL::Statement\20const&\29 +4571:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29 +4572:SkSL::Analysis::IsConstantExpression\28SkSL::Expression\20const&\29 +4573:SkSL::Analysis::IsAssignable\28SkSL::Expression&\2c\20SkSL::Analysis::AssignmentInfo*\2c\20SkSL::ErrorReporter*\29 +4574: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 +4575:SkSL::Analysis::GetLoopControlFlowInfo\28SkSL::Statement\20const&\29 +4576:SkSL::AliasType::numberKind\28\29\20const +4577:SkSL::AliasType::isAllowedInES2\28\29\20const +4578:SkRuntimeShader::~SkRuntimeShader\28\29 +4579:SkRuntimeEffectPriv::WriteChildEffects\28SkWriteBuffer&\2c\20SkSpan\29 +4580:SkRuntimeEffectPriv::TransformUniforms\28SkSpan\2c\20sk_sp\2c\20SkColorSpaceXformSteps\20const&\29 +4581:SkRuntimeEffect::~SkRuntimeEffect\28\29 +4582:SkRuntimeEffect::makeShader\28sk_sp\2c\20sk_sp*\2c\20unsigned\20long\2c\20SkMatrix\20const*\29\20const +4583:SkRuntimeEffect::makeColorFilter\28sk_sp\2c\20SkSpan\29\20const +4584:SkRuntimeEffect::TracedShader*\20emscripten::internal::raw_constructor\28\29 +4585:SkRuntimeEffect::MakeInternal\28std::__2::unique_ptr>\2c\20SkRuntimeEffect::Options\20const&\2c\20SkSL::ProgramKind\29 +4586:SkRuntimeEffect::ChildPtr&\20skia_private::TArray::emplace_back&>\28sk_sp&\29 +4587:SkRuntimeBlender::flatten\28SkWriteBuffer&\29\20const +4588:SkRgnBuilder::~SkRgnBuilder\28\29 +4589:SkResourceCache::PostPurgeSharedID\28unsigned\20long\20long\29 +4590:SkResourceCache::GetDiscardableFactory\28\29 +4591: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 +4592:SkRegion::Spanerator::Spanerator\28SkRegion\20const&\2c\20int\2c\20int\2c\20int\29 +4593:SkRegion::Oper\28SkRegion\20const&\2c\20SkRegion\20const&\2c\20SkRegion::Op\2c\20SkRegion*\29 +4594:SkRefCntSet::~SkRefCntSet\28\29 +4595:SkRefCntBase::internal_dispose\28\29\20const +4596:SkReduceOrder::reduce\28SkDQuad\20const&\29 +4597:SkReduceOrder::Conic\28SkConic\20const&\2c\20SkPoint*\29 +4598:SkRectClipBlitter::requestRowsPreserved\28\29\20const +4599:SkRectClipBlitter::allocBlitMemory\28unsigned\20long\29 +4600:SkRect::intersect\28SkRect\20const&\2c\20SkRect\20const&\29 +4601:SkRecords::TypedMatrix::TypedMatrix\28SkMatrix\20const&\29 +4602:SkRecords::FillBounds::popSaveBlock\28\29 +4603:SkRecordOptimize\28SkRecord*\29 +4604:SkRecordFillBounds\28SkRect\20const&\2c\20SkRecord\20const&\2c\20SkRect*\2c\20SkBBoxHierarchy::Metadata*\29 +4605:SkRecord::bytesUsed\28\29\20const +4606:SkReadPixelsRec::trim\28int\2c\20int\29 +4607:SkReadBuffer::readString\28unsigned\20long*\29 +4608:SkReadBuffer::readRegion\28SkRegion*\29 +4609:SkReadBuffer::readRect\28\29 +4610:SkReadBuffer::readPoint3\28SkPoint3*\29 +4611:SkReadBuffer::readPad32\28void*\2c\20unsigned\20long\29 +4612:SkRasterPipeline_<256ul>::SkRasterPipeline_\28\29 +4613:SkRasterPipeline::tailPointer\28\29 +4614:SkRasterPipeline::appendSetRGB\28SkArenaAlloc*\2c\20float\20const*\29 +4615:SkRasterPipeline::addMemoryContext\28SkRasterPipeline_MemoryCtx*\2c\20int\2c\20bool\2c\20bool\29 +4616:SkRasterClipStack::SkRasterClipStack\28int\2c\20int\29 +4617:SkRTreeFactory::operator\28\29\28\29\20const +4618:SkRTree::search\28SkRTree::Node*\2c\20SkRect\20const&\2c\20std::__2::vector>*\29\20const +4619:SkRTree::bulkLoad\28std::__2::vector>*\2c\20int\29 +4620:SkRTree::allocateNodeAtLevel\28unsigned\20short\29 +4621:SkRSXform::toQuad\28float\2c\20float\2c\20SkPoint*\29\20const +4622:SkRRect::isValid\28\29\20const +4623:SkRRect::computeType\28\29 +4624:SkRGBA4f<\28SkAlphaType\292>\20skgpu::Swizzle::applyTo<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\29\20const +4625:SkRBuffer::skipToAlign4\28\29 +4626:SkQuads::EvalAt\28double\2c\20double\2c\20double\2c\20double\29 +4627:SkQuadraticEdge::setQuadraticWithoutUpdate\28SkPoint\20const*\2c\20int\29 +4628:SkPtrSet::reset\28\29 +4629:SkPtrSet::copyToArray\28void**\29\20const +4630:SkPtrSet::add\28void*\29 +4631:SkPoint::Normalize\28SkPoint*\29 +4632:SkPngEncoder::Make\28SkWStream*\2c\20SkPixmap\20const&\2c\20SkPngEncoder::Options\20const&\29 +4633:SkPngEncoder::Encode\28GrDirectContext*\2c\20SkImage\20const*\2c\20SkPngEncoder::Options\20const&\29 +4634:SkPngCodec::initializeXforms\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +4635:SkPngCodec::initializeSwizzler\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20bool\29 +4636:SkPngCodec::allocateStorage\28SkImageInfo\20const&\29 +4637:SkPixmapUtils::Orient\28SkPixmap\20const&\2c\20SkPixmap\20const&\2c\20SkEncodedOrigin\29 +4638:SkPixmap::erase\28unsigned\20int\2c\20SkIRect\20const&\29\20const +4639:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const +4640:SkPixelRef::getGenerationID\28\29\20const +4641:SkPixelRef::addGenIDChangeListener\28sk_sp\29 +4642:SkPixelRef::SkPixelRef\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +4643:SkPictureShader::CachedImageInfo::makeImage\28sk_sp\2c\20SkPicture\20const*\29\20const +4644:SkPictureShader::CachedImageInfo::Make\28SkRect\20const&\2c\20SkMatrix\20const&\2c\20SkColorType\2c\20SkColorSpace*\2c\20int\2c\20SkSurfaceProps\20const&\29 +4645:SkPictureRecord::endRecording\28\29 +4646:SkPictureRecord::beginRecording\28\29 +4647:SkPicturePriv::Flatten\28sk_sp\2c\20SkWriteBuffer&\29 +4648:SkPicturePlayback::draw\28SkCanvas*\2c\20SkPicture::AbortCallback*\2c\20SkReadBuffer*\29 +4649:SkPictureData::parseBufferTag\28SkReadBuffer&\2c\20unsigned\20int\2c\20unsigned\20int\29 +4650:SkPictureData::getPicture\28SkReadBuffer*\29\20const +4651:SkPictureData::getDrawable\28SkReadBuffer*\29\20const +4652:SkPictureData::flatten\28SkWriteBuffer&\29\20const +4653:SkPictureData::flattenToBuffer\28SkWriteBuffer&\2c\20bool\29\20const +4654:SkPictureData::SkPictureData\28SkPictureRecord\20const&\2c\20SkPictInfo\20const&\29 +4655:SkPicture::backport\28\29\20const +4656:SkPicture::SkPicture\28\29 +4657:SkPicture::MakeFromStreamPriv\28SkStream*\2c\20SkDeserialProcs\20const*\2c\20SkTypefacePlayback*\2c\20int\29 +4658:SkPerlinNoiseShader::getPaintingData\28\29\20const +4659:SkPathWriter::assemble\28\29 +4660:SkPathWriter::SkPathWriter\28SkPath&\29 +4661:SkPathRef::resetToSize\28int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29 +4662:SkPathRef::SkPathRef\28SkSpan\2c\20SkSpan\2c\20SkSpan\2c\20unsigned\20int\29 +4663:SkPathPriv::IsNestedFillRects\28SkPath\20const&\2c\20SkRect*\2c\20SkPathDirection*\29 +4664:SkPathPriv::CreateDrawArcPath\28SkPath*\2c\20SkArc\20const&\2c\20bool\29 +4665:SkPathEffectBase::PointData::~PointData\28\29 +4666:SkPathEffect::filterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +4667:SkPathBuilder::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +4668:SkPath::writeToMemoryAsRRect\28void*\29\20const +4669:SkPath::setLastPt\28float\2c\20float\29 +4670:SkPath::reverseAddPath\28SkPath\20const&\29 +4671:SkPath::readFromMemory\28void\20const*\2c\20unsigned\20long\29 +4672:SkPath::offset\28float\2c\20float\2c\20SkPath*\29\20const +4673:SkPath::isZeroLengthSincePoint\28int\29\20const +4674:SkPath::isRRect\28SkRRect*\29\20const +4675:SkPath::isOval\28SkRect*\29\20const +4676:SkPath::conservativelyContainsRect\28SkRect\20const&\29\20const +4677:SkPath::computeConvexity\28\29\20const +4678:SkPath::addPath\28SkPath\20const&\2c\20float\2c\20float\2c\20SkPath::AddPathMode\29 +4679:SkPath::Polygon\28SkPoint\20const*\2c\20int\2c\20bool\2c\20SkPathFillType\2c\20bool\29 +4680:SkPath2DPathEffect::Make\28SkMatrix\20const&\2c\20SkPath\20const&\29 +4681:SkParsePath::ToSVGString\28SkPath\20const&\2c\20SkParsePath::PathEncoding\29::$_0::operator\28\29\28char\2c\20SkPoint\20const*\2c\20unsigned\20long\29\20const +4682:SkParseEncodedOrigin\28void\20const*\2c\20unsigned\20long\2c\20SkEncodedOrigin*\29 +4683:SkPaintPriv::ShouldDither\28SkPaint\20const&\2c\20SkColorType\29 +4684:SkPaintPriv::Overwrites\28SkPaint\20const*\2c\20SkPaintPriv::ShaderOverrideOpacity\29 +4685:SkPaint::setStroke\28bool\29 +4686:SkPaint::reset\28\29 +4687:SkPaint::refColorFilter\28\29\20const +4688:SkOpSpanBase::merge\28SkOpSpan*\29 +4689:SkOpSpanBase::globalState\28\29\20const +4690:SkOpSpan::sortableTop\28SkOpContour*\29 +4691:SkOpSpan::release\28SkOpPtT\20const*\29 +4692:SkOpSpan::insertCoincidence\28SkOpSegment\20const*\2c\20bool\2c\20bool\29 +4693:SkOpSpan::init\28SkOpSegment*\2c\20SkOpSpan*\2c\20double\2c\20SkPoint\20const&\29 +4694:SkOpSegment::updateWindingReverse\28SkOpAngle\20const*\29 +4695:SkOpSegment::oppXor\28\29\20const +4696:SkOpSegment::moveMultiples\28\29 +4697:SkOpSegment::isXor\28\29\20const +4698:SkOpSegment::findNextWinding\28SkTDArray*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +4699:SkOpSegment::findNextOp\28SkTDArray*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\2c\20bool*\2c\20SkPathOp\2c\20int\2c\20int\29 +4700:SkOpSegment::computeSum\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpAngle::IncludeType\29 +4701:SkOpSegment::collapsed\28double\2c\20double\29\20const +4702:SkOpSegment::addExpanded\28double\2c\20SkOpSpanBase\20const*\2c\20bool*\29 +4703:SkOpSegment::activeAngle\28SkOpSpanBase*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +4704:SkOpSegment::UseInnerWinding\28int\2c\20int\29 +4705:SkOpPtT::ptAlreadySeen\28SkOpPtT\20const*\29\20const +4706:SkOpPtT::contains\28SkOpSegment\20const*\2c\20double\29\20const +4707:SkOpGlobalState::SkOpGlobalState\28SkOpContourHead*\2c\20SkArenaAlloc*\29 +4708:SkOpEdgeBuilder::preFetch\28\29 +4709:SkOpEdgeBuilder::init\28\29 +4710:SkOpEdgeBuilder::finish\28\29 +4711:SkOpContourBuilder::addConic\28SkPoint*\2c\20float\29 +4712:SkOpContour::addQuad\28SkPoint*\29 +4713:SkOpContour::addCubic\28SkPoint*\29 +4714:SkOpContour::addConic\28SkPoint*\2c\20float\29 +4715:SkOpCoincidence::release\28SkOpSegment\20const*\29 +4716:SkOpCoincidence::mark\28\29 +4717:SkOpCoincidence::markCollapsed\28SkCoincidentSpans*\2c\20SkOpPtT*\29 +4718:SkOpCoincidence::fixUp\28SkCoincidentSpans*\2c\20SkOpPtT*\2c\20SkOpPtT\20const*\29 +4719:SkOpCoincidence::contains\28SkCoincidentSpans\20const*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\29\20const +4720:SkOpCoincidence::checkOverlap\28SkCoincidentSpans*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20SkTDArray*\29\20const +4721:SkOpCoincidence::addOrOverlap\28SkOpSegment*\2c\20SkOpSegment*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20bool*\29 +4722:SkOpAngle::tangentsDiverge\28SkOpAngle\20const*\2c\20double\29 +4723:SkOpAngle::setSpans\28\29 +4724:SkOpAngle::setSector\28\29 +4725:SkOpAngle::previous\28\29\20const +4726:SkOpAngle::midToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +4727:SkOpAngle::loopCount\28\29\20const +4728:SkOpAngle::loopContains\28SkOpAngle\20const*\29\20const +4729:SkOpAngle::lastMarked\28\29\20const +4730:SkOpAngle::endToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +4731:SkOpAngle::alignmentSameSide\28SkOpAngle\20const*\2c\20int*\29\20const +4732:SkOpAngle::after\28SkOpAngle*\29 +4733:SkOffsetSimplePolygon\28SkPoint\20const*\2c\20int\2c\20SkRect\20const&\2c\20float\2c\20SkTDArray*\2c\20SkTDArray*\29 +4734:SkNoDrawCanvas::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +4735:SkNoDrawCanvas::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +4736:SkMipmapBuilder::countLevels\28\29\20const +4737:SkMipmap::countLevels\28\29\20const +4738:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +4739:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +4740:SkMeshPriv::CpuBuffer::size\28\29\20const +4741:SkMeshPriv::CpuBuffer::peek\28\29\20const +4742:SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +4743:SkMatrix::setRotate\28float\2c\20float\2c\20float\29 +4744:SkMatrix::mapRectScaleTranslate\28SkRect*\2c\20SkRect\20const&\29\20const +4745:SkMatrix::isFinite\28\29\20const +4746:SkMatrix::RotTrans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +4747:SkMaskSwizzler::swizzle\28void*\2c\20unsigned\20char\20const*\29 +4748:SkMaskFilterBase::NinePatch::~NinePatch\28\29 +4749:SkMask::computeTotalImageSize\28\29\20const +4750:SkMakeResourceCacheSharedIDForBitmap\28unsigned\20int\29 +4751:SkMD5::finish\28\29 +4752:SkMD5::SkMD5\28\29 +4753:SkMD5::Digest::toHexString\28\29\20const +4754:SkM44::preTranslate\28float\2c\20float\2c\20float\29 +4755:SkM44::postTranslate\28float\2c\20float\2c\20float\29 +4756:SkLocalMatrixShader::type\28\29\20const +4757:SkLinearColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +4758:SkLineParameters::cubicEndPoints\28SkDCubic\20const&\29 +4759:SkLatticeIter::SkLatticeIter\28SkCanvas::Lattice\20const&\2c\20SkRect\20const&\29 +4760:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::~SkLRUCache\28\29 +4761:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::reset\28\29 +4762:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::insert\28GrProgramDesc\20const&\2c\20std::__2::unique_ptr>\29 +4763:SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_matrix_conv_effect\28SkKnownRuntimeEffects::\28anonymous\20namespace\29::MatrixConvolutionImpl\2c\20SkRuntimeEffect::Options\20const&\29::$_0::operator\28\29\28int\2c\20SkRuntimeEffect::Options\20const&\29\20const +4764:SkJpegMetadataDecoderImpl::SkJpegMetadataDecoderImpl\28std::__2::vector>\29 +4765:SkJpegDecoder::IsJpeg\28void\20const*\2c\20unsigned\20long\29 +4766:SkJpegCodec::readRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20SkCodec::Options\20const&\29 +4767:SkJpegCodec::initializeSwizzler\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\2c\20bool\29 +4768:SkIsSimplePolygon\28SkPoint\20const*\2c\20int\29 +4769:SkIsConvexPolygon\28SkPoint\20const*\2c\20int\29 +4770:SkInvert4x4Matrix\28float\20const*\2c\20float*\29 +4771:SkInvert3x3Matrix\28float\20const*\2c\20float*\29 +4772:SkInvert2x2Matrix\28float\20const*\2c\20float*\29 +4773:SkIntersections::vertical\28SkDQuad\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4774:SkIntersections::vertical\28SkDLine\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4775:SkIntersections::vertical\28SkDCubic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4776:SkIntersections::vertical\28SkDConic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4777:SkIntersections::mostOutside\28double\2c\20double\2c\20SkDPoint\20const&\29\20const +4778:SkIntersections::intersect\28SkDQuad\20const&\2c\20SkDLine\20const&\29 +4779:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDQuad\20const&\29 +4780:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDLine\20const&\29 +4781:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDConic\20const&\29 +4782:SkIntersections::intersect\28SkDConic\20const&\2c\20SkDQuad\20const&\29 +4783:SkIntersections::intersect\28SkDConic\20const&\2c\20SkDLine\20const&\29 +4784:SkIntersections::insertCoincident\28double\2c\20double\2c\20SkDPoint\20const&\29 +4785:SkIntersections::horizontal\28SkDQuad\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4786:SkIntersections::horizontal\28SkDLine\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4787:SkIntersections::horizontal\28SkDCubic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4788:SkIntersections::horizontal\28SkDConic\20const&\2c\20double\2c\20double\2c\20double\2c\20bool\29 +4789:SkImages::RasterFromPixmap\28SkPixmap\20const&\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +4790:SkImages::RasterFromData\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\29 +4791:SkImages::DeferredFromGenerator\28std::__2::unique_ptr>\29 +4792:SkImage_Raster::onPeekBitmap\28\29\20const +4793:SkImage_Lazy::~SkImage_Lazy\28\29.1 +4794:SkImage_Lazy::onMakeSurface\28skgpu::graphite::Recorder*\2c\20SkImageInfo\20const&\29\20const +4795:SkImage_GaneshBase::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +4796: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 +4797:SkImage_Base::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +4798:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_1::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +4799:SkImageInfo::validRowBytes\28unsigned\20long\29\20const +4800:SkImageInfo::MakeN32Premul\28int\2c\20int\29 +4801:SkImageGenerator::~SkImageGenerator\28\29.1 +4802:SkImageFilters::ColorFilter\28sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +4803:SkImageFilter_Base::getCTMCapability\28\29\20const +4804:SkImageFilterCache::Get\28SkImageFilterCache::CreateIfNecessary\29 +4805:SkImageFilter::computeFastBounds\28SkRect\20const&\29\20const +4806:SkImage::withMipmaps\28sk_sp\29\20const +4807:SkImage::peekPixels\28SkPixmap*\29\20const +4808:SkImage::height\28\29\20const +4809:SkIcoDecoder::IsIco\28void\20const*\2c\20unsigned\20long\29 +4810:SkIcoCodec::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::Result*\29 +4811:SkGradientBaseShader::~SkGradientBaseShader\28\29 +4812:SkGradientBaseShader::AppendGradientFillStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const*\2c\20float\20const*\2c\20int\29 +4813:SkGlyphRunListPainterCPU::SkGlyphRunListPainterCPU\28SkSurfaceProps\20const&\2c\20SkColorType\2c\20SkColorSpace*\29 +4814:SkGlyph::setImage\28SkArenaAlloc*\2c\20SkScalerContext*\29 +4815:SkGlyph::setDrawable\28SkArenaAlloc*\2c\20SkScalerContext*\29 +4816:SkGlyph::pathIsHairline\28\29\20const +4817:SkGlyph::mask\28SkPoint\29\20const +4818:SkGlyph::SkGlyph\28SkGlyph&&\29 +4819:SkGifDecoder::MakeFromStream\28std::__2::unique_ptr>\2c\20SkCodec::SelectionPolicy\2c\20SkCodec::Result*\29 +4820:SkGifDecoder::IsGif\28void\20const*\2c\20unsigned\20long\29 +4821:SkGenerateDistanceFieldFromA8Image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20unsigned\20long\29 +4822:SkGaussFilter::SkGaussFilter\28double\29 +4823:SkFrameHolder::setAlphaAndRequiredFrame\28SkFrame*\29 +4824:SkFrame::fillIn\28SkCodec::FrameInfo*\2c\20bool\29\20const +4825:SkFontStyleSet_Custom::appendTypeface\28sk_sp\29 +4826:SkFontStyleSet_Custom::SkFontStyleSet_Custom\28SkString\29 +4827:SkFontScanner_FreeType::scanInstance\28SkStreamAsset*\2c\20int\2c\20int\2c\20SkString*\2c\20SkFontStyle*\2c\20bool*\2c\20skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>*\29\20const +4828:SkFontScanner_FreeType::computeAxisValues\28skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>\2c\20SkFontArguments::VariationPosition\2c\20int*\2c\20SkString\20const&\2c\20SkFontStyle*\2c\20SkFontArguments::VariationPosition::Coordinate\20const*\29 +4829:SkFontScanner_FreeType::SkFontScanner_FreeType\28\29 +4830:SkFontPriv::GetFontBounds\28SkFont\20const&\29 +4831:SkFontMgr::matchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +4832:SkFontMgr::makeFromStream\28std::__2::unique_ptr>\2c\20int\29\20const +4833:SkFontMgr::makeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29\20const +4834:SkFontMgr::legacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +4835:SkFontDescriptor::SkFontStyleWidthForWidthAxisValue\28float\29 +4836:SkFontDescriptor::SkFontDescriptor\28\29 +4837:SkFont::setupForAsPaths\28SkPaint*\29 +4838:SkFont::setSkewX\28float\29 +4839:SkFont::setLinearMetrics\28bool\29 +4840:SkFont::setEmbolden\28bool\29 +4841:SkFont::operator==\28SkFont\20const&\29\20const +4842:SkFont::getPaths\28unsigned\20short\20const*\2c\20int\2c\20void\20\28*\29\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29\2c\20void*\29\20const +4843:SkFlattenable::RegisterFlattenablesIfNeeded\28\29 +4844:SkFlattenable::PrivateInitializer::InitEffects\28\29 +4845:SkFlattenable::NameToFactory\28char\20const*\29 +4846:SkFlattenable::FactoryToName\28sk_sp\20\28*\29\28SkReadBuffer&\29\29 +4847:SkFindQuadExtrema\28float\2c\20float\2c\20float\2c\20float*\29 +4848:SkFindCubicExtrema\28float\2c\20float\2c\20float\2c\20float\2c\20float*\29 +4849:SkFactorySet::~SkFactorySet\28\29 +4850:SkEncoder::encodeRows\28int\29 +4851:SkEdgeClipper::clipQuad\28SkPoint\20const*\2c\20SkRect\20const&\29 +4852:SkEdgeClipper::ClipPath\28SkPath\20const&\2c\20SkRect\20const&\2c\20bool\2c\20void\20\28*\29\28SkEdgeClipper*\2c\20bool\2c\20void*\29\2c\20void*\29 +4853:SkEdgeBuilder::buildEdges\28SkPath\20const&\2c\20SkIRect\20const*\29 +4854:SkDynamicMemoryWStream::bytesWritten\28\29\20const +4855:SkDrawableList::newDrawableSnapshot\28\29 +4856:SkDrawTreatAAStrokeAsHairline\28float\2c\20SkMatrix\20const&\2c\20float*\29 +4857:SkDrawShadowMetrics::GetSpotShadowTransform\28SkPoint3\20const&\2c\20float\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkRect\20const&\2c\20bool\2c\20SkMatrix*\2c\20float*\29 +4858:SkDrawShadowMetrics::GetLocalBounds\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect*\29 +4859:SkDrawBase::drawPaint\28SkPaint\20const&\29\20const +4860:SkDrawBase::DrawToMask\28SkPath\20const&\2c\20SkIRect\20const&\2c\20SkMaskFilter\20const*\2c\20SkMatrix\20const*\2c\20SkMaskBuilder*\2c\20SkMaskBuilder::CreateMode\2c\20SkStrokeRec::InitStyle\29 +4861:SkDraw::drawSprite\28SkBitmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29\20const +4862:SkDiscretePathEffectImpl::flatten\28SkWriteBuffer&\29\20const +4863:SkDiscretePathEffect::Make\28float\2c\20float\2c\20unsigned\20int\29 +4864:SkDevice::getRelativeTransform\28SkDevice\20const&\29\20const +4865:SkDevice::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +4866:SkDevice::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +4867:SkDevice::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +4868:SkDevice::drawArc\28SkArc\20const&\2c\20SkPaint\20const&\29 +4869:SkDescriptor::addEntry\28unsigned\20int\2c\20unsigned\20long\2c\20void\20const*\29 +4870:SkDeque::Iter::next\28\29 +4871:SkDeque::Iter::Iter\28SkDeque\20const&\2c\20SkDeque::Iter::IterStart\29 +4872:SkData::MakeSubset\28SkData\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +4873: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 +4874:SkDashPath::CalcDashParameters\28float\2c\20float\20const*\2c\20int\2c\20float*\2c\20int*\2c\20float*\2c\20float*\29 +4875:SkDRect::setBounds\28SkDQuad\20const&\2c\20SkDQuad\20const&\2c\20double\2c\20double\29 +4876:SkDRect::setBounds\28SkDCubic\20const&\2c\20SkDCubic\20const&\2c\20double\2c\20double\29 +4877:SkDRect::setBounds\28SkDConic\20const&\2c\20SkDConic\20const&\2c\20double\2c\20double\29 +4878:SkDQuad::subDivide\28double\2c\20double\29\20const +4879:SkDQuad::monotonicInY\28\29\20const +4880:SkDQuad::isLinear\28int\2c\20int\29\20const +4881:SkDQuad::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +4882:SkDPoint::approximatelyDEqual\28SkDPoint\20const&\29\20const +4883:SkDCurveSweep::setCurveHullSweep\28SkPath::Verb\29 +4884:SkDCurve::nearPoint\28SkPath::Verb\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29\20const +4885:SkDCubic::monotonicInX\28\29\20const +4886:SkDCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +4887:SkDCubic::hullIntersects\28SkDPoint\20const*\2c\20int\2c\20bool*\29\20const +4888:SkDConic::subDivide\28double\2c\20double\29\20const +4889:SkCubics::RootsReal\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +4890:SkCubicEdge::setCubicWithoutUpdate\28SkPoint\20const*\2c\20int\2c\20bool\29 +4891:SkCubicClipper::ChopMonoAtY\28SkPoint\20const*\2c\20float\2c\20float*\29 +4892:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20SkArenaAlloc*\2c\20sk_sp\29 +4893:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkArenaAlloc*\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +4894:SkContourMeasureIter::~SkContourMeasureIter\28\29 +4895:SkContourMeasureIter::SkContourMeasureIter\28SkPath\20const&\2c\20bool\2c\20float\29 +4896:SkContourMeasure::length\28\29\20const +4897:SkContourMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29\20const +4898:SkConic::BuildUnitArc\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkRotationDirection\2c\20SkMatrix\20const*\2c\20SkConic*\29 +4899:SkComputeRadialSteps\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float*\2c\20float*\2c\20int*\29 +4900:SkCompressedDataSize\28SkTextureCompressionType\2c\20SkISize\2c\20skia_private::TArray*\2c\20bool\29 +4901:SkColorTypeValidateAlphaType\28SkColorType\2c\20SkAlphaType\2c\20SkAlphaType*\29 +4902:SkColorSpaceSingletonFactory::Make\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +4903:SkColorSpaceLuminance::Fetch\28float\29 +4904:SkColorSpace::toProfile\28skcms_ICCProfile*\29\20const +4905:SkColorSpace::makeLinearGamma\28\29\20const +4906:SkColorSpace::isSRGB\28\29\20const +4907:SkColorMatrix_RGB2YUV\28SkYUVColorSpace\2c\20float*\29 +4908:SkColorInfo::makeColorSpace\28sk_sp\29\20const +4909:SkColorFilterShader::SkColorFilterShader\28sk_sp\2c\20float\2c\20sk_sp\29 +4910:SkColor4fXformer::SkColor4fXformer\28SkGradientBaseShader\20const*\2c\20SkColorSpace*\2c\20bool\29 +4911:SkCoincidentSpans::extend\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\29 +4912:SkCodecs::get_decoders_for_editing\28\29 +4913:SkCodec::outputScanline\28int\29\20const +4914:SkCodec::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +4915:SkCodec::initializeColorXform\28SkImageInfo\20const&\2c\20SkEncodedInfo::Alpha\2c\20bool\29 +4916:SkChopQuadAtMaxCurvature\28SkPoint\20const*\2c\20SkPoint*\29 +4917:SkChopQuadAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +4918:SkChopMonoCubicAtX\28SkPoint\20const*\2c\20float\2c\20SkPoint*\29 +4919:SkChopCubicAtInflections\28SkPoint\20const*\2c\20SkPoint*\29 +4920:SkCharToGlyphCache::findGlyphIndex\28int\29\20const +4921:SkCanvasPriv::WriteLattice\28void*\2c\20SkCanvas::Lattice\20const&\29 +4922:SkCanvasPriv::ReadLattice\28SkReadBuffer&\2c\20SkCanvas::Lattice*\29 +4923:SkCanvasPriv::GetDstClipAndMatrixCounts\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20int*\2c\20int*\29 +4924:SkCanvas::~SkCanvas\28\29 +4925:SkCanvas::skew\28float\2c\20float\29 +4926:SkCanvas::only_axis_aligned_saveBehind\28SkRect\20const*\29 +4927:SkCanvas::getDeviceClipBounds\28\29\20const +4928:SkCanvas::experimental_DrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +4929:SkCanvas::drawVertices\28sk_sp\20const&\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +4930:SkCanvas::drawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +4931:SkCanvas::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +4932:SkCanvas::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +4933:SkCanvas::drawImageNine\28SkImage\20const*\2c\20SkIRect\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +4934:SkCanvas::drawClippedToSaveBehind\28SkPaint\20const&\29 +4935:SkCanvas::drawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +4936:SkCanvas::didTranslate\28float\2c\20float\29 +4937:SkCanvas::clipShader\28sk_sp\2c\20SkClipOp\29 +4938:SkCanvas::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +4939:SkCanvas::SkCanvas\28sk_sp\29 +4940:SkCanvas::ImageSetEntry::ImageSetEntry\28\29 +4941:SkCachedData::SkCachedData\28void*\2c\20unsigned\20long\29 +4942:SkCachedData::SkCachedData\28unsigned\20long\2c\20SkDiscardableMemory*\29 +4943:SkCTMShader::isOpaque\28\29\20const +4944:SkBulkGlyphMetricsAndPaths::glyphs\28SkSpan\29 +4945:SkBmpStandardCodec::decodeIcoMask\28SkStream*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\29 +4946:SkBmpMaskCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +4947:SkBmpDecoder::IsBmp\28void\20const*\2c\20unsigned\20long\29 +4948:SkBmpCodec::SkBmpCodec\28SkEncodedInfo&&\2c\20std::__2::unique_ptr>\2c\20unsigned\20short\2c\20SkCodec::SkScanlineOrder\29 +4949:SkBmpBaseCodec::SkBmpBaseCodec\28SkEncodedInfo&&\2c\20std::__2::unique_ptr>\2c\20unsigned\20short\2c\20SkCodec::SkScanlineOrder\29 +4950:SkBlurMask::ConvertRadiusToSigma\28float\29 +4951:SkBlurMask::ComputeBlurredScanline\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20unsigned\20int\2c\20float\29 +4952:SkBlurMask::BlurRect\28float\2c\20SkMaskBuilder*\2c\20SkRect\20const&\2c\20SkBlurStyle\2c\20SkIPoint*\2c\20SkMaskBuilder::CreateMode\29 +4953:SkBlockMemoryStream::getPosition\28\29\20const +4954:SkBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +4955:SkBlitter::Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +4956:SkBlitter::ChooseSprite\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkArenaAlloc*\2c\20sk_sp\29 +4957:SkBlenderBase::affectsTransparentBlack\28\29\20const +4958:SkBlendShader::~SkBlendShader\28\29.1 +4959:SkBlendShader::~SkBlendShader\28\29 +4960:SkBitmapImageGetPixelRef\28SkImage\20const*\29 +4961:SkBitmapDevice::SkBitmapDevice\28SkBitmap\20const&\2c\20SkSurfaceProps\20const&\2c\20void*\29 +4962:SkBitmapDevice::Create\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\2c\20SkRasterHandleAllocator*\29 +4963:SkBitmapCache::Rec::install\28SkBitmap*\29 +4964:SkBitmapCache::Rec::diagnostic_only_getDiscardable\28\29\20const +4965:SkBitmapCache::Find\28SkBitmapCacheDesc\20const&\2c\20SkBitmap*\29 +4966:SkBitmapCache::Alloc\28SkBitmapCacheDesc\20const&\2c\20SkImageInfo\20const&\2c\20SkPixmap*\29 +4967:SkBitmapCache::Add\28std::__2::unique_ptr\2c\20SkBitmap*\29 +4968:SkBitmap::setPixelRef\28sk_sp\2c\20int\2c\20int\29 +4969:SkBitmap::setAlphaType\28SkAlphaType\29 +4970:SkBitmap::reset\28\29 +4971:SkBitmap::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\29\20const +4972:SkBitmap::getAddr\28int\2c\20int\29\20const +4973:SkBitmap::allocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29::$_0::operator\28\29\28\29\20const +4974:SkBitmap::HeapAllocator::allocPixelRef\28SkBitmap*\29 +4975:SkBinaryWriteBuffer::writeFlattenable\28SkFlattenable\20const*\29 +4976:SkBinaryWriteBuffer::writeColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +4977:SkBigPicture::SkBigPicture\28SkRect\20const&\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20sk_sp\2c\20unsigned\20long\29 +4978:SkBezierQuad::IntersectWithHorizontalLine\28SkSpan\2c\20float\2c\20float*\29 +4979:SkBezierCubic::IntersectWithHorizontalLine\28SkSpan\2c\20float\2c\20float*\29 +4980:SkBasicEdgeBuilder::~SkBasicEdgeBuilder\28\29 +4981:SkBaseShadowTessellator::finishPathPolygon\28\29 +4982:SkBaseShadowTessellator::computeConvexShadow\28float\2c\20float\2c\20bool\29 +4983:SkBaseShadowTessellator::computeConcaveShadow\28float\2c\20float\29 +4984:SkBaseShadowTessellator::clipUmbraPoint\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint*\29 +4985:SkBaseShadowTessellator::addInnerPoint\28SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20int*\29 +4986:SkBaseShadowTessellator::addEdge\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20bool\2c\20bool\29 +4987:SkBaseShadowTessellator::addArc\28SkPoint\20const&\2c\20float\2c\20bool\29 +4988:SkAutoCanvasMatrixPaint::~SkAutoCanvasMatrixPaint\28\29 +4989:SkAutoCanvasMatrixPaint::SkAutoCanvasMatrixPaint\28SkCanvas*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\2c\20SkRect\20const&\29 +4990:SkAndroidCodecAdapter::~SkAndroidCodecAdapter\28\29 +4991:SkAndroidCodecAdapter::SkAndroidCodecAdapter\28SkCodec*\29 +4992:SkAndroidCodec::~SkAndroidCodec\28\29 +4993:SkAndroidCodec::getAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const*\29 +4994:SkAndroidCodec::SkAndroidCodec\28SkCodec*\29 +4995:SkAnalyticEdge::update\28int\2c\20bool\29 +4996:SkAnalyticEdge::updateLine\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +4997:SkAnalyticEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\29 +4998:SkAAClip::operator=\28SkAAClip\20const&\29 +4999:SkAAClip::op\28SkIRect\20const&\2c\20SkClipOp\29 +5000:SkAAClip::Builder::flushRow\28bool\29 +5001:SkAAClip::Builder::finish\28SkAAClip*\29 +5002:SkAAClip::Builder::Blitter::~Blitter\28\29 +5003:SkAAClip::Builder::Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +5004:Sk2DPathEffect::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +5005:SimpleImageInfo*\20emscripten::internal::raw_constructor\28\29 +5006:SimpleFontStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleFontStyle\20SimpleStrutStyle::*\20const&\2c\20SimpleStrutStyle\20const&\29 +5007:SharedGenerator::isTextureGenerator\28\29 +5008:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29.1 +5009:RgnOper::addSpan\28int\2c\20int\20const*\2c\20int\20const*\29 +5010:PorterDuffXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +5011:PathSegment::init\28\29 +5012:PathAddVerbsPointsWeights\28SkPath&\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +5013:ParseSingleImage +5014:ParseHeadersInternal +5015:PS_Conv_ASCIIHexDecode +5016:Op\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\2c\20SkPath*\29 +5017:OpAsWinding::markReverse\28Contour*\2c\20Contour*\29 +5018:OpAsWinding::getDirection\28Contour&\29 +5019:OpAsWinding::checkContainerChildren\28Contour*\2c\20Contour*\29 +5020:OffsetEdge::computeCrossingDistance\28OffsetEdge\20const*\29 +5021:OT::sbix::accelerator_t::get_png_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +5022:OT::sbix::accelerator_t::choose_strike\28hb_font_t*\29\20const +5023:OT::hmtxvmtx::accelerator_t::accelerator_t\28hb_face_t*\29 +5024:OT::hmtxvmtx::accelerator_t::get_advance_with_var_unscaled\28unsigned\20int\2c\20hb_font_t*\2c\20float*\29\20const +5025:OT::hmtxvmtx::accelerator_t::accelerator_t\28hb_face_t*\29 +5026:OT::hb_ot_layout_lookup_accelerator_t*\20OT::hb_ot_layout_lookup_accelerator_t::create\28OT::Layout::GPOS_impl::PosLookup\20const&\29 +5027:OT::hb_kern_machine_t::kern\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20bool\29\20const +5028:OT::hb_accelerate_subtables_context_t::return_t\20OT::Context::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +5029:OT::hb_accelerate_subtables_context_t::return_t\20OT::ChainContext::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +5030:OT::glyf_accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\29\20const +5031:OT::glyf_accelerator_t::get_advance_with_var_unscaled\28hb_font_t*\2c\20unsigned\20int\2c\20bool\29\20const +5032: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 +5033:OT::cff2::accelerator_templ_t>::accelerator_templ_t\28hb_face_t*\29 +5034:OT::cff2::accelerator_templ_t>::_fini\28\29 +5035:OT::cff1::lookup_expert_subset_charset_for_sid\28unsigned\20int\29 +5036:OT::cff1::lookup_expert_charset_for_sid\28unsigned\20int\29 +5037:OT::cff1::accelerator_templ_t>::~accelerator_templ_t\28\29 +5038:OT::cff1::accelerator_templ_t>::_fini\28\29 +5039:OT::TupleVariationData::unpack_points\28OT::IntType\20const*&\2c\20hb_vector_t&\2c\20OT::IntType\20const*\29 +5040: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 +5041:OT::RuleSet::sanitize\28hb_sanitize_context_t*\29\20const +5042:OT::RuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +5043:OT::RecordListOf::sanitize\28hb_sanitize_context_t*\29\20const +5044:OT::RecordListOf::sanitize\28hb_sanitize_context_t*\29\20const +5045:OT::PaintTranslate::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5046:OT::PaintSolid::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5047:OT::PaintSkewAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5048:OT::PaintSkew::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5049:OT::PaintScaleUniformAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5050:OT::PaintScaleUniform::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5051:OT::PaintScaleAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5052:OT::PaintScale::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5053:OT::PaintRotateAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5054:OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +5055:OT::PaintLinearGradient::sanitize\28hb_sanitize_context_t*\29\20const +5056:OT::Lookup::serialize\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +5057:OT::Layout::propagate_attachment_offsets\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +5058:OT::Layout::GSUB_impl::MultipleSubstFormat1_2::sanitize\28hb_sanitize_context_t*\29\20const +5059:OT::Layout::GSUB_impl::Ligature::apply\28OT::hb_ot_apply_context_t*\29\20const +5060:OT::Layout::GPOS_impl::reverse_cursive_minor_offset\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +5061:OT::Layout::GPOS_impl::MarkRecord::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5062:OT::Layout::GPOS_impl::MarkBasePosFormat1_2::sanitize\28hb_sanitize_context_t*\29\20const +5063:OT::Layout::GPOS_impl::AnchorMatrix::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5064:OT::IndexSubtableRecord::get_image_data\28unsigned\20int\2c\20void\20const*\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +5065:OT::FeatureVariationRecord::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5066:OT::FeatureParams::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5067:OT::ContextFormat3::sanitize\28hb_sanitize_context_t*\29\20const +5068:OT::ContextFormat2_5::sanitize\28hb_sanitize_context_t*\29\20const +5069:OT::ContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +5070:OT::ContextFormat1_4::sanitize\28hb_sanitize_context_t*\29\20const +5071:OT::ColorStop::get_color_stop\28OT::hb_paint_context_t*\2c\20hb_color_stop_t*\2c\20unsigned\20int\2c\20OT::VarStoreInstancer\20const&\29\20const +5072:OT::ColorLine::static_get_extend\28hb_color_line_t*\2c\20void*\2c\20void*\29 +5073:OT::ChainRuleSet::would_apply\28OT::hb_would_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +5074:OT::ChainRuleSet::sanitize\28hb_sanitize_context_t*\29\20const +5075:OT::ChainRuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +5076:OT::ChainContextFormat3::sanitize\28hb_sanitize_context_t*\29\20const +5077:OT::ChainContextFormat2_5::sanitize\28hb_sanitize_context_t*\29\20const +5078:OT::ChainContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +5079:OT::ChainContextFormat1_4::sanitize\28hb_sanitize_context_t*\29\20const +5080:OT::CBDT::accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +5081:OT::Affine2x3::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +5082:MakeOnScreenGLSurface\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\2c\20int\2c\20int\29 +5083:Load_SBit_Png +5084:LineCubicIntersections::intersectRay\28double*\29 +5085:LineCubicIntersections::VerticalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +5086:LineCubicIntersections::HorizontalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +5087:Launch +5088:JpegDecoderMgr::returnFalse\28char\20const*\29 +5089:JpegDecoderMgr::getEncodedColor\28SkEncodedInfo::Color*\29 +5090:JSObjectFromLineMetrics\28skia::textlayout::LineMetrics&\29 +5091:JSObjectFromGlyphInfo\28skia::textlayout::Paragraph::GlyphInfo&\29 +5092:Ins_DELTAP +5093:HandleCoincidence\28SkOpContourHead*\2c\20SkOpCoincidence*\29 +5094:GrWritePixelsTask::~GrWritePixelsTask\28\29 +5095:GrWaitRenderTask::~GrWaitRenderTask\28\29 +5096:GrVertexBufferAllocPool::makeSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +5097:GrVertexBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +5098:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20SkPathFillType\2c\20skgpu::VertexWriter\29\20const +5099:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20GrEagerVertexAllocator*\29\20const +5100:GrTriangulator::mergeEdgesBelow\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +5101:GrTriangulator::mergeEdgesAbove\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +5102:GrTriangulator::makeSortedVertex\28SkPoint\20const&\2c\20unsigned\20char\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29\20const +5103:GrTriangulator::makeEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\29 +5104:GrTriangulator::computeBisector\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\29\20const +5105:GrTriangulator::appendQuadraticToContour\28SkPoint\20const*\2c\20float\2c\20GrTriangulator::VertexList*\29\20const +5106:GrTriangulator::SortMesh\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +5107:GrTriangulator::FindEnclosingEdges\28GrTriangulator::Vertex\20const&\2c\20GrTriangulator::EdgeList\20const&\2c\20GrTriangulator::Edge**\2c\20GrTriangulator::Edge**\29 +5108:GrTriangulator::Edge::intersect\28GrTriangulator::Edge\20const&\2c\20SkPoint*\2c\20unsigned\20char*\29\20const +5109:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29 +5110:GrThreadSafeCache::~GrThreadSafeCache\28\29 +5111:GrThreadSafeCache::findVertsWithData\28skgpu::UniqueKey\20const&\29 +5112:GrThreadSafeCache::addVertsWithData\28skgpu::UniqueKey\20const&\2c\20sk_sp\2c\20bool\20\28*\29\28SkData*\2c\20SkData*\29\29 +5113:GrThreadSafeCache::Entry::set\28skgpu::UniqueKey\20const&\2c\20sk_sp\29 +5114:GrThreadSafeCache::CreateLazyView\28GrDirectContext*\2c\20GrColorType\2c\20SkISize\2c\20GrSurfaceOrigin\2c\20SkBackingFit\29 +5115:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29 +5116:GrTextureRenderTargetProxy::GrTextureRenderTargetProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29 +5117: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 +5118:GrTextureProxyPriv::setDeferredUploader\28std::__2::unique_ptr>\29 +5119:GrTextureProxy::setUniqueKey\28GrProxyProvider*\2c\20skgpu::UniqueKey\20const&\29 +5120:GrTextureProxy::clearUniqueKey\28\29 +5121:GrTextureProxy::ProxiesAreCompatibleAsDynamicState\28GrSurfaceProxy\20const*\2c\20GrSurfaceProxy\20const*\29 +5122:GrTextureProxy::GrTextureProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29.1 +5123: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 +5124: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 +5125:GrTexture::markMipmapsDirty\28\29 +5126:GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +5127:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29 +5128:GrSurfaceProxyPriv::exactify\28\29 +5129: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 +5130:GrStyledShape::setInheritedKey\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +5131:GrStyledShape::asRRect\28SkRRect*\2c\20bool*\29\20const +5132:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20SkPaint\20const&\2c\20GrStyledShape::DoSimplify\29 +5133:GrStyle::~GrStyle\28\29 +5134:GrStyle::applyToPath\28SkPath*\2c\20SkStrokeRec::InitStyle*\2c\20SkPath\20const&\2c\20float\29\20const +5135:GrStyle::applyPathEffect\28SkPath*\2c\20SkStrokeRec*\2c\20SkPath\20const&\29\20const +5136:GrStencilSettings::SetClipBitSettings\28bool\29 +5137:GrStagingBufferManager::detachBuffers\28\29 +5138:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineStruct\28char\20const*\29 +5139:GrShape::simplify\28unsigned\20int\29 +5140:GrShape::conservativeContains\28SkRect\20const&\29\20const +5141:GrShape::closed\28\29\20const +5142:GrSWMaskHelper::toTextureView\28GrRecordingContext*\2c\20SkBackingFit\29 +5143:GrSWMaskHelper::drawShape\28GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +5144:GrSWMaskHelper::drawShape\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +5145:GrResourceProvider::writePixels\28sk_sp\2c\20GrColorType\2c\20SkISize\2c\20GrMipLevel\20const*\2c\20int\29\20const +5146:GrResourceProvider::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +5147: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 +5148: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 +5149: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 +5150: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 +5151:GrResourceProvider::createApproxTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5152:GrResourceCache::~GrResourceCache\28\29 +5153:GrResourceCache::removeResource\28GrGpuResource*\29 +5154:GrResourceCache::processFreedGpuResources\28\29 +5155:GrResourceCache::insertResource\28GrGpuResource*\29 +5156:GrResourceCache::didChangeBudgetStatus\28GrGpuResource*\29 +5157:GrResourceAllocator::~GrResourceAllocator\28\29 +5158:GrResourceAllocator::planAssignment\28\29 +5159:GrResourceAllocator::expire\28unsigned\20int\29 +5160:GrRenderTask::makeSkippable\28\29 +5161:GrRenderTask::isInstantiated\28\29\20const +5162:GrRenderTarget::GrRenderTarget\28GrGpu*\2c\20SkISize\20const&\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\2c\20sk_sp\29 +5163:GrRecordingContext::init\28\29 +5164:GrRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRRect\20const&\2c\20GrShaderCaps\20const&\29 +5165:GrQuadUtils::TessellationHelper::reset\28GrQuad\20const&\2c\20GrQuad\20const*\29 +5166:GrQuadUtils::TessellationHelper::outset\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuad*\2c\20GrQuad*\29 +5167:GrQuadUtils::TessellationHelper::adjustDegenerateVertices\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuadUtils::TessellationHelper::Vertices*\29 +5168:GrQuadUtils::TessellationHelper::OutsetRequest::reset\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\2c\20GrQuad::Type\2c\20skvx::Vec<4\2c\20float>\20const&\29 +5169: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 +5170:GrQuadUtils::ClipToW0\28DrawQuad*\2c\20DrawQuad*\29 +5171:GrQuad::bounds\28\29\20const +5172:GrProxyProvider::~GrProxyProvider\28\29 +5173:GrProxyProvider::wrapBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\2c\20GrIOType\2c\20sk_sp\29 +5174:GrProxyProvider::removeUniqueKeyFromProxy\28GrTextureProxy*\29 +5175:GrProxyProvider::processInvalidUniqueKeyImpl\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\2c\20GrProxyProvider::RemoveTableEntry\29 +5176: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 +5177:GrProxyProvider::contextID\28\29\20const +5178:GrProxyProvider::adoptUniqueKeyFromSurface\28GrTextureProxy*\2c\20GrSurface\20const*\29 +5179:GrPixmapBase::clip\28SkISize\2c\20SkIPoint*\29 +5180:GrPixmap::GrPixmap\28GrImageInfo\2c\20sk_sp\2c\20unsigned\20long\29 +5181:GrPipeline::GrPipeline\28GrPipeline::InitArgs\20const&\2c\20sk_sp\2c\20GrAppliedHardClip\20const&\29 +5182:GrPersistentCacheUtils::GetType\28SkReadBuffer*\29 +5183:GrPathUtils::QuadUVMatrix::set\28SkPoint\20const*\29 +5184:GrPathTessellationShader::MakeStencilOnlyPipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedHardClip\20const&\2c\20GrPipeline::InputFlags\29 +5185:GrPaint::setCoverageSetOpXPFactory\28SkRegion::Op\2c\20bool\29 +5186:GrOvalOpFactory::MakeOvalOp\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\2c\20GrShaderCaps\20const*\29 +5187:GrOpsRenderPass::drawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +5188:GrOpsRenderPass::drawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5189:GrOpsRenderPass::drawIndexPattern\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +5190:GrOpFlushState::reset\28\29 +5191:GrOpFlushState::executeDrawsAndUploadsForMeshDrawOp\28GrOp\20const*\2c\20SkRect\20const&\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\29 +5192:GrOpFlushState::addASAPUpload\28std::__2::function&\29>&&\29 +5193:GrOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +5194:GrOp::combineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +5195:GrOnFlushResourceProvider::instantiateProxy\28GrSurfaceProxy*\29 +5196:GrMeshDrawTarget::allocMesh\28\29 +5197:GrMeshDrawOp::PatternHelper::init\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +5198:GrMeshDrawOp::CombinedQuadCountWillOverflow\28GrAAType\2c\20bool\2c\20int\29 +5199:GrMemoryPool::allocate\28unsigned\20long\29 +5200:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::changed\28\29 +5201:GrIndexBufferAllocPool::makeSpace\28int\2c\20sk_sp*\2c\20int*\29 +5202:GrIndexBufferAllocPool::makeSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +5203:GrImageInfo::refColorSpace\28\29\20const +5204:GrImageInfo::minRowBytes\28\29\20const +5205:GrImageInfo::makeDimensions\28SkISize\29\20const +5206:GrImageInfo::bpp\28\29\20const +5207:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20int\2c\20int\29 +5208:GrImageContext::abandonContext\28\29 +5209:GrGpuResource::makeBudgeted\28\29 +5210:GrGpuResource::getResourceName\28\29\20const +5211:GrGpuResource::abandon\28\29 +5212:GrGpuResource::CreateUniqueID\28\29 +5213:GrGpu::~GrGpu\28\29 +5214:GrGpu::regenerateMipMapLevels\28GrTexture*\29 +5215: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 +5216: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 +5217:GrGeometryProcessor::AttributeSet::addToKey\28skgpu::KeyBuilder*\29\20const +5218:GrGLVertexArray::invalidateCachedState\28\29 +5219:GrGLTextureParameters::invalidate\28\29 +5220:GrGLTexture::MakeWrapped\28GrGLGpu*\2c\20GrMipmapStatus\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrWrapCacheable\2c\20GrIOType\2c\20std::__2::basic_string_view>\29 +5221:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20skgpu::Budgeted\2c\20GrGLTexture::Desc\20const&\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +5222:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +5223:GrGLSLVaryingHandler::getFragDecls\28SkString*\2c\20SkString*\29\20const +5224:GrGLSLVaryingHandler::addAttribute\28GrShaderVar\20const&\29 +5225:GrGLSLUniformHandler::liftUniformToVertexShader\28GrProcessor\20const&\2c\20SkString\29 +5226:GrGLSLShaderBuilder::finalize\28unsigned\20int\29 +5227:GrGLSLShaderBuilder::emitFunction\28char\20const*\2c\20char\20const*\29 +5228:GrGLSLShaderBuilder::emitFunctionPrototype\28char\20const*\29 +5229:GrGLSLShaderBuilder::appendTextureLookupAndBlend\28char\20const*\2c\20SkBlendMode\2c\20GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +5230:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29::$_0::operator\28\29\28char\20const*\2c\20GrResourceHandle\2c\20skcms_TFType\29\20const +5231:GrGLSLShaderBuilder::addLayoutQualifier\28char\20const*\2c\20GrGLSLShaderBuilder::InterfaceQualifier\29 +5232:GrGLSLShaderBuilder::GrGLSLShaderBuilder\28GrGLSLProgramBuilder*\29 +5233:GrGLSLProgramDataManager::setRuntimeEffectUniforms\28SkSpan\2c\20SkSpan\20const>\2c\20SkSpan\2c\20void\20const*\29\20const +5234:GrGLSLProgramBuilder::~GrGLSLProgramBuilder\28\29 +5235:GrGLSLBlend::SetBlendModeUniformData\28GrGLSLProgramDataManager\20const&\2c\20GrResourceHandle\2c\20SkBlendMode\29 +5236:GrGLSLBlend::BlendExpression\28GrProcessor\20const*\2c\20GrGLSLUniformHandler*\2c\20GrResourceHandle*\2c\20char\20const*\2c\20char\20const*\2c\20SkBlendMode\29 +5237:GrGLRenderTarget::GrGLRenderTarget\28GrGLGpu*\2c\20SkISize\20const&\2c\20GrGLFormat\2c\20int\2c\20GrGLRenderTarget::IDs\20const&\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +5238:GrGLProgramDataManager::set4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +5239:GrGLProgramDataManager::set2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +5240:GrGLProgramBuilder::uniformHandler\28\29 +5241: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 +5242:GrGLProgramBuilder::CreateProgram\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrGLPrecompiledProgram\20const*\29 +5243:GrGLProgram::~GrGLProgram\28\29 +5244:GrGLMakeAssembledWebGLInterface\28void*\2c\20void\20\28*\20\28*\29\28void*\2c\20char\20const*\29\29\28\29\29 +5245:GrGLGpu::~GrGLGpu\28\29 +5246:GrGLGpu::uploadTexData\28SkISize\2c\20unsigned\20int\2c\20SkIRect\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20long\2c\20GrMipLevel\20const*\2c\20int\29 +5247:GrGLGpu::uploadCompressedTexData\28SkTextureCompressionType\2c\20GrGLFormat\2c\20SkISize\2c\20skgpu::Mipmapped\2c\20unsigned\20int\2c\20void\20const*\2c\20unsigned\20long\29 +5248:GrGLGpu::uploadColorToTex\28GrGLFormat\2c\20SkISize\2c\20unsigned\20int\2c\20std::__2::array\2c\20unsigned\20int\29 +5249:GrGLGpu::readOrTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20int\29 +5250:GrGLGpu::getCompatibleStencilIndex\28GrGLFormat\29 +5251:GrGLGpu::deleteSync\28__GLsync*\29 +5252:GrGLGpu::createRenderTargetObjects\28GrGLTexture::Desc\20const&\2c\20int\2c\20GrGLRenderTarget::IDs*\29 +5253:GrGLGpu::createCompressedTexture2D\28SkISize\2c\20SkTextureCompressionType\2c\20GrGLFormat\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrGLTextureParameters::SamplerOverriddenState*\29 +5254:GrGLGpu::bindFramebuffer\28unsigned\20int\2c\20unsigned\20int\29 +5255:GrGLGpu::ProgramCache::reset\28\29 +5256:GrGLGpu::ProgramCache::findOrCreateProgramImpl\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrThreadSafePipelineBuilder::Stats::ProgramCacheResult*\29 +5257: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 +5258: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 +5259:GrGLFormatIsCompressed\28GrGLFormat\29 +5260:GrGLFinishCallbacks::check\28\29 +5261:GrGLContext::~GrGLContext\28\29.1 +5262:GrGLContext::~GrGLContext\28\29 +5263:GrGLCaps::~GrGLCaps\28\29 +5264:GrGLCaps::getTexSubImageExternalFormatAndType\28GrGLFormat\2c\20GrColorType\2c\20GrColorType\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +5265:GrGLCaps::getTexSubImageDefaultFormatTypeAndColorType\28GrGLFormat\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20GrColorType*\29\20const +5266:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrGLFormat\29\20const +5267:GrGLCaps::formatSupportsTexStorage\28GrGLFormat\29\20const +5268:GrGLCaps::canCopyAsDraw\28GrGLFormat\2c\20bool\2c\20bool\29\20const +5269: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 +5270:GrFragmentProcessor::~GrFragmentProcessor\28\29 +5271:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +5272:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +5273:GrFragmentProcessor::ProgramImpl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +5274:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::Make\28std::__2::unique_ptr>\29 +5275:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +5276:GrFragmentProcessor::ClampOutput\28std::__2::unique_ptr>\29 +5277:GrFixedClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +5278:GrFixedClip::getConservativeBounds\28\29\20const +5279:GrFixedClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +5280:GrEagerDynamicVertexAllocator::unlock\28int\29 +5281:GrDynamicAtlas::readView\28GrCaps\20const&\29\20const +5282:GrDynamicAtlas::instantiate\28GrOnFlushResourceProvider*\2c\20sk_sp\29 +5283:GrDriverBugWorkarounds::GrDriverBugWorkarounds\28\29 +5284:GrDrawingManager::getLastRenderTask\28GrSurfaceProxy\20const*\29\20const +5285:GrDrawingManager::flush\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +5286:GrDrawOpAtlasConfig::atlasDimensions\28skgpu::MaskFormat\29\20const +5287:GrDrawOpAtlasConfig::GrDrawOpAtlasConfig\28int\2c\20unsigned\20long\29 +5288:GrDrawOpAtlas::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +5289: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 +5290:GrDistanceFieldA8TextGeoProc::onTextureSampler\28int\29\20const +5291:GrDistanceFieldA8TextGeoProc::addNewViews\28GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\29 +5292:GrDisableColorXPFactory::MakeXferProcessor\28\29 +5293:GrDirectContextPriv::validPMUPMConversionExists\28\29 +5294:GrDirectContext::~GrDirectContext\28\29 +5295:GrDirectContext::onGetSmallPathAtlasMgr\28\29 +5296:GrDirectContext::getResourceCacheLimits\28int*\2c\20unsigned\20long*\29\20const +5297:GrCopyRenderTask::~GrCopyRenderTask\28\29 +5298:GrCopyRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +5299:GrCopyBaseMipMapToView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Budgeted\29 +5300:GrContext_Base::threadSafeProxy\28\29 +5301:GrContext_Base::maxSurfaceSampleCountForColorType\28SkColorType\29\20const +5302:GrContext_Base::backend\28\29\20const +5303:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29 +5304:GrColorInfo::makeColorType\28GrColorType\29\20const +5305:GrColorInfo::isLinearlyBlended\28\29\20const +5306:GrColorFragmentProcessorAnalysis::GrColorFragmentProcessorAnalysis\28GrProcessorAnalysisColor\20const&\2c\20std::__2::unique_ptr>\20const*\2c\20int\29 +5307:GrClip::IsPixelAligned\28SkRect\20const&\29 +5308:GrCaps::surfaceSupportsWritePixels\28GrSurface\20const*\29\20const +5309:GrCaps::getDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\2c\20bool\29\20const +5310:GrCPixmap::GrCPixmap\28GrPixmap\20const&\29 +5311:GrBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\2c\20unsigned\20long*\29 +5312:GrBufferAllocPool::createBlock\28unsigned\20long\29 +5313:GrBufferAllocPool::CpuBufferCache::makeBuffer\28unsigned\20long\2c\20bool\29 +5314: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 +5315:GrBlurUtils::draw_mask\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20GrPaint&&\2c\20GrSurfaceProxyView\29 +5316: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 +5317: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 +5318:GrBitmapTextGeoProc::addNewViews\28GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\29 +5319:GrBicubicEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +5320: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 +5321:GrBackendTextures::MakeGL\28int\2c\20int\2c\20skgpu::Mipmapped\2c\20GrGLTextureInfo\20const&\2c\20std::__2::basic_string_view>\29 +5322:GrBackendTexture::operator=\28GrBackendTexture\20const&\29 +5323:GrBackendRenderTargets::MakeGL\28int\2c\20int\2c\20int\2c\20int\2c\20GrGLFramebufferInfo\20const&\29 +5324:GrBackendRenderTargets::GetGLFramebufferInfo\28GrBackendRenderTarget\20const&\2c\20GrGLFramebufferInfo*\29 +5325:GrBackendRenderTarget::~GrBackendRenderTarget\28\29 +5326:GrBackendRenderTarget::isProtected\28\29\20const +5327:GrBackendFormatBytesPerBlock\28GrBackendFormat\20const&\29 +5328:GrBackendFormat::makeTexture2D\28\29\20const +5329:GrBackendFormat::isMockStencilFormat\28\29\20const +5330:GrBackendFormat::MakeMock\28GrColorType\2c\20SkTextureCompressionType\2c\20bool\29 +5331:GrAuditTrail::opsCombined\28GrOp\20const*\2c\20GrOp\20const*\29 +5332: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 +5333:GrAtlasManager::~GrAtlasManager\28\29 +5334:GrAtlasManager::getViews\28skgpu::MaskFormat\2c\20unsigned\20int*\29 +5335:GrAtlasManager::freeAll\28\29 +5336:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::EventList*\2c\20GrTriangulator::Comparator\20const&\29\20const +5337:GrAATriangulator::collapseOverlapRegions\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\2c\20GrAATriangulator::EventComparator\29 +5338:GrAAConvexTessellator::quadTo\28SkPoint\20const*\29 +5339:GetVariationDesignPosition\28AutoFTAccess&\2c\20SkFontArguments::VariationPosition::Coordinate*\2c\20int\29 +5340:GetShapedLines\28skia::textlayout::Paragraph&\29 +5341:GetLargeValue +5342:FontMgrRunIterator::endOfCurrentRun\28\29\20const +5343:FontMgrRunIterator::atEnd\28\29\20const +5344:FinishRow +5345:FindUndone\28SkOpContourHead*\29 +5346:FT_Stream_Close +5347:FT_Sfnt_Table_Info +5348:FT_Render_Glyph_Internal +5349:FT_Remove_Module +5350:FT_Outline_Get_Orientation +5351:FT_Outline_EmboldenXY +5352:FT_New_Library +5353:FT_New_GlyphSlot +5354:FT_List_Iterate +5355:FT_List_Find +5356:FT_List_Finalize +5357:FT_GlyphLoader_CheckSubGlyphs +5358:FT_Get_Postscript_Name +5359:FT_Get_Paint_Layers +5360:FT_Get_PS_Font_Info +5361:FT_Get_Kerning +5362:FT_Get_Glyph_Name +5363:FT_Get_FSType_Flags +5364:FT_Get_Colorline_Stops +5365:FT_Get_Color_Glyph_ClipBox +5366:FT_Bitmap_Convert +5367:FT_Add_Default_Modules +5368:EllipticalRRectOp::~EllipticalRRectOp\28\29.1 +5369:EllipticalRRectOp::~EllipticalRRectOp\28\29 +5370:EllipticalRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +5371:EllipticalRRectOp::RRect&\20skia_private::TArray::emplace_back\28EllipticalRRectOp::RRect&&\29 +5372:EllipticalRRectOp::EllipticalRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20SkPoint\2c\20bool\29 +5373:EllipseOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\29 +5374:EllipseOp::EllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20EllipseOp::DeviceSpaceParams\20const&\2c\20SkStrokeRec\20const&\29 +5375:EllipseGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +5376:DIEllipseOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkStrokeRec\20const&\29 +5377:DIEllipseOp::DIEllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20DIEllipseOp::DeviceSpaceParams\20const&\2c\20SkMatrix\20const&\29 +5378:CustomXP::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +5379: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 +5380:Cr_z_deflateReset +5381:Cr_z_deflate +5382:Cr_z_crc32_z +5383:CoverageSetOpXP::onIsEqual\28GrXferProcessor\20const&\29\20const +5384:CircularRRectOp::~CircularRRectOp\28\29.1 +5385:CircularRRectOp::~CircularRRectOp\28\29 +5386:CircularRRectOp::CircularRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +5387:CircleOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +5388:CircleOp::CircleOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +5389:CircleGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +5390:CheckDecBuffer +5391:CFF::path_procs_t::rlineto\28CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\29 +5392:CFF::dict_interpreter_t\2c\20CFF::interp_env_t>::interpret\28CFF::cff1_private_dict_values_base_t&\29 +5393:CFF::cff2_cs_opset_t::process_blend\28CFF::cff2_cs_interp_env_t&\2c\20cff2_extents_param_t&\29 +5394:CFF::FDSelect3_4\2c\20OT::IntType>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +5395:CFF::Charset::get_sid\28unsigned\20int\2c\20unsigned\20int\2c\20CFF::code_pair_t*\29\20const +5396:CFF::CFFIndex>::get_size\28\29\20const +5397:CFF::CFF2FDSelect::get_fd\28unsigned\20int\29\20const +5398: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 +5399:BuildHuffmanTable +5400:AutoLayerForImageFilter::addMaskFilterLayer\28SkRect\20const*\29 +5401:AsWinding\28SkPath\20const&\2c\20SkPath*\29 +5402:AngleWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int*\2c\20bool*\29 +5403:AddIntersectTs\28SkOpContour*\2c\20SkOpContour*\2c\20SkOpCoincidence*\29 +5404:ActiveEdgeList::replace\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +5405:ActiveEdgeList::remove\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +5406:ActiveEdgeList::insert\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +5407:AAT::hb_aat_apply_context_t::return_t\20AAT::ChainSubtable::dispatch\28AAT::hb_aat_apply_context_t*\29\20const +5408:AAT::hb_aat_apply_context_t::return_t\20AAT::ChainSubtable::dispatch\28AAT::hb_aat_apply_context_t*\29\20const +5409:AAT::TrackData::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5410:AAT::TrackData::get_tracking\28void\20const*\2c\20float\29\20const +5411:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5412:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5413:AAT::StateTable::EntryData>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +5414:AAT::RearrangementSubtable::driver_context_t::transition\28AAT::StateTableDriver*\2c\20AAT::Entry\20const&\29 +5415:AAT::NoncontextualSubtable::apply\28AAT::hb_aat_apply_context_t*\29\20const +5416:AAT::Lookup>::sanitize\28hb_sanitize_context_t*\29\20const +5417:AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +5418:AAT::InsertionSubtable::driver_context_t::transition\28AAT::StateTableDriver::EntryData>*\2c\20AAT::Entry::EntryData>\20const&\29 +5419:ycck_cmyk_convert +5420:ycc_rgb_convert +5421:ycc_rgb565_convert +5422:ycc_rgb565D_convert +5423:xyzd50_to_lab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +5424:xyzd50_to_hcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +5425:wuffs_gif__decoder__tell_me_more +5426:wuffs_gif__decoder__set_report_metadata +5427:wuffs_gif__decoder__num_decoded_frame_configs +5428:wuffs_base__pixel_swizzler__xxxxxxxx__index_binary_alpha__src_over +5429:wuffs_base__pixel_swizzler__xxxxxxxx__index__src +5430:wuffs_base__pixel_swizzler__xxxx__index_binary_alpha__src_over +5431:wuffs_base__pixel_swizzler__xxxx__index__src +5432:wuffs_base__pixel_swizzler__xxx__index_binary_alpha__src_over +5433:wuffs_base__pixel_swizzler__xxx__index__src +5434:wuffs_base__pixel_swizzler__transparent_black_src_over +5435:wuffs_base__pixel_swizzler__transparent_black_src +5436:wuffs_base__pixel_swizzler__copy_1_1 +5437:wuffs_base__pixel_swizzler__bgr_565__index_binary_alpha__src_over +5438:wuffs_base__pixel_swizzler__bgr_565__index__src +5439:webgl_get_gl_proc\28void*\2c\20char\20const*\29 +5440:void\20std::__2::vector>::__emplace_back_slow_path\28char\20const*&\2c\20int&&\29 +5441:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +5442:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +5443:void\20emscripten::internal::raw_destructor>\28sk_sp*\29 +5444:void\20emscripten::internal::raw_destructor\28SkVertices::Builder*\29 +5445:void\20emscripten::internal::raw_destructor\28SkRuntimeEffect::TracedShader*\29 +5446:void\20emscripten::internal::raw_destructor\28SkPictureRecorder*\29 +5447:void\20emscripten::internal::raw_destructor\28SkPath*\29 +5448:void\20emscripten::internal::raw_destructor\28SkPaint*\29 +5449:void\20emscripten::internal::raw_destructor\28SkContourMeasureIter*\29 +5450:void\20emscripten::internal::raw_destructor\28SimpleImageInfo*\29 +5451:void\20emscripten::internal::MemberAccess::setWire\28SimpleTextStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle&\2c\20SimpleTextStyle*\29 +5452:void\20emscripten::internal::MemberAccess::setWire\28SimpleStrutStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle&\2c\20SimpleStrutStyle*\29 +5453:void\20emscripten::internal::MemberAccess>::setWire\28sk_sp\20SimpleImageInfo::*\20const&\2c\20SimpleImageInfo&\2c\20sk_sp*\29 +5454:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::TypefaceFontProvider*\29 +5455:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::ParagraphBuilderImpl*\29 +5456:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::Paragraph*\29 +5457:void\20const*\20emscripten::internal::getActualType\28skia::textlayout::FontCollection*\29 +5458:void\20const*\20emscripten::internal::getActualType\28SkVertices*\29 +5459:void\20const*\20emscripten::internal::getActualType\28SkVertices::Builder*\29 +5460:void\20const*\20emscripten::internal::getActualType\28SkTypeface*\29 +5461:void\20const*\20emscripten::internal::getActualType\28SkTextBlob*\29 +5462:void\20const*\20emscripten::internal::getActualType\28SkSurface*\29 +5463:void\20const*\20emscripten::internal::getActualType\28SkShader*\29 +5464:void\20const*\20emscripten::internal::getActualType\28SkSL::DebugTrace*\29 +5465:void\20const*\20emscripten::internal::getActualType\28SkRuntimeEffect*\29 +5466:void\20const*\20emscripten::internal::getActualType\28SkPictureRecorder*\29 +5467:void\20const*\20emscripten::internal::getActualType\28SkPicture*\29 +5468:void\20const*\20emscripten::internal::getActualType\28SkPathEffect*\29 +5469:void\20const*\20emscripten::internal::getActualType\28SkPath*\29 +5470:void\20const*\20emscripten::internal::getActualType\28SkPaint*\29 +5471:void\20const*\20emscripten::internal::getActualType\28SkMaskFilter*\29 +5472:void\20const*\20emscripten::internal::getActualType\28SkImageFilter*\29 +5473:void\20const*\20emscripten::internal::getActualType\28SkImage*\29 +5474:void\20const*\20emscripten::internal::getActualType\28SkFontMgr*\29 +5475:void\20const*\20emscripten::internal::getActualType\28SkFont*\29 +5476:void\20const*\20emscripten::internal::getActualType\28SkContourMeasureIter*\29 +5477:void\20const*\20emscripten::internal::getActualType\28SkContourMeasure*\29 +5478:void\20const*\20emscripten::internal::getActualType\28SkColorSpace*\29 +5479:void\20const*\20emscripten::internal::getActualType\28SkColorFilter*\29 +5480:void\20const*\20emscripten::internal::getActualType\28SkCanvas*\29 +5481:void\20const*\20emscripten::internal::getActualType\28SkBlender*\29 +5482:void\20const*\20emscripten::internal::getActualType\28SkAnimatedImage*\29 +5483:void\20const*\20emscripten::internal::getActualType\28GrDirectContext*\29 +5484:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5485:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5486:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5487:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5488:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5489:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5490:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5491:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5492:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5493:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5494:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5495:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5496:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5497:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5498:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5499:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5500:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5501:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5502:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5503:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5504:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5505:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5506:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5507:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5508:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5509:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5510:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5511:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5512:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5513:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5514:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5515:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5516:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5517:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5518:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5519:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5520:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5521:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5522:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5523:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5524:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5525:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5526:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5527:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5528:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5529:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5530:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5531:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5532:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5533:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5534:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5535:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5536:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5537:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5538:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5539:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5540:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5541:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5542:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5543:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5544:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5545:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5546:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5547:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5548:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5549:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5550:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5551:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5552:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5553:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5554:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5555:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5556:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5557:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5558:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5559:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5560:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5561:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5562:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5563:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5564:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5565:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5566:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5567:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5568:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5569:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5570:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5571:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5572:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5573:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5574:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5575:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5576:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5577:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5578:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5579:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +5580: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 +5581: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 +5582: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 +5583: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 +5584: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 +5585: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 +5586: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 +5587: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 +5588: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 +5589: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 +5590: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 +5591: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 +5592:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +5593:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +5594:virtual\20thunk\20to\20std::__2::basic_ostream>::~basic_ostream\28\29.1 +5595:virtual\20thunk\20to\20std::__2::basic_ostream>::~basic_ostream\28\29 +5596:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29.1 +5597:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29 +5598:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +5599:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +5600:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +5601:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +5602:virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +5603:virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +5604:virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +5605:virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +5606:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29.1 +5607:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29 +5608:virtual\20thunk\20to\20GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +5609:virtual\20thunk\20to\20GrTextureProxy::instantiate\28GrResourceProvider*\29 +5610:virtual\20thunk\20to\20GrTextureProxy::getUniqueKey\28\29\20const +5611:virtual\20thunk\20to\20GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +5612:virtual\20thunk\20to\20GrTextureProxy::callbackDesc\28\29\20const +5613:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29\20const +5614:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29 +5615:virtual\20thunk\20to\20GrTexture::onGpuMemorySize\28\29\20const +5616:virtual\20thunk\20to\20GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +5617:virtual\20thunk\20to\20GrTexture::asTexture\28\29\20const +5618:virtual\20thunk\20to\20GrTexture::asTexture\28\29 +5619:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +5620:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +5621:virtual\20thunk\20to\20GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +5622:virtual\20thunk\20to\20GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +5623:virtual\20thunk\20to\20GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +5624:virtual\20thunk\20to\20GrRenderTargetProxy::callbackDesc\28\29\20const +5625:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29\20const +5626:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29 +5627:virtual\20thunk\20to\20GrRenderTarget::onRelease\28\29 +5628:virtual\20thunk\20to\20GrRenderTarget::onAbandon\28\29 +5629:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29\20const +5630:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29 +5631:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +5632:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +5633:virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +5634:virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +5635:virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +5636:virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +5637:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29.1 +5638:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29 +5639:virtual\20thunk\20to\20GrGLTexture::onRelease\28\29 +5640:virtual\20thunk\20to\20GrGLTexture::onAbandon\28\29 +5641:virtual\20thunk\20to\20GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +5642:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +5643:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +5644:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::onFinalize\28\29 +5645:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +5646:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29 +5647:virtual\20thunk\20to\20GrGLRenderTarget::onRelease\28\29 +5648:virtual\20thunk\20to\20GrGLRenderTarget::onGpuMemorySize\28\29\20const +5649:virtual\20thunk\20to\20GrGLRenderTarget::onAbandon\28\29 +5650:virtual\20thunk\20to\20GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +5651:virtual\20thunk\20to\20GrGLRenderTarget::backendFormat\28\29\20const +5652:tt_vadvance_adjust +5653:tt_slot_init +5654:tt_size_select +5655:tt_size_reset_iterator +5656:tt_size_request +5657:tt_size_init +5658:tt_size_done +5659:tt_sbit_decoder_load_png +5660:tt_sbit_decoder_load_compound +5661:tt_sbit_decoder_load_byte_aligned +5662:tt_sbit_decoder_load_bit_aligned +5663:tt_property_set +5664:tt_property_get +5665:tt_name_ascii_from_utf16 +5666:tt_name_ascii_from_other +5667:tt_hadvance_adjust +5668:tt_glyph_load +5669:tt_get_var_blend +5670:tt_get_interface +5671:tt_get_glyph_name +5672:tt_get_cmap_info +5673:tt_get_advances +5674:tt_face_set_sbit_strike +5675:tt_face_load_strike_metrics +5676:tt_face_load_sbit_image +5677:tt_face_load_sbit +5678:tt_face_load_post +5679:tt_face_load_pclt +5680:tt_face_load_os2 +5681:tt_face_load_name +5682:tt_face_load_maxp +5683:tt_face_load_kern +5684:tt_face_load_hmtx +5685:tt_face_load_hhea +5686:tt_face_load_head +5687:tt_face_load_gasp +5688:tt_face_load_font_dir +5689:tt_face_load_cpal +5690:tt_face_load_colr +5691:tt_face_load_cmap +5692:tt_face_load_bhed +5693:tt_face_load_any +5694:tt_face_init +5695:tt_face_goto_table +5696:tt_face_get_paint_layers +5697:tt_face_get_paint +5698:tt_face_get_kerning +5699:tt_face_get_colr_layer +5700:tt_face_get_colr_glyph_paint +5701:tt_face_get_colorline_stops +5702:tt_face_get_color_glyph_clipbox +5703:tt_face_free_sbit +5704:tt_face_free_ps_names +5705:tt_face_free_name +5706:tt_face_free_cpal +5707:tt_face_free_colr +5708:tt_face_done +5709:tt_face_colr_blend_layer +5710:tt_driver_init +5711:tt_cvt_ready_iterator +5712:tt_cmap_unicode_init +5713:tt_cmap_unicode_char_next +5714:tt_cmap_unicode_char_index +5715:tt_cmap_init +5716:tt_cmap8_validate +5717:tt_cmap8_get_info +5718:tt_cmap8_char_next +5719:tt_cmap8_char_index +5720:tt_cmap6_validate +5721:tt_cmap6_get_info +5722:tt_cmap6_char_next +5723:tt_cmap6_char_index +5724:tt_cmap4_validate +5725:tt_cmap4_init +5726:tt_cmap4_get_info +5727:tt_cmap4_char_next +5728:tt_cmap4_char_index +5729:tt_cmap2_validate +5730:tt_cmap2_get_info +5731:tt_cmap2_char_next +5732:tt_cmap2_char_index +5733:tt_cmap14_variants +5734:tt_cmap14_variant_chars +5735:tt_cmap14_validate +5736:tt_cmap14_init +5737:tt_cmap14_get_info +5738:tt_cmap14_done +5739:tt_cmap14_char_variants +5740:tt_cmap14_char_var_isdefault +5741:tt_cmap14_char_var_index +5742:tt_cmap14_char_next +5743:tt_cmap13_validate +5744:tt_cmap13_get_info +5745:tt_cmap13_char_next +5746:tt_cmap13_char_index +5747:tt_cmap12_validate +5748:tt_cmap12_get_info +5749:tt_cmap12_char_next +5750:tt_cmap12_char_index +5751:tt_cmap10_validate +5752:tt_cmap10_get_info +5753:tt_cmap10_char_next +5754:tt_cmap10_char_index +5755:tt_cmap0_validate +5756:tt_cmap0_get_info +5757:tt_cmap0_char_next +5758:tt_cmap0_char_index +5759:transform_scanline_rgbA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5760:transform_scanline_memcpy\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5761:transform_scanline_bgra_1010102_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5762:transform_scanline_bgra_1010102\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5763:transform_scanline_bgra_10101010_xr\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5764:transform_scanline_bgr_101010x_xr\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5765:transform_scanline_bgr_101010x\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5766:transform_scanline_bgrA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5767:transform_scanline_RGBX\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5768:transform_scanline_F32_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5769:transform_scanline_F32\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5770:transform_scanline_F16_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5771:transform_scanline_F16\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5772:transform_scanline_BGRX\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5773:transform_scanline_BGRA\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5774:transform_scanline_A8_to_GrayAlpha\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5775:transform_scanline_565\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5776:transform_scanline_444\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5777:transform_scanline_4444\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5778:transform_scanline_101010x\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5779:transform_scanline_1010102_premul\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5780:transform_scanline_1010102\28char*\2c\20char\20const*\2c\20int\2c\20int\29 +5781:t2_hints_stems +5782:t2_hints_open +5783:t1_make_subfont +5784:t1_hints_stem +5785:t1_hints_open +5786:t1_decrypt +5787:t1_decoder_parse_metrics +5788:t1_decoder_init +5789:t1_decoder_done +5790:t1_cmap_unicode_init +5791:t1_cmap_unicode_char_next +5792:t1_cmap_unicode_char_index +5793:t1_cmap_std_done +5794:t1_cmap_std_char_next +5795:t1_cmap_std_char_index +5796:t1_cmap_standard_init +5797:t1_cmap_expert_init +5798:t1_cmap_custom_init +5799:t1_cmap_custom_done +5800:t1_cmap_custom_char_next +5801:t1_cmap_custom_char_index +5802:t1_builder_start_point +5803:t1_builder_init +5804:t1_builder_add_point1 +5805:t1_builder_add_point +5806:t1_builder_add_contour +5807:swizzle_small_index_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5808:swizzle_small_index_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5809:swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5810:swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5811:swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5812:swizzle_rgba16_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5813:swizzle_rgba16_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5814:swizzle_rgba16_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5815:swizzle_rgba16_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5816:swizzle_rgb_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5817:swizzle_rgb_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5818:swizzle_rgb_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5819:swizzle_rgb16_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5820:swizzle_rgb16_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5821:swizzle_rgb16_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5822:swizzle_mask32_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5823:swizzle_mask32_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5824:swizzle_mask32_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5825:swizzle_mask32_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5826:swizzle_mask32_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5827:swizzle_mask32_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5828:swizzle_mask32_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5829:swizzle_mask24_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5830:swizzle_mask24_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5831:swizzle_mask24_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5832:swizzle_mask24_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5833:swizzle_mask24_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5834:swizzle_mask24_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5835:swizzle_mask24_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5836:swizzle_mask16_to_rgba_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5837:swizzle_mask16_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5838:swizzle_mask16_to_rgba_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5839:swizzle_mask16_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5840:swizzle_mask16_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5841:swizzle_mask16_to_bgra_opaque\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5842:swizzle_mask16_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20SkMasks*\2c\20unsigned\20int\2c\20unsigned\20int\29 +5843:swizzle_index_to_n32_skipZ\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5844:swizzle_index_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5845:swizzle_index_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5846:swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5847:swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5848:swizzle_grayalpha_to_a8\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5849:swizzle_gray_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5850:swizzle_gray_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5851:swizzle_cmyk_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5852:swizzle_cmyk_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5853:swizzle_cmyk_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5854:swizzle_bit_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5855:swizzle_bit_to_grayscale\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5856:swizzle_bit_to_f16\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5857:swizzle_bit_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5858:swizzle_bgr_to_565\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +5859:string_read +5860:std::exception::what\28\29\20const +5861:std::bad_variant_access::what\28\29\20const +5862:std::bad_optional_access::what\28\29\20const +5863:std::bad_array_new_length::what\28\29\20const +5864:std::bad_alloc::what\28\29\20const +5865:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +5866:std::__2::unique_ptr>::operator=\5babi:v160004\5d\28std::__2::unique_ptr>&&\29 +5867: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 +5868: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 +5869: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 +5870: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 +5871: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 +5872: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 +5873: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 +5874: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 +5875: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 +5876: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 +5877: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 +5878: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 +5879: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 +5880: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 +5881:std::__2::numpunct::~numpunct\28\29.1 +5882:std::__2::numpunct::do_truename\28\29\20const +5883:std::__2::numpunct::do_grouping\28\29\20const +5884:std::__2::numpunct::do_falsename\28\29\20const +5885:std::__2::numpunct::~numpunct\28\29.1 +5886:std::__2::numpunct::do_truename\28\29\20const +5887:std::__2::numpunct::do_thousands_sep\28\29\20const +5888:std::__2::numpunct::do_grouping\28\29\20const +5889:std::__2::numpunct::do_falsename\28\29\20const +5890:std::__2::numpunct::do_decimal_point\28\29\20const +5891:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20void\20const*\29\20const +5892:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\29\20const +5893:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\20long\29\20const +5894:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\29\20const +5895:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20long\29\20const +5896:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20double\29\20const +5897:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20double\29\20const +5898:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20bool\29\20const +5899:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20void\20const*\29\20const +5900:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\29\20const +5901:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\20long\29\20const +5902:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +5903:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20long\29\20const +5904:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +5905:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20double\29\20const +5906:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20bool\29\20const +5907: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 +5908: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 +5909: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 +5910: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 +5911: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 +5912: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 +5913: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 +5914: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 +5915: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 +5916: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 +5917: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 +5918: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 +5919: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 +5920: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 +5921: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 +5922: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 +5923: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 +5924: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 +5925: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 +5926: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 +5927: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 +5928:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +5929: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 +5930: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 +5931: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 +5932: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 +5933:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +5934:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +5935:std::__2::locale::id::__init\28\29 +5936:std::__2::locale::__imp::~__imp\28\29.1 +5937:std::__2::ios_base::~ios_base\28\29.1 +5938:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +5939:std::__2::ctype::do_toupper\28wchar_t\29\20const +5940:std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +5941:std::__2::ctype::do_tolower\28wchar_t\29\20const +5942:std::__2::ctype::do_tolower\28wchar_t*\2c\20wchar_t\20const*\29\20const +5943:std::__2::ctype::do_scan_not\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +5944:std::__2::ctype::do_scan_is\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +5945:std::__2::ctype::do_narrow\28wchar_t\2c\20char\29\20const +5946:std::__2::ctype::do_narrow\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20char\2c\20char*\29\20const +5947:std::__2::ctype::do_is\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20unsigned\20long*\29\20const +5948:std::__2::ctype::do_is\28unsigned\20long\2c\20wchar_t\29\20const +5949:std::__2::ctype::~ctype\28\29.1 +5950:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +5951:std::__2::ctype::do_toupper\28char\29\20const +5952:std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +5953:std::__2::ctype::do_tolower\28char\29\20const +5954:std::__2::ctype::do_tolower\28char*\2c\20char\20const*\29\20const +5955:std::__2::ctype::do_narrow\28char\2c\20char\29\20const +5956:std::__2::ctype::do_narrow\28char\20const*\2c\20char\20const*\2c\20char\2c\20char*\29\20const +5957:std::__2::collate::do_transform\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +5958:std::__2::collate::do_hash\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +5959:std::__2::collate::do_compare\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +5960:std::__2::collate::do_transform\28char\20const*\2c\20char\20const*\29\20const +5961:std::__2::collate::do_hash\28char\20const*\2c\20char\20const*\29\20const +5962:std::__2::collate::do_compare\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +5963:std::__2::codecvt::~codecvt\28\29.1 +5964:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char*\2c\20char*\2c\20char*&\29\20const +5965: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 +5966:std::__2::codecvt::do_max_length\28\29\20const +5967:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +5968: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 +5969:std::__2::codecvt::do_encoding\28\29\20const +5970:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +5971:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29.1 +5972:std::__2::basic_stringbuf\2c\20std::__2::allocator>::underflow\28\29 +5973:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +5974:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +5975:std::__2::basic_stringbuf\2c\20std::__2::allocator>::pbackfail\28int\29 +5976:std::__2::basic_stringbuf\2c\20std::__2::allocator>::overflow\28int\29 +5977:std::__2::basic_streambuf>::~basic_streambuf\28\29.1 +5978:std::__2::basic_streambuf>::xsputn\28char\20const*\2c\20long\29 +5979:std::__2::basic_streambuf>::xsgetn\28char*\2c\20long\29 +5980:std::__2::basic_streambuf>::uflow\28\29 +5981:std::__2::basic_streambuf>::setbuf\28char*\2c\20long\29 +5982:std::__2::basic_streambuf>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +5983:std::__2::basic_streambuf>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +5984:std::__2::bad_function_call::what\28\29\20const +5985:std::__2::__time_get_c_storage::__x\28\29\20const +5986:std::__2::__time_get_c_storage::__weeks\28\29\20const +5987:std::__2::__time_get_c_storage::__r\28\29\20const +5988:std::__2::__time_get_c_storage::__months\28\29\20const +5989:std::__2::__time_get_c_storage::__c\28\29\20const +5990:std::__2::__time_get_c_storage::__am_pm\28\29\20const +5991:std::__2::__time_get_c_storage::__X\28\29\20const +5992:std::__2::__time_get_c_storage::__x\28\29\20const +5993:std::__2::__time_get_c_storage::__weeks\28\29\20const +5994:std::__2::__time_get_c_storage::__r\28\29\20const +5995:std::__2::__time_get_c_storage::__months\28\29\20const +5996:std::__2::__time_get_c_storage::__c\28\29\20const +5997:std::__2::__time_get_c_storage::__am_pm\28\29\20const +5998:std::__2::__time_get_c_storage::__X\28\29\20const +5999: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 +6000:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6001:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6002:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +6003:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6004:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6005:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +6006:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6007:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6008:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +6009:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29.1 +6010:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +6011: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 +6012: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 +6013:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6014: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 +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>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +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\28\29\20const +6017: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 +6018: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 +6019:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6020: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 +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>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +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\28\29\20const +6023: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 +6024: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 +6025:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6026: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 +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>::__clone\28std::__2::__function::__base\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29>*\29\20const +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\28\29\20const +6029: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 +6030:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6031:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +6032: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 +6033:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6034:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +6035: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 +6036: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 +6037: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 +6038: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 +6039: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 +6040: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 +6041: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 +6042: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 +6043: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 +6044: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 +6045: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 +6046:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6047: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 +6048: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 +6049: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 +6050: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 +6051: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 +6052:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6053: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 +6054: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 +6055: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 +6056: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 +6057: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 +6058:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6059: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 +6060: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 +6061: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 +6062: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 +6063: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 +6064:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +6065: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 +6066: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 +6067: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 +6068: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 +6069: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 +6070: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 +6071: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 +6072: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 +6073: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 +6074: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 +6075: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 +6076: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 +6077:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::operator\28\29\28skia::textlayout::Cluster*&&\29 +6078:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28std::__2::__function::__base*\29\20const +6079:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28\29\20const +6080:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +6081:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28\29\20const +6082: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 +6083: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 +6084: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 +6085: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 +6086: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 +6087: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 +6088: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 +6089: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 +6090: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 +6091:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::operator\28\29\28skia::textlayout::SkRange&&\29 +6092:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28std::__2::__function::__base\29>*\29\20const +6093:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28\29\20const +6094: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 +6095: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 +6096: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 +6097:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29.1 +6098:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29 +6099:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::operator\28\29\28void*&&\2c\20void\20const*&&\29 +6100:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy_deallocate\28\29 +6101:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy\28\29 +6102:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6103:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28\29\20const +6104:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6105:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6106:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6107:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6108:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6109:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6110:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +6111:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +6112:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +6113: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 +6114: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 +6115: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 +6116: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 +6117: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 +6118: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 +6119: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 +6120: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 +6121: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 +6122: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 +6123: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 +6124: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 +6125: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 +6126: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 +6127: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 +6128:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +6129:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6130:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +6131: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 +6132: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 +6133: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 +6134: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 +6135: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 +6136: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 +6137: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 +6138: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 +6139: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 +6140: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 +6141: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 +6142: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 +6143: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 +6144: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 +6145: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 +6146: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 +6147: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 +6148: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 +6149: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 +6150: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 +6151: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 +6152: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 +6153: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 +6154: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 +6155: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 +6156: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 +6157: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 +6158: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 +6159: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 +6160:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29.1 +6161:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29 +6162:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +6163:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy_deallocate\28\29 +6164:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy\28\29 +6165:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6166:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +6167:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +6168:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6169:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +6170: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 +6171: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 +6172:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +6173: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 +6174:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +6175: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 +6176: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 +6177: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 +6178:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::operator\28\29\28SkIRect\20const&\29 +6179:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6180:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +6181: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 +6182: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 +6183: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 +6184:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6185:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6186:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6187:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6188:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\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\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6192:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6193:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6194:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6195:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6196:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6197:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6198:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +6199:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +6200:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6201:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +6202:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +6203:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6204:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6205: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 +6206: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 +6207: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 +6208:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::operator\28\29\28GrBackendTexture&&\29 +6209:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28std::__2::__function::__base*\29\20const +6210:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28\29\20const +6211:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6212:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6213:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6214:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +6215:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +6216:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +6217:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +6218:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6219:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +6220:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +6221:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +6222:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +6223: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 +6224: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 +6225: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 +6226:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +6227:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +6228:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +6229:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +6230:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +6231: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 +6232:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6233:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +6234:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +6235:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +6236:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6237:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +6238: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 +6239:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +6240: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 +6241:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +6242:std::__2::__function::__func\2c\20void\20\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29>::__clone\28\29\20const +6243:start_pass_upsample +6244:start_pass_phuff_decoder +6245:start_pass_merged_upsample +6246:start_pass_main +6247:start_pass_huff_decoder +6248:start_pass_dpost +6249:start_pass_2_quant +6250:start_pass_1_quant +6251:start_pass +6252:start_output_pass +6253:start_input_pass.1 +6254:stackSave +6255:stackRestore +6256:srgb_to_hwb\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +6257:srgb_to_hsl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +6258:srcover_p\28unsigned\20char\2c\20unsigned\20char\29 +6259:sn_write +6260:sktext::gpu::post_purge_blob_message\28unsigned\20int\2c\20unsigned\20int\29 +6261:sktext::gpu::TextBlob::~TextBlob\28\29.1 +6262:sktext::gpu::TextBlob::~TextBlob\28\29 +6263:sktext::gpu::SubRun::~SubRun\28\29 +6264:sktext::gpu::SlugImpl::~SlugImpl\28\29.1 +6265:sktext::gpu::SlugImpl::~SlugImpl\28\29 +6266:sktext::gpu::SlugImpl::sourceBounds\28\29\20const +6267:sktext::gpu::SlugImpl::sourceBoundsWithOrigin\28\29\20const +6268:sktext::gpu::SlugImpl::doFlatten\28SkWriteBuffer&\29\20const +6269:sktext::gpu::SDFMaskFilterImpl::getTypeName\28\29\20const +6270:sktext::gpu::SDFMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +6271:sktext::gpu::SDFMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +6272:skip_variable +6273:skif::\28anonymous\20namespace\29::RasterBackend::~RasterBackend\28\29 +6274:skif::\28anonymous\20namespace\29::RasterBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +6275:skif::\28anonymous\20namespace\29::RasterBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +6276:skif::\28anonymous\20namespace\29::RasterBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +6277:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +6278:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +6279:skif::\28anonymous\20namespace\29::GaneshBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +6280:skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkImageInfo\20const&\29\20const +6281:skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +6282:skif::\28anonymous\20namespace\29::GaneshBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +6283:skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +6284:skia_png_zalloc +6285:skia_png_write_rows +6286:skia_png_write_info +6287:skia_png_write_end +6288:skia_png_user_version_check +6289:skia_png_set_text +6290:skia_png_set_sRGB +6291:skia_png_set_keep_unknown_chunks +6292:skia_png_set_iCCP +6293:skia_png_set_gray_to_rgb +6294:skia_png_set_filter +6295:skia_png_set_filler +6296:skia_png_read_update_info +6297:skia_png_read_info +6298:skia_png_read_image +6299:skia_png_read_end +6300:skia_png_push_fill_buffer +6301:skia_png_process_data +6302:skia_png_default_write_data +6303:skia_png_default_read_data +6304:skia_png_default_flush +6305:skia_png_create_read_struct +6306:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29.1 +6307:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29 +6308:skia::textlayout::TypefaceFontStyleSet::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +6309:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29.1 +6310:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29 +6311:skia::textlayout::TypefaceFontProvider::onMatchFamily\28char\20const*\29\20const +6312:skia::textlayout::TypefaceFontProvider::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +6313:skia::textlayout::TypefaceFontProvider::onLegacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +6314:skia::textlayout::TypefaceFontProvider::onGetFamilyName\28int\2c\20SkString*\29\20const +6315:skia::textlayout::TypefaceFontProvider::onCreateStyleSet\28int\29\20const +6316:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29.1 +6317:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29 +6318:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6319:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6320:skia::textlayout::PositionWithAffinity*\20emscripten::internal::raw_constructor\28\29 +6321:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29.1 +6322:skia::textlayout::ParagraphImpl::visit\28std::__2::function\20const&\29 +6323:skia::textlayout::ParagraphImpl::updateTextAlign\28skia::textlayout::TextAlign\29 +6324:skia::textlayout::ParagraphImpl::updateForegroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +6325:skia::textlayout::ParagraphImpl::updateFontSize\28unsigned\20long\2c\20unsigned\20long\2c\20float\29 +6326:skia::textlayout::ParagraphImpl::updateBackgroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +6327:skia::textlayout::ParagraphImpl::unresolvedGlyphs\28\29 +6328:skia::textlayout::ParagraphImpl::unresolvedCodepoints\28\29 +6329:skia::textlayout::ParagraphImpl::paint\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\29 +6330:skia::textlayout::ParagraphImpl::paint\28SkCanvas*\2c\20float\2c\20float\29 +6331:skia::textlayout::ParagraphImpl::markDirty\28\29 +6332:skia::textlayout::ParagraphImpl::lineNumber\28\29 +6333:skia::textlayout::ParagraphImpl::layout\28float\29 +6334:skia::textlayout::ParagraphImpl::getWordBoundary\28unsigned\20int\29 +6335:skia::textlayout::ParagraphImpl::getRectsForRange\28unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +6336:skia::textlayout::ParagraphImpl::getRectsForPlaceholders\28\29 +6337: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 +6338:skia::textlayout::ParagraphImpl::getPath\28int\2c\20SkPath*\29 +6339:skia::textlayout::ParagraphImpl::getLineNumberAt\28unsigned\20long\29\20const +6340:skia::textlayout::ParagraphImpl::getLineNumberAtUTF16Offset\28unsigned\20long\29 +6341:skia::textlayout::ParagraphImpl::getLineMetrics\28std::__2::vector>&\29 +6342:skia::textlayout::ParagraphImpl::getLineMetricsAt\28int\2c\20skia::textlayout::LineMetrics*\29\20const +6343:skia::textlayout::ParagraphImpl::getGlyphPositionAtCoordinate\28float\2c\20float\29 +6344:skia::textlayout::ParagraphImpl::getFonts\28\29\20const +6345:skia::textlayout::ParagraphImpl::getFontAt\28unsigned\20long\29\20const +6346:skia::textlayout::ParagraphImpl::getFontAtUTF16Offset\28unsigned\20long\29 +6347:skia::textlayout::ParagraphImpl::getClosestUTF16GlyphInfoAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +6348:skia::textlayout::ParagraphImpl::getClosestGlyphClusterAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +6349:skia::textlayout::ParagraphImpl::getActualTextRange\28int\2c\20bool\29\20const +6350:skia::textlayout::ParagraphImpl::extendedVisit\28std::__2::function\20const&\29 +6351:skia::textlayout::ParagraphImpl::containsEmoji\28SkTextBlob*\29 +6352:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29::$_0::__invoke\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29 +6353:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29 +6354:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29.1 +6355:skia::textlayout::ParagraphBuilderImpl::setWordsUtf8\28std::__2::vector>\29 +6356:skia::textlayout::ParagraphBuilderImpl::setWordsUtf16\28std::__2::vector>\29 +6357:skia::textlayout::ParagraphBuilderImpl::setLineBreaksUtf8\28std::__2::vector>\29 +6358:skia::textlayout::ParagraphBuilderImpl::setLineBreaksUtf16\28std::__2::vector>\29 +6359:skia::textlayout::ParagraphBuilderImpl::setGraphemeBreaksUtf8\28std::__2::vector>\29 +6360:skia::textlayout::ParagraphBuilderImpl::setGraphemeBreaksUtf16\28std::__2::vector>\29 +6361:skia::textlayout::ParagraphBuilderImpl::pushStyle\28skia::textlayout::TextStyle\20const&\29 +6362:skia::textlayout::ParagraphBuilderImpl::pop\28\29 +6363:skia::textlayout::ParagraphBuilderImpl::peekStyle\28\29 +6364:skia::textlayout::ParagraphBuilderImpl::getText\28\29 +6365:skia::textlayout::ParagraphBuilderImpl::getParagraphStyle\28\29\20const +6366:skia::textlayout::ParagraphBuilderImpl::getClientICUData\28\29\20const +6367:skia::textlayout::ParagraphBuilderImpl::addText\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +6368:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\2c\20unsigned\20long\29 +6369:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\29 +6370:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\29 +6371:skia::textlayout::ParagraphBuilderImpl::SetUnicode\28sk_sp\29 +6372:skia::textlayout::ParagraphBuilderImpl::Reset\28\29 +6373:skia::textlayout::ParagraphBuilderImpl::RequiresClientICU\28\29 +6374:skia::textlayout::ParagraphBuilderImpl::Build\28\29 +6375:skia::textlayout::Paragraph::getMinIntrinsicWidth\28\29 +6376:skia::textlayout::Paragraph::getMaxWidth\28\29 +6377:skia::textlayout::Paragraph::getMaxIntrinsicWidth\28\29 +6378:skia::textlayout::Paragraph::getLongestLine\28\29 +6379:skia::textlayout::Paragraph::getIdeographicBaseline\28\29 +6380:skia::textlayout::Paragraph::getHeight\28\29 +6381:skia::textlayout::Paragraph::getAlphabeticBaseline\28\29 +6382:skia::textlayout::Paragraph::didExceedMaxLines\28\29 +6383:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29.1 +6384:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29 +6385:skia::textlayout::OneLineShaper::~OneLineShaper\28\29.1 +6386:skia::textlayout::OneLineShaper::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6387:skia::textlayout::OneLineShaper::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +6388:skia::textlayout::LangIterator::~LangIterator\28\29.1 +6389:skia::textlayout::LangIterator::~LangIterator\28\29 +6390:skia::textlayout::LangIterator::endOfCurrentRun\28\29\20const +6391:skia::textlayout::LangIterator::currentLanguage\28\29\20const +6392:skia::textlayout::LangIterator::consume\28\29 +6393:skia::textlayout::LangIterator::atEnd\28\29\20const +6394:skia::textlayout::FontCollection::~FontCollection\28\29.1 +6395:skia::textlayout::CanvasParagraphPainter::translate\28float\2c\20float\29 +6396:skia::textlayout::CanvasParagraphPainter::save\28\29 +6397:skia::textlayout::CanvasParagraphPainter::restore\28\29 +6398:skia::textlayout::CanvasParagraphPainter::drawTextShadow\28sk_sp\20const&\2c\20float\2c\20float\2c\20unsigned\20int\2c\20float\29 +6399:skia::textlayout::CanvasParagraphPainter::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20std::__2::variant\20const&\29 +6400:skia::textlayout::CanvasParagraphPainter::drawRect\28SkRect\20const&\2c\20std::__2::variant\20const&\29 +6401:skia::textlayout::CanvasParagraphPainter::drawPath\28SkPath\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +6402:skia::textlayout::CanvasParagraphPainter::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +6403:skia::textlayout::CanvasParagraphPainter::drawFilledRect\28SkRect\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +6404:skia::textlayout::CanvasParagraphPainter::clipRect\28SkRect\20const&\29 +6405:skgpu::tess::FixedCountWedges::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6406:skgpu::tess::FixedCountWedges::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6407:skgpu::tess::FixedCountStrokes::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6408:skgpu::tess::FixedCountCurves::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6409:skgpu::tess::FixedCountCurves::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +6410:skgpu::ganesh::texture_proxy_view_from_planes\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20skgpu::Budgeted\29::$_0::__invoke\28void*\2c\20void*\29 +6411:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29.1 +6412:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::visitProxies\28std::__2::function\20const&\29\20const +6413:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6414:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6415:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6416:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::name\28\29\20const +6417:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::fixedFunctionFlags\28\29\20const +6418:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6419:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::name\28\29\20const +6420:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6421:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6422:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6423:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +6424:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29.1 +6425:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29 +6426:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::name\28\29\20const +6427: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 +6428:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6429:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29.1 +6430:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29 +6431:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +6432:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6433:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6434: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 +6435:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6436:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::name\28\29\20const +6437:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::fixedFunctionFlags\28\29\20const +6438:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6439:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29.1 +6440:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29 +6441:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +6442:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6443:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6444: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 +6445:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6446:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::name\28\29\20const +6447:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6448:skgpu::ganesh::TriangulatingPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6449:skgpu::ganesh::TriangulatingPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6450:skgpu::ganesh::TriangulatingPathRenderer::name\28\29\20const +6451:skgpu::ganesh::TessellationPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +6452:skgpu::ganesh::TessellationPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +6453:skgpu::ganesh::TessellationPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6454:skgpu::ganesh::TessellationPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6455:skgpu::ganesh::TessellationPathRenderer::name\28\29\20const +6456:skgpu::ganesh::SurfaceDrawContext::willReplaceOpsTask\28skgpu::ganesh::OpsTask*\2c\20skgpu::ganesh::OpsTask*\29 +6457:skgpu::ganesh::SurfaceDrawContext::canDiscardPreviousOpsOnFullClear\28\29\20const +6458:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29.1 +6459: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 +6460: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 +6461:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29.1 +6462:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29 +6463:skgpu::ganesh::StrokeTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +6464:skgpu::ganesh::StrokeTessellateOp::usesStencil\28\29\20const +6465:skgpu::ganesh::StrokeTessellateOp::onPrepare\28GrOpFlushState*\29 +6466:skgpu::ganesh::StrokeTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6467:skgpu::ganesh::StrokeTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6468:skgpu::ganesh::StrokeTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6469:skgpu::ganesh::StrokeTessellateOp::name\28\29\20const +6470:skgpu::ganesh::StrokeTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6471:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29.1 +6472:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29 +6473:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +6474:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::programInfo\28\29 +6475:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6476:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6477: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 +6478:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::name\28\29\20const +6479:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6480:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29.1 +6481:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29 +6482:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +6483:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::programInfo\28\29 +6484:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6485:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6486: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 +6487:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6488:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::name\28\29\20const +6489:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6490:skgpu::ganesh::StencilClip::~StencilClip\28\29.1 +6491:skgpu::ganesh::StencilClip::~StencilClip\28\29 +6492:skgpu::ganesh::StencilClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +6493:skgpu::ganesh::StencilClip::getConservativeBounds\28\29\20const +6494:skgpu::ganesh::StencilClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +6495:skgpu::ganesh::SoftwarePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6496:skgpu::ganesh::SoftwarePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6497:skgpu::ganesh::SoftwarePathRenderer::name\28\29\20const +6498:skgpu::ganesh::SmallPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6499:skgpu::ganesh::SmallPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6500:skgpu::ganesh::SmallPathRenderer::name\28\29\20const +6501:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +6502:skgpu::ganesh::SmallPathAtlasMgr::preFlush\28GrOnFlushResourceProvider*\29 +6503:skgpu::ganesh::SmallPathAtlasMgr::postFlush\28skgpu::AtlasToken\29 +6504:skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +6505:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29.1 +6506:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29 +6507:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::visitProxies\28std::__2::function\20const&\29\20const +6508:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::programInfo\28\29 +6509:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +6510:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6511: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 +6512:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6513:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::name\28\29\20const +6514:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6515: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 +6516: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 +6517: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 +6518: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 +6519: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 +6520: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 +6521: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 +6522: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 +6523:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29.1 +6524:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29 +6525:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::onTextureSampler\28int\29\20const +6526:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::name\28\29\20const +6527:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6528:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6529:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6530:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +6531:skgpu::ganesh::PathWedgeTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +6532:skgpu::ganesh::PathTessellator::~PathTessellator\28\29 +6533:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29.1 +6534:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29 +6535:skgpu::ganesh::PathTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +6536:skgpu::ganesh::PathTessellateOp::usesStencil\28\29\20const +6537:skgpu::ganesh::PathTessellateOp::onPrepare\28GrOpFlushState*\29 +6538:skgpu::ganesh::PathTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6539:skgpu::ganesh::PathTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6540:skgpu::ganesh::PathTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6541:skgpu::ganesh::PathTessellateOp::name\28\29\20const +6542:skgpu::ganesh::PathTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6543:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29.1 +6544:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29 +6545:skgpu::ganesh::PathStencilCoverOp::visitProxies\28std::__2::function\20const&\29\20const +6546:skgpu::ganesh::PathStencilCoverOp::onPrepare\28GrOpFlushState*\29 +6547:skgpu::ganesh::PathStencilCoverOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6548:skgpu::ganesh::PathStencilCoverOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6549:skgpu::ganesh::PathStencilCoverOp::name\28\29\20const +6550:skgpu::ganesh::PathStencilCoverOp::fixedFunctionFlags\28\29\20const +6551:skgpu::ganesh::PathStencilCoverOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6552:skgpu::ganesh::PathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +6553:skgpu::ganesh::PathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +6554:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29.1 +6555:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29 +6556:skgpu::ganesh::PathInnerTriangulateOp::visitProxies\28std::__2::function\20const&\29\20const +6557:skgpu::ganesh::PathInnerTriangulateOp::onPrepare\28GrOpFlushState*\29 +6558:skgpu::ganesh::PathInnerTriangulateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6559:skgpu::ganesh::PathInnerTriangulateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6560:skgpu::ganesh::PathInnerTriangulateOp::name\28\29\20const +6561:skgpu::ganesh::PathInnerTriangulateOp::fixedFunctionFlags\28\29\20const +6562:skgpu::ganesh::PathInnerTriangulateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6563:skgpu::ganesh::PathCurveTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +6564:skgpu::ganesh::OpsTask::~OpsTask\28\29.1 +6565:skgpu::ganesh::OpsTask::onPrepare\28GrOpFlushState*\29 +6566:skgpu::ganesh::OpsTask::onPrePrepare\28GrRecordingContext*\29 +6567:skgpu::ganesh::OpsTask::onMakeSkippable\28\29 +6568:skgpu::ganesh::OpsTask::onIsUsed\28GrSurfaceProxy*\29\20const +6569:skgpu::ganesh::OpsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +6570:skgpu::ganesh::OpsTask::endFlush\28GrDrawingManager*\29 +6571:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29.1 +6572:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::visitProxies\28std::__2::function\20const&\29\20const +6573:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6574:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6575: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 +6576:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6577:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::name\28\29\20const +6578:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6579:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29.1 +6580:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29 +6581:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::onTextureSampler\28int\29\20const +6582:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::name\28\29\20const +6583:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6584:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6585:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6586:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +6587:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29.1 +6588:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29 +6589:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +6590:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::programInfo\28\29 +6591:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +6592:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6593: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 +6594:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6595:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::name\28\29\20const +6596:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6597:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::clipToShape\28skgpu::ganesh::SurfaceDrawContext*\2c\20SkClipOp\2c\20SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\29 +6598:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29.1 +6599:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29 +6600:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::name\28\29\20const +6601:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6602:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +6603:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6604:skgpu::ganesh::DrawableOp::~DrawableOp\28\29.1 +6605:skgpu::ganesh::DrawableOp::~DrawableOp\28\29 +6606:skgpu::ganesh::DrawableOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6607:skgpu::ganesh::DrawableOp::name\28\29\20const +6608:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29.1 +6609:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29 +6610:skgpu::ganesh::DrawAtlasPathOp::visitProxies\28std::__2::function\20const&\29\20const +6611:skgpu::ganesh::DrawAtlasPathOp::onPrepare\28GrOpFlushState*\29 +6612:skgpu::ganesh::DrawAtlasPathOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +6613:skgpu::ganesh::DrawAtlasPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6614:skgpu::ganesh::DrawAtlasPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6615:skgpu::ganesh::DrawAtlasPathOp::name\28\29\20const +6616:skgpu::ganesh::DrawAtlasPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6617:skgpu::ganesh::Device::~Device\28\29.1 +6618:skgpu::ganesh::Device::~Device\28\29 +6619:skgpu::ganesh::Device::strikeDeviceInfo\28\29\20const +6620:skgpu::ganesh::Device::snapSpecial\28SkIRect\20const&\2c\20bool\29 +6621:skgpu::ganesh::Device::snapSpecialScaled\28SkIRect\20const&\2c\20SkISize\20const&\29 +6622:skgpu::ganesh::Device::replaceClip\28SkIRect\20const&\29 +6623:skgpu::ganesh::Device::recordingContext\28\29\20const +6624:skgpu::ganesh::Device::pushClipStack\28\29 +6625:skgpu::ganesh::Device::popClipStack\28\29 +6626:skgpu::ganesh::Device::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +6627:skgpu::ganesh::Device::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +6628:skgpu::ganesh::Device::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +6629:skgpu::ganesh::Device::onClipShader\28sk_sp\29 +6630:skgpu::ganesh::Device::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +6631:skgpu::ganesh::Device::makeSpecial\28SkImage\20const*\29 +6632:skgpu::ganesh::Device::isClipWideOpen\28\29\20const +6633:skgpu::ganesh::Device::isClipRect\28\29\20const +6634:skgpu::ganesh::Device::isClipEmpty\28\29\20const +6635:skgpu::ganesh::Device::isClipAntiAliased\28\29\20const +6636:skgpu::ganesh::Device::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +6637:skgpu::ganesh::Device::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +6638:skgpu::ganesh::Device::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +6639:skgpu::ganesh::Device::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +6640:skgpu::ganesh::Device::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +6641:skgpu::ganesh::Device::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +6642:skgpu::ganesh::Device::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +6643:skgpu::ganesh::Device::drawPaint\28SkPaint\20const&\29 +6644:skgpu::ganesh::Device::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +6645:skgpu::ganesh::Device::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +6646:skgpu::ganesh::Device::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +6647:skgpu::ganesh::Device::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +6648:skgpu::ganesh::Device::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +6649: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 +6650:skgpu::ganesh::Device::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +6651:skgpu::ganesh::Device::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +6652:skgpu::ganesh::Device::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +6653:skgpu::ganesh::Device::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +6654:skgpu::ganesh::Device::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +6655:skgpu::ganesh::Device::drawArc\28SkArc\20const&\2c\20SkPaint\20const&\29 +6656:skgpu::ganesh::Device::devClipBounds\28\29\20const +6657:skgpu::ganesh::Device::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +6658:skgpu::ganesh::Device::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +6659:skgpu::ganesh::Device::convertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +6660:skgpu::ganesh::Device::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +6661:skgpu::ganesh::Device::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +6662:skgpu::ganesh::Device::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +6663:skgpu::ganesh::Device::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +6664:skgpu::ganesh::Device::android_utils_clipWithStencil\28\29 +6665:skgpu::ganesh::DefaultPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +6666:skgpu::ganesh::DefaultPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +6667:skgpu::ganesh::DefaultPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6668:skgpu::ganesh::DefaultPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6669:skgpu::ganesh::DefaultPathRenderer::name\28\29\20const +6670:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::name\28\29\20const +6671:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6672:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6673:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6674:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::name\28\29\20const +6675:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +6676:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +6677:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +6678:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29.1 +6679:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29 +6680:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::visitProxies\28std::__2::function\20const&\29\20const +6681:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::programInfo\28\29 +6682:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +6683:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6684: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 +6685:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6686:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::name\28\29\20const +6687:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::fixedFunctionFlags\28\29\20const +6688:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6689:skgpu::ganesh::DashLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6690:skgpu::ganesh::DashLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6691:skgpu::ganesh::DashLinePathRenderer::name\28\29\20const +6692:skgpu::ganesh::ClipStack::~ClipStack\28\29.1 +6693:skgpu::ganesh::ClipStack::preApply\28SkRect\20const&\2c\20GrAA\29\20const +6694:skgpu::ganesh::ClipStack::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +6695:skgpu::ganesh::ClearOp::~ClearOp\28\29 +6696:skgpu::ganesh::ClearOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6697:skgpu::ganesh::ClearOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6698:skgpu::ganesh::ClearOp::name\28\29\20const +6699:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29.1 +6700:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29 +6701:skgpu::ganesh::AtlasTextOp::visitProxies\28std::__2::function\20const&\29\20const +6702:skgpu::ganesh::AtlasTextOp::onPrepareDraws\28GrMeshDrawTarget*\29 +6703:skgpu::ganesh::AtlasTextOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +6704:skgpu::ganesh::AtlasTextOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +6705:skgpu::ganesh::AtlasTextOp::name\28\29\20const +6706:skgpu::ganesh::AtlasTextOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +6707:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29.1 +6708:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29 +6709:skgpu::ganesh::AtlasRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +6710:skgpu::ganesh::AtlasRenderTask::onExecute\28GrOpFlushState*\29 +6711:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +6712:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +6713:skgpu::ganesh::AtlasPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6714:skgpu::ganesh::AtlasPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6715:skgpu::ganesh::AtlasPathRenderer::name\28\29\20const +6716:skgpu::ganesh::AALinearizingConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6717:skgpu::ganesh::AALinearizingConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6718:skgpu::ganesh::AALinearizingConvexPathRenderer::name\28\29\20const +6719:skgpu::ganesh::AAHairLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6720:skgpu::ganesh::AAHairLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6721:skgpu::ganesh::AAHairLinePathRenderer::name\28\29\20const +6722:skgpu::ganesh::AAConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +6723:skgpu::ganesh::AAConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +6724:skgpu::ganesh::AAConvexPathRenderer::name\28\29\20const +6725:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29.1 +6726:skgpu::TAsyncReadResult::rowBytes\28int\29\20const +6727:skgpu::TAsyncReadResult::data\28int\29\20const +6728:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29.1 +6729:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29 +6730:skgpu::StringKeyBuilder::appendComment\28char\20const*\29 +6731:skgpu::StringKeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +6732:skgpu::ShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\2c\20bool\29 +6733:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29.1 +6734:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29 +6735:skgpu::RectanizerSkyline::reset\28\29 +6736:skgpu::RectanizerSkyline::percentFull\28\29\20const +6737:skgpu::RectanizerPow2::reset\28\29 +6738:skgpu::RectanizerPow2::percentFull\28\29\20const +6739:skgpu::RectanizerPow2::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +6740:skgpu::Plot::~Plot\28\29.1 +6741:skgpu::Plot::~Plot\28\29 +6742:skgpu::KeyBuilder::~KeyBuilder\28\29 +6743:skgpu::KeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +6744:skgpu::DefaultShaderErrorHandler\28\29::DefaultShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\29 +6745:sk_write_fn\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20long\29 +6746:sk_sp*\20emscripten::internal::MemberAccess>::getWire\28sk_sp\20SimpleImageInfo::*\20const&\2c\20SimpleImageInfo\20const&\29 +6747:sk_read_user_chunk\28png_struct_def*\2c\20png_unknown_chunk_t*\29 +6748:sk_mmap_releaseproc\28void\20const*\2c\20void*\29 +6749:sk_ft_stream_io\28FT_StreamRec_*\2c\20unsigned\20long\2c\20unsigned\20char*\2c\20unsigned\20long\29 +6750:sk_ft_realloc\28FT_MemoryRec_*\2c\20long\2c\20long\2c\20void*\29 +6751:sk_ft_free\28FT_MemoryRec_*\2c\20void*\29 +6752:sk_ft_alloc\28FT_MemoryRec_*\2c\20long\29 +6753:sk_dataref_releaseproc\28void\20const*\2c\20void*\29 +6754:sfnt_table_info +6755:sfnt_stream_close +6756:sfnt_load_face +6757:sfnt_is_postscript +6758:sfnt_is_alphanumeric +6759:sfnt_init_face +6760:sfnt_get_ps_name +6761:sfnt_get_name_index +6762:sfnt_get_name_id +6763:sfnt_get_interface +6764:sfnt_get_glyph_name +6765:sfnt_get_charset_id +6766:sfnt_done_face +6767:setup_syllables_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6768:setup_syllables_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6769:setup_syllables_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6770:setup_syllables_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6771:setup_masks_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6772:setup_masks_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6773:setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6774:setup_masks_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6775:setup_masks_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6776:setup_masks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6777:sep_upsample +6778:self_destruct +6779:save_marker +6780:sample8\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6781:sample6\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6782:sample4\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6783:sample2\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6784:sample1\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +6785:rgb_rgb_convert +6786:rgb_rgb565_convert +6787:rgb_rgb565D_convert +6788:rgb_gray_convert +6789:reverse_hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +6790:reverse_hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +6791:reset_marker_reader +6792:reset_input_controller +6793:reset_error_mgr +6794:request_virt_sarray +6795:request_virt_barray +6796:reorder_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6797:reorder_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6798:reorder_marks_hebrew\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6799:reorder_marks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +6800:reorder_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6801:release_data\28void*\2c\20void*\29 +6802:record_stch\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6803:record_rphf_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6804:record_pref_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +6805:realize_virt_arrays +6806:read_restart_marker +6807:read_markers +6808:read_data_from_FT_Stream +6809:quantize_ord_dither +6810:quantize_fs_dither +6811:quantize3_ord_dither +6812:psnames_get_service +6813:pshinter_get_t2_funcs +6814:pshinter_get_t1_funcs +6815:pshinter_get_globals_funcs +6816:psh_globals_new +6817:psh_globals_destroy +6818:psaux_get_glyph_name +6819:ps_table_release +6820:ps_table_new +6821:ps_table_done +6822:ps_table_add +6823:ps_property_set +6824:ps_property_get +6825:ps_parser_to_token_array +6826:ps_parser_to_int +6827:ps_parser_to_fixed_array +6828:ps_parser_to_fixed +6829:ps_parser_to_coord_array +6830:ps_parser_to_bytes +6831:ps_parser_skip_spaces +6832:ps_parser_load_field_table +6833:ps_parser_init +6834:ps_hints_t2mask +6835:ps_hints_t2counter +6836:ps_hints_t1stem3 +6837:ps_hints_t1reset +6838:ps_hints_close +6839:ps_hints_apply +6840:ps_hinter_init +6841:ps_hinter_done +6842:ps_get_standard_strings +6843:ps_get_macintosh_name +6844:ps_decoder_init +6845:ps_builder_init +6846:progress_monitor\28jpeg_common_struct*\29 +6847:process_data_simple_main +6848:process_data_crank_post +6849:process_data_context_main +6850:prescan_quantize +6851:preprocess_text_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6852:preprocess_text_thai\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6853:preprocess_text_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6854:preprocess_text_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6855:prepare_for_output_pass +6856:premultiply_data +6857:premul_rgb\28SkRGBA4f<\28SkAlphaType\292>\29 +6858:premul_polar\28SkRGBA4f<\28SkAlphaType\292>\29 +6859:postprocess_glyphs_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +6860:post_process_prepass +6861:post_process_2pass +6862:post_process_1pass +6863:portable::xy_to_unit_angle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6864:portable::xy_to_radius\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6865:portable::xy_to_2pt_conical_well_behaved\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6866:portable::xy_to_2pt_conical_strip\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6867:portable::xy_to_2pt_conical_smaller\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6868:portable::xy_to_2pt_conical_greater\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6869:portable::xy_to_2pt_conical_focal_on_circle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6870:portable::xor_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6871:portable::white_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6872:portable::unpremul_polar\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6873:portable::unpremul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6874:portable::uniform_color_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6875:portable::trace_var\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6876:portable::trace_scope\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6877:portable::trace_line\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6878:portable::trace_exit\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6879:portable::trace_enter\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6880:portable::tan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6881:portable::swizzle_copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6882:portable::swizzle_copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6883:portable::swizzle_copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6884:portable::swizzle_copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6885:portable::swizzle_copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6886:portable::swizzle_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6887:portable::swizzle_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6888:portable::swizzle_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6889:portable::swizzle_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6890:portable::swizzle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6891:portable::swap_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6892:portable::swap_rb_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6893:portable::swap_rb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6894:portable::sub_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6895:portable::sub_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6896:portable::sub_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6897:portable::sub_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6898:portable::sub_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6899:portable::sub_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6900:portable::sub_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6901:portable::sub_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6902:portable::sub_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6903:portable::sub_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6904:portable::store_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6905:portable::store_src_a\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6906:portable::store_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6907:portable::store_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6908:portable::store_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6909:portable::store_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6910:portable::store_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6911:portable::store_r8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6912:portable::store_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6913:portable::store_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6914:portable::store_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6915:portable::store_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6916:portable::store_device_xy01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6917:portable::store_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6918:portable::store_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6919:portable::store_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6920:portable::store_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6921:portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6922:portable::store_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6923:portable::store_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6924:portable::store_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6925:portable::store_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6926:portable::store_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6927:portable::store_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6928:portable::store_10101010_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6929:portable::start_pipeline\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkRasterPipelineStage*\2c\20SkSpan\2c\20unsigned\20char*\29 +6930:portable::stack_rewind\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6931:portable::stack_checkpoint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6932:portable::srcover_rgba_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6933:portable::srcover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6934:portable::srcout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6935:portable::srcin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6936:portable::srcatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6937:portable::sqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6938:portable::splat_4_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6939:portable::splat_3_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6940:portable::splat_2_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6941:portable::softlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6942:portable::smoothstep_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6943:portable::sin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6944:portable::shuffle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6945:portable::set_base_pointer\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6946:portable::seed_shader\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6947:portable::screen\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6948:portable::scale_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6949:portable::scale_native\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6950:portable::scale_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6951:portable::scale_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6952:portable::saturation\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6953:portable::rgb_to_hsl\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6954:portable::repeat_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6955:portable::repeat_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6956:portable::repeat_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6957:portable::refract_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6958:portable::reenable_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6959:portable::rect_memset64\28unsigned\20long\20long*\2c\20unsigned\20long\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +6960:portable::rect_memset32\28unsigned\20int*\2c\20unsigned\20int\2c\20int\2c\20unsigned\20long\2c\20int\29 +6961:portable::rect_memset16\28unsigned\20short*\2c\20unsigned\20short\2c\20int\2c\20unsigned\20long\2c\20int\29 +6962:portable::premul_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6963:portable::premul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6964:portable::pow_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6965:portable::plus_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6966:portable::perlin_noise\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6967:portable::parametric\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6968:portable::overlay\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6969:portable::negate_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6970:portable::multiply\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6971:portable::mul_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6972:portable::mul_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6973:portable::mul_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6974:portable::mul_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6975:portable::mul_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6976:portable::mul_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6977:portable::mul_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6978:portable::mul_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6979:portable::mul_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6980:portable::mul_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6981:portable::mul_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6982:portable::mul_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6983:portable::move_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6984:portable::move_dst_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6985:portable::modulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6986:portable::mod_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6987:portable::mod_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6988:portable::mod_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6989:portable::mod_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6990:portable::mod_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6991:portable::mix_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6992:portable::mix_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6993:portable::mix_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6994:portable::mix_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6995:portable::mix_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6996:portable::mix_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6997:portable::mix_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6998:portable::mix_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +6999:portable::mix_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7000:portable::mix_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7001:portable::mirror_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7002:portable::mirror_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7003:portable::mirror_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7004:portable::mipmap_linear_update\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7005:portable::mipmap_linear_init\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7006:portable::mipmap_linear_finish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7007:portable::min_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7008:portable::min_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7009:portable::min_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7010:portable::min_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7011:portable::min_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7012:portable::min_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7013:portable::min_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7014:portable::min_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7015:portable::min_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7016:portable::min_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7017:portable::min_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7018:portable::min_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7019:portable::min_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7020:portable::min_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7021:portable::min_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7022:portable::min_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7023:portable::merge_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7024:portable::merge_inv_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7025:portable::merge_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7026:portable::memset32\28unsigned\20int*\2c\20unsigned\20int\2c\20int\29 +7027:portable::memset16\28unsigned\20short*\2c\20unsigned\20short\2c\20int\29 +7028:portable::max_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7029:portable::max_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7030:portable::max_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7031:portable::max_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7032:portable::max_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7033:portable::max_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7034:portable::max_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7035:portable::max_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7036:portable::max_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7037:portable::max_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7038:portable::max_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7039:portable::max_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7040:portable::max_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7041:portable::max_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7042:portable::max_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7043:portable::max_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7044:portable::matrix_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7045:portable::matrix_scale_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7046:portable::matrix_perspective\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7047:portable::matrix_multiply_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7048:portable::matrix_multiply_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7049:portable::matrix_multiply_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7050:portable::matrix_4x5\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7051:portable::matrix_4x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7052:portable::matrix_3x4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7053:portable::matrix_3x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7054:portable::matrix_2x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7055:portable::mask_off_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7056:portable::mask_off_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7057:portable::mask_2pt_conical_nan\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7058:portable::mask_2pt_conical_degenerates\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7059:portable::luminosity\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7060:portable::log_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7061:portable::log2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7062:portable::load_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7063:portable::load_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7064:portable::load_rgf16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7065:portable::load_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7066:portable::load_rg88_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7067:portable::load_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7068:portable::load_rg1616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7069:portable::load_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7070:portable::load_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7071:portable::load_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7072:portable::load_f32_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7073:portable::load_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7074:portable::load_f16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7075:portable::load_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7076:portable::load_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7077:portable::load_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7078:portable::load_af16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7079:portable::load_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7080:portable::load_a8_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7081:portable::load_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7082:portable::load_a16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7083:portable::load_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7084:portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7085:portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7086:portable::load_565_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7087:portable::load_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7088:portable::load_4444_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7089:portable::load_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7090:portable::load_16161616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7091:portable::load_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7092:portable::load_10x6_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7093:portable::load_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7094:portable::load_1010102_xr_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7095:portable::load_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7096:portable::load_1010102_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7097:portable::load_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7098:portable::load_10101010_xr_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7099:portable::load_10101010_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7100:portable::lighten\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7101:portable::lerp_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7102:portable::lerp_native\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7103:portable::lerp_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7104:portable::lerp_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7105:portable::just_return\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7106:portable::jump\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7107:portable::invsqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7108:portable::invsqrt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7109:portable::invsqrt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7110:portable::invsqrt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7111:portable::inverted_CMYK_to_RGB1\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7112:portable::inverted_CMYK_to_BGR1\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7113:portable::inverse_mat4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7114:portable::inverse_mat3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7115:portable::inverse_mat2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7116:portable::init_lane_masks\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7117:portable::hue\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7118:portable::hsl_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7119:portable::hardlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7120:portable::gray_to_RGB1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7121:portable::grayA_to_rgbA\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7122:portable::grayA_to_RGBA\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7123:portable::gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7124:portable::gauss_a_to_rgba\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7125:portable::gather_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7126:portable::gather_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7127:portable::gather_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7128:portable::gather_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7129:portable::gather_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7130:portable::gather_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7131:portable::gather_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7132:portable::gather_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7133:portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7134:portable::gather_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7135:portable::gather_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7136:portable::gather_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7137:portable::gather_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7138:portable::gather_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7139:portable::gather_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7140:portable::gather_10101010_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7141:portable::gamma_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7142:portable::force_opaque_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7143:portable::force_opaque\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7144:portable::floor_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7145:portable::floor_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7146:portable::floor_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7147:portable::floor_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7148:portable::exp_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7149:portable::exp2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7150:portable::exclusion\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7151:portable::exchange_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7152:portable::evenly_spaced_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7153:portable::evenly_spaced_2_stop_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7154:portable::emboss\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7155:portable::dstover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7156:portable::dstout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7157:portable::dstin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7158:portable::dstatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7159:portable::dot_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7160:portable::dot_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7161:portable::dot_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7162:portable::div_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7163:portable::div_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7164:portable::div_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7165:portable::div_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7166:portable::div_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7167:portable::div_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7168:portable::div_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7169:portable::div_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7170:portable::div_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7171:portable::div_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7172:portable::div_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7173:portable::div_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7174:portable::div_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7175:portable::div_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7176:portable::div_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7177:portable::dither\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7178:portable::difference\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7179:portable::decal_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7180:portable::decal_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7181:portable::decal_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7182:portable::darken\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7183:portable::css_oklab_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7184:portable::css_oklab_gamut_map_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7185:portable::css_lab_to_xyz\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7186:portable::css_hwb_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7187:portable::css_hsl_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7188:portable::css_hcl_to_lab\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7189:portable::cos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7190:portable::copy_uniform\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7191:portable::copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7192:portable::copy_slot_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7193:portable::copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7194:portable::copy_immutable_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7195:portable::copy_constant\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7196:portable::copy_4_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7197:portable::copy_4_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7198:portable::copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7199:portable::copy_4_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7200:portable::copy_3_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7201:portable::copy_3_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7202:portable::copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7203:portable::copy_3_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7204:portable::copy_2_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7205:portable::copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7206:portable::continue_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7207:portable::colordodge\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7208:portable::colorburn\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7209:portable::color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7210:portable::cmpne_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7211:portable::cmpne_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7212:portable::cmpne_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7213:portable::cmpne_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7214:portable::cmpne_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7215:portable::cmpne_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7216:portable::cmpne_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7217:portable::cmpne_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7218:portable::cmpne_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7219:portable::cmpne_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7220:portable::cmpne_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7221:portable::cmpne_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7222:portable::cmplt_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7223:portable::cmplt_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7224:portable::cmplt_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7225:portable::cmplt_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7226:portable::cmplt_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7227:portable::cmplt_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7228:portable::cmplt_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7229:portable::cmplt_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7230:portable::cmplt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7231:portable::cmplt_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7232:portable::cmplt_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7233:portable::cmplt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7234:portable::cmplt_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7235:portable::cmplt_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7236:portable::cmplt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7237:portable::cmplt_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7238:portable::cmplt_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7239:portable::cmplt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7240:portable::cmple_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7241:portable::cmple_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7242:portable::cmple_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7243:portable::cmple_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7244:portable::cmple_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7245:portable::cmple_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7246:portable::cmple_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7247:portable::cmple_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7248:portable::cmple_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7249:portable::cmple_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7250:portable::cmple_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7251:portable::cmple_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7252:portable::cmple_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7253:portable::cmple_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7254:portable::cmple_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7255:portable::cmple_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7256:portable::cmple_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7257:portable::cmple_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7258:portable::cmpeq_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7259:portable::cmpeq_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7260:portable::cmpeq_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7261:portable::cmpeq_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7262:portable::cmpeq_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7263:portable::cmpeq_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7264:portable::cmpeq_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7265:portable::cmpeq_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7266:portable::cmpeq_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7267:portable::cmpeq_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7268:portable::cmpeq_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7269:portable::cmpeq_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7270:portable::clear\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7271:portable::clamp_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7272:portable::clamp_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7273:portable::clamp_gamut\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7274:portable::clamp_01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7275:portable::ceil_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7276:portable::ceil_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7277:portable::ceil_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7278:portable::ceil_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7279:portable::cast_to_uint_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7280:portable::cast_to_uint_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7281:portable::cast_to_uint_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7282:portable::cast_to_uint_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7283:portable::cast_to_int_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7284:portable::cast_to_int_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7285:portable::cast_to_int_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7286:portable::cast_to_int_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7287:portable::cast_to_float_from_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7288:portable::cast_to_float_from_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7289:portable::cast_to_float_from_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7290:portable::cast_to_float_from_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7291:portable::cast_to_float_from_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7292:portable::cast_to_float_from_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7293:portable::cast_to_float_from_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7294:portable::cast_to_float_from_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7295:portable::case_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7296:portable::callback\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7297:portable::byte_tables\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7298:portable::bt709_luminance_or_luma_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7299:portable::bt709_luminance_or_luma_to_alpha\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7300:portable::branch_if_no_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7301:portable::branch_if_no_active_lanes_eq\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7302:portable::branch_if_any_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7303:portable::branch_if_all_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7304:portable::blit_row_s32a_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +7305:portable::black_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7306:portable::bitwise_xor_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7307:portable::bitwise_xor_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7308:portable::bitwise_xor_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7309:portable::bitwise_xor_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7310:portable::bitwise_xor_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7311:portable::bitwise_xor_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7312:portable::bitwise_or_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7313:portable::bitwise_or_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7314:portable::bitwise_or_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7315:portable::bitwise_or_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7316:portable::bitwise_or_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7317:portable::bitwise_and_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7318:portable::bitwise_and_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7319:portable::bitwise_and_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7320:portable::bitwise_and_imm_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7321:portable::bitwise_and_imm_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7322:portable::bitwise_and_imm_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7323:portable::bitwise_and_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7324:portable::bitwise_and_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7325:portable::bitwise_and_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7326:portable::bilinear_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7327:portable::bilinear_py\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7328:portable::bilinear_px\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7329:portable::bilinear_ny\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7330:portable::bilinear_nx\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7331:portable::bilerp_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7332:portable::bicubic_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7333:portable::bicubic_p3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7334:portable::bicubic_p3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7335:portable::bicubic_p1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7336:portable::bicubic_p1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7337:portable::bicubic_n3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7338:portable::bicubic_n3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7339:portable::bicubic_n1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7340:portable::bicubic_n1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7341:portable::bicubic_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7342:portable::atan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7343:portable::atan2_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7344:portable::asin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7345:portable::alter_2pt_conical_unswap\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7346:portable::alter_2pt_conical_compensate_focal\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7347:portable::alpha_to_red_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7348:portable::alpha_to_red\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7349:portable::alpha_to_gray_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7350:portable::alpha_to_gray\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7351:portable::add_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7352:portable::add_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7353:portable::add_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7354:portable::add_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7355:portable::add_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7356:portable::add_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7357:portable::add_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7358:portable::add_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7359:portable::add_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7360:portable::add_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7361:portable::add_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7362:portable::add_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7363:portable::acos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7364:portable::accumulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7365:portable::abs_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7366:portable::abs_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7367:portable::abs_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7368:portable::abs_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7369:portable::RGB_to_RGB1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7370:portable::RGB_to_BGR1\28unsigned\20int*\2c\20unsigned\20char\20const*\2c\20int\29 +7371:portable::RGBA_to_rgbA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7372:portable::RGBA_to_bgrA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7373:portable::RGBA_to_BGRA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +7374:portable::PQish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7375:portable::HLGish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7376:portable::HLGinvish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +7377:pop_arg_long_double +7378:png_read_filter_row_up +7379:png_read_filter_row_sub +7380:png_read_filter_row_paeth_multibyte_pixel +7381:png_read_filter_row_paeth_1byte_pixel +7382:png_read_filter_row_avg +7383:pass2_no_dither +7384:pass2_fs_dither +7385:override_features_khmer\28hb_ot_shape_planner_t*\29 +7386:override_features_indic\28hb_ot_shape_planner_t*\29 +7387:override_features_hangul\28hb_ot_shape_planner_t*\29 +7388:output_message\28jpeg_common_struct*\29 +7389:output_message +7390:null_convert +7391:noop_upsample +7392:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +7393:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +7394:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +7395:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +7396:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.3 +7397:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.2 +7398:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +7399:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +7400:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkImageInfo\20const&\29\20const +7401:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +7402:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +7403:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +7404:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +7405:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +7406:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +7407:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +7408:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +7409: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 +7410: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 +7411:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +7412: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 +7413:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +7414:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +7415: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 +7416: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 +7417:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::glyphCount\28\29\20const +7418: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 +7419:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +7420: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 +7421: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 +7422:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +7423: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 +7424:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +7425:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +7426:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +7427:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +7428:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +7429:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +7430:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29.1 +7431:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29 +7432:non-virtual\20thunk\20to\20GrOpFlushState::writeView\28\29\20const +7433:non-virtual\20thunk\20to\20GrOpFlushState::usesMSAASurface\28\29\20const +7434:non-virtual\20thunk\20to\20GrOpFlushState::threadSafeCache\28\29\20const +7435:non-virtual\20thunk\20to\20GrOpFlushState::strikeCache\28\29\20const +7436:non-virtual\20thunk\20to\20GrOpFlushState::smallPathAtlasManager\28\29\20const +7437:non-virtual\20thunk\20to\20GrOpFlushState::sampledProxyArray\28\29 +7438:non-virtual\20thunk\20to\20GrOpFlushState::rtProxy\28\29\20const +7439:non-virtual\20thunk\20to\20GrOpFlushState::resourceProvider\28\29\20const +7440:non-virtual\20thunk\20to\20GrOpFlushState::renderPassBarriers\28\29\20const +7441:non-virtual\20thunk\20to\20GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +7442:non-virtual\20thunk\20to\20GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +7443:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndirectDraws\28int\29 +7444:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndices\28int\29 +7445:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +7446:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +7447:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +7448:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +7449:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +7450:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +7451:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +7452:non-virtual\20thunk\20to\20GrOpFlushState::dstProxyView\28\29\20const +7453:non-virtual\20thunk\20to\20GrOpFlushState::detachAppliedClip\28\29 +7454:non-virtual\20thunk\20to\20GrOpFlushState::deferredUploadTarget\28\29 +7455:non-virtual\20thunk\20to\20GrOpFlushState::colorLoadOp\28\29\20const +7456:non-virtual\20thunk\20to\20GrOpFlushState::caps\28\29\20const +7457:non-virtual\20thunk\20to\20GrOpFlushState::atlasManager\28\29\20const +7458:non-virtual\20thunk\20to\20GrOpFlushState::appliedClip\28\29\20const +7459:non-virtual\20thunk\20to\20GrGpuBuffer::~GrGpuBuffer\28\29 +7460:non-virtual\20thunk\20to\20GrGpuBuffer::unref\28\29\20const +7461:non-virtual\20thunk\20to\20GrGpuBuffer::ref\28\29\20const +7462:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +7463:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +7464:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onSetLabel\28\29 +7465:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +7466:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +7467:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +7468:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +7469:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::backendFormat\28\29\20const +7470:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +7471:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +7472:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +7473:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +7474:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::dstColor\28\29 +7475:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29.1 +7476:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29 +7477:new_color_map_2_quant +7478:new_color_map_1_quant +7479:merged_2v_upsample +7480:merged_1v_upsample +7481:lin_srgb_to_oklab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +7482:lin_srgb_to_okhcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +7483:legalstub$dynCall_vijiii +7484:legalstub$dynCall_viji +7485:legalstub$dynCall_vij +7486:legalstub$dynCall_viijii +7487:legalstub$dynCall_viij +7488:legalstub$dynCall_viiij +7489:legalstub$dynCall_viiiiij +7490:legalstub$dynCall_jiji +7491:legalstub$dynCall_jiiiiji +7492:legalstub$dynCall_jiiiiii +7493:legalstub$dynCall_jii +7494:legalstub$dynCall_ji +7495:legalstub$dynCall_iijj +7496:legalstub$dynCall_iiij +7497:legalstub$dynCall_iiiij +7498:legalstub$dynCall_iiiiijj +7499:legalstub$dynCall_iiiiij +7500:legalstub$dynCall_iiiiiijj +7501:legalfunc$glWaitSync +7502:legalfunc$glClientWaitSync +7503:lcd_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +7504:jpeg_start_decompress +7505:jpeg_skip_scanlines +7506:jpeg_save_markers +7507:jpeg_resync_to_restart +7508:jpeg_read_scanlines +7509:jpeg_read_raw_data +7510:jpeg_read_header +7511:jpeg_idct_islow +7512:jpeg_idct_ifast +7513:jpeg_idct_float +7514:jpeg_idct_9x9 +7515:jpeg_idct_7x7 +7516:jpeg_idct_6x6 +7517:jpeg_idct_5x5 +7518:jpeg_idct_4x4 +7519:jpeg_idct_3x3 +7520:jpeg_idct_2x2 +7521:jpeg_idct_1x1 +7522:jpeg_idct_16x16 +7523:jpeg_idct_15x15 +7524:jpeg_idct_14x14 +7525:jpeg_idct_13x13 +7526:jpeg_idct_12x12 +7527:jpeg_idct_11x11 +7528:jpeg_idct_10x10 +7529:jpeg_crop_scanline +7530:is_deleted_glyph\28hb_glyph_info_t\20const*\29 +7531:internal_memalign +7532:int_upsample +7533:initial_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7534:hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +7535:hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +7536:hb_unicode_script_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7537:hb_unicode_general_category_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7538:hb_ucd_script\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7539:hb_ucd_mirroring\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7540:hb_ucd_general_category\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7541:hb_ucd_decompose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20void*\29 +7542:hb_ucd_compose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7543:hb_ucd_combining_class\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +7544:hb_syllabic_clear_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7545: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 +7546: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 +7547:hb_paint_push_clip_rectangle_nil\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7548: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 +7549: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 +7550:hb_paint_extents_push_group\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +7551:hb_paint_extents_push_clip_rectangle\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +7552:hb_paint_extents_push_clip_glyph\28hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_font_t*\2c\20void*\29 +7553:hb_paint_extents_pop_transform\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +7554:hb_paint_extents_pop_group\28hb_paint_funcs_t*\2c\20void*\2c\20hb_paint_composite_mode_t\2c\20void*\29 +7555:hb_paint_extents_pop_clip\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +7556: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 +7557: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 +7558:hb_paint_extents_paint_color\28hb_paint_funcs_t*\2c\20void*\2c\20int\2c\20unsigned\20int\2c\20void*\29 +7559: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 +7560:hb_outline_recording_pen_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +7561:hb_outline_recording_pen_line_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +7562: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 +7563:hb_outline_recording_pen_close_path\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +7564: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 +7565:hb_ot_map_t::lookup_map_t::cmp\28void\20const*\2c\20void\20const*\29 +7566:hb_ot_map_t::feature_map_t::cmp\28void\20const*\2c\20void\20const*\29 +7567:hb_ot_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +7568:hb_ot_get_variation_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7569: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 +7570:hb_ot_get_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7571:hb_ot_get_glyph_v_origin\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7572: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 +7573:hb_ot_get_glyph_name\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +7574: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 +7575:hb_ot_get_glyph_from_name\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +7576:hb_ot_get_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +7577:hb_ot_get_font_v_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +7578:hb_ot_get_font_h_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +7579:hb_ot_draw_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +7580: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 +7581:hb_font_get_variation_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7582: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 +7583:hb_font_get_nominal_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7584:hb_font_get_nominal_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +7585:hb_font_get_glyph_v_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7586:hb_font_get_glyph_v_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7587:hb_font_get_glyph_v_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +7588: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 +7589:hb_font_get_glyph_v_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +7590:hb_font_get_glyph_v_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +7591:hb_font_get_glyph_name_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +7592:hb_font_get_glyph_name_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +7593:hb_font_get_glyph_h_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7594:hb_font_get_glyph_h_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +7595:hb_font_get_glyph_h_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +7596: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 +7597:hb_font_get_glyph_h_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +7598:hb_font_get_glyph_h_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +7599:hb_font_get_glyph_from_name_default\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +7600:hb_font_get_glyph_extents_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +7601:hb_font_get_glyph_extents_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +7602: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 +7603: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 +7604:hb_font_get_font_v_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +7605:hb_font_get_font_h_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +7606:hb_font_draw_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +7607: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 +7608: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 +7609:hb_draw_move_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +7610:hb_draw_line_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +7611: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 +7612: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 +7613: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 +7614:hb_draw_close_path_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +7615:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +7616:hb_aat_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +7617:hb_aat_map_builder_t::feature_event_t::cmp\28void\20const*\2c\20void\20const*\29 +7618:h2v2_upsample +7619:h2v2_merged_upsample_565D +7620:h2v2_merged_upsample_565 +7621:h2v2_merged_upsample +7622:h2v2_fancy_upsample +7623:h2v1_upsample +7624:h2v1_merged_upsample_565D +7625:h2v1_merged_upsample_565 +7626:h2v1_merged_upsample +7627:h2v1_fancy_upsample +7628:grayscale_convert +7629:gray_rgb_convert +7630:gray_rgb565_convert +7631:gray_rgb565D_convert +7632:gray_raster_render +7633:gray_raster_new +7634:gray_raster_done +7635:gray_move_to +7636:gray_line_to +7637:gray_cubic_to +7638:gray_conic_to +7639:get_sk_marker_list\28jpeg_decompress_struct*\29 +7640:get_sfnt_table +7641:get_interesting_appn +7642:fullsize_upsample +7643:ft_smooth_transform +7644:ft_smooth_set_mode +7645:ft_smooth_render +7646:ft_smooth_overlap_spans +7647:ft_smooth_lcd_spans +7648:ft_smooth_init +7649:ft_smooth_get_cbox +7650:ft_gzip_free +7651:ft_gzip_alloc +7652:ft_ansi_stream_io +7653:ft_ansi_stream_close +7654:fquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +7655:format_message +7656:fmt_fp +7657:fline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +7658:first_axis_intersection\28double\20const*\2c\20bool\2c\20double\2c\20double*\29 +7659:finish_pass1 +7660:finish_output_pass +7661:finish_input_pass +7662:final_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +7663:fcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +7664:fconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +7665:fast_swizzle_rgba_to_rgba_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7666:fast_swizzle_rgba_to_bgra_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7667:fast_swizzle_rgba_to_bgra_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7668:fast_swizzle_rgb_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7669:fast_swizzle_rgb_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7670:fast_swizzle_grayalpha_to_n32_unpremul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7671:fast_swizzle_grayalpha_to_n32_premul\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7672:fast_swizzle_gray_to_n32\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7673:fast_swizzle_cmyk_to_rgba\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7674:fast_swizzle_cmyk_to_bgra\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +7675:error_exit +7676:error_callback +7677: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 +7678: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 +7679: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 +7680:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\2c\20float\29\2c\20SkCanvas*\2c\20float\2c\20float\2c\20float\29 +7681:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28float\2c\20float\29\2c\20SkCanvas*\2c\20float\2c\20float\29 +7682:emscripten::internal::MethodInvoker::invoke\28void\20\28SkCanvas::*\20const&\29\28SkPath\20const&\2c\20SkPaint\20const&\29\2c\20SkCanvas*\2c\20SkPath*\2c\20SkPaint*\29 +7683: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 +7684: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 +7685:emscripten::internal::MethodInvoker::invoke\28int\20\28skia::textlayout::Paragraph::*\20const&\29\28unsigned\20long\29\20const\2c\20skia::textlayout::Paragraph\20const*\2c\20unsigned\20long\29 +7686:emscripten::internal::MethodInvoker::invoke\28bool\20\28SkPath::*\20const&\29\28float\2c\20float\29\20const\2c\20SkPath\20const*\2c\20float\2c\20float\29 +7687:emscripten::internal::MethodInvoker::invoke\28SkPath&\20\28SkPath::*\20const&\29\28bool\29\2c\20SkPath*\2c\20bool\29 +7688:emscripten::internal::Invoker::invoke\28void\20\28*\29\28unsigned\20long\2c\20unsigned\20long\29\2c\20unsigned\20long\2c\20unsigned\20long\29 +7689:emscripten::internal::Invoker::invoke\28void\20\28*\29\28emscripten::val\29\2c\20emscripten::_EM_VAL*\29 +7690:emscripten::internal::Invoker::invoke\28unsigned\20long\20\28*\29\28unsigned\20long\29\2c\20unsigned\20long\29 +7691: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 +7692: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 +7693: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 +7694: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 +7695: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 +7696: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 +7697: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 +7698: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 +7699: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 +7700: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 +7701: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 +7702: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 +7703: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 +7704: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 +7705: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 +7706: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 +7707: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 +7708:emscripten::internal::Invoker\2c\20float>::invoke\28sk_sp\20\28*\29\28float\29\2c\20float\29 +7709: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 +7710: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 +7711: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 +7712: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 +7713:emscripten::internal::Invoker\2c\20sk_sp>::invoke\28sk_sp\20\28*\29\28sk_sp\29\2c\20sk_sp*\29 +7714: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 +7715: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 +7716: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 +7717: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 +7718: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 +7719: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 +7720: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 +7721: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 +7722: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 +7723: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 +7724: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 +7725:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28unsigned\20long\2c\20int\29\2c\20unsigned\20long\2c\20int\29 +7726: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 +7727: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 +7728:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\2c\20float\29\2c\20SkPath*\2c\20SkPath*\2c\20float\29 +7729:emscripten::internal::Invoker::invoke\28emscripten::val\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\29\2c\20SkPath*\2c\20SkPath*\2c\20SkPathOp\29 +7730: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 +7731:emscripten::internal::Invoker\2c\20sk_sp>::invoke\28bool\20\28*\29\28sk_sp\2c\20sk_sp\29\2c\20sk_sp*\2c\20sk_sp*\29 +7732:emscripten::internal::Invoker::invoke\28bool\20\28*\29\28SkPath\20const&\2c\20SkPath\20const&\29\2c\20SkPath*\2c\20SkPath*\29 +7733: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 +7734:emscripten::internal::Invoker\2c\20int\2c\20int>::invoke\28SkRuntimeEffect::TracedShader\20\28*\29\28sk_sp\2c\20int\2c\20int\29\2c\20sk_sp*\2c\20int\2c\20int\29 +7735: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 +7736: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 +7737:emscripten::internal::Invoker&&\2c\20float&&>::invoke\28SkFont*\20\28*\29\28sk_sp&&\2c\20float&&\29\2c\20sk_sp*\2c\20float\29 +7738:emscripten::internal::Invoker&&>::invoke\28SkFont*\20\28*\29\28sk_sp&&\29\2c\20sk_sp*\29 +7739:emscripten::internal::Invoker::invoke\28SkContourMeasureIter*\20\28*\29\28SkPath\20const&\2c\20bool&&\2c\20float&&\29\2c\20SkPath*\2c\20bool\2c\20float\29 +7740:emscripten::internal::Invoker::invoke\28SkCanvas*\20\28*\29\28float&&\2c\20float&&\29\2c\20float\2c\20float\29 +7741: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 +7742: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 +7743: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 +7744: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 +7745:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\29\2c\20skia::textlayout::ParagraphBuilderImpl*\2c\20SimpleTextStyle*\29 +7746: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 +7747: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 +7748: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 +7749: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 +7750: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 +7751: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 +7752:emscripten::internal::FunctionInvoker::invoke\28void\20\28**\29\28SkContourMeasure&\2c\20float\2c\20unsigned\20long\29\2c\20SkContourMeasure*\2c\20float\2c\20unsigned\20long\29 +7753: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 +7754: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 +7755: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 +7756: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 +7757: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 +7758: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 +7759: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 +7760: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 +7761: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 +7762:emscripten::internal::FunctionInvoker\2c\20std::__2::allocator>\20\28*\29\28SkSL::DebugTrace&\29\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::DebugTrace&>::invoke\28std::__2::basic_string\2c\20std::__2::allocator>\20\28**\29\28SkSL::DebugTrace&\29\2c\20SkSL::DebugTrace*\29 +7763: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 +7764: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 +7765: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 +7766: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 +7767: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 +7768: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 +7769: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 +7770:emscripten::internal::FunctionInvoker\20\28*\29\28SkPictureRecorder&\29\2c\20sk_sp\2c\20SkPictureRecorder&>::invoke\28sk_sp\20\28**\29\28SkPictureRecorder&\29\2c\20SkPictureRecorder*\29 +7771: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 +7772: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 +7773: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 +7774:emscripten::internal::FunctionInvoker::invoke\28int\20\28**\29\28SkCanvas&\2c\20SkPaint\29\2c\20SkCanvas*\2c\20SkPaint*\29 +7775: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 +7776: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 +7777: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 +7778: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 +7779:emscripten::internal::FunctionInvoker\29\2c\20emscripten::val\2c\20sk_sp>::invoke\28emscripten::val\20\28**\29\28sk_sp\29\2c\20sk_sp*\29 +7780: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 +7781: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 +7782: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 +7783: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 +7784: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 +7785:emscripten::internal::FunctionInvoker::invoke\28bool\20\28**\29\28SkPath&\2c\20StrokeOpts\29\2c\20SkPath*\2c\20StrokeOpts*\29 +7786: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 +7787:emscripten::internal::FunctionInvoker::invoke\28SkPath\20\28**\29\28SkPath\20const&\29\2c\20SkPath*\29 +7788: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 +7789:emscripten::internal::FunctionInvoker::invoke\28SkPaint\20\28**\29\28SkPaint\20const&\29\2c\20SkPaint*\29 +7790:emscripten::internal::FunctionInvoker::invoke\28SimpleImageInfo\20\28**\29\28SkSurface&\29\2c\20SkSurface*\29 +7791:emscripten::internal::FunctionInvoker::invoke\28RuntimeEffectUniform\20\28**\29\28SkRuntimeEffect&\2c\20int\29\2c\20SkRuntimeEffect*\2c\20int\29 +7792:emit_message +7793:embind_init_Skia\28\29::$_9::__invoke\28SkAnimatedImage&\29 +7794:embind_init_Skia\28\29::$_99::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\29 +7795:embind_init_Skia\28\29::$_98::__invoke\28SkPath&\2c\20unsigned\20long\2c\20int\2c\20bool\29 +7796:embind_init_Skia\28\29::$_97::__invoke\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\29 +7797:embind_init_Skia\28\29::$_96::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20int\29 +7798:embind_init_Skia\28\29::$_95::__invoke\28SkPath&\2c\20unsigned\20long\2c\20float\2c\20float\29 +7799:embind_init_Skia\28\29::$_94::__invoke\28unsigned\20long\2c\20SkPath\29 +7800:embind_init_Skia\28\29::$_93::__invoke\28float\2c\20unsigned\20long\29 +7801:embind_init_Skia\28\29::$_92::__invoke\28unsigned\20long\2c\20int\2c\20float\29 +7802:embind_init_Skia\28\29::$_91::__invoke\28\29 +7803:embind_init_Skia\28\29::$_90::__invoke\28\29 +7804:embind_init_Skia\28\29::$_8::__invoke\28emscripten::val\29 +7805:embind_init_Skia\28\29::$_89::__invoke\28sk_sp\2c\20sk_sp\29 +7806:embind_init_Skia\28\29::$_88::__invoke\28SkPaint&\2c\20unsigned\20int\2c\20sk_sp\29 +7807:embind_init_Skia\28\29::$_87::__invoke\28SkPaint&\2c\20unsigned\20int\29 +7808:embind_init_Skia\28\29::$_86::__invoke\28SkPaint&\2c\20unsigned\20long\2c\20sk_sp\29 +7809:embind_init_Skia\28\29::$_85::__invoke\28SkPaint&\2c\20unsigned\20long\29 +7810:embind_init_Skia\28\29::$_84::__invoke\28SkPaint\20const&\29 +7811:embind_init_Skia\28\29::$_83::__invoke\28SkBlurStyle\2c\20float\2c\20bool\29 +7812:embind_init_Skia\28\29::$_82::__invoke\28float\2c\20float\2c\20sk_sp\29 +7813:embind_init_Skia\28\29::$_81::__invoke\28unsigned\20long\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20sk_sp\29 +7814:embind_init_Skia\28\29::$_80::__invoke\28unsigned\20long\2c\20float\2c\20float\2c\20sk_sp\29 +7815:embind_init_Skia\28\29::$_7::__invoke\28GrDirectContext&\2c\20unsigned\20long\29 +7816:embind_init_Skia\28\29::$_79::__invoke\28sk_sp\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +7817:embind_init_Skia\28\29::$_78::__invoke\28sk_sp\2c\20float\2c\20float\2c\20unsigned\20long\2c\20unsigned\20long\29 +7818:embind_init_Skia\28\29::$_77::__invoke\28float\2c\20float\2c\20sk_sp\29 +7819:embind_init_Skia\28\29::$_76::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +7820:embind_init_Skia\28\29::$_75::__invoke\28float\2c\20float\2c\20float\2c\20float\2c\20unsigned\20long\2c\20sk_sp\29 +7821:embind_init_Skia\28\29::$_74::__invoke\28sk_sp\29 +7822:embind_init_Skia\28\29::$_73::__invoke\28SkColorChannel\2c\20SkColorChannel\2c\20float\2c\20sk_sp\2c\20sk_sp\29 +7823:embind_init_Skia\28\29::$_72::__invoke\28float\2c\20float\2c\20sk_sp\29 +7824:embind_init_Skia\28\29::$_71::__invoke\28sk_sp\2c\20sk_sp\29 +7825:embind_init_Skia\28\29::$_70::__invoke\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\29 +7826:embind_init_Skia\28\29::$_6::__invoke\28GrDirectContext&\29 +7827:embind_init_Skia\28\29::$_69::__invoke\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29 +7828:embind_init_Skia\28\29::$_68::__invoke\28SkImageFilter\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +7829:embind_init_Skia\28\29::$_67::__invoke\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +7830:embind_init_Skia\28\29::$_66::__invoke\28sk_sp\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\2c\20GrDirectContext*\29 +7831:embind_init_Skia\28\29::$_65::__invoke\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20unsigned\20long\29 +7832:embind_init_Skia\28\29::$_64::__invoke\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20float\2c\20float\2c\20unsigned\20long\29 +7833:embind_init_Skia\28\29::$_63::__invoke\28sk_sp\29 +7834:embind_init_Skia\28\29::$_62::__invoke\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\2c\20GrDirectContext*\29 +7835:embind_init_Skia\28\29::$_61::__invoke\28sk_sp\2c\20SkEncodedImageFormat\2c\20int\29 +7836:embind_init_Skia\28\29::$_60::__invoke\28sk_sp\29 +7837:embind_init_Skia\28\29::$_5::__invoke\28GrDirectContext&\29 +7838:embind_init_Skia\28\29::$_59::__invoke\28sk_sp\29 +7839:embind_init_Skia\28\29::$_58::__invoke\28SkFontMgr&\2c\20unsigned\20long\2c\20int\29 +7840:embind_init_Skia\28\29::$_57::__invoke\28SkFontMgr&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +7841:embind_init_Skia\28\29::$_56::__invoke\28SkFontMgr&\2c\20int\29 +7842:embind_init_Skia\28\29::$_55::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20int\29 +7843: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 +7844:embind_init_Skia\28\29::$_53::__invoke\28SkFont&\29 +7845:embind_init_Skia\28\29::$_52::__invoke\28SkFont&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +7846:embind_init_Skia\28\29::$_51::__invoke\28SkFont&\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint*\29 +7847:embind_init_Skia\28\29::$_50::__invoke\28SkContourMeasure&\2c\20float\2c\20float\2c\20bool\29 +7848:embind_init_Skia\28\29::$_4::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +7849:embind_init_Skia\28\29::$_49::__invoke\28SkContourMeasure&\2c\20float\2c\20unsigned\20long\29 +7850:embind_init_Skia\28\29::$_48::__invoke\28unsigned\20long\29 +7851:embind_init_Skia\28\29::$_47::__invoke\28unsigned\20long\2c\20SkBlendMode\2c\20sk_sp\29 +7852:embind_init_Skia\28\29::$_46::__invoke\28SkCanvas&\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +7853:embind_init_Skia\28\29::$_45::__invoke\28SkCanvas&\2c\20SkPaint\29 +7854:embind_init_Skia\28\29::$_44::__invoke\28SkCanvas&\2c\20SkPaint\20const*\2c\20unsigned\20long\2c\20SkImageFilter\20const*\2c\20unsigned\20int\29 +7855:embind_init_Skia\28\29::$_43::__invoke\28SkCanvas&\2c\20SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\2c\20int\2c\20int\29 +7856:embind_init_Skia\28\29::$_42::__invoke\28SkCanvas&\2c\20SimpleImageInfo\29 +7857:embind_init_Skia\28\29::$_41::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +7858:embind_init_Skia\28\29::$_40::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +7859: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 +7860:embind_init_Skia\28\29::$_39::__invoke\28SkCanvas\20const&\2c\20unsigned\20long\29 +7861: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 +7862: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 +7863:embind_init_Skia\28\29::$_36::__invoke\28SkCanvas&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +7864:embind_init_Skia\28\29::$_35::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +7865:embind_init_Skia\28\29::$_34::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +7866:embind_init_Skia\28\29::$_33::__invoke\28SkCanvas&\2c\20SkCanvas::PointMode\2c\20unsigned\20long\2c\20int\2c\20SkPaint&\29 +7867:embind_init_Skia\28\29::$_32::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +7868:embind_init_Skia\28\29::$_31::__invoke\28SkCanvas&\2c\20skia::textlayout::Paragraph*\2c\20float\2c\20float\29 +7869:embind_init_Skia\28\29::$_30::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +7870:embind_init_Skia\28\29::$_2::__invoke\28SimpleImageInfo\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\29 +7871: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 +7872: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 +7873:embind_init_Skia\28\29::$_27::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\20const*\2c\20bool\29 +7874:embind_init_Skia\28\29::$_26::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +7875:embind_init_Skia\28\29::$_25::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkFilterMode\2c\20SkMipmapMode\2c\20SkPaint\20const*\29 +7876:embind_init_Skia\28\29::$_24::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +7877:embind_init_Skia\28\29::$_23::__invoke\28SkCanvas&\2c\20sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const*\29 +7878: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 +7879:embind_init_Skia\28\29::$_21::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\20const&\29 +7880:embind_init_Skia\28\29::$_20::__invoke\28SkCanvas&\2c\20unsigned\20int\2c\20SkBlendMode\29 +7881:embind_init_Skia\28\29::$_1::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +7882:embind_init_Skia\28\29::$_19::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkBlendMode\29 +7883:embind_init_Skia\28\29::$_18::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +7884: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 +7885: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 +7886:embind_init_Skia\28\29::$_15::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +7887:embind_init_Skia\28\29::$_14::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +7888:embind_init_Skia\28\29::$_148::__invoke\28SkVertices::Builder&\29 +7889:embind_init_Skia\28\29::$_147::__invoke\28SkVertices::Builder&\29 +7890:embind_init_Skia\28\29::$_146::__invoke\28SkVertices::Builder&\29 +7891:embind_init_Skia\28\29::$_145::__invoke\28SkVertices::Builder&\29 +7892:embind_init_Skia\28\29::$_144::__invoke\28SkVertices&\2c\20unsigned\20long\29 +7893:embind_init_Skia\28\29::$_143::__invoke\28SkTypeface&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +7894:embind_init_Skia\28\29::$_142::__invoke\28unsigned\20long\2c\20int\29 +7895:embind_init_Skia\28\29::$_141::__invoke\28\29 +7896:embind_init_Skia\28\29::$_140::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +7897:embind_init_Skia\28\29::$_13::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29 +7898:embind_init_Skia\28\29::$_139::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +7899:embind_init_Skia\28\29::$_138::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +7900:embind_init_Skia\28\29::$_137::__invoke\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkFont\20const&\29 +7901:embind_init_Skia\28\29::$_136::__invoke\28SkSurface&\29 +7902:embind_init_Skia\28\29::$_135::__invoke\28SkSurface&\29 +7903:embind_init_Skia\28\29::$_134::__invoke\28SkSurface&\29 +7904:embind_init_Skia\28\29::$_133::__invoke\28SkSurface&\2c\20SimpleImageInfo\29 +7905:embind_init_Skia\28\29::$_132::__invoke\28SkSurface&\2c\20unsigned\20long\29 +7906:embind_init_Skia\28\29::$_131::__invoke\28SkSurface&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20SimpleImageInfo\29 +7907:embind_init_Skia\28\29::$_130::__invoke\28SkSurface&\29 +7908:embind_init_Skia\28\29::$_12::__invoke\28SkCanvas&\2c\20unsigned\20long\2c\20SkClipOp\2c\20bool\29 +7909:embind_init_Skia\28\29::$_129::__invoke\28SkSurface&\29 +7910:embind_init_Skia\28\29::$_128::__invoke\28SimpleImageInfo\2c\20unsigned\20long\2c\20unsigned\20long\29 +7911:embind_init_Skia\28\29::$_127::__invoke\28SkRuntimeEffect&\2c\20int\29 +7912:embind_init_Skia\28\29::$_126::__invoke\28SkRuntimeEffect&\2c\20int\29 +7913:embind_init_Skia\28\29::$_125::__invoke\28SkRuntimeEffect&\29 +7914:embind_init_Skia\28\29::$_124::__invoke\28SkRuntimeEffect&\29 +7915:embind_init_Skia\28\29::$_123::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +7916:embind_init_Skia\28\29::$_122::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +7917:embind_init_Skia\28\29::$_121::__invoke\28SkRuntimeEffect&\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\2c\20unsigned\20long\29 +7918:embind_init_Skia\28\29::$_120::__invoke\28sk_sp\2c\20int\2c\20int\29 +7919:embind_init_Skia\28\29::$_11::__invoke\28SkCanvas&\2c\20unsigned\20long\29 +7920:embind_init_Skia\28\29::$_119::__invoke\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +7921:embind_init_Skia\28\29::$_118::__invoke\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20emscripten::val\29 +7922:embind_init_Skia\28\29::$_117::__invoke\28SkSL::DebugTrace&\29 +7923: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 +7924:embind_init_Skia\28\29::$_115::__invoke\28float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29 +7925: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 +7926: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 +7927: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 +7928:embind_init_Skia\28\29::$_111::__invoke\28float\2c\20float\2c\20int\2c\20float\2c\20int\2c\20int\29 +7929:embind_init_Skia\28\29::$_110::__invoke\28unsigned\20long\2c\20sk_sp\29 +7930:embind_init_Skia\28\29::$_10::__invoke\28SkAnimatedImage&\29 +7931:embind_init_Skia\28\29::$_109::operator\28\29\28SkPicture&\29\20const::'lambda'\28SkImage*\2c\20void*\29::__invoke\28SkImage*\2c\20void*\29 +7932:embind_init_Skia\28\29::$_109::__invoke\28SkPicture&\29 +7933:embind_init_Skia\28\29::$_108::__invoke\28SkPicture&\2c\20unsigned\20long\29 +7934:embind_init_Skia\28\29::$_107::__invoke\28SkPicture&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkFilterMode\2c\20unsigned\20long\2c\20unsigned\20long\29 +7935:embind_init_Skia\28\29::$_106::__invoke\28SkPictureRecorder&\29 +7936:embind_init_Skia\28\29::$_105::__invoke\28SkPictureRecorder&\2c\20unsigned\20long\2c\20bool\29 +7937:embind_init_Skia\28\29::$_104::__invoke\28SkPath&\2c\20unsigned\20long\29 +7938:embind_init_Skia\28\29::$_103::__invoke\28SkPath&\2c\20unsigned\20long\29 +7939:embind_init_Skia\28\29::$_102::__invoke\28SkPath&\2c\20int\2c\20unsigned\20long\29 +7940:embind_init_Skia\28\29::$_101::__invoke\28SkPath&\2c\20unsigned\20long\2c\20float\2c\20float\2c\20bool\29 +7941:embind_init_Skia\28\29::$_100::__invoke\28SkPath&\2c\20unsigned\20long\2c\20bool\29 +7942:embind_init_Skia\28\29::$_0::__invoke\28unsigned\20long\2c\20unsigned\20long\29 +7943:embind_init_Paragraph\28\29::$_9::__invoke\28skia::textlayout::ParagraphBuilderImpl&\29 +7944:embind_init_Paragraph\28\29::$_8::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20float\2c\20float\2c\20skia::textlayout::PlaceholderAlignment\2c\20skia::textlayout::TextBaseline\2c\20float\29 +7945:embind_init_Paragraph\28\29::$_7::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\2c\20SkPaint\2c\20SkPaint\29 +7946:embind_init_Paragraph\28\29::$_6::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20SimpleTextStyle\29 +7947:embind_init_Paragraph\28\29::$_5::__invoke\28skia::textlayout::ParagraphBuilderImpl&\29 +7948:embind_init_Paragraph\28\29::$_4::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +7949:embind_init_Paragraph\28\29::$_3::__invoke\28emscripten::val\2c\20emscripten::val\2c\20float\29 +7950:embind_init_Paragraph\28\29::$_2::__invoke\28SimpleParagraphStyle\2c\20sk_sp\29 +7951:embind_init_Paragraph\28\29::$_19::__invoke\28skia::textlayout::FontCollection&\2c\20sk_sp\20const&\29 +7952:embind_init_Paragraph\28\29::$_18::__invoke\28\29 +7953:embind_init_Paragraph\28\29::$_17::__invoke\28skia::textlayout::TypefaceFontProvider&\2c\20sk_sp\2c\20unsigned\20long\29 +7954:embind_init_Paragraph\28\29::$_16::__invoke\28\29 +7955:embind_init_Paragraph\28\29::$_15::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7956:embind_init_Paragraph\28\29::$_14::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7957:embind_init_Paragraph\28\29::$_13::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7958:embind_init_Paragraph\28\29::$_12::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7959:embind_init_Paragraph\28\29::$_11::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7960:embind_init_Paragraph\28\29::$_10::__invoke\28skia::textlayout::ParagraphBuilderImpl&\2c\20unsigned\20long\2c\20unsigned\20long\29 +7961:dispose_external_texture\28void*\29 +7962:deleteJSTexture\28void*\29 +7963:deflate_slow +7964:deflate_fast +7965:decompress_smooth_data +7966:decompress_onepass +7967:decompress_data +7968:decompose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +7969:decompose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +7970:decompose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +7971:decode_mcu_DC_refine +7972:decode_mcu_DC_first +7973:decode_mcu_AC_refine +7974:decode_mcu_AC_first +7975:decode_mcu +7976: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 +7977: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 +7978: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 +7979:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::tess::PatchAttribs&\29::'lambda'\28void*\29>\28skgpu::ganesh::StrokeTessellator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7980: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 +7981: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 +7982: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 +7983:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerSkyline&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7984:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerPow2&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7985:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make*\20SkArenaAlloc::make>\28\29::'lambda'\28void*\29>\28sk_sp&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7986: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 +7987: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 +7988: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 +7989: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 +7990: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 +7991: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 +7992: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 +7993:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28bool&&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTriColorShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7994:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTCubic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7995:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTConic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7996:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\29::'lambda'\28void*\29>\28SkSpriteBlitter_Memcpy&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7997: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 +7998:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkArenaAlloc*&\29::'lambda'\28void*\29>\28SkRasterPipelineBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +7999:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkNullBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8000: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 +8001:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::PathData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8002:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::DrawableData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8003:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkGlyph&&\29::'lambda'\28void*\29>\28SkGlyph&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8004: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 +8005: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 +8006: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 +8007: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 +8008:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28GrSimpleMesh&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8009: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 +8010:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPath\20const&\2c\20SkArenaAlloc*\20const&\29::'lambda'\28void*\29>\28GrInnerFanTriangulator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8011: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 +8012: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 +8013:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrAppliedClip&&\29::'lambda'\28void*\29>\28GrAppliedClip&&\29::'lambda'\28char*\29::__invoke\28char*\29 +8014: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 +8015: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 +8016: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 +8017: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 +8018: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 +8019: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 +8020: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 +8021: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 +8022: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 +8023: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 +8024: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 +8025: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 +8026: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 +8027: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 +8028:deallocate_buffer_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8029:ddquad_xy_at_t\28SkDCurve\20const&\2c\20double\29 +8030:ddquad_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +8031:ddline_xy_at_t\28SkDCurve\20const&\2c\20double\29 +8032:ddline_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +8033:ddcubic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +8034:ddcubic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +8035:ddconic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +8036:ddconic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +8037:data_destroy_use\28void*\29 +8038:data_create_use\28hb_ot_shape_plan_t\20const*\29 +8039:data_create_khmer\28hb_ot_shape_plan_t\20const*\29 +8040:data_create_indic\28hb_ot_shape_plan_t\20const*\29 +8041:data_create_hangul\28hb_ot_shape_plan_t\20const*\29 +8042:copy\28void*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\29 +8043:convert_bytes_to_data +8044:consume_markers +8045:consume_data +8046:computeTonalColors\28unsigned\20long\2c\20unsigned\20long\29 +8047:compose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8048:compose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8049:compose_hebrew\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8050:compare_ppem +8051:compare_offsets +8052:compare_myanmar_order\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +8053:compare_combining_class\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +8054:color_quantize3 +8055:color_quantize +8056:collect_features_use\28hb_ot_shape_planner_t*\29 +8057:collect_features_myanmar\28hb_ot_shape_planner_t*\29 +8058:collect_features_khmer\28hb_ot_shape_planner_t*\29 +8059:collect_features_indic\28hb_ot_shape_planner_t*\29 +8060:collect_features_hangul\28hb_ot_shape_planner_t*\29 +8061:collect_features_arabic\28hb_ot_shape_planner_t*\29 +8062:clip\28SkPath\20const&\2c\20SkHalfPlane\20const&\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +8063:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitStatement\28SkSL::Statement\20const&\29 +8064:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8065:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitExpression\28SkSL::Expression\20const&\29 +8066:cff_slot_init +8067:cff_slot_done +8068:cff_size_request +8069:cff_size_init +8070:cff_size_done +8071:cff_sid_to_glyph_name +8072:cff_set_var_design +8073:cff_set_mm_weightvector +8074:cff_set_mm_blend +8075:cff_set_instance +8076:cff_random +8077:cff_ps_has_glyph_names +8078:cff_ps_get_font_info +8079:cff_ps_get_font_extra +8080:cff_parse_vsindex +8081:cff_parse_private_dict +8082:cff_parse_multiple_master +8083:cff_parse_maxstack +8084:cff_parse_font_matrix +8085:cff_parse_font_bbox +8086:cff_parse_cid_ros +8087:cff_parse_blend +8088:cff_metrics_adjust +8089:cff_hadvance_adjust +8090:cff_glyph_load +8091:cff_get_var_design +8092:cff_get_var_blend +8093:cff_get_standard_encoding +8094:cff_get_ros +8095:cff_get_ps_name +8096:cff_get_name_index +8097:cff_get_mm_weightvector +8098:cff_get_mm_var +8099:cff_get_mm_blend +8100:cff_get_is_cid +8101:cff_get_interface +8102:cff_get_glyph_name +8103:cff_get_glyph_data +8104:cff_get_cmap_info +8105:cff_get_cid_from_glyph_index +8106:cff_get_advances +8107:cff_free_glyph_data +8108:cff_fd_select_get +8109:cff_face_init +8110:cff_face_done +8111:cff_driver_init +8112:cff_done_blend +8113:cff_decoder_prepare +8114:cff_decoder_init +8115:cff_cmap_unicode_init +8116:cff_cmap_unicode_char_next +8117:cff_cmap_unicode_char_index +8118:cff_cmap_encoding_init +8119:cff_cmap_encoding_done +8120:cff_cmap_encoding_char_next +8121:cff_cmap_encoding_char_index +8122:cff_builder_start_point +8123:cff_builder_init +8124:cff_builder_add_point1 +8125:cff_builder_add_point +8126:cff_builder_add_contour +8127:cff_blend_check_vector +8128:cf2_free_instance +8129:cf2_decoder_parse_charstrings +8130:cf2_builder_moveTo +8131:cf2_builder_lineTo +8132:cf2_builder_cubeTo +8133:bw_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +8134:bw_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8135:bw_pt_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8136:bw_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8137:bw_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8138:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::SpotVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +8139:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::AmbientVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +8140:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +8141:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +8142:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +8143:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +8144:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8145:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8146:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8147:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8148:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +8149: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 +8150: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 +8151: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 +8152: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 +8153: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 +8154: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 +8155: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 +8156: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 +8157:blit_row_s32a_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +8158:blit_row_s32_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +8159:blit_row_s32_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +8160:argb32_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +8161:arabic_fallback_shape\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8162:alwaysSaveTypefaceBytes\28SkTypeface*\2c\20void*\29 +8163:alloc_sarray +8164:alloc_barray +8165:afm_parser_parse +8166:afm_parser_init +8167:afm_parser_done +8168:afm_compare_kern_pairs +8169:af_property_set +8170:af_property_get +8171:af_latin_metrics_scale +8172:af_latin_metrics_init +8173:af_latin_hints_init +8174:af_latin_hints_apply +8175:af_latin_get_standard_widths +8176:af_indic_metrics_init +8177:af_indic_hints_apply +8178:af_get_interface +8179:af_face_globals_free +8180:af_dummy_hints_init +8181:af_dummy_hints_apply +8182:af_cjk_metrics_init +8183:af_autofitter_load_glyph +8184:af_autofitter_init +8185:access_virt_sarray +8186:access_virt_barray +8187:aa_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8188:aa_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8189:aa_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +8190:_hb_ot_font_destroy\28void*\29 +8191:_hb_glyph_info_is_default_ignorable\28hb_glyph_info_t\20const*\29 +8192:_hb_face_for_data_reference_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +8193:_hb_face_for_data_closure_destroy\28void*\29 +8194:_hb_clear_substitution_flags\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8195:_embind_initialize_bindings +8196:__wasm_call_ctors +8197:__stdio_write +8198:__stdio_seek +8199:__stdio_read +8200:__stdio_close +8201:__getTypeName +8202:__cxxabiv1::__vmi_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +8203:__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 +8204:__cxxabiv1::__vmi_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +8205:__cxxabiv1::__si_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +8206:__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 +8207:__cxxabiv1::__si_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +8208:__cxxabiv1::__class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +8209:__cxxabiv1::__class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +8210:__cxxabiv1::__class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +8211:__cxxabiv1::__class_type_info::can_catch\28__cxxabiv1::__shim_type_info\20const*\2c\20void*&\29\20const +8212:__cxx_global_array_dtor.9 +8213:__cxx_global_array_dtor.87 +8214:__cxx_global_array_dtor.72 +8215:__cxx_global_array_dtor.57 +8216:__cxx_global_array_dtor.5 +8217:__cxx_global_array_dtor.44 +8218:__cxx_global_array_dtor.42 +8219:__cxx_global_array_dtor.40 +8220:__cxx_global_array_dtor.4 +8221:__cxx_global_array_dtor.38 +8222:__cxx_global_array_dtor.36 +8223:__cxx_global_array_dtor.34 +8224:__cxx_global_array_dtor.32 +8225:__cxx_global_array_dtor.2 +8226:__cxx_global_array_dtor.16 +8227:__cxx_global_array_dtor.15 +8228:__cxx_global_array_dtor.14 +8229:__cxx_global_array_dtor.138 +8230:__cxx_global_array_dtor.135 +8231:__cxx_global_array_dtor.111 +8232:__cxx_global_array_dtor.10 +8233:__cxx_global_array_dtor.1.1 +8234:__cxx_global_array_dtor.1 +8235:__cxx_global_array_dtor +8236:__cxa_pure_virtual +8237:__cxa_is_pointer_type +8238:\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 +8239:\28anonymous\20namespace\29::skhb_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8240:\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 +8241:\28anonymous\20namespace\29::skhb_glyph_h_advance\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +8242:\28anonymous\20namespace\29::skhb_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +8243:\28anonymous\20namespace\29::skhb_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +8244:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29::$_0::__invoke\28void*\29 +8245:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +8246:\28anonymous\20namespace\29::make_morphology\28\28anonymous\20namespace\29::MorphType\2c\20SkSize\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +8247:\28anonymous\20namespace\29::make_drop_shadow_graph\28SkPoint\2c\20SkSize\2c\20unsigned\20int\2c\20bool\2c\20sk_sp\2c\20std::__2::optional\20const&\29 +8248:\28anonymous\20namespace\29::extension_compare\28SkString\20const&\2c\20SkString\20const&\29 +8249:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29.1 +8250:\28anonymous\20namespace\29::YUVPlanesRec::getCategory\28\29\20const +8251:\28anonymous\20namespace\29::YUVPlanesRec::diagnostic_only_getDiscardable\28\29\20const +8252:\28anonymous\20namespace\29::YUVPlanesRec::bytesUsed\28\29\20const +8253:\28anonymous\20namespace\29::YUVPlanesRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +8254:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29.1 +8255:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29 +8256:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29.1 +8257:\28anonymous\20namespace\29::TriangulatingPathOp::visitProxies\28std::__2::function\20const&\29\20const +8258:\28anonymous\20namespace\29::TriangulatingPathOp::programInfo\28\29 +8259:\28anonymous\20namespace\29::TriangulatingPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8260:\28anonymous\20namespace\29::TriangulatingPathOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8261:\28anonymous\20namespace\29::TriangulatingPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8262:\28anonymous\20namespace\29::TriangulatingPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8263:\28anonymous\20namespace\29::TriangulatingPathOp::name\28\29\20const +8264:\28anonymous\20namespace\29::TriangulatingPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8265:\28anonymous\20namespace\29::TransformedMaskSubRun::unflattenSize\28\29\20const +8266:\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 +8267:\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +8268:\28anonymous\20namespace\29::TransformedMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +8269:\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 +8270:\28anonymous\20namespace\29::TransformedMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +8271:\28anonymous\20namespace\29::TransformedMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +8272:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29.1 +8273:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29 +8274:\28anonymous\20namespace\29::TextureOpImpl::visitProxies\28std::__2::function\20const&\29\20const +8275:\28anonymous\20namespace\29::TextureOpImpl::programInfo\28\29 +8276:\28anonymous\20namespace\29::TextureOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8277:\28anonymous\20namespace\29::TextureOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8278:\28anonymous\20namespace\29::TextureOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8279:\28anonymous\20namespace\29::TextureOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8280:\28anonymous\20namespace\29::TextureOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8281:\28anonymous\20namespace\29::TextureOpImpl::name\28\29\20const +8282:\28anonymous\20namespace\29::TextureOpImpl::fixedFunctionFlags\28\29\20const +8283:\28anonymous\20namespace\29::TextureOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8284:\28anonymous\20namespace\29::TentPass::startBlur\28\29 +8285:\28anonymous\20namespace\29::TentPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +8286:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +8287:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +8288:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29.1 +8289:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29 +8290:\28anonymous\20namespace\29::StaticVertexAllocator::unlock\28int\29 +8291:\28anonymous\20namespace\29::StaticVertexAllocator::lock\28unsigned\20long\2c\20int\29 +8292:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::currentScript\28\29\20const +8293:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::consume\28\29 +8294:\28anonymous\20namespace\29::SkShaderImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8295:\28anonymous\20namespace\29::SkShaderImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8296:\28anonymous\20namespace\29::SkShaderImageFilter::getTypeName\28\29\20const +8297:\28anonymous\20namespace\29::SkShaderImageFilter::flatten\28SkWriteBuffer&\29\20const +8298:\28anonymous\20namespace\29::SkShaderImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8299:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8300:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8301:\28anonymous\20namespace\29::SkMorphologyImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8302:\28anonymous\20namespace\29::SkMorphologyImageFilter::getTypeName\28\29\20const +8303:\28anonymous\20namespace\29::SkMorphologyImageFilter::flatten\28SkWriteBuffer&\29\20const +8304:\28anonymous\20namespace\29::SkMorphologyImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8305:\28anonymous\20namespace\29::SkMergeImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8306:\28anonymous\20namespace\29::SkMergeImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8307:\28anonymous\20namespace\29::SkMergeImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8308:\28anonymous\20namespace\29::SkMergeImageFilter::getTypeName\28\29\20const +8309:\28anonymous\20namespace\29::SkMergeImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8310:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8311:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8312:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8313:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::getTypeName\28\29\20const +8314:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::flatten\28SkWriteBuffer&\29\20const +8315:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8316:\28anonymous\20namespace\29::SkImageImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8317:\28anonymous\20namespace\29::SkImageImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8318:\28anonymous\20namespace\29::SkImageImageFilter::getTypeName\28\29\20const +8319:\28anonymous\20namespace\29::SkImageImageFilter::flatten\28SkWriteBuffer&\29\20const +8320:\28anonymous\20namespace\29::SkImageImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8321:\28anonymous\20namespace\29::SkFTGeometrySink::Quad\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +8322:\28anonymous\20namespace\29::SkFTGeometrySink::Move\28FT_Vector_\20const*\2c\20void*\29 +8323:\28anonymous\20namespace\29::SkFTGeometrySink::Line\28FT_Vector_\20const*\2c\20void*\29 +8324:\28anonymous\20namespace\29::SkFTGeometrySink::Cubic\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +8325:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +8326:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFamilyName\28SkString*\29\20const +8327:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +8328:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateFamilyNameIterator\28\29\20const +8329:\28anonymous\20namespace\29::SkEmptyTypeface::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +8330:\28anonymous\20namespace\29::SkEmptyTypeface::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +8331:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8332:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8333:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8334:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::getTypeName\28\29\20const +8335:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::flatten\28SkWriteBuffer&\29\20const +8336:\28anonymous\20namespace\29::SkDisplacementMapImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8337:\28anonymous\20namespace\29::SkCropImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8338:\28anonymous\20namespace\29::SkCropImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8339:\28anonymous\20namespace\29::SkCropImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8340:\28anonymous\20namespace\29::SkCropImageFilter::onAffectsTransparentBlack\28\29\20const +8341:\28anonymous\20namespace\29::SkCropImageFilter::getTypeName\28\29\20const +8342:\28anonymous\20namespace\29::SkCropImageFilter::flatten\28SkWriteBuffer&\29\20const +8343:\28anonymous\20namespace\29::SkCropImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8344:\28anonymous\20namespace\29::SkComposeImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8345:\28anonymous\20namespace\29::SkComposeImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8346:\28anonymous\20namespace\29::SkComposeImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8347:\28anonymous\20namespace\29::SkComposeImageFilter::getTypeName\28\29\20const +8348:\28anonymous\20namespace\29::SkComposeImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8349:\28anonymous\20namespace\29::SkColorFilterImageFilter::onIsColorFilterNode\28SkColorFilter**\29\20const +8350:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8351:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8352:\28anonymous\20namespace\29::SkColorFilterImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8353:\28anonymous\20namespace\29::SkColorFilterImageFilter::onAffectsTransparentBlack\28\29\20const +8354:\28anonymous\20namespace\29::SkColorFilterImageFilter::getTypeName\28\29\20const +8355:\28anonymous\20namespace\29::SkColorFilterImageFilter::flatten\28SkWriteBuffer&\29\20const +8356:\28anonymous\20namespace\29::SkColorFilterImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8357:\28anonymous\20namespace\29::SkBlurImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8358:\28anonymous\20namespace\29::SkBlurImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8359:\28anonymous\20namespace\29::SkBlurImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8360:\28anonymous\20namespace\29::SkBlurImageFilter::getTypeName\28\29\20const +8361:\28anonymous\20namespace\29::SkBlurImageFilter::flatten\28SkWriteBuffer&\29\20const +8362:\28anonymous\20namespace\29::SkBlurImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8363:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29.1 +8364:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29 +8365:\28anonymous\20namespace\29::SkBlendImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +8366:\28anonymous\20namespace\29::SkBlendImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +8367:\28anonymous\20namespace\29::SkBlendImageFilter::onFilterImage\28skif::Context\20const&\29\20const +8368:\28anonymous\20namespace\29::SkBlendImageFilter::onAffectsTransparentBlack\28\29\20const +8369:\28anonymous\20namespace\29::SkBlendImageFilter::getTypeName\28\29\20const +8370:\28anonymous\20namespace\29::SkBlendImageFilter::flatten\28SkWriteBuffer&\29\20const +8371:\28anonymous\20namespace\29::SkBlendImageFilter::computeFastBounds\28SkRect\20const&\29\20const +8372:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29.1 +8373:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29 +8374:\28anonymous\20namespace\29::SkBidiIterator_icu::getLevelAt\28int\29 +8375:\28anonymous\20namespace\29::SkBidiIterator_icu::getLength\28\29 +8376:\28anonymous\20namespace\29::SimpleTriangleShader::name\28\29\20const +8377:\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 +8378:\28anonymous\20namespace\29::SimpleTriangleShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8379:\28anonymous\20namespace\29::ShaperHarfBuzz::~ShaperHarfBuzz\28\29.1 +8380:\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 +8381:\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 +8382:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20bool\2c\20float\2c\20SkShaper::RunHandler*\29\20const +8383:\28anonymous\20namespace\29::ShapeDontWrapOrReorder::~ShapeDontWrapOrReorder\28\29 +8384:\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 +8385:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29.1 +8386:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29 +8387:\28anonymous\20namespace\29::ShadowInvalidator::changed\28\29 +8388:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29.1 +8389:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29 +8390:\28anonymous\20namespace\29::ShadowCircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +8391:\28anonymous\20namespace\29::ShadowCircularRRectOp::programInfo\28\29 +8392:\28anonymous\20namespace\29::ShadowCircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8393:\28anonymous\20namespace\29::ShadowCircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8394:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8395:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8396:\28anonymous\20namespace\29::ShadowCircularRRectOp::name\28\29\20const +8397:\28anonymous\20namespace\29::ShadowCircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8398:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +8399:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +8400:\28anonymous\20namespace\29::SDFTSubRun::vertexStride\28SkMatrix\20const&\29\20const +8401:\28anonymous\20namespace\29::SDFTSubRun::vertexFiller\28\29\20const +8402:\28anonymous\20namespace\29::SDFTSubRun::unflattenSize\28\29\20const +8403:\28anonymous\20namespace\29::SDFTSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +8404:\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 +8405:\28anonymous\20namespace\29::SDFTSubRun::glyphs\28\29\20const +8406:\28anonymous\20namespace\29::SDFTSubRun::glyphCount\28\29\20const +8407:\28anonymous\20namespace\29::SDFTSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +8408:\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 +8409:\28anonymous\20namespace\29::SDFTSubRun::doFlatten\28SkWriteBuffer&\29\20const +8410:\28anonymous\20namespace\29::SDFTSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +8411:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29.1 +8412:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29 +8413:\28anonymous\20namespace\29::RectsBlurRec::getCategory\28\29\20const +8414:\28anonymous\20namespace\29::RectsBlurRec::diagnostic_only_getDiscardable\28\29\20const +8415:\28anonymous\20namespace\29::RectsBlurRec::bytesUsed\28\29\20const +8416:\28anonymous\20namespace\29::RectsBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +8417:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29.1 +8418:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29 +8419:\28anonymous\20namespace\29::RRectBlurRec::getCategory\28\29\20const +8420:\28anonymous\20namespace\29::RRectBlurRec::diagnostic_only_getDiscardable\28\29\20const +8421:\28anonymous\20namespace\29::RRectBlurRec::bytesUsed\28\29\20const +8422:\28anonymous\20namespace\29::RRectBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +8423:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29.1 +8424:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29 +8425:\28anonymous\20namespace\29::PathSubRun::unflattenSize\28\29\20const +8426:\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 +8427:\28anonymous\20namespace\29::PathSubRun::doFlatten\28SkWriteBuffer&\29\20const +8428:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29.1 +8429:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29 +8430:\28anonymous\20namespace\29::MipMapRec::getCategory\28\29\20const +8431:\28anonymous\20namespace\29::MipMapRec::diagnostic_only_getDiscardable\28\29\20const +8432:\28anonymous\20namespace\29::MipMapRec::bytesUsed\28\29\20const +8433:\28anonymous\20namespace\29::MipMapRec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +8434:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29.1 +8435:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29 +8436:\28anonymous\20namespace\29::MiddleOutShader::name\28\29\20const +8437:\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 +8438:\28anonymous\20namespace\29::MiddleOutShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8439:\28anonymous\20namespace\29::MiddleOutShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8440:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29.1 +8441:\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const +8442:\28anonymous\20namespace\29::MeshOp::programInfo\28\29 +8443:\28anonymous\20namespace\29::MeshOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8444:\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8445:\28anonymous\20namespace\29::MeshOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8446:\28anonymous\20namespace\29::MeshOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8447:\28anonymous\20namespace\29::MeshOp::name\28\29\20const +8448:\28anonymous\20namespace\29::MeshOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8449:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29.1 +8450:\28anonymous\20namespace\29::MeshGP::onTextureSampler\28int\29\20const +8451:\28anonymous\20namespace\29::MeshGP::name\28\29\20const +8452:\28anonymous\20namespace\29::MeshGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8453:\28anonymous\20namespace\29::MeshGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8454:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29.1 +8455:\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8456:\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8457:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +8458:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +8459:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +8460:\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 +8461:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMangledName\28char\20const*\29 +8462:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMainName\28\29 +8463:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +8464:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +8465:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +8466:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareFunction\28char\20const*\29 +8467:\28anonymous\20namespace\29::ImageFromPictureRec::~ImageFromPictureRec\28\29.1 +8468:\28anonymous\20namespace\29::ImageFromPictureRec::~ImageFromPictureRec\28\29 +8469:\28anonymous\20namespace\29::ImageFromPictureRec::getCategory\28\29\20const +8470:\28anonymous\20namespace\29::ImageFromPictureRec::bytesUsed\28\29\20const +8471:\28anonymous\20namespace\29::ImageFromPictureRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +8472:\28anonymous\20namespace\29::HQDownSampler::buildLevel\28SkPixmap\20const&\2c\20SkPixmap\20const&\29 +8473:\28anonymous\20namespace\29::GaussPass::startBlur\28\29 +8474:\28anonymous\20namespace\29::GaussPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +8475:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +8476:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +8477:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29.1 +8478:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29 +8479:\28anonymous\20namespace\29::FillRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +8480:\28anonymous\20namespace\29::FillRectOpImpl::programInfo\28\29 +8481:\28anonymous\20namespace\29::FillRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8482:\28anonymous\20namespace\29::FillRectOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8483:\28anonymous\20namespace\29::FillRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8484:\28anonymous\20namespace\29::FillRectOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8485:\28anonymous\20namespace\29::FillRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8486:\28anonymous\20namespace\29::FillRectOpImpl::name\28\29\20const +8487:\28anonymous\20namespace\29::FillRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8488:\28anonymous\20namespace\29::EllipticalRRectEffect::onMakeProgramImpl\28\29\20const +8489:\28anonymous\20namespace\29::EllipticalRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8490:\28anonymous\20namespace\29::EllipticalRRectEffect::name\28\29\20const +8491:\28anonymous\20namespace\29::EllipticalRRectEffect::clone\28\29\20const +8492:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +8493:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +8494:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29.1 +8495:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29 +8496:\28anonymous\20namespace\29::DrawableSubRun::unflattenSize\28\29\20const +8497:\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 +8498:\28anonymous\20namespace\29::DrawableSubRun::doFlatten\28SkWriteBuffer&\29\20const +8499:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29.1 +8500:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29 +8501:\28anonymous\20namespace\29::DrawAtlasPathShader::onTextureSampler\28int\29\20const +8502:\28anonymous\20namespace\29::DrawAtlasPathShader::name\28\29\20const +8503:\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8504:\28anonymous\20namespace\29::DrawAtlasPathShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8505:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8506:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8507:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29.1 +8508:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29 +8509:\28anonymous\20namespace\29::DrawAtlasOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8510:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8511:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8512:\28anonymous\20namespace\29::DrawAtlasOpImpl::name\28\29\20const +8513:\28anonymous\20namespace\29::DrawAtlasOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8514:\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +8515:\28anonymous\20namespace\29::DirectMaskSubRun::unflattenSize\28\29\20const +8516:\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 +8517:\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +8518:\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +8519:\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 +8520:\28anonymous\20namespace\29::DirectMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +8521:\28anonymous\20namespace\29::DirectMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +8522:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29.1 +8523:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29 +8524:\28anonymous\20namespace\29::DefaultPathOp::visitProxies\28std::__2::function\20const&\29\20const +8525:\28anonymous\20namespace\29::DefaultPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8526:\28anonymous\20namespace\29::DefaultPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8527:\28anonymous\20namespace\29::DefaultPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8528:\28anonymous\20namespace\29::DefaultPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8529:\28anonymous\20namespace\29::DefaultPathOp::name\28\29\20const +8530:\28anonymous\20namespace\29::DefaultPathOp::fixedFunctionFlags\28\29\20const +8531:\28anonymous\20namespace\29::DefaultPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8532:\28anonymous\20namespace\29::CircularRRectEffect::onMakeProgramImpl\28\29\20const +8533:\28anonymous\20namespace\29::CircularRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8534:\28anonymous\20namespace\29::CircularRRectEffect::name\28\29\20const +8535:\28anonymous\20namespace\29::CircularRRectEffect::clone\28\29\20const +8536:\28anonymous\20namespace\29::CircularRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +8537:\28anonymous\20namespace\29::CircularRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +8538:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29.1 +8539:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29 +8540:\28anonymous\20namespace\29::CachedTessellationsRec::getCategory\28\29\20const +8541:\28anonymous\20namespace\29::CachedTessellationsRec::bytesUsed\28\29\20const +8542:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29.1 +8543:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29.1 +8544:\28anonymous\20namespace\29::CacheImpl::set\28SkImageFilterCacheKey\20const&\2c\20SkImageFilter\20const*\2c\20skif::FilterResult\20const&\29 +8545:\28anonymous\20namespace\29::CacheImpl::purge\28\29 +8546:\28anonymous\20namespace\29::CacheImpl::purgeByImageFilter\28SkImageFilter\20const*\29 +8547:\28anonymous\20namespace\29::CacheImpl::get\28SkImageFilterCacheKey\20const&\2c\20skif::FilterResult*\29\20const +8548:\28anonymous\20namespace\29::BoundingBoxShader::name\28\29\20const +8549:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8550:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8551:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8552:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29.1 +8553:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29 +8554:\28anonymous\20namespace\29::AAHairlineOp::visitProxies\28std::__2::function\20const&\29\20const +8555:\28anonymous\20namespace\29::AAHairlineOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8556:\28anonymous\20namespace\29::AAHairlineOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8557:\28anonymous\20namespace\29::AAHairlineOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8558:\28anonymous\20namespace\29::AAHairlineOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8559:\28anonymous\20namespace\29::AAHairlineOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8560:\28anonymous\20namespace\29::AAHairlineOp::name\28\29\20const +8561:\28anonymous\20namespace\29::AAHairlineOp::fixedFunctionFlags\28\29\20const +8562:\28anonymous\20namespace\29::AAHairlineOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8563:YuvToRgbaRow +8564:YuvToRgba4444Row +8565:YuvToRgbRow +8566:YuvToRgb565Row +8567:YuvToBgraRow +8568:YuvToBgrRow +8569:YuvToArgbRow +8570:Write_CVT_Stretched +8571:Write_CVT +8572:WebPYuv444ToRgba_C +8573:WebPYuv444ToRgba4444_C +8574:WebPYuv444ToRgb_C +8575:WebPYuv444ToRgb565_C +8576:WebPYuv444ToBgra_C +8577:WebPYuv444ToBgr_C +8578:WebPYuv444ToArgb_C +8579:WebPRescalerImportRowShrink_C +8580:WebPRescalerImportRowExpand_C +8581:WebPRescalerExportRowShrink_C +8582:WebPRescalerExportRowExpand_C +8583:WebPMultRow_C +8584:WebPMultARGBRow_C +8585:WebPConvertRGBA32ToUV_C +8586:WebPConvertARGBToUV_C +8587:WebGLTextureImageGenerator::~WebGLTextureImageGenerator\28\29.1 +8588:WebGLTextureImageGenerator::~WebGLTextureImageGenerator\28\29 +8589:WebGLTextureImageGenerator::generateExternalTexture\28GrRecordingContext*\2c\20skgpu::Mipmapped\29 +8590:Vertish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +8591:Vertish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +8592:VerticalUnfilter_C +8593:VerticalFilter_C +8594:VertState::Triangles\28VertState*\29 +8595:VertState::TrianglesX\28VertState*\29 +8596:VertState::TriangleStrip\28VertState*\29 +8597:VertState::TriangleStripX\28VertState*\29 +8598:VertState::TriangleFan\28VertState*\29 +8599:VertState::TriangleFanX\28VertState*\29 +8600:VR4_C +8601:VP8LTransformColorInverse_C +8602:VP8LPredictor9_C +8603:VP8LPredictor8_C +8604:VP8LPredictor7_C +8605:VP8LPredictor6_C +8606:VP8LPredictor5_C +8607:VP8LPredictor4_C +8608:VP8LPredictor3_C +8609:VP8LPredictor2_C +8610:VP8LPredictor1_C +8611:VP8LPredictor13_C +8612:VP8LPredictor12_C +8613:VP8LPredictor11_C +8614:VP8LPredictor10_C +8615:VP8LPredictor0_C +8616:VP8LConvertBGRAToRGB_C +8617:VP8LConvertBGRAToRGBA_C +8618:VP8LConvertBGRAToRGBA4444_C +8619:VP8LConvertBGRAToRGB565_C +8620:VP8LConvertBGRAToBGR_C +8621:VP8LAddGreenToBlueAndRed_C +8622:VLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +8623:VLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +8624:VL4_C +8625:VFilter8i_C +8626:VFilter8_C +8627:VFilter16i_C +8628:VFilter16_C +8629:VE8uv_C +8630:VE4_C +8631:VE16_C +8632:UpsampleRgbaLinePair_C +8633:UpsampleRgba4444LinePair_C +8634:UpsampleRgbLinePair_C +8635:UpsampleRgb565LinePair_C +8636:UpsampleBgraLinePair_C +8637:UpsampleBgrLinePair_C +8638:UpsampleArgbLinePair_C +8639:UnresolvedCodepoints\28skia::textlayout::Paragraph&\29 +8640:TransformWHT_C +8641:TransformUV_C +8642:TransformTwo_C +8643:TransformDC_C +8644:TransformDCUV_C +8645:TransformAC3_C +8646:ToSVGString\28SkPath\20const&\29 +8647:ToCmds\28SkPath\20const&\29 +8648:TT_Set_MM_Blend +8649:TT_RunIns +8650:TT_Load_Simple_Glyph +8651:TT_Load_Glyph_Header +8652:TT_Load_Composite_Glyph +8653:TT_Get_Var_Design +8654:TT_Get_MM_Blend +8655:TT_Forget_Glyph_Frame +8656:TT_Access_Glyph_Frame +8657:TM8uv_C +8658:TM4_C +8659:TM16_C +8660:Sync +8661:SquareCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +8662:Sprite_D32_S32::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +8663:SkWuffsFrameHolder::onGetFrame\28int\29\20const +8664:SkWuffsCodec::~SkWuffsCodec\28\29.1 +8665:SkWuffsCodec::~SkWuffsCodec\28\29 +8666:SkWuffsCodec::onIncrementalDecode\28int*\29 +8667:SkWuffsCodec::onGetRepetitionCount\28\29 +8668:SkWuffsCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +8669:SkWuffsCodec::onGetFrameInfo\28int\2c\20SkCodec::FrameInfo*\29\20const +8670:SkWuffsCodec::onGetFrameCount\28\29 +8671:SkWuffsCodec::getFrameHolder\28\29\20const +8672:SkWuffsCodec::getEncodedData\28\29\20const +8673:SkWriteICCProfile\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +8674:SkWebpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +8675:SkWebpCodec::~SkWebpCodec\28\29.1 +8676:SkWebpCodec::~SkWebpCodec\28\29 +8677:SkWebpCodec::onGetValidSubset\28SkIRect*\29\20const +8678:SkWebpCodec::onGetRepetitionCount\28\29 +8679:SkWebpCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +8680:SkWebpCodec::onGetFrameInfo\28int\2c\20SkCodec::FrameInfo*\29\20const +8681:SkWebpCodec::onGetFrameCount\28\29 +8682:SkWebpCodec::getFrameHolder\28\29\20const +8683:SkWebpCodec::FrameHolder::~FrameHolder\28\29.1 +8684:SkWebpCodec::FrameHolder::~FrameHolder\28\29 +8685:SkWebpCodec::FrameHolder::onGetFrame\28int\29\20const +8686:SkWeakRefCnt::internal_dispose\28\29\20const +8687:SkWbmpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +8688:SkWbmpCodec::~SkWbmpCodec\28\29.1 +8689:SkWbmpCodec::~SkWbmpCodec\28\29 +8690:SkWbmpCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +8691:SkWbmpCodec::onSkipScanlines\28int\29 +8692:SkWbmpCodec::onRewind\28\29 +8693:SkWbmpCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +8694:SkWbmpCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +8695:SkWbmpCodec::getSampler\28bool\29 +8696:SkWbmpCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +8697:SkVertices::Builder*\20emscripten::internal::operator_new\28SkVertices::VertexMode&&\2c\20int&&\2c\20int&&\2c\20unsigned\20int&&\29 +8698:SkUserTypeface::~SkUserTypeface\28\29.1 +8699:SkUserTypeface::~SkUserTypeface\28\29 +8700:SkUserTypeface::onOpenStream\28int*\29\20const +8701:SkUserTypeface::onGetUPEM\28\29\20const +8702:SkUserTypeface::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +8703:SkUserTypeface::onGetFamilyName\28SkString*\29\20const +8704:SkUserTypeface::onFilterRec\28SkScalerContextRec*\29\20const +8705:SkUserTypeface::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +8706:SkUserTypeface::onCountGlyphs\28\29\20const +8707:SkUserTypeface::onComputeBounds\28SkRect*\29\20const +8708:SkUserTypeface::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +8709:SkUserTypeface::getGlyphToUnicodeMap\28int*\29\20const +8710:SkUserScalerContext::~SkUserScalerContext\28\29 +8711:SkUserScalerContext::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +8712:SkUserScalerContext::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +8713:SkUserScalerContext::generateImage\28SkGlyph\20const&\2c\20void*\29 +8714:SkUserScalerContext::generateFontMetrics\28SkFontMetrics*\29 +8715:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::~DrawableMatrixWrapper\28\29.1 +8716:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::~DrawableMatrixWrapper\28\29 +8717:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onGetBounds\28\29 +8718:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onDraw\28SkCanvas*\29 +8719:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29::DrawableMatrixWrapper::onApproximateBytesUsed\28\29 +8720:SkUserScalerContext::generateDrawable\28SkGlyph\20const&\29 +8721:SkUnicode_client::~SkUnicode_client\28\29.1 +8722:SkUnicode_client::~SkUnicode_client\28\29 +8723:SkUnicode_client::toUpper\28SkString\20const&\2c\20char\20const*\29 +8724:SkUnicode_client::toUpper\28SkString\20const&\29 +8725:SkUnicode_client::reorderVisual\28unsigned\20char\20const*\2c\20int\2c\20int*\29 +8726:SkUnicode_client::makeBreakIterator\28char\20const*\2c\20SkUnicode::BreakType\29 +8727:SkUnicode_client::makeBreakIterator\28SkUnicode::BreakType\29 +8728:SkUnicode_client::makeBidiIterator\28unsigned\20short\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +8729:SkUnicode_client::makeBidiIterator\28char\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +8730:SkUnicode_client::getWords\28char\20const*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +8731:SkUnicode_client::getBidiRegions\28char\20const*\2c\20int\2c\20SkUnicode::TextDirection\2c\20std::__2::vector>*\29 +8732:SkUnicode_client::computeCodeUnitFlags\28char16_t*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +8733:SkUnicode_client::computeCodeUnitFlags\28char*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +8734:SkUnicodeHardCodedCharProperties::isWhitespace\28int\29 +8735:SkUnicodeHardCodedCharProperties::isTabulation\28int\29 +8736:SkUnicodeHardCodedCharProperties::isSpace\28int\29 +8737:SkUnicodeHardCodedCharProperties::isIdeographic\28int\29 +8738:SkUnicodeHardCodedCharProperties::isHardBreak\28int\29 +8739:SkUnicodeHardCodedCharProperties::isControl\28int\29 +8740:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29.1 +8741:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29 +8742:SkUnicodeBidiRunIterator::endOfCurrentRun\28\29\20const +8743:SkUnicodeBidiRunIterator::currentLevel\28\29\20const +8744:SkUnicodeBidiRunIterator::consume\28\29 +8745:SkUnicodeBidiRunIterator::atEnd\28\29\20const +8746:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29.1 +8747:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29 +8748:SkTypeface_FreeTypeStream::onOpenStream\28int*\29\20const +8749:SkTypeface_FreeTypeStream::onMakeFontData\28\29\20const +8750:SkTypeface_FreeTypeStream::onMakeClone\28SkFontArguments\20const&\29\20const +8751:SkTypeface_FreeTypeStream::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +8752:SkTypeface_FreeType::onGlyphMaskNeedsCurrentColor\28\29\20const +8753:SkTypeface_FreeType::onGetVariationDesignPosition\28SkFontArguments::VariationPosition::Coordinate*\2c\20int\29\20const +8754:SkTypeface_FreeType::onGetVariationDesignParameters\28SkFontParameters::Variation::Axis*\2c\20int\29\20const +8755:SkTypeface_FreeType::onGetUPEM\28\29\20const +8756:SkTypeface_FreeType::onGetTableTags\28unsigned\20int*\29\20const +8757:SkTypeface_FreeType::onGetTableData\28unsigned\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20void*\29\20const +8758:SkTypeface_FreeType::onGetPostScriptName\28SkString*\29\20const +8759:SkTypeface_FreeType::onGetKerningPairAdjustments\28unsigned\20short\20const*\2c\20int\2c\20int*\29\20const +8760:SkTypeface_FreeType::onGetAdvancedMetrics\28\29\20const +8761:SkTypeface_FreeType::onFilterRec\28SkScalerContextRec*\29\20const +8762:SkTypeface_FreeType::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +8763:SkTypeface_FreeType::onCreateFamilyNameIterator\28\29\20const +8764:SkTypeface_FreeType::onCountGlyphs\28\29\20const +8765:SkTypeface_FreeType::onCopyTableData\28unsigned\20int\29\20const +8766:SkTypeface_FreeType::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +8767:SkTypeface_FreeType::getPostScriptGlyphNames\28SkString*\29\20const +8768:SkTypeface_FreeType::getGlyphToUnicodeMap\28int*\29\20const +8769:SkTypeface_Empty::~SkTypeface_Empty\28\29 +8770:SkTypeface_Custom::~SkTypeface_Custom\28\29.1 +8771:SkTypeface_Custom::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +8772:SkTypeface::onCopyTableData\28unsigned\20int\29\20const +8773:SkTypeface::onComputeBounds\28SkRect*\29\20const +8774:SkTrimPE::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +8775:SkTrimPE::getTypeName\28\29\20const +8776:SkTriColorShader::type\28\29\20const +8777:SkTriColorShader::isOpaque\28\29\20const +8778:SkTriColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +8779:SkTransformShader::type\28\29\20const +8780:SkTransformShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +8781:SkTQuad::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +8782:SkTQuad::setBounds\28SkDRect*\29\20const +8783:SkTQuad::ptAtT\28double\29\20const +8784:SkTQuad::make\28SkArenaAlloc&\29\20const +8785:SkTQuad::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +8786:SkTQuad::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +8787:SkTQuad::dxdyAtT\28double\29\20const +8788:SkTQuad::debugInit\28\29 +8789:SkTCubic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +8790:SkTCubic::setBounds\28SkDRect*\29\20const +8791:SkTCubic::ptAtT\28double\29\20const +8792:SkTCubic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +8793:SkTCubic::make\28SkArenaAlloc&\29\20const +8794:SkTCubic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +8795:SkTCubic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +8796:SkTCubic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +8797:SkTCubic::dxdyAtT\28double\29\20const +8798:SkTCubic::debugInit\28\29 +8799:SkTCubic::controlsInside\28\29\20const +8800:SkTCubic::collapsed\28\29\20const +8801:SkTConic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +8802:SkTConic::setBounds\28SkDRect*\29\20const +8803:SkTConic::ptAtT\28double\29\20const +8804:SkTConic::make\28SkArenaAlloc&\29\20const +8805:SkTConic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +8806:SkTConic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +8807:SkTConic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +8808:SkTConic::dxdyAtT\28double\29\20const +8809:SkTConic::debugInit\28\29 +8810:SkSwizzler::onSetSampleX\28int\29 +8811:SkSwizzler::fillWidth\28\29\20const +8812:SkSweepGradient::getTypeName\28\29\20const +8813:SkSweepGradient::flatten\28SkWriteBuffer&\29\20const +8814:SkSweepGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +8815:SkSweepGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +8816:SkSurface_Raster::~SkSurface_Raster\28\29.1 +8817:SkSurface_Raster::~SkSurface_Raster\28\29 +8818:SkSurface_Raster::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +8819:SkSurface_Raster::onRestoreBackingMutability\28\29 +8820:SkSurface_Raster::onNewSurface\28SkImageInfo\20const&\29 +8821:SkSurface_Raster::onNewImageSnapshot\28SkIRect\20const*\29 +8822:SkSurface_Raster::onNewCanvas\28\29 +8823:SkSurface_Raster::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +8824:SkSurface_Raster::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +8825:SkSurface_Raster::imageInfo\28\29\20const +8826:SkSurface_Ganesh::~SkSurface_Ganesh\28\29.1 +8827:SkSurface_Ganesh::~SkSurface_Ganesh\28\29 +8828:SkSurface_Ganesh::replaceBackendTexture\28GrBackendTexture\20const&\2c\20GrSurfaceOrigin\2c\20SkSurface::ContentChangeMode\2c\20void\20\28*\29\28void*\29\2c\20void*\29 +8829:SkSurface_Ganesh::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +8830:SkSurface_Ganesh::onWait\28int\2c\20GrBackendSemaphore\20const*\2c\20bool\29 +8831:SkSurface_Ganesh::onNewSurface\28SkImageInfo\20const&\29 +8832:SkSurface_Ganesh::onNewImageSnapshot\28SkIRect\20const*\29 +8833:SkSurface_Ganesh::onNewCanvas\28\29 +8834:SkSurface_Ganesh::onIsCompatible\28GrSurfaceCharacterization\20const&\29\20const +8835:SkSurface_Ganesh::onGetRecordingContext\28\29\20const +8836:SkSurface_Ganesh::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +8837:SkSurface_Ganesh::onDiscard\28\29 +8838:SkSurface_Ganesh::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +8839:SkSurface_Ganesh::onCharacterize\28GrSurfaceCharacterization*\29\20const +8840:SkSurface_Ganesh::onCapabilities\28\29 +8841: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 +8842: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 +8843:SkSurface_Ganesh::imageInfo\28\29\20const +8844: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 +8845:SkSurface::imageInfo\28\29\20const +8846:SkSurface::height\28\29\20const +8847:SkStrikeCache::~SkStrikeCache\28\29.1 +8848:SkStrikeCache::~SkStrikeCache\28\29 +8849:SkStrikeCache::findOrCreateScopedStrike\28SkStrikeSpec\20const&\29 +8850:SkStrike::~SkStrike\28\29.1 +8851:SkStrike::~SkStrike\28\29 +8852:SkStrike::strikePromise\28\29 +8853:SkStrike::roundingSpec\28\29\20const +8854:SkStrike::prepareForPath\28SkGlyph*\29 +8855:SkStrike::prepareForImage\28SkGlyph*\29 +8856:SkStrike::prepareForDrawable\28SkGlyph*\29 +8857:SkStrike::getDescriptor\28\29\20const +8858:SkSpriteBlitter_Memcpy::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +8859:SkSpriteBlitter::~SkSpriteBlitter\28\29.1 +8860:SkSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +8861:SkSpriteBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +8862:SkSpriteBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +8863:SkSpriteBlitter::blitH\28int\2c\20int\2c\20int\29 +8864:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29.1 +8865:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29 +8866:SkSpecialImage_Raster::onMakeBackingStoreSubset\28SkIRect\20const&\29\20const +8867:SkSpecialImage_Raster::getSize\28\29\20const +8868:SkSpecialImage_Raster::backingStoreDimensions\28\29\20const +8869:SkSpecialImage_Raster::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +8870:SkSpecialImage_Raster::asImage\28\29\20const +8871:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29.1 +8872:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29 +8873:SkSpecialImage_Gpu::onMakeBackingStoreSubset\28SkIRect\20const&\29\20const +8874:SkSpecialImage_Gpu::getSize\28\29\20const +8875:SkSpecialImage_Gpu::backingStoreDimensions\28\29\20const +8876:SkSpecialImage_Gpu::asImage\28\29\20const +8877:SkSpecialImage::~SkSpecialImage\28\29 +8878:SkSpecialImage::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +8879:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29.1 +8880:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29 +8881:SkShaper::TrivialLanguageRunIterator::currentLanguage\28\29\20const +8882:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29.1 +8883:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29 +8884:SkShaper::TrivialBiDiRunIterator::currentLevel\28\29\20const +8885:SkShaderBlurAlgorithm::maxSigma\28\29\20const +8886:SkShaderBlurAlgorithm::blur\28SkSize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +8887:SkScan::HairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8888:SkScan::HairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8889:SkScan::HairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8890:SkScan::AntiHairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8891:SkScan::AntiHairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8892:SkScan::AntiHairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8893:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +8894:SkScalingCodec::onGetScaledDimensions\28float\29\20const +8895:SkScalingCodec::onDimensionsSupported\28SkISize\20const&\29 +8896:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29.1 +8897:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29 +8898:SkScalerContext_FreeType::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +8899:SkScalerContext_FreeType::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +8900:SkScalerContext_FreeType::generateImage\28SkGlyph\20const&\2c\20void*\29 +8901:SkScalerContext_FreeType::generateFontMetrics\28SkFontMetrics*\29 +8902:SkScalerContext_FreeType::generateDrawable\28SkGlyph\20const&\29 +8903:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::~SkScalerContext_Empty\28\29 +8904:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +8905:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +8906:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateFontMetrics\28SkFontMetrics*\29 +8907:SkSampledCodec::onGetSampledDimensions\28int\29\20const +8908:SkSampledCodec::onGetAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +8909:SkSRGBColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +8910:SkSRGBColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +8911: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 +8912: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 +8913: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 +8914: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 +8915:SkSL::remove_break_statements\28std::__2::unique_ptr>&\29::RemoveBreaksWriter::visitStatementPtr\28std::__2::unique_ptr>&\29 +8916:SkSL::hoist_vardecl_symbols_into_outer_scope\28SkSL::Context\20const&\2c\20SkSL::Block\20const&\2c\20SkSL::SymbolTable*\2c\20SkSL::SymbolTable*\29::SymbolHoister::visitStatement\28SkSL::Statement\20const&\29 +8917:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29.1 +8918:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29 +8919:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29.1 +8920:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29 +8921:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +8922:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitExpressionPtr\28std::__2::unique_ptr>&\29 +8923:SkSL::count_returns_at_end_of_control_flow\28SkSL::FunctionDefinition\20const&\29::CountReturnsAtEndOfControlFlow::visitStatement\28SkSL::Statement\20const&\29 +8924:SkSL::\28anonymous\20namespace\29::VariableWriteVisitor::visitExpression\28SkSL::Expression\20const&\29 +8925:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8926:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitExpression\28SkSL::Expression\20const&\29 +8927:SkSL::\28anonymous\20namespace\29::ReturnsNonOpaqueColorVisitor::visitStatement\28SkSL::Statement\20const&\29 +8928:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitStatement\28SkSL::Statement\20const&\29 +8929:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8930:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitStatement\28SkSL::Statement\20const&\29 +8931:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitStatement\28SkSL::Statement\20const&\29 +8932:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8933:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitExpression\28SkSL::Expression\20const&\29 +8934:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +8935:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +8936:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29.1 +8937:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29 +8938:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitExpression\28SkSL::Expression\20const&\29 +8939:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29.1 +8940:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29 +8941:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitStatement\28SkSL::Statement\20const&\29 +8942:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitExpression\28SkSL::Expression\20const&\29 +8943:SkSL::VectorType::isAllowedInUniform\28SkSL::Position*\29\20const +8944:SkSL::VectorType::isAllowedInES2\28\29\20const +8945:SkSL::VariableReference::clone\28SkSL::Position\29\20const +8946:SkSL::Variable::~Variable\28\29.1 +8947:SkSL::Variable::~Variable\28\29 +8948:SkSL::Variable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +8949:SkSL::Variable::mangledName\28\29\20const +8950:SkSL::Variable::layout\28\29\20const +8951:SkSL::Variable::description\28\29\20const +8952:SkSL::VarDeclaration::~VarDeclaration\28\29.1 +8953:SkSL::VarDeclaration::~VarDeclaration\28\29 +8954:SkSL::VarDeclaration::description\28\29\20const +8955:SkSL::TypeReference::clone\28SkSL::Position\29\20const +8956:SkSL::Type::minimumValue\28\29\20const +8957:SkSL::Type::maximumValue\28\29\20const +8958:SkSL::Type::isAllowedInUniform\28SkSL::Position*\29\20const +8959:SkSL::Type::fields\28\29\20const +8960:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29.1 +8961:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29 +8962:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::visitStatementPtr\28std::__2::unique_ptr>&\29 +8963:SkSL::Tracer::var\28int\2c\20int\29 +8964:SkSL::Tracer::scope\28int\29 +8965:SkSL::Tracer::line\28int\29 +8966:SkSL::Tracer::exit\28int\29 +8967:SkSL::Tracer::enter\28int\29 +8968:SkSL::TextureType::textureAccess\28\29\20const +8969:SkSL::TextureType::isMultisampled\28\29\20const +8970:SkSL::TextureType::isDepth\28\29\20const +8971:SkSL::TextureType::isArrayedTexture\28\29\20const +8972:SkSL::TernaryExpression::~TernaryExpression\28\29.1 +8973:SkSL::TernaryExpression::~TernaryExpression\28\29 +8974:SkSL::TernaryExpression::description\28SkSL::OperatorPrecedence\29\20const +8975:SkSL::TernaryExpression::clone\28SkSL::Position\29\20const +8976:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression&\29 +8977:SkSL::Swizzle::description\28SkSL::OperatorPrecedence\29\20const +8978:SkSL::Swizzle::clone\28SkSL::Position\29\20const +8979:SkSL::SwitchStatement::description\28\29\20const +8980:SkSL::SwitchCase::description\28\29\20const +8981:SkSL::StructType::slotType\28unsigned\20long\29\20const +8982:SkSL::StructType::isOrContainsUnsizedArray\28\29\20const +8983:SkSL::StructType::isOrContainsAtomic\28\29\20const +8984:SkSL::StructType::isOrContainsArray\28\29\20const +8985:SkSL::StructType::isInterfaceBlock\28\29\20const +8986:SkSL::StructType::isBuiltin\28\29\20const +8987:SkSL::StructType::isAllowedInUniform\28SkSL::Position*\29\20const +8988:SkSL::StructType::isAllowedInES2\28\29\20const +8989:SkSL::StructType::fields\28\29\20const +8990:SkSL::StructDefinition::description\28\29\20const +8991:SkSL::StringStream::~StringStream\28\29.1 +8992:SkSL::StringStream::~StringStream\28\29 +8993:SkSL::StringStream::write\28void\20const*\2c\20unsigned\20long\29 +8994:SkSL::StringStream::writeText\28char\20const*\29 +8995:SkSL::StringStream::write8\28unsigned\20char\29 +8996:SkSL::SingleArgumentConstructor::~SingleArgumentConstructor\28\29 +8997:SkSL::Setting::description\28SkSL::OperatorPrecedence\29\20const +8998:SkSL::Setting::clone\28SkSL::Position\29\20const +8999:SkSL::ScalarType::priority\28\29\20const +9000:SkSL::ScalarType::numberKind\28\29\20const +9001:SkSL::ScalarType::minimumValue\28\29\20const +9002:SkSL::ScalarType::maximumValue\28\29\20const +9003:SkSL::ScalarType::isAllowedInUniform\28SkSL::Position*\29\20const +9004:SkSL::ScalarType::isAllowedInES2\28\29\20const +9005:SkSL::ScalarType::bitWidth\28\29\20const +9006:SkSL::SamplerType::textureAccess\28\29\20const +9007:SkSL::SamplerType::isMultisampled\28\29\20const +9008:SkSL::SamplerType::isDepth\28\29\20const +9009:SkSL::SamplerType::isArrayedTexture\28\29\20const +9010:SkSL::SamplerType::dimensions\28\29\20const +9011:SkSL::ReturnStatement::description\28\29\20const +9012:SkSL::RP::VariableLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9013:SkSL::RP::VariableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9014:SkSL::RP::VariableLValue::isWritable\28\29\20const +9015:SkSL::RP::VariableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +9016:SkSL::RP::UnownedLValueSlice::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9017:SkSL::RP::UnownedLValueSlice::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9018:SkSL::RP::UnownedLValueSlice::fixedSlotRange\28SkSL::RP::Generator*\29 +9019:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29.1 +9020:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29 +9021:SkSL::RP::SwizzleLValue::swizzle\28\29 +9022:SkSL::RP::SwizzleLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9023:SkSL::RP::SwizzleLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9024:SkSL::RP::SwizzleLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +9025:SkSL::RP::ScratchLValue::~ScratchLValue\28\29.1 +9026:SkSL::RP::ScratchLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9027:SkSL::RP::ScratchLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +9028:SkSL::RP::LValueSlice::~LValueSlice\28\29.1 +9029:SkSL::RP::LValueSlice::~LValueSlice\28\29 +9030:SkSL::RP::LValue::~LValue\28\29.1 +9031:SkSL::RP::ImmutableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9032:SkSL::RP::ImmutableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +9033:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29.1 +9034:SkSL::RP::DynamicIndexLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9035:SkSL::RP::DynamicIndexLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +9036:SkSL::RP::DynamicIndexLValue::isWritable\28\29\20const +9037:SkSL::RP::DynamicIndexLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +9038:SkSL::ProgramVisitor::visitStatementPtr\28std::__2::unique_ptr>\20const&\29 +9039:SkSL::ProgramVisitor::visitExpressionPtr\28std::__2::unique_ptr>\20const&\29 +9040:SkSL::PrefixExpression::description\28SkSL::OperatorPrecedence\29\20const +9041:SkSL::PrefixExpression::clone\28SkSL::Position\29\20const +9042:SkSL::PostfixExpression::description\28SkSL::OperatorPrecedence\29\20const +9043:SkSL::PostfixExpression::clone\28SkSL::Position\29\20const +9044:SkSL::Poison::description\28SkSL::OperatorPrecedence\29\20const +9045:SkSL::Poison::clone\28SkSL::Position\29\20const +9046:SkSL::PipelineStage::Callbacks::getMainName\28\29 +9047:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29.1 +9048:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29 +9049:SkSL::Parser::Checkpoint::ForwardingErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +9050:SkSL::Nop::description\28\29\20const +9051:SkSL::MultiArgumentConstructor::~MultiArgumentConstructor\28\29 +9052:SkSL::ModifiersDeclaration::description\28\29\20const +9053:SkSL::MethodReference::description\28SkSL::OperatorPrecedence\29\20const +9054:SkSL::MethodReference::clone\28SkSL::Position\29\20const +9055:SkSL::MatrixType::slotCount\28\29\20const +9056:SkSL::MatrixType::rows\28\29\20const +9057:SkSL::MatrixType::isAllowedInES2\28\29\20const +9058:SkSL::LiteralType::minimumValue\28\29\20const +9059:SkSL::LiteralType::maximumValue\28\29\20const +9060:SkSL::Literal::getConstantValue\28int\29\20const +9061:SkSL::Literal::description\28SkSL::OperatorPrecedence\29\20const +9062:SkSL::Literal::compareConstant\28SkSL::Expression\20const&\29\20const +9063:SkSL::Literal::clone\28SkSL::Position\29\20const +9064:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_uintBitsToFloat\28double\2c\20double\2c\20double\29 +9065:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_trunc\28double\2c\20double\2c\20double\29 +9066:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tanh\28double\2c\20double\2c\20double\29 +9067:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tan\28double\2c\20double\2c\20double\29 +9068:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_step\28double\2c\20double\2c\20double\29 +9069:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sqrt\28double\2c\20double\2c\20double\29 +9070:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_smoothstep\28double\2c\20double\2c\20double\29 +9071:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sinh\28double\2c\20double\2c\20double\29 +9072:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sin\28double\2c\20double\2c\20double\29 +9073:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_saturate\28double\2c\20double\2c\20double\29 +9074:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_radians\28double\2c\20double\2c\20double\29 +9075:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_pow\28double\2c\20double\2c\20double\29 +9076:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mod\28double\2c\20double\2c\20double\29 +9077:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mix\28double\2c\20double\2c\20double\29 +9078:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_min\28double\2c\20double\2c\20double\29 +9079:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_max\28double\2c\20double\2c\20double\29 +9080:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_matrixCompMult\28double\2c\20double\2c\20double\29 +9081:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log\28double\2c\20double\2c\20double\29 +9082:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log2\28double\2c\20double\2c\20double\29 +9083:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_inversesqrt\28double\2c\20double\2c\20double\29 +9084:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_intBitsToFloat\28double\2c\20double\2c\20double\29 +9085:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fract\28double\2c\20double\2c\20double\29 +9086:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fma\28double\2c\20double\2c\20double\29 +9087:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floor\28double\2c\20double\2c\20double\29 +9088:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToUint\28double\2c\20double\2c\20double\29 +9089:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToInt\28double\2c\20double\2c\20double\29 +9090:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp\28double\2c\20double\2c\20double\29 +9091:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp2\28double\2c\20double\2c\20double\29 +9092:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_degrees\28double\2c\20double\2c\20double\29 +9093:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cosh\28double\2c\20double\2c\20double\29 +9094:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cos\28double\2c\20double\2c\20double\29 +9095:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_clamp\28double\2c\20double\2c\20double\29 +9096:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_ceil\28double\2c\20double\2c\20double\29 +9097:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atanh\28double\2c\20double\2c\20double\29 +9098:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan\28double\2c\20double\2c\20double\29 +9099:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan2\28double\2c\20double\2c\20double\29 +9100:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asinh\28double\2c\20double\2c\20double\29 +9101:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asin\28double\2c\20double\2c\20double\29 +9102:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acosh\28double\2c\20double\2c\20double\29 +9103:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acos\28double\2c\20double\2c\20double\29 +9104:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_abs\28double\2c\20double\2c\20double\29 +9105:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_notEqual\28double\2c\20double\29 +9106:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThan\28double\2c\20double\29 +9107:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThanEqual\28double\2c\20double\29 +9108:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThan\28double\2c\20double\29 +9109:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThanEqual\28double\2c\20double\29 +9110:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_equal\28double\2c\20double\29 +9111:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_any\28double\2c\20double\2c\20double\29 +9112:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_all\28double\2c\20double\2c\20double\29 +9113:SkSL::InterfaceBlock::~InterfaceBlock\28\29.1 +9114:SkSL::InterfaceBlock::description\28\29\20const +9115:SkSL::IndexExpression::~IndexExpression\28\29.1 +9116:SkSL::IndexExpression::~IndexExpression\28\29 +9117:SkSL::IndexExpression::description\28SkSL::OperatorPrecedence\29\20const +9118:SkSL::IndexExpression::clone\28SkSL::Position\29\20const +9119:SkSL::IfStatement::~IfStatement\28\29.1 +9120:SkSL::IfStatement::~IfStatement\28\29 +9121:SkSL::IfStatement::description\28\29\20const +9122:SkSL::GlobalVarDeclaration::description\28\29\20const +9123:SkSL::GenericType::slotType\28unsigned\20long\29\20const +9124:SkSL::GenericType::coercibleTypes\28\29\20const +9125:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29.1 +9126:SkSL::FunctionReference::description\28SkSL::OperatorPrecedence\29\20const +9127:SkSL::FunctionReference::clone\28SkSL::Position\29\20const +9128:SkSL::FunctionPrototype::description\28\29\20const +9129:SkSL::FunctionDefinition::description\28\29\20const +9130: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 +9131: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 +9132:SkSL::FunctionCall::description\28SkSL::OperatorPrecedence\29\20const +9133:SkSL::FunctionCall::clone\28SkSL::Position\29\20const +9134:SkSL::ForStatement::~ForStatement\28\29.1 +9135:SkSL::ForStatement::~ForStatement\28\29 +9136:SkSL::ForStatement::description\28\29\20const +9137:SkSL::FieldSymbol::description\28\29\20const +9138:SkSL::FieldAccess::clone\28SkSL::Position\29\20const +9139:SkSL::Extension::description\28\29\20const +9140:SkSL::ExtendedVariable::~ExtendedVariable\28\29.1 +9141:SkSL::ExtendedVariable::~ExtendedVariable\28\29 +9142:SkSL::ExtendedVariable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +9143:SkSL::ExtendedVariable::mangledName\28\29\20const +9144:SkSL::ExtendedVariable::layout\28\29\20const +9145:SkSL::ExtendedVariable::interfaceBlock\28\29\20const +9146:SkSL::ExtendedVariable::detachDeadInterfaceBlock\28\29 +9147:SkSL::ExpressionStatement::description\28\29\20const +9148:SkSL::Expression::getConstantValue\28int\29\20const +9149:SkSL::EmptyExpression::description\28SkSL::OperatorPrecedence\29\20const +9150:SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +9151:SkSL::DoStatement::description\28\29\20const +9152:SkSL::DiscardStatement::description\28\29\20const +9153:SkSL::DebugTracePriv::~DebugTracePriv\28\29.1 +9154:SkSL::DebugTracePriv::writeTrace\28SkWStream*\29\20const +9155:SkSL::DebugTracePriv::dump\28SkWStream*\29\20const +9156:SkSL::CountReturnsWithLimit::visitStatement\28SkSL::Statement\20const&\29 +9157:SkSL::ContinueStatement::description\28\29\20const +9158:SkSL::ConstructorStruct::clone\28SkSL::Position\29\20const +9159:SkSL::ConstructorSplat::getConstantValue\28int\29\20const +9160:SkSL::ConstructorSplat::clone\28SkSL::Position\29\20const +9161:SkSL::ConstructorScalarCast::clone\28SkSL::Position\29\20const +9162:SkSL::ConstructorMatrixResize::getConstantValue\28int\29\20const +9163:SkSL::ConstructorMatrixResize::clone\28SkSL::Position\29\20const +9164:SkSL::ConstructorDiagonalMatrix::getConstantValue\28int\29\20const +9165:SkSL::ConstructorDiagonalMatrix::clone\28SkSL::Position\29\20const +9166:SkSL::ConstructorCompoundCast::clone\28SkSL::Position\29\20const +9167:SkSL::ConstructorCompound::clone\28SkSL::Position\29\20const +9168:SkSL::ConstructorArrayCast::clone\28SkSL::Position\29\20const +9169:SkSL::ConstructorArray::clone\28SkSL::Position\29\20const +9170:SkSL::Compiler::CompilerErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +9171:SkSL::CodeGenerator::~CodeGenerator\28\29 +9172:SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +9173:SkSL::ChildCall::clone\28SkSL::Position\29\20const +9174:SkSL::BreakStatement::description\28\29\20const +9175:SkSL::Block::~Block\28\29.1 +9176:SkSL::Block::~Block\28\29 +9177:SkSL::Block::isEmpty\28\29\20const +9178:SkSL::Block::description\28\29\20const +9179:SkSL::BinaryExpression::~BinaryExpression\28\29.1 +9180:SkSL::BinaryExpression::~BinaryExpression\28\29 +9181:SkSL::BinaryExpression::description\28SkSL::OperatorPrecedence\29\20const +9182:SkSL::BinaryExpression::clone\28SkSL::Position\29\20const +9183:SkSL::ArrayType::slotType\28unsigned\20long\29\20const +9184:SkSL::ArrayType::slotCount\28\29\20const +9185:SkSL::ArrayType::isUnsizedArray\28\29\20const +9186:SkSL::ArrayType::isOrContainsUnsizedArray\28\29\20const +9187:SkSL::ArrayType::isOrContainsAtomic\28\29\20const +9188:SkSL::ArrayType::isBuiltin\28\29\20const +9189:SkSL::ArrayType::isAllowedInUniform\28SkSL::Position*\29\20const +9190:SkSL::AnyConstructor::getConstantValue\28int\29\20const +9191:SkSL::AnyConstructor::description\28SkSL::OperatorPrecedence\29\20const +9192:SkSL::AnyConstructor::compareConstant\28SkSL::Expression\20const&\29\20const +9193:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29::IsDynamicallyUniformExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +9194:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29::IsCompileTimeConstantVisitor::visitExpression\28SkSL::Expression\20const&\29 +9195:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29::HasSideEffectsVisitor::visitExpression\28SkSL::Expression\20const&\29 +9196:SkSL::Analysis::ContainsVariable\28SkSL::Expression\20const&\2c\20SkSL::Variable\20const&\29::ContainsVariableVisitor::visitExpression\28SkSL::Expression\20const&\29 +9197:SkSL::Analysis::ContainsRTAdjust\28SkSL::Expression\20const&\29::ContainsRTAdjustVisitor::visitExpression\28SkSL::Expression\20const&\29 +9198:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29.1 +9199:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29 +9200:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitStatement\28SkSL::Statement\20const&\29 +9201:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitExpression\28SkSL::Expression\20const&\29 +9202:SkSL::AliasType::textureAccess\28\29\20const +9203:SkSL::AliasType::slotType\28unsigned\20long\29\20const +9204:SkSL::AliasType::slotCount\28\29\20const +9205:SkSL::AliasType::rows\28\29\20const +9206:SkSL::AliasType::priority\28\29\20const +9207:SkSL::AliasType::isVector\28\29\20const +9208:SkSL::AliasType::isUnsizedArray\28\29\20const +9209:SkSL::AliasType::isStruct\28\29\20const +9210:SkSL::AliasType::isScalar\28\29\20const +9211:SkSL::AliasType::isMultisampled\28\29\20const +9212:SkSL::AliasType::isMatrix\28\29\20const +9213:SkSL::AliasType::isLiteral\28\29\20const +9214:SkSL::AliasType::isInterfaceBlock\28\29\20const +9215:SkSL::AliasType::isDepth\28\29\20const +9216:SkSL::AliasType::isArrayedTexture\28\29\20const +9217:SkSL::AliasType::isArray\28\29\20const +9218:SkSL::AliasType::dimensions\28\29\20const +9219:SkSL::AliasType::componentType\28\29\20const +9220:SkSL::AliasType::columns\28\29\20const +9221:SkSL::AliasType::coercibleTypes\28\29\20const +9222:SkRuntimeShader::~SkRuntimeShader\28\29.1 +9223:SkRuntimeShader::type\28\29\20const +9224:SkRuntimeShader::isOpaque\28\29\20const +9225:SkRuntimeShader::getTypeName\28\29\20const +9226:SkRuntimeShader::flatten\28SkWriteBuffer&\29\20const +9227:SkRuntimeShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9228:SkRuntimeEffect::~SkRuntimeEffect\28\29.1 +9229:SkRuntimeEffect::MakeFromSource\28SkString\2c\20SkRuntimeEffect::Options\20const&\2c\20SkSL::ProgramKind\29 +9230:SkRuntimeColorFilter::~SkRuntimeColorFilter\28\29.1 +9231:SkRuntimeColorFilter::~SkRuntimeColorFilter\28\29 +9232:SkRuntimeColorFilter::onIsAlphaUnchanged\28\29\20const +9233:SkRuntimeColorFilter::getTypeName\28\29\20const +9234:SkRuntimeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9235:SkRuntimeBlender::~SkRuntimeBlender\28\29.1 +9236:SkRuntimeBlender::~SkRuntimeBlender\28\29 +9237:SkRuntimeBlender::onAppendStages\28SkStageRec\20const&\29\20const +9238:SkRuntimeBlender::getTypeName\28\29\20const +9239:SkRgnClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9240:SkRgnClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9241:SkRgnClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +9242:SkRgnClipBlitter::blitH\28int\2c\20int\2c\20int\29 +9243:SkRgnClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +9244:SkRgnClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +9245:SkRgnBuilder::~SkRgnBuilder\28\29.1 +9246:SkRgnBuilder::blitH\28int\2c\20int\2c\20int\29 +9247:SkResourceCache::SetTotalByteLimit\28unsigned\20long\29 +9248:SkResourceCache::GetTotalBytesUsed\28\29 +9249:SkResourceCache::GetTotalByteLimit\28\29 +9250: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 +9251: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 +9252: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 +9253: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 +9254:SkRefCntSet::~SkRefCntSet\28\29.1 +9255:SkRefCntSet::incPtr\28void*\29 +9256:SkRefCntSet::decPtr\28void*\29 +9257:SkRectClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9258:SkRectClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9259:SkRectClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +9260:SkRectClipBlitter::blitH\28int\2c\20int\2c\20int\29 +9261:SkRectClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +9262:SkRectClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +9263:SkRecorder::~SkRecorder\28\29.1 +9264:SkRecorder::~SkRecorder\28\29 +9265:SkRecorder::willSave\28\29 +9266:SkRecorder::onResetClip\28\29 +9267:SkRecorder::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9268:SkRecorder::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9269:SkRecorder::onDrawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +9270:SkRecorder::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +9271:SkRecorder::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +9272:SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +9273:SkRecorder::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +9274:SkRecorder::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +9275:SkRecorder::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +9276:SkRecorder::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +9277:SkRecorder::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9278:SkRecorder::onDrawPaint\28SkPaint\20const&\29 +9279:SkRecorder::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +9280:SkRecorder::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +9281:SkRecorder::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9282:SkRecorder::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +9283:SkRecorder::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +9284:SkRecorder::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +9285:SkRecorder::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +9286:SkRecorder::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9287:SkRecorder::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +9288:SkRecorder::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +9289:SkRecorder::onDrawBehind\28SkPaint\20const&\29 +9290: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 +9291:SkRecorder::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +9292:SkRecorder::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +9293:SkRecorder::onDoSaveBehind\28SkRect\20const*\29 +9294:SkRecorder::onClipShader\28sk_sp\2c\20SkClipOp\29 +9295:SkRecorder::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +9296:SkRecorder::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9297:SkRecorder::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9298:SkRecorder::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9299:SkRecorder::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +9300:SkRecorder::didTranslate\28float\2c\20float\29 +9301:SkRecorder::didSetM44\28SkM44\20const&\29 +9302:SkRecorder::didScale\28float\2c\20float\29 +9303:SkRecorder::didRestore\28\29 +9304:SkRecorder::didConcat44\28SkM44\20const&\29 +9305:SkRecordedDrawable::~SkRecordedDrawable\28\29.1 +9306:SkRecordedDrawable::~SkRecordedDrawable\28\29 +9307:SkRecordedDrawable::onMakePictureSnapshot\28\29 +9308:SkRecordedDrawable::onGetBounds\28\29 +9309:SkRecordedDrawable::onDraw\28SkCanvas*\29 +9310:SkRecordedDrawable::onApproximateBytesUsed\28\29 +9311:SkRecordedDrawable::getTypeName\28\29\20const +9312:SkRecordedDrawable::flatten\28SkWriteBuffer&\29\20const +9313:SkRecord::~SkRecord\28\29.1 +9314:SkRecord::~SkRecord\28\29 +9315:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29.1 +9316:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29 +9317:SkRasterPipelineSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +9318:SkRasterPipelineSpriteBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9319:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29.1 +9320:SkRasterPipelineBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +9321:SkRasterPipelineBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9322:SkRasterPipelineBlitter::blitH\28int\2c\20int\2c\20int\29 +9323:SkRasterPipelineBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +9324:SkRasterPipelineBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +9325:SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +9326: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 +9327: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 +9328: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 +9329: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 +9330:SkRadialGradient::getTypeName\28\29\20const +9331:SkRadialGradient::flatten\28SkWriteBuffer&\29\20const +9332:SkRadialGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9333:SkRadialGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +9334:SkRTree::~SkRTree\28\29.1 +9335:SkRTree::~SkRTree\28\29 +9336:SkRTree::search\28SkRect\20const&\2c\20std::__2::vector>*\29\20const +9337:SkRTree::insert\28SkRect\20const*\2c\20int\29 +9338:SkRTree::bytesUsed\28\29\20const +9339:SkPtrSet::~SkPtrSet\28\29 +9340:SkPngNormalDecoder::~SkPngNormalDecoder\28\29 +9341:SkPngNormalDecoder::setRange\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +9342:SkPngNormalDecoder::decode\28int*\29 +9343:SkPngNormalDecoder::decodeAllRows\28void*\2c\20unsigned\20long\2c\20int*\29 +9344:SkPngNormalDecoder::RowCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +9345:SkPngNormalDecoder::AllRowsCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +9346:SkPngInterlacedDecoder::~SkPngInterlacedDecoder\28\29.1 +9347:SkPngInterlacedDecoder::~SkPngInterlacedDecoder\28\29 +9348:SkPngInterlacedDecoder::setRange\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +9349:SkPngInterlacedDecoder::decode\28int*\29 +9350:SkPngInterlacedDecoder::decodeAllRows\28void*\2c\20unsigned\20long\2c\20int*\29 +9351:SkPngInterlacedDecoder::InterlacedRowCallback\28png_struct_def*\2c\20unsigned\20char*\2c\20unsigned\20int\2c\20int\29 +9352:SkPngEncoderImpl::~SkPngEncoderImpl\28\29.1 +9353:SkPngEncoderImpl::~SkPngEncoderImpl\28\29 +9354:SkPngEncoderImpl::onEncodeRows\28int\29 +9355:SkPngDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9356:SkPngCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9357:SkPngCodec::onRewind\28\29 +9358:SkPngCodec::onIncrementalDecode\28int*\29 +9359:SkPngCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9360:SkPngCodec::getSampler\28bool\29 +9361:SkPngCodec::createColorTable\28SkImageInfo\20const&\29 +9362:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_2::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +9363:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_1::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +9364:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_0::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +9365:SkPixelRef::~SkPixelRef\28\29.1 +9366:SkPictureShader::~SkPictureShader\28\29.1 +9367:SkPictureShader::~SkPictureShader\28\29 +9368:SkPictureShader::type\28\29\20const +9369:SkPictureShader::getTypeName\28\29\20const +9370:SkPictureShader::flatten\28SkWriteBuffer&\29\20const +9371:SkPictureShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9372:SkPictureRecorder*\20emscripten::internal::operator_new\28\29 +9373:SkPictureRecord::~SkPictureRecord\28\29.1 +9374:SkPictureRecord::willSave\28\29 +9375:SkPictureRecord::willRestore\28\29 +9376:SkPictureRecord::onResetClip\28\29 +9377:SkPictureRecord::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9378:SkPictureRecord::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9379:SkPictureRecord::onDrawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +9380:SkPictureRecord::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +9381:SkPictureRecord::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +9382:SkPictureRecord::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +9383:SkPictureRecord::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +9384:SkPictureRecord::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +9385:SkPictureRecord::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +9386:SkPictureRecord::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +9387:SkPictureRecord::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9388:SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +9389:SkPictureRecord::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +9390:SkPictureRecord::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9391:SkPictureRecord::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +9392:SkPictureRecord::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +9393:SkPictureRecord::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +9394:SkPictureRecord::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9395:SkPictureRecord::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +9396:SkPictureRecord::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +9397:SkPictureRecord::onDrawBehind\28SkPaint\20const&\29 +9398: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 +9399:SkPictureRecord::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +9400:SkPictureRecord::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +9401:SkPictureRecord::onDoSaveBehind\28SkRect\20const*\29 +9402:SkPictureRecord::onClipShader\28sk_sp\2c\20SkClipOp\29 +9403:SkPictureRecord::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +9404:SkPictureRecord::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9405:SkPictureRecord::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9406:SkPictureRecord::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +9407:SkPictureRecord::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +9408:SkPictureRecord::didTranslate\28float\2c\20float\29 +9409:SkPictureRecord::didSetM44\28SkM44\20const&\29 +9410:SkPictureRecord::didScale\28float\2c\20float\29 +9411:SkPictureRecord::didConcat44\28SkM44\20const&\29 +9412:SkPictureData::serialize\28SkWStream*\2c\20SkSerialProcs\20const&\2c\20SkRefCntSet*\2c\20bool\29\20const::DevNull::write\28void\20const*\2c\20unsigned\20long\29 +9413:SkPerlinNoiseShader::~SkPerlinNoiseShader\28\29.1 +9414:SkPerlinNoiseShader::~SkPerlinNoiseShader\28\29 +9415:SkPerlinNoiseShader::type\28\29\20const +9416:SkPerlinNoiseShader::getTypeName\28\29\20const +9417:SkPerlinNoiseShader::flatten\28SkWriteBuffer&\29\20const +9418:SkPerlinNoiseShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9419:SkPath::setIsVolatile\28bool\29 +9420:SkPath::setFillType\28SkPathFillType\29 +9421:SkPath::isVolatile\28\29\20const +9422:SkPath::getFillType\28\29\20const +9423:SkPath2DPathEffectImpl::~SkPath2DPathEffectImpl\28\29.1 +9424:SkPath2DPathEffectImpl::~SkPath2DPathEffectImpl\28\29 +9425:SkPath2DPathEffectImpl::next\28SkPoint\20const&\2c\20int\2c\20int\2c\20SkPath*\29\20const +9426:SkPath2DPathEffectImpl::getTypeName\28\29\20const +9427:SkPath2DPathEffectImpl::getFactory\28\29\20const +9428:SkPath2DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +9429:SkPath2DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +9430:SkPath1DPathEffectImpl::~SkPath1DPathEffectImpl\28\29.1 +9431:SkPath1DPathEffectImpl::~SkPath1DPathEffectImpl\28\29 +9432:SkPath1DPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9433:SkPath1DPathEffectImpl::next\28SkPath*\2c\20float\2c\20SkPathMeasure&\29\20const +9434:SkPath1DPathEffectImpl::getTypeName\28\29\20const +9435:SkPath1DPathEffectImpl::getFactory\28\29\20const +9436:SkPath1DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +9437:SkPath1DPathEffectImpl::begin\28float\29\20const +9438:SkPath1DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +9439:SkPath1DPathEffect::Make\28SkPath\20const&\2c\20float\2c\20float\2c\20SkPath1DPathEffect::Style\29 +9440:SkPath*\20emscripten::internal::operator_new\28\29 +9441:SkPairPathEffect::~SkPairPathEffect\28\29.1 +9442:SkPaint::setDither\28bool\29 +9443:SkPaint::setAntiAlias\28bool\29 +9444:SkPaint::getStrokeMiter\28\29\20const +9445:SkPaint::getStrokeJoin\28\29\20const +9446:SkPaint::getStrokeCap\28\29\20const +9447:SkPaint*\20emscripten::internal::operator_new\28\29 +9448:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29.1 +9449:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29 +9450:SkOTUtils::LocalizedStrings_SingleName::next\28SkTypeface::LocalizedString*\29 +9451:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29.1 +9452:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29 +9453:SkOTUtils::LocalizedStrings_NameTable::next\28SkTypeface::LocalizedString*\29 +9454:SkNoPixelsDevice::~SkNoPixelsDevice\28\29.1 +9455:SkNoPixelsDevice::~SkNoPixelsDevice\28\29 +9456:SkNoPixelsDevice::replaceClip\28SkIRect\20const&\29 +9457:SkNoPixelsDevice::pushClipStack\28\29 +9458:SkNoPixelsDevice::popClipStack\28\29 +9459:SkNoPixelsDevice::onClipShader\28sk_sp\29 +9460:SkNoPixelsDevice::isClipWideOpen\28\29\20const +9461:SkNoPixelsDevice::isClipRect\28\29\20const +9462:SkNoPixelsDevice::isClipEmpty\28\29\20const +9463:SkNoPixelsDevice::isClipAntiAliased\28\29\20const +9464:SkNoPixelsDevice::devClipBounds\28\29\20const +9465:SkNoPixelsDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +9466:SkNoPixelsDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +9467:SkNoPixelsDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +9468:SkNoPixelsDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +9469:SkNoPixelsDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +9470:SkNoDrawCanvas::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9471: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 +9472:SkMipmap::~SkMipmap\28\29.1 +9473:SkMipmap::~SkMipmap\28\29 +9474:SkMipmap::onDataChange\28void*\2c\20void*\29 +9475:SkMemoryStream::~SkMemoryStream\28\29.1 +9476:SkMemoryStream::~SkMemoryStream\28\29 +9477:SkMemoryStream::setMemory\28void\20const*\2c\20unsigned\20long\2c\20bool\29 +9478:SkMemoryStream::seek\28unsigned\20long\29 +9479:SkMemoryStream::rewind\28\29 +9480:SkMemoryStream::read\28void*\2c\20unsigned\20long\29 +9481:SkMemoryStream::peek\28void*\2c\20unsigned\20long\29\20const +9482:SkMemoryStream::onFork\28\29\20const +9483:SkMemoryStream::onDuplicate\28\29\20const +9484:SkMemoryStream::move\28long\29 +9485:SkMemoryStream::isAtEnd\28\29\20const +9486:SkMemoryStream::getMemoryBase\28\29 +9487:SkMemoryStream::getLength\28\29\20const +9488:SkMemoryStream::getData\28\29\20const +9489:SkMatrixColorFilter::onIsAlphaUnchanged\28\29\20const +9490:SkMatrixColorFilter::onAsAColorMatrix\28float*\29\20const +9491:SkMatrixColorFilter::getTypeName\28\29\20const +9492:SkMatrixColorFilter::flatten\28SkWriteBuffer&\29\20const +9493:SkMatrixColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9494:SkMatrix::Trans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +9495:SkMatrix::Trans_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +9496:SkMatrix::Scale_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +9497:SkMatrix::Scale_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +9498:SkMatrix::ScaleTrans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +9499:SkMatrix::Poly4Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +9500:SkMatrix::Poly3Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +9501:SkMatrix::Poly2Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +9502:SkMatrix::Persp_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +9503:SkMatrix::Persp_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +9504:SkMatrix::Identity_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +9505:SkMatrix::Identity_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +9506:SkMatrix::Affine_vpts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +9507:SkMaskSwizzler::onSetSampleX\28int\29 +9508:SkMaskFilterBase::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +9509:SkMaskFilterBase::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +9510:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29.1 +9511:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29 +9512: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 +9513: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 +9514:SkLumaColorFilter::Make\28\29 +9515:SkLocalMatrixShader::~SkLocalMatrixShader\28\29.1 +9516:SkLocalMatrixShader::~SkLocalMatrixShader\28\29 +9517:SkLocalMatrixShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +9518:SkLocalMatrixShader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +9519:SkLocalMatrixShader::makeAsALocalMatrixShader\28SkMatrix*\29\20const +9520:SkLocalMatrixShader::isOpaque\28\29\20const +9521:SkLocalMatrixShader::isConstant\28\29\20const +9522:SkLocalMatrixShader::getTypeName\28\29\20const +9523:SkLocalMatrixShader::flatten\28SkWriteBuffer&\29\20const +9524:SkLocalMatrixShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9525:SkLocalMatrixShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9526:SkLinearGradient::getTypeName\28\29\20const +9527:SkLinearGradient::flatten\28SkWriteBuffer&\29\20const +9528:SkLinearGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9529:SkLine2DPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9530:SkLine2DPathEffectImpl::nextSpan\28int\2c\20int\2c\20int\2c\20SkPath*\29\20const +9531:SkLine2DPathEffectImpl::getTypeName\28\29\20const +9532:SkLine2DPathEffectImpl::getFactory\28\29\20const +9533:SkLine2DPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +9534:SkLine2DPathEffectImpl::CreateProc\28SkReadBuffer&\29 +9535:SkJpegMetadataDecoderImpl::~SkJpegMetadataDecoderImpl\28\29.1 +9536:SkJpegMetadataDecoderImpl::~SkJpegMetadataDecoderImpl\28\29 +9537:SkJpegMetadataDecoderImpl::getISOGainmapMetadata\28bool\29\20const +9538:SkJpegMetadataDecoderImpl::getICCProfileData\28bool\29\20const +9539:SkJpegMetadataDecoderImpl::getExifMetadata\28bool\29\20const +9540:SkJpegMemorySourceMgr::skipInputBytes\28unsigned\20long\2c\20unsigned\20char\20const*&\2c\20unsigned\20long&\29 +9541:SkJpegMemorySourceMgr::initSource\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +9542:SkJpegDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9543:SkJpegCodec::~SkJpegCodec\28\29.1 +9544:SkJpegCodec::~SkJpegCodec\28\29 +9545:SkJpegCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9546:SkJpegCodec::onSkipScanlines\28int\29 +9547:SkJpegCodec::onRewind\28\29 +9548:SkJpegCodec::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +9549:SkJpegCodec::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +9550:SkJpegCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +9551:SkJpegCodec::onGetScaledDimensions\28float\29\20const +9552:SkJpegCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9553:SkJpegCodec::onDimensionsSupported\28SkISize\20const&\29 +9554:SkJpegCodec::getSampler\28bool\29 +9555:SkJpegCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +9556:SkJpegBufferedSourceMgr::~SkJpegBufferedSourceMgr\28\29.1 +9557:SkJpegBufferedSourceMgr::~SkJpegBufferedSourceMgr\28\29 +9558:SkJpegBufferedSourceMgr::skipInputBytes\28unsigned\20long\2c\20unsigned\20char\20const*&\2c\20unsigned\20long&\29 +9559:SkJpegBufferedSourceMgr::initSource\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +9560:SkJpegBufferedSourceMgr::fillInputBuffer\28unsigned\20char\20const*&\2c\20unsigned\20long&\29 +9561:SkImage_Raster::~SkImage_Raster\28\29.1 +9562:SkImage_Raster::~SkImage_Raster\28\29 +9563:SkImage_Raster::onReinterpretColorSpace\28sk_sp\29\20const +9564:SkImage_Raster::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +9565:SkImage_Raster::onPeekPixels\28SkPixmap*\29\20const +9566:SkImage_Raster::onPeekMips\28\29\20const +9567:SkImage_Raster::onMakeWithMipmaps\28sk_sp\29\20const +9568:SkImage_Raster::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +9569:SkImage_Raster::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +9570:SkImage_Raster::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +9571:SkImage_Raster::onHasMipmaps\28\29\20const +9572:SkImage_Raster::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +9573:SkImage_Raster::notifyAddedToRasterCache\28\29\20const +9574:SkImage_Raster::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +9575:SkImage_LazyTexture::readPixelsProxy\28GrDirectContext*\2c\20SkPixmap\20const&\29\20const +9576:SkImage_LazyTexture::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +9577:SkImage_Lazy::~SkImage_Lazy\28\29 +9578:SkImage_Lazy::onReinterpretColorSpace\28sk_sp\29\20const +9579:SkImage_Lazy::onRefEncoded\28\29\20const +9580:SkImage_Lazy::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +9581:SkImage_Lazy::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +9582:SkImage_Lazy::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +9583:SkImage_Lazy::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +9584:SkImage_Lazy::onIsProtected\28\29\20const +9585:SkImage_Lazy::isValid\28GrRecordingContext*\29\20const +9586:SkImage_Lazy::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +9587:SkImage_GaneshBase::~SkImage_GaneshBase\28\29 +9588:SkImage_GaneshBase::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +9589:SkImage_GaneshBase::onMakeSurface\28skgpu::graphite::Recorder*\2c\20SkImageInfo\20const&\29\20const +9590:SkImage_GaneshBase::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +9591:SkImage_GaneshBase::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +9592:SkImage_GaneshBase::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +9593:SkImage_GaneshBase::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +9594:SkImage_GaneshBase::isValid\28GrRecordingContext*\29\20const +9595:SkImage_GaneshBase::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +9596:SkImage_GaneshBase::directContext\28\29\20const +9597:SkImage_Ganesh::~SkImage_Ganesh\28\29.1 +9598:SkImage_Ganesh::textureSize\28\29\20const +9599:SkImage_Ganesh::onReinterpretColorSpace\28sk_sp\29\20const +9600:SkImage_Ganesh::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +9601:SkImage_Ganesh::onIsProtected\28\29\20const +9602:SkImage_Ganesh::onHasMipmaps\28\29\20const +9603: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 +9604: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 +9605:SkImage_Ganesh::generatingSurfaceIsDeleted\28\29 +9606:SkImage_Ganesh::flush\28GrDirectContext*\2c\20GrFlushInfo\20const&\29\20const +9607:SkImage_Ganesh::asView\28GrRecordingContext*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29\20const +9608:SkImage_Ganesh::asFragmentProcessor\28GrRecordingContext*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29\20const +9609: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 +9610:SkImage_Base::notifyAddedToRasterCache\28\29\20const +9611:SkImage_Base::makeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +9612:SkImage_Base::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +9613:SkImage_Base::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +9614:SkImage_Base::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +9615:SkImage_Base::makeColorSpace\28skgpu::graphite::Recorder*\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +9616:SkImage_Base::makeColorSpace\28GrDirectContext*\2c\20sk_sp\29\20const +9617:SkImage_Base::isTextureBacked\28\29\20const +9618:SkImage_Base::isLazyGenerated\28\29\20const +9619:SkImageShader::~SkImageShader\28\29.1 +9620:SkImageShader::~SkImageShader\28\29 +9621:SkImageShader::type\28\29\20const +9622:SkImageShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +9623:SkImageShader::isOpaque\28\29\20const +9624:SkImageShader::getTypeName\28\29\20const +9625:SkImageShader::flatten\28SkWriteBuffer&\29\20const +9626:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9627:SkImageGenerator::~SkImageGenerator\28\29 +9628:SkImageFilters::Compose\28sk_sp\2c\20sk_sp\29 +9629:SkImage::~SkImage\28\29 +9630:SkIcoDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9631:SkIcoCodec::~SkIcoCodec\28\29.1 +9632:SkIcoCodec::~SkIcoCodec\28\29 +9633:SkIcoCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9634:SkIcoCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9635:SkIcoCodec::onSkipScanlines\28int\29 +9636:SkIcoCodec::onIncrementalDecode\28int*\29 +9637:SkIcoCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +9638:SkIcoCodec::onGetScanlineOrder\28\29\20const +9639:SkIcoCodec::onGetScaledDimensions\28float\29\20const +9640:SkIcoCodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9641:SkIcoCodec::onDimensionsSupported\28SkISize\20const&\29 +9642:SkIcoCodec::getSampler\28bool\29 +9643:SkIcoCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +9644:SkGradientBaseShader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +9645:SkGradientBaseShader::isOpaque\28\29\20const +9646:SkGradientBaseShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9647:SkGifDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9648:SkGaussianColorFilter::getTypeName\28\29\20const +9649:SkGaussianColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9650:SkGammaColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +9651:SkGammaColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +9652:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29.1 +9653:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29 +9654:SkFontStyleSet_Custom::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +9655:SkFontScanner_FreeType::~SkFontScanner_FreeType\28\29.1 +9656:SkFontScanner_FreeType::~SkFontScanner_FreeType\28\29 +9657:SkFontScanner_FreeType::scanFile\28SkStreamAsset*\2c\20int*\29\20const +9658:SkFontScanner_FreeType::scanFace\28SkStreamAsset*\2c\20int\2c\20int*\29\20const +9659:SkFontMgr_Custom::~SkFontMgr_Custom\28\29.1 +9660:SkFontMgr_Custom::~SkFontMgr_Custom\28\29 +9661:SkFontMgr_Custom::onMatchFamily\28char\20const*\29\20const +9662:SkFontMgr_Custom::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +9663:SkFontMgr_Custom::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +9664:SkFontMgr_Custom::onMakeFromStreamArgs\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29\20const +9665:SkFontMgr_Custom::onMakeFromFile\28char\20const*\2c\20int\29\20const +9666:SkFontMgr_Custom::onMakeFromData\28sk_sp\2c\20int\29\20const +9667:SkFontMgr_Custom::onLegacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +9668:SkFontMgr_Custom::onGetFamilyName\28int\2c\20SkString*\29\20const +9669:SkFont::setScaleX\28float\29 +9670:SkFont::setEmbeddedBitmaps\28bool\29 +9671:SkFont::isEmbolden\28\29\20const +9672:SkFont::getSkewX\28\29\20const +9673:SkFont::getSize\28\29\20const +9674:SkFont::getScaleX\28\29\20const +9675:SkFont*\20emscripten::internal::operator_new\2c\20float\2c\20float\2c\20float>\28sk_sp&&\2c\20float&&\2c\20float&&\2c\20float&&\29 +9676:SkFont*\20emscripten::internal::operator_new\2c\20float>\28sk_sp&&\2c\20float&&\29 +9677:SkFont*\20emscripten::internal::operator_new>\28sk_sp&&\29 +9678:SkFont*\20emscripten::internal::operator_new\28\29 +9679:SkFILEStream::~SkFILEStream\28\29.1 +9680:SkFILEStream::~SkFILEStream\28\29 +9681:SkFILEStream::seek\28unsigned\20long\29 +9682:SkFILEStream::rewind\28\29 +9683:SkFILEStream::read\28void*\2c\20unsigned\20long\29 +9684:SkFILEStream::onFork\28\29\20const +9685:SkFILEStream::onDuplicate\28\29\20const +9686:SkFILEStream::move\28long\29 +9687:SkFILEStream::isAtEnd\28\29\20const +9688:SkFILEStream::getPosition\28\29\20const +9689:SkFILEStream::getLength\28\29\20const +9690:SkEncoder::~SkEncoder\28\29 +9691:SkEmptyShader::getTypeName\28\29\20const +9692:SkEmptyPicture::~SkEmptyPicture\28\29 +9693:SkEmptyPicture::cullRect\28\29\20const +9694:SkEmptyPicture::approximateBytesUsed\28\29\20const +9695:SkEmptyFontMgr::onMatchFamily\28char\20const*\29\20const +9696:SkEdgeBuilder::~SkEdgeBuilder\28\29 +9697:SkEdgeBuilder::build\28SkPath\20const&\2c\20SkIRect\20const*\2c\20bool\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +9698:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29.1 +9699:SkDrawable::onMakePictureSnapshot\28\29 +9700:SkDrawBase::~SkDrawBase\28\29 +9701:SkDraw::paintMasks\28SkZip\2c\20SkPaint\20const&\29\20const +9702:SkDiscretePathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9703:SkDiscretePathEffectImpl::getTypeName\28\29\20const +9704:SkDiscretePathEffectImpl::getFactory\28\29\20const +9705:SkDiscretePathEffectImpl::computeFastBounds\28SkRect*\29\20const +9706:SkDiscretePathEffectImpl::CreateProc\28SkReadBuffer&\29 +9707:SkDevice::~SkDevice\28\29 +9708:SkDevice::strikeDeviceInfo\28\29\20const +9709:SkDevice::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +9710:SkDevice::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +9711:SkDevice::drawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20sk_sp\2c\20SkPaint\20const&\29 +9712:SkDevice::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +9713:SkDevice::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +9714:SkDevice::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +9715:SkDevice::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +9716:SkDevice::drawCoverageMask\28SkSpecialImage\20const*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +9717:SkDevice::drawBlurredRRect\28SkRRect\20const&\2c\20SkPaint\20const&\2c\20float\29 +9718:SkDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +9719:SkDevice::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +9720:SkDevice::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +9721:SkDashImpl::~SkDashImpl\28\29.1 +9722:SkDashImpl::~SkDashImpl\28\29 +9723:SkDashImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9724:SkDashImpl::onAsPoints\28SkPathEffectBase::PointData*\2c\20SkPath\20const&\2c\20SkStrokeRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\29\20const +9725:SkDashImpl::onAsADash\28SkPathEffect::DashInfo*\29\20const +9726:SkDashImpl::getTypeName\28\29\20const +9727:SkDashImpl::flatten\28SkWriteBuffer&\29\20const +9728:SkCustomTypefaceBuilder::MakeFromStream\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29 +9729:SkCornerPathEffectImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9730:SkCornerPathEffectImpl::getTypeName\28\29\20const +9731:SkCornerPathEffectImpl::getFactory\28\29\20const +9732:SkCornerPathEffectImpl::flatten\28SkWriteBuffer&\29\20const +9733:SkCornerPathEffectImpl::CreateProc\28SkReadBuffer&\29 +9734:SkCornerPathEffect::Make\28float\29 +9735:SkContourMeasureIter*\20emscripten::internal::operator_new\28SkPath\20const&\2c\20bool&&\2c\20float&&\29 +9736:SkContourMeasure::~SkContourMeasure\28\29.1 +9737:SkContourMeasure::~SkContourMeasure\28\29 +9738:SkContourMeasure::isClosed\28\29\20const +9739:SkConicalGradient::getTypeName\28\29\20const +9740:SkConicalGradient::flatten\28SkWriteBuffer&\29\20const +9741:SkConicalGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9742:SkConicalGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +9743:SkComposePathEffect::~SkComposePathEffect\28\29 +9744:SkComposePathEffect::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +9745:SkComposePathEffect::getTypeName\28\29\20const +9746:SkComposePathEffect::computeFastBounds\28SkRect*\29\20const +9747:SkComposeColorFilter::onIsAlphaUnchanged\28\29\20const +9748:SkComposeColorFilter::getTypeName\28\29\20const +9749:SkComposeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9750:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29.1 +9751:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29 +9752:SkColorSpaceXformColorFilter::getTypeName\28\29\20const +9753:SkColorSpaceXformColorFilter::flatten\28SkWriteBuffer&\29\20const +9754:SkColorSpaceXformColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9755:SkColorShader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +9756:SkColorShader::isOpaque\28\29\20const +9757:SkColorShader::getTypeName\28\29\20const +9758:SkColorShader::flatten\28SkWriteBuffer&\29\20const +9759:SkColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9760:SkColorPalette::~SkColorPalette\28\29.1 +9761:SkColorPalette::~SkColorPalette\28\29 +9762:SkColorFilters::SRGBToLinearGamma\28\29 +9763:SkColorFilters::LinearToSRGBGamma\28\29 +9764:SkColorFilters::Lerp\28float\2c\20sk_sp\2c\20sk_sp\29 +9765:SkColorFilters::Compose\28sk_sp\20const&\2c\20sk_sp\29 +9766:SkColorFilterShader::~SkColorFilterShader\28\29.1 +9767:SkColorFilterShader::~SkColorFilterShader\28\29 +9768:SkColorFilterShader::isOpaque\28\29\20const +9769:SkColorFilterShader::getTypeName\28\29\20const +9770:SkColorFilterShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9771:SkColorFilterBase::onFilterColor4f\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkColorSpace*\29\20const +9772:SkColor4Shader::~SkColor4Shader\28\29.1 +9773:SkColor4Shader::~SkColor4Shader\28\29 +9774:SkColor4Shader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +9775:SkColor4Shader::isOpaque\28\29\20const +9776:SkColor4Shader::getTypeName\28\29\20const +9777:SkColor4Shader::flatten\28SkWriteBuffer&\29\20const +9778:SkColor4Shader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9779:SkCodecImageGenerator::~SkCodecImageGenerator\28\29.1 +9780:SkCodecImageGenerator::~SkCodecImageGenerator\28\29 +9781:SkCodecImageGenerator::onRefEncodedData\28\29 +9782:SkCodecImageGenerator::onQueryYUVAInfo\28SkYUVAPixmapInfo::SupportedDataTypes\20const&\2c\20SkYUVAPixmapInfo*\29\20const +9783:SkCodecImageGenerator::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +9784:SkCodecImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +9785:SkCodec::onStartScanlineDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9786:SkCodec::onStartIncrementalDecode\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9787:SkCodec::onOutputScanline\28int\29\20const +9788:SkCodec::onGetScaledDimensions\28float\29\20const +9789:SkCodec::getEncodedData\28\29\20const +9790:SkCodec::conversionSupported\28SkImageInfo\20const&\2c\20bool\2c\20bool\29 +9791:SkCanvas::rotate\28float\2c\20float\2c\20float\29 +9792:SkCanvas::recordingContext\28\29\20const +9793:SkCanvas::recorder\28\29\20const +9794:SkCanvas::onPeekPixels\28SkPixmap*\29 +9795:SkCanvas::onNewSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +9796:SkCanvas::onImageInfo\28\29\20const +9797:SkCanvas::onGetProps\28SkSurfaceProps*\2c\20bool\29\20const +9798:SkCanvas::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9799:SkCanvas::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9800:SkCanvas::onDrawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +9801:SkCanvas::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +9802:SkCanvas::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +9803:SkCanvas::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +9804:SkCanvas::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +9805:SkCanvas::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +9806:SkCanvas::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +9807:SkCanvas::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +9808:SkCanvas::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +9809:SkCanvas::onDrawPaint\28SkPaint\20const&\29 +9810:SkCanvas::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +9811:SkCanvas::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +9812:SkCanvas::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9813:SkCanvas::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +9814:SkCanvas::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +9815:SkCanvas::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +9816:SkCanvas::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +9817:SkCanvas::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +9818:SkCanvas::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +9819:SkCanvas::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +9820:SkCanvas::onDrawBehind\28SkPaint\20const&\29 +9821: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 +9822:SkCanvas::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +9823:SkCanvas::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +9824:SkCanvas::onDiscard\28\29 +9825:SkCanvas::onConvertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +9826:SkCanvas::onAccessTopLayerPixels\28SkPixmap*\29 +9827:SkCanvas::isClipRect\28\29\20const +9828:SkCanvas::isClipEmpty\28\29\20const +9829:SkCanvas::getSaveCount\28\29\20const +9830:SkCanvas::getBaseLayerSize\28\29\20const +9831:SkCanvas::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9832:SkCanvas::drawPicture\28sk_sp\20const&\29 +9833:SkCanvas::drawCircle\28float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +9834:SkCanvas*\20emscripten::internal::operator_new\28float&&\2c\20float&&\29 +9835:SkCanvas*\20emscripten::internal::operator_new\28\29 +9836:SkCachedData::~SkCachedData\28\29.1 +9837:SkCTMShader::~SkCTMShader\28\29 +9838:SkCTMShader::isConstant\28\29\20const +9839:SkCTMShader::getTypeName\28\29\20const +9840:SkCTMShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +9841:SkCTMShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9842:SkBreakIterator_client::~SkBreakIterator_client\28\29.1 +9843:SkBreakIterator_client::~SkBreakIterator_client\28\29 +9844:SkBreakIterator_client::status\28\29 +9845:SkBreakIterator_client::setText\28char\20const*\2c\20int\29 +9846:SkBreakIterator_client::setText\28char16_t\20const*\2c\20int\29 +9847:SkBreakIterator_client::next\28\29 +9848:SkBreakIterator_client::isDone\28\29 +9849:SkBreakIterator_client::first\28\29 +9850:SkBreakIterator_client::current\28\29 +9851:SkBmpStandardCodec::~SkBmpStandardCodec\28\29.1 +9852:SkBmpStandardCodec::~SkBmpStandardCodec\28\29 +9853:SkBmpStandardCodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9854:SkBmpStandardCodec::onInIco\28\29\20const +9855:SkBmpStandardCodec::getSampler\28bool\29 +9856:SkBmpStandardCodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9857:SkBmpRLESampler::onSetSampleX\28int\29 +9858:SkBmpRLESampler::fillWidth\28\29\20const +9859:SkBmpRLECodec::~SkBmpRLECodec\28\29.1 +9860:SkBmpRLECodec::~SkBmpRLECodec\28\29 +9861:SkBmpRLECodec::skipRows\28int\29 +9862:SkBmpRLECodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9863:SkBmpRLECodec::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\2c\20int*\29 +9864:SkBmpRLECodec::getSampler\28bool\29 +9865:SkBmpRLECodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9866:SkBmpMaskCodec::~SkBmpMaskCodec\28\29.1 +9867:SkBmpMaskCodec::~SkBmpMaskCodec\28\29 +9868:SkBmpMaskCodec::onPrepareToDecode\28SkImageInfo\20const&\2c\20SkCodec::Options\20const&\29 +9869:SkBmpMaskCodec::getSampler\28bool\29 +9870:SkBmpMaskCodec::decodeRows\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkCodec::Options\20const&\29 +9871:SkBmpDecoder::Decode\28std::__2::unique_ptr>\2c\20SkCodec::Result*\2c\20void*\29 +9872:SkBmpCodec::~SkBmpCodec\28\29 +9873:SkBmpCodec::skipRows\28int\29 +9874:SkBmpCodec::onSkipScanlines\28int\29 +9875:SkBmpCodec::onRewind\28\29 +9876:SkBmpCodec::onGetScanlines\28void*\2c\20int\2c\20unsigned\20long\29 +9877:SkBmpCodec::onGetScanlineOrder\28\29\20const +9878:SkBlurMaskFilterImpl::getTypeName\28\29\20const +9879:SkBlurMaskFilterImpl::flatten\28SkWriteBuffer&\29\20const +9880:SkBlurMaskFilterImpl::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +9881:SkBlurMaskFilterImpl::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +9882:SkBlurMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +9883:SkBlurMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +9884:SkBlurMaskFilterImpl::asImageFilter\28SkMatrix\20const&\29\20const +9885:SkBlurMaskFilterImpl::asABlur\28SkMaskFilterBase::BlurRec*\29\20const +9886:SkBlockMemoryStream::~SkBlockMemoryStream\28\29.1 +9887:SkBlockMemoryStream::~SkBlockMemoryStream\28\29 +9888:SkBlockMemoryStream::seek\28unsigned\20long\29 +9889:SkBlockMemoryStream::rewind\28\29 +9890:SkBlockMemoryStream::read\28void*\2c\20unsigned\20long\29 +9891:SkBlockMemoryStream::peek\28void*\2c\20unsigned\20long\29\20const +9892:SkBlockMemoryStream::onFork\28\29\20const +9893:SkBlockMemoryStream::onDuplicate\28\29\20const +9894:SkBlockMemoryStream::move\28long\29 +9895:SkBlockMemoryStream::isAtEnd\28\29\20const +9896:SkBlockMemoryStream::getMemoryBase\28\29 +9897:SkBlockMemoryRefCnt::~SkBlockMemoryRefCnt\28\29.1 +9898:SkBlockMemoryRefCnt::~SkBlockMemoryRefCnt\28\29 +9899:SkBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +9900:SkBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +9901:SkBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +9902:SkBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +9903:SkBlitter::allocBlitMemory\28unsigned\20long\29 +9904:SkBlenderBase::asBlendMode\28\29\20const +9905:SkBlendShader::getTypeName\28\29\20const +9906:SkBlendShader::flatten\28SkWriteBuffer&\29\20const +9907:SkBlendShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +9908:SkBlendModeColorFilter::onIsAlphaUnchanged\28\29\20const +9909:SkBlendModeColorFilter::onAsAColorMode\28unsigned\20int*\2c\20SkBlendMode*\29\20const +9910:SkBlendModeColorFilter::getTypeName\28\29\20const +9911:SkBlendModeColorFilter::flatten\28SkWriteBuffer&\29\20const +9912:SkBlendModeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +9913:SkBlendModeBlender::onAppendStages\28SkStageRec\20const&\29\20const +9914:SkBlendModeBlender::getTypeName\28\29\20const +9915:SkBlendModeBlender::flatten\28SkWriteBuffer&\29\20const +9916:SkBlendModeBlender::asBlendMode\28\29\20const +9917:SkBitmapDevice::~SkBitmapDevice\28\29.1 +9918:SkBitmapDevice::~SkBitmapDevice\28\29 +9919:SkBitmapDevice::snapSpecial\28SkIRect\20const&\2c\20bool\29 +9920:SkBitmapDevice::setImmutable\28\29 +9921:SkBitmapDevice::replaceClip\28SkIRect\20const&\29 +9922:SkBitmapDevice::pushClipStack\28\29 +9923:SkBitmapDevice::popClipStack\28\29 +9924:SkBitmapDevice::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +9925:SkBitmapDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +9926:SkBitmapDevice::onPeekPixels\28SkPixmap*\29 +9927:SkBitmapDevice::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +9928:SkBitmapDevice::onClipShader\28sk_sp\29 +9929:SkBitmapDevice::onAccessPixels\28SkPixmap*\29 +9930:SkBitmapDevice::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +9931:SkBitmapDevice::makeSpecial\28SkImage\20const*\29 +9932:SkBitmapDevice::makeSpecial\28SkBitmap\20const&\29 +9933:SkBitmapDevice::isClipWideOpen\28\29\20const +9934:SkBitmapDevice::isClipRect\28\29\20const +9935:SkBitmapDevice::isClipEmpty\28\29\20const +9936:SkBitmapDevice::isClipAntiAliased\28\29\20const +9937:SkBitmapDevice::getRasterHandle\28\29\20const +9938:SkBitmapDevice::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +9939:SkBitmapDevice::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +9940:SkBitmapDevice::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +9941:SkBitmapDevice::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +9942:SkBitmapDevice::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +9943:SkBitmapDevice::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +9944:SkBitmapDevice::drawPaint\28SkPaint\20const&\29 +9945:SkBitmapDevice::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +9946:SkBitmapDevice::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +9947:SkBitmapDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +9948:SkBitmapDevice::devClipBounds\28\29\20const +9949:SkBitmapDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +9950:SkBitmapDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +9951:SkBitmapDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +9952:SkBitmapDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +9953:SkBitmapDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +9954:SkBitmapDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +9955:SkBitmapCache::Rec::~Rec\28\29.1 +9956:SkBitmapCache::Rec::~Rec\28\29 +9957:SkBitmapCache::Rec::postAddInstall\28void*\29 +9958:SkBitmapCache::Rec::getCategory\28\29\20const +9959:SkBitmapCache::Rec::canBePurged\28\29 +9960:SkBitmapCache::Rec::bytesUsed\28\29\20const +9961:SkBitmapCache::Rec::ReleaseProc\28void*\2c\20void*\29 +9962:SkBitmapCache::Rec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +9963:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29.1 +9964:SkBinaryWriteBuffer::write\28SkM44\20const&\29 +9965:SkBinaryWriteBuffer::writeTypeface\28SkTypeface*\29 +9966:SkBinaryWriteBuffer::writeString\28std::__2::basic_string_view>\29 +9967:SkBinaryWriteBuffer::writeStream\28SkStream*\2c\20unsigned\20long\29 +9968:SkBinaryWriteBuffer::writeScalar\28float\29 +9969:SkBinaryWriteBuffer::writeSampling\28SkSamplingOptions\20const&\29 +9970:SkBinaryWriteBuffer::writeRegion\28SkRegion\20const&\29 +9971:SkBinaryWriteBuffer::writeRect\28SkRect\20const&\29 +9972:SkBinaryWriteBuffer::writePoint\28SkPoint\20const&\29 +9973:SkBinaryWriteBuffer::writePointArray\28SkPoint\20const*\2c\20unsigned\20int\29 +9974:SkBinaryWriteBuffer::writePoint3\28SkPoint3\20const&\29 +9975:SkBinaryWriteBuffer::writePath\28SkPath\20const&\29 +9976:SkBinaryWriteBuffer::writePaint\28SkPaint\20const&\29 +9977:SkBinaryWriteBuffer::writePad32\28void\20const*\2c\20unsigned\20long\29 +9978:SkBinaryWriteBuffer::writeMatrix\28SkMatrix\20const&\29 +9979:SkBinaryWriteBuffer::writeImage\28SkImage\20const*\29 +9980:SkBinaryWriteBuffer::writeColor4fArray\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20unsigned\20int\29 +9981:SkBigPicture::~SkBigPicture\28\29.1 +9982:SkBigPicture::~SkBigPicture\28\29 +9983:SkBigPicture::playback\28SkCanvas*\2c\20SkPicture::AbortCallback*\29\20const +9984:SkBigPicture::cullRect\28\29\20const +9985:SkBigPicture::approximateOpCount\28bool\29\20const +9986:SkBigPicture::approximateBytesUsed\28\29\20const +9987:SkBidiSubsetFactory::errorName\28UErrorCode\29\20const +9988:SkBidiSubsetFactory::bidi_setPara\28UBiDi*\2c\20char16_t\20const*\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20UErrorCode*\29\20const +9989:SkBidiSubsetFactory::bidi_reorderVisual\28unsigned\20char\20const*\2c\20int\2c\20int*\29\20const +9990:SkBidiSubsetFactory::bidi_openSized\28int\2c\20int\2c\20UErrorCode*\29\20const +9991:SkBidiSubsetFactory::bidi_getLevelAt\28UBiDi\20const*\2c\20int\29\20const +9992:SkBidiSubsetFactory::bidi_getLength\28UBiDi\20const*\29\20const +9993:SkBidiSubsetFactory::bidi_getDirection\28UBiDi\20const*\29\20const +9994:SkBidiSubsetFactory::bidi_close_callback\28\29\20const +9995:SkBezierCubic::Subdivide\28double\20const*\2c\20double\2c\20double*\29 +9996:SkBasicEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +9997:SkBasicEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +9998:SkBasicEdgeBuilder::addQuad\28SkPoint\20const*\29 +9999:SkBasicEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +10000:SkBasicEdgeBuilder::addLine\28SkPoint\20const*\29 +10001:SkBasicEdgeBuilder::addCubic\28SkPoint\20const*\29 +10002:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29 +10003:SkBBoxHierarchy::insert\28SkRect\20const*\2c\20SkBBoxHierarchy::Metadata\20const*\2c\20int\29 +10004:SkArenaAlloc::SkipPod\28char*\29 +10005:SkArenaAlloc::NextBlock\28char*\29 +10006:SkAnimatedImage::~SkAnimatedImage\28\29.1 +10007:SkAnimatedImage::~SkAnimatedImage\28\29 +10008:SkAnimatedImage::reset\28\29 +10009:SkAnimatedImage::onGetBounds\28\29 +10010:SkAnimatedImage::onDraw\28SkCanvas*\29 +10011:SkAnimatedImage::getRepetitionCount\28\29\20const +10012:SkAnimatedImage::getCurrentFrame\28\29 +10013:SkAnimatedImage::currentFrameDuration\28\29 +10014:SkAndroidCodecAdapter::onGetSupportedSubset\28SkIRect*\29\20const +10015:SkAndroidCodecAdapter::onGetSampledDimensions\28int\29\20const +10016:SkAndroidCodecAdapter::onGetAndroidPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkAndroidCodec::AndroidOptions\20const&\29 +10017:SkAnalyticEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +10018:SkAnalyticEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +10019:SkAnalyticEdgeBuilder::addQuad\28SkPoint\20const*\29 +10020:SkAnalyticEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +10021:SkAnalyticEdgeBuilder::addLine\28SkPoint\20const*\29 +10022:SkAnalyticEdgeBuilder::addCubic\28SkPoint\20const*\29 +10023:SkAAClipBlitter::~SkAAClipBlitter\28\29.1 +10024:SkAAClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10025:SkAAClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10026:SkAAClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10027:SkAAClipBlitter::blitH\28int\2c\20int\2c\20int\29 +10028:SkAAClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10029:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_1::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +10030:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_0::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +10031:SkAAClip::Builder::Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10032:SkAAClip::Builder::Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10033:SkAAClip::Builder::Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10034:SkAAClip::Builder::Blitter::blitH\28int\2c\20int\2c\20int\29 +10035:SkAAClip::Builder::Blitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10036:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29.1 +10037:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29 +10038:SkA8_Coverage_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10039:SkA8_Coverage_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10040:SkA8_Coverage_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10041:SkA8_Coverage_Blitter::blitH\28int\2c\20int\2c\20int\29 +10042:SkA8_Coverage_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10043:SkA8_Blitter::~SkA8_Blitter\28\29.1 +10044:SkA8_Blitter::~SkA8_Blitter\28\29 +10045:SkA8_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10046:SkA8_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10047:SkA8_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10048:SkA8_Blitter::blitH\28int\2c\20int\2c\20int\29 +10049:SkA8_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10050:SkA8Blitter_Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +10051:Sk2DPathEffect::nextSpan\28int\2c\20int\2c\20int\2c\20SkPath*\29\20const +10052:Sk2DPathEffect::flatten\28SkWriteBuffer&\29\20const +10053:SimpleVFilter16i_C +10054:SimpleVFilter16_C +10055:SimpleTextStyle*\20emscripten::internal::raw_constructor\28\29 +10056:SimpleTextStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleTextStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle\20const&\29 +10057:SimpleStrutStyle*\20emscripten::internal::raw_constructor\28\29 +10058:SimpleStrutStyle*\20emscripten::internal::MemberAccess::getWire\28SimpleStrutStyle\20SimpleParagraphStyle::*\20const&\2c\20SimpleParagraphStyle\20const&\29 +10059:SimpleParagraphStyle*\20emscripten::internal::raw_constructor\28\29 +10060:SimpleHFilter16i_C +10061:SimpleHFilter16_C +10062:SimpleFontStyle*\20emscripten::internal::raw_constructor\28\29 +10063:ShaderPDXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10064:ShaderPDXferProcessor::name\28\29\20const +10065:ShaderPDXferProcessor::makeProgramImpl\28\29\20const +10066:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +10067:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +10068:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10069:RuntimeEffectUniform*\20emscripten::internal::raw_constructor\28\29 +10070:RuntimeEffectRPCallbacks::toLinearSrgb\28void\20const*\29 +10071:RuntimeEffectRPCallbacks::fromLinearSrgb\28void\20const*\29 +10072:RuntimeEffectRPCallbacks::appendShader\28int\29 +10073:RuntimeEffectRPCallbacks::appendColorFilter\28int\29 +10074:RuntimeEffectRPCallbacks::appendBlender\28int\29 +10075:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29 +10076:RunBasedAdditiveBlitter::getRealBlitter\28bool\29 +10077:RunBasedAdditiveBlitter::flush_if_y_changed\28int\2c\20int\29 +10078:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +10079:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +10080:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10081:Round_Up_To_Grid +10082:Round_To_Half_Grid +10083:Round_To_Grid +10084:Round_To_Double_Grid +10085:Round_Super_45 +10086:Round_Super +10087:Round_None +10088:Round_Down_To_Grid +10089:RoundJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +10090:RoundCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +10091:Reset +10092:Read_CVT_Stretched +10093:Read_CVT +10094:RD4_C +10095:Project_y +10096:Project +10097:ProcessRows +10098:PredictorAdd9_C +10099:PredictorAdd8_C +10100:PredictorAdd7_C +10101:PredictorAdd6_C +10102:PredictorAdd5_C +10103:PredictorAdd4_C +10104:PredictorAdd3_C +10105:PredictorAdd2_C +10106:PredictorAdd1_C +10107:PredictorAdd13_C +10108:PredictorAdd12_C +10109:PredictorAdd11_C +10110:PredictorAdd10_C +10111:PredictorAdd0_C +10112:PrePostInverseBlitterProc\28SkBlitter*\2c\20int\2c\20bool\29 +10113:PorterDuffXferProcessor::onHasSecondaryOutput\28\29\20const +10114:PorterDuffXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +10115:PorterDuffXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10116:PorterDuffXferProcessor::name\28\29\20const +10117:PorterDuffXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10118:PorterDuffXferProcessor::makeProgramImpl\28\29\20const +10119:ParseVP8X +10120:PackRGB_C +10121:PDLCDXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +10122:PDLCDXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +10123:PDLCDXferProcessor::name\28\29\20const +10124:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +10125:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10126:PDLCDXferProcessor::makeProgramImpl\28\29\20const +10127:OT::match_glyph\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10128:OT::match_coverage\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10129:OT::match_class_cached\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10130:OT::match_class_cached2\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10131:OT::match_class_cached1\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10132:OT::match_class\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +10133: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 +10134: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 +10135:OT::cff1::accelerator_t::gname_t::cmp\28void\20const*\2c\20void\20const*\29 +10136:OT::Layout::Common::RangeRecord::cmp_range\28void\20const*\2c\20void\20const*\29 +10137: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 +10138: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 +10139:OT::CmapSubtableFormat4::accelerator_t::get_glyph_func\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +10140:Move_CVT_Stretched +10141:Move_CVT +10142:MiterJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +10143:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29.1 +10144:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29 +10145:MaskAdditiveBlitter::getWidth\28\29 +10146:MaskAdditiveBlitter::getRealBlitter\28bool\29 +10147:MaskAdditiveBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10148:MaskAdditiveBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10149:MaskAdditiveBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10150:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +10151:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +10152:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10153:MapAlpha_C +10154:MapARGB_C +10155:MakeRenderTarget\28sk_sp\2c\20int\2c\20int\29 +10156:MakeRenderTarget\28sk_sp\2c\20SimpleImageInfo\29 +10157:MakePathFromVerbsPointsWeights\28unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\2c\20unsigned\20long\2c\20int\29 +10158:MakePathFromSVGString\28std::__2::basic_string\2c\20std::__2::allocator>\29 +10159:MakePathFromOp\28SkPath\20const&\2c\20SkPath\20const&\2c\20SkPathOp\29 +10160:MakePathFromInterpolation\28SkPath\20const&\2c\20SkPath\20const&\2c\20float\29 +10161:MakePathFromCmds\28unsigned\20long\2c\20int\29 +10162:MakeOnScreenGLSurface\28sk_sp\2c\20int\2c\20int\2c\20sk_sp\29 +10163:MakeImageFromGenerator\28SimpleImageInfo\2c\20emscripten::val\29 +10164:MakeGrContext\28\29 +10165:MakeAsWinding\28SkPath\20const&\29 +10166:LD4_C +10167:JpegDecoderMgr::returnFailure\28char\20const*\2c\20SkCodec::Result\29 +10168:JpegDecoderMgr::init\28\29 +10169:JpegDecoderMgr::SourceMgr::SkipInputData\28jpeg_decompress_struct*\2c\20long\29 +10170:JpegDecoderMgr::SourceMgr::InitSource\28jpeg_decompress_struct*\29 +10171:JpegDecoderMgr::SourceMgr::FillInputBuffer\28jpeg_decompress_struct*\29 +10172:JpegDecoderMgr::JpegDecoderMgr\28SkStream*\29 +10173:IsValidSimpleFormat +10174:IsValidExtendedFormat +10175:InverseBlitter::blitH\28int\2c\20int\2c\20int\29 +10176:Init +10177:HorizontalUnfilter_C +10178:HorizontalFilter_C +10179:Horish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +10180:Horish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +10181:HasAlpha8b_C +10182:HasAlpha32b_C +10183:HU4_C +10184:HLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +10185:HLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +10186:HFilter8i_C +10187:HFilter8_C +10188:HFilter16i_C +10189:HFilter16_C +10190:HE8uv_C +10191:HE4_C +10192:HE16_C +10193:HD4_C +10194:GradientUnfilter_C +10195:GradientFilter_C +10196:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10197:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10198:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const +10199:GrYUVtoRGBEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10200:GrYUVtoRGBEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10201:GrYUVtoRGBEffect::name\28\29\20const +10202:GrYUVtoRGBEffect::clone\28\29\20const +10203:GrXferProcessor::ProgramImpl::emitWriteSwizzle\28GrGLSLXPFragmentBuilder*\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20char\20const*\29\20const +10204:GrXferProcessor::ProgramImpl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10205: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 +10206:GrWritePixelsTask::~GrWritePixelsTask\28\29.1 +10207:GrWritePixelsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +10208:GrWritePixelsTask::onExecute\28GrOpFlushState*\29 +10209:GrWritePixelsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +10210:GrWaitRenderTask::~GrWaitRenderTask\28\29.1 +10211:GrWaitRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +10212:GrWaitRenderTask::onExecute\28GrOpFlushState*\29 +10213:GrWaitRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +10214:GrTriangulator::~GrTriangulator\28\29 +10215:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29.1 +10216:GrTransferFromRenderTask::onExecute\28GrOpFlushState*\29 +10217:GrTransferFromRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +10218:GrThreadSafeCache::Trampoline::~Trampoline\28\29.1 +10219:GrThreadSafeCache::Trampoline::~Trampoline\28\29 +10220:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29.1 +10221:GrTextureResolveRenderTask::onExecute\28GrOpFlushState*\29 +10222:GrTextureResolveRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +10223:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +10224:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +10225:GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +10226:GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +10227:GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +10228:GrTextureProxy::~GrTextureProxy\28\29.2 +10229:GrTextureProxy::~GrTextureProxy\28\29.1 +10230:GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +10231:GrTextureProxy::instantiate\28GrResourceProvider*\29 +10232:GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +10233:GrTextureProxy::callbackDesc\28\29\20const +10234:GrTextureEffect::~GrTextureEffect\28\29.1 +10235:GrTextureEffect::~GrTextureEffect\28\29 +10236:GrTextureEffect::onMakeProgramImpl\28\29\20const +10237:GrTextureEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10238:GrTextureEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10239:GrTextureEffect::name\28\29\20const +10240:GrTextureEffect::clone\28\29\20const +10241:GrTextureEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10242:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10243:GrTexture::onGpuMemorySize\28\29\20const +10244:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29.1 +10245:GrTDeferredProxyUploader>::freeData\28\29 +10246:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29.1 +10247:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29 +10248:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::freeData\28\29 +10249:GrSurfaceProxy::getUniqueKey\28\29\20const +10250:GrSurface::~GrSurface\28\29 +10251:GrSurface::getResourceType\28\29\20const +10252:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29.1 +10253:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29 +10254:GrStrokeTessellationShader::name\28\29\20const +10255:GrStrokeTessellationShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10256:GrStrokeTessellationShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10257:GrStrokeTessellationShader::Impl::~Impl\28\29.1 +10258:GrStrokeTessellationShader::Impl::~Impl\28\29 +10259:GrStrokeTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10260:GrStrokeTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10261:GrSkSLFP::~GrSkSLFP\28\29.1 +10262:GrSkSLFP::~GrSkSLFP\28\29 +10263:GrSkSLFP::onMakeProgramImpl\28\29\20const +10264:GrSkSLFP::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10265:GrSkSLFP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10266:GrSkSLFP::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10267:GrSkSLFP::clone\28\29\20const +10268:GrSkSLFP::Impl::~Impl\28\29.1 +10269:GrSkSLFP::Impl::~Impl\28\29 +10270:GrSkSLFP::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10271:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +10272:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +10273:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +10274: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 +10275:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::getMangledName\28char\20const*\29 +10276:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +10277:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +10278:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +10279:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareFunction\28char\20const*\29 +10280:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10281:GrSimpleMesh*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29::'lambda'\28char*\29::__invoke\28char*\29 +10282:GrRingBuffer::FinishSubmit\28void*\29 +10283:GrResourceCache::CompareTimestamp\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29 +10284:GrRenderTask::~GrRenderTask\28\29 +10285:GrRenderTask::disown\28GrDrawingManager*\29 +10286:GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +10287:GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +10288:GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +10289:GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +10290:GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +10291:GrRenderTargetProxy::callbackDesc\28\29\20const +10292:GrRecordingContext::~GrRecordingContext\28\29.1 +10293:GrRecordingContext::abandoned\28\29 +10294:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29.1 +10295:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29 +10296:GrRRectShadowGeoProc::onTextureSampler\28int\29\20const +10297:GrRRectShadowGeoProc::name\28\29\20const +10298:GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10299:GrRRectShadowGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10300:GrQuadEffect::name\28\29\20const +10301:GrQuadEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10302:GrQuadEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10303:GrQuadEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10304:GrQuadEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10305:GrPorterDuffXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10306:GrPorterDuffXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10307:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29.1 +10308:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29 +10309:GrPerlinNoise2Effect::onMakeProgramImpl\28\29\20const +10310:GrPerlinNoise2Effect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10311:GrPerlinNoise2Effect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10312:GrPerlinNoise2Effect::name\28\29\20const +10313:GrPerlinNoise2Effect::clone\28\29\20const +10314:GrPerlinNoise2Effect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10315:GrPerlinNoise2Effect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10316:GrPathTessellationShader::Impl::~Impl\28\29 +10317:GrPathTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10318:GrPathTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10319:GrOpsRenderPass::~GrOpsRenderPass\28\29 +10320:GrOpsRenderPass::onExecuteDrawable\28std::__2::unique_ptr>\29 +10321:GrOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +10322:GrOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +10323:GrOpFlushState::~GrOpFlushState\28\29.1 +10324:GrOpFlushState::~GrOpFlushState\28\29 +10325:GrOpFlushState::writeView\28\29\20const +10326:GrOpFlushState::usesMSAASurface\28\29\20const +10327:GrOpFlushState::tokenTracker\28\29 +10328:GrOpFlushState::threadSafeCache\28\29\20const +10329:GrOpFlushState::strikeCache\28\29\20const +10330:GrOpFlushState::smallPathAtlasManager\28\29\20const +10331:GrOpFlushState::sampledProxyArray\28\29 +10332:GrOpFlushState::rtProxy\28\29\20const +10333:GrOpFlushState::resourceProvider\28\29\20const +10334:GrOpFlushState::renderPassBarriers\28\29\20const +10335:GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +10336:GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +10337:GrOpFlushState::putBackIndirectDraws\28int\29 +10338:GrOpFlushState::putBackIndices\28int\29 +10339:GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +10340:GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +10341:GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +10342:GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +10343:GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +10344:GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +10345:GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +10346:GrOpFlushState::dstProxyView\28\29\20const +10347:GrOpFlushState::colorLoadOp\28\29\20const +10348:GrOpFlushState::atlasManager\28\29\20const +10349:GrOpFlushState::appliedClip\28\29\20const +10350:GrOpFlushState::addInlineUpload\28std::__2::function&\29>&&\29 +10351:GrOp::~GrOp\28\29 +10352:GrOnFlushCallbackObject::postFlush\28skgpu::AtlasToken\29 +10353:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10354:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10355:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +10356:GrModulateAtlasCoverageEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10357:GrModulateAtlasCoverageEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10358:GrModulateAtlasCoverageEffect::name\28\29\20const +10359:GrModulateAtlasCoverageEffect::clone\28\29\20const +10360:GrMeshDrawOp::onPrepare\28GrOpFlushState*\29 +10361:GrMeshDrawOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10362:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10363:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10364:GrMatrixEffect::onMakeProgramImpl\28\29\20const +10365:GrMatrixEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10366:GrMatrixEffect::name\28\29\20const +10367:GrMatrixEffect::clone\28\29\20const +10368:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29.1 +10369:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29 +10370:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::$_0::__invoke\28void\20const*\2c\20void*\29 +10371:GrImageContext::~GrImageContext\28\29.1 +10372:GrImageContext::~GrImageContext\28\29 +10373:GrHardClip::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +10374:GrGpuResource::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +10375:GrGpuBuffer::~GrGpuBuffer\28\29 +10376:GrGpuBuffer::unref\28\29\20const +10377:GrGpuBuffer::getResourceType\28\29\20const +10378:GrGpuBuffer::computeScratchKey\28skgpu::ScratchKey*\29\20const +10379:GrGeometryProcessor::onTextureSampler\28int\29\20const +10380:GrGeometryProcessor::ProgramImpl::~ProgramImpl\28\29 +10381:GrGLVaryingHandler::~GrGLVaryingHandler\28\29 +10382:GrGLUniformHandler::~GrGLUniformHandler\28\29.1 +10383:GrGLUniformHandler::~GrGLUniformHandler\28\29 +10384:GrGLUniformHandler::samplerVariable\28GrResourceHandle\29\20const +10385:GrGLUniformHandler::samplerSwizzle\28GrResourceHandle\29\20const +10386:GrGLUniformHandler::internalAddUniformArray\28GrProcessor\20const*\2c\20unsigned\20int\2c\20SkSLType\2c\20char\20const*\2c\20bool\2c\20int\2c\20char\20const**\29 +10387:GrGLUniformHandler::getUniformCStr\28GrResourceHandle\29\20const +10388:GrGLUniformHandler::appendUniformDecls\28GrShaderFlags\2c\20SkString*\29\20const +10389:GrGLUniformHandler::addSampler\28GrBackendFormat\20const&\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20GrShaderCaps\20const*\29 +10390:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +10391:GrGLTextureRenderTarget::onSetLabel\28\29 +10392:GrGLTextureRenderTarget::onRelease\28\29 +10393:GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +10394:GrGLTextureRenderTarget::onAbandon\28\29 +10395:GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +10396:GrGLTextureRenderTarget::backendFormat\28\29\20const +10397:GrGLTexture::~GrGLTexture\28\29.1 +10398:GrGLTexture::~GrGLTexture\28\29 +10399:GrGLTexture::textureParamsModified\28\29 +10400:GrGLTexture::onStealBackendTexture\28GrBackendTexture*\2c\20std::__2::function*\29 +10401:GrGLTexture::getBackendTexture\28\29\20const +10402:GrGLSemaphore::~GrGLSemaphore\28\29.1 +10403:GrGLSemaphore::~GrGLSemaphore\28\29 +10404:GrGLSemaphore::setIsOwned\28\29 +10405:GrGLSemaphore::backendSemaphore\28\29\20const +10406:GrGLSLVertexBuilder::~GrGLSLVertexBuilder\28\29 +10407:GrGLSLVertexBuilder::onFinalize\28\29 +10408:GrGLSLUniformHandler::inputSamplerSwizzle\28GrResourceHandle\29\20const +10409:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +10410:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +10411:GrGLSLFragmentShaderBuilder::onFinalize\28\29 +10412:GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +10413:GrGLSLFragmentShaderBuilder::forceHighPrecision\28\29 +10414:GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +10415:GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +10416:GrGLRenderTarget::~GrGLRenderTarget\28\29 +10417:GrGLRenderTarget::onGpuMemorySize\28\29\20const +10418:GrGLRenderTarget::getBackendRenderTarget\28\29\20const +10419:GrGLRenderTarget::completeStencilAttachment\28GrAttachment*\2c\20bool\29 +10420:GrGLRenderTarget::canAttemptStencilAttachment\28bool\29\20const +10421:GrGLRenderTarget::backendFormat\28\29\20const +10422:GrGLRenderTarget::alwaysClearStencil\28\29\20const +10423:GrGLProgramDataManager::~GrGLProgramDataManager\28\29.1 +10424:GrGLProgramDataManager::~GrGLProgramDataManager\28\29 +10425:GrGLProgramDataManager::setMatrix4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +10426:GrGLProgramDataManager::setMatrix4f\28GrResourceHandle\2c\20float\20const*\29\20const +10427:GrGLProgramDataManager::setMatrix3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +10428:GrGLProgramDataManager::setMatrix3f\28GrResourceHandle\2c\20float\20const*\29\20const +10429:GrGLProgramDataManager::setMatrix2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +10430:GrGLProgramDataManager::setMatrix2f\28GrResourceHandle\2c\20float\20const*\29\20const +10431:GrGLProgramDataManager::set4iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +10432:GrGLProgramDataManager::set4i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\2c\20int\29\20const +10433:GrGLProgramDataManager::set4f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\2c\20float\29\20const +10434:GrGLProgramDataManager::set3iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +10435:GrGLProgramDataManager::set3i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\29\20const +10436:GrGLProgramDataManager::set3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +10437:GrGLProgramDataManager::set3f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\29\20const +10438:GrGLProgramDataManager::set2iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +10439:GrGLProgramDataManager::set2i\28GrResourceHandle\2c\20int\2c\20int\29\20const +10440:GrGLProgramDataManager::set2f\28GrResourceHandle\2c\20float\2c\20float\29\20const +10441:GrGLProgramDataManager::set1iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +10442:GrGLProgramDataManager::set1i\28GrResourceHandle\2c\20int\29\20const +10443:GrGLProgramDataManager::set1fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +10444:GrGLProgramDataManager::set1f\28GrResourceHandle\2c\20float\29\20const +10445:GrGLProgramBuilder::~GrGLProgramBuilder\28\29.1 +10446:GrGLProgramBuilder::varyingHandler\28\29 +10447:GrGLProgramBuilder::caps\28\29\20const +10448:GrGLProgram::~GrGLProgram\28\29.1 +10449:GrGLOpsRenderPass::~GrGLOpsRenderPass\28\29 +10450:GrGLOpsRenderPass::onSetScissorRect\28SkIRect\20const&\29 +10451:GrGLOpsRenderPass::onEnd\28\29 +10452:GrGLOpsRenderPass::onDraw\28int\2c\20int\29 +10453:GrGLOpsRenderPass::onDrawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +10454:GrGLOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +10455:GrGLOpsRenderPass::onDrawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +10456:GrGLOpsRenderPass::onDrawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +10457:GrGLOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +10458:GrGLOpsRenderPass::onClear\28GrScissorState\20const&\2c\20std::__2::array\29 +10459:GrGLOpsRenderPass::onClearStencilClip\28GrScissorState\20const&\2c\20bool\29 +10460:GrGLOpsRenderPass::onBindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +10461:GrGLOpsRenderPass::onBindPipeline\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +10462:GrGLOpsRenderPass::onBindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +10463:GrGLOpsRenderPass::onBegin\28\29 +10464:GrGLOpsRenderPass::inlineUpload\28GrOpFlushState*\2c\20std::__2::function&\29>&\29 +10465:GrGLInterface::~GrGLInterface\28\29.1 +10466:GrGLInterface::~GrGLInterface\28\29 +10467:GrGLGpu::~GrGLGpu\28\29.1 +10468:GrGLGpu::xferBarrier\28GrRenderTarget*\2c\20GrXferBarrierType\29 +10469:GrGLGpu::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +10470:GrGLGpu::willExecute\28\29 +10471:GrGLGpu::waitSemaphore\28GrSemaphore*\29 +10472:GrGLGpu::submit\28GrOpsRenderPass*\29 +10473:GrGLGpu::stagingBufferManager\28\29 +10474:GrGLGpu::refPipelineBuilder\28\29 +10475:GrGLGpu::prepareTextureForCrossContextUsage\28GrTexture*\29 +10476:GrGLGpu::precompileShader\28SkData\20const&\2c\20SkData\20const&\29 +10477:GrGLGpu::pipelineBuilder\28\29 +10478:GrGLGpu::onWritePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +10479:GrGLGpu::onWrapRenderableBackendTexture\28GrBackendTexture\20const&\2c\20int\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +10480:GrGLGpu::onWrapCompressedBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +10481:GrGLGpu::onWrapBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\2c\20GrIOType\29 +10482:GrGLGpu::onWrapBackendRenderTarget\28GrBackendRenderTarget\20const&\29 +10483:GrGLGpu::onUpdateCompressedBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20void\20const*\2c\20unsigned\20long\29 +10484:GrGLGpu::onTransferPixelsTo\28GrTexture*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +10485:GrGLGpu::onTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\29 +10486:GrGLGpu::onTransferFromBufferToBuffer\28sk_sp\2c\20unsigned\20long\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +10487:GrGLGpu::onSubmitToGpu\28GrSyncCpu\29 +10488:GrGLGpu::onResolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +10489:GrGLGpu::onResetTextureBindings\28\29 +10490:GrGLGpu::onResetContext\28unsigned\20int\29 +10491:GrGLGpu::onRegenerateMipMapLevels\28GrTexture*\29 +10492:GrGLGpu::onReadPixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20unsigned\20long\29 +10493: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 +10494:GrGLGpu::onDumpJSON\28SkJSONWriter*\29\20const +10495: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 +10496:GrGLGpu::onCreateCompressedTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20void\20const*\2c\20unsigned\20long\29 +10497:GrGLGpu::onCreateCompressedBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\29 +10498:GrGLGpu::onCreateBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +10499:GrGLGpu::onCreateBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +10500:GrGLGpu::onCopySurface\28GrSurface*\2c\20SkIRect\20const&\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +10501:GrGLGpu::onClearBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20std::__2::array\29 +10502:GrGLGpu::makeStencilAttachment\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\29 +10503:GrGLGpu::makeSemaphore\28bool\29 +10504:GrGLGpu::makeMSAAAttachment\28SkISize\2c\20GrBackendFormat\20const&\2c\20int\2c\20skgpu::Protected\2c\20GrMemoryless\29 +10505:GrGLGpu::insertSemaphore\28GrSemaphore*\29 +10506:GrGLGpu::getPreferredStencilFormat\28GrBackendFormat\20const&\29 +10507:GrGLGpu::finishOutstandingGpuWork\28\29 +10508:GrGLGpu::disconnect\28GrGpu::DisconnectType\29 +10509:GrGLGpu::deleteBackendTexture\28GrBackendTexture\20const&\29 +10510:GrGLGpu::compile\28GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\29 +10511:GrGLGpu::checkFinishProcs\28\29 +10512:GrGLGpu::addFinishedProc\28void\20\28*\29\28void*\29\2c\20void*\29 +10513:GrGLGpu::ProgramCache::~ProgramCache\28\29.1 +10514:GrGLGpu::ProgramCache::~ProgramCache\28\29 +10515: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 +10516: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 +10517: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 +10518:GrGLFunction::GrGLFunction\28void\20\28*\29\28float\29\29::'lambda'\28void\20const*\2c\20float\29::__invoke\28void\20const*\2c\20float\29 +10519: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 +10520:GrGLFunction::GrGLFunction\28void\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +10521: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 +10522:GrGLFunction::GrGLFunction\28unsigned\20int\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +10523:GrGLCaps::~GrGLCaps\28\29.1 +10524:GrGLCaps::surfaceSupportsReadPixels\28GrSurface\20const*\29\20const +10525:GrGLCaps::supportedWritePixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +10526:GrGLCaps::onSurfaceSupportsWritePixels\28GrSurface\20const*\29\20const +10527:GrGLCaps::onSupportsDynamicMSAA\28GrRenderTargetProxy\20const*\29\20const +10528:GrGLCaps::onSupportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +10529:GrGLCaps::onIsWindowRectanglesSupportedForRT\28GrBackendRenderTarget\20const&\29\20const +10530:GrGLCaps::onGetReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +10531:GrGLCaps::onGetDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\29\20const +10532:GrGLCaps::onGetDefaultBackendFormat\28GrColorType\29\20const +10533:GrGLCaps::onDumpJSON\28SkJSONWriter*\29\20const +10534:GrGLCaps::onCanCopySurface\28GrSurfaceProxy\20const*\2c\20SkIRect\20const&\2c\20GrSurfaceProxy\20const*\2c\20SkIRect\20const&\29\20const +10535:GrGLCaps::onAreColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +10536:GrGLCaps::onApplyOptionsOverrides\28GrContextOptions\20const&\29 +10537:GrGLCaps::maxRenderTargetSampleCount\28GrBackendFormat\20const&\29\20const +10538:GrGLCaps::makeDesc\28GrRenderTarget*\2c\20GrProgramInfo\20const&\2c\20GrCaps::ProgramDescOverrideFlags\29\20const +10539:GrGLCaps::isFormatTexturable\28GrBackendFormat\20const&\2c\20GrTextureType\29\20const +10540:GrGLCaps::isFormatSRGB\28GrBackendFormat\20const&\29\20const +10541:GrGLCaps::isFormatRenderable\28GrBackendFormat\20const&\2c\20int\29\20const +10542:GrGLCaps::isFormatCopyable\28GrBackendFormat\20const&\29\20const +10543:GrGLCaps::isFormatAsColorTypeRenderable\28GrColorType\2c\20GrBackendFormat\20const&\2c\20int\29\20const +10544:GrGLCaps::getWriteSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +10545:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrBackendFormat\20const&\29\20const +10546:GrGLCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +10547:GrGLCaps::getBackendFormatFromCompressionType\28SkTextureCompressionType\29\20const +10548:GrGLCaps::computeFormatKey\28GrBackendFormat\20const&\29\20const +10549:GrGLBuffer::~GrGLBuffer\28\29.1 +10550:GrGLBuffer::~GrGLBuffer\28\29 +10551:GrGLBuffer::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +10552:GrGLBuffer::onUpdateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +10553:GrGLBuffer::onUnmap\28GrGpuBuffer::MapType\29 +10554:GrGLBuffer::onSetLabel\28\29 +10555:GrGLBuffer::onRelease\28\29 +10556:GrGLBuffer::onMap\28GrGpuBuffer::MapType\29 +10557:GrGLBuffer::onClearToZero\28\29 +10558:GrGLBuffer::onAbandon\28\29 +10559:GrGLBackendTextureData::~GrGLBackendTextureData\28\29.1 +10560:GrGLBackendTextureData::~GrGLBackendTextureData\28\29 +10561:GrGLBackendTextureData::isSameTexture\28GrBackendTextureData\20const*\29\20const +10562:GrGLBackendTextureData::isProtected\28\29\20const +10563:GrGLBackendTextureData::getBackendFormat\28\29\20const +10564:GrGLBackendTextureData::equal\28GrBackendTextureData\20const*\29\20const +10565:GrGLBackendTextureData::copyTo\28SkAnySubclass&\29\20const +10566:GrGLBackendRenderTargetData::isProtected\28\29\20const +10567:GrGLBackendRenderTargetData::getBackendFormat\28\29\20const +10568:GrGLBackendRenderTargetData::equal\28GrBackendRenderTargetData\20const*\29\20const +10569:GrGLBackendRenderTargetData::copyTo\28SkAnySubclass&\29\20const +10570:GrGLBackendFormatData::toString\28\29\20const +10571:GrGLBackendFormatData::stencilBits\28\29\20const +10572:GrGLBackendFormatData::equal\28GrBackendFormatData\20const*\29\20const +10573:GrGLBackendFormatData::desc\28\29\20const +10574:GrGLBackendFormatData::copyTo\28SkAnySubclass&\29\20const +10575:GrGLBackendFormatData::compressionType\28\29\20const +10576:GrGLBackendFormatData::channelMask\28\29\20const +10577:GrGLBackendFormatData::bytesPerBlock\28\29\20const +10578:GrGLAttachment::~GrGLAttachment\28\29 +10579:GrGLAttachment::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +10580:GrGLAttachment::onSetLabel\28\29 +10581:GrGLAttachment::onRelease\28\29 +10582:GrGLAttachment::onAbandon\28\29 +10583:GrGLAttachment::backendFormat\28\29\20const +10584:GrFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10585:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10586:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +10587:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10588:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10589:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::name\28\29\20const +10590:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10591:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::clone\28\29\20const +10592:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10593:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const +10594:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::name\28\29\20const +10595:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::clone\28\29\20const +10596:GrFragmentProcessor::ProgramImpl::~ProgramImpl\28\29 +10597:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10598:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const +10599:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::name\28\29\20const +10600:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::clone\28\29\20const +10601:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10602:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const +10603:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::name\28\29\20const +10604:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10605:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::clone\28\29\20const +10606:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10607:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const +10608:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::name\28\29\20const +10609:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10610:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::clone\28\29\20const +10611:GrFixedClip::~GrFixedClip\28\29.1 +10612:GrFixedClip::~GrFixedClip\28\29 +10613:GrExternalTextureGenerator::onGenerateTexture\28GrRecordingContext*\2c\20SkImageInfo\20const&\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +10614:GrEagerDynamicVertexAllocator::lock\28unsigned\20long\2c\20int\29 +10615:GrDynamicAtlas::~GrDynamicAtlas\28\29.1 +10616:GrDynamicAtlas::~GrDynamicAtlas\28\29 +10617:GrDrawOp::usesStencil\28\29\20const +10618:GrDrawOp::usesMSAA\28\29\20const +10619:GrDrawOp::fixedFunctionFlags\28\29\20const +10620:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29.1 +10621:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29 +10622:GrDistanceFieldPathGeoProc::onTextureSampler\28int\29\20const +10623:GrDistanceFieldPathGeoProc::name\28\29\20const +10624:GrDistanceFieldPathGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10625:GrDistanceFieldPathGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10626:GrDistanceFieldPathGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10627:GrDistanceFieldPathGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10628:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29.1 +10629:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29 +10630:GrDistanceFieldLCDTextGeoProc::name\28\29\20const +10631:GrDistanceFieldLCDTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10632:GrDistanceFieldLCDTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10633:GrDistanceFieldLCDTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10634:GrDistanceFieldLCDTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10635:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29.1 +10636:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +10637:GrDistanceFieldA8TextGeoProc::name\28\29\20const +10638:GrDistanceFieldA8TextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10639:GrDistanceFieldA8TextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10640:GrDistanceFieldA8TextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10641:GrDistanceFieldA8TextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10642:GrDisableColorXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10643:GrDisableColorXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10644:GrDirectContext::~GrDirectContext\28\29.1 +10645:GrDirectContext::releaseResourcesAndAbandonContext\28\29 +10646:GrDirectContext::init\28\29 +10647:GrDirectContext::abandoned\28\29 +10648:GrDirectContext::abandonContext\28\29 +10649:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29.1 +10650:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29 +10651:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29.1 +10652:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29 +10653:GrCpuVertexAllocator::unlock\28int\29 +10654:GrCpuVertexAllocator::lock\28unsigned\20long\2c\20int\29 +10655:GrCpuBuffer::unref\28\29\20const +10656:GrCoverageSetOpXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10657:GrCoverageSetOpXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10658:GrCopyRenderTask::~GrCopyRenderTask\28\29.1 +10659:GrCopyRenderTask::onMakeSkippable\28\29 +10660:GrCopyRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +10661:GrCopyRenderTask::onExecute\28GrOpFlushState*\29 +10662:GrCopyRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +10663:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10664:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10665:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const +10666:GrConvexPolyEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10667:GrConvexPolyEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10668:GrConvexPolyEffect::name\28\29\20const +10669:GrConvexPolyEffect::clone\28\29\20const +10670:GrContext_Base::~GrContext_Base\28\29.1 +10671:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29.1 +10672:GrContextThreadSafeProxy::isValidCharacterizationForVulkan\28sk_sp\2c\20bool\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20bool\2c\20bool\29 +10673:GrConicEffect::name\28\29\20const +10674:GrConicEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10675:GrConicEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10676:GrConicEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10677:GrConicEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10678:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29.1 +10679:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29 +10680:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10681:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10682:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const +10683:GrColorSpaceXformEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10684:GrColorSpaceXformEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10685:GrColorSpaceXformEffect::name\28\29\20const +10686:GrColorSpaceXformEffect::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10687:GrColorSpaceXformEffect::clone\28\29\20const +10688:GrCaps::~GrCaps\28\29 +10689:GrCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +10690:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29.1 +10691:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29 +10692:GrBitmapTextGeoProc::onTextureSampler\28int\29\20const +10693:GrBitmapTextGeoProc::name\28\29\20const +10694:GrBitmapTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10695:GrBitmapTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10696:GrBitmapTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10697:GrBitmapTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10698:GrBicubicEffect::onMakeProgramImpl\28\29\20const +10699:GrBicubicEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10700:GrBicubicEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10701:GrBicubicEffect::name\28\29\20const +10702:GrBicubicEffect::clone\28\29\20const +10703:GrBicubicEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10704:GrBicubicEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10705:GrAttachment::onGpuMemorySize\28\29\20const +10706:GrAttachment::getResourceType\28\29\20const +10707:GrAttachment::computeScratchKey\28skgpu::ScratchKey*\29\20const +10708:GrAtlasManager::~GrAtlasManager\28\29.1 +10709:GrAtlasManager::preFlush\28GrOnFlushResourceProvider*\29 +10710:GrAtlasManager::postFlush\28skgpu::AtlasToken\29 +10711:GrAATriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +10712:GetRectsForRange\28skia::textlayout::Paragraph&\2c\20unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +10713:GetRectsForPlaceholders\28skia::textlayout::Paragraph&\29 +10714:GetLineMetrics\28skia::textlayout::Paragraph&\29 +10715:GetLineMetricsAt\28skia::textlayout::Paragraph&\2c\20unsigned\20long\29 +10716:GetGlyphInfoAt\28skia::textlayout::Paragraph&\2c\20unsigned\20long\29 +10717:GetCoeffsFast +10718:GetCoeffsAlt +10719:GetClosestGlyphInfoAtCoordinate\28skia::textlayout::Paragraph&\2c\20float\2c\20float\29 +10720:FontMgrRunIterator::~FontMgrRunIterator\28\29.1 +10721:FontMgrRunIterator::~FontMgrRunIterator\28\29 +10722:FontMgrRunIterator::currentFont\28\29\20const +10723:FontMgrRunIterator::consume\28\29 +10724:ExtractGreen_C +10725:ExtractAlpha_C +10726:ExtractAlphaRows +10727:ExternalWebGLTexture::~ExternalWebGLTexture\28\29.1 +10728:ExternalWebGLTexture::~ExternalWebGLTexture\28\29 +10729:ExternalWebGLTexture::getBackendTexture\28\29 +10730:ExternalWebGLTexture::dispose\28\29 +10731:ExportAlphaRGBA4444 +10732:ExportAlpha +10733:Equals\28SkPath\20const&\2c\20SkPath\20const&\29 +10734:End +10735:EmitYUV +10736:EmitSampledRGB +10737:EmitRescaledYUV +10738:EmitRescaledRGB +10739:EmitRescaledAlphaYUV +10740:EmitRescaledAlphaRGB +10741:EmitFancyRGB +10742:EmitAlphaYUV +10743:EmitAlphaRGBA4444 +10744:EmitAlphaRGB +10745:EllipticalRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10746:EllipticalRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10747:EllipticalRRectOp::name\28\29\20const +10748:EllipticalRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10749:EllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10750:EllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10751:EllipseOp::name\28\29\20const +10752:EllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10753:EllipseGeometryProcessor::name\28\29\20const +10754:EllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10755:EllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10756:EllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10757:Dual_Project +10758:DitherCombine8x8_C +10759:DispatchAlpha_C +10760:DispatchAlphaToGreen_C +10761:DisableColorXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +10762:DisableColorXP::name\28\29\20const +10763:DisableColorXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10764:DisableColorXP::makeProgramImpl\28\29\20const +10765:Direct_Move_Y +10766:Direct_Move_X +10767:Direct_Move_Orig_Y +10768:Direct_Move_Orig_X +10769:Direct_Move_Orig +10770:Direct_Move +10771:DefaultGeoProc::name\28\29\20const +10772:DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10773:DefaultGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10774:DefaultGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10775:DefaultGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10776:DataFontLoader::loadSystemFonts\28SkFontScanner\20const*\2c\20skia_private::TArray\2c\20true>*\29\20const +10777:DIEllipseOp::~DIEllipseOp\28\29.1 +10778:DIEllipseOp::~DIEllipseOp\28\29 +10779:DIEllipseOp::visitProxies\28std::__2::function\20const&\29\20const +10780:DIEllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10781:DIEllipseOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10782:DIEllipseOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10783:DIEllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10784:DIEllipseOp::name\28\29\20const +10785:DIEllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10786:DIEllipseGeometryProcessor::name\28\29\20const +10787:DIEllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10788:DIEllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10789:DIEllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10790:DC8uv_C +10791:DC8uvNoTop_C +10792:DC8uvNoTopLeft_C +10793:DC8uvNoLeft_C +10794:DC4_C +10795:DC16_C +10796:DC16NoTop_C +10797:DC16NoTopLeft_C +10798:DC16NoLeft_C +10799:CustomXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10800:CustomXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +10801:CustomXP::xferBarrierType\28GrCaps\20const&\29\20const +10802:CustomXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +10803:CustomXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10804:CustomXP::name\28\29\20const +10805:CustomXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10806:CustomXP::makeProgramImpl\28\29\20const +10807:CustomTeardown +10808:CustomSetup +10809:CustomPut +10810:Current_Ppem_Stretched +10811:Current_Ppem +10812:Cr_z_zcfree +10813:Cr_z_zcalloc +10814:CoverageSetOpXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +10815:CoverageSetOpXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10816:CoverageSetOpXP::name\28\29\20const +10817:CoverageSetOpXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +10818:CoverageSetOpXP::makeProgramImpl\28\29\20const +10819:CopyPath\28SkPath\20const&\29 +10820:ConvertRGB24ToY_C +10821:ConvertBGR24ToY_C +10822:ConvertARGBToY_C +10823:ColorTableEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10824:ColorTableEffect::onMakeProgramImpl\28\29\20const +10825:ColorTableEffect::name\28\29\20const +10826:ColorTableEffect::clone\28\29\20const +10827:CircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +10828:CircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10829:CircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10830:CircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10831:CircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10832:CircularRRectOp::name\28\29\20const +10833:CircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10834:CircleOp::~CircleOp\28\29.1 +10835:CircleOp::~CircleOp\28\29 +10836:CircleOp::visitProxies\28std::__2::function\20const&\29\20const +10837:CircleOp::programInfo\28\29 +10838:CircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10839:CircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10840:CircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10841:CircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10842:CircleOp::name\28\29\20const +10843:CircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10844:CircleGeometryProcessor::name\28\29\20const +10845:CircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10846:CircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10847:CircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10848:CanInterpolate\28SkPath\20const&\2c\20SkPath\20const&\29 +10849:ButtCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +10850:ButtCapDashedCircleOp::visitProxies\28std::__2::function\20const&\29\20const +10851:ButtCapDashedCircleOp::programInfo\28\29 +10852:ButtCapDashedCircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10853:ButtCapDashedCircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10854:ButtCapDashedCircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10855:ButtCapDashedCircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10856:ButtCapDashedCircleOp::name\28\29\20const +10857:ButtCapDashedCircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10858:ButtCapDashedCircleGeometryProcessor::name\28\29\20const +10859:ButtCapDashedCircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10860:ButtCapDashedCircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10861:ButtCapDashedCircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10862:BluntJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +10863:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10864:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10865:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const +10866:BlendFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +10867:BlendFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10868:BlendFragmentProcessor::name\28\29\20const +10869:BlendFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +10870:BlendFragmentProcessor::clone\28\29\20const +10871:AutoCleanPng::infoCallback\28unsigned\20long\29 +10872:AutoCleanPng::decodeBounds\28\29 +10873:ApplyTrim\28SkPath&\2c\20float\2c\20float\2c\20bool\29 +10874:ApplyTransform\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10875:ApplyStroke\28SkPath&\2c\20StrokeOpts\29 +10876:ApplySimplify\28SkPath&\29 +10877:ApplyRewind\28SkPath&\29 +10878:ApplyReset\28SkPath&\29 +10879:ApplyRQuadTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\29 +10880:ApplyRMoveTo\28SkPath&\2c\20float\2c\20float\29 +10881:ApplyRLineTo\28SkPath&\2c\20float\2c\20float\29 +10882:ApplyRCubicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10883:ApplyRConicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10884:ApplyRArcToArcSize\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29 +10885:ApplyQuadTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\29 +10886:ApplyPathOp\28SkPath&\2c\20SkPath\20const&\2c\20SkPathOp\29 +10887:ApplyMoveTo\28SkPath&\2c\20float\2c\20float\29 +10888:ApplyLineTo\28SkPath&\2c\20float\2c\20float\29 +10889:ApplyDash\28SkPath&\2c\20float\2c\20float\2c\20float\29 +10890:ApplyCubicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10891:ApplyConicTo\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10892:ApplyClose\28SkPath&\29 +10893:ApplyArcToTangent\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +10894:ApplyArcToArcSize\28SkPath&\2c\20float\2c\20float\2c\20float\2c\20bool\2c\20bool\2c\20float\2c\20float\29 +10895:ApplyAlphaMultiply_C +10896:ApplyAlphaMultiply_16b_C +10897: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 +10898:AlphaReplace_C +10899:$_3::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\29 +10900:$_2::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\29 +10901:$_1::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\29 +10902:$_0::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\29 diff --git a/resources/web/flutter_web/canvaskit/chromium/canvaskit.wasm b/resources/web/flutter_web/canvaskit/chromium/canvaskit.wasm new file mode 100644 index 0000000000..6be909fbf4 Binary files /dev/null and b/resources/web/flutter_web/canvaskit/chromium/canvaskit.wasm differ diff --git a/resources/web/flutter_web/canvaskit/skwasm.js b/resources/web/flutter_web/canvaskit/skwasm.js new file mode 100644 index 0000000000..a2c2c501d9 --- /dev/null +++ b/resources/web/flutter_web/canvaskit/skwasm.js @@ -0,0 +1,172 @@ + +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&&l();return h}function p(){d.buffer!=h.buffer&&l();return ca}function q(){d.buffer!=h.buffer&&l();return da}function t(){d.buffer!=h.buffer&&l();return ea}function v(){d.buffer!=h.buffer&&l();return fa}function ha(){d.buffer!=h.buffer&&l();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,k)=>{g?e(g):c(f?k.buffer:k)})};!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 l(){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");l();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.Aa(a)}function Ya(a){var b=I.ma();if(!b)return 6;I.B.push(b);I.g[a.o]=b;b.o=a.o;var c={cmd:"run",start_routine:a.Ba,arg:a.ka,pthread_ptr:a.o};c.H=a.H;c.T=a.T;x&&b.unref();b.postMessage(c,a.Ha);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.Ca();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={u:[],B:[],ha:[],g:{},S: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.za;I.threadInitTLS=I.ga;I.setExitStatus=I.fa;noExitRuntime=!1},fa:function(a){Ca=a},Oa:["$terminateWorker"],Ca:function(){for(var a of I.B)Wa(a);for(a of I.u)Wa(a);I.u=[];I.B=[];I.g=[]},Aa:function(a){var b=a.o;delete I.g[b];I.u.push(a);I.B.splice(I.B.indexOf(a),1);a.o=0;db(b)},za:function(a){"undefined"!= +typeof eb&&(Object.assign(L,a.T),!w.canvas&&a.H&&L[a.H]&&(w.canvas=L[a.H].I,w.canvas.id=a.H))},ga:function(){I.ha.forEach(a=>a())},ba:a=>new Promise(b=>{a.onmessage=g=>{g=g.data;var k=g.cmd;if(g.targetThread&&g.targetThread!=fb()){var n=I.g[g.Na];n?n.postMessage(g,g.transferList):D('Internal error! Worker sent a message "'+k+'" to target pthread '+g.targetThread+", but that thread no longer exists!")}else if("checkMailbox"===k)gb();else if("spawnThread"===k)Ya(g);else if("cleanupThread"===k)Xa(g.thread); +else if("killThread"===k)g=g.thread,k=I.g[g],delete I.g[g],Wa(k),db(g),I.B.splice(I.B.indexOf(k),1),k.o=0;else if("cancelThread"===k)I.g[g.thread].postMessage({cmd:"cancel"});else if("loaded"===k)a.loaded=!0,x&&!a.o&&a.unref(),b(a);else if("alert"===k)alert("Thread "+g.threadId+": "+g.text);else if("setimmediate"===g.target)a.postMessage(g);else if("callHandler"===k)w[g.handler](...g.args);else k&&D("worker sent an unknown command "+k)};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.u.map(I.ba)).then(a)},X:function(){var a=qa("skwasm.worker.js");a=new Worker(a);I.u.push(a)},ma:function(){0==I.u.length&&(I.X(), +I.ba(I.u[0]));return I.u.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.G=a-24;this.ua=function(b){t()[this.G+4>>2]=b};this.sa=function(b){t()[this.G+8>>2]=b};this.S=function(b,c){this.na();this.ua(b);this.sa(c)};this.na=function(){t()[this.G+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,k=b?t()[b+40>>2]:0;4294967295==k?k="#canvas":k&&(k=J(k).trim());k&&(k=k.split(","));var n={},r=w.canvas?w.canvas.id:"",u;for(u in k){var y=k[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={I: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.I),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={Ba:c,o:a,ka:e,H:r,T:n,Ha:f};return A?(a.Ja="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.Ia&&(Atomics.Ia(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=k){var n=a.charCodeAt(++g);k=65536+((k&1023)<<10)|n&1023}if(127>=k){if(c>=e)break;b[c++]=k}else{if(2047>=k){if(c+1>=e)break;b[c++]=192|k>>6}else{if(65535>=k){if(c+2>=e)break;b[c++]=224|k>>12}else{if(c+3>=e)break; +b[c++]=240|k>>18;b[c++]=128|k>>12&63}b[c++]=128|k>>6&63}b[c++]=128|k&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,k){b.drawElementsInstancedANGLE(c,e,f,g,k)})} +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.Ma=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,v:a};a.canvas&&(a.canvas.K=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.v;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.I||!e.Y)e.I&&(e=e.I),a=!1,e.K&&e.K.v&&(a=e.K.v.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.K.v.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,k,n){return A?K(9,1,a,b,c,e,f,g,k,n):-52}function cc(a,b,c,e,f,g,k){if(A)return K(10,1,a,b,c,e,f,g,k)}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 jc(a){a-=5120;0==a?a=aa():1==a?a=p():2==a?(d.buffer!=h.buffer&&l(),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&&l(),a=Ea);return a}function kc(a,b,c,e,f){a=jc(a);var g=31-Math.clz32(a.BYTES_PER_ELEMENT),k=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 lc(a,b,c,e,f,g,k){if(2<=T.version)if(U.R)U.readPixels(a,b,c,e,f,g,k);else{var n=jc(g);U.readPixels(a,b,c,e,f,g,n,k>>31-Math.clz32(n.BYTES_PER_ELEMENT))}else(k=kc(g,f,c,e,k))?U.readPixels(a,b,c,e,f,g,k):S(1280)}function K(a,b){var c=arguments.length-2,e=arguments;return xb(()=>{for(var f=Cb(8*c),g=f>>3,k=0;k{if(!pc){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 oc)void 0===oc[b]?delete a[b]:a[b]=oc[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);pc=c}return pc},pc; +function rc(a,b){if(A)return K(11,1,a,b);var c=0;qc().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 sc(a,b){if(A)return K(12,1,a,b);var c=qc();t()[a>>2]=c.length;var e=0;c.forEach(function(f){e+=f.length+1});t()[b>>2]=e;return 0}function tc(a){return A?K(13,1,a):52}function uc(a,b,c,e,f,g){return A?K(14,1,a,b,c,e,f,g):52}function vc(a,b,c,e){return A?K(15,1,a,b,c,e):52} +function wc(a,b,c,e,f){return A?K(16,1,a,b,c,e,f):70}var xc=[null,[],[]];function yc(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 zc(a){U.bindVertexArray(Ob[a])}function Ac(a,b){for(var c=0;c>2];U.deleteVertexArray(Ob[e]);Ob[e]=null}}var Bc=[]; +function Cc(a,b,c,e){U.drawElements(a,b,c,e)}function Dc(a,b,c,e){for(var f=0;f>2]=k}}function Ec(a,b){Dc(a,b,"createVertexArray",Ob)}function Fc(a){return"]"==a.slice(-1)&&a.lastIndexOf("[")}function W(a){var b=U.la;if(b){var c=b.J[a];"number"==typeof c&&(b.J[a]=c=U.getUniformLocation(b,b.ia[a]+(00===a%4&&(0!==a%100||0===a%400),Xc=[31,29,31,30,31,30,31,31,30,31,30,31],Yc=[31,28,31,30,31,30,31,31,30,31,30,31];function Zc(a){var b=Array(yb(a)+1);zb(a,b,0,b.length);return b} +var $c=(a,b)=>{aa().set(a,b)},ad=(a,b,c,e)=>{function f(m,z,B){for(m="number"==typeof m?m.toString():m||"";m.lengthOc?-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>=k(z,m)?0>=k(B,m)?m.getFullYear()+1:m.getFullYear():m.getFullYear()-1}var u=q()[e+40>>2];e={Fa:q()[e>>2],Ea:q()[e+4>>2],O:q()[e+8>>2],V:q()[e+12>>2],P:q()[e+16>>2],D:q()[e+20>>2],l:q()[e+24>>2],C:q()[e+28>>2],Pa:q()[e+32>>2],Da:q()[e+36>>2],Ga: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.P].substring(0,3),"%B":m=>E[m.P],"%C":m=>g((m.D+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.O,2),"%I":m=>{m=m.O;0==m?m=12:12{for(var z=0,B=0;B<=m.P-1;z+=(Wc(m.D+1900)?Xc:Yc)[B++]);return g(m.V+z,3)},"%m":m=>g(m.P+1,2),"%M":m=>g(m.Ea,2),"%n":()=>"\n","%p":m=>0<=m.O&&12>m.O?"AM":"PM","%S":m=>g(m.Fa,2),"%t":()=>"\t","%u":m=>m.l||7,"%U":m=>g(Math.floor((m.C+7-m.l)/7),2),"%V":m=>{var z=Math.floor((m.C+7-(m.l+6)%7)/7);2>=(m.l+371-m.C-2)%7&&z++;if(z)53==z&& +(B=(m.l+371-m.C)%7,4==B||3==B&&Wc(m.D)||(z=1));else{z=52;var B=(m.l+7-m.C-1)%7;(4==B||5==B&&Wc(m.D%400-1))&&z++}return g(z,2)},"%w":m=>m.l,"%W":m=>g(Math.floor((m.C+7-(m.l+6)%7)/7),2),"%y":m=>(m.D+1900).toString().substring(2),"%Y":m=>m.D+1900,"%z":m=>{m=m.Da;var z=0<=m;m=Math.abs(m)/60;return(z?"+":"-")+String("0000"+(m/60*100+m%60)).slice(-4)},"%Z":m=>m.Ga,"%%":()=>"%"};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=Zc(c); +if(y.length>b)return 0;$c(y,a);return y.length-1},bd=void 0,cd=[];I.S();for(var U,Y=0;32>Y;++Y)Bc.push(Array(Y));var dd=new Float32Array(288);for(Y=0;288>Y;++Y)X[Y]=dd.subarray(0,Y+1);var ed=new Int32Array(288);for(Y=0;288>Y;++Y)Gc[Y]=ed.subarray(0,Y+1); +(function(){const a=new Map,b=new Map;let c;Uc=function(e,f,g){I.g[e].postMessage({s:"setAssociatedObject",U:f,object:g},[g])};Pc=function(e){return b.get(e)};Vc=function(e){I.g[e].postMessage({s:"syncTimeOrigin",timeOrigin:performance.timeOrigin})};Rc=function(e){function f({data:g}){var k=g.s;if(k)switch(k){case "syncTimeOrigin":c=performance.timeOrigin-g.timeOrigin;break;case "renderPictures":fd(g.m,g.wa,g.va,g.A,performance.now()+c);break;case "onRenderComplete":gd(g.m,g.A,{imageBitmaps:g.oa, +rasterStartMilliseconds:g.ya,rasterEndMilliseconds:g.xa});break;case "setAssociatedObject":b.set(g.U,g.object);break;case "disposeAssociatedObject":g=g.U;k=b.get(g);k.close&&k.close();b.delete(g);break;case "disposeSurface":hd(g.m);break;case "rasterizeImage":jd(g.m,g.image,g.format,g.A);break;case "onRasterizeComplete":kd(g.m,g.data,g.A);break;default:console.warn(`unrecognized skwasm message: ${k}`)}}e?I.g[e].addEventListener("message",f):addEventListener("message",f)};Mc=function(e,f,g,k,n){I.g[e].postMessage({s:"renderPictures", +m:f,wa:g,va:k,A:n})};Jc=function(e,f){e=new OffscreenCanvas(e,f);f=Wb(e);a.set(f,e);return f};Sc=function(e,f,g){e=a.get(e);e.width=f;e.height=g};Hc=function(e,f,g,k){k||(k=[]);e=a.get(e);k.push(createImageBitmap(e,0,0,f,g));return k};Tc=async function(e,f,g,k){f=f?await Promise.all(f):[];postMessage({s:"onRenderComplete",m:e,A:k,oa:f,ya:g,xa:performance.now()+c},[...f])};Ic=function(e,f,g){const k=T.v,n=k.createTexture();k.bindTexture(k.TEXTURE_2D,n);k.pixelStorei(k.UNPACK_PREMULTIPLY_ALPHA_WEBGL, +!0);k.texImage2D(k.TEXTURE_2D,0,k.RGBA,f,g,0,k.RGBA,k.UNSIGNED_BYTE,e);k.pixelStorei(k.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);k.bindTexture(k.TEXTURE_2D,null);e=Vb(P);P[e]=n;return e};Nc=function(e,f){I.g[e].postMessage({s:"disposeAssociatedObject",U:f})};Kc=function(e,f){I.g[e].postMessage({s:"disposeSurface",m:f})};Lc=function(e,f,g,k,n){I.g[e].postMessage({s:"rasterizeImage",m:f,image:g,format:k,A:n})};Qc=function(e,f,g){postMessage({s:"onRasterizeComplete",m:e,data:f,A:g})}})(); +var ld=[null,ab,bb,nb,qb,rb,sb,tb,ac,bc,cc,rc,sc,tc,uc,vc,wc,yc],xd={__cxa_throw:function(a,b,c){(new kb(a)).S(b,c);lb=a;mb++;throw lb;},__emscripten_init_main_thread_js:function(a){md(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_glReadPixels:lc,emscripten_receive_on_main_thread_js:function(a,b,c,e){I.La=b;nc.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);l();var g=1;break a}catch(k){}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.v.getExtension(b)},emscripten_webgl_get_current_context:function(){return T?T.handle:0},emscripten_webgl_make_context_current:function(a){T=Pb[a];w.Ka=U=T&&T.v;return!a||U?0:-5},environ_get:rc,environ_sizes_get:sc,exit:cb,fd_close:tc,fd_pread:uc,fd_read:vc,fd_seek:wc,fd_write:yc,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.R=b:35052==a&&(U.F=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:zc,glBindVertexArrayOES:zc,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,k,n, +r,u){U.blitFramebuffer(a,b,c,e,f,g,k,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,k,n){2<=T.version?U.F||!k?U.compressedTexImage2D(a,b,c,e,f,g,k,n):U.compressedTexImage2D(a,b,c,e,f,g,p(),n,k):U.compressedTexImage2D(a,b,c,e,f,g,n?p().subarray(n,n+k):null)},glCompressedTexSubImage2D:function(a,b,c,e,f,g,k,n,r){2<=T.version?U.F||!n?U.compressedTexSubImage2D(a,b,c,e,f,g,k,n,r):U.compressedTexSubImage2D(a,b,c,e,f,g,k,p(),r,n): +U.compressedTexSubImage2D(a,b,c,e,f,g,k,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,k,n){U.copyTexSubImage2D(a,b,c,e,f,g,k,n)},glCreateProgram:function(){var a=Vb(O),b=U.createProgram();b.name=a;b.N=b.L=b.M=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.R&&(U.R=0),e==U.F&&(U.F=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:Ac,glDeleteVertexArraysOES:Ac,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=Bc[a],e=0;e>2];U.drawBuffers(c)},glDrawElements:Cc,glDrawElementsInstanced:function(a,b,c,e,f){U.drawElementsInstanced(a,b,c,e,f)},glDrawElementsInstancedBaseVertexBaseInstanceWEBGL:function(a, +b,c,e,f,g,k){U.Z.drawElementsInstancedBaseVertexBaseInstanceWEBGL(a,b,c,e,f,g,k)},glDrawRangeElements:function(a,b,c,e,f,g){Cc(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){Dc(a,b,"createBuffer",Lb)},glGenFramebuffers:function(a,b){Dc(a,b,"createFramebuffer",Mb)},glGenRenderbuffers:function(a,b){Dc(a,b,"createRenderbuffer",Nb)},glGenSamplers:function(a,b){Dc(a,b,"createSampler",R)},glGenTextures:function(a,b){Dc(a,b,"createTexture",P)},glGenVertexArrays:Ec,glGenVertexArraysOES:Ec,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.N)for(b=0;b>2]=a.N}else if(35722==b){if(!a.L)for(b=0;b>2]=a.L}else if(35381==b){if(!a.M)for(b=0;b>2]=a.M}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.J,f=c.ja,g;if(!e)for(c.J=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,k){for(var n=Bc[b],r=0;r>2];U.invalidateSubFramebuffer(a,n,e,f,g,k)},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.J=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,k,n){U.ea.multiDrawElementsInstancedBaseVertexBaseInstanceWEBGL(a,q(),b>>2,c,q(),e>>2,q(),f>>2,q(),g>>2,t(),k>>2,n)},glPixelStorei:function(a,b){3317==a&&(Tb=b);U.pixelStorei(a,b)},glReadBuffer:function(a){U.readBuffer(a)}, +glReadPixels:lc,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>k?void 0:k)}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,k,n,r){if(2<=T.version)if(U.F)U.texImage2D(a, +b,c,e,f,g,k,n,r);else if(r){var u=jc(n);U.texImage2D(a,b,c,e,f,g,k,n,u,r>>31-Math.clz32(u.BYTES_PER_ELEMENT))}else U.texImage2D(a,b,c,e,f,g,k,n,null);else U.texImage2D(a,b,c,e,f,g,k,n,r?kc(n,k,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,k,n,r){if(2<=T.version)if(U.F)U.texSubImage2D(a,b,c,e,f,g,k,n,r);else if(r){var u=jc(n);U.texSubImage2D(a,b,c,e,f,g,k,n,u,r>>31-Math.clz32(u.BYTES_PER_ELEMENT))}else U.texSubImage2D(a,b,c,e,f,g,k,n,null);else u=null,r&&(u=kc(n,k,f,g,r)),U.texSubImage2D(a,b,c,e,f,g,k,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=Gc[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=Gc[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=Gc[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 k=c+g;e[g]=f[k];e[g+1]=f[k+1];e[g+2]=f[k+2];e[g+3]=f[k+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=Gc[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 k=0;k<16*b;k+=16){var n=e+k;f[k]=g[n];f[k+1]=g[n+1];f[k+2]=g[n+2];f[k+3]=g[n+3];f[k+4]=g[n+4];f[k+5]=g[n+5];f[k+6]=g[n+6];f[k+7]=g[n+7];f[k+8]=g[n+8];f[k+9]=g[n+9];f[k+10]=g[n+10];f[k+11]=g[n+11];f[k+12]=g[n+12];f[k+13]=g[n+13];f[k+14]=g[n+14];f[k+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:nd,invoke_iii:od,invoke_iiii:pd,invoke_iiiii:qd,invoke_iiiiiii:rd,invoke_vi:sd,invoke_vii:td,invoke_viii:ud,invoke_viiii:vd,invoke_viiiiiii:wd,memory:d||w.wasmMemory,skwasm_captureImageBitmap:Hc,skwasm_createGlTextureFromTextureSource:Ic,skwasm_createOffscreenCanvas:Jc,skwasm_dispatchDisposeSurface:Kc,skwasm_dispatchRasterizeImage:Lc,skwasm_dispatchRenderPictures:Mc,skwasm_disposeAssociatedObjectOnThread:Nc,skwasm_getAssociatedObject:Pc,skwasm_postRasterizeResult:Qc, +skwasm_registerMessageListener:Rc,skwasm_resizeCanvas:Sc,skwasm_resolveAndPostImages:Tc,skwasm_setAssociatedObjectOnThread:Uc,skwasm_syncTimeOriginForThread:Vc,strftime_l:(a,b,c,e)=>ad(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:xd,wasi_snapshot_preview1:xd};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,k,n,r)=>(w._canvas_drawAtlas=F.canvas_drawAtlas)(a,b,c,e,f,g,k,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,k)=>(w._path_cubicTo=F.path_cubicTo)(a,b,c,e,f,g,k);w._path_relativeCubicTo=(a,b,c,e,f,g,k)=>(w._path_relativeCubicTo=F.path_relativeCubicTo)(a,b,c,e,f,g,k);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,k,n)=>(w._path_arcToRotated=F.path_arcToRotated)(a,b,c,e,f,g,k,n);w._path_relativeArcToRotated=(a,b,c,e,f,g,k,n)=>(w._path_relativeArcToRotated=F.path_relativeArcToRotated)(a,b,c,e,f,g,k,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,k,n)=>(w._shader_createRadialGradient=F.shader_createRadialGradient)(a,b,c,e,f,g,k,n); +w._shader_createConicalGradient=(a,b,c,e,f,g,k,n)=>(w._shader_createConicalGradient=F.shader_createConicalGradient)(a,b,c,e,f,g,k,n);w._shader_createSweepGradient=(a,b,c,e,f,g,k,n,r)=>(w._shader_createSweepGradient=F.shader_createSweepGradient)(a,b,c,e,f,g,k,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);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);var hd=w._surface_dispose=a=>(hd=w._surface_dispose=F.surface_dispose)(a);w._surface_renderPictures=(a,b,c)=>(w._surface_renderPictures=F.surface_renderPictures)(a,b,c);var fd=w._surface_renderPicturesOnWorker=(a,b,c,e,f)=>(fd=w._surface_renderPicturesOnWorker=F.surface_renderPicturesOnWorker)(a,b,c,e,f); +w._surface_rasterizeImage=(a,b,c)=>(w._surface_rasterizeImage=F.surface_rasterizeImage)(a,b,c);var jd=w._surface_rasterizeImageOnWorker=(a,b,c,e)=>(jd=w._surface_rasterizeImageOnWorker=F.surface_rasterizeImageOnWorker)(a,b,c,e),gd=w._surface_onRenderComplete=(a,b,c)=>(gd=w._surface_onRenderComplete=F.surface_onRenderComplete)(a,b,c),kd=w._surface_onRasterizeComplete=(a,b,c)=>(kd=w._surface_onRasterizeComplete=F.surface_onRasterizeComplete)(a,b,c); +w._lineMetrics_create=(a,b,c,e,f,g,k,n,r)=>(w._lineMetrics_create=F.lineMetrics_create)(a,b,c,e,f,g,k,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._paragraphStyle_setApplyRoundingHack=(a,b)=>(w._paragraphStyle_setApplyRoundingHack=F.paragraphStyle_setApplyRoundingHack)(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,k)=>(w._vertices_create=F.vertices_create)(a,b,c,e,f,g,k);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 md=w.__emscripten_thread_init=(a,b,c,e,f,g)=>(md=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 mc=(a,b,c,e)=>(mc=F._emscripten_run_in_main_runtime_thread_js)(a,b,c,e),Db=(a,b,c,e,f)=>(Db=F.emscripten_dispatch_to_thread_)(a,b,c,e,f),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 od(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 td(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 nd(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 ud(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 pd(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 vd(a,b,c,e,f){var g=N();try{G.get(a)(b,c,e,f)}catch(k){M(g);if(k!==k+0)throw k;Z(1,0)}}function wd(a,b,c,e,f,g,k,n){var r=N();try{G.get(a)(b,c,e,f,g,k,n)}catch(u){M(r);if(u!==u+0)throw u;Z(1,0)}}function sd(a,b){var c=N();try{G.get(a)(b)}catch(e){M(c);if(e!==e+0)throw e;Z(1,0)}}function rd(a,b,c,e,f,g,k){var n=N();try{return G.get(a)(b,c,e,f,g,k)}catch(r){M(n);if(r!==r+0)throw r;Z(1,0)}} +function qd(a,b,c,e,f){var g=N();try{return G.get(a)(b,c,e,f)}catch(k){M(g);if(k!==k+0)throw k;Z(1,0)}}w.keepRuntimeAlive=Ka;w.wasmMemory=d;w.wasmExports=F; +w.addFunction=function(a,b){if(!bd){bd=new WeakMap;var c=G.length;if(bd)for(var e=0;e<0+c;e++){var f=G.get(e);f&&bd.set(f,e)}}if(c=bd.get(a)||0)return c;if(cd.length)c=cd.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]]]},k=1;kk?e.push(k):e.push(k%128|128,k>>7);for(k=0;kf?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)}bd.set(a,c);return c};w.ExitStatus=Va;w.PThread=I;var yd;Ma=function zd(){yd||Ad();yd||(Ma=zd)}; +function Ad(){function a(){if(!yd&&(yd=!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/resources/web/flutter_web/canvaskit/skwasm.js.symbols b/resources/web/flutter_web/canvaskit/skwasm.js.symbols new file mode 100644 index 0000000000..9857c9b3b0 --- /dev/null +++ b/resources/web/flutter_web/canvaskit/skwasm.js.symbols @@ -0,0 +1,12035 @@ +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:skwasm_registerMessageListener +10:invoke_viiiiiii +11:glGetString +12:glDeleteTextures +13:emscripten_glGetIntegerv +14:emscripten_exit_with_live_runtime +15:__wasi_fd_close +16:__syscall_fcntl64 +17:strftime_l +18:skwasm_syncTimeOriginForThread +19:skwasm_setAssociatedObjectOnThread +20:skwasm_resolveAndPostImages +21:skwasm_resizeCanvas +22:skwasm_postRasterizeResult +23:skwasm_getAssociatedObject +24:skwasm_disposeAssociatedObjectOnThread +25:skwasm_dispatchRenderPictures +26:skwasm_dispatchRasterizeImage +27:skwasm_dispatchDisposeSurface +28:skwasm_createOffscreenCanvas +29:skwasm_createGlTextureFromTextureSource +30:skwasm_captureImageBitmap +31:legalimport$glWaitSync +32:legalimport$glClientWaitSync +33:legalimport$_munmap_js +34:legalimport$_mmap_js +35:legalimport$__wasi_fd_seek +36:legalimport$__wasi_fd_pread +37:invoke_iiiiiii +38:invoke_iiiii +39:invoke_iiii +40:glViewport +41:glVertexAttribPointer +42:glVertexAttribIPointer +43:glVertexAttribDivisor +44:glVertexAttrib4fv +45:glVertexAttrib3fv +46:glVertexAttrib2fv +47:glVertexAttrib1f +48:glUseProgram +49:glUniformMatrix4fv +50:glUniformMatrix3fv +51:glUniformMatrix2fv +52:glUniform4iv +53:glUniform4i +54:glUniform4fv +55:glUniform4f +56:glUniform3iv +57:glUniform3i +58:glUniform3fv +59:glUniform3f +60:glUniform2iv +61:glUniform2i +62:glUniform2fv +63:glUniform2f +64:glUniform1iv +65:glUniform1i +66:glUniform1fv +67:glUniform1f +68:glTexSubImage2D +69:glTexStorage2D +70:glTexParameteriv +71:glTexParameteri +72:glTexParameterfv +73:glTexParameterf +74:glTexImage2D +75:glStencilOpSeparate +76:glStencilOp +77:glStencilMaskSeparate +78:glStencilMask +79:glStencilFuncSeparate +80:glStencilFunc +81:glShaderSource +82:glScissor +83:glSamplerParameteriv +84:glSamplerParameteri +85:glSamplerParameterf +86:glRenderbufferStorageMultisample +87:glRenderbufferStorage +88:glReadPixels +89:glReadBuffer +90:glPixelStorei +91:glMultiDrawElementsInstancedBaseVertexBaseInstanceWEBGL +92:glMultiDrawArraysInstancedBaseInstanceWEBGL +93:glLinkProgram +94:glLineWidth +95:glIsTexture +96:glIsSync +97:glInvalidateSubFramebuffer +98:glInvalidateFramebuffer +99:glGetUniformLocation +100:glGetStringi +101:glGetShaderiv +102:glGetShaderPrecisionFormat +103:glGetShaderInfoLog +104:glGetRenderbufferParameteriv +105:glGetProgramiv +106:glGetProgramInfoLog +107:glGetIntegerv +108:glGetFramebufferAttachmentParameteriv +109:glGetFloatv +110:glGetError +111:glGetBufferParameteriv +112:glGenerateMipmap +113:glGenVertexArraysOES +114:glGenVertexArrays +115:glGenTextures +116:glGenSamplers +117:glGenRenderbuffers +118:glGenFramebuffers +119:glGenBuffers +120:glFrontFace +121:glFramebufferTexture2D +122:glFramebufferRenderbuffer +123:glFlush +124:glFinish +125:glFenceSync +126:glEnableVertexAttribArray +127:glEnable +128:glDrawRangeElements +129:glDrawElementsInstancedBaseVertexBaseInstanceWEBGL +130:glDrawElementsInstanced +131:glDrawElements +132:glDrawBuffers +133:glDrawArraysInstancedBaseInstanceWEBGL +134:glDrawArraysInstanced +135:glDrawArrays +136:glDisableVertexAttribArray +137:glDisable +138:glDepthMask +139:glDeleteVertexArraysOES +140:glDeleteVertexArrays +141:glDeleteSync +142:glDeleteShader +143:glDeleteSamplers +144:glDeleteRenderbuffers +145:glDeleteProgram +146:glDeleteFramebuffers +147:glDeleteBuffers +148:glCullFace +149:glCreateShader +150:glCreateProgram +151:glCopyTexSubImage2D +152:glCopyBufferSubData +153:glCompressedTexSubImage2D +154:glCompressedTexImage2D +155:glCompileShader +156:glColorMask +157:glClearStencil +158:glClearColor +159:glClear +160:glCheckFramebufferStatus +161:glBufferSubData +162:glBufferData +163:glBlitFramebuffer +164:glBlendFunc +165:glBlendEquation +166:glBlendColor +167:glBindVertexArrayOES +168:glBindVertexArray +169:glBindTexture +170:glBindSampler +171:glBindRenderbuffer +172:glBindFramebuffer +173:glBindBuffer +174:glBindAttribLocation +175:glAttachShader +176:glActiveTexture +177:exit +178:emscripten_webgl_make_context_current +179:emscripten_webgl_get_current_context +180:emscripten_webgl_enable_extension +181:emscripten_resize_heap +182:emscripten_receive_on_main_thread_js +183:emscripten_glReadPixels +184:emscripten_glClearStencil +185:emscripten_glClearColor +186:emscripten_glClear +187:emscripten_glBindFramebuffer +188:emscripten_check_blocking_allowed +189:_emscripten_throw_longjmp +190:_emscripten_thread_set_strongref +191:_emscripten_thread_mailbox_await +192:_emscripten_set_offscreencanvas_size +193:_emscripten_notify_mailbox_postmessage +194:_emscripten_get_now_is_monotonic +195:__wasi_fd_write +196:__wasi_fd_read +197:__wasi_environ_sizes_get +198:__wasi_environ_get +199:__syscall_openat +200:__syscall_ioctl +201:__syscall_fstat64 +202:__pthread_create_js +203:__emscripten_thread_cleanup +204:__emscripten_init_main_thread_js +205:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +206:dlfree +207:sk_sp::~sk_sp\28\29 +208:operator\20new\28unsigned\20long\29 +209:GrGLSLShaderBuilder::codeAppendf\28char\20const*\2c\20...\29 +210:sk_sp::~sk_sp\28\29 +211:void\20SkSafeUnref\28GrSurfaceProxy*\29\20\28.4210\29 +212:void\20SkSafeUnref\28SkImageFilter*\29\20\28.2087\29 +213:operator\20delete\28void*\29 +214:SkRasterPipeline::uncheckedAppend\28SkRasterPipelineOp\2c\20void*\29 +215:void\20SkSafeUnref\28SkString::Rec*\29 +216:GrGLSLShaderBuilder::codeAppend\28char\20const*\29 +217:__cxa_guard_release +218:__cxa_guard_acquire +219:SkSL::ErrorReporter::error\28SkSL::Position\2c\20std::__2::basic_string_view>\29 +220:SkSL::GLSLCodeGenerator::write\28std::__2::basic_string_view>\29 +221: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 +222:hb_blob_destroy +223:SkImageGenerator::onIsProtected\28\29\20const +224:SkDebugf\28char\20const*\2c\20...\29 +225:fmaxf +226:skia_private::TArray::~TArray\28\29 +227: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 +228:SkSL::Type::matches\28SkSL::Type\20const&\29\20const +229:std::__2::basic_string\2c\20std::__2::allocator>::size\5babi:v160004\5d\28\29\20const +230:std::__2::__function::__value_func::~__value_func\5babi:v160004\5d\28\29 +231:hb_sanitize_context_t::check_range\28void\20const*\2c\20unsigned\20int\29\20const +232:GrShaderVar::~GrShaderVar\28\29 +233:void\20SkSafeUnref\28SkPathRef*\29 +234: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 +235:testSetjmp +236:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::destroy\28\29 +237:hb_buffer_t::message\28hb_font_t*\2c\20char\20const*\2c\20...\29 +238:GrColorInfo::~GrColorInfo\28\29 +239:SkArenaAlloc::allocObject\28unsigned\20int\2c\20unsigned\20int\29 +240:std::__2::basic_string\2c\20std::__2::allocator>::basic_string>\2c\20void>\28std::__2::basic_string_view>\20const&\29 +241:fminf +242:SkPaint::~SkPaint\28\29 +243:SkAnySubclass::reset\28\29 +244:FT_DivFix +245:sk_sp::reset\28SkFontStyleSet*\29 +246:SkMutex::release\28\29 +247:strlen +248: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.5821\29 +249:SkPath::SkPath\28\29 +250:std::exception::~exception\28\29 +251:skia_private::TArray>\2c\20true>::~TArray\28\29 +252:skia_png_crc_finish +253:skia_png_chunk_benign_error +254:hb_buffer_t::next_glyph\28\29 +255:SkSL::RP::Generator::pushExpression\28SkSL::Expression\20const&\2c\20bool\29 +256:SkSL::Pool::AllocMemory\28unsigned\20long\29 +257:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char\20const*\29 +258:SkSL::RP::Builder::appendInstruction\28SkSL::RP::BuilderOp\2c\20SkSL::RP::Builder::SlotList\2c\20int\2c\20int\2c\20int\2c\20int\29 +259:SkMatrix::hasPerspective\28\29\20const +260:sk_report_container_overflow_and_die\28\29 +261:SkSemaphore::wait\28\29 +262:SkBitmap::~SkBitmap\28\29 +263:skgpu::ganesh::VertexChunkPatchAllocator::append\28skgpu::tess::LinearTolerances\20const&\29 +264:SkString::appendf\28char\20const*\2c\20...\29 +265: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 +266:SkWriter32::write32\28int\29 +267:SkContainerAllocator::allocate\28int\2c\20double\29 +268:\28anonymous\20namespace\29::ColorTypeFilter_F16F16::Expand\28unsigned\20int\29 +269:FT_MulDiv +270:SkString::append\28char\20const*\29 +271:SkArenaAlloc::allocObjectWithFooter\28unsigned\20int\2c\20unsigned\20int\29 +272:std::__2::basic_string\2c\20std::__2::allocator>::append\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +273:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +274:OT::VarStoreInstancer::operator\28\29\28unsigned\20int\2c\20unsigned\20short\29\20const +275:SkIRect::intersect\28SkIRect\20const&\29 +276:dlmalloc +277:ft_mem_realloc +278:skia_png_free +279:lang_matches\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20int\29 +280:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +281:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\29 +282:SkSL::Parser::expect\28SkSL::Token::Kind\2c\20char\20const*\2c\20SkSL::Token*\29 +283:SkIntersections::insert\28double\2c\20double\2c\20SkDPoint\20const&\29 +284:ft_mem_qrealloc +285:SkMatrix::invert\28SkMatrix*\29\20const +286:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +287:std::__2::basic_string\2c\20std::__2::allocator>::resize\28unsigned\20long\2c\20char\29 +288:sk_sp::~sk_sp\28\29 +289:sk_sp::~sk_sp\28\29 +290:SkIRect::isEmpty\28\29\20const +291:skia_private::TArray::push_back\28SkSL::RP::Program::Stage&&\29 +292:cf2_stack_popFixed +293:GrTextureGenerator::isTextureGenerator\28\29\20const +294:void\20SkSafeUnref\28SkColorSpace*\29\20\28.2042\29 +295:strcmp +296:SkSL::GLSLCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +297:SkBitmap::SkBitmap\28\29 +298:subtag_matches\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20int\29 +299:std::__2::vector\2c\20std::__2::allocator>>::__throw_length_error\5babi:v160004\5d\28\29\20const +300:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +301:cf2_stack_getReal +302:SkSL::Type::displayName\28\29\20const +303:sk_sp::reset\28SkImageFilter*\29 +304:dlcalloc +305:SkImageGenerator::onGetYUVAPlanes\28SkYUVAPixmaps\20const&\29 +306:GrAuditTrail::pushFrame\28char\20const*\29 +307:std::__2::locale::~locale\28\29 +308:FT_Stream_Seek +309:skif::FilterResult::~FilterResult\28\29 +310:SkPaint::SkPaint\28SkPaint\20const&\29 +311:hb_vector_t::fini\28\29 +312:SkString::SkString\28SkString&&\29 +313:GrGeometryProcessor::Attribute::asShaderVar\28\29\20const +314:strncmp +315:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrShaderCaps*\29 +316:SkBlitter::~SkBlitter\28\29.1 +317:std::__2::to_string\28int\29 +318:SkTDStorage::~SkTDStorage\28\29 +319:SkSL::Parser::peek\28\29 +320:std::__2::ios_base::getloc\28\29\20const +321:std::__2::basic_string\2c\20std::__2::allocator>::__get_pointer\5babi:v160004\5d\28\29 +322:hb_ot_map_builder_t::add_feature\28unsigned\20int\2c\20hb_ot_map_feature_flags_t\2c\20unsigned\20int\29 +323:SkWStream::writeText\28char\20const*\29 +324:GrProcessor::operator\20new\28unsigned\20long\29 +325:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28\29 +326:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float\2c\20float\2c\20void>\28float\2c\20skvx::Vec<4\2c\20float>\20const&\29 +327:SkPath::getBounds\28\29\20const +328:SkMakeRuntimeEffect\28SkRuntimeEffect::Result\20\28*\29\28SkString\2c\20SkRuntimeEffect::Options\20const&\29\2c\20char\20const*\2c\20SkRuntimeEffect::Options\29 +329:GrPixmapBase::~GrPixmapBase\28\29 +330:GrGLSLUniformHandler::addUniform\28GrProcessor\20const*\2c\20unsigned\20int\2c\20SkSLType\2c\20char\20const*\2c\20char\20const**\29 +331:void\20SkSafeUnref\28SkData\20const*\29\20\28.1172\29 +332:hb_face_t::get_num_glyphs\28\29\20const +333:SkString::~SkString\28\29 +334:GrSurfaceProxyView::operator=\28GrSurfaceProxyView&&\29 +335:GrPaint::~GrPaint\28\29 +336:FT_Stream_ReadUShort +337: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 +338:__errno_location +339:SkIRect::contains\28SkIRect\20const&\29\20const +340:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +341: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 +342:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +343: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 +344:sk_sp::~sk_sp\28\29 +345:SkMatrix::SkMatrix\28\29 +346:SkArenaAlloc::RunDtorsOnBlock\28char*\29 +347:skia_png_warning +348:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +349:SkString::SkString\28char\20const*\29 +350:GrGLContextInfo::hasExtension\28char\20const*\29\20const +351:skgpu::Swizzle::Swizzle\28char\20const*\29 +352:hb_sanitize_context_t::start_processing\28\29 +353:__shgetc +354:FT_Stream_GetUShort +355:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28wchar_t\20const*\29 +356:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28char\20const*\29 +357:skia_private::TArray>\2c\20true>::push_back\28std::__2::unique_ptr>&&\29 +358:hb_sanitize_context_t::~hb_sanitize_context_t\28\29 +359:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::istreambuf_iterator>\20const&\2c\20std::__2::istreambuf_iterator>\20const&\29 +360:SkSL::Expression::clone\28\29\20const +361:SkMatrix::mapRect\28SkRect*\2c\20SkRect\20const&\2c\20SkApplyPerspectiveClip\29\20const +362:std::__2::shared_ptr<_IO_FILE>::~shared_ptr\5babi:v160004\5d\28\29 +363:hb_lazy_loader_t\2c\20hb_face_t\2c\2033u\2c\20hb_blob_t>::do_destroy\28hb_blob_t*\29 +364:SkDQuad::set\28SkPoint\20const*\29 +365:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +366:skia_private::AutoSTMalloc<17ul\2c\20SkPoint\2c\20void>::~AutoSTMalloc\28\29 +367:FT_Stream_ExitFrame +368:std::__throw_bad_array_new_length\5babi:v160004\5d\28\29 +369:skvx::Vec<4\2c\20int>\20skvx::operator&<4\2c\20int>\28skvx::Vec<4\2c\20int>\20const&\2c\20skvx::Vec<4\2c\20int>\20const&\29 +370:skia_png_error +371:memcmp +372:hb_face_reference_table +373:SkPixmap::SkPixmap\28\29 +374:SkPath::SkPath\28SkPath\20const&\29 +375:skif::FilterResult::FilterResult\28\29 +376:skgpu::ganesh::SurfaceDrawContext::addDrawOp\28GrClip\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::function\20const&\29 +377:hb_buffer_t::unsafe_to_break\28unsigned\20int\2c\20unsigned\20int\29 +378:\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16::Expand\28unsigned\20long\20long\29 +379:\28anonymous\20namespace\29::ColorTypeFilter_8888::Expand\28unsigned\20int\29 +380:\28anonymous\20namespace\29::ColorTypeFilter_16161616::Expand\28unsigned\20long\20long\29 +381:\28anonymous\20namespace\29::ColorTypeFilter_1010102::Expand\28unsigned\20long\20long\29 +382:SkStringPrintf\28char\20const*\2c\20...\29 +383:SkRecord::grow\28\29 +384:SkPictureRecord::addDraw\28DrawType\2c\20unsigned\20long*\29 +385:OT::Layout::Common::Coverage::get_coverage\28unsigned\20int\29\20const +386: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 +387:std::__2::__cloc\28\29 +388:sscanf +389:skvx::Vec<4\2c\20int>\20skvx::operator!<4\2c\20int>\28skvx::Vec<4\2c\20int>\20const&\29 +390:skia::textlayout::ParagraphImpl::getUTF16Index\28unsigned\20long\29\20const +391:__cxa_atexit +392:SkRect::intersect\28SkRect\20const&\29 +393:skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>::STArray\28skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>&&\29 +394:skia_png_chunk_error +395:hb_blob_get_data_writable +396:bool\20hb_sanitize_context_t::check_range>\28OT::IntType\20const*\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +397:__multf3 +398: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 +399:SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0::operator\28\29\28SkSL::FunctionDefinition\20const*\2c\20SkSL::FunctionDefinition\20const*\29\20const +400:SkSL::GLSLCodeGenerator::writeLine\28std::__2::basic_string_view>\29 +401:SkRect::outset\28float\2c\20float\29 +402:SkMatrix::mapPoints\28SkPoint*\2c\20int\29\20const +403:SkMatrix::getType\28\29\20const +404:SkChecksum::Hash32\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20int\29 +405: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 +406:std::__2::basic_string_view>::compare\28std::__2::basic_string_view>\29\20const +407: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 +408:SkSL::String::printf\28char\20const*\2c\20...\29 +409:SkNullBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +410:SkIRect::Intersects\28SkIRect\20const&\2c\20SkIRect\20const&\29 +411:SkArenaAlloc::makeBytesAlignedTo\28unsigned\20long\2c\20unsigned\20long\29 +412:GrGLSLVaryingHandler::addVarying\28char\20const*\2c\20GrGLSLVarying*\2c\20GrGLSLVaryingHandler::Interpolation\29 +413:GrBackendFormats::AsGLFormat\28GrBackendFormat\20const&\29 +414:FT_Stream_EnterFrame +415:strstr +416:std::__2::locale::id::__get\28\29 +417:std::__2::locale::facet::facet\5babi:v160004\5d\28unsigned\20long\29 +418:skgpu::UniqueKey::~UniqueKey\28\29 +419:ft_mem_alloc +420:SkString::operator=\28char\20const*\29 +421:SkSL::Pool::FreeMemory\28void*\29 +422:SkRect::setBoundsCheck\28SkPoint\20const*\2c\20int\29 +423:SkDPoint::approximatelyEqual\28SkDPoint\20const&\29\20const +424:GrProcessorSet::GrProcessorSet\28GrPaint&&\29 +425:GrOpFlushState::bindPipelineAndScissorClip\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +426:std::__2::locale::__imp::install\28std::__2::locale::facet*\2c\20long\29 +427:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +428:skia_png_muldiv +429:f_t_mutex\28\29 +430:SkTDStorage::reserve\28int\29 +431:SkSL::RP::Builder::discard_stack\28int\29 +432:GrStyledShape::~GrStyledShape\28\29 +433:GrOp::~GrOp\28\29 +434:GrGeometryProcessor::AttributeSet::initImplicit\28GrGeometryProcessor::Attribute\20const*\2c\20int\29 +435:void\20SkSafeUnref\28GrSurface*\29 +436:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +437: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 +438:sk_sp::~sk_sp\28\29 +439:hb_buffer_t::unsafe_to_concat\28unsigned\20int\2c\20unsigned\20int\29 +440:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +441:SkSL::PipelineStage::PipelineStageCodeGenerator::writeExpression\28SkSL::Expression\20const&\2c\20SkSL::OperatorPrecedence\29 +442:SkRegion::freeRuns\28\29 +443:SkRect::roundOut\28\29\20const +444:SkRect::contains\28SkRect\20const&\29\20const +445:SkPoint::length\28\29\20const +446:SkPath::~SkPath\28\29 +447:SkMatrix::mapPoints\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +448:std::__2::unique_ptr::~unique_ptr\5babi:v160004\5d\28\29 +449: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 +450: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 +451:cf2_stack_pushFixed +452: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 +453:SkSL::RP::Builder::binary_op\28SkSL::RP::BuilderOp\2c\20int\29 +454:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20SkFilterMode\2c\20SkMipmapMode\29 +455:GrShaderVar::GrShaderVar\28char\20const*\2c\20SkSLType\2c\20int\29 +456:GrProcessor::operator\20new\28unsigned\20long\2c\20unsigned\20long\29 +457:GrOp::GenID\28std::__2::atomic*\29 +458:GrImageInfo::GrImageInfo\28GrImageInfo&&\29 +459:GrGLSLVaryingHandler::addPassThroughAttribute\28GrShaderVar\20const&\2c\20char\20const*\2c\20GrGLSLVaryingHandler::Interpolation\29 +460:GrFragmentProcessor::registerChild\28std::__2::unique_ptr>\2c\20SkSL::SampleUsage\29 +461:textStyle_setDecoration +462:std::__2::istreambuf_iterator>::operator*\5babi:v160004\5d\28\29\20const +463:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +464:std::__2::__split_buffer&>::~__split_buffer\28\29 +465:sk_sp::~sk_sp\28\29 +466:hb_buffer_t::merge_clusters\28unsigned\20int\2c\20unsigned\20int\29 +467:dlrealloc +468:SkSL::SymbolTable::addWithoutOwnershipOrDie\28SkSL::Symbol*\29 +469:SkSL::Nop::~Nop\28\29 +470:SkRecords::FillBounds::updateSaveBounds\28SkRect\20const&\29 +471:SkPoint::normalize\28\29 +472:SkPath::lineTo\28float\2c\20float\29 +473:SkMatrix::mapRect\28SkRect\20const&\2c\20SkApplyPerspectiveClip\29\20const +474:SkMatrix::isIdentity\28\29\20const +475:SkJSONWriter::write\28char\20const*\2c\20unsigned\20long\29 +476:GrSkSLFP::UniformPayloadSize\28SkRuntimeEffect\20const*\29 +477:GrSkSLFP::GrSkSLFP\28sk_sp\2c\20char\20const*\2c\20GrSkSLFP::OptFlags\29 +478:std::__2::unique_ptr::unique_ptr\5babi:v160004\5d\28char*\2c\20std::__2::__dependent_type\2c\20true>::__good_rval_ref_type\29 +479:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +480: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 +481:std::__2::__throw_system_error\28int\2c\20char\20const*\29 +482:skia_private::TArray::push_back_raw\28int\29 +483:skgpu::UniqueKey::UniqueKey\28\29 +484:sk_sp::reset\28GrSurface*\29 +485:__multi3 +486:SkTDArray::push_back\28SkPoint\20const&\29 +487:SkStrokeRec::getStyle\28\29\20const +488:SkSL::fold_expression\28SkSL::Position\2c\20double\2c\20SkSL::Type\20const*\29 +489:SkPath::lineTo\28SkPoint\20const&\29 +490:SkJSONWriter::appendBool\28char\20const*\2c\20bool\29 +491:GrTriangulator::Comparator::sweep_lt\28SkPoint\20const&\2c\20SkPoint\20const&\29\20const +492:CFF::arg_stack_t::pop_uint\28\29 +493:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +494:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +495:skia_png_crc_read +496:SkSpinlock::acquire\28\29 +497:SkSL::Type::MakeAliasType\28std::__2::basic_string_view>\2c\20SkSL::Type\20const&\29 +498:SkSL::Parser::rangeFrom\28SkSL::Position\29 +499:SkSL::Parser::checkNext\28SkSL::Token::Kind\2c\20SkSL::Token*\29 +500:SkMatrix::isScaleTranslate\28\29\20const +501:SkMatrix::Concat\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +502:GrOpFlushState::bindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +503:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +504:std::__2::__throw_bad_function_call\5babi:v160004\5d\28\29 +505:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +506:sk_malloc_throw\28unsigned\20long\2c\20unsigned\20long\29 +507:hb_paint_funcs_t::pop_transform\28void*\29 +508:fma +509:a_cas +510:SkStrikeSpec::~SkStrikeSpec\28\29 +511:SkSL::RP::Builder::lastInstruction\28int\29 +512:SkMatrix::rectStaysRect\28\29\20const +513:SkMatrix::mapRect\28SkRect*\2c\20SkApplyPerspectiveClip\29\20const +514:SkColorSpaceXformSteps::SkColorSpaceXformSteps\28SkColorSpace\20const*\2c\20SkAlphaType\2c\20SkColorSpace\20const*\2c\20SkAlphaType\29 +515:OT::ArrayOf\2c\20OT::IntType>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +516:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28char\29 +517:sk_malloc_flags\28unsigned\20long\2c\20unsigned\20int\29 +518:hb_draw_funcs_t::start_path\28void*\2c\20hb_draw_state_t&\29 +519:hb_buffer_t::reverse\28\29 +520:SkTDStorage::append\28\29 +521:SkTDArray::append\28\29 +522:SkString::operator=\28SkString\20const&\29 +523:SkSL::Type::toCompound\28SkSL::Context\20const&\2c\20int\2c\20int\29\20const +524:SkSL::RP::Generator::binaryOp\28SkSL::Type\20const&\2c\20SkSL::RP::Generator::TypedOps\20const&\29 +525:SkRecords::FillBounds::adjustAndMap\28SkRect\2c\20SkPaint\20const*\29\20const +526:SkPath::operator=\28SkPath\20const&\29 +527:SkMatrix::preConcat\28SkMatrix\20const&\29 +528:SkMatrix::postTranslate\28float\2c\20float\29 +529:SkMatrix::Translate\28float\2c\20float\29 +530:SkDCubic::set\28SkPoint\20const*\29 +531:GrStyle::isSimpleFill\28\29\20const +532:GrGLSLVaryingHandler::emitAttributes\28GrGeometryProcessor\20const&\29 +533: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 +534:std::__2::unique_ptr::reset\5babi:v160004\5d\28unsigned\20char*\29 +535:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +536: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 +537:skif::FilterResult::operator=\28skif::FilterResult&&\29 +538:skgpu::VertexColor::set\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20bool\29 +539:skgpu::ResourceKey::Builder::finish\28\29 +540:sk_sp::~sk_sp\28\29 +541:pthread_mutex_unlock +542:ft_validator_error +543:_hb_next_syllable\28hb_buffer_t*\2c\20unsigned\20int\29 +544:SkSL::Parser::error\28SkSL::Token\2c\20std::__2::basic_string_view>\29 +545:SkSL::GLSLCodeGenerator::writeIdentifier\28std::__2::basic_string_view>\29 +546:SkSL::ConstantFolder::GetConstantValueForVariable\28SkSL::Expression\20const&\29 +547:SkPictureRecord::addPaintPtr\28SkPaint\20const*\29 +548:SkPath::reset\28\29 +549:SkGlyph::rowBytes\28\29\20const +550:GrSurfaceProxy::backingStoreDimensions\28\29\20const +551:GrProgramInfo::visitFPProxies\28std::__2::function\20const&\29\20const +552:GrMeshDrawOp::createProgramInfo\28GrMeshDrawTarget*\29 +553:GrGpu::handleDirtyContext\28\29 +554:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28\29 +555:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +556: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.6962\29 +557: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 +558:skia_private::TArray::Allocate\28int\2c\20double\29 +559:skia_private::TArray\2c\20true>::installDataAndUpdateCapacity\28SkSpan\29 +560:pthread_mutex_lock +561: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 +562:hb_draw_funcs_t::emit_line_to\28void*\2c\20hb_draw_state_t&\2c\20float\2c\20float\29 +563:SkWriter32::reserve\28unsigned\20long\29 +564:SkTSect::pointLast\28\29\20const +565:SkTDArray::push_back\28int\20const&\29 +566:SkStrokeRec::isHairlineStyle\28\29\20const +567:SkSL::Type::MakeVectorType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\29 +568:SkSL::TProgramVisitor::visitStatement\28SkSL::Statement\20const&\29 +569:SkRect::join\28SkRect\20const&\29 +570:SkPath::Iter::next\28SkPoint*\29 +571:SkMatrix::Scale\28float\2c\20float\29 +572:FT_Stream_ReadFields +573:FT_Stream_GetULong +574:target_from_texture_type\28GrTextureType\29 +575:std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +576:std::__2::ctype::widen\5babi:v160004\5d\28char\29\20const +577:std::__2::__unique_if::__unique_array_unknown_bound\20std::__2::make_unique\5babi:v160004\5d\28unsigned\20long\29 +578: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 +579: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 +580:skif::Context::~Context\28\29 +581:skia::textlayout::TextStyle::~TextStyle\28\29 +582:skia::textlayout::TextStyle::TextStyle\28skia::textlayout::TextStyle\20const&\29 +583:png_icc_profile_error +584:hb_font_t::get_nominal_glyph\28unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\29 +585: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 +586:SkSL::ConstructorCompound::MakeFromConstants\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20double\20const*\29 +587:SkRect::roundOut\28SkIRect*\29\20const +588:SkPathPriv::Iterate::Iterate\28SkPath\20const&\29 +589: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 +590:SkColorSpace::MakeSRGB\28\29 +591:SkBitmap::SkBitmap\28SkBitmap\20const&\29 +592:OT::OffsetTo\2c\20OT::IntType\2c\20true>::operator\28\29\28void\20const*\29\20const +593:GrFragmentProcessor::ProgramImpl::invokeChild\28int\2c\20GrFragmentProcessor::ProgramImpl::EmitArgs&\2c\20std::__2::basic_string_view>\29 +594:GrCaps::getDefaultBackendFormat\28GrColorType\2c\20skgpu::Renderable\29\20const +595:FT_Stream_ReleaseFrame +596:DefaultGeoProc::Impl::~Impl\28\29 +597: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 +598: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 +599:sk_srgb_singleton\28\29 +600:out +601:cosf +602:cf2_stack_popInt +603:SkSemaphore::~SkSemaphore\28\29 +604:SkSL::Type::coerceExpression\28std::__2::unique_ptr>\2c\20SkSL::Context\20const&\29\20const +605:SkSL::Type::MakeGenericType\28char\20const*\2c\20SkSpan\2c\20SkSL::Type\20const*\29 +606:SkSL::RP::SlotManager::getVariableSlots\28SkSL::Variable\20const&\29 +607:SkRGBA4f<\28SkAlphaType\292>::operator!=\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +608:SkPathStroker::lineTo\28SkPoint\20const&\2c\20SkPath::Iter\20const*\29 +609:SkPath::conicTo\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\29 +610:SkPaint::setColor\28unsigned\20int\29 +611:SkMatrix::postConcat\28SkMatrix\20const&\29 +612:SkImageInfo::minRowBytes\28\29\20const +613:SkDrawBase::~SkDrawBase\28\29 +614:SkDCubic::ptAtT\28double\29\20const +615:GrStyle::~GrStyle\28\29 +616:GrShaderVar::operator=\28GrShaderVar&&\29 +617:GrProcessor::operator\20delete\28void*\29 +618:GrImageInfo::GrImageInfo\28SkImageInfo\20const&\29 +619:GrColorInfo::GrColorInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\29 +620:FT_Outline_Translate +621:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +622:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +623:std::__2::__check_grouping\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int&\29 +624:skvx::Vec<4\2c\20int>\20skvx::operator|<4\2c\20int>\28skvx::Vec<4\2c\20int>\20const&\2c\20skvx::Vec<4\2c\20int>\20const&\29 +625:skia_private::TArray::push_back\28int&&\29 +626:skia_png_chunk_report +627:pad +628:__memcpy +629:__ashlti3 +630:SkTCoincident::setPerp\28SkTCurve\20const&\2c\20double\2c\20SkDPoint\20const&\2c\20SkTCurve\20const&\29 +631:SkSL::Type::MakeMatrixType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type\20const&\2c\20int\2c\20signed\20char\29 +632:SkSL::Parser::nextToken\28\29 +633:SkSL::Operator::tightOperatorName\28\29\20const +634: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 +635:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29 +636:SkPath::Iter::setPath\28SkPath\20const&\2c\20bool\29 +637:SkDVector::crossCheck\28SkDVector\20const&\29\20const +638:SkColorSpaceXformSteps::apply\28float*\29\20const +639:SkCanvas::internalQuickReject\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\29 +640:SkBlitter::~SkBlitter\28\29 +641:SkBitmapDevice::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +642:GrSimpleMeshDrawOpHelper::~GrSimpleMeshDrawOpHelper\28\29 +643:GrSimpleMeshDrawOpHelper::visitProxies\28std::__2::function\20const&\29\20const +644:GrShape::reset\28\29 +645:GrShape::bounds\28\29\20const +646:GrShaderVar::appendDecl\28GrShaderCaps\20const*\2c\20SkString*\29\20const +647:GrQuad::MakeFromRect\28SkRect\20const&\2c\20SkMatrix\20const&\29 +648:GrOpFlushState::drawMesh\28GrSimpleMesh\20const&\29 +649:GrMatrixEffect::Make\28SkMatrix\20const&\2c\20std::__2::unique_ptr>\29 +650:GrAAConvexTessellator::Ring::index\28int\29\20const +651:DefaultGeoProc::~DefaultGeoProc\28\29 +652:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +653:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +654:skgpu::ResourceKey::operator==\28skgpu::ResourceKey\20const&\29\20const +655:hb_buffer_t::unsafe_to_break_from_outbuffer\28unsigned\20int\2c\20unsigned\20int\29 +656: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 +657:cff2_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +658: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 +659:cff1_path_param_t::cubic_to\28CFF::point_t\20const&\2c\20CFF::point_t\20const&\2c\20CFF::point_t\20const&\29 +660: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 +661:byn$mgfn-shared$std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +662:_hb_glyph_info_get_modified_combining_class\28hb_glyph_info_t\20const*\29 +663:SkSL::TProgramVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +664:SkRasterPipeline::extend\28SkRasterPipeline\20const&\29 +665:SkPixmap::operator=\28SkPixmap\20const&\29 +666:SkPath::moveTo\28SkPoint\20const&\29 +667:SkPath::close\28\29 +668:SkPath::RangeIter::operator++\28\29 +669:SkOpPtT::contains\28SkOpPtT\20const*\29\20const +670:SkNullBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +671:SkMatrixPriv::CheapEqual\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +672:SkIRect::intersect\28SkIRect\20const&\2c\20SkIRect\20const&\29 +673:SkAAClipBlitterWrapper::~SkAAClipBlitterWrapper\28\29 +674:OT::hb_paint_context_t::recurse\28OT::Paint\20const&\29 +675:OT::hb_ot_apply_context_t::init_iters\28\29 +676:GrTextureProxy::mipmapped\28\29\20const +677:GrStyledShape::asPath\28SkPath*\29\20const +678:GrShaderVar::GrShaderVar\28char\20const*\2c\20SkSLType\2c\20GrShaderVar::TypeModifier\29 +679:GrGLGpu::setTextureUnit\28int\29 +680:GrGLGpu::clearErrorsAndCheckForOOM\28\29 +681:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::~Impl\28\29 +682:GrCPixmap::GrCPixmap\28GrImageInfo\2c\20void\20const*\2c\20unsigned\20long\29 +683:GrAppliedClip::~GrAppliedClip\28\29 +684:FT_Load_Glyph +685:CFF::cff_stack_t::pop\28\29 +686: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 +687:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +688:std::__2::numpunct::thousands_sep\5babi:v160004\5d\28\29\20const +689:std::__2::numpunct::grouping\5babi:v160004\5d\28\29\20const +690:std::__2::ctype\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +691: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 +692:std::__2::basic_string\2c\20std::__2::allocator>::__throw_length_error\5babi:v160004\5d\28\29\20const +693: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 +694:skif::LayerSpace::outset\28skif::LayerSpace\20const&\29 +695:skif::Context::Context\28skif::Context\20const&\29 +696:skgpu::ResourceKey::Builder::Builder\28skgpu::ResourceKey*\2c\20unsigned\20int\2c\20int\29 +697:rewind\28GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +698:hb_sanitize_context_t::end_processing\28\29 +699:hb_buffer_t::move_to\28unsigned\20int\29 +700:ft_mem_qalloc +701:fmodf +702:_output_with_dotted_circle\28hb_buffer_t*\29 +703:SkTSpan::pointLast\28\29\20const +704:SkTDStorage::resize\28int\29 +705:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression\20const&\29 +706:SkSL::Parser::rangeFrom\28SkSL::Token\29 +707:SkSL::FunctionDeclaration::description\28\29\20const +708:SkPathRef::isFinite\28\29\20const +709:SkPathRef::Editor::Editor\28sk_sp*\2c\20int\2c\20int\2c\20int\29 +710:SkImageInfo::MakeA8\28int\2c\20int\29 +711:SkDrawable::getFlattenableType\28\29\20const +712:SkDPoint::ApproximatelyEqual\28SkPoint\20const&\2c\20SkPoint\20const&\29 +713:SkBlockAllocator::reset\28\29 +714:GrSimpleMeshDrawOpHelperWithStencil::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20bool*\29 +715:GrGeometryProcessor::ProgramImpl::SetTransform\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrResourceHandle\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix*\29 +716:GrGLSLVertexGeoBuilder::insertFunction\28char\20const*\29 +717:GrDrawingManager::flushIfNecessary\28\29 +718:FT_Stream_ExtractFrame +719:Cr_z_crc32 +720:std::__2::enable_if<_CheckArrayPointerConversion::value\2c\20void>::type\20std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrGLCaps::ColorTypeInfo*\29 +721:std::__2::ctype::widen\5babi:v160004\5d\28char\29\20const +722:std::__2::char_traits::assign\28char&\2c\20char\20const&\29 +723:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_size\5babi:v160004\5d\28unsigned\20long\29 +724:std::__2::__unique_if::__unique_array_unknown_bound\20std::__2::make_unique\5babi:v160004\5d\28unsigned\20long\29 +725:std::__2::__compressed_pair_elem::__compressed_pair_elem\5babi:v160004\5d\28void\20\28*&&\29\28void*\29\29 +726: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 +727:skia_private::TArray::checkRealloc\28int\2c\20double\29 +728:skgpu::tess::StrokeIterator::enqueue\28skgpu::tess::StrokeIterator::Verb\2c\20SkPoint\20const*\2c\20float\20const*\29 +729:skgpu::ganesh::SurfaceFillContext::getOpsTask\28\29 +730:skgpu::ganesh::AsView\28GrRecordingContext*\2c\20SkImage\20const*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +731:__addtf3 +732:SkSL::RP::Builder::push_constant_i\28int\2c\20int\29 +733:SkSL::RP::Builder::label\28int\29 +734:SkPath::isConvex\28\29\20const +735:SkPaintToGrPaint\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +736:SkMatrix::mapXY\28float\2c\20float\2c\20SkPoint*\29\20const +737:SkImageInfo::operator=\28SkImageInfo\20const&\29 +738:SkImageGenerator::onIsValid\28GrRecordingContext*\29\20const +739:SkImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +740:SkCanvas::concat\28SkMatrix\20const&\29 +741:SkBitmap::tryAllocPixels\28SkImageInfo\20const&\29 +742:GrSkSLFP::addChild\28std::__2::unique_ptr>\2c\20bool\29 +743:GrProcessorSet::~GrProcessorSet\28\29 +744:GrGeometryProcessor::Attribute&\20skia_private::TArray::emplace_back\28char\20const\20\28&\29\20\5b10\5d\2c\20GrVertexAttribType&&\2c\20SkSLType&&\29 +745:GrGLGpu::bindBuffer\28GrGpuBufferType\2c\20GrBuffer\20const*\29 +746:GrFragmentProcessor::ProgramImpl::invokeChild\28int\2c\20char\20const*\2c\20char\20const*\2c\20GrFragmentProcessor::ProgramImpl::EmitArgs&\2c\20std::__2::basic_string_view>\29 +747:FT_Stream_ReadByte +748:ubidi_getParaLevelAtIndex_skia +749:std::__2::char_traits::copy\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +750:std::__2::basic_string\2c\20std::__2::allocator>::begin\5babi:v160004\5d\28\29 +751:std::__2::basic_string\2c\20std::__2::allocator>::__set_short_size\5babi:v160004\5d\28unsigned\20long\29 +752:std::__2::__libcpp_snprintf_l\28char*\2c\20unsigned\20long\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +753:skia_private::TArray::push_back\28bool&&\29 +754:skia::textlayout::OneLineShaper::RunBlock::operator=\28skia::textlayout::OneLineShaper::RunBlock&&\29 +755:skia::textlayout::Cluster::run\28\29\20const +756: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 +757:skgpu::ganesh::SurfaceContext::PixelTransferResult::~PixelTransferResult\28\29 +758:is_equal\28std::type_info\20const*\2c\20std::type_info\20const*\2c\20bool\29 +759:hb_ot_map_t::get_1_mask\28unsigned\20int\29\20const +760:hb_font_get_glyph +761:hb_draw_funcs_t::emit_quadratic_to\28void*\2c\20hb_draw_state_t&\2c\20float\2c\20float\2c\20float\2c\20float\29 +762:hb_buffer_t::unsafe_to_concat_from_outbuffer\28unsigned\20int\2c\20unsigned\20int\29 +763:cff_index_get_sid_string +764:_hb_font_funcs_set_middle\28hb_font_funcs_t*\2c\20void*\2c\20void\20\28*\29\28void*\29\29 +765:__floatsitf +766:SkWriter32::writeScalar\28float\29 +767:SkTDArray<\28anonymous\20namespace\29::YOffset>::append\28\29 +768:SkString::data\28\29 +769:SkSL::SymbolTable::find\28std::__2::basic_string_view>\29\20const +770:SkSL::RP::Generator::pushVectorizedExpression\28SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +771:SkSL::RP::Builder::swizzle\28int\2c\20SkSpan\29 +772:SkSL::Parser::error\28SkSL::Position\2c\20std::__2::basic_string_view>\29 +773:SkSL::Nop::Make\28\29 +774:SkRegion::setRect\28SkIRect\20const&\29 +775:SkPaint::setColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\29 +776:SkPaint::setBlendMode\28SkBlendMode\29 +777:SkPaint::asBlendMode\28\29\20const +778:SkMatrix::preTranslate\28float\2c\20float\29 +779:SkMatrix::getMaxScale\28\29\20const +780:SkJSONWriter::appendHexU32\28char\20const*\2c\20unsigned\20int\29 +781:SkDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +782:SkBlender::Mode\28SkBlendMode\29 +783:SkBitmap::setInfo\28SkImageInfo\20const&\2c\20unsigned\20long\29 +784:SkArenaAlloc::SkArenaAlloc\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +785:OT::hb_ot_apply_context_t::skipping_iterator_t::next\28unsigned\20int*\29 +786:OT::VarSizedBinSearchArrayOf>::get_length\28\29\20const +787:GrMeshDrawTarget::allocMesh\28\29 +788:GrGLGpu::bindTextureToScratchUnit\28unsigned\20int\2c\20int\29 +789: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 +790:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::~SwizzleFragmentProcessor\28\29 +791:GrCaps::getReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +792:GrBackendFormat::GrBackendFormat\28GrBackendFormat\20const&\29 +793:CFF::cff1_cs_opset_t::check_width\28unsigned\20int\2c\20CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\29 +794:AutoFTAccess::AutoFTAccess\28SkTypeface_FreeType\20const*\29 +795:void\20SkSafeUnref\28SharedGenerator*\29 +796:strchr +797:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +798:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20char\29\20const +799:std::__2::__function::__value_func::__value_func\5babi:v160004\5d\28std::__2::__function::__value_func&&\29 +800:skia_private::TArray>\2c\20true>::reserve_exact\28int\29 +801:skia_png_get_uint_32 +802:skia::textlayout::OneLineShaper::clusterIndex\28unsigned\20long\29 +803:skgpu::ganesh::SurfaceDrawContext::chooseAAType\28GrAA\29 +804:skgpu::UniqueKey::GenerateDomain\28\29 +805:hb_buffer_t::sync_so_far\28\29 +806:hb_buffer_t::sync\28\29 +807:em_task_queue_is_empty +808:compute_side\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +809:cff_parse_num +810:byn$mgfn-shared$skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +811:SkWriter32::writeRect\28SkRect\20const&\29 +812:SkSL::Type::clone\28SkSL::Context\20const&\2c\20SkSL::SymbolTable*\29\20const +813:SkSL::RP::Generator::writeStatement\28SkSL::Statement\20const&\29 +814:SkSL::RP::Builder::unary_op\28SkSL::RP::BuilderOp\2c\20int\29 +815: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 +816:SkSL::Parser::expression\28\29 +817:SkRecords::FillBounds::pushControl\28\29 +818:SkRasterClip::~SkRasterClip\28\29 +819:SkRGBA4f<\28SkAlphaType\293>::FromColor\28unsigned\20int\29 +820:SkPath::moveTo\28float\2c\20float\29 +821:SkM44::asM33\28\29\20const +822:SkImageFilter_Base::getFlattenableType\28\29\20const +823:SkIRect::makeOutset\28int\2c\20int\29\20const +824:SkDQuad::ptAtT\28double\29\20const +825:SkDConic::ptAtT\28double\29\20const +826:SkArenaAlloc::~SkArenaAlloc\28\29 +827:SkAAClip::setEmpty\28\29 +828:OT::hb_ot_apply_context_t::skipping_iterator_t::reset\28unsigned\20int\29 +829:GrTriangulator::Line::intersect\28GrTriangulator::Line\20const&\2c\20SkPoint*\29\20const +830:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20SkISize\20const&\29 +831:GrGpuBuffer::unmap\28\29 +832:GrGeometryProcessor::ProgramImpl::WriteLocalCoord\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20GrShaderVar\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +833:GrGeometryProcessor::ProgramImpl::ComputeMatrixKey\28GrShaderCaps\20const&\2c\20SkMatrix\20const&\29 +834:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\29 +835:GrFragmentProcessor::GrFragmentProcessor\28GrFragmentProcessor\20const&\29 +836:void\20SkSafeUnref\28SkMipmap*\29 +837:ubidi_getMemory_skia +838:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +839:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +840:std::__2::optional::value\5babi:v160004\5d\28\29\20const\20& +841:std::__2::numpunct::truename\5babi:v160004\5d\28\29\20const +842:std::__2::numpunct::falsename\5babi:v160004\5d\28\29\20const +843:std::__2::numpunct::decimal_point\5babi:v160004\5d\28\29\20const +844:std::__2::moneypunct::do_grouping\28\29\20const +845:std::__2::ctype::is\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29\20const +846:std::__2::basic_string\2c\20std::__2::allocator>::empty\5babi:v160004\5d\28\29\20const +847:std::__2::basic_string\2c\20std::__2::allocator>::__set_long_cap\5babi:v160004\5d\28unsigned\20long\29 +848:std::__2::basic_string\2c\20std::__2::allocator>::__is_long\5babi:v160004\5d\28\29\20const +849:skvx::Vec<4\2c\20float>\20skvx::operator-<4\2c\20float\2c\20float\2c\20void>\28float\2c\20skvx::Vec<4\2c\20float>\20const&\29 +850:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +851: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 +852:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Hash\28SkImageFilter\20const*\20const&\29 +853:skia_private::TArray::checkRealloc\28int\2c\20double\29 +854:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +855:skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>::STArray\28skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>&&\29 +856:skia_png_reciprocal +857:skia_png_malloc_warn +858:skia::textlayout::\28anonymous\20namespace\29::relax\28float\29 +859:skgpu::ganesh::SurfaceFillContext::arenaAlloc\28\29 +860:skgpu::ganesh::SurfaceContext::readPixels\28GrDirectContext*\2c\20GrPixmap\2c\20SkIPoint\29 +861:skgpu::Swizzle::RGBA\28\29 +862:sk_sp::reset\28SkData*\29 +863:sk_sp::~sk_sp\28\29 +864:operator==\28SkIRect\20const&\2c\20SkIRect\20const&\29 +865:crc32_z +866:__unlockfile +867:__lockfile +868:SkTSect::SkTSect\28SkTCurve\20const&\29 +869:SkSL::String::Separator\28\29 +870:SkSL::RP::Generator::pushIntrinsic\28SkSL::RP::BuilderOp\2c\20SkSL::Expression\20const&\29 +871:SkSL::ProgramConfig::strictES2Mode\28\29\20const +872:SkSL::Parser::layoutInt\28\29 +873:SkRegion::Cliperator::next\28\29 +874:SkRegion::Cliperator::Cliperator\28SkRegion\20const&\2c\20SkIRect\20const&\29 +875:SkPathRef::growForVerb\28int\2c\20float\29 +876:SkPath::transform\28SkMatrix\20const&\2c\20SkPath*\2c\20SkApplyPerspectiveClip\29\20const +877:SkMipmap::ComputeLevelCount\28int\2c\20int\29 +878:SkMatrix::MakeRectToRect\28SkRect\20const&\2c\20SkRect\20const&\2c\20SkMatrix::ScaleToFit\29 +879:SkMatrix::MakeAll\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +880:SkImageInfo::operator=\28SkImageInfo&&\29 +881:SkDLine::nearPoint\28SkDPoint\20const&\2c\20bool*\29\20const +882:SkChopQuadAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +883:SkCanvas::aboutToDraw\28SkPaint\20const&\2c\20SkRect\20const*\29 +884:SkBaseShadowTessellator::appendTriangle\28unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +885:SkAutoConicToQuads::computeQuads\28SkPoint\20const*\2c\20float\2c\20float\29 +886:OT::hb_ot_apply_context_t::~hb_ot_apply_context_t\28\29 +887: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 +888:OT::ClassDef::get_class\28unsigned\20int\29\20const +889:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::$_4::operator\28\29\28char\20const*\29\20const +890:GrSimpleMeshDrawOpHelper::isCompatible\28GrSimpleMeshDrawOpHelper\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +891:GrShaderVar::GrShaderVar\28GrShaderVar\20const&\29 +892:GrQuad::writeVertex\28int\2c\20skgpu::VertexWriter&\29\20const +893:GrOpFlushState::bindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +894:GrGLSLShaderBuilder::appendTextureLookup\28GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +895:GrGLGpu::getErrorAndCheckForOOM\28\29 +896: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 +897:GrColorInfo::GrColorInfo\28SkColorInfo\20const&\29 +898:GrAAConvexTessellator::addTri\28int\2c\20int\2c\20int\29 +899:FT_Stream_ReadULong +900:FT_Get_Module +901:AlmostBequalUlps\28double\2c\20double\29 +902:tt_face_get_name +903:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +904:std::__2::unique_ptr::reset\5babi:v160004\5d\28void*\29 +905:std::__2::optional::value\5babi:v160004\5d\28\29\20& +906:std::__2::optional::value\5babi:v160004\5d\28\29\20& +907:std::__2::__variant_detail::__dtor\2c\20std::__2::unique_ptr>>\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29 +908:std::__2::__variant_detail::__dtor\2c\20\28std::__2::__variant_detail::_Trait\291>::__destroy\5babi:v160004\5d\28\29 +909:std::__2::__libcpp_locale_guard::~__libcpp_locale_guard\5babi:v160004\5d\28\29 +910:std::__2::__libcpp_locale_guard::__libcpp_locale_guard\5babi:v160004\5d\28__locale_struct*&\29 +911: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.5839\29 +912:skvx::Vec<2\2c\20float>\20skvx::max<2\2c\20float>\28skvx::Vec<2\2c\20float>\20const&\2c\20skvx::Vec<2\2c\20float>\20const&\29 +913:skif::FilterResult::FilterResult\28skif::FilterResult\20const&\29 +914:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +915:sk_sp&\20skia_private::TArray\2c\20true>::emplace_back>\28sk_sp&&\29 +916:sinf +917:path_cubicTo +918:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +919:hb_user_data_array_t::fini\28\29 +920: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 +921:hb_indic_would_substitute_feature_t::would_substitute\28unsigned\20int\20const*\2c\20unsigned\20int\2c\20hb_face_t*\29\20const +922:hb_font_t::get_glyph_h_advance\28unsigned\20int\29 +923:hb_draw_funcs_t::emit_close_path\28void*\2c\20hb_draw_state_t&\29 +924:ft_module_get_service +925:byn$mgfn-shared$skia_private::TArray\2c\20true>::preallocateNewData\28int\2c\20double\29 +926:bool\20hb_sanitize_context_t::check_array>\28OT::IntType\20const*\2c\20unsigned\20int\29\20const +927:__sindf +928:__shlim +929:__cosdf +930:SkWriter32::write\28void\20const*\2c\20unsigned\20long\29 +931:SkString::equals\28SkString\20const&\29\20const +932: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 +933:SkSL::StringStream::str\28\29\20const +934:SkSL::RP::Generator::makeLValue\28SkSL::Expression\20const&\2c\20bool\29 +935:SkSL::Parser::expressionOrPoison\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +936:SkSL::GLSLCodeGenerator::getTypeName\28SkSL::Type\20const&\29 +937:SkSL::BinaryExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +938:SkRegion::setEmpty\28\29 +939:SkRect::round\28\29\20const +940:SkPixmap::SkPixmap\28SkPixmap\20const&\29 +941:SkPaint::getAlpha\28\29\20const +942:SkMatrix::preScale\28float\2c\20float\29 +943:SkMatrix::isSimilarity\28float\29\20const +944:SkIRect::join\28SkIRect\20const&\29 +945:SkDrawBase::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20bool\29\20const +946:SkData::MakeUninitialized\28unsigned\20long\29 +947:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\29 +948:SkCanvas::checkForDeferredSave\28\29 +949:SkBitmapCache::Rec::getKey\28\29\20const +950:SkAAClip::Builder::addRun\28int\2c\20int\2c\20unsigned\20int\2c\20int\29 +951:GrTriangulator::Line::Line\28SkPoint\20const&\2c\20SkPoint\20const&\29 +952:GrTriangulator::Edge::isRightOf\28GrTriangulator::Vertex\20const&\29\20const +953:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\29 +954:GrShape::setType\28GrShape::Type\29 +955:GrPixmapBase::GrPixmapBase\28GrPixmapBase\20const&\29 +956:GrMakeUncachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +957:GrIORef::unref\28\29\20const +958:GrGeometryProcessor::TextureSampler::reset\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +959:GrGLSLShaderBuilder::getMangledFunctionName\28char\20const*\29 +960:GrGLGpu::deleteFramebuffer\28unsigned\20int\29 +961:GrGLExtensions::has\28char\20const*\29\20const +962:GrBackendFormats::MakeGL\28unsigned\20int\2c\20unsigned\20int\29 +963:vsnprintf +964:top12 +965:std::__2::vector>::erase\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +966:std::__2::to_string\28long\20long\29 +967:std::__2::pair::type\2c\20std::__2::__unwrap_ref_decay::type>\20std::__2::make_pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +968:std::__2::optional::value\5babi:v160004\5d\28\29\20& +969:std::__2::locale::use_facet\28std::__2::locale::id&\29\20const +970:std::__2::basic_string\2c\20std::__2::allocator>::operator=\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +971: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 +972:std::__2::basic_string\2c\20std::__2::allocator>::__init\28char\20const*\2c\20unsigned\20long\29 +973:std::__2::__throw_bad_optional_access\5babi:v160004\5d\28\29 +974:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +975:std::__2::__num_put_base::__identify_padding\28char*\2c\20char*\2c\20std::__2::ios_base\20const&\29 +976:std::__2::__num_get_base::__get_base\28std::__2::ios_base&\29 +977:std::__2::__libcpp_asprintf_l\28char**\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +978:skvx::Vec<4\2c\20float>\20skvx::abs<4>\28skvx::Vec<4\2c\20float>\20const&\29 +979:skvx::Vec<2\2c\20float>\20skvx::min<2\2c\20float>\28skvx::Vec<2\2c\20float>\20const&\2c\20skvx::Vec<2\2c\20float>\20const&\29 +980:sktext::gpu::BagOfBytes::allocateBytes\28int\2c\20int\29 +981:skif::FilterResult::FilterResult\28sk_sp\2c\20skif::LayerSpace\20const&\29 +982:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +983:skia_private::TArray::~TArray\28\29 +984:skia_private::TArray::push_back\28SkSL::SwitchCase\20const*\20const&\29 +985:skia_private::TArray::checkRealloc\28int\2c\20double\29 +986:skia_png_malloc_base +987:skia::textlayout::TextLine::iterateThroughVisualRuns\28bool\2c\20std::__2::function\2c\20float*\29>\20const&\29\20const +988:skgpu::ganesh::SurfaceDrawContext::numSamples\28\29\20const +989:sk_sp::~sk_sp\28\29 +990:sk_sp::~sk_sp\28\29 +991:skData_getConstPointer +992:round +993:qsort +994:path_quadraticBezierTo +995:operator==\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +996:is_one_of\28hb_glyph_info_t\20const&\2c\20unsigned\20int\29 +997: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 +998: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 +999:inflateStateCheck +1000:hb_lazy_loader_t\2c\20hb_face_t\2c\206u\2c\20hb_blob_t>::get\28\29\20const +1001:hb_font_t::has_glyph\28unsigned\20int\29 +1002: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 +1003: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 +1004:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::__wrap_iter\20const&\2c\20std::__2::__wrap_iter\20const&\29 +1005:bool\20hb_sanitize_context_t::check_array\28OT::HBGlyphID16\20const*\2c\20unsigned\20int\29\20const +1006:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1007:bool\20OT::OffsetTo>\2c\20OT::IntType\2c\20false>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1008: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 +1009:addPoint\28UBiDi*\2c\20int\2c\20int\29 +1010:__extenddftf2 +1011:\28anonymous\20namespace\29::extension_compare\28SkString\20const&\2c\20SkString\20const&\29 +1012:\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 +1013:\28anonymous\20namespace\29::colrv1_transform\28FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\2c\20SkCanvas*\2c\20SkMatrix*\29 +1014:SkUTF::NextUTF8\28char\20const**\2c\20char\20const*\29 +1015:SkUTF::NextUTF8WithReplacement\28char\20const**\2c\20char\20const*\29 +1016:SkTInternalLList::addToHead\28sktext::gpu::TextBlob*\29 +1017:SkTDStorage::removeShuffle\28int\29 +1018:SkTDArray::push_back\28void*\20const&\29 +1019:SkTCopyOnFirstWrite::writable\28\29 +1020:SkSurface_Base::getCachedCanvas\28\29 +1021:SkSL::cast_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +1022:SkSL::StringStream::~StringStream\28\29 +1023:SkSL::RP::LValue::~LValue\28\29 +1024:SkSL::RP::Generator::pushIntrinsic\28SkSL::RP::Generator::TypedOps\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +1025:SkSL::InlineCandidateAnalyzer::visitExpression\28std::__2::unique_ptr>*\29 +1026:SkSL::GLSLCodeGenerator::writeType\28SkSL::Type\20const&\29 +1027:SkSL::GLSLCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +1028:SkSL::Expression::isBoolLiteral\28\29\20const +1029:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29 +1030:SkRuntimeEffect::findUniform\28std::__2::basic_string_view>\29\20const +1031:SkRasterPipelineBlitter::appendLoadDst\28SkRasterPipeline*\29\20const +1032:SkPoint::Distance\28SkPoint\20const&\2c\20SkPoint\20const&\29 +1033:SkPathRef::getBounds\28\29\20const +1034:SkPath::isRect\28SkRect*\2c\20bool*\2c\20SkPathDirection*\29\20const +1035:SkPath::injectMoveToIfNeeded\28\29 +1036:SkMatrix::setScaleTranslate\28float\2c\20float\2c\20float\2c\20float\29 +1037:SkMatrix::postScale\28float\2c\20float\29 +1038:SkMatrix::mapVector\28float\2c\20float\29\20const +1039:SkJSONWriter::endArray\28\29 +1040:SkJSONWriter::beginArray\28char\20const*\2c\20bool\29 +1041:SkJSONWriter::appendS32\28char\20const*\2c\20int\29 +1042:SkJSONWriter::appendName\28char\20const*\29 +1043:SkIntersections::removeOne\28int\29 +1044:SkImages::RasterFromBitmap\28SkBitmap\20const&\29 +1045:SkImage_Ganesh::SkImage_Ganesh\28sk_sp\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20SkColorInfo\29 +1046:SkImageInfo::Make\28int\2c\20int\2c\20SkColorType\2c\20SkAlphaType\29 +1047:SkImageFilter_Base::getChildInputLayerBounds\28int\2c\20skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +1048:SkIRect::makeOffset\28int\2c\20int\29\20const +1049:SkGlyph::iRect\28\29\20const +1050:SkFindUnitQuadRoots\28float\2c\20float\2c\20float\2c\20float*\29 +1051:SkDevice::makeSpecial\28SkBitmap\20const&\29 +1052:SkData::PrivateNewWithCopy\28void\20const*\2c\20unsigned\20long\29 +1053:SkColorSpaceXformSteps::Flags::mask\28\29\20const +1054:SkColorSpace::Equals\28SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +1055:SkCanvas::save\28\29 +1056:SkBlurMaskFilterImpl::computeXformedSigma\28SkMatrix\20const&\29\20const +1057:SkBlockAllocator::BlockIter::Item::operator++\28\29 +1058:SkBitmap::peekPixels\28SkPixmap*\29\20const +1059:SkAAClip::freeRuns\28\29 +1060:OT::hb_ot_apply_context_t::set_lookup_mask\28unsigned\20int\2c\20bool\29 +1061:OT::cmap::find_subtable\28unsigned\20int\2c\20unsigned\20int\29\20const +1062:GrWindowRectangles::~GrWindowRectangles\28\29 +1063:GrTriangulator::EdgeList::remove\28GrTriangulator::Edge*\29 +1064:GrTriangulator::Edge::isLeftOf\28GrTriangulator::Vertex\20const&\29\20const +1065:GrStyle::SimpleFill\28\29 +1066: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 +1067:GrResourceAllocator::addInterval\28GrSurfaceProxy*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20GrResourceAllocator::ActualUse\2c\20GrResourceAllocator::AllowRecycling\29 +1068:GrRenderTask::makeClosed\28GrRecordingContext*\29 +1069:GrOpFlushState::allocator\28\29 +1070:GrGLGpu::prepareToDraw\28GrPrimitiveType\29 +1071:GrBackendFormatToCompressionType\28GrBackendFormat\20const&\29 +1072:FT_Stream_Skip +1073:FT_Outline_Get_CBox +1074:Cr_z_adler32 +1075: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 +1076: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 +1077:AlmostDequalUlps\28double\2c\20double\29 +1078:write_tag_size\28SkWriteBuffer&\2c\20unsigned\20int\2c\20unsigned\20long\29 +1079: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 +1080:uprv_free_skia +1081:strcpy +1082:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1083:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1084:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1085:std::__2::unique_ptr>::operator=\5babi:v160004\5d\28std::__2::unique_ptr>&&\29 +1086:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1087:std::__2::unique_ptr>\20GrSkSLFP::Make<>\28SkRuntimeEffect\20const*\2c\20char\20const*\2c\20std::__2::unique_ptr>\2c\20GrSkSLFP::OptFlags\29 +1088:std::__2::unique_ptr>\20GrBlendFragmentProcessor::Make<\28SkBlendMode\2913>\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +1089: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 +1090: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 +1091:std::__2::optional::value\5babi:v160004\5d\28\29\20& +1092: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 +1093:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +1094:std::__2::__tuple_impl\2c\20GrSurfaceProxyView\2c\20sk_sp>::~__tuple_impl\28\29 +1095: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.5825\29 +1096:skvx::Vec<4\2c\20float>&\20skvx::operator*=<4\2c\20float>\28skvx::Vec<4\2c\20float>&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1097:skia_private::THashMap::find\28SkSL::FunctionDeclaration\20const*\20const&\29\20const +1098:skia_private::TArray\2c\20true>::destroyAll\28\29 +1099:skia_private::TArray::push_back_n\28int\2c\20SkPoint\20const*\29 +1100:skia::textlayout::Run::placeholderStyle\28\29\20const +1101:skgpu::skgpu_init_static_unique_key_once\28SkAlignedSTStorage<1\2c\20skgpu::UniqueKey>*\29 +1102:skgpu::ganesh::\28anonymous\20namespace\29::update_degenerate_test\28skgpu::ganesh::\28anonymous\20namespace\29::DegenerateTestData*\2c\20SkPoint\20const&\29 +1103:skgpu::VertexWriter&\20skgpu::operator<<\28skgpu::VertexWriter&\2c\20skgpu::VertexColor\20const&\29 +1104:skgpu::ResourceKey::ResourceKey\28\29 +1105:sk_sp::reset\28GrThreadSafeCache::VertexData*\29 +1106:sk_sp::reset\28GrSurfaceProxy*\29 +1107:scalbn +1108:rowcol3\28float\20const*\2c\20float\20const*\29 +1109:ps_parser_skip_spaces +1110:isdigit +1111:is_joiner\28hb_glyph_info_t\20const&\29 +1112:hb_paint_funcs_t::push_translate\28void*\2c\20float\2c\20float\29 +1113:hb_lazy_loader_t\2c\20hb_face_t\2c\2022u\2c\20hb_blob_t>::get\28\29\20const +1114: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 +1115:hb_aat_map_t::range_flags_t*\20hb_vector_t::push\28hb_aat_map_t::range_flags_t&&\29 +1116:get_gsubgpos_table\28hb_face_t*\2c\20unsigned\20int\29 +1117:emscripten_longjmp +1118:contourMeasure_dispose +1119:cff2_path_procs_extents_t::line\28CFF::cff2_cs_interp_env_t&\2c\20cff2_extents_param_t&\2c\20CFF::point_t\20const&\29 +1120:cff2_path_param_t::line_to\28CFF::point_t\20const&\29 +1121:cff1_path_procs_extents_t::line\28CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\2c\20CFF::point_t\20const&\29 +1122:cff1_path_param_t::line_to\28CFF::point_t\20const&\29 +1123:cf2_stack_pushInt +1124:cf2_buf_readByte +1125:byn$mgfn-shared$GrGLProgramDataManager::set4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +1126: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 +1127:_hb_draw_funcs_set_preamble\28hb_draw_funcs_t*\2c\20bool\2c\20void**\2c\20void\20\28**\29\28void*\29\29 +1128:__wake +1129:__unlock +1130:__memset +1131:\28anonymous\20namespace\29::colrv1_traverse_paint_bounds\28SkMatrix*\2c\20SkRect*\2c\20FT_FaceRec_*\2c\20FT_Opaque_Paint_\2c\20skia_private::THashSet*\29 +1132:SkWStream::writeDecAsText\28int\29 +1133:SkTDStorage::append\28void\20const*\2c\20int\29 +1134:SkString::reset\28\29 +1135:SkStrikeSpec::SkStrikeSpec\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +1136:SkStrike::unlock\28\29 +1137:SkStrike::lock\28\29 +1138:SkSL::RP::Builder::lastInstructionOnAnyStack\28int\29 +1139:SkSL::ProgramUsage::get\28SkSL::Variable\20const&\29\20const +1140:SkSL::Parser::expectIdentifier\28SkSL::Token*\29 +1141:SkSL::Parser::AutoDepth::increase\28\29 +1142: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::$_3::operator\28\29\28std::__2::unique_ptr>\20const&\29\20const +1143: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 +1144:SkSL::GLSLCodeGenerator::finishLine\28\29 +1145:SkSL::ConstructorSplat::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1146:SkSL::ConstructorScalarCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1147:SkRuntimeEffect::Uniform::sizeInBytes\28\29\20const +1148:SkRegion::SkRegion\28SkIRect\20const&\29 +1149:SkRasterPipeline::run\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +1150:SkRasterPipeline::appendTransferFunction\28skcms_TransferFunction\20const&\29 +1151:SkRasterPipeline::appendConstantColor\28SkArenaAlloc*\2c\20float\20const*\29 +1152:SkRRect::checkCornerContainment\28float\2c\20float\29\20const +1153:SkRRect::MakeRect\28SkRect\20const&\29 +1154:SkRRect::MakeOval\28SkRect\20const&\29 +1155:SkPointPriv::DistanceToLineSegmentBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +1156:SkPoint::setLength\28float\29 +1157:SkPathPriv::AllPointsEq\28SkPoint\20const*\2c\20int\29 +1158:SkPathBuilder::~SkPathBuilder\28\29 +1159:SkPathBuilder::lineTo\28SkPoint\29 +1160:SkPathBuilder::detach\28\29 +1161:SkPathBuilder::SkPathBuilder\28\29 +1162:SkPath::transform\28SkMatrix\20const&\2c\20SkApplyPerspectiveClip\29 +1163:SkOpCoincidence::release\28SkCoincidentSpans*\2c\20SkCoincidentSpans*\29 +1164:SkNVRefCnt::unref\28\29\20const +1165:SkJSONWriter::endObject\28\29 +1166:SkJSONWriter::beginObject\28char\20const*\2c\20bool\29 +1167:SkJSONWriter::appendCString\28char\20const*\2c\20char\20const*\29 +1168:SkIntersections::hasT\28double\29\20const +1169:SkImageFilter_Base::getChildOutput\28int\2c\20skif::Context\20const&\29\20const +1170:SkIRect::offset\28int\2c\20int\29 +1171:SkDLine::ptAtT\28double\29\20const +1172:SkCanvas::translate\28float\2c\20float\29 +1173:SkCanvas::restoreToCount\28int\29 +1174:SkCanvas::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +1175:SkCachedData::unref\28\29\20const +1176:SkAutoSMalloc<1024ul>::~SkAutoSMalloc\28\29 +1177:SkAutoCanvasRestore::~SkAutoCanvasRestore\28\29 +1178:SkArenaAlloc::SkArenaAlloc\28unsigned\20long\29 +1179:SkAAClipBlitterWrapper::init\28SkRasterClip\20const&\2c\20SkBlitter*\29 +1180:SkAAClipBlitterWrapper::SkAAClipBlitterWrapper\28SkRasterClip\20const&\2c\20SkBlitter*\29 +1181:OT::Offset\2c\20true>::is_null\28\29\20const +1182:OT::MVAR::get_var\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\29\20const +1183:MaskAdditiveBlitter::getRow\28int\29 +1184:GrTriangulator::EdgeList::insert\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\29 +1185:GrTextureEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20GrCaps\20const&\2c\20float\20const*\29 +1186:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\29 +1187:GrTessellationShader::MakeProgram\28GrTessellationShader::ProgramArgs\20const&\2c\20GrTessellationShader\20const*\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\29 +1188:GrScissorState::enabled\28\29\20const +1189:GrRecordingContextPriv::recordTimeAllocator\28\29 +1190:GrQuad::bounds\28\29\20const +1191: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 +1192:GrPixmapBase::operator=\28GrPixmapBase&&\29 +1193:GrOpFlushState::detachAppliedClip\28\29 +1194:GrGLGpu::disableWindowRectangles\28\29 +1195:GrGLFormatFromGLEnum\28unsigned\20int\29 +1196:GrFragmentProcessors::Make\28GrRecordingContext*\2c\20SkColorFilter\20const*\2c\20std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1197:GrFragmentProcessor::~GrFragmentProcessor\28\29 +1198:GrClip::GetPixelIBounds\28SkRect\20const&\2c\20GrAA\2c\20GrClip::BoundsType\29 +1199:GrBackendTexture::getBackendFormat\28\29\20const +1200:CFF::interp_env_t::fetch_op\28\29 +1201: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 +1202:AlmostEqualUlps\28double\2c\20double\29 +1203:AAT::StateTable::get_entry\28int\2c\20unsigned\20int\29\20const +1204:AAT::StateTable::EntryData>::get_entry\28int\2c\20unsigned\20int\29\20const +1205: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 +1206:tt_face_lookup_table +1207: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 +1208:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1209:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::Module\20const*\29 +1210:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1211:std::__2::optional::value\5babi:v160004\5d\28\29\20& +1212:std::__2::optional::value\5babi:v160004\5d\28\29\20& +1213:std::__2::moneypunct::negative_sign\5babi:v160004\5d\28\29\20const +1214:std::__2::moneypunct::neg_format\5babi:v160004\5d\28\29\20const +1215:std::__2::moneypunct::frac_digits\5babi:v160004\5d\28\29\20const +1216:std::__2::moneypunct::do_pos_format\28\29\20const +1217: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 +1218:std::__2::function::operator\28\29\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29\20const +1219:std::__2::ctype::widen\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +1220:std::__2::char_traits::copy\28wchar_t*\2c\20wchar_t\20const*\2c\20unsigned\20long\29 +1221:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1222:std::__2::basic_string\2c\20std::__2::allocator>::end\5babi:v160004\5d\28\29 +1223:std::__2::basic_string\2c\20std::__2::allocator>::__set_size\5babi:v160004\5d\28unsigned\20long\29 +1224:std::__2::__split_buffer&>::~__split_buffer\28\29 +1225:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +1226:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +1227:std::__2::__itoa::__append2\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1228:std::__2::__exception_guard_exceptions>::__destroy_vector>::~__exception_guard_exceptions\5babi:v160004\5d\28\29 +1229:skvx::Vec<4\2c\20unsigned\20int>\20\28anonymous\20namespace\29::shift_right>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20int\29 +1230: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 +1231:sktext::gpu::BagOfBytes::~BagOfBytes\28\29 +1232:skif::\28anonymous\20namespace\29::is_nearly_integer_translation\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29 +1233:skif::FilterResult::resolve\28skif::Context\20const&\2c\20skif::LayerSpace\2c\20bool\29\20const +1234:skia_private::TArray::push_back\28float\20const&\29 +1235:skia_png_gamma_correct +1236:skia_png_gamma_8bit_correct +1237:skia::textlayout::TextStyle::operator=\28skia::textlayout::TextStyle\20const&\29 +1238:skia::textlayout::Run::positionX\28unsigned\20long\29\20const +1239:skia::textlayout::ParagraphImpl::codeUnitHasProperty\28unsigned\20long\2c\20SkUnicode::CodeUnitFlags\29\20const +1240: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 +1241:skgpu::UniqueKey::UniqueKey\28skgpu::UniqueKey\20const&\29 +1242:sk_sp::operator=\28sk_sp\20const&\29 +1243:sk_sp::operator=\28sk_sp&&\29 +1244:sk_realloc_throw\28void*\2c\20unsigned\20long\29 +1245:powf_ +1246:png_read_buffer +1247:isspace +1248:interp_cubic_coords\28double\20const*\2c\20double\29 +1249:int\20_hb_cmp_method>\28void\20const*\2c\20void\20const*\29 +1250:hb_paint_funcs_t::push_transform\28void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +1251:hb_font_t::parent_scale_y_distance\28int\29 +1252:hb_font_t::parent_scale_x_distance\28int\29 +1253:hb_face_t::get_upem\28\29\20const +1254:hb_buffer_destroy +1255:emscripten_futex_wake +1256:double_to_clamped_scalar\28double\29 +1257:conic_eval_numerator\28double\20const*\2c\20float\2c\20double\29 +1258:cff_index_init +1259:cf2_glyphpath_hintPoint +1260:byn$mgfn-shared$skia_private::AutoSTArray<32\2c\20unsigned\20short>::reset\28int\29 +1261:bool\20hb_buffer_t::replace_glyphs\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\20const*\29 +1262:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1263:a_inc +1264:\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16::Compact\28skvx::Vec<4\2c\20float>\20const&\29 +1265:\28anonymous\20namespace\29::ColorTypeFilter_F16F16::Compact\28skvx::Vec<4\2c\20float>\20const&\29 +1266:\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16::Compact\28skvx::Vec<4\2c\20float>\20const&\29 +1267:\28anonymous\20namespace\29::ColorTypeFilter_8888::Compact\28skvx::Vec<4\2c\20unsigned\20short>\20const&\29 +1268:\28anonymous\20namespace\29::ColorTypeFilter_16161616::Compact\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29 +1269:\28anonymous\20namespace\29::ColorTypeFilter_1010102::Compact\28unsigned\20long\20long\29 +1270:TT_MulFix14 +1271:Skwasm::createMatrix\28float\20const*\29 +1272:SkWriter32::writeBool\28bool\29 +1273:SkTDStorage::append\28int\29 +1274:SkTDPQueue::setIndex\28int\29 +1275:SkSurface_Base::refCachedImage\28\29 +1276:SkSpotShadowTessellator::addToClip\28SkPoint\20const&\29 +1277:SkShaderUtils::GLSLPrettyPrint::newline\28\29 +1278:SkShaderUtils::GLSLPrettyPrint::hasToken\28char\20const*\29 +1279:SkSL::Type::MakeTextureType\28char\20const*\2c\20SpvDim_\2c\20bool\2c\20bool\2c\20bool\2c\20SkSL::Type::TextureAccess\29 +1280:SkSL::Type::MakeSpecialType\28char\20const*\2c\20char\20const*\2c\20SkSL::Type::TypeKind\29 +1281:SkSL::Swizzle::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20skia_private::FixedArray<4\2c\20signed\20char>\29 +1282:SkSL::RP::Builder::push_slots_or_immutable\28SkSL::RP::SlotRange\2c\20SkSL::RP::BuilderOp\29 +1283:SkSL::RP::Builder::push_duplicates\28int\29 +1284:SkSL::RP::Builder::push_constant_f\28float\29 +1285:SkSL::RP::Builder::push_clone\28int\2c\20int\29 +1286:SkSL::Parser::statementOrNop\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +1287:SkSL::Literal::Make\28SkSL::Position\2c\20double\2c\20SkSL::Type\20const*\29 +1288:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mul\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +1289:SkSL::InlineCandidateAnalyzer::visitStatement\28std::__2::unique_ptr>*\2c\20bool\29 +1290:SkSL::GLSLCodeGenerator::writeModifiers\28SkSL::Layout\20const&\2c\20SkSL::ModifierFlags\2c\20bool\29 +1291:SkSL::Expression::isIntLiteral\28\29\20const +1292:SkSL::ConstructorCompound::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +1293:SkSL::ConstantFolder::IsConstantSplat\28SkSL::Expression\20const&\2c\20double\29 +1294:SkSL::AliasType::resolve\28\29\20const +1295:SkResourceCache::Find\28SkResourceCache::Key\20const&\2c\20bool\20\28*\29\28SkResourceCache::Rec\20const&\2c\20void*\29\2c\20void*\29 +1296:SkResourceCache::Add\28SkResourceCache::Rec*\2c\20void*\29 +1297:SkRectPriv::HalfWidth\28SkRect\20const&\29 +1298:SkRect::isFinite\28\29\20const +1299:SkRasterPipeline_<256ul>::SkRasterPipeline_\28\29 +1300:SkRasterClip::setRect\28SkIRect\20const&\29 +1301:SkRasterClip::quickContains\28SkIRect\20const&\29\20const +1302:SkRRect::setRect\28SkRect\20const&\29 +1303:SkPathWriter::isClosed\28\29\20const +1304:SkPathStroker::addDegenerateLine\28SkQuadConstruct\20const*\29 +1305:SkPathBuilder::moveTo\28SkPoint\29 +1306:SkPath::swap\28SkPath&\29 +1307:SkPath::getGenerationID\28\29\20const +1308:SkPath::addPoly\28SkPoint\20const*\2c\20int\2c\20bool\29 +1309:SkOpSegment::existing\28double\2c\20SkOpSegment\20const*\29\20const +1310:SkOpSegment::addT\28double\29 +1311:SkOpSegment::addCurveTo\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkPathWriter*\29\20const +1312:SkOpPtT::find\28SkOpSegment\20const*\29\20const +1313:SkOpContourBuilder::flush\28\29 +1314:SkMipmap::getLevel\28int\2c\20SkMipmap::Level*\29\20const +1315:SkMatrix::isFinite\28\29\20const +1316:SkM44::setConcat\28SkM44\20const&\2c\20SkM44\20const&\29 +1317:SkImage_Picture::type\28\29\20const +1318:SkImageInfoIsValid\28SkImageInfo\20const&\29 +1319:SkImageInfo::makeColorType\28SkColorType\29\20const +1320:SkImageInfo::computeByteSize\28unsigned\20long\29\20const +1321:SkImageInfo::SkImageInfo\28SkImageInfo\20const&\29 +1322:SkImageFilter_Base::SkImageFilter_Base\28sk_sp\20const*\2c\20int\2c\20std::__2::optional\29 +1323:SkGlyph::imageSize\28\29\20const +1324:SkColorSpaceXformSteps::apply\28SkRasterPipeline*\29\20const +1325:SkColorSpace::gammaIsLinear\28\29\20const +1326:SkColorFilterBase::affectsTransparentBlack\28\29\20const +1327:SkCanvas::~SkCanvas\28\29 +1328:SkCanvas::predrawNotify\28bool\29 +1329:SkCanvas::drawImage\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +1330:SkCanvas::aboutToDraw\28SkPaint\20const&\2c\20SkRect\20const*\2c\20SkEnumBitMask\29 +1331:SkBulkGlyphMetrics::~SkBulkGlyphMetrics\28\29 +1332:SkBlockAllocator::SkBlockAllocator\28SkBlockAllocator::GrowthPolicy\2c\20unsigned\20long\2c\20unsigned\20long\29 +1333:SkBlockAllocator::BlockIter::begin\28\29\20const +1334:SkBitmap::reset\28\29 +1335:SkBitmap::installPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20void\20\28*\29\28void*\2c\20void*\29\2c\20void*\29 +1336:ScalarToAlpha\28float\29 +1337:OT::Layout::GSUB_impl::SubstLookupSubTable*\20hb_serialize_context_t::push\28\29 +1338:OT::Layout::GPOS_impl::PosLookupSubTable\20const&\20OT::Lookup::get_subtable\28unsigned\20int\29\20const +1339: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 +1340:GrTriangulator::makeConnectingEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\2c\20int\29 +1341:GrTriangulator::appendPointToContour\28SkPoint\20const&\2c\20GrTriangulator::VertexList*\29\20const +1342:GrSurface::ComputeSize\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\2c\20skgpu::Mipmapped\2c\20bool\29 +1343:GrStyledShape::writeUnstyledKey\28unsigned\20int*\29\20const +1344:GrStyledShape::unstyledKeySize\28\29\20const +1345:GrStyle::operator=\28GrStyle\20const&\29 +1346:GrStyle::GrStyle\28SkStrokeRec\20const&\2c\20sk_sp\29 +1347:GrStyle::GrStyle\28SkPaint\20const&\29 +1348:GrSimpleMesh::setIndexed\28sk_sp\2c\20int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20GrPrimitiveRestart\2c\20sk_sp\2c\20int\29 +1349:GrRecordingContextPriv::makeSFCWithFallback\28GrImageInfo\2c\20SkBackingFit\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrSurfaceOrigin\2c\20skgpu::Budgeted\29 +1350:GrRecordingContextPriv::makeSC\28GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +1351:GrQuad::MakeFromSkQuad\28SkPoint\20const*\2c\20SkMatrix\20const&\29 +1352:GrProcessorSet::visitProxies\28std::__2::function\20const&\29\20const +1353:GrProcessorSet::finalize\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrCaps\20const&\2c\20GrClampType\2c\20SkRGBA4f<\28SkAlphaType\292>*\29 +1354:GrGpuResource::isPurgeable\28\29\20const +1355:GrGpuResource::gpuMemorySize\28\29\20const +1356:GrGpuBuffer::updateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +1357:GrGetColorTypeDesc\28GrColorType\29 +1358:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\29 +1359:GrGLSLShaderBuilder::~GrGLSLShaderBuilder\28\29 +1360:GrGLSLShaderBuilder::declAppend\28GrShaderVar\20const&\29 +1361:GrGLGpu::flushScissorTest\28GrScissorTest\29 +1362:GrGLGpu::didDrawTo\28GrRenderTarget*\29 +1363:GrGLGpu::bindFramebuffer\28unsigned\20int\2c\20unsigned\20int\29 +1364: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 +1365:GrGLCaps::maxRenderTargetSampleCount\28GrGLFormat\29\20const +1366:GrDefaultGeoProcFactory::Make\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +1367:GrCaps::validateSurfaceParams\28SkISize\20const&\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20GrTextureType\29\20const +1368: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 +1369:GrBackendTexture::~GrBackendTexture\28\29 +1370:GrAppliedClip::GrAppliedClip\28GrAppliedClip&&\29 +1371:GrAAConvexTessellator::Ring::origEdgeID\28int\29\20const +1372:FT_GlyphLoader_CheckPoints +1373:FT_Get_Sfnt_Table +1374:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +1375: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 +1376: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 +1377:AAT::Lookup>::get_class\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +1378:void\20std::__2::reverse\5babi:v160004\5d\28char*\2c\20char*\29 +1379:void\20std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::__rehash\28unsigned\20long\29 +1380:void\20SkTQSort\28SkAnalyticEdge**\2c\20SkAnalyticEdge**\29::'lambda'\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge\20const*\29::operator\28\29\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge\20const*\29\20const +1381:void\20SkSafeUnref\28GrThreadSafeCache::VertexData*\29 +1382: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 +1383:std::__2::vector>::vector\28std::__2::vector>\20const&\29 +1384:std::__2::vector>\2c\20std::__2::allocator>>>::push_back\5babi:v160004\5d\28std::__2::unique_ptr>&&\29 +1385:std::__2::vector\2c\20std::__2::allocator>>::~vector\5babi:v160004\5d\28\29 +1386:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +1387:std::__2::unique_ptr\2c\20std::__2::allocator>\2c\20std::__2::default_delete\2c\20std::__2::allocator>>>::~unique_ptr\5babi:v160004\5d\28\29 +1388:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::SymbolTable*\29 +1389:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1390:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1391:std::__2::unique_ptr>::reset\5babi:v160004\5d\28std::nullptr_t\29 +1392: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 +1393: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 +1394:std::__2::optional::value\5babi:v160004\5d\28\29\20& +1395:std::__2::hash::operator\28\29\5babi:v160004\5d\28GrFragmentProcessor\20const*\29\20const +1396:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +1397:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::allocator\20const&\29 +1398:std::__2::basic_string\2c\20std::__2::allocator>::append\28char\20const*\2c\20unsigned\20long\29 +1399:std::__2::basic_string\2c\20std::__2::allocator>::__get_long_cap\5babi:v160004\5d\28\29\20const +1400:std::__2::basic_ios>::setstate\5babi:v160004\5d\28unsigned\20int\29 +1401:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +1402: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 +1403: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 +1404: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 +1405:skvx::Vec<4\2c\20float>\20skvx::operator/<4\2c\20float\2c\20float\2c\20void>\28float\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1406:skvx::Vec<4\2c\20float>\20skvx::min<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1407: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 +1408:skip_spaces +1409:skif::LayerSpace::mapRect\28skif::LayerSpace\20const&\29\20const +1410:skia_private::TArray::push_back\28unsigned\20char&&\29 +1411:skia_private::TArray::TArray\28skia_private::TArray&&\29 +1412:skia_private::TArray::TArray\28skia_private::TArray&&\29 +1413:skia_private::TArray\2c\20true>::preallocateNewData\28int\2c\20double\29 +1414:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +1415:skia_private::TArray::checkRealloc\28int\2c\20double\29 +1416:skia_private::FixedArray<4\2c\20signed\20char>::FixedArray\28std::initializer_list\29 +1417:skia_private::AutoSTMalloc<4ul\2c\20int\2c\20void>::AutoSTMalloc\28unsigned\20long\29 +1418:skia_png_safecat +1419:skia_png_malloc +1420:skia_png_colorspace_sync +1421:skia_png_chunk_warning +1422:skia::textlayout::TextWrapper::TextStretch::extend\28skia::textlayout::TextWrapper::TextStretch&\29 +1423: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 +1424:skia::textlayout::ParagraphStyle::~ParagraphStyle\28\29 +1425:skia::textlayout::ParagraphImpl::ensureUTF16Mapping\28\29 +1426:skgpu::ganesh::SurfaceFillContext::fillWithFP\28std::__2::unique_ptr>\29 +1427:skgpu::ganesh::OpsTask::OpChain::List::popHead\28\29 +1428: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 +1429:skgpu::ResourceKey::reset\28\29 +1430:skcms_TransferFunction_getType +1431:skcms_TransferFunction_eval +1432:sk_sp::~sk_sp\28\29 +1433:sk_sp::reset\28SkString::Rec*\29 +1434:sk_sp::operator=\28sk_sp\20const&\29 +1435:sk_sp::operator=\28sk_sp&&\29 +1436:sk_sp::sk_sp\28sk_sp\20const&\29 +1437:operator!=\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +1438:non-virtual\20thunk\20to\20GrOpFlushState::allocator\28\29 +1439:is_halant\28hb_glyph_info_t\20const&\29 +1440:hb_zip_iter_t\2c\20hb_array_t>::__next__\28\29 +1441:hb_serialize_context_t::pop_pack\28bool\29 +1442:hb_sanitize_context_t::init\28hb_blob_t*\29 +1443:hb_lazy_loader_t\2c\20hb_face_t\2c\2011u\2c\20hb_blob_t>::get\28\29\20const +1444:hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +1445:hb_lazy_loader_t\2c\20hb_face_t\2c\2025u\2c\20OT::GSUB_accelerator_t>::get_stored\28\29\20const +1446:hb_hashmap_t::alloc\28unsigned\20int\29 +1447:hb_font_t::scale_glyph_extents\28hb_glyph_extents_t*\29 +1448:hb_extents_t::add_point\28float\2c\20float\29 +1449: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 +1450:hb_buffer_t::reverse_range\28unsigned\20int\2c\20unsigned\20int\29 +1451:hb_buffer_t::replace_glyph\28unsigned\20int\29 +1452:hb_buffer_t::merge_out_clusters\28unsigned\20int\2c\20unsigned\20int\29 +1453:hb_buffer_append +1454:cos +1455:cleanup_program\28GrGLGpu*\2c\20unsigned\20int\2c\20SkTDArray\20const&\29 +1456:cff_index_done +1457:cf2_glyphpath_curveTo +1458:byn$mgfn-shared$skia_private::TArray::preallocateNewData\28int\2c\20double\29 +1459:bool\20hb_array_t::sanitize\28hb_sanitize_context_t*\29\20const +1460:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1461:afm_parser_read_vals +1462:afm_parser_next_key +1463:__lshrti3 +1464:__lock +1465:__letf2 +1466:\28anonymous\20namespace\29::skhb_position\28float\29 +1467:SkWriter32::reservePad\28unsigned\20long\29 +1468:SkWriteBuffer::writeDataAsByteArray\28SkData\20const*\29 +1469:SkTSpan::removeBounded\28SkTSpan\20const*\29 +1470:SkTSpan::initBounds\28SkTCurve\20const&\29 +1471:SkTSpan::addBounded\28SkTSpan*\2c\20SkArenaAlloc*\29 +1472:SkTSect::tail\28\29 +1473:SkTInternalLList>\2c\20SkGoodHash>::Entry>::remove\28SkLRUCache>\2c\20SkGoodHash>::Entry*\29 +1474:SkTDStorage::reset\28\29 +1475:SkString::printf\28char\20const*\2c\20...\29 +1476:SkString::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +1477:SkShader::makeWithLocalMatrix\28SkMatrix\20const&\29\20const +1478:SkSamplingOptions::operator==\28SkSamplingOptions\20const&\29\20const +1479: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 +1480:SkSL::is_constant_value\28SkSL::Expression\20const&\2c\20double\29 +1481: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 +1482:SkSL::\28anonymous\20namespace\29::ReturnsOnAllPathsVisitor::visitStatement\28SkSL::Statement\20const&\29 +1483:SkSL::Type::MakeScalarType\28std::__2::basic_string_view>\2c\20char\20const*\2c\20SkSL::Type::NumberKind\2c\20signed\20char\2c\20signed\20char\29 +1484:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Context\20const&\2c\20SkSL::Symbol*\29 +1485:SkSL::RP::Generator::push\28SkSL::RP::LValue&\29 +1486:SkSL::Parser::statement\28bool\29 +1487:SkSL::ModifierFlags::description\28\29\20const +1488:SkSL::Layout::paddedDescription\28\29\20const +1489:SkSL::GetModuleData\28SkSL::ModuleName\2c\20char\20const*\29 +1490:SkSL::ConstructorCompoundCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1491:SkSL::Analysis::UpdateVariableRefKind\28SkSL::Expression*\2c\20SkSL::VariableRefKind\2c\20SkSL::ErrorReporter*\29 +1492:SkSL::Analysis::IsSameExpressionTree\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +1493:SkRegion::setRegion\28SkRegion\20const&\29 +1494:SkRegion::Iterator::next\28\29 +1495:SkRect::round\28SkIRect*\29\20const +1496:SkRect::makeSorted\28\29\20const +1497:SkRect::intersects\28SkRect\20const&\29\20const +1498:SkReadBuffer::readInt\28\29 +1499:SkReadBuffer::readBool\28\29 +1500:SkRasterPipeline_<256ul>::~SkRasterPipeline_\28\29 +1501:SkRasterClip::updateCacheAndReturnNonEmpty\28bool\29 +1502:SkRasterClip::quickReject\28SkIRect\20const&\29\20const +1503:SkRGBA4f<\28SkAlphaType\293>::toSkColor\28\29\20const +1504:SkPixmap::addr\28int\2c\20int\29\20const +1505:SkPath::quadTo\28float\2c\20float\2c\20float\2c\20float\29 +1506:SkPath::incReserve\28int\2c\20int\2c\20int\29 +1507:SkPath::arcTo\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +1508:SkPath::addRect\28SkRect\20const&\2c\20SkPathDirection\29 +1509:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\29 +1510:SkPaint*\20SkRecorder::copy\28SkPaint\20const*\29 +1511:SkOpSegment::ptAtT\28double\29\20const +1512:SkOpSegment::dPtAtT\28double\29\20const +1513:SkNoPixelsDevice::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +1514:SkMemoryStream::getPosition\28\29\20const +1515:SkMatrix::setConcat\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +1516:SkMatrix::mapRadius\28float\29\20const +1517:SkMask::getAddr8\28int\2c\20int\29\20const +1518:SkJSONWriter::appendString\28char\20const*\2c\20unsigned\20long\29 +1519:SkIntersectionHelper::segmentType\28\29\20const +1520:SkImageFilter_Base::flatten\28SkWriteBuffer&\29\20const +1521:SkGoodHash::operator\28\29\28SkString\20const&\29\20const +1522:SkGlyph::rect\28\29\20const +1523:SkFont::SkFont\28sk_sp\2c\20float\29 +1524:SkDrawBase::SkDrawBase\28\29 +1525:SkDQuad::RootsValidT\28double\2c\20double\2c\20double\2c\20double*\29 +1526:SkConvertPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +1527:SkCanvas::restore\28\29 +1528:SkCanvas::getTotalMatrix\28\29\20const +1529:SkCanvas::drawImageRect\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +1530:SkCanvas::AutoUpdateQRBounds::~AutoUpdateQRBounds\28\29 +1531:SkCachedData::ref\28\29\20const +1532:SkBulkGlyphMetrics::SkBulkGlyphMetrics\28SkStrikeSpec\20const&\29 +1533:SkBitmap::setPixelRef\28sk_sp\2c\20int\2c\20int\29 +1534:SkBitmap::installPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\29 +1535:SkAutoPixmapStorage::~SkAutoPixmapStorage\28\29 +1536:SkAnySubclass::reset\28\29 +1537:SkAlphaRuns::Break\28short*\2c\20unsigned\20char*\2c\20int\2c\20int\29 +1538:OT::VariationStore::get_delta\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20float*\29\20const +1539:OT::GSUBGPOS::get_lookup\28unsigned\20int\29\20const +1540:OT::GDEF::get_glyph_props\28unsigned\20int\29\20const +1541:OT::CmapSubtable::get_glyph\28unsigned\20int\2c\20unsigned\20int*\29\20const +1542:GrTextureEffect::MakeSubset\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20GrCaps\20const&\2c\20float\20const*\2c\20bool\29 +1543:GrSurfaceProxyView::mipmapped\28\29\20const +1544:GrSurfaceProxy::backingStoreBoundsRect\28\29\20const +1545:GrStyledShape::knownToBeConvex\28\29\20const +1546:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +1547:GrSimpleMeshDrawOpHelperWithStencil::isCompatible\28GrSimpleMeshDrawOpHelperWithStencil\20const&\2c\20GrCaps\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20bool\29\20const +1548:GrShape::asPath\28SkPath*\2c\20bool\29\20const +1549:GrScissorState::set\28SkIRect\20const&\29 +1550:GrRenderTask::~GrRenderTask\28\29 +1551:GrPixmap::Allocate\28GrImageInfo\20const&\29 +1552:GrMakeCachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20std::__2::basic_string_view>\2c\20skgpu::Mipmapped\29 +1553:GrImageInfo::makeColorType\28GrColorType\29\20const +1554:GrGpuResource::CacheAccess::release\28\29 +1555:GrGpuBuffer::map\28\29 +1556:GrGpu::didWriteToSurface\28GrSurface*\2c\20GrSurfaceOrigin\2c\20SkIRect\20const*\2c\20unsigned\20int\29\20const +1557:GrGeometryProcessor::TextureSampler::TextureSampler\28\29 +1558:GrGeometryProcessor::AttributeSet::begin\28\29\20const +1559:GrGeometryProcessor::AttributeSet::Iter::operator++\28\29 +1560: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 +1561:GrFragmentProcessors::Make\28SkShader\20const*\2c\20GrFPArgs\20const&\2c\20SkMatrix\20const&\29 +1562:GrFragmentProcessor::MakeColor\28SkRGBA4f<\28SkAlphaType\292>\29 +1563:GrConvertPixels\28GrPixmap\20const&\2c\20GrCPixmap\20const&\2c\20bool\29 +1564:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +1565:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +1566:GrAtlasManager::getAtlas\28skgpu::MaskFormat\29\20const +1567:FT_Get_Char_Index +1568:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +1569:wrapper_cmp +1570:void\20std::__2::vector>::__construct_at_end\28SkFontArguments::VariationPosition::Coordinate*\2c\20SkFontArguments::VariationPosition::Coordinate*\2c\20unsigned\20long\29 +1571: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 +1572:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20unsigned\20int*&\2c\20unsigned\20int*&\29 +1573:void\20hb_sanitize_context_t::set_object>\28AAT::ChainSubtable\20const*\29 +1574: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 +1575: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 +1576: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 +1577:toupper +1578:store\28unsigned\20char*\2c\20skvx::Vec<8\2c\20unsigned\20short>\20const&\2c\20int\29 +1579:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +1580:std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +1581:std::__2::unique_ptr::~unique_ptr\5babi:v160004\5d\28\29 +1582:std::__2::unique_ptr\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair\2c\20SkSL::FunctionDeclaration\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::FunctionDeclaration\20const*\2c\20skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +1583:std::__2::unique_ptr>::reset\5babi:v160004\5d\28skia::textlayout::Run*\29 +1584:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1585:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1586:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1587:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1588:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1589:std::__2::numpunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +1590:std::__2::istreambuf_iterator>::istreambuf_iterator\5babi:v160004\5d\28\29 +1591:std::__2::enable_if::value\2c\20sk_sp>::type\20GrResourceProvider::findByUniqueKey\28skgpu::UniqueKey\20const&\29 +1592:std::__2::deque>::end\5babi:v160004\5d\28\29 +1593:std::__2::ctype::narrow\5babi:v160004\5d\28wchar_t\2c\20char\29\20const +1594:std::__2::ctype::narrow\5babi:v160004\5d\28char\2c\20char\29\20const +1595:std::__2::char_traits::to_int_type\28char\29 +1596:std::__2::char_traits::compare\28char\20const*\2c\20char\20const*\2c\20unsigned\20long\29 +1597:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1598: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 +1599:std::__2::basic_string\2c\20std::__2::allocator>::clear\5babi:v160004\5d\28\29 +1600:std::__2::basic_string\2c\20std::__2::allocator>::__recommend\5babi:v160004\5d\28unsigned\20long\29 +1601:std::__2::basic_string\2c\20std::__2::allocator>::~basic_string\28\29 +1602:std::__2::basic_streambuf>::sputn\5babi:v160004\5d\28char\20const*\2c\20long\29 +1603:std::__2::basic_streambuf>::setg\5babi:v160004\5d\28char*\2c\20char*\2c\20char*\29 +1604:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +1605:std::__2::__tree\2c\20std::__2::__map_value_compare\2c\20std::__2::less\2c\20true>\2c\20std::__2::allocator>>::~__tree\28\29 +1606:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +1607: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 +1608: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 +1609:std::__2::__next_prime\28unsigned\20long\29 +1610:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1611:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::allocator&\2c\20unsigned\20long\29 +1612:src_p\28unsigned\20char\2c\20unsigned\20char\29 +1613:sort_r_swap\28char*\2c\20char*\2c\20unsigned\20long\29 +1614:snprintf +1615:skvx::Vec<4\2c\20float>\20skvx::operator+<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +1616:sktext::SkStrikePromise::SkStrikePromise\28sktext::SkStrikePromise&&\29 +1617:skif::\28anonymous\20namespace\29::downscale_step_count\28float\29 +1618:skif::LayerSpace::roundOut\28\29\20const +1619:skif::LayerSpace::relevantSubset\28skif::LayerSpace\2c\20SkTileMode\29\20const +1620: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 +1621:skia_private::THashTable::Pair\2c\20char\20const*\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +1622: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 +1623:skia_private::THashSet::contains\28SkSL::Variable\20const*\20const&\29\20const +1624:skia_private::TArray::checkRealloc\28int\2c\20double\29 +1625:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +1626:skia_private::TArray\2c\20true>::~TArray\28\29 +1627:skia_private::TArray::copy\28float\20const*\29 +1628:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +1629:skia_private::TArray::resize_back\28int\29 +1630:skia_private::AutoTMalloc::AutoTMalloc\28unsigned\20long\29 +1631:skia_private::AutoSTArray<4\2c\20float>::reset\28int\29 +1632:skia_png_free_data +1633:skia::textlayout::TextStyle::TextStyle\28\29 +1634: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 +1635:skia::textlayout::InternalLineMetrics::delta\28\29\20const +1636:skia::textlayout::Cluster::Cluster\28skia::textlayout::ParagraphImpl*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkSpan\2c\20float\2c\20float\29 +1637: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 +1638:skgpu::ganesh::SurfaceDrawContext::fillRectToRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\29 +1639:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::RawElement\20const&\29\20const +1640:skgpu::VertexWriter&\20skgpu::operator<<<4\2c\20SkPoint>\28skgpu::VertexWriter&\2c\20skgpu::VertexWriter::RepeatDesc<4\2c\20SkPoint>\20const&\29 +1641:skgpu::TAsyncReadResult::addCpuPlane\28sk_sp\2c\20unsigned\20long\29 +1642:sk_sp::reset\28SkVertices*\29 +1643:sk_sp::reset\28SkPathRef*\29 +1644:sk_sp::reset\28SkMeshPriv::VB\20const*\29 +1645:sk_sp::reset\28SkColorSpace*\29 +1646:sk_malloc_throw\28unsigned\20long\29 +1647:sk_doubles_nearly_equal_ulps\28double\2c\20double\2c\20unsigned\20char\29 +1648:sbrk +1649:saveSetjmp +1650:remove_node\28OffsetEdge\20const*\2c\20OffsetEdge**\29 +1651:quick_div\28int\2c\20int\29 +1652:pt_to_line\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +1653:processPropertySeq\28UBiDi*\2c\20LevState*\2c\20unsigned\20char\2c\20int\2c\20int\29 +1654:operator!=\28SkIRect\20const&\2c\20SkIRect\20const&\29 +1655:left\28SkPoint\20const&\2c\20SkPoint\20const&\29 +1656:inversion\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::Comparator\20const&\29 +1657:interp_quad_coords\28double\20const*\2c\20double\29 +1658:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +1659:hb_set_digest_combiner_t\2c\20hb_set_digest_combiner_t\2c\20hb_set_digest_bits_pattern_t>>::may_have\28unsigned\20int\29\20const +1660:hb_serialize_context_t::object_t::fini\28\29 +1661:hb_ot_map_builder_t::add_feature\28hb_ot_map_feature_t\20const&\29 +1662:hb_lazy_loader_t\2c\20hb_face_t\2c\2015u\2c\20OT::glyf_accelerator_t>::get_stored\28\29\20const +1663:hb_hashmap_t::fini\28\29 +1664:hb_buffer_t::make_room_for\28unsigned\20int\2c\20unsigned\20int\29 +1665:hb_buffer_t::ensure\28unsigned\20int\29 +1666: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 +1667:fmt_u +1668:float*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29 +1669:emscripten_futex_wait +1670:duplicate_pt\28SkPoint\20const&\2c\20SkPoint\20const&\29 +1671:compute_quad_level\28SkPoint\20const*\29 +1672:char*\20const&\20std::__2::max\5babi:v160004\5d\28char*\20const&\2c\20char*\20const&\29 +1673:cff2_extents_param_t::update_bounds\28CFF::point_t\20const&\29 +1674:cf2_arrstack_getPointer +1675:cbrtf +1676:can_add_curve\28SkPath::Verb\2c\20SkPoint*\29 +1677:call_hline_blitter\28SkBlitter*\2c\20int\2c\20int\2c\20int\2c\20unsigned\20int\29 +1678: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 +1679:byn$mgfn-shared$GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +1680:bounds_t::update\28CFF::point_t\20const&\29 +1681:bool\20hb_sanitize_context_t::check_array>\28OT::IntType\20const*\2c\20unsigned\20int\29\20const +1682:bool\20hb_sanitize_context_t::check_array>\28OT::IntType\20const*\2c\20unsigned\20int\29\20const +1683:bool\20SkIsFinite\28float\20const*\2c\20int\29 +1684:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1685:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +1686:auto\20std::__2::__unwrap_range\5babi:v160004\5d\28char\20const*\2c\20char\20const*\29 +1687: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 +1688:atan2f +1689:af_shaper_get_cluster +1690:_hb_ot_metrics_get_position_common\28hb_font_t*\2c\20hb_ot_metrics_tag_t\2c\20int*\29 +1691:__wait +1692:__tandf +1693:__pthread_setcancelstate +1694:__floatunsitf +1695:__cxa_allocate_exception +1696:\28anonymous\20namespace\29::subtract\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20bool\29 +1697:\28anonymous\20namespace\29::MeshOp::fixedFunctionFlags\28\29\20const +1698:\28anonymous\20namespace\29::DrawAtlasOpImpl::fixedFunctionFlags\28\29\20const +1699:Update_Max +1700:TT_Get_MM_Var +1701:SkUTF::UTF8ToUTF16\28unsigned\20short*\2c\20int\2c\20char\20const*\2c\20unsigned\20long\29 +1702:SkTextBlob::RunRecord::textSize\28\29\20const +1703:SkTSpan::resetBounds\28SkTCurve\20const&\29 +1704:SkTSect::removeSpan\28SkTSpan*\29 +1705:SkTSect::BinarySearch\28SkTSect*\2c\20SkTSect*\2c\20SkIntersections*\29 +1706:SkTInternalLList::remove\28skgpu::Plot*\29 +1707:SkTDArray::append\28\29 +1708:SkTDArray::append\28\29 +1709:SkTConic::operator\5b\5d\28int\29\20const +1710:SkTBlockList::~SkTBlockList\28\29 +1711:SkStrokeRec::needToApply\28\29\20const +1712:SkStrokeRec::SkStrokeRec\28SkPaint\20const&\2c\20float\29 +1713:SkString::set\28char\20const*\2c\20unsigned\20long\29 +1714:SkString::SkString\28char\20const*\2c\20unsigned\20long\29 +1715:SkStrikeSpec::findOrCreateStrike\28\29\20const +1716:SkSpecialImages::MakeDeferredFromGpu\28GrRecordingContext*\2c\20SkIRect\20const&\2c\20unsigned\20int\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +1717:SkShaders::MatrixRec::applyForFragmentProcessor\28SkMatrix\20const&\29\20const +1718:SkShaders::Color\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\29 +1719:SkScan::FillRect\28SkRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +1720:SkScalerContext_FreeType::setupSize\28\29 +1721:SkSL::type_is_valid_for_color\28SkSL::Type\20const&\29 +1722: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 +1723: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 +1724:SkSL::optimize_comparison\28SkSL::Context\20const&\2c\20std::__2::array\20const&\2c\20bool\20\28*\29\28double\2c\20double\29\29 +1725:SkSL::VariableReference::Make\28SkSL::Position\2c\20SkSL::Variable\20const*\2c\20SkSL::VariableRefKind\29 +1726:SkSL::Variable*\20SkSL::SymbolTable::add\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +1727:SkSL::Type::coercionCost\28SkSL::Type\20const&\29\20const +1728:SkSL::SymbolTable::addArrayDimension\28SkSL::Context\20const&\2c\20SkSL::Type\20const*\2c\20int\29 +1729:SkSL::String::appendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20...\29 +1730:SkSL::RP::VariableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +1731:SkSL::RP::Program::appendCopySlotsUnmasked\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\29\20const +1732:SkSL::RP::Generator::pushBinaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +1733:SkSL::RP::Generator::emitTraceLine\28SkSL::Position\29 +1734:SkSL::RP::AutoStack::enter\28\29 +1735:SkSL::PipelineStage::PipelineStageCodeGenerator::writeStatement\28SkSL::Statement\20const&\29 +1736:SkSL::PipelineStage::PipelineStageCodeGenerator::writeLine\28std::__2::basic_string_view>\29 +1737: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 +1738:SkSL::Literal::MakeBool\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20bool\29 +1739:SkSL::GLSLCodeGenerator::getTypePrecision\28SkSL::Type\20const&\29 +1740:SkSL::ExpressionStatement::Make\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29 +1741:SkSL::ConstructorDiagonalMatrix::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +1742:SkSL::ConstructorArrayCast::~ConstructorArrayCast\28\29 +1743:SkSL::ConstantFolder::MakeConstantValueForVariable\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +1744:SkSBlockAllocator<64ul>::SkSBlockAllocator\28SkBlockAllocator::GrowthPolicy\2c\20unsigned\20long\29 +1745:SkRuntimeEffectBuilder::writableUniformData\28\29 +1746:SkRuntimeEffect::uniformSize\28\29\20const +1747:SkResourceCache::Key::init\28void*\2c\20unsigned\20long\20long\2c\20unsigned\20long\29 +1748:SkRegion::op\28SkRegion\20const&\2c\20SkRegion::Op\29 +1749:SkRasterPipelineBlitter::appendStore\28SkRasterPipeline*\29\20const +1750:SkRasterPipeline::compile\28\29\20const +1751:SkRasterPipeline::appendClampIfNormalized\28SkImageInfo\20const&\29 +1752:SkRasterClipStack::writable_rc\28\29 +1753:SkRRect::transform\28SkMatrix\20const&\2c\20SkRRect*\29\20const +1754:SkPointPriv::EqualsWithinTolerance\28SkPoint\20const&\2c\20SkPoint\20const&\29 +1755:SkPoint::Length\28float\2c\20float\29 +1756:SkPixmap::operator=\28SkPixmap&&\29 +1757:SkPathWriter::matchedLast\28SkOpPtT\20const*\29\20const +1758:SkPathWriter::finishContour\28\29 +1759:SkPathRef::atVerb\28int\29\20const +1760:SkPathEdgeIter::next\28\29 +1761:SkPathBuilder::ensureMove\28\29 +1762:SkPathBuilder::close\28\29 +1763:SkPath::addPath\28SkPath\20const&\2c\20SkPath::AddPathMode\29 +1764:SkPaint::isSrcOver\28\29\20const +1765:SkOpSpanBase::contains\28SkOpSegment\20const*\29\20const +1766:SkOpSegment::updateWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +1767:SkOpAngle::linesOnOriginalSide\28SkOpAngle\20const*\29 +1768:SkNoPixelsDevice::writableClip\28\29 +1769:SkNextID::ImageID\28\29 +1770:SkNVRefCnt::unref\28\29\20const +1771:SkMatrixPriv::MapRect\28SkM44\20const&\2c\20SkRect\20const&\29 +1772:SkMatrix::mapVectors\28SkPoint*\2c\20int\29\20const +1773:SkMaskBuilder::AllocImage\28unsigned\20long\2c\20SkMaskBuilder::AllocType\29 +1774:SkMask::computeImageSize\28\29\20const +1775:SkMask::AlphaIter<\28SkMask::Format\294>::operator*\28\29\20const +1776:SkMakeImageFromRasterBitmap\28SkBitmap\20const&\2c\20SkCopyPixelsMode\29 +1777:SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_blur_2D_effect\28int\2c\20SkRuntimeEffect::Options\20const&\29 +1778:SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_blur_1D_effect\28int\2c\20SkRuntimeEffect::Options\20const&\29 +1779:SkKnownRuntimeEffects::GetKnownRuntimeEffect\28SkKnownRuntimeEffects::StableKey\29 +1780:SkJSONWriter::beginValue\28bool\29 +1781:SkIntersections::flip\28\29 +1782:SkImageFilter::getInput\28int\29\20const +1783:SkIDChangeListener::List::changed\28\29 +1784:SkFont::unicharToGlyph\28int\29\20const +1785:SkDrawTiler::~SkDrawTiler\28\29 +1786:SkDrawTiler::next\28\29 +1787:SkDrawTiler::SkDrawTiler\28SkBitmapDevice*\2c\20SkRect\20const*\29 +1788:SkDrawBase::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29\20const +1789:SkDescriptor::operator==\28SkDescriptor\20const&\29\20const +1790:SkData::MakeEmpty\28\29 +1791:SkDRect::add\28SkDPoint\20const&\29 +1792:SkDCubic::FindExtrema\28double\20const*\2c\20double*\29 +1793:SkConic::chopAt\28float\2c\20SkConic*\29\20const +1794:SkColorInfo::isOpaque\28\29\20const +1795:SkColorFilters::Blend\28unsigned\20int\2c\20SkBlendMode\29 +1796:SkColorFilter::makeComposed\28sk_sp\29\20const +1797:SkCanvas::saveLayer\28SkRect\20const*\2c\20SkPaint\20const*\29 +1798:SkCanvas::computeDeviceClipBounds\28bool\29\20const +1799:SkBlockAllocator::ByteRange\20SkBlockAllocator::allocate<4ul\2c\200ul>\28unsigned\20long\29 +1800:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29 +1801:SkAutoSMalloc<1024ul>::SkAutoSMalloc\28unsigned\20long\29 +1802:SkAutoCanvasRestore::SkAutoCanvasRestore\28SkCanvas*\2c\20bool\29 +1803:RunBasedAdditiveBlitter::checkY\28int\29 +1804:RoughlyEqualUlps\28double\2c\20double\29 +1805:PS_Conv_ToFixed +1806:OT::post::accelerator_t::cmp_gids\28void\20const*\2c\20void\20const*\2c\20void*\29 +1807:OT::hmtxvmtx::accelerator_t::get_advance_without_var_unscaled\28unsigned\20int\29\20const +1808: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 +1809:GrTriangulator::VertexList::remove\28GrTriangulator::Vertex*\29 +1810:GrTriangulator::Vertex*\20SkArenaAlloc::make\28SkPoint&\2c\20int&&\29 +1811:GrTriangulator::Poly::addEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Side\2c\20GrTriangulator*\29 +1812:GrSurface::invokeReleaseProc\28\29 +1813:GrSurface::GrSurface\28GrGpu*\2c\20SkISize\20const&\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +1814:GrStyledShape::operator=\28GrStyledShape\20const&\29 +1815: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 +1816: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 +1817:GrShape::setRRect\28SkRRect\20const&\29 +1818:GrShape::reset\28GrShape::Type\29 +1819:GrResourceProvider::findOrCreatePatternedIndexBuffer\28unsigned\20short\20const*\2c\20int\2c\20int\2c\20int\2c\20skgpu::UniqueKey\20const&\29 +1820:GrResourceProvider::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\2c\20GrResourceProvider::ZeroInit\29 +1821:GrResourceProvider::assignUniqueKeyToResource\28skgpu::UniqueKey\20const&\2c\20GrGpuResource*\29 +1822:GrRenderTask::addDependency\28GrRenderTask*\29 +1823:GrRenderTask::GrRenderTask\28\29 +1824:GrRenderTarget::onRelease\28\29 +1825:GrQuadUtils::TessellationHelper::Vertices::asGrQuads\28GrQuad*\2c\20GrQuad::Type\2c\20GrQuad*\2c\20GrQuad::Type\29\20const +1826:GrProxyProvider::findOrCreateProxyByUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxy::UseAllocator\29 +1827:GrProxyProvider::assignUniqueKeyToProxy\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\29 +1828:GrPaint::setCoverageFragmentProcessor\28std::__2::unique_ptr>\29 +1829:GrMeshDrawOp::QuadHelper::QuadHelper\28GrMeshDrawTarget*\2c\20unsigned\20long\2c\20int\29 +1830:GrIsStrokeHairlineOrEquivalent\28GrStyle\20const&\2c\20SkMatrix\20const&\2c\20float*\29 +1831:GrImageInfo::minRowBytes\28\29\20const +1832:GrGpuResource::CacheAccess::isUsableAsScratch\28\29\20const +1833:GrGeometryProcessor::ProgramImpl::setupUniformColor\28GrGLSLFPFragmentBuilder*\2c\20GrGLSLUniformHandler*\2c\20char\20const*\2c\20GrResourceHandle*\29 +1834:GrGLSLUniformHandler::addUniformArray\28GrProcessor\20const*\2c\20unsigned\20int\2c\20SkSLType\2c\20char\20const*\2c\20int\2c\20char\20const**\29 +1835:GrGLSLShaderBuilder::emitFunction\28SkSLType\2c\20char\20const*\2c\20SkSpan\2c\20char\20const*\29 +1836:GrGLSLShaderBuilder::code\28\29 +1837:GrGLOpsRenderPass::bindVertexBuffer\28GrBuffer\20const*\2c\20int\29 +1838:GrGLGpu::unbindSurfaceFBOForPixelOps\28GrSurface*\2c\20int\2c\20unsigned\20int\29 +1839:GrGLGpu::flushRenderTarget\28GrGLRenderTarget*\2c\20bool\29 +1840:GrGLGpu::bindSurfaceFBOForPixelOps\28GrSurface*\2c\20int\2c\20unsigned\20int\2c\20GrGLGpu::TempFBOTarget\29 +1841: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 +1842:GrFragmentProcessor::visitTextureEffects\28std::__2::function\20const&\29\20const +1843:GrDirectContextPriv::flushSurface\28GrSurfaceProxy*\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +1844:GrBlendFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkBlendMode\2c\20bool\29 +1845:GrBackendFormat::operator=\28GrBackendFormat\20const&\29 +1846:GrAAConvexTessellator::addPt\28SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20GrAAConvexTessellator::CurveState\29 +1847:FT_Outline_Transform +1848:CFF::parsed_values_t::add_op\28unsigned\20int\2c\20CFF::byte_str_ref_t\20const&\2c\20CFF::op_str_t\20const&\29 +1849:CFF::dict_opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +1850: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 +1851:CFF::cs_opset_t::process_post_move\28unsigned\20int\2c\20CFF::cff1_cs_interp_env_t&\2c\20cff1_extents_param_t&\29 +1852:CFF::cs_interp_env_t>>::determine_hintmask_size\28\29 +1853: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 +1854:AlmostBetweenUlps\28double\2c\20double\2c\20double\29 +1855:ActiveEdgeList::SingleRotation\28ActiveEdge*\2c\20int\29 +1856:AAT::StateTable::EntryData>::get_entry\28int\2c\20unsigned\20int\29\20const +1857:AAT::StateTable::EntryData>::get_entry\28int\2c\20unsigned\20int\29\20const +1858:AAT::ContextualSubtable::driver_context_t::is_actionable\28AAT::StateTableDriver::EntryData>*\2c\20AAT::Entry::EntryData>\20const&\29 +1859: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 +1860: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 +1861:void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +1862:void\20extend_pts<\28SkPaint::Cap\291>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +1863:void\20SkSafeUnref\28SkTextBlob*\29 +1864:void\20SkSafeUnref\28GrTextureProxy*\29 +1865:unsigned\20int*\20SkRecorder::copy\28unsigned\20int\20const*\2c\20unsigned\20long\29 +1866:tt_cmap14_ensure +1867:tanf +1868:std::__2::vector>\2c\20std::__2::allocator>>>::push_back\5babi:v160004\5d\28std::__2::unique_ptr>&&\29 +1869:std::__2::vector>\2c\20std::__2::allocator>>>::~vector\5babi:v160004\5d\28\29 +1870:std::__2::vector>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +1871:std::__2::vector>::vector\28std::__2::vector>\20const&\29 +1872:std::__2::unique_ptr>\20\5b\5d\2c\20std::__2::default_delete>\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +1873: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 +1874:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1875:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1876:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +1877:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrDrawOpAtlas*\29 +1878: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 +1879:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char8_t*\2c\20char8_t*\2c\20char8_t*&\29\20const +1880: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 +1881:std::__2::basic_string\2c\20std::__2::allocator>::__assign_external\28char\20const*\29 +1882:std::__2::array\2c\204ul>::~array\28\29 +1883:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1884:std::__2::__wrap_iter::operator++\5babi:v160004\5d\28\29 +1885: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 +1886:std::__2::__shared_count::__release_shared\5babi:v160004\5d\28\29 +1887:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +1888:std::__2::__num_get::__stage2_int_prep\28std::__2::ios_base&\2c\20wchar_t&\29 +1889:std::__2::__num_get::__do_widen\28std::__2::ios_base&\2c\20wchar_t*\29\20const +1890:std::__2::__num_get::__stage2_int_prep\28std::__2::ios_base&\2c\20char&\29 +1891:std::__2::__itoa::__append1\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +1892:std::__2::__function::__value_func::operator=\5babi:v160004\5d\28std::__2::__function::__value_func&&\29 +1893:std::__2::__function::__value_func::operator\28\29\5babi:v160004\5d\28SkIRect\20const&\29\20const +1894:sqrtf +1895: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 +1896: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 +1897: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 +1898: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.5837\29 +1899: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.669\29 +1900: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.7654\29 +1901:skvx::Vec<4\2c\20float>\20skvx::max<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +1902:sktext::gpu::VertexFiller::vertexStride\28SkMatrix\20const&\29\20const +1903:sktext::gpu::SubRunList::append\28std::__2::unique_ptr\29 +1904:sktext::gpu::SubRun::~SubRun\28\29 +1905:sktext::gpu::GlyphVector::~GlyphVector\28\29 +1906:skif::\28anonymous\20namespace\29::draw_tiled_border\28SkCanvas*\2c\20SkTileMode\2c\20SkPaint\20const&\2c\20skif::LayerSpace\20const&\2c\20skif::LayerSpace\2c\20skif::LayerSpace\29::$_0::operator\28\29\28SkRect\20const&\2c\20SkRect\20const&\29\20const +1907:skif::FilterResult::analyzeBounds\28skif::LayerSpace\20const&\2c\20skif::FilterResult::BoundsScope\29\20const +1908:skif::FilterResult::AutoSurface::snap\28\29 +1909:skif::FilterResult::AutoSurface::AutoSurface\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20skif::FilterResult::PixelBoundary\2c\20bool\2c\20SkSurfaceProps\20const*\29 +1910:skia_private::THashTable::AdaptedTraits>::findOrNull\28skgpu::UniqueKey\20const&\29\20const +1911:skia_private::TArray::reset\28int\29 +1912:skia_private::TArray::push_back_raw\28int\29 +1913:skia_private::TArray::push_back\28\29 +1914:skia_private::TArray::push_back\28SkSL::Variable*&&\29 +1915:skia_private::TArray::~TArray\28\29 +1916:skia_private::AutoSTArray<8\2c\20unsigned\20int>::reset\28int\29 +1917:skia_private::AutoSTArray<24\2c\20unsigned\20int>::~AutoSTArray\28\29 +1918:skia_png_reciprocal2 +1919:skia_png_benign_error +1920:skia::textlayout::Run::~Run\28\29 +1921:skia::textlayout::Run::posX\28unsigned\20long\29\20const +1922:skia::textlayout::ParagraphStyle::ParagraphStyle\28skia::textlayout::ParagraphStyle\20const&\29 +1923:skia::textlayout::InternalLineMetrics::runTop\28skia::textlayout::Run\20const*\2c\20skia::textlayout::LineMetricStyle\29\20const +1924:skia::textlayout::InternalLineMetrics::height\28\29\20const +1925:skia::textlayout::InternalLineMetrics::add\28skia::textlayout::Run*\29 +1926:skia::textlayout::FontCollection::findTypefaces\28std::__2::vector>\20const&\2c\20SkFontStyle\2c\20std::__2::optional\20const&\29 +1927:skgpu::ganesh::TextureOp::BatchSizeLimiter::createOp\28GrTextureSetEntry*\2c\20int\2c\20GrAAType\29 +1928:skgpu::ganesh::SurfaceFillContext::fillRectWithFP\28SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +1929:skgpu::ganesh::SurfaceFillContext::fillRectToRectWithFP\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +1930:skgpu::ganesh::SurfaceDrawContext::drawShapeUsingPathRenderer\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\2c\20bool\29 +1931:skgpu::ganesh::SurfaceDrawContext::drawRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const*\29 +1932:skgpu::ganesh::SurfaceDrawContext::drawRRect\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20GrStyle\20const&\29 +1933:skgpu::ganesh::SurfaceDrawContext::drawFilledQuad\28GrClip\20const*\2c\20GrPaint&&\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\29 +1934:skgpu::ganesh::SurfaceContext::transferPixels\28GrColorType\2c\20SkIRect\20const&\29::$_0::~$_0\28\29 +1935:skgpu::ganesh::SurfaceContext::transferPixels\28GrColorType\2c\20SkIRect\20const&\29 +1936:skgpu::ganesh::SurfaceContext::PixelTransferResult::PixelTransferResult\28skgpu::ganesh::SurfaceContext::PixelTransferResult&&\29 +1937: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 +1938:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::vertexSize\28\29\20const +1939:skgpu::ganesh::OpsTask::OpChain::List::List\28skgpu::ganesh::OpsTask::OpChain::List&&\29 +1940:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29::$_0::operator\28\29\28GrSurfaceProxyView\20const&\29\20const +1941:skgpu::ganesh::Device::targetProxy\28\29 +1942:skgpu::ganesh::ClipStack::getConservativeBounds\28\29\20const +1943:skgpu::UniqueKeyInvalidatedMessage::UniqueKeyInvalidatedMessage\28skgpu::UniqueKeyInvalidatedMessage\20const&\29 +1944:skgpu::UniqueKey::operator=\28skgpu::UniqueKey\20const&\29 +1945:skgpu::TAsyncReadResult::addTransferResult\28skgpu::ganesh::SurfaceContext::PixelTransferResult\20const&\2c\20SkISize\2c\20unsigned\20long\2c\20skgpu::TClientMappedBufferManager*\29 +1946:skgpu::Swizzle::asString\28\29\20const +1947:skgpu::GetApproxSize\28SkISize\29 +1948:sk_srgb_linear_singleton\28\29 +1949:sk_sp::operator=\28sk_sp&&\29 +1950:sk_sp::reset\28GrGpuBuffer*\29 +1951:sk_sp\20sk_make_sp\28\29 +1952:sfnt_get_name_id +1953:set_glyph\28hb_glyph_info_t&\2c\20hb_font_t*\29 +1954:resource_cache_mutex\28\29 +1955:ps_parser_to_token +1956:precisely_between\28double\2c\20double\2c\20double\29 +1957:powf +1958:next_char\28hb_buffer_t*\2c\20unsigned\20int\29 +1959:memchr +1960:log2f +1961:log +1962:less_or_equal_ulps\28float\2c\20float\2c\20int\29 +1963:is_consonant\28hb_glyph_info_t\20const&\29 +1964:int\20const*\20std::__2::find\5babi:v160004\5d\28int\20const*\2c\20int\20const*\2c\20int\20const&\29 +1965:hb_vector_t::push\28\29 +1966:hb_vector_t::resize\28int\2c\20bool\2c\20bool\29 +1967:hb_unicode_funcs_destroy +1968:hb_serialize_context_t::pop_discard\28\29 +1969:hb_paint_funcs_t::pop_clip\28void*\29 +1970: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 +1971:hb_lazy_loader_t\2c\20hb_face_t\2c\2024u\2c\20OT::GDEF_accelerator_t>::get_stored\28\29\20const +1972:hb_indic_would_substitute_feature_t::init\28hb_ot_map_t\20const*\2c\20unsigned\20int\2c\20bool\29 +1973:hb_hashmap_t::del\28unsigned\20int\20const&\29 +1974:hb_font_t::get_glyph_v_advance\28unsigned\20int\29 +1975:hb_font_t::get_glyph_extents\28unsigned\20int\2c\20hb_glyph_extents_t*\29 +1976:hb_buffer_t::_set_glyph_flags\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +1977:hb_buffer_create_similar +1978:gray_set_cell +1979:getenv +1980:ft_service_list_lookup +1981:fseek +1982:fillcheckrect\28int\2c\20int\2c\20int\2c\20int\2c\20SkBlitter*\29 +1983:fflush +1984:fclose +1985:expm1 +1986:expf +1987:crc_word +1988:classify\28skcms_TransferFunction\20const&\2c\20TF_PQish*\2c\20TF_HLGish*\29 +1989:choose_bmp_texture_colortype\28GrCaps\20const*\2c\20SkBitmap\20const&\29 +1990:char*\20sktext::gpu::BagOfBytes::allocateBytesFor\28int\29 +1991:cff_parse_fixed +1992:cf2_interpT2CharString +1993:cf2_hintmap_insertHint +1994:cf2_hintmap_build +1995:cf2_glyphpath_moveTo +1996:cf2_glyphpath_lineTo +1997:byn$mgfn-shared$std::__2::__split_buffer&>::~__split_buffer\28\29 +1998: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 +1999: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 +2000: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 +2001: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 +2002:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +2003:byn$mgfn-shared$skgpu::ganesh::PathStencilCoverOp::ClassID\28\29 +2004:byn$mgfn-shared$format_alignment\28SkMask::Format\29 +2005:byn$mgfn-shared$SkFibBlockSizes<4294967295u>::SkFibBlockSizes\28unsigned\20int\2c\20unsigned\20int\29::'lambda'\28\29::operator\28\29\28\29\20const +2006:bool\20std::__2::operator==\5babi:v160004\5d>\28std::__2::vector>\20const&\2c\20std::__2::vector>\20const&\29 +2007:bool\20OT::OffsetTo>\2c\20OT::IntType\2c\20false>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +2008: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\29 +2009:afm_tokenize +2010:af_glyph_hints_reload +2011:a_dec +2012:_hb_glyph_info_set_unicode_props\28hb_glyph_info_t*\2c\20hb_buffer_t*\29 +2013:_hb_draw_funcs_set_middle\28hb_draw_funcs_t*\2c\20void*\2c\20void\20\28*\29\28void*\29\29 +2014:__syscall_ret +2015:__sin +2016:__cos +2017:\28anonymous\20namespace\29::valid_unit_divide\28float\2c\20float\2c\20float*\29 +2018:\28anonymous\20namespace\29::draw_stencil_rect\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrHardClip\20const&\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +2019:\28anonymous\20namespace\29::can_reorder\28SkRect\20const&\2c\20SkRect\20const&\29 +2020:\28anonymous\20namespace\29::SkBlurImageFilter::~SkBlurImageFilter\28\29 +2021:\28anonymous\20namespace\29::FillRectOpImpl::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +2022:Skwasm::samplingOptionsForQuality\28Skwasm::FilterQuality\29 +2023:Skwasm::createRRect\28float\20const*\29 +2024:SkWriter32::writeSampling\28SkSamplingOptions\20const&\29 +2025:SkWriter32::writePad\28void\20const*\2c\20unsigned\20long\29 +2026:SkTextBlobRunIterator::next\28\29 +2027:SkTextBlobBuilder::make\28\29 +2028:SkTSect::addOne\28\29 +2029:SkTMultiMap::remove\28skgpu::ScratchKey\20const&\2c\20GrGpuResource\20const*\29 +2030:SkTLazy::set\28SkPath\20const&\29 +2031:SkTDArray::append\28\29 +2032:SkSurfaces::RenderTarget\28GrRecordingContext*\2c\20skgpu::Budgeted\2c\20SkImageInfo\20const&\2c\20int\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const*\2c\20bool\2c\20bool\29 +2033:SkSurfaces::Raster\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20SkSurfaceProps\20const*\29 +2034:SkStrokeRec::isFillStyle\28\29\20const +2035:SkString::appendU32\28unsigned\20int\29 +2036:SkStrike::digestFor\28skglyph::ActionType\2c\20SkPackedGlyphID\29 +2037:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20SkBitmap\20const&\2c\20SkSurfaceProps\20const&\29 +2038:SkShaders::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\29 +2039:SkShaderUtils::GLSLPrettyPrint::appendChar\28char\29 +2040:SkSemaphore::signal\28int\29 +2041:SkScopeExit::~SkScopeExit\28\29 +2042:SkScan::FillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\29 +2043:SkSL::is_scalar_op_matrix\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +2044: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 +2045:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitType\28SkSL::Type\20const&\29 +2046:SkSL::Variable::initialValue\28\29\20const +2047:SkSL::Variable*\20SkSL::SymbolTable::takeOwnershipOfSymbol\28std::__2::unique_ptr>\29 +2048:SkSL::Type::canCoerceTo\28SkSL::Type\20const&\2c\20bool\29\20const +2049:SkSL::SymbolTable::takeOwnershipOfString\28std::__2::basic_string\2c\20std::__2::allocator>\29 +2050:SkSL::RP::pack_nybbles\28SkSpan\29 +2051:SkSL::RP::Generator::foldComparisonOp\28SkSL::Operator\2c\20int\29 +2052:SkSL::RP::Generator::createStack\28\29 +2053:SkSL::RP::Builder::trace_var\28int\2c\20SkSL::RP::SlotRange\29 +2054:SkSL::RP::Builder::jump\28int\29 +2055:SkSL::RP::Builder::dot_floats\28int\29 +2056:SkSL::RP::Builder::branch_if_no_lanes_active\28int\29 +2057:SkSL::RP::AutoStack::~AutoStack\28\29 +2058:SkSL::RP::AutoStack::pushClone\28int\29 +2059:SkSL::Position::rangeThrough\28SkSL::Position\29\20const +2060:SkSL::PipelineStage::PipelineStageCodeGenerator::AutoOutputBuffer::~AutoOutputBuffer\28\29 +2061:SkSL::Parser::type\28SkSL::Modifiers*\29 +2062:SkSL::Parser::parseArrayDimensions\28SkSL::Position\2c\20SkSL::Type\20const**\29 +2063:SkSL::Parser::modifiers\28\29 +2064:SkSL::Parser::assignmentExpression\28\29 +2065:SkSL::Parser::arraySize\28long\20long*\29 +2066:SkSL::ModifierFlags::paddedDescription\28\29\20const +2067: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 +2068:SkSL::IndexExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +2069:SkSL::IRHelpers::Swizzle\28std::__2::unique_ptr>\2c\20skia_private::FixedArray<4\2c\20signed\20char>\29\20const +2070:SkSL::GLSLCodeGenerator::writeTypePrecision\28SkSL::Type\20const&\29 +2071:SkSL::FunctionDeclaration::getMainCoordsParameter\28\29\20const +2072:SkSL::ExpressionArray::clone\28\29\20const +2073:SkSL::ConstantFolder::GetConstantValue\28SkSL::Expression\20const&\2c\20double*\29 +2074:SkSL::ConstantFolder::GetConstantInt\28SkSL::Expression\20const&\2c\20long\20long*\29 +2075:SkSL::Compiler::~Compiler\28\29 +2076:SkSL::Compiler::errorText\28bool\29 +2077:SkSL::Compiler::Compiler\28\29 +2078:SkSL::Analysis::IsTrivialExpression\28SkSL::Expression\20const&\29 +2079:SkRuntimeShaderBuilder::~SkRuntimeShaderBuilder\28\29 +2080:SkRuntimeShaderBuilder::makeShader\28SkMatrix\20const*\29\20const +2081:SkRuntimeShaderBuilder::SkRuntimeShaderBuilder\28sk_sp\29 +2082:SkRuntimeEffectPriv::TransformUniforms\28SkSpan\2c\20sk_sp\2c\20SkColorSpace\20const*\29 +2083:SkRuntimeEffectBuilder::BuilderChild&\20SkRuntimeEffectBuilder::BuilderChild::operator=\28sk_sp\29 +2084:SkRuntimeEffect::findChild\28std::__2::basic_string_view>\29\20const +2085:SkRegion::setPath\28SkPath\20const&\2c\20SkRegion\20const&\29 +2086:SkRegion::Iterator::Iterator\28SkRegion\20const&\29 +2087:SkReduceOrder::Quad\28SkPoint\20const*\2c\20SkPoint*\29 +2088:SkRect::sort\28\29 +2089:SkRect::joinPossiblyEmptyRect\28SkRect\20const&\29 +2090:SkRasterPipelineBlitter::appendClipScale\28SkRasterPipeline*\29\20const +2091:SkRasterPipelineBlitter::appendClipLerp\28SkRasterPipeline*\29\20const +2092:SkRRect::setRectRadii\28SkRect\20const&\2c\20SkPoint\20const*\29 +2093:SkRGBA4f<\28SkAlphaType\292>::toBytes_RGBA\28\29\20const +2094:SkRGBA4f<\28SkAlphaType\292>::fitsInBytes\28\29\20const +2095:SkPointPriv::EqualsWithinTolerance\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\29 +2096:SkPoint*\20SkRecorder::copy\28SkPoint\20const*\2c\20unsigned\20long\29 +2097:SkPoint*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29 +2098:SkPixmap::reset\28\29 +2099:SkPixmap::computeByteSize\28\29\20const +2100:SkPictureRecord::addImage\28SkImage\20const*\29 +2101:SkPathRef::SkPathRef\28int\2c\20int\2c\20int\29 +2102:SkPathPriv::ComputeFirstDirection\28SkPath\20const&\29 +2103:SkPath::isLine\28SkPoint*\29\20const +2104:SkPaintPriv::ComputeLuminanceColor\28SkPaint\20const&\29 +2105:SkPaint::operator=\28SkPaint\20const&\29 +2106:SkPaint::nothingToDraw\28\29\20const +2107:SkOpSpan::release\28SkOpPtT\20const*\29 +2108:SkOpContourBuilder::addCurve\28SkPath::Verb\2c\20SkPoint\20const*\2c\20float\29 +2109:SkMipmap::Build\28SkPixmap\20const&\2c\20SkDiscardableMemory*\20\28*\29\28unsigned\20long\29\2c\20bool\29 +2110:SkMeshSpecification::Varying::Varying\28SkMeshSpecification::Varying&&\29 +2111:SkMatrix::mapOrigin\28\29\20const +2112:SkMatrix::decomposeScale\28SkSize*\2c\20SkMatrix*\29\20const +2113:SkMaskFilter::MakeBlur\28SkBlurStyle\2c\20float\2c\20bool\29 +2114:SkM44::SkM44\28SkMatrix\20const&\29 +2115:SkIntersections::insertNear\28double\2c\20double\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29 +2116:SkImageShader::Make\28sk_sp\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +2117:SkImageGenerator::onRefEncodedData\28\29 +2118:SkIRect::outset\28int\2c\20int\29 +2119:SkIRect::inset\28int\2c\20int\29 +2120:SkGradientBaseShader::flatten\28SkWriteBuffer&\29\20const +2121:SkFont::getMetrics\28SkFontMetrics*\29\20const +2122:SkFont::SkFont\28\29 +2123:SkFindQuadMaxCurvature\28SkPoint\20const*\29 +2124:SkFDot6Div\28int\2c\20int\29 +2125:SkEvalQuadAt\28SkPoint\20const*\2c\20float\29 +2126:SkEvalCubicAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29 +2127:SkEdgeClipper::appendVLine\28float\2c\20float\2c\20float\2c\20bool\29 +2128:SkDrawShadowMetrics::GetSpotParams\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float*\2c\20float*\2c\20SkPoint*\29 +2129:SkDraw::SkDraw\28\29 +2130:SkDevice::setLocalToDevice\28SkM44\20const&\29 +2131:SkDevice::setGlobalCTM\28SkM44\20const&\29 +2132:SkDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +2133:SkDLine::exactPoint\28SkDPoint\20const&\29\20const +2134:SkColorSpace::MakeSRGBLinear\28\29 +2135:SkChopCubicAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +2136:SkCanvas::getLocalClipBounds\28\29\20const +2137:SkCanvas::drawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +2138:SkCanvas::drawIRect\28SkIRect\20const&\2c\20SkPaint\20const&\29 +2139:SkBulkGlyphMetrics::glyphs\28SkSpan\29 +2140:SkBlurEngine::SigmaToRadius\28float\29 +2141:SkBlockAllocator::releaseBlock\28SkBlockAllocator::Block*\29 +2142:SkBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +2143:SkBlendMode_AppendStages\28SkBlendMode\2c\20SkRasterPipeline*\29 +2144:SkBitmap::tryAllocPixels\28SkBitmap::Allocator*\29 +2145:SkBitmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +2146:SkBitmap::operator=\28SkBitmap\20const&\29 +2147:SkBitmap::getGenerationID\28\29\20const +2148:SkAutoPixmapStorage::SkAutoPixmapStorage\28\29 +2149:SkAutoDeviceTransformRestore::~SkAutoDeviceTransformRestore\28\29 +2150:SkAutoDeviceTransformRestore::SkAutoDeviceTransformRestore\28SkDevice*\2c\20SkMatrix\20const&\29 +2151:SkAAClipBlitter::~SkAAClipBlitter\28\29 +2152:SkAAClip::setRegion\28SkRegion\20const&\29::$_0::operator\28\29\28unsigned\20char\2c\20int\29\20const +2153:SkAAClip::findX\28unsigned\20char\20const*\2c\20int\2c\20int*\29\20const +2154:SkAAClip::findRow\28int\2c\20int*\29\20const +2155:SkAAClip::Builder::Blitter::~Blitter\28\29 +2156:RoughlyEqualUlps\28float\2c\20float\29 +2157:R +2158:PS_Conv_ToInt +2159:OT::hmtxvmtx::accelerator_t::get_leading_bearing_without_var_unscaled\28unsigned\20int\2c\20int*\29\20const +2160:OT::hb_ot_apply_context_t::replace_glyph\28unsigned\20int\29 +2161:OT::fvar::get_axes\28\29\20const +2162: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 +2163:OT::DeltaSetIndexMap::map\28unsigned\20int\29\20const +2164:Normalize +2165:Ins_Goto_CodeRange +2166:GrTriangulator::setBottom\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2167:GrTriangulator::VertexList::append\28GrTriangulator::VertexList\20const&\29 +2168:GrTriangulator::Line::normalize\28\29 +2169:GrTriangulator::Edge::disconnect\28\29 +2170:GrThreadSafeCache::find\28skgpu::UniqueKey\20const&\29 +2171:GrThreadSafeCache::add\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +2172:GrTextureEffect::texture\28\29\20const +2173:GrTextureEffect::GrTextureEffect\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20GrTextureEffect::Sampling\20const&\29 +2174:GrSurfaceProxyView::Copy\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20SkIRect\2c\20SkBackingFit\2c\20skgpu::Budgeted\2c\20std::__2::basic_string_view>\29 +2175:GrSurfaceProxyPriv::doLazyInstantiation\28GrResourceProvider*\29 +2176:GrSurface::~GrSurface\28\29 +2177:GrStyledShape::simplify\28\29 +2178:GrStyle::applies\28\29\20const +2179:GrSimpleMeshDrawOpHelperWithStencil::fixedFunctionFlags\28\29\20const +2180:GrSimpleMeshDrawOpHelper::finalizeProcessors\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrClampType\2c\20GrProcessorAnalysisCoverage\2c\20GrProcessorAnalysisColor*\29 +2181:GrSimpleMeshDrawOpHelper::detachProcessorSet\28\29 +2182: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 +2183:GrSimpleMesh::setIndexedPatterned\28sk_sp\2c\20int\2c\20int\2c\20int\2c\20sk_sp\2c\20int\2c\20int\29 +2184:GrShape::setRect\28SkRect\20const&\29 +2185:GrShape::GrShape\28GrShape\20const&\29 +2186:GrShaderVar::addModifier\28char\20const*\29 +2187:GrSWMaskHelper::~GrSWMaskHelper\28\29 +2188:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20void\20const*\2c\20skgpu::UniqueKey\20const&\29 +2189:GrResourceProvider::findOrMakeStaticBuffer\28GrGpuBufferType\2c\20unsigned\20long\2c\20skgpu::UniqueKey\20const&\2c\20void\20\28*\29\28skgpu::VertexWriter\2c\20unsigned\20long\29\29 +2190:GrResourceCache::purgeAsNeeded\28\29 +2191:GrRenderTask::addDependency\28GrDrawingManager*\2c\20GrSurfaceProxy*\2c\20skgpu::Mipmapped\2c\20GrTextureResolveManager\2c\20GrCaps\20const&\29 +2192: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 +2193:GrQuad::asRect\28SkRect*\29\20const +2194:GrProcessorSet::operator!=\28GrProcessorSet\20const&\29\20const +2195:GrPixmapBase::GrPixmapBase\28GrImageInfo\2c\20void\20const*\2c\20unsigned\20long\29 +2196:GrPipeline::getXferProcessor\28\29\20const +2197:GrPathUtils::generateQuadraticPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +2198:GrPathUtils::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint**\2c\20unsigned\20int\29 +2199:GrNativeRect::asSkIRect\28\29\20const +2200:GrGeometryProcessor::ProgramImpl::~ProgramImpl\28\29 +2201:GrGeometryProcessor::ProgramImpl::WriteOutputPosition\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\2c\20char\20const*\2c\20SkMatrix\20const&\2c\20GrResourceHandle*\29 +2202:GrGLSLShaderBuilder::defineConstant\28char\20const*\2c\20float\29 +2203:GrGLSLShaderBuilder::addFeature\28unsigned\20int\2c\20char\20const*\29 +2204:GrGLSLProgramBuilder::nameVariable\28char\2c\20char\20const*\2c\20bool\29 +2205:GrGLSLColorSpaceXformHelper::setData\28GrGLSLProgramDataManager\20const&\2c\20GrColorSpaceXform\20const*\29 +2206:GrGLSLColorSpaceXformHelper::emitCode\28GrGLSLUniformHandler*\2c\20GrColorSpaceXform\20const*\2c\20unsigned\20int\29 +2207:GrGLGpu::flushColorWrite\28bool\29 +2208:GrGLGpu::bindTexture\28int\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20GrGLTexture*\29 +2209:GrFragmentProcessor::visitWithImpls\28std::__2::function\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29\20const +2210:GrFragmentProcessor::visitProxies\28std::__2::function\20const&\29\20const +2211:GrFragmentProcessor::ColorMatrix\28std::__2::unique_ptr>\2c\20float\20const*\2c\20bool\2c\20bool\2c\20bool\29 +2212:GrDstProxyView::operator=\28GrDstProxyView\20const&\29 +2213:GrDrawingManager::closeActiveOpsTask\28\29 +2214:GrDrawingManager::appendTask\28sk_sp\29 +2215:GrColorSpaceXformEffect::Make\28std::__2::unique_ptr>\2c\20sk_sp\29 +2216:GrColorSpaceXform::XformKey\28GrColorSpaceXform\20const*\29 +2217:GrColorSpaceXform::Make\28GrColorInfo\20const&\2c\20GrColorInfo\20const&\29 +2218:GrColorInfo::GrColorInfo\28GrColorInfo\20const&\29 +2219:GrCaps::isFormatCompressed\28GrBackendFormat\20const&\29\20const +2220:GrBufferAllocPool::~GrBufferAllocPool\28\29 +2221:GrBufferAllocPool::putBack\28unsigned\20long\29 +2222: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 +2223:GrAAConvexTessellator::lineTo\28SkPoint\20const&\2c\20GrAAConvexTessellator::CurveState\29 +2224:FwDCubicEvaluator::restart\28int\29 +2225:FT_Vector_Transform +2226:FT_Stream_Read +2227:FT_Select_Charmap +2228:FT_Lookup_Renderer +2229:FT_Get_Module_Interface +2230:CFF::opset_t::process_op\28unsigned\20int\2c\20CFF::interp_env_t&\29 +2231:CFF::arg_stack_t::push_int\28int\29 +2232:CFF::CFFIndex>::offset_at\28unsigned\20int\29\20const +2233: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 +2234:ActiveEdge::intersect\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29\20const +2235:AAT::hb_aat_apply_context_t::~hb_aat_apply_context_t\28\29 +2236: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 +2237:void\20std::__2::reverse\5babi:v160004\5d\28unsigned\20int*\2c\20unsigned\20int*\29 +2238: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 +2239: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 +2240:void\20SkSafeUnref\28GrArenas*\29 +2241:void\20SkSL::RP::unpack_nybbles_to_offsets\28unsigned\20int\2c\20SkSpan\29 +2242:unlock +2243:ubidi_setPara_skia +2244:ubidi_getCustomizedClass_skia +2245:tt_set_mm_blend +2246:tt_face_get_ps_name +2247:trinkle +2248:t1_builder_check_points +2249:subdivide\28SkConic\20const&\2c\20SkPoint*\2c\20int\29 +2250:std::__2::vector>\2c\20std::__2::allocator>>>::__swap_out_circular_buffer\28std::__2::__split_buffer>\2c\20std::__2::allocator>>&>&\29 +2251:std::__2::vector>\2c\20std::__2::allocator>>>::__clear\5babi:v160004\5d\28\29 +2252:std::__2::vector>\2c\20std::__2::allocator>>>::~vector\5babi:v160004\5d\28\29 +2253:std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +2254:std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +2255:std::__2::vector\2c\20std::__2::allocator>>::push_back\5babi:v160004\5d\28sk_sp\20const&\29 +2256:std::__2::vector>::push_back\5babi:v160004\5d\28float&&\29 +2257:std::__2::vector>::push_back\5babi:v160004\5d\28char\20const*&&\29 +2258:std::__2::vector>::__move_assign\28std::__2::vector>&\2c\20std::__2::integral_constant\29 +2259:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +2260:std::__2::unordered_map\2c\20std::__2::equal_to\2c\20std::__2::allocator>>::operator\5b\5d\28GrTriangulator::Vertex*\20const&\29 +2261:std::__2::unique_ptr::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d\2c\20std::__2::default_delete::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +2262: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 +2263:std::__2::unique_ptr>::reset\5babi:v160004\5d\28skgpu::ganesh::SurfaceDrawContext*\29 +2264:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2265:std::__2::unique_ptr>::reset\5babi:v160004\5d\28skgpu::ganesh::PathRendererChain*\29 +2266:std::__2::unique_ptr\20\5b\5d\2c\20std::__2::default_delete\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +2267:std::__2::unique_ptr>::reset\5babi:v160004\5d\28hb_face_t*\29 +2268:std::__2::unique_ptr::release\5babi:v160004\5d\28\29 +2269:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2270:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2271:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2272:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2273:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2274:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +2275:std::__2::mutex::unlock\28\29 +2276:std::__2::mutex::lock\28\29 +2277:std::__2::moneypunct::do_decimal_point\28\29\20const +2278:std::__2::moneypunct::pos_format\5babi:v160004\5d\28\29\20const +2279:std::__2::moneypunct::do_decimal_point\28\29\20const +2280:std::__2::locale::locale\28std::__2::locale\20const&\29 +2281:std::__2::locale::classic\28\29 +2282:std::__2::istreambuf_iterator>::istreambuf_iterator\5babi:v160004\5d\28std::__2::basic_istream>&\29 +2283:std::__2::function::operator\28\29\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +2284:std::__2::function::operator\28\29\28int\2c\20skia::textlayout::Paragraph::VisitorInfo\20const*\29\20const +2285: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 +2286: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 +2287: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 +2288:std::__2::deque>::pop_front\28\29 +2289:std::__2::deque>::begin\5babi:v160004\5d\28\29 +2290: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 +2291:std::__2::ctype::toupper\5babi:v160004\5d\28char\29\20const +2292: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 +2293:std::__2::basic_string_view>::find\5babi:v160004\5d\28char\2c\20unsigned\20long\29\20const +2294: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 +2295:std::__2::basic_string\2c\20std::__2::allocator>::operator\5b\5d\5babi:v160004\5d\28unsigned\20long\29\20const +2296:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +2297: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 +2298:std::__2::basic_string\2c\20std::__2::allocator>::operator=\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +2299:std::__2::basic_string\2c\20std::__2::allocator>::__get_short_size\5babi:v160004\5d\28\29\20const +2300:std::__2::basic_string\2c\20std::__2::allocator>::__fits_in_sso\5babi:v160004\5d\28unsigned\20long\29 +2301:std::__2::basic_string\2c\20std::__2::allocator>::__assign_external\28char\20const*\2c\20unsigned\20long\29 +2302:std::__2::basic_streambuf>::__pbump\5babi:v160004\5d\28long\29 +2303:std::__2::basic_ostream>::sentry::operator\20bool\5babi:v160004\5d\28\29\20const +2304:std::__2::basic_iostream>::~basic_iostream\28\29 +2305:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>>\28SkSL::Position&\2c\20SkSL::OperatorKind&&\2c\20std::__2::unique_ptr>&&\29 +2306:std::__2::__tuple_impl\2c\20sk_sp\2c\20sk_sp>::~__tuple_impl\28\29 +2307: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 +2308: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 +2309:std::__2::__throw_bad_variant_access\5babi:v160004\5d\28\29 +2310:std::__2::__split_buffer>\2c\20std::__2::allocator>>&>::~__split_buffer\28\29 +2311:std::__2::__split_buffer>::push_front\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +2312:std::__2::__split_buffer>::push_back\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock*\20const&\29 +2313:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +2314:std::__2::__split_buffer\2c\20std::__2::allocator>&>::~__split_buffer\28\29 +2315:std::__2::__split_buffer\2c\20std::__2::allocator>&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator>&\29 +2316:std::__2::__shared_count::__add_shared\5babi:v160004\5d\28\29 +2317:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +2318:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +2319:std::__2::__num_put_base::__format_int\28char*\2c\20char\20const*\2c\20bool\2c\20unsigned\20int\29 +2320:std::__2::__num_put_base::__format_float\28char*\2c\20char\20const*\2c\20unsigned\20int\29 +2321:std::__2::__itoa::__append8\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +2322: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 +2323: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 +2324:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float\2c\20double\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20double\29 +2325:sktext::gpu::VertexFiller::deviceRectAndCheckTransform\28SkMatrix\20const&\29\20const +2326:sktext::gpu::GlyphVector::packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29 +2327:sktext::SkStrikePromise::strike\28\29 +2328:skif::\28anonymous\20namespace\29::draw_tiled_border\28SkCanvas*\2c\20SkTileMode\2c\20SkPaint\20const&\2c\20skif::LayerSpace\20const&\2c\20skif::LayerSpace\2c\20skif::LayerSpace\29::$_1::operator\28\29\28SkPoint\20const&\2c\20SkPoint\20const&\29\20const +2329:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +2330:skif::LayerSpace::ceil\28\29\20const +2331:skif::LayerSpace\20skif::Mapping::paramToLayer\28skif::ParameterSpace\20const&\29\20const +2332:skif::LayerSpace::postConcat\28skif::LayerSpace\20const&\29 +2333:skif::LayerSpace::inverseMapRect\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29\20const +2334:skif::LayerSpace\20skif::Mapping::deviceToLayer\28skif::DeviceSpace\20const&\29\20const +2335:skif::FilterResult::subset\28skif::LayerSpace\20const&\2c\20skif::LayerSpace\20const&\2c\20bool\29\20const +2336:skif::FilterResult::getAnalyzedShaderView\28skif::Context\20const&\2c\20SkSamplingOptions\20const&\2c\20SkEnumBitMask\29\20const +2337:skif::FilterResult::applyTransform\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkSamplingOptions\20const&\29\20const +2338:skif::FilterResult::applyCrop\28skif::Context\20const&\2c\20skif::LayerSpace\20const&\2c\20SkTileMode\29\20const +2339:skif::FilterResult::analyzeBounds\28SkMatrix\20const&\2c\20SkIRect\20const&\2c\20skif::FilterResult::BoundsScope\29\20const +2340:skif::FilterResult::Builder::add\28skif::FilterResult\20const&\2c\20std::__2::optional>\2c\20SkEnumBitMask\2c\20SkSamplingOptions\20const&\29 +2341:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +2342:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +2343: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 +2344: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 +2345:skia_private::THashTable::Traits>::uncheckedSet\28long\20long&&\29 +2346:skia_private::THashTable::Traits>::uncheckedSet\28int&&\29 +2347:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::resize\28int\29 +2348:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::find\28unsigned\20int\20const&\29\20const +2349:skia_private::THashMap::find\28unsigned\20int\20const&\29\20const +2350:skia_private::THashMap::operator\5b\5d\28SkSL::Variable\20const*\20const&\29 +2351:skia_private::TArray::push_back_raw\28int\29 +2352:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +2353:skia_private::TArray>\2c\20true>::destroyAll\28\29 +2354:skia_private::TArray>\2c\20true>::push_back\28std::__2::unique_ptr>&&\29 +2355:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +2356:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +2357:skia_private::TArray::~TArray\28\29 +2358:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +2359:skia_private::TArray::~TArray\28\29 +2360:skia_private::TArray\2c\20true>::~TArray\28\29 +2361:skia_private::TArray::reserve_exact\28int\29 +2362:skia_private::TArray<\28anonymous\20namespace\29::MeshOp::Mesh\2c\20true>::preallocateNewData\28int\2c\20double\29 +2363:skia_private::TArray<\28anonymous\20namespace\29::MeshOp::Mesh\2c\20true>::installDataAndUpdateCapacity\28SkSpan\29 +2364:skia_private::TArray::clear\28\29 +2365:skia_private::TArray::operator=\28skia_private::TArray&&\29 +2366:skia_private::TArray::Allocate\28int\2c\20double\29 +2367:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +2368:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +2369:skia_private::TArray::push_back\28GrRenderTask*&&\29 +2370:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +2371:skia_private::AutoSTMalloc<4ul\2c\20SkFontArguments::Palette::Override\2c\20void>::AutoSTMalloc\28unsigned\20long\29 +2372:skia_private::AutoSTArray<24\2c\20unsigned\20int>::reset\28int\29 +2373:skia_png_zstream_error +2374:skia_png_read_data +2375:skia_png_get_int_32 +2376:skia_png_chunk_unknown_handling +2377:skia_png_calloc +2378:skia::textlayout::TextWrapper::getClustersTrimmedWidth\28\29 +2379:skia::textlayout::TextWrapper::TextStretch::startFrom\28skia::textlayout::Cluster*\2c\20unsigned\20long\29 +2380:skia::textlayout::TextWrapper::TextStretch::extend\28skia::textlayout::Cluster*\29 +2381: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 +2382:skia::textlayout::TextLine::isLastLine\28\29\20const +2383:skia::textlayout::Run::calculateHeight\28skia::textlayout::LineMetricStyle\2c\20skia::textlayout::LineMetricStyle\29\20const +2384:skia::textlayout::Run::Run\28skia::textlayout::Run\20const&\29 +2385:skia::textlayout::ParagraphImpl::getLineNumberAt\28unsigned\20long\29\20const +2386:skia::textlayout::ParagraphImpl::findPreviousGraphemeBoundary\28unsigned\20long\29\20const +2387:skia::textlayout::ParagraphCacheKey::~ParagraphCacheKey\28\29 +2388:skia::textlayout::ParagraphBuilderImpl::startStyledBlock\28\29 +2389:skia::textlayout::OneLineShaper::RunBlock&\20std::__2::vector>::emplace_back\28skia::textlayout::OneLineShaper::RunBlock&\29 +2390:skia::textlayout::OneLineShaper::FontKey::FontKey\28skia::textlayout::OneLineShaper::FontKey&&\29 +2391:skia::textlayout::InternalLineMetrics::updateLineMetrics\28skia::textlayout::InternalLineMetrics&\29 +2392:skia::textlayout::FontCollection::getFontManagerOrder\28\29\20const +2393:skia::textlayout::Decorations::calculateGaps\28skia::textlayout::TextLine::ClipContext\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\29 +2394:skia::textlayout::Cluster::runOrNull\28\29\20const +2395:skgpu::tess::PatchStride\28skgpu::tess::PatchAttribs\29 +2396:skgpu::tess::MiddleOutPolygonTriangulator::MiddleOutPolygonTriangulator\28int\2c\20SkPoint\29 +2397:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::fixedFunctionFlags\28\29\20const +2398:skgpu::ganesh::SurfaceFillContext::~SurfaceFillContext\28\29 +2399:skgpu::ganesh::SurfaceFillContext::replaceOpsTask\28\29 +2400:skgpu::ganesh::SurfaceDrawContext::fillPixelsWithLocalMatrix\28GrClip\20const*\2c\20GrPaint&&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\29 +2401:skgpu::ganesh::SurfaceDrawContext::drawShape\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20GrStyledShape&&\29 +2402:skgpu::ganesh::SurfaceDrawContext::drawPaint\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\29 +2403: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 +2404:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29 +2405:skgpu::ganesh::SurfaceContext::transferPixels\28GrColorType\2c\20SkIRect\20const&\29::$_0::$_0\28$_0&&\29 +2406:skgpu::ganesh::SurfaceContext::PixelTransferResult::operator=\28skgpu::ganesh::SurfaceContext::PixelTransferResult&&\29 +2407:skgpu::ganesh::SupportedTextureFormats\28GrImageContext\20const&\29::$_0::operator\28\29\28SkYUVAPixmapInfo::DataType\2c\20int\29\20const +2408:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +2409:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::coverageMode\28\29\20const +2410:skgpu::ganesh::PathInnerTriangulateOp::pushFanFillProgram\28GrTessellationShader::ProgramArgs\20const&\2c\20GrUserStencilSettings\20const*\29 +2411:skgpu::ganesh::OpsTask::deleteOps\28\29 +2412:skgpu::ganesh::OpsTask::OpChain::List::operator=\28skgpu::ganesh::OpsTask::OpChain::List&&\29 +2413: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 +2414:skgpu::ganesh::ClipStack::clipRect\28SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrAA\2c\20SkClipOp\29 +2415:skgpu::TClientMappedBufferManager::BufferFinishedMessage::BufferFinishedMessage\28skgpu::TClientMappedBufferManager::BufferFinishedMessage&&\29 +2416:skgpu::Swizzle::Concat\28skgpu::Swizzle\20const&\2c\20skgpu::Swizzle\20const&\29 +2417:skgpu::Swizzle::CToI\28char\29 +2418:sk_sp::reset\28SkMipmap*\29 +2419:sk_sp::~sk_sp\28\29 +2420:sk_sp::~sk_sp\28\29 +2421:sk_sp::~sk_sp\28\29 +2422:shr +2423:shl +2424:set_result_path\28SkPath*\2c\20SkPath\20const&\2c\20SkPathFillType\29 +2425:sect_with_horizontal\28SkPoint\20const*\2c\20float\29 +2426:roughly_between\28double\2c\20double\2c\20double\29 +2427:psh_calc_max_height +2428:ps_mask_set_bit +2429:ps_dimension_set_mask_bits +2430:ps_builder_check_points +2431:ps_builder_add_point +2432:png_colorspace_endpoints_match +2433:path_is_trivial\28SkPath\20const&\29::Trivializer::addTrivialContourPoint\28SkPoint\20const&\29 +2434:output_char\28hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +2435:operator!=\28SkRect\20const&\2c\20SkRect\20const&\29 +2436:nearly_equal\28double\2c\20double\29 +2437:mbrtowc +2438:mask_gamma_cache_mutex\28\29 +2439: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 +2440:lock.9170 +2441:lineMetrics_getEndIndex +2442:is_smooth_enough\28SkAnalyticEdge*\2c\20SkAnalyticEdge*\2c\20int\29 +2443:is_ICC_signature_char +2444:interpolate_local\28float\2c\20int\2c\20int\2c\20int\2c\20int\2c\20float*\2c\20float*\2c\20float*\29 +2445:int\20_hb_cmp_method>\28void\20const*\2c\20void\20const*\29 +2446:init_file_lock +2447:ilogbf +2448:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +2449:hb_vector_t\2c\20false>::fini\28\29 +2450:hb_unicode_funcs_t::compose\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +2451:hb_syllabic_insert_dotted_circles\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +2452:hb_shape_full +2453:hb_serialize_context_t::~hb_serialize_context_t\28\29 +2454:hb_serialize_context_t::hb_serialize_context_t\28void*\2c\20unsigned\20int\29 +2455:hb_serialize_context_t::end_serialize\28\29 +2456:hb_paint_funcs_t::push_scale\28void*\2c\20float\2c\20float\29 +2457:hb_paint_extents_context_t::paint\28\29 +2458:hb_ot_map_builder_t::disable_feature\28unsigned\20int\29 +2459: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 +2460:hb_lazy_loader_t\2c\20hb_face_t\2c\2012u\2c\20OT::vmtx_accelerator_t>::get_stored\28\29\20const +2461:hb_lazy_loader_t\2c\20hb_face_t\2c\2038u\2c\20OT::sbix_accelerator_t>::do_destroy\28OT::sbix_accelerator_t*\29 +2462:hb_lazy_loader_t\2c\20hb_face_t\2c\205u\2c\20OT::hmtx_accelerator_t>::do_destroy\28OT::hmtx_accelerator_t*\29 +2463:hb_lazy_loader_t\2c\20hb_face_t\2c\2016u\2c\20OT::cff1_accelerator_t>::get_stored\28\29\20const +2464:hb_lazy_loader_t\2c\20hb_face_t\2c\2025u\2c\20OT::GSUB_accelerator_t>::do_destroy\28OT::GSUB_accelerator_t*\29 +2465:hb_lazy_loader_t\2c\20hb_face_t\2c\2026u\2c\20OT::GPOS_accelerator_t>::get_stored\28\29\20const +2466:hb_lazy_loader_t\2c\20hb_face_t\2c\2034u\2c\20hb_blob_t>::get\28\29\20const +2467:hb_language_from_string +2468: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 +2469:hb_hashmap_t::add\28unsigned\20int\20const&\29 +2470:hb_hashmap_t::alloc\28unsigned\20int\29 +2471:hb_font_t::parent_scale_position\28int*\2c\20int*\29 +2472:hb_font_t::get_h_extents_with_fallback\28hb_font_extents_t*\29 +2473:hb_buffer_t::output_glyph\28unsigned\20int\29 +2474:hb_buffer_t::copy_glyph\28\29 +2475:hb_buffer_t::clear_positions\28\29 +2476:hb_bounds_t*\20hb_vector_t::push\28hb_bounds_t&&\29 +2477:hb_blob_create_sub_blob +2478:hb_blob_create +2479:get_cache\28\29 +2480:ftell +2481:ft_var_readpackedpoints +2482:ft_glyphslot_free_bitmap +2483:filter_to_gl_mag_filter\28SkFilterMode\29 +2484:extractMaskSubset\28SkMask\20const&\2c\20SkIRect\2c\20int\2c\20int\29 +2485:exp +2486:equal_ulps\28float\2c\20float\2c\20int\2c\20int\29 +2487: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 +2488:derivative_at_t\28double\20const*\2c\20double\29 +2489:crop_rect_edge\28SkRect\20const&\2c\20int\2c\20int\2c\20int\2c\20int\2c\20float*\2c\20float*\2c\20float*\2c\20float*\2c\20float*\29 +2490:cleanup_program\28GrGLGpu*\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +2491:clean_paint_for_drawVertices\28SkPaint\29 +2492:clean_paint_for_drawImage\28SkPaint\20const*\29 +2493:check_edge_against_rect\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkRect\20const&\2c\20SkPathFirstDirection\29 +2494:checkOnCurve\28float\2c\20float\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +2495:char*\20sktext::gpu::BagOfBytes::allocateBytesFor\28int\29::'lambda'\28\29::operator\28\29\28\29\20const +2496:cff_strcpy +2497:cff_size_get_globals_funcs +2498:cff_index_forget_element +2499:cf2_stack_setReal +2500:cf2_hint_init +2501:cf2_doStems +2502:cf2_doFlex +2503:calculate_path_gap\28float\2c\20float\2c\20SkPath\20const&\29::$_4::operator\28\29\28float\29\20const +2504:byn$mgfn-shared$tt_cmap6_get_info +2505:byn$mgfn-shared$tt_cmap13_get_info +2506:byn$mgfn-shared$std::__2::__time_get_c_storage::__c\28\29\20const +2507:byn$mgfn-shared$std::__2::__time_get_c_storage::__c\28\29\20const +2508:byn$mgfn-shared$std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +2509: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 +2510:byn$mgfn-shared$SkSL::Tracer::line\28int\29 +2511:byn$mgfn-shared$OT::PaintSkewAroundCenter::sanitize\28hb_sanitize_context_t*\29\20const +2512:buffer_verify_error\28hb_buffer_t*\2c\20hb_font_t*\2c\20char\20const*\2c\20...\29 +2513:bool\20hb_hashmap_t::has\28unsigned\20int\20const&\2c\20unsigned\20int**\29\20const +2514:bool\20hb_buffer_t::replace_glyphs\28unsigned\20int\2c\20unsigned\20int\2c\20OT::HBGlyphID16\20const*\29 +2515: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 +2516:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +2517:bool\20OT::OffsetTo>\2c\20OT::IntType\2c\20false>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +2518: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 +2519: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 +2520:blitClippedMask\28SkBlitter*\2c\20SkMask\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\29 +2521:approx_arc_length\28SkPoint\20const*\2c\20int\29 +2522:antifillrect\28SkIRect\20const&\2c\20SkBlitter*\29 +2523:afm_parser_read_int +2524:af_sort_pos +2525:af_latin_hints_compute_segments +2526:_hb_glyph_info_get_lig_num_comps\28hb_glyph_info_t\20const*\29 +2527:__wasi_syscall_ret +2528:__uselocale +2529:__math_xflow +2530:__cxxabiv1::__base_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +2531:\28anonymous\20namespace\29::make_vertices_spec\28bool\2c\20bool\29 +2532:\28anonymous\20namespace\29::TransformedMaskSubRun::~TransformedMaskSubRun\28\29 +2533:\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 +2534:\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 +2535:\28anonymous\20namespace\29::SkBlurImageFilter::kernelBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\2c\20bool\29\20const +2536:\28anonymous\20namespace\29::RunIteratorQueue::insert\28SkShaper::RunIterator*\2c\20int\29 +2537:\28anonymous\20namespace\29::RunIteratorQueue::CompareEntry\28\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\2c\20\28anonymous\20namespace\29::RunIteratorQueue::Entry\20const&\29 +2538:\28anonymous\20namespace\29::PathGeoBuilder::ensureSpace\28int\2c\20int\2c\20SkPoint\20const*\29 +2539:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMangledName\28char\20const*\29 +2540:\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 +2541:\28anonymous\20namespace\29::FillRectOpImpl::vertexSpec\28\29\20const +2542:\28anonymous\20namespace\29::CacheImpl::removeInternal\28\28anonymous\20namespace\29::CacheImpl::Value*\29 +2543:TT_Load_Context +2544:Skwasm::makeCurrent\28int\29 +2545:SkipCode +2546:SkYUVAPixmaps::~SkYUVAPixmaps\28\29 +2547:SkYUVAPixmaps::operator=\28SkYUVAPixmaps\20const&\29 +2548:SkYUVAPixmaps::SkYUVAPixmaps\28\29 +2549:SkWriter32::writeRRect\28SkRRect\20const&\29 +2550:SkWriter32::writeMatrix\28SkMatrix\20const&\29 +2551:SkWriter32::snapshotAsData\28\29\20const +2552:SkWBuffer::write\28void\20const*\2c\20unsigned\20long\29 +2553:SkVertices::approximateSize\28\29\20const +2554:SkTextBlobBuilder::~SkTextBlobBuilder\28\29 +2555:SkTextBlob::RunRecord::textBuffer\28\29\20const +2556:SkTextBlob::RunRecord::clusterBuffer\28\29\20const +2557:SkTextBlob::RunRecord::StorageSize\28unsigned\20int\2c\20unsigned\20int\2c\20SkTextBlob::GlyphPositioning\2c\20SkSafeMath*\29 +2558:SkTextBlob::RunRecord::Next\28SkTextBlob::RunRecord\20const*\29 +2559:SkTSpan::oppT\28double\29\20const +2560:SkTSpan::closestBoundedT\28SkDPoint\20const&\29\20const +2561:SkTSect::updateBounded\28SkTSpan*\2c\20SkTSpan*\2c\20SkTSpan*\29 +2562:SkTSect::trim\28SkTSpan*\2c\20SkTSect*\29 +2563:SkTSect::removeSpanRange\28SkTSpan*\2c\20SkTSpan*\29 +2564:SkTSect::removeCoincident\28SkTSpan*\2c\20bool\29 +2565:SkTSect::deleteEmptySpans\28\29 +2566:SkTInternalLList::Entry>::remove\28SkLRUCache::Entry*\29 +2567:SkTInternalLList>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry>::remove\28SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\29 +2568:SkTInternalLList>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry>::remove\28SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\29 +2569:SkTDStorage::insert\28int\2c\20int\2c\20void\20const*\29 +2570:SkTDStorage::insert\28int\29 +2571:SkTDStorage::erase\28int\2c\20int\29 +2572:SkTBlockList::pushItem\28\29 +2573:SkStrokeRec::applyToPath\28SkPath*\2c\20SkPath\20const&\29\20const +2574:SkString::set\28char\20const*\29 +2575:SkString::Rec::Make\28char\20const*\2c\20unsigned\20long\29 +2576:SkStrikeSpec::MakeCanonicalized\28SkFont\20const&\2c\20SkPaint\20const*\29 +2577:SkStrikeCache::GlobalStrikeCache\28\29 +2578:SkStrike::glyph\28SkPackedGlyphID\29 +2579:SkSpriteBlitter::~SkSpriteBlitter\28\29 +2580:SkShadowTessellator::MakeSpot\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkPoint3\20const&\2c\20float\2c\20bool\2c\20bool\29 +2581:SkShaders::MatrixRec::apply\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +2582:SkShaderBlurAlgorithm::renderBlur\28SkRuntimeShaderBuilder*\2c\20SkFilterMode\2c\20SkISize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const::$_0::operator\28\29\28SkIRect\20const&\29\20const +2583:SkShaderBase::appendRootStages\28SkStageRec\20const&\2c\20SkMatrix\20const&\29\20const +2584:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +2585:SkScalerContext_FreeType::emboldenIfNeeded\28FT_FaceRec_*\2c\20FT_GlyphSlotRec_*\2c\20unsigned\20short\29 +2586:SkScaleToSides::AdjustRadii\28double\2c\20double\2c\20float*\2c\20float*\29 +2587:SkSamplingOptions::operator!=\28SkSamplingOptions\20const&\29\20const +2588:SkSTArenaAlloc<3332ul>::SkSTArenaAlloc\28unsigned\20long\29 +2589:SkSTArenaAlloc<1024ul>::SkSTArenaAlloc\28unsigned\20long\29 +2590:SkSL::write_stringstream\28SkSL::StringStream\20const&\2c\20SkSL::OutputStream&\29 +2591: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 +2592:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29 +2593:SkSL::calculate_count\28double\2c\20double\2c\20double\2c\20bool\2c\20bool\29 +2594:SkSL::append_rtadjust_fixup_to_vertex_main\28SkSL::Context\20const&\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::Block&\29::AppendRTAdjustFixupHelper::Pos\28\29\20const +2595:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +2596: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 +2597:SkSL::Type::priority\28\29\20const +2598:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20double\2c\20SkSL::Position\29\20const +2599:SkSL::Transform::EliminateDeadFunctions\28SkSL::Program&\29::$_0::operator\28\29\28std::__2::unique_ptr>\20const&\29\20const +2600:SkSL::SymbolTable::lookup\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +2601:SkSL::SymbolTable::isType\28std::__2::basic_string_view>\29\20const +2602:SkSL::Swizzle::MaskString\28skia_private::FixedArray<4\2c\20signed\20char>\20const&\29 +2603:SkSL::RP::SlotManager::mapVariableToSlots\28SkSL::Variable\20const&\2c\20SkSL::RP::SlotRange\29 +2604:SkSL::RP::Program::appendStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkSL::RP::Callbacks*\2c\20SkSpan\29\20const::$_0::operator\28\29\28\29\20const +2605: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 +2606:SkSL::RP::Generator::store\28SkSL::RP::LValue&\29 +2607:SkSL::RP::Generator::popToSlotRangeUnmasked\28SkSL::RP::SlotRange\29 +2608:SkSL::RP::Generator::emitTraceScope\28int\29 +2609:SkSL::RP::DynamicIndexLValue::dynamicSlotRange\28\29 +2610:SkSL::RP::Builder::ternary_op\28SkSL::RP::BuilderOp\2c\20int\29 +2611:SkSL::RP::Builder::simplifyPopSlotsUnmasked\28SkSL::RP::SlotRange*\29 +2612:SkSL::RP::Builder::push_zeros\28int\29 +2613:SkSL::RP::Builder::push_loop_mask\28\29 +2614:SkSL::RP::Builder::pad_stack\28int\29 +2615:SkSL::RP::Builder::exchange_src\28\29 +2616:SkSL::ProgramVisitor::visit\28SkSL::Program\20const&\29 +2617:SkSL::ProgramUsage::remove\28SkSL::Statement\20const*\29 +2618:SkSL::PrefixExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29 +2619:SkSL::PipelineStage::PipelineStageCodeGenerator::typedVariable\28SkSL::Type\20const&\2c\20std::__2::basic_string_view>\29 +2620:SkSL::PipelineStage::PipelineStageCodeGenerator::typeName\28SkSL::Type\20const&\29 +2621:SkSL::Parser::parseInitializer\28SkSL::Position\2c\20std::__2::unique_ptr>*\29 +2622:SkSL::Parser::nextRawToken\28\29 +2623:SkSL::Parser::arrayType\28SkSL::Type\20const*\2c\20int\2c\20SkSL::Position\29 +2624:SkSL::Parser::AutoSymbolTable::AutoSymbolTable\28SkSL::Parser*\2c\20std::__2::unique_ptr>*\2c\20bool\29 +2625:SkSL::LiteralType::priority\28\29\20const +2626:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sub\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +2627:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_dot\28std::__2::array\20const&\29 +2628:SkSL::InterfaceBlock::arraySize\28\29\20const +2629:SkSL::GLSLCodeGenerator::writeExtension\28std::__2::basic_string_view>\2c\20bool\29 +2630:SkSL::FieldAccess::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20int\2c\20SkSL::FieldAccessOwnerKind\29 +2631:SkSL::DoStatement::~DoStatement\28\29 +2632:SkSL::ConstructorArray::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +2633:SkSL::Compiler::convertProgram\28SkSL::ProgramKind\2c\20std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::ProgramSettings\20const&\29 +2634:SkSL::Block::isEmpty\28\29\20const +2635:SkSL::Block::Make\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::unique_ptr>\29 +2636:SkSL::Block::MakeBlock\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::unique_ptr>\29 +2637:SkSL::Analysis::DetectVarDeclarationWithoutScope\28SkSL::Statement\20const&\2c\20SkSL::ErrorReporter*\29 +2638:SkRuntimeEffect::Result::~Result\28\29 +2639:SkResourceCache::remove\28SkResourceCache::Rec*\29 +2640:SkRegion::writeToMemory\28void*\29\20const +2641:SkRegion::getBoundaryPath\28SkPath*\29\20const +2642:SkRegion::SkRegion\28SkRegion\20const&\29 +2643:SkRect::set\28SkPoint\20const&\2c\20SkPoint\20const&\29 +2644:SkRect::offset\28SkPoint\20const&\29 +2645:SkRect::inset\28float\2c\20float\29 +2646:SkRect::center\28\29\20const +2647:SkRecords::Optional::~Optional\28\29 +2648:SkRecords::NoOp*\20SkRecord::replace\28int\29 +2649:SkReadBuffer::skip\28unsigned\20long\29 +2650:SkRasterPipeline_ConstantCtx*\20SkArenaAlloc::make\28SkRasterPipeline_ConstantCtx\20const&\29 +2651:SkRasterPipeline::tailPointer\28\29 +2652:SkRasterPipeline::appendMatrix\28SkArenaAlloc*\2c\20SkMatrix\20const&\29 +2653:SkRasterPipeline::addMemoryContext\28SkRasterPipeline_MemoryCtx*\2c\20int\2c\20bool\2c\20bool\29 +2654:SkRasterClip::SkRasterClip\28SkIRect\20const&\29 +2655:SkRRect::setOval\28SkRect\20const&\29 +2656:SkRRect::initializeRect\28SkRect\20const&\29 +2657:SkRRect::MakeRectXY\28SkRect\20const&\2c\20float\2c\20float\29 +2658:SkRGBA4f<\28SkAlphaType\293>::operator==\28SkRGBA4f<\28SkAlphaType\293>\20const&\29\20const +2659:SkQuads::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +2660:SkPixelRef::~SkPixelRef\28\29 +2661:SkPixelRef::SkPixelRef\28int\2c\20int\2c\20void*\2c\20unsigned\20long\29 +2662:SkPictureRecord::~SkPictureRecord\28\29 +2663:SkPictureRecord::recordRestoreOffsetPlaceholder\28\29 +2664:SkPathStroker::quadStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2665:SkPathStroker::preJoinTo\28SkPoint\20const&\2c\20SkPoint*\2c\20SkPoint*\2c\20bool\29 +2666:SkPathStroker::intersectRay\28SkQuadConstruct*\2c\20SkPathStroker::IntersectRayType\29\20const +2667:SkPathStroker::cubicStroke\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +2668:SkPathStroker::cubicPerpRay\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +2669:SkPathStroker::conicStroke\28SkConic\20const&\2c\20SkQuadConstruct*\29 +2670:SkPathRef::computeBounds\28\29\20const +2671:SkPathEdgeIter::SkPathEdgeIter\28SkPath\20const&\29 +2672:SkPathBuilder::incReserve\28int\2c\20int\29 +2673:SkPathBuilder::conicTo\28SkPoint\2c\20SkPoint\2c\20float\29 +2674:SkPath::rewind\28\29 +2675:SkPath::getPoint\28int\29\20const +2676:SkPath::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +2677:SkPaint::operator=\28SkPaint&&\29 +2678:SkPaint::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +2679:SkPaint::canComputeFastBounds\28\29\20const +2680:SkPaint::SkPaint\28SkPaint&&\29 +2681:SkOpSpanBase::mergeMatches\28SkOpSpanBase*\29 +2682:SkOpSpanBase::addOpp\28SkOpSpanBase*\29 +2683:SkOpSegment::updateOppWinding\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\29\20const +2684:SkOpSegment::subDivide\28SkOpSpanBase\20const*\2c\20SkOpSpanBase\20const*\2c\20SkDCurve*\29\20const +2685:SkOpSegment::setUpWindings\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int*\2c\20int*\2c\20int*\2c\20int*\2c\20int*\2c\20int*\29 +2686:SkOpSegment::nextChase\28SkOpSpanBase**\2c\20int*\2c\20SkOpSpan**\2c\20SkOpSpanBase**\29\20const +2687:SkOpSegment::markAndChaseDone\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpSpanBase**\29 +2688:SkOpSegment::isSimple\28SkOpSpanBase**\2c\20int*\29\20const +2689:SkOpSegment::init\28SkPoint*\2c\20float\2c\20SkOpContour*\2c\20SkPath::Verb\29 +2690:SkOpEdgeBuilder::complete\28\29 +2691:SkOpContour::appendSegment\28\29 +2692:SkOpCoincidence::overlap\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20double*\2c\20double*\29\20const +2693:SkOpCoincidence::add\28SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\2c\20SkOpPtT*\29 +2694:SkOpCoincidence::addIfMissing\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20double\2c\20double\2c\20SkOpSegment*\2c\20SkOpSegment*\2c\20bool*\29 +2695:SkOpCoincidence::addExpanded\28\29 +2696:SkOpCoincidence::addEndMovedSpans\28SkOpPtT\20const*\29 +2697:SkOpCoincidence::TRange\28SkOpPtT\20const*\2c\20double\2c\20SkOpSegment\20const*\29 +2698:SkOpAngle::set\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +2699:SkOpAngle::loopCount\28\29\20const +2700:SkOpAngle::insert\28SkOpAngle*\29 +2701:SkOpAngle*\20SkArenaAlloc::make\28\29 +2702:SkNoPixelsDevice::ClipState::op\28SkClipOp\2c\20SkM44\20const&\2c\20SkRect\20const&\2c\20bool\2c\20bool\29 +2703:SkMipmap*\20SkSafeRef\28SkMipmap*\29 +2704:SkMeshSpecification::Varying::Varying\28SkMeshSpecification::Varying\20const&\29 +2705:SkMatrixPriv::DifferentialAreaScale\28SkMatrix\20const&\2c\20SkPoint\20const&\29 +2706:SkMatrix::setRotate\28float\29 +2707:SkMatrix::mapVectors\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29\20const +2708:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint\20const*\2c\20int\29\20const +2709:SkMaskFilterBase::getFlattenableType\28\29\20const +2710:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29 +2711:SkM44::setConcat\28SkM44\20const&\2c\20SkM44\20const&\29::$_0::operator\28\29\28skvx::Vec<4\2c\20float>\29\20const +2712:SkM44::normalizePerspective\28\29 +2713:SkLineClipper::IntersectLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\29 +2714:SkJSONWriter::scope\28\29\20const +2715:SkImage_Ganesh::makeView\28GrRecordingContext*\29\20const +2716:SkImage_Base::~SkImage_Base\28\29 +2717:SkImage_Base::isGaneshBacked\28\29\20const +2718:SkImage_Base::SkImage_Base\28SkImageInfo\20const&\2c\20unsigned\20int\29 +2719:SkImageInfo::validRowBytes\28unsigned\20long\29\20const +2720:SkImageInfo::MakeUnknown\28int\2c\20int\29 +2721:SkImageGenerator::~SkImageGenerator\28\29 +2722:SkImageFilters::Crop\28SkRect\20const&\2c\20SkTileMode\2c\20sk_sp\29 +2723:SkImageFilter_Base::~SkImageFilter_Base\28\29 +2724:SkImage::makeRasterImage\28GrDirectContext*\2c\20SkImage::CachingHint\29\20const +2725:SkIRect::makeInset\28int\2c\20int\29\20const +2726:SkHalfToFloat\28unsigned\20short\29 +2727:SkGradientBaseShader::commonAsAGradient\28SkShaderBase::GradientInfo*\29\20const +2728:SkGradientBaseShader::ValidGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20int\2c\20SkTileMode\2c\20SkGradientShader::Interpolation\20const&\29 +2729:SkGradientBaseShader::SkGradientBaseShader\28SkGradientBaseShader::Descriptor\20const&\2c\20SkMatrix\20const&\29 +2730:SkGradientBaseShader::MakeDegenerateGradient\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20float\20const*\2c\20int\2c\20sk_sp\2c\20SkTileMode\29 +2731:SkGlyph::setPath\28SkArenaAlloc*\2c\20SkPath\20const*\2c\20bool\29 +2732:SkGetPolygonWinding\28SkPoint\20const*\2c\20int\29 +2733:SkFontMgr::RefEmpty\28\29 +2734:SkFont::setTypeface\28sk_sp\29 +2735:SkEmptyFontMgr::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +2736:SkEdgeBuilder::~SkEdgeBuilder\28\29 +2737:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29 +2738:SkDrawable::draw\28SkCanvas*\2c\20SkMatrix\20const*\29 +2739:SkDrawBase::drawPathCoverage\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkBlitter*\29\20const +2740:SkDevice::~SkDevice\28\29 +2741:SkDevice::scalerContextFlags\28\29\20const +2742:SkDevice::accessPixels\28SkPixmap*\29 +2743:SkData::MakeWithProc\28void\20const*\2c\20unsigned\20long\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +2744:SkDQuad::dxdyAtT\28double\29\20const +2745:SkDQuad::RootsReal\28double\2c\20double\2c\20double\2c\20double*\29 +2746:SkDPoint::distance\28SkDPoint\20const&\29\20const +2747:SkDLine::NearPointV\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +2748:SkDLine::NearPointH\28SkDPoint\20const&\2c\20double\2c\20double\2c\20double\29 +2749:SkDCubic::dxdyAtT\28double\29\20const +2750:SkDCubic::RootsValidT\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +2751:SkDConic::dxdyAtT\28double\29\20const +2752:SkConicalGradient::~SkConicalGradient\28\29 +2753:SkComputeRadialSteps\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float*\2c\20float*\2c\20int*\29 +2754:SkColorSpace::serialize\28\29\20const +2755:SkColorFilterPriv::MakeGaussian\28\29 +2756:SkColorFilter::filterColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkColorSpace*\2c\20SkColorSpace*\29\20const +2757:SkColorConverter::SkColorConverter\28unsigned\20int\20const*\2c\20int\29 +2758:SkCoincidentSpans::correctOneEnd\28SkOpPtT\20const*\20\28SkCoincidentSpans::*\29\28\29\20const\2c\20void\20\28SkCoincidentSpans::*\29\28SkOpPtT\20const*\29\29 +2759:SkClosestRecord::findEnd\28SkTSpan\20const*\2c\20SkTSpan\20const*\2c\20int\2c\20int\29 +2760:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\20const*\2c\20int\29 +2761:SkChopCubicAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +2762:SkCanvas::init\28sk_sp\29 +2763:SkCanvas::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +2764:SkCanvas::concat\28SkM44\20const&\29 +2765:SkCanvas::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +2766:SkCachedData::detachFromCacheAndUnref\28\29\20const +2767:SkCachedData::attachToCacheAndRef\28\29\20const +2768:SkBitmap::pixelRefOrigin\28\29\20const +2769:SkBitmap::operator=\28SkBitmap&&\29 +2770:SkBitmap::notifyPixelsChanged\28\29\20const +2771:SkBitmap::extractSubset\28SkBitmap*\2c\20SkIRect\20const&\29\20const +2772:SkBinaryWriteBuffer::writeByteArray\28void\20const*\2c\20unsigned\20long\29 +2773:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29 +2774:SkAutoPixmapStorage::tryAlloc\28SkImageInfo\20const&\29 +2775:SkAutoBlitterChoose::SkAutoBlitterChoose\28SkDrawBase\20const&\2c\20SkMatrix\20const*\2c\20SkPaint\20const&\2c\20bool\29 +2776:SkArenaAllocWithReset::SkArenaAllocWithReset\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +2777:SkAAClip::setPath\28SkPath\20const&\2c\20SkIRect\20const&\2c\20bool\29 +2778:SkAAClip::quickContains\28SkIRect\20const&\29\20const +2779:SkAAClip::op\28SkAAClip\20const&\2c\20SkClipOp\29 +2780:SkAAClip::Builder::flushRowH\28SkAAClip::Builder::Row*\29 +2781:SkAAClip::Builder::Blitter::checkForYGap\28int\29 +2782:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29 +2783:OT::post::accelerator_t::find_glyph_name\28unsigned\20int\29\20const +2784:OT::hb_ot_layout_lookup_accelerator_t::apply\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20bool\29\20const +2785:OT::hb_ot_apply_context_t::skipping_iterator_t::match\28hb_glyph_info_t&\29 +2786:OT::hb_ot_apply_context_t::_set_glyph_class\28unsigned\20int\2c\20unsigned\20int\2c\20bool\2c\20bool\29 +2787:OT::glyf_accelerator_t::glyph_for_gid\28unsigned\20int\2c\20bool\29\20const +2788:OT::cff1::accelerator_templ_t>::std_code_to_glyph\28unsigned\20int\29\20const +2789: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 +2790:OT::VariationStore::create_cache\28\29\20const +2791:OT::VarRegionList::evaluate\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20float*\29\20const +2792:OT::Lookup::get_props\28\29\20const +2793:OT::Layout::GSUB_impl::SubstLookup*\20hb_serialize_context_t::copy\28\29\20const +2794:OT::Layout::GPOS_impl::ValueFormat::get_device\28OT::IntType\20const*\2c\20bool*\2c\20void\20const*\2c\20hb_sanitize_context_t&\29 +2795:OT::Layout::GPOS_impl::Anchor::get_anchor\28OT::hb_ot_apply_context_t*\2c\20unsigned\20int\2c\20float*\2c\20float*\29\20const +2796:OT::IntType*\20hb_serialize_context_t::extend_min>\28OT::IntType*\29 +2797:OT::GSUBGPOS::get_script\28unsigned\20int\29\20const +2798:OT::GSUBGPOS::get_feature_tag\28unsigned\20int\29\20const +2799:OT::GSUBGPOS::find_script_index\28unsigned\20int\2c\20unsigned\20int*\29\20const +2800:OT::ArrayOf>*\20hb_serialize_context_t::extend_size>>\28OT::ArrayOf>*\2c\20unsigned\20long\2c\20bool\29 +2801:Move_Zp2_Point +2802:Modify_CVT_Check +2803:GrYUVATextureProxies::operator=\28GrYUVATextureProxies&&\29 +2804:GrYUVATextureProxies::GrYUVATextureProxies\28\29 +2805:GrXPFactory::FromBlendMode\28SkBlendMode\29 +2806:GrWindowRectangles::operator=\28GrWindowRectangles\20const&\29 +2807:GrTriangulator::~GrTriangulator\28\29 +2808:GrTriangulator::simplify\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +2809:GrTriangulator::setTop\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2810:GrTriangulator::mergeCollinearEdges\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +2811:GrTriangulator::mergeCoincidentVertices\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29\20const +2812:GrTriangulator::emitTriangle\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20int\2c\20skgpu::VertexWriter\29\20const +2813:GrTriangulator::allocateEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20int\2c\20GrTriangulator::EdgeType\29 +2814:GrTriangulator::FindEnclosingEdges\28GrTriangulator::Vertex\20const&\2c\20GrTriangulator::EdgeList\20const&\2c\20GrTriangulator::Edge**\2c\20GrTriangulator::Edge**\29 +2815:GrTriangulator::Edge::dist\28SkPoint\20const&\29\20const +2816:GrTriangulator::Edge::Edge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20int\2c\20GrTriangulator::EdgeType\29 +2817:GrThreadSafeCache::remove\28skgpu::UniqueKey\20const&\29 +2818:GrThreadSafeCache::internalFind\28skgpu::UniqueKey\20const&\29 +2819:GrThreadSafeCache::internalAdd\28skgpu::UniqueKey\20const&\2c\20GrSurfaceProxyView\20const&\29 +2820:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +2821:GrTextureEffect::Sampling::Sampling\28GrSurfaceProxy\20const&\2c\20GrSamplerState\2c\20SkRect\20const&\2c\20SkRect\20const*\2c\20float\20const*\2c\20bool\2c\20GrCaps\20const&\2c\20SkPoint\29 +2822:GrTessellationShader::MakePipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedClip&&\2c\20GrProcessorSet&&\29 +2823:GrSurfaceProxyView::operator!=\28GrSurfaceProxyView\20const&\29\20const +2824:GrSurfaceProxyView::concatSwizzle\28skgpu::Swizzle\29 +2825:GrSurfaceProxy::~GrSurfaceProxy\28\29 +2826:GrSurfaceProxy::isFunctionallyExact\28\29\20const +2827:GrSurfaceProxy::gpuMemorySize\28\29\20const +2828:GrSurfaceProxy::createSurfaceImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\29\20const +2829: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 +2830: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 +2831:GrStyledShape::hasUnstyledKey\28\29\20const +2832:GrStyledShape::GrStyledShape\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +2833:GrStyle::GrStyle\28GrStyle\20const&\29 +2834:GrSkSLFP::setInput\28std::__2::unique_ptr>\29 +2835:GrSimpleMeshDrawOpHelper::CreatePipeline\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20skgpu::Swizzle\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrProcessorSet&&\2c\20GrPipeline::InputFlags\29 +2836:GrSimpleMesh::set\28sk_sp\2c\20int\2c\20int\29 +2837:GrShape::simplifyRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\2c\20unsigned\20int\29 +2838:GrShape::simplifyRRect\28SkRRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\2c\20unsigned\20int\29 +2839:GrShape::simplifyPoint\28SkPoint\20const&\2c\20unsigned\20int\29 +2840:GrShape::simplifyLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\29 +2841:GrShape::setInverted\28bool\29 +2842:GrSWMaskHelper::init\28SkIRect\20const&\29 +2843:GrSWMaskHelper::GrSWMaskHelper\28SkAutoPixmapStorage*\29 +2844:GrResourceProvider::refNonAAQuadIndexBuffer\28\29 +2845:GrRenderTask::addTarget\28GrDrawingManager*\2c\20sk_sp\29 +2846:GrRenderTarget::~GrRenderTarget\28\29 +2847:GrQuadUtils::WillUseHairline\28GrQuad\20const&\2c\20GrAAType\2c\20GrQuadAAFlags\29 +2848:GrQuadBuffer<\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA>::unpackQuad\28GrQuad::Type\2c\20float\20const*\2c\20GrQuad*\29\20const +2849:GrQuadBuffer<\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA>::MetadataIter::next\28\29 +2850:GrProxyProvider::processInvalidUniqueKey\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\29 +2851:GrProxyProvider::createMippedProxyFromBitmap\28SkBitmap\20const&\2c\20skgpu::Budgeted\29::$_0::~$_0\28\29 +2852: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 +2853:GrPipeline::visitProxies\28std::__2::function\20const&\29\20const +2854:GrPipeline::getFragmentProcessor\28int\29\20const +2855:GrPathUtils::scaleToleranceToSrc\28float\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +2856:GrPathUtils::cubicPointCount\28SkPoint\20const*\2c\20float\29 +2857:GrPaint::GrPaint\28GrPaint\20const&\29 +2858:GrOpsRenderPass::prepareToDraw\28\29 +2859:GrOpFlushState::~GrOpFlushState\28\29 +2860:GrOpFlushState::drawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +2861:GrOpFlushState::bindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const&\2c\20GrPipeline\20const&\29 +2862:GrOp::uniqueID\28\29\20const +2863:GrNativeRect::MakeIRectRelativeTo\28GrSurfaceOrigin\2c\20int\2c\20SkIRect\29 +2864:GrMeshDrawOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +2865:GrMapRectPoints\28SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkPoint*\2c\20int\29 +2866:GrMakeKeyFromImageID\28skgpu::UniqueKey*\2c\20unsigned\20int\2c\20SkIRect\20const&\29 +2867:GrGradientShader::MakeGradientFP\28SkGradientBaseShader\20const&\2c\20GrFPArgs\20const&\2c\20SkShaders::MatrixRec\20const&\2c\20std::__2::unique_ptr>\2c\20SkMatrix\20const*\29 +2868:GrGpuResource::setUniqueKey\28skgpu::UniqueKey\20const&\29 +2869:GrGpuResource::registerWithCache\28skgpu::Budgeted\29 +2870:GrGpu::writePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +2871:GrGpu::submitToGpu\28GrSyncCpu\29 +2872:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +2873:GrGLTexture::onSetLabel\28\29 +2874:GrGLTexture::onAbandon\28\29 +2875:GrGLTexture::backendFormat\28\29\20const +2876:GrGLSLVaryingHandler::appendDecls\28SkTBlockList\20const&\2c\20SkString*\29\20const +2877:GrGLSLShaderBuilder::newTmpVarName\28char\20const*\29 +2878:GrGLSLShaderBuilder::definitionAppend\28char\20const*\29 +2879:GrGLSLProgramBuilder::invokeFP\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +2880:GrGLSLProgramBuilder::advanceStage\28\29 +2881:GrGLSLFragmentShaderBuilder::dstColor\28\29 +2882:GrGLRenderTarget::bindInternal\28unsigned\20int\2c\20bool\29 +2883:GrGLGpu::unbindXferBuffer\28GrGpuBufferType\29 +2884:GrGLGpu::resolveRenderFBOs\28GrGLRenderTarget*\2c\20SkIRect\20const&\2c\20GrGLRenderTarget::ResolveDirection\2c\20bool\29 +2885:GrGLGpu::flushBlendAndColorWrite\28skgpu::BlendInfo\20const&\2c\20skgpu::Swizzle\20const&\29 +2886:GrGLGpu::currentProgram\28\29 +2887:GrGLGpu::SamplerObjectCache::Sampler::~Sampler\28\29 +2888:GrGLGpu::HWVertexArrayState::setVertexArrayID\28GrGLGpu*\2c\20unsigned\20int\29 +2889:GrGLGetVersionFromString\28char\20const*\29 +2890:GrGLFunction::GrGLFunction\28void\20\28*\29\28unsigned\20int\29\29::'lambda'\28void\20const*\2c\20unsigned\20int\29::__invoke\28void\20const*\2c\20unsigned\20int\29 +2891: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 +2892:GrGLFinishCallbacks::callAll\28bool\29 +2893: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 +2894:GrGLAttribArrayState::set\28GrGLGpu*\2c\20int\2c\20GrBuffer\20const*\2c\20GrVertexAttribType\2c\20SkSLType\2c\20int\2c\20unsigned\20long\2c\20int\29 +2895:GrFragmentProcessors::Make\28SkBlenderBase\20const*\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20GrFPArgs\20const&\29 +2896:GrFragmentProcessor::isEqual\28GrFragmentProcessor\20const&\29\20const +2897:GrFragmentProcessor::Rect\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRect\29 +2898:GrFragmentProcessor::ModulateRGBA\28std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +2899:GrDstProxyView::setProxyView\28GrSurfaceProxyView\29 +2900:GrDrawingManager::getPathRenderer\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\2c\20bool\2c\20skgpu::ganesh::PathRendererChain::DrawType\2c\20skgpu::ganesh::PathRenderer::StencilSupport*\29 +2901:GrDrawingManager::getLastRenderTask\28GrSurfaceProxy\20const*\29\20const +2902:GrDrawOpAtlas::updatePlot\28GrDeferredUploadTarget*\2c\20skgpu::AtlasLocator*\2c\20skgpu::Plot*\29::'lambda'\28std::__2::function&\29::\28'lambda'\28std::__2::function&\29\20const&\29 +2903:GrDrawOpAtlas::processEvictionAndResetRects\28skgpu::Plot*\29 +2904:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29 +2905:GrDeferredProxyUploader::wait\28\29 +2906:GrCpuBuffer::Make\28unsigned\20long\29 +2907:GrContext_Base::~GrContext_Base\28\29 +2908:GrColorSpaceXform::Make\28SkColorSpace*\2c\20SkAlphaType\2c\20SkColorSpace*\2c\20SkAlphaType\29 +2909:GrColorInfo::operator=\28GrColorInfo\20const&\29 +2910:GrClip::IsPixelAligned\28SkRect\20const&\29 +2911:GrClip::GetPixelIBounds\28SkRect\20const&\2c\20GrAA\2c\20GrClip::BoundsType\29::'lambda0'\28float\29::operator\28\29\28float\29\20const +2912:GrClip::GetPixelIBounds\28SkRect\20const&\2c\20GrAA\2c\20GrClip::BoundsType\29::'lambda'\28float\29::operator\28\29\28float\29\20const +2913:GrCaps::supportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +2914:GrCaps::getFallbackColorTypeAndFormat\28GrColorType\2c\20int\29\20const +2915:GrCaps::areColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +2916:GrBufferAllocPool::~GrBufferAllocPool\28\29.1 +2917:GrBufferAllocPool::makeSpace\28unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\29 +2918:GrBufferAllocPool::GrBufferAllocPool\28GrGpu*\2c\20GrGpuBufferType\2c\20sk_sp\29 +2919:GrBlurUtils::DrawShapeWithMaskFilter\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\29 +2920:GrBaseContextPriv::getShaderErrorHandler\28\29\20const +2921:GrBackendTexture::GrBackendTexture\28GrBackendTexture\20const&\29 +2922:GrBackendRenderTarget::getBackendFormat\28\29\20const +2923:GrAAConvexTessellator::createOuterRing\28GrAAConvexTessellator::Ring\20const&\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring*\29 +2924:GrAAConvexTessellator::createInsetRings\28GrAAConvexTessellator::Ring&\2c\20float\2c\20float\2c\20float\2c\20float\2c\20GrAAConvexTessellator::Ring**\29 +2925:GrAAConvexTessellator::Ring::init\28GrAAConvexTessellator\20const&\29 +2926:FwDCubicEvaluator::FwDCubicEvaluator\28SkPoint\20const*\29 +2927:FT_Stream_ReadAt +2928:FT_Set_Charmap +2929:FT_New_Size +2930:FT_Load_Sfnt_Table +2931:FT_List_Find +2932:FT_GlyphLoader_Add +2933:FT_Get_Next_Char +2934:FT_Get_Color_Glyph_Layer +2935:FT_Done_Face +2936:FT_CMap_New +2937:Current_Ratio +2938:Compute_Funcs +2939:CircleOp::Circle&\20skia_private::TArray::emplace_back\28CircleOp::Circle&&\29 +2940: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 +2941: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 +2942: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 +2943: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 +2944:CFF::parsed_values_t::operator=\28CFF::parsed_values_t&&\29 +2945:CFF::cs_interp_env_t>>::return_from_subr\28\29 +2946:CFF::cs_interp_env_t>>::in_error\28\29\20const +2947:CFF::cs_interp_env_t>>::call_subr\28CFF::biased_subrs_t>>\20const&\2c\20CFF::cs_type_t\29 +2948:CFF::cs_interp_env_t>>::call_subr\28CFF::biased_subrs_t>>\20const&\2c\20CFF::cs_type_t\29 +2949:CFF::byte_str_ref_t::operator\5b\5d\28int\29 +2950:CFF::arg_stack_t::push_fixed_from_substr\28CFF::byte_str_ref_t&\29 +2951:CFF::CFFIndex>::sanitize\28hb_sanitize_context_t*\29\20const +2952:CFF::CFFIndex>::operator\5b\5d\28unsigned\20int\29\20const +2953:CFF::CFFIndex>::offset_at\28unsigned\20int\29\20const +2954:AlmostLessOrEqualUlps\28float\2c\20float\29 +2955:AlmostEqualUlps_Pin\28double\2c\20double\29 +2956:ActiveEdge::intersect\28ActiveEdge\20const*\29 +2957:AAT::Lookup::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +2958:AAT::ClassTable>::get_class\28unsigned\20int\2c\20unsigned\20int\29\20const +2959:wcrtomb +2960:void\20std::__2::vector>::__construct_at_end\28unsigned\20long*\2c\20unsigned\20long*\2c\20unsigned\20long\29 +2961:void\20std::__2::vector>::__construct_at_end\28skia::textlayout::FontFeature*\2c\20skia::textlayout::FontFeature*\2c\20unsigned\20long\29 +2962:void\20std::__2::vector>::__construct_at_end\28SkString*\2c\20SkString*\2c\20unsigned\20long\29 +2963: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 +2964: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 +2965: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 +2966: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 +2967:void\20skgpu::ganesh::SurfaceFillContext::clear<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\20const&\29 +2968:void\20skgpu::VertexWriter::writeQuad\28GrQuad\20const&\29 +2969:void\20merge_sort<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +2970:void\20merge_sort<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\29 +2971: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 +2972:void\20SkSafeUnref\28sktext::gpu::TextStrike*\29 +2973:void\20SkSafeUnref\28SkMeshSpecification*\29 +2974:void\20SkSafeUnref\28SkMeshPriv::VB\20const*\29 +2975:void\20SkSafeUnref\28GrTexture*\29\20\28.4431\29 +2976:void\20SkSafeUnref\28GrCpuBuffer*\29 +2977:vfprintf +2978:valid_args\28SkImageInfo\20const&\2c\20unsigned\20long\2c\20unsigned\20long*\29 +2979:uprv_malloc_skia +2980:update_offset_to_base\28char\20const*\2c\20long\29 +2981: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 +2982:unsigned\20long\20const&\20std::__2::min\5babi:v160004\5d\28unsigned\20long\20const&\2c\20unsigned\20long\20const&\29 +2983: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 +2984: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 +2985: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 +2986: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 +2987: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 +2988: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 +2989:ubidi_getRuns_skia +2990:u_charMirror_skia +2991:tt_size_reset +2992:tt_sbit_decoder_load_metrics +2993:tt_glyphzone_done +2994:tt_face_get_location +2995:tt_face_find_bdf_prop +2996:tt_delta_interpolate +2997:tt_cmap14_find_variant +2998:tt_cmap14_char_map_nondef_binary +2999:tt_cmap14_char_map_def_binary +3000:top12.2 +3001:tolower +3002:t1_cmap_unicode_done +3003:subdivide_cubic_to\28SkPath*\2c\20SkPoint\20const*\2c\20int\29 +3004:strtox +3005:strtoull_l +3006:std::logic_error::~logic_error\28\29.1 +3007:std::__2::vector>::__destroy_vector::operator\28\29\5babi:v160004\5d\28\29 +3008:std::__2::vector>\2c\20std::__2::allocator>>>::erase\28std::__2::__wrap_iter>\20const*>\2c\20std::__2::__wrap_iter>\20const*>\29 +3009:std::__2::vector>::__alloc\5babi:v160004\5d\28\29 +3010:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +3011:std::__2::vector>::vector\28std::__2::vector>\20const&\29 +3012:std::__2::vector\2c\20std::__2::allocator>>::vector\5babi:v160004\5d\28std::__2::vector\2c\20std::__2::allocator>>&&\29 +3013:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +3014:std::__2::vector>::vector\28std::__2::vector>\20const&\29 +3015:std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +3016:std::__2::vector>::push_back\5babi:v160004\5d\28SkString\20const&\29 +3017:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +3018:std::__2::vector\2c\20std::__2::allocator>>::push_back\5babi:v160004\5d\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +3019:std::__2::vector\2c\20std::__2::allocator>>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +3020:std::__2::vector>::push_back\5babi:v160004\5d\28SkMeshSpecification::Attribute&&\29 +3021:std::__2::unique_ptr\2c\20void*>\2c\20std::__2::__hash_node_destructor\2c\20void*>>>>::~unique_ptr\5babi:v160004\5d\28\29 +3022: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 +3023: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 +3024: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 +3025: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 +3026: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 +3027:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3028:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3029:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkTypeface_FreeType::FaceRec*\29 +3030:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkStrikeSpec*\29 +3031:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3032:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3033:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::Pool*\29 +3034:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::Block*\29 +3035:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkDrawableList*\29 +3036:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3037:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkContourMeasureIter::Impl*\29 +3038:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3039:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3040:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3041:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrGLGpu::SamplerObjectCache*\29 +3042:std::__2::unique_ptr>\20GrBlendFragmentProcessor::Make<\28SkBlendMode\296>\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +3043:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrDrawingManager*\29 +3044:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrClientMappedBufferManager*\29 +3045:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3046:std::__2::unique_ptr>::reset\5babi:v160004\5d\28FT_FaceRec_*\29 +3047:std::__2::tuple&\20std::__2::tuple::operator=\5babi:v160004\5d\28std::__2::pair&&\29 +3048:std::__2::time_put>>::~time_put\28\29 +3049:std::__2::pair\20std::__2::minmax\5babi:v160004\5d>\28std::initializer_list\2c\20std::__2::__less\29 +3050:std::__2::pair\20std::__2::__copy_trivial::operator\28\29\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +3051:std::__2::locale::locale\28\29 +3052:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\29 +3053:std::__2::ios_base::~ios_base\28\29 +3054: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 +3055:std::__2::function\2c\20float*\29>::operator\28\29\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29\20const +3056:std::__2::fpos<__mbstate_t>::fpos\5babi:v160004\5d\28long\20long\29 +3057:std::__2::enable_if::value\2c\20SkRuntimeEffectBuilder::BuilderUniform&>::type\20SkRuntimeEffectBuilder::BuilderUniform::operator=\28SkV2\20const&\29 +3058: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 +3059:std::__2::deque>::__back_spare\5babi:v160004\5d\28\29\20const +3060: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 +3061:std::__2::chrono::__libcpp_steady_clock_now\28\29 +3062:std::__2::char_traits::move\28char*\2c\20char\20const*\2c\20unsigned\20long\29 +3063:std::__2::char_traits::assign\28char*\2c\20unsigned\20long\2c\20char\29 +3064:std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +3065:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29 +3066:std::__2::basic_string\2c\20std::__2::allocator>::push_back\28wchar_t\29 +3067:std::__2::basic_string\2c\20std::__2::allocator>::capacity\5babi:v160004\5d\28\29\20const +3068:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28wchar_t\20const*\29 +3069:std::__2::basic_string\2c\20std::__2::allocator>::pop_back\5babi:v160004\5d\28\29 +3070: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 +3071:std::__2::basic_string\2c\20std::__2::allocator>::__make_iterator\5babi:v160004\5d\28char*\29 +3072: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 +3073:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +3074:std::__2::basic_streambuf>::~basic_streambuf\28\29 +3075:std::__2::basic_streambuf>::setp\5babi:v160004\5d\28char*\2c\20char*\29 +3076:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +3077:std::__2::basic_istream>::~basic_istream\28\29 +3078:std::__2::basic_istream>::sentry::sentry\28std::__2::basic_istream>&\2c\20bool\29 +3079:std::__2::basic_iostream>::~basic_iostream\28\29.1 +3080:std::__2::basic_ios>::~basic_ios\28\29 +3081:std::__2::array\20skgpu::ganesh::SurfaceFillContext::adjustColorAlphaType<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\29\20const +3082:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3083:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +3084:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +3085:std::__2::__wrap_iter::operator+\5babi:v160004\5d\28long\29\20const +3086:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28GrRecordingContext*&&\2c\20GrSurfaceProxyView&&\2c\20GrSurfaceProxyView&&\2c\20GrColorInfo\20const&\29 +3087:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28GrRecordingContext*&\2c\20skgpu::ganesh::PathRendererChain::Options&\29 +3088:std::__2::__unique_if>::__unique_single\20std::__2::make_unique\5babi:v160004\5d\2c\20GrDirectContext::DirectContextID>\28GrDirectContext::DirectContextID&&\29 +3089:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::SymbolTable*&\2c\20bool&\29 +3090:std::__2::__tuple_impl\2c\20GrSurfaceProxyView\2c\20sk_sp>::~__tuple_impl\28\29 +3091:std::__2::__split_buffer&>::~__split_buffer\28\29 +3092:std::__2::__optional_destruct_base>\2c\20false>::~__optional_destruct_base\5babi:v160004\5d\28\29 +3093:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +3094:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +3095:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +3096:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +3097:std::__2::__optional_copy_base::__optional_copy_base\5babi:v160004\5d\28std::__2::__optional_copy_base\20const&\29 +3098:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20wchar_t*\2c\20wchar_t&\2c\20wchar_t&\29 +3099: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 +3100:std::__2::__num_get::__stage2_float_prep\28std::__2::ios_base&\2c\20char*\2c\20char&\2c\20char&\29 +3101: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 +3102:std::__2::__murmur2_or_cityhash::operator\28\29\28void\20const*\2c\20unsigned\20long\29 +3103:std::__2::__libcpp_wcrtomb_l\5babi:v160004\5d\28char*\2c\20wchar_t\2c\20__mbstate_t*\2c\20__locale_struct*\29 +3104:std::__2::__less::operator\28\29\5babi:v160004\5d\28unsigned\20int\20const&\2c\20unsigned\20long\20const&\29\20const +3105:std::__2::__itoa::__base_10_u32\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +3106:std::__2::__itoa::__append6\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +3107:std::__2::__itoa::__append4\5babi:v160004\5d\28char*\2c\20unsigned\20int\29 +3108: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 +3109:std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::~__hash_table\28\29 +3110: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 +3111: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 +3112:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28std::__2::__function::__base*\29\20const +3113:skvx::Vec<4\2c\20unsigned\20short>\20skvx::to_half<4>\28skvx::Vec<4\2c\20float>\20const&\29 +3114: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 +3115:skvx::Vec<4\2c\20int>\20skvx::operator~<4\2c\20int>\28skvx::Vec<4\2c\20int>\20const&\29 +3116:skvx::Vec<4\2c\20int>\20skvx::operator&<4\2c\20int\2c\20int\2c\20void>\28skvx::Vec<4\2c\20int>\20const&\2c\20int\29 +3117:skvx::Vec<4\2c\20float>&\20skvx::operator+=<4\2c\20float>\28skvx::Vec<4\2c\20float>&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +3118:sktext::gpu::VertexFiller::flatten\28SkWriteBuffer&\29\20const +3119:sktext::gpu::TextBlobRedrawCoordinator::BlobIDCacheEntry::find\28sktext::gpu::TextBlob::Key\20const&\29\20const +3120:sktext::gpu::SubRunAllocator::SubRunAllocator\28char*\2c\20int\2c\20int\29 +3121:sktext::gpu::GlyphVector::flatten\28SkWriteBuffer&\29\20const +3122:sktext::gpu::GlyphVector::Make\28sktext::SkStrikePromise&&\2c\20SkSpan\2c\20sktext::gpu::SubRunAllocator*\29 +3123:sktext::gpu::GlyphVector::GlyphVector\28sktext::gpu::GlyphVector&&\29 +3124:sktext::gpu::BagOfBytes::PlatformMinimumSizeWithOverhead\28int\2c\20int\29 +3125:sktext::SkStrikePromise::flatten\28SkWriteBuffer&\29\20const +3126:sktext::GlyphRunList::sourceBoundsWithOrigin\28\29\20const +3127: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 +3128:skip_literal_string +3129:skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +3130:skif::RoundOut\28SkRect\29 +3131:skif::Mapping::Mapping\28\29 +3132:skif::LayerSpace\20skif::Mapping::paramToLayer\28skif::ParameterSpace\20const&\29\20const +3133:skif::LayerSpace::inverseMapRect\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29\20const +3134:skif::LayerSpace::inset\28skif::LayerSpace\20const&\29 +3135:skif::FilterResult::operator=\28skif::FilterResult\20const&\29 +3136:skif::FilterResult::insetByPixel\28\29\20const +3137:skif::FilterResult::draw\28skif::Context\20const&\2c\20SkDevice*\2c\20bool\2c\20SkBlender\20const*\29\20const +3138:skif::FilterResult::applyColorFilter\28skif::Context\20const&\2c\20sk_sp\29\20const +3139:skif::FilterResult::FilterResult\28sk_sp\2c\20skif::LayerSpace\20const&\2c\20skif::FilterResult::PixelBoundary\29 +3140:skif::FilterResult::Builder::~Builder\28\29 +3141:skif::Context::withNewSource\28skif::FilterResult\20const&\29\20const +3142:skif::Context::operator=\28skif::Context&&\29 +3143:skif::Backend::~Backend\28\29 +3144:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot::reset\28\29 +3145:skia_private::THashTable::Pair\2c\20SkSL::Symbol\20const*\2c\20skia_private::THashMap::Pair>::firstPopulatedSlot\28\29\20const +3146:skia_private::THashTable::Pair\2c\20SkSL::Symbol\20const*\2c\20skia_private::THashMap::Pair>::Iter>::operator++\28\29 +3147:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Slot::reset\28\29 +3148:skia_private::THashTable::AdaptedTraits>::Hash\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +3149:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::Slot::reset\28\29 +3150:skia_private::THashTable::Traits>::Hash\28long\20long\20const&\29 +3151: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 +3152:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::findOrNull\28skgpu::ScratchKey\20const&\29\20const +3153:skia_private::THashTable::Traits>::set\28SkSL::Variable\20const*\29 +3154:skia_private::THashTable::Entry*\2c\20unsigned\20int\2c\20SkLRUCache::Traits>::uncheckedSet\28SkLRUCache::Entry*&&\29 +3155:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::Hash\28GrProgramDesc\20const&\29 +3156:skia_private::THashTable::AdaptedTraits>::removeIfExists\28skgpu::UniqueKey\20const&\29 +3157:skia_private::THashTable::Traits>::Hash\28FT_Opaque_Paint_\20const&\29 +3158:skia_private::THashMap\2c\20SkGoodHash>::find\28SkString\20const&\29\20const +3159:skia_private::THashMap>\2c\20SkGoodHash>::set\28SkSL::Variable\20const*\2c\20std::__2::unique_ptr>\29 +3160:skia_private::THashMap::find\28SkSL::Variable\20const*\20const&\29\20const +3161:skia_private::THashMap::operator\5b\5d\28SkSL::SymbolTable::SymbolKey\20const&\29 +3162:skia_private::THashMap::find\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +3163:skia_private::THashMap::find\28SkSL::IRNode\20const*\20const&\29\20const +3164:skia_private::THashMap::set\28SkSL::FunctionDeclaration\20const*\2c\20unsigned\20long\29 +3165:skia_private::THashMap>\2c\20SkGoodHash>::find\28SkImageFilter\20const*\20const&\29\20const +3166:skia_private::TArray::resize_back\28int\29 +3167:skia_private::TArray::push_back_raw\28int\29 +3168:skia_private::TArray::operator==\28skia_private::TArray\20const&\29\20const +3169:skia_private::TArray::reserve_exact\28int\29 +3170:skia_private::TArray>\2c\20true>::checkRealloc\28int\2c\20double\29 +3171:skia_private::TArray\2c\20true>::push_back\28std::__2::array&&\29 +3172:skia_private::TArray::clear\28\29 +3173:skia_private::TArray::clear\28\29 +3174:skia_private::TArray::TArray\28skia_private::TArray\20const&\29 +3175:skia_private::TArray::TArray\28skia_private::TArray\20const&\29 +3176:skia_private::TArray::~TArray\28\29 +3177:skia_private::TArray::move\28void*\29 +3178:skia_private::TArray::BufferFinishedMessage\2c\20false>::~TArray\28\29 +3179:skia_private::TArray::BufferFinishedMessage\2c\20false>::move\28void*\29 +3180:skia_private::TArray\2c\20true>::push_back\28sk_sp&&\29 +3181:skia_private::TArray::reserve_exact\28int\29 +3182:skia_private::TArray::push_back_n\28int\2c\20int\20const&\29 +3183:skia_private::TArray\2c\20true>::Allocate\28int\2c\20double\29 +3184:skia_private::TArray::reserve_exact\28int\29 +3185:skia_private::TArray::~TArray\28\29 +3186:skia_private::TArray::move\28void*\29 +3187:skia_private::AutoSTMalloc<8ul\2c\20unsigned\20int\2c\20void>::reset\28unsigned\20long\29 +3188:skia_private::AutoSTArray<20\2c\20SkGlyph\20const*>::reset\28int\29 +3189:skia_private::AutoSTArray<16\2c\20SkRect>::reset\28int\29 +3190:skia_private::AutoSTArray<128\2c\20unsigned\20char>::reset\28int\29 +3191:skia_png_sig_cmp +3192:skia_png_set_text_2 +3193:skia_png_realloc_array +3194:skia_png_get_uint_31 +3195:skia_png_check_fp_string +3196:skia_png_check_fp_number +3197:skia_png_app_warning +3198:skia_png_app_error +3199:skia::textlayout::\28anonymous\20namespace\29::intersected\28skia::textlayout::SkRange\20const&\2c\20skia::textlayout::SkRange\20const&\29 +3200: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 +3201:skia::textlayout::TypefaceFontStyleSet::createTypeface\28int\29 +3202:skia::textlayout::TextStyle::setForegroundColor\28SkPaint\29 +3203:skia::textlayout::TextStyle::setBackgroundColor\28SkPaint\29 +3204:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29 +3205:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::$_0::operator\28\29\28sk_sp\2c\20sk_sp\29\20const +3206: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 +3207:skia::textlayout::TextLine::getRectsForRange\28skia::textlayout::SkRange\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\2c\20std::__2::vector>&\29\20const +3208:skia::textlayout::TextBox&\20std::__2::vector>::emplace_back\28SkRect&\2c\20skia::textlayout::TextDirection&&\29 +3209:skia::textlayout::StrutStyle::StrutStyle\28skia::textlayout::StrutStyle\20const&\29 +3210:skia::textlayout::Run::isResolved\28\29\20const +3211:skia::textlayout::Run::copyTo\28SkTextBlobBuilder&\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +3212:skia::textlayout::Run::calculateWidth\28unsigned\20long\2c\20unsigned\20long\2c\20bool\29\20const +3213:skia::textlayout::ParagraphStyle::ParagraphStyle\28skia::textlayout::ParagraphStyle&&\29 +3214:skia::textlayout::ParagraphImpl::getGlyphPositionAtCoordinate\28float\2c\20float\29 +3215:skia::textlayout::ParagraphImpl::findNextGraphemeBoundary\28unsigned\20long\29\20const +3216:skia::textlayout::ParagraphImpl::findAllBlocks\28skia::textlayout::SkRange\29 +3217:skia::textlayout::ParagraphImpl::ensureUTF16Mapping\28\29::$_0::operator\28\29\28\29\20const::'lambda'\28unsigned\20long\29::operator\28\29\28unsigned\20long\29\20const +3218:skia::textlayout::ParagraphImpl::buildClusterTable\28\29 +3219:skia::textlayout::ParagraphCacheKey::operator==\28skia::textlayout::ParagraphCacheKey\20const&\29\20const +3220:skia::textlayout::ParagraphBuilderImpl::ensureUTF16Mapping\28\29::$_0::operator\28\29\28\29\20const::'lambda'\28unsigned\20long\29::operator\28\29\28unsigned\20long\29\20const +3221:skia::textlayout::ParagraphBuilderImpl::ensureUTF16Mapping\28\29 +3222:skia::textlayout::ParagraphBuilderImpl::endRunIfNeeded\28\29 +3223:skia::textlayout::OneLineShaper::~OneLineShaper\28\29 +3224:skia::textlayout::LineMetrics::LineMetrics\28\29 +3225:skia::textlayout::FontCollection::FamilyKey::~FamilyKey\28\29 +3226:skia::textlayout::Cluster::isSoftBreak\28\29\20const +3227:skia::textlayout::Block::Block\28skia::textlayout::Block\20const&\29 +3228:skgpu::ganesh::\28anonymous\20namespace\29::add_quad_segment\28SkPoint\20const*\2c\20skia_private::TArray*\29 +3229:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::Entry::Entry\28skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::Entry&&\29 +3230:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::~Impl\28\29 +3231:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::programInfo\28\29 +3232:skgpu::ganesh::SurfaceFillContext::internalClear\28SkIRect\20const*\2c\20std::__2::array\2c\20bool\29 +3233:skgpu::ganesh::SurfaceFillContext::discard\28\29 +3234:skgpu::ganesh::SurfaceFillContext::addOp\28std::__2::unique_ptr>\29 +3235:skgpu::ganesh::SurfaceDrawContext::wrapsVkSecondaryCB\28\29\20const +3236:skgpu::ganesh::SurfaceDrawContext::stencilRect\28GrClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkMatrix\20const*\29 +3237:skgpu::ganesh::SurfaceDrawContext::fillQuadWithEdgeAA\28GrClip\20const*\2c\20GrPaint&&\2c\20GrQuadAAFlags\2c\20SkMatrix\20const&\2c\20SkPoint\20const*\2c\20SkPoint\20const*\29 +3238:skgpu::ganesh::SurfaceDrawContext::drawPath\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrStyle\20const&\29 +3239:skgpu::ganesh::SurfaceDrawContext::attemptQuadOptimization\28GrClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20DrawQuad*\2c\20GrPaint*\29 +3240:skgpu::ganesh::SurfaceDrawContext::Make\28GrRecordingContext*\2c\20GrColorType\2c\20sk_sp\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +3241:skgpu::ganesh::SurfaceContext::rescale\28GrImageInfo\20const&\2c\20GrSurfaceOrigin\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29 +3242: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 +3243:skgpu::ganesh::SurfaceContext::SurfaceContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +3244:skgpu::ganesh::SmallPathShapeDataKey::operator==\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29\20const +3245:skgpu::ganesh::QuadPerEdgeAA::MinColorType\28SkRGBA4f<\28SkAlphaType\292>\29 +3246:skgpu::ganesh::PathTessellator::~PathTessellator\28\29 +3247:skgpu::ganesh::PathCurveTessellator::draw\28GrOpFlushState*\29\20const +3248:skgpu::ganesh::OpsTask::~OpsTask\28\29 +3249:skgpu::ganesh::OpsTask::recordOp\28std::__2::unique_ptr>\2c\20bool\2c\20GrProcessorSet::Analysis\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const*\2c\20GrCaps\20const&\29 +3250:skgpu::ganesh::FilterAndMipmapHaveNoEffect\28GrQuad\20const&\2c\20GrQuad\20const&\29 +3251:skgpu::ganesh::FillRectOp::MakeNonAARect\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrUserStencilSettings\20const*\29 +3252: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 +3253:skgpu::ganesh::FillRRectOp::Make\28GrRecordingContext*\2c\20SkArenaAlloc*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20SkRect\20const&\2c\20GrAA\29 +3254:skgpu::ganesh::Device::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +3255: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 +3256:skgpu::ganesh::Device::Make\28std::__2::unique_ptr>\2c\20SkAlphaType\2c\20skgpu::ganesh::Device::InitContents\29 +3257: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 +3258:skgpu::ganesh::ClipStack::~ClipStack\28\29 +3259:skgpu::ganesh::ClipStack::writableSaveRecord\28bool*\29 +3260:skgpu::ganesh::ClipStack::end\28\29\20const +3261:skgpu::ganesh::ClipStack::clip\28skgpu::ganesh::ClipStack::RawElement&&\29 +3262:skgpu::ganesh::ClipStack::clipState\28\29\20const +3263:skgpu::ganesh::ClipStack::SaveRecord::invalidateMasks\28GrProxyProvider*\2c\20SkTBlockList*\29 +3264:skgpu::ganesh::ClipStack::SaveRecord::genID\28\29\20const +3265:skgpu::ganesh::ClipStack::RawElement::operator=\28skgpu::ganesh::ClipStack::RawElement&&\29 +3266:skgpu::ganesh::ClipStack::RawElement::contains\28skgpu::ganesh::ClipStack::SaveRecord\20const&\29\20const +3267:skgpu::ganesh::ClipStack::RawElement::RawElement\28SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\2c\20SkClipOp\29 +3268:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +3269:skgpu::Swizzle::apply\28SkRasterPipeline*\29\20const +3270:skgpu::Swizzle::applyTo\28std::__2::array\29\20const +3271:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29 +3272:skgpu::ScratchKey::GenerateResourceType\28\29 +3273:skgpu::RectanizerSkyline::reset\28\29 +3274:skgpu::Plot::addSubImage\28int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +3275:sk_sp::~sk_sp\28\29 +3276:sk_sp::reset\28SkMeshSpecification*\29 +3277:sk_sp::operator=\28sk_sp&&\29 +3278:sk_sp::reset\28GrTextureProxy*\29 +3279:sk_sp::reset\28GrTexture*\29 +3280:sk_sp::operator=\28sk_sp&&\29 +3281:sk_sp::reset\28GrCpuBuffer*\29 +3282:sk_sp&\20sk_sp::operator=\28sk_sp&&\29 +3283:sk_sp&\20sk_sp::operator=\28sk_sp\20const&\29 +3284:skData_getSize +3285:sift +3286:set_initial_texture_params\28GrGLInterface\20const*\2c\20GrGLCaps\20const&\2c\20unsigned\20int\29 +3287:setRegionCheck\28SkRegion*\2c\20SkRegion\20const&\29 +3288:setLevelsOutsideIsolates\28UBiDi*\2c\20int\2c\20int\2c\20unsigned\20char\29 +3289:sect_with_vertical\28SkPoint\20const*\2c\20float\29 +3290:sampler_key\28GrTextureType\2c\20skgpu::Swizzle\20const&\2c\20GrCaps\20const&\29 +3291:round\28SkPoint*\29 +3292:read_color_line +3293:quick_inverse\28int\29 +3294:quad_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3295:psh_globals_set_scale +3296:ps_tofixedarray +3297:ps_parser_skip_PS_token +3298:ps_mask_test_bit +3299:ps_mask_table_alloc +3300:ps_mask_ensure +3301:ps_dimension_reset_mask +3302:ps_builder_init +3303:ps_builder_done +3304:pow +3305: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 +3306: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 +3307: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 +3308: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 +3309: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 +3310: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 +3311:points_are_colinear_and_b_is_middle\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float*\29 +3312:png_zlib_inflate +3313:png_inflate_read +3314:png_inflate_claim +3315:png_build_8bit_table +3316:png_build_16bit_table +3317:picture_approximateBytesUsed +3318:path_addOval +3319:paragraph_dispose +3320:operator==\28SkPath\20const&\2c\20SkPath\20const&\29 +3321:operator!=\28SkString\20const&\2c\20SkString\20const&\29 +3322:normalize +3323:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::glyphCount\28\29\20const +3324:non-virtual\20thunk\20to\20GrOpFlushState::deferredUploadTarget\28\29 +3325:nextafterf +3326:move_nearby\28SkOpContourHead*\29 +3327:make_unpremul_effect\28std::__2::unique_ptr>\29 +3328: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 +3329:long\20std::__2::__libcpp_atomic_refcount_decrement\5babi:v160004\5d\28long&\29 +3330:long\20const&\20std::__2::min\5babi:v160004\5d\28long\20const&\2c\20long\20const&\29 +3331:log1p +3332:load_truetype_glyph +3333:load\28unsigned\20char\20const*\2c\20int\2c\20void\20\28*\29\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29\29 +3334:line_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3335:lineMetrics_getStartIndex +3336:just_solid_color\28SkPaint\20const&\29 +3337:is_reflex_vertex\28SkPoint\20const*\2c\20int\2c\20float\2c\20unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +3338:inner_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +3339:inflate_table +3340:image_filter_color_type\28SkColorInfo\20const&\29 +3341:hb_vector_t::push\28\29 +3342:hb_vector_t\2c\20false>::shrink_vector\28unsigned\20int\29 +3343:hb_utf8_t::next\28unsigned\20char\20const*\2c\20unsigned\20char\20const*\2c\20unsigned\20int*\2c\20unsigned\20int\29 +3344:hb_shape_plan_destroy +3345:hb_serialize_context_t::object_t::hash\28\29\20const +3346:hb_script_get_horizontal_direction +3347:hb_pool_t::alloc\28\29 +3348:hb_paint_funcs_t::push_clip_rectangle\28void*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3349:hb_paint_funcs_t::push_clip_glyph\28void*\2c\20unsigned\20int\2c\20hb_font_t*\29 +3350: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 +3351:hb_paint_funcs_t::color\28void*\2c\20int\2c\20unsigned\20int\29 +3352:hb_paint_extents_context_t::push_clip\28hb_extents_t\29 +3353:hb_ot_map_t::get_mask\28unsigned\20int\2c\20unsigned\20int*\29\20const +3354:hb_lazy_loader_t\2c\20hb_face_t\2c\202u\2c\20hb_blob_t>::get\28\29\20const +3355:hb_lazy_loader_t\2c\20hb_face_t\2c\2023u\2c\20hb_blob_t>::get\28\29\20const +3356:hb_lazy_loader_t\2c\20hb_face_t\2c\201u\2c\20hb_blob_t>::get\28\29\20const +3357:hb_lazy_loader_t\2c\20hb_face_t\2c\2018u\2c\20hb_blob_t>::get\28\29\20const +3358:hb_lazy_loader_t\2c\20hb_face_t\2c\203u\2c\20OT::cmap_accelerator_t>::get_stored\28\29\20const +3359: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 +3360: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& +3361:hb_hashmap_t::item_t::operator==\28hb_serialize_context_t::object_t\20const*\20const&\29\20const +3362:hb_font_t::mults_changed\28\29 +3363:hb_font_t::has_glyph_h_origin_func\28\29 +3364:hb_font_t::has_func\28unsigned\20int\29 +3365:hb_font_t::get_nominal_glyphs\28unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\29 +3366:hb_font_t::get_glyph_v_origin\28unsigned\20int\2c\20int*\2c\20int*\29 +3367:hb_font_t::get_glyph_v_advances\28unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\29 +3368:hb_font_t::get_glyph_h_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +3369:hb_font_t::get_glyph_h_origin\28unsigned\20int\2c\20int*\2c\20int*\29 +3370:hb_font_t::get_glyph_h_advances\28unsigned\20int\2c\20unsigned\20int\20const*\2c\20unsigned\20int\2c\20int*\2c\20unsigned\20int\29 +3371:hb_font_t::get_glyph_contour_point_for_origin\28unsigned\20int\2c\20unsigned\20int\2c\20hb_direction_t\2c\20int*\2c\20int*\29 +3372:hb_font_funcs_destroy +3373: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 +3374:hb_buffer_t::output_info\28hb_glyph_info_t\20const&\29 +3375:hb_buffer_t::digest\28\29\20const +3376:hb_buffer_t::_infos_set_glyph_flags\28hb_glyph_info_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3377:hb_buffer_t::_infos_find_min_cluster\28hb_glyph_info_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +3378:hb_buffer_set_length +3379:hb_buffer_create +3380:hb_blob_ptr_t::destroy\28\29 +3381: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 +3382:gray_render_line +3383:gl_target_to_gr_target\28unsigned\20int\29 +3384:gl_target_to_binding_index\28unsigned\20int\29 +3385:get_vendor\28char\20const*\29 +3386:get_renderer\28char\20const*\2c\20GrGLExtensions\20const&\29 +3387:get_layer_mapping_and_bounds\28SkSpan>\2c\20SkMatrix\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\2c\20float\29 +3388:get_joining_type\28unsigned\20int\2c\20hb_unicode_general_category_t\29 +3389:get_child_table_pointer +3390:generate_distance_field_from_image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\29 +3391:gaussianIntegral\28float\29 +3392:ft_var_readpackeddeltas +3393:ft_var_done_item_variation_store +3394:ft_glyphslot_alloc_bitmap +3395:ft_face_get_mm_service +3396:freelocale +3397:fputc +3398:fp_barrierf +3399:float*\20SkArenaAlloc::makeArray\28unsigned\20long\29 +3400:fixN0c\28BracketData*\2c\20int\2c\20int\2c\20unsigned\20char\29 +3401:filter_to_gl_min_filter\28SkFilterMode\2c\20SkMipmapMode\29 +3402:exp2 +3403:em_task_queue_execute +3404:dquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3405:do_scanline\28int\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkBlitter*\29 +3406:do_anti_hairline\28int\2c\20int\2c\20int\2c\20int\2c\20SkIRect\20const*\2c\20SkBlitter*\29 +3407:dline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3408:directionFromFlags\28UBiDi*\29 +3409:destroy_face +3410: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 +3411: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 +3412:dcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3413:dconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +3414:cubic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3415:conic_intersect_ray\28SkPoint\20const*\2c\20float\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +3416:cleanup_shaders\28GrGLGpu*\2c\20SkTDArray\20const&\29 +3417:chop_mono_cubic_at_y\28SkPoint*\2c\20float\2c\20SkPoint*\29 +3418:check_inverse_on_empty_return\28SkRegion*\2c\20SkPath\20const&\2c\20SkRegion\20const&\29 +3419:check_intersection\28SkAnalyticEdge\20const*\2c\20int\2c\20int*\29 +3420:char\20const*\20std::__2::find\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char\20const&\29 +3421:cff_parse_real +3422:cff_parse_integer +3423:cff_index_read_offset +3424:cff_index_get_pointers +3425:cff_index_access_element +3426:cff2_path_param_t::move_to\28CFF::point_t\20const&\29 +3427:cff1_path_param_t::move_to\28CFF::point_t\20const&\29 +3428:cf2_hintmap_map +3429:cf2_glyphpath_pushPrevElem +3430:cf2_glyphpath_computeOffset +3431:cf2_glyphpath_closeOpenPath +3432:calculate_path_gap\28float\2c\20float\2c\20SkPath\20const&\29::$_1::operator\28\29\28int\29\20const +3433:calc_dot_cross_cubic\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +3434: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 +3435: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 +3436: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 +3437: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 +3438: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 +3439: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 +3440: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 +3441: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 +3442:byn$mgfn-shared$void\20GrGLProgramDataManager::setMatrices<2>\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +3443:byn$mgfn-shared$std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +3444:byn$mgfn-shared$std::__2::vector>::__recommend\5babi:v160004\5d\28unsigned\20long\29\20const +3445:byn$mgfn-shared$std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +3446: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 +3447: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 +3448:byn$mgfn-shared$skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +3449:byn$mgfn-shared$skia_private::TArray<\28anonymous\20namespace\29::DrawAtlasOpImpl::Geometry\2c\20true>::checkRealloc\28int\2c\20double\29 +3450:byn$mgfn-shared$skia_private::TArray::checkRealloc\28int\2c\20double\29 +3451:byn$mgfn-shared$skia_private::AutoSTMalloc<4ul\2c\20int\2c\20void>::AutoSTMalloc\28unsigned\20long\29 +3452:byn$mgfn-shared$skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +3453:byn$mgfn-shared$skgpu::Swizzle::RGBA\28\29 +3454:byn$mgfn-shared$resource_cache_mutex\28\29 +3455:byn$mgfn-shared$portable::sub_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3456:byn$mgfn-shared$portable::sub_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3457:byn$mgfn-shared$portable::mul_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3458:byn$mgfn-shared$portable::mul_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3459:byn$mgfn-shared$portable::mod_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3460:byn$mgfn-shared$portable::mix_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3461:byn$mgfn-shared$portable::mix_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3462:byn$mgfn-shared$portable::min_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3463:byn$mgfn-shared$portable::min_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3464:byn$mgfn-shared$portable::min_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3465:byn$mgfn-shared$portable::max_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3466:byn$mgfn-shared$portable::max_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3467:byn$mgfn-shared$portable::max_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3468:byn$mgfn-shared$portable::invsqrt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3469:byn$mgfn-shared$portable::floor_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3470:byn$mgfn-shared$portable::div_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3471:byn$mgfn-shared$portable::div_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3472:byn$mgfn-shared$portable::div_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3473:byn$mgfn-shared$portable::cmpne_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3474:byn$mgfn-shared$portable::cmpne_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3475:byn$mgfn-shared$portable::cmplt_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3476:byn$mgfn-shared$portable::cmplt_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3477:byn$mgfn-shared$portable::cmplt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3478:byn$mgfn-shared$portable::cmple_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3479:byn$mgfn-shared$portable::cmple_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3480:byn$mgfn-shared$portable::cmple_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3481:byn$mgfn-shared$portable::cmpeq_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3482:byn$mgfn-shared$portable::cmpeq_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3483:byn$mgfn-shared$portable::ceil_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3484:byn$mgfn-shared$portable::cast_to_uint_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3485:byn$mgfn-shared$portable::cast_to_int_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3486:byn$mgfn-shared$portable::cast_to_float_from_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3487:byn$mgfn-shared$portable::cast_to_float_from_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3488:byn$mgfn-shared$portable::bitwise_xor_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3489:byn$mgfn-shared$portable::bitwise_or_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3490:byn$mgfn-shared$portable::bitwise_and_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3491:byn$mgfn-shared$portable::add_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3492:byn$mgfn-shared$portable::add_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3493:byn$mgfn-shared$portable::abs_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +3494:byn$mgfn-shared$SkTBlockList::pushItem\28\29 +3495:byn$mgfn-shared$SkRuntimeEffect::MakeForShader\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +3496:byn$mgfn-shared$SkImage_Base::isGaneshBacked\28\29\20const +3497:byn$mgfn-shared$Round_To_Grid +3498:byn$mgfn-shared$LineQuadraticIntersections::addLineNearEndPoints\28\29 +3499:byn$mgfn-shared$GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +3500:byn$mgfn-shared$GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +3501:byn$mgfn-shared$DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +3502:bracketProcessBoundary\28BracketData*\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +3503:bracketAddOpening\28BracketData*\2c\20char16_t\2c\20int\29 +3504:bool\20std::__2::equal\5babi:v160004\5d\28float\20const*\2c\20float\20const*\2c\20float\20const*\2c\20std::__2::__equal_to\29 +3505: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 +3506: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 +3507: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 +3508: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 +3509:bool\20OT::glyf_accelerator_t::get_points\28hb_font_t*\2c\20unsigned\20int\2c\20OT::glyf_accelerator_t::points_aggregator_t\29\20const +3510:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3511:bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3512:bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3513:bool\20OT::OffsetTo>\2c\20OT::IntType\2c\20false>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +3514:blitrect\28SkBlitter*\2c\20SkIRect\20const&\29 +3515:blit_single_alpha\28AdditiveBlitter*\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\29 +3516: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\29 +3517:atan +3518:append_index_uv_varyings\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20int\2c\20char\20const*\2c\20char\20const*\2c\20GrGLSLVarying*\2c\20GrGLSLVarying*\2c\20GrGLSLVarying*\29 +3519:antifillrect\28SkRect\20const&\2c\20SkBlitter*\29 +3520:af_property_get_face_globals +3521:af_latin_hints_link_segments +3522:af_latin_compute_stem_width +3523:af_latin_align_linked_edge +3524:af_iup_interp +3525:af_glyph_hints_save +3526:af_glyph_hints_done +3527:af_cjk_align_linked_edge +3528:add_quad\28SkPoint\20const*\2c\20skia_private::TArray*\29 +3529:acosf +3530:acos +3531:aaa_fill_path\28SkPath\20const&\2c\20SkIRect\20const&\2c\20AdditiveBlitter*\2c\20int\2c\20int\2c\20bool\2c\20bool\2c\20bool\29 +3532:a_swap +3533:a_store +3534:a_cas_p.9086 +3535:_iup_worker_interpolate +3536:_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 +3537:_hb_font_adopt_var_coords\28hb_font_t*\2c\20int*\2c\20float*\2c\20unsigned\20int\29 +3538:_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 +3539:_get_bounds\28OT::cff1::accelerator_t\20const*\2c\20unsigned\20int\2c\20bounds_t&\2c\20bool\29 +3540:__trunctfdf2 +3541:__towrite +3542:__toread +3543:__tl_unlock +3544:__tl_lock +3545:__timedwait_cp +3546:__subtf3 +3547:__strchrnul +3548:__rem_pio2f +3549:__rem_pio2 +3550:__pthread_mutex_trylock +3551:__overflow +3552:__fwritex +3553:__cxxabiv1::__class_type_info::process_static_type_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\29\20const +3554:__cxxabiv1::__class_type_info::process_static_type_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\29\20const +3555:__cxxabiv1::__class_type_info::process_found_base_class\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +3556:__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 +3557:\28anonymous\20namespace\29::split_conic\28SkPoint\20const*\2c\20SkConic*\2c\20float\29 +3558:\28anonymous\20namespace\29::single_pass_shape\28GrStyledShape\20const&\29 +3559:\28anonymous\20namespace\29::shift_left\28skvx::Vec<4\2c\20float>\20const&\2c\20int\29 +3560:\28anonymous\20namespace\29::shape_contains_rect\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkMatrix\20const&\2c\20bool\29 +3561:\28anonymous\20namespace\29::set_gl_stencil\28GrGLInterface\20const*\2c\20GrStencilSettings::Face\20const&\2c\20unsigned\20int\29 +3562:\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 +3563:\28anonymous\20namespace\29::get_tile_count\28SkIRect\20const&\2c\20int\29 +3564:\28anonymous\20namespace\29::generateGlyphPathStatic\28FT_FaceRec_*\2c\20SkPath*\29 +3565:\28anonymous\20namespace\29::generateFacePathCOLRv1\28FT_FaceRec_*\2c\20unsigned\20short\2c\20SkPath*\29 +3566:\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 +3567:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads_with_constraint\28SkPoint\20const*\2c\20float\2c\20SkPathFirstDirection\2c\20skia_private::TArray*\2c\20int\29 +3568:\28anonymous\20namespace\29::convert_noninflect_cubic_to_quads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\2c\20int\2c\20bool\2c\20bool\29 +3569:\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 +3570:\28anonymous\20namespace\29::calculate_colors\28skgpu::ganesh::SurfaceDrawContext*\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20skgpu::MaskFormat\2c\20GrPaint*\29 +3571:\28anonymous\20namespace\29::bloat_quad\28SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkMatrix\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +3572:\28anonymous\20namespace\29::TriangulatingPathOp::CreateMesh\28GrMeshDrawTarget*\2c\20sk_sp\2c\20int\2c\20int\29 +3573:\28anonymous\20namespace\29::TransformedMaskSubRun::~TransformedMaskSubRun\28\29.1 +3574:\28anonymous\20namespace\29::TransformedMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +3575:\28anonymous\20namespace\29::TransformedMaskSubRun::glyphs\28\29\20const +3576:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29 +3577:\28anonymous\20namespace\29::SkMorphologyImageFilter::radii\28skif::Mapping\20const&\29\20const +3578:\28anonymous\20namespace\29::SkFTGeometrySink::goingTo\28FT_Vector_\20const*\29 +3579:\28anonymous\20namespace\29::SkCropImageFilter::cropRect\28skif::Mapping\20const&\29\20const +3580:\28anonymous\20namespace\29::ShapedRun::~ShapedRun\28\29 +3581:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +3582:\28anonymous\20namespace\29::PathSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +3583:\28anonymous\20namespace\29::MemoryPoolAccessor::pool\28\29\20const +3584:\28anonymous\20namespace\29::DrawAtlasOpImpl::visitProxies\28std::__2::function\20const&\29\20const +3585:\28anonymous\20namespace\29::DrawAtlasOpImpl::programInfo\28\29 +3586:\28anonymous\20namespace\29::DrawAtlasOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +3587:TT_Vary_Apply_Glyph_Deltas +3588:TT_Set_Var_Design +3589:TT_Get_VMetrics +3590:SkWriter32::writeRegion\28SkRegion\20const&\29 +3591:SkVertices::Sizes::Sizes\28SkVertices::Desc\20const&\29 +3592:SkVertices::MakeCopy\28SkVertices::VertexMode\2c\20int\2c\20SkPoint\20const*\2c\20SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20short\20const*\29 +3593:SkVertices::Builder::~Builder\28\29 +3594:SkVertices::Builder::detach\28\29 +3595:SkUnitScalarClampToByte\28float\29 +3596:SkUTF::ToUTF16\28int\2c\20unsigned\20short*\29 +3597:SkTypeface_FreeType::~SkTypeface_FreeType\28\29 +3598:SkTextBlobBuilder::updateDeferredBounds\28\29 +3599:SkTextBlobBuilder::allocInternal\28SkFont\20const&\2c\20SkTextBlob::GlyphPositioning\2c\20int\2c\20int\2c\20SkPoint\2c\20SkRect\20const*\29 +3600:SkTextBlob::RunRecord::textSizePtr\28\29\20const +3601:SkTSpan::markCoincident\28\29 +3602:SkTSect::markSpanGone\28SkTSpan*\29 +3603:SkTSect::computePerpendiculars\28SkTSect*\2c\20SkTSpan*\2c\20SkTSpan*\29 +3604:SkTMultiMap::insert\28skgpu::ScratchKey\20const&\2c\20GrGpuResource*\29 +3605:SkTDStorage::moveTail\28int\2c\20int\2c\20int\29 +3606:SkTDStorage::calculateSizeOrDie\28int\29 +3607:SkTDArray::append\28int\29 +3608:SkTDArray::append\28\29 +3609:SkTConic::hullIntersects\28SkDConic\20const&\2c\20bool*\29\20const +3610:SkTBlockList::pop_back\28\29 +3611:SkSurface_Base::~SkSurface_Base\28\29 +3612:SkSurface_Base::aboutToDraw\28SkSurface::ContentChangeMode\29 +3613:SkStrokeRec::init\28SkPaint\20const&\2c\20SkPaint::Style\2c\20float\29 +3614:SkStrokeRec::getInflationRadius\28\29\20const +3615:SkString::printVAList\28char\20const*\2c\20void*\29 +3616:SkStrikeSpec::SkStrikeSpec\28SkStrikeSpec&&\29 +3617:SkStrikeSpec::MakeWithNoDevice\28SkFont\20const&\2c\20SkPaint\20const*\29 +3618:SkStrikeSpec::MakePath\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\29 +3619:SkStrikeCache::findOrCreateStrike\28SkStrikeSpec\20const&\29 +3620:SkStrike::prepareForPath\28SkGlyph*\29 +3621:SkSpriteBlitter::SkSpriteBlitter\28SkPixmap\20const&\29 +3622:SkSpecialImage::~SkSpecialImage\28\29 +3623:SkSpecialImage::makeSubset\28SkIRect\20const&\29\20const +3624:SkSpecialImage::makePixelOutset\28\29\20const +3625:SkShapers::HB::ScriptRunIterator\28char\20const*\2c\20unsigned\20long\29 +3626:SkShaper::TrivialRunIterator::endOfCurrentRun\28\29\20const +3627:SkShaper::TrivialRunIterator::consume\28\29 +3628:SkShaper::TrivialRunIterator::atEnd\28\29\20const +3629:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29 +3630:SkShaders::MatrixRec::MatrixRec\28SkMatrix\20const&\29 +3631:SkShaderUtils::GLSLPrettyPrint::tabString\28\29 +3632:SkScanClipper::~SkScanClipper\28\29 +3633:SkScanClipper::SkScanClipper\28SkBlitter*\2c\20SkRegion\20const*\2c\20SkIRect\20const&\2c\20bool\2c\20bool\29 +3634:SkScan::HairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +3635:SkScan::FillTriangle\28SkPoint\20const*\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3636:SkScan::FillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3637:SkScan::FillIRect\28SkIRect\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3638:SkScan::AntiHairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +3639:SkScan::AntiHairLineRgn\28SkPoint\20const*\2c\20int\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +3640:SkScan::AntiFillXRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +3641:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRegion\20const&\2c\20SkBlitter*\2c\20bool\29 +3642:SkScalerContext_FreeType::updateGlyphBoundsIfSubpixel\28SkGlyph\20const&\2c\20SkRect*\2c\20bool\29 +3643:SkScalerContextRec::CachedMaskGamma\28unsigned\20char\2c\20unsigned\20char\29 +3644:SkScalerContextFTUtils::drawSVGGlyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29\20const +3645:SkScalerContext::~SkScalerContext\28\29 +3646:SkSTArenaAlloc<2048ul>::SkSTArenaAlloc\28unsigned\20long\29 +3647:SkSL::type_is_valid_for_coords\28SkSL::Type\20const&\29 +3648:SkSL::simplify_negation\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\29 +3649: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 +3650:SkSL::simplify_componentwise\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +3651:SkSL::replace_empty_with_nop\28std::__2::unique_ptr>\2c\20bool\29 +3652:SkSL::find_generic_index\28SkSL::Type\20const&\2c\20SkSL::Type\20const&\2c\20bool\29 +3653: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 +3654:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29 +3655: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 +3656: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 +3657:SkSL::build_argument_type_list\28SkSpan>\20const>\29 +3658:SkSL::\28anonymous\20namespace\29::SwitchCaseContainsExit::visitStatement\28SkSL::Statement\20const&\29 +3659:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::returnsInputAlpha\28SkSL::Expression\20const&\29 +3660:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29 +3661:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29 +3662:SkSL::\28anonymous\20namespace\29::ConstantExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +3663:SkSL::Variable::~Variable\28\29 +3664: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 +3665: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 +3666:SkSL::VarDeclaration::~VarDeclaration\28\29 +3667:SkSL::VarDeclaration::Make\28SkSL::Context\20const&\2c\20SkSL::Variable*\2c\20SkSL::Type\20const*\2c\20int\2c\20std::__2::unique_ptr>\29 +3668:SkSL::Type::isStorageTexture\28\29\20const +3669:SkSL::Type::convertArraySize\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Position\2c\20long\20long\29\20const +3670:SkSL::Type::MakeSamplerType\28char\20const*\2c\20SkSL::Type\20const&\29 +3671:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29 +3672:SkSL::Transform::EliminateDeadGlobalVariables\28SkSL::Program&\29::$_2::operator\28\29\28SkSL::ProgramElement\20const&\29\20const +3673:SkSL::TernaryExpression::~TernaryExpression\28\29 +3674:SkSL::SymbolTable::SymbolKey::operator==\28SkSL::SymbolTable::SymbolKey\20const&\29\20const +3675:SkSL::SingleArgumentConstructor::~SingleArgumentConstructor\28\29 +3676:SkSL::RP::UnownedLValueSlice::~UnownedLValueSlice\28\29 +3677:SkSL::RP::SlotManager::createSlots\28std::__2::basic_string\2c\20std::__2::allocator>\2c\20SkSL::Type\20const&\2c\20SkSL::Position\2c\20bool\29 +3678: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 +3679: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 +3680: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 +3681:SkSL::RP::Program::appendCopySlotsMasked\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\29\20const +3682:SkSL::RP::LValueSlice::~LValueSlice\28\29 +3683:SkSL::RP::Generator::pushTernaryExpression\28SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +3684:SkSL::RP::Generator::pushStructuredComparison\28SkSL::RP::LValue*\2c\20SkSL::Operator\2c\20SkSL::RP::LValue*\2c\20SkSL::Type\20const&\29 +3685:SkSL::RP::Generator::pushPrefixExpression\28SkSL::Operator\2c\20SkSL::Expression\20const&\29 +3686:SkSL::RP::Generator::pushMatrixMultiply\28SkSL::RP::LValue*\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +3687:SkSL::RP::Generator::pushAbsFloatIntrinsic\28int\29 +3688:SkSL::RP::Generator::needsReturnMask\28SkSL::FunctionDefinition\20const*\29 +3689:SkSL::RP::Generator::needsFunctionResultSlots\28SkSL::FunctionDefinition\20const*\29 +3690:SkSL::RP::Generator::foldWithMultiOp\28SkSL::RP::BuilderOp\2c\20int\29 +3691:SkSL::RP::Generator::GetTypedOp\28SkSL::Type\20const&\2c\20SkSL::RP::Generator::TypedOps\20const&\29 +3692:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29 +3693:SkSL::RP::Builder::select\28int\29 +3694:SkSL::RP::Builder::push_uniform\28SkSL::RP::SlotRange\29 +3695:SkSL::RP::Builder::pop_loop_mask\28\29 +3696:SkSL::RP::Builder::merge_condition_mask\28\29 +3697:SkSL::RP::Builder::branch_if_no_active_lanes_on_stack_top_equal\28int\2c\20int\29 +3698:SkSL::RP::AutoStack&\20std::__2::optional::emplace\5babi:v160004\5d\28SkSL::RP::Generator*&\29 +3699:SkSL::ProgramUsage::add\28SkSL::ProgramElement\20const&\29 +3700:SkSL::PipelineStage::PipelineStageCodeGenerator::modifierString\28SkSL::ModifierFlags\29 +3701:SkSL::PipelineStage::ConvertProgram\28SkSL::Program\20const&\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20SkSL::PipelineStage::Callbacks*\29 +3702:SkSL::Parser::unsizedArrayType\28SkSL::Type\20const*\2c\20SkSL::Position\29 +3703:SkSL::Parser::unaryExpression\28\29 +3704:SkSL::Parser::swizzle\28SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::basic_string_view>\2c\20SkSL::Position\29 +3705:SkSL::Parser::poison\28SkSL::Position\29 +3706:SkSL::Parser::checkIdentifier\28SkSL::Token*\29 +3707:SkSL::Parser::block\28bool\2c\20std::__2::unique_ptr>*\29 +3708:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29 +3709:SkSL::Operator::getBinaryPrecedence\28\29\20const +3710:SkSL::MultiArgumentConstructor::~MultiArgumentConstructor\28\29 +3711:SkSL::ModuleLoader::loadVertexModule\28SkSL::Compiler*\29 +3712:SkSL::ModuleLoader::loadGPUModule\28SkSL::Compiler*\29 +3713:SkSL::ModuleLoader::loadFragmentModule\28SkSL::Compiler*\29 +3714:SkSL::ModifierFlags::checkPermittedFlags\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::ModifierFlags\29\20const +3715:SkSL::MethodReference::~MethodReference\28\29.1 +3716:SkSL::MethodReference::~MethodReference\28\29 +3717:SkSL::Mangler::uniqueName\28std::__2::basic_string_view>\2c\20SkSL::SymbolTable*\29 +3718:SkSL::LiteralType::slotType\28unsigned\20long\29\20const +3719:SkSL::Literal::MakeFloat\28SkSL::Position\2c\20float\2c\20SkSL::Type\20const*\29 +3720:SkSL::Literal::MakeBool\28SkSL::Position\2c\20bool\2c\20SkSL::Type\20const*\29 +3721:SkSL::Layout::checkPermittedLayout\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkEnumBitMask\29\20const +3722: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 +3723:SkSL::IRHelpers::Binary\28std::__2::unique_ptr>\2c\20SkSL::Operator\2c\20std::__2::unique_ptr>\29\20const +3724:SkSL::GlobalVarDeclaration::~GlobalVarDeclaration\28\29.1 +3725:SkSL::GlobalVarDeclaration::~GlobalVarDeclaration\28\29 +3726:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29 +3727:SkSL::GLSLCodeGenerator::writeLiteral\28SkSL::Literal\20const&\29 +3728:SkSL::GLSLCodeGenerator::writeFunctionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +3729:SkSL::GLSLCodeGenerator::shouldRewriteVoidTypedFunctions\28SkSL::FunctionDeclaration\20const*\29\20const +3730: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 +3731: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::unique_ptr>\29 +3732:SkSL::FieldAccess::FieldAccess\28SkSL::Position\2c\20std::__2::unique_ptr>\2c\20int\2c\20SkSL::FieldAccessOwnerKind\29 +3733:SkSL::Expression::isIncomplete\28SkSL::Context\20const&\29\20const +3734:SkSL::Expression::compareConstant\28SkSL::Expression\20const&\29\20const +3735:SkSL::DebugTracePriv::~DebugTracePriv\28\29 +3736:SkSL::ConstructorArrayCast::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +3737:SkSL::ConstructorArray::~ConstructorArray\28\29 +3738:SkSL::ConstantFolder::GetConstantValueOrNull\28SkSL::Expression\20const&\29 +3739:SkSL::Compiler::runInliner\28SkSL::Inliner*\2c\20std::__2::vector>\2c\20std::__2::allocator>>>\20const&\2c\20SkSL::SymbolTable*\2c\20SkSL::ProgramUsage*\29 +3740:SkSL::Block::~Block\28\29 +3741:SkSL::BinaryExpression::~BinaryExpression\28\29 +3742: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 +3743:SkSL::Analysis::GetReturnComplexity\28SkSL::FunctionDefinition\20const&\29 +3744:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29 +3745:SkSL::Analysis::CallsColorTransformIntrinsics\28SkSL::Program\20const&\29 +3746:SkSL::AliasType::bitWidth\28\29\20const +3747:SkRuntimeShader::uniformData\28SkColorSpace\20const*\29\20const +3748:SkRuntimeEffectPriv::VarAsUniform\28SkSL::Variable\20const&\2c\20SkSL::Context\20const&\2c\20unsigned\20long*\29 +3749:SkRuntimeEffect::makeShader\28sk_sp\2c\20SkSpan\2c\20SkMatrix\20const*\29\20const +3750:SkRuntimeEffect::MakeForShader\28SkString\29 +3751:SkRgnBuilder::~SkRgnBuilder\28\29 +3752:SkResourceCache::checkMessages\28\29 +3753:SkResourceCache::Key::operator==\28SkResourceCache::Key\20const&\29\20const +3754:SkRegion::translate\28int\2c\20int\2c\20SkRegion*\29\20const +3755:SkRegion::op\28SkRegion\20const&\2c\20SkIRect\20const&\2c\20SkRegion::Op\29 +3756:SkRegion::RunHead::findScanline\28int\29\20const +3757:SkRegion::RunHead::Alloc\28int\29 +3758:SkReduceOrder::Cubic\28SkPoint\20const*\2c\20SkPoint*\29 +3759:SkRect::offset\28float\2c\20float\29 +3760:SkRect*\20SkRecorder::copy\28SkRect\20const*\29 +3761:SkRecords::PreCachedPath::PreCachedPath\28SkPath\20const&\29 +3762:SkRecords::FillBounds::pushSaveBlock\28SkPaint\20const*\29 +3763:SkRecorder::~SkRecorder\28\29 +3764:SkRecordDraw\28SkRecord\20const&\2c\20SkCanvas*\2c\20SkPicture\20const*\20const*\2c\20SkDrawable*\20const*\2c\20int\2c\20SkBBoxHierarchy\20const*\2c\20SkPicture::AbortCallback*\29 +3765:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29 +3766:SkRasterPipelineBlitter::blitRectWithTrace\28int\2c\20int\2c\20int\2c\20int\2c\20bool\29 +3767:SkRasterPipelineBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29::$_0::operator\28\29\28int\2c\20SkRasterPipeline_MemoryCtx*\29\20const +3768:SkRasterPipelineBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +3769: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 +3770:SkRasterPipeline::appendStore\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +3771:SkRasterClip::op\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkClipOp\2c\20bool\29 +3772:SkRasterClip::convertToAA\28\29 +3773:SkRRectPriv::ConservativeIntersect\28SkRRect\20const&\2c\20SkRRect\20const&\29::$_1::operator\28\29\28SkRect\20const&\2c\20SkRRect::Corner\29\20const +3774:SkRRectPriv::ConservativeIntersect\28SkRRect\20const&\2c\20SkRRect\20const&\29 +3775:SkRRect::scaleRadii\28\29 +3776:SkRRect::AreRectAndRadiiValid\28SkRect\20const&\2c\20SkPoint\20const*\29 +3777:SkRGBA4f<\28SkAlphaType\292>*\20SkArenaAlloc::makeArray>\28unsigned\20long\29 +3778:SkQuadraticEdge::updateQuadratic\28\29 +3779:SkQuadConstruct::initWithStart\28SkQuadConstruct*\29 +3780:SkQuadConstruct::initWithEnd\28SkQuadConstruct*\29 +3781:SkPointPriv::DistanceToLineBetweenSqd\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPointPriv::Side*\29 +3782:SkPoint::setNormalize\28float\2c\20float\29 +3783:SkPoint::setLength\28float\2c\20float\2c\20float\29 +3784:SkPixmap::setColorSpace\28sk_sp\29 +3785:SkPixmap::rowBytesAsPixels\28\29\20const +3786:SkPixelRef::getGenerationID\28\29\20const +3787:SkPictureRecorder::~SkPictureRecorder\28\29 +3788:SkPictureRecorder::SkPictureRecorder\28\29 +3789:SkPicture::~SkPicture\28\29 +3790:SkPerlinNoiseShader::PaintingData::random\28\29 +3791:SkPathWriter::~SkPathWriter\28\29 +3792:SkPathWriter::update\28SkOpPtT\20const*\29 +3793:SkPathWriter::lineTo\28\29 +3794:SkPathWriter::SkPathWriter\28SkPath&\29 +3795:SkPathStroker::strokeCloseEnough\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20SkQuadConstruct*\29\20const +3796:SkPathStroker::setRayPts\28SkPoint\20const&\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +3797:SkPathStroker::quadPerpRay\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +3798:SkPathStroker::finishContour\28bool\2c\20bool\29 +3799:SkPathStroker::conicPerpRay\28SkConic\20const&\2c\20float\2c\20SkPoint*\2c\20SkPoint*\2c\20SkPoint*\29\20const +3800:SkPathPriv::IsRectContour\28SkPath\20const&\2c\20bool\2c\20int*\2c\20SkPoint\20const**\2c\20bool*\2c\20SkPathDirection*\2c\20SkRect*\29 +3801:SkPathPriv::AddGenIDChangeListener\28SkPath\20const&\2c\20sk_sp\29 +3802:SkPathEffect::filterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +3803:SkPathBuilder::quadTo\28SkPoint\2c\20SkPoint\29 +3804:SkPathBuilder::moveTo\28float\2c\20float\29 +3805:SkPathBuilder::cubicTo\28SkPoint\2c\20SkPoint\2c\20SkPoint\29 +3806:SkPathBuilder::addRect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +3807:SkPath::setLastPt\28float\2c\20float\29 +3808:SkPath::reversePathTo\28SkPath\20const&\29 +3809:SkPath::rQuadTo\28float\2c\20float\2c\20float\2c\20float\29 +3810:SkPath::isLastContourClosed\28\29\20const +3811:SkPath::cubicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\2c\20float\29 +3812:SkPath::contains\28float\2c\20float\29\20const +3813:SkPath::conicTo\28float\2c\20float\2c\20float\2c\20float\2c\20float\29 +3814:SkPath::arcTo\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\29::$_0::operator\28\29\28SkPoint\20const&\29\20const +3815:SkPath::addPath\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPath::AddPathMode\29 +3816:SkPath::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +3817:SkPath::Rect\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +3818:SkPath::Iter::autoClose\28SkPoint*\29 +3819:SkPath*\20SkTLazy::init<>\28\29 +3820:SkPaintToGrPaintReplaceShader\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20std::__2::unique_ptr>\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +3821:SkPaint::getBlendMode_or\28SkBlendMode\29\20const +3822:SkOpSpanBase::checkForCollapsedCoincidence\28\29 +3823:SkOpSpan::setWindSum\28int\29 +3824:SkOpSegment::updateWindingReverse\28SkOpAngle\20const*\29 +3825:SkOpSegment::match\28SkOpPtT\20const*\2c\20SkOpSegment\20const*\2c\20double\2c\20SkPoint\20const&\29\20const +3826:SkOpSegment::markWinding\28SkOpSpan*\2c\20int\2c\20int\29 +3827:SkOpSegment::markAngle\28int\2c\20int\2c\20int\2c\20int\2c\20SkOpAngle\20const*\2c\20SkOpSpanBase**\29 +3828:SkOpSegment::markAngle\28int\2c\20int\2c\20SkOpAngle\20const*\2c\20SkOpSpanBase**\29 +3829:SkOpSegment::markAndChaseWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int\2c\20int\2c\20SkOpSpanBase**\29 +3830:SkOpSegment::markAllDone\28\29 +3831:SkOpSegment::dSlopeAtT\28double\29\20const +3832:SkOpSegment::addT\28double\2c\20SkPoint\20const&\29 +3833:SkOpSegment::activeWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\29 +3834:SkOpPtT::oppPrev\28SkOpPtT\20const*\29\20const +3835:SkOpPtT::contains\28SkOpSegment\20const*\29\20const +3836:SkOpPtT::Overlaps\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const**\2c\20SkOpPtT\20const**\29 +3837:SkOpEdgeBuilder::closeContour\28SkPoint\20const&\2c\20SkPoint\20const&\29 +3838:SkOpCoincidence::expand\28\29 +3839:SkOpCoincidence::Ordered\28SkOpSegment\20const*\2c\20SkOpSegment\20const*\29 +3840:SkOpCoincidence::Ordered\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\29 +3841:SkOpAngle::orderable\28SkOpAngle*\29 +3842:SkOpAngle::lineOnOneSide\28SkDPoint\20const&\2c\20SkDVector\20const&\2c\20SkOpAngle\20const*\2c\20bool\29\20const +3843:SkOpAngle::computeSector\28\29 +3844:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\2c\20sk_sp\29 +3845:SkMipmapAccessor::SkMipmapAccessor\28SkImage_Base\20const*\2c\20SkMatrix\20const&\2c\20SkMipmapMode\29::$_0::operator\28\29\28\29\20const +3846:SkMessageBus::Get\28\29 +3847:SkMessageBus::Get\28\29 +3848:SkMessageBus::BufferFinishedMessage\2c\20GrDirectContext::DirectContextID\2c\20false>::Get\28\29 +3849:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +3850:SkMatrixPriv::InverseMapRect\28SkMatrix\20const&\2c\20SkRect*\2c\20SkRect\20const&\29 +3851:SkMatrix::setPolyToPoly\28SkPoint\20const*\2c\20SkPoint\20const*\2c\20int\29 +3852:SkMatrix::preservesRightAngles\28float\29\20const +3853:SkMatrix::mapRectToQuad\28SkPoint*\2c\20SkRect\20const&\29\20const +3854:SkMatrix::mapRectScaleTranslate\28SkRect*\2c\20SkRect\20const&\29\20const +3855:SkMatrix::getMinMaxScales\28float*\29\20const +3856:SkMatrix::getMapXYProc\28\29\20const +3857:SkMaskBuilder::PrepareDestination\28int\2c\20int\2c\20SkMask\20const&\29 +3858:SkLineParameters::cubicEndPoints\28SkDCubic\20const&\2c\20int\2c\20int\29 +3859:SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry::~Entry\28\29 +3860:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::reset\28\29 +3861:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry::~Entry\28\29 +3862:SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_matrix_conv_effect\28SkKnownRuntimeEffects::\28anonymous\20namespace\29::MatrixConvolutionImpl\2c\20SkRuntimeEffect::Options\20const&\29 +3863:SkJSONWriter::separator\28bool\29 +3864:SkJSONWriter::multiline\28\29\20const +3865:SkJSONWriter::flush\28\29 +3866:SkJSONWriter::appendS32\28int\29 +3867:SkIntersections::intersectRay\28SkDQuad\20const&\2c\20SkDLine\20const&\29 +3868:SkIntersections::intersectRay\28SkDLine\20const&\2c\20SkDLine\20const&\29 +3869:SkIntersections::intersectRay\28SkDCubic\20const&\2c\20SkDLine\20const&\29 +3870:SkIntersections::intersectRay\28SkDConic\20const&\2c\20SkDLine\20const&\29 +3871:SkIntersections::computePoints\28SkDLine\20const&\2c\20int\29 +3872:SkIntersections::cleanUpParallelLines\28bool\29 +3873:SkImage_Raster::SkImage_Raster\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20int\29 +3874:SkImage_Lazy::~SkImage_Lazy\28\29.1 +3875:SkImage_Lazy::Validator::~Validator\28\29 +3876:SkImage_Lazy::Validator::Validator\28sk_sp\2c\20SkColorType\20const*\2c\20sk_sp\29 +3877:SkImage_Lazy::SkImage_Lazy\28SkImage_Lazy::Validator*\29 +3878:SkImage_Ganesh::~SkImage_Ganesh\28\29 +3879:SkImage_Ganesh::ProxyChooser::chooseProxy\28GrRecordingContext*\29 +3880:SkImage_Base::isYUVA\28\29\20const +3881:SkImageShader::MakeSubset\28sk_sp\2c\20SkRect\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20bool\29 +3882:SkImageShader::CubicResamplerMatrix\28float\2c\20float\29 +3883:SkImageInfo::minRowBytes64\28\29\20const +3884:SkImageInfo::makeAlphaType\28SkAlphaType\29\20const +3885:SkImageInfo::MakeN32Premul\28SkISize\29 +3886:SkImageGenerator::getPixels\28SkPixmap\20const&\29 +3887:SkImageFilters::Blend\28SkBlendMode\2c\20sk_sp\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +3888:SkImageFilter_Base::filterImage\28skif::Context\20const&\29\20const +3889:SkImageFilter_Base::affectsTransparentBlack\28\29\20const +3890:SkImageFilterCacheKey::operator==\28SkImageFilterCacheKey\20const&\29\20const +3891:SkImage::readPixels\28GrDirectContext*\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +3892:SkImage::peekPixels\28SkPixmap*\29\20const +3893:SkImage::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\29\20const +3894:SkIRect\20skif::Mapping::map\28SkIRect\20const&\2c\20SkMatrix\20const&\29 +3895:SkIRect::offset\28SkIPoint\20const&\29 +3896:SkIRect::containsNoEmptyCheck\28SkIRect\20const&\29\20const +3897:SkIRect::MakeXYWH\28int\2c\20int\2c\20int\2c\20int\29 +3898:SkIDChangeListener::List::~List\28\29 +3899:SkIDChangeListener::List::add\28sk_sp\29 +3900: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 +3901: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 +3902:SkGradientBaseShader::AppendInterpolatedToDstStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20bool\2c\20SkGradientShader::Interpolation\20const&\2c\20SkColorSpace\20const*\2c\20SkColorSpace\20const*\29 +3903:SkGlyph::mask\28\29\20const +3904:SkFontScanner_FreeType::~SkFontScanner_FreeType\28\29 +3905:SkFontScanner_FreeType::openFace\28SkStreamAsset*\2c\20int\2c\20FT_StreamRec_*\29\20const +3906:SkFontScanner_FreeType::GetAxes\28FT_FaceRec_*\2c\20skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>*\29 +3907:SkFontPriv::ApproximateTransformedTextSize\28SkFont\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\20const&\29 +3908:SkFontMgr::matchFamily\28char\20const*\29\20const +3909:SkFont::getWidthsBounds\28unsigned\20short\20const*\2c\20int\2c\20float*\2c\20SkRect*\2c\20SkPaint\20const*\29\20const +3910:SkFont::getBounds\28unsigned\20short\20const*\2c\20int\2c\20SkRect*\2c\20SkPaint\20const*\29\20const +3911:SkFindCubicMaxCurvature\28SkPoint\20const*\2c\20float*\29 +3912:SkFILEStream::SkFILEStream\28std::__2::shared_ptr<_IO_FILE>\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29 +3913:SkEmptyFontMgr::onMatchFamilyStyleCharacter\28char\20const*\2c\20SkFontStyle\20const&\2c\20char\20const**\2c\20int\2c\20int\29\20const +3914:SkEdgeClipper::appendQuad\28SkPoint\20const*\2c\20bool\29 +3915:SkEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkIRect\20const*\2c\20int\29 +3916:SkDynamicMemoryWStream::write\28void\20const*\2c\20unsigned\20long\29 +3917:SkDrawTreatAAStrokeAsHairline\28float\2c\20SkMatrix\20const&\2c\20float*\29 +3918:SkDrawBase::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29\20const +3919:SkDrawBase::drawDevicePoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\2c\20SkDevice*\29\20const +3920:SkDevice::getRelativeTransform\28SkDevice\20const&\29\20const +3921:SkDevice::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +3922:SkDevice::drawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +3923:SkDevice::SkDevice\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +3924:SkData::MakeZeroInitialized\28unsigned\20long\29 +3925:SkData::MakeWithoutCopy\28void\20const*\2c\20unsigned\20long\29 +3926:SkDQuad::FindExtrema\28double\20const*\2c\20double*\29 +3927:SkDCubic::subDivide\28double\2c\20double\29\20const +3928:SkDCubic::searchRoots\28double*\2c\20int\2c\20double\2c\20SkDCubic::SearchAxis\2c\20double*\29\20const +3929:SkDCubic::monotonicInX\28\29\20const +3930:SkDCubic::findInflections\28double*\29\20const +3931:SkDConic::FindExtrema\28double\20const*\2c\20float\2c\20double*\29 +3932:SkCubicEdge::updateCubic\28\29 +3933:SkContourMeasureIter::next\28\29 +3934:SkContourMeasureIter::Impl::compute_quad_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3935:SkContourMeasureIter::Impl::compute_cubic_segs\28SkPoint\20const*\2c\20float\2c\20int\2c\20int\2c\20unsigned\20int\2c\20int\29 +3936: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 +3937:SkContourMeasure::distanceToSegment\28float\2c\20float*\29\20const +3938:SkConic::evalAt\28float\2c\20SkPoint*\2c\20SkPoint*\29\20const +3939:SkConic::evalAt\28float\29\20const +3940:SkConic::TransformW\28SkPoint\20const*\2c\20float\2c\20SkMatrix\20const&\29 +3941:SkCompressedDataSize\28SkTextureCompressionType\2c\20SkISize\2c\20skia_private::TArray*\2c\20bool\29 +3942:SkColorToPMColor4f\28unsigned\20int\2c\20GrColorInfo\20const&\29 +3943:SkColorSpace::MakeRGB\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +3944:SkColorInfo::operator=\28SkColorInfo&&\29 +3945:SkCoincidentSpans::extend\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\2c\20SkOpPtT\20const*\29 +3946:SkChopQuadAtYExtrema\28SkPoint\20const*\2c\20SkPoint*\29 +3947:SkCapabilities::RasterBackend\28\29 +3948:SkCanvas::scale\28float\2c\20float\29 +3949:SkCanvas::saveLayer\28SkCanvas::SaveLayerRec\20const&\29 +3950:SkCanvas::onResetClip\28\29 +3951:SkCanvas::onClipShader\28sk_sp\2c\20SkClipOp\29 +3952:SkCanvas::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +3953:SkCanvas::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3954:SkCanvas::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3955:SkCanvas::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +3956:SkCanvas::internalSave\28\29 +3957:SkCanvas::internalRestore\28\29 +3958:SkCanvas::internalDrawDeviceWithFilter\28SkDevice*\2c\20SkDevice*\2c\20SkSpan>\2c\20SkPaint\20const&\2c\20SkCanvas::DeviceCompatibleWithFilter\2c\20SkColorInfo\20const&\2c\20float\2c\20bool\29 +3959:SkCanvas::drawColor\28unsigned\20int\2c\20SkBlendMode\29 +3960:SkCanvas::clipRect\28SkRect\20const&\2c\20bool\29 +3961:SkCanvas::clipPath\28SkPath\20const&\2c\20bool\29 +3962:SkCanvas::clear\28unsigned\20int\29 +3963:SkCanvas::clear\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +3964:SkCanvas::attemptBlurredRRectDraw\28SkRRect\20const&\2c\20SkPaint\20const&\2c\20SkEnumBitMask\29 +3965:SkCachedData::~SkCachedData\28\29 +3966:SkBlitterClipper::~SkBlitterClipper\28\29 +3967:SkBlitter::blitRegion\28SkRegion\20const&\29 +3968:SkBlendShader::~SkBlendShader\28\29 +3969:SkBitmapDevice::SkBitmapDevice\28SkBitmap\20const&\2c\20SkSurfaceProps\20const&\2c\20void*\29 +3970:SkBitmapDevice::BDDraw::~BDDraw\28\29 +3971:SkBitmapDevice::BDDraw::BDDraw\28SkBitmapDevice*\29 +3972:SkBitmap::writePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +3973:SkBitmap::setPixels\28void*\29 +3974:SkBitmap::readPixels\28SkPixmap\20const&\2c\20int\2c\20int\29\20const +3975:SkBitmap::installPixels\28SkPixmap\20const&\29 +3976:SkBitmap::allocPixels\28\29 +3977:SkBitmap::SkBitmap\28SkBitmap&&\29 +3978:SkBinaryWriteBuffer::writeScalarArray\28float\20const*\2c\20unsigned\20int\29 +3979:SkBinaryWriteBuffer::writeInt\28int\29 +3980:SkBaseShadowTessellator::~SkBaseShadowTessellator\28\29.1 +3981:SkBaseShadowTessellator::handleLine\28SkPoint\20const&\29 +3982:SkAutoPixmapStorage::freeStorage\28\29 +3983:SkAutoPathBoundsUpdate::~SkAutoPathBoundsUpdate\28\29 +3984:SkAutoPathBoundsUpdate::SkAutoPathBoundsUpdate\28SkPath*\2c\20SkRect\20const&\29 +3985:SkAutoMalloc::reset\28unsigned\20long\2c\20SkAutoMalloc::OnShrink\29 +3986:SkAutoDescriptor::free\28\29 +3987:SkArenaAllocWithReset::reset\28\29 +3988:SkAnalyticQuadraticEdge::updateQuadratic\28\29 +3989:SkAnalyticEdge::goY\28int\29 +3990:SkAnalyticCubicEdge::updateCubic\28bool\29 +3991:SkAAClipBlitter::ensureRunsAndAA\28\29 +3992:SkAAClip::setRegion\28SkRegion\20const&\29 +3993:SkAAClip::setRect\28SkIRect\20const&\29 +3994:SkAAClip::quickContains\28int\2c\20int\2c\20int\2c\20int\29\20const +3995:SkAAClip::RunHead::Alloc\28int\2c\20unsigned\20long\29 +3996:SkAAClip::Builder::AppendRun\28SkTDArray&\2c\20unsigned\20int\2c\20int\29 +3997:Sk4f_toL32\28skvx::Vec<4\2c\20float>\20const&\29 +3998:SSVertex*\20SkArenaAlloc::make\28GrTriangulator::Vertex*&\29 +3999:RunBasedAdditiveBlitter::flush\28\29 +4000:R.9044 +4001:OpAsWinding::nextEdge\28Contour&\2c\20OpAsWinding::Edge\29 +4002:OT::sbix::get_strike\28unsigned\20int\29\20const +4003:OT::hb_paint_context_t::get_color\28unsigned\20int\2c\20float\2c\20int*\29 +4004:OT::hb_ot_apply_context_t::skipping_iterator_t::prev\28unsigned\20int*\29 +4005:OT::hb_ot_apply_context_t::check_glyph_property\28hb_glyph_info_t\20const*\2c\20unsigned\20int\29\20const +4006:OT::glyf_impl::CompositeGlyphRecord::translate\28contour_point_t\20const&\2c\20hb_array_t\29 +4007:OT::VariationStore::sanitize\28hb_sanitize_context_t*\29\20const +4008:OT::VarSizedBinSearchArrayOf>\2c\20OT::IntType\2c\20false>>>::get_length\28\29\20const +4009:OT::Script::get_lang_sys\28unsigned\20int\29\20const +4010:OT::PaintSkew::sanitize\28hb_sanitize_context_t*\29\20const +4011:OT::OpenTypeOffsetTable::sanitize\28hb_sanitize_context_t*\29\20const +4012:OT::OS2::has_data\28\29\20const +4013: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 +4014: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 +4015:OT::HVARVVAR::sanitize\28hb_sanitize_context_t*\29\20const +4016:OT::GSUBGPOS::get_lookup_count\28\29\20const +4017:OT::GSUBGPOS::get_feature_list\28\29\20const +4018:OT::GSUBGPOS::accelerator_t::get_accel\28unsigned\20int\29\20const +4019:OT::Device::get_y_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +4020:OT::Device::get_x_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +4021:OT::ClipList::get_extents\28unsigned\20int\2c\20hb_glyph_extents_t*\2c\20OT::VarStoreInstancer\20const&\29\20const +4022: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 +4023:OT::ArrayOf>::serialize\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20bool\29 +4024:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29 +4025:LineQuadraticIntersections::uniqueAnswer\28double\2c\20SkDPoint\20const&\29 +4026:LineQuadraticIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineQuadraticIntersections::PinTPoint\29 +4027:LineQuadraticIntersections::checkCoincident\28\29 +4028:LineQuadraticIntersections::addLineNearEndPoints\28\29 +4029:LineCubicIntersections::uniqueAnswer\28double\2c\20SkDPoint\20const&\29 +4030:LineCubicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineCubicIntersections::PinTPoint\29 +4031:LineCubicIntersections::checkCoincident\28\29 +4032:LineCubicIntersections::addLineNearEndPoints\28\29 +4033:LineConicIntersections::validT\28double*\2c\20double\2c\20double*\29 +4034:LineConicIntersections::uniqueAnswer\28double\2c\20SkDPoint\20const&\29 +4035:LineConicIntersections::pinTs\28double*\2c\20double*\2c\20SkDPoint*\2c\20LineConicIntersections::PinTPoint\29 +4036:LineConicIntersections::checkCoincident\28\29 +4037:LineConicIntersections::addLineNearEndPoints\28\29 +4038:HandleInnerJoin\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +4039:GrVertexChunkBuilder::~GrVertexChunkBuilder\28\29 +4040:GrTriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +4041:GrTriangulator::splitEdge\28GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +4042:GrTriangulator::pathToPolys\28float\2c\20SkRect\20const&\2c\20bool*\29 +4043:GrTriangulator::makePoly\28GrTriangulator::Poly**\2c\20GrTriangulator::Vertex*\2c\20int\29\20const +4044:GrTriangulator::generateCubicPoints\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20GrTriangulator::VertexList*\2c\20int\29\20const +4045:GrTriangulator::checkForIntersection\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +4046:GrTriangulator::applyFillType\28int\29\20const +4047:GrTriangulator::SortMesh\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +4048:GrTriangulator::MonotonePoly::addEdge\28GrTriangulator::Edge*\29 +4049:GrTriangulator::GrTriangulator\28SkPath\20const&\2c\20SkArenaAlloc*\29 +4050:GrTriangulator::Edge::insertBelow\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +4051:GrTriangulator::Edge::insertAbove\28GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +4052:GrTriangulator::BreadcrumbTriangleList::append\28SkArenaAlloc*\2c\20SkPoint\2c\20SkPoint\2c\20SkPoint\2c\20int\29 +4053:GrThreadSafeCache::recycleEntry\28GrThreadSafeCache::Entry*\29 +4054:GrThreadSafeCache::dropAllRefs\28\29 +4055:GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +4056:GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +4057:GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +4058:GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +4059:GrTextureRenderTargetProxy::callbackDesc\28\29\20const +4060:GrTextureProxy::~GrTextureProxy\28\29 +4061: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 +4062:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::$_3::operator\28\29\28bool\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +4063:GrTexture::GrTexture\28GrGpu*\2c\20SkISize\20const&\2c\20skgpu::Protected\2c\20GrTextureType\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +4064:GrTexture::ComputeScratchKey\28GrCaps\20const&\2c\20GrBackendFormat\20const&\2c\20SkISize\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20skgpu::ScratchKey*\29 +4065:GrSurfaceProxyView::asTextureProxyRef\28\29\20const +4066:GrSurfaceProxy::instantiateImpl\28GrResourceProvider*\2c\20int\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::UniqueKey\20const*\29 +4067:GrSurfaceProxy::GrSurfaceProxy\28sk_sp\2c\20SkBackingFit\2c\20GrSurfaceProxy::UseAllocator\29 +4068:GrSurface::setRelease\28sk_sp\29 +4069:GrStyledShape::styledBounds\28\29\20const +4070:GrStyledShape::addGenIDChangeListener\28sk_sp\29\20const +4071:GrStyledShape::GrStyledShape\28SkRect\20const&\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +4072:GrStyle::isSimpleHairline\28\29\20const +4073:GrStyle::initPathEffect\28sk_sp\29 +4074:GrStencilSettings::Face::reset\28GrTStencilFaceSettings\20const&\2c\20bool\2c\20int\29 +4075:GrSimpleMeshDrawOpHelper::fixedFunctionFlags\28\29\20const +4076:GrShape::setPath\28SkPath\20const&\29 +4077:GrShape::segmentMask\28\29\20const +4078:GrShape::operator=\28GrShape\20const&\29 +4079:GrShape::convex\28bool\29\20const +4080:GrShaderVar::GrShaderVar\28SkString\2c\20SkSLType\2c\20int\29 +4081:GrResourceProvider::findResourceByUniqueKey\28skgpu::UniqueKey\20const&\29 +4082:GrResourceProvider::createPatternedIndexBuffer\28unsigned\20short\20const*\2c\20int\2c\20int\2c\20int\2c\20skgpu::UniqueKey\20const*\29 +4083:GrResourceCache::removeUniqueKey\28GrGpuResource*\29 +4084:GrResourceCache::getNextTimestamp\28\29 +4085:GrResourceCache::findAndRefScratchResource\28skgpu::ScratchKey\20const&\29 +4086:GrRenderTask::dependsOn\28GrRenderTask\20const*\29\20const +4087:GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +4088:GrRenderTargetProxy::canUseStencil\28GrCaps\20const&\29\20const +4089: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 +4090:GrRecordingContextPriv::addOnFlushCallbackObject\28GrOnFlushCallbackObject*\29 +4091:GrRecordingContext::~GrRecordingContext\28\29 +4092:GrQuadUtils::TessellationHelper::reset\28GrQuad\20const&\2c\20GrQuad\20const*\29 +4093:GrQuadUtils::TessellationHelper::getEdgeEquations\28\29 +4094:GrQuadUtils::TessellationHelper::Vertices::moveAlong\28GrQuadUtils::TessellationHelper::EdgeVectors\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4095:GrQuadUtils::ResolveAAType\28GrAAType\2c\20GrQuadAAFlags\2c\20GrQuad\20const&\2c\20GrAAType*\2c\20GrQuadAAFlags*\29 +4096:GrQuadUtils::CropToRect\28SkRect\20const&\2c\20GrAA\2c\20DrawQuad*\2c\20bool\29 +4097:GrQuadBuffer<\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA>::append\28GrQuad\20const&\2c\20\28anonymous\20namespace\29::FillRectOpImpl::ColorAndAA&&\2c\20GrQuad\20const*\29 +4098:GrQuad::setQuadType\28GrQuad::Type\29 +4099:GrPorterDuffXPFactory::SimpleSrcOverXP\28\29 +4100:GrPipeline*\20SkArenaAlloc::make\28GrPipeline::InitArgs&\2c\20GrProcessorSet&&\2c\20GrAppliedClip&&\29 +4101:GrPersistentCacheUtils::UnpackCachedShaders\28SkReadBuffer*\2c\20std::__2::basic_string\2c\20std::__2::allocator>*\2c\20SkSL::ProgramInterface*\2c\20int\2c\20GrPersistentCacheUtils::ShaderMetadata*\29 +4102:GrPathUtils::quadraticPointCount\28SkPoint\20const*\2c\20float\29 +4103:GrPathUtils::convertCubicToQuads\28SkPoint\20const*\2c\20float\2c\20skia_private::TArray*\29 +4104:GrPathTessellationShader::Make\28GrShaderCaps\20const&\2c\20SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20skgpu::tess::PatchAttribs\29 +4105:GrPathTessellationShader::MakeSimpleTriangleShader\28SkArenaAlloc*\2c\20SkMatrix\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +4106:GrOvalOpFactory::MakeOvalOp\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\2c\20GrShaderCaps\20const*\29 +4107:GrOpsRenderPass::drawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +4108:GrOpFlushState::draw\28int\2c\20int\29 +4109:GrOp::chainConcat\28std::__2::unique_ptr>\29 +4110:GrNonAtomicRef::unref\28\29\20const +4111:GrModulateAtlasCoverageEffect::GrModulateAtlasCoverageEffect\28GrModulateAtlasCoverageEffect\20const&\29 +4112:GrMipLevel::operator=\28GrMipLevel&&\29 +4113:GrMeshDrawOp::PatternHelper::PatternHelper\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +4114:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29 +4115:GrImageInfo::makeDimensions\28SkISize\29\20const +4116:GrGpuResource::~GrGpuResource\28\29 +4117:GrGpuResource::removeScratchKey\28\29 +4118:GrGpuResource::registerWithCacheWrapped\28GrWrapCacheable\29 +4119:GrGpuResource::getResourceName\28\29\20const +4120:GrGpuResource::dumpMemoryStatisticsPriv\28SkTraceMemoryDump*\2c\20SkString\20const&\2c\20char\20const*\2c\20unsigned\20long\29\20const +4121:GrGpuResource::CreateUniqueID\28\29 +4122:GrGpuBuffer::onGpuMemorySize\28\29\20const +4123:GrGpu::resolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +4124:GrGeometryProcessor::TextureSampler::TextureSampler\28GrSamplerState\2c\20GrBackendFormat\20const&\2c\20skgpu::Swizzle\20const&\29 +4125:GrGeometryProcessor::TextureSampler::TextureSampler\28GrGeometryProcessor::TextureSampler&&\29 +4126:GrGeometryProcessor::ProgramImpl::TransformInfo::TransformInfo\28GrGeometryProcessor::ProgramImpl::TransformInfo\20const&\29 +4127:GrGeometryProcessor::ProgramImpl::AddMatrixKeys\28GrShaderCaps\20const&\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\29 +4128:GrGeometryProcessor::Attribute::size\28\29\20const +4129:GrGLUniformHandler::~GrGLUniformHandler\28\29 +4130:GrGLUniformHandler::getUniformVariable\28GrResourceHandle\29\20const +4131:GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +4132:GrGLTextureRenderTarget::onRelease\28\29 +4133:GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +4134:GrGLTextureRenderTarget::onAbandon\28\29 +4135:GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +4136:GrGLTexture::~GrGLTexture\28\29 +4137:GrGLTexture::onRelease\28\29 +4138:GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +4139:GrGLTexture::TextureTypeFromTarget\28unsigned\20int\29 +4140:GrGLSemaphore::Make\28GrGLGpu*\2c\20bool\29 +4141:GrGLSLVaryingHandler::~GrGLSLVaryingHandler\28\29 +4142:GrGLSLUniformHandler::addInputSampler\28skgpu::Swizzle\20const&\2c\20char\20const*\29 +4143:GrGLSLUniformHandler::UniformInfo::~UniformInfo\28\29 +4144:GrGLSLShaderBuilder::appendTextureLookup\28SkString*\2c\20GrResourceHandle\2c\20char\20const*\29\20const +4145:GrGLSLShaderBuilder::appendColorGamutXform\28char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +4146:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +4147:GrGLSLProgramDataManager::setSkMatrix\28GrResourceHandle\2c\20SkMatrix\20const&\29\20const +4148:GrGLSLProgramBuilder::writeFPFunction\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +4149:GrGLSLProgramBuilder::nameExpression\28SkString*\2c\20char\20const*\29 +4150:GrGLSLProgramBuilder::fragmentProcessorHasCoordsParam\28GrFragmentProcessor\20const*\29\20const +4151:GrGLSLProgramBuilder::emitSampler\28GrBackendFormat\20const&\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\29 +4152:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +4153:GrGLSLBlend::BlendKey\28SkBlendMode\29 +4154:GrGLRenderTarget::~GrGLRenderTarget\28\29 +4155:GrGLRenderTarget::onRelease\28\29 +4156:GrGLRenderTarget::onAbandon\28\29 +4157:GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +4158:GrGLProgramDataManager::~GrGLProgramDataManager\28\29 +4159:GrGLProgramBuilder::~GrGLProgramBuilder\28\29 +4160:GrGLProgramBuilder::computeCountsAndStrides\28unsigned\20int\2c\20GrGeometryProcessor\20const&\2c\20bool\29 +4161:GrGLProgramBuilder::addInputVars\28SkSL::ProgramInterface\20const&\29 +4162:GrGLOpsRenderPass::dmsaaLoadStoreBounds\28\29\20const +4163:GrGLOpsRenderPass::bindInstanceBuffer\28GrBuffer\20const*\2c\20int\29 +4164:GrGLGpu::insertSemaphore\28GrSemaphore*\29 +4165:GrGLGpu::flushViewport\28SkIRect\20const&\2c\20int\2c\20GrSurfaceOrigin\29 +4166:GrGLGpu::flushScissor\28GrScissorState\20const&\2c\20int\2c\20GrSurfaceOrigin\29 +4167:GrGLGpu::flushClearColor\28std::__2::array\29 +4168:GrGLGpu::disableStencil\28\29 +4169: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 +4170:GrGLGpu::copySurfaceAsDraw\28GrSurface*\2c\20bool\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +4171:GrGLGpu::HWVertexArrayState::bindInternalVertexArray\28GrGLGpu*\2c\20GrBuffer\20const*\29 +4172: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 +4173: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 +4174: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 +4175: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 +4176:GrGLContextInfo::~GrGLContextInfo\28\29 +4177:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrGLFormat\29\20const +4178:GrGLCaps::canCopyAsDraw\28GrGLFormat\2c\20bool\2c\20bool\29\20const +4179:GrGLBuffer::~GrGLBuffer\28\29 +4180:GrGLBuffer::Make\28GrGLGpu*\2c\20unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +4181:GrGLBackendTextureData::GrGLBackendTextureData\28GrGLTextureInfo\20const&\2c\20sk_sp\29 +4182:GrGLAttribArrayState::invalidate\28\29 +4183:GrGLAttribArrayState::enableVertexArrays\28GrGLGpu\20const*\2c\20int\2c\20GrPrimitiveRestart\29 +4184:GrGLAttachment::GrGLAttachment\28GrGpu*\2c\20unsigned\20int\2c\20SkISize\2c\20GrAttachment::UsageFlags\2c\20int\2c\20GrGLFormat\2c\20std::__2::basic_string_view>\29 +4185: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 +4186:GrFragmentProcessors::IsSupported\28SkMaskFilter\20const*\29 +4187:GrFragmentProcessor::makeProgramImpl\28\29\20const +4188:GrFragmentProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +4189:GrFragmentProcessor::ProgramImpl::~ProgramImpl\28\29 +4190:GrFragmentProcessor::MulInputByChildAlpha\28std::__2::unique_ptr>\29 +4191:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +4192:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29 +4193:GrEagerDynamicVertexAllocator::lock\28unsigned\20long\2c\20int\29 +4194:GrDynamicAtlas::makeNode\28GrDynamicAtlas::Node*\2c\20int\2c\20int\2c\20int\2c\20int\29 +4195:GrDstProxyView::GrDstProxyView\28GrDstProxyView\20const&\29 +4196:GrDrawingManager::setLastRenderTask\28GrSurfaceProxy\20const*\2c\20GrRenderTask*\29 +4197:GrDrawingManager::removeRenderTasks\28\29 +4198:GrDrawingManager::insertTaskBeforeLast\28sk_sp\29 +4199:GrDrawingManager::flushSurfaces\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +4200:GrDrawOpAtlas::makeMRU\28skgpu::Plot*\2c\20unsigned\20int\29 +4201:GrDefaultGeoProcFactory::MakeForDeviceSpace\28SkArenaAlloc*\2c\20GrDefaultGeoProcFactory::Color\20const&\2c\20GrDefaultGeoProcFactory::Coverage\20const&\2c\20GrDefaultGeoProcFactory::LocalCoords\20const&\2c\20SkMatrix\20const&\29 +4202:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29 +4203:GrColorTypeClampType\28GrColorType\29 +4204:GrColorSpaceXform::Equals\28GrColorSpaceXform\20const*\2c\20GrColorSpaceXform\20const*\29 +4205:GrBufferAllocPool::unmap\28\29 +4206:GrBufferAllocPool::reset\28\29 +4207:GrBlurUtils::extract_draw_rect_from_data\28SkData*\2c\20SkIRect\20const&\29 +4208:GrBlurUtils::can_filter_mask\28SkMaskFilterBase\20const*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect*\29 +4209: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 +4210: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 +4211:GrBicubicEffect::GrBicubicEffect\28std::__2::unique_ptr>\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrBicubicEffect::Clamp\29 +4212:GrBackendTextures::MakeGL\28int\2c\20int\2c\20skgpu::Mipmapped\2c\20GrGLTextureInfo\20const&\2c\20sk_sp\2c\20std::__2::basic_string_view>\29 +4213:GrBackendFormatStencilBits\28GrBackendFormat\20const&\29 +4214:GrBackendFormat::operator==\28GrBackendFormat\20const&\29\20const +4215:GrAtlasManager::resolveMaskFormat\28skgpu::MaskFormat\29\20const +4216:GrAATriangulator::~GrAATriangulator\28\29 +4217:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrAATriangulator::EventList*\29\20const +4218:GrAATriangulator::connectSSEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29 +4219:GrAAConvexTessellator::terminate\28GrAAConvexTessellator::Ring\20const&\29 +4220:GrAAConvexTessellator::computePtAlongBisector\28int\2c\20SkPoint\20const&\2c\20int\2c\20float\2c\20SkPoint*\29\20const +4221:GrAAConvexTessellator::computeNormals\28\29::$_0::operator\28\29\28SkPoint\29\20const +4222:GrAAConvexTessellator::CandidateVerts::originatingIdx\28int\29\20const +4223:GrAAConvexTessellator::CandidateVerts::fuseWithPrior\28int\29 +4224:GrAAConvexTessellator::CandidateVerts::addNewPt\28SkPoint\20const&\2c\20int\2c\20int\2c\20bool\29 +4225:FT_Stream_Free +4226:FT_Set_Transform +4227:FT_Set_Char_Size +4228:FT_Select_Metrics +4229:FT_Request_Metrics +4230:FT_List_Finalize +4231:FT_Hypot +4232:FT_GlyphLoader_CreateExtra +4233:FT_GlyphLoader_Adjust_Points +4234:FT_Get_Paint +4235:FT_Get_MM_Var +4236:FT_Get_Color_Glyph_Paint +4237:FT_Activate_Size +4238:EllipticalRRectOp::~EllipticalRRectOp\28\29 +4239:EdgeLT::operator\28\29\28Edge\20const&\2c\20Edge\20const&\29\20const +4240:DAffineMatrix::mapPoint\28\28anonymous\20namespace\29::DPoint\20const&\29\20const +4241:DAffineMatrix::mapPoint\28SkPoint\20const&\29\20const +4242:Cr_z_inflate_table +4243:Compute_Point_Displacement +4244:CircularRRectOp::~CircularRRectOp\28\29 +4245:CFF::cff_stack_t::push\28\29 +4246:CFF::arg_stack_t::pop_int\28\29 +4247:CFF::CFFIndex>::get_size\28\29\20const +4248:Bounder::Bounder\28SkRect\20const&\2c\20SkPaint\20const&\29 +4249: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 +4250:ActiveEdgeList::DoubleRotation\28ActiveEdge*\2c\20int\29 +4251:AAT::kerxTupleKern\28int\2c\20unsigned\20int\2c\20void\20const*\2c\20AAT::hb_aat_apply_context_t*\29 +4252:AAT::feat::get_feature\28hb_aat_layout_feature_type_t\29\20const +4253:AAT::StateTable::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int*\29\20const +4254:AAT::StateTable::get_class\28unsigned\20int\2c\20unsigned\20int\29\20const +4255:AAT::StateTable::get_entry\28int\2c\20unsigned\20int\29\20const +4256:AAT::Lookup::sanitize\28hb_sanitize_context_t*\29\20const +4257:AAT::ClassTable>::get_class\28unsigned\20int\2c\20unsigned\20int\29\20const +4258:zeroinfnan +4259:zero_mark_widths_by_gdef\28hb_buffer_t*\2c\20bool\29 +4260:xyzd50_to_lab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +4261:xyz_almost_equal\28skcms_Matrix3x3\20const&\2c\20skcms_Matrix3x3\20const&\29 +4262:write_vertex_position\28GrGLSLVertexBuilder*\2c\20GrGLSLUniformHandler*\2c\20GrShaderCaps\20const&\2c\20GrShaderVar\20const&\2c\20SkMatrix\20const&\2c\20char\20const*\2c\20GrShaderVar*\2c\20GrResourceHandle*\29 +4263:write_passthrough_vertex_position\28GrGLSLVertexBuilder*\2c\20GrShaderVar\20const&\2c\20GrShaderVar*\29 +4264:winding_mono_quad\28SkPoint\20const*\2c\20float\2c\20float\2c\20int*\29 +4265:winding_mono_conic\28SkConic\20const&\2c\20float\2c\20float\2c\20int*\29 +4266:wctomb +4267:wchar_t*\20std::__2::copy\5babi:v160004\5d\2c\20wchar_t*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20wchar_t*\29 +4268:walk_simple_edges\28SkEdge*\2c\20SkBlitter*\2c\20int\2c\20int\29 +4269:vsscanf +4270:void\20std::__2::allocator_traits>::construct\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\29 +4271: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 +4272:void\20std::__2::allocator::construct\5babi:v160004\5d\28skia::textlayout::FontFeature*\2c\20SkString\20const&\2c\20int&\29 +4273:void\20std::__2::allocator::construct\5babi:v160004\5d\28Contour*\2c\20SkRect&\2c\20int&\2c\20int&\29 +4274:void\20std::__2::__variant_detail::__impl\2c\20std::__2::unique_ptr>>::__assign\5babi:v160004\5d<0ul\2c\20sk_sp>\28sk_sp&&\29 +4275:void\20std::__2::__variant_detail::__impl::__assign\5babi:v160004\5d<0ul\2c\20SkPaint>\28SkPaint&&\29 +4276: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 +4277:void\20std::__2::__tree_right_rotate\5babi:v160004\5d*>\28std::__2::__tree_node_base*\29 +4278:void\20std::__2::__tree_left_rotate\5babi:v160004\5d*>\28std::__2::__tree_node_base*\29 +4279: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 +4280: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 +4281: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 +4282:void\20std::__2::__optional_storage_base::__construct\5babi:v160004\5d\28skia::textlayout::FontArguments\20const&\29 +4283:void\20std::__2::__optional_storage_base::__assign_from\5babi:v160004\5d\20const&>\28std::__2::__optional_copy_assign_base\20const&\29 +4284:void\20std::__2::__optional_storage_base::__construct\5babi:v160004\5d\28SkPath\20const&\29 +4285: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 +4286: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 +4287:void\20std::__2::__double_or_nothing\5babi:v160004\5d\28std::__2::unique_ptr&\2c\20char*&\2c\20char*&\29 +4288:void\20sorted_merge<&sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +4289:void\20sorted_merge<&sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29>\28GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::VertexList*\29 +4290: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 +4291:void\20sktext::gpu::fillDirectClipped\28SkZip\2c\20unsigned\20int\2c\20SkPoint\2c\20SkIRect*\29 +4292:void\20skgpu::ganesh::SurfaceFillContext::clearAtLeast<\28SkAlphaType\292>\28SkIRect\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +4293:void\20portable::memsetT\28unsigned\20short*\2c\20unsigned\20short\2c\20int\29 +4294:void\20portable::memsetT\28unsigned\20int*\2c\20unsigned\20int\2c\20int\29 +4295:void\20hb_sanitize_context_t::set_object>\28OT::KernSubTable\20const*\29 +4296:void\20hb_sanitize_context_t::set_object>\28AAT::ChainSubtable\20const*\29 +4297: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 +4298: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 +4299: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 +4300: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 +4301:void\20SkTQSort\28double*\2c\20double*\29 +4302:void\20SkTIntroSort\28int\2c\20int*\2c\20int\2c\20DistanceLessThan\20const&\29 +4303: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 +4304: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 +4305:void\20SkTIntroSort\28int\2c\20SkString*\2c\20int\2c\20bool\20\20const\28&\29\28SkString\20const&\2c\20SkString\20const&\29\29 +4306:void\20SkTIntroSort\28int\2c\20SkOpRayHit**\2c\20int\2c\20bool\20\20const\28&\29\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29\29 +4307: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 +4308: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 +4309: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 +4310: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 +4311:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\20const\28&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +4312:void\20SkTIntroSort\28int\2c\20GrGpuResource**\2c\20int\2c\20bool\20\28*\20const&\29\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29\29 +4313:void\20SkTIntroSort\28int\2c\20Edge*\2c\20int\2c\20EdgeLT\20const&\29 +4314:void\20SkSafeUnref\28GrWindowRectangles::Rec\20const*\29 +4315:void\20SkSafeUnref\28GrSurface::RefCntedReleaseProc*\29 +4316:void\20SkSafeUnref\28GrBufferAllocPool::CpuBufferCache*\29 +4317:void\20SkRecords::FillBounds::trackBounds\28SkRecords::NoOp\20const&\29 +4318: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::BaseCoord\29 +4319:void\20GrGLProgramDataManager::setMatrices<4>\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +4320:void\20GrGLProgramDataManager::setMatrices<3>\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +4321:void\20GrGLProgramDataManager::setMatrices<2>\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +4322: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 +4323:virtual\20thunk\20to\20GrGLTexture::onSetLabel\28\29 +4324:virtual\20thunk\20to\20GrGLTexture::backendFormat\28\29\20const +4325:vfiprintf +4326:validate_texel_levels\28SkISize\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20GrCaps\20const*\29 +4327:valid_divs\28int\20const*\2c\20int\2c\20int\2c\20int\29 +4328:utf8_byte_type\28unsigned\20char\29 +4329:use_tiled_rendering\28GrGLCaps\20const&\2c\20GrOpsRenderPass::StencilLoadAndStoreInfo\20const&\29 +4330:uprv_realloc_skia +4331:update_edge\28SkEdge*\2c\20int\29 +4332:unsigned\20short\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +4333:unsigned\20short\20sk_saturate_cast\28float\29 +4334:unsigned\20long\20long\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +4335:unsigned\20long&\20std::__2::vector>::emplace_back\28unsigned\20long&\29 +4336:unsigned\20int\20std::__2::__num_get_unsigned_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +4337:unsigned\20int\20const*\20std::__2::lower_bound\5babi:v160004\5d\28unsigned\20int\20const*\2c\20unsigned\20int\20const*\2c\20unsigned\20long\20const&\29 +4338:unsigned\20int*\20hb_vector_t::push\28unsigned\20int&\29 +4339:unsigned\20char\20pack_distance_field_val<4>\28float\29 +4340:ubidi_getVisualRun_skia +4341:ubidi_countRuns_skia +4342:ubidi_close_skia +4343:u_terminateUChars_skia +4344:u_charType_skia +4345:u8_lerp\28unsigned\20char\2c\20unsigned\20char\2c\20unsigned\20char\29 +4346:tt_size_select +4347:tt_size_run_prep +4348:tt_size_done_bytecode +4349:tt_sbit_decoder_load_image +4350:tt_prepare_zone +4351:tt_loader_set_pp +4352:tt_loader_init +4353:tt_loader_done +4354:tt_hvadvance_adjust +4355:tt_face_vary_cvt +4356:tt_face_palette_set +4357:tt_face_load_generic_header +4358:tt_face_load_cvt +4359:tt_face_goto_table +4360:tt_face_get_metrics +4361:tt_done_blend +4362:tt_cmap4_set_range +4363:tt_cmap4_next +4364:tt_cmap4_char_map_linear +4365:tt_cmap4_char_map_binary +4366:tt_cmap2_get_subheader +4367:tt_cmap14_get_nondef_chars +4368:tt_cmap14_get_def_chars +4369:tt_cmap14_def_char_count +4370:tt_cmap13_next +4371:tt_cmap13_init +4372:tt_cmap13_char_map_binary +4373:tt_cmap12_next +4374:tt_cmap12_char_map_binary +4375:tt_apply_mvar +4376:top_collinear\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\29 +4377:to_stablekey\28int\2c\20unsigned\20int\29 +4378:throw_on_failure\28unsigned\20long\2c\20void*\29 +4379:thai_pua_shape\28unsigned\20int\2c\20thai_action_t\2c\20hb_font_t*\29 +4380:t1_lookup_glyph_by_stdcharcode_ps +4381:t1_cmap_std_init +4382:t1_cmap_std_char_index +4383:t1_builder_init +4384:t1_builder_close_contour +4385:t1_builder_add_point1 +4386:t1_builder_add_point +4387:t1_builder_add_contour +4388:sweep_lt_vert\28SkPoint\20const&\2c\20SkPoint\20const&\29 +4389:sweep_lt_horiz\28SkPoint\20const&\2c\20SkPoint\20const&\29 +4390:surface_setCallbackHandler +4391:surface_getThreadId +4392:strutStyle_setFontSize +4393:strtox.9301 +4394:strtoull +4395:strtoll_l +4396:strspn +4397:strncpy +4398:strcspn +4399:store_int +4400:std::logic_error::~logic_error\28\29 +4401:std::logic_error::logic_error\28char\20const*\29 +4402:std::exception::exception\5babi:v160004\5d\28\29 +4403:std::__2::vector>::operator=\5babi:v160004\5d\28std::__2::vector>\20const&\29 +4404:std::__2::vector>::__vdeallocate\28\29 +4405:std::__2::vector>::__move_assign\28std::__2::vector>&\2c\20std::__2::integral_constant\29 +4406:std::__2::vector>\2c\20std::__2::allocator>>>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::unique_ptr>*\29 +4407:std::__2::vector\2c\20std::__2::allocator>>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::tuple*\29 +4408:std::__2::vector>::max_size\28\29\20const +4409:std::__2::vector>::capacity\5babi:v160004\5d\28\29\20const +4410:std::__2::vector>::__construct_at_end\28unsigned\20long\29 +4411:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +4412:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28std::__2::locale::facet**\29 +4413:std::__2::vector\2c\20std::__2::allocator>\2c\20std::__2::allocator\2c\20std::__2::allocator>>>::__clear\5babi:v160004\5d\28\29 +4414:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +4415:std::__2::vector>::vector\28std::__2::vector>\20const&\29 +4416:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +4417:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +4418:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +4419:std::__2::vector>::operator=\5babi:v160004\5d\28std::__2::vector>\20const&\29 +4420:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +4421:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28skia::textlayout::FontFeature*\29 +4422:std::__2::vector\2c\20std::__2::allocator>>::vector\28std::__2::vector\2c\20std::__2::allocator>>\20const&\29 +4423:std::__2::vector>::insert\28std::__2::__wrap_iter\2c\20float&&\29 +4424:std::__2::vector>::__construct_at_end\28unsigned\20long\29 +4425:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +4426:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +4427:std::__2::vector>::vector\5babi:v160004\5d\28std::initializer_list\29 +4428:std::__2::vector>::reserve\28unsigned\20long\29 +4429:std::__2::vector>::operator=\5babi:v160004\5d\28std::__2::vector>\20const&\29 +4430:std::__2::vector>::__vdeallocate\28\29 +4431:std::__2::vector>::__destroy_vector::operator\28\29\5babi:v160004\5d\28\29 +4432:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +4433:std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28SkString*\29 +4434:std::__2::vector>::push_back\5babi:v160004\5d\28SkSL::TraceInfo&&\29 +4435:std::__2::vector>::push_back\5babi:v160004\5d\28SkSL::SymbolTable*\20const&\29 +4436:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +4437:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +4438:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\2c\20SkSL::ProgramElement\20const**\29 +4439:std::__2::vector>::__move_range\28SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\2c\20SkSL::ProgramElement\20const**\29 +4440:std::__2::vector>::erase\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +4441:std::__2::vector>::push_back\5babi:v160004\5d\28SkRuntimeEffect::Uniform&&\29 +4442:std::__2::vector>::push_back\5babi:v160004\5d\28SkRuntimeEffect::Child&&\29 +4443:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +4444:std::__2::vector>::__destroy_vector::operator\28\29\5babi:v160004\5d\28\29 +4445:std::__2::vector>::reserve\28unsigned\20long\29 +4446:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +4447:std::__2::vector\2c\20std::__2::allocator>>::__swap_out_circular_buffer\28std::__2::__split_buffer\2c\20std::__2::allocator>&>&\29 +4448:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +4449:std::__2::vector>::push_back\5babi:v160004\5d\28SkMeshSpecification::Varying&&\29 +4450:std::__2::vector>::~vector\5babi:v160004\5d\28\29 +4451:std::__2::vector>::reserve\28unsigned\20long\29 +4452:std::__2::vector>::__swap_out_circular_buffer\28std::__2::__split_buffer&>&\29 +4453:std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +4454:std::__2::vector>::__clear\5babi:v160004\5d\28\29 +4455:std::__2::unique_ptr::unique_ptr\5babi:v160004\5d\28unsigned\20char*\2c\20std::__2::__dependent_type\2c\20true>::__good_rval_ref_type\29 +4456:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4457:std::__2::unique_ptr>::reset\5babi:v160004\5d\28sktext::gpu::TextBlobRedrawCoordinator*\29 +4458:std::__2::unique_ptr::~unique_ptr\5babi:v160004\5d\28\29 +4459:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4460:std::__2::unique_ptr>::reset\5babi:v160004\5d\28sktext::gpu::SubRunAllocator*\29 +4461:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4462:std::__2::unique_ptr>::reset\5babi:v160004\5d\28sktext::gpu::StrikeCache*\29 +4463:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4464:std::__2::unique_ptr>::reset\5babi:v160004\5d\28sktext::GlyphRunBuilder*\29 +4465: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 +4466: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 +4467: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 +4468: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 +4469: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 +4470: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 +4471: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 +4472: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 +4473:std::__2::unique_ptr::Slot\20\5b\5d\2c\20std::__2::default_delete::Slot\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4474:std::__2::unique_ptr\2c\20std::__2::default_delete>>::reset\5babi:v160004\5d\28skia_private::TArray*\29 +4475:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4476:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4477:std::__2::unique_ptr>::reset\5babi:v160004\5d\28skgpu::ganesh::SmallPathAtlasMgr*\29 +4478:std::__2::unique_ptr\20\5b\5d\2c\20std::__2::default_delete\20\5b\5d>>::~unique_ptr\5babi:v160004\5d\28\29 +4479:std::__2::unique_ptr>::reset\5babi:v160004\5d\28hb_font_t*\29 +4480:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4481:std::__2::unique_ptr>::reset\5babi:v160004\5d\28hb_blob_t*\29 +4482:std::__2::unique_ptr::operator=\5babi:v160004\5d\28std::__2::unique_ptr&&\29 +4483: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 +4484:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4485:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkTaskGroup*\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>::reset\5babi:v160004\5d\28SkSL::RP::Program*\29 +4490:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4491:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::Program*\29 +4492:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::ProgramUsage*\29 +4493:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4494:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4495:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkSL::MemoryPool*\29 +4496: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 +4497: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 +4498:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4499:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4500:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkRecorder*\29 +4501:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkLatticeIter*\29 +4502:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkCanvas::Layer*\29 +4503:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4504:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkCanvas::BackImage*\29 +4505:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4506:std::__2::unique_ptr>::reset\5babi:v160004\5d\28SkArenaAlloc*\29 +4507:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4508:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrThreadSafeCache*\29 +4509:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4510:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrResourceProvider*\29 +4511:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4512:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrResourceCache*\29 +4513:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4514:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrProxyProvider*\29 +4515: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 +4516:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4517:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4518:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4519:std::__2::unique_ptr>::~unique_ptr\5babi:v160004\5d\28\29 +4520:std::__2::unique_ptr>::reset\5babi:v160004\5d\28GrAuditTrail::OpNode*\29 +4521:std::__2::unique_ptr>::reset\5babi:v160004\5d\28FT_SizeRec_*\29 +4522:std::__2::tuple::tuple\5babi:v160004\5d\28std::__2::\28anonymous\20namespace\29::__fake_bind&&\29 +4523:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda0'\28\29::operator\28\29\28\29\20const +4524:std::__2::tuple\2c\20int\2c\20sktext::gpu::SubRunAllocator>\20sktext::gpu::SubRunAllocator::AllocateClassMemoryAndArena\28int\29::'lambda'\28\29::operator\28\29\28\29\20const +4525:std::__2::tuple&\20std::__2::tuple::operator=\5babi:v160004\5d\28std::__2::pair&&\29 +4526:std::__2::to_string\28unsigned\20long\29 +4527: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 +4528:std::__2::time_put>>::~time_put\28\29.1 +4529: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 +4530: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 +4531: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 +4532: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 +4533: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 +4534: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 +4535:std::__2::shared_ptr::operator=\5babi:v160004\5d\28std::__2::shared_ptr&&\29 +4536:std::__2::reverse_iterator::operator++\5babi:v160004\5d\28\29 +4537:std::__2::priority_queue>\2c\20GrAATriangulator::EventComparator>::push\28GrAATriangulator::Event*\20const&\29 +4538:std::__2::pair::pair\28std::__2::pair&&\29 +4539:std::__2::pair>::~pair\28\29 +4540:std::__2::pair\2c\20std::__2::allocator>>>::~pair\28\29 +4541:std::__2::pair\20std::__2::__copy\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29 +4542:std::__2::pair::pair\5babi:v160004\5d\28char\20const*&&\2c\20char*&&\29 +4543:std::__2::pair>::~pair\28\29 +4544:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28wchar_t\29 +4545:std::__2::ostreambuf_iterator>::operator=\5babi:v160004\5d\28char\29 +4546:std::__2::optional&\20std::__2::optional::operator=\5babi:v160004\5d\28SkPath\20const&\29 +4547:std::__2::optional::value\5babi:v160004\5d\28\29\20& +4548:std::__2::optional::value\5babi:v160004\5d\28\29\20& +4549:std::__2::numpunct::~numpunct\28\29.1 +4550:std::__2::numpunct::~numpunct\28\29.1 +4551: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 +4552:std::__2::num_get>>\20const&\20std::__2::use_facet\5babi:v160004\5d>>>\28std::__2::locale\20const&\29 +4553: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 +4554:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +4555:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +4556:std::__2::moneypunct::do_negative_sign\28\29\20const +4557:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +4558:std::__2::moneypunct\20const&\20std::__2::use_facet\5babi:v160004\5d>\28std::__2::locale\20const&\29 +4559:std::__2::moneypunct::do_negative_sign\28\29\20const +4560: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 +4561: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 +4562:std::__2::locale::operator=\28std::__2::locale\20const&\29 +4563:std::__2::locale::__imp::~__imp\28\29.1 +4564:std::__2::list>::pop_front\28\29 +4565: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 +4566:std::__2::iterator_traits::difference_type\20std::__2::distance\5babi:v160004\5d\28char*\2c\20char*\29 +4567:std::__2::iterator_traits::difference_type\20std::__2::__distance\5babi:v160004\5d\28char*\2c\20char*\2c\20std::__2::random_access_iterator_tag\29 +4568:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +4569:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +4570:std::__2::istreambuf_iterator>::operator++\5babi:v160004\5d\28int\29 +4571:std::__2::istreambuf_iterator>::__test_for_eof\5babi:v160004\5d\28\29\20const +4572:std::__2::ios_base::width\5babi:v160004\5d\28long\29 +4573:std::__2::ios_base::setstate\5babi:v160004\5d\28unsigned\20int\29 +4574:std::__2::ios_base::clear\28unsigned\20int\29 +4575:std::__2::ios_base::__call_callbacks\28std::__2::ios_base::event\29 +4576:std::__2::hash>::operator\28\29\5babi:v160004\5d\28std::__2::optional\20const&\29\20const +4577:std::__2::function::operator\28\29\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29\20const +4578:std::__2::function::operator\28\29\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\2c\20float\2c\20float\2c\20bool\29\20const +4579:std::__2::function::operator\28\29\28GrTextureProxy*\2c\20SkIRect\2c\20GrColorType\2c\20void\20const*\2c\20unsigned\20long\29\20const +4580: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 +4581:std::__2::enable_if>::value\2c\20SkRuntimeEffectBuilder::BuilderUniform&>::type\20SkRuntimeEffectBuilder::BuilderUniform::operator=>\28std::__2::array\20const&\29 +4582:std::__2::enable_if::value\2c\20SkRuntimeEffectBuilder::BuilderUniform&>::type\20SkRuntimeEffectBuilder::BuilderUniform::operator=\28float\20const&\29 +4583: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 +4584:std::__2::enable_if::value\20&&\20sizeof\20\28bool\29\20!=\204\2c\20unsigned\20int>::type\20SkGoodHash::operator\28\29\28bool\20const&\29\20const +4585:std::__2::enable_if::value\20&&\20is_move_assignable::value\2c\20void>::type\20std::__2::swap\5babi:v160004\5d\28char&\2c\20char&\29 +4586: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 +4587: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 +4588: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 +4589: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 +4590: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 +4591: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 +4592:std::__2::deque>::back\28\29 +4593:std::__2::deque>::__add_back_capacity\28\29 +4594: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 +4595: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 +4596: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 +4597: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 +4598: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 +4599: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 +4600: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 +4601: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 +4602:std::__2::default_delete::_EnableIfConvertible::type\20std::__2::default_delete::operator\28\29\5babi:v160004\5d\28GrGLCaps::ColorTypeInfo*\29\20const +4603:std::__2::ctype::~ctype\28\29.1 +4604:std::__2::codecvt::~codecvt\28\29.1 +4605: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 +4606: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 +4607:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char8_t\20const*\2c\20char8_t\20const*\2c\20unsigned\20long\29\20const +4608: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 +4609: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 +4610:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char8_t\20const*\2c\20char8_t\20const*\2c\20unsigned\20long\29\20const +4611: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 +4612:std::__2::char_traits::eq_int_type\28int\2c\20int\29 +4613:std::__2::char_traits::not_eof\28int\29 +4614:std::__2::char_traits::find\28char\20const*\2c\20unsigned\20long\2c\20char\20const&\29 +4615:std::__2::basic_stringstream\2c\20std::__2::allocator>::basic_stringstream\5babi:v160004\5d\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20unsigned\20int\29 +4616:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +4617:std::__2::basic_stringbuf\2c\20std::__2::allocator>::str\28\29\20const +4618:std::__2::basic_string_view>::substr\5babi:v160004\5d\28unsigned\20long\2c\20unsigned\20long\29\20const +4619:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20wchar_t\29 +4620:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28wchar_t\20const*\2c\20wchar_t\20const*\29 +4621: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 +4622: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 +4623:std::__2::basic_string\2c\20std::__2::allocator>::insert\28unsigned\20long\2c\20char\20const*\2c\20unsigned\20long\29 +4624:std::__2::basic_string\2c\20std::__2::allocator>::basic_string\5babi:v160004\5d\28unsigned\20long\2c\20char\29 +4625:std::__2::basic_string\2c\20std::__2::allocator>::__null_terminate_at\5babi:v160004\5d\28char*\2c\20unsigned\20long\29 +4626:std::__2::basic_string\2c\20std::__2::allocator>&\20skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::emplace_back\28char\20const*&&\29 +4627:std::__2::basic_streambuf>::sbumpc\5babi:v160004\5d\28\29 +4628:std::__2::basic_streambuf>::sputc\5babi:v160004\5d\28char\29 +4629:std::__2::basic_streambuf>::sgetc\5babi:v160004\5d\28\29 +4630:std::__2::basic_streambuf>::basic_streambuf\28\29 +4631:std::__2::basic_ostream>::sentry::~sentry\28\29 +4632:std::__2::basic_ostream>::sentry::sentry\28std::__2::basic_ostream>&\29 +4633:std::__2::basic_ostream>::operator<<\28float\29 +4634:std::__2::basic_ostream>::flush\28\29 +4635:std::__2::basic_istream>::~basic_istream\28\29.1 +4636:std::__2::basic_iostream>::basic_iostream\5babi:v160004\5d\28std::__2::basic_streambuf>*\29 +4637:std::__2::basic_ios>::imbue\5babi:v160004\5d\28std::__2::locale\20const&\29 +4638:std::__2::allocator_traits>::deallocate\5babi:v160004\5d\28std::__2::__sso_allocator&\2c\20std::__2::locale::facet**\2c\20unsigned\20long\29 +4639:std::__2::allocator::allocate\5babi:v160004\5d\28unsigned\20long\29 +4640:std::__2::__wrap_iter\20std::__2::vector>::insert\2c\200>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\29 +4641:std::__2::__unwrap_iter_impl::__rewrap\5babi:v160004\5d\28char*\2c\20char*\29 +4642:std::__2::__unique_if\2c\20std::__2::allocator>>::__unique_single\20std::__2::make_unique\5babi:v160004\5d\2c\20std::__2::allocator>\2c\20std::__2::basic_string\2c\20std::__2::allocator>>\28std::__2::basic_string\2c\20std::__2::allocator>&&\29 +4643:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Variable\20const*&&\2c\20SkSL::VariableRefKind&&\29 +4644: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 +4645:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28\29 +4646:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28\29 +4647:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +4648: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 +4649: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 +4650: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 +4651: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 +4652: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 +4653:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +4654: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 +4655:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d\28SkSL::Position&\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray&&\29 +4656:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>\2c\20true>\2c\20SkSL::Block::Kind&\2c\20std::__2::unique_ptr>>\28SkSL::Position&\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>&&\2c\20SkSL::Block::Kind&\2c\20std::__2::unique_ptr>&&\29 +4657:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d>\28sk_sp&&\29 +4658:std::__2::__unique_if::__unique_single\20std::__2::make_unique\5babi:v160004\5d&>\28std::__2::shared_ptr&\29 +4659: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 +4660:std::__2::__time_put::__time_put\5babi:v160004\5d\28\29 +4661:std::__2::__time_put::__do_put\28char*\2c\20char*&\2c\20tm\20const*\2c\20char\2c\20char\29\20const +4662:std::__2::__throw_out_of_range\5babi:v160004\5d\28char\20const*\29 +4663:std::__2::__throw_length_error\5babi:v160004\5d\28char\20const*\29 +4664:std::__2::__split_buffer&>::~__split_buffer\28\29 +4665:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +4666:std::__2::__split_buffer>::pop_back\5babi:v160004\5d\28\29 +4667:std::__2::__split_buffer>::__destruct_at_end\5babi:v160004\5d\28skia::textlayout::OneLineShaper::RunBlock**\2c\20std::__2::integral_constant\29 +4668:std::__2::__split_buffer&>::push_back\28skia::textlayout::OneLineShaper::RunBlock*&&\29 +4669:std::__2::__split_buffer&>::~__split_buffer\28\29 +4670:std::__2::__split_buffer&>::~__split_buffer\28\29 +4671:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +4672:std::__2::__split_buffer&>::~__split_buffer\28\29 +4673:std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +4674:std::__2::__split_buffer&>::~__split_buffer\28\29 +4675:std::__2::__shared_weak_count::__release_shared\5babi:v160004\5d\28\29 +4676:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +4677:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +4678:std::__2::__optional_destruct_base::reset\5babi:v160004\5d\28\29 +4679:std::__2::__optional_destruct_base::~__optional_destruct_base\5babi:v160004\5d\28\29 +4680: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 +4681: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 +4682: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 +4683: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 +4684: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 +4685: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 +4686: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 +4687: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 +4688:std::__2::__libcpp_sscanf_l\28char\20const*\2c\20__locale_struct*\2c\20char\20const*\2c\20...\29 +4689: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 +4690:std::__2::__libcpp_mb_cur_max_l\5babi:v160004\5d\28__locale_struct*\29 +4691:std::__2::__libcpp_condvar_wait\5babi:v160004\5d\28pthread_cond_t*\2c\20pthread_mutex_t*\29 +4692: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 +4693: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 +4694:std::__2::__hash_table\2c\20std::__2::equal_to\2c\20std::__2::allocator>::__deallocate_node\28std::__2::__hash_node_base*>*\29 +4695: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 +4696:std::__2::__function::__value_func\29>::operator\28\29\5babi:v160004\5d\28skia::textlayout::Block&&\2c\20skia_private::TArray&&\29\20const +4697:std::__2::__function::__value_func::operator\28\29\5babi:v160004\5d\28\29\20const +4698:std::__2::__function::__value_func\29>::operator\28\29\5babi:v160004\5d\28sk_sp&&\29\20const +4699:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29 +4700: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 +4701: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 +4702:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29 +4703:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +4704:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +4705:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29 +4706:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +4707:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +4708:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::destroy_deallocate\28\29 +4709:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::destroy\28\29 +4710:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29 +4711:std::__2::__forward_list_base\2c\20std::__2::allocator>>::clear\28\29 +4712:std::__2::__exception_guard_exceptions>::__destroy_vector>::~__exception_guard_exceptions\5babi:v160004\5d\28\29 +4713:std::__2::__exception_guard_exceptions>::__destroy_vector>::~__exception_guard_exceptions\5babi:v160004\5d\28\29 +4714:std::__2::__exception_guard_exceptions\2c\20SkString*>>::~__exception_guard_exceptions\5babi:v160004\5d\28\29 +4715:std::__2::__constexpr_wcslen\5babi:v160004\5d\28wchar_t\20const*\29 +4716: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 +4717: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 +4718:std::__2::__compressed_pair::__compressed_pair\5babi:v160004\5d\28unsigned\20char*&\2c\20void\20\28*&&\29\28void*\29\29 +4719:std::__2::__allocation_result>::pointer>\20std::__2::__allocate_at_least\5babi:v160004\5d>\28std::__2::__sso_allocator&\2c\20unsigned\20long\29 +4720:srgb_to_hsl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +4721:sort_r_swap_blocks\28char*\2c\20unsigned\20long\2c\20unsigned\20long\29 +4722:sort_increasing_Y\28SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +4723:sort_edges\28SkEdge**\2c\20int\2c\20SkEdge**\29 +4724:sort_as_rect\28skvx::Vec<4\2c\20float>\20const&\29 +4725:small_blur\28double\2c\20double\2c\20SkMask\20const&\2c\20SkMaskBuilder*\29::$_0::operator\28\29\28SkGaussFilter\20const&\2c\20unsigned\20short*\29\20const +4726:skvx::Vec<8\2c\20unsigned\20int>\20skvx::cast\28skvx::Vec<8\2c\20unsigned\20short>\20const&\29 +4727:skvx::Vec<4\2c\20unsigned\20short>\20skvx::operator>><4\2c\20unsigned\20short>\28skvx::Vec<4\2c\20unsigned\20short>\20const&\2c\20int\29 +4728:skvx::Vec<4\2c\20unsigned\20short>\20skvx::operator<<<4\2c\20unsigned\20short>\28skvx::Vec<4\2c\20unsigned\20short>\20const&\2c\20int\29 +4729:skvx::Vec<4\2c\20unsigned\20int>\20skvx::operator>><4\2c\20unsigned\20int>\28skvx::Vec<4\2c\20unsigned\20int>\20const&\2c\20int\29 +4730: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 +4731: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 +4732: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 +4733:skvx::Vec<4\2c\20int>\20skvx::operator^<4\2c\20int>\28skvx::Vec<4\2c\20int>\20const&\2c\20skvx::Vec<4\2c\20int>\20const&\29 +4734:skvx::Vec<4\2c\20int>\20skvx::operator>><4\2c\20int>\28skvx::Vec<4\2c\20int>\20const&\2c\20int\29 +4735:skvx::Vec<4\2c\20int>\20skvx::operator<<<4\2c\20int>\28skvx::Vec<4\2c\20int>\20const&\2c\20int\29 +4736:skvx::Vec<4\2c\20float>\20skvx::sqrt<4>\28skvx::Vec<4\2c\20float>\20const&\29 +4737:skvx::Vec<4\2c\20float>\20skvx::operator/<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +4738:skvx::Vec<4\2c\20float>\20skvx::operator/<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4739:skvx::Vec<4\2c\20float>\20skvx::operator-<4\2c\20float\2c\20float\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20float\29 +4740:skvx::Vec<4\2c\20float>\20skvx::operator-<4\2c\20float>\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4741:skvx::Vec<4\2c\20float>\20skvx::operator*<4\2c\20float\2c\20int\2c\20void>\28skvx::Vec<4\2c\20float>\20const&\2c\20int\29 +4742:skvx::Vec<4\2c\20float>\20skvx::min<4\2c\20float\2c\20float\2c\20void>\28float\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4743: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.5835\29 +4744:skvx::Vec<4\2c\20float>\20skvx::max<4\2c\20float\2c\20float\2c\20void>\28float\2c\20skvx::Vec<4\2c\20float>\20const&\29 +4745:skvx::Vec<4\2c\20float>\20skvx::from_half<4>\28skvx::Vec<4\2c\20unsigned\20short>\20const&\29 +4746: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.6741\29 +4747:skvx::Vec<2\2c\20unsigned\20char>\20skvx::cast\28skvx::Vec<2\2c\20float>\20const&\29 +4748:skvx::ScaledDividerU32::divide\28skvx::Vec<4\2c\20unsigned\20int>\20const&\29\20const +4749:skvx::ScaledDividerU32::ScaledDividerU32\28unsigned\20int\29 +4750:sktext::gpu::can_use_direct\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +4751:sktext::gpu::build_distance_adjust_table\28float\29 +4752:sktext::gpu::VertexFiller::fillVertexData\28int\2c\20int\2c\20SkSpan\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkIRect\2c\20void*\29\20const +4753:sktext::gpu::TextBlobRedrawCoordinator::internalRemove\28sktext::gpu::TextBlob*\29 +4754:sktext::gpu::TextBlobRedrawCoordinator::BlobIDCacheEntry::findBlobIndex\28sktext::gpu::TextBlob::Key\20const&\29\20const +4755:sktext::gpu::TextBlobRedrawCoordinator::BlobIDCacheEntry::BlobIDCacheEntry\28sktext::gpu::TextBlobRedrawCoordinator::BlobIDCacheEntry&&\29 +4756:sktext::gpu::TextBlob::~TextBlob\28\29 +4757: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 +4758: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 +4759: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 +4760: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 +4761:sktext::gpu::SubRunContainer::EstimateAllocSize\28sktext::GlyphRunList\20const&\29 +4762:sktext::gpu::SubRunAllocator::SubRunAllocator\28int\29 +4763:sktext::gpu::SlugImpl::~SlugImpl\28\29 +4764:sktext::gpu::SDFTControl::isSDFT\28float\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +4765:sktext::SkStrikePromise::resetStrike\28\29 +4766:sktext::GlyphRunList::maxGlyphRunSize\28\29\20const +4767:sktext::GlyphRunBuilder::~GlyphRunBuilder\28\29 +4768:sktext::GlyphRunBuilder::makeGlyphRunList\28sktext::GlyphRun\20const&\2c\20SkPaint\20const&\2c\20SkPoint\29 +4769:sktext::GlyphRunBuilder::blobToGlyphRunList\28SkTextBlob\20const&\2c\20SkPoint\29 +4770:skstd::to_string\28float\29 +4771:skip_string +4772:skip_procedure +4773:skip_comment +4774:skif::compatible_sampling\28SkSamplingOptions\20const&\2c\20bool\2c\20SkSamplingOptions*\2c\20bool\29 +4775:skif::\28anonymous\20namespace\29::decompose_transform\28SkMatrix\20const&\2c\20SkPoint\2c\20SkMatrix*\2c\20SkMatrix*\29 +4776:skif::\28anonymous\20namespace\29::are_axes_nearly_integer_aligned\28skif::LayerSpace\20const&\2c\20skif::LayerSpace*\29 +4777:skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkImageInfo\20const&\29\20const +4778:skif::Mapping::adjustLayerSpace\28SkMatrix\20const&\29 +4779:skif::LayerSpace\20skif::Mapping::paramToLayer\28skif::ParameterSpace\20const&\29\20const +4780:skif::LayerSpace::roundIn\28\29\20const +4781:skif::LayerSpace::inset\28skif::LayerSpace\20const&\29 +4782:skif::LayerSpace::mapSize\28skif::LayerSpace\20const&\29\20const +4783:skif::LayerSpace::RectToRect\28skif::LayerSpace\20const&\2c\20skif::LayerSpace\20const&\29 +4784:skif::LayerSpace::offset\28skif::LayerSpace\20const&\29 +4785:skif::FilterResult::imageAndOffset\28skif::Context\20const&\29\20const +4786:skif::FilterResult::draw\28skif::Context\20const&\2c\20SkDevice*\2c\20SkBlender\20const*\29\20const +4787:skif::FilterResult::drawAnalyzedImage\28skif::Context\20const&\2c\20SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkEnumBitMask\2c\20SkBlender\20const*\29\20const +4788:skif::FilterResult::Builder::drawShader\28sk_sp\2c\20skif::LayerSpace\20const&\2c\20bool\29\20const +4789:skif::FilterResult::Builder::createInputShaders\28skif::LayerSpace\20const&\2c\20bool\29 +4790:skif::Context::Context\28sk_sp\2c\20skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20skif::FilterResult\20const&\2c\20SkColorSpace\20const*\2c\20skif::Stats*\29 +4791:skia_private::THashTable>\2c\20std::__2::basic_string_view>\2c\20skia_private::THashSet>\2c\20SkGoodHash>::Traits>::uncheckedSet\28std::__2::basic_string_view>&&\29 +4792:skia_private::THashTable::uncheckedSet\28sktext::gpu::Glyph*&&\29 +4793:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4794:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +4795:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::removeIfExists\28unsigned\20int\20const&\29 +4796:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::Slot::emplace\28skia_private::THashMap::Pair&&\2c\20unsigned\20int\29 +4797:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +4798:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::reset\28\29 +4799:skia_private::THashTable::Pair\2c\20unsigned\20int\2c\20skia_private::THashMap::Pair>::resize\28int\29 +4800: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 +4801: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 +4802: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 +4803: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 +4804: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 +4805: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 +4806: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 +4807: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 +4808:skia_private::THashTable>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::uncheckedSet\28skia_private::THashMap>::Pair&&\29 +4809:skia_private::THashTable>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::reset\28\29 +4810:skia_private::THashTable>::Pair\2c\20skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\2c\20skia_private::THashMap>::Pair>::Hash\28skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\20const&\29 +4811:skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4812:skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot::reset\28\29 +4813:skia_private::THashTable::Pair\2c\20skgpu::UniqueKey\2c\20skia_private::THashMap::Pair>::Slot::emplace\28skia_private::THashMap::Pair&&\2c\20unsigned\20int\29 +4814:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20int\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\29 +4815:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20int\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot::reset\28\29 +4816: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 +4817:skia_private::THashTable::Pair\2c\20int\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4818:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap\2c\20SkGoodHash>::Pair&&\29 +4819:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Slot::reset\28\29 +4820: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 +4821:skia_private::THashTable\2c\20SkGoodHash>::Pair\2c\20SkString\2c\20skia_private::THashMap\2c\20SkGoodHash>::Pair>::Hash\28SkString\20const&\29 +4822: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 +4823:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::Slot::reset\28\29 +4824: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 +4825:skia_private::THashTable::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4826:skia_private::THashTable::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap::Pair>::firstPopulatedSlot\28\29\20const +4827:skia_private::THashTable::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap::Pair>::Iter>::operator++\28\29 +4828:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4829:skia_private::THashTable::Pair\2c\20SkSL::SymbolTable::SymbolKey\2c\20skia_private::THashMap::Pair>::resize\28int\29 +4830:skia_private::THashTable::Pair\2c\20SkSL::IRNode\20const*\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4831:skia_private::THashTable::Pair\2c\20SkSL::IRNode\20const*\2c\20skia_private::THashMap::Pair>::set\28skia_private::THashMap::Pair\29 +4832:skia_private::THashTable::Pair\2c\20SkSL::IRNode\20const*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +4833: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>::Slot::reset\28\29 +4834: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>::Slot::emplace\28skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::Pair&&\2c\20unsigned\20int\29 +4835:skia_private::THashTable::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::uncheckedSet\28skia_private::THashMap::Pair&&\29 +4836:skia_private::THashTable::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::Slot::reset\28\29 +4837:skia_private::THashTable::Pair\2c\20SkPath\2c\20skia_private::THashMap::Pair>::Slot::emplace\28skia_private::THashMap::Pair&&\2c\20unsigned\20int\29 +4838:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::uncheckedSet\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\29 +4839:skia_private::THashTable>\2c\20SkGoodHash>::Pair\2c\20SkImageFilter\20const*\2c\20skia_private::THashMap>\2c\20SkGoodHash>::Pair>::resize\28int\29 +4840: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 +4841:skia_private::THashTable::Pair\2c\20GrSurfaceProxy*\2c\20skia_private::THashMap::Pair>::resize\28int\29 +4842:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28skgpu::ganesh::SmallPathShapeData*&&\29 +4843:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +4844:skia_private::THashTable::AdaptedTraits>::removeIfExists\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +4845:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::uncheckedSet\28sk_sp&&\29 +4846:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::reset\28\29 +4847:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot::reset\28\29 +4848:skia_private::THashTable\2c\20SkDescriptor\20const&\2c\20sktext::gpu::StrikeCache::HashTraits>::Slot::emplace\28sk_sp&&\2c\20unsigned\20int\29 +4849:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::uncheckedSet\28sk_sp&&\29 +4850:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::resize\28int\29 +4851:skia_private::THashTable\2c\20SkDescriptor\2c\20SkStrikeCache::StrikeTraits>::Slot::emplace\28sk_sp&&\2c\20unsigned\20int\29 +4852:skia_private::THashTable::Traits>::set\28int\29 +4853:skia_private::THashTable::Traits>::THashTable\28skia_private::THashTable::Traits>&&\29 +4854: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 +4855: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 +4856:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +4857:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +4858:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::findOrNull\28skgpu::ScratchKey\20const&\29\20const +4859:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::uncheckedSet\28SkTMultiMap::ValueList*&&\29 +4860:skia_private::THashTable::ValueList*\2c\20skgpu::ScratchKey\2c\20SkTDynamicHash::ValueList\2c\20skgpu::ScratchKey\2c\20SkTMultiMap::ValueList>::AdaptedTraits>::resize\28int\29 +4861:skia_private::THashTable::Traits>::uncheckedSet\28SkSL::Variable\20const*&&\29 +4862:skia_private::THashTable::Traits>::resize\28int\29 +4863:skia_private::THashTable::uncheckedSet\28SkResourceCache::Rec*&&\29 +4864:skia_private::THashTable::resize\28int\29 +4865:skia_private::THashTable::find\28SkResourceCache::Key\20const&\29\20const +4866: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 +4867:skia_private::THashTable>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\2c\20skia::textlayout::ParagraphCacheKey\2c\20SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Traits>::resize\28int\29 +4868: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 +4869: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 +4870:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::resize\28int\29 +4871:skia_private::THashTable>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\2c\20GrProgramDesc\2c\20SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Traits>::find\28GrProgramDesc\20const&\29\20const +4872:skia_private::THashTable::uncheckedSet\28SkGlyphDigest&&\29 +4873:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrThreadSafeCache::Entry*&&\29 +4874:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +4875:skia_private::THashTable::AdaptedTraits>::removeIfExists\28skgpu::UniqueKey\20const&\29 +4876:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrTextureProxy*&&\29 +4877:skia_private::THashTable::AdaptedTraits>::set\28GrTextureProxy*\29 +4878:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +4879:skia_private::THashTable::AdaptedTraits>::findOrNull\28skgpu::UniqueKey\20const&\29\20const +4880:skia_private::THashTable::AdaptedTraits>::uncheckedSet\28GrGpuResource*&&\29 +4881:skia_private::THashTable::AdaptedTraits>::resize\28int\29 +4882:skia_private::THashTable::AdaptedTraits>::findOrNull\28skgpu::UniqueKey\20const&\29\20const +4883:skia_private::THashTable::Traits>::uncheckedSet\28FT_Opaque_Paint_&&\29 +4884:skia_private::THashTable::Traits>::resize\28int\29 +4885:skia_private::THashSet::contains\28int\20const&\29\20const +4886:skia_private::THashSet::contains\28FT_Opaque_Paint_\20const&\29\20const +4887:skia_private::THashSet::add\28FT_Opaque_Paint_\29 +4888:skia_private::THashMap::find\28unsigned\20int\20const&\29\20const +4889:skia_private::THashMap\2c\20SkGoodHash>::find\28int\20const&\29\20const +4890:skia_private::THashMap::find\28int\20const&\29\20const +4891:skia_private::THashMap\2c\20std::__2::allocator>\2c\20SkGoodHash>::set\28SkSL::Variable\20const*\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +4892:skia_private::THashMap::operator\5b\5d\28SkSL::Symbol\20const*\20const&\29 +4893:skia_private::THashMap::set\28SkSL::FunctionDeclaration\20const*\2c\20int\29 +4894:skia_private::THashMap::operator\5b\5d\28SkSL::FunctionDeclaration\20const*\20const&\29 +4895:skia_private::THashMap>\2c\20SkGoodHash>::remove\28SkImageFilter\20const*\20const&\29 +4896:skia_private::THashMap>\2c\20SkGoodHash>::Pair::Pair\28skia_private::THashMap>\2c\20SkGoodHash>::Pair&&\29 +4897:skia_private::THashMap::find\28GrSurfaceProxy*\20const&\29\20const +4898:skia_private::TArray::push_back_raw\28int\29 +4899:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4900:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +4901:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4902:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +4903:skia_private::TArray::initData\28int\29 +4904:skia_private::TArray::Allocate\28int\2c\20double\29 +4905:skia_private::TArray>\2c\20true>::~TArray\28\29 +4906:skia_private::TArray>\2c\20true>::operator=\28skia_private::TArray>\2c\20true>&&\29 +4907:skia_private::TArray>\2c\20true>::~TArray\28\29 +4908:skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::installDataAndUpdateCapacity\28SkSpan\29 +4909:skia_private::TArray\2c\20std::__2::allocator>\2c\20false>::checkRealloc\28int\2c\20double\29 +4910:skia_private::TArray\2c\20true>::preallocateNewData\28int\2c\20double\29 +4911:skia_private::TArray\2c\20true>::installDataAndUpdateCapacity\28SkSpan\29 +4912:skia_private::TArray::destroyAll\28\29 +4913:skia_private::TArray::destroyAll\28\29 +4914:skia_private::TArray\2c\20false>::~TArray\28\29 +4915:skia_private::TArray::~TArray\28\29 +4916:skia_private::TArray::destroyAll\28\29 +4917:skia_private::TArray::copy\28skia::textlayout::Run\20const*\29 +4918:skia_private::TArray::Allocate\28int\2c\20double\29 +4919:skia_private::TArray::destroyAll\28\29 +4920:skia_private::TArray::initData\28int\29 +4921:skia_private::TArray::destroyAll\28\29 +4922:skia_private::TArray::TArray\28skia_private::TArray&&\29 +4923:skia_private::TArray::Allocate\28int\2c\20double\29 +4924:skia_private::TArray::copy\28skia::textlayout::Cluster\20const*\29 +4925:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4926:skia_private::TArray::Allocate\28int\2c\20double\29 +4927:skia_private::TArray::initData\28int\29 +4928:skia_private::TArray::destroyAll\28\29 +4929:skia_private::TArray::TArray\28skia_private::TArray&&\29 +4930:skia_private::TArray::Allocate\28int\2c\20double\29 +4931:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4932:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4933:skia_private::TArray::push_back\28\29 +4934:skia_private::TArray::push_back\28\29 +4935:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4936:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4937:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4938:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4939:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4940:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4941:skia_private::TArray::destroyAll\28\29 +4942:skia_private::TArray::clear\28\29 +4943:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4944:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4945:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4946:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4947:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4948:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4949:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4950:skia_private::TArray::operator=\28skia_private::TArray&&\29 +4951:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4952:skia_private::TArray::destroyAll\28\29 +4953:skia_private::TArray::clear\28\29 +4954:skia_private::TArray::Allocate\28int\2c\20double\29 +4955:skia_private::TArray::BufferFinishedMessage\2c\20false>::operator=\28skia_private::TArray::BufferFinishedMessage\2c\20false>&&\29 +4956:skia_private::TArray::BufferFinishedMessage\2c\20false>::installDataAndUpdateCapacity\28SkSpan\29 +4957:skia_private::TArray::BufferFinishedMessage\2c\20false>::destroyAll\28\29 +4958:skia_private::TArray::BufferFinishedMessage\2c\20false>::clear\28\29 +4959:skia_private::TArray::Plane\2c\20false>::preallocateNewData\28int\2c\20double\29 +4960:skia_private::TArray::Plane\2c\20false>::installDataAndUpdateCapacity\28SkSpan\29 +4961:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +4962:skia_private::TArray\2c\20true>::~TArray\28\29 +4963:skia_private::TArray\2c\20true>::~TArray\28\29 +4964:skia_private::TArray\2c\20true>::preallocateNewData\28int\2c\20double\29 +4965:skia_private::TArray\2c\20true>::clear\28\29 +4966:skia_private::TArray::push_back_raw\28int\29 +4967:skia_private::TArray::push_back\28hb_feature_t&&\29 +4968:skia_private::TArray::resize_back\28int\29 +4969:skia_private::TArray::reset\28int\29 +4970:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +4971:skia_private::TArray::operator=\28skia_private::TArray&&\29 +4972:skia_private::TArray::initData\28int\29 +4973:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4974:skia_private::TArray<\28anonymous\20namespace\29::DrawAtlasOpImpl::Geometry\2c\20true>::checkRealloc\28int\2c\20double\29 +4975:skia_private::TArray<\28anonymous\20namespace\29::DefaultPathOp::PathData\2c\20true>::preallocateNewData\28int\2c\20double\29 +4976:skia_private::TArray<\28anonymous\20namespace\29::AAHairlineOp::PathData\2c\20true>::preallocateNewData\28int\2c\20double\29 +4977:skia_private::TArray<\28anonymous\20namespace\29::AAHairlineOp::PathData\2c\20true>::installDataAndUpdateCapacity\28SkSpan\29 +4978:skia_private::TArray::push_back_n\28int\2c\20SkUnicode::CodeUnitFlags\20const&\29 +4979:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4980:skia_private::TArray::operator=\28skia_private::TArray&&\29 +4981:skia_private::TArray::destroyAll\28\29 +4982:skia_private::TArray::initData\28int\29 +4983:skia_private::TArray::TArray\28skia_private::TArray\20const&\29 +4984: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::FixedArray<4\2c\20signed\20char>\29::ReorderedArgument&&\29 +4985:skia_private::TArray::reserve_exact\28int\29 +4986:skia_private::TArray::fromBack\28int\29 +4987:skia_private::TArray::TArray\28skia_private::TArray&&\29 +4988:skia_private::TArray::Allocate\28int\2c\20double\29 +4989:skia_private::TArray::push_back\28SkSL::Field&&\29 +4990:skia_private::TArray::initData\28int\29 +4991:skia_private::TArray::Allocate\28int\2c\20double\29 +4992:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +4993:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +4994:skia_private::TArray::checkRealloc\28int\2c\20double\29 +4995:skia_private::TArray\2c\20true>::push_back\28SkRGBA4f<\28SkAlphaType\292>&&\29 +4996:skia_private::TArray\2c\20true>::operator=\28skia_private::TArray\2c\20true>&&\29 +4997:skia_private::TArray\2c\20true>::checkRealloc\28int\2c\20double\29 +4998:skia_private::TArray::push_back\28SkPoint\20const&\29 +4999:skia_private::TArray::operator=\28skia_private::TArray\20const&\29 +5000:skia_private::TArray::copy\28SkPoint\20const*\29 +5001:skia_private::TArray::~TArray\28\29 +5002:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +5003:skia_private::TArray::destroyAll\28\29 +5004:skia_private::TArray::~TArray\28\29 +5005:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +5006:skia_private::TArray::destroyAll\28\29 +5007:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +5008:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +5009:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +5010:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +5011:skia_private::TArray::checkRealloc\28int\2c\20double\29 +5012:skia_private::TArray::checkRealloc\28int\2c\20double\29 +5013:skia_private::TArray::push_back\28\29 +5014:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +5015:skia_private::TArray::push_back\28\29 +5016:skia_private::TArray::push_back_raw\28int\29 +5017:skia_private::TArray::checkRealloc\28int\2c\20double\29 +5018:skia_private::TArray::~TArray\28\29 +5019:skia_private::TArray::operator=\28skia_private::TArray&&\29 +5020:skia_private::TArray::destroyAll\28\29 +5021:skia_private::TArray::clear\28\29 +5022:skia_private::TArray::Allocate\28int\2c\20double\29 +5023:skia_private::TArray::checkRealloc\28int\2c\20double\29 +5024:skia_private::TArray::push_back\28\29 +5025:skia_private::TArray::checkRealloc\28int\2c\20double\29 +5026:skia_private::TArray::pop_back\28\29 +5027:skia_private::TArray::checkRealloc\28int\2c\20double\29 +5028:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +5029:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +5030:skia_private::TArray::installDataAndUpdateCapacity\28SkSpan\29 +5031:skia_private::TArray::preallocateNewData\28int\2c\20double\29 +5032:skia_private::STArray<8\2c\20int\2c\20true>::STArray\28int\29 +5033:skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>::STArray\28skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>\20const&\29 +5034:skia_private::AutoTMalloc::realloc\28unsigned\20long\29 +5035:skia_private::AutoTMalloc::reset\28unsigned\20long\29 +5036:skia_private::AutoTArray::AutoTArray\28unsigned\20long\29 +5037:skia_private::AutoTArray::AutoTArray\28unsigned\20long\29 +5038:skia_private::AutoTArray::AutoTArray\28unsigned\20long\29 +5039:skia_private::AutoSTMalloc<256ul\2c\20unsigned\20short\2c\20void>::AutoSTMalloc\28unsigned\20long\29 +5040:skia_private::AutoSTArray<64\2c\20TriangulationVertex>::reset\28int\29 +5041:skia_private::AutoSTArray<64\2c\20SkGlyph\20const*>::reset\28int\29 +5042:skia_private::AutoSTArray<4\2c\20unsigned\20char>::reset\28int\29 +5043:skia_private::AutoSTArray<4\2c\20GrResourceHandle>::reset\28int\29 +5044:skia_private::AutoSTArray<3\2c\20std::__2::unique_ptr>>::reset\28int\29 +5045:skia_private::AutoSTArray<32\2c\20unsigned\20short>::~AutoSTArray\28\29 +5046:skia_private::AutoSTArray<32\2c\20unsigned\20short>::reset\28int\29 +5047:skia_private::AutoSTArray<32\2c\20SkRect>::reset\28int\29 +5048:skia_private::AutoSTArray<2\2c\20sk_sp>::reset\28int\29 +5049:skia_private::AutoSTArray<16\2c\20SkRect>::~AutoSTArray\28\29 +5050:skia_private::AutoSTArray<16\2c\20GrMipLevel>::reset\28int\29 +5051:skia_private::AutoSTArray<15\2c\20GrMipLevel>::reset\28int\29 +5052:skia_private::AutoSTArray<14\2c\20std::__2::unique_ptr>>::~AutoSTArray\28\29 +5053:skia_private::AutoSTArray<14\2c\20std::__2::unique_ptr>>::reset\28int\29 +5054:skia_private::AutoSTArray<14\2c\20GrMipLevel>::~AutoSTArray\28\29 +5055:skia_private::AutoSTArray<14\2c\20GrMipLevel>::reset\28int\29 +5056:skia_private::AutoSTArray<128\2c\20unsigned\20char>::~AutoSTArray\28\29 +5057:skia_png_set_longjmp_fn +5058:skia_png_read_finish_IDAT +5059:skia_png_read_chunk_header +5060:skia_png_read_IDAT_data +5061:skia_png_gamma_16bit_correct +5062:skia_png_do_strip_channel +5063:skia_png_do_gray_to_rgb +5064:skia_png_do_expand +5065:skia_png_destroy_gamma_table +5066:skia_png_colorspace_set_sRGB +5067:skia_png_check_IHDR +5068:skia_png_calculate_crc +5069:skia::textlayout::operator==\28skia::textlayout::FontArguments\20const&\2c\20skia::textlayout::FontArguments\20const&\29 +5070:skia::textlayout::\28anonymous\20namespace\29::littleRound\28float\29 +5071:skia::textlayout::\28anonymous\20namespace\29::LineBreakerWithLittleRounding::breakLine\28float\29\20const +5072:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29 +5073:skia::textlayout::TypefaceFontStyleSet::matchStyle\28SkFontStyle\20const&\29 +5074:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29 +5075:skia::textlayout::TypefaceFontProvider::registerTypeface\28sk_sp\2c\20SkString\20const&\29 +5076:skia::textlayout::TextWrapper::TextStretch::TextStretch\28skia::textlayout::Cluster*\2c\20skia::textlayout::Cluster*\2c\20bool\29 +5077:skia::textlayout::TextStyle::matchOneAttribute\28skia::textlayout::StyleType\2c\20skia::textlayout::TextStyle\20const&\29\20const +5078:skia::textlayout::TextStyle::equals\28skia::textlayout::TextStyle\20const&\29\20const +5079:skia::textlayout::TextShadow::operator!=\28skia::textlayout::TextShadow\20const&\29\20const +5080:skia::textlayout::TextLine::~TextLine\28\29 +5081:skia::textlayout::TextLine::spacesWidth\28\29\20const +5082:skia::textlayout::TextLine::shiftCluster\28skia::textlayout::Cluster\20const*\2c\20float\2c\20float\29 +5083: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 +5084:skia::textlayout::TextLine::iterateThroughClustersInGlyphsOrder\28bool\2c\20bool\2c\20std::__2::function\20const&\29\20const +5085: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 +5086:skia::textlayout::TextLine::getMetrics\28\29\20const +5087:skia::textlayout::TextLine::extendHeight\28skia::textlayout::TextLine::ClipContext\20const&\29\20const +5088:skia::textlayout::TextLine::ensureTextBlobCachePopulated\28\29 +5089:skia::textlayout::TextLine::endsWithHardLineBreak\28\29\20const +5090:skia::textlayout::TextLine::buildTextBlob\28skia::textlayout::SkRange\2c\20skia::textlayout::TextStyle\20const&\2c\20skia::textlayout::TextLine::ClipContext\20const&\29 +5091: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 +5092:skia::textlayout::TextLine::TextBlobRecord::~TextBlobRecord\28\29 +5093:skia::textlayout::TextLine::TextBlobRecord::TextBlobRecord\28\29 +5094: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 +5095:skia::textlayout::StrutStyle::StrutStyle\28\29 +5096:skia::textlayout::Run::shift\28skia::textlayout::Cluster\20const*\2c\20float\29 +5097:skia::textlayout::Run::newRunBuffer\28\29 +5098:skia::textlayout::Run::clusterIndex\28unsigned\20long\29\20const +5099:skia::textlayout::Run::calculateMetrics\28\29 +5100:skia::textlayout::ParagraphStyle::ellipsized\28\29\20const +5101:skia::textlayout::ParagraphPainter::DecorationStyle::DecorationStyle\28unsigned\20int\2c\20float\2c\20std::__2::optional\29 +5102:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29 +5103:skia::textlayout::ParagraphImpl::resolveStrut\28\29 +5104:skia::textlayout::ParagraphImpl::paint\28skia::textlayout::ParagraphPainter*\2c\20float\2c\20float\29 +5105:skia::textlayout::ParagraphImpl::getGlyphInfoAtUTF16Offset\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +5106:skia::textlayout::ParagraphImpl::getGlyphClusterAt\28unsigned\20long\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +5107:skia::textlayout::ParagraphImpl::ensureUTF16Mapping\28\29::$_0::operator\28\29\28\29\20const::'lambda0'\28unsigned\20long\29::operator\28\29\28unsigned\20long\29\20const +5108:skia::textlayout::ParagraphImpl::computeEmptyMetrics\28\29 +5109: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 +5110:skia::textlayout::ParagraphCacheKey::ParagraphCacheKey\28skia::textlayout::ParagraphImpl\20const*\29 +5111:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29 +5112:skia::textlayout::ParagraphBuilderImpl::finalize\28\29 +5113:skia::textlayout::ParagraphBuilderImpl::ensureUTF16Mapping\28\29::$_0::operator\28\29\28\29\20const::'lambda0'\28unsigned\20long\29::operator\28\29\28unsigned\20long\29\20const +5114:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\2c\20bool\29 +5115:skia::textlayout::Paragraph::~Paragraph\28\29 +5116:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29 +5117: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 +5118:skia::textlayout::OneLineShaper::clusteredText\28skia::textlayout::SkRange&\29 +5119:skia::textlayout::OneLineShaper::FontKey::operator==\28skia::textlayout::OneLineShaper::FontKey\20const&\29\20const +5120:skia::textlayout::InternalLineMetrics::add\28skia::textlayout::InternalLineMetrics\29 +5121:skia::textlayout::FontFeature::operator==\28skia::textlayout::FontFeature\20const&\29\20const +5122:skia::textlayout::FontFeature::FontFeature\28skia::textlayout::FontFeature\20const&\29 +5123:skia::textlayout::FontCollection::~FontCollection\28\29 +5124:skia::textlayout::FontCollection::matchTypeface\28SkString\20const&\2c\20SkFontStyle\29 +5125:skia::textlayout::FontCollection::defaultFallback\28int\2c\20SkFontStyle\2c\20SkString\20const&\29 +5126:skia::textlayout::FontCollection::FamilyKey::operator==\28skia::textlayout::FontCollection::FamilyKey\20const&\29\20const +5127:skia::textlayout::FontCollection::FamilyKey::FamilyKey\28skia::textlayout::FontCollection::FamilyKey&&\29 +5128:skia::textlayout::FontArguments::~FontArguments\28\29 +5129:skia::textlayout::Decoration::operator==\28skia::textlayout::Decoration\20const&\29\20const +5130:skia::textlayout::Cluster::trimmedWidth\28unsigned\20long\29\20const +5131:skgpu::tess::\28anonymous\20namespace\29::write_curve_index_buffer_base_index\28skgpu::VertexWriter\2c\20unsigned\20long\2c\20unsigned\20short\29 +5132:skgpu::tess::StrokeParams::set\28SkStrokeRec\20const&\29 +5133:skgpu::tess::StrokeIterator::finishOpenContour\28\29 +5134:skgpu::tess::PreChopPathCurves\28float\2c\20SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\29 +5135:skgpu::tess::LinearTolerances::setStroke\28skgpu::tess::StrokeParams\20const&\2c\20float\29 +5136:skgpu::tess::LinearTolerances::requiredResolveLevel\28\29\20const +5137:skgpu::tess::GetJoinType\28SkStrokeRec\20const&\29 +5138:skgpu::tess::FixedCountCurves::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +5139:skgpu::tess::CullTest::areVisible3\28SkPoint\20const*\29\20const +5140:skgpu::tess::ConicHasCusp\28SkPoint\20const*\29 +5141:skgpu::tess::CalcNumRadialSegmentsPerRadian\28float\29 +5142:skgpu::make_unnormalized_half_kernel\28float*\2c\20int\2c\20float\29 +5143:skgpu::ganesh::\28anonymous\20namespace\29::add_line_to_segment\28SkPoint\20const&\2c\20skia_private::TArray*\29 +5144:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29 +5145:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::flush\28GrMeshDrawTarget*\2c\20skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::FlushInfo*\29\20const +5146: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 +5147: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 +5148:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29 +5149:skgpu::ganesh::\28anonymous\20namespace\29::ChopPathIfNecessary\28SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20SkStrokeRec\20const&\2c\20SkPath*\29 +5150:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29 +5151:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::recordDraw\28GrMeshDrawTarget*\2c\20int\2c\20unsigned\20long\2c\20void*\2c\20int\2c\20unsigned\20short*\29 +5152:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::PathData::PathData\28skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::PathData&&\29 +5153: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 +5154:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29 +5155:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::PathData::PathData\28skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::PathData&&\29 +5156:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::AAConvexPathOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrUserStencilSettings\20const*\29 +5157: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 +5158:skgpu::ganesh::SurfaceFillContext::fillRectToRectWithFP\28SkRect\20const&\2c\20SkIRect\20const&\2c\20std::__2::unique_ptr>\29 +5159:skgpu::ganesh::SurfaceFillContext::blitTexture\28GrSurfaceProxyView\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\29 +5160:skgpu::ganesh::SurfaceFillContext::arenas\28\29 +5161:skgpu::ganesh::SurfaceFillContext::addDrawOp\28std::__2::unique_ptr>\29 +5162:skgpu::ganesh::SurfaceFillContext::SurfaceFillContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorInfo\20const&\29 +5163:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29.1 +5164:skgpu::ganesh::SurfaceDrawContext::setNeedsStencil\28\29 +5165:skgpu::ganesh::SurfaceDrawContext::internalStencilClear\28SkIRect\20const*\2c\20bool\29 +5166:skgpu::ganesh::SurfaceDrawContext::fillRectWithEdgeAA\28GrClip\20const*\2c\20GrPaint&&\2c\20GrQuadAAFlags\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20SkRect\20const*\29 +5167:skgpu::ganesh::SurfaceDrawContext::drawVertices\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20sk_sp\2c\20GrPrimitiveType*\2c\20bool\29 +5168: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 +5169: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 +5170:skgpu::ganesh::SurfaceDrawContext::drawStrokedLine\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkPoint\20const*\2c\20SkStrokeRec\20const&\29 +5171:skgpu::ganesh::SurfaceDrawContext::drawRegion\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRegion\20const&\2c\20GrStyle\20const&\2c\20GrUserStencilSettings\20const*\29 +5172:skgpu::ganesh::SurfaceDrawContext::drawOval\28GrClip\20const*\2c\20GrPaint&&\2c\20GrAA\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20GrStyle\20const&\29 +5173:skgpu::ganesh::SurfaceDrawContext::drawAtlas\28GrClip\20const*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20int\2c\20SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\29 +5174:skgpu::ganesh::SurfaceDrawContext::attemptQuadOptimization\28GrClip\20const*\2c\20GrUserStencilSettings\20const*\2c\20DrawQuad*\2c\20GrPaint*\29::$_0::operator\28\29\28\29\20const +5175:skgpu::ganesh::SurfaceDrawContext::SurfaceDrawContext\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20GrSurfaceProxyView\2c\20GrColorType\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +5176:skgpu::ganesh::SurfaceContext::writePixels\28GrDirectContext*\2c\20GrCPixmap\2c\20SkIPoint\29 +5177:skgpu::ganesh::SurfaceContext::rescaleInto\28skgpu::ganesh::SurfaceFillContext*\2c\20SkIRect\2c\20SkIRect\2c\20SkImage::RescaleGamma\2c\20SkImage::RescaleMode\29 +5178:skgpu::ganesh::SurfaceContext::copy\28sk_sp\2c\20SkIRect\2c\20SkIPoint\29 +5179:skgpu::ganesh::SurfaceContext::copyScaled\28sk_sp\2c\20SkIRect\2c\20SkIRect\2c\20SkFilterMode\29 +5180: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 +5181: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 +5182: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 +5183:skgpu::ganesh::StrokeTessellator::draw\28GrOpFlushState*\29\20const +5184:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29 +5185:skgpu::ganesh::StrokeTessellateOp::prePrepareTessellator\28GrTessellationShader::ProgramArgs&&\2c\20GrAppliedClip&&\29 +5186:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::allowed_stroke\28GrCaps\20const*\2c\20SkStrokeRec\20const&\2c\20GrAA\2c\20bool*\29 +5187:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29 +5188: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 +5189:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29 +5190:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::ClassID\28\29 +5191: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 +5192: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 +5193: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 +5194:skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +5195:skgpu::ganesh::SmallPathAtlasMgr::reset\28\29 +5196:skgpu::ganesh::SmallPathAtlasMgr::findOrCreate\28skgpu::ganesh::SmallPathShapeDataKey\20const&\29 +5197:skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +5198:skgpu::ganesh::SmallPathAtlasMgr::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +5199:skgpu::ganesh::ShadowRRectOp::Make\28GrRecordingContext*\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkRRect\20const&\2c\20float\2c\20float\29 +5200:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29 +5201: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 +5202:skgpu::ganesh::QuadPerEdgeAA::VertexSpec::primitiveType\28\29\20const +5203: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 +5204:skgpu::ganesh::QuadPerEdgeAA::Tessellator::append\28GrQuad*\2c\20GrQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\2c\20GrQuadAAFlags\29 +5205:skgpu::ganesh::QuadPerEdgeAA::Tessellator::Tessellator\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29 +5206:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29 +5207:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::initializeAttrs\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\29 +5208:skgpu::ganesh::QuadPerEdgeAA::IssueDraw\28GrCaps\20const&\2c\20GrOpsRenderPass*\2c\20skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20int\2c\20int\2c\20int\2c\20int\29 +5209:skgpu::ganesh::QuadPerEdgeAA::GetIndexBuffer\28GrMeshDrawTarget*\2c\20skgpu::ganesh::QuadPerEdgeAA::IndexBufferOption\29 +5210:skgpu::ganesh::PathWedgeTessellator::Make\28SkArenaAlloc*\2c\20bool\2c\20skgpu::tess::PatchAttribs\29 +5211:skgpu::ganesh::PathTessellator::PathTessellator\28bool\2c\20skgpu::tess::PatchAttribs\29 +5212:skgpu::ganesh::PathTessellator::PathDrawList*\20SkArenaAlloc::make\20const&>\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\29 +5213:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29 +5214:skgpu::ganesh::PathTessellateOp::usesMSAA\28\29\20const +5215:skgpu::ganesh::PathTessellateOp::prepareTessellator\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +5216:skgpu::ganesh::PathTessellateOp::PathTessellateOp\28SkArenaAlloc*\2c\20GrAAType\2c\20GrUserStencilSettings\20const*\2c\20SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrPaint&&\2c\20SkRect\20const&\29 +5217:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29 +5218:skgpu::ganesh::PathStencilCoverOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +5219:skgpu::ganesh::PathStencilCoverOp::ClassID\28\29 +5220:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29 +5221:skgpu::ganesh::PathInnerTriangulateOp::pushFanStencilProgram\28GrTessellationShader::ProgramArgs\20const&\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\29 +5222:skgpu::ganesh::PathInnerTriangulateOp::prePreparePrograms\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAppliedClip&&\29 +5223:skgpu::ganesh::PathCurveTessellator::~PathCurveTessellator\28\29 +5224:skgpu::ganesh::PathCurveTessellator::prepareWithTriangles\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20GrTriangulator::BreadcrumbTriangleList*\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +5225:skgpu::ganesh::PathCurveTessellator::Make\28SkArenaAlloc*\2c\20bool\2c\20skgpu::tess::PatchAttribs\29 +5226:skgpu::ganesh::OpsTask::setColorLoadOp\28GrLoadOp\2c\20std::__2::array\29 +5227:skgpu::ganesh::OpsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +5228:skgpu::ganesh::OpsTask::onExecute\28GrOpFlushState*\29 +5229:skgpu::ganesh::OpsTask::addSampledTexture\28GrSurfaceProxy*\29 +5230: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 +5231: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 +5232:skgpu::ganesh::OpsTask::OpsTask\28GrDrawingManager*\2c\20GrSurfaceProxyView\2c\20GrAuditTrail*\2c\20sk_sp\29 +5233: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 +5234:skgpu::ganesh::OpsTask::OpChain::OpChain\28std::__2::unique_ptr>\2c\20GrProcessorSet::Analysis\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const*\29 +5235:skgpu::ganesh::MakeFragmentProcessorFromView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +5236:skgpu::ganesh::LockTextureProxyView\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20GrImageTexGenPolicy\2c\20skgpu::Mipmapped\29 +5237:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29 +5238: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 +5239:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29 +5240:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::can_use_hw_derivatives_with_coverage\28skvx::Vec<2\2c\20float>\20const&\2c\20SkPoint\20const&\29 +5241:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29 +5242: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 +5243: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 +5244:skgpu::ganesh::DrawableOp::~DrawableOp\28\29 +5245:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29 +5246:skgpu::ganesh::DrawAtlasPathOp::prepareProgram\28GrCaps\20const&\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +5247:skgpu::ganesh::Device::~Device\28\29 +5248:skgpu::ganesh::Device::replaceBackingProxy\28SkSurface::ContentChangeMode\2c\20sk_sp\2c\20GrColorType\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20SkSurfaceProps\20const&\29 +5249:skgpu::ganesh::Device::makeSpecial\28SkBitmap\20const&\29 +5250:skgpu::ganesh::Device::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +5251:skgpu::ganesh::Device::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +5252: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 +5253:skgpu::ganesh::Device::convertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +5254:skgpu::ganesh::Device::android_utils_clipAsRgn\28SkRegion*\29\20const +5255: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 +5256:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +5257:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29 +5258:skgpu::ganesh::CopyView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\2c\20std::__2::basic_string_view>\29 +5259:skgpu::ganesh::ClipStack::clipPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20GrAA\2c\20SkClipOp\29 +5260:skgpu::ganesh::ClipStack::begin\28\29\20const +5261:skgpu::ganesh::ClipStack::SaveRecord::removeElements\28SkTBlockList*\29 +5262:skgpu::ganesh::ClipStack::RawElement::clipType\28\29\20const +5263:skgpu::ganesh::ClipStack::Mask::invalidate\28GrProxyProvider*\29 +5264:skgpu::ganesh::ClipStack::ElementIter::operator++\28\29 +5265:skgpu::ganesh::ClipStack::Element::Element\28skgpu::ganesh::ClipStack::Element\20const&\29 +5266:skgpu::ganesh::ClipStack::Draw::Draw\28SkRect\20const&\2c\20GrAA\29 +5267:skgpu::ganesh::ClearOp::ClearOp\28skgpu::ganesh::ClearOp::Buffer\2c\20GrScissorState\20const&\2c\20std::__2::array\2c\20bool\29 +5268:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29 +5269:skgpu::ganesh::AtlasTextOp::operator\20new\28unsigned\20long\29 +5270:skgpu::ganesh::AtlasTextOp::onPrepareDraws\28GrMeshDrawTarget*\29::$_0::operator\28\29\28\29\20const +5271:skgpu::ganesh::AtlasTextOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +5272:skgpu::ganesh::AtlasTextOp::ClassID\28\29 +5273:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29 +5274:skgpu::ganesh::AtlasRenderTask::stencilAtlasRect\28GrRecordingContext*\2c\20SkRect\20const&\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20GrUserStencilSettings\20const*\29 +5275:skgpu::ganesh::AtlasRenderTask::readView\28GrCaps\20const&\29\20const +5276:skgpu::ganesh::AtlasRenderTask::instantiate\28GrOnFlushResourceProvider*\2c\20sk_sp\29 +5277:skgpu::ganesh::AtlasRenderTask::addPath\28SkMatrix\20const&\2c\20SkPath\20const&\2c\20SkIPoint\2c\20int\2c\20int\2c\20bool\2c\20SkIPoint16*\29 +5278:skgpu::ganesh::AtlasRenderTask::addAtlasDrawOp\28std::__2::unique_ptr>\2c\20GrCaps\20const&\29 +5279:skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +5280:skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +5281:skgpu::ganesh::AtlasPathRenderer::pathFitsInAtlas\28SkRect\20const&\2c\20GrAAType\29\20const +5282: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 +5283:skgpu::ganesh::AtlasPathRenderer::AtlasPathKey::operator==\28skgpu::ganesh::AtlasPathRenderer::AtlasPathKey\20const&\29\20const +5284:skgpu::ganesh::AsFragmentProcessor\28GrRecordingContext*\2c\20SkImage\20const*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29 +5285:skgpu::TiledTextureUtils::OptimizeSampleArea\28SkISize\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkPoint\20const*\2c\20SkRect*\2c\20SkRect*\2c\20SkMatrix*\29 +5286:skgpu::TiledTextureUtils::CanDisableMipmap\28SkMatrix\20const&\2c\20SkMatrix\20const&\29 +5287:skgpu::TClientMappedBufferManager::process\28\29 +5288:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29 +5289:skgpu::TAsyncReadResult::count\28\29\20const +5290:skgpu::TAsyncReadResult::Plane::~Plane\28\29 +5291:skgpu::Swizzle::RGB1\28\29 +5292:skgpu::Swizzle::BGRA\28\29 +5293:skgpu::ScratchKey::ScratchKey\28skgpu::ScratchKey\20const&\29 +5294:skgpu::ResourceKey::operator=\28skgpu::ResourceKey\20const&\29 +5295:skgpu::RefCntedCallback::Make\28void\20\28*\29\28void*\29\2c\20void*\29 +5296:skgpu::RectanizerSkyline::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +5297:skgpu::RectanizerSkyline::RectanizerSkyline\28int\2c\20int\29 +5298:skgpu::Plot::~Plot\28\29 +5299:skgpu::Plot::resetRects\28\29 +5300:skgpu::Plot::Plot\28int\2c\20int\2c\20skgpu::AtlasGenerationCounter*\2c\20int\2c\20int\2c\20int\2c\20int\2c\20SkColorType\2c\20unsigned\20long\29 +5301:skgpu::KeyBuilder::flush\28\29 +5302:skgpu::KeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +5303:skgpu::GetReducedBlendModeInfo\28SkBlendMode\29 +5304:skgpu::GetApproxSize\28SkISize\29::$_0::operator\28\29\28int\29\20const +5305:skgpu::CreateIntegralTable\28int\29 +5306:skgpu::ComputeIntegralTableWidth\28float\29 +5307:skgpu::AtlasLocator::updatePlotLocator\28skgpu::PlotLocator\29 +5308:skgpu::AtlasLocator::insetSrc\28int\29 +5309:skcms_Matrix3x3_invert +5310:sk_sp::~sk_sp\28\29 +5311: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 +5312:sk_sp<\28anonymous\20namespace\29::ShadowInvalidator>\20sk_make_sp<\28anonymous\20namespace\29::ShadowInvalidator\2c\20SkResourceCache::Key&>\28SkResourceCache::Key&\29 +5313:sk_sp::operator=\28sk_sp\20const&\29 +5314:sk_sp&\20std::__2::vector\2c\20std::__2::allocator>>::emplace_back>\28sk_sp&&\29 +5315:sk_sp\20sk_make_sp>\28sk_sp&&\29 +5316:sk_sp::~sk_sp\28\29 +5317:sk_sp::sk_sp\28sk_sp\20const&\29 +5318:sk_sp::operator=\28sk_sp&&\29 +5319:sk_sp::reset\28SkData\20const*\29 +5320:sk_sp::operator=\28sk_sp\20const&\29 +5321:sk_sp::operator=\28sk_sp\20const&\29 +5322:sk_sp::operator=\28sk_sp&&\29 +5323:sk_sp\20sk_make_sp\2c\20float\2c\20sk_sp>\28sk_sp&&\2c\20float&&\2c\20sk_sp&&\29 +5324:sk_sp::~sk_sp\28\29 +5325:sk_sp&\20sk_sp::operator=\28sk_sp&&\29 +5326:sk_sp::reset\28GrSurface::RefCntedReleaseProc*\29 +5327:sk_sp::operator=\28sk_sp&&\29 +5328:sk_sp::~sk_sp\28\29 +5329:sk_sp::operator=\28sk_sp&&\29 +5330:sk_sp::~sk_sp\28\29 +5331:sk_sp\20sk_make_sp\28\29 +5332:sk_sp::reset\28GrArenas*\29 +5333:sk_ft_free\28FT_MemoryRec_*\2c\20void*\29 +5334:sk_fopen\28char\20const*\2c\20SkFILE_Flags\29 +5335:sk_fgetsize\28_IO_FILE*\29 +5336:sk_determinant\28float\20const*\2c\20int\29 +5337:sk_blit_below\28SkBlitter*\2c\20SkIRect\20const&\2c\20SkRegion\20const&\29 +5338:sk_blit_above\28SkBlitter*\2c\20SkIRect\20const&\2c\20SkRegion\20const&\29 +5339:sid_to_gid_t\20const*\20hb_sorted_array_t::bsearch\28unsigned\20int\20const&\2c\20sid_to_gid_t\20const*\29 +5340:short\20sk_saturate_cast\28float\29 +5341:sharp_angle\28SkPoint\20const*\29 +5342:setup_masks_arabic_plan\28arabic_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_script_t\29 +5343: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 +5344:set_normal_unitnormal\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +5345:set_khr_debug_label\28GrGLGpu*\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +5346:setThrew +5347:setEmptyCheck\28SkRegion*\29 +5348:serialize_image\28SkImage\20const*\2c\20SkSerialProcs\29 +5349:sem_trywait +5350:sem_init +5351:sect_clamp_with_vertical\28SkPoint\20const*\2c\20float\29 +5352:scanexp +5353:scalbnl +5354:safe_picture_bounds\28SkRect\20const&\29 +5355:rt_has_msaa_render_buffer\28GrGLRenderTarget\20const*\2c\20GrGLCaps\20const&\29 +5356:rrect_type_to_vert_count\28RRectType\29 +5357:row_is_all_zeros\28unsigned\20char\20const*\2c\20int\29 +5358:round_up_to_int\28float\29 +5359:round_down_to_int\28float\29 +5360:rotate\28SkDCubic\20const&\2c\20int\2c\20int\2c\20SkDCubic&\29 +5361:rewind_if_necessary\28GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29 +5362:resolveImplicitLevels\28UBiDi*\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +5363:renderbuffer_storage_msaa\28GrGLGpu*\2c\20int\2c\20unsigned\20int\2c\20int\2c\20int\29 +5364:remove_edge_below\28GrTriangulator::Edge*\29 +5365:remove_edge_above\28GrTriangulator::Edge*\29 +5366:reductionLineCount\28SkDQuad\20const&\29 +5367: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 +5368:rect_exceeds\28SkRect\20const&\2c\20float\29 +5369:reclassify_vertex\28TriangulationVertex*\2c\20SkPoint\20const*\2c\20int\2c\20ReflexHash*\2c\20SkTInternalLList*\29 +5370:radii_are_nine_patch\28SkPoint\20const*\29 +5371:quad_type_for_transformed_rect\28SkMatrix\20const&\29 +5372:quad_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5373:quad_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5374:quad_in_line\28SkPoint\20const*\29 +5375:pthread_mutex_destroy +5376:pthread_cond_broadcast +5377:psh_hint_table_record +5378:psh_hint_table_init +5379:psh_hint_table_find_strong_points +5380:psh_hint_table_done +5381:psh_hint_table_activate_mask +5382:psh_hint_align +5383:psh_glyph_load_points +5384:psh_globals_scale_widths +5385:psh_compute_dir +5386:psh_blues_set_zones_0 +5387:psh_blues_set_zones +5388:ps_table_realloc +5389:ps_parser_to_token_array +5390:ps_parser_load_field +5391:ps_mask_table_last +5392:ps_mask_table_done +5393:ps_hints_stem +5394:ps_dimension_end +5395:ps_dimension_done +5396:ps_dimension_add_t1stem +5397:ps_builder_start_point +5398:ps_builder_close_contour +5399:ps_builder_add_point1 +5400:printf_core +5401:prepare_to_draw_into_mask\28SkRect\20const&\2c\20SkMaskBuilder*\29 +5402: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 +5403:portable::uniform_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5404:portable::set_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5405:portable::copy_from_indirect_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5406:portable::copy_2_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5407:portable::check_decal_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5408:pop_arg +5409:pointInTriangle\28SkDPoint\20const*\2c\20SkDPoint\20const&\29 +5410:pntz +5411:png_rtran_ok +5412:png_malloc_array_checked +5413:png_inflate +5414:png_format_buffer +5415:png_decompress_chunk +5416:png_colorspace_check_gamma +5417:png_cache_unknown_chunk +5418:pin_offset_s32\28int\2c\20int\2c\20int\29 +5419:path_key_from_data_size\28SkPath\20const&\29 +5420: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 +5421:paint_color_to_dst\28SkPaint\20const&\2c\20SkPixmap\20const&\29 +5422:operator==\28SkRect\20const&\2c\20SkRect\20const&\29 +5423:operator==\28SkRRect\20const&\2c\20SkRRect\20const&\29 +5424:operator==\28SkPaint\20const&\2c\20SkPaint\20const&\29 +5425:operator!=\28SkRRect\20const&\2c\20SkRRect\20const&\29 +5426:open_face +5427:on_same_side\28SkPoint\20const*\2c\20int\2c\20int\29 +5428:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::~TransformedMaskSubRun\28\29.1 +5429:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::~TransformedMaskSubRun\28\29 +5430:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +5431:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::glyphs\28\29\20const +5432:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29.1 +5433:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +5434:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::size\28\29\20const +5435:non-virtual\20thunk\20to\20SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +5436:move_multiples\28SkOpContourHead*\29 +5437:mono_cubic_closestT\28float\20const*\2c\20float\29 +5438:mbsrtowcs +5439:matchesEnd\28SkDPoint\20const*\2c\20SkDPoint\20const&\29 +5440: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 +5441:map_quad_to_rect\28SkRSXform\20const&\2c\20SkRect\20const&\29 +5442: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 +5443:make_xrect\28SkRect\20const&\29 +5444:make_tiled_gradient\28GrFPArgs\20const&\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20bool\2c\20bool\29 +5445:make_premul_effect\28std::__2::unique_ptr>\29 +5446:make_paint_with_image\28SkPaint\20const&\2c\20SkBitmap\20const&\2c\20SkSamplingOptions\20const&\2c\20SkMatrix*\29 +5447: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 +5448:make_clamped_gradient\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20bool\29 +5449:make_bmp_proxy\28GrProxyProvider*\2c\20SkBitmap\20const&\2c\20GrColorType\2c\20skgpu::Mipmapped\2c\20SkBackingFit\2c\20skgpu::Budgeted\29 +5450:long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +5451:long\20long\20std::__2::__num_get_signed_integral\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\2c\20int\29 +5452:long\20double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +5453:log2f_\28float\29 +5454:load_post_names +5455:line_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5456:line_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5457:lineMetrics_getLineNumber +5458:lineMetrics_getHardBreak +5459:lineBreakBuffer_free +5460:lin_srgb_to_oklab\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +5461:lang_find_or_insert\28char\20const*\29 +5462:is_zero_width_char\28hb_font_t*\2c\20unsigned\20int\29 +5463:is_simple_rect\28GrQuad\20const&\29 +5464:is_plane_config_compatible_with_subsampling\28SkYUVAInfo::PlaneConfig\2c\20SkYUVAInfo::Subsampling\29 +5465:is_overlap_edge\28GrTriangulator::Edge*\29 +5466:is_int\28float\29 +5467:is_halant_use\28hb_glyph_info_t\20const&\29 +5468:is_float_fp32\28GrGLContextInfo\20const&\2c\20GrGLInterface\20const*\2c\20unsigned\20int\29 +5469:iprintf +5470:invalidate_buffer\28GrGLGpu*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20long\29 +5471:interp_cubic_coords\28double\20const*\2c\20double*\2c\20double\29 +5472:int\20SkRecords::Pattern>::matchFirst>\28SkRecords::Is*\2c\20SkRecord*\2c\20int\29 +5473:int\20OT::IntType::cmp\28unsigned\20int\29\20const +5474:inside_triangle\28skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\2c\20skvx::Vec<4\2c\20float>\20const&\29 +5475:init_mparams +5476:inflateEnd +5477:image_ref +5478:image_getWidth +5479:hb_vector_t::resize\28int\2c\20bool\2c\20bool\29 +5480:hb_vector_t\2c\20false>::shrink_vector\28unsigned\20int\29 +5481:hb_vector_t\2c\20false>::resize\28int\2c\20bool\2c\20bool\29 +5482:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +5483:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +5484:hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +5485:hb_vector_t::pop\28\29 +5486:hb_vector_t\2c\20false>::shrink_vector\28unsigned\20int\29 +5487:hb_vector_t\2c\20false>::fini\28\29 +5488:hb_vector_t::shrink_vector\28unsigned\20int\29 +5489:hb_vector_t::fini\28\29 +5490:hb_unicode_mirroring_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +5491:hb_unicode_funcs_t::is_default_ignorable\28unsigned\20int\29 +5492:hb_unicode_funcs_get_default +5493:hb_tag_from_string +5494: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 +5495:hb_shape_plan_key_t::fini\28\29 +5496: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 +5497: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 +5498:hb_serialize_context_t::fini\28\29 +5499:hb_sanitize_context_t::return_t\20OT::Context::dispatch\28hb_sanitize_context_t*\29\20const +5500:hb_sanitize_context_t::return_t\20OT::ChainContext::dispatch\28hb_sanitize_context_t*\29\20const +5501:hb_paint_funcs_t::sweep_gradient\28void*\2c\20hb_color_line_t*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5502: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 +5503:hb_paint_funcs_t::push_skew\28void*\2c\20float\2c\20float\29 +5504:hb_paint_funcs_t::push_rotate\28void*\2c\20float\29 +5505:hb_paint_funcs_t::push_root_transform\28void*\2c\20hb_font_t\20const*\29 +5506:hb_paint_funcs_t::push_inverse_root_transform\28void*\2c\20hb_font_t*\29 +5507:hb_paint_funcs_t::push_group\28void*\29 +5508:hb_paint_funcs_t::pop_group\28void*\2c\20hb_paint_composite_mode_t\29 +5509: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 +5510: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 +5511:hb_paint_extents_get_funcs\28\29 +5512:hb_paint_extents_context_t::~hb_paint_extents_context_t\28\29 +5513:hb_paint_extents_context_t::pop_clip\28\29 +5514:hb_paint_extents_context_t::hb_paint_extents_context_t\28\29 +5515:hb_ot_map_t::fini\28\29 +5516: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 +5517: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 +5518:hb_ot_layout_has_substitution +5519:hb_ot_font_set_funcs +5520:hb_lazy_loader_t\2c\20hb_face_t\2c\2038u\2c\20OT::sbix_accelerator_t>::get_stored\28\29\20const +5521:hb_lazy_loader_t\2c\20hb_face_t\2c\207u\2c\20OT::post_accelerator_t>::get_stored\28\29\20const +5522:hb_lazy_loader_t\2c\20hb_face_t\2c\207u\2c\20OT::post_accelerator_t>::do_destroy\28OT::post_accelerator_t*\29 +5523:hb_lazy_loader_t\2c\20hb_face_t\2c\2023u\2c\20hb_blob_t>::get_stored\28\29\20const +5524:hb_lazy_loader_t\2c\20hb_face_t\2c\205u\2c\20OT::hmtx_accelerator_t>::get_stored\28\29\20const +5525:hb_lazy_loader_t\2c\20hb_face_t\2c\2021u\2c\20OT::gvar_accelerator_t>::do_destroy\28OT::gvar_accelerator_t*\29 +5526:hb_lazy_loader_t\2c\20hb_face_t\2c\2015u\2c\20OT::glyf_accelerator_t>::do_destroy\28OT::glyf_accelerator_t*\29 +5527:hb_lazy_loader_t\2c\20hb_face_t\2c\203u\2c\20OT::cmap_accelerator_t>::do_destroy\28OT::cmap_accelerator_t*\29 +5528:hb_lazy_loader_t\2c\20hb_face_t\2c\2017u\2c\20OT::cff2_accelerator_t>::get_stored\28\29\20const +5529:hb_lazy_loader_t\2c\20hb_face_t\2c\2017u\2c\20OT::cff2_accelerator_t>::do_destroy\28OT::cff2_accelerator_t*\29 +5530:hb_lazy_loader_t\2c\20hb_face_t\2c\2016u\2c\20OT::cff1_accelerator_t>::do_destroy\28OT::cff1_accelerator_t*\29 +5531:hb_lazy_loader_t\2c\20hb_face_t\2c\2019u\2c\20hb_blob_t>::get\28\29\20const +5532:hb_lazy_loader_t\2c\20hb_face_t\2c\2024u\2c\20OT::GDEF_accelerator_t>::do_destroy\28OT::GDEF_accelerator_t*\29 +5533:hb_lazy_loader_t\2c\20hb_face_t\2c\2035u\2c\20hb_blob_t>::get\28\29\20const +5534:hb_lazy_loader_t\2c\20hb_face_t\2c\2037u\2c\20OT::CBDT_accelerator_t>::get_stored\28\29\20const +5535:hb_lazy_loader_t\2c\20hb_face_t\2c\2037u\2c\20OT::CBDT_accelerator_t>::do_destroy\28OT::CBDT_accelerator_t*\29 +5536:hb_lazy_loader_t\2c\20hb_face_t\2c\2032u\2c\20hb_blob_t>::get\28\29\20const +5537:hb_lazy_loader_t\2c\20hb_face_t\2c\2028u\2c\20hb_blob_t>::get_stored\28\29\20const +5538:hb_lazy_loader_t\2c\20hb_face_t\2c\2028u\2c\20hb_blob_t>::get\28\29\20const +5539:hb_lazy_loader_t\2c\20hb_face_t\2c\2029u\2c\20hb_blob_t>::get_stored\28\29\20const +5540:hb_lazy_loader_t\2c\20hb_face_t\2c\2029u\2c\20hb_blob_t>::get\28\29\20const +5541:hb_lazy_loader_t\2c\20hb_face_t\2c\2033u\2c\20hb_blob_t>::get\28\29\20const +5542:hb_lazy_loader_t\2c\20hb_face_t\2c\2030u\2c\20hb_blob_t>::get_stored\28\29\20const +5543:hb_language_matches +5544: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& +5545: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& +5546: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& +5547: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& +5548:hb_indic_get_categories\28unsigned\20int\29 +5549:hb_hashmap_t::fetch_item\28unsigned\20int\20const&\2c\20unsigned\20int\29\20const +5550:hb_hashmap_t::fetch_item\28hb_serialize_context_t::object_t\20const*\20const&\2c\20unsigned\20int\29\20const +5551:hb_font_t::subtract_glyph_origin_for_direction\28unsigned\20int\2c\20hb_direction_t\2c\20int*\2c\20int*\29 +5552:hb_font_t::subtract_glyph_h_origin\28unsigned\20int\2c\20int*\2c\20int*\29 +5553:hb_font_t::guess_v_origin_minus_h_origin\28unsigned\20int\2c\20int*\2c\20int*\29 +5554:hb_font_t::get_variation_glyph\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int\29 +5555:hb_font_t::get_glyph_v_origin_with_fallback\28unsigned\20int\2c\20int*\2c\20int*\29 +5556:hb_font_t::get_glyph_v_kerning\28unsigned\20int\2c\20unsigned\20int\29 +5557:hb_font_t::get_glyph_h_kerning\28unsigned\20int\2c\20unsigned\20int\29 +5558:hb_font_t::get_glyph_contour_point\28unsigned\20int\2c\20unsigned\20int\2c\20int*\2c\20int*\29 +5559:hb_font_t::get_font_h_extents\28hb_font_extents_t*\29 +5560:hb_font_t::draw_glyph\28unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\29 +5561:hb_font_set_variations +5562:hb_font_set_funcs +5563:hb_font_get_variation_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +5564:hb_font_get_font_h_extents_nil\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +5565:hb_font_funcs_set_variation_glyph_func +5566:hb_font_funcs_set_nominal_glyphs_func +5567:hb_font_funcs_set_nominal_glyph_func +5568:hb_font_funcs_set_glyph_h_advances_func +5569:hb_font_funcs_set_glyph_extents_func +5570:hb_font_funcs_create +5571:hb_font_destroy +5572:hb_face_destroy +5573:hb_face_create_for_tables +5574:hb_draw_move_to_nil\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +5575:hb_draw_funcs_t::emit_move_to\28void*\2c\20hb_draw_state_t&\2c\20float\2c\20float\29 +5576:hb_draw_funcs_set_quadratic_to_func +5577:hb_draw_funcs_set_move_to_func +5578:hb_draw_funcs_set_line_to_func +5579:hb_draw_funcs_set_cubic_to_func +5580:hb_draw_funcs_destroy +5581:hb_draw_funcs_create +5582:hb_draw_extents_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +5583:hb_cache_t<24u\2c\2016u\2c\208u\2c\20true>::clear\28\29 +5584: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 +5585:hb_buffer_t::safe_to_insert_tatweel\28unsigned\20int\2c\20unsigned\20int\29 +5586:hb_buffer_t::next_glyphs\28unsigned\20int\29 +5587:hb_buffer_t::message_impl\28hb_font_t*\2c\20char\20const*\2c\20void*\29 +5588:hb_buffer_t::delete_glyphs_inplace\28bool\20\28*\29\28hb_glyph_info_t\20const*\29\29 +5589:hb_buffer_t::clear\28\29 +5590:hb_buffer_t::add\28unsigned\20int\2c\20unsigned\20int\29 +5591:hb_buffer_get_glyph_positions +5592:hb_buffer_diff +5593:hb_buffer_clear_contents +5594:hb_buffer_add_utf8 +5595:hb_bounds_t::union_\28hb_bounds_t\20const&\29 +5596:hb_blob_t::destroy_user_data\28\29 +5597:hb_blob_t*\20hb_sanitize_context_t::sanitize_blob\28hb_blob_t*\29 +5598:hb_array_t::hash\28\29\20const +5599:hb_array_t::cmp\28hb_array_t\20const&\29\20const +5600:hb_array_t>::qsort\28int\20\28*\29\28void\20const*\2c\20void\20const*\29\29 +5601:hb_array_t::__next__\28\29 +5602: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 +5603:hb_aat_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +5604:hb_aat_map_builder_t::feature_info_t::cmp\28hb_aat_map_builder_t::feature_info_t\20const&\29\20const +5605:hb_aat_layout_remove_deleted_glyphs\28hb_buffer_t*\29 +5606:has_msaa_render_buffer\28GrSurfaceProxy\20const*\2c\20GrGLCaps\20const&\29 +5607: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 +5608:getint +5609:get_win_string +5610:get_tasks_for_thread +5611:get_paint\28GrAA\2c\20unsigned\20char\29 +5612:get_layer_mapping_and_bounds\28SkSpan>\2c\20SkMatrix\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\2c\20float\29::$_0::operator\28\29\28int\29\20const +5613:get_dst_swizzle_and_store\28GrColorType\2c\20SkRasterPipelineOp*\2c\20LumMode*\2c\20bool*\2c\20bool*\29 +5614:get_driver_and_version\28GrGLStandard\2c\20GrGLVendor\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +5615:get_apple_string +5616:getSingleRun\28UBiDi*\2c\20unsigned\20char\29 +5617:getRunFromLogicalIndex\28UBiDi*\2c\20int\29 +5618:getMirror\28int\2c\20unsigned\20short\29\20\28.8867\29 +5619:geometric_overlap\28SkRect\20const&\2c\20SkRect\20const&\29 +5620:geometric_contains\28SkRect\20const&\2c\20SkRect\20const&\29 +5621:gen_key\28skgpu::KeyBuilder*\2c\20GrProgramInfo\20const&\2c\20GrCaps\20const&\29 +5622:gen_fp_key\28GrFragmentProcessor\20const&\2c\20GrCaps\20const&\2c\20skgpu::KeyBuilder*\29 +5623: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 +5624:fwrite +5625:ft_var_to_normalized +5626:ft_var_load_item_variation_store +5627:ft_var_load_hvvar +5628:ft_var_load_avar +5629:ft_var_get_value_pointer +5630:ft_var_get_item_delta +5631:ft_var_apply_tuple +5632:ft_set_current_renderer +5633:ft_recompute_scaled_metrics +5634:ft_mem_strcpyn +5635:ft_mem_dup +5636:ft_hash_num_lookup +5637:ft_gzip_alloc +5638:ft_glyphslot_preset_bitmap +5639:ft_glyphslot_done +5640:ft_corner_orientation +5641:ft_corner_is_flat +5642:ft_cmap_done_internal +5643:frexp +5644:fread +5645:fquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +5646:fp_force_eval +5647:fp_barrier +5648:formulate_F1DotF2\28float\20const*\2c\20float*\29 +5649:formulate_F1DotF2\28double\20const*\2c\20double*\29 +5650:format_alignment\28SkMask::Format\29 +5651:format1_names\28unsigned\20int\29 +5652:fopen +5653:fold_opacity_layer_color_to_paint\28SkPaint\20const*\2c\20bool\2c\20SkPaint*\29 +5654:fmodl +5655:float\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +5656:float\20const*\20std::__2::min_element\5babi:v160004\5d>\28float\20const*\2c\20float\20const*\2c\20std::__2::__less\29 +5657:float\20const*\20std::__2::max_element\5babi:v160004\5d>\28float\20const*\2c\20float\20const*\2c\20std::__2::__less\29 +5658:fline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +5659:first_axis_intersection\28double\20const*\2c\20bool\2c\20double\2c\20double*\29 +5660:fiprintf +5661:find_unicode_charmap +5662:find_diff_pt\28SkPoint\20const*\2c\20int\2c\20int\2c\20int\29 +5663:find_a8_rowproc_pair\28SkBlendMode\29 +5664:fillable\28SkRect\20const&\29 +5665:fileno +5666:fcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +5667:fconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +5668:exp2f_\28float\29 +5669:eval_cubic_pts\28float\2c\20float\2c\20float\2c\20float\2c\20float\29 +5670:eval_cubic_derivative\28SkPoint\20const*\2c\20float\29 +5671:emscripten_async_run_in_main_thread +5672:emptyOnNull\28sk_sp&&\29 +5673:em_task_queue_free +5674:em_task_queue_enqueue +5675:em_task_queue_dequeue +5676:em_task_queue_create +5677:em_task_queue_cancel +5678:em_queued_call_malloc +5679:elliptical_effect_uses_scale\28GrShaderCaps\20const&\2c\20SkRRect\20const&\29 +5680:edges_too_close\28SkAnalyticEdge*\2c\20SkAnalyticEdge*\2c\20int\29 +5681:edge_line_needs_recursion\28SkPoint\20const&\2c\20SkPoint\20const&\29 +5682:eat_space_sep_strings\28skia_private::TArray*\2c\20char\20const*\29 +5683:draw_rect_as_path\28SkDrawBase\20const&\2c\20SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\29 +5684:draw_nine\28SkMask\20const&\2c\20SkIRect\20const&\2c\20SkIPoint\20const&\2c\20bool\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +5685:dquad_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +5686:double\20std::__2::__num_get_float\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20unsigned\20int&\29 +5687:do_fixed +5688:do_dispatch_to_thread +5689:doWriteReverse\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +5690:doWriteForward\28char16_t\20const*\2c\20int\2c\20char16_t*\2c\20int\2c\20unsigned\20short\2c\20UErrorCode*\29 +5691:dline_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +5692:distance_to_sentinel\28int\20const*\29 +5693:dispose_chunk +5694:diff_to_shift\28int\2c\20int\2c\20int\29 +5695:destroy_size +5696:destroy_charmaps +5697:demangling_terminate_handler\28\29 +5698:decompose_current_character\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\29 +5699:decompose\28hb_ot_shape_normalize_context_t\20const*\2c\20bool\2c\20unsigned\20int\29 +5700: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 +5701: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 +5702: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 +5703: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 +5704:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkShaderBase&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTransformShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5705: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 +5706: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 +5707:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrRRectShadowGeoProc::Make\28SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\29::'lambda'\28void*\29&&\29::'lambda'\28char*\29::__invoke\28char*\29 +5708: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 +5709: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 +5710: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 +5711: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 +5712:decltype\28fp0\28\28SkRecords::NoOp\29\28\29\29\29\20SkRecord::visit\28int\2c\20SkRecords::Draw&\29\20const +5713:decltype\28fp0\28\28SkRecords::NoOp*\29\28nullptr\29\29\29\20SkRecord::mutate\28int\2c\20SkRecord::Destroyer&\29 +5714: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 +5715: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 +5716:dcubic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +5717:dcubic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +5718:dconic_intersect_ray\28SkDCurve\20const&\2c\20SkDLine\20const&\2c\20SkIntersections*\29 +5719:data_destroy_arabic\28void*\29 +5720:data_create_arabic\28hb_ot_shape_plan_t\20const*\29 +5721:cycle +5722:cubic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5723:cubic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5724:cubic_delta_from_line\28int\2c\20int\2c\20int\2c\20int\29 +5725:crop_simple_rect\28SkRect\20const&\2c\20float*\2c\20float*\2c\20float*\2c\20float*\29 +5726:crop_rect\28SkRect\20const&\2c\20float*\2c\20float*\2c\20float*\2c\20float*\2c\20float*\29 +5727:count_scalable_pixels\28int\20const*\2c\20int\2c\20bool\2c\20int\2c\20int\29 +5728:copysignl +5729:copy_mask_to_cacheddata\28SkMaskBuilder*\29 +5730:copy_bitmap_subset\28SkBitmap\20const&\2c\20SkIRect\20const&\29 +5731:contour_point_vector_t::extend\28hb_array_t\20const&\29 +5732:contourMeasure_length +5733:conservative_round_to_int\28SkRect\20const&\29 +5734:conic_intercept_v\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5735:conic_intercept_h\28SkPoint\20const*\2c\20float\2c\20float\2c\20double*\29 +5736:conic_eval_tan\28double\20const*\2c\20float\2c\20double\29 +5737:conic_deriv_coeff\28double\20const*\2c\20float\2c\20double*\29 +5738:compute_stroke_size\28SkPaint\20const&\2c\20SkMatrix\20const&\29 +5739:compute_pos_tan\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +5740:compute_normal\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20SkPoint*\29 +5741:compute_intersection\28OffsetSegment\20const&\2c\20OffsetSegment\20const&\2c\20SkPoint*\2c\20float*\2c\20float*\29 +5742:compute_anti_width\28short\20const*\29 +5743:compose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +5744:clip_to_limit\28SkRegion\20const&\2c\20SkRegion*\29 +5745:clip_line\28SkPoint*\2c\20SkRect\20const&\2c\20float\2c\20float\29 +5746:clipHandlesSprite\28SkRasterClip\20const&\2c\20int\2c\20int\2c\20SkPixmap\20const&\29 +5747:clean_sampling_for_constraint\28SkSamplingOptions\20const&\2c\20SkCanvas::SrcRectConstraint\29 +5748:clamp_to_zero\28SkPoint*\29 +5749:clamp\28SkPoint\2c\20SkPoint\2c\20SkPoint\2c\20GrTriangulator::Comparator\20const&\29 +5750:chop_mono_cubic_at_x\28SkPoint*\2c\20float\2c\20SkPoint*\29 +5751:chopMonoQuadAt\28float\2c\20float\2c\20float\2c\20float\2c\20float*\29 +5752:chopMonoQuadAtY\28SkPoint*\2c\20float\2c\20float*\29 +5753:chopMonoQuadAtX\28SkPoint*\2c\20float\2c\20float*\29 +5754:checkint +5755:check_write_and_transfer_input\28GrGLTexture*\29 +5756:check_name\28SkString\20const&\29 +5757:check_backend_texture\28GrBackendTexture\20const&\2c\20GrGLCaps\20const&\2c\20GrGLTexture::Desc*\2c\20bool\29 +5758:char*\20std::__2::copy\5babi:v160004\5d\2c\20char*>\28std::__2::__wrap_iter\2c\20std::__2::__wrap_iter\2c\20char*\29 +5759:char*\20std::__2::copy\5babi:v160004\5d\28char\20const*\2c\20char\20const*\2c\20char*\29 +5760:char*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29 +5761:cff_vstore_done +5762:cff_subfont_load +5763:cff_subfont_done +5764:cff_size_select +5765:cff_parser_run +5766:cff_parser_init +5767:cff_make_private_dict +5768:cff_load_private_dict +5769:cff_index_get_name +5770:cff_glyph_load +5771:cff_get_kerning +5772:cff_get_glyph_data +5773:cff_fd_select_get +5774:cff_charset_compute_cids +5775:cff_builder_init +5776:cff_builder_add_point1 +5777:cff_builder_add_point +5778:cff_builder_add_contour +5779:cff_blend_check_vector +5780:cff_blend_build_vector +5781:cff1_path_param_t::end_path\28\29 +5782:cf2_stack_pop +5783:cf2_hintmask_setCounts +5784:cf2_hintmask_read +5785:cf2_glyphpath_pushMove +5786:cf2_getSeacComponent +5787:cf2_freeSeacComponent +5788:cf2_computeDarkening +5789:cf2_arrstack_setNumElements +5790:cf2_arrstack_push +5791:cbrt +5792:can_use_hw_blend_equation\28skgpu::BlendEquation\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\29 +5793:can_proxy_use_scratch\28GrCaps\20const&\2c\20GrSurfaceProxy*\29 +5794:calculate_path_gap\28float\2c\20float\2c\20SkPath\20const&\29::$_3::operator\28\29\28float\29\20const +5795:calculate_path_gap\28float\2c\20float\2c\20SkPath\20const&\29::$_2::operator\28\29\28float\29\20const +5796:calculate_path_gap\28float\2c\20float\2c\20SkPath\20const&\29::$_0::operator\28\29\28float\29\20const +5797:byn$mgfn-shared$void\20extend_pts<\28SkPaint::Cap\292>\28SkPath::Verb\2c\20SkPath::Verb\2c\20SkPoint*\2c\20int\29 +5798:byn$mgfn-shared$t1_hints_open +5799:byn$mgfn-shared$std::__2::vector>::__base_destruct_at_end\5babi:v160004\5d\28SkString*\29 +5800:byn$mgfn-shared$std::__2::vector>::~vector\5babi:v160004\5d\28\29 +5801:byn$mgfn-shared$std::__2::vector>::__vallocate\5babi:v160004\5d\28unsigned\20long\29 +5802: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 +5803: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 +5804: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 +5805:byn$mgfn-shared$std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +5806: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 +5807: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 +5808: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 +5809:byn$mgfn-shared$std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +5810:byn$mgfn-shared$std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +5811:byn$mgfn-shared$std::__2::__split_buffer&>::__split_buffer\28unsigned\20long\2c\20unsigned\20long\2c\20std::__2::allocator&\29 +5812: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 +5813: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 +5814:byn$mgfn-shared$std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +5815:byn$mgfn-shared$skia_private::THashTable::Pair\2c\20SkSL::Variable\20const*\2c\20skia_private::THashMap::Pair>::Iter>::operator++\28\29 +5816:byn$mgfn-shared$skia_private::THashTable::Pair\2c\20SkSL::Symbol\20const*\2c\20skia_private::THashMap::Pair>::firstPopulatedSlot\28\29\20const +5817:byn$mgfn-shared$skia_private::THashMap\2c\20SkGoodHash>::find\28int\20const&\29\20const +5818:byn$mgfn-shared$skia_private::THashMap::find\28SkSL::FunctionDeclaration\20const*\20const&\29\20const +5819:byn$mgfn-shared$skia_private::THashMap>\2c\20SkGoodHash>::find\28SkImageFilter\20const*\20const&\29\20const +5820:byn$mgfn-shared$skia_private::TArray::destroyAll\28\29 +5821:byn$mgfn-shared$skia_private::TArray::checkRealloc\28int\2c\20double\29 +5822:byn$mgfn-shared$skia_private::AutoSTArray<16\2c\20SkRect>::reset\28int\29 +5823:byn$mgfn-shared$skia_private::AutoSTArray<16\2c\20GrMipLevel>::reset\28int\29 +5824:byn$mgfn-shared$skia_png_gamma_8bit_correct +5825:byn$mgfn-shared$skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +5826:byn$mgfn-shared$setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +5827:byn$mgfn-shared$precisely_between\28double\2c\20double\2c\20double\29 +5828:byn$mgfn-shared$portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5829:byn$mgfn-shared$portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5830:byn$mgfn-shared$portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5831:byn$mgfn-shared$portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +5832:byn$mgfn-shared$paint_setImageFilter +5833:byn$mgfn-shared$paint_setColorFilter +5834:byn$mgfn-shared$make_unpremul_effect\28std::__2::unique_ptr>\29 +5835:byn$mgfn-shared$imageFilter_createDilate +5836:byn$mgfn-shared$hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +5837:byn$mgfn-shared$hb_vector_t::alloc\28unsigned\20int\2c\20bool\29 +5838:byn$mgfn-shared$hb_vector_t\2c\20false>::shrink_vector\28unsigned\20int\29 +5839:byn$mgfn-shared$hb_lazy_loader_t\2c\20hb_face_t\2c\204u\2c\20hb_blob_t>::get\28\29\20const +5840:byn$mgfn-shared$gl_target_to_binding_index\28unsigned\20int\29 +5841:byn$mgfn-shared$cf2_stack_pushInt +5842:byn$mgfn-shared$bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5843:byn$mgfn-shared$\28anonymous\20namespace\29::shift_left\28skvx::Vec<4\2c\20float>\20const&\2c\20int\29 +5844: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 +5845:byn$mgfn-shared$\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +5846:byn$mgfn-shared$\28anonymous\20namespace\29::BitmapKey::BitmapKey\28SkBitmapCacheDesc\20const&\29 +5847: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 +5848:byn$mgfn-shared$SkSL::ProgramUsage::remove\28SkSL::Expression\20const*\29 +5849:byn$mgfn-shared$SkSL::ProgramUsage::add\28SkSL::Statement\20const*\29 +5850:byn$mgfn-shared$SkSL::FunctionReference::clone\28SkSL::Position\29\20const +5851:byn$mgfn-shared$SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +5852:byn$mgfn-shared$SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +5853:byn$mgfn-shared$SkRuntimeEffect::findChild\28std::__2::basic_string_view>\29\20const +5854:byn$mgfn-shared$SkRuntimeEffect::ChildPtr::shader\28\29\20const +5855:byn$mgfn-shared$SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +5856:byn$mgfn-shared$SkRecorder::onDrawPaint\28SkPaint\20const&\29 +5857:byn$mgfn-shared$SkRecorder::didTranslate\28float\2c\20float\29 +5858:byn$mgfn-shared$SkRecorder::didConcat44\28SkM44\20const&\29 +5859:byn$mgfn-shared$SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +5860:byn$mgfn-shared$SkPictureRecord::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +5861:byn$mgfn-shared$SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +5862:byn$mgfn-shared$SkPictureRecord::didConcat44\28SkM44\20const&\29 +5863:byn$mgfn-shared$SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_blur_1D_effect\28int\2c\20SkRuntimeEffect::Options\20const&\29 +5864:byn$mgfn-shared$SkJSONWriter::endArray\28\29 +5865:byn$mgfn-shared$OT::cff1::sanitize\28hb_sanitize_context_t*\29\20const +5866:byn$mgfn-shared$OT::IntType*\20hb_serialize_context_t::extend_min>\28OT::IntType*\29 +5867:byn$mgfn-shared$OT::ArrayOf\2c\20OT::IntType>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +5868:byn$mgfn-shared$OT::ArrayOf\2c\20OT::IntType>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +5869:byn$mgfn-shared$GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +5870: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 +5871:byn$mgfn-shared$AAT::StateTable::get_entry\28int\2c\20unsigned\20int\29\20const +5872:byn$mgfn-shared$AAT::StateTable::get_entry\28int\2c\20unsigned\20int\29\20const +5873:byn$mgfn-shared$AAT::Lookup::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +5874: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 +5875:build_intervals\28int\2c\20SkRGBA4f<\28SkAlphaType\292>\20const*\2c\20float\20const*\2c\20int\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20SkRGBA4f<\28SkAlphaType\292>*\2c\20float*\29 +5876:bracketProcessChar\28BracketData*\2c\20int\29 +5877:bracketInit\28UBiDi*\2c\20BracketData*\29 +5878:bounds_t::merge\28bounds_t\20const&\29 +5879:bottom_collinear\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\29 +5880: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 +5881:bool\20std::__2::operator==\5babi:v160004\5d\28std::__2::variant\20const&\2c\20std::__2::variant\20const&\29 +5882:bool\20std::__2::operator!=\5babi:v160004\5d\28std::__2::variant\20const&\2c\20std::__2::variant\20const&\29 +5883: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 +5884: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 +5885:bool\20std::__2::__insertion_sort_incomplete\28SkSL::FunctionDefinition\20const**\2c\20SkSL::FunctionDefinition\20const**\2c\20SkSL::Transform::FindAndDeclareBuiltinFunctions\28SkSL::Program&\29::$_0&\29 +5886:bool\20set_point_length\28SkPoint*\2c\20float\2c\20float\2c\20float\2c\20float*\29 +5887:bool\20is_parallel\28SkDLine\20const&\2c\20SkTCurve\20const&\29 +5888:bool\20hb_sanitize_context_t::check_array>\28OT::IntType\20const*\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +5889:bool\20hb_sanitize_context_t::check_array\28OT::Index\20const*\2c\20unsigned\20int\29\20const +5890:bool\20hb_sanitize_context_t::check_array\28AAT::Feature\20const*\2c\20unsigned\20int\29\20const +5891:bool\20hb_sanitize_context_t::check_array>\28AAT::Entry\20const*\2c\20unsigned\20int\29\20const +5892:bool\20apply_string\28OT::hb_ot_apply_context_t*\2c\20GSUBProxy::Lookup\20const&\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\29 +5893:bool\20OT::hb_accelerate_subtables_context_t::cache_func_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\2c\20bool\29 +5894:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5895:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5896:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5897:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5898:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5899:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5900:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5901:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5902:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5903:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5904:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5905:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5906:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5907:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5908:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5909:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5910:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5911:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +5912: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 +5913:bool\20OT::Paint::sanitize<>\28hb_sanitize_context_t*\29\20const +5914:bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5915:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5916:bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5917:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5918:bool\20OT::OffsetTo\2c\20true>::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\2c\20unsigned\20int&&\29\20const +5919: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 +5920:bool\20OT::OffsetTo\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5921:bool\20OT::OffsetTo\2c\20true>::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\2c\20unsigned\20int&&\29\20const +5922:bool\20OT::OffsetTo\2c\20OT::IntType\2c\20true>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5923:bool\20OT::OffsetTo\2c\20true>::sanitize\28hb_sanitize_context_t*\2c\20void\20const*\2c\20AAT::trak\20const*&&\29\20const +5924:bool\20OT::OffsetTo>\2c\20OT::IntType\2c\20false>::sanitize<>\28hb_sanitize_context_t*\2c\20void\20const*\29\20const +5925:bool\20OT::GSUBGPOS::sanitize\28hb_sanitize_context_t*\29\20const +5926:bool\20OT::GSUBGPOS::sanitize\28hb_sanitize_context_t*\29\20const +5927:bool\20GrTTopoSort_Visit\28GrRenderTask*\2c\20unsigned\20int*\29 +5928: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 +5929:blit_two_alphas\28AdditiveBlitter*\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\29 +5930:blit_full_alpha\28AdditiveBlitter*\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20bool\29 +5931:blender_requires_shader\28SkBlender\20const*\29 +5932:bits_to_runs\28SkBlitter*\2c\20int\2c\20int\2c\20unsigned\20char\20const*\2c\20unsigned\20char\2c\20long\2c\20unsigned\20char\29 +5933:between_closed\28double\2c\20double\2c\20double\2c\20double\2c\20bool\29 +5934: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 +5935:auto\20GrGLProgramBuilder::computeCountsAndStrides\28unsigned\20int\2c\20GrGeometryProcessor\20const&\2c\20bool\29::$_0::operator\28\29\28int\2c\20GrGeometryProcessor::Attribute\20const&\29\20const +5936:auto&&\20std::__2::__generic_get\5babi:v160004\5d<0ul\2c\20std::__2::variant\20const&>\28std::__2::variant\20const&\29 +5937:atanf +5938:are_radius_check_predicates_valid\28float\2c\20float\2c\20float\29 +5939:arabic_fallback_plan_destroy\28arabic_fallback_plan_t*\29 +5940:apply_forward\28OT::hb_ot_apply_context_t*\2c\20OT::hb_ot_layout_lookup_accelerator_t\20const&\2c\20unsigned\20int\29 +5941:apply_fill_type\28SkPathFillType\2c\20int\29 +5942:apply_fill_type\28SkPathFillType\2c\20GrTriangulator::Poly*\29 +5943:apply_alpha_and_colorfilter\28skif::Context\20const&\2c\20skif::FilterResult\20const&\2c\20SkPaint\20const&\29 +5944:append_texture_swizzle\28SkString*\2c\20skgpu::Swizzle\29 +5945:append_multitexture_lookup\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20int\2c\20GrGLSLVarying\20const&\2c\20char\20const*\2c\20char\20const*\29 +5946:append_color_output\28PorterDuffXferProcessor\20const&\2c\20GrGLSLXPFragmentBuilder*\2c\20skgpu::BlendFormula::OutputType\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29 +5947:antifilldot8\28int\2c\20int\2c\20int\2c\20int\2c\20SkBlitter*\2c\20bool\29 +5948:analysis_properties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\2c\20SkBlendMode\29 +5949:afm_stream_skip_spaces +5950:afm_stream_read_string +5951:afm_stream_read_one +5952:af_sort_and_quantize_widths +5953:af_shaper_get_elem +5954:af_loader_compute_darkening +5955:af_latin_metrics_scale_dim +5956:af_latin_hints_detect_features +5957:af_hint_normal_stem +5958:af_glyph_hints_align_weak_points +5959:af_glyph_hints_align_strong_points +5960:af_face_globals_new +5961:af_cjk_metrics_scale_dim +5962:af_cjk_metrics_scale +5963:af_cjk_metrics_init_widths +5964:af_cjk_metrics_check_digits +5965:af_cjk_hints_init +5966:af_cjk_hints_detect_features +5967:af_cjk_hints_compute_blue_edges +5968:af_cjk_hints_apply +5969:af_cjk_get_standard_widths +5970:af_cjk_compute_stem_width +5971:af_axis_hints_new_edge +5972:adjust_mipmapped\28skgpu::Mipmapped\2c\20SkBitmap\20const&\2c\20GrCaps\20const*\29 +5973:add_line\28SkPoint\20const*\2c\20skia_private::TArray*\29 +5974:add_const_color\28SkRasterPipeline_GradientCtx*\2c\20unsigned\20long\2c\20SkRGBA4f<\28SkAlphaType\292>\29 +5975:a_swap.9210 +5976:a_fetch_add.9171 +5977:a_fetch_add +5978:a_ctz_32 +5979:_pow10\28unsigned\20int\29 +5980:_hb_preprocess_text_vowel_constraints\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +5981:_hb_ot_shape +5982:_hb_options_init\28\29 +5983:_hb_grapheme_group_func\28hb_glyph_info_t\20const&\2c\20hb_glyph_info_t\20const&\29 +5984:_hb_font_create\28hb_face_t*\29 +5985:_hb_fallback_shape +5986:_glyf_get_advance_with_var_unscaled\28hb_font_t*\2c\20unsigned\20int\2c\20bool\29 +5987:_emscripten_yield +5988:_emscripten_thread_mailbox_init +5989:_do_call +5990:__wasm_init_tls +5991:__vm_wait +5992:__vfprintf_internal +5993:__trunctfsf2 +5994:__timedwait +5995:__tan +5996:__set_thread_state +5997:__rem_pio2_large +5998:__pthread_rwlock_unlock +5999:__pthread_rwlock_tryrdlock +6000:__pthread_rwlock_timedrdlock +6001:__newlocale +6002:__math_xflowf +6003:__math_uflowf +6004:__math_oflowf +6005:__math_invalidf +6006:__loc_is_allocated +6007:__isxdigit_l +6008:__getf2 +6009:__get_locale +6010:__ftello_unlocked +6011:__fseeko_unlocked +6012:__floatscan +6013:__expo2 +6014:__dynamic_cast +6015:__divtf3 +6016:__cxxabiv1::__base_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +6017:__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 +6018:__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 +6019:__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 +6020:\28anonymous\20namespace\29::texture_color\28SkRGBA4f<\28SkAlphaType\293>\2c\20float\2c\20GrColorType\2c\20GrColorInfo\20const&\29 +6021:\28anonymous\20namespace\29::supported_aa\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrAA\29 +6022:\28anonymous\20namespace\29::set_uv_quad\28SkPoint\20const*\2c\20\28anonymous\20namespace\29::BezierVertex*\29 +6023:\28anonymous\20namespace\29::safe_to_ignore_subset_rect\28GrAAType\2c\20SkFilterMode\2c\20DrawQuad\20const&\2c\20SkRect\20const&\29 +6024:\28anonymous\20namespace\29::rrect_type_to_vert_count\28\28anonymous\20namespace\29::RRectType\29 +6025:\28anonymous\20namespace\29::proxy_normalization_params\28GrSurfaceProxy\20const*\2c\20GrSurfaceOrigin\29 +6026:\28anonymous\20namespace\29::prepare_for_direct_mask_drawing\28SkStrike*\2c\20SkMatrix\20const&\2c\20SkZip\2c\20SkZip\2c\20SkZip\29 +6027:\28anonymous\20namespace\29::normalize_src_quad\28\28anonymous\20namespace\29::NormalizationParams\20const&\2c\20GrQuad*\29 +6028:\28anonymous\20namespace\29::normalize_and_inset_subset\28SkFilterMode\2c\20\28anonymous\20namespace\29::NormalizationParams\20const&\2c\20SkRect\20const*\29 +6029:\28anonymous\20namespace\29::next_gen_id\28\29 +6030:\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 +6031:\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 +6032:\28anonymous\20namespace\29::is_visible\28SkRect\20const&\2c\20SkIRect\20const&\29 +6033:\28anonymous\20namespace\29::is_degen_quad_or_conic\28SkPoint\20const*\2c\20float*\29 +6034:\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 +6035:\28anonymous\20namespace\29::get_hbFace_cache\28\29 +6036:\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 +6037:\28anonymous\20namespace\29::draw_to_sw_mask\28GrSWMaskHelper*\2c\20skgpu::ganesh::ClipStack::Element\20const&\2c\20bool\29 +6038:\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 +6039:\28anonymous\20namespace\29::determine_clipped_src_rect\28SkIRect\2c\20SkMatrix\20const&\2c\20SkMatrix\20const&\2c\20SkISize\20const&\2c\20SkRect\20const*\29 +6040:\28anonymous\20namespace\29::create_data\28int\2c\20bool\2c\20float\29 +6041:\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 +6042:\28anonymous\20namespace\29::copyFTBitmap\28FT_Bitmap_\20const&\2c\20SkMaskBuilder*\29 +6043:\28anonymous\20namespace\29::contains_scissor\28GrScissorState\20const&\2c\20GrScissorState\20const&\29 +6044:\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 +6045:\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 +6046:\28anonymous\20namespace\29::colrv1_draw_paint\28SkCanvas*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_FaceRec_*\2c\20FT_COLR_Paint_\20const&\29 +6047:\28anonymous\20namespace\29::colrv1_configure_skpaint\28FT_FaceRec_*\2c\20SkSpan\20const&\2c\20unsigned\20int\2c\20FT_COLR_Paint_\20const&\2c\20SkPaint*\29 +6048:\28anonymous\20namespace\29::can_use_draw_texture\28SkPaint\20const&\2c\20SkSamplingOptions\20const&\29 +6049:\28anonymous\20namespace\29::axis_aligned_quad_size\28GrQuad\20const&\29 +6050:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29 +6051:\28anonymous\20namespace\29::YUVPlanesKey::YUVPlanesKey\28unsigned\20int\29 +6052:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29 +6053:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29 +6054:\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 +6055:\28anonymous\20namespace\29::TriangulatingPathOp::Triangulate\28GrEagerVertexAllocator*\2c\20SkMatrix\20const&\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\2c\20float\2c\20bool*\29 +6056:\28anonymous\20namespace\29::TriangulatingPathOp::CreateKey\28skgpu::UniqueKey*\2c\20GrStyledShape\20const&\2c\20SkIRect\20const&\29 +6057:\28anonymous\20namespace\29::TransformedMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +6058:\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 +6059:\28anonymous\20namespace\29::TransformedMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +6060:\28anonymous\20namespace\29::TransformedMaskSubRun::glyphCount\28\29\20const +6061:\28anonymous\20namespace\29::TransformedMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +6062:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29 +6063:\28anonymous\20namespace\29::TextureOpImpl::propagateCoverageAAThroughoutChain\28\29 +6064:\28anonymous\20namespace\29::TextureOpImpl::numChainedQuads\28\29\20const +6065:\28anonymous\20namespace\29::TextureOpImpl::characterize\28\28anonymous\20namespace\29::TextureOpImpl::Desc*\29\20const +6066:\28anonymous\20namespace\29::TextureOpImpl::appendQuad\28DrawQuad*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkRect\20const&\29 +6067:\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 +6068:\28anonymous\20namespace\29::TextureOpImpl::FillInVertices\28GrCaps\20const&\2c\20\28anonymous\20namespace\29::TextureOpImpl*\2c\20\28anonymous\20namespace\29::TextureOpImpl::Desc*\2c\20char*\29 +6069:\28anonymous\20namespace\29::TextureOpImpl::Desc::totalSizeInBytes\28\29\20const +6070:\28anonymous\20namespace\29::TextureOpImpl::Desc*\20SkArenaAlloc::make<\28anonymous\20namespace\29::TextureOpImpl::Desc>\28\29 +6071:\28anonymous\20namespace\29::TextureOpImpl::ClassID\28\29 +6072:\28anonymous\20namespace\29::SpotVerticesFactory::makeVertices\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint*\29\20const +6073:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::hb_script_for_unichar\28int\29 +6074:\28anonymous\20namespace\29::SkQuadCoeff::SkQuadCoeff\28SkPoint\20const*\29 +6075:\28anonymous\20namespace\29::SkMorphologyImageFilter::requiredInput\28skif::Mapping\20const&\2c\20skif::LayerSpace\29\20const +6076:\28anonymous\20namespace\29::SkMorphologyImageFilter::kernelOutputBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\29\20const +6077:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::requiredInput\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\29\20const +6078:\28anonymous\20namespace\29::SkEmptyTypeface::onMakeClone\28SkFontArguments\20const&\29\20const +6079:\28anonymous\20namespace\29::SkCropImageFilter::requiredInput\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\29\20const +6080:\28anonymous\20namespace\29::SkConicCoeff::SkConicCoeff\28SkConic\20const&\29 +6081:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29 +6082:\28anonymous\20namespace\29::SkBlurImageFilter::mapSigma\28skif::Mapping\20const&\2c\20bool\29\20const +6083:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29 +6084:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29 +6085:\28anonymous\20namespace\29::ShaperHarfBuzz::~ShaperHarfBuzz\28\29 +6086:\28anonymous\20namespace\29::ShadowedPath::keyBytes\28\29\20const +6087:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29 +6088:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29 +6089:\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +6090:\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 +6091:\28anonymous\20namespace\29::SDFTSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +6092:\28anonymous\20namespace\29::SDFTSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +6093:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29 +6094:\28anonymous\20namespace\29::RectsBlurKey::RectsBlurKey\28float\2c\20SkBlurStyle\2c\20SkRect\20const*\2c\20int\29 +6095:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29 +6096:\28anonymous\20namespace\29::RRectBlurKey::RRectBlurKey\28float\2c\20SkRRect\20const&\2c\20SkBlurStyle\29 +6097:\28anonymous\20namespace\29::PlanGauss::PlanGauss\28double\29 +6098:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29 +6099:\28anonymous\20namespace\29::PathOpSubmitter::~PathOpSubmitter\28\29 +6100:\28anonymous\20namespace\29::PathGeoBuilder::createMeshAndPutBackReserve\28\29 +6101:\28anonymous\20namespace\29::PathGeoBuilder::allocNewBuffers\28\29 +6102:\28anonymous\20namespace\29::PathGeoBuilder::addQuad\28SkPoint\20const*\2c\20float\2c\20float\29 +6103:\28anonymous\20namespace\29::Pass::blur\28int\2c\20int\2c\20int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +6104:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29 +6105:\28anonymous\20namespace\29::MipMapKey::MipMapKey\28SkBitmapCacheDesc\20const&\29 +6106:\28anonymous\20namespace\29::MipLevelHelper::allocAndInit\28SkArenaAlloc*\2c\20SkSamplingOptions\20const&\2c\20SkTileMode\2c\20SkTileMode\29 +6107:\28anonymous\20namespace\29::MipLevelHelper::MipLevelHelper\28\29 +6108:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29 +6109:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29 +6110:\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 +6111:\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 +6112:\28anonymous\20namespace\29::MeshOp::Mesh::indices\28\29\20const +6113:\28anonymous\20namespace\29::MeshOp::Mesh::Mesh\28SkMesh\20const&\29 +6114:\28anonymous\20namespace\29::MeshOp::ClassID\28\29 +6115:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29 +6116:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29 +6117:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineStruct\28char\20const*\29 +6118:\28anonymous\20namespace\29::Iter::next\28\29 +6119:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29 +6120:\28anonymous\20namespace\29::FillRectOpImpl::tessellate\28skgpu::ganesh::QuadPerEdgeAA::VertexSpec\20const&\2c\20char*\29\20const +6121:\28anonymous\20namespace\29::FillRectOpImpl::FillRectOpImpl\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\2c\20GrAAType\2c\20DrawQuad*\2c\20GrUserStencilSettings\20const*\2c\20GrSimpleMeshDrawOpHelper::InputFlags\29 +6122:\28anonymous\20namespace\29::ExternalWebGLTexture::~ExternalWebGLTexture\28\29 +6123:\28anonymous\20namespace\29::EllipticalRRectEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +6124:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29 +6125:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29 +6126:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29 +6127:\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 +6128:\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 +6129:\28anonymous\20namespace\29::DirectMaskSubRun::makeAtlasTextOp\28GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkPaint\20const&\2c\20sk_sp&&\2c\20skgpu::ganesh::SurfaceDrawContext*\29\20const +6130:\28anonymous\20namespace\29::DirectMaskSubRun::fillVertexData\28void*\2c\20int\2c\20int\2c\20unsigned\20int\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20SkIRect\29\20const +6131:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29 +6132:\28anonymous\20namespace\29::DefaultPathOp::programInfo\28\29 +6133:\28anonymous\20namespace\29::DefaultPathOp::primType\28\29\20const +6134:\28anonymous\20namespace\29::DefaultPathOp::PathData::PathData\28\28anonymous\20namespace\29::DefaultPathOp::PathData&&\29 +6135:\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 +6136:\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 +6137:\28anonymous\20namespace\29::ClipGeometry\20\28anonymous\20namespace\29::get_clip_geometry\28skgpu::ganesh::ClipStack::SaveRecord\20const&\2c\20skgpu::ganesh::ClipStack::Draw\20const&\29 +6138:\28anonymous\20namespace\29::CircularRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20unsigned\20int\2c\20SkRRect\20const&\29 +6139:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29 +6140:\28anonymous\20namespace\29::CachedTessellationsRec::CachedTessellationsRec\28SkResourceCache::Key\20const&\2c\20sk_sp<\28anonymous\20namespace\29::CachedTessellations>\29 +6141:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29 +6142:\28anonymous\20namespace\29::CachedTessellations::CachedTessellations\28\29 +6143:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29 +6144:\28anonymous\20namespace\29::BitmapKey::BitmapKey\28SkBitmapCacheDesc\20const&\29 +6145:\28anonymous\20namespace\29::AmbientVerticesFactory::makeVertices\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint*\29\20const +6146:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29 +6147:\28anonymous\20namespace\29::AAHairlineOp::PathData::PathData\28\28anonymous\20namespace\29::AAHairlineOp::PathData&&\29 +6148:\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 +6149:TextureSourceImageGenerator::~TextureSourceImageGenerator\28\29 +6150:TT_Set_Named_Instance +6151:TT_Save_Context +6152:TT_Hint_Glyph +6153:TT_DotFix14 +6154:TT_Done_Context +6155:StringBuffer\20apply_format_string<1024>\28char\20const*\2c\20void*\2c\20char\20\28&\29\20\5b1024\5d\2c\20SkString*\29 +6156:SortContourList\28SkOpContourHead**\2c\20bool\2c\20bool\29 +6157:Skwasm::Surface::_resizeCanvasToFit\28int\2c\20int\29 +6158:SkWriter32::writeString\28char\20const*\2c\20unsigned\20long\29 +6159:SkWriter32::writePoint3\28SkPoint3\20const&\29 +6160:SkWBuffer::padToAlign4\28\29 +6161:SkVertices::getSizes\28\29\20const +6162:SkVertices::Builder::init\28SkVertices::Desc\20const&\29 +6163:SkVertices::Builder::Builder\28SkVertices::VertexMode\2c\20int\2c\20int\2c\20unsigned\20int\29 +6164:SkUnicode_client::~SkUnicode_client\28\29 +6165:SkUnicode::convertUtf16ToUtf8\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +6166:SkUnicode::BidiRegion&\20std::__2::vector>::emplace_back\28unsigned\20long&\2c\20unsigned\20long&\2c\20unsigned\20char&\29 +6167:SkUTF::UTF16ToUTF8\28char*\2c\20int\2c\20unsigned\20short\20const*\2c\20unsigned\20long\29 +6168:SkUTF::ToUTF8\28int\2c\20char*\29 +6169:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29 +6170:SkTypeface_FreeTypeStream::SkTypeface_FreeTypeStream\28std::__2::unique_ptr>\2c\20SkString\2c\20SkFontStyle\20const&\2c\20bool\29 +6171:SkTypeface_FreeType::getFaceRec\28\29\20const +6172:SkTypeface_FreeType::SkTypeface_FreeType\28SkFontStyle\20const&\2c\20bool\29 +6173:SkTypeface_FreeType::GetUnitsPerEm\28FT_FaceRec_*\29 +6174:SkTypeface_Custom::~SkTypeface_Custom\28\29 +6175:SkTypeface_Custom::onGetFamilyName\28SkString*\29\20const +6176:SkTypeface::unicharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +6177:SkTypeface::MakeEmpty\28\29 +6178:SkTransformShader::update\28SkMatrix\20const&\29 +6179:SkTextBlobBuilder::reserve\28unsigned\20long\29 +6180:SkTextBlobBuilder::allocRunPos\28SkFont\20const&\2c\20int\2c\20SkRect\20const*\29 +6181:SkTextBlobBuilder::TightRunBounds\28SkTextBlob::RunRecord\20const&\29 +6182:SkTextBlob::getIntercepts\28float\20const*\2c\20float*\2c\20SkPaint\20const*\29\20const +6183:SkTaskGroup::add\28std::__2::function\29 +6184:SkTSpan::split\28SkTSpan*\2c\20SkArenaAlloc*\29 +6185:SkTSpan::splitAt\28SkTSpan*\2c\20double\2c\20SkArenaAlloc*\29 +6186:SkTSpan::linearIntersects\28SkTCurve\20const&\29\20const +6187:SkTSpan::hullCheck\28SkTSpan\20const*\2c\20bool*\2c\20bool*\29 +6188:SkTSpan::contains\28double\29\20const +6189:SkTSect::unlinkSpan\28SkTSpan*\29 +6190:SkTSect::removeAllBut\28SkTSpan\20const*\2c\20SkTSpan*\2c\20SkTSect*\29 +6191:SkTSect::recoverCollapsed\28\29 +6192:SkTSect::intersects\28SkTSpan*\2c\20SkTSect*\2c\20SkTSpan*\2c\20int*\29 +6193:SkTSect::coincidentHasT\28double\29 +6194:SkTSect::boundsMax\28\29 +6195:SkTSect::addSplitAt\28SkTSpan*\2c\20double\29 +6196:SkTSect::addForPerp\28SkTSpan*\2c\20double\29 +6197:SkTSect::EndsEqual\28SkTSect\20const*\2c\20SkTSect\20const*\2c\20SkIntersections*\29 +6198:SkTMultiMap::reset\28\29 +6199:SkTMaskGamma<3\2c\203\2c\203>::SkTMaskGamma\28float\2c\20float\29 +6200:SkTMaskGamma<3\2c\203\2c\203>::CanonicalColor\28unsigned\20int\29 +6201:SkTLazy::getMaybeNull\28\29 +6202:SkTInternalLList::remove\28skgpu::ganesh::SmallPathShapeData*\29 +6203:SkTInternalLList<\28anonymous\20namespace\29::CacheImpl::Value>::remove\28\28anonymous\20namespace\29::CacheImpl::Value*\29 +6204:SkTInternalLList<\28anonymous\20namespace\29::CacheImpl::Value>::addToHead\28\28anonymous\20namespace\29::CacheImpl::Value*\29 +6205:SkTInternalLList::remove\28TriangulationVertex*\29 +6206:SkTInternalLList::addToTail\28TriangulationVertex*\29 +6207:SkTInternalLList::Entry>::addToHead\28SkLRUCache::Entry*\29 +6208:SkTInternalLList>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry>::addToHead\28SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::Entry*\29 +6209:SkTInternalLList>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry>::addToHead\28SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::Entry*\29 +6210:SkTDynamicHash<\28anonymous\20namespace\29::CacheImpl::Value\2c\20SkImageFilterCacheKey\2c\20\28anonymous\20namespace\29::CacheImpl::Value>::find\28SkImageFilterCacheKey\20const&\29\20const +6211:SkTDStorage::SkTDStorage\28SkTDStorage&&\29 +6212: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 +6213:SkTDPQueue::remove\28GrGpuResource*\29 +6214:SkTDPQueue::percolateUpIfNecessary\28int\29 +6215:SkTDPQueue::percolateDownIfNecessary\28int\29 +6216:SkTDPQueue::insert\28GrGpuResource*\29 +6217:SkTDArray::append\28int\29 +6218:SkTDArray::append\28int\29 +6219:SkTDArray::push_back\28SkRecords::FillBounds::SaveBounds\20const&\29 +6220:SkTCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +6221:SkTCopyOnFirstWrite::writable\28\29 +6222:SkTCopyOnFirstWrite::writable\28\29 +6223:SkTConic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +6224:SkTConic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +6225:SkTConic::controlsInside\28\29\20const +6226:SkTConic::collapsed\28\29\20const +6227:SkTBlockList::pushItem\28\29 +6228:SkTBlockList::pop_back\28\29 +6229:SkTBlockList::push_back\28skgpu::ganesh::ClipStack::RawElement&&\29 +6230:SkTBlockList::pushItem\28\29 +6231:SkTBlockList::~SkTBlockList\28\29 +6232:SkTBlockList::push_back\28GrGLProgramDataManager::GLUniformInfo\20const&\29 +6233:SkTBlockList::item\28int\29 +6234:SkSurface_Raster::~SkSurface_Raster\28\29 +6235:SkSurface_Ganesh::~SkSurface_Ganesh\28\29 +6236:SkSurface_Ganesh::onDiscard\28\29 +6237:SkSurface_Base::replaceBackendTexture\28GrBackendTexture\20const&\2c\20GrSurfaceOrigin\2c\20SkSurface::ContentChangeMode\2c\20void\20\28*\29\28void*\29\2c\20void*\29 +6238:SkSurface_Base::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +6239:SkSurface_Base::onCapabilities\28\29 +6240:SkSurfaceValidateRasterInfo\28SkImageInfo\20const&\2c\20unsigned\20long\29 +6241:SkStrokeRec::GetInflationRadius\28SkPaint::Join\2c\20float\2c\20SkPaint::Cap\2c\20float\29 +6242:SkString_from_UTF16BE\28unsigned\20char\20const*\2c\20unsigned\20long\2c\20SkString&\29 +6243:SkString::equals\28char\20const*\2c\20unsigned\20long\29\20const +6244:SkString::equals\28char\20const*\29\20const +6245:SkString::appendVAList\28char\20const*\2c\20void*\29 +6246:SkString::appendUnichar\28int\29 +6247:SkString::appendHex\28unsigned\20int\2c\20int\29 +6248:SkString::SkString\28unsigned\20long\29 +6249:SkStrikeSpec::SkStrikeSpec\28SkStrikeSpec\20const&\29 +6250:SkStrikeSpec::ShouldDrawAsPath\28SkPaint\20const&\2c\20SkFont\20const&\2c\20SkMatrix\20const&\29::$_0::operator\28\29\28int\2c\20int\29\20const +6251:SkStrikeSpec::ShouldDrawAsPath\28SkPaint\20const&\2c\20SkFont\20const&\2c\20SkMatrix\20const&\29 +6252:SkStrikeSpec::MakeTransformMask\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\29 +6253:SkStrikeCache::~SkStrikeCache\28\29 +6254:SkStrike::~SkStrike\28\29 +6255:SkStrike::prepareForImage\28SkGlyph*\29 +6256:SkStrike::prepareForDrawable\28SkGlyph*\29 +6257:SkStrike::internalPrepare\28SkSpan\2c\20SkStrike::PathDetail\2c\20SkGlyph\20const**\29 +6258:SkStrSplit\28char\20const*\2c\20char\20const*\2c\20SkStrSplitMode\2c\20skia_private::TArray*\29 +6259:SkStrAppendU32\28char*\2c\20unsigned\20int\29 +6260:SkStrAppendS32\28char*\2c\20int\29 +6261:SkSpriteBlitter_Memcpy::~SkSpriteBlitter_Memcpy\28\29 +6262:SkSpecialImages::MakeFromRaster\28SkIRect\20const&\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +6263:SkSpecialImages::AsBitmap\28SkSpecialImage\20const*\2c\20SkBitmap*\29 +6264:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29 +6265:SkSpecialImage_Raster::getROPixels\28SkBitmap*\29\20const +6266:SkSpecialImage_Raster::SkSpecialImage_Raster\28SkIRect\20const&\2c\20SkBitmap\20const&\2c\20SkSurfaceProps\20const&\29 +6267:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29 +6268:SkSpecialImage::SkSpecialImage\28SkIRect\20const&\2c\20unsigned\20int\2c\20SkColorInfo\20const&\2c\20SkSurfaceProps\20const&\29 +6269:SkSize\20skif::Mapping::map\28SkSize\20const&\2c\20SkMatrix\20const&\29 +6270:SkShapers::unicode::BidiRunIterator\28sk_sp\2c\20char\20const*\2c\20unsigned\20long\2c\20unsigned\20char\29 +6271:SkShapers::HB::ShapeDontWrapOrReorder\28sk_sp\2c\20sk_sp\29 +6272:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29 +6273:SkShaper::MakeStdLanguageRunIterator\28char\20const*\2c\20unsigned\20long\29 +6274:SkShaper::MakeFontMgrRunIterator\28char\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20sk_sp\29 +6275:SkShadowTessellator::MakeAmbient\28SkPath\20const&\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20bool\29 +6276:SkShaders::MatrixRec::totalMatrix\28\29\20const +6277:SkShaders::MatrixRec::concat\28SkMatrix\20const&\29\20const +6278:SkShaders::Empty\28\29 +6279:SkShaders::Color\28unsigned\20int\29 +6280:SkShaders::Blend\28sk_sp\2c\20sk_sp\2c\20sk_sp\29 +6281:SkShaderUtils::VisitLineByLine\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\2c\20std::__2::function\20const&\29 +6282:SkShaderUtils::GLSLPrettyPrint::undoNewlineAfter\28char\29 +6283:SkShaderUtils::GLSLPrettyPrint::parseUntil\28char\20const*\29 +6284:SkShaderUtils::GLSLPrettyPrint::parseUntilNewline\28\29 +6285:SkShaderBlurAlgorithm::renderBlur\28SkRuntimeShaderBuilder*\2c\20SkFilterMode\2c\20SkISize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +6286:SkShaderBlurAlgorithm::evalBlur1D\28float\2c\20int\2c\20SkV2\2c\20sk_sp\2c\20SkIRect\2c\20SkTileMode\2c\20SkIRect\29\20const +6287:SkShaderBlurAlgorithm::GetLinearBlur1DEffect\28int\29 +6288:SkShaderBlurAlgorithm::GetBlur2DEffect\28SkISize\20const&\29 +6289:SkShaderBlurAlgorithm::Compute2DBlurOffsets\28SkISize\2c\20std::__2::array&\29 +6290:SkShaderBlurAlgorithm::Compute2DBlurKernel\28SkSize\2c\20SkISize\2c\20std::__2::array&\29 +6291:SkShaderBlurAlgorithm::Compute2DBlurKernel\28SkSize\2c\20SkISize\2c\20SkSpan\29 +6292:SkShaderBlurAlgorithm::Compute1DBlurLinearKernel\28float\2c\20int\2c\20std::__2::array&\29 +6293:SkShaderBlurAlgorithm::Compute1DBlurKernel\28float\2c\20int\2c\20SkSpan\29 +6294:SkShaderBase::getFlattenableType\28\29\20const +6295:SkShader::makeWithColorFilter\28sk_sp\29\20const +6296:SkScan::PathRequiresTiling\28SkIRect\20const&\29 +6297:SkScan::HairLine\28SkPoint\20const*\2c\20int\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +6298:SkScan::FillXRect\28SkIRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +6299:SkScan::FillRect\28SkRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +6300:SkScan::AntiFrameRect\28SkRect\20const&\2c\20SkPoint\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +6301:SkScan::AntiFillRect\28SkRect\20const&\2c\20SkRegion\20const*\2c\20SkBlitter*\29 +6302:SkScan::AAAFillPath\28SkPath\20const&\2c\20SkBlitter*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20bool\29 +6303:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29 +6304:SkScalerContext_FreeType::shouldSubpixelBitmap\28SkGlyph\20const&\2c\20SkMatrix\20const&\29 +6305:SkScalerContext_FreeType::getCBoxForLetter\28char\2c\20FT_BBox_*\29 +6306:SkScalerContext_FreeType::getBoundsOfCurrentOutlineGlyph\28FT_GlyphSlotRec_*\2c\20SkRect*\29 +6307:SkScalerContextRec::setLuminanceColor\28unsigned\20int\29 +6308:SkScalerContextFTUtils::drawCOLRv1Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29\20const +6309:SkScalerContextFTUtils::drawCOLRv0Glyph\28FT_FaceRec_*\2c\20SkGlyph\20const&\2c\20unsigned\20int\2c\20SkSpan\2c\20SkCanvas*\29\20const +6310:SkScalerContext::makeGlyph\28SkPackedGlyphID\2c\20SkArenaAlloc*\29 +6311:SkScalerContext::internalGetPath\28SkGlyph&\2c\20SkArenaAlloc*\29 +6312:SkScalerContext::SkScalerContext\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +6313:SkScalerContext::SaturateGlyphBounds\28SkGlyph*\2c\20SkRect&&\29 +6314:SkScalerContext::MakeRecAndEffects\28SkFont\20const&\2c\20SkPaint\20const&\2c\20SkSurfaceProps\20const&\2c\20SkScalerContextFlags\2c\20SkMatrix\20const&\2c\20SkScalerContextRec*\2c\20SkScalerContextEffects*\29 +6315:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29 +6316:SkScalerContext::AutoDescriptorGivenRecAndEffects\28SkScalerContextRec\20const&\2c\20SkScalerContextEffects\20const&\2c\20SkAutoDescriptor*\29 +6317:SkScalarInterpFunc\28float\2c\20float\20const*\2c\20float\20const*\2c\20int\29 +6318:SkSTArenaAlloc<4096ul>::SkSTArenaAlloc\28unsigned\20long\29 +6319:SkSTArenaAlloc<256ul>::SkSTArenaAlloc\28unsigned\20long\29 +6320:SkSLCombinedSamplerTypeForTextureType\28GrTextureType\29 +6321:SkSL::type_to_sksltype\28SkSL::Context\20const&\2c\20SkSL::Type\20const&\2c\20SkSLType*\29 +6322:SkSL::stoi\28std::__2::basic_string_view>\2c\20long\20long*\29 +6323:SkSL::splat_scalar\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +6324:SkSL::simplify_constant_equality\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +6325:SkSL::short_circuit_boolean\28SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +6326:SkSL::remove_break_statements\28std::__2::unique_ptr>&\29::RemoveBreaksWriter::visitStatementPtr\28std::__2::unique_ptr>&\29 +6327: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 +6328: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 +6329: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 +6330:SkSL::negate_expression\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Type\20const&\29 +6331:SkSL::make_reciprocal_expression\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29 +6332:SkSL::index_out_of_range\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20long\20long\2c\20SkSL::Expression\20const&\29 +6333:SkSL::hoist_vardecl_symbols_into_outer_scope\28SkSL::Context\20const&\2c\20SkSL::Block\20const&\2c\20SkSL::SymbolTable*\2c\20SkSL::SymbolTable*\29::SymbolHoister::visitStatement\28SkSL::Statement\20const&\29 +6334:SkSL::get_struct_definitions_from_module\28SkSL::Program&\2c\20SkSL::Module\20const&\2c\20std::__2::vector>*\29 +6335: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 +6336:SkSL::extract_matrix\28SkSL::Expression\20const*\2c\20float*\29 +6337:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +6338:SkSL::eliminate_no_op_boolean\28SkSL::Position\2c\20SkSL::Expression\20const&\2c\20SkSL::Operator\2c\20SkSL::Expression\20const&\29 +6339: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 +6340: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 +6341: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 +6342:SkSL::argument_needs_scratch_variable\28SkSL::Expression\20const*\2c\20SkSL::Variable\20const*\2c\20SkSL::ProgramUsage\20const&\29 +6343:SkSL::argument_and_parameter_flags_match\28SkSL::Expression\20const&\2c\20SkSL::Variable\20const&\29 +6344:SkSL::apply_to_elements\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Expression\20const&\2c\20double\20\28*\29\28double\29\29 +6345:SkSL::append_rtadjust_fixup_to_vertex_main\28SkSL::Context\20const&\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::Block&\29::AppendRTAdjustFixupHelper::Adjust\28\29\20const +6346:SkSL::\28anonymous\20namespace\29::clone_with_ref_kind\28SkSL::Expression\20const&\2c\20SkSL::VariableRefKind\2c\20SkSL::Position\29 +6347:SkSL::\28anonymous\20namespace\29::check_valid_uniform_type\28SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Context\20const&\2c\20bool\29::$_0::operator\28\29\28\29\20const +6348:SkSL::\28anonymous\20namespace\29::caps_lookup_table\28\29 +6349:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +6350:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitStructFields\28SkSL::Type\20const&\29 +6351:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitStatement\28SkSL::Statement\20const&\29 +6352:SkSL::\28anonymous\20namespace\29::ProgramUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +6353:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitStatement\28SkSL::Statement\20const&\29 +6354:SkSL::\28anonymous\20namespace\29::IsAssignableVisitor::visitExpression\28SkSL::Expression&\2c\20SkSL::FieldAccess\20const*\29::'lambda'\28\29::operator\28\29\28\29\20const +6355:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +6356: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 +6357: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 +6358:SkSL::TypeReference::description\28SkSL::OperatorPrecedence\29\20const +6359:SkSL::TypeReference::VerifyType\28SkSL::Context\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Position\29 +6360:SkSL::TypeReference::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\29 +6361:SkSL::Type::checkIfUsableInArray\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +6362:SkSL::Type::checkForOutOfRangeLiteral\28SkSL::Context\20const&\2c\20SkSL::Expression\20const&\29\20const +6363:SkSL::Type::MakeStructType\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20bool\29 +6364:SkSL::Type::MakeLiteralType\28char\20const*\2c\20SkSL::Type\20const&\2c\20signed\20char\29 +6365:SkSL::Transform::\28anonymous\20namespace\29::BuiltinVariableScanner::addDeclaringElement\28SkSL::Symbol\20const*\29 +6366:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::visitStatementPtr\28std::__2::unique_ptr>&\29 +6367:SkSL::Transform::EliminateDeadGlobalVariables\28SkSL::Program&\29::$_0::operator\28\29\28std::__2::unique_ptr>\20const&\29\20const +6368: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 +6369:SkSL::SymbolTable::moveSymbolTo\28SkSL::SymbolTable*\2c\20SkSL::Symbol*\2c\20SkSL::Context\20const&\29 +6370:SkSL::SymbolTable::isBuiltinType\28std::__2::basic_string_view>\29\20const +6371:SkSL::SymbolTable::insertNewParent\28\29 +6372:SkSL::SymbolTable::addWithoutOwnership\28SkSL::Symbol*\29 +6373:SkSL::Symbol::instantiate\28SkSL::Context\20const&\2c\20SkSL::Position\29\20const +6374:SkSL::SwitchStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +6375:SkSL::SwitchCase::Make\28SkSL::Position\2c\20long\20long\2c\20std::__2::unique_ptr>\29 +6376:SkSL::SwitchCase::MakeDefault\28SkSL::Position\2c\20std::__2::unique_ptr>\29 +6377:SkSL::StructType::structNestingDepth\28\29\20const +6378:SkSL::StructType::slotCount\28\29\20const +6379:SkSL::StructType::StructType\28SkSL::Position\2c\20std::__2::basic_string_view>\2c\20skia_private::TArray\2c\20int\2c\20bool\2c\20bool\29 +6380:SkSL::String::vappendf\28std::__2::basic_string\2c\20std::__2::allocator>*\2c\20char\20const*\2c\20void*\29 +6381:SkSL::SingleArgumentConstructor::argumentSpan\28\29 +6382:SkSL::Setting::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20bool\20const\20SkSL::ShaderCaps::*\29 +6383:SkSL::RP::stack_usage\28SkSL::RP::Instruction\20const&\29 +6384:SkSL::RP::is_sliceable_swizzle\28SkSpan\29 +6385:SkSL::RP::is_immediate_op\28SkSL::RP::BuilderOp\29 +6386:SkSL::RP::UnownedLValueSlice::isWritable\28\29\20const +6387:SkSL::RP::UnownedLValueSlice::dynamicSlotRange\28\29 +6388:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29 +6389:SkSL::RP::ScratchLValue::~ScratchLValue\28\29 +6390:SkSL::RP::Program::appendStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkSL::RP::Callbacks*\2c\20SkSpan\29\20const +6391:SkSL::RP::Program::appendStackRewind\28skia_private::TArray*\29\20const +6392:SkSL::RP::Program::appendCopyImmutableUnmasked\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20std::byte*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\29\20const +6393: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 +6394:SkSL::RP::Program::appendAdjacentNWayBinaryOp\28skia_private::TArray*\2c\20SkArenaAlloc*\2c\20SkSL::RP::ProgramOp\2c\20unsigned\20int\2c\20unsigned\20int\2c\20int\29\20const +6395:SkSL::RP::LValue::swizzle\28\29 +6396:SkSL::RP::ImmutableLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +6397:SkSL::RP::Generator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\29 +6398:SkSL::RP::Generator::writeFunction\28SkSL::IRNode\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSpan>\20const>\29 +6399:SkSL::RP::Generator::storeImmutableValueToSlots\28skia_private::TArray\20const&\2c\20SkSL::RP::SlotRange\29 +6400:SkSL::RP::Generator::returnComplexity\28SkSL::FunctionDefinition\20const*\29 +6401:SkSL::RP::Generator::pushVariableReferencePartial\28SkSL::VariableReference\20const&\2c\20SkSL::RP::SlotRange\29 +6402:SkSL::RP::Generator::pushTraceScopeMask\28\29 +6403:SkSL::RP::Generator::pushLengthIntrinsic\28int\29 +6404:SkSL::RP::Generator::pushLValueOrExpression\28SkSL::RP::LValue*\2c\20SkSL::Expression\20const&\29 +6405:SkSL::RP::Generator::pushIntrinsic\28SkSL::RP::BuilderOp\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +6406:SkSL::RP::Generator::pushIntrinsic\28SkSL::IntrinsicKind\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\2c\20SkSL::Expression\20const&\29 +6407:SkSL::RP::Generator::pushImmutableData\28SkSL::Expression\20const&\29 +6408:SkSL::RP::Generator::getImmutableValueForExpression\28SkSL::Expression\20const&\2c\20skia_private::TArray*\29 +6409:SkSL::RP::Generator::getImmutableBitsForSlot\28SkSL::Expression\20const&\2c\20unsigned\20long\29 +6410:SkSL::RP::Generator::findPreexistingImmutableData\28skia_private::TArray\20const&\29 +6411:SkSL::RP::Generator::discardTraceScopeMask\28\29 +6412:SkSL::RP::Builder::push_condition_mask\28\29 +6413:SkSL::RP::Builder::pop_slots_unmasked\28SkSL::RP::SlotRange\29 +6414:SkSL::RP::Builder::pop_condition_mask\28\29 +6415:SkSL::RP::Builder::pop_and_reenable_loop_mask\28\29 +6416:SkSL::RP::Builder::merge_loop_mask\28\29 +6417:SkSL::RP::Builder::merge_inv_condition_mask\28\29 +6418:SkSL::RP::Builder::mask_off_loop_mask\28\29 +6419:SkSL::RP::Builder::discard_stack\28int\2c\20int\29 +6420:SkSL::RP::Builder::copy_stack_to_slots_unmasked\28SkSL::RP::SlotRange\2c\20int\29 +6421:SkSL::RP::Builder::copy_stack_to_slots_unmasked\28SkSL::RP::SlotRange\29 +6422:SkSL::RP::Builder::copy_stack_to_slots\28SkSL::RP::SlotRange\29 +6423:SkSL::RP::Builder::branch_if_any_lanes_active\28int\29 +6424:SkSL::RP::AutoStack::pushClone\28SkSL::RP::SlotRange\2c\20int\29 +6425:SkSL::RP::AutoContinueMask::~AutoContinueMask\28\29 +6426:SkSL::RP::AutoContinueMask::exitLoopBody\28\29 +6427:SkSL::RP::AutoContinueMask::enterLoopBody\28\29 +6428:SkSL::RP::AutoContinueMask::enable\28\29 +6429:SkSL::ProgramUsage::remove\28SkSL::Expression\20const*\29 +6430:SkSL::ProgramUsage::get\28SkSL::FunctionDeclaration\20const&\29\20const +6431:SkSL::ProgramUsage::add\28SkSL::Statement\20const*\29 +6432:SkSL::ProgramUsage::add\28SkSL::Expression\20const*\29 +6433:SkSL::ProgramConfig::ProgramConfig\28\29 +6434:SkSL::Program::~Program\28\29 +6435:SkSL::PostfixExpression::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20SkSL::Operator\29 +6436:SkSL::PipelineStage::PipelineStageCodeGenerator::functionName\28SkSL::FunctionDeclaration\20const&\29 +6437:SkSL::PipelineStage::PipelineStageCodeGenerator::functionDeclaration\28SkSL::FunctionDeclaration\20const&\29 +6438:SkSL::Parser::~Parser\28\29 +6439:SkSL::Parser::varDeclarations\28\29 +6440:SkSL::Parser::varDeclarationsPrefix\28SkSL::Parser::VarDeclarationsPrefix*\29 +6441:SkSL::Parser::varDeclarationsOrExpressionStatement\28\29 +6442:SkSL::Parser::switchCaseBody\28SkSL::ExpressionArray*\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>*\2c\20std::__2::unique_ptr>\29 +6443:SkSL::Parser::shiftExpression\28\29 +6444:SkSL::Parser::relationalExpression\28\29 +6445:SkSL::Parser::multiplicativeExpression\28\29 +6446:SkSL::Parser::logicalXorExpression\28\29 +6447:SkSL::Parser::logicalAndExpression\28\29 +6448:SkSL::Parser::localVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +6449:SkSL::Parser::intLiteral\28long\20long*\29 +6450:SkSL::Parser::identifier\28std::__2::basic_string_view>*\29 +6451:SkSL::Parser::globalVarDeclarationEnd\28SkSL::Position\2c\20SkSL::Modifiers\20const&\2c\20SkSL::Type\20const*\2c\20SkSL::Token\29 +6452:SkSL::Parser::expressionStatement\28\29 +6453:SkSL::Parser::expectNewline\28\29 +6454:SkSL::Parser::equalityExpression\28\29 +6455:SkSL::Parser::directive\28bool\29 +6456:SkSL::Parser::declarations\28\29 +6457:SkSL::Parser::bitwiseXorExpression\28\29 +6458:SkSL::Parser::bitwiseOrExpression\28\29 +6459:SkSL::Parser::bitwiseAndExpression\28\29 +6460:SkSL::Parser::additiveExpression\28\29 +6461:SkSL::Parser::addGlobalVarDeclaration\28std::__2::unique_ptr>\29 +6462:SkSL::Parser::Parser\28SkSL::Compiler*\2c\20SkSL::ProgramSettings\20const&\2c\20SkSL::ProgramKind\2c\20std::__2::unique_ptr\2c\20std::__2::allocator>\2c\20std::__2::default_delete\2c\20std::__2::allocator>>>\29 +6463:SkSL::MultiArgumentConstructor::argumentSpan\28\29 +6464:SkSL::ModuleLoader::loadSharedModule\28SkSL::Compiler*\29 +6465:SkSL::ModuleLoader::loadPublicModule\28SkSL::Compiler*\29 +6466:SkSL::ModuleLoader::Get\28\29 +6467:SkSL::Module::~Module\28\29 +6468:SkSL::MatrixType::bitWidth\28\29\20const +6469:SkSL::MakeRasterPipelineProgram\28SkSL::Program\20const&\2c\20SkSL::FunctionDefinition\20const&\2c\20SkSL::DebugTracePriv*\2c\20bool\29 +6470:SkSL::Layout::operator!=\28SkSL::Layout\20const&\29\20const +6471:SkSL::Layout::description\28\29\20const +6472:SkSL::Intrinsics::\28anonymous\20namespace\29::finalize_distance\28double\29 +6473:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_matrixCompMult\28double\2c\20double\2c\20double\29 +6474:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_length\28std::__2::array\20const&\29 +6475:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_add\28SkSL::Context\20const&\2c\20std::__2::array\20const&\29 +6476: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 +6477:SkSL::Inliner::inlineExpression\28SkSL::Position\2c\20skia_private::THashMap>\2c\20SkGoodHash>*\2c\20SkSL::SymbolTable*\2c\20SkSL::Expression\20const&\29 +6478:SkSL::Inliner::buildCandidateList\28std::__2::vector>\2c\20std::__2::allocator>>>\20const&\2c\20SkSL::SymbolTable*\2c\20SkSL::ProgramUsage*\2c\20SkSL::InlineCandidateList*\29::$_1::operator\28\29\28SkSL::InlineCandidate\20const&\29\20const +6479:SkSL::Inliner::buildCandidateList\28std::__2::vector>\2c\20std::__2::allocator>>>\20const&\2c\20SkSL::SymbolTable*\2c\20SkSL::ProgramUsage*\2c\20SkSL::InlineCandidateList*\29::$_0::operator\28\29\28SkSL::InlineCandidate\20const&\29\20const +6480:SkSL::Inliner::InlinedCall::~InlinedCall\28\29 +6481:SkSL::IndexExpression::~IndexExpression\28\29 +6482:SkSL::IfStatement::~IfStatement\28\29 +6483:SkSL::IRHelpers::Ref\28SkSL::Variable\20const*\29\20const +6484:SkSL::IRHelpers::Mul\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29\20const +6485:SkSL::IRHelpers::Assign\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29\20const +6486:SkSL::GLSLCodeGenerator::writeVarDeclaration\28SkSL::VarDeclaration\20const&\2c\20bool\29 +6487:SkSL::GLSLCodeGenerator::writeProgramElement\28SkSL::ProgramElement\20const&\29 +6488:SkSL::GLSLCodeGenerator::writeMinAbsHack\28SkSL::Expression&\2c\20SkSL::Expression&\29 +6489:SkSL::GLSLCodeGenerator::generateCode\28\29 +6490:SkSL::FunctionDefinition::~FunctionDefinition\28\29.1 +6491:SkSL::FunctionDefinition::~FunctionDefinition\28\29 +6492: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 +6493: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 +6494:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29.1 +6495:SkSL::FunctionDeclaration::~FunctionDeclaration\28\29 +6496:SkSL::FunctionDeclaration::mangledName\28\29\20const +6497:SkSL::FunctionDeclaration::getMainInputColorParameter\28\29\20const +6498:SkSL::FunctionDeclaration::getMainDestColorParameter\28\29\20const +6499:SkSL::FunctionDeclaration::determineFinalTypes\28SkSL::ExpressionArray\20const&\2c\20skia_private::STArray<8\2c\20SkSL::Type\20const*\2c\20true>*\2c\20SkSL::Type\20const**\29\20const +6500: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 +6501:SkSL::FunctionCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +6502:SkSL::FunctionCall::FunctionCall\28SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::FunctionDeclaration\20const*\2c\20SkSL::ExpressionArray\29 +6503:SkSL::FunctionCall::FindBestFunctionForCall\28SkSL::Context\20const&\2c\20SkSL::FunctionDeclaration\20const*\2c\20SkSL::ExpressionArray\20const&\29 +6504:SkSL::FunctionCall::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::FunctionDeclaration\20const&\2c\20SkSL::ExpressionArray\29 +6505:SkSL::ForStatement::~ForStatement\28\29 +6506: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>\2c\20std::__2::unique_ptr>\29 +6507:SkSL::FindIntrinsicKind\28std::__2::basic_string_view>\29 +6508:SkSL::FieldAccess::~FieldAccess\28\29.1 +6509:SkSL::FieldAccess::~FieldAccess\28\29 +6510:SkSL::FieldAccess::description\28SkSL::OperatorPrecedence\29\20const +6511:SkSL::ExtendedVariable::~ExtendedVariable\28\29 +6512:SkSL::Expression::isFloatLiteral\28\29\20const +6513:SkSL::Expression::coercionCost\28SkSL::Type\20const&\29\20const +6514:SkSL::DoStatement::~DoStatement\28\29.1 +6515:SkSL::DoStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +6516:SkSL::DiscardStatement::Make\28SkSL::Context\20const&\2c\20SkSL::Position\29 +6517:SkSL::ContinueStatement::Make\28SkSL::Position\29 +6518:SkSL::ConstructorStruct::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +6519:SkSL::ConstructorScalarCast::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +6520:SkSL::ConstructorMatrixResize::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20std::__2::unique_ptr>\29 +6521:SkSL::Constructor::Convert\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const&\2c\20SkSL::ExpressionArray\29 +6522:SkSL::Compiler::resetErrors\28\29 +6523:SkSL::Compiler::initializeContext\28SkSL::Module\20const*\2c\20SkSL::ProgramKind\2c\20SkSL::ProgramSettings\2c\20std::__2::basic_string_view>\2c\20bool\29 +6524:SkSL::Compiler::cleanupContext\28\29 +6525:SkSL::CoercionCost::operator<\28SkSL::CoercionCost\29\20const +6526:SkSL::ChildCall::~ChildCall\28\29.1 +6527:SkSL::ChildCall::~ChildCall\28\29 +6528:SkSL::ChildCall::Make\28SkSL::Context\20const&\2c\20SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Variable\20const&\2c\20SkSL::ExpressionArray\29 +6529:SkSL::ChildCall::ChildCall\28SkSL::Position\2c\20SkSL::Type\20const*\2c\20SkSL::Variable\20const*\2c\20SkSL::ExpressionArray\29 +6530:SkSL::BreakStatement::Make\28SkSL::Position\29 +6531:SkSL::Block::Block\28SkSL::Position\2c\20skia_private::STArray<2\2c\20std::__2::unique_ptr>\2c\20true>\2c\20SkSL::Block::Kind\2c\20std::__2::unique_ptr>\29 +6532:SkSL::BinaryExpression::isAssignmentIntoVariable\28\29 +6533:SkSL::ArrayType::columns\28\29\20const +6534:SkSL::Analysis::\28anonymous\20namespace\29::LoopControlFlowVisitor::visitStatement\28SkSL::Statement\20const&\29 +6535:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29::IsDynamicallyUniformExpressionVisitor::visitExpression\28SkSL::Expression\20const&\29 +6536:SkSL::Analysis::IsDynamicallyUniformExpression\28SkSL::Expression\20const&\29 +6537:SkSL::Analysis::IsConstantExpression\28SkSL::Expression\20const&\29 +6538:SkSL::Analysis::IsCompileTimeConstant\28SkSL::Expression\20const&\29::IsCompileTimeConstantVisitor::visitExpression\28SkSL::Expression\20const&\29 +6539:SkSL::Analysis::IsAssignable\28SkSL::Expression&\2c\20SkSL::Analysis::AssignmentInfo*\2c\20SkSL::ErrorReporter*\29 +6540:SkSL::Analysis::HasSideEffects\28SkSL::Expression\20const&\29::HasSideEffectsVisitor::visitExpression\28SkSL::Expression\20const&\29 +6541: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 +6542:SkSL::Analysis::GetLoopControlFlowInfo\28SkSL::Statement\20const&\29 +6543:SkSL::Analysis::ContainsVariable\28SkSL::Expression\20const&\2c\20SkSL::Variable\20const&\29::ContainsVariableVisitor::visitExpression\28SkSL::Expression\20const&\29 +6544:SkSL::Analysis::ContainsRTAdjust\28SkSL::Expression\20const&\29::ContainsRTAdjustVisitor::visitExpression\28SkSL::Expression\20const&\29 +6545:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +6546:SkSL::AliasType::numberKind\28\29\20const +6547:SkSL::AliasType::isAllowedInES2\28\29\20const +6548:SkSBlockAllocator<80ul>::SkSBlockAllocator\28SkBlockAllocator::GrowthPolicy\2c\20unsigned\20long\29 +6549:SkRuntimeShader::~SkRuntimeShader\28\29 +6550:SkRuntimeEffectPriv::VarAsChild\28SkSL::Variable\20const&\2c\20int\29 +6551:SkRuntimeEffect::~SkRuntimeEffect\28\29 +6552:SkRuntimeEffect::getRPProgram\28SkSL::DebugTracePriv*\29\20const +6553:SkRuntimeEffect::MakeForShader\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +6554:SkRuntimeEffect::ChildPtr::type\28\29\20const +6555:SkRuntimeEffect::ChildPtr::shader\28\29\20const +6556:SkRuntimeEffect::ChildPtr::colorFilter\28\29\20const +6557:SkRuntimeEffect::ChildPtr::blender\28\29\20const +6558:SkRgnBuilder::collapsWithPrev\28\29 +6559:SkResourceCache::release\28SkResourceCache::Rec*\29 +6560:SkResourceCache::PostPurgeSharedID\28unsigned\20long\20long\29 +6561:SkResourceCache::NewCachedData\28unsigned\20long\29 +6562:SkResourceCache::GetDiscardableFactory\28\29 +6563: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 +6564: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 +6565:SkRegion::quickReject\28SkIRect\20const&\29\20const +6566:SkRegion::quickContains\28SkIRect\20const&\29\20const +6567:SkRegion::op\28SkIRect\20const&\2c\20SkRegion::Op\29 +6568:SkRegion::getRuns\28int*\2c\20int*\29\20const +6569:SkRegion::Spanerator::next\28int*\2c\20int*\29 +6570:SkRegion::Spanerator::Spanerator\28SkRegion\20const&\2c\20int\2c\20int\2c\20int\29 +6571:SkRegion::RunHead::ensureWritable\28\29 +6572:SkRegion::RunHead::computeRunBounds\28SkIRect*\29 +6573:SkRegion::RunHead::Alloc\28int\2c\20int\2c\20int\29 +6574:SkRegion::Oper\28SkRegion\20const&\2c\20SkRegion\20const&\2c\20SkRegion::Op\2c\20SkRegion*\29 +6575:SkRefCntBase::internal_dispose\28\29\20const +6576:SkReduceOrder::Conic\28SkConic\20const&\2c\20SkPoint*\29 +6577:SkRectPriv::Subtract\28SkIRect\20const&\2c\20SkIRect\20const&\2c\20SkIRect*\29 +6578:SkRectPriv::QuadContainsRect\28SkM44\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20float\29 +6579:SkRectPriv::QuadContainsRectMask\28SkM44\20const&\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20float\29 +6580:SkRectPriv::FitsInFixed\28SkRect\20const&\29 +6581:SkRectClipBlitter::requestRowsPreserved\28\29\20const +6582:SkRectClipBlitter::allocBlitMemory\28unsigned\20long\29 +6583:SkRect::roundOut\28SkRect*\29\20const +6584:SkRect::roundIn\28\29\20const +6585:SkRect::roundIn\28SkIRect*\29\20const +6586:SkRect::makeOffset\28float\2c\20float\29\20const +6587:SkRect::joinNonEmptyArg\28SkRect\20const&\29 +6588:SkRect::intersect\28SkRect\20const&\2c\20SkRect\20const&\29 +6589:SkRect::contains\28float\2c\20float\29\20const +6590:SkRect::contains\28SkIRect\20const&\29\20const +6591:SkRect*\20SkRecord::alloc\28unsigned\20long\29 +6592:SkRecords::FillBounds::popSaveBlock\28\29 +6593:SkRecords::FillBounds::popControl\28SkRect\20const&\29 +6594:SkRecords::FillBounds::AdjustForPaint\28SkPaint\20const*\2c\20SkRect*\29 +6595:SkRecorder::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +6596:SkRecordedDrawable::~SkRecordedDrawable\28\29 +6597:SkRecordOptimize\28SkRecord*\29 +6598:SkRecordFillBounds\28SkRect\20const&\2c\20SkRecord\20const&\2c\20SkRect*\2c\20SkBBoxHierarchy::Metadata*\29 +6599:SkRecord::~SkRecord\28\29 +6600:SkReadBuffer::skipByteArray\28unsigned\20long*\29 +6601:SkReadBuffer::readPad32\28void*\2c\20unsigned\20long\29 +6602:SkReadBuffer::SkReadBuffer\28void\20const*\2c\20unsigned\20long\29 +6603:SkRasterPipeline_UniformColorCtx*\20SkArenaAlloc::make\28\29 +6604:SkRasterPipeline_TileCtx*\20SkArenaAlloc::make\28\29 +6605:SkRasterPipeline_RewindCtx*\20SkArenaAlloc::make\28\29 +6606:SkRasterPipeline_DecalTileCtx*\20SkArenaAlloc::make\28\29 +6607:SkRasterPipeline_CopyIndirectCtx*\20SkArenaAlloc::make\28\29 +6608:SkRasterPipeline_2PtConicalCtx*\20SkArenaAlloc::make\28\29 +6609:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29 +6610:SkRasterPipeline::buildPipeline\28SkRasterPipelineStage*\29\20const +6611:SkRasterPipeline::appendSetRGB\28SkArenaAlloc*\2c\20float\20const*\29 +6612:SkRasterPipeline::appendLoad\28SkColorType\2c\20SkRasterPipeline_MemoryCtx\20const*\29 +6613:SkRasterClipStack::Rec::Rec\28SkRasterClip\20const&\29 +6614:SkRasterClip::setEmpty\28\29 +6615:SkRasterClip::computeIsRect\28\29\20const +6616:SkRandom::nextULessThan\28unsigned\20int\29 +6617:SkRTreeFactory::operator\28\29\28\29\20const +6618:SkRTree::~SkRTree\28\29 +6619:SkRTree::search\28SkRTree::Node*\2c\20SkRect\20const&\2c\20std::__2::vector>*\29\20const +6620:SkRTree::bulkLoad\28std::__2::vector>*\2c\20int\29 +6621:SkRTree::allocateNodeAtLevel\28unsigned\20short\29 +6622:SkRRectPriv::ConservativeIntersect\28SkRRect\20const&\2c\20SkRRect\20const&\29::$_2::operator\28\29\28SkRRect::Corner\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29\20const +6623:SkRRect::setRectXY\28SkRect\20const&\2c\20float\2c\20float\29 +6624:SkRRect::isValid\28\29\20const +6625:SkRRect::computeType\28\29 +6626:SkRGBA4f<\28SkAlphaType\292>\20skgpu::Swizzle::applyTo<\28SkAlphaType\292>\28SkRGBA4f<\28SkAlphaType\292>\29\20const +6627:SkRGBA4f<\28SkAlphaType\292>::unpremul\28\29\20const +6628:SkQuads::Roots\28double\2c\20double\2c\20double\29 +6629:SkQuadraticEdge::setQuadraticWithoutUpdate\28SkPoint\20const*\2c\20int\29 +6630:SkQuadConstruct::init\28float\2c\20float\29 +6631:SkPtrSet::add\28void*\29 +6632:SkPoint::Normalize\28SkPoint*\29 +6633:SkPixmap::readPixels\28SkPixmap\20const&\29\20const +6634:SkPixmap::readPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\29\20const +6635:SkPixmap::erase\28unsigned\20int\29\20const +6636:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const +6637:SkPixelRef::callGenIDChangeListeners\28\29 +6638:SkPictureShader::CachedImageInfo::makeImage\28sk_sp\2c\20SkPicture\20const*\29\20const +6639:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20sk_sp\29 +6640:SkPictureRecorder::beginRecording\28SkRect\20const&\2c\20SkBBHFactory*\29 +6641:SkPictureRecord::fillRestoreOffsetPlaceholdersForCurrentStackLevel\28unsigned\20int\29 +6642:SkPictureRecord::endRecording\28\29 +6643:SkPictureRecord::beginRecording\28\29 +6644:SkPictureRecord::addPath\28SkPath\20const&\29 +6645:SkPictureRecord::addPathToHeap\28SkPath\20const&\29 +6646:SkPictureRecord::SkPictureRecord\28SkIRect\20const&\2c\20unsigned\20int\29 +6647:SkPictureImageGenerator::~SkPictureImageGenerator\28\29 +6648:SkPictureData::~SkPictureData\28\29 +6649:SkPictureData::flatten\28SkWriteBuffer&\29\20const +6650:SkPictureData::SkPictureData\28SkPictureRecord\20const&\2c\20SkPictInfo\20const&\29 +6651:SkPicture::SkPicture\28\29 +6652:SkPathWriter::moveTo\28\29 +6653:SkPathWriter::init\28\29 +6654:SkPathWriter::assemble\28\29 +6655:SkPathStroker::setQuadEndNormal\28SkPoint\20const*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint*\2c\20SkPoint*\29 +6656:SkPathStroker::cubicQuadEnds\28SkPoint\20const*\2c\20SkQuadConstruct*\29 +6657:SkPathRef::resetToSize\28int\2c\20int\2c\20int\2c\20int\2c\20int\2c\20int\29 +6658:SkPathRef::isRRect\28SkRRect*\2c\20bool*\2c\20unsigned\20int*\29\20const +6659:SkPathRef::isOval\28SkRect*\2c\20bool*\2c\20unsigned\20int*\29\20const +6660:SkPathRef::commonReset\28\29 +6661:SkPathRef::Iter::next\28SkPoint*\29 +6662:SkPathRef::CreateEmpty\28\29 +6663:SkPathPriv::LeadingMoveToCount\28SkPath\20const&\29 +6664:SkPathPriv::IsRRect\28SkPath\20const&\2c\20SkRRect*\2c\20SkPathDirection*\2c\20unsigned\20int*\29 +6665:SkPathPriv::IsOval\28SkPath\20const&\2c\20SkRect*\2c\20SkPathDirection*\2c\20unsigned\20int*\29 +6666:SkPathPriv::IsNestedFillRects\28SkPath\20const&\2c\20SkRect*\2c\20SkPathDirection*\29 +6667:SkPathPriv::CreateDrawArcPath\28SkPath*\2c\20SkArc\20const&\2c\20bool\29 +6668:SkPathOpsBounds::Intersects\28SkPathOpsBounds\20const&\2c\20SkPathOpsBounds\20const&\29 +6669:SkPathMeasure::~SkPathMeasure\28\29 +6670:SkPathMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29 +6671:SkPathMeasure::SkPathMeasure\28SkPath\20const&\2c\20bool\2c\20float\29 +6672:SkPathEffectBase::getFlattenableType\28\29\20const +6673:SkPathEffectBase::PointData::~PointData\28\29 +6674:SkPathEdgeIter::next\28\29::'lambda'\28\29::operator\28\29\28\29\20const +6675:SkPathBuilder::reset\28\29 +6676:SkPathBuilder::lineTo\28float\2c\20float\29 +6677:SkPathBuilder::addRect\28SkRect\20const&\2c\20SkPathDirection\29 +6678:SkPathBuilder::addOval\28SkRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +6679:SkPath::writeToMemory\28void*\29\20const +6680:SkPath::reverseAddPath\28SkPath\20const&\29 +6681:SkPath::offset\28float\2c\20float\29 +6682:SkPath::makeTransform\28SkMatrix\20const&\2c\20SkApplyPerspectiveClip\29\20const +6683:SkPath::isZeroLengthSincePoint\28int\29\20const +6684:SkPath::isRRect\28SkRRect*\29\20const +6685:SkPath::isOval\28SkRect*\29\20const +6686:SkPath::copyFields\28SkPath\20const&\29 +6687:SkPath::conservativelyContainsRect\28SkRect\20const&\29\20const +6688:SkPath::arcTo\28float\2c\20float\2c\20float\2c\20SkPath::ArcSize\2c\20SkPathDirection\2c\20float\2c\20float\29 +6689:SkPath::addRect\28float\2c\20float\2c\20float\2c\20float\2c\20SkPathDirection\29 +6690:SkPath::addRRect\28SkRRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\29 +6691:SkPath::addCircle\28float\2c\20float\2c\20float\2c\20SkPathDirection\29 +6692:SkPath::Polygon\28std::initializer_list\20const&\2c\20bool\2c\20SkPathFillType\2c\20bool\29 +6693:SkPaintToGrPaintWithBlend\28GrRecordingContext*\2c\20GrColorInfo\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkBlender*\2c\20SkSurfaceProps\20const&\2c\20GrPaint*\29 +6694:SkPaintPriv::ShouldDither\28SkPaint\20const&\2c\20SkColorType\29 +6695:SkPackedGlyphID::PackIDSkPoint\28unsigned\20short\2c\20SkPoint\2c\20SkIPoint\29 +6696:SkOpSpanBase::merge\28SkOpSpan*\29 +6697:SkOpSpanBase::initBase\28SkOpSegment*\2c\20SkOpSpan*\2c\20double\2c\20SkPoint\20const&\29 +6698:SkOpSpan::sortableTop\28SkOpContour*\29 +6699:SkOpSpan::setOppSum\28int\29 +6700:SkOpSpan::insertCoincidence\28SkOpSpan*\29 +6701:SkOpSpan::insertCoincidence\28SkOpSegment\20const*\2c\20bool\2c\20bool\29 +6702:SkOpSpan::init\28SkOpSegment*\2c\20SkOpSpan*\2c\20double\2c\20SkPoint\20const&\29 +6703:SkOpSpan::containsCoincidence\28SkOpSegment\20const*\29\20const +6704:SkOpSpan::computeWindSum\28\29 +6705:SkOpSegment::updateOppWindingReverse\28SkOpAngle\20const*\29\20const +6706:SkOpSegment::ptsDisjoint\28double\2c\20SkPoint\20const&\2c\20double\2c\20SkPoint\20const&\29\20const +6707:SkOpSegment::markWinding\28SkOpSpan*\2c\20int\29 +6708:SkOpSegment::isClose\28double\2c\20SkOpSegment\20const*\29\20const +6709:SkOpSegment::computeSum\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkOpAngle::IncludeType\29 +6710:SkOpSegment::collapsed\28double\2c\20double\29\20const +6711:SkOpSegment::addExpanded\28double\2c\20SkOpSpanBase\20const*\2c\20bool*\29 +6712:SkOpSegment::activeWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int*\29 +6713:SkOpSegment::activeOp\28int\2c\20int\2c\20SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20SkPathOp\2c\20int*\2c\20int*\29 +6714:SkOpSegment::activeAngle\28SkOpSpanBase*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +6715:SkOpSegment::activeAngleInner\28SkOpSpanBase*\2c\20SkOpSpanBase**\2c\20SkOpSpanBase**\2c\20bool*\29 +6716:SkOpPtT::ptAlreadySeen\28SkOpPtT\20const*\29\20const +6717:SkOpEdgeBuilder::~SkOpEdgeBuilder\28\29 +6718:SkOpEdgeBuilder::preFetch\28\29 +6719:SkOpEdgeBuilder::finish\28\29 +6720:SkOpEdgeBuilder::SkOpEdgeBuilder\28SkPath\20const&\2c\20SkOpContourHead*\2c\20SkOpGlobalState*\29 +6721:SkOpContourBuilder::addQuad\28SkPoint*\29 +6722:SkOpContourBuilder::addLine\28SkPoint\20const*\29 +6723:SkOpContourBuilder::addCubic\28SkPoint*\29 +6724:SkOpContourBuilder::addConic\28SkPoint*\2c\20float\29 +6725:SkOpCoincidence::restoreHead\28\29 +6726:SkOpCoincidence::releaseDeleted\28SkCoincidentSpans*\29 +6727:SkOpCoincidence::mark\28\29 +6728:SkOpCoincidence::markCollapsed\28SkCoincidentSpans*\2c\20SkOpPtT*\29 +6729:SkOpCoincidence::fixUp\28SkCoincidentSpans*\2c\20SkOpPtT*\2c\20SkOpPtT\20const*\29 +6730:SkOpCoincidence::contains\28SkCoincidentSpans\20const*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\29\20const +6731:SkOpCoincidence::checkOverlap\28SkCoincidentSpans*\2c\20SkOpSegment\20const*\2c\20SkOpSegment\20const*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20SkTDArray*\29\20const +6732:SkOpCoincidence::addOrOverlap\28SkOpSegment*\2c\20SkOpSegment*\2c\20double\2c\20double\2c\20double\2c\20double\2c\20bool*\29 +6733:SkOpCoincidence::addMissing\28bool*\29 +6734:SkOpCoincidence::addEndMovedSpans\28SkOpSpan\20const*\2c\20SkOpSpanBase\20const*\29 +6735:SkOpAngle::tangentsDiverge\28SkOpAngle\20const*\2c\20double\29 +6736:SkOpAngle::setSpans\28\29 +6737:SkOpAngle::setSector\28\29 +6738:SkOpAngle::previous\28\29\20const +6739:SkOpAngle::midToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +6740:SkOpAngle::merge\28SkOpAngle*\29 +6741:SkOpAngle::loopContains\28SkOpAngle\20const*\29\20const +6742:SkOpAngle::lineOnOneSide\28SkOpAngle\20const*\2c\20bool\29 +6743:SkOpAngle::lastMarked\28\29\20const +6744:SkOpAngle::findSector\28SkPath::Verb\2c\20double\2c\20double\29\20const +6745:SkOpAngle::endToSide\28SkOpAngle\20const*\2c\20bool*\29\20const +6746:SkOpAngle::checkCrossesZero\28\29\20const +6747:SkOpAngle::alignmentSameSide\28SkOpAngle\20const*\2c\20int*\29\20const +6748:SkOpAngle::after\28SkOpAngle*\29 +6749:SkOffsetSimplePolygon\28SkPoint\20const*\2c\20int\2c\20SkRect\20const&\2c\20float\2c\20SkTDArray*\2c\20SkTDArray*\29 +6750:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29 +6751:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29 +6752:SkNullBlitter*\20SkArenaAlloc::make\28\29 +6753:SkNotifyBitmapGenIDIsStale\28unsigned\20int\29 +6754:SkNoPixelsDevice::~SkNoPixelsDevice\28\29 +6755:SkNoPixelsDevice::SkNoPixelsDevice\28SkIRect\20const&\2c\20SkSurfaceProps\20const&\29 +6756:SkNoDestructor::SkNoDestructor\2c\20sk_sp>\28sk_sp&&\2c\20sk_sp&&\29 +6757:SkNVRefCnt::unref\28\29\20const +6758:SkNVRefCnt::unref\28\29\20const +6759:SkNVRefCnt::unref\28\29\20const +6760:SkNVRefCnt::unref\28\29\20const +6761:SkNVRefCnt::unref\28\29\20const +6762:SkMipmapAccessor::SkMipmapAccessor\28SkImage_Base\20const*\2c\20SkMatrix\20const&\2c\20SkMipmapMode\29::$_1::operator\28\29\28SkPixmap\20const&\29\20const +6763:SkMipmap::~SkMipmap\28\29 +6764:SkMessageBus::Get\28\29 +6765:SkMessageBus::Get\28\29 +6766:SkMeshSpecification::Attribute::Attribute\28SkMeshSpecification::Attribute\20const&\29 +6767:SkMeshPriv::CpuBuffer::~CpuBuffer\28\29 +6768:SkMeshPriv::CpuBuffer::size\28\29\20const +6769:SkMeshPriv::CpuBuffer::peek\28\29\20const +6770:SkMeshPriv::CpuBuffer::onUpdate\28GrDirectContext*\2c\20void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\29 +6771:SkMemoryStream::~SkMemoryStream\28\29 +6772:SkMemoryStream::SkMemoryStream\28sk_sp\29 +6773:SkMatrixPriv::MapPointsWithStride\28SkMatrix\20const&\2c\20SkPoint*\2c\20unsigned\20long\2c\20int\29 +6774:SkMatrix::updateTranslateMask\28\29 +6775:SkMatrix::setTranslate\28float\2c\20float\29 +6776:SkMatrix::setScale\28float\2c\20float\29 +6777:SkMatrix::postSkew\28float\2c\20float\29 +6778:SkMatrix::mapHomogeneousPoints\28SkPoint3*\2c\20SkPoint3\20const*\2c\20int\29\20const +6779:SkMatrix::getMinScale\28\29\20const +6780:SkMatrix::computeTypeMask\28\29\20const +6781:SkMatrix::Rot_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +6782:SkMatrix*\20SkRecord::alloc\28unsigned\20long\29 +6783:SkMaskFilterBase::NinePatch::~NinePatch\28\29 +6784:SkMask*\20SkTLazy::init\28unsigned\20char\20const*&&\2c\20SkIRect\20const&\2c\20unsigned\20int\20const&\2c\20SkMask::Format\20const&\29 +6785:SkMask*\20SkTLazy::init\28SkMaskBuilder&\29 +6786:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29 +6787: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 +6788:SkMakeBitmapShaderForPaint\28SkPaint\20const&\2c\20SkBitmap\20const&\2c\20SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const*\2c\20SkCopyPixelsMode\29 +6789:SkM44::preTranslate\28float\2c\20float\2c\20float\29 +6790:SkM44::postTranslate\28float\2c\20float\2c\20float\29 +6791:SkLocalMatrixShader::type\28\29\20const +6792:SkLinearColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +6793:SkLineParameters::normalize\28\29 +6794:SkLineParameters::cubicEndPoints\28SkDCubic\20const&\29 +6795:SkLineClipper::ClipLine\28SkPoint\20const*\2c\20SkRect\20const&\2c\20SkPoint*\2c\20bool\29 +6796:SkLatticeIter::~SkLatticeIter\28\29 +6797:SkLatticeIter::next\28SkIRect*\2c\20SkRect*\2c\20bool*\2c\20unsigned\20int*\29 +6798:SkLatticeIter::SkLatticeIter\28SkCanvas::Lattice\20const&\2c\20SkRect\20const&\29 +6799:SkLRUCache>\2c\20skia::textlayout::ParagraphCache::KeyHash>::find\28skia::textlayout::ParagraphCacheKey\20const&\29 +6800:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::insert\28GrProgramDesc\20const&\2c\20std::__2::unique_ptr>\29 +6801:SkLRUCache>\2c\20GrGLGpu::ProgramCache::DescHash>::find\28GrProgramDesc\20const&\29 +6802:SkKnownRuntimeEffects::\28anonymous\20namespace\29::make_matrix_conv_effect\28SkKnownRuntimeEffects::\28anonymous\20namespace\29::MatrixConvolutionImpl\2c\20SkRuntimeEffect::Options\20const&\29::$_0::operator\28\29\28int\2c\20SkRuntimeEffect::Options\20const&\29\20const +6803:SkJSONWriter::appendf\28char\20const*\2c\20...\29 +6804:SkIsSimplePolygon\28SkPoint\20const*\2c\20int\29 +6805:SkIsConvexPolygon\28SkPoint\20const*\2c\20int\29 +6806:SkInvert4x4Matrix\28float\20const*\2c\20float*\29 +6807:SkInvert3x3Matrix\28float\20const*\2c\20float*\29 +6808:SkIntersections::quadVertical\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6809:SkIntersections::quadLine\28SkPoint\20const*\2c\20SkPoint\20const*\29 +6810:SkIntersections::quadHorizontal\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6811:SkIntersections::mostOutside\28double\2c\20double\2c\20SkDPoint\20const&\29\20const +6812:SkIntersections::lineVertical\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6813:SkIntersections::lineHorizontal\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6814:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDQuad\20const&\29 +6815:SkIntersections::intersect\28SkDCubic\20const&\2c\20SkDConic\20const&\29 +6816:SkIntersections::intersect\28SkDConic\20const&\2c\20SkDQuad\20const&\29 +6817:SkIntersections::insertCoincident\28double\2c\20double\2c\20SkDPoint\20const&\29 +6818:SkIntersections::cubicVertical\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6819:SkIntersections::cubicLine\28SkPoint\20const*\2c\20SkPoint\20const*\29 +6820:SkIntersections::cubicHorizontal\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6821:SkIntersections::conicVertical\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6822:SkIntersections::conicLine\28SkPoint\20const*\2c\20float\2c\20SkPoint\20const*\29 +6823:SkIntersections::conicHorizontal\28SkPoint\20const*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20bool\29 +6824:SkImages::RasterFromPixmap\28SkPixmap\20const&\2c\20void\20\28*\29\28void\20const*\2c\20void*\29\2c\20void*\29 +6825:SkImages::RasterFromData\28SkImageInfo\20const&\2c\20sk_sp\2c\20unsigned\20long\29 +6826:SkImage_Raster::~SkImage_Raster\28\29 +6827:SkImage_Raster::onPeekBitmap\28\29\20const +6828:SkImage_Raster::SkImage_Raster\28SkBitmap\20const&\2c\20bool\29 +6829:SkImage_Lazy::~SkImage_Lazy\28\29 +6830:SkImage_Lazy::onMakeSurface\28skgpu::graphite::Recorder*\2c\20SkImageInfo\20const&\29\20const +6831:SkImage_GaneshBase::~SkImage_GaneshBase\28\29 +6832:SkImage_GaneshBase::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +6833:SkImage_GaneshBase::SkImage_GaneshBase\28sk_sp\2c\20SkImageInfo\2c\20unsigned\20int\29 +6834: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 +6835:SkImage_Base::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +6836:SkImageShader::~SkImageShader\28\29 +6837:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_3::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +6838:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const::$_1::operator\28\29\28\28anonymous\20namespace\29::MipLevelHelper\20const*\29\20const +6839:SkImageInfoValidConversion\28SkImageInfo\20const&\2c\20SkImageInfo\20const&\29 +6840:SkImageGenerator::SkImageGenerator\28SkImageInfo\20const&\2c\20unsigned\20int\29 +6841:SkImageFilters::Crop\28SkRect\20const&\2c\20sk_sp\29 +6842:SkImageFilters::Blur\28float\2c\20float\2c\20SkTileMode\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +6843:SkImageFilter_Base::getInputBounds\28skif::Mapping\20const&\2c\20skif::DeviceSpace\20const&\2c\20std::__2::optional>\29\20const +6844:SkImageFilter_Base::getCTMCapability\28\29\20const +6845:SkImageFilterCache::Get\28SkImageFilterCache::CreateIfNecessary\29 +6846:SkImageFilterCache::Create\28unsigned\20long\29 +6847:SkImage::~SkImage\28\29 +6848: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 +6849: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 +6850: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 +6851:SkGradientShader::MakeRadial\28SkPoint\20const&\2c\20float\2c\20unsigned\20int\20const*\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20SkMatrix\20const*\29 +6852:SkGradientShader::MakeLinear\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20float\20const*\2c\20int\2c\20SkTileMode\2c\20unsigned\20int\2c\20SkMatrix\20const*\29 +6853: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 +6854:SkGradientBaseShader::~SkGradientBaseShader\28\29 +6855:SkGradientBaseShader::getPos\28int\29\20const +6856:SkGradientBaseShader::AppendGradientFillStages\28SkRasterPipeline*\2c\20SkArenaAlloc*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const*\2c\20float\20const*\2c\20int\29 +6857:SkGlyph::mask\28SkPoint\29\20const +6858: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 +6859:SkGenerateDistanceFieldFromA8Image\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\2c\20int\2c\20unsigned\20long\29 +6860:SkGaussFilter::SkGaussFilter\28double\29 +6861:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29 +6862:SkFontStyleSet::CreateEmpty\28\29 +6863:SkFontStyle::SkFontStyle\28int\2c\20int\2c\20SkFontStyle::Slant\29 +6864:SkFontScanner_FreeType::scanInstance\28SkStreamAsset*\2c\20int\2c\20int\2c\20SkString*\2c\20SkFontStyle*\2c\20bool*\2c\20skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>*\29\20const +6865:SkFontScanner_FreeType::computeAxisValues\28skia_private::STArray<4\2c\20SkFontScanner::AxisDefinition\2c\20true>\2c\20SkFontArguments::VariationPosition\2c\20int*\2c\20SkString\20const&\2c\20SkFontStyle*\2c\20SkFontArguments::VariationPosition::Coordinate\20const*\29 +6866:SkFontScanner_FreeType::SkFontScanner_FreeType\28\29 +6867:SkFontPriv::MakeTextMatrix\28float\2c\20float\2c\20float\29 +6868:SkFontPriv::GetFontBounds\28SkFont\20const&\29 +6869:SkFontMgr_Custom::~SkFontMgr_Custom\28\29 +6870:SkFontDescriptor::SkFontStyleWidthForWidthAxisValue\28float\29 +6871:SkFontData::~SkFontData\28\29 +6872:SkFontData::SkFontData\28std::__2::unique_ptr>\2c\20int\2c\20int\2c\20int\20const*\2c\20int\2c\20SkFontArguments::Palette::Override\20const*\2c\20int\29 +6873:SkFont::operator==\28SkFont\20const&\29\20const +6874:SkFont::getWidths\28unsigned\20short\20const*\2c\20int\2c\20float*\29\20const +6875:SkFont::getPaths\28unsigned\20short\20const*\2c\20int\2c\20void\20\28*\29\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29\2c\20void*\29\20const +6876:SkFindCubicInflections\28SkPoint\20const*\2c\20float*\29 +6877:SkFindCubicExtrema\28float\2c\20float\2c\20float\2c\20float\2c\20float*\29 +6878:SkFindBisector\28SkPoint\2c\20SkPoint\29 +6879:SkFibBlockSizes<4294967295u>::SkFibBlockSizes\28unsigned\20int\2c\20unsigned\20int\29::'lambda0'\28\29::operator\28\29\28\29\20const +6880:SkFibBlockSizes<4294967295u>::SkFibBlockSizes\28unsigned\20int\2c\20unsigned\20int\29::'lambda'\28\29::operator\28\29\28\29\20const +6881:SkFILEStream::~SkFILEStream\28\29 +6882:SkEvalQuadTangentAt\28SkPoint\20const*\2c\20float\29 +6883:SkEvalQuadAt\28SkPoint\20const*\2c\20float\2c\20SkPoint*\2c\20SkPoint*\29 +6884:SkEdgeClipper::next\28SkPoint*\29 +6885:SkEdgeClipper::clipQuad\28SkPoint\20const*\2c\20SkRect\20const&\29 +6886:SkEdgeClipper::clipLine\28SkPoint\2c\20SkPoint\2c\20SkRect\20const&\29 +6887:SkEdgeClipper::appendCubic\28SkPoint\20const*\2c\20bool\29 +6888:SkEdgeClipper::ClipPath\28SkPath\20const&\2c\20SkRect\20const&\2c\20bool\2c\20void\20\28*\29\28SkEdgeClipper*\2c\20bool\2c\20void*\29\2c\20void*\29 +6889:SkEdgeBuilder::build\28SkPath\20const&\2c\20SkIRect\20const*\2c\20bool\29::$_1::operator\28\29\28SkPoint\20const*\29\20const +6890:SkEdgeBuilder::buildEdges\28SkPath\20const&\2c\20SkIRect\20const*\29 +6891:SkEdgeBuilder::SkEdgeBuilder\28\29 +6892:SkEdge::updateLine\28int\2c\20int\2c\20int\2c\20int\29 +6893:SkEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20int\29 +6894:SkDynamicMemoryWStream::reset\28\29 +6895:SkDynamicMemoryWStream::Block::append\28void\20const*\2c\20unsigned\20long\29 +6896:SkDrawableList::newDrawableSnapshot\28\29 +6897:SkDrawTreatAsHairline\28SkPaint\20const&\2c\20SkMatrix\20const&\2c\20float*\29 +6898:SkDrawShadowMetrics::GetSpotShadowTransform\28SkPoint3\20const&\2c\20float\2c\20SkMatrix\20const&\2c\20SkPoint3\20const&\2c\20SkRect\20const&\2c\20bool\2c\20SkMatrix*\2c\20float*\29 +6899:SkDrawBase::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20SkRect\20const*\29\20const +6900:SkDrawBase::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const*\2c\20bool\2c\20bool\2c\20SkBlitter*\29\20const +6901:SkDrawBase::drawPaint\28SkPaint\20const&\29\20const +6902:SkDrawBase::SkDrawBase\28SkDrawBase\20const&\29 +6903:SkDrawBase::DrawToMask\28SkPath\20const&\2c\20SkIRect\20const&\2c\20SkMaskFilter\20const*\2c\20SkMatrix\20const*\2c\20SkMaskBuilder*\2c\20SkMaskBuilder::CreateMode\2c\20SkStrokeRec::InitStyle\29 +6904:SkDraw::drawSprite\28SkBitmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29\20const +6905:SkDraw::drawBitmap\28SkBitmap\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29\20const +6906:SkDraw::SkDraw\28SkDraw\20const&\29 +6907:SkDevice::setOrigin\28SkM44\20const&\2c\20int\2c\20int\29 +6908:SkDevice::setDeviceCoordinateSystem\28SkM44\20const&\2c\20SkM44\20const&\2c\20SkM44\20const&\2c\20int\2c\20int\29 +6909:SkDevice::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +6910:SkDevice::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +6911:SkDevice::drawArc\28SkArc\20const&\2c\20SkPaint\20const&\29 +6912:SkDescriptor::addEntry\28unsigned\20int\2c\20unsigned\20long\2c\20void\20const*\29 +6913:SkDeque::push_back\28\29 +6914:SkDeque::allocateBlock\28int\29 +6915:SkDeque::Iter::Iter\28SkDeque\20const&\2c\20SkDeque::Iter::IterStart\29 +6916:SkDashPathEffect::Make\28float\20const*\2c\20int\2c\20float\29 +6917: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 +6918:SkDashPath::CalcDashParameters\28float\2c\20float\20const*\2c\20int\2c\20float*\2c\20int*\2c\20float*\2c\20float*\29 +6919:SkDashImpl::~SkDashImpl\28\29 +6920:SkDRect::setBounds\28SkDQuad\20const&\2c\20SkDQuad\20const&\2c\20double\2c\20double\29 +6921:SkDRect::setBounds\28SkDCubic\20const&\2c\20SkDCubic\20const&\2c\20double\2c\20double\29 +6922:SkDRect::setBounds\28SkDConic\20const&\2c\20SkDConic\20const&\2c\20double\2c\20double\29 +6923:SkDQuad::subDivide\28double\2c\20double\29\20const +6924:SkDQuad::otherPts\28int\2c\20SkDPoint\20const**\29\20const +6925:SkDQuad::isLinear\28int\2c\20int\29\20const +6926:SkDQuad::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +6927:SkDQuad::AddValidTs\28double*\2c\20int\2c\20double*\29 +6928:SkDPoint::roughlyEqual\28SkDPoint\20const&\29\20const +6929:SkDPoint::approximatelyDEqual\28SkDPoint\20const&\29\20const +6930:SkDCurveSweep::setCurveHullSweep\28SkPath::Verb\29 +6931:SkDCubic::monotonicInY\28\29\20const +6932:SkDCubic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +6933:SkDCubic::hullIntersects\28SkDPoint\20const*\2c\20int\2c\20bool*\29\20const +6934:SkDCubic::Coefficients\28double\20const*\2c\20double*\2c\20double*\2c\20double*\2c\20double*\29 +6935:SkDConic::subDivide\28double\2c\20double\29\20const +6936:SkCubics::RootsReal\28double\2c\20double\2c\20double\2c\20double\2c\20double*\29 +6937:SkCubicEdge::setCubicWithoutUpdate\28SkPoint\20const*\2c\20int\2c\20bool\29 +6938:SkCubicClipper::ChopMonoAtY\28SkPoint\20const*\2c\20float\2c\20float*\29 +6939:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkRasterPipeline\20const&\2c\20bool\2c\20SkArenaAlloc*\2c\20sk_sp\29 +6940:SkCreateRasterPipelineBlitter\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkMatrix\20const&\2c\20SkArenaAlloc*\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +6941:SkContourMeasure_segTo\28SkPoint\20const*\2c\20unsigned\20int\2c\20float\2c\20float\2c\20SkPath*\29 +6942:SkContourMeasureIter::SkContourMeasureIter\28SkPath\20const&\2c\20bool\2c\20float\29 +6943:SkContourMeasureIter::Impl::compute_line_seg\28SkPoint\2c\20SkPoint\2c\20float\2c\20unsigned\20int\29 +6944:SkContourMeasure::~SkContourMeasure\28\29 +6945:SkContourMeasure::getSegment\28float\2c\20float\2c\20SkPath*\2c\20bool\29\20const +6946:SkConicalGradient::getCenterX1\28\29\20const +6947:SkConic::evalTangentAt\28float\29\20const +6948:SkConic::chop\28SkConic*\29\20const +6949:SkConic::chopIntoQuadsPOW2\28SkPoint*\2c\20int\29\20const +6950:SkConic::BuildUnitArc\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkRotationDirection\2c\20SkMatrix\20const*\2c\20SkConic*\29 +6951:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29 +6952:SkColorSpaceSingletonFactory::Make\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +6953:SkColorSpaceLuminance::Fetch\28float\29 +6954:SkColorSpace::makeLinearGamma\28\29\20const +6955:SkColorSpace::computeLazyDstFields\28\29\20const +6956:SkColorSpace::SkColorSpace\28skcms_TransferFunction\20const&\2c\20skcms_Matrix3x3\20const&\29 +6957:SkColorFilters::Compose\28sk_sp\20const&\2c\20sk_sp\29 +6958:SkColorFilters::Blend\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20sk_sp\2c\20SkBlendMode\29 +6959:SkColorFilterShader::~SkColorFilterShader\28\29 +6960:SkColorFilterShader::flatten\28SkWriteBuffer&\29\20const +6961:SkColor4fXformer::~SkColor4fXformer\28\29 +6962:SkColor4fXformer::SkColor4fXformer\28SkGradientBaseShader\20const*\2c\20SkColorSpace*\2c\20bool\29 +6963:SkColor4Shader::~SkColor4Shader\28\29 +6964:SkCoincidentSpans::contains\28SkOpPtT\20const*\2c\20SkOpPtT\20const*\29\20const +6965:SkChopQuadAtMaxCurvature\28SkPoint\20const*\2c\20SkPoint*\29 +6966:SkChopQuadAtHalf\28SkPoint\20const*\2c\20SkPoint*\29 +6967:SkChopCubicAt\28SkPoint\20const*\2c\20SkPoint*\2c\20float\2c\20float\29 +6968:SkChopCubicAtInflections\28SkPoint\20const*\2c\20SkPoint*\29 +6969:SkCharToGlyphCache::reset\28\29 +6970:SkCharToGlyphCache::findGlyphIndex\28int\29\20const +6971:SkCanvasVirtualEnforcer::SkCanvasVirtualEnforcer\28SkIRect\20const&\29 +6972:SkCanvasPriv::WriteLattice\28void*\2c\20SkCanvas::Lattice\20const&\29 +6973:SkCanvasPriv::GetDstClipAndMatrixCounts\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20int*\2c\20int*\29 +6974:SkCanvas::setMatrix\28SkM44\20const&\29 +6975:SkCanvas::internalSaveLayer\28SkCanvas::SaveLayerRec\20const&\2c\20SkCanvas::SaveLayerStrategy\2c\20bool\29 +6976:SkCanvas::internalDrawPaint\28SkPaint\20const&\29 +6977:SkCanvas::getDeviceClipBounds\28\29\20const +6978:SkCanvas::experimental_DrawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +6979:SkCanvas::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +6980:SkCanvas::drawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +6981:SkCanvas::drawPicture\28sk_sp\20const&\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +6982:SkCanvas::drawPicture\28SkPicture\20const*\29 +6983:SkCanvas::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +6984:SkCanvas::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +6985:SkCanvas::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +6986:SkCanvas::drawColor\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +6987: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 +6988:SkCanvas::drawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +6989:SkCanvas::didTranslate\28float\2c\20float\29 +6990:SkCanvas::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +6991:SkCanvas::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +6992:SkCanvas::SkCanvas\28sk_sp\29 +6993:SkCanvas::SkCanvas\28SkBitmap\20const&\2c\20SkSurfaceProps\20const&\29 +6994:SkCanvas::SkCanvas\28SkBitmap\20const&\29 +6995:SkCachedData::setData\28void*\29 +6996:SkCachedData::internalUnref\28bool\29\20const +6997:SkCachedData::internalRef\28bool\29\20const +6998:SkCachedData::SkCachedData\28void*\2c\20unsigned\20long\29 +6999:SkCachedData::SkCachedData\28unsigned\20long\2c\20SkDiscardableMemory*\29 +7000:SkCTMShader::isOpaque\28\29\20const +7001:SkBulkGlyphMetricsAndPaths::glyphs\28SkSpan\29 +7002:SkBreakIterator_client::~SkBreakIterator_client\28\29 +7003:SkBlurMaskFilterImpl::filterRectMask\28SkMaskBuilder*\2c\20SkRect\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\2c\20SkMaskBuilder::CreateMode\29\20const +7004:SkBlurMask::ComputeBlurredScanline\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20unsigned\20int\2c\20float\29 +7005:SkBlockAllocator::addBlock\28int\2c\20int\29 +7006:SkBlockAllocator::BlockIter::Item::advance\28SkBlockAllocator::Block*\29 +7007:SkBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +7008:SkBlitter::blitRectRegion\28SkIRect\20const&\2c\20SkRegion\20const&\29 +7009:SkBlitter::Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +7010:SkBlitter::ChooseSprite\28SkPixmap\20const&\2c\20SkPaint\20const&\2c\20SkPixmap\20const&\2c\20int\2c\20int\2c\20SkArenaAlloc*\2c\20sk_sp\29 +7011:SkBlenderBase::affectsTransparentBlack\28\29\20const +7012:SkBlendShader::~SkBlendShader\28\29.1 +7013:SkBitmapDevice::~SkBitmapDevice\28\29 +7014:SkBitmapDevice::Create\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\2c\20SkRasterHandleAllocator*\29 +7015:SkBitmapCache::Rec::~Rec\28\29 +7016:SkBitmapCache::Rec::install\28SkBitmap*\29 +7017:SkBitmapCache::Rec::diagnostic_only_getDiscardable\28\29\20const +7018:SkBitmapCache::Find\28SkBitmapCacheDesc\20const&\2c\20SkBitmap*\29 +7019:SkBitmapCache::Alloc\28SkBitmapCacheDesc\20const&\2c\20SkImageInfo\20const&\2c\20SkPixmap*\29 +7020:SkBitmap::tryAllocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29 +7021:SkBitmap::readPixels\28SkPixmap\20const&\29\20const +7022:SkBitmap::makeShader\28SkTileMode\2c\20SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\29\20const +7023:SkBitmap::getAddr\28int\2c\20int\29\20const +7024:SkBitmap::allocPixels\28SkImageInfo\20const&\2c\20unsigned\20long\29 +7025:SkBitmap::allocPixels\28SkImageInfo\20const&\29 +7026:SkBinaryWriteBuffer::writeFlattenable\28SkFlattenable\20const*\29 +7027:SkBinaryWriteBuffer::writeColor4f\28SkRGBA4f<\28SkAlphaType\293>\20const&\29 +7028:SkBigPicture::~SkBigPicture\28\29 +7029:SkBigPicture::SnapshotArray::~SnapshotArray\28\29 +7030:SkBigPicture::SkBigPicture\28SkRect\20const&\2c\20sk_sp\2c\20std::__2::unique_ptr>\2c\20sk_sp\2c\20unsigned\20long\29 +7031:SkBidiFactory::MakeIterator\28unsigned\20short\20const*\2c\20int\2c\20SkBidiIterator::Direction\29\20const +7032:SkBezierCubic::Subdivide\28double\20const*\2c\20double\2c\20double*\29 +7033:SkBasicEdgeBuilder::~SkBasicEdgeBuilder\28\29 +7034:SkBasicEdgeBuilder::combineVertical\28SkEdge\20const*\2c\20SkEdge*\29 +7035:SkBaseShadowTessellator::releaseVertices\28\29 +7036:SkBaseShadowTessellator::handleQuad\28SkPoint\20const*\29 +7037:SkBaseShadowTessellator::handleQuad\28SkMatrix\20const&\2c\20SkPoint*\29 +7038:SkBaseShadowTessellator::handleLine\28SkMatrix\20const&\2c\20SkPoint*\29 +7039:SkBaseShadowTessellator::handleCubic\28SkMatrix\20const&\2c\20SkPoint*\29 +7040:SkBaseShadowTessellator::handleConic\28SkMatrix\20const&\2c\20SkPoint*\2c\20float\29 +7041:SkBaseShadowTessellator::finishPathPolygon\28\29 +7042:SkBaseShadowTessellator::computeConvexShadow\28float\2c\20float\2c\20bool\29 +7043:SkBaseShadowTessellator::computeConcaveShadow\28float\2c\20float\29 +7044:SkBaseShadowTessellator::clipUmbraPoint\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint*\29 +7045:SkBaseShadowTessellator::checkConvexity\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\29 +7046:SkBaseShadowTessellator::appendQuad\28unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +7047:SkBaseShadowTessellator::addInnerPoint\28SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20int*\29 +7048:SkBaseShadowTessellator::addEdge\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20int\2c\20SkTDArray\20const&\2c\20bool\2c\20bool\29 +7049:SkBaseShadowTessellator::addArc\28SkPoint\20const&\2c\20float\2c\20bool\29 +7050:SkBaseShadowTessellator::accumulateCentroid\28SkPoint\20const&\2c\20SkPoint\20const&\29 +7051:SkAutoSMalloc<1024ul>::reset\28unsigned\20long\2c\20SkAutoMalloc::OnShrink\2c\20bool*\29 +7052:SkAutoPixmapStorage::reset\28SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\29 +7053:SkAutoMalloc::SkAutoMalloc\28unsigned\20long\29 +7054:SkAutoDescriptor::reset\28unsigned\20long\29 +7055:SkAutoDescriptor::reset\28SkDescriptor\20const&\29 +7056:SkAutoCanvasMatrixPaint::~SkAutoCanvasMatrixPaint\28\29 +7057:SkAutoCanvasMatrixPaint::SkAutoCanvasMatrixPaint\28SkCanvas*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\2c\20SkRect\20const&\29 +7058:SkAutoBlitterChoose::choose\28SkDrawBase\20const&\2c\20SkMatrix\20const*\2c\20SkPaint\20const&\2c\20bool\29 +7059:SkArenaAlloc::ensureSpace\28unsigned\20int\2c\20unsigned\20int\29 +7060:SkAnySubclass::reset\28\29 +7061:SkAnalyticEdgeBuilder::combineVertical\28SkAnalyticEdge\20const*\2c\20SkAnalyticEdge*\29 +7062:SkAnalyticEdge::update\28int\2c\20bool\29 +7063:SkAnalyticEdge::updateLine\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +7064:SkAnalyticEdge::setLine\28SkPoint\20const&\2c\20SkPoint\20const&\29 +7065:SkAlphaRuns::BreakAt\28short*\2c\20unsigned\20char*\2c\20int\29 +7066:SkAAClip::operator=\28SkAAClip\20const&\29 +7067:SkAAClip::op\28SkIRect\20const&\2c\20SkClipOp\29 +7068:SkAAClip::isRect\28\29\20const +7069:SkAAClip::RunHead::Iterate\28SkAAClip\20const&\29 +7070:SkAAClip::Builder::~Builder\28\29 +7071:SkAAClip::Builder::flushRow\28bool\29 +7072:SkAAClip::Builder::finish\28SkAAClip*\29 +7073:SkAAClip::Builder::Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +7074:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29 +7075:SkA8_Coverage_Blitter*\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkPaint\20const&\29 +7076:SkA8_Blitter::~SkA8_Blitter\28\29 +7077:Simplify\28SkPath\20const&\2c\20SkPath*\29 +7078:SharedGenerator::Make\28std::__2::unique_ptr>\29 +7079:SetSuperRound +7080:RuntimeEffectRPCallbacks::applyColorSpaceXform\28SkColorSpaceXformSteps\20const&\2c\20void\20const*\29 +7081:RunBasedAdditiveBlitter::~RunBasedAdditiveBlitter\28\29.1 +7082:RunBasedAdditiveBlitter::advanceRuns\28\29 +7083:RunBasedAdditiveBlitter::RunBasedAdditiveBlitter\28SkBlitter*\2c\20SkIRect\20const&\2c\20SkIRect\20const&\2c\20bool\29 +7084:RgnOper::addSpan\28int\2c\20int\20const*\2c\20int\20const*\29 +7085:ReflexHash::hash\28TriangulationVertex*\29\20const +7086:PorterDuffXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +7087:PathSegment::init\28\29 +7088:PS_Conv_Strtol +7089:PS_Conv_ASCIIHexDecode +7090:PDLCDXferProcessor::Make\28SkBlendMode\2c\20GrProcessorAnalysisColor\20const&\29 +7091:OpAsWinding::markReverse\28Contour*\2c\20Contour*\29 +7092:OpAsWinding::getDirection\28Contour&\29 +7093:OpAsWinding::checkContainerChildren\28Contour*\2c\20Contour*\29 +7094:OffsetEdge::computeCrossingDistance\28OffsetEdge\20const*\29 +7095:OT::sbix::sanitize\28hb_sanitize_context_t*\29\20const +7096:OT::sbix::accelerator_t::reference_png\28hb_font_t*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20unsigned\20int*\29\20const +7097:OT::sbix::accelerator_t::has_data\28\29\20const +7098:OT::sbix::accelerator_t::get_png_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +7099:OT::post::sanitize\28hb_sanitize_context_t*\29\20const +7100:OT::maxp::sanitize\28hb_sanitize_context_t*\29\20const +7101:OT::kern::sanitize\28hb_sanitize_context_t*\29\20const +7102:OT::hmtxvmtx::accelerator_t::get_advance_with_var_unscaled\28unsigned\20int\2c\20hb_font_t*\2c\20float*\29\20const +7103:OT::head::sanitize\28hb_sanitize_context_t*\29\20const +7104:OT::hb_ot_layout_lookup_accelerator_t*\20OT::hb_ot_layout_lookup_accelerator_t::create\28OT::Layout::GSUB_impl::SubstLookup\20const&\29 +7105:OT::hb_ot_apply_context_t::skipping_iterator_t::may_skip\28hb_glyph_info_t\20const&\29\20const +7106:OT::hb_ot_apply_context_t::skipping_iterator_t::init\28OT::hb_ot_apply_context_t*\2c\20bool\29 +7107: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 +7108:OT::hb_kern_machine_t::kern\28hb_font_t*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20bool\29\20const +7109:OT::hb_accelerate_subtables_context_t::return_t\20OT::Context::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +7110:OT::hb_accelerate_subtables_context_t::return_t\20OT::ChainContext::dispatch\28OT::hb_accelerate_subtables_context_t*\29\20const +7111:OT::gvar::sanitize_shallow\28hb_sanitize_context_t*\29\20const +7112:OT::gvar::get_offset\28unsigned\20int\2c\20unsigned\20int\29\20const +7113: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 +7114:OT::glyf_impl::composite_iter_tmpl::set_current\28OT::glyf_impl::CompositeGlyphRecord\20const*\29 +7115:OT::glyf_impl::composite_iter_tmpl::__next__\28\29 +7116: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 +7117:OT::glyf_impl::Glyph::get_composite_iterator\28\29\20const +7118:OT::glyf_impl::CompositeGlyphRecord::transform\28float\20const\20\28&\29\20\5b4\5d\2c\20hb_array_t\29 +7119:OT::glyf_impl::CompositeGlyphRecord::get_transformation\28float\20\28&\29\20\5b4\5d\2c\20contour_point_t&\29\20const +7120:OT::glyf_accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\29\20const +7121:OT::fvar::sanitize\28hb_sanitize_context_t*\29\20const +7122:OT::cmap::sanitize\28hb_sanitize_context_t*\29\20const +7123: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 +7124:OT::cmap::accelerator_t::_cached_get\28unsigned\20int\2c\20unsigned\20int*\2c\20hb_cache_t<21u\2c\2016u\2c\208u\2c\20true>*\29\20const +7125:OT::cff2::sanitize\28hb_sanitize_context_t*\29\20const +7126:OT::cff2::accelerator_templ_t>::_fini\28\29 +7127:OT::cff1::sanitize\28hb_sanitize_context_t*\29\20const +7128:OT::cff1::accelerator_templ_t>::glyph_to_sid\28unsigned\20int\2c\20CFF::code_pair_t*\29\20const +7129:OT::cff1::accelerator_templ_t>::_fini\28\29 +7130:OT::cff1::accelerator_t::gname_t::cmp\28void\20const*\2c\20void\20const*\29 +7131:OT::avar::sanitize\28hb_sanitize_context_t*\29\20const +7132:OT::VariationDevice::get_delta\28hb_font_t*\2c\20OT::VariationStore\20const&\2c\20float*\29\20const +7133:OT::VarData::get_row_size\28\29\20const +7134:OT::VVAR::sanitize\28hb_sanitize_context_t*\29\20const +7135:OT::VORG::sanitize\28hb_sanitize_context_t*\29\20const +7136: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 +7137:OT::TupleVariationHeader::get_size\28unsigned\20int\29\20const +7138:OT::TupleVariationData::unpack_points\28OT::IntType\20const*&\2c\20hb_vector_t&\2c\20OT::IntType\20const*\29 +7139:OT::TupleVariationData::unpack_deltas\28OT::IntType\20const*&\2c\20hb_vector_t&\2c\20OT::IntType\20const*\29 +7140:OT::TupleVariationData::tuple_iterator_t::is_valid\28\29\20const +7141:OT::SortedArrayOf\2c\20OT::IntType>::serialize\28hb_serialize_context_t*\2c\20unsigned\20int\29 +7142:OT::SVG::sanitize\28hb_sanitize_context_t*\29\20const +7143:OT::RuleSet::would_apply\28OT::hb_would_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +7144:OT::RuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ContextApplyLookupContext\20const&\29\20const +7145:OT::ResourceMap::get_type_record\28unsigned\20int\29\20const +7146:OT::ResourceMap::get_type_count\28\29\20const +7147:OT::RecordArrayOf::find_index\28unsigned\20int\2c\20unsigned\20int*\29\20const +7148:OT::PaintTranslate::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7149:OT::PaintSolid::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7150:OT::PaintSkewAroundCenter::sanitize\28hb_sanitize_context_t*\29\20const +7151:OT::PaintSkewAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7152:OT::PaintSkew::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7153:OT::PaintScaleUniformAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7154:OT::PaintScaleUniform::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7155:OT::PaintScaleAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7156:OT::PaintScale::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7157:OT::PaintRotateAroundCenter::sanitize\28hb_sanitize_context_t*\29\20const +7158:OT::PaintRotateAroundCenter::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7159:OT::PaintRotate::sanitize\28hb_sanitize_context_t*\29\20const +7160:OT::PaintRotate::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7161:OT::OpenTypeFontFile::sanitize\28hb_sanitize_context_t*\29\20const +7162:OT::OffsetTo\2c\20true>::neuter\28hb_sanitize_context_t*\29\20const +7163:OT::OS2::sanitize\28hb_sanitize_context_t*\29\20const +7164:OT::MVAR::sanitize\28hb_sanitize_context_t*\29\20const +7165:OT::Lookup::serialize\28hb_serialize_context_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +7166:OT::Lookup*\20hb_serialize_context_t::extend_size\28OT::Lookup*\2c\20unsigned\20long\2c\20bool\29 +7167:OT::Layout::propagate_attachment_offsets\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +7168:OT::Layout::GPOS_impl::reverse_cursive_minor_offset\28hb_glyph_position_t*\2c\20unsigned\20int\2c\20hb_direction_t\2c\20unsigned\20int\29 +7169:OT::Layout::GPOS_impl::ValueFormat::sanitize_value_devices\28hb_sanitize_context_t*\2c\20void\20const*\2c\20OT::IntType\20const*\29\20const +7170:OT::Layout::Common::RangeRecord\20const&\20OT::SortedArrayOf\2c\20OT::IntType>::bsearch\28unsigned\20int\20const&\2c\20OT::Layout::Common::RangeRecord\20const&\29\20const +7171:OT::Layout::Common::CoverageFormat2_4*\20hb_serialize_context_t::extend_min>\28OT::Layout::Common::CoverageFormat2_4*\29 +7172:OT::Layout::Common::Coverage::sanitize\28hb_sanitize_context_t*\29\20const +7173:OT::Layout::Common::Coverage::get_population\28\29\20const +7174:OT::LangSys::sanitize\28hb_sanitize_context_t*\2c\20OT::Record_sanitize_closure_t\20const*\29\20const +7175:OT::IndexSubtableRecord::get_image_data\28unsigned\20int\2c\20void\20const*\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +7176:OT::IndexArray::get_indexes\28unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +7177:OT::HintingDevice::get_delta\28unsigned\20int\2c\20int\29\20const +7178:OT::HVARVVAR::get_advance_delta_unscaled\28unsigned\20int\2c\20int\20const*\2c\20unsigned\20int\2c\20float*\29\20const +7179:OT::GSUBGPOS::get_script_list\28\29\20const +7180:OT::GSUBGPOS::get_feature_variations\28\29\20const +7181:OT::GSUBGPOS::accelerator_t::get_accel\28unsigned\20int\29\20const +7182:OT::GDEF::sanitize\28hb_sanitize_context_t*\29\20const +7183:OT::GDEF::get_mark_glyph_sets\28\29\20const +7184:OT::GDEF::accelerator_t::get_glyph_props\28unsigned\20int\29\20const +7185:OT::Feature::sanitize\28hb_sanitize_context_t*\2c\20OT::Record_sanitize_closure_t\20const*\29\20const +7186:OT::ContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +7187:OT::ColorStop::get_color_stop\28OT::hb_paint_context_t*\2c\20hb_color_stop_t*\2c\20unsigned\20int\2c\20OT::VarStoreInstancer\20const&\29\20const +7188:OT::ColorLine::static_get_extend\28hb_color_line_t*\2c\20void*\2c\20void*\29 +7189:OT::CmapSubtableLongSegmented::get_glyph\28unsigned\20int\2c\20unsigned\20int*\29\20const +7190:OT::CmapSubtableLongGroup\20const&\20OT::SortedArrayOf>::bsearch\28unsigned\20int\20const&\2c\20OT::CmapSubtableLongGroup\20const&\29\20const +7191:OT::CmapSubtableFormat4::accelerator_t::init\28OT::CmapSubtableFormat4\20const*\29 +7192:OT::CmapSubtableFormat4::accelerator_t::get_glyph\28unsigned\20int\2c\20unsigned\20int*\29\20const +7193:OT::ClipBoxFormat1::get_clip_box\28OT::ClipBoxData&\2c\20OT::VarStoreInstancer\20const&\29\20const +7194:OT::ClassDef::cost\28\29\20const +7195:OT::ChainRuleSet::would_apply\28OT::hb_would_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +7196:OT::ChainRuleSet::apply\28OT::hb_ot_apply_context_t*\2c\20OT::ChainContextApplyLookupContext\20const&\29\20const +7197:OT::ChainContextFormat2_5::_apply\28OT::hb_ot_apply_context_t*\2c\20bool\29\20const +7198:OT::CPAL::sanitize\28hb_sanitize_context_t*\29\20const +7199:OT::COLR::sanitize\28hb_sanitize_context_t*\29\20const +7200:OT::COLR::get_base_glyph_paint\28unsigned\20int\29\20const +7201:OT::CBLC::sanitize\28hb_sanitize_context_t*\29\20const +7202:OT::CBLC::choose_strike\28hb_font_t*\29\20const +7203:OT::CBDT::sanitize\28hb_sanitize_context_t*\29\20const +7204:OT::CBDT::accelerator_t::get_extents\28hb_font_t*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20bool\29\20const +7205:OT::BitmapSizeTable::find_table\28unsigned\20int\2c\20void\20const*\2c\20void\20const**\29\20const +7206:OT::ArrayOf>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +7207:OT::ArrayOf\2c\20OT::IntType>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +7208:OT::ArrayOf>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +7209:OT::ArrayOf>>::sanitize_shallow\28hb_sanitize_context_t*\29\20const +7210:OT::Affine2x3::paint_glyph\28OT::hb_paint_context_t*\2c\20unsigned\20int\29\20const +7211:MaskValue*\20SkTLazy::init\28MaskValue\20const&\29 +7212:MakeRasterCopyPriv\28SkPixmap\20const&\2c\20unsigned\20int\29 +7213:Load_SBit_Png +7214:LineQuadraticIntersections::verticalIntersect\28double\2c\20double*\29 +7215:LineQuadraticIntersections::intersectRay\28double*\29 +7216:LineQuadraticIntersections::horizontalIntersect\28double\2c\20double*\29 +7217:LineCubicIntersections::intersectRay\28double*\29 +7218:LineCubicIntersections::VerticalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +7219:LineCubicIntersections::HorizontalIntersect\28SkDCubic\20const&\2c\20double\2c\20double*\29 +7220:LineConicIntersections::verticalIntersect\28double\2c\20double*\29 +7221:LineConicIntersections::intersectRay\28double*\29 +7222:LineConicIntersections::horizontalIntersect\28double\2c\20double*\29 +7223:Ins_UNKNOWN +7224:Ins_SxVTL +7225:HandleCoincidence\28SkOpContourHead*\2c\20SkOpCoincidence*\29 +7226:GrWritePixelsTask::~GrWritePixelsTask\28\29 +7227:GrWindowRectsState::operator=\28GrWindowRectsState\20const&\29 +7228:GrWindowRectsState::operator==\28GrWindowRectsState\20const&\29\20const +7229:GrWindowRectangles::GrWindowRectangles\28GrWindowRectangles\20const&\29 +7230:GrWaitRenderTask::~GrWaitRenderTask\28\29 +7231:GrVertexBufferAllocPool::makeSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +7232:GrVertexBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +7233:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20SkPathFillType\2c\20skgpu::VertexWriter\29\20const +7234:GrTriangulator::polysToTriangles\28GrTriangulator::Poly*\2c\20GrEagerVertexAllocator*\29\20const +7235:GrTriangulator::mergeEdgesBelow\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +7236:GrTriangulator::mergeEdgesAbove\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::EdgeList*\2c\20GrTriangulator::Vertex**\2c\20GrTriangulator::Comparator\20const&\29\20const +7237:GrTriangulator::makeSortedVertex\28SkPoint\20const&\2c\20unsigned\20char\2c\20GrTriangulator::VertexList*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::Comparator\20const&\29\20const +7238:GrTriangulator::makeEdge\28GrTriangulator::Vertex*\2c\20GrTriangulator::Vertex*\2c\20GrTriangulator::EdgeType\2c\20GrTriangulator::Comparator\20const&\29 +7239:GrTriangulator::computeBisector\28GrTriangulator::Edge*\2c\20GrTriangulator::Edge*\2c\20GrTriangulator::Vertex*\29\20const +7240:GrTriangulator::appendQuadraticToContour\28SkPoint\20const*\2c\20float\2c\20GrTriangulator::VertexList*\29\20const +7241:GrTriangulator::allocateMonotonePoly\28GrTriangulator::Edge*\2c\20GrTriangulator::Side\2c\20int\29 +7242:GrTriangulator::Edge::recompute\28\29 +7243:GrTriangulator::Edge::intersect\28GrTriangulator::Edge\20const&\2c\20SkPoint*\2c\20unsigned\20char*\29\20const +7244:GrTriangulator::CountPoints\28GrTriangulator::Poly*\2c\20SkPathFillType\29 +7245:GrTriangulator::BreadcrumbTriangleList::concat\28GrTriangulator::BreadcrumbTriangleList&&\29 +7246:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29 +7247:GrThreadSafeCache::makeNewEntryMRU\28GrThreadSafeCache::Entry*\29 +7248:GrThreadSafeCache::makeExistingEntryMRU\28GrThreadSafeCache::Entry*\29 +7249:GrThreadSafeCache::findVertsWithData\28skgpu::UniqueKey\20const&\29 +7250:GrThreadSafeCache::addVertsWithData\28skgpu::UniqueKey\20const&\2c\20sk_sp\2c\20bool\20\28*\29\28SkData*\2c\20SkData*\29\29 +7251:GrThreadSafeCache::Trampoline::~Trampoline\28\29 +7252:GrThreadSafeCache::Entry::set\28skgpu::UniqueKey\20const&\2c\20sk_sp\29 +7253:GrThreadSafeCache::Entry::makeEmpty\28\29 +7254:GrThreadSafeCache::CreateLazyView\28GrDirectContext*\2c\20GrColorType\2c\20SkISize\2c\20GrSurfaceOrigin\2c\20SkBackingFit\29 +7255:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29 +7256:GrTextureRenderTargetProxy::initSurfaceFlags\28GrCaps\20const&\29 +7257:GrTextureRenderTargetProxy::GrTextureRenderTargetProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29 +7258: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 +7259:GrTextureProxy::~GrTextureProxy\28\29.2 +7260:GrTextureProxy::~GrTextureProxy\28\29.1 +7261:GrTextureProxy::setUniqueKey\28GrProxyProvider*\2c\20skgpu::UniqueKey\20const&\29 +7262:GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +7263:GrTextureProxy::instantiate\28GrResourceProvider*\29 +7264:GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +7265:GrTextureProxy::callbackDesc\28\29\20const +7266:GrTextureProxy::ProxiesAreCompatibleAsDynamicState\28GrSurfaceProxy\20const*\2c\20GrSurfaceProxy\20const*\29 +7267:GrTextureProxy::GrTextureProxy\28sk_sp\2c\20GrSurfaceProxy::UseAllocator\2c\20GrDDLProvider\29 +7268:GrTextureEffect::~GrTextureEffect\28\29 +7269: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 +7270:GrTextureEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29::$_0::operator\28\29\28float*\2c\20GrResourceHandle\29\20const +7271: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 +7272:GrTexture::onGpuMemorySize\28\29\20const +7273:GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +7274:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29 +7275:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29 +7276:GrSurfaceProxyView::operator=\28GrSurfaceProxyView\20const&\29 +7277:GrSurfaceProxyView::operator==\28GrSurfaceProxyView\20const&\29\20const +7278:GrSurfaceProxyPriv::exactify\28\29 +7279:GrSurfaceProxyPriv::assign\28sk_sp\29 +7280: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 +7281: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 +7282:GrSurface::onRelease\28\29 +7283:GrStyledShape::setInheritedKey\28GrStyledShape\20const&\2c\20GrStyle::Apply\2c\20float\29 +7284:GrStyledShape::asRRect\28SkRRect*\2c\20bool*\29\20const +7285:GrStyledShape::asLine\28SkPoint*\2c\20bool*\29\20const +7286:GrStyledShape::GrStyledShape\28SkRRect\20const&\2c\20SkPathDirection\2c\20unsigned\20int\2c\20bool\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +7287:GrStyledShape::GrStyledShape\28SkRRect\20const&\2c\20GrStyle\20const&\2c\20GrStyledShape::DoSimplify\29 +7288:GrStyledShape::GrStyledShape\28SkPath\20const&\2c\20SkPaint\20const&\2c\20GrStyledShape::DoSimplify\29 +7289:GrStyle::resetToInitStyle\28SkStrokeRec::InitStyle\29 +7290:GrStyle::applyToPath\28SkPath*\2c\20SkStrokeRec::InitStyle*\2c\20SkPath\20const&\2c\20float\29\20const +7291:GrStyle::applyPathEffect\28SkPath*\2c\20SkStrokeRec*\2c\20SkPath\20const&\29\20const +7292:GrStyle::MatrixToScaleFactor\28SkMatrix\20const&\29 +7293:GrStyle::DashInfo::operator=\28GrStyle::DashInfo\20const&\29 +7294:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29 +7295:GrStrokeTessellationShader::Impl::~Impl\28\29 +7296:GrStagingBufferManager::detachBuffers\28\29 +7297:GrSkSLFP::~GrSkSLFP\28\29 +7298:GrSkSLFP::Impl::~Impl\28\29 +7299:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineStruct\28char\20const*\29 +7300:GrSimpleMesh::~GrSimpleMesh\28\29 +7301:GrShape::simplify\28unsigned\20int\29 +7302:GrShape::setArc\28SkArc\20const&\29 +7303:GrShape::conservativeContains\28SkRect\20const&\29\20const +7304:GrShape::closed\28\29\20const +7305:GrShape::GrShape\28SkRect\20const&\29 +7306:GrShape::GrShape\28SkRRect\20const&\29 +7307:GrShape::GrShape\28SkPath\20const&\29 +7308:GrShaderVar::GrShaderVar\28SkString\2c\20SkSLType\2c\20GrShaderVar::TypeModifier\2c\20int\2c\20SkString\2c\20SkString\29 +7309:GrScissorState::operator==\28GrScissorState\20const&\29\20const +7310:GrScissorState::intersect\28SkIRect\20const&\29 +7311:GrSWMaskHelper::toTextureView\28GrRecordingContext*\2c\20SkBackingFit\29 +7312:GrSWMaskHelper::drawShape\28GrStyledShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +7313:GrSWMaskHelper::drawShape\28GrShape\20const&\2c\20SkMatrix\20const&\2c\20GrAA\2c\20unsigned\20char\29 +7314:GrResourceProvider::writePixels\28sk_sp\2c\20GrColorType\2c\20SkISize\2c\20GrMipLevel\20const*\2c\20int\29\20const +7315:GrResourceProvider::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +7316: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 +7317: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 +7318:GrResourceProvider::findAndRefScratchTexture\28skgpu::ScratchKey\20const&\2c\20std::__2::basic_string_view>\29 +7319: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 +7320: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 +7321: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 +7322:GrResourceProvider::createBuffer\28void\20const*\2c\20unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +7323:GrResourceProvider::createApproxTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20GrTextureType\2c\20skgpu::Renderable\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +7324:GrResourceCache::removeResource\28GrGpuResource*\29 +7325:GrResourceCache::removeFromNonpurgeableArray\28GrGpuResource*\29 +7326:GrResourceCache::releaseAll\28\29 +7327:GrResourceCache::refAndMakeResourceMRU\28GrGpuResource*\29 +7328:GrResourceCache::processFreedGpuResources\28\29 +7329:GrResourceCache::insertResource\28GrGpuResource*\29 +7330:GrResourceCache::findAndRefUniqueResource\28skgpu::UniqueKey\20const&\29 +7331:GrResourceCache::didChangeBudgetStatus\28GrGpuResource*\29 +7332:GrResourceCache::addToNonpurgeableArray\28GrGpuResource*\29 +7333:GrResourceAllocator::~GrResourceAllocator\28\29 +7334:GrResourceAllocator::planAssignment\28\29 +7335:GrResourceAllocator::expire\28unsigned\20int\29 +7336:GrResourceAllocator::Register*\20SkArenaAlloc::make\28GrSurfaceProxy*&\2c\20skgpu::ScratchKey&&\2c\20GrResourceProvider*&\29 +7337:GrResourceAllocator::IntervalList::popHead\28\29 +7338:GrResourceAllocator::IntervalList::insertByIncreasingStart\28GrResourceAllocator::Interval*\29 +7339:GrRenderTask::makeSkippable\28\29 +7340:GrRenderTask::isUsed\28GrSurfaceProxy*\29\20const +7341:GrRenderTask::isInstantiated\28\29\20const +7342:GrRenderTargetProxy::~GrRenderTargetProxy\28\29.2 +7343:GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +7344:GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +7345:GrRenderTargetProxy::isMSAADirty\28\29\20const +7346:GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +7347:GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +7348:GrRenderTargetProxy::callbackDesc\28\29\20const +7349:GrRenderTarget::GrRenderTarget\28GrGpu*\2c\20SkISize\20const&\2c\20int\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\2c\20sk_sp\29 +7350:GrRecordingContext::init\28\29 +7351:GrRecordingContext::destroyDrawingManager\28\29 +7352:GrRecordingContext::colorTypeSupportedAsSurface\28SkColorType\29\20const +7353:GrRecordingContext::abandoned\28\29 +7354:GrRecordingContext::abandonContext\28\29 +7355:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29 +7356:GrRRectEffect::Make\28std::__2::unique_ptr>\2c\20GrClipEdgeType\2c\20SkRRect\20const&\2c\20GrShaderCaps\20const&\29 +7357:GrQuadUtils::TessellationHelper::outset\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuad*\2c\20GrQuad*\29 +7358:GrQuadUtils::TessellationHelper::getOutsetRequest\28skvx::Vec<4\2c\20float>\20const&\29 +7359:GrQuadUtils::TessellationHelper::adjustVertices\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuadUtils::TessellationHelper::Vertices*\29 +7360:GrQuadUtils::TessellationHelper::adjustDegenerateVertices\28skvx::Vec<4\2c\20float>\20const&\2c\20GrQuadUtils::TessellationHelper::Vertices*\29 +7361: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 +7362:GrQuadUtils::ClipToW0\28DrawQuad*\2c\20DrawQuad*\29 +7363:GrQuadBuffer<\28anonymous\20namespace\29::TextureOpImpl::ColorSubsetAndAA>::append\28GrQuad\20const&\2c\20\28anonymous\20namespace\29::TextureOpImpl::ColorSubsetAndAA&&\2c\20GrQuad\20const*\29 +7364:GrQuadBuffer<\28anonymous\20namespace\29::TextureOpImpl::ColorSubsetAndAA>::GrQuadBuffer\28int\2c\20bool\29 +7365:GrQuad::point\28int\29\20const +7366:GrQuad::bounds\28\29\20const::'lambda0'\28float\20const*\29::operator\28\29\28float\20const*\29\20const +7367:GrQuad::bounds\28\29\20const::'lambda'\28float\20const*\29::operator\28\29\28float\20const*\29\20const +7368:GrProxyProvider::removeUniqueKeyFromProxy\28GrTextureProxy*\29 +7369:GrProxyProvider::processInvalidUniqueKeyImpl\28skgpu::UniqueKey\20const&\2c\20GrTextureProxy*\2c\20GrProxyProvider::InvalidateGPUResource\2c\20GrProxyProvider::RemoveTableEntry\29 +7370: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 +7371:GrProxyProvider::adoptUniqueKeyFromSurface\28GrTextureProxy*\2c\20GrSurface\20const*\29 +7372:GrProcessorSet::operator==\28GrProcessorSet\20const&\29\20const +7373:GrPorterDuffXPFactory::Get\28SkBlendMode\29 +7374:GrPixmap::GrPixmap\28SkPixmap\20const&\29 +7375:GrPipeline::peekDstTexture\28\29\20const +7376:GrPipeline::GrPipeline\28GrPipeline::InitArgs\20const&\2c\20sk_sp\2c\20GrAppliedHardClip\20const&\29 +7377:GrPersistentCacheUtils::ShaderMetadata::~ShaderMetadata\28\29 +7378:GrPersistentCacheUtils::GetType\28SkReadBuffer*\29 +7379:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29 +7380:GrPathUtils::QuadUVMatrix::set\28SkPoint\20const*\29 +7381:GrPathUtils::QuadUVMatrix::apply\28void*\2c\20int\2c\20unsigned\20long\2c\20unsigned\20long\29\20const +7382:GrPathTessellationShader::MakeStencilOnlyPipeline\28GrTessellationShader::ProgramArgs\20const&\2c\20GrAAType\2c\20GrAppliedHardClip\20const&\2c\20GrPipeline::InputFlags\29 +7383:GrPathTessellationShader::Impl::~Impl\28\29 +7384:GrOpsRenderPass::~GrOpsRenderPass\28\29 +7385:GrOpsRenderPass::resetActiveBuffers\28\29 +7386:GrOpsRenderPass::draw\28int\2c\20int\29 +7387:GrOpsRenderPass::drawIndexPattern\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +7388:GrOpFlushState::~GrOpFlushState\28\29.1 +7389:GrOpFlushState::smallPathAtlasManager\28\29\20const +7390:GrOpFlushState::reset\28\29 +7391:GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +7392:GrOpFlushState::putBackIndices\28int\29 +7393:GrOpFlushState::executeDrawsAndUploadsForMeshDrawOp\28GrOp\20const*\2c\20SkRect\20const&\2c\20GrPipeline\20const*\2c\20GrUserStencilSettings\20const*\29 +7394:GrOpFlushState::drawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +7395:GrOpFlushState::doUpload\28std::__2::function&\29>&\2c\20bool\29 +7396:GrOpFlushState::addASAPUpload\28std::__2::function&\29>&&\29 +7397:GrOpFlushState::OpArgs::OpArgs\28GrOp*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7398:GrOp::setTransformedBounds\28SkRect\20const&\2c\20SkMatrix\20const&\2c\20GrOp::HasAABloat\2c\20GrOp::IsHairline\29 +7399:GrOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7400:GrOp::combineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +7401:GrNonAtomicRef::unref\28\29\20const +7402:GrNonAtomicRef::unref\28\29\20const +7403:GrNonAtomicRef::unref\28\29\20const +7404:GrNativeRect::operator!=\28GrNativeRect\20const&\29\20const +7405:GrMeshDrawTarget::allocPrimProcProxyPtrs\28int\29 +7406:GrMeshDrawOp::PatternHelper::init\28GrMeshDrawTarget*\2c\20GrPrimitiveType\2c\20unsigned\20long\2c\20sk_sp\2c\20int\2c\20int\2c\20int\2c\20int\29 +7407:GrMemoryPool::allocate\28unsigned\20long\29 +7408:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29 +7409:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::changed\28\29 +7410:GrMakeCachedBitmapProxyView\28GrRecordingContext*\2c\20SkBitmap\20const&\2c\20std::__2::basic_string_view>\2c\20skgpu::Mipmapped\29::$_0::operator\28\29\28GrTextureProxy*\29\20const +7411:GrIndexBufferAllocPool::makeSpace\28int\2c\20sk_sp*\2c\20int*\29 +7412:GrIndexBufferAllocPool::makeSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +7413:GrImageInfo::operator=\28GrImageInfo&&\29 +7414:GrImageInfo::GrImageInfo\28GrColorType\2c\20SkAlphaType\2c\20sk_sp\2c\20int\2c\20int\29 +7415:GrImageContext::abandonContext\28\29 +7416:GrHashMapWithCache::find\28unsigned\20int\20const&\29\20const +7417:GrGradientBitmapCache::release\28GrGradientBitmapCache::Entry*\29\20const +7418:GrGradientBitmapCache::Entry::~Entry\28\29 +7419:GrGpuResource::setLabel\28std::__2::basic_string_view>\29 +7420:GrGpuResource::makeBudgeted\28\29 +7421:GrGpuResource::GrGpuResource\28GrGpu*\2c\20std::__2::basic_string_view>\29 +7422:GrGpuResource::CacheAccess::abandon\28\29 +7423:GrGpuBuffer::ComputeScratchKeyForDynamicBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20skgpu::ScratchKey*\29 +7424:GrGpu::~GrGpu\28\29 +7425:GrGpu::regenerateMipMapLevels\28GrTexture*\29 +7426:GrGpu::executeFlushInfo\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +7427: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 +7428: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 +7429:GrGpu::createBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +7430:GrGpu::callSubmittedProcs\28bool\29 +7431:GrGeometryProcessor::AttributeSet::addToKey\28skgpu::KeyBuilder*\29\20const +7432:GrGeometryProcessor::AttributeSet::Iter::skipUninitialized\28\29 +7433:GrGeometryProcessor::Attribute&\20skia_private::TArray::emplace_back\28char\20const\20\28&\29\20\5b26\5d\2c\20GrVertexAttribType&&\2c\20SkSLType&&\29 +7434:GrGLVertexArray::bind\28GrGLGpu*\29 +7435:GrGLTextureParameters::invalidate\28\29 +7436:GrGLTextureParameters::SamplerOverriddenState::SamplerOverriddenState\28\29 +7437:GrGLTexture::~GrGLTexture\28\29.2 +7438:GrGLTexture::~GrGLTexture\28\29.1 +7439:GrGLTexture::MakeWrapped\28GrGLGpu*\2c\20GrMipmapStatus\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrWrapCacheable\2c\20GrIOType\2c\20std::__2::basic_string_view>\29 +7440:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20skgpu::Budgeted\2c\20GrGLTexture::Desc\20const&\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +7441:GrGLTexture::GrGLTexture\28GrGLGpu*\2c\20GrGLTexture::Desc\20const&\2c\20sk_sp\2c\20GrMipmapStatus\2c\20std::__2::basic_string_view>\29 +7442:GrGLSemaphore::~GrGLSemaphore\28\29 +7443:GrGLSLVaryingHandler::addAttribute\28GrShaderVar\20const&\29 +7444:GrGLSLVarying::vsOutVar\28\29\20const +7445:GrGLSLVarying::fsInVar\28\29\20const +7446:GrGLSLUniformHandler::liftUniformToVertexShader\28GrProcessor\20const&\2c\20SkString\29 +7447:GrGLSLShaderBuilder::nextStage\28\29 +7448:GrGLSLShaderBuilder::finalize\28unsigned\20int\29 +7449:GrGLSLShaderBuilder::emitFunction\28char\20const*\2c\20char\20const*\29 +7450:GrGLSLShaderBuilder::emitFunctionPrototype\28char\20const*\29 +7451:GrGLSLShaderBuilder::appendTextureLookupAndBlend\28char\20const*\2c\20SkBlendMode\2c\20GrResourceHandle\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29 +7452:GrGLSLShaderBuilder::appendDecls\28SkTBlockList\20const&\2c\20SkString*\29\20const +7453:GrGLSLShaderBuilder::appendColorGamutXform\28SkString*\2c\20char\20const*\2c\20GrGLSLColorSpaceXformHelper*\29::$_0::operator\28\29\28char\20const*\2c\20GrResourceHandle\2c\20skcms_TFType\29\20const +7454:GrGLSLShaderBuilder::GrGLSLShaderBuilder\28GrGLSLProgramBuilder*\29 +7455:GrGLSLProgramDataManager::setRuntimeEffectUniforms\28SkSpan\2c\20SkSpan\20const>\2c\20SkSpan\2c\20void\20const*\29\20const +7456:GrGLSLProgramBuilder::~GrGLSLProgramBuilder\28\29 +7457:GrGLSLFragmentShaderBuilder::onFinalize\28\29 +7458:GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +7459:GrGLSLColorSpaceXformHelper::isNoop\28\29\20const +7460:GrGLSLBlend::SetBlendModeUniformData\28GrGLSLProgramDataManager\20const&\2c\20GrResourceHandle\2c\20SkBlendMode\29 +7461:GrGLSLBlend::BlendExpression\28GrProcessor\20const*\2c\20GrGLSLUniformHandler*\2c\20GrResourceHandle*\2c\20char\20const*\2c\20char\20const*\2c\20SkBlendMode\29 +7462:GrGLRenderTarget::~GrGLRenderTarget\28\29.2 +7463:GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +7464:GrGLRenderTarget::setFlags\28GrGLCaps\20const&\2c\20GrGLRenderTarget::IDs\20const&\29 +7465:GrGLRenderTarget::onGpuMemorySize\28\29\20const +7466:GrGLRenderTarget::bind\28bool\29 +7467:GrGLRenderTarget::backendFormat\28\29\20const +7468:GrGLRenderTarget::GrGLRenderTarget\28GrGLGpu*\2c\20SkISize\20const&\2c\20GrGLFormat\2c\20int\2c\20GrGLRenderTarget::IDs\20const&\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +7469:GrGLProgramDataManager::set4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +7470:GrGLProgramDataManager::set2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +7471:GrGLProgramBuilder::uniformHandler\28\29 +7472: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 +7473: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 +7474:GrGLProgramBuilder::CreateProgram\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrGLPrecompiledProgram\20const*\29 +7475:GrGLProgram::~GrGLProgram\28\29 +7476:GrGLInterfaces::MakeWebGL\28\29 +7477:GrGLInterface::~GrGLInterface\28\29 +7478:GrGLGpu::~GrGLGpu\28\29 +7479:GrGLGpu::waitSemaphore\28GrSemaphore*\29 +7480:GrGLGpu::uploadTexData\28SkISize\2c\20unsigned\20int\2c\20SkIRect\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20long\2c\20GrMipLevel\20const*\2c\20int\29 +7481:GrGLGpu::uploadCompressedTexData\28SkTextureCompressionType\2c\20GrGLFormat\2c\20SkISize\2c\20skgpu::Mipmapped\2c\20unsigned\20int\2c\20void\20const*\2c\20unsigned\20long\29 +7482:GrGLGpu::uploadColorToTex\28GrGLFormat\2c\20SkISize\2c\20unsigned\20int\2c\20std::__2::array\2c\20unsigned\20int\29 +7483:GrGLGpu::readOrTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20int\29 +7484:GrGLGpu::onFBOChanged\28\29 +7485:GrGLGpu::getCompatibleStencilIndex\28GrGLFormat\29 +7486:GrGLGpu::flushWireframeState\28bool\29 +7487:GrGLGpu::flushScissorRect\28SkIRect\20const&\2c\20int\2c\20GrSurfaceOrigin\29 +7488:GrGLGpu::flushProgram\28unsigned\20int\29 +7489:GrGLGpu::flushProgram\28sk_sp\29 +7490:GrGLGpu::flushFramebufferSRGB\28bool\29 +7491:GrGLGpu::flushConservativeRasterState\28bool\29 +7492:GrGLGpu::deleteSync\28__GLsync*\29 +7493:GrGLGpu::deleteFence\28__GLsync*\29 +7494:GrGLGpu::createRenderTargetObjects\28GrGLTexture::Desc\20const&\2c\20int\2c\20GrGLRenderTarget::IDs*\29 +7495:GrGLGpu::createCompressedTexture2D\28SkISize\2c\20SkTextureCompressionType\2c\20GrGLFormat\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20GrGLTextureParameters::SamplerOverriddenState*\29 +7496:GrGLGpu::bindVertexArray\28unsigned\20int\29 +7497:GrGLGpu::TextureUnitBindings::setBoundID\28unsigned\20int\2c\20GrGpuResource::UniqueID\29 +7498:GrGLGpu::TextureUnitBindings::invalidateAllTargets\28bool\29 +7499:GrGLGpu::TextureToCopyProgramIdx\28GrTexture*\29 +7500:GrGLGpu::ProgramCache::~ProgramCache\28\29 +7501:GrGLGpu::ProgramCache::findOrCreateProgramImpl\28GrDirectContext*\2c\20GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\2c\20GrThreadSafePipelineBuilder::Stats::ProgramCacheResult*\29 +7502:GrGLGpu::HWVertexArrayState::invalidate\28\29 +7503: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 +7504: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 +7505:GrGLFinishCallbacks::check\28\29 +7506:GrGLContext::~GrGLContext\28\29.1 +7507:GrGLCaps::~GrGLCaps\28\29 +7508:GrGLCaps::getTexSubImageExternalFormatAndType\28GrGLFormat\2c\20GrColorType\2c\20GrColorType\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +7509:GrGLCaps::getExternalFormat\28GrGLFormat\2c\20GrColorType\2c\20GrColorType\2c\20GrGLCaps::ExternalFormatUsage\2c\20unsigned\20int*\2c\20unsigned\20int*\29\20const +7510:GrGLCaps::canCopyTexSubImage\28GrGLFormat\2c\20bool\2c\20GrTextureType\20const*\2c\20GrGLFormat\2c\20bool\2c\20GrTextureType\20const*\29\20const +7511: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 +7512:GrGLBuffer::~GrGLBuffer\28\29.1 +7513:GrGLAttribArrayState::resize\28int\29 +7514:GrGLAttribArrayState::GrGLAttribArrayState\28int\29 +7515:GrFragmentProcessors::MakeChildFP\28SkRuntimeEffect::ChildPtr\20const&\2c\20GrFPArgs\20const&\29 +7516:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::Make\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +7517:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29 +7518:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::Make\28\29 +7519:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::Make\28std::__2::unique_ptr>\29 +7520:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::DeviceSpace\28std::__2::unique_ptr>\29 +7521:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::Make\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +7522:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29 +7523:GrFragmentProcessor::ClampOutput\28std::__2::unique_ptr>\29 +7524:GrFixedClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +7525:GrFixedClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +7526:GrEagerDynamicVertexAllocator::unlock\28int\29 +7527:GrDynamicAtlas::~GrDynamicAtlas\28\29 +7528:GrDynamicAtlas::Node::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +7529:GrDrawingManager::flush\28SkSpan\2c\20SkSurfaces::BackendSurfaceAccess\2c\20GrFlushInfo\20const&\2c\20skgpu::MutableTextureState\20const*\29 +7530:GrDrawingManager::closeAllTasks\28\29 +7531:GrDrawOpAtlas::uploadToPage\28unsigned\20int\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +7532:GrDrawOpAtlas::updatePlot\28GrDeferredUploadTarget*\2c\20skgpu::AtlasLocator*\2c\20skgpu::Plot*\29 +7533:GrDrawOpAtlas::setLastUseToken\28skgpu::AtlasLocator\20const&\2c\20skgpu::AtlasToken\29 +7534:GrDrawOpAtlas::processEviction\28skgpu::PlotLocator\29 +7535:GrDrawOpAtlas::hasID\28skgpu::PlotLocator\20const&\29 +7536:GrDrawOpAtlas::compact\28skgpu::AtlasToken\29 +7537:GrDrawOpAtlas::addToAtlas\28GrResourceProvider*\2c\20GrDeferredUploadTarget*\2c\20int\2c\20int\2c\20void\20const*\2c\20skgpu::AtlasLocator*\29 +7538: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 +7539:GrDrawIndirectBufferAllocPool::putBack\28int\29 +7540:GrDrawIndirectBufferAllocPool::putBackIndexed\28int\29 +7541:GrDrawIndirectBufferAllocPool::makeSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +7542:GrDrawIndirectBufferAllocPool::makeIndexedSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +7543:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29 +7544:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29 +7545:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29 +7546:GrDistanceFieldA8TextGeoProc::onTextureSampler\28int\29\20const +7547:GrDisableColorXPFactory::MakeXferProcessor\28\29 +7548:GrDirectContextPriv::validPMUPMConversionExists\28\29 +7549:GrDirectContext::~GrDirectContext\28\29 +7550:GrDirectContext::syncAllOutstandingGpuWork\28bool\29 +7551:GrDirectContext::submit\28GrSyncCpu\29 +7552:GrDirectContext::flush\28SkSurface*\29 +7553:GrDirectContext::abandoned\28\29 +7554:GrDeferredProxyUploader::signalAndFreeData\28\29 +7555:GrDeferredProxyUploader::GrDeferredProxyUploader\28\29 +7556:GrCopyRenderTask::~GrCopyRenderTask\28\29 +7557:GrCopyRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +7558:GrCopyBaseMipMapToView\28GrRecordingContext*\2c\20GrSurfaceProxyView\2c\20skgpu::Budgeted\29 +7559:GrCopyBaseMipMapToTextureProxy\28GrRecordingContext*\2c\20sk_sp\2c\20GrSurfaceOrigin\2c\20std::__2::basic_string_view>\2c\20skgpu::Budgeted\29 +7560:GrContext_Base::~GrContext_Base\28\29.1 +7561:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29 +7562:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29 +7563:GrColorInfo::makeColorType\28GrColorType\29\20const +7564:GrColorInfo::isLinearlyBlended\28\29\20const +7565:GrColorFragmentProcessorAnalysis::GrColorFragmentProcessorAnalysis\28GrProcessorAnalysisColor\20const&\2c\20std::__2::unique_ptr>\20const*\2c\20int\29 +7566:GrCaps::~GrCaps\28\29 +7567:GrCaps::surfaceSupportsWritePixels\28GrSurface\20const*\29\20const +7568:GrCaps::getDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\2c\20bool\29\20const +7569:GrCPixmap::GrCPixmap\28GrPixmap\20const&\29 +7570:GrBufferAllocPool::resetCpuData\28unsigned\20long\29 +7571:GrBufferAllocPool::makeSpaceAtLeast\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20sk_sp*\2c\20unsigned\20long*\2c\20unsigned\20long*\29 +7572:GrBufferAllocPool::flushCpuData\28GrBufferAllocPool::BufferBlock\20const&\2c\20unsigned\20long\29 +7573:GrBufferAllocPool::destroyBlock\28\29 +7574:GrBufferAllocPool::deleteBlocks\28\29 +7575:GrBufferAllocPool::createBlock\28unsigned\20long\29 +7576:GrBufferAllocPool::CpuBufferCache::makeBuffer\28unsigned\20long\2c\20bool\29 +7577:GrBlurUtils::mask_release_proc\28void*\2c\20void*\29 +7578: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 +7579:GrBlurUtils::draw_mask\28skgpu::ganesh::SurfaceDrawContext*\2c\20GrClip\20const*\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20GrPaint&&\2c\20GrSurfaceProxyView\29 +7580:GrBlurUtils::create_data\28SkIRect\20const&\2c\20SkIRect\20const&\29 +7581: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 +7582: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 +7583:GrBlurUtils::clip_bounds_quick_reject\28SkIRect\20const&\2c\20SkIRect\20const&\29 +7584: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 +7585:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29 +7586:GrBitmapTextGeoProc::addNewViews\28GrSurfaceProxyView\20const*\2c\20int\2c\20GrSamplerState\29 +7587: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 +7588:GrBicubicEffect::Make\28GrSurfaceProxyView\2c\20SkAlphaType\2c\20SkMatrix\20const&\2c\20GrSamplerState::WrapMode\2c\20GrSamplerState::WrapMode\2c\20SkCubicResampler\2c\20GrBicubicEffect::Direction\2c\20GrCaps\20const&\29 +7589: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 +7590:GrBackendTexture::operator=\28GrBackendTexture\20const&\29 +7591:GrBackendTexture::GrBackendTexture\28int\2c\20int\2c\20std::__2::basic_string_view>\2c\20skgpu::Mipmapped\2c\20GrBackendApi\2c\20GrTextureType\2c\20GrGLBackendTextureData\20const&\29 +7592:GrBackendRenderTarget::isProtected\28\29\20const +7593:GrBackendFormatBytesPerBlock\28GrBackendFormat\20const&\29 +7594:GrBackendFormat::operator!=\28GrBackendFormat\20const&\29\20const +7595:GrBackendFormat::makeTexture2D\28\29\20const +7596:GrBackendFormat::isMockStencilFormat\28\29\20const +7597:GrAuditTrail::opsCombined\28GrOp\20const*\2c\20GrOp\20const*\29 +7598: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 +7599: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 +7600:GrAtlasManager::~GrAtlasManager\28\29 +7601:GrAtlasManager::getViews\28skgpu::MaskFormat\2c\20unsigned\20int*\29 +7602:GrAtlasManager::atlasGeneration\28skgpu::MaskFormat\29\20const +7603:GrAppliedClip::visitProxies\28std::__2::function\20const&\29\20const +7604:GrAppliedClip::addCoverageFP\28std::__2::unique_ptr>\29 +7605:GrAATriangulator::makeEvent\28GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::SSEdge*\2c\20GrTriangulator::Vertex*\2c\20GrAATriangulator::EventList*\2c\20GrTriangulator::Comparator\20const&\29\20const +7606:GrAATriangulator::connectPartners\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\29 +7607:GrAATriangulator::collapseOverlapRegions\28GrTriangulator::VertexList*\2c\20GrTriangulator::Comparator\20const&\2c\20GrAATriangulator::EventComparator\29 +7608:GrAATriangulator::Event*\20SkArenaAlloc::make\28GrAATriangulator::SSEdge*&\2c\20SkPoint&\2c\20unsigned\20char&\29 +7609:GrAAConvexTessellator::~GrAAConvexTessellator\28\29 +7610:GrAAConvexTessellator::quadTo\28SkPoint\20const*\29 +7611:GrAAConvexTessellator::fanRing\28GrAAConvexTessellator::Ring\20const&\29 +7612:GetVariationDesignPosition\28AutoFTAccess&\2c\20SkFontArguments::VariationPosition::Coordinate*\2c\20int\29 +7613:GetShortIns +7614:FontMgrRunIterator::~FontMgrRunIterator\28\29 +7615:FontMgrRunIterator::endOfCurrentRun\28\29\20const +7616:FontMgrRunIterator::atEnd\28\29\20const +7617:FindSortableTop\28SkOpContourHead*\29 +7618:FT_Vector_NormLen +7619:FT_Sfnt_Table_Info +7620:FT_Select_Size +7621:FT_Render_Glyph +7622:FT_Remove_Module +7623:FT_Outline_Get_Orientation +7624:FT_Outline_EmboldenXY +7625:FT_Outline_Decompose +7626:FT_Open_Face +7627:FT_New_Library +7628:FT_New_GlyphSlot +7629:FT_Match_Size +7630:FT_GlyphLoader_Reset +7631:FT_GlyphLoader_Prepare +7632:FT_GlyphLoader_CheckSubGlyphs +7633:FT_Get_Var_Design_Coordinates +7634:FT_Get_Postscript_Name +7635:FT_Get_Paint_Layers +7636:FT_Get_PS_Font_Info +7637:FT_Get_Glyph_Name +7638:FT_Get_FSType_Flags +7639:FT_Get_Color_Glyph_ClipBox +7640:FT_Done_Size +7641:FT_Done_Library +7642:FT_Done_GlyphSlot +7643:FT_Bitmap_Done +7644:FT_Bitmap_Convert +7645:FT_Add_Default_Modules +7646:EmptyFontLoader::loadSystemFonts\28SkFontScanner\20const*\2c\20skia_private::TArray\2c\20true>*\29\20const +7647:EllipticalRRectOp::~EllipticalRRectOp\28\29.1 +7648:EllipticalRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +7649:EllipticalRRectOp::EllipticalRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20SkPoint\2c\20bool\29 +7650:EllipseOp::EllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20EllipseOp::DeviceSpaceParams\20const&\2c\20SkStrokeRec\20const&\29 +7651:EllipseGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7652:Dot2AngleType\28float\29 +7653:DIEllipseOp::~DIEllipseOp\28\29 +7654:DIEllipseOp::DIEllipseOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20DIEllipseOp::DeviceSpaceParams\20const&\2c\20SkMatrix\20const&\29 +7655:CustomXP::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +7656: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 +7657:Cr_z_inflateReset2 +7658:Cr_z_inflateReset +7659:CoverageSetOpXP::onIsEqual\28GrXferProcessor\20const&\29\20const +7660:Convexicator::close\28\29 +7661:Convexicator::addVec\28SkPoint\20const&\29 +7662:Convexicator::addPt\28SkPoint\20const&\29 +7663:ContourIter::next\28\29 +7664:Contour&\20std::__2::vector>::emplace_back\28SkRect&\2c\20int&\2c\20int&\29 +7665:CircularRRectOp::~CircularRRectOp\28\29.1 +7666:CircularRRectOp::CircularRRectOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const&\2c\20float\2c\20float\2c\20bool\29 +7667:CircleOp::~CircleOp\28\29 +7668:CircleOp::Make\28GrRecordingContext*\2c\20GrPaint&&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +7669:CircleOp::CircleOp\28GrProcessorSet*\2c\20SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkMatrix\20const&\2c\20SkPoint\2c\20float\2c\20GrStyle\20const&\2c\20CircleOp::ArcParams\20const*\29 +7670:CircleGeometryProcessor::Make\28SkArenaAlloc*\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20bool\2c\20SkMatrix\20const&\29 +7671:CircleGeometryProcessor::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +7672:CFF::dict_interpreter_t\2c\20CFF::interp_env_t>::interpret\28CFF::cff1_private_dict_values_base_t&\29 +7673: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 +7674: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 +7675:CFF::cff_stack_t::cff_stack_t\28\29 +7676:CFF::cff2_cs_interp_env_t::process_vsindex\28\29 +7677:CFF::cff2_cs_interp_env_t::process_blend\28\29 +7678:CFF::cff2_cs_interp_env_t::fetch_op\28\29 +7679: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 +7680:CFF::cff2_cs_interp_env_t::blend_deltas\28hb_array_t\29\20const +7681:CFF::cff1_top_dict_values_t::init\28\29 +7682: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 +7683:CFF::biased_subrs_t>>::init\28CFF::Subrs>\20const*\29 +7684:CFF::biased_subrs_t>>::init\28CFF::Subrs>\20const*\29 +7685:CFF::FDSelect::get_fd\28unsigned\20int\29\20const +7686:CFF::FDSelect3_4\2c\20OT::IntType>::sentinel\28\29\20const +7687:CFF::FDSelect3_4\2c\20OT::IntType>::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +7688:CFF::FDSelect3_4\2c\20OT::IntType>::get_fd\28unsigned\20int\29\20const +7689:CFF::FDSelect0::sanitize\28hb_sanitize_context_t*\2c\20unsigned\20int\29\20const +7690:CFF::Charset::get_glyph\28unsigned\20int\2c\20unsigned\20int\29\20const +7691:CFF::CFF2FDSelect::get_fd\28unsigned\20int\29\20const +7692: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 +7693: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 +7694: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 +7695:AutoRestoreInverseness::~AutoRestoreInverseness\28\29 +7696:AutoRestoreInverseness::AutoRestoreInverseness\28GrShape*\2c\20GrStyle\20const&\29 +7697:AutoLayerForImageFilter::addMaskFilterLayer\28SkRect\20const*\29 +7698:AutoLayerForImageFilter::addLayer\28SkPaint\20const&\2c\20SkRect\20const*\2c\20bool\29 +7699:AngleWinding\28SkOpSpanBase*\2c\20SkOpSpanBase*\2c\20int*\2c\20bool*\29 +7700:AddIntersectTs\28SkOpContour*\2c\20SkOpContour*\2c\20SkOpCoincidence*\29 +7701:ActiveEdgeList::replace\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\2c\20unsigned\20short\29 +7702:ActiveEdgeList::remove\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +7703:ActiveEdgeList::insert\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +7704:ActiveEdgeList::allocate\28SkPoint\20const&\2c\20SkPoint\20const&\2c\20unsigned\20short\2c\20unsigned\20short\29 +7705:AAT::trak::sanitize\28hb_sanitize_context_t*\29\20const +7706:AAT::mortmorx::sanitize\28hb_sanitize_context_t*\29\20const +7707:AAT::mortmorx::sanitize\28hb_sanitize_context_t*\29\20const +7708:AAT::ltag::sanitize\28hb_sanitize_context_t*\29\20const +7709:AAT::ltag::get_language\28unsigned\20int\29\20const +7710:AAT::feat::sanitize\28hb_sanitize_context_t*\29\20const +7711:AAT::ankr::sanitize\28hb_sanitize_context_t*\29\20const +7712:AAT::ankr::get_anchor\28unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int\29\20const +7713:AAT::TrackData::get_tracking\28void\20const*\2c\20float\29\20const +7714:AAT::Lookup>::get_value_or_null\28unsigned\20int\2c\20unsigned\20int\29\20const +7715:AAT::Lookup>::get_value\28unsigned\20int\2c\20unsigned\20int\29\20const +7716:AAT::Lookup>::get_value_or_null\28unsigned\20int\2c\20unsigned\20int\29\20const +7717:AAT::KerxTable::sanitize\28hb_sanitize_context_t*\29\20const +7718:AAT::KernPair\20const*\20hb_sorted_array_t::bsearch\28AAT::hb_glyph_pair_t\20const&\2c\20AAT::KernPair\20const*\29 +7719:AAT::KernPair\20const&\20OT::SortedArrayOf>>::bsearch\28AAT::hb_glyph_pair_t\20const&\2c\20AAT::KernPair\20const&\29\20const +7720:AAT::ChainSubtable::apply\28AAT::hb_aat_apply_context_t*\29\20const +7721:AAT::ChainSubtable::apply\28AAT::hb_aat_apply_context_t*\29\20const +7722:xyzd50_to_hcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +7723:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +7724:void\20mergeT\28void\20const*\2c\20int\2c\20unsigned\20char\20const*\2c\20int\2c\20void*\29 +7725:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7726:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7727:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7728:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7729:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7730:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7731:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7732:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7733:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7734:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7735:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7736:void\20\28anonymous\20namespace\29::downsample_3_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7737:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7738:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7739:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7740:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7741:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7742:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7743:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7744:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7745:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7746:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7747:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7748:void\20\28anonymous\20namespace\29::downsample_3_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7749:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7750:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7751:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7752:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7753:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7754:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7755:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7756:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7757:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7758:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7759:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7760:void\20\28anonymous\20namespace\29::downsample_3_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7761:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7762:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7763:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7764:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7765:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7766:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7767:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7768:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7769:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7770:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7771:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7772:void\20\28anonymous\20namespace\29::downsample_2_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7773:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7774:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7775:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7776:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7777:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7778:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7779:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7780:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7781:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7782:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7783:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7784:void\20\28anonymous\20namespace\29::downsample_2_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7785:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7786:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7787:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7788:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7789:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7790:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7791:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7792:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7793:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7794:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7795:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7796:void\20\28anonymous\20namespace\29::downsample_2_1<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7797:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7798:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7799:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7800:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7801:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7802:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7803:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7804:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7805:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7806:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7807:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7808:void\20\28anonymous\20namespace\29::downsample_1_3<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7809:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_RGBA_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7810:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_F16F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7811:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_Alpha_F16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7812:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7813:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_88>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7814:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_8888>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7815:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_565>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7816:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_4444>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7817:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7818:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7819:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_16161616>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7820:void\20\28anonymous\20namespace\29::downsample_1_2<\28anonymous\20namespace\29::ColorTypeFilter_1010102>\28void*\2c\20void\20const*\2c\20unsigned\20long\2c\20int\29 +7821:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +7822:virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +7823:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29.1 +7824:virtual\20thunk\20to\20std::__2::basic_istream>::~basic_istream\28\29 +7825:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +7826:virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +7827:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +7828:virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +7829:virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +7830:virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +7831:virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +7832:virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +7833:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29.1 +7834:virtual\20thunk\20to\20GrTextureProxy::~GrTextureProxy\28\29 +7835:virtual\20thunk\20to\20GrTextureProxy::onUninstantiatedGpuMemorySize\28\29\20const +7836:virtual\20thunk\20to\20GrTextureProxy::instantiate\28GrResourceProvider*\29 +7837:virtual\20thunk\20to\20GrTextureProxy::getUniqueKey\28\29\20const +7838:virtual\20thunk\20to\20GrTextureProxy::createSurface\28GrResourceProvider*\29\20const +7839:virtual\20thunk\20to\20GrTextureProxy::callbackDesc\28\29\20const +7840:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29\20const +7841:virtual\20thunk\20to\20GrTextureProxy::asTextureProxy\28\29 +7842:virtual\20thunk\20to\20GrTexture::onGpuMemorySize\28\29\20const +7843:virtual\20thunk\20to\20GrTexture::computeScratchKey\28skgpu::ScratchKey*\29\20const +7844:virtual\20thunk\20to\20GrTexture::asTexture\28\29\20const +7845:virtual\20thunk\20to\20GrTexture::asTexture\28\29 +7846:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29.1 +7847:virtual\20thunk\20to\20GrRenderTargetProxy::~GrRenderTargetProxy\28\29 +7848:virtual\20thunk\20to\20GrRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +7849:virtual\20thunk\20to\20GrRenderTargetProxy::instantiate\28GrResourceProvider*\29 +7850:virtual\20thunk\20to\20GrRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +7851:virtual\20thunk\20to\20GrRenderTargetProxy::callbackDesc\28\29\20const +7852:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29\20const +7853:virtual\20thunk\20to\20GrRenderTargetProxy::asRenderTargetProxy\28\29 +7854:virtual\20thunk\20to\20GrRenderTarget::onRelease\28\29 +7855:virtual\20thunk\20to\20GrRenderTarget::onAbandon\28\29 +7856:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29\20const +7857:virtual\20thunk\20to\20GrRenderTarget::asRenderTarget\28\29 +7858:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +7859:virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +7860:virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +7861:virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +7862:virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +7863:virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +7864:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29.1 +7865:virtual\20thunk\20to\20GrGLTexture::~GrGLTexture\28\29 +7866:virtual\20thunk\20to\20GrGLTexture::onRelease\28\29 +7867:virtual\20thunk\20to\20GrGLTexture::onAbandon\28\29 +7868:virtual\20thunk\20to\20GrGLTexture::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +7869:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +7870:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +7871:virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::onFinalize\28\29 +7872:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29.1 +7873:virtual\20thunk\20to\20GrGLRenderTarget::~GrGLRenderTarget\28\29 +7874:virtual\20thunk\20to\20GrGLRenderTarget::onRelease\28\29 +7875:virtual\20thunk\20to\20GrGLRenderTarget::onGpuMemorySize\28\29\20const +7876:virtual\20thunk\20to\20GrGLRenderTarget::onAbandon\28\29 +7877:virtual\20thunk\20to\20GrGLRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +7878:virtual\20thunk\20to\20GrGLRenderTarget::backendFormat\28\29\20const +7879:vertices_dispose +7880:vertices_create +7881:unicodePositionBuffer_create +7882:typefaces_filterCoveredCodePoints +7883:typeface_create +7884:tt_vadvance_adjust +7885:tt_slot_init +7886:tt_size_request +7887:tt_size_init +7888:tt_size_done +7889:tt_sbit_decoder_load_png +7890:tt_sbit_decoder_load_compound +7891:tt_sbit_decoder_load_byte_aligned +7892:tt_sbit_decoder_load_bit_aligned +7893:tt_property_set +7894:tt_property_get +7895:tt_name_ascii_from_utf16 +7896:tt_name_ascii_from_other +7897:tt_hadvance_adjust +7898:tt_glyph_load +7899:tt_get_var_blend +7900:tt_get_interface +7901:tt_get_glyph_name +7902:tt_get_cmap_info +7903:tt_get_advances +7904:tt_face_set_sbit_strike +7905:tt_face_load_strike_metrics +7906:tt_face_load_sbit_image +7907:tt_face_load_sbit +7908:tt_face_load_post +7909:tt_face_load_pclt +7910:tt_face_load_os2 +7911:tt_face_load_name +7912:tt_face_load_maxp +7913:tt_face_load_kern +7914:tt_face_load_hmtx +7915:tt_face_load_hhea +7916:tt_face_load_head +7917:tt_face_load_gasp +7918:tt_face_load_font_dir +7919:tt_face_load_cpal +7920:tt_face_load_colr +7921:tt_face_load_cmap +7922:tt_face_load_bhed +7923:tt_face_load_any +7924:tt_face_init +7925:tt_face_get_paint_layers +7926:tt_face_get_paint +7927:tt_face_get_kerning +7928:tt_face_get_colr_layer +7929:tt_face_get_colr_glyph_paint +7930:tt_face_get_colorline_stops +7931:tt_face_get_color_glyph_clipbox +7932:tt_face_free_sbit +7933:tt_face_free_ps_names +7934:tt_face_free_name +7935:tt_face_free_cpal +7936:tt_face_free_colr +7937:tt_face_done +7938:tt_face_colr_blend_layer +7939:tt_driver_init +7940:tt_cmap_unicode_init +7941:tt_cmap_unicode_char_next +7942:tt_cmap_unicode_char_index +7943:tt_cmap_init +7944:tt_cmap8_validate +7945:tt_cmap8_get_info +7946:tt_cmap8_char_next +7947:tt_cmap8_char_index +7948:tt_cmap6_validate +7949:tt_cmap6_get_info +7950:tt_cmap6_char_next +7951:tt_cmap6_char_index +7952:tt_cmap4_validate +7953:tt_cmap4_init +7954:tt_cmap4_get_info +7955:tt_cmap4_char_next +7956:tt_cmap4_char_index +7957:tt_cmap2_validate +7958:tt_cmap2_get_info +7959:tt_cmap2_char_next +7960:tt_cmap2_char_index +7961:tt_cmap14_variants +7962:tt_cmap14_variant_chars +7963:tt_cmap14_validate +7964:tt_cmap14_init +7965:tt_cmap14_get_info +7966:tt_cmap14_done +7967:tt_cmap14_char_variants +7968:tt_cmap14_char_var_isdefault +7969:tt_cmap14_char_var_index +7970:tt_cmap14_char_next +7971:tt_cmap13_validate +7972:tt_cmap13_get_info +7973:tt_cmap13_char_next +7974:tt_cmap13_char_index +7975:tt_cmap12_validate +7976:tt_cmap12_get_info +7977:tt_cmap12_char_next +7978:tt_cmap12_char_index +7979:tt_cmap10_validate +7980:tt_cmap10_get_info +7981:tt_cmap10_char_next +7982:tt_cmap10_char_index +7983:tt_cmap0_validate +7984:tt_cmap0_get_info +7985:tt_cmap0_char_next +7986:tt_cmap0_char_index +7987:textStyle_setWordSpacing +7988:textStyle_setTextBaseline +7989:textStyle_setLocale +7990:textStyle_setLetterSpacing +7991:textStyle_setHeight +7992:textStyle_setHalfLeading +7993:textStyle_setForeground +7994:textStyle_setFontVariations +7995:textStyle_setFontStyle +7996:textStyle_setFontSize +7997:textStyle_setDecorationColor +7998:textStyle_setColor +7999:textStyle_setBackground +8000:textStyle_dispose +8001:textStyle_create +8002:textStyle_copy +8003:textStyle_clearFontFamilies +8004:textStyle_addShadow +8005:textStyle_addFontFeature +8006:textStyle_addFontFamilies +8007:textBoxList_getLength +8008:textBoxList_getBoxAtIndex +8009:textBoxList_dispose +8010:t2_hints_stems +8011:t2_hints_open +8012:t1_make_subfont +8013:t1_hints_stem +8014:t1_hints_open +8015:t1_decrypt +8016:t1_decoder_parse_metrics +8017:t1_decoder_init +8018:t1_decoder_done +8019:t1_cmap_unicode_init +8020:t1_cmap_unicode_char_next +8021:t1_cmap_unicode_char_index +8022:t1_cmap_std_done +8023:t1_cmap_std_char_next +8024:t1_cmap_standard_init +8025:t1_cmap_expert_init +8026:t1_cmap_custom_init +8027:t1_cmap_custom_done +8028:t1_cmap_custom_char_next +8029:t1_cmap_custom_char_index +8030:t1_builder_start_point +8031:swizzle_or_premul\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\2c\20SkColorSpaceXformSteps\20const&\29 +8032:surface_renderPicturesOnWorker +8033:surface_renderPictures +8034:surface_rasterizeImageOnWorker +8035:surface_rasterizeImage +8036:surface_onRenderComplete +8037:surface_onRasterizeComplete +8038:surface_dispose +8039:surface_destroy +8040:surface_create +8041:strutStyle_setLeading +8042:strutStyle_setHeight +8043:strutStyle_setHalfLeading +8044:strutStyle_setForceStrutHeight +8045:strutStyle_setFontStyle +8046:strutStyle_setFontFamilies +8047:strutStyle_dispose +8048:strutStyle_create +8049:string_read +8050:std::exception::what\28\29\20const +8051:std::bad_variant_access::what\28\29\20const +8052:std::bad_optional_access::what\28\29\20const +8053:std::bad_array_new_length::what\28\29\20const +8054:std::bad_alloc::what\28\29\20const +8055: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 +8056: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 +8057: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 +8058: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 +8059: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 +8060: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 +8061: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 +8062: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 +8063: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 +8064: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 +8065: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 +8066: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 +8067: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 +8068: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 +8069:std::__2::numpunct::~numpunct\28\29 +8070:std::__2::numpunct::do_truename\28\29\20const +8071:std::__2::numpunct::do_grouping\28\29\20const +8072:std::__2::numpunct::do_falsename\28\29\20const +8073:std::__2::numpunct::~numpunct\28\29 +8074:std::__2::numpunct::do_truename\28\29\20const +8075:std::__2::numpunct::do_thousands_sep\28\29\20const +8076:std::__2::numpunct::do_grouping\28\29\20const +8077:std::__2::numpunct::do_falsename\28\29\20const +8078:std::__2::numpunct::do_decimal_point\28\29\20const +8079:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20void\20const*\29\20const +8080:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\29\20const +8081:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20unsigned\20long\20long\29\20const +8082:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\29\20const +8083:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20long\29\20const +8084:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20long\20double\29\20const +8085:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20double\29\20const +8086:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20wchar_t\2c\20bool\29\20const +8087:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20void\20const*\29\20const +8088:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\29\20const +8089:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20unsigned\20long\20long\29\20const +8090:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\29\20const +8091:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20long\29\20const +8092:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +8093:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20double\29\20const +8094:std::__2::num_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20std::__2::ios_base&\2c\20char\2c\20bool\29\20const +8095: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 +8096: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 +8097: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 +8098: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 +8099: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 +8100: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 +8101: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 +8102: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 +8103: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 +8104: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 +8105: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 +8106: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 +8107: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 +8108: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 +8109: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 +8110: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 +8111: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 +8112: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 +8113: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 +8114: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 +8115: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 +8116:std::__2::money_put>>::do_put\28std::__2::ostreambuf_iterator>\2c\20bool\2c\20std::__2::ios_base&\2c\20char\2c\20long\20double\29\20const +8117: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 +8118: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 +8119: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 +8120: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 +8121:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +8122:std::__2::messages::do_get\28long\2c\20int\2c\20int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\20const&\29\20const +8123:std::__2::locale::id::__init\28\29 +8124:std::__2::locale::__imp::~__imp\28\29 +8125:std::__2::ios_base::~ios_base\28\29.1 +8126:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20wchar_t*\29\20const +8127:std::__2::ctype::do_toupper\28wchar_t\29\20const +8128:std::__2::ctype::do_toupper\28wchar_t*\2c\20wchar_t\20const*\29\20const +8129:std::__2::ctype::do_tolower\28wchar_t\29\20const +8130:std::__2::ctype::do_tolower\28wchar_t*\2c\20wchar_t\20const*\29\20const +8131:std::__2::ctype::do_scan_not\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +8132:std::__2::ctype::do_scan_is\28unsigned\20long\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +8133:std::__2::ctype::do_narrow\28wchar_t\2c\20char\29\20const +8134:std::__2::ctype::do_narrow\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20char\2c\20char*\29\20const +8135:std::__2::ctype::do_is\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20unsigned\20long*\29\20const +8136:std::__2::ctype::do_is\28unsigned\20long\2c\20wchar_t\29\20const +8137:std::__2::ctype::~ctype\28\29 +8138:std::__2::ctype::do_widen\28char\20const*\2c\20char\20const*\2c\20char*\29\20const +8139:std::__2::ctype::do_toupper\28char\29\20const +8140:std::__2::ctype::do_toupper\28char*\2c\20char\20const*\29\20const +8141:std::__2::ctype::do_tolower\28char\29\20const +8142:std::__2::ctype::do_tolower\28char*\2c\20char\20const*\29\20const +8143:std::__2::ctype::do_narrow\28char\2c\20char\29\20const +8144:std::__2::ctype::do_narrow\28char\20const*\2c\20char\20const*\2c\20char\2c\20char*\29\20const +8145:std::__2::collate::do_transform\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +8146:std::__2::collate::do_hash\28wchar_t\20const*\2c\20wchar_t\20const*\29\20const +8147:std::__2::collate::do_compare\28wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\2c\20wchar_t\20const*\29\20const +8148:std::__2::collate::do_transform\28char\20const*\2c\20char\20const*\29\20const +8149:std::__2::collate::do_hash\28char\20const*\2c\20char\20const*\29\20const +8150:std::__2::collate::do_compare\28char\20const*\2c\20char\20const*\2c\20char\20const*\2c\20char\20const*\29\20const +8151:std::__2::codecvt::~codecvt\28\29 +8152:std::__2::codecvt::do_unshift\28__mbstate_t&\2c\20char*\2c\20char*\2c\20char*&\29\20const +8153: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 +8154:std::__2::codecvt::do_max_length\28\29\20const +8155:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +8156: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 +8157:std::__2::codecvt::do_encoding\28\29\20const +8158:std::__2::codecvt::do_length\28__mbstate_t&\2c\20char\20const*\2c\20char\20const*\2c\20unsigned\20long\29\20const +8159:std::__2::basic_stringbuf\2c\20std::__2::allocator>::~basic_stringbuf\28\29.1 +8160:std::__2::basic_stringbuf\2c\20std::__2::allocator>::underflow\28\29 +8161:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +8162:std::__2::basic_stringbuf\2c\20std::__2::allocator>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +8163:std::__2::basic_stringbuf\2c\20std::__2::allocator>::pbackfail\28int\29 +8164:std::__2::basic_stringbuf\2c\20std::__2::allocator>::overflow\28int\29 +8165:std::__2::basic_streambuf>::~basic_streambuf\28\29.1 +8166:std::__2::basic_streambuf>::xsputn\28char\20const*\2c\20long\29 +8167:std::__2::basic_streambuf>::xsgetn\28char*\2c\20long\29 +8168:std::__2::basic_streambuf>::uflow\28\29 +8169:std::__2::basic_streambuf>::setbuf\28char*\2c\20long\29 +8170:std::__2::basic_streambuf>::seekpos\28std::__2::fpos<__mbstate_t>\2c\20unsigned\20int\29 +8171:std::__2::basic_streambuf>::seekoff\28long\20long\2c\20std::__2::ios_base::seekdir\2c\20unsigned\20int\29 +8172:std::__2::bad_function_call::what\28\29\20const +8173:std::__2::__time_get_c_storage::__x\28\29\20const +8174:std::__2::__time_get_c_storage::__weeks\28\29\20const +8175:std::__2::__time_get_c_storage::__r\28\29\20const +8176:std::__2::__time_get_c_storage::__months\28\29\20const +8177:std::__2::__time_get_c_storage::__c\28\29\20const +8178:std::__2::__time_get_c_storage::__am_pm\28\29\20const +8179:std::__2::__time_get_c_storage::__X\28\29\20const +8180:std::__2::__time_get_c_storage::__x\28\29\20const +8181:std::__2::__time_get_c_storage::__weeks\28\29\20const +8182:std::__2::__time_get_c_storage::__r\28\29\20const +8183:std::__2::__time_get_c_storage::__months\28\29\20const +8184:std::__2::__time_get_c_storage::__c\28\29\20const +8185:std::__2::__time_get_c_storage::__am_pm\28\29\20const +8186:std::__2::__time_get_c_storage::__X\28\29\20const +8187: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 +8188:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +8189:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +8190:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +8191:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +8192:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +8193:std::__2::__shared_ptr_emplace>::__on_zero_shared\28\29 +8194:std::__2::__shared_ptr_emplace>::~__shared_ptr_emplace\28\29 +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\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\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\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\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 +8211: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 +8212: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 +8213: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 +8214:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +8215:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +8216: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 +8217:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +8218:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Cluster\20const*\2c\20unsigned\20long\2c\20bool\29>::__clone\28\29\20const +8219: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 +8220: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 +8221: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 +8222: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 +8223: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 +8224: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 +8225: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 +8226: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 +8227: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 +8228: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 +8229: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 +8230:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8231: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 +8232: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 +8233: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 +8234: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 +8235: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 +8236:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8237: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 +8238: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 +8239: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 +8240: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 +8241: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 +8242:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8243: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 +8244: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 +8245: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 +8246: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 +8247: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 +8248:std::__2::__function::__func\2c\20bool\20\28skia::textlayout::Run\20const*\2c\20float\2c\20skia::textlayout::SkRange\2c\20float*\29>::__clone\28\29\20const +8249: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 +8250: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 +8251: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 +8252: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 +8253: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 +8254: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 +8255: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 +8256: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 +8257: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 +8258: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 +8259: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 +8260: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 +8261:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::operator\28\29\28skia::textlayout::Cluster*&&\29 +8262:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28std::__2::__function::__base*\29\20const +8263:std::__2::__function::__func\2c\20void\20\28skia::textlayout::Cluster*\29>::__clone\28\29\20const +8264:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28std::__2::__function::__base*\29\20const +8265:std::__2::__function::__func\2c\20void\20\28skia::textlayout::ParagraphImpl*\2c\20char\20const*\2c\20bool\29>::__clone\28\29\20const +8266: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 +8267: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 +8268: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 +8269: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 +8270: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 +8271: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 +8272: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 +8273: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 +8274: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 +8275:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::operator\28\29\28skia::textlayout::SkRange&&\29 +8276:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28std::__2::__function::__base\29>*\29\20const +8277:std::__2::__function::__func\2c\20void\20\28skia::textlayout::SkRange\29>::__clone\28\29\20const +8278: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 +8279: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 +8280: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 +8281:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::~__func\28\29.1 +8282:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::operator\28\29\28void*&&\2c\20void\20const*&&\29 +8283:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy_deallocate\28\29 +8284:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::destroy\28\29 +8285:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +8286:std::__2::__function::__func\2c\20void\20\28void*\2c\20void\20const*\29>::__clone\28\29\20const +8287:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +8288:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8289:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +8290:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +8291:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8292:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +8293:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::operator\28\29\28GrSurfaceProxy*&&\2c\20skgpu::Mipmapped&&\29 +8294:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28std::__2::__function::__base*\29\20const +8295:std::__2::__function::__func\2c\20void\20\28GrSurfaceProxy*\2c\20skgpu::Mipmapped\29>::__clone\28\29\20const +8296: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 +8297: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 +8298: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 +8299: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 +8300: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 +8301: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 +8302: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 +8303: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 +8304: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 +8305: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 +8306: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 +8307: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 +8308: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 +8309: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 +8310: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 +8311:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +8312:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +8313:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +8314: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 +8315: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 +8316: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 +8317: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 +8318: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 +8319: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 +8320: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 +8321: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 +8322: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 +8323: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 +8324: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 +8325: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 +8326: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 +8327: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 +8328: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 +8329: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 +8330: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 +8331: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 +8332: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 +8333: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 +8334: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 +8335: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 +8336: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 +8337: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 +8338: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 +8339: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 +8340: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 +8341: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 +8342: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 +8343:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::~__func\28\29.1 +8344:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::operator\28\29\28\29 +8345:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy_deallocate\28\29 +8346:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::destroy\28\29 +8347:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8348:std::__2::__function::__func\29::$_0\2c\20std::__2::allocator\29::$_0>\2c\20void\20\28\29>::__clone\28\29\20const +8349:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::operator\28\29\28int&&\2c\20char\20const*&&\29 +8350:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28std::__2::__function::__base*\29\20const +8351:std::__2::__function::__func\2c\20void\20\28int\2c\20char\20const*\29>::__clone\28\29\20const +8352: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 +8353: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 +8354:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +8355: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 +8356:std::__2::__function::__func\2c\20void\20\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\29>::__clone\28\29\20const +8357: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 +8358: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 +8359: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 +8360:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::operator\28\29\28SkIRect\20const&\29 +8361:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8362:std::__2::__function::__func\2c\20void\20\28SkIRect\20const&\29>::__clone\28\29\20const +8363:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +8364:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +8365:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +8366:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +8367:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8368:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +8369:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +8370:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +8371:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +8372:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +8373:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8374:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +8375:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::~__func\28\29.1 +8376:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +8377:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy_deallocate\28\29 +8378:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::destroy\28\29 +8379:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8380:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +8381: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 +8382: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 +8383: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 +8384:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::operator\28\29\28GrBackendTexture&&\29 +8385:std::__2::__function::__func*\29::$_0\2c\20std::__2::allocator*\29::$_0>\2c\20void\20\28GrBackendTexture\29>::__clone\28\29\20const +8386:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +8387:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +8388:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +8389:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::operator\28\29\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29 +8390:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28std::__2::__function::__base*\29\20const +8391:std::__2::__function::__func\2c\20void\20\28GrFragmentProcessor\20const&\2c\20GrFragmentProcessor::ProgramImpl&\29>::__clone\28\29\20const +8392:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::operator\28\29\28GrTextureEffect\20const&\29 +8393:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8394:std::__2::__function::__func\2c\20void\20\28GrTextureEffect\20const&\29>::__clone\28\29\20const +8395:std::__2::__function::__func\2c\20void\20\28\29>::operator\28\29\28\29 +8396:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28std::__2::__function::__base*\29\20const +8397:std::__2::__function::__func\2c\20void\20\28\29>::__clone\28\29\20const +8398: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 +8399: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 +8400: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 +8401:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::operator\28\29\28GrResourceProvider*&&\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29 +8402:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28std::__2::__function::__base*\29\20const +8403:std::__2::__function::__func\2c\20GrSurfaceProxy::LazyCallbackResult\20\28GrResourceProvider*\2c\20GrSurfaceProxy::LazySurfaceDesc\20const&\29>::__clone\28\29\20const +8404:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +8405: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 +8406:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +8407:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::~__func\28\29.1 +8408:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28std::__2::__function::__base&\29>*\29\20const +8409:std::__2::__function::__func\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +8410:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::operator\28\29\28std::__2::function&\29 +8411: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 +8412:std::__2::__function::__func&\29\2c\20std::__2::allocator&\29>\2c\20void\20\28std::__2::function&\29>::__clone\28\29\20const +8413:stackSave +8414:stackRestore +8415:stackAlloc +8416:srgb_to_hwb\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +8417:srcover_p\28unsigned\20char\2c\20unsigned\20char\29 +8418:sn_write +8419:sktext::gpu::post_purge_blob_message\28unsigned\20int\2c\20unsigned\20int\29 +8420:sktext::gpu::TextBlob::~TextBlob\28\29.1 +8421:sktext::gpu::SlugImpl::~SlugImpl\28\29.1 +8422:sktext::gpu::SlugImpl::sourceBounds\28\29\20const +8423:sktext::gpu::SlugImpl::sourceBoundsWithOrigin\28\29\20const +8424:sktext::gpu::SlugImpl::doFlatten\28SkWriteBuffer&\29\20const +8425:sktext::gpu::SDFMaskFilterImpl::getTypeName\28\29\20const +8426:sktext::gpu::SDFMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +8427:sktext::gpu::SDFMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +8428:skif::\28anonymous\20namespace\29::RasterBackend::~RasterBackend\28\29 +8429:skif::\28anonymous\20namespace\29::RasterBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +8430:skif::\28anonymous\20namespace\29::RasterBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +8431:skif::\28anonymous\20namespace\29::RasterBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +8432:skif::\28anonymous\20namespace\29::GaneshBackend::makeImage\28SkIRect\20const&\2c\20sk_sp\29\20const +8433:skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkISize\2c\20sk_sp\2c\20SkSurfaceProps\20const*\29\20const +8434:skif::\28anonymous\20namespace\29::GaneshBackend::getCachedBitmap\28SkBitmap\20const&\29\20const +8435:skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +8436:skia_png_zfree +8437:skia_png_zalloc +8438:skia_png_set_read_fn +8439:skia_png_set_expand_gray_1_2_4_to_8 +8440:skia_png_read_start_row +8441:skia_png_read_finish_row +8442:skia_png_handle_zTXt +8443:skia_png_handle_unknown +8444:skia_png_handle_tRNS +8445:skia_png_handle_tIME +8446:skia_png_handle_tEXt +8447:skia_png_handle_sRGB +8448:skia_png_handle_sPLT +8449:skia_png_handle_sCAL +8450:skia_png_handle_sBIT +8451:skia_png_handle_pHYs +8452:skia_png_handle_pCAL +8453:skia_png_handle_oFFs +8454:skia_png_handle_iTXt +8455:skia_png_handle_iCCP +8456:skia_png_handle_hIST +8457:skia_png_handle_gAMA +8458:skia_png_handle_cHRM +8459:skia_png_handle_bKGD +8460:skia_png_handle_PLTE +8461:skia_png_handle_IHDR +8462:skia_png_handle_IEND +8463:skia_png_get_IHDR +8464:skia_png_do_read_transformations +8465:skia_png_destroy_read_struct +8466:skia_png_default_read_data +8467:skia_png_create_png_struct +8468:skia_png_combine_row +8469:skia::textlayout::TypefaceFontStyleSet::~TypefaceFontStyleSet\28\29.1 +8470:skia::textlayout::TypefaceFontStyleSet::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +8471:skia::textlayout::TypefaceFontProvider::~TypefaceFontProvider\28\29.1 +8472:skia::textlayout::TypefaceFontProvider::onMatchFamily\28char\20const*\29\20const +8473:skia::textlayout::TypefaceFontProvider::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +8474:skia::textlayout::TypefaceFontProvider::onLegacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +8475:skia::textlayout::TypefaceFontProvider::onGetFamilyName\28int\2c\20SkString*\29\20const +8476:skia::textlayout::TypefaceFontProvider::onCreateStyleSet\28int\29\20const +8477:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::~ShapeHandler\28\29.1 +8478:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +8479:skia::textlayout::TextLine::shapeEllipsis\28SkString\20const&\2c\20skia::textlayout::Cluster\20const*\29::ShapeHandler::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +8480:skia::textlayout::ParagraphImpl::~ParagraphImpl\28\29.1 +8481:skia::textlayout::ParagraphImpl::visit\28std::__2::function\20const&\29 +8482:skia::textlayout::ParagraphImpl::updateTextAlign\28skia::textlayout::TextAlign\29 +8483:skia::textlayout::ParagraphImpl::updateForegroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +8484:skia::textlayout::ParagraphImpl::updateFontSize\28unsigned\20long\2c\20unsigned\20long\2c\20float\29 +8485:skia::textlayout::ParagraphImpl::updateBackgroundPaint\28unsigned\20long\2c\20unsigned\20long\2c\20SkPaint\29 +8486:skia::textlayout::ParagraphImpl::unresolvedGlyphs\28\29 +8487:skia::textlayout::ParagraphImpl::unresolvedCodepoints\28\29 +8488:skia::textlayout::ParagraphImpl::paint\28SkCanvas*\2c\20float\2c\20float\29 +8489:skia::textlayout::ParagraphImpl::markDirty\28\29 +8490:skia::textlayout::ParagraphImpl::lineNumber\28\29 +8491:skia::textlayout::ParagraphImpl::layout\28float\29 +8492:skia::textlayout::ParagraphImpl::getWordBoundary\28unsigned\20int\29 +8493:skia::textlayout::ParagraphImpl::getRectsForRange\28unsigned\20int\2c\20unsigned\20int\2c\20skia::textlayout::RectHeightStyle\2c\20skia::textlayout::RectWidthStyle\29 +8494:skia::textlayout::ParagraphImpl::getRectsForPlaceholders\28\29 +8495: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 +8496:skia::textlayout::ParagraphImpl::getPath\28int\2c\20SkPath*\29 +8497:skia::textlayout::ParagraphImpl::getLineNumberAtUTF16Offset\28unsigned\20long\29 +8498:skia::textlayout::ParagraphImpl::getLineMetrics\28std::__2::vector>&\29 +8499:skia::textlayout::ParagraphImpl::getLineMetricsAt\28int\2c\20skia::textlayout::LineMetrics*\29\20const +8500:skia::textlayout::ParagraphImpl::getFonts\28\29\20const +8501:skia::textlayout::ParagraphImpl::getFontAt\28unsigned\20long\29\20const +8502:skia::textlayout::ParagraphImpl::getFontAtUTF16Offset\28unsigned\20long\29 +8503:skia::textlayout::ParagraphImpl::getClosestUTF16GlyphInfoAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphInfo*\29 +8504:skia::textlayout::ParagraphImpl::getClosestGlyphClusterAt\28float\2c\20float\2c\20skia::textlayout::Paragraph::GlyphClusterInfo*\29 +8505:skia::textlayout::ParagraphImpl::getActualTextRange\28int\2c\20bool\29\20const +8506:skia::textlayout::ParagraphImpl::extendedVisit\28std::__2::function\20const&\29 +8507:skia::textlayout::ParagraphImpl::containsEmoji\28SkTextBlob*\29 +8508:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29::$_0::__invoke\28SkPath\20const*\2c\20SkMatrix\20const&\2c\20void*\29 +8509:skia::textlayout::ParagraphImpl::containsColorFontOrBitmap\28SkTextBlob*\29 +8510:skia::textlayout::ParagraphBuilderImpl::~ParagraphBuilderImpl\28\29.1 +8511:skia::textlayout::ParagraphBuilderImpl::setWordsUtf8\28std::__2::vector>\29 +8512:skia::textlayout::ParagraphBuilderImpl::setWordsUtf16\28std::__2::vector>\29 +8513:skia::textlayout::ParagraphBuilderImpl::setLineBreaksUtf8\28std::__2::vector>\29 +8514:skia::textlayout::ParagraphBuilderImpl::setLineBreaksUtf16\28std::__2::vector>\29 +8515:skia::textlayout::ParagraphBuilderImpl::setGraphemeBreaksUtf8\28std::__2::vector>\29 +8516:skia::textlayout::ParagraphBuilderImpl::setGraphemeBreaksUtf16\28std::__2::vector>\29 +8517:skia::textlayout::ParagraphBuilderImpl::pushStyle\28skia::textlayout::TextStyle\20const&\29 +8518:skia::textlayout::ParagraphBuilderImpl::pop\28\29 +8519:skia::textlayout::ParagraphBuilderImpl::peekStyle\28\29 +8520:skia::textlayout::ParagraphBuilderImpl::getText\28\29 +8521:skia::textlayout::ParagraphBuilderImpl::getParagraphStyle\28\29\20const +8522:skia::textlayout::ParagraphBuilderImpl::getClientICUData\28\29\20const +8523:skia::textlayout::ParagraphBuilderImpl::addText\28std::__2::basic_string\2c\20std::__2::allocator>\20const&\29 +8524:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\2c\20unsigned\20long\29 +8525:skia::textlayout::ParagraphBuilderImpl::addText\28char\20const*\29 +8526:skia::textlayout::ParagraphBuilderImpl::addPlaceholder\28skia::textlayout::PlaceholderStyle\20const&\29 +8527:skia::textlayout::ParagraphBuilderImpl::SetUnicode\28sk_sp\29 +8528:skia::textlayout::ParagraphBuilderImpl::Reset\28\29 +8529:skia::textlayout::ParagraphBuilderImpl::Build\28\29 +8530:skia::textlayout::Paragraph::FontInfo::~FontInfo\28\29.1 +8531:skia::textlayout::OneLineShaper::~OneLineShaper\28\29.1 +8532:skia::textlayout::OneLineShaper::runBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +8533:skia::textlayout::OneLineShaper::commitRunBuffer\28SkShaper::RunHandler::RunInfo\20const&\29 +8534:skia::textlayout::LangIterator::~LangIterator\28\29.1 +8535:skia::textlayout::LangIterator::~LangIterator\28\29 +8536:skia::textlayout::LangIterator::endOfCurrentRun\28\29\20const +8537:skia::textlayout::LangIterator::currentLanguage\28\29\20const +8538:skia::textlayout::LangIterator::consume\28\29 +8539:skia::textlayout::LangIterator::atEnd\28\29\20const +8540:skia::textlayout::FontCollection::~FontCollection\28\29.1 +8541:skia::textlayout::CanvasParagraphPainter::translate\28float\2c\20float\29 +8542:skia::textlayout::CanvasParagraphPainter::save\28\29 +8543:skia::textlayout::CanvasParagraphPainter::restore\28\29 +8544:skia::textlayout::CanvasParagraphPainter::drawTextShadow\28sk_sp\20const&\2c\20float\2c\20float\2c\20unsigned\20int\2c\20float\29 +8545:skia::textlayout::CanvasParagraphPainter::drawTextBlob\28sk_sp\20const&\2c\20float\2c\20float\2c\20std::__2::variant\20const&\29 +8546:skia::textlayout::CanvasParagraphPainter::drawRect\28SkRect\20const&\2c\20std::__2::variant\20const&\29 +8547:skia::textlayout::CanvasParagraphPainter::drawPath\28SkPath\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +8548:skia::textlayout::CanvasParagraphPainter::drawLine\28float\2c\20float\2c\20float\2c\20float\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +8549:skia::textlayout::CanvasParagraphPainter::drawFilledRect\28SkRect\20const&\2c\20skia::textlayout::ParagraphPainter::DecorationStyle\20const&\29 +8550:skia::textlayout::CanvasParagraphPainter::clipRect\28SkRect\20const&\29 +8551:skgpu::tess::FixedCountWedges::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +8552:skgpu::tess::FixedCountWedges::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +8553:skgpu::tess::FixedCountStrokes::WriteVertexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +8554:skgpu::tess::FixedCountCurves::WriteIndexBuffer\28skgpu::VertexWriter\2c\20unsigned\20long\29 +8555:skgpu::ganesh::texture_proxy_view_from_planes\28GrRecordingContext*\2c\20SkImage_Lazy\20const*\2c\20skgpu::Budgeted\29::$_0::__invoke\28void*\2c\20void*\29 +8556:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::~SmallPathOp\28\29.1 +8557:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::visitProxies\28std::__2::function\20const&\29\20const +8558:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8559:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8560:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8561:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::name\28\29\20const +8562:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::fixedFunctionFlags\28\29\20const +8563:skgpu::ganesh::\28anonymous\20namespace\29::SmallPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8564:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::name\28\29\20const +8565:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8566:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8567:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8568:skgpu::ganesh::\28anonymous\20namespace\29::QuadEdgeEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8569:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::~HullShader\28\29.1 +8570:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::name\28\29\20const +8571: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 +8572:skgpu::ganesh::\28anonymous\20namespace\29::HullShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8573:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::~AAFlatteningConvexPathOp\28\29.1 +8574:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +8575:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8576:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8577: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 +8578:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8579:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::name\28\29\20const +8580:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::fixedFunctionFlags\28\29\20const +8581:skgpu::ganesh::\28anonymous\20namespace\29::AAFlatteningConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8582:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::~AAConvexPathOp\28\29.1 +8583:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::visitProxies\28std::__2::function\20const&\29\20const +8584:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8585:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8586: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 +8587:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8588:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::name\28\29\20const +8589:skgpu::ganesh::\28anonymous\20namespace\29::AAConvexPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8590:skgpu::ganesh::TriangulatingPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8591:skgpu::ganesh::TriangulatingPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8592:skgpu::ganesh::TriangulatingPathRenderer::name\28\29\20const +8593:skgpu::ganesh::TessellationPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +8594:skgpu::ganesh::TessellationPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +8595:skgpu::ganesh::TessellationPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8596:skgpu::ganesh::TessellationPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8597:skgpu::ganesh::TessellationPathRenderer::name\28\29\20const +8598:skgpu::ganesh::SurfaceDrawContext::~SurfaceDrawContext\28\29 +8599:skgpu::ganesh::SurfaceDrawContext::willReplaceOpsTask\28skgpu::ganesh::OpsTask*\2c\20skgpu::ganesh::OpsTask*\29 +8600:skgpu::ganesh::SurfaceDrawContext::canDiscardPreviousOpsOnFullClear\28\29\20const +8601:skgpu::ganesh::SurfaceContext::~SurfaceContext\28\29.1 +8602: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 +8603: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 +8604:skgpu::ganesh::StrokeTessellateOp::~StrokeTessellateOp\28\29.1 +8605:skgpu::ganesh::StrokeTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +8606:skgpu::ganesh::StrokeTessellateOp::usesStencil\28\29\20const +8607:skgpu::ganesh::StrokeTessellateOp::onPrepare\28GrOpFlushState*\29 +8608:skgpu::ganesh::StrokeTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8609:skgpu::ganesh::StrokeTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8610:skgpu::ganesh::StrokeTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8611:skgpu::ganesh::StrokeTessellateOp::name\28\29\20const +8612:skgpu::ganesh::StrokeTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8613:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::~NonAAStrokeRectOp\28\29.1 +8614:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +8615:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::programInfo\28\29 +8616:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8617:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8618: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 +8619:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::name\28\29\20const +8620:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::NonAAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8621:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::~AAStrokeRectOp\28\29.1 +8622:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::visitProxies\28std::__2::function\20const&\29\20const +8623:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::programInfo\28\29 +8624:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8625:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8626: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 +8627:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8628:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::name\28\29\20const +8629:skgpu::ganesh::StrokeRectOp::\28anonymous\20namespace\29::AAStrokeRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8630:skgpu::ganesh::StencilClip::~StencilClip\28\29.1 +8631:skgpu::ganesh::StencilClip::~StencilClip\28\29 +8632:skgpu::ganesh::StencilClip::preApply\28SkRect\20const&\2c\20GrAA\29\20const +8633:skgpu::ganesh::StencilClip::getConservativeBounds\28\29\20const +8634:skgpu::ganesh::StencilClip::apply\28GrAppliedHardClip*\2c\20SkIRect*\29\20const +8635:skgpu::ganesh::SoftwarePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8636:skgpu::ganesh::SoftwarePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8637:skgpu::ganesh::SoftwarePathRenderer::name\28\29\20const +8638:skgpu::ganesh::SmallPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8639:skgpu::ganesh::SmallPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8640:skgpu::ganesh::SmallPathRenderer::name\28\29\20const +8641:skgpu::ganesh::SmallPathAtlasMgr::postFlush\28skgpu::AtlasToken\29 +8642:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::~RegionOpImpl\28\29.1 +8643:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::visitProxies\28std::__2::function\20const&\29\20const +8644:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::programInfo\28\29 +8645:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8646:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8647: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 +8648:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8649:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::name\28\29\20const +8650:skgpu::ganesh::RegionOp::\28anonymous\20namespace\29::RegionOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8651: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 +8652: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 +8653: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 +8654: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 +8655: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 +8656: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 +8657: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 +8658: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 +8659:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::~QuadPerEdgeAAGeometryProcessor\28\29.1 +8660:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::onTextureSampler\28int\29\20const +8661:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::name\28\29\20const +8662:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8663:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8664:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8665:skgpu::ganesh::QuadPerEdgeAA::QuadPerEdgeAAGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8666:skgpu::ganesh::PathWedgeTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +8667:skgpu::ganesh::PathTessellateOp::~PathTessellateOp\28\29.1 +8668:skgpu::ganesh::PathTessellateOp::visitProxies\28std::__2::function\20const&\29\20const +8669:skgpu::ganesh::PathTessellateOp::usesStencil\28\29\20const +8670:skgpu::ganesh::PathTessellateOp::onPrepare\28GrOpFlushState*\29 +8671:skgpu::ganesh::PathTessellateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8672:skgpu::ganesh::PathTessellateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8673:skgpu::ganesh::PathTessellateOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8674:skgpu::ganesh::PathTessellateOp::name\28\29\20const +8675:skgpu::ganesh::PathTessellateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8676:skgpu::ganesh::PathStencilCoverOp::~PathStencilCoverOp\28\29.1 +8677:skgpu::ganesh::PathStencilCoverOp::visitProxies\28std::__2::function\20const&\29\20const +8678:skgpu::ganesh::PathStencilCoverOp::onPrepare\28GrOpFlushState*\29 +8679:skgpu::ganesh::PathStencilCoverOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8680:skgpu::ganesh::PathStencilCoverOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8681:skgpu::ganesh::PathStencilCoverOp::name\28\29\20const +8682:skgpu::ganesh::PathStencilCoverOp::fixedFunctionFlags\28\29\20const +8683:skgpu::ganesh::PathStencilCoverOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8684:skgpu::ganesh::PathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +8685:skgpu::ganesh::PathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +8686:skgpu::ganesh::PathInnerTriangulateOp::~PathInnerTriangulateOp\28\29.1 +8687:skgpu::ganesh::PathInnerTriangulateOp::visitProxies\28std::__2::function\20const&\29\20const +8688:skgpu::ganesh::PathInnerTriangulateOp::onPrepare\28GrOpFlushState*\29 +8689:skgpu::ganesh::PathInnerTriangulateOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8690:skgpu::ganesh::PathInnerTriangulateOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8691:skgpu::ganesh::PathInnerTriangulateOp::name\28\29\20const +8692:skgpu::ganesh::PathInnerTriangulateOp::fixedFunctionFlags\28\29\20const +8693:skgpu::ganesh::PathInnerTriangulateOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8694:skgpu::ganesh::PathCurveTessellator::prepare\28GrMeshDrawTarget*\2c\20SkMatrix\20const&\2c\20skgpu::ganesh::PathTessellator::PathDrawList\20const&\2c\20int\29 +8695:skgpu::ganesh::OpsTask::~OpsTask\28\29.1 +8696:skgpu::ganesh::OpsTask::onPrepare\28GrOpFlushState*\29 +8697:skgpu::ganesh::OpsTask::onPrePrepare\28GrRecordingContext*\29 +8698:skgpu::ganesh::OpsTask::onMakeSkippable\28\29 +8699:skgpu::ganesh::OpsTask::onIsUsed\28GrSurfaceProxy*\29\20const +8700:skgpu::ganesh::OpsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +8701:skgpu::ganesh::OpsTask::endFlush\28GrDrawingManager*\29 +8702:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::~NonAALatticeOp\28\29.1 +8703:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::visitProxies\28std::__2::function\20const&\29\20const +8704:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8705:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8706: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 +8707:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8708:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::name\28\29\20const +8709:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::NonAALatticeOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8710:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::~LatticeGP\28\29.1 +8711:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::onTextureSampler\28int\29\20const +8712:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::name\28\29\20const +8713:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8714:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8715:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8716:skgpu::ganesh::LatticeOp::\28anonymous\20namespace\29::LatticeGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8717:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::~FillRRectOpImpl\28\29.1 +8718:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +8719:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::programInfo\28\29 +8720:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8721:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8722: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 +8723:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8724:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::name\28\29\20const +8725:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8726:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::clipToShape\28skgpu::ganesh::SurfaceDrawContext*\2c\20SkClipOp\2c\20SkMatrix\20const&\2c\20GrShape\20const&\2c\20GrAA\29 +8727:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29.1 +8728:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::~Processor\28\29 +8729:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::name\28\29\20const +8730:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8731:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +8732:skgpu::ganesh::FillRRectOp::\28anonymous\20namespace\29::FillRRectOpImpl::Processor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8733:skgpu::ganesh::DrawableOp::~DrawableOp\28\29.1 +8734:skgpu::ganesh::DrawableOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8735:skgpu::ganesh::DrawableOp::name\28\29\20const +8736:skgpu::ganesh::DrawAtlasPathOp::~DrawAtlasPathOp\28\29.1 +8737:skgpu::ganesh::DrawAtlasPathOp::visitProxies\28std::__2::function\20const&\29\20const +8738:skgpu::ganesh::DrawAtlasPathOp::onPrepare\28GrOpFlushState*\29 +8739:skgpu::ganesh::DrawAtlasPathOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +8740:skgpu::ganesh::DrawAtlasPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8741:skgpu::ganesh::DrawAtlasPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8742:skgpu::ganesh::DrawAtlasPathOp::name\28\29\20const +8743:skgpu::ganesh::DrawAtlasPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8744:skgpu::ganesh::Device::~Device\28\29.1 +8745:skgpu::ganesh::Device::strikeDeviceInfo\28\29\20const +8746:skgpu::ganesh::Device::snapSpecial\28SkIRect\20const&\2c\20bool\29 +8747:skgpu::ganesh::Device::snapSpecialScaled\28SkIRect\20const&\2c\20SkISize\20const&\29 +8748:skgpu::ganesh::Device::replaceClip\28SkIRect\20const&\29 +8749:skgpu::ganesh::Device::recordingContext\28\29\20const +8750:skgpu::ganesh::Device::pushClipStack\28\29 +8751:skgpu::ganesh::Device::popClipStack\28\29 +8752:skgpu::ganesh::Device::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +8753:skgpu::ganesh::Device::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +8754:skgpu::ganesh::Device::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +8755:skgpu::ganesh::Device::onClipShader\28sk_sp\29 +8756:skgpu::ganesh::Device::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +8757:skgpu::ganesh::Device::makeSpecial\28SkImage\20const*\29 +8758:skgpu::ganesh::Device::isClipWideOpen\28\29\20const +8759:skgpu::ganesh::Device::isClipRect\28\29\20const +8760:skgpu::ganesh::Device::isClipEmpty\28\29\20const +8761:skgpu::ganesh::Device::isClipAntiAliased\28\29\20const +8762:skgpu::ganesh::Device::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +8763:skgpu::ganesh::Device::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +8764:skgpu::ganesh::Device::drawShadow\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +8765:skgpu::ganesh::Device::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +8766:skgpu::ganesh::Device::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +8767:skgpu::ganesh::Device::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +8768:skgpu::ganesh::Device::drawPaint\28SkPaint\20const&\29 +8769:skgpu::ganesh::Device::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +8770:skgpu::ganesh::Device::drawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +8771:skgpu::ganesh::Device::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +8772:skgpu::ganesh::Device::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +8773:skgpu::ganesh::Device::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +8774: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 +8775:skgpu::ganesh::Device::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +8776:skgpu::ganesh::Device::drawDevice\28SkDevice*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +8777:skgpu::ganesh::Device::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +8778:skgpu::ganesh::Device::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +8779:skgpu::ganesh::Device::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +8780:skgpu::ganesh::Device::drawArc\28SkArc\20const&\2c\20SkPaint\20const&\29 +8781:skgpu::ganesh::Device::devClipBounds\28\29\20const +8782:skgpu::ganesh::Device::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +8783:skgpu::ganesh::Device::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +8784:skgpu::ganesh::Device::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +8785:skgpu::ganesh::Device::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +8786:skgpu::ganesh::Device::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +8787:skgpu::ganesh::Device::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +8788:skgpu::ganesh::Device::android_utils_clipWithStencil\28\29 +8789:skgpu::ganesh::DefaultPathRenderer::onStencilPath\28skgpu::ganesh::PathRenderer::StencilPathArgs\20const&\29 +8790:skgpu::ganesh::DefaultPathRenderer::onGetStencilSupport\28GrStyledShape\20const&\29\20const +8791:skgpu::ganesh::DefaultPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8792:skgpu::ganesh::DefaultPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8793:skgpu::ganesh::DefaultPathRenderer::name\28\29\20const +8794:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::name\28\29\20const +8795:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8796:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8797:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingLineEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8798:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::name\28\29\20const +8799:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +8800:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +8801:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashingCircleEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +8802:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::~DashOpImpl\28\29.1 +8803:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::visitProxies\28std::__2::function\20const&\29\20const +8804:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::programInfo\28\29 +8805:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +8806:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8807: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 +8808:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8809:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::name\28\29\20const +8810:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::fixedFunctionFlags\28\29\20const +8811:skgpu::ganesh::DashOp::\28anonymous\20namespace\29::DashOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8812:skgpu::ganesh::DashLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8813:skgpu::ganesh::DashLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8814:skgpu::ganesh::DashLinePathRenderer::name\28\29\20const +8815:skgpu::ganesh::ClipStack::~ClipStack\28\29.1 +8816:skgpu::ganesh::ClipStack::preApply\28SkRect\20const&\2c\20GrAA\29\20const +8817:skgpu::ganesh::ClipStack::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +8818:skgpu::ganesh::ClearOp::~ClearOp\28\29 +8819:skgpu::ganesh::ClearOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8820:skgpu::ganesh::ClearOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8821:skgpu::ganesh::ClearOp::name\28\29\20const +8822:skgpu::ganesh::AtlasTextOp::~AtlasTextOp\28\29.1 +8823:skgpu::ganesh::AtlasTextOp::visitProxies\28std::__2::function\20const&\29\20const +8824:skgpu::ganesh::AtlasTextOp::onPrepareDraws\28GrMeshDrawTarget*\29 +8825:skgpu::ganesh::AtlasTextOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +8826:skgpu::ganesh::AtlasTextOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +8827:skgpu::ganesh::AtlasTextOp::name\28\29\20const +8828:skgpu::ganesh::AtlasTextOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +8829:skgpu::ganesh::AtlasRenderTask::~AtlasRenderTask\28\29.1 +8830:skgpu::ganesh::AtlasRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +8831:skgpu::ganesh::AtlasRenderTask::onExecute\28GrOpFlushState*\29 +8832:skgpu::ganesh::AtlasPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8833:skgpu::ganesh::AtlasPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8834:skgpu::ganesh::AtlasPathRenderer::name\28\29\20const +8835:skgpu::ganesh::AALinearizingConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8836:skgpu::ganesh::AALinearizingConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8837:skgpu::ganesh::AALinearizingConvexPathRenderer::name\28\29\20const +8838:skgpu::ganesh::AAHairLinePathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8839:skgpu::ganesh::AAHairLinePathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8840:skgpu::ganesh::AAHairLinePathRenderer::name\28\29\20const +8841:skgpu::ganesh::AAConvexPathRenderer::onDrawPath\28skgpu::ganesh::PathRenderer::DrawPathArgs\20const&\29 +8842:skgpu::ganesh::AAConvexPathRenderer::onCanDrawPath\28skgpu::ganesh::PathRenderer::CanDrawPathArgs\20const&\29\20const +8843:skgpu::ganesh::AAConvexPathRenderer::name\28\29\20const +8844:skgpu::TAsyncReadResult::~TAsyncReadResult\28\29.1 +8845:skgpu::TAsyncReadResult::rowBytes\28int\29\20const +8846:skgpu::TAsyncReadResult::data\28int\29\20const +8847:skgpu::StringKeyBuilder::~StringKeyBuilder\28\29.1 +8848:skgpu::StringKeyBuilder::appendComment\28char\20const*\29 +8849:skgpu::StringKeyBuilder::addBits\28unsigned\20int\2c\20unsigned\20int\2c\20std::__2::basic_string_view>\29 +8850:skgpu::ShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\2c\20bool\29 +8851:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29.1 +8852:skgpu::RectanizerSkyline::~RectanizerSkyline\28\29 +8853:skgpu::RectanizerSkyline::percentFull\28\29\20const +8854:skgpu::RectanizerPow2::reset\28\29 +8855:skgpu::RectanizerPow2::percentFull\28\29\20const +8856:skgpu::RectanizerPow2::addRect\28int\2c\20int\2c\20SkIPoint16*\29 +8857:skgpu::Plot::~Plot\28\29.1 +8858:skgpu::KeyBuilder::~KeyBuilder\28\29 +8859:skgpu::DefaultShaderErrorHandler\28\29::DefaultShaderErrorHandler::compileError\28char\20const*\2c\20char\20const*\29 +8860:sk_mmap_releaseproc\28void\20const*\2c\20void*\29 +8861:sk_ft_stream_io\28FT_StreamRec_*\2c\20unsigned\20long\2c\20unsigned\20char*\2c\20unsigned\20long\29 +8862:sk_ft_realloc\28FT_MemoryRec_*\2c\20long\2c\20long\2c\20void*\29 +8863:sk_ft_alloc\28FT_MemoryRec_*\2c\20long\29 +8864:sk_fclose\28_IO_FILE*\29 +8865:skString_getData +8866:skString_free +8867:skString_allocate +8868:skString16_getData +8869:skString16_free +8870:skString16_allocate +8871:skData_dispose +8872:skData_create +8873:shader_createSweepGradient +8874:shader_createRuntimeEffectShader +8875:shader_createRadialGradient +8876:shader_createLinearGradient +8877:shader_createFromImage +8878:shader_createConicalGradient +8879:sfnt_table_info +8880:sfnt_stream_close +8881:sfnt_load_face +8882:sfnt_is_postscript +8883:sfnt_is_alphanumeric +8884:sfnt_init_face +8885:sfnt_get_ps_name +8886:sfnt_get_name_index +8887:sfnt_get_interface +8888:sfnt_get_glyph_name +8889:sfnt_get_charset_id +8890:sfnt_done_face +8891:setup_syllables_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8892:setup_syllables_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8893:setup_syllables_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8894:setup_syllables_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8895:setup_masks_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8896:setup_masks_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8897:setup_masks_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8898:setup_masks_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8899:setup_masks_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8900:setup_masks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8901:runtimeEffect_getUniformSize +8902:runtimeEffect_create +8903:reverse_hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +8904:reverse_hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +8905:reorder_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8906:reorder_myanmar\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8907:reorder_marks_hebrew\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +8908:reorder_marks_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20unsigned\20int\2c\20unsigned\20int\29 +8909:reorder_khmer\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8910:release_data\28void*\2c\20void*\29 +8911:rect_memcpy\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\2c\20SkColorSpaceXformSteps\20const&\29 +8912:record_stch\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8913:record_rphf_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8914:record_pref_use\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +8915:receive_notification +8916:read_data_from_FT_Stream +8917:pthread_self +8918:psnames_get_service +8919:pshinter_get_t2_funcs +8920:pshinter_get_t1_funcs +8921:pshinter_get_globals_funcs +8922:psh_globals_new +8923:psh_globals_destroy +8924:psaux_get_glyph_name +8925:ps_table_release +8926:ps_table_new +8927:ps_table_done +8928:ps_table_add +8929:ps_property_set +8930:ps_property_get +8931:ps_parser_to_int +8932:ps_parser_to_fixed_array +8933:ps_parser_to_fixed +8934:ps_parser_to_coord_array +8935:ps_parser_to_bytes +8936:ps_parser_load_field_table +8937:ps_parser_init +8938:ps_hints_t2mask +8939:ps_hints_t2counter +8940:ps_hints_t1stem3 +8941:ps_hints_t1reset +8942:ps_hints_close +8943:ps_hints_apply +8944:ps_hinter_init +8945:ps_hinter_done +8946:ps_get_standard_strings +8947:ps_get_macintosh_name +8948:ps_decoder_init +8949:preprocess_text_use\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8950:preprocess_text_thai\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8951:preprocess_text_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8952:preprocess_text_hangul\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8953:premultiply_data +8954:premul_rgb\28SkRGBA4f<\28SkAlphaType\292>\29 +8955:premul_polar\28SkRGBA4f<\28SkAlphaType\292>\29 +8956:postprocess_glyphs_arabic\28hb_ot_shape_plan_t\20const*\2c\20hb_buffer_t*\2c\20hb_font_t*\29 +8957:portable::xy_to_unit_angle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8958:portable::xy_to_radius\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8959:portable::xy_to_2pt_conical_well_behaved\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8960:portable::xy_to_2pt_conical_strip\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8961:portable::xy_to_2pt_conical_smaller\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8962:portable::xy_to_2pt_conical_greater\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8963:portable::xy_to_2pt_conical_focal_on_circle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8964:portable::xor_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8965:portable::white_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8966:portable::unpremul_polar\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8967:portable::unpremul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8968:portable::uniform_color_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8969:portable::trace_var\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8970:portable::trace_scope\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8971:portable::trace_line\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8972:portable::trace_exit\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8973:portable::trace_enter\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8974:portable::tan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8975:portable::swizzle_copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8976:portable::swizzle_copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8977:portable::swizzle_copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8978:portable::swizzle_copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8979:portable::swizzle_copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8980:portable::swizzle_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8981:portable::swizzle_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8982:portable::swizzle_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8983:portable::swizzle_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8984:portable::swizzle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8985:portable::swap_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8986:portable::swap_rb_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8987:portable::swap_rb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8988:portable::sub_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8989:portable::sub_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8990:portable::sub_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8991:portable::sub_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8992:portable::sub_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8993:portable::sub_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8994:portable::sub_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8995:portable::sub_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8996:portable::sub_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8997:portable::sub_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8998:portable::store_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +8999:portable::store_src_a\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9000:portable::store_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9001:portable::store_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9002:portable::store_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9003:portable::store_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9004:portable::store_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9005:portable::store_r8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9006:portable::store_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9007:portable::store_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9008:portable::store_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9009:portable::store_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9010:portable::store_device_xy01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9011:portable::store_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9012:portable::store_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9013:portable::store_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9014:portable::store_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9015:portable::store_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9016:portable::store_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9017:portable::store_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9018:portable::store_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9019:portable::store_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9020:portable::store_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9021:portable::store_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9022:portable::store_10101010_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9023:portable::start_pipeline\28unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20unsigned\20long\2c\20SkRasterPipelineStage*\2c\20SkSpan\2c\20unsigned\20char*\29 +9024:portable::stack_rewind\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9025:portable::stack_checkpoint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9026:portable::srcover_rgba_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9027:portable::srcover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9028:portable::srcout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9029:portable::srcin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9030:portable::srcatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9031:portable::sqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9032:portable::splat_4_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9033:portable::splat_3_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9034:portable::splat_2_constants\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9035:portable::softlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9036:portable::smoothstep_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9037:portable::sin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9038:portable::shuffle\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9039:portable::set_base_pointer\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9040:portable::seed_shader\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9041:portable::screen\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9042:portable::scale_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9043:portable::scale_native\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9044:portable::scale_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9045:portable::scale_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9046:portable::saturation\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9047:portable::rgb_to_hsl\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9048:portable::repeat_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9049:portable::repeat_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9050:portable::repeat_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9051:portable::refract_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9052:portable::reenable_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9053:portable::premul_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9054:portable::premul\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9055:portable::pow_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9056:portable::plus_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9057:portable::perlin_noise\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9058:portable::parametric\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9059:portable::overlay\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9060:portable::negate_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9061:portable::multiply\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9062:portable::mul_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9063:portable::mul_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9064:portable::mul_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9065:portable::mul_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9066:portable::mul_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9067:portable::mul_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9068:portable::mul_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9069:portable::mul_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9070:portable::mul_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9071:portable::mul_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9072:portable::mul_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9073:portable::mul_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9074:portable::move_src_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9075:portable::move_dst_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9076:portable::modulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9077:portable::mod_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9078:portable::mod_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9079:portable::mod_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9080:portable::mod_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9081:portable::mod_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9082:portable::mix_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9083:portable::mix_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9084:portable::mix_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9085:portable::mix_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9086:portable::mix_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9087:portable::mix_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9088:portable::mix_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9089:portable::mix_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9090:portable::mix_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9091:portable::mix_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9092:portable::mirror_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9093:portable::mirror_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9094:portable::mirror_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9095:portable::mipmap_linear_update\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9096:portable::mipmap_linear_init\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9097:portable::mipmap_linear_finish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9098:portable::min_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9099:portable::min_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9100:portable::min_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9101:portable::min_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9102:portable::min_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9103:portable::min_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9104:portable::min_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9105:portable::min_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9106:portable::min_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9107:portable::min_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9108:portable::min_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9109:portable::min_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9110:portable::min_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9111:portable::min_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9112:portable::min_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9113:portable::min_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9114:portable::merge_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9115:portable::merge_inv_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9116:portable::merge_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9117:portable::max_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9118:portable::max_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9119:portable::max_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9120:portable::max_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9121:portable::max_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9122:portable::max_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9123:portable::max_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9124:portable::max_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9125:portable::max_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9126:portable::max_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9127:portable::max_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9128:portable::max_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9129:portable::max_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9130:portable::max_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9131:portable::max_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9132:portable::max_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9133:portable::matrix_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9134:portable::matrix_scale_translate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9135:portable::matrix_perspective\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9136:portable::matrix_multiply_4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9137:portable::matrix_multiply_3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9138:portable::matrix_multiply_2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9139:portable::matrix_4x5\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9140:portable::matrix_4x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9141:portable::matrix_3x4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9142:portable::matrix_3x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9143:portable::matrix_2x3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9144:portable::mask_off_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9145:portable::mask_off_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9146:portable::mask_2pt_conical_nan\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9147:portable::mask_2pt_conical_degenerates\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9148:portable::luminosity\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9149:portable::log_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9150:portable::log2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9151:portable::load_src_rg\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9152:portable::load_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9153:portable::load_rgf16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9154:portable::load_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9155:portable::load_rg88_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9156:portable::load_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9157:portable::load_rg1616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9158:portable::load_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9159:portable::load_return_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9160:portable::load_loop_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9161:portable::load_f32_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9162:portable::load_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9163:portable::load_f16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9164:portable::load_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9165:portable::load_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9166:portable::load_condition_mask\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9167:portable::load_af16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9168:portable::load_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9169:portable::load_a8_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9170:portable::load_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9171:portable::load_a16_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9172:portable::load_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9173:portable::load_8888_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9174:portable::load_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9175:portable::load_565_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9176:portable::load_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9177:portable::load_4444_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9178:portable::load_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9179:portable::load_16161616_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9180:portable::load_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9181:portable::load_10x6_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9182:portable::load_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9183:portable::load_1010102_xr_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9184:portable::load_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9185:portable::load_1010102_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9186:portable::load_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9187:portable::load_10101010_xr_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9188:portable::load_10101010_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9189:portable::lighten\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9190:portable::lerp_u8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9191:portable::lerp_native\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9192:portable::lerp_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9193:portable::lerp_1_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9194:portable::just_return\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9195:portable::jump\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9196:portable::invsqrt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9197:portable::invsqrt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9198:portable::invsqrt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9199:portable::invsqrt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9200:portable::inverse_mat4\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9201:portable::inverse_mat3\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9202:portable::inverse_mat2\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9203:portable::init_lane_masks\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9204:portable::hue\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9205:portable::hsl_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9206:portable::hardlight\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9207:portable::gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9208:portable::gauss_a_to_rgba\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9209:portable::gather_rgf16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9210:portable::gather_rg88\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9211:portable::gather_rg1616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9212:portable::gather_f32\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9213:portable::gather_f16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9214:portable::gather_af16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9215:portable::gather_a8\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9216:portable::gather_a16\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9217:portable::gather_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9218:portable::gather_565\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9219:portable::gather_4444\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9220:portable::gather_16161616\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9221:portable::gather_10x6\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9222:portable::gather_1010102_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9223:portable::gather_1010102\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9224:portable::gather_10101010_xr\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9225:portable::gamma_\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9226:portable::force_opaque_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9227:portable::force_opaque\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9228:portable::floor_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9229:portable::floor_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9230:portable::floor_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9231:portable::floor_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9232:portable::exp_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9233:portable::exp2_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9234:portable::exclusion\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9235:portable::exchange_src\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9236:portable::evenly_spaced_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9237:portable::evenly_spaced_2_stop_gradient\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9238:portable::emboss\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9239:portable::dstover\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9240:portable::dstout\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9241:portable::dstin\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9242:portable::dstatop\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9243:portable::dot_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9244:portable::dot_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9245:portable::dot_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9246:portable::div_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9247:portable::div_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9248:portable::div_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9249:portable::div_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9250:portable::div_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9251:portable::div_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9252:portable::div_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9253:portable::div_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9254:portable::div_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9255:portable::div_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9256:portable::div_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9257:portable::div_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9258:portable::div_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9259:portable::div_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9260:portable::div_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9261:portable::dither\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9262:portable::difference\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9263:portable::decal_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9264:portable::decal_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9265:portable::decal_x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9266:portable::darken\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9267:portable::css_oklab_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9268:portable::css_oklab_gamut_map_to_linear_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9269:portable::css_lab_to_xyz\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9270:portable::css_hwb_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9271:portable::css_hsl_to_srgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9272:portable::css_hcl_to_lab\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9273:portable::cos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9274:portable::copy_uniform\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9275:portable::copy_to_indirect_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9276:portable::copy_slot_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9277:portable::copy_slot_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9278:portable::copy_immutable_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9279:portable::copy_constant\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9280:portable::copy_4_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9281:portable::copy_4_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9282:portable::copy_4_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9283:portable::copy_4_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9284:portable::copy_3_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9285:portable::copy_3_slots_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9286:portable::copy_3_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9287:portable::copy_3_immutables_unmasked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9288:portable::copy_2_uniforms\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9289:portable::copy_2_slots_masked\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9290:portable::continue_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9291:portable::colordodge\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9292:portable::colorburn\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9293:portable::color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9294:portable::cmpne_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9295:portable::cmpne_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9296:portable::cmpne_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9297:portable::cmpne_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9298:portable::cmpne_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9299:portable::cmpne_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9300:portable::cmpne_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9301:portable::cmpne_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9302:portable::cmpne_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9303:portable::cmpne_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9304:portable::cmpne_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9305:portable::cmpne_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9306:portable::cmplt_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9307:portable::cmplt_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9308:portable::cmplt_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9309:portable::cmplt_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9310:portable::cmplt_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9311:portable::cmplt_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9312:portable::cmplt_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9313:portable::cmplt_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9314:portable::cmplt_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9315:portable::cmplt_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9316:portable::cmplt_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9317:portable::cmplt_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9318:portable::cmplt_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9319:portable::cmplt_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9320:portable::cmplt_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9321:portable::cmplt_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9322:portable::cmplt_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9323:portable::cmplt_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9324:portable::cmple_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9325:portable::cmple_n_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9326:portable::cmple_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9327:portable::cmple_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9328:portable::cmple_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9329:portable::cmple_imm_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9330:portable::cmple_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9331:portable::cmple_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9332:portable::cmple_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9333:portable::cmple_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9334:portable::cmple_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9335:portable::cmple_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9336:portable::cmple_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9337:portable::cmple_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9338:portable::cmple_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9339:portable::cmple_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9340:portable::cmple_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9341:portable::cmple_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9342:portable::cmpeq_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9343:portable::cmpeq_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9344:portable::cmpeq_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9345:portable::cmpeq_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9346:portable::cmpeq_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9347:portable::cmpeq_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9348:portable::cmpeq_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9349:portable::cmpeq_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9350:portable::cmpeq_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9351:portable::cmpeq_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9352:portable::cmpeq_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9353:portable::cmpeq_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9354:portable::clear\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9355:portable::clamp_x_and_y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9356:portable::clamp_x_1\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9357:portable::clamp_gamut\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9358:portable::clamp_01\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9359:portable::ceil_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9360:portable::ceil_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9361:portable::ceil_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9362:portable::ceil_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9363:portable::cast_to_uint_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9364:portable::cast_to_uint_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9365:portable::cast_to_uint_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9366:portable::cast_to_uint_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9367:portable::cast_to_int_from_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9368:portable::cast_to_int_from_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9369:portable::cast_to_int_from_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9370:portable::cast_to_int_from_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9371:portable::cast_to_float_from_uint\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9372:portable::cast_to_float_from_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9373:portable::cast_to_float_from_4_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9374:portable::cast_to_float_from_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9375:portable::cast_to_float_from_3_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9376:portable::cast_to_float_from_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9377:portable::cast_to_float_from_2_uints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9378:portable::cast_to_float_from_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9379:portable::case_op\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9380:portable::callback\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9381:portable::byte_tables\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9382:portable::bt709_luminance_or_luma_to_rgb\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9383:portable::bt709_luminance_or_luma_to_alpha\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9384:portable::branch_if_no_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9385:portable::branch_if_no_active_lanes_eq\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9386:portable::branch_if_any_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9387:portable::branch_if_all_lanes_active\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9388:portable::blit_row_s32a_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +9389:portable::black_color\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9390:portable::bitwise_xor_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9391:portable::bitwise_xor_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9392:portable::bitwise_xor_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9393:portable::bitwise_xor_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9394:portable::bitwise_xor_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9395:portable::bitwise_xor_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9396:portable::bitwise_or_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9397:portable::bitwise_or_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9398:portable::bitwise_or_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9399:portable::bitwise_or_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9400:portable::bitwise_or_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9401:portable::bitwise_and_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9402:portable::bitwise_and_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9403:portable::bitwise_and_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9404:portable::bitwise_and_imm_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9405:portable::bitwise_and_imm_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9406:portable::bitwise_and_imm_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9407:portable::bitwise_and_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9408:portable::bitwise_and_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9409:portable::bitwise_and_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9410:portable::bilinear_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9411:portable::bilinear_py\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9412:portable::bilinear_px\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9413:portable::bilinear_ny\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9414:portable::bilinear_nx\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9415:portable::bilerp_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9416:portable::bicubic_setup\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9417:portable::bicubic_p3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9418:portable::bicubic_p3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9419:portable::bicubic_p1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9420:portable::bicubic_p1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9421:portable::bicubic_n3y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9422:portable::bicubic_n3x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9423:portable::bicubic_n1y\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9424:portable::bicubic_n1x\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9425:portable::bicubic_clamp_8888\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9426:portable::atan_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9427:portable::atan2_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9428:portable::asin_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9429:portable::alter_2pt_conical_unswap\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9430:portable::alter_2pt_conical_compensate_focal\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9431:portable::alpha_to_red_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9432:portable::alpha_to_red\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9433:portable::alpha_to_gray_dst\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9434:portable::alpha_to_gray\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9435:portable::add_n_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9436:portable::add_n_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9437:portable::add_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9438:portable::add_imm_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9439:portable::add_imm_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9440:portable::add_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9441:portable::add_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9442:portable::add_4_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9443:portable::add_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9444:portable::add_3_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9445:portable::add_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9446:portable::add_2_floats\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9447:portable::acos_float\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9448:portable::accumulate\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9449:portable::abs_int\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9450:portable::abs_4_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9451:portable::abs_3_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9452:portable::abs_2_ints\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9453:portable::RGBA_to_rgbA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +9454:portable::RGBA_to_bgrA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +9455:portable::RGBA_to_BGRA\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\29 +9456:portable::PQish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9457:portable::HLGish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9458:portable::HLGinvish\28portable::Params*\2c\20SkRasterPipelineStage*\2c\20float\2c\20float\2c\20float\2c\20float\29 +9459:pop_arg_long_double +9460:png_read_filter_row_up +9461:png_read_filter_row_sub +9462:png_read_filter_row_paeth_multibyte_pixel +9463:png_read_filter_row_paeth_1byte_pixel +9464:png_read_filter_row_avg +9465:picture_getCullRect +9466:pictureRecorder_endRecording +9467:pictureRecorder_dispose +9468:pictureRecorder_create +9469:pictureRecorder_beginRecording +9470:path_transform +9471:path_setFillType +9472:path_reset +9473:path_relativeQuadraticBezierTo +9474:path_relativeMoveTo +9475:path_relativeLineTo +9476:path_relativeCubicTo +9477:path_relativeConicTo +9478:path_relativeArcToRotated +9479:path_moveTo +9480:path_lineTo +9481:path_getFillType +9482:path_getBounds +9483:path_dispose +9484:path_create +9485:path_copy +9486:path_contains +9487:path_conicTo +9488:path_combine +9489:path_close +9490:path_arcToRotated +9491:path_arcToOval +9492:path_addRect +9493:path_addRRect +9494:path_addPolygon +9495:path_addPath +9496:path_addArc +9497:paragraph_layout +9498:paragraph_getWordBoundary +9499:paragraph_getWidth +9500:paragraph_getUnresolvedCodePoints +9501:paragraph_getPositionForOffset +9502:paragraph_getMinIntrinsicWidth +9503:paragraph_getMaxIntrinsicWidth +9504:paragraph_getLongestLine +9505:paragraph_getLineNumberAt +9506:paragraph_getLineMetricsAtIndex +9507:paragraph_getLineCount +9508:paragraph_getIdeographicBaseline +9509:paragraph_getHeight +9510:paragraph_getGlyphInfoAt +9511:paragraph_getDidExceedMaxLines +9512:paragraph_getClosestGlyphInfoAtCoordinate +9513:paragraph_getBoxesForRange +9514:paragraph_getBoxesForPlaceholders +9515:paragraph_getAlphabeticBaseline +9516:paragraphStyle_setTextStyle +9517:paragraphStyle_setTextHeightBehavior +9518:paragraphStyle_setTextDirection +9519:paragraphStyle_setTextAlign +9520:paragraphStyle_setStrutStyle +9521:paragraphStyle_setMaxLines +9522:paragraphStyle_setHeight +9523:paragraphStyle_setEllipsis +9524:paragraphStyle_setApplyRoundingHack +9525:paragraphStyle_dispose +9526:paragraphStyle_create +9527:paragraphBuilder_setWordBreaksUtf16 +9528:paragraphBuilder_setLineBreaksUtf16 +9529:paragraphBuilder_setGraphemeBreaksUtf16 +9530:paragraphBuilder_pushStyle +9531:paragraphBuilder_pop +9532:paragraphBuilder_getUtf8Text +9533:paragraphBuilder_create +9534:paragraphBuilder_build +9535:paragraphBuilder_addText +9536:paragraphBuilder_addPlaceholder +9537:paint_setStyle +9538:paint_setStrokeWidth +9539:paint_setStrokeJoin +9540:paint_setStrokeCap +9541:paint_setShader +9542:paint_setMiterLimit +9543:paint_setMaskFilter +9544:paint_setImageFilter +9545:paint_setColorInt +9546:paint_setColorFilter +9547:paint_setBlendMode +9548:paint_setAntiAlias +9549:paint_getStyle +9550:paint_getStrokeJoin +9551:paint_getStrokeCap +9552:paint_getMiterLimit +9553:paint_getColorInt +9554:paint_getAntiAlias +9555:paint_dispose +9556:paint_create +9557:override_features_khmer\28hb_ot_shape_planner_t*\29 +9558:override_features_indic\28hb_ot_shape_planner_t*\29 +9559:override_features_hangul\28hb_ot_shape_planner_t*\29 +9560:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29.1 +9561:non-virtual\20thunk\20to\20std::__2::basic_stringstream\2c\20std::__2::allocator>::~basic_stringstream\28\29 +9562:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29.1 +9563:non-virtual\20thunk\20to\20std::__2::basic_iostream>::~basic_iostream\28\29 +9564:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.3 +9565:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.2 +9566:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29.1 +9567:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::~GaneshBackend\28\29 +9568:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::makeDevice\28SkImageInfo\20const&\29\20const +9569:non-virtual\20thunk\20to\20skif::\28anonymous\20namespace\29::GaneshBackend::findAlgorithm\28SkSize\2c\20SkColorType\29\20const +9570:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29.1 +9571:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::~SmallPathAtlasMgr\28\29 +9572:non-virtual\20thunk\20to\20skgpu::ganesh::SmallPathAtlasMgr::evict\28skgpu::PlotLocator\29 +9573:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29.1 +9574:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::~AtlasPathRenderer\28\29 +9575:non-virtual\20thunk\20to\20skgpu::ganesh::AtlasPathRenderer::preFlush\28GrOnFlushResourceProvider*\29 +9576:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +9577: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 +9578: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 +9579:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +9580: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 +9581:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29.1 +9582:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::~SDFTSubRun\28\29 +9583: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 +9584: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 +9585:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::SDFTSubRun::glyphCount\28\29\20const +9586: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 +9587:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +9588: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 +9589: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 +9590:non-virtual\20thunk\20to\20\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +9591: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 +9592:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29.1 +9593:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::~GrTextureRenderTargetProxy\28\29 +9594:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::onUninstantiatedGpuMemorySize\28\29\20const +9595:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::instantiate\28GrResourceProvider*\29 +9596:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::createSurface\28GrResourceProvider*\29\20const +9597:non-virtual\20thunk\20to\20GrTextureRenderTargetProxy::callbackDesc\28\29\20const +9598:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29.1 +9599:non-virtual\20thunk\20to\20GrOpFlushState::~GrOpFlushState\28\29 +9600:non-virtual\20thunk\20to\20GrOpFlushState::writeView\28\29\20const +9601:non-virtual\20thunk\20to\20GrOpFlushState::usesMSAASurface\28\29\20const +9602:non-virtual\20thunk\20to\20GrOpFlushState::threadSafeCache\28\29\20const +9603:non-virtual\20thunk\20to\20GrOpFlushState::strikeCache\28\29\20const +9604:non-virtual\20thunk\20to\20GrOpFlushState::smallPathAtlasManager\28\29\20const +9605:non-virtual\20thunk\20to\20GrOpFlushState::sampledProxyArray\28\29 +9606:non-virtual\20thunk\20to\20GrOpFlushState::rtProxy\28\29\20const +9607:non-virtual\20thunk\20to\20GrOpFlushState::resourceProvider\28\29\20const +9608:non-virtual\20thunk\20to\20GrOpFlushState::renderPassBarriers\28\29\20const +9609:non-virtual\20thunk\20to\20GrOpFlushState::recordDraw\28GrGeometryProcessor\20const*\2c\20GrSimpleMesh\20const*\2c\20int\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPrimitiveType\29 +9610:non-virtual\20thunk\20to\20GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +9611:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndirectDraws\28int\29 +9612:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndices\28int\29 +9613:non-virtual\20thunk\20to\20GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +9614:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +9615:non-virtual\20thunk\20to\20GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +9616:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +9617:non-virtual\20thunk\20to\20GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +9618:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +9619:non-virtual\20thunk\20to\20GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +9620:non-virtual\20thunk\20to\20GrOpFlushState::dstProxyView\28\29\20const +9621:non-virtual\20thunk\20to\20GrOpFlushState::detachAppliedClip\28\29 +9622:non-virtual\20thunk\20to\20GrOpFlushState::colorLoadOp\28\29\20const +9623:non-virtual\20thunk\20to\20GrOpFlushState::caps\28\29\20const +9624:non-virtual\20thunk\20to\20GrOpFlushState::atlasManager\28\29\20const +9625:non-virtual\20thunk\20to\20GrOpFlushState::appliedClip\28\29\20const +9626:non-virtual\20thunk\20to\20GrGpuBuffer::unref\28\29\20const +9627:non-virtual\20thunk\20to\20GrGpuBuffer::ref\28\29\20const +9628:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29.1 +9629:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::~GrGLTextureRenderTarget\28\29 +9630:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onSetLabel\28\29 +9631:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onRelease\28\29 +9632:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onGpuMemorySize\28\29\20const +9633:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::onAbandon\28\29 +9634:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +9635:non-virtual\20thunk\20to\20GrGLTextureRenderTarget::backendFormat\28\29\20const +9636:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29.1 +9637:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +9638:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +9639:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::enableAdvancedBlendEquationIfNeeded\28skgpu::BlendEquation\29 +9640:non-virtual\20thunk\20to\20GrGLSLFragmentShaderBuilder::dstColor\28\29 +9641:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29.1 +9642:non-virtual\20thunk\20to\20GrGLBuffer::~GrGLBuffer\28\29 +9643:maskFilter_createBlur +9644:lineMetrics_getWidth +9645:lineMetrics_getUnscaledAscent +9646:lineMetrics_getLeft +9647:lineMetrics_getHeight +9648:lineMetrics_getDescent +9649:lineMetrics_getBaseline +9650:lineMetrics_getAscent +9651:lineMetrics_dispose +9652:lineMetrics_create +9653:lineBreakBuffer_create +9654:lin_srgb_to_okhcl\28SkRGBA4f<\28SkAlphaType\292>\2c\20bool*\29 +9655:legalfunc$glWaitSync +9656:legalfunc$glClientWaitSync +9657:lcd_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +9658:is_deleted_glyph\28hb_glyph_info_t\20const*\29 +9659:initial_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9660:image_getHeight +9661:image_createFromTextureSource +9662:image_createFromPixels +9663:image_createFromPicture +9664:imageFilter_getFilterBounds +9665:imageFilter_createMatrix +9666:imageFilter_createFromColorFilter +9667:imageFilter_createErode +9668:imageFilter_createDilate +9669:imageFilter_createBlur +9670:imageFilter_compose +9671:hit_compare_y\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +9672:hit_compare_x\28SkOpRayHit\20const*\2c\20SkOpRayHit\20const*\29 +9673:hb_unicode_script_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9674:hb_unicode_general_category_nil\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9675:hb_ucd_script\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9676:hb_ucd_mirroring\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9677:hb_ucd_general_category\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9678:hb_ucd_decompose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\2c\20void*\29 +9679:hb_ucd_compose\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9680:hb_ucd_combining_class\28hb_unicode_funcs_t*\2c\20unsigned\20int\2c\20void*\29 +9681:hb_syllabic_clear_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9682: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 +9683: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 +9684:hb_paint_push_clip_rectangle_nil\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9685: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 +9686: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 +9687:hb_paint_extents_push_group\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +9688:hb_paint_extents_push_clip_rectangle\28hb_paint_funcs_t*\2c\20void*\2c\20float\2c\20float\2c\20float\2c\20float\2c\20void*\29 +9689:hb_paint_extents_push_clip_glyph\28hb_paint_funcs_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_font_t*\2c\20void*\29 +9690:hb_paint_extents_pop_transform\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +9691:hb_paint_extents_pop_group\28hb_paint_funcs_t*\2c\20void*\2c\20hb_paint_composite_mode_t\2c\20void*\29 +9692:hb_paint_extents_pop_clip\28hb_paint_funcs_t*\2c\20void*\2c\20void*\29 +9693: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 +9694: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 +9695:hb_paint_extents_paint_color\28hb_paint_funcs_t*\2c\20void*\2c\20int\2c\20unsigned\20int\2c\20void*\29 +9696: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 +9697:hb_outline_recording_pen_move_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +9698:hb_outline_recording_pen_line_to\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +9699: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 +9700:hb_outline_recording_pen_close_path\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +9701: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 +9702:hb_ot_map_t::lookup_map_t::cmp\28void\20const*\2c\20void\20const*\29 +9703:hb_ot_map_t::feature_map_t::cmp\28void\20const*\2c\20void\20const*\29 +9704:hb_ot_map_builder_t::feature_info_t::cmp\28void\20const*\2c\20void\20const*\29 +9705:hb_ot_get_variation_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9706: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 +9707:hb_ot_get_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9708:hb_ot_get_glyph_v_origin\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9709: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 +9710:hb_ot_get_glyph_name\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +9711: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 +9712:hb_ot_get_glyph_from_name\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +9713:hb_ot_get_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +9714:hb_ot_get_font_v_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +9715:hb_ot_get_font_h_extents\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +9716:hb_ot_draw_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +9717: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 +9718: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 +9719:hb_font_get_variation_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9720: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 +9721:hb_font_get_nominal_glyph_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9722:hb_font_get_nominal_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +9723:hb_font_get_glyph_v_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9724:hb_font_get_glyph_v_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9725:hb_font_get_glyph_v_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +9726: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 +9727:hb_font_get_glyph_v_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +9728:hb_font_get_glyph_v_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +9729:hb_font_get_glyph_name_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +9730:hb_font_get_glyph_name_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20char*\2c\20unsigned\20int\2c\20void*\29 +9731:hb_font_get_glyph_h_origin_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9732:hb_font_get_glyph_h_origin_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20int*\2c\20int*\2c\20void*\29 +9733:hb_font_get_glyph_h_kerning_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20void*\29 +9734: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 +9735:hb_font_get_glyph_h_advance_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +9736:hb_font_get_glyph_h_advance_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +9737:hb_font_get_glyph_from_name_default\28hb_font_t*\2c\20void*\2c\20char\20const*\2c\20int\2c\20unsigned\20int*\2c\20void*\29 +9738:hb_font_get_glyph_extents_nil\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +9739:hb_font_get_glyph_extents_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +9740: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 +9741: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 +9742:hb_font_get_font_v_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +9743:hb_font_get_font_h_extents_default\28hb_font_t*\2c\20void*\2c\20hb_font_extents_t*\2c\20void*\29 +9744:hb_font_draw_glyph_default\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_draw_funcs_t*\2c\20void*\2c\20void*\29 +9745: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 +9746: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 +9747:hb_draw_move_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +9748:hb_draw_line_to_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20float\2c\20float\2c\20void*\29 +9749: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 +9750: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 +9751: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 +9752:hb_draw_close_path_default\28hb_draw_funcs_t*\2c\20void*\2c\20hb_draw_state_t*\2c\20void*\29 +9753:hb_buffer_t::_cluster_group_func\28hb_glyph_info_t\20const&\2c\20hb_glyph_info_t\20const&\29 +9754:hb_aat_map_builder_t::feature_event_t::cmp\28void\20const*\2c\20void\20const*\29 +9755:gray_raster_render +9756:gray_raster_new +9757:gray_raster_done +9758:gray_move_to +9759:gray_line_to +9760:gray_cubic_to +9761:gray_conic_to +9762:get_sfnt_table +9763:ft_smooth_transform +9764:ft_smooth_set_mode +9765:ft_smooth_render +9766:ft_smooth_overlap_spans +9767:ft_smooth_lcd_spans +9768:ft_smooth_init +9769:ft_smooth_get_cbox +9770:ft_gzip_free +9771:ft_ansi_stream_io +9772:ft_ansi_stream_close +9773:fquad_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9774:fontCollection_registerTypeface +9775:fontCollection_dispose +9776:fontCollection_create +9777:fontCollection_clearCaches +9778:fmt_fp +9779:fline_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9780:final_reordering_indic\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9781:fcubic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9782:fconic_dxdy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9783:error_callback +9784:emscripten_stack_set_limits +9785:emscripten_dispatch_to_thread_ +9786:emscripten_current_thread_process_queued_calls +9787:dquad_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9788:dline_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9789:dispose_external_texture\28void*\29 +9790:decompose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +9791:decompose_khmer\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +9792:decompose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20unsigned\20int*\29 +9793: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 +9794: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 +9795: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 +9796:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28skgpu::tess::PatchAttribs&\29::'lambda'\28void*\29>\28skgpu::ganesh::StrokeTessellator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9797: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 +9798: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 +9799: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 +9800:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerSkyline&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9801:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28int&\2c\20int&\29::'lambda'\28void*\29>\28skgpu::RectanizerPow2&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9802: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 +9803: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 +9804: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 +9805: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 +9806: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 +9807: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 +9808: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 +9809:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28bool&&\2c\20bool\20const&\29::'lambda'\28void*\29>\28SkTriColorShader&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9810:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTCubic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9811:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkTConic&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9812:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\29::'lambda'\28void*\29>\28SkSpriteBlitter_Memcpy&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9813: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 +9814:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPixmap\20const&\2c\20SkArenaAlloc*&\29::'lambda'\28void*\29>\28SkRasterPipelineBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9815:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkNullBlitter&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9816: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 +9817:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::PathData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9818:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28SkGlyph::DrawableData&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9819:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkGlyph&&\29::'lambda'\28void*\29>\28SkGlyph&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9820: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 +9821: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 +9822: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 +9823: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 +9824:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28\29::'lambda'\28void*\29>\28GrSimpleMesh&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9825: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 +9826:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28SkPath\20const&\2c\20SkArenaAlloc*\20const&\29::'lambda'\28void*\29>\28GrInnerFanTriangulator&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9827: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 +9828: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 +9829:decltype\28fp\28nullptr\29\29\20SkArenaAlloc::make\28GrAppliedClip&&\29::'lambda'\28void*\29>\28GrAppliedClip&&\29::'lambda'\28char*\29::__invoke\28char*\29 +9830: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 +9831: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 +9832: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 +9833: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 +9834: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 +9835: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 +9836: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 +9837: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 +9838: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 +9839: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 +9840: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 +9841: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 +9842: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 +9843:deallocate_buffer_var\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +9844:ddquad_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9845:ddquad_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9846:ddline_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9847:ddline_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9848:ddcubic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9849:ddcubic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9850:ddconic_xy_at_t\28SkDCurve\20const&\2c\20double\29 +9851:ddconic_dxdy_at_t\28SkDCurve\20const&\2c\20double\29 +9852:dconic_xy_at_t\28SkPoint\20const*\2c\20float\2c\20double\29 +9853:data_destroy_use\28void*\29 +9854:data_create_use\28hb_ot_shape_plan_t\20const*\29 +9855:data_create_khmer\28hb_ot_shape_plan_t\20const*\29 +9856:data_create_indic\28hb_ot_shape_plan_t\20const*\29 +9857:data_create_hangul\28hb_ot_shape_plan_t\20const*\29 +9858:convert_to_alpha8\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageInfo\20const&\2c\20void\20const*\2c\20unsigned\20long\2c\20SkColorSpaceXformSteps\20const&\29 +9859:convert_bytes_to_data +9860:contourMeasure_isClosed +9861:contourMeasure_getSegment +9862:contourMeasure_getPosTan +9863:contourMeasureIter_next +9864:contourMeasureIter_dispose +9865:contourMeasureIter_create +9866:compose_unicode\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9867:compose_indic\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9868:compose_hebrew\28hb_ot_shape_normalize_context_t\20const*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9869:compare_ppem +9870:compare_offsets +9871:compare_myanmar_order\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +9872:compare_combining_class\28hb_glyph_info_t\20const*\2c\20hb_glyph_info_t\20const*\29 +9873:colorFilter_createSRGBToLinearGamma +9874:colorFilter_createMode +9875:colorFilter_createMatrix +9876:colorFilter_createLinearToSRGBGamma +9877:colorFilter_compose +9878:collect_features_use\28hb_ot_shape_planner_t*\29 +9879:collect_features_myanmar\28hb_ot_shape_planner_t*\29 +9880:collect_features_khmer\28hb_ot_shape_planner_t*\29 +9881:collect_features_indic\28hb_ot_shape_planner_t*\29 +9882:collect_features_hangul\28hb_ot_shape_planner_t*\29 +9883:collect_features_arabic\28hb_ot_shape_planner_t*\29 +9884:clip\28SkPath\20const&\2c\20SkHalfPlane\20const&\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +9885:cleanup +9886:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitStatement\28SkSL::Statement\20const&\29 +9887:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +9888:check_for_passthrough_local_coords_and_dead_varyings\28SkSL::Program\20const&\2c\20unsigned\20int*\29::Visitor::visitExpression\28SkSL::Expression\20const&\29 +9889:cff_slot_init +9890:cff_slot_done +9891:cff_size_request +9892:cff_size_init +9893:cff_size_done +9894:cff_sid_to_glyph_name +9895:cff_set_var_design +9896:cff_set_mm_weightvector +9897:cff_set_mm_blend +9898:cff_set_instance +9899:cff_random +9900:cff_ps_has_glyph_names +9901:cff_ps_get_font_info +9902:cff_ps_get_font_extra +9903:cff_parse_vsindex +9904:cff_parse_private_dict +9905:cff_parse_multiple_master +9906:cff_parse_maxstack +9907:cff_parse_font_matrix +9908:cff_parse_font_bbox +9909:cff_parse_cid_ros +9910:cff_parse_blend +9911:cff_metrics_adjust +9912:cff_hadvance_adjust +9913:cff_get_var_design +9914:cff_get_var_blend +9915:cff_get_standard_encoding +9916:cff_get_ros +9917:cff_get_ps_name +9918:cff_get_name_index +9919:cff_get_mm_weightvector +9920:cff_get_mm_var +9921:cff_get_mm_blend +9922:cff_get_is_cid +9923:cff_get_interface +9924:cff_get_glyph_name +9925:cff_get_cmap_info +9926:cff_get_cid_from_glyph_index +9927:cff_get_advances +9928:cff_free_glyph_data +9929:cff_face_init +9930:cff_face_done +9931:cff_driver_init +9932:cff_done_blend +9933:cff_decoder_prepare +9934:cff_decoder_init +9935:cff_cmap_unicode_init +9936:cff_cmap_unicode_char_next +9937:cff_cmap_unicode_char_index +9938:cff_cmap_encoding_init +9939:cff_cmap_encoding_done +9940:cff_cmap_encoding_char_next +9941:cff_cmap_encoding_char_index +9942:cff_builder_start_point +9943:cf2_free_instance +9944:cf2_decoder_parse_charstrings +9945:cf2_builder_moveTo +9946:cf2_builder_lineTo +9947:cf2_builder_cubeTo +9948:canvas_translate +9949:canvas_transform +9950:canvas_skew +9951:canvas_scale +9952:canvas_saveLayer +9953:canvas_save +9954:canvas_rotate +9955:canvas_restoreToCount +9956:canvas_restore +9957:canvas_getTransform +9958:canvas_getSaveCount +9959:canvas_getLocalClipBounds +9960:canvas_getDeviceClipBounds +9961:canvas_drawVertices +9962:canvas_drawShadow +9963:canvas_drawRect +9964:canvas_drawRRect +9965:canvas_drawPoints +9966:canvas_drawPicture +9967:canvas_drawPath +9968:canvas_drawParagraph +9969:canvas_drawPaint +9970:canvas_drawOval +9971:canvas_drawLine +9972:canvas_drawImageRect +9973:canvas_drawImageNine +9974:canvas_drawImage +9975:canvas_drawDRRect +9976:canvas_drawColor +9977:canvas_drawCircle +9978:canvas_drawAtlas +9979:canvas_drawArc +9980:canvas_clipRect +9981:canvas_clipRRect +9982:canvas_clipPath +9983:cancel_notification +9984:bw_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +9985:bw_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9986:bw_pt_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9987:bw_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9988:bw_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +9989:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::SpotVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +9990:bool\20\28anonymous\20namespace\29::FindVisitor<\28anonymous\20namespace\29::AmbientVerticesFactory>\28SkResourceCache::Rec\20const&\2c\20void*\29 +9991:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9992:bool\20OT::hb_accelerate_subtables_context_t::apply_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9993:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9994:bool\20OT::hb_accelerate_subtables_context_t::apply_cached_to>\28void\20const*\2c\20OT::hb_ot_apply_context_t*\29 +9995:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9996:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9997:bool\20OT::cmap::accelerator_t::get_glyph_from_symbol\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9998:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +9999:bool\20OT::cmap::accelerator_t::get_glyph_from\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +10000: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 +10001: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 +10002: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 +10003: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 +10004: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 +10005: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 +10006: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 +10007: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 +10008:blit_row_s32a_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +10009:blit_row_s32_opaque\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +10010:blit_row_s32_blend\28unsigned\20int*\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int\29 +10011:argb32_to_a8\28unsigned\20char*\2c\20unsigned\20char\20const*\2c\20int\29 +10012:arabic_fallback_shape\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +10013:afm_parser_parse +10014:afm_parser_init +10015:afm_parser_done +10016:afm_compare_kern_pairs +10017:af_property_set +10018:af_property_get +10019:af_latin_metrics_scale +10020:af_latin_metrics_init +10021:af_latin_hints_init +10022:af_latin_hints_apply +10023:af_latin_get_standard_widths +10024:af_indic_metrics_scale +10025:af_indic_metrics_init +10026:af_indic_hints_init +10027:af_indic_hints_apply +10028:af_get_interface +10029:af_face_globals_free +10030:af_dummy_hints_init +10031:af_dummy_hints_apply +10032:af_cjk_metrics_init +10033:af_autofitter_load_glyph +10034:af_autofitter_init +10035:aa_square_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +10036:aa_poly_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +10037:aa_line_hair_proc\28PtProcRec\20const&\2c\20SkPoint\20const*\2c\20int\2c\20SkBlitter*\29 +10038:_hb_ot_font_destroy\28void*\29 +10039:_hb_glyph_info_is_default_ignorable\28hb_glyph_info_t\20const*\29 +10040:_hb_face_for_data_reference_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +10041:_hb_face_for_data_closure_destroy\28void*\29 +10042:_hb_clear_substitution_flags\28hb_ot_shape_plan_t\20const*\2c\20hb_font_t*\2c\20hb_buffer_t*\29 +10043:_hb_blob_destroy\28void*\29 +10044:_emscripten_tls_init +10045:_emscripten_thread_init +10046:_emscripten_thread_free_data +10047:_emscripten_thread_exit +10048:_emscripten_thread_crashed +10049:_emscripten_run_in_main_runtime_thread_js +10050:_emscripten_check_mailbox +10051:__wasm_init_memory +10052:__wasm_call_ctors +10053:__stdio_write +10054:__stdio_seek +10055:__stdio_read +10056:__stdio_close +10057:__emscripten_stdout_seek +10058:__cxxabiv1::__vmi_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +10059:__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 +10060:__cxxabiv1::__vmi_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +10061:__cxxabiv1::__si_class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +10062:__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 +10063:__cxxabiv1::__si_class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +10064:__cxxabiv1::__class_type_info::search_below_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +10065:__cxxabiv1::__class_type_info::search_above_dst\28__cxxabiv1::__dynamic_cast_info*\2c\20void\20const*\2c\20void\20const*\2c\20int\2c\20bool\29\20const +10066:__cxxabiv1::__class_type_info::has_unambiguous_public_base\28__cxxabiv1::__dynamic_cast_info*\2c\20void*\2c\20int\29\20const +10067:__cxxabiv1::__class_type_info::can_catch\28__cxxabiv1::__shim_type_info\20const*\2c\20void*&\29\20const +10068:__cxx_global_array_dtor.9479 +10069:__cxx_global_array_dtor.87 +10070:__cxx_global_array_dtor.8001 +10071:__cxx_global_array_dtor.72 +10072:__cxx_global_array_dtor.6137 +10073:__cxx_global_array_dtor.57 +10074:__cxx_global_array_dtor.5078 +10075:__cxx_global_array_dtor.4767 +10076:__cxx_global_array_dtor.44 +10077:__cxx_global_array_dtor.4207 +10078:__cxx_global_array_dtor.42 +10079:__cxx_global_array_dtor.403 +10080:__cxx_global_array_dtor.40 +10081:__cxx_global_array_dtor.38 +10082:__cxx_global_array_dtor.3789 +10083:__cxx_global_array_dtor.36 +10084:__cxx_global_array_dtor.340 +10085:__cxx_global_array_dtor.34 +10086:__cxx_global_array_dtor.32 +10087:__cxx_global_array_dtor.1988 +10088:__cxx_global_array_dtor.138 +10089:__cxx_global_array_dtor.135 +10090:__cxx_global_array_dtor.111 +10091:__cxx_global_array_dtor.1 +10092:__cxx_global_array_dtor +10093:__cxa_is_pointer_type +10094:\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 +10095:\28anonymous\20namespace\29::skhb_nominal_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +10096:\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 +10097:\28anonymous\20namespace\29::skhb_glyph_h_advance\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20void*\29 +10098:\28anonymous\20namespace\29::skhb_glyph_extents\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20hb_glyph_extents_t*\2c\20void*\29 +10099:\28anonymous\20namespace\29::skhb_glyph\28hb_font_t*\2c\20void*\2c\20unsigned\20int\2c\20unsigned\20int\2c\20unsigned\20int*\2c\20void*\29 +10100:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29::$_0::__invoke\28void*\29 +10101:\28anonymous\20namespace\29::skhb_get_table\28hb_face_t*\2c\20unsigned\20int\2c\20void*\29 +10102:\28anonymous\20namespace\29::make_morphology\28\28anonymous\20namespace\29::MorphType\2c\20SkSize\2c\20sk_sp\2c\20SkImageFilters::CropRect\20const&\29 +10103:\28anonymous\20namespace\29::create_sub_hb_font\28SkFont\20const&\2c\20std::__2::unique_ptr>\20const&\29::$_0::__invoke\28void*\29 +10104:\28anonymous\20namespace\29::YUVPlanesRec::~YUVPlanesRec\28\29.1 +10105:\28anonymous\20namespace\29::YUVPlanesRec::getCategory\28\29\20const +10106:\28anonymous\20namespace\29::YUVPlanesRec::diagnostic_only_getDiscardable\28\29\20const +10107:\28anonymous\20namespace\29::YUVPlanesRec::bytesUsed\28\29\20const +10108:\28anonymous\20namespace\29::YUVPlanesRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +10109:\28anonymous\20namespace\29::UniqueKeyInvalidator::~UniqueKeyInvalidator\28\29.1 +10110:\28anonymous\20namespace\29::TriangulatingPathOp::~TriangulatingPathOp\28\29.1 +10111:\28anonymous\20namespace\29::TriangulatingPathOp::visitProxies\28std::__2::function\20const&\29\20const +10112:\28anonymous\20namespace\29::TriangulatingPathOp::programInfo\28\29 +10113:\28anonymous\20namespace\29::TriangulatingPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10114:\28anonymous\20namespace\29::TriangulatingPathOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10115:\28anonymous\20namespace\29::TriangulatingPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10116:\28anonymous\20namespace\29::TriangulatingPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10117:\28anonymous\20namespace\29::TriangulatingPathOp::name\28\29\20const +10118:\28anonymous\20namespace\29::TriangulatingPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10119:\28anonymous\20namespace\29::TransformedMaskSubRun::unflattenSize\28\29\20const +10120:\28anonymous\20namespace\29::TransformedMaskSubRun::instanceFlags\28\29\20const +10121:\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 +10122:\28anonymous\20namespace\29::TransformedMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +10123:\28anonymous\20namespace\29::TransformedMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +10124:\28anonymous\20namespace\29::TextureOpImpl::~TextureOpImpl\28\29.1 +10125:\28anonymous\20namespace\29::TextureOpImpl::visitProxies\28std::__2::function\20const&\29\20const +10126:\28anonymous\20namespace\29::TextureOpImpl::programInfo\28\29 +10127:\28anonymous\20namespace\29::TextureOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +10128:\28anonymous\20namespace\29::TextureOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10129:\28anonymous\20namespace\29::TextureOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10130:\28anonymous\20namespace\29::TextureOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10131:\28anonymous\20namespace\29::TextureOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10132:\28anonymous\20namespace\29::TextureOpImpl::name\28\29\20const +10133:\28anonymous\20namespace\29::TextureOpImpl::fixedFunctionFlags\28\29\20const +10134:\28anonymous\20namespace\29::TextureOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10135:\28anonymous\20namespace\29::TentPass::startBlur\28\29 +10136:\28anonymous\20namespace\29::TentPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +10137:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +10138:\28anonymous\20namespace\29::TentPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +10139:\28anonymous\20namespace\29::StaticVertexAllocator::~StaticVertexAllocator\28\29.1 +10140:\28anonymous\20namespace\29::StaticVertexAllocator::unlock\28int\29 +10141:\28anonymous\20namespace\29::StaticVertexAllocator::lock\28unsigned\20long\2c\20int\29 +10142:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::currentScript\28\29\20const +10143:\28anonymous\20namespace\29::SkUnicodeHbScriptRunIterator::consume\28\29 +10144:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10145:\28anonymous\20namespace\29::SkMorphologyImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10146:\28anonymous\20namespace\29::SkMorphologyImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10147:\28anonymous\20namespace\29::SkMorphologyImageFilter::getTypeName\28\29\20const +10148:\28anonymous\20namespace\29::SkMorphologyImageFilter::flatten\28SkWriteBuffer&\29\20const +10149:\28anonymous\20namespace\29::SkMorphologyImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10150:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10151:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10152:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10153:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::getTypeName\28\29\20const +10154:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::flatten\28SkWriteBuffer&\29\20const +10155:\28anonymous\20namespace\29::SkMatrixTransformImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10156:\28anonymous\20namespace\29::SkFTGeometrySink::Quad\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +10157:\28anonymous\20namespace\29::SkFTGeometrySink::Move\28FT_Vector_\20const*\2c\20void*\29 +10158:\28anonymous\20namespace\29::SkFTGeometrySink::Line\28FT_Vector_\20const*\2c\20void*\29 +10159:\28anonymous\20namespace\29::SkFTGeometrySink::Cubic\28FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20FT_Vector_\20const*\2c\20void*\29 +10160:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +10161:\28anonymous\20namespace\29::SkEmptyTypeface::onGetFamilyName\28SkString*\29\20const +10162:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +10163:\28anonymous\20namespace\29::SkEmptyTypeface::onCreateFamilyNameIterator\28\29\20const +10164:\28anonymous\20namespace\29::SkEmptyTypeface::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +10165:\28anonymous\20namespace\29::SkCropImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10166:\28anonymous\20namespace\29::SkCropImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10167:\28anonymous\20namespace\29::SkCropImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10168:\28anonymous\20namespace\29::SkCropImageFilter::onAffectsTransparentBlack\28\29\20const +10169:\28anonymous\20namespace\29::SkCropImageFilter::getTypeName\28\29\20const +10170:\28anonymous\20namespace\29::SkCropImageFilter::flatten\28SkWriteBuffer&\29\20const +10171:\28anonymous\20namespace\29::SkCropImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10172:\28anonymous\20namespace\29::SkComposeImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10173:\28anonymous\20namespace\29::SkComposeImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10174:\28anonymous\20namespace\29::SkComposeImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10175:\28anonymous\20namespace\29::SkComposeImageFilter::getTypeName\28\29\20const +10176:\28anonymous\20namespace\29::SkComposeImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10177:\28anonymous\20namespace\29::SkColorFilterImageFilter::~SkColorFilterImageFilter\28\29.1 +10178:\28anonymous\20namespace\29::SkColorFilterImageFilter::onIsColorFilterNode\28SkColorFilter**\29\20const +10179:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10180:\28anonymous\20namespace\29::SkColorFilterImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10181:\28anonymous\20namespace\29::SkColorFilterImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10182:\28anonymous\20namespace\29::SkColorFilterImageFilter::onAffectsTransparentBlack\28\29\20const +10183:\28anonymous\20namespace\29::SkColorFilterImageFilter::getTypeName\28\29\20const +10184:\28anonymous\20namespace\29::SkColorFilterImageFilter::flatten\28SkWriteBuffer&\29\20const +10185:\28anonymous\20namespace\29::SkColorFilterImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10186:\28anonymous\20namespace\29::SkBlurImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10187:\28anonymous\20namespace\29::SkBlurImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10188:\28anonymous\20namespace\29::SkBlurImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10189:\28anonymous\20namespace\29::SkBlurImageFilter::getTypeName\28\29\20const +10190:\28anonymous\20namespace\29::SkBlurImageFilter::flatten\28SkWriteBuffer&\29\20const +10191:\28anonymous\20namespace\29::SkBlurImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10192:\28anonymous\20namespace\29::SkBlendImageFilter::~SkBlendImageFilter\28\29.1 +10193:\28anonymous\20namespace\29::SkBlendImageFilter::onGetOutputLayerBounds\28skif::Mapping\20const&\2c\20std::__2::optional>\29\20const +10194:\28anonymous\20namespace\29::SkBlendImageFilter::onGetInputLayerBounds\28skif::Mapping\20const&\2c\20skif::LayerSpace\20const&\2c\20std::__2::optional>\29\20const +10195:\28anonymous\20namespace\29::SkBlendImageFilter::onFilterImage\28skif::Context\20const&\29\20const +10196:\28anonymous\20namespace\29::SkBlendImageFilter::onAffectsTransparentBlack\28\29\20const +10197:\28anonymous\20namespace\29::SkBlendImageFilter::getTypeName\28\29\20const +10198:\28anonymous\20namespace\29::SkBlendImageFilter::flatten\28SkWriteBuffer&\29\20const +10199:\28anonymous\20namespace\29::SkBlendImageFilter::computeFastBounds\28SkRect\20const&\29\20const +10200:\28anonymous\20namespace\29::SkBidiIterator_icu::~SkBidiIterator_icu\28\29.1 +10201:\28anonymous\20namespace\29::SkBidiIterator_icu::getLevelAt\28int\29 +10202:\28anonymous\20namespace\29::SkBidiIterator_icu::getLength\28\29 +10203:\28anonymous\20namespace\29::SimpleTriangleShader::name\28\29\20const +10204:\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 +10205:\28anonymous\20namespace\29::SimpleTriangleShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10206:\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 +10207:\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 +10208:\28anonymous\20namespace\29::ShaperHarfBuzz::shape\28char\20const*\2c\20unsigned\20long\2c\20SkFont\20const&\2c\20bool\2c\20float\2c\20SkShaper::RunHandler*\29\20const +10209:\28anonymous\20namespace\29::ShapeDontWrapOrReorder::~ShapeDontWrapOrReorder\28\29 +10210:\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 +10211:\28anonymous\20namespace\29::ShadowInvalidator::~ShadowInvalidator\28\29.1 +10212:\28anonymous\20namespace\29::ShadowInvalidator::changed\28\29 +10213:\28anonymous\20namespace\29::ShadowCircularRRectOp::~ShadowCircularRRectOp\28\29.1 +10214:\28anonymous\20namespace\29::ShadowCircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +10215:\28anonymous\20namespace\29::ShadowCircularRRectOp::programInfo\28\29 +10216:\28anonymous\20namespace\29::ShadowCircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10217:\28anonymous\20namespace\29::ShadowCircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10218:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10219:\28anonymous\20namespace\29::ShadowCircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10220:\28anonymous\20namespace\29::ShadowCircularRRectOp::name\28\29\20const +10221:\28anonymous\20namespace\29::ShadowCircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10222:\28anonymous\20namespace\29::SDFTSubRun::vertexStride\28SkMatrix\20const&\29\20const +10223:\28anonymous\20namespace\29::SDFTSubRun::vertexFiller\28\29\20const +10224:\28anonymous\20namespace\29::SDFTSubRun::unflattenSize\28\29\20const +10225:\28anonymous\20namespace\29::SDFTSubRun::testingOnly_packedGlyphIDToGlyph\28sktext::gpu::StrikeCache*\29\20const +10226:\28anonymous\20namespace\29::SDFTSubRun::glyphs\28\29\20const +10227:\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 +10228:\28anonymous\20namespace\29::SDFTSubRun::doFlatten\28SkWriteBuffer&\29\20const +10229:\28anonymous\20namespace\29::SDFTSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +10230:\28anonymous\20namespace\29::RectsBlurRec::~RectsBlurRec\28\29.1 +10231:\28anonymous\20namespace\29::RectsBlurRec::getCategory\28\29\20const +10232:\28anonymous\20namespace\29::RectsBlurRec::diagnostic_only_getDiscardable\28\29\20const +10233:\28anonymous\20namespace\29::RectsBlurRec::bytesUsed\28\29\20const +10234:\28anonymous\20namespace\29::RectsBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +10235:\28anonymous\20namespace\29::RRectBlurRec::~RRectBlurRec\28\29.1 +10236:\28anonymous\20namespace\29::RRectBlurRec::getCategory\28\29\20const +10237:\28anonymous\20namespace\29::RRectBlurRec::diagnostic_only_getDiscardable\28\29\20const +10238:\28anonymous\20namespace\29::RRectBlurRec::bytesUsed\28\29\20const +10239:\28anonymous\20namespace\29::RRectBlurRec::Visitor\28SkResourceCache::Rec\20const&\2c\20void*\29 +10240:\28anonymous\20namespace\29::PathSubRun::~PathSubRun\28\29.1 +10241:\28anonymous\20namespace\29::PathSubRun::unflattenSize\28\29\20const +10242:\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 +10243:\28anonymous\20namespace\29::PathSubRun::doFlatten\28SkWriteBuffer&\29\20const +10244:\28anonymous\20namespace\29::MipMapRec::~MipMapRec\28\29.1 +10245:\28anonymous\20namespace\29::MipMapRec::getCategory\28\29\20const +10246:\28anonymous\20namespace\29::MipMapRec::diagnostic_only_getDiscardable\28\29\20const +10247:\28anonymous\20namespace\29::MipMapRec::bytesUsed\28\29\20const +10248:\28anonymous\20namespace\29::MipMapRec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +10249:\28anonymous\20namespace\29::MiddleOutShader::~MiddleOutShader\28\29.1 +10250:\28anonymous\20namespace\29::MiddleOutShader::name\28\29\20const +10251:\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 +10252:\28anonymous\20namespace\29::MiddleOutShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10253:\28anonymous\20namespace\29::MiddleOutShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10254:\28anonymous\20namespace\29::MeshOp::~MeshOp\28\29.1 +10255:\28anonymous\20namespace\29::MeshOp::visitProxies\28std::__2::function\20const&\29\20const +10256:\28anonymous\20namespace\29::MeshOp::programInfo\28\29 +10257:\28anonymous\20namespace\29::MeshOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10258:\28anonymous\20namespace\29::MeshOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10259:\28anonymous\20namespace\29::MeshOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10260:\28anonymous\20namespace\29::MeshOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10261:\28anonymous\20namespace\29::MeshOp::name\28\29\20const +10262:\28anonymous\20namespace\29::MeshOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10263:\28anonymous\20namespace\29::MeshGP::~MeshGP\28\29.1 +10264:\28anonymous\20namespace\29::MeshGP::onTextureSampler\28int\29\20const +10265:\28anonymous\20namespace\29::MeshGP::name\28\29\20const +10266:\28anonymous\20namespace\29::MeshGP::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10267:\28anonymous\20namespace\29::MeshGP::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10268:\28anonymous\20namespace\29::MeshGP::Impl::~Impl\28\29.1 +10269:\28anonymous\20namespace\29::MeshGP::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10270:\28anonymous\20namespace\29::MeshGP::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10271:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +10272:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +10273:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +10274:\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 +10275:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::getMainName\28\29 +10276:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +10277:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +10278:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +10279:\28anonymous\20namespace\29::MeshGP::Impl::MeshCallbacks::declareFunction\28char\20const*\29 +10280:\28anonymous\20namespace\29::HQDownSampler::buildLevel\28SkPixmap\20const&\2c\20SkPixmap\20const&\29 +10281:\28anonymous\20namespace\29::GaussPass::startBlur\28\29 +10282:\28anonymous\20namespace\29::GaussPass::blurSegment\28int\2c\20unsigned\20int\20const*\2c\20int\2c\20unsigned\20int*\2c\20int\29 +10283:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::makePass\28void*\2c\20SkArenaAlloc*\29\20const +10284:\28anonymous\20namespace\29::GaussPass::MakeMaker\28double\2c\20SkArenaAlloc*\29::Maker::bufferSizeBytes\28\29\20const +10285:\28anonymous\20namespace\29::FillRectOpImpl::~FillRectOpImpl\28\29.1 +10286:\28anonymous\20namespace\29::FillRectOpImpl::visitProxies\28std::__2::function\20const&\29\20const +10287:\28anonymous\20namespace\29::FillRectOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +10288:\28anonymous\20namespace\29::FillRectOpImpl::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10289:\28anonymous\20namespace\29::FillRectOpImpl::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10290:\28anonymous\20namespace\29::FillRectOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10291:\28anonymous\20namespace\29::FillRectOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10292:\28anonymous\20namespace\29::FillRectOpImpl::name\28\29\20const +10293:\28anonymous\20namespace\29::FillRectOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10294:\28anonymous\20namespace\29::ExternalWebGLTexture::~ExternalWebGLTexture\28\29.1 +10295:\28anonymous\20namespace\29::ExternalWebGLTexture::getBackendTexture\28\29 +10296:\28anonymous\20namespace\29::ExternalWebGLTexture::dispose\28\29 +10297:\28anonymous\20namespace\29::EllipticalRRectEffect::onMakeProgramImpl\28\29\20const +10298:\28anonymous\20namespace\29::EllipticalRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10299:\28anonymous\20namespace\29::EllipticalRRectEffect::name\28\29\20const +10300:\28anonymous\20namespace\29::EllipticalRRectEffect::clone\28\29\20const +10301:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10302:\28anonymous\20namespace\29::EllipticalRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10303:\28anonymous\20namespace\29::DrawableSubRun::~DrawableSubRun\28\29.1 +10304:\28anonymous\20namespace\29::DrawableSubRun::unflattenSize\28\29\20const +10305:\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 +10306:\28anonymous\20namespace\29::DrawableSubRun::doFlatten\28SkWriteBuffer&\29\20const +10307:\28anonymous\20namespace\29::DrawAtlasPathShader::~DrawAtlasPathShader\28\29.1 +10308:\28anonymous\20namespace\29::DrawAtlasPathShader::onTextureSampler\28int\29\20const +10309:\28anonymous\20namespace\29::DrawAtlasPathShader::name\28\29\20const +10310:\28anonymous\20namespace\29::DrawAtlasPathShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10311:\28anonymous\20namespace\29::DrawAtlasPathShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10312:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10313:\28anonymous\20namespace\29::DrawAtlasPathShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10314:\28anonymous\20namespace\29::DrawAtlasOpImpl::~DrawAtlasOpImpl\28\29.1 +10315:\28anonymous\20namespace\29::DrawAtlasOpImpl::onPrepareDraws\28GrMeshDrawTarget*\29 +10316:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10317:\28anonymous\20namespace\29::DrawAtlasOpImpl::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10318:\28anonymous\20namespace\29::DrawAtlasOpImpl::name\28\29\20const +10319:\28anonymous\20namespace\29::DrawAtlasOpImpl::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10320:\28anonymous\20namespace\29::DirectMaskSubRun::vertexStride\28SkMatrix\20const&\29\20const +10321:\28anonymous\20namespace\29::DirectMaskSubRun::unflattenSize\28\29\20const +10322:\28anonymous\20namespace\29::DirectMaskSubRun::instanceFlags\28\29\20const +10323:\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 +10324:\28anonymous\20namespace\29::DirectMaskSubRun::doFlatten\28SkWriteBuffer&\29\20const +10325:\28anonymous\20namespace\29::DirectMaskSubRun::canReuse\28SkPaint\20const&\2c\20SkMatrix\20const&\29\20const +10326:\28anonymous\20namespace\29::DefaultPathOp::~DefaultPathOp\28\29.1 +10327:\28anonymous\20namespace\29::DefaultPathOp::visitProxies\28std::__2::function\20const&\29\20const +10328:\28anonymous\20namespace\29::DefaultPathOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10329:\28anonymous\20namespace\29::DefaultPathOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10330:\28anonymous\20namespace\29::DefaultPathOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10331:\28anonymous\20namespace\29::DefaultPathOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10332:\28anonymous\20namespace\29::DefaultPathOp::name\28\29\20const +10333:\28anonymous\20namespace\29::DefaultPathOp::fixedFunctionFlags\28\29\20const +10334:\28anonymous\20namespace\29::DefaultPathOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10335:\28anonymous\20namespace\29::CircularRRectEffect::onMakeProgramImpl\28\29\20const +10336:\28anonymous\20namespace\29::CircularRRectEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +10337:\28anonymous\20namespace\29::CircularRRectEffect::name\28\29\20const +10338:\28anonymous\20namespace\29::CircularRRectEffect::clone\28\29\20const +10339:\28anonymous\20namespace\29::CircularRRectEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +10340:\28anonymous\20namespace\29::CircularRRectEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +10341:\28anonymous\20namespace\29::CachedTessellationsRec::~CachedTessellationsRec\28\29.1 +10342:\28anonymous\20namespace\29::CachedTessellationsRec::getCategory\28\29\20const +10343:\28anonymous\20namespace\29::CachedTessellationsRec::bytesUsed\28\29\20const +10344:\28anonymous\20namespace\29::CachedTessellations::~CachedTessellations\28\29.1 +10345:\28anonymous\20namespace\29::CacheImpl::~CacheImpl\28\29.1 +10346:\28anonymous\20namespace\29::CacheImpl::set\28SkImageFilterCacheKey\20const&\2c\20SkImageFilter\20const*\2c\20skif::FilterResult\20const&\29 +10347:\28anonymous\20namespace\29::CacheImpl::purge\28\29 +10348:\28anonymous\20namespace\29::CacheImpl::purgeByImageFilter\28SkImageFilter\20const*\29 +10349:\28anonymous\20namespace\29::CacheImpl::get\28SkImageFilterCacheKey\20const&\2c\20skif::FilterResult*\29\20const +10350:\28anonymous\20namespace\29::BoundingBoxShader::name\28\29\20const +10351:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +10352:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +10353:\28anonymous\20namespace\29::BoundingBoxShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +10354:\28anonymous\20namespace\29::AAHairlineOp::~AAHairlineOp\28\29.1 +10355:\28anonymous\20namespace\29::AAHairlineOp::visitProxies\28std::__2::function\20const&\29\20const +10356:\28anonymous\20namespace\29::AAHairlineOp::onPrepareDraws\28GrMeshDrawTarget*\29 +10357:\28anonymous\20namespace\29::AAHairlineOp::onPrePrepareDraws\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10358:\28anonymous\20namespace\29::AAHairlineOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +10359:\28anonymous\20namespace\29::AAHairlineOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +10360:\28anonymous\20namespace\29::AAHairlineOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +10361:\28anonymous\20namespace\29::AAHairlineOp::name\28\29\20const +10362:\28anonymous\20namespace\29::AAHairlineOp::fixedFunctionFlags\28\29\20const +10363:\28anonymous\20namespace\29::AAHairlineOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +10364:Write_CVT_Stretched +10365:Write_CVT +10366:Vertish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +10367:Vertish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +10368:VertState::Triangles\28VertState*\29 +10369:VertState::TrianglesX\28VertState*\29 +10370:VertState::TriangleStrip\28VertState*\29 +10371:VertState::TriangleStripX\28VertState*\29 +10372:VertState::TriangleFan\28VertState*\29 +10373:VertState::TriangleFanX\28VertState*\29 +10374:VLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +10375:VLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +10376:TextureSourceImageGenerator::~TextureSourceImageGenerator\28\29.1 +10377:TextureSourceImageGenerator::generateExternalTexture\28GrRecordingContext*\2c\20skgpu::Mipmapped\29 +10378:TT_Set_MM_Blend +10379:TT_RunIns +10380:TT_Load_Simple_Glyph +10381:TT_Load_Glyph_Header +10382:TT_Load_Composite_Glyph +10383:TT_Get_Var_Design +10384:TT_Get_MM_Blend +10385:TT_Forget_Glyph_Frame +10386:TT_Access_Glyph_Frame +10387:TOUPPER\28unsigned\20char\29 +10388:TOLOWER\28unsigned\20char\29 +10389:SquareCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +10390:Sprite_D32_S32::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10391:Skwasm::Surface::Surface\28\29::$_0::__invoke\28void*\29 +10392:SkWeakRefCnt::internal_dispose\28\29\20const +10393:SkUnicode_client::~SkUnicode_client\28\29.1 +10394:SkUnicode_client::toUpper\28SkString\20const&\2c\20char\20const*\29 +10395:SkUnicode_client::toUpper\28SkString\20const&\29 +10396:SkUnicode_client::reorderVisual\28unsigned\20char\20const*\2c\20int\2c\20int*\29 +10397:SkUnicode_client::makeBreakIterator\28char\20const*\2c\20SkUnicode::BreakType\29 +10398:SkUnicode_client::makeBreakIterator\28SkUnicode::BreakType\29 +10399:SkUnicode_client::makeBidiIterator\28unsigned\20short\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +10400:SkUnicode_client::makeBidiIterator\28char\20const*\2c\20int\2c\20SkBidiIterator::Direction\29 +10401:SkUnicode_client::getWords\28char\20const*\2c\20int\2c\20char\20const*\2c\20std::__2::vector>*\29 +10402:SkUnicode_client::getBidiRegions\28char\20const*\2c\20int\2c\20SkUnicode::TextDirection\2c\20std::__2::vector>*\29 +10403:SkUnicode_client::computeCodeUnitFlags\28char16_t*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +10404:SkUnicode_client::computeCodeUnitFlags\28char*\2c\20int\2c\20bool\2c\20skia_private::TArray*\29 +10405:SkUnicodeHardCodedCharProperties::isWhitespace\28int\29 +10406:SkUnicodeHardCodedCharProperties::isTabulation\28int\29 +10407:SkUnicodeHardCodedCharProperties::isSpace\28int\29 +10408:SkUnicodeHardCodedCharProperties::isIdeographic\28int\29 +10409:SkUnicodeHardCodedCharProperties::isHardBreak\28int\29 +10410:SkUnicodeHardCodedCharProperties::isControl\28int\29 +10411:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29.1 +10412:SkUnicodeBidiRunIterator::~SkUnicodeBidiRunIterator\28\29 +10413:SkUnicodeBidiRunIterator::endOfCurrentRun\28\29\20const +10414:SkUnicodeBidiRunIterator::currentLevel\28\29\20const +10415:SkUnicodeBidiRunIterator::consume\28\29 +10416:SkUnicodeBidiRunIterator::atEnd\28\29\20const +10417:SkTypeface_FreeTypeStream::~SkTypeface_FreeTypeStream\28\29.1 +10418:SkTypeface_FreeTypeStream::onOpenStream\28int*\29\20const +10419:SkTypeface_FreeTypeStream::onMakeFontData\28\29\20const +10420:SkTypeface_FreeTypeStream::onMakeClone\28SkFontArguments\20const&\29\20const +10421:SkTypeface_FreeTypeStream::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +10422:SkTypeface_FreeType::onGlyphMaskNeedsCurrentColor\28\29\20const +10423:SkTypeface_FreeType::onGetVariationDesignPosition\28SkFontArguments::VariationPosition::Coordinate*\2c\20int\29\20const +10424:SkTypeface_FreeType::onGetVariationDesignParameters\28SkFontParameters::Variation::Axis*\2c\20int\29\20const +10425:SkTypeface_FreeType::onGetUPEM\28\29\20const +10426:SkTypeface_FreeType::onGetTableTags\28unsigned\20int*\29\20const +10427:SkTypeface_FreeType::onGetTableData\28unsigned\20int\2c\20unsigned\20long\2c\20unsigned\20long\2c\20void*\29\20const +10428:SkTypeface_FreeType::onGetPostScriptName\28SkString*\29\20const +10429:SkTypeface_FreeType::onGetKerningPairAdjustments\28unsigned\20short\20const*\2c\20int\2c\20int*\29\20const +10430:SkTypeface_FreeType::onGetAdvancedMetrics\28\29\20const +10431:SkTypeface_FreeType::onFilterRec\28SkScalerContextRec*\29\20const +10432:SkTypeface_FreeType::onCreateScalerContext\28SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29\20const +10433:SkTypeface_FreeType::onCreateFamilyNameIterator\28\29\20const +10434:SkTypeface_FreeType::onCountGlyphs\28\29\20const +10435:SkTypeface_FreeType::onCopyTableData\28unsigned\20int\29\20const +10436:SkTypeface_FreeType::onCharsToGlyphs\28int\20const*\2c\20int\2c\20unsigned\20short*\29\20const +10437:SkTypeface_FreeType::getPostScriptGlyphNames\28SkString*\29\20const +10438:SkTypeface_FreeType::getGlyphToUnicodeMap\28int*\29\20const +10439:SkTypeface_Empty::~SkTypeface_Empty\28\29 +10440:SkTypeface_Custom::onGetFontDescriptor\28SkFontDescriptor*\2c\20bool*\29\20const +10441:SkTypeface::onOpenExistingStream\28int*\29\20const +10442:SkTypeface::onCopyTableData\28unsigned\20int\29\20const +10443:SkTypeface::onComputeBounds\28SkRect*\29\20const +10444:SkTriColorShader::type\28\29\20const +10445:SkTriColorShader::isOpaque\28\29\20const +10446:SkTriColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10447:SkTransformShader::type\28\29\20const +10448:SkTransformShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10449:SkTQuad::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +10450:SkTQuad::setBounds\28SkDRect*\29\20const +10451:SkTQuad::ptAtT\28double\29\20const +10452:SkTQuad::make\28SkArenaAlloc&\29\20const +10453:SkTQuad::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +10454:SkTQuad::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +10455:SkTQuad::dxdyAtT\28double\29\20const +10456:SkTQuad::debugInit\28\29 +10457:SkTCubic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +10458:SkTCubic::setBounds\28SkDRect*\29\20const +10459:SkTCubic::ptAtT\28double\29\20const +10460:SkTCubic::otherPts\28int\2c\20SkDPoint\20const**\29\20const +10461:SkTCubic::make\28SkArenaAlloc&\29\20const +10462:SkTCubic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +10463:SkTCubic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +10464:SkTCubic::hullIntersects\28SkDCubic\20const&\2c\20bool*\29\20const +10465:SkTCubic::dxdyAtT\28double\29\20const +10466:SkTCubic::debugInit\28\29 +10467:SkTCubic::controlsInside\28\29\20const +10468:SkTCubic::collapsed\28\29\20const +10469:SkTConic::subDivide\28double\2c\20double\2c\20SkTCurve*\29\20const +10470:SkTConic::setBounds\28SkDRect*\29\20const +10471:SkTConic::ptAtT\28double\29\20const +10472:SkTConic::make\28SkArenaAlloc&\29\20const +10473:SkTConic::intersectRay\28SkIntersections*\2c\20SkDLine\20const&\29\20const +10474:SkTConic::hullIntersects\28SkTCurve\20const&\2c\20bool*\29\20const +10475:SkTConic::hullIntersects\28SkDQuad\20const&\2c\20bool*\29\20const +10476:SkTConic::dxdyAtT\28double\29\20const +10477:SkTConic::debugInit\28\29 +10478:SkSweepGradient::getTypeName\28\29\20const +10479:SkSweepGradient::flatten\28SkWriteBuffer&\29\20const +10480:SkSweepGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10481:SkSweepGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +10482:SkSurface_Raster::~SkSurface_Raster\28\29.1 +10483:SkSurface_Raster::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +10484:SkSurface_Raster::onRestoreBackingMutability\28\29 +10485:SkSurface_Raster::onNewSurface\28SkImageInfo\20const&\29 +10486:SkSurface_Raster::onNewImageSnapshot\28SkIRect\20const*\29 +10487:SkSurface_Raster::onNewCanvas\28\29 +10488:SkSurface_Raster::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10489:SkSurface_Raster::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +10490:SkSurface_Raster::imageInfo\28\29\20const +10491:SkSurface_Ganesh::~SkSurface_Ganesh\28\29.1 +10492:SkSurface_Ganesh::replaceBackendTexture\28GrBackendTexture\20const&\2c\20GrSurfaceOrigin\2c\20SkSurface::ContentChangeMode\2c\20void\20\28*\29\28void*\29\2c\20void*\29 +10493:SkSurface_Ganesh::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +10494:SkSurface_Ganesh::onWait\28int\2c\20GrBackendSemaphore\20const*\2c\20bool\29 +10495:SkSurface_Ganesh::onNewSurface\28SkImageInfo\20const&\29 +10496:SkSurface_Ganesh::onNewImageSnapshot\28SkIRect\20const*\29 +10497:SkSurface_Ganesh::onNewCanvas\28\29 +10498:SkSurface_Ganesh::onIsCompatible\28GrSurfaceCharacterization\20const&\29\20const +10499:SkSurface_Ganesh::onGetRecordingContext\28\29\20const +10500:SkSurface_Ganesh::onDraw\28SkCanvas*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10501:SkSurface_Ganesh::onCopyOnWrite\28SkSurface::ContentChangeMode\29 +10502:SkSurface_Ganesh::onCharacterize\28GrSurfaceCharacterization*\29\20const +10503:SkSurface_Ganesh::onCapabilities\28\29 +10504: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 +10505: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 +10506:SkSurface_Ganesh::imageInfo\28\29\20const +10507: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 +10508:SkSurface::imageInfo\28\29\20const +10509:SkStrikeCache::~SkStrikeCache\28\29.1 +10510:SkStrikeCache::findOrCreateScopedStrike\28SkStrikeSpec\20const&\29 +10511:SkStrike::~SkStrike\28\29.1 +10512:SkStrike::strikePromise\28\29 +10513:SkStrike::roundingSpec\28\29\20const +10514:SkStrike::getDescriptor\28\29\20const +10515:SkSpriteBlitter_Memcpy::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10516:SkSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +10517:SkSpriteBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10518:SkSpriteBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10519:SkSpriteBlitter::blitH\28int\2c\20int\2c\20int\29 +10520:SkSpecialImage_Raster::~SkSpecialImage_Raster\28\29.1 +10521:SkSpecialImage_Raster::onMakeBackingStoreSubset\28SkIRect\20const&\29\20const +10522:SkSpecialImage_Raster::getSize\28\29\20const +10523:SkSpecialImage_Raster::backingStoreDimensions\28\29\20const +10524:SkSpecialImage_Raster::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +10525:SkSpecialImage_Raster::asImage\28\29\20const +10526:SkSpecialImage_Gpu::~SkSpecialImage_Gpu\28\29.1 +10527:SkSpecialImage_Gpu::onMakeBackingStoreSubset\28SkIRect\20const&\29\20const +10528:SkSpecialImage_Gpu::getSize\28\29\20const +10529:SkSpecialImage_Gpu::backingStoreDimensions\28\29\20const +10530:SkSpecialImage_Gpu::asImage\28\29\20const +10531:SkSpecialImage::asShader\28SkTileMode\2c\20SkSamplingOptions\20const&\2c\20SkMatrix\20const&\2c\20bool\29\20const +10532:SkShaper::TrivialLanguageRunIterator::~TrivialLanguageRunIterator\28\29.1 +10533:SkShaper::TrivialLanguageRunIterator::currentLanguage\28\29\20const +10534:SkShaper::TrivialFontRunIterator::~TrivialFontRunIterator\28\29.1 +10535:SkShaper::TrivialBiDiRunIterator::currentLevel\28\29\20const +10536:SkShaderBlurAlgorithm::maxSigma\28\29\20const +10537:SkShaderBlurAlgorithm::blur\28SkSize\2c\20sk_sp\2c\20SkIRect\20const&\2c\20SkTileMode\2c\20SkIRect\20const&\29\20const +10538:SkScan::HairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10539:SkScan::HairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10540:SkScan::HairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10541:SkScan::AntiHairSquarePath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10542:SkScan::AntiHairRoundPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10543:SkScan::AntiHairPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10544:SkScan::AntiFillPath\28SkPath\20const&\2c\20SkRasterClip\20const&\2c\20SkBlitter*\29 +10545:SkScalerContext_FreeType::~SkScalerContext_FreeType\28\29.1 +10546:SkScalerContext_FreeType::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +10547:SkScalerContext_FreeType::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +10548:SkScalerContext_FreeType::generateImage\28SkGlyph\20const&\2c\20void*\29 +10549:SkScalerContext_FreeType::generateFontMetrics\28SkFontMetrics*\29 +10550:SkScalerContext_FreeType::generateDrawable\28SkGlyph\20const&\29 +10551:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::~SkScalerContext_Empty\28\29 +10552:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generatePath\28SkGlyph\20const&\2c\20SkPath*\29 +10553:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateMetrics\28SkGlyph\20const&\2c\20SkArenaAlloc*\29 +10554:SkScalerContext::MakeEmpty\28sk_sp\2c\20SkScalerContextEffects\20const&\2c\20SkDescriptor\20const*\29::SkScalerContext_Empty::generateFontMetrics\28SkFontMetrics*\29 +10555:SkSRGBColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +10556:SkSRGBColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +10557: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 +10558: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 +10559: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 +10560: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 +10561:SkSL::negate_value\28double\29 +10562:SkSL::eliminate_unreachable_code\28SkSpan>>\2c\20SkSL::ProgramUsage*\29::UnreachableCodeEliminator::~UnreachableCodeEliminator\28\29.1 +10563:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::~DeadLocalVariableEliminator\28\29.1 +10564:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitStatementPtr\28std::__2::unique_ptr>&\29 +10565:SkSL::eliminate_dead_local_variables\28SkSL::Context\20const&\2c\20SkSpan>>\2c\20SkSL::ProgramUsage*\29::DeadLocalVariableEliminator::visitExpressionPtr\28std::__2::unique_ptr>&\29 +10566:SkSL::count_returns_at_end_of_control_flow\28SkSL::FunctionDefinition\20const&\29::CountReturnsAtEndOfControlFlow::visitStatement\28SkSL::Statement\20const&\29 +10567:SkSL::bitwise_not_value\28double\29 +10568:SkSL::\28anonymous\20namespace\29::VariableWriteVisitor::visitExpression\28SkSL::Expression\20const&\29 +10569:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +10570:SkSL::\28anonymous\20namespace\29::SampleOutsideMainVisitor::visitExpression\28SkSL::Expression\20const&\29 +10571:SkSL::\28anonymous\20namespace\29::ReturnsNonOpaqueColorVisitor::visitStatement\28SkSL::Statement\20const&\29 +10572:SkSL::\28anonymous\20namespace\29::ReturnsInputAlphaVisitor::visitStatement\28SkSL::Statement\20const&\29 +10573:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +10574:SkSL::\28anonymous\20namespace\29::NodeCountVisitor::visitExpression\28SkSL::Expression\20const&\29 +10575:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitProgramElement\28SkSL::ProgramElement\20const&\29 +10576:SkSL::\28anonymous\20namespace\29::MergeSampleUsageVisitor::visitExpression\28SkSL::Expression\20const&\29 +10577:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::~FinalizationVisitor\28\29.1 +10578:SkSL::\28anonymous\20namespace\29::FinalizationVisitor::visitExpression\28SkSL::Expression\20const&\29 +10579:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::~ES2IndexingVisitor\28\29.1 +10580:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitStatement\28SkSL::Statement\20const&\29 +10581:SkSL::\28anonymous\20namespace\29::ES2IndexingVisitor::visitExpression\28SkSL::Expression\20const&\29 +10582:SkSL::VectorType::isAllowedInUniform\28SkSL::Position*\29\20const +10583:SkSL::VectorType::isAllowedInES2\28\29\20const +10584:SkSL::VariableReference::clone\28SkSL::Position\29\20const +10585:SkSL::Variable::~Variable\28\29.1 +10586:SkSL::Variable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +10587:SkSL::Variable::mangledName\28\29\20const +10588:SkSL::Variable::layout\28\29\20const +10589:SkSL::Variable::description\28\29\20const +10590:SkSL::VarDeclaration::~VarDeclaration\28\29.1 +10591:SkSL::VarDeclaration::description\28\29\20const +10592:SkSL::TypeReference::clone\28SkSL::Position\29\20const +10593:SkSL::Type::minimumValue\28\29\20const +10594:SkSL::Type::maximumValue\28\29\20const +10595:SkSL::Type::isAllowedInUniform\28SkSL::Position*\29\20const +10596:SkSL::Type::fields\28\29\20const +10597:SkSL::Type::description\28\29\20const +10598:SkSL::Transform::HoistSwitchVarDeclarationsAtTopLevel\28SkSL::Context\20const&\2c\20std::__2::unique_ptr>\29::HoistSwitchVarDeclsVisitor::~HoistSwitchVarDeclsVisitor\28\29.1 +10599:SkSL::Tracer::var\28int\2c\20int\29 +10600:SkSL::Tracer::scope\28int\29 +10601:SkSL::Tracer::line\28int\29 +10602:SkSL::Tracer::exit\28int\29 +10603:SkSL::Tracer::enter\28int\29 +10604:SkSL::TextureType::textureAccess\28\29\20const +10605:SkSL::TextureType::isMultisampled\28\29\20const +10606:SkSL::TextureType::isDepth\28\29\20const +10607:SkSL::TextureType::isArrayedTexture\28\29\20const +10608:SkSL::TernaryExpression::~TernaryExpression\28\29.1 +10609:SkSL::TernaryExpression::description\28SkSL::OperatorPrecedence\29\20const +10610:SkSL::TernaryExpression::clone\28SkSL::Position\29\20const +10611:SkSL::TProgramVisitor::visitExpression\28SkSL::Expression&\29 +10612:SkSL::Swizzle::description\28SkSL::OperatorPrecedence\29\20const +10613:SkSL::Swizzle::clone\28SkSL::Position\29\20const +10614:SkSL::SwitchStatement::description\28\29\20const +10615:SkSL::SwitchCase::description\28\29\20const +10616:SkSL::StructType::slotType\28unsigned\20long\29\20const +10617:SkSL::StructType::isOrContainsUnsizedArray\28\29\20const +10618:SkSL::StructType::isOrContainsAtomic\28\29\20const +10619:SkSL::StructType::isOrContainsArray\28\29\20const +10620:SkSL::StructType::isInterfaceBlock\28\29\20const +10621:SkSL::StructType::isBuiltin\28\29\20const +10622:SkSL::StructType::isAllowedInUniform\28SkSL::Position*\29\20const +10623:SkSL::StructType::isAllowedInES2\28\29\20const +10624:SkSL::StructType::fields\28\29\20const +10625:SkSL::StructDefinition::description\28\29\20const +10626:SkSL::StringStream::~StringStream\28\29.1 +10627:SkSL::StringStream::write\28void\20const*\2c\20unsigned\20long\29 +10628:SkSL::StringStream::writeText\28char\20const*\29 +10629:SkSL::StringStream::write8\28unsigned\20char\29 +10630:SkSL::Setting::description\28SkSL::OperatorPrecedence\29\20const +10631:SkSL::Setting::clone\28SkSL::Position\29\20const +10632:SkSL::ScalarType::priority\28\29\20const +10633:SkSL::ScalarType::numberKind\28\29\20const +10634:SkSL::ScalarType::minimumValue\28\29\20const +10635:SkSL::ScalarType::maximumValue\28\29\20const +10636:SkSL::ScalarType::isAllowedInUniform\28SkSL::Position*\29\20const +10637:SkSL::ScalarType::isAllowedInES2\28\29\20const +10638:SkSL::ScalarType::bitWidth\28\29\20const +10639:SkSL::SamplerType::textureAccess\28\29\20const +10640:SkSL::SamplerType::isMultisampled\28\29\20const +10641:SkSL::SamplerType::isDepth\28\29\20const +10642:SkSL::SamplerType::isArrayedTexture\28\29\20const +10643:SkSL::SamplerType::dimensions\28\29\20const +10644:SkSL::ReturnStatement::description\28\29\20const +10645:SkSL::RP::VariableLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10646:SkSL::RP::VariableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10647:SkSL::RP::VariableLValue::isWritable\28\29\20const +10648:SkSL::RP::UnownedLValueSlice::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10649:SkSL::RP::UnownedLValueSlice::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10650:SkSL::RP::UnownedLValueSlice::fixedSlotRange\28SkSL::RP::Generator*\29 +10651:SkSL::RP::SwizzleLValue::~SwizzleLValue\28\29.1 +10652:SkSL::RP::SwizzleLValue::swizzle\28\29 +10653:SkSL::RP::SwizzleLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10654:SkSL::RP::SwizzleLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10655:SkSL::RP::SwizzleLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10656:SkSL::RP::ScratchLValue::~ScratchLValue\28\29.1 +10657:SkSL::RP::ScratchLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10658:SkSL::RP::ScratchLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10659:SkSL::RP::LValueSlice::~LValueSlice\28\29.1 +10660:SkSL::RP::ImmutableLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10661:SkSL::RP::DynamicIndexLValue::~DynamicIndexLValue\28\29.1 +10662:SkSL::RP::DynamicIndexLValue::store\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10663:SkSL::RP::DynamicIndexLValue::push\28SkSL::RP::Generator*\2c\20SkSL::RP::SlotRange\2c\20SkSL::RP::AutoStack*\2c\20SkSpan\29 +10664:SkSL::RP::DynamicIndexLValue::isWritable\28\29\20const +10665:SkSL::RP::DynamicIndexLValue::fixedSlotRange\28SkSL::RP::Generator*\29 +10666:SkSL::ProgramVisitor::visitStatementPtr\28std::__2::unique_ptr>\20const&\29 +10667:SkSL::ProgramVisitor::visitExpressionPtr\28std::__2::unique_ptr>\20const&\29 +10668:SkSL::PrefixExpression::description\28SkSL::OperatorPrecedence\29\20const +10669:SkSL::PrefixExpression::clone\28SkSL::Position\29\20const +10670:SkSL::PostfixExpression::description\28SkSL::OperatorPrecedence\29\20const +10671:SkSL::PostfixExpression::clone\28SkSL::Position\29\20const +10672:SkSL::Poison::description\28SkSL::OperatorPrecedence\29\20const +10673:SkSL::Poison::clone\28SkSL::Position\29\20const +10674:SkSL::PipelineStage::Callbacks::getMainName\28\29 +10675:SkSL::Parser::Checkpoint::ForwardingErrorReporter::~ForwardingErrorReporter\28\29.1 +10676:SkSL::Parser::Checkpoint::ForwardingErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +10677:SkSL::Nop::description\28\29\20const +10678:SkSL::ModifiersDeclaration::description\28\29\20const +10679:SkSL::MethodReference::description\28SkSL::OperatorPrecedence\29\20const +10680:SkSL::MethodReference::clone\28SkSL::Position\29\20const +10681:SkSL::MatrixType::slotCount\28\29\20const +10682:SkSL::MatrixType::rows\28\29\20const +10683:SkSL::MatrixType::isAllowedInES2\28\29\20const +10684:SkSL::LiteralType::minimumValue\28\29\20const +10685:SkSL::LiteralType::maximumValue\28\29\20const +10686:SkSL::Literal::getConstantValue\28int\29\20const +10687:SkSL::Literal::description\28SkSL::OperatorPrecedence\29\20const +10688:SkSL::Literal::compareConstant\28SkSL::Expression\20const&\29\20const +10689:SkSL::Literal::clone\28SkSL::Position\29\20const +10690:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_uintBitsToFloat\28double\2c\20double\2c\20double\29 +10691:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_trunc\28double\2c\20double\2c\20double\29 +10692:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tanh\28double\2c\20double\2c\20double\29 +10693:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_tan\28double\2c\20double\2c\20double\29 +10694:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sub\28double\2c\20double\2c\20double\29 +10695:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_step\28double\2c\20double\2c\20double\29 +10696:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sqrt\28double\2c\20double\2c\20double\29 +10697:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_smoothstep\28double\2c\20double\2c\20double\29 +10698:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sinh\28double\2c\20double\2c\20double\29 +10699:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sin\28double\2c\20double\2c\20double\29 +10700:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_sign\28double\2c\20double\2c\20double\29 +10701:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_saturate\28double\2c\20double\2c\20double\29 +10702:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_round\28double\2c\20double\2c\20double\29 +10703:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_radians\28double\2c\20double\2c\20double\29 +10704:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_pow\28double\2c\20double\2c\20double\29 +10705:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_opposite_sign\28double\2c\20double\2c\20double\29 +10706:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_not\28double\2c\20double\2c\20double\29 +10707:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mod\28double\2c\20double\2c\20double\29 +10708:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_mix\28double\2c\20double\2c\20double\29 +10709:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_min\28double\2c\20double\2c\20double\29 +10710:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_max\28double\2c\20double\2c\20double\29 +10711:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log\28double\2c\20double\2c\20double\29 +10712:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_log2\28double\2c\20double\2c\20double\29 +10713:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_inversesqrt\28double\2c\20double\2c\20double\29 +10714:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_intBitsToFloat\28double\2c\20double\2c\20double\29 +10715:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fract\28double\2c\20double\2c\20double\29 +10716:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_fma\28double\2c\20double\2c\20double\29 +10717:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floor\28double\2c\20double\2c\20double\29 +10718:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToUint\28double\2c\20double\2c\20double\29 +10719:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_floatBitsToInt\28double\2c\20double\2c\20double\29 +10720:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp\28double\2c\20double\2c\20double\29 +10721:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_exp2\28double\2c\20double\2c\20double\29 +10722:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_div\28double\2c\20double\2c\20double\29 +10723:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_degrees\28double\2c\20double\2c\20double\29 +10724:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cosh\28double\2c\20double\2c\20double\29 +10725:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_cos\28double\2c\20double\2c\20double\29 +10726:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_clamp\28double\2c\20double\2c\20double\29 +10727:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_ceil\28double\2c\20double\2c\20double\29 +10728:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atanh\28double\2c\20double\2c\20double\29 +10729:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan\28double\2c\20double\2c\20double\29 +10730:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_atan2\28double\2c\20double\2c\20double\29 +10731:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asinh\28double\2c\20double\2c\20double\29 +10732:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_asin\28double\2c\20double\2c\20double\29 +10733:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_add\28double\2c\20double\2c\20double\29 +10734:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acosh\28double\2c\20double\2c\20double\29 +10735:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_acos\28double\2c\20double\2c\20double\29 +10736:SkSL::Intrinsics::\28anonymous\20namespace\29::evaluate_abs\28double\2c\20double\2c\20double\29 +10737:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_notEqual\28double\2c\20double\29 +10738:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThan\28double\2c\20double\29 +10739:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_lessThanEqual\28double\2c\20double\29 +10740:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThan\28double\2c\20double\29 +10741:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_greaterThanEqual\28double\2c\20double\29 +10742:SkSL::Intrinsics::\28anonymous\20namespace\29::compare_equal\28double\2c\20double\29 +10743:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_length\28double\2c\20double\2c\20double\29 +10744:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_dot\28double\2c\20double\2c\20double\29 +10745:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_distance\28double\2c\20double\2c\20double\29 +10746:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_any\28double\2c\20double\2c\20double\29 +10747:SkSL::Intrinsics::\28anonymous\20namespace\29::coalesce_all\28double\2c\20double\2c\20double\29 +10748:SkSL::InterfaceBlock::~InterfaceBlock\28\29.1 +10749:SkSL::InterfaceBlock::~InterfaceBlock\28\29 +10750:SkSL::InterfaceBlock::description\28\29\20const +10751:SkSL::IndexExpression::~IndexExpression\28\29.1 +10752:SkSL::IndexExpression::description\28SkSL::OperatorPrecedence\29\20const +10753:SkSL::IndexExpression::clone\28SkSL::Position\29\20const +10754:SkSL::IfStatement::~IfStatement\28\29.1 +10755:SkSL::IfStatement::description\28\29\20const +10756:SkSL::GlobalVarDeclaration::description\28\29\20const +10757:SkSL::GenericType::slotType\28unsigned\20long\29\20const +10758:SkSL::GenericType::coercibleTypes\28\29\20const +10759:SkSL::GLSLCodeGenerator::~GLSLCodeGenerator\28\29.1 +10760:SkSL::FunctionReference::description\28SkSL::OperatorPrecedence\29\20const +10761:SkSL::FunctionReference::clone\28SkSL::Position\29\20const +10762:SkSL::FunctionPrototype::description\28\29\20const +10763:SkSL::FunctionDefinition::description\28\29\20const +10764: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 +10765:SkSL::FunctionCall::description\28SkSL::OperatorPrecedence\29\20const +10766:SkSL::FunctionCall::clone\28SkSL::Position\29\20const +10767:SkSL::ForStatement::~ForStatement\28\29.1 +10768:SkSL::ForStatement::description\28\29\20const +10769:SkSL::FieldSymbol::description\28\29\20const +10770:SkSL::FieldAccess::clone\28SkSL::Position\29\20const +10771:SkSL::Extension::description\28\29\20const +10772:SkSL::ExtendedVariable::~ExtendedVariable\28\29.1 +10773:SkSL::ExtendedVariable::setInterfaceBlock\28SkSL::InterfaceBlock*\29 +10774:SkSL::ExtendedVariable::mangledName\28\29\20const +10775:SkSL::ExtendedVariable::layout\28\29\20const +10776:SkSL::ExtendedVariable::interfaceBlock\28\29\20const +10777:SkSL::ExtendedVariable::detachDeadInterfaceBlock\28\29 +10778:SkSL::ExpressionStatement::description\28\29\20const +10779:SkSL::Expression::getConstantValue\28int\29\20const +10780:SkSL::Expression::description\28\29\20const +10781:SkSL::EmptyExpression::description\28SkSL::OperatorPrecedence\29\20const +10782:SkSL::EmptyExpression::clone\28SkSL::Position\29\20const +10783:SkSL::DoStatement::description\28\29\20const +10784:SkSL::DiscardStatement::description\28\29\20const +10785:SkSL::DebugTracePriv::~DebugTracePriv\28\29.1 +10786:SkSL::DebugTracePriv::writeTrace\28SkWStream*\29\20const +10787:SkSL::DebugTracePriv::dump\28SkWStream*\29\20const +10788:SkSL::CountReturnsWithLimit::visitStatement\28SkSL::Statement\20const&\29 +10789:SkSL::ContinueStatement::description\28\29\20const +10790:SkSL::ConstructorStruct::clone\28SkSL::Position\29\20const +10791:SkSL::ConstructorSplat::getConstantValue\28int\29\20const +10792:SkSL::ConstructorSplat::clone\28SkSL::Position\29\20const +10793:SkSL::ConstructorScalarCast::clone\28SkSL::Position\29\20const +10794:SkSL::ConstructorMatrixResize::getConstantValue\28int\29\20const +10795:SkSL::ConstructorMatrixResize::clone\28SkSL::Position\29\20const +10796:SkSL::ConstructorDiagonalMatrix::getConstantValue\28int\29\20const +10797:SkSL::ConstructorDiagonalMatrix::clone\28SkSL::Position\29\20const +10798:SkSL::ConstructorCompoundCast::clone\28SkSL::Position\29\20const +10799:SkSL::ConstructorCompound::clone\28SkSL::Position\29\20const +10800:SkSL::ConstructorArrayCast::clone\28SkSL::Position\29\20const +10801:SkSL::ConstructorArray::clone\28SkSL::Position\29\20const +10802:SkSL::Compiler::CompilerErrorReporter::handleError\28std::__2::basic_string_view>\2c\20SkSL::Position\29 +10803:SkSL::CodeGenerator::~CodeGenerator\28\29 +10804:SkSL::ChildCall::description\28SkSL::OperatorPrecedence\29\20const +10805:SkSL::ChildCall::clone\28SkSL::Position\29\20const +10806:SkSL::BreakStatement::description\28\29\20const +10807:SkSL::Block::~Block\28\29.1 +10808:SkSL::Block::description\28\29\20const +10809:SkSL::BinaryExpression::~BinaryExpression\28\29.1 +10810:SkSL::BinaryExpression::description\28SkSL::OperatorPrecedence\29\20const +10811:SkSL::BinaryExpression::clone\28SkSL::Position\29\20const +10812:SkSL::ArrayType::slotType\28unsigned\20long\29\20const +10813:SkSL::ArrayType::slotCount\28\29\20const +10814:SkSL::ArrayType::isUnsizedArray\28\29\20const +10815:SkSL::ArrayType::isOrContainsUnsizedArray\28\29\20const +10816:SkSL::ArrayType::isOrContainsAtomic\28\29\20const +10817:SkSL::ArrayType::isBuiltin\28\29\20const +10818:SkSL::ArrayType::isAllowedInUniform\28SkSL::Position*\29\20const +10819:SkSL::AnyConstructor::getConstantValue\28int\29\20const +10820:SkSL::AnyConstructor::description\28SkSL::OperatorPrecedence\29\20const +10821:SkSL::AnyConstructor::compareConstant\28SkSL::Expression\20const&\29\20const +10822:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::~ProgramSizeVisitor\28\29.1 +10823:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitStatement\28SkSL::Statement\20const&\29 +10824:SkSL::Analysis::CheckProgramStructure\28SkSL::Program\20const&\2c\20bool\29::ProgramSizeVisitor::visitExpression\28SkSL::Expression\20const&\29 +10825:SkSL::AliasType::textureAccess\28\29\20const +10826:SkSL::AliasType::slotType\28unsigned\20long\29\20const +10827:SkSL::AliasType::slotCount\28\29\20const +10828:SkSL::AliasType::rows\28\29\20const +10829:SkSL::AliasType::priority\28\29\20const +10830:SkSL::AliasType::isVector\28\29\20const +10831:SkSL::AliasType::isUnsizedArray\28\29\20const +10832:SkSL::AliasType::isStruct\28\29\20const +10833:SkSL::AliasType::isScalar\28\29\20const +10834:SkSL::AliasType::isMultisampled\28\29\20const +10835:SkSL::AliasType::isMatrix\28\29\20const +10836:SkSL::AliasType::isLiteral\28\29\20const +10837:SkSL::AliasType::isInterfaceBlock\28\29\20const +10838:SkSL::AliasType::isDepth\28\29\20const +10839:SkSL::AliasType::isArrayedTexture\28\29\20const +10840:SkSL::AliasType::isArray\28\29\20const +10841:SkSL::AliasType::dimensions\28\29\20const +10842:SkSL::AliasType::componentType\28\29\20const +10843:SkSL::AliasType::columns\28\29\20const +10844:SkSL::AliasType::coercibleTypes\28\29\20const +10845:SkRuntimeShader::~SkRuntimeShader\28\29.1 +10846:SkRuntimeShader::type\28\29\20const +10847:SkRuntimeShader::isOpaque\28\29\20const +10848:SkRuntimeShader::getTypeName\28\29\20const +10849:SkRuntimeShader::flatten\28SkWriteBuffer&\29\20const +10850:SkRuntimeShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +10851:SkRuntimeEffect::~SkRuntimeEffect\28\29.1 +10852:SkRuntimeEffect::MakeFromSource\28SkString\2c\20SkRuntimeEffect::Options\20const&\2c\20SkSL::ProgramKind\29 +10853:SkRuntimeEffect::MakeForColorFilter\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +10854:SkRuntimeEffect::MakeForBlender\28SkString\2c\20SkRuntimeEffect::Options\20const&\29 +10855:SkRgnClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10856:SkRgnClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10857:SkRgnClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10858:SkRgnClipBlitter::blitH\28int\2c\20int\2c\20int\29 +10859:SkRgnClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10860:SkRgnClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10861:SkRgnBuilder::~SkRgnBuilder\28\29.1 +10862:SkRgnBuilder::blitH\28int\2c\20int\2c\20int\29 +10863: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 +10864: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 +10865: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 +10866:SkRectClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10867:SkRectClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10868:SkRectClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +10869:SkRectClipBlitter::blitH\28int\2c\20int\2c\20int\29 +10870:SkRectClipBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +10871:SkRectClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10872:SkRecorder::~SkRecorder\28\29.1 +10873:SkRecorder::willSave\28\29 +10874:SkRecorder::onResetClip\28\29 +10875:SkRecorder::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10876:SkRecorder::onDrawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +10877:SkRecorder::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +10878:SkRecorder::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10879:SkRecorder::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10880:SkRecorder::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10881:SkRecorder::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10882:SkRecorder::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +10883:SkRecorder::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +10884:SkRecorder::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10885:SkRecorder::onDrawPaint\28SkPaint\20const&\29 +10886:SkRecorder::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10887:SkRecorder::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +10888:SkRecorder::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10889:SkRecorder::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +10890:SkRecorder::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10891:SkRecorder::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +10892:SkRecorder::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10893:SkRecorder::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10894:SkRecorder::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +10895:SkRecorder::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10896:SkRecorder::onDrawBehind\28SkPaint\20const&\29 +10897: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 +10898:SkRecorder::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +10899:SkRecorder::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +10900:SkRecorder::onDoSaveBehind\28SkRect\20const*\29 +10901:SkRecorder::onClipShader\28sk_sp\2c\20SkClipOp\29 +10902:SkRecorder::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10903:SkRecorder::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10904:SkRecorder::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10905:SkRecorder::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10906:SkRecorder::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +10907:SkRecorder::didTranslate\28float\2c\20float\29 +10908:SkRecorder::didSetM44\28SkM44\20const&\29 +10909:SkRecorder::didScale\28float\2c\20float\29 +10910:SkRecorder::didRestore\28\29 +10911:SkRecorder::didConcat44\28SkM44\20const&\29 +10912:SkRecordedDrawable::~SkRecordedDrawable\28\29.1 +10913:SkRecordedDrawable::onMakePictureSnapshot\28\29 +10914:SkRecordedDrawable::onGetBounds\28\29 +10915:SkRecordedDrawable::onDraw\28SkCanvas*\29 +10916:SkRecordedDrawable::onApproximateBytesUsed\28\29 +10917:SkRecordedDrawable::getTypeName\28\29\20const +10918:SkRecordedDrawable::flatten\28SkWriteBuffer&\29\20const +10919:SkRecord::~SkRecord\28\29.1 +10920:SkRasterPipelineSpriteBlitter::~SkRasterPipelineSpriteBlitter\28\29.1 +10921:SkRasterPipelineSpriteBlitter::setup\28SkPixmap\20const&\2c\20int\2c\20int\2c\20SkPaint\20const&\29 +10922:SkRasterPipelineSpriteBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10923:SkRasterPipelineBlitter::~SkRasterPipelineBlitter\28\29.1 +10924:SkRasterPipelineBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +10925:SkRasterPipelineBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +10926:SkRasterPipelineBlitter::blitH\28int\2c\20int\2c\20int\29 +10927:SkRasterPipelineBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10928:SkRasterPipelineBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +10929:SkRasterPipelineBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +10930: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 +10931: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 +10932: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 +10933: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 +10934:SkRadialGradient::getTypeName\28\29\20const +10935:SkRadialGradient::flatten\28SkWriteBuffer&\29\20const +10936:SkRadialGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +10937:SkRadialGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +10938:SkRTree::~SkRTree\28\29.1 +10939:SkRTree::search\28SkRect\20const&\2c\20std::__2::vector>*\29\20const +10940:SkRTree::insert\28SkRect\20const*\2c\20int\29 +10941:SkRTree::bytesUsed\28\29\20const +10942:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_3::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10943:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_2::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10944:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_1::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10945:SkPixmap::erase\28SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkIRect\20const*\29\20const::$_0::__invoke\28void*\2c\20unsigned\20long\20long\2c\20int\29 +10946:SkPixelRef::~SkPixelRef\28\29.1 +10947:SkPictureRecord::~SkPictureRecord\28\29.1 +10948:SkPictureRecord::willSave\28\29 +10949:SkPictureRecord::willRestore\28\29 +10950:SkPictureRecord::onResetClip\28\29 +10951:SkPictureRecord::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10952:SkPictureRecord::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +10953:SkPictureRecord::onDrawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +10954:SkPictureRecord::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +10955:SkPictureRecord::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +10956:SkPictureRecord::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +10957:SkPictureRecord::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +10958:SkPictureRecord::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +10959:SkPictureRecord::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +10960:SkPictureRecord::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +10961:SkPictureRecord::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +10962:SkPictureRecord::onDrawPaint\28SkPaint\20const&\29 +10963:SkPictureRecord::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +10964:SkPictureRecord::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10965:SkPictureRecord::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +10966:SkPictureRecord::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +10967:SkPictureRecord::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +10968:SkPictureRecord::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +10969:SkPictureRecord::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +10970:SkPictureRecord::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +10971:SkPictureRecord::onDrawBehind\28SkPaint\20const&\29 +10972: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 +10973:SkPictureRecord::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +10974:SkPictureRecord::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +10975:SkPictureRecord::onDoSaveBehind\28SkRect\20const*\29 +10976:SkPictureRecord::onClipShader\28sk_sp\2c\20SkClipOp\29 +10977:SkPictureRecord::onClipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +10978:SkPictureRecord::onClipRect\28SkRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10979:SkPictureRecord::onClipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10980:SkPictureRecord::onClipPath\28SkPath\20const&\2c\20SkClipOp\2c\20SkCanvas::ClipEdgeStyle\29 +10981:SkPictureRecord::getSaveLayerStrategy\28SkCanvas::SaveLayerRec\20const&\29 +10982:SkPictureRecord::didTranslate\28float\2c\20float\29 +10983:SkPictureRecord::didSetM44\28SkM44\20const&\29 +10984:SkPictureRecord::didScale\28float\2c\20float\29 +10985:SkPictureRecord::didConcat44\28SkM44\20const&\29 +10986:SkPictureImageGenerator::~SkPictureImageGenerator\28\29.1 +10987:SkPictureImageGenerator::onGetPixels\28SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20SkImageGenerator::Options\20const&\29 +10988:SkOTUtils::LocalizedStrings_SingleName::~LocalizedStrings_SingleName\28\29.1 +10989:SkOTUtils::LocalizedStrings_SingleName::next\28SkTypeface::LocalizedString*\29 +10990:SkOTUtils::LocalizedStrings_NameTable::~LocalizedStrings_NameTable\28\29.1 +10991:SkOTUtils::LocalizedStrings_NameTable::next\28SkTypeface::LocalizedString*\29 +10992:SkNoPixelsDevice::~SkNoPixelsDevice\28\29.1 +10993:SkNoPixelsDevice::replaceClip\28SkIRect\20const&\29 +10994:SkNoPixelsDevice::pushClipStack\28\29 +10995:SkNoPixelsDevice::popClipStack\28\29 +10996:SkNoPixelsDevice::onClipShader\28sk_sp\29 +10997:SkNoPixelsDevice::isClipWideOpen\28\29\20const +10998:SkNoPixelsDevice::isClipRect\28\29\20const +10999:SkNoPixelsDevice::isClipEmpty\28\29\20const +11000:SkNoPixelsDevice::isClipAntiAliased\28\29\20const +11001:SkNoPixelsDevice::devClipBounds\28\29\20const +11002:SkNoPixelsDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +11003:SkNoPixelsDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +11004:SkNoPixelsDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +11005:SkNoPixelsDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +11006:SkNoPixelsDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +11007:SkMipmap::~SkMipmap\28\29.1 +11008:SkMipmap::onDataChange\28void*\2c\20void*\29 +11009:SkMemoryStream::~SkMemoryStream\28\29.1 +11010:SkMemoryStream::setMemory\28void\20const*\2c\20unsigned\20long\2c\20bool\29 +11011:SkMemoryStream::seek\28unsigned\20long\29 +11012:SkMemoryStream::rewind\28\29 +11013:SkMemoryStream::read\28void*\2c\20unsigned\20long\29 +11014:SkMemoryStream::peek\28void*\2c\20unsigned\20long\29\20const +11015:SkMemoryStream::onFork\28\29\20const +11016:SkMemoryStream::onDuplicate\28\29\20const +11017:SkMemoryStream::move\28long\29 +11018:SkMemoryStream::isAtEnd\28\29\20const +11019:SkMemoryStream::getMemoryBase\28\29 +11020:SkMemoryStream::getLength\28\29\20const +11021:SkMemoryStream::getData\28\29\20const +11022:SkMatrixColorFilter::onIsAlphaUnchanged\28\29\20const +11023:SkMatrixColorFilter::onAsAColorMatrix\28float*\29\20const +11024:SkMatrixColorFilter::getTypeName\28\29\20const +11025:SkMatrixColorFilter::flatten\28SkWriteBuffer&\29\20const +11026:SkMatrixColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +11027:SkMatrix::Trans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +11028:SkMatrix::Trans_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +11029:SkMatrix::Scale_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +11030:SkMatrix::Scale_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +11031:SkMatrix::ScaleTrans_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +11032:SkMatrix::Poly4Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +11033:SkMatrix::Poly3Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +11034:SkMatrix::Poly2Proc\28SkPoint\20const*\2c\20SkMatrix*\29 +11035:SkMatrix::Persp_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +11036:SkMatrix::Persp_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +11037:SkMatrix::Identity_xy\28SkMatrix\20const&\2c\20float\2c\20float\2c\20SkPoint*\29 +11038:SkMatrix::Identity_pts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +11039:SkMatrix::Affine_vpts\28SkMatrix\20const&\2c\20SkPoint*\2c\20SkPoint\20const*\2c\20int\29 +11040:SkMaskFilterBase::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +11041:SkMaskFilterBase::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +11042:SkMallocPixelRef::MakeAllocate\28SkImageInfo\20const&\2c\20unsigned\20long\29::PixelRef::~PixelRef\28\29.1 +11043: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 +11044:SkLocalMatrixShader::~SkLocalMatrixShader\28\29.1 +11045:SkLocalMatrixShader::~SkLocalMatrixShader\28\29 +11046:SkLocalMatrixShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +11047:SkLocalMatrixShader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +11048:SkLocalMatrixShader::makeAsALocalMatrixShader\28SkMatrix*\29\20const +11049:SkLocalMatrixShader::isOpaque\28\29\20const +11050:SkLocalMatrixShader::isConstant\28\29\20const +11051:SkLocalMatrixShader::getTypeName\28\29\20const +11052:SkLocalMatrixShader::flatten\28SkWriteBuffer&\29\20const +11053:SkLocalMatrixShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +11054:SkLocalMatrixShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11055:SkLinearGradient::getTypeName\28\29\20const +11056:SkLinearGradient::flatten\28SkWriteBuffer&\29\20const +11057:SkLinearGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +11058:SkJSONWriter::popScope\28\29 +11059:SkIntersections::hasOppT\28double\29\20const +11060:SkImage_Raster::~SkImage_Raster\28\29.1 +11061:SkImage_Raster::onReinterpretColorSpace\28sk_sp\29\20const +11062:SkImage_Raster::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +11063:SkImage_Raster::onPeekPixels\28SkPixmap*\29\20const +11064:SkImage_Raster::onPeekMips\28\29\20const +11065:SkImage_Raster::onMakeWithMipmaps\28sk_sp\29\20const +11066:SkImage_Raster::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +11067:SkImage_Raster::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +11068:SkImage_Raster::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +11069:SkImage_Raster::onHasMipmaps\28\29\20const +11070:SkImage_Raster::onAsLegacyBitmap\28GrDirectContext*\2c\20SkBitmap*\29\20const +11071:SkImage_Raster::notifyAddedToRasterCache\28\29\20const +11072:SkImage_Raster::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +11073:SkImage_LazyTexture::readPixelsProxy\28GrDirectContext*\2c\20SkPixmap\20const&\29\20const +11074:SkImage_LazyTexture::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +11075:SkImage_Lazy::onReinterpretColorSpace\28sk_sp\29\20const +11076:SkImage_Lazy::onRefEncoded\28\29\20const +11077:SkImage_Lazy::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +11078:SkImage_Lazy::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +11079:SkImage_Lazy::onMakeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +11080:SkImage_Lazy::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +11081:SkImage_Lazy::onIsProtected\28\29\20const +11082:SkImage_Lazy::isValid\28GrRecordingContext*\29\20const +11083:SkImage_Lazy::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +11084:SkImage_GaneshBase::onReadPixels\28GrDirectContext*\2c\20SkImageInfo\20const&\2c\20void*\2c\20unsigned\20long\2c\20int\2c\20int\2c\20SkImage::CachingHint\29\20const +11085:SkImage_GaneshBase::onMakeSurface\28skgpu::graphite::Recorder*\2c\20SkImageInfo\20const&\29\20const +11086:SkImage_GaneshBase::onMakeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +11087:SkImage_GaneshBase::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +11088:SkImage_GaneshBase::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +11089:SkImage_GaneshBase::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +11090:SkImage_GaneshBase::isValid\28GrRecordingContext*\29\20const +11091:SkImage_GaneshBase::getROPixels\28GrDirectContext*\2c\20SkBitmap*\2c\20SkImage::CachingHint\29\20const +11092:SkImage_GaneshBase::directContext\28\29\20const +11093:SkImage_Ganesh::~SkImage_Ganesh\28\29.1 +11094:SkImage_Ganesh::textureSize\28\29\20const +11095:SkImage_Ganesh::onReinterpretColorSpace\28sk_sp\29\20const +11096:SkImage_Ganesh::onMakeColorTypeAndColorSpace\28SkColorType\2c\20sk_sp\2c\20GrDirectContext*\29\20const +11097:SkImage_Ganesh::onIsProtected\28\29\20const +11098:SkImage_Ganesh::onHasMipmaps\28\29\20const +11099: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 +11100: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 +11101:SkImage_Ganesh::generatingSurfaceIsDeleted\28\29 +11102:SkImage_Ganesh::flush\28GrDirectContext*\2c\20GrFlushInfo\20const&\29\20const +11103:SkImage_Ganesh::asView\28GrRecordingContext*\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29\20const +11104:SkImage_Ganesh::asFragmentProcessor\28GrRecordingContext*\2c\20SkSamplingOptions\2c\20SkTileMode\20const*\2c\20SkMatrix\20const&\2c\20SkRect\20const*\2c\20SkRect\20const*\29\20const +11105: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 +11106:SkImage_Base::notifyAddedToRasterCache\28\29\20const +11107:SkImage_Base::makeSubset\28skgpu::graphite::Recorder*\2c\20SkIRect\20const&\2c\20SkImage::RequiredProperties\29\20const +11108:SkImage_Base::makeSubset\28GrDirectContext*\2c\20SkIRect\20const&\29\20const +11109:SkImage_Base::makeColorTypeAndColorSpace\28skgpu::graphite::Recorder*\2c\20SkColorType\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +11110:SkImage_Base::makeColorTypeAndColorSpace\28GrDirectContext*\2c\20SkColorType\2c\20sk_sp\29\20const +11111:SkImage_Base::makeColorSpace\28skgpu::graphite::Recorder*\2c\20sk_sp\2c\20SkImage::RequiredProperties\29\20const +11112:SkImage_Base::makeColorSpace\28GrDirectContext*\2c\20sk_sp\29\20const +11113:SkImage_Base::isTextureBacked\28\29\20const +11114:SkImage_Base::isLazyGenerated\28\29\20const +11115:SkImageShader::~SkImageShader\28\29.1 +11116:SkImageShader::type\28\29\20const +11117:SkImageShader::onIsAImage\28SkMatrix*\2c\20SkTileMode*\29\20const +11118:SkImageShader::isOpaque\28\29\20const +11119:SkImageShader::getTypeName\28\29\20const +11120:SkImageShader::flatten\28SkWriteBuffer&\29\20const +11121:SkImageShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11122:SkImageGenerator::~SkImageGenerator\28\29.1 +11123:SkImageFilter::computeFastBounds\28SkRect\20const&\29\20const +11124:SkGradientBaseShader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +11125:SkGradientBaseShader::isOpaque\28\29\20const +11126:SkGradientBaseShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11127:SkGaussianColorFilter::getTypeName\28\29\20const +11128:SkGaussianColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +11129:SkGammaColorSpaceLuminance::toLuma\28float\2c\20float\29\20const +11130:SkGammaColorSpaceLuminance::fromLuma\28float\2c\20float\29\20const +11131:SkFontStyleSet_Custom::~SkFontStyleSet_Custom\28\29.1 +11132:SkFontStyleSet_Custom::getStyle\28int\2c\20SkFontStyle*\2c\20SkString*\29 +11133:SkFontScanner_FreeType::~SkFontScanner_FreeType\28\29.1 +11134:SkFontScanner_FreeType::scanFile\28SkStreamAsset*\2c\20int*\29\20const +11135:SkFontScanner_FreeType::scanFace\28SkStreamAsset*\2c\20int\2c\20int*\29\20const +11136:SkFontMgr_Custom::~SkFontMgr_Custom\28\29.1 +11137:SkFontMgr_Custom::onMatchFamily\28char\20const*\29\20const +11138:SkFontMgr_Custom::onMatchFamilyStyle\28char\20const*\2c\20SkFontStyle\20const&\29\20const +11139:SkFontMgr_Custom::onMakeFromStreamIndex\28std::__2::unique_ptr>\2c\20int\29\20const +11140:SkFontMgr_Custom::onMakeFromStreamArgs\28std::__2::unique_ptr>\2c\20SkFontArguments\20const&\29\20const +11141:SkFontMgr_Custom::onMakeFromFile\28char\20const*\2c\20int\29\20const +11142:SkFontMgr_Custom::onMakeFromData\28sk_sp\2c\20int\29\20const +11143:SkFontMgr_Custom::onLegacyMakeTypeface\28char\20const*\2c\20SkFontStyle\29\20const +11144:SkFontMgr_Custom::onGetFamilyName\28int\2c\20SkString*\29\20const +11145:SkFILEStream::~SkFILEStream\28\29.1 +11146:SkFILEStream::seek\28unsigned\20long\29 +11147:SkFILEStream::rewind\28\29 +11148:SkFILEStream::read\28void*\2c\20unsigned\20long\29 +11149:SkFILEStream::onFork\28\29\20const +11150:SkFILEStream::onDuplicate\28\29\20const +11151:SkFILEStream::move\28long\29 +11152:SkFILEStream::isAtEnd\28\29\20const +11153:SkFILEStream::getPosition\28\29\20const +11154:SkFILEStream::getLength\28\29\20const +11155:SkEmptyShader::getTypeName\28\29\20const +11156:SkEmptyPicture::~SkEmptyPicture\28\29 +11157:SkEmptyPicture::cullRect\28\29\20const +11158:SkEmptyPicture::approximateBytesUsed\28\29\20const +11159:SkEmptyFontMgr::onMatchFamily\28char\20const*\29\20const +11160:SkEdgeBuilder::build\28SkPath\20const&\2c\20SkIRect\20const*\2c\20bool\29::$_0::__invoke\28SkEdgeClipper*\2c\20bool\2c\20void*\29 +11161:SkDynamicMemoryWStream::~SkDynamicMemoryWStream\28\29.1 +11162:SkDynamicMemoryWStream::bytesWritten\28\29\20const +11163:SkDraw::paintMasks\28SkZip\2c\20SkPaint\20const&\29\20const +11164:SkDevice::strikeDeviceInfo\28\29\20const +11165:SkDevice::drawSlug\28SkCanvas*\2c\20sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +11166:SkDevice::drawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +11167:SkDevice::drawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20sk_sp\2c\20SkPaint\20const&\29 +11168:SkDevice::drawImageLattice\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const&\29 +11169:SkDevice::drawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +11170:SkDevice::drawEdgeAAImageSet\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +11171:SkDevice::drawDrawable\28SkCanvas*\2c\20SkDrawable*\2c\20SkMatrix\20const*\29 +11172:SkDevice::drawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +11173:SkDevice::drawCoverageMask\28SkSpecialImage\20const*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\29 +11174:SkDevice::drawBlurredRRect\28SkRRect\20const&\2c\20SkPaint\20const&\2c\20float\29 +11175:SkDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +11176:SkDevice::drawAsTiledImageRect\28SkCanvas*\2c\20SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +11177:SkDevice::createImageFilteringBackend\28SkSurfaceProps\20const&\2c\20SkColorType\29\20const +11178:SkDashImpl::~SkDashImpl\28\29.1 +11179:SkDashImpl::onFilterPath\28SkPath*\2c\20SkPath\20const&\2c\20SkStrokeRec*\2c\20SkRect\20const*\2c\20SkMatrix\20const&\29\20const +11180:SkDashImpl::onAsPoints\28SkPathEffectBase::PointData*\2c\20SkPath\20const&\2c\20SkStrokeRec\20const&\2c\20SkMatrix\20const&\2c\20SkRect\20const*\29\20const +11181:SkDashImpl::onAsADash\28SkPathEffect::DashInfo*\29\20const +11182:SkDashImpl::getTypeName\28\29\20const +11183:SkDashImpl::flatten\28SkWriteBuffer&\29\20const +11184:SkDCurve::nearPoint\28SkPath::Verb\2c\20SkDPoint\20const&\2c\20SkDPoint\20const&\29\20const +11185:SkContourMeasure::~SkContourMeasure\28\29.1 +11186:SkConicalGradient::getTypeName\28\29\20const +11187:SkConicalGradient::flatten\28SkWriteBuffer&\29\20const +11188:SkConicalGradient::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +11189:SkConicalGradient::appendGradientStages\28SkArenaAlloc*\2c\20SkRasterPipeline*\2c\20SkRasterPipeline*\29\20const +11190:SkComposeColorFilter::onIsAlphaUnchanged\28\29\20const +11191:SkComposeColorFilter::getTypeName\28\29\20const +11192:SkComposeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +11193:SkColorSpaceXformColorFilter::~SkColorSpaceXformColorFilter\28\29.1 +11194:SkColorSpaceXformColorFilter::getTypeName\28\29\20const +11195:SkColorSpaceXformColorFilter::flatten\28SkWriteBuffer&\29\20const +11196:SkColorSpaceXformColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +11197:SkColorShader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +11198:SkColorShader::isOpaque\28\29\20const +11199:SkColorShader::getTypeName\28\29\20const +11200:SkColorShader::flatten\28SkWriteBuffer&\29\20const +11201:SkColorShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11202:SkColorFilterShader::~SkColorFilterShader\28\29.1 +11203:SkColorFilterShader::isOpaque\28\29\20const +11204:SkColorFilterShader::getTypeName\28\29\20const +11205:SkColorFilterShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11206:SkColorFilterBase::onFilterColor4f\28SkRGBA4f<\28SkAlphaType\292>\20const&\2c\20SkColorSpace*\29\20const +11207:SkColor4Shader::~SkColor4Shader\28\29.1 +11208:SkColor4Shader::onAsLuminanceColor\28SkRGBA4f<\28SkAlphaType\293>*\29\20const +11209:SkColor4Shader::isOpaque\28\29\20const +11210:SkColor4Shader::getTypeName\28\29\20const +11211:SkColor4Shader::flatten\28SkWriteBuffer&\29\20const +11212:SkColor4Shader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11213:SkCoincidentSpans::setOppPtTStart\28SkOpPtT\20const*\29 +11214:SkCoincidentSpans::setOppPtTEnd\28SkOpPtT\20const*\29 +11215:SkCoincidentSpans::setCoinPtTStart\28SkOpPtT\20const*\29 +11216:SkCoincidentSpans::setCoinPtTEnd\28SkOpPtT\20const*\29 +11217:SkCanvas::~SkCanvas\28\29.1 +11218:SkCanvas::recordingContext\28\29\20const +11219:SkCanvas::recorder\28\29\20const +11220:SkCanvas::onPeekPixels\28SkPixmap*\29 +11221:SkCanvas::onNewSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +11222:SkCanvas::onImageInfo\28\29\20const +11223:SkCanvas::onGetProps\28SkSurfaceProps*\2c\20bool\29\20const +11224:SkCanvas::onDrawVerticesObject\28SkVertices\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +11225:SkCanvas::onDrawTextBlob\28SkTextBlob\20const*\2c\20float\2c\20float\2c\20SkPaint\20const&\29 +11226:SkCanvas::onDrawSlug\28sktext::gpu::Slug\20const*\2c\20SkPaint\20const&\29 +11227:SkCanvas::onDrawShadowRec\28SkPath\20const&\2c\20SkDrawShadowRec\20const&\29 +11228:SkCanvas::onDrawRegion\28SkRegion\20const&\2c\20SkPaint\20const&\29 +11229:SkCanvas::onDrawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +11230:SkCanvas::onDrawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +11231:SkCanvas::onDrawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +11232:SkCanvas::onDrawPicture\28SkPicture\20const*\2c\20SkMatrix\20const*\2c\20SkPaint\20const*\29 +11233:SkCanvas::onDrawPath\28SkPath\20const&\2c\20SkPaint\20const&\29 +11234:SkCanvas::onDrawPatch\28SkPoint\20const*\2c\20unsigned\20int\20const*\2c\20SkPoint\20const*\2c\20SkBlendMode\2c\20SkPaint\20const&\29 +11235:SkCanvas::onDrawPaint\28SkPaint\20const&\29 +11236:SkCanvas::onDrawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +11237:SkCanvas::onDrawMesh\28SkMesh\20const&\2c\20sk_sp\2c\20SkPaint\20const&\29 +11238:SkCanvas::onDrawImageRect2\28SkImage\20const*\2c\20SkRect\20const&\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +11239:SkCanvas::onDrawImageLattice2\28SkImage\20const*\2c\20SkCanvas::Lattice\20const&\2c\20SkRect\20const&\2c\20SkFilterMode\2c\20SkPaint\20const*\29 +11240:SkCanvas::onDrawImage2\28SkImage\20const*\2c\20float\2c\20float\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\29 +11241:SkCanvas::onDrawGlyphRunList\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +11242:SkCanvas::onDrawEdgeAAQuad\28SkRect\20const&\2c\20SkPoint\20const*\2c\20SkCanvas::QuadAAFlags\2c\20SkRGBA4f<\28SkAlphaType\293>\20const&\2c\20SkBlendMode\29 +11243:SkCanvas::onDrawEdgeAAImageSet2\28SkCanvas::ImageSetEntry\20const*\2c\20int\2c\20SkPoint\20const*\2c\20SkMatrix\20const*\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const*\2c\20SkCanvas::SrcRectConstraint\29 +11244:SkCanvas::onDrawDrawable\28SkDrawable*\2c\20SkMatrix\20const*\29 +11245:SkCanvas::onDrawDRRect\28SkRRect\20const&\2c\20SkRRect\20const&\2c\20SkPaint\20const&\29 +11246:SkCanvas::onDrawBehind\28SkPaint\20const&\29 +11247: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 +11248:SkCanvas::onDrawArc\28SkRect\20const&\2c\20float\2c\20float\2c\20bool\2c\20SkPaint\20const&\29 +11249:SkCanvas::onDrawAnnotation\28SkRect\20const&\2c\20char\20const*\2c\20SkData*\29 +11250:SkCanvas::onDiscard\28\29 +11251:SkCanvas::onConvertGlyphRunListToSlug\28sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +11252:SkCanvas::onAccessTopLayerPixels\28SkPixmap*\29 +11253:SkCanvas::isClipRect\28\29\20const +11254:SkCanvas::isClipEmpty\28\29\20const +11255:SkCanvas::getBaseLayerSize\28\29\20const +11256:SkCachedData::~SkCachedData\28\29.1 +11257:SkCTMShader::~SkCTMShader\28\29.1 +11258:SkCTMShader::~SkCTMShader\28\29 +11259:SkCTMShader::isConstant\28\29\20const +11260:SkCTMShader::getTypeName\28\29\20const +11261:SkCTMShader::asGradient\28SkShaderBase::GradientInfo*\2c\20SkMatrix*\29\20const +11262:SkCTMShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11263:SkBreakIterator_client::~SkBreakIterator_client\28\29.1 +11264:SkBreakIterator_client::status\28\29 +11265:SkBreakIterator_client::setText\28char\20const*\2c\20int\29 +11266:SkBreakIterator_client::setText\28char16_t\20const*\2c\20int\29 +11267:SkBreakIterator_client::next\28\29 +11268:SkBreakIterator_client::isDone\28\29 +11269:SkBreakIterator_client::first\28\29 +11270:SkBreakIterator_client::current\28\29 +11271:SkBlurMaskFilterImpl::getTypeName\28\29\20const +11272:SkBlurMaskFilterImpl::flatten\28SkWriteBuffer&\29\20const +11273:SkBlurMaskFilterImpl::filterRectsToNine\28SkRect\20const*\2c\20int\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +11274:SkBlurMaskFilterImpl::filterRRectToNine\28SkRRect\20const&\2c\20SkMatrix\20const&\2c\20SkIRect\20const&\2c\20SkTLazy*\29\20const +11275:SkBlurMaskFilterImpl::filterMask\28SkMaskBuilder*\2c\20SkMask\20const&\2c\20SkMatrix\20const&\2c\20SkIPoint*\29\20const +11276:SkBlurMaskFilterImpl::computeFastBounds\28SkRect\20const&\2c\20SkRect*\29\20const +11277:SkBlurMaskFilterImpl::asImageFilter\28SkMatrix\20const&\29\20const +11278:SkBlurMaskFilterImpl::asABlur\28SkMaskFilterBase::BlurRec*\29\20const +11279:SkBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11280:SkBlitter::blitAntiV2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +11281:SkBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +11282:SkBlitter::blitAntiH2\28int\2c\20int\2c\20unsigned\20int\2c\20unsigned\20int\29 +11283:SkBlitter::allocBlitMemory\28unsigned\20long\29 +11284:SkBlendShader::getTypeName\28\29\20const +11285:SkBlendShader::flatten\28SkWriteBuffer&\29\20const +11286:SkBlendShader::appendStages\28SkStageRec\20const&\2c\20SkShaders::MatrixRec\20const&\29\20const +11287:SkBlendModeColorFilter::onIsAlphaUnchanged\28\29\20const +11288:SkBlendModeColorFilter::onAsAColorMode\28unsigned\20int*\2c\20SkBlendMode*\29\20const +11289:SkBlendModeColorFilter::getTypeName\28\29\20const +11290:SkBlendModeColorFilter::flatten\28SkWriteBuffer&\29\20const +11291:SkBlendModeColorFilter::appendStages\28SkStageRec\20const&\2c\20bool\29\20const +11292:SkBlendModeBlender::onAppendStages\28SkStageRec\20const&\29\20const +11293:SkBlendModeBlender::getTypeName\28\29\20const +11294:SkBlendModeBlender::flatten\28SkWriteBuffer&\29\20const +11295:SkBlendModeBlender::asBlendMode\28\29\20const +11296:SkBitmapDevice::~SkBitmapDevice\28\29.1 +11297:SkBitmapDevice::snapSpecial\28SkIRect\20const&\2c\20bool\29 +11298:SkBitmapDevice::setImmutable\28\29 +11299:SkBitmapDevice::replaceClip\28SkIRect\20const&\29 +11300:SkBitmapDevice::pushClipStack\28\29 +11301:SkBitmapDevice::popClipStack\28\29 +11302:SkBitmapDevice::onWritePixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +11303:SkBitmapDevice::onReadPixels\28SkPixmap\20const&\2c\20int\2c\20int\29 +11304:SkBitmapDevice::onPeekPixels\28SkPixmap*\29 +11305:SkBitmapDevice::onDrawGlyphRunList\28SkCanvas*\2c\20sktext::GlyphRunList\20const&\2c\20SkPaint\20const&\29 +11306:SkBitmapDevice::onClipShader\28sk_sp\29 +11307:SkBitmapDevice::onAccessPixels\28SkPixmap*\29 +11308:SkBitmapDevice::makeSurface\28SkImageInfo\20const&\2c\20SkSurfaceProps\20const&\29 +11309:SkBitmapDevice::makeSpecial\28SkImage\20const*\29 +11310:SkBitmapDevice::makeSpecial\28SkBitmap\20const&\29 +11311:SkBitmapDevice::isClipWideOpen\28\29\20const +11312:SkBitmapDevice::isClipRect\28\29\20const +11313:SkBitmapDevice::isClipEmpty\28\29\20const +11314:SkBitmapDevice::isClipAntiAliased\28\29\20const +11315:SkBitmapDevice::getRasterHandle\28\29\20const +11316:SkBitmapDevice::drawVertices\28SkVertices\20const*\2c\20sk_sp\2c\20SkPaint\20const&\2c\20bool\29 +11317:SkBitmapDevice::drawSpecial\28SkSpecialImage*\2c\20SkMatrix\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +11318:SkBitmapDevice::drawRect\28SkRect\20const&\2c\20SkPaint\20const&\29 +11319:SkBitmapDevice::drawRRect\28SkRRect\20const&\2c\20SkPaint\20const&\29 +11320:SkBitmapDevice::drawPoints\28SkCanvas::PointMode\2c\20unsigned\20long\2c\20SkPoint\20const*\2c\20SkPaint\20const&\29 +11321:SkBitmapDevice::drawPath\28SkPath\20const&\2c\20SkPaint\20const&\2c\20bool\29 +11322:SkBitmapDevice::drawPaint\28SkPaint\20const&\29 +11323:SkBitmapDevice::drawOval\28SkRect\20const&\2c\20SkPaint\20const&\29 +11324:SkBitmapDevice::drawImageRect\28SkImage\20const*\2c\20SkRect\20const*\2c\20SkRect\20const&\2c\20SkSamplingOptions\20const&\2c\20SkPaint\20const&\2c\20SkCanvas::SrcRectConstraint\29 +11325:SkBitmapDevice::drawAtlas\28SkRSXform\20const*\2c\20SkRect\20const*\2c\20unsigned\20int\20const*\2c\20int\2c\20sk_sp\2c\20SkPaint\20const&\29 +11326:SkBitmapDevice::devClipBounds\28\29\20const +11327:SkBitmapDevice::createDevice\28SkDevice::CreateInfo\20const&\2c\20SkPaint\20const*\29 +11328:SkBitmapDevice::clipRegion\28SkRegion\20const&\2c\20SkClipOp\29 +11329:SkBitmapDevice::clipRect\28SkRect\20const&\2c\20SkClipOp\2c\20bool\29 +11330:SkBitmapDevice::clipRRect\28SkRRect\20const&\2c\20SkClipOp\2c\20bool\29 +11331:SkBitmapDevice::clipPath\28SkPath\20const&\2c\20SkClipOp\2c\20bool\29 +11332:SkBitmapDevice::android_utils_clipAsRgn\28SkRegion*\29\20const +11333:SkBitmapCache::Rec::~Rec\28\29.1 +11334:SkBitmapCache::Rec::postAddInstall\28void*\29 +11335:SkBitmapCache::Rec::getCategory\28\29\20const +11336:SkBitmapCache::Rec::canBePurged\28\29 +11337:SkBitmapCache::Rec::bytesUsed\28\29\20const +11338:SkBitmapCache::Rec::ReleaseProc\28void*\2c\20void*\29 +11339:SkBitmapCache::Rec::Finder\28SkResourceCache::Rec\20const&\2c\20void*\29 +11340:SkBinaryWriteBuffer::~SkBinaryWriteBuffer\28\29.1 +11341:SkBinaryWriteBuffer::write\28SkM44\20const&\29 +11342:SkBinaryWriteBuffer::writeTypeface\28SkTypeface*\29 +11343:SkBinaryWriteBuffer::writeString\28std::__2::basic_string_view>\29 +11344:SkBinaryWriteBuffer::writeStream\28SkStream*\2c\20unsigned\20long\29 +11345:SkBinaryWriteBuffer::writeScalar\28float\29 +11346:SkBinaryWriteBuffer::writeSampling\28SkSamplingOptions\20const&\29 +11347:SkBinaryWriteBuffer::writeRegion\28SkRegion\20const&\29 +11348:SkBinaryWriteBuffer::writeRect\28SkRect\20const&\29 +11349:SkBinaryWriteBuffer::writePoint\28SkPoint\20const&\29 +11350:SkBinaryWriteBuffer::writePointArray\28SkPoint\20const*\2c\20unsigned\20int\29 +11351:SkBinaryWriteBuffer::writePoint3\28SkPoint3\20const&\29 +11352:SkBinaryWriteBuffer::writePath\28SkPath\20const&\29 +11353:SkBinaryWriteBuffer::writePaint\28SkPaint\20const&\29 +11354:SkBinaryWriteBuffer::writePad32\28void\20const*\2c\20unsigned\20long\29 +11355:SkBinaryWriteBuffer::writeMatrix\28SkMatrix\20const&\29 +11356:SkBinaryWriteBuffer::writeImage\28SkImage\20const*\29 +11357:SkBinaryWriteBuffer::writeColor4fArray\28SkRGBA4f<\28SkAlphaType\293>\20const*\2c\20unsigned\20int\29 +11358:SkBinaryWriteBuffer::writeBool\28bool\29 +11359:SkBigPicture::~SkBigPicture\28\29.1 +11360:SkBigPicture::playback\28SkCanvas*\2c\20SkPicture::AbortCallback*\29\20const +11361:SkBigPicture::cullRect\28\29\20const +11362:SkBigPicture::approximateOpCount\28bool\29\20const +11363:SkBigPicture::approximateBytesUsed\28\29\20const +11364:SkBidiSubsetFactory::errorName\28UErrorCode\29\20const +11365:SkBidiSubsetFactory::bidi_setPara\28UBiDi*\2c\20char16_t\20const*\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char*\2c\20UErrorCode*\29\20const +11366:SkBidiSubsetFactory::bidi_reorderVisual\28unsigned\20char\20const*\2c\20int\2c\20int*\29\20const +11367:SkBidiSubsetFactory::bidi_openSized\28int\2c\20int\2c\20UErrorCode*\29\20const +11368:SkBidiSubsetFactory::bidi_getLevelAt\28UBiDi\20const*\2c\20int\29\20const +11369:SkBidiSubsetFactory::bidi_getLength\28UBiDi\20const*\29\20const +11370:SkBidiSubsetFactory::bidi_getDirection\28UBiDi\20const*\29\20const +11371:SkBidiSubsetFactory::bidi_close_callback\28\29\20const +11372:SkBasicEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +11373:SkBasicEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +11374:SkBasicEdgeBuilder::addQuad\28SkPoint\20const*\29 +11375:SkBasicEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +11376:SkBasicEdgeBuilder::addLine\28SkPoint\20const*\29 +11377:SkBasicEdgeBuilder::addCubic\28SkPoint\20const*\29 +11378:SkBBoxHierarchy::insert\28SkRect\20const*\2c\20SkBBoxHierarchy::Metadata\20const*\2c\20int\29 +11379:SkArenaAlloc::SkipPod\28char*\29 +11380:SkArenaAlloc::NextBlock\28char*\29 +11381:SkAnalyticEdgeBuilder::recoverClip\28SkIRect\20const&\29\20const +11382:SkAnalyticEdgeBuilder::allocEdges\28unsigned\20long\2c\20unsigned\20long*\29 +11383:SkAnalyticEdgeBuilder::addQuad\28SkPoint\20const*\29 +11384:SkAnalyticEdgeBuilder::addPolyLine\28SkPoint\20const*\2c\20char*\2c\20char**\29 +11385:SkAnalyticEdgeBuilder::addLine\28SkPoint\20const*\29 +11386:SkAnalyticEdgeBuilder::addCubic\28SkPoint\20const*\29 +11387:SkAAClipBlitter::~SkAAClipBlitter\28\29.1 +11388:SkAAClipBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11389:SkAAClipBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11390:SkAAClipBlitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11391:SkAAClipBlitter::blitH\28int\2c\20int\2c\20int\29 +11392:SkAAClipBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +11393:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_1::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +11394:SkAAClip::Builder::operateY\28SkAAClip\20const&\2c\20SkAAClip\20const&\2c\20SkClipOp\29::$_0::__invoke\28unsigned\20int\2c\20unsigned\20int\29 +11395:SkAAClip::Builder::Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11396:SkAAClip::Builder::Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11397:SkAAClip::Builder::Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11398:SkAAClip::Builder::Blitter::blitH\28int\2c\20int\2c\20int\29 +11399:SkAAClip::Builder::Blitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +11400:SkA8_Coverage_Blitter::~SkA8_Coverage_Blitter\28\29.1 +11401:SkA8_Coverage_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11402:SkA8_Coverage_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11403:SkA8_Coverage_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11404:SkA8_Coverage_Blitter::blitH\28int\2c\20int\2c\20int\29 +11405:SkA8_Coverage_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +11406:SkA8_Blitter::~SkA8_Blitter\28\29.1 +11407:SkA8_Blitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11408:SkA8_Blitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11409:SkA8_Blitter::blitMask\28SkMask\20const&\2c\20SkIRect\20const&\29 +11410:SkA8_Blitter::blitH\28int\2c\20int\2c\20int\29 +11411:SkA8_Blitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20short\20const*\29 +11412:SkA8Blitter_Choose\28SkPixmap\20const&\2c\20SkMatrix\20const&\2c\20SkPaint\20const&\2c\20SkArenaAlloc*\2c\20bool\2c\20sk_sp\2c\20SkSurfaceProps\20const&\29 +11413:ShaderPDXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11414:ShaderPDXferProcessor::name\28\29\20const +11415:ShaderPDXferProcessor::makeProgramImpl\28\29\20const +11416:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11417:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11418:SafeRLEAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11419:RuntimeEffectRPCallbacks::toLinearSrgb\28void\20const*\29 +11420:RuntimeEffectRPCallbacks::fromLinearSrgb\28void\20const*\29 +11421:RuntimeEffectRPCallbacks::appendShader\28int\29 +11422:RuntimeEffectRPCallbacks::appendColorFilter\28int\29 +11423:RuntimeEffectRPCallbacks::appendBlender\28int\29 +11424:RunBasedAdditiveBlitter::getRealBlitter\28bool\29 +11425:RunBasedAdditiveBlitter::flush_if_y_changed\28int\2c\20int\29 +11426:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11427:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11428:RunBasedAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11429:Round_Up_To_Grid +11430:Round_To_Half_Grid +11431:Round_To_Grid +11432:Round_To_Double_Grid +11433:Round_Super_45 +11434:Round_Super +11435:Round_None +11436:Round_Down_To_Grid +11437:RoundJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11438:RoundCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +11439:Read_CVT_Stretched +11440:Read_CVT +11441:Project_y +11442:Project +11443:PrePostInverseBlitterProc\28SkBlitter*\2c\20int\2c\20bool\29 +11444:PorterDuffXferProcessor::onHasSecondaryOutput\28\29\20const +11445:PorterDuffXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11446:PorterDuffXferProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11447:PorterDuffXferProcessor::name\28\29\20const +11448:PorterDuffXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11449:PorterDuffXferProcessor::makeProgramImpl\28\29\20const +11450:PDLCDXferProcessor::onIsEqual\28GrXferProcessor\20const&\29\20const +11451:PDLCDXferProcessor::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11452:PDLCDXferProcessor::name\28\29\20const +11453:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrXferProcessor\20const&\29 +11454:PDLCDXferProcessor::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11455:PDLCDXferProcessor::makeProgramImpl\28\29\20const +11456:OT::match_glyph\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11457:OT::match_coverage\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11458:OT::match_class_cached\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11459:OT::match_class_cached2\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11460:OT::match_class_cached1\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11461:OT::match_class\28hb_glyph_info_t&\2c\20unsigned\20int\2c\20void\20const*\29 +11462: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 +11463: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 +11464:OT::Layout::Common::RangeRecord::cmp_range\28void\20const*\2c\20void\20const*\29 +11465: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 +11466: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 +11467:OT::CmapSubtableFormat4::accelerator_t::get_glyph_func\28void\20const*\2c\20unsigned\20int\2c\20unsigned\20int*\29 +11468:Move_CVT_Stretched +11469:Move_CVT +11470:MiterJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +11471:MaskAdditiveBlitter::~MaskAdditiveBlitter\28\29.1 +11472:MaskAdditiveBlitter::getWidth\28\29 +11473:MaskAdditiveBlitter::getRealBlitter\28bool\29 +11474:MaskAdditiveBlitter::blitV\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11475:MaskAdditiveBlitter::blitRect\28int\2c\20int\2c\20int\2c\20int\29 +11476:MaskAdditiveBlitter::blitAntiRect\28int\2c\20int\2c\20int\2c\20int\2c\20unsigned\20char\2c\20unsigned\20char\29 +11477:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\29 +11478:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20unsigned\20char\20const*\2c\20int\29 +11479:MaskAdditiveBlitter::blitAntiH\28int\2c\20int\2c\20int\2c\20unsigned\20char\29 +11480:InverseBlitter::blitH\28int\2c\20int\2c\20int\29 +11481:Horish_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +11482:Horish_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +11483:HLine_SkAntiHairBlitter::drawLine\28int\2c\20int\2c\20int\2c\20int\29 +11484:HLine_SkAntiHairBlitter::drawCap\28int\2c\20int\2c\20int\2c\20int\29 +11485:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11486:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11487:GrYUVtoRGBEffect::onMakeProgramImpl\28\29\20const +11488:GrYUVtoRGBEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11489:GrYUVtoRGBEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11490:GrYUVtoRGBEffect::name\28\29\20const +11491:GrYUVtoRGBEffect::clone\28\29\20const +11492:GrXferProcessor::ProgramImpl::emitWriteSwizzle\28GrGLSLXPFragmentBuilder*\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20char\20const*\29\20const +11493:GrXferProcessor::ProgramImpl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11494: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 +11495:GrWritePixelsTask::~GrWritePixelsTask\28\29.1 +11496:GrWritePixelsTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +11497:GrWritePixelsTask::onExecute\28GrOpFlushState*\29 +11498:GrWritePixelsTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11499:GrWaitRenderTask::~GrWaitRenderTask\28\29.1 +11500:GrWaitRenderTask::onIsUsed\28GrSurfaceProxy*\29\20const +11501:GrWaitRenderTask::onExecute\28GrOpFlushState*\29 +11502:GrWaitRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11503:GrTransferFromRenderTask::~GrTransferFromRenderTask\28\29.1 +11504:GrTransferFromRenderTask::onExecute\28GrOpFlushState*\29 +11505:GrTransferFromRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11506:GrThreadSafeCache::Trampoline::~Trampoline\28\29.1 +11507:GrTextureResolveRenderTask::~GrTextureResolveRenderTask\28\29.1 +11508:GrTextureResolveRenderTask::onExecute\28GrOpFlushState*\29 +11509:GrTextureResolveRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11510:GrTextureEffect::~GrTextureEffect\28\29.1 +11511:GrTextureEffect::onMakeProgramImpl\28\29\20const +11512:GrTextureEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11513:GrTextureEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11514:GrTextureEffect::name\28\29\20const +11515:GrTextureEffect::clone\28\29\20const +11516:GrTextureEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11517:GrTextureEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11518:GrTDeferredProxyUploader>::~GrTDeferredProxyUploader\28\29.1 +11519:GrTDeferredProxyUploader>::freeData\28\29 +11520:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::~GrTDeferredProxyUploader\28\29.1 +11521:GrTDeferredProxyUploader<\28anonymous\20namespace\29::SoftwarePathData>::freeData\28\29 +11522:GrSurfaceProxy::getUniqueKey\28\29\20const +11523:GrSurface::getResourceType\28\29\20const +11524:GrStrokeTessellationShader::~GrStrokeTessellationShader\28\29.1 +11525:GrStrokeTessellationShader::name\28\29\20const +11526:GrStrokeTessellationShader::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11527:GrStrokeTessellationShader::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11528:GrStrokeTessellationShader::Impl::~Impl\28\29.1 +11529:GrStrokeTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11530:GrStrokeTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11531:GrSkSLFP::~GrSkSLFP\28\29.1 +11532:GrSkSLFP::onMakeProgramImpl\28\29\20const +11533:GrSkSLFP::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11534:GrSkSLFP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11535:GrSkSLFP::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11536:GrSkSLFP::clone\28\29\20const +11537:GrSkSLFP::Impl::~Impl\28\29.1 +11538:GrSkSLFP::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11539:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::toLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +11540:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleShader\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +11541:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::sampleColorFilter\28int\2c\20std::__2::basic_string\2c\20std::__2::allocator>\29 +11542: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 +11543:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::getMangledName\28char\20const*\29 +11544:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::fromLinearSrgb\28std::__2::basic_string\2c\20std::__2::allocator>\29 +11545:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::defineFunction\28char\20const*\2c\20char\20const*\2c\20bool\29 +11546:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareUniform\28SkSL::VarDeclaration\20const*\29 +11547:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29::FPCallbacks::declareFunction\28char\20const*\29 +11548:GrSkSLFP::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11549:GrSimpleMesh*\20SkArenaAlloc::allocUninitializedArray\28unsigned\20long\29::'lambda'\28char*\29::__invoke\28char*\29 +11550:GrRingBuffer::FinishSubmit\28void*\29 +11551:GrResourceCache::CompareTimestamp\28GrGpuResource*\20const&\2c\20GrGpuResource*\20const&\29 +11552:GrRenderTask::disown\28GrDrawingManager*\29 +11553:GrRecordingContext::~GrRecordingContext\28\29.1 +11554:GrRRectShadowGeoProc::~GrRRectShadowGeoProc\28\29.1 +11555:GrRRectShadowGeoProc::onTextureSampler\28int\29\20const +11556:GrRRectShadowGeoProc::name\28\29\20const +11557:GrRRectShadowGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11558:GrRRectShadowGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11559:GrQuadEffect::name\28\29\20const +11560:GrQuadEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11561:GrQuadEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11562:GrQuadEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11563:GrQuadEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11564:GrPorterDuffXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11565:GrPorterDuffXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11566:GrPerlinNoise2Effect::~GrPerlinNoise2Effect\28\29.1 +11567:GrPerlinNoise2Effect::onMakeProgramImpl\28\29\20const +11568:GrPerlinNoise2Effect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11569:GrPerlinNoise2Effect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11570:GrPerlinNoise2Effect::name\28\29\20const +11571:GrPerlinNoise2Effect::clone\28\29\20const +11572:GrPerlinNoise2Effect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11573:GrPerlinNoise2Effect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11574:GrPathTessellationShader::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11575:GrPathTessellationShader::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11576:GrOpsRenderPass::onExecuteDrawable\28std::__2::unique_ptr>\29 +11577:GrOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11578:GrOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11579:GrOpFlushState::writeView\28\29\20const +11580:GrOpFlushState::usesMSAASurface\28\29\20const +11581:GrOpFlushState::tokenTracker\28\29 +11582:GrOpFlushState::threadSafeCache\28\29\20const +11583:GrOpFlushState::strikeCache\28\29\20const +11584:GrOpFlushState::sampledProxyArray\28\29 +11585:GrOpFlushState::rtProxy\28\29\20const +11586:GrOpFlushState::resourceProvider\28\29\20const +11587:GrOpFlushState::renderPassBarriers\28\29\20const +11588:GrOpFlushState::putBackVertices\28int\2c\20unsigned\20long\29 +11589:GrOpFlushState::putBackIndirectDraws\28int\29 +11590:GrOpFlushState::putBackIndexedIndirectDraws\28int\29 +11591:GrOpFlushState::makeVertexSpace\28unsigned\20long\2c\20int\2c\20sk_sp*\2c\20int*\29 +11592:GrOpFlushState::makeVertexSpaceAtLeast\28unsigned\20long\2c\20int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +11593:GrOpFlushState::makeIndexSpace\28int\2c\20sk_sp*\2c\20int*\29 +11594:GrOpFlushState::makeIndexSpaceAtLeast\28int\2c\20int\2c\20sk_sp*\2c\20int*\2c\20int*\29 +11595:GrOpFlushState::makeDrawIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +11596:GrOpFlushState::makeDrawIndexedIndirectSpace\28int\2c\20sk_sp*\2c\20unsigned\20long*\29 +11597:GrOpFlushState::dstProxyView\28\29\20const +11598:GrOpFlushState::colorLoadOp\28\29\20const +11599:GrOpFlushState::caps\28\29\20const +11600:GrOpFlushState::atlasManager\28\29\20const +11601:GrOpFlushState::appliedClip\28\29\20const +11602:GrOpFlushState::addInlineUpload\28std::__2::function&\29>&&\29 +11603:GrOnFlushCallbackObject::postFlush\28skgpu::AtlasToken\29 +11604:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11605:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11606:GrModulateAtlasCoverageEffect::onMakeProgramImpl\28\29\20const +11607:GrModulateAtlasCoverageEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11608:GrModulateAtlasCoverageEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11609:GrModulateAtlasCoverageEffect::name\28\29\20const +11610:GrModulateAtlasCoverageEffect::clone\28\29\20const +11611:GrMeshDrawOp::onPrepare\28GrOpFlushState*\29 +11612:GrMeshDrawOp::onPrePrepare\28GrRecordingContext*\2c\20GrSurfaceProxyView\20const&\2c\20GrAppliedClip*\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11613:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11614:GrMatrixEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11615:GrMatrixEffect::onMakeProgramImpl\28\29\20const +11616:GrMatrixEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11617:GrMatrixEffect::name\28\29\20const +11618:GrMatrixEffect::clone\28\29\20const +11619:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::Listener::~Listener\28\29.1 +11620:GrMakeUniqueKeyInvalidationListener\28skgpu::UniqueKey*\2c\20unsigned\20int\29::$_0::__invoke\28void\20const*\2c\20void*\29 +11621:GrImageContext::~GrImageContext\28\29 +11622:GrHardClip::apply\28GrRecordingContext*\2c\20skgpu::ganesh::SurfaceDrawContext*\2c\20GrDrawOp*\2c\20GrAAType\2c\20GrAppliedClip*\2c\20SkRect*\29\20const +11623:GrGpuResource::dumpMemoryStatistics\28SkTraceMemoryDump*\29\20const +11624:GrGpuBuffer::unref\28\29\20const +11625:GrGpuBuffer::getResourceType\28\29\20const +11626:GrGpuBuffer::computeScratchKey\28skgpu::ScratchKey*\29\20const +11627:GrGeometryProcessor::onTextureSampler\28int\29\20const +11628:GrGLVaryingHandler::~GrGLVaryingHandler\28\29 +11629:GrGLUniformHandler::~GrGLUniformHandler\28\29.1 +11630:GrGLUniformHandler::samplerVariable\28GrResourceHandle\29\20const +11631:GrGLUniformHandler::samplerSwizzle\28GrResourceHandle\29\20const +11632:GrGLUniformHandler::internalAddUniformArray\28GrProcessor\20const*\2c\20unsigned\20int\2c\20SkSLType\2c\20char\20const*\2c\20bool\2c\20int\2c\20char\20const**\29 +11633:GrGLUniformHandler::getUniformCStr\28GrResourceHandle\29\20const +11634:GrGLUniformHandler::appendUniformDecls\28GrShaderFlags\2c\20SkString*\29\20const +11635:GrGLUniformHandler::addSampler\28GrBackendFormat\20const&\2c\20GrSamplerState\2c\20skgpu::Swizzle\20const&\2c\20char\20const*\2c\20GrShaderCaps\20const*\29 +11636:GrGLTextureRenderTarget::onSetLabel\28\29 +11637:GrGLTextureRenderTarget::backendFormat\28\29\20const +11638:GrGLTexture::textureParamsModified\28\29 +11639:GrGLTexture::onStealBackendTexture\28GrBackendTexture*\2c\20std::__2::function*\29 +11640:GrGLTexture::getBackendTexture\28\29\20const +11641:GrGLSemaphore::~GrGLSemaphore\28\29.1 +11642:GrGLSemaphore::setIsOwned\28\29 +11643:GrGLSemaphore::backendSemaphore\28\29\20const +11644:GrGLSLVertexBuilder::~GrGLSLVertexBuilder\28\29 +11645:GrGLSLVertexBuilder::onFinalize\28\29 +11646:GrGLSLUniformHandler::inputSamplerSwizzle\28GrResourceHandle\29\20const +11647:GrGLSLFragmentShaderBuilder::~GrGLSLFragmentShaderBuilder\28\29 +11648:GrGLSLFragmentShaderBuilder::hasSecondaryOutput\28\29\20const +11649:GrGLSLFragmentShaderBuilder::forceHighPrecision\28\29 +11650:GrGLRenderTarget::getBackendRenderTarget\28\29\20const +11651:GrGLRenderTarget::completeStencilAttachment\28GrAttachment*\2c\20bool\29 +11652:GrGLRenderTarget::canAttemptStencilAttachment\28bool\29\20const +11653:GrGLRenderTarget::alwaysClearStencil\28\29\20const +11654:GrGLProgramDataManager::~GrGLProgramDataManager\28\29.1 +11655:GrGLProgramDataManager::setMatrix4fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11656:GrGLProgramDataManager::setMatrix4f\28GrResourceHandle\2c\20float\20const*\29\20const +11657:GrGLProgramDataManager::setMatrix3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11658:GrGLProgramDataManager::setMatrix3f\28GrResourceHandle\2c\20float\20const*\29\20const +11659:GrGLProgramDataManager::setMatrix2fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11660:GrGLProgramDataManager::setMatrix2f\28GrResourceHandle\2c\20float\20const*\29\20const +11661:GrGLProgramDataManager::set4iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11662:GrGLProgramDataManager::set4i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\2c\20int\29\20const +11663:GrGLProgramDataManager::set4f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\2c\20float\29\20const +11664:GrGLProgramDataManager::set3iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11665:GrGLProgramDataManager::set3i\28GrResourceHandle\2c\20int\2c\20int\2c\20int\29\20const +11666:GrGLProgramDataManager::set3fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11667:GrGLProgramDataManager::set3f\28GrResourceHandle\2c\20float\2c\20float\2c\20float\29\20const +11668:GrGLProgramDataManager::set2iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11669:GrGLProgramDataManager::set2i\28GrResourceHandle\2c\20int\2c\20int\29\20const +11670:GrGLProgramDataManager::set2f\28GrResourceHandle\2c\20float\2c\20float\29\20const +11671:GrGLProgramDataManager::set1iv\28GrResourceHandle\2c\20int\2c\20int\20const*\29\20const +11672:GrGLProgramDataManager::set1i\28GrResourceHandle\2c\20int\29\20const +11673:GrGLProgramDataManager::set1fv\28GrResourceHandle\2c\20int\2c\20float\20const*\29\20const +11674:GrGLProgramDataManager::set1f\28GrResourceHandle\2c\20float\29\20const +11675:GrGLProgramBuilder::~GrGLProgramBuilder\28\29.1 +11676:GrGLProgramBuilder::varyingHandler\28\29 +11677:GrGLProgramBuilder::caps\28\29\20const +11678:GrGLProgram::~GrGLProgram\28\29.1 +11679:GrGLOpsRenderPass::~GrGLOpsRenderPass\28\29 +11680:GrGLOpsRenderPass::onSetScissorRect\28SkIRect\20const&\29 +11681:GrGLOpsRenderPass::onEnd\28\29 +11682:GrGLOpsRenderPass::onDraw\28int\2c\20int\29 +11683:GrGLOpsRenderPass::onDrawInstanced\28int\2c\20int\2c\20int\2c\20int\29 +11684:GrGLOpsRenderPass::onDrawIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11685:GrGLOpsRenderPass::onDrawIndexed\28int\2c\20int\2c\20unsigned\20short\2c\20unsigned\20short\2c\20int\29 +11686:GrGLOpsRenderPass::onDrawIndexedInstanced\28int\2c\20int\2c\20int\2c\20int\2c\20int\29 +11687:GrGLOpsRenderPass::onDrawIndexedIndirect\28GrBuffer\20const*\2c\20unsigned\20long\2c\20int\29 +11688:GrGLOpsRenderPass::onClear\28GrScissorState\20const&\2c\20std::__2::array\29 +11689:GrGLOpsRenderPass::onClearStencilClip\28GrScissorState\20const&\2c\20bool\29 +11690:GrGLOpsRenderPass::onBindTextures\28GrGeometryProcessor\20const&\2c\20GrSurfaceProxy\20const*\20const*\2c\20GrPipeline\20const&\29 +11691:GrGLOpsRenderPass::onBindPipeline\28GrProgramInfo\20const&\2c\20SkRect\20const&\29 +11692:GrGLOpsRenderPass::onBindBuffers\28sk_sp\2c\20sk_sp\2c\20sk_sp\2c\20GrPrimitiveRestart\29 +11693:GrGLOpsRenderPass::onBegin\28\29 +11694:GrGLOpsRenderPass::inlineUpload\28GrOpFlushState*\2c\20std::__2::function&\29>&\29 +11695:GrGLInterface::~GrGLInterface\28\29.1 +11696:GrGLGpu::~GrGLGpu\28\29.1 +11697:GrGLGpu::xferBarrier\28GrRenderTarget*\2c\20GrXferBarrierType\29 +11698:GrGLGpu::wrapBackendSemaphore\28GrBackendSemaphore\20const&\2c\20GrSemaphoreWrapType\2c\20GrWrapOwnership\29 +11699:GrGLGpu::willExecute\28\29 +11700:GrGLGpu::submit\28GrOpsRenderPass*\29 +11701:GrGLGpu::stagingBufferManager\28\29 +11702:GrGLGpu::refPipelineBuilder\28\29 +11703:GrGLGpu::prepareTextureForCrossContextUsage\28GrTexture*\29 +11704:GrGLGpu::precompileShader\28SkData\20const&\2c\20SkData\20const&\29 +11705:GrGLGpu::pipelineBuilder\28\29 +11706:GrGLGpu::onWritePixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20GrMipLevel\20const*\2c\20int\2c\20bool\29 +11707:GrGLGpu::onWrapRenderableBackendTexture\28GrBackendTexture\20const&\2c\20int\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +11708:GrGLGpu::onWrapCompressedBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\29 +11709:GrGLGpu::onWrapBackendTexture\28GrBackendTexture\20const&\2c\20GrWrapOwnership\2c\20GrWrapCacheable\2c\20GrIOType\29 +11710:GrGLGpu::onWrapBackendRenderTarget\28GrBackendRenderTarget\20const&\29 +11711:GrGLGpu::onUpdateCompressedBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20void\20const*\2c\20unsigned\20long\29 +11712:GrGLGpu::onTransferPixelsTo\28GrTexture*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +11713:GrGLGpu::onTransferPixelsFrom\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20sk_sp\2c\20unsigned\20long\29 +11714:GrGLGpu::onTransferFromBufferToBuffer\28sk_sp\2c\20unsigned\20long\2c\20sk_sp\2c\20unsigned\20long\2c\20unsigned\20long\29 +11715:GrGLGpu::onSubmitToGpu\28GrSyncCpu\29 +11716:GrGLGpu::onResolveRenderTarget\28GrRenderTarget*\2c\20SkIRect\20const&\29 +11717:GrGLGpu::onResetTextureBindings\28\29 +11718:GrGLGpu::onResetContext\28unsigned\20int\29 +11719:GrGLGpu::onRegenerateMipMapLevels\28GrTexture*\29 +11720:GrGLGpu::onReadPixels\28GrSurface*\2c\20SkIRect\2c\20GrColorType\2c\20GrColorType\2c\20void*\2c\20unsigned\20long\29 +11721: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 +11722:GrGLGpu::onDumpJSON\28SkJSONWriter*\29\20const +11723: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 +11724:GrGLGpu::onCreateCompressedTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Budgeted\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20void\20const*\2c\20unsigned\20long\29 +11725:GrGLGpu::onCreateCompressedBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\29 +11726:GrGLGpu::onCreateBuffer\28unsigned\20long\2c\20GrGpuBufferType\2c\20GrAccessPattern\29 +11727:GrGLGpu::onCreateBackendTexture\28SkISize\2c\20GrBackendFormat\20const&\2c\20skgpu::Renderable\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20std::__2::basic_string_view>\29 +11728:GrGLGpu::onCopySurface\28GrSurface*\2c\20SkIRect\20const&\2c\20GrSurface*\2c\20SkIRect\20const&\2c\20SkFilterMode\29 +11729:GrGLGpu::onClearBackendTexture\28GrBackendTexture\20const&\2c\20sk_sp\2c\20std::__2::array\29 +11730:GrGLGpu::makeStencilAttachment\28GrBackendFormat\20const&\2c\20SkISize\2c\20int\29 +11731:GrGLGpu::makeSemaphore\28bool\29 +11732:GrGLGpu::makeMSAAAttachment\28SkISize\2c\20GrBackendFormat\20const&\2c\20int\2c\20skgpu::Protected\2c\20GrMemoryless\29 +11733:GrGLGpu::getPreferredStencilFormat\28GrBackendFormat\20const&\29 +11734:GrGLGpu::finishOutstandingGpuWork\28\29 +11735:GrGLGpu::disconnect\28GrGpu::DisconnectType\29 +11736:GrGLGpu::deleteBackendTexture\28GrBackendTexture\20const&\29 +11737:GrGLGpu::compile\28GrProgramDesc\20const&\2c\20GrProgramInfo\20const&\29 +11738:GrGLGpu::checkFinishProcs\28\29 +11739:GrGLGpu::addFinishedProc\28void\20\28*\29\28void*\29\2c\20void*\29 +11740:GrGLGpu::ProgramCache::~ProgramCache\28\29.1 +11741: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 +11742: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 +11743: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 +11744: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 +11745: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 +11746: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 +11747:GrGLFunction::GrGLFunction\28void\20\28*\29\28float\29\29::'lambda'\28void\20const*\2c\20float\29::__invoke\28void\20const*\2c\20float\29 +11748: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 +11749:GrGLFunction::GrGLFunction\28void\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +11750: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 +11751:GrGLFunction::GrGLFunction\28unsigned\20int\20\28*\29\28\29\29::'lambda'\28void\20const*\29::__invoke\28void\20const*\29 +11752:GrGLContext::~GrGLContext\28\29 +11753:GrGLCaps::~GrGLCaps\28\29.1 +11754:GrGLCaps::surfaceSupportsReadPixels\28GrSurface\20const*\29\20const +11755:GrGLCaps::supportedWritePixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +11756:GrGLCaps::onSurfaceSupportsWritePixels\28GrSurface\20const*\29\20const +11757:GrGLCaps::onSupportsDynamicMSAA\28GrRenderTargetProxy\20const*\29\20const +11758:GrGLCaps::onSupportedReadPixelsColorType\28GrColorType\2c\20GrBackendFormat\20const&\2c\20GrColorType\29\20const +11759:GrGLCaps::onIsWindowRectanglesSupportedForRT\28GrBackendRenderTarget\20const&\29\20const +11760:GrGLCaps::onGetReadSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +11761:GrGLCaps::onGetDstSampleFlagsForProxy\28GrRenderTargetProxy\20const*\29\20const +11762:GrGLCaps::onGetDefaultBackendFormat\28GrColorType\29\20const +11763:GrGLCaps::onDumpJSON\28SkJSONWriter*\29\20const +11764:GrGLCaps::onCanCopySurface\28GrSurfaceProxy\20const*\2c\20SkIRect\20const&\2c\20GrSurfaceProxy\20const*\2c\20SkIRect\20const&\29\20const +11765:GrGLCaps::onAreColorTypeAndFormatCompatible\28GrColorType\2c\20GrBackendFormat\20const&\29\20const +11766:GrGLCaps::onApplyOptionsOverrides\28GrContextOptions\20const&\29 +11767:GrGLCaps::maxRenderTargetSampleCount\28GrBackendFormat\20const&\29\20const +11768:GrGLCaps::makeDesc\28GrRenderTarget*\2c\20GrProgramInfo\20const&\2c\20GrCaps::ProgramDescOverrideFlags\29\20const +11769:GrGLCaps::isFormatTexturable\28GrBackendFormat\20const&\2c\20GrTextureType\29\20const +11770:GrGLCaps::isFormatSRGB\28GrBackendFormat\20const&\29\20const +11771:GrGLCaps::isFormatRenderable\28GrBackendFormat\20const&\2c\20int\29\20const +11772:GrGLCaps::isFormatCopyable\28GrBackendFormat\20const&\29\20const +11773:GrGLCaps::isFormatAsColorTypeRenderable\28GrColorType\2c\20GrBackendFormat\20const&\2c\20int\29\20const +11774:GrGLCaps::getWriteSwizzle\28GrBackendFormat\20const&\2c\20GrColorType\29\20const +11775:GrGLCaps::getRenderTargetSampleCount\28int\2c\20GrBackendFormat\20const&\29\20const +11776:GrGLCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +11777:GrGLCaps::getBackendFormatFromCompressionType\28SkTextureCompressionType\29\20const +11778:GrGLCaps::computeFormatKey\28GrBackendFormat\20const&\29\20const +11779:GrGLBuffer::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +11780:GrGLBuffer::onUpdateData\28void\20const*\2c\20unsigned\20long\2c\20unsigned\20long\2c\20bool\29 +11781:GrGLBuffer::onUnmap\28GrGpuBuffer::MapType\29 +11782:GrGLBuffer::onSetLabel\28\29 +11783:GrGLBuffer::onRelease\28\29 +11784:GrGLBuffer::onMap\28GrGpuBuffer::MapType\29 +11785:GrGLBuffer::onClearToZero\28\29 +11786:GrGLBuffer::onAbandon\28\29 +11787:GrGLBackendTextureData::~GrGLBackendTextureData\28\29.1 +11788:GrGLBackendTextureData::~GrGLBackendTextureData\28\29 +11789:GrGLBackendTextureData::isSameTexture\28GrBackendTextureData\20const*\29\20const +11790:GrGLBackendTextureData::getBackendFormat\28\29\20const +11791:GrGLBackendTextureData::equal\28GrBackendTextureData\20const*\29\20const +11792:GrGLBackendTextureData::copyTo\28SkAnySubclass&\29\20const +11793:GrGLBackendRenderTargetData::isProtected\28\29\20const +11794:GrGLBackendRenderTargetData::getBackendFormat\28\29\20const +11795:GrGLBackendRenderTargetData::equal\28GrBackendRenderTargetData\20const*\29\20const +11796:GrGLBackendRenderTargetData::copyTo\28SkAnySubclass&\29\20const +11797:GrGLBackendFormatData::toString\28\29\20const +11798:GrGLBackendFormatData::stencilBits\28\29\20const +11799:GrGLBackendFormatData::equal\28GrBackendFormatData\20const*\29\20const +11800:GrGLBackendFormatData::desc\28\29\20const +11801:GrGLBackendFormatData::copyTo\28SkAnySubclass&\29\20const +11802:GrGLBackendFormatData::compressionType\28\29\20const +11803:GrGLBackendFormatData::channelMask\28\29\20const +11804:GrGLBackendFormatData::bytesPerBlock\28\29\20const +11805:GrGLAttachment::~GrGLAttachment\28\29 +11806:GrGLAttachment::setMemoryBacking\28SkTraceMemoryDump*\2c\20SkString\20const&\29\20const +11807:GrGLAttachment::onSetLabel\28\29 +11808:GrGLAttachment::onRelease\28\29 +11809:GrGLAttachment::onAbandon\28\29 +11810:GrGLAttachment::backendFormat\28\29\20const +11811:GrFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11812:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11813:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onMakeProgramImpl\28\29\20const +11814:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11815:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11816:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::name\28\29\20const +11817:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11818:GrFragmentProcessor::SwizzleOutput\28std::__2::unique_ptr>\2c\20skgpu::Swizzle\20const&\29::SwizzleFragmentProcessor::clone\28\29\20const +11819:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11820:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::onMakeProgramImpl\28\29\20const +11821:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::name\28\29\20const +11822:GrFragmentProcessor::SurfaceColor\28\29::SurfaceColorProcessor::clone\28\29\20const +11823:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11824:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::onMakeProgramImpl\28\29\20const +11825:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::name\28\29\20const +11826:GrFragmentProcessor::HighPrecision\28std::__2::unique_ptr>\29::HighPrecisionFragmentProcessor::clone\28\29\20const +11827:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11828:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::onMakeProgramImpl\28\29\20const +11829:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::name\28\29\20const +11830:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11831:GrFragmentProcessor::DeviceSpace\28std::__2::unique_ptr>\29::DeviceSpace::clone\28\29\20const +11832:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11833:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::onMakeProgramImpl\28\29\20const +11834:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::name\28\29\20const +11835:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11836:GrFragmentProcessor::Compose\28std::__2::unique_ptr>\2c\20std::__2::unique_ptr>\29::ComposeProcessor::clone\28\29\20const +11837:GrFixedClip::~GrFixedClip\28\29.1 +11838:GrFixedClip::~GrFixedClip\28\29 +11839:GrFixedClip::getConservativeBounds\28\29\20const +11840:GrExternalTextureGenerator::onGenerateTexture\28GrRecordingContext*\2c\20SkImageInfo\20const&\2c\20skgpu::Mipmapped\2c\20GrImageTexGenPolicy\29 +11841:GrDynamicAtlas::~GrDynamicAtlas\28\29.1 +11842:GrDrawOp::usesStencil\28\29\20const +11843:GrDrawOp::usesMSAA\28\29\20const +11844:GrDrawOp::fixedFunctionFlags\28\29\20const +11845:GrDistanceFieldPathGeoProc::~GrDistanceFieldPathGeoProc\28\29.1 +11846:GrDistanceFieldPathGeoProc::onTextureSampler\28int\29\20const +11847:GrDistanceFieldPathGeoProc::name\28\29\20const +11848:GrDistanceFieldPathGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11849:GrDistanceFieldPathGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11850:GrDistanceFieldPathGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11851:GrDistanceFieldPathGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11852:GrDistanceFieldLCDTextGeoProc::~GrDistanceFieldLCDTextGeoProc\28\29.1 +11853:GrDistanceFieldLCDTextGeoProc::name\28\29\20const +11854:GrDistanceFieldLCDTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11855:GrDistanceFieldLCDTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11856:GrDistanceFieldLCDTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11857:GrDistanceFieldLCDTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11858:GrDistanceFieldA8TextGeoProc::~GrDistanceFieldA8TextGeoProc\28\29.1 +11859:GrDistanceFieldA8TextGeoProc::name\28\29\20const +11860:GrDistanceFieldA8TextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11861:GrDistanceFieldA8TextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11862:GrDistanceFieldA8TextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11863:GrDistanceFieldA8TextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11864:GrDisableColorXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11865:GrDisableColorXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11866:GrDirectContext::~GrDirectContext\28\29.1 +11867:GrDirectContext::init\28\29 +11868:GrDirectContext::abandonContext\28\29 +11869:GrDeferredProxyUploader::~GrDeferredProxyUploader\28\29.1 +11870:GrCpuVertexAllocator::~GrCpuVertexAllocator\28\29.1 +11871:GrCpuVertexAllocator::unlock\28int\29 +11872:GrCpuVertexAllocator::lock\28unsigned\20long\2c\20int\29 +11873:GrCpuBuffer::unref\28\29\20const +11874:GrCpuBuffer::ref\28\29\20const +11875:GrCoverageSetOpXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11876:GrCoverageSetOpXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11877:GrCopyRenderTask::~GrCopyRenderTask\28\29.1 +11878:GrCopyRenderTask::onMakeSkippable\28\29 +11879:GrCopyRenderTask::onMakeClosed\28GrRecordingContext*\2c\20SkIRect*\29 +11880:GrCopyRenderTask::onExecute\28GrOpFlushState*\29 +11881:GrCopyRenderTask::gatherProxyIntervals\28GrResourceAllocator*\29\20const +11882:GrConvexPolyEffect::~GrConvexPolyEffect\28\29 +11883:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11884:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11885:GrConvexPolyEffect::onMakeProgramImpl\28\29\20const +11886:GrConvexPolyEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11887:GrConvexPolyEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11888:GrConvexPolyEffect::name\28\29\20const +11889:GrConvexPolyEffect::clone\28\29\20const +11890:GrContextThreadSafeProxy::~GrContextThreadSafeProxy\28\29.1 +11891:GrContextThreadSafeProxy::isValidCharacterizationForVulkan\28sk_sp\2c\20bool\2c\20skgpu::Mipmapped\2c\20skgpu::Protected\2c\20bool\2c\20bool\29 +11892:GrConicEffect::name\28\29\20const +11893:GrConicEffect::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11894:GrConicEffect::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11895:GrConicEffect::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11896:GrConicEffect::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11897:GrColorSpaceXformEffect::~GrColorSpaceXformEffect\28\29.1 +11898:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11899:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11900:GrColorSpaceXformEffect::onMakeProgramImpl\28\29\20const +11901:GrColorSpaceXformEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11902:GrColorSpaceXformEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11903:GrColorSpaceXformEffect::name\28\29\20const +11904:GrColorSpaceXformEffect::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +11905:GrColorSpaceXformEffect::clone\28\29\20const +11906:GrCaps::getDstCopyRestrictions\28GrRenderTargetProxy\20const*\2c\20GrColorType\29\20const +11907:GrBitmapTextGeoProc::~GrBitmapTextGeoProc\28\29.1 +11908:GrBitmapTextGeoProc::onTextureSampler\28int\29\20const +11909:GrBitmapTextGeoProc::name\28\29\20const +11910:GrBitmapTextGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11911:GrBitmapTextGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11912:GrBitmapTextGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11913:GrBitmapTextGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11914:GrBicubicEffect::onMakeProgramImpl\28\29\20const +11915:GrBicubicEffect::onIsEqual\28GrFragmentProcessor\20const&\29\20const +11916:GrBicubicEffect::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11917:GrBicubicEffect::name\28\29\20const +11918:GrBicubicEffect::clone\28\29\20const +11919:GrBicubicEffect::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +11920:GrBicubicEffect::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11921:GrAttachment::onGpuMemorySize\28\29\20const +11922:GrAttachment::getResourceType\28\29\20const +11923:GrAttachment::computeScratchKey\28skgpu::ScratchKey*\29\20const +11924:GrAtlasManager::~GrAtlasManager\28\29.1 +11925:GrAtlasManager::postFlush\28skgpu::AtlasToken\29 +11926:GrAATriangulator::tessellate\28GrTriangulator::VertexList\20const&\2c\20GrTriangulator::Comparator\20const&\29 +11927:FontMgrRunIterator::~FontMgrRunIterator\28\29.1 +11928:FontMgrRunIterator::consume\28\29 +11929:EllipticalRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11930:EllipticalRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11931:EllipticalRRectOp::name\28\29\20const +11932:EllipticalRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11933:EllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11934:EllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11935:EllipseOp::name\28\29\20const +11936:EllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11937:EllipseGeometryProcessor::name\28\29\20const +11938:EllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11939:EllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11940:EllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11941:Dual_Project +11942:DisableColorXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11943:DisableColorXP::name\28\29\20const +11944:DisableColorXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11945:DisableColorXP::makeProgramImpl\28\29\20const +11946:Direct_Move_Y +11947:Direct_Move_X +11948:Direct_Move_Orig_Y +11949:Direct_Move_Orig_X +11950:Direct_Move_Orig +11951:Direct_Move +11952:DefaultGeoProc::name\28\29\20const +11953:DefaultGeoProc::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11954:DefaultGeoProc::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11955:DefaultGeoProc::Impl::setData\28GrGLSLProgramDataManager\20const&\2c\20GrShaderCaps\20const&\2c\20GrGeometryProcessor\20const&\29 +11956:DefaultGeoProc::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11957:DIEllipseOp::~DIEllipseOp\28\29.1 +11958:DIEllipseOp::visitProxies\28std::__2::function\20const&\29\20const +11959:DIEllipseOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11960:DIEllipseOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11961:DIEllipseOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11962:DIEllipseOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11963:DIEllipseOp::name\28\29\20const +11964:DIEllipseOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11965:DIEllipseGeometryProcessor::name\28\29\20const +11966:DIEllipseGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +11967:DIEllipseGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11968:DIEllipseGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +11969:CustomXPFactory::makeXferProcessor\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11970:CustomXPFactory::analysisProperties\28GrProcessorAnalysisColor\20const&\2c\20GrProcessorAnalysisCoverage\20const&\2c\20GrCaps\20const&\2c\20GrClampType\29\20const +11971:CustomXP::xferBarrierType\28GrCaps\20const&\29\20const +11972:CustomXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11973:CustomXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11974:CustomXP::name\28\29\20const +11975:CustomXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11976:CustomXP::makeProgramImpl\28\29\20const +11977:Current_Ppem_Stretched +11978:Current_Ppem +11979:Cr_z_zcalloc +11980:CoverageSetOpXP::onGetBlendInfo\28skgpu::BlendInfo*\29\20const +11981:CoverageSetOpXP::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +11982:CoverageSetOpXP::name\28\29\20const +11983:CoverageSetOpXP::makeProgramImpl\28\29\20const::Impl::emitOutputsForBlendState\28GrXferProcessor::ProgramImpl::EmitArgs\20const&\29 +11984:CoverageSetOpXP::makeProgramImpl\28\29\20const +11985:ColorTableEffect::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +11986:ColorTableEffect::onMakeProgramImpl\28\29\20const +11987:ColorTableEffect::name\28\29\20const +11988:ColorTableEffect::clone\28\29\20const +11989:CircularRRectOp::visitProxies\28std::__2::function\20const&\29\20const +11990:CircularRRectOp::onPrepareDraws\28GrMeshDrawTarget*\29 +11991:CircularRRectOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +11992:CircularRRectOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +11993:CircularRRectOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +11994:CircularRRectOp::name\28\29\20const +11995:CircularRRectOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +11996:CircleOp::~CircleOp\28\29.1 +11997:CircleOp::visitProxies\28std::__2::function\20const&\29\20const +11998:CircleOp::programInfo\28\29 +11999:CircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +12000:CircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +12001:CircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +12002:CircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +12003:CircleOp::name\28\29\20const +12004:CircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +12005:CircleGeometryProcessor::name\28\29\20const +12006:CircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +12007:CircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +12008:CircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +12009:ButtCapper\28SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPath*\29 +12010:ButtCapDashedCircleOp::visitProxies\28std::__2::function\20const&\29\20const +12011:ButtCapDashedCircleOp::programInfo\28\29 +12012:ButtCapDashedCircleOp::onPrepareDraws\28GrMeshDrawTarget*\29 +12013:ButtCapDashedCircleOp::onExecute\28GrOpFlushState*\2c\20SkRect\20const&\29 +12014:ButtCapDashedCircleOp::onCreateProgramInfo\28GrCaps\20const*\2c\20SkArenaAlloc*\2c\20GrSurfaceProxyView\20const&\2c\20bool\2c\20GrAppliedClip&&\2c\20GrDstProxyView\20const&\2c\20GrXferBarrierFlags\2c\20GrLoadOp\29 +12015:ButtCapDashedCircleOp::onCombineIfPossible\28GrOp*\2c\20SkArenaAlloc*\2c\20GrCaps\20const&\29 +12016:ButtCapDashedCircleOp::name\28\29\20const +12017:ButtCapDashedCircleOp::finalize\28GrCaps\20const&\2c\20GrAppliedClip\20const*\2c\20GrClampType\29 +12018:ButtCapDashedCircleGeometryProcessor::name\28\29\20const +12019:ButtCapDashedCircleGeometryProcessor::makeProgramImpl\28GrShaderCaps\20const&\29\20const +12020:ButtCapDashedCircleGeometryProcessor::addToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +12021:ButtCapDashedCircleGeometryProcessor::Impl::onEmitCode\28GrGeometryProcessor::ProgramImpl::EmitArgs&\2c\20GrGeometryProcessor::ProgramImpl::GrGPArgs*\29 +12022:BluntJoiner\28SkPath*\2c\20SkPath*\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20SkPoint\20const&\2c\20float\2c\20float\2c\20bool\2c\20bool\29 +12023:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::onSetData\28GrGLSLProgramDataManager\20const&\2c\20GrFragmentProcessor\20const&\29 +12024:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const::Impl::emitCode\28GrFragmentProcessor::ProgramImpl::EmitArgs&\29 +12025:BlendFragmentProcessor::onMakeProgramImpl\28\29\20const +12026:BlendFragmentProcessor::onIsEqual\28GrFragmentProcessor\20const&\29\20const +12027:BlendFragmentProcessor::onAddToKey\28GrShaderCaps\20const&\2c\20skgpu::KeyBuilder*\29\20const +12028:BlendFragmentProcessor::name\28\29\20const +12029:BlendFragmentProcessor::constantOutputForConstantInput\28SkRGBA4f<\28SkAlphaType\292>\20const&\29\20const +12030:BlendFragmentProcessor::clone\28\29\20const +12031:$_3::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\29 +12032:$_2::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\29 +12033:$_1::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\2c\20unsigned\20char\29 +12034:$_0::__invoke\28unsigned\20char*\2c\20unsigned\20char\2c\20int\29 diff --git a/resources/web/flutter_web/canvaskit/skwasm.wasm b/resources/web/flutter_web/canvaskit/skwasm.wasm new file mode 100644 index 0000000000..840516208d Binary files /dev/null and b/resources/web/flutter_web/canvaskit/skwasm.wasm differ diff --git a/resources/web/flutter_web/canvaskit/skwasm.worker.js b/resources/web/flutter_web/canvaskit/skwasm.worker.js new file mode 100644 index 0000000000..201afe5382 --- /dev/null +++ b/resources/web/flutter_web/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/resources/web/flutter_web/favicon.png b/resources/web/flutter_web/favicon.png new file mode 100644 index 0000000000..5b1f2b3869 Binary files /dev/null and b/resources/web/flutter_web/favicon.png differ diff --git a/resources/web/flutter_web/flutter.js b/resources/web/flutter_web/flutter.js new file mode 100644 index 0000000000..165da67191 --- /dev/null +++ b/resources/web/flutter_web/flutter.js @@ -0,0 +1,4 @@ +(()=>{var P=()=>navigator.vendor==="Google Inc."||navigator.agent==="Edg/",L=()=>typeof ImageDecoder>"u"?!1:P(),U=()=>typeof Intl.v8BreakIterator<"u"&&typeof Intl.Segmenter<"u",W=()=>{let i=[0,97,115,109,1,0,0,0,1,5,1,95,1,120,0];return WebAssembly.validate(new Uint8Array(i))},f={hasImageCodecs:L(),hasChromiumBreakIterators:U(),supportsWasmGC:W(),crossOriginIsolated:window.crossOriginIsolated};var h=j();function j(){let i=document.querySelector("base");return i&&i.getAttribute("href")||""}function m(...i){return i.filter(t=>!!t).map((t,n)=>n===0?_(t):K(_(t))).filter(t=>t.length).join("/")}function K(i){let t=0;for(;t0&&i.charAt(t-1)==="/";)t--;return i.substring(0,t)}function I(i,t){return i.canvasKitBaseUrl?i.canvasKitBaseUrl:t.engineRevision&&!t.useLocalCanvasKit?m("https://www.gstatic.com/flutter-canvaskit",t.engineRevision):"/canvaskit"}var v=class{constructor(){this._scriptLoaded=!1}setTrustedTypesPolicy(t){this._ttPolicy=t}async loadEntrypoint(t){let{entrypointUrl:n=m(h,"main.dart.js"),onEntrypointLoaded:e,nonce:r}=t||{};return this._loadJSEntrypoint(n,e,r)}async load(t,n,e,r,s){s??=o=>{o.initializeEngine(e).then(c=>c.runApp())};let{entryPointBaseUrl:a}=e;if(t.compileTarget==="dart2wasm")return this._loadWasmEntrypoint(t,n,a,s);{let o=t.mainJsPath??"main.dart.js",c=m(h,a,o);return this._loadJSEntrypoint(c,s,r)}}didCreateEngineInitializer(t){typeof this._didCreateEngineInitializerResolve=="function"&&(this._didCreateEngineInitializerResolve(t),this._didCreateEngineInitializerResolve=null,delete _flutter.loader.didCreateEngineInitializer),typeof this._onEntrypointLoaded=="function"&&this._onEntrypointLoaded(t)}_loadJSEntrypoint(t,n,e){let r=typeof n=="function";if(!this._scriptLoaded){this._scriptLoaded=!0;let s=this._createScriptTag(t,e);if(r)console.debug("Injecting + + + + + diff --git a/resources/web/flutter_web/main.dart.js b/resources/web/flutter_web/main.dart.js new file mode 100644 index 0000000000..f796fe66fb --- /dev/null +++ b/resources/web/flutter_web/main.dart.js @@ -0,0 +1,159910 @@ +(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.dn(a,0,4294967295,"length",null)) +return J.qc(new Array(a),b)}, +bmy(a,b){if(a>4294967295)throw A.d(A.dn(a,0,4294967295,"length",null)) +return J.qc(new Array(a),b)}, +BK(a,b){if(a<0)throw A.d(A.bl("Length must be a non-negative integer: "+a,null)) +return A.a(new Array(a),b.i("E<0>"))}, +mU(a,b){if(a<0)throw A.d(A.bl("Length must be a non-negative integer: "+a,null)) +return A.a(new Array(a),b.i("E<0>"))}, +qc(a,b){return J.aCU(A.a(a,b.i("E<0>")))}, +aCU(a){a.fixed$length=Array +return a}, +btM(a){a.fixed$length=Array +a.immutable$list=Array +return a}, +bJI(a,b){return J.GB(a,b)}, +btN(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}}, +btO(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.btN(r))break}return b}, +dd(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.BL.prototype +return J.Ke.prototype}if(typeof a=="string")return J.qd.prototype +if(a==null)return J.Kd.prototype +if(typeof a=="boolean")return J.Kc.prototype +if(Array.isArray(a))return J.E.prototype +if(typeof a!="object"){if(typeof a=="function")return J.k8.prototype +if(typeof a=="symbol")return J.xi.prototype +if(typeof a=="bigint")return J.xh.prototype +return a}if(a instanceof A.O)return a +return J.aoz(a)}, +bVU(a){if(typeof a=="number")return J.tO.prototype +if(typeof a=="string")return J.qd.prototype +if(a==null)return a +if(Array.isArray(a))return J.E.prototype +if(typeof a!="object"){if(typeof a=="function")return J.k8.prototype +if(typeof a=="symbol")return J.xi.prototype +if(typeof a=="bigint")return J.xh.prototype +return a}if(a instanceof A.O)return a +return J.aoz(a)}, +a0(a){if(typeof a=="string")return J.qd.prototype +if(a==null)return a +if(Array.isArray(a))return J.E.prototype +if(typeof a!="object"){if(typeof a=="function")return J.k8.prototype +if(typeof a=="symbol")return J.xi.prototype +if(typeof a=="bigint")return J.xh.prototype +return a}if(a instanceof A.O)return a +return J.aoz(a)}, +cF(a){if(a==null)return a +if(Array.isArray(a))return J.E.prototype +if(typeof a!="object"){if(typeof a=="function")return J.k8.prototype +if(typeof a=="symbol")return J.xi.prototype +if(typeof a=="bigint")return J.xh.prototype +return a}if(a instanceof A.O)return a +return J.aoz(a)}, +bzV(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.BL.prototype +return J.Ke.prototype}if(a==null)return a +if(!(a instanceof A.O))return J.oZ.prototype +return a}, +zP(a){if(typeof a=="number")return J.tO.prototype +if(a==null)return a +if(!(a instanceof A.O))return J.oZ.prototype +return a}, +bzW(a){if(typeof a=="number")return J.tO.prototype +if(typeof a=="string")return J.qd.prototype +if(a==null)return a +if(!(a instanceof A.O))return J.oZ.prototype +return a}, +kt(a){if(typeof a=="string")return J.qd.prototype +if(a==null)return a +if(!(a instanceof A.O))return J.oZ.prototype +return a}, +dI(a){if(a==null)return a +if(typeof a!="object"){if(typeof a=="function")return J.k8.prototype +if(typeof a=="symbol")return J.xi.prototype +if(typeof a=="bigint")return J.xh.prototype +return a}if(a instanceof A.O)return a +return J.aoz(a)}, +dl(a){if(a==null)return a +if(!(a instanceof A.O))return J.oZ.prototype +return a}, +pn(a,b){if(typeof a=="number"&&typeof b=="number")return a+b +return J.bVU(a).ab(a,b)}, +e(a,b){if(a==null)return b==null +if(typeof a!="object")return b!=null&&a===b +return J.dd(a).l(a,b)}, +bqF(a,b){if(typeof a=="number"&&typeof b=="number")return a>=b +return J.zP(a).YG(a,b)}, +zY(a,b){if(typeof a=="number"&&typeof b=="number")return a>b +return J.zP(a).mC(a,b)}, +bqG(a,b){if(typeof a=="number"&&typeof b=="number")return a*b +return J.bzW(a).ap(a,b)}, +VX(a,b){if(typeof a=="number"&&typeof b=="number")return a-b +return J.zP(a).ai(a,b)}, +i(a,b){if(typeof b==="number")if(Array.isArray(a)||typeof a=="string"||A.bA3(a,a[v.dispatchPropertyName]))if(b>>>0===b&&b>>0===b&&b0?1:a<0?-1:a +return J.bzV(a).gOT(a)}, +bqM(a){return J.dl(a).gA4(a)}, +bqN(a){return J.dl(a).gwm(a)}, +bEN(a){return J.dl(a).gb2f(a)}, +je(a){return J.dI(a).gk(a)}, +bqO(a){return J.dI(a).gaJ(a)}, +bEO(a,b,c,d){return J.dl(a).aiC(a,b,c,d)}, +bEP(a,b,c){return J.cF(a).Fs(a,b,c)}, +bkC(a,b){return J.dl(a).bB(a,b)}, +bkD(a,b){return J.a0(a).dV(a,b)}, +bEQ(a,b){return J.dl(a).n7(a,b)}, +bER(a){return J.dl(a).DS(a)}, +bqP(a){return J.cF(a).rH(a)}, +bkE(a,b){return J.cF(a).bJ(a,b)}, +bES(a){return J.a0(a).nd(a)}, +bET(a,b){return J.dl(a).aWz(a,b)}, +bEU(a,b,c){return J.dl(a).M2(a,b,c)}, +VZ(a,b){return J.cF(a).kS(a,b)}, +eX(a,b,c){return J.cF(a).eR(a,b,c)}, +W_(a,b,c,d){return J.cF(a).kd(a,b,c,d)}, +bqQ(a,b,c){return J.kt(a).pP(a,b,c)}, +bEV(a,b){return J.dd(a).afd(a,b)}, +bEW(a){return J.dl(a).Xl(a)}, +bEX(a){return J.dl(a).afp(a)}, +bEY(a){return J.dl(a).afs(a)}, +bEZ(a,b,c,d,e){return J.dl(a).oi(a,b,c,d,e)}, +GD(a,b,c){return J.dI(a).cP(a,b,c)}, +bF_(a){return J.cF(a).eT(a)}, +nW(a,b){return J.cF(a).C(a,b)}, +bF0(a){return J.cF(a).iG(a)}, +bF1(a,b){return J.dI(a).K(a,b)}, +bF2(a,b){return J.cF(a).vF(a,b)}, +bqR(a,b){return J.dl(a).Nn(a,b)}, +bqS(a,b,c){return J.kt(a).No(a,b,c)}, +bqT(a,b,c){return J.kt(a).hI(a,b,c)}, +bkF(a){return J.zP(a).aa(a)}, +bqU(a,b){return J.dl(a).bK(a,b)}, +bF3(a,b){return J.dI(a).fm(a,b)}, +bF4(a,b){return J.a0(a).st(a,b)}, +bF5(a,b,c,d,e){return J.cF(a).d5(a,b,c,d,e)}, +A1(a,b){return J.cF(a).kt(a,b)}, +W0(a,b){return J.cF(a).fZ(a,b)}, +GE(a,b){return J.kt(a).ku(a,b)}, +bkG(a,b){return J.kt(a).ba(a,b)}, +bqV(a,b){return J.cF(a).hL(a,b)}, +bF6(a,b,c){return J.cF(a).cK(a,b,c)}, +bF7(a,b){return J.kt(a).bE(a,b)}, +kv(a,b,c){return J.kt(a).R(a,b,c)}, +W1(a,b){return J.cF(a).lL(a,b)}, +bkH(a){return J.zP(a).aA(a)}, +nX(a){return J.cF(a).cJ(a)}, +bF8(a,b){return J.zP(a).hY(a,b)}, +bF9(a){return J.cF(a).hZ(a)}, +p(a){return J.dd(a).j(a)}, +bFa(a,b){return J.zP(a).aF(a,b)}, +GF(a){return J.kt(a).cw(a)}, +bFb(a){return J.kt(a).NN(a)}, +bFc(a,b){return J.dl(a).Yy(a,b)}, +apc(a,b){return J.cF(a).km(a,b)}, +bFd(a,b){return J.cF(a).F0(a,b)}, +BJ:function BJ(){}, +Kc:function Kc(){}, +Kd:function Kd(){}, +r:function r(){}, +tR:function tR(){}, +a64:function a64(){}, +oZ:function oZ(){}, +k8:function k8(){}, +xh:function xh(){}, +xi:function xi(){}, +E:function E(a){this.$ti=a}, +aCZ:function aCZ(a){this.$ti=a}, +di:function di(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +tO:function tO(){}, +BL:function BL(){}, +Ke:function Ke(){}, +qd:function qd(){}},A={ +rG(){var s=A.Vt(1,1) +if(A.pG(s,"webgl2",null)!=null){if($.bH().gf9()===B.bM)return 1 +return 2}if(A.pG(s,"webgl",null)!=null)return 1 +return-1}, +blc(){return self.window.navigator.clipboard!=null?new A.ase():new A.aym()}, +bni(){return $.bH().ge4()===B.dG||self.window.navigator.clipboard==null?new A.ayn():new A.asf()}, +vT(){var s,r=$.byn +if(r==null){r=self.window.flutterConfiguration +s=new A.azy() +if(r!=null)s.b=r +$.byn=s +r=s}return r}, +btQ(a){var s=a.nonce +return s==null?null:s}, +bN8(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}}, +kZ(a){$.bH() +return a}, +btL(a){$.bH() +return a}, +bsL(a){var s=a.innerHeight +return s==null?null:s}, +blR(a,b){return a.matchMedia(b)}, +blQ(a,b){return a.getComputedStyle(b)}, +bHO(a){return new A.awa(a)}, +bHR(a){var s=a.languages +if(s==null)s=null +else{s=B.b.eR(s,new A.awf(),t.N) +s=A.a8(s,!0,s.$ti.i("aN.E"))}return s}, +cm(a,b){return a.createElement(b)}, +eg(a,b,c,d){if(c!=null)if(d==null)a.addEventListener(b,c) +else a.addEventListener(b,c,d)}, +hA(a,b,c,d){if(c!=null)if(d==null)a.removeEventListener(b,c) +else a.removeEventListener(b,c,d)}, +bVn(a){return A.d6(a)}, +mF(a){var s=a.timeStamp +return s==null?null:s}, +bsD(a){if(a.parentNode!=null)a.parentNode.removeChild(a)}, +blO(a,b){a.textContent=b +return b}, +awg(a,b){return a.cloneNode(b)}, +bVm(a){return A.cm(self.document,a)}, +bHQ(a){return a.tagName}, +bsr(a,b,c){var s=A.b8(c) +if(s==null)s=t.K.a(s) +return a.setAttribute(b,s)}, +awb(a,b){a.tabIndex=b +return b}, +eO(a,b){var s=A.w(t.N,t.y) +if(b!=null)s.n(0,"preventScroll",b) +s=A.b8(s) +if(s==null)s=t.K.a(s) +a.focus(s)}, +bHP(a){var s +for(;a.firstChild!=null;){s=a.firstChild +s.toString +a.removeChild(s)}}, +bHM(a,b){return A.N(a,"width",b)}, +bHH(a,b){return A.N(a,"height",b)}, +bsn(a,b){return A.N(a,"position",b)}, +bHK(a,b){return A.N(a,"top",b)}, +bHI(a,b){return A.N(a,"left",b)}, +bHL(a,b){return A.N(a,"visibility",b)}, +bHJ(a,b){return A.N(a,"overflow",b)}, +N(a,b,c){a.setProperty(b,c,"")}, +awc(a){var s=a.src +return s==null?null:s}, +bss(a,b){a.src=b +return b}, +Vt(a,b){var s +$.bzI=$.bzI+1 +s=A.cm(self.window.document,"canvas") +if(b!=null)A.II(s,b) +if(a!=null)A.IH(s,a) +return s}, +II(a,b){a.width=b +return b}, +IH(a,b){a.height=b +return b}, +pG(a,b,c){var s +if(c==null)return a.getContext(b) +else{s=A.b8(c) +if(s==null)s=t.K.a(s) +return a.getContext(b,s)}}, +bHN(a){var s=A.pG(a,"2d",null) +s.toString +return t.B.a(s)}, +aw8(a,b){var s=b==null?null:A.kZ(b) +a.fillStyle=s +return s}, +blI(a,b){a.lineWidth=b +return b}, +aw9(a,b){var s=A.kZ(b) +a.strokeStyle=s +return s}, +aw7(a,b){if(b==null)a.fill() +else a.fill(A.kZ(b))}, +bso(a,b,c,d){a.fillText(b,c,d)}, +bsp(a,b,c,d,e,f,g){return A.bi(a,"setTransform",[b,c,d,e,f,g])}, +bsq(a,b,c,d,e,f,g){return A.bi(a,"transform",[b,c,d,e,f,g])}, +aw6(a,b){if(b==null)a.clip() +else a.clip(A.kZ(b))}, +blH(a,b){a.filter=b +return b}, +blK(a,b){a.shadowOffsetX=b +return b}, +blL(a,b){a.shadowOffsetY=b +return b}, +blJ(a,b){a.shadowColor=b +return b}, +aoA(a){return A.bW2(a)}, +bW2(a){var s=0,r=A.n(t.Lk),q,p=2,o,n,m,l,k +var $async$aoA=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.f(A.jc(self.window.fetch(a),t.B),$async$aoA) +case 7:n=c +q=new A.a0X(a,n) +s=1 +break +p=2 +s=6 +break +case 4:p=3 +k=o +m=A.v(k) +throw A.d(new A.a0V(a,m)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aoA,r)}, +bVo(a,b,c){var s,r,q +if(c==null)return new self.FontFace(a,A.kZ(b)) +else{s=self.FontFace +r=A.kZ(b) +q=A.b8(c) +if(q==null)q=t.K.a(q) +return new s(a,r,q)}}, +bsI(a){var s=a.height +return s==null?null:s}, +bsA(a,b){var s=b==null?null:b +a.value=s +return s}, +bsy(a){var s=a.selectionStart +return s==null?null:s}, +bsx(a){var s=a.selectionEnd +return s==null?null:s}, +bsz(a){var s=a.value +return s==null?null:s}, +pH(a){var s=a.code +return s==null?null:s}, +lJ(a){var s=a.key +return s==null?null:s}, +a_w(a){var s=a.shiftKey +return s==null?null:s}, +bsB(a){var s=a.state +if(s==null)s=null +else{s=A.bpj(s) +s.toString}return s}, +bVl(a){var s=self +return new s.Blob(t.ef.a(A.kZ(a)))}, +bsC(a){var s=a.matches +return s==null?null:s}, +IJ(a){var s=a.buttons +return s==null?null:s}, +bsF(a){var s=a.pointerId +return s==null?null:s}, +blP(a){var s=a.pointerType +return s==null?null:s}, +bsG(a){var s=a.tiltX +return s==null?null:s}, +bsH(a){var s=a.tiltY +return s==null?null:s}, +bsJ(a){var s=a.wheelDeltaX +return s==null?null:s}, +bsK(a){var s=a.wheelDeltaY +return s==null?null:s}, +awd(a,b){a.type=b +return b}, +bsw(a,b){var s=b==null?null:b +a.value=s +return s}, +blN(a){var s=a.value +return s==null?null:s}, +blM(a){var s=a.disabled +return s==null?null:s}, +bsv(a,b){a.disabled=b +return b}, +bsu(a){var s=a.selectionStart +return s==null?null:s}, +bst(a){var s=a.selectionEnd +return s==null?null:s}, +bHS(a,b){a.height=b +return b}, +bHT(a,b){a.width=b +return b}, +bsE(a,b,c){var s +if(c==null)return a.getContext(b) +else{s=A.b8(c) +if(s==null)s=t.K.a(s) +return a.getContext(b,s)}}, +e2(a,b,c){var s=A.d6(c) +a.addEventListener(b,s) +return new A.a_y(b,a,s)}, +bVp(a){return new self.ResizeObserver(A.boX(new A.biB(a)))}, +bHU(a){return new A.a_v(t.B.a(a[self.Symbol.iterator]()),t.yN)}, +bVq(a){var s,r +if(self.Intl.Segmenter==null)throw A.d(A.cE("Intl.Segmenter() is not supported.")) +s=self.Intl.Segmenter +r=t.N +r=A.b8(A.C(["granularity",a],r,r)) +if(r==null)r=t.K.a(r) +return new s([],r)}, +bVs(){var s,r +if(self.Intl.v8BreakIterator==null)throw A.d(A.cE("v8BreakIterator is not supported.")) +s=self.Intl.v8BreakIterator +r=A.b8(B.agE) +if(r==null)r=t.K.a(r) +return new s([],r)}, +aoL(a,b){var s +if(b.l(0,B.j))return a +s=new A.dc(new Float32Array(16)) +s.c5(a) +s.bs(0,b.a,b.b) +return s}, +bzL(a,b,c){var s=a.b0a() +if(c!=null)A.bpJ(s,A.aoL(c,b).a) +return s}, +aow(a){return A.bVK(a)}, +bVK(a){var s=0,r=A.n(t.jT),q,p,o,n,m,l +var $async$aow=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:n={} +l=t.Lk +s=3 +return A.f(A.aoA(a.F4("FontManifest.json")),$async$aow) +case 3:m=l.a(c) +if(!m.gadZ()){$.zW().$1("Font manifest does not exist at `"+m.a+"` - ignoring.") +q=new A.JC(A.a([],t.z8)) +s=1 +break}p=B.eA.a_4(B.pQ,t.X) +n.a=null +o=p.hg(new A.akq(new A.biU(n),[],t.kT)) +s=4 +return A.f(m.gafI().Nc(0,new A.biV(o),t.u9),$async$aow) +case 4:o.L(0) +n=n.a +if(n==null)throw A.d(A.lz(u.a2)) +n=J.eX(t.j.a(n),new A.biW(),t.VW) +q=new A.JC(A.a8(n,!0,n.$ti.i("aN.E"))) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$aow,r)}, +bIW(a,b){return new A.a0n()}, +Bs(){return B.d.aA(self.window.performance.now()*1000)}, +aqE(a){var s +$.dz() +s=self.window.devicePixelRatio +if(s===0)s=1 +return B.d.dZ((a+1)*s)+2}, +aqD(a){var s +$.dz() +s=self.window.devicePixelRatio +if(s===0)s=1 +return B.d.dZ((a+1)*s)+2}, +bFy(a){a.remove()}, +biq(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.cE("Flutter Web does not support the blend mode: "+a.j(0)))}}, +bzr(a){switch(a.a){case 0:return B.aon +case 3:return B.aoo +case 5:return B.aop +case 7:return B.aor +case 9:return B.aos +case 4:return B.aot +case 6:return B.aou +case 8:return B.aov +case 10:return B.aow +case 12:return B.aox +case 1:return B.aoy +case 11:return B.aoq +case 24:case 13:return B.aoH +case 14:return B.aoI +case 15:return B.aoL +case 16:return B.aoJ +case 17:return B.aoK +case 18:return B.aoM +case 19:return B.aoN +case 20:return B.aoO +case 21:return B.aoA +case 22:return B.aoB +case 23:return B.aoC +case 25:return B.aoD +case 26:return B.aoE +case 27:return B.aoF +case 28:return B.aoG +default:return B.aoz}}, +bAT(a){if(a==null)return null +switch(a.a){case 0:return"butt" +case 1:return"round" +case 2:default:return"square"}}, +bXF(a){switch(a.a){case 1:return"round" +case 2:return"bevel" +case 0:default:return"miter"}}, +boQ(a8,a9,b0,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=null,a5=t.yY,a6=A.a([],a5),a7=a8.length +for(s=a4,r=s,q=0;q>>16&255)/255,0,0,0,0,(o>>>8&255)/255,0,0,0,0,(p&255)/255,0,0,0,1,0],t.n),"recolor") +s.FK("recolor",k,1,0,0,0,6,l) +q=s.cL() +break +case 15:r=A.bzr(B.uA) +r.toString +q=A.byk(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.bzr(b) +r.toString +q=A.byk(a,r,!1) +break +case 1:case 2:case 6:case 8:case 4:case 0:case 3:throw A.d(A.cE("Blend mode not supported in HTML renderer: "+b.j(0))) +default:q=null}return q}, +yJ(){var s,r=A.awg($.bqA(),!1),q=self.document.createElementNS("http://www.w3.org/2000/svg","filter"),p=$.bwb+1 +$.bwb=p +p="_fcf"+p +q.id=p +s=q.filterUnits +s.toString +A.aPE(s,2) +s=q.x.baseVal +s.toString +A.aPG(s,"0%") +s=q.y.baseVal +s.toString +A.aPG(s,"0%") +s=q.width.baseVal +s.toString +A.aPG(s,"100%") +s=q.height.baseVal +s.toString +A.aPG(s,"100%") +return new A.aTf(p,r,q)}, +bAW(a){var s=A.yJ() +s.OG(a,"comp") +return s.cL()}, +byk(a,b,c){var s="flood",r="SourceGraphic",q=A.yJ(),p=A.eM(a.gk(a)) +q.wd(p,"1",s) +p=b.b +if(c)q.ZB(r,s,p) +else q.ZB(s,r,p) +return q.cL()}, +Vq(a,b){var s,r,q,p,o=a.a,n=a.c,m=Math.min(o,n),l=a.b,k=a.d,j=Math.min(l,k) +n-=o +s=Math.abs(n) +k-=l +r=Math.abs(k) +q=b.b +p=b.c +if(p==null)p=0 +if(q===B.aJ&&p>0){q=p/2 +m-=q +j-=q +s=Math.max(0,s-p) +r=Math.max(0,r-p)}if(m!==o||j!==l||s!==n||r!==k)return new A.I(m,j,m+s,j+r) +return a}, +Vr(a,b,c,d){var s,r,q,p,o,n,m,l,k,j=A.cm(self.document,c),i=b.b===B.aJ,h=b.c +if(h==null)h=0 +if(d.DS(0)){s=a.a +r=a.b +q="translate("+A.c(s)+"px, "+A.c(r)+"px)"}else{s=new Float32Array(16) +p=new A.dc(s) +p.c5(d) +r=a.a +o=a.b +p.bs(0,r,o) +q=A.mr(s) +s=r +r=o}n=j.style +A.N(n,"position","absolute") +A.N(n,"transform-origin","0 0 0") +A.N(n,"transform",q) +m=A.eM(b.r) +o=b.x +if(o!=null){l=o.b +if($.bH().ge4()===B.aL&&!i){A.N(n,"box-shadow","0px 0px "+A.c(l*2)+"px "+m) +o=b.r +m=A.eM(((B.d.aa((1-Math.min(Math.sqrt(l)/6.283185307179586,1))*(o>>>24&255))&255)<<24|o&16777215)>>>0)}else A.N(n,"filter","blur("+A.c(l)+"px)")}A.N(n,"width",A.c(a.c-s)+"px") +A.N(n,"height",A.c(a.d-r)+"px") +if(i)A.N(n,"border",A.rF(h)+" solid "+m) +else{A.N(n,"background-color",m) +k=A.bT_(b.w,a) +A.N(n,"background-image",k!==""?"url('"+k+"'":"")}return j}, +bT_(a,b){var s +if(a!=null){if(a instanceof A.wF){s=A.awc(a.e.gLH()) +return s==null?"":s}if(a instanceof A.B9)return A.bS(a.CM(b,1,!0))}return""}, +bzo(a,b){var s,r=b.e,q=b.r,p=!1 +if(r===q){s=b.z +if(r===s){p=b.x +p=r===p&&r===b.f&&q===b.w&&s===b.Q&&p===b.y}}if(p){A.N(a,"border-radius",A.rF(b.z)) +return}A.N(a,"border-top-left-radius",A.rF(r)+" "+A.rF(b.f)) +A.N(a,"border-top-right-radius",A.rF(q)+" "+A.rF(b.w)) +A.N(a,"border-bottom-left-radius",A.rF(b.z)+" "+A.rF(b.Q)) +A.N(a,"border-bottom-right-radius",A.rF(b.x)+" "+A.rF(b.y))}, +rF(a){return B.d.aF(a===0?1:a,3)+"px"}, +btr(a,b,c){return new A.JR(a,b,c)}, +bl6(a,b,c){var s,r,q,p,o,n,m +if(0===b){c.push(new A.z(a.c,a.d)) +c.push(new A.z(a.e,a.f)) +return}s=new A.adz() +a.a1B(s) +r=s.a +r.toString +q=s.b +q.toString +p=a.b +o=a.f +if(A.hn(p,a.d,o)){n=r.f +if(!A.hn(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}, +bS7(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}, +bzO(a,b,c,d,e){return(((d+3*(b-c)-a)*e+3*(c-b-b+a))*e+3*(b-a))*e+a}, +bnP(){var s=new A.uT(A.bnj(),B.dV) +s.a76() +return s}, +bRK(a,b,c){var s +if(0===c)s=0===b||360===b +else s=!1 +if(s)return new A.z(a.c,a.gbq().b) +return null}, +bhs(a,b,c,d){var s=a+b +if(s<=c)return d +return Math.min(c/s,d)}, +buV(a,b){var s=new A.aMm(a,!0,a.w) +if(a.Q)a.Qg() +if(!a.as)s.z=a.w +return s}, +bnj(){var s=new Float32Array(16) +s=new A.CM(s,new Uint8Array(8)) +s.e=s.c=8 +s.CW=172 +return s}, +bLT(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}, +aoN(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}, +bWn(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}, +bvS(a,b,c,d,e,f){return new A.aRN(e-2*c+a,f-2*d+b,2*(c-a),2*(d-b),a,b)}, +aMp(a,b,c,d,e,f){if(d===f)return A.hn(c,a,e)&&a!==e +else return a===c&&b===d}, +bLV(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.aoN(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}, +bXL(a,b,c,d){var s,r,q,p,o=a[1],n=a[3] +if(!A.hn(o,c,n))return +s=a[0] +r=a[2] +if(!A.hn(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.z(q,p))}, +bXM(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.hn(i,c,h)&&!A.hn(h,c,g))return +s=a[0] +r=a[2] +q=a[4] +if(!A.hn(s,b,r)&&!A.hn(r,b,q))return +p=new A.qG() +o=p.rw(i-2*h+g,2*(h-i),i-c) +for(n=q-2*r+s,m=2*(r-s),l=0;l30)B.b.iF($.rK,0).d.m()}else a.d.m()}}, +aMy(a,b){if(a<=0)return b*0.1 +else return Math.min(Math.max(b*0.5,a*10),b)}, +bSe(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.d.dZ(a6/2)*2) +s=a8*a9 +if(s*a6*a6>4194304&&a6>2)a6=3355443.2/s}else a6=Math.max(2/B.d.dv(2/a6),0.0001) +return a6}, +zK(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}, +bSf(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.gk(i)>>>8&255)/255 +m[2]=(i.gk(i)&255)/255 +m[3]=(i.gk(i)>>>24&255)/255 +j[0]=0 +h=4 +g=1}else{h=0 +g=0}for(k=a2.length,f=0;f>>16&255)/255 +h=e+1 +m[e]=(d.gk(i)>>>8&255)/255 +e=h+1 +m[h]=(d.gk(i)&255)/255 +h=e+1 +m[e]=(d.gk(i)>>>24&255)/255}for(k=a3.length,f=0;f>>16&255)/255 +h=e+1 +m[e]=(i.gk(i)>>>8&255)/255 +m[h]=(i.gk(i)&255)/255 +m[h+1]=(i.gk(i)>>>24&255)/255 +j[g]=1}b=4*n +for(a=0;a>>2 +l[a]=(m[a+4]-m[a])/(j[g+1]-j[g])}l[b]=0 +l[b+1]=0 +l[b+2]=0 +l[b+3]=0 +for(a=0;a 1.0) {") +n.push(" "+a.gv6().a+" = vec4(0, 0, 0, 0);") +n.push(" return;") +n.push("}")}return o}, +bzF(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.Cc(s,r) +case 1:s=a.c +if(s==null)return null +return new A.C8(s) +case 2:throw A.d(A.cE("ColorFilter.linearToSrgbGamma not implemented for HTML renderer")) +case 3:throw A.d(A.cE("ColorFilter.srgbToLinearGamma not implemented for HTML renderer.")) +default:throw A.d(A.a1("Unknown mode "+a.j(0)+".type for ColorFilter."))}}, +bvJ(a){return new A.a88(A.a([],t.zz),A.a([],t.fe),a===2,!1,new A.cD(""))}, +a89(a){return new A.a88(A.a([],t.zz),A.a([],t.fe),a===2,!0,new A.cD(""))}, +bNx(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.bl(null,null))}, +bo6(){var s,r=$.bwV +if(r==null){r=$.hV +s=A.bvJ(r==null?$.hV=A.rG():r) +s.qX(11,"position") +s.qX(11,"color") +s.hy(14,"u_ctransform") +s.hy(11,"u_scale") +s.hy(11,"u_shift") +s.aam(11,"v_color") +r=A.a([],t.s) +s.c.push(new A.oQ("main",r)) +r.push(u.eE) +r.push("v_color = color.zyxw;") +r=$.bwV=s.cL()}return r}, +bwX(){var s,r=$.bwW +if(r==null){r=$.hV +s=A.bvJ(r==null?$.hV=A.rG():r) +s.qX(11,"position") +s.hy(14,"u_ctransform") +s.hy(11,"u_scale") +s.hy(11,"u_textransform") +s.hy(11,"u_shift") +s.aam(9,"v_texcoord") +r=A.a([],t.s) +s.c.push(new A.oQ("main",r)) +r.push(u.eE) +r.push("v_texcoord = vec2((u_textransform.z + position.x) * u_textransform.x, ((u_textransform.w + position.y) * u_textransform.y));") +r=$.bwW=s.cL()}return r}, +btd(a,b,c){var s,r,q,p="texture2D",o=$.hV,n=A.a89(o==null?$.hV=A.rG():o) +n.e=1 +n.qX(9,"v_texcoord") +n.hy(16,"u_texture") +o=A.a([],t.s) +s=new A.oQ("main",o) +n.c.push(s) +r=!0 +if(!a)r=b===B.ch&&c===B.ch +if(r){r=n.gv6() +q=n.y?"texture":p +o.push(r.a+" = "+q+"(u_texture, v_texcoord);")}else{s.aar("v_texcoord.x","u",b) +s.aar("v_texcoord.y","v",c) +o.push("vec2 uv = vec2(u, v);") +r=n.gv6() +q=n.y?"texture":p +o.push(r.a+" = "+q+"(u_texture, uv);")}return n.cL()}, +bV2(a){var s,r,q,p=$.bjJ,o=p.length +if(o!==0)try{if(o>1)B.b.fZ(p,new A.biy()) +for(p=$.bjJ,o=p.length,r=0;ry')) +case 1:case 2:case 5:return new A.KC(A.bpM("8a2@q\u03a9qk1&kq3@q\xc6a\xe6aw2xy2\xa5\xff\u2190\xffz51)s.push(new A.dX(B.b.gW(o),null,B.b.gY(o))) +else s.push(new A.dX(p,null,null))}return s}, +bT6(a,b){var s=a.m6(b),r=A.pi(A.bS(s.b)) +switch(s.a){case"setDevicePixelRatio":$.dz().d=r +$.bC().x.$0() +return!0}return!1}, +rO(a,b){if(a==null)return +if(b===$.ab)a.$0() +else b.EC(a)}, +rP(a,b,c,d){if(a==null)return +if(b===$.ab)a.$1(c) +else b.vK(a,c,d)}, +bWh(a,b,c,d){if(b===$.ab)a.$2(c,d) +else b.EC(new A.bju(a,c,d))}, +bVM(){var s,r,q,p=self.document.documentElement +p.toString +s=null +if("computedStyleMap" in p){r=p.computedStyleMap() +if(r!=null){q=r.get("font-size") +s=q!=null?q.value:null}}if(s==null)s=A.bAo(A.blQ(self.window,p).getPropertyValue("font-size")) +return(s==null?16:s)/16}, +byw(a,b){var s +b.toString +t.pE.a(b) +s=A.cm(self.document,A.bS(J.i(b,"tagName"))) +A.N(s.style,"width","100%") +A.N(s.style,"height","100%") +return s}, +bVc(a){switch(a){case 0:return 1 +case 1:return 4 +case 2:return 2 +default:return B.e.akX(1,a)}}, +bmJ(a,b,c,d){var s,r,q=A.d6(b) +if(c==null)A.eg(d,a,q,null) +else{s=t.K +r=A.b8(A.C(["passive",c],t.N,s)) +s=r==null?s.a(r):r +d.addEventListener(a,q,s)}return new A.a1O(a,d,q)}, +Q3(a){var s=B.d.aA(a) +return A.dA(B.d.aA((a-s)*1000),s,0)}, +bzw(a,b){var s,r,q,p,o=b.ghq().a,n=$.cQ +if((n==null?$.cQ=A.fE():n).b&&a.offsetX===0&&a.offsetY===0)return A.bSd(a,o) +n=b.ghq() +s=a.target +s.toString +if(n.e.contains(s)){n=$.VV() +r=n.gl7().w +if(r!=null){a.target.toString +n.gl7().c.toString +q=new A.dc(r.c).El(a.offsetX,a.offsetY,0) +return new A.z(q.a,q.b)}}if(!J.e(a.target,o)){p=o.getBoundingClientRect() +return new A.z(a.clientX-p.x,a.clientY-p.y)}return new A.z(a.offsetX,a.offsetY)}, +bSd(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.z(q,p)}, +bAX(a,b){var s=b.$0() +return s}, +bMz(a){var s=new A.aNm(A.w(t.N,t.qe),a) +s.aqX(a) +return s}, +bTL(a){}, +bps(a,b){return a[b]}, +bAo(a){var s=self.window.parseFloat(a) +if(s==null||isNaN(s))return null +return s}, +bWK(a){var s,r,q=null +if("computedStyleMap" in a){s=a.computedStyleMap() +if(s!=null){r=s.get("font-size") +q=r!=null?r.value:null}}return q==null?A.bAo(A.blQ(self.window,a).getPropertyValue("font-size")):q}, +bY_(a,b){var s,r=self.document.createElement("CANVAS") +if(r==null)return null +try{A.II(r,a) +A.IH(r,b)}catch(s){return null}return r}, +bmo(a){var s,r,q,p="premultipliedAlpha" +if(A.bn7()){s=a.a +s.toString +r=t.N +q=A.bsE(s,"webgl2",A.C([p,!1],r,t.z)) +q.toString +q=new A.a0z(q) +$.aAP.b=A.w(r,t.eS) +q.dy=s +s=q}else{s=a.b +s.toString +r=$.hV +r=(r==null?$.hV=A.rG():r)===1?"webgl":"webgl2" +q=t.N +r=A.pG(s,r,A.C([p,!1],q,t.z)) +r.toString +r=new A.a0z(r) +$.aAP.b=A.w(q,t.eS) +r.dy=s +s=r}return s}, +bAQ(a,b,c,d,e,f,g){var s,r="uniform4f",q=b.a,p=a.kp(0,q,"u_ctransform"),o=new Float32Array(16),n=new A.dc(o) +n.c5(g) +n.bs(0,-c,-d) +s=a.a +A.bi(s,"uniformMatrix4fv",[p,!1,o]) +A.bi(s,r,[a.kp(0,q,"u_scale"),2/e,-2/f,1,1]) +A.bi(s,r,[a.kp(0,q,"u_shift"),-1,1,0,0])}, +bzs(a,b,c){var s,r,q,p,o="bufferData" +if(c===1){s=a.gvl() +A.bi(a.a,o,[a.glG(),b,s])}else{r=b.length +q=new Float32Array(r) +for(p=0;p")).bJ(0," ") +return r.length!==0?r:null}, +Mk(a,b){var s,r=a.style +A.N(r,"position","absolute") +A.N(r,"overflow","visible") +r=b.k2 +s=A.b8("flt-semantic-node-"+r) +if(s==null)s=t.K.a(s) +a.setAttribute("id",s) +if(r===0&&!A.vT().gVt()){A.N(a.style,"filter","opacity(0%)") +A.N(a.style,"color","rgba(0,0,0,0)")}if(A.vT().gVt())A.N(a.style,"outline","1px solid green") +return a}, +aR5(a){var s=a.style +s.removeProperty("transform-origin") +s.removeProperty("transform") +if($.bH().gf9()===B.bM||$.bH().gf9()===B.dr){s=a.style +A.N(s,"top","0px") +A.N(s,"left","0px")}else{s=a.style +s.removeProperty("top") +s.removeProperty("left")}}, +fE(){var s,r,q,p=A.cm(self.document,"flt-announcement-host") +self.document.body.append(p) +s=A.bqW(B.om) +r=A.bqW(B.on) +p.append(s) +p.append(r) +q=B.O6.p(0,$.bH().gf9())?new A.aup():new A.aIK() +return new A.ay3(new A.ape(s,r),new A.ay8(),new A.aR1(q),B.hn,A.a([],t.s2))}, +bIk(a){var s=t.S,r=t.UF +r=new A.ay4(a,A.w(s,r),A.w(s,r),A.a([],t.Qo),A.a([],t.qj)) +r.aqK(a) +return r}, +bAb(a){var s,r,q,p,o,n,m,l,k=a.length,j=t.t,i=A.a([],j),h=A.a([0],j) +for(s=0,r=0;r=h.length)h.push(r) +else h[o]=r +if(o>s)s=o}m=A.bO(s,0,!1,t.S) +l=h[s] +for(r=s-1;r>=0;--r){m[r]=l +l=i[l]}return m}, +a9g(a,b){var s=new A.a9f(a,b) +s.ar3(a,b) +return s}, +bNr(a){var s,r=$.NE +if(r!=null)s=r.a===a +else s=!1 +if(s){r.toString +return r}return $.NE=new A.aRb(a,A.a([],t.Up),$,$,$,null)}, +boe(){var s=new Uint8Array(0),r=new DataView(new ArrayBuffer(8)) +return new A.aX6(new A.a9O(s,0),r,A.dw(r.buffer,0,null))}, +bzx(a){if(a===0)return B.j +return new A.z(200*a/600,400*a/600)}, +bV7(a,b){var s,r,q,p,o,n +if(b===0)return a +s=a.c +r=a.a +q=a.d +p=a.b +o=b*((800+(s-r)*0.5)/600) +n=b*((800+(q-p)*0.5)/600) +return new A.I(r-o,p-n,s+o,q+n).ep(A.bzx(b)).eA(20)}, +bV9(a,b){if(b===0)return null +return new A.aTb(Math.min(b*((800+(a.c-a.a)*0.5)/600),b*((800+(a.d-a.b)*0.5)/600)),A.bzx(b))}, +bzG(){var s=self.document.createElementNS("http://www.w3.org/2000/svg","svg"),r=A.b8("1.1") +if(r==null)r=t.K.a(r) +s.setAttribute("version",r) +return s}, +aPG(a,b){a.valueAsString=b +return b}, +aPE(a,b){a.baseVal=b +return b}, +Dh(a,b){a.baseVal=b +return b}, +aPF(a,b){a.baseVal=b +return b}, +bmH(a,b,c,d,e,f,g,h){return new A.lR($,$,$,$,$,$,$,$,$,0,c,d,e,f,g,h,a,b)}, +bu_(a,b,c,d,e,f){var s=new A.aES(d,f,a,b,e,c) +s.By() +return s}, +bzN(){var s=$.bi2 +if(s==null){s=t.jQ +s=$.bi2=new A.rb(A.bp6(u.M,937,B.Cb,s),B.cA,A.w(t.S,s),t.MX)}return s}, +bKq(a){if(self.Intl.v8BreakIterator!=null)return new A.aVr(A.bVs(),a) +return new A.ayp(a)}, +bUV(a,b,c){var s,r,q,p,o,n,m,l,k=A.a([],t._f) +c.adoptText(b) +c.first() +for(s=a.length,r=0;c.next()!==-1;r=q){q=B.d.aA(c.current()) +for(p=r,o=0,n=0;p0){k.push(new A.tS(B.f_,o,n,r,p)) +r=p +o=0 +n=0}}if(o>0)l=B.f0 +else l=q===s?B.ee:B.f_ +k.push(new A.tS(l,o,n,r,q))}if(k.length===0||B.b.gY(k).c===B.f0)k.push(new A.tS(B.ee,0,0,s,s)) +return k}, +bSc(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.Vv(a1,0) +r=A.bzN().yJ(s) +a.c=a.d=a.e=a.f=0 +q=new A.bhr(a,a1,a0) +q.$2(B.a_,2) +p=++a.f +for(o=a1.length,n=t.jQ,m=t.S,l=t.MX,k=B.cA,j=0;p<=o;p=++a.f){a.b=a.a +a.a=r +if(s!=null&&s>65535){q.$2(B.a_,-1) +p=++a.f}s=A.Vv(a1,p) +p=$.bi2 +r=(p==null?$.bi2=new A.rb(A.bp6(u.M,937,B.Cb,n),B.cA,A.w(m,n),l):p).yJ(s) +i=a.a +j=i===B.lO?j+1:0 +if(i===B.jg||i===B.lM){q.$2(B.f0,5) +continue}if(i===B.lQ){if(r===B.jg)q.$2(B.a_,5) +else q.$2(B.f0,5) +continue}if(r===B.jg||r===B.lM||r===B.lQ){q.$2(B.a_,6) +continue}p=a.f +if(p>=o)break +if(r===B.hr||r===B.q0){q.$2(B.a_,7) +continue}if(i===B.hr){q.$2(B.f_,18) +continue}if(i===B.q0){q.$2(B.f_,8) +continue}if(i===B.q1){q.$2(B.a_,8) +continue}h=i===B.pW +if(!h)k=i==null?B.cA:i +if(r===B.pW||r===B.q1){if(k!==B.hr){if(k===B.lO)--j +q.$2(B.a_,9) +r=k +continue}r=B.cA}if(h){a.a=k +h=k}else h=i +if(r===B.q3||h===B.q3){q.$2(B.a_,11) +continue}if(h===B.pZ){q.$2(B.a_,12) +continue}g=h!==B.hr +if(!(!g||h===B.lJ||h===B.jf)&&r===B.pZ){q.$2(B.a_,12) +continue}if(g)g=r===B.pY||r===B.je||r===B.y8||r===B.lK||r===B.pX +else g=!1 +if(g){q.$2(B.a_,13) +continue}if(h===B.jd){q.$2(B.a_,14) +continue}g=h===B.q6 +if(g&&r===B.jd){q.$2(B.a_,15) +continue}f=h!==B.pY +if((!f||h===B.je)&&r===B.q_){q.$2(B.a_,16) +continue}if(h===B.q2&&r===B.q2){q.$2(B.a_,17) +continue}if(g||r===B.q6){q.$2(B.a_,19) +continue}if(h===B.q5||r===B.q5){q.$2(B.f_,20) +continue}if(r===B.lJ||r===B.jf||r===B.q_||h===B.y6){q.$2(B.a_,21) +continue}if(a.b===B.cz)g=h===B.jf||h===B.lJ +else g=!1 +if(g){q.$2(B.a_,21) +continue}g=h===B.pX +if(g&&r===B.cz){q.$2(B.a_,21) +continue}if(r===B.y7){q.$2(B.a_,22) +continue}e=h!==B.cA +if(!((!e||h===B.cz)&&r===B.ef))if(h===B.ef)d=r===B.cA||r===B.cz +else d=!1 +else d=!0 +if(d){q.$2(B.a_,23) +continue}d=h===B.lR +if(d)c=r===B.q4||r===B.lN||r===B.lP +else c=!1 +if(c){q.$2(B.a_,23) +continue}if((h===B.q4||h===B.lN||h===B.lP)&&r===B.f1){q.$2(B.a_,23) +continue}c=!d +if(!c||h===B.f1)b=r===B.cA||r===B.cz +else b=!1 +if(b){q.$2(B.a_,24) +continue}if(!e||h===B.cz)b=r===B.lR||r===B.f1 +else b=!1 +if(b){q.$2(B.a_,24) +continue}if(!f||h===B.je||h===B.ef)f=r===B.f1||r===B.lR +else f=!1 +if(f){q.$2(B.a_,25) +continue}f=h!==B.f1 +if((!f||d)&&r===B.jd){q.$2(B.a_,25) +continue}if((!f||!c||h===B.jf||h===B.lK||h===B.ef||g)&&r===B.ef){q.$2(B.a_,25) +continue}g=h===B.lL +if(g)f=r===B.lL||r===B.jh||r===B.jj||r===B.jk +else f=!1 +if(f){q.$2(B.a_,26) +continue}f=h!==B.jh +if(!f||h===B.jj)c=r===B.jh||r===B.ji +else c=!1 +if(c){q.$2(B.a_,26) +continue}c=h!==B.ji +if((!c||h===B.jk)&&r===B.ji){q.$2(B.a_,26) +continue}if((g||!f||!c||h===B.jj||h===B.jk)&&r===B.f1){q.$2(B.a_,27) +continue}if(d)g=r===B.lL||r===B.jh||r===B.ji||r===B.jj||r===B.jk +else g=!1 +if(g){q.$2(B.a_,27) +continue}if(!e||h===B.cz)g=r===B.cA||r===B.cz +else g=!1 +if(g){q.$2(B.a_,28) +continue}if(h===B.lK)g=r===B.cA||r===B.cz +else g=!1 +if(g){q.$2(B.a_,29) +continue}g=!1 +if(!e||h===B.cz||h===B.ef)if(r===B.jd){g=a1.charCodeAt(p) +f=!0 +if(g!==9001)if(!(g>=12296&&g<=12317))g=g>=65047&&g<=65378 +else g=f +else g=f +g=!g}if(g){q.$2(B.a_,30) +continue}g=!1 +if(h===B.je){p=a1.charCodeAt(p-1) +f=!0 +if(p!==9001)if(!(p>=12296&&p<=12317))p=p>=65047&&p<=65378 +else p=f +else p=f +if(!p)p=r===B.cA||r===B.cz||r===B.ef +else p=g}else p=g +if(p){q.$2(B.a_,30) +continue}if(r===B.lO){if((j&1)===1)q.$2(B.a_,30) +else q.$2(B.f_,30) +continue}if(h===B.lN&&r===B.lP){q.$2(B.a_,30) +continue}q.$2(B.f_,31)}q.$2(B.ee,3) +return a0}, +vV(a,b,c,d,e){var s,r,q,p +if(c===d)return 0 +s=a.font +if(c===$.byQ&&d===$.byP&&b===$.byR&&s===$.byO)r=$.byS +else{q=c===0&&d===b.length?b:B.c.R(b,c,d) +p=a.measureText(q).width +if(p==null)p=null +p.toString +r=p}$.byQ=c +$.byP=d +$.byR=b +$.byO=s +$.byS=r +if(e==null)e=0 +return B.d.aa((e!==0?r+e*(d-c):r)*100)/100}, +bsV(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.J8(b,c,d,e,f,m,k,a2,!s,r,h,i,l,j,q,a3,o,p,a0,a,n,a1)}, +bpo(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""}, +bUb(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.i +r=$.bqq().yJ(q) +if(r!=null)return r +return null}, +boY(a,b){var s=A.Vv(a,b) +s.toString +if(s>=48&&s<=57)return B.lz +if(s>=1632&&s<=1641)return B.xy +switch($.bqq().yJ(s)){case B.i:return B.xx +case B.ae:return B.xy +case null:case void 0:return B.pK}}, +Vv(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}, +bOO(a,b,c){return new A.rb(a,b,A.w(t.S,c),c.i("rb<0>"))}, +bOP(a,b,c,d,e){return new A.rb(A.bp6(a,b,c,e),d,A.w(t.S,e),e.i("rb<0>"))}, +bp6(a,b,c,d){var s,r,q,p,o,n=A.a([],d.i("E>")),m=a.length +for(s=d.i("ex<0>"),r=0;r=0&&q<=r))break +q+=s +if(A.bP6(b,q))break}return A.vR(q,0,r)}, +bP6(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=$.VW().Lj(0,a,b) +q=$.VW().Lj(0,a,s) +if(q===B.nU&&r===B.nV)return!1 +if(A.hS(q,B.u0,B.nU,B.nV,j,j))return!0 +if(A.hS(r,B.u0,B.nU,B.nV,j,j))return!0 +if(q===B.u_&&r===B.u_)return!1 +if(A.hS(r,B.km,B.kn,B.kl,j,j))return!1 +for(p=0;A.hS(q,B.km,B.kn,B.kl,j,j);){++p +s=b-p-1 +if(s<0)return!0 +o=$.VW() +n=A.Vv(a,s) +q=n==null?o.b:o.yJ(n)}if(A.hS(q,B.d8,B.bZ,j,j,j)&&A.hS(r,B.d8,B.bZ,j,j,j))return!1 +m=0 +do{++m +l=$.VW().Lj(0,a,b+m)}while(A.hS(l,B.km,B.kn,B.kl,j,j)) +do{++p +k=$.VW().Lj(0,a,b-p-1)}while(A.hS(k,B.km,B.kn,B.kl,j,j)) +if(A.hS(q,B.d8,B.bZ,j,j,j)&&A.hS(r,B.tY,B.kk,B.id,j,j)&&A.hS(l,B.d8,B.bZ,j,j,j))return!1 +if(A.hS(k,B.d8,B.bZ,j,j,j)&&A.hS(q,B.tY,B.kk,B.id,j,j)&&A.hS(r,B.d8,B.bZ,j,j,j))return!1 +s=q===B.bZ +if(s&&r===B.id)return!1 +if(s&&r===B.tX&&l===B.bZ)return!1 +if(k===B.bZ&&q===B.tX&&r===B.bZ)return!1 +s=q===B.e2 +if(s&&r===B.e2)return!1 +if(A.hS(q,B.d8,B.bZ,j,j,j)&&r===B.e2)return!1 +if(s&&A.hS(r,B.d8,B.bZ,j,j,j))return!1 +if(k===B.e2&&A.hS(q,B.tZ,B.kk,B.id,j,j)&&r===B.e2)return!1 +if(s&&A.hS(r,B.tZ,B.kk,B.id,j,j)&&l===B.e2)return!1 +if(q===B.ko&&r===B.ko)return!1 +if(A.hS(q,B.d8,B.bZ,B.e2,B.ko,B.nT)&&r===B.nT)return!1 +if(q===B.nT&&A.hS(r,B.d8,B.bZ,B.e2,B.ko,j))return!1 +return!0}, +hS(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}, +bIh(a){switch(a){case"TextInputAction.continueAction":case"TextInputAction.next":return B.Tb +case"TextInputAction.previous":return B.Tk +case"TextInputAction.done":return B.SP +case"TextInputAction.go":return B.SW +case"TextInputAction.newline":return B.ST +case"TextInputAction.search":return B.Tr +case"TextInputAction.send":return B.Ts +case"TextInputAction.emergencyCall":case"TextInputAction.join":case"TextInputAction.none":case"TextInputAction.route":case"TextInputAction.unspecified":default:return B.Tc}}, +bsU(a,b,c){switch(a){case"TextInputType.number":return b?B.SI:B.Te +case"TextInputType.phone":return B.Ti +case"TextInputType.emailAddress":return B.SR +case"TextInputType.url":return B.TE +case"TextInputType.multiline":return B.T8 +case"TextInputType.none":return c?B.T9:B.Td +case"TextInputType.text":default:return B.TC}}, +bOd(a){var s +if(a==="TextCapitalization.words")s=B.P6 +else if(a==="TextCapitalization.characters")s=B.P8 +else s=a==="TextCapitalization.sentences"?B.P7:B.tv +return new A.ON(s)}, +bSy(a){}, +aot(a,b,c,d){var s="transparent",r="none",q=a.style +A.N(q,"white-space","pre-wrap") +A.N(q,"align-content","center") +A.N(q,"padding","0") +A.N(q,"opacity","1") +A.N(q,"color",s) +A.N(q,"background-color",s) +A.N(q,"background",s) +A.N(q,"outline",r) +A.N(q,"border",r) +A.N(q,"resize",r) +A.N(q,"text-shadow",s) +A.N(q,"transform-origin","0 0 0") +if(b){A.N(q,"top","-9999px") +A.N(q,"left","-9999px")}if(d){A.N(q,"width","0") +A.N(q,"height","0")}if(c)A.N(q,"pointer-events",r) +if($.bH().ge4()===B.fU||$.bH().ge4()===B.aL)a.classList.add("transparentTextEditing") +A.N(q,"caret-color",s)}, +bSG(a,b){var s,r=a.isConnected +if(r==null)r=null +if(r!==!0)return +s=$.bC().geB().Dr(a) +if(s==null)return +if(s.a!==b)A.bhS(a,b)}, +bhS(a,b){$.bC().geB().b.h(0,b).ghq().e.append(a)}, +bIg(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,a3,a4 +if(a6==null)return null +s=t.N +r=A.w(s,t.B) +q=A.w(s,t.M1) +p=A.cm(self.document,"form") +o=$.VV().gl7() instanceof A.Di +p.noValidate=!0 +p.method="post" +p.action="#" +A.eg(p,"submit",$.bkA(),null) +A.aot(p,!1,o,!0) +n=J.BK(0,s) +m=A.bkS(a6,B.P5) +l=null +if(a7!=null)for(s=t.a,k=J.A_(a7,s),j=k.$ti,k=new A.ci(k,k.gt(0),j.i("ci")),i=m.b,j=j.i("S.E"),h=!o,g=!1;k.u();){f=k.d +if(f==null)f=j.a(f) +e=J.a0(f) +d=s.a(e.h(f,"autofill")) +c=A.bS(e.h(f,"textCapitalization")) +if(c==="TextCapitalization.words")c=B.P6 +else if(c==="TextCapitalization.characters")c=B.P8 +else c=c==="TextCapitalization.sentences"?B.P7:B.tv +b=A.bkS(d,new A.ON(c)) +c=b.b +n.push(c) +if(c!==i){a=A.bsU(A.bS(J.i(s.a(e.h(f,"inputType")),"name")),!1,!1).Kj() +b.a.iX(a) +b.iX(a) +A.aot(a,!1,o,h) +q.n(0,c,b) +r.n(0,c,a) +p.append(a) +if(g){l=a +g=!1}}else g=!0}else n.push(m.b) +B.b.mE(n) +for(s=n.length,a0=0,k="";a00?k+"*":k)+a1}a2=k.charCodeAt(0)==0?k:k +a3=$.aox.h(0,a2) +if(a3!=null)a3.remove() +a4=A.cm(self.document,"input") +A.awb(a4,-1) +A.aot(a4,!0,!1,!0) +a4.className="submitBtn" +A.awd(a4,"submit") +p.append(a4) +return new A.axM(p,r,q,l==null?a4:l,a2,a5)}, +bkS(a,b){var s,r=J.a0(a),q=A.bS(r.h(a,"uniqueIdentifier")),p=t.kc.a(r.h(a,"hints")),o=p==null||J.cT(p)?null:A.bS(J.fT(p)),n=A.bsQ(t.a.a(r.h(a,"editingValue"))) +if(o!=null){s=$.bB1().a.h(0,o) +if(s==null)s=o}else s=null +return new A.WJ(n,q,s,A.dk(r.h(a,"hintText")))}, +bp2(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.bE(a,r)}, +bOf(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.DY(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.bp2(h,g,new A.cW(f,e)) +f=a1.a +f.toString +if(m!==f){l=B.c.p(g,".") +for(e=A.bB(A.bjU(g),!0,!1,!1).pf(0,f),e=new A.za(e.a,e.b,e.c),d=t.Qz,b=h.length;e.u();){k=e.d +a=(k==null?d.a(k):k).b +r=a.index +if(!(r>=0&&r+a[0].length<=b)){j=r+c-1 +i=A.bp2(h,g,new A.cW(r,j))}else{j=l?r+a[0].length-1:r+a[0].length +i=A.bp2(h,g,new A.cW(r,j))}if(i===f){a0.c=r +a0.d=j +break}}}}a0.e=a1.b +a0.f=a1.c +return a0}, +J_(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.B3(e,r,Math.max(0,s),b,c)}, +bsQ(a){var s=J.a0(a),r=A.dk(s.h(a,"text")),q=B.d.aA(A.iD(s.h(a,"selectionBase"))),p=B.d.aA(A.iD(s.h(a,"selectionExtent"))),o=A.a1l(a,"composingBase"),n=A.a1l(a,"composingExtent") +s=o==null?-1:o +return A.J_(q,s,n==null?-1:n,p,r)}, +bsP(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.blN(a) +r=A.bst(a) +r=r==null?p:B.d.aA(r) +q=A.bsu(a) +return A.J_(r,-1,-1,q==null?p:B.d.aA(q),s)}else{s=A.blN(a) +r=A.bsu(a) +r=r==null?p:B.d.aA(r) +q=A.bst(a) +return A.J_(r,-1,-1,q==null?p:B.d.aA(q),s)}}else{o=globalThis.HTMLTextAreaElement +if(o!=null&&a instanceof o){s=a.selectionDirection +if((s==null?p:s)==="backward"){s=A.bsz(a) +r=A.bsx(a) +r=r==null?p:B.d.aA(r) +q=A.bsy(a) +return A.J_(r,-1,-1,q==null?p:B.d.aA(q),s)}else{s=A.bsz(a) +r=A.bsy(a) +r=r==null?p:B.d.aA(r) +q=A.bsx(a) +return A.J_(r,-1,-1,q==null?p:B.d.aA(q),s)}}else throw A.d(A.ag("Initialized with unsupported input type"))}}, +btE(a){var s,r,q,p,o,n,m,l,k,j="inputType",i="autofill",h=A.a1l(a,"viewId") +if(h==null)h=0 +s=J.a0(a) +r=t.a +q=A.bS(J.i(r.a(s.h(a,j)),"name")) +p=A.pe(J.i(r.a(s.h(a,j)),"decimal")) +o=A.pe(J.i(r.a(s.h(a,j)),"isMultiline")) +q=A.bsU(q,p===!0,o===!0) +p=A.dk(s.h(a,"inputAction")) +if(p==null)p="TextInputAction.done" +o=A.pe(s.h(a,"obscureText")) +n=A.pe(s.h(a,"readOnly")) +m=A.pe(s.h(a,"autocorrect")) +l=A.bOd(A.bS(s.h(a,"textCapitalization"))) +r=s.N(a,i)?A.bkS(r.a(s.h(a,i)),B.P5):null +k=A.a1l(a,"viewId") +if(k==null)k=0 +k=A.bIg(k,t.nA.a(s.h(a,i)),t.kc.a(s.h(a,"fields"))) +s=A.pe(s.h(a,"enableDeltaModel")) +return new A.aCL(h,q,p,n===!0,o===!0,m!==!1,s===!0,r,k,l)}, +bJ5(a){return new A.a0F(a,A.a([],t.Up),$,$,$,null)}, +bs_(a,b,c){A.bZ(B.F,new A.auk(a,b,c))}, +bXu(){$.aox.az(0,new A.bk_())}, +bUZ(){var s,r,q +for(s=$.aox.gaJ(0),r=A.y(s),s=new A.bD(J.ay(s.a),s.b,r.i("bD<1,2>")),r=r.y[1];s.u();){q=s.a +if(q==null)q=r.a(q) +q.remove()}$.aox.V(0)}, +bI4(a){var s=J.a0(a),r=A.cN(J.eX(t.j.a(s.h(a,"transform")),new A.awQ(),t.z),!0,t.i) +return new A.awP(A.iD(s.h(a,"width")),A.iD(s.h(a,"height")),new Float32Array(A.e7(r)))}, +bpJ(a,b){var s=a.style +A.N(s,"transform-origin","0 0 0") +A.N(s,"transform",A.mr(b))}, +mr(a){var s=A.bk9(a) +if(s===B.Pq)return"matrix("+A.c(a[0])+","+A.c(a[1])+","+A.c(a[4])+","+A.c(a[5])+","+A.c(a[12])+","+A.c(a[13])+")" +else if(s===B.nI)return A.bVP(a) +else return"none"}, +bk9(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.nI +if(a[0]===1&&a[1]===0&&a[4]===0&&a[5]===1&&a[12]===0&&a[13]===0)return B.Pp +else return B.Pq}, +bVP(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.c(a[12])+"px, "+A.c(a[13])+"px, 0px)" +else return"matrix3d("+A.c(s)+","+A.c(a[1])+","+A.c(a[2])+","+A.c(a[3])+","+A.c(a[4])+","+A.c(a[5])+","+A.c(a[6])+","+A.c(a[7])+","+A.c(a[8])+","+A.c(a[9])+","+A.c(a[10])+","+A.c(a[11])+","+A.c(a[12])+","+A.c(a[13])+","+A.c(a[14])+","+A.c(a[15])+")"}, +bkb(a,b){var s=$.bEb() +s[0]=b.a +s[1]=b.b +s[2]=b.c +s[3]=b.d +A.bka(a,s) +return new A.I(s[0],s[1],s[2],s[3])}, +bka(a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=$.bqp() +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=$.bEa().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}, +bAG(a,b){return a.a<=b.a&&a.b<=b.b&&a.c>=b.c&&a.d>=b.d}, +eM(a){var s,r +if(a===4278190080)return"#000000" +if((a&4278190080)>>>0===4278190080){s=B.e.hY(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.e.j(a>>>16&255)+","+B.e.j(a>>>8&255)+","+B.e.j(a&255)+","+B.d.j((a>>>24&255)/255)+")" +return r.charCodeAt(0)==0?r:r}}, +bV1(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.d.aF(d/255,2)+")"}, +byG(){if($.bH().gf9()===B.bM){var s=$.bH().gJi() +s=B.c.p(s,"OS 15_")}else s=!1 +if(s)return"BlinkMacSystemFont" +if($.bH().gf9()===B.bM||$.bH().gf9()===B.dr)return"-apple-system, BlinkMacSystemFont" +return"Arial"}, +biv(a){if(B.am3.p(0,a))return a +if($.bH().gf9()===B.bM||$.bH().gf9()===B.dr)if(a===".SF Pro Text"||a===".SF Pro Display"||a===".SF UI Text"||a===".SF UI Display")return A.byG() +return'"'+A.c(a)+'", '+A.byG()+", sans-serif"}, +bUF(a){if($.bH().ge4()===B.aL)A.N(a.style,"z-index","0")}, +vR(a,b,c){if(ac)return c +else return a}, +Vy(a,b){var s +if(a==null)return b==null +if(b==null||a.length!==b.length)return!1 +for(s=0;s")))}else{s=new A.a0t(new A.cd(null,null,t.Tv)) +r=self.window.visualViewport +if(r==null)r=self.window +s.b=A.e2(r,"resize",s.gaGv()) +return s}}, +bsS(a){var s,r,q,p="0",o="none" +if(a!=null){A.bHP(a) +s=A.b8("custom-element") +if(s==null)s=t.K.a(s) +a.setAttribute("flt-embedding",s) +return new A.atn(a)}else{s=self.document.body +s.toString +r=new A.aAd(s) +q=A.b8("full-page") +if(q==null)q=t.K.a(q) +s.setAttribute("flt-embedding",q) +r.asr() +A.fy(s,"position","fixed") +A.fy(s,"top",p) +A.fy(s,"right",p) +A.fy(s,"bottom",p) +A.fy(s,"left",p) +A.fy(s,"overflow","hidden") +A.fy(s,"padding",p) +A.fy(s,"margin",p) +A.fy(s,"user-select",o) +A.fy(s,"-webkit-user-select",o) +A.fy(s,"touch-action",o) +return r}}, +bw5(a,b,c,d){var s=A.cm(self.document,"style") +if(d!=null)s.nonce=d +s.id=c +b.appendChild(s) +A.bUD(s,a,"normal normal 14px sans-serif")}, +bUD(a,b,c){var s,r,q +a.append(self.document.createTextNode(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;}"+b+":focus { outline: none;}")) +if($.bH().ge4()===B.aL)a.append(self.document.createTextNode(b+" * { -webkit-tap-highlight-color: transparent;}"+b+" flt-semantics input[type=range]::-webkit-slider-thumb { -webkit-appearance: none;}")) +if($.bH().ge4()===B.dG)a.append(self.document.createTextNode(b+" flt-paragraph,"+b+" flt-span { line-height: 100%;}")) +if($.bH().ge4()===B.fU||$.bH().ge4()===B.aL)a.append(self.document.createTextNode(b+" .transparentTextEditing:-webkit-autofill,"+b+" .transparentTextEditing:-webkit-autofill:hover,"+b+" .transparentTextEditing:-webkit-autofill:focus,"+b+" .transparentTextEditing:-webkit-autofill:active { opacity: 0 !important;}")) +r=$.bH().gJi() +if(B.c.p(r,"Edg/"))try{a.append(self.document.createTextNode(b+" input::-ms-reveal { display: none;}"))}catch(q){r=A.v(q) +if(t.B.b(r)){s=r +self.window.console.warn(J.p(s))}else throw q}}, +bwY(a,b){var s,r,q,p,o +if(a==null){s=b.a +r=b.b +return new A.El(s,s,r,r)}s=a.minWidth +r=b.a +if(s==null)s=r +q=a.minHeight +p=b.b +if(q==null)q=p +o=a.maxWidth +r=o==null?r:o +o=a.maxHeight +return new A.El(s,r,q,o==null?p:o)}, +W8:function W8(a){var _=this +_.a=a +_.d=_.c=_.b=null}, +apB:function apB(a,b){this.a=a +this.b=b}, +apF:function apF(a){this.a=a}, +apG:function apG(a){this.a=a}, +apC:function apC(a){this.a=a}, +apD:function apD(a){this.a=a}, +apE:function apE(a){this.a=a}, +arW:function arW(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}, +asQ:function asQ(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}, +ajT:function ajT(){}, +arT:function arT(){}, +HD:function HD(a,b){this.a=a +this.b=b}, +asm:function asm(a,b){this.a=a +this.b=b}, +asn:function asn(a,b){this.a=a +this.b=b}, +ash:function ash(a){this.a=a}, +asi:function asi(a,b){this.a=a +this.b=b}, +asg:function asg(a){this.a=a}, +ask:function ask(a){this.a=a}, +asl:function asl(a){this.a=a}, +asj:function asj(a){this.a=a}, +ase:function ase(){}, +asf:function asf(){}, +aym:function aym(){}, +ayn:function ayn(){}, +Xy:function Xy(a,b){this.a=a +this.b=b}, +B7:function B7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +azy:function azy(){this.b=null}, +a_P:function a_P(a){this.b=a +this.d=null}, +aQa:function aQa(){}, +awa:function awa(a){this.a=a}, +awf:function awf(){}, +a0X:function a0X(a,b){this.a=a +this.b=b}, +aBQ:function aBQ(a){this.a=a}, +a0W:function a0W(a,b){this.a=a +this.b=b}, +a0V:function a0V(a,b){this.a=a +this.b=b}, +a_y:function a_y(a,b,c){this.a=a +this.b=b +this.c=c}, +IK:function IK(a,b){this.a=a +this.b=b}, +biB:function biB(a){this.a=a}, +aeO:function aeO(a,b){this.a=a +this.b=-1 +this.$ti=b}, +zh:function zh(a,b){this.a=a +this.$ti=b}, +aeT:function aeT(a,b){this.a=a +this.b=-1 +this.$ti=b}, +QQ:function QQ(a,b){this.a=a +this.$ti=b}, +a_v:function a_v(a,b){this.a=a +this.b=$ +this.$ti=b}, +axP:function axP(){}, +a7B:function a7B(a,b){this.a=a +this.b=b}, +yo:function yo(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ajS:function ajS(a,b){this.a=a +this.b=b}, +aPJ:function aPJ(){}, +Bp:function Bp(a,b){this.a=a +this.b=b}, +wX:function wX(a,b){this.a=a +this.b=b}, +JC:function JC(a){this.a=a}, +biU:function biU(a){this.a=a}, +biV:function biV(a){this.a=a}, +biW:function biW(){}, +biT:function biT(){}, +jm:function jm(){}, +a0n:function a0n(){}, +a0p:function a0p(){}, +WB:function WB(){}, +jn:function jn(a){this.a=a}, +XH:function XH(a){this.b=this.a=null +this.$ti=a}, +EG:function EG(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aAb:function aAb(a,b){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=null}, +M5:function M5(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}, +ps:function ps(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 +_.at=_.as=!1 +_.ay=h +_.ch=i}, +ed:function ed(a){this.b=a}, +aT6:function aT6(a){this.a=a}, +QO:function QO(){}, +M7:function M7(a,b,c,d,e,f){var _=this +_.CW=a +_.cx=b +_.kN$=c +_.x=d +_.a=e +_.b=-1 +_.c=f +_.w=_.r=_.f=_.e=_.d=null}, +a5X:function a5X(a,b,c,d,e,f){var _=this +_.CW=a +_.cx=b +_.kN$=c +_.x=d +_.a=e +_.b=-1 +_.c=f +_.w=_.r=_.f=_.e=_.d=null}, +M6:function M6(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}, +M8:function M8(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}, +aTf:function aTf(a,b,c){this.a=a +this.b=b +this.c=c}, +aTe:function aTe(a,b){this.a=a +this.b=b}, +aw5:function aw5(a,b,c,d){var _=this +_.a=a +_.adi$=b +_.Do$=c +_.pD$=d}, +a0T:function a0T(a,b){this.a=a +this.b=b}, +a0S:function a0S(a,b){this.a=a +this.b=b}, +JR:function JR(a,b,c){var _=this +_.a=a +_.b=!1 +_.d=b +_.e=c}, +M9:function M9(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}, +Ma:function Ma(a,b,c,d,e){var _=this +_.CW=a +_.cx=b +_.cy=null +_.x=c +_.a=d +_.b=-1 +_.c=e +_.w=_.r=_.f=_.e=_.d=null}, +Mb:function Mb(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}, +DO:function DO(a){this.a=a +this.e=!1}, +a91:function a91(){var _=this +_.e=_.d=_.c=_.b=_.a=null +_.f=!0 +_.r=4278190080 +_.z=_.y=_.x=_.w=null}, +jZ:function jZ(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aNi:function aNi(){var _=this +_.d=_.c=_.b=_.a=0}, +asz:function asz(){var _=this +_.d=_.c=_.b=_.a=0}, +adz:function adz(){this.b=this.a=null}, +at_:function at_(){var _=this +_.d=_.c=_.b=_.a=0}, +uT:function uT(a,b){var _=this +_.a=a +_.b=b +_.c=0 +_.e=_.d=-1}, +aMm:function aMm(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.e=0 +_.f=-1 +_.Q=_.z=_.y=_.x=_.w=_.r=0}, +CM:function CM(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}, +uk:function uk(a){var _=this +_.a=a +_.b=-1 +_.e=_.d=_.c=0}, +qG:function qG(){this.b=this.a=null}, +aRN:function aRN(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aMo:function aMo(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=0 +_.f=d}, +a_S:function a_S(){this.a=null +this.b=$ +this.c=!1}, +a_R:function a_R(a){this.b=a}, +ue:function ue(a,b){this.a=a +this.b=b}, +a6_:function a6_(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=_.fy=null +_.a=f +_.b=-1 +_.c=g +_.w=_.r=_.f=_.e=_.d=null}, +aMx:function aMx(a){this.a=a}, +aNP:function aNP(a,b,c){var _=this +_.a=a +_.b=null +_.c=b +_.d=c +_.f=_.e=!1 +_.r=1}, +eU:function eU(){}, +IQ:function IQ(){}, +LY:function LY(){}, +a5I:function a5I(){}, +a5M:function a5M(a,b){this.a=a +this.b=b}, +a5K:function a5K(a,b){this.a=a +this.b=b}, +a5J:function a5J(a){this.a=a}, +a5L:function a5L(a){this.a=a}, +a5v:function a5v(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5u:function a5u(a){var _=this +_.f=a +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5t:function a5t(a){var _=this +_.f=a +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5z:function a5z(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5B:function a5B(a){var _=this +_.f=a +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5H:function a5H(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5F:function a5F(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5E:function a5E(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5x:function a5x(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.x=null +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5A:function a5A(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5w:function a5w(a,b,c){var _=this +_.f=a +_.r=b +_.w=c +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5D:function a5D(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5G:function a5G(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5y:function a5y(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +a5C:function a5C(a,b){var _=this +_.f=a +_.r=b +_.a=!1 +_.c=_.b=-1/0 +_.e=_.d=1/0}, +bax:function bax(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}, +aOU:function aOU(){var _=this +_.d=_.c=_.b=_.a=!1}, +a92:function a92(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +zG:function zG(){}, +a0R:function a0R(){this.a=$}, +aBL:function aBL(){}, +aPd:function aPd(a){this.a=a +this.b=null}, +DP:function DP(a,b){this.a=a +this.b=b}, +Mc:function Mc(a,b,c){var _=this +_.CW=null +_.x=a +_.a=b +_.b=-1 +_.c=c +_.w=_.r=_.f=_.e=_.d=null}, +aT7:function aT7(a){this.a=a}, +aT9:function aT9(a){this.a=a}, +aTa:function aTa(a,b){this.a=a +this.b=b}, +wF:function wF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=!1}, +aKz:function aKz(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aKA:function aKA(){}, +aRt:function aRt(){this.a=null}, +B9:function B9(){}, +a0H:function a0H(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f}, +aAT:function aAT(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +Bv:function Bv(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f}, +aAU:function aAU(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +a0G:function a0G(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}, +oc:function oc(){}, +Q6:function Q6(a,b,c){this.a=a +this.b=b +this.c=c}, +S8:function S8(a,b){this.a=a +this.b=b}, +a_Q:function a_Q(){}, +Cc:function Cc(a,b){this.b=a +this.c=b +this.a=null}, +C8:function C8(a){this.b=a +this.a=null}, +a88:function a88(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}, +oQ:function oQ(a,b){this.b=a +this.c=b +this.d=1}, +yE:function yE(a,b,c){this.a=a +this.b=b +this.c=c}, +biy:function biy(){}, +xY:function xY(a,b){this.a=a +this.b=b}, +fp:function fp(){}, +a5Z:function a5Z(){}, +h_:function h_(){}, +aMw:function aMw(){}, +vB:function vB(a,b,c){this.a=a +this.b=b +this.c=c}, +aN1:function aN1(){this.a=0}, +Md:function Md(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}, +a0Q:function a0Q(){}, +aBJ:function aBJ(a,b,c){this.a=a +this.b=b +this.c=c}, +aBK:function aBK(a,b){this.a=a +this.b=b}, +aBH:function aBH(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aBI:function aBI(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +a0P:function a0P(){}, +NV:function NV(a){this.a=a}, +ws:function ws(a,b){this.a=a +this.b=b}, +bjq:function bjq(){}, +bjr:function bjr(a){this.a=a}, +bjp:function bjp(a){this.a=a}, +bjs:function bjs(){}, +azx:function azx(a){this.a=a}, +azz:function azz(a){this.a=a}, +azA:function azA(a){this.a=a}, +azw:function azw(a){this.a=a}, +bj0:function bj0(a,b){this.a=a +this.b=b}, +biZ:function biZ(a,b){this.a=a +this.b=b}, +bj_:function bj_(a){this.a=a}, +bhU:function bhU(){}, +bhV:function bhV(){}, +bhW:function bhW(){}, +bhX:function bhX(){}, +bhY:function bhY(){}, +bhZ:function bhZ(){}, +bi_:function bi_(){}, +bi0:function bi0(){}, +bhj:function bhj(a,b,c){this.a=a +this.b=b +this.c=c}, +a1o:function a1o(a){this.a=$ +this.b=a}, +aD8:function aD8(a){this.a=a}, +aD9:function aD9(a){this.a=a}, +aDa:function aDa(a){this.a=a}, +aDb:function aDb(a){this.a=a}, +oi:function oi(a){this.a=a}, +aDc:function aDc(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=null +_.e=!1 +_.f=d +_.r=e}, +aDi:function aDi(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aDj:function aDj(a){this.a=a}, +aDk:function aDk(a,b,c){this.a=a +this.b=b +this.c=c}, +aDl:function aDl(a,b){this.a=a +this.b=b}, +aDe:function aDe(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aDf:function aDf(a,b,c){this.a=a +this.b=b +this.c=c}, +aDg:function aDg(a,b){this.a=a +this.b=b}, +aDh:function aDh(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aDd:function aDd(a,b,c){this.a=a +this.b=b +this.c=c}, +aDm:function aDm(a,b){this.a=a +this.b=b}, +asO:function asO(a){this.a=a +this.b=!0}, +aIU:function aIU(){}, +bjR:function bjR(){}, +aqO:function aqO(){}, +Ls:function Ls(a){var _=this +_.d=a +_.a=_.e=$ +_.c=_.b=!1}, +aJT:function aJT(){}, +NU:function NU(a,b){var _=this +_.d=a +_.e=b +_.f=null +_.a=$ +_.c=_.b=!1}, +aRK:function aRK(){}, +aRL:function aRL(){}, +a0N:function a0N(a,b){this.a=a +this.b=b +this.c=$}, +a_T:function a_T(a,b,c,d,e){var _=this +_.a=$ +_.b=a +_.c=b +_.f=c +_.w=_.r=$ +_.y=_.x=null +_.z=$ +_.p1=_.ok=_.k4=_.k3=_.k2=_.k1=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=_.ax=_.at=_.as=_.Q=null +_.p2=d +_.x1=_.to=_.ry=_.R8=_.p4=_.p3=null +_.x2=e +_.y2=null}, +ay0:function ay0(a){this.a=a}, +ay1:function ay1(a,b,c){this.a=a +this.b=b +this.c=c}, +ay_:function ay_(a,b){this.a=a +this.b=b}, +axW:function axW(a,b){this.a=a +this.b=b}, +axX:function axX(a,b){this.a=a +this.b=b}, +axY:function axY(a,b){this.a=a +this.b=b}, +axV:function axV(a){this.a=a}, +axU:function axU(a){this.a=a}, +axZ:function axZ(){}, +axT:function axT(a){this.a=a}, +ay2:function ay2(a,b){this.a=a +this.b=b}, +bju:function bju(a,b,c){this.a=a +this.b=b +this.c=c}, +aVC:function aVC(){}, +a65:function a65(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}, +apK:function apK(){}, +adi:function adi(a,b,c,d){var _=this +_.c=a +_.d=b +_.r=_.f=_.e=$ +_.a=c +_.b=d}, +aZf:function aZf(a){this.a=a}, +aZe:function aZe(a){this.a=a}, +aZg:function aZg(a){this.a=a}, +aa8:function aa8(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.e=null +_.x=_.w=_.r=_.f=$}, +aVE:function aVE(a){this.a=a}, +aVF:function aVF(a){this.a=a}, +aVG:function aVG(a){this.a=a}, +aVH:function aVH(a){this.a=a}, +aMJ:function aMJ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aMK:function aMK(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aML:function aML(a){this.b=a}, +aPH:function aPH(){this.a=null}, +aPI:function aPI(){}, +aMP:function aMP(a,b,c){var _=this +_.a=null +_.b=a +_.d=b +_.e=c +_.f=$}, +Xm:function Xm(){this.b=this.a=null}, +aMX:function aMX(){}, +a1O:function a1O(a,b,c){this.a=a +this.b=b +this.c=c}, +aZ1:function aZ1(){}, +aZ2:function aZ2(a){this.a=a}, +bgT:function bgT(){}, +bgU:function bgU(a){this.a=a}, +p7:function p7(a,b){this.a=a +this.b=b}, +Ez:function Ez(){this.a=0}, +baE:function baE(a,b,c){var _=this +_.f=a +_.a=b +_.b=c +_.c=null +_.e=_.d=!1}, +baG:function baG(){}, +baF:function baF(a,b,c){this.a=a +this.b=b +this.c=c}, +baI:function baI(){}, +baJ:function baJ(a){this.a=a}, +baH:function baH(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}, +FA:function FA(a,b){this.a=null +this.b=a +this.c=b}, +b56:function b56(a){this.a=a +this.b=0}, +b57:function b57(a,b){this.a=a +this.b=b}, +aMQ:function aMQ(){}, +bnp:function bnp(){}, +aNm:function aNm(a,b){this.a=a +this.b=0 +this.c=b}, +aNn:function aNn(a){this.a=a}, +aNp:function aNp(a,b,c){this.a=a +this.b=b +this.c=c}, +aNq:function aNq(a){this.a=a}, +a0A:function a0A(a){this.a=a}, +a0z:function a0z(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}, +aKJ:function aKJ(a,b){var _=this +_.b=_.a=null +_.c=a +_.d=b}, +H2:function H2(a,b){this.a=a +this.b=b}, +ape:function ape(a,b){this.a=a +this.b=b +this.c=!1}, +apf:function apf(a){this.a=a}, +Qj:function Qj(a,b){this.a=a +this.b=b}, +as5:function as5(a,b,c){var _=this +_.w=a +_.a=$ +_.b=b +_.c=c +_.f=_.e=_.d=null}, +a_i:function a_i(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.f=_.e=_.d=null}, +avo:function avo(a,b){this.a=a +this.b=b}, +avn:function avn(){}, +Dd:function Dd(a,b){var _=this +_.e=null +_.b=a +_.c=b +_.d=!1}, +aPu:function aPu(a){this.a=a}, +a0l:function a0l(a,b,c){var _=this +_.e=a +_.b=b +_.c=c +_.d=!1}, +W3:function W3(a){this.a=a +this.c=this.b=null}, +aph:function aph(a){this.a=a}, +api:function api(a){this.a=a}, +apg:function apg(a,b){this.a=a +this.b=b}, +aB9:function aB9(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.f=_.e=_.d=null}, +aCv:function aCv(a,b){var _=this +_.w=null +_.a=$ +_.b=a +_.c=b +_.f=_.e=_.d=null}, +aCE:function aCE(a,b,c,d){var _=this +_.w=a +_.x=b +_.y=1 +_.z=$ +_.Q=!1 +_.a=$ +_.b=c +_.c=d +_.f=_.e=_.d=null}, +aCF:function aCF(a,b){this.a=a +this.b=b}, +aCG:function aCG(a){this.a=a}, +Kl:function Kl(a,b){this.a=a +this.b=b}, +aDq:function aDq(){}, +apW:function apW(a,b){this.a=a +this.b=b}, +awh:function awh(a,b){this.c=null +this.a=a +this.b=b}, +NY:function NY(a,b,c){var _=this +_.c=a +_.e=_.d=null +_.a=b +_.b=c}, +a1q:function a1q(a,b,c){var _=this +_.e=a +_.f=null +_.b=b +_.c=c +_.d=!1}, +bhq:function bhq(){}, +aEW:function aEW(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.f=_.e=_.d=null}, +xu:function xu(a,b){var _=this +_.e=null +_.b=a +_.c=b +_.d=!1}, +aMM:function aMM(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.f=_.e=_.d=null}, +aQo:function aQo(a,b,c){var _=this +_.w=null +_.x=a +_.y=null +_.z=0 +_.a=$ +_.b=b +_.c=c +_.f=_.e=_.d=null}, +aQv:function aQv(a){this.a=a}, +aQw:function aQw(a){this.a=a}, +aQx:function aQx(a){this.a=a}, +J5:function J5(a){this.a=a}, +a86:function a86(a){this.a=a}, +a84:function a84(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 +_.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 +_.ok=b0 +_.p1=b1}, +l5:function l5(a,b){this.a=a +this.b=b}, +a6h:function a6h(){}, +aAq:function aAq(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.f=_.e=_.d=null}, +qN:function qN(){}, +yB:function yB(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=0 +_.k1=null +_.k2=a +_.k3=b +_.k4=-1 +_.p3=_.p2=_.p1=_.ok=null +_.R8=_.p4=0}, +apj:function apj(a,b){this.a=a +this.b=b}, +x_:function x_(a,b){this.a=a +this.b=b}, +ay3:function ay3(a,b,c,d,e){var _=this +_.a=a +_.b=!1 +_.c=b +_.d=c +_.f=d +_.r=null +_.w=e}, +ay8:function ay8(){}, +ay7:function ay7(a){this.a=a}, +ay4:function ay4(a,b,c,d,e){var _=this +_.a=a +_.b=null +_.d=b +_.e=c +_.f=d +_.r=e +_.w=!1}, +ay6:function ay6(a){this.a=a}, +ay5:function ay5(a,b){this.a=a +this.b=b}, +J3:function J3(a,b){this.a=a +this.b=b}, +aR1:function aR1(a){this.a=a}, +aQY:function aQY(){}, +aup:function aup(){this.a=null}, +auq:function auq(a){this.a=a}, +aIK:function aIK(){var _=this +_.b=_.a=null +_.c=0 +_.d=!1}, +aIM:function aIM(a){this.a=a}, +aIL:function aIL(a){this.a=a}, +arc:function arc(a,b){var _=this +_.a=$ +_.b=a +_.c=b +_.f=_.e=_.d=null}, +a9f:function a9f(a,b){var _=this +_.e=null +_.f=!1 +_.b=a +_.c=b +_.d=!1}, +aTP:function aTP(a,b){this.a=a +this.b=b}, +aRb:function aRb(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}, +aTX:function aTX(a,b){var _=this +_.x=_.w=null +_.a=$ +_.b=a +_.c=b +_.f=_.e=_.d=null}, +aTY:function aTY(a){this.a=a}, +aTZ:function aTZ(a){this.a=a}, +aU_:function aU_(a){this.a=a}, +aU0:function aU0(a,b){this.a=a +this.b=b}, +aU1:function aU1(a){this.a=a}, +aU2:function aU2(a){this.a=a}, +aU3:function aU3(a){this.a=a}, +pd:function pd(){}, +ags:function ags(){}, +a9O:function a9O(a,b){this.a=a +this.b=b}, +lT:function lT(a,b){this.a=a +this.b=b}, +aCV:function aCV(){}, +aCX:function aCX(){}, +aSl:function aSl(){}, +aSo:function aSo(a,b){this.a=a +this.b=b}, +aSp:function aSp(){}, +aX6:function aX6(a,b,c){this.b=a +this.c=b +this.d=c}, +a6z:function a6z(a){this.a=a +this.b=0}, +aTb:function aTb(a,b){this.a=a +this.b=b}, +Xe:function Xe(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=!1 +_.f=null +_.w=_.r=$ +_.x=null}, +arV:function arV(){}, +xW:function xW(a,b){this.a=a +this.c=b}, +CO:function CO(a,b,c,d,e,f){var _=this +_.f=a +_.w=b +_.a=c +_.b=d +_.c=e +_.d=f}, +DM:function DM(){}, +Xk:function Xk(a,b){this.b=a +this.c=b +this.a=null}, +a7q:function a7q(a){this.b=a +this.a=null}, +arU:function arU(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=0 +_.r=f +_.w=!0}, +aBF:function aBF(){}, +aBG:function aBG(a,b,c){this.a=a +this.b=b +this.c=c}, +aU5:function aU5(){}, +aU4:function aU4(){}, +aEQ:function aEQ(a,b){this.b=a +this.a=b}, +b_c:function b_c(){}, +lR:function lR(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.L5$=a +_.L6$=b +_.n3$=c +_.fi$=d +_.nV$=e +_.ro$=f +_.rp$=g +_.rq$=h +_.fq$=i +_.fs$=j +_.c=k +_.d=l +_.e=m +_.f=n +_.r=o +_.w=p +_.a=q +_.b=r}, +b4I:function b4I(){}, +b4J:function b4J(){}, +b4H:function b4H(){}, +J2:function J2(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.L5$=a +_.L6$=b +_.n3$=c +_.fi$=d +_.nV$=e +_.ro$=f +_.rp$=g +_.rq$=h +_.fq$=i +_.fs$=j +_.c=k +_.d=l +_.e=m +_.f=n +_.r=o +_.w=p +_.a=q +_.b=r}, +DZ:function DZ(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=$}, +aES:function aES(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}, +a8R:function a8R(a){this.a=a +this.c=this.b=null}, +tT:function tT(a,b){this.a=a +this.b=b}, +ayp:function ayp(a){this.a=a}, +aVr:function aVr(a,b){this.b=a +this.a=b}, +tS:function tS(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=e}, +bhr:function bhr(a,b,c){this.a=a +this.b=b +this.c=c}, +a7w:function a7w(a){this.a=a}, +aUu:function aUu(a){this.a=a}, +pQ:function pQ(a,b,c,d,e,f,g,h,i){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i}, +oE:function oE(a,b,c,d,e,f,g,h,i,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=$}, +J6:function J6(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}, +J8:function J8(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=$}, +J7:function J7(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}, +aMi:function aMi(){}, +OR:function OR(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=$}, +aTT:function aTT(a){this.a=a +this.b=null}, +a9s:function a9s(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=$ +_.e=c +_.r=_.f=$}, +Br:function Br(a,b){this.a=a +this.b=b}, +w3:function w3(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=d}, +Qm:function Qm(a,b){this.a=a +this.b=b}, +ex:function ex(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +rb:function rb(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +afy:function afy(a,b,c){this.c=a +this.a=b +this.b=c}, +aqK:function aqK(a){this.a=a}, +XA:function XA(){}, +axR:function axR(){}, +aKw:function aKw(){}, +ay9:function ay9(){}, +awi:function awi(){}, +aAR:function aAR(){}, +aKu:function aKu(){}, +aN2:function aN2(){}, +aQA:function aQA(){}, +aRd:function aRd(){}, +axS:function axS(){}, +aKy:function aKy(){}, +aK9:function aK9(){}, +aUl:function aUl(){}, +aKH:function aKH(){}, +aub:function aub(){}, +aMz:function aMz(){}, +axH:function axH(){}, +aVm:function aVm(){}, +Lt:function Lt(){}, +DW:function DW(a,b){this.a=a +this.b=b}, +ON:function ON(a){this.a=a}, +axM:function axM(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +axN:function axN(a,b){this.a=a +this.b=b}, +axO:function axO(a,b,c){this.a=a +this.b=b +this.c=c}, +WJ:function WJ(a,b,c,d){var _=this +_.a=a +_.b=b +_.d=c +_.e=d}, +DY:function DY(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}, +B3:function B3(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aCL:function aCL(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}, +a0F:function a0F(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}, +Di:function Di(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}, +Ii:function Ii(){}, +aul:function aul(){}, +aum:function aum(){}, +aun:function aun(){}, +auk:function auk(a,b,c){this.a=a +this.b=b +this.c=c}, +aBZ:function aBZ(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}, +aC1:function aC1(a){this.a=a}, +aC_:function aC_(a){this.a=a}, +aC0:function aC0(a){this.a=a}, +apw:function apw(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}, +azh:function azh(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}, +azi:function azi(a){this.a=a}, +aU8:function aU8(){}, +aUf:function aUf(a,b){this.a=a +this.b=b}, +aUm:function aUm(){}, +aUh:function aUh(a){this.a=a}, +aUk:function aUk(){}, +aUg:function aUg(a){this.a=a}, +aUj:function aUj(a){this.a=a}, +aU6:function aU6(){}, +aUc:function aUc(){}, +aUi:function aUi(){}, +aUe:function aUe(){}, +aUd:function aUd(){}, +aUb:function aUb(a){this.a=a}, +bk_:function bk_(){}, +aTU:function aTU(a){this.a=a}, +aTV:function aTV(a){this.a=a}, +aBS:function aBS(){var _=this +_.a=$ +_.b=null +_.c=!1 +_.d=null +_.f=$}, +aBU:function aBU(a){this.a=a}, +aBT:function aBT(a){this.a=a}, +axv:function axv(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +awP:function awP(a,b,c){this.a=a +this.b=b +this.c=c}, +awQ:function awQ(){}, +Ph:function Ph(a,b){this.a=a +this.b=b}, +dc:function dc(a){this.a=a}, +ays:function ays(a){this.a=a +this.c=this.b=0}, +atk:function atk(a,b){var _=this +_.b=a +_.d=_.c=$ +_.e=b}, +atl:function atl(a){this.a=a}, +atm:function atm(a){this.a=a}, +a_l:function a_l(){}, +a0t:function a0t(a){this.b=$ +this.c=a}, +a_q:function a_q(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=$}, +awe:function awe(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=null}, +atn:function atn(a){this.a=a +this.b=$}, +aAd:function aAd(a){this.a=a}, +a0i:function a0i(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aAQ:function aAQ(a,b){this.a=a +this.b=b}, +bhQ:function bhQ(){}, +pP:function pP(){}, +afh:function afh(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=$ +_.f=!1 +_.z=_.y=_.x=_.w=_.r=$ +_.Q=d +_.as=$ +_.at=null +_.ay=e +_.ch=f}, +B8:function B8(a,b,c,d,e,f,g){var _=this +_.CW=null +_.cx=a +_.a=b +_.b=c +_.c=d +_.d=$ +_.f=!1 +_.z=_.y=_.x=_.w=_.r=$ +_.Q=e +_.as=$ +_.at=null +_.ay=f +_.ch=g}, +axQ:function axQ(a,b){this.a=a +this.b=b}, +aaa:function aaa(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +El:function El(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aVD:function aVD(){}, +aet:function aet(){}, +aeN:function aeN(){}, +agC:function agC(){}, +agD:function agD(){}, +agE:function agE(){}, +ahT:function ahT(){}, +ahU:function ahU(){}, +anm:function anm(){}, +bmA:function bmA(){}, +bPt(a){var s,r=new Uint8Array(a) +for(s=0;s31&&q<128&&!B.m1[q]))throw A.d(A.bL("Invalid HTTP header field name: "+B.a7.lw(a),a,r))}return a.toLowerCase()}, +b7a(a){var s,r,q +if(typeof a!="string")return a +for(s=a.length,r=0;r31&&q<128||q===9))throw A.d(A.bL("Invalid HTTP header field value: "+B.a7.lw(a),a,r))}return a}, +bxm(){var s=new A.afU() +s.a0g("",B.J0) +return s}, +bPV(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.aoJ('"(),/:;<=>?@[]{}',q,0)}if(q)return!1}return!0}, +bPp(a){var s,r,q=new A.adC() +q.a0g("",B.J0) +q.Ps(a,";",null,!1) +s=q.a +r=B.c.dV(s,"/") +if(r===-1||r===s.length-1)q.d=B.c.cw(s).toLowerCase() +else{q.d=B.c.cw(B.c.R(s,0,r)).toLowerCase() +q.e=B.c.cw(B.c.bE(s,r+1)).toLowerCase()}return q}, +bxd(a){--a +a|=B.e.cA(a,1) +a|=a>>>2 +a|=a>>>4 +a|=a>>>8 +return((a|a>>>16)>>>0)+1}, +bQ0(a,b,c,d){var s=new A.ag2(c,b,A.bQ1(c,a.e),d,a) +s.ara(a,b,c,d) +return s}, +bQ1(a,b){if(b.mv(0,"content-encoding")==="gzip")return B.xE +else return B.a0X}, +bQ_(a,b,c,d,e,f,g){var s=A.a([],t.xn),r=$.ab,q=A.a([],t.vO) +s=a.CW=new A.jN(c,b,s,e,f,new A.aq(new A.a_(r,t.NO),t.ka),d,q,b,a,A.bxq("1.1",b.jw("https")?443:80,null),B.cu,g,a,new A.aq(new A.a_($.ab,t.U),t.h)) +s.ar9(a,b,c,d,e,f,g) +return s}, +bxp(a,b,c,d,e){var s=new A.vq(a,b,d,e,A.bQ4(!1),c) +s.ar8(a,b,c,d,e) +return s}, +bQ3(a,b,c){var s=!1 +if(c.jw(b.gev()))if(c.gkf(c)===b.gkf(b))s=c.gfz(c)===b.gfz(b)||B.c.bF(c.gfz(c),"."+b.gfz(b)) +if(s)return!0 +return!B.b.p(B.a6Z,a.toLowerCase())}, +bQ2(a,b){var s,r,q,p,o,n=new A.b72() +b=$.bD4() +s=b.a +r=J.a0(s) +q=r.h(s,"no_proxy") +if(q==null)q=r.h(s,"NO_PROXY") +p=new A.b70(a).$1(q) +if(p!=null)return p +if(a.jw("http")){o=r.h(s,"http_proxy") +p=n.$1(o==null?r.h(s,"HTTP_PROXY"):o) +if(p!=null)return p}else if(a.jw("https")){o=r.h(s,"https_proxy") +p=n.$1(o==null?r.h(s,"HTTPS_PROXY"):o) +if(p!=null)return p}return"DIRECT"}, +bPg(a){if(a.toLowerCase()==="basic")return B.v3 +if(a.toLowerCase()==="digest")return B.v4 +return B.TF}, +bQ4(a){var s=null,r=t.t +r=new A.RH(!1,A.a([],r),A.a([],r),A.a([],r),A.a([],r),A.i9(s,s,s,s,!0,t.Hs)) +r.ard(!1) +return r}, +bQ5(a){var s,r=a.length +while(!0){if(r>0){s=r-1 +s=J.e(a[s],32)||J.e(a[s],9)}else s=!1 +if(!s)break;--r}B.b.st(a,r)}, +bQ6(a){var s,r,q,p,o=A.a([],t.s) +for(s=a.length,r=0,q=0;q>>0 +if(q.charCodeAt(s)!==r)return!1}return!0}, +btv(){var s=$.ab.h(0,$.bDy()) +return s==null?null:s}, +bx4(a,b,c){return A.bRB(a,c,null,B.uP,b)}, +bx3(a,b){return A.byb(a,null,B.uP,!1,null)}, +ll(a){return new A.PC(a)}, +bRD(a,b,c,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=b==null,e=f?0:J.aM(b),d=e>65535 +if(d)s=14 +else s=e>125?8:6 +r=new Uint8Array(s) +q=a0?64:0 +r[0]=q|a&15|128 +p=2 +if(d){r[1]=127 +o=8}else if(e>125){r[1]=126 +o=2}else{p=1 +o=1}for(d=o-1,n=0;n0){for(i=0,n=3;n>=0;--n)i=(i<<8|l[n])>>>0 +h=A.buz(i,i,i,i) +g=B.n3.aaG(k.buffer,k.byteOffset,j) +for(d=g.a.length/4|0,n=0;n1011&&a<1015))s=a>=1015&&a<3000}else s=!1 +return s}, +b59:function b59(){}, +bcT:function bcT(a,b,c,d,e,f){var _=this +_.w=a +_.a=b +_.b=c +_.c=0 +_.d=d +_.e=e +_.f=f +_.r=!1}, +bhR:function bhR(){}, +a0U:function a0U(a,b){this.a=a +this.b=b}, +hg:function hg(a,b){this.a=a +this.b=b}, +My:function My(a,b){this.a=a +this.b=b}, +ag4:function ag4(a,b,c){var _=this +_.a=a +_.b=null +_.c=b +_.d=!0 +_.f=-1 +_.r=!0 +_.w=!1 +_.y=_.x=null +_.z=c}, +b79:function b79(a,b,c){this.a=a +this.b=b +this.c=c}, +b7b:function b7b(a,b){this.a=a +this.b=b}, +afU:function afU(){this.a="" +this.c=this.b=null}, +b5k:function b5k(a){this.a=a}, +b5c:function b5c(a,b){this.a=a +this.b=b}, +b5j:function b5j(a,b,c){this.a=a +this.b=b +this.c=c}, +b5i:function b5i(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +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}, +b5f:function b5f(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}, +b5g:function b5g(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b5h:function b5h(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +adC:function adC(){var _=this +_.a=_.e=_.d="" +_.c=_.b=null}, +bdf:function bdf(){}, +b08:function b08(a){this.a=0 +this.b=a}, +ln:function ln(a,b,c){var _=this +_.b=a +_.c=b +_.e=c +_.f=!1 +_.y=_.w=_.r=null +_.z=!1}, +b7c:function b7c(a){this.a=a}, +b7d:function b7d(){}, +ag5:function ag5(){}, +ag2:function ag2(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e +_.b=null}, +b6X:function b6X(a){this.a=a}, +b6Z:function b6Z(a,b){this.a=a +this.b=b}, +b6Y:function b6Y(a,b){this.a=a +this.b=b}, +b6U:function b6U(a){this.a=a}, +b6W:function b6W(a){this.a=a}, +b6V:function b6V(){}, +b6Q:function b6Q(a,b){this.a=a +this.b=b}, +b6S:function b6S(a,b){this.a=a +this.b=b}, +b6T:function b6T(a,b){this.a=a +this.b=b}, +b6R:function b6R(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +alF:function alF(){}, +bfZ:function bfZ(a){this.a=a}, +jS:function jS(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.r=_.f=_.e=!1 +_.$ti=c}, +be5:function be5(a){this.a=a}, +be6:function be6(a){this.a=a}, +ag6:function ag6(){}, +kn:function kn(){}, +jN:function jN(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.ok=a +_.p1=b +_.p2=c +_.p3=d +_.p4=e +_.R8=f +_.RG=g +_.rx=null +_.ry=!0 +_.to=5 +_.x1=h +_.CW=!1 +_.cy=i +_.db=j +_.dx=k +_.w=l +_.y=m +_.a=n +_.b=o +_.d=_.c=null +_.r=_.f=_.e=!1}, +b6N:function b6N(a){this.a=a}, +b6O:function b6O(){}, +b6P:function b6P(){}, +b6I:function b6I(a){this.a=a}, +b6J:function b6J(a){this.a=a}, +b6K:function b6K(a){this.a=a}, +b6L:function b6L(a){this.a=a}, +b6M:function b6M(a){this.a=a}, +b7e:function b7e(a,b){var _=this +_.a=a +_.b=b +_.d=!1 +_.e=null +_.f=0 +_.r=null +_.w=!1 +_.x=0 +_.y=null +_.z=0 +_.Q=!1 +_.ax=_.at=_.as=null +_.ay=0 +_.ch=!1 +_.CW=null}, +b7h:function b7h(a,b){this.a=a +this.b=b}, +b7f:function b7f(a){this.a=a}, +b7g:function b7g(a){this.a=a}, +b7i:function b7i(a,b){this.a=a +this.b=b}, +b7j:function b7j(a,b){this.a=a +this.b=b}, +b7k:function b7k(a,b){this.a=a +this.b=b}, +vq:function vq(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=null +_.r=f +_.w=!1 +_.x=null +_.y=!1 +_.as=_.Q=_.z=null}, +b6u:function b6u(a){this.a=a}, +b6p:function b6p(a){this.a=a}, +b6q:function b6q(a){this.a=a}, +b6r:function b6r(){}, +b6w:function b6w(a){this.a=a}, +b6v:function b6v(a){this.a=a}, +b6F:function b6F(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +b6B:function b6B(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6A:function b6A(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6C:function b6C(a){this.a=a}, +b6D:function b6D(){}, +b6E:function b6E(a,b){this.a=a +this.b=b}, +b6G:function b6G(a){this.a=a}, +b6z:function b6z(a){this.a=a}, +b6t:function b6t(a){this.a=a}, +b6s:function b6s(a){this.a=a}, +b6x:function b6x(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b6y:function b6y(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b6H:function b6H(a){this.a=a}, +ic:function ic(a,b){this.a=a +this.b=b}, +ED:function ED(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 +_.z=0}, +b_r:function b_r(){}, +b_s:function b_s(){}, +b_w:function b_w(a,b,c){this.a=a +this.b=b +this.c=c}, +b_x:function b_x(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +b_u:function b_u(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}, +b_t:function b_t(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +b_v:function b_v(a,b,c){this.a=a +this.b=b +this.c=c}, +b_y:function b_y(a){this.a=a}, +b6o:function b6o(a,b,c,d,e){var _=this +_.b=_.a=!1 +_.c=a +_.d=b +_.e=c +_.f=d +_.Q=null +_.ch=e}, +b76:function b76(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b78:function b78(a,b){this.a=a +this.b=b}, +b77:function b77(a){this.a=a}, +b75:function b75(a,b,c){this.a=a +this.b=b +this.c=c}, +b73:function b73(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b74:function b74(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +b7_:function b7_(a,b){this.a=a +this.b=b}, +b70:function b70(a){this.a=a}, +b71:function b71(){}, +b72:function b72(){}, +aiE:function aiE(a){this.a=a}, +FB:function FB(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +EL:function EL(a,b){this.a=a +this.b=b}, +rg:function rg(){}, +aj0:function aj0(a,b,c){this.a=a +this.b=b +this.c=c}, +ag3:function ag3(a,b){this.a=a +this.b=b}, +RH:function RH(a,b,c,d,e,f){var _=this +_.a=!1 +_.b=null +_.c=-1 +_.d=a +_.e=0 +_.f=null +_.x=_.w=_.r=0 +_.y=b +_.z=c +_.Q=d +_.as=e +_.ax=_.at=0 +_.ay=-1 +_.cy=_.cx=_.CW=!1 +_.db=-1 +_.fr=_.dy=_.dx=!1 +_.go=_.fy=_.fx=null +_.id=!0 +_.k1=!1 +_.k2=f +_.k3=null}, +b7l:function b7l(a){this.a=a}, +b7m:function b7m(a){this.a=a}, +b7n:function b7n(a){this.a=a}, +b7o:function b7o(a){this.a=a}, +b7p:function b7p(a,b){this.a=a +this.b=b}, +b7q:function b7q(a,b){this.a=a +this.b=b}, +b7r:function b7r(a,b){this.a=a +this.b=b}, +b7s:function b7s(a,b){this.a=a +this.b=b}, +asx:function asx(){}, +PC:function PC(a){this.a=a}, +b_h:function b_h(a,b){this.a=a +this.b=b}, +Gc:function Gc(a,b,c,d){var _=this +_.a=0 +_.c=_.b=!1 +_.e=_.d=-1 +_.f=!1 +_.r=-1 +_.w=4 +_.x=-1 +_.z=_.y=0 +_.Q=1005 +_.as="" +_.at=null +_.ax=a +_.ay=b +_.ch=c +_.CW=d}, +bgS:function bgS(a){this.a=a}, +Gb:function Gb(a){this.a=a}, +zH:function zH(a){this.a=a}, +bgR:function bgR(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.r=_.f=null}, +Ga:function Ga(a,b){this.a=a +this.b=null +this.c=b}, +bgQ:function bgQ(a){this.a=a}, +bgP:function bgP(a){this.a=a}, +amu:function amu(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.f=_.e=!1 +_.r=c +_.w=null}, +bgw:function bgw(a){this.a=a}, +bgx:function bgx(a){this.a=a}, +bgy:function bgy(a){this.a=a}, +bgB:function bgB(a){this.a=a}, +bgz:function bgz(){}, +bgA:function bgA(a){this.a=a}, +rD:function rD(a,b,c,d){var _=this +_.b=a +_.c=null +_.d=$ +_.e=b +_.f=c +_.r=0 +_.w=!1 +_.Q=_.z=null +_.as=$ +_.ch=_.ay=_.ax=_.at=null +_.ade$=d}, +bgL:function bgL(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bgM:function bgM(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bgN:function bgN(a,b){this.a=a +this.b=b}, +bgK:function bgK(){}, +bgI:function bgI(){}, +bgJ:function bgJ(a,b,c){this.a=a +this.b=b +this.c=c}, +bgO:function bgO(a){this.a=a}, +bgC:function bgC(a){this.a=a}, +bgE:function bgE(a){this.a=a}, +bgD:function bgD(a,b){this.a=a +this.b=b}, +bgF:function bgF(a){this.a=a}, +bgG:function bgG(){}, +bgH:function bgH(a){this.a=a}, +aof:function aof(){}, +jX(a,b,c){if(b.i("az<0>").b(a))return new A.Ra(a,b.i("@<0>").aH(c).i("Ra<1,2>")) +return new A.wa(a,b.i("@<0>").aH(c).i("wa<1,2>"))}, +btV(a){return new A.kO("Field '"+a+"' has not been initialized.")}, +xp(a){return new A.kO("Local '"+a+"' has not been initialized.")}, +btW(a){return new A.kO("Local '"+a+"' has already been initialized.")}, +bjk(a){var s,r=a^48 +if(r<=9)return r +s=a|32 +if(97<=s&&s<=102)return s-87 +return-1}, +a6(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +hN(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +bO6(a,b,c){return A.hN(A.a6(A.a6(c,a),b))}, +bO7(a,b,c,d,e){return A.hN(A.a6(A.a6(A.a6(A.a6(e,a),b),c),d))}, +ez(a,b,c){return a}, +bY3(a,b){return a}, +bpz(a){var s,r +for(s=$.zT.length,r=0;rc)A.V(A.dn(b,0,c,"start",null))}return new A.aP(a,b,c,d.i("aP<0>"))}, +n_(a,b,c,d){if(t.Ee.b(a))return new A.pM(a,b,c.i("@<0>").aH(d).i("pM<1,2>")) +return new A.hF(a,b,c.i("@<0>").aH(d).i("hF<1,2>"))}, +bwg(a,b,c){var s="takeCount" +A.f3(b,s) +A.eu(b,s) +if(t.Ee.b(a))return new A.J1(a,b,c.i("J1<0>")) +return new A.yL(a,b,c.i("yL<0>"))}, +bvT(a,b,c){var s="count" +if(t.Ee.b(a)){A.f3(b,s) +A.eu(b,s) +return new A.B4(a,b,c.i("B4<0>"))}A.f3(b,s) +A.eu(b,s) +return new A.qW(a,b,c.i("qW<0>"))}, +bt8(a,b,c){if(c.i("az<0>").b(b))return new A.J0(a,b,c.i("J0<0>")) +return new A.q_(a,b,c.i("q_<0>"))}, +bJs(a,b,c){return new A.wE(a,b,c.i("wE<0>"))}, +cV(){return new A.ld("No element")}, +bJF(){return new A.ld("Too many elements")}, +btI(){return new A.ld("Too few elements")}, +a8J(a,b,c,d){if(c-b<=32)A.bNQ(a,b,c,d) +else A.bNP(a,b,c,d)}, +bNQ(a,b,c,d){var s,r,q,p,o +for(s=b+1,r=J.a0(a);s<=c;++s){q=r.h(a,s) +p=s +while(!0){if(!(p>b&&d.$2(r.h(a,p-1),q)>0))break +o=p-1 +r.n(a,p,r.h(a,o)) +p=o}r.n(a,p,q)}}, +bNP(a3,a4,a5,a6){var s,r,q,p,o,n,m,l,k,j,i=B.e.cn(a5-a4+1,6),h=a4+i,g=a5-i,f=B.e.cn(a4+a5,2),e=f-i,d=f+i,c=J.a0(a3),b=c.h(a3,h),a=c.h(a3,e),a0=c.h(a3,f),a1=c.h(a3,d),a2=c.h(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.h(a3,a4)) +c.n(a3,d,c.h(a3,a5)) +r=a4+1 +q=a5-1 +p=J.e(a6.$2(a,a1),0) +if(p)for(o=r;o<=q;++o){n=c.h(a3,o) +m=a6.$2(n,a) +if(m===0)continue +if(m<0){if(o!==r){c.n(a3,o,c.h(a3,r)) +c.n(a3,r,n)}++r}else for(;!0;){m=a6.$2(c.h(a3,q),a) +if(m>0){--q +continue}else{l=q-1 +if(m<0){c.n(a3,o,c.h(a3,r)) +k=r+1 +c.n(a3,r,c.h(a3,q)) +c.n(a3,q,n) +q=l +r=k +break}else{c.n(a3,o,c.h(a3,q)) +c.n(a3,q,n) +q=l +break}}}}else for(o=r;o<=q;++o){n=c.h(a3,o) +if(a6.$2(n,a)<0){if(o!==r){c.n(a3,o,c.h(a3,r)) +c.n(a3,r,n)}++r}else if(a6.$2(n,a1)>0)for(;!0;)if(a6.$2(c.h(a3,q),a1)>0){--q +if(qg){for(;J.e(a6.$2(c.h(a3,r),a),0);)++r +for(;J.e(a6.$2(c.h(a3,q),a1),0);)--q +for(o=r;o<=q;++o){n=c.h(a3,o) +if(a6.$2(n,a)===0){if(o!==r){c.n(a3,o,c.h(a3,r)) +c.n(a3,r,n)}++r}else if(a6.$2(n,a1)===0)for(;!0;)if(a6.$2(c.h(a3,q),a1)===0){--q +if(q")),!0,b),l=m.length,k=0 +while(!0){if(!(k").aH(c).i("ai<1,2>")) +n.$keys=m +return n}return new A.wn(A.f7(a,b,c),b.i("@<0>").aH(c).i("wn<1,2>"))}, +asL(){throw A.d(A.ag("Cannot modify unmodifiable Map"))}, +bl8(){throw A.d(A.ag("Cannot modify constant Set"))}, +bAY(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +bA3(a,b){var s +if(b!=null){s=b.x +if(s!=null)return s}return t.dC.b(a)}, +c(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.p(a) +return s}, +tN(a,b,c,d,e,f){return new A.a1g(a,c,d,e,f)}, +at(a){var s,r=$.bv4 +if(r==null)r=$.bv4=Symbol("identityHashCode") +s=a[r] +if(s==null){s=Math.random()*0x3fffffff|0 +a[r]=s}return s}, +na(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.dn(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)}, +oG(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.cw(a) +if(r==="NaN"||r==="+NaN"||r==="-NaN")return s +return null}return s}, +aN9(a){return A.bMj(a)}, +bMj(a){var s,r,q,p +if(a instanceof A.O)return A.fQ(A.ba(a),null) +s=J.dd(a) +if(s===B.a2v||s===B.a2M||t.kk.b(a)){r=B.uT(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.fQ(A.ba(a),null)}, +bv6(a){if(a==null||typeof a=="number"||A.mo(a))return J.p(a) +if(typeof a=="string")return JSON.stringify(a) +if(a instanceof A.tf)return a.j(0) +if(a instanceof A.nI)return a.a8R(!0) +return"Instance of '"+A.aN9(a)+"'"}, +bMm(){return Date.now()}, +bMp(){var s,r +if($.aNa!==0)return +$.aNa=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 +$.aNa=1e6 +$.y7=new A.aN8(r)}, +bMl(){if(!!self.location)return self.location.href +return null}, +bv3(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.bMq(a)}return A.bv3(a)}, +bMr(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.dn(a,0,1114111,null,null))}, +bv8(a,b,c,d,e,f,g,h,i){var s,r,q,p=b-1 +if(0<=a&&a<100){a+=400 +p-=4800}s=B.e.an(h,1000) +g+=B.e.cn(h-s,1000) +r=i?Date.UTC(a,p,c,d,e,f,g):new Date(a,p,c,d,e,f,g).valueOf() +q=!0 +if(!isNaN(r))if(!(r<-864e13))if(!(r>864e13))q=r===864e13&&s!==0 +if(q)return null +return r}, +jx(a){if(a.date===void 0)a.date=new Date(a.a) +return a.date}, +CT(a){return a.c?A.jx(a).getUTCFullYear()+0:A.jx(a).getFullYear()+0}, +aN6(a){return a.c?A.jx(a).getUTCMonth()+1:A.jx(a).getMonth()+1}, +a6i(a){return a.c?A.jx(a).getUTCDate()+0:A.jx(a).getDate()+0}, +a6j(a){return a.c?A.jx(a).getUTCHours()+0:A.jx(a).getHours()+0}, +a6k(a){return a.c?A.jx(a).getUTCMinutes()+0:A.jx(a).getMinutes()+0}, +aN7(a){return a.c?A.jx(a).getUTCSeconds()+0:A.jx(a).getSeconds()+0}, +bv5(a){return a.c?A.jx(a).getUTCMilliseconds()+0:A.jx(a).getMilliseconds()+0}, +bMo(a){return B.e.an((a.c?A.jx(a).getUTCDay()+0:A.jx(a).getDay()+0)+6,7)+1}, +uq(a,b,c){var s,r,q={} +q.a=0 +s=[] +r=[] +q.a=b.length +B.b.G(s,b) +q.b="" +if(c!=null&&c.a!==0)c.az(0,new A.aN5(q,r,s)) +return J.bEV(a,new A.a1g(B.ap6,0,s,r,0))}, +bMk(a,b,c){var s,r=c==null||c.a===0 +if(r){if(!!a.$0)return a.$0() +s=a[""+"$0"] +if(s!=null)return s.apply(a,b)}return A.bMi(a,b,c)}, +bMi(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=a.$R +if(0n)return A.uq(a,b,null) +if(0f)return A.uq(a,b,c) +l=A.a8(b,!0,t.z) +k=Object.keys(q) +if(c==null)for(r=k.length,j=0;j=s)return A.eZ(b,s,a,null,r) +return A.a6r(b,r)}, +bVC(a,b,c){if(a<0||a>c)return A.dn(a,0,c,"start",null) +if(b!=null)if(bc)return A.dn(b,a,c,"end",null) +return new A.jf(!0,b,"end",null)}, +zO(a){return new A.jf(!0,a,null,null)}, +iE(a){return a}, +d(a){return A.bzZ(new Error(),a)}, +bzZ(a,b){var s +if(b==null)b=new A.r8() +a.dartException=b +s=A.bXW +if("defineProperty" in Object){Object.defineProperty(a,"message",{get:s}) +a.name=""}else a.toString=s +return a}, +bXW(){return J.p(this.dartException)}, +V(a){throw A.d(a)}, +bk6(a,b){throw A.bzZ(b,a)}, +T(a){throw A.d(A.cZ(a))}, +r9(a){var s,r,q,p,o,n +a=A.bjU(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.aV3(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)}, +aV4(a){return function($expr$){var $argumentsExpr$="$arguments$" +try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, +bwG(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, +bmB(a,b){var s=b==null,r=s?null:b.method +return new A.a1h(a,r,s?null:b.receiver)}, +v(a){if(a==null)return new A.a54(a) +if(a instanceof A.Jd)return A.vW(a,a.a) +if(typeof a!=="object")return a +if("dartException" in a)return A.vW(a,a.dartException) +return A.bUx(a)}, +vW(a,b){if(t.Lt.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a +return b}, +bUx(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.e.cA(r,16)&8191)===10)switch(q){case 438:return A.vW(a,A.bmB(A.c(s)+" (Error "+q+")",null)) +case 445:case 5007:A.c(s) +return A.vW(a,new A.LL())}}if(a instanceof TypeError){p=$.bCB() +o=$.bCC() +n=$.bCD() +m=$.bCE() +l=$.bCH() +k=$.bCI() +j=$.bCG() +$.bCF() +i=$.bCK() +h=$.bCJ() +g=p.oa(s) +if(g!=null)return A.vW(a,A.bmB(s,g)) +else{g=o.oa(s) +if(g!=null){g.method="call" +return A.vW(a,A.bmB(s,g))}else if(n.oa(s)!=null||m.oa(s)!=null||l.oa(s)!=null||k.oa(s)!=null||j.oa(s)!=null||m.oa(s)!=null||i.oa(s)!=null||h.oa(s)!=null)return A.vW(a,new A.LL())}return A.vW(a,new A.a9U(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.Ok() +s=function(b){try{return String(b)}catch(f){}return null}(a) +return A.vW(a,new A.jf(!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.Ok() +return a}, +aT(a){var s +if(a instanceof A.Jd)return a.b +if(a==null)return new A.TI(a) +s=a.$cachedTrace +if(s!=null)return s +s=new A.TI(a) +if(typeof a==="object")a.$cachedTrace=s +return s}, +rT(a){if(a==null)return J.W(a) +if(typeof a=="object")return A.at(a) +return J.W(a)}, +bVb(a){if(typeof a=="number")return B.d.gB(a) +if(a instanceof A.Ua)return A.at(a) +if(a instanceof A.nI)return a.gB(a) +if(a instanceof A.hp)return a.gB(0) +return A.rT(a)}, +bzQ(a,b){var s,r,q,p=a.length +for(s=0;s=0 +else if(b instanceof A.oo){s=B.c.bE(a,c) +return b.b.test(s)}else return!J.ap7(b,B.c.bE(a,c)).ga_(0)}, +bpn(a){if(a.indexOf("$",0)>=0)return a.replace(/\$/g,"$$$$") +return a}, +bXI(a,b,c,d){var s=b.R0(a,d) +if(s==null)return a +return A.bpK(a,s.b.index,s.gbV(0),c)}, +bjU(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") +return a}, +dm(a,b,c){var s +if(typeof b=="string")return A.bXH(a,b,c) +if(b instanceof A.oo){s=b.ga5Q() +s.lastIndex=0 +return a.replace(s,A.bpn(c))}return A.bXG(a,b,c)}, +bXG(a,b,c){var s,r,q,p +for(s=J.ap7(b,a),s=s.gav(s),r=0,q="";s.u();){p=s.gI(s) +q=q+a.substring(r,p.gcD(p))+c +r=p.gbV(p)}s=q+a.substring(r) +return s.charCodeAt(0)==0?s:s}, +bXH(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.bjU(b),"g"),A.bpn(c))}, +bze(a){return a}, +aoK(a,b,c,d){var s,r,q,p,o,n,m +for(s=b.pf(0,a),s=new A.za(s.a,s.b,s.c),r=t.Qz,q=0,p="";s.u();){o=s.d +if(o==null)o=r.a(o) +n=o.b +m=n.index +p=p+A.c(A.bze(B.c.R(a,q,m)))+A.c(c.$1(o)) +q=m+n[0].length}s=p+A.c(A.bze(B.c.bE(a,q))) +return s.charCodeAt(0)==0?s:s}, +bAU(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.bpK(a,s,s+b.length,c)}if(b instanceof A.oo)return d===0?a.replace(b.b,A.bpn(c)):A.bXI(a,b,c,d) +r=J.bEv(b,a,d) +q=r.gav(r) +if(!q.u())return a +p=q.gI(q) +return B.c.lK(a,p.gcD(p),p.gbV(p),c)}, +bpK(a,b,c,d){return a.substring(0,b)+d+a.substring(c)}, +b3:function b3(a,b){this.a=a +this.b=b}, +aiQ:function aiQ(a,b){this.a=a +this.b=b}, +SE:function SE(a,b){this.a=a +this.b=b}, +SF:function SF(a,b){this.a=a +this.b=b}, +aiR:function aiR(a,b){this.a=a +this.b=b}, +aiS:function aiS(a,b){this.a=a +this.b=b}, +aiT:function aiT(a,b){this.a=a +this.b=b}, +kr:function kr(a,b,c){this.a=a +this.b=b +this.c=c}, +aiU:function aiU(a,b,c){this.a=a +this.b=b +this.c=c}, +SG:function SG(a,b,c){this.a=a +this.b=b +this.c=c}, +aiV:function aiV(a,b,c){this.a=a +this.b=b +this.c=c}, +aiW:function aiW(a,b,c){this.a=a +this.b=b +this.c=c}, +aiX:function aiX(a,b,c){this.a=a +this.b=b +this.c=c}, +SH:function SH(a,b,c){this.a=a +this.b=b +this.c=c}, +aiY:function aiY(a){this.a=a}, +SI:function SI(a){this.a=a}, +aiZ:function aiZ(a){this.a=a}, +aj_:function aj_(a){this.a=a}, +wn:function wn(a,b){this.a=a +this.$ti=b}, +AC:function AC(){}, +asM:function asM(a,b,c){this.a=a +this.b=b +this.c=c}, +ai:function ai(a,b,c){this.a=a +this.b=b +this.$ti=c}, +zo:function zo(a,b){this.a=a +this.$ti=b}, +vs:function vs(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +cR:function cR(a,b){this.a=a +this.$ti=b}, +HL:function HL(){}, +kx:function kx(a,b,c){this.a=a +this.b=b +this.$ti=c}, +hC:function hC(a,b){this.a=a +this.$ti=b}, +a1e:function a1e(){}, +tJ:function tJ(a,b){this.a=a +this.$ti=b}, +a1g:function a1g(a,b,c,d,e){var _=this +_.a=a +_.c=b +_.d=c +_.e=d +_.f=e}, +aN8:function aN8(a){this.a=a}, +aN5:function aN5(a,b,c){this.a=a +this.b=b +this.c=c}, +aV3:function aV3(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +LL:function LL(){}, +a1h:function a1h(a,b,c){this.a=a +this.b=b +this.c=c}, +a9U:function a9U(a){this.a=a}, +a54:function a54(a){this.a=a}, +Jd:function Jd(a,b){this.a=a +this.b=b}, +TI:function TI(a){this.a=a +this.b=null}, +tf:function tf(){}, +Xt:function Xt(){}, +Xu:function Xu(){}, +a9h:function a9h(){}, +a8V:function a8V(){}, +Ae:function Ae(a,b){this.a=a +this.b=b}, +aei:function aei(a){this.a=a}, +a7x:function a7x(a){this.a=a}, +bcj:function bcj(){}, +iR:function iR(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +aD2:function aD2(a){this.a=a}, +aD1:function aD1(a,b){this.a=a +this.b=b}, +aD0:function aD0(a){this.a=a}, +aEX:function aEX(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +aR:function aR(a,b){this.a=a +this.$ti=b}, +Kw:function Kw(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +Kf:function Kf(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +xj:function xj(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +bjl:function bjl(a){this.a=a}, +bjm:function bjm(a){this.a=a}, +bjn:function bjn(a){this.a=a}, +nI:function nI(){}, +aiN:function aiN(){}, +aiO:function aiO(){}, +aiP:function aiP(){}, +oo:function oo(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +Fk:function Fk(a){this.b=a}, +acy:function acy(a,b,c){this.a=a +this.b=b +this.c=c}, +za:function za(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +DJ:function DJ(a,b){this.a=a +this.c=b}, +akR:function akR(a,b,c){this.a=a +this.b=b +this.c=c}, +be8:function be8(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +bXS(a){A.bk6(new A.kO("Field '"+a+u.e),new Error())}, +b(){A.bk6(new A.kO("Field '' has not been initialized."),new Error())}, +d1(){A.bk6(new A.kO("Field '' has already been initialized."),new Error())}, +aH(){A.bk6(new A.kO("Field '' has been assigned during initialization."),new Error())}, +bu(a){var s=new A.aZY(a) +return s.b=s}, +boq(a,b){var s=new A.b8b(a,b) +return s.b=s}, +aZY:function aZY(a){this.a=a +this.b=null}, +b8b:function b8b(a,b){this.a=a +this.b=null +this.c=b}, +Vl(a,b,c){}, +e7(a){var s,r,q +if(t.ha.b(a))return a +s=J.a0(a) +r=A.bO(s.gt(a),null,!1,t.z) +for(q=0;q>>0!==a||a>=c)throw A.d(A.Gp(b,a))}, +nN(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.bVC(a,b,c)) +if(b==null)return c +return b}, +xN:function xN(){}, +Lx:function Lx(a){this.a=a}, +hk:function hk(){}, +Lu:function Lu(){}, +Ct:function Ct(){}, +u8:function u8(){}, +kX:function kX(){}, +Lv:function Lv(){}, +a4P:function a4P(){}, +a4Q:function a4Q(){}, +Lw:function Lw(){}, +a4R:function a4R(){}, +a4S:function a4S(){}, +Ly:function Ly(){}, +Lz:function Lz(){}, +ox:function ox(){}, +u7:function u7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aho:function aho(){}, +ahp:function ahp(){}, +Sh:function Sh(){}, +Si:function Si(){}, +Sj:function Sj(){}, +Sk:function Sk(){}, +bvy(a,b){var s=b.c +return s==null?b.c=A.boG(a,b.x,!0):s}, +bnB(a,b){var s=b.c +return s==null?b.c=A.Ue(a,"a2",[b.x]):s}, +bvz(a){var s=a.w +if(s===6||s===7||s===8)return A.bvz(a.x) +return s===12||s===13}, +bMY(a){return a.as}, +bjK(a,b){var s,r=b.length +for(s=0;s") +for(r=1;r=0)p+=" "+r[q];++q}return p+"})"}, +byH(a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=", ",a2=null +if(a5!=null){s=a5.length +if(a4==null)a4=A.a([],t.s) +else a2=a4.length +r=a4.length +for(q=s;q>0;--q)a4.push("T"+(r+q)) +for(p=t.X,o=t.ub,n="<",m="",q=0;q0){a+=a0+"[" +for(a0="",q=0;q0){a+=a0+"{" +for(a0="",q=0;q "+b}, +fQ(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.fQ(a.x,b) +if(m===7){s=a.x +r=A.fQ(s,b) +q=s.w +return(q===12||q===13?"("+r+")":r)+"?"}if(m===8)return"FutureOr<"+A.fQ(a.x,b)+">" +if(m===9){p=A.bUw(a.x) +o=a.y +return o.length>0?p+("<"+A.bz7(o,b)+">"):p}if(m===11)return A.bU3(a,b) +if(m===12)return A.byH(a,b,null) +if(m===13)return A.byH(a.x,b,a.y) +if(m===14){n=a.x +return b[b.length-1-n]}return"?"}, +bUw(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +bRk(a,b){var s=a.tR[b] +for(;typeof s=="string";)s=a.tR[s] +return s}, +bRj(a,b){var s,r,q,p,o,n=a.eT,m=n[b] +if(m==null)return A.amf(a,b,!1) +else if(typeof m=="number"){s=m +r=A.Uf(a,5,"#") +q=A.bgc(s) +for(p=0;p0)p+="<"+A.Ud(c)+">" +s=a.eC.get(p) +if(s!=null)return s +r=new A.m_(null,null) +r.w=9 +r.x=b +r.y=c +if(c.length>0)r.c=c[0] +r.as=p +q=A.rz(a,r) +a.eC.set(p,q) +return q}, +boE(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.Ud(r)+">") +p=a.eC.get(q) +if(p!=null)return p +o=new A.m_(null,null) +o.w=10 +o.x=s +o.y=r +o.as=q +n=A.rz(a,o) +a.eC.set(q,n) +return n}, +bxV(a,b,c){var s,r,q="+"+(b+"("+A.Ud(c)+")"),p=a.eC.get(q) +if(p!=null)return p +s=new A.m_(null,null) +s.w=11 +s.x=b +s.y=c +s.as=q +r=A.rz(a,s) +a.eC.set(q,r) +return r}, +bxT(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.Ud(m) +if(j>0){s=l>0?",":"" +g+=s+"["+A.Ud(k)+"]"}if(h>0){s=l>0?",":"" +g+=s+"{"+A.bRb(i)+"}"}r=n+(g+")") +q=a.eC.get(r) +if(q!=null)return q +p=new A.m_(null,null) +p.w=12 +p.x=b +p.y=c +p.as=r +o=A.rz(a,p) +a.eC.set(r,o) +return o}, +boF(a,b,c,d){var s,r=b.as+("<"+A.Ud(c)+">"),q=a.eC.get(r) +if(q!=null)return q +s=A.bRd(a,b,c,r,d) +a.eC.set(r,s) +return s}, +bRd(a,b,c,d,e){var s,r,q,p,o,n,m,l +if(e){s=c.length +r=A.bgc(s) +for(q=0,p=0;p0){n=A.rL(a,b,r,0) +m=A.Gk(a,c,r,0) +return A.boF(a,n,m,c!==m)}}l=new A.m_(null,null) +l.w=13 +l.x=b +l.y=c +l.as=d +return A.rz(a,l)}, +bxx(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, +bxz(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.bQj(r+1,q,l,k) +else if((((q|32)>>>0)-97&65535)<26||q===95||q===36||q===124)r=A.bxy(a,r,l,k,!1) +else if(q===46)r=A.bxy(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.vA(a.u,a.e,k.pop())) +break +case 94:k.push(A.bRg(a.u,k.pop())) +break +case 35:k.push(A.Uf(a.u,5,"#")) +break +case 64:k.push(A.Uf(a.u,2,"@")) +break +case 126:k.push(A.Uf(a.u,3,"~")) +break +case 60:k.push(a.p) +a.p=k.length +break +case 62:A.bQl(a,k) +break +case 38:A.bQk(a,k) +break +case 42:p=a.u +k.push(A.bxW(p,A.vA(p,a.e,k.pop()),a.n)) +break +case 63:p=a.u +k.push(A.boG(p,A.vA(p,a.e,k.pop()),a.n)) +break +case 47:p=a.u +k.push(A.bxU(p,A.vA(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.bQi(a,k) +break +case 91:k.push(a.p) +a.p=k.length +break +case 93:o=k.splice(a.p) +A.bxA(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.bQn(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.vA(a.u,a.e,m)}, +bQj(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}, +bxy(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.bRk(s,o.x)[p] +if(n==null)A.V('No "'+p+'" in "'+A.bMY(o)+'"') +d.push(A.Ug(s,o,n))}else d.push(p) +return m}, +bQl(a,b){var s,r=a.u,q=A.bxw(a,b),p=b.pop() +if(typeof p=="string")b.push(A.Ue(r,p,q)) +else{s=A.vA(r,a.e,p) +switch(s.w){case 12:b.push(A.boF(r,s,q,a.n)) +break +default:b.push(A.boE(r,s,q)) +break}}}, +bQi(a,b){var s,r,q,p=a.u,o=b.pop(),n=null,m=null +if(typeof o=="number")switch(o){case-1:n=b.pop() +break +case-2:m=b.pop() +break +default:b.push(o) +break}else b.push(o) +s=A.bxw(a,b) +o=b.pop() +switch(o){case-3:o=b.pop() +if(n==null)n=p.sEA +if(m==null)m=p.sEA +r=A.vA(p,a.e,o) +q=new A.afO() +q.a=s +q.b=n +q.c=m +b.push(A.bxT(p,r,q)) +return +case-4:b.push(A.bxV(p,b.pop(),s)) +return +default:throw A.d(A.lz("Unexpected state under `()`: "+A.c(o)))}}, +bQk(a,b){var s=b.pop() +if(0===s){b.push(A.Uf(a.u,1,"0&")) +return}if(1===s){b.push(A.Uf(a.u,4,"1&")) +return}throw A.d(A.lz("Unexpected extended operation "+A.c(s)))}, +bxw(a,b){var s=b.splice(a.p) +A.bxA(a.u,a.e,s) +a.p=b.pop() +return s}, +vA(a,b,c){if(typeof c=="string")return A.Ue(a,c,a.sEA) +else if(typeof c=="number"){b.toString +return A.bQm(a,b,c)}else return c}, +bxA(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}, +m_:function m_(a,b){var _=this +_.a=a +_.b=b +_.r=_.f=_.d=_.c=null +_.w=0 +_.as=_.Q=_.z=_.y=_.x=null}, +afO:function afO(){this.c=this.b=this.a=null}, +Ua:function Ua(a){this.a=a}, +afi:function afi(){}, +Ub:function Ub(a){this.a=a}, +bW1(a,b){var s,r +if(B.c.ba(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.qv.h(0,a) +return r==null?null:r.charCodeAt(0)}if(!(s>=$.bDI()&&s<=$.bDJ()))r=s>=$.bDT()&&s<=$.bDU() +else r=!0 +if(r)return b.toLowerCase().charCodeAt(0) +return null}, +bR3(a){var s=B.qv.gdG(B.qv) +return new A.bea(a,A.bu9(s.eR(s,new A.beb(),t.q9),t.S,t.N))}, +bUv(a){var s,r,q,p,o=a.ag9(),n=A.w(t.N,t.S) +for(s=a.a,r=0;r=2)return null +return a.toLowerCase().charCodeAt(0)}, +bea:function bea(a,b){this.a=a +this.b=b +this.c=0}, +beb:function beb(){}, +KC:function KC(a){this.a=a}, +d_:function d_(a,b){this.a=a +this.b=b}, +fv:function fv(a,b){this.a=a +this.b=b}, +bPb(){var s,r,q={} +if(self.scheduleImmediate!=null)return A.bUI() +if(self.MutationObserver!=null&&self.document!=null){s=self.document.createElement("div") +r=self.document.createElement("span") +q.a=null +new self.MutationObserver(A.rN(new A.aYG(q),1)).observe(s,{childList:true}) +return new A.aYF(q,s,r)}else if(self.setImmediate!=null)return A.bUJ() +return A.bUK()}, +bPc(a){self.scheduleImmediate(A.rN(new A.aYH(a),0))}, +bPd(a){self.setImmediate(A.rN(new A.aYI(a),0))}, +bPe(a){A.bwx(B.F,a)}, +bwx(a,b){var s=B.e.cn(a.a,1000) +return A.bR7(s<0?0:s,b)}, +bOC(a,b){var s=B.e.cn(a.a,1000) +return A.bR8(s<0?0:s,b)}, +bR7(a,b){var s=new A.U7(!0) +s.ark(a,b) +return s}, +bR8(a,b){var s=new A.U7(!1) +s.arl(a,b) +return s}, +n(a){return new A.PX(new A.a_($.ab,a.i("a_<0>")),a.i("PX<0>"))}, +m(a,b){a.$2(0,null) +b.b=!0 +return b.a}, +f(a,b){A.byj(a,b)}, +l(a,b){b.bv(0,a)}, +k(a,b){b.dh(A.v(a),A.aT(a))}, +byj(a,b){var s,r,q=new A.bhg(b),p=new A.bhh(b) +if(a instanceof A.a_)a.a8L(q,p,t.z) +else{s=t.z +if(t.L0.b(a))a.cv(q,p,s) +else{r=new A.a_($.ab,t.LR) +r.a=8 +r.c=a +r.a8L(q,p,s)}}}, +j(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 $.ab.Eu(new A.bip(s),t.H,t.S,t.z)}, +j9(a,b,c){var s,r,q,p +if(b===0){s=c.c +if(s!=null)s.oQ(null) +else{s=c.a +s===$&&A.b() +s.L(0)}return}else if(b===1){s=c.c +if(s!=null)s.h1(A.v(a),A.aT(a)) +else{s=A.v(a) +r=A.aT(a) +q=c.a +q===$&&A.b() +q.cX(s,r) +c.a.L(0)}return}if(a instanceof A.RW){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.q(0,s) +A.ff(new A.bhe(c,b)) +return}else if(s===1){p=a.a +s=c.a +s===$&&A.b() +s.aO3(0,p,!1).ak(new A.bhf(c,b),t.P) +return}}A.byj(a,b)}, +bp4(a){var s=a.a +s===$&&A.b() +return new A.cA(s,A.y(s).i("cA<1>"))}, +bPf(a,b){var s=new A.acW(b.i("acW<0>")) +s.ar7(a,b) +return s}, +bp1(a,b){return A.bPf(a,b)}, +bQ9(a){return new A.RW(a,1)}, +bor(a){return new A.RW(a,0)}, +bxP(a,b,c){return 0}, +aq4(a,b){var s=A.ez(a,"error",t.K) +return new A.WD(s,b==null?A.t6(a):b)}, +t6(a){var s +if(t.Lt.b(a)){s=a.gG8() +if(s!=null)return s}return B.iA}, +a0v(a,b){var s=new A.a_($.ab,b.i("a_<0>")) +A.bZ(B.F,new A.aAj(a,s)) +return s}, +bth(a,b){var s=new A.a_($.ab,b.i("a_<0>")) +A.ff(new A.aAi(a,s)) +return s}, +bJ2(a,b){var s,r,q,p,o,n,m=null +try{m=a.$0()}catch(o){s=A.v(o) +r=A.aT(o) +n=$.ab +q=new A.a_(n,b.i("a_<0>")) +p=n.rk(s,r) +if(p!=null)q.oO(p.a,p.b) +else q.oO(s,r) +return q}return b.i("a2<0>").b(m)?m:A.en(m,b)}, +c7(a,b){var s=a==null?b.a(a):a,r=new A.a_($.ab,b.i("a_<0>")) +r.kv(s) +return r}, +i0(a,b,c){var s,r +A.ez(a,"error",t.K) +s=$.ab +if(s!==B.aO){r=s.rk(a,b) +if(r!=null){a=r.a +b=r.b}}if(b==null)b=A.t6(a) +s=new A.a_($.ab,c.i("a_<0>")) +s.oO(a,b) +return s}, +eC(a,b,c){var s,r +if(b==null)s=!c.b(null) +else s=!1 +if(s)throw A.d(A.hY(null,"computation","The type parameter is not nullable")) +r=new A.a_($.ab,c.i("a_<0>")) +A.bZ(a,new A.aAh(b,r,c)) +return r}, +lM(a,b,c){var s,r,q,p,o,n,m,l,k={},j=null,i=new A.a_($.ab,c.i("a_>")) +k.a=null +k.b=0 +k.c=k.d=null +s=new A.aAn(k,j,b,i) +try{for(n=J.ay(a),m=t.P;n.u();){r=n.gI(n) +q=k.b +r.cv(new A.aAm(k,q,i,c,j,b),s,m);++k.b}n=k.b +if(n===0){n=i +n.oQ(A.a([],c.i("E<0>"))) +return n}k.a=A.bO(n,null,!1,c.i("0?"))}catch(l){p=A.v(l) +o=A.aT(l) +if(k.b===0||b)return A.i0(p,o,c.i("D<0>")) +else{k.d=p +k.c=o}}return i}, +bJ3(a,b){var s,r,q=new A.rx(new A.a_($.ab,b.i("a_<0>")),b.i("rx<0>")),p=new A.aAl(q,b),o=new A.aAk(q) +for(s=t.H,r=0;r<2;++r)a[r].cv(p,o,s) +return q.a}, +bJ1(a,b,c,d){var s,r,q=new A.aAg(d,null,b,c) +if(a instanceof A.a_){s=$.ab +r=new A.a_(s,c.i("a_<0>")) +if(s!==B.aO)q=s.Eu(q,c.i("0/"),t.K,t.Km) +a.wD(new A.mh(r,2,null,q,a.$ti.i("@<1>").aH(c).i("mh<1,2>"))) +return r}return a.cv(new A.aAf(c),q,c)}, +btg(a,b){}, +bww(a,b){return new A.fd(a,b)}, +aok(a,b,c){var s=$.ab.rk(b,c) +if(s!=null){b=s.a +c=s.b}else if(c==null)c=A.t6(b) +a.h1(b,c)}, +bPS(a,b,c){var s=new A.a_(b,c.i("a_<0>")) +s.a=8 +s.c=a +return s}, +en(a,b){var s=new A.a_($.ab,b.i("a_<0>")) +s.a=8 +s.c=a +return s}, +bol(a,b){var s,r +for(;s=a.a,(s&4)!==0;)a=a.c +if(a===b){b.oO(new A.jf(!0,a,null,"Cannot complete a future with itself"),A.h3()) +return}s|=b.a&1 +a.a=s +if((s&24)!==0){r=b.Iu() +b.GM(a) +A.F5(b,r)}else{r=b.c +b.a7N(a) +a.SU(r)}}, +bPT(a,b){var s,r,q={},p=q.a=a +for(;s=p.a,(s&4)!==0;){p=p.c +q.a=p}if(p===b){b.oO(new A.jf(!0,p,null,"Cannot complete a future with itself"),A.h3()) +return}if((s&24)===0){r=b.c +b.a7N(p) +q.a.SU(r) +return}if((s&16)===0&&b.c==null){b.GM(p) +return}b.a^=2 +b.b.oz(new A.b4R(q,b))}, +F5(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.Dx(s.a,s.b)}return}r.a=b +n=b.a +for(e=b;n!=null;e=n,n=m){e.a=null +A.F5(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.gyt()===j.gyt())}else e=!1 +if(e){e=f.a +s=e.c +e.b.Dx(s.a,s.b) +return}i=$.ab +if(i!==j)$.ab=j +else i=null +e=r.a.c +if((e&15)===8)new A.b4Y(r,f,o).$0() +else if(p){if((e&1)!==0)new A.b4X(r,l).$0()}else if((e&2)!==0)new A.b4W(f,r).$0() +if(i!=null)$.ab=i +e=r.c +if(s.b(e)){q=r.a.$ti +q=q.i("a2<2>").b(e)||!q.y[1].b(e)}else q=!1 +if(q){h=r.a.b +if(e instanceof A.a_)if((e.a&24)!==0){g=h.c +h.c=null +b=h.IB(g) +h.a=e.a&30|h.a&1 +h.c=e.c +f.a=e +continue}else A.bol(e,h) +else h.PZ(e) +return}}h=r.a.b +g=h.c +h.c=null +b=h.IB(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}}, +bz2(a,b){if(t.Hg.b(a))return b.Eu(a,t.z,t.K,t.Km) +if(t.C_.b(a))return b.vD(a,t.z,t.K) +throw A.d(A.hY(a,"onError",u.w))}, +bTG(){var s,r +for(s=$.Gj;s!=null;s=$.Gj){$.Vo=null +r=s.b +$.Gj=r +if(r==null)$.Vn=null +s.a.$0()}}, +bUf(){$.bp0=!0 +try{A.bTG()}finally{$.Vo=null +$.bp0=!1 +if($.Gj!=null)$.bq9().$1(A.bzq())}}, +bzb(a){var s=new A.acV(a),r=$.Vn +if(r==null){$.Gj=$.Vn=s +if(!$.bp0)$.bq9().$1(A.bzq())}else $.Vn=r.b=s}, +bU9(a){var s,r,q,p=$.Gj +if(p==null){A.bzb(a) +$.Vo=$.Vn +return}s=new A.acV(a) +r=$.Vo +if(r==null){s.b=p +$.Gj=$.Vo=s}else{q=r.b +s.b=q +$.Vo=r.b=s +if(q==null)$.Vn=s}}, +ff(a){var s,r=null,q=$.ab +if(B.aO===q){A.bif(r,r,B.aO,a) +return}if(B.aO===q.gaJq().a)s=B.aO.gyt()===q.gyt() +else s=!1 +if(s){A.bif(r,r,q,q.vB(a,t.H)) +return}s=$.ab +s.oz(s.UR(a))}, +bw1(a,b){var s=null,r=b.i("md<0>"),q=new A.md(s,s,s,s,r) +q.jh(0,a) +q.AB() +return new A.cA(q,r.i("cA<1>"))}, +bNW(a,b){var s=null,r=b.i("vH<0>"),q=new A.vH(s,s,s,s,r) +a.cv(new A.aSy(q,b),new A.aSz(q),t.P) +return new A.cA(q,r.i("cA<1>"))}, +bnO(a,b){return new A.zs(!1,new A.aSB(a,b),b.i("zs<0>"))}, +c0m(a){return new A.rw(A.ez(a,"stream",t.K))}, +i9(a,b,c,d,e,f){return e?new A.vH(b,c,d,a,f.i("vH<0>")):new A.md(b,c,d,a,f.i("md<0>"))}, +aSx(a,b,c,d){return c?new A.pa(b,a,d.i("pa<0>")):new A.cd(b,a,d.i("cd<0>"))}, +aos(a){var s,r,q +if(a==null)return +try{a.$0()}catch(q){s=A.v(q) +r=A.aT(q) +$.ab.Dx(s,r)}}, +bPs(a,b,c,d,e,f){var s=$.ab,r=e?1:0,q=c!=null?32:0 +return new A.vj(a,A.Qb(s,b,f),A.Qd(s,c),A.Qc(s,d),s,r|q,f.i("vj<0>"))}, +bPa(a){return new A.aY8(a)}, +Qb(a,b,c){var s=b==null?A.bUL():b +return a.vD(s,t.H,c)}, +Qd(a,b){if(b==null)b=A.bUN() +if(t.hK.b(b))return a.Eu(b,t.z,t.K,t.Km) +if(t.mX.b(b))return a.vD(b,t.z,t.K) +throw A.d(A.bl(u.db,null))}, +Qc(a,b){var s=b==null?A.bUM():b +return a.vB(s,t.H)}, +bTM(a){}, +bTO(a,b){$.ab.Dx(a,b)}, +bTN(){}, +bok(a,b){var s=$.ab,r=new A.EO(s,b.i("EO<0>")) +A.ff(r.ga67()) +if(a!=null)r.c=s.vB(a,t.H) +return r}, +bU5(a,b,c){var s,r,q,p,o,n +try{b.$1(a.$0())}catch(n){s=A.v(n) +r=A.aT(n) +q=$.ab.rk(s,r) +if(q==null)c.$2(s,r) +else{p=q.a +o=q.b +c.$2(p,o)}}}, +bS1(a,b,c,d){var s=a.S(0),r=$.rV() +if(s!==r)s.fC(new A.bhl(b,c,d)) +else b.h1(c,d)}, +bS2(a,b){return new A.bhk(a,b)}, +boP(a,b,c){var s=a.S(0),r=$.rV() +if(s!==r)s.fC(new A.bhm(b,c)) +else b.jQ(c)}, +bPR(a,b,c,d,e,f,g){var s=$.ab,r=e?1:0,q=c!=null?32:0 +q=new A.vl(a,A.Qb(s,b,g),A.Qd(s,c),A.Qc(s,d),s,r|q,f.i("@<0>").aH(g).i("vl<1,2>")) +q.a0f(a,b,c,d,e,f,g) +return q}, +aoi(a,b,c){var s=$.ab.rk(b,c) +if(s!=null){b=s.a +c=s.b}a.ji(b,c)}, +bR2(a,b,c){return new A.TM(new A.be4(a,null,null,c,b),b.i("@<0>").aH(c).i("TM<1,2>"))}, +bZ(a,b){var s=$.ab +if(s===B.aO)return s.acc(a,b) +return s.acc(a,s.UR(b))}, +E5(a,b){var s,r=$.ab +if(r===B.aO)return r.ac5(a,b) +s=r.US(b,t.qe) +return $.ab.ac5(a,s)}, +bid(a,b){A.bU9(new A.bie(a,b))}, +bz4(a,b,c,d){var s,r=$.ab +if(r===c)return d.$0() +$.ab=c +s=r +try{r=d.$0() +return r}finally{$.ab=s}}, +bz6(a,b,c,d,e){var s,r=$.ab +if(r===c)return d.$1(e) +$.ab=c +s=r +try{r=d.$1(e) +return r}finally{$.ab=s}}, +bz5(a,b,c,d,e,f){var s,r=$.ab +if(r===c)return d.$2(e,f) +$.ab=c +s=r +try{r=d.$2(e,f) +return r}finally{$.ab=s}}, +bif(a,b,c,d){var s,r +if(B.aO!==c){s=B.aO.gyt() +r=c.gyt() +d=s!==r?c.UR(d):c.aOP(d,t.H)}A.bzb(d)}, +aYG:function aYG(a){this.a=a}, +aYF:function aYF(a,b,c){this.a=a +this.b=b +this.c=c}, +aYH:function aYH(a){this.a=a}, +aYI:function aYI(a){this.a=a}, +U7:function U7(a){this.a=a +this.b=null +this.c=0}, +bfN:function bfN(a,b){this.a=a +this.b=b}, +bfM:function bfM(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +PX:function PX(a,b){this.a=a +this.b=!1 +this.$ti=b}, +bhg:function bhg(a){this.a=a}, +bhh:function bhh(a){this.a=a}, +bip:function bip(a){this.a=a}, +bhe:function bhe(a,b){this.a=a +this.b=b}, +bhf:function bhf(a,b){this.a=a +this.b=b}, +acW:function acW(a){var _=this +_.a=$ +_.b=!1 +_.c=null +_.$ti=a}, +aYK:function aYK(a){this.a=a}, +aYL:function aYL(a){this.a=a}, +aYN:function aYN(a){this.a=a}, +aYO:function aYO(a,b){this.a=a +this.b=b}, +aYM:function aYM(a,b){this.a=a +this.b=b}, +aYJ:function aYJ(a){this.a=a}, +RW:function RW(a,b){this.a=a +this.b=b}, +lp:function lp(a){var _=this +_.a=a +_.e=_.d=_.c=_.b=null}, +ig:function ig(a,b){this.a=a +this.$ti=b}, +WD:function WD(a,b){this.a=a +this.b=b}, +aG:function aG(a,b){this.a=a +this.$ti=b}, +zc:function zc(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}, +ri:function ri(){}, +pa:function pa(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.r=_.f=_.e=_.d=null +_.$ti=c}, +bet:function bet(a,b){this.a=a +this.b=b}, +bev:function bev(a,b,c){this.a=a +this.b=b +this.c=c}, +beu:function beu(a){this.a=a}, +cd:function cd(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.r=_.f=_.e=_.d=null +_.$ti=c}, +aAj:function aAj(a,b){this.a=a +this.b=b}, +aAi:function aAi(a,b){this.a=a +this.b=b}, +aAh:function aAh(a,b,c){this.a=a +this.b=b +this.c=c}, +aAn:function aAn(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aAm:function aAm(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aAl:function aAl(a,b){this.a=a +this.b=b}, +aAk:function aAk(a){this.a=a}, +aAg:function aAg(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aAf:function aAf(a){this.a=a}, +fd:function fd(a,b){this.a=a +this.b=b}, +ze:function ze(){}, +aq:function aq(a,b){this.a=a +this.$ti=b}, +rx:function rx(a,b){this.a=a +this.$ti=b}, +mh:function mh(a,b,c,d,e){var _=this +_.a=null +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +a_:function a_(a,b){var _=this +_.a=0 +_.b=a +_.c=null +_.$ti=b}, +b4O:function b4O(a,b){this.a=a +this.b=b}, +b4V:function b4V(a,b){this.a=a +this.b=b}, +b4S:function b4S(a){this.a=a}, +b4T:function b4T(a){this.a=a}, +b4U:function b4U(a,b,c){this.a=a +this.b=b +this.c=c}, +b4R:function b4R(a,b){this.a=a +this.b=b}, +b4Q:function b4Q(a,b){this.a=a +this.b=b}, +b4P:function b4P(a,b,c){this.a=a +this.b=b +this.c=c}, +b4Y:function b4Y(a,b,c){this.a=a +this.b=b +this.c=c}, +b4Z:function b4Z(a){this.a=a}, +b4X:function b4X(a,b){this.a=a +this.b=b}, +b4W:function b4W(a,b){this.a=a +this.b=b}, +b5_:function b5_(a,b){this.a=a +this.b=b}, +b50:function b50(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b51:function b51(a,b,c){this.a=a +this.b=b +this.c=c}, +b52:function b52(a,b){this.a=a +this.b=b}, +acV:function acV(a){this.a=a +this.b=null}, +b7:function b7(){}, +aSy:function aSy(a,b){this.a=a +this.b=b}, +aSz:function aSz(a){this.a=a}, +aSB:function aSB(a,b){this.a=a +this.b=b}, +aSC:function aSC(a,b,c){this.a=a +this.b=b +this.c=c}, +aSA:function aSA(a,b,c){this.a=a +this.b=b +this.c=c}, +aSJ:function aSJ(a){this.a=a}, +aSQ:function aSQ(a){this.a=a}, +aSF:function aSF(a){this.a=a}, +aSG:function aSG(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aSD:function aSD(a,b){this.a=a +this.b=b}, +aSE:function aSE(a,b){this.a=a +this.b=b}, +aSO:function aSO(a,b){this.a=a +this.b=b}, +aSP:function aSP(a,b){this.a=a +this.b=b}, +aSK:function aSK(a){this.a=a}, +aSL:function aSL(a,b,c){this.a=a +this.b=b +this.c=c}, +aSR:function aSR(a,b){this.a=a +this.b=b}, +aSS:function aSS(a,b){this.a=a +this.b=b}, +aSH:function aSH(a){this.a=a}, +aSI:function aSI(a,b,c){this.a=a +this.b=b +this.c=c}, +aSM:function aSM(a,b,c){this.a=a +this.b=b +this.c=c}, +aSN:function aSN(a,b,c){this.a=a +this.b=b +this.c=c}, +Oo:function Oo(){}, +eJ:function eJ(){}, +vG:function vG(){}, +be3:function be3(a){this.a=a}, +be2:function be2(a){this.a=a}, +al2:function al2(){}, +acX:function acX(){}, +md:function md(a,b,c,d,e){var _=this +_.a=null +_.b=0 +_.c=null +_.d=a +_.e=b +_.f=c +_.r=d +_.$ti=e}, +vH:function vH(a,b,c,d,e){var _=this +_.a=null +_.b=0 +_.c=null +_.d=a +_.e=b +_.f=c +_.r=d +_.$ti=e}, +cA:function cA(a,b){this.a=a +this.$ti=b}, +vj:function vj(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}, +acx:function acx(){}, +aY8:function aY8(a){this.a=a}, +aY7:function aY7(a){this.a=a}, +akP:function akP(a,b,c){this.c=a +this.a=b +this.b=c}, +fN:function fN(){}, +aZm:function aZm(a,b){this.a=a +this.b=b}, +aZn:function aZn(a,b){this.a=a +this.b=b}, +aZl:function aZl(a,b,c){this.a=a +this.b=b +this.c=c}, +aZk:function aZk(a,b,c){this.a=a +this.b=b +this.c=c}, +aZj:function aZj(a){this.a=a}, +FX:function FX(){}, +aew:function aew(){}, +p3:function p3(a){this.b=a +this.a=null}, +EK:function EK(a,b){this.b=a +this.c=b +this.a=null}, +b0L:function b0L(){}, +Fy:function Fy(){this.a=0 +this.c=this.b=null}, +baA:function baA(a,b){this.a=a +this.b=b}, +EO:function EO(a,b){var _=this +_.a=1 +_.b=a +_.c=null +_.$ti=b}, +b2_:function b2_(a,b){this.a=a +this.b=b}, +rw:function rw(a){this.a=null +this.b=a +this.c=!1}, +Rc:function Rc(a){this.$ti=a}, +zs:function zs(a,b,c){this.a=a +this.b=b +this.$ti=c}, +bac:function bac(a,b){this.a=a +this.b=b}, +Sf:function Sf(a,b,c,d,e){var _=this +_.a=null +_.b=0 +_.c=null +_.d=a +_.e=b +_.f=c +_.r=d +_.$ti=e}, +bhl:function bhl(a,b,c){this.a=a +this.b=b +this.c=c}, +bhk:function bhk(a,b){this.a=a +this.b=b}, +bhm:function bhm(a,b){this.a=a +this.b=b}, +ie:function ie(){}, +vl:function vl(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}, +zI:function zI(a,b,c){this.b=a +this.a=b +this.$ti=c}, +jP:function jP(a,b,c){this.b=a +this.a=b +this.$ti=c}, +RC:function RC(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +FW:function FW(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}, +QN:function QN(a,b,c){this.b=a +this.a=b +this.$ti=c}, +Rf:function Rf(a){this.a=a}, +FR:function FR(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}, +FY:function FY(){}, +lm:function lm(a,b,c){this.a=a +this.b=b +this.$ti=c}, +F8:function F8(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +TM:function TM(a,b){this.a=a +this.$ti=b}, +be4:function be4(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +amL:function amL(a,b){this.a=a +this.b=b}, +amK:function amK(){}, +bie:function bie(a,b){this.a=a +this.b=b}, +ajN:function ajN(){}, +bcD:function bcD(a,b,c){this.a=a +this.b=b +this.c=c}, +bcB:function bcB(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bcC:function bcC(a,b){this.a=a +this.b=b}, +bcE:function bcE(a,b,c){this.a=a +this.b=b +this.c=c}, +ir(a,b,c,d,e){if(c==null)if(b==null){if(a==null)return new A.rp(d.i("@<0>").aH(e).i("rp<1,2>")) +b=A.bpe()}else{if(A.bzE()===b&&A.bzD()===a)return new A.vr(d.i("@<0>").aH(e).i("vr<1,2>")) +if(a==null)a=A.bpd()}else{if(b==null)b=A.bpe() +if(a==null)a=A.bpd()}return A.bPu(a,b,c,d,e)}, +bom(a,b){var s=a[b] +return s===a?null:s}, +boo(a,b,c){if(c==null)a[b]=a +else a[b]=c}, +bon(){var s=Object.create(null) +A.boo(s,"",s) +delete s[""] +return s}, +bPu(a,b,c,d,e){var s=c!=null?c:new A.b0w(d) +return new A.QD(a,b,s,d.i("@<0>").aH(e).i("QD<1,2>"))}, +kR(a,b,c,d){if(b==null){if(a==null)return new A.iR(c.i("@<0>").aH(d).i("iR<1,2>")) +b=A.bpe()}else{if(A.bzE()===b&&A.bzD()===a)return new A.Kf(c.i("@<0>").aH(d).i("Kf<1,2>")) +if(a==null)a=A.bpd()}return A.bQd(a,b,null,c,d)}, +C(a,b,c){return A.bzQ(a,new A.iR(b.i("@<0>").aH(c).i("iR<1,2>")))}, +w(a,b){return new A.iR(a.i("@<0>").aH(b).i("iR<1,2>"))}, +bQd(a,b,c,d,e){return new A.S_(a,b,new A.b95(d),d.i("@<0>").aH(e).i("S_<1,2>"))}, +dD(a){return new A.p4(a.i("p4<0>"))}, +bop(){var s=Object.create(null) +s[""]=s +delete s[""] +return s}, +tV(a){return new A.kp(a.i("kp<0>"))}, +bn(a){return new A.kp(a.i("kp<0>"))}, +cI(a,b){return A.bVL(a,new A.kp(b.i("kp<0>")))}, +bot(){var s=Object.create(null) +s[""]=s +delete s[""] +return s}, +dr(a,b,c){var s=new A.vt(a,b,c.i("vt<0>")) +s.c=a.e +return s}, +bSq(a,b){return J.e(a,b)}, +bSr(a){return J.W(a)}, +bJ8(a,b,c){var s=A.ir(null,null,null,b,c) +a.az(0,new A.aB0(s,b,c)) +return s}, +bmp(a,b){var s,r,q=A.dD(b) +for(s=a.length,r=0;r=s.gt(a))return null +return s.c2(a,b)}, +f7(a,b,c){var s=A.kR(null,null,b,c) +J.fz(a,new A.aEY(s,b,c)) +return s}, +qg(a,b,c){var s=A.kR(null,null,b,c) +s.G(0,a) +return s}, +tW(a,b){var s,r=A.tV(b) +for(s=J.ay(a);s.u();)r.q(0,b.a(s.gI(s))) +return r}, +f8(a,b){var s=A.tV(b) +s.G(0,a) +return s}, +bQe(a,b){return new A.Fg(a,a.a,a.c,b.i("Fg<0>"))}, +bKt(a,b){var s=t.b8 +return J.GB(s.a(a),s.a(b))}, +co(a){var s,r={} +if(A.bpz(a))return"{...}" +s=new A.cD("") +try{$.zT.push(a) +s.a+="{" +r.a=!0 +J.fz(a,new A.aFC(r,s)) +s.a+="}"}finally{$.zT.pop()}r=s.a +return r.charCodeAt(0)==0?r:r}, +ej(a,b){return new A.Kx(A.bO(A.bKv(a),null,!1,b.i("0?")),b.i("Kx<0>"))}, +bKv(a){if(a==null||a<8)return 8 +else if((a&a-1)>>>0!==0)return A.bu1(a) +return a}, +bu1(a){var s +a=(a<<1>>>0)-1 +for(;!0;a=s){s=(a&a-1)>>>0 +if(s===0)return a}}, +bou(a,b){return new A.Fh(a,a.c,a.d,a.b,b.i("Fh<0>"))}, +bSx(a,b){return J.GB(a,b)}, +byv(a){if(a.i("t(0,0)").b(A.bzB()))return A.bzB() +return A.bV0()}, +bnM(a,b){var s=A.byv(a) +return new A.DG(s,new A.aSd(a),a.i("@<0>").aH(b).i("DG<1,2>"))}, +a8T(a,b,c){var s=a==null?A.byv(c):a,r=b==null?new A.aSh(c):b +return new A.DH(s,r,c.i("DH<0>"))}, +rp:function rp(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +b5b:function b5b(a){this.a=a}, +b5a:function b5a(a,b){this.a=a +this.b=b}, +vr:function vr(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +QD:function QD(a,b,c,d){var _=this +_.f=a +_.r=b +_.w=c +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=d}, +b0w:function b0w(a){this.a=a}, +zl:function zl(a,b){this.a=a +this.$ti=b}, +vm:function vm(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +S_:function S_(a,b,c,d){var _=this +_.w=a +_.x=b +_.y=c +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=d}, +b95:function b95(a){this.a=a}, +p4:function p4(a){var _=this +_.a=0 +_.e=_.d=_.c=_.b=null +_.$ti=a}, +j2:function j2(a,b,c){var _=this +_.a=a +_.b=b +_.c=0 +_.d=null +_.$ti=c}, +kp:function kp(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +b96:function b96(a){this.a=a +this.c=this.b=null}, +vt:function vt(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.$ti=c}, +aB0:function aB0(a,b,c){this.a=a +this.b=b +this.c=c}, +aEY:function aEY(a,b,c){this.a=a +this.b=b +this.c=c}, +qh:function qh(a){var _=this +_.b=_.a=0 +_.c=null +_.$ti=a}, +Fg:function Fg(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.e=!1 +_.$ti=d}, +iS:function iS(){}, +S:function S(){}, +bw:function bw(){}, +aFB:function aFB(a){this.a=a}, +aFC:function aFC(a,b){this.a=a +this.b=b}, +Ei:function Ei(){}, +S2:function S2(a,b){this.a=a +this.$ti=b}, +agW:function agW(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.$ti=c}, +Uh:function Uh(){}, +KK:function KK(){}, +li:function li(a,b){this.a=a +this.$ti=b}, +QS:function QS(){}, +QR:function QR(a,b,c){var _=this +_.c=a +_.d=b +_.b=_.a=null +_.$ti=c}, +QT:function QT(a){this.b=this.a=null +this.$ti=a}, +IN:function IN(a,b){this.a=a +this.b=0 +this.$ti=b}, +aeU:function aeU(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.$ti=c}, +Kx:function Kx(a,b){var _=this +_.a=a +_.d=_.c=_.b=0 +_.$ti=b}, +Fh:function Fh(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=null +_.$ti=e}, +m1:function m1(){}, +FO:function FO(){}, +akL:function akL(){}, +jR:function jR(a,b){var _=this +_.a=a +_.c=_.b=null +_.$ti=b}, +j6:function j6(a,b,c){var _=this +_.d=a +_.a=b +_.c=_.b=null +_.$ti=c}, +akK:function akK(){}, +DG:function DG(a,b,c){var _=this +_.d=null +_.e=a +_.f=b +_.c=_.b=_.a=0 +_.$ti=c}, +aSd:function aSd(a){this.a=a}, +aSe:function aSe(a,b,c){this.a=a +this.b=b +this.c=c}, +p9:function p9(){}, +ru:function ru(a,b){this.a=a +this.$ti=b}, +zB:function zB(a,b){this.a=a +this.$ti=b}, +TD:function TD(a,b){this.a=a +this.$ti=b}, +rv:function rv(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.$ti=d}, +TH:function TH(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.$ti=d}, +zA:function zA(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.$ti=d}, +DH:function DH(a,b,c){var _=this +_.d=null +_.e=a +_.f=b +_.c=_.b=_.a=0 +_.$ti=c}, +aSh:function aSh(a){this.a=a}, +aSg:function aSg(a,b){this.a=a +this.b=b}, +aSf:function aSf(a,b){this.a=a +this.b=b}, +TE:function TE(){}, +TF:function TF(){}, +TG:function TG(){}, +Ui:function Ui(){}, +zL(a,b){var s,r,q,p=null +try{p=JSON.parse(a)}catch(r){s=A.v(r) +q=A.bL(String(s),null,null) +throw A.d(q)}if(b==null)return A.bhv(p) +else return A.bSg(p,b)}, +bSg(a,b){return b.$2(null,new A.bhw(b).$1(a))}, +bhv(a){var s +if(a==null)return null +if(typeof a!="object")return a +if(!Array.isArray(a))return new A.RX(a,Object.create(null)) +for(s=0;s>>2,l=3-(h&3) +for(s=J.a0(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.hY(b,"Not a byte value at index "+r+": 0x"+J.bF8(s.h(b,r),16),null))}, +bPm(a,b,c,d,e,f){var s,r,q,p,o,n,m="Invalid encoding before padding",l="Invalid character",k=B.e.cA(f,2),j=f&3,i=$.bqa() +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.bL(m,a,s)) +d[e]=k>>>10 +d[e+1]=k>>>2}else{if((k&15)!==0)throw A.d(A.bL(m,a,s)) +d[e]=k>>>4}n=(3-j)*3 +if(q===37)n+=2 +return A.bxb(a,s+1,c,-n-1)}throw A.d(A.bL(l,a,s))}if(r>=0&&r<=127)return(k<<2|j)>>>0 +for(s=b;s127)break +throw A.d(A.bL(l,a,s))}, +bPk(a,b,c,d){var s=A.bPl(a,b,c),r=(d&3)+(s-b),q=B.e.cA(r,2)*3,p=r&3 +if(p!==0&&s0)return new Uint8Array(q) +return $.bCY()}, +bPl(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}, +bxb(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.bL("Invalid padding character",a,b)) +return-s-1}, +bId(a){return $.bBg().h(0,a.toLowerCase())}, +btR(a,b,c){return new A.Kg(a,b)}, +bA7(a,b){return B.a7.lx(a,b)}, +bA6(a,b){return B.a7.jo(0,a,b)}, +bSt(a){return a.ao()}, +bQa(a,b){var s=b==null?A.bzz():b +return new A.agw(a,[],s)}, +bxu(a,b,c){var s,r=new A.cD("") +A.bos(a,r,b,c) +s=r.a +return s.charCodeAt(0)==0?s:s}, +bos(a,b,c,d){var s,r +if(d==null)s=A.bQa(b,c) +else{r=c==null?A.bzz():c +s=new A.b8U(d,0,b,[],r)}s.vT(a)}, +bQb(a,b,c){var s,r,q +for(s=J.a0(a),r=b,q=0;r>>0 +if(q>=0&&q<=255)return +A.bQc(a,b,c)}, +bQc(a,b,c){var s,r,q +for(s=J.a0(a),r=b;r255)throw A.d(A.bL("Source contains non-Latin-1 characters.",a,r))}}, +by9(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""}}, +bhw:function bhw(a){this.a=a}, +RX:function RX(a,b){this.a=a +this.b=b +this.c=null}, +b8R:function b8R(a){this.a=a}, +agv:function agv(a){this.a=a}, +Fd:function Fd(a,b,c){this.b=a +this.c=b +this.a=c}, +bgb:function bgb(){}, +bga:function bga(){}, +Ww:function Ww(){}, +amd:function amd(){}, +Wy:function Wy(a){this.a=a}, +ame:function ame(a,b){this.a=a +this.b=b}, +amc:function amc(){}, +Wx:function Wx(a,b){this.a=a +this.b=b}, +b2V:function b2V(a){this.a=a}, +bdE:function bdE(a){this.a=a}, +aqd:function aqd(){}, +WQ:function WQ(){}, +PZ:function PZ(a){this.a=0 +this.b=a}, +aZh:function aZh(a){this.c=null +this.a=0 +this.b=a}, +aYX:function aYX(){}, +aYD:function aYD(a,b){this.a=a +this.b=b}, +bg8:function bg8(a,b){this.a=a +this.b=b}, +WP:function WP(){}, +ad2:function ad2(){this.a=0}, +ad3:function ad3(a,b){this.a=a +this.b=b}, +Xb:function Xb(){}, +vg:function vg(a){this.a=a}, +Qf:function Qf(a,b){this.a=a +this.b=b +this.c=0}, +Xl:function Xl(){}, +akq:function akq(a,b,c){this.a=a +this.b=b +this.$ti=c}, +zf:function zf(a,b){this.a=a +this.b=b}, +Xv:function Xv(){}, +bI:function bI(){}, +asX:function asX(a){this.a=a}, +Rx:function Rx(a,b,c){this.a=a +this.b=b +this.$ti=c}, +pN:function pN(){}, +Kg:function Kg(a,b){this.a=a +this.b=b}, +a1i:function a1i(a,b){this.a=a +this.b=b}, +aD3:function aD3(){}, +a1k:function a1k(a,b){this.a=a +this.b=b}, +b8Q:function b8Q(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1}, +a1j:function a1j(a){this.a=a}, +b8V:function b8V(){}, +b8W:function b8W(a,b){this.a=a +this.b=b}, +b8S:function b8S(){}, +b8T:function b8T(a,b){this.a=a +this.b=b}, +agw:function agw(a,b,c){this.c=a +this.a=b +this.b=c}, +b8U:function b8U(a,b,c,d,e){var _=this +_.f=a +_.y$=b +_.c=c +_.a=d +_.b=e}, +a1r:function a1r(){}, +a1t:function a1t(a){this.a=a}, +a1s:function a1s(a,b){this.a=a +this.b=b}, +agA:function agA(a){this.a=a}, +b8Y:function b8Y(a){this.a=a}, +nr:function nr(){}, +b_a:function b_a(a,b){this.a=a +this.b=b}, +be9:function be9(a,b){this.a=a +this.b=b}, +G_:function G_(){}, +zC:function zC(a){this.a=a}, +amj:function amj(a,b,c){this.a=a +this.b=b +this.c=c}, +bg9:function bg9(a,b,c){this.a=a +this.b=b +this.c=c}, +a9Z:function a9Z(){}, +Po:function Po(){}, +amh:function amh(a){this.b=this.a=0 +this.c=a}, +ami:function ami(a,b){var _=this +_.d=a +_.b=_.a=0 +_.c=b}, +Pn:function Pn(a){this.a=a}, +vL:function vL(a){this.a=a +this.b=16 +this.c=0}, +an8:function an8(){}, +aob:function aob(){}, +bW4(a){return A.rT(a)}, +blZ(){return new A.Je(new WeakMap())}, +wL(a){if(A.mo(a)||typeof a=="number"||typeof a=="string"||a instanceof A.nI)A.wK(a)}, +wK(a){throw A.d(A.hY(a,"object","Expandos are not allowed on strings, numbers, bools, records or null"))}, +bRA(){if(typeof WeakRef=="function")return WeakRef +var s=function LeakRef(a){this._=a} +s.prototype={ +deref(){return this._}} +return s}, +c0(a,b){var s=A.na(a,b) +if(s!=null)return s +throw A.d(A.bL(a,null,null))}, +pi(a){var s=A.oG(a) +if(s!=null)return s +throw A.d(A.bL("Invalid double",a,null))}, +bIt(a,b){a=A.d(a) +a.stack=b.j(0) +throw a +throw A.d("unreachable")}, +bO(a,b,c,d){var s,r=c?J.BK(a,d):J.Kb(a,d) +if(a!==0&&b!=null)for(s=0;s")) +for(s=J.ay(a);s.u();)r.push(s.gI(s)) +if(b)return r +return J.aCU(r)}, +a8(a,b,c){var s +if(b)return A.bu3(a,c) +s=J.aCU(A.bu3(a,c)) +return s}, +bu3(a,b){var s,r +if(Array.isArray(a))return A.a(a.slice(0),b.i("E<0>")) +s=A.a([],b.i("E<0>")) +for(r=J.ay(a);r.u();)s.push(r.gI(r)) +return s}, +bu4(a,b,c,d){var s,r=c?J.BK(a,d):J.Kb(a,d) +for(s=0;s0||c0)a=J.A1(a,b) +return A.bv7(A.a8(a,!0,t.S))}, +aT_(a){return A.ek(a)}, +bO_(a,b,c){var s=a.length +if(b>=s)return"" +return A.bMr(a,b,c==null||c>s?s:c)}, +bB(a,b,c,d){return new A.oo(a,A.bmz(a,c,b,d,!1,!1))}, +bW3(a,b){return a==null?b==null:a===b}, +bNY(a){return new A.cD(a)}, +aST(a,b,c){var s=J.ay(b) +if(!s.u())return a +if(c.length===0){do a+=A.c(s.gI(s)) +while(s.u())}else{a+=A.c(s.gI(s)) +for(;s.u();)a=a+c+A.c(s.gI(s))}return a}, +oz(a,b){return new A.qo(a,b.gaXd(),b.gaZt(),b.gaXF())}, +lj(){var s,r,q=A.bMl() +if(q==null)throw A.d(A.ag("'Uri.base' is not supported")) +s=$.bwL +if(s!=null&&q===$.bwK)return s +r=A.f1(q) +$.bwL=r +$.bwK=q +return r}, +rB(a,b,c,d){var s,r,q,p,o,n="0123456789ABCDEF" +if(c===B.a5){s=$.bDa() +s=s.b.test(b)}else s=!1 +if(s)return b +r=c.lw(b) +for(s=r.length,q=0,p="";q>>4]&1<<(o&15))!==0)p+=A.ek(o) +else p=d&&o===32?p+"+":p+"%"+n[o>>>4&15]+n[o&15]}return p.charCodeAt(0)==0?p:p}, +bRu(a){var s,r,q +if(!$.bDb())return A.bRv(a) +s=new URLSearchParams() +a.az(0,new A.bg5(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":"~")}, +h3(){return A.aT(new Error())}, +bGl(a,b){return J.GB(a,b)}, +brV(a,b,c,d,e,f,g){var s=A.bv8(a,b,c,d,e,f,g,0,!1) +if(s==null)s=864e14 +if(s===864e14)A.V(A.bl("("+a+", "+b+", "+c+", "+d+", "+e+", "+f+", "+g+", 0)",null)) +return new A.aS(s,0,!1)}, +bGV(a,b,c,d,e,f,g){var s=A.bv8(a,b,c,d,e,f,g,0,!0) +if(s==null)s=864e14 +if(s===864e14)A.V(A.bl("("+a+", "+b+", "+c+", "+d+", "+e+", "+f+", "+g+", 0)",null)) +return new A.aS(s,0,!0)}, +bGU(){return new A.aS(Date.now(),0,!1)}, +o9(a,b,c){var s="microsecond" +if(b<0||b>999)throw A.d(A.dn(b,0,999,s,null)) +if(a<-864e13||a>864e13)throw A.d(A.dn(a,-864e13,864e13,"millisecondsSinceEpoch",null)) +if(a===864e13&&b!==0)throw A.d(A.hY(b,s,"Time including microseconds is outside valid range")) +A.ez(c,"isUtc",t.y) +return a}, +brW(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}, +bGW(a){var s=Math.abs(a),r=a<0?"-":"+" +if(s>=1e5)return r+s +return r+"0"+s}, +au5(a){if(a>=100)return""+a +if(a>=10)return"0"+a +return"00"+a}, +pB(a){if(a>=10)return""+a +return"0"+a}, +dA(a,b,c){return new A.bj(a+1000*b+1e6*c)}, +wH(a){if(typeof a=="number"||A.mo(a)||a==null)return J.p(a) +if(typeof a=="string")return JSON.stringify(a) +return A.bv6(a)}, +blW(a,b){A.ez(a,"error",t.K) +A.ez(b,"stackTrace",t.Km) +A.bIt(a,b)}, +lz(a){return new A.w2(a)}, +bl(a,b){return new A.jf(!1,null,b,a)}, +hY(a,b,c){return new A.jf(!0,a,b,c)}, +bkQ(a){return new A.jf(!1,null,a,"Must not be null")}, +f3(a,b){return a}, +h1(a){var s=null +return new A.CZ(s,s,!1,s,s,a)}, +a6r(a,b){return new A.CZ(null,null,!0,a,b,"Value not in range")}, +dn(a,b,c,d,e){return new A.CZ(b,c,!0,a,d,"Invalid value")}, +bvd(a,b,c,d){if(ac)throw A.d(A.dn(a,b,c,d,null)) +return a}, +dL(a,b,c,d,e){if(0>a||a>c)throw A.d(A.dn(a,0,c,d==null?"start":d,null)) +if(b!=null){if(a>b||b>c)throw A.d(A.dn(b,a,c,e==null?"end":e,null)) +return b}return c}, +eu(a,b){if(a<0)throw A.d(A.dn(a,0,null,b,null)) +return a}, +a18(a,b,c,d,e){var s=e==null?b.gt(b):e +return new A.JZ(s,!0,a,c,"Index out of range")}, +eZ(a,b,c,d,e){return new A.JZ(b,!0,a,e,"Index out of range")}, +bmw(a,b,c,d,e){if(0>a||a>=b)throw A.d(A.eZ(a,b,c,d,e==null?"index":e)) +return a}, +ag(a){return new A.z2(a)}, +cE(a){return new A.z1(a)}, +a1(a){return new A.ld(a)}, +cZ(a){return new A.XB(a)}, +ae(a){return new A.zj(a)}, +bL(a,b,c){return new A.ip(a,b,c)}, +bJG(a,b,c){if(a<=0)return new A.jk(c.i("jk<0>")) +return new A.Rz(a,b,c.i("Rz<0>"))}, +tM(a,b,c){var s,r +if(A.bpz(a)){if(b==="("&&c===")")return"(...)" +return b+"..."+c}s=A.a([],t.s) +$.zT.push(a) +try{A.bTw(a,s)}finally{$.zT.pop()}r=A.aST(b,s,", ")+c +return r.charCodeAt(0)==0?r:r}, +jr(a,b,c){var s,r +if(A.bpz(a))return b+"..."+c +s=new A.cD(b) +$.zT.push(a) +try{r=s +r.a=A.aST(r.a,a,", ")}finally{$.zT.pop()}s.a+=c +r=s.a +return r.charCodeAt(0)==0?r:r}, +bTw(a,b){var s,r,q,p,o,n,m,l=J.ay(a),k=0,j=0 +while(!0){if(!(k<80||j<3))break +if(!l.u())return +s=A.c(l.gI(l)) +b.push(s) +k+=s.length+2;++j}if(!l.u()){if(j<=5)return +r=b.pop() +q=b.pop()}else{p=l.gI(l);++j +if(!l.u()){if(j<=4){b.push(A.c(p)) +return}r=A.c(p) +q=b.pop() +k+=r.length+2}else{o=l.gI(l);++j +for(;l.u();p=o,o=n){n=l.gI(l);++j +if(j>100){while(!0){if(!(k>75&&j>3))break +k-=b.pop().length+2;--j}b.push("...") +return}}q=A.c(p) +r=A.c(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)}, +bua(a,b,c,d,e){return new A.wb(a,b.i("@<0>").aH(c).aH(d).aH(e).i("wb<1,2,3,4>"))}, +bu9(a,b,c){var s=A.w(b,c) +s.Jv(s,a) +return s}, +bAj(a){var s=A.bjF(a) +if(s!=null)return s +throw A.d(A.bL(a,null,null))}, +bjF(a){var s=B.c.cw(a),r=A.na(s,null) +return r==null?A.oG(s):r}, +a4(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.bO6(J.W(a),J.W(b),$.hr()) +if(B.a===d){s=J.W(a) +b=J.W(b) +c=J.W(c) +return A.hN(A.a6(A.a6(A.a6($.hr(),s),b),c))}if(B.a===e)return A.bO7(J.W(a),J.W(b),J.W(c),J.W(d),$.hr()) +if(B.a===f){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e))}if(B.a===g){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f))}if(B.a===h){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g))}if(B.a===i){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h))}if(B.a===j){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i))}if(B.a===k){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j))}if(B.a===l){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +k=J.W(k) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j),k))}if(B.a===m){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +k=J.W(k) +l=J.W(l) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j),k),l))}if(B.a===n){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +k=J.W(k) +l=J.W(l) +m=J.W(m) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j),k),l),m))}if(B.a===o){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +k=J.W(k) +l=J.W(l) +m=J.W(m) +n=J.W(n) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j),k),l),m),n))}if(B.a===p){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +k=J.W(k) +l=J.W(l) +m=J.W(m) +n=J.W(n) +o=J.W(o) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o))}if(B.a===q){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +k=J.W(k) +l=J.W(l) +m=J.W(m) +n=J.W(n) +o=J.W(o) +p=J.W(p) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p))}if(B.a===r){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +k=J.W(k) +l=J.W(l) +m=J.W(m) +n=J.W(n) +o=J.W(o) +p=J.W(p) +q=J.W(q) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q))}if(B.a===a0){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +k=J.W(k) +l=J.W(l) +m=J.W(m) +n=J.W(n) +o=J.W(o) +p=J.W(p) +q=J.W(q) +r=J.W(r) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q),r))}if(B.a===a1){s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +k=J.W(k) +l=J.W(l) +m=J.W(m) +n=J.W(n) +o=J.W(o) +p=J.W(p) +q=J.W(q) +r=J.W(r) +a0=J.W(a0) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q),r),a0))}s=J.W(a) +b=J.W(b) +c=J.W(c) +d=J.W(d) +e=J.W(e) +f=J.W(f) +g=J.W(g) +h=J.W(h) +i=J.W(i) +j=J.W(j) +k=J.W(k) +l=J.W(l) +m=J.W(m) +n=J.W(n) +o=J.W(o) +p=J.W(p) +q=J.W(q) +r=J.W(r) +a0=J.W(a0) +a1=J.W(a1) +return A.hN(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6(A.a6($.hr(),s),b),c),d),e),f),g),h),i),j),k),l),m),n),o),p),q),r),a0),a1))}, +cj(a){var s,r=$.hr() +for(s=J.ay(a);s.u();)r=A.a6(r,J.W(s.gI(s))) +return A.hN(r)}, +dJ(a){var s=A.c(a),r=$.aoI +if(r==null)A.aoH(s) +else r.$1(s)}, +aRr(a,b,c,d){return new A.td(a,b,c.i("@<0>").aH(d).i("td<1,2>"))}, +bw0(){$.rW() +return new A.r1()}, +bym(a,b){return 65536+((a&1023)<<10)+(b&1023)}, +f1(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=null,a4=a5.length +if(a4>=5){s=((a5.charCodeAt(4)^58)*3|a5.charCodeAt(0)^100|a5.charCodeAt(1)^97|a5.charCodeAt(2)^116|a5.charCodeAt(3)^97)>>>0 +if(s===0)return A.bwJ(a4=14)r[7]=a4 +q=r[1] +if(q>=0)if(A.bza(a5,0,q,20,r)===20)r[7]=q +p=r[2]+1 +o=r[3] +n=r[4] +m=r[5] +l=r[6] +if(lq+3)){i=o>0 +if(!(i&&o+1===n)){if(!B.c.eZ(a5,"\\",n))if(p>0)h=B.c.eZ(a5,"\\",p-1)||B.c.eZ(a5,"\\",p-2) +else h=!1 +else h=!0 +if(!h){if(!(mn+2&&B.c.eZ(a5,"/..",m-3) +else h=!0 +if(!h)if(q===4){if(B.c.eZ(a5,"file",0)){if(p<=0){if(!B.c.eZ(a5,"/",n)){g="file:///" +s=3}else{g="file://" +s=2}a5=g+B.c.R(a5,n,a4) +m+=s +l+=s +a4=a5.length +p=7 +o=7 +n=7}else if(n===m){++l +f=m+1 +a5=B.c.lK(a5,n,m,"/");++a4 +m=f}j="file"}else if(B.c.eZ(a5,"http",0)){if(i&&o+3===n&&B.c.eZ(a5,"80",o+1)){l-=3 +e=n-3 +m-=3 +a5=B.c.lK(a5,o,n,"") +a4-=3 +n=e}j="http"}}else if(q===5&&B.c.eZ(a5,"https",0)){if(i&&o+4===n&&B.c.eZ(a5,"443",o+1)){l-=4 +e=n-4 +m-=4 +a5=B.c.lK(a5,o,n,"") +a4-=3 +n=e}j="https"}k=!h}}}}if(k)return new A.mn(a40)j=A.bg6(a5,0,q) +else{if(q===0)A.G7(a5,0,"Invalid empty scheme") +j=""}d=a3 +if(p>0){c=q+3 +b=c9)k.$2("invalid character",s)}else{if(q===3)k.$2(m,s) +o=A.c0(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.c0(B.c.R(a,r,c),null) +if(o>255)k.$2(l,r) +j[q]=o +return j}, +bwN(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d=new A.aVj(a),c=new A.aVk(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.V(A.dn(0,0,p.gt(q),null,null)) +if(A.aoJ(q,"/",0)){s=A.ag("Illegal path character "+A.c(q)) +throw A.d(s)}}}, +bRt(a,b){var s=null,r=A.a(a.split("/"),t.s) +if(B.c.ba(a,"/"))return A.rA(s,s,s,r,s,s,s,"file",s) +else return A.rA(s,s,s,r,s,s,s,s,s)}, +bRq(a){var s +if(a.length===0)return B.IY +s=A.by7(a) +s.ahj(s,A.bzC()) +return A.bl7(s,t.N,t.yp)}, +Um(a,b){if(a!=null&&a===A.bxY(b))return null +return a}, +by1(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.G7(a,b,"Missing end `]` to match `[` in host") +r=b+1 +q=A.bRp(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.cD("") +if(r>>4]&1<<(o&15))!==0){if(p&&65<=o&&90>=o){if(q==null)q=new A.cD("") +if(r>>4]&1<<(o&15))!==0)A.G7(a,s,"Invalid character") +else{j=1 +if((o&64512)===55296&&s+1>>4]&1<<(q&15))!==0))A.G7(a,s,"Illegal scheme character") +if(65<=q&&q<=90)r=!0}a=B.c.R(a,b,c) +return A.bRn(r?a.toLowerCase():a)}, +bRn(a){if(a==="http")return"http" +if(a==="file")return"file" +if(a==="https")return"https" +if(a==="package")return"package" +return a}, +by2(a,b,c){if(a==null)return"" +return A.Un(a,b,c,B.a3P,!1,!1)}, +boI(a,b,c,d,e,f){var s,r=e==="file",q=r||f +if(a==null){if(d==null)return r?"/":"" +s=new A.ad(d,new A.bg1(),A.af(d).i("ad<1,h>")).bJ(0,"/")}else if(d!=null)throw A.d(A.bl("Both path and pathSegments specified",null)) +else s=A.Un(a,b,c,B.Af,!0,!0) +if(s.length===0){if(r)return"/"}else if(q&&!B.c.ba(s,"/"))s="/"+s +return A.by5(s,e,f)}, +by5(a,b,c){var s=b.length===0 +if(s&&!c&&!B.c.ba(a,"/")&&!B.c.ba(a,"\\"))return A.boK(a,!s||c) +return A.zE(a)}, +bg2(a,b,c,d){if(a!=null){if(d!=null)throw A.d(A.bl("Both query and queryParameters specified",null)) +return A.Un(a,b,c,B.lW,!0,!1)}if(d==null)return null +return A.bRu(d)}, +bRv(a){var s={},r=new A.cD("") +s.a="" +a.az(0,new A.bg3(new A.bg4(s,r))) +s=r.a +return s.charCodeAt(0)==0?s:s}, +by0(a,b,c){if(a==null)return null +return A.Un(a,b,c,B.lW,!0,!1)}, +boJ(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.bjk(s) +p=A.bjk(r) +if(q<0||p<0)return"%" +o=q*16+p +if(o<127&&(B.hB[B.e.cA(o,4)]&1<<(o&15))!==0)return A.ek(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}, +boH(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.e.a82(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.ia(s,0,null)}, +Un(a,b,c,d,e,f){var s=A.by4(a,b,c,d,e,f) +return s==null?B.c.R(a,b,c):s}, +by4(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{n=1 +if(o===37){m=A.boJ(a,r,!1) +if(m==null){r+=3 +continue}if("%"===m)m="%25" +else n=3}else if(o===92&&f)m="/" +else if(s&&o<=93&&(B.B8[o>>>4]&1<<(o&15))!==0){A.G7(a,r,"Invalid character") +n=i +m=n}else{if((o&64512)===55296){l=r+1 +if(l=2&&A.by_(a.charCodeAt(0)))for(s=1;s127||(B.zS[r>>>4]&1<<(r&15))===0)break}return a}, +bRx(a,b){if(a.jw("package")&&a.c==null)return A.bzd(b,0,b.length) +return-1}, +bRr(){return A.a([],t.s)}, +by7(a){var s,r,q,p,o,n=A.w(t.N,t.yp),m=new A.bg7(a,B.a5,n) +for(s=a.length,r=0,q=0,p=-1;r127)throw A.d(A.bl("Illegal percent encoding in URI",null)) +if(r===37){if(o+3>q)throw A.d(A.bl("Truncated URI",null)) +p.push(A.bRs(a,o+1)) +o+=2}else if(e&&r===43)p.push(32) +else p.push(r)}}return d.ei(0,p)}, +by_(a){var s=a|32 +return 97<=s&&s<=122}, +bwJ(a,b,c){var s,r,q,p,o,n,m,l,k="Invalid MIME type",j=A.a([b-1],t.t) +for(s=a.length,r=b,q=-1,p=null;rb)throw A.d(A.bL(k,a,r)) +for(;p!==44;){j.push(r);++r +for(o=-1;r=0)j.push(o) +else{n=B.b.gY(j) +if(p!==44||r!==n+7||!B.c.eZ(a,"base64",n+1))throw A.d(A.bL("Expecting '='",a,r)) +break}}j.push(r) +m=r+1 +if((j.length&1)===1)a=B.ct.aXK(0,a,m,s) +else{l=A.by4(a,m,s,B.lW,!0,!1) +if(l!=null)a=B.c.lK(a,m,s,l)}return new A.aVh(a,j,c)}, +bSi(){var s,r,q,p,o,n="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-._~!$&'()*+,;=",m=".",l=":",k="/",j="\\",i="?",h="#",g="/\\",f=J.mU(22,t.D) +for(s=0;s<22;++s)f[s]=new Uint8Array(96) +r=new A.bhx(f) +q=new A.bhy() +p=new A.bhz() +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}, +bza(a,b,c,d,e){var s,r,q,p,o=$.bE4() +for(s=b;s95?31:q] +d=p&31 +e[p>>>5]=s}return d}, +bxM(a){if(a.b===7&&B.c.ba(a.a,"package")&&a.c<=0)return A.bzd(a.a,a.e,a.f) +return-1}, +bUs(a,b){return A.Ky(b,t.N)}, +bzd(a,b,c){var s,r,q +for(s=b,r=0;s")) +s.S1() +return s}, +bzl(a,b){var s=$.ab +if(s===B.aO)return a +return s.US(a,b)}, +bM:function bM(){}, +W4:function W4(){}, +Wb:function Wb(){}, +Wu:function Wu(){}, +t8:function t8(){}, +WY:function WY(){}, +X6:function X6(){}, +X9:function X9(){}, +o4:function o4(){}, +XJ:function XJ(){}, +HS:function HS(){}, +XK:function XK(){}, +dO:function dO(){}, +AF:function AF(){}, +asZ:function asZ(){}, +lG:function lG(){}, +mA:function mA(){}, +XL:function XL(){}, +XM:function XM(){}, +XN:function XN(){}, +ZL:function ZL(){}, +ZM:function ZM(){}, +ZW:function ZW(){}, +a_j:function a_j(){}, +a_u:function a_u(){}, +IL:function IL(){}, +IM:function IM(){}, +a_x:function a_x(){}, +a_z:function a_z(){}, +bv:function bv(){}, +bd:function bd(){}, +a_Z:function a_Z(){}, +am:function am(){}, +iO:function iO(){}, +Bg:function Bg(){}, +a0b:function a0b(){}, +a0o:function a0o(){}, +a0q:function a0q(){}, +jo:function jo(){}, +a0w:function a0w(){}, +a0O:function a0O(){}, +x7:function x7(){}, +a11:function a11(){}, +BC:function BC(){}, +a1d:function a1d(){}, +a1p:function a1p(){}, +a1T:function a1T(){}, +a3V:function a3V(){}, +a3W:function a3W(){}, +u3:function u3(){}, +Cb:function Cb(){}, +a40:function a40(){}, +a41:function a41(){}, +aIC:function aIC(a){this.a=a}, +aID:function aID(a){this.a=a}, +aIE:function aIE(a){this.a=a}, +a42:function a42(){}, +aIF:function aIF(a){this.a=a}, +aIG:function aIG(a){this.a=a}, +aIH:function aIH(a){this.a=a}, +xG:function xG(){}, +jt:function jt(){}, +a43:function a43(){}, +bX:function bX(){}, +LJ:function LJ(){}, +a50:function a50(){}, +a5d:function a5d(){}, +a5n:function a5n(){}, +a5Q:function a5Q(){}, +jw:function jw(){}, +a66:function a66(){}, +a6e:function a6e(){}, +a6f:function a6f(){}, +a6l:function a6l(){}, +Ne:function Ne(){}, +Df:function Df(){}, +a7v:function a7v(){}, +aPz:function aPz(a){this.a=a}, +aPA:function aPA(a){this.a=a}, +aPB:function aPB(a){this.a=a}, +a7X:function a7X(){}, +Dt:function Dt(){}, +a8a:function a8a(){}, +jB:function jB(){}, +a8K:function a8K(){}, +jC:function jC(){}, +a8S:function a8S(){}, +jD:function jD(){}, +a8W:function a8W(){}, +aSu:function aSu(a){this.a=a}, +aSv:function aSv(a){this.a=a}, +aSw:function aSw(a){this.a=a}, +iz:function iz(){}, +a9k:function a9k(){}, +jI:function jI(){}, +iB:function iB(){}, +a9B:function a9B(){}, +a9C:function a9C(){}, +a9D:function a9D(){}, +jJ:function jJ(){}, +a9H:function a9H(){}, +a9I:function a9I(){}, +a9X:function a9X(){}, +aa7:function aa7(){}, +aan:function aan(){}, +PM:function PM(){}, +z9:function z9(){}, +acY:function acY(){}, +adX:function adX(){}, +QP:function QP(){}, +afP:function afP(){}, +Sg:function Sg(){}, +akJ:function akJ(){}, +akW:function akW(){}, +blX:function blX(a,b){this.a=a +this.$ti=b}, +Rg:function Rg(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +Rj:function Rj(a,b,c,d,e){var _=this +_.a=0 +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +b2Y:function b2Y(a){this.a=a}, +b3_:function b3_(a){this.a=a}, +aeg:function aeg(a){this.$ti=a}, +bN:function bN(){}, +a0e:function a0e(a,b,c){var _=this +_.a=a +_.b=b +_.c=-1 +_.d=null +_.$ti=c}, +adY:function adY(){}, +aeP:function aeP(){}, +aeQ:function aeQ(){}, +aeR:function aeR(){}, +aeS:function aeS(){}, +afq:function afq(){}, +afr:function afr(){}, +ag0:function ag0(){}, +ag1:function ag1(){}, +aha:function aha(){}, +ahb:function ahb(){}, +ahc:function ahc(){}, +ahd:function ahd(){}, +ahw:function ahw(){}, +ahx:function ahx(){}, +ahX:function ahX(){}, +ahY:function ahY(){}, +ajR:function ajR(){}, +TB:function TB(){}, +TC:function TC(){}, +akH:function akH(){}, +akI:function akI(){}, +akO:function akO(){}, +alz:function alz(){}, +alA:function alA(){}, +U3:function U3(){}, +U4:function U4(){}, +alK:function alK(){}, +alL:function alL(){}, +amS:function amS(){}, +amT:function amT(){}, +an2:function an2(){}, +an3:function an3(){}, +ane:function ane(){}, +anf:function anf(){}, +anK:function anK(){}, +anL:function anL(){}, +anM:function anM(){}, +anN:function anN(){}, +byq(a){var s,r,q +if(a==null)return a +if(typeof a=="string"||typeof a=="number"||A.mo(a))return a +if(A.bA2(a))return A.mp(a) +s=Array.isArray(a) +s.toString +if(s){r=[] +q=0 +while(!0){s=a.length +s.toString +if(!(q")),r=new A.rx(s,b.i("rx<0>")),q=t.I3 +A.Ri(a,"success",new A.bhp(a,r),!1,q) +A.Ri(a,"error",r.gxV(),!1,q) +return s}, +I6:function I6(){}, +ZC:function ZC(){}, +ZN:function ZN(){}, +bhp:function bhp(a,b){this.a=a +this.b=b}, +a57:function a57(){}, +a58:function a58(){}, +bPz(a,b,c,d,e){throw A.d(A.ag("Directory._fillWithDirectoryListing"))}, +bPN(a,b){throw A.d(A.ag("File._exists"))}, +bxv(){throw A.d(A.ag("_Namespace"))}, +bQh(){throw A.d(A.ag("_Namespace"))}, +bQF(a){throw A.d(A.ag("RandomAccessFile"))}, +bQy(){throw A.d(A.ag("Platform._pathSeparator"))}, +bQx(){throw A.d(A.ag("Platform._operatingSystem"))}, +bQv(){throw A.d(A.ag("Platform._environment"))}, +bQz(){throw A.d(A.ag("Platform._version"))}, +btF(a){throw A.d(A.ag("InternetAddress"))}, +bJA(a,b){throw A.d(A.ag("InternetAddress._cloneWithNewHost"))}, +bME(a,b,c){throw A.d(A.ag("RawSocket constructor"))}, +bMF(a,b){throw A.d(A.ag("RawSocket constructor"))}, +bNM(a,b,c,d,e){throw A.d(A.ag("Socket constructor"))}, +bNN(a,b,c,d){throw A.d(A.ag("Socket constructor"))}, +bnF(a){throw A.d(A.ag("SecureSocket constructor"))}, +bNm(a){throw A.d(A.ag("SecurityContext constructor"))}, +bvH(){throw A.d(A.ag("default SecurityContext getter"))}, +bnr(a,b,c,d,e){throw A.d(A.ag("RawDatagramSocket.bind"))}, +bQV(){throw A.d(A.ag("_SecureFilter._SecureFilter"))}, +bMI(a,b,c,d,e,f,g){throw A.d(A.ag("_newZLibDeflateFilter"))}, +bvf(a,b,c){throw A.d(A.ag("_newZLibInflateFilter"))}, +bQ7(a,b){throw A.d(A.ag("_IOService._dispatch"))}, +pf(a,b,c){var s +if(t.Dn.b(a)&&!J.e(J.i(a,0),0)){s=J.a0(a) +switch(s.h(a,0)){case 1:throw A.d(A.bl(b+": "+c,null)) +case 2:throw A.d(A.bID(new A.ub(A.bS(s.h(a,2)),A.ds(s.h(a,1))),b,c)) +case 3:throw A.d(A.aze("File closed",c,null)) +default:throw A.d(A.lz("Unknown error"))}}}, +byC(a,b,c){var s,r +if(t.D.b(a)&&a.buffer.byteLength===a.length)return new A.adj(a,b) +s=c-b +r=new Uint8Array(s) +B.G.d5(r,0,s,a,b) +return new A.adj(r,0)}, +bP8(a,b,c){A.bUz(c) +return new A.acn(c,a,!1)}, +bMG(a,b){return A.bMI(!1,6,b,8,0,null,!0)}, +bMH(a,b){return A.bvf(b,null,!0)}, +bUz(a){if(8>a||1565535)throw A.d(A.bl("requestedPort is not in the range 0..65535",null)) +A.f3(!1,"requestClientCertificate") +A.f3(!1,"requireClientCertificate")}, +bJ7(a){return new A.q3("HandshakeException",a,null)}, +bNn(a){return new Uint8Array(0)}, +bvZ(a,b,c){var s +A.aBY() +s=A.bNM(a,b,null,0,c) +return s}, +bNO(a,b){var s +A.aBY() +s=A.bNN(a,b,null,0) +return s}, +bNL(a){return new A.no(a)}, +ub:function ub(a,b){this.a=a +this.b=b}, +adj:function adj(a,b){this.a=a +this.b=b}, +acn:function acn(a,b,c){this.a=a +this.b=b +this.c=c}, +aZi:function aZi(a){this.a=a}, +bh2:function bh2(a,b){var _=this +_.a=a +_.b=b +_.c=!1 +_.d=!0}, +afw:function afw(){}, +EN:function EN(a,b){this.a=a +this.b=b}, +b1V:function b1V(a){this.a=a}, +b1U:function b1U(a){this.a=a}, +wS:function wS(a){this.a=a}, +jl:function jl(a,b,c){this.a=a +this.b=b +this.c=c}, +M0:function M0(a,b,c){this.a=a +this.b=b +this.c=c}, +M1:function M1(a,b,c){this.a=a +this.b=b +this.c=c}, +CL:function CL(a,b,c){this.a=a +this.b=b +this.c=c}, +ro:function ro(a,b){this.a=a +this.b=b}, +b3V:function b3V(a){this.a=a}, +b3T:function b3T(a){this.a=a}, +b3U:function b3U(a){this.a=a}, +b3Y:function b3Y(a){this.a=a}, +b3X:function b3X(a){this.a=a}, +b3W:function b3W(a){this.a=a}, +b43:function b43(){}, +b44:function b44(a,b,c){this.a=a +this.b=b +this.c=c}, +b45:function b45(a,b,c){this.a=a +this.b=b +this.c=c}, +b40:function b40(){}, +b41:function b41(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b42:function b42(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b4_:function b4_(a,b){this.a=a +this.b=b}, +b3Z:function b3Z(a,b,c){this.a=a +this.b=b +this.c=c}, +b47:function b47(a,b,c){this.a=a +this.b=b +this.c=c}, +b46:function b46(a,b,c){this.a=a +this.b=b +this.c=c}, +zv:function zv(a,b){var _=this +_.a=a +_.b=!1 +_.c=$ +_.d=b +_.e=!1}, +bbq:function bbq(a){this.a=a}, +bbt:function bbt(a){this.a=a}, +bbs:function bbs(a,b,c){this.a=a +this.b=b +this.c=c}, +bbu:function bbu(a,b,c){this.a=a +this.b=b +this.c=c}, +bbr:function bbr(a){this.a=a}, +Jm:function Jm(a){this.a=a}, +io:function io(){}, +aQC:function aQC(){}, +aQG:function aQG(){}, +aQF:function aQF(){}, +aQD:function aQD(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aQE:function aQE(){}, +aNA:function aNA(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aNC:function aNC(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aNB:function aNB(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +afx:function afx(){var _=this +_.a=!1 +_.c=_.b=!0 +_.r=_.f=_.e=_.d=!1}, +zw:function zw(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}, +bbv:function bbv(a){this.a=a}, +nv:function nv(){}, +q3:function q3(a,b,c){this.a=a +this.b=b +this.c=c}, +Oe:function Oe(){}, +aSa:function aSa(){}, +ke:function ke(a){this.a=a}, +il:function il(a,b,c){this.a=a +this.b=b +this.$ti=c}, +no:function no(a){this.a=a}, +d6(a){var s +if(typeof a=="function")throw A.d(A.bl("Attempting to rewrap a JS function.",null)) +s=function(b,c){return function(d){return b(c,d,arguments.length)}}(A.bRX,a) +s[$.VF()]=a +return s}, +boX(a){var s +if(typeof a=="function")throw A.d(A.bl("Attempting to rewrap a JS function.",null)) +s=function(b,c){return function(d,e){return b(c,d,e,arguments.length)}}(A.bRY,a) +s[$.VF()]=a +return s}, +bRW(a){return a.$0()}, +bRX(a,b,c){if(c>=1)return a.$1(b) +return a.$0()}, +bRY(a,b,c,d){if(d>=2)return a.$2(b,c) +if(d===1)return a.$1(b) +return a.$0()}, +bRZ(a,b,c,d,e){if(e>=3)return a.$3(b,c,d) +if(e===2)return a.$2(b,c) +if(e===1)return a.$1(b) +return a.$0()}, +bz_(a){return a==null||A.mo(a)||typeof a=="number"||typeof a=="string"||t.pT.b(a)||t.D.b(a)||t.W1.b(a)||t.JZ.b(a)||t.w7.b(a)||t.XO.b(a)||t.rd.b(a)||t.s4.b(a)||t.OE.b(a)||t.pI.b(a)||t.V4.b(a)}, +b8(a){if(A.bz_(a))return a +return new A.bjv(new A.vr(t.Fy)).$1(a)}, +pj(a,b){return a[b]}, +bi(a,b,c){return a[b].apply(a,c)}, +bS_(a,b){return a[b]()}, +bS0(a,b,c){return a[b](c)}, +jc(a,b){var s=new A.a_($.ab,b.i("a_<0>")),r=new A.aq(s,b.i("aq<0>")) +a.then(A.rN(new A.bjS(r),1),A.rN(new A.bjT(r),1)) +return s}, +byZ(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}, +bpj(a){if(A.byZ(a))return a +return new A.biC(new A.vr(t.Fy)).$1(a)}, +bjv:function bjv(a){this.a=a}, +bjS:function bjS(a){this.a=a}, +bjT:function bjT(a){this.a=a}, +biC:function biC(a){this.a=a}, +a53:function a53(a){this.a=a}, +bpC(a,b){return Math.max(a,b)}, +bXB(a){return Math.sqrt(a)}, +bVG(a){return Math.exp(a)}, +Vz(a){return Math.log(a)}, +Gq(a,b){return Math.pow(a,b)}, +bMw(a){var s +if(a==null)s=B.fY +else{s=new A.bbp() +s.arh(a)}return s}, +bMx(){return $.bkq()}, +b8N:function b8N(){}, +bbp:function bbp(){this.b=this.a=0}, +b8O:function b8O(a){this.a=a}, +Wc:function Wc(){}, +kQ:function kQ(){}, +a1J:function a1J(){}, +kY:function kY(){}, +a56:function a56(){}, +a67:function a67(){}, +a8Y:function a8Y(){}, +lg:function lg(){}, +a9K:function a9K(){}, +agG:function agG(){}, +agH:function agH(){}, +ahD:function ahD(){}, +ahE:function ahE(){}, +akS:function akS(){}, +akT:function akT(){}, +alQ:function alQ(){}, +alR:function alR(){}, +bFO(a,b,c){return A.eT(a,b,c)}, +bl_(a){var s=a.BYTES_PER_ELEMENT,r=A.dL(0,null,B.e.im(a.byteLength,s),null,null) +return A.eT(a.buffer,a.byteOffset+0*s,r*s)}, +a9P(a,b,c){var s=J.bEK(a) +c=A.dL(b,c,B.e.im(a.byteLength,s),null,null) +return A.dw(a.buffer,a.byteOffset+b*s,(c-b)*s)}, +a_O:function a_O(){}, +oA(a,b,c){if(b==null)if(a==null)return null +else return a.ap(0,1-c) +else if(a==null)return b.ap(0,c) +else return new A.z(A.pg(a.a,b.a,c),A.pg(a.b,b.b,c))}, +bNE(a,b){return new A.R(a,b)}, +NW(a,b,c){if(b==null)if(a==null)return null +else return a.ap(0,1-c) +else if(a==null)return b.ap(0,c) +else return new A.R(A.pg(a.a,b.a,c),A.pg(a.b,b.b,c))}, +bMK(a,b,c,d){return new A.I(a,b,a+c,b+d)}, +nc(a,b){var s=a.a,r=b*2/2,q=a.b +return new A.I(s-r,q-r,s+r,q+r)}, +bnt(a,b,c){var s=a.a,r=c/2,q=a.b,p=b/2 +return new A.I(s-r,q-p,s+r,q+p)}, +uv(a,b){var s=a.a,r=b.a,q=a.b,p=b.b +return new A.I(Math.min(s,r),Math.min(q,p),Math.max(s,r),Math.max(q,p))}, +bnu(a,b,c){var s,r,q,p,o +if(b==null)if(a==null)return null +else{s=1-c +return new A.I(a.a*s,a.b*s,a.c*s,a.d*s)}else{r=b.a +q=b.b +p=b.c +o=b.d +if(a==null)return new A.I(r*c,q*c,p*c,o*c) +else return new A.I(A.pg(a.a,r,c),A.pg(a.b,q,c),A.pg(a.c,p,c),A.pg(a.d,o,c))}}, +Ms(a,b,c){var s,r,q +if(b==null)if(a==null)return null +else{s=1-c +return new A.bg(a.a*s,a.b*s)}else{r=b.a +q=b.b +if(a==null)return new A.bg(r*c,q*c) +else return new A.bg(A.pg(a.a,r,c),A.pg(a.b,q,c))}}, +bMu(a,b,c,d,e,f){return new A.l6(a,b,c,d,e,f,e,f,e,f,e,f,e===f)}, +bvc(a,b,c,d,e){var s=e.a,r=e.b +return new A.l6(a,b,c,d,s,r,s,r,s,r,s,r,s===r)}, +oI(a,b){var s=b.a,r=b.b +return new A.l6(a.a,a.b,a.c,a.d,s,r,s,r,s,r,s,r,s===r)}, +Mq(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.l6(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)}, +a6q(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.l6(a.a,a.b,a.c,a.d,s,r,q,p,m,l,o,n,k)}, +ak(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}, +pg(a,b,c){return a*(1-c)+b*c}, +bi1(a,b,c){return a*(1-c)+b*c}, +M(a,b,c){if(ac)return c +if(isNaN(a))return c +return a}, +bz9(a,b){return A.Y(A.vR(B.d.aa((a.gk(a)>>>24&255)*b),0,255),a.gk(a)>>>16&255,a.gk(a)>>>8&255,a.gk(a)&255)}, +bry(a){return new A.A(a>>>0)}, +Y(a,b,c,d){return new A.A(((a&255)<<24|(b&255)<<16|(c&255)<<8|d&255)>>>0)}, +asq(a,b,c,d){return new A.A(((B.d.cn(d*255,1)&255)<<24|(a&255)<<16|(b&255)<<8|c&255)>>>0)}, +bl4(a){if(a<=0.03928)return a/12.92 +return Math.pow((a+0.055)/1.055,2.4)}, +U(a,b,c){if(b==null)if(a==null)return null +else return A.bz9(a,1-c) +else if(a==null)return A.bz9(b,c) +else return A.Y(A.vR(B.d.aA(A.bi1(a.gk(a)>>>24&255,b.gk(b)>>>24&255,c)),0,255),A.vR(B.d.aA(A.bi1(a.gk(a)>>>16&255,b.gk(b)>>>16&255,c)),0,255),A.vR(B.d.aA(A.bi1(a.gk(a)>>>8&255,b.gk(b)>>>8&255,c)),0,255),A.vR(B.d.aA(A.bi1(a.gk(a)&255,b.gk(b)&255,c)),0,255))}, +Xz(a,b){var s,r,q,p=a.gk(a)>>>24&255 +if(p===0)return b +s=255-p +r=b.gk(b)>>>24&255 +if(r===255)return A.Y(255,B.e.cn(p*(a.gk(a)>>>16&255)+s*(b.gk(b)>>>16&255),255),B.e.cn(p*(a.gk(a)>>>8&255)+s*(b.gk(b)>>>8&255),255),B.e.cn(p*(a.gk(a)&255)+s*(b.gk(b)&255),255)) +else{r=B.e.cn(r*s,255) +q=p+r +return A.Y(q,B.e.im((a.gk(a)>>>16&255)*p+(b.gk(b)>>>16&255)*r,q),B.e.im((a.gk(a)>>>8&255)*p+(b.gk(b)>>>8&255)*r,q),B.e.im((a.gk(a)&255)*p+(b.gk(b)&255)*r,q))}}, +buR(){return $.ap().br()}, +aAV(a,b,c,d,e,f){return $.ap().aR0(0,a,b,c,d,e,null)}, +bJ6(a,b,c,d,e,f,g){var s,r +if(c.length!==d.length)A.V(A.bl('"colors" and "colorStops" arguments must have equal length.',null)) +s=f!=null?A.bk8(f):null +if(g!=null)r=g.l(0,a) +else r=!0 +if(r)return $.ap().aR6(0,a,b,c,d,e,s) +else return $.ap().aQW(g,0,a,b,c,d,e,s)}, +btz(a,b){if(a.length!==16)throw A.d(A.bl('"matrix4" must have 16 entries.',null)) +return $.ap().aR1(a,b)}, +aoB(a,b){return A.bWb(a,b)}, +bWb(a,b){var s=0,r=A.n(t.hP),q,p=2,o,n=[],m,l,k,j,i,h,g,f +var $async$aoB=A.j(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=$.ap() +g=a.a +g.toString +q=h.aeo(g) +s=1 +break +s=4 +break +case 5:h=$.ap() +g=a.a +g.toString +s=6 +return A.f(h.aeo(g),$async$aoB) +case 6:m=d +p=7 +s=10 +return A.f(m.vY(),$async$aoB) +case 10:l=d +try{g=J.apa(l) +k=g.geu(g) +g=J.apa(l) +j=g.gbA(g) +i=b.$2(k,j) +g=a.a +g.toString +f=i.a +f=h.yT(g,!1,i.b,f) +q=f +n=[1] +s=8 +break}finally{J.apa(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.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aoB,r)}, +bNy(a){return a>0?a*0.57735+0.5:0}, +bNz(a,b,c){var s,r,q=A.U(a.a,b.a,c) +q.toString +s=A.oA(a.b,b.b,c) +s.toString +r=A.pg(a.c,b.c,c) +return new A.uJ(q,s,r)}, +bvK(a,b,c){var s,r,q,p=a==null +if(p&&b==null)return null +if(p)a=A.a([],t.kO) +if(b==null)b=A.a([],t.kO) +s=A.a([],t.kO) +r=Math.min(a.length,b.length) +for(q=0;q")) +r.aqL(B.bK,a,s,0,!1,s,s,1,s,B.a0D,b,s,c,s,B.a0G,B.iQ,s,!0,s,s,s,B.Z,s,d,e,s,s,s,s,B.bW,0,s,s,s,B.iQ,s,s,!0,!0,!1,B.i,s,s,s,s,s,f) +return r}, +ty:function ty(a,b,c,d,e,f,g){var _=this +_.r=a +_.x=b +_.Q=c +_.cy=d +_.ok=e +_.y2=null +_.a=f +_.$ti=g}, +Rs:function Rs(a,b,c){var _=this +_.y=_.w=null +_.as=_.Q=_.z=$ +_.at=null +_.ay=_.ax=$ +_.ch=null +_.dI$=a +_.b8$=b +_.c=_.a=null +_.$ti=c}, +b4h:function b4h(a){this.a=a}, +b4j:function b4j(a){this.a=a}, +b4i:function b4i(a){this.a=a}, +a0h:function a0h(a,b){this.a=a +this.b=b}, +azu:function azu(a,b){this.a=a +this.b=b}, +azn:function azn(a,b){this.a=a +this.b=b}, +Bl:function Bl(a,b){this.a=a +this.b=b}, +Ge:function Ge(){}, +bIK(a,b,c){var s=$.ab,r=A.a([],t.wi),q=$.aW(),p=$.ab,o=c.i("a_<0?>"),n=c.i("aq<0?>") +s=new A.tz(a,new A.fi(new A.azr(a),null),new A.aq(new A.a_(s,c.i("a_<0>")),c.i("aq<0>")),null,r,b,new A.cS(null,q),new A.aq(new A.a_(p,o),n),new A.aq(new A.a_(p,o),n),c.i("tz<0>")) +s.auH(a.ok) +return s}, +tz:function tz(a,b,c,d,e,f,g,h,i,j){var _=this +_.Q=a +_.as=b +_.at=c +_.ax=d +_.cx=_.CW=_.ch=_.ay=null +_.cy=!1 +_.dy=_.dx=_.db=null +_.fr="" +_.fy=_.fx=null +_.f=e +_.a=null +_.b=f +_.c=g +_.d=h +_.e=i +_.$ti=j}, +azr:function azr(a){this.a=a}, +azs:function azs(a,b){this.a=a +this.b=b}, +azp:function azp(a){this.a=a}, +azq:function azq(a){this.a=a}, +azt:function azt(a){this.a=a}, +azo:function azo(a){this.a=a}, +bro(a,b){var s=$.ab +return new A.Aj(new A.aq(new A.a_(s,b.i("a_<0>")),b.i("aq<0>")),new A.aq(new A.a_(s,t.U),t.h),a,b.i("Aj<0>"))}, +Hu:function Hu(a,b){this.a=a +this.$ti=b}, +arK:function arK(a,b,c){this.a=a +this.b=b +this.c=c}, +arI:function arI(a,b,c){this.a=a +this.b=b +this.c=c}, +arH:function arH(a,b){this.a=a +this.b=b}, +arJ:function arJ(a,b){this.a=a +this.b=b}, +Aj:function Aj(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=!0 +_.e=$ +_.$ti=d}, +arF:function arF(a){this.a=a}, +arG:function arG(a){this.a=a}, +brl(a,b,c,d,e,f,g,h,i){var s=null +return new A.Ht(new A.tc(s,g,s,1,s,s,s,s,B.a1X),g,h,b,d,c,i,f,e,a,s)}, +Ht:function Ht(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.e=b +_.x=c +_.y=d +_.Q=e +_.at=f +_.ay=g +_.ch=h +_.CW=i +_.fr=j +_.a=k}, +tc:function tc(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}, +aru:function aru(a,b){this.a=a +this.b=b}, +ars:function ars(a){this.a=a}, +arv:function arv(a,b){this.a=a +this.b=b}, +art:function art(a){this.a=a}, +buv(a,b,c,d){var s=new A.a4L(d,c,A.a([],t.XZ),A.a([],t.SM),A.a([],t.qj)) +s.aqU(a,b,c,d) +return s}, +a4L:function a4L(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}, +aJX:function aJX(a){this.a=a}, +aJY:function aJY(a,b){this.a=a +this.b=b}, +aJZ:function aJZ(a,b){this.a=a +this.b=b}, +bab:function bab(a,b){this.a=a +this.b=b}, +aCu:function aCu(a,b){this.a=a +this.b=b}, +TJ:function TJ(a,b){this.a=a +this.b=b}, +a15:function a15(){}, +aCm:function aCm(a){this.a=a}, +aCn:function aCn(a){this.a=a}, +aCi:function aCi(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aCg:function aCg(a){this.a=a}, +aCh:function aCh(a,b,c){this.a=a +this.b=b +this.c=c}, +aCk:function aCk(a,b){this.a=a +this.b=b}, +aCf:function aCf(a){this.a=a}, +aCj:function aCj(a,b,c){this.a=a +this.b=b +this.c=c}, +aCl:function aCl(a){this.a=a}, +aCe:function aCe(a){this.a=a}, +aSU(a,b){A.dL(b,null,a.length,"startIndex","endIndex") +return A.aSV(a,b,b)}, +aSV(a,b,c){var s=a.length +b=A.bXl(a,0,s,b) +return new A.le(a,b,c!==b?A.bWD(a,0,s,c):c)}, +byD(a,b,c,d,e){var s,r,q,p +if(b===c)return B.c.lK(a,b,b,e) +s=B.c.R(a,0,b) +r=new A.lC(a,c,b,176) +for(q=e;p=r.kW(),p>=0;q=d,b=p)s=s+q+B.c.R(a,b,p) +s=s+e+B.c.bE(a,c) +return s.charCodeAt(0)==0?s:s}, +aop(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.bpy(a,c,d,r)&&A.bpy(a,c,d,r+p))return r +c=r+1}return-1}return A.bSS(a,b,c,d)}, +bSS(a,b,c,d){var s,r,q,p=new A.lC(a,d,c,0) +for(s=b.length;r=p.kW(),r>=0;){q=r+s +if(q>d)break +if(B.c.eZ(a,b,r)&&A.bpy(a,c,d,q))return r}return-1}, +ev:function ev(a){this.a=a}, +aSW:function aSW(a){this.a=a}, +le:function le(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +bjy(a,b,c,d){if(d===208)return A.bAd(a,b,c) +if(d===224){if(A.bAc(a,b,c)>=0)return 145 +return 64}throw A.d(A.a1("Unexpected state: "+B.e.hY(d,16)))}, +bAd(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.pk(o,p)!==6)break +r^=1}if(r===0)return 193 +else return 144}, +bAc(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.zR(r) +else{if(s>b){--s +p=a.charCodeAt(s) +o=(p&64512)===55296}else{p=0 +o=!1}if(o)q=A.pk(p,r) +else break}if(q===7)return s +if(q!==4)break}return-1}, +bpy(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.pk(s,n)}else return(q&64512)!==55296 +if((q&64512)!==56320){m=A.zR(q) +d=r}else{d-=2 +if(b<=d){l=a.charCodeAt(d) +if((l&64512)!==55296)return!0 +m=A.pk(l,q)}else return!0}k=j.charCodeAt(j.charCodeAt(p|176)&240|m) +return((k>=208?A.bjy(a,b,d,k):k)&1)===0}return b!==c}, +bXl(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.zR(s) +q=d}else{r=2 +if((s&64512)===55296){p=d+1 +if(pb){o=s-1 +n=a.charCodeAt(o) +if((n&64512)===55296){q=A.pk(n,r) +s=o}}}if(q===6)m=A.bAd(a,b,s)!==144?160:48 +else{l=q===1 +if(l||q===4)if(A.bAc(a,b,s)>=0)m=l?144:128 +else m=48 +else m=u.S.charCodeAt(q|176)}return new A.lC(a,a.length,d,m).kW()}, +lC:function lC(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +H7:function H7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Xs:function Xs(){}, +cP:function cP(){}, +arL:function arL(a){this.a=a}, +arM:function arM(a,b){this.a=a +this.b=b}, +arN:function arN(a){this.a=a}, +arO:function arO(a,b){this.a=a +this.b=b}, +arP:function arP(a){this.a=a}, +arQ:function arQ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +arR:function arR(a,b,c){this.a=a +this.b=b +this.c=c}, +arS:function arS(a){this.a=a}, +ZZ:function ZZ(){}, +a1L:function a1L(a,b){this.a=a +this.$ti=b}, +vJ:function vJ(){}, +Ej:function Ej(a,b){this.a=a +this.$ti=b}, +Dr:function Dr(a,b){this.a=a +this.$ti=b}, +Fj:function Fj(a,b,c){this.a=a +this.b=b +this.c=c}, +KI:function KI(a,b,c){this.a=a +this.b=b +this.$ti=c}, +ZX:function ZX(){}, +a0L:function a0L(a,b,c){var _=this +_.a=a +_.b=b +_.d=_.c=0 +_.$ti=c}, +asH:function asH(){}, +asK:function asK(){}, +asJ:function asJ(){}, +au_:function au_(){this.a=null}, +au0:function au0(a){this.a=a}, +au1:function au1(a){this.a=a}, +asI:function asI(){}, +aIu:function aIu(){this.c=null}, +aIv:function aIv(){}, +fj:function fj(a,b){this.a=a +this.b=b}, +bWJ(a){var s=J.eX(a,new A.bjL(),t.Iw) +return A.a8(s,!0,s.$ti.i("aN.E"))}, +bjL:function bjL(){}, +aBf:function aBf(){}, +byp(a,b,c){var s,r,q,p,o,n,m,l=new Uint8Array((c-b)*2) +for(s=J.a0(a),r=b,q=0,p=0;r>>0 +n=q+1 +m=o>>>4&15 +l[q]=m<10?m+48:m+97-10 +q=n+1 +m=o&15 +l[n]=m<10?m+48:m+97-10}if(p>=0&&p<=255)return A.ia(l,0,null) +for(r=b;r=0&&o<=255)continue +s=o<0?"-":"" +throw A.d(A.bL("Invalid byte "+s+"0x"+B.e.hY(Math.abs(o),16)+".",a,r))}throw A.d(A.a1("unreachable"))}, +a0M:function a0M(){}, +b5r:function b5r(a){this.a=a}, +bT8(a){var s,r,q,p,o="0123456789abcdef",n=a.length,m=new Uint8Array(n*2) +for(s=0,r=0;s>>4&15) +r=p+1 +m[p]=o.charCodeAt(q&15)}return A.ia(m,0,null)}, +mE:function mE(a){this.a=a}, +avp:function avp(){this.a=null}, +a0K:function a0K(){}, +aB1:function aB1(){}, +agU:function agU(){}, +b9o:function b9o(a,b,c,d,e){var _=this +_.w=a +_.a=b +_.b=c +_.c=d +_.d=0 +_.e=e +_.f=!1}, +akf:function akf(){}, +bdg:function bdg(a,b,c,d,e,f){var _=this +_.w=a +_.x=b +_.a=c +_.b=d +_.c=e +_.d=0 +_.e=f +_.f=!1}, +akg:function akg(){}, +bdi:function bdi(){}, +bdh:function bdh(a,b,c,d,e,f){var _=this +_.w=a +_.x=b +_.a=c +_.b=d +_.c=e +_.d=0 +_.e=f +_.f=!1}, +auF:function auF(a){this.a=a}, +auE:function auE(){}, +aIw:function aIw(){}, +yg:function yg(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e +_.r=f}, +Xd:function Xd(a){this.a=a +this.c=this.b=null}, +bPy(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"}}, +tp(a,b,c,d,e,f){var s +if(e===B.iA){s=c.ch +if(s==null)s=A.h3()}else{s=e==null?c.ch:e +if(s==null)s=A.h3()}return new A.hy(c,d,f,a,s,b)}, +bse(a,b){return A.tp(null,"The request connection took longer than "+b.j(0)+" and it was aborted. To get rid of this exception, try raising the RequestOptions.connectTimeout above the duration of "+b.j(0)+u.v,a,null,null,B.wz)}, +blx(a,b){return A.tp(null,"The request took longer than "+b.j(0)+" to receive data. It was aborted. To get rid of this exception, try raising the RequestOptions.receiveTimeout above the duration of "+b.j(0)+u.v,a,null,null,B.wB)}, +bsd(a,b){return A.tp(null,"The connection errored: "+a+" This indicates an error which most likely cannot be solved by the library.",b,null,null,B.pr)}, +bzK(a){var s="DioException ["+A.bPy(a.c)+"]: "+A.c(a.f),r=a.d +if(r!=null)s=s+"\n"+("Error: "+A.c(r)) +return s.charCodeAt(0)==0?s:s}, +ob:function ob(a,b){this.a=a +this.b=b}, +hy:function hy(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +blA(a,b,c){if(a==null)return b +return A.bJ3(A.a([b,a.a.a.ak(new A.avE(),c)],c.i("E>")),c)}, +avs(a,b){b.a=a +return b}, +blz(a,b){if(a instanceof A.hy)return a +return A.tp(a,null,b,null,null,B.wD)}, +bsf(a,b,c){var s,r,q,p,o=null +if(!(a instanceof A.i6))return A.Da(c.a(a),o,o,!1,B.jo,b,o,o,c) +else if(!c.i("i6<0>").b(a)){s=c.i("0?").a(a.a) +if(s instanceof A.yg){r=s.f +q=b.c +q===$&&A.b() +p=A.bto(r,q)}else p=a.e +return A.Da(s,a.w,p,a.f,a.r,a.b,a.c,a.d,c)}return a}, +avq:function avq(){}, +avy:function avy(a){this.a=a}, +avA:function avA(a,b){this.a=a +this.b=b}, +avz:function avz(a,b){this.a=a +this.b=b}, +avB:function avB(a){this.a=a}, +avD:function avD(a,b){this.a=a +this.b=b}, +avC:function avC(a,b){this.a=a +this.b=b}, +avv:function avv(a){this.a=a}, +avw:function avw(a,b){this.a=a +this.b=b}, +avx:function avx(a,b){this.a=a +this.b=b}, +avt:function avt(a){this.a=a}, +avu:function avu(a,b,c){this.a=a +this.b=b +this.c=c}, +avr:function avr(a){this.a=a}, +avE:function avE(){}, +xg:function xg(a,b){this.a=a +this.b=b}, +fG:function fG(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aZ3:function aZ3(){}, +qL:function qL(a){this.a=a}, +yh:function yh(a){this.a=a}, +pR:function pR(a){this.a=a}, +i2:function i2(){}, +Ka:function Ka(a){this.a=a}, +wZ:function wZ(a,b){var _=this +_.c=$ +_.d=a +_.e=b +_.f=!1}, +aA3:function aA3(a){this.a=a}, +aA2:function aA2(a){this.a=a}, +aA7:function aA7(a){this.a=a}, +aA8:function aA8(a){this.a=a}, +aA4:function aA4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aA5:function aA5(a,b){this.a=a +this.b=b}, +aA6:function aA6(a){this.a=a}, +bto(a,b){var s=t.yp +return new A.JL(A.aou(a.kd(a,new A.aB7(),t.N,s),s))}, +JL:function JL(a){this.b=a}, +aB7:function aB7(){}, +aB8:function aB8(a){this.a=a}, +JY:function JY(){}, +aKa(a,b){var s=A.aou(null,t.yp),r=A.bLs(b) +if(r==null)r=A.bmS("application","octet-stream",null) +return new A.Cs(a.length,b,s,r,new A.aKb(a))}, +bLs(a){var s +a=B.c.cw(a) +if(a.length===0)return null +s=$.bDw().aWX(a,null) +if(s==null)return null +return A.bmT(s)}, +Cs:function Cs(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=!1}, +aKb:function aKb(a){this.a=a}, +aKc:function aKc(){}, +bkT(a,b,c,d,e){var s=null,r=t.N,q=t.z,p=new A.aql($,$,s,"GET",!1,e,d,B.fq,A.bAm(),!0,A.w(r,q),!0,5,!0,s,s,B.lT) +p.a0h(s,s,s,c,s,s,s,s,!1,s,d,s,s,B.fq,e,s) +p.saaV(a) +p.yE$=A.w(r,q) +p.sabE(b) +return p}, +CC(a,b){return new A.aKQ(a,b)}, +N5(a,b,c,d,e,f,g,h,i,j,k,l,m,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1){var s=k==null?"GET":k,r=i==null?B.lT:i,q=f==null?A.w(t.N,t.z):f,p=j==null?5:j,o=b1==null?A.bAm():b1,n=a8==null?B.fq:a8 +r=new A.l8(e,a0,b,l,m,$,$,null,s,a2===!0,a9,a5,n,o,a4!==!1,q,g!==!1,p,a1!==!1,a6,a7,r) +r.a0h(d,f,g,h,i,j,k,a1,a2,a4,a5,a6,a7,a8,a9,b1) +r.ch=b0==null?A.h3():b0 +r.yE$=a3==null?A.w(t.N,t.z):a3 +r.saaV(a==null?"":a) +r.sabE(c) +return r}, +bSu(a){return a>=200&&a<300}, +Db:function Db(a,b){this.a=a +this.b=b}, +a1M:function a1M(a,b){this.a=a +this.b=b}, +a5e:function a5e(){}, +aql:function aql(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.Lb$=a +_.yE$=b +_.Lc$=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}, +aKQ:function aKQ(a,b){this.a=null +this.b=a +this.r=b}, +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){var _=this +_.ch=null +_.CW=a +_.cx=b +_.cy=c +_.db=d +_.dx=e +_.Lb$=f +_.yE$=g +_.Lc$=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}, +bci:function bci(){}, +az5:function az5(a,b){this.a=a +this.b=b}, +ad8:function ad8(){}, +ajA:function ajA(){}, +Da(a,b,c,d,e,f,g,h,i){var s,r +if(c==null){f.c===$&&A.b() +s=new A.JL(A.aou(null,t.yp))}else s=c +r=b==null?A.w(t.N,t.z):b +return new A.i6(a,f,g,h,s,d,e,r,i.i("i6<0>"))}, +i6:function i6(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}, +bW0(a,b){var s,r,q,p=null,o={},n=b.b,m=A.i9(p,p,p,p,!1,t.D),l=A.bu("responseSubscription"),k=A.bu("totalLength") +o.a=0 +if(a.db!=null){s=b.f.h(0,"content-length") +s=s==null?p:J.fT(s) +k.b=A.c0(s==null?"-1":s,p)}r=a.e +if(r==null)r=B.F +q=new A.r1() +$.rW() +o.b=null +s=new A.bjh(o,p,q) +l.b=n.aK(new A.bjd(o,new A.bji(o,r,q,s,b,l,m,a),q,r,m,a,k),!0,new A.bje(s,l,m),new A.bjf(s,m)) +o=a.cy +if(o!=null)o.a.a.fC(new A.bjg(s,b,l,m,a)) +return new A.cA(m,A.y(m).i("cA<1>"))}, +boU(a,b,c){if((a.b&4)===0){a.cX(b,c) +a.L(0)}}, +bjh:function bjh(a,b,c){this.a=a +this.b=b +this.c=c}, +bji:function bji(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}, +bjj:function bjj(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bjd:function bjd(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +bjf:function bjf(a,b){this.a=a +this.b=b}, +bje:function bje(a,b,c){this.a=a +this.b=b +this.c=c}, +bjg:function bjg(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bOK(a,b){return A.bpm(a,new A.aUW(),!0,!1,b)}, +bOL(a,b){return A.bpm(a,new A.aUX(),!0,!0,b)}, +bo1(a){var s,r,q,p +if(a==null)return!1 +try{s=A.bmT(a) +q=s +if(q.a+"/"+q.b!=="application/json"){q=s +q=q.a+"/"+q.b==="text/json"||B.c.bF(s.b,"+json")}else q=!0 +return q}catch(p){r=A.aT(p) +return!1}}, +bwE(a,b){var s,r=a.CW +if(r==null)r="" +if(typeof r!="string"){s=a.b +s===$&&A.b() +s=A.bo1(A.dk(s.h(0,"content-type")))}else s=!1 +if(s)return b.$1(r) +else if(t.f.b(r)){if(t.a.b(r)){s=a.ay +s===$&&A.b() +return A.bOK(r,s)}s=J.dd(r) +s.gfl(r).j(0) +A.h3() +return s.j(r)}else return J.p(r)}, +aUV:function aUV(){}, +aUW:function aUW(){}, +aUX:function aUX(){}, +bSn(a){if(a.length<51200)return B.a7.jo(0,a,null) +return A.bzy().$2$2(A.bVf(),a,t.N,t.z)}, +aqc:function aqc(a){this.a=a}, +bmk(a){return A.bJ_(a)}, +bJ_(a){var s=0,r=A.n(t.X),q,p +var $async$bmk=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:if(a.length===0){q=null +s=1 +break}p=$.bkj() +q=A.zL(p.a.b4(a),p.b.a) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$bmk,r)}, +a0u:function a0u(a){this.a=a}, +aTu:function aTu(){}, +a_0:function a_0(){}, +auf:function auf(){}, +EJ:function EJ(a){this.a=a +this.b=!1}, +bY7(a,b){var s=new A.a_($.ab,t.U) +a.eQ(b.git(b),new A.bkf(new A.aq(s,t.h)),b.gUv()) +return s}, +bpm(a,b,c,d,e){var s,r,q,p,o={},n=new A.cD("") +o.a=!0 +s=!d +r=!s||!c?"[":"%5B" +q=!s||!c?"]":"%5D" +p=c?A.bVh():new A.biM() +new A.biO(o,e,d,new A.biN(d,p),r,q,p,b,n).$2(a,"") +o=n.a +return o.charCodeAt(0)==0?o:o}, +bT4(a,b){switch(a.a){case 0:return"," +case 1:return b?"%20":" " +case 2:return"\\t" +case 3:return"|" +default:return""}}, +aou(a,b){var s=A.kR(new A.biw(),new A.bix(),t.N,b) +if(a!=null&&a.a!==0)s.G(0,a) +return s}, +bkf:function bkf(a){this.a=a}, +biM:function biM(){}, +biN:function biN(a,b){this.a=a +this.b=b}, +biO:function biO(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}, +biP:function biP(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +biw:function biw(){}, +bix:function bix(){}, +bSL(a){var s,r,q,p,o,n,m,l,k,j=a.getAllResponseHeaders(),i=A.w(t.N,t.yp) +if(j.length===0)return i +s=j.split("\r\n") +for(r=s.length,q=t.s,p=0;p"))}, +bsN(a,b,c,d,e,f){return new A.a_F(b,f,d,a,c,e)}, +aoj(a,b,c){if(ac)return c +if(isNaN(a))return c +return a}, +af0:function af0(a,b,c,d,e,f,g,h){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.a=h}, +b2m:function b2m(){}, +EU:function EU(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}, +EW:function EW(a){this.c=this.a=null +this.$ti=a}, +ES:function ES(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}, +QZ:function QZ(a,b){var _=this +_.r=_.f=_.e=_.d=$ +_.w=a +_.c=_.a=null +_.$ti=b}, +af2:function af2(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.$ti=f}, +mg:function mg(a,b){this.a=a +this.$ti=b}, +b9V:function b9V(a,b){this.a=a +this.d=b}, +R0:function R0(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 +_.bH=a +_.d4=b +_.cm=c +_.d9=d +_.ft=e +_.fu=f +_.hE=g +_.dK=h +_.dS=i +_.hF=j +_.jt=k +_.hR=null +_.nZ=l +_.fv=m +_.k6=n +_.go=o +_.id=p +_.k1=!1 +_.k3=_.k2=null +_.k4=q +_.ok=r +_.p1=s +_.p2=a0 +_.p3=a1 +_.p4=$ +_.R8=null +_.RG=$ +_.mb$=a2 +_.rl$=a3 +_.Q=a4 +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=a5 +_.CW=!0 +_.cy=_.cx=null +_.f=a6 +_.a=null +_.b=a7 +_.c=a8 +_.d=a9 +_.e=b0 +_.$ti=b1}, +b2s:function b2s(a){this.a=a}, +b2q:function b2q(a,b,c){this.a=a +this.b=b +this.c=c}, +b2u:function b2u(){}, +b2w:function b2w(){}, +EX:function EX(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.x=f +_.z=g +_.a=h +_.$ti=i}, +b2p:function b2p(a,b,c){this.a=a +this.b=b +this.c=c}, +Fn:function Fn(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.c=c +_.a=d +_.$ti=e}, +ajf:function ajf(a,b,c,d){var _=this +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aeY:function aeY(a,b,c){this.c=a +this.d=b +this.a=c}, +B_:function B_(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 +_.w=e +_.x=f +_.z=g +_.as=h +_.CW=i +_.cx=j +_.cy=k +_.db=l +_.dy=m +_.a=n +_.$ti=o}, +B0:function B0(a,b,c){var _=this +_.r=_.f=_.e=_.d=null +_.w=$ +_.x=a +_.y=b +_.c=_.a=null +_.$ti=c}, +awD:function awD(a){this.a=a}, +awE:function awE(a){this.a=a}, +awA:function awA(a){this.a=a}, +awx:function awx(a,b){this.a=a +this.b=b}, +awy:function awy(a){this.a=a}, +awz:function awz(a){this.a=a}, +awB:function awB(a){this.a=a}, +awC:function awC(a){this.a=a}, +arg:function arg(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +a1_:function a1_(a){this.a=a}, +a_F:function a_F(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.w=e +_.as=f}, +L7:function L7(a,b){this.a=a +this.c=b}, +awF:function awF(a,b){this.a=a +this.b=b}, +QX:function QX(){}, +pK(a,b,c,d,e,f,g,h){return new A.IW(d,e,g,h,c,a,b,f,null)}, +a_G:function a_G(a,b){this.a=a +this.b=b}, +a_H:function a_H(a,b){this.a=a +this.b=b}, +IW:function IW(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.e=c +_.w=d +_.x=e +_.z=f +_.as=g +_.at=h +_.a=i}, +R3:function R3(a,b,c,d){var _=this +_.d=a +_.f=_.e=null +_.w=b +_.z=_.y=_.x=$ +_.dI$=c +_.b8$=d +_.c=_.a=null}, +b2B:function b2B(a,b){this.a=a +this.b=b}, +b2D:function b2D(a){this.a=a}, +b2C:function b2C(a){this.a=a}, +b2A:function b2A(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +b2z:function b2z(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +UU:function UU(){}, +WC:function WC(){}, +a7o:function a7o(){}, +awL(){var s=0,r=A.n(t.H),q +var $async$awL=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=3 +return A.f(A.a_J(),$async$awL) +case 3:q=b +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$awL,r)}, +bw4(a){var s=null,r=a.split("_") +switch(r.length){case 2:return J.aM(B.b.gY(r))===4?new A.dX(B.b.gW(r),B.b.gY(r),s):new A.dX(B.b.gW(r),s,B.b.gY(r)) +case 3:return new A.dX(B.b.gW(r),r[1],B.b.gY(r)) +default:return new A.dX(B.b.gW(r),s,s)}}, +bu8(a,b,c){var s,r,q,p,o,n,m +for(s=J.nV(b),s=s.gav(s),r=J.a0(a),q=c.i("ao<0,@>");s.u();){p=s.gI(s) +o=p.a +n=r.h(a,o) +m=p.b +if(q.b(n)&&q.b(m)){A.bu8(n,m,c) +continue}r.n(a,o,m)}}, +IX:function IX(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.z=e +_.a=f}, +af5:function af5(){var _=this +_.c=_.a=_.f=_.e=null}, +b2G:function b2G(a){this.a=a}, +b2F:function b2F(a,b){this.a=a +this.b=b}, +b2H:function b2H(a){this.a=a}, +b2E:function b2E(){}, +R4:function R4(a,b,c,d,e,f,g){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.b=f +_.a=g}, +af4:function af4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bI2(a,b,c){return B.b.h9(a,new A.awJ(b),new A.awK(a,c,b))}, +bsO(a,b,c){var s,r,q,p,o,n +if(c!=null){s=c.gda(0) +for(r=a.length,q=0;qb.gk(b))q.c=B.aB2 +else q.c=B.aB1 +s=a}else s=a +s.fG(q.gxv()) +s=q.gUh() +q.a.a4(0,s) +r=q.b +if(r!=null)r.a4(0,s) +return q}, +br2(a,b,c){return new A.GV(a,b,new A.bV(A.a([],t.x8),t.jc),new A.bV(A.a([],t.qj),t.fy),0,c.i("GV<0>"))}, +acz:function acz(){}, +acA:function acA(){}, +nY:function nY(a,b){this.a=a +this.$ti=b}, +t1:function t1(){}, +Mo:function Mo(a,b,c){var _=this +_.c=_.b=_.a=null +_.ec$=a +_.dR$=b +_.rm$=c}, +la:function la(a,b,c){this.a=a +this.ec$=b +this.rm$=c}, +I7:function I7(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +alP:function alP(a,b){this.a=a +this.b=b}, +z_:function z_(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=null +_.d=c +_.f=_.e=null +_.ec$=d +_.dR$=e}, +AA:function AA(){}, +GV:function GV(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.d=_.c=null +_.ec$=c +_.dR$=d +_.rm$=e +_.$ti=f}, +Qn:function Qn(){}, +Qo:function Qo(){}, +Qp:function Qp(){}, +aef:function aef(){}, +aiB:function aiB(){}, +aiC:function aiC(){}, +aiD:function aiD(){}, +ajH:function ajH(){}, +ajI:function ajI(){}, +alM:function alM(){}, +alN:function alN(){}, +alO:function alO(){}, +LZ:function LZ(){}, +iK:function iK(){}, +RZ:function RZ(){}, +Ng:function Ng(a){this.a=a}, +eF:function eF(a,b,c){this.a=a +this.b=b +this.c=c}, +a8U:function a8U(a,b){this.a=a +this.c=b}, +P3:function P3(a){this.a=a}, +eq:function eq(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +P2:function P2(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +mO:function mO(a){this.a=a}, +aem:function aem(){}, +GU:function GU(){}, +GT:function GT(){}, +w_:function w_(){}, +t0:function t0(){}, +iY(a,b,c){return new A.b0(a,b,c.i("b0<0>"))}, +k0(a){return new A.hZ(a)}, +b4:function b4(){}, +bf:function bf(a,b,c){this.a=a +this.b=b +this.$ti=c}, +fO:function fO(a,b,c){this.a=a +this.b=b +this.$ti=c}, +b0:function b0(a,b,c){this.a=a +this.b=b +this.$ti=c}, +Na:function Na(a,b,c,d){var _=this +_.c=a +_.a=b +_.b=c +_.$ti=d}, +fU:function fU(a,b){this.a=a +this.b=b}, +a8k:function a8k(a,b){this.a=a +this.b=b}, +Mx:function Mx(a,b){this.a=a +this.b=b}, +tK:function tK(a,b){this.a=a +this.b=b}, +AD:function AD(a,b,c){this.a=a +this.b=b +this.$ti=c}, +hZ:function hZ(a){this.a=a}, +UD:function UD(){}, +aV2(a,b){var s=new A.Pi(A.a([],b.i("E>")),A.a([],t.mz),b.i("Pi<0>")) +s.ar4(a,b) +return s}, +bwF(a,b,c){return new A.hP(a,b,c.i("hP<0>"))}, +Pi:function Pi(a,b,c){this.a=a +this.b=b +this.$ti=c}, +hP:function hP(a,b,c){this.a=a +this.b=b +this.$ti=c}, +RV:function RV(a,b){this.a=a +this.b=b}, +bGr(a,b){return new A.HT(a,!0,1,b)}, +HT:function HT(a,b,c,d){var _=this +_.c=a +_.d=b +_.f=c +_.a=d}, +ae_:function ae_(a,b){var _=this +_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +adZ:function adZ(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.a=f}, +UM:function UM(){}, +brJ(a,b,c,d,e,f,g,h,i){return new A.HU(c,h,d,e,g,f,i,b,a,null)}, +HU:function HU(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}, +Qw:function Qw(a,b,c){var _=this +_.d=a +_.r=_.f=_.e=$ +_.w=!1 +_.fp$=b +_.c3$=c +_.c=_.a=null}, +b0c:function b0c(a,b){this.a=a +this.b=b}, +b0d:function b0d(a,b){this.a=a +this.b=b}, +UN:function UN(){}, +dP:function dP(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}, +at2:function at2(a){this.a=a}, +ae2:function ae2(){}, +ae1:function ae1(){}, +at1:function at1(){}, +amU:function amU(){}, +XO:function XO(a,b,c){this.c=a +this.d=b +this.a=c}, +bGs(a,b){return new A.wr(a,b,null)}, +wr:function wr(a,b,c){this.c=a +this.f=b +this.a=c}, +Qx:function Qx(){this.d=!1 +this.c=this.a=null}, +b0e:function b0e(a){this.a=a}, +b0f:function b0f(a){this.a=a}, +brK(a,b,c,d,e,f,g,h,i){return new A.XP(h,c,i,d,f,b,e,g,a)}, +XP:function XP(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}, +ae3:function ae3(){}, +ZB:function ZB(a,b){this.a=a +this.b=b}, +ae4:function ae4(){}, +ZY:function ZY(){}, +I3:function I3(a,b,c){this.d=a +this.w=b +this.a=c}, +Qy:function Qy(a,b,c){var _=this +_.d=a +_.e=0 +_.w=_.r=_.f=$ +_.fp$=b +_.c3$=c +_.c=_.a=null}, +b0o:function b0o(a){this.a=a}, +b0n:function b0n(){}, +b0m:function b0m(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Zx:function Zx(a,b,c){this.w=a +this.x=b +this.a=c}, +UO:function UO(){}, +bGB(a){var s,r=a.a +r.toString +s=a.ay +s.toString +r.aRL() +return new A.Qv(s,r,new A.at3(a),new A.at4(a))}, +bGC(a,b,c,d,e,f){var s=a.a.cx.a +return new A.I2(new A.EH(e,new A.at5(a),new A.at6(a,f),null,f.i("EH<0>")),c,d,s,null)}, +b0g(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.af(s).i("ad<1,A>") +r=new A.nF(A.a8(new A.ad(s,new A.b0h(c),r),!0,r.i("aN.E"))) +s=r}return s}if(b==null){s=a.a +if(s==null)s=a +else{r=A.af(s).i("ad<1,A>") +r=new A.nF(A.a8(new A.ad(s,new A.b0i(c),r),!0,r.i("aN.E"))) +s=r}return s}s=A.a([],t.t_) +for(r=b.a,q=a.a,p=0;p"))) +return new A.og(r)}, +wU(a){return new A.og(a)}, +bt3(a){return a}, +bt5(a,b){var s +if(a.r)return +s=$.bm9 +if(s===0)A.bVu(J.p(a.a),100,a.b) +else A.as().$1("Another exception was thrown: "+a.galW().j(0)) +$.bm9=$.bm9+1}, +bt4(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=A.C(["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),f=A.bNT(J.bkE(a,"\n")) +for(s=0,r=0;q=f.length,r0)q.push(h.a)}B.b.mE(q) +if(s===1)k.push("(elided one frame from "+B.b.gd_(q)+")") +else if(s>1){i=q.length +if(i>1)q[i-1]="and "+B.b.gY(q) +i="(elided "+s +if(q.length>2)k.push(i+" frames from "+B.b.bJ(q,", ")+")") +else k.push(i+" frames from "+B.b.bJ(q," ")+")")}return k}, +e9(a){var s=$.oh +if(s!=null)s.$1(a)}, +bVu(a,b,c){var s,r +A.as().$1(a) +s=A.a(B.c.NO(J.p(c==null?A.h3():A.bt3(c))).split("\n"),t.s) +r=s.length +s=J.W1(r!==0?new A.O_(s,new A.biD(),t.Ws):s,b) +A.as().$1(B.b.bJ(A.bt4(s),"\n"))}, +bHl(a,b,c){A.bHm(b,c) +return new A.a_h(b,a)}, +bHm(a,b){if(a==null)return A.a([],t.E) +return J.eX(A.bt4(A.a(B.c.NO(A.c(A.bt3(a))).split("\n"),t.s)),A.bUG(),t.EX).cJ(0)}, +bHn(a){return A.bs9(a,!1)}, +bPP(a,b,c){return new A.afB(c,a)}, +vk:function vk(){}, +Bb:function Bb(a,b,c,d,e,f,g){var _=this +_.y=a +_.z=b +_.as=c +_.at=d +_.ax=!0 +_.ay=null +_.ch=e +_.CW=f +_.a=g}, +a_Y:function a_Y(a,b,c,d,e,f,g){var _=this +_.y=a +_.z=b +_.as=c +_.at=d +_.ax=!0 +_.ay=null +_.ch=e +_.CW=f +_.a=g}, +a_V:function a_V(a,b,c,d,e,f,g){var _=this +_.y=a +_.z=b +_.as=c +_.at=d +_.ax=!0 +_.ay=null +_.ch=e +_.CW=f +_.a=g}, +cM:function cM(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e +_.r=f}, +azB:function azB(a){this.a=a}, +og:function og(a){this.a=a}, +azC:function azC(){}, +azD:function azD(){}, +azE:function azE(){}, +biD:function biD(){}, +a_h:function a_h(a,b){this.y=a +this.a=b}, +afB:function afB(a,b){this.f=a +this.a=b}, +afD:function afD(){}, +afC:function afC(){}, +WW:function WW(){}, +aqC:function aqC(a){this.a=a}, +aA:function aA(){}, +bo:function bo(a){var _=this +_.M$=0 +_.U$=a +_.aE$=_.ac$=0}, +as1:function as1(a){this.a=a}, +zp:function zp(a){this.a=a}, +cS:function cS(a,b){var _=this +_.a=a +_.M$=0 +_.U$=b +_.aE$=_.ac$=0}, +bs9(a,b){var s=null +return A.k2("",s,b,B.bU,a,s,s,B.bp,!1,!1,!0,B.eP,s)}, +k2(a,b,c,d,e,f,g,h,i,j,k,l,m){var s +if(g==null)s=i?"MISSING":null +else s=g +return new A.mD(s,f,i,b,d,h,a)}, +blu(a,b,c){return new A.a_g(c,a)}, +c5(a){return B.c.fk(B.e.hY(J.W(a)&1048575,16),5,"0")}, +bHk(a,b,c,d,e,f,g){return new A.Ix(g,c)}, +Iv:function Iv(a,b){this.a=a +this.b=b}, +pE:function pE(a,b){this.a=a +this.b=b}, +baf:function baf(){}, +fD:function fD(){}, +mD:function mD(a,b,c,d,e,f,g){var _=this +_.y=a +_.z=b +_.as=c +_.at=d +_.ax=!0 +_.ay=null +_.ch=e +_.CW=f +_.a=g}, +Iw:function Iw(){}, +a_g:function a_g(a,b){this.f=a +this.a=b}, +aY:function aY(){}, +avh:function avh(){}, +mC:function mC(){}, +Ix:function Ix(a,b){this.y=a +this.a=b}, +aeF:function aeF(){}, +iu:function iu(){}, +a1R:function a1R(){}, +kl:function kl(){}, +eK:function eK(a,b){this.a=a +this.$ti=b}, +boD:function boD(a){this.$ti=a}, +lS:function lS(){}, +Kt:function Kt(){}, +bV:function bV(a,b){var _=this +_.a=a +_.b=!1 +_.c=$ +_.$ti=b}, +q4:function q4(a,b){this.a=a +this.$ti=b}, +bTE(a){return A.bO(a,null,!1,t.X)}, +Me:function Me(a){this.a=a}, +bfW:function bfW(){}, +afN:function afN(a){this.a=a}, +vi:function vi(a,b){this.a=a +this.b=b}, +RD:function RD(a,b){this.a=a +this.b=b}, +iV:function iV(a,b){this.a=a +this.b=b}, +bzJ(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)$.VU().G(0,new A.hB(s,new A.biE(b),A.af(s).i("hB<1,h>"))) +else $.VU().G(0,s) +if(!$.boR)A.byu()}, +byu(){var s,r,q=$.boR=!1,p=$.bqi() +if(A.dA(p.gKT(),0,0).a>1e6){if(p.b==null)p.b=$.y7.$0() +p.eU(0) +$.aol=0}while(!0){if(!($.aol<12288?!$.VU().ga_(0):q))break +s=$.VU().om() +$.aol=$.aol+s.length +r=$.aoI +if(r==null)A.aoH(s) +else r.$1(s)}if(!$.VU().ga_(0)){$.boR=!0 +$.aol=0 +A.bZ(B.bK,A.bXm()) +if($.bhB==null)$.bhB=new A.aq(new A.a_($.ab,t.U),t.h)}else{$.bqi().mF(0) +q=$.bhB +if(q!=null)q.d8(0) +$.bhB=null}}, +bVv(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.gW(s):q +return new A.nq(a,-1,q,q,q,-1,-1,r,s.length>1?A.fc(s,1,null,t.N).bJ(0,"."):B.b.gd_(s))}, +bNU(a){var s,r,q,p,o,n,m,l,k,j,i="" +if(a==="")return B.aoc +else if(a==="...")return B.aod +if(!B.c.ba(a,"#"))return A.bNS(a) +s=A.bB("^#(\\d+) +(.+) \\((.+?):?(\\d+){0,1}:?(\\d+){0,1}\\)$",!0,!1,!1).pE(a).b +r=s[2] +r.toString +q=A.dm(r,".","") +if(B.c.ba(q,"new")){p=q.split(" ").length>1?q.split(" ")[1]:i +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.f1(r) +m=n.ge8(n) +if(n.gev()==="dart"||n.gev()==="package"){l=n.grS()[0] +m=B.c.hI(n.ge8(n),A.c(n.grS()[0])+"/","")}else l=i +r=s[1] +r.toString +r=A.c0(r,null) +k=n.gev() +j=s[4] +if(j==null)j=-1 +else{j=j +j.toString +j=A.c0(j,null)}s=s[5] +if(s==null)s=-1 +else{s=s +s.toString +s=A.c0(s,null)}return new A.nq(a,r,k,l,m,j,s,p,q)}, +nq:function nq(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}, +aSj:function aSj(){}, +cv:function cv(a,b){this.a=a +this.$ti=b}, +aTv:function aTv(a){this.a=a}, +a0x:function a0x(a,b){this.a=a +this.b=b}, +eD:function eD(){}, +Bu:function Bu(a,b,c){this.a=a +this.b=b +this.c=c}, +F6:function F6(a){var _=this +_.a=a +_.b=!0 +_.d=_.c=!1 +_.e=null}, +b53:function b53(a){this.a=a}, +aAr:function aAr(a){this.a=a}, +aAt:function aAt(){}, +aAs:function aAs(a,b,c){this.a=a +this.b=b +this.c=c}, +bIO(a,b,c,d,e,f,g){return new A.Jx(c,g,f,a,e,!1)}, +bck:function bck(a,b,c,d,e,f){var _=this +_.a=a +_.b=!1 +_.c=b +_.d=c +_.r=d +_.w=e +_.x=f +_.y=null}, +JF:function JF(){}, +aAw:function aAw(a){this.a=a}, +aAx:function aAx(a,b){this.a=a +this.b=b}, +Jx:function Jx(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e +_.r=f}, +bzh(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}}, +bM2(a,b){var s=A.af(a) +return new A.ey(new A.hF(new A.bh(a,new A.aMR(),s.i("bh<1>")),new A.aMS(b),s.i("hF<1,ca?>")),t.FI)}, +aMR:function aMR(){}, +aMS:function aMS(a){this.a=a}, +pJ:function pJ(a){this.a=a}, +mH:function mH(a,b,c){this.a=a +this.b=b +this.d=c}, +mI:function mI(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +iM:function iM(a,b,c){this.a=a +this.b=b +this.c=c}, +Mf(a,b){var s,r +if(a==null)return b +s=new A.hQ(new Float64Array(3)) +s.oD(b.a,b.b,0) +r=a.MY(s).a +return new A.z(r[0],r[1])}, +CP(a,b,c,d){if(a==null)return c +if(b==null)b=A.Mf(a,d) +return b.ai(0,A.Mf(a,d.ai(0,c)))}, +bnm(a){var s,r,q=new Float64Array(4),p=new A.nx(q) +p.G0(0,0,1,0) +s=new Float64Array(16) +r=new A.bW(s) +r.c5(a) +s[11]=q[3] +s[10]=q[2] +s[9]=q[1] +s[8]=q[0] +r.OL(2,p) +return r}, +bM_(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.y0(o,d,n,0,e,a,h,B.j,0,!1,!1,0,j,i,b,c,0,0,0,l,k,g,m,0,!1,null,null)}, +bM9(a,b,c,d,e,f,g,h,i,j,k,l){return new A.y4(l,c,k,0,d,a,f,B.j,0,!1,!1,0,h,g,0,b,0,0,0,j,i,0,0,0,!1,null,null)}, +bM4(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.qz(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)}, +bM1(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.un(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)}, +bM3(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.uo(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)}, +bM0(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){return new A.qy(a0,d,s,h,e,b,i,B.j,a,!0,!1,j,l,k,0,c,q,m,p,o,n,g,r,0,!1,null,null)}, +bM5(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.qA(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)}, +bMd(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.qC(a1,e,a0,i,f,b,j,B.j,a,!1,!1,k,m,l,c,d,r,n,q,p,o,h,s,0,!1,null,null)}, +bMb(a,b,c,d,e,f,g,h){return new A.y5(f,d,h,b,g,0,c,a,e,B.j,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,!1,null,null)}, +bMc(a,b,c,d,e,f){return new A.y6(f,b,e,0,c,a,d,B.j,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,!1,null,null)}, +bMa(a,b,c,d,e,f,g){return new A.a69(e,g,b,f,0,c,a,d,B.j,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,!1,null,null)}, +bM7(a,b,c,d,e,f,g){return new A.qB(g,b,f,c,B.cc,a,d,B.j,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,e,null,null)}, +bM8(a,b,c,d,e,f,g,h,i,j,k){return new A.y3(c,d,h,g,k,b,j,e,B.cc,a,f,B.j,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,i,null,null)}, +bM6(a,b,c,d,e,f,g){return new A.y2(g,b,f,c,B.cc,a,d,B.j,0,!1,!1,1,1,1,0,0,0,0,0,0,0,0,0,0,e,null,null)}, +buZ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){return new A.y1(a0,e,s,i,f,b,j,B.j,a,!1,!1,0,l,k,c,d,q,m,p,o,n,h,r,0,!1,null,null)}, +vS(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}}, +biA(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}}, +bV8(a){switch(a.a){case 1:return 1 +case 2:case 3:case 5:case 0:case 4:return 18}}, +ca:function ca(){}, +h6:function h6(){}, +acq:function acq(){}, +alW:function alW(){}, +adF:function adF(){}, +y0:function y0(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}, +alS:function alS(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adP:function adP(){}, +y4:function y4(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p +_.ch=q +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +am2:function am2(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adK:function adK(){}, +qz:function qz(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p +_.ch=q +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +alY:function alY(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adI:function adI(){}, +un:function un(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}, +alV:function alV(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adJ:function adJ(){}, +uo:function uo(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}, +alX:function alX(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adH:function adH(){}, +qy:function qy(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}, +alU:function alU(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adL:function adL(){}, +qA:function qA(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}, +alZ:function alZ(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adT:function adT(){}, +qC:function qC(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p +_.ch=q +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +am6:function am6(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +iT:function iT(){}, +T3:function T3(){}, +adR:function adR(){}, +y5:function y5(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9){var _=this +_.X=a +_.a9=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o +_.at=p +_.ax=q +_.ay=r +_.ch=s +_.CW=a0 +_.cx=a1 +_.cy=a2 +_.db=a3 +_.dx=a4 +_.dy=a5 +_.fr=a6 +_.fx=a7 +_.fy=a8 +_.go=a9}, +am4:function am4(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adS:function adS(){}, +y6:function y6(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p +_.ch=q +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +am5:function am5(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adQ:function adQ(){}, +a69:function a69(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 +_.X=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}, +am3:function am3(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adN:function adN(){}, +qB:function qB(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p +_.ch=q +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +am0:function am0(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adO:function adO(){}, +y3:function y3(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7,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}, +am1:function am1(a,b){var _=this +_.d=_.c=$ +_.e=a +_.f=b +_.b=_.a=$}, +adM:function adM(){}, +y2:function y2(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}, +am_:function am_(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +adG:function adG(){}, +y1:function y1(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6,a7){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.at=n +_.ax=o +_.ay=p +_.ch=q +_.CW=r +_.cx=s +_.cy=a0 +_.db=a1 +_.dx=a2 +_.dy=a3 +_.fr=a4 +_.fx=a5 +_.fy=a6 +_.go=a7}, +alT:function alT(a,b){var _=this +_.c=a +_.d=b +_.b=_.a=$}, +ahZ:function ahZ(){}, +ai_:function ai_(){}, +ai0:function ai0(){}, +ai1:function ai1(){}, +ai2:function ai2(){}, +ai3:function ai3(){}, +ai4:function ai4(){}, +ai5:function ai5(){}, +ai6:function ai6(){}, +ai7:function ai7(){}, +ai8:function ai8(){}, +ai9:function ai9(){}, +aia:function aia(){}, +aib:function aib(){}, +aic:function aic(){}, +aid:function aid(){}, +aie:function aie(){}, +aif:function aif(){}, +aig:function aig(){}, +aih:function aih(){}, +aii:function aii(){}, +aij:function aij(){}, +aik:function aik(){}, +ail:function ail(){}, +aim:function aim(){}, +ain:function ain(){}, +aio:function aio(){}, +aip:function aip(){}, +aiq:function aiq(){}, +air:function air(){}, +ais:function ais(){}, +ait:function ait(){}, +anT:function anT(){}, +anU:function anU(){}, +anV:function anV(){}, +anW:function anW(){}, +anX:function anX(){}, +anY:function anY(){}, +anZ:function anZ(){}, +ao_:function ao_(){}, +ao0:function ao0(){}, +ao1:function ao1(){}, +ao2:function ao2(){}, +ao3:function ao3(){}, +ao4:function ao4(){}, +ao5:function ao5(){}, +ao6:function ao6(){}, +ao7:function ao7(){}, +ao8:function ao8(){}, +ao9:function ao9(){}, +aoa:function aoa(){}, +bIX(a,b){var s=t.S +return new A.mR(B.u8,A.w(s,t.SP),A.dD(s),a,b,A.Gr(),A.w(s,t.Au))}, +btb(a,b,c){var s=(c-a)/(b-a) +return!isNaN(s)?A.M(s,0,1):s}, +zk:function zk(a,b){this.a=a +this.b=b}, +wY:function wY(a){this.a=a}, +mR:function mR(a,b,c,d,e,f,g){var _=this +_.ch=_.ay=_.ax=_.at=null +_.dx=_.db=$ +_.dy=a +_.f=b +_.r=c +_.w=null +_.a=d +_.b=null +_.c=e +_.d=f +_.e=g}, +aA1:function aA1(a,b){this.a=a +this.b=b}, +aA_:function aA_(a){this.a=a}, +aA0:function aA0(a){this.a=a}, +AT:function AT(a){this.a=a}, +aBC(){var s=A.a([],t.om),r=new A.bW(new Float64Array(16)) +r.eo() +return new A.q5(s,A.a([r],t.rE),A.a([],t.cR))}, +kL:function kL(a,b){this.a=a +this.b=null +this.$ti=b}, +G5:function G5(){}, +S9:function S9(a){this.a=a}, +Ft:function Ft(a){this.a=a}, +q5:function q5(a,b,c){this.a=a +this.b=b +this.c=c}, +aFl(a,b){var s=t.S +return new A.mY(B.ec,null,B.eV,A.w(s,t.SP),A.dD(s),a,b,A.bWs(),A.w(s,t.Au))}, +bKH(a){return a===1||a===2||a===4}, +C2:function C2(a){this.a=a}, +KF:function KF(a,b){this.a=a +this.c=b}, +C1:function C1(){}, +mY:function mY(a,b,c,d,e,f,g,h,i){var _=this +_.k2=!1 +_.A=_.bR=_.bI=_.by=_.a2=_.bx=_.bG=_.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}, +aFo:function aFo(a,b){this.a=a +this.b=b}, +aFn:function aFn(a,b){this.a=a +this.b=b}, +aFm:function aFm(a,b){this.a=a +this.b=b}, +rC:function rC(a,b,c){this.a=a +this.b=b +this.c=c}, +bov:function bov(a,b){this.a=a +this.b=b}, +aMY:function aMY(a){this.a=a +this.b=$}, +aMZ:function aMZ(){}, +a1H:function a1H(a,b,c){this.a=a +this.b=b +this.c=c}, +bHW(a){return new A.jL(a.ge1(a),A.bO(20,null,!1,t.av))}, +bHX(a){return a===1}, +bo8(a,b){var s=t.S +return new A.lk(B.S,B.hQ,A.aoD(),B.e4,A.w(s,t.GY),A.w(s,t.c),B.j,A.a([],t.t),A.w(s,t.SP),A.dD(s),a,b,A.aoE(),A.w(s,t.Au))}, +aBE(a,b){var s=t.S +return new A.kM(B.S,B.hQ,A.aoD(),B.e4,A.w(s,t.GY),A.w(s,t.c),B.j,A.a([],t.t),A.w(s,t.SP),A.dD(s),a,b,A.aoE(),A.w(s,t.Au))}, +buT(a,b){var s=t.S +return new A.n8(B.S,B.hQ,A.aoD(),B.e4,A.w(s,t.GY),A.w(s,t.c),B.j,A.a([],t.t),A.w(s,t.SP),A.dD(s),a,b,A.aoE(),A.w(s,t.Au))}, +QV:function QV(a,b){this.a=a +this.b=b}, +kG:function kG(){}, +awj:function awj(a,b){this.a=a +this.b=b}, +awo:function awo(a,b){this.a=a +this.b=b}, +awp:function awp(a,b){this.a=a +this.b=b}, +awk:function awk(){}, +awl:function awl(a,b){this.a=a +this.b=b}, +awm:function awm(a){this.a=a}, +awn:function awn(a,b){this.a=a +this.b=b}, +lk:function lk(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.at=a +_.ax=b +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=c +_.fy=d +_.k1=_.id=_.go=$ +_.k4=_.k3=_.k2=null +_.ok=$ +_.p1=!1 +_.p2=e +_.p3=f +_.p4=null +_.R8=g +_.RG=h +_.rx=null +_.f=i +_.r=j +_.w=null +_.a=k +_.b=null +_.c=l +_.d=m +_.e=n}, +kM:function kM(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.at=a +_.ax=b +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=c +_.fy=d +_.k1=_.id=_.go=$ +_.k4=_.k3=_.k2=null +_.ok=$ +_.p1=!1 +_.p2=e +_.p3=f +_.p4=null +_.R8=g +_.RG=h +_.rx=null +_.f=i +_.r=j +_.w=null +_.a=k +_.b=null +_.c=l +_.d=m +_.e=n}, +n8:function n8(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.at=a +_.ax=b +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=c +_.fy=d +_.k1=_.id=_.go=$ +_.k4=_.k3=_.k2=null +_.ok=$ +_.p1=!1 +_.p2=e +_.p3=f +_.p4=null +_.R8=g +_.RG=h +_.rx=null +_.f=i +_.r=j +_.w=null +_.a=k +_.b=null +_.c=l +_.d=m +_.e=n}, +aeV:function aeV(a,b){this.a=a +this.b=b}, +bHV(a){return a===1}, +adW:function adW(){this.a=!1}, +G1:function G1(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=!1}, +mG:function mG(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}, +aMT:function aMT(a,b){this.a=a +this.b=b}, +aMV:function aMV(){}, +aMU:function aMU(a,b,c){this.a=a +this.b=b +this.c=c}, +aMW:function aMW(){this.b=this.a=null}, +bJ4(a){return!0}, +a_A:function a_A(a,b){this.a=a +this.b=b}, +a4O:function a4O(a,b){this.a=a +this.b=b}, +es:function es(){}, +LO:function LO(){}, +JG:function JG(a,b){this.a=a +this.b=b}, +CR:function CR(){}, +aN3:function aN3(a,b){this.a=a +this.b=b}, +iw:function iw(a,b){this.a=a +this.b=b}, +afQ:function afQ(){}, +bN2(a,b,c,d,e,f,g,h,i){return new A.aQ2(b,a,d,g,c,i,f,e,h)}, +FM:function FM(a,b){this.a=a +this.b=b}, +zu:function zu(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aQ1:function aQ1(a,b,c){this.a=a +this.b=b +this.c=c}, +aQ2:function aQ2(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}, +a7C:function a7C(a,b,c){this.a=a +this.b=b +this.c=c}, +agJ:function agJ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ng:function ng(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.at=a +_.ch=_.ay=_.ax=null +_.CW=b +_.cx=null +_.cy=!1 +_.db=c +_.dx=$ +_.dy=null +_.k2=_.k1=_.id=_.go=_.fy=_.fx=_.fr=$ +_.k4=_.k3=null +_.ok=d +_.p1=e +_.p2=f +_.p3=null +_.p4=$ +_.R8=g +_.RG=1 +_.rx=0 +_.ry=null +_.f=h +_.r=i +_.w=null +_.a=j +_.b=null +_.c=k +_.d=l +_.e=m}, +aPW:function aPW(){}, +aPX:function aPX(){}, +aPY:function aPY(a,b){this.a=a +this.b=b}, +aPZ:function aPZ(a){this.a=a}, +aPU:function aPU(a,b){this.a=a +this.b=b}, +aPV:function aPV(a){this.a=a}, +aQ_:function aQ_(){}, +aQ0:function aQ0(){}, +aTI(a,b){var s=t.S +return new A.kj(B.bc,18,B.eV,A.w(s,t.SP),A.dD(s),a,b,A.Gr(),A.w(s,t.Au))}, +DU:function DU(a,b){this.a=a +this.c=b}, +uU:function uU(){}, +WT:function WT(){}, +kj:function kj(a,b,c,d,e,f,g,h,i){var _=this +_.U=_.M=_.aQ=_.aC=_.a9=_.X=_.A=_.bR=_.bI=_.by=_.a2=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}, +aTJ:function aTJ(a,b){this.a=a +this.b=b}, +aTK:function aTK(a,b){this.a=a +this.b=b}, +aTL:function aTL(a,b){this.a=a +this.b=b}, +aTM:function aTM(a,b){this.a=a +this.b=b}, +aTN:function aTN(a){this.a=a}, +QW:function QW(a,b){this.a=a +this.b=b}, +OE:function OE(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +OH:function OH(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +OG:function OG(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +OI:function OI(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}, +OF:function OF(a,b){this.b=a +this.c=b}, +TU:function TU(){}, +He:function He(){}, +aqv:function aqv(a){this.a=a}, +aqw:function aqw(a,b){this.a=a +this.b=b}, +aqt:function aqt(a,b){this.a=a +this.b=b}, +aqu:function aqu(a,b){this.a=a +this.b=b}, +aqr:function aqr(a,b){this.a=a +this.b=b}, +aqs:function aqs(a,b){this.a=a +this.b=b}, +aqq:function aqq(a,b){this.a=a +this.b=b}, +oV:function oV(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.at=a +_.ch=!0 +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=null +_.fy=_.fx=_.fr=!1 +_.id=_.go=null +_.k2=b +_.k3=null +_.p1=_.ok=_.k4=$ +_.p4=_.p3=_.p2=null +_.R8=c +_.pA$=d +_.yD$=e +_.nW$=f +_.L7$=g +_.Dk$=h +_.v1$=i +_.Dl$=j +_.L8$=k +_.L9$=l +_.f=m +_.r=n +_.w=null +_.a=o +_.b=null +_.c=p +_.d=q +_.e=r}, +oW:function oW(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.at=a +_.ch=!0 +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=null +_.fy=_.fx=_.fr=!1 +_.id=_.go=null +_.k2=b +_.k3=null +_.p1=_.ok=_.k4=$ +_.p4=_.p3=_.p2=null +_.R8=c +_.pA$=d +_.yD$=e +_.nW$=f +_.L7$=g +_.Dk$=h +_.v1$=i +_.Dl$=j +_.L8$=k +_.L9$=l +_.f=m +_.r=n +_.w=null +_.a=o +_.b=null +_.c=p +_.d=q +_.e=r}, +Q4:function Q4(){}, +al9:function al9(){}, +ala:function ala(){}, +alb:function alb(){}, +alc:function alc(){}, +ald:function ald(){}, +adw:function adw(a,b){this.a=a +this.b=b}, +zd:function zd(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!1 +_.f=_.e=null}, +aAu:function aAu(a){this.a=a +this.b=null}, +aAv:function aAv(a,b){this.a=a +this.b=b}, +bJo(a){var s=t.av +return new A.x8(A.bO(20,null,!1,s),a,A.bO(20,null,!1,s))}, +km:function km(a){this.a=a}, +v8:function v8(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Sz:function Sz(a,b){this.a=a +this.b=b}, +jL:function jL(a,b){var _=this +_.a=a +_.b=null +_.c=b +_.d=0}, +x8:function x8(a,b,c){var _=this +_.e=a +_.a=b +_.b=null +_.c=c +_.d=0}, +C3:function C3(a,b,c){var _=this +_.e=a +_.a=b +_.b=null +_.c=c +_.d=0}, +acr:function acr(){}, +aXw:function aXw(a,b){this.a=a +this.b=b}, +Ev:function Ev(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +WM:function WM(a){this.a=a}, +aq9:function aq9(){}, +aqa:function aqa(){}, +aqb:function aqb(){}, +WL:function WL(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +a_D:function a_D(a){this.a=a}, +awt:function awt(){}, +awu:function awu(){}, +awv:function awv(){}, +a_C:function a_C(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +a_N:function a_N(a){this.a=a}, +axJ:function axJ(){}, +axK:function axK(){}, +axL:function axL(){}, +a_M:function a_M(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +bFg(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.A2(r,q,p,n)}, +A2:function A2(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +act:function act(){}, +bkK(a,b){var s=b.c +if(s!=null)return s +switch(A.q(a).w.a){case 2:case 4:return A.brO(a,b) +case 0:case 1:case 3:case 5:s=A.hE(a,B.bu,t.C) +s.toString +switch(b.b.a){case 0:s=s.ga7() +break +case 1:s=s.ga6() +break +case 2:s=s.ga8() +break +case 3:s=s.ga1() +break +case 4:s=s.gaY().toUpperCase() +break +case 5:s=s.gO() +break +case 6:s=s.ga5() +break +case 7:s=s.gP() +break +case 8:s=s.gaW() +break +case 9:s="" +break +default:s=null}return s}}, +bFi(a,b){var s,r,q,p,o,n,m,l=null +switch(A.q(a).w.a){case 2:return new A.ad(b,new A.aps(),A.af(b).i("ad<1,o>")) +case 1:case 0:s=A.a([],t.p) +for(r=0;q=b.length,r")) +case 4:return new A.ad(b,new A.apu(a),A.af(b).i("ad<1,o>"))}}, +W7:function W7(a,b,c){this.c=a +this.e=b +this.a=c}, +aps:function aps(){}, +apt:function apt(a){this.a=a}, +apu:function apu(a){this.a=a}, +bKL(){return new A.JM(new A.aFD(),A.w(t.K,t.Qu))}, +P0:function P0(a,b){this.a=a +this.b=b}, +KP:function KP(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.c=a +_.e=b +_.r=c +_.w=d +_.CW=e +_.db=f +_.dx=g +_.fx=h +_.k1=i +_.k2=j +_.ok=k +_.R8=l +_.RG=m +_.rx=n +_.a=o}, +aFD:function aFD(){}, +aI4:function aI4(){}, +S3:function S3(){this.d=$ +this.c=this.a=null}, +b9t:function b9t(a,b){this.a=a +this.b=b}, +b9s:function b9s(){}, +b9u:function b9u(){}, +A6(a,b,c,d,e,f,g,h){var s=c==null?null:c.gvw().b,r=h==null?56:h +return new A.GZ(g,a,c,e,b,f,d,new A.aix(h,s,1/0,r+(s==null?0:s)),h,null)}, +bFo(a,b){var s,r +if(b.e==null){s=A.q(a).R8.Q +if(s==null)s=56 +r=b.f +return s+(r==null?0:r)}return b.b}, +bfT:function bfT(a){this.b=a}, +aix:function aix(a,b,c,d){var _=this +_.e=a +_.f=b +_.a=c +_.b=d}, +GZ:function GZ(a,b,c,d,e,f,g,h,i,j){var _=this +_.e=a +_.f=b +_.w=c +_.x=d +_.ax=e +_.ch=f +_.cy=g +_.fx=h +_.fy=i +_.a=j}, +apA:function apA(a,b){this.a=a +this.b=b}, +PW:function PW(){var _=this +_.d=null +_.e=!1 +_.c=_.a=null}, +aYC:function aYC(){}, +acQ:function acQ(a,b){this.c=a +this.a=b}, +aj4:function aj4(a,b,c,d,e){var _=this +_.E=null +_.af=a +_.aZ=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aYB:function aYB(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}, +br5(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return new A.A7(b==null?d:b,f,e,h,i,k,j,g,a,c,m,o,p,n,l)}, +bFn(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.U(a.b,b.b,c) +q=A.ak(a.c,b.c,c) +p=A.ak(a.d,b.d,c) +o=A.U(a.e,b.e,c) +n=A.U(a.f,b.f,c) +m=A.fb(a.r,b.r,c) +l=A.q6(a.w,b.w,c) +k=A.q6(a.x,b.x,c) +j=c<0.5 +if(j)i=a.y +else i=b.y +h=A.ak(a.z,b.z,c) +g=A.ak(a.Q,b.Q,c) +f=A.c9(a.as,b.as,c) +e=A.c9(a.at,b.at,c) +if(j)j=a.ax +else j=b.ax +return A.br5(k,s,i,null,q,r,l,p,o,m,n,j,h,e,g,f)}, +A7:function A7(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}, +acP:function acP(){}, +bTF(a,b){var s,r,q,p,o=A.bu("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.b2()}, +KZ:function KZ(a,b){var _=this +_.c=!0 +_.r=_.f=_.e=_.d=null +_.a=a +_.b=b}, +aI2:function aI2(a,b){this.a=a +this.b=b}, +EE:function EE(a,b){this.a=a +this.b=b}, +rl:function rl(a,b){this.a=a +this.b=b}, +C6:function C6(a,b){var _=this +_.e=!0 +_.r=_.f=$ +_.a=a +_.b=b}, +aI3:function aI3(a,b){this.a=a +this.b=b}, +bFw(a,b,c){var s,r,q,p,o,n,m +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.U(a.b,b.b,c) +q=A.ak(a.c,b.c,c) +p=A.ak(a.d,b.d,c) +o=A.c9(a.e,b.e,c) +n=A.fm(a.f,b.f,c) +m=A.vZ(a.r,b.r,c) +return new A.Ha(s,r,q,p,o,n,m,A.oA(a.w,b.w,c))}, +Ha:function Ha(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}, +ad1:function ad1(){}, +KQ:function KQ(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}, +agZ:function agZ(){}, +bFB(a,b,c){var s,r,q,p,o,n +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.ak(a.b,b.b,c) +if(c<0.5)q=a.c +else q=b.c +p=A.ak(a.d,b.d,c) +o=A.U(a.e,b.e,c) +n=A.U(a.f,b.f,c) +return new A.Hj(s,r,q,p,o,n,A.fm(a.r,b.r,c))}, +Hj:function Hj(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +ade:function ade(){}, +bFC(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.U(a.a,b.a,c) +r=A.ak(a.b,b.b,c) +q=A.q6(a.c,b.c,c) +p=A.q6(a.d,b.d,c) +o=A.U(a.e,b.e,c) +n=A.U(a.f,b.f,c) +m=A.c9(a.r,b.r,c) +l=A.c9(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.Hk(s,r,q,p,o,n,m,l,j,i,h,g,f,k)}, +Hk:function Hk(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}, +adf:function adf(){}, +bFD(a,b,c,d,e,f,g,h,i,j,k,l){return new A.Hl(a,h,c,g,l,j,i,b,f,k,d,e,null)}, +bFF(a,b){return A.c2("BottomSheet",B.j0,B.T,null,a)}, +bXz(a,b,c,d,e,a0,a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h=null,g=A.bU(c,a1),f=A.hE(c,B.bu,t.C) +f.toString +s=g.c +s.toString +s=A.BG(c,s) +r=f.gaX() +f=f.Zl(f.gb3()) +q=A.q(c) +p=$.aW() +o=A.a([],t.Zt) +n=$.ab +m=A.qF(B.cT) +l=A.a([],t.wi) +k=$.ab +j=a3.i("a_<0?>") +i=a3.i("aq<0?>") +return g.nh(new A.L9(b,s,!0,0.5625,a,h,h,h,h,q.x1.e,!0,d,h,h,h,!1,h,f,new A.cS(B.Z,p),r,h,h,o,A.bn(t.f9),new A.bG(h,a3.i("bG>")),new A.bG(h,t.A),new A.ud(),h,0,new A.aq(new A.a_(n,a3.i("a_<0?>")),a3.i("aq<0?>")),m,l,B.i1,new A.cS(h,p),new A.aq(new A.a_(k,j),i),new A.aq(new A.a_(k,j),i),a3.i("L9<0>")))}, +boh(a){var s=null +return new A.aZ8(a,s,s,1,s,s,s,1,B.aln,s,s,s,s,B.uH)}, +Hl:function Hl(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}, +Qa:function Qa(a,b){var _=this +_.d=a +_.e=b +_.c=_.a=null}, +aZd:function aZd(a){this.a=a}, +aZb:function aZb(a){this.a=a}, +aZc:function aZc(a,b){this.a=a +this.b=b}, +aeW:function aeW(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +b2e:function b2e(a){this.a=a}, +b2f:function b2f(a){this.a=a}, +adg:function adg(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +SK:function SK(a,b,c,d,e,f,g,h){var _=this +_.E=a +_.af=b +_.aZ=c +_.bH=d +_.d4=e +_.H$=f +_.fx=g +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=h +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +zq:function zq(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}, +Fp:function Fp(a,b){var _=this +_.d=a +_.c=_.a=null +_.$ti=b}, +b9Z:function b9Z(a,b){this.a=a +this.b=b}, +b9Y:function b9Y(a,b){this.a=a +this.b=b}, +b9X:function b9X(a){this.a=a}, +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,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7){var _=this +_.bH=a +_.d4=b +_.cm=c +_.d9=d +_.ft=e +_.fu=f +_.hE=g +_.dK=h +_.dS=i +_.hF=j +_.jt=k +_.hR=l +_.nZ=m +_.fv=n +_.k6=o +_.uQ=p +_.kK=q +_.js=r +_.ma=s +_.nU=a0 +_.pw=null +_.go=a1 +_.id=a2 +_.k1=!1 +_.k3=_.k2=null +_.k4=a3 +_.ok=a4 +_.p1=a5 +_.p2=a6 +_.p3=a7 +_.p4=$ +_.R8=null +_.RG=$ +_.mb$=a8 +_.rl$=a9 +_.Q=b0 +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=b1 +_.CW=!0 +_.cy=_.cx=null +_.f=b2 +_.a=null +_.b=b3 +_.c=b4 +_.d=b5 +_.e=b6 +_.$ti=b7}, +aIP:function aIP(a){this.a=a}, +Q9:function Q9(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aZ9:function aZ9(a){this.a=a}, +aZa:function aZa(a){this.a=a}, +aZ8:function aZ8(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}, +bFE(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.U(a.b,b.b,c) +q=A.ak(a.c,b.c,c) +p=A.U(a.d,b.d,c) +o=A.U(a.e,b.e,c) +n=A.U(a.f,b.f,c) +m=A.ak(a.r,b.r,c) +l=A.fb(a.w,b.w,c) +k=c<0.5 +if(k)j=a.x +else j=b.x +i=A.U(a.y,b.y,c) +h=A.NW(a.z,b.z,c) +if(k)k=a.Q +else k=b.Q +return new A.Ad(s,r,q,p,o,n,m,l,j,i,h,k,A.o2(a.as,b.as,c))}, +Ad:function Ad(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}, +adh:function adh(){}, +bFL(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.ak(a.d,b.d,c) +n=A.ak(a.e,b.e,c) +m=A.fm(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.Hp(r,q,p,o,n,m,l,k,s)}, +Hp:function Hp(a,b,c,d,e,f,g,h,i){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i}, +adk:function adk(){}, +Ah(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.cB(a3,d,i,o,q,a1,e,p,m,g,l,j,k,s,r,n,a4,a2,b,f,a,a0,c,h)}, +o3(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,a5,a6,a7=null +if(a8==a9)return a8 +s=a8==null +r=s?a7:a8.ghK() +q=a9==null +p=q?a7:a9.ghK() +p=A.bJ(r,p,b0,A.Gt(),t.p8) +r=s?a7:a8.gco(a8) +o=q?a7:a9.gco(a9) +n=t.MH +o=A.bJ(r,o,b0,A.dg(),n) +r=s?a7:a8.gfw() +r=A.bJ(r,q?a7:a9.gfw(),b0,A.dg(),n) +m=s?a7:a8.gcI() +m=A.bJ(m,q?a7:a9.gcI(),b0,A.dg(),n) +l=s?a7:a8.gcW(a8) +l=A.bJ(l,q?a7:a9.gcW(a9),b0,A.dg(),n) +k=s?a7:a8.gdr() +k=A.bJ(k,q?a7:a9.gdr(),b0,A.dg(),n) +j=s?a7:a8.geK(a8) +i=q?a7:a9.geK(a9) +h=t.PM +i=A.bJ(j,i,b0,A.VE(),h) +j=s?a7:a8.gdW(a8) +g=q?a7:a9.gdW(a9) +g=A.bJ(j,g,b0,A.bpl(),t.pc) +j=s?a7:a8.gjz() +f=q?a7:a9.gjz() +e=t.tW +f=A.bJ(j,f,b0,A.VD(),e) +j=s?a7:a8.y +j=A.bJ(j,q?a7:a9.y,b0,A.VD(),e) +d=s?a7:a8.gjy() +e=A.bJ(d,q?a7:a9.gjy(),b0,A.VD(),e) +d=s?a7:a8.Q +n=A.bJ(d,q?a7:a9.Q,b0,A.dg(),n) +d=s?a7:a8.gj3() +h=A.bJ(d,q?a7:a9.gj3(),b0,A.VE(),h) +d=s?a7:a8.ghu() +d=A.bFM(d,q?a7:a9.ghu(),b0) +c=s?a7:a8.gcC(a8) +b=q?a7:a9.gcC(a9) +b=A.bJ(c,b,b0,A.biu(),t.KX) +c=b0<0.5 +if(c)a=s?a7:a8.ghb() +else a=q?a7:a9.ghb() +if(c)a0=s?a7:a8.gfX() +else a0=q?a7:a9.gfX() +if(c)a1=s?a7:a8.gjD() +else a1=q?a7:a9.gjD() +if(c)a2=s?a7:a8.cx +else a2=q?a7:a9.cx +if(c)a3=s?a7:a8.cy +else a3=q?a7:a9.cy +a4=s?a7:a8.db +a4=A.vZ(a4,q?a7:a9.db,b0) +if(c)a5=s?a7:a8.ghf() +else a5=q?a7:a9.ghf() +if(c)a6=s?a7:a8.dy +else a6=q?a7:a9.dy +if(c)s=s?a7:a8.fr +else s=q?a7:a9.fr +return A.Ah(a4,a2,a6,o,i,a3,j,s,r,n,h,e,f,a,m,g,l,b,d,a5,k,a1,p,a0)}, +bFM(a,b,c){if(a==null&&b==null)return null +return A.bob(a,b,c)}, +cB:function cB(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}, +adl:function adl(){}, +arf(a,b,c,d){var s +$label0$0:{if(d<=1){s=a +break $label0$0}if(d<2){s=A.fm(a,b,d-1) +s.toString +break $label0$0}if(d<3){s=A.fm(b,c,d-2) +s.toString +break $label0$0}s=c +break $label0$0}return s}, +aC3:function aC3(a,b){this.a=a +this.b=b}, +Hq:function Hq(){}, +Qe:function Qe(a,b){var _=this +_.r=_.f=_.e=_.d=null +_.dI$=a +_.b8$=b +_.c=_.a=null}, +aZT:function aZT(){}, +aZQ:function aZQ(a,b,c){this.a=a +this.b=b +this.c=c}, +aZR:function aZR(a,b){this.a=a +this.b=b}, +aZS:function aZS(a,b,c){this.a=a +this.b=b +this.c=c}, +aZr:function aZr(){}, +aZs:function aZs(){}, +aZt:function aZt(){}, +aZE:function aZE(){}, +aZJ:function aZJ(){}, +aZK:function aZK(){}, +aZL:function aZL(){}, +aZM:function aZM(){}, +aZN:function aZN(){}, +aZO:function aZO(){}, +aZP:function aZP(){}, +aZu:function aZu(){}, +aZv:function aZv(){}, +aZw:function aZw(){}, +aZH:function aZH(a){this.a=a}, +aZp:function aZp(a){this.a=a}, +aZI:function aZI(a){this.a=a}, +aZo:function aZo(a){this.a=a}, +aZx:function aZx(){}, +aZy:function aZy(){}, +aZz:function aZz(){}, +aZA:function aZA(){}, +aZB:function aZB(){}, +aZC:function aZC(){}, +aZD:function aZD(){}, +aZF:function aZF(){}, +aZG:function aZG(a){this.a=a}, +aZq:function aZq(){}, +ahh:function ahh(a){this.a=a}, +agq:function agq(a,b,c){this.e=a +this.c=b +this.a=c}, +SS:function SS(a,b,c,d){var _=this +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bbU:function bbU(a,b){this.a=a +this.b=b}, +UH:function UH(){}, +bkY(a){var s,r,q,p,o +a.au(t.Xj) +s=A.q(a) +r=s.x2 +if(r.at==null){q=r.at +if(q==null)q=s.ax +p=r.gdW(0) +o=r.gcC(0) +r=A.brj(!1,r.w,q,r.x,r.y,r.b,r.Q,r.z,r.d,r.ax,r.a,p,o,r.as,r.c)}r.toString +return r}, +brj(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.Xa(k,f,o,i,l,m,!1,b,d,e,h,g,n,c,j)}, +Hr:function Hr(a,b){this.a=a +this.b=b}, +are:function are(a,b){this.a=a +this.b=b}, +Xa:function Xa(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}, +adm:function adm(){}, +w8(a,b,c){return new A.Xg(b,c,a,null)}, +aZW:function aZW(a,b){this.a=a +this.b=b}, +Xg:function Xg(a,b,c,d){var _=this +_.f=a +_.r=b +_.Q=c +_.a=d}, +aZV:function aZV(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}, +bFR(a,b,c){var s,r,q,p,o,n +if(a===b)return a +if(c<0.5)s=a.a +else s=b.a +r=A.U(a.b,b.b,c) +q=A.U(a.c,b.c,c) +p=A.U(a.d,b.d,c) +o=A.ak(a.e,b.e,c) +n=A.fm(a.f,b.f,c) +return new A.Ak(s,r,q,p,o,n,A.fb(a.r,b.r,c))}, +Ak:function Ak(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +ado:function ado(){}, +b_6:function b_6(a,b){this.a=a +this.b=b}, +Hw:function Hw(a,b,c){this.c=a +this.d=b +this.a=c}, +adr:function adr(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.d=a +_.e=null +_.pB$=b +_.lB$=c +_.nX$=d +_.v2$=e +_.v3$=f +_.yF$=g +_.v4$=h +_.yG$=i +_.We$=j +_.Ld$=k +_.v5$=l +_.rs$=m +_.rt$=n +_.dI$=o +_.b8$=p +_.c=_.a=null}, +b_4:function b_4(a){this.a=a}, +b_5:function b_5(a,b){this.a=a +this.b=b}, +adq:function adq(a){var _=this +_.ax=_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=_.a=_.go=_.fy=_.fx=_.fr=_.dy=_.dx=null +_.M$=0 +_.U$=a +_.aE$=_.ac$=0}, +b__:function b__(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}, +b_3:function b_3(a){this.a=a}, +b_1:function b_1(a){this.a=a}, +b_0:function b_0(a){this.a=a}, +b_2:function b_2(a){this.a=a}, +UJ:function UJ(){}, +UK:function UK(){}, +bFZ(a,b,c){var s,r,q,p,o,n,m,l +if(a===b)return a +s=c<0.5 +if(s)r=a.a +else r=b.a +q=t.MH +p=A.bJ(a.b,b.b,c,A.dg(),q) +o=A.bJ(a.c,b.c,c,A.dg(),q) +q=A.bJ(a.d,b.d,c,A.dg(),q) +n=A.ak(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.fb(a.w,b.w,c)) +return new A.Ao(r,p,o,q,n,m,s,l,A.bFY(a.x,b.x,c))}, +bFY(a,b,c){if(a==null||b==null)return null +if(a===b)return a +if(a instanceof A.rE)a=a.x.$1(A.bn(t.g)) +if(b instanceof A.rE)b=b.x.$1(A.bn(t.g)) +a.toString +b.toString +return A.bF(a,b,c)}, +Ao:function Ao(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}, +ads:function ads(){}, +bG4(a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2 +if(a3===a4)return a3 +s=A.bJ(a3.a,a4.a,a5,A.dg(),t.MH) +r=A.U(a3.b,a4.b,a5) +q=A.U(a3.c,a4.c,a5) +p=A.U(a3.d,a4.d,a5) +o=A.U(a3.e,a4.e,a5) +n=A.U(a3.f,a4.f,a5) +m=A.U(a3.r,a4.r,a5) +l=A.U(a3.w,a4.w,a5) +k=A.U(a3.x,a4.x,a5) +j=a5<0.5 +if(j)i=a3.y!==!1 +else i=a4.y!==!1 +h=A.U(a3.z,a4.z,a5) +g=A.fm(a3.Q,a4.Q,a5) +f=A.fm(a3.as,a4.as,a5) +e=A.bG3(a3.at,a4.at,a5) +d=A.bG2(a3.ax,a4.ax,a5) +c=A.c9(a3.ay,a4.ay,a5) +b=A.c9(a3.ch,a4.ch,a5) +if(j){j=a3.CW +if(j==null)j=B.b_}else{j=a4.CW +if(j==null)j=B.b_}a=A.ak(a3.cx,a4.cx,a5) +a0=A.ak(a3.cy,a4.cy,a5) +a1=a3.db +if(a1==null)a2=a4.db!=null +else a2=!0 +if(a2)a1=A.q6(a1,a4.db,a5) +else a1=null +a2=A.o2(a3.dx,a4.dx,a5) +return new A.Hx(s,r,q,p,o,n,m,l,k,i,h,g,f,e,d,c,b,j,a,a0,a1,a2,A.o2(a3.dy,a4.dy,a5))}, +bG3(a,b,c){var s +if(a==null&&b==null)return null +if(a instanceof A.rE)a=a.x.$1(A.bn(t.g)) +if(b instanceof A.rE)b=b.x.$1(A.bn(t.g)) +if(a==null){s=b.a +return A.bF(new A.br(A.Y(0,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),0,B.I,-1),b,c)}if(b==null){s=a.a +return A.bF(new A.br(A.Y(0,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),0,B.I,-1),a,c)}return A.bF(a,b,c)}, +bG2(a,b,c){if(a==null&&b==null)return null +return t.KX.a(A.fb(a,b,c))}, +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){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}, +adt:function adt(){}, +asr(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){return new A.tg(b,a7,k,a8,l,a9,b0,m,n,b2,o,b3,p,b4,b5,q,r,c7,a1,c8,a2,c9,d0,a3,a4,c,h,d,i,b7,s,c6,c4,b8,c3,c2,b9,c0,c1,a0,a5,a6,b6,b1,f,j,e,c5,a,g)}, +bGe(d1,d2,d3,d4){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=A.bGf(d1,d4,B.a_5,0) +if(d3==null){s=$.VG().cs(d0).d +s===$&&A.b() +s=new A.A(s>>>0)}else s=d3 +if(d2==null){r=$.bBF().cs(d0).d +r===$&&A.b() +r=new A.A(r>>>0)}else r=d2 +q=$.VH().cs(d0).d +q===$&&A.b() +p=$.bBG().cs(d0).d +p===$&&A.b() +o=$.VI().cs(d0).d +o===$&&A.b() +n=$.VJ().cs(d0).d +n===$&&A.b() +m=$.bBH().cs(d0).d +m===$&&A.b() +l=$.bBI().cs(d0).d +l===$&&A.b() +k=$.aoR().cs(d0).d +k===$&&A.b() +j=$.bBJ().cs(d0).d +j===$&&A.b() +i=$.VK().cs(d0).d +i===$&&A.b() +h=$.bBK().cs(d0).d +h===$&&A.b() +g=$.VL().cs(d0).d +g===$&&A.b() +f=$.VM().cs(d0).d +f===$&&A.b() +e=$.bBL().cs(d0).d +e===$&&A.b() +d=$.bBM().cs(d0).d +d===$&&A.b() +c=$.aoS().cs(d0).d +c===$&&A.b() +b=$.bBP().cs(d0).d +b===$&&A.b() +a=$.VN().cs(d0).d +a===$&&A.b() +a0=$.bBQ().cs(d0).d +a0===$&&A.b() +a1=$.VO().cs(d0).d +a1===$&&A.b() +a2=$.VP().cs(d0).d +a2===$&&A.b() +a3=$.bBR().cs(d0).d +a3===$&&A.b() +a4=$.bBS().cs(d0).d +a4===$&&A.b() +a5=$.aoP().cs(d0).d +a5===$&&A.b() +a6=$.bBD().cs(d0).d +a6===$&&A.b() +a7=$.aoQ().cs(d0).d +a7===$&&A.b() +a8=$.bBE().cs(d0).d +a8===$&&A.b() +a9=$.bBT().cs(d0).d +a9===$&&A.b() +b0=$.bBU().cs(d0).d +b0===$&&A.b() +b1=$.bBX().cs(d0).d +b1===$&&A.b() +b2=$.hX().cs(d0).d +b2===$&&A.b() +b3=$.hW().cs(d0).d +b3===$&&A.b() +b4=$.bC1().cs(d0).d +b4===$&&A.b() +b5=$.bC0().cs(d0).d +b5===$&&A.b() +b6=$.bBY().cs(d0).d +b6===$&&A.b() +b7=$.bBZ().cs(d0).d +b7===$&&A.b() +b8=$.bC_().cs(d0).d +b8===$&&A.b() +b9=$.bBN().cs(d0).d +b9===$&&A.b() +c0=$.bBO().cs(d0).d +c0===$&&A.b() +c1=$.bkm().cs(d0).d +c1===$&&A.b() +c2=$.bBA().cs(d0).d +c2===$&&A.b() +c3=$.bBB().cs(d0).d +c3===$&&A.b() +c4=$.bBW().cs(d0).d +c4===$&&A.b() +c5=$.bBV().cs(d0).d +c5===$&&A.b() +c6=$.VG().cs(d0).d +c6===$&&A.b() +c7=$.bpZ().cs(d0).d +c7===$&&A.b() +c8=$.bBC().cs(d0).d +c8===$&&A.b() +c9=$.bC2().cs(d0).d +c9===$&&A.b() +return A.asr(new A.A(c7>>>0),d1,new A.A(a5>>>0),new A.A(a7>>>0),new A.A(c3>>>0),new A.A(c1>>>0),new A.A(c8>>>0),new A.A(a6>>>0),new A.A(a8>>>0),new A.A(c2>>>0),r,new A.A(p>>>0),new A.A(m>>>0),new A.A(l>>>0),new A.A(j>>>0),new A.A(h>>>0),new A.A(e>>>0),new A.A(d>>>0),new A.A(b9>>>0),new A.A(c0>>>0),new A.A(b>>>0),new A.A(a0>>>0),new A.A(a3>>>0),new A.A(a4>>>0),new A.A(a9>>>0),new A.A(b0>>>0),s,new A.A(q>>>0),new A.A(o>>>0),new A.A(n>>>0),new A.A(c5>>>0),new A.A(k>>>0),new A.A(i>>>0),new A.A(g>>>0),new A.A(f>>>0),new A.A(c4>>>0),new A.A(b1>>>0),new A.A(b3>>>0),new A.A(b6>>>0),new A.A(b7>>>0),new A.A(b8>>>0),new A.A(b5>>>0),new A.A(b4>>>0),new A.A(b2>>>0),new A.A(c6>>>0),new A.A(c9>>>0),new A.A(c>>>0),new A.A(a>>>0),new A.A(a1>>>0),new A.A(a2>>>0))}, +bGg(d5,d6,d7){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 +if(d5===d6)return d5 +s=d7<0.5?d5.a:d6.a +r=d5.b +q=d6.b +p=A.U(r,q,d7) +p.toString +o=d5.c +n=d6.c +m=A.U(o,n,d7) +m.toString +l=d5.d +if(l==null)l=r +k=d6.d +l=A.U(l,k==null?q:k,d7) +k=d5.e +if(k==null)k=o +j=d6.e +k=A.U(k,j==null?n:j,d7) +j=d5.f +if(j==null)j=r +i=d6.f +j=A.U(j,i==null?q:i,d7) +i=d5.r +if(i==null)i=r +h=d6.r +i=A.U(i,h==null?q:h,d7) +h=d5.w +if(h==null)h=o +g=d6.w +h=A.U(h,g==null?n:g,d7) +g=d5.x +if(g==null)g=o +f=d6.x +g=A.U(g,f==null?n:f,d7) +f=d5.y +e=d6.y +d=A.U(f,e,d7) +d.toString +c=d5.z +b=d6.z +a=A.U(c,b,d7) +a.toString +a0=d5.Q +if(a0==null)a0=f +a1=d6.Q +a0=A.U(a0,a1==null?e:a1,d7) +a1=d5.as +if(a1==null)a1=c +a2=d6.as +a1=A.U(a1,a2==null?b:a2,d7) +a2=d5.at +if(a2==null)a2=f +a3=d6.at +a2=A.U(a2,a3==null?e:a3,d7) +a3=d5.ax +if(a3==null)a3=f +a4=d6.ax +a3=A.U(a3,a4==null?e:a4,d7) +a4=d5.ay +if(a4==null)a4=c +a5=d6.ay +a4=A.U(a4,a5==null?b:a5,d7) +a5=d5.ch +if(a5==null)a5=c +a6=d6.ch +a5=A.U(a5,a6==null?b:a6,d7) +a6=d5.CW +a7=a6==null +a8=a7?f:a6 +a9=d6.CW +b0=a9==null +a8=A.U(a8,b0?e:a9,d7) +b1=d5.cx +b2=b1==null +b3=b2?c:b1 +b4=d6.cx +b5=b4==null +b3=A.U(b3,b5?b:b4,d7) +b6=d5.cy +if(b6==null)b6=a7?f:a6 +b7=d6.cy +if(b7==null)b7=b0?e:a9 +b7=A.U(b6,b7,d7) +b6=d5.db +if(b6==null)b6=b2?c:b1 +b8=d6.db +if(b8==null)b8=b5?b:b4 +b8=A.U(b6,b8,d7) +b6=d5.dx +if(b6==null)b6=a7?f:a6 +b9=d6.dx +if(b9==null)b9=b0?e:a9 +b9=A.U(b6,b9,d7) +b6=d5.dy +if(b6==null)f=a7?f:a6 +else f=b6 +a6=d6.dy +if(a6==null)e=b0?e:a9 +else e=a6 +e=A.U(f,e,d7) +f=d5.fr +if(f==null)f=b2?c:b1 +a6=d6.fr +if(a6==null)a6=b5?b:b4 +a6=A.U(f,a6,d7) +f=d5.fx +if(f==null)f=b2?c:b1 +c=d6.fx +if(c==null)c=b5?b:b4 +c=A.U(f,c,d7) +f=d5.fy +b=d6.fy +a7=A.U(f,b,d7) +a7.toString +a9=d5.go +b0=d6.go +b1=A.U(a9,b0,d7) +b1.toString +b2=d5.id +f=b2==null?f:b2 +b2=d6.id +f=A.U(f,b2==null?b:b2,d7) +b=d5.k1 +if(b==null)b=a9 +a9=d6.k1 +b=A.U(b,a9==null?b0:a9,d7) +a9=d5.k2 +b0=d6.k2 +b2=A.U(a9,b0,d7) +b2.toString +b4=d5.k3 +b5=d6.k3 +b6=A.U(b4,b5,d7) +b6.toString +c0=d5.ok +if(c0==null)c0=a9 +c1=d6.ok +c0=A.U(c0,c1==null?b0:c1,d7) +c1=d5.p1 +if(c1==null)c1=a9 +c2=d6.p1 +c1=A.U(c1,c2==null?b0:c2,d7) +c2=d5.p2 +if(c2==null)c2=a9 +c3=d6.p2 +c2=A.U(c2,c3==null?b0:c3,d7) +c3=d5.p3 +if(c3==null)c3=a9 +c4=d6.p3 +c3=A.U(c3,c4==null?b0:c4,d7) +c4=d5.p4 +if(c4==null)c4=a9 +c5=d6.p4 +c4=A.U(c4,c5==null?b0:c5,d7) +c5=d5.R8 +if(c5==null)c5=a9 +c6=d6.R8 +c5=A.U(c5,c6==null?b0:c6,d7) +c6=d5.RG +if(c6==null)c6=a9 +c7=d6.RG +c6=A.U(c6,c7==null?b0:c7,d7) +c7=d5.rx +if(c7==null)c7=b4 +c8=d6.rx +c7=A.U(c7,c8==null?b5:c8,d7) +c8=d5.ry +if(c8==null){c8=d5.a2 +if(c8==null)c8=b4}c9=d6.ry +if(c9==null){c9=d6.a2 +if(c9==null)c9=b5}c9=A.U(c8,c9,d7) +c8=d5.to +if(c8==null){c8=d5.a2 +if(c8==null)c8=b4}d0=d6.to +if(d0==null){d0=d6.a2 +if(d0==null)d0=b5}d0=A.U(c8,d0,d7) +c8=d5.x1 +if(c8==null)c8=B.v +d1=d6.x1 +c8=A.U(c8,d1==null?B.v:d1,d7) +d1=d5.x2 +if(d1==null)d1=B.v +d2=d6.x2 +d1=A.U(d1,d2==null?B.v:d2,d7) +d2=d5.xr +if(d2==null)d2=b4 +d3=d6.xr +d2=A.U(d2,d3==null?b5:d3,d7) +d3=d5.y1 +if(d3==null)d3=a9 +d4=d6.y1 +d3=A.U(d3,d4==null?b0:d4,d7) +d4=d5.y2 +o=d4==null?o:d4 +d4=d6.y2 +o=A.U(o,d4==null?n:d4,d7) +n=d5.bG +r=n==null?r:n +n=d6.bG +r=A.U(r,n==null?q:n,d7) +q=d5.bx +if(q==null)q=a9 +n=d6.bx +q=A.U(q,n==null?b0:n,d7) +n=d5.a2 +if(n==null)n=b4 +b4=d6.a2 +n=A.U(n,b4==null?b5:b4,d7) +b4=d5.k4 +a9=b4==null?a9:b4 +b4=d6.k4 +return A.asr(q,s,a7,f,o,d2,n,b1,b,d3,m,k,h,g,a,a1,a4,a5,b6,c7,b3,b8,a6,c,c9,d0,p,l,j,i,d1,d,a0,a2,a3,c8,b2,c1,c4,c5,c6,c3,c2,c0,r,A.U(a9,b4==null?b0:b4,d7),a8,b7,b9,e)}, +bGf(a,b,c,d){var s,r,q,p,o,n,m=a===B.aI,l=A.k6(b.gk(b)) +switch(c.a){case 0:s=l.d +s===$&&A.b() +r=l.a +r===$&&A.b() +r=A.cw(r,36) +q=A.cw(l.a,16) +p=A.cw(A.L_(l.a+60),24) +o=A.cw(l.a,6) +n=A.cw(l.a,8) +n=new A.a7M(A.k6(s),B.awe,m,d,r,q,p,o,n,A.cw(25,84)) +s=n +break +case 1:s=l.d +s===$&&A.b() +r=l.a +r===$&&A.b() +q=l.b +q===$&&A.b() +q=A.cw(r,q) +r=l.a +p=l.b +p=A.cw(r,Math.max(p-32,p*0.5)) +r=A.bwz(A.blF(A.bwi(l).gaPJ())) +o=A.cw(l.a,l.b/8) +n=A.cw(l.a,l.b/8+4) +n=new A.a7H(A.k6(s),B.fF,m,d,q,p,r,o,n,A.cw(25,84)) +s=n +break +case 6:s=l.d +s===$&&A.b() +r=l.a +r===$&&A.b() +q=l.b +q===$&&A.b() +q=A.cw(r,q) +r=l.a +p=l.b +p=A.cw(r,Math.max(p-32,p*0.5)) +r=A.bwz(A.blF(B.b.gY(A.bwi(l).aOb(3,6)))) +o=A.cw(l.a,l.b/8) +n=A.cw(l.a,l.b/8+4) +n=new A.a7F(A.k6(s),B.fE,m,d,q,p,r,o,n,A.cw(25,84)) +s=n +break +case 2:s=l.d +s===$&&A.b() +r=l.a +r===$&&A.b() +r=A.cw(r,0) +q=A.cw(l.a,0) +p=A.cw(l.a,0) +o=A.cw(l.a,0) +n=A.cw(l.a,0) +n=new A.a7J(A.k6(s),B.bb,m,d,r,q,p,o,n,A.cw(25,84)) +s=n +break +case 3:s=l.d +s===$&&A.b() +r=l.a +r===$&&A.b() +r=A.cw(r,12) +q=A.cw(l.a,8) +p=A.cw(l.a,16) +o=A.cw(l.a,2) +n=A.cw(l.a,2) +n=new A.a7K(A.k6(s),B.awd,m,d,r,q,p,o,n,A.cw(25,84)) +s=n +break +case 4:s=l.d +s===$&&A.b() +r=l.a +r===$&&A.b() +r=A.cw(r,200) +q=A.cw(A.awH(l,$.bvC,$.bN6),24) +p=A.cw(A.awH(l,$.bvC,$.bN7),32) +o=A.cw(l.a,10) +n=A.cw(l.a,12) +n=new A.a7N(A.k6(s),B.awf,m,d,r,q,p,o,n,A.cw(25,84)) +s=n +break +case 5:s=l.d +s===$&&A.b() +r=l.a +r===$&&A.b() +r=A.cw(A.L_(r+240),40) +q=A.cw(A.awH(l,$.bvB,$.bN4),24) +p=A.cw(A.awH(l,$.bvB,$.bN5),32) +o=A.cw(l.a+15,8) +n=A.cw(l.a+15,12) +n=new A.a7G(A.k6(s),B.awg,m,d,r,q,p,o,n,A.cw(25,84)) +s=n +break +case 7:s=l.d +s===$&&A.b() +r=l.a +r===$&&A.b() +r=A.cw(r,48) +q=A.cw(l.a,16) +p=A.cw(A.L_(l.a+60),24) +o=A.cw(l.a,0) +n=A.cw(l.a,0) +n=new A.a7L(A.k6(s),B.awh,m,d,r,q,p,o,n,A.cw(25,84)) +s=n +break +case 8:s=l.d +s===$&&A.b() +r=l.a +r===$&&A.b() +r=A.cw(A.L_(r-50),48) +q=A.cw(A.L_(l.a-50),36) +p=A.cw(l.a,36) +o=A.cw(l.a,10) +n=A.cw(l.a,16) +n=new A.a7I(A.k6(s),B.awi,m,d,r,q,p,o,n,A.cw(25,84)) +s=n +break +default:s=null}return s}, +awG:function awG(a,b){this.a=a +this.b=b}, +tg:function tg(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){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 +_.bG=c8 +_.bx=c9 +_.a2=d0}, +adv:function adv(){}, +qk:function qk(a,b){this.b=a +this.a=b}, +a22:function a22(a,b){this.b=a +this.a=b}, +bGO(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e +if(a===b)return a +s=A.auc(a.a,b.a,c) +r=t.MH +q=A.bJ(a.b,b.b,c,A.dg(),r) +p=A.ak(a.c,b.c,c) +o=A.ak(a.d,b.d,c) +n=A.c9(a.e,b.e,c) +r=A.bJ(a.f,b.f,c,A.dg(),r) +m=A.ak(a.r,b.r,c) +l=A.c9(a.w,b.w,c) +k=A.ak(a.x,b.x,c) +j=A.ak(a.y,b.y,c) +i=A.ak(a.z,b.z,c) +h=A.ak(a.Q,b.Q,c) +g=c<0.5 +f=g?a.as:b.as +e=g?a.at:b.at +g=g?a.ax:b.ax +return new A.If(s,q,p,o,n,r,m,l,k,j,i,h,f,e,g)}, +If:function If(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}, +aej:function aej(){}, +bGT(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,b5,b6,b7,b8 +if(b9===c0)return b9 +s=A.U(b9.a,c0.a,c1) +r=A.ak(b9.b,c0.b,c1) +q=A.U(b9.c,c0.c,c1) +p=A.U(b9.d,c0.d,c1) +o=A.fb(b9.e,c0.e,c1) +n=A.U(b9.f,c0.f,c1) +m=A.U(b9.r,c0.r,c1) +l=A.c9(b9.w,c0.w,c1) +k=A.c9(b9.x,c0.x,c1) +j=A.c9(b9.y,c0.y,c1) +i=A.c9(b9.z,c0.z,c1) +h=t.MH +g=A.bJ(b9.Q,c0.Q,c1,A.dg(),h) +f=A.bJ(b9.as,c0.as,c1,A.dg(),h) +e=A.bJ(b9.at,c0.at,c1,A.dg(),h) +d=A.bJ(b9.ax,c0.ax,c1,A.biu(),t.KX) +c=A.bJ(b9.ay,c0.ay,c1,A.dg(),h) +b=A.bJ(b9.ch,c0.ch,c1,A.dg(),h) +a=A.bGS(b9.CW,c0.CW,c1) +a0=A.c9(b9.cx,c0.cx,c1) +a1=A.bJ(b9.cy,c0.cy,c1,A.dg(),h) +a2=A.bJ(b9.db,c0.db,c1,A.dg(),h) +a3=A.bJ(b9.dx,c0.dx,c1,A.dg(),h) +a4=A.U(b9.dy,c0.dy,c1) +a5=A.ak(b9.fr,c0.fr,c1) +a6=A.U(b9.fx,c0.fx,c1) +a7=A.U(b9.fy,c0.fy,c1) +a8=A.fb(b9.go,c0.go,c1) +a9=A.U(b9.id,c0.id,c1) +b0=A.U(b9.k1,c0.k1,c1) +b1=A.c9(b9.k2,c0.k2,c1) +b2=A.c9(b9.k3,c0.k3,c1) +b3=A.U(b9.k4,c0.k4,c1) +h=A.bJ(b9.ok,c0.ok,c1,A.dg(),h) +b4=A.U(b9.p1,c0.p1,c1) +b5=c1<0.5 +if(b5)b6=b9.p2 +else b6=c0.p2 +b7=A.o3(b9.p3,c0.p3,c1) +b8=A.o3(b9.p4,c0.p4,c1) +if(b5)b5=b9.R8 +else b5=c0.R8 +return new A.Ig(s,r,q,p,o,n,m,l,k,j,i,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,h,b4,b6,b7,b8,b5)}, +bGS(a,b,c){var s +if(a==b)return a +if(a==null){s=b.a +return A.bF(new A.br(A.Y(0,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),0,B.I,-1),b,c)}s=a.a +return A.bF(a,new A.br(A.Y(0,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),0,B.I,-1),c)}, +Ig:function Ig(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}, +ael:function ael(){}, +aey:function aey(){}, +aur:function aur(){}, +amV:function amV(){}, +a_5:function a_5(a,b,c){this.c=a +this.d=b +this.a=c}, +bH4(a,b,c){var s=null +return new A.AP(b,A.X(c,s,B.al,s,s,B.Pk.cc(A.q(a).ax.a===B.aI?B.n:B.ai),s,s),s)}, +AP:function AP(a,b,c){this.c=a +this.d=b +this.a=c}, +Iy(a,b,c,d,e,f,g,h,i){return new A.AV(b,e,g,i,f,d,h,a,c,null)}, +A3(a,b,c,d){return new A.rZ(d,b,a,c,null)}, +bRR(a,b,c,d){return d}, +jd(a,b,c,d,e,f,g,h){var s,r,q=A.bU(d,f).c +q.toString +s=A.BG(d,q) +q=A.bU(d,f) +r=a==null?A.q(d).a2.z:a +if(r==null)r=B.ab +return q.nh(A.bHs(null,r,b,null,c,d,e,s,B.Ps,g,h))}, +bHs(a,b,c,d,e,f,g,h,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j=null,i=A.hE(f,B.bu,t.C) +i.toString +i=i.gaS() +s=A.a([],t.Zt) +r=$.ab +q=A.qF(B.cT) +p=A.a([],t.wi) +o=$.aW() +n=$.ab +m=a2.i("a_<0?>") +l=a2.i("aq<0?>") +k=g==null?B.i1:g +return new A.Iz(new A.avl(e,h,a1),c,i,b,B.eQ,A.bVD(),a,j,a0,s,A.bn(t.f9),new A.bG(j,a2.i("bG>")),new A.bG(j,t.A),new A.ud(),j,0,new A.aq(new A.a_(r,a2.i("a_<0?>")),a2.i("aq<0?>")),q,p,k,new A.cS(j,o),new A.aq(new A.a_(n,m),l),new A.aq(new A.a_(n,m),l),a2.i("Iz<0>"))}, +bxe(a){var s=null +return new A.b1Q(a,s,6,s,s,B.alm,B.O,s,s,s,s,s,s,B.h)}, +AV:function AV(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}, +rZ:function rZ(a,b,c,d,e){var _=this +_.f=a +_.x=b +_.Q=c +_.fy=d +_.a=e}, +Iz:function Iz(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 +_.yv=null +_.bH=a +_.d4=b +_.cm=c +_.d9=d +_.ft=e +_.fu=f +_.hE=g +_.go=h +_.id=i +_.k1=!1 +_.k3=_.k2=null +_.k4=j +_.ok=k +_.p1=l +_.p2=m +_.p3=n +_.p4=$ +_.R8=null +_.RG=$ +_.mb$=o +_.rl$=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}, +avl:function avl(a,b,c){this.a=a +this.b=b +this.c=c}, +b1Q:function b1Q(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}, +bHt(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.ak(a.b,b.b,c) +q=A.U(a.c,b.c,c) +p=A.U(a.d,b.d,c) +o=A.fb(a.e,b.e,c) +n=A.vZ(a.f,b.f,c) +m=A.U(a.y,b.y,c) +l=A.c9(a.r,b.r,c) +k=A.c9(a.w,b.w,c) +j=A.fm(a.x,b.x,c) +i=A.U(a.z,b.z,c) +h=A.a_K(a.Q,b.Q,c) +if(c<0.5)g=a.as +else g=b.as +return new A.AW(s,r,q,p,o,n,l,k,j,m,i,h,g)}, +AW:function AW(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}, +aeH:function aeH(){}, +bsm(a,b,c){var s,r,q,p,o=A.blG(a) +A.q(a) +s=A.boj(a) +if(b==null){r=o.a +q=r}else q=b +if(q==null)q=s==null?null:s.gaG(0) +p=c +if(q==null)return new A.br(B.v,p,B.I,-1) +return new A.br(q,p,B.I,-1)}, +bo7(a,b){return new A.aa6(b,a,null)}, +boj(a){return new A.b1Z(a,null,16,1,0,0)}, +pF:function pF(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aa6:function aa6(a,b,c){this.c=a +this.r=b +this.a=c}, +b1Z:function b1Z(a,b,c,d,e,f){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +bHG(a,b,c){var s,r,q,p +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.ak(a.b,b.b,c) +q=A.ak(a.c,b.c,c) +p=A.ak(a.d,b.d,c) +return new A.wC(s,r,q,p,A.ak(a.e,b.e,c))}, +blG(a){var s +a.au(t.Jj) +s=A.q(a) +return s.by}, +wC:function wC(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aeM:function aeM(){}, +bI_(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.U(a.b,b.b,c) +q=A.ak(a.c,b.c,c) +p=A.U(a.d,b.d,c) +o=A.U(a.e,b.e,c) +n=A.fb(a.f,b.f,c) +m=A.fb(a.r,b.r,c) +l=A.ak(a.w,b.w,c) +if(c<0.5)k=a.x +else k=b.x +return new A.IR(s,r,q,p,o,n,m,l,k)}, +IR:function IR(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}, +aeX:function aeX(){}, +blT(a,b,c,d){return new A.iN(c,b,a,B.io,null,d.i("iN<0>"))}, +af_:function af_(a,b,c,d,e,f,g,h){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=g +_.a=h}, +ET:function ET(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}, +EV:function EV(a){var _=this +_.c=_.a=_.d=null +_.$ti=a}, +ER:function ER(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}, +QY:function QY(a){var _=this +_.e=_.d=$ +_.c=_.a=null +_.$ti=a}, +b2n:function b2n(a){this.a=a}, +af1:function af1(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +mf:function mf(a,b){this.a=a +this.$ti=b}, +b9U:function b9U(a,b){this.a=a +this.d=b}, +R_:function R_(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 +_.bH=a +_.d4=b +_.cm=c +_.d9=d +_.ft=e +_.fu=f +_.hE=g +_.dK=h +_.dS=i +_.hF=j +_.jt=k +_.hR=l +_.nZ=m +_.fv=n +_.k6=o +_.go=p +_.id=q +_.k1=!1 +_.k3=_.k2=null +_.k4=r +_.ok=s +_.p1=a0 +_.p2=a1 +_.p3=a2 +_.p4=$ +_.R8=null +_.RG=$ +_.mb$=a3 +_.rl$=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}, +b2r:function b2r(a){this.a=a}, +b2t:function b2t(){}, +b2v:function b2v(){}, +zi:function zi(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.f=c +_.r=d +_.w=e +_.y=f +_.Q=g +_.as=h +_.at=i +_.ax=j +_.a=k +_.$ti=l}, +R1:function R1(a){var _=this +_.d=$ +_.c=_.a=null +_.$ti=a}, +b2o:function b2o(a,b,c){this.a=a +this.b=b +this.c=c}, +Fm:function Fm(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.c=c +_.a=d +_.$ti=e}, +aje:function aje(a,b,c,d){var _=this +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aeZ:function aeZ(){}, +iN:function iN(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.a=e +_.$ti=f}, +IS:function IS(a,b){this.b=a +this.a=b}, +AZ:function AZ(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.r=c +_.CW=d +_.a=e +_.$ti=f}, +EQ:function EQ(a){var _=this +_.r=_.f=_.e=_.d=null +_.w=$ +_.c=_.a=null +_.$ti=a}, +b2k:function b2k(a){this.a=a}, +b2l:function b2l(a){this.a=a}, +b2i:function b2i(a){this.a=a}, +b2g:function b2g(a,b){this.a=a +this.b=b}, +b2h:function b2h(a){this.a=a}, +b2j:function b2j(a){this.a=a}, +UT:function UT(){}, +bI0(a,b,c){var s,r +if(a===b)return a +s=A.c9(a.a,b.a,c) +if(c<0.5)r=a.b +else r=b.b +return new A.IT(s,r,A.bmU(a.c,b.c,c))}, +IT:function IT(a,b,c){this.a=a +this.b=b +this.c=c}, +af3:function af3(){}, +f6(a,b,c,d,e,f,g,h,i,j,k,l){return new A.B5(j,i,h,g,l,c,d,!1,k,!0,b,f)}, +axG(a,b,c,d){var s=null +return new A.afe(c,s,s,s,d,B.h,s,!1,s,!0,new A.aff(b,a,d,B.a3,s),s)}, +im(a,b,c,d,e,f,g,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3){var s,r,q,p,o,n,m,l,k,j,i,h=null +$label0$0:{s=a2==null +if(s&&e==null){r=h +break $label0$0}r=new A.EZ(a2,e) +break $label0$0}$label1$1:{if(c==null&&d==null){q=h +break $label1$1}q=new A.EZ(c,d) +break $label1$1}$label2$2:{if(a3==null){p=h +break $label2$2}p=new A.EZ(a3,h) +break $label2$2}$label3$3:{if(s){s=h +break $label3$3}s=new A.afb(a2) +break $label3$3}$label4$4:{if(g==null){o=h +break $label4$4}o=new A.af9(g) +break $label4$4}n=a7==null?h:new A.bK(a7,t.De) +m=b0==null?h:new A.bK(b0,t.De) +l=a6==null?h:new A.bK(a6,t.mD) +k=a5==null?h:new A.bK(a5,t.W7) +j=a4==null?h:new A.bK(a4,t.W7) +i=a8==null?h:new A.bK(a8,t.li) +return A.Ah(a,b,h,q,o,a0,h,h,r,p,h,j,k,new A.afa(a1,f),s,l,n,i,h,a9,m,b1,new A.bK(b2,t.RP),b3)}, +bU6(a){var s=A.q(a),r=s.p2.as,q=r==null?null:r.r +if(q==null)q=14 +r=A.de(a,B.cP) +r=r==null?null:r.gem() +if(r==null)r=B.aB +return A.arf(new A.al(24,0,24,0),new A.al(12,0,12,0),new A.al(6,0,6,0),q*r.a/14)}, +B5:function B5(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}, +EZ:function EZ(a,b){this.a=a +this.b=b}, +afb:function afb(a){this.a=a}, +af9:function af9(a){this.a=a}, +afa:function afa(a,b){this.a=a +this.b=b}, +afe:function afe(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}, +aff:function aff(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +afc:function afc(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 +_.fx=a +_.fy=$ +_.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}, +b2N:function b2N(a){this.a=a}, +b2P:function b2P(a){this.a=a}, +b2R:function b2R(a){this.a=a}, +b2O:function b2O(){}, +b2Q:function b2Q(){}, +amX:function amX(){}, +amY:function amY(){}, +amZ:function amZ(){}, +an_:function an_(){}, +bIb(a,b,c){if(a===b)return a +return new A.B6(A.o3(a.a,b.a,c))}, +B6:function B6(a){this.a=a}, +afd:function afd(){}, +bsR(a,b,c){if(b!=null&&!b.l(0,B.t))return A.Xz(A.Y(B.d.aa(255*A.bIc(c)),b.gk(b)>>>16&255,b.gk(b)>>>8&255,b.gk(b)&255),a) +return a}, +bIc(a){var s,r,q,p,o,n +if(a<0)return 0 +for(s=0;r=B.yL[s],q=r.a,a>=q;){if(a===q||s+1===6)return r.b;++s}p=B.yL[s-1] +o=p.a +n=p.b +return n+(a-o)/(q-o)*(r.b-n)}, +rm:function rm(a,b){this.a=a +this.b=b}, +bIu(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.U(a.b,b.b,c) +q=A.fm(a.c,b.c,c) +p=A.vZ(a.d,b.d,c) +o=A.fm(a.e,b.e,c) +n=A.U(a.f,b.f,c) +m=A.U(a.r,b.r,c) +l=A.U(a.w,b.w,c) +k=A.U(a.x,b.x,c) +j=A.fb(a.y,b.y,c) +i=A.fb(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.Jf(s,r,q,p,o,n,m,l,k,j,i,g,h)}, +Jf:function Jf(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}, +afk:function afk(){}, +bIE(a,b,c){if(a===b)return a +return new A.Jn(A.o3(a.a,b.a,c))}, +Jn:function Jn(a){this.a=a}, +aft:function aft(){}, +Jr:function Jr(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}, +bNV(a,b){return a.r.a-16-a.e.c-a.a.a+b}, +bx8(a,b,c,d,e){return new A.PV(c,d,a,b,new A.bV(A.a([],t.x8),t.jc),new A.bV(A.a([],t.qj),t.fy),0,e.i("PV<0>"))}, +azm:function azm(){}, +aSk:function aSk(){}, +ayr:function ayr(){}, +ayq:function ayq(){}, +b2T:function b2T(){}, +azl:function azl(){}, +bcW:function bcW(){}, +PV:function PV(a,b,c,d,e,f,g,h){var _=this +_.w=a +_.x=b +_.a=c +_.b=d +_.d=_.c=null +_.ec$=e +_.dR$=f +_.rm$=g +_.$ti=h}, +an0:function an0(){}, +an1:function an1(){}, +bIG(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.Js(k,a,i,m,a1,c,j,n,b,l,r,d,o,s,a0,p,g,e,f,h,q)}, +bIH(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.U(a2.a,a3.a,a4) +r=A.U(a2.b,a3.b,a4) +q=A.U(a2.c,a3.c,a4) +p=A.U(a2.d,a3.d,a4) +o=A.U(a2.e,a3.e,a4) +n=A.ak(a2.f,a3.f,a4) +m=A.ak(a2.r,a3.r,a4) +l=A.ak(a2.w,a3.w,a4) +k=A.ak(a2.x,a3.x,a4) +j=A.ak(a2.y,a3.y,a4) +i=A.fb(a2.z,a3.z,a4) +h=a4<0.5 +if(h)g=a2.Q +else g=a3.Q +f=A.ak(a2.as,a3.as,a4) +e=A.o2(a2.at,a3.at,a4) +d=A.o2(a2.ax,a3.ax,a4) +c=A.o2(a2.ay,a3.ay,a4) +b=A.o2(a2.ch,a3.ch,a4) +a=A.ak(a2.CW,a3.CW,a4) +a0=A.fm(a2.cx,a3.cx,a4) +a1=A.c9(a2.cy,a3.cy,a4) +if(h)h=a2.db +else h=a3.db +return A.bIG(r,k,n,g,a,a0,b,a1,q,m,s,j,p,l,f,c,h,i,e,d,o)}, +Js:function Js(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}, +afA:function afA(){}, +fX(a,b,c,d,e,f,g,h,i,j,k){return new A.a0Z(f,h,e,d,a,i,c,g,k,b,j,null)}, +Bz(a,b,c,d,e,f,g,h,i,j,k,l,a0,a1){var s,r,q,p=null,o=g==null,n=o?p:new A.ag7(g,b),m=!1 +if(o)if(i==null)o=h==null +else o=m +else o=m +if(o)s=p +else{$label0$0:{o=new A.ag9(g,f,i,h,p) +break $label0$0}s=o}o=a0==null?p:new A.bK(a0,t.mD) +m=l==null?p:new A.bK(l,t.W7) +r=k==null?p:new A.bK(k,t.W7) +q=j==null?p:new A.bK(j,t.XR) +return A.Ah(a,p,p,p,p,d,p,p,n,p,q,r,m,new A.ag8(e,c),s,o,p,p,p,p,p,p,p,a1)}, +b7w:function b7w(a,b){this.a=a +this.b=b}, +a0Z:function a0Z(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.e=b +_.w=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.ax=h +_.cx=i +_.db=j +_.dx=k +_.a=l}, +Tl:function Tl(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}, +ak5:function ak5(){this.d=$ +this.c=this.a=null}, +agb:function agb(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.ay=a +_.ch=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}, +ag7:function ag7(a,b){this.a=a +this.b=b}, +ag9:function ag9(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +ag8:function ag8(a,b){this.a=a +this.b=b}, +aga:function aga(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 +_.fx=a +_.go=$ +_.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}, +b7t:function b7t(a){this.a=a}, +b7v:function b7v(a){this.a=a}, +b7u:function b7u(){}, +afu:function afu(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 +_.fx=a +_.fy=b +_.go=$ +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o +_.at=p +_.ax=q +_.ay=r +_.ch=s +_.CW=a0 +_.cx=a1 +_.cy=a2 +_.db=a3 +_.dx=a4 +_.dy=a5 +_.fr=a6}, +b48:function b48(a){this.a=a}, +b49:function b49(a){this.a=a}, +b4b:function b4b(a){this.a=a}, +b4a:function b4a(){}, +afv:function afv(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 +_.fx=a +_.fy=b +_.go=$ +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o +_.at=p +_.ax=q +_.ay=r +_.ch=s +_.CW=a0 +_.cx=a1 +_.cy=a2 +_.db=a3 +_.dx=a4 +_.dy=a5 +_.fr=a6}, +b4c:function b4c(a){this.a=a}, +b4d:function b4d(a){this.a=a}, +b4f:function b4f(a){this.a=a}, +b4e:function b4e(){}, +ahL:function ahL(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 +_.fx=a +_.go=$ +_.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}, +bal:function bal(a){this.a=a}, +bam:function bam(a){this.a=a}, +bao:function bao(a){this.a=a}, +bap:function bap(a){this.a=a}, +ban:function ban(){}, +an6:function an6(){}, +bJp(a,b,c){if(a===b)return a +return new A.tD(A.o3(a.a,b.a,c))}, +aC4(a,b){return new A.JT(b,a,null)}, +bmt(a){var s=a.au(t.g5),r=s==null?null:s.w +return r==null?A.q(a).aQ:r}, +tD:function tD(a){this.a=a}, +JT:function JT(a,b,c){this.w=a +this.b=b +this.a=c}, +agc:function agc(){}, +K3:function K3(a,b,c){this.c=a +this.e=b +this.a=c}, +RQ:function RQ(a){var _=this +_.d=a +_.c=_.a=_.e=null}, +K4:function K4(a,b,c,d){var _=this +_.f=_.e=null +_.r=!0 +_.w=a +_.a=b +_.b=c +_.c=d}, +tI:function tI(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}, +bT1(a,b,c){if(c!=null)return c +if(b)return new A.bhO(a) +return null}, +bhO:function bhO(a){this.a=a}, +b8j:function b8j(){}, +K6:function K6(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}, +bT0(a,b,c){if(c!=null)return c +if(b)return new A.bhN(a) +return null}, +bT5(a,b,c,d){var s,r,q,p,o,n +if(b){if(c!=null){s=c.$0() +r=new A.R(s.c-s.a,s.d-s.b)}else r=a.gv(0) +q=d.ai(0,B.j).ges() +p=d.ai(0,new A.z(0+r.a,0)).ges() +o=d.ai(0,new A.z(0,0+r.b)).ges() +n=d.ai(0,r.JK(0,B.j)).ges() +return Math.ceil(Math.max(Math.max(q,p),Math.max(o,n)))}return 35}, +bhN:function bhN(a){this.a=a}, +b8k:function b8k(){}, +K7:function K7(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}, +eQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,a0,a1){var s=null +return new A.a1b(d,p,s,s,s,s,o,s,s,s,s,m,n,k,!0,B.E,s,b,e,g,j,i,q,r,a0,f!==!1,!1,l,a,h,c,a1,s,s)}, +tL:function tL(){}, +BI:function BI(){}, +Sw:function Sw(a,b,c){this.f=a +this.b=b +this.a=c}, +K5:function K5(){}, +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,b5,b6){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ay=n +_.ch=o +_.CW=p +_.cx=q +_.cy=r +_.db=s +_.dx=a0 +_.dy=a1 +_.fr=a2 +_.fx=a3 +_.fy=a4 +_.go=a5 +_.id=a6 +_.k1=a7 +_.k2=a8 +_.k3=a9 +_.k4=b0 +_.ok=b1 +_.p1=b2 +_.p2=b3 +_.p4=b4 +_.R8=b5 +_.a=b6}, +vo:function vo(a,b){this.a=a +this.b=b}, +RO:function RO(a,b,c){var _=this +_.e=_.d=null +_.f=!1 +_.r=a +_.w=$ +_.x=null +_.y=b +_.z=null +_.Q=!1 +_.i6$=c +_.c=_.a=null}, +b8h:function b8h(){}, +b8d:function b8d(a){this.a=a}, +b8g:function b8g(){}, +b8i:function b8i(a,b){this.a=a +this.b=b}, +b8c:function b8c(a,b){this.a=a +this.b=b}, +b8f:function b8f(a){this.a=a}, +b8e:function b8e(a,b){this.a=a +this.b=b}, +a1b:function a1b(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}, +V0:function V0(){}, +kN:function kN(){}, +ahv:function ahv(a){this.a=a}, +jK:function jK(a,b){this.b=a +this.a=b}, +hJ:function hJ(a,b,c){this.b=a +this.c=b +this.a=c}, +bII(a){var s +$label0$0:{if(-1===a){s="FloatingLabelAlignment.start" +break $label0$0}if(0===a){s="FloatingLabelAlignment.center" +break $label0$0}s="FloatingLabelAlignment(x: "+B.e.aF(a,1)+")" +break $label0$0}return s}, +ml(a,b){var s=a==null?null:a.aM(B.bh,b,a.gcF()) +return s==null?0:s}, +FE(a,b){var s=a==null?null:a.aM(B.aM,b,a.gcb()) +return s==null?0:s}, +FF(a,b){var s=a==null?null:a.aM(B.bi,b,a.gcE()) +return s==null?0:s}, +jQ(a){var s=a==null?null:a.gv(0) +return s==null?B.V:s}, +bQL(a,b){var s=a.F9(B.H,!0) +return s==null?a.gv(0).b:s}, +bQM(a,b){var s=a.ii(b,B.H) +return s==null?a.aM(B.af,b,a.gdD()).b:s}, +bJx(a,b,c,d,e,f,g,h,i){return new A.xf(c,a,h,i,f,g,!1,e,b,null)}, +a1c(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){return new A.xe(b4,b5,b8,c0,b9,a0,a4,a7,a6,a5,b1,b0,b2,a9,a8,k,o,n,m,s,r,b7,d,b6,c2,c4,c1,c6,c5,c3,c9,c8,d3,d2,d0,d1,g,e,f,q,p,a1,b3,l,a2,a3,h,j,b,i,c7,a,c)}, +bJw(a,b,c,d,e,f){return new A.BH(f,d,c,e,b,a)}, +RR:function RR(a){var _=this +_.a=null +_.M$=_.b=0 +_.U$=a +_.aE$=_.ac$=0}, +RS:function RS(a,b){this.a=a +this.b=b}, +ago:function ago(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}, +Q8:function Q8(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +adc:function adc(a,b){var _=this +_.x=_.w=_.r=_.f=_.e=_.d=$ +_.dI$=a +_.b8$=b +_.c=_.a=null}, +RE:function RE(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}, +RF:function RF(a,b){var _=this +_.d=$ +_.f=_.e=null +_.fp$=a +_.c3$=b +_.c=_.a=null}, +b5l:function b5l(){}, +Ju:function Ju(a,b){this.a=a +this.b=b}, +a0g:function a0g(){}, +id:function id(a,b){this.a=a +this.b=b}, +aen:function aen(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}, +bbN:function bbN(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +SN:function SN(a,b,c,d,e,f,g,h,i,j){var _=this +_.A=a +_.X=b +_.a9=c +_.aC=d +_.aQ=e +_.M=f +_.U=g +_.ac=null +_.fj$=h +_.fx=i +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=j +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bbR:function bbR(a){this.a=a}, +bbQ:function bbQ(a){this.a=a}, +bbP:function bbP(a,b){this.a=a +this.b=b}, +bbO:function bbO(a){this.a=a}, +aeq:function aeq(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.a=g}, +xf:function xf(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}, +RT:function RT(a,b,c){var _=this +_.f=_.e=_.d=$ +_.r=a +_.y=_.x=_.w=$ +_.z=null +_.dI$=b +_.b8$=c +_.c=_.a=null}, +b8w:function b8w(){}, +xe:function xe(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){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 +_.bG=c8 +_.bx=c9 +_.a2=d0 +_.by=d1 +_.bI=d2 +_.bR=d3}, +BH:function BH(a,b,c,d,e,f){var _=this +_.e=a +_.cy=b +_.db=c +_.go=d +_.k2=e +_.k3=f}, +b8l:function b8l(a,b,c,d,e,f,g){var _=this +_.p1=a +_.p3=_.p2=$ +_.e=b +_.cy=c +_.db=d +_.go=e +_.k2=f +_.k3=g}, +b8r:function b8r(a){this.a=a}, +b8o:function b8o(a){this.a=a}, +b8m:function b8m(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}, +b8s:function b8s(a){this.a=a}, +b8p:function b8p(a){this.a=a}, +b8q:function b8q(a){this.a=a}, +b8n:function b8n(a){this.a=a}, +agp:function agp(){}, +UG:function UG(){}, +UY:function UY(){}, +V1:function V1(){}, +anq:function anq(){}, +os(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){return new A.mX(i,s,q,a0,!1,c,a1,p,n,b,e,l,k,m,g,f,!1,r,o,d,j,null)}, +bQN(a,b){var s=a.b +s.toString +t.r.a(s).a=b}, +aEZ:function aEZ(a,b){this.a=a +this.b=b}, +xt:function xt(a,b){this.a=a +this.b=b}, +mX:function mX(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.CW=j +_.cx=k +_.cy=l +_.dx=m +_.fr=n +_.fy=o +_.id=p +_.k1=q +_.k2=r +_.k3=s +_.k4=a0 +_.p3=a1 +_.a=a2}, +aF_:function aF_(a){this.a=a}, +agm:function agm(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +nH:function nH(a,b){this.a=a +this.b=b}, +agO:function agO(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}, +SV:function SV(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.A=a +_.X=b +_.a9=c +_.aC=d +_.aQ=e +_.M=f +_.U=g +_.ac=h +_.aE=i +_.cB=j +_.c4=k +_.fj$=l +_.fx=m +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=n +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bbW:function bbW(a,b){this.a=a +this.b=b}, +bbV:function bbV(a){this.a=a}, +b97:function b97(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){var _=this +_.db=a +_.fr=_.dy=_.dx=$ +_.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}, +anv:function anv(){}, +bKx(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){return new A.BW(b,m,n,k,e,p,s,o,f,a,q,l,d,i,g,h,c,j,a0,r)}, +bKy(a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0 +if(a1===a2)return a1 +s=a3<0.5 +if(s)r=a1.a +else r=a2.a +q=A.fb(a1.b,a2.b,a3) +if(s)p=a1.c +else p=a2.c +o=A.U(a1.d,a2.d,a3) +n=A.U(a1.e,a2.e,a3) +m=A.U(a1.f,a2.f,a3) +l=A.c9(a1.r,a2.r,a3) +k=A.c9(a1.w,a2.w,a3) +j=A.c9(a1.x,a2.x,a3) +i=A.fm(a1.y,a2.y,a3) +h=A.U(a1.z,a2.z,a3) +g=A.U(a1.Q,a2.Q,a3) +f=A.ak(a1.as,a2.as,a3) +e=A.ak(a1.at,a2.at,a3) +d=A.ak(a1.ax,a2.ax,a3) +c=A.ak(a1.ay,a2.ay,a3) +if(s)b=a1.ch +else b=a2.ch +if(s)a=a1.CW +else a=a2.CW +if(s)a0=a1.cx +else a0=a2.cx +if(s)s=a1.cy +else s=a2.cy +return A.bKx(i,r,b,f,n,j,d,c,e,a,o,g,q,p,k,m,h,s,l,a0)}, +bKz(a){var s=a.au(t.NJ),r=s==null?null:s.gaci(0) +return r==null?A.q(a).M:r}, +BW:function BW(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 +_.cx=s +_.cy=a0}, +agP:function agP(){}, +OT:function OT(a,b){this.c=a +this.a=b}, +aUt:function aUt(){}, +TZ:function TZ(a){var _=this +_.e=_.d=null +_.f=a +_.c=_.a=null}, +bfq:function bfq(a){this.a=a}, +bfp:function bfp(a){this.a=a}, +bfr:function bfr(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a2_:function a2_(a,b){this.c=a +this.a=b}, +fI(a,b,c,d,e,f,g,h,i,j,k,l,m){return new A.qj(d,m,g,f,i,k,l,j,!0,e,a,c,h)}, +bJv(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.gbt(r) +if(!(o instanceof A.G)||!o.pX(r))return null +h.push(o) +r=o}if(q<=p){n=s.gbt(s) +if(!(n instanceof A.G)||!n.pX(s))return null +g.push(n) +s=n}}m=new A.bW(new Float64Array(16)) +m.eo() +l=new A.bW(new Float64Array(16)) +l.eo() +for(k=g.length-1;k>0;k=j){j=k-1 +g[k].er(g[j],m)}for(k=h.length-1;k>0;k=j){j=k-1 +h[k].er(h[j],l)}if(l.hn(l)!==0){l.e7(0,m) +i=l}else i=null +return i}, +xB:function xB(a,b){this.a=a +this.b=b}, +qj:function qj(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}, +ah3:function ah3(a,b,c){var _=this +_.d=a +_.dI$=b +_.b8$=c +_.c=_.a=null}, +b9L:function b9L(a){this.a=a}, +SR:function SR(a,b,c,d,e,f){var _=this +_.E=a +_.af=b +_.aZ=c +_.bH=null +_.H$=d +_.fx=e +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +agn:function agn(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +on:function on(){}, +yF:function yF(a,b){this.a=a +this.b=b}, +S4:function S4(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}, +ah_:function ah_(a,b){var _=this +_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +b9v:function b9v(){}, +b9w:function b9w(){}, +b9x:function b9x(){}, +b9y:function b9y(){}, +Ts:function Ts(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +akh:function akh(a,b,c){this.b=a +this.c=b +this.a=c}, +anb:function anb(){}, +ah0:function ah0(){}, +a__:function a__(){}, +bL3(a,b,c){if(a===b)return a +return new A.a3Y(A.bmU(a.a,b.a,c))}, +a3Y:function a3Y(a){this.a=a}, +bL4(a,b,c){if(a===b)return a +return new A.L6(A.o3(a.a,b.a,c))}, +L6:function L6(a){this.a=a}, +ah7:function ah7(){}, +bmU(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null +if(a==b)return a +s=a==null +r=s?e:a.a +q=b==null +p=q?e:b.a +o=t.MH +p=A.bJ(r,p,c,A.dg(),o) +r=s?e:a.b +r=A.bJ(r,q?e:b.b,c,A.dg(),o) +n=s?e:a.c +o=A.bJ(n,q?e:b.c,c,A.dg(),o) +n=s?e:a.d +m=q?e:b.d +m=A.bJ(n,m,c,A.VE(),t.PM) +n=s?e:a.e +l=q?e:b.e +l=A.bJ(n,l,c,A.bpl(),t.pc) +n=s?e:a.f +k=q?e:b.f +j=t.tW +k=A.bJ(n,k,c,A.VD(),j) +n=s?e:a.r +n=A.bJ(n,q?e:b.r,c,A.VD(),j) +i=s?e:a.w +j=A.bJ(i,q?e:b.w,c,A.VD(),j) +i=s?e:a.x +i=A.bob(i,q?e:b.x,c) +h=s?e:a.y +g=q?e:b.y +g=A.bJ(h,g,c,A.biu(),t.KX) +h=c<0.5 +if(h)f=s?e:a.z +else f=q?e:b.z +if(h)h=s?e:a.Q +else h=q?e:b.Q +s=s?e:a.as +return new A.a3Z(p,r,o,m,l,k,n,j,i,g,f,h,A.vZ(s,q?e:b.as,c))}, +a3Z:function a3Z(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}, +ah8:function ah8(){}, +bL5(a,b,c){if(a===b)return a +return new A.Ca(A.bmU(a.a,b.a,c))}, +Ca:function Ca(a){this.a=a}, +ah9:function ah9(){}, +bLv(a,b,c){var s,r,q,p,o,n,m,l,k,j +if(a===b)return a +s=A.ak(a.a,b.a,c) +r=A.U(a.b,b.b,c) +q=A.ak(a.c,b.c,c) +p=A.U(a.d,b.d,c) +o=A.U(a.e,b.e,c) +n=A.U(a.f,b.f,c) +m=A.fb(a.r,b.r,c) +l=A.bJ(a.w,b.w,c,A.Gt(),t.p8) +k=A.bJ(a.x,b.x,c,A.bzY(),t.lF) +if(c<0.5)j=a.y +else j=b.y +return new A.LB(s,r,q,p,o,n,m,l,k,j,A.bJ(a.z,b.z,c,A.dg(),t.MH))}, +LB:function LB(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}, +ahq:function ahq(){}, +bLw(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b)return a +s=A.ak(a.a,b.a,c) +r=A.U(a.b,b.b,c) +q=A.ak(a.c,b.c,c) +p=A.U(a.d,b.d,c) +o=A.U(a.e,b.e,c) +n=A.U(a.f,b.f,c) +m=A.fb(a.r,b.r,c) +l=a.w +l=A.NW(l,l,c) +k=A.bJ(a.x,b.x,c,A.Gt(),t.p8) +return new A.LC(s,r,q,p,o,n,m,l,k,A.bJ(a.y,b.y,c,A.bzY(),t.lF))}, +LC:function LC(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}, +ahr:function ahr(){}, +bLx(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.ak(a.b,b.b,c) +q=A.c9(a.c,b.c,c) +p=A.c9(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.q6(o,b.e,c) +n=a.f +if(n==null)m=b.f==null +else m=!1 +if(m)n=null +else n=A.q6(n,b.f,c) +m=A.ak(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.U(a.y,b.y,c) +i=A.fb(a.z,b.z,c) +h=A.ak(a.Q,b.Q,c) +return new A.LD(s,r,q,p,o,n,m,k,l,j,i,h,A.ak(a.as,b.as,c))}, +LD:function LD(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}, +ahs:function ahs(){}, +buN(a,b,c,d,e,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=null +$label0$0:{s=a4==null +if(s&&e==null){r=f +break $label0$0}r=new A.Sq(a4,e) +break $label0$0}$label1$1:{q=c==null +if(q){p=d==null +o=p}else{p=f +o=!1}if(o){o=f +break $label1$1}if(q?p:d==null){o=new A.bK(c,t.rc) +break $label1$1}o=new A.Sq(c,d) +break $label1$1}$label2$2:{break $label2$2}$label3$3:{if(s){s=f +break $label3$3}s=new A.ahI(a4) +break $label3$3}n=b3==null?f:new A.bK(b3,t.uE) +m=a8==null?f:new A.bK(a8,t.De) +l=a1==null?f:new A.bK(a1,t.XR) +k=new A.bK(a7,t.mD) +j=a6==null?f:new A.bK(a6,t.W7) +i=a5==null?f:new A.bK(a5,t.W7) +h=new A.bK(b0,t.y4) +g=new A.bK(a9,t.li) +return A.Ah(a,b,f,o,l,a2,f,f,r,f,f,i,j,new A.ahH(a3,a0),s,k,m,g,h,b1,f,b2,n,b4)}, +bU8(a){var s=A.q(a),r=s.p2.as,q=r==null?null:r.r +if(q==null)q=14 +r=A.de(a,B.cP) +r=r==null?null:r.gem() +if(r==null)r=B.aB +return A.arf(new A.al(24,0,24,0),new A.al(12,0,12,0),new A.al(6,0,6,0),q*r.a/14)}, +a5m:function a5m(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}, +Sq:function Sq(a,b){this.a=a +this.b=b}, +ahI:function ahI(a){this.a=a}, +ahH:function ahH(a,b){this.a=a +this.b=b}, +ahJ:function ahJ(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 +_.fx=a +_.fy=$ +_.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}, +bah:function bah(a){this.a=a}, +baj:function baj(a){this.a=a}, +bak:function bak(a){this.a=a}, +bai:function bai(){}, +ani:function ani(){}, +anj:function anj(){}, +ank:function ank(){}, +bLP(a,b,c){if(a===b)return a +return new A.LQ(A.o3(a.a,b.a,c))}, +LQ:function LQ(a){this.a=a}, +ahK:function ahK(){}, +ql(a,b,c){var s=null,r=A.a([],t.Zt),q=$.ab,p=A.qF(B.cT),o=A.a([],t.wi),n=$.aW(),m=$.ab,l=c.i("a_<0?>"),k=c.i("aq<0?>"),j=b==null?B.i1:b +return new A.u0(a,!1,!0,!1,s,s,r,A.bn(t.f9),new A.bG(s,c.i("bG>")),new A.bG(s,t.A),new A.ud(),s,0,new A.aq(new A.a_(q,c.i("a_<0?>")),c.i("aq<0?>")),p,o,j,new A.cS(s,n),new A.aq(new A.a_(m,l),k),new A.aq(new A.a_(m,l),k),c.i("u0<0>"))}, +u0:function u0(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1){var _=this +_.d9=a +_.aC=b +_.aQ=c +_.M=d +_.go=e +_.id=f +_.k1=!1 +_.k3=_.k2=null +_.k4=g +_.ok=h +_.p1=i +_.p2=j +_.p3=k +_.p4=$ +_.R8=null +_.RG=$ +_.mb$=l +_.rl$=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}, +a3P:function a3P(){}, +S5:function S5(){}, +byy(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j +if(c<=0||d<=0)return +s=$.ap().br() +s.srv(B.eU) +s.saG(0,A.asq(0,0,0,d)) +r=b.b +r===$&&A.b() +r=r.a +r===$&&A.b() +q=B.d.aA(r.a.width())/e +r=b.b.a +r===$&&A.b() +p=B.d.aA(r.a.height())/e +o=q*c +n=p*c +m=(q-o)/2 +l=(p-n)/2 +r=a.gca(0) +k=b.b.a +k===$&&A.b() +k=B.d.aA(k.a.width()) +j=b.b.a +j===$&&A.b() +r.rf(b,new A.I(0,0,k,B.d.aA(j.a.height())),new A.I(m,l,m+o,l+n),s)}, +bzi(a,b,c){var s,r +a.eo() +if(b===1)return +a.i2(0,b,b) +s=c.a +r=c.b +a.bs(0,-((s*b-s)/2),-((r*b-r)/2))}, +bye(a,b,c,d){var s=new A.UA(c,a,d,b,new A.bW(new Float64Array(16)),A.aK(),A.aK(),$.aW()),r=s.geS() +a.a4(0,r) +a.fG(s.gBq()) +d.a.a4(0,r) +b.a4(0,r) +return s}, +byf(a,b,c,d){var s=new A.UB(c,d,b,a,new A.bW(new Float64Array(16)),A.aK(),A.aK(),$.aW()),r=s.geS() +d.a.a4(0,r) +b.a4(0,r) +a.fG(s.gBq()) +return s}, +amO:function amO(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +bh5:function bh5(a){this.a=a}, +bh6:function bh6(a){this.a=a}, +bh7:function bh7(a){this.a=a}, +bh8:function bh8(a){this.a=a}, +vP:function vP(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 +_.d=$ +_.uX$=a +_.px$=b +_.rn$=c +_.c=_.a=null}, +vQ:function vQ(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +amN:function amN(a,b,c){var _=this +_.d=$ +_.uX$=a +_.px$=b +_.rn$=c +_.c=_.a=null}, +qr:function qr(){}, +aco:function aco(){}, +Zy:function Zy(){}, +a5r:function a5r(){}, +aMd:function aMd(a){this.a=a}, +Fw:function Fw(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f +_.$ti=g}, +Sv:function Sv(a){var _=this +_.c=_.a=_.d=null +_.$ti=a}, +Gd:function Gd(){}, +UA:function UA(a,b,c,d,e,f,g,h){var _=this +_.r=a +_.w=b +_.x=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.M$=0 +_.U$=h +_.aE$=_.ac$=0}, +bh3:function bh3(a,b){this.a=a +this.b=b}, +UB:function UB(a,b,c,d,e,f,g,h){var _=this +_.r=a +_.w=b +_.x=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.M$=0 +_.U$=h +_.aE$=_.ac$=0}, +bh4:function bh4(a,b){this.a=a +this.b=b}, +ahP:function ahP(){}, +Vj:function Vj(){}, +Vk:function Vk(){}, +bMf(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.fb(a.b,b.b,c) +q=A.fm(a.c,b.c,c) +p=A.ak(a.d,b.d,c) +o=A.U(a.e,b.e,c) +n=A.U(a.f,b.f,c) +m=A.c9(a.r,b.r,c) +l=A.bJ(a.w,b.w,c,A.Gt(),t.p8) +k=c<0.5 +if(k)j=a.x +else j=b.x +if(k)i=a.y +else i=b.y +if(k)k=a.z +else k=b.z +h=A.U(a.Q,b.Q,c) +return new A.Mg(s,r,q,p,o,n,m,l,j,i,k,h,A.ak(a.as,b.as,c))}, +Mg:function Mg(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}, +aiv:function aiv(){}, +aEV(a,b,c,d,e,f){return new A.Kv(d,b,e,a,c,f,null,null,null)}, +bPo(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.EB(a,j,i,b,h,c,d,g,e,r,s?A.M(i,0,1)*6.282185307179586:Math.max(b*3/2*3.141592653589793-h*3/2*3.141592653589793,0.001),f,null)}, +wh(a,b,c,d,e,f,g,h,i,j){return new A.kw(h,f,g,i,a,b,j,d,e,c)}, +aXy:function aXy(a,b){this.a=a +this.b=b}, +a6m:function a6m(){}, +agK:function agK(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +b93:function b93(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Kv:function Kv(a,b,c,d,e,f,g,h,i){var _=this +_.y=a +_.z=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.a=i}, +agL:function agL(a,b){var _=this +_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +b94:function b94(a,b){this.a=a +this.b=b}, +EB:function EB(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}, +kw:function kw(a,b,c,d,e,f,g,h,i,j){var _=this +_.z=a +_.Q=b +_.as=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.a=j}, +Qk:function Qk(a,b){var _=this +_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +b_9:function b_9(a){this.a=a}, +aj1:function aj1(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}, +MB:function MB(a,b,c,d,e,f,g,h,i,j){var _=this +_.z=a +_.Q=b +_.as=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h +_.w=i +_.a=j}, +aj2:function aj2(a,b){var _=this +_.z=_.y=$ +_.Q=null +_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +bbF:function bbF(a){this.a=a}, +b_8:function b_8(a,b,c,d,e,f){var _=this +_.f=a +_.r=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +b92:function b92(a,b,c,d,e,f){var _=this +_.f=a +_.r=$ +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f}, +UL:function UL(){}, +V2:function V2(){}, +bMt(a,b,c){var s,r,q,p +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.U(a.b,b.b,c) +q=A.ak(a.c,b.c,c) +p=A.U(a.d,b.d,c) +return new A.CX(s,r,q,p,A.U(a.e,b.e,c))}, +aNh(a){var s +a.au(t.C0) +s=A.q(a) +return s.d3}, +CX:function CX(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aiA:function aiA(){}, +bMv(a,b,c){var s,r,q,p,o,n +if(a===b)return a +s=c<0.5 +if(s)r=a.a +else r=b.a +q=t.MH +p=A.bJ(a.b,b.b,c,A.dg(),q) +if(s)o=a.e +else o=b.e +q=A.bJ(a.c,b.c,c,A.dg(),q) +n=A.ak(a.d,b.d,c) +if(s)s=a.f +else s=b.f +return new A.Mr(r,p,q,n,o,s)}, +Mr:function Mr(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aiF:function aiF(){}, +bvj(a,b){return new A.Mz(a,b,null)}, +vC:function vC(a,b){this.a=a +this.b=b}, +aNY:function aNY(a,b){this.a=a +this.b=b}, +b89:function b89(a,b){this.a=a +this.b=b}, +Mz:function Mz(a,b,c){this.c=a +this.f=b +this.a=c}, +MA:function MA(a,b){var _=this +_.x=_.w=_.r=_.f=_.e=_.d=$ +_.as=_.Q=_.y=null +_.at=$ +_.dI$=a +_.b8$=b +_.c=_.a=null}, +aNT:function aNT(a){this.a=a}, +aNR:function aNR(a,b){this.a=a +this.b=b}, +aNS:function aNS(a){this.a=a}, +aNW:function aNW(a,b){this.a=a +this.b=b}, +aNU:function aNU(a){this.a=a}, +aNV:function aNV(a,b){this.a=a +this.b=b}, +aNX:function aNX(a,b){this.a=a +this.b=b}, +SJ:function SJ(){}, +lb(a,b,c,d,e){return new A.Nh(a,c,b,d,e,null)}, +Nm(a){var s=a.o_(t.Np) +if(s!=null)return s +throw A.d(A.wU(A.a([A.pS("Scaffold.of() called with a context that does not contain a Scaffold."),A.c3("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.a_W('There are several ways to avoid this problem. The simplest is to use a Builder to get a context that is "under" the Scaffold. For an example of this, please see the documentation for Scaffold.of():\n https://api.flutter.dev/flutter/material/Scaffold/of.html'),A.a_W("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.aRB("The context used was")],t.E)))}, +ks:function ks(a,b){this.a=a +this.b=b}, +Nk:function Nk(a,b){this.c=a +this.a=b}, +Nl:function Nl(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.r=c +_.y=_.x=_.w=null +_.dI$=d +_.b8$=e +_.c=_.a=null}, +aPO:function aPO(a){this.a=a}, +aPP:function aPP(a,b){this.a=a +this.b=b}, +aPK:function aPK(a){this.a=a}, +aPL:function aPL(){}, +aPN:function aPN(a,b){this.a=a +this.b=b}, +aPM:function aPM(a,b,c){this.a=a +this.b=b +this.c=c}, +T8:function T8(a,b,c){this.f=a +this.b=b +this.a=c}, +aPQ:function aPQ(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}, +Nj:function Nj(a,b){this.a=a +this.b=b}, +ajU:function ajU(a,b,c){var _=this +_.a=a +_.b=null +_.c=b +_.M$=0 +_.U$=c +_.aE$=_.ac$=0}, +Q7:function Q7(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.a=d +_.b=e +_.c=f +_.d=g}, +adb:function adb(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +bcU:function bcU(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 +_.ay=m +_.b=null}, +Rq:function Rq(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +Rr:function Rr(a,b){var _=this +_.d=$ +_.r=_.f=_.e=null +_.Q=_.z=_.y=_.x=_.w=$ +_.as=null +_.dI$=a +_.b8$=b +_.c=_.a=null}, +b4g:function b4g(a,b){this.a=a +this.b=b}, +Nh:function Nh(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.ch=c +_.CW=d +_.cy=e +_.a=f}, +Dk:function Dk(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){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 +_.dd$=i +_.kL$=j +_.Dj$=k +_.iz$=l +_.kM$=m +_.dI$=n +_.b8$=o +_.c=_.a=null}, +aPS:function aPS(a,b){this.a=a +this.b=b}, +aPR:function aPR(a,b){this.a=a +this.b=b}, +aPT:function aPT(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aeK:function aeK(a,b){this.e=a +this.a=b +this.b=null}, +Ni:function Ni(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +ajV:function ajV(a,b,c){this.f=a +this.b=b +this.a=c}, +bcV:function bcV(){}, +T9:function T9(){}, +Ta:function Ta(){}, +Tb:function Tb(){}, +UW:function UW(){}, +aQy(a,b,c,d,e){return new A.a7W(a,b,e,d,c,null)}, +a7W:function a7W(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.a=f}, +Fl:function Fl(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.Q=f +_.ay=g +_.ch=h +_.cx=i +_.cy=j +_.db=k +_.a=l}, +ah2:function ah2(a,b,c,d){var _=this +_.fr=$ +_.fy=_.fx=!1 +_.k1=_.id=_.go=$ +_.w=_.r=_.f=_.e=_.d=null +_.y=_.x=$ +_.z=a +_.Q=!1 +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=b +_.CW=$ +_.dI$=c +_.b8$=d +_.c=_.a=null}, +b9E:function b9E(a){this.a=a}, +b9B:function b9B(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b9D:function b9D(a,b,c){this.a=a +this.b=b +this.c=c}, +b9C:function b9C(a,b,c){this.a=a +this.b=b +this.c=c}, +b9A:function b9A(a){this.a=a}, +b9K:function b9K(a){this.a=a}, +b9J:function b9J(a){this.a=a}, +b9I:function b9I(a){this.a=a}, +b9G:function b9G(a){this.a=a}, +b9H:function b9H(a){this.a=a}, +b9F:function b9F(a){this.a=a}, +bNf(a,b,c){var s,r,q,p,o,n,m,l,k,j +if(a===b)return a +s=t.X7 +r=A.bJ(a.a,b.a,c,A.bAM(),s) +q=A.bJ(a.b,b.b,c,A.VE(),t.PM) +s=A.bJ(a.c,b.c,c,A.bAM(),s) +p=a.d +o=b.d +p=c<0.5?p:o +o=A.Ms(a.e,b.e,c) +n=t.MH +m=A.bJ(a.f,b.f,c,A.dg(),n) +l=A.bJ(a.r,b.r,c,A.dg(),n) +n=A.bJ(a.w,b.w,c,A.dg(),n) +k=A.ak(a.x,b.x,c) +j=A.ak(a.y,b.y,c) +return new A.Dn(r,q,s,p,o,m,l,n,k,j,A.ak(a.z,b.z,c))}, +bTy(a,b,c){return c<0.5?a:b}, +Dn:function Dn(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}, +ak0:function ak0(){}, +bNh(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h +if(a===b)return a +s=A.bJ(a.a,b.a,c,A.VE(),t.PM) +r=t.MH +q=A.bJ(a.b,b.b,c,A.dg(),r) +p=A.bJ(a.c,b.c,c,A.dg(),r) +o=A.bJ(a.d,b.d,c,A.dg(),r) +r=A.bJ(a.e,b.e,c,A.dg(),r) +n=A.bNg(a.f,b.f,c) +m=A.bJ(a.r,b.r,c,A.biu(),t.KX) +l=A.bJ(a.w,b.w,c,A.bpl(),t.pc) +k=t.p8 +j=A.bJ(a.x,b.x,c,A.Gt(),k) +k=A.bJ(a.y,b.y,c,A.Gt(),k) +i=A.o2(a.z,b.z,c) +if(c<0.5)h=a.Q +else h=b.Q +return new A.Nu(s,q,p,o,r,n,m,l,j,k,i,h)}, +bNg(a,b,c){if(a==b)return a +return A.bob(a,b,c)}, +Nu:function Nu(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}, +ak1:function ak1(){}, +bNj(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.ak(a.b,b.b,c) +q=A.U(a.c,b.c,c) +p=A.bNi(a.d,b.d,c) +o=A.buM(a.e,b.e,c) +n=A.ak(a.f,b.f,c) +m=a.r +l=b.r +k=A.c9(m,l,c) +m=A.c9(m,l,c) +l=A.o2(a.x,b.x,c) +return new A.Nv(s,r,q,p,o,n,k,m,l,A.U(a.y,b.y,c))}, +bNi(a,b,c){if(a==null||b==null)return null +if(a===b)return a +return A.bF(a,b,c)}, +Nv:function Nv(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}, +ak2:function ak2(){}, +bNo(a,b,c){var s,r +if(a===b)return a +s=A.o3(a.a,b.a,c) +if(c<0.5)r=a.b +else r=b.b +return new A.Nw(s,r)}, +Nw:function Nw(a,b){this.a=a +this.b=b}, +ak3:function ak3(){}, +bQO(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,a0){var s=null,r=new A.FH(o,A.uZ(s,s,s,s,s,B.bn,s,s,B.aB,B.aX),a0,l,j,m,b,f,n,q,k,i,h,g,p,d,e,a,!1,new A.bk(),A.aK()) +r.b5() +r.arj(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,a0) +return r}, +bdP:function bdP(a,b){this.a=a +this.b=b}, +a8q:function a8q(a,b){this.a=a +this.b=b}, +O1:function O1(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.e=b +_.r=c +_.w=d +_.x=e +_.y=f +_.z=g +_.a=h}, +Tw:function Tw(a,b,c,d){var _=this +_.r=_.f=_.e=_.d=$ +_.w=null +_.x=a +_.y=$ +_.z=null +_.Q=!1 +_.at=_.as=null +_.ay=_.ax=!1 +_.ch=b +_.CW=null +_.dI$=c +_.b8$=d +_.c=_.a=null}, +bdM:function bdM(a,b){this.a=a +this.b=b}, +bdN:function bdN(a,b){this.a=a +this.b=b}, +bdK:function bdK(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bdL:function bdL(a){this.a=a}, +bdJ:function bdJ(a){this.a=a}, +bdO:function bdO(a){this.a=a}, +akw:function akw(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}, +FH:function FH(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 +_.aC=_.a9=_.X=$ +_.aQ=b +_.U=_.M=$ +_.ac=!1 +_.aE=0 +_.cB=null +_.c4=c +_.eM=d +_.fT=e +_.H=f +_.d3=g +_.aR=h +_.b_=i +_.cU=j +_.ed=k +_.cY=l +_.h7=m +_.fU=n +_.cG=o +_.eN=p +_.f5=q +_.h8=!1 +_.lC=r +_.yA$=s +_.fx=a0 +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=a1 +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bc4:function bc4(a){this.a=a}, +bc2:function bc2(){}, +bc1:function bc1(){}, +bc3:function bc3(a){this.a=a}, +nC:function nC(a){this.a=a}, +FS:function FS(a,b){this.a=a +this.b=b}, +amk:function amk(a,b){this.d=a +this.a=b}, +aju:function aju(a,b,c,d){var _=this +_.A=$ +_.X=a +_.yA$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bdH:function bdH(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}, +bdI:function bdI(a){this.a=a}, +V9:function V9(){}, +Vb:function Vb(){}, +Vf:function Vf(){}, +bvU(a,b){return new A.O2(b,a,null)}, +bvW(a){var s=a.au(t.Dj) +return s!=null?s.w:A.q(a).cY}, +bvV(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.Dx(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)}, +bNG(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.ak(b3.a,b4.a,b5) +r=A.U(b3.b,b4.b,b5) +q=A.U(b3.c,b4.c,b5) +p=A.U(b3.d,b4.d,b5) +o=A.U(b3.e,b4.e,b5) +n=A.U(b3.r,b4.r,b5) +m=A.U(b3.f,b4.f,b5) +l=A.U(b3.w,b4.w,b5) +k=A.U(b3.x,b4.x,b5) +j=A.U(b3.y,b4.y,b5) +i=A.U(b3.z,b4.z,b5) +h=A.U(b3.Q,b4.Q,b5) +g=A.U(b3.as,b4.as,b5) +f=A.U(b3.at,b4.at,b5) +e=A.U(b3.ax,b4.ax,b5) +d=A.U(b3.ay,b4.ay,b5) +c=A.U(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.c9(b3.id,b4.id,b5) +b0=A.ak(b3.k1,b4.k1,b5) +b1=b?b3.k2:b4.k2 +b2=b?b3.k3:b4.k3 +return A.bvV(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)}, +O2:function O2(a,b,c){this.w=a +this.b=b +this.a=c}, +aRB:function aRB(a,b){this.a=a +this.b=b}, +Dx:function Dx(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,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}, +aRP:function aRP(){}, +aRQ:function aRQ(){}, +aRR:function aRR(){}, +aqp:function aqp(){}, +a7t:function a7t(){}, +aPs:function aPs(){}, +a7s:function a7s(a){this.a=a}, +aPr:function aPr(){}, +aNQ:function aNQ(){}, +aww:function aww(){}, +ajO:function ajO(){}, +akx:function akx(){}, +ki(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){return new A.yI(h,d,k,n,p,s,q,l,e,a,b,r,g,j,c,o,i,f,m)}, +bxN(a){var s=null +return new A.be0(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +nn:function nn(a,b){this.a=a +this.b=b}, +Ob:function Ob(a,b,c){this.r=a +this.w=b +this.a=c}, +Tz:function Tz(){this.d=!1 +this.c=this.a=null}, +bdS:function bdS(a){this.a=a}, +bdV:function bdV(a,b,c){this.a=a +this.b=b +this.c=c}, +bdW:function bdW(a,b,c){this.a=a +this.b=b +this.c=c}, +bdT:function bdT(a,b){this.a=a +this.b=b}, +bdU:function bdU(a,b){this.a=a +this.b=b}, +yI:function yI(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}, +TA:function TA(){var _=this +_.d=!1 +_.c=_.a=_.x=_.w=_.r=_.f=_.e=null}, +bdY:function bdY(a){this.a=a}, +bdX:function bdX(a){this.a=a}, +bdZ:function bdZ(){}, +be_:function be_(){}, +be0:function be0(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}, +be1:function be1(a){this.a=a}, +bNJ(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return new A.DD(d,c,i,g,k,m,e,n,l,f,b,a,h,j)}, +bNK(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.U(a.a,b.a,c) +r=A.U(a.b,b.b,c) +q=A.U(a.c,b.c,c) +p=A.c9(a.d,b.d,c) +o=A.ak(a.e,b.e,c) +n=A.fb(a.f,b.f,c) +m=c<0.5 +if(m)l=a.r +else l=b.r +k=A.ak(a.w,b.w,c) +j=A.a_K(a.x,b.x,c) +i=A.U(a.z,b.z,c) +h=A.ak(a.Q,b.Q,c) +g=A.U(a.as,b.as,c) +f=A.U(a.at,b.at,c) +if(m)m=a.ax +else m=b.ax +return A.bNJ(g,h,r,s,l,i,p,f,q,m,o,j,n,k)}, +a8G:function a8G(a,b){this.a=a +this.b=b}, +DD:function DD(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}, +akG:function akG(){}, +bxO(a){var s=null +return new A.akZ(a,s,s,s,s,s,s,s,s,s)}, +al1:function al1(a,b){this.a=a +this.b=b}, +a95:function a95(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ch=n +_.CW=o +_.cx=p +_.cy=q +_.db=r +_.dx=s +_.fx=a0 +_.fy=a1 +_.id=a2 +_.k1=a3 +_.a=a4}, +S6:function S6(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}, +S7:function S7(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.d=a +_.f=_.e=!1 +_.pB$=b +_.lB$=c +_.nX$=d +_.v2$=e +_.v3$=f +_.yF$=g +_.v4$=h +_.yG$=i +_.We$=j +_.Ld$=k +_.v5$=l +_.rs$=m +_.rt$=n +_.dI$=o +_.b8$=p +_.c=_.a=null}, +b9N:function b9N(a){this.a=a}, +b9O:function b9O(a){this.a=a}, +b9M:function b9M(a){this.a=a}, +b9P:function b9P(a,b){this.a=a +this.b=b}, +TR:function TR(a,b){var _=this +_.by=_.a2=_.bx=_.bG=_.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=null +_.A=_.bR=_.bI=null +_.X=a +_.M=_.aQ=_.aC=_.a9=null +_.ac=_.U=!1 +_.cB=_.aE=null +_.c4=$ +_.ax=_.at=_.as=_.Q=_.z=_.y=_.x=_.w=_.r=_.f=_.e=_.d=_.c=_.b=_.a=null +_.M$=0 +_.U$=b +_.aE$=_.ac$=0}, +bes:function bes(a,b,c){this.a=a +this.b=b +this.c=c}, +al_:function al_(){}, +akX:function akX(){}, +akY:function akY(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}, +bej:function bej(){}, +bel:function bel(a){this.a=a}, +bek:function bek(a){this.a=a}, +beg:function beg(a,b){this.a=a +this.b=b}, +beh:function beh(a){this.a=a}, +akZ:function akZ(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}, +beo:function beo(a){this.a=a}, +bep:function bep(a){this.a=a}, +beq:function beq(a){this.a=a}, +ben:function ben(a){this.a=a}, +bem:function bem(){}, +TQ:function TQ(a,b){this.a=a +this.b=b}, +bei:function bei(a){this.a=a}, +V3:function V3(){}, +V4:function V4(){}, +anO:function anO(){}, +anP:function anP(){}, +bnQ(a,b,c){return new A.a96(c,a,b,null)}, +ber:function ber(a,b){this.a=a +this.b=b}, +a96:function a96(a,b,c,d){var _=this +_.c=a +_.d=b +_.fy=c +_.a=d}, +aTt:function aTt(a){this.a=a}, +bO5(a,b,c){var s,r,q,p,o,n,m,l,k +if(a===b)return a +s=t.MH +r=A.bJ(a.a,b.a,c,A.dg(),s) +q=A.bJ(a.b,b.b,c,A.dg(),s) +p=A.bJ(a.c,b.c,c,A.dg(),s) +o=A.bJ(a.d,b.d,c,A.VE(),t.PM) +n=c<0.5 +if(n)m=a.e +else m=b.e +if(n)l=a.f +else l=b.f +s=A.bJ(a.r,b.r,c,A.dg(),s) +k=A.ak(a.w,b.w,c) +if(n)n=a.x +else n=b.x +return new A.nt(r,q,p,o,m,l,s,k,n)}, +bnR(a){var s +a.au(t.OJ) +s=A.q(a) +return s.fU}, +nt:function nt(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}, +al0:function al0(){}, +bO9(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.DT(c,d,e,a,b,f,g,h,n,o,j,k,i,l,m)}, +bOa(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e +if(a===b)return a +s=A.auc(a.a,b.a,c) +r=A.U(a.b,b.b,c) +q=c<0.5 +p=q?a.c:b.c +o=A.U(a.d,b.d,c) +n=q?a.e:b.e +m=A.U(a.f,b.f,c) +l=A.fm(a.r,b.r,c) +k=A.c9(a.w,b.w,c) +j=A.U(a.x,b.x,c) +i=A.c9(a.y,b.y,c) +h=A.bJ(a.z,b.z,c,A.dg(),t.MH) +g=q?a.Q:b.Q +f=q?a.as:b.as +e=q?a.at:b.at +return A.bO9(o,n,s,r,p,m,l,k,f,h,g,e,q?a.ax:b.ax,j,i)}, +DT:function DT(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}, +al5:function al5(){}, +OD:function OD(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.M$=_.f=_.e=_.d=0 +_.U$=d +_.aE$=_.ac$=0}, +aTD:function aTD(a){this.a=a}, +v5:function v5(a,b,c){this.a=a +this.b=b +this.c=c}, +bg0:function bg0(a,b,c){this.b=a +this.c=b +this.a=c}, +bwf(a){return new A.a9a(a,null)}, +bxQ(a,b,c,d,e,f,g,h,i){return new A.al8(g,i,e,f,h,c,b,a,null)}, +bR4(a,b,c,d,e,f,g){var s,r=null,q=A.aK(),p=J.bmy(4,t.iy) +for(s=0;s<4;++s)p[s]=new A.E0(r,B.bn,B.i,B.aB.l(0,B.aB)?new A.mj(1):B.aB,r,r,r,r,B.aX,r) +q=new A.al7(e,b,c,d,a,f,g,r,B.h,q,p,!0,0,r,r,new A.bk(),A.aK()) +q.b5() +q.G(0,r) +return q}, +bTc(a){var s,r,q=a.geh(0).x +q===$&&A.b() +s=a.e +r=a.d +if(a.f===0)return A.M(Math.abs(r-q),0,1) +return Math.abs(q-r)/Math.abs(r-s)}, +bR5(a){var s +switch(a.a){case 1:s=3 +break +case 0:s=2 +break +default:s=null}return s}, +aTC:function aTC(a,b){this.a=a +this.b=b}, +aTB:function aTB(a,b){this.a=a +this.b=b}, +a9a:function a9a(a,b){this.c=a +this.a=b}, +al8:function al8(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}, +beF:function beF(a,b){this.a=a +this.b=b}, +al7:function al7(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.hR=a +_.A=b +_.X=c +_.a9=d +_.aC=e +_.aQ=f +_.M=g +_.U=h +_.ac=0 +_.aE=i +_.cB=j +_.adb$=k +_.aTj$=l +_.dl$=m +_.am$=n +_.dJ$=o +_.fx=p +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=q +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +al6:function al6(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}, +RL:function RL(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=null +_.ay=!1 +_.ch=$ +_.a=k}, +adp:function adp(a){this.a=a}, +EP:function EP(a,b){this.a=a +this.b=b}, +bew:function bew(){}, +OC:function OC(a,b,c,d){var _=this +_.c=a +_.d=b +_.fx=c +_.a=d}, +TS:function TS(){var _=this +_.r=_.f=_.e=_.d=null +_.y=_.x=_.w=$ +_.c=_.a=null}, +beB:function beB(){}, +bex:function bex(){}, +bey:function bey(a,b){this.a=a +this.b=b}, +bez:function bez(a,b){this.a=a +this.b=b}, +beA:function beA(a,b){this.a=a +this.b=b}, +yK:function yK(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +TT:function TT(){var _=this +_.e=_.d=null +_.f=$ +_.r=null +_.x=_.w=0 +_.c=_.a=null}, +beC:function beC(a){this.a=a}, +beD:function beD(a,b,c){this.a=a +this.b=b +this.c=c}, +beE:function beE(a){this.a=a}, +beG:function beG(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){var _=this +_.ay=a +_.CW=_.ch=$ +_.cx=b +_.a=c +_.b=d +_.c=e +_.d=f +_.e=g +_.f=h +_.r=i +_.w=j +_.x=k +_.y=l +_.z=m +_.Q=n +_.as=o +_.at=p +_.ax=q}, +beH:function beH(a){this.a=a}, +amR:function amR(){}, +amW:function amW(){}, +iA(a,b,c,d,e,f,g,h,i,j,k,l){return new A.a9l(j,i,h,g,l,c,d,!1,k,!0,b,f)}, +OM(a,b,c,a0,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=null +$label0$0:{s=a6==null +if(s&&a1==null){r=d +break $label0$0}r=new A.TW(a6,a1) +break $label0$0}$label1$1:{q=c==null +if(q){p=a0==null +o=p}else{p=d +o=!1}if(o){o=d +break $label1$1}if(q?p:a0==null){o=new A.bK(c,t.rc) +break $label1$1}o=new A.TW(c,a0) +break $label1$1}$label2$2:{break $label2$2}$label3$3:{if(s){n=a9==null +m=a9}else{m=d +n=!1}if(n){n=d +break $label3$3}if(s)n=m +else{n=a9 +m=n +s=!0}if(n instanceof A.A){l=s?m:a9 +n=(l==null?t.n8.a(l):l).a===0}else n=!1 +if(n){n=B.PC +break $label3$3}n=a9==null?a6:a9 +n.toString +n=new A.alg(n) +break $label3$3}k=b5==null?d:new A.bK(b5,t.uE) +j=b1==null?d:new A.bK(b1,t.De) +i=a3==null?d:new A.bK(a3,t.XR) +h=b0==null?d:new A.bK(b0,t.mD) +g=a8==null?d:new A.bK(a8,t.W7) +f=a7==null?d:new A.bK(a7,t.W7) +e=b2==null?d:new A.bK(b2,t.li) +return A.Ah(a,b,d,o,i,a4,d,d,r,d,d,f,g,new A.alf(a5,a2),n,h,j,e,d,b3,d,b4,k,b6)}, +bU7(a){var s=A.q(a).p2.as,r=s==null?null:s.r +if(r==null)r=14 +s=A.de(a,B.cP) +s=s==null?null:s.gem() +if(s==null)s=B.aB +return A.arf(B.wR,B.lj,B.a02,r*s.a/14)}, +a9l:function a9l(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}, +TW:function TW(a,b){this.a=a +this.b=b}, +alg:function alg(a){this.a=a}, +alf:function alf(a,b){this.a=a +this.b=b}, +alh:function alh(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 +_.fx=a +_.fy=$ +_.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}, +bf3:function bf3(a){this.a=a}, +bf5:function bf5(a){this.a=a}, +bf4:function bf4(){}, +anQ:function anQ(){}, +bOc(a,b,c){if(a===b)return a +return new A.DV(A.o3(a.a,b.a,c))}, +bwk(a,b){return new A.OL(b,a,null)}, +DV:function DV(a){this.a=a}, +OL:function OL(a,b,c){this.w=a +this.b=b +this.a=c}, +ali:function ali(){}, +a9p(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,a0,a1,a2){var s +if(j==null)s=m===1?B.Pf:B.tz +else s=j +return new A.OP(c,h,f,s,a2,a0,a1,b,!1,a,B.anL,B.anQ,m,r,k,l,o,p,i,g,e,d,!0,q,null)}, +bOh(a,b){return new A.W7(b.gaQ6(),b.gaQ5(),null)}, +bOi(a){return B.k4}, +bTD(a){return A.Uq(new A.bi6(a))}, +all:function all(a,b){var _=this +_.w=a +_.a=b +_.b=!0 +_.c=!1 +_.e=_.d=0 +_.f=null +_.r=!1}, +OP:function OP(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.z=f +_.as=g +_.ay=h +_.cx=i +_.cy=j +_.db=k +_.dx=l +_.fr=m +_.k1=n +_.k2=o +_.k3=p +_.k4=q +_.p1=r +_.p3=s +_.p4=a0 +_.rx=a1 +_.x1=a2 +_.bx=a3 +_.A=a4 +_.a=a5}, +TX:function TX(a,b,c,d,e,f){var _=this +_.e=_.d=null +_.r=_.f=!1 +_.x=_.w=$ +_.y=a +_.z=null +_.dd$=b +_.kL$=c +_.Dj$=d +_.iz$=e +_.kM$=f +_.c=_.a=null}, +bf7:function bf7(){}, +bf9:function bf9(a,b){this.a=a +this.b=b}, +bf8:function bf8(a,b){this.a=a +this.b=b}, +bfa:function bfa(){}, +bfd:function bfd(a){this.a=a}, +bfe:function bfe(a){this.a=a}, +bff:function bff(a){this.a=a}, +bfg:function bfg(a){this.a=a}, +bfh:function bfh(a){this.a=a}, +bfi:function bfi(a){this.a=a}, +bfj:function bfj(a,b,c){this.a=a +this.b=b +this.c=c}, +bfl:function bfl(a){this.a=a}, +bfm:function bfm(a){this.a=a}, +bfk:function bfk(a,b){this.a=a +this.b=b}, +bfc:function bfc(a){this.a=a}, +bfb:function bfb(a){this.a=a}, +bi6:function bi6(a){this.a=a}, +bhc:function bhc(){}, +Vi:function Vi(){}, +a3Q:function a3Q(){}, +aI5:function aI5(){}, +alo:function alo(a,b){this.b=a +this.a=b}, +ah4:function ah4(){}, +bOl(a,b,c){var s,r +if(a===b)return a +s=A.U(a.a,b.a,c) +r=A.U(a.b,b.b,c) +return new A.OY(s,r,A.U(a.c,b.c,c))}, +OY:function OY(a,b,c){this.a=a +this.b=b +this.c=c}, +alp:function alp(){}, +bOm(a,b,c){return new A.a9y(a,b,c,null)}, +bOu(a,b){return new A.alq(b,null)}, +bR6(a){var s,r=null,q=a.a.a +switch(q){case 1:s=A.E3(r,r,r,r,r,r,r,r,r,r,r,r).ax.k2===a.k2 +break +case 0:s=A.E3(r,B.aI,r,r,r,r,r,r,r,r,r,r).ax.k2===a.k2 +break +default:s=r}if(!s)return a.k2 +switch(q){case 1:q=B.n +break +case 0:q=B.cV +break +default:q=r}return q}, +a9y:function a9y(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +U1:function U1(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +alu:function alu(a,b,c){var _=this +_.d=!1 +_.e=a +_.dI$=b +_.b8$=c +_.c=_.a=null}, +bfD:function bfD(a){this.a=a}, +bfC:function bfC(a){this.a=a}, +alv:function alv(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +alw:function alw(a,b,c,d,e){var _=this +_.E=null +_.af=a +_.aZ=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bfE:function bfE(a){this.a=a}, +alr:function alr(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +als:function als(a,b,c){var _=this +_.p1=$ +_.p2=a +_.c=_.b=_.a=_.CW=_.ay=null +_.d=$ +_.e=b +_.r=_.f=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +ajt:function ajt(a,b,c,d,e,f,g){var _=this +_.A=-1 +_.X=a +_.a9=b +_.dl$=c +_.am$=d +_.dJ$=e +_.fx=f +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bc5:function bc5(a,b,c){this.a=a +this.b=b +this.c=c}, +bc6:function bc6(a,b,c){this.a=a +this.b=b +this.c=c}, +bc7:function bc7(a,b,c){this.a=a +this.b=b +this.c=c}, +bc9:function bc9(a,b){this.a=a +this.b=b}, +bc8:function bc8(a){this.a=a}, +bca:function bca(a){this.a=a}, +alq:function alq(a,b){this.c=a +this.a=b}, +alt:function alt(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +anz:function anz(){}, +anR:function anR(){}, +bOr(a){if(a===B.Q9||a===B.un)return 14.5 +return 9.5}, +bOt(a){if(a===B.Qa||a===B.un)return 14.5 +return 9.5}, +bOs(a,b){if(a===0)return b===1?B.un:B.Q9 +if(a===b-1)return B.Qa +return B.aB_}, +bOq(a){var s,r=null,q=a.a.a +switch(q){case 1:s=A.E3(r,r,r,r,r,r,r,r,r,r,r,r).ax.k3===a.k3 +break +case 0:s=A.E3(r,B.aI,r,r,r,r,r,r,r,r,r,r).ax.k3===a.k3 +break +default:s=r}if(!s)return a.k3 +switch(q){case 1:q=B.v +break +case 0:q=B.n +break +default:q=r}return q}, +G3:function G3(a,b){this.a=a +this.b=b}, +a9A:function a9A(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aUB(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.h4(d,e,f,g,h,i,m,n,o,a,b,c,j,k,l)}, +E2(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.c9(a.a,b.a,c) +r=A.c9(a.b,b.b,c) +q=A.c9(a.c,b.c,c) +p=A.c9(a.d,b.d,c) +o=A.c9(a.e,b.e,c) +n=A.c9(a.f,b.f,c) +m=A.c9(a.r,b.r,c) +l=A.c9(a.w,b.w,c) +k=A.c9(a.x,b.x,c) +j=A.c9(a.y,b.y,c) +i=A.c9(a.z,b.z,c) +h=A.c9(a.Q,b.Q,c) +g=A.c9(a.as,b.as,c) +f=A.c9(a.at,b.at,c) +return A.aUB(j,i,h,s,r,q,p,o,n,g,f,A.c9(a.ax,b.ax,c),m,l,k)}, +h4:function h4(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}, +aly:function aly(){}, +q(a){var s,r,q,p,o,n,m=null,l=a.au(t.Mg),k=A.hE(a,B.bu,t.C),j=k==null?m:k.gbm() +if(j==null)j=B.P +s=a.au(t.ri) +r=l==null?m:l.w.c +if(r==null)if(s!=null){q=s.w.c +p=q.gj6() +o=q.gpm() +n=q.gj6() +p=A.E3(m,m,A.bGe(o,q.gpZ(),n,p),m,m,m,m,m,m,m,m,m) +r=p}else{q=$.bCz() +r=q}return A.bOA(r,r.p3.aiB(j))}, +v0:function v0(a,b,c){this.c=a +this.d=b +this.a=c}, +RN:function RN(a,b,c){this.w=a +this.b=b +this.a=c}, +yS:function yS(a,b){this.a=a +this.b=b}, +GR:function GR(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +acJ:function acJ(a,b){var _=this +_.CW=null +_.e=_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +aYz:function aYz(){}, +E3(c7,c8,c9,d0,d1,d2,d3,d4,d5,d6,d7,d8){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=null,c5=A.a([],t.FO),c6=A.a([],t.lY) +if(d5==null)d5=B.a2r +s=A.bY() +switch(s.a){case 0:case 1:case 2:r=B.agH +break +case 3:case 4:case 5:r=B.mP +break +default:r=c4}q=A.bOX(s) +d8=d8!==!1 +if(d8)p=B.TM +else p=B.TN +if(c8==null){o=c9==null?c4:c9.a +n=o}else n=c8 +if(n==null)n=B.b_ +m=n===B.aI +if(d8){if(c9==null)c9=m?B.Ue:B.Uf +l=m?c9.k2:c9.b +k=m?c9.k3:c9.c +j=c9.k2 +if(d0==null){d0=c9.ry +if(d0==null){o=c9.a2 +d0=o==null?c9.k3:o}}i=c8===B.aI +h=j +g=l +f=k +e=h +d=e}else{h=c4 +g=h +f=g +e=f +d=e +j=d +i=j}if(g==null)g=m?B.vt:B.dT +c=A.P_(g) +b=m?B.vM:B.vO +a=m?B.v:B.kO +a0=c===B.aI +a1=m?A.Y(31,255,255,255):A.Y(31,0,0,0) +a2=m?A.Y(10,255,255,255):A.Y(10,0,0,0) +if(d6==null)d6=B.v +if(j==null)j=m?B.oT:B.l_ +if(h==null)h=j +if(d==null)d=m?B.cV:B.n +if(d0==null)d0=m?B.XV:B.cX +if(c9==null){a3=m?B.Vp:B.vu +o=m?B.iJ:B.p0 +a4=A.P_(B.dT)===B.aI +a5=A.P_(a3) +a6=a4?B.n:B.v +a5=a5===B.aI?B.n:B.v +a7=m?B.n:B.v +a8=m?B.v:B.n +c9=A.asr(o,n,B.vR,c4,c4,c4,a4?B.n:B.v,a8,c4,c4,a6,c4,c4,c4,a5,c4,c4,c4,a7,c4,c4,c4,c4,c4,c4,c4,B.dT,c4,c4,c4,c4,a3,c4,c4,c4,c4,d,c4,c4,c4,c4,c4,c4,c4,c4,c4,c4,c4,c4,c4)}a9=m?B.au:B.ab +b0=m?B.iJ:B.p2 +if(e==null)e=m?B.cV:B.n +if(f==null){f=c9.y +if(f.l(0,g))f=B.n}if(d4==null)d4=m?B.Up:A.Y(153,0,0,0) +b1=A.brj(!1,m?B.oQ:B.cW,c9,c4,a1,36,c4,a2,B.Sy,r,88,c4,c4,c4,B.uN) +b2=m?B.Uk:B.Uj +b3=m?B.vg:B.oJ +b4=m?B.vg:B.Un +if(d8){b5=A.bwH(s,c4,c4,B.au2,B.atW,B.au4) +o=c9.a===B.b_ +b6=o?c9.k3:c9.k2 +b7=o?c9.k2:c9.k3 +o=b5.a.aaA(b6,b6,b6) +a5=b5.b.aaA(b7,b7,b7) +b8=new A.Ec(o,a5,b5.c,b5.d,b5.e)}else b8=A.bOM(s) +b9=m?b8.b:b8.a +c0=a0?b8.b:b8.a +if(d3!=null){b9=b9.aaz(d3) +c0=c0.aaz(d3)}d7=b9.cO(d7) +c1=c0.cO(c4) +c2=m?new A.eP(c4,c4,c4,c4,c4,$.bqw(),c4,c4,c4):new A.eP(c4,c4,c4,c4,c4,$.bqv(),c4,c4,c4) +c3=a0?B.a1u:B.a1v +if(c7==null)c7=B.Qr +if(d1==null)d1=B.Zv +if(d2==null)d2=B.a08 +return A.bnW(c4,A.bOw(c6),c7,i===!0,B.QG,B.agG,B.RE,B.RF,B.RG,B.Sz,b1,j,d,B.TY,B.U2,B.U3,c9,c4,B.Yw,B.Yx,e,B.Zp,b2,d0,d1,B.ZI,B.ZJ,d2,B.a0e,A.bOy(c5),B.a0y,B.a0B,a1,b3,d4,a2,B.a15,c2,f,d5,B.a34,r,B.agL,B.agM,B.agP,B.aih,B.aii,B.aik,B.ajK,B.Tg,s,B.akF,g,a,b,c3,c1,B.akT,B.akU,h,B.alv,B.alw,B.alx,b0,B.aly,d6,B.anC,B.ao5,b4,p,B.OY,B.apd,B.apf,B.apM,d7,B.aut,B.auu,B.auz,b8,a9,d8,q)}, +bnW(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){return new A.m9(d,r,b0,b,c0,c2,d0,d1,e1,f0,!0,g2,l,m,q,a1,a3,a4,b3,b4,b5,b6,b9,d3,d4,d5,e0,e4,e6,e9,g0,b8,d6,d7,f5,f9,a,c,e,f,g,h,i,k,n,o,p,s,a0,a2,a5,a6,a7,a8,a9,b1,b2,b7,c1,c3,c4,c5,c6,c7,c8,c9,d2,d8,d9,e2,e3,e5,e7,e8,f1,f2,f3,f4,f6,f7,f8,j)}, +bOv(){var s=null +return A.E3(s,B.b_,s,s,s,s,s,s,s,s,s,s)}, +bOw(a){var s,r,q=A.w(t.u,t.gj) +for(s=0;!1;++s){r=a[s] +q.n(0,A.cK(A.af(r).i("pp.T")),r)}return q}, +bOA(a,b){return $.bCy().cP(0,new A.Fa(a,b),new A.aUF(a,b))}, +P_(a){var s=0.2126*A.bl4((a.gk(a)>>>16&255)/255)+0.7152*A.bl4((a.gk(a)>>>8&255)/255)+0.0722*A.bl4((a.gk(a)&255)/255)+0.05 +if(s*s>0.15)return B.b_ +return B.aI}, +bOx(a,b,c){var s=a.c,r=s.kd(s,new A.aUD(b,c),t.K,t.Ag) +s=b.c +s=s.gdG(s) +r.Jv(r,s.km(s,new A.aUE(a))) +return r}, +bOy(a){var s,r,q=t.K,p=t.ZF,o=A.w(q,p) +for(s=0;!1;++s){r=a[s] +o.n(0,r.gi_(r),p.a(r))}return A.bl7(o,q,t.Ag)}, +bOz(g8,g9,h0){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 +if(g8===g9)return g8 +s=h0<0.5 +r=s?g8.d:g9.d +q=s?g8.a:g9.a +p=s?g8.b:g9.b +o=A.bOx(g8,g9,h0) +n=s?g8.e:g9.e +m=s?g8.f:g9.f +l=s?g8.r:g9.r +k=s?g8.w:g9.w +j=A.bNf(g8.x,g9.x,h0) +i=s?g8.y:g9.y +h=A.bOY(g8.Q,g9.Q,h0) +g=A.U(g8.as,g9.as,h0) +g.toString +f=A.U(g8.at,g9.at,h0) +f.toString +e=A.bGg(g8.ax,g9.ax,h0) +d=A.U(g8.ay,g9.ay,h0) +d.toString +c=A.U(g8.ch,g9.ch,h0) +c.toString +b=A.U(g8.CW,g9.CW,h0) +b.toString +a=A.U(g8.cx,g9.cx,h0) +a.toString +a0=A.U(g8.cy,g9.cy,h0) +a0.toString +a1=A.U(g8.db,g9.db,h0) +a1.toString +a2=A.U(g8.dx,g9.dx,h0) +a2.toString +a3=A.U(g8.dy,g9.dy,h0) +a3.toString +a4=A.U(g8.fr,g9.fr,h0) +a4.toString +a5=A.U(g8.fx,g9.fx,h0) +a5.toString +a6=A.U(g8.fy,g9.fy,h0) +a6.toString +a7=A.U(g8.go,g9.go,h0) +a7.toString +a8=A.U(g8.id,g9.id,h0) +a8.toString +a9=A.U(g8.k1,g9.k1,h0) +a9.toString +b0=A.U(g8.k2,g9.k2,h0) +b0.toString +b1=A.U(g8.k3,g9.k3,h0) +b1.toString +b2=A.q6(g8.k4,g9.k4,h0) +b3=A.q6(g8.ok,g9.ok,h0) +b4=A.E2(g8.p1,g9.p1,h0) +b5=A.E2(g8.p2,g9.p2,h0) +b6=A.bON(g8.p3,g9.p3,h0) +b7=A.bFg(g8.p4,g9.p4,h0) +b8=A.bFn(g8.R8,g9.R8,h0) +b9=A.bFw(g8.RG,g9.RG,h0) +c0=g8.rx +c1=g9.rx +c2=A.U(c0.a,c1.a,h0) +c3=A.U(c0.b,c1.b,h0) +c4=A.U(c0.c,c1.c,h0) +c5=A.U(c0.d,c1.d,h0) +c6=A.c9(c0.e,c1.e,h0) +c7=A.ak(c0.f,c1.f,h0) +c8=A.fm(c0.r,c1.r,h0) +c0=A.fm(c0.w,c1.w,h0) +c1=A.bFB(g8.ry,g9.ry,h0) +c9=A.bFC(g8.to,g9.to,h0) +d0=A.bFE(g8.x1,g9.x1,h0) +s=s?g8.x2:g9.x2 +d1=A.bFR(g8.xr,g9.xr,h0) +d2=A.bFZ(g8.y1,g9.y1,h0) +d3=A.bG4(g8.y2,g9.y2,h0) +d4=A.bGO(g8.bG,g9.bG,h0) +d5=A.bGT(g8.bx,g9.bx,h0) +d6=A.bHt(g8.a2,g9.a2,h0) +d7=A.bHG(g8.by,g9.by,h0) +d8=A.bI_(g8.bI,g9.bI,h0) +d9=A.bI0(g8.bR,g9.bR,h0) +e0=A.bIb(g8.A,g9.A,h0) +e1=A.bIu(g8.X,g9.X,h0) +e2=A.bIE(g8.a9,g9.a9,h0) +e3=A.bIH(g8.aC,g9.aC,h0) +e4=A.bJp(g8.aQ,g9.aQ,h0) +e5=A.bKy(g8.M,g9.M,h0) +e6=A.bL3(g8.U,g9.U,h0) +e7=A.bL4(g8.ac,g9.ac,h0) +e8=A.bL5(g8.aE,g9.aE,h0) +e9=A.bLv(g8.cB,g9.cB,h0) +f0=A.bLw(g8.c4,g9.c4,h0) +f1=A.bLx(g8.eM,g9.eM,h0) +f2=A.bLP(g8.fT,g9.fT,h0) +f3=A.bMf(g8.H,g9.H,h0) +f4=A.bMt(g8.d3,g9.d3,h0) +f5=A.bMv(g8.aR,g9.aR,h0) +f6=A.bNh(g8.b_,g9.b_,h0) +f7=A.bNj(g8.cU,g9.cU,h0) +f8=A.bNo(g8.ed,g9.ed,h0) +f9=A.bNG(g8.cY,g9.cY,h0) +g0=A.bNK(g8.h7,g9.h7,h0) +g1=A.bO5(g8.fU,g9.fU,h0) +g2=A.bOa(g8.cG,g9.cG,h0) +g3=A.bOc(g8.eN,g9.eN,h0) +g4=A.bOl(g8.f5,g9.f5,h0) +g5=A.bOB(g8.h8,g9.h8,h0) +g6=A.bOD(g8.lC,g9.lC,h0) +g7=A.bOG(g8.nY,g9.nY,h0) +return A.bnW(b7,r,b8,q,b9,new A.KQ(c2,c3,c4,c5,c6,c7,c8,c0),c1,c9,d0,A.bFL(g8.cu,g9.cu,h0),s,g,f,d1,d2,d3,e,p,d4,d5,d,d6,c,b,d7,d8,d9,e0,e1,o,e2,e3,a,a0,a1,a2,e4,b2,a3,n,e5,m,e6,e7,e8,e9,f0,f1,f2,l,k,f3,a4,a5,a6,b3,b4,f4,f5,a7,j,f6,f7,a8,f8,a9,f9,g0,b0,i,g1,g2,g3,g4,b5,g5,g6,g7,b6,b1,!0,h)}, +bub(a,b){return new A.a23(a,b,B.u5,b.a,b.b,b.c,b.d,b.e,b.f,b.r)}, +bOX(a){var s +$label0$0:{if(B.bg===a||B.aG===a||B.du===a){s=B.kc +break $label0$0}if(B.dv===a||B.cr===a||B.dw===a){s=B.awn +break $label0$0}s=null}return s}, +bOY(a,b,c){var s,r +if(a===b)return a +s=A.ak(a.a,b.a,c) +s.toString +r=A.ak(a.b,b.b,c) +r.toString +return new A.rd(s,r)}, +pp:function pp(){}, +xA:function xA(a,b){this.a=a +this.b=b}, +m9:function m9(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){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 +_.bG=c8 +_.bx=c9 +_.a2=d0 +_.by=d1 +_.bI=d2 +_.bR=d3 +_.A=d4 +_.X=d5 +_.a9=d6 +_.aC=d7 +_.aQ=d8 +_.M=d9 +_.U=e0 +_.ac=e1 +_.aE=e2 +_.cB=e3 +_.c4=e4 +_.eM=e5 +_.fT=e6 +_.H=e7 +_.d3=e8 +_.aR=e9 +_.b_=f0 +_.cU=f1 +_.ed=f2 +_.cY=f3 +_.h7=f4 +_.fU=f5 +_.cG=f6 +_.eN=f7 +_.f5=f8 +_.h8=f9 +_.lC=g0 +_.nY=g1 +_.cu=g2}, +aUF:function aUF(a,b){this.a=a +this.b=b}, +aUD:function aUD(a,b){this.a=a +this.b=b}, +aUE:function aUE(a){this.a=a}, +a23:function a23(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}, +bld:function bld(a){this.a=a}, +Fa:function Fa(a,b){this.a=a +this.b=b}, +afm:function afm(a,b,c){this.a=a +this.b=b +this.$ti=c}, +rd:function rd(a,b){this.a=a +this.b=b}, +alC:function alC(){}, +ams:function ams(){}, +bOB(a4,a5,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 +if(a4===a5)return a4 +s=a4.d +if(s==null)r=a5.d==null +else r=!1 +if(r)s=null +else if(s==null)s=a5.d +else{r=a5.d +if(!(r==null)){s.toString +r.toString +s=A.bF(s,r,a6)}}r=A.U(a4.a,a5.a,a6) +q=A.o3(a4.b,a5.b,a6) +p=A.o3(a4.c,a5.c,a6) +o=a4.gCT() +n=a5.gCT() +o=A.U(o,n,a6) +n=t.KX.a(A.fb(a4.f,a5.f,a6)) +m=A.U(a4.r,a5.r,a6) +l=A.c9(a4.w,a5.w,a6) +k=A.U(a4.x,a5.x,a6) +j=A.U(a4.y,a5.y,a6) +i=A.U(a4.z,a5.z,a6) +h=A.c9(a4.Q,a5.Q,a6) +g=A.ak(a4.as,a5.as,a6) +f=A.U(a4.at,a5.at,a6) +e=A.c9(a4.ax,a5.ax,a6) +d=A.U(a4.ay,a5.ay,a6) +c=A.fb(a4.ch,a5.ch,a6) +b=A.U(a4.CW,a5.CW,a6) +a=A.c9(a4.cx,a5.cx,a6) +if(a6<0.5)a0=a4.cy +else a0=a5.cy +a1=A.fm(a4.db,a5.db,a6) +a2=A.fb(a4.dx,a5.dx,a6) +a3=A.bJ(a4.dy,a5.dy,a6,A.dg(),t.MH) +return new A.P7(r,q,p,s,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,A.bJ(a4.fr,a5.fr,a6,A.Gt(),t.p8))}, +P7:function P7(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}, +aUI:function aUI(a){this.a=a}, +alE:function alE(){}, +bOD(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.c9(a.a,b.a,c) +r=A.o2(a.b,b.b,c) +q=A.U(a.c,b.c,c) +p=A.U(a.d,b.d,c) +o=A.U(a.e,b.e,c) +n=A.U(a.f,b.f,c) +m=A.U(a.r,b.r,c) +l=A.U(a.w,b.w,c) +k=A.U(a.y,b.y,c) +j=A.U(a.x,b.x,c) +i=A.U(a.z,b.z,c) +h=A.U(a.Q,b.Q,c) +g=A.U(a.as,b.as,c) +f=A.o0(a.ax,b.ax,c) +return new A.P9(s,r,q,p,o,n,m,l,j,k,i,h,g,A.ak(a.at,b.at,c),f)}, +P9:function P9(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}, +alH:function alH(){}, +bxh(a,b,c){return new A.afj(b,null,c,B.cU,a,null)}, +bnZ(a,b,c,d,e,f,g,h){return new A.yY(c,d,b,g,e,a,h,f,null)}, +bOH(){var s,r,q +if($.yZ.length!==0){s=A.a($.yZ.slice(0),A.af($.yZ)) +for(r=s.length,q=0;q>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +break +default:r=null}switch(q.a){case 1:q=b.a +break +case 0:q=b.a +q=A.Y(0,q.gk(q)>>>16&255,q.gk(q)>>>8&255,q.gk(q)&255) +break +default:q=null}p=a.d +o=b.d +if(p!==o){r=A.U(r,q,c) +r.toString +o=A.ak(p,o,c) +o.toString +return new A.br(r,s,B.I,o)}r=A.U(r,q,c) +r.toString +return new A.br(r,s,B.I,p)}, +fb(a,b,c){var s,r +if(a==b)return a +s=b==null?null:b.f6(a,c) +if(s==null)s=a==null?null:a.f7(b,c) +if(s==null)r=c<0.5?a:b +else r=s +return r}, +buM(a,b,c){var s,r +if(a==b)return a +s=b==null?null:b.f6(a,c) +if(s==null)s=a==null?null:a.f7(b,c) +if(s==null)r=c<0.5?a:b +else r=s +return r}, +bxc(a,b,c){var s,r,q,p,o,n,m=a instanceof A.me?a.a:A.a([a],t.Fi),l=b instanceof A.me?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.R(o*p/m,p):new A.R(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.R(o,o*p/q):new A.R(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.R(o,o*p/q) +s=c}else{s=new A.R(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.R(o*p/m,p) +r=b}else{r=new A.R(m*q/p,m) +s=c}break +case 5:r=new A.R(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.R(q*n,q):b +m=c.a +if(s.a>m)s=new A.R(m,m/n) +r=b +break +default:r=null +s=null}return new A.a0d(r,s)}, +Hn:function Hn(a,b){this.a=a +this.b=b}, +a0d:function a0d(a,b){this.a=a +this.b=b}, +bFJ(a,b,c){var s,r,q,p,o +if(a===b)return a +s=A.U(a.a,b.a,c) +s.toString +r=A.oA(a.b,b.b,c) +r.toString +q=A.ak(a.c,b.c,c) +q.toString +p=A.ak(a.d,b.d,c) +p.toString +o=a.e +return new A.c6(p,o===B.a6?b.e:o,s,r,q)}, +bkX(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.F) +if(b==null)b=A.a([],t.F) +s=Math.min(a.length,b.length) +r=A.a([],t.F) +for(q=0;q>>16&255)/255,n=(p>>>8&255)/255,m=(p&255)/255,l=Math.max(o,Math.max(n,m)),k=Math.min(o,Math.min(n,m)),j=l-k,i=A.bu("hue") +if(l===0)i.b=0 +else if(l===o)i.b=60*B.d.an((n-m)/j,6) +else if(l===n)i.b=60*((m-o)/j+2) +else if(l===m)i.b=60*((o-n)/j+4) +i.b=isNaN(i.b2())?0:i.b2() +s=i.b2() +r=(l+k)/2 +q=r===1?0:A.M(j/(1-Math.abs(2*r-1)),0,1) +return new A.Bw((p>>>24&255)/255,s,q,r)}, +Bw:function Bw(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +o5:function o5(){}, +auc(a,b,c){var s,r=null +if(a==b)return a +if(a==null){s=b.f6(r,c) +return s==null?b:s}if(b==null){s=a.f7(r,c) +return s==null?a:s}if(c===0)return a +if(c===1)return b +s=b.f6(a,c) +if(s==null)s=a.f7(b,c) +if(s==null)if(c<0.5){s=a.f7(r,c*2) +if(s==null)s=a}else{s=b.f6(r,(c-0.5)*2) +if(s==null)s=b}return s}, +kC:function kC(){}, +X2:function X2(){}, +aep:function aep(){}, +blq(a,b,c){if(a==b||c===0)return a +if(c===1)return b +return new A.ada(a,b,c)}, +bWI(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.ga_(0))return +s=b4.a +r=b4.c-s +q=b4.b +p=b4.d-q +o=new A.R(r,p) +n=b0.geu(b0) +m=b0.gbA(b0) +if(a8==null)a8=B.uL +l=A.bzn(a8,new A.R(n,m).fO(0,b6),o) +k=l.a.ap(0,b6) +j=l.b +if(b5!==B.dj&&j.l(0,o))b5=B.dj +i=$.ap().br() +i.sLP(!1) +if(a5!=null)i.snO(a5) +i.saG(0,A.asq(0,0,0,A.M(b3,0,1))) +i.srv(a7) +i.sWR(b1) +i.sxL(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.I(p,q,p+h,q+f) +c=b5!==B.dj||a9 +if(c)a3.en(0) +q=b5===B.dj +if(!q)a3.nN(b4) +if(a9){b=-(s+r/2) +a3.bs(0,-b,0) +a3.i2(0,-1,1) +a3.bs(0,b,0)}a=a1.WM(k,new A.I(0,0,n,m)) +if(q)a3.rf(b0,a,d,i) +else for(s=A.bSX(b4,d,b5),r=s.length,a0=0;a0=B.b.gY(b))return B.b.gY(a) +s=B.b.aWp(b,new A.bih(c)) +r=a[s] +q=s+1 +p=a[q] +o=b[s] +o=A.U(r,p,(c-o)/(b[q]-o)) +o.toString +return o}, +bTi(a,b,c,d,e){var s,r,q=A.a8T(null,null,t.i) +q.G(0,b) +q.G(0,d) +s=A.a8(q,!1,q.$ti.c) +r=A.af(s).i("ad<1,A>") +return new A.b_b(A.a8(new A.ad(s,new A.bhT(a,b,c,d,e),r),!1,r.i("aN.E")),s)}, +btl(a,b,c){var s +if(a==b)return a +s=b!=null?b.f6(a,c):null +if(s==null&&a!=null)s=a.f7(b,c) +if(s!=null)return s +return c<0.5?a.bK(0,1-c*2):b.bK(0,(c-0.5)*2)}, +bu0(a,b,c){var s,r,q,p,o +if(a==b)return a +if(a==null)return b.bK(0,c) +if(b==null)return a.bK(0,1-c) +s=A.bTi(a.a,a.S3(),b.a,b.S3(),c) +r=A.vZ(a.d,b.d,c) +r.toString +q=A.vZ(a.e,b.e,c) +q.toString +p=c<0.5 +o=p?a.f:b.f +p=p?a.c:b.c +return new A.BV(r,q,o,s.a,s.b,p)}, +b_b:function b_b(a,b){this.a=a +this.b=b}, +bih:function bih(a){this.a=a}, +bhT:function bhT(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aAS:function aAS(){}, +BV:function BV(a,b,c,d,e,f){var _=this +_.d=a +_.e=b +_.f=c +_.a=d +_.b=e +_.c=f}, +aEU:function aEU(a){this.a=a}, +bQf(a,b){var s=new A.Fi(a,null,a.yY()) +s.arf(a,b,null) +return s}, +aC9:function aC9(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.f=0}, +aCc:function aCc(a,b,c){this.a=a +this.b=b +this.c=c}, +aCb:function aCb(a,b){this.a=a +this.b=b}, +aCd:function aCd(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +adn:function adn(){}, +aZU:function aZU(a){this.a=a}, +Qg:function Qg(a,b,c){this.a=a +this.b=b +this.c=c}, +Fi:function Fi(a,b,c){var _=this +_.d=$ +_.a=a +_.b=b +_.c=c}, +b98:function b98(a,b){this.a=a +this.b=b}, +ahS:function ahS(a,b){this.a=a +this.b=b}, +bx7(){return new A.acp(A.a([],t.XZ),A.a([],t.SM),A.a([],t.qj))}, +bny(a,b,c){return c}, +buE(a,b){return new A.a4V("HTTP request failed, statusCode: "+a+", "+b.j(0))}, +q7:function q7(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +fZ:function fZ(){}, +aCs:function aCs(a,b,c){this.a=a +this.b=b +this.c=c}, +aCt:function aCt(a,b){this.a=a +this.b=b}, +aCp:function aCp(a,b){this.a=a +this.b=b}, +aCo:function aCo(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aCq:function aCq(a){this.a=a}, +aCr:function aCr(a,b){this.a=a +this.b=b}, +acp:function acp(a,b,c){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=null +_.r=_.f=!1 +_.w=0 +_.x=!1 +_.y=c}, +nZ:function nZ(a,b,c){this.a=a +this.b=b +this.c=c}, +WA:function WA(){}, +u2:function u2(a,b){this.a=a +this.b=b}, +b2W:function b2W(a,b,c){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=null +_.r=_.f=!1 +_.w=0 +_.x=!1 +_.y=c}, +a4V:function a4V(a){this.b=a}, +H3:function H3(a,b,c){this.a=a +this.b=b +this.c=c}, +aq_:function aq_(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aq0:function aq0(a){this.a=a}, +bLA(a){var s=new A.LN(A.a([],t.XZ),A.a([],t.SM),A.a([],t.qj)) +s.aqW(a,null) +return s}, +Cq(a,b,c,d,e){var s=new A.a4K(e,d,A.a([],t.XZ),A.a([],t.SM),A.a([],t.qj)) +s.aqT(a,b,c,d,e) +return s}, +fY:function fY(a,b,c){this.a=a +this.b=b +this.c=c}, +iQ:function iQ(a,b,c){this.a=a +this.b=b +this.c=c}, +iP:function iP(a,b){this.a=a +this.b=b}, +aCx:function aCx(){this.b=this.a=null}, +aCy:function aCy(a){this.a=a}, +xb:function xb(){}, +aCz:function aCz(){}, +aCA:function aCA(){}, +LN:function LN(a,b,c){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=null +_.r=_.f=!1 +_.w=0 +_.x=!1 +_.y=c}, +aKL:function aKL(a,b){this.a=a +this.b=b}, +a4K:function a4K(a,b,c,d,e){var _=this +_.Q=_.z=null +_.as=a +_.at=b +_.ax=null +_.ay=$ +_.ch=null +_.CW=0 +_.cx=null +_.cy=!1 +_.a=c +_.b=d +_.e=_.d=_.c=null +_.r=_.f=!1 +_.w=0 +_.x=!1 +_.y=e}, +aJV:function aJV(a,b){this.a=a +this.b=b}, +aJW:function aJW(a,b){this.a=a +this.b=b}, +aJU:function aJU(a){this.a=a}, +agf:function agf(){}, +agh:function agh(){}, +agg:function agg(){}, +btD(a,b,c,d){return new A.q9(a,c,b,!1,!1,d)}, +bpg(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=A.a([],t.O_),e=t.oU,d=A.a([],e) +for(s=a.length,r="",q="",p=0;pk?l:k)){o=t.N +j=A.dD(o) +n=t.c4 +i=A.ir(d,d,d,o,n) +for(h=p;h")),o=o.c;n.u();){m=n.d +if(m==null)m=o.a(m) +e=A.bta(i.h(0,m),g.h(0,m),c) +if(e!=null)s.push(e)}}return s}, +J:function J(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}, +aUA:function aUA(a){this.a=a}, +alx:function alx(){}, +byW(a,b,c,d,e){var s,r +for(s=c,r=0;r0){n=-n +l=2*l +s=(n-Math.sqrt(j))/l +r=(n+Math.sqrt(j))/l +q=(c-s*b)/(r-s) +l=new A.baq(s,r,b-q,q) +n=l +break $label0$0}if(j<0){p=Math.sqrt(k-m)/(2*l) +o=-(n/2*l) +n=new A.bg_(p,o,b,(c-o*b)/p) +break $label0$0}o=-n/(2*l) +n=new A.b09(o,b,c-o*b) +break $label0$0}return n}, +aSi:function aSi(a,b,c){this.a=a +this.b=b +this.c=c}, +Oi:function Oi(a,b){this.a=a +this.b=b}, +Oh:function Oh(a,b,c){this.b=a +this.c=b +this.a=c}, +uF:function uF(a,b,c){this.b=a +this.c=b +this.a=c}, +b09:function b09(a,b,c){this.a=a +this.b=b +this.c=c}, +baq:function baq(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bg_:function bg_(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Pb:function Pb(a,b){this.a=a +this.c=b}, +bMM(a,b,c,d,e,f,g,h){var s=null,r=new A.MG(new A.a8k(s,s),B.No,b,h,A.aK(),a,g,s,new A.bk(),A.aK()) +r.b5() +r.sbz(s) +r.aqY(a,s,b,c,d,e,f,g,h) +return r}, +D4:function D4(a,b){this.a=a +this.b=b}, +MG:function MG(a,b,c,d,e,f,g,h,i,j){var _=this +_.ez=_.dt=$ +_.dH=a +_.hD=$ +_.fo=null +_.iy=b +_.uT=c +_.yv=d +_.uU=null +_.dI=e +_.E=null +_.af=f +_.aZ=g +_.H$=h +_.fx=i +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=j +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aO6:function aO6(a){this.a=a}, +bPv(a){}, +N3:function N3(){}, +aP7:function aP7(a){this.a=a}, +aP9:function aP9(a){this.a=a}, +aP8:function aP8(a){this.a=a}, +aP6:function aP6(a){this.a=a}, +aP5:function aP5(a){this.a=a}, +Q5:function Q5(a,b){var _=this +_.a=a +_.M$=0 +_.U$=b +_.aE$=_.ac$=0}, +aes:function aes(a,b,c,d,e,f,g,h){var _=this +_.b=a +_.c=b +_.d=c +_.e=null +_.f=!1 +_.r=d +_.z=e +_.Q=f +_.at=null +_.ch=g +_.CW=h +_.cx=null}, +ajG:function ajG(a,b,c,d){var _=this +_.X=!1 +_.fx=a +_.fy=null +_.go=b +_.k1=null +_.H$=c +_.b=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +ta(a){var s=a.a,r=a.b +return new A.au(s,s,r,r)}, +o1(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.au(p,q,r,s?1/0:a)}, +jg(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.au(p,q,r,s?a:1/0)}, +aqH(a){return new A.au(0,a.a,0,a.b)}, +o2(a,b,c){var s,r,q,p +if(a==b)return a +if(a==null)return b.ap(0,c) +if(b==null)return a.ap(0,1-c) +s=a.a +if(isFinite(s)){s=A.ak(s,b.a,c) +s.toString}else s=1/0 +r=a.b +if(isFinite(r)){r=A.ak(r,b.b,c) +r.toString}else r=1/0 +q=a.c +if(isFinite(q)){q=A.ak(q,b.c,c) +q.toString}else q=1/0 +p=a.d +if(isFinite(p)){p=A.ak(p,b.d,c) +p.toString}else p=1/0 +return new A.au(s,r,q,p)}, +bri(a){return new A.tb(a.a,a.b,a.c)}, +WU(a,b){return a==null?null:a+b}, +Ac(a,b){var s,r,q,p,o,n +$label0$0:{s=null +r=null +q=!1 +if(a!=null){p=typeof a=="number" +if(p){r=a +if(b!=null)q=typeof b=="number" +s=b}}else p=!1 +o=null +if(q){n=p?s:b +q=r>=(n==null?A.d5(n):n)?b:a +break $label0$0}q=!1 +if(a!=null){r=a +if(p)q=s +else{q=b +s=q +p=!0}q=q==null}else r=o +if(q){q=r +break $label0$0}q=a==null +if(q)if(!p){s=b +p=!0}if(q){n=p?s:b +q=n +break $label0$0}q=o}return q}, +au:function au(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aqI:function aqI(){}, +tb:function tb(a,b,c){this.a=a +this.b=b +this.c=c}, +w6:function w6(a,b){this.c=a +this.a=b +this.b=null}, +iJ:function iJ(a){this.a=a}, +HP:function HP(){}, +b2x:function b2x(){}, +b2y:function b2y(a,b){this.a=a +this.b=b}, +aZ4:function aZ4(){}, +aZ5:function aZ5(a,b){this.a=a +this.b=b}, +zn:function zn(a,b){this.a=a +this.b=b}, +b8M:function b8M(a,b){this.a=a +this.b=b}, +bk:function bk(){var _=this +_.d=_.c=_.b=_.a=null}, +P:function P(){}, +aO8:function aO8(a){this.a=a}, +el:function el(){}, +aO7:function aO7(a){this.a=a}, +Qr:function Qr(){}, +lU:function lU(a,b,c){var _=this +_.e=null +_.du$=a +_.aO$=b +_.a=c}, +aJR:function aJR(){}, +MK:function MK(a,b,c,d,e,f){var _=this +_.A=a +_.dl$=b +_.am$=c +_.dJ$=d +_.fx=e +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +SM:function SM(){}, +aj7:function aj7(){}, +bvn(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e +if(a==null)a=B.qh +s=J.a0(a) +r=s.gt(a)-1 +q=A.bO(0,null,!1,t.LQ) +p=0<=r +while(!0){if(!!1)break +s.h(a,0) +o=b[0] +o.gDW(o) +break}while(!0){if(!!1)break +s.h(a,r) +n=b[-1] +n.gDW(n) +break}m=A.bu("oldKeyedChildren") +l=0 +if(p){m.sfI(A.w(t.D2,t.bu)) +for(k=m.a;l<=r;){j=s.h(a,l) +i=j.a +if(i!=null){h=m.b +if(h===m)A.V(A.xp(k)) +J.bT(h,i,j)}++l}}for(k=m.a,g=0;!1;){o=b[g] +j=null +if(p){f=o.gDW(o) +i=m.b +if(i===m)A.V(A.xp(k)) +e=J.i(i,f) +if(e!=null)o.gDW(o) +else j=e}q[g]=A.bvm(j,o);++g}s.gt(a) +while(!0){if(!!1)break +q[g]=A.bvm(s.h(a,l),b[g]);++g;++l}return new A.ij(q,A.af(q).i("ij<1,ec>"))}, +bvm(a,b){var s,r=a==null?A.NC(b.gDW(b),null):a,q=b.gafU(),p=A.oN() +q.galo() +p.k3=q.galo() +p.e=!0 +q.gaPn(q) +s=q.gaPn(q) +p.c6(B.nm,!0) +p.c6(B.NV,s) +q.gaXo() +s=q.gaXo() +p.c6(B.nm,!0) +p.c6(B.NX,s) +q.gak4(q) +p.c6(B.NZ,q.gak4(q)) +q.gaP0(q) +p.c6(B.O3,q.gaP0(q)) +q.gaT7(q) +s=q.gaT7(q) +p.c6(B.alV,!0) +p.c6(B.alQ,s) +q.gvm() +p.c6(B.alU,q.gvm()) +q.gb04() +p.c6(B.NS,q.gb04()) +q.galj() +p.c6(B.O2,q.galj()) +q.gaWn() +p.c6(B.alR,q.gaWn()) +q.gXW(q) +p.c6(B.NP,q.gXW(q)) +q.gaTy() +p.c6(B.NU,q.gaTy()) +q.gaTz(q) +p.c6(B.rL,q.gaTz(q)) +q.gyq(q) +s=q.gyq(q) +p.c6(B.rM,!0) +p.c6(B.rK,s) +q.gaVk() +p.c6(B.alS,q.gaVk()) +q.gEc() +p.c6(B.NO,q.gEc()) +q.gaXz(q) +p.c6(B.O0,q.gaXz(q)) +q.gaV0(q) +p.c6(B.nn,q.gaV0(q)) +q.gaUY() +p.c6(B.O_,q.gaUY()) +q.gWI() +p.sWI(q.gWI()) +q.gajV() +p.c6(B.NT,q.gajV()) +q.gaXG() +p.c6(B.NY,q.gaXG()) +q.gaWB() +p.c6(B.NW,q.gaWB()) +q.gMf() +p.sMf(q.gMf()) +q.gKo() +p.sKo(q.gKo()) +q.gb0k() +s=q.gb0k() +p.c6(B.O1,!0) +p.c6(B.NQ,s) +q.glE(q) +p.c6(B.NR,q.glE(q)) +q.gDX(q) +p.ry=new A.e8(q.gDX(q),B.be) +p.e=!0 +q.gk(q) +p.to=new A.e8(q.gk(q),B.be) +p.e=!0 +q.gaVt() +p.x1=new A.e8(q.gaVt(),B.be) +p.e=!0 +q.gaRs() +p.x2=new A.e8(q.gaRs(),B.be) +p.e=!0 +q.gaV6(q) +p.xr=new A.e8(q.gaV6(q),B.be) +p.e=!0 +q.gcr() +p.a2=q.gcr() +p.e=!0 +q.grR() +p.srR(q.grR()) +q.grQ() +p.srQ(q.grQ()) +q.gMI() +p.sMI(q.gMI()) +q.gMJ() +p.sMJ(q.gMJ()) +q.gMK() +p.sMK(q.gMK()) +q.gMH() +p.sMH(q.gMH()) +q.gMz() +p.sMz(q.gMz()) +q.gMu() +p.sMu(q.gMu()) +q.gMs(q) +p.sMs(0,q.gMs(q)) +q.gMt(q) +p.sMt(0,q.gMt(q)) +q.gMF(q) +p.sMF(0,q.gMF(q)) +q.gMD() +p.sMD(q.gMD()) +q.gMB() +p.sMB(q.gMB()) +q.gME() +p.sME(q.gME()) +q.gMC() +p.sMC(q.gMC()) +q.gML() +p.sML(q.gML()) +q.gMM() +p.sMM(q.gMM()) +q.gMv() +p.sMv(q.gMv()) +q.gMw() +p.sMw(q.gMw()) +q.gMy(q) +p.sMy(0,q.gMy(q)) +q.gMx() +p.sMx(q.gMx()) +r.q8(0,B.qh,p) +r.scf(0,b.gcf(b)) +r.scZ(0,b.gcZ(b)) +r.dy=b.gb2g() +return r}, +ZG:function ZG(){}, +ML:function ML(a,b,c,d,e,f,g,h){var _=this +_.E=a +_.af=b +_.aZ=c +_.bH=d +_.d4=e +_.fu=_.ft=_.d9=_.cm=null +_.H$=f +_.fx=g +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=h +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +au9:function au9(){}, +bvo(a,b){return new A.z(A.M(a.a,b.a,b.c),A.M(a.b,b.b,b.d))}, +bxF(a){var s=new A.aj8(a,new A.bk(),A.aK()) +s.b5() +return s}, +bxR(){return new A.TY($.ap().br(),B.iw,B.fT,$.aW())}, +yQ:function yQ(a,b){this.a=a +this.b=b}, +aVy:function aVy(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=!0 +_.r=f}, +yb:function yb(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=_.a9=_.X=_.A=null +_.aQ=$ +_.M=a +_.U=b +_.aE=_.ac=null +_.cB=c +_.c4=d +_.eM=e +_.fT=f +_.H=g +_.d3=h +_.aR=i +_.b_=j +_.cY=_.ed=_.cU=null +_.h7=k +_.fU=l +_.cG=m +_.eN=n +_.f5=o +_.h8=p +_.lC=q +_.nY=r +_.cu=s +_.kO=a0 +_.E=a1 +_.af=a2 +_.aZ=a3 +_.bH=a4 +_.d4=a5 +_.d9=!1 +_.ft=$ +_.fu=a6 +_.hE=0 +_.dK=a7 +_.jt=_.hF=_.dS=null +_.nZ=_.hR=$ +_.uQ=_.k6=_.fv=null +_.kK=$ +_.js=a8 +_.ma=null +_.nU=!0 +_.L1=_.uS=_.uR=_.pw=!1 +_.ad7=null +_.ad8=a9 +_.ad9=b0 +_.dl$=b1 +_.am$=b2 +_.dJ$=b3 +_.yA$=b4 +_.fx=b5 +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=b6 +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOd:function aOd(a){this.a=a}, +aOc:function aOc(){}, +aO9:function aO9(a,b){this.a=a +this.b=b}, +aOe:function aOe(){}, +aOb:function aOb(){}, +aOa:function aOa(){}, +aj8:function aj8(a,b,c){var _=this +_.A=a +_.fx=b +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +uy:function uy(){}, +TY:function TY(a,b,c,d){var _=this +_.r=a +_.x=_.w=null +_.y=b +_.z=c +_.M$=0 +_.U$=d +_.aE$=_.ac$=0}, +Qh:function Qh(a,b,c){var _=this +_.r=!0 +_.w=!1 +_.x=a +_.y=$ +_.Q=_.z=null +_.as=b +_.ax=_.at=null +_.M$=0 +_.U$=c +_.aE$=_.ac$=0}, +EC:function EC(a,b){var _=this +_.r=a +_.M$=0 +_.U$=b +_.aE$=_.ac$=0}, +SO:function SO(){}, +SP:function SP(){}, +aj9:function aj9(){}, +MN:function MN(a,b,c){var _=this +_.A=a +_.X=$ +_.fx=b +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aYW(a,b){var s +switch(b.a){case 0:s=a +break +case 1:s=new A.R(a.b,a.a) +break +default:s=null}return s}, +bPj(a,b,c){var s +switch(c.a){case 0:s=b +break +case 1:s=b.gLm() +break +default:s=null}return s.bD(a)}, +bPi(a,b){return new A.R(a.a+b.a,Math.max(a.b,b.b))}, +bx9(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=null +$label0$0:{s=a==null +if(s){r=b +q=r}else{r=d +q=r}if(!s){p=!1 +p=b==null +q=b +r=a +s=!0}else p=!0 +if(p){p=r +break $label0$0}p=t.mi +o=d +n=!1 +m=d +l=d +k=d +j=!1 +if(p.b(a)){i=!0 +h=a.a +g=h +if(typeof g=="number"){A.d5(h) +f=a.b +g=f +if(typeof g=="number"){A.d5(f) +if(s)g=q +else{g=b +s=i +q=g}if(p.b(g)){if(s)g=q +else{g=b +s=i +q=g}e=(g==null?p.a(g):g).a +g=e +n=typeof g=="number" +if(n){A.d5(e) +if(s)j=q +else{j=b +s=i +q=j}o=(j==null?p.a(j):j).b +j=o +j=typeof j=="number" +k=e}}l=f}m=h}}if(j){if(n)p=o +else{j=s?q:b +o=(j==null?p.a(j):j).b +p=o}A.d5(p) +a=new A.b3(Math.max(A.iE(m),A.iE(k)),Math.max(A.iE(l),p)) +p=a +break $label0$0}p=d}return p}, +bMN(a,b,c,d,e,f,g,h){var s,r=null,q=A.aK(),p=J.bmy(4,t.iy) +for(s=0;s<4;++s)p[s]=new A.E0(r,B.bn,B.i,B.aB.l(0,B.aB)?new A.mj(1):B.aB,r,r,r,r,B.aX,r) +q=new A.yc(c,d,e,b,g,h,f,a,q,p,!0,0,r,r,new A.bk(),A.aK()) +q.b5() +q.G(0,r) +return q}, +bMO(a){var s=a.b +s.toString +s=t.US.a(s).e +return s==null?0:s}, +b91:function b91(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a0f:function a0f(a,b){this.a=a +this.b=b}, +i_:function i_(a,b,c){var _=this +_.f=_.e=null +_.du$=a +_.aO$=b +_.a=c}, +a20:function a20(a,b){this.a=a +this.b=b}, +tZ:function tZ(a,b){this.a=a +this.b=b}, +wq:function wq(a,b){this.a=a +this.b=b}, +yc:function yc(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){var _=this +_.A=a +_.X=b +_.a9=c +_.aC=d +_.aQ=e +_.M=f +_.U=g +_.ac=0 +_.aE=h +_.cB=i +_.adb$=j +_.aTj$=k +_.dl$=l +_.am$=m +_.dJ$=n +_.fx=o +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=p +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOg:function aOg(a,b){this.a=a +this.b=b}, +aOl:function aOl(){}, +aOj:function aOj(){}, +aOk:function aOk(){}, +aOi:function aOi(){}, +aOh:function aOh(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ajb:function ajb(){}, +ajc:function ajc(){}, +SQ:function SQ(){}, +MQ:function MQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s){var _=this +_.X=_.A=null +_.a9=a +_.aC=b +_.aQ=c +_.M=d +_.U=e +_.ac=null +_.aE=f +_.cB=g +_.c4=h +_.eM=i +_.fT=j +_.H=k +_.d3=l +_.aR=m +_.b_=n +_.cU=o +_.ed=p +_.cY=q +_.fx=r +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=s +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aK(){return new A.a1E()}, +buK(a){return new A.n4(a,A.w(t.S,t.M),A.aK())}, +bwD(a){return new A.r7(a,B.j,A.w(t.S,t.M),A.aK())}, +bn8(){return new A.a5c(B.j,A.w(t.S,t.M),A.aK())}, +br7(a){return new A.H9(a,B.dE,A.w(t.S,t.M),A.aK())}, +bmI(a,b){return new A.Ks(a,b,A.w(t.S,t.M),A.aK())}, +bt9(a){var s,r,q=new A.bW(new Float64Array(16)) +q.eo() +for(s=a.length-1;s>0;--s){r=a[s] +if(r!=null)r.um(a[s-1],q)}return q}, +azZ(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.azZ(a.r,b,c,d)}c.push(a.r) +d.push(b.r) +return A.azZ(a.r,b.r,c,d)}, +GY:function GY(a,b,c){this.a=a +this.b=b +this.$ti=c}, +Wj:function Wj(a,b){this.a=a +this.$ti=b}, +hh:function hh(){}, +aEO:function aEO(a,b){this.a=a +this.b=b}, +aEP:function aEP(a,b){this.a=a +this.b=b}, +a1E:function a1E(){this.a=null}, +a62:function a62(a,b,c){var _=this +_.ax=a +_.ay=null +_.CW=_.ch=!1 +_.a=b +_.b=0 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +hc:function hc(a,b){var _=this +_.ay=_.ax=null +_.a=a +_.b=0 +_.e=b +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +n4:function n4(a,b,c){var _=this +_.k3=a +_.ay=_.ax=null +_.a=b +_.b=0 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +At:function At(a,b,c){var _=this +_.k3=null +_.k4=a +_.ay=_.ax=null +_.a=b +_.b=0 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +HC:function HC(a,b,c){var _=this +_.k3=null +_.k4=a +_.ay=_.ax=null +_.a=b +_.b=0 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +HB:function HB(a,b,c){var _=this +_.k3=null +_.k4=a +_.ay=_.ax=null +_.a=b +_.b=0 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +Xx:function Xx(a,b){var _=this +_.ay=_.ax=_.k3=null +_.a=a +_.b=0 +_.e=b +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +JX:function JX(a,b,c,d){var _=this +_.bG=a +_.k3=b +_.ay=_.ax=null +_.a=c +_.b=0 +_.e=d +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +r7:function r7(a,b,c,d){var _=this +_.bG=a +_.a2=_.bx=null +_.by=!0 +_.k3=b +_.ay=_.ax=null +_.a=c +_.b=0 +_.e=d +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +a5c:function a5c(a,b,c){var _=this +_.bG=null +_.k3=a +_.ay=_.ax=null +_.a=b +_.b=0 +_.e=c +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +H9:function H9(a,b,c,d){var _=this +_.k3=a +_.k4=b +_.ay=_.ax=null +_.a=c +_.b=0 +_.e=d +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +BS:function BS(){this.d=this.a=null}, +Ks:function Ks(a,b,c,d){var _=this +_.k3=a +_.k4=b +_.ay=_.ax=null +_.a=c +_.b=0 +_.e=d +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +JB:function JB(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 +_.e=f +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null}, +GX:function GX(a,b,c,d,e,f){var _=this +_.k3=a +_.k4=b +_.ok=c +_.ay=_.ax=null +_.a=d +_.b=0 +_.e=e +_.f=0 +_.r=null +_.w=!0 +_.y=_.x=null +_.z=0 +_.as=_.Q=null +_.$ti=f}, +agB:function agB(){}, +bL9(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.gcl(s).l(0,b.gcl(b))}, +bL8(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.gzz() +p=a4.giJ(a4) +o=a4.gbX() +n=a4.ge1(a4) +m=a4.gn0(a4) +l=a4.gcl(a4) +k=a4.gy8() +j=a4.ghm(a4) +a4.gEc() +i=a4.gN3() +h=a4.gEp() +g=a4.ges() +f=a4.gVN() +e=a4.gv(a4) +d=a4.gXR() +c=a4.gXU() +b=a4.gXT() +a=a4.gXS() +a0=a4.gpV(a4) +a1=a4.gYb() +s.az(0,new A.aIW(r,A.bM3(j,k,m,g,f,a4.gKO(),0,n,!1,a0,o,l,h,i,d,a,b,c,e,a4.gtE(),a1,p,q).bY(a4.gcZ(a4)),s)) +q=A.y(r).i("aR<1>") +p=q.i("bh") +a2=A.a8(new A.bh(new A.aR(r,q),new A.aIX(s),p),!0,p.i("B.E")) +p=a4.gzz() +q=a4.giJ(a4) +a1=a4.gbX() +e=a4.ge1(a4) +c=a4.gn0(a4) +b=a4.gcl(a4) +a=a4.gy8() +d=a4.ghm(a4) +a4.gEc() +i=a4.gN3() +h=a4.gEp() +l=a4.ges() +o=a4.gVN() +a0=a4.gv(a4) +n=a4.gXR() +f=a4.gXU() +g=a4.gXT() +m=a4.gXS() +k=a4.gpV(a4) +j=a4.gYb() +a3=A.bM1(d,a,c,l,o,a4.gKO(),0,e,!1,k,a1,b,h,i,n,m,g,f,a0,a4.gtE(),j,q,p).bY(a4.gcZ(a4)) +for(q=A.af(a2).i("e5<1>"),p=new A.e5(a2,q),p=new A.ci(p,p.gt(0),q.i("ci")),q=q.i("aN.E");p.u();){o=p.d +if(o==null)o=q.a(o) +if(o.gYB()){n=o.gafi(o) +if(n!=null)n.$1(a3.bY(r.h(0,o)))}}}, +ahj:function ahj(a,b){this.a=a +this.b=b}, +ahk:function ahk(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a49:function a49(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.M$=0 +_.U$=d +_.aE$=_.ac$=0}, +aIY:function aIY(){}, +aJ0:function aJ0(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aJ_:function aJ_(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aIZ:function aIZ(a){this.a=a}, +aIW:function aIW(a,b,c){this.a=a +this.b=b +this.c=c}, +aIX:function aIX(a){this.a=a}, +and:function and(){}, +buS(a,b){var s,r,q=a.ch,p=t.dJ.a(q.a) +if(p==null){s=a.zw(null) +q.sb0(0,s) +p=s}else{p.XZ() +a.zw(p)}a.db=!1 +r=new A.qs(p,a.gof()) +a.SO(r,B.j) +r.Ab()}, +bLS(a){var s=a.ch.a +s.toString +a.zw(t.gY.a(s)) +a.db=!1}, +bLX(a,b,c){var s=t.TT +return new A.qu(a,c,b,A.a([],s),A.a([],s),A.a([],s),A.bn(t.I9),A.bn(t.sv))}, +bvp(a){if(a.Q!==a){a.bZ(A.bAk()) +a.Q=null}}, +bMR(a){var s,r +if(a.Q===a)return +s=a.gbt(a) +r=s==null?null:s.Q +r.toString +a.Q=r +a.bZ(A.bAl())}, +bQZ(a,b,c){var s=new A.akc() +s.a20(c,b,a) +return s}, +bxL(a,b){if(a==null)return null +if(a.ga_(0)||b.aeN())return B.ar +return A.buj(b,a)}, +bR_(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.gbt(r) +n.er(r,c) +r=n}if(p<=o){m=s.gbt(s) +m.toString +if(q==null){q=new A.bW(new Float64Array(16)) +q.eo() +l=q}else l=q +m.er(s,l) +s=m}}if(q!=null)if(q.hn(q)!==0)c.e7(0,q) +else c.G1()}, +bxK(a,b){var s +if(b==null)return a +s=a==null?null:a.hG(b) +return s==null?b:s}, +e_:function e_(){}, +qs:function qs(a,b){var _=this +_.a=a +_.b=b +_.e=_.d=_.c=null}, +aMh:function aMh(a,b,c){this.a=a +this.b=b +this.c=c}, +aMg:function aMg(a,b,c){this.a=a +this.b=b +this.c=c}, +aMf:function aMf(a,b,c){this.a=a +this.b=b +this.c=c}, +asN:function asN(){}, +qu:function qu(a,b,c,d,e,f,g,h){var _=this +_.b=a +_.c=b +_.d=c +_.e=null +_.f=!1 +_.r=d +_.z=e +_.Q=f +_.at=null +_.ch=g +_.CW=h +_.cx=null}, +aMB:function aMB(){}, +aMA:function aMA(){}, +aMC:function aMC(){}, +aMD:function aMD(){}, +G:function G(){}, +aOu:function aOu(a){this.a=a}, +aOx:function aOx(a,b,c){this.a=a +this.b=b +this.c=c}, +aOv:function aOv(a){this.a=a}, +aOw:function aOw(){}, +aOr:function aOr(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}, +aOs:function aOs(a,b,c){this.a=a +this.b=b +this.c=c}, +aOt:function aOt(a,b){this.a=a +this.b=b}, +bp:function bp(){}, +fk:function fk(){}, +aD:function aD(){}, +ux:function ux(){}, +aNZ:function aNZ(a){this.a=a}, +bd9:function bd9(){}, +adB:function adB(a,b,c){this.b=a +this.c=b +this.a=c}, +jO:function jO(){}, +ajM:function ajM(a,b,c){var _=this +_.e=a +_.b=b +_.c=null +_.a=c}, +RK:function RK(a,b,c){var _=this +_.e=a +_.b=b +_.c=null +_.a=c}, +zD:function zD(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}, +akc:function akc(){var _=this +_.b=_.a=null +_.d=_.c=$ +_.e=!1}, +ahV:function ahV(){}, +ajg:function ajg(){}, +bMP(a,b,c,d){var s,r,q,p,o=a.b +o.toString +s=t.tq.a(o).b +if(s==null)o=B.akz +else{o=c.$2(a,b) +r=s.b +q=s.c +$label0$0:{p=null +if(B.N1===r||B.N2===r||B.hY===r||B.N4===r||B.N3===r)break $label0$0 +if(B.N0===r){q.toString +p=d.$3(a,b,q) +break $label0$0}}q=new A.CN(o,r,p,q) +o=q}return o}, +boC(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.aW?1:-1}}, +qv:function qv(a,b){this.b=a +this.a=b}, +m8:function m8(a,b){var _=this +_.b=_.a=null +_.du$=a +_.aO$=b}, +a6Q:function a6Q(){}, +aOp:function aOp(a){this.a=a}, +uz:function uz(a,b,c,d,e,f,g,h,i,j){var _=this +_.A=a +_.M=_.aQ=_.aC=_.a9=_.X=null +_.U=b +_.ac=c +_.aE=d +_.cB=!1 +_.H=_.fT=_.eM=_.c4=null +_.yA$=e +_.dl$=f +_.am$=g +_.dJ$=h +_.fx=i +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=j +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOB:function aOB(){}, +aOC:function aOC(){}, +aOA:function aOA(){}, +aOz:function aOz(){}, +aOy:function aOy(a,b){this.a=a +this.b=b}, +p8:function p8(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=_.d=null +_.f=!1 +_.w=_.r=null +_.x=$ +_.z=_.y=null +_.M$=0 +_.U$=d +_.aE$=_.ac$=0}, +SW:function SW(){}, +ajh:function ajh(){}, +aji:function aji(){}, +U_:function U_(){}, +anC:function anC(){}, +anD:function anD(){}, +anE:function anE(){}, +bvl(a){var s=new A.MJ(a,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +aOq(a,b){return a}, +bMQ(a,b,c,d,e,f){var s=b==null?B.aU:b +s=new A.MT(!0,c,e,d,a,s,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +a6Z:function a6Z(){}, +hK:function hK(){}, +JN:function JN(a,b){this.a=a +this.b=b}, +MX:function MX(){}, +MJ:function MJ(a,b,c,d){var _=this +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6S:function a6S(a,b,c,d,e){var _=this +_.E=a +_.af=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MS:function MS(a,b,c,d,e){var _=this +_.E=a +_.af=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6U:function a6U(a,b,c,d,e,f){var _=this +_.E=a +_.af=b +_.aZ=c +_.H$=d +_.fx=e +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MF:function MF(){}, +a6F:function a6F(a,b,c,d,e,f,g){var _=this +_.yy$=a +_.W7$=b +_.yz$=c +_.W8$=d +_.H$=e +_.fx=f +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6G:function a6G(a,b,c,d,e){var _=this +_.E=a +_.af=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +I8:function I8(){}, +uK:function uK(a,b,c){this.b=a +this.c=b +this.a=c}, +FD:function FD(){}, +a6K:function a6K(a,b,c,d,e){var _=this +_.E=a +_.af=null +_.aZ=b +_.d4=null +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6J:function a6J(a,b,c,d,e,f,g){var _=this +_.dH=a +_.hD=b +_.E=c +_.af=null +_.aZ=d +_.d4=null +_.H$=e +_.fx=f +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6I:function a6I(a,b,c,d,e){var _=this +_.E=a +_.af=null +_.aZ=b +_.d4=null +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +SX:function SX(){}, +a6V:function a6V(a,b,c,d,e,f,g,h,i,j){var _=this +_.W5=a +_.W6=b +_.dH=c +_.hD=d +_.fo=e +_.E=f +_.af=null +_.aZ=g +_.d4=null +_.H$=h +_.fx=i +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=j +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOD:function aOD(a,b){this.a=a +this.b=b}, +a6W:function a6W(a,b,c,d,e,f,g,h){var _=this +_.dH=a +_.hD=b +_.fo=c +_.E=d +_.af=null +_.aZ=e +_.d4=null +_.H$=f +_.fx=g +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=h +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOE:function aOE(a,b){this.a=a +this.b=b}, +ZV:function ZV(a,b){this.a=a +this.b=b}, +a6L:function a6L(a,b,c,d,e,f){var _=this +_.E=null +_.af=a +_.aZ=b +_.bH=c +_.H$=d +_.fx=e +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a76:function a76(a,b,c,d){var _=this +_.aZ=_.af=_.E=null +_.bH=a +_.cm=_.d4=null +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOV:function aOV(a){this.a=a}, +MO:function MO(a,b,c,d,e,f,g){var _=this +_.E=null +_.af=a +_.aZ=b +_.bH=c +_.cm=_.d4=null +_.d9=d +_.H$=e +_.fx=f +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOf:function aOf(a){this.a=a}, +a6O:function a6O(a,b,c,d,e){var _=this +_.E=a +_.af=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOn:function aOn(a){this.a=a}, +a6Y:function a6Y(a,b,c,d,e,f,g,h,i,j,k,l,m){var _=this +_.ej=a +_.hQ=b +_.dt=c +_.ez=d +_.dH=e +_.hD=f +_.fo=g +_.iy=h +_.uT=i +_.E=j +_.H$=k +_.fx=l +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=m +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MT:function MT(a,b,c,d,e,f,g,h,i){var _=this +_.ej=a +_.hQ=b +_.dt=c +_.ez=d +_.dH=e +_.hD=!0 +_.E=f +_.H$=g +_.fx=h +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=i +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a7_:function a7_(a,b,c){var _=this +_.H$=a +_.fx=b +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MP:function MP(a,b,c,d,e){var _=this +_.E=a +_.af=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MU:function MU(a,b,c,d){var _=this +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MD:function MD(a,b,c,d,e){var _=this +_.E=a +_.af=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +qJ:function qJ(a,b,c,d){var _=this +_.dH=_.ez=_.dt=_.hQ=_.ej=null +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +MZ:function MZ(a,b,c,d,e,f,g,h,i){var _=this +_.E=a +_.af=b +_.aZ=c +_.bH=d +_.d4=e +_.hE=_.fu=_.ft=_.d9=_.cm=null +_.dK=f +_.H$=g +_.fx=h +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=i +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6H:function a6H(a,b,c,d){var _=this +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6T:function a6T(a,b,c){var _=this +_.H$=a +_.fx=b +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=c +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6M:function a6M(a,b,c,d){var _=this +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6P:function a6P(a,b,c,d){var _=this +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6R:function a6R(a,b,c,d){var _=this +_.E=a +_.af=null +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6N:function a6N(a,b,c,d,e,f,g,h){var _=this +_.E=a +_.af=b +_.aZ=c +_.bH=d +_.d4=e +_.H$=f +_.fx=g +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=h +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOm:function aOm(a){this.a=a}, +MH:function MH(a,b,c,d,e,f,g){var _=this +_.E=a +_.af=b +_.aZ=c +_.H$=d +_.fx=e +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null +_.$ti=g}, +aj3:function aj3(){}, +SY:function SY(){}, +SZ:function SZ(){}, +MY:function MY(a,b,c,d,e){var _=this +_.A=a +_.X=null +_.a9=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOF:function aOF(a){this.a=a}, +ajj:function ajj(){}, +NB(a,b){var s +if(a.p(0,b))return B.ag +s=b.b +if(sa.d)return B.a8 +return b.a>=a.c?B.a8:B.ad}, +NA(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.i?new A.z(a.a,r):new A.z(a.c,r) +else{s=a.d +return c===B.i?new A.z(a.c,s):new A.z(a.a,s)}}, +aQI(a,b){return new A.Ny(a,b==null?B.ty:b,B.alz)}, +aQH(a,b){return new A.Ny(a,b==null?B.ty:b,B.ft)}, +uH:function uH(a,b){this.a=a +this.b=b}, +hL:function hL(){}, +a8_:function a8_(){}, +yx:function yx(a,b){this.a=a +this.b=b}, +yO:function yO(a,b){this.a=a +this.b=b}, +aQJ:function aQJ(){}, +Hz:function Hz(a){this.a=a}, +Ny:function Ny(a,b,c){this.b=a +this.c=b +this.a=c}, +Do:function Do(a,b){this.a=a +this.b=b}, +Nz:function Nz(a,b){this.a=a +this.b=b}, +uG:function uG(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +yy:function yy(a,b,c){this.a=a +this.b=b +this.c=c}, +OX:function OX(a,b){this.a=a +this.b=b}, +ak8:function ak8(){}, +yd:function yd(){}, +aOG:function aOG(a){this.a=a}, +MV:function MV(a,b,c,d,e){var _=this +_.E=null +_.af=a +_.aZ=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a6E:function a6E(){}, +MW:function MW(a,b,c,d,e,f,g){var _=this +_.dt=a +_.ez=b +_.E=null +_.af=c +_.aZ=d +_.H$=e +_.fx=f +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aRI:function aRI(){}, +MM:function MM(a,b,c,d){var _=this +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +T0:function T0(){}, +rM(a,b){var s +switch(b.a){case 0:s=a +break +case 1:s=A.bzR(a) +break +default:s=null}return s}, +bUE(a,b){var s +switch(b.a){case 0:s=a +break +case 1:s=A.bVO(a) +break +default:s=null}return s}, +m5(a,b,c,d,e,f,g,h,i){var s=d==null?f:d,r=c==null?f:c,q=a==null?d:a +if(q==null)q=f +return new A.a8s(h,g,f,s,e,r,f>0,b,i,q)}, +a8v:function a8v(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a0I:function a0I(a,b){this.a=a +this.b=b}, +uM:function uM(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}, +a8s:function a8s(a,b,c,d,e,f,g,h,i,j){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.r=f +_.w=g +_.x=h +_.y=i +_.z=j}, +Dz:function Dz(a,b,c){this.a=a +this.b=b +this.c=c}, +a8u:function a8u(a,b,c){var _=this +_.c=a +_.d=b +_.a=c +_.b=null}, +qY:function qY(){}, +qX:function qX(a,b){this.du$=a +this.aO$=b +this.a=null}, +uN:function uN(a){this.a=a}, +r_:function r_(a,b,c){this.du$=a +this.aO$=b +this.a=c}, +e4:function e4(){}, +aOJ:function aOJ(){}, +aOK:function aOK(a,b){this.a=a +this.b=b}, +akA:function akA(){}, +akB:function akB(){}, +akE:function akE(){}, +a71:function a71(a,b,c,d,e,f,g){var _=this +_.ej=a +_.cu=$ +_.a2=b +_.by=c +_.dl$=d +_.am$=e +_.dJ$=f +_.b=_.fx=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a72:function a72(){}, +aRV:function aRV(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aRW:function aRW(){}, +aRX:function aRX(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +aRU:function aRU(){}, +O4:function O4(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Dy:function Dy(a,b,c){var _=this +_.b=_.w=null +_.c=!1 +_.yC$=a +_.du$=b +_.aO$=c +_.a=null}, +a73:function a73(a,b,c,d,e,f,g){var _=this +_.cu=a +_.a2=b +_.by=c +_.dl$=d +_.am$=e +_.dJ$=f +_.b=_.fx=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=g +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a74:function a74(a,b,c,d,e,f){var _=this +_.a2=a +_.by=b +_.dl$=c +_.am$=d +_.dJ$=e +_.b=_.fx=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOL:function aOL(a,b,c){this.a=a +this.b=b +this.c=c}, +mV:function mV(){}, +aOP:function aOP(){}, +i8:function i8(a,b,c){var _=this +_.b=null +_.c=!1 +_.yC$=a +_.du$=b +_.aO$=c +_.a=null}, +qK:function qK(){}, +aOM:function aOM(a,b,c){this.a=a +this.b=b +this.c=c}, +aOO:function aOO(a,b){this.a=a +this.b=b}, +aON:function aON(){}, +T2:function T2(){}, +ajp:function ajp(){}, +ajq:function ajq(){}, +akC:function akC(){}, +akD:function akD(){}, +N_:function N_(){}, +aOI:function aOI(a,b){this.a=a +this.b=b}, +aOH:function aOH(a,b){this.a=a +this.b=b}, +a75:function a75(a,b,c,d){var _=this +_.cG=null +_.eN=a +_.f5=b +_.H$=c +_.b=_.fx=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +ajn:function ajn(){}, +bMS(a,b,c,d,e){var s=new A.D5(a,e,d,c,A.aK(),0,null,null,new A.bk(),A.aK()) +s.b5() +s.G(0,b) +return s}, +ye(a,b){var s,r,q,p +for(s=t.d,r=a,q=0;r!=null;){p=r.b +p.toString +s.a(p) +if(!p.gvi())q=Math.max(q,A.iE(b.$1(r))) +r=p.aO$}return q}, +bvr(a,b,c,d){var s,r,q,p,o,n,m,l,k,j +a.df(b.XK(c),!0) +$label0$0:{s=b.w +r=s!=null +if(r)if(s==null)A.d5(s) +if(r){q=s==null?A.d5(s):s +r=q +break $label0$0}p=b.f +r=p!=null +if(r)if(p==null)A.d5(p) +if(r){o=p==null?A.d5(p):p +r=c.a-o-a.gv(0).a +break $label0$0}r=d.ph(t.c.a(c.ai(0,a.gv(0)))).a +break $label0$0}$label1$1:{n=b.e +m=n!=null +if(m)if(n==null)A.d5(n) +if(m){l=n==null?A.d5(n):n +m=l +break $label1$1}k=b.r +m=k!=null +if(m)if(k==null)A.d5(k) +if(m){j=k==null?A.d5(k):k +m=c.b-j-a.gv(0).b +break $label1$1}m=d.ph(t.c.a(c.ai(0,a.gv(0)))).b +break $label1$1}b.a=new A.z(r,m) +return r<0||r+a.gv(0).a>c.a||m<0||m+a.gv(0).b>c.b}, +bvq(a,b,c,d,e){var s,r,q,p,o,n,m,l=a.b +l.toString +t.d.a(l) +s=l.gvi()?l.XK(b):c +r=a.ii(s,e) +if(r==null)return null +$label0$0:{q=l.e +p=q!=null +if(p)if(q==null)A.d5(q) +if(p){o=q==null?A.d5(q):q +l=o +break $label0$0}n=l.r +l=n!=null +if(l)if(n==null)A.d5(n) +if(l){m=n==null?A.d5(n):n +l=b.b-m-a.aM(B.af,s,a.gdD()).b +break $label0$0}l=d.ph(t.c.a(b.ai(0,a.aM(B.af,s,a.gdD())))).b +break $label0$0}return r+l}, +fM:function fM(a,b,c){var _=this +_.y=_.x=_.w=_.r=_.f=_.e=null +_.du$=a +_.aO$=b +_.a=c}, +Oj:function Oj(a,b){this.a=a +this.b=b}, +D5:function D5(a,b,c,d,e,f,g,h,i,j){var _=this +_.A=!1 +_.X=null +_.a9=a +_.aC=b +_.aQ=c +_.M=d +_.U=e +_.dl$=f +_.am$=g +_.dJ$=h +_.fx=i +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=j +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOT:function aOT(a){this.a=a}, +aOR:function aOR(a){this.a=a}, +aOS:function aOS(a){this.a=a}, +aOQ:function aOQ(a){this.a=a}, +MR:function MR(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.hE=a +_.A=!1 +_.X=null +_.a9=b +_.aC=c +_.aQ=d +_.M=e +_.U=f +_.dl$=g +_.am$=h +_.dJ$=i +_.fx=j +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=k +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +aOo:function aOo(a){this.a=a}, +ajr:function ajr(){}, +ajs:function ajs(){}, +GI:function GI(a,b){this.a=a +this.b=b}, +t_:function t_(a,b){this.a=a +this.b=b}, +bOW(a){var s,r,q,p,o,n=$.dz(),m=n.d +if(m==null){s=self.window.devicePixelRatio +m=s===0?1:s}s=A.bwY(a.Q,a.gmo().fO(0,m)).ap(0,m) +r=s.a +q=s.b +p=s.c +s=s.d +o=n.d +if(o==null){n=self.window.devicePixelRatio +o=n===0?1:n}return new A.Pu(new A.au(r/o,q/o,p/o,s/o),new A.au(r,q,p,s),o)}, +Pu:function Pu(a,b,c){this.a=a +this.b=b +this.c=c}, +yf:function yf(){}, +ajv:function ajv(){}, +bML(a){var s +for(s=t.NW;a!=null;){if(s.b(a))return a +a=a.gbt(a)}return null}, +bMW(a,b,c){var s=b.aq.a)return q +else if(a0)return a>=1e5 +return!0}, +pb:function pb(a,b,c,d){var _=this +_.a=a +_.b=b +_.f=c +_.$ti=d}, +F4:function F4(a){this.a=a}, +yp:function yp(a,b){this.a=a +this.b=b}, +aMs:function aMs(a){this.a=a}, +oL:function oL(){}, +aQ6:function aQ6(a){this.a=a}, +aQ4:function aQ4(a){this.a=a}, +aQ7:function aQ7(a){this.a=a}, +aQ8:function aQ8(a,b){this.a=a +this.b=b}, +aQ9:function aQ9(a){this.a=a}, +aQ3:function aQ3(a){this.a=a}, +aQ5:function aQ5(a){this.a=a}, +bnX(){var s=new A.yT(new A.aq(new A.a_($.ab,t.U),t.h)) +s.a8O() +return s}, +E4:function E4(a){var _=this +_.a=null +_.b=!1 +_.c=null +_.d=a +_.e=null}, +yT:function yT(a){this.a=a +this.c=this.b=null}, +aUH:function aUH(a){this.a=a}, +P4:function P4(a){this.a=a}, +a80:function a80(){}, +aR0:function aR0(a){this.a=a}, +atO(a){var s=$.blh.h(0,a) +if(s==null){s=$.brR +$.brR=s+1 +$.blh.n(0,a,s) +$.brQ.n(0,s,a)}return s}, +bNq(a,b){var s +if(a.length!==b.length)return!1 +for(s=0;s=0 +if(n){p.R(q,0,o).split("\n") +p.bE(q,o+2) +l.push(new A.Kt())}else l.push(new A.Kt())}return l}, +bNv(a){var s +$label0$0:{if("AppLifecycleState.resumed"===a){s=B.dB +break $label0$0}if("AppLifecycleState.inactive"===a){s=B.is +break $label0$0}if("AppLifecycleState.hidden"===a){s=B.ky +break $label0$0}if("AppLifecycleState.paused"===a){s=B.kz +break $label0$0}if("AppLifecycleState.detached"===a){s=B.fR +break $label0$0}s=null +break $label0$0}return s}, +NJ:function NJ(){}, +aRo:function aRo(a){this.a=a}, +aRn:function aRn(a){this.a=a}, +b0x:function b0x(){}, +b0y:function b0y(a){this.a=a}, +b0z:function b0z(a){this.a=a}, +aqM:function aqM(){}, +Xr(a){var s=0,r=A.n(t.H) +var $async$Xr=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=2 +return A.f(B.bz.e0("Clipboard.setData",A.C(["text",a.a],t.N,t.z),t.H),$async$Xr) +case 2:return A.l(null,r)}}) +return A.m($async$Xr,r)}, +aso(a){var s=0,r=A.n(t.VI),q,p +var $async$aso=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=3 +return A.f(B.bz.e0("Clipboard.getData",a,t.a),$async$aso) +case 3:p=c +if(p==null){q=null +s=1 +break}q=new A.Au(A.bS(J.i(p,"text"))) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$aso,r)}, +Au:function Au(a){this.a=a}, +btT(a,b,c,d,e){return new A.xm(c,b,null,e,d)}, +btS(a,b,c,d,e){return new A.xk(d,c,a,e,!1)}, +bJL(a){var s,r,q=a.d,p=B.agl.h(0,q) +if(p==null)p=new A.L(q) +q=a.e +s=B.aeC.h(0,q) +if(s==null)s=new A.x(q) +r=a.a +switch(a.b.a){case 0:return new A.op(p,s,a.f,r,a.r) +case 1:return A.btT(B.pR,s,p,a.r,r) +case 2:return A.btS(a.f,B.pR,s,p,r)}}, +BO:function BO(a,b,c){this.c=a +this.a=b +this.b=c}, +lO:function lO(){}, +op:function op(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e}, +xm:function xm(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e}, +xk:function xk(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.f=e}, +aB_:function aB_(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.e=null}, +a1m:function a1m(a,b){this.a=a +this.b=b}, +Kk:function Kk(a,b){this.a=a +this.b=b}, +a1n:function a1n(a,b,c,d){var _=this +_.a=null +_.b=a +_.c=b +_.d=null +_.e=c +_.f=d}, +agy:function agy(){}, +aDn:function aDn(a,b,c){this.a=a +this.b=b +this.c=c}, +bu5(a){var s=A.y(a).i("hB<1,x>") +return A.f8(new A.hB(a,new A.aFe(),s),s.i("B.E"))}, +aFf(a){var s=A.y(a).i("hB<1,x>") +return A.f8(new A.hB(a,new A.aFg(),s),s.i("B.E"))}, +aDo:function aDo(){}, +x:function x(a){this.a=a}, +aFe:function aFe(){}, +aFg:function aFg(){}, +L:function L(a){this.a=a}, +agz:function agz(){}, +bnl(a,b,c,d){return new A.xZ(a,c,b,d)}, +aIJ(a){return new A.L8(a)}, +n1:function n1(a,b){this.a=a +this.b=b}, +xZ:function xZ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +L8:function L8(a){this.a=a}, +aSX:function aSX(){}, +aCW:function aCW(){}, +aCY:function aCY(){}, +aSm:function aSm(){}, +aSn:function aSn(a,b){this.a=a +this.b=b}, +aSq:function aSq(){}, +bPw(a){var s,r,q +for(s=A.y(a),r=new A.bD(J.ay(a.a),a.b,s.i("bD<1,2>")),s=s.y[1];r.u();){q=r.a +if(q==null)q=s.a(q) +if(!q.l(0,B.cU))return q}return null}, +aIV:function aIV(a,b){this.a=a +this.b=b}, +Le:function Le(){}, +eG:function eG(){}, +aev:function aev(){}, +al4:function al4(a,b){this.a=a +this.b=b}, +oT:function oT(a){this.a=a}, +ahi:function ahi(){}, +t7:function t7(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +aqz:function aqz(a,b){this.a=a +this.b=b}, +n2:function n2(a,b){this.a=a +this.b=b}, +aIB:function aIB(a,b){this.a=a +this.b=b}, +l_:function l_(a,b){this.a=a +this.b=b}, +ayi:function ayi(){}, +ayk:function ayk(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ayj:function ayj(a,b){this.a=a +this.b=b}, +ayl:function ayl(a,b,c){this.a=a +this.b=b +this.c=c}, +bv0(a){var s,r,q,p=t.wh.a(a.h(0,"touchOffset")) +if(p==null)s=null +else{s=J.a0(p) +r=s.h(p,0) +r.toString +A.iD(r) +s=s.h(p,1) +s.toString +s=new A.z(r,A.iD(s))}r=a.h(0,"progress") +r.toString +A.iD(r) +q=a.h(0,"swipeEdge") +q.toString +return new A.a6d(s,r,B.a8z[A.ds(q)])}, +Oz:function Oz(a,b){this.a=a +this.b=b}, +a6d:function a6d(a,b,c){this.a=a +this.b=b +this.c=c}, +CW:function CW(a,b){this.a=a +this.b=b}, +aug:function aug(){this.a=$}, +bMy(a){var s,r,q,p,o={} +o.a=null +s=new A.aNl(o,a).$0() +r=$.aoU().d +q=A.y(r).i("aR<1>") +p=A.f8(new A.aR(r,q),q.i("B.E")).p(0,s.gnf()) +q=J.i(a,"type") +q.toString +A.bS(q) +$label0$0:{if("keydown"===q){r=new A.ut(o.a,p,s) +break $label0$0}if("keyup"===q){r=new A.y9(null,!1,s) +break $label0$0}r=A.V(A.mP("Unknown key event type: "+q))}return r}, +xn:function xn(a,b){this.a=a +this.b=b}, +kS:function kS(a,b){this.a=a +this.b=b}, +Mu:function Mu(){}, +qI:function qI(){}, +aNl:function aNl(a,b){this.a=a +this.b=b}, +ut:function ut(a,b,c){this.a=a +this.b=b +this.c=c}, +y9:function y9(a,b,c){this.a=a +this.b=b +this.c=c}, +aNo:function aNo(a,b){this.a=a +this.d=b}, +eW:function eW(a,b){this.a=a +this.b=b}, +aiH:function aiH(){}, +aiG:function aiG(){}, +a6v:function a6v(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +N9:function N9(a,b){var _=this +_.b=_.a=null +_.f=_.d=_.c=!1 +_.r=a +_.M$=0 +_.U$=b +_.aE$=_.ac$=0}, +aPk:function aPk(a){this.a=a}, +aPl:function aPl(a){this.a=a}, +fq:function fq(a,b,c,d,e,f){var _=this +_.a=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=!1}, +aPh:function aPh(){}, +aPi:function aPi(){}, +aPg:function aPg(){}, +aPj:function aPj(){}, +bH_(a,b){var s,r,q,p,o=A.a([],t.bt),n=J.a0(a),m=0,l=0 +while(!0){if(!(m1 +if(a0===0)m=0===a0 +else m=!1 +l=n&&a0b +s=!l +i=s&&!m&&a2e||!s||k +if(d===o)return new A.DX(d,p,r) +else if((!q||i)&&a2)return new A.a9m(new A.cW(!n?b-1:c,b),d,p,r) +else if((c===b||j)&&a2)return new A.a9n(B.c.R(a,e,e+(a0-e)),b,d,p,r) +else if(f)return new A.a9o(a,new A.cW(c,b),d,p,r) +return new A.DX(d,p,r)}, +uX:function uX(){}, +a9n:function a9n(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.c=e}, +a9m:function a9m(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.c=d}, +a9o:function a9o(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.c=e}, +DX:function DX(a,b,c){this.a=a +this.b=b +this.c=c}, +alk:function alk(){}, +bIF(a){return new A.Bj(a,!0,"")}, +btY(a,b){var s,r,q,p,o=a.a,n=new A.le(o,0,0) +if((o.length===0?B.bN:new A.ev(o)).gt(0)>b)n.GD(b,0) +s=n.gI(0) +o=a.b +r=s.length +o=o.CE(Math.min(o.a,r),Math.min(o.b,r)) +q=a.c +p=q.a +q=q.b +return new A.dS(s,o,p!==q&&r>p?new A.cW(p,Math.min(q,r)):B.bH)}, +L0:function L0(a,b){this.a=a +this.b=b}, +uY:function uY(){}, +ahm:function ahm(a,b){this.a=a +this.b=b}, +bf6:function bf6(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +Bj:function Bj(a,b,c){this.a=a +this.b=b +this.c=c}, +azg:function azg(a,b,c){this.a=a +this.b=b +this.c=c}, +a1I:function a1I(a,b){this.a=a +this.b=b}, +bwm(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return new A.aU9(p,i,l,!1,b,c,m,n,!0,f,h,o,j,!0,a,!1)}, +bUp(a){var s +$label0$0:{if("TextAffinity.downstream"===a){s=B.q +break $label0$0}if("TextAffinity.upstream"===a){s=B.aW +break $label0$0}s=null +break $label0$0}return s}, +bwl(a){var s,r,q,p,o=J.a0(a),n=A.bS(o.h(a,"text")),m=A.jU(o.h(a,"selectionBase")) +if(m==null)m=-1 +s=A.jU(o.h(a,"selectionExtent")) +if(s==null)s=-1 +r=A.bUp(A.dk(o.h(a,"selectionAffinity"))) +if(r==null)r=B.q +q=A.pe(o.h(a,"selectionIsDirectional")) +p=A.dx(r,m,s,q===!0) +m=A.jU(o.h(a,"composingBase")) +if(m==null)m=-1 +o=A.jU(o.h(a,"composingExtent")) +return new A.dS(n,p,new A.cW(m,o==null?-1:o))}, +bwn(a){var s=A.a([],t.u1),r=$.bwo +$.bwo=r+1 +return new A.aUa(s,r,a)}, +bUr(a){var s +$label0$0:{if("TextInputAction.none"===a){s=B.apy +break $label0$0}if("TextInputAction.unspecified"===a){s=B.apz +break $label0$0}if("TextInputAction.go"===a){s=B.apC +break $label0$0}if("TextInputAction.search"===a){s=B.apD +break $label0$0}if("TextInputAction.send"===a){s=B.apE +break $label0$0}if("TextInputAction.next"===a){s=B.apF +break $label0$0}if("TextInputAction.previous"===a){s=B.apG +break $label0$0}if("TextInputAction.continueAction"===a){s=B.apH +break $label0$0}if("TextInputAction.join"===a){s=B.apI +break $label0$0}if("TextInputAction.route"===a){s=B.apA +break $label0$0}if("TextInputAction.emergencyCall"===a){s=B.apB +break $label0$0}if("TextInputAction.done"===a){s=B.nD +break $label0$0}if("TextInputAction.newline"===a){s=B.Pe +break $label0$0}s=A.V(A.wU(A.a([A.pS("Unknown text input action: "+a)],t.E)))}return s}, +bUq(a){var s +$label0$0:{if("FloatingCursorDragState.start"===a){s=B.xl +break $label0$0}if("FloatingCursorDragState.update"===a){s=B.lw +break $label0$0}if("FloatingCursorDragState.end"===a){s=B.lx +break $label0$0}s=A.V(A.wU(A.a([A.pS("Unknown text cursor action: "+a)],t.E)))}return s}, +aS2:function aS2(a,b){this.a=a +this.b=b}, +aS9:function aS9(a,b){this.a=a +this.b=b}, +yP:function yP(a,b,c){this.a=a +this.b=b +this.c=c}, +jH:function jH(a,b){this.a=a +this.b=b}, +aTS:function aTS(a,b){this.a=a +this.b=b}, +aU9:function aU9(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 +_.Q=k +_.as=l +_.at=m +_.ax=n +_.ay=o +_.ch=p}, +Jt:function Jt(a,b){this.a=a +this.b=b}, +D0:function D0(a,b,c){this.a=a +this.b=b +this.c=c}, +dS:function dS(a,b,c){this.a=a +this.b=b +this.c=c}, +aTW:function aTW(a,b){this.a=a +this.b=b}, +m0:function m0(a,b){this.a=a +this.b=b}, +aUz:function aUz(){}, +aU7:function aU7(){}, +yz:function yz(a,b,c){this.a=a +this.b=b +this.c=c}, +aUa:function aUa(a,b,c){var _=this +_.d=_.c=_.b=_.a=null +_.e=a +_.f=b +_.r=c}, +a9t:function a9t(a,b,c){var _=this +_.a=a +_.b=b +_.c=$ +_.d=null +_.e=$ +_.f=c +_.w=_.r=!1}, +aUq:function aUq(a){this.a=a}, +aUo:function aUo(){}, +aUn:function aUn(a,b){this.a=a +this.b=b}, +aUp:function aUp(a){this.a=a}, +aUr:function aUr(a){this.a=a}, +OS:function OS(){}, +ahW:function ahW(){}, +baD:function baD(){}, +anl:function anl(){}, +a9Q:function a9Q(a,b){this.a=a +this.b=b}, +a9R:function a9R(){this.a=$ +this.b=null}, +aVa:function aVa(){}, +bT3(a){var s=A.bu("parent") +a.mw(new A.bhP(s)) +return s.b2()}, +rY(a,b){return new A.po(a,b,null)}, +W6(a,b){var s,r,q +if(a.e==null)return!1 +s=t.L1 +r=a.jc(s) +for(;q=r!=null,q;){if(b.$1(r))break +r=A.bT3(r).jc(s)}return q}, +bkI(a){var s={} +s.a=null +A.W6(a,new A.apm(s)) +return B.SE}, +bqX(a,b,c){var s={} +s.a=null +if((b==null?null:A.K(b))==null)A.cK(c) +A.W6(a,new A.app(s,b,a,c)) +return s.a}, +bkJ(a,b){var s={} +s.a=null +A.cK(b) +A.W6(a,new A.apn(s,null,b)) +return s.a}, +apl(a,b,c){var s,r=b==null?null:A.K(b) +if(r==null)r=A.cK(c) +s=a.r.h(0,r) +if(c.i("d2<0>?").b(s))return s +else return null}, +vY(a,b,c){var s={} +s.a=null +A.W6(a,new A.apo(s,b,a,c)) +return s.a}, +bFh(a,b,c){var s={} +s.a=null +A.W6(a,new A.apq(s,b,a,c)) +return s.a}, +bmh(a,b,c,d,e,f,g,h,i,j){return new A.wW(d,e,!1,a,j,h,i,g,f,c,null)}, +bhP:function bhP(a){this.a=a}, +c8:function c8(){}, +d2:function d2(){}, +fV:function fV(){}, +dv:function dv(a,b,c){var _=this +_.c=a +_.a=b +_.b=null +_.$ti=c}, +apk:function apk(){}, +po:function po(a,b,c){this.d=a +this.e=b +this.a=c}, +apm:function apm(a){this.a=a}, +app:function app(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +apn:function apn(a,b,c){this.a=a +this.b=b +this.c=c}, +apo:function apo(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +apq:function apq(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +PS:function PS(a,b){var _=this +_.d=a +_.e=b +_.c=_.a=null}, +aXx:function aXx(a){this.a=a}, +PR:function PR(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.b=d +_.a=e}, +wW:function wW(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.d=b +_.e=c +_.w=d +_.x=e +_.y=f +_.z=g +_.Q=h +_.as=i +_.ax=j +_.a=k}, +Rv:function Rv(a){var _=this +_.f=_.e=_.d=!1 +_.r=a +_.c=_.a=null}, +b4G:function b4G(a){this.a=a}, +b4E:function b4E(a){this.a=a}, +b4z:function b4z(a){this.a=a}, +b4A:function b4A(a){this.a=a}, +b4y:function b4y(a,b){this.a=a +this.b=b}, +b4D:function b4D(a){this.a=a}, +b4B:function b4B(a){this.a=a}, +b4C:function b4C(a,b){this.a=a +this.b=b}, +b4F:function b4F(a,b){this.a=a +this.b=b}, +a_t:function a_t(a,b){this.c=a +this.a=b +this.b=null}, +k3:function k3(){}, +a_p:function a_p(){}, +Fv:function Fv(){}, +Ss:function Ss(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.aTk$=c +_.aTl$=d +_.aTm$=e +_.aTn$=f +_.a=g +_.b=null +_.$ti=h}, +St:function St(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.aTk$=c +_.aTl$=d +_.aTm$=e +_.aTn$=f +_.a=g +_.b=null +_.$ti=h}, +Qs:function Qs(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=null +_.$ti=d}, +acu:function acu(){}, +acs:function acs(){}, +agu:function agu(){}, +V5:function V5(){}, +V6:function V6(){}, +br1(a,b,c){return new A.GP(a,b,c,null)}, +GP:function GP(a,b,c,d){var _=this +_.c=a +_.e=b +_.f=c +_.a=d}, +acI:function acI(a,b){var _=this +_.fp$=a +_.c3$=b +_.c=_.a=null}, +acH:function acH(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}, +amQ:function amQ(){}, +bFk(a,b,c){return new A.GQ(a,b,c,null)}, +bFm(a,b){return new A.eB(b,!1,a,new A.eK(a.gDW(a),t.BN))}, +bFl(a,b){var s=A.a8(b,!0,t.l7) +if(a!=null)s.push(a) +return A.cq(B.O,s,B.w,B.W,null)}, +vh:function vh(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +GQ:function GQ(a,b,c,d){var _=this +_.c=a +_.d=b +_.w=c +_.a=d}, +PU:function PU(a,b,c,d){var _=this +_.d=null +_.e=a +_.f=b +_.r=0 +_.dI$=c +_.b8$=d +_.c=_.a=null}, +aYw:function aYw(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aYv:function aYv(a,b){this.a=a +this.b=b}, +aYx:function aYx(){}, +aYy:function aYy(a){this.a=a}, +UE:function UE(){}, +GW:function GW(a,b,c,d){var _=this +_.e=a +_.c=b +_.a=c +_.$ti=d}, +bUQ(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.gW(a2) +s=t.N +r=t.da +q=A.ir(a0,a0,a0,s,r) +p=A.ir(a0,a0,a0,s,r) +o=A.ir(a0,a0,a0,s,r) +n=A.ir(a0,a0,a0,s,r) +m=A.ir(a0,a0,a0,t.T,r) +for(s=a2.length,l=0;l"))}, +HK:function HK(a,b){this.a=a +this.b=b}, +lA:function lA(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +Bt:function Bt(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.$ti=d}, +Ry:function Ry(a){var _=this +_.d=null +_.e=$ +_.c=_.a=null +_.$ti=a}, +b4M:function b4M(a,b){this.a=a +this.b=b}, +b4L:function b4L(a,b){this.a=a +this.b=b}, +b4N:function b4N(a,b){this.a=a +this.b=b}, +b4K:function b4K(a,b,c){this.a=a +this.b=b +this.c=c}, +Aa:function Aa(a,b){this.c=a +this.a=b}, +PY:function PY(){var _=this +_.d=null +_.e=$ +_.f=!1 +_.c=_.a=null}, +aYP:function aYP(a){this.a=a}, +aYU:function aYU(a){this.a=a}, +aYT:function aYT(a,b,c){this.a=a +this.b=b +this.c=c}, +aYR:function aYR(a){this.a=a}, +aYS:function aYS(a){this.a=a}, +aYQ:function aYQ(){}, +BM:function BM(a){this.a=a}, +Ki:function Ki(a){var _=this +_.M$=0 +_.U$=a +_.aE$=_.ac$=0}, +pr:function pr(){}, +ahz:function ahz(a){this.a=a}, +bxS(a,b){a.bZ(new A.bfX(b)) +b.$1(a)}, +bsg(a,b){return new A.lI(b,a,null)}, +e1(a){var s=a.au(t.I) +return s==null?null:s.w}, +LP(a,b){return new A.a5b(b,a,null)}, +bFv(a,b){return new A.WN(b,a,null)}, +fB(a,b,c,d,e){return new A.Ia(d,b,e,a,c)}, +Xq(a,b,c){return new A.As(c,b,a,null)}, +pw(a,b,c){return new A.Xp(a,c,b,null)}, +asc(a,b,c){return new A.Ar(c,b,a,null)}, +bG6(a,b){return new A.fi(new A.asd(b,B.by,a),null)}, +buY(a,b,c,d,e,f,g){return new A.a60(g,c,a,e,d,f,b,null)}, +a9J(a,b,c,d,e){return new A.z0(d,a,e,c,b,null)}, +Eb(a,b){return new A.z0(A.bOJ(a),B.O,!0,null,b,null)}, +bOI(a,b){return new A.z0(A.u1(b.a,b.b,0),null,!0,null,a,null)}, +bo0(a,b){var s=b +return new A.z0(A.C7(s,b,1),B.O,!0,null,a,null)}, +bOJ(a){var s,r,q +if(a===0){s=new A.bW(new Float64Array(16)) +s.eo() +return s}r=Math.sin(a) +if(r===1)return A.aUU(1,0) +if(r===-1)return A.aUU(-1,0) +q=Math.cos(a) +if(q===-1)return A.aUU(0,-1) +return A.aUU(r,q)}, +aUU(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.bW(s)}, +bl5(a,b,c,d){return new A.Az(b,d,c,a,null)}, +bt2(a,b,c,d){return new A.a0c(d,a,c,b,null)}, +btc(a,b,c){return new A.a0r(c,b,a,null)}, +cL(a,b,c){return new A.ik(B.O,c,b,a,null)}, +aER(a,b){return new A.Kr(b,a,new A.eK(b,t.V1))}, +NX(a,b){return new A.aB(b.a,b.b,a,null)}, +bKp(a,b,c){return new A.a1K(c,b,a,null)}, +bmx(a){return new A.a1f(a,null)}, +bzU(a,b,c){var s,r +switch(b.a){case 0:s=a.au(t.I) +s.toString +r=A.bk5(s.w) +return r +case 1:return B.ah}}, +cq(a,b,c,d,e){return new A.m6(a,e,d,c,b,null)}, +btC(a,b,c){return new A.a19(a,c,b,null)}, +eH(a,b,c,d,e,f,g,h){return new A.up(e,g,f,a,h,c,b,d)}, +qD(a,b){return new A.up(0,0,0,a,null,null,b,null)}, +bMg(a,b,c,d,e,f,g,h){var s,r,q,p +switch(f.a){case 0:s=new A.b3(c,e) +break +case 1:s=new A.b3(e,c) +break +default:s=null}r=s.a +q=null +p=s.b +q=p +return A.eH(a,b,d,null,r,q,g,h)}, +bt(a,b,c,d){return new A.qO(B.aN,c,d,b,null,B.r,null,a,null)}, +b2(a,b,c,d,e){return new A.o6(B.aw,c,d,b,null,e,null,a,null)}, +cf(a,b){return new A.Bd(b,B.lv,a,null)}, +acd(a,b,c,d,e,f){return new A.Es(c,f,d,e,b,a,null)}, +bnz(a,b,c,d,e,f,g,h,i,j,k,l,m,n){return new A.a7n(i,j,k,g,d,A.bvw(m,1),c,b,h,n,l,f,e,A.bx5(i,A.bvw(m,1)),a)}, +bvw(a,b){var s,r,q,p +$label0$0:{s=null +r=!1 +r=1===b +s=b +q=a +if(r){r=q +break $label0$0}p=!0 +if(B.aB.l(0,a)){r=s +r=typeof r=="number"}else r=!1 +if(r){r=new A.mj(p?s:b) +break $label0$0}r=a +break $label0$0 +r=null}return r}, +brZ(a){var s +a.au(t.l4) +s=$.vX() +return s}, +BY(a,b,c,d,e,f,g,h,i){return new A.a1P(e,f,i,d,g,h,a,b,c)}, +ov(a,b,c,d,e,f){return new A.Lf(d,f,e,b,a,c)}, +ok(a,b,c){return new A.BB(b,a,c)}, +bFe(a,b){return new A.W2(a,b,null)}, +bFA(a){return new A.WX(a,null)}, +bJS(a,b){var s=a.a +if(s==null)s=b +return new A.lP(a,new A.eK(s,t.V1))}, +aDp(a){var s,r,q,p,o,n,m,l,k,j +if(a.length===0)return a +s=A.a([],t.p) +for(r=A.bJs(a,0,t.l7),q=J.ay(r.a),r=r.b,p=new A.K_(q,r),o=t.V1;p.u();){n=p.c +n=n>=0?new A.b3(r+n,q.gI(q)):A.V(A.cV()) +m=n.a +l=null +k=n.b +l=k +j=m +n=l.a +s.push(new A.lP(l,new A.eK(n==null?j:n,o)))}return s}, +am9:function am9(a,b,c){var _=this +_.a2=a +_.c=_.b=_.a=_.ay=null +_.d=$ +_.e=b +_.r=_.f=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +bfY:function bfY(a,b){this.a=a +this.b=b}, +bfX:function bfX(a){this.a=a}, +ama:function ama(){}, +lI:function lI(a,b,c){this.w=a +this.b=b +this.a=c}, +a5b:function a5b(a,b,c){this.e=a +this.c=b +this.a=c}, +WN:function WN(a,b,c){this.e=a +this.c=b +this.a=c}, +Ia:function Ia(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +As:function As(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +Xp:function Xp(a,b,c,d){var _=this +_.e=a +_.r=b +_.c=c +_.a=d}, +Ar:function Ar(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +asd:function asd(a,b,c){this.a=a +this.b=b +this.c=c}, +a60:function a60(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.y=f +_.c=g +_.a=h}, +a61:function a61(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.c=f +_.a=g}, +z0:function z0(a,b,c,d,e,f){var _=this +_.e=a +_.r=b +_.w=c +_.x=d +_.c=e +_.a=f}, +wl:function wl(a,b,c){this.e=a +this.c=b +this.a=c}, +Az:function Az(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.x=c +_.c=d +_.a=e}, +a0c:function a0c(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +a0r:function a0r(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +a7r:function a7r(a,b,c){this.e=a +this.c=b +this.a=c}, +be:function be(a,b,c){this.e=a +this.c=b +this.a=c}, +fh:function fh(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +ik:function ik(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +kz:function kz(a,b,c){this.e=a +this.c=b +this.a=c}, +Kr:function Kr(a,b,c){this.f=a +this.b=b +this.a=c}, +I9:function I9(a,b,c){this.e=a +this.c=b +this.a=c}, +aB:function aB(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +ep:function ep(a,b,c){this.e=a +this.c=b +this.a=c}, +a1K:function a1K(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +qp:function qp(a,b,c){this.e=a +this.c=b +this.a=c}, +ahG:function ahG(a,b){var _=this +_.c=_.b=_.a=_.CW=_.ay=_.p1=null +_.d=$ +_.e=a +_.r=_.f=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +a1f:function a1f(a,b){this.c=a +this.a=b}, +a8x:function a8x(a,b,c){this.e=a +this.c=b +this.a=c}, +m6:function m6(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +a19:function a19(a,b,c,d){var _=this +_.c=a +_.r=b +_.w=c +_.a=d}, +SB:function SB(a,b,c,d,e,f,g){var _=this +_.z=a +_.e=b +_.f=c +_.r=d +_.w=e +_.c=f +_.a=g}, +agl:function agl(a,b,c){var _=this +_.p1=$ +_.p2=a +_.c=_.b=_.a=_.CW=_.ay=null +_.d=$ +_.e=b +_.r=_.f=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +up:function up(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}, +a6b:function a6b(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.f=c +_.r=d +_.x=e +_.a=f}, +Jq:function Jq(){}, +qO:function qO(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}, +o6:function o6(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}, +of:function of(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +Bd:function Bd(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +Es:function Es(a,b,c,d,e,f,g){var _=this +_.e=a +_.r=b +_.w=c +_.x=d +_.y=e +_.c=f +_.a=g}, +a7n:function a7n(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}, +a6u:function a6u(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){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 +_.cx=p +_.a=q}, +a1P:function a1P(a,b,c,d,e,f,g,h,i){var _=this +_.e=a +_.f=b +_.r=c +_.x=d +_.y=e +_.as=f +_.at=g +_.c=h +_.a=i}, +Lf:function Lf(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +lY:function lY(a,b){this.c=a +this.a=b}, +BB:function BB(a,b,c){this.e=a +this.c=b +this.a=c}, +W2:function W2(a,b,c){this.e=a +this.c=b +this.a=c}, +ck:function ck(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.x=e +_.c=f +_.a=g}, +a4_:function a4_(a,b){this.c=a +this.a=b}, +WX:function WX(a,b){this.c=a +this.a=b}, +ts:function ts(a,b,c){this.e=a +this.c=b +this.a=c}, +K0:function K0(a,b,c){this.e=a +this.c=b +this.a=c}, +lP:function lP(a,b){this.c=a +this.a=b}, +fi:function fi(a,b){this.c=a +this.a=b}, +uP:function uP(a,b){this.c=a +this.a=b}, +akN:function akN(){this.c=this.a=null}, +wk:function wk(a,b,c){this.e=a +this.c=b +this.a=c}, +SL:function SL(a,b,c,d,e){var _=this +_.ej=a +_.E=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +boc(){var s=null,r=A.a([],t.GA),q=$.ab,p=$.aW(),o=A.a([],t.Jh),n=A.bO(7,s,!1,t.JI),m=t.S,l=t.j1 +m=new A.aau(s,s,$,r,s,!0,new A.aq(new A.a_(q,t.U),t.h),!1,s,!1,$,s,$,$,$,A.w(t.K,t.Ju),!1,0,!1,$,0,s,$,$,new A.al3(A.bn(t.M)),$,$,$,new A.cS(s,p),$,s,A.bn(t.Jx),o,s,A.bUU(),new A.a0L(A.bUT(),n,t.G7),!1,0,A.w(m,t.h1),A.dD(m),A.a([],l),A.a([],l),s,!1,B.fr,!0,!1,s,B.F,B.F,s,0,s,!1,s,s,0,A.ej(s,t.qL),new A.aMT(A.w(m,t.rr),A.w(t.Ld,t.iD)),new A.aAr(A.w(m,t.cK)),new A.aMW(),A.w(m,t.YX),$,!1,B.a_4) +m.ka() +m.apF() +return m}, +bgZ:function bgZ(a){this.a=a}, +bh_:function bh_(a){this.a=a}, +e0:function e0(){}, +aat:function aat(){}, +bgY:function bgY(a,b){this.a=a +this.b=b}, +aX3:function aX3(a,b){this.a=a +this.b=b}, +Nd:function Nd(a,b,c){this.b=a +this.c=b +this.a=c}, +aPp:function aPp(a,b,c){this.a=a +this.b=b +this.c=c}, +aPq:function aPq(a){this.a=a}, +Nb:function Nb(a,b){var _=this +_.c=_.b=_.a=_.ch=_.ay=null +_.d=$ +_.e=a +_.r=_.f=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +aau:function aau(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 +_.d3$=a +_.aR$=b +_.b_$=c +_.cU$=d +_.ed$=e +_.cY$=f +_.h7$=g +_.fU$=h +_.cG$=i +_.eN$=j +_.ch$=k +_.CW$=l +_.cx$=m +_.cy$=n +_.db$=o +_.dx$=p +_.dy$=q +_.fr$=r +_.fx$=s +_.ada$=a0 +_.W4$=a1 +_.L2$=a2 +_.L3$=a3 +_.py$=a4 +_.pz$=a5 +_.yw$=a6 +_.yx$=a7 +_.uV$=a8 +_.L4$=a9 +_.uW$=b0 +_.b1T$=b1 +_.aTi$=b2 +_.fy$=b3 +_.go$=b4 +_.id$=b5 +_.k1$=b6 +_.k2$=b7 +_.k3$=b8 +_.k4$=b9 +_.ok$=c0 +_.p1$=c1 +_.p2$=c2 +_.p3$=c3 +_.p4$=c4 +_.R8$=c5 +_.RG$=c6 +_.rx$=c7 +_.ry$=c8 +_.to$=c9 +_.x1$=d0 +_.x2$=d1 +_.xr$=d2 +_.y1$=d3 +_.y2$=d4 +_.bG$=d5 +_.bx$=d6 +_.a2$=d7 +_.by$=d8 +_.bI$=d9 +_.bR$=e0 +_.A$=e1 +_.X$=e2 +_.a9$=e3 +_.aC$=e4 +_.aQ$=e5 +_.c=0}, +T5:function T5(){}, +Us:function Us(){}, +Ut:function Ut(){}, +Uu:function Uu(){}, +Uv:function Uv(){}, +Uw:function Uw(){}, +Ux:function Ux(){}, +Uy:function Uy(){}, +Ih(a,b,c){return new A.ZT(b,c,a,null)}, +aa(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var s +if(n!=null||h!=null){s=e==null?null:e.NE(h,n) +if(s==null)s=A.o1(h,n)}else s=e +return new A.ky(b,a,k,d,f,g,s,j,l,m,c,i)}, +ZT:function ZT(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +ky:function ky(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}, +aeo:function aeo(a,b,c){this.b=a +this.c=b +this.a=c}, +lF:function lF(a,b){this.a=a +this.b=b}, +f5:function f5(a,b,c){this.a=a +this.b=b +this.c=c}, +brF(){var s=$.wo +if(s!=null)s.eT(0) +s=$.wo +if(s!=null)s.m() +$.wo=null +if($.pA!=null)$.pA=null}, +XE:function XE(){}, +asP:function asP(a,b){this.a=a +this.b=b}, +auh(a,b,c,d,e){return new A.tm(b,e,d,a,c)}, +bGZ(a,b){var s=null +return new A.fi(new A.aui(s,s,s,b,a),s)}, +tm:function tm(a,b,c,d,e){var _=this +_.w=a +_.x=b +_.y=c +_.b=d +_.a=e}, +aui:function aui(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +ahA:function ahA(a){this.a=a}, +bH1(){switch(A.bY().a){case 0:var s=$.bpT() +break +case 1:s=$.bB9() +break +case 2:s=$.bBa() +break +case 3:s=$.bBb() +break +case 4:s=$.bpV() +break +case 5:s=$.bBd() +break +default:s=null}return s}, +a_2:function a_2(a,b){this.c=a +this.a=b}, +a_6:function a_6(a){this.b=a}, +bsk(a,b,c,d,e,f,g){return new A.IC(b,c,f,d,g,a,e)}, +kF:function kF(a,b){this.a=a +this.b=b}, +IC:function IC(a,b,c,d,e,f,g){var _=this +_.c=a +_.f=b +_.w=c +_.x=d +_.y=e +_.ax=f +_.a=g}, +Rp:function Rp(a,b){this.a=a +this.b=b}, +QM:function QM(a,b,c,d){var _=this +_.e=_.d=$ +_.r=_.f=null +_.w=0 +_.y=_.x=!1 +_.z=null +_.Q=!1 +_.as=a +_.i6$=b +_.dI$=c +_.b8$=d +_.c=_.a=null}, +b1X:function b1X(a){this.a=a}, +b1Y:function b1Y(a){this.a=a}, +UR:function UR(){}, +US:function US(){}, +bHC(a){var s=a.au(t.I) +s.toString +switch(s.w.a){case 0:s=B.aj6 +break +case 1:s=B.j +break +default:s=null}return s}, +bHD(a){var s=a.cx,r=A.af(s) +return new A.hF(new A.bh(s,new A.aw3(),r.i("bh<1>")),new A.aw4(),r.i("hF<1,I>"))}, +bHB(a,b){var s,r,q,p,o=B.b.gW(a),n=A.bsl(b,o) +for(s=a.length,r=0;rr)return a.ai(0,new A.z(p,r)).ges() +else return p-q}}else{p=b.c +if(q>p){s=a.b +r=b.b +if(sr)return a.ai(0,new A.z(p,r)).ges() +else return q-p}}else{q=a.b +p=b.b +if(qp)return q-p +else return 0}}}}, +bHE(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=t.AO,f=A.a([a],g) +for(s=b.$ti,r=new A.bD(J.ay(b.a),b.b,s.i("bD<1,2>")),s=s.y[1];r.u();f=p){q=r.a +if(q==null)q=s.a(q) +p=A.a([],g) +for(o=f.length,n=q.a,m=q.b,l=q.d,q=q.c,k=0;k=m&&j.d<=l){h=j.a +if(hq)p.push(new A.I(q,i,q+(h-q),i+(j.d-i)))}else{h=j.a +if(h>=n&&j.c<=q){if(il)p.push(new A.I(h,l,h+(j.c-h),l+(i-l)))}else p.push(j)}}}return f}, +bHA(a,b){var s=a.a,r=!1 +if(s>=0)if(s<=b.a){r=a.b +r=r>=0&&r<=b.b}if(r)return a +else return new A.z(Math.min(Math.max(0,s),b.a),Math.min(Math.max(0,a.b),b.b))}, +ID:function ID(a,b,c){this.c=a +this.d=b +this.a=c}, +aw3:function aw3(){}, +aw4:function aw4(){}, +a_s:function a_s(a){this.a=a}, +B1:function B1(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +R2:function R2(a,b){var _=this +_.d=$ +_.e=a +_.f=b +_.c=_.a=null}, +bI5(){var s,r,q,p=null,o=$.aW(),n=t.A,m=new A.aug() +m.a=B.ajv +s=A.a([],t.RW) +r=A.bY() +$label0$0:{if(B.bg===r||B.aG===r){q=!0 +break $label0$0}if(B.du===r||B.dv===r||B.cr===r||B.dw===r){q=!1 +break $label0$0}q=p}return new A.tr(new A.cS(!0,o),new A.bG(p,n),new A.amt(B.oE,B.oF,o),new A.bG(p,n),new A.BS(),new A.BS(),new A.BS(),m,s,q,p,p,p)}, +bI6(a){var s=a.a,r=a.l(0,B.k4),q=s==null +if(q){$.aw.toString +$.bC()}if(r||q)return B.k4 +if(q){q=new A.auj() +q.b=B.ajy}else q=s +return a.aQo(q)}, +vK(a,b,c,d,e,f,g){return new A.Uj(a,e,f,d,b,c,new A.bV(A.a([],t.ot),t.wS),g.i("Uj<0>"))}, +ady:function ady(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aj5:function aj5(a,b,c,d,e){var _=this +_.E=a +_.af=null +_.aZ=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +r5:function r5(a,b){var _=this +_.a=a +_.M$=0 +_.U$=b +_.aE$=_.ac$=0}, +Pf:function Pf(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ko:function ko(a,b){this.a=a +this.b=b}, +b1W:function b1W(a,b,c){var _=this +_.b=a +_.c=b +_.d=0 +_.a=c}, +B2:function B2(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){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.x=e +_.z=f +_.Q=g +_.as=h +_.at=i +_.ax=j +_.ay=k +_.ch=l +_.CW=m +_.cx=n +_.cy=o +_.db=p +_.dx=q +_.dy=r +_.go=s +_.id=a0 +_.k1=a1 +_.k2=a2 +_.k3=a3 +_.k4=a4 +_.ok=a5 +_.p1=a6 +_.p2=a7 +_.p3=a8 +_.p4=a9 +_.R8=b0 +_.RG=b1 +_.rx=b2 +_.ry=b3 +_.to=b4 +_.x1=b5 +_.x2=b6 +_.xr=b7 +_.y1=b8 +_.y2=b9 +_.bG=c0 +_.bx=c1 +_.a2=c2 +_.by=c3 +_.bI=c4 +_.bR=c5 +_.A=c6 +_.X=c7 +_.a9=c8 +_.aC=c9 +_.aQ=d0 +_.M=d1 +_.U=d2 +_.ac=d3 +_.aE=d4 +_.cB=d5 +_.eM=d6 +_.fT=d7 +_.H=d8 +_.aR=d9 +_.b_=e0 +_.cU=e1 +_.ed=e2 +_.cY=e3 +_.a=e4}, +tr:function tr(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 +_.at=_.as=_.Q=_.z=null +_.ax=!1 +_.ay=d +_.ch=null +_.CW=e +_.cx=f +_.cy=g +_.db=!1 +_.dx=null +_.fr=_.dy=$ +_.fx=null +_.fy=h +_.go=i +_.k1=_.id=null +_.k2=!0 +_.p2=_.p1=_.ok=_.k4=_.k3=null +_.p3=0 +_.R8=_.p4=!1 +_.RG=j +_.ry=_.rx=!1 +_.to=$ +_.x1=0 +_.xr=_.x2=null +_.y1=$ +_.y2=-1 +_.bx=_.bG=null +_.A=_.bR=_.bI=_.by=_.a2=$ +_.dI$=k +_.b8$=l +_.i6$=m +_.c=_.a=null}, +awV:function awV(){}, +axn:function axn(a){this.a=a}, +awZ:function awZ(a){this.a=a}, +axb:function axb(a){this.a=a}, +axc:function axc(a){this.a=a}, +axd:function axd(a){this.a=a}, +axe:function axe(a){this.a=a}, +axf:function axf(a){this.a=a}, +axg:function axg(a){this.a=a}, +axh:function axh(a){this.a=a}, +axi:function axi(a){this.a=a}, +axj:function axj(a){this.a=a}, +axk:function axk(a){this.a=a}, +axl:function axl(a){this.a=a}, +axm:function axm(a){this.a=a}, +ax4:function ax4(a,b,c){this.a=a +this.b=b +this.c=c}, +axo:function axo(a){this.a=a}, +axq:function axq(a,b,c){this.a=a +this.b=b +this.c=c}, +axr:function axr(a){this.a=a}, +ax_:function ax_(a,b){this.a=a +this.b=b}, +axp:function axp(a){this.a=a}, +awT:function awT(a){this.a=a}, +ax3:function ax3(a){this.a=a}, +awW:function awW(){}, +awX:function awX(a){this.a=a}, +awY:function awY(a){this.a=a}, +awS:function awS(){}, +awU:function awU(a){this.a=a}, +axs:function axs(a){this.a=a}, +axt:function axt(a){this.a=a}, +axu:function axu(a,b,c){this.a=a +this.b=b +this.c=c}, +ax0:function ax0(a,b){this.a=a +this.b=b}, +ax1:function ax1(a,b){this.a=a +this.b=b}, +ax2:function ax2(a,b){this.a=a +this.b=b}, +awR:function awR(a){this.a=a}, +ax8:function ax8(a){this.a=a}, +ax6:function ax6(a){this.a=a}, +ax7:function ax7(){}, +ax9:function ax9(a){this.a=a}, +axa:function axa(a,b,c){this.a=a +this.b=b +this.c=c}, +ax5:function ax5(a){this.a=a}, +R5:function R5(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}, +bcX:function bcX(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}, +Tc:function Tc(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +ajX:function ajX(a){this.d=a +this.c=this.a=null}, +bcY:function bcY(a){this.a=a}, +rt:function rt(a,b,c,d,e){var _=this +_.x=a +_.e=b +_.b=c +_.c=d +_.a=e}, +rk:function rk(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.a=d +_.b=null +_.$ti=e}, +Uj:function Uj(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}, +Uk:function Uk(a,b,c){var _=this +_.e=a +_.r=_.f=null +_.a=b +_.b=null +_.$ti=c}, +ak4:function ak4(a,b){this.e=a +this.a=b +this.b=null}, +adU:function adU(a,b){this.e=a +this.a=b +this.b=null}, +amt:function amt(a,b,c){var _=this +_.ay=a +_.w=!1 +_.a=b +_.M$=0 +_.U$=c +_.aE$=_.ac$=0}, +R7:function R7(){}, +af6:function af6(){}, +R8:function R8(){}, +af7:function af7(){}, +af8:function af8(){}, +bpf(a){var s,r,q +for(s=a.length,r=!1,q=0;q>"),n=new A.ad(a,new A.bbz(),o) +for(s=new A.ci(n,n.gt(0),o.i("ci")),o=o.i("aN.E"),r=null;s.u();){q=s.d +p=q==null?o.a(q):q +r=(r==null?p:r).n7(0,p)}if(r.ga_(r))return B.b.gW(a).a +return B.b.pF(B.b.gW(a).gacB(),r.gps(r)).w}, +bxE(a,b){A.rS(a,new A.bbB(b),t.zP)}, +bQH(a,b){A.rS(a,new A.bby(b),t.h7)}, +aNF(){return new A.aNE(A.w(t.l5,t.UJ),A.bVQ())}, +bmc(a,b){return new A.JA(b==null?A.aNF():b,a,null)}, +azV(a){var s +for(;s=a.Q,s!=null;a=s){if(a.e==null)return null +if(a instanceof A.Ru)return a}return null}, +Bo(a){var s,r=A.bmf(a,!1,!0) +if(r==null)return null +s=A.azV(r) +return s==null?null:s.fr}, +bhM:function bhM(a){this.a=a}, +F3:function F3(a,b){this.b=a +this.c=b}, +v4:function v4(a,b){this.a=a +this.b=b}, +a9N:function a9N(a,b){this.a=a +this.b=b}, +a0k:function a0k(){}, +azW:function azW(){}, +azY:function azY(a,b){this.a=a +this.b=b}, +azX:function azX(a){this.a=a}, +EM:function EM(a,b){this.a=a +this.b=b}, +aeJ:function aeJ(a){this.a=a}, +avF:function avF(){}, +bbC:function bbC(a){this.a=a}, +avR:function avR(a){this.a=a}, +avO:function avO(a){this.a=a}, +avN:function avN(a){this.a=a}, +avP:function avP(a){this.a=a}, +avQ:function avQ(a){this.a=a}, +avH:function avH(a){this.a=a}, +avI:function avI(a){this.a=a}, +avJ:function avJ(){}, +avK:function avK(a){this.a=a}, +avL:function avL(a){this.a=a}, +avM:function avM(){}, +avG:function avG(a,b,c){this.a=a +this.b=b +this.c=c}, +avS:function avS(a){this.a=a}, +avT:function avT(a){this.a=a}, +avU:function avU(a){this.a=a}, +avV:function avV(a){this.a=a}, +h7:function h7(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +bbz:function bbz(){}, +bbB:function bbB(a){this.a=a}, +bbA:function bbA(){}, +p6:function p6(a){this.a=a +this.b=null}, +bbx:function bbx(){}, +bby:function bby(a){this.a=a}, +aNE:function aNE(a,b){this.uU$=a +this.a=b}, +aNG:function aNG(){}, +aNH:function aNH(){}, +aNI:function aNI(a){this.a=a}, +JA:function JA(a,b,c){this.c=a +this.f=b +this.a=c}, +Ru:function Ru(a,b,c,d,e,f,g,h,i){var _=this +_.fr=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 +_.ay=_.ax=null +_.ch=!1 +_.M$=0 +_.U$=i +_.aE$=_.ac$=0}, +afL:function afL(){this.d=$ +this.c=this.a=null}, +a4Y:function a4Y(){}, +a6g:function a6g(){}, +tq:function tq(a){this.a=a}, +a_n:function a_n(a,b){this.c=a +this.a=b +this.b=null}, +afM:function afM(){}, +aiM:function aiM(){}, +ann:function ann(){}, +ano:function ano(){}, +btj(a,b){return new A.bG(a,b.i("bG<0>"))}, +bQ8(a){a.fn() +a.bZ(A.biY())}, +bI8(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.as +if(a.as!==q)return q?-1:1 +return 0}, +bI9(a,b){var s=A.af(b).i("ad<1,fD>") +return A.bHk(!0,A.a8(new A.ad(b,new A.axz(),s),!0,s.i("aN.E")),a,B.aaa,!0,B.Zo,null)}, +bI7(a){a.c0() +a.bZ(A.bzT())}, +Jb(a){var s=a.a,r=s instanceof A.og?s:null +return new A.Ja("",r,new A.kl())}, +bIs(a){var s,a +try{s=a.j(0) +return s}catch(a){}return"Error"}, +bJt(a){return new A.jq(A.ir(null,null,null,t.R,t.X),a,B.aA)}, +bLm(a){return new A.kW(A.dD(t.R),a,B.aA)}, +bic(a,b,c,d){var s=new A.cM(b,c,"widgets library",a,d,!1) +A.e9(s) +return s}, +jp:function jp(){}, +bG:function bG(a,b){this.a=a +this.$ti=b}, +x2:function x2(a,b){this.a=a +this.$ti=b}, +o:function o(){}, +ax:function ax(){}, +a3:function a3(){}, +a9:function a9(){}, +bA:function bA(){}, +hl:function hl(){}, +bR:function bR(){}, +aV:function aV(){}, +a1G:function a1G(){}, +bE:function bE(){}, +hj:function hj(){}, +EY:function EY(a,b){this.a=a +this.b=b}, +agk:function agk(a){this.b=a}, +b88:function b88(a){this.a=a}, +X8:function X8(a,b){var _=this +_.b=_.a=!1 +_.c=a +_.d=null +_.e=b}, +ar7:function ar7(a){this.a=a}, +ar6:function ar6(a,b,c){var _=this +_.a=null +_.b=a +_.c=!1 +_.d=b +_.x=c}, +LK:function LK(){}, +bag:function bag(a,b){this.a=a +this.b=b}, +bc:function bc(){}, +axC:function axC(a){this.a=a}, +axA:function axA(a){this.a=a}, +axz:function axz(){}, +axD:function axD(a){this.a=a}, +axE:function axE(a){this.a=a}, +axF:function axF(a){this.a=a}, +axx:function axx(a){this.a=a}, +axw:function axw(){}, +axB:function axB(){}, +axy:function axy(a){this.a=a}, +Ja:function Ja(a,b,c){this.d=a +this.e=b +this.a=c}, +HH:function HH(){}, +asu:function asu(){}, +asv:function asv(){}, +DI:function DI(a,b){var _=this +_.c=_.b=_.a=_.ay=null +_.d=$ +_.e=a +_.r=_.f=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +jF:function jF(a,b,c){var _=this +_.ok=a +_.p1=!1 +_.c=_.b=_.a=_.ay=null +_.d=$ +_.e=b +_.r=_.f=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +Mp:function Mp(){}, +uh:function uh(a,b,c){var _=this +_.c=_.b=_.a=_.ay=null +_.d=$ +_.e=a +_.r=_.f=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1 +_.$ti=c}, +aMj:function aMj(a){this.a=a}, +jq:function jq(a,b,c){var _=this +_.a2=a +_.c=_.b=_.a=_.ay=null +_.d=$ +_.e=b +_.r=_.f=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +bP:function bP(){}, +aPo:function aPo(){}, +a1F:function a1F(a,b){var _=this +_.c=_.b=_.a=_.CW=_.ay=null +_.d=$ +_.e=a +_.r=_.f=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +NS:function NS(a,b){var _=this +_.c=_.b=_.a=_.CW=_.ay=_.p1=null +_.d=$ +_.e=a +_.r=_.f=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +kW:function kW(a,b,c){var _=this +_.p1=$ +_.p2=a +_.c=_.b=_.a=_.CW=_.ay=null +_.d=$ +_.e=b +_.r=_.f=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +aJS:function aJS(a){this.a=a}, +a77:function a77(){}, +tH:function tH(a,b,c){this.a=a +this.b=b +this.$ti=c}, +ahy:function ahy(a,b){var _=this +_.c=_.b=_.a=null +_.d=$ +_.e=a +_.r=_.f=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +ahB:function ahB(a){this.a=a}, +akM:function akM(){}, +fn(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){return new A.mS(b,a3,a4,a1,a2,q,s,a0,r,f,l,a6,a7,a5,h,j,k,i,g,m,o,p,n,a,d,c,!1,a9,e)}, +x0:function x0(){}, +dC:function dC(a,b,c){this.a=a +this.b=b +this.$ti=c}, +mS:function mS(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 +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.ay=j +_.cy=k +_.rx=l +_.ry=m +_.to=n +_.x2=o +_.xr=p +_.y1=q +_.y2=r +_.bG=s +_.bI=a0 +_.A=a1 +_.X=a2 +_.a9=a3 +_.ac=a4 +_.aE=a5 +_.cB=a6 +_.eM=a7 +_.fT=a8 +_.a=a9}, +aAy:function aAy(a){this.a=a}, +aAz:function aAz(a,b){this.a=a +this.b=b}, +aAA:function aAA(a){this.a=a}, +aAE:function aAE(a,b){this.a=a +this.b=b}, +aAF:function aAF(a){this.a=a}, +aAG:function aAG(a,b){this.a=a +this.b=b}, +aAH:function aAH(a){this.a=a}, +aAI:function aAI(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aAJ:function aAJ(a){this.a=a}, +aAK:function aAK(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aAL:function aAL(a){this.a=a}, +aAB:function aAB(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aAC:function aAC(a){this.a=a}, +aAD:function aAD(a,b){this.a=a +this.b=b}, +nb:function nb(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +D1:function D1(a){var _=this +_.d=a +_.c=_.a=_.e=null}, +afR:function afR(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +aR_:function aR_(){}, +b0C:function b0C(a){this.a=a}, +b0H:function b0H(a){this.a=a}, +b0G:function b0G(a){this.a=a}, +b0D:function b0D(a){this.a=a}, +b0E:function b0E(a){this.a=a}, +b0F:function b0F(a,b){this.a=a +this.b=b}, +b0I:function b0I(a){this.a=a}, +b0J:function b0J(a){this.a=a}, +b0K:function b0K(a,b){this.a=a +this.b=b}, +bJg(a,b,c){return new A.x4(b,a,c,null)}, +btp(a,b,c){var s=A.w(t.K,t.U3) +a.bZ(new A.aBe(c,new A.aBd(b,s))) +return s}, +bxn(a,b){var s,r=a.gag() +r.toString +t.x.a(r) +s=r.bB(0,b==null?null:b.gag()) +r=r.gv(0) +return A.f9(s,new A.I(0,0,0+r.a,0+r.b))}, +By:function By(a,b){this.a=a +this.b=b}, +x4:function x4(a,b,c,d){var _=this +_.c=a +_.e=b +_.w=c +_.a=d}, +aBd:function aBd(a,b){this.a=a +this.b=b}, +aBe:function aBe(a,b){this.a=a +this.b=b}, +F9:function F9(a){var _=this +_.d=a +_.e=null +_.f=!0 +_.c=_.a=null}, +b5q:function b5q(a,b){this.a=a +this.b=b}, +b5p:function b5p(){}, +b5m:function b5m(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 +_.Q=null +_.ax=_.at=_.as=$}, +rq:function rq(a,b){var _=this +_.a=a +_.b=$ +_.c=null +_.d=b +_.e=$ +_.r=_.f=null +_.x=_.w=!1}, +b5n:function b5n(a){this.a=a}, +b5o:function b5o(a,b){this.a=a +this.b=b}, +JM:function JM(a,b){this.a=a +this.b=b}, +aBc:function aBc(){}, +aBb:function aBb(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aBa:function aBa(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +hD(a,b,c,d){return new A.ei(a,d,b,c,null)}, +ei:function ei(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.x=c +_.z=d +_.a=e}, +db:function db(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +BA(a,b,c){return new A.x9(b,a,c)}, +a10(a,b){return new A.fi(new A.aC5(null,b,a),null)}, +aC6(a){var s,r,q,p,o,n,m=A.btw(a).Z(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.gfL(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.v +o=m.gfL(0) +if(o==null)o=B.xO.gfL(0) +n=m.w +if(n==null)n=null +l=m.CJ(m.x===!0,p,k,r,o,q,n,l,s)}return l}, +btw(a){var s=a.au(t.Oh),r=s==null?null:s.w +return r==null?B.xO:r}, +x9:function x9(a,b,c){this.w=a +this.b=b +this.a=c}, +aC5:function aC5(a,b,c){this.a=a +this.b=b +this.c=c}, +q6(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.ak(r,q?i:b.a,c) +p=s?i:a.b +p=A.ak(p,q?i:b.b,c) +o=s?i:a.c +o=A.ak(o,q?i:b.c,c) +n=s?i:a.d +n=A.ak(n,q?i:b.d,c) +m=s?i:a.e +m=A.ak(m,q?i:b.e,c) +l=s?i:a.f +l=A.U(l,q?i:b.f,c) +k=s?i:a.gfL(0) +k=A.ak(k,q?i:b.gfL(0),c) +j=s?i:a.w +j=A.bvK(j,q?i:b.w,c) +if(c<0.5)s=s?i:a.x +else s=q?i:b.x +return new A.eP(r,p,o,n,m,l,k,j,s)}, +eP:function eP(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}, +agd:function agd(){}, +Go(a,b){var s=A.brZ(a),r=A.de(a,B.e7) +r=r==null?null:r.b +if(r==null)r=1 +return new A.q7(s,r,A.C0(a),A.e1(a),b,A.bY())}, +bXk(a,b){var s,r={},q=A.Go(b,null),p=new A.a_($.ab,t.U),o=new A.aq(p,t.h),n=a.Z(q) +r.a=null +s=new A.iQ(new A.bjP(r,o,n),null,new A.bjQ(r,o,n,null)) +r.a=s +n.a4(0,s) +return p}, +aC7(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return new A.xa(j,g,l,d,o,i,b,null,e,c,f,a,n,!1,h,k)}, +JW(a,b,c,d,e,f,g){var s=null +return new A.xa(A.bny(s,s,new A.H3(a,s,s)),s,s,c,g,e,b,f,B.eU,s,d,B.O,B.dj,!1,!1,s)}, +aC8(a,b,c,d,e,f){var s=null +return new A.xa(A.bny(s,s,new A.u2(a,1)),s,s,b,f,d,s,e,B.eU,s,c,B.O,B.dj,!1,!1,s)}, +bjP:function bjP(a,b,c){this.a=a +this.b=b +this.c=c}, +bjO:function bjO(a,b,c){this.a=a +this.b=b +this.c=c}, +bjQ:function bjQ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +xa:function xa(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 +_.ch=n +_.CW=o +_.a=p}, +RI:function RI(){var _=this +_.f=_.e=_.d=null +_.r=!1 +_.w=$ +_.x=null +_.y=!1 +_.z=$ +_.c=_.a=_.ax=_.at=_.as=_.Q=null}, +b7y:function b7y(a){this.a=a}, +b7x:function b7x(a,b,c){this.a=a +this.b=b +this.c=c}, +b7A:function b7A(a,b,c){this.a=a +this.b=b +this.c=c}, +b7z:function b7z(a,b){this.a=a +this.b=b}, +b7B:function b7B(a){this.a=a}, +b7C:function b7C(a){this.a=a}, +b7D:function b7D(a){this.a=a}, +an7:function an7(){}, +bGX(a,b){return new A.pC(a,b)}, +bqZ(a,b,c,d,e){var s +if(e!=null||d!=null)s=A.o1(d,e) +else s=null +return new A.GJ(a,b,s,B.X,c,null,null)}, +bkO(a,b,c,d,e){return new A.GO(a,d,e,b,c,null,null)}, +br0(a,b,c,d){return new A.GL(a,d,b,c,null,null)}, +We(a,b,c,d){return new A.GK(a,d,b,c,null,null)}, +w5:function w5(a,b){this.a=a +this.b=b}, +pC:function pC(a,b){this.a=a +this.b=b}, +IY:function IY(a,b){this.a=a +this.b=b}, +pL:function pL(a,b){this.a=a +this.b=b}, +w4:function w4(a,b){this.a=a +this.b=b}, +xE:function xE(a,b){this.a=a +this.b=b}, +yR:function yR(a,b){this.a=a +this.b=b}, +a17:function a17(){}, +BE:function BE(){}, +aCD:function aCD(a){this.a=a}, +aCC:function aCC(a){this.a=a}, +aCB:function aCB(a,b){this.a=a +this.b=b}, +A4:function A4(){}, +apx:function apx(){}, +GJ:function GJ(a,b,c,d,e,f,g){var _=this +_.r=a +_.y=b +_.Q=c +_.c=d +_.d=e +_.e=f +_.a=g}, +acB:function acB(a,b){var _=this +_.fx=_.fr=_.dy=_.dx=_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +aY9:function aY9(){}, +aYa:function aYa(){}, +aYb:function aYb(){}, +aYc:function aYc(){}, +aYd:function aYd(){}, +aYe:function aYe(){}, +aYf:function aYf(){}, +aYg:function aYg(){}, +GM:function GM(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +acE:function acE(a,b){var _=this +_.CW=null +_.e=_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +aYj:function aYj(){}, +GO:function GO(a,b,c,d,e,f,g){var _=this +_.r=a +_.w=b +_.x=c +_.c=d +_.d=e +_.e=f +_.a=g}, +acG:function acG(a,b){var _=this +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +aYo:function aYo(){}, +aYp:function aYp(){}, +aYq:function aYq(){}, +aYr:function aYr(){}, +aYs:function aYs(){}, +aYt:function aYt(){}, +GL:function GL(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +acD:function acD(a,b){var _=this +_.z=null +_.e=_.d=_.Q=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +aYi:function aYi(){}, +GK:function GK(a,b,c,d,e,f){var _=this +_.r=a +_.w=b +_.c=c +_.d=d +_.e=e +_.a=f}, +acC:function acC(a,b){var _=this +_.CW=null +_.e=_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +aYh:function aYh(){}, +GN:function GN(a,b,c,d,e,f,g,h,i,j){var _=this +_.r=a +_.x=b +_.z=c +_.Q=d +_.as=e +_.at=f +_.c=g +_.d=h +_.e=i +_.a=j}, +acF:function acF(a,b){var _=this +_.db=_.cy=_.cx=_.CW=null +_.e=_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +aYk:function aYk(){}, +aYl:function aYl(){}, +aYm:function aYm(){}, +aYn:function aYn(){}, +Fb:function Fb(){}, +bJu(a,b,c,d){var s=a.jc(d) +if(s==null)return +c.push(s) +d.a(s.gaL()) +return}, +cr(a,b,c){var s,r,q,p,o,n +if(b==null)return a.au(c) +s=A.a([],t.Fa) +A.bJu(a,b,s,c) +if(s.length===0)return null +r=B.b.gY(s) +for(q=s.length,p=0;p>")),!1,i).ak(new A.bi5(k,h),t.e3)}, +C0(a){var s=a.au(t.Gk) +return s==null?null:s.r.f}, +hE(a,b,c){var s=a.au(t.Gk) +return s==null?null:c.i("0?").a(J.i(s.r.e,b))}, +Fx:function Fx(a,b){this.a=a +this.b=b}, +bi3:function bi3(a){this.a=a}, +bi4:function bi4(){}, +bi5:function bi5(a,b){this.a=a +this.b=b}, +fH:function fH(){}, +amy:function amy(){}, +a_4:function a_4(){}, +S1:function S1(a,b,c,d){var _=this +_.r=a +_.w=b +_.b=c +_.a=d}, +KD:function KD(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +agS:function agS(a,b){var _=this +_.d=a +_.e=b +_.c=_.a=_.f=null}, +b9m:function b9m(a){this.a=a}, +b9n:function b9n(a,b){this.a=a +this.b=b}, +b9l:function b9l(a,b,c){this.a=a +this.b=b +this.c=c}, +bKI(a,b){var s +a.au(t.bS) +s=A.bKJ(a,b) +if(s==null)return null +a.pv(s,null) +return b.a(s.gaL())}, +bKJ(a,b){var s,r,q,p=a.jc(b) +if(p==null)return null +s=a.jc(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}, +KG(a,b){var s={} +s.a=null +a.mw(new A.aFs(s,b)) +s=s.a +if(s==null)s=null +else{s=s.ok +s.toString}return b.i("0?").a(s)}, +a1Y(a,b){var s={} +s.a=null +a.mw(new A.aFt(s,b)) +s=s.a +if(s==null)s=null +else{s=s.ok +s.toString}return b.i("0?").a(s)}, +aFq(a,b){var s={} +s.a=null +a.mw(new A.aFr(s,b)) +s=s.a +s=s==null?null:s.gag() +return b.i("0?").a(s)}, +aFs:function aFs(a,b){this.a=a +this.b=b}, +aFt:function aFt(a,b){this.a=a +this.b=b}, +aFr:function aFr(a,b){this.a=a +this.b=b}, +bOj(a,b,c){return null}, +bu7(a,b){var s,r=b.a,q=a.a +if(rq?B.j.ab(0,new A.z(q-r,0)):B.j}r=b.b +q=a.b +if(rq)s=s.ab(0,new A.z(0,q-r))}return b.ep(s)}, +bve(a,b,c,d,e,f){return new A.a6x(a,c,b,d,e,f,null)}, +qi:function qi(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aUs:function aUs(a,b){this.a=a +this.b=b}, +xx:function xx(){this.b=this.a=null}, +aFy:function aFy(a,b){this.a=a +this.b=b}, +C4:function C4(a,b,c){this.a=a +this.b=b +this.c=c}, +a6x:function a6x(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aht:function aht(a,b){this.b=a +this.a=b}, +agV:function agV(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +ajd:function ajd(a,b,c,d,e){var _=this +_.E=a +_.af=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a3X(a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=null,c=a0.gmo(),b=$.dz(),a=b.d +if(a==null){a=self.window.devicePixelRatio +if(a===0)a=1}a=c.fO(0,a) +c=b.d +if(c==null){c=self.window.devicePixelRatio +if(c===0)c=1}s=a1==null +r=s?d:a1.gem().a +if(r==null)r=a0.b.c.e +q=r===1?B.aB:new A.mj(r) +p=s?d:a1.e +if(p==null)p=a0.b.c.d +o=b.d +if(o==null){o=self.window.devicePixelRatio +if(o===0)o=1}o=A.awO(B.ia,o) +n=b.d +if(n==null){n=self.window.devicePixelRatio +if(n===0)n=1}n=A.awO(B.ia,n) +m=a0.ay +l=b.d +if(l==null){l=self.window.devicePixelRatio +if(l===0)l=1}l=A.awO(m,l) +b=b.d +if(b==null){b=self.window.devicePixelRatio +if(b===0)b=1}b=A.awO(B.ia,b) +m=s?d:a1.z +if(m==null)m=(a0.b.c.a.a&1)!==0 +k=s?d:a1.Q +if(k==null)k=(a0.b.c.a.a&2)!==0 +j=s?d:a1.ax +if(j==null)j=(a0.b.c.a.a&4)!==0 +i=s?d:a1.ay +if(i==null)i=(a0.b.c.a.a&8)!==0 +h=s?d:a1.as +if(h==null)h=(a0.b.c.a.a&32)!==0 +g=s?d:a1.at +if(g==null)g=(a0.b.c.a.a&64)!==0 +f=s&&d +e=s?d:a1.ch +if(e==null)e=B.hR +s=s&&d +return new A.L1(a,c,q,p,l,o,n,b,f===!0,m,k,h,g,j,i,e,new A.AT(d),B.aa6,s===!0)}, +C9(a,b){return new A.n0(b,a,null)}, +aI8(a,b,c,d,e,f){return new A.n0(A.cr(b,null,t.l).w.ago(c,d,e,f),a,null)}, +bL2(a,b){return new A.fi(new A.aIb(0,b,a),null)}, +de(a,b){var s=A.cr(a,b,t.l) +return s==null?null:s.w}, +a5k:function a5k(a,b){this.a=a +this.b=b}, +hU:function hU(a,b){this.a=a +this.b=b}, +L1:function L1(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 +_.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}, +aI9:function aI9(a){this.a=a}, +n0:function n0(a,b,c){this.w=a +this.b=b +this.a=c}, +aIb:function aIb(a,b,c){this.a=a +this.b=b +this.c=c}, +aIa:function aIa(a,b){this.a=a +this.b=b}, +a4T:function a4T(a,b){this.a=a +this.b=b}, +Sa:function Sa(a,b,c){this.c=a +this.e=b +this.a=c}, +ah5:function ah5(){var _=this +_.c=_.a=_.e=_.d=null}, +b9Q:function b9Q(a,b){this.a=a +this.b=b}, +anc:function anc(){}, +aIN(a,b,c,d,e,f,g){return new A.a45(c,d,e,!0,f,b,g,null)}, +br_(a,b,c,d,e,f){return new A.Wf(d,e,!0,b,f,c,null)}, +ak9:function ak9(a,b,c){this.e=a +this.c=b +this.a=c}, +ajl:function ajl(a,b,c,d){var _=this +_.E=a +_.H$=b +_.fx=c +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=d +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +a45:function a45(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}, +aIO:function aIO(a,b){this.a=a +this.b=b}, +Wf:function Wf(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.x=d +_.y=e +_.c=f +_.a=g}, +Ex:function Ex(a,b,c,d,e,f,g,h,i){var _=this +_.a2=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}, +acO:function acO(a){this.a=a}, +ahe:function ahe(a,b,c){this.c=a +this.d=b +this.a=c}, +a4U:function a4U(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +U8:function U8(a,b){this.a=a +this.b=b}, +bfU:function bfU(a,b,c){var _=this +_.d=a +_.e=b +_.f=c +_.b=null}, +Cu(a,b,c){return A.bU(a,!1).ag_(b,null,c)}, +buD(a){return A.bU(a,!1).aXa(null)}, +bU(a,b){var s,r,q +if(a instanceof A.jF){s=a.ok +s.toString +s=s instanceof A.n3}else s=!1 +if(s){s=a.ok +s.toString +t.uK.a(s) +r=s}else r=null +if(b){q=a.aTq(t.uK) +r=q==null?r:q}else if(r==null)r=a.o_(t.uK) +r.toString +return r}, +oy(a){var s,r +if(a instanceof A.jF){s=a.ok +s.toString +s=s instanceof A.n3}else s=!1 +if(s){s=a.ok +s.toString +t.uK.a(s) +r=s}else r=null +if(r==null)r=a.o_(t.uK) +return r}, +bLz(a,b){var s,r,q,p,o,n,m=null,l=A.a([],t.ny) +if(B.c.ba(b,"/")&&b.length>1){b=B.c.bE(b,1) +s=t.z +l.push(a.IC("/",!0,m,s)) +r=b.split("/") +if(b.length!==0)for(q=r.length,p="",o=0;o=3}, +bQU(a){return a.gb1b()}, +boB(a){return new A.bcK(a)}, +buC(a,b){var s,r,q,p +for(s=a.a,r=s.f,q=r.length,p=0;p") +n.w!==$&&A.d1() +n.w=new A.bf(m,p,q) +n.y!==$&&A.d1() +n.y=new A.bf(m,o,q) +q=c.CQ(n.gaLQ()) +n.z!==$&&A.d1() +n.z=q +return n}, +JH:function JH(a,b,c,d){var _=this +_.e=a +_.f=b +_.w=c +_.a=d}, +RB:function RB(a,b,c){var _=this +_.r=_.f=_.e=_.d=null +_.w=a +_.dI$=b +_.b8$=c +_.c=_.a=null}, +F7:function F7(a,b){this.a=a +this.b=b}, +RA:function RA(a,b,c,d,e,f){var _=this +_.a=a +_.b=$ +_.c=null +_.e=_.d=0 +_.f=$ +_.r=b +_.w=$ +_.x=c +_.z=_.y=$ +_.Q=null +_.at=_.as=0.5 +_.ax=0 +_.ay=d +_.ch=e +_.M$=0 +_.U$=f +_.aE$=_.ac$=0}, +b58:function b58(a){this.a=a}, +afT:function afT(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +akQ:function akQ(a,b){this.a=a +this.b=b}, +Oq:function Oq(a,b,c,d){var _=this +_.c=a +_.e=b +_.f=c +_.a=d}, +TO:function TO(a,b){var _=this +_.d=$ +_.f=_.e=null +_.r=0 +_.w=!0 +_.dI$=a +_.b8$=b +_.c=_.a=null}, +be7:function be7(a,b,c){this.a=a +this.b=b +this.c=c}, +FZ:function FZ(a,b){this.a=a +this.b=b}, +TN:function TN(a,b,c,d){var _=this +_.c=_.b=_.a=$ +_.d=a +_.e=b +_.f=0 +_.r=c +_.M$=0 +_.U$=d +_.aE$=_.ac$=0}, +uc:function uc(a,b){this.a=a +this.c=!0 +this.j2$=b}, +Su:function Su(){}, +UX:function UX(){}, +Vh:function Vh(){}, +buP(a,b){var s=a.gaL() +return!(s instanceof A.CH)}, +aMc(a){var s=a.adk(t.Mf) +return s==null?null:s.d}, +TK:function TK(a){this.a=a}, +ud:function ud(){this.a=null}, +aMb:function aMb(a){this.a=a}, +CH:function CH(a,b,c){this.c=a +this.d=b +this.a=c}, +xU(a,b){return new A.a5q(a,b,0,null,null,A.a([],t.ZP),$.aW())}, +a5s(a,b,c,d,e,f,g){return new A.LV(g,c,f,e,A.bnI(a,!0,!0,!0),d,b,null)}, +a5q:function a5q(a,b,c,d,e,f,g){var _=this +_.as=a +_.ax=b +_.a=c +_.c=d +_.d=e +_.f=f +_.M$=0 +_.U$=g +_.aE$=_.ac$=0}, +xV:function xV(a,b,c,d,e,f,g){var _=this +_.r=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g}, +vz:function vz(a,b,c,d,e,f,g,h,i){var _=this +_.M=a +_.U=null +_.ac=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 +_.M$=0 +_.U$=i +_.aE$=_.ac$=0}, +Rw:function Rw(a,b){this.b=a +this.a=b}, +CG:function CG(a){this.a=a}, +LV:function LV(a,b,c,d,e,f,g,h){var _=this +_.e=a +_.r=b +_.w=c +_.y=d +_.z=e +_.Q=f +_.as=g +_.a=h}, +ahQ:function ahQ(){var _=this +_.d=0 +_.e=$ +_.c=_.a=null}, +bav:function bav(a){this.a=a}, +baw:function baw(a,b){this.a=a +this.b=b}, +oC:function oC(){}, +aIt:function aIt(){}, +aMI:function aMI(){}, +a_1:function a_1(a,b){this.a=a +this.d=b}, +bno(a,b){return new A.CS(b,B.aw,B.am4,a,null)}, +bv1(a){return new A.CS(null,null,B.am8,a,null)}, +bv2(a,b){var s,r=a.adk(t.bb) +if(r==null)return!1 +s=A.uD(a).mA(a) +if(r.w.p(0,s))return r.r===b +return!1}, +aN4(a){var s=a.au(t.bb) +return s==null?null:s.f}, +CS:function CS(a,b,c,d,e){var _=this +_.f=a +_.r=b +_.w=c +_.b=d +_.a=e}, +Mv:function Mv(a,b,c,d){var _=this +_.c=a +_.f=b +_.r=c +_.a=d}, +SC:function SC(){this.d=!1 +this.c=this.a=null}, +yi(a){var s=a.au(t.lQ) +return s==null?null:s.f}, +a9V(a,b){return new A.Pk(a,b,null)}, +uA:function uA(a,b,c){this.c=a +this.d=b +this.a=c}, +ajF:function ajF(a,b,c,d,e){var _=this +_.dd$=a +_.kL$=b +_.Dj$=c +_.iz$=d +_.kM$=e +_.c=_.a=null}, +Pk:function Pk(a,b,c){this.f=a +this.b=b +this.a=c}, +Nc:function Nc(a,b,c){this.c=a +this.d=b +this.a=c}, +T6:function T6(){var _=this +_.d=null +_.e=!1 +_.r=_.f=null +_.w=!1 +_.c=_.a=null}, +bcA:function bcA(a){this.a=a}, +bcz:function bcz(a,b){this.a=a +this.b=b}, +hm:function hm(){}, +ne:function ne(){}, +aPm:function aPm(a,b){this.a=a +this.b=b}, +bha:function bha(){}, +anB:function anB(){}, +dG:function dG(){}, +nJ:function nJ(){}, +T4:function T4(){}, +N8:function N8(a,b,c){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.M$=0 +_.U$=b +_.aE$=_.ac$=0 +_.$ti=c}, +N7:function N7(a,b){var _=this +_.cy=a +_.y=null +_.a=!1 +_.c=_.b=null +_.M$=0 +_.U$=b +_.aE$=_.ac$=0}, +bhb:function bhb(){}, +uC:function uC(a,b){this.b=a +this.c=b}, +a7u:function a7u(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f +_.$ti=g}, +aPt:function aPt(a,b){this.a=a +this.b=b}, +FJ:function FJ(a,b,c,d,e,f,g){var _=this +_.e=_.d=null +_.f=a +_.r=$ +_.w=!1 +_.dd$=b +_.kL$=c +_.Dj$=d +_.iz$=e +_.kM$=f +_.c=_.a=null +_.$ti=g}, +bcR:function bcR(a){this.a=a}, +bcS:function bcS(a){this.a=a}, +bcQ:function bcQ(a){this.a=a}, +bcO:function bcO(a,b,c){this.a=a +this.b=b +this.c=c}, +bcL:function bcL(a){this.a=a}, +bcM:function bcM(a,b){this.a=a +this.b=b}, +bcP:function bcP(){}, +bcN:function bcN(){}, +ajQ:function ajQ(a,b,c,d,e,f,g){var _=this +_.f=a +_.r=b +_.w=c +_.x=d +_.y=e +_.b=f +_.a=g}, +ajC:function ajC(a){var _=this +_.y=null +_.a=!1 +_.c=_.b=null +_.M$=0 +_.U$=a +_.aE$=_.ac$=0}, +Gf:function Gf(){}, +La(a,b){var s=A.cr(a,null,t.Fe) +s=s==null?null:s.z +return b.i("eR<0>?").a(s)}, +CE:function CE(){}, +h5:function h5(){}, +aV0:function aV0(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}, +aV_:function aV_(a,b,c){this.a=a +this.b=b +this.c=c}, +aUY:function aUY(a,b){this.a=a +this.b=b}, +a1Q:function a1Q(){}, +aeL:function aeL(a,b){this.e=a +this.a=b +this.b=null}, +Sc:function Sc(a,b,c,d,e,f){var _=this +_.w=a +_.x=b +_.y=c +_.z=d +_.b=e +_.a=f}, +ba5:function ba5(a,b){this.a=a +this.b=b}, +Fq:function Fq(a,b,c){this.c=a +this.a=b +this.$ti=c}, +mk:function mk(a,b,c){var _=this +_.d=null +_.e=$ +_.f=a +_.r=b +_.c=_.a=null +_.$ti=c}, +ba_:function ba_(a){this.a=a}, +ba3:function ba3(a){this.a=a}, +ba4:function ba4(a){this.a=a}, +ba2:function ba2(a){this.a=a}, +ba0:function ba0(a){this.a=a}, +ba1:function ba1(a){this.a=a}, +eR:function eR(){}, +aIS:function aIS(a,b){this.a=a +this.b=b}, +aIQ:function aIQ(a,b){this.a=a +this.b=b}, +aIR:function aIR(){}, +Mh:function Mh(){}, +D_:function D_(){}, +zr:function zr(){}, +Dj(a,b,c,d){return new A.a7z(d,a,c,b,null)}, +a7z:function a7z(a,b,c,d,e){var _=this +_.d=a +_.f=b +_.r=c +_.x=d +_.a=e}, +a7O:function a7O(){}, +tE:function tE(a){this.a=a +this.b=!1}, +aBD:function aBD(a,b){this.c=a +this.a=b +this.b=!1}, +aQg:function aQg(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}, +awq:function awq(a,b){this.c=a +this.a=b +this.b=!1}, +WO:function WO(a,b){var _=this +_.c=$ +_.d=a +_.a=b +_.b=!1}, +a_E:function a_E(a){var _=this +_.d=_.c=$ +_.a=a +_.b=!1}, +Np:function Np(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aQc:function aQc(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aQb:function aQb(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bnD(a,b){return new A.Nq(a,b,null)}, +uD(a){var s=a.au(t.Cy),r=s==null?null:s.f +return r==null?B.Tq:r}, +a7P:function a7P(){}, +aQd:function aQd(){}, +aQe:function aQe(){}, +aQf:function aQf(){}, +bh1:function bh1(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}, +Nq:function Nq(a,b,c){this.f=a +this.b=b +this.a=c}, +uE(a,b,c){return new A.qP(a,b,c,A.a([],t.ZP),$.aW())}, +qP:function qP(a,b,c,d,e){var _=this +_.a=a +_.c=b +_.d=c +_.f=d +_.M$=0 +_.U$=e +_.aE$=_.ac$=0}, +byM(a,b){return b}, +bnI(a,b,c,d){return new A.aRT(!0,!0,!0,a,A.C([null,0],t.LO,t.S))}, +aRS:function aRS(){}, +FL:function FL(a){this.a=a}, +O3:function O3(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.r=f +_.w=g}, +aRT:function aRT(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.f=d +_.r=e}, +FN:function FN(a,b){this.c=a +this.a=b}, +Tq:function Tq(a){var _=this +_.f=_.e=_.d=null +_.r=!1 +_.i6$=a +_.c=_.a=null}, +bd8:function bd8(a,b){this.a=a +this.b=b}, +anG:function anG(){}, +ni:function ni(){}, +Jp:function Jp(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +afz:function afz(){}, +bnE(a,b,c,d,e){var s=new A.jA(c,e,d,a,0) +if(b!=null)s.j2$=b +return s}, +bVy(a){return a.j2$===0}, +jM:function jM(){}, +aac:function aac(){}, +jz:function jz(){}, +yu:function yu(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.j2$=d}, +jA:function jA(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.a=c +_.b=d +_.j2$=e}, +n7:function n7(a,b,c,d,e,f){var _=this +_.d=a +_.e=b +_.f=c +_.a=d +_.b=e +_.j2$=f}, +lc:function lc(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.j2$=d}, +a9Y:function a9Y(a,b,c,d){var _=this +_.d=a +_.a=b +_.b=c +_.j2$=d}, +Tf:function Tf(){}, +bvG(a){var s=a.au(t.yd) +return s==null?null:s.f}, +Te:function Te(a,b,c){this.f=a +this.b=b +this.a=c}, +rr:function rr(a){var _=this +_.a=a +_.mc$=_.lA$=_.lz$=null}, +Ns:function Ns(a,b){this.c=a +this.a=b}, +a7S:function a7S(a){this.d=a +this.c=this.a=null}, +aQh:function aQh(a){this.a=a}, +aQi:function aQi(a){this.a=a}, +aQj:function aQj(a){this.a=a}, +bFG(a,b,c){var s,r +if(a>0){s=a/c +if(b"))}, +boZ(a,b){var s=$.aw.aR$.x.h(0,a).gag() +s.toString +return t.x.a(s).he(b)}, +byL(a,b){var s +if($.aw.aR$.x.h(0,a)==null)return!1 +s=t.ip.a($.aw.aR$.x.h(0,a).gaL()).f +s.toString +return t.sm.a(s).ae7(A.boZ(a,b.gcl(b)),b.ge1(b))}, +bTu(a,b){var s,r,q +if($.aw.aR$.x.h(0,a)==null)return!1 +s=t.ip.a($.aw.aR$.x.h(0,a).gaL()).f +s.toString +t.sm.a(s) +r=A.boZ(a,b.gcl(b)) +q=b.ge1(b) +return s.aVa(r,q)&&!s.ae7(r,q)}, +Dl:function Dl(a,b){this.a=a +this.b=b}, +Dm:function Dm(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 +_.M$=0 +_.U$=o +_.aE$=_.ac$=0}, +aQz:function aQz(){}, +D2:function D2(a,b,c,d,e,f,g,h,i,j,k,l){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.Q=f +_.ay=g +_.ch=h +_.cx=i +_.cy=j +_.db=k +_.a=l}, +oJ:function oJ(a,b,c,d,e){var _=this +_.w=_.r=_.f=_.e=_.d=null +_.y=_.x=$ +_.z=a +_.Q=!1 +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=b +_.CW=$ +_.dI$=c +_.b8$=d +_.c=_.a=null +_.$ti=e}, +aNx:function aNx(a){this.a=a}, +aNv:function aNv(a,b){this.a=a +this.b=b}, +aNw:function aNw(a){this.a=a}, +aNr:function aNr(a){this.a=a}, +aNs:function aNs(a){this.a=a}, +aNt:function aNt(a){this.a=a}, +aNu:function aNu(a){this.a=a}, +aNy:function aNy(a){this.a=a}, +aNz:function aNz(a){this.a=a}, +pc:function pc(a,b,c,d,e,f,g,h,i,j){var _=this +_.nY=a +_.U=_.M=_.aQ=_.aC=_.a9=_.X=_.A=_.bR=_.bI=_.by=_.a2=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}, +vM:function vM(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.E=a +_.at=b +_.ax=c +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=d +_.fy=e +_.k1=_.id=_.go=$ +_.k4=_.k3=_.k2=null +_.ok=$ +_.p1=!1 +_.p2=f +_.p3=g +_.p4=null +_.R8=h +_.RG=i +_.rx=null +_.f=j +_.r=k +_.w=null +_.a=l +_.b=null +_.c=m +_.d=n +_.e=o}, +vp:function vp(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var _=this +_.E=a +_.at=b +_.ax=c +_.dy=_.dx=_.db=_.cy=_.cx=_.CW=_.ch=_.ay=null +_.fr=!1 +_.fx=d +_.fy=e +_.k1=_.id=_.go=$ +_.k4=_.k3=_.k2=null +_.ok=$ +_.p1=!1 +_.p2=f +_.p3=g +_.p4=null +_.R8=h +_.RG=i +_.rx=null +_.f=j +_.r=k +_.w=null +_.a=l +_.b=null +_.c=m +_.d=n +_.e=o}, +FC:function FC(){}, +buw(a){var s,r=B.b.gW(a.gpk()) +for(s=1;s-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}, +bLp(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}, +Cr:function Cr(){}, +aK6:function aK6(a){this.a=a}, +aK7:function aK7(a,b,c){this.a=a +this.b=b +this.c=c}, +aK8:function aK8(){}, +aK2:function aK2(a,b){this.a=a +this.b=b}, +aK3:function aK3(a){this.a=a}, +aK4:function aK4(a,b){this.a=a +this.b=b}, +aK5:function aK5(a){this.a=a}, +ahl:function ahl(){}, +Nx(a){var s=a.au(t.Wu) +return s==null?null:s.f}, +bvI(a,b){return new A.Dp(b,a,null)}, +yw:function yw(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +ak7:function ak7(a,b,c){var _=this +_.d=a +_.yB$=b +_.v0$=c +_.c=_.a=null}, +Dp:function Dp(a,b,c){this.f=a +this.b=b +this.a=c}, +a7Y:function a7Y(){}, +anF:function anF(){}, +Vc:function Vc(){}, +NK:function NK(a,b){this.c=a +this.a=b}, +akj:function akj(){this.d=$ +this.c=this.a=null}, +akk:function akk(a,b,c){this.x=a +this.b=b +this.a=c}, +bJM(a){var s,r,q,p,o=a.a,n=A.y(a),m=new A.j2(a,a.tJ(),n.i("j2<1>")) +m.u() +s=m.d +r=J.W(s==null?n.c.a(s):s) +if(o===1)return r +m.u() +s=m.d +q=J.W(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.uS(new A.cW(g,f),o.b))}++r}return e}, +bUW(a,b,c,d,e){var s=e.b,r=e.a,q=a.a +if(r!==q)s=A.bSh(q,r,s) +if(A.bY()===B.bg)return A.ew(A.bRS(s,a,c,d,b),c,null) +return A.ew(A.bRT(s,a,c,d,a.b.c),c,null)}, +bRT(a,b,c,d,e){var s,r,q,p,o=A.a([],t.Ne),n=b.a,m=c.cO(d),l=0,k=n.length,j=J.a0(a),i=0 +while(!0){if(!(ll){r=r=e?c:m +o.push(A.ew(null,s,B.c.R(n,r,p)));++i +l=p}}j=n.length +if(lj){r=r=j&&f<=r&&e){o.push(A.ew(p,c,B.c.R(n,j,i))) +o.push(A.ew(p,l,B.c.R(n,i,f))) +o.push(A.ew(p,c,B.c.R(n,f,r)))}else o.push(A.ew(p,c,B.c.R(n,j,r))) +j=r}else{q=s.b +q=q=i&&q<=f&&e?l:k +o.push(A.ew(p,s,B.c.R(n,r,q)));++d +j=q}}i=n.length +if(j-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}, +bQW(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}, +AN:function AN(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}, +ahC:function ahC(a){this.a=a}, +fs:function fs(a,b,c,d,e,f,g,h,i,j){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.y=f +_.z=g +_.at=h +_.ax=i +_.a=j}, +Tm:function Tm(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}, +ak6:function ak6(a){var _=this +_.d=$ +_.e=a +_.c=_.a=null}, +ajJ:function ajJ(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}, +Tn:function Tn(a,b,c,d,e,f,g){var _=this +_.dx=a +_.dy=b +_.fr=c +_.fy=_.fx=null +_.b=d +_.d=_.c=-1 +_.w=_.r=_.f=_.e=null +_.z=_.y=_.x=!1 +_.Q=e +_.as=!1 +_.at=f +_.M$=0 +_.U$=g +_.aE$=_.ac$=0 +_.a=null}, +bd2:function bd2(a,b){this.a=a +this.b=b}, +bd3:function bd3(a){this.a=a}, +bd4:function bd4(a){this.a=a}, +bd5:function bd5(a){this.a=a}, +IF:function IF(){}, +a_o:function a_o(){}, +wu:function wu(a){this.a=a}, +ww:function ww(a){this.a=a}, +wv:function wv(a){this.a=a}, +iL:function iL(){}, +pT:function pT(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +pW:function pW(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +wN:function wN(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +wI:function wI(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +wJ:function wJ(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +kI:function kI(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +tu:function tu(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +pX:function pX(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +pV:function pV(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +wM:function wM(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +pU:function pU(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +qQ:function qQ(a){this.a=a}, +qS:function qS(){}, +o7:function o7(a){this.b=a}, +ui:function ui(){}, +uw:function uw(){}, +nd:function nd(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +v6:function v6(){}, +mb:function mb(a,b,c){this.a=a +this.b=b +this.c=c}, +v3:function v3(){}, +bxJ(a,b,c,d,e,f,g,h,i,j){return new A.To(b,f,d,e,c,h,j,g,i,a,null)}, +G2(a){var s +switch(A.bY().a){case 0:case 1:case 3:if(a<=3)s=a +else{s=B.e.an(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.e.an(a,2)}}, +iX:function iX(a,b,c){var _=this +_.e=!1 +_.du$=a +_.aO$=b +_.a=c}, +aUy:function aUy(){}, +a9x:function a9x(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=$}, +a7Z:function a7Z(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}, +aQO:function aQO(a){this.a=a}, +aQM:function aQM(a,b){this.a=a +this.b=b}, +aQN:function aQN(a,b){this.a=a +this.b=b}, +aQP:function aQP(a,b,c){this.a=a +this.b=b +this.c=c}, +aQL:function aQL(a){this.a=a}, +aQK:function aQK(a,b,c){this.a=a +this.b=b +this.c=c}, +vF:function vF(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +Tr:function Tr(a,b){var _=this +_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +To:function To(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}, +Tp:function Tp(a,b){var _=this +_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +bd6:function bd6(a){this.a=a}, +bd7:function bd7(a,b){this.a=a +this.b=b}, +OW:function OW(){}, +OV:function OV(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}, +U0:function U0(){this.c=this.a=null}, +bfs:function bfs(a){this.a=a}, +bft:function bft(a){this.a=a}, +bfu:function bfu(a){this.a=a}, +bfv:function bfv(a){this.a=a}, +bfw:function bfw(a){this.a=a}, +bfx:function bfx(a){this.a=a}, +bfy:function bfy(a){this.a=a}, +bfz:function bfz(a){this.a=a}, +bfA:function bfA(a){this.a=a}, +bfB:function bfB(a){this.a=a}, +HE:function HE(){}, +Av:function Av(a,b){this.a=a +this.b=b}, +nu:function nu(){}, +adu:function adu(){}, +Vd:function Vd(){}, +Ve:function Ve(){}, +bOn(a,b,c,d){var s,r,q,p,o=A.bOo(b,d,a,c) +if(o.l(0,B.ar))return B.apN +s=A.bwu(b) +r=o.a +r+=(o.c-r)/2 +q=s.b +p=s.d +return new A.OZ(new A.z(r,A.M(o.b,q,p)),new A.z(r,A.M(o.d,q,p)))}, +bwu(a){var s=A.ct(a.bB(0,null),B.j),r=a.gv(0).JK(0,B.j) +return A.uv(s,A.ct(a.bB(0,null),r))}, +bOo(a,b,c,d){var s,r,q,p,o=A.bwu(a),n=o.a +if(isNaN(n)||isNaN(o.b)||isNaN(o.c)||isNaN(o.d))return B.ar +s=B.b.gY(d).a.b-B.b.gW(d).a.b>c/2 +r=s?n:n+B.b.gW(d).a.a +q=o.b +p=B.b.gW(d) +n=s?o.c:n+B.b.gY(d).a.a +return new A.I(r,q+p.a.b-b,n,q+B.b.gY(d).a.b)}, +OZ:function OZ(a,b){this.a=a +this.b=b}, +bOp(a,b,c){var s=b/2,r=a-s +if(r<0)return 0 +if(a+s>c)return c-b +return r}, +a9z:function a9z(a,b,c){this.b=a +this.c=b +this.d=c}, +bnY(a){var s=a.au(t.l3),r=s==null?null:s.f +return r!==!1}, +bwv(a){var s=a.Og(t.l3),r=s==null?null:s.r +return r==null?B.TG:r}, +yU:function yU(a,b,c){this.c=a +this.d=b +this.a=c}, +alD:function alD(a){var _=this +_.d=!0 +_.e=a +_.c=_.a=null}, +R9:function R9(a,b,c,d){var _=this +_.f=a +_.r=b +_.b=c +_.a=d}, +ho:function ho(){}, +e6:function e6(){}, +amx:function amx(a,b){var _=this +_.w=a +_.a=null +_.b=!1 +_.c=null +_.d=b +_.e=null}, +Qq:function Qq(){}, +a9E:function a9E(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +E9:function E9(){}, +aUM:function aUM(a,b){this.a=a +this.b=b}, +aUN:function aUN(a){this.a=a}, +aUK:function aUK(a,b){this.a=a +this.b=b}, +aUL:function aUL(a,b){this.a=a +this.b=b}, +E8:function E8(){}, +aRO(a,b,c,d){return new A.a8p(c,d,a,b,null)}, +a7E(a,b,c){return new A.a7D(A.bXZ(),a,null,b,c,null)}, +bN1(a){return A.C7(a,a,1)}, +bnA(a,b){return new A.Dc(A.bXY(),B.O,null,a,b,null)}, +bMX(a){var s,r,q=a*3.141592653589793*2,p=new Float64Array(16) +p[15]=1 +s=Math.cos(q) +r=Math.sin(q) +p[0]=s +p[1]=r +p[2]=0 +p[4]=-r +p[5]=s +p[6]=0 +p[8]=0 +p[9]=0 +p[10]=1 +p[3]=0 +p[7]=0 +p[11]=0 +return new A.bW(p)}, +bvR(a,b,c,d){return new A.a8j(a,b,c,d,null)}, +lw(a,b,c){return new A.Wd(b,c,a,null)}, +GS:function GS(){}, +PT:function PT(){this.c=this.a=null}, +aYu:function aYu(){}, +a8p:function a8p(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e}, +a3S:function a3S(){}, +a7D:function a7D(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +Dc:function Dc(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.w=d +_.c=e +_.a=f}, +a8j:function a8j(a,b,c,d,e){var _=this +_.e=a +_.f=b +_.w=c +_.c=d +_.a=e}, +eB:function eB(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +ZU:function ZU(a,b,c,d){var _=this +_.e=a +_.r=b +_.c=c +_.a=d}, +W9:function W9(a,b,c){this.r=a +this.c=b +this.a=c}, +tX:function tX(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +Wd:function Wd(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +bUk(a,b,c){var s={} +s.a=null +return new A.bil(s,A.bu("arg"),a,b,c)}, +Ed:function Ed(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}, +Ee:function Ee(a,b){var _=this +_.d=a +_.e=$ +_.f=null +_.r=!1 +_.c=_.a=_.x=_.w=null +_.$ti=b}, +aV9:function aV9(a){this.a=a}, +Ef:function Ef(a,b){this.a=a +this.b=b}, +Pj:function Pj(a,b,c,d){var _=this +_.w=a +_.x=b +_.a=c +_.M$=0 +_.U$=d +_.aE$=_.ac$=0}, +amb:function amb(a,b){this.a=a +this.b=-1 +this.$ti=b}, +bil:function bil(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bik:function bik(a,b,c){this.a=a +this.b=b +this.c=c}, +Uc:function Uc(){}, +fu:function fu(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.$ti=e}, +G9:function G9(a){var _=this +_.d=$ +_.c=_.a=null +_.$ti=a}, +bgd:function bgd(a){this.a=a}, +z6(a){var s=A.bKI(a,t._l) +return s==null?null:s.f}, +bx_(a){var s=a.au(t.Li) +s=s==null?null:s.f +if(s==null){s=$.oK.db$ +s===$&&A.b()}return s}, +Pt:function Pt(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +amo:function amo(a,b){var _=this +_.d=a +_.e=b +_.c=_.a=null}, +a6y:function a6y(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aND:function aND(a){this.a=a}, +SD:function SD(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +aiK:function aiK(a,b){var _=this +_.bI=$ +_.c=_.b=_.a=_.CW=_.ay=_.A=_.bR=null +_.d=$ +_.e=a +_.r=_.f=null +_.w=b +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +zF:function zF(a,b,c){this.f=a +this.b=b +this.a=c}, +Sx:function Sx(a,b,c){this.f=a +this.b=b +this.a=c}, +QF:function QF(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +aoc:function aoc(){}, +bx0(a,b,c,d,e,f,g,h){return new A.z7(b,a,g,e,c,d,f,h,null)}, +aVM(a,b){var s +switch(b.a){case 0:s=a.au(t.I) +s.toString +return A.bk5(s.w) +case 1:return B.ah +case 2:s=a.au(t.I) +s.toString +return A.bk5(s.w) +case 3:return B.ah}}, +z7:function z7(a,b,c,d,e,f,g,h,i){var _=this +_.e=a +_.r=b +_.w=c +_.x=d +_.y=e +_.z=f +_.Q=g +_.c=h +_.a=i}, +amq:function amq(a,b,c){var _=this +_.A=!1 +_.X=null +_.p1=$ +_.p2=a +_.c=_.b=_.a=_.CW=_.ay=null +_.d=$ +_.e=b +_.r=_.f=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +a8b:function a8b(a,b,c,d,e){var _=this +_.e=a +_.r=b +_.w=c +_.c=d +_.a=e}, +aod:function aod(){}, +aoe:function aoe(){}, +aVO(a,b){return new A.Pv(a,b,!1,!1,!1,!1,!1,null)}, +bx1(a){var s,r,q,p={} +p.a=a +s=t.ps +r=a.jc(s) +q=!0 +while(!0){if(!(q&&r!=null))break +q=s.a(a.Kx(r)).f +r.mw(new A.aVQ(p)) +r=p.a.jc(s)}return q}, +Pv:function Pv(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}, +aVQ:function aVQ(a){this.a=a}, +Up:function Up(a,b,c){this.f=a +this.b=b +this.a=c}, +amr:function amr(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +ajw:function ajw(a,b,c,d,e){var _=this +_.E=a +_.af=b +_.H$=c +_.fx=d +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=e +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bx5(a,b){var s={},r=A.a([],t.p),q=A.a([14],t.n) +s.a=0 +new A.aX1(s,q,b,r).$1(a) +return r}, +Eq:function Eq(){}, +aX1:function aX1(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +amv:function amv(a,b,c){this.f=a +this.b=b +this.a=c}, +ad_:function ad_(a,b,c,d){var _=this +_.e=a +_.f=b +_.c=c +_.a=d}, +T_:function T_(a,b,c,d,e,f){var _=this +_.A=a +_.X=b +_.a9=c +_.H$=d +_.fx=e +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=f +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +bbZ:function bbZ(a){this.a=a}, +bbY:function bbY(a){this.a=a}, +any:function any(){}, +vO(a){return new A.zJ(a,J.je(a.$1(B.jY)))}, +bob(a,b,c){if(a==null&&b==null)return null +return new A.agI(a,b,c)}, +boM(a){return new A.rE(a,B.v,1,B.I,-1)}, +Uq(a){var s=null +return new A.amw(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)}, +dH(a,b,c){if(c.i("cg<0>").b(a))return a.Z(b) +return a}, +bJ(a,b,c,d,e){if(a==null&&b==null)return null +return new A.RY(a,b,c,d,e.i("RY<0>"))}, +aX2(a){var s=A.bn(t.g) +if(a!=null)s.G(0,a) +return new A.aas(s,$.aW())}, +dq:function dq(a,b){this.a=a +this.b=b}, +p0:function p0(){}, +zJ:function zJ(a,b){this.c=a +this.a=b}, +aaq:function aaq(){}, +Rd:function Rd(a,b){this.a=a +this.c=b}, +aap:function aap(){}, +agI:function agI(a,b,c){this.a=a +this.b=b +this.c=c}, +rE:function rE(a,b,c,d,e){var _=this +_.x=a +_.a=b +_.b=c +_.c=d +_.d=e}, +aar:function aar(){}, +amw:function amw(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 +_.bR=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}, +cg:function cg(){}, +RY:function RY(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +bQ:function bQ(a,b){this.a=a +this.$ti=b}, +bK:function bK(a,b){this.a=a +this.$ti=b}, +aas:function aas(a,b){var _=this +_.a=a +_.M$=0 +_.U$=b +_.aE$=_.ac$=0}, +arm:function arm(){}, +aud:function aud(a,b,c){var _=this +_.b1V$=a +_.a=b +_.b=c +_.c=$}, +aer:function aer(){}, +aCa:function aCa(){}, +bFP(a){var s=t.N,r=Date.now() +return new A.arn(A.w(s,t.lC),A.w(s,t.LE),a.b,a,a.a.vs(0).ak(new A.arp(a),t.Pt),new A.aS(r,0,!1))}, +arn:function arn(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.w=null}, +arp:function arp(a){this.a=a}, +arq:function arq(a,b,c){this.a=a +this.b=b +this.c=c}, +aro:function aro(a){this.a=a}, +asy:function asy(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.d=c +_.e=d +_.f=e}, +arl:function arl(){}, +pI:function pI(a,b){this.b=a +this.c=b}, +tx:function tx(a,b){this.b=a +this.d=b}, +mM:function mM(){}, +a4Z:function a4Z(){}, +brk(a,b,c,d,e,f,g,h){return new A.lD(c,a,d,f,h,b,e,g)}, +lD:function lD(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}, +aIf:function aIf(a){this.a=a}, +bJn(){var s=A.bpO() +if(s==null)s=new A.Af(A.a([],t.E5)) +return new A.aBR(s)}, +azc:function azc(){}, +aBR:function aBR(a){this.b=a}, +a0Y:function a0Y(a,b){this.a=a +this.b=b}, +a6p:function a6p(a,b,c){this.a=a +this.b=b +this.c=c}, +aWM:function aWM(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=0}, +aWN:function aWN(a,b,c){this.a=a +this.b=b +this.c=c}, +aWO:function aWO(a,b){this.a=a +this.b=b}, +JS:function JS(a,b,c){this.c=a +this.a=b +this.b=c}, +azF:function azF(){}, +aVe:function aVe(){}, +asw:function asw(a,b){this.a=a +this.b=b}, +azG:function azG(){}, +a0B:function a0B(){}, +afS:function afS(){}, +b54:function b54(a){this.a=a}, +b55:function b55(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}, +bGt(a,b,c,d,e,f,g,h,i){return new A.HV()}, +bGu(a,b,c,d,e,f,g,h,i){return new A.HW()}, +bGv(a,b,c,d,e,f,g,h,i){return new A.HX()}, +bGw(a,b,c,d,e,f,g,h,i){return new A.HY()}, +bGx(a,b,c,d,e,f,g,h,i){return new A.HZ()}, +bGy(a,b,c,d,e,f,g,h,i){return new A.I_()}, +bGz(a,b,c,d,e,f,g,h,i){return new A.I0()}, +bGA(a,b,c,d,e,f,g,h,i){return new A.I1()}, +brL(a,b,c,d,e,f,g,h){return new A.Zu()}, +brM(a,b,c,d,e,f,g,h){return new A.Zv()}, +bVT(a,b,c,d,e,f,g,h,i){switch(a.gda(0)){case"af":return new A.XQ() +case"am":return new A.XR() +case"ar":return new A.XS() +case"as":return new A.XT() +case"az":return new A.XU() +case"be":return new A.XV() +case"bg":return new A.XW() +case"bn":return new A.XX() +case"bs":return new A.XY() +case"ca":return new A.XZ() +case"cs":return new A.Y_() +case"cy":return new A.Y0() +case"da":return new A.Y1() +case"de":switch(a.gdi()){case"CH":return new A.Y2()}return A.bGt(c,i,g,b,"de",d,e,f,h) +case"el":return new A.Y3() +case"en":switch(a.gdi()){case"AU":return new A.Y4() +case"CA":return new A.Y5() +case"GB":return new A.Y6() +case"IE":return new A.Y7() +case"IN":return new A.Y8() +case"NZ":return new A.Y9() +case"SG":return new A.Ya() +case"ZA":return new A.Yb()}return A.bGu(c,i,g,b,"en",d,e,f,h) +case"es":switch(a.gdi()){case"419":return new A.Yc() +case"AR":return new A.Yd() +case"BO":return new A.Ye() +case"CL":return new A.Yf() +case"CO":return new A.Yg() +case"CR":return new A.Yh() +case"DO":return new A.Yi() +case"EC":return new A.Yj() +case"GT":return new A.Yk() +case"HN":return new A.Yl() +case"MX":return new A.Ym() +case"NI":return new A.Yn() +case"PA":return new A.Yo() +case"PE":return new A.Yp() +case"PR":return new A.Yq() +case"PY":return new A.Yr() +case"SV":return new A.Ys() +case"US":return new A.Yt() +case"UY":return new A.Yu() +case"VE":return new A.Yv()}return A.bGv(c,i,g,b,"es",d,e,f,h) +case"et":return new A.Yw() +case"eu":return new A.Yx() +case"fa":return new A.Yy() +case"fi":return new A.Yz() +case"fil":return new A.YA() +case"fr":switch(a.gdi()){case"CA":return new A.YB()}return A.bGw(c,i,g,b,"fr",d,e,f,h) +case"gl":return new A.YC() +case"gsw":return new A.YD() +case"gu":return new A.YE() +case"he":return new A.YF() +case"hi":return new A.YG() +case"hr":return new A.YH() +case"hu":return new A.YI() +case"hy":return new A.YJ() +case"id":return new A.YK() +case"is":return new A.YL() +case"it":return new A.YM() +case"ja":return new A.YN() +case"ka":return new A.YO() +case"kk":return new A.YP() +case"km":return new A.YQ() +case"kn":return new A.YR() +case"ko":return new A.YS() +case"ky":return new A.YT() +case"lo":return new A.YU() +case"lt":return new A.YV() +case"lv":return new A.YW() +case"mk":return new A.YX() +case"ml":return new A.YY() +case"mn":return new A.YZ() +case"mr":return new A.Z_() +case"ms":return new A.Z0() +case"my":return new A.Z1() +case"nb":return new A.Z2() +case"ne":return new A.Z3() +case"nl":return new A.Z4() +case"no":return new A.Z5() +case"or":return new A.Z6() +case"pa":return new A.Z7() +case"pl":return new A.Z8() +case"pt":switch(a.gdi()){case"PT":return new A.Z9()}return A.bGx(c,i,g,b,"pt",d,e,f,h) +case"ro":return new A.Za() +case"ru":return new A.Zb() +case"si":return new A.Zc() +case"sk":return new A.Zd() +case"sl":return new A.Ze() +case"sq":return new A.Zf() +case"sr":switch(a.b){case"Cyrl":return new A.Zg() +case"Latn":return new A.Zh()}return A.bGy(c,i,g,b,"sr",d,e,f,h) +case"sv":return new A.Zi() +case"sw":return new A.Zj() +case"ta":return new A.Zk() +case"te":return new A.Zl() +case"th":return new A.Zm() +case"tl":return new A.Zn() +case"tr":return new A.Zo() +case"uk":return new A.Zp() +case"ur":return new A.Zq() +case"uz":return new A.Zr() +case"vi":return new A.Zs() +case"zh":switch(a.b){case"Hans":return new A.Zt() +case"Hant":switch(a.gdi()){case"HK":return A.brL(c,i,g,b,d,e,f,h) +case"TW":return A.brM(c,i,g,b,d,e,f,h)}return A.bGA(c,i,g,b,"zh_Hant",d,e,f,h)}switch(a.gdi()){case"HK":return A.brL(c,i,g,b,d,e,f,h) +case"TW":return A.brM(c,i,g,b,d,e,f,h)}return A.bGz(c,i,g,b,"zh",d,e,f,h) +case"zu":return new A.Zw()}return null}, +XQ:function XQ(){}, +XR:function XR(){}, +XS:function XS(){}, +XT:function XT(){}, +XU:function XU(){}, +XV:function XV(){}, +XW:function XW(){}, +XX:function XX(){}, +XY:function XY(){}, +XZ:function XZ(){}, +Y_:function Y_(){}, +Y0:function Y0(){}, +Y1:function Y1(){}, +HV:function HV(){}, +Y2:function Y2(){}, +Y3:function Y3(){}, +HW:function HW(){}, +Y4:function Y4(){}, +Y5:function Y5(){}, +Y6:function Y6(){}, +Y7:function Y7(){}, +Y8:function Y8(){}, +Y9:function Y9(){}, +Ya:function Ya(){}, +Yb:function Yb(){}, +HX:function HX(){}, +Yc:function Yc(){}, +Yd:function Yd(){}, +Ye:function Ye(){}, +Yf:function Yf(){}, +Yg:function Yg(){}, +Yh:function Yh(){}, +Yi:function Yi(){}, +Yj:function Yj(){}, +Yk:function Yk(){}, +Yl:function Yl(){}, +Ym:function Ym(){}, +Yn:function Yn(){}, +Yo:function Yo(){}, +Yp:function Yp(){}, +Yq:function Yq(){}, +Yr:function Yr(){}, +Ys:function Ys(){}, +Yt:function Yt(){}, +Yu:function Yu(){}, +Yv:function Yv(){}, +Yw:function Yw(){}, +Yx:function Yx(){}, +Yy:function Yy(){}, +Yz:function Yz(){}, +YA:function YA(){}, +HY:function HY(){}, +YB:function YB(){}, +YC:function YC(){}, +YD:function YD(){}, +YE:function YE(){}, +YF:function YF(){}, +YG:function YG(){}, +YH:function YH(){}, +YI:function YI(){}, +YJ:function YJ(){}, +YK:function YK(){}, +YL:function YL(){}, +YM:function YM(){}, +YN:function YN(){}, +YO:function YO(){}, +YP:function YP(){}, +YQ:function YQ(){}, +YR:function YR(){}, +YS:function YS(){}, +YT:function YT(){}, +YU:function YU(){}, +YV:function YV(){}, +YW:function YW(){}, +YX:function YX(){}, +YY:function YY(){}, +YZ:function YZ(){}, +Z_:function Z_(){}, +Z0:function Z0(){}, +Z1:function Z1(){}, +Z2:function Z2(){}, +Z3:function Z3(){}, +Z4:function Z4(){}, +Z5:function Z5(){}, +Z6:function Z6(){}, +Z7:function Z7(){}, +Z8:function Z8(){}, +HZ:function HZ(){}, +Z9:function Z9(){}, +Za:function Za(){}, +Zb:function Zb(){}, +Zc:function Zc(){}, +Zd:function Zd(){}, +Ze:function Ze(){}, +Zf:function Zf(){}, +I_:function I_(){}, +Zg:function Zg(){}, +Zh:function Zh(){}, +Zi:function Zi(){}, +Zj:function Zj(){}, +Zk:function Zk(){}, +Zl:function Zl(){}, +Zm:function Zm(){}, +Zn:function Zn(){}, +Zo:function Zo(){}, +Zp:function Zp(){}, +Zq:function Zq(){}, +Zr:function Zr(){}, +Zs:function Zs(){}, +I0:function I0(){}, +Zt:function Zt(){}, +I1:function I1(){}, +Zu:function Zu(){}, +Zv:function Zv(){}, +Zw:function Zw(){}, +bKP(a,b,c,d,e,f,g,h,i,j){return new A.KR(d,b)}, +bKQ(a,b,c,d,e,f,g,h,i,j){return new A.KS(d,b)}, +bKR(a,b,c,d,e,f,g,h,i,j){return new A.KT(d,b)}, +bKS(a,b,c,d,e,f,g,h,i,j){return new A.KU(d,b)}, +bKT(a,b,c,d,e,f,g,h,i,j){return new A.KV(d,b)}, +bKU(a,b,c,d,e,f,g,h,i,j){return new A.KW(d,b)}, +bKV(a,b,c,d,e,f,g,h,i,j){return new A.KX(d,b)}, +bKW(a,b,c,d,e,f,g,h,i,j){return new A.KY(d,b)}, +buc(a,b,c,d,e,f,g,h,i){return new A.a3M("zh_Hant_HK",b)}, +bud(a,b,c,d,e,f,g,h,i){return new A.a3N("zh_Hant_TW",b)}, +bVW(a,b,c,d,e,f,g,h,i,j){switch(a.gda(0)){case"af":return new A.a26("af",i) +case"am":return new A.a27("am",i) +case"ar":return new A.a28("ar",i) +case"as":return new A.a29("as",i) +case"az":return new A.a2a("az",i) +case"be":return new A.a2b("be",i) +case"bg":return new A.a2c("bg",i) +case"bn":return new A.a2d("bn",i) +case"bs":return new A.a2e("bs",i) +case"ca":return new A.a2f("ca",i) +case"cs":return new A.a2g("cs",i) +case"cy":return new A.a2h("cy",i) +case"da":return new A.a2i("da",i) +case"de":switch(a.gdi()){case"CH":return new A.a2j("de_CH",i)}return A.bKP(c,i,b,"de",f,e,d,h,j,g) +case"el":return new A.a2k("el",i) +case"en":switch(a.gdi()){case"AU":return new A.a2l("en_AU",i) +case"CA":return new A.a2m("en_CA",i) +case"GB":return new A.a2n("en_GB",i) +case"IE":return new A.a2o("en_IE",i) +case"IN":return new A.a2p("en_IN",i) +case"NZ":return new A.a2q("en_NZ",i) +case"SG":return new A.a2r("en_SG",i) +case"ZA":return new A.a2s("en_ZA",i)}return A.bKQ(c,i,b,"en",f,e,d,h,j,g) +case"es":switch(a.gdi()){case"419":return new A.a2t("es_419",i) +case"AR":return new A.a2u("es_AR",i) +case"BO":return new A.a2v("es_BO",i) +case"CL":return new A.a2w("es_CL",i) +case"CO":return new A.a2x("es_CO",i) +case"CR":return new A.a2y("es_CR",i) +case"DO":return new A.a2z("es_DO",i) +case"EC":return new A.a2A("es_EC",i) +case"GT":return new A.a2B("es_GT",i) +case"HN":return new A.a2C("es_HN",i) +case"MX":return new A.a2D("es_MX",i) +case"NI":return new A.a2E("es_NI",i) +case"PA":return new A.a2F("es_PA",i) +case"PE":return new A.a2G("es_PE",i) +case"PR":return new A.a2H("es_PR",i) +case"PY":return new A.a2I("es_PY",i) +case"SV":return new A.a2J("es_SV",i) +case"US":return new A.a2K("es_US",i) +case"UY":return new A.a2L("es_UY",i) +case"VE":return new A.a2M("es_VE",i)}return A.bKR(c,i,b,"es",f,e,d,h,j,g) +case"et":return new A.a2N("et",i) +case"eu":return new A.a2O("eu",i) +case"fa":return new A.a2P("fa",i) +case"fi":return new A.a2Q("fi",i) +case"fil":return new A.a2R("fil",i) +case"fr":switch(a.gdi()){case"CA":return new A.a2S("fr_CA",i)}return A.bKS(c,i,b,"fr",f,e,d,h,j,g) +case"gl":return new A.a2T("gl",i) +case"gsw":return new A.a2U("gsw",i) +case"gu":return new A.a2V("gu",i) +case"he":return new A.a2W("he",i) +case"hi":return new A.a2X("hi",i) +case"hr":return new A.a2Y("hr",i) +case"hu":return new A.a2Z("hu",i) +case"hy":return new A.a3_("hy",i) +case"id":return new A.a30("id",i) +case"is":return new A.a31("is",i) +case"it":return new A.a32("it",i) +case"ja":return new A.a33("ja",i) +case"ka":return new A.a34("ka",i) +case"kk":return new A.a35("kk",i) +case"km":return new A.a36("km",i) +case"kn":return new A.a37("kn",i) +case"ko":return new A.a38("ko",i) +case"ky":return new A.a39("ky",i) +case"lo":return new A.a3a("lo",i) +case"lt":return new A.a3b("lt",i) +case"lv":return new A.a3c("lv",i) +case"mk":return new A.a3d("mk",i) +case"ml":return new A.a3e("ml",i) +case"mn":return new A.a3f("mn",i) +case"mr":return new A.a3g("mr",i) +case"ms":return new A.a3h("ms",i) +case"my":return new A.a3i("my",i) +case"nb":return new A.a3j("nb",i) +case"ne":return new A.a3k("ne",i) +case"nl":return new A.a3l("nl",i) +case"no":return new A.a3m("no",i) +case"or":return new A.a3n("or",i) +case"pa":return new A.a3o("pa",i) +case"pl":return new A.a3p("pl",i) +case"ps":return new A.a3q("ps",i) +case"pt":switch(a.gdi()){case"PT":return new A.a3r("pt_PT",i)}return A.bKT(c,i,b,"pt",f,e,d,h,j,g) +case"ro":return new A.a3s("ro",i) +case"ru":return new A.a3t("ru",i) +case"si":return new A.a3u("si",i) +case"sk":return new A.a3v("sk",i) +case"sl":return new A.a3w("sl",i) +case"sq":return new A.a3x("sq",i) +case"sr":switch(a.b){case"Cyrl":return new A.a3y("sr_Cyrl",i) +case"Latn":return new A.a3z("sr_Latn",i)}return A.bKU(c,i,b,"sr",f,e,d,h,j,g) +case"sv":return new A.a3A("sv",i) +case"sw":return new A.a3B("sw",i) +case"ta":return new A.a3C("ta",i) +case"te":return new A.a3D("te",i) +case"th":return new A.a3E("th",i) +case"tl":return new A.a3F("tl",i) +case"tr":return new A.a3G("tr",i) +case"uk":return new A.a3H("uk",i) +case"ur":return new A.a3I("ur",i) +case"uz":return new A.a3J("uz",i) +case"vi":return new A.a3K("vi",i) +case"zh":switch(a.b){case"Hans":return new A.a3L("zh_Hans",i) +case"Hant":switch(a.gdi()){case"HK":return A.buc(c,i,b,f,e,d,h,j,g) +case"TW":return A.bud(c,i,b,f,e,d,h,j,g)}return A.bKW(c,i,b,"zh_Hant",f,e,d,h,j,g)}switch(a.gdi()){case"HK":return A.buc(c,i,b,f,e,d,h,j,g) +case"TW":return A.bud(c,i,b,f,e,d,h,j,g)}return A.bKV(c,i,b,"zh",f,e,d,h,j,g) +case"zu":return new A.a3O("zu",i)}return null}, +a26:function a26(a,b){this.a=a +this.x=b}, +a27:function a27(a,b){this.a=a +this.x=b}, +a28:function a28(a,b){this.a=a +this.x=b}, +a29:function a29(a,b){this.a=a +this.x=b}, +a2a:function a2a(a,b){this.a=a +this.x=b}, +a2b:function a2b(a,b){this.a=a +this.x=b}, +a2c:function a2c(a,b){this.a=a +this.x=b}, +a2d:function a2d(a,b){this.a=a +this.x=b}, +a2e:function a2e(a,b){this.a=a +this.x=b}, +a2f:function a2f(a,b){this.a=a +this.x=b}, +a2g:function a2g(a,b){this.a=a +this.x=b}, +a2h:function a2h(a,b){this.a=a +this.x=b}, +a2i:function a2i(a,b){this.a=a +this.x=b}, +KR:function KR(a,b){this.a=a +this.x=b}, +a2j:function a2j(a,b){this.a=a +this.x=b}, +a2k:function a2k(a,b){this.a=a +this.x=b}, +KS:function KS(a,b){this.a=a +this.x=b}, +a2l:function a2l(a,b){this.a=a +this.x=b}, +a2m:function a2m(a,b){this.a=a +this.x=b}, +a2n:function a2n(a,b){this.a=a +this.x=b}, +a2o:function a2o(a,b){this.a=a +this.x=b}, +a2p:function a2p(a,b){this.a=a +this.x=b}, +a2q:function a2q(a,b){this.a=a +this.x=b}, +a2r:function a2r(a,b){this.a=a +this.x=b}, +a2s:function a2s(a,b){this.a=a +this.x=b}, +KT:function KT(a,b){this.a=a +this.x=b}, +a2t:function a2t(a,b){this.a=a +this.x=b}, +a2u:function a2u(a,b){this.a=a +this.x=b}, +a2v:function a2v(a,b){this.a=a +this.x=b}, +a2w:function a2w(a,b){this.a=a +this.x=b}, +a2x:function a2x(a,b){this.a=a +this.x=b}, +a2y:function a2y(a,b){this.a=a +this.x=b}, +a2z:function a2z(a,b){this.a=a +this.x=b}, +a2A:function a2A(a,b){this.a=a +this.x=b}, +a2B:function a2B(a,b){this.a=a +this.x=b}, +a2C:function a2C(a,b){this.a=a +this.x=b}, +a2D:function a2D(a,b){this.a=a +this.x=b}, +a2E:function a2E(a,b){this.a=a +this.x=b}, +a2F:function a2F(a,b){this.a=a +this.x=b}, +a2G:function a2G(a,b){this.a=a +this.x=b}, +a2H:function a2H(a,b){this.a=a +this.x=b}, +a2I:function a2I(a,b){this.a=a +this.x=b}, +a2J:function a2J(a,b){this.a=a +this.x=b}, +a2K:function a2K(a,b){this.a=a +this.x=b}, +a2L:function a2L(a,b){this.a=a +this.x=b}, +a2M:function a2M(a,b){this.a=a +this.x=b}, +a2N:function a2N(a,b){this.a=a +this.x=b}, +a2O:function a2O(a,b){this.a=a +this.x=b}, +a2P:function a2P(a,b){this.a=a +this.x=b}, +a2Q:function a2Q(a,b){this.a=a +this.x=b}, +a2R:function a2R(a,b){this.a=a +this.x=b}, +KU:function KU(a,b){this.a=a +this.x=b}, +a2S:function a2S(a,b){this.a=a +this.x=b}, +a2T:function a2T(a,b){this.a=a +this.x=b}, +a2U:function a2U(a,b){this.a=a +this.x=b}, +a2V:function a2V(a,b){this.a=a +this.x=b}, +a2W:function a2W(a,b){this.a=a +this.x=b}, +a2X:function a2X(a,b){this.a=a +this.x=b}, +a2Y:function a2Y(a,b){this.a=a +this.x=b}, +a2Z:function a2Z(a,b){this.a=a +this.x=b}, +a3_:function a3_(a,b){this.a=a +this.x=b}, +a30:function a30(a,b){this.a=a +this.x=b}, +a31:function a31(a,b){this.a=a +this.x=b}, +a32:function a32(a,b){this.a=a +this.x=b}, +a33:function a33(a,b){this.a=a +this.x=b}, +a34:function a34(a,b){this.a=a +this.x=b}, +a35:function a35(a,b){this.a=a +this.x=b}, +a36:function a36(a,b){this.a=a +this.x=b}, +a37:function a37(a,b){this.a=a +this.x=b}, +a38:function a38(a,b){this.a=a +this.x=b}, +a39:function a39(a,b){this.a=a +this.x=b}, +a3a:function a3a(a,b){this.a=a +this.x=b}, +a3b:function a3b(a,b){this.a=a +this.x=b}, +a3c:function a3c(a,b){this.a=a +this.x=b}, +a3d:function a3d(a,b){this.a=a +this.x=b}, +a3e:function a3e(a,b){this.a=a +this.x=b}, +a3f:function a3f(a,b){this.a=a +this.x=b}, +a3g:function a3g(a,b){this.a=a +this.x=b}, +a3h:function a3h(a,b){this.a=a +this.x=b}, +a3i:function a3i(a,b){this.a=a +this.x=b}, +a3j:function a3j(a,b){this.a=a +this.x=b}, +a3k:function a3k(a,b){this.a=a +this.x=b}, +a3l:function a3l(a,b){this.a=a +this.x=b}, +a3m:function a3m(a,b){this.a=a +this.x=b}, +a3n:function a3n(a,b){this.a=a +this.x=b}, +a3o:function a3o(a,b){this.a=a +this.x=b}, +a3p:function a3p(a,b){this.a=a +this.x=b}, +a3q:function a3q(a,b){this.a=a +this.x=b}, +KV:function KV(a,b){this.a=a +this.x=b}, +a3r:function a3r(a,b){this.a=a +this.x=b}, +a3s:function a3s(a,b){this.a=a +this.x=b}, +a3t:function a3t(a,b){this.a=a +this.x=b}, +a3u:function a3u(a,b){this.a=a +this.x=b}, +a3v:function a3v(a,b){this.a=a +this.x=b}, +a3w:function a3w(a,b){this.a=a +this.x=b}, +a3x:function a3x(a,b){this.a=a +this.x=b}, +KW:function KW(a,b){this.a=a +this.x=b}, +a3y:function a3y(a,b){this.a=a +this.x=b}, +a3z:function a3z(a,b){this.a=a +this.x=b}, +a3A:function a3A(a,b){this.a=a +this.x=b}, +a3B:function a3B(a,b){this.a=a +this.x=b}, +a3C:function a3C(a,b){this.a=a +this.x=b}, +a3D:function a3D(a,b){this.a=a +this.x=b}, +a3E:function a3E(a,b){this.a=a +this.x=b}, +a3F:function a3F(a,b){this.a=a +this.x=b}, +a3G:function a3G(a,b){this.a=a +this.x=b}, +a3H:function a3H(a,b){this.a=a +this.x=b}, +a3I:function a3I(a,b){this.a=a +this.x=b}, +a3J:function a3J(a,b){this.a=a +this.x=b}, +a3K:function a3K(a,b){this.a=a +this.x=b}, +KX:function KX(a,b){this.a=a +this.x=b}, +a3L:function a3L(a,b){this.a=a +this.x=b}, +KY:function KY(a,b){this.a=a +this.x=b}, +a3M:function a3M(a,b){this.a=a +this.x=b}, +a3N:function a3N(a,b){this.a=a +this.x=b}, +a3O:function a3O(a,b){this.a=a +this.x=b}, +bVZ(a){switch(a.gda(0)){case"af":return B.axw +case"am":return B.axx +case"ar":return B.axy +case"as":return B.axz +case"az":return B.axA +case"be":return B.axB +case"bg":return B.axC +case"bn":return B.axD +case"bs":return B.axE +case"ca":return B.axF +case"cs":return B.axG +case"cy":return B.axH +case"da":return B.axI +case"de":switch(a.gdi()){case"CH":return B.axJ}return B.axK +case"el":return B.axL +case"en":switch(a.gdi()){case"AU":return B.axM +case"CA":return B.axN +case"GB":return B.axO +case"IE":return B.axP +case"IN":return B.axQ +case"NZ":return B.axR +case"SG":return B.axS +case"ZA":return B.axT}return B.axU +case"es":switch(a.gdi()){case"419":return B.axV +case"AR":return B.axW +case"BO":return B.axX +case"CL":return B.axY +case"CO":return B.axZ +case"CR":return B.ay_ +case"DO":return B.ay0 +case"EC":return B.ay1 +case"GT":return B.ay2 +case"HN":return B.ay3 +case"MX":return B.ay4 +case"NI":return B.ay5 +case"PA":return B.ay6 +case"PE":return B.ay7 +case"PR":return B.ay8 +case"PY":return B.ay9 +case"SV":return B.aya +case"US":return B.ayb +case"UY":return B.ayc +case"VE":return B.ayd}return B.aye +case"et":return B.ayf +case"eu":return B.ayg +case"fa":return B.ayh +case"fi":return B.ayi +case"fil":return B.ayj +case"fr":switch(a.gdi()){case"CA":return B.ayk}return B.ayl +case"gl":return B.aym +case"gsw":return B.ayn +case"gu":return B.ayo +case"he":return B.ayp +case"hi":return B.ayq +case"hr":return B.ayr +case"hu":return B.ays +case"hy":return B.ayt +case"id":return B.ayu +case"is":return B.ayv +case"it":return B.ayw +case"ja":return B.ayx +case"ka":return B.ayy +case"kk":return B.ayz +case"km":return B.ayA +case"kn":return B.ayB +case"ko":return B.ayC +case"ky":return B.ayD +case"lo":return B.ayE +case"lt":return B.ayF +case"lv":return B.ayG +case"mk":return B.ayH +case"ml":return B.ayI +case"mn":return B.ayJ +case"mr":return B.ayK +case"ms":return B.ayL +case"my":return B.ayM +case"nb":return B.ayN +case"ne":return B.ayO +case"nl":return B.ayP +case"no":return B.ayQ +case"or":return B.ayR +case"pa":return B.ayS +case"pl":return B.ayT +case"ps":return B.ayU +case"pt":switch(a.gdi()){case"PT":return B.ayV}return B.ayW +case"ro":return B.ayX +case"ru":return B.ayY +case"si":return B.ayZ +case"sk":return B.az_ +case"sl":return B.az0 +case"sq":return B.az1 +case"sr":switch(a.b){case"Cyrl":return B.az2 +case"Latn":return B.az3}return B.az4 +case"sv":return B.az5 +case"sw":return B.az6 +case"ta":return B.az7 +case"te":return B.az8 +case"th":return B.az9 +case"tl":return B.aza +case"tr":return B.azb +case"uk":return B.azc +case"ur":return B.azd +case"uz":return B.aze +case"vi":return B.azf +case"zh":switch(a.b){case"Hans":return B.azg +case"Hant":switch(a.gdi()){case"HK":return B.PD +case"TW":return B.PE}return B.azh}switch(a.gdi()){case"HK":return B.PD +case"TW":return B.PE}return B.azi +case"zu":return B.azj}return null}, +aav:function aav(a){this.a=a}, +aaw:function aaw(a){this.a=a}, +aax:function aax(a){this.a=a}, +aay:function aay(a){this.a=a}, +aaz:function aaz(a){this.a=a}, +aaA:function aaA(a){this.a=a}, +aaB:function aaB(a){this.a=a}, +aaC:function aaC(a){this.a=a}, +aaD:function aaD(a){this.a=a}, +aaE:function aaE(a){this.a=a}, +aaF:function aaF(a){this.a=a}, +aaG:function aaG(a){this.a=a}, +aaH:function aaH(a){this.a=a}, +PE:function PE(a){this.a=a}, +aaI:function aaI(a){this.a=a}, +aaJ:function aaJ(a){this.a=a}, +PF:function PF(a){this.a=a}, +aaK:function aaK(a){this.a=a}, +aaL:function aaL(a){this.a=a}, +aaM:function aaM(a){this.a=a}, +aaN:function aaN(a){this.a=a}, +aaO:function aaO(a){this.a=a}, +aaP:function aaP(a){this.a=a}, +aaQ:function aaQ(a){this.a=a}, +aaR:function aaR(a){this.a=a}, +PG:function PG(a){this.a=a}, +aaS:function aaS(a){this.a=a}, +aaT:function aaT(a){this.a=a}, +aaU:function aaU(a){this.a=a}, +aaV:function aaV(a){this.a=a}, +aaW:function aaW(a){this.a=a}, +aaX:function aaX(a){this.a=a}, +aaY:function aaY(a){this.a=a}, +aaZ:function aaZ(a){this.a=a}, +ab_:function ab_(a){this.a=a}, +ab0:function ab0(a){this.a=a}, +ab1:function ab1(a){this.a=a}, +ab2:function ab2(a){this.a=a}, +ab3:function ab3(a){this.a=a}, +ab4:function ab4(a){this.a=a}, +ab5:function ab5(a){this.a=a}, +ab6:function ab6(a){this.a=a}, +ab7:function ab7(a){this.a=a}, +ab8:function ab8(a){this.a=a}, +ab9:function ab9(a){this.a=a}, +aba:function aba(a){this.a=a}, +abb:function abb(a){this.a=a}, +abc:function abc(a){this.a=a}, +abd:function abd(a){this.a=a}, +abe:function abe(a){this.a=a}, +abf:function abf(a){this.a=a}, +PH:function PH(a){this.a=a}, +abg:function abg(a){this.a=a}, +abh:function abh(a){this.a=a}, +abi:function abi(a){this.a=a}, +abj:function abj(a){this.a=a}, +abk:function abk(a){this.a=a}, +abl:function abl(a){this.a=a}, +abm:function abm(a){this.a=a}, +abn:function abn(a){this.a=a}, +abo:function abo(a){this.a=a}, +abp:function abp(a){this.a=a}, +abq:function abq(a){this.a=a}, +abr:function abr(a){this.a=a}, +abs:function abs(a){this.a=a}, +abt:function abt(a){this.a=a}, +abu:function abu(a){this.a=a}, +abv:function abv(a){this.a=a}, +abw:function abw(a){this.a=a}, +abx:function abx(a){this.a=a}, +aby:function aby(a){this.a=a}, +abz:function abz(a){this.a=a}, +abA:function abA(a){this.a=a}, +abB:function abB(a){this.a=a}, +abC:function abC(a){this.a=a}, +abD:function abD(a){this.a=a}, +abE:function abE(a){this.a=a}, +abF:function abF(a){this.a=a}, +abG:function abG(a){this.a=a}, +abH:function abH(a){this.a=a}, +abI:function abI(a){this.a=a}, +abJ:function abJ(a){this.a=a}, +abK:function abK(a){this.a=a}, +abL:function abL(a){this.a=a}, +abM:function abM(a){this.a=a}, +abN:function abN(a){this.a=a}, +abO:function abO(a){this.a=a}, +abP:function abP(a){this.a=a}, +PI:function PI(a){this.a=a}, +abQ:function abQ(a){this.a=a}, +abR:function abR(a){this.a=a}, +abS:function abS(a){this.a=a}, +abT:function abT(a){this.a=a}, +abU:function abU(a){this.a=a}, +abV:function abV(a){this.a=a}, +abW:function abW(a){this.a=a}, +PJ:function PJ(a){this.a=a}, +abX:function abX(a){this.a=a}, +abY:function abY(a){this.a=a}, +abZ:function abZ(a){this.a=a}, +ac_:function ac_(a){this.a=a}, +ac0:function ac0(a){this.a=a}, +ac1:function ac1(a){this.a=a}, +ac2:function ac2(a){this.a=a}, +ac3:function ac3(a){this.a=a}, +ac4:function ac4(a){this.a=a}, +ac5:function ac5(a){this.a=a}, +ac6:function ac6(a){this.a=a}, +ac7:function ac7(a){this.a=a}, +ac8:function ac8(a){this.a=a}, +PK:function PK(a){this.a=a}, +ac9:function ac9(a){this.a=a}, +PL:function PL(a){this.a=a}, +aca:function aca(a){this.a=a}, +acb:function acb(a){this.a=a}, +acc:function acc(a){this.a=a}, +a0C:function a0C(){}, +ah1:function ah1(){}, +b9z:function b9z(a){this.a=a}, +bAa(){if(!$.byt){$.bEh().az(0,new A.bjx()) +$.byt=!0}}, +bjx:function bjx(){}, +a0E:function a0E(){}, +amz:function amz(){}, +bh0:function bh0(a){this.a=a}, +bvD(){var s=$.bC().geB().b.gaJ(0) +return A.a3X(s.b.$1(J.fT(s.a)),null)}, +bN9(){var s=$.bC().geB().b.gaJ(0) +return A.a3X(s.b.$1(J.fT(s.a)),null).a.b}, +bvE(){var s=$.bC().geB().b.gaJ(0) +return A.a3X(s.b.$1(J.fT(s.a)),null).r.b}, +acT:function acT(a,b){this.a=a +this.b=b}, +a6a:function a6a(a,b){this.a=a +this.b=b}, +Ib:function Ib(a,b,c,d,e,f,g){var _=this +_.d=a +_.e=b +_.r=c +_.w=d +_.x=e +_.z=f +_.a=g}, +ZH:function ZH(){this.c=this.a=null}, +atK:function atK(a){this.a=a}, +atJ:function atJ(a){this.a=a}, +aiu:function aiu(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}, +am7:function am7(a,b){this.b=a +this.a=b}, +aiw:function aiw(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 +_.bH=a +_.d4=b +_.cm=c +_.d9=d +_.ft=e +_.fu=f +_.hE=g +_.dK=h +_.dS=i +_.hF=j +_.jt=k +_.hR=l +_.nZ=m +_.fv=n +_.k6=o +_.uQ=p +_.kK=0 +_.ma=_.js=0.5 +_.uS=_.uR=_.pw=_.nU=null +_.go=q +_.id=r +_.k1=!1 +_.k3=_.k2=null +_.k4=s +_.ok=a0 +_.p1=a1 +_.p2=a2 +_.p3=a3 +_.p4=$ +_.R8=null +_.RG=$ +_.mb$=a4 +_.rl$=a5 +_.Q=a6 +_.as=null +_.at=!1 +_.ay=_.ax=null +_.ch=a7 +_.CW=!0 +_.cy=_.cx=null +_.f=a8 +_.a=null +_.b=a9 +_.c=b0 +_.d=b1 +_.e=b2}, +baP:function baP(a){this.a=a}, +kh:function kh(a,b){this.a=a +this.b=b}, +DC:function DC(a,b){this.a=a +this.b=b}, +DB:function DB(a,b){this.a=a +this.b=b}, +O7:function O7(a,b){this.a=a +this.b=b}, +Oa:function Oa(a,b){this.a=a +this.b=b}, +oS:function oS(a,b){this.a=a +this.b=b}, +uO:function uO(a,b){this.a=a +this.b=b}, +O8:function O8(a,b){this.a=a +this.b=b}, +xQ:function xQ(a,b){this.a=a +this.b=b}, +a8z:function a8z(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +a8A:function a8A(){}, +a8B:function a8B(){}, +a8C:function a8C(){this.at=!1}, +a8D:function a8D(){this.ay=!1}, +a8E:function a8E(){}, +att:function att(a,b){var _=this +_.d=_.c=null +_.e=!1 +_.f=null +_.a=a +_.b=b}, +atA:function atA(a){this.a=a}, +atB:function atB(a,b,c){this.a=a +this.b=b +this.c=c}, +atu:function atu(a,b){this.a=a +this.b=b}, +atv:function atv(a,b){this.a=a +this.b=b}, +blg(a,b,c,d,e){if(e===B.lc)return A.ZF(a,c,d) +else return A.atD(a,c,d)}, +atD(a,b,c){var s=0,r=A.n(t.H),q,p +var $async$atD=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:p=$.cC +p=(p==null?$.cC=A.fl():p).d +p===$&&A.b() +q=p.gt(0) +case 2:if(!(q>0)){s=4 +break}s=5 +return A.f(A.ZF(a,b,c),$async$atD) +case 5:case 3:--q +s=2 +break +case 4:return A.l(null,r)}}) +return A.m($async$atD,r)}, +ZF(a,b,c){var s=0,r=A.n(t.H),q,p,o,n,m +var $async$ZF=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:m=A.bGM(c) +if(m==null){s=1 +break}p=$.cC +if(p==null)p=$.cC=A.fl() +o=p.d +o===$&&A.b() +o.C(0,m) +o=p.d +if(o.b===o.c){o=p.a +o===$&&A.b() +o.c.ay=!1}n=m.a +s=3 +return A.f(n.b.aS4(a,b),$async$ZF) +case 3:n.a.eT(0) +case 1:return A.l(q,r)}}) +return A.m($async$ZF,r)}, +bGM(a){var s,r,q,p,o=$.cC,n=(o==null?$.cC=A.fl():o).d +n===$&&A.b() +if(n.b===n.c)return null +s=n.cJ(0) +if(a!=null){for(r=n.gt(0)-1,n=n.b===n.c,q=null;r>=0;--r){if(n)break +p=s[r] +if(p.b===a)q=p}return q}return!n.ga_(0)?s[s.length-1]:null}, +atC:function atC(a,b){this.a=a +this.b=b}, +atH:function atH(a,b,c){this.a=a +this.b=b +this.c=c}, +atE:function atE(a){this.a=a}, +atF:function atF(a,b){this.a=a +this.b=b}, +atG:function atG(a,b){this.a=a +this.b=b}, +KH:function KH(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=!0 +_.f=_.e=_.d=null +_.r=c +_.w=d}, +aFz:function aFz(a){this.a=a}, +aFA:function aFA(a){this.a=a}, +ZK(a,b,c,d){var s=0,r=A.n(t.H),q,p,o +var $async$ZK=A.j(function(e,f){if(e===1)return A.k(f,r) +while(true)switch(s){case 0:p=$.ft +o=(p==null?$.ft=new A.kk(A.ej(null,t.Mq)):p).c +if(b){o.f0(0,new A.E6(a,B.nz,d,c)) +if(o.gt(0)>1){s=1 +break}}o.gW(0).d.$0() +p=$.ft +if(p==null)p=$.ft=new A.kk(A.ej(null,t.Mq)) +s=3 +return A.f(p.aco(0,d,new A.atW()),$async$ZK) +case 3:case 1:return A.l(q,r)}}) +return A.m($async$ZK,r)}, +ZJ(a,b,c){var s=0,r=A.n(t.H),q,p,o,n,m +var $async$ZJ=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:n=$.ft +m=(n==null?$.ft=new A.kk(A.ej(null,t.Mq)):n).c +s=!m.ga_(0)?2:3 +break +case 2:n=A.bou(m,m.$ti.c),q=n.$ti.c +case 4:if(!n.u()){s=5 +break}p=n.e +s=6 +return A.f(A.aab(new A.atT(p==null?q.a(p):p)),$async$ZJ) +case 6:s=4 +break +case 5:m.V(0) +n=$.ft;(n==null?$.ft=new A.kk(A.ej(null,t.Mq)):n).JY() +case 3:m.f0(0,new A.E6(a,B.OP,c,b)) +o=m.gW(0) +o.d.$0() +n=$.ft +if(n==null)n=$.ft=new A.kk(A.ej(null,t.Mq)) +s=7 +return A.f(n.aco(0,o.c,new A.atU()),$async$ZJ) +case 7:return A.l(null,r)}}) +return A.m($async$ZJ,r)}, +blk(a,b,c,d){var s=0,r=A.n(t.H),q,p,o,n +var $async$blk=A.j(function(e,f){if(e===1)return A.k(f,r) +while(true)switch(s){case 0:o=$.ft +n=(o==null?$.ft=new A.kk(A.ej(null,t.Mq)):o).c +if(n.gt(0)<2)o=!n.ga_(0)&&n.gW(0).b!==B.te +else o=!0 +if(o){o=$.ft;(o==null?$.ft=new A.kk(A.ej(null,t.Mq)):o).abk()}if(n.b===n.c){n.f0(0,new A.E6(a,B.te,c,b)) +$.bli=d.d +b.$0()}else{o=$.bli +if(o!=null){if($.atS==null){q=o.e.a +if(q!=null){p=new A.aS3() +$.atS=p +q.Zx(p)}}o=o.e.a +if(o!=null)o.e=d +o=$.atS +if(o!=null){o=o.a +if(o!=null)o.$0()}}}o=$.brT +if(o!=null)o.S(0) +$.brT=A.bZ(c,new A.atX()) +return A.l(null,r)}}) +return A.m($async$blk,r)}, +blj(a,b,c){var s=0,r=A.n(t.H) +var $async$blj=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:b.$0() +A.bZ(c,new A.atV(a)) +return A.l(null,r)}}) +return A.m($async$blj,r)}, +Ie(a,b){return A.bGN(a,b,b.i("0?"))}, +bGN(a,b,c){var s=0,r=A.n(c),q,p +var $async$Ie=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:p=$.ft;(p==null?$.ft=new A.kk(A.ej(null,t.Mq)):p).ym(a) +$.fg() +p=t.z +s=3 +return A.f(A.eC(B.T,null,p),$async$Ie) +case 3:s=4 +return A.f(A.eC(B.hd,null,p),$async$Ie) +case 4:q=null +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Ie,r)}, +atR:function atR(a,b){this.a=a +this.b=b}, +atY:function atY(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}, +atZ:function atZ(a,b){this.a=a +this.b=b}, +atW:function atW(){}, +atT:function atT(a){this.a=a}, +atU:function atU(){}, +atX:function atX(){}, +atV:function atV(a){this.a=a}, +E6:function E6(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +kk:function kk(a){this.b=this.a=null +this.c=a}, +aUJ:function aUJ(a,b){this.a=a +this.b=b}, +aqf:function aqf(){}, +aqg:function aqg(){}, +aF3:function aF3(){this.a=$ +this.c=this.b=null}, +a52:function a52(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=null +_.e=d}, +azI:function azI(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bHr(){var s=$.cC +if(s==null){s=new A.a_k() +s.a=new A.a8z(new A.a8B(),new A.a8A(),new A.a8D(),new A.a8C(),new A.a8E()) +s.c=A.ej(null,t.hX) +s.d=A.ej(null,t.ke) +$.cC=s}return s}, +fl(){var s=new A.a_k() +s.a=new A.a8z(new A.a8B(),new A.a8A(),new A.a8D(),new A.a8C(),new A.a8E()) +s.c=A.ej(null,t.hX) +s.d=A.ej(null,t.ke) +return s}, +Aw:function Aw(a,b){this.a=a +this.b=b}, +oa:function oa(a,b){this.a=a +this.b=b}, +a_k:function a_k(){var _=this +_.w=_.r=_.f=_.e=_.d=_.c=_.b=_.a=$}, +avi:function avi(a){this.a=a}, +avj:function avj(a){this.a=a}, +avk:function avk(a){this.a=a}, +a47(){var s=0,r=A.n(t.y),q,p,o,n,m,l,k,j,i +var $async$a47=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=$.fg().d.at?3:4 +break +case 3:p=$.cC +o=(p==null?$.cC=A.fl():p).grL() +p=A.en(null,t.X7) +i=J +s=5 +return A.f(p,$async$a47) +case 5:if(i.e(b,!0)){q=!0 +s=1 +break}p=o.b +if(p===B.t9){p=$.cC;(p==null?$.cC=A.fl():p).aS5(B.oG,B.as) +q=!0 +s=1 +break}else if(p===B.OH){q=!0 +s=1 +break}case 4:s=$.fg().c.ay?6:7 +break +case 6:p=$.cC +p=(p==null?$.cC=A.fl():p).d +p===$&&A.b() +n=p.gt(0)-1,m=t.YM +case 8:if(!(n>=0)){s=10 +break}l=p.c2(0,n) +k=new A.a_($.ab,m) +k.a=8 +i=J +s=11 +return A.f(k,$async$a47) +case 11:if(i.e(b,!0)){q=!0 +s=1 +break}k=l.c +if(k===B.t9){p=$.cC +if(p==null)p=$.cC=A.fl() +p.aS6(B.oG,B.td,l.b) +q=!0 +s=1 +break}else if(k===B.OH){q=!0 +s=1 +break}case 9:--n +s=8 +break +case 10:case 7:if(A.bL7()){p=$.cC +p=(p==null?$.cC=A.fl():p).c +p===$&&A.b() +j=p.gY(0) +j.gaOK() +j.gaOK()}q=!1 +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$a47,r)}, +bL7(){var s,r,q,p,o,n,m=!0,l=$.bvx +if(l==null){l=new A.aPv() +o=new A.QT(t.AR) +o.a=o +o.b=o +l.a=new A.IN(o,t.Co) +$.bvx=l}l=l.a +l===$&&A.b() +s=l +try{l=$.cC +if(l==null){l=$.cC=A.fl() +o=l}else o=l +l=l.c +l===$&&A.b() +if(l.b===l.c){if(!J.cT(s))J.GA(s) +m=!1}else{l=o.c +l===$&&A.b() +r=l.gY(0) +if(r.gb0Y()&&!J.cT(s)){q=s.a.a.gKV() +if(q.b.a!=="smartSystemDialog")m=!1}else{l=r.gaRH().gaX0() +if(!l.gYC(l)||r.gb27())m=!1}}}catch(n){p=A.v(n) +m=!1 +A.as().$1("SmartDialog back event error:"+J.p(p))}return m}, +a46:function a46(){}, +ahg:function ahg(){}, +aPv:function aPv(){this.a=$}, +bIR(a,b,c,d,e,f){return new A.Jy(a,f,c,d,e,b,null)}, +bIS(){var s,r=null +if($.bul==null){s=new A.a46() +if($.aw==null)A.boc() +$.aw.cU$.push(s) +$.bul=s}return new A.azH(r,r,r,r,r,r)}, +Jy:function Jy(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +azH:function azH(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +afE:function afE(){var _=this +_.e=_.d=$ +_.c=_.a=null}, +b4l:function b4l(a){this.a=a}, +b4m:function b4m(){}, +b4n:function b4n(){}, +b4o:function b4o(){}, +b4p:function b4p(){}, +b4q:function b4q(){}, +b4r:function b4r(){}, +b4s:function b4s(){}, +b4t:function b4t(){}, +b4k:function b4k(a){this.a=a}, +tl:function tl(a,b){this.a=a +this.b=b}, +ZR:function ZR(a){this.a=a}, +Em(a){if($.cp.R8$===B.i2)$.aw.p2$.push(new A.aVJ(a)) +else a.$0()}, +aab(a){var s=0,r=A.n(t.H),q +var $async$aab=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=new A.a_($.ab,t.LR) +$.aw.p2$.push(new A.aVK(a,new A.aq(q,t.zh))) +s=2 +return A.f(q,$async$aab) +case 2:return A.l(null,r)}}) +return A.m($async$aab,r)}, +hR(){var s=$.bsb +if(s==null)return!1 +return A.q(s).ax.a===B.aI}, +aVJ:function aVJ(a){this.a=a}, +aVK:function aVK(a,b){this.a=a +this.b=b}, +bnJ(a,b,c,d){var s,r,q=null,p=$.cC +if(p==null)p=$.cC=A.fl() +s=A.blw(new A.aS6(q,c,b),q) +if(a==null){$.fg() +r=B.O}else r=a +$.fg() +return p.OR(r,q,B.T,B.nx,B.anK,!1,!1,B.ZW,!1,B.oK,q,B.BV,q,q,q,q,!0,!0,s,d)}, +bNI(a,b){var s,r=null,q=$.cC +if(q==null)q=$.cC=A.fl() +s=A.blw(new A.aS5(r,a),r) +$.fg() +q.grL().c=null +q.grL().b=B.t9 +q=q.grL().a +q===$&&A.b() +return q.al7(B.O,r,B.T,B.nx,!1,r,B.oK,r,B.a3b,r,r,!0,!1,s,b)}, +bnK(a){var s=0,r=A.n(t.H),q,p,o +var $async$bnK=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=$.cC +if(o==null)o=$.cC=A.fl() +p=A.blw(new A.aS7(null,a),null) +$.fg() +q=o.al9(B.eF,null,B.T,B.nx,!1,!1,!1,B.dN,B.nz,B.oK,null,B.BV,null,null,!0,!0,p) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$bnK,r)}, +dR(a){var s=0,r=A.n(t.H),q,p +var $async$dR=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=$.cC +q=(p==null?$.cC=A.fl():p).aS7(!1,null,a,null) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$dR,r)}, +aS6:function aS6(a,b,c){this.a=a +this.b=b +this.c=c}, +aS5:function aS5(a,b){this.a=a +this.b=b}, +aS7:function aS7(a,b){this.a=a +this.b=b}, +Jg:function Jg(a,b,c){this.c=a +this.d=b +this.a=c}, +afl:function afl(){this.d=$ +this.c=this.a=null}, +KL:function KL(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +agX:function agX(){this.d=$ +this.c=this.a=null}, +Nn:function Nn(a,b,c){this.c=a +this.d=b +this.a=c}, +ajW:function ajW(){this.d=$ +this.c=this.a=null}, +O0:function O0(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +akv:function akv(a,b){var _=this +_.d=$ +_.dI$=a +_.b8$=b +_.c=_.a=null}, +anJ:function anJ(){}, +BZ:function BZ(a,b){this.c=a +this.a=b}, +Cx:function Cx(a,b){this.c=a +this.a=b}, +Cy:function Cy(a,b){this.c=a +this.a=b}, +Cz:function Cz(a,b){this.c=a +this.a=b}, +CA:function CA(a,b){this.c=a +this.a=b}, +CB:function CB(a,b){this.c=a +this.a=b}, +E7:function E7(a,b){this.c=a +this.a=b}, +blw(a,b){return new A.IA(b,a,new A.avm(),null)}, +avm:function avm(){this.a=null}, +IA:function IA(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aeG:function aeG(){var _=this +_.c=_.a=_.e=_.d=null}, +b1T:function b1T(a){this.a=a}, +b1S:function b1S(a){this.a=a}, +b1R:function b1R(){}, +aS3:function aS3(){this.a=null}, +KM:function KM(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +agY:function agY(){this.d=!1 +this.c=this.a=null}, +b9p:function b9p(a,b){this.a=a +this.b=b}, +b9q:function b9q(a,b){this.a=a +this.b=b}, +b9r:function b9r(a,b){this.a=a +this.b=b}, +bnL(a){return new A.a8F(a,!1,!1,!1,new A.cS(null,$.aW()),new A.bG(null,t.af))}, +a8F:function a8F(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=null +_.r=f +_.w=!1}, +aS8:function aS8(a){this.a=a}, +P8:function P8(a,b,c){this.c=a +this.d=b +this.a=c}, +alG:function alG(){var _=this +_.d=0 +_.c=_.a=_.r=_.f=_.e=null}, +bfS:function bfS(a){this.a=a}, +bfR:function bfR(a){this.a=a}, +bfQ:function bfQ(a){this.a=a}, +bfO:function bfO(){}, +bfP:function bfP(){}, +anS:function anS(){}, +O9:function O9(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}, +akF:function akF(a,b){var _=this +_.d=null +_.e=$ +_.f=null +_.dI$=a +_.b8$=b +_.c=_.a=null}, +bdR:function bdR(a){this.a=a}, +aS4:function aS4(){this.a=null}, +Vg:function Vg(){}, +arj:function arj(a,b){this.a=a +this.b=b}, +arr:function arr(a,b,c){this.a=a +this.b=b +this.c=c}, +a93:function a93(){}, +m7:function m7(){}, +aTh:function aTh(a,b){this.a=a +this.b=b}, +aTg:function aTg(a,b){this.a=a +this.b=b}, +aTi:function aTi(a,b){this.a=a +this.b=b}, +Ov:function Ov(a,b,c){this.a=a +this.b=b +this.c=c}, +acU:function acU(a,b,c){this.a=a +this.b=b +this.c=c}, +Ou:function Ou(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=e}, +Ow:function Ow(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.a=d +_.b=e}, +bwc(a,b,c,d,e,f,g){var s,r=null +if(b==null)s=r +else s=b +return new A.Ox(g,e,d,new A.Ou(a,r,r,r,r),f,c,s,r)}, +bwd(a,b,c,d,e,f){var s,r=null +if(b==null)s=r +else s=b +return new A.Ox(f,d,c,new A.Ow(a,r,r,r,r),e,r,s,r)}, +aTc:function aTc(a){this.b=a}, +Ox:function Ox(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.at=f +_.ax=g +_.a=h}, +Pr:function Pr(a,b,c,d,e,f,g,h,i,j){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.z=g +_.at=h +_.cy=i +_.a=j}, +amm:function amm(a,b,c,d){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.w=0 +_.c=_.a=null}, +bgm:function bgm(a,b){this.a=a +this.b=b}, +bgn:function bgn(a,b){this.a=a +this.b=b}, +bgo:function bgo(a,b){this.a=a +this.b=b}, +bgp:function bgp(a,b){this.a=a +this.b=b}, +a6B:function a6B(){}, +aMN:function aMN(a){this.a=a}, +bpr(a){return A.bio(new A.bjc(a,null),t.Wd)}, +bio(a,b){return A.bUA(a,b,b)}, +bUA(a,b,c){var s=0,r=A.n(c),q,p=2,o,n=[],m,l,k +var $async$bio=A.j(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:l=A.bpO() +k=l==null?new A.Af(A.a([],t.E5)):l +p=3 +s=6 +return A.f(a.$1(k),$async$bio) +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 +J.A0(k) +s=n.pop() +break +case 5:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$bio,r)}, +bjc:function bjc(a,b){this.a=a +this.b=b}, +a7e:function a7e(a,b){this.a=a +this.b=b}, +WR:function WR(){}, +WS:function WS(){}, +aqm:function aqm(){}, +aqn:function aqn(){}, +aqo:function aqo(){}, +bp3(a,b,c){var s,r +if(t.v.b(a))s=a.name==="AbortError" +else s=!1 +if(s)A.blW(new A.a7e("Request aborted by `abortTrigger`",c.b),b) +if(!(a instanceof A.wi)){r=J.p(a) +if(B.c.ba(r,"TypeError: "))r=B.c.bE(r,11) +a=new A.wi(r,c.b)}A.blW(a,b)}, +Vp(a,b){return A.bU2(a,b)}, +bU2(a1,a2){var $async$Vp=A.j(function(a3,a4){switch(a3){case 2:n=q +s=n.pop() +break +case 1:o=a4 +s=p}while(true)switch(s){case 0:d={} +c=a2.body +b=c==null?null:c.getReader() +if(b==null){s=1 +break}m=!1 +d.a=!1 +p=4 +c=t.u9,g=t.v +case 7:if(!!0){s=8 +break}s=9 +return A.j9(A.jc(b.read(),g),$async$Vp,r) +case 9:l=a4 +if(l.done){m=!0 +s=8 +break}f=l.value +f.toString +s=10 +q=[1,5] +return A.j9(A.bor(c.a(f)),$async$Vp,r) +case 10:s=7 +break +case 8:n.push(6) +s=5 +break +case 4:p=3 +a=o +k=A.v(a) +j=A.aT(a) +d.a=!0 +A.bp3(k,j,a1) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +s=!m?11:12 +break +case 11:p=14 +s=17 +return A.j9(A.jc(b.cancel(),t.X).po(new A.bia(),new A.bib(d)),$async$Vp,r) +case 17:p=2 +s=16 +break +case 14:p=13 +a0=o +i=A.v(a0) +h=A.aT(a0) +if(!d.a)A.bp3(i,h,a1) +s=16 +break +case 13:s=2 +break +case 16:case 12:s=n.pop() +break +case 6:case 1:return A.j9(null,0,r) +case 2:return A.j9(o,1,r)}}) +var s=0,r=A.bp1($async$Vp,t.Cm),q,p=2,o,n=[],m,l,k,j,i,h,g,f,e,d,c,b,a,a0 +return A.bp4(r)}, +Af:function Af(a){this.b=!1 +this.c=a}, +aqL:function aqL(a){this.a=a}, +bia:function bia(){}, +bib:function bib(a){this.a=a}, +Ai:function Ai(a){this.a=a}, +arh:function arh(a){this.a=a}, +brt(a,b){return new A.wi(a,b)}, +wi:function wi(a,b){this.a=a +this.b=b}, +bvv(a,b){var s=new Uint8Array(0),r=$.bB0() +if(!r.b.test(a))A.V(A.hY(a,"method","Not a valid method")) +r=t.N +return new A.aPa(B.a5,s,a,b,A.kR(new A.aqm(),new A.aqn(),r,r))}, +aPa:function aPa(a,b,c,d,e){var _=this +_.x=a +_.y=b +_.a=c +_.b=d +_.r=e +_.w=!1}, +aPf(a){var s=0,r=A.n(t.Wd),q,p,o,n,m,l,k,j +var $async$aPf=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=3 +return A.f(a.w.EG(),$async$aPf) +case 3:p=c +o=a.b +n=a.a +m=a.e +l=a.c +k=A.bXX(p) +j=p.length +k=new A.D9(k,n,o,l,j,m,!1,!0) +k.a07(o,j,m,!1,!0,l,n) +q=k +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$aPf,r)}, +bhu(a){var s=a.h(0,"content-type") +if(s!=null)return A.bmT(s) +return A.bmS("application","octet-stream",null)}, +D9:function D9(a,b,c,d,e,f,g,h){var _=this +_.w=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h}, +Op:function Op(){}, +a8X:function a8X(a,b,c,d,e,f,g,h){var _=this +_.w=a +_.a=b +_.b=c +_.c=d +_.d=e +_.e=f +_.f=g +_.r=h}, +bFS(a,b){var s=new A.Hv(new A.arX(),A.w(t.N,b.i("aO")),b.i("Hv<0>")) +s.G(0,a) +return s}, +Hv:function Hv(a,b,c){this.a=a +this.c=b +this.$ti=c}, +arX:function arX(){}, +bmT(a){return A.bY4("media type",a,new A.aIc(a))}, +bmS(a,b,c){var s=t.N +s=c==null?A.w(s,s):A.bFS(c,s) +return new A.L2(a.toLowerCase(),b.toLowerCase(),new A.li(s,t.G5))}, +L2:function L2(a,b,c){this.a=a +this.b=b +this.c=c}, +aIc:function aIc(a){this.a=a}, +aIe:function aIe(a){this.a=a}, +aId:function aId(){}, +bVH(a){var s +a.ad4($.bE0(),"quoted string") +s=a.gX2().h(0,0) +return A.aoK(B.c.R(s,1,s.length-1),$.bE_(),new A.biS(),null)}, +biS:function biS(){}, +b9(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.AM(i)}, +AM:function AM(a){this.a=a}, +bJC(a,b,c,d,e,f,g,h){var s,r +A.f3(f,"other") +A.f3(a,"howMany") +s=B.e.aA(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.bJB(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.hY(a,"howMany","Invalid plural argument"))}}, +bJB(a,b,c){var s,r,q,p,o +$.eo=b +s=$.bU_=c +$.eL=B.e.aa(b) +r=""+b +q=B.c.dV(r,".") +s=q===-1?0:r.length-q-1 +s=Math.min(s,3) +$.fe=s +p=A.ds(Math.pow(10,s)) +s=B.e.an(B.e.dv(b*p),p) +$.rH=s +A.bUy($.fe,s) +o=A.lt(a,A.bXj(),new A.aCT()) +if($.btG==o){s=$.btH +s.toString +return s}else{s=$.bqE().h(0,o) +$.btH=s +$.btG=o +s.toString +return s}}, +aCT:function aCT(){}, +aQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return new A.ua(i,c,f,k,p,n,h,e,m,g,j,b,d)}, +ua:function ua(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}, +brU(a,b){var s=A.lt(b,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS(a) +return s}, +bGP(a){var s=A.lt(a,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS("d") +return s}, +bll(a){var s=A.lt(a,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS("MMMd") +return s}, +au3(a){var s=A.lt(a,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS("MMMEd") +return s}, +au4(a){var s=A.lt(a,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS("y") +return s}, +blp(a){var s=A.lt(a,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS("yMd") +return s}, +blo(a){var s=A.lt(a,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS("yMMMd") +return s}, +blm(a){var s=A.lt(a,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS("yMMMM") +return s}, +bln(a){var s=A.lt(a,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS("yMMMMEEEEd") +return s}, +bGQ(a){var s=A.lt(a,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS("m") +return s}, +bGR(a){var s=A.lt(a,A.ph(),null) +s.toString +s=new A.kA(new A.kB(),s) +s.mS("s") +return s}, +ZO(a){return J.cO($.bku(),a)}, +kA:function kA(a,b){this.a=a +this.c=b +this.d=null}, +kB:function kB(){}, +bn5(a,b){return A.buG(b,new A.aKF(a))}, +aKD(a){return A.buG(a,new A.aKE())}, +buG(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.lt(a2,A.bWE(),null) +a1.toString +s=t.vg.a($.bqD().h(0,a1)) +r=$.bqs() +q=s.ay +p=a3.$1(s) +o=s.r +if(p==null)o=new A.a55(o,null) +else{o=new A.a55(o,null) +new A.aKC(s,new A.aSZ(p),!1,q,q,o).aGV()}n=o.b +m=o.a +l=o.d +k=o.c +j=o.e +i=B.d.aa(Math.log(j)/$.bDW()) +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.aKB(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.cD(""),s.e.charCodeAt(0)-r)}, +bn6(a){return $.bqD().N(0,a)}, +buH(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}, +aKB:function aKB(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}, +aKF:function aKF(a){this.a=a}, +aKE:function aKE(){}, +aKG:function aKG(a,b,c){this.a=a +this.b=b +this.c=c}, +a55:function a55(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}, +aKC:function aKC(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}, +aSZ:function aSZ(a){this.a=a +this.b=0}, +bwI(a,b){return new A.Eg(a,b,A.a([],t.s))}, +bzc(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}, +Gn(a){var s,r,q,p +if(a==null){if(A.biH()==null)$.boS=$.bpL +s=A.biH() +s.toString +return s}if(a==="C")return"en_ISO" +if(a.length<5)return a +r=A.bzc(a) +if(r===-1)return a +q=B.c.R(a,0,r) +p=B.c.bE(a,r+1) +if(p.length<=3)p=p.toUpperCase() +return q+"_"+p}, +lt(a,b,c){var s,r,q,p +if(a==null){if(A.biH()==null)$.boS=$.bpL +s=A.biH() +s.toString +return A.lt(s,b,c)}if(b.$1(a))return a +r=[A.bWe(),A.bWg(),A.bWf(),new A.bkc(),new A.bkd(),new A.bke()] +for(q=0;q<6;++q){p=r[q].$1(a) +if(b.$1(p))return p}return(c==null?A.bWd():c).$1(a)}, +bUl(a){throw A.d(A.bl('Invalid locale "'+a+'"',null))}, +bpk(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}, +bAS(a){var s,r +if(a==="invalid")return"in" +s=a.length +if(s<2)return a +r=A.bzc(a) +if(r===-1)if(s<4)return a.toLowerCase() +else return a +return B.c.R(a,0,r).toLowerCase()}, +Eg:function Eg(a,b,c){this.a=a +this.b=b +this.c=c}, +a1S:function a1S(a){this.a=a}, +bkc:function bkc(){}, +bkd:function bkd(){}, +bke:function bke(){}, +bSv(){return B.aD}, +bUy(a,b){if(b===0){$.bij=0 +return}for(;B.e.an(b,10)===0;){b=B.d.dv(b/10);--a}$.bij=b}, +bRN(){if($.eL===1&&$.fe===0)return B.aF +return B.aD}, +bRG(){if($.eo===1)return B.aF +return B.aD}, +bRI(){if($.eL===0||$.eo===1)return B.aF +return B.aD}, +bRJ(){var s,r,q=$.eo +if(q===0)return B.rn +if(q===1)return B.aF +if(q===2)return B.fn +if(B.b.p(A.a([3,4,5,6,7,8,9,10],t.t),B.e.an($.eo,100)))return B.cp +s=J.mU(89,t.S) +for(r=0;r<89;++r)s[r]=r+11 +if(B.b.p(s,B.e.an($.eo,100)))return B.cb +return B.aD}, +bRO(){var s,r=$.eo,q=B.e.an(r,10) +if(q===1&&B.e.an(r,100)!==11)return B.aF +if(q===2||q===3||q===4){s=B.e.an(r,100) +s=!(s===12||s===13||s===14)}else s=!1 +if(s)return B.cp +s=!0 +if(q!==0)if(q!==5)if(q!==6)if(q!==7)if(q!==8)if(q!==9){r=B.e.an(r,100) +r=r===11||r===12||r===13||r===14}else r=s +else r=s +else r=s +else r=s +else r=s +else r=s +if(r)return B.cb +return B.aD}, +bRP(){var s,r=$.eo,q=B.e.an(r,10) +if(q===1){s=B.e.an(r,100) +s=!(s===11||s===71||s===91)}else s=!1 +if(s)return B.aF +if(q===2){r=B.e.an(r,100) +r=!(r===12||r===72||r===92)}else r=!1 +if(r)return B.fn +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.e.an($.eo,100))||B.b.p(A.a([70,71,72,73,74,75,76,77,78,79],r),B.e.an($.eo,100))||B.b.p(A.a([90,91,92,93,94,95,96,97,98,99],r),B.e.an($.eo,100)))}else r=!1 +if(r)return B.cp +r=$.eo +if(r!==0&&B.e.an(r,1e6)===0)return B.cb +return B.aD}, +bRQ(){var s,r,q=$.fe===0 +if(q){s=$.eL +s=B.e.an(s,10)===1&&B.e.an(s,100)!==11}else s=!1 +if(!s){s=$.rH +s=B.e.an(s,10)===1&&B.e.an(s,100)!==11}else s=!0 +if(s)return B.aF +s=!1 +if(q){q=$.eL +r=B.e.an(q,10) +if(r===2||r===3||r===4){q=B.e.an(q,100) +q=!(q===12||q===13||q===14)}else q=s}else q=s +if(!q){q=$.rH +s=B.e.an(q,10) +if(s===2||s===3||s===4){q=B.e.an(q,100) +q=!(q===12||q===13||q===14)}else q=!1}else q=!0 +if(q)return B.cp +return B.aD}, +bRU(){var s=$.eL +if(s===1&&$.fe===0)return B.aF +if(s!==0&&B.e.an(s,1e6)===0&&$.fe===0)return B.cb +return B.aD}, +bSj(){var s=$.eL +if(s===1&&$.fe===0)return B.aF +if((s===2||s===3||s===4)&&$.fe===0)return B.cp +if($.fe!==0)return B.cb +return B.aD}, +bSk(){var s=$.eo +if(s===0)return B.rn +if(s===1)return B.aF +if(s===2)return B.fn +if(s===3)return B.cp +if(s===6)return B.cb +return B.aD}, +bSl(){if($.eo!==1)if($.bij!==0){var s=$.eL +s=s===0||s===1}else s=!1 +else s=!0 +if(s)return B.aF +return B.aD}, +bSI(){if($.eo===1)return B.aF +var s=$.eL +if(s!==0&&B.e.an(s,1e6)===0&&$.fe===0)return B.cb +return B.aD}, +bS3(){var s,r,q=$.fe===0 +if(q){s=$.eL +s=s===1||s===2||s===3}else s=!1 +r=!0 +if(!s){if(q){s=B.e.an($.eL,10) +s=!(s===4||s===6||s===9)}else s=!1 +if(!s)if(!q){q=B.e.an($.rH,10) +q=!(q===4||q===6||q===9)}else q=!1 +else q=r}else q=r +if(q)return B.aF +return B.aD}, +bSQ(){var s=$.eL,r=s!==0 +if(!r||s===1)return B.aF +if(r&&B.e.an(s,1e6)===0&&$.fe===0)return B.cb +return B.aD}, +bSR(){var s=$.eo +if(s===1)return B.aF +if(s===2)return B.fn +if(s===3||s===4||s===5||s===6)return B.cp +if(s===7||s===8||s===9||s===10)return B.cb +return B.aD}, +bT7(){var s,r=$.eL +if(!(r===1&&$.fe===0))s=r===0&&$.fe!==0 +else s=!0 +if(s)return B.aF +if(r===2&&$.fe===0)return B.fn +return B.aD}, +bSM(){var s=$.eL +if(s===0||s===1)return B.aF +return B.aD}, +bTv(){var s,r=$.bij +if(r===0){s=$.eL +s=B.e.an(s,10)===1&&B.e.an(s,100)!==11}else s=!1 +if(!s)r=B.e.an(r,10)===1&&B.e.an(r,100)!==11 +else r=!0 +if(r)return B.aF +return B.aD}, +bRH(){var s=$.eo +if(s===0||s===1)return B.aF +return B.aD}, +bTB(){if(B.e.an($.eo,10)===1&&!B.b.p(A.a([11,12,13,14,15,16,17,18,19],t.t),B.e.an($.eo,100)))return B.aF +var s=t.t +if(B.b.p(A.a([2,3,4,5,6,7,8,9],s),B.e.an($.eo,10))&&!B.b.p(A.a([11,12,13,14,15,16,17,18,19],s),B.e.an($.eo,100)))return B.cp +if($.rH!==0)return B.cb +return B.aD}, +bTC(){var s,r,q=!0 +if(B.e.an($.eo,10)!==0){s=t.t +if(!B.b.p(A.a([11,12,13,14,15,16,17,18,19],s),B.e.an($.eo,100)))q=$.fe===2&&B.b.p(A.a([11,12,13,14,15,16,17,18,19],s),B.e.an($.rH,100))}if(q)return B.rn +q=$.eo +s=!0 +if(!(B.e.an(q,10)===1&&B.e.an(q,100)!==11)){q=$.fe===2 +if(q){r=$.rH +r=B.e.an(r,10)===1&&B.e.an(r,100)!==11}else r=!1 +if(!r)q=!q&&B.e.an($.rH,10)===1 +else q=s}else q=s +if(q)return B.aF +return B.aD}, +bTH(){if($.fe===0){var s=$.eL +s=B.e.an(s,10)===1&&B.e.an(s,100)!==11}else s=!1 +if(!s){s=$.rH +s=B.e.an(s,10)===1&&B.e.an(s,100)!==11}else s=!0 +if(s)return B.aF +return B.aD}, +bTK(){var s=$.eo +if(s===1)return B.aF +if(s===2)return B.fn +if(s===0||B.b.p(A.a([3,4,5,6,7,8,9,10],t.t),B.e.an($.eo,100)))return B.cp +if(B.b.p(A.a([11,12,13,14,15,16,17,18,19],t.t),B.e.an($.eo,100)))return B.cb +return B.aD}, +bTZ(){var s,r,q,p=$.eL,o=p===1 +if(o&&$.fe===0)return B.aF +s=$.fe===0 +r=!1 +if(s){q=B.e.an(p,10) +if(q===2||q===3||q===4){r=B.e.an(p,100) +r=!(r===12||r===13||r===14)}}if(r)return B.cp +r=!1 +if(s)if(!o){o=B.e.an(p,10) +o=o===0||o===1}else o=r +else o=r +r=!0 +if(!o){if(s){o=B.e.an(p,10) +o=o===5||o===6||o===7||o===8||o===9}else o=!1 +if(!o)if(s){p=B.e.an(p,100) +p=p===12||p===13||p===14}else p=!1 +else p=r}else p=r +if(p)return B.cb +return B.aD}, +bU0(){var s=$.eL,r=s!==0 +if(!r||s===1)return B.aF +if(r&&B.e.an(s,1e6)===0&&$.fe===0)return B.cb +return B.aD}, +bTI(){var s,r,q,p,o +if($.eL===1&&$.fe===0)return B.aF +s=!0 +if($.fe===0){r=$.eo +if(r!==0)if(r!==1){q=J.mU(19,t.S) +for(p=0;p<19;p=o){o=p+1 +q[p]=o}s=B.b.p(q,B.e.an($.eo,100))}else s=!1}if(s)return B.cp +return B.aD}, +bU4(){var s,r,q,p=$.fe===0 +if(p){s=$.eL +s=B.e.an(s,10)===1&&B.e.an(s,100)!==11}else s=!1 +if(s)return B.aF +s=!1 +if(p){r=$.eL +q=B.e.an(r,10) +if(q===2||q===3||q===4){s=B.e.an(r,100) +s=!(s===12||s===13||s===14)}}if(s)return B.cp +s=!0 +if(!(p&&B.e.an($.eL,10)===0)){if(p){r=B.e.an($.eL,10) +r=r===5||r===6||r===7||r===8||r===9}else r=!1 +if(!r)if(p){p=B.e.an($.eL,100) +p=p===11||p===12||p===13||p===14}else p=!1 +else p=s}else p=s +if(p)return B.cb +return B.aD}, +bUc(){var s=$.eo,r=!0 +if(s!==0)if(s!==1)s=$.eL===0&&$.rH===1 +else s=r +else s=r +if(s)return B.aF +return B.aD}, +bUe(){var s,r=$.fe===0 +if(r&&B.e.an($.eL,100)===1)return B.aF +if(r&&B.e.an($.eL,100)===2)return B.fn +if(r){s=B.e.an($.eL,100) +s=s===3||s===4}else s=!1 +if(s||!r)return B.cp +return B.aD}, +bWq(a){return $.bqE().N(0,a)}, +n9:function n9(a,b){this.a=a +this.b=b}, +dU(a){if(a.length!==0)A.w0(B.Qs,A.F(A.dm(a,"Exception: ",""),null))}, +cx(a){if(a.length!==0)A.w0(B.uq,A.F(A.dm(a,"Exception: ",""),null))}, +mx(a){var s=a==null?null:A.F(a,null) +A.w0(B.Qt,s==null?A.F("Loading...",null):s)}, +w0(a,b){var s=0,r=A.n(t.H) +var $async$w0=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:switch(a.a){case 0:A.bnJ(null,b,B.Ji,t.z) +break +case 2:A.bnJ(null,A.F(b,null),B.Jj,t.z) +break +case 1:A.bnJ(B.Qm,A.F(b,null),B.Jk,t.z) +break +case 4:A.bNI(A.F(b,null),t.z) +break +case 3:break +case 5:A.bnK(A.F(b,null)) +break +default:break}return A.l(null,r)}}) +return A.m($async$w0,r)}, +A8:function A8(a,b){this.a=a +this.b=b}, +atw(a,b,c){var s +if($.ZE)return +$.ZE=!0 +s=t.P +A.jd(A.Y(B.d.aa(76.5),0,0,0),!1,new A.atx(a,b),a,null,!0,!0,t.z).ak(new A.aty(),s) +if(c>0)A.eC(A.dA(0,0,c),new A.atz(a),s)}, +blf(a){if($.ZE){A.bU(a,!0).cV() +$.ZE=!1}}, +atx:function atx(a,b){this.a=a +this.b=b}, +aty:function aty(){}, +atz:function atz(a){this.a=a}, +bFs(a){switch(a.toLowerCase()){case"dev":case"development":return B.ur +case"staging":case"test":return B.us +case"pre":case"pre-prod":return B.ut +case"prod":case"production":return B.kx +default:return B.kx}}, +apJ(a){switch(a.toLowerCase()){case"en":return B.bS +case"zh":return B.uw +default:return B.bS}}, +apT(a){switch(a.toUpperCase()){case"CN":return B.ux +case"US":return B.c_ +default:return B.c_}}, +apI(a,b,c){return new A.apH(b,c,a,B.c_,B.bS)}, +bFp(a,b){var s,r,q,p="baseUrl",o="US",n="https://pre.api.snapmaker.cn/api",m="https://pre.id.snapmaker.com/api" +switch(A.bFs(a).a){case 0:A.as().$1("AppConfig.dev locale: "+b.j(0)) +s=A.bu(p) +if(b.gdi()==="CN")s.b="http://172.18.1.124:8100/api" +else s.b="http://172.17.100.32/api" +r=A.apI(s.b2(),B.ur,b) +q=b.gdi() +r.Q=A.apT(q==null?o:q) +r.as=A.apJ(b.gda(0)) +return r +case 1:s=A.bu(p) +if(b.gdi()==="CN")s.b=n +else s.b=m +r=A.apI(s.b2(),B.us,b) +q=b.gdi() +r.Q=A.apT(q==null?o:q) +r.as=A.apJ(b.gda(0)) +return r +case 2:s=A.bu(p) +if(b.gdi()==="CN")s.b=n +else s.b=m +r=A.apI(s.b2(),B.ut,b) +q=b.gdi() +r.Q=A.apT(q==null?o:q) +r.as=A.apJ(b.gda(0)) +return r +case 3:s=A.bu(p) +if(b.gdi()==="CN")s.b="https://api.snapmaker.cn/api" +else s.b="https://id.snapmaker.com/api" +r=A.apI(s.b2(),B.kx,b) +q=b.gdi() +r.Q=A.apT(q==null?o:q) +r.as=A.apJ(b.gda(0)) +return r}}, +bFq(){var s,r,q,p +try{A.u("AppConstants.defineLocale: "+B.bS.gcq(0)+"-"+B.c_.gcq(0),null) +r=B.bS.gcq(0) +q=B.c_.gcq(0) +return r+"-"+q}catch(p){s=A.v(p) +A.u("AppConstants.envLocale error: "+J.p(s),null) +r=B.bS.gcq(0) +q=B.c_.gcq(0) +return r+"-"+q}}, +Wl(){var s=0,r=A.n(t.H),q,p +var $async$Wl=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.u("clearAppEnvironment start",null) +q=$.Wk +s=q==null?3:5 +break +case 3:p=$ +s=6 +return A.f(A.i7(),$async$Wl) +case 6:b=p.Wk=b +s=4 +break +case 5:b=q +case 4:s=2 +return A.f(b.C(0,"app_environment"),$async$Wl) +case 2:A.u("clearAppEnvironment end",null) +return A.l(null,r)}}) +return A.m($async$Wl,r)}, +Wm(){var s=0,r=A.n(t.H) +var $async$Wm=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.u("clearAppLanguageAndCountryCode start",null) +s=2 +return A.f(A.Wq(),$async$Wm) +case 2:s=3 +return A.f(A.Wr(),$async$Wm) +case 3:A.u("clearAppLanguageAndCountryCode end",null) +return A.l(null,r)}}) +return A.m($async$Wm,r)}, +Wn(a,b){var s=0,r=A.n(t.H),q,p,o,n,m,l +var $async$Wn=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:p=$.Wk +n=A +m=J +s=p==null?2:4 +break +case 2:l=$ +s=5 +return A.f(A.i7(),$async$Wn) +case 5:d=l.Wk=d +s=3 +break +case 4:d=p +case 3:o=n.dk(m.i(d.a,"app_environment")) +p=o==null +if(!p&&o.length!==0)a=o +if(a==null)q="prod" +else q=a +$.f2.b=A.bFp(q,b) +s=p?6:7 +break +case 6:s=8 +return A.f($.Wk.BN("String","app_environment",q),$async$Wn) +case 8:A.as().$1("\u4fdd\u5b58\u5f53\u524d\u7684env\u73af\u5883: "+q) +case 7:A.as().$1("env: "+A.c(o)+", locale: "+b.j(0)) +return A.l(null,r)}}) +return A.m($async$Wn,r)}, +bFr(){var s,r,q,p +try{q=$.bC().c.f +s=q.length===0?B.ql:B.b.gW(q) +return s}catch(p){r=A.v(p) +q=A.c(r) +$.ac().a3("\u83b7\u53d6\u7cfb\u7edf\u8bed\u8a00\u5931\u8d25: "+q)}return new A.dX(B.bS.gcq(0),null,B.c_.gcq(0))}, +w1(){return A.a([new A.dX(B.bS.gcq(0),null,null),new A.dX(B.uw.gcq(0),null,B.ux.gcq(0))],t.ss)}, +bFt(a){var s,r,q,p=null +A.as().$1("getI18nLocale - locale: "+a.j(0)) +if(B.b.p(A.w1(),a)){A.u("getI18nLocale - supportedLocales: "+a.j(0),p) +return a}s=A.w1() +r=A.af(s).i("bh<1>") +q=A.a8(new A.bh(s,new A.apM(a),r),!0,r.i("B.E")) +A.u("getI18nLocale - newLocales.toString(): "+A.jr(q,"[","]"),p) +if(q.length!==0){A.u("getI18nLocale - newLocales.first: "+A.c(B.b.gW(q)),p) +return B.b.gW(q)}A.u("getI18nLocale-fallbackLocale: "+new A.dX(B.bS.gcq(0),p,B.c_.gcq(0)).j(0),p) +return new A.dX(B.bS.gcq(0),p,B.c_.gcq(0))}, +H0(a){var s=0,r=A.n(t.da),q,p,o,n,m,l,k,j +var $async$H0=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:j=$ +s=3 +return A.f(A.i7(),$async$H0) +case 3:j.t2=c +s=4 +return A.f(A.apN(),$async$H0) +case 4:p=c +if(p==null)p="" +$.apS=p +A.u("initialLocale - localeString: "+a+", languageCode: "+p,null) +A.u("initialLocale - supportedLocales: "+A.c(A.w1()),null) +A.u("initialLocale - fallbackLocale: "+new A.dX(B.bS.gcq(0),null,B.c_.gcq(0)).j(0),null) +A.u("initialLocale - filePath: assets/i10n",null) +s=a.length!==0?5:7 +break +case 5:o=A.bw3(a) +B.bS.gcq(0) +B.c_.gcq(0) +if(B.b.p(A.w1(),o)){q=o +s=1 +break}else{q=new A.dX(B.b.h9(A.w1(),new A.apO(o),new A.apP()).gda(0),null,o.gdi()) +s=1 +break}s=6 +break +case 7:s=8 +return A.f(A.apL(),$async$H0) +case 8:n=c +if(n==null)n="" +m=A.bFr() +A.u("initialLocale - systemLocale: "+m.j(0)+", languageCode: "+$.apS+", countryCode: "+n+", localeString: "+a,null) +if(n.length===0){n=m.gdi() +if(n==null)n=""}p=$.apS +if(p.length===0)p=$.apS=m.gda(0) +l=A.bw3(p+(n.length!==0?"-"+n:"")) +if(B.b.p(A.w1(),l)){A.u("initialLocale - supportedLocales-1: "+l.j(0),null) +q=l +s=1 +break}else{k=B.b.h9(A.w1(),new A.apQ(l),new A.apR()) +A.u("initialLocale - matchingLocale: "+k.j(0),null) +q=k +s=1 +break}case 6:case 1:return A.l(q,r)}}) +return A.m($async$H0,r)}, +Wr(){var s=0,r=A.n(t.H),q,p +var $async$Wr=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:q=$.t2 +s=q==null?3:5 +break +case 3:p=$ +s=6 +return A.f(A.i7(),$async$Wr) +case 6:b=p.t2=b +s=4 +break +case 5:b=q +case 4:s=2 +return A.f(b.C(0,"app_language_code"),$async$Wr) +case 2:return A.l(null,r)}}) +return A.m($async$Wr,r)}, +apN(){var s=0,r=A.n(t.T),q,p,o,n,m +var $async$apN=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=$.t2 +o=A +n=J +s=p==null?3:5 +break +case 3:m=$ +s=6 +return A.f(A.i7(),$async$apN) +case 6:b=m.t2=b +s=4 +break +case 5:b=p +case 4:q=o.dk(n.i(b.a,"app_language_code")) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$apN,r)}, +Wq(){var s=0,r=A.n(t.H),q,p +var $async$Wq=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:q=$.t2 +s=q==null?3:5 +break +case 3:p=$ +s=6 +return A.f(A.i7(),$async$Wq) +case 6:b=p.t2=b +s=4 +break +case 5:b=q +case 4:s=2 +return A.f(b.C(0,"app_country_code"),$async$Wq) +case 2:return A.l(null,r)}}) +return A.m($async$Wq,r)}, +apL(){var s=0,r=A.n(t.T),q,p,o,n,m +var $async$apL=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=$.t2 +o=A +n=J +s=p==null?3:5 +break +case 3:m=$ +s=6 +return A.f(A.i7(),$async$apL) +case 6:b=m.t2=b +s=4 +break +case 5:b=p +case 4:q=o.dk(n.i(b.a,"app_country_code")) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$apL,r)}, +A9:function A9(a,b){this.a=a +this.b=b}, +Wp:function Wp(a,b){this.a=a +this.b=b}, +Ws:function Ws(a,b){this.a=a +this.b=b}, +apH:function apH(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.z="" +_.Q=d +_.as=e}, +apM:function apM(a){this.a=a}, +apO:function apO(a){this.a=a}, +apP:function apP(){}, +apQ:function apQ(a){this.a=a}, +apR:function apR(){}, +Wt:function Wt(a,b){var _=this +_.a=null +_.b=a +_.c=b +_.d=null}, +apU:function apU(a){this.a=a}, +acS:function acS(){}, +bXo(a){var s=document +s.toString +s=B.v5.adw(s) +return A.Ri(s.a,s.b,new A.bjV(a),!1,s.$ti.c)}, +bjV:function bjV(a){this.a=a}, +apy:function apy(){}, +jh(a){if(typeof a=="string")return A.bGj(a) +if(A.nO(a))return A.bGi(a) +if(a instanceof A.A)return new A.nf(a.gk(a)>>>16&255,a.gk(a)>>>8&255,a.gk(a)&255,a.gk(a)>>>24&255) +if(a instanceof A.nf)return a +return B.jM}, +bGj(a){var s,r,q,p,o,n,m,l=null +a=B.c.cw(a) +if(B.c.ba(a,"rgba")){s=A.bB("rgba?\\((\\d+),\\s*(\\d+),\\s*(\\d+),\\s*([\\d.]+)\\)",!0,!1,!1).pE(a) +if(s==null)A.V(A.bl("Invalid CSS rgba: "+a,l)) +r=s.b +q=r[1] +q.toString +q=A.c0(q,l) +p=r[2] +p.toString +p=A.c0(p,l) +o=r[3] +o.toString +o=A.c0(o,l) +r=r[4] +r.toString +return new A.nf(q,p,o,B.d.aa(A.pi(r)*255))}r=A.dm(a.toUpperCase(),"#","") +n=A.dm(r,"0X","") +m=B.c.ba(a,"#")||!B.c.ba(a.toUpperCase(),"0X") +r=n.length +if(r===6)return new A.nf(A.c0(B.c.R(n,0,2),16),A.c0(B.c.R(n,2,4),16),A.c0(B.c.R(n,4,6),16),255) +else if(r===8)return m?new A.nf(A.c0(B.c.R(n,0,2),16),A.c0(B.c.R(n,2,4),16),A.c0(B.c.R(n,4,6),16),A.c0(B.c.R(n,6,8),16)):new A.nf(A.c0(B.c.R(n,2,4),16),A.c0(B.c.R(n,4,6),16),A.c0(B.c.R(n,6,8),16),A.c0(B.c.R(n,0,2),16)) +A.dJ("Invalid color format: "+a) +return B.jM}, +bGi(a){var s,r,q,p,o,n,m="Invalid color format: " +try{s=B.e.hY(a,16) +if(J.aM(s)===6){r=A.c0(J.kv(s,0,2),16) +q=A.c0(J.kv(s,2,4),16) +p=A.c0(J.kv(s,4,6),16) +return new A.nf(r,q,p,255)}if(J.aM(s)===8){r=A.c0(J.kv(s,0,2),16) +q=A.c0(J.kv(s,2,4),16) +p=A.c0(J.kv(s,4,6),16) +o=A.c0(J.kv(s,6,8),16) +return new A.nf(r,q,p,o)}return B.jM}catch(n){A.dJ(m+a) +return B.jM}A.dJ(m+a) +return B.jM}, +brC(a){return"0x"+B.c.fk(B.e.hY(a.d,16),2,"0")+B.c.fk(B.e.hY(a.a,16),2,"0")+B.c.fk(B.e.hY(a.b,16),2,"0")+B.c.fk(B.e.hY(a.c,16),2,"0")}, +nf:function nf(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +pO:function pO(a,b,c){this.a=a +this.b=b +this.c=c}, +bm7(a){var s=0,r=A.n(t.Eg),q,p +var $async$bm7=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=A.bnh(a) +if(p!=null){q=p +s=1 +break}throw A.d(A.ae("\u8bbe\u5907\u5bc6\u94a5IV\u672a\u521d\u59cb\u5316\u6216\u5f53\u524d\u8bbe\u5907\u672a\u8bbe\u7f6e\uff0c\u8bf7\u786e\u4fdd\u8bbe\u5907\u5df2\u8fde\u63a5")) +case 1:return A.l(q,r)}}) +return A.m($async$bm7,r)}, +bm5(a,b){var s=0,r=A.n(t.qP),q,p +var $async$bm5=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:A.u(" PasswordSaltManager getCurrentDeviceSn: "+A.c($.bnf),null) +p=$.bnf +p.toString +q=A.bm6(a,b,p) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$bm5,r)}, +bm6(a,b,c){var s=0,r=A.n(t.qP),q +var $async$bm6=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:q=A.az8(a,b,c) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$bm6,r)}, +az8(a,b,c){return A.bIx(a,b,c)}, +bIx(a2,a3,a4){var s=0,r=A.n(t.qP),q,p=2,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$az8=A.j(function(a5,a6){if(a5===1){o=a6 +s=p}while(true)switch(s){case 0:p=4 +n=a2 +if(J.aM(n)<16){q=new A.wt(!1,"\u6587\u4ef6\u683c\u5f0f\u9519\u8bef\uff1a\u6587\u4ef6\u592a\u5c0f",null,null) +s=1 +break}s=7 +return A.f(A.bm7(a4),$async$az8) +case 7:m=a6 +d=J.i(m,"key") +d.toString +l=d +d=J.i(m,"iv") +d.toString +k=d +j=J.bqV(n,16) +if(J.aM(j)===0){q=new A.wt(!1,"\u6587\u4ef6\u683c\u5f0f\u9519\u8bef\uff1a\u6ca1\u6709\u627e\u5230\u52a0\u5bc6\u6570\u636e",null,null) +s=1 +break}c=new A.ari(new A.apd()) +c.b=new Uint8Array(16) +c.c=new Uint8Array(16) +c.d=new Uint8Array(16) +i=c +d=i +b=k +a=b.length +d.toString +if(a!==16)A.V(A.bl("Initialization vector must be the same length as block size",null)) +d.e=!1 +a=d.b +a===$&&A.b() +B.G.nr(a,0,b) +b=d.c +b.toString +B.G.nr(b,0,d.b) +b=d.d +B.G.ru(b,0,b.length,0) +d=d.a +d.d=d.e=d.f=d.r=d.c=0 +d.a=!1 +d.b=null +d.aVw(!1,new A.aD7(l)) +h=A.bIy(i,j) +g=A.bIz(h) +f="decrypted_file" +if(B.c.bF(a3,".enc"))f=B.c.R(a3,0,a3.length-4) +$.bng.h(0,a4) +q=new A.wt(!0,"\u6587\u4ef6\u89e3\u5bc6\u6210\u529f\uff01",g,l) +s=1 +break +p=2 +s=6 +break +case 4:p=3 +a1=o +e=A.v(a1) +d=J.p(e) +q=new A.wt(!1,"\u89e3\u5bc6\u5931\u8d25: "+d,null,null) +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$az8,r)}, +bIy(a,b){var s,r,q,p,o,n,m,l=b.length,k=l/16|0,j=new Uint8Array(l) +for(s=0;sp||s===0)return a +for(r=p-s,q=r;q")) +s.q(0,a) +return new A.WV(a,s,b.i("WV<0>"))}, +WV:function WV(a,b,c){this.a=a +this.b=b +this.$ti=c}, +mZ:function mZ(a,b){this.a=a +this.$ti=b}, +a87:function a87(a,b){this.a=a +this.b=0 +this.c=b}, +Ea:function Ea(){}, +a9F:function a9F(a){this.a=a}, +bOQ(a){var s,r,q,p,o=a.h(0,"deviceId") +if(o==null)o="" +s=a.h(0,"file") +if(s==null)s="" +r=a.h(0,"fileBytes") +q=a.h(0,"filename") +if(q==null)q="" +p=a.h(0,"ownerId") +if(p==null)p=-1 +return new A.aVf(o,s,q,r,p,A.w(t.N,t.z))}, +aVg(a){var s=0,r=A.n(t.N),q,p +var $async$aVg=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=B.oC.b4(a) +q=B.ct.gk5().b4(p.a) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$aVg,r)}, +aVf:function aVf(a,b,c,d,e,f){var _=this +_.b=a +_.e=b +_.f=c +_.r=d +_.w=e +_.x=f +_.y=$}, +dy:function dy(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}, +arD:function arD(a,b,c){this.a=a +this.b=b +this.c=c}, +arE:function arE(a){this.a=a}, +asY:function asY(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +atL:function atL(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +atp:function atp(a,b){this.a=a +this.b=b}, +ato:function ato(a,b){this.a=a +this.b=b}, +ZD:function ZD(a,b){this.a=a +this.b=b}, +atP:function atP(a,b){this.a=a +this.b=b}, +atQ:function atQ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +atd:function atd(a,b){this.b=a +this.c=b}, +atc:function atc(a,b){this.a=a +this.b=b}, +atg:function atg(a,b){this.a=a +this.b=b}, +ath:function ath(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +atf:function atf(a,b){this.a=a +this.b=b}, +ate:function ate(a,b,c){this.a=a +this.b=b +this.c=c}, +atr:function atr(a,b){this.a=a +this.b=b}, +ats:function ats(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=6}, +atq:function atq(a){this.a=a}, +ZI:function ZI(a,b,c){this.a=a +this.b=b +this.c=c}, +az9:function az9(a,b){this.a=a +this.b=b}, +aAo:function aAo(a,b){this.a=a +this.b=b}, +zQ(a){var s="result",r="message",q=J.a0(a) +if(q.h(a,s)!=null&&t.f.b(q.h(a,s))){if(!J.e(q.h(a,"jsonrpc"),"2.0"))return B.Nk +if(J.e(J.i(q.h(a,s),"state"),"error")){if(typeof J.i(q.h(a,s),r)=="string")return new A.b3(!1,A.c(J.i(q.h(a,s),r))) +return new A.b3(!1,J.p(J.i(q.h(a,s),r)))}return B.Nm}return B.Nl}, +bpu(a){var s="error",r=J.a0(a) +if(r.h(a,"result")!=null&&t.f.b(r.h(a,"result"))){if(!J.e(r.h(a,"jsonrpc"),"2.0"))return B.Nk +if(r.h(a,s)!=null){if(t.f.b(r.h(a,s)))return new A.b3(!1,A.c(J.i(r.h(a,s),"code"))+":"+A.c(J.i(r.h(a,s),"message"))) +return new A.b3(!1,J.p(r.h(a,s)))}return B.Nm}return B.Nl}, +aBV:function aBV(){}, +aKI:function aKI(a){this.a=a}, +aMq:function aMq(a){this.a=a}, +CY:function CY(a,b){this.a=a +this.b=b}, +aNj:function aNj(a){this.a=a}, +aPn:function aPn(a){this.a=a}, +aRg:function aRg(a,b){this.a=a +this.b=b}, +aRh:function aRh(a,b){this.a=a +this.b=b}, +aRl:function aRl(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aRk:function aRk(a,b){this.a=a +this.b=b}, +aRm:function aRm(a){this.a=a}, +aRi:function aRi(a){this.a=a}, +aRj:function aRj(a){this.a=a}, +aSr:function aSr(a,b){this.a=a +this.b=b}, +aT4:function aT4(a,b){this.a=a +this.b=b}, +aT5:function aT5(a){this.a=a}, +aRp:function aRp(a,b){this.a=a +this.b=b}, +aRq:function aRq(a){this.a=a}, +aTz:function aTz(a){this.a=a}, +aue:function aue(a,b){this.a=a +this.c=b}, +lE:function lE(a,b){this.a=a +this.b=b}, +HJ:function HJ(a,b){this.a=a +this.b=b}, +aBW:function aBW(){}, +btU(a,b){var s,r,q,p,o,n,m=null,l="ip",k="clientId",j="publishTopics",i="subscribeTopics",h="accessCode",g=t.N,f=A.lB(B.dd,t.BO),e=A.lB("init",g),d=new A.oP() +d.b=1000*Date.now() +s=new A.oP() +s.b=1000*Date.now() +s=new A.aDr(A.w(g,t.V3),B.pV,new A.cd(m,m,t.zr),f,e,d,s,a,b) +if(a.h(0,l)==null||J.e(a.h(0,l),""))A.V(A.bl("address cannot be null",m)) +g=a.h(0,l) +f=A.c(a.h(0,k)) +e=a.h(0,"sn") +d=a.h(0,j) +r=a.h(0,i) +q=a.h(0,h) +if(q==null)q="12345678" +s.f=A.bmY(g,1884,f+"-try",e,m,d,r,q,m,m,m,m,m) +s.x=a.h(0,k) +q=a.h(0,l) +r=a.h(0,"port") +d=a.h(0,k) +e=a.h(0,"sn") +f=a.h(0,j) +g=a.h(0,i) +p=a.h(0,h) +o=a.h(0,"user") +n=a.h(0,"password") +s.r=A.bmY(q,r,d,e,m,f,g,p,a.h(0,"ca"),a.h(0,"cert"),a.h(0,"key"),n,o) +s.w="http://"+A.c(a.h(0,l)) +s.d=new A.mZ(new A.cd(m,m,t.L_),t.KQ) +s.a5q() +s.a5r() +s.aE0() +s.aE_() +return s}, +xo:function xo(a,b){this.a=a +this.b=b}, +aDr:function aDr(a,b,c,d,e,f,g,h,i){var _=this +_.d=$ +_.e=a +_.w=_.r=_.f=$ +_.y=_.x="" +_.z=b +_.at=_.as=_.Q=null +_.ax=c +_.ay=d +_.ch=e +_.CW=!0 +_.cx=f +_.cy=g +_.a=h +_.c=i}, +aDy:function aDy(a,b){this.a=a +this.b=b}, +aDz:function aDz(a,b,c){this.a=a +this.b=b +this.c=c}, +aDw:function aDw(a,b){this.a=a +this.b=b}, +aDx:function aDx(a,b,c){this.a=a +this.b=b +this.c=c}, +aDA:function aDA(a,b){this.a=a +this.b=b}, +aDB:function aDB(a,b,c){this.a=a +this.b=b +this.c=c}, +aDC:function aDC(a,b){this.a=a +this.b=b}, +aDv:function aDv(a){this.a=a}, +aDt:function aDt(a){this.a=a}, +aDu:function aDu(a){this.a=a}, +aDs:function aDs(a){this.a=a}, +bx2(a1,a2){var s,r,q,p,o,n,m,l,k,j,i=null,h="ip",g="link_mode",f="clientId",e="publishTopics",d="subscribeTopics",c="connected",b=t.N,a=A.lB(B.dd,t.BO),a0=new A.oP() +a0.b=1000*Date.now() +s=new A.oP() +s.b=1000*Date.now() +b=new A.aai(A.w(b,t.V3),B.kg,new A.cd(i,i,t.zr),a,a0,s,A.lB("init",b),a1,a2) +A.u("WcpConnection constructor start",i) +if(a1.h(0,h)==null||J.e(a1.h(0,h),""))A.V(A.bl("address cannot be null",i)) +A.as().$1("WcpConnection, endpoint.link_mode: "+A.c(a1.h(0,g))+",endpoint.ip: "+A.c(a1.h(0,h))) +a=J.p(a1.h(0,g))==="lan" +if(a)b.x=!0 +else if(J.p(a1.h(0,g))!=="wan")if(a1.h(0,g)==null||a1.h(0,h)!=null){s=J.p(a1.h(0,h)) +A.bJD(s) +A.bJE(s)}b.y=a1.h(0,f) +s=a1.h(0,"isLocalDevice") +b.dx=s==null?!1:s +A.u("WcpConnection constructor, endpoint: "+A.co(a1),i) +r=a0.aP() +if(a){a0=a1.h(0,h) +s=a1.h(0,"sn") +q=a1.h(0,e) +p=a1.h(0,d) +o=a1.h(0,"accessCode") +if(o==null)o="12345678" +n=a1.h(0,c) +if(n==null)n=!1 +b.f=A.aVZ(a0,1884,"orca-try-"+r,s,q,p,o,i,i,n,i,"lan")}a0=a1.h(0,h) +s=a1.h(0,"port") +q=a1.h(0,f) +p=a1.h(0,"sn") +o=a1.h(0,e) +n=a1.h(0,d) +m=a1.h(0,"ca") +l=a1.h(0,"cert") +k=a1.h(0,"key") +a=a?"lan":"wan" +j=a1.h(0,c) +b.r=A.aVZ(a0,s,q,p,o,n,i,m,l,j==null?!1:j,k,a) +b.w="http://"+A.c(a1.h(0,h)) +b.d=new A.mZ(new A.cd(i,i,t.L_),t.KQ) +b.a5Z() +b.a6_() +b.aFo() +b.aFn() +A.u("WcpConnection constructor end",i) +return b}, +z8:function z8(a,b){this.a=a +this.b=b}, +aai:function aai(a,b,c,d,e,f,g,h,i){var _=this +_.d=$ +_.e=a +_.f=null +_.w=_.r=$ +_.x=!1 +_.z=_.y="" +_.Q=b +_.ax=_.at=_.as=null +_.ay=c +_.ch=d +_.CW=!0 +_.cx=e +_.cy=f +_.db=g +_.dx=!1 +_.a=h +_.c=i}, +aWb:function aWb(a,b,c){this.a=a +this.b=b +this.c=c}, +aWc:function aWc(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aW9:function aW9(a,b,c){this.a=a +this.b=b +this.c=c}, +aWa:function aWa(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aWf:function aWf(a,b,c){this.a=a +this.b=b +this.c=c}, +aWg:function aWg(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aWd:function aWd(a,b){this.a=a +this.b=b}, +aW3:function aW3(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aW4:function aW4(a){this.a=a}, +aWe:function aWe(a,b){this.a=a +this.b=b}, +aW8:function aW8(a){this.a=a}, +aW6:function aW6(a){this.a=a}, +aW7:function aW7(a){this.a=a}, +aW5:function aW5(a){this.a=a}, +Ik:function Ik(){}, +In(a2){var s,r,q,p,o,n,m="endpoint",l="port",k="cert",j="secretId",i="secretKey",h="trustCert",g="clientId",f="clientid",e="topics",d="subscribe",c="subscribeTopics",b="publishTopics",a=t.s,a0=A.a([],a),a1=A.a([],a) +a=J.a0(a2) +if(a.h(a2,m)!=null&&!J.e(a.h(a2,m),""))s=a.h(a2,m) +else s=a.h(a2,"ip")!=null&&!J.e(a.h(a2,"ip"),"")?a.h(a2,"ip"):"" +r=a.h(a2,l)!=null&&!J.e(a.h(a2,l),"")?a.h(a2,l):8883 +if(a.h(a2,k)!=null&&!J.e(a.h(a2,k),""))q=a.h(a2,k) +else q=a.h(a2,j)!=null&&!J.e(a.h(a2,j),"")?a.h(a2,j):"" +if(a.h(a2,"key")!=null&&!J.e(a.h(a2,"key"),""))p=a.h(a2,"key") +else p=a.h(a2,i)!=null&&!J.e(a.h(a2,i),"")?a.h(a2,i):"" +if(a.h(a2,"ca")!=null&&!J.e(a.h(a2,"ca"),""))o=a.h(a2,"ca") +else o=a.h(a2,h)!=null&&!J.e(a.h(a2,h),"")?a.h(a2,h):"" +if(a.h(a2,g)!=null&&!J.e(a.h(a2,g),""))n=a.h(a2,g) +else n=a.h(a2,f)!=null&&!J.e(a.h(a2,f),"")?a.h(a2,f):"" +if(a.h(a2,e)!=null&&J.i(a.h(a2,e),d)!=null)a0=A.cN(J.i(a.h(a2,e),d),!0,t.N) +else if(a.h(a2,c)!=null)a0=A.cN(a.h(a2,c),!0,t.N) +if(a.h(a2,e)!=null&&J.i(a.h(a2,e),"publish")!=null)a1=A.cN(J.i(a.h(a2,e),"publish"),!0,t.N) +else if(a.h(a2,b)!=null)a1=A.cN(a.h(a2,b),!0,t.N) +return new A.Im(s,r,n,q,p,a0,a1,o)}, +Im:function Im(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}, +bs1(a){switch(a){case 0:return B.dK +case 1:return B.cw +case 2:return B.iU +case 3:return B.h7 +case 4:return B.cY +case 5:return B.iV +case 6:return B.h8 +case 10:return B.YF +default:return B.dK}}, +aNb(a){switch(a){case"ready":return B.akM +case"standby":return B.akN +case"printing":case"in_progress":return B.akO +case"paused":return B.Nf +case"cancelled":return B.akP +case"error":return B.akQ +case"completed":return B.akR +default:return B.rv}}, +mB:function mB(a,b){this.a=a +this.b=b}, +oH:function oH(a,b){this.a=a +this.b=b}, +AB:function AB(a,b){this.a=a +this.b=b}, +auG(a,b){var s=Date.now() +return new A.wy(a,b,new A.aS(s,0,!1))}, +wy:function wy(a,b,c){this.a=a +this.b=b +this.c=c}, +bs4(a){var s=new A.Pp(new A.a0D(new A.a3R(B.fY))) +return a?s.b10():s.ahu("6ba7b810-9dad-11d1-80b4-00c04fd430c8","com.snapmaker.lavaapp")}, +bs3(a){var s,r,q,p=t.N,o=A.w(p,p) +for(p=a.length,s=0;s1)o.n(0,q[1],r)}return o}, +wz(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.ch(o,j,h,r,n,a2,d,p,a1,a0,f,a,b,a4,i,s,k,a3,q,c,m,e,l,A.In(A.w(t.N,t.z)),g)}, +kE(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="link_mode",a6="deviceConnectionState",a7="certConfig",a8="port",a9="name",b0="dev_name",b1="device_name",b2="connected",b3=J.a0(b5),b4=b3.h(b5,a5) +if(b4==null)b4="wan" +if(b3.h(b5,a5)!=null)s=J.e(b3.h(b5,a5),"lan")?B.cY:B.cw +else s=b3.h(b5,a6)==null?B.dK:A.bs1(b3.h(b5,a6)) +r=b3.h(b5,"clientId") +q=r==null?b3.h(b5,"clientid"):r +if(q==null)q="" +if(!b3.N(b5,a7)||b3.h(b5,a7)==null){r=b3.h(b5,"ca") +if(r==null)r="" +p=b3.h(b5,"cert") +if(p==null)p="" +o=b3.h(b5,"key") +if(o==null)o="" +n=b3.h(b5,"ip") +if(n==null)n="" +m=b3.h(b5,a8) +if(m==null)m=1884 +l=b3.h(b5,"subscribeTopics") +if(l==null)l=[] +k=b3.h(b5,"publishTopics") +b3.n(b5,a7,A.C(["ca",r,"cert",p,"key",o,"clientId",q,"endpoint",n,"port",m,"subscribeTopics",l,"publishTopics",k==null?[]:k],t.N,t.z))}if(b3.h(b5,a9)!=null&&!J.e(b3.h(b5,a9),""))r=b3.h(b5,a9) +else if(b3.h(b5,b0)!=null&&!J.e(b3.h(b5,b0),""))r=b3.h(b5,b0) +else r=b3.h(b5,b1)!=null&&!J.e(b3.h(b5,b1),"")?b3.h(b5,b1):"" +p=b3.h(b5,"ip") +if(p==null)p="" +o=b3.h(b5,"id") +if(o==null)o=b3.h(b5,"dev_id") +if(o==null)o="" +if(typeof b3.h(b5,a8)=="string")n=A.c0(b3.h(b5,a8),null) +else{n=b3.h(b5,a8) +if(n==null)n=1884}m=b3.h(b5,b2) +if(m==null?A.mo(b3.h(b5,b2)):m)m=b3.h(b5,b2) +else m=typeof b3.h(b5,b2)=="number"&&!J.e(b3.h(b5,b2),0) +l=b3.h(b5,"img") +if(l==null)l=u.N +k=b3.h(b5,"preset_name") +if(k==null)k=b3.h(b5,"presetName") +if(k==null)k="" +j=b3.h(b5,"dev_id") +if(j==null)j=b3.h(b5,"devId") +if(j==null)j="" +i=b3.h(b5,"nozzle_sizes") +if(i==null)i=b3.h(b5,"nozzleSizes") +if(i==null)i=[] +h=b3.h(b5,"status") +if(h==null)h=0 +g=b3.h(b5,"online") +if(g==null)g=0 +f=b3.h(b5,"mac") +if(f==null)f="" +e=b3.h(b5,"productName") +if(e==null)e=b3.h(b5,"model_name") +if(e==null)e="" +d=b3.h(b5,"productCode") +if(d==null)d="" +c=b3.h(b5,"deviceModel") +if(c==null)c="" +b=b3.h(b5,"sn") +if(b==null)b=b3.h(b5,"sn") +if(b==null)b="" +a=b3.h(b5,"isBind") +if(a==null)a=!1 +a0=b3.h(b5,"accessCode") +a1=b3.h(b5,"authCode") +a2=b3.h(b5,"userid") +a3=b3.h(b5,"version") +if(a3==null)a3=b3.h(b5,"pro_version") +a4=A.wz(a0,a1,m,j,s,c,a3==null?"":a3,o,l,p,a,b4,B.cF,f,r,i,g,n,k,d,e,b,h,a2) +a4.CW=q +r=b3.h(b5,a7) +a4.id=A.In(r==null?A.w(t.N,t.z):r) +b3=b3.h(b5,"loginUser") +a4.fx=b3==null?A.w(t.N,t.z):b3 +return a4}, +ch:function ch(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=null +_.c="" +_.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 +_.CW=_.ch="" +_.cx=o +_.cy=p +_.db=q +_.dx=r +_.dy=s +_.fr=a0 +_.fx=a1 +_.fy=a2 +_.go=a3 +_.id=a4 +_.k1=a5 +_.k2=!1}, +blt(){var s=t.N,r=t.z +return new A.wA(B.dd,B.rv,new A.Mm(0,0,0,"","",B.cF,"",null),new A.IE(),A.w(s,t.iq),new A.Bx(0,0,0),new A.Pd(""),new A.we(B.C),new A.wP(0,0),new A.wP(0,0),A.CV(A.w(s,r)),new A.JV(0,"Idle"),A.bmV(A.w(s,r)),A.bti(A.w(s,r)),A.w(s,r),A.a([],t.s),A.boa(A.w(s,r)),A.bmP(A.w(s,r)),A.bm3(A.w(s,r)),A.bm2(A.w(s,r)),A.a([],t.qN),$.aW())}, +wA:function wA(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="" +_.b=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.x=g +_.y=h +_.z=i +_.Q=j +_.as=k +_.at=l +_.ax=m +_.ch=n +_.CW=o +_.cx=p +_.cy=q +_.db=r +_.dx=s +_.dy=a0 +_.fr=a1 +_.M$=0 +_.U$=a2 +_.aE$=_.ac$=0}, +bs2(a){var s,r,q,p,o,n,m,l="[Device]*************",k=null +A.u(l,k) +s=a.w +A.u("[Device] DeviceFactory createDevice model.key: "+s+", model.id: "+a.e+", model.sn: "+s+", model.deviceConnectionState: "+a.fy.j(0),k) +A.u("[Device]model.hashCode: "+A.at(a),k) +A.u(l,k) +s=A.a([],t.bh) +r=t.N +q=A.cN(B.abx,!0,r) +p=t.z +o=A.bs5(A.w(r,p)) +n=A.lB(A.blt(),t.Ky) +m=A.lB(A.C(["state","init","action","hold"],r,p),t.a) +return new A.Km(s,q,A.w(r,p),B.dd,B.XY,o,n,m,new A.cd(k,k,t.gW),new A.cd(k,k,t.Cx),new A.mZ(new A.cd(k,k,t.L_),t.KQ),A.a([],t.s),a,new A.aue(A.w(r,p),new A.Ld()))}, +Km:function Km(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var _=this +_.d=a +_.e=b +_.x=_.w=_.r=_.f=!1 +_.y=!0 +_.as=c +_.at=$ +_.ax=null +_.ay=d +_.ch=e +_.CW=f +_.cx=g +_.cy=h +_.db=i +_.dx=j +_.dy=k +_.fx=_.fr=null +_.fy=l +_.go=0 +_.a=m +_.b=n}, +aEH:function aEH(a){this.a=a}, +aEI:function aEI(a){this.a=a}, +aEJ:function aEJ(a){this.a=a}, +aEB:function aEB(a){this.a=a}, +aEC:function aEC(a){this.a=a}, +aEx:function aEx(a){this.a=a}, +aED:function aED(a){this.a=a}, +aEy:function aEy(a,b){this.a=a +this.b=b}, +aEK:function aEK(){}, +aEz:function aEz(a){this.a=a}, +aEA:function aEA(a){this.a=a}, +aEF:function aEF(){}, +aEG:function aEG(){}, +aEE:function aEE(a){this.a=a}, +bFT(a){var s,r=J.i(a,"color_data") +if(r==null||!t.j.b(r))return new A.we(B.C) +try{return new A.we(r)}catch(s){return new A.we(B.C)}}, +we:function we(a){this.a=a}, +as0:function as0(){}, +bls(a){var s="index",r="code",q="level",p="message",o=J.a0(a),n=o.h(a,"id")!=null&&o.h(a,"id")!=null?o.h(a,"id"):0,m=o.h(a,s)!=null&&o.h(a,s)!=null?o.h(a,s):0,l=o.h(a,r)!=null&&o.h(a,r)!=null?o.h(a,r):0,k=o.h(a,q)!=null&&o.h(a,q)!=null?o.h(a,q):0 +return new A.AS(n,m,l,k,o.h(a,p)!=null&&o.h(a,p)!=null?o.h(a,p):"")}, +AS:function AS(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bs5(c0){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="filament_feed left",b4="filament_feed right",b5="state",b6="extruder",b7=t.N,b8=A.w(b7,t.iq),b9=A.bu("filamentFeed") +try{p=J.dI(c0) +o=p.gdG(c0) +o.az(o,new A.auI(b8)) +o=t.z +s=p.h(c0,b3)!=null?J.mu(p.h(c0,b3),b7,o):A.w(b7,o) +r=p.h(c0,b4)!=null?J.mu(p.h(c0,b4),b7,o):A.w(b7,o) +b9.b=A.bm3(A.C([b3,s,b4,r],b7,o))}catch(n){q=A.v(n) +A.dJ("Error: "+A.c(q))}p=J.a0(c0) +o=p.h(c0,"webhooks") +if(o==null)o=A.w(b7,t.z) +m=J.a0(o) +l=m.h(o,b5) +if(l==null)l="" +o=m.h(o,"state_message") +if(o==null)o="" +m=p.h(c0,"print_stats") +if(m==null)m=A.w(b7,t.z) +k=J.a0(m) +j=k.h(m,"total_duration") +if(j==null)j=0 +i=k.h(m,"print_duration") +if(i==null)i=0 +h=k.h(m,"filament_used") +if(h==null)h=0 +g=k.h(m,b5) +if(g==null)g="" +f=k.h(m,"message") +if(f==null)f="" +e=k.h(m,"info") +if(e==null)e=A.w(b7,t.z) +d=k.h(m,"filename") +if(d==null)d="" +m=k.h(m,"fileMetadata") +k=p.h(c0,"display_status") +if(k==null)k=A.w(b7,t.z) +c=J.a0(k) +c.h(k,"progress") +c.h(k,"message") +k=p.h(c0,"heater_bed") +if(k==null)k=A.w(b7,t.z) +c=J.a0(k) +b=c.h(k,"target") +if(b==null)b=0 +a=c.h(k,"temperature") +if(a==null)a=0 +k=c.h(k,"power") +if(k==null)k=0 +c=p.h(c0,"virtual_sdcard") +c=A.boa(c==null?A.w(b7,t.z):c) +a0=p.h(c0,"gcode_move") +a0=A.bti(a0==null?A.w(b7,t.z):a0) +a1=p.h(c0,"toolhead") +if(a1==null)a1=A.w(b7,t.z) +a2=J.a0(a1) +A.uQ(A.bS(a2.h(a1,b6)!=null&&typeof a2.h(a1,b6)=="string"?a2.h(a1,b6):"")) +a2.h(a1,"homed_axes") +a2.h(a1,"axis_minimum") +a2.h(a1,"axis_maximum") +a2.h(a1,"print_time") +a2.h(a1,"stalls") +a2.h(a1,"estimated_print_time") +a3=a2.h(a1,b6) +if(a3==null)a3="" +a2.h(a1,"position") +a2.h(a1,"max_velocity") +a2.h(a1,"max_accel") +a2.h(a1,"minimum_cruise_ratio") +a2.h(a1,"square_corner_velocity") +a1=p.h(c0,"job") +if(a1==null)a1=A.w(b7,t.z) +a2=p.h(c0,"print_task_config") +a2=A.CV(a2==null?A.w(b7,t.z):a2) +p.h(c0,"configfile") +a4=p.h(c0,"led cavity_led") +a4=A.bFT(a4==null?A.w(b7,t.z):a4) +a5=p.h(c0,"fan") +a5=A.bsX(a5==null?A.w(b7,t.z):a5) +a6=p.h(c0,"fan_generic cavity_fan") +a6=A.bsX(a6==null?A.w(b7,t.z):a6) +a7=p.h(c0,"idle_timeout") +if(a7==null)a7=A.w(b7,t.z) +a8=J.a0(a7) +a9=a8.h(a7,"printing_time") +if(a9==null)a9=0 +a7=a8.h(a7,b5) +if(a7==null)a7="Idle" +a8=p.h(c0,"motion_report") +a8=A.bmV(a8==null?A.w(b7,t.z):a8) +b0=p.h(c0,"machine_state_manager") +b0=A.bmP(b0==null?A.w(b7,t.z):b0) +b1=b9.b2() +b2=p.h(c0,"filament_detect") +b7=A.bm2(b2==null?A.w(b7,t.z):b2) +J.cT(p.gd1(c0)) +return new A.auH(new A.aX0(l,o),b8,new A.Mm(j,i,h,g,f,e,d,m),new A.IE(),new A.Bx(a,b,k),c,a0,new A.Pd(a3),a4,a5,a6,a1,b0,a2,new A.JV(a9,a7),a8,b1,b7)}, +auH:function auH(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=i +_.y=j +_.z=k +_.Q=l +_.as=m +_.ax=n +_.ay=o +_.ch=p +_.CW=q +_.cx=r}, +auJ:function auJ(a,b){this.a=a +this.b=b}, +auI:function auI(a){this.a=a}, +IE:function IE(){}, +bsW(a){var s,r,q,p,o,n=J.a0(a),m=n.h(a,"target") +if(m==null)m=0 +s=n.h(a,"temperature") +if(s==null)s=0 +r=n.h(a,"power") +if(r==null)r=0 +q=n.h(a,"can_extrude") +if(q==null)q=!1 +p=n.h(a,"pressure_advance") +if(p==null)p=0 +o=n.h(a,"smooth_time") +if(o==null)o=0 +n=n.h(a,"state") +return new A.mK(0,s,m,r,q,p,o,n==null?"":n)}, +mK:function mK(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}, +bsX(a){var s=J.a0(a),r=s.h(a,"speed") +if(r==null)r=0 +s=s.h(a,"rpm") +return new A.wP(r,s==null?0:s)}, +wP:function wP(a,b){this.a=a +this.b=b}, +bm2(a){var s,r,q=J.a0(a) +if(q.h(a,"info")!=null){s=J.eX(t.j.a(q.h(a,"info")),new A.ayx(),t.Ll) +s=A.a8(s,!0,s.$ti.i("aN.E"))}else s=A.a([],t.b7) +r=q.h(a,"state")!=null?J.nX(J.VZ(q.h(a,"state"),new A.ayy())):[] +q=q.h(a,"config") +return new A.ayw(s,r,q==null?A.w(t.N,t.z):q)}, +bsY(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.pY(a5,m,a3,e,q,r,s,a0,a1,a,b,f,a6,l,g,h,j,k,c,i,p,a2,n,o,a4,d)}, +bsZ(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,a8 +try{r=J.a0(a9) +q=r.h(a9,"VENDOR") +if(q==null)q="" +p=r.h(a9,"MAIN_TYPE") +if(p==null)p="" +o=r.h(a9,"SUB_TYPE") +if(o==null)o="" +n=r.h(a9,"COLOR_NUMS") +if(n==null)n=1 +m=r.h(a9,"RGB_1") +if(m==null)m=0 +l=r.h(a9,"RGB_2") +if(l==null)l=0 +k=r.h(a9,"RGB_3") +if(k==null)k=0 +j=r.h(a9,"RGB_4") +if(j==null)j=0 +i=r.h(a9,"RGB_5") +if(i==null)i=0 +h=r.h(a9,"ALPHA") +if(h==null)h=0 +g=r.h(a9,"ARGB_COLOR") +if(g==null)g=0 +f=r.h(a9,"DIAMETER") +if(f==null)f=0 +e=r.h(a9,"WEIGHT") +if(e==null)e=0 +d=r.h(a9,"LENGTH") +if(d==null)d=0 +c=r.h(a9,"DRYING_TEMP") +if(c==null)c=0 +b=r.h(a9,"DRYING_TIME") +if(b==null)b=0 +a=r.h(a9,"HOTEND_MAX_TEMP") +if(a==null)a=0 +a0=r.h(a9,"HOTEND_MIN_TEMP") +if(a0==null)a0=0 +a1=r.h(a9,"BED_TEMP") +if(a1==null)a1=0 +a2=r.h(a9,"FIRST_LAYER_TEMP") +if(a2==null)a2=0 +a3=r.h(a9,"OTHER_LAYER_TEMP") +if(a3==null)a3=0 +a4=r.h(a9,"SN") +if(a4==null)a4="" +a5=r.h(a9,"MF_DATE") +if(a5==null)a5="" +a6=r.h(a9,"OFFICIAL") +if(a6==null)a6=!1 +a7=r.h(a9,"TAG_TYPE") +if(a7==null)a7="" +e=A.bsY(h,g,a1,r.h(a9,"CARD_UID"),n,f,c,b,a2,a,a0,d,p,a5,a6,a3,m,l,k,j,i,a4,o,a7,q,e) +return e}catch(a8){s=A.v(a8) +A.dJ("FilamentDetectInfo.fromJson error "+A.c(s)) +r=A.bsY(0,0,0,"",1,0,0,0,0,0,0,0,"","",!1,0,0,0,0,0,0,"","","","",0) +return r}}, +ayw:function ayw(a,b,c){this.a=a +this.b=b +this.c=c}, +ayx:function ayx(){}, +ayy:function ayy(){}, +ayz:function ayz(){}, +ayA:function ayA(){}, +ayB:function ayB(){}, +pY:function pY(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}, +bm3(a){var s="filament_feed left",r="filament_feed right",q=new A.ayD(),p=a.h(0,s)!=null?q.$1(a.h(0,s)):A.w(t.N,t.ik) +return new A.ayC(p,a.h(0,r)!=null?q.$1(a.h(0,r)):A.w(t.N,t.ik))}, +bm_(a,b){var s,r,q=J.a0(a),p=q.h(a,"filament_detected") +if(p==null)p=!1 +s=q.h(a,"disable_auto") +if(s==null)s=!1 +r=q.h(a,"channel_state") +if(r==null)r="wait_insert" +q=q.h(a,"channel_error") +return new A.k4(b,p,s,r,q==null?"ok":q)}, +ayC:function ayC(a,b){this.a=a +this.b=b}, +ayF:function ayF(){}, +ayG:function ayG(a){this.a=a}, +ayD:function ayD(){}, +ayE:function ayE(){}, +ayJ:function ayJ(a){this.a=a}, +ayK:function ayK(a){this.a=a}, +ayH:function ayH(){}, +ayI:function ayI(){}, +k4:function k4(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bti(a){var s="homing_origin",r="position",q="gcode_position",p=J.a0(a),o=p.h(a,"speed_factor") +if(o==null)o=0 +p.h(a,"speed") +p.h(a,"extrude_factor") +p.h(a,"absolute_coordinates") +p.h(a,"absolute_extrude") +if(p.h(a,s)!=null)A.cN(p.h(a,s),!0,t.Ci) +if(p.h(a,r)!=null)A.cN(p.h(a,r),!0,t.Ci) +if(p.h(a,q)!=null)A.cN(p.h(a,q),!0,t.Ci) +return new A.aAp(o)}, +aAp:function aAp(a){this.a=a}, +Bx:function Bx(a,b,c){this.a=a +this.b=b +this.c=c}, +aBX:function aBX(){}, +JV:function JV(a,b){this.a=a +this.b=b}, +bmP(a){var s=J.a0(a),r=s.h(a,"main_state") +if(r==null)r=0 +s=s.h(a,"action_code") +return new A.aFx(r,s==null?0:s)}, +aFx:function aFx(a,b){this.a=a +this.b=b}, +bmV(a){var s="live_position",r="live_velocity",q="live_extruder_velocity",p=J.a0(a),o=p.h(a,s)!=null?A.cN(p.h(a,s),!0,t.Ci):A.a([0,0,0,0],t.a0),n=typeof p.h(a,r)=="number"?p.h(a,r):0 +return new A.a48(o,n,typeof p.h(a,q)=="number"?p.h(a,q):0)}, +a48:function a48(a,b,c){this.a=a +this.b=b +this.c=c}, +aIT:function aIT(){}, +Mm:function Mm(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}, +bv9(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){return new A.qE(n,m,l,g,h,k,e,q,a,o,p,i,j,f,b,d,c)}, +CV(a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a +try{r=J.a0(a0) +q=r.h(a0,"filament_vendor") +if(q==null)q=[] +p=r.h(a0,"filament_type") +if(p==null)p=[] +o=r.h(a0,"filament_sub_type") +if(o==null)o=[] +n=r.h(a0,"filament_color") +if(n==null)n=[] +m=r.h(a0,"filament_color_rgba") +if(m==null)m=[] +l=r.h(a0,"filament_official") +if(l==null)l=[] +k=r.h(a0,"extruder_map_table") +if(k==null)k=[] +j=r.h(a0,"filament_edit") +if(j==null)j=[] +i=r.h(a0,"filament_exist") +if(i==null)i=[] +h=r.h(a0,"extruders_used") +if(h==null)h=[] +g=r.h(a0,"time_lapse_camera") +if(g==null)g=!1 +f=r.h(a0,"auto_bed_leveling") +if(f==null)f=!1 +e=r.h(a0,"flow_calibrate") +if(e==null)e=!1 +d=r.h(a0,"shaper_calibrate") +if(d==null)d=!1 +c=r.h(a0,"auto_replenish_filament") +if(c==null)c=!1 +b=r.h(a0,"can_auto_replenish") +if(b==null)b=!1 +r=r.h(a0,"auto_replenish_index") +r=A.bv9(f,c,r==null?0:r,b,k,h,n,m,j,i,l,o,p,q,e,d,g) +return r}catch(a){s=A.v(a) +r=A.ae("PrintTaskConfig.fromJson error: "+J.p(s)) +throw A.d(r)}}, +qE:function qE(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}, +aNc:function aNc(){}, +aNd:function aNd(){}, +aNe:function aNe(a,b){this.a=a +this.b=b}, +aNg:function aNg(a){this.a=a}, +Pd:function Pd(a){this.r=a}, +boa(a){var s,r,q,p=J.a0(a),o=p.h(a,"file_position") +if(o==null)o=0 +s=p.h(a,"file_size") +if(s==null)s=0 +r=p.h(a,"file_path") +if(r==null)r="" +q=p.h(a,"is_active") +if(q==null)q=!1 +p=p.h(a,"progress") +return new A.aVN(o,s,r,q,p==null?0:p)}, +aVN:function aVN(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aX0:function aX0(a,b){this.a=a +this.b=b}, +aC2:function aC2(){}, +Ld:function Ld(){}, +bP3(a){var s,r,q +try{s=B.a7.jo(0,a,null) +if(J.cO(s,"jsonrpc")&&J.e(J.i(s,"jsonrpc"),"2.0"))return s +else{A.as().$1("[WCP]handleJsonRpc error: not match format, data: "+a) +return A.w(t.N,t.z)}}catch(q){r=A.v(q) +A.as().$1("[WCP]handleJsonRpc error: "+J.p(r)) +return A.w(t.N,t.z)}}, +aaj:function aaj(){}, +bNs(){var s=new A.oP() +s.b=1000*Date.now() +return s}, +oP:function oP(){this.b=this.a=0}, +aut(a,b,c){var s=0,r=A.n(t.y),q,p,o,n +var $async$aut=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:s=3 +return A.f(A.Ty().oo("/user/device/checkAuth",B.jP,A.C(["deviceId",b,"certId",a,"sn",c],t.N,t.z)),$async$aut) +case 3:n=e +if(n.a){q=!0 +s=1 +break}p=n.c +o=n.b +p=A.wx(A.Ir(p,o),o) +throw A.d(p) +case 1:return A.l(q,r)}}) +return A.m($async$aut,r)}, +blr(){var s="aws" +return A.bH6()}, +bH6(){var s=0,r=A.n(t.N),q,p +var $async$blr=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p="aws" +q="-----BEGIN CERTIFICATE-----\nMIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF\nADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6\nb24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL\nMAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv\nb3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj\nca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM\n9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw\nIFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6\nVOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L\n93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm\njgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC\nAYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA\nA4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI\nU5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs\nN+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv\no/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU\n5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy\nrqXRfboQnoZsG4q5WTP468SQvvG5\n-----END CERTIFICATE-----" +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$blr,r)}, +aus(a){var s=0,r=A.n(t.F9),q +var $async$aus=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=3 +return A.f(A.Ty().oo("/user/device/connect/auth",B.cJ,a),$async$aus) +case 3:q=c +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$aus,r)}, +a_7(a){return A.bH5(a)}, +bH5(a){var s=0,r=A.n(t.xh),q,p=2,o,n=[],m,l,k,j,i,h,g,f +var $async$a_7=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +A.u("fetchUserAwsIoTConfig userid: "+a+", start",null) +s=7 +return A.f(A.blr(),$async$a_7) +case 7:m=c +s=8 +return A.f(A.Ty().b_K("/user/device/getMqttCert"),$async$a_7) +case 8:l=c +if(l.a){k=A.In(l.d) +k.w=m +q=k +n=[1] +s=5 +break}else{A.as().$1("fetchUserAwsIoTConfig get failed, code: "+l.c+", msg: "+l.b) +j=A.Ir(l.c,l.b) +if(j!=null){h=A.wx(j,l.b) +throw A.d(h)}h=A.wx(B.po,"Exception: "+l.c+":"+l.b) +throw A.d(h)}n.push(6) +s=5 +break +case 4:p=3 +f=o +i=A.v(f) +A.as().$1("fetchUserAwsIoTConfig userid: "+a+", error: "+J.p(i)) +throw f +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.as().$1("fetchUserAwsIoTConfig userid: "+a+" finally") +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$a_7,r)}, +auv(a){var s=0,r=A.n(t.y),q,p,o,n +var $async$auv=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:if(a.h(0,"deviceId")==null||J.e(a.h(0,"deviceId"),"")){$.ac().a3("unBindDevice deviceId is null or empty") +throw A.d(A.ae("deviceId is null or empty"))}s=3 +return A.f(A.Ty().oo("/user/device/connect/auth",B.cJ,a),$async$auv) +case 3:p=c +if(p.a||p.c===602e3){q=!0 +s=1 +break}o=p.c +n=p.b +o=A.wx(A.Ir(o,n),n) +throw A.d(o) +case 1:return A.l(q,r)}}) +return A.m($async$auv,r)}, +a_8(){var s=0,r=A.n(t.j),q,p,o,n,m +var $async$a_8=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:n=A.C(["name",null,"mac",null,"sn",null,"productName",null,"productCode",null,"pageIndex",null,"pageRows",null],t.N,t.z) +s=3 +return A.f(A.Ty().oo("/user/device/list",B.cJ,n),$async$a_8) +case 3:m=b +if(m.a){p=m.d +if(t.j.b(p)){q=p +s=1 +break}throw A.d(A.bl("response.data is not list, currentType is "+J.ah(p).j(0),null))}p=m.c +o=m.b +p=A.wx(A.Ir(p,o),o) +throw A.d(p) +case 1:return A.l(q,r)}}) +return A.m($async$a_8,r)}, +auu(a,b){var s=0,r=A.n(t.a),q,p,o,n,m +var $async$auu=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:s=3 +return A.f(A.Ty().oo("/user/device/info",B.jP,A.C(["deviceId",a,"sn",b],t.N,t.z)),$async$auu) +case 3:m=d +if(m.a){p=m.d +if(t.f.b(p)){q=t.a.a(p) +s=1 +break}o=m.c +n=m.b +$.ac().a3("Failed to fetch device info: "+o+", msg: "+n) +throw A.d(A.bl("response.data is not map, currentType is "+J.ah(p).j(0),null))}p=m.c +o=m.b +p=A.wx(A.Ir(p,o),o) +throw A.d(p) +case 1:return A.l(q,r)}}) +return A.m($async$auu,r)}, +Ty(){var s,r=$.f2.eg() +r=r.c +s=new A.bdQ() +s.a0c(r,!1) +return s}, +bdQ:function bdQ(){this.a=$}, +b5(a){var s,r,q,p,o,n +try{if($.ji.h(0,a.w)!=null&&$.ji.h(0,a.w) instanceof A.Km){o=$.ji.h(0,a.w) +s=o==null?t.aB.a(o):o +if(s.a.fy.gcq(0)!==a.fy.gcq(0)||s.a.d!==a.d||s.a.gnM(0)!==a.gnM(0)||s.a.e!==a.e){A.as().$1("*************") +A.as().$1("[Device]DeviceService getDevice, update Device model, "+s.a.fy.gcq(0)+" != "+a.fy.gcq(0)+" || "+s.a.d+" != "+a.d+" || "+s.a.gnM(0)+" != "+a.gnM(0)+" || "+s.a.e+" != "+a.e+" ") +s.a.ahm(a.ao(),"DeviceService getDevice") +A.as().$1("[Device]DeviceService getDevice, update Device model complete")}return s}r=A.bs2(a) +$.ji.n(0,a.w,r) +return r}catch(n){q=A.v(n) +A.as().$1("DeviceService getDevice error: "+J.p(q)) +p=A.bs2(a) +$.ji.n(0,a.w,p) +return p}}, +he(a,b){var s,r,q,p=null,o=A.y($.ji).i("aR<1>") +A.u("DeviceService removeDevice start, _connectedDeviceList.keys.toString: "+A.tM(new A.aR($.ji,o),"(",")"),p) +s=a==null +r=s?p:a.w +s=s?p:A.at(a) +A.u("DeviceService removeDevice start, key: "+b+", deviceModel.key: "+A.c(r)+", model.hashCode: "+A.c(s),p) +q=b +if($.ji.h(0,q)!=null){s=$.ji.h(0,q) +A.u("DeviceService removeDevice start, _connectedDeviceList[removeKey].hashCode: "+A.c(s==null?p:A.at(s)),p) +s=$.ji.h(0,q) +if(s!=null)s.m() +s=$.ji.h(0,q) +s=s==null?p:A.at(s) +r=$.ji.h(0,q) +r=r==null?p:r.a.j(0) +A.u("DeviceService removeDevice start, _connectedDeviceList[removeKey].dispose end, device.dispose: "+A.c(s)+", devicemodel: "+A.c(r),p) +$.ji.C(0,q) +A.u("DeviceService removeDevice complete, _connectedDeviceList.keys.toString: "+A.tM(new A.aR($.ji,o),"(",")"),p)}A.u("DeviceService removeDevice end, _connectedDeviceList.keys.toString: "+A.tM(new A.aR($.ji,o),"(",")"),p)}, +bHf(){$.av6.V(0) +var s=$.av7 +if(s==null){s=$.p_ +if(s==null){s=A.aag() +$.p_=s}s=$.av7=s}s.alD(A.C(["last_time",15],t.N,t.z)).cv(new A.av9(),new A.ava(),t.P) +s=$.av7 +if(s!=null){s=s.d +new A.aG(s,A.y(s).i("aG<1>")).bL(new A.avb())}return}, +bHg(){var s,r,q +try{$.av6.V(0) +r=$.bsj;(r==null?$.bsj=A.bHz():r).f_(0) +r=$.av7 +if(r!=null)r.alK()}catch(q){s=A.v(q) +A.as().$1("DiscoveryService stopDiscoveryDevice error: "+J.p(s))}}, +av9:function av9(){}, +ava:function ava(){}, +avb:function avb(){}, +av8:function av8(){}, +kT:function kT(a,b){this.a=a +this.b=b}, +CU:function CU(a,b){this.a=a +this.b=b}, +H8:function H8(a,b){this.a=a +this.b=b}, +Il:function Il(a,b){this.a=a +this.b=b}, +Ir(a,b){return B.b.h9(B.a6g,new A.auC(a),new A.auD(a,b))}, +wx(a,b){return new A.k1(a,b)}, +hd:function hd(a,b,c,d){var _=this +_.c=a +_.d=b +_.a=c +_.b=d}, +auC:function auC(a){this.a=a}, +auD:function auD(a,b){this.a=a +this.b=b}, +k1:function k1(a,b){this.a=a +this.b=b}, +wR:function wR(a,b,c){this.a=a +this.b=b +this.c=c}, +z4:function z4(a,b,c){this.a=a +this.b=b +this.c=c}, +a8o:function a8o(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.r=f +_.w=g +_.x=h}, +AU:function AU(a){var _=this +_.e=_.b=_.a=null +_.M$=0 +_.U$=a +_.aE$=_.ac$=0}, +ar9:function ar9(a,b){var _=this +_.a=null +_.b=a +_.c=b +_.d=!1}, +ar8:function ar8(){}, +avg:function avg(a){this.a=a}, +WI:function WI(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.f=c +_.r=d +_.w=e +_.a=f}, +aq8:function aq8(a){this.a=a}, +Xi:function Xi(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +HG:function HG(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 +_.Q=i +_.a=j}, +Ql:function Ql(){this.d=$ +this.c=this.a=null}, +brY(a,b,c){var s +if($.au6.h(0,a)===!0){$.ZP.n(0,a,c) +return}$.ZP.n(0,a,c) +s=$.ZQ.h(0,a) +if(s!=null)s.S(0) +$.ZQ.n(0,a,A.bZ(b,new A.au7(a)))}, +brX(a){var s=$.ZQ.h(0,a) +if(s!=null)s.S(0) +$.ZQ.n(0,a,null) +$.au6.n(0,a,!1) +$.ZP.n(0,a,null)}, +au7:function au7(a){this.a=a}, +bHi(a,b){A.q(b) +switch(a.a){case 0:return B.UH +case 1:case 2:case 3:case 4:case 5:case 6:case 8:case 9:case 10:case 11:return B.Xn +case 7:return B.WR +case 12:default:return B.VG}}, +bHj(a){var s=null +switch(a.a){case 0:return A.F("Idle",s) +case 1:return A.F("Working",s) +case 2:return A.F("XYZ calibrating",s) +case 3:return A.F("Heated bed Calibrating",s) +case 4:return A.F("Flow Calibrating",s) +case 5:return A.F("Vibration Compensation Calibrating",s) +case 6:return A.F("Updating",s) +case 7:return A.F("Error",s) +case 12:return A.F("Offline",s) +case 8:return A.F("Manual Adjusting Spring Screw",s) +case 9:return A.F("Auto Loading",s) +case 10:return A.F("Unloading",s) +case 11:return A.F("Manual Loading",s)}}, +bs8(a){switch(B.d.aA(a)){case 0:return B.Z8 +case 1:return B.wu +case 2:return B.Zc +case 3:return B.Zd +case 4:return B.Ze +case 5:return B.Zf +case 6:return B.Zg +case 7:return B.wv +case 8:return B.Zh +case 9:return B.Zi +case 10:return B.Z9 +case 11:return B.Za +default:return B.Zb}}, +bHh(a){var s=null +switch(B.d.aA(a)){case 0:return"" +case 1:return A.F("Homing",s) +case 2:return A.F("PEI sheet placement detection in progress...",s) +case 128:return A.F("Resuming printing...",s) +case 129:return A.F("Paused",s) +case 130:return A.F("Resuming print...",s) +case 131:return A.F("Auto-reloading filament...",s) +case 132:return A.F("Checking toolheads...",s) +case 133:return A.F("Auto-loading filament...",s) +case 134:return A.F("Pre-extruding...",s) +case 192:return A.F("Cleaning Nozzle 1 (1/4)",s) +case 193:return A.F("Cleaning Nozzle 2 (2/4)",s) +case 194:return A.F("Cleaning Nozzle 3 (3/4)",s) +case 195:return A.F("Cleaning Nozzle 4 (4/4)",s) +case 196:return A.F("Calibrating Toolhead 1...",s) +case 197:return A.F("Calibrating Toolhead 2...",s) +case 198:return A.F("Calibrating Toolhead 3...",s) +case 199:return A.F("Calibrating Toolhead 4...",s) +case 200:return A.F("Wiping Nozzle...",s) +case 201:return A.F("Cooling Nozzle...",s) +case 256:return A.F("Leveling progress...",s) +case 320:return A.F("Toolhead 1 Calibrating extrusion flow",s) +case 321:return A.F("Toolhead 2 Calibrating extrusion flow",s) +case 322:return A.F("Toolhead 3 Calibrating extrusion flow",s) +case 323:return A.F("Toolhead 4 Calibrating extrusion flow",s) +case 384:return A.F("Calibrating vibration compensation...",s) +case 512:return A.F("Reset to Initial Position",s) +case 513:return A.F("Sampling to Calculate Reference Height",s) +case 514:return A.F("Adjust Leveling Wheels",s) +case 515:return A.F("Re-checking reference points...",s) +case 576:return A.F("Auto Loading",s) +case 640:return A.F("Unloading",s) +case 704:return A.F("Manual Loading",s) +default:return""}}, +jj:function jj(a,b){this.a=a +this.b=b}, +bXA(a,b,c,d,e){return A.bXz(B.t,new A.bk2(null,d,b),a,!1,!0,!0,!1,!1,e)}, +bk2:function bk2(a,b,c){this.a=a +this.b=b +this.c=c}, +bk1:function bk1(a){this.a=a}, +az2(a,b){if(a.length===0&&b.length===0)return"" +if(B.b.p($.blb,b))return a+" "+b +if(b==="Support")return"Support for "+a +return b+" "+a}, +bt_(a){var s=A.jh(a) +s=A.Y(s.d,s.a,s.b,s.c) +s=$.bla.h(0,s.a) +return s==null?"":s}, +a05(){var s=0,r=A.n(t.H),q=1,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 +var $async$a05=A.j(function(c2,c3){if(c2===1){p=c3 +s=q}while(true)switch(s){case 0:q=3 +a5=$.asV +s=a5.a===0?6:7 +break +case 6:s=8 +return A.f($.vX().X4("packages/lava_device_control/assets/files/filament.json"),$async$a05) +case 8:o=c3 +n=B.a7.ei(0,o) +a5=$.asV=A.f7(n,t.N,t.z) +case 7:if($.asW.a===0){a6=a5.h(0,"filament") +m=a6==null?[]:a6 +a5=t.N +a7=t.Y_ +l=A.w(a5,a7) +for(a8=J.ay(m),a9=t.Vg;a8.u();){k=a8.gI(a8) +b0=J.i(k,"vendor") +j=b0==null?"":b0 +i=J.p(j) +b1=J.i(k,"materials") +h=b1==null?[]:b1 +g=A.a([],a9) +for(b2=J.ay(h);b2.u();){f=b2.gI(b2) +b3=J.i(f,"material") +e=b3==null?"":b3 +b4=J.i(f,"series") +d=b4==null?[]:b4 +for(b5=J.ay(d);b5.u();){c=b5.gI(b5) +b6=J.i(c,"serie") +b=b6==null?"":b6 +J.dN(g,new A.z4(i,J.p(e),J.p(b)))}}J.bT(l,i,g)}$.asW=A.f7(l,a5,a7)}if($.blb.length===0){b7=$.asV.h(0,"filament_special_series") +a=b7==null?[]:b7 +a5=J.eX(a,new A.az3(),t.N) +$.blb=A.a8(a5,!0,a5.$ti.i("aN.E"))}a5=$.asU +if(a5.length===0){b8=$.asV.h(0,"filament_color") +a0=b8==null?[]:b8 +a5=t.pu +a7=J.eX(a0,new A.az4(),a5) +a1=A.a8(a7,!0,a7.$ti.i("aN.E")) +a5=$.asU=A.cN(a1,!0,a5)}if($.bla.a===0)for(a7=a5.length,b9=0;b90)o.push(""+s+"d") +if(r>0)o.push(""+r+"h") +if(q>0)o.push(""+q+"m") +else if(p>0&&r===0&&s===0)o.push("< 1m") +return o.length===0?"N/A":B.b.bJ(o," ")}}, +aNf:function aNf(a,b){this.a=a +this.b=b}, +aO_(a,b,c,d,e,f){return new A.a6C(b,f,e,a,null)}, +t4:function t4(a,b){this.a=a +this.b=b}, +a6C:function a6C(a,b,c,d,e){var _=this +_.c=a +_.f=b +_.r=c +_.w=d +_.a=e}, +aO0:function aO0(a){this.a=a}, +aAe:function aAe(){}, +aET:function aET(){}, +ht:function ht(a,b){this.a=a +this.b=b}, +aDD(){var s,r,q,p=null,o=t.N,n=t.CX,m=t.gW,l=A.blt(),k=A.wz("12345678","",!1,"",B.dK,"","","",u.N,"",!1,"wan",B.cF,"","",B.C,0,1883,p,"","","",0,""),j=A.a([],t.bh),i=t.H7,h=A.a([],i),g=A.a([],i) +i=A.a([],i) +s=A.lB(A.w(o,n),t.Rd) +r=$.aW() +q=$.bB3() +o=new A.dW(A.w(o,n),A.w(o,n),new A.cd(p,p,m),l,B.iP,k,A.w(o,t.a),j,h,g,i,s,new A.cS(B.bj,r),q,new A.cd(p,p,m),A.lB(A.w(o,t.th),t.LB),$.bBw(),r) +o.aqQ() +return o}, +xr(a){var s=0,r=A.n(t.H),q +var $async$xr=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:A.Z(B.f,"[LavaDeviceVM] _saveLanOnlyDeviceModels, kIsWeb || kIsWasm, skip") +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$xr,r)}, +bmF(a){return A.bKk(a)}, +bKk(a){var s=0,r=A.n(t.H),q +var $async$bmF=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:A.Z(B.f,"[LavaDeviceVM] _loadLanOnlyDevicesFromDisk, kIsWeb || kIsWasm, skip") +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$bmF,r)}, +bKj(a){A.Z(B.A,"[LavaDeviceVM] _addLanDevicesToModelMap, kIsWeb || kIsWasm, skip") +return}, +a1x(a,b){var s=null +return A.bK6(a,b)}, +bK6(a,b){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j,i +var $async$a1x=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:j=null +if(!A.b5(a.ax).dz()){A.cx(u.n) +A.Z(B.f,"[LavaDeviceVM] sendGcode requires the printer to be online, currently the printer is not online") +q=!1 +s=1 +break}p=4 +m=A.b5(a.ax) +l=j +s=7 +return A.f(m.akg(b,l==null?3:l),$async$a1x) +case 7:m=d +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +i=o +n=A.v(i) +A.Z(B.p,"[LavaDeviceVM] sendGcode failed, error: "+J.p(n)) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$a1x,r)}, +a1v(a,b){return A.bK_(a,b)}, +bK_(a,b){var s=0,r=A.n(t.f),q,p=2,o,n,m,l,k,j +var $async$a1v=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(!A.b5(a.ax).dz()){A.Z(B.a0,"[LavaDeviceVM] getFileMetaDataFromFilePath path: "+b+u.B) +A.cx(u.n) +throw A.d(A.ae(u.n))}p=4 +j=t.a +s=7 +return A.f(A.b5(a.ax).zO(b),$async$a1v) +case 7:n=j.a(d) +q=n +s=1 +break +p=2 +s=6 +break +case 4:p=3 +k=o +m=A.v(k) +A.Z(B.p,"[LavaDeviceVM] getFileMetaDataFromFilePath failed, error: "+J.p(m)) +throw k +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$a1v,r)}, +Kn(a){return A.bK1(a)}, +bK1(a){var s=0,r=A.n(t.nA),q,p=2,o,n,m,l,k,j,i,h +var $async$Kn=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:if(!A.b5(a.ax).dz()){A.cx(u.n) +throw A.d(A.ae("getMachineFilamentInfo requires the printer to be online, currently the printer is not online"))}p=4 +s=7 +return A.f(A.b5(a.ax).F7(),$async$Kn) +case 7:n=c +if(n!=null&&t.a.b(n)){m=A.CV(n) +j=a.ok +l=J.i(j.a,a.ax.w) +if(l==null&&!m.yV()){A.Z(B.f,"[LavaDeviceVM] getMachineFilamentInfo, oldPrintTaskConfig == null && !printTaskConfig.isDefaultData(), addNext: "+a.ax.w+": "+m.ix().j(0)) +j.cj(A.C([a.ax.w,m.ix()],t.N,t.th))}else if(l!=null&&l.WU(m)&&!m.yV()){A.Z(B.f,"[LavaDeviceVM] getMachineFilamentInfo, oldPrintTaskConfig != null && oldPrintTaskConfig.isFilamentChanged(printTaskConfig) && !printTaskConfig.isDefaultData(), addNext: "+a.ax.w+": "+m.ix().j(0)) +j.cj(A.C([a.ax.w,m.ix()],t.N,t.th))}}q=n +s=1 +break +p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +A.Z(B.p,"[LavaDeviceVM] getMachineFilamentInfo failed, error: "+J.p(k)) +throw h +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Kn,r)}, +aDK(a,b){return A.bJZ(a,b)}, +bJZ(a,b){var s=0,r=A.n(t.Xw),q,p=2,o,n,m,l,k +var $async$aDK=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(!A.b5(a.ax).dz()){A.cx(u.n) +throw A.d(A.ae("getFileFilamentInfo requires the printer to be online, currently the printer is not online"))}p=4 +s=7 +return A.f(A.b5(a.ax).Fb(b),$async$aDK) +case 7:m=d +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +k=o +n=A.v(k) +A.Z(B.p,"[LavaDeviceVM] getFileFilamentInfo failed, error: "+J.p(n)) +throw k +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aDK,r)}, +aDU(a,b){return A.bKc(a,b)}, +bKc(a,b){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k +var $async$aDU=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.f(A.b5(a.ax).FM(b),$async$aDU) +case 7:m=d +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +k=o +n=A.v(k) +A.Z(B.p,"[LavaDeviceVM] setFilamentMappingComplete failed, error: "+J.p(n)) +throw k +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aDU,r)}, +aDT(a,b,c){return A.bKb(a,b,c)}, +bKb(a,b,c){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j +var $async$aDT=A.j(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:if(!A.b5(a.ax).dz()){A.Z(B.a0,"[LavaDeviceVM] setExtruderTargetTemperature requires the printer to be online, currently the printer is not online") +A.cx(u.n) +q=A.c7(!1,t.y) +s=1 +break}p=4 +n=A.b5(a.ax) +s=7 +return A.f(n.tm("M104 T"+b+" S"+A.c(c)),$async$aDT) +case 7:l=e +q=l +s=1 +break +p=2 +s=6 +break +case 4:p=3 +j=o +m=A.v(j) +A.dU(J.p(m)) +A.Z(B.p,"[LavaDeviceVM] setExtruderTargetTemperature failed, error: "+J.p(m)) +l=A.c7(!1,t.y) +q=l +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aDT,r)}, +aDV(a,b){return A.bKd(a,b)}, +bKd(a,b){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j,i +var $async$aDV=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(!A.b5(a.ax).dz()){A.cx(u.n) +A.Z(B.a0,"[LavaDeviceVM] setHeaterBedTargetTemperatureAsync requires the printer to be online, currently the printer is not online") +q=A.c7(!1,t.y) +s=1 +break}p=4 +n=A.b5(a.ax) +s=7 +return A.f(n.FI(B.d.aA(b)),$async$aDV) +case 7:m=d +if(m.a===!0){q=!0 +s=1 +break}else{k=m.b +A.dU(k==null?"setHeaterBedTargetTemperatureAsync failed":k) +q=!1 +s=1 +break}p=2 +s=6 +break +case 4:p=3 +i=o +l=A.v(i) +A.dU(J.p(l)) +A.Z(B.p,"[LavaDeviceVM] setHeaterBedTargetTemperatureAsync failed, error: "+J.p(l)) +k=A.c7(!1,t.y) +q=k +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aDV,r)}, +aDM(a,b,c,d,e){return A.bK5(a,b,c,d,e)}, +bK5(a,b,c,d,e){var s=0,r=A.n(t.H),q=1,p,o,n,m,l,k,j,i +var $async$aDM=A.j(function(f,g){if(f===1){p=g +s=q}while(true)switch(s){case 0:j={} +j.a=null +q=3 +o=A.b5(a.ax) +s=6 +return A.f(o.Np(b,c,d,e),$async$aDM) +case 6:n=g +if(n){l=o.dy.a +j.a=new A.aG(l,A.y(l).i("aG<1>")).bL(new A.aDP(j,a,d,o))}else{j=A.ae("Download failed "+A.c(n)) +throw A.d(j)}q=1 +s=5 +break +case 3:q=2 +i=p +m=A.v(i) +A.Z(B.p,"[LavaDeviceVM] requestDeviceDownloadAndPrint failed, error: "+J.p(m)) +throw i +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$aDM,r)}, +Kq(a,b){return A.bKa(a,b)}, +bKa(a,b){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k +var $async$Kq=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(A.b5(a.ax).dz()){m=A.b5(a.ax).ay +m=!(m===B.aP||m===B.av)}else m=!0 +if(m){A.Z(B.a0,"[LavaDeviceVM] "+b.Oe()+u.B) +A.cx(b.Oe()+" this command requires the printer to be online, currently the printer is not online") +q=!1 +s=1 +break}p=4 +s=7 +return A.f(A.b5(a.ax).wb(b.Oe(),!1,0),$async$Kq) +case 7:m=d +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +k=o +n=A.v(k) +A.dU(J.p(n)) +A.Z(B.p,"[LavaDeviceVM] setDeviceToHome failed, error: "+J.p(n)) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Kq,r)}, +tP(a,b,c,d){return A.bK3(a,b,c,d)}, +bK3(a,b,c,d){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j,i +var $async$tP=A.j(function(e,f){if(e===1){o=f +s=p}while(true)switch(s){case 0:if(A.b5(a.ax).dz()){k=A.b5(a.ax).ay +k=!(k===B.aP||k===B.av)}else k=!0 +if(k){A.Z(B.a0,"[LavaDeviceVM] moveStepWithDirection direction: "+c+", axis: "+b.j(0)+u.B) +A.cx(u.n) +q=!1 +s=1 +break}p=4 +n=A.b5(a.ax) +m="G91" +switch(b.a){case 0:k=A.c(d) +if(c===1)m=A.c(m)+"\nG1 X+"+k+" F3600" +else m=A.c(m)+"\nG1 X-"+k+" F3600" +break +case 1:k=A.c(d) +if(c===1)m=A.c(m)+"\nG1 Y+"+k+" F3600" +else m=A.c(m)+"\nG1 Y-"+k+" F3600" +break +case 2:k=A.c(d) +if(c===1)m=A.c(m)+"\nG1 Z+"+k+" F1800" +else m=A.c(m)+"\nG1 Z-"+k+" F1800" +break +default:break}m=A.c(m)+"\nG90" +s=7 +return A.f(n.tm(m),$async$tP) +case 7:q=!0 +s=1 +break +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.v(i) +A.dU(J.p(l)) +A.Z(B.p,"[LavaDeviceVM] moveDeviceAxisStep failed, error: "+J.p(l)) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$tP,r)}, +BR(a,b,c,d){return A.bK9(a,b,c,d)}, +bK9(a,b,c,d){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j +var $async$BR=A.j(function(e,f){if(e===1){o=f +s=p}while(true)switch(s){case 0:if(A.b5(a.ax).dz()){l=A.b5(a.ax).ay +l=!(l===B.aP||l===B.av)}else l=!0 +if(l){A.Z(B.a0,"[LavaDeviceVM] setCurrentExtruderRetractAndExtrude type: "+d+", tagret: "+c+", Speed: "+b+u.B) +A.cx(u.n) +q=!1 +s=1 +break}p=4 +n=A.b5(a.ax) +s=7 +return A.f(n.tm("M83"),$async$BR) +case 7:s=d.toLowerCase()==="retract"?8:10 +break +case 8:s=11 +return A.f(n.tm("G1 E-"+c+" F"+b),$async$BR) +case 11:s=9 +break +case 10:s=12 +return A.f(n.tm("G1 E"+c+" F"+b),$async$BR) +case 12:case 9:q=!0 +s=1 +break +p=2 +s=6 +break +case 4:p=3 +j=o +m=A.v(j) +A.dU(J.p(m)) +A.Z(B.p,"[LavaDeviceVM] setCurrentExtruderRetractAndExtrude failed, error: "+J.p(m)) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$BR,r)}, +a1y(a,b){var s=0,r=A.n(t.y),q,p,o +var $async$a1y=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:if(A.b5(a.ax).dz()){p=A.b5(a.ax).ay +p=!(p===B.aP||p===B.av)}else p=!0 +if(p){A.Z(B.a0,"[LavaDeviceVM] setLedAsync white: "+b+u.B) +A.cx(u.n) +q=!1 +s=1 +break}s=3 +return A.f(A.b5(a.ax).FP(b),$async$a1y) +case 3:o=d +if(o.a===!0){q=!0 +s=1 +break}else{p=o.b +A.dU(p==null?"Set led failed":p) +A.Z(B.p,"[LavaDeviceVM] setLedAsync failed, error: "+A.c(p)) +q=!1 +s=1 +break}case 1:return A.l(q,r)}}) +return A.m($async$a1y,r)}, +aE0(a,b){return A.bKh(a,b)}, +bKh(a,b){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j +var $async$aE0=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(A.b5(a.ax).dz()){l=A.b5(a.ax).ay +l=!(l===B.aP||l===B.av)}else l=!0 +if(l){A.Z(B.a0,"[LavaDeviceVM] setPrintSpeed percentage: "+b+u.B) +A.cx(u.n) +q=!1 +s=1 +break}p=4 +s=7 +return A.f(A.b5(a.ax).FV(b),$async$aE0) +case 7:n=d +if(n.a===!0){q=!0 +s=1 +break}else{l=n.b +A.dU(l==null?"Set print speed failed":l) +q=!1 +s=1 +break}p=2 +s=6 +break +case 4:p=3 +j=o +m=A.v(j) +A.dU(J.p(m)) +A.Z(B.p,"[LavaDeviceVM] setPrintSpeed failed, error: "+J.p(m)) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aE0,r)}, +aDW(a,b){return A.bKe(a,b)}, +bKe(a,b){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j +var $async$aDW=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(A.b5(a.ax).dz()){l=A.b5(a.ax).ay +l=!(l===B.aP||l===B.av)}else l=!0 +if(l){A.Z(B.a0,"[LavaDeviceVM] setMainFanSpeed speed: "+b+u.B) +A.cx(u.n) +q=!1 +s=1 +break}p=4 +s=7 +return A.f(A.b5(a.ax).FQ(b),$async$aDW) +case 7:n=d +if(n.a===!0){q=!0 +s=1 +break}else{l=n.b +A.dU(l==null?"setMainFanSpeed failed":l) +q=!1 +s=1 +break}p=2 +s=6 +break +case 4:p=3 +j=o +m=A.v(j) +A.dU(J.p(m)) +A.Z(B.p,"[LavaDeviceVM] setMainFanSpeed failed, error: "+J.p(m)) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aDW,r)}, +aDS(a,b){return A.bK8(a,b)}, +bK8(a,b){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j +var $async$aDS=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(A.b5(a.ax).dz()){l=A.b5(a.ax).ay +l=!(l===B.aP||l===B.av)}else l=!0 +if(l){A.Z(B.a0,"[LavaDeviceVM] setCavityFanSpeed speed: "+b+u.B) +A.cx(u.n) +q=!1 +s=1 +break}p=4 +s=7 +return A.f(A.b5(a.ax).FO(b),$async$aDS) +case 7:n=d +if(n.a===!0){q=!0 +s=1 +break}else{l=n.b +A.dU(l==null?"setCavityFanSpeed failed":l) +q=!1 +s=1 +break}p=2 +s=6 +break +case 4:p=3 +j=o +m=A.v(j) +A.dU(J.p(m)) +A.Z(B.p,"[LavaDeviceVM] setCavityFanSpeed failed, error: "+J.p(m)) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aDS,r)}, +aDR(a,b){var s=null,r=null +return A.bK7(a,b)}, +bK7(a,b){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j,i,h +var $async$aDR=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:j=null +i=null +if(A.b5(a.ax).dz()){l=A.b5(a.ax).ay +l=!(l===B.aP||l===B.av)}else l=!0 +if(l){A.Z(B.a0,"[LavaDeviceVM] setAirPurifyFanSpeed fanSpeed: "+b+", delayTime: "+A.c(j)+", workTime: "+A.c(i)+u.B) +A.cx(u.n) +q=!1 +s=1 +break}p=4 +s=7 +return A.f(A.b5(a.ax).FW(j,b,i),$async$aDR) +case 7:n=d +if(n.a===!0){q=!0 +s=1 +break}else{l=n.b +A.dU(l==null?"setAirPurifyFanSpeed failed":l) +q=!1 +s=1 +break}p=2 +s=6 +break +case 4:p=3 +h=o +m=A.v(h) +A.dU(J.p(m)) +A.Z(B.p,"[LavaDeviceVM] setAirPurifyFanSpeed failed, error: "+J.p(m)) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aDR,r)}, +a1A(a,b){var s=0,r=A.n(t.y),q,p +var $async$a1A=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:if(A.b5(a.ax).dz()){p=A.b5(a.ax).ay +p=!(p===B.aP||p===B.av)}else p=!0 +if(p){A.Z(B.a0,"[LavaDeviceVM] startPrint filePath: "+b+u.B) +A.cx(u.n) +throw A.d(A.ae("current device is not online, please check the device connection"))}s=3 +return A.f(A.b5(a.ax).wl(b),$async$a1A) +case 3:q=d +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$a1A,r)}, +or(a,b,c){return A.bJW(a,b,c)}, +bJW(a,b,c){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j +var $async$or=A.j(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:if(A.b5(a.ax).dz()){l=A.b5(a.ax).ay +l=!(l===B.aP||l===B.av)}else l=!0 +if(l){A.Z(B.a0,"[LavaDeviceVM] devicePrintAction action: "+b.j(0)+", filePath: "+c+u.B) +A.cx(u.n) +q=!1 +s=1 +break}n=A.b5(a.ax) +p=4 +case 7:switch(b.a){case 0:s=9 +break +case 1:s=10 +break +case 2:s=11 +break +case 3:s=12 +break +default:s=13 +break}break +case 9:s=14 +return A.f(n.wl(c),$async$or) +case 14:l=e +q=l +s=1 +break +case 10:s=15 +return A.f(n.MV(),$async$or) +case 15:l=e +q=l +s=1 +break +case 11:s=16 +return A.f(n.Nw(),$async$or) +case 16:l=e +q=l +s=1 +break +case 12:s=17 +return A.f(n.K_(),$async$or) +case 17:l=e +q=l +s=1 +break +case 13:l=A.bl("this action is not currently supported",b.b) +throw A.d(l) +case 8:p=2 +s=6 +break +case 4:p=3 +j=o +m=A.v(j) +A.dU(J.p(m)) +A.Z(B.p,"[LavaDeviceVM] devicePrintAction failed, error: "+J.p(m)) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$or,r)}, +bmD(a,b){B.b.fZ(b,new A.aDE())}, +bmE(a){var s=0,r=A.n(t.H) +var $async$bmE=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:B.b.V(a.db) +B.b.V(a.cy) +a.fr=a.dy=!0 +a.T() +return A.l(null,r)}}) +return A.m($async$bmE,r)}, +Kp(a,b,c,d,e){var s=0,r=A.n(t.kc),q,p +var $async$Kp=A.j(function(f,g){if(f===1)return A.k(g,r) +while(true)switch(s){case 0:s=3 +return A.f(A.b5(a.ax).zL(c,b,d),$async$Kp) +case 3:p=g +s=J.aM(p)")),q=q.y[1];r.u();){p=r.a +o=J.p(J.i(p==null?q.a(p):p,"sn")) +if(b.N(0,o)){n=b.h(0,o) +if(n!=null)s.n(0,o,n)}}r=A.y(b).i("aR<1>") +m=A.f8(new A.aR(b,r),r.i("B.E")) +r=A.y(s).i("aR<1>") +l=A.f8(new A.aR(s,r),r.i("B.E")) +k=l.hC(m) +j=m.hC(l) +s.vF(s,new A.aE2(k)) +for(r=b.gaJ(0),q=A.y(r),r=new A.bD(J.ay(r.a),r.b,q.i("bD<1,2>")),q=q.y[1];r.u();){p=r.a +if(p==null)p=q.a(p) +o=J.p(J.i(p,"sn")) +if(j.p(0,o))s.n(0,o,p)}}, +xq(a){return A.bJU(a)}, +bJU(a){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j,i +var $async$xq=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:if(!A.b5(a.ax).dz()){A.cx(u.b4) +A.Z(B.f,"[LavaDeviceVM] Version check requires the printer to be online, currently the printer is not online") +q=!1 +s=1 +break}p=4 +k=a.ax +s=k.k1.length===0?7:8 +break +case 7:s=9 +return A.f(A.b5(k).EU(),$async$xq) +case 9:case 8:n=a.ax.k1 +m=!1 +if(J.aM(n)===0){k=A.ae(A.F("Could not get device version",null)) +throw A.d(k)}else{k=$.bki() +if(k.aiW(a.ax.w,n))m=!k.aW5(n) +else m=!1}k=m +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.v(i) +k=J.p(l) +$.ac().a3("checkIfNeedNotifyDeviceNotValidated failed, "+k) +throw i +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$xq,r)}, +BP(a,b){var s=0,r=A.n(t.H),q,p,o +var $async$BP=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:if(!A.b5(a.ax).dz()){A.cx(u.b4) +A.Z(B.f,"[LavaDeviceVM] Verison check requires the printer to be online, currently the printer is not online") +s=1 +break}p=$.bki() +o=a.ax +p.FJ(o.w,o.k1,!1) +case 1:return A.l(q,r)}}) +return A.m($async$BP,r)}, +dW:function dW(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r){var _=this +_.a=a +_.b=b +_.w=_.r=_.f=_.e=_.c=null +_.x=c +_.y=d +_.z=null +_.at=e +_.ax=f +_.ay=g +_.ch=!1 +_.cx=h +_.cy=i +_.db=j +_.dx=k +_.fr=_.dy=!0 +_.go=_.fy=null +_.id=l +_.k1=m +_.k2=n +_.k3=null +_.k4=o +_.ok=p +_.p1=q +_.p3=_.p2=null +_.p4=!0 +_.R8=null +_.M$=0 +_.U$=r +_.aE$=_.ac$=0}, +aEg:function aEg(a){this.a=a}, +aE7:function aE7(a){this.a=a}, +aE5:function aE5(a){this.a=a}, +aEo:function aEo(){}, +aE6:function aE6(a){this.a=a}, +aEk:function aEk(a){this.a=a}, +aEl:function aEl(){}, +aEf:function aEf(a){this.a=a}, +aEe:function aEe(a){this.a=a}, +aEc:function aEc(a){this.a=a}, +aEb:function aEb(a){this.a=a}, +aEd:function aEd(a){this.a=a}, +aEa:function aEa(a){this.a=a}, +aEn:function aEn(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}, +aEh:function aEh(a){this.a=a}, +aEi:function aEi(){}, +aEj:function aEj(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aEp:function aEp(){}, +aEq:function aEq(){}, +aEr:function aEr(a){this.a=a}, +aEs:function aEs(){}, +aEt:function aEt(){}, +aEu:function aEu(){}, +aEv:function aEv(a){this.a=a}, +aEw:function aEw(a){this.a=a}, +aE8:function aE8(a){this.a=a}, +aE9:function aE9(){}, +aDP:function aDP(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aDN:function aDN(a){this.a=a}, +aDO:function aDO(a){this.a=a}, +aDE:function aDE(){}, +aDZ:function aDZ(){}, +aE_:function aE_(){}, +aDX:function aDX(){}, +aDG:function aDG(a){this.a=a}, +aDH:function aDH(){}, +aE4:function aE4(a){this.a=a}, +aE3:function aE3(){}, +aE2:function aE2(a){this.a=a}, +oO:function oO(a,b){this.a=a +this.b=b}, +NF:function NF(a,b){var _=this +_.a=a +_.b="" +_.M$=_.c=0 +_.U$=b +_.aE$=_.ac$=0}, +ble(a,b,c,d,e,f){var s=null +return A.jd(s,!0,new A.atb(f,e,c,a,s,s,b,s),d,s,!0,!0,t.y)}, +AJ:function AJ(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}, +atb:function atb(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}, +at9:function at9(a,b){this.a=a +this.b=b}, +ata:function ata(a,b){this.a=a +this.b=b}, +AK:function AK(a,b,c,d,e,f){var _=this +_.r=a +_.x=b +_.z=c +_.ax=d +_.ch=e +_.a=f}, +aTE(a,b,c,d,e,f,g){return new A.a9b(g,f,e,b,c,a,d,null)}, +a9b:function a9b(a,b,c,d,e,f,g,h){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.x=f +_.z=g +_.a=h}, +aTG:function aTG(a){this.a=a}, +aTH:function aTH(a){this.a=a}, +aTF:function aTF(a,b){this.a=a +this.b=b}, +r2:function r2(a,b){this.a=a +this.b=b}, +JE:function JE(a,b){this.a=a +this.b=b}, +xc:function xc(a,b,c,d,e,f,g,h,i){var _=this +_.c=a +_.d=b +_.e=c +_.w=d +_.x=e +_.y=f +_.z=g +_.Q=h +_.a=i}, +RJ:function RJ(a,b,c,d){var _=this +_.e=_.d=null +_.f=!0 +_.r=a +_.w=0 +_.x=null +_.y=!1 +_.at=_.as=_.Q=_.z=null +_.ay=_.ax=$ +_.ch=!1 +_.cy=b +_.db=0 +_.dy=!1 +_.fr=null +_.fx=!1 +_.fp$=c +_.c3$=d +_.c=_.a=null}, +b7T:function b7T(a){this.a=a}, +b7U:function b7U(a){this.a=a}, +b7P:function b7P(a){this.a=a}, +b7N:function b7N(a,b,c){this.a=a +this.b=b +this.c=c}, +b7O:function b7O(a,b){this.a=a +this.b=b}, +b7L:function b7L(a,b){this.a=a +this.b=b}, +b7K:function b7K(a){this.a=a}, +b7M:function b7M(a){this.a=a}, +b7J:function b7J(a){this.a=a}, +b7Q:function b7Q(a){this.a=a}, +b7H:function b7H(a){this.a=a}, +b7I:function b7I(a){this.a=a}, +b7G:function b7G(a){this.a=a}, +b7F:function b7F(a){this.a=a}, +b7E:function b7E(){}, +b7S:function b7S(a){this.a=a}, +b7R:function b7R(a){this.a=a}, +V_:function V_(){}, +aa4(a){return A.jd(null,!1,new A.aVx(),a,null,!0,!0,t.y)}, +Ek:function Ek(a,b,c){this.c=a +this.d=b +this.a=c}, +aVx:function aVx(){}, +aVv:function aVv(a){this.a=a}, +aVw:function aVw(a){this.a=a}, +bkR(a,b,c,d,e,f,g){return new A.Wv(b,d,e,g,c,a,f,null)}, +Wv:function Wv(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}, +apX:function apX(){}, +H1:function H1(a,b,c){this.c=a +this.d=b +this.a=c}, +apY:function apY(a){this.a=a}, +apZ:function apZ(a){this.a=a}, +brS(a,b,c,d,e,f){return new A.Id(f,c,b,a,e,d,null)}, +Id:function Id(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.ay=e +_.ch=f +_.a=g}, +aeh:function aeh(){this.c=this.a=null}, +bm0(a,b,c,d,e,f,g){return new A.a02(b,e,g,d,a,f,c,null)}, +a02:function a02(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}, +a25(a,b,c,d,e,f,g,h,i,j,k){return new A.C5(d,c,f,j,k,h,g,a,b,e,i)}, +C5:function C5(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=!0 +_.z=j +_.Q=k}, +wO:function wO(a,b,c){this.c=a +this.e=b +this.a=c}, +a04:function a04(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}, +Bf:function Bf(a,b){this.a=a +this.b=b}, +tw:function tw(a,b,c){this.a=a +this.b=b +this.c=c}, +Lb:function Lb(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}, +ahf:function ahf(){var _=this +_.f=_.e=_.d=0 +_.c=_.a=null}, +ba9:function ba9(){}, +ba8:function ba8(a){this.a=a}, +ba6:function ba6(a,b){this.a=a +this.b=b}, +ba7:function ba7(a,b){this.a=a +this.b=b}, +a01:function a01(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.r=d +_.w=e +_.a=f}, +Lc:function Lc(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +Sd:function Sd(){this.d=$ +this.c=this.a=null}, +baa:function baa(a,b){this.a=a +this.b=b}, +a6D:function a6D(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aO2:function aO2(a){this.a=a}, +aO3:function aO3(a){this.a=a}, +aO4:function aO4(a){this.a=a}, +aO5:function aO5(a){this.a=a}, +aO1:function aO1(a){this.a=a}, +bwA(a){var s,r,q,p,o=J.a0(a),n=o.h(a,"name") +if(n==null)n="" +s=o.h(a,"index") +if(s==null)s=0 +r=o.h(a,"unit") +if(r==null)r="" +q=o.h(a,"value") +if(q==null)q=0 +p=o.h(a,"isSelected") +if(p==null)p=!1 +o=o.h(a,"isShowPointer") +return new A.ma(n,s,r,q,p,o==null?!1:o)}, +ma:function ma(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +Pe:function Pe(a,b,c,d){var _=this +_.c=a +_.d=b +_.e=c +_.a=d}, +aUQ:function aUQ(a,b){this.a=a +this.b=b}, +aUP:function aUP(a,b){this.a=a +this.b=b}, +bPq(){var s,r=J.mU(4,t.iq) +for(s=0;s<4;++s)r[s]=new A.mK(s,-1,-1,0,!1,0,0,"") +return new A.adD(r,new A.Bx(-1,-1,0))}, +HQ:function HQ(a){this.a=a}, +adD:function adD(a,b){var _=this +_.d=a +_.e=b +_.f=0 +_.r=-1 +_.x=_.w=!1 +_.c=_.a=null}, +b_U:function b_U(a){this.a=a}, +b_O:function b_O(a){this.a=a}, +b_P:function b_P(a,b,c){this.a=a +this.b=b +this.c=c}, +b_N:function b_N(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +b_Q:function b_Q(a,b,c){this.a=a +this.b=b +this.c=c}, +b_R:function b_R(a,b){this.a=a +this.b=b}, +b_K:function b_K(a,b){this.a=a +this.b=b}, +b_L:function b_L(a){this.a=a}, +b_H:function b_H(a,b){this.a=a +this.b=b}, +b_M:function b_M(a){this.a=a}, +b_G:function b_G(a){this.a=a}, +b_S:function b_S(a){this.a=a}, +b_J:function b_J(a){this.a=a}, +b_T:function b_T(a,b){this.a=a +this.b=b}, +b_I:function b_I(a){this.a=a}, +b_E:function b_E(a,b){this.a=a +this.b=b}, +b_D:function b_D(a,b){this.a=a +this.b=b}, +b_F:function b_F(a){this.a=a}, +b_C:function b_C(a){this.a=a}, +b_A:function b_A(a){this.a=a}, +b_B:function b_B(a){this.a=a}, +b_z:function b_z(a){this.a=a}, +bPr(){var s=t.u3,r=s.i("aN.E") +return new A.adE(A.a8(new A.ad(B.aar,new A.b07(),s),!0,r),A.a8(new A.ad(B.abO,new A.b06(),s),!0,r))}, +HR:function HR(a){this.a=a}, +adE:function adE(a,b){var _=this +_.e=_.d=0 +_.r=a +_.w=b +_.c=_.a=null}, +b07:function b07(){}, +b06:function b06(){}, +b05:function b05(a){this.a=a}, +b04:function b04(){}, +b03:function b03(a){this.a=a}, +b_Z:function b_Z(a){this.a=a}, +b_Y:function b_Y(a,b){this.a=a +this.b=b}, +b_X:function b_X(a){this.a=a}, +b00:function b00(a,b){this.a=a +this.b=b}, +b_W:function b_W(a){this.a=a}, +b_V:function b_V(a,b){this.a=a +this.b=b}, +b02:function b02(a){this.a=a}, +b01:function b01(a){this.a=a}, +b0_:function b0_(a){this.a=a}, +a7m:function a7m(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.w=d +_.x=e +_.a=f}, +bwh(a,b,c,d,e,f,g){return new A.OJ(c,a,g,!0,b,e,f,null)}, +OJ:function OJ(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}, +TV:function TV(){var _=this +_.f=_.e=!1 +_.w=_.r=0 +_.x=!1 +_.Q=_.z=_.y=$ +_.c=_.a=null}, +beI:function beI(a){this.a=a}, +beK:function beK(a){this.a=a}, +beJ:function beJ(a){this.a=a}, +beL:function beL(a){this.a=a}, +beM:function beM(a){this.a=a}, +XF:function XF(a){this.a=a}, +asT:function asT(a){this.a=a}, +a_b:function a_b(a){this.a=a}, +auB:function auB(){}, +auA:function auA(){}, +bLN(a,b,c,d,e){var s=null +return A.jd(s,!1,new A.aLV(d,s,b,c,128,128,s),a,s,!0,!0,e)}, +It:function It(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +QL:function QL(a,b){var _=this +_.d=a +_.e=b +_.f=null +_.r=!1 +_.w=null +_.x=!1 +_.c=_.a=null}, +b1M:function b1M(a){this.a=a}, +b1B:function b1B(a,b,c){this.a=a +this.b=b +this.c=c}, +b1C:function b1C(a){this.a=a}, +b1z:function b1z(a){this.a=a}, +b1N:function b1N(a){this.a=a}, +b1O:function b1O(a){this.a=a}, +b1A:function b1A(a){this.a=a}, +b1L:function b1L(a){this.a=a}, +b1K:function b1K(a){this.a=a}, +b1y:function b1y(a){this.a=a}, +b1J:function b1J(a,b){this.a=a +this.b=b}, +b1I:function b1I(a,b){this.a=a +this.b=b}, +b1H:function b1H(a,b){this.a=a +this.b=b}, +b1F:function b1F(a){this.a=a}, +b1G:function b1G(a,b,c){this.a=a +this.b=b +this.c=c}, +b1E:function b1E(a){this.a=a}, +b1D:function b1D(a){this.a=a}, +a5j:function a5j(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}, +aLV:function aLV(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aLT:function aLT(a){this.a=a}, +a03:function a03(a,b){this.c=a +this.a=b}, +Ji:function Ji(a){this.a=a}, +Jj:function Jj(a,b){var _=this +_.d=a +_.r=null +_.x=_.w=!1 +_.y=b +_.c=_.a=null}, +ayZ:function ayZ(a){this.a=a}, +ayY:function ayY(a){this.a=a}, +ayU:function ayU(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +ayT:function ayT(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +az_:function az_(a){this.a=a}, +az0:function az0(a){this.a=a}, +az1:function az1(a){this.a=a}, +ayX:function ayX(a){this.a=a}, +ayW:function ayW(a,b,c){this.a=a +this.b=b +this.c=c}, +ayV:function ayV(a,b){this.a=a +this.b=b}, +ayN:function ayN(a){this.a=a}, +ayM:function ayM(a){this.a=a}, +ayO:function ayO(a){this.a=a}, +ayQ:function ayQ(a){this.a=a}, +ayP:function ayP(a){this.a=a}, +ayR:function ayR(a){this.a=a}, +ayS:function ayS(a){this.a=a}, +Jk:function Jk(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}, +afo:function afo(a){var _=this +_.d="" +_.e=!0 +_.f=a +_.y=_.x=_.w="" +_.c=_.a=null}, +b3y:function b3y(a){this.a=a}, +b3z:function b3z(a){this.a=a}, +b3u:function b3u(){}, +b3v:function b3v(a,b){this.a=a +this.b=b}, +b3w:function b3w(a){this.a=a}, +b3x:function b3x(a){this.a=a}, +b3t:function b3t(a){this.a=a}, +b3s:function b3s(a,b){this.a=a +this.b=b}, +Jl:function Jl(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 +_.d=a +_.x=!0 +_.y=b +_.as=_.Q=_.z=$ +_.c=_.a=null}, +b3G:function b3G(a){this.a=a}, +b3H:function b3H(a){this.a=a}, +b3D:function b3D(a,b){this.a=a +this.b=b}, +b3C:function b3C(a,b){this.a=a +this.b=b}, +b3A:function b3A(a,b){this.a=a +this.b=b}, +b3E:function b3E(a,b){this.a=a +this.b=b}, +b3B:function b3B(a,b){this.a=a +this.b=b}, +b3F:function b3F(a){this.a=a}, +Jh:function Jh(a){this.a=a}, +afn:function afn(a,b){var _=this +_.f=a +_.r=b +_.c=_.a=null}, +b32:function b32(a){this.a=a}, +b31:function b31(a){this.a=a}, +OK:function OK(a){this.a=a}, +ale:function ale(a){var _=this +_.d=$ +_.e=0 +_.f=null +_.r=a +_.c=_.a=null}, +beZ:function beZ(a){this.a=a}, +beX:function beX(a,b){this.a=a +this.b=b}, +beY:function beY(a){this.a=a}, +bf1:function bf1(a){this.a=a}, +bf0:function bf0(a,b){this.a=a +this.b=b}, +bf2:function bf2(a){this.a=a}, +bf_:function bf_(a,b){this.a=a +this.b=b}, +beW:function beW(a,b,c){this.a=a +this.b=b +this.c=c}, +beV:function beV(a,b,c){this.a=a +this.b=b +this.c=c}, +beS:function beS(a,b){this.a=a +this.b=b}, +beR:function beR(a){this.a=a}, +beT:function beT(a,b){this.a=a +this.b=b}, +beQ:function beQ(a){this.a=a}, +beU:function beU(a){this.a=a}, +beN:function beN(a,b){this.a=a +this.b=b}, +beP:function beP(a){this.a=a}, +beO:function beO(){}, +JU:function JU(a){this.a=a}, +age:function age(a,b){var _=this +_.e=_.d=$ +_.dI$=a +_.b8$=b +_.c=_.a=null}, +UZ:function UZ(){}, +Mn:function Mn(a){this.a=a}, +aiz:function aiz(a){var _=this +_.e=_.d=!1 +_.f=a +_.r="" +_.w=0 +_.x="" +_.y=!1 +_.c=_.a=null}, +bbd:function bbd(a,b){this.a=a +this.b=b}, +bbe:function bbe(a,b){this.a=a +this.b=b}, +bbo:function bbo(a){this.a=a}, +bbl:function bbl(a,b){this.a=a +this.b=b}, +bbj:function bbj(a){this.a=a}, +bbk:function bbk(a){this.a=a}, +bbm:function bbm(a,b){this.a=a +this.b=b}, +bbh:function bbh(a){this.a=a}, +bbi:function bbi(a){this.a=a}, +bbn:function bbn(a,b){this.a=a +this.b=b}, +bbf:function bbf(a){this.a=a}, +bbg:function bbg(a){this.a=a}, +KA:function KA(a){this.a=a}, +S0:function S0(a,b){var _=this +_.d=a +_.e=b +_.f=!1 +_.c=_.a=_.r=null}, +b9h:function b9h(a){this.a=a}, +b9f:function b9f(a,b){this.a=a +this.b=b}, +b9d:function b9d(a){this.a=a}, +b9a:function b9a(a){this.a=a}, +b9e:function b9e(){}, +b9g:function b9g(a,b,c){this.a=a +this.b=b +this.c=c}, +b9b:function b9b(a){this.a=a}, +b99:function b99(a){this.a=a}, +b9c:function b9c(){}, +Ps:function Ps(a){this.a=a}, +amn:function amn(){var _=this +_.d=$ +_.e=0 +_.c=_.a=null}, +bgu:function bgu(){}, +bgt:function bgt(a){this.a=a}, +bgs:function bgs(a,b){this.a=a +this.b=b}, +bgv:function bgv(a){this.a=a}, +bgr:function bgr(a,b){this.a=a +this.b=b}, +bgq:function bgq(){}, +Iq:function Iq(a,b,c,d,e,f,g){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.w=f +_.a=g}, +aez:function aez(a){this.e=a +this.c=this.a=null}, +b0Z:function b0Z(a){this.a=a}, +wQ:function wQ(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}, +ayu:function ayu(a,b){this.a=a +this.b=b}, +ayv:function ayv(a){this.a=a}, +a9T:function a9T(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}, +aVd:function aVd(a){this.a=a}, +aVb:function aVb(){}, +aVc:function aVc(a){this.a=a}, +ayL:function ayL(a,b){this.a=a +this.b=b}, +aam:function aam(a,b,c,d,e){var _=this +_.d=a +_.e=b +_.f=c +_.r=d +_.a=e}, +aWL:function aWL(a){this.a=a}, +aWJ:function aWJ(a,b){this.a=a +this.b=b}, +aWH:function aWH(a){this.a=a}, +aWI:function aWI(a){this.a=a}, +aWK:function aWK(a){this.a=a}, +aWG:function aWG(a){this.a=a}, +Py:function Py(a,b,c,d,e){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.a=e}, +Pz:function Pz(a,b){this.c=a +this.a=b}, +PA:function PA(a,b,c){this.c=a +this.d=b +this.a=c}, +aWW:function aWW(a){this.a=a}, +aWX:function aWX(a){this.a=a}, +aWV:function aWV(){}, +aWU:function aWU(a){this.a=a}, +aWY:function aWY(a){this.a=a}, +aWZ:function aWZ(a){this.a=a}, +aWT:function aWT(a,b){this.a=a +this.b=b}, +PB:function PB(a,b,c){this.c=a +this.e=b +this.a=c}, +aX_:function aX_(a){this.a=a}, +a_d:function a_d(a,b,c,d,e,f,g,h,i,j,k){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.z=e +_.Q=f +_.as=g +_.at=h +_.ax=i +_.ay=j +_.a=k}, +auL:function auL(a){this.a=a}, +QJ:function QJ(a,b,c,d){var _=this +_.d=a +_.Q=b +_.ax=c +_.a=d}, +aeC:function aeC(){this.c=this.a=null}, +b1r:function b1r(a){this.a=a}, +b1o:function b1o(a){this.a=a}, +b1p:function b1p(a){this.a=a}, +b1q:function b1q(a){this.a=a}, +b1s:function b1s(a){this.a=a}, +b1n:function b1n(a,b){this.a=a +this.b=b}, +a_e:function a_e(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +auK:function auK(a){this.a=a}, +QK:function QK(a,b,c,d,e,f){var _=this +_.c=a +_.d=b +_.e=c +_.f=d +_.r=e +_.a=f}, +aeD:function aeD(){this.c=this.a=null}, +b1x:function b1x(a){this.a=a}, +b1w:function b1w(a){this.a=a}, +b1t:function b1t(a){this.a=a}, +b1u:function b1u(a){this.a=a}, +b1v:function b1v(a,b){this.a=a +this.b=b}, +aF4:function aF4(a,b){this.a=a +this.b=b}, +aLL:function aLL(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.x=_.w=_.r=_.f=null}, +aLM:function aLM(a,b,c){this.a=a +this.b=b +this.c=c}, +aLO:function aLO(a,b){this.a=a +this.b=b}, +aLN:function aLN(){}, +bLy(a,b){var s,r,q,p={} +p.a=b +p.b=!1 +r=A.a8(b,!0,t.N) +r.push("/") +p.a=r +try{A.bU(a,!1).aZr(new A.aKh(p))}catch(q){s=A.v(q) +r=J.p(s) +$.ac().a3("popUntil error: "+r) +p.b=!1}A.bmK("popUntil: "+p.b) +return p.b}, +aKg(a,b,c){var s=0,r=A.n(t.H) +var $async$aKg=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:s=2 +return A.f($.bC5().G4(null,a,4,!0,c),$async$aKg) +case 2:return A.l(null,r)}}) +return A.m($async$aKg,r)}, +aKh:function aKh(a){this.a=a}, +baR:function baR(){this.a=!1 +this.b=null}, +baS:function baS(a){this.a=a}, +bs6(a){var s="time_lapse_camera",r=t.S,q=t.a,p=t.z,o=A.a([],t.sX),n=t.N,m=A.C(["bed_level",!1,"flow_calibrate",!1,s,!1],n,t.y),l=A.C(["bed_level",0,"flow_calibrate",0,s,0],n,p),k=$.aW() +p=new A.lH(a,A.w(r,q),A.w(r,q),A.w(r,p),o,A.w(n,t.CX),m,l,A.w(n,p),k) +if(A.bs7(a)){r=new A.NF(B.alZ,k) +r.il(B.np,A.F("Send",null)) +p.y=r}return p}, +lH:function lH(a,b,c,d,e,f,g,h,i,j){var _=this +_.a=a +_.b=!0 +_.d=null +_.x=_.w=_.f=!1 +_.ax=_.at=_.as=_.Q=_.z=_.y=null +_.ay=b +_.ch=c +_.CW=d +_.cy=_.cx=null +_.db=e +_.dx=f +_.dy=null +_.fr=g +_.fx=h +_.go=_.fy="" +_.id=i +_.k1=null +_.M$=0 +_.U$=j +_.aE$=_.ac$=0}, +auU:function auU(){}, +auV:function auV(){}, +auT:function auT(){}, +av2:function av2(a,b){this.a=a +this.b=b}, +av3:function av3(){}, +auY:function auY(){}, +auZ:function auZ(){}, +av_:function av_(a,b){this.a=a +this.b=b}, +av0:function av0(a){this.a=a}, +av1:function av1(a){this.a=a}, +auO:function auO(a,b){this.a=a +this.b=b}, +auN:function auN(a){this.a=a}, +auW:function auW(a){this.a=a}, +auX:function auX(){}, +auS:function auS(){}, +auM:function auM(){}, +auP:function auP(){}, +auQ:function auQ(){}, +auR:function auR(a){this.a=a}, +bHb(a){switch(a.a){case 0:return B.a0p +case 1:case 2:return B.a0q}}, +bs7(a){switch(a.a){case 0:case 2:return!0 +case 1:return!1}}, +bHd(a){switch(a.a){case 0:case 1:return!0 +case 2:return!1}}, +bHc(a){switch(a.a){case 0:case 1:return!0 +case 2:return!1}}, +a0a:function a0a(a,b){this.a=a +this.b=b}, +a_f:function a_f(a,b){this.a=a +this.b=b}, +h0:function h0(a,b,c){this.a=a +this.b=b +this.c=c}, +a24:function a24(){}, +Mj:function Mj(a,b,c){this.a=a +this.b=b +this.c=c}, +Pl:function Pl(a,b){this.a=a +this.b=b}, +y8:function y8(a,b){this.c=a +this.a=b}, +SA:function SA(a,b,c){var _=this +_.d=null +_.e=a +_.r=_.f=null +_.w=b +_.x=0 +_.y=c +_.z=!1 +_.c=_.a=null}, +bb7:function bb7(){}, +bb8:function bb8(a){this.a=a}, +bb9:function bb9(a){this.a=a}, +bb6:function bb6(){}, +bb3:function bb3(){}, +bb4:function bb4(){}, +bb5:function bb5(){}, +bba:function bba(a){this.a=a}, +bbb:function bbb(a,b){this.a=a +this.b=b}, +bbc:function bbc(a){this.a=a}, +bb1:function bb1(){}, +bb2:function bb2(a){this.a=a}, +bb_:function bb_(a,b){this.a=a +this.b=b}, +bb0:function bb0(){}, +baX:function baX(a){this.a=a}, +baW:function baW(a,b){this.a=a +this.b=b}, +baY:function baY(a){this.a=a}, +baV:function baV(a,b){this.a=a +this.b=b}, +baZ:function baZ(a){this.a=a}, +baU:function baU(a,b){this.a=a +this.b=b}, +Is:function Is(a){this.a=a}, +QI:function QI(a,b,c,d,e,f,g){var _=this +_.d=$ +_.e=a +_.f=b +_.r=c +_.x=!1 +_.y=d +_.z=e +_.fp$=f +_.c3$=g +_.c=_.a=null}, +b1m:function b1m(a,b){this.a=a +this.b=b}, +b1j:function b1j(a){this.a=a}, +b1k:function b1k(a){this.a=a}, +b1i:function b1i(a,b){this.a=a +this.b=b}, +b1h:function b1h(a,b){this.a=a +this.b=b}, +b1g:function b1g(){}, +b1f:function b1f(a,b){this.a=a +this.b=b}, +b1e:function b1e(a,b,c){this.a=a +this.b=b +this.c=c}, +b1d:function b1d(a,b){this.a=a +this.b=b}, +b1l:function b1l(a){this.a=a}, +Ro:function Ro(){this.a=0 +this.b=!1 +this.c=!0}, +UQ:function UQ(){}, +P6:function P6(a){this.a=a}, +U6:function U6(a,b){var _=this +_.d=a +_.f=_.e=!1 +_.r=b +_.w=!1 +_.c=_.a=_.x=null}, +bfF:function bfF(a){this.a=a}, +bfG:function bfG(){}, +bfH:function bfH(a,b){this.a=a +this.b=b}, +bfI:function bfI(a){this.a=a}, +bfL:function bfL(a){this.a=a}, +bfK:function bfK(a){this.a=a}, +bfJ:function bfJ(a,b){this.a=a +this.b=b}, +vI:function vI(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +Wo:function Wo(a,b){this.a=a +this.b=b}, +bFK(a){return B.b.h9(B.a3W,new A.ara(a),new A.arb(a))}, +pu:function pu(a,b,c){this.a=a +this.b=b +this.c=c}, +ara:function ara(a){this.a=a}, +arb:function arb(a){this.a=a}, +bHe(a){return B.b.h9(B.abH,new A.av4(a),new A.av5(a))}, +hw:function hw(a,b,c){this.a=a +this.b=b +this.c=c}, +av4:function av4(a){this.a=a}, +av5:function av5(a){this.a=a}, +Ba:function Ba(a,b){this.a=a +this.b=b}, +aqi:function aqi(){}, +bJm(a){return B.b.h9(B.a5K,new A.aBO(a),new A.aBP(a))}, +is:function is(a,b,c){this.a=a +this.b=b +this.c=c}, +aBO:function aBO(a){this.a=a}, +aBP:function aBP(a){this.a=a}, +bLB(a){return B.b.h9(B.acu,new A.aKM(a),new A.aKN(a))}, +lV:function lV(a,b,c){this.a=a +this.b=b +this.c=c}, +aKM:function aKM(a){this.a=a}, +aKN:function aKN(a){this.a=a}, +bLW(a){return B.b.h9(B.a5A,new A.aMt(a),new A.aMu(a))}, +l3:function l3(a,b,c){this.a=a +this.b=b +this.c=c}, +aMt:function aMt(a){this.a=a}, +aMu:function aMu(a){this.a=a}, +bOT(a){return B.b.h9(B.a4z,new A.aVo(a),new A.aVp(a))}, +iZ:function iZ(a,b,c){this.a=a +this.b=b +this.c=c}, +aVo:function aVo(a){this.a=a}, +aVp:function aVp(a){this.a=a}, +u(a,b){var s=$.ac().a +s===$&&A.b() +s.cH(B.aj,a,null,null,b==null?new A.aS(Date.now(),0,!1):b)}, +bmK(a){var s,r=$.ac().a +r===$&&A.b() +s=Date.now() +r.cH(B.y5,a,null,null,new A.aS(s,0,!1))}, +dE(a){var s,r=$.ac().a +r===$&&A.b() +s=Date.now() +r.cH(B.lI,a,null,null,new A.aS(s,0,!1))}, +tY:function tY(a,b){this.a=a +this.b=b}, +aFa:function aFa(){this.b=this.a=$}, +baB:function baB(){}, +atI:function atI(a){this.a=a}, +aRG:function aRG(){}, +Hf:function Hf(a,b,c){this.c=a +this.d=b +this.a=c}, +ad9:function ad9(a,b){var _=this +_.d=$ +_.fp$=a +_.c3$=b +_.c=_.a=null}, +aZ6:function aZ6(a,b,c){this.a=a +this.b=b +this.c=c}, +UF:function UF(){}, +yj:function yj(a,b,c){this.b=a +this.c=b +this.a=c}, +a1U:function a1U(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +aF9:function aF9(){}, +qe:function qe(a,b,c){this.c=a +this.a=b +this.b=c}, +a1V:function a1V(){}, +aFb:function aFb(){}, +aFc:function aFc(a,b,c){var _=this +_.a=$ +_.b=a +_.c=b +_.d=c +_.e=!0}, +LR:function LR(a){this.a=a}, +XC:function XC(){}, +cG(a,b,c,d,e,f,g,h){return new A.IU(d,e,g,c,a,f,b,h,A.w(t.ML,t.bq))}, +IV(a,b){var s,r=A.brH(b,a),q=r<0?100:r,p=A.brG(b,a),o=p<0?0:p,n=A.wp(q,a),m=A.wp(o,a) +if(B.d.aa(a)<60){s=Math.abs(n-m)<0.1&&n=b||n>=m||s?q:o}else return m>=b||m>=n?o:q}, +IU:function IU(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}, +awH(a,b,c){var s,r,q,p,o,n=a.a +n===$&&A.b() +for(s=0;s<=7;s=q){r=b[s] +q=s+1 +p=b[q] +if(r>>16&255 +m=p>>>8&255 +l=p&255 +k=A.ot(A.a([A.ef(n),A.ef(m),A.ef(l)],s),$.mz) +j=A.arC(k[0],k[1],k[2],h) +o.a=j.a +h=o.b=j.b +o.c=116*A.th(A.ot(A.a([A.ef(n),A.ef(m),A.ef(l)],s),$.mz)[1]/100)-16 +if(r>h)break +n=Math.abs(h-b) +if(n<0.4)break +if(n=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.arB(j,c,f,A.a([0,0,0],t.n))}, +arB:function arB(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.y=d}, +k6(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,a6=new A.k5() +a6.d=a7 +s=$.Gv() +r=A.brD(a7) +q=r[0] +p=r[1] +o=r[2] +n=s.as +m=n[0]*(0.401288*q+0.650173*p-0.051461*o) +l=n[1]*(-0.250268*q+1.204414*p+0.045854*o) +k=n[2]*(-0.002079*q+0.048952*p+0.953127*o) +n=s.at +j=Math.pow(n*Math.abs(m)/100,0.42) +i=Math.pow(n*Math.abs(l)/100,0.42) +h=Math.pow(n*Math.abs(k)/100,0.42) +g=A.ou(m)*400*j/(j+27.13) +f=A.ou(l)*400*i/(i+27.13) +e=A.ou(k)*400*h/(h+27.13) +d=(11*g+-12*f+e)/11 +c=(g+f-2*e)/9 +n=20*f +b=Math.atan2(c,d)*180/3.141592653589793 +if(b<0)a=b+360 +else a=b>=360?b-360:b +a0=a*3.141592653589793/180 +a1=s.r +a2=s.y +a3=100*Math.pow((40*g+n+e)/20*s.w/a1,a2*s.ay)/100 +Math.sqrt(a3) +a4=Math.pow(3846.153846153846*(0.25*(Math.cos((a<20.14?a+360:a)*3.141592653589793/180+2)+3.8))*s.z*s.x*Math.sqrt(d*d+c*c)/((20*g+n+21*e)/20+0.305),0.9)*Math.pow(1.64-Math.pow(0.29,s.f),0.73) +a5=a4*Math.sqrt(a3) +Math.sqrt(a4*a2/(a1+4)) +Math.log(1+0.0228*(a5*s.ax)) +Math.cos(a0) +Math.sin(a0) +a6.a=a +a6.b=a5 +a6.c=116*A.th(A.brD(a7)[1]/100)-16 +return a6}, +k5:function k5(){var _=this +_.d=_.c=_.b=_.a=$}, +aVL:function aVL(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}, +bwz(a){var s,r=t.S,q=a.a +q===$&&A.b() +s=a.b +s===$&&A.b() +return new A.yX(q,s,A.w(r,r))}, +cw(a,b){var s=t.S +A.bOE(a,b) +return new A.yX(a,b,A.w(s,s))}, +bOE(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=A.k6(A.x3(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.d.aa(b) +p=e.b +p===$&&A.b() +if(q===B.d.aa(p))return e +o=A.x3(a,b,50+r) +n=new A.k5() +n.d=o +q=$.Gv() +p=o>>>16&255 +m=o>>>8&255 +l=o&255 +k=A.ot(A.a([A.ef(p),A.ef(m),A.ef(l)],d),$.mz) +j=A.arC(k[0],k[1],k[2],q) +n.a=j.a +i=j.b +n.b=i +n.c=116*A.th(A.ot(A.a([A.ef(p),A.ef(m),A.ef(l)],d),$.mz)[1]/100)-16 +h=Math.abs(i-b) +if(h>>16&255 +m=o>>>8&255 +l=o&255 +k=A.ot(A.a([A.ef(p),A.ef(m),A.ef(l)],d),$.mz) +j=A.arC(k[0],k[1],k[2],q) +g.a=j.a +q=j.b +g.b=q +g.c=116*A.th(A.ot(A.a([A.ef(p),A.ef(m),A.ef(l)],d),$.mz)[1]/100)-16 +f=Math.abs(q-b) +if(f=a.length)return a +return B.c.bE(a,s+1).toLowerCase()}, +aII:function aII(a,b){this.a=a +this.b=b}, +buo(a){var s=new A.a4f() +s.a="mqtt-client::ConnectionException: The connection must be in the Connected state in order to perform this operation." +if(a!=null)s.a="mqtt-client::ConnectionException: The connection must be in the Connected state in order to perform this operation. Current state is "+A.c(a.D().split(".")[1]) +return s}, +aJc(a){var s=new A.a4m() +s.a="mqtt-client::InvalidHeaderException: "+a +return s}, +dF(a){var s=new A.a4p() +s.a="mqtt-client::NoConnectionException: "+a +return s}, +bum(){var s,r,q=new A.a4d(),p=new A.jv(new A.hH(),B.b9) +p.c=B.qJ +q.a=p +p=A.bun() +q.b=p +A.bun() +s=A.hG() +r=A.a([],t.o) +q.c=new A.aJ8(p,new A.aJQ(s,r),new A.df(new Uint8Array(0),0)) +return q}, +bun(){var s=A.hG(),r=A.a([],t.o) +return new A.aJ9(s,"MQTT",5,new A.aJ7(B.b9),r,new A.df(new Uint8Array(0),0))}, +buq(a){var s=new A.jv(new A.hH(),B.b9) +s.hX(a) +return s}, +bLa(a){var s,r=new A.df(new Uint8Array(0),0),q=0 +do{s=a.hd() +r.lm(0,s);++q}while(q<=4&&(s&128)===128) +return r}, +bLd(a){var s,r,q,p,o +try{s=new A.jv(new A.hH(),B.b9) +s=A.buq(a) +if(a.b.b-a.a4){b.ee() +r.hX(b) +q.i5() +b.ee() +q.e=q.e+r.eX().b}s.b=q +b.ee() +break +case B.mZ:s=new A.Ck() +s.a=a +r=A.hG() +q=new A.a4u(a,B.d6,r,A.a([],t.o)) +q.b=b.vA() +q.e=2 +if(a.b!==2){q.c=$.mt().fJ(b.hd()) +q.e=3}else q.c=B.cl +if(a.b>4){b.ee() +r.hX(b) +q.i5() +b.ee() +q.e=q.e+r.eX().b}s.b=q +b.ee() +break +case B.mX:s=new A.Cl() +s.a=a +r=A.hG() +q=new A.a4w(a,B.d6,r,A.a([],t.o)) +q.b=b.vA() +q.e=2 +if(a.b!==2){q.c=$.mt().fJ(b.hd()) +q.e=3}else q.c=B.cl +if(a.b>4){b.ee() +r.hX(b) +q.i5() +b.ee() +q.e=q.e+r.eX().b}s.b=q +b.ee() +break +case B.mY:s=new A.Cm() +s.a=a +r=A.hG() +q=new A.a4x(a,B.d6,r,A.a([],t.o)) +q.b=b.vA() +q.e=2 +if(a.b!==2){q.c=$.mt().fJ(b.hd()) +q.e=3}else q.c=B.cl +if(a.b>4){b.ee() +r.hX(b) +q.i5() +b.ee() +q.e=q.e+r.eX().b}s.b=q +b.ee() +break +case B.qP:s=new A.Lo() +s.a=a +r=A.hG() +q=new A.aJG(r,A.a([],t.o)) +q.c=b.vA() +q.a=2 +b.ee() +r.hX(b) +q.i5() +b.ee() +q.a=q.a+r.eX().b +s.b=q +q=new A.aJF(a,q,A.a([],t.K1)) +q.hX(b) +s.c=q +b.ee() +break +case B.qL:s=new A.Lr() +s.a=a +r=A.hG() +q=new A.aJM(r,A.a([],t.o)) +q.c=b.vA() +q.a=2 +b.ee() +r.hX(b) +q.i5() +b.ee() +q.a=q.a+r.eX().b +s.b=q +q=new A.aJL(a,q,A.a([],t.K1)) +q.hX(b) +s.c=q +b.ee() +b.ee() +break +case B.mT:s=new A.Lm() +s.a=a +s.Ag(b) +b.ee() +break +case B.mU:s=new A.xK() +s.a=a +s.Ag(b) +r=s.a +q=A.hG() +p=new A.a4i(r,B.mR,q,A.a([],t.o)) +if(r.b>1){p.c=$.ap6().fJ(b.hd()) +p.b=1 +b.ee() +q.hX(b) +p.b=1+q.eX().b +p.i5() +b.ee()}else p.c=B.hO +s.b=p +break +case B.qM:s=new A.Cd() +s.a=a +s.Ag(b) +r=s.a +q=A.hG() +p=new A.aJ1(r,B.jD,q,new A.df(new Uint8Array(0),0),A.a([],t.o)) +if(r.b>1){p.c=$.bky().fJ(b.hd()) +p.b=1 +b.ee() +q.hX(b) +p.b=1+q.eX().b +p.i5() +b.ee()}else p.c=B.Ja +s.b=p +break +default:throw A.d(A.aJc("The Message Type specified ("+a.j(0)+".messageType) is not a valid MQTT Message type or currently not supported."))}return s}, +hG(){return new A.a4r(A.w(t.IG,t.Bl),A.a([],t.o),new A.hH())}, +bLe(a){var s,r,q,p,o,n,m +switch($.h9().fJ(a.b.h(0,a.a))){case B.qQ:case B.Jf:case B.Jh:case B.qX:case B.qY:case B.r_:case B.r0:case B.r1:case B.c8:s=new A.Lg(null) +r=$.h9().fJ(a.hd()) +s.a=r +if(r==null)s.a=B.c8 +s.b=a.hd() +return s +case B.qR:case B.n1:case B.Jg:case B.qZ:s=new A.a4k() +s.a=$.h9().fJ(a.hd()) +q=a.l_(0,4) +s.b=(q.h(0,0)<<24|q.h(0,1)<<16|q.h(0,2)<<8|q.h(0,3))>>>0 +return s +case B.qW:case B.r2:case B.r5:case B.n2:case B.qS:case B.n0:case B.d5:r=new A.kV() +s=new A.a4I(r) +s.a=$.h9().fJ(a.hd()) +p=a.l_(0,2) +q=a.l_(0,r.o7(0,p)) +o=new A.df(new Uint8Array(0),0) +o.G(0,p) +o.G(0,q) +s.b=r.adE(o) +return s +case B.r3:case B.n_:r=new A.df(new Uint8Array(0),0) +n=new A.a4b() +s=new A.a4c(r,n) +s.a=$.h9().fJ(a.hd()) +m=n.o7(0,a.l_(0,2)) +r.st(0,0) +r.G(0,a.l_(0,m)) +return s +case B.r4:s=new A.a4J(new A.hH()) +s.hX(a) +return s +case B.r6:case B.qT:case B.qU:case B.qV:s=new A.a4G() +s.a=$.h9().fJ(a.hd()) +q=a.l_(0,2) +s.b=(q.h(0,0)<<8|q.h(0,1))>>>0 +return s +case B.bG:r=new A.aJE(new A.kV()) +s=new A.Cp(B.bG,r) +s.a=$.h9().fJ(a.hd()) +r.a=A.bmW(a) +r.b=A.bmW(a) +return s +default:return new A.Lg(B.c8)}}, +bur(){var s=new A.Ck(),r=new A.jv(new A.hH(),B.b9) +r.c=B.mZ +s.a=r +s.b=new A.a4u(r,B.d6,A.hG(),A.a([],t.o)) +return s}, +bus(){var s=new A.Cm(),r=new A.jv(new A.hH(),B.b9) +r.c=B.mY +s.a=r +r.e=B.cG +s.b=new A.a4x(r,B.d6,A.hG(),A.a([],t.o)) +return s}, +but(a,b){var s=new A.a4D(a,new A.Co(B.b9)) +s.b=b +return s}, +bup(){return new A.xJ(B.qI,B.mQ,B.ahS)}, +bmZ(a){var s=new A.a4s(a) +s.a0b(a,[A.bAh(),A.bAg(),A.bWy()]) +return s}, +bLf(a){var s=a.a +if(B.c.p(s,"#")||B.c.p(s,"+"))throw A.d(A.ae("mqtt_client::PublicationTopic: Cannot publish to a topic that contains MQTT topic wildcards (# or +)"))}, +a4F(a){var s=new A.Lq(a) +s.a0b(a,[A.bAh(),A.bAg(),A.bWA(),A.bWz()]) +return s}, +bLg(a){var s=a.b +s===$&&A.b() +if(B.b.fQ(s,new A.aJJ()))throw A.d(A.ae("mqtt_client::SubscriptionTopic: rawTopic Fragment contains a wildcard but is more than one character long"))}, +bLh(a){var s=a.a +if(B.c.p(s,"#")&&!B.c.bF(s,"#"))throw A.d(A.ae("mqtt_client::SubscriptionTopic: The rawTopic wildcard # can only be present at the end of a topic")) +if(s.length>1&&B.c.bF(s,"#")&&!B.c.bF(s,"/#"))throw A.d(A.ae("mqtt_client::SubscriptionTopic: Topics using the # wildcard longer than 1 character must be immediately preceeded by a the rawTopic separator /"))}, +bLi(a){var s=a.a.length +if(s>65535)throw A.d(A.ae("mqtt_client::Topic: The length of the supplied rawTopic ("+s+") is longer than the maximum allowable (65535)"))}, +bLj(a){if(a.a.length===0)throw A.d(A.ae("mqtt_client::Topic: rawTopic must contain at least one character"))}, +bmX(a,b){if(b!=null)a.eC(0,new A.kV().mu(b))}, +bmW(a){var s=new A.kV(),r=a.l_(0,2) +r.G(0,a.l_(0,s.o7(0,r))) +return s.adE(r)}, +Ll(a){return new A.a4j(a)}, +aC(a,b){var s +if($.bLb){s=new A.aS(Date.now(),0,!1) +if(A.mo(b))A.dJ(s.j(0)+" -- "+a) +else A.dJ(s.j(0)+" -- "+a+A.c(b))}}, +bLl(a){switch(a){case 0:return B.b9 +case 1:return B.cG +case 2:return B.hP +case 128:return B.ai2 +default:return B.ai1}}, +bLk(a){var s,r,q,p +for(s=A.y(a),r=new A.ci(a,a.gt(0),s.i("ci")),s=s.i("S.E"),q="";r.u();q=p){p=r.d +if(p==null)p=s.a(p) +p=q+"<"+A.c(p)+">"}return q.charCodeAt(0)==0?q:q}, +a4e:function a4e(){}, +a4g:function a4g(){}, +a4h:function a4h(){var _=this +_.a=$ +_.b=0 +_.d=_.c=null +_.e=$ +_.f=!1 +_.w=_.r=null}, +Cg:function Cg(a,b){this.a=a +this.b=b}, +Cf:function Cf(a,b){this.a=a +this.b=b}, +Ln:function Ln(){}, +a4b:function a4b(){}, +aJE:function aJE(a){this.b=this.a="" +this.c=a}, +kV:function kV(){}, +aJP:function aJP(){}, +hH:function hH(){}, +a4f:function a4f(){this.a=$}, +a4l:function a4l(){this.a=$}, +a4m:function a4m(){this.a=$}, +a4n:function a4n(){this.a=$}, +Ch:function Ch(){this.a=$}, +a4o:function a4o(){this.a=$}, +a4p:function a4p(){this.a=$}, +Cd:function Cd(){this.a=this.b=null}, +aJ1:function aJ1(a,b,c,d,e){var _=this +_.a=a +_.b=0 +_.c=b +_.d=c +_.e=null +_.f=d +_.w=e}, +aJ7:function aJ7(a){var _=this +_.a=!1 +_.c=a +_.f=_.e=!1}, +a4d:function a4d(){this.b=null +this.c=$ +this.a=null}, +aJ8:function aJ8(a,b,c){var _=this +_.a=a +_.b=b +_.c="" +_.e=c +_.r=_.f=null}, +aJ9:function aJ9(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=0 +_.Q=e +_.at=f}, +aJQ:function aJQ(a,b){this.a=a +this.w=b}, +aJ5:function aJ5(){this.a=!1}, +Lk:function Lk(){this.a=this.b=null}, +aJ6:function aJ6(a,b,c){var _=this +_.a=a +_.b=!1 +_.c=b +_.d=c +_.f=_.e=0 +_.r=65535 +_.w=2 +_.x=!1 +_.y=0 +_.z=null +_.Q=0 +_.as=null +_.ch=_.ay=_.ax=!0 +_.CW=0 +_.db=_.cy=_.cx=null}, +xK:function xK(){this.a=this.b=null}, +a4i:function a4i(a,b,c,d){var _=this +_.a=a +_.b=0 +_.c=b +_.d=c +_.r=d}, +jv:function jv(a,b){var _=this +_.a=a +_.b=0 +_.c=null +_.d=!1 +_.e=b +_.f=!1}, +aJb:function aJb(){}, +e3:function e3(){}, +hi:function hi(a,b){this.a=a +this.b=b}, +Co:function Co(a){this.a=a}, +a4q:function a4q(){this.a=null}, +Lm:function Lm(){this.a=null}, +a4c:function a4c(a,b){this.a=null +this.b=a +this.c=b}, +Lg:function Lg(a){this.a=a +this.b=0}, +a4k:function a4k(){this.a=null +this.b=0}, +a4r:function a4r(a,b,c){this.a=a +this.b=b +this.c=c}, +dY:function dY(a,b){this.a=a +this.b=b}, +a4C:function a4C(){}, +a4G:function a4G(){this.a=null +this.b=0}, +Cp:function Cp(a,b){this.a=a +this.b=b}, +a4I:function a4I(a){this.b=this.a=null +this.c=a}, +a4J:function a4J(a){this.a=null +this.b=0 +this.c=a}, +xL:function xL(){this.b=null +this.c=$ +this.a=null}, +a4v:function a4v(a,b){var _=this +_.a=0 +_.b=a +_.c=b +_.d=null}, +a4y:function a4y(a,b,c,d,e){var _=this +_.a=a +_.b=0 +_.c="" +_.d=0 +_.e=b +_.f=c +_.r=!1 +_.w=65535 +_.x=255 +_.y="" +_.Q=d +_.as=e}, +Cj:function Cj(){this.a=this.b=null}, +a4t:function a4t(a,b,c,d){var _=this +_.a=a +_.b=0 +_.c=b +_.d=c +_.e=0 +_.r=d}, +Ck:function Ck(){this.b=$ +this.a=null}, +a4u:function a4u(a,b,c,d){var _=this +_.a=a +_.b=0 +_.c=b +_.d=c +_.e=0 +_.r=d}, +Cl:function Cl(){this.b=$ +this.a=null}, +a4w:function a4w(a,b,c,d){var _=this +_.a=a +_.b=0 +_.c=b +_.d=c +_.e=0 +_.r=d}, +Cm:function Cm(){this.b=$ +this.a=null}, +a4x:function a4x(a,b,c,d){var _=this +_.a=a +_.b=0 +_.c=b +_.d=c +_.e=0 +_.r=d}, +xH:function xH(a,b){this.a=a +this.b=b}, +eS:function eS(a,b){this.a=a +this.b=b}, +dQ:function dQ(a,b){this.a=a +this.b=b}, +kc:function kc(a,b){this.a=a +this.b=b}, +i4:function i4(a,b){this.a=a +this.b=b}, +Lp:function Lp(){this.a=this.c=this.b=null}, +a4D:function a4D(a,b){this.a=a +this.b=b}, +aJH:function aJH(a,b){this.c=a +this.d=b}, +aJI:function aJI(a,b){this.a=0 +this.b=a +this.d=b}, +Lo:function Lo(){this.a=this.c=this.b=null}, +aJF:function aJF(a,b,c){var _=this +_.a=0 +_.b=a +_.c=b +_.d=c}, +aJG:function aJG(a,b){var _=this +_.a=0 +_.b=a +_.c=0 +_.d=null +_.e=b}, +a4H:function a4H(a,b){this.b=a +this.c=b +this.a=null}, +aJN:function aJN(a){this.a=a}, +aJO:function aJO(a,b){this.a=0 +this.b=a +this.c=b}, +Lr:function Lr(){this.a=this.c=this.b=null}, +aJL:function aJL(a,b,c){var _=this +_.a=0 +_.b=a +_.c=b +_.d=c}, +aJM:function aJM(a,b){var _=this +_.a=0 +_.b=a +_.c=0 +_.d=null +_.e=b}, +a4a:function a4a(a){this.a=null +this.b=a}, +Li:function Li(){}, +xJ:function xJ(a,b,c){var _=this +_.a=a +_.b=b +_.c=null +_.d=c}, +Ci:function Ci(a){this.a=a}, +Ce:function Ce(a){this.a=a}, +u4:function u4(a,b){this.a=a +this.b=b}, +xI:function xI(){}, +Cn:function Cn(a){this.a=a}, +AY:function AY(){}, +avZ:function avZ(){}, +aJd:function aJd(){this.a=0}, +a4s:function a4s(a){this.a=a +this.b=$}, +a4z:function a4z(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.w=g}, +xM:function xM(a,b){this.a=a +this.b=b}, +qn:function qn(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aJf:function aJf(a,b){this.a=a +this.b=b}, +u5:function u5(a,b,c){var _=this +_.a=$ +_.b=a +_.c=null +_.d=b +_.e=c}, +a4E:function a4E(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.w=_.r=_.f=null +_.x=!0 +_.y=f +_.z=g}, +Lq:function Lq(a){this.a=a +this.b=$}, +aJJ:function aJJ(){}, +u6:function u6(){}, +ju:function ju(a){this.a=0 +this.b=a}, +a4j:function a4j(a){this.a=a}, +aJa:function aJa(a,b){this.a=a +this.b=b}, +aJe:function aJe(){this.a=null}, +Lh:function Lh(a){var _=this +_.a=a +_.c=_.b=$ +_.d=!1}, +bTQ(a,b){var s,r,q,p,o,n,m,l,k,j,i,h="content-length",g="connection",f="sec-websocket-accept" +$.Gg.b=$.Gg.eg()+a +s=B.c.dV($.Gg.eg(),"\n\n") +if(s<0)return!0 +r=A.a(B.c.R($.Gg.eg(),0,s).split("\n"),t.s) +if(r.length===0)throw A.d(A.dF("MqttServerWs2Connection::server returned invalid response")) +q=J.GE(r[0]," ") +if(q.length<3)throw A.d(A.dF("MqttServerWs2Connection::server returned malformed status line")) +p=t.N +o=A.w(p,p) +B.b.iF(r,0) +for(p=r.length,n=0;n, jsonMap.runtimeType: "+J.ah(s).j(0)+", jsonMap: "+J.p(s),m) +if(s==null||J.cT(s)){A.dE(l) +return m}if(typeof s=="string"){A.u("[SubscribeCacheUtil] \u8bbe\u5907\u6750\u6599\u4fe1\u606fJSON\u5b57\u7b26\u4e32\u4e3aString, \u5f00\u59cb\u7ee7\u7eed\u53cd\u5e8f\u5217\u5316 jsonMap\uff1a"+s,m) +s=B.a7.jo(0,s,m)}if(t.a.b(s)){A.u("[SubscribeCacheUtil] \u8bbe\u5907\u6750\u6599\u4fe1\u606fJSON\u5b57\u7b26\u4e32\u4e3aMap, \u5f00\u59cb\u7ee7\u7eed\u53cd\u5e8f\u5217\u5316 jsonMap",m) +if(J.cO(s,"moduleName")){r=A.bw6(s) +A.u(k+A.c(J.aM(r.b)),m) +return r}else{A.u("[SubscribeCacheUtil] \u8bbe\u5907\u6750\u6599\u4fe1\u606fJSON\u4e0d\u5305\u542bmoduleName",m) +q=new A.uR("deviceFilamentInfo",s,b,m) +A.u(k+J.aM(J.rX(s)),m) +return q}}return m}catch(n){p=A.v(n) +o=J.p(p) +$.ac().a3("[SubscribeCacheUtil] \u53cd\u5e8f\u5217\u5316\u8bbe\u5907\u6750\u6599\u4fe1\u606f\u5931\u8d25: "+o) +return m}}, +bO2(a,b){var s,r,q,p,o,n,m,l,k=null +try{A.u("[SubscribeCacheUtil] \u5f00\u59cb\u5e8f\u5217\u5316\u8bbe\u5907\u5217\u8868\uff0c\u8bbe\u5907\u6570\u91cf: "+a.length,k) +s=A.w(t.N,t.a) +for(n=a.length,m=0;m")).bJ(0,", ")) +q=l +s=1 +break}j=A.a([],t.sX) +q=j +s=1 +break +p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +A.av(a,B.p,"_getLocalDevices error: "+J.p(k)) +j=A.a([],t.sX) +q=j +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aL6,r)}, +l1(a,b,c){return A.bLL(a,b,c)}, +bLL(c9,d0,d1){var s=0,r=A.n(t.H),q=1,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 +var $async$l1=A.j(function(d2,d3){if(d2===1){p=d3 +s=q}while(true)switch(s){case 0:q=3 +b0="["+d1 +A.av(c9,B.A,b0+"], 1, updateOrcaDeviceListToCache") +s=6 +return A.f(c9.iN(),$async$l1) +case 6:o=d3 +s=7 +return A.f(A.aL6(c9),$async$l1) +case 7:n=d3 +A.av(c9,B.f,b0+"], 2, updateOrcaDeviceListToCache, _getLocalDevices: "+J.eX(n,new A.aLk(),t.N).bJ(0,", ")) +if(o==null&&!c9.ax)for(b1=J.ay(n),b2=d1+", 3, isActiveStatus: ",b3=A.c(d0);b1.u();){m=b1.gI(b1) +b4=$.aX() +if(b4.c==null){b4.c=A.aDD() +b5=$.fR.b +b6=u.L+b5 +b7=$.aoI +if(b7==null)A.aoH(b6) +else b7.$1(b6) +$.Vw=b5 +A.aL("[OrcaGateway] LavaDeviceViewModel \u5b9e\u4f8b\u5df2\u521b\u5efa")}b4=b4.c +b4.toString +l=b4 +b4=m.w +A.Z(B.f,"[LavaDeviceVM] ["+(b2+c9.ax+", initiateModule: "+$.fR.b+", cacheModule: "+b3)+"] removeDeviceService, key: "+b4) +A.he(null,b4)}b1=J.apc(n,new A.aLl()) +k=A.a8(b1,!0,b1.$ti.i("B.E")) +b1=J.apc(n,new A.aLm()) +j=A.a8(b1,!0,b1.$ti.i("B.E")) +b1=$.aX() +b2=b1.gek().b +i=b2.f==="online"&&b2.c.length!==0 +h=null +q=9 +s=i?12:13 +break +case 12:s=14 +return A.f(b1.gcT().uP(b1.gek().b.ao(),!1),$async$l1) +case 14:h=d3 +case 13:q=3 +s=11 +break +case 9:q=8 +c4=p +g=A.v(c4) +A.av(c9,B.p,b0+"], 4, updateOrcaDeviceListToCache, fetchUserDeviceList error: "+J.p(g)) +s=11 +break +case 8:s=3 +break +case 11:b1=$.aX().gcT().a.gaJ(0) +f=A.a8(b1,!0,A.y(b1).i("B.E")) +b1=f +b2=A.af(b1).i("bh<1>") +e=A.a8(new A.bh(b1,new A.aLq(),b2),!0,b2.i("B.E")) +b2=f +b1=A.af(b2).i("bh<1>") +d=A.a8(new A.bh(b2,new A.aLr(),b1),!0,b1.i("B.E")) +c=A.bn9(c9,k,e) +b=A.bn9(c9,j,d) +if(h!=null)b=A.bn9(c9,h,b) +b1=b +A.av(c9,B.f,b0+"], 5, updateOrcaDeviceListToCache, syncedWanDeviceList: "+new A.ad(b1,new A.aLs(),A.af(b1).i("ad<1,h>")).bJ(0,", ")) +a=c +a0=b +b1=a +a1=new A.ad(b1,new A.aLt(),A.af(b1).i("ad<1,h>")).hZ(0) +b1=a0 +a2=new A.ad(b1,new A.aLu(),A.af(b1).i("ad<1,h>")).hZ(0) +a3=J.bEQ(a2,a1) +b1=c +if(!!b1.fixed$length)A.V(A.ag("removeWhere")) +B.b.mQ(b1,new A.aLv(a3),!0) +a4=A.a8(a,!0,t.CX) +J.zZ(a4,a0) +a5=a4 +a4=a5 +A.av(c9,B.a0,b0+"], 6, updateOrcaDeviceListToCache, 1 updateDeviceList: "+new A.ad(a4,new A.aLw(),A.af(a4).i("ad<1,h>")).bJ(0,", ")) +s=o!=null&&o.fr&&o.fy.eP()&&!i?15:16 +break +case 15:q=18 +A.av(c9,B.A,b0+"], 7, updateOrcaDeviceListToCache, 1 isLogout: false, \u5f53\u524d\u8fde\u63a5\u8bbe\u5907\u4e3a\u7a7a, \u5207\u5f53\u524d\u8fde\u63a5\u7684\u662f\u4e91\u7aef\u8bbe\u5907\uff0c\u9700\u8981\u6e05\u9664\u8fde\u63a5\u72b6\u6001,disconnectDevice: "+o.aD()) +s=21 +return A.f(c9.acE(o,"logout-updateOrcaDeviceListToCache",!1),$async$l1) +case 21:o=null +q=3 +s=20 +break +case 18:q=17 +c5=p +a6=A.v(c5) +a4=o +a4=a4==null?null:a4.aD() +A.av(c9,B.p,b0+"], 8, updateOrcaDeviceListToCache, 1 isLogout: false, \u5f53\u524d\u8fde\u63a5\u8bbe\u5907\u4e3a\u7a7a\uff0c\u9700\u8981\u6e05\u9664\u6240\u6709\u7684\u8fde\u63a5\u72b6\u6001,disconnectDevice: "+A.c(a4)+", error: "+J.p(a6)) +o=null +s=20 +break +case 17:s=3 +break +case 20:case 16:if(o==null){a4=o +if(a4!=null)J.bEI(a4)}s=!i?22:24 +break +case 22:a4=a5,b1=a4.length,b2=d1+", 11, isLogout: ",b9=0 +case 25:if(!(b9")).bJ(0,", ")) +a4=a5 +A.av(c9,B.f,b0+"], 18, updateOrcaDeviceListToCache, !!! deviceViewModel.syncOrcaDeviceModelList.updateDeviceList: "+new A.ad(a4,new A.aLo(),A.af(a4).i("ad<1,h>")).bJ(0,", ")) +a4=$.aX().gcT() +b1=d0==null?$.fR.b:d0 +a4.Pl(a5,b1) +A.av(c9,B.f,b0+"], 19, updateOrcaDeviceListToCache, !!! \u53ea\u5141\u8bb8\u6fc0\u6d3b\u72b6\u6001\u5199\u5165\u7f13\u5b58,\u5f53\u524d\u662f: "+c9.ax+"\uff0c \u8c03\u7528\u7684\u6a21\u5757\uff1a "+A.c(d0)+", \u5f53\u524d\u6a21\u5757\uff1a "+$.fR.b) +if($.fR.b!==d0){a4=a5 +A.av(c9,B.f,b0+"], 20, updateOrcaDeviceListToCache, !!! _writeDeviceListToCache: "+new A.ad(a4,new A.aLp(),A.af(a4).i("ad<1,h>")).bJ(0,", ")) +A.aLj(c9,a5)}q=1 +s=5 +break +case 3:q=2 +c8=p +a9=A.v(c8) +A.av(c9,B.p,"["+d1+"], 21, updateOrcaDeviceListToCache error: "+J.p(a9)) +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$l1,r)}, +aLj(a,b){return A.bLK(a,b)}, +bLK(a,b){var s=0,r=A.n(t.H),q=1,p,o,n,m,l +var $async$aLj=A.j(function(c,d){if(c===1){p=d +s=q}while(true)switch(s){case 0:s=a.ax?2:4 +break +case 2:q=6 +o=A.bO2(b,$.fR.b) +A.av(a,B.f,"\u5199\u5165\u8bbe\u5907\u5217\u8868\u5230\u7f13\u5b58: "+A.c(o)) +s=9 +return A.f(A.Pw($.aX().gcz(),A.a([A.C(["key","deviceList","value",o],t.N,t.z)],t.H7)),$async$aLj) +case 9:q=1 +s=8 +break +case 6:q=5 +l=p +n=A.v(l) +A.av(a,B.p,"\u5199\u5165\u8bbe\u5907\u5217\u8868\u5230\u7f13\u5b58\u5931\u8d25: "+J.p(n)) +s=8 +break +case 5:s=1 +break +case 8:s=3 +break +case 4:A.av(a,B.f,"writeDeviceListToCache \u53ea\u5141\u8bb8\u6fc0\u6d3b\u9875\u9762\u5199\u64cd\u4f5c, isActiveStatus: false") +case 3:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$aLj,r)}, +bna(a,b){return A.bLJ(a,b)}, +bLJ(a3,a4){var s=0,r=A.n(t.H),q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2 +var $async$bna=A.j(function(a6,a7){if(a6===1)return A.k(a7,r) +while(true)switch(s){case 0:if(a4==null){s=1 +break}p=a4 +try{if(typeof p=="string"){o=A.bO1(p,$.fR.b) +b=o +A.av(a3,B.A,"\u53cd\u5e8f\u5217\u5316\u8bbe\u5907\u5217\u8868: "+A.c(b==null?null:J.aM(b.b))+" \u4e2a\u8bbe\u5907") +b=o +b=b==null?null:b.c +if(b===$.fR.b){b=o +A.av(a3,B.A,"!!! \u8bbe\u5907\u5217\u8868\u6570\u636e\u6a21\u5757\u540d\u79f0\u76f8\u540c, subscribeCacheObjects.moduleName: "+A.c(b==null?null:b.c)+", initiateModule.name: home skip update") +s=1 +break}b=o==null +if(!b)o.toString +if(b){s=1 +break}b=t.sX +n=A.a([],b) +m=A.a([],b) +if(t.j.b(o.b))for(b=J.ay(o.b),a=t.a;b.u();){l=b.gI(b) +if(a.b(l)){if(J.cO(l,"connected")&&J.e(J.i(l,"connected"),!0))J.dN(m,A.kE(l)) +J.dN(n,A.kE(l))}else if(l instanceof A.ch){if(l.fr)J.dN(m,l) +J.dN(n,l)}else A.av(a3,B.f,"\u8bbe\u5907\u5217\u8868\u6570\u636e\u683c\u5f0f\u9519\u8bef")}k=A.bw9(n,B.aom) +if(k){A.av(a3,B.A,"\u8bbe\u5907\u5217\u8868\u6570\u636e\u9a8c\u8bc1\u901a\u8fc7") +a3.as=n +b=n +A.av(a3,B.A,"_synchronizeDeviceListDataFromCache, cachedDeviceList: "+new A.ad(b,new A.aLe(),A.af(b).i("ad<1,h>")).bJ(0,", ")) +try{A.av(a3,B.A,"\u5f00\u59cb\u4ece\u7f13\u5b58\u66f4\u65b0\u8bbe\u5907\u5217\u8868\uff0c\u7f13\u5b58\u8bbe\u5907\u6570\u91cf: "+J.aM(n)) +j=$.aX().gcT() +b=j.a.gaJ(0) +i=A.a8(b,!0,A.y(b).i("B.E")) +b=i +a=A.af(b).i("bh<1>") +h=A.f8(new A.bh(b,new A.aLf(),a),a.i("B.E")) +a=i +b=A.af(a) +a0=b.i("hF<1,h>") +g=A.f8(new A.hF(new A.bh(a,new A.aLg(),b.i("bh<1>")),new A.aLh(),a0),a0.i("B.E")) +a0=m +f=new A.ad(a0,new A.aLi(),A.af(a0).i("ad<1,h>")).hZ(0) +b=f.hC(g) +if(b.ga_(b)){b=g.hC(f) +a1=b.ga_(b)}else a1=!1 +e=a1 +if(J.aM(i)!==J.aM(n)||J.aM(m)>1||h.a!==J.aM(m)||!e){A.av(a3,B.f,"\u8bbe\u5907\u5217\u8868\u6570\u636e\u957f\u5ea6\u4e0d\u4e00\u81f4, \u9700\u8981\u8c03\u7528\u66f4\u65b0,\u7f13\u5b58\u8bbe\u5907\u6570\u91cf: "+J.aM(n)+", \u5f53\u524d\u8bbe\u5907\u6570\u91cf: "+J.aM(i)+", \u8fde\u63a5\u8bbe\u5907\u6570\u91cf: "+J.aM(m)+", \u5f53\u524d\u8fde\u63a5\u8bbe\u5907\u6570\u91cf: "+h.a+", \u5185\u5b58\u8fde\u63a5:"+A.jr(f,"{","}")+", \u5f53\u524d\u8bbe\u5907\u5217\u8868\u83b7\u53d6\u7684\u8fde\u63a5:"+A.jr(g,"{","}")+", isEqual: "+A.c(e)) +A.l1(a3,o.c,"synchronizeDeviceListDataFromCache")}}catch(a5){d=A.v(a5) +A.av(a3,B.p,"\u4ece\u7f13\u5b58\u66f4\u65b0\u8bbe\u5907\u5217\u8868\u5931\u8d25: "+J.p(d))}}else A.av(a3,B.f,"\u8bbe\u5907\u5217\u8868\u6570\u636e\u9a8c\u8bc1\u5931\u8d25")}}catch(a5){c=A.v(a5) +A.av(a3,B.p,"\u5904\u7406\u8bbe\u5907\u5217\u8868\u8ba2\u9605\u6570\u636e\u5931\u8d25: "+J.p(c))}case 1:return A.l(q,r)}}) +return A.m($async$bna,r)}, +bn9(a1,a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=null,a="removeWhere",a0=J.a0(a2) +A.av(a1,B.A,"syncDeviceModelList, 1, \u5f00\u59cb\u540c\u6b65\uff0c\u539f\u59cb\u5217\u8868\u957f\u5ea6: "+a3.length+", \u65b0\u6570\u636e\u957f\u5ea6: "+a0.gt(a2)) +s=a0.eR(a2,new A.aL9(),t.N).hZ(0) +r=new A.ad(a3,new A.aLa(),A.af(a3).i("ad<1,h>")).hZ(0) +q=r.hC(s) +p=s.hC(r) +o=A.cN(a3,!0,t.CX) +n=$.aX().gek().b +if(n.f==="online"&&n.c.length!==0){if(!!o.fixed$length)A.V(A.ag(a)) +B.b.mQ(o,new A.aLb(q),!0)}else{if(!!o.fixed$length)A.V(A.ag(a)) +B.b.mQ(o,new A.aLc(q),!0)}for(n=a0.gav(a2);n.u();){m=n.gI(n) +l=B.b.aee(o,new A.aLd(m)) +if(l!==-1){k=o[l] +A.av(a1,B.A,"\u9700\u8981 \u66f4\u65b0\u8bbe\u5907 updateDeviceModelData, existingDevice: "+k.w+", newDevice: "+m.w) +if(k.go===m.go){j=m.b +if(j!=null&&j!=="")j.toString +else j=m.a +i=k.b +h=A.at(k) +g=$.ac() +f=g.a +f===$&&A.b() +e=Date.now() +f.cH(B.aj,u.p+A.c(i)+", setDeviceName: "+j+", reason: unknown, this.hashCode: "+h,b,b,new A.aS(e,0,!1)) +k.b=j +k.cx=m.cx +k.x=m.x +k.y=m.y +k.cy=m.cy +j=k.fr +i=m.fr +if(j!==i){A.av(a1,B.A,"\u9700\u8981\u66f4\u65b0\u8bbe\u5907 "+k.w+" \u8fde\u63a5\u72b6\u6001\u53d1\u751f\u53d8\u5316: "+j+" -> "+i) +j=m.fr +i=k.w +m=m.w +h=k.fr +f=A.at(k) +g=g.a +e=Date.now() +g.cH(B.aj,"DeviceModel setConnected, reason: "+("updateDeviceModelData, existingDevice: "+i+", newDevice: "+m)+", _connected: "+h+", set isConnected: "+j+", this.hashCode: "+f,b,b,new A.aS(e,0,!1)) +k.fr=j}}A.av(a1,B.A,"syncDeviceModelList, 2, \u66f4\u65b0\u8bbe\u5907-\u5185\u5b58\u5730\u5740: "+k.aD())}}for(a0=a0.gav(a2);a0.u();){n=a0.gI(a0) +if(p.p(0,n.w)){o.push(n) +A.av(a1,B.A,"syncDeviceModelList, 3, \u65b0\u589e\u8bbe\u5907-\u5185\u5b58\u5730\u5740: "+n.aD())}}A.av(a1,B.A,"syncDeviceModelList, 4, \u540c\u6b65\u5b8c\u6210\uff0c\u6700\u7ec8\u5217\u8868\u957f\u5ea6: "+o.length) +for(a0=o.length,d=0;d=1;s=q){q=s-1 +if(b[q]!=null)break}p=new A.cD("") +o=""+(a+"(") +p.a=o +n=A.af(b) +m=n.i("aP<1>") +l=new A.aP(b,0,s,m) +l.c_(b,0,s,n.c) +m=o+new A.ad(l,new A.bin(),m.i("ad")).bJ(0,", ") +p.a=m +p.a=m+("): part "+(r-1)+" was null, but part "+r+" was not.") +throw A.d(A.bl(p.j(0),null))}}, +XD:function XD(a,b){this.a=a +this.b=b}, +asR:function asR(){}, +asS:function asS(){}, +bin:function bin(){}, +aCS:function aCS(){}, +qt(a,b){var s,r,q,p,o,n=b.ajD(a),m=b.rG(a) +if(n!=null)a=B.c.bE(a,n.length) +s=t.s +r=A.a([],s) +q=A.a([],s) +s=a.length +if(s!==0&&b.pN(a.charCodeAt(0))){q.push(a[0]) +p=1}else{q.push("") +p=0}for(o=p;o").aH(e).i("KJ<1,2>"))}, +KJ:function KJ(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +Pa:function Pa(a,b){this.a=a +this.$ti=b}, +bp9(a,b){var s=new A.ad(new A.eY(a),A.bzv(),t.Hz.i("ad")).rH(0) +return new A.yH(new A.NR(a.charCodeAt(0)),'"'+s+'" expected')}, +NR:function NR(a){this.a=a}, +wm:function wm(a){this.a=a}, +a1Z:function a1Z(a,b,c){this.a=a +this.b=b +this.c=c}, +a5_:function a5_(a){this.a=a}, +bWG(a){var s,r,q,p,o,n,m,l,k=A.a8(a,!1,t.eg) +B.b.fZ(k,new A.bjG()) +s=A.a([],t.Am) +for(r=k.length,q=0;q=p.a){n=p.b +s[s.length-1]=new A.fL(o.a,n)}else s.push(p)}}m=B.b.yN(s,0,new A.bjH()) +if(m===0)return B.Y4 +else if(m-1===65535)return B.Y5 +else if(s.length===1){r=s[0] +n=r.a +return n===r.b?new A.NR(n):r}else{r=B.b.gW(s) +n=B.b.gY(s) +l=B.e.cA(B.b.gY(s).b-B.b.gW(s).a+1+31,5) +r=new A.a1Z(r.a,n.b,new Uint32Array(l)) +r.aqR(s) +return r}}, +bjG:function bjG(){}, +bjH:function bjH(){}, +bAy(a,b){var s=$.bDZ().bW(new A.AE(a,0)) +s=s.gk(s) +return new A.yH(s,b==null?"["+new A.ad(new A.eY(a),A.bzv(),t.Hz.i("ad")).rH(0)+"] expected":b)}, +bii:function bii(){}, +bi9:function bi9(){}, +bi8:function bi8(){}, +ha:function ha(){}, +fL:function fL(a,b){this.a=a +this.b=b}, +aao:function aao(){}, +bG5(a,b,c){var s=b==null?A.bzP():b +return new A.wg(s,A.a8(a,!1,c.i("b6<0>")),c.i("wg<0>"))}, +te(a,b,c){var s=b==null?A.bzP():b +return new A.wg(s,A.a8(a,!1,c.i("b6<0>")),c.i("wg<0>"))}, +wg:function wg(a,b,c){this.b=a +this.a=b +this.$ti=c}, +fC:function fC(){}, +bAN(a,b,c,d){return new A.yC(a,b,c.i("@<0>").aH(d).i("yC<1,2>"))}, +bNt(a,b,c,d){return new A.yC(a,b,c.i("@<0>").aH(d).i("yC<1,2>"))}, +bvg(a,b,c,d,e){return A.u_(a,new A.aNJ(b,c,d,e),!1,c.i("@<0>").aH(d).i("+(1,2)"),e)}, +yC:function yC(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aNJ:function aNJ(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +nT(a,b,c,d,e,f){return new A.yD(a,b,c,d.i("@<0>").aH(e).aH(f).i("yD<1,2,3>"))}, +bNu(a,b,c,d,e,f){return new A.yD(a,b,c,d.i("@<0>").aH(e).aH(f).i("yD<1,2,3>"))}, +ya(a,b,c,d,e,f){return A.u_(a,new A.aNK(b,c,d,e,f),!1,c.i("@<0>").aH(d).aH(e).i("+(1,2,3)"),f)}, +yD:function yD(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +aNK:function aNK(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bk0(a,b,c,d,e,f,g,h){return new A.NG(a,b,c,d,e.i("@<0>").aH(f).aH(g).aH(h).i("NG<1,2,3,4>"))}, +aNL(a,b,c,d,e,f,g){return A.u_(a,new A.aNM(b,c,d,e,f,g),!1,c.i("@<0>").aH(d).aH(e).aH(f).i("+(1,2,3,4)"),g)}, +NG:function NG(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.$ti=e}, +aNM:function aNM(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +bAO(a,b,c,d,e,f,g,h,i,j){return new A.NH(a,b,c,d,e,f.i("@<0>").aH(g).aH(h).aH(i).aH(j).i("NH<1,2,3,4,5>"))}, +bvh(a,b,c,d,e,f,g,h){return A.u_(a,new A.aNN(b,c,d,e,f,g,h),!1,c.i("@<0>").aH(d).aH(e).aH(f).aH(g).i("+(1,2,3,4,5)"),h)}, +NH:function NH(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.$ti=f}, +aNN:function aNN(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +bMJ(a,b,c,d,e,f,g,h,i,j,k){return A.u_(a,new A.aNO(b,c,d,e,f,g,h,i,j,k),!1,c.i("@<0>").aH(d).aH(e).aH(f).aH(g).aH(h).aH(i).aH(j).i("+(1,2,3,4,5,6,7,8)"),k)}, +NI:function NI(a,b,c,d,e,f,g,h,i){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.$ti=i}, +aNO:function aNO(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}, +xs:function xs(){}, +bLC(a,b){return new A.l0(null,a,b.i("l0<0?>"))}, +l0:function l0(a,b,c){this.b=a +this.a=b +this.$ti=c}, +NZ:function NZ(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +wG:function wG(a,b){this.a=a +this.$ti=b}, +a4X:function a4X(a){this.a=a}, +bp8(){return new A.ly("input expected")}, +ly:function ly(a){this.a=a}, +yH:function yH(a,b){this.a=a +this.b=b}, +a6c:function a6c(a,b,c){this.a=a +this.b=b +this.c=c}, +d4(a){var s=a.length +if(s===0)return new A.wG(a,t.oy) +else if(s===1){s=A.bp9(a,null) +return s}else{s=A.bXE(a,null) +return s}}, +bXE(a,b){return new A.a6c(a.length,new A.bk3(a),'"'+a+'" expected')}, +bk3:function bk3(a){this.a=a}, +bvu(a,b,c,d){return new A.a7d(a.a,d,b,c)}, +a7d:function a7d(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +ka:function ka(a,b,c,d,e){var _=this +_.e=a +_.b=b +_.c=c +_.a=d +_.$ti=e}, +Ku:function Ku(){}, +bMh(a,b){return A.bnn(a,0,9007199254740991,b)}, +bnn(a,b,c,d){return new A.Mi(b,c,a,d.i("Mi<0>"))}, +Mi:function Mi(a,b,c,d){var _=this +_.b=a +_.c=b +_.a=c +_.$ti=d}, +N4:function N4(){}, +um(a,b,c){var s +if(c){s=$.aoT() +A.wL(a) +s=s.a.get(a)===B.ix}else s=!1 +if(s)throw A.d(A.lz("`const Object()` cannot be used as the token.")) +s=$.aoT() +A.wL(a) +if(b!==s.a.get(a))throw A.d(A.lz("Platform interfaces must not be implemented with `implements`"))}, +aMH:function aMH(){}, +as6:function as6(){}, +aD7:function aD7(a){this.a=a}, +bzg(a){return($.big[a&255]&255|($.big[B.e.cA(a,8)&255]&255)<<8|($.big[B.e.cA(a,16)&255]&255)<<16|$.big[B.e.cA(a,24)&255]<<24)>>>0}, +apd:function apd(){var _=this +_.a=$ +_.b=null +_.r=_.f=_.e=_.d=_.c=$}, +ari:function ari(a){var _=this +_.a=a +_.b=$ +_.d=_.c=null +_.e=$}, +aPC:function aPC(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=$ +_.d=c +_.e=d +_.f=e +_.r=f +_.w=$}, +aMr:function aMr(a,b,c){this.a=a +this.b=b +this.c=c}, +aM6:function aM6(a){this.a=$ +this.b=a +this.c=$}, +aAW:function aAW(a,b){var _=this +_.a=a +_.b=$ +_.c=b +_.e=_.d=$}, +aqe:function aqe(){}, +aqh:function aqh(){}, +aqj:function aqj(){}, +aqk:function aqk(){}, +aFv:function aFv(){}, +bAR(a,b){b&=31 +return(a&$.kq[b])<>>0}, +bjI(a,b,c,d){if(!t.V4.b(b))b=A.eT(b.buffer,b.byteOffset,J.aM(b)) +b.setUint32(c,a,B.an===d)}, +aoM(a,b,c){if(!t.V4.b(a))a=A.eT(a.buffer,a.byteOffset,J.aM(a)) +return a.getUint32(b,B.an===c)}, +bvk(a){var s=new A.MC() +s.l5(0,a,null) +return s}, +MC:function MC(){this.b=this.a=$}, +brq(a,b,c){var s=null +return new A.wf(new A.EF(b,s,s,A.bA9(),A.bUX(),c.i("EF<0>")),s,s,a,s,c.i("wf<0>"))}, +Am(a,b,c,d){return new A.wf(new A.G8(c,null,A.bA9(),d.i("G8<0>")),null,a,b,null,d.i("wf<0>"))}, +bFW(a,b){if(b!=null)b.m()}, +wf:function wf(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=c +_.c=d +_.a=e +_.$ti=f}, +fA(a,b){return new A.HM(a,null,null,b.i("HM<0>"))}, +HM:function HM(a,b,c,d){var _=this +_.e=a +_.c=b +_.a=c +_.$ti=d}, +HN:function HN(a,b,c,d){var _=this +_.e=a +_.c=b +_.a=c +_.$ti=d}, +HO:function HO(a,b,c,d){var _=this +_.e=a +_.c=b +_.a=c +_.$ti=d}, +bKB(a,b){if(b!=null)b.a4(0,a.gaf0()) +return new A.aF2(b,a)}, +Kz:function Kz(){}, +aF2:function aF2(a,b){this.a=a +this.b=b}, +bLn(a,b){var s=A.bLo(b) +return new A.a4M(s,a,null)}, +bLo(a){var s,r,q,p,o,n={} +n.a=null +for(s=0,r=null;q=s<6,q;++s,r=o){p=a[s] +o=r==null?new A.aK_(p):new A.aK0(r,p) +n.a=o}r=A.a([],t.Ds) +if(n.a!=null)r.push(new A.a8e(new A.aK1(n),null,null)) +if(q)B.b.G(r,B.b.hL(a,s)) +return r}, +cy(a,b,c){var s,r=c.i("zm<0?>?").a(a.jc(c.i("fP<0?>"))),q=r==null +if(q&&!c.b(null))A.V(new A.a6n(A.cK(c),A.K(a.gaL()))) +if(b)a.au(c.i("fP<0?>")) +if(q)s=null +else{q=r.gwN() +s=q.gk(q)}if($.bDB()){if(!c.b(s))throw A.d(new A.a6o(A.cK(c),A.K(a.gaL()))) +return s}return s==null?c.a(s):s}, +BF:function BF(){}, +aCH:function aCH(a,b){this.a=a +this.b=b}, +RM:function RM(a,b,c){var _=this +_.pC$=a +_.c=_.b=_.a=_.ay=null +_.d=$ +_.e=b +_.r=_.f=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1}, +fP:function fP(a,b,c,d){var _=this +_.f=a +_.b=b +_.a=c +_.$ti=d}, +zm:function zm(a,b,c,d){var _=this +_.d3=!1 +_.b_=!0 +_.ed=_.cU=!1 +_.cY=$ +_.a2=a +_.c=_.b=_.a=_.ay=null +_.d=$ +_.e=b +_.r=_.f=null +_.w=c +_.z=_.y=null +_.Q=!1 +_.as=!0 +_.at=!1 +_.$ti=d}, +b8a:function b8a(a,b){this.a=a +this.b=b}, +aex:function aex(){}, +j1:function j1(){}, +EF:function EF(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.$ti=f}, +Qt:function Qt(a){var _=this +_.b=null +_.c=!1 +_.a=_.f=_.e=_.d=null +_.$ti=a}, +G8:function G8(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +Uo:function Uo(a){this.a=this.b=null +this.$ti=a}, +a4M:function a4M(a,b,c){this.c=a +this.d=b +this.a=c}, +aK_:function aK_(a){this.a=a}, +aK0:function aK0(a,b){this.a=a +this.b=b}, +aK1:function aK1(a){this.a=a}, +a6o:function a6o(a,b){this.a=a +this.b=b}, +a6n:function a6n(a,b){this.a=a +this.b=b}, +bH3(a,b,c){return new A.Ij(a,!0,c.i("Ij<0>"))}, +Ij:function Ij(a,b,c){this.a=a +this.b=b +this.$ti=c}, +b9W:function b9W(a,b){this.a=a +this.b=b}, +aa1:function aa1(a){this.a=a}, +bFx(a,b,c,d){return new A.aqA(a,b,d)}, +Hg:function Hg(a,b,c,d){var _=this +_.e=a +_.b=b +_.c=!1 +_.a=c +_.$ti=d}, +aqA:function aqA(a,b,c){this.a=a +this.b=b +this.c=c}, +amA:function amA(a){this.a=!1 +this.b=a +this.c=null}, +vf:function vf(a,b){this.a=a +this.$ti=b}, +DN:function DN(){}, +G0:function G0(a,b){this.a=a +this.$ti=b}, +FV:function FV(a){this.c=a +this.a=null}, +Om:function Om(a,b){this.a=a +this.$ti=b}, +aSt:function aSt(a){this.a=a}, +FU:function FU(a,b){this.c=a +this.d=b +this.a=null}, +Ol:function Ol(a,b,c){this.a=a +this.b=b +this.$ti=c}, +aSs:function aSs(a){this.a=a}, +b2S:function b2S(){}, +a_U:function a_U(a,b){this.a=a +this.b=b}, +JD:function JD(){}, +bzS(a,b,c,d){var s +if(a.gi7())s=A.bSP(a,b,c,d) +else s=A.bSO(a,b,c,d) +return s}, +bSP(a,b,c,d){return new A.zs(!0,new A.bhD(b,a,d),d.i("zs<0>"))}, +bSO(a,b,c,d){var s,r,q=null,p={} +if(a.gi7())s=new A.pa(q,q,d.i("pa<0>")) +else s=A.i9(q,q,q,q,!0,d) +p.a=null +p.b=!1 +r=A.boq("sink",new A.bhH(b,c,d)) +s.safl(new A.bhI(p,a,r,s)) +s.safh(0,new A.bhJ(p,r)) +return s.gwm(s)}, +bhD:function bhD(a,b,c){this.a=a +this.b=b +this.c=c}, +bhE:function bhE(a,b,c){this.a=a +this.b=b +this.c=c}, +bhC:function bhC(a,b){this.a=a +this.b=b}, +bhH:function bhH(a,b,c){this.a=a +this.b=b +this.c=c}, +bhI:function bhI(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bhK:function bhK(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bhF:function bhF(a,b){this.a=a +this.b=b}, +bhG:function bhG(a,b){this.a=a +this.b=b}, +bhJ:function bhJ(a,b){this.a=a +this.b=b}, +Se:function Se(a){this.a=a}, +Re:function Re(a){this.a=a}, +i7(){var s=0,r=A.n(t.cZ),q,p=2,o,n,m,l,k,j,i +var $async$i7=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:s=$.aRx==null?3:4 +break +case 3:n=new A.aq(new A.a_($.ab,t.cO),t.Iy) +$.aRx=n +p=6 +s=9 +return A.f(A.aRy(),$async$i7) +case 9:m=b +J.VY(n,new A.Du(m)) +p=2 +s=8 +break +case 6:p=5 +i=o +l=A.v(i) +n.dF(l) +k=n.a +$.aRx=null +q=k +s=1 +break +s=8 +break +case 5:s=2 +break +case 8:case 4:q=$.aRx.a +s=1 +break +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$i7,r)}, +aRy(){var s=0,r=A.n(t.nf),q,p,o,n,m,l,k,j +var $async$aRy=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:n=t.N +m=t.K +l=A.w(n,m) +k=J +j=l +s=3 +return A.f($.aoV().te(0),$async$aRy) +case 3:k.zZ(j,b) +p=A.w(n,m) +for(n=l,n=A.js(n,n.r);n.u();){m=n.d +o=B.c.bE(m,8) +m=J.i(l,m) +m.toString +p.n(0,o,m)}q=p +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$aRy,r)}, +Du:function Du(a){this.a=a}, +aIz:function aIz(){}, +aRw:function aRw(){}, +aN0:function aN0(a,b){this.a=a +this.b=b}, +aAM:function aAM(a){this.a=a}, +bSY(a){var s=A.bJT(self.window.localStorage) +return new A.bh(s,new A.bhL(a),A.af(s).i("bh<1>"))}, +bSo(a){var s,r=null +try{r=B.a7.ei(0,a)}catch(s){if(t.bE.b(A.v(s)))return null +else throw s}if(t.j.b(r))return J.A_(r,t.N) +return r}, +aRu:function aRu(){}, +aRv:function aRv(a){this.a=a}, +bhL:function bhL(a){this.a=a}, +bm8(a,b){if(b<0)A.V(A.h1("Offset may not be negative, was "+b+".")) +else if(b>a.c.length)A.V(A.h1("Offset "+b+u.D+a.gt(0)+".")) +return new A.a09(a,b)}, +aSb:function aSb(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +a09:function a09(a,b){this.a=a +this.b=b}, +F0:function F0(a,b,c){this.a=a +this.b=b +this.c=c}, +bJh(a,b){var s=A.bJi(A.a([A.bPW(a,!0)],t._Y)),r=new A.aBA(b).$0(),q=B.e.j(B.b.gY(s).b+1),p=A.bJj(s)?0:3,o=A.af(s) +return new A.aBg(s,r,null,1+Math.max(q.length,p),new A.ad(s,new A.aBi(),o.i("ad<1,t>")).lI(0,B.SD),!A.bWi(new A.ad(s,new A.aBj(),o.i("ad<1,O?>"))),new A.cD(""))}, +bJj(a){var s,r,q +for(s=0;s")),r=r.y[1];s.u();){q=s.a +if(q==null)q=r.a(q) +J.W0(q,new A.aBm())}s=p.gdG(p) +r=A.y(s).i("hB") +return A.a8(new A.hB(s,new A.aBn(),r),!0,r.i("B.E"))}, +bPW(a,b){var s=new A.b5s(a).$0() +return new A.j3(s,!0,null)}, +bPY(a){var s,r,q,p,o,n,m=a.ge3(a) +if(!B.c.p(m,"\r\n"))return a +s=a.gbV(a) +r=s.gdA(s) +for(s=m.length-1,q=0;qb?a:b,r=c>d?c:d +return s>r?s:r}, +mw:function mw(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +brI(a,b,c,d,e){var s=A.y_(a,b,e),r=A.y_(b,c,e),q=A.y_(c,d,e),p=A.y_(s,r,e),o=A.y_(r,q,e) +return A.a([a,s,p,A.y_(p,o,e),o,q,d],t.Id)}, +a5T(a,b){var s=A.a([],t.H9) +B.b.G(s,a) +return new A.iy(s,b)}, +bAs(a,b){var s,r,q,p +if(a==="")return A.a5T(B.aaj,b==null?B.d7:b) +s=new A.aTs(a,B.fB,a.length) +s.BQ() +r=A.a([],t.H9) +q=new A.l2(r,b==null?B.d7:b) +p=new A.aTr(B.il,B.il,B.il,B.fB) +for(r=new A.lp(s.afG().a());r.u();)p.aSH(r.b,q) +return q.vO()}, +a5V:function a5V(a,b){this.a=a +this.b=b}, +CJ:function CJ(a,b){this.a=a +this.b=b}, +uj:function uj(){}, +i3:function i3(a,b,c){this.b=a +this.c=b +this.a=c}, +kU:function kU(a,b,c){this.b=a +this.c=b +this.a=c}, +hv:function hv(a,b,c,d,e,f,g){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.f=e +_.r=f +_.a=g}, +at0:function at0(){}, +HF:function HF(a){this.a=a}, +l2:function l2(a,b){this.a=a +this.b=b}, +iy:function iy(a,b){this.a=a +this.b=b}, +b_7:function b_7(a){this.a=a +this.b=0}, +bay:function bay(a,b,c,d){var _=this +_.a=a +_.b=$ +_.c=b +_.d=c +_.e=$ +_.f=d}, +M3:function M3(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +bJq(a){var s,r,q=null +if(a.length===0)throw A.d(A.bl("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.eT(a.buffer,0,q) +return new A.aMO(s.getUint32(16,!1),s.getUint32(20,!1))}r=!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}if(r){s=A.eT(a.buffer,0,q) +return new A.aAN(s.getUint16(6,!0),s.getUint16(8,!0))}if(s>12&&a[0]===255&&a[1]===216&&a[2]===255)return A.bJJ(A.eT(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.eT(a.buffer,0,q) +return new A.aWP(s.getUint16(26,!0),s.getUint16(28,!0))}if(s>22&&a[0]===66&&a[1]===77){s=A.eT(a.buffer,0,q) +return new A.aqF(s.getInt32(18,!0),s.getInt32(22,!0))}throw A.d(A.bl("unknown image type",q))}, +bJJ(a){var s,r=4+a.getUint16(4,!1) +for(;r>>0)}, +brz(a,b,c,d){return new A.an(((a&255)<<24|(b&255)<<16|(c&255)<<8|d&255)>>>0)}, +an:function an(a){this.a=a}, +mT:function mT(){}, +tU:function tU(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}, +JI:function JI(a,b){this.a=a +this.b=b}, +us:function us(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}, +oD:function oD(a,b,c){this.a=a +this.b=b +this.c=c}, +Or:function Or(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +wT:function wT(a,b){this.a=a +this.b=b}, +hu:function hu(a,b){this.a=a +this.b=b}, +a5P:function a5P(a,b){this.a=a +this.b=b}, +Os:function Os(a,b){this.a=a +this.b=b}, +Ot:function Ot(a,b){this.a=a +this.b=b}, +P5:function P5(a,b){this.a=a +this.b=b}, +OU:function OU(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +OO:function OO(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}, +mQ:function mQ(a,b){this.a=a +this.b=b}, +yN:function yN(a,b){this.a=a +this.b=b}, +yM:function yM(a){this.a=a}, +bo9(a,b,c,d,e){var s=b==null?A.a([],t.f2):b +return new A.aad(e,c,s,a,d)}, +xX(a,b,c){var s=b==null?A.a([],t.f2):b +return new A.CI(s,a,c==null?a.r:c)}, +bwt(a,b){var s=A.a([],t.f2) +return new A.a9w(b,s,a,a.r)}, +bN0(a,b,c){return new A.a7A(c,b,a,B.bJ)}, +buW(a,b){return new A.CK(a,b,b.r)}, +bs0(a,b,c){return new A.AO(b,c,a,a.r)}, +bwq(a,b){return new A.a9v(a,b,b.r)}, +btB(a,b,c){return new A.a16(a,b,c,c.r)}, +dZ:function dZ(){}, +afg:function afg(){}, +a9L:function a9L(){}, +ii:function ii(){}, +aad:function aad(a,b,c,d,e){var _=this +_.r=a +_.w=b +_.d=c +_.b=d +_.a=e}, +CI:function CI(a,b,c){this.d=a +this.b=b +this.a=c}, +a9w:function a9w(a,b,c,d){var _=this +_.r=a +_.d=b +_.b=c +_.a=d}, +a7A:function a7A(a,b,c,d){var _=this +_.r=a +_.d=b +_.b=c +_.a=d}, +HA:function HA(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +KN:function KN(a,b,c,d,e){var _=this +_.b=a +_.c=b +_.d=c +_.e=d +_.a=e}, +CK:function CK(a,b,c){this.d=a +this.b=b +this.a=c}, +AO:function AO(a,b,c,d){var _=this +_.d=a +_.e=b +_.b=c +_.a=d}, +a9v:function a9v(a,b,c){this.d=a +this.b=b +this.a=c}, +a16:function a16(a,b,c,d){var _=this +_.d=a +_.e=b +_.b=c +_.a=d}, +M4:function M4(a,b,c,d){var _=this +_.b=a +_.c=b +_.d=c +_.a=d}, +bPH(a,b){var s,r,q=a.a6t() +if(a.Q!=null){a.r.f0(0,new A.TP("svg",A.bo9(a.as,null,q.b,q.c,q.a))) +return}s=A.bo9(a.as,null,q.b,q.c,q.a) +a.Q=s +r=a.at +r.toString +a.xD(r,s) +return}, +bPC(a,b){var s,r,q,p,o=a.at +o=o==null?null:o.r +if(o===!0)return +s=a.r.gY(0).b +o=a.as +r=A.xX(o,null,null) +q=a.f +p=q.gtg() +s.C9(r,o.y,q.gvV(),a.hA("mask"),p,q.Fp(a),p) +p=a.at +p.toString +a.xD(p,r) +return}, +bPJ(a,b){var s,r,q,p,o=a.at +o=o==null?null:o.r +if(o===!0)return +s=a.r.gY(0).b +r=a.at +q=A.bwt(a.as,r.gX6(0)==="text") +o=a.f +p=o.gtg() +s.C9(q,a.as.y,o.gvV(),a.hA("mask"),p,o.Fp(a),p) +a.xD(r,q) +return}, +bPI(a,b){var s=A.xX(a.as,null,null),r=a.at +r.toString +a.xD(r,s) +return}, +bPF(a,b){var s,r,q,p,o,n,m,l,k=null,j=a.as,i=a.hA("width") +if(i==null)i="" +s=a.hA("height") +if(s==null)s="" +r=A.bAp(i,"width",a.Q) +q=A.bAp(s,"height",a.Q) +if(r==null||q==null){p=a.a6t() +r=p.a +q=p.b}o=j.a +n=o.h(0,"x") +m=o.h(0,"y") +a.z.q(0,"url(#"+A.c(a.as.b)+")") +l=A.xX(A.bwa(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.IP(n),A.IP(m)),k,k) +o=a.at +o.toString +a.xD(o,l) +return}, +bPK(a,b){var s,r,q,p,o=a.r.gY(0).b,n=a.as.c +if(n==null||n.length===0)return +s=A.aoF(a.hA("transform")) +if(s==null)s=B.bJ +r=a.a +q=A.fx(a.eH("x","0"),r,!1) +q.toString +r=A.fx(a.eH("y","0"),r,!1) +r.toString +p=A.xX(B.fA,null,s.EP(q,r)) +r=a.f +q=r.gtg() +s=r.gvV() +p.Uu(A.bs0(a.as,"url("+A.c(n)+")",q),s,q,q) +if("#"+A.c(a.as.b)!==n)a.K2(p) +o.C9(p,a.as.y,s,a.hA("mask"),q,r.Fp(a),q) +return}, +bxf(a,b,c){var s,r,q,p,o="stop-color" +for(s=new A.lp(a.Ir().a());s.u();){r=s.b +if(r instanceof A.j0)continue +if(r instanceof A.iC){r=a.as.a.h(0,"stop-opacity") +if(r==null)r="1" +q=a.as.a.h(0,o) +if(q==null)q=null +p=a.Ek(q,o,a.as.b) +if(p==null)p=B.eK +r=A.ih(r,!1) +r.toString +q=p.a +b.push(A.Ax(q>>>16&255,q>>>8&255,q&255,r)) +r=a.as.a.h(0,"offset") +c.push(A.rU(r==null?"0%":r))}}return}, +bPG(a,b){var s,r,q,p,o,n,m,l,k=a.afF(),j=a.eH("cx","50%"),i=a.eH("cy","50%"),h=a.eH("r","50%"),g=a.eH("fx",j),f=a.eH("fy",i),e=a.afH(),d=a.as,c=A.aoF(a.hA("gradientTransform")) +if(!a.at.r){s=A.a([],t.n) +r=A.a([],t.Ai) +A.bxf(a,r,s)}else{s=null +r=null}j.toString +q=A.rU(j) +i.toString +p=A.rU(i) +h.toString +o=A.rU(h) +g.toString +n=A.rU(g) +f.toString +m=A.rU(f) +l=n!==q||m!==p?new A.d3(n,m):null +a.f.aaj(new A.us(new A.d3(q,p),o,l,"url(#"+A.c(d.b)+")",r,s,e,k,c),a.as.c) +return}, +bPE(a,b){var s,r,q,p,o,n,m,l,k=a.afF(),j=a.eH("x1","0%") +j.toString +s=a.eH("x2","100%") +s.toString +r=a.eH("y1","0%") +r.toString +q=a.eH("y2","0%") +q.toString +p=a.as +o=A.aoF(a.hA("gradientTransform")) +n=a.afH() +if(!a.at.r){m=A.a([],t.n) +l=A.a([],t.Ai) +A.bxf(a,l,m)}else{m=null +l=null}a.f.aaj(new A.tU(new A.d3(A.rU(j),A.rU(r)),new A.d3(A.rU(s),A.rU(q)),"url(#"+A.c(p.b)+")",l,m,n,k,o),a.as.c) +return}, +bPB(a,b){var s,r,q,p,o,n,m,l,k,j=a.as,i=A.a([],t.f2) +for(s=new A.lp(a.Ir().a()),r=a.f,q=r.gtg(),p=t.H9,o=a.r;s.u();){n=s.b +if(n instanceof A.j0)continue +if(n instanceof A.iC){n=n.e +m=B.IR.h(0,n) +if(m!=null){n=m.$1(a) +n.toString +l=o.gY(0).b +n=a.aOn(n,l.a).a +n=A.a(n.slice(0),A.af(n)) +l=a.as.x +if(l==null)l=B.d7 +k=A.a([],p) +B.b.G(k,n) +n=a.as +i.push(new A.CK(new A.iy(k,l),n,n.r))}else if(n==="use"){n=a.as +i.push(new A.AO("url("+A.c(n.c)+")",q,n,n.r))}}}r.aNN("url(#"+A.c(j.b)+")",i) +return}, +bPD(a,b){var s,r,q,p,o,n,m,l=a.as.c +if(l==null)return +if(B.c.ba(l,"data:")){s=B.c.dV(l,";")+1 +r=B.c.iA(l,",",s) +q=B.c.R(l,B.c.dV(l,"/")+1,s-1) +p=$.bqr() +o=A.dm(q,p,"").toLowerCase() +n=B.agr.h(0,o) +if(n==null){A.dJ("Warning: Unsupported image format "+o) +return}r=B.c.bE(l,r+1) +m=A.btB(B.da.b4(A.dm(r,p,"")),n,a.as) +r=a.f +q=r.gtg() +a.r.gY(0).b.Uu(m,r.gvV(),q,q) +a.K2(m) +return}return}, +bQo(a){var s,r,q,p=a.a,o=A.fx(a.eH("cx","0"),p,!1) +o.toString +s=A.fx(a.eH("cy","0"),p,!1) +s.toString +p=A.fx(a.eH("r","0"),p,!1) +p.toString +r=a.as.w +q=A.a([],t.H9) +return new A.l2(q,r==null?B.d7:r).pe(new A.kf(o-p,s-p,o+p,s+p)).vO()}, +bQr(a){var s=a.eH("d","") +s.toString +return A.bAs(s,a.as.w)}, +bQu(a){var s,r,q,p,o,n,m,l,k=a.a,j=A.fx(a.eH("x","0"),k,!1) +j.toString +s=A.fx(a.eH("y","0"),k,!1) +s.toString +r=A.fx(a.eH("width","0"),k,!1) +r.toString +q=A.fx(a.eH("height","0"),k,!1) +q.toString +p=a.hA("rx") +o=a.hA("ry") +if(p==null)p=o +if(o==null)o=p +if(p!=null&&p!==""){n=A.fx(p,k,!1) +n.toString +k=A.fx(o,k,!1) +k.toString +m=a.as.w +l=A.a([],t.H9) +return new A.l2(l,m==null?B.d7:m).aO_(new A.kf(j,s,j+r,s+q),n,k).vO()}k=a.as.w +n=A.a([],t.H9) +return new A.l2(n,k==null?B.d7:k).jT(new A.kf(j,s,j+r,s+q)).vO()}, +bQs(a){return A.bxB(a,!0)}, +bQt(a){return A.bxB(a,!1)}, +bxB(a,b){var s,r=a.eH("points","") +r.toString +if(r==="")return null +s=b?"z":"" +return A.bAs("M"+r+s,a.as.w)}, +bQp(a){var s,r,q,p,o=a.a,n=A.fx(a.eH("cx","0"),o,!1) +n.toString +s=A.fx(a.eH("cy","0"),o,!1) +s.toString +r=A.fx(a.eH("rx","0"),o,!1) +r.toString +o=A.fx(a.eH("ry","0"),o,!1) +o.toString +n-=r +s-=o +q=a.as.w +p=A.a([],t.H9) +return new A.l2(p,q==null?B.d7:q).pe(new A.kf(n,s,n+r*2,s+o*2)).vO()}, +bQq(a){var s,r,q,p,o=a.a,n=A.fx(a.eH("x1","0"),o,!1) +n.toString +s=A.fx(a.eH("x2","0"),o,!1) +s.toString +r=A.fx(a.eH("y1","0"),o,!1) +r.toString +o=A.fx(a.eH("y2","0"),o,!1) +o.toString +q=a.as.w +p=A.a([],t.H9) +if(q==null)q=B.d7 +p.push(new A.kU(n,r,B.et)) +p.push(new A.i3(s,o,B.cn)) +return new A.l2(p,q).vO()}, +bwa(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.DQ(o,n,m,d,p,g,a1,h,c,b,a,i,k,j,r,a0,s,a2,l,a3,q,a4,e,f)}, +IP(a){var s +if(a==null||a==="")return null +if(A.bA4(a))return new A.IO(A.bAq(a,1),!0) +s=A.ih(a,!1) +s.toString +return new A.IO(s,!1)}, +TP:function TP(a,b){this.a=a +this.b=b}, +ns:function ns(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.e=d +_.f=e +_.r=f +_.y=_.x=_.w=!0 +_.z=g +_.Q=null +_.as=h +_.at=null +_.ax=0 +_.ay=null +_.ch=!1}, +aTj:function aTj(){}, +aTk:function aTk(){}, +aTl:function aTl(){}, +aTm:function aTm(a){this.a=a}, +aTn:function aTn(a){this.a=a}, +aTo:function aTo(a){this.a=a}, +aTp:function aTp(){}, +aTq:function aTq(){}, +ajB:function ajB(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.e=d}, +bcp:function bcp(a,b){this.a=a +this.b=b}, +bco:function bco(){}, +bcm:function bcm(){}, +bcl:function bcl(a){this.a=a}, +bcn:function bcn(a){this.a=a}, +amp:function amp(a,b,c){this.a=a +this.b=b +this.c=c}, +DQ:function DQ(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}, +aTd:function aTd(){}, +IO:function IO(a,b){this.a=a +this.b=b}, +Oy:function Oy(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}, +DR:function DR(a,b,c,d,e){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e}, +px:function px(a,b){this.a=a +this.b=b}, +aPc:function aPc(){this.a=$}, +a7j:function a7j(a,b){this.a=a +this.b=b}, +a7i:function a7i(a,b){this.a=a +this.b=b}, +D8:function D8(a,b,c){this.a=a +this.b=b +this.c=c}, +a7f:function a7f(a,b){this.a=a +this.b=b}, +a7g:function a7g(a,b,c){this.a=a +this.b=b +this.c=c}, +N6:function N6(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +a7h:function a7h(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}, +a94:function a94(a,b,c){this.a=a +this.b=b +this.c=c}, +aaf:function aaf(){}, +a_X:function a_X(){}, +ass:function ass(a){var _=this +_.a=a +_.c=_.b=$ +_.d=null}, +ast:function ast(a,b){this.a=a +this.b=b}, +adx:function adx(){}, +aa3:function aa3(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}, +mJ:function mJ(a,b){this.a=a +this.b=b}, +kH:function kH(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +xD:function xD(a){this.a=a}, +z3:function z3(a){this.a=a}, +xF(a){var s=new A.bW(new Float64Array(16)) +if(s.hn(a)===0)return null +return s}, +bKZ(){return new A.bW(new Float64Array(16))}, +bL_(){var s=new A.bW(new Float64Array(16)) +s.eo() +return s}, +u1(a,b,c){var s=new Float64Array(16),r=new A.bW(s) +r.eo() +s[14]=c +s[13]=b +s[12]=a +return r}, +C7(a,b,c){var s=new Float64Array(16) +s[15]=1 +s[10]=c +s[5]=b +s[0]=a +return new A.bW(s)}, +bvb(){var s=new Float64Array(4) +s[3]=1 +return new A.ur(s)}, +xC:function xC(a){this.a=a}, +bW:function bW(a){this.a=a}, +ur:function ur(a){this.a=a}, +hQ:function hQ(a){this.a=a}, +nx:function nx(a){this.a=a}, +bwU(a){var s,r,q,p,o,n,m,l,k,j,i=null +if(B.c.cw(a).length===0)throw A.d(A.bL("Cannot parse empty string into version",i,i)) +s=$.bCQ() +if(!s.b.test(a))throw A.d(A.bL("Not a properly formatted version string",i,i)) +s=s.pE(a).b +r=s[1].split(".") +q=A.c0(r[0],i) +p=r.length +if(p>1){o=A.c0(r[1],i) +n=p>2?A.c0(r[2],i):i}else{n=i +o=n}m=s[3] +if(m==null)m="" +p=t.s +l=A.a([],p) +if(B.c.cw(m).length!==0)l=A.a(m.split("."),p) +k=s[5] +if(k==null)k="" +s=o==null?0:o +p=n==null?0:n +j=new A.z5(q,s,p,k,l) +j.ar5(q,s,p,k,l) +return j}, +bo5(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.cN(n,!0,m).length)r=A.cN(s,!0,m).length +for(q=0;qA.pi(A.cN(s,!0,m)[q]))return 1 +else return-1 +else if(o)return 1 +else if(p)return-1 +else{n=A.cN(n,!0,m)[q] +m=A.cN(s,!0,m)[q] +if(J.e(n,m))n=0 +else n=n")),r=r.y[1];s.u();){q=s.a;(q==null?r.a(q):q).$0()}$.bnx.V(0)}, +aOY:function aOY(){}, +aOZ:function aOZ(a,b){this.a=a +this.b=b}, +aP_:function aP_(){}, +bcg:function bcg(a){this.a=a}, +a7a:function a7a(a,b,c,d,e,f,g,h,i,j){var _=this +_.E=a +_.yH$=b +_.Dn$=c +_.b1U$=d +_.adf$=e +_.adg$=f +_.adh$=g +_.H$=h +_.fx=i +_.b=_.id=null +_.c=0 +_.y=_.d=null +_.z=!0 +_.Q=null +_.as=!1 +_.at=null +_.ay=$ +_.ch=j +_.CW=!1 +_.cx=$ +_.cy=!0 +_.db=!1 +_.dx=null +_.dy=!0 +_.fr=null}, +ajx:function ajx(){}, +boV(a,b){var s=Math.abs(a-b) +return s<=0.01||s/Math.max(Math.abs(a),Math.abs(b))<=0.01}, +aae:function aae(a,b,c){this.e=a +this.c=b +this.a=c}, +rc:function rc(a,b,c){this.a=a +this.b=b +this.c=c}, +aVP:function aVP(){}, +aVT:function aVT(){}, +aVR:function aVR(a){this.b=a}, +aIA:function aIA(a){this.a=a}, +aVS:function aVS(){}, +Eo:function Eo(a,b){this.a=a +this.b=b}, +bx:function bx(a,b){this.a=a +this.b=b}, +aRf:function aRf(){this.b=this.a=0}, +aag(){var s,r,q,p=null,o=t.Tz,n=t.br +n=new A.aWh(new A.cd(p,p,o),new A.cd(p,p,n),new A.cd(p,p,n)) +A.as().$1("wcpGate.web init (\u8c03\u8bd5\u6a21\u5f0f: false)") +n.aDt() +n.aDp() +n.aDs() +s=t.N +r=new A.aRf() +r.b=1000*Date.now() +q=t.gW +o=new A.En(n,A.w(s,t.a_),A.w(s,t.ga),new A.cd(p,p,t.HA),new A.cd(p,p,o),B.kj,A.w(s,t.f),r,A.w(s,t.z),new A.cd(p,p,q),new A.cd(p,p,q),A.a([],t.s),$.aW()) +o.ar6() +return o}, +aal(a,b,c,d){var s=$.p_ +if(s==null){A.as().$1($.a7+" Wcp instance is null, consoleWcpLog skip") +return}A.aZ(s,!0,a,b,d,null,null)}, +aah(a,b){return A.bP1(a,b)}, +bP1(a,b){var s=0,r=A.n(t.N),q,p=2,o,n,m,l,k,j,i,h,g,f,e,d,c +var $async$aah=A.j(function(a0,a1){if(a0===1){o=a1 +s=p}while(true)switch(s){case 0:if(b.length===0)throw A.d(A.ae("subscribeKey is empty")) +n=B.e.j(a.w.aP()) +p=4 +m=B.PA.geL()+"_"+A.at(a)+"_"+b +g=t.N +l=A.C(["key",b],g,g) +k=new A.c4(B.PA.gbu(),m,l) +j=new A.by(A.C(["seqid",n],g,t.z),k.ao()) +g=a.c +f=g.N(0,m) +e=$.a7+" subscribeCacheKey addListenTo " +if(!f){A.u(e+A.c(m)+" not exists",null) +g.n(0,m,new A.aVX(a))}else A.u(e+A.c(m)+" already exists",null) +A.u($.a7+" subscribeCacheKey request: "+j.ao(),null) +s=7 +return A.f(a.c8(0,j),$async$aah) +case 7:i=a1 +A.u($.a7+" subscribeCacheKey result: "+i.ao(),null) +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +c=o +h=A.v(c) +g=$.a7 +f=J.p(h) +e=A.c(n) +$.ac().a3(g+" subscribeCacheKey error: "+f+", seqid: "+e) +e=A.ae("subscribeCacheKey fail: "+A.c(h)+", seqid: "+A.c(n)) +throw A.d(e) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aah,r)}, +Pw(a,b){return A.bP2(a,b)}, +bP2(a,b){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j,i,h,g,f +var $async$Pw=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(b.length===0)throw A.d(A.ae("objects is empty")) +n=B.e.j(a.w.aP()) +p=4 +h=t.N +m=A.C(["objects",b],h,t.b5) +l=new A.c4(B.ax_.gbu(),null,m) +k=new A.by(A.C(["seqid",n],h,t.z),l.ao()) +A.u($.a7+" writeCache start, payload: "+A.co(m)+", seqid: "+A.c(n),null) +s=7 +return A.f(a.c8(0,k),$async$Pw) +case 7:j=d +A.u($.a7+" writeCache result: "+J.p(j.b)+", seqid: "+A.c(n),null) +if(J.e(J.i(j.b,"code"),200)){q=!0 +s=1 +break}else{h=A.ae(A.c(J.i(j.b,"code"))+": "+A.c(J.i(j.b,"message"))) +throw A.d(h)}p=2 +s=6 +break +case 4:p=3 +f=o +i=A.v(f) +h=$.a7 +A.aZ(a,!0,B.Q,"writeCache error: "+J.p(i)+", seqid: "+A.c(n),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Pw,r)}, +aVW(a,b){return A.bP0(a,b)}, +bP0(a,b){var s=0,r=A.n(t.j),q,p=2,o,n,m,l,k,j,i,h,g,f +var $async$aVW=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:if(b.length===0)throw A.d(A.ae("keys is empty")) +n=B.e.j(a.w.aP()) +p=4 +h=t.N +m=A.C(["keys",b],h,t.yp) +l=new A.c4(B.ax0.gbu(),null,m) +k=new A.by(A.C(["seqid",n],h,t.z),l.ao()) +A.u($.a7+" getCache start, seqid: "+A.c(n),null) +s=7 +return A.f(a.c8(0,k),$async$aVW) +case 7:j=d +A.u($.a7+" getCache result: "+J.p(j.b)+", seqid: "+A.c(n),null) +if(J.e(J.i(j.b,"code"),200))if(t.j.b(J.i(j.b,"data"))){h=J.i(j.b,"data") +q=h +s=1 +break}else{q=[] +s=1 +break}else{h=A.ae(A.c(J.i(j.b,"code"))+": "+A.c(J.i(j.b,"message"))) +throw A.d(h)}p=2 +s=6 +break +case 4:p=3 +f=o +i=A.v(f) +h=$.a7 +A.aZ(a,!0,B.Q,"getCache error: "+J.p(i)+", seqid: "+A.c(n),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$aVW,r)}, +aZ(a,b,c,d,e,f,g){return A.bP4(a,!0,c,d,e,f,g)}, +bP4(a0,a1,a2,a3,a4,a5,a6){var s=0,r=A.n(t.H),q=1,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$aZ=A.j(function(a7,a8){if(a7===1){p=a8 +s=q}while(true)switch(s){case 0:b="["+a4+"]["+a3+"]" +switch(a2.a){case 2:A.dE(b) +break +case 3:$.ac().a3(b) +break +case 1:A.bmK(b) +break +default:A.u(b,null) +break}h=B.e.j(a0.w.aP()) +o=h +q=3 +g=new A.aS(Date.now(),0,!1).ah4() +n=g +f=a2.b +m="["+A.c(n)+"]["+f+"]["+a4+"]["+a3+"]" +e=t.N +l=A.C(["level",f,"content",m],e,e) +k=new A.c4(B.ax2.gbu(),null,l) +j=new A.by(A.C(["seqid",o],e,t.z),k.ao()) +s=6 +return A.f(a0.c8(0,j),$async$aZ) +case 6:q=1 +s=5 +break +case 3:q=2 +a=p +i=A.v(a) +f=$.a7 +e=J.p(i) +c=A.c(o) +$.ac().a3(f+" writeFileLog error: "+e+", seqid: "+c) +c=A.ae("writeFileLog fail: "+A.c(i)+", seqid: "+A.c(o)) +throw A.d(c) +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$aZ,r)}, +aak:function aak(a,b){this.a=a +this.b=b}, +En:function En(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 +_.y=i +_.z=j +_.Q=k +_.as=!0 +_.at=null +_.ax=l +_.M$=0 +_.U$=m +_.aE$=_.ac$=0}, +aVU:function aVU(a){this.a=a}, +aVV:function aVV(a){this.a=a}, +aWl:function aWl(a){this.a=a}, +aWm:function aWm(a){this.a=a}, +aWn:function aWn(a){this.a=a}, +aWo:function aWo(a){this.a=a}, +aWp:function aWp(a){this.a=a}, +aWq:function aWq(a){this.a=a}, +aWr:function aWr(a){this.a=a}, +aWs:function aWs(a){this.a=a}, +aWv:function aWv(a,b,c){this.a=a +this.b=b +this.c=c}, +aWu:function aWu(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aWw:function aWw(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aWt:function aWt(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +aWy:function aWy(a){this.a=a}, +aWz:function aWz(a,b,c){this.a=a +this.b=b +this.c=c}, +aWB:function aWB(a,b){this.a=a +this.b=b}, +aWx:function aWx(a){this.a=a}, +aWD:function aWD(a){this.a=a}, +aWA:function aWA(a){this.a=a}, +aWC:function aWC(a){this.a=a}, +aWE:function aWE(a,b){this.a=a +this.b=b}, +aWF:function aWF(a,b){this.a=a +this.b=b}, +aVX:function aVX(a){this.a=a}, +aWh:function aWh(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=!0}, +aWk:function aWk(a){this.a=a}, +aWi:function aWi(){}, +aWj:function aWj(a){this.a=a}, +l9(a){var s,r="data",q=J.a0(a),p=q.h(a,"code") +if(q.h(a,r)!=null)s=t.f.b(q.h(a,r))?A.bAJ(q.h(a,r)):A.bXt(q.h(a,r)) +else s=null +return new A.a7k(p,s,q.h(a,"message"))}, +bAJ(a){if(t.a.b(a))return a +if(!t.f.b(a))throw A.d(A.bl("Input is not a Map",null)) +return J.W_(a,new A.bjZ(),t.N,t.z)}, +bXt(a){if(t.j.b(a))return a +return[]}, +t3:function t3(a){this.a=a}, +c4:function c4(a,b,c){this.a=a +this.b=b +this.c=c}, +a7k:function a7k(a,b,c){this.a=a +this.b=b +this.c=c}, +bjZ:function bjZ(){}, +by:function by(a,b){this.a=a +this.b=b}, +F_(a,b,c,d,e){var s +if(c==null)s=null +else{s=A.bzk(new A.b2X(c),t.v) +s=s==null?null:A.d6(s)}s=new A.Rh(a,b,s,!1,e.i("Rh<0>")) +s.TS() +return s}, +bzk(a,b){var s=$.ab +if(s===B.aO)return a +return s.US(a,b)}, +blY:function blY(a,b){this.a=a +this.$ti=b}, +rn:function rn(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +Rb:function Rb(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +Rh:function Rh(a,b,c,d,e){var _=this +_.a=0 +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +b2X:function b2X(a){this.a=a}, +b2Z:function b2Z(a){this.a=a}, +hf:function hf(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +bUj(a){var s=a.w5(0) +s.toString +switch(s){case"<":return"<" +case"&":return"&" +case"]]>":return"]]>" +default:return A.boO(s)}}, +bUd(a){var s=a.w5(0) +s.toString +switch(s){case"'":return"'" +case"&":return"&" +case"<":return"<" +default:return A.boO(s)}}, +bSw(a){var s=a.w5(0) +s.toString +switch(s){case'"':return""" +case"&":return"&" +case"<":return"<" +default:return A.boO(s)}}, +boO(a){return A.n_(new A.Dg(a),new A.bhd(),t.O4.i("B.E"),t.N).rH(0)}, +acf:function acf(){}, +bhd:function bhd(){}, +vc:function vc(){}, +eV:function eV(a,b,c){this.c=a +this.a=b +this.b=c}, +rf:function rf(a,b){this.a=a +this.b=b}, +ack:function ack(){}, +aXr:function aXr(){}, +bP7(a,b,c){return new A.acm(b,c,$,$,$,a)}, +acm:function acm(a,b,c,d,e,f){var _=this +_.b=a +_.c=b +_.W9$=c +_.Wa$=d +_.Wb$=e +_.a=f}, +amI:function amI(){}, +ace:function ace(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +Et:function Et(a,b){this.a=a +this.b=b}, +aX8:function aX8(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aXs:function aXs(){}, +aXt:function aXt(){}, +acl:function acl(){}, +acg:function acg(a){this.a=a}, +amE:function amE(a,b){this.a=a +this.b=b}, +aoh:function aoh(){}, +em:function em(){}, +amF:function amF(){}, +amG:function amG(){}, +amH:function amH(){}, +mc:function mc(a,b,c,d,e){var _=this +_.e=a +_.v_$=b +_.uY$=c +_.uZ$=d +_.rr$=e}, +ny:function ny(a,b,c,d,e){var _=this +_.e=a +_.v_$=b +_.uY$=c +_.uZ$=d +_.rr$=e}, +nz:function nz(a,b,c,d,e){var _=this +_.e=a +_.v_$=b +_.uY$=c +_.uZ$=d +_.rr$=e}, +nA:function nA(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.v_$=d +_.uY$=e +_.uZ$=f +_.rr$=g}, +j0:function j0(a,b,c,d,e){var _=this +_.e=a +_.v_$=b +_.uY$=c +_.uZ$=d +_.rr$=e}, +amB:function amB(){}, +nB:function nB(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.v_$=c +_.uY$=d +_.uZ$=e +_.rr$=f}, +iC:function iC(a,b,c,d,e,f,g){var _=this +_.e=a +_.f=b +_.r=c +_.v_$=d +_.uY$=e +_.uZ$=f +_.rr$=g}, +amJ:function amJ(){}, +vd:function vd(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.r=$ +_.v_$=c +_.uY$=d +_.uZ$=e +_.rr$=f}, +ach:function ach(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g}, +aX9:function aX9(a,b,c){var _=this +_.a=a +_.b=b +_.c=c +_.d=null}, +aci:function aci(a){this.a=a}, +aXg:function aXg(a){this.a=a}, +aXq:function aXq(){}, +aXe:function aXe(a){this.a=a}, +aXa:function aXa(){}, +aXb:function aXb(){}, +aXd:function aXd(){}, +aXc:function aXc(){}, +aXn:function aXn(){}, +aXh:function aXh(){}, +aXf:function aXf(){}, +aXi:function aXi(){}, +aXo:function aXo(){}, +aXp:function aXp(){}, +aXm:function aXm(){}, +aXk:function aXk(){}, +aXj:function aXj(){}, +aXl:function aXl(){}, +biR:function biR(){}, +XG:function XG(a){this.a=a}, +hT:function hT(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.rr$=d}, +amC:function amC(){}, +amD:function amD(){}, +PO:function PO(){}, +acj:function acj(){}, +bjz(){var s=0,r=A.n(t.H) +var $async$bjz=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=2 +return A.f(A.bir(new A.bjA(),new A.bjB()),$async$bjz) +case 2:return A.l(null,r)}}) +return A.m($async$bjz,r)}, +bjB:function bjB(){}, +bjA:function bjA(){}, +bpO(){var s=$.ab.h(0,B.ap0) +return s==null?null:t.Kb.a(s).$0()}, +aoH(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)}, +bJH(a,b){var s,r,q,p,o,n +if(b.length===0)return!1 +s=b.split(".") +r=t.v.a(self) +for(q=s.length,p=t.NX,o=0;o>>6)+(a&63),r=s&1,q=u.d3.charCodeAt(s>>>1) +return q>>>4&-r|q&15&r-1}, +pk(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}, +bk4(){return new A.aS(Date.now(),0,!1)}, +bpb(){var s=t.SF.a($.ab.h(0,$.bDr())) +return s==null?B.SH:s}, +bW_(a,b,c,d){var s,r,q,p,o,n=A.w(d,c.i("D<0>")) +for(s=c.i("E<0>"),r=0;r<1;++r){q=a[r] +p=b.$1(q) +o=n.h(0,p) +if(o==null){o=A.a([],s) +n.n(0,p,o) +p=o}else p=o +J.dN(p,q)}return n}, +bKu(a,b){var s,r=J.a0(a),q=J.a0(b) +if(r.gt(a)!==q.gt(b))return!1 +for(s=0;s>>1 +r=p-s +q=A.bO(r,a[0],!1,c) +A.bi7(a,b,s,p,q,0) +A.bi7(a,b,0,s,a,r) +A.byU(b,a,r,p,q,0,r,a,0)}, +bTd(a,b,c,d,e){var s,r,q,p,o +for(s=d+1;ss[2])s[2]=q +if(p>s[3])s[3]=p}}, +f9(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.aI7(a4,a5,a6,!0,s) +A.aI7(a4,a7,a6,!1,s) +A.aI7(a4,a5,a9,!1,s) +A.aI7(a4,a7,a9,!1,s) +a7=$.bkn() +return new A.I(a7[0],a7[1],a7[2],a7[3])}a7=a4[0] +r=a7*a8 +a9=a4[4] +q=a9*b0 +p=a7*a5+a9*a6+a4[12] +a9=a4[1] +o=a9*a8 +a7=a4[5] +n=a7*b0 +m=a9*a5+a7*a6+a4[13] +a7=a4[3] +if(a7===0&&a4[7]===0&&a4[15]===1){l=p+r +if(r<0)k=p +else{k=l +l=p}if(q<0)l+=q +else k+=q +j=m+o +if(o<0)i=m +else{i=j +j=m}if(n<0)j+=n +else i+=n +return new A.I(l,j,k,i)}else{a9=a4[7] +h=a9*b0 +g=a7*a5+a9*a6+a4[15] +f=p/g +e=m/g +a9=p+r +a7=g+a7*a8 +d=a9/a7 +c=m+o +b=c/a7 +a=g+h +a0=(p+q)/a +a1=(m+n)/a +a7+=h +a2=(a9+q)/a7 +a3=(c+n)/a7 +return new A.I(A.bui(f,d,a0,a2),A.bui(e,b,a1,a3),A.buh(f,d,a0,a2),A.buh(e,b,a1,a3))}}, +bui(a,b,c,d){var s=ab?a:b,r=c>d?c:d +return s>r?s:r}, +buj(a,b){var s +if(A.a3U(a))return b +s=new A.bW(new Float64Array(16)) +s.c5(a) +s.hn(s) +return A.f9(s,b)}, +bL1(a){var s,r=new A.bW(new Float64Array(16)) +r.eo() +s=new A.nx(new Float64Array(4)) +s.G0(0,0,0,a.a) +r.OL(0,s) +s=new A.nx(new Float64Array(4)) +s.G0(0,0,0,a.b) +r.OL(1,s) +return r}, +VB(a,b,c){if(a==null)return a===b +return a>b-c&&ad?d:o +l=B.e.im(m,o/n) +A.bA5("src size",A.c(o)+" x "+A.c(n)) +A.bA5("target size",""+m+" x "+l) +k=self.document.createElement("canvas") +k.width=m +k.height=l +j=k.getContext("2d") +i=j==null +if(!i)j.clearRect(0,0,m,l) +if(!i)A.bi(j,"drawImage",[p,0,0,m,l]) +i=A.bGm(b) +h=k.toDataURL(i,e/100).split(",")[1] +p.close() +g=B.da.b4(h) +f.gKU() +q=g +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$bjW,r)}, +bGm(a){switch(a.a){case 0:return"image/jpeg" +case 1:return"image/png" +case 3:return"image/webp" +case 2:throw A.d(A.cE("heic is not support web"))}}, +bA5(a,b){}, +aV8(a){var s=0,r=A.n(t.v),q,p,o +var $async$aV8=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=self +o=new p.Blob(A.a([a],t.vs)) +s=3 +return A.f(A.jc(p.window.createImageBitmap(o),t.v),$async$aV8) +case 3:q=c +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$aV8,r)}, +brP(a,b,c,d,e){var s +if(e===B.iZ||e===B.pp||e===B.pq)return A.atj(a,!1,c,d,e) +else{s=e===B.ww?B.iZ:null +if(e===B.wx)s=B.pp +if(e===B.wy)s=B.pq +if(s==null)return null +return A.ati(a,!1,c,d,s)}}, +ati(a,b,c,d,e){var s=0,r=A.n(t.H),q,p +var $async$ati=A.j(function(f,g){if(f===1)return A.k(g,r) +while(true)switch(s){case 0:p=$.cC +p=(p==null?$.cC=A.fl():p).c +p===$&&A.b() +q=p.gt(0) +case 2:if(!(q>0)){s=4 +break}s=5 +return A.f(A.atj(a,!1,c,d,e),$async$ati) +case 5:case 3:--q +s=2 +break +case 4:return A.l(null,r)}}) +return A.m($async$ati,r)}, +atj(a,b,c,d,e){var s=0,r=A.n(t.H),q +var $async$atj=A.j(function(f,g){if(f===1)return A.k(g,r) +while(true)switch(s){case 0:A.bGK(a,!1,d,e) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$atj,r)}, +bGK(a,b,c,d){var s,r,q,p,o,n,m,l=$.cC,k=(l==null?$.cC=A.fl():l).c +k===$&&A.b() +if(k.b===k.c)return null +s=k.cJ(0) +if(c!=null){for(r=k.gt(0)-1;r>=0;--r){if(k.b===k.c)break +J.bEN(s[r])}return null}for(r=k.gt(0)-1,q=d===B.iZ,p=!q;o=null,r>=0;--r){if(k.b===k.c)break +n=s[r] +m=n.gaRH().gaX0() +if(!m.gYC(m)&&!n.gb0Y())continue +if(p)n.gi_(n) +if(q){o=n +break}}return o}, +bUi(a,b,c,d,e){var s=a.$1(b) +if(e.i("a2<0>").b(s))return s +return new A.cv(s,e.i("cv<0>"))}, +biQ(a){var s,r=J.i(a.c.a,"charset") +if(a.a==="application"&&a.b==="json"&&r==null)return B.a5 +if(r!=null){s=A.bId(r) +if(s==null)s=B.cu}else s=B.cu +return s}, +bXX(a){return a}, +bXU(a){return new A.Ai(a)}, +bY4(a,b,c){var s,r,q,p +try{q=c.$0() +return q}catch(p){q=A.v(p) +if(q instanceof A.DE){s=q +throw A.d(A.bNR("Invalid "+a+": "+s.a,s.b,J.bqM(s)))}else if(t.bE.b(q)){r=q +throw A.d(A.bL("Invalid "+a+' "'+b+'": '+J.bqL(r),J.bqM(r),J.bEL(r)))}else throw p}}, +bSA(){return A.w(t.N,t.fs)}, +bSz(){return A.w(t.N,t.GU)}, +biH(){var s=A.dk($.ab.h(0,B.aoY)) +return s==null?$.boS:s}, +J4(a){return A.bIf(a)}, +bIf(a){var s=0,r=A.n(t.D),q,p=2,o,n,m,l,k,j,i,h,g +var $async$J4=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +A.u("[EncryptedImageService] \u5f00\u59cb\u5904\u7406\u52a0\u5bc6\u56fe\u7247: "+a,null) +s=7 +return A.f(A.axI(a),$async$J4) +case 7:n=c +j=A.f1(a).grS() +m=j.length!==0?B.b.gY(j):"unknown.enc" +s=8 +return A.f(A.bm5(n,m),$async$J4) +case 8:l=c +if(!l.a){i=A.ae("\u56fe\u7247\u89e3\u5bc6\u5931\u8d25: "+l.b) +throw A.d(i)}A.u("[EncryptedImageService] \u52a0\u5bc6\u56fe\u7247\u5904\u7406\u5b8c\u6210",null) +i=l.c +i.toString +q=i +s=1 +break +p=2 +s=6 +break +case 4:p=3 +g=o +k=A.v(g) +i=A.c(k) +$.ac().a3("[EncryptedImageService] \u5904\u7406\u52a0\u5bc6\u56fe\u7247\u5931\u8d25: "+i) +throw g +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$J4,r)}, +axI(a){return A.bIe(a)}, +bIe(a){var s=0,r=A.n(t.D),q,p=2,o,n,m,l,k,j,i +var $async$axI=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +n=A.bly(null) +s=7 +return A.f(J.bEO(n,a,A.CC(A.C(["Cache-Control","no-cache, no-store, must-revalidate"],t.N,t.z),B.nh),t.Cm),$async$axI) +case 7:m=c +if(m.a!=null){k=m.a +k.toString +k=new Uint8Array(A.e7(k)) +q=k +s=1 +break}else{k=A.ae("\u7f51\u7edc\u8bf7\u6c42\u8fd4\u56de\u7a7a\u6570\u636e") +throw A.d(k)}p=2 +s=6 +break +case 4:p=3 +i=o +l=A.v(i) +k=A.c(l) +$.ac().a3("[EncryptedImageService] \u7f51\u7edc\u8bf7\u6c42\u5931\u8d25: "+k) +throw i +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$axI,r)}, +bnh(a){var s,r,q,p,o,n,m,l,k=a.length,j=k!==0 +if(!j||k<8)return null +s=$.bng.h(0,a) +if(s==null)return null +if($.aMl.N(0,a)&&$.aMk.N(0,a)){k=$.aMl.h(0,a) +k.toString +j=$.aMk.h(0,a) +j.toString +return A.C(["key",k,"iv",j],t.N,t.D)}r=B.ao.b4(a+"kN2C6si0OK98p7IibGmJ1bQxY9PLWRQi94mPCxqUVgSr5w6YGGXGBaF5bKb") +k=A.bvk(0) +q=new Uint8Array(4) +p=t.S +p=new A.aPC(k,q,B.eI,8,A.bO(8,0,!1,p),A.bO(64,0,!1,p)) +p.eU(0) +p=new A.aAW(p,64) +p.b=32 +p.d=new Uint8Array(64) +p.e=new Uint8Array(96) +o=new A.aM6(p) +o.c=new Uint8Array(32) +o.a=new A.aMr(s,983,48) +k=new Uint8Array(A.e7(r)) +n=new Uint8Array(48) +m=B.G.cK(n,0,o.aRA(k,0,n,0)) +l=A.C(["key",B.G.cK(m,0,32),"iv",B.G.cK(m,32,48)],t.N,t.D) +k=l.h(0,"key") +k.toString +if(j&&!B.G.ga_(k))$.aMl.n(0,a,k) +k=l.h(0,"iv") +k.toString +if(j&&!B.G.ga_(k))$.aMk.n(0,a,k) +return l}, +Xw(a){var s,r=null +if(B.c.ba(a,"0x"))return new A.A(A.c0(a,r)>>>0) +else if(B.c.ba(a,"#")){s=B.c.hI(a,"#","") +return new A.A(A.c0("0x"+(s.length===6?"FF"+s:s),r)>>>0)}else throw A.d(A.bL("\u65e0\u6548\u7684\u989c\u8272\u683c\u5f0f: "+a,r,r))}, +bw2(a){return B.c.bF(a,".png")||B.c.bF(a,".jpg")||B.c.bF(a,".jpeg")||B.c.bF(a,".gif")||B.c.bF(a,".webp")||B.c.bF(a,".bmp")||B.c.bF(a,".wbmp")||B.c.bF(a,".ico")||B.c.bF(a,".jpe")||B.c.bF(a,".tiff")||B.c.bF(a,".tif")||B.c.bF(a,".svg")||B.c.bF(a,".svgz")||B.c.bF(a,".apng")||B.c.bF(a,".avif")||B.c.bF(a,".jfif")||B.c.bF(a,".pjpeg")||B.c.bF(a,".pjp")||B.c.bF(a,".jpgv")||B.c.bF(a,".hdp")||B.c.bF(a,".jxr")||B.c.bF(a,".wdp")||B.c.bF(a,".cur")||B.c.bF(a,".dds")||B.c.bF(a,".eot")||B.c.bF(a,".otf")||B.c.bF(a,".ttf")||B.c.bF(a,".woff")||B.c.bF(a,".woff2")}, +bw3(a){var s,r,q=null,p=a.split("-"),o=p.length +if(o===0)return B.ad6 +s=p[0].toLowerCase() +if(o===2){r=p[1].toUpperCase() +return r.length===4?new A.dX(s,r,q):new A.dX(s,q,r)}if(o>=3)return new A.dX(s.toLowerCase(),p[1],p[2].toUpperCase()) +return new A.dX(s,q,q)}, +a08(){var s=0,r=A.n(t.Db),q,p,o,n +var $async$a08=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=3 +return A.f(A.aoy(),$async$a08) +case 3:p=b +o=A.bRm(p.ge8(p)) +n=o.grS() +q=A.wB(o.b_z(0,A.fc(n,0,A.ez(o.grS().length-1,"count",t.S),A.af(n).c).cJ(0)).NF()) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$a08,r)}, +a07(){var s=0,r=A.n(t.Db),q +var $async$a07=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=3 +return A.f(A.aoy(),$async$a07) +case 3:q=b +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$a07,r)}, +lK(a,b){return A.bIA(a,b,b)}, +bIA(a3,a4,a5){var s=0,r=A.n(a5),q,p=2,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2 +var $async$lK=A.j(function(a6,a7){if(a6===1){o=a7 +s=p}while(true)switch(s){case 0:c=null +b=B.c.ba(a3,"assets/") +s=b?3:5 +break +case 3:p=7 +s=10 +return A.f($.vX().iC(0,a3),$async$lK) +case 10:c=a7 +p=2 +s=9 +break +case 7:p=6 +a=o +n=A.v(a) +A.dJ("Error reading file from assets: "+A.c(n)) +b=A.ae(A.c(n)) +throw A.d(b) +s=9 +break +case 6:s=2 +break +case 9:s=4 +break +case 5:p=12 +s=15 +return A.f(A.a07(),$async$lK) +case 15:m=a7 +s=16 +return A.f(A.a08(),$async$lK) +case 16:l=a7 +k=null +if(B.c.p(a3,J.apb(l)))k=A.Bi(a3) +else k=A.Bi(J.apb(m)+"/"+a3) +s=17 +return A.f(k.zg(),$async$lK) +case 17:j=a7 +c=A.eT(j.buffer,0,null) +p=2 +s=14 +break +case 12:p=11 +a0=o +i=A.v(a0) +A.dJ("Error reading file from app directory: "+A.c(i)) +b=A.ae(A.c(i)) +throw A.d(b) +s=14 +break +case 11:s=2 +break +case 14:case 4:s=A.cK(a4)===B.tL?18:20 +break +case 18:q=a4.a(A.dw(c.buffer,0,null)) +s=1 +break +s=19 +break +case 20:s=A.cK(a4)===B.Pt?21:23 +break +case 21:q=a4.a(c) +s=1 +break +s=22 +break +case 23:s=A.cK(a4)===B.nN?24:26 +break +case 24:p=28 +s=b?31:33 +break +case 31:a2=a4 +s=34 +return A.f($.vX().X4(a3),$async$lK) +case 34:b=a2.a(a7) +q=b +s=1 +break +s=32 +break +case 33:s=35 +return A.f(A.a07(),$async$lK) +case 35:h=a7 +s=36 +return A.f(A.a08(),$async$lK) +case 36:g=a7 +f=null +if(B.c.p(a3,J.apb(g)))f=A.Bi(a3) +else f=A.Bi(J.apb(h)+"/"+a3) +a2=a4 +s=37 +return A.f(f.oj(),$async$lK) +case 37:b=a2.a(a7) +q=b +s=1 +break +case 32:p=2 +s=30 +break +case 28:p=27 +a1=o +e=A.v(a1) +A.dJ("Error reading file as String: "+A.c(e)) +b=A.ae(A.c(e)) +throw A.d(b) +s=30 +break +case 27:s=2 +break +case 30:s=25 +break +case 26:q=a4.a(c) +s=1 +break +case 25:case 22:case 19:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$lK,r)}, +bNp(a,b){var s,r,q,p +try{s=A.bwU(a) +r=A.bwU(b) +q=r +q=q instanceof A.z5&&A.bo5(s,q)<0 +return q}catch(p){throw p}}, +bJD(a){var s,r +try{s=A.btF(a)}catch(r){return!1}}, +bJE(a){var s,r +try{s=A.btF(a)}catch(r){return!1}}, +uQ(a){var s,r=A.bB("^extruder(\\d*)$",!0,!1,!1).pE(a),q=r==null?null:r.b[1],p=q==null?null:q.length===0 +if(p!==!1)s=0 +else{q.toString +p=A.na(q,null) +s=p==null?-1:p}return s}, +a_a(a,b){var s=0,r=A.n(t.H),q,p,o,n +var $async$a_a=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:o="device_cert_"+$.f2.eg().Q.gcq(0)+"_"+a +A.as().$1("\u4fdd\u5b58\u8bbe\u5907\u8bc1\u4e66\u914d\u7f6e - \u7528\u6237ID: "+o) +s=$.pD==null?2:3 +break +case 2:n=$ +s=4 +return A.f(A.i7(),$async$a_a) +case 4:n.pD=d +case 3:q=A.bFU(B.a7.lx(b.ao(),null)) +p=$.pD +p=p==null?null:p.BN("String",o,q) +s=5 +return A.f(t.Sg.b(p)?p:A.en(p,t.X7),$async$a_a) +case 5:A.as().$1("\u8bbe\u5907\u8bc1\u4e66\u914d\u7f6e\u5df2\u52a0\u5bc6\u4fdd\u5b58 - \u7528\u6237ID: "+o) +return A.l(null,r)}}) +return A.m($async$a_a,r)}, +AR(a){return A.bH9(a)}, +bH9(a){var s=0,r=A.n(t.t4),q,p=2,o,n,m,l,k,j +var $async$AR=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:A.as().$1("\u5f00\u59cb\u83b7\u53d6\u8bbe\u5907\u8bc1\u4e66\u914d\u7f6e - \u7528\u6237ID: "+a) +p=4 +s=7 +return A.f(A.auy(a),$async$AR) +case 7:n=c +if(n!=null){A.as().$1("\u672c\u5730\u8bc1\u4e66\u5b58\u5728 - \u7528\u6237ID: "+a) +q=n +s=1 +break}s=8 +return A.f(A.a_9(a),$async$AR) +case 8:l=c +q=l +s=1 +break +p=2 +s=6 +break +case 4:p=3 +j=o +m=A.v(j) +A.as().$1("\u83b7\u53d6\u8bbe\u5907\u8bc1\u4e66\u914d\u7f6e\u5931\u8d25: "+A.c(m)) +throw j +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$AR,r)}, +auz(a){return A.bH8(a)}, +bH8(a){var s=0,r=A.n(t.t4),q,p,o,n,m,l,k,j,i +var $async$auz=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:j="device_cert_"+$.f2.eg().Q.gcq(0)+"_"+a +A.as().$1("\u83b7\u53d6\u672c\u5730\u8bbe\u5907\u8bc1\u4e66\u914d\u7f6e - \u7528\u6237ID: "+j) +l=$.pD +s=l==null?3:4 +break +case 3:i=$ +s=5 +return A.f(A.i7(),$async$auz) +case 5:l=i.pD=c +case 4:p=l==null?null:A.dk(J.i(l.a,j)) +if(p==null){q=null +s=1 +break}try{o=null +if(A.bFV(p)){o=A.brp(p) +if(o==null){A.as().$1("\u89e3\u5bc6\u8bbe\u5907\u8bc1\u4e66\u914d\u7f6e\u5931\u8d25 - \u7528\u6237ID: "+a) +q=null +s=1 +break}A.as().$1("\u8bbe\u5907\u8bc1\u4e66\u914d\u7f6e\u89e3\u5bc6\u6210\u529f - \u7528\u6237ID: "+a)}else{o=p +A.as().$1("\u8bbe\u5907\u8bc1\u4e66\u914d\u7f6e\u672a\u52a0\u5bc6\uff08\u5411\u540e\u517c\u5bb9\uff09 - \u7528\u6237ID: "+a)}n=t.a.a(B.a7.jo(0,o,null)) +l=A.In(n) +q=l +s=1 +break}catch(h){m=A.v(h) +A.as().$1("\u89e3\u6790\u8bbe\u5907\u8bc1\u4e66\u914d\u7f6e\u5931\u8d25: "+A.c(m)) +q=null +s=1 +break}case 1:return A.l(q,r)}}) +return A.m($async$auz,r)}, +auy(a){var s=0,r=A.n(t.t4),q,p +var $async$auy=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=3 +return A.f(A.auz(a),$async$auy) +case 3:p=c +if(p==null||!p.gce()){A.as().$1("\u672c\u5730\u8bc1\u4e66\u65e0\u6548\u6216\u4e0d\u5b58\u5728 - \u7528\u6237ID: "+a) +q=null +s=1 +break}q=p +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$auy,r)}, +a_9(a){return A.bH7(a)}, +bH7(a){var s=0,r=A.n(t.t4),q,p=2,o,n,m,l,k,j +var $async$a_9=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.f(A.a_7(a),$async$a_9) +case 7:n=c +s=n.gce()?8:9 +break +case 8:s=10 +return A.f(A.a_a(a,n),$async$a_9) +case 10:A.as().$1("\u6210\u529f\u83b7\u53d6\u5e76\u4fdd\u5b58\u7f51\u7edc\u8bc1\u4e66 - \u7528\u6237ID: "+a) +q=n +s=1 +break +case 9:A.as().$1("\u83b7\u53d6\u7684\u7f51\u7edc\u8bc1\u4e66\u65e0\u6548 - \u7528\u6237ID: "+a) +l=A.ae("The obtained network certificate is invalid") +throw A.d(l) +p=2 +s=6 +break +case 4:p=3 +j=o +m=A.v(j) +A.as().$1("\u83b7\u53d6\u7f51\u7edc\u8bc1\u4e66\u5931\u8d25: "+A.c(m)) +throw j +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$a_9,r)}, +Ip(a){var s=0,r=A.n(t.H),q,p,o +var $async$Ip=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p="device_cert_"+$.f2.eg().Q.gcq(0)+"_"+a +A.as().$1("\u5220\u9664\u8bbe\u5907\u8bc1\u4e66\u914d\u7f6e - \u7528\u6237ID: "+p) +q=$.pD +s=q==null?2:3 +break +case 2:o=$ +s=4 +return A.f(A.i7(),$async$Ip) +case 4:q=o.pD=c +case 3:s=a.length===0?5:7 +break +case 5:s=8 +return A.f(A.Io(),$async$Ip) +case 8:s=6 +break +case 7:q=q==null?null:q.C(0,p) +s=9 +return A.f(t.Sg.b(q)?q:A.en(q,t.X7),$async$Ip) +case 9:case 6:return A.l(null,r)}}) +return A.m($async$Ip,r)}, +Io(){var s=0,r=A.n(t.H),q,p,o,n,m,l,k,j,i,h +var $async$Io=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:i=$.pD +s=i==null?3:4 +break +case 3:h=$ +s=5 +return A.f(A.i7(),$async$Io) +case 5:i=h.pD=b +case 4:p=i==null?null:A.tW(J.rX(i.a),t.N) +if(p==null){s=1 +break}i=A.dr(p,p.r,A.y(p).c),o=i.$ti.c,n=$.f2.a,m=t.YM,l=t.Sg +case 6:if(!i.u()){s=7 +break}k=i.d +if(k==null)k=o.a(k) +j=$.f2.b +if(j===$.f2)A.V(A.btV(n)) +s=B.c.ba(k,"device_cert_"+j.Q.gcq(0)+"_")?8:9 +break +case 8:j=$.pD +if(j==null)k=null +else{J.nW(j.a,k) +k=$.aoV().C(0,"flutter."+k)}if(!l.b(k)){j=new A.a_($.ab,m) +j.a=8 +j.c=k +k=j}s=10 +return A.f(k,$async$Io) +case 10:case 9:s=6 +break +case 7:case 1:return A.l(q,r)}}) +return A.m($async$Io,r)}, +brm(a,b,c){a/=255 +b/=255 +c/=255 +a=a>0.04045?Math.pow((a+0.055)/1.055,2.4):a/12.92 +b=b>0.04045?Math.pow((b+0.055)/1.055,2.4):b/12.92 +c=c>0.04045?Math.pow((c+0.055)/1.055,2.4):c/12.92 +return A.a([(a*0.4124564+b*0.3575761+c*0.1804375)*100,(a*0.2126729+b*0.7151522+c*0.072175)*100,(a*0.0193339+b*0.119192+c*0.9503041)*100],t.n)}, +brn(a,b,c){var s,r,q +a/=95.047 +b/=100 +c/=108.883 +s=a>0.008856451679035631?Math.pow(a,0.3333333333333333):(903.2962962962963*a+16)/116 +r=b>0.008856451679035631?Math.pow(b,0.3333333333333333):(903.2962962962963*b+16)/116 +q=c>0.008856451679035631?Math.pow(c,0.3333333333333333):(903.2962962962963*c+16)/116 +return A.a([116*r-16,500*(s-r),200*(r-q)],t.n)}, +bFU(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0 +try{if(a1.length===0){m=B.ao.b4("") +m=B.ct.gk5().b4(m) +return m}s=$.bkq() +r=16 +a=t.S +q=J.mU(r,a) +for(p=0;p20){r=A.brp(a) +return r!=null}return!1}catch(q){return!1}}, +bl1(a){if((a.gk(a)>>>24&255)/255<0.1)return B.v +return A.P_(a)===B.aI?B.n:B.v}, +bGc(a){if((a.a>>>24&255)/255<0.1)return B.v +return A.P_(a)===B.aI?B.n:B.v}, +bGd(a){if((a.a>>>24&255)===0)return!0 +return!1}, +Z(a,b){var s=$.Vw +switch(a.a){case 0:A.aal(B.cM,b,!0,s) +break +case 1:A.aal(B.eC,b,!0,s) +break +case 2:A.aal(B.az,b,!0,s) +break +case 3:A.aal(B.Q,b,!0,s) +break +default:A.aal(B.cM,b,!0,s) +break}return}, +bNZ(a){var s,r,q,p +for(s=new A.Nf(a),r="";s.u();){q=A.ek(s.d) +p=A.bB("[\\u4e00-\\u9fa5#]",!0,!1,!1) +r=p.b.test(q)?r+A.rB(B.BI,q,B.a5,!1):r+q}return r.charCodeAt(0)==0?r:r}, +bIl(a){if(a>=200&&a<600)return A.bJm(a) +else if(a>=1e5&&a<=109999)return A.bLB(a) +else if(a>=11e4&&a<=119999)return A.bLW(a) +else if(a>=601e3&&a<=601999)return A.bOT(a) +else if(a>=602e3&&a<=602999)return A.bHe(a) +else if(a>=6e5&&a<=699999)return A.bFK(a) +else return new A.is(a,"\u672a\u77e5\u9519\u8bef\u7801",B.dh)}, +bKo(){return"HarmonyOS_Sans_SC"}, +tQ(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=null,e=b?B.aI:B.b_,d=A.bKo(),c=a.bG +if(c==null)c=a.b +s=a.c +s=A.im(f,f,a.b,f,f,f,0,f,f,a.z,s,f,B.t4,f,f,f,f,c,f,A.cb(f,f,s,f,f,f,f,f,f,f,f,f,f,f,f,f,f,!0,f,f,f,f,f,f,f,f),f) +c=a.p4 +if(c==null)c=a.k2 +c=A.br5(f,f,f,c,f,f,f,f,f,f,f,f,f,A.cb(f,f,a.k3,f,f,f,f,f,f,f,f,20,f,f,B.bm,f,1.2,!0,f,f,f,f,f,f,f,f),f,f) +r=b?B.vA:B.vU +q=b?B.kT:B.vv +p=b?B.kS:B.h_ +o=b?B.kQ:B.iK +n=b?B.vE:B.vL +m=A.cb(f,f,q,f,f,f,f,f,f,f,f,28,f,f,B.cZ,f,1.5,!0,f,f,f,f,f,f,f,f) +l=A.cb(f,f,q,f,f,f,f,f,f,f,f,20,f,f,B.bm,f,1.2,!0,f,f,f,f,f,f,f,f) +k=A.cb(f,f,p,f,f,f,f,f,f,f,f,16,f,f,B.K,f,1.25,!0,f,f,f,f,f,f,f,f) +j=A.cb(f,f,q,f,f,f,f,f,f,f,f,14,f,f,B.K,f,1.28,!0,f,f,f,f,f,f,f,f) +j=A.aUB(f,A.cb(f,f,q,f,f,f,f,f,f,f,f,12,f,f,B.K,f,1.34,!0,f,f,f,f,f,f,f,f),A.cb(f,f,n,f,f,f,f,f,f,f,f,14,f,f,B.K,f,1.28,!0,f,f,f,f,f,f,f,f),f,f,f,m,f,f,A.cb(f,f,o,f,f,f,f,f,f,f,f,12,f,f,B.u,f,1.34,!0,f,f,f,f,f,f,f,f),A.cb(f,f,o,f,f,f,f,f,f,f,f,10,f,f,B.u,f,1.6,!0,f,f,f,f,f,f,f,f),A.cb(f,f,o,f,f,f,f,f,f,f,f,8,f,f,B.u,f,1.6,!0,f,f,f,f,f,f,f,f),l,k,j) +i=b?B.vC:B.vT +o=b?B.kQ:B.iK +h=b?B.oS:B.WU +m=A.bJw(new A.hJ(4,B.dF,new A.br(i,1,B.I,-1)),new A.hJ(4,B.dF,new A.br(i,1,B.I,-1)),h,!0,new A.hJ(4,B.dF,new A.br(i,1,B.I,-1)),A.cb(f,f,o,f,f,f,f,f,f,f,f,16,f,f,B.u,f,1.5,!0,f,f,f,f,f,f,f,f)) +l=a.x1 +if(l==null)l=B.v +l=l.a +l=A.Y(B.d.aa(255*(b?0.05:0.1)),l>>>16&255,l>>>8&255,l&255) +k=b?B.kQ:B.iK +g=b?B.vA:B.vU +return A.E3(c,e,a,g,new A.wC(r,f,f,f,f),new A.B6(s),d,k,m,l,j,!0)}, +KB(a,b,c,d,e,f){var s=a.x +s===$&&A.b() +return new A.b0(e,f,t.Y).al(0,new A.eF(b,d,c).al(0,s))}, +wp(a,b){a=A.aI6(0,100,a) +b=A.aI6(0,100,b) +return A.bl9(A.wj(a),A.wj(b))}, +bl9(a,b){var s=a>b?a:b,r=s===b?a:b +return(s+5)/(r+5)}, +brH(a,b){var s,r,q,p +if(b<0||b>100)return-1 +s=A.wj(b) +r=a*(s+5)-5 +q=A.bl9(r,s) +if(q0.04)return-1 +p=A.brB(r)+0.4 +if(p<0||p>100)return-1 +return p}, +brG(a,b){var s,r,q,p +if(b<0||b>100)return-1 +s=A.wj(b) +r=(s+5)/a-5 +q=A.bl9(s,r) +if(q0.04)return-1 +p=A.brB(r)-0.4 +if(p<0||p>100)return-1 +return p}, +blF(a){var s,r,q,p,o,n=a.a +n===$&&A.b() +s=B.d.aa(n) +r=s>=90&&s<=111 +s=a.b +s===$&&A.b() +q=B.d.aa(s) +p=a.c +p===$&&A.b() +o=B.d.aa(p)<65 +if(r&&q>16&&o)return A.k6(A.x3(n,s,70)) +return a}, +aB6(a){var s=a/100 +return(s<=0.0031308?s*12.92:1.055*Math.pow(s,0.4166666666666667)-0.055)*255}, +bmq(a){var s=Math.pow(Math.abs(a),0.42) +return A.ou(a)*400*s/(s+27.13)}, +bmr(a){var s=A.ot(a,$.bJf),r=A.bmq(s[0]),q=A.bmq(s[1]),p=A.bmq(s[2]) +return Math.atan2((r+q-2*p)/9,(11*r+-12*q+p)/11)}, +bJe(a,b){var s,r,q,p,o,n=$.JK[0],m=$.JK[1],l=$.JK[2],k=B.e.an(b,4)<=1?0:100,j=B.e.an(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)}}, +bJa(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.bJe(a,n) +if(m[0]<0)continue +l=A.bmr(m) +if(!p){q=l +r=q +s=m +k=s +p=!0 +continue}if(o||B.d.an(l-r+25.132741228718345,6.283185307179586)100.01||b>100.01||a>100.01)return 0 +return((A.py(g)&255)<<16|(A.py(f[1])&255)<<8|A.py(f[2])&255|4278190080)>>>0}a1-=(a0-a9)*a1/(2*a0)}return 0}, +x3(a,b,c){var s,r,q,p +if(b<0.0001||c<0.0001||c>99.9999){s=A.py(A.wj(c)) +return A.bl3(s,s,s)}r=A.L_(a)/180*3.141592653589793 +q=A.wj(c) +p=A.bJc(r,b,q) +if(p!==0)return p +return A.bGk(A.bJ9(q,r))}, +bl3(a,b,c){return((a&255)<<16|(b&255)<<8|c&255|4278190080)>>>0}, +bGk(a){return A.bl3(A.py(a[0]),A.py(a[1]),A.py(a[2]))}, +brD(a){return A.ot(A.a([A.ef(B.e.cA(a,16)&255),A.ef(B.e.cA(a,8)&255),A.ef(a&255)],t.n),$.mz)}, +wj(a){return 100*A.bGh((a+16)/116)}, +brB(a){return A.th(a/100)*116-16}, +ef(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}, +py(a){var s=a/100 +return A.bKX(0,255,B.d.aa((s<=0.0031308?s*12.92:1.055*Math.pow(s,0.4166666666666667)-0.055)*255))}, +th(a){if(a>0.008856451679035631)return Math.pow(a,0.3333333333333333) +else return(903.2962962962963*a+16)/116}, +bGh(a){var s=a*a*a +if(s>0.008856451679035631)return s +else return(116*a-16)/903.2962962962963}, +ou(a){if(a<0)return-1 +else if(a===0)return 0 +else return 1}, +bmQ(a,b,c){return(1-c)*a+c*b}, +bKX(a,b,c){if(cb)return b +return c}, +aI6(a,b,c){if(cb)return b +return c}, +L_(a){a=B.d.an(a,360) +return a<0?a+360:a}, +ot(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)}, +bpi(){var s,r,q,p,o=null +try{o=A.lj()}catch(s){if(t.J.b(A.v(s))){r=$.bhA +if(r!=null)return r +throw s}else throw s}if(J.e(o,$.bys)){r=$.bhA +r.toString +return r}$.bys=o +if($.bq6()===$.VQ())r=$.bhA=o.Z(".").j(0) +else{q=o.NF() +p=q.length-1 +r=$.bhA=p===0?q:B.c.R(q,0,p)}return r}, +bA1(a){var s +if(!(a>=65&&a<=90))s=a>=97&&a<=122 +else s=!0 +return s}, +bzM(a,b){var s,r,q=null,p=a.length,o=b+2 +if(p"),p=A.bn(q) +for(;q.b(a);){if(b.N(0,a))return c.i("b6<0>").a(b.h(0,a)) +else if(!p.q(0,a))throw A.d(A.a1("Recursive references detected: "+p.j(0))) +a=a.$ti.i("b6<1>").a(A.bMk(a.a,a.b,null))}for(q=A.dr(p,p.r,p.$ti.c),s=q.$ti.c;q.u();){r=q.d +b.n(0,r==null?s.a(r):r,a)}return a}, +bUn(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.fk(B.e.hY(a,16),2,"0") +return A.ek(a)}, +bXw(a,b){return a}, +bXx(a,b){return b}, +bXv(a,b){return a.b<=b.b?b:a}, +bAZ(a,b){var s +if(a==null)s=b +else s=a +return s}, +bJT(a){var s,r,q=A.a([],t.s) +for(s=0;s")),q=q.i("aN.E");r.u();){p=r.d +if(!J.e(p==null?q.a(p):p,s))return!1}return!0}, +bXr(a,b){var s=B.b.dV(a,null) +if(s<0)throw A.d(A.bl(A.c(a)+" contains no null elements.",null)) +a[s]=b}, +bAI(a,b){var s=B.b.dV(a,b) +if(s<0)throw A.d(A.bl(A.c(a)+" contains no elements matching "+b.j(0)+".",null)) +a[s]=null}, +bVk(a,b){var s,r,q,p +for(s=new A.eY(a),r=t.Hz,s=new A.ci(s,s.gt(0),r.i("ci")),r=r.i("S.E"),q=0;s.u();){p=s.d +if((p==null?r.a(p):p)===b)++q}return q}, +biX(a,b,c){var s,r,q +if(b.length===0)for(s=0;!0;){r=B.c.iA(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.dV(a,b) +for(;r!==-1;){q=r===0?0:B.c.LZ(a,"\n",r-1)+1 +if(c===r-q)return q +r=B.c.iA(a,b,r+1)}return null}, +bKD(){return new A.aqx()}, +bOU(a){var s,r,q,p,o,n,m,l,k,j=null,i=A.bwO(j,a,!1,B.awa) +if(!i){s=A.bwO(j,a,!1,B.aw9) +if(s)A.V(A.bL("The provided UUID is not RFC4122 compliant. It seems you might be using a Microsoft GUID. Try setting `validationMode = ValidationMode.nonStrict`",a,j)) +A.V(A.bL("The provided UUID is invalid.",a,j))}r=new Uint8Array(16) +for(q=A.bB("[0-9a-f]{2}",!0,!1,!1).pf(0,a.toLowerCase()),q=new A.za(q.a,q.b,q.c),p=t.Qz,o=0;q.u();){n=q.d +if(n==null)n=p.a(n) +if(o<16){m=n.b +l=m.index +k=o+1 +r[o]=A.c0(B.c.R(a.toLowerCase(),l,l+m[0].length),16) +o=k}}for(;o<16;o=k){k=o+1 +r[o]=0}return r}, +bo3(a){var s=a.length +if(s<16)throw A.d(A.h1("buffer too small: need 16: length="+s)) +s=$.bCL() +return s[a[0]]+s[a[1]]+s[a[2]]+s[a[3]]+"-"+s[a[4]]+s[a[5]]+"-"+s[a[6]]+s[a[7]]+"-"+s[a[8]]+s[a[9]]+"-"+s[a[10]]+s[a[11]]+s[a[12]]+s[a[13]]+s[a[14]]+s[a[15]]}, +bwO(a,b,c,d){var s +if(b==="00000000-0000-0000-0000-000000000000")return!0 +if(b.length!==36)return!1 +switch(d.a){case 1:s=A.bB("^[0-9a-f]{8}-[0-9a-f]{4}-[0-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$",!1,!0,!1) +return s.b.test(b.toLowerCase()) +case 0:s=A.bB("^[0-9a-f]{8}-[0-9a-f]{4}-[0-8][0-9a-f]{3}-[0-9a-f]{4}-[0-9a-f]{12}$",!1,!0,!1) +return s.b.test(b.toLowerCase()) +default:throw A.d(A.ae("`"+d.j(0)+"` is an invalid ValidationMode."))}}, +bY0(){var s,r,q,p,o=$.bhi +if(o!=null)return o +o=$.ap() +q=o.CO() +o.CK(q,null) +s=q.KW() +r=null +try{r=s.EH(1,1) +$.bhi=!1}catch(p){if(t.fS.b(A.v(p)))$.bhi=!0 +else throw p}finally{o=r +if(o!=null)o.m() +s.m()}o=$.bhi +o.toString +return o}, +bXV(a){var s,r,q,p=a.getUint16(0,!1)&65535,o=p&32768,n=p>>>10&31,m=p&1023 +if(n===0){if(m!==0){a.setUint32(0,1056964608+m,!1) +s=a.getFloat32(0,!1)-$.bBh().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)}, +ih(a,b){if(a==null)return null +a=B.c.cw(B.c.hI(B.c.hI(B.c.hI(B.c.hI(B.c.hI(a,"rem",""),"em",""),"ex",""),"px",""),"pt","")) +if(b)return A.oG(a) +return A.pi(a)}, +fx(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.ih(a,c) +return r!=null?r*s:q}, +bTX(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.ih(r,!1) +m.toString +l.push(m)}r=p==="-"?"-":""}else{if(p===".")if(A.aoJ(r,".",0)){m=A.ih(r,!1) +m.toString +l.push(m) +r=""}r+=p}}if(r.length!==0){s=A.ih(r,!1) +s.toString +l.push(s)}return l}, +aoF(a){var s,r,q,p,o,n,m,l,k +if(a==null||a==="")return null +s=$.bEe() +if(!s.b.test(a))throw A.d(A.a1("illegal or unsupported transform: "+a)) +s=$.bEd().pf(0,a) +s=A.a8(s,!0,A.y(s).i("B.E")) +r=A.af(s).i("e5<1>") +q=new A.e5(s,r) +for(s=new A.ci(q,q.gt(0),r.i("ci")),r=r.i("aN.E"),p=B.bJ;s.u();){o=s.d +if(o==null)o=r.a(o) +n=o.w5(1) +n.toString +m=B.c.cw(n) +o=o.w5(2) +o.toString +l=A.bTX(B.c.cw(o)) +k=B.agF.h(0,m) +if(k==null)throw A.d(A.a1("Unsupported transform: "+m)) +p=k.$2(l,p)}return p}, +bTR(a,b){return A.pq(a[0],a[1],a[2],a[3],a[4],a[5],null).iD(b)}, +bTU(a,b){return A.pq(1,0,Math.tan(B.b.gW(a)),1,0,0,null).iD(b)}, +bTV(a,b){return A.pq(1,Math.tan(B.b.gW(a)),0,1,0,0,null).iD(b)}, +bTW(a,b){var s=a.length<2?0:a[1] +return A.pq(1,0,0,1,B.b.gW(a),s,null).iD(b)}, +bTT(a,b){var s=a[0] +return A.pq(s,0,0,a.length<2?s:a[1],0,0,null).iD(b)}, +bTS(a,b){var s,r,q=B.bJ.b_Y(a[0]*3.141592653589793/180),p=a.length +if(p>1){s=a[1] +r=p===3?a[2]:s +return A.pq(1,0,0,1,s,r,null).iD(q).EP(-s,-r).iD(b)}else return q.iD(b)}, +bAr(a){if(a==="inherit"||a==null)return null +return a!=="evenodd"?B.d7:B.ajP}, +rU(a){var s +if(A.bA4(a))return A.bAq(a,1) +else{s=A.ih(a,!1) +s.toString +return s}}, +bAq(a,b){var s=A.ih(B.c.R(a,0,a.length-1),!1) +s.toString +return s/100*b}, +bA4(a){var s=B.c.bF(a,"%") +return s}, +bAp(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.pi(B.c.R(a,0,a.length-1)) +s.toString +q=r/100*s}else if(B.c.ba(a,"0.")){r=A.pi(a) +s.toString +q=r*s}else q=a.length!==0?A.pi(a):null +return q}, +lr(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.c_(i,0,2,h.i("S.E")) +B.b.G(j,g) +c4.a.push(l) +l=k.length +c3.setUint32(0,l,!0) +g=c4.a +j=c4.d +i=A.ba(j) +h=new A.aP(j,0,4,i.i("aP")) +h.c_(j,0,4,i.i("S.E")) +B.b.G(g,h) +h=c4.a +g=k.buffer +k=k.byteOffset +l=new Uint8Array(g,k,l) +B.b.G(h,l)}for(p=c5.c,o=p.length,n=0;l=p.length,n")) +g.c_(i,0,4,h.i("S.E")) +B.b.G(o,g) +c4.a.push(k.a) +c3.setUint16(0,j,!0) +k=c4.a +g=c4.d +o=A.ba(g) +i=new A.aP(g,0,2,o.i("aP")) +i.c_(g,0,2,o.i("S.E")) +B.b.G(k,i) +c3.setUint16(0,b==null?c0:b,!0) +o=c4.a +k=c4.d +i=A.ba(k) +h=new A.aP(k,0,2,i.i("aP")) +h.c_(k,0,2,i.i("S.E")) +B.b.G(o,h) +s.n(0,e,j)}if(c!=null){b=q.h(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.ip(B.PQ) +a=c4.e++ +c4.a.push(29) +c3.setUint32(0,o.a,!0) +o=c4.a +a0=c4.d +a1=A.ba(a0) +a2=new A.aP(a0,0,4,a1.i("aP")) +a2.c_(a0,0,4,a1.i("S.E")) +B.b.G(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.ba(i) +k=new A.aP(i,0,4,o.i("aP")) +k.c_(i,0,4,o.i("S.E")) +B.b.G(h,k) +c3.setFloat32(0,g,!0) +g=c4.a +k=c4.d +o=A.ba(k) +j=new A.aP(k,0,4,o.i("aP")) +j.c_(k,0,4,o.i("S.E")) +B.b.G(g,j) +c3.setUint16(0,a,!0) +j=c4.a +g=c4.d +o=A.ba(g) +k=new A.aP(g,0,2,o.i("aP")) +k.c_(g,0,2,o.i("S.E")) +B.b.G(j,k) +c3.setUint16(0,b==null?c0:b,!0) +o=c4.a +k=c4.d +j=A.ba(k) +i=new A.aP(k,0,2,j.i("aP")) +i.c_(k,0,2,j.i("S.E")) +B.b.G(o,i) +r.n(0,e,a)}++e}a3=A.w(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.c_(a0,0,2,a1.i("S.E")) +B.b.G(g,a2) +a2=i.length +c3.setUint32(0,a2,!0) +g=c4.a +a1=c4.d +a0=A.ba(a1) +b0=new A.aP(a1,0,4,a0.i("aP")) +b0.c_(a1,0,4,a0.i("S.E")) +B.b.G(g,b0) +b0=c4.a +g=i.buffer +i=i.byteOffset +i=new Uint8Array(g,i,a2) +B.b.G(b0,i) +i=h.length +c3.setUint32(0,i,!0) +g=c4.a +a0=c4.d +a1=A.ba(a0) +a2=new A.aP(a0,0,4,a1.i("aP")) +a2.c_(a0,0,4,a1.i("S.E")) +B.b.G(g,a2) +g=c4.a +b1=B.e.an(g.length,4) +if(b1!==0){a0=$.zU() +a1=4-b1 +a2=A.ba(a0) +b0=new A.aP(a0,0,a1,a2.i("aP")) +b0.c_(a0,0,a1,a2.i("S.E")) +B.b.G(g,b0)}g=c4.a +a0=h.buffer +h=h.byteOffset +i=new Uint8Array(a0,h,4*i) +B.b.G(g,i) +a3.n(0,a4,a);++a4}for(c2=c5.y,p=c2.length,n=0;n")) +a1.c_(a,0,2,a0.i("S.E")) +B.b.G(g,a1) +c3.setFloat32(0,o==null?0/0:o,!0) +o=c4.a +g=c4.d +a=A.ba(g) +a0=new A.aP(g,0,4,a.i("aP")) +a0.c_(g,0,4,a.i("S.E")) +B.b.G(o,a0) +c3.setFloat32(0,l==null?0/0:l,!0) +o=c4.a +l=c4.d +g=A.ba(l) +a=new A.aP(l,0,4,g.i("aP")) +a.c_(l,0,4,g.i("S.E")) +B.b.G(o,a) +c3.setFloat32(0,k==null?0/0:k,!0) +o=c4.a +l=c4.d +k=A.ba(l) +g=new A.aP(l,0,4,k.i("aP")) +g.c_(l,0,4,k.i("S.E")) +B.b.G(o,g) +c3.setFloat32(0,j==null?0/0:j,!0) +o=c4.a +l=c4.d +k=A.ba(l) +j=new A.aP(l,0,4,k.i("aP")) +j.c_(l,0,4,k.i("S.E")) +B.b.G(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.e.an(o.length,8) +if(b1!==0){k=$.zU() +j=8-b1 +i=A.ba(k) +g=new A.aP(k,0,j,i.i("aP")) +g.c_(k,0,j,i.i("S.E")) +B.b.G(o,g)}o=c4.a +k=h.buffer +h=h.byteOffset +l=new Uint8Array(k,h,8*l) +B.b.G(o,l)}else o.push(0)}for(c2=c5.f,p=c2.length,n=0;n")) +b0.c_(a1,0,2,a2.i("S.E")) +B.b.G(a0,b0) +c3.setFloat32(0,k,!0) +k=c4.a +b0=c4.d +a0=A.ba(b0) +a1=new A.aP(b0,0,4,a0.i("aP")) +a1.c_(b0,0,4,a0.i("S.E")) +B.b.G(k,a1) +c3.setFloat32(0,i,!0) +i=c4.a +a1=c4.d +k=A.ba(a1) +a0=new A.aP(a1,0,4,k.i("aP")) +a0.c_(a1,0,4,k.i("S.E")) +B.b.G(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.ba(g) +j=new A.aP(g,0,4,k.i("aP")) +j.c_(g,0,4,k.i("S.E")) +B.b.G(a,j) +if(l!=null){b4=B.ao.b4(l) +l=b4.length +c3.setUint16(0,l,!0) +k=c4.a +j=c4.d +i=A.ba(j) +h=new A.aP(j,0,2,i.i("aP")) +h.c_(j,0,2,i.i("S.E")) +B.b.G(k,h) +h=c4.a +k=b4.buffer +i=b4.byteOffset +l=new Uint8Array(k,i,l) +B.b.G(h,l)}else{c3.setUint16(0,0,!0) +l=c4.a +k=c4.d +j=A.ba(k) +i=new A.aP(k,0,2,j.i("aP")) +i.c_(k,0,2,j.i("S.E")) +B.b.G(l,i)}b4=B.ao.b4(o) +o=b4.length +c3.setUint16(0,o,!0) +l=c4.a +k=c4.d +j=A.ba(k) +i=new A.aP(k,0,2,j.i("aP")) +i.c_(k,0,2,j.i("S.E")) +B.b.G(l,i) +i=c4.a +l=b4.buffer +j=b4.byteOffset +o=new Uint8Array(l,j,o) +B.b.G(i,o)}for(c2=c5.z,p=c2.length,o=c5.w,l=c5.x,k=c5.e,n=0;n")) +a0.c_(g,0,2,a.i("S.E")) +B.b.G(j,a0) +c3.setUint16(0,i.gt(i),!0) +a0=c4.a +j=c4.d +g=A.ba(j) +a=new A.aP(j,0,2,g.i("aP")) +a.c_(j,0,2,g.i("S.E")) +B.b.G(a0,a) +a=c4.a +b1=B.e.an(a.length,4) +if(b1!==0){j=$.zU() +g=4-b1 +a0=A.ba(j) +a1=new A.aP(j,0,g,a0.i("aP")) +a1.c_(j,0,g,a0.i("S.E")) +B.b.G(a,a1)}j=c4.a +g=i.buffer +a=i.byteOffset +i=i.gt(i) +i=new Uint8Array(g,a,4*i) +B.b.G(j,i) +c3.setUint16(0,h.gt(h),!0) +j=c4.a +i=c4.d +g=A.ba(i) +a=new A.aP(i,0,2,g.i("aP")) +a.c_(i,0,2,g.i("S.E")) +B.b.G(j,a) +a=c4.a +b1=B.e.an(a.length,2) +if(b1!==0){j=$.zU() +i=2-b1 +g=A.ba(j) +a0=new A.aP(j,0,i,g.i("aP")) +a0.c_(j,0,i,g.i("S.E")) +B.b.G(a,a0)}j=c4.a +i=h.buffer +g=h.byteOffset +h=h.gt(h) +i=new Uint8Array(i,g,2*h) +B.b.G(j,i) +break +case 2:j=s.h(0,a9.d) +j.toString +c4.ip(B.dz) +c4.oL() +c4.a.push(37) +c3.setUint16(0,j,!0) +j=c4.a +i=c4.d +h=A.ba(i) +g=new A.aP(i,0,2,h.i("aP")) +g.c_(i,0,2,h.i("S.E")) +B.b.G(j,g) +break +case 3:c4.ip(B.dz) +c4.oL() +c4.a.push(38) +break +case 4:j=a3.h(0,a9.c) +j.toString +c4.ip(B.dz) +c4.oL() +c4.a.push(42) +c3.setUint16(0,j,!0) +j=c4.a +i=c4.d +h=A.ba(i) +g=new A.aP(i,0,2,h.i("aP")) +g.c_(i,0,2,h.i("S.E")) +B.b.G(j,g) +break +case 5:c4.ip(B.dz) +c4.oL() +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.vN() +c4.ip(B.dz) +a0=c4.z++ +c4.a.push(49) +c3.setUint16(0,a0,!0) +a0=c4.a +a1=c4.d +a2=A.ba(a1) +b0=new A.aP(a1,0,2,a2.i("aP")) +b0.c_(a1,0,2,a2.i("S.E")) +B.b.G(a0,b0) +c3.setFloat32(0,j,!0) +j=c4.a +b0=c4.d +a0=A.ba(b0) +a1=new A.aP(b0,0,4,a0.i("aP")) +a1.c_(b0,0,4,a0.i("S.E")) +B.b.G(j,a1) +c3.setFloat32(0,i,!0) +i=c4.a +a1=c4.d +j=A.ba(a1) +a0=new A.aP(a1,0,4,j.i("aP")) +a0.c_(a1,0,4,j.i("S.E")) +B.b.G(i,a0) +c3.setFloat32(0,h,!0) +h=c4.a +a0=c4.d +j=A.ba(a0) +i=new A.aP(a0,0,4,j.i("aP")) +i.c_(a0,0,4,j.i("S.E")) +B.b.G(h,i) +c3.setFloat32(0,g,!0) +g=c4.a +i=c4.d +j=A.ba(i) +h=new A.aP(i,0,4,j.i("aP")) +h.c_(i,0,4,j.i("S.E")) +B.b.G(g,h) +j=a.length +c4.a.push(j) +i=c4.a +b1=B.e.an(i.length,8) +if(b1!==0){h=$.zU() +g=8-b1 +a0=A.ba(h) +a1=new A.aP(h,0,g,a0.i("aP")) +a1.c_(h,0,g,a0.i("S.E")) +B.b.G(i,a1)}i=c4.a +h=a.buffer +a=a.byteOffset +j=new Uint8Array(h,a,8*j) +B.b.G(i,j) +break +case 9:j=a9.c +j.toString +c4.ip(B.dz) +c4.oL() +c4.a.push(51) +c3.setUint16(0,j,!0) +j=c4.a +i=c4.d +h=A.ba(i) +g=new A.aP(i,0,2,h.i("aP")) +g.c_(i,0,2,h.i("S.E")) +B.b.G(j,g) +break +case 6:j=a9.c +j.toString +i=a9.d +h=s.h(0,i) +i=r.h(0,i) +g=a9.e +c4.ip(B.dz) +c4.oL() +c4.a.push(44) +c3.setUint16(0,j,!0) +j=c4.a +a=c4.d +a0=A.ba(a) +a1=new A.aP(a,0,2,a0.i("aP")) +a1.c_(a,0,2,a0.i("S.E")) +B.b.G(j,a1) +c3.setUint16(0,h==null?c0:h,!0) +j=c4.a +h=c4.d +a=A.ba(h) +a0=new A.aP(h,0,2,a.i("aP")) +a0.c_(h,0,2,a.i("S.E")) +B.b.G(j,a0) +c3.setUint16(0,i==null?c0:i,!0) +j=c4.a +i=c4.d +h=A.ba(i) +a=new A.aP(i,0,2,h.i("aP")) +a.c_(i,0,2,h.i("S.E")) +B.b.G(j,a) +c3.setUint16(0,g==null?c0:g,!0) +j=c4.a +i=c4.d +h=A.ba(i) +g=new A.aP(i,0,2,h.i("aP")) +g.c_(i,0,2,h.i("S.E")) +B.b.G(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.vN() +c4.ip(B.dz) +c4.oL() +c4.a.push(47) +c3.setUint16(0,j,!0) +j=c4.a +a0=c4.d +a1=A.ba(a0) +a2=new A.aP(a0,0,2,a1.i("aP")) +a2.c_(a0,0,2,a1.i("S.E")) +B.b.G(j,a2) +c3.setFloat32(0,h,!0) +a2=c4.a +j=c4.d +a0=A.ba(j) +a1=new A.aP(j,0,4,a0.i("aP")) +a1.c_(j,0,4,a0.i("S.E")) +B.b.G(a2,a1) +c3.setFloat32(0,g,!0) +a1=c4.a +a2=c4.d +j=A.ba(a2) +a0=new A.aP(a2,0,4,j.i("aP")) +a0.c_(a2,0,4,j.i("S.E")) +B.b.G(a1,a0) +c3.setFloat32(0,i.c-h,!0) +h=c4.a +a0=c4.d +j=A.ba(a0) +a1=new A.aP(a0,0,4,j.i("aP")) +a1.c_(a0,0,4,j.i("S.E")) +B.b.G(h,a1) +c3.setFloat32(0,i.d-g,!0) +g=c4.a +i=c4.d +j=A.ba(i) +h=new A.aP(i,0,4,j.i("aP")) +h.c_(i,0,4,j.i("S.E")) +B.b.G(g,h) +j=c4.a +if(a!=null){i=a.length +j.push(i) +j=c4.a +b1=B.e.an(j.length,8) +if(b1!==0){h=$.zU() +g=8-b1 +a0=A.ba(h) +a1=new A.aP(h,0,g,a0.i("aP")) +a1.c_(h,0,g,a0.i("S.E")) +B.b.G(j,a1)}j=c4.a +h=a.buffer +a=a.byteOffset +i=new Uint8Array(h,a,8*i) +B.b.G(j,i)}else j.push(0) +break}}if(c4.b)A.V(A.a1("done() must not be called more than once on the same VectorGraphicsBuffer.")) +b8=A.eT(new Uint8Array(A.e7(c4.a)).buffer,0,b9) +c4.a=A.a([],c1) +c4.b=!0 +return A.dw(b8.buffer,0,b9)}, +bpv(a,b){var s=0,r=A.n(t.H),q,p +var $async$bpv=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:p=A.bTb(A.a([A.bTz(b,a)],t.s)) +q=p +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$bpv,r)}, +bTz(a,b){var s="./assets/packages/" +if(B.c.ba(a,"./"))return s+b+"/"+B.c.hI(a,"./","") +if(B.c.ba(a,"assets/"))return s+b+"/"+a +else return a}, +bTb(a){var s,r,q,p,o,n=A.a([],t.mo),m=self,l=m.document.head +for(s=t.Pl,r=0;r<1;++r){q=a[r] +p=m.document.head +p.toString +if(!A.bTn(p,q)){o=m.document.createElement("script") +o.type="text/javascript" +o.charset="utf-8" +o.async=!0 +o.src=q +l.appendChild(o) +n.push(new A.Rb(o,"load",!1,s).gW(0))}}return A.lM(n,!1,t.H)}, +bTn(a,b){var s,r +if(B.c.ba(b,"./"))b=B.c.hI(b,"./","") +for(s=0;sa.b +else r=!0 +if(r){o.PX() +o.b=A.bZ(a.hC(s),o.gTM())}}o.c=a}, +PX(){var s=this.b +if(s!=null)s.S(0) +this.b=null}, +aLV(){var s=this,r=s.a.$0(),q=s.c +q.toString +if(!r.WT(q)){s.b=null +q=s.d +if(q!=null)q.$0()}else s.b=A.bZ(s.c.hC(r),s.gTM())}} +A.apB.prototype={ +xK(){var s=0,r=A.n(t.H),q=this +var $async$xK=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=2 +return A.f(q.a.$0(),$async$xK) +case 2:s=3 +return A.f(q.b.$0(),$async$xK) +case 3:return A.l(null,r)}}) +return A.m($async$xK,r)}, +aZv(){return A.bIN(new A.apF(this),new A.apG(this))}, +aHM(){return A.bIL(new A.apC(this))}, +a6E(){return A.bIM(new A.apD(this),new A.apE(this))}} +A.apF.prototype={ +$0(){var s=0,r=A.n(t.B),q,p=this,o +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.f(o.xK(),$async$$0) +case 3:q=o.a6E() +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$0,r)}, +$S:543} +A.apG.prototype={ +$1(a){return this.ai1(a)}, +$0(){return this.$1(null)}, +ai1(a){var s=0,r=A.n(t.B),q,p=this,o +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.f(o.a.$1(a),$async$$1) +case 3:q=o.aHM() +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:188} +A.apC.prototype={ +$1(a){return this.ai0(a)}, +$0(){return this.$1(null)}, +ai0(a){var s=0,r=A.n(t.B),q,p=this,o +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.f(o.b.$0(),$async$$1) +case 3:q=o.a6E() +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:188} +A.apD.prototype={ +$1(a){var s,r,q,p=$.bC().geB(),o=p.a,n=a.hostElement +n.toString +s=a.viewConstraints +r=$.byY +$.byY=r+1 +q=new A.afh(r,o,A.bsS(n),s,B.ia,A.bsc(n)) +q.a08(r,o,n,s) +p.agi(q,a) +return r}, +$S:848} +A.apE.prototype={ +$1(a){return $.bC().geB().acI(a)}, +$S:195} +A.arW.prototype={ +gbN(a){var s=this.d +if(s==null){this.a2a() +s=this.d}s.toString +return s}, +geI(){if(this.y==null)this.a2a() +var s=this.e +s.toString +return s}, +a2a(){var s,r,q,p,o,n,m,l,k=this,j=!1,i=null,h=k.y +if(h!=null){A.II(h,0) +h=k.y +h.toString +A.IH(h,0) +k.y=null}h=k.x +s=h!=null&&h.length!==0 +if(s){h.toString +r=B.b.iF(h,0) +k.y=r +i=r +j=!0}else{h=k.f +$.dz() +q=self.window.devicePixelRatio +if(q===0)q=1 +p=k.r +o=self.window.devicePixelRatio +if(o===0)o=1 +i=k.a0H(h,p) +n=i +k.y=n +if(n==null){A.bAH() +i=k.a0H(h,p)}n=i.style +A.N(n,"position","absolute") +A.N(n,"width",A.c(h/q)+"px") +A.N(n,"height",A.c(p/o)+"px")}if(!J.e(k.z.lastChild,i))k.z.append(i) +try{if(j)i.style.removeProperty("z-index") +h=A.pG(i,"2d",null) +h.toString +k.d=t.B.a(h)}catch(m){}h=k.d +if(h==null){A.bAH() +h=A.pG(i,"2d",null) +h.toString +h=k.d=t.B.a(h)}q=k.as +k.e=new A.asQ(h,k,q,B.dE,B.k5,B.nA) +l=k.gbN(0) +l.save();++k.Q +A.bsp(l,1,0,0,1,0,0) +if(s)l.clearRect(0,0,k.f*q,k.r*q) +$.dz() +h=self.window.devicePixelRatio +if(h===0)h=1 +p=self.window.devicePixelRatio +if(p===0)p=1 +l.scale(h*q,p*q) +k.aII()}, +a0H(a,b){var s=this.as +return A.bY_(B.d.dZ(a*s),B.d.dZ(b*s))}, +V(a){var s,r,q,p,o,n=this +n.ap2(0) +if(n.y!=null){s=n.d +if(s!=null)try{s.font=""}catch(q){r=A.v(q) +if(!J.e(r.name,"NS_ERROR_FAILURE"))throw q}}if(n.y!=null){n.Th() +n.e.eU(0) +p=n.w +if(p==null)p=n.w=A.a([],t.yY) +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}, +a71(a,b,c,d){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.gbN(0) +if(d!=null)for(s=d.length,r=h.as,q=t.Jy;a>>16&255,l>>>8&255,l&255).a)) +s.translate(-5e4,0) +k=new Float32Array(2) +l=$.dz().d +if(l==null){l=self.window.devicePixelRatio +if(l===0)l=1}k[0]=5e4*l +l=h.b +l.c.ahe(k) +j=k[0] +i=k[1] +k[1]=0 +k[0]=0 +l.c.ahe(k) +A.blK(s,j-k[0]) +A.blL(s,i-k[1])}}, +rZ(){var s=this,r=s.z +if((r==null?null:r.x)!=null)r=$.bH().ge4()===B.aL +else r=!1 +if(r)s.a.restore() +r=s.Q +if(r!=null){s.a.translate(-r.a,-r.b) +s.Q=null}}, +MP(a){var s=this.a +if(a===B.aJ)s.stroke() +else A.aw7(s,null)}, +eU(a){var s,r=this,q=r.a +A.aw8(q,"") +s=q.fillStyle +r.r=s==null?null:A.btL(s) +A.aw9(q,"") +s=q.strokeStyle +r.w=s==null?null:A.btL(s) +q.shadowBlur=0 +A.blJ(q,"none") +A.blK(q,0) +A.blL(q,0) +q.globalCompositeOperation="source-over" +r.d=B.dE +A.blI(q,1) +r.x=1 +q.lineCap="butt" +r.e=B.k5 +q.lineJoin="miter" +r.f=B.nA +r.Q=null}} +A.ajT.prototype={ +V(a){B.b.V(this.a) +this.b=null +this.c=A.iv()}, +en(a){var s=this.c,r=new A.dc(new Float32Array(16)) +r.c5(s) +s=this.b +s=s==null?null:A.cN(s,!0,t.Sv) +this.a.push(new A.a7B(r,s))}, +el(a){var s,r=this.a +if(r.length===0)return +s=r.pop() +this.c=s.a +this.b=s.b}, +bs(a,b,c){this.c.bs(0,b,c)}, +i2(a,b,c){this.c.i2(0,b,c)}, +rY(a,b){this.c.agR(0,B.Nn,b)}, +al(a,b){this.c.e7(0,new A.dc(b))}, +nN(a){var s,r,q=this.b +if(q==null)q=this.b=A.a([],t.CK) +s=this.c +r=new A.dc(new Float32Array(16)) +r.c5(s) +q.push(new A.yo(a,null,null,r))}, +uv(a){var s,r,q=this.b +if(q==null)q=this.b=A.a([],t.CK) +s=this.c +r=new A.dc(new Float32Array(16)) +r.c5(s) +q.push(new A.yo(null,a,null,r))}, +mZ(a,b){var s,r,q=this.b +if(q==null)q=this.b=A.a([],t.CK) +s=this.c +r=new A.dc(new Float32Array(16)) +r.c5(s) +q.push(new A.yo(null,null,b,r))}} +A.arT.prototype={} +A.HD.prototype={ +aks(a,b){var s={} +s.a=!1 +this.a.zY(0,A.dk(J.i(t.xE.a(a.b),"text"))).ak(new A.asm(s,b),t.P).dc(new A.asn(s,b))}, +aiQ(a){this.b.zE(0).ak(new A.ash(a),t.P).dc(new A.asi(this,a))}, +aUW(a){this.b.zE(0).ak(new A.ask(a),t.P).dc(new A.asl(a))}} +A.asm.prototype={ +$1(a){var s=this.b +if(a){s.toString +s.$1(B.aT.e_([!0]))}else{s.toString +s.$1(B.aT.e_(["copy_fail","Clipboard.setData failed",null])) +this.a.a=!0}}, +$S:26} +A.asn.prototype={ +$1(a){var s +if(!this.a.a){s=this.b +s.toString +s.$1(B.aT.e_(["copy_fail","Clipboard.setData failed",null]))}}, +$S:2} +A.ash.prototype={ +$1(a){var s=A.C(["text",a],t.N,t.z),r=this.a +r.toString +r.$1(B.aT.e_([s]))}, +$S:99} +A.asi.prototype={ +$1(a){var s +if(a instanceof A.z1){A.eC(B.F,null,t.H).ak(new A.asg(this.b),t.P) +return}s=this.b +A.dJ("Could not get text from clipboard: "+A.c(a)) +s.toString +s.$1(B.aT.e_(["paste_fail","Clipboard.getData failed",null]))}, +$S:2} +A.asg.prototype={ +$1(a){var s=this.a +if(s!=null)s.$1(null)}, +$S:20} +A.ask.prototype={ +$1(a){var s=A.C(["value",a.length!==0],t.N,t.z),r=this.a +r.toString +r.$1(B.aT.e_([s]))}, +$S:99} +A.asl.prototype={ +$1(a){var s,r +if(a instanceof A.z1){A.eC(B.F,null,t.H).ak(new A.asj(this.a),t.P) +return}s=A.C(["value",!1],t.N,t.z) +r=this.a +r.toString +r.$1(B.aT.e_([s]))}, +$S:2} +A.asj.prototype={ +$1(a){var s=this.a +if(s!=null)s.$1(null)}, +$S:20} +A.ase.prototype={ +zY(a,b){return this.akr(0,b)}, +akr(a,b){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k +var $async$zY=A.j(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.f(A.jc(m.writeText(b),t.z),$async$zY) +case 7:p=2 +s=6 +break +case 4:p=3 +k=o +n=A.v(k) +A.dJ("copy is not successful "+A.c(n)) +m=A.c7(!1,t.y) +q=m +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:q=A.c7(!0,t.y) +s=1 +break +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$zY,r)}} +A.asf.prototype={ +zE(a){var s=0,r=A.n(t.N),q +var $async$zE=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=A.jc(self.window.navigator.clipboard.readText(),t.N) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$zE,r)}} +A.aym.prototype={ +zY(a,b){return A.c7(this.aK6(b),t.y)}, +aK6(a){var s,r,q,p,o="-99999px",n="transparent",m=A.cm(self.document,"textarea"),l=m.style +A.N(l,"position","absolute") +A.N(l,"top",o) +A.N(l,"left",o) +A.N(l,"opacity","0") +A.N(l,"color",n) +A.N(l,"background-color",n) +A.N(l,"background",n) +self.document.body.append(m) +s=m +A.bsA(s,a) +A.eO(s,null) +s.select() +r=!1 +try{r=self.document.execCommand("copy") +if(!r)A.dJ("copy is not successful")}catch(p){q=A.v(p) +A.dJ("copy is not successful "+A.c(q))}finally{s.remove()}return r}} +A.ayn.prototype={ +zE(a){return A.i0(new A.z1("Paste is not implemented for this browser."),null,t.N)}} +A.Xy.prototype={ +D(){return"ColorFilterType."+this.b}} +A.B7.prototype={ +j(a){var s=this +switch(s.d.a){case 0:return"ColorFilter.mode("+A.c(s.a)+", "+A.c(s.b)+")" +case 1:return"ColorFilter.matrix("+A.c(s.c)+")" +case 2:return"ColorFilter.linearToSrgbGamma()" +case 3:return"ColorFilter.srgbToLinearGamma()"}}} +A.azy.prototype={ +gVt(){var s=this.b +if(s==null)s=null +else{s=s.debugShowSemanticsNodes +if(s==null)s=null}return s===!0}} +A.a_P.prototype={ +gnR(a){var s=this.d +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}return s}} +A.aQa.prototype={ +FU(a){return this.akI(a)}, +akI(a){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j,i +var $async$FU=A.j(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.a0(a) +s=l.ga_(a)?7:9 +break +case 7:n.unlock() +q=!0 +s=1 +break +s=8 +break +case 9:m=A.bN8(A.dk(l.gW(a))) +s=m!=null?10:11 +break +case 10:p=13 +s=16 +return A.f(A.jc(n.lock(m),t.z),$async$FU) +case 16:q=!0 +s=1 +break +p=2 +s=15 +break +case 13:p=12 +i=o +l=A.c7(!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.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$FU,r)}} +A.awa.prototype={ +$1(a){return this.a.warn(a)}, +$S:14} +A.awf.prototype={ +$1(a){a.toString +return A.bS(a)}, +$S:544} +A.a0X.prototype={ +gbi(a){return A.ds(this.b.status)}, +gadZ(){var s=this.b,r=A.ds(s.status)>=200&&A.ds(s.status)<300,q=A.ds(s.status),p=A.ds(s.status),o=A.ds(s.status)>307&&A.ds(s.status)<400 +return r||q===0||p===304||o}, +gafI(){var s=this +if(!s.gadZ())throw A.d(new A.a0W(s.a,s.gbi(0))) +return new A.aBQ(s.b)}, +$ibtu:1} +A.aBQ.prototype={ +Nc(a,b,c){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$Nc=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:n=q.a.body.getReader() +p=t.B +case 2:if(!!0){s=3 +break}s=4 +return A.f(A.jc(n.read(),p),$async$Nc) +case 4:o=e +if(o.done){s=3 +break}b.$1(c.a(o.value)) +s=2 +break +case 3:return A.l(null,r)}}) +return A.m($async$Nc,r)}, +JF(){var s=0,r=A.n(t.pI),q,p=this,o +var $async$JF=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=3 +return A.f(A.jc(p.a.arrayBuffer(),t.X),$async$JF) +case 3:o=b +o.toString +q=t.pI.a(o) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$JF,r)}} +A.a0W.prototype={ +j(a){return'Flutter Web engine failed to fetch "'+this.a+'". HTTP request succeeded, but the server responded with HTTP status '+this.b+"."}, +$ibm:1} +A.a0V.prototype={ +j(a){return'Flutter Web engine failed to complete HTTP request to fetch "'+this.a+'": '+A.c(this.b)}, +$ibm:1} +A.a_y.prototype={} +A.IK.prototype={} +A.biB.prototype={ +$2(a,b){this.a.$2(B.b.kG(a,t.B),b)}, +$S:560} +A.aeO.prototype={ +u(){var s=++this.b,r=this.a +if(s>r.length)throw A.d(A.a1("Iterator out of bounds")) +return s"))}, +gt(a){return B.d.aA(this.a.length)}} +A.aeT.prototype={ +u(){var s=++this.b,r=this.a +if(s>r.length)throw A.d(A.a1("Iterator out of bounds")) +return s"))}, +gt(a){return B.d.aA(this.a.length)}} +A.a_v.prototype={ +gI(a){var s=this.b +s===$&&A.b() +return s}, +u(){var s=this.a.next() +if(s.done)return!1 +this.b=this.$ti.c.a(s.value) +return!0}} +A.axP.prototype={} +A.a7B.prototype={} +A.yo.prototype={} +A.ajS.prototype={} +A.aPJ.prototype={ +en(a){var s,r,q=this,p=q.Do$ +p=p.length===0?q.a:B.b.gY(p) +s=q.pD$ +r=new A.dc(new Float32Array(16)) +r.c5(s) +q.adi$.push(new A.ajS(p,r))}, +el(a){var s,r,q,p=this,o=p.adi$ +if(o.length===0)return +s=o.pop() +p.pD$=s.b +o=p.Do$ +r=s.a +q=p.a +while(!0){if(!!J.e(o.length===0?q:B.b.gY(o),r))break +o.pop()}}, +bs(a,b,c){this.pD$.bs(0,b,c)}, +i2(a,b,c){this.pD$.i2(0,b,c)}, +rY(a,b){this.pD$.agR(0,B.Nn,b)}, +al(a,b){this.pD$.e7(0,new A.dc(b))}} +A.Bp.prototype={} +A.wX.prototype={} +A.JC.prototype={} +A.biU.prototype={ +$1(a){if(a.length!==1)throw A.d(A.lz(u.a2)) +this.a.a=B.b.gW(a)}, +$S:680} +A.biV.prototype={ +$1(a){return this.a.q(0,a)}, +$S:363} +A.biW.prototype={ +$1(a){var s,r +t.a.a(a) +s=J.a0(a) +r=A.bS(s.h(a,"family")) +s=J.eX(t.j.a(s.h(a,"fonts")),new A.biT(),t.zq) +return new A.wX(r,A.a8(s,!0,s.$ti.i("aN.E")))}, +$S:381} +A.biT.prototype={ +$1(a){var s,r,q,p,o=t.N,n=A.w(o,o) +for(o=J.nV(t.a.a(a)),o=o.gav(o),s=null;o.u();){r=o.gI(o) +q=r.a +p=J.e(q,"asset") +r=r.b +if(p){A.bS(r) +s=r}else n.n(0,q,A.c(r))}if(s==null)throw A.d(A.lz("Invalid Font manifest, missing 'asset' key on font.")) +return new A.Bp(s,n)}, +$S:428} +A.jm.prototype={} +A.a0n.prototype={} +A.a0p.prototype={} +A.WB.prototype={} +A.jn.prototype={ +gk(a){return this.a}} +A.XH.prototype={ +aPI(){var s,r,q,p=this,o=p.b +if(o!=null)for(o=o.gaJ(0),s=A.y(o),o=new A.bD(J.ay(o.a),o.b,s.i("bD<1,2>")),s=s.y[1];o.u();){r=o.a +for(r=J.ay(r==null?s.a(r):r);r.u();){q=r.gI(r) +q.b.$1(q.a)}}p.b=p.a +p.a=null}, +a0i(a,b){var s,r=this,q=r.a +if(q==null)q=r.a=A.w(t.N,r.$ti.i("D>")) +s=q.h(0,a) +if(s==null){s=A.a([],r.$ti.i("E>")) +q.n(0,a,s) +q=s}else q=s +q.push(b)}, +b_T(a){var s,r,q=this.b +if(q==null)return null +s=q.h(0,a) +if(s==null||s.length===0)return null +r=(s&&B.b).iF(s,0) +this.a0i(a,r) +return r.a}} +A.EG.prototype={ +gk(a){return this.a}} +A.aAb.prototype={ +b_b(){var s=A.Bs() +this.c=s}, +b_d(){var s=A.Bs() +this.d=s}, +b_c(){var s=A.Bs() +this.e=s}, +alQ(){var s,r,q,p=this,o=p.c +o.toString +s=p.d +s.toString +r=p.e +r.toString +r=A.a([p.a,p.b,o,s,r,r,0,0,0,0,1],t.t) +$.bmj.push(new A.q0(r)) +q=A.Bs() +if(q-$.bBp()>1e5){$.bIY=q +o=$.bC() +s=$.bmj +A.rP(o.dy,o.fr,s,t.Px) +$.bmj=A.a([],t.no)}}} +A.M5.prototype={ +gjV(){return this.cx}, +ul(a){var s=this +s.Aj(a) +s.cx=a.cx +s.cy=a.cy +s.db=a.db +a.cx=null}, +cp(a){var s,r=this,q="transform-origin",p=r.pu("flt-backdrop") +A.N(p.style,q,"0 0 0") +s=A.cm(self.document,"flt-backdrop-interior") +r.cx=s +A.N(s.style,"position","absolute") +s=r.pu("flt-backdrop-filter") +r.cy=s +A.N(s.style,q,"0 0 0") +s=r.cy +s.toString +p.append(s) +s=r.cx +s.toString +p.append(s) +return p}, +m8(){var s=this +s.ww() +$.qM.zi(s.db) +s.cy=s.cx=s.db=null}, +hz(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=t.m1.a(g.CW) +$.qM.zi(g.db) +g.db=null +s=g.fr +r=g.f +if(s!=r){r.toString +q=new A.dc(new Float32Array(16)) +if(q.hn(r)===0)A.V(A.hY(r,"other","Matrix cannot be inverted")) +g.dy=q +g.fr=g.f}$.ja.toString +p=$.dz().d +if(p==null){s=self.window.devicePixelRatio +p=s===0?1:s}s=g.dy +s===$&&A.b() +o=A.bkb(s,new A.I(0,0,$.ja.gmo().a*p,$.ja.gmo().b*p)) +n=o.a +m=o.b +l=o.c-n +k=o.d-m +j=g.e +for(;j!=null;){if(j.gDP()){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.N(h,"position","absolute") +A.N(h,"left",A.c(n)+"px") +A.N(h,"top",A.c(m)+"px") +A.N(h,"width",A.c(l)+"px") +A.N(h,"height",A.c(k)+"px") +if($.bH().ge4()===B.dG){A.N(h,"background-color","#000") +A.N(h,"opacity","0.2")}else{if($.bH().ge4()===B.aL){s=g.cy +s.toString +A.fy(s,"-webkit-backdrop-filter",f.gLh())}s=g.cy +s.toString +A.fy(s,"backdrop-filter",f.gLh())}}, +cg(a,b){var s=this +s.oI(0,b) +if(!s.CW.l(0,b.CW))s.hz() +else s.a1r()}, +a1r(){var s=this.e +for(;s!=null;){if(s.gDP()){if(!J.e(s.w,this.dx))this.hz() +break}s=s.e}}, +op(){this.an4() +this.a1r()}, +$ibr6:1} +A.ps.prototype={ +spl(a,b){var s,r,q=this +q.a=b +s=B.d.dv(b.a)-1 +r=B.d.dv(q.a.b)-1 +if(q.z!==s||q.Q!==r){q.z=s +q.Q=r +q.a9z()}}, +a9z(){A.N(this.c.style,"transform","translate("+this.z+"px, "+this.Q+"px)")}, +a7Y(){var s=this,r=s.a,q=r.a +r=r.b +s.d.bs(0,-q+(q-1-s.z)+1,-r+(r-1-s.Q)+1)}, +acJ(a,b){return this.r>=A.aqE(a.c-a.a)&&this.w>=A.aqD(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.moveTo(p+k,n) +c=o-k +a.lineTo(c,n) +A.Vu(a,c,n+i,k,i,0,4.71238898038469,6.283185307179586,!1) +c=m-d +a.lineTo(o,c) +A.Vu(a,o-f,c,f,d,0,0,1.5707963267948966,!1) +c=p+g +a.lineTo(c,m) +A.Vu(a,c,m-e,g,e,0,1.5707963267948966,3.141592653589793,!1) +c=n+h +a.lineTo(p,c) +A.Vu(a,p+j,c,j,h,0,3.141592653589793,4.71238898038469,!1) +a2.geI().MP(b) +a2.geI().rZ()}}, +Dc(a,b){var s,r,q,p,o,n,m=this.d +if(this.Jg(b)){a=A.Vq(a,b) +s=A.Vr(a,b,"draw-oval",m.c) +m=a.a +r=a.b +this.AO(s,new A.z(m,r),b) +A.N(s.style,"border-radius",A.c((a.c-m)/2)+"px / "+A.c((a.d-r)/2)+"px")}else{m.geI().qi(b,a) +r=b.b +m.gbN(0).beginPath() +q=m.geI().Q +p=q==null +o=p?a.gbq().a:a.gbq().a-q.a +n=p?a.gbq().b:a.gbq().b-q.b +A.Vu(m.gbN(0),o,n,(a.c-a.a)/2,(a.d-a.b)/2,0,0,6.283185307179586,!1) +m.geI().MP(r) +m.geI().rZ()}}, +k_(a,b,c){var s,r,q,p,o,n,m,l,k=this +if(k.Ue(c)){s=A.Vq(A.nc(a,b),c) +r=A.Vr(s,c,"draw-circle",k.d.c) +k.AO(r,new A.z(s.a,s.b),c) +A.N(r.style,"border-radius","50%")}else{q=c.w!=null?A.nc(a,b):null +p=k.d +p.geI().qi(c,q) +q=c.b +p.gbN(0).beginPath() +o=p.geI().Q +n=o==null +m=a.a +m=n?m:m-o.a +l=a.b +l=n?l:l-o.b +A.Vu(p.gbN(0),m,l,b,b,0,0,6.283185307179586,!1) +p.geI().MP(q) +p.geI().rZ()}}, +eJ(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(h.Jg(b)){s=h.d +r=s.c +t.Jy.a(a) +q=a.a.Z6() +if(q!=null){h.ey(q,b) +return}p=a.a +o=p.ax?p.a3R():null +if(o!=null){h.dk(o,b) +return}n=A.bzG() +p=A.b8("visible") +if(p==null)p=t.K.a(p) +n.setAttribute("overflow",p) +p=self.document.createElementNS("http://www.w3.org/2000/svg","path") +n.append(p) +m=b.b +if(m!==B.aJ)if(m!==B.cm){m=b.c +m=m!==0&&m!=null}else m=!1 +else m=!0 +l=b.r +if(m){m=A.b8(A.eM(l)) +if(m==null)m=t.K.a(m) +p.setAttribute("stroke",m) +m=b.c +m=A.b8(A.c(m==null?1:m)) +if(m==null)m=t.K.a(m) +p.setAttribute("stroke-width",m) +m=b.d +if(m!=null){m=A.b8(A.c(A.bAT(m))) +if(m==null)m=t.K.a(m) +p.setAttribute("stroke-linecap",m)}m=A.b8("none") +if(m==null)m=t.K.a(m) +p.setAttribute("fill",m)}else{m=A.b8(A.eM(l)) +if(m==null)m=t.K.a(m) +p.setAttribute("fill",m)}if(a.b===B.fl){m=A.b8("evenodd") +if(m==null)m=t.K.a(m) +p.setAttribute("fill-rule",m)}m=A.b8(A.bAx(a.a,0,0)) +if(m==null)m=t.K.a(m) +p.setAttribute("d",m) +if(s.b==null){k=n.style +A.N(k,"position","absolute") +if(!r.DS(0)){A.N(k,"transform",A.mr(r.a)) +A.N(k,"transform-origin","0 0 0")}}if(b.x!=null){s=b.b +j=A.eM(b.r) +i=b.x.b +if($.bH().ge4()===B.aL&&s!==B.aJ)A.N(n.style,"box-shadow","0px 0px "+A.c(i*2)+"px "+j) +else A.N(n.style,"filter","blur("+A.c(i)+"px)")}h.AO(n,B.j,b)}else{s=b.w!=null?a.ko(0):null +p=h.d +p.geI().qi(b,s) +s=b.b +if(s==null&&b.c!=null)p.eJ(a,B.aJ) +else p.eJ(a,s) +p.geI().rZ()}}, +yp(a,b,c,d){var s,r,q,p,o,n,m=this.d,l=A.bV9(a.ko(0),c) +if(l!=null){s=(B.d.aa(0.3*(b.gk(b)>>>24&255))&255)<<24|b.gk(b)&16777215 +r=A.bV1(s>>>16&255,s>>>8&255,s&255,255) +m.gbN(0).save() +q=m.gbN(0) +q.globalAlpha=(s>>>24&255)/255 +s=d&&$.bH().ge4()!==B.aL +q=l.b +p=l.a +o=q.a +n=q.b +if(s){m.gbN(0).translate(o,n) +A.blH(m.gbN(0),A.bAe(new A.xy(B.a6,p))) +A.aw9(m.gbN(0),"") +A.aw8(m.gbN(0),r)}else{A.blH(m.gbN(0),"none") +A.aw9(m.gbN(0),"") +A.aw8(m.gbN(0),r) +m.gbN(0).shadowBlur=p +A.blJ(m.gbN(0),r) +A.blK(m.gbN(0),o) +A.blL(m.gbN(0),n)}m.xl(m.gbN(0),a) +A.aw7(m.gbN(0),null) +m.gbN(0).restore()}}, +Ti(a){var s,r,q,p=a.a,o=A.awc(p) +o.toString +s=this.b +if(s!=null){r=s.b_T(o) +if(r!=null)return r}if(!a.b){a.b=!0 +A.N(p.style,"position","absolute")}q=A.awg(p,!0) +p=this.b +if(p!=null)p.a0i(o,new A.EG(q,A.bSD(),p.$ti.i("EG<1>"))) +return q}, +a2Q(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h=this +t.gc.a(a) +s=c.a +r=A.bzF(c.z) +if(r instanceof A.Cc)q=h.av4(a,r.b,r.c,c) +else if(r instanceof A.C8){p=A.bAW(r.b) +o=p.b +h.c.append(o) +h.f.push(o) +q=h.Ti(a) +A.N(q.style,"filter","url(#"+p.a+")")}else q=h.Ti(a) +o=q.style +n=A.biq(s) +A.N(o,"mix-blend-mode",n==null?"":n) +o=h.d +if(o.b!=null){n=q.style +n.removeProperty("width") +n.removeProperty("height") +n=o.b +n.toString +m=A.boQ(n,q,b,o.c) +for(o=m.length,n=h.c,l=h.f,k=0;k=6.283185307179586;s=!1){r.un(0,a,b,3.141592653589793,s) +b+=3.141592653589793 +r.un(0,a,b,3.141592653589793,!1) +b+=3.141592653589793 +c-=6.283185307179586}r.un(0,a,b,c,s) +this.a.eJ(r,t.Vh.a(e))}, +eJ(a,b){this.a.eJ(a,t.Vh.a(b))}, +rf(a,b,c,d){var s,r,q=this.a +t.Vh.a(d) +s=q.d +d.e=q.e=s.a=s.c=!0 +r=new A.a5y(a,b,c,d.a) +q.a.qh(c,r) +q.c.push(r)}, +yo(a){this.a.yo(a)}, +rg(a,b){this.a.rg(a,b)}, +KR(a,b,c){var s,r=this.a +t.Yu.a(a) +t.Vh.a(c) +c.e=r.e=r.d.c=!0 +s=new A.a5H(a,b,c.a) +r.az9(a.b,0,c,s) +r.c.push(s)}, +yp(a,b,c,d){var s,r,q=this.a +q.e=q.d.c=!0 +s=A.bV7(a.ko(0),c) +r=new A.a5G(t.Jy.a(a),b,c,d) +q.a.qh(s,r) +q.c.push(r)}} +A.QO.prototype={ +gjV(){return this.kN$}, +cp(a){var s=this.pu("flt-clip"),r=A.cm(self.document,"flt-clip-interior") +this.kN$=r +A.N(r.style,"position","absolute") +r=this.kN$ +r.toString +s.append(r) +return s}, +aaE(a,b){var s +if(b!==B.h){s=a.style +A.N(s,"overflow","hidden") +A.N(s,"z-index","0")}}} +A.M7.prototype={ +mq(){var s=this +s.f=s.e.f +if(s.CW!==B.h)s.w=s.cx +else s.w=null +s.r=null}, +cp(a){var s=this.a00(0),r=A.b8("rect") +if(r==null)r=t.K.a(r) +s.setAttribute("clip-type",r) +return s}, +hz(){var s,r=this,q=r.d.style,p=r.cx,o=p.a +A.N(q,"left",A.c(o)+"px") +s=p.b +A.N(q,"top",A.c(s)+"px") +A.N(q,"width",A.c(p.c-o)+"px") +A.N(q,"height",A.c(p.d-s)+"px") +p=r.d +p.toString +r.aaE(p,r.CW) +p=r.kN$.style +A.N(p,"left",A.c(-o)+"px") +A.N(p,"top",A.c(-s)+"px")}, +cg(a,b){var s=this +s.oI(0,b) +if(!s.cx.l(0,b.cx)||s.CW!==b.CW){s.w=null +s.hz()}}, +gDP(){return!0}, +$ibrw:1} +A.a5X.prototype={ +mq(){var s,r=this +r.f=r.e.f +if(r.cx!==B.h){s=r.CW +r.w=new A.I(s.a,s.b,s.c,s.d)}else r.w=null +r.r=null}, +cp(a){var s=this.a00(0),r=A.b8("rrect") +if(r==null)r=t.K.a(r) +s.setAttribute("clip-type",r) +return s}, +hz(){var s,r=this,q=r.d.style,p=r.CW,o=p.a +A.N(q,"left",A.c(o)+"px") +s=p.b +A.N(q,"top",A.c(s)+"px") +A.N(q,"width",A.c(p.c-o)+"px") +A.N(q,"height",A.c(p.d-s)+"px") +A.N(q,"border-top-left-radius",A.c(p.e)+"px") +A.N(q,"border-top-right-radius",A.c(p.r)+"px") +A.N(q,"border-bottom-right-radius",A.c(p.x)+"px") +A.N(q,"border-bottom-left-radius",A.c(p.z)+"px") +p=r.d +p.toString +r.aaE(p,r.cx) +p=r.kN$.style +A.N(p,"left",A.c(-o)+"px") +A.N(p,"top",A.c(-s)+"px")}, +cg(a,b){var s=this +s.oI(0,b) +if(!s.CW.l(0,b.CW)||s.cx!==b.cx){s.w=null +s.hz()}}, +gDP(){return!0}, +$ibrv:1} +A.M6.prototype={ +cp(a){return this.pu("flt-clippath")}, +mq(){var s=this +s.an3() +if(s.cx!==B.h){if(s.w==null)s.w=s.CW.ko(0)}else s.w=null}, +hz(){var s=this,r=s.cy +if(r!=null)r.remove() +r=s.d +r.toString +r=A.bzH(r,s.CW) +s.cy=r +s.d.append(r)}, +cg(a,b){var s,r=this +r.oI(0,b) +if(b.CW!==r.CW){r.w=null +s=b.cy +if(s!=null)s.remove() +r.hz()}else r.cy=b.cy +b.cy=null}, +m8(){var s=this.cy +if(s!=null)s.remove() +this.cy=null +this.ww()}, +gDP(){return!0}, +$ibru:1} +A.M8.prototype={ +gjV(){return this.CW}, +ul(a){this.Aj(a) +this.CW=a.CW +this.cy=a.cy +a.CW=null}, +vx(a){++a.a +this.an2(a);--a.a}, +m8(){var s=this +s.ww() +$.qM.zi(s.cy) +s.CW=s.cy=null}, +cp(a){var s=this.pu("flt-color-filter"),r=A.cm(self.document,"flt-filter-interior") +A.N(r.style,"position","absolute") +this.CW=r +s.append(r) +return s}, +hz(){var s,r,q,p=this,o="visibility" +$.qM.zi(p.cy) +p.cy=null +s=A.bzF(p.cx) +if(s==null){A.N(p.d.style,"background-color","") +r=p.CW +if(r!=null)A.N(r.style,o,"visible") +return}if(s instanceof A.Cc)p.asp(s) +else{r=p.CW +if(s instanceof A.C8){p.cy=s.Xa(r) +r=p.CW.style +q=s.a +A.N(r,"filter",q!=null?"url(#"+q+")":"")}else if(r!=null)A.N(r.style,o,"visible")}}, +asp(a){var s,r=a.Xa(this.CW) +this.cy=r +if(r==null)return +r=this.CW.style +s=a.a +A.N(r,"filter",s!=null?"url(#"+s+")":"")}, +cg(a,b){this.oI(0,b) +if(b.cx!==this.cx)this.hz()}, +$ibrA:1} +A.aTf.prototype={ +OG(a,b){var s,r,q,p,o=self.document.createElementNS("http://www.w3.org/2000/svg","feColorMatrix"),n=o.type +n.toString +A.aPE(n,1) +n=o.result +n.toString +A.Dh(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)}, +wd(a,b,c){var s=self.document.createElementNS("http://www.w3.org/2000/svg","feFlood"),r=A.b8(a) +if(r==null)r=t.K.a(r) +s.setAttribute("flood-color",r) +r=A.b8(b) +if(r==null)r=t.K.a(r) +s.setAttribute("flood-opacity",r) +r=s.result +r.toString +A.Dh(r,c) +this.c.append(s)}, +ZB(a,b,c){var s=self.document.createElementNS("http://www.w3.org/2000/svg","feBlend"),r=s.in1 +r.toString +A.Dh(r,a) +r=s.in2 +r.toString +A.Dh(r,b) +r=s.mode +r.toString +A.aPE(r,c) +this.c.append(s)}, +FK(a,b,c,d,e,f,g,h){var s=self.document.createElementNS("http://www.w3.org/2000/svg","feComposite"),r=s.in1 +r.toString +A.Dh(r,a) +r=s.in2 +r.toString +A.Dh(r,b) +r=s.operator +r.toString +A.aPE(r,g) +if(c!=null){r=s.k1 +r.toString +A.aPF(r,c)}if(d!=null){r=s.k2 +r.toString +A.aPF(r,d)}if(e!=null){r=s.k3 +r.toString +A.aPF(r,e)}if(f!=null){r=s.k4 +r.toString +A.aPF(r,f)}r=s.result +r.toString +A.Dh(r,h) +this.c.append(s)}, +OH(a,b,c,d){var s=null +return this.FK(a,b,s,s,s,s,c,d)}, +cL(){var s=this.b +s.append(this.c) +return new A.aTe(this.a,s)}} +A.aTe.prototype={} +A.aw5.prototype={ +pp(a,b){throw A.d(A.cE(null))}, +uv(a){throw A.d(A.cE(null))}, +mZ(a,b){throw A.d(A.cE(null))}, +k0(a,b,c){throw A.d(A.cE(null))}, +Dd(a){throw A.d(A.cE(null))}, +ey(a,b){var s +a=A.Vq(a,b) +s=this.Do$ +s=s.length===0?this.a:B.b.gY(s) +s.append(A.Vr(a,b,"draw-rect",this.pD$))}, +dk(a,b){var s,r=A.Vr(A.Vq(new A.I(a.a,a.b,a.c,a.d),b),b,"draw-rrect",this.pD$) +A.bzo(r.style,a) +s=this.Do$ +s=s.length===0?this.a:B.b.gY(s) +s.append(r)}, +Dc(a,b){throw A.d(A.cE(null))}, +k_(a,b,c){throw A.d(A.cE(null))}, +eJ(a,b){throw A.d(A.cE(null))}, +yp(a,b,c,d){throw A.d(A.cE(null))}, +rf(a,b,c,d){throw A.d(A.cE(null))}, +rg(a,b){var s=A.bzL(a,b,this.pD$),r=this.Do$ +r=r.length===0?this.a:B.b.gY(r) +r.append(s)}, +KR(a,b,c){throw A.d(A.cE(null))}, +ys(){}} +A.a0T.prototype={ +Vn(a,b,c){return A.btr(a,b,c)}} +A.a0S.prototype={ +Vn(a,b,c){return A.btr(a,b,c)}} +A.JR.prototype={ +m(){}, +hN(a){return this}, +aW2(a){return a===this}, +j(a){return"["+this.d+"\xd7"+this.e+"]"}, +$ibtx:1, +geu(a){return this.d}, +gbA(a){return this.e}} +A.M9.prototype={ +mq(){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.dc(new Float32Array(16)) +s.c5(o) +p.f=s +s.bs(0,r,q)}p.r=null}, +gz_(){var s,r=this.cy +if(r==null){r=this.cx +s=A.iv() +s.A0(-r.a,-r.b,0) +this.cy=s +r=s}return r}, +gjV(){return this.dx}, +ul(a){this.Aj(a) +this.db=a.db +this.dx=a.dx +a.dx=a.db=null}, +m8(){var s=this +s.ww() +$.qM.zi(s.db) +s.dx=s.db=null}, +cp(a){var s="position",r="absolute",q="transform-origin",p=this.pu("flt-image-filter"),o=this.pu("flt-image-filter-interior") +A.fy(o,s,r) +A.fy(o,q,"0 0 0") +A.fy(p,s,r) +A.fy(p,q,"0 0 0") +this.dx=o +p.appendChild(o) +return p}, +hz(){var s,r,q=this,p=t.m1.a(q.CW) +$.qM.zi(q.db) +q.db=null +A.N(q.dx.style,"filter",p.gLh()) +A.N(q.dx.style,"transform",p.gb0r()) +s=q.d.style +r=q.cx +A.N(s,"left",A.c(r.a)+"px") +A.N(s,"top",A.c(r.b)+"px")}, +cg(a,b){var s=this +s.oI(0,b) +if(!b.CW.l(0,s.CW)||!b.cx.l(0,s.cx))s.hz()}, +$ibty:1} +A.Ma.prototype={ +mq(){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.dc(new Float32Array(16)) +r.c5(p) +q.f=r +r.bs(0,s,q.cx)}q.r=null}, +gz_(){var s=this,r=s.cy +if(r==null){r=A.iv() +r.A0(-s.CW,-s.cx,0) +s.cy=r}return r}, +cp(a){var s=A.cm(self.document,"flt-offset") +A.fy(s,"position","absolute") +A.fy(s,"transform-origin","0 0 0") +return s}, +hz(){A.N(this.d.style,"transform","translate("+A.c(this.CW)+"px, "+A.c(this.cx)+"px)")}, +cg(a,b){var s=this +s.oI(0,b) +if(b.CW!==s.CW||b.cx!==s.cx)s.hz()}, +$ibuJ:1} +A.Mb.prototype={ +mq(){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.dc(new Float32Array(16)) +s.c5(o) +p.f=s +s.bs(0,r,q)}p.r=null}, +gz_(){var s,r=this.cy +if(r==null){r=this.cx +s=A.iv() +s.A0(-r.a,-r.b,0) +this.cy=s +r=s}return r}, +cp(a){var s=A.cm(self.document,"flt-opacity") +A.fy(s,"position","absolute") +A.fy(s,"transform-origin","0 0 0") +return s}, +hz(){var s,r=this.d +r.toString +A.fy(r,"opacity",A.c(this.CW/255)) +s=this.cx +A.N(r.style,"transform","translate("+A.c(s.a)+"px, "+A.c(s.b)+"px)")}, +cg(a,b){var s=this +s.oI(0,b) +if(s.CW!==b.CW||!s.cx.l(0,b.cx))s.hz()}, +$ibuL:1} +A.DO.prototype={ +sxL(a){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.a=a}, +gd0(a){var s=this.a.b +return s==null?B.cm:s}, +sd0(a,b){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.b=b}, +ghw(){var s=this.a.c +return s==null?0:s}, +shw(a){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.c=a}, +swn(a){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.d=a}, +sP0(a){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.e=a}, +sLP(a){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.f=a}, +gaG(a){return new A.A(this.a.r)}, +saG(a,b){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.r=b.gk(b)}, +swf(a){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.w=a}, +sXc(a){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.x=a}, +srv(a){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.y=a}, +snO(a){var s=this +if(s.e){s.a=s.a.hN(0) +s.e=!1}s.a.z=a}, +j(a){return"Paint()"}, +$iLX:1, +sWR(){}, +salN(){}} +A.a91.prototype={ +hN(a){var s=this,r=new A.a91() +r.a=s.a +r.y=s.y +r.x=s.x +r.w=s.w +r.f=s.f +r.r=s.r +r.z=s.z +r.c=s.c +r.b=s.b +r.e=s.e +r.d=s.d +return r}, +j(a){return this.dQ(0)}} +A.jZ.prototype={ +Yg(){var s,r,q,p,o,n,m,l,k,j=this,i=A.a([],t.yv),h=j.auE(0.25),g=B.e.aKl(1,h) +i.push(new A.z(j.a,j.b)) +if(h===5){s=new A.adz() +j.a1B(s) +r=s.a +r.toString +q=s.b +q.toString +p=r.c +o=p===r.e&&r.d===r.f&&q.a===q.c&&q.b===q.d +if(o){n=new A.z(p,r.d) +i.push(n) +i.push(n) +i.push(n) +i.push(new A.z(q.e,q.f)) +g=2}}else o=!1 +if(!o)A.bl6(j,h,i) +m=2*g+1 +k=0 +while(!0){if(!(k=0)s.c=-r +s.e=s.d=-1}, +jT(a){this.Jy(a,0,0)}, +HJ(){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.gbq().a+g*Math.cos(p) +d=c2.gbq().b+f*Math.sin(p) +if(o===m&&n===l){if(c5)b9.hc(0,e,d) +else b9.Sj(e,d) +return}c=o*m+n*l +b=o*l-n*m +c0=!1 +if(Math.abs(b)<=0.000244140625)if(c>0)if(!(b>=0&&h===0))c0=b<=0&&h===1 +else c0=!0 +if(c0){if(c5)b9.hc(0,e,d) +else b9.Sj(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.dg(0,n,m) +return}a8=B.d.dZ(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.000244140625&&B.d.dv(l)===l&&B.d.dv(k)===k&&B.d.dv(n)===n&&B.d.dv(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.000244140625){q=r+1 +if(q<0)q+=4 +p=c>0?0:1 +this.Pz(a,p,B.d.aA(q)) +return}}this.un(0,a,b,c,!0)}, +hk(a1){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.HJ(),f=a1.a,e=a1.b,d=a1.c,c=a1.d,b=new A.I(f,e,d,c),a=a1.e,a0=!1 +if(a===0||a1.f===0)if(a1.r===0||a1.w===0)if(a1.z===0||a1.Q===0)a0=a1.x===0||a1.y===0 +if(a0||a1.ga_(0))h.Jy(b,0,3) +else if(A.bWn(a1))h.Pz(b,0,3) +else{s=d-f +r=c-e +q=Math.max(0,a) +p=Math.max(0,a1.r) +o=Math.max(0,a1.z) +n=Math.max(0,a1.x) +m=Math.max(0,a1.f) +l=Math.max(0,a1.w) +k=Math.max(0,a1.Q) +j=Math.max(0,a1.y) +i=A.bhs(k,j,r,A.bhs(m,l,r,A.bhs(o,n,s,A.bhs(q,p,s,1)))) +a=c-i*k +h.hc(0,f,a) +h.dg(0,f,e+i*m) +h.jX(f,e,f+i*q,e,0.707106781) +h.dg(0,d-i*p,e) +h.jX(d,e,d,e+i*l,0.707106781) +h.dg(0,d,c-i*j) +h.jX(d,c,d-i*n,c,0.707106781) +h.dg(0,f+i*o,c) +h.jX(f,c,f,a,0.707106781) +h.L(0) +h.e=g?0:-1 +f=h.a +f.ax=g +f.ch=!1 +f.CW=6}}, +aNU(a,b,c){this.aNW(b,c.a,c.b,null,0)}, +aNW(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.Jy.a(b2) +s=b2.a +if(s.w===0)return +if(s.l(0,b1.a)){s=A.bnj() +r=b1.a +q=r.w +p=r.d +o=r.z +s.Q=!0 +s.cx=0 +s.OW() +s.Tb(p) +s.Tc(q) +s.Ta(o) +B.G.nr(s.r,0,r.r) +B.jF.nr(s.f,0,r.f) +n=r.y +if(n==null)s.y=null +else{m=s.y +m.toString +B.jF.nr(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.uT(s,B.dV) +l.Qq(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.Cj(0,n) +else{j=new A.uk(n) +j.wA(n) +i=new Float32Array(8) +for(s=b5==null,h=2*(k-1),g=h+1,r=k===0,f=!0;e=j.iE(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.B8() +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.dg(0,i[0],i[1])}else{a3=b1.a.lN(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.dg(0,i[2],i[3]) +break +case 2:m=i[2] +c=i[3] +a=i[4] +a0=i[5] +a3=b1.a.lN(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.jX(i[2],i[3],i[4],i[5],n.y[j.b]) +break +case 4:b1.uz(i[2],i[3],i[4],i[5],i[6],i[7]) +break +case 5:b1.L(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=a4.a +o=new A.aMo(p,r,q,new Float32Array(18)) +o.aNm() +n=B.fl===a4.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.buV(a4.a,!0) +j=new Float32Array(18) +i=A.a([],t.yv) +p=k.a +h=!1 +do{g=i.length +switch(k.iE(0,j)){case 0:case 5:break +case 1:A.bXL(j,r,q,i) +break +case 2:A.bXM(j,r,q,i) +break +case 3:f=k.f +A.bXJ(j,r,q,p.y[f],i) +break +case 4:A.bXK(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.000244140625)B.b.iF(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=a2}else f=a2 +if(f){a3=B.b.iF(i,e) +if(a!==i.length)i[a]=a3 +break}}}}while(!h) +return i.length!==0}, +ep(a){var s,r=a.a,q=a.b,p=this.a,o=A.bLT(p,r,q),n=p.e,m=new Uint8Array(n) +B.G.nr(m,0,p.r) +o=new A.CM(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.jF.nr(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.bs(0,r,q) +n=p.b +o.b=n==null?null:n.bs(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.uT(o,B.dV) +r.Qq(this) +return r}, +ko(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.ko(0) +if(!e1.Q&&e1.b!=null){e1=e1.b +e1.toString +return e1}r=new A.uk(e1) +r.wA(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.aXI(),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.aNi() +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.asz() +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.qG() +c1=a4-a +c2=s*(a2-a) +if(c0.rw(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.rw(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.at_() +b=c+1 +c7=q[c] +a0=b+1 +c8=q[b] +b=a0+1 +c9=q[a0] +a0=b+1 +d0=q[b] +b=a0+1 +d1=q[a0] +a0=b+1 +d2=q[b] +d3=q[a0] +d4=q[a0+1] +s=Math.min(c7,d3) +g.a=s +g.c=Math.min(c8,d4) +a6=Math.max(c7,d3) +g.b=a6 +g.d=Math.max(c8,d4) +if(!(c7c9&&c9>d1&&d1>d3 +else a7=!0 +if(!a7){a7=-c7 +d5=a7+3*(c9-d1)+d3 +d6=2*(c7-2*c9+d1) +d7=d6*d6-4*d5*(a7+c9) +if(d7>=0&&Math.abs(d5)>0.000244140625){a7=-d6 +a8=2*d5 +if(d7===0){d8=a7/a8 +b1=1-d8 +if(d8>=0&&d8<=1){a7=3*b1 +b4=b1*b1*b1*c7+a7*b1*d8*c9+a7*d8*d8*d1+d8*d8*d8*d3 +g.a=Math.min(b4,s) +g.b=Math.max(b4,a6)}}else{d7=Math.sqrt(d7) +d8=(a7-d7)/a8 +b1=1-d8 +if(d8>=0&&d8<=1){s=3*b1 +b4=b1*b1*b1*c7+s*b1*d8*c9+s*d8*d8*d1+d8*d8*d8*d3 +g.a=Math.min(b4,g.a) +g.b=Math.max(b4,g.b)}d8=(a7+d7)/a8 +b1=1-d8 +if(d8>=0&&d8<=1){s=3*b1 +b4=b1*b1*b1*c7+s*b1*d8*c9+s*d8*d8*d1+d8*d8*d8*d3 +g.a=Math.min(b4,g.a) +g.b=Math.max(b4,g.b)}}}}if(!(c8d0&&d0>d2&&d2>d4 +else s=!0 +if(!s){s=-c8 +d5=s+3*(d0-d2)+d4 +d6=2*(c8-2*d0+d2) +d7=d6*d6-4*d5*(s+d0) +if(d7>=0&&Math.abs(d5)>0.000244140625){s=-d6 +a6=2*d5 +if(d7===0){d8=s/a6 +b1=1-d8 +if(d8>=0&&d8<=1){s=3*b1 +b5=b1*b1*b1*c8+s*b1*d8*d0+s*d8*d8*d2+d8*d8*d8*d4 +g.c=Math.min(b5,g.c) +g.d=Math.max(b5,g.d)}}else{d7=Math.sqrt(d7) +d8=(s-d7)/a6 +b1=1-d8 +if(d8>=0&&d8<=1){a7=3*b1 +b5=b1*b1*b1*c8+a7*b1*d8*d0+a7*d8*d8*d2+d8*d8*d8*d4 +g.c=Math.min(b5,g.c) +g.d=Math.max(b5,g.d)}s=(s+d7)/a6 +b7=1-s +if(s>=0&&s<=1){a6=3*b7 +b5=b7*b7*b7*c8+a6*b7*s*d0+a6*s*s*d2+s*s*s*d4 +g.c=Math.min(b5,g.c) +g.d=Math.max(b5,g.d)}}}}k=g.a +i=g.c +j=g.b +h=g.d +break}if(!p){l=h +m=j +n=i +o=k +p=!0}else{o=Math.min(o,k) +m=Math.max(m,j) +n=Math.min(n,i) +l=Math.max(l,h)}}d9=p?new A.I(o,n,m,l):B.ar +e0.a.ko(0) +return e0.a.b=d9}, +ga_(a){return 0===this.a.w}, +j(a){return this.dQ(0)}, +$iM_:1} +A.aMm.prototype={ +PM(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}}, +GW(){var s,r,q=this +if(q.e===1){q.e=2 +return new A.z(q.x,q.y)}s=q.a.f +r=q.Q +return new A.z(s[r-2],s[r-1])}, +iE(a,b){var s,r,q,p,o,n,m=this,l=m.z,k=m.a +if(l===k.w){if(m.d&&m.e===2){if(1===m.PM(b))return 1 +m.d=!1 +return 5}return 6}s=m.z=l+1 +r=k.r[l] +switch(r){case 0:if(m.d){m.z=s-1 +q=m.PM(b) +if(q===5)m.d=!1 +return q}if(s===m.c)return 6 +l=k.f +k=m.Q +s=m.Q=k+1 +p=l[k] +m.Q=s+1 +o=l[s] +m.x=p +m.y=o +b[0]=p +b[1]=o +m.e=1 +m.r=p +m.w=o +m.d=!0 +break +case 1:n=m.GW() +l=k.f +k=m.Q +s=m.Q=k+1 +p=l[k] +m.Q=s+1 +o=l[s] +b[0]=n.a +b[1]=n.b +b[2]=p +b[3]=o +m.r=p +m.w=o +break +case 3:++m.f +n=m.GW() +b[0]=n.a +b[1]=n.b +l=k.f +k=m.Q +s=m.Q=k+1 +b[2]=l[k] +k=m.Q=s+1 +b[3]=l[s] +s=m.Q=k+1 +k=l[k] +b[4]=k +m.r=k +m.Q=s+1 +s=l[s] +b[5]=s +m.w=s +break +case 2:n=m.GW() +b[0]=n.a +b[1]=n.b +l=k.f +k=m.Q +s=m.Q=k+1 +b[2]=l[k] +k=m.Q=s+1 +b[3]=l[s] +s=m.Q=k+1 +k=l[k] +b[4]=k +m.r=k +m.Q=s+1 +s=l[s] +b[5]=s +m.w=s +break +case 4:n=m.GW() +b[0]=n.a +b[1]=n.b +l=k.f +k=m.Q +s=m.Q=k+1 +b[2]=l[k] +k=m.Q=s+1 +b[3]=l[s] +s=m.Q=k+1 +b[4]=l[k] +k=m.Q=s+1 +b[5]=l[s] +s=m.Q=k+1 +k=l[k] +b[6]=k +m.r=k +m.Q=s+1 +s=l[s] +b[7]=s +m.w=s +break +case 5:r=m.PM(b) +if(r===1)--m.z +else{m.d=!1 +m.e=0}m.r=m.x +m.w=m.y +break +case 6:break +default:throw A.d(A.bL("Unsupport Path verb "+r,null,null))}return r}} +A.CM.prototype={ +jI(a,b,c){var s=a*2,r=this.f +r[s]=b +r[s+1]=c}, +lr(a){var s=this.f,r=a*2 +return new A.z(s[r],s[r+1])}, +Z6(){var s=this +if(s.ay)return new A.I(s.lr(0).a,s.lr(0).b,s.lr(1).a,s.lr(2).b) +else return s.w===4?s.avA():null}, +ko(a){var s +if(this.Q)this.Qg() +s=this.a +s.toString +return s}, +avA(){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.lr(0).a,h=k.lr(0).b,g=k.lr(1).a,f=k.lr(1).b +if(k.r[1]!==1||f!==h)return j +s=g-i +r=k.lr(2).a +q=k.lr(2).b +if(k.r[2]!==1||r!==g)return j +p=q-f +o=k.lr(3) +n=k.lr(3).b +if(k.r[3]!==1||n!==q)return j +if(r-o.a!==s||n-h!==p)return j +m=Math.min(i,g) +l=Math.min(h,q) +return new A.I(m,l,m+Math.abs(s),l+Math.abs(p))}, +ajI(){var s,r,q,p,o +if(this.w===2){s=this.r +s=s[0]!==0||s[1]!==1}else s=!0 +if(s)return null +s=this.f +r=s[0] +q=s[1] +p=s[2] +o=s[3] +if(q===o||r===p)return new A.I(r,q,p,o) +return null}, +a3R(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this.ko(0),f=A.a([],t.kG),e=new A.uk(this) +e.wA(this) +s=new Float32Array(8) +e.iE(0,s) +for(r=0;q=e.iE(0,s),q!==6;)if(3===q){p=s[2] +o=s[3] +n=p-s[0] +m=o-s[1] +l=s[4] +k=s[5] +if(n!==0){j=Math.abs(n) +i=Math.abs(k-o)}else{i=Math.abs(m) +j=m!==0?Math.abs(l-p):Math.abs(n)}f.push(new A.bg(j,i));++r}l=f[0] +k=f[1] +h=f[2] +return A.a6q(g,f[3],h,l,k)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.CM&&this.aSZ(b)}, +gB(a){var s=this +return A.a4(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)}, +aSZ(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.jF.nr(r,0,q.f) +q.f=r}q.d=a}, +Tc(a){var s,r,q=this +if(a>q.e){s=a+8 +q.e=s +r=new Uint8Array(s) +B.G.nr(r,0,q.r) +q.r=r}q.w=a}, +Ta(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.jF.nr(r,0,s) +q.y=r}q.z=a}, +Cj(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h=b.d,g=i.d+h +i.OW() +i.Tb(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.Tc(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.aRN.prototype={ +ad2(a){return(this.a*a+this.c)*a+this.e}, +ad3(a){return(this.b*a+this.d)*a+this.f}} +A.aMo.prototype={ +aNm(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=e.a,c=A.buV(d,!0) +for(s=e.f,r=t.td;q=c.iE(0,s),q!==6;)switch(q){case 0:case 5:break +case 1:e.auB() +break +case 2:p=!A.buX(s)?A.bLV(s):0 +o=e.a1W(s[0],s[1],s[2],s[3],s[4],s[5]) +if(p>0)o+=e.a1W(s[4],s[5],s[6],s[7],s[8],s[9]) +e.d+=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.buX(s) +f=A.a([],r) +new A.jZ(m,l,k,j,i,h,n).aPq(f) +e.a1V(f[0]) +if(!g&&f.length===2)e.a1V(f[1]) +break +case 4:e.auu() +break}}, +auB(){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.aMp(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.bN_(o)===q)q=0 +n.d+=q}, +a1W(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.aMp(o,p,a,b,e,f)){++k.e +return 0}if(p===s)return 0 +n=new A.qG() +if(0===n.rw(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.aMp(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.qG() +if(0===l.rw(g+(h-2*m),2*(m-h),h-p))k=q===1?a.a:a.e +else{j=l.a +j.toString +k=A.bGo(a.a,a.c,a.e,n,j)/A.bGn(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.aMp(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.bzu(f,a0,m) +if(i==null)return +h=A.bzO(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<$.rK.length;++m){l=$.rK[m] +$.dz() +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=a.dy +g=self.window.devicePixelRatio +if(l.r>=B.d.dZ(s*(g===0?1:g))+2){g=self.window.devicePixelRatio +f=l.w>=B.d.dZ(r*(g===0?1:g))+2&&l.ay===h}else f=!1 +e=i4)){if(j===a1&&k===a3){o=l +break}n=i +o=l}}if(o!=null){B.b.C($.rK,o) +o.spl(0,a4) +o.b=a.fx +return o}p=a.cy.b.d +k=a.dy +j=A.cm(self.document,"flt-canvas") +h=A.a([],t.yY) +$.dz() +g=self.window.devicePixelRatio +if(g===0)g=1 +d=A.aqE(a1) +c=A.aqD(a3) +a3=new A.arW(A.aqE(a1),A.aqD(a3),k,A.a([],t.vj),A.iv()) +b=new A.ps(a4,j,a3,h,d,c,g,k,p) +A.N(j.style,"position","absolute") +b.z=B.d.dv(a0)-1 +b.Q=B.d.dv(a2)-1 +b.a9z() +a3.z=j +b.a7Y() +b.b=a.fx +return b}, +a0Q(){A.N(this.d.style,"transform","translate("+A.c(this.CW)+"px, "+A.c(this.cx)+"px)")}, +hz(){this.a0Q() +this.GG(null)}, +cL(){this.Qi(null) +this.fr=!0 +this.a_A()}, +cg(a,b){var s,r,q=this +q.a_E(0,b) +q.fx=b.fx +if(b!==q)b.fx=null +if(q.CW!==b.CW||q.cx!==b.cx)q.a0Q() +q.Qi(b) +if(q.cy===b.cy){s=q.ch +r=s instanceof A.ps&&q.dy!==s.ay +if(q.fr||r)q.GG(b) +else q.ch=b.ch}else q.GG(b)}, +op(){var s=this +s.a_D() +s.Qi(s) +if(s.fr)s.GG(s)}, +m8(){A.aor(this.ch) +this.ch=null +this.a_B()}} +A.aMx.prototype={ +$0(){var s,r=this.a,q=r.fy +q.toString +s=r.ch=r.axC(q) +s.b=r.fx +q=r.d +q.toString +A.bpH(q) +r.d.append(s.c) +s.V(0) +q=r.cy.b +q.toString +r=r.fy +r.toString +q.UH(s,r) +s.ys()}, +$S:0} +A.aNP.prototype={ +UH(a,b){var s,r,q,p,o,n,m,l,k,j +try{m=this.b +m.toString +m=A.bAG(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.gY(s) instanceof A.LY)s.pop() +else s.push(B.Th);--q.r}, +Y5(a){var s +while(!0){s=this.r +if(!(a1))break +this.el(0)}}, +pp(a,b){var s=new A.a5v(a,b) +switch(b.a){case 1:this.a.pp(a,s) +break +case 0:break}this.d.c=!0 +this.c.push(s)}, +ey(a,b){var s,r,q=this,p=b.a +if(p.w!=null)q.d.c=!0 +q.e=!0 +s=A.zK(b) +b.e=!0 +r=new A.a5F(a,p) +p=q.a +if(s!==0)p.qh(a.eA(s),r) +else p.qh(a,r) +q.c.push(r)}, +dk(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.zK(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.e=!0 +l=new A.a5E(a,j) +k.a.tj(p-s,m-s,q+s,n+s,l) +k.c.push(l)}, +Db(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.I(b1.a,b1.b,b1.c,b1.d),a5=b0.a,a6=b0.b,a7=b0.c,a8=b0.d,a9=new A.I(a5,a6,a7,a8) +if(a9.l(0,a4)||!a9.hG(a4).l(0,a4))return +s=b0.w8() +r=b1.w8() +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.zK(b2) +b2.e=!0 +a0=new A.a5x(b0,b1,b2.a) +q=$.ap().cR() +q.sDp(B.fl) +q.hk(b0) +q.hk(b1) +q.L(0) +a0.x=q +a1=Math.min(a5,a7) +a2=Math.max(a5,a7) +a3.a.tj(a1-a,Math.min(a6,a8)-a,a2+a,Math.max(a6,a8)+a,a0) +a3.c.push(a0)}, +eJ(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.Jy.a(a) +s=a.a.Z6() +if(s!=null){b.ey(s,a0) +return}r=a.a +q=r.ax?r.a3R():null +if(q!=null){b.dk(q,a0) +return}p=a.a.ajI() +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.sd0(0,B.cm) +b.ey(new A.I(n,k,n+g,k+h),a0) +return}}t.Jy.a(a) +if(a.a.w!==0){b.e=b.d.c=!0 +f=a.ko(0) +e=A.zK(a0) +if(e!==0)f=f.eA(e) +r=a.a +o=new A.CM(r.f,r.r) +o.e=r.e +o.w=r.w +o.c=r.c +o.d=r.d +o.x=r.x +o.z=r.z +o.y=r.y +m=r.Q +o.Q=m +if(!m){o.a=r.a +o.b=r.b +o.as=r.as}o.cx=r.cx +o.at=r.at +o.ax=r.ax +o.ay=r.ay +o.ch=r.ch +o.CW=r.CW +d=new A.uT(o,B.dV) +d.Qq(a) +a0.e=!0 +c=new A.a5D(d,a0.a) +b.a.qh(f,c) +d.b=a.b +b.c.push(c)}}, +yo(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.ho.tk(s.a,r.a) +s.b=B.ho.tk(s.b,r.b) +s.c=B.ho.tk(s.c,r.c) +q.en(0) +B.b.G(q.c,p.c) +q.el(0) +p=p.b +if(p!=null)q.a.ajN(p)}, +rg(a,b){var s,r,q,p,o=this +t.Ak.a(a) +if(!a.e)return +o.e=!0 +s=o.d +s.c=!0 +s.b=!0 +r=new A.a5C(a,b) +q=a.geF().z +s=b.a +p=b.b +o.a.tj(s+q.a,p+q.b,s+q.c,p+q.d,r) +o.c.push(r)}, +az9(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.LY.prototype={ +hl(a){a.en(0)}, +j(a){return this.dQ(0)}} +A.a5I.prototype={ +hl(a){a.el(0)}, +j(a){return this.dQ(0)}} +A.a5M.prototype={ +hl(a){a.bs(0,this.a,this.b)}, +j(a){return this.dQ(0)}} +A.a5K.prototype={ +hl(a){a.i2(0,this.a,this.b)}, +j(a){return this.dQ(0)}} +A.a5J.prototype={ +hl(a){a.rY(0,this.a)}, +j(a){return this.dQ(0)}} +A.a5L.prototype={ +hl(a){a.al(0,this.a)}, +j(a){return this.dQ(0)}} +A.a5v.prototype={ +hl(a){a.pp(this.f,this.r)}, +j(a){return this.dQ(0)}} +A.a5u.prototype={ +hl(a){a.uv(this.f)}, +j(a){return this.dQ(0)}} +A.a5t.prototype={ +hl(a){a.mZ(0,this.f)}, +j(a){return this.dQ(0)}} +A.a5z.prototype={ +hl(a){a.k0(this.f,this.r,this.w)}, +j(a){return this.dQ(0)}} +A.a5B.prototype={ +hl(a){a.Dd(this.f)}, +j(a){return this.dQ(0)}} +A.a5H.prototype={ +hl(a){a.KR(this.f,this.r,this.w)}, +j(a){return this.dQ(0)}} +A.a5F.prototype={ +hl(a){a.ey(this.f,this.r)}, +j(a){return this.dQ(0)}} +A.a5E.prototype={ +hl(a){a.dk(this.f,this.r)}, +j(a){return this.dQ(0)}} +A.a5x.prototype={ +hl(a){var s=this.w +if(s.b==null)s.b=B.cm +a.eJ(this.x,s)}, +j(a){return this.dQ(0)}} +A.a5A.prototype={ +hl(a){a.Dc(this.f,this.r)}, +j(a){return this.dQ(0)}} +A.a5w.prototype={ +hl(a){a.k_(this.f,this.r,this.w)}, +j(a){return this.dQ(0)}} +A.a5D.prototype={ +hl(a){a.eJ(this.f,this.r)}, +j(a){return this.dQ(0)}} +A.a5G.prototype={ +hl(a){var s=this +a.yp(s.f,s.r,s.w,s.x)}, +j(a){return this.dQ(0)}} +A.a5y.prototype={ +hl(a){var s=this +a.rf(s.f,s.r,s.w,s.x)}, +j(a){return this.dQ(0)}} +A.a5C.prototype={ +hl(a){a.rg(this.f,this.r)}, +j(a){return this.dQ(0)}} +A.bax.prototype={ +pp(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=$.bks() +s[0]=n +s[1]=m +s[2]=l +s[3]=k +A.bka(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}}, +aiR(){var s=this +if(!s.z)return null +else return new A.I(s.Q,s.as,s.at,s.ax)}, +qh(a,b){this.tj(a.a,a.b,a.c,a.d,b)}, +tj(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=$.bks() +s[0]=a +s[1]=b +s[2]=c +s[3]=d +A.bka(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}, +ajN(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=$.bks() +s[0]=m +s[1]=l +s[2]=k +s[3]=j +A.bka(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}, +Ov(){var s=this,r=s.y,q=new A.dc(new Float32Array(16)) +q.c5(r) +s.r.push(q) +r=s.z?new A.I(s.Q,s.as,s.at,s.ax):null +s.w.push(r)}, +aPL(){var s,r,q,p,o,n,m,l,k,j,i=this +if(!i.b)return B.ar +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(lc1||b7>c2)return +if(b8-b6$.bmm||r>$.bml){k=$.aAO +if(k!=null){h=k.a.getExtension("WEBGL_lose_context") +if(h!=null)h.loseContext()}$.bmn=$.aAO=null +$.bmm=Math.max($.bmm,s) +$.bml=Math.max($.bml,s)}k=$.bmn +if(k==null)k=$.bmn=A.aKK(s,r) +g=$.aAO +k=g==null?$.aAO=A.bmo(k):g +k.fr=s +k.fx=r +f=k.JT(l,i) +g=k.a +e=f.a +A.bi(g,"useProgram",[e]) +d=k.O7(e,"position") +A.bAQ(k,f,q,p,s,r,c3) +c=!o +if(c){b=m.e +a=B.e.fO(1,b.geu(b).Yc(0)) +b=B.e.fO(1,b.gbA(b).Yc(0)) +A.bi(g,"uniform4f",[k.kp(0,e,"u_textransform"),a,b,0,0])}b=g.createBuffer() +b.toString +a0=null +if(c)if(n){a0=g.createVertexArray() +a0.toString +A.bi(g,"bindVertexArray",[a0])}A.bi(g,a9,[d]) +A.bi(g,b0,[k.glG(),b]) +A.bzs(k,b4,1) +A.bi(g,b1,[d,2,k.gX0(),!1,0,0]) +a1=b4.length/2|0 +if(o){a2=g.createBuffer() +A.bi(g,b0,[k.glG(),a2]) +a3=new Uint32Array(a1) +for(o=c6.r,a4=0;a41;)s.pop() +t.IF.a(B.b.gW(s)).vx(new A.aN1())}, +$S:0} +A.aTa.prototype={ +$0(){var s,r,q=t.IF,p=this.a.a +if($.aT8==null)q.a(B.b.gW(p)).cL() +else{s=q.a(B.b.gW(p)) +r=$.aT8 +r.toString +s.cg(0,r)}A.bV2(q.a(B.b.gW(p))) +$.aT8=q.a(B.b.gW(p)) +return new A.DP(q.a(B.b.gW(p)).d,this.b)}, +$S:467} +A.wF.prototype={ +CN(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=this,a7="bindBuffer",a8="texParameteri",a9=a6.a,b0=a6.b +if(a9!==B.ch&&b0!==B.ch){s=a6.aIY(a6.e,a9,b0) +s.toString +r=a9===B.k9||a9===B.ka +q=b0===B.k9||b0===B.ka +if(r)a6=q?"repeat":"repeat-x" +else a6=q?"repeat-y":"no-repeat" +s=b1.createPattern(A.kZ(s),a6) +s.toString +return s}else{if($.lq==null)$.lq=new A.zG() +b2.toString +$.ja.toString +s=$.dz() +p=s.d +if(p==null){o=self.window.devicePixelRatio +p=o===0?1:o}o=b2.a +n=B.d.dZ((b2.c-o)*p) +m=b2.b +l=B.d.dZ((b2.d-m)*p) +k=$.hV +j=(k==null?$.hV=A.rG():k)===2 +i=A.bwX() +h=A.btd(j,a9,b0) +g=A.bmo(A.aKK(n,l)) +g.fr=n +g.fx=l +f=g.JT(i,h) +k=g.a +e=f.a +A.bi(k,"useProgram",[e]) +d=new Float32Array(12) +c=b2.bs(0,-o,-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.O7(e,"position") +A.bAQ(g,f,0,0,n,l,new A.dc(a6.c)) +a6.f=o!==0||m!==0 +b=a6.e +a=B.e.fO(1,b.geu(b).Yc(0)) +a0=B.e.fO(1,b.gbA(b).Yc(0)) +A.bi(k,"uniform4f",[g.kp(0,e,"u_textransform"),a,a0,o,m]) +m=k.createBuffer() +m.toString +if(j){a3=k.createVertexArray() +a3.toString +A.bi(k,"bindVertexArray",[a3])}else a3=null +A.bi(k,"enableVertexAttribArray",[a2]) +A.bi(k,a7,[g.glG(),m]) +$.ja.toString +s=s.d +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}A.bzs(g,d,s) +A.bi(k,"vertexAttribPointer",[a2,2,g.gX0(),!1,0,0]) +a4=k.createTexture() +k.activeTexture(g.gaeQ()) +A.bi(k,"bindTexture",[g.gjx(),a4]) +g.agY(0,g.gjx(),0,g.gLU(),g.gLU(),g.gLX(),b.gLH()) +if(j){A.bi(k,a8,[g.gjx(),g.gLV(),A.bk7(g,a9)]) +A.bi(k,a8,[g.gjx(),g.gLW(),A.bk7(g,b0)]) +A.bi(k,"generateMipmap",[g.gjx()])}else{A.bi(k,a8,[g.gjx(),g.gLV(),g.gyX()]) +A.bi(k,a8,[g.gjx(),g.gLW(),g.gyX()]) +A.bi(k,a8,[g.gjx(),g.gaeR(),g.gaeP()])}A.bi(k,"clear",[g.gX_()]) +g.acT(6,B.tQ) +if(a3!=null)k.bindVertexArray(null) +a5=g.aga(!1) +A.bi(k,a7,[g.glG(),null]) +A.bi(k,a7,[g.gvk(),null]) +a5.toString +s=b1.createPattern(A.kZ(a5),"no-repeat") +s.toString +return s}}, +aIY(a,a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=a0===B.ka?2:1,b=a1===B.ka?2:1 +if(c===1&&b===1)return a.gLH() +s=a.geu(a) +r=a.gbA(a) +q=s.ap(0,c) +p=r.ap(0,b) +o=A.aKK(q,p) +n=o.a +if(n!=null)n=A.bsE(n,"2d",null) +else{n=o.b +n.toString +n=A.pG(n,"2d",null)}n.toString +for(m=0;m>>24&255)<1}, +$S:556} +A.aRt.prototype={ +abe(a,b){var s,r=this.a +if(r==null)this.a=A.aKK(a,b) +else if(a!==r.c&&b!==r.d){r.c=a +r.d=b +s=r.a +if(s!=null){A.bHT(s,a) +r=r.a +r.toString +A.bHS(r,b)}else{s=r.b +if(s!=null){A.II(s,a) +s=r.b +s.toString +A.IH(s,b) +s=r.b +s.toString +r.a97(s)}}}r=this.a +r.toString +return A.bmo(r)}} +A.B9.prototype={ +j(a){return"Gradient()"}, +$iDs:1} +A.a0H.prototype={ +CN(a,b,c){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.f +if(h===B.ch||h===B.fC){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.ahd(0,n-l,p-k) +p=s.b +n=s.c +s.ahd(0,m-l,o-k) +j=a.createLinearGradient(p+l-r,n+k-q,s.b+l-r,s.c+k-q)}else j=a.createLinearGradient(n-r,p-q,m-r,o-q) +A.byg(j,i.d,i.e,h===B.fC) +return j}else{h=a.createPattern(A.kZ(i.CM(b,c,!1)),"no-repeat") +h.toString +return h}}, +CM(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.d.dZ(b7) +r=b9.d +q=b9.b +r-=q +p=B.d.dZ(r) +if($.lq==null)$.lq=new A.zG() +o=$.ap1().abe(s,p) +o.fr=s +o.fx=p +n=A.buF(b4.d,b4.e) +m=A.bo6() +l=b4.f +k=$.hV +j=A.a89(k==null?$.hV=A.rG():k) +j.e=1 +j.qX(11,"v_color") +j.hy(9,b5) +j.hy(14,b6) +i=j.gv6() +k=A.a([],t.s) +h=new A.oQ("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.bp7(j,h,n,l)+" * scale + bias;") +g=o.JT(m,j.cL()) +m=o.a +k=g.a +A.bi(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.ch +a5=a4?b7/2:(e+c)/2-b8 +a6=a4?r/2:(d+b)/2-q +a7=A.iv() +a7.A0(-a5,-a6,0) +a8=A.iv() +a9=a8.a +a9[0]=a3 +a9[1]=a2 +a9[4]=-a2 +a9[5]=a3 +b0=A.iv() +b0.b0y(0,0.5) +if(a1>11920929e-14)b0.bK(0,1/a1) +b7=b4.r +if(b7!=null){b1=new A.dc(new Float32Array(16)) +b1.hn(new A.dc(b7.a)) +b2=b9.gbq() +b7=b2.a +b8=b2.b +b0.bs(0,-b7,-b8) +b0.e7(0,b1) +b0.bs(0,b7,b8)}b0.e7(0,a8) +b0.e7(0,a7) +n.ZH(o,g) +A.bi(m,"uniformMatrix4fv",[o.kp(0,k,b6),!1,b0.a]) +A.bi(m,"uniform2f",[o.kp(0,k,b5),s,p]) +b3=new A.aAT(c1,b9,o,g,n,s,p).$0() +$.ap1() +return b3}} +A.aAT.prototype={ +$0(){var s=this,r=$.lq,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.acS(new A.I(0,0,0+(k-j),0+(i-q)),p,o,n,m,l) +else{r=r.acQ(new A.I(0,0,0+(k-j),0+(i-q)),p,o,n,m,l) +r.toString +return r}}, +$S:300} +A.Bv.prototype={ +CN(a,b,c){var s,r=this +if(r.r==null){s=r.f +s=s===B.ch||s===B.fC}else s=!1 +if(s)return r.a2b(a,b,c) +else{s=a.createPattern(A.kZ(r.CM(b,c,!1)),"no-repeat") +s.toString +return s}}, +a2b(a,b,c){var s=this,r=s.b,q=r.a-b.a,p=r.b-b.b +r=A.bi(a,"createRadialGradient",[q,p,0,q,p,s.c]) +A.byg(r,s.d,s.e,s.f===B.fC) +return r}, +CM(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.d.dZ(c) +r=a.d +q=a.b +r-=q +p=B.d.dZ(r) +if($.lq==null)$.lq=new A.zG() +o=$.ap1().abe(s,p) +o.fr=s +o.fx=p +n=A.buF(d.d,d.e) +m=o.JT(A.bo6(),d.Qv(n,a,d.f)) +l=o.a +k=m.a +A.bi(l,"useProgram",[k]) +j=d.b +i=j.a +j=j.b +A.bi(l,"uniform2f",[o.kp(0,k,"u_tile_offset"),2*(c*((i-b)/c-0.5)),2*(r*(0.5-(j-q)/r))]) +A.bi(l,"uniform1f",[o.kp(0,k,"u_radius"),d.c]) +n.ZH(o,m) +h=o.kp(0,k,"m_gradient") +g=A.iv() +c=d.r +if(c!=null){f=new A.dc(new Float32Array(16)) +f.hn(new A.dc(c)) +g.bs(0,-i,-j) +g.e7(0,f) +g.bs(0,i,j)}A.bi(l,"uniformMatrix4fv",[h,!1,g.a]) +e=new A.aAU(a1,a,o,m,n,s,p).$0() +$.ap1() +return e}, +Qv(a,b,c){var s,r,q=$.hV,p=A.a89(q==null?$.hV=A.rG():q) +p.e=1 +p.qX(11,"v_color") +p.hy(9,"u_resolution") +p.hy(9,"u_tile_offset") +p.hy(2,"u_radius") +p.hy(14,"m_gradient") +s=p.gv6() +q=A.a([],t.s) +r=new A.oQ("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.bp7(p,r,a,c)+" * scale + bias;") +return p.cL()}} +A.aAU.prototype={ +$0(){var s=this,r=$.lq,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.acS(new A.I(0,0,0+(k-j),0+(i-q)),p,o,n,m,l) +else{r=r.acQ(new A.I(0,0,0+(k-j),0+(i-q)),p,o,n,m,l) +r.toString +return r}}, +$S:300} +A.a0G.prototype={ +CN(a,b,c){var s=this,r=s.f +if((r===B.ch||r===B.fC)&&s.y===0&&s.x.l(0,B.j))return s.a2b(a,b,c) +else{if($.lq==null)$.lq=new A.zG() +r=a.createPattern(A.kZ(s.CM(b,c,!1)),"no-repeat") +r.toString +return r}}, +Qv(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.amw(a,b,c) +Math.sqrt(j) +n=$.hV +s=A.a89(n==null?$.hV=A.rG():n) +s.e=1 +s.qX(11,"v_color") +s.hy(9,"u_resolution") +s.hy(9,"u_tile_offset") +s.hy(2,"u_radius") +s.hy(14,"m_gradient") +r=s.gv6() +n=A.a([],t.s) +q=new A.oQ("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.d.ah8(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.ch)n.push("if (st < 0.0) { st = -1.0; }") +n.push(r.a+" = "+A.bp7(s,q,a,c)+" * scale + bias;") +return s.cL()}} +A.oc.prototype={ +gLh(){return""}} +A.Q6.prototype={ +gLh(){return"blur("+A.c((this.a+this.b)*0.5)+"px)"}, +l(a,b){var s=this +if(b==null)return!1 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.Q6&&b.c===s.c&&b.a===s.a&&b.b===s.b}, +gB(a){return A.a4(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"ImageFilter.blur("+A.c(this.a)+", "+A.c(this.b)+", "+A.bXT(this.c)+")"}} +A.S8.prototype={ +gb0r(){return A.mr(this.a)}, +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.S8&&b.b===this.b&&A.Vy(b.a,this.a)}, +gB(a){return A.a4(A.cj(this.a),this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"ImageFilter.matrix("+A.c(this.a)+", "+this.b.j(0)+")"}} +A.a_Q.prototype={$ioc:1} +A.Cc.prototype={ +Xa(a){var s,r,q,p=this,o=p.c +switch(o.a){case 0:case 8:case 7:A.N(a.style,"visibility","hidden") +return null +case 2:case 6:return null +case 1:case 3:o=p.c=B.iv +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.bAV(s,o) +o=r.b +$.qM.a3M().append(o) +p.a=r.a +q=p.c +if(q===B.op||q===B.uB||q===B.oo)A.N(a.style,"background-color",A.eM(s.gk(s))) +return o}} +A.C8.prototype={ +Xa(a){var s=A.bAW(this.b),r=s.b +$.qM.a3M().append(r) +this.a=s.a +return r}} +A.a88.prototype={ +gv6(){var s=this.Q +if(s==null)s=this.Q=new A.yE(this.y?"gFragColor":"gl_FragColor",11,3) +return s}, +qX(a,b){var s=new A.yE(b,a,1) +this.b.push(s) +return s}, +hy(a,b){var s=new A.yE(b,a,2) +this.b.push(s) +return s}, +aam(a,b){var s=new A.yE(b,a,3) +this.b.push(s) +return s}, +aa7(a,b){var s,r,q=this,p="varying ",o=b.c +switch(o){case 0:q.as.a+="const " +break +case 1:s=q.as +if(q.y)r="in " +else r=q.z?p:"attribute " +s.a+=r +break +case 2:q.as.a+="uniform " +break +case 3:s=q.as +r=q.y?"out ":p +s.a+=r +break}s=q.as +r=s.a+=A.bNx(b.b)+" "+b.a +if(o===0)o=s.a=r+" = " +else o=r +s.a=o+";\n"}, +cL(){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){r=n.as +if(s===0)s="lowp" +else s=s===1?"mediump":"highp" +s="precision "+s+" float;\n" +r.a+=s}if(m&&n.Q!=null){m=n.Q +m.toString +n.aa7(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.dV(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)}}, +aEJ(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&&d.charCodeAt(0)<127&&d.charCodeAt(1)<127) +o=A.bRV(new A.aDe(g,d,a,p,q),t.S) +if(e.type!=="keydown")if(g.b){r=A.pH(e) +r.toString +r=r==="CapsLock" +n=r}else n=!1 +else n=!0 +if(g.b){r=A.pH(e) +r.toString +r=r==="CapsLock"}else r=!1 +if(r){g.a7k(B.F,new A.aDf(s,q,o),new A.aDg(g,q)) +m=B.dk}else if(n){r=g.f +if(r.h(0,q)!=null){l=e.repeat +if(l==null)l=f +if(l===!0)m=B.a2T +else{l=g.d +l.toString +k=r.h(0,q) +k.toString +l.$1(new A.k9(s,B.cy,q,k,f,!0)) +r.C(0,q) +m=B.dk}}else m=B.dk}else{if(g.f.h(0,q)==null){e.preventDefault() +return}m=B.cy}r=g.f +j=r.h(0,q) +i=f +switch(m.a){case 0:i=o.$0() +break +case 1:break +case 2:i=j +break}l=i==null +if(l)r.C(0,q) +else r.n(0,q,i) +$.bDF().az(0,new A.aDh(g,o,a,s)) +if(p)if(!l)g.aL6(q,o.$0(),s) +else{r=g.r.C(0,q) +if(r!=null)r.$0()}if(p)h=d +else h=f +d=j==null?o.$0():j +r=m===B.cy?f:h +if(g.d.$1(new A.k9(s,m,q,d,r,!1)))e.preventDefault()}, +k7(a){var s=this,r={},q=a.a +if(A.lJ(q)==null||A.pH(q)==null)return +r.a=!1 +s.d=new A.aDm(r,s) +try{s.aAl(a)}finally{if(!r.a)s.d.$1(B.a2S) +s.d=null}}, +IZ(a,b,c,d,e){var s,r=this,q=r.f,p=q.N(0,a),o=q.N(0,b),n=p||o,m=d===B.dk&&!n,l=d===B.cy&&n +if(m){r.a.$1(new A.k9(A.boT(e),B.dk,a,c,null,!0)) +q.n(0,a,c)}if(l&&p){s=q.h(0,a) +s.toString +r.a8n(e,a,s)}if(l&&o){q=q.h(0,b) +q.toString +r.a8n(e,b,q)}}, +a8n(a,b,c){this.a.$1(new A.k9(A.boT(a),B.cy,b,c,null,!0)) +this.f.C(0,b)}} +A.aDi.prototype={ +$1(a){var s=this +if(!s.a.a&&!s.b.e){s.c.$0() +s.b.a.$1(s.d.$0())}}, +$S:20} +A.aDj.prototype={ +$0(){this.a.a=!0}, +$S:0} +A.aDk.prototype={ +$0(){return new A.k9(new A.bj(this.a.a+2e6),B.cy,this.b,this.c,null,!0)}, +$S:206} +A.aDl.prototype={ +$0(){this.a.f.C(0,this.b)}, +$S:0} +A.aDe.prototype={ +$0(){var s,r,q,p,o,n=this,m=n.b,l=B.agz.h(0,m) +if(l!=null)return l +s=n.c.a +if(B.IO.N(0,A.lJ(s))){m=A.lJ(s) +m.toString +m=B.IO.h(0,m) +r=m==null?null:m[B.d.aA(s.location)] +r.toString +return r}if(n.d){q=n.a.c.ajj(A.pH(s),A.lJ(s),B.d.aA(s.keyCode)) +if(q!=null)return q}if(m==="Dead"){m=s.altKey +p=s.ctrlKey +o=A.a_w(s) +s=s.metaKey +m=m?1073741824:0 +p=p?268435456:0 +o=o===!0?536870912:0 +s=s?2147483648:0 +return n.e+(m+p+o+s)+98784247808}return B.c.gB(m)+98784247808}, +$S:66} +A.aDf.prototype={ +$0(){return new A.k9(this.a,B.cy,this.b,this.c.$0(),null,!0)}, +$S:206} +A.aDg.prototype={ +$0(){this.a.f.C(0,this.b)}, +$S:0} +A.aDh.prototype={ +$2(a,b){var s,r,q=this +if(J.e(q.b.$0(),a))return +s=q.a +r=s.f +if(r.hO(0,a)&&!b.$1(q.c))r.vF(r,new A.aDd(s,a,q.d))}, +$S:706} +A.aDd.prototype={ +$2(a,b){var s=this.b +if(b!==s)return!1 +this.a.d.$1(new A.k9(this.c,B.cy,a,s,null,!0)) +return!0}, +$S:838} +A.aDm.prototype={ +$1(a){this.a.a=!0 +return this.b.a.$1(a)}, +$S:184} +A.asO.prototype={ +lu(a){if(!this.b)return +this.b=!1 +A.eg(this.a,"contextmenu",$.bkA(),null)}, +aSI(a){if(this.b)return +this.b=!0 +A.hA(this.a,"contextmenu",$.bkA(),null)}} +A.aIU.prototype={} +A.bjR.prototype={ +$1(a){a.preventDefault()}, +$S:5} +A.aqO.prototype={ +gaMu(){var s=this.a +s===$&&A.b() +return s}, +m(){var s=this +if(s.c||s.gt9()==null)return +s.c=!0 +s.aMv()}, +Dh(){var s=0,r=A.n(t.H),q=this +var $async$Dh=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=q.gt9()!=null?2:3 +break +case 2:s=4 +return A.f(q.or(),$async$Dh) +case 4:s=5 +return A.f(q.gt9().Fz(0,-1),$async$Dh) +case 5:case 3:return A.l(null,r)}}) +return A.m($async$Dh,r)}, +gpt(){var s=this.gt9() +s=s==null?null:s.ajx() +return s==null?"/":s}, +gad(){var s=this.gt9() +return s==null?null:s.Z9(0)}, +aMv(){return this.gaMu().$0()}} +A.Ls.prototype={ +aqS(a){var s,r=this,q=r.d +if(q==null)return +r.a=q.Uy(r.gXu(r)) +if(!r.S_(r.gad())){s=t.z +q.vH(0,A.C(["serialCount",0,"state",r.gad()],s,s),"flutter",r.gpt())}r.e=r.gQw()}, +gQw(){if(this.S_(this.gad())){var s=this.gad() +s.toString +return B.d.aA(A.d5(J.i(t.f.a(s),"serialCount")))}return 0}, +S_(a){return t.f.b(a)&&J.i(a,"serialCount")!=null}, +FX(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.C(["serialCount",r,"state",c],s,s) +a.toString +q.vH(0,s,"flutter",a)}else{r===$&&A.b();++r +this.e=r +s=A.C(["serialCount",r,"state",c],s,s) +a.toString +q.ag1(0,s,"flutter",a)}}}, +ZF(a){return this.FX(a,!1,null)}, +Xv(a,b){var s,r,q,p,o=this +if(!o.S_(b)){s=o.d +s.toString +r=o.e +r===$&&A.b() +q=t.z +s.vH(0,A.C(["serialCount",r+1,"state",b],q,q),"flutter",o.gpt())}o.e=o.gQw() +s=$.bC() +r=o.gpt() +t.Xw.a(b) +q=b==null?null:J.i(b,"state") +p=t.z +s.n8("flutter/navigation",B.c0.n2(new A.lT("pushRouteInformation",A.C(["location",r,"state",q],p,p))),new A.aJT())}, +or(){var s=0,r=A.n(t.H),q,p=this,o,n,m +var $async$or=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p.m() +if(p.b||p.d==null){s=1 +break}p.b=!0 +o=p.gQw() +s=o>0?3:4 +break +case 3:s=5 +return A.f(p.d.Fz(0,-o),$async$or) +case 5:case 4:n=p.gad() +n.toString +t.f.a(n) +m=p.d +m.toString +m.vH(0,J.i(n,"state"),"flutter",p.gpt()) +case 1:return A.l(q,r)}}) +return A.m($async$or,r)}, +gt9(){return this.d}} +A.aJT.prototype={ +$1(a){}, +$S:52} +A.NU.prototype={ +ar0(a){var s,r=this,q=r.d +if(q==null)return +r.a=q.Uy(r.gXu(r)) +s=r.gpt() +if(!A.bnH(A.bsB(self.window.history))){q.vH(0,A.C(["origin",!0,"state",r.gad()],t.N,t.z),"origin","") +r.aKi(q,s)}}, +FX(a,b,c){var s=this.d +if(s!=null)this.Tt(s,a,!0)}, +ZF(a){return this.FX(a,!1,null)}, +Xv(a,b){var s,r=this,q="flutter/navigation" +if(A.bvQ(b)){s=r.d +s.toString +r.aKh(s) +$.bC().n8(q,B.c0.n2(B.agQ),new A.aRK())}else if(A.bnH(b)){s=r.f +s.toString +r.f=null +$.bC().n8(q,B.c0.n2(new A.lT("pushRoute",s)),new A.aRL())}else{r.f=r.gpt() +r.d.Fz(0,-1)}}, +Tt(a,b,c){var s +if(b==null)b=this.gpt() +s=this.e +if(c)a.vH(0,s,"flutter",b) +else a.ag1(0,s,"flutter",b)}, +aKi(a,b){return this.Tt(a,b,!1)}, +aKh(a){return this.Tt(a,null,!1)}, +or(){var s=0,r=A.n(t.H),q,p=this,o,n +var $async$or=A.j(function(a,b){if(a===1)return A.k(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.f(o.Fz(0,-1),$async$or) +case 3:n=p.gad() +n.toString +o.vH(0,J.i(t.f.a(n),"state"),"flutter",p.gpt()) +case 1:return A.l(q,r)}}) +return A.m($async$or,r)}, +gt9(){return this.d}} +A.aRK.prototype={ +$1(a){}, +$S:52} +A.aRL.prototype={ +$1(a){}, +$S:52} +A.a0N.prototype={ +ga66(){var s,r=this,q=r.c +if(q===$){s=A.d6(r.gaFU()) +r.c!==$&&A.aH() +r.c=s +q=s}return q}, +aFV(a){var s,r,q,p=A.bsC(a) +p.toString +for(s=this.a,r=s.length,q=0;q")).bL(m)) +o=o.e +p.push(new A.aG(o,A.y(o).i("aG<1>")).bL(m))}q.push(r) +r.$1(s.a) +s=l.gUk() +r=self.document.body +if(r!=null)A.eg(r,"keydown",s.ga4q(),k) +r=self.document.body +if(r!=null)A.eg(r,"keyup",s.ga4r(),k) +r=self.document.body +if(r!=null)A.eg(r,"focusin",s.ga4k(),k) +r=self.document.body +if(r!=null)A.eg(r,"focusout",s.ga4l(),k) +r=s.a.d +s.e=new A.aG(r,A.y(r).i("aG<1>")).bL(s.gaCR()) +s=self.document.body +if(s!=null)s.prepend(l.b) +s=l.geB().e +l.a=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.ay0(l))}, +m(){var s,r,q,p=this,o=null +p.p2.removeListener(p.p3) +p.p3=null +s=p.k4 +if(s!=null)s.disconnect() +p.k4=null +s=p.k1 +if(s!=null)s.b.removeEventListener(s.a,s.c) +p.k1=null +s=$.bkk() +r=s.a +B.b.C(r,p.ga9n()) +if(r.length===0)s.b.removeListener(s.ga66()) +s=p.ga0L() +r=s.b +B.b.C(r,p.ga7M()) +if(r.length===0)s.fn() +s=p.gUk() +r=self.document.body +if(r!=null)A.hA(r,"keydown",s.ga4q(),o) +r=self.document.body +if(r!=null)A.hA(r,"keyup",s.ga4r(),o) +r=self.document.body +if(r!=null)A.hA(r,"focusin",s.ga4k(),o) +r=self.document.body +if(r!=null)A.hA(r,"focusout",s.ga4l(),o) +s=s.e +if(s!=null)s.S(0) +p.b.remove() +s=p.a +s===$&&A.b() +s.S(0) +s=p.geB() +r=s.b +q=A.y(r).i("aR<1>") +B.b.az(A.a8(new A.aR(r,q),!0,q.i("B.E")),s.gaSf()) +s.d.L(0) +s.e.L(0)}, +geB(){var s,r,q=null,p=this.r +if(p===$){s=t.S +r=t.mm +p!==$&&A.aH() +p=this.r=new A.a0i(this,A.w(s,t.eV),A.w(s,t.B),new A.pa(q,q,r),new A.pa(q,q,r))}return p}, +ga0L(){var s,r,q,p=this,o=p.w +if(o===$){s=p.geB() +r=A.a([],t.Gl) +q=A.a([],t.LY) +p.w!==$&&A.aH() +o=p.w=new A.adi(s,r,B.dB,q)}return o}, +gaVi(){return t.e8.a(this.geB().b.h(0,0))}, +aeB(){var s=this.x +if(s!=null)A.rO(s,this.y)}, +gUk(){var s,r=this,q=r.z +if(q===$){s=r.geB() +r.z!==$&&A.aH() +q=r.z=new A.aa8(s,r.gaVZ(),B.Pz)}return q}, +aW_(a){A.rP(this.Q,this.as,a,t.Hi)}, +aVY(a,b){var s=this.db +if(s!=null)A.rO(new A.ay1(b,s,a),this.dx) +else b.$1(!1)}, +n8(a,b,c){var s +if(a==="dev.flutter/channel-buffers")try{s=$.ap3() +b.toString +s.aU5(b)}finally{c.$1(null)}else $.ap3().aZM(a,b,c)}, +aJW(a,a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=null +switch(a){case"flutter/skia":s=B.c0.m6(a0) +switch(s.a){case"Skia.setResourceCacheMaxBytes":if($.ap() instanceof A.arT){r=A.ds(s.b) +$.bFQ.eg().d.b1u(r)}c.iH(a1,B.aT.e_([A.a([!0],t.HZ)])) +break}return +case"flutter/assets":c.B3(B.a5.ei(0,A.dw(a0.buffer,0,b)),a1) +return +case"flutter/platform":s=B.c0.m6(a0) +switch(s.a){case"SystemNavigator.pop":q=t.e8 +if(q.a(c.geB().b.h(0,0))!=null)q.a(c.geB().b.h(0,0)).gJL().Dh().ak(new A.axW(c,a1),t.P) +else c.iH(a1,B.aT.e_([!0])) +return +case"HapticFeedback.vibrate":q=c.ayD(A.dk(s.b)) +p=self.window.navigator +if("vibrate" in p)p.vibrate(q) +c.iH(a1,B.aT.e_([!0])) +return +case u.ac:o=t.xE.a(s.b) +q=J.a0(o) +n=A.dk(q.h(o,"label")) +if(n==null)n="" +m=A.jU(q.h(o,"primaryColor")) +if(m==null)m=4278190080 +q=self.document +q.title=n +A.bAP(new A.A(m>>>0)) +c.iH(a1,B.aT.e_([!0])) +return +case"SystemChrome.setSystemUIOverlayStyle":l=A.jU(J.i(t.xE.a(s.b),"statusBarColor")) +A.bAP(l==null?b:new A.A(l>>>0)) +c.iH(a1,B.aT.e_([!0])) +return +case"SystemChrome.setPreferredOrientations":B.Tp.FU(t.j.a(s.b)).ak(new A.axX(c,a1),t.P) +return +case"SystemSound.play":c.iH(a1,B.aT.e_([!0])) +return +case"Clipboard.setData":new A.HD(A.blc(),A.bni()).aks(s,a1) +return +case"Clipboard.getData":new A.HD(A.blc(),A.bni()).aiQ(a1) +return +case"Clipboard.hasStrings":new A.HD(A.blc(),A.bni()).aUW(a1) +return}break +case"flutter/service_worker":q=self.window +k=self.document.createEvent("Event") +k.initEvent("flutter-first-frame",!0,!0) +q.dispatchEvent(k) +return +case"flutter/textinput":$.VV().gCu(0).aUN(a0,a1) +return +case"flutter/contextmenu":switch(B.c0.m6(a0).a){case"enableContextMenu":t.e8.a(c.geB().b.h(0,0)).gabJ().aSI(0) +c.iH(a1,B.aT.e_([!0])) +return +case"disableContextMenu":t.e8.a(c.geB().b.h(0,0)).gabJ().lu(0) +c.iH(a1,B.aT.e_([!0])) +return}return +case"flutter/mousecursor":s=B.fV.m6(a0) +o=t.f.a(s.b) +switch(s.a){case"activateSystemCursor":q=A.btK(c.geB().b.gaJ(0)) +if(q!=null){if(q.w===$){q.ghq() +q.w!==$&&A.aH() +q.w=new A.aIU()}j=B.agi.h(0,A.dk(J.i(o,"kind"))) +if(j==null)j="default" +if(j==="default")self.document.body.style.removeProperty("cursor") +else A.N(self.document.body.style,"cursor",j)}break}return +case"flutter/web_test_e2e":c.iH(a1,B.aT.e_([A.bT6(B.c0,a0)])) +return +case"flutter/platform_views":i=B.fV.m6(a0) +o=b +h=i.b +o=h +q=$.bCc() +a1.toString +q.aUf(i.a,o,a1) +return +case"flutter/accessibility":g=$.cQ +if(g==null)g=$.cQ=A.fE() +if(g.b){q=t.f +f=q.a(J.i(q.a(B.e8.jY(a0)),"data")) +e=A.dk(J.i(f,"message")) +if(e!=null&&e.length!==0){d=A.a1l(f,"assertiveness") +g.a.aay(e,B.a5O[d==null?0:d])}}c.iH(a1,B.e8.e_(!0)) +return +case"flutter/navigation":q=t.e8 +if(q.a(c.geB().b.h(0,0))!=null)q.a(c.geB().b.h(0,0)).Wt(a0).ak(new A.axY(c,a1),t.P) +else if(a1!=null)a1.$1(b) +c.y2="/" +return}q=$.bAz +if(q!=null){q.$3(a,a0,a1) +return}c.iH(a1,b)}, +B3(a,b){return this.aAo(a,b)}, +aAo(a,b){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j,i,h +var $async$B3=A.j(function(c,d){if(c===1){p=d +s=q}while(true)switch(s){case 0:q=3 +k=$.Gi +h=t.Lk +s=6 +return A.f(A.aoA(k.F4(a)),$async$B3) +case 6:n=h.a(d) +s=7 +return A.f(n.gafI().JF(),$async$B3) +case 7:m=d +o.iH(b,A.eT(m,0,null)) +q=1 +s=5 +break +case 3:q=2 +i=p +l=A.v(i) +$.zW().$1("Error while trying to load an asset: "+A.c(l)) +o.iH(b,null) +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$B3,r)}, +ayD(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}}, +oy(){var s=$.bAK +if(s==null)throw A.d(A.ae("scheduleFrameCallback must be initialized first.")) +s.$0()}, +Nl(a,b){return this.b_v(a,b)}, +b_v(a,b){var s=0,r=A.n(t.H),q=this,p +var $async$Nl=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:p=q.at +p=p==null?null:p.q(0,b) +s=p===!0||$.ap().gagt()==="html"?2:3 +break +case 2:s=4 +return A.f($.ap().Y1(a,b),$async$Nl) +case 4:case 3:return A.l(null,r)}}) +return A.m($async$Nl,r)}, +as3(){var s=this +if(s.k1!=null)return +s.c=s.c.abM(A.blV()) +s.k1=A.e2(self.window,"languagechange",new A.axV(s))}, +arY(){var s,r,q,p=new self.MutationObserver(A.boX(new A.axU(this))) +this.k4=p +s=self.document.documentElement +s.toString +r=A.a(["style"],t.s) +q=A.w(t.N,t.z) +q.n(0,"attributes",!0) +q.n(0,"attributeFilter",r) +r=A.b8(q) +if(r==null)r=t.K.a(r) +p.observe(s,r)}, +aK1(a){this.n8("flutter/lifecycle",A.eT(B.ao.b4(a.D()).buffer,0,null),new A.axZ())}, +a9w(a){var s=this,r=s.c +if(r.d!==a){s.c=r.aQm(a) +A.rO(null,null) +A.rO(s.p4,s.R8)}}, +aMF(a){var s=this.c,r=s.a +if((r.a&32)!==0!==a){this.c=s.abK(r.aQk(a)) +A.rO(null,null)}}, +arR(){var s,r=this,q=r.p2 +r.a9w(q.matches?B.aI:B.b_) +s=A.d6(new A.axT(r)) +r.p3=s +q.addListener(s)}, +mh(a,b,c){A.rP(this.x1,this.x2,new A.yA(b,0,a,c),t.KL)}, +gVw(){var s=this.y2 +if(s==null){s=t.e8.a(this.geB().b.h(0,0)) +s=s==null?null:s.gJL().gpt() +s=this.y2=s==null?"/":s}return s}, +iH(a,b){A.eC(B.F,null,t.H).ak(new A.ay2(a,b),t.P)}} +A.ay0.prototype={ +$1(a){this.a.aeB()}, +$S:23} +A.ay1.prototype={ +$0(){return this.a.$1(this.b.$1(this.c))}, +$S:0} +A.ay_.prototype={ +$1(a){this.a.vK(this.b,a,t.CD)}, +$S:52} +A.axW.prototype={ +$1(a){this.a.iH(this.b,B.aT.e_([!0]))}, +$S:20} +A.axX.prototype={ +$1(a){this.a.iH(this.b,B.aT.e_([a]))}, +$S:26} +A.axY.prototype={ +$1(a){var s=this.b +if(a)this.a.iH(s,B.aT.e_([!0])) +else if(s!=null)s.$1(null)}, +$S:26} +A.axV.prototype={ +$1(a){var s=this.a +s.c=s.c.abM(A.blV()) +A.rO(s.k2,s.k3)}, +$S:5} +A.axU.prototype={ +$2(a,b){var s,r,q,p,o=null,n=B.b.gav(a),m=t.B,l=this.a +for(;n.u();){s=n.gI(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.bWK(r) +p=(q==null?16:q)/16 +r=l.c +if(r.e!==p){l.c=r.aQq(p) +A.rO(o,o) +A.rO(l.ok,l.p1)}}}}, +$S:466} +A.axZ.prototype={ +$1(a){}, +$S:52} +A.axT.prototype={ +$1(a){var s=A.bsC(a) +s.toString +s=s?B.aI:B.b_ +this.a.a9w(s)}, +$S:5} +A.ay2.prototype={ +$1(a){var s=this.a +if(s!=null)s.$1(this.b)}, +$S:20} +A.bju.prototype={ +$0(){this.a.$2(this.b,this.c)}, +$S:0} +A.aVC.prototype={ +j(a){return A.K(this).j(0)+"[view: null]"}} +A.a65.prototype={ +CH(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.a65(r,!1,q,p,o,n,s.r,s.w)}, +abK(a){var s=null +return this.CH(a,s,s,s,s)}, +abM(a){var s=null +return this.CH(s,a,s,s,s)}, +aQq(a){var s=null +return this.CH(s,s,s,s,a)}, +aQm(a){var s=null +return this.CH(s,s,a,s,s)}, +aQn(a){var s=null +return this.CH(s,s,s,a,s)}} +A.apK.prototype={ +z6(a){var s,r,q +if(a!==this.a){this.a=a +for(s=this.b,r=s.length,q=0;q.")) +return}if(s.b.N(0,c)){a.$1(B.fV.uN("recreating_view","view id: "+c,"trying to create an already created view")) +return}s.b_w(d,c,b) +a.$1(B.fV.De(null))}, +aUf(a,b,c){var s,r,q +switch(a){case"create":t.f.a(b) +s=J.a0(b) +r=B.d.aA(A.iD(s.h(b,"id"))) +q=A.bS(s.h(b,"viewType")) +this.av8(c,s.h(b,"params"),r,q) +return +case"dispose":s=this.b.b.C(0,A.ds(b)) +if(s!=null)s.remove() +c.$1(B.fV.De(null)) +return}c.$1(null)}} +A.aPH.prototype={ +b1d(){if(this.a==null){this.a=A.d6(new A.aPI()) +A.eg(self.document,"touchstart",this.a,null)}}} +A.aPI.prototype={ +$1(a){}, +$S:5} +A.aMP.prototype={ +auX(){if("PointerEvent" in self.window){var s=new A.baE(A.w(t.S,t.ZW),this,A.a([],t.H8)) +s.akU() +return s}throw A.d(A.ag("This browser does not support pointer events which are necessary to handle interactions with Flutter Web apps."))}} +A.Xm.prototype={ +aYl(a,b){var s,r,q,p=this,o=$.bC() +if(!o.c.c){s=A.a(b.slice(0),A.af(b)) +A.rP(o.cx,o.cy,new A.qx(s),t.kf) +return}s=p.a +if(s!=null){o=s.a +r=A.mF(a) +r.toString +o.push(new A.SG(b,a,A.Q3(r))) +if(a.type==="pointerup")if(!J.e(a.target,s.b))p.Ra()}else if(a.type==="pointerdown"){q=a.target +if(t.B.b(q)&&q.hasAttribute("flt-tappable")){o=A.bZ(B.T,p.gaGo()) +s=A.mF(a) +s.toString +p.a=new A.aiW(A.a([new A.SG(b,a,A.Q3(s))],t.U4),q,o)}else{s=A.a(b.slice(0),A.af(b)) +A.rP(o.cx,o.cy,new A.qx(s),t.kf)}}else{s=A.a(b.slice(0),A.af(b)) +A.rP(o.cx,o.cy,new A.qx(s),t.kf)}}, +aXS(a,b,c,d){var s=this,r=s.a +if(r==null){if(d&&s.aKo(b)){b.stopPropagation() +$.bC().mh(c,B.fu,null)}return}if(d){s.a=null +r.c.S(0) +b.stopPropagation() +$.bC().mh(c,B.fu,null)}else s.Ra()}, +aGp(){if(this.a==null)return +this.Ra()}, +aKo(a){var s,r=this.b +if(r==null)return!0 +s=A.mF(a) +s.toString +return A.Q3(s).a-r.a>=5e4}, +Ra(){var s,r,q,p,o,n,m=this.a +m.c.S(0) +s=t.D9 +r=A.a([],s) +for(q=m.a,p=q.length,o=0;o1}, +aDV(a){var s,r,q,p,o,n,m=this +if($.bH().ge4()===B.dG)return!1 +if(m.a5f(a.deltaX,A.bsJ(a))||m.a5f(a.deltaY,A.bsK(a)))return!1 +if(!(B.d.an(a.deltaX,120)===0&&B.d.an(a.deltaY,120)===0)){s=A.bsJ(a) +if(B.d.an(s==null?1:s,120)===0){s=A.bsK(a) +s=B.d.an(s==null?1:s,120)===0}else s=!1}else s=!0 +if(s){s=a.deltaX +r=m.c +q=r==null +p=q?null:r.deltaX +o=Math.abs(s-(p==null?0:p)) +s=a.deltaY +p=q?null:r.deltaY +n=Math.abs(s-(p==null?0:p)) +s=!0 +if(!q)if(!(o===0&&n===0))s=!(o<20&&n<20) +if(s){if(A.mF(a)!=null)s=(q?null:A.mF(r))!=null +else s=!1 +if(s){s=A.mF(a) +s.toString +r.toString +r=A.mF(r) +r.toString +if(s-r<50&&m.d)return!0}return!1}}return!0}, +auW(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this +if(c.aDV(a)){s=B.cc +r=-2}else{s=B.cI +r=-1}q=a.deltaX +p=a.deltaY +switch(B.d.aA(a.deltaMode)){case 1:o=$.byd +if(o==null){n=A.cm(self.document,"div") +o=n.style +A.N(o,"font-size","initial") +A.N(o,"display","none") +self.document.body.append(n) +o=A.blQ(self.window,n).getPropertyValue("font-size") +if(B.c.p(o,"px"))m=A.oG(A.dm(o,"px","")) +else m=null +n.remove() +o=$.byd=m==null?16:m/4}q*=o +p*=o +break +case 2:o=c.a.b +q*=o.gmo().a +p*=o.gmo().b +break +case 0:if($.bH().gf9()===B.dr){o=$.dz() +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.bzw(a,l) +if($.bH().gf9()===B.dr){i=o.e +h=i==null +if(h)g=null +else{g=$.bqy() +g=i.f.N(0,g)}if(g!==!0){if(h)i=null +else{h=$.bqz() +h=i.f.N(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.mF(a) +i.toString +i=A.Q3(i) +g=$.dz() +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.IJ(a) +d.toString +o.aQ8(k,B.d.aA(d),B.fo,r,s,h*e,j.b*g,1,1,Math.exp(-p/200),B.akD,i,l)}else{i=A.mF(a) +i.toString +i=A.Q3(i) +g=$.dz() +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.IJ(a) +d.toString +o.aQa(k,B.d.aA(d),B.fo,r,s,new A.bgU(c),h*e,j.b*g,1,1,q,p,B.akC,i,l)}c.c=a +c.d=s===B.cc +return k}} +A.bgU.prototype={ +$1$allowPlatformDefault(a){var s=this.a +s.e=B.ho.tk(s.e,a)}, +$0(){return this.$1$allowPlatformDefault(!1)}, +$S:483} +A.p7.prototype={ +j(a){return A.K(this).j(0)+"(change: "+this.a.j(0)+", buttons: "+this.b+")"}} +A.Ez.prototype={ +ajO(a,b){var s +if(this.a!==0)return this.Zf(b) +s=(b===0&&a>-1?A.bVc(a):b)&1073741823 +this.a=s +return new A.p7(B.akB,s)}, +Zf(a){var s=a&1073741823,r=this.a +if(r===0&&s!==0)return new A.p7(B.fo,r) +this.a=s +return new A.p7(s===0?B.fo:B.na,s)}, +Ze(a){if(this.a!==0&&(a&1073741823)===0){this.a=0 +return new A.p7(B.N8,0)}return null}, +ajP(a){if((a&1073741823)===0){this.a=0 +return new A.p7(B.fo,0)}return null}, +ajQ(a){var s +if(this.a===0)return null +s=this.a=(a==null?0:a)&1073741823 +if(s===0)return new A.p7(B.N8,s) +else return new A.p7(B.na,s)}} +A.baE.prototype={ +QY(a){return this.f.cP(0,a,new A.baG())}, +a6Z(a){if(A.blP(a)==="touch")this.f.C(0,A.bsF(a))}, +PB(a,b,c,d){this.Cc(0,a,b,new A.baF(this,d,c))}, +PA(a,b,c){return this.PB(a,b,c,!0)}, +akU(){var s,r=this,q=r.b,p=r.a.b +q.push(A.bmJ("touchstart",new A.baI(),null,p.ghq().a)) +r.PA(p.ghq().a,"pointerdown",new A.baJ(r)) +s=p.c +r.PA(s.gOs(),"pointermove",new A.baK(r)) +r.PB(p.ghq().a,"pointerleave",new A.baL(r),!1) +r.PA(s.gOs(),"pointerup",new A.baM(r)) +r.PB(p.ghq().a,"pointercancel",new A.baN(r),!1) +q.push(A.bmJ("wheel",new A.baO(r),!1,p.ghq().a))}, +tN(a,b,c){var s,r,q,p,o,n,m,l,k,j,i=A.blP(c) +i.toString +s=this.a6A(i) +i=A.bsG(c) +i.toString +r=A.bsH(c) +r.toString +i=Math.abs(i)>Math.abs(r)?A.bsG(c):A.bsH(c) +i.toString +r=A.mF(c) +r.toString +q=A.Q3(r) +p=c.pressure +if(p==null)p=null +r=this.a +o=r.b +n=A.bzw(c,o) +m=this.x4(c) +l=$.dz() +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.aQ9(a,b.b,b.a,m,s,n.a*k,n.b*l,j,1,B.nb,i/180*3.141592653589793,q,o.a)}, +axd(a){var s,r +if("getCoalescedEvents" in a){s=a.getCoalescedEvents() +s=B.b.kG(s,t.B) +r=new A.ij(s.a,s.$ti.i("ij<1,r>")) +if(!r.ga_(r))return r}return A.a([a],t.yY)}, +a6A(a){switch(a){case"mouse":return B.cI +case"pen":return B.cq +case"touch":return B.br +default:return B.ds}}, +x4(a){var s=A.blP(a) +s.toString +if(this.a6A(s)===B.cI)s=-1 +else{s=A.bsF(a) +s.toString +s=B.d.aA(s)}return s}} +A.baG.prototype={ +$0(){return new A.Ez()}, +$S:493} +A.baF.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k +if(this.b){s=this.a.a.e +if(s!=null){r=a.getModifierState("Alt") +q=a.getModifierState("Control") +p=a.getModifierState("Meta") +o=a.getModifierState("Shift") +n=A.mF(a) +n.toString +m=$.bDM() +l=$.bDN() +k=$.bqj() +s.IZ(m,l,k,r?B.dk:B.cy,n) +m=$.bqy() +l=$.bqz() +k=$.bqk() +s.IZ(m,l,k,q?B.dk:B.cy,n) +r=$.bDO() +m=$.bDP() +l=$.bql() +s.IZ(r,m,l,p?B.dk:B.cy,n) +r=$.bDQ() +q=$.bDR() +m=$.bqm() +s.IZ(r,q,m,o?B.dk:B.cy,n)}}this.c.$1(a)}, +$S:5} +A.baI.prototype={ +$1(a){var s=a._cancelable +if(s==null)s=null +if(s!==!1)a.preventDefault()}, +$S:5} +A.baJ.prototype={ +$1(a){var s,r,q=this.a,p=q.x4(a),o=A.a([],t.D9),n=q.QY(p),m=A.IJ(a) +m.toString +s=n.Ze(B.d.aA(m)) +if(s!=null)q.tN(o,s,a) +m=B.d.aA(a.button) +r=A.IJ(a) +r.toString +q.tN(o,n.ajO(m,B.d.aA(r)),a) +q.wG(a,o) +if(J.e(a.target,q.a.b.ghq().a)){a.preventDefault() +A.bZ(B.F,new A.baH(q))}}, +$S:98} +A.baH.prototype={ +$0(){$.bC().gUk().aPh(this.a.a.b.a,B.awm)}, +$S:0} +A.baK.prototype={ +$1(a){var s,r,q,p,o=this.a,n=o.QY(o.x4(a)),m=A.a([],t.D9) +for(s=J.ay(o.axd(a));s.u();){r=s.gI(s) +q=r.buttons +if(q==null)q=null +q.toString +p=n.Ze(B.d.aA(q)) +if(p!=null)o.tN(m,p,r) +q=r.buttons +if(q==null)q=null +q.toString +o.tN(m,n.Zf(B.d.aA(q)),r)}o.wG(a,m)}, +$S:98} +A.baL.prototype={ +$1(a){var s,r=this.a,q=r.QY(r.x4(a)),p=A.a([],t.D9),o=A.IJ(a) +o.toString +s=q.ajP(B.d.aA(o)) +if(s!=null){r.tN(p,s,a) +r.wG(a,p)}}, +$S:98} +A.baM.prototype={ +$1(a){var s,r,q,p=this.a,o=p.x4(a),n=p.f +if(n.N(0,o)){s=A.a([],t.D9) +n=n.h(0,o) +n.toString +r=A.IJ(a) +q=n.ajQ(r==null?null:B.d.aA(r)) +p.a6Z(a) +if(q!=null){p.tN(s,q,a) +p.wG(a,s)}}}, +$S:98} +A.baN.prototype={ +$1(a){var s,r=this.a,q=r.x4(a),p=r.f +if(p.N(0,q)){s=A.a([],t.D9) +p.h(0,q).a=0 +r.a6Z(a) +r.tN(s,new A.p7(B.N7,0),a) +r.wG(a,s)}}, +$S:98} +A.baO.prototype={ +$1(a){var s=this.a +s.e=!1 +s.wG(a,s.auW(a)) +if(!s.e)a.preventDefault()}, +$S:5} +A.FA.prototype={} +A.b56.prototype={ +KX(a,b,c){return this.a.cP(0,a,new A.b57(b,c))}} +A.b57.prototype={ +$0(){return new A.FA(this.a,this.b)}, +$S:575} +A.aMQ.prototype={ +a3o(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){var s,r=$.pm().a.h(0,c),q=r.b,p=r.c +r.b=j +r.c=k +s=r.a +if(s==null)s=0 +return A.bv_(a,b,c,d,e,f,!1,h,i,j-q,k-p,j,k,l,s,m,n,o,a0,a1,a2,a3,a4,a5,a6,a7,a8,!1,a9,b0,b1)}, +wZ(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 this.a3o(a,b,c,d,e,f,g,null,h,i,j,k,l,m,n,o,p,q,r,s,a0,a1,a2,a3,a4,a5,a6)}, +Sn(a,b,c){var s=$.pm().a.h(0,a) +return s.b!==b||s.c!==c}, +qP(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){var s,r=$.pm().a.h(0,c),q=r.b,p=r.c +r.b=i +r.c=j +s=r.a +if(s==null)s=0 +return A.bv_(a,b,c,d,e,f,!1,null,h,i-q,j-p,i,j,k,s,l,m,n,o,a0,a1,a2,a3,a4,a5,B.nb,a6,!0,a7,a8,a9)}, +Ve(a,b,c,d,e,f,g,h,i,j,k,l,m,a0,a1,a2,a3){var s,r,q,p,o,n=this +if(a0===B.nb)switch(c.a){case 1:$.pm().KX(d,g,h) +a.push(n.wZ(b,c,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,a0,0,a1,a2,a3)) +break +case 3:s=$.pm() +r=s.a.N(0,d) +s.KX(d,g,h) +if(!r)a.push(n.qP(b,B.ro,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,0,a1,a2,a3)) +a.push(n.wZ(b,c,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,a0,0,a1,a2,a3)) +s.b=b +break +case 4:s=$.pm() +r=s.a.N(0,d) +s.KX(d,g,h).a=$.bxC=$.bxC+1 +if(!r)a.push(n.qP(b,B.ro,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,0,a1,a2,a3)) +if(n.Sn(d,g,h))a.push(n.qP(0,B.fo,d,0,0,e,!1,0,g,h,0,0,j,0,0,0,0,0,k,l,m,0,a1,a2,a3)) +a.push(n.wZ(b,c,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,a0,0,a1,a2,a3)) +s.b=b +break +case 5:a.push(n.wZ(b,c,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,a0,0,a1,a2,a3)) +$.pm().b=b +break +case 6:case 0:s=$.pm() +q=s.a +p=q.h(0,d) +p.toString +if(c===B.N7){g=p.b +h=p.c}if(n.Sn(d,g,h))a.push(n.qP(s.b,B.na,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,0,a1,a2,a3)) +a.push(n.wZ(b,c,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,a0,0,a1,a2,a3)) +if(e===B.br){a.push(n.qP(0,B.akA,d,0,0,e,!1,0,g,h,0,0,j,0,0,0,0,0,k,l,m,0,a1,a2,a3)) +q.C(0,d)}break +case 2:s=$.pm().a +o=s.h(0,d) +a.push(n.wZ(b,c,d,0,0,e,!1,0,o.b,o.c,0,i,j,0,0,0,0,0,k,l,m,a0,0,a1,a2,a3)) +s.C(0,d) +break +case 7:case 8:case 9:break}else switch(a0.a){case 1:case 2:case 3:s=$.pm() +r=s.a.N(0,d) +s.KX(d,g,h) +if(!r)a.push(n.qP(b,B.ro,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,0,a1,a2,a3)) +if(n.Sn(d,g,h))if(b!==0)a.push(n.qP(b,B.na,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,0,a1,a2,a3)) +else a.push(n.qP(b,B.fo,d,0,0,e,!1,0,g,h,0,i,j,0,0,0,0,0,k,l,m,0,a1,a2,a3)) +a.push(n.a3o(b,c,d,0,0,e,!1,f,0,g,h,0,i,j,0,0,0,0,0,k,l,m,a0,0,a1,a2,a3)) +break +case 0:break +case 4:break}}, +aQ8(a,b,c,d,e,f,g,h,i,j,k,l,m){return this.Ve(a,b,c,d,e,null,f,g,h,i,j,0,0,k,0,l,m)}, +aQa(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){return this.Ve(a,b,c,d,e,f,g,h,i,j,1,k,l,m,0,n,o)}, +aQ9(a,b,c,d,e,f,g,h,i,j,k,l,m){return this.Ve(a,b,c,d,e,null,f,g,h,i,1,0,0,j,k,l,m)}} +A.bnp.prototype={} +A.aNm.prototype={ +aqX(a){$.rJ.push(new A.aNn(this))}, +m(){var s,r +for(s=this.a,r=A.js(s,s.r);r.u();)s.h(0,r.d).S(0) +s.V(0) +$.a6w=null}, +adN(a){var s,r,q,p,o,n,m=this,l=globalThis.KeyboardEvent +if(!(l!=null&&a instanceof l))return +s=new A.oi(a) +r=A.pH(a) +r.toString +if(a.type==="keydown"&&A.lJ(a)==="Tab"&&a.isComposing)return +q=A.lJ(a) +q.toString +if(!(q==="Meta"||q==="Shift"||q==="Alt"||q==="Control")&&m.c){q=m.a +p=q.h(0,r) +if(p!=null)p.S(0) +if(a.type==="keydown")if(!a.ctrlKey){p=A.a_w(a) +p=p===!0||a.altKey||a.metaKey}else p=!0 +else p=!1 +if(p)q.n(0,r,A.bZ(B.dN,new A.aNp(m,r,s))) +else q.C(0,r)}o=a.getModifierState("Shift")?1:0 +if(a.getModifierState("Alt")||a.getModifierState("AltGraph"))o|=2 +if(a.getModifierState("Control"))o|=4 +if(a.getModifierState("Meta"))o|=8 +m.b=o +if(a.type==="keydown")if(A.lJ(a)==="CapsLock")m.b=o|32 +else if(A.pH(a)==="NumLock")m.b=o|16 +else if(A.lJ(a)==="ScrollLock")m.b=o|64 +else if(A.lJ(a)==="Meta"&&$.bH().gf9()===B.rg)m.b|=8 +else if(A.pH(a)==="MetaLeft"&&A.lJ(a)==="Process")m.b|=8 +n=A.C(["type",a.type,"keymap","web","code",A.pH(a),"key",A.lJ(a),"location",B.d.aA(a.location),"metaState",m.b,"keyCode",B.d.aA(a.keyCode)],t.N,t.z) +$.bC().n8("flutter/keyevent",B.aT.e_(n),new A.aNq(s))}} +A.aNn.prototype={ +$0(){this.a.m()}, +$S:0} +A.aNp.prototype={ +$0(){var s,r,q=this.a +q.a.C(0,this.b) +s=this.c.a +r=A.C(["type","keyup","keymap","web","code",A.pH(s),"key",A.lJ(s),"location",B.d.aA(s.location),"metaState",q.b,"keyCode",B.d.aA(s.keyCode)],t.N,t.z) +$.bC().n8("flutter/keyevent",B.aT.e_(r),A.bSF())}, +$S:0} +A.aNq.prototype={ +$1(a){var s +if(a==null)return +if(A.Gh(J.i(t.a.a(B.aT.jY(a)),"handled"))){s=this.a.a +s.preventDefault() +s.stopPropagation()}}, +$S:52} +A.a0A.prototype={} +A.a0z.prototype={ +VQ(a,b,c,d){var s=this.dy,r=this.fr,q=this.fx +A.bi(b,"drawImage",[s,0,0,r,q,c,d,r,q])}, +JT(a,b){var s,r,q,p,o,n=this,m="attachShader",l=a+"||"+b,k=J.i($.aAP.eg(),l) +if(k==null){s=n.abt(0,"VERTEX_SHADER",a) +r=n.abt(0,"FRAGMENT_SHADER",b) +q=n.a +p=q.createProgram() +A.bi(q,m,[p,s]) +A.bi(q,m,[p,r]) +A.bi(q,"linkProgram",[p]) +o=n.ay +if(!A.bi(q,"getProgramParameter",[p,o==null?n.ay=q.LINK_STATUS:o]))A.V(A.ae(A.bi(q,"getProgramInfoLog",[p]))) +k=new A.a0A(p) +J.bT($.aAP.eg(),l,k)}return k}, +abt(a,b,c){var s,r=this.a,q=r.createShader(r[b]) +if(q==null)throw A.d(A.ae(A.bS_(r,"getError"))) +A.bi(r,"shaderSource",[q,c]) +A.bi(r,"compileShader",[q]) +s=this.c +if(!A.bi(r,"getShaderParameter",[q,s==null?this.c=r.COMPILE_STATUS:s]))throw A.d(A.ae("Shader compilation failed: "+A.c(A.bi(r,"getShaderInfoLog",[q])))) +return q}, +agY(a,b,c,d,e,f,g){A.bi(this.a,"texImage2D",[b,c,d,e,f,g])}, +acT(a,b){A.bi(this.a,"drawArrays",[this.aMd(b),0,a])}, +aMd(a){var s,r=this +switch(a.a){case 0:return r.gX1() +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}}, +glG(){var s=this.d +return s==null?this.d=this.a.ARRAY_BUFFER:s}, +gvk(){var s=this.e +return s==null?this.e=this.a.ELEMENT_ARRAY_BUFFER:s}, +gX0(){var s=this.r +return s==null?this.r=this.a.FLOAT:s}, +gLU(){var s=this.cx +return s==null?this.cx=this.a.RGBA:s}, +gLX(){var s=this.ch +return s==null?this.ch=this.a.UNSIGNED_BYTE:s}, +gaeS(){var s=this.CW +return s==null?this.CW=this.a.UNSIGNED_SHORT:s}, +gvl(){var s=this.f +return s==null?this.f=this.a.STATIC_DRAW:s}, +gX1(){var s=this.ax +return s==null?this.ax=this.a.TRIANGLES:s}, +gX_(){var s=this.w +return s==null?this.w=this.a.COLOR_BUFFER_BIT:s}, +gjx(){var s=this.x +return s==null?this.x=this.a.TEXTURE_2D:s}, +gaeQ(){var s=this.dx +return s==null?this.dx=this.a.TEXTURE0:s}, +gLV(){var s=this.y +return s==null?this.y=this.a.TEXTURE_WRAP_S:s}, +gLW(){var s=this.z +return s==null?this.z=this.a.TEXTURE_WRAP_T:s}, +gyX(){var s=this.as +return s==null?this.as=this.a.CLAMP_TO_EDGE:s}, +gaeP(){var s=this.cy +return s==null?this.cy=this.a.LINEAR:s}, +gaeR(){var s=this.db +return s==null?this.db=this.a.TEXTURE_MIN_FILTER:s}, +kp(a,b,c){var s=A.bi(this.a,"getUniformLocation",[b,c]) +if(s==null)throw A.d(A.ae(c+" not found")) +else return s}, +O7(a,b){var s=A.bi(this.a,"getAttribLocation",[a,b]) +if(s==null)throw A.d(A.ae(b+" not found")) +else return s}, +aga(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.Vt(q.fx,s) +s=A.pG(r,"2d",null) +s.toString +q.VQ(0,t.B.a(s),0,0) +return r}}} +A.aKJ.prototype={ +a97(a){var s,r,q,p,o=this.c +$.dz() +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.N(p,"position","absolute") +A.N(p,"width",A.c(o/s)+"px") +A.N(p,"height",A.c(r/q)+"px")}} +A.H2.prototype={ +D(){return"Assertiveness."+this.b}} +A.ape.prototype={ +aOp(a){switch(a.a){case 0:return this.a +case 1:return this.b}}, +aay(a,b){var s=this,r=s.aOp(b),q=A.cm(self.document,"div") +A.blO(q,s.c?a+"\xa0":a) +s.c=!s.c +r.append(q) +A.bZ(B.bl,new A.apf(q))}} +A.apf.prototype={ +$0(){return this.a.remove()}, +$S:0} +A.Qj.prototype={ +D(){return"_CheckableKind."+this.b}} +A.as5.prototype={ +i0(a){var s,r,q,p=this,o="true" +p.mJ(0) +s=p.c +if((s.k4&1)!==0){switch(p.w.a){case 0:r=p.a +r===$&&A.b() +q=A.b8("checkbox") +if(q==null)q=t.K.a(q) +r.setAttribute("role",q) +break +case 1:r=p.a +r===$&&A.b() +q=A.b8("radio") +if(q==null)q=t.K.a(q) +r.setAttribute("role",q) +break +case 2:r=p.a +r===$&&A.b() +q=A.b8("switch") +if(q==null)q=t.K.a(q) +r.setAttribute("role",q) +break}r=s.VU() +q=p.a +if(r===B.lk){q===$&&A.b() +r=A.b8(o) +if(r==null)r=t.K.a(r) +q.setAttribute("aria-disabled",r) +r=A.b8(o) +if(r==null)r=t.K.a(r) +q.setAttribute("disabled",r)}else{q===$&&A.b() +q.removeAttribute("aria-disabled") +q.removeAttribute("disabled")}s=s.a +s=(s&2)!==0||(s&131072)!==0?o:"false" +r=p.a +r===$&&A.b() +s=A.b8(s) +if(s==null)s=t.K.a(s) +r.setAttribute("aria-checked",s)}}, +m(){this.Ak() +var s=this.a +s===$&&A.b() +s.removeAttribute("aria-disabled") +s.removeAttribute("disabled")}, +n4(){var s=this.e +if(s==null)s=null +else{s=s.c.a +s===$&&A.b() +A.eO(s,null) +s=!0}return s===!0}} +A.a_i.prototype={ +aqH(a){var s=this,r=s.c,q=A.bmg(r,s) +s.e=q +s.jn(q) +s.jn(new A.xu(r,s)) +a.k3.r.push(new A.avo(s,a))}, +aK7(){this.c.Ul(new A.avn())}, +i0(a){var s,r,q +this.mJ(0) +s=this.c +if((s.a&4096)!==0){r=s.z +s=r==null?"":r +q=this.a +q===$&&A.b() +s=A.b8(s) +if(s==null)s=t.K.a(s) +q.setAttribute("aria-label",s) +s=A.b8("dialog") +if(s==null)s=t.K.a(s) +q.setAttribute("role",s)}}, +act(a){var s,r +if((this.c.a&4096)!==0)return +s=this.a +s===$&&A.b() +r=A.b8("dialog") +if(r==null)r=t.K.a(r) +s.setAttribute("role",r) +r=a.b.p3.a +r===$&&A.b() +r=A.b8(r.id) +if(r==null)r=t.K.a(r) +s.setAttribute("aria-describedby",r)}, +n4(){return!1}} +A.avo.prototype={ +$0(){if(this.b.k3.w)return +this.a.aK7()}, +$S:0} +A.avn.prototype={ +$1(a){var s=a.p3 +if(s==null)return!0 +return!s.n4()}, +$S:274} +A.Dd.prototype={ +i0(a){var s,r=this,q=r.b +if((q.a&4096)===0)return +if((q.k4&1024)!==0){s=r.e +if(s!=null)s.act(r) +else q.k3.r.push(new A.aPu(r))}}, +aEA(){var s,r,q=this.b.p1 +while(!0){s=q!=null +if(s){r=q.p3 +r=(r==null?null:r.b)!==B.nc}else r=!1 +if(!r)break +q=q.p1}if(s){s=q.p3 +s=(s==null?null:s.b)===B.nc}else s=!1 +if(s){s=q.p3 +s.toString +this.e=t.JX.a(s)}}} +A.aPu.prototype={ +$0(){var s,r=this.a +if(!r.d){r.aEA() +s=r.e +if(s!=null)s.act(r)}}, +$S:0} +A.a0l.prototype={ +i0(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.aeZ(p.k2,r)}p=p.a +if((p&32)!==0)p=(p&64)===0||(p&128)!==0 +else p=!1 +s.abd(p)}else q.e.OZ()}} +A.W3.prototype={ +aeZ(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.SI([o[0],r,s,a]) +return}if(!o)q.OZ() +o=A.d6(new A.aph(q)) +o=[A.d6(new A.api(q)),o,b,a] +q.b=new A.SI(o) +A.awb(b,0) +A.eg(b,"focus",o[1],null) +A.eg(b,"blur",o[0],null)}, +OZ(){var s,r=this.b +this.c=this.b=null +if(r==null)return +s=r.a +A.hA(s[2],"focus",s[1],null) +A.hA(s[2],"blur",s[0],null)}, +a7O(a){var s,r,q=this.b +if(q==null)return +s=$.bC() +r=q.a[3] +s.mh(r,a?B.rI:B.rJ,null)}, +abd(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.apg(r,q))}} +A.aph.prototype={ +$1(a){return this.a.a7O(!0)}, +$S:5} +A.api.prototype={ +$1(a){return this.a.a7O(!1)}, +$S:5} +A.apg.prototype={ +$0(){var s=this.b +if(!J.e(this.a.b,s))return +A.eO(s.a[2],null)}, +$S:0} +A.aB9.prototype={ +i0(a){var s,r +this.mJ(0) +s=this.c +if((s.k4&16777216)===0)return +r=s.id +s=s.p3.a +s===$&&A.b() +r=A.b8(r) +if(r==null)r=t.K.a(r) +s.setAttribute("aria-level",r)}, +n4(){var s=this.e +if(s==null)s=null +else{s=s.c.a +s===$&&A.b() +A.eO(s,null) +s=!0}return s===!0}} +A.aCv.prototype={ +n4(){var s=this.e +if(s==null)s=null +else{s=s.c.a +s===$&&A.b() +A.eO(s,null) +s=!0}return s===!0}, +i0(a){var s,r,q,p=this +p.mJ(0) +s=p.c +if(s.gWY()){r=s.dy +r=r!=null&&!B.er.ga_(r)}else r=!1 +if(r){if(p.w==null){p.w=A.cm(self.document,"flt-semantics-img") +r=s.dy +if(r!=null&&!B.er.ga_(r)){r=p.w.style +A.N(r,"position","absolute") +A.N(r,"top","0") +A.N(r,"left","0") +q=s.y +A.N(r,"width",A.c(q.c-q.a)+"px") +s=s.y +A.N(r,"height",A.c(s.d-s.b)+"px")}A.N(p.w.style,"font-size","6px") +s=p.w +s.toString +r=p.a +r===$&&A.b() +r.append(s)}s=p.w +s.toString +r=A.b8("img") +if(r==null)r=t.K.a(r) +s.setAttribute("role",r) +p.a7Q(p.w)}else if(s.gWY()){s=p.a +s===$&&A.b() +r=A.b8("img") +if(r==null)r=t.K.a(r) +s.setAttribute("role",r) +p.a7Q(s) +p.Q5()}else{p.Q5() +s=p.a +s===$&&A.b() +s.removeAttribute("aria-label")}}, +a7Q(a){var s=this.c.z +if(s!=null&&s.length!==0){a.toString +s.toString +s=A.b8(s) +if(s==null)s=t.K.a(s) +a.setAttribute("aria-label",s)}}, +Q5(){var s=this.w +if(s!=null){s.remove() +this.w=null}}, +m(){this.Ak() +this.Q5() +var s=this.a +s===$&&A.b() +s.removeAttribute("aria-label")}} +A.aCE.prototype={ +aqN(a){var s,r,q=this,p=q.c +q.jn(new A.xu(p,q)) +q.jn(new A.Dd(p,q)) +q.aal(B.eY) +p=q.w +s=q.a +s===$&&A.b() +s.append(p) +A.awd(p,"range") +s=A.b8("slider") +if(s==null)s=t.K.a(s) +p.setAttribute("role",s) +A.eg(p,"change",A.d6(new A.aCF(q,a)),null) +s=new A.aCG(q) +q.z!==$&&A.d1() +q.z=s +r=$.cQ;(r==null?$.cQ=A.fE():r).w.push(s) +q.x.aeZ(a.k2,p)}, +n4(){A.eO(this.w,null) +return!0}, +i0(a){var s,r=this +r.mJ(0) +s=$.cQ +switch((s==null?$.cQ=A.fE():s).f.a){case 1:r.awS() +r.aMH() +break +case 0:r.a2A() +break}r.x.abd((r.c.a&32)!==0)}, +awS(){var s=this.w,r=A.blM(s) +r.toString +if(!r)return +A.bsv(s,!1)}, +aMH(){var s,r,q,p,o,n,m,l=this +if(!l.Q){s=l.c.k4 +r=(s&4096)!==0||(s&8192)!==0||(s&16384)!==0}else r=!0 +if(!r)return +l.Q=!1 +q=""+l.y +s=l.w +A.bsw(s,q) +p=A.b8(q) +if(p==null)p=t.K.a(p) +s.setAttribute("aria-valuenow",p) +p=l.c +o=p.ax +o.toString +o=A.b8(o) +if(o==null)o=t.K.a(o) +s.setAttribute("aria-valuetext",o) +n=p.ch.length!==0?""+(l.y+1):q +s.max=n +o=A.b8(n) +if(o==null)o=t.K.a(o) +s.setAttribute("aria-valuemax",o) +m=p.cx.length!==0?""+(l.y-1):q +s.min=m +p=A.b8(m) +if(p==null)p=t.K.a(p) +s.setAttribute("aria-valuemin",p)}, +a2A(){var s=this.w,r=A.blM(s) +r.toString +if(r)return +A.bsv(s,!0)}, +m(){var s,r,q=this +q.Ak() +q.x.OZ() +s=$.cQ +if(s==null)s=$.cQ=A.fE() +r=q.z +r===$&&A.b() +B.b.C(s.w,r) +q.a2A() +q.w.remove()}} +A.aCF.prototype={ +$1(a){var s,r=this.a,q=r.w,p=A.blM(q) +p.toString +if(p)return +r.Q=!0 +q=A.blN(q) +q.toString +s=A.c0(q,null) +q=r.y +if(s>q){r.y=q+1 +$.bC().mh(this.b.k2,B.NN,null)}else if(sr){s=q.b +s.toString +if((s&32)!==0||(s&16)!==0)$.bC().mh(p,B.jU,n) +else $.bC().mh(p,B.jW,n)}else{s=q.b +s.toString +if((s&32)!==0||(s&16)!==0)$.bC().mh(p,B.jV,n) +else $.bC().mh(p,B.jX,n)}}}, +aj(){var s,r=this.c.p3.a +r===$&&A.b() +A.N(r.style,"overflow","") +r=this.x +s=r.style +A.N(s,"position","absolute") +A.N(s,"transform-origin","0 0 0") +A.N(s,"pointer-events","none") +s=this.a +s===$&&A.b() +s.append(r)}, +i0(a){var s,r,q,p=this +p.mJ(0) +p.c.k3.r.push(new A.aQv(p)) +if(p.y==null){s=p.a +s===$&&A.b() +A.N(s.style,"touch-action","none") +p.a3s() +r=new A.aQw(p) +p.w=r +q=$.cQ;(q==null?$.cQ=A.fE():q).w.push(r) +r=A.d6(new A.aQx(p)) +p.y=r +A.eg(s,"scroll",r,null)}}, +ga2N(){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.d.aA(s.scrollTop)}else{s===$&&A.b() +return B.d.aA(s.scrollLeft)}}, +a5R(){var s,r,q,p,o=this,n="transform",m=o.c,l=m.y +if(l==null){$.zW().$1("Warning! the rect attribute of semanticsObject is null") +return}s=m.b +s.toString +s=(s&32)!==0||(s&16)!==0 +r=o.x +q=l.d-l.b +p=l.c-l.a +if(s){s=B.d.dZ(q) +r=r.style +A.N(r,n,"translate(0px,"+(s+10)+"px)") +A.N(r,"width",""+B.d.aa(p)+"px") +A.N(r,"height","10px") +r=o.a +r===$&&A.b() +r.scrollTop=10 +m.p4=o.z=B.d.aA(r.scrollTop) +m.R8=0}else{s=B.d.dZ(p) +r=r.style +A.N(r,n,"translate("+(s+10)+"px,0px)") +A.N(r,"width","10px") +A.N(r,"height",""+B.d.aa(q)+"px") +q=o.a +q===$&&A.b() +q.scrollLeft=10 +q=B.d.aA(q.scrollLeft) +o.z=q +m.p4=0 +m.R8=q}}, +a3s(){var s,r=this,q="overflow-y",p="overflow-x",o=$.cQ +switch((o==null?$.cQ=A.fE():o).f.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.N(s.style,q,"scroll")}else{s===$&&A.b() +A.N(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.N(s.style,q,"hidden")}else{s===$&&A.b() +A.N(s.style,p,"hidden")}break}}, +m(){var s,r,q,p=this +p.Ak() +s=p.a +s===$&&A.b() +r=s.style +r.removeProperty("overflowY") +r.removeProperty("overflowX") +r.removeProperty("touch-action") +q=p.y +if(q!=null){A.hA(s,"scroll",q,null) +p.y=null}s=p.w +if(s!=null){q=$.cQ +B.b.C((q==null?$.cQ=A.fE():q).w,s) +p.w=null}}, +n4(){var s=this.e +if(s==null)s=null +else{s=s.c.a +s===$&&A.b() +A.eO(s,null) +s=!0}return s===!0}} +A.aQv.prototype={ +$0(){var s=this.a +s.a5R() +s.c.XX()}, +$S:0} +A.aQw.prototype={ +$1(a){this.a.a3s()}, +$S:275} +A.aQx.prototype={ +$1(a){this.a.aIj()}, +$S:5} +A.J5.prototype={ +j(a){var s=A.a([],t.s),r=this.a +if((r&1)!==0)s.push("accessibleNavigation") +if((r&2)!==0)s.push("invertColors") +if((r&4)!==0)s.push("disableAnimations") +if((r&8)!==0)s.push("boldText") +if((r&16)!==0)s.push("reduceMotion") +if((r&32)!==0)s.push("highContrast") +if((r&64)!==0)s.push("onOffSwitchLabels") +return"AccessibilityFeatures"+A.c(s)}, +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.J5&&b.a===this.a}, +gB(a){return B.e.gB(this.a)}, +abS(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.J5((r&64)!==0?s|64:s&4294967231)}, +aQk(a){return this.abS(null,a)}, +aQd(a){return this.abS(a,null)}} +A.a86.prototype={$ibnG:1} +A.a84.prototype={ +gk(a){return this.cy}} +A.l5.prototype={ +D(){return"PrimaryRole."+this.b}} +A.a6h.prototype={ +wB(a,b,c){var s=this,r=s.c,q=A.Mk(s.cp(0),r) +s.a!==$&&A.d1() +s.a=q +q=A.bmg(r,s) +s.e=q +s.jn(q) +s.jn(new A.xu(r,s)) +s.jn(new A.Dd(r,s)) +s.aal(c)}, +cp(a){return A.cm(self.document,"flt-semantics")}, +aj(){}, +aal(a){var s=this,r=new A.a1q(a,s.c,s) +s.f=r +s.jn(r)}, +jn(a){var s=this.d;(s==null?this.d=A.a([],t.VM):s).push(a)}, +i0(a){var s,r,q,p,o=this.d +if(o==null)return +for(s=o.length,r=0;r1)for(p=0;p=0;--p,a1=s){g=l[p] +s=g.k2 +if(!B.b.p(a0,s)){k=g.p3 +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.p1=a2 +q.e.n(0,s,a2)}s=g.p3.a +s===$&&A.b()}a2.p2=l}, +ayT(){var s,r,q=this +if(q.go!==-1)return B.rt +else if(q.id!==0)return B.Nc +else if((q.a&16)!==0)return B.Nb +else{s=q.b +s.toString +if((s&64)!==0||(s&128)!==0)return B.Na +else if(q.gWY())return B.Nd +else{s=q.a +if((s&1)!==0||(s&65536)!==0)return B.rs +else if((s&8)!==0)return B.rr +else{r=q.b +r.toString +if((r&32)!==0||(r&16)!==0||(r&4)!==0||(r&8)!==0)return B.rp +else if((s&2048)!==0)return B.nc +else if((s&4194304)!==0)return B.rq +else return B.ru}}}}, +av9(a){var s,r,q,p=this +switch(a.a){case 3:s=new A.aTX(B.Nb,p) +r=A.Mk(s.cp(0),p) +s.a!==$&&A.d1() +s.a=r +s.aKg() +break +case 1:s=new A.aQo(A.cm(self.document,"flt-semantics-scroll-overflow"),B.rp,p) +s.wB(B.rp,p,B.eY) +break +case 0:s=A.bJr(p) +break +case 2:s=new A.arc(B.rr,p) +s.wB(B.rr,p,B.lF) +s.jn(A.a9g(p,s)) +r=s.a +r===$&&A.b() +q=A.b8("button") +if(q==null)q=t.K.a(q) +r.setAttribute("role",q) +break +case 4:s=new A.as5(A.bS5(p),B.rs,p) +s.wB(B.rs,p,B.eY) +s.jn(A.a9g(p,s)) +break +case 7:s=A.bHo(p) +break +case 6:s=new A.aCv(B.Nd,p) +r=A.Mk(s.cp(0),p) +s.a!==$&&A.d1() +s.a=r +r=A.bmg(p,s) +s.e=r +s.jn(r) +s.jn(new A.xu(p,s)) +s.jn(new A.Dd(p,s)) +s.jn(A.a9g(p,s)) +break +case 8:s=new A.aMM(B.rt,p) +s.wB(B.rt,p,B.eY) +break +case 10:s=new A.aEW(B.rq,p) +s.wB(B.rq,p,B.lF) +s.jn(A.a9g(p,s)) +break +case 5:s=new A.aB9(B.Nc,p) +r=A.Mk(s.cp(0),p) +s.a!==$&&A.d1() +s.a=r +q=A.b8("heading") +if(q==null)q=t.K.a(q) +r.setAttribute("role",q) +break +case 9:s=new A.aAq(B.ru,p) +s.wB(B.ru,p,B.pU) +r=p.b +r.toString +if((r&1)!==0)s.jn(A.a9g(p,s)) +break +default:s=null}return s}, +aMQ(){var s,r,q,p=this,o=p.p3,n=p.ayT(),m=p.p3 +if(m==null)s=null +else{m=m.a +m===$&&A.b() +s=m}if(o!=null)if(o.b===n){o.i0(0) +return}else{o.m() +o=p.p3=null}if(o==null){o=p.p3=p.av9(n) +o.aj() +o.i0(0)}m=p.p3.a +m===$&&A.b() +if(!J.e(s,m)){r=p.ok +if(r!=null){m=p.p3.a +m===$&&A.b() +m.append(r)}q=s==null?null:s.parentElement +if(q!=null){m=p.p3.a +m===$&&A.b() +q.insertBefore(m,s) +s.remove()}}}, +XX(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.p3.a +f===$&&A.b() +f=f.style +s=g.y +A.N(f,"width",A.c(s.c-s.a)+"px") +s=g.y +A.N(f,"height",A.c(s.d-s.b)+"px") +f=g.dy +r=f!=null&&!B.er.ga_(f)?g.Z0():null +f=g.y +q=f.b===0&&f.a===0 +p=g.dx +f=p==null +o=f||A.bk9(p)===B.Pp +if(q&&o&&g.p4===0&&g.R8===0){f=g.p3.a +f===$&&A.b() +A.aR5(f) +if(r!=null)A.aR5(r) +return}n=A.bu("effectiveTransform") +if(!q)if(f){f=g.y +m=f.a +l=f.b +f=A.iv() +f.A0(m,l,0) +n.b=f +k=m===0&&l===0}else{f=new A.dc(new Float32Array(16)) +f.c5(new A.dc(p)) +s=g.y +f.bs(0,s.a,s.b) +n.b=f +k=J.bER(n.b2())}else{if(!o)n.b=new A.dc(p) +k=o}f=g.p3 +if(!k){f=f.a +f===$&&A.b() +f=f.style +A.N(f,"transform-origin","0 0 0") +A.N(f,"transform",A.mr(n.b2().a))}else{f=f.a +f===$&&A.b() +A.aR5(f)}if(r!=null)if(!q||g.p4!==0||g.R8!==0){f=g.y +s=f.a +j=g.R8 +f=f.b +i=g.p4 +h=r.style +A.N(h,"top",A.c(-f+i)+"px") +A.N(h,"left",A.c(-s+j)+"px")}else A.aR5(r)}, +Ul(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.k3.d,p=0;p>>0}p=o.ax +if(n.k1!==p){n.k1=p +n.k4=(n.k4|33554432)>>>0}p=o.cy +if(n.ax!==p){n.ax=p +n.k4=(n.k4|4096)>>>0}p=o.db +if(n.ay!==p){n.ay=p +n.k4=(n.k4|4096)>>>0}p=o.ay +if(n.z!==p){n.z=p +n.k4=(n.k4|1024)>>>0}p=o.ch +if(n.Q!==p){n.Q=p +n.k4=(n.k4|1024)>>>0}p=o.at +if(!J.e(n.y,p)){n.y=p +n.k4=(n.k4|512)>>>0}p=o.id +if(n.dx!==p){n.dx=p +n.k4=(n.k4|65536)>>>0}p=o.z +if(n.r!==p){n.r=p +n.k4=(n.k4|64)>>>0}p=o.c +if(n.b!==p){n.b=p +n.k4=(n.k4|2)>>>0}p=o.f +if(n.c!==p){n.c=p +n.k4=(n.k4|4)>>>0}p=o.r +if(n.d!==p){n.d=p +n.k4=(n.k4|8)>>>0}p=o.x +if(n.e!==p){n.e=p +n.k4=(n.k4|16)>>>0}p=o.y +if(n.f!==p){n.f=p +n.k4=(n.k4|32)>>>0}p=o.Q +if(n.w!==p){n.w=p +n.k4=(n.k4|128)>>>0}p=o.as +if(n.x!==p){n.x=p +n.k4=(n.k4|256)>>>0}p=o.CW +if(n.as!==p){n.as=p +n.k4=(n.k4|2048)>>>0}p=o.cx +if(n.at!==p){n.at=p +n.k4=(n.k4|2048)>>>0}p=o.dx +if(n.ch!==p){n.ch=p +n.k4=(n.k4|8192)>>>0}p=o.dy +if(n.CW!==p){n.CW=p +n.k4=(n.k4|8192)>>>0}p=o.fr +if(n.cx!==p){n.cx=p +n.k4=(n.k4|16384)>>>0}p=o.fx +if(n.cy!==p){n.cy=p +n.k4=(n.k4|16384)>>>0}p=o.fy +if(n.fy!==p){n.fy=p +n.k4=(n.k4|4194304)>>>0}p=o.p1 +if(n.id!==p){n.id=p +n.k4=(n.k4|16777216)>>>0}p=o.go +if(n.db!=p){n.db=p +n.k4=(n.k4|32768)>>>0}p=o.k2 +if(n.fr!==p){n.fr=p +n.k4=(n.k4|1048576)>>>0}p=o.k1 +if(n.dy!==p){n.dy=p +n.k4=(n.k4|524288)>>>0}p=o.k3 +if(n.fx!==p){n.fx=p +n.k4=(n.k4|2097152)>>>0}p=o.w +if(n.go!==p){n.go=p +n.k4=(n.k4|8388608)>>>0}n.aMQ() +p=n.k4 +if((p&512)!==0||(p&65536)!==0||(p&64)!==0)n.XX() +p=n.dy +p=!(p!=null&&!B.er.ga_(p))&&n.go===-1 +m=n.p3 +if(p){p=m.a +p===$&&A.b() +p=p.style +p.setProperty("pointer-events","all","")}else{p=m.a +p===$&&A.b() +p=p.style +p.setProperty("pointer-events","none","")}}for(q=0;q"),n=A.a8(new A.aR(p,o),!0,o.i("B.E")),m=n.length +for(s=0;s=20)return i.d=!0 +if(!B.am1.p(0,a.type))return!0 +if(i.a!=null)return!1 +r=A.bu("activationPoint") +switch(a.type){case"click":r.sfI(new A.IK(a.offsetX,a.offsetY)) +break +case"touchstart":case"touchend":s=t.VA +s=A.jX(new A.QQ(a.changedTouches,s),s.i("B.E"),t.B) +s=A.y(s).y[1].a(J.fT(s.a)) +r.sfI(new A.IK(s.clientX,s.clientY)) +break +case"pointerdown":case"pointerup":r.sfI(new A.IK(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.b2().a-(s+(p-o)/2) +j=r.b2().b-(n+(m-l)/2) +if(k*k+j*j<1){i.d=!0 +i.a=A.bZ(B.bl,new A.aIM(i)) +return!1}return!0}, +afN(){var s,r=this.b=A.cm(self.document,"flt-semantics-placeholder") +A.eg(r,"click",A.d6(new A.aIL(this)),!0) +s=A.b8("button") +if(s==null)s=t.K.a(s) +r.setAttribute("role",s) +s=A.b8("Enable accessibility") +if(s==null)s=t.K.a(s) +r.setAttribute("aria-label",s) +s=r.style +A.N(s,"position","absolute") +A.N(s,"left","0") +A.N(s,"top","0") +A.N(s,"right","0") +A.N(s,"bottom","0") +return r}, +m(){var s=this.b +if(s!=null)s.remove() +this.a=this.b=null}} +A.aIM.prototype={ +$0(){this.a.m() +var s=$.cQ;(s==null?$.cQ=A.fE():s).sOA(!0)}, +$S:0} +A.aIL.prototype={ +$1(a){this.a.NP(a)}, +$S:5} +A.arc.prototype={ +n4(){var s=this.e +if(s==null)s=null +else{s=s.c.a +s===$&&A.b() +A.eO(s,null) +s=!0}return s===!0}, +i0(a){var s,r +this.mJ(0) +s=this.c.VU() +r=this.a +if(s===B.lk){r===$&&A.b() +s=A.b8("true") +if(s==null)s=t.K.a(s) +r.setAttribute("aria-disabled",s)}else{r===$&&A.b() +r.removeAttribute("aria-disabled")}}} +A.a9f.prototype={ +ar3(a,b){var s,r=A.d6(new A.aTP(this,a)) +this.e=r +s=b.a +s===$&&A.b() +A.eg(s,"click",r,null)}, +i0(a){var s,r=this,q=r.f,p=r.b +if(p.VU()!==B.lk){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.b8("") +if(p==null)p=t.K.a(p) +s.setAttribute("flt-tappable",p)}else{s===$&&A.b() +s.removeAttribute("flt-tappable")}}}} +A.aTP.prototype={ +$1(a){$.bq3().aXS(0,a,this.b.k2,this.a.f)}, +$S:5} +A.aRb.prototype={ +VT(a,b,c,d){this.CW=b +this.x=d +this.y=c}, +aNC(a){var s,r,q=this,p=q.ch +if(p===a)return +else if(p!=null)q.lu(0) +q.ch=a +q.c=a.w +q.a8m() +p=q.CW +p.toString +s=q.x +s.toString +r=q.y +r.toString +q.ami(0,p,r,s)}, +lu(a){var s,r,q,p=this +if(!p.b)return +p.b=!1 +p.w=p.r=null +for(s=p.z,r=0;r=this.b)throw A.d(A.a18(b,this,null,null,null)) +return this.a[b]}, +n(a,b,c){if(b>=this.b)throw A.d(A.a18(b,this,null,null,null)) +this.a[b]=c}, +st(a,b){var s,r,q,p=this,o=p.b +if(bo){if(o===0)q=new Uint8Array(b) +else q=p.Qs(b) +B.G.dC(q,0,p.b,p.a) +p.a=q}}p.b=b}, +io(a,b){var s=this,r=s.b +if(r===s.a.length)s.a0j(r) +s.a[s.b++]=b}, +q(a,b){var s=this,r=s.b +if(r===s.a.length)s.a0j(r) +s.a[s.b++]=b}, +Jr(a,b,c,d){A.eu(c,"start") +if(d!=null&&c>d)throw A.d(A.dn(d,c,null,"end",null)) +this.arn(b,c,d)}, +G(a,b){return this.Jr(0,b,0,null)}, +arn(a,b,c){var s,r,q,p=this +if(A.y(p).i("D").b(a))c=c==null?a.length:c +if(c!=null){p.aDI(p.b,a,b,c) +return}for(s=J.ay(a),r=0;s.u();){q=s.gI(s) +if(r>=b)p.io(0,q);++r}if(ro.gt(b)||d>o.gt(b))throw A.d(A.a1("Too few elements")) +s=d-c +r=p.b+s +p.awX(r) +o=p.a +q=a+s +B.G.d5(o,q,p.b+s,o,a) +B.G.d5(p.a,a,q,b,c) +p.b=r}, +awX(a){var s,r=this +if(a<=r.a.length)return +s=r.Qs(a) +B.G.dC(s,0,r.b,r.a) +r.a=s}, +Qs(a){var s=this.a.length*2 +if(a!=null&&ss)throw A.d(A.dn(c,0,s,null,null)) +s=this.a +if(A.y(this).i("pd").b(d))B.G.d5(s,b,c,d.a,e) +else B.G.d5(s,b,c,d,e)}, +dC(a,b,c,d){return this.d5(0,b,c,d,0)}} +A.ags.prototype={} +A.a9O.prototype={} +A.lT.prototype={ +j(a){return A.K(this).j(0)+"("+this.a+", "+A.c(this.b)+")"}} +A.aCV.prototype={ +e_(a){return A.eT(B.ao.b4(B.a7.lw(a)).buffer,0,null)}, +jY(a){if(a==null)return a +return B.a7.ei(0,B.eA.b4(A.dw(a.buffer,0,null)))}} +A.aCX.prototype={ +n2(a){return B.aT.e_(A.C(["method",a.a,"args",a.b],t.N,t.z))}, +m6(a){var s,r,q,p=null,o=B.aT.jY(a) +if(!t.f.b(o))throw A.d(A.bL("Expected method call Map, got "+A.c(o),p,p)) +s=J.a0(o) +r=s.h(o,"method") +q=s.h(o,"args") +if(typeof r=="string")return new A.lT(r,q) +throw A.d(A.bL("Invalid method call: "+A.c(o),p,p))}} +A.aSl.prototype={ +e_(a){var s=A.boe() +this.ih(0,s,!0) +return s.rd()}, +jY(a){var s,r +if(a==null)return null +s=new A.a6z(a) +r=this.mp(0,s) +if(s.b=b.a.byteLength)throw A.d(B.cx) +return this.q0(b.no(0),b)}, +q0(a,b){var s,r,q,p,o,n,m,l,k,j=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.an===$.fS()) +b.b+=4 +s=r +break +case 4:s=b.Oh(0) +break +case 5:q=j.j7(b) +s=A.c0(B.eA.b4(b.qg(q)),16) +break +case 6:b.qs(8) +r=b.a.getFloat64(b.b,B.an===$.fS()) +b.b+=8 +s=r +break +case 7:q=j.j7(b) +s=B.eA.b4(b.qg(q)) +break +case 8:s=b.qg(j.j7(b)) +break +case 9:q=j.j7(b) +b.qs(4) +p=b.a +o=A.aKe(p.buffer,p.byteOffset+b.b,q) +b.b=b.b+4*q +s=o +break +case 10:s=b.Oi(j.j7(b)) +break +case 11:q=j.j7(b) +b.qs(8) +p=b.a +o=A.bn1(p.buffer,p.byteOffset+b.b,q) +b.b=b.b+8*q +s=o +break +case 12:q=j.j7(b) +n=[] +for(p=b.a,m=0;m=p.byteLength)A.V(B.cx) +b.b=l+1 +n.push(j.q0(p.getUint8(l),b))}s=n +break +case 13:q=j.j7(b) +p=t.X +n=A.w(p,p) +for(p=b.a,m=0;m=p.byteLength)A.V(B.cx) +b.b=l+1 +l=j.q0(p.getUint8(l),b) +k=b.b +if(k>=p.byteLength)A.V(B.cx) +b.b=k+1 +n.n(0,l,j.q0(p.getUint8(k),b))}s=n +break +default:throw A.d(B.cx)}return s}, +kn(a,b){var s,r,q +if(b<254)a.b.io(0,b) +else{s=a.b +r=a.c +q=a.d +if(b<=65535){s.io(0,254) +r.setUint16(0,b,B.an===$.fS()) +s.Jr(0,q,0,2)}else{s.io(0,255) +r.setUint32(0,b,B.an===$.fS()) +s.Jr(0,q,0,4)}}}, +j7(a){var s=a.no(0) +switch(s){case 254:s=a.a.getUint16(a.b,B.an===$.fS()) +a.b+=2 +return s +case 255:s=a.a.getUint32(a.b,B.an===$.fS()) +a.b+=4 +return s +default:return s}}} +A.aSo.prototype={ +$2(a,b){var s=this.a,r=this.b +s.ih(0,r,a) +s.ih(0,r,b)}, +$S:79} +A.aSp.prototype={ +m6(a){var s,r,q +a.toString +s=new A.a6z(a) +r=B.e8.mp(0,s) +q=B.e8.mp(0,s) +if(typeof r=="string"&&s.b>=a.byteLength)return new A.lT(r,q) +else throw A.d(B.xv)}, +De(a){var s=A.boe() +s.b.io(0,0) +B.e8.ih(0,s,a) +return s.rd()}, +uN(a,b,c){var s=A.boe() +s.b.io(0,1) +B.e8.ih(0,s,a) +B.e8.ih(0,s,c) +B.e8.ih(0,s,b) +return s.rd()}} +A.aX6.prototype={ +qs(a){var s,r,q=this.b,p=B.e.an(q.b,a) +if(p!==0)for(s=a-p,r=0;r0)b=c +else{$.ja.toString +f=$.dz().d +if(f==null){f=self.window.devicePixelRatio +if(f===0)f=1}b=1/f}f=d==null?a8:A.eM(d.gk(d)) +b0.setProperty("-webkit-text-stroke",A.c(b)+"px "+A.c(f),"")}else if(d!=null){a=A.eM(d.gk(d)) +b0.setProperty("color",a,"")}f=g.cy +a0=f==null?a8:f.gaG(f) +if(a0!=null){a=A.eM(a0.a) +b0.setProperty("background-color",a,"")}a1=g.at +if(a1!=null){f=B.d.dv(a1) +b0.setProperty("font-size",""+f+"px","")}f=g.f +if(f!=null){a=A.bpo(f.a) +b0.setProperty("font-weight",a,"")}f=A.biv(g.y) +f.toString +b0.setProperty("font-family",f,"") +f=g.ax +if(f!=null)b0.setProperty("letter-spacing",A.c(f)+"px","") +f=g.ay +if(f!=null)b0.setProperty("word-spacing",A.c(f)+"px","") +f=g.b +a2=g.dx +if(a2!=null){a=A.bUb(a2) +b0.setProperty("text-shadow",a,"")}if(f!=null){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.c(A.bSp(e)) +a4=f.length===0?a8:f.charCodeAt(0)==0?f:f +if(a4!=null){f=$.bH() +p=f.d +if(p===$){e=self.window.navigator.vendor +p=f.b +if(p===$){p=self.window.navigator.userAgent +f.b!==$&&A.aH() +f.b=p}a3=p +n=f.D2(e,a3.toLowerCase()) +f.d!==$&&A.aH() +f.d=n +p=n}f=p +if(f===B.aL){f=h.style +f.setProperty("-webkit-text-decoration",a4,"")}else b0.setProperty("text-decoration",a4,"") +a5=g.c +if(a5!=null){a=A.eM(a5.gk(a5)) +b0.setProperty("text-decoration-color",a,"")}}}a6=g.as +if(a6!=null&&a6.length!==0){a=A.bSN(a6) +b0.setProperty("font-variation-settings",a,"")}g=j.ah5() +f=g.a +e=g.b +a3=h.style +a3.setProperty("position","absolute","") +a3.setProperty("top",A.c(e)+"px","") +a3.setProperty("left",A.c(f)+"px","") +a3.setProperty("width",A.c(g.c-f)+"px","") +a3.setProperty("line-height",A.c(g.d-e)+"px","") +h.append(self.document.createTextNode(i)) +a9.append(h)}++q}return a9}, +O8(){return this.geF().O8()}, +YK(a,b,c,d){return this.geF().aiL(a,b,c,d)}, +YJ(a,b,c){return this.YK(a,b,c,B.fT)}, +fe(a){return this.geF().fe(a)}, +aiP(a){return this.geF().aiO(a)}, +YQ(a){var s,r,q,p,o,n,m,l,k,j=this.Hh(a,0,this.geF().y.length) +if(j==null)return null +s=this.geF().y[j] +r=s.aiM(a) +if(r==null)return null +for(q=s.x,p=q.length,o=r.a,n=r.b,m=0;m") +return A.a8(new A.ad(s,new A.arV(),r),!0,r.i("aN.E"))}, +YX(a){return 0<=a&&ab)if(a>=q.geF().y[b].b){s=c=q.geF().y[b].gvS()?null:b +r=B.e.cn(b+c,2) +s=q.Hh(a,r,c) +return s==null?q.Hh(a,b,r):s}, +m(){}} +A.arV.prototype={ +$1(a){return a.a}, +$S:748} +A.xW.prototype={ +gd0(a){return this.a}, +gbV(a){return this.c}} +A.CO.prototype={$ixW:1, +gd0(a){return this.f}, +gbV(a){return this.w}} +A.DM.prototype={ +Y3(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=b.a +if(a==null){a=b.gQd(b) +s=b.gQz() +r=b.gQA() +q=b.gQB() +p=b.gQC() +o=b.gRk(b) +n=b.gRi(b) +m=b.gTK() +l=b.gRe(b) +k=b.gRf() +j=b.gRg() +i=b.gRj() +h=b.gRh(b) +g=b.gSi(b) +f=b.gUn(b) +e=b.gPn(b) +d=b.gSh() +c=b.gSm() +f=b.a=A.bsV(b.gPN(b),a,s,r,q,p,l,k,j,h,n,i,o,b.gHk(),e,d,g,c,b.gTu(),m,f) +a=f}return a}} +A.Xk.prototype={ +gQd(a){var s=this.c.a +if(s==null)if(this.gHk()==null){s=this.b +s=s.gQd(s)}else s=null +return s}, +gQz(){var s=this.c.b +return s==null?this.b.gQz():s}, +gQA(){var s=this.c.c +return s==null?this.b.gQA():s}, +gQB(){var s=this.c.d +return s==null?this.b.gQB():s}, +gQC(){var s=this.c.e +return s==null?this.b.gQC():s}, +gRk(a){var s=this.c.f +if(s==null){s=this.b +s=s.gRk(s)}return s}, +gRi(a){var s=this.b +s=s.gRi(s) +return s}, +gTK(){var s=this.c.w +return s==null?this.b.gTK():s}, +gRf(){var s=this.c.z +return s==null?this.b.gRf():s}, +gRg(){var s=this.b.gRg() +return s}, +gRj(){var s=this.c.as +return s==null?this.b.gRj():s}, +gRh(a){var s=this.c.at +if(s==null){s=this.b +s=s.gRh(s)}return s}, +gSi(a){var s=this.c.ax +if(s==null){s=this.b +s=s.gSi(s)}return s}, +gUn(a){var s=this.c.ay +if(s==null){s=this.b +s=s.gUn(s)}return s}, +gPn(a){var s=this.c.ch +if(s===0)s=null +else if(s==null){s=this.b +s=s.gPn(s)}return s}, +gSh(){var s=this.c.CW +return s==null?this.b.gSh():s}, +gSm(){var s=this.c.cx +return s==null?this.b.gSm():s}, +gPN(a){var s=this.c.cy +if(s==null){s=this.b +s=s.gPN(s)}return s}, +gHk(){var s=this.c.db +return s==null?this.b.gHk():s}, +gTu(){var s=this.c.dx +return s==null?this.b.gTu():s}, +gRe(a){var s=this.c +if(s.x)s=s.y +else{s=this.b +s=s.gRe(s)}return s}} +A.a7q.prototype={ +gQd(a){return null}, +gQz(){return null}, +gQA(){return null}, +gQB(){return null}, +gQC(){return null}, +gRk(a){return this.b.c}, +gRi(a){return this.b.d}, +gTK(){return null}, +gRe(a){var s=this.b.f +return s==null?"sans-serif":s}, +gRf(){return null}, +gRg(){return null}, +gRj(){return null}, +gRh(a){var s=this.b.r +return s==null?14:s}, +gSi(a){return null}, +gUn(a){return null}, +gPn(a){return this.b.w}, +gSh(){return null}, +gSm(){return this.b.Q}, +gPN(a){return null}, +gHk(){return null}, +gTu(){return null}} +A.arU.prototype={ +gQx(){var s=this.d,r=s.length +return r===0?this.e:s[r-1]}, +gaZo(){return this.f}, +aan(a,b,c,d,e){var s,r=this,q=r.a,p=$.bEo() +p=q.a+=p +s=r.gQx().Y3() +r.a96(s);++r.f +r.r.push(1) +q=e==null?b:e +r.c.push(new A.CO(s,p.length,a,b,c,q))}, +aNY(a,b,c){return this.aan(a,b,c,null,null)}, +ze(a){this.d.push(new A.Xk(this.gQx(),t.Q4.a(a)))}, +cV(){var s=this.d +if(s.length!==0)s.pop()}, +Cg(a){var s=this,r=s.a.a+=a,q=s.gQx().Y3() +s.a96(q) +s.c.push(new A.xW(q,r.length))}, +a96(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.m.a!==q}else q=!1 +if(q){o.w=!1 +return}p=a.as +if(p!=null&&p.length!==0){o.w=!1 +return}}, +cL(){var s,r=this,q=r.c +if(q.length===0)q.push(new A.xW(r.e.Y3(),0)) +s=r.a.a +return new A.Xe(q,r.b,s.charCodeAt(0)==0?s:s,r.w)}} +A.aBF.prototype={ +M3(a){return this.aWE(a)}, +aWE(a0){var s=0,r=A.n(t.S7),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$M3=A.j(function(a1,a2){if(a1===1)return A.k(a2,r) +while(true)switch(s){case 0:b=A.a([],t.Rh) +for(o=a0.a,n=o.length,m=0;m")) +b.u() +e=A.bSa(e) +d=A.af(e) +s=new J.di(e,e.length,d.i("di<1>")) +s.u() +e=this.b +r=A.af(e) +q=new J.di(e,e.length,r.i("di<1>")) +q.u() +p=b.d +if(p==null)p=c.c.a(p) +o=s.d +if(o==null)o=d.c.a(o) +n=q.d +if(n==null)n=r.c.a(n) +for(e=c.c,d=d.c,r=r.c,m=0;!0;m=k){c=p.b +l=o.b +k=Math.min(c,Math.min(l,n.gbV(n))) +j=c-k +i=j===0?p.c:B.a_ +h=k-m +f.push(A.bmH(m,k,i,o.c,o.d,n,A.vR(p.d-j,0,h),A.vR(p.e-j,0,h))) +if(c===k){g=b.u() +if(g){p=b.d +if(p==null)p=e.a(p)}}else g=!1 +if(l===k)if(s.u()){o=s.d +if(o==null)o=d.a(o) +g=!0}if(n.gbV(n)===k)if(q.u()){n=q.d +if(n==null)n=r.a(n) +g=!0}if(!g)break}return f}} +A.b_c.prototype={ +gB(a){var s=this +return A.a4(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.lR&&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.lR.prototype={ +gt(a){return this.b-this.a}, +gWX(){return this.b-this.a===this.w}, +gpM(){return this.f instanceof A.CO}, +Oo(a){return B.c.R(a.c,this.a,this.b-this.r)}, +ku(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.bmH(i,b,B.a_,m,l,k,q-p,o-n),A.bmH(b,s,j.c,m,l,k,p,n)],t.cN)}, +j(a){var s=this +return B.auW.j(0)+"("+s.a+", "+s.b+", "+s.c.j(0)+", "+A.c(s.d)+")"}} +A.b4I.prototype={ +FT(a,b,c,d,e){var s=this +s.nV$=a +s.ro$=b +s.rp$=c +s.rq$=d +s.fq$=e}} +A.b4J.prototype={ +gkc(a){var s,r,q=this,p=q.fi$ +p===$&&A.b() +s=q.n3$ +if(p.y===B.i){s===$&&A.b() +p=s}else{s===$&&A.b() +r=q.fq$ +r===$&&A.b() +r=p.a.f-(s+(r+q.fs$)) +p=r}return p}, +grX(a){var s,r=this,q=r.fi$ +q===$&&A.b() +s=r.n3$ +if(q.y===B.i){s===$&&A.b() +q=r.fq$ +q===$&&A.b() +q=s+(q+r.fs$)}else{s===$&&A.b() +q=q.a.f-s}return q}, +aWm(a){var s,r,q=this,p=q.fi$ +p===$&&A.b() +s=p.f +if(q.b>p.c-s)return +r=q.w +if(r===0)return +q.fs$=(a-p.a.f)/(p.r-s)*r}} +A.b4H.prototype={ +ga8y(){var s,r,q,p,o,n,m,l,k=this,j=k.L5$ +if(j===$){s=k.fi$ +s===$&&A.b() +r=k.gkc(0) +q=k.fi$.a +p=k.ro$ +p===$&&A.b() +o=k.grX(0) +n=k.fi$ +m=k.rp$ +m===$&&A.b() +l=k.d +l.toString +k.L5$!==$&&A.aH() +j=k.L5$=new A.hO(s.a.r+r,q.w-p,q.r+o,n.a.w+m,l)}return j}, +ah5(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.fi$ +h===$&&A.b() +if(i.b>h.c-h.f){s=i.d +s.toString +h=h.a.r +if(s===B.i){s=i.gkc(0) +r=i.fi$.a +q=i.ro$ +q===$&&A.b() +p=i.grX(0) +o=i.fq$ +o===$&&A.b() +n=i.fs$ +m=i.rq$ +m===$&&A.b() +l=i.fi$ +k=i.rp$ +k===$&&A.b() +j=i.d +j.toString +j=new A.hO(h+s,r.w-q,r.r+p-(o+n-m),l.a.w+k,j) +h=j}else{s=i.gkc(0) +r=i.fq$ +r===$&&A.b() +q=i.fs$ +p=i.rq$ +p===$&&A.b() +o=i.fi$.a +n=i.ro$ +n===$&&A.b() +m=i.grX(0) +l=i.fi$ +k=i.rp$ +k===$&&A.b() +j=i.d +j.toString +j=new A.hO(h+s+(r+q-p),o.w-n,o.r+m,l.a.w+k,j) +h=j}return h}return i.ga8y()}, +EK(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.ga8y() +if(r)q=0 +else{r=j.nV$ +r===$&&A.b() +r.suA(j.f) +r=j.nV$ +p=$.zX() +o=r.c +q=A.vV(p,r.a.c,s,b,o.gd0(o).ax)}s=j.b-j.r +if(a>=s)n=0 +else{r=j.nV$ +r===$&&A.b() +r.suA(j.f) +r=j.nV$ +p=$.zX() +o=r.c +n=A.vV(p,r.a.c,a,s,o.gd0(o).ax)}s=j.d +s.toString +if(s===B.i){m=j.gkc(0)+q +l=j.grX(0)-n}else{m=j.gkc(0)+n +l=j.grX(0)-q}s=j.fi$ +s===$&&A.b() +s=s.a +r=s.r +s=s.w +p=j.ro$ +p===$&&A.b() +o=j.rp$ +o===$&&A.b() +k=j.d +k.toString +return new A.hO(r+m,s-p,r+l,s+o,k)}, +b0f(){return this.EK(null,null)}, +ajz(a){var s,r,q,p,o,n,m,l,k,j=this +a=j.aEE(a) +s=j.a +r=j.b-j.r +q=r-s +if(q===0)return new A.b_(s,B.q) +if(q===1){p=j.fq$ +p===$&&A.b() +return am){n=q+1 +n=p===n?null:new A.b3(n,p)}else n=new A.b3(q,p) +return n}, +Rp(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,a5=this,a6=null,a7=a5.fi$ +a7===$&&A.b() +s=a7.gmB() +a7=s[a9] +r=s[b0] +q=a5.EK(r,a7) +p=a9+1 +if(p===b0)return new A.q2(new A.I(q.a,q.b,q.c,q.d),new A.cW(a7,r),q.e) +o=q.a +n=a6 +m=q.c +n=m +l=o +if(lMath.abs(a8-B.d.iv(a8,h,p.c))?j:i}g=q.e +f=a8<=l +$label0$0:{e=B.i===g +d=e +c=a6 +b=a6 +if(d){a7=f +b=a7 +c=b}else a7=!1 +a=!a7 +a0=a6 +a1=a6 +if(a){a0=B.ae===g +a2=a0 +if(a2){if(d){a7=b +a3=d}else{a7=f +b=a7 +a3=!0}a1=!1===a7 +a7=a1}else{a3=d +a7=!1}}else{a3=d +a2=!1 +a7=!0}if(a7){a7=new A.cW(s[a9],s[p]) +break $label0$0}if(e)if(a2)a7=a1 +else{if(a3)a7=b +else{a7=f +b=a7 +a3=!0}a1=!1===a7 +a7=a1}else a7=!1 +if(!a7){if(a)a7=a0 +else{a0=B.ae===g +a7=a0}if(a7)if(d)a7=c +else{c=!0===(a3?b:f) +a7=c}else a7=!1}else a7=!0 +if(a7){a7=new A.cW(s[b0-1],s[b0]) +break $label0$0}a7=a6}r=a7.a +a4=a5.EK(a7.b,r) +return new A.q2(new A.I(a4.a,a4.b,a4.c,a4.d),a7,a4.e)}, +YL(a){var s,r=this.gOu(),q=r.a,p=null,o=r.b +p=o +s=q +return this.Rp(a,s,p)}} +A.J2.prototype={ +gWX(){return!1}, +gpM(){return!1}, +Oo(a){var s=a.b.z +s.toString +return s}, +ku(a,b){throw A.d(A.ae("Cannot split an EllipsisFragment"))}} +A.DZ.prototype={ +gZS(){var s=this.Q +if(s===$){s!==$&&A.aH() +s=this.Q=new A.a8R(this.a)}return s}, +MX(a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1=this,a2=a3.a +a1.b=a2 +a1.c=0 +a1.d=null +a1.f=a1.e=0 +a1.x=!1 +s=a1.y +B.b.V(s) +r=a1.a +q=A.bu_(r,a1.gZS(),0,A.a([],t.cN),0,a2) +p=a1.as +if(p===$){p!==$&&A.aH() +p=a1.as=new A.aEQ(r.a,r.c)}o=p.Lq() +B.b.az(o,a1.gZS().gaXc()) +$label0$0:for(n=0;nq.c;){if(q.gaP7()){q.aVG() +s.push(q.cL()) +a1.x=!0 +break $label0$0}if(q.gaW1())q.b_W() +else q.aTE() +n+=q.aOj(o,n+1) +s.push(q.cL()) +q=q.afa()}a2=q.a +if(a2.length!==0){a2=B.b.gY(a2).c +a2=a2===B.f0||a2===B.ee}else a2=!1 +if(a2){s.push(q.cL()) +q=q.afa()}}a2=r.b +l=a2.e +if(l!=null&&s.length>l){a1.x=!0 +B.b.q1(s,l,s.length)}for(r=s.length,k=1/0,j=-1/0,i=0;ij)j=c}a1.z=new A.I(k,0,j,a1.c) +if(r!==0)if(isFinite(a1.b)&&a2.a===B.k7)for(n=0;n=d;--s){r=p[s] +r.n3$=e+o +if(r.d==null)r.d=a +q=r.fq$ +q===$&&A.b() +o+=q+r.fs$}return o}, +O8(){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.b_(j.c-j.e,B.aW) +q=s-r +for(s=j.x,r=s.length,p=0;p=r+(q.gkc(0)+q.grX(0))/2 +break +case 0:r=s<=r+(q.gkc(0)+q.grX(0))/2 +break +default:r=i}else r=n +n=r}}l=q.YL(s) +if(n)return l +switch(q.d.a){case 1:r=!0 +break +case 0:r=!1 +break +default:r=i}p=q.fi$ +p===$&&A.b() +r=p.aPE(q,r) +k=r==null?i:r.YL(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}, +a37(a){var s,r,q,p=this.y,o=p.length +if(o===0)return null +for(s=0;s1 +return this.as>0}, +ga_(a){return this.a.length===0}, +gbC(a){return this.a.length!==0}, +gaO8(){var s=this.c-this.w,r=this.d.b,q=r.a +switch((q==null?B.bn:q).a){case 2:return s/2 +case 1:return s +case 4:r=r.b +return(r==null?B.i:r)===B.ae?s:0 +case 5:r=r.b +return(r==null?B.i:r)===B.ae?0:s +default:return 0}}, +gaP7(){var s,r=this.d.b +if(r.z==null)return!1 +s=r.e +return s==null||s===this.f+1}, +gatG(){var s=this.a +if(s.length!==0){s=B.b.gY(s).c +s=s===B.f0||s===B.ee}else s=!1 +if(s)return!1 +s=this.b +s=s==null?null:s.length!==0 +if(s===!0)return!1 +return!0}, +aai(a){var s=this +s.Ja(a) +if(a.c!==B.a_)s.Q=s.a.length +B.b.q(s.a,a)}, +Ja(a){var s,r=this,q=a.w +r.at=r.at+q +if(a.gWX())r.ax+=q +else{r.ax=q +q=r.x +s=a.rq$ +s===$&&A.b() +r.w=q+s}q=r.x +s=a.fq$ +s===$&&A.b() +r.x=q+(s+a.fs$) +if(a.gpM())r.asc(a) +if(a.c!==B.a_)++r.as +q=r.y +s=a.ro$ +s===$&&A.b() +r.y=Math.max(q,s) +s=r.z +q=a.rp$ +q===$&&A.b() +r.z=Math.max(s,q)}, +asc(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.rq$ +q===$&&A.b() +p=a.fq$ +p===$&&A.b() +a.FT(n.e,s,r,q,p+a.fs$)}, +By(){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.gY(s) +if(q.gpM()){if(r){p=g.b +p.toString +B.b.rF(p,0,B.b.iG(s)) +g.By()}return}p=g.e +p.suA(q.f) +o=g.x +n=q.fq$ +n===$&&A.b() +m=q.fs$ +l=q.b-q.r +k=p.adx(q.a,l,r,b-(o-(n+m))) +if(k===l)return +B.b.iG(s) +g.By() +j=q.ku(0,k) +i=B.b.gW(j) +if(i!=null){p.Xe(i) +g.aai(i)}h=B.b.gY(j) +if(h!=null){p.Xe(h) +s=g.b +s.toString +B.b.rF(s,0,h)}}, +aTE(){return this.ady(!1,null)}, +aVG(){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.suA(B.b.gY(r).f) +q=$.zX() +p=f.length +o=A.vV(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.gY(r) +j=k.fq$ +j===$&&A.b() +k=l-(j+k.fs$) +l=k}else l=0 +if(!(l>m))break +l=g.b +l.toString +B.b.rF(l,0,B.b.iG(r)) +g.By() +s.suA(B.b.gY(r).f) +o=A.vV(q,f,0,p,null) +m=n-o}i=B.b.gY(r) +g.ady(!0,m) +f=g.gad0() +h=new A.J2($,$,$,$,$,$,$,$,$,0,B.ee,null,B.pK,i.f,0,0,f,f) +f=i.ro$ +f===$&&A.b() +r=i.rp$ +r===$&&A.b() +h.FT(s,f,r,o,o) +g.aai(h)}, +b_W(){var s,r=this.a,q=r.length,p=q-2 +for(;r[p].c===B.a_;)--p +s=p+1 +A.dL(s,q,q,null,null) +this.b=A.fc(r,s,q,A.af(r).c).cJ(0) +B.b.q1(r,s,r.length) +this.By()}, +aOj(a,b){var s,r=this,q=r.a,p=b +while(!0){s=!1 +if(r.gatG())if(p1;){p=B.e.cn(q+r,2) +o=$.zX() +n=this.c +m=A.vV(o,s,a,p,n.gd0(n).ax) +if(md?q:p +r=p}}return q===a&&!c?q+1:q}} +A.tT.prototype={ +D(){return"LineBreakType."+this.b}} +A.ayp.prototype={ +Lq(){return A.bSc(this.a)}} +A.aVr.prototype={ +Lq(){var s=this.a +return A.bUV(s,s,this.b)}} +A.tS.prototype={ +gB(a){var s=this +return A.a4(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.tS&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.e===s.e}, +j(a){return"LineBreakFragment("+this.a+", "+this.b+", "+this.c.j(0)+")"}} +A.bhr.prototype={ +$2(a,b){var s=this,r=a===B.ee?s.b.length:s.a.f,q=s.a,p=q.a +if(p===B.hr)++q.d +else if(p===B.jg||p===B.lM||p===B.lQ){++q.e;++q.d}if(a===B.a_)return +p=q.c +s.c.push(new A.tS(a,q.e,q.d,p,r)) +q.c=q.f +q.d=q.e=0 +q.a=q.b=null}, +$S:891} +A.a7w.prototype={ +m(){this.a.remove()}} +A.aUu.prototype={ +aT(a,b){var s,r,q,p,o,n,m,l=this.a.geF().y +for(s=l.length,r=0;r=1){o=B.b.cK(s,0,r-1) +n=o +if(t.LX.b(n)){q=s[r-1] instanceof A.J2 +p=o}}if(!q){q=t.LX.b(s) +if(q)p=s}else q=!0 +if(q){q=(p&&B.b).gY(p).b +break $label0$0}q=null}m.d!==$&&A.aH() +l=m.d=q}return l}, +axj(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}, +aiM(a){var s,r=this +if(a>=r.gvS()||r.gmB().length===0)return null +s=r.Ot(a,0,r.gmB().length) +return new A.cW(r.gmB()[s],r.gmB()[s+1])}, +aPE(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.gvS())break +if(o.gOu()==null)continue +if(b){n=a.fi$ +n===$&&A.b() +m=a.n3$ +if(n.y===B.i){m===$&&A.b() +n=m}else{m===$&&A.b() +l=a.fq$ +l===$&&A.b() +l=n.a.f-(m+(l+a.fs$)) +n=l}m=o.fi$ +m===$&&A.b() +l=o.n3$ +if(m.y===B.i){l===$&&A.b() +m=o.fq$ +m===$&&A.b() +m=l+(m+o.fs$)}else{l===$&&A.b() +m=m.a.f-l}k=n-m}else{n=o.fi$ +n===$&&A.b() +m=o.n3$ +if(n.y===B.i){m===$&&A.b() +n=m}else{m===$&&A.b() +l=o.fq$ +l===$&&A.b() +l=n.a.f-(m+(l+o.fs$)) +n=l}m=a.fi$ +m===$&&A.b() +l=a.n3$ +if(m.y===B.i){l===$&&A.b() +m=a.fq$ +m===$&&A.b() +m=l+(m+a.fs$)}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.SE(k,o) +break $label0$1}if(k===0)return o +continue}}return q==null?null:q.b}, +aPD(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null +if(g.gmB().length===0)return f +for(s=g.x,r=s.length,q=f,p=0,o=0;o=g.gvS())break +l=n.b +if(l-m===0)continue +for(;m>g.gmB()[p];)++p +if(g.gmB()[p]>=l)continue +m=n.fi$ +m===$&&A.b() +l=m.y===B.i +k=n.n3$ +if(l){k===$&&A.b() +j=k}else{k===$&&A.b() +j=n.fq$ +j===$&&A.b() +j=m.a.f-(k+(j+n.fs$))}if(aj){if(l){k===$&&A.b() +m=n.fq$ +m===$&&A.b() +m=k+(m+n.fs$)}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.SE(i,n)}return q==null?f:q.b}, +gB(a){var s=this +return A.a4(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,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.oE)if(b.a.l(0,r.a))if(b.b===r.b)if(b.c===r.c)if(b.e===r.e)if(b.f===r.f)if(b.r===r.r)if(b.w===r.w)if(b.x===r.x)s=b.y===r.y +return s}, +j(a){return B.av0.j(0)+"("+this.b+", "+this.c+", "+this.a.j(0)+")"}} +A.J6.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.J6&&b.a==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&&J.e(b.x,s.x)&&J.e(b.y,s.y)&&b.z==s.z&&J.e(b.Q,s.Q)}, +gB(a){var s=this +return A.a4(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)}, +j(a){return this.dQ(0)}} +A.J8.prototype={ +gacU(){var s=this.y +return s.length===0?"sans-serif":s}, +gace(){var s,r,q,p,o=this,n=o.dy +if(n==null){n=o.f +s=o.at +r=o.gacU() +q=n==null?null:A.bpo(n.a) +if(q==null)q="normal" +p=B.d.dv(s==null?14:s) +n=A.biv(r) +n.toString +n=o.dy="normal "+q+" "+p+"px "+n}return n}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.J8&&J.e(b.a,s.a)&&J.e(b.b,s.b)&&J.e(b.c,s.c)&&b.d==s.d&&b.f==s.f&&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.e(b.cx,s.cx)&&b.cy==s.cy&&b.db==s.db&&A.Vy(b.dx,s.dx)&&A.Vy(b.z,s.z)&&A.Vy(b.Q,s.Q)&&A.Vy(b.as,s.as)}, +gB(a){var s=this,r=null,q=s.dx,p=s.as,o=s.z,n=o==null?r:A.cj(o),m=q==null?r:A.cj(q) +return A.a4(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.a4(r,p==null?r:A.cj(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))}, +j(a){return this.dQ(0)}} +A.J7.prototype={ +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.J7)if(b.a==r.a)if(b.c==r.c)if(b.d==r.d)if(b.x==r.x)if(b.f==r.f)s=A.Vy(b.b,r.b) +return s}, +gB(a){var s=this,r=s.b,q=r!=null?A.cj(r):null +return A.a4(s.a,q,s.c,s.d,s.e,s.x,s.f,s.r,!0,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}} +A.aMi.prototype={} +A.OR.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.OR&&b.gB(0)===this.gB(0)}, +gB(a){var s,r=this,q=r.f +if(q===$){s=A.a4(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.aH() +r.f=s +q=s}return q}} +A.aTT.prototype={} +A.a9s.prototype={ +gaD9(){var s,r,q,p,o,n,m,l,k,j=this,i=j.d +if(i===$){s=A.cm(self.document,"div") +r=s.style +A.N(r,"visibility","hidden") +A.N(r,"position","absolute") +A.N(r,"top","0") +A.N(r,"left","0") +A.N(r,"display","flex") +A.N(r,"flex-direction","row") +A.N(r,"align-items","baseline") +A.N(r,"margin","0") +A.N(r,"border","0") +A.N(r,"padding","0") +r=j.e +q=j.a +p=q.a +o=r.a +n=o.style +A.N(n,"font-size",""+B.d.dv(q.b)+"px") +m=A.biv(p) +m.toString +A.N(n,"font-family",m) +l=q.c +if(l==null)k=p==="FlutterTest"?1:null +else k=l +if(k!=null)A.N(n,"line-height",B.d.j(k)) +r.b=null +A.N(o.style,"white-space","pre") +r.b=null +A.blO(o," ") +s.append(o) +r.b=null +j.b.a.append(s) +j.d!==$&&A.aH() +j.d=s +i=s}return i}, +gCi(a){var s,r=this,q=r.f +if(q===$){q=r.c +if(q===$){s=A.cm(self.document,"div") +r.gaD9().append(s) +r.c!==$&&A.aH() +r.c=s +q=s}q=q.getBoundingClientRect().bottom +r.f!==$&&A.aH() +r.f=q}return q}} +A.Br.prototype={ +D(){return"FragmentFlow."+this.b}} +A.w3.prototype={ +gB(a){var s=this +return A.a4(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.w3&&b.a===s.a&&b.b===s.b&&b.c==s.c&&b.d===s.d}, +j(a){return"BidiFragment("+this.a+", "+this.b+", "+A.c(this.c)+")"}} +A.Qm.prototype={ +D(){return"_ComparisonResult."+this.b}} +A.ex.prototype={ +V9(a){if(athis.b)return B.azF +return B.azE}} +A.rb.prototype={ +Lj(a,b,c){var s=A.Vv(b,c) +return s==null?this.b:this.yJ(s)}, +yJ(a){var s,r,q,p,o=this +if(a==null)return o.b +s=o.c +r=s.h(0,a) +if(r!=null)return r +q=o.ast(a) +p=q===-1?o.b:o.a[q].c +s.n(0,a,p) +return p}, +ast(a){var s,r,q=this.a,p=q.length +for(s=0;s")).az(0,new A.axN(this,r)) +return r}} +A.axN.prototype={ +$1(a){var s=this.a,r=s.b.h(0,a) +r.toString +this.b.push(A.e2(r,"input",new A.axO(s,a,r)))}, +$S:19} +A.axO.prototype={ +$1(a){var s,r=this.a.c,q=this.b +if(r.h(0,q)==null)throw A.d(A.a1("AutofillInfo must have a valid uniqueIdentifier.")) +else{r=r.h(0,q) +r.toString +s=A.bsP(this.c) +$.bC().n8("flutter/textinput",B.c0.n2(new A.lT(u.gP,[0,A.C([r.b,s.ah3()],t.T,t.z)])),A.aon())}}, +$S:5} +A.WJ.prototype={ +aaF(a,b){var s,r,q,p="password",o=this.d,n=this.e,m=globalThis.HTMLInputElement +if(m!=null&&a instanceof m){if(n!=null)a.placeholder=n +s=o==null +if(!s){a.name=o +a.id=o +if(B.c.p(o,p))A.awd(a,p) +else A.awd(a,"text")}r=s?"on":o +a.autocomplete=r}else{m=globalThis.HTMLTextAreaElement +if(m!=null&&a instanceof m){if(n!=null)a.placeholder=n +s=o==null +if(!s){a.name=o +a.id=o}q=A.b8(s?"on":o) +s=q==null?t.K.a(q):q +a.setAttribute("autocomplete",s)}}}, +iX(a){return this.aaF(a,!1)}} +A.DY.prototype={} +A.B3.prototype={ +gMi(){return Math.min(this.b,this.c)}, +gMe(){return Math.max(this.b,this.c)}, +ah3(){var s=this +return A.C(["text",s.a,"selectionBase",s.b,"selectionExtent",s.c,"composingBase",s.d,"composingExtent",s.e],t.N,t.z)}, +gB(a){var s=this +return A.a4(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.K(s)!==J.ah(b))return!1 +return b instanceof A.B3&&b.a==s.a&&b.gMi()===s.gMi()&&b.gMe()===s.gMe()&&b.d===s.d&&b.e===s.e}, +j(a){return this.dQ(0)}, +iX(a){var s,r,q=this,p=globalThis.HTMLInputElement +if(p!=null&&a instanceof p){a.toString +A.bsw(a,q.a) +s=q.gMi() +q=q.gMe() +a.setSelectionRange(s,q)}else{p=globalThis.HTMLTextAreaElement +if(p!=null&&a instanceof p){a.toString +A.bsA(a,q.a) +s=q.gMi() +q=q.gMe() +a.setSelectionRange(s,q)}else{r=a==null?null:A.bHQ(a) +throw A.d(A.ag("Unsupported DOM element type: <"+A.c(r)+"> ("+J.ah(a).j(0)+")"))}}}} +A.aCL.prototype={} +A.a0F.prototype={ +ng(){var s,r=this,q=r.w +if(q!=null){s=r.c +s.toString +q.iX(s)}q=r.d +q===$&&A.b() +if(q.x!=null){r.En() +q=r.e +if(q!=null)q.iX(r.c) +q=r.d.x +q=q==null?null:q.a +q.toString +A.eO(q,!0) +q=r.c +q.toString +A.eO(q,!0)}}} +A.Di.prototype={ +ng(){var s,r=this,q=r.w +if(q!=null){s=r.c +s.toString +q.iX(s)}q=r.d +q===$&&A.b() +if(q.x!=null){r.En() +q=r.c +q.toString +A.eO(q,!0) +q=r.e +if(q!=null){s=r.c +s.toString +q.iX(s)}}}, +DL(){if(this.w!=null)this.ng() +var s=this.c +s.toString +A.eO(s,!0)}} +A.Ii.prototype={ +gn1(){var s=null,r=this.f +if(r==null){r=this.e.a +r.toString +r=this.f=new A.DY(r,"",-1,-1,s,s,s,s)}return r}, +yS(a,b,c){var s,r,q=this,p="none",o="transparent",n=a.b.Kj() +A.awb(n,-1) +q.c=n +q.UI(a) +n=q.c +n.classList.add("flt-text-editing") +s=n.style +A.N(s,"forced-color-adjust",p) +A.N(s,"white-space","pre-wrap") +A.N(s,"align-content","center") +A.N(s,"position","absolute") +A.N(s,"top","0") +A.N(s,"left","0") +A.N(s,"padding","0") +A.N(s,"opacity","1") +A.N(s,"color",o) +A.N(s,"background-color",o) +A.N(s,"background",o) +A.N(s,"caret-color",o) +A.N(s,"outline",p) +A.N(s,"border",p) +A.N(s,"resize",p) +A.N(s,"text-shadow",p) +A.N(s,"overflow","hidden") +A.N(s,"transform-origin","0 0 0") +if($.bH().ge4()===B.fU||$.bH().ge4()===B.aL)n.classList.add("transparentTextEditing") +n=q.r +if(n!=null){r=q.c +r.toString +n.iX(r)}n=q.d +n===$&&A.b() +if(n.x==null){n=q.c +n.toString +A.bhS(n,a.a) +q.Q=!1}q.DL() +q.b=!0 +q.x=c +q.y=b}, +UI(a){var s,r,q,p,o,n=this +n.d=a +s=n.c +if(a.d){s.toString +r=A.b8("readonly") +if(r==null)r=t.K.a(r) +s.setAttribute("readonly",r)}else s.removeAttribute("readonly") +if(a.e){s=n.c +s.toString +r=A.b8("password") +if(r==null)r=t.K.a(r) +s.setAttribute("type",r)}if(a.b.gmf()==="none"){s=n.c +s.toString +r=A.b8("none") +if(r==null)r=t.K.a(r) +s.setAttribute("inputmode",r)}q=A.bIh(a.c) +s=n.c +s.toString +q.aPN(s) +p=a.w +s=n.c +if(p!=null){s.toString +p.aaF(s,!0)}else{s.toString +r=A.b8("off") +if(r==null)r=t.K.a(r) +s.setAttribute("autocomplete",r) +r=n.c +r.toString +A.bSG(r,n.d.a)}o=a.f?"on":"off" +s=n.c +s.toString +r=A.b8(o) +if(r==null)r=t.K.a(r) +s.setAttribute("autocorrect",r)}, +DL(){this.ng()}, +Cb(){var s,r,q=this,p=q.d +p===$&&A.b() +p=p.x +if(p!=null)B.b.G(q.z,p.Cd()) +p=q.z +s=q.c +s.toString +r=q.gDt() +p.push(A.e2(s,"input",r)) +s=q.c +s.toString +p.push(A.e2(s,"keydown",q.gE5())) +p.push(A.e2(self.document,"selectionchange",r)) +r=q.c +r.toString +p.push(A.e2(r,"beforeinput",q.gLr())) +if(!(q instanceof A.Di)){s=q.c +s.toString +p.push(A.e2(s,"blur",q.gLs()))}p=q.c +p.toString +q.Jt(p) +q.N4()}, +Yo(a){var s,r=this +r.w=a +if(r.b)if(r.d$!=null){s=r.c +s.toString +a.iX(s)}else r.ng()}, +Yp(a){var s +this.r=a +if(this.b){s=this.c +s.toString +a.iX(s)}}, +lu(a){var s,r,q,p=this,o=null +p.b=!1 +p.w=p.r=p.f=p.e=null +for(s=p.z,r=0;r=0&&a.c>=0) +else s=!0 +if(s)return +a.iX(this.c)}, +ng(){var s=this.c +s.toString +A.eO(s,!0)}, +En(){var s,r,q=this.d +q===$&&A.b() +q=q.x +q.toString +s=this.c +s.toString +if($.VV().gl7() instanceof A.Di)A.N(s.style,"pointer-events","all") +r=q.a +r.insertBefore(s,q.d) +A.bhS(r,q.f) +this.Q=!0}, +adH(a){var s,r,q=this,p=q.c +p.toString +s=q.aRE(A.bsP(p)) +p=q.d +p===$&&A.b() +if(p.r){q.gn1().r=s.d +q.gn1().w=s.e +r=A.bOf(s,q.e,q.gn1())}else r=null +if(!s.l(0,q.e)){q.e=s +q.f=r +q.x.$2(s,r)}q.f=null}, +aTK(a){var s,r,q,p=this,o=A.dk(a.data),n=A.dk(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.gn1().b="" +p.gn1().d=r}else if(n==="insertLineBreak"){p.gn1().b="\n" +p.gn1().c=r +p.gn1().d=r}else if(o!=null){p.gn1().b=o +p.gn1().c=r +p.gn1().d=r}}}, +aTL(a){var s,r,q,p=a.relatedTarget +if(p!=null){s=$.bC() +r=s.geB().Dr(p) +q=this.c +q.toString +q=r==s.geB().Dr(q) +s=q}else s=!0 +if(s){s=this.c +s.toString +A.eO(s,!0)}}, +aXb(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.c) +s=this.d +if(s.b instanceof A.Lt&&s.c==="TextInputAction.newline")return +a.preventDefault()}}, +VT(a,b,c,d){var s,r=this +r.yS(b,c,d) +r.Cb() +s=r.e +if(s!=null)r.ZA(s) +s=r.c +s.toString +A.eO(s,!0)}, +N4(){var s=this,r=s.z,q=s.c +q.toString +r.push(A.e2(q,"mousedown",new A.aul())) +q=s.c +q.toString +r.push(A.e2(q,"mouseup",new A.aum())) +q=s.c +q.toString +r.push(A.e2(q,"mousemove",new A.aun()))}} +A.aul.prototype={ +$1(a){a.preventDefault()}, +$S:5} +A.aum.prototype={ +$1(a){a.preventDefault()}, +$S:5} +A.aun.prototype={ +$1(a){a.preventDefault()}, +$S:5} +A.auk.prototype={ +$0(){var s,r=this.a +if(J.e(r,self.document.activeElement)){s=this.b +if(s!=null)A.eO(s.ghq().a,!0)}if(this.c)r.remove()}, +$S:0} +A.aBZ.prototype={ +yS(a,b,c){var s,r=this +r.P4(a,b,c) +s=r.c +s.toString +a.b.abC(s) +s=r.d +s===$&&A.b() +if(s.x!=null)r.En() +s=r.c +s.toString +a.y.Zv(s)}, +DL(){A.N(this.c.style,"transform","translate(-9999px, -9999px)") +this.p1=!1}, +Cb(){var s,r,q=this,p=q.d +p===$&&A.b() +p=p.x +if(p!=null)B.b.G(q.z,p.Cd()) +p=q.z +s=q.c +s.toString +r=q.gDt() +p.push(A.e2(s,"input",r)) +s=q.c +s.toString +p.push(A.e2(s,"keydown",q.gE5())) +p.push(A.e2(self.document,"selectionchange",r)) +r=q.c +r.toString +p.push(A.e2(r,"beforeinput",q.gLr())) +r=q.c +r.toString +p.push(A.e2(r,"blur",q.gLs())) +r=q.c +r.toString +q.Jt(r) +r=q.c +r.toString +p.push(A.e2(r,"focus",new A.aC1(q))) +q.as4()}, +Yo(a){var s=this +s.w=a +if(s.b&&s.p1)s.ng()}, +lu(a){var s +this.amh(0) +s=this.ok +if(s!=null)s.S(0) +this.ok=null}, +as4(){var s=this.c +s.toString +this.z.push(A.e2(s,"click",new A.aC_(this)))}, +a7o(){var s=this.ok +if(s!=null)s.S(0) +this.ok=A.bZ(B.bc,new A.aC0(this))}, +ng(){var s,r=this.c +r.toString +A.eO(r,!0) +r=this.w +if(r!=null){s=this.c +s.toString +r.iX(s)}}} +A.aC1.prototype={ +$1(a){this.a.a7o()}, +$S:5} +A.aC_.prototype={ +$1(a){var s=this.a +if(s.p1){s.DL() +s.a7o()}}, +$S:5} +A.aC0.prototype={ +$0(){var s=this.a +s.p1=!0 +s.ng()}, +$S:0} +A.apw.prototype={ +yS(a,b,c){var s,r=this +r.P4(a,b,c) +s=r.c +s.toString +a.b.abC(s) +s=r.d +s===$&&A.b() +if(s.x!=null)r.En() +else{s=r.c +s.toString +A.bhS(s,a.a)}s=r.c +s.toString +a.y.Zv(s)}, +Cb(){var s,r,q=this,p=q.d +p===$&&A.b() +p=p.x +if(p!=null)B.b.G(q.z,p.Cd()) +p=q.z +s=q.c +s.toString +r=q.gDt() +p.push(A.e2(s,"input",r)) +s=q.c +s.toString +p.push(A.e2(s,"keydown",q.gE5())) +p.push(A.e2(self.document,"selectionchange",r)) +r=q.c +r.toString +p.push(A.e2(r,"beforeinput",q.gLr())) +r=q.c +r.toString +p.push(A.e2(r,"blur",q.gLs())) +r=q.c +r.toString +q.Jt(r) +q.N4()}, +ng(){var s,r=this.c +r.toString +A.eO(r,!0) +r=this.w +if(r!=null){s=this.c +s.toString +r.iX(s)}}} +A.azh.prototype={ +yS(a,b,c){var s +this.P4(a,b,c) +s=this.d +s===$&&A.b() +if(s.x!=null)this.En()}, +Cb(){var s,r,q=this,p=q.d +p===$&&A.b() +p=p.x +if(p!=null)B.b.G(q.z,p.Cd()) +p=q.z +s=q.c +s.toString +r=q.gDt() +p.push(A.e2(s,"input",r)) +s=q.c +s.toString +p.push(A.e2(s,"keydown",q.gE5())) +s=q.c +s.toString +p.push(A.e2(s,"beforeinput",q.gLr())) +s=q.c +s.toString +q.Jt(s) +s=q.c +s.toString +p.push(A.e2(s,"keyup",new A.azi(q))) +s=q.c +s.toString +p.push(A.e2(s,"select",r)) +r=q.c +r.toString +p.push(A.e2(r,"blur",q.gLs())) +q.N4()}, +ng(){var s,r=this,q=r.c +q.toString +A.eO(q,!0) +q=r.w +if(q!=null){s=r.c +s.toString +q.iX(s)}q=r.e +if(q!=null){s=r.c +s.toString +q.iX(s)}}} +A.azi.prototype={ +$1(a){this.a.adH(a)}, +$S:5} +A.aU8.prototype={} +A.aUf.prototype={ +ms(a){var s=a.b +if(s!=null&&s!==this.a&&a.c){a.c=!1 +a.gl7().lu(0)}a.b=this.a +a.d=this.b}} +A.aUm.prototype={ +ms(a){var s=a.gl7(),r=a.d +r.toString +s.UI(r)}} +A.aUh.prototype={ +ms(a){a.gl7().ZA(this.a)}} +A.aUk.prototype={ +ms(a){if(!a.c)a.aL5()}} +A.aUg.prototype={ +ms(a){a.gl7().Yo(this.a)}} +A.aUj.prototype={ +ms(a){a.gl7().Yp(this.a)}} +A.aU6.prototype={ +ms(a){if(a.c){a.c=!1 +a.gl7().lu(0)}}} +A.aUc.prototype={ +ms(a){if(a.c){a.c=!1 +a.gl7().lu(0)}}} +A.aUi.prototype={ +ms(a){}} +A.aUe.prototype={ +ms(a){}} +A.aUd.prototype={ +ms(a){}} +A.aUb.prototype={ +ms(a){var s +if(a.c){a.c=!1 +a.gl7().lu(0) +a.gCu(0) +s=a.b +$.bC().n8("flutter/textinput",B.c0.n2(new A.lT("TextInputClient.onConnectionClosed",[s])),A.aon())}if(this.a)A.bXu() +A.bUZ()}} +A.bk_.prototype={ +$2(a,b){var s=t.qr +s=A.jX(new A.zh(b.getElementsByClassName("submitBtn"),s),s.i("B.E"),t.B) +A.y(s).y[1].a(J.fT(s.a)).click()}, +$S:735} +A.aTU.prototype={ +aUN(a,b){var s,r,q,p,o,n,m,l,k=B.c0.m6(a) +switch(k.a){case"TextInput.setClient":s=k.b +s.toString +t.Dn.a(s) +r=J.a0(s) +q=r.h(s,0) +q.toString +A.ds(q) +s=r.h(s,1) +s.toString +p=new A.aUf(q,A.btE(t.xE.a(s))) +break +case"TextInput.updateConfig":this.a.d=A.btE(t.a.a(k.b)) +p=B.TD +break +case"TextInput.setEditingState":p=new A.aUh(A.bsQ(t.a.a(k.b))) +break +case"TextInput.show":p=B.TB +break +case"TextInput.setEditableSizeAndTransform":p=new A.aUg(A.bI4(t.a.a(k.b))) +break +case"TextInput.setStyle":s=t.a.a(k.b) +r=J.a0(s) +o=A.ds(r.h(s,"textAlignIndex")) +n=A.ds(r.h(s,"textDirectionIndex")) +m=A.jU(r.h(s,"fontWeightIndex")) +l=m!=null?A.bpo(m):"normal" +q=A.byi(r.h(s,"fontSize")) +if(q==null)q=null +p=new A.aUj(new A.axv(q,l,A.dk(r.h(s,"fontFamily")),B.a4i[o],B.a8G[n])) +break +case"TextInput.clearClient":p=B.Tw +break +case"TextInput.hide":p=B.Tx +break +case"TextInput.requestAutofill":p=B.Ty +break +case"TextInput.finishAutofillContext":p=new A.aUb(A.Gh(k.b)) +break +case"TextInput.setMarkedTextRect":p=B.TA +break +case"TextInput.setCaretRect":p=B.Tz +break +default:$.bC().iH(b,null) +return}p.ms(this.a) +new A.aTV(b).$0()}} +A.aTV.prototype={ +$0(){$.bC().iH(this.a,B.aT.e_([!0]))}, +$S:0} +A.aBS.prototype={ +gCu(a){var s=this.a +if(s===$){s!==$&&A.aH() +s=this.a=new A.aTU(this)}return s}, +gl7(){var s,r,q,p=this,o=null,n=p.f +if(n===$){s=$.cQ +if((s==null?$.cQ=A.fE():s).b){s=A.bNr(p) +r=s}else{if($.bH().gf9()===B.bM)q=new A.aBZ(p,A.a([],t.Up),$,$,$,o) +else if($.bH().gf9()===B.n6)q=new A.apw(p,A.a([],t.Up),$,$,$,o) +else if($.bH().ge4()===B.aL)q=new A.Di(p,A.a([],t.Up),$,$,$,o) +else q=$.bH().ge4()===B.dG?new A.azh(p,A.a([],t.Up),$,$,$,o):A.bJ5(p) +r=q}p.f!==$&&A.aH() +n=p.f=r}return n}, +aL5(){var s,r,q=this +q.c=!0 +s=q.gl7() +r=q.d +r.toString +s.VT(0,r,new A.aBT(q),new A.aBU(q))}} +A.aBU.prototype={ +$2(a,b){var s,r,q="flutter/textinput",p=this.a +if(p.d.r){p.gCu(0) +p=p.b +s=t.N +r=t.z +$.bC().n8(q,B.c0.n2(new A.lT(u.au,[p,A.C(["deltas",A.a([A.C(["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.aon())}else{p.gCu(0) +p=p.b +$.bC().n8(q,B.c0.n2(new A.lT("TextInputClient.updateEditingState",[p,a.ah3()])),A.aon())}}, +$S:444} +A.aBT.prototype={ +$1(a){var s=this.a +s.gCu(0) +s=s.b +$.bC().n8("flutter/textinput",B.c0.n2(new A.lT("TextInputClient.performAction",[s,a])),A.aon())}, +$S:183} +A.axv.prototype={ +iX(a){var s=this,r=a.style +A.N(r,"text-align",A.bXN(s.d,s.e)) +A.N(r,"font",s.b+" "+A.c(s.a)+"px "+A.c(A.biv(s.c)))}} +A.awP.prototype={ +iX(a){var s=A.mr(this.c),r=a.style +A.N(r,"width",A.c(this.a)+"px") +A.N(r,"height",A.c(this.b)+"px") +A.N(r,"transform",s)}} +A.awQ.prototype={ +$1(a){return A.iD(a)}, +$S:349} +A.Ph.prototype={ +D(){return"TransformKind."+this.b}} +A.dc.prototype={ +c5(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]}, +h(a,b){return this.a[b]}, +n(a,b,c){this.a[b]=c}, +bs(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}, +b0y(a,b){return this.bs(0,b,0)}, +lP(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.lP(0,b,null,null)}, +i2(a,b,c){return this.lP(0,b,c,null)}, +El(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.SH((r*a+q*b+p*c+o)*f,(n*a+m*b+l*c+k)*f,(j*a+i*b+h*c+g)*f)}, +DS(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}, +agR(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}, +A0(a,b,c){var s=this.a +s[14]=c +s[13]=b +s[12]=a}, +hn(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.c5(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}, +e7(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}, +iD(a){var s=new A.dc(new Float32Array(16)) +s.c5(this) +s.e7(0,a) +return s}, +ahe(a){var s=a[0],r=a[1],q=this.a +a[0]=q[0]*s+q[4]*r+q[12] +a[1]=q[1]*s+q[5]*r+q[13]}, +j(a){return this.dQ(0)}} +A.ays.prototype={ +ahd(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.atk.prototype={ +aqG(a,b){var s=this,r=b.bL(new A.atl(s)) +s.d=r +r=A.bVp(new A.atm(s)) +s.c=r +r.observe(s.b)}, +L(a){var s,r=this +r.a_6(0) +s=r.c +s===$&&A.b() +s.disconnect() +s=r.d +s===$&&A.b() +if(s!=null)s.S(0) +r.e.L(0)}, +gafq(a){var s=this.e +return new A.aG(s,A.y(s).i("aG<1>"))}, +Vb(){var s,r=$.dz().d +if(r==null){s=self.window.devicePixelRatio +r=s===0?1:s}s=this.b +return new A.R(s.clientWidth*r,s.clientHeight*r)}, +aby(a,b){return B.ia}} +A.atl.prototype={ +$1(a){this.a.e.q(0,null)}, +$S:56} +A.atm.prototype={ +$2(a,b){var s,r,q,p +for(s=a.$ti,r=new A.ci(a,a.gt(0),s.i("ci")),q=this.a.e,s=s.i("S.E");r.u();){p=r.d +if(p==null)s.a(p) +if(!q.gnz())A.V(q.ns()) +q.jk(null)}}, +$S:415} +A.a_l.prototype={ +L(a){}} +A.a0t.prototype={ +aGw(a){this.c.q(0,null)}, +L(a){var s +this.a_6(0) +s=this.b +s===$&&A.b() +s.b.removeEventListener(s.a,s.c) +this.c.L(0)}, +gafq(a){var s=this.c +return new A.aG(s,A.y(s).i("aG<1>"))}, +Vb(){var s,r,q=A.bu("windowInnerWidth"),p=A.bu("windowInnerHeight"),o=self.window.visualViewport,n=$.dz().d +if(n==null){s=self.window.devicePixelRatio +n=s===0?1:s}if(o!=null)if($.bH().gf9()===B.bM){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.bsI(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.bsL(self.window) +s.toString +p.b=s*n}return new A.R(q.b2(),p.b2())}, +aby(a,b){var s,r,q,p=$.dz().d +if(p==null){s=self.window.devicePixelRatio +p=s===0?1:s}r=self.window.visualViewport +q=A.bu("windowInnerHeight") +if(r!=null)if($.bH().gf9()===B.bM&&!b)q.b=self.document.documentElement.clientHeight*p +else{s=A.bsI(r) +s.toString +q.b=s*p}else{s=A.bsL(self.window) +s.toString +q.b=s*p}return new A.aaa(0,0,0,a-q.b2())}} +A.a_q.prototype={ +a8j(){var s,r,q,p=A.blR(self.window,"(resolution: "+A.c(this.b)+"dppx)") +this.d=p +s=A.d6(this.gaFH()) +r=t.K +q=A.b8(A.C(["once",!0,"passive",!0],t.N,r)) +r=q==null?r.a(q):q +p.addEventListener("change",s,r)}, +aFI(a){var s=this,r=s.a.d +if(r==null){r=self.window.devicePixelRatio +if(r===0)r=1}s.b=r +s.c.q(0,r) +s.a8j()}} +A.awe.prototype={} +A.atn.prototype={ +gOs(){var s=this.b +s===$&&A.b() +return s}, +aaN(a){A.N(a.style,"width","100%") +A.N(a.style,"height","100%") +A.N(a.style,"display","block") +A.N(a.style,"overflow","hidden") +A.N(a.style,"position","relative") +this.a.appendChild(a) +$.bkv() +this.b!==$&&A.d1() +this.b=a}, +gae8(){return this.a}} +A.aAd.prototype={ +gOs(){return self.window}, +aaN(a){var s=a.style +A.N(s,"position","absolute") +A.N(s,"top","0") +A.N(s,"right","0") +A.N(s,"bottom","0") +A.N(s,"left","0") +this.a.append(a) +$.bkv()}, +asr(){var s,r,q +for(s=t.qr,s=A.jX(new A.zh(self.document.head.querySelectorAll('meta[name="viewport"]'),s),s.i("B.E"),t.B),r=J.ay(s.a),s=A.y(s).y[1];r.u();)s.a(r.gI(r)).remove() +q=A.cm(self.document,"meta") +s=A.b8("") +if(s==null)s=t.K.a(s) +q.setAttribute("flt-viewport",s) +q.name="viewport" +q.content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" +self.document.head.append(q) +$.bkv()}, +gae8(){return this.a}} +A.a0i.prototype={ +h(a,b){return this.b.h(0,b)}, +agi(a,b){var s=a.a +this.b.n(0,s,a) +if(b!=null)this.c.n(0,s,b) +this.d.q(0,s) +return a}, +b_g(a){return this.agi(a,null)}, +acI(a){var s,r=this.b,q=r.h(0,a) +if(q==null)return null +r.C(0,a) +s=this.c.C(0,a) +this.e.q(0,a) +q.m() +return s}, +Dr(a){var s,r,q,p=null,o=a==null?p:a.closest("flutter-view[flt-view-id]") +if(o==null)s=p +else{r=o.getAttribute("flt-view-id") +s=r==null?p:r}q=s==null?p:A.c0(s,p) +return q==null?p:this.b.h(0,q)}} +A.aAQ.prototype={} +A.bhQ.prototype={ +$0(){return null}, +$S:419} +A.pP.prototype={ +a08(a,b,c,d){var s,r,q,p=this,o=p.c +o.aaN(p.ghq().a) +s=$.bmC +s=s==null?null:s.gQp() +s=new A.aMP(p,new A.aMQ(),s) +r=$.bH().ge4()===B.aL&&$.bH().gf9()===B.bM +if(r){r=$.bCg() +s.a=r +r.b1d()}s.f=s.auX() +p.z!==$&&A.d1() +p.z=s +s=p.ch +s=s.gafq(s).bL(p.gavT()) +p.d!==$&&A.d1() +p.d=s +q=p.r +if(q===$){s=p.ghq() +o=o.gae8() +p.r!==$&&A.aH() +q=p.r=new A.aAQ(s.a,o)}o=$.ap().gagt() +s=A.b8(p.a) +if(s==null)s=t.K.a(s) +q.a.setAttribute("flt-view-id",s) +s=q.b +o=A.b8(o+" (requested explicitly)") +if(o==null)o=t.K.a(o) +s.setAttribute("flt-renderer",o) +o=A.b8("release") +if(o==null)o=t.K.a(o) +s.setAttribute("flt-build-mode",o) +o=A.b8("false") +if(o==null)o=t.K.a(o) +s.setAttribute("spellcheck",o) +$.rJ.push(p.gdj())}, +m(){var s,r,q=this +if(q.f)return +q.f=!0 +s=q.d +s===$&&A.b() +s.S(0) +q.ch.L(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.hA(self.document,"touchstart",s.a,null) +s.a=null}q.ghq().a.remove() +$.ap().aPu() +q.gZt().eU(0)}, +gabJ(){var s,r=this,q=r.x +if(q===$){s=r.ghq() +r.x!==$&&A.aH() +q=r.x=new A.asO(s.a)}return q}, +ghq(){var s,r,q,p,o,n,m,l,k="flutter-view",j=this.y +if(j===$){s=$.dz().d +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}r=A.cm(self.document,k) +q=A.cm(self.document,"flt-glass-pane") +p=A.b8(A.C(["mode","open","delegatesFocus",!1],t.N,t.z)) +if(p==null)p=t.K.a(p) +p=q.attachShadow(p) +o=A.cm(self.document,"flt-scene-host") +n=A.cm(self.document,"flt-text-editing-host") +m=A.cm(self.document,"flt-semantics-host") +r.appendChild(q) +r.appendChild(n) +r.appendChild(m) +p.append(o) +l=A.vT().b +A.bw5(k,r,"flt-text-editing-stylesheet",l==null?null:A.btQ(l)) +l=A.vT().b +A.bw5("",p,"flt-internals-stylesheet",l==null?null:A.btQ(l)) +l=A.vT().gVt() +A.N(o.style,"pointer-events","none") +if(l)A.N(o.style,"opacity","0.3") +l=m.style +A.N(l,"position","absolute") +A.N(l,"transform-origin","0 0 0") +A.N(m.style,"transform","scale("+A.c(1/s)+")") +this.y!==$&&A.aH() +j=this.y=new A.awe(r,q,p,o,n,m)}return j}, +gZt(){var s,r=this,q=r.as +if(q===$){s=A.bIk(r.ghq().f) +r.as!==$&&A.aH() +r.as=s +q=s}return q}, +gmo(){var s=this.at +return s==null?this.at=this.Qj():s}, +Qj(){var s=this.ch.Vb() +return s}, +avU(a){var s,r=this,q=r.ghq(),p=$.dz().d +if(p==null){p=self.window.devicePixelRatio +if(p===0)p=1}A.N(q.f.style,"transform","scale("+A.c(1/p)+")") +s=r.Qj() +if(!B.O6.p(0,$.bH().gf9())&&!r.aDU(s)&&$.VV().c)r.a1X(!0) +else{r.at=s +r.a1X(!1)}r.b.aeB()}, +aDU(a){var s,r,q=this.at +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>>0}}, +Uo(a){var s=A.bO(4,0,!1,t.S) +s[0]=a>>>24&255 +s[1]=a>>>16&255 +s[2]=a>>>8&255 +s[3]=a&255 +return s}, +a0o(){var s,r,q=this,p=q.d.length,o=q.a*4 +if(p>=o){for(s=q.e,r=0;p-r>=o;r+=o){q.aty(q.d,r) +q.aME(s)}q.d=B.b.cK(q.d,r,p)}}, +arq(){var s,r,q,p,o,n=this +n.d.push(128) +s=n.c+9 +r=n.a*4 +q=((s+r-1&-r)>>>0)-s +for(p=0;p>>0))}} +A.bcT.prototype={ +aME(a){var s,r,q,p,o,n,m=this.f,l=m[0],k=m[1],j=m[2],i=m[3],h=m[4] +for(s=this.w,r=0;r<80;++r,h=i,i=j,j=n,k=l,l=o){if(r<16){q=a[r] +s[r]=q}else{p=s[r-3]^s[r-8]^s[r-14]^s[r-16] +q=(p<<1|p>>>31)>>>0 +s[r]=q}o=(((l<<5|l>>>27)>>>0)+h>>>0)+q>>>0 +if(r<20)o=(o+((k&j|~k&i)>>>0)>>>0)+1518500249>>>0 +else if(r<40)o=(o+((k^j^i)>>>0)>>>0)+1859775393>>>0 +else o=r<60?(o+((k&j|k&i|j&i)>>>0)>>>0)+2400959708>>>0:(o+((k^j^i)>>>0)>>>0)+3395469782>>>0 +n=(k<<30|k>>>2)>>>0}m[0]=l+m[0]>>>0 +m[1]=k+m[1]>>>0 +m[2]=j+m[2]>>>0 +m[3]=i+m[3]>>>0 +m[4]=h+m[4]>>>0}} +A.bhR.prototype={ +$1(a){}, +$S:603} +A.a0U.prototype={ +D(){return"HttpClientResponseCompressionState."+this.b}} +A.hg.prototype={ +j(a){var s=""+"HttpException: "+this.a,r=this.b +if(r!=null)s+=", uri = "+r.j(0) +return s.charCodeAt(0)==0?s:s}, +$ibm:1, +gia(a){return this.a}} +A.My.prototype={ +j(a){return"RedirectException: "+this.a}, +$ihg:1, +$ibm:1, +gia(a){return this.a}} +A.ag4.prototype={ +arb(a,b,c){if(this.c==="1.0")this.w=this.r=!1}, +h(a,b){return this.a.h(0,A.mi(b))}, +mv(a,b){var s,r +b=A.mi(b) +s=this.a.h(0,b) +if(s==null)return null +r=J.a0(s) +if(r.gt(s)>1)throw A.d(A.c1("More than one value for header "+b,null)) +return r.h(s,0)}, +nH(a,b,c){var s,r +if(!this.d)A.V(A.c1("HTTP headers are not mutable",null)) +s=A.mi(b) +r=this.b +if(r!=null)r.C(0,s) +this.a0k(s,c)}, +a0k(a,b){var s +if(t.JY.b(b))for(s=J.ay(b);s.u();)this.Po(0,a,A.b7a(s.gI(s))) +else this.Po(0,a,A.b7a(b))}, +l5(a,b,c){var s,r,q=this +if(!q.d)A.V(A.c1("HTTP headers are not mutable",null)) +s=A.mi(b) +q.a.C(0,s) +r=q.b +if(r!=null)r.C(0,s) +if(s==="content-length")q.f=-1 +if(s==="transfer-encoding")q.w=!1 +q.a0k(s,c)}, +Nh(a){var s +if(!this.d)A.V(A.c1("HTTP headers are not mutable",null)) +a=A.mi(a) +this.a.C(0,a) +s=this.b +if(s!=null)s.C(0,a)}, +sCC(a){var s,r=this,q="content-length" +if(!r.d)A.V(A.c1("HTTP headers are not mutable",null)) +s=r.c +if(s==="1.0"&&r.r&&a===-1)throw A.d(A.c1("Trying to clear ContentLength on HTTP 1.0 headers with 'Connection: Keep-Alive' set",null)) +if(r.f===a)return +r.f=a +if(a>=0){if(r.w)r.sut(!1) +r.a.n(0,q,A.a([B.e.j(a)],t.s))}else{r.a.C(0,q) +if(s==="1.1")r.sut(!0)}}, +sut(a){var s,r,q,p,o,n=this,m="transfer-encoding",l="chunked" +if(!n.d)A.V(A.c1("HTTP headers are not mutable",null)) +if(a&&n.c==="1.0")throw A.d(A.c1("Trying to set 'Transfer-Encoding: Chunked' on HTTP 1.0 headers",null)) +if(a===n.w)return +if(a){s=n.a.h(0,m) +if(s==null||!J.mv(s,l))n.As(m,l) +n.sCC(-1)}else{r=A.mi(m) +q=A.b7a(l) +p=n.a +s=p.h(0,r) +if(s!=null){o=J.cF(s) +o.C(s,n.a9V(q)) +if(o.ga_(s)){p.C(0,r) +p=n.b +if(p!=null)p.C(0,r)}}if(r===m&&J.e(q,l))n.w=!1}n.w=a}, +Po(a,b,c){var s,r=this,q=null,p="HTTP headers are not mutable",o="Unexpected type for header named ",n="Content-Length must contain only digits",m="transfer-encoding",l="if-modified-since" +switch(b.length){case 4:if("date"===b){if(c instanceof A.aS){if(!r.d)A.V(A.c1(p,q)) +r.a.n(0,"date",A.a([A.aBN(c.NI())],t.s))}else if(typeof c=="string")r.a.n(0,"date",A.a([c],t.s)) +else A.V(A.c1(o+b,q)) +return}if("host"===b){r.as_(b,c) +return}break +case 7:if("expires"===b){if(c instanceof A.aS){if(!r.d)A.V(A.c1(p,q)) +r.a.n(0,"expires",A.a([A.aBN(c.NI())],t.s))}else if(typeof c=="string")r.a.n(0,"expires",A.a([c],t.s)) +else A.V(A.c1(o+b,q)) +return}break +case 10:if("connection"===b){r.arV(b,c) +return}break +case 12:if("content-type"===b){r.a.n(0,"content-type",A.a([c],t.s)) +return}break +case 14:if("content-length"===b){if(A.nO(c)){if(c<0)A.V(A.c1(n,q))}else if(typeof c=="string"){s=$.bDt() +if(!s.b.test(c))A.V(A.c1(n,q)) +c=A.c0(c,q)}else A.V(A.c1(o+b,q)) +r.sCC(c) +return}break +case 17:if(m===b){if(J.e(c,"chunked"))r.sut(!0) +else r.As(m,c) +return}if(l===b){if(c instanceof A.aS){if(!r.d)A.V(A.c1(p,q)) +r.a.n(0,l,A.a([A.aBN(c.NI())],t.s))}else if(typeof c=="string")r.a.n(0,l,A.a([c],t.s)) +else A.V(A.c1(o+b,q)) +return}break}r.As(b,c)}, +as_(a,b){var s,r,q,p=this +if(typeof b=="string"){s=B.c.o6(b,":") +if(!J.e(s,-1))r=B.c.ba(b,"[")&&B.c.bF(b,"]") +else r=!0 +if(r){p.x=b +p.y=80}else{if(s>0)p.x=B.c.R(b,0,s) +else p.x=null +if(s+1===b.length)p.y=80 +else try{p.y=A.c0(B.c.bE(b,s+1),null)}catch(q){if(t.bE.b(A.v(q)))p.y=null +else throw q}}p.a.n(0,"host",A.a([b],t.s))}else throw A.d(A.c1("Unexpected type for header named "+a,null))}, +arV(a,b){var s=b.toLowerCase() +if(s==="close")this.r=!1 +else if(s==="keep-alive")this.r=!0 +this.As(a,b)}, +As(a,b){var s=this.a,r=s.h(0,a) +if(r==null){r=A.a([],t.s) +s.n(0,a,r)}J.dN(r,this.a9V(b))}, +a9V(a){if(a instanceof A.aS)return A.aBN(a) +else if(typeof a=="string")return a +else return A.bS(A.b7a(J.p(a)))}, +a9p(){var s,r=this,q=r.x +if(q!=null){s=r.y +r.a.n(0,"host",A.a([s==null||s===r.z?q:q+":"+A.c(s)],t.s))}}, +a3k(a){if(a==="set-cookie")return!1 +return!0}, +aro(a,b){var s=this.f===0&&b?"content-length":null +this.a.az(0,new A.b79(this,s,a))}, +j(a){var s,r=new A.cD("") +this.a.az(0,new A.b7b(this,r)) +s=r.a +return s.charCodeAt(0)==0?s:s}, +a6d(a){var s=this.b +s=s==null?null:s.h(0,a) +return s==null?a:s}} +A.b79.prototype={ +$2(a,b){var s,r,q,p,o,n +if(this.b===a)return +s=this.a +r=s.a6d(a) +q=s.a3k(a) +p=new A.eY(r) +s=this.c +s.q(0,p) +s.jm(58) +s.jm(32) +for(o=J.a0(b),n=0;n0)if(q){s.jm(44) +s.jm(32)}else{s.jm(13) +s.jm(10) +s.q(0,p) +s.jm(58) +s.jm(32)}s.q(0,new A.eY(o.h(b,n)))}s.jm(13) +s.jm(10)}, +$S:113} +A.b7b.prototype={ +$2(a,b){var s,r,q=this.a,p=q.a6d(a),o=this.b,n=o.a+=p +o.a=n+": " +s=q.a3k(a) +for(q=J.a0(b),r=0;r0){n=o.a +if(s)o.a=n+", " +else{n+="\n" +o.a=n +n+=p +o.a=n +o.a=n+": "}}n=A.c(q.h(b,r)) +o.a+=n}o.a+="\n"}, +$S:113} +A.afU.prototype={ +a0g(a,b){var s=b.gbC(b) +if(s)this.b=A.bJ8(b,t.N,t.T)}, +gk(a){return this.a}, +a3_(){var s=this.b +return s==null?this.b=A.w(t.N,t.T):s}, +gMT(a){var s=this.c +return s==null?this.c=new A.li(this.a3_(),t.r2):s}, +j(a){var s,r,q=new A.cD("") +q.a=""+this.a +s=this.b +if(s!=null&&s.gbC(s))s.az(0,new A.b5k(q)) +r=q.a +return r.charCodeAt(0)==0?r:r}, +Ps(a,b,c,d){var s,r,q,p,o={} +o.a=0 +s=new A.b5c(o,a) +r=new A.b5j(o,s,a) +q=new A.b5i(o,s,a,c,b) +p=new A.b5e(o,s,a) +r.$0() +this.a=q.$0() +r.$0() +if(s.$0())return +if(a[o.a]===c)return +p.$1(b) +new A.b5f(o,this,s,a,b,c,!1,q,r,p,new A.b5d(o,s,a)).$0()}} +A.b5k.prototype={ +$2(a,b){var s,r,q,p,o=this.a,n=o.a+="; " +n+=a +o.a=n +if(b!=null){o.a=n+"=" +n=A.bPV(b) +s=o.a +if(n)o.a=s+b +else{o.a=s+'"' +for(n=b.length,r=0,q=0;q>")))) +return r.aK(a,b,c,new A.b6Y(s,d))}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}, +Kz(){var s=this.d.p4 +this.c.GU(s) +return s.Kz()}, +a0X(a){var s,r,q,p=this,o={},n=new A.b6Q(p,a).$0() +n.toString +n=J.i(n,0) +s=A.bxm() +s.Ps(n,",",null,!1) +r=A.bPg(s.a) +q=J.i(s.gMT(0).a,"realm") +o.a=new A.b6S(p,a).$1(r) +return new A.b6T(p,a).$2(r,q).ak(new A.b6R(o,p,r,new A.b6U(p)),t.xG)}, +$ifF:1} +A.b6X.prototype={ +$1(a){return null}, +$S:11} +A.b6Z.prototype={ +$1(a){var s,r,q=a.x1,p=this.b +B.b.G(q,p.d.x1) +p=p.a.r +p.toString +s=this.a +r=s.a +r.toString +s=s.b +s.toString +q.push(new A.aj0(p,r,s)) +return a.L(0)}, +$S:202} +A.b6Y.prototype={ +$2(a,b){var s=this.b +if(s==null)return +if(t.hK.b(s))s.$2(a,b) +else t.mX.a(s).$1(a)}, +$S:60} +A.b6U.prototype={ +$0(){var s=this.a +return s.Da(t.z).ak(new A.b6W(s),t.xG)}, +$S:449} +A.b6W.prototype={ +$1(a){var s=this.a,r=s.d +return s.c.a6c(r.ok,r.p1,r,!1).ak(new A.b6V(),t.xG)}, +$S:182} +A.b6V.prototype={ +$1(a){return a.L(0)}, +$S:202} +A.b6Q.prototype={ +$0(){var s=this.a.a +return this.b?s.e.a.h(0,A.mi("proxy-authenticate")):s.e.a.h(0,A.mi("www-authenticate"))}, +$S:536} +A.b6S.prototype={ +$1(a){var s=this.a,r=s.c +s=s.d +return this.b?r.a38(s.RG,a):r.R5(s.p1,a)}, +$S:539} +A.b6T.prototype={ +$2(a,b){var s +if(this.b){s=A.c7(!1,t.y) +return s}s=A.c7(!1,t.y) +return s}, +$S:540} +A.b6R.prototype={ +$1(a){var s=this,r=s.b +if(a){s.a.a=r.c.R5(r.d.p1,s.c) +return s.d.$0()}else return r}, +$S:542} +A.alF.prototype={ +b4(a){return new Uint8Array(A.e7(a))}, +hg(a){return new A.bfZ(a)}} +A.bfZ.prototype={ +q(a,b){this.a.q(0,new Uint8Array(A.e7(b)))}, +L(a){this.a.L(0)}} +A.jS.prototype={ +q(a,b){if(this.e)throw A.d(A.a1("StreamSink is closed")) +this.gPq().q(0,b)}, +cX(a,b){if(this.e)throw A.d(A.a1("StreamSink is closed")) +this.gPq().cX(a,b)}, +L(a){var s,r=this +if(r.f)throw A.d(A.a1("StreamSink is bound to a stream")) +if(!r.e){r.e=!0 +s=r.c +if(s!=null)s.L(0) +else r.a1I()}return r.gKN()}, +a1I(){this.a.L(0).cv(this.gaup(),this.gauo(),t.H)}, +gKN(){return this.b.a}, +auq(a){var s=this.b +if((s.a.a&30)===0)s.bv(0,a)}, +a1O(a,b){var s=this.b +if((s.a.a&30)===0){this.r=!0 +s.dh(a,b)}}, +gPq(){var s,r=this,q=null +if(r.f)throw A.d(A.a1("StreamSink is bound to a stream")) +if(r.e)throw A.d(A.a1("StreamSink is closed")) +if(r.c==null){r.c=A.i9(q,q,q,q,!0,A.y(r).i("jS.T")) +r.d=new A.aq(new A.a_($.ab,t.LR),t.zh) +s=r.gPq() +r.a.nI(0,new A.cA(s,A.y(s).i("cA<1>"))).cv(new A.be5(r),new A.be6(r),t.P)}s=r.c +s.toString +return s}, +$ice:1} +A.be5.prototype={ +$1(a){var s=this.a +if(s.f){s.d.bv(0,s) +s.c=s.d=null}else s.a1I()}, +$S:2} +A.be6.prototype={ +$2(a,b){var s=this.a +if(s.f){s.d.dh(a,b) +s.c=s.d=null}else s.a1O(a,b)}, +$S:25} +A.ag6.prototype={} +A.kn.prototype={ +q(a,b){if(J.cT(b))return +this.apn(0,b)}} +A.jN.prototype={ +ar9(a,b,c,d,e,f,g){var s,r=this.ok +r=r==="GET"||r==="HEAD" +s=this.dx +if(r)s.sCC(0) +else s.sut(!0) +this.R8.a.cv(new A.b6N(g),new A.b6O(),t.P)}, +gKN(){var s=this,r=s.rx +return r==null?s.rx=A.lM(A.a([s.R8.a,A.jS.prototype.gKN.call(s)],t.RD),!0,t.z).ak(new A.b6P(),t.xG):r}, +L(a){this.apo(0) +return this.gKN()}, +aFY(a){var s,r,q,p,o=this,n=A.bQ0(a,o,o.p3,o.y),m=n.gaWe() +if(m){m=t.z +s=t.xG +r=n.d.x1.length=0)p.y=q +s.aNt() +return null}, +nI(a,b){var s,r,q=this,p=null +if(q.ch){b.bL(p).S(0) +return A.c7(q.CW,t.z)}s=A.i9(p,p,p,p,!0,t.Cm) +r=b.aK(new A.b7h(q,s),!0,s.gpq(s),s.gUv()) +s.r=r.gJX(r) +s.e=r.gXG(r) +s.f=r.gY6(r) +if(!q.d)q.ahW() +return q.b.nI(0,new A.cA(s,A.y(s).i("cA<1>"))).cv(new A.b7f(q),new A.b7g(q),t.z)}, +L(a){var s,r,q,p,o,n=this,m=n.r +if(m!=null)return m +s=n.CW +s.toString +if(n.ch)return A.c7(s,t.z) +r=n.d +if(!r){r=s.dx +q=r.f +if(q===-1){r.sut(!1) +r.sCC(0)}else if(q>0){p=new A.hg("No content even though contentLength was specified to be greater than 0: "+q+".",s.cy) +n.a.dF(p) +return n.r=A.i0(p,null,t.z)}}o=n.y +if(o!=null){r=n.z +if(r8192-p){b.$1(A.dw(s.buffer,s.byteOffset,p)) +m.ax=new Uint8Array(8192) +m.ay=0}if(r.gt(a)>8192)b.$1(a) +else{o=m.ay +n=o+r.gt(a) +s=m.ax +s.toString +B.G.dC(s,o,n,a) +m.ay=n}}, +Pt(a,b){var s,r,q,p,o,n=this +n.CW.toString +s=J.a0(a) +r=s.gt(a) +q=n.e +p=q.length +o=n.f +if(r>p-o){b.$1(A.dw(q.buffer,q.byteOffset,o)) +n.e=new Uint8Array(8192) +n.f=0}if(s.gt(a)>8192)b.$1(a) +else{r=n.e +r.toString +q=n.f +B.G.dC(r,q,q+s.gt(a),a) +n.f=n.f+s.gt(a)}}, +a1C(a){var s,r,q,p,o +if(a===0){if(this.x===2)return B.a6h +return B.a69}s=this.x +for(r=a,q=s;r>0;){++q +r=B.e.cA(r,4)}p=new Uint8Array(q+2) +if(s===2){p[0]=13 +p[1]=10}for(o=q;o>s;){--o +p[o]=B.abY[a&15] +a=B.e.cA(a,4)}p[q]=13 +p[q+1]=10 +return p}} +A.b7h.prototype={ +$1(a){var s,r,q,p=this,o=p.a +if(o.ch)return +s=J.a0(a) +if(s.ga_(a))return +if(o.w){if(o.Q){s=p.b +o.at=s.git(s) +s=o.as +o.arZ(a,s.git(s)) +o.at=null +return}r=p.b +o.Pt(o.a1C(s.gt(a)),r.git(r)) +o.x=2}else{q=o.y +if(q!=null){s=o.z=o.z+s.gt(a) +if(s>q){p.b.pd(new A.hg("Content size exceeds specified contentLength. "+s+" bytes written while expected "+A.c(q)+". ["+A.ia(a,0,null)+"]",null)) +return}}}s=p.b +o.Pt(a,s.git(s))}, +$S:96} +A.b7f.prototype={ +$1(a){return this.a.CW}, +$S:561} +A.b7g.prototype={ +$2(a,b){var s=this.a +if(s.Q)s.as.L(0) +s.ch=!0 +s.a.dh(a,b) +throw A.d(a)}, +$S:593} +A.b7i.prototype={ +$0(){var s,r,q,p=this.a +if(p.w){if(p.Q){s=p.b +p.at=s.git(s) +s=p.ay +if(s>0){r=p.as +r.toString +q=p.ax +s=A.dw(q.buffer,q.byteOffset,s) +r.fP(s,0,s.length,!1)}p.ax=null +p.as.L(0) +p.at=null}s=p.b +p.Pt(p.a1C(0),s.git(s))}s=p.f +if(s>0){r=p.e +p.b.q(0,A.dw(r.buffer,r.byteOffset,s))}p.e=null +s=this.b +return p.b.b1X(0).cv(new A.b7j(p,s),new A.b7k(p,s),t.z)}, +$S:69} +A.b7j.prototype={ +$1(a){var s=this.a +s.a.bv(0,s.b) +return this.b}, +$S:602} +A.b7k.prototype={ +$2(a,b){this.a.a.dh(a,b) +throw A.d(a)}, +$S:624} +A.vq.prototype={ +ar8(a,b,c,d,e){var s=this,r=s.e +r.go=s.b.eQ(r.gars(),r.garu(),r.k2.gUv()) +s.f=r.eQ(new A.b6u(s),new A.b6v(s),new A.b6w(s))}, +Zu(a,b,c,d,e,f){var s,r,q,p,o,n,m=this,l="HTTP headers are not mutable",k={} +if(m.y)throw A.d(A.c1("Socket closed before request was sent",b)) +m.z=b +m.f.ic(0) +if(d==="CONNECT")m.e.fr=!0 +k.a=k.b=null +s=new A.a_($.ab,t.ag) +r=m.r +q=A.bQ_(new A.b7e(new A.aq(s,t.YQ),m.b),b,d,e,r,m,f) +p=b.gfz(b) +if(B.c.p(p,":"))p="["+p+"]" +o=q.dx +if(!o.d)A.V(A.c1(l,null)) +o.x=p +o.a9p() +if(!o.d)A.V(A.c1(l,null)) +o.y=c +o.a9p() +o.nH(0,"accept-encoding","gzip") +o.nH(0,"user-agent",r.ch) +n=e.c +if(n!=null){n=B.ao.b4(n+":"+A.c(e.d)) +o.l5(0,"proxy-authorization","Basic "+B.ct.gk5().b4(n))}else if(!e.e&&r.e.length!==0)k.b=r.axD(e) +b.gov() +n=b.gov() +if(n.length!==0){r=B.ao.b4(b.gov()) +o.l5(0,"authorization","Basic "+B.ct.gk5().b4(r))}else k.a=r.axB(b) +m.e.cy=A.bY3(d==="HEAD",!1) +k=s.ak(new A.b6F(k,m,f,q,d,b),t.lz) +m.as=k +A.c7(k,t.Z7).dc(new A.b6G(m)) +return q}, +Kz(){return this.as.ak(new A.b6z(this),t.lz)}, +ex(){var s=this +s.y=!0 +s.r.GU(s) +s.b.ex()}, +L(a){var s=this +s.y=!0 +s.r.GU(s) +s.as.t1(0,B.lf).ak(new A.b6t(s),t.H)}, +aPC(){var s=this +s.y=!0 +s.r.auM(s) +s.as.t1(0,B.lf).ak(new A.b6s(s),t.H)}, +aR5(a,b,c,d,e){var s,r,q=null +A.rA(q,a,q,q,b,q,q,q,q) +s=this.Zu(0,A.rA(q,a,q,q,b,q,q,q,q),b,"CONNECT",c,q) +r=c.c +if(r!=null){r=B.ao.b4(r+":"+A.c(c.d)) +s.dx.l5(0,"proxy-authorization","Basic "+B.ct.gk5().b4(r))}return s.L(0).ak(new A.b6x(this,e,s,a,d),t.TB).ak(new A.b6y(a,b,e,s),t.Lp)}, +P_(){var s=this.x +if(s!=null)s.S(0) +this.x=null}, +ZT(){this.x=A.bZ(B.lf,new A.b6H(this))}} +A.b6u.prototype={ +$1(a){var s,r=this.a +r.f.ic(0) +s=r.Q +if(s==null)throw A.d(A.c1("Unexpected response (unsolicited response without request).",r.z)) +if(a.r===100)a.Da(t.z).ak(new A.b6p(r),t.P).po(new A.b6q(r),new A.b6r()) +else{s.bv(0,a) +r.Q=null}}, +$S:625} +A.b6p.prototype={ +$1(a){this.a.f.ie(0)}, +$S:2} +A.b6q.prototype={ +$2(a,b){var s,r +if(t.eh.b(a))s=a.gia(a) +else if(a instanceof A.no)s=a.a +else if(a instanceof A.nv)s=a.b +else throw A.d(a) +r=this.a +r.Q.dh(new A.hg(s,r.z),b) +r.Q=null}, +$S:180} +A.b6r.prototype={ +$1(a){return t.eh.b(a)||a instanceof A.no||a instanceof A.nv}, +$S:135} +A.b6w.prototype={ +$2(a,b){var s,r,q +if(t.eh.b(a))s=a.gia(a) +else if(a instanceof A.no)s=a.a +else if(a instanceof A.nv)s=a.b +else throw A.d(a) +r=this.a +q=r.Q +if(q!=null)q.dh(new A.hg(s,r.z),b) +r.Q=null}, +$S:180} +A.b6v.prototype={ +$0(){var s=this.a,r=s.Q +if(r!=null)r.dF(new A.hg("Connection closed before response was received",s.z)) +s.Q=null +s.L(0)}, +$S:0} +A.b6F.prototype={ +$1(a){var s,r=this,q=new A.a_($.ab,t.yJ),p=r.b +p.Q=new A.aq(q,t.ff) +s=r.d +q.ak(new A.b6B(r.a,p,r.e,s),t.P).po(new A.b6C(r.f),new A.b6D()).dc(new A.b6E(p,s)) +p.f.ie(0) +return a}, +$S:707} +A.b6B.prototype={ +$1(a){var s,r=this.b +r.z=null +s=this.d +a.b.a.ak(new A.b6A(r,a,this.c,s),t.P) +s.aFY(a)}, +$S:712} +A.b6A.prototype={ +$1(a){var s,r,q=this,p=q.b +if(p.f){p=q.a +p.r.GU(p) +p.ZT() +return}s=q.a +if(!s.y)r=q.c==="CONNECT"&&p.r===200 +else r=!0 +if(r)return +if(!a&&!s.w&&p.e.r&&q.d.dx.r){p=s.r +r=p.c.h(0,s.a) +r.w.C(0,s) +r.r.q(0,s) +s.ZT() +r.GL() +if(p.a)p.GN(!1) +s.f.ie(0)}else s.ex()}, +$S:26} +A.b6C.prototype={ +$1(a){throw A.d(A.c1("Connection closed before data was received",this.a))}, +$S:82} +A.b6D.prototype={ +$1(a){return a instanceof A.ld}, +$S:135} +A.b6E.prototype={ +$2(a,b){var s +this.a.ex() +s=this.b.R8 +if((s.a.a&30)===0)s.dh(a,b)}, +$S:60} +A.b6G.prototype={ +$1(a){this.a.ex()}, +$S:2} +A.b6z.prototype={ +$1(a){var s=this.a,r=s.e +r.e=26 +return new A.EL(new A.ag3(r.go,r.b_8()),s.b)}, +$S:734} +A.b6t.prototype={ +$1(a){return this.a.b.ex()}, +$S:211} +A.b6s.prototype={ +$1(a){return this.a.b.ex()}, +$S:211} +A.b6x.prototype={ +$1(a){var s=this,r=a.a,q=r.r +q.toString +if(q!==200){r=r.w +r.toString +throw A.d(A.c1("Proxy failed to establish tunnel ("+q+" "+r+")",s.c.p1))}return A.bNk(a.d.p4.b,s.a.d,s.d,s.e)}, +$S:786} +A.b6y.prototype={ +$1(a){return A.bxp("ssh:"+this.a+":"+this.b,a,this.d.p3,!0,null)}, +$S:812} +A.b6H.prototype={ +$0(){var s=this.a +s.x=null +s.L(0)}, +$S:0} +A.ic.prototype={} +A.ED.prototype={ +ga_(a){return this.r.a===0&&this.w.a===0&&this.z===0}, +GL(){var s=this.y +if(!s.ga_(0))s.om().$0()}, +abF(a){this.w.C(0,a) +this.r.C(0,a) +this.GL()}, +V4(a,b){var s,r,q,p,o +for(s=this.x,s=A.a8(s,!0,A.y(s).c),r=s.length,q=t.P,p=0;p")),r=r.i("S.E");s.u();){q=s.d +if(q==null)q=r.a(q) +if(q>=128||u.l.charCodeAt(q)===32)return!1}return!0}, +a6b(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g={} +g.a=b +if(i.a)throw A.d(A.a1("Client is closed")) +b=g.a=b.Ev() +if(!i.arr(a))throw A.d(A.hY(a,"method",h)) +if(a!=="CONNECT")if(b.gfz(b).length===0)throw A.d(A.bl("No host specified in URI "+b.j(0),h)) +else if(!b.jw("http")&&!b.jw("https"))throw A.d(A.bl("Unsupported scheme '"+b.gev()+"' in URI "+b.j(0),h)) +$.bDx().$1(b) +o=b.jw("https") +n=g.b=b.gkf(b) +if(n===0)m=g.b=o?443:80 +else m=n +g.c=B.Q_ +s=A.bTa() +if(s!=null)try{r=s.$1(b) +r=r +l=new A.aiE(A.a([],t.Rm)) +l.arg(r) +g.c=l +k=l}catch(j){q=A.v(j) +p=A.aT(j) +g=A.i0(q,p,t.Dc) +return g}else k=B.Q_ +g.d=null +return i.a3w(b,b.gfz(b),m,k,o,h).cv(new A.b76(g,i,a,o),new A.b77(g),t.Dc)}, +a6c(a,b,c,d){var s=c.p1.zn(b) +return this.a6b(a,s).ak(new A.b75(c,d,s),t.Dc)}, +GU(a){var s,r,q +a.P_() +s=this.c +r=a.a +q=s.h(0,r) +if(q!=null){q.abF(a) +if(q.ga_(0))s.C(0,r) +if(this.a)this.GN(!1)}}, +auM(a){var s,r,q +a.P_() +s=this.c +r=a.a +q=s.h(0,r) +if(q!=null){q.abF(a) +if(q.ga_(0))s.C(0,r)}}, +GN(a){var s,r,q +for(s=this.c.gaJ(0),s=A.a8(s,!0,A.y(s).i("B.E")),r=s.length,q=0;q")),b,c,e,a,f).$2(new A.hg("No proxies given",null),A.h3())}, +R5(a,b){return B.b.yN(this.d,null,new A.b7_(a,b))}, +axB(a){return this.R5(a,null)}, +a38(a,b){var s,r,q,p +for(s=this.e,r=s.length,q=0;q")),o=a.dx,n=o.a,q=q.c,m=this.b,l=this.c,s=s.p1;p.u();){k=p.d +if(k==null)k=q.a(k) +if(n.h(0,A.mi(k))==null)j=!m||A.bQ3(k,l,s) +else j=!1 +if(j){j=r.h(0,A.mi(k)) +j.toString +o.l5(0,k,j)}}o.sut(!1) +o.sCC(0) +return a}, +$S:340} +A.b73.prototype={ +$0(){var s=this,r=t.Lp +return new A.ED(s.b,s.c,s.d,s.e,s.a.f,null,A.dD(r),A.dD(r),A.dD(t.oi),A.ej(null,t.M))}, +$S:350} +A.b74.prototype={ +$2(a,b){var s,r,q,p,o=this,n=o.b +if(!n.u())return A.i0(a,b,t.FR) +s=n.d +if(s==null)s=n.$ti.c.a(s) +n=s.e +if(n)r=o.c +else{q=s.a +q.toString +r=q}if(n)p=o.d +else{n=s.b +n.toString +p=n}n=o.a +return n.a3x(r,p,o.e).abD(o.f,o.c,o.d,s,n,o.r).dc(o)}, +$S:352} +A.b7_.prototype={ +$2(a,b){if(b.aOk(this.a,this.b))return b +else return a}, +$S:356} +A.b70.prototype={ +$1(a){var s,r,q,p,o +if(a==null)return null +s=t.a4 +r=new A.ad(A.a(a.split(","),t.s),new A.b71(),s) +q=new A.ci(r,r.gt(0),s.i("ci")) +for(s=s.i("aN.E"),r=this.a;q.u();){p=q.d +if(p==null)p=s.a(p) +if(!(B.c.ba(p,"[")&&B.c.bF(p,"]")&&"["+r.gfz(r)+"]"===p))o=p.length!==0&&B.c.bF(r.gfz(r),p) +else o=!0 +if(o)return"DIRECT"}return null}, +$S:222} +A.b71.prototype={ +$1(a){return B.c.cw(a)}, +$S:40} +A.b72.prototype={ +$1(a){var s +if(a==null)return null +a=B.c.cw(a) +if(a.length===0)return null +s=B.c.dV(a,"://") +if(s>=0)a=B.c.bE(a,s+3) +s=B.c.dV(a,"/") +if(s>=0)a=B.c.R(a,0,s) +if(B.c.dV(a,"[")===0){s=B.c.o6(a,":") +if(B.c.dV(a,"]")>s)a+=":1080"}else if(!B.c.p(a,":"))a+=":1080" +return"PROXY "+a}, +$S:222} +A.aiE.prototype={ +arg(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=null,e="Invalid proxy configuration ",d=a.split(";") +for(q=d.length,p=this.a,o=0;o")).aK(a,b,c,d)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}, +Pr(){var s,r,q,p,o=this +try{o.awl()}catch(q){s=A.v(q) +r=A.aT(q) +p=o.e +if(p>=17&&p<=24){o.e=27 +o.a72(s,r)}else{o.e=27 +o.a73(s,r)}}}, +aCY(){var s,r,q=this,p=q.fx +p.toString +s=q.w +s=s>=200&&s<300&&q.fr +if(s){q.ay=-1 +p.sut(!1) +q.cx=!1 +p.Nh("content-length") +p.Nh("transfer-encoding")}p.d=!1 +p=p.f +q.ay=p +s=q.cx +if(s){q.ay=-1 +p=-1}if(q.r===1&&p<0&&!s){q.ay=0 +p=0}if(q.CW){q.e=26 +p=q.ay=0}r=q.av5(p) +r.r=q.w +p=q.z +r.w=A.ia(p,0,null) +B.b.V(q.y) +B.b.V(p) +if(q.CW){r.f=!0 +q.a=!1 +q.GP() +q.k2.q(0,r) +return!0}p=q.ay +if(p!==0)s=q.r===0&&q.cy +else s=!0 +if(s){q.Gy() +q.GP() +q.k2.q(0,r) +return!1}else if(q.cx){q.e=19 +q.db=0}else if(p>0){q.db=p +q.e=24}else q.e=24 +q.a=!1 +q.k2.q(0,r) +return!0}, +awl(){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="Invalid request method",a7="Invalid response line",a8="Failed to parse HTTP, ",a9=" does not match ",b0=" does not match 10",b1=" does not match 13" +a4.a=!0 +s=a4.e +if(s===25)throw A.d(A.c1("Data on closed connection",a5)) +if(s===27)throw A.d(A.c1("Data on failed connection",a5)) +s=a4.Q +r=a4.as +q=a4.z +p=a4.y +while(!0){o=a4.b +n=o!=null +m=!1 +if(n)if(a4.c31&&k<128&&!B.m1[k]))throw A.d(A.c1(a6,a5)) +if(++a4.at<1048576)p.push(k) +else a4.lX() +n=A.c1(a7,a5) +throw A.d(n)}break +case 1:n=a4.f +n.toString +if(n<4&&k===B.z1[n])a4.f=n+1 +else if(n===4&&k===47){a4.f=n+1 +a4.e=2}else{for(j=0;j57)throw A.d(A.c1("Invalid response status code with "+k,a5)) +else if(n>3)throw A.d(A.c1("Invalid response, status code is over 3 digits",a5)) +else a4.w=a4.w*10+k-48}break +case 8:if(k===13)a4.e=9 +else if(k===10){a4.e=9 +a4.c=n-1}else if(++a4.at<1048576)q.push(k) +else a4.lX() +break +case 9:if(k!==10)A.V(A.c1(a8+k+b0,a5)) +n=a4.w +if(n<=199||n===204||n===304)a4.cy=!0 +a4.e=10 +break +case 10:n=a4.gb15(0) +n.toString +a4.fx=A.bxq(n,80,a5) +if(k===13)a4.e=16 +else if(k===10){a4.e=16;--a4.c}else{n=(k-65&127)<26?k|32:k +if(++a4.at<1048576)s.push(n) +else a4.lX() +a4.e=11}break +case 11:if(k===58)a4.e=12 +else{if(!(k>31&&k<128&&!B.m1[k]))throw A.d(A.c1("Invalid header field name, with "+k,a5)) +n=(k-65&127)<26?k|32:k +if(++a4.at<1048576)s.push(n) +else a4.lX()}break +case 12:if(k===13)a4.e=14 +else if(k===10)a4.e=15 +else if(k!==32&&k!==9){if(++a4.at<1048576)r.push(k) +else a4.lX() +a4.e=13}break +case 13:if(k===13)a4.e=14 +else if(k===10)a4.e=15 +else if(++a4.at<1048576)r.push(k) +else a4.lX() +break +case 14:if(k!==10)A.V(A.c1(a8+k+b0,a5)) +a4.e=15 +break +case 15:if(k===32||k===9){if(++a4.at<1048576)r.push(32) +else a4.lX() +a4.e=12}else{i=A.ia(s,0,a5) +A.bQ5(r) +h=A.ia(r,0,a5) +n=i==="content-length" +if(n){if(a4.dx)throw A.d(A.c1("The Content-Length header occurred more than once, at most one is allowed.",a5)) +else if(!a4.dy)a4.dx=!0}else if(i==="transfer-encoding"){a4.dy=!0 +if(A.bxr(new A.eY("chunked"),r))a4.cx=!0 +a4.dx=!1}m=a4.fx +m.toString +if(i==="connection"){g=A.bQ6(h) +f=a4.r===0 +n=a4.w +e=n===426||n===101 +for(n=!f,j=0;j134217727)throw A.d(A.c1("Chunk size overflows the integer",a5)) +a4.db=n*16+a}break +case 20:if(k===13)a4.e=21 +else if(k===10){a4.e=21 +a4.c=n-1}break +case 21:if(k!==10)A.V(A.c1(a8+k+b0,a5)) +if(a4.db>0)a4.e=24 +else a4.e=22 +break +case 22:if(k===10){a4.e=23 +a4.c=n-1 +break}if(k!==13)A.V(A.c1(a8+k+b1,a5)) +break +case 23:if(k!==10)A.V(A.c1(a8+k+b0,a5)) +a4.Gy() +a4.GP() +break +case 24:n=a4.c=n-1 +a0=o.length-n +a1=a4.db +if(a1>=0&&a0>a1)a0=a1 +m=o.buffer +c=o.byteOffset +a2=new Uint8Array(m,c+n,a0) +n=a4.k3 +m=n.b +if(m>=4)A.V(n.nv()) +if((m&1)!==0)n.jk(a2) +else if((m&3)===0){n=n.wS() +m=new A.p3(a2) +a3=n.c +if(a3==null)n.b=n.c=m +else{a3.skV(0,m) +n.c=m}}n=a4.db +if(n!==-1)n=a4.db=n-a2.length +a4.c=a4.c+a2.length +if(n===0)if(!a4.cx){a4.Gy() +a4.GP()}else a4.e=17 +break +case 27:break +default:break}}a4.a=!1 +if(n&&a4.c===o.length){a4.b=null +a4.c=-1 +s=a4.e +if(s!==26&&s!==27)a4.go.ie(0)}}, +art(a){var s=this +s.go.ic(0) +s.b=a +s.c=0 +s.Pr()}, +arv(){var s,r,q=this,p=null,o="Connection closed before full header was received" +q.go=null +s=q.e +if(s===25||s===27)return +if(q.fy!=null){r=!1 +if(s!==26)if(s!==0){r=!(s===24&&!q.cx&&q.ay===-1) +s=r}else s=r +else s=r +if(s)q.aIJ(new A.hg("Connection closed while receiving data",p)) +q.Qa(!0) +q.k2.L(0) +return}if(s===0){q.T6(new A.hg(o,p)) +q.k2.L(0) +return}if(s===26){q.k2.L(0) +return}if(s<17){q.e=27 +q.T6(new A.hg(o,p)) +q.k2.L(0) +return}if(!q.cx&&q.ay===-1)q.e=25 +else{q.e=27 +q.T6(new A.hg("Connection closed before full body was received",p))}q.k2.L(0)}, +gb15(a){switch(this.ax){case 1:return"1.0" +case 2:return"1.1"}return null}, +b_8(){var s,r,q=this,p=q.b +if(p==null)return null +s=q.c +if(s===p.length)return null +r=B.G.hL(p,s) +q.b=null +q.c=-1 +return r}, +Gy(){var s=this +if(s.e===26)return +s.r=s.e=0 +B.b.V(s.Q) +B.b.V(s.as) +s.at=0 +B.b.V(s.y) +B.b.V(s.z) +s.ax=s.x=s.w=0 +s.ay=-1 +s.cy=s.cx=s.CW=!1 +s.db=-1 +s.dy=s.dx=!1 +s.fx=null}, +axf(a){if(48<=a&&a<=57)return a-48 +else if(65<=a&&a<=70)return a-65+10 +else if(97<=a&&a<=102)return a-97+10 +else throw A.d(A.c1("Failed to parse HTTP, "+a+" is expected to be a Hex digit",null))}, +lX(){var s,r=this.e +switch(r){case 0:case 1:case 3:s="Method" +break +case 4:s="URI" +break +case 8:s="Reason phrase" +break +case 10:case 11:s="Header field" +break +case 12:case 13:s="Header value" +break +default:throw A.d(A.ag("Unexpected state: "+r))}throw A.d(A.c1(s+" exceeds the 1048576 size limit",null))}, +av5(a){var s,r=this,q=null,p=r.k3=A.i9(q,q,q,q,!0,t.D),o=r.fx +o.toString +s=r.fy=new A.ln(new A.aq(new A.a_($.ab,t.tr),t.VY),new A.cA(p,A.y(p).i("cA<1>")),o) +p.d=new A.b7p(r,s) +p.e=new A.b7q(r,s) +p.f=new A.b7r(r,s) +p.r=new A.b7s(r,s) +r.k1=!0 +r.u1() +return s}, +Qa(a){var s,r=this,q=r.fy +if(q==null)return +q.z=!0 +q.b.bv(0,a) +r.fy=null +s=r.k3 +if(s!=null){s.L(0) +r.k3=null}r.k1=!1 +r.u1()}, +GP(){return this.Qa(!1)}, +u1(){var s=this +if(s.fy!=null){if(!s.k1&&!s.a)s.Pr()}else if(!s.id&&!s.a)s.Pr()}, +a73(a,b){var s +this.e=27 +s=this.k2 +s.cX(a,b) +s.L(0)}, +T6(a){return this.a73(a,null)}, +a72(a,b){var s +this.e=27 +s=this.k3 +if(s!=null)s.cX(a,b) +s=this.k3 +if(s!=null)s.L(0)}, +aIJ(a){return this.a72(a,null)}} +A.b7l.prototype={ +$0(){this.a.id=!1}, +$S:0} +A.b7m.prototype={ +$0(){var s=this.a +s.id=!0 +s.u1()}, +$S:0} +A.b7n.prototype={ +$0(){var s=this.a +s.id=!1 +s.u1()}, +$S:0} +A.b7o.prototype={ +$0(){}, +$S:4} +A.b7p.prototype={ +$0(){var s=this.a +if(this.b!==s.fy)return +s.k1=!1 +s.u1()}, +$S:0} +A.b7q.prototype={ +$0(){var s=this.a +if(this.b!==s.fy)return +s.k1=!0 +s.u1()}, +$S:0} +A.b7r.prototype={ +$0(){var s=this.a +if(this.b!==s.fy)return +s.k1=!1 +s.u1()}, +$S:0} +A.b7s.prototype={ +$0(){var s=this.a +if(this.b!==s.fy)return +s.Qa(!0) +s.k2.L(0)}, +$S:4} +A.asx.prototype={ +av3(){var s="permessage-deflate",r=new A.b_h("",0) +r.a=s +r.a=s +r.b=15 +r.a="permessage-deflate; client_max_window_bits" +return r}} +A.PC.prototype={ +j(a){return"WebSocketException: "+this.a}, +$ibm:1} +A.b_h.prototype={ +j(a){return this.a}} +A.Gc.prototype={ +iZ(a){return new A.lm(new A.bgS(this),a,t.g9)}, +cX(a,b){A.f3(a,"error") +this.at.cX(a,b)}, +L(a){var s=this.at.a +if((s.e&2)!==0)A.V(A.a1("Stream is already closed")) +s.qp()}, +q(a,b){var s,r,q,p,o,n,m,l=this,k="Protocol error",j=t.D.b(b)?b:new Uint8Array(A.e7(b)),i=j.length,h=l.a +if(h===5)throw A.d(A.ll("Data on closed connection")) +if(h===6)throw A.d(A.ll("Data on failed connection")) +h=l.ch +s=l.ay +r=0 +while(!0){if(r=8&&o<=10){if(q)throw A.d(A.ll(k))}else throw A.d(A.ll(k)) +l.a=1}else if(q===1){l.f=(p&128)!==0 +q=l.e=p&127 +o=l.d +if((o===8||o===9||o===10)&&q>125)throw A.d(A.ll(k)) +if(q===126){l.e=0 +l.a=l.r=2}else if(q===127){l.e=0 +l.r=8 +l.a=2}else l.a5t()}else{l.e=(l.e<<8|p)>>>0 +if(--l.r===0)l.a5t()}else if(q===3){q=l.w +o=q-1 +l.w=o +s[4-q]=p +if(o===0){l.x=l.e +l.a8e()}}else{q=l.x +m=Math.min(i-r,q) +l.x=q-m +if(l.f)l.aMo(r,m,j) +q=j.buffer +o=j.byteOffset +q=new Uint8Array(q,o+r,m) +h.q(0,q) +q=l.d +if(q===8||q===9||q===10){if(l.x===0)l.auQ()}else{q=l.z +if(q!==1&&q!==2)throw A.d(A.ll(k)) +if(l.x===0)l.a5L()}r=r+m-1}++r}}, +aMo(a,b,c){var s,r,q,p,o,n,m,l,k,j,i=this +if(b>=16){s=16-(a&15) +r=a+s +for(q=i.ay,p=a;p0){for(n=i.y,m=0,p=3;p>=0;--p)m=(m<<8|q[n+p&3])>>>0 +l=A.buz(m,m,m,m) +k=B.n3.aaG(c.buffer,c.byteOffset+r,o) +for(q=k.a.length/4|0,p=0;p>>0 +p.Q=q +if(q===1005)throw A.d(A.ll(o)) +if(r>2)p.as=B.a5.ei(0,B.G.hL(s,2))}p.a=5 +r=p.at.a +if((r.e&2)!==0)A.V(A.a1(n)) +r.qp() +break +case 9:r=p.at +r.toString +q=p.ch.oq() +r=r.a +if((r.e&2)!==0)A.V(A.a1(n)) +r.l8(0,new A.Gb(q)) +break +case 10:r=p.at +r.toString +q=p.ch.oq() +r=r.a +if((r.e&2)!==0)A.V(A.a1(n)) +r.l8(0,new A.zH(q)) +break}p.ST()}, +aDO(){var s=this.d +return s===8||s===9||s===10}, +ST(){var s=this,r=s.a +if(r!==5&&r!==6)s.a=0 +s.b=!1 +s.r=s.e=s.d=-1 +s.w=4 +s.x=-1 +s.y=0}, +$ice:1} +A.bgS.prototype={ +$1(a){var s=this.a +if(s.at!=null)throw A.d(A.a1("WebSocket transformer already used.")) +s.at=a +return s}, +$S:407} +A.Gb.prototype={} +A.zH.prototype={} +A.bgR.prototype={ +awY(){var s=this.f +s=this.f=A.bMH(!0,this.d) +return s}, +awZ(){var s=this.r +s=this.r=A.bMG(!0,this.c) +return s}, +aZA(a){this.awY()}, +aZB(a){this.awZ()}} +A.Ga.prototype={ +iZ(a){return new A.lm(new A.bgQ(this),a,t.TR)}, +q(a,b){var s,r,q,p,o,n=this +if(b instanceof A.zH){n.Jw(10,b.a) +return}if(b instanceof A.Gb){n.Jw(9,b.a) +return}s=1 +if(b!=null){if(typeof b=="string")r=B.ao.b4(b) +else{if(t.Cm.b(b))r=b +else{q=A.bl(b,null) +throw A.d(q)}s=2}p=n.c +if(p!=null)r=p.aZB(r) +o=r}else o=null +n.Jw(s,o)}, +cX(a,b){A.f3(a,"error") +this.b.cX(a,b)}, +L(a){var s,r=this.a,q=r.at,p=r.ax +if(q!=null){r=A.a([q>>>8&255,q&255],t.t) +if(p!=null)B.b.G(r,B.ao.b4(p)) +s=r}else s=null +this.Jw(8,s) +r=this.b.a +if((r.e&2)!==0)A.V(A.a1("Stream is already closed")) +r.qp()}, +Jw(a,b){var s +if(this.c!=null)s=a===1||a===2 +else s=!1 +B.b.az(A.bRD(a,b,!1,s),new A.bgP(this))}, +$ice:1} +A.bgQ.prototype={ +$1(a){var s=this.a +if(s.b!=null)throw A.d(A.a1("WebSocket transformer already used")) +s.b=a +return s}, +$S:413} +A.bgP.prototype={ +$1(a){var s=this.a.b.a +if((s.e&2)!==0)A.V(A.a1("Stream is already closed")) +s.l8(0,a)}, +$S:96} +A.amu.prototype={ +aG1(){var s=this.d +if(s!=null)s.S(0)}, +arx(){var s=this.d +if(s!=null)s.ic(0) +else this.e=!0}, +arz(){var s=this.d +if(s!=null)s.ie(0) +else this.e=!1}, +a0l(){var s=this.d +if(s!=null){this.d=null +s.S(0)}}, +QW(){var s,r=this,q=r.c +if(q!=null)return q +q=r.c=A.i9(r.gaG0(),null,r.garw(),r.gary(),!0,t.z) +s=r.a +r.b.nI(0,new A.Ga(s,s.ch).iZ(new A.cA(q,A.y(q).i("cA<1>")))).cv(new A.bgw(r),new A.bgx(r),t.P) +return q}, +H6(a,b){var s=this.w +if(s==null)return!1 +if(a!=null)s.dh(a,b) +else s.bv(0,this.a) +this.w=null +return!0}, +a2O(){return this.H6(null,null)}, +awp(a){return this.H6(a,null)}, +nI(a,b){var s,r,q,p=this +if(p.f){b.bL(null).S(0) +return A.c7(p.a,t.z)}p.QW() +s=new A.a_($.ab,t.LR) +p.w=new A.aq(s,t.zh) +r=p.gawo() +q=b.aK(new A.bgy(p),!0,r,r) +p.d=q +if(p.e){q.ic(0) +p.e=!1}return s}, +L(a){this.QW().L(0) +return this.r.a.ak(new A.bgB(this),t.z)}, +q(a,b){var s +if(this.f)return +s=this.QW() +if((s.b&4)!==0)return +s.q(0,b)}} +A.bgw.prototype={ +$1(a){var s=this.a +s.a2O() +s.r.bv(0,s.a)}, +$S:2} +A.bgx.prototype={ +$2(a,b){var s=this.a +s.f=!0 +s.a0l() +if(!s.H6(a,b))s.r.dh(a,b)}, +$S:25} +A.bgy.prototype={ +$1(a){this.a.c.q(0,a)}, +$S:16} +A.bgB.prototype={ +$1(a){var s=this.a +return s.b.L(0).dc(new A.bgz()).ak(new A.bgA(s),t.z)}, +$S:177} +A.bgz.prototype={ +$1(a){}, +$S:2} +A.bgA.prototype={ +$1(a){return this.a.a}, +$S:430} +A.rD.prototype={ +arm(a,b,c,d,e){var s,r,q=this,p=q.e,o=$.ab,n=new A.amu(q,p,new A.aq(new A.a_(o,t.t8),t.Mi)) +q.as=n +q.d=new A.jS(n,new A.aq(new A.a_(o,t.U),t.h),t.sh) +q.r=1 +q.ch=e +o=new Uint8Array(4) +n=A.a([],t.XE) +s=new A.Gc(!1,o,new A.EA(n),e) +r=q.c=s.iZ(p).aK(new A.bgC(q),!0,new A.bgD(q,s),new A.bgE(q)) +r.ic(0) +p=q.b +o=r.gY6(r) +p.d=o +p.r=new A.bgF(q) +p.e=r.gXG(r) +p.f=o +$.boL.n(0,q.gTr(),q)}, +aK(a,b,c,d){var s=this.b +return new A.cA(s,A.y(s).i("cA<1>")).aK(a,b,c,d)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}, +saZh(a){var s +if(this.w)return +s=this.Q +if(s!=null)s.S(0) +this.z=a +return}, +q(a,b){var s=this.d +s===$&&A.b() +s.q(0,b)}, +cX(a,b){var s=this.d +s===$&&A.b() +s.cX(a,b)}, +L(a){var s,r,q=this +if(A.byc(null))throw A.d(A.ll("Reserved status code null")) +if(q.at==null)q.ax=q.at=null +s=q.b +r=s.b +if((r&4)===0){if((r&1)===0&&q.c!=null)new A.cA(s,A.y(s).i("cA<1>")).Da(t.z).dc(new A.bgG()) +if(q.ay==null)q.ay=A.bZ(B.wI,new A.bgH(q))}s=q.d +s===$&&A.b() +return s.L(0)}, +Pp(a,b){var s,r=this +if(r.w)return +if(r.at==null){r.at=a +r.ax=b}s=r.Q +if(s!=null)s.S(0) +r.w=!0 +s=r.as +s===$&&A.b() +s.f=!0 +s.a0l() +s.L(0) +$.boL.C(0,r.gTr())}, +a0m(a){return this.Pp(a,null)}, +arp(){return this.Pp(null,null)}, +$iv9:1, +$ice:1} +A.bgL.prototype={ +$1(a){var s,r=this,q=r.a +q.a.gov() +s=q.a.gov() +if(s.length!==0){q=B.ao.b4(q.a.gov()) +a.dx.l5(0,"authorization","Basic "+B.ct.gk5().b4(q))}q=a.dx +q.l5(0,"connection","Upgrade") +q.l5(0,"upgrade","websocket") +q.l5(0,"Sec-WebSocket-Key",r.c) +q.l5(0,"Cache-Control","no-cache") +q.l5(0,"Sec-WebSocket-Version","13") +s=r.d +if(s!=null){s=A.a(s.slice(0),A.af(s)) +q.nH(0,"Sec-WebSocket-Protocol",s)}q.nH(0,"Sec-WebSocket-Extensions",r.e.av3()) +return a.L(0)}, +$S:442} +A.bgM.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j=this,i=new A.bgN(a,j.b),h=a.a,g=h.e,f=g.a.h(0,A.mi("connection")) +h=h.r +h.toString +if(h!==101||f==null||!J.bEw(f,new A.bgI())||g.mv(0,"upgrade").toLowerCase()!=="websocket")return i.$1("Connection to '"+j.a.a.j(0)+"' was not upgraded to websocket") +s=g.mv(0,"Sec-WebSocket-Accept") +if(s==null)return i.$1("Response did not contain a 'Sec-WebSocket-Accept' header") +h=A.bO(80,0,!1,t.S) +f=A.a([],t.t) +r=new Uint32Array(16) +q=new Uint32Array(5) +p=new A.bcT(h,16,!0,f,r,q) +q[0]=1732584193 +q[1]=4023233417 +q[2]=2562383102 +q[3]=271733878 +q[4]=3285377520 +p.q(0,new A.eY(j.c+"258EAFA5-E914-47DA-95CA-C5AB0DC85B11")) +o=p.L(0) +n=B.da.b4(s) +if(o.length!==n.length)return i.$1("Response header 'Sec-WebSocket-Accept' is the wrong length") +for(m=0;m").aH(b).i("ij<1,2>"))}, +q(a,b){if(!!a.fixed$length)A.V(A.ag("add")) +a.push(b)}, +iF(a,b){if(!!a.fixed$length)A.V(A.ag("removeAt")) +if(b<0||b>=a.length)throw A.d(A.a6r(b,null)) +return a.splice(b,1)[0]}, +rF(a,b,c){if(!!a.fixed$length)A.V(A.ag("insert")) +if(b<0||b>a.length)throw A.d(A.a6r(b,null)) +a.splice(b,0,c)}, +DM(a,b,c){var s,r +if(!!a.fixed$length)A.V(A.ag("insertAll")) +A.bvd(b,0,a.length,"index") +if(!t.Ee.b(c))c=J.nX(c) +s=J.aM(c) +a.length=a.length+s +r=b+s +this.d5(a,r,a.length,a,b) +this.dC(a,b,r,c)}, +iG(a){if(!!a.fixed$length)A.V(A.ag("removeLast")) +if(a.length===0)throw A.d(A.Gp(a,-1)) +return a.pop()}, +C(a,b){var s +if(!!a.fixed$length)A.V(A.ag("remove")) +for(s=0;s"))}, +G(a,b){var s +if(!!a.fixed$length)A.V(A.ag("addAll")) +if(Array.isArray(b)){this.arP(a,b) +return}for(s=J.ay(b);s.u();)a.push(s.gI(s))}, +arP(a,b){var s,r=b.length +if(r===0)return +if(a===b)throw A.d(A.cZ(a)) +for(s=0;s").aH(c).i("ad<1,2>"))}, +kS(a,b){return this.eR(a,b,t.z)}, +bJ(a,b){var s,r=A.bO(a.length,"",!1,t.N) +for(s=0;ss)throw A.d(A.dn(b,0,s,"start",null)) +if(c==null)c=s +else if(cs)throw A.d(A.dn(c,b,s,"end",null)) +if(b===c)return A.a([],A.af(a)) +return A.a(a.slice(b,c),A.af(a))}, +hL(a,b){return this.cK(a,b,null)}, +Fs(a,b,c){A.dL(b,c,a.length,null,null) +return A.fc(a,b,c,A.af(a).c)}, +gW(a){if(a.length>0)return a[0] +throw A.d(A.cV())}, +gY(a){var s=a.length +if(s>0)return a[s-1] +throw A.d(A.cV())}, +gd_(a){var s=a.length +if(s===1)return a[0] +if(s===0)throw A.d(A.cV()) +throw A.d(A.bJF())}, +q1(a,b,c){if(!!a.fixed$length)A.V(A.ag("removeRange")) +A.dL(b,c,a.length,null,null) +a.splice(b,c-b)}, +d5(a,b,c,d,e){var s,r,q,p,o +if(!!a.immutable$list)A.V(A.ag("setRange")) +A.dL(b,c,a.length,null,null) +s=c-b +if(s===0)return +A.eu(e,"skipCount") +if(t.j.b(d)){r=d +q=e}else{p=J.A1(d,e) +r=p.ig(p,!1) +q=0}p=J.a0(r) +if(q+s>p.gt(r))throw A.d(A.btI()) +if(q=0;--o)a[b+o]=p.h(r,q+o) +else for(o=0;o0){a[0]=q +a[1]=r}return}p=0 +if(A.af(a).c.b(null))for(o=0;o0)this.aIF(a,p)}, +mE(a){return this.fZ(a,null)}, +aIF(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}}, +dV(a,b){var s,r=a.length +if(0>=r)return-1 +for(s=0;s"))}, +gB(a){return A.at(a)}, +gt(a){return a.length}, +st(a,b){if(!!a.fixed$length)A.V(A.ag("set length")) +if(b<0)throw A.d(A.dn(b,0,null,"newLength",null)) +if(b>a.length)A.af(a).c.a(null) +a.length=b}, +h(a,b){if(!(b>=0&&b=0&&b"))}, +Wi(a,b){return A.bt8(a,b,A.af(a).c)}, +F0(a,b){return new A.ey(a,b.i("ey<0>"))}, +ab(a,b){var s=A.a8(a,!0,A.af(a).c) +this.G(s,b) +return s}, +aef(a,b,c){var s +if(c>=a.length)return-1 +for(s=c;s=0;--s)if(b.$1(a[s]))return s +return-1}, +gfl(a){return A.cK(A.af(a))}, +$ics:1, +$iaz:1, +$iB:1, +$iD:1} +J.aCZ.prototype={} +J.di.prototype={ +gI(a){var s=this.d +return s==null?this.$ti.c.a(s):s}, +u(){var s,r=this,q=r.a,p=q.length +if(r.b!==p)throw A.d(A.T(q)) +s=r.c +if(s>=p){r.d=null +return!1}r.d=q[s] +r.c=s+1 +return!0}} +J.tO.prototype={ +bO(a,b){var s +if(ab)return 1 +else if(a===b){if(a===0){s=this.go4(b) +if(this.go4(a)===s)return 0 +if(this.go4(a))return-1 +return 1}return 0}else if(isNaN(a)){if(isNaN(b))return 0 +return 1}else return-1}, +go4(a){return a===0?1/a<0:a<0}, +Us(a){return Math.abs(a)}, +gOT(a){var s +if(a>0)s=1 +else s=a<0?-1:a +return s}, +aA(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.ag(""+a+".toInt()"))}, +dZ(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.ag(""+a+".ceil()"))}, +dv(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.ag(""+a+".floor()"))}, +aa(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.ag(""+a+".round()"))}, +agT(a){if(a<0)return-Math.round(-a) +else return Math.round(a)}, +iv(a,b,c){if(this.bO(b,c)>0)throw A.d(A.zO(b)) +if(this.bO(a,b)<0)return b +if(this.bO(a,c)>0)return c +return a}, +aF(a,b){var s +if(b>20)throw A.d(A.dn(b,0,20,"fractionDigits",null)) +s=a.toFixed(b) +if(a===0&&this.go4(a))return"-"+s +return s}, +ah8(a,b){var s +if(b<1||b>21)throw A.d(A.dn(b,1,21,"precision",null)) +s=a.toPrecision(b) +if(a===0&&this.go4(a))return"-"+s +return s}, +hY(a,b){var s,r,q,p +if(b<2||b>36)throw A.d(A.dn(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.V(A.ag("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.ap("0",q)}, +j(a){if(a===0&&1/a<0)return"-0.0" +else return""+a}, +gB(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}, +ab(a,b){return a+b}, +ai(a,b){return a-b}, +fO(a,b){return a/b}, +ap(a,b){return a*b}, +an(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}, +im(a,b){if((a|0)===a)if(b>=1||b<-1)return a/b|0 +return this.a8v(a,b)}, +cn(a,b){return(a|0)===a?a/b|0:this.a8v(a,b)}, +a8v(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.ag("Result of truncating division is "+A.c(s)+": "+A.c(a)+" ~/ "+A.c(b)))}, +akX(a,b){if(b<0)throw A.d(A.zO(b)) +return b>31?0:a<>>0}, +aKl(a,b){return b>31?0:a<>>0}, +ald(a,b){var s +if(b<0)throw A.d(A.zO(b)) +if(a>0)s=this.Ty(a,b) +else{s=b>31?31:b +s=a>>s>>>0}return s}, +cA(a,b){var s +if(a>0)s=this.Ty(a,b) +else{s=b>31?31:b +s=a>>s>>>0}return s}, +a82(a,b){if(0>b)throw A.d(A.zO(b)) +return this.Ty(a,b)}, +Ty(a,b){return b>31?0:a>>>b}, +xt(a,b){if(b>31)return 0 +return a>>>b}, +tk(a,b){return(a|b)>>>0}, +mC(a,b){return a>b}, +YG(a,b){return a>=b}, +gfl(a){return A.cK(t.Ci)}, +$ida:1, +$ia5:1, +$icX:1} +J.BL.prototype={ +Us(a){return Math.abs(a)}, +gOT(a){var s +if(a>0)s=1 +else s=a<0?-1:a +return s}, +gfl(a){return A.cK(t.S)}, +$idT:1, +$it:1} +J.Ke.prototype={ +gfl(a){return A.cK(t.i)}, +$idT:1} +J.qd.prototype={ +pr(a,b){if(b<0)throw A.d(A.Gp(a,b)) +if(b>=a.length)A.V(A.Gp(a,b)) +return a.charCodeAt(b)}, +JB(a,b,c){var s=b.length +if(c>s)throw A.d(A.dn(c,0,s,null,null)) +return new A.akR(b,a,c)}, +pf(a,b){return this.JB(a,b,0)}, +pP(a,b,c){var s,r,q=null +if(c<0||c>b.length)throw A.d(A.dn(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.bE(a,r-s)}, +No(a,b,c){return A.dm(a,b,c)}, +hI(a,b,c){A.bvd(0,0,a.length,"startIndex") +return A.bAU(a,b,c,0)}, +ku(a,b){if(typeof b=="string")return A.a(a.split(b),t.s) +else if(b instanceof A.oo&&b.ga5P().exec("").length-2===0)return A.a(a.split(b.b),t.s) +else return this.avs(a,b)}, +lK(a,b,c,d){var s=A.dL(b,c,a.length,null,null) +return A.bpK(a,b,s,d)}, +avs(a,b){var s,r,q,p,o,n,m=A.a([],t.s) +for(s=J.ap7(b,a),s=s.gav(s),r=0,q=1;s.u();){p=s.gI(s) +o=p.gcD(p) +n=p.gbV(p) +q=n-o +if(q===0&&r===o)continue +m.push(this.R(a,r,o)) +r=n}if(r0)m.push(this.bE(a,r)) +return m}, +eZ(a,b,c){var s +if(c<0||c>a.length)throw A.d(A.dn(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.bqQ(b,a,c)!=null}, +ba(a,b){return this.eZ(a,b,0)}, +R(a,b,c){return a.substring(b,A.dL(b,c,a.length,null,null))}, +bE(a,b){return this.R(a,b,null)}, +b0g(a){return a.toUpperCase()}, +cw(a){var s,r,q,p=a.trim(),o=p.length +if(o===0)return p +if(p.charCodeAt(0)===133){s=J.btO(p,1) +if(s===o)return""}else s=0 +r=o-1 +q=p.charCodeAt(r)===133?J.btP(p,r):o +if(s===0&&q===o)return p +return p.substring(s,q)}, +NN(a){var s=a.trimStart() +if(s.length===0)return s +if(s.charCodeAt(0)!==133)return s +return s.substring(J.btO(s,1))}, +NO(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.btP(r,s))}, +ap(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.Tf) +for(s=a,r="";!0;){if((b&1)===1)r=s+r +b=b>>>1 +if(b===0)break +s+=s}return r}, +fk(a,b,c){var s=b-a.length +if(s<=0)return a +return this.ap(c,s)+a}, +aYY(a,b){var s=b-a.length +if(s<=0)return a +return a+this.ap(" ",s)}, +iA(a,b,c){var s,r,q,p +if(c<0||c>a.length)throw A.d(A.dn(c,0,a.length,null,null)) +if(typeof b=="string")return a.indexOf(b,c) +if(b instanceof A.oo){s=b.R0(a,c) +return s==null?-1:s.b.index}for(r=a.length,q=J.kt(b),p=c;p<=r;++p)if(q.pP(b,a,p)!=null)return p +return-1}, +dV(a,b){return this.iA(a,b,0)}, +LZ(a,b,c){var s,r,q +if(c==null)c=a.length +else if(c<0||c>a.length)throw A.d(A.dn(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.kt(b),q=c;q>=0;--q)if(s.pP(b,a,q)!=null)return q +return-1}, +o6(a,b){return this.LZ(a,b,null)}, +aQ4(a,b,c){var s=a.length +if(c>s)throw A.d(A.dn(c,0,s,null,null)) +return A.aoJ(a,b,c)}, +p(a,b){return this.aQ4(a,b,0)}, +ga_(a){return a.length===0}, +gbC(a){return a.length!==0}, +bO(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}, +gfl(a){return A.cK(t.N)}, +gt(a){return a.length}, +h(a,b){if(!(b>=0&&b")) +s.jA(r.garB()) +r.jA(a) +r.j5(0,d) +return r}, +bL(a){return this.aK(a,null,null,null)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}} +A.Al.prototype={ +S(a){return this.a.S(0)}, +jA(a){this.c=a==null?null:this.b.vD(a,t.z,this.$ti.y[1])}, +j5(a,b){var s=this +s.a.j5(0,b) +if(b==null)s.d=null +else if(t.hK.b(b))s.d=s.b.Eu(b,t.z,t.K,t.Km) +else if(t.mX.b(b))s.d=s.b.vD(b,t.z,t.K) +else throw A.d(A.bl(u.db,null))}, +arC(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.v(o) +q=A.aT(o) +p=m.d +if(p==null)m.b.Dx(r,q) +else{l=t.K +n=m.b +if(t.hK.b(p))n.agW(p,r,q,l,t.Km) +else n.vK(t.mX.a(p),r,l)}return}m.b.vK(l,s,m.$ti.y[1])}, +mm(a,b){this.a.mm(0,b)}, +ic(a){return this.mm(0,null)}, +ie(a){this.a.ie(0)}, +xI(a,b){return this.a.xI(a,b)}, +$ijG:1} +A.wd.prototype={ +mW(a,b,c){return new A.wd(this.a,this.$ti.i("@<1,2>").aH(b).aH(c).i("wd<1,2,3,4>"))}} +A.w9.prototype={ +b4(a){var s=this.$ti +return s.y[3].a(this.a.b4(s.c.a(a)))}, +mW(a,b,c){return new A.w9(this.a,this.$ti.i("@<1,2>").aH(b).aH(c).i("w9<1,2,3,4>"))}} +A.adV.prototype={ +q(a,b){var s,r,q=this,p=J.a0(b),o=p.gt(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.G.dC(r,0,q.length,q) +this.b=r}, +oq(){var s,r,q=this,p=q.a +if(p===0)return $.Gw() +s=q.b +r=A.dw(s.buffer,s.byteOffset,p) +q.a=0 +q.b=$.Gw() +return r}, +EG(){var s,r=this.a +if(r===0)return $.Gw() +s=this.b +return new Uint8Array(A.e7(A.dw(s.buffer,s.byteOffset,r)))}, +gt(a){return this.a}, +ga_(a){return this.a===0}, +gbC(a){return this.a!==0}} +A.EA.prototype={ +q(a,b){var s=t.D.b(b)?b:new Uint8Array(A.e7(b)) +this.b.push(s) +this.a=this.a+s.length}, +oq(){var s,r,q,p,o,n,m,l=this,k=l.a +if(k===0)return $.Gw() +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"))}, +gt(a){return J.aM(this.gkz())}, +ga_(a){return J.cT(this.gkz())}, +gbC(a){return J.du(this.gkz())}, +kt(a,b){var s=A.y(this) +return A.jX(J.A1(this.gkz(),b),s.c,s.y[1])}, +lL(a,b){var s=A.y(this) +return A.jX(J.W1(this.gkz(),b),s.c,s.y[1])}, +c2(a,b){return A.y(this).y[1].a(J.GC(this.gkz(),b))}, +gW(a){return A.y(this).y[1].a(J.fT(this.gkz()))}, +gY(a){return A.y(this).y[1].a(J.lv(this.gkz()))}, +p(a,b){return J.mv(this.gkz(),b)}, +j(a){return J.p(this.gkz())}} +A.Xh.prototype={ +u(){return this.a.u()}, +gI(a){var s=this.a +return this.$ti.y[1].a(s.gI(s))}} +A.wa.prototype={ +kG(a,b){return A.jX(this.a,A.y(this).c,b)}, +gkz(){return this.a}} +A.Ra.prototype={$iaz:1} +A.Qi.prototype={ +h(a,b){return this.$ti.y[1].a(J.i(this.a,b))}, +n(a,b,c){J.bT(this.a,b,this.$ti.c.a(c))}, +st(a,b){J.bF4(this.a,b)}, +q(a,b){J.dN(this.a,this.$ti.c.a(b))}, +fZ(a,b){var s=b==null?null:new A.aZX(this,b) +J.W0(this.a,s)}, +C(a,b){return J.nW(this.a,b)}, +iG(a){return this.$ti.y[1].a(J.bF0(this.a))}, +Fs(a,b,c){var s=this.$ti +return A.jX(J.bEP(this.a,b,c),s.c,s.y[1])}, +d5(a,b,c,d,e){var s=this.$ti +J.bF5(this.a,b,c,A.jX(d,s.y[1],s.c),e)}, +dC(a,b,c,d){return this.d5(0,b,c,d,0)}, +$iaz:1, +$iD:1} +A.aZX.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.i("t(1,1)")}} +A.ij.prototype={ +kG(a,b){return new A.ij(this.a,this.$ti.i("@<1>").aH(b).i("ij<1,2>"))}, +gkz(){return this.a}} +A.td.prototype={ +kG(a,b){return new A.td(this.a,this.b,this.$ti.i("@<1>").aH(b).i("td<1,2>"))}, +q(a,b){return this.a.q(0,this.$ti.c.a(b))}, +G(a,b){var s=this.$ti +this.a.G(0,A.jX(b,s.y[1],s.c))}, +C(a,b){return this.a.C(0,b)}, +n7(a,b){var s=this +if(s.b!=null)return s.auG(b,!0) +return new A.td(s.a.n7(0,b),null,s.$ti)}, +auG(a,b){var s,r=this.b,q=this.$ti,p=q.y[1],o=r==null?A.tV(p):r.$1$0(p) +for(p=this.a,p=p.gav(p),q=q.y[1];p.u();){s=q.a(p.gI(p)) +if(b===a.p(0,s))o.q(0,s)}return o}, +aue(){var s=this.b,r=this.$ti.y[1],q=s==null?A.tV(r):s.$1$0(r) +q.G(0,this) +return q}, +hZ(a){var s=this.b,r=this.$ti.y[1],q=s==null?A.tV(r):s.$1$0(r) +q.G(0,this) +return q}, +$iaz:1, +$icz:1, +gkz(){return this.a}} +A.wb.prototype={ +mW(a,b,c){return new A.wb(this.a,this.$ti.i("@<1,2>").aH(b).aH(c).i("wb<1,2,3,4>"))}, +hO(a,b){return J.bqJ(this.a,b)}, +N(a,b){return J.cO(this.a,b)}, +h(a,b){return this.$ti.i("4?").a(J.i(this.a,b))}, +n(a,b,c){var s=this.$ti +J.bT(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.GD(this.a,s.c.a(b),new A.as_(this,c)))}, +C(a,b){return this.$ti.i("4?").a(J.nW(this.a,b))}, +V(a){J.GA(this.a)}, +az(a,b){J.fz(this.a,new A.arZ(this,b))}, +gd1(a){var s=this.$ti +return A.jX(J.rX(this.a),s.c,s.y[2])}, +gaJ(a){var s=this.$ti +return A.jX(J.bqO(this.a),s.y[1],s.y[3])}, +gt(a){return J.aM(this.a)}, +ga_(a){return J.cT(this.a)}, +gbC(a){return J.du(this.a)}, +gdG(a){var s=J.nV(this.a) +return s.eR(s,new A.arY(this),this.$ti.i("aO<3,4>"))}} +A.as_.prototype={ +$0(){return this.a.$ti.y[1].a(this.b.$0())}, +$S(){return this.a.$ti.i("2()")}} +A.arZ.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.i("~(1,2)")}} +A.arY.prototype={ +$1(a){var s=this.a.$ti +return new A.aO(s.y[2].a(a.a),s.y[3].a(a.b),s.i("aO<3,4>"))}, +$S(){return this.a.$ti.i("aO<3,4>(aO<1,2>)")}} +A.pv.prototype={ +kG(a,b){return new A.pv(this.a,this.$ti.i("@<1>").aH(b).i("pv<1,2>"))}, +q(a,b){this.a.q(0,this.$ti.c.a(b))}, +$iaz:1, +gkz(){return this.a}} +A.kO.prototype={ +j(a){return"LateInitializationError: "+this.a}} +A.eY.prototype={ +gt(a){return this.a.length}, +h(a,b){return this.a.charCodeAt(b)}} +A.bjE.prototype={ +$0(){return A.c7(null,t.P)}, +$S:49} +A.aRe.prototype={} +A.az.prototype={} +A.aN.prototype={ +gav(a){var s=this +return new A.ci(s,s.gt(s),A.y(s).i("ci"))}, +az(a,b){var s,r=this,q=r.gt(r) +for(s=0;s").aH(c).i("ad<1,2>"))}, +kS(a,b){return this.eR(0,b,t.z)}, +lI(a,b){var s,r,q=this,p=q.gt(q) +if(p===0)throw A.d(A.cV()) +s=q.c2(0,0) +for(r=1;rs)throw A.d(A.dn(r,0,s,"start",null))}}, +gawV(){var s=J.aM(this.a),r=this.c +if(r==null||r>s)return s +return r}, +gaL8(){var s=J.aM(this.a),r=this.b +if(r>s)return s +return r}, +gt(a){var s,r=J.aM(this.a),q=this.b +if(q>=r)return 0 +s=this.c +if(s==null||s>=r)return r-q +return s-q}, +c2(a,b){var s=this,r=s.gaL8()+b +if(b<0||r>=s.gawV())throw A.d(A.eZ(b,s.gt(0),s,null,"index")) +return J.GC(s.a,r)}, +kt(a,b){var s,r,q=this +A.eu(b,"count") +s=q.b+b +r=q.c +if(r!=null&&s>=r)return new A.jk(q.$ti.i("jk<1>")) +return A.fc(q.a,s,r,q.$ti.c)}, +lL(a,b){var s,r,q,p=this +A.eu(b,"count") +s=p.c +r=p.b +q=r+b +if(s==null)return A.fc(p.a,r,q,p.$ti.c) +else{if(s=o){r.d=null +return!1}r.d=p.c2(q,s);++r.c +return!0}} +A.hF.prototype={ +gav(a){return new A.bD(J.ay(this.a),this.b,A.y(this).i("bD<1,2>"))}, +gt(a){return J.aM(this.a)}, +ga_(a){return J.cT(this.a)}, +gW(a){return this.b.$1(J.fT(this.a))}, +gY(a){return this.b.$1(J.lv(this.a))}, +c2(a,b){return this.b.$1(J.GC(this.a,b))}} +A.pM.prototype={$iaz:1} +A.bD.prototype={ +u(){var s=this,r=s.b +if(r.u()){s.a=s.c.$1(r.gI(r)) +return!0}s.a=null +return!1}, +gI(a){var s=this.a +return s==null?this.$ti.y[1].a(s):s}} +A.ad.prototype={ +gt(a){return J.aM(this.a)}, +c2(a,b){return this.b.$1(J.GC(this.a,b))}} +A.bh.prototype={ +gav(a){return new A.va(J.ay(this.a),this.b)}, +eR(a,b,c){return new A.hF(this,b,this.$ti.i("@<1>").aH(c).i("hF<1,2>"))}, +kS(a,b){return this.eR(0,b,t.z)}} +A.va.prototype={ +u(){var s,r +for(s=this.a,r=this.b;s.u();)if(r.$1(s.gI(s)))return!0 +return!1}, +gI(a){var s=this.a +return s.gI(s)}} +A.hB.prototype={ +gav(a){return new A.a00(J.ay(this.a),this.b,B.uR,this.$ti.i("a00<1,2>"))}} +A.a00.prototype={ +gI(a){var s=this.d +return s==null?this.$ti.y[1].a(s):s}, +u(){var s,r,q=this,p=q.c +if(p==null)return!1 +for(s=q.a,r=q.b;!p.u();){q.d=null +if(s.u()){q.c=null +p=J.ay(r.$1(s.gI(s))) +q.c=p}else return!1}p=q.c +q.d=p.gI(p) +return!0}} +A.yL.prototype={ +gav(a){return new A.a9c(J.ay(this.a),this.b,A.y(this).i("a9c<1>"))}} +A.J1.prototype={ +gt(a){var s=J.aM(this.a),r=this.b +if(s>r)return r +return s}, +$iaz:1} +A.a9c.prototype={ +u(){if(--this.b>=0)return this.a.u() +this.b=-1 +return!1}, +gI(a){var s +if(this.b<0){this.$ti.c.a(null) +return null}s=this.a +return s.gI(s)}} +A.qW.prototype={ +kt(a,b){A.f3(b,"count") +A.eu(b,"count") +return new A.qW(this.a,this.b+b,A.y(this).i("qW<1>"))}, +gav(a){return new A.a8m(J.ay(this.a),this.b)}} +A.B4.prototype={ +gt(a){var s=J.aM(this.a)-this.b +if(s>=0)return s +return 0}, +kt(a,b){A.f3(b,"count") +A.eu(b,"count") +return new A.B4(this.a,this.b+b,this.$ti)}, +$iaz:1} +A.a8m.prototype={ +u(){var s,r +for(s=this.a,r=0;r"))}, +kS(a,b){return this.eR(0,b,t.z)}, +kt(a,b){A.eu(b,"count") +return this}, +lL(a,b){A.eu(b,"count") +return this}, +ig(a,b){var s=this.$ti.c +return b?J.BK(0,s):J.Kb(0,s)}, +cJ(a){return this.ig(0,!0)}, +hZ(a){return A.tV(this.$ti.c)}} +A.a_L.prototype={ +u(){return!1}, +gI(a){throw A.d(A.cV())}} +A.q_.prototype={ +gav(a){return new A.a0m(J.ay(this.a),this.b)}, +gt(a){return J.aM(this.a)+J.aM(this.b)}, +ga_(a){return J.cT(this.a)&&J.cT(this.b)}, +gbC(a){return J.du(this.a)||J.du(this.b)}, +p(a,b){return J.mv(this.a,b)||J.mv(this.b,b)}, +gW(a){var s=J.ay(this.a) +if(s.u())return s.gI(s) +return J.fT(this.b)}, +gY(a){var s,r=J.ay(this.b) +if(r.u()){s=r.gI(r) +for(;r.u();)s=r.gI(r) +return s}return J.lv(this.a)}} +A.J0.prototype={ +c2(a,b){var s=this.a,r=J.a0(s),q=r.gt(s) +if(b"))}} +A.Ep.prototype={ +u(){var s,r +for(s=this.a,r=this.$ti.c;s.u();)if(r.b(s.gI(s)))return!0 +return!1}, +gI(a){var s=this.a +return this.$ti.c.a(s.gI(s))}} +A.q8.prototype={ +gt(a){return J.aM(this.a)}, +ga_(a){return J.cT(this.a)}, +gbC(a){return J.du(this.a)}, +gW(a){return new A.b3(this.b,J.fT(this.a))}, +c2(a,b){return new A.b3(b+this.b,J.GC(this.a,b))}, +p(a,b){var s,r,q,p=null,o=null,n=!1 +if(t.mi.b(b)){s=b.a +if(A.nO(s)){A.ds(s) +r=b.b +n=s>=this.b +o=r +p=s}}if(n){n=J.A1(this.a,p-this.b) +q=n.gav(n) +return q.u()&&J.e(q.gI(q),o)}return!1}, +lL(a,b){A.f3(b,"count") +A.eu(b,"count") +return new A.q8(J.W1(this.a,b),this.b,A.y(this).i("q8<1>"))}, +kt(a,b){A.f3(b,"count") +A.eu(b,"count") +return new A.q8(J.A1(this.a,b),b+this.b,A.y(this).i("q8<1>"))}, +gav(a){return new A.K_(J.ay(this.a),this.b)}} +A.wE.prototype={ +gY(a){var s,r=this.a,q=J.a0(r),p=q.gt(r) +if(p<=0)throw A.d(A.cV()) +s=q.gY(r) +if(p!==q.gt(r))throw A.d(A.cZ(this)) +return new A.b3(p-1+this.b,s)}, +p(a,b){var s,r,q,p,o=null,n=null,m=!1 +if(t.mi.b(b)){s=b.a +if(A.nO(s)){A.ds(s) +r=b.b +m=s>=this.b +n=r +o=s}}if(m){q=o-this.b +m=this.a +p=J.a0(m) +return q=0&&this.a.u())return!0 +this.c=-2 +return!1}, +gI(a){var s,r=this.c +if(r>=0){s=this.a +s=new A.b3(this.b+r,s.gI(s)) +r=s}else r=A.V(A.cV()) +return r}} +A.Bk.prototype={ +st(a,b){throw A.d(A.ag("Cannot change the length of a fixed-length list"))}, +q(a,b){throw A.d(A.ag("Cannot add to a fixed-length list"))}, +C(a,b){throw A.d(A.ag("Cannot remove from a fixed-length list"))}, +iG(a){throw A.d(A.ag("Cannot remove from a fixed-length list"))}} +A.a9W.prototype={ +n(a,b,c){throw A.d(A.ag("Cannot modify an unmodifiable list"))}, +st(a,b){throw A.d(A.ag("Cannot change the length of an unmodifiable list"))}, +q(a,b){throw A.d(A.ag("Cannot add to an unmodifiable list"))}, +C(a,b){throw A.d(A.ag("Cannot remove from an unmodifiable list"))}, +fZ(a,b){throw A.d(A.ag("Cannot modify an unmodifiable list"))}, +iG(a){throw A.d(A.ag("Cannot remove from an unmodifiable list"))}, +d5(a,b,c,d,e){throw A.d(A.ag("Cannot modify an unmodifiable list"))}, +dC(a,b,c,d){return this.d5(0,b,c,d,0)}} +A.Eh.prototype={} +A.agN.prototype={ +gt(a){return J.aM(this.a)}, +c2(a,b){A.bmw(b,J.aM(this.a),this,null,null) +return b}} +A.mW.prototype={ +h(a,b){return this.N(0,b)?J.i(this.a,A.ds(b)):null}, +gt(a){return J.aM(this.a)}, +gaJ(a){return A.fc(this.a,0,null,this.$ti.c)}, +gd1(a){return new A.agN(this.a)}, +ga_(a){return J.cT(this.a)}, +gbC(a){return J.du(this.a)}, +hO(a,b){return J.mv(this.a,b)}, +N(a,b){return A.nO(b)&&b>=0&&b>"))}, +aSX(a){var s=this +return function(){var r=a +var q=0,p=1,o,n,m,l +return function $async$gdG(b,c,d){if(c===1){o=d +q=p}while(true)switch(q){case 0:n=s.gd1(s),n=n.gav(n),m=A.y(s).i("aO<1,2>") +case 2:if(!n.u()){q=3 +break}l=n.gI(n) +q=4 +return b.b=new A.aO(l,s.h(0,l),m),1 +case 4:q=2 +break +case 3:return 0 +case 1:return b.c=o,3}}}}, +kd(a,b,c,d){var s=A.w(c,d) +this.az(0,new A.asM(this,b,s)) +return s}, +kS(a,b){var s=t.z +return this.kd(0,b,s,s)}, +$iao:1} +A.asM.prototype={ +$2(a,b){var s=this.b.$2(a,b) +this.c.n(0,s.a,s.b)}, +$S(){return A.y(this.a).i("~(1,2)")}} +A.ai.prototype={ +gt(a){return this.b.length}, +ga5o(){var s=this.$keys +if(s==null){s=Object.keys(this.a) +this.$keys=s}return s}, +hO(a,b){return B.b.p(this.b,b)}, +N(a,b){if(typeof b!="string")return!1 +if("__proto__"===b)return!1 +return this.a.hasOwnProperty(b)}, +h(a,b){if(!this.N(0,b))return null +return this.b[this.a[b]]}, +az(a,b){var s,r,q=this.ga5o(),p=this.b +for(s=q.length,r=0;r"))}, +gaJ(a){return new A.zo(this.b,this.$ti.i("zo<2>"))}} +A.zo.prototype={ +gt(a){return this.a.length}, +ga_(a){return 0===this.a.length}, +gbC(a){return 0!==this.a.length}, +gav(a){var s=this.a +return new A.vs(s,s.length,this.$ti.i("vs<1>"))}} +A.vs.prototype={ +gI(a){var s=this.d +return s==null?this.$ti.c.a(s):s}, +u(){var s=this,r=s.c +if(r>=s.b){s.d=null +return!1}s.d=s.a[r] +s.c=r+1 +return!0}} +A.cR.prototype={ +oX(){var s=this,r=s.$map +if(r==null){r=new A.xj(s.$ti.i("xj<1,2>")) +A.bzQ(s.a,r) +s.$map=r}return r}, +hO(a,b){return this.oX().hO(0,b)}, +N(a,b){return this.oX().N(0,b)}, +h(a,b){return this.oX().h(0,b)}, +az(a,b){this.oX().az(0,b)}, +gd1(a){var s=this.oX() +return new A.aR(s,A.y(s).i("aR<1>"))}, +gaJ(a){return this.oX().gaJ(0)}, +gt(a){return this.oX().a}} +A.HL.prototype={ +q(a,b){A.bl8()}, +G(a,b){A.bl8()}, +C(a,b){A.bl8()}} +A.kx.prototype={ +gt(a){return this.b}, +ga_(a){return this.b===0}, +gbC(a){return this.b!==0}, +gav(a){var s,r=this,q=r.$keys +if(q==null){q=Object.keys(r.a) +r.$keys=q}s=q +return new A.vs(s,s.length,r.$ti.i("vs<1>"))}, +p(a,b){if(typeof b!="string")return!1 +if("__proto__"===b)return!1 +return this.a.hasOwnProperty(b)}, +hZ(a){return A.f8(this,this.$ti.c)}} +A.hC.prototype={ +gt(a){return this.a.length}, +ga_(a){return this.a.length===0}, +gbC(a){return this.a.length!==0}, +gav(a){var s=this.a +return new A.vs(s,s.length,this.$ti.i("vs<1>"))}, +oX(){var s,r,q,p,o=this,n=o.$map +if(n==null){n=new A.xj(o.$ti.i("xj<1,1>")) +for(s=o.a,r=s.length,q=0;q")}} +A.tJ.prototype={ +$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.bWc(A.aov(this.a),this.$ti)}} +A.a1g.prototype={ +gaXd(){var s=this.a +if(s instanceof A.hp)return s +return this.a=new A.hp(s)}, +gaZt(){var s,r,q,p,o,n=this +if(n.c===1)return B.C +s=n.d +r=J.a0(s) +q=r.gt(s)-J.aM(n.e)-n.f +if(q===0)return B.C +p=[] +for(o=0;o>>0}, +j(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.aN9(this.a)+"'")}} +A.aei.prototype={ +j(a){return"Reading static variable '"+this.a+"' during its initialization"}} +A.a7x.prototype={ +j(a){return"RuntimeError: "+this.a}} +A.bcj.prototype={} +A.iR.prototype={ +gt(a){return this.a}, +ga_(a){return this.a===0}, +gbC(a){return this.a!==0}, +gd1(a){return new A.aR(this,A.y(this).i("aR<1>"))}, +gaJ(a){var s=A.y(this) +return A.n_(new A.aR(this,s.i("aR<1>")),new A.aD2(this),s.c,s.y[1])}, +N(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.aer(b)}, +aer(a){var s=this.d +if(s==null)return!1 +return this.vg(s[this.ve(a)],a)>=0}, +hO(a,b){return new A.aR(this,A.y(this).i("aR<1>")).fQ(0,new A.aD1(this,b))}, +G(a,b){J.fz(b,new A.aD0(this))}, +h(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.aeu(b)}, +aeu(a){var s,r,q=this.d +if(q==null)return null +s=q[this.ve(a)] +r=this.vg(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.a0u(s==null?q.b=q.Sw():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=q.c +q.a0u(r==null?q.c=q.Sw():r,b,c)}else q.aew(b,c)}, +aew(a,b){var s,r,q,p=this,o=p.d +if(o==null)o=p.d=p.Sw() +s=p.ve(a) +r=o[s] +if(r==null)o[s]=[p.Sx(a,b)] +else{q=p.vg(r,a) +if(q>=0)r[q].b=b +else r.push(p.Sx(a,b))}}, +cP(a,b,c){var s,r,q=this +if(q.N(0,b)){s=q.h(0,b) +return s==null?A.y(q).y[1].a(s):s}r=c.$0() +q.n(0,b,r) +return r}, +C(a,b){var s=this +if(typeof b=="string")return s.a6X(s.b,b) +else if(typeof b=="number"&&(b&0x3fffffff)===b)return s.a6X(s.c,b) +else return s.aev(b)}, +aev(a){var s,r,q,p,o=this,n=o.d +if(n==null)return null +s=o.ve(a) +r=n[s] +q=o.vg(r,a) +if(q<0)return null +p=r.splice(q,1)[0] +o.a90(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.Sv()}}, +az(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.cZ(s)) +r=r.c}}, +a0u(a,b,c){var s=a[b] +if(s==null)a[b]=this.Sx(b,c) +else s.b=c}, +a6X(a,b){var s +if(a==null)return null +s=a[b] +if(s==null)return null +this.a90(s) +delete a[b] +return s.b}, +Sv(){this.r=this.r+1&1073741823}, +Sx(a,b){var s,r=this,q=new A.aEX(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.Sv() +return q}, +a90(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.Sv()}, +ve(a){return J.W(a)&1073741823}, +vg(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"]=s +delete s[""] +return s}} +A.aD2.prototype={ +$1(a){var s=this.a,r=s.h(0,a) +return r==null?A.y(s).y[1].a(r):r}, +$S(){return A.y(this.a).i("2(1)")}} +A.aD1.prototype={ +$1(a){return J.e(this.a.h(0,a),this.b)}, +$S(){return A.y(this.a).i("H(1)")}} +A.aD0.prototype={ +$2(a,b){this.a.n(0,a,b)}, +$S(){return A.y(this.a).i("~(1,2)")}} +A.aEX.prototype={} +A.aR.prototype={ +gt(a){return this.a.a}, +ga_(a){return this.a.a===0}, +gav(a){var s=this.a,r=new A.Kw(s,s.r) +r.c=s.e +return r}, +p(a,b){return this.a.N(0,b)}, +az(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.cZ(s)) +r=r.c}}} +A.Kw.prototype={ +gI(a){return this.d}, +u(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.d(A.cZ(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=s.a +r.c=s.c +return!0}}} +A.Kf.prototype={ +ve(a){return A.rT(a)&1073741823}, +vg(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.Ky(j,k)}} +A.aiN.prototype={ +Hm(){return[this.a,this.b]}, +l(a,b){if(b==null)return!1 +return b instanceof A.aiN&&this.$s===b.$s&&J.e(this.a,b.a)&&J.e(this.b,b.b)}, +gB(a){return A.a4(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.aiO.prototype={ +Hm(){return[this.a,this.b,this.c]}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.aiO&&s.$s===b.$s&&J.e(s.a,b.a)&&J.e(s.b,b.b)&&J.e(s.c,b.c)}, +gB(a){var s=this +return A.a4(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.aiP.prototype={ +Hm(){return this.a}, +l(a,b){if(b==null)return!1 +return b instanceof A.aiP&&this.$s===b.$s&&A.bQJ(this.a,b.a)}, +gB(a){return A.a4(this.$s,A.cj(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.oo.prototype={ +j(a){return"RegExp/"+this.a+"/"+this.b.flags}, +ga5Q(){var s=this,r=s.c +if(r!=null)return r +r=s.b +return s.c=A.bmz(s.a,r.multiline,!r.ignoreCase,r.unicode,r.dotAll,!0)}, +ga5P(){var s=this,r=s.d +if(r!=null)return r +r=s.b +return s.d=A.bmz(s.a+"|()",r.multiline,!r.ignoreCase,r.unicode,r.dotAll,!0)}, +pE(a){var s=this.b.exec(a) +if(s==null)return null +return new A.Fk(s)}, +alM(a){var s=this.pE(a) +if(s!=null)return s.b[0] +return null}, +JB(a,b,c){var s=b.length +if(c>s)throw A.d(A.dn(c,0,s,null,null)) +return new A.acy(this,b,c)}, +pf(a,b){return this.JB(0,b,0)}, +R0(a,b){var s,r=this.ga5Q() +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +return new A.Fk(s)}, +ax7(a,b){var s,r=this.ga5P() +r.lastIndex=b +s=r.exec(a) +if(s==null)return null +if(s.pop()!=null)return null +return new A.Fk(s)}, +pP(a,b,c){if(c<0||c>b.length)throw A.d(A.dn(c,0,b.length,null,null)) +return this.ax7(b,c)}, +aX5(a,b){return this.pP(0,b,0)}} +A.Fk.prototype={ +gcD(a){return this.b.index}, +gbV(a){var s=this.b +return s.index+s[0].length}, +w5(a){return this.b[a]}, +h(a,b){return this.b[b]}, +$ixz:1, +$ia6A:1} +A.acy.prototype={ +gav(a){return new A.za(this.a,this.b,this.c)}} +A.za.prototype={ +gI(a){var s=this.d +return s==null?t.Qz.a(s):s}, +u(){var s,r,q,p,o,n,m=this,l=m.b +if(l==null)return!1 +s=m.c +r=l.length +if(s<=r){q=m.a +p=q.R0(l,s) +if(p!=null){m.d=p +o=p.gbV(0) +if(p.b.index===o){s=!1 +if(q.b.unicode){q=m.c +n=q+1 +if(n=55296&&r<=56319){s=l.charCodeAt(n) +s=s>=56320&&s<=57343}}}o=(s?o+1:o)+1}m.c=o +return!0}}m.b=m.d=null +return!1}} +A.DJ.prototype={ +gbV(a){return this.a+this.c.length}, +h(a,b){if(b!==0)A.V(A.a6r(b,null)) +return this.c}, +w5(a){if(a!==0)throw A.d(A.a6r(a,null)) +return this.c}, +$ixz:1, +gcD(a){return this.a}} +A.akR.prototype={ +gav(a){return new A.be8(this.a,this.b,this.c)}, +gW(a){var s=this.b,r=this.a.indexOf(s,this.c) +if(r>=0)return new A.DJ(r,s) +throw A.d(A.cV())}} +A.be8.prototype={ +u(){var s,r,q=this,p=q.c,o=q.b,n=o.length,m=q.a,l=m.length +if(p+n>l){q.d=null +return!1}s=m.indexOf(o,p) +if(s<0){q.c=l+1 +q.d=null +return!1}r=s+n +q.d=new A.DJ(s,o) +q.c=r===q.c?r+1:r +return!0}, +gI(a){var s=this.d +s.toString +return s}} +A.aZY.prototype={ +b2(){var s=this.b +if(s===this)throw A.d(new A.kO("Local '"+this.a+"' has not been initialized.")) +return s}, +eg(){var s=this.b +if(s===this)throw A.d(A.btV(this.a)) +return s}, +sfI(a){var s=this +if(s.b!==s)throw A.d(new A.kO("Local '"+s.a+"' has already been initialized.")) +s.b=a}} +A.b8b.prototype={ +jR(){var s,r=this,q=r.b +if(q===r){s=r.c.$0() +if(r.b!==r)throw A.d(new A.kO("Local '"+r.a+u.e)) +r.b=s +q=s}return q}} +A.xN.prototype={ +gfl(a){return B.auE}, +aaH(a,b,c){throw A.d(A.ag("Int64List not supported by dart2js."))}, +aaG(a,b,c){return new A.Lx(A.aKe(a,b,c*4))}, +$idT:1, +$ixN:1, +$ibkZ:1} +A.Lx.prototype={ +gfl(a){return B.auS}, +gt(a){return this.a.length/4|0}, +h(a,b){var s,r=this.a +A.nM(b,this,r.length/4|0) +s=b*4 +return new A.u7(r[s],r[s+1],r[s+2],r[s+3])}, +n(a,b,c){var s,r=this.a +A.nM(b,this,r.length/4|0) +s=b*4 +r[s]=c.a +r[s+1]=c.b +r[s+2]=c.c +r[s+3]=c.d}, +cK(a,b,c){var s=this.a +return new A.Lx(B.er.cK(s,b*4,A.nN(b,c,s.length/4|0)*4))}, +hL(a,b){return this.cK(0,b,null)}, +$iaz:1, +$idT:1, +$iB:1, +$iD:1} +A.hk.prototype={ +gacW(a){return a.BYTES_PER_ELEMENT}, +aDJ(a,b,c,d){var s=A.dn(b,0,c,d,null) +throw A.d(s)}, +a1t(a,b,c,d){if(b>>>0!==b||b>c)this.aDJ(a,b,c,d)}, +$ihk:1} +A.Lu.prototype={ +gfl(a){return B.Pt}, +gacW(a){return 1}, +YS(a,b,c){throw A.d(A.ag("Int64 accessor not supported by dart2js."))}, +ZD(a,b,c,d){throw A.d(A.ag("Int64 accessor not supported by dart2js."))}, +akQ(a,b,c,d){return a.setUint32(b,c,B.an===d)}, +akP(a,b,c){return this.akQ(a,b,c,B.eI)}, +$idT:1, +$id9:1} +A.Ct.prototype={ +gt(a){return a.length}, +a7T(a,b,c,d,e){var s,r,q=a.length +this.a1t(a,b,q,"start") +this.a1t(a,c,q,"end") +if(b>c)throw A.d(A.dn(b,0,c,null,null)) +s=c-b +if(e<0)throw A.d(A.bl(e,null)) +r=d.length +if(r-e0){s=Date.now()-r.c +if(s>(p+1)*o)p=B.e.im(s,o)}q.c=p +r.d.$1(q)}, +$S:4} +A.PX.prototype={ +bv(a,b){var s,r=this +if(b==null)b=r.$ti.c.a(b) +if(!r.b)r.a.kv(b) +else{s=r.a +if(r.$ti.i("a2<1>").b(b))s.a1h(b) +else s.oQ(b)}}, +dh(a,b){var s +if(b==null)b=A.t6(a) +s=this.a +if(this.b)s.h1(a,b) +else s.oO(a,b)}, +$iti:1} +A.bhg.prototype={ +$1(a){return this.a.$2(0,a)}, +$S:16} +A.bhh.prototype={ +$2(a,b){this.a.$2(1,new A.Jd(a,b))}, +$S:180} +A.bip.prototype={ +$2(a,b){this.a(a,b)}, +$S:258} +A.bhe.prototype={ +$0(){var s,r=this.a,q=r.a +q===$&&A.b() +s=q.b +if((s&1)!==0?(q.gjS().e&4)!==0:(s&2)===0){r.b=!0 +return}r=r.c!=null?2:0 +this.b.$2(r,null)}, +$S:0} +A.bhf.prototype={ +$1(a){var s=this.a.c!=null?2:0 +this.b.$2(s,null)}, +$S:2} +A.acW.prototype={ +q(a,b){var s=this.a +s===$&&A.b() +return s.q(0,b)}, +L(a){var s=this.a +s===$&&A.b() +return s.L(0)}, +ar7(a,b){var s=new A.aYK(a) +this.a=A.i9(new A.aYM(this,a),new A.aYN(s),null,new A.aYO(this,s),!1,b)}} +A.aYK.prototype={ +$0(){A.ff(new A.aYL(this.a))}, +$S:4} +A.aYL.prototype={ +$0(){this.a.$2(0,null)}, +$S:0} +A.aYN.prototype={ +$0(){this.a.$0()}, +$S:0} +A.aYO.prototype={ +$0(){var s=this.a +if(s.b){s.b=!1 +this.b.$0()}}, +$S:0} +A.aYM.prototype={ +$0(){var s=this.a,r=s.a +r===$&&A.b() +if((r.b&4)===0){s.c=new A.a_($.ab,t.LR) +if(s.b){s.b=!1 +A.ff(new A.aYJ(this.b))}return s.c}}, +$S:523} +A.aYJ.prototype={ +$0(){this.a.$2(2,null)}, +$S:0} +A.RW.prototype={ +j(a){return"IterationMarker("+this.b+", "+A.c(this.a)+")"}, +gk(a){return this.a}} +A.lp.prototype={ +gI(a){return this.b}, +aJ7(a,b){var s,r,q +a=a +b=b +s=this.a +for(;!0;)try{r=s(this,a,b) +return r}catch(q){b=q +a=1}}, +u(){var s,r,q,p,o=this,n=null,m=0 +for(;!0;){s=o.d +if(s!=null)try{if(s.u()){o.b=J.bEJ(s) +return!0}else o.d=null}catch(r){n=r +m=1 +o.d=null}q=o.aJ7(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.bxP +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.bxP +throw n +return!1}o.a=p.pop() +m=1 +continue}throw A.d(A.a1("sync*"))}return!1}, +b1P(a){var s,r,q=this +if(a instanceof A.ig){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.ay(a) +return 2}}} +A.ig.prototype={ +gav(a){return new A.lp(this.a())}} +A.WD.prototype={ +j(a){return A.c(this.a)}, +$idB:1, +gG8(){return this.b}} +A.aG.prototype={ +gi7(){return!0}} +A.zc.prototype={ +nA(){}, +nB(){}} +A.ri.prototype={ +safo(a,b){throw A.d(A.ag(u.b7))}, +safr(a,b){throw A.d(A.ag(u.b7))}, +gwm(a){return new A.aG(this,A.y(this).i("aG<1>"))}, +gnz(){return this.c<4}, +a6Y(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}, +TH(a,b,c,d){var s,r,q,p,o,n,m=this +if((m.c&4)!==0)return A.bok(c,A.y(m).c) +s=A.y(m) +r=$.ab +q=d?1:0 +p=b!=null?32:0 +o=new A.zc(m,A.Qb(r,a,s.c),A.Qd(r,b),A.Qc(r,c),r,q|p,s.i("zc<1>")) +o.CW=o +o.ch=o +o.ay=m.c&1 +n=m.e +m.e=o +o.ch=null +o.CW=n +if(n==null)m.d=o +else n.ch=o +if(m.d===o)A.aos(m.a) +return o}, +a6L(a){var s,r=this +A.y(r).i("zc<1>").a(a) +if(a.ch===a)return null +s=a.ay +if((s&2)!==0)a.ay=s|4 +else{r.a6Y(a) +if((r.c&2)===0&&r.d==null)r.PU()}return null}, +a6N(a){}, +a6O(a){}, +ns(){if((this.c&4)!==0)return new A.ld("Cannot add new events after calling close") +return new A.ld("Cannot add new events while doing an addStream")}, +q(a,b){if(!this.gnz())throw A.d(this.ns()) +this.jk(b)}, +cX(a,b){var s +A.ez(a,"error",t.K) +if(!this.gnz())throw A.d(this.ns()) +s=$.ab.rk(a,b) +if(s!=null){a=s.a +b=s.b}else if(b==null)b=A.t6(a) +this.p8(a,b)}, +pd(a){return this.cX(a,null)}, +L(a){var s,r,q=this +if((q.c&4)!==0){s=q.r +s.toString +return s}if(!q.gnz())throw A.d(q.ns()) +q.c|=4 +r=q.r +if(r==null)r=q.r=new A.a_($.ab,t.U) +q.qM() +return r}, +ji(a,b){this.p8(a,b)}, +oP(){var s=this.f +s.toString +this.f=null +this.c&=4294967287 +s.a.kv(null)}, +Rl(a){var s,r,q,p=this,o=p.c +if((o&2)!==0)throw A.d(A.a1(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.a6Y(s) +s.ay&=4294967293 +s=q}else s=s.ch}p.c&=4294967293 +if(p.d==null)p.PU()}, +PU(){if((this.c&4)!==0){var s=this.r +if((s.a&30)===0)s.kv(null)}A.aos(this.b)}, +$ice:1, +safl(a){return this.a=a}, +safh(a,b){return this.b=b}} +A.pa.prototype={ +gnz(){return A.ri.prototype.gnz.call(this)&&(this.c&2)===0}, +ns(){if((this.c&2)!==0)return new A.ld(u.c) +return this.aoq()}, +jk(a){var s=this,r=s.d +if(r==null)return +if(r===s.e){s.c|=2 +r.jh(0,a) +s.c&=4294967293 +if(s.d==null)s.PU() +return}s.Rl(new A.bet(s,a))}, +p8(a,b){if(this.d==null)return +this.Rl(new A.bev(this,a,b))}, +qM(){var s=this +if(s.d!=null)s.Rl(new A.beu(s)) +else s.r.kv(null)}} +A.bet.prototype={ +$1(a){a.jh(0,this.b)}, +$S(){return this.a.$ti.i("~(fN<1>)")}} +A.bev.prototype={ +$1(a){a.ji(this.b,this.c)}, +$S(){return this.a.$ti.i("~(fN<1>)")}} +A.beu.prototype={ +$1(a){a.oP()}, +$S(){return this.a.$ti.i("~(fN<1>)")}} +A.cd.prototype={ +jk(a){var s +for(s=this.d;s!=null;s=s.ch)s.oM(new A.p3(a))}, +p8(a,b){var s +for(s=this.d;s!=null;s=s.ch)s.oM(new A.EK(a,b))}, +qM(){var s=this.d +if(s!=null)for(;s!=null;s=s.ch)s.oM(B.kG) +else this.r.kv(null)}} +A.aAj.prototype={ +$0(){var s,r,q,p=null +try{p=this.a.$0()}catch(q){s=A.v(q) +r=A.aT(q) +A.aok(this.b,s,r) +return}this.b.jQ(p)}, +$S:0} +A.aAi.prototype={ +$0(){var s,r,q,p=null +try{p=this.a.$0()}catch(q){s=A.v(q) +r=A.aT(q) +A.aok(this.b,s,r) +return}this.b.jQ(p)}, +$S:0} +A.aAh.prototype={ +$0(){var s,r,q,p,o=this,n=o.a +if(n==null){o.c.a(null) +o.b.jQ(null)}else{s=null +try{s=n.$0()}catch(p){r=A.v(p) +q=A.aT(p) +A.aok(o.b,r,q) +return}o.b.jQ(s)}}, +$S:0} +A.aAn.prototype={ +$2(a,b){var s=this,r=s.a,q=--r.b +if(r.a!=null){r.a=null +r.d=a +r.c=b +if(q===0||s.c)s.d.h1(a,b)}else if(q===0&&!s.c){q=r.d +q.toString +r=r.c +r.toString +s.d.h1(q,r)}}, +$S:32} +A.aAm.prototype={ +$1(a){var s,r,q,p,o,n,m=this,l=m.a,k=--l.b,j=l.a +if(j!=null){J.bT(j,m.b,a) +if(J.e(k,0)){l=m.d +s=A.a([],l.i("E<0>")) +for(q=j,p=q.length,o=0;o")) +r=b==null?1:3 +this.wD(new A.mh(s,r,a,b,this.$ti.i("@<1>").aH(c).i("mh<1,2>"))) +return s}, +ak(a,b){return this.cv(a,null,b)}, +NB(a,b){return this.cv(a,b,t.z)}, +NA(a){return this.cv(a,null,t.z)}, +a8L(a,b,c){var s=new A.a_($.ab,c.i("a_<0>")) +this.wD(new A.mh(s,19,a,b,this.$ti.i("@<1>").aH(c).i("mh<1,2>"))) +return s}, +aDd(){var s,r +for(s=this;r=s.a,(r&4)!==0;)s=s.c +s.a=r|1}, +po(a,b){var s=this.$ti,r=$.ab,q=new A.a_(r,s) +if(r!==B.aO){a=A.bz2(a,r) +if(b!=null)b=r.vD(b,t.y,t.K)}r=b==null?2:6 +this.wD(new A.mh(q,r,b,a,s.i("mh<1,1>"))) +return q}, +dc(a){return this.po(a,null)}, +fC(a){var s=this.$ti,r=$.ab,q=new A.a_(r,s) +if(r!==B.aO)a=r.vB(a,t.z) +this.wD(new A.mh(q,8,a,null,s.i("mh<1,1>"))) +return q}, +aK9(a){this.a=this.a&1|16 +this.c=a}, +GM(a){this.a=a.a&30|this.a&1 +this.c=a.c}, +wD(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.wD(a) +return}s.GM(r)}s.b.oz(new A.b4O(s,a))}}, +SU(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.SU(a) +return}n.GM(s)}m.a=n.IB(a) +n.b.oz(new A.b4V(m,n))}}, +Iu(){var s=this.c +this.c=null +return this.IB(s)}, +IB(a){var s,r,q +for(s=a,r=null;s!=null;r=s,s=q){q=s.a +s.a=r}return r}, +PZ(a){var s,r,q,p=this +p.a^=2 +try{a.cv(new A.b4S(p),new A.b4T(p),t.P)}catch(q){s=A.v(q) +r=A.aT(q) +A.ff(new A.b4U(p,s,r))}}, +jQ(a){var s,r=this,q=r.$ti +if(q.i("a2<1>").b(a))if(q.b(a))A.bol(a,r) +else r.PZ(a) +else{s=r.Iu() +r.a=8 +r.c=a +A.F5(r,s)}}, +oQ(a){var s=this,r=s.Iu() +s.a=8 +s.c=a +A.F5(s,r)}, +h1(a,b){var s=this.Iu() +this.aK9(A.aq4(a,b)) +A.F5(this,s)}, +kv(a){if(this.$ti.i("a2<1>").b(a)){this.a1h(a) +return}this.a0U(a)}, +a0U(a){this.a^=2 +this.b.oz(new A.b4Q(this,a))}, +a1h(a){if(this.$ti.b(a)){A.bPT(a,this) +return}this.PZ(a)}, +oO(a,b){this.a^=2 +this.b.oz(new A.b4P(this,a,b))}, +t2(a,b,c){var s,r,q,p=this,o={} +if((p.a&24)!==0){o=new A.a_($.ab,p.$ti) +o.kv(p) +return o}s=p.$ti +r=$.ab +q=new A.a_(r,s) +o.a=null +if(c==null)o.a=A.bZ(b,new A.b5_(q,b)) +else o.a=A.bZ(b,new A.b50(p,q,r,r.vB(c,s.i("1/")))) +p.cv(new A.b51(o,p,q),new A.b52(o,q),t.P) +return q}, +t1(a,b){return this.t2(0,b,null)}, +$ia2:1} +A.b4O.prototype={ +$0(){A.F5(this.a,this.b)}, +$S:0} +A.b4V.prototype={ +$0(){A.F5(this.b,this.a.a)}, +$S:0} +A.b4S.prototype={ +$1(a){var s,r,q,p=this.a +p.a^=2 +try{p.oQ(p.$ti.c.a(a))}catch(q){s=A.v(q) +r=A.aT(q) +p.h1(s,r)}}, +$S:2} +A.b4T.prototype={ +$2(a,b){this.a.h1(a,b)}, +$S:25} +A.b4U.prototype={ +$0(){this.a.h1(this.b,this.c)}, +$S:0} +A.b4R.prototype={ +$0(){A.bol(this.a.a,this.b)}, +$S:0} +A.b4Q.prototype={ +$0(){this.a.oQ(this.b)}, +$S:0} +A.b4P.prototype={ +$0(){this.a.h1(this.b,this.c)}, +$S:0} +A.b4Y.prototype={ +$0(){var s,r,q,p,o,n,m=this,l=null +try{q=m.a.a +l=q.b.b.Ny(q.d,t.z)}catch(p){s=A.v(p) +r=A.aT(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.aq4(s,r) +o.b=!0 +return}if(l instanceof A.a_&&(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.ak(new A.b4Z(n),t.z) +q.b=!1}}, +$S:0} +A.b4Z.prototype={ +$1(a){return this.a}, +$S:557} +A.b4X.prototype={ +$0(){var s,r,q,p,o,n +try{q=this.a +p=q.a +o=p.$ti +q.c=p.b.b.Y8(p.d,this.b,o.i("2/"),o.c)}catch(n){s=A.v(n) +r=A.aT(n) +q=this.a +q.c=A.aq4(s,r) +q.b=!0}}, +$S:0} +A.b4W.prototype={ +$0(){var s,r,q,p,o,n,m=this +try{s=m.a.a.c +p=m.b +if(p.a.aX7(s)&&p.a.e!=null){p.c=p.a.aTR(s) +p.b=!1}}catch(o){r=A.v(o) +q=A.aT(o) +p=m.a.a.c +n=m.b +if(p.a===r)n.c=p +else n.c=A.aq4(r,q) +n.b=!0}}, +$S:0} +A.b5_.prototype={ +$0(){this.a.h1(new A.fd("Future not completed",this.b),B.iA)}, +$S:0} +A.b50.prototype={ +$0(){var s,r,q,p=this +try{p.b.jQ(p.c.Ny(p.d,p.a.$ti.i("1/")))}catch(q){s=A.v(q) +r=A.aT(q) +p.b.h1(s,r)}}, +$S:0} +A.b51.prototype={ +$1(a){var s=this.a.a +if(s.b!=null){s.S(0) +this.c.oQ(a)}}, +$S(){return this.b.$ti.i("aF(1)")}} +A.b52.prototype={ +$2(a,b){var s=this.a.a +if(s.b!=null){s.S(0) +this.b.h1(a,b)}}, +$S:25} +A.acV.prototype={} +A.b7.prototype={ +gi7(){return!1}, +eR(a,b,c){return new A.jP(b,this,A.y(this).i("@").aH(c).i("jP<1,2>"))}, +kS(a,b){return this.eR(0,b,t.z)}, +aTS(a,b){var s +if(t.hK.b(a))s=a +else if(t.mX.b(a))s=new A.aSJ(a) +else throw A.d(A.hY(a,"onError","Error handler must accept one Object or one Object and a StackTrace as arguments.")) +return new A.RC(s,b,this,A.y(this).i("RC"))}, +aZn(a){return a.nI(0,this).ak(new A.aSQ(a),t.z)}, +p(a,b){var s=new A.a_($.ab,t.tr),r=this.aK(null,!0,new A.aSF(s),s.gwH()) +r.jA(new A.aSG(this,b,r,s)) +return s}, +gt(a){var s={},r=new A.a_($.ab,t.wJ) +s.a=0 +this.aK(new A.aSO(s,this),!0,new A.aSP(s,r),r.gwH()) +return r}, +ga_(a){var s=new A.a_($.ab,t.tr),r=this.aK(null,!0,new A.aSK(s),s.gwH()) +r.jA(new A.aSL(this,r,s)) +return s}, +cJ(a){var s=A.y(this),r=A.a([],s.i("E")),q=new A.a_($.ab,s.i("a_>")) +this.aK(new A.aSR(this,r),!0,new A.aSS(q,r),q.gwH()) +return q}, +Da(a){var s +a.a(null) +s=null +return this.hT(null,!0).xI(s,a)}, +gW(a){var s=new A.a_($.ab,A.y(this).i("a_")),r=this.aK(null,!0,new A.aSH(s),s.gwH()) +r.jA(new A.aSI(this,r,s)) +return s}, +gY(a){var s={},r=new A.a_($.ab,A.y(this).i("a_")),q=A.bu("result") +s.a=!1 +this.aK(new A.aSM(s,this,q),!0,new A.aSN(s,r,q),r.gwH()) +return r}} +A.aSy.prototype={ +$1(a){var s=this.a +s.jh(0,a) +s.AB()}, +$S(){return this.b.i("aF(0)")}} +A.aSz.prototype={ +$2(a,b){var s=this.a +s.ji(a,b) +s.AB()}, +$S:60} +A.aSB.prototype={ +$1(a){var s,r,q,p,o,n={} +n.a=null +try{q=this.a +n.a=new J.di(q,q.length,A.af(q).i("di<1>"))}catch(p){s=A.v(p) +r=A.aT(p) +a.cX(s,r) +a.L(0) +return}o=$.ab +n.b=!0 +q=new A.aSC(n,a,o) +a.f=new A.aSA(n,o,q) +o.oz(q)}, +$S(){return this.b.i("~(a4N<0>)")}} +A.aSC.prototype={ +$0(){var s,r,q,p,o,n,m,l,k=this,j=k.b +if((j.b&1)!==0)n=(j.gjS().e&4)!==0 +else n=!0 +if(n){k.a.b=!1 +return}s=null +try{s=k.a.a.u()}catch(m){r=A.v(m) +q=A.aT(m) +j.Uw(r,q) +j.V6() +return}if(s){try{n=k.a.a +l=n.d +j.aaq(l==null?n.$ti.c.a(l):l)}catch(m){p=A.v(m) +o=A.aT(m) +j.Uw(p,o)}if((j.b&1)!==0){j=j.gjS().e +j=(j&4)===0}else j=!1 +if(j)k.c.oz(k) +else k.a.b=!1}else j.V6()}, +$S:0} +A.aSA.prototype={ +$0(){var s=this.a +if(!s.b){s.b=!0 +this.b.oz(this.c)}}, +$S:0} +A.aSJ.prototype={ +$2(a,b){this.a.$1(a)}, +$S:32} +A.aSQ.prototype={ +$1(a){return this.a.L(0)}, +$S:177} +A.aSF.prototype={ +$0(){this.a.jQ(!1)}, +$S:0} +A.aSG.prototype={ +$1(a){var s=this.c,r=this.d +A.bU5(new A.aSD(a,this.b),new A.aSE(s,r),A.bS2(s,r))}, +$S(){return A.y(this.a).i("~(b7.T)")}} +A.aSD.prototype={ +$0(){return J.e(this.a,this.b)}, +$S:46} +A.aSE.prototype={ +$1(a){if(a)A.boP(this.a,this.b,!0)}, +$S:26} +A.aSO.prototype={ +$1(a){++this.a.a}, +$S(){return A.y(this.b).i("~(b7.T)")}} +A.aSP.prototype={ +$0(){this.b.jQ(this.a.a)}, +$S:0} +A.aSK.prototype={ +$0(){this.a.jQ(!0)}, +$S:0} +A.aSL.prototype={ +$1(a){A.boP(this.b,this.c,!1)}, +$S(){return A.y(this.a).i("~(b7.T)")}} +A.aSR.prototype={ +$1(a){this.b.push(a)}, +$S(){return A.y(this.a).i("~(b7.T)")}} +A.aSS.prototype={ +$0(){this.a.jQ(this.b)}, +$S:0} +A.aSH.prototype={ +$0(){var s,r,q,p +try{q=A.cV() +throw A.d(q)}catch(p){s=A.v(p) +r=A.aT(p) +A.aok(this.a,s,r)}}, +$S:0} +A.aSI.prototype={ +$1(a){A.boP(this.b,this.c,a)}, +$S(){return A.y(this.a).i("~(b7.T)")}} +A.aSM.prototype={ +$1(a){this.a.a=!0 +this.c.b=a}, +$S(){return A.y(this.b).i("~(b7.T)")}} +A.aSN.prototype={ +$0(){var s,r,q,p,o=this +if(o.a.a){o.b.jQ(o.c.b2()) +return}try{q=A.cV() +throw A.d(q)}catch(p){s=A.v(p) +r=A.aT(p) +A.aok(o.b,s,r)}}, +$S:0} +A.Oo.prototype={ +gi7(){return this.a.gi7()}, +aK(a,b,c,d){return this.a.aK(a,b,c,d)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}} +A.eJ.prototype={ +mW(a,b,c){return new A.wd(this,A.y(this).i("@").aH(b).aH(c).i("wd<1,2,3,4>"))}} +A.vG.prototype={ +gwm(a){return new A.cA(this,A.y(this).i("cA<1>"))}, +gaH4(){if((this.b&8)===0)return this.a +return this.a.c}, +wS(){var s,r,q=this +if((q.b&8)===0){s=q.a +return s==null?q.a=new A.Fy():s}r=q.a +s=r.c +return s==null?r.c=new A.Fy():s}, +gjS(){var s=this.a +return(this.b&8)!==0?s.c:s}, +nv(){if((this.b&4)!==0)return new A.ld("Cannot add event after closing") +return new A.ld("Cannot add event while adding a stream")}, +aO3(a,b,c){var s,r,q,p=this,o=p.b +if(o>=4)throw A.d(p.nv()) +if((o&2)!==0){o=new A.a_($.ab,t.LR) +o.kv(null) +return o}o=p.a +s=c===!0 +r=new A.a_($.ab,t.LR) +q=s?A.bPa(p):p.garX() +q=b.aK(p.garN(p),s,p.gauf(),q) +s=p.b +if((s&1)!==0?(p.gjS().e&4)!==0:(s&2)===0)q.ic(0) +p.a=new A.akP(o,r,q) +p.b|=8 +return r}, +a2Z(){var s=this.c +if(s==null)s=this.c=(this.b&2)!==0?$.rV():new A.a_($.ab,t.U) +return s}, +q(a,b){if(this.b>=4)throw A.d(this.nv()) +this.jh(0,b)}, +cX(a,b){var s +A.ez(a,"error",t.K) +if(this.b>=4)throw A.d(this.nv()) +s=$.ab.rk(a,b) +if(s!=null){a=s.a +b=s.b}else if(b==null)b=A.t6(a) +this.ji(a,b)}, +pd(a){return this.cX(a,null)}, +L(a){var s=this,r=s.b +if((r&4)!==0)return s.a2Z() +if(r>=4)throw A.d(s.nv()) +s.AB() +return s.a2Z()}, +AB(){var s=this.b|=4 +if((s&1)!==0)this.qM() +else if((s&3)===0)this.wS().q(0,B.kG)}, +jh(a,b){var s=this.b +if((s&1)!==0)this.jk(b) +else if((s&3)===0)this.wS().q(0,new A.p3(b))}, +ji(a,b){var s=this.b +if((s&1)!==0)this.p8(a,b) +else if((s&3)===0)this.wS().q(0,new A.EK(a,b))}, +oP(){var s=this.a +this.a=s.c +this.b&=4294967287 +s.a.kv(null)}, +TH(a,b,c,d){var s,r,q,p,o=this +if((o.b&3)!==0)throw A.d(A.a1("Stream has already been listened to.")) +s=A.bPs(o,a,b,c,d,A.y(o).c) +r=o.gaH4() +q=o.b|=1 +if((q&8)!==0){p=o.a +p.c=s +p.b.ie(0)}else o.a=s +s.aKb(r) +s.Ry(new A.be3(o)) +return s}, +a6L(a){var s,r,q,p,o,n,m,l=this,k=null +if((l.b&8)!==0)k=l.a.S(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.v(o) +p=A.aT(o) +n=new A.a_($.ab,t.U) +n.oO(q,p) +k=n}else k=k.fC(s) +m=new A.be2(l) +if(k!=null)k=k.fC(m) +else m.$0() +return k}, +a6N(a){if((this.b&8)!==0)this.a.b.ic(0) +A.aos(this.e)}, +a6O(a){if((this.b&8)!==0)this.a.b.ie(0) +A.aos(this.f)}, +$ice:1, +safl(a){return this.d=a}, +safo(a,b){return this.e=b}, +safr(a,b){return this.f=b}, +safh(a,b){return this.r=b}} +A.be3.prototype={ +$0(){A.aos(this.a.d)}, +$S:0} +A.be2.prototype={ +$0(){var s=this.a.c +if(s!=null&&(s.a&30)===0)s.kv(null)}, +$S:0} +A.al2.prototype={ +jk(a){this.gjS().jh(0,a)}, +p8(a,b){this.gjS().ji(a,b)}, +qM(){this.gjS().oP()}} +A.acX.prototype={ +jk(a){this.gjS().oM(new A.p3(a))}, +p8(a,b){this.gjS().oM(new A.EK(a,b))}, +qM(){this.gjS().oM(B.kG)}} +A.md.prototype={} +A.vH.prototype={} +A.cA.prototype={ +gB(a){return(A.at(this.a)^892482866)>>>0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.cA&&b.a===this.a}} +A.vj.prototype={ +Ig(){return this.w.a6L(this)}, +nA(){this.w.a6N(this)}, +nB(){this.w.a6O(this)}} +A.acx.prototype={ +S(a){var s=this.b.S(0) +return s.fC(new A.aY7(this))}} +A.aY8.prototype={ +$2(a,b){var s=this.a +s.ji(a,b) +s.oP()}, +$S:25} +A.aY7.prototype={ +$0(){this.a.a.kv(null)}, +$S:4} +A.akP.prototype={} +A.fN.prototype={ +aKb(a){var s=this +if(a==null)return +s.r=a +if(a.c!=null){s.e=(s.e|128)>>>0 +a.FA(s)}}, +jA(a){this.a=A.Qb(this.d,a,A.y(this).i("fN.T"))}, +j5(a,b){var s=this,r=s.e +if(b==null)s.e=(r&4294967263)>>>0 +else s.e=(r|32)>>>0 +s.b=A.Qd(s.d,b)}, +Xn(a){this.c=A.Qc(this.d,a)}, +mm(a,b){var s,r,q=this,p=q.e +if((p&8)!==0)return +s=(p+256|4)>>>0 +q.e=s +if(p<256){r=q.r +if(r!=null)if(r.a===1)r.a=3}if((p&4)===0&&(s&64)===0)q.Ry(q.gBo())}, +ic(a){return this.mm(0,null)}, +ie(a){var s=this,r=s.e +if((r&8)!==0)return +if(r>=256){r=s.e=r-256 +if(r<256)if((r&128)!==0&&s.r.c!=null)s.r.FA(s) +else{r=(r&4294967291)>>>0 +s.e=r +if((r&64)===0)s.Ry(s.gBp())}}}, +S(a){var s=this,r=(s.e&4294967279)>>>0 +s.e=r +if((r&8)===0)s.PV() +r=s.f +return r==null?$.rV():r}, +xI(a,b){var s,r=this,q={} +q.a=null +if(!b.b(null))throw A.d(A.bkQ("futureValue")) +q.a=a +s=new A.a_($.ab,b.i("a_<0>")) +r.c=new A.aZm(q,s) +r.e=(r.e|32)>>>0 +r.b=new A.aZn(r,s) +return s}, +PV(){var s,r=this,q=r.e=(r.e|8)>>>0 +if((q&128)!==0){s=r.r +if(s.a===1)s.a=3}if((q&64)===0)r.r=null +r.f=r.Ig()}, +jh(a,b){var s=this.e +if((s&8)!==0)return +if(s<64)this.jk(b) +else this.oM(new A.p3(b))}, +ji(a,b){var s=this.e +if((s&8)!==0)return +if(s<64)this.p8(a,b) +else this.oM(new A.EK(a,b))}, +oP(){var s=this,r=s.e +if((r&8)!==0)return +r=(r|2)>>>0 +s.e=r +if(r<64)s.qM() +else s.oM(B.kG)}, +nA(){}, +nB(){}, +Ig(){return null}, +oM(a){var s,r=this,q=r.r +if(q==null)q=r.r=new A.Fy() +q.q(0,a) +s=r.e +if((s&128)===0){s=(s|128)>>>0 +r.e=s +if(s<256)q.FA(r)}}, +jk(a){var s=this,r=s.e +s.e=(r|64)>>>0 +s.d.vK(s.a,a,A.y(s).i("fN.T")) +s.e=(s.e&4294967231)>>>0 +s.Q3((r&4)!==0)}, +p8(a,b){var s,r=this,q=r.e,p=new A.aZk(r,a,b) +if((q&1)!==0){r.e=(q|16)>>>0 +r.PV() +s=r.f +if(s!=null&&s!==$.rV())s.fC(p) +else p.$0()}else{p.$0() +r.Q3((q&4)!==0)}}, +qM(){var s,r=this,q=new A.aZj(r) +r.PV() +r.e=(r.e|16)>>>0 +s=r.f +if(s!=null&&s!==$.rV())s.fC(q) +else q.$0()}, +Ry(a){var s=this,r=s.e +s.e=(r|64)>>>0 +a.$0() +s.e=(s.e&4294967231)>>>0 +s.Q3((r&4)!==0)}, +Q3(a){var s,r,q=this,p=q.e +if((p&128)!==0&&q.r.c==null){p=q.e=(p&4294967167)>>>0 +s=!1 +if((p&4)!==0)if(p<256){s=q.r +s=s==null?null:s.c==null +s=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^64)>>>0 +if(r)q.nA() +else q.nB() +p=(q.e&4294967231)>>>0 +q.e=p}if((p&128)!==0&&p<256)q.r.FA(q)}, +$ijG:1} +A.aZm.prototype={ +$0(){this.b.jQ(this.a.a)}, +$S:0} +A.aZn.prototype={ +$2(a,b){var s=this.a.S(0),r=this.b +if(s!==$.rV())s.fC(new A.aZl(r,a,b)) +else r.h1(a,b)}, +$S:25} +A.aZl.prototype={ +$0(){this.a.h1(this.b,this.c)}, +$S:4} +A.aZk.prototype={ +$0(){var s,r,q,p=this.a,o=p.e +if((o&8)!==0&&(o&16)===0)return +p.e=(o|64)>>>0 +s=p.b +o=this.b +r=t.K +q=p.d +if(t.hK.b(s))q.agW(s,o,this.c,r,t.Km) +else q.vK(s,o,r) +p.e=(p.e&4294967231)>>>0}, +$S:0} +A.aZj.prototype={ +$0(){var s=this.a,r=s.e +if((r&16)===0)return +s.e=(r|74)>>>0 +s.d.EC(s.c) +s.e=(s.e&4294967231)>>>0}, +$S:0} +A.FX.prototype={ +aK(a,b,c,d){return this.a.TH(a,d,c,b===!0)}, +bL(a){return this.aK(a,null,null,null)}, +M1(a,b){return this.aK(a,null,null,b)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}} +A.aew.prototype={ +gkV(a){return this.a}, +skV(a,b){return this.a=b}} +A.p3.prototype={ +XI(a){a.jk(this.b)}, +gk(a){return this.b}} +A.EK.prototype={ +XI(a){a.p8(this.b,this.c)}} +A.b0L.prototype={ +XI(a){a.qM()}, +gkV(a){return null}, +skV(a,b){throw A.d(A.a1("No events after a done."))}} +A.Fy.prototype={ +FA(a){var s=this,r=s.a +if(r===1)return +if(r>=1){s.a=1 +return}A.ff(new A.baA(s,a)) +s.a=1}, +ga_(a){return this.c==null}, +q(a,b){var s=this,r=s.c +if(r==null)s.b=s.c=b +else{r.skV(0,b) +s.c=b}}} +A.baA.prototype={ +$0(){var s,r,q=this.a,p=q.a +q.a=0 +if(p===3)return +s=q.b +r=s.gkV(s) +q.b=r +if(r==null)q.c=null +s.XI(this.b)}, +$S:0} +A.EO.prototype={ +jA(a){}, +j5(a,b){}, +Xn(a){if(this.a>=0){a=this.b.vB(a,t.H) +this.c=a}}, +mm(a,b){var s=this.a +if(s>=0)this.a=s+2}, +ic(a){return this.mm(0,null)}, +ie(a){var s=this,r=s.a-2 +if(r<0)return +if(r===0){s.a=1 +A.ff(s.ga67())}else s.a=r}, +S(a){this.a=-1 +this.c=null +return $.rV()}, +xI(a,b){var s,r={} +r.a=null +if(!b.b(null))throw A.d(A.bkQ("futureValue")) +r.a=a +s=new A.a_($.ab,b.i("a_<0>")) +if(this.a>=0)this.c=this.b.vB(new A.b2_(r,s),t.H) +return s}, +aG2(){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.EC(s)}}else r.a=q}, +$ijG:1} +A.b2_.prototype={ +$0(){this.b.oQ(this.a.a)}, +$S:0} +A.rw.prototype={ +gI(a){if(this.c)return this.b +return null}, +u(){var s,r=this,q=r.a +if(q!=null){if(r.c){s=new A.a_($.ab,t.tr) +r.b=s +r.c=!1 +q.ie(0) +return s}throw A.d(A.a1("Already waiting for next."))}return r.aDw()}, +aDw(){var s,r,q=this,p=q.b +if(p!=null){s=new A.a_($.ab,t.tr) +q.b=s +r=p.aK(q.gaFB(),!0,q.gaFF(),q.gaFL()) +if(q.b!=null)q.a=r +return s}return $.bBq()}, +S(a){var s=this,r=s.a,q=s.b +s.b=null +if(r!=null){s.a=null +if(!s.c)q.kv(!1) +else s.c=!1 +return r.S(0)}return $.rV()}, +aFC(a){var s,r,q=this +if(q.a==null)return +s=q.b +q.b=a +q.c=!0 +s.jQ(!0) +if(q.c){r=q.a +if(r!=null)r.ic(0)}}, +aFM(a,b){var s=this,r=s.a,q=s.b +s.b=s.a=null +if(r!=null)q.h1(a,b) +else q.oO(a,b)}, +aFG(){var s=this,r=s.a,q=s.b +s.b=s.a=null +if(r!=null)q.oQ(!1) +else q.a0U(!1)}} +A.Rc.prototype={ +aK(a,b,c,d){return A.bok(c,this.$ti.c)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}, +gi7(){return!0}} +A.zs.prototype={ +aK(a,b,c,d){var s=null,r=new A.Sf(s,s,s,s,this.$ti.i("Sf<1>")) +r.d=new A.bac(this,r) +return r.TH(a,d,c,b===!0)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}, +gi7(){return this.a}} +A.bac.prototype={ +$0(){this.a.b.$1(this.b)}, +$S:0} +A.Sf.prototype={ +aaq(a){var s=this.b +if(s>=4)throw A.d(this.nv()) +if((s&1)!==0)this.gjS().jh(0,a)}, +Uw(a,b){var s=this.b +if(s>=4)throw A.d(this.nv()) +if((s&1)!==0){s=this.gjS() +s.ji(a,b==null?B.iA:b)}}, +V6(){var s=this,r=s.b +if((r&4)!==0)return +if(r>=4)throw A.d(s.nv()) +r|=4 +s.b=r +if((r&1)!==0)s.gjS().oP()}, +gwm(a){throw A.d(A.ag("Not available"))}, +$ia4N:1} +A.bhl.prototype={ +$0(){return this.a.h1(this.b,this.c)}, +$S:0} +A.bhk.prototype={ +$2(a,b){A.bS1(this.a,this.b,a,b)}, +$S:32} +A.bhm.prototype={ +$0(){return this.a.jQ(this.b)}, +$S:0} +A.ie.prototype={ +gi7(){return this.a.gi7()}, +aK(a,b,c,d){return this.a2i(a,d,c,b===!0)}, +bL(a){return this.aK(a,null,null,null)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}, +a2i(a,b,c,d){var s=A.y(this) +return A.bPR(this,a,b,c,d,s.i("ie.S"),s.i("ie.T"))}, +a0S(a,b,c){c.ji(a,b)}} +A.vl.prototype={ +a0f(a,b,c,d,e,f,g){var s=this +s.x=s.w.a.eQ(s.gRF(),s.gRI(),s.gPI())}, +jh(a,b){if((this.e&2)!==0)return +this.l8(0,b)}, +ji(a,b){if((this.e&2)!==0)return +this.wy(a,b)}, +nA(){var s=this.x +if(s!=null)s.ic(0)}, +nB(){var s=this.x +if(s!=null)s.ie(0)}, +Ig(){var s=this.x +if(s!=null){this.x=null +return s.S(0)}return null}, +RH(a){this.w.Hy(a,this)}, +PJ(a,b){this.w.a0S(a,b,this)}, +RJ(){this.oP()}} +A.zI.prototype={ +Hy(a,b){var s,r,q,p=null +try{p=this.b.$1(a)}catch(q){s=A.v(q) +r=A.aT(q) +A.aoi(b,s,r) +return}if(p)b.jh(0,a)}} +A.jP.prototype={ +Hy(a,b){var s,r,q,p=null +try{p=this.b.$1(a)}catch(q){s=A.v(q) +r=A.aT(q) +A.aoi(b,s,r) +return}b.jh(0,p)}} +A.RC.prototype={ +Hy(a,b){b.jh(0,a)}, +a0S(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.v(o) +r=A.aT(o) +A.aoi(c,s,r) +return}if(n)try{this.b.$2(a,b)}catch(o){q=A.v(o) +p=A.aT(o) +if(q===a)c.ji(a,b) +else A.aoi(c,q,p) +return}else c.ji(a,b)}} +A.FW.prototype={} +A.QN.prototype={ +a2i(a,b,c,d){var s=$.bqg(),r=this.$ti.c,q=$.ab,p=d?1:0,o=b!=null?32:0 +o=new A.FW(s,this,A.Qb(q,a,r),A.Qd(q,b),A.Qc(q,c),q,p|o,t.Rf.aH(r).i("FW<1,2>")) +o.a0f(this,a,b,c,d,r,r) +return o}, +Hy(a,b){var s,r,q,p,o,n,m,l=this.$ti +l.i("FW").a(b) +n=b.ch +if(n===$.bqg()){b.ch=a +b.jh(0,a)}else{s=l.c.a(n) +r=this.b +q=null +try{if(r==null)q=J.e(s,a) +else q=r.$2(s,a)}catch(m){p=A.v(m) +o=A.aT(m) +A.aoi(b,p,o) +return}if(!q){b.jh(0,a) +b.ch=a}}}} +A.Rf.prototype={ +q(a,b){var s=this.a +if((s.e&2)!==0)A.V(A.a1("Stream is already closed")) +s.l8(0,b)}, +cX(a,b){var s=this.a,r=b==null?A.t6(a):b +if((s.e&2)!==0)A.V(A.a1("Stream is already closed")) +s.wy(a,r)}, +pd(a){return this.cX(a,null)}, +L(a){var s=this.a +if((s.e&2)!==0)A.V(A.a1("Stream is already closed")) +s.qp()}, +$ice:1} +A.FR.prototype={ +nA(){var s=this.x +if(s!=null)s.ic(0)}, +nB(){var s=this.x +if(s!=null)s.ie(0)}, +Ig(){var s=this.x +if(s!=null){this.x=null +return s.S(0)}return null}, +RH(a){var s,r,q,p +try{q=this.w +q===$&&A.b() +q.q(0,a)}catch(p){s=A.v(p) +r=A.aT(p) +if((this.e&2)!==0)A.V(A.a1("Stream is already closed")) +this.wy(s,r)}}, +PJ(a,b){var s,r,q,p,o=this,n="Stream is already closed" +try{q=o.w +q===$&&A.b() +q.cX(a,b)}catch(p){s=A.v(p) +r=A.aT(p) +if(s===a){if((o.e&2)!==0)A.V(A.a1(n)) +o.wy(a,b)}else{if((o.e&2)!==0)A.V(A.a1(n)) +o.wy(s,r)}}}, +RJ(){var s,r,q,p,o=this +try{o.x=null +q=o.w +q===$&&A.b() +q.L(0)}catch(p){s=A.v(p) +r=A.aT(p) +if((o.e&2)!==0)A.V(A.a1("Stream is already closed")) +o.wy(s,r)}}} +A.FY.prototype={ +iZ(a){return new A.lm(this.a,a,this.$ti.i("lm<1,2>"))}} +A.lm.prototype={ +gi7(){return this.b.gi7()}, +aK(a,b,c,d){var s=this.$ti,r=$.ab,q=b===!0?1:0,p=d!=null?32:0,o=new A.FR(A.Qb(r,a,s.y[1]),A.Qd(r,d),A.Qc(r,c),r,q|p,s.i("FR<1,2>")) +o.w=this.a.$1(new A.Rf(o)) +o.x=this.b.eQ(o.gRF(),o.gRI(),o.gPI()) +return o}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}} +A.F8.prototype={ +q(a,b){var s=this.d +if(s==null)throw A.d(A.a1("Sink is closed")) +this.a.$2(b,s)}, +cX(a,b){var s +A.ez(a,"error",t.K) +s=this.d +if(s==null)throw A.d(A.a1("Sink is closed")) +s.cX(a,b)}, +L(a){var s,r=this.d +if(r==null)return +this.d=null +s=r.a +if((s.e&2)!==0)A.V(A.a1("Stream is already closed")) +s.qp()}, +$ice:1} +A.TM.prototype={ +iZ(a){return this.app(a)}} +A.be4.prototype={ +$1(a){var s=this +return new A.F8(s.a,s.b,s.c,a,s.e.i("@<0>").aH(s.d).i("F8<1,2>"))}, +$S(){return this.e.i("@<0>").aH(this.d).i("F8<1,2>(ce<2>)")}} +A.amL.prototype={} +A.amK.prototype={$iPQ:1} +A.bie.prototype={ +$0(){A.blW(this.a,this.b)}, +$S:0} +A.ajN.prototype={ +gaJq(){return B.aB3}, +gyt(){return this}, +EC(a){var s,r,q +try{if(B.aO===$.ab){a.$0() +return}A.bz4(null,null,this,a)}catch(q){s=A.v(q) +r=A.aT(q) +A.bid(s,r)}}, +vK(a,b){var s,r,q +try{if(B.aO===$.ab){a.$1(b) +return}A.bz6(null,null,this,a,b)}catch(q){s=A.v(q) +r=A.aT(q) +A.bid(s,r)}}, +agW(a,b,c){var s,r,q +try{if(B.aO===$.ab){a.$2(b,c) +return}A.bz5(null,null,this,a,b,c)}catch(q){s=A.v(q) +r=A.aT(q) +A.bid(s,r)}}, +aOP(a,b){return new A.bcD(this,a,b)}, +aOO(a,b,c,d){return new A.bcB(this,a,c,d,b)}, +UR(a){return new A.bcC(this,a)}, +US(a,b){return new A.bcE(this,a,b)}, +h(a,b){return null}, +Dx(a,b){A.bid(a,b)}, +Ny(a){if($.ab===B.aO)return a.$0() +return A.bz4(null,null,this,a)}, +Y8(a,b){if($.ab===B.aO)return a.$1(b) +return A.bz6(null,null,this,a,b)}, +agV(a,b,c){if($.ab===B.aO)return a.$2(b,c) +return A.bz5(null,null,this,a,b,c)}, +vB(a){return a}, +vD(a){return a}, +Eu(a){return a}, +rk(a,b){return null}, +oz(a){A.bif(null,null,this,a)}, +acc(a,b){return A.bwx(a,b)}, +ac5(a,b){return A.bOC(a,b)}} +A.bcD.prototype={ +$0(){return this.a.Ny(this.b,this.c)}, +$S(){return this.c.i("0()")}} +A.bcB.prototype={ +$2(a,b){var s=this +return s.a.agV(s.b,a,b,s.e,s.c,s.d)}, +$S(){return this.e.i("@<0>").aH(this.c).aH(this.d).i("1(2,3)")}} +A.bcC.prototype={ +$0(){return this.a.EC(this.b)}, +$S:0} +A.bcE.prototype={ +$1(a){return this.a.vK(this.b,a,this.c)}, +$S(){return this.c.i("~(0)")}} +A.rp.prototype={ +gt(a){return this.a}, +ga_(a){return this.a===0}, +gbC(a){return this.a!==0}, +gd1(a){return new A.zl(this,A.y(this).i("zl<1>"))}, +gaJ(a){var s=A.y(this) +return A.n_(new A.zl(this,s.i("zl<1>")),new A.b5b(this),s.c,s.y[1])}, +N(a,b){var s,r +if(typeof b=="string"&&b!=="__proto__"){s=this.b +return s==null?!1:s[b]!=null}else if(typeof b=="number"&&(b&1073741823)===b){r=this.c +return r==null?!1:r[b]!=null}else return this.wK(b)}, +wK(a){var s=this.d +if(s==null)return!1 +return this.kx(this.a3u(s,a),a)>=0}, +hO(a,b){return B.b.fQ(this.wI(),new A.b5a(this,b))}, +h(a,b){var s,r,q +if(typeof b=="string"&&b!=="__proto__"){s=this.b +r=s==null?null:A.bom(s,b) +return r}else if(typeof b=="number"&&(b&1073741823)===b){q=this.c +r=q==null?null:A.bom(q,b) +return r}else return this.a3t(0,b)}, +a3t(a,b){var s,r,q=this.d +if(q==null)return null +s=this.a3u(q,b) +r=this.kx(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.a1K(s==null?q.b=A.bon():s,b,c)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +q.a1K(r==null?q.c=A.bon():r,b,c)}else q.a7K(b,c)}, +a7K(a,b){var s,r,q,p=this,o=p.d +if(o==null)o=p.d=A.bon() +s=p.lb(a) +r=o[s] +if(r==null){A.boo(o,s,[a,b]);++p.a +p.e=null}else{q=p.kx(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.N(0,b)){s=q.h(0,b) +return s==null?A.y(q).y[1].a(s):s}r=c.$0() +q.n(0,b,r) +return r}, +C(a,b){var s=this +if(typeof b=="string"&&b!=="__proto__")return s.qu(s.b,b) +else if(typeof b=="number"&&(b&1073741823)===b)return s.qu(s.c,b) +else return s.mP(0,b)}, +mP(a,b){var s,r,q,p,o=this,n=o.d +if(n==null)return null +s=o.lb(b) +r=n[s] +q=o.kx(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}}, +az(a,b){var s,r,q,p,o,n=this,m=n.wI() +for(s=m.length,r=A.y(n).y[1],q=0;q"))}, +p(a,b){return this.a.N(0,b)}, +az(a,b){var s,r,q=this.a,p=q.wI() +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.S_.prototype={ +h(a,b){if(!this.y.$1(b))return null +return this.amD(b)}, +n(a,b,c){this.amF(b,c)}, +N(a,b){if(!this.y.$1(b))return!1 +return this.amC(b)}, +C(a,b){if(!this.y.$1(b))return null +return this.amE(b)}, +ve(a){return this.x.$1(a)&1073741823}, +vg(a,b){var s,r,q +if(a==null)return-1 +s=a.length +for(r=this.w,q=0;q"))}, +Bn(a){return new A.p4(a.i("p4<0>"))}, +Sz(){return this.Bn(t.z)}, +gav(a){return new A.j2(this,this.tJ(),A.y(this).i("j2<1>"))}, +gt(a){return this.a}, +ga_(a){return this.a===0}, +gbC(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.Ql(b)}, +Ql(a){var s=this.d +if(s==null)return!1 +return this.kx(s[this.lb(a)],a)>=0}, +q(a,b){var s,r,q=this +if(typeof b=="string"&&b!=="__proto__"){s=q.b +return q.AC(s==null?q.b=A.bop():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +return q.AC(r==null?q.c=A.bop():r,b)}else return q.f0(0,b)}, +f0(a,b){var s,r,q=this,p=q.d +if(p==null)p=q.d=A.bop() +s=q.lb(b) +r=p[s] +if(r==null)p[s]=[b] +else{if(q.kx(r,b)>=0)return!1 +r.push(b)}++q.a +q.e=null +return!0}, +G(a,b){var s +for(s=J.ay(b);s.u();)this.q(0,s.gI(s))}, +C(a,b){var s=this +if(typeof b=="string"&&b!=="__proto__")return s.qu(s.b,b) +else if(typeof b=="number"&&(b&1073741823)===b)return s.qu(s.c,b) +else return s.mP(0,b)}, +mP(a,b){var s,r,q,p=this,o=p.d +if(o==null)return!1 +s=p.lb(b) +r=o[s] +q=p.kx(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}}, +tJ(){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.e +if(h!=null)return h +h=A.bO(i.a,null,!1,t.z) +s=i.b +r=0 +if(s!=null){q=Object.getOwnPropertyNames(s) +p=q.length +for(o=0;o=r.length){s.d=null +return!1}else{s.d=r[q] +s.c=q+1 +return!0}}} +A.kp.prototype={ +xd(){return new A.kp(A.y(this).i("kp<1>"))}, +Bn(a){return new A.kp(a.i("kp<0>"))}, +Sz(){return this.Bn(t.z)}, +gav(a){var s=this,r=new A.vt(s,s.r,A.y(s).i("vt<1>")) +r.c=s.e +return r}, +gt(a){return this.a}, +ga_(a){return this.a===0}, +gbC(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.Ql(b)}, +Ql(a){var s=this.d +if(s==null)return!1 +return this.kx(s[this.lb(a)],a)>=0}, +az(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.cZ(s)) +r=r.b}}, +gW(a){var s=this.e +if(s==null)throw A.d(A.a1("No elements")) +return s.a}, +gY(a){var s=this.f +if(s==null)throw A.d(A.a1("No elements")) +return s.a}, +q(a,b){var s,r,q=this +if(typeof b=="string"&&b!=="__proto__"){s=q.b +return q.AC(s==null?q.b=A.bot():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +return q.AC(r==null?q.c=A.bot():r,b)}else return q.f0(0,b)}, +f0(a,b){var s,r,q=this,p=q.d +if(p==null)p=q.d=A.bot() +s=q.lb(b) +r=p[s] +if(r==null)p[s]=[q.Qc(b)] +else{if(q.kx(r,b)>=0)return!1 +r.push(q.Qc(b))}return!0}, +C(a,b){var s=this +if(typeof b=="string"&&b!=="__proto__")return s.qu(s.b,b) +else if(typeof b=="number"&&(b&1073741823)===b)return s.qu(s.c,b) +else return s.mP(0,b)}, +mP(a,b){var s,r,q,p,o=this,n=o.d +if(n==null)return!1 +s=o.lb(b) +r=n[s] +q=o.kx(r,b) +if(q<0)return!1 +p=r.splice(q,1)[0] +if(0===r.length)delete n[s] +o.a1L(p) +return!0}, +R3(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.cZ(o)) +if(!0===p)o.C(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.Qb()}}, +AC(a,b){if(a[b]!=null)return!1 +a[b]=this.Qc(b) +return!0}, +qu(a,b){var s +if(a==null)return!1 +s=a[b] +if(s==null)return!1 +this.a1L(s) +delete a[b] +return!0}, +Qb(){this.r=this.r+1&1073741823}, +Qc(a){var s,r=this,q=new A.b96(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.Qb() +return q}, +a1L(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.Qb()}, +lb(a){return J.W(a)&1073741823}, +kx(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"))}, +gt(a){return this.b}, +gW(a){var s +if(this.b===0)throw A.d(A.a1("No such element")) +s=this.c +s.toString +return s}, +gY(a){var s +if(this.b===0)throw A.d(A.a1("No such element")) +s=this.c.mc$ +s.toString +return s}, +az(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.cZ(q)) +s=r.lA$ +s.toString +if(s!==q.c){r=s +continue}else break}while(!0)}, +ga_(a){return this.b===0}, +B9(a,b,c){var s,r,q=this +if(b.lz$!=null)throw A.d(A.a1("LinkedListEntry is already in a LinkedList"));++q.a +b.lz$=q +s=q.b +if(s===0){b.lA$=b +q.c=b.mc$=b +q.b=s+1 +return}r=a.mc$ +r.toString +b.mc$=r +b.lA$=a +a.mc$=r.lA$=b +if(c&&a==q.c)q.c=b +q.b=s+1}, +TV(a){var s,r,q=this;++q.a +s=a.lA$ +s.mc$=a.mc$ +a.mc$.lA$=s +r=--q.b +a.lz$=a.lA$=a.mc$=null +if(r===0)q.c=null +else if(a===q.c)q.c=s}} +A.Fg.prototype={ +gI(a){var s=this.c +return s==null?this.$ti.c.a(s):s}, +u(){var s=this,r=s.a +if(s.b!==r.a)throw A.d(A.cZ(s)) +if(r.b!==0)r=s.e&&s.d===r.gW(0) +else r=!0 +if(r){s.c=null +return!1}s.e=!0 +r=s.d +s.c=r +s.d=r.lA$ +return!0}} +A.iS.prototype={ +gkV(a){var s=this.lz$ +if(s==null||s.gW(0)===this.lA$)return null +return this.lA$}, +gafR(){var s=this.lz$ +if(s==null||this===s.gW(0))return null +return this.mc$}} +A.S.prototype={ +gav(a){return new A.ci(a,this.gt(a),A.ba(a).i("ci"))}, +c2(a,b){return this.h(a,b)}, +az(a,b){var s,r=this.gt(a) +for(s=0;s"))}, +F0(a,b){return new A.ey(a,b.i("ey<0>"))}, +eR(a,b,c){return new A.ad(a,b,A.ba(a).i("@").aH(c).i("ad<1,2>"))}, +kS(a,b){return this.eR(a,b,t.z)}, +kt(a,b){return A.fc(a,b,null,A.ba(a).i("S.E"))}, +lL(a,b){return A.fc(a,0,A.ez(b,"count",t.S),A.ba(a).i("S.E"))}, +ig(a,b){var s,r,q,p,o=this +if(o.ga_(a)){s=A.ba(a).i("S.E") +return b?J.BK(0,s):J.Kb(0,s)}r=o.h(a,0) +q=A.bO(o.gt(a),r,b,A.ba(a).i("S.E")) +for(p=1;p").aH(b).i("ij<1,2>"))}, +iG(a){var s,r=this +if(r.gt(a)===0)throw A.d(A.cV()) +s=r.h(a,r.gt(a)-1) +r.st(a,r.gt(a)-1) +return s}, +fZ(a,b){var s=b==null?A.bV_():b +A.a8J(a,0,this.gt(a)-1,s)}, +aaI(a){return new A.mW(a,A.ba(a).i("mW"))}, +ab(a,b){var s=A.a8(a,!0,A.ba(a).i("S.E")) +B.b.G(s,b) +return s}, +cK(a,b,c){var s=this.gt(a) +if(c==null)c=s +A.dL(b,c,s,null,null) +return A.cN(this.Fs(a,b,c),!0,A.ba(a).i("S.E"))}, +hL(a,b){return this.cK(a,b,null)}, +Fs(a,b,c){A.dL(b,c,this.gt(a),null,null) +return A.fc(a,b,c,A.ba(a).i("S.E"))}, +q1(a,b,c){A.dL(b,c,this.gt(a),null,null) +if(c>b)this.GO(a,b,c)}, +ru(a,b,c,d){var s +A.dL(b,c,this.gt(a),null,null) +for(s=b;s").b(d)){r=e +q=d}else{p=J.A1(d,e) +q=p.ig(p,!1) +r=0}p=J.a0(q) +if(r+s>p.gt(q))throw A.d(A.btI()) +if(r=0;--o)this.n(a,b+o,p.h(q,r+o)) +else for(o=0;o"))}, +kd(a,b,c,d){var s,r,q,p,o,n=A.w(c,d) +for(s=J.ay(this.gd1(a)),r=A.ba(a).i("bw.V");s.u();){q=s.gI(s) +p=this.h(a,q) +o=b.$2(q,p==null?r.a(p):p) +n.n(0,o.a,o.b)}return n}, +kS(a,b){var s=t.z +return this.kd(a,b,s,s)}, +Jv(a,b){var s,r +for(s=J.ay(b);s.u();){r=s.gI(s) +this.n(a,r.a,r.b)}}, +vF(a,b){var s,r,q,p,o=A.ba(a),n=A.a([],o.i("E")) +for(s=J.ay(this.gd1(a)),o=o.i("bw.V");s.u();){r=s.gI(s) +q=this.h(a,r) +if(b.$2(r,q==null?o.a(q):q))n.push(r)}for(o=n.length,p=0;p"))}, +j(a){return A.co(a)}, +$iao:1} +A.aFB.prototype={ +$1(a){var s=this.a,r=J.i(s,a) +if(r==null)r=A.ba(s).i("bw.V").a(r) +return new A.aO(a,r,A.ba(s).i("aO"))}, +$S(){return A.ba(this.a).i("aO(bw.K)")}} +A.aFC.prototype={ +$2(a,b){var s,r=this.a +if(!r.a)this.b.a+=", " +r.a=!1 +r=this.b +s=A.c(a) +s=r.a+=s +r.a=s+": " +s=A.c(b) +r.a+=s}, +$S:129} +A.Ei.prototype={} +A.S2.prototype={ +gt(a){return J.aM(this.a)}, +ga_(a){return J.cT(this.a)}, +gbC(a){return J.du(this.a)}, +gW(a){var s=this.a,r=J.dI(s) +s=r.h(s,J.fT(r.gd1(s))) +return s==null?this.$ti.y[1].a(s):s}, +gY(a){var s=this.a,r=J.dI(s) +s=r.h(s,J.lv(r.gd1(s))) +return s==null?this.$ti.y[1].a(s):s}, +gav(a){var s=this.a +return new A.agW(J.ay(J.rX(s)),s,this.$ti.i("agW<1,2>"))}} +A.agW.prototype={ +u(){var s=this,r=s.a +if(r.u()){s.c=J.i(s.b,r.gI(r)) +return!0}s.c=null +return!1}, +gI(a){var s=this.c +return s==null?this.$ti.y[1].a(s):s}} +A.Uh.prototype={ +n(a,b,c){throw A.d(A.ag("Cannot modify unmodifiable map"))}, +V(a){throw A.d(A.ag("Cannot modify unmodifiable map"))}, +C(a,b){throw A.d(A.ag("Cannot modify unmodifiable map"))}, +cP(a,b,c){throw A.d(A.ag("Cannot modify unmodifiable map"))}} +A.KK.prototype={ +mW(a,b,c){return J.mu(this.a,b,c)}, +h(a,b){return J.i(this.a,b)}, +n(a,b,c){J.bT(this.a,b,c)}, +V(a){J.GA(this.a)}, +cP(a,b,c){return J.GD(this.a,b,c)}, +N(a,b){return J.cO(this.a,b)}, +hO(a,b){return J.bqJ(this.a,b)}, +az(a,b){J.fz(this.a,b)}, +ga_(a){return J.cT(this.a)}, +gbC(a){return J.du(this.a)}, +gt(a){return J.aM(this.a)}, +gd1(a){return J.rX(this.a)}, +C(a,b){return J.nW(this.a,b)}, +j(a){return J.p(this.a)}, +gaJ(a){return J.bqO(this.a)}, +gdG(a){return J.nV(this.a)}, +kd(a,b,c,d){return J.W_(this.a,b,c,d)}, +kS(a,b){var s=t.z +return this.kd(0,b,s,s)}, +$iao:1} +A.li.prototype={ +mW(a,b,c){return new A.li(J.mu(this.a,b,c),b.i("@<0>").aH(c).i("li<1,2>"))}} +A.QS.prototype={ +aE8(a,b){var s=this +s.b=b +s.a=a +if(a!=null)a.b=s +if(b!=null)b.a=s}} +A.QR.prototype={ +PH(){return this}, +gKV(){return this.d}} +A.QT.prototype={ +PH(){return null}, +gKV(){throw A.d(A.cV())}} +A.IN.prototype={ +kG(a,b){return new A.pv(this,this.$ti.i("@<1>").aH(b).i("pv<1,2>"))}, +gt(a){return this.b}, +q(a,b){var s=this.a +new A.QR(this,b,s.$ti.i("QR<1>")).aE8(s.a,s);++this.b}, +gW(a){return this.a.b.gKV()}, +gY(a){return this.a.a.gKV()}, +ga_(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.PH() +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}, +gav(a){return new A.aeU(this,this.a.b,this.$ti.i("aeU<1>"))}, +j(a){return A.jr(this,"{","}")}, +$iaz:1} +A.aeU.prototype={ +u(){var s=this,r=s.b,q=r==null?null:r.PH() +if(q==null){s.a=s.b=s.c=null +return!1}r=s.a +if(r!=q.c)throw A.d(A.cZ(r)) +s.c=q.d +s.b=q.b +return!0}, +gI(a){var s=this.c +return s==null?this.$ti.c.a(s):s}} +A.Kx.prototype={ +kG(a,b){return new A.pv(this,this.$ti.i("@<1>").aH(b).i("pv<1,2>"))}, +gav(a){var s=this +return new A.Fh(s,s.c,s.d,s.b,s.$ti.i("Fh<1>"))}, +az(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.V(A.cZ(p))}}, +ga_(a){return this.b===this.c}, +gt(a){return(this.c-this.b&this.a.length-1)>>>0}, +gW(a){var s=this,r=s.b +if(r===s.c)throw A.d(A.cV()) +r=s.a[r] +return r==null?s.$ti.c.a(r):r}, +gY(a){var s=this,r=s.b,q=s.c +if(r===q)throw A.d(A.cV()) +r=s.a +r=r[(q-1&r.length-1)>>>0] +return r==null?s.$ti.c.a(r):r}, +c2(a,b){var s,r=this +A.bmw(b,r.gt(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}, +ig(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.BK(0,s):J.Kb(0,s)}s=m.$ti.c +r=A.bO(k,m.gW(0),b,s) +for(q=m.a,p=m.b,o=0;o>>0] +r[o]=n==null?s.a(n):n}return r}, +cJ(a){return this.ig(0,!0)}, +q(a,b){this.f0(0,b)}, +G(a,b){var s,r,q,p,o,n,m,l,k=this,j=k.$ti +if(j.i("D<1>").b(b)){s=b.length +r=k.gt(0) +q=r+s +p=k.a +o=p.length +if(q>=o){n=A.bO(A.bu1(q+(q>>>1)),null,!1,j.i("1?")) +k.c=k.aNz(n) +k.a=n +k.b=0 +B.b.d5(n,r,q,b,0) +k.c+=s}else{j=k.c +m=o-j +if(s>>0)if(J.e(r.a[s],b)){r.mP(0,s);++r.d +return!0}return!1}, +V(a){var s,r,q=this,p=q.b,o=q.c +if(p!==o){for(s=q.a,r=s.length-1;p!==o;p=(p+1&r)>>>0)s[p]=null +q.b=q.c=0;++q.d}}, +j(a){return A.jr(this,"{","}")}, +aNS(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.a44();++s.d}, +om(){var s,r,q=this,p=q.b +if(p===q.c)throw A.d(A.cV());++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}, +iG(a){var s,r=this,q=r.b,p=r.c +if(q===p)throw A.d(A.cV());++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}, +f0(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.a44();++s.d}, +mP(a,b){var s,r,q,p=this,o=p.a,n=o.length-1,m=p.b,l=p.c +if((b-m&n)>>>0<(l-b&n)>>>0){for(s=b;s!==m;s=r){r=(s-1&n)>>>0 +o[s]=o[r]}o[m]=null +p.b=(m+1&n)>>>0 +return(b+1&n)>>>0}else{m=p.c=(l-1&n)>>>0 +for(s=b;s!==m;s=q){q=(s+1&n)>>>0 +o[s]=o[q]}o[m]=null +return b}}, +a44(){var s=this,r=A.bO(s.a.length*2,null,!1,s.$ti.i("1?")),q=s.a,p=s.b,o=q.length-p +B.b.d5(r,0,o,q,p) +B.b.d5(r,o,o+s.b,s.a,0) +s.b=0 +s.c=s.a.length +s.a=r}, +aNz(a){var s,r,q=this,p=q.b,o=q.c,n=q.a +if(p<=o){s=o-p +B.b.d5(a,0,s,n,p) +return s}else{r=n.length-p +B.b.d5(a,0,r,n,p) +B.b.d5(a,r,r+q.c,q.a,0) +return q.c+r}}} +A.Fh.prototype={ +gI(a){var s=this.e +return s==null?this.$ti.c.a(s):s}, +u(){var s,r=this,q=r.a +if(r.c!==q.d)A.V(A.cZ(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.m1.prototype={ +ga_(a){return this.gt(this)===0}, +gbC(a){return this.gt(this)!==0}, +kG(a,b){return A.aRr(this,null,A.y(this).c,b)}, +F0(a,b){return new A.ey(this,b.i("ey<0>"))}, +G(a,b){var s +for(s=J.ay(b);s.u();)this.q(0,s.gI(s))}, +Nh(a){var s,r +for(s=a.length,r=0;r").aH(c).i("pM<1,2>"))}, +kS(a,b){return this.eR(0,b,t.z)}, +j(a){return A.jr(this,"{","}")}, +az(a,b){var s +for(s=this.gav(this);s.u();)b.$1(s.gI(s))}, +bJ(a,b){var s,r,q=this.gav(this) +if(!q.u())return"" +s=J.p(q.gI(q)) +if(!q.u())return s +if(b.length===0){r=s +do r+=A.c(q.gI(q)) +while(q.u())}else{r=s +do r=r+b+A.c(q.gI(q)) +while(q.u())}return r.charCodeAt(0)==0?r:r}, +fQ(a,b){var s +for(s=this.gav(this);s.u();)if(b.$1(s.gI(s)))return!0 +return!1}, +lL(a,b){return A.bwg(this,b,A.y(this).c)}, +kt(a,b){return A.bvT(this,b,A.y(this).c)}, +gW(a){var s=this.gav(this) +if(!s.u())throw A.d(A.cV()) +return s.gI(s)}, +gY(a){var s,r=this.gav(this) +if(!r.u())throw A.d(A.cV()) +do s=r.gI(r) +while(r.u()) +return s}, +h9(a,b,c){var s,r +for(s=this.gav(this);s.u();){r=s.gI(s) +if(b.$1(r))return r}throw A.d(A.cV())}, +pF(a,b){return this.h9(0,b,null)}, +c2(a,b){var s,r +A.eu(b,"index") +s=this.gav(this) +for(r=b;s.u();){if(r===0)return s.gI(s);--r}throw A.d(A.eZ(b,b-r,this,null,"index"))}, +$iaz:1, +$iB:1, +$icz:1} +A.FO.prototype={ +kG(a,b){return A.aRr(this,this.gSy(),A.y(this).c,b)}, +hC(a){var s,r,q=this.xd() +for(s=this.gav(this);s.u();){r=s.gI(s) +if(!a.p(0,r))q.q(0,r)}return q}, +n7(a,b){var s,r,q=this.xd() +for(s=this.gav(this);s.u();){r=s.gI(s) +if(b.p(0,r))q.q(0,r)}return q}, +hZ(a){var s=this.xd() +s.G(0,this) +return s}} +A.akL.prototype={} +A.jR.prototype={} +A.j6.prototype={ +aIH(a){var s=this,r=new A.j6(a,s.a,s.$ti) +r.b=s.b +r.c=s.c +return r}, +gk(a){return this.d}} +A.akK.prototype={ +mR(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.ghj() +if(f==null){h.Qf(a,a) +return-1}s=h.gQe() +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.ghj()!==q){h.shj(q);++h.c}return r}, +aL4(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}, +a88(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}, +mP(a,b){var s,r,q,p,o=this +if(o.ghj()==null)return null +if(o.mR(b)!==0)return null +s=o.ghj() +r=s.b;--o.a +q=s.c +if(r==null)o.shj(q) +else{p=o.a88(r) +p.c=q +o.shj(p)}++o.b +return s}, +Py(a,b){var s,r=this;++r.a;++r.b +s=r.ghj() +if(s==null){r.shj(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.shj(a)}, +ga39(){var s=this,r=s.ghj() +if(r==null)return null +s.shj(s.aL4(r)) +return s.ghj()}, +ga5s(){var s=this,r=s.ghj() +if(r==null)return null +s.shj(s.a88(r)) +return s.ghj()}, +au9(a){this.shj(null) +this.a=0;++this.b}, +wK(a){return this.Ug(a)&&this.mR(a)===0}, +Qf(a,b){return this.gQe().$2(a,b)}, +Ug(a){return this.gb1O().$1(a)}} +A.DG.prototype={ +h(a,b){var s=this +if(!s.f.$1(b))return null +if(s.d!=null)if(s.mR(b)===0)return s.d.d +return null}, +C(a,b){var s +if(!this.f.$1(b))return null +s=this.mP(0,b) +if(s!=null)return s.d +return null}, +n(a,b,c){var s=this,r=s.mR(b) +if(r===0){s.d=s.d.aIH(c);++s.c +return}s.Py(new A.j6(c,b,s.$ti.i("j6<1,2>")),r)}, +cP(a,b,c){var s,r,q,p=this,o=p.mR(b) +if(o===0)return p.d.d +s=p.b +r=p.c +q=c.$0() +if(s!==p.b)throw A.d(A.cZ(p)) +if(r!==p.c)o=p.mR(b) +p.Py(new A.j6(q,b,p.$ti.i("j6<1,2>")),o) +return q}, +ga_(a){return this.d==null}, +gbC(a){return this.d!=null}, +az(a,b){var s,r=this.$ti,q=new A.zA(this,A.a([],r.i("E>")),this.c,r.i("zA<1,2>")) +for(;q.u();){s=q.gI(0) +b.$2(s.a,s.b)}}, +gt(a){return this.a}, +V(a){this.au9(0)}, +N(a,b){return this.wK(b)}, +hO(a,b){return new A.aSe(this,b,this.c).$1(this.d)}, +gd1(a){return new A.ru(this,this.$ti.i("ru<1,j6<1,2>>"))}, +gaJ(a){return new A.zB(this,this.$ti.i("zB<1,2>"))}, +gdG(a){return new A.TD(this,this.$ti.i("TD<1,2>"))}, +aTu(){if(this.d==null)return null +return this.ga39().a}, +aeT(){if(this.d==null)return null +return this.ga5s().a}, +aWq(a){var s,r,q,p=this +if(p.d==null)return null +if(p.mR(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}, +aTv(a){var s,r,q,p=this +if(p.d==null)return null +if(p.mR(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}, +$iao:1, +Qf(a,b){return this.e.$2(a,b)}, +Ug(a){return this.f.$1(a)}, +ghj(){return this.d}, +gQe(){return this.e}, +shj(a){return this.d=a}} +A.aSd.prototype={ +$1(a){return this.a.b(a)}, +$S:48} +A.aSe.prototype={ +$1(a){var s,r,q,p,o=this +for(s=o.c,r=o.a,q=o.b;a!=null;){if(J.e(a.d,q))return!0 +if(s!==r.c)throw A.d(A.cZ(r)) +p=a.c +if(p!=null&&o.$1(p))return!0 +a=a.b}return!1}, +$S(){return this.a.$ti.i("H(j6<1,2>?)")}} +A.p9.prototype={ +gI(a){var s=this.b +if(s.length===0){A.y(this).i("p9.T").a(null) +return null}return this.Ru(B.b.gY(s))}, +aIf(a){var s,r,q=this.b +B.b.V(q) +s=this.a +s.mR(a) +r=s.ghj() +r.toString +q.push(r) +this.d=s.c}, +u(){var s,r,q=this,p=q.c,o=q.a,n=o.b +if(p!==n){if(p==null){q.c=n +s=o.ghj() +for(p=q.b;s!=null;){p.push(s) +s=s.b}return p.length!==0}throw A.d(A.cZ(o))}p=q.b +if(p.length===0)return!1 +if(q.d!==o.c)q.aIf(B.b.gY(p).a) +s=B.b.gY(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.gY(p).c===s))break +s=p.pop()}return p.length!==0}} +A.ru.prototype={ +gt(a){return this.a.a}, +ga_(a){return this.a.a===0}, +gav(a){var s=this.a,r=this.$ti +return new A.rv(s,A.a([],r.i("E<2>")),s.c,r.i("rv<1,2>"))}, +p(a,b){return this.a.wK(b)}, +hZ(a){var s=this.a,r=this.$ti,q=A.a8T(s.e,s.f,r.c) +q.a=s.a +q.d=q.a29(s.d,r.y[1]) +return q}} +A.zB.prototype={ +gt(a){return this.a.a}, +ga_(a){return this.a.a===0}, +gav(a){var s=this.a,r=this.$ti +return new A.TH(s,A.a([],r.i("E>")),s.c,r.i("TH<1,2>"))}} +A.TD.prototype={ +gt(a){return this.a.a}, +ga_(a){return this.a.a===0}, +gav(a){var s=this.a,r=this.$ti +return new A.zA(s,A.a([],r.i("E>")),s.c,r.i("zA<1,2>"))}} +A.rv.prototype={ +Ru(a){return a.a}} +A.TH.prototype={ +Ru(a){return a.d}} +A.zA.prototype={ +Ru(a){return new A.aO(a.a,a.d,this.$ti.i("aO<1,2>"))}} +A.DH.prototype={ +a5S(a){return A.a8T(new A.aSg(this,a),this.f,a)}, +xd(){return this.a5S(t.z)}, +kG(a,b){return A.aRr(this,this.gaFi(),this.$ti.c,b)}, +gav(a){var s=this.$ti +return new A.rv(this,A.a([],s.i("E>")),this.c,s.i("rv<1,jR<1>>"))}, +gt(a){return this.a}, +ga_(a){return this.d==null}, +gbC(a){return this.d!=null}, +gW(a){if(this.a===0)throw A.d(A.cV()) +return this.ga39().a}, +gY(a){if(this.a===0)throw A.d(A.cV()) +return this.ga5s().a}, +p(a,b){return this.f.$1(b)&&this.mR(this.$ti.c.a(b))===0}, +q(a,b){return this.f0(0,b)}, +f0(a,b){var s=this.mR(b) +if(s===0)return!1 +this.Py(new A.jR(b,this.$ti.i("jR<1>")),s) +return!0}, +C(a,b){if(!this.f.$1(b))return!1 +return this.mP(0,this.$ti.c.a(b))!=null}, +G(a,b){var s +for(s=J.ay(b);s.u();)this.f0(0,s.gI(s))}, +n7(a,b){var s,r=this,q=r.$ti,p=A.a8T(r.e,r.f,q.c) +for(q=new A.rv(r,A.a([],q.i("E>")),r.c,q.i("rv<1,jR<1>>"));q.u();){s=q.gI(0) +if(b.p(0,s))p.f0(0,s)}return p}, +a29(a,b){var s +if(a==null)return null +s=new A.jR(a.a,this.$ti.i("jR<1>")) +new A.aSf(this,b).$2(a,s) +return s}, +hZ(a){var s=this,r=s.$ti,q=A.a8T(s.e,s.f,r.c) +q.a=s.a +q.d=s.a29(s.d,r.i("jR<1>")) +return q}, +j(a){return A.jr(this,"{","}")}, +$iaz:1, +$icz:1, +Qf(a,b){return this.e.$2(a,b)}, +Ug(a){return this.f.$1(a)}, +ghj(){return this.d}, +gQe(){return this.e}, +shj(a){return this.d=a}} +A.aSh.prototype={ +$1(a){return this.a.b(a)}, +$S:48} +A.aSg.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.i("t(0,0)")}} +A.aSf.prototype={ +$2(a,b){var s,r,q,p,o,n=this.a.$ti.i("jR<1>") +do{s=a.b +r=a.c +if(s!=null){q=new A.jR(s.a,n) +b.b=q +this.$2(s,q)}p=r!=null +if(p){o=new A.jR(r.a,n) +b.c=o +b=o +a=r}}while(p)}, +$S(){return this.a.$ti.aH(this.b).i("~(1,jR<2>)")}} +A.TE.prototype={} +A.TF.prototype={} +A.TG.prototype={} +A.Ui.prototype={} +A.bhw.prototype={ +$1(a){var s,r,q,p,o,n,m=this +if(a==null||typeof a!="object")return a +if(Array.isArray(a)){for(s=m.a,r=0;r0}, +gd1(a){var s +if(this.b==null){s=this.c +return new A.aR(s,A.y(s).i("aR<1>"))}return new A.agv(this)}, +gaJ(a){var s=this +if(s.b==null)return s.c.gaJ(0) +return A.n_(s.oR(),new A.b8R(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.N(0,b)){s=q.b +s[b]=c +r=q.a +if(r==null?s!=null:r!==s)r[b]=null}else q.a9P().n(0,b,c)}, +hO(a,b){var s,r,q=this +if(q.b==null)return q.c.hO(0,b) +s=q.oR() +for(r=0;r"))}return s}, +p(a,b){return this.a.N(0,b)}} +A.Fd.prototype={ +L(a){var s,r,q=this +q.apq(0) +s=q.a +r=s.a +s.a="" +s=q.c +s.q(0,A.zL(r.charCodeAt(0)==0?r:r,q.b)) +s.L(0)}} +A.bgb.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:true}) +return s}catch(r){}return null}, +$S:128} +A.bga.prototype={ +$0(){var s,r +try{s=new TextDecoder("utf-8",{fatal:false}) +return s}catch(r){}return null}, +$S:128} +A.Ww.prototype={ +lw(a){return B.Qz.b4(a)}, +ei(a,b){var s=B.Qy.b4(b) +return s}} +A.amd.prototype={ +b4(a){var s,r,q,p=A.dL(0,null,a.length,null,null),o=new Uint8Array(p) +for(s=~this.a,r=0;r>>0!==0){if(!this.a)throw A.d(A.bL("Invalid value in input: "+A.c(q),p,p)) +return this.auT(a,0,o)}}return A.ia(a,0,o)}, +auT(a,b,c){var s,r,q,p +for(s=~this.b,r=b,q="";r>>0!==0?65533:p)}return q.charCodeAt(0)==0?q:q}} +A.Wx.prototype={ +hg(a){var s=t.NC.b(a)?a:new A.zC(a) +if(this.a)return new A.b2V(s.UL(!1)) +else return new A.bdE(s)}} +A.b2V.prototype={ +L(a){this.a.L(0)}, +q(a,b){this.fP(b,0,J.aM(b),!1)}, +fP(a,b,c,d){var s,r,q=J.a0(a) +A.dL(b,c,q.gt(a),null,null) +for(s=this.a,r=b;r>>0!==0){if(r>b)s.fP(a,b,r,!1) +s.q(0,B.a3B) +b=r+1}if(b>>0!==0)throw A.d(A.bL("Source contains non-ASCII bytes.",null,null)) +this.a.q(0,A.ia(b,0,null))}} +A.aqd.prototype={ +gk5(){return B.SF}, +aXK(a1,a2,a3,a4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=null,a0="Invalid base64 encoding length " +a4=A.dL(a3,a4,a2.length,a,a) +s=$.bqa() +for(r=a3,q=r,p=a,o=-1,n=-1,m=0;r=0){g=u.U.charCodeAt(f) +if(g===k)continue +k=g}else{if(f===-1){if(o<0){e=p==null?a:p.a.length +if(e==null)e=0 +o=e+(r-q) +n=r}++m +if(k===61)continue}k=g}if(f!==-2){if(p==null){p=new A.cD("") +e=p}else e=p +e.a+=B.c.R(a2,q,r) +d=A.ek(k) +e.a+=d +q=l +continue}}throw A.d(A.bL("Invalid base64 data",a2,r))}if(p!=null){e=B.c.R(a2,q,a4) +e=p.a+=e +d=e.length +if(o>=0)A.br8(a2,n,a4,o,m,d) +else{c=B.e.an(d-1,4)+1 +if(c===1)throw A.d(A.bL(a0,a2,a4)) +for(;c<4;){e+="=" +p.a=e;++c}}e=p.a +return B.c.lK(a2,a3,a4,e.charCodeAt(0)==0?e:e)}b=a4-a3 +if(o>=0)A.br8(a2,n,a4,o,m,b) +else{c=B.e.an(b,4) +if(c===1)throw A.d(A.bL(a0,a2,a4)) +if(c>1)a2=B.c.lK(a2,a4,a4,c===2?"==":"=")}return a2}} +A.WQ.prototype={ +b4(a){var s +if(J.cT(a))return"" +s=new A.PZ(u.U).VV(a,0,a.length,!0) +s.toString +return A.ia(s,0,null)}, +hg(a){var s=u.U +if(t.NC.b(a))return new A.bg8(new A.amj(new A.vL(!1),a,a.a),new A.PZ(s)) +return new A.aYD(a,new A.aZh(s))}} +A.PZ.prototype={ +ac3(a,b){return new Uint8Array(b)}, +VV(a,b,c,d){var s,r=this,q=(r.a&3)+(c-b),p=B.e.cn(q,3),o=p*4 +if(d&&q-p*3>0)o+=4 +s=r.ac3(0,o) +r.a=A.bPn(r.b,a,b,c,d,s,0,r.a) +if(o>0)return s +return null}} +A.aZh.prototype={ +ac3(a,b){var s=this.c +if(s==null||s.length0)throw A.d(A.bL("Invalid length, must be multiple of four",b,c)) +this.a=-1}} +A.ad3.prototype={ +q(a,b){var s,r=b.length +if(r===0)return +s=this.b.Vu(0,b,0,r) +if(s!=null)this.a.q(0,s)}, +L(a){this.b.V5(0,null,null) +this.a.L(0)}, +fP(a,b,c,d){var s,r +A.dL(b,c,a.length,null,null) +if(b===c)return +s=this.b +r=s.Vu(0,a,b,c) +if(r!=null)this.a.q(0,r) +if(d){s.V5(0,a,c) +this.a.L(0)}}} +A.Xb.prototype={} +A.vg.prototype={ +q(a,b){this.a.q(0,b)}, +L(a){this.a.L(0)}} +A.Qf.prototype={ +q(a,b){var s,r,q=this,p=q.b,o=q.c,n=J.a0(b) +if(n.gt(b)>p.length-o){p=q.b +s=n.gt(b)+p.length-1 +s|=B.e.cA(s,1) +s|=s>>>2 +s|=s>>>4 +s|=s>>>8 +r=new Uint8Array((((s|s>>>16)>>>0)+1)*2) +p=q.b +B.G.dC(r,0,p.length,p) +q.b=r}p=q.b +o=q.c +B.G.dC(p,o,o+n.gt(b),b) +q.c=q.c+n.gt(b)}, +L(a){this.a.$1(B.G.cK(this.b,0,this.c))}} +A.Xl.prototype={} +A.akq.prototype={ +q(a,b){this.b.push(b)}, +L(a){this.a.$1(this.b)}} +A.zf.prototype={ +q(a,b){this.b.q(0,b)}, +cX(a,b){A.ez(a,"error",t.K) +this.a.cX(a,b)}, +L(a){this.b.L(0)}, +$ice:1} +A.Xv.prototype={} +A.bI.prototype={ +Wl(a,b){return new A.Rx(this,a,A.y(this).i("@").aH(b).i("Rx<1,2,3>"))}, +hg(a){throw A.d(A.ag("This converter does not support chunked conversions: "+this.j(0)))}, +iZ(a){return new A.lm(new A.asX(this),a,t.cu.aH(A.y(this).i("bI.T")).i("lm<1,2>"))}, +mW(a,b,c){return new A.w9(this,A.y(this).i("@").aH(b).aH(c).i("w9<1,2,3,4>"))}} +A.asX.prototype={ +$1(a){return new A.zf(a,this.a.hg(a))}, +$S:614} +A.Rx.prototype={ +b4(a){return A.zL(this.a.b4(a),this.b.a)}, +hg(a){return this.a.hg(new A.Fd(this.b.a,a,new A.cD("")))}} +A.pN.prototype={} +A.Kg.prototype={ +j(a){var s=A.wH(this.a) +return(this.b!=null?"Converting object to an encodable object failed:":"Converting object did not return an encodable object:")+" "+s}} +A.a1i.prototype={ +j(a){return"Cyclic error in JSON stringify"}} +A.aD3.prototype={ +jo(a,b,c){if(c==null)c=null +if(c==null)return A.zL(b,this.gaRq().a) +return A.zL(b,c)}, +ei(a,b){return this.jo(0,b,null)}, +lx(a,b){var s +if(b==null)b=null +if(b==null){s=this.gk5() +return A.bxu(a,s.b,s.a)}return A.bxu(a,b,null)}, +lw(a){return this.lx(a,null)}, +gk5(){return B.a2N}, +gaRq(){return B.pQ}} +A.a1k.prototype={ +b4(a){var s,r=new A.cD("") +A.bos(a,r,this.b,this.a) +s=r.a +return s.charCodeAt(0)==0?s:s}, +hg(a){var s=t.NC.b(a)?a:new A.zC(a) +return new A.b8Q(this.a,this.b,s)}} +A.b8Q.prototype={ +q(a,b){var s,r=this +if(r.d)throw A.d(A.a1("Only one call to add allowed")) +r.d=!0 +s=r.c.aaK() +A.bos(b,s,r.b,r.a) +s.L(0)}, +L(a){}} +A.a1j.prototype={ +hg(a){return new A.Fd(this.a,a,new A.cD(""))}, +b4(a){return A.zL(a,this.a)}} +A.b8V.prototype={ +YF(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.O5(a,s,r) +s=r+1 +n.fY(92) +n.fY(117) +n.fY(100) +p=q>>>8&15 +n.fY(p<10?48+p:87+p) +p=q>>>4&15 +n.fY(p<10?48+p:87+p) +p=q&15 +n.fY(p<10?48+p:87+p)}}continue}if(q<32){if(r>s)n.O5(a,s,r) +s=r+1 +n.fY(92) +switch(q){case 8:n.fY(98) +break +case 9:n.fY(116) +break +case 10:n.fY(110) +break +case 12:n.fY(102) +break +case 13:n.fY(114) +break +default:n.fY(117) +n.fY(48) +n.fY(48) +p=q>>>4&15 +n.fY(p<10?48+p:87+p) +p=q&15 +n.fY(p<10?48+p:87+p) +break}}else if(q===34||q===92){if(r>s)n.O5(a,s,r) +s=r+1 +n.fY(92) +n.fY(q)}}if(s===0)n.fD(a) +else if(s255||r<0){if(s>b){q=this.a +q.toString +q.q(0,A.ia(a,b,s))}q=this.a +q.toString +q.q(0,A.ia(B.a4V,0,1)) +b=s+1}}if(b16)this.Qo()}, +eC(a,b){if(this.a.a.length!==0)this.Qo() +this.b.q(0,b)}, +Qo(){var s=this.a,r=s.a +s.a="" +this.b.q(0,r.charCodeAt(0)==0?r:r)}} +A.G_.prototype={ +L(a){}, +fP(a,b,c,d){var s,r,q +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.Jm() +return!1}}, +a33(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.aa6(p,a.charCodeAt(n)))q=n}else if(o===56320){if(l.b+3>r)break +l.Jm()}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.ami.prototype={ +L(a){if(this.a!==0){this.fP("",0,0,!0) +return}this.d.a.L(0)}, +fP(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.aa6(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.a33(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.bRy(p,r,b,l) +if(o!=null){if(!p)return o +if(o.indexOf("\ufffd")<0)return o}}o=m.Qy(r,b,l,d) +p=m.b +if((p&1)!==0){n=A.by9(p) +m.b=0 +throw A.d(A.bL(n,a,q+m.c))}return o}, +Qy(a,b,c,d){var s,r,q=this +if(c-b>1000){s=B.e.cn(b+c,2) +r=q.Qy(a,b,s,!1) +if((q.b&1)!==0)return r +return r+q.Qy(a,s,c,d)}return q.aRp(a,b,c,d)}, +adp(a,b){var s,r=this.b +this.b=0 +if(r<=32)return +if(this.a){s=A.ek(65533) +b.a+=s}else throw A.d(A.bL(A.by9(77),null,null))}, +aRp(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.cD(""),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){q=A.ek(i) +h.a+=q +if(g===c)break $label0$0 +break}else if((j&1)!==0){if(s)switch(j){case 69:case 67:q=A.ek(k) +h.a+=q +break +case 65:q=A.ek(k) +h.a+=q;--g +break +default:q=A.ek(k) +q=h.a+=q +h.a=q+A.ek(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){s=A.ek(k) +h.a+=s}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.an8.prototype={} +A.aob.prototype={} +A.vN.prototype={} +A.aKx.prototype={ +$2(a,b){var s=this.b,r=this.a,q=s.a+=r.a +q+=a.a +s.a=q +s.a=q+": " +q=A.wH(b) +s.a+=q +r.a=", "}, +$S:622} +A.bg5.prototype={ +$2(a,b){var s,r +if(typeof b=="string")this.a.set(a,b) +else if(b==null)this.a.set(a,"") +else for(s=J.ay(b),r=this.a;s.u();){b=s.gI(s) +if(typeof b=="string")r.append(a,b) +else if(b==null)r.append(a,"") +else A.dk(b)}}, +$S:33} +A.aS.prototype={ +q(a,b){var s=1000,r=b.a,q=B.e.an(r,s),p=B.e.cn(r-q,s),o=this.b+q,n=B.e.an(o,s) +r=this.c +return new A.aS(A.o9(this.a+B.e.cn(o-n,s)+p,n,r),n,r)}, +a0v(a){var s=1000,r=B.e.an(a,s),q=B.e.cn(a-r,s),p=this.b+r,o=B.e.an(p,s),n=this.c +return new A.aS(A.o9(this.a+B.e.cn(p-o,s)+q,o,n),o,n)}, +hC(a){return A.dA(this.b-a.b,this.a-a.a,0)}, +l(a,b){if(b==null)return!1 +return b instanceof A.aS&&this.a===b.a&&this.b===b.b&&this.c===b.c}, +gB(a){return A.a4(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)}, +WT(a){var s=this.a,r=a.a +if(s>=r)s=s===r&&this.b=-9999&&A.CT(s)<=9999?A.brW(A.CT(s)):A.bGW(A.CT(s)),q=A.pB(A.aN6(s)),p=A.pB(A.a6i(s)),o=A.pB(A.a6j(s)),n=A.pB(A.a6k(s)),m=A.pB(A.aN7(s)),l=A.au5(A.bv5(s)),k=s.b,j=k===0?"":A.au5(k) +k=r+"-"+q +if(s.c)return k+"-"+p+"T"+o+":"+n+":"+m+"."+l+j+"Z" +else return k+"-"+p+"T"+o+":"+n+":"+m+"."+l+j}, +$ida:1} +A.bj.prototype={ +ab(a,b){return new A.bj(this.a+b.a)}, +ai(a,b){return new A.bj(this.a-b.a)}, +ap(a,b){return new A.bj(B.d.aa(this.a*b))}, +mC(a,b){return this.a>b.a}, +YG(a,b){return this.a>=b.a}, +l(a,b){if(b==null)return!1 +return b instanceof A.bj&&this.a===b.a}, +gB(a){return B.e.gB(this.a)}, +bO(a,b){return B.e.bO(this.a,b.a)}, +j(a){var s,r,q,p,o,n=this.a,m=B.e.cn(n,36e8),l=n%36e8 +if(n<0){m=0-m +n=0-l +s="-"}else{n=l +s=""}r=B.e.cn(n,6e7) +n%=6e7 +q=r<10?"0":"" +p=B.e.cn(n,1e6) +o=p<10?"0":"" +return s+m+":"+q+r+":"+o+p+"."+B.c.fk(B.e.j(n%1e6),6,"0")}, +Us(a){return new A.bj(Math.abs(this.a))}, +$ida:1} +A.b2U.prototype={ +j(a){return this.D()}} +A.dB.prototype={ +gG8(){return A.bMn(this)}} +A.w2.prototype={ +j(a){var s=this.a +if(s!=null)return"Assertion failed: "+A.wH(s) +return"Assertion failed"}, +gia(a){return this.a}} +A.r8.prototype={} +A.jf.prototype={ +gR_(){return"Invalid argument"+(!this.a?"(s)":"")}, +gQZ(){return""}, +j(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+A.c(p),n=s.gR_()+q+o +if(!s.a)return n +return n+s.gQZ()+": "+A.wH(s.gWQ())}, +gWQ(){return this.b}} +A.CZ.prototype={ +gWQ(){return this.b}, +gR_(){return"RangeError"}, +gQZ(){var s,r=this.e,q=this.f +if(r==null)s=q!=null?": Not less than or equal to "+A.c(q):"" +else if(q==null)s=": Not greater than or equal to "+A.c(r) +else if(q>r)s=": Not in inclusive range "+A.c(r)+".."+A.c(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){k="..." +if(f-q<75){j=q+75 +i=q}else{if(m-f<75){i=m-75 +j=m +k=""}else{i=f-36 +j=f+36}l="..."}}else{j=m +i=q +k=""}return g+l+B.c.R(e,i,j)+k+"\n"+B.c.ap(" ",f-i+l.length)+"^\n"}else return f!=null?g+(" (at offset "+A.c(f)+")"):g}, +$ibm:1, +gia(a){return this.a}, +gA4(a){return this.b}, +gdA(a){return this.c}} +A.B.prototype={ +kG(a,b){return A.jX(this,A.ba(this).i("B.E"),b)}, +Wi(a,b){var s=this,r=A.ba(s) +if(r.i("az").b(s))return A.bt8(s,b,r.i("B.E")) +return new A.q_(s,b,r.i("q_"))}, +eR(a,b,c){return A.n_(this,b,A.ba(this).i("B.E"),c)}, +kS(a,b){return this.eR(0,b,t.z)}, +km(a,b){return new A.bh(this,b,A.ba(this).i("bh"))}, +F0(a,b){return new A.ey(this,b.i("ey<0>"))}, +p(a,b){var s +for(s=this.gav(this);s.u();)if(J.e(s.gI(s),b))return!0 +return!1}, +az(a,b){var s +for(s=this.gav(this);s.u();)b.$1(s.gI(s))}, +lI(a,b){var s,r=this.gav(this) +if(!r.u())throw A.d(A.cV()) +s=r.gI(r) +for(;r.u();)s=b.$2(s,r.gI(r)) +return s}, +bJ(a,b){var s,r,q=this.gav(this) +if(!q.u())return"" +s=J.p(q.gI(q)) +if(!q.u())return s +if(b.length===0){r=s +do r+=J.p(q.gI(q)) +while(q.u())}else{r=s +do r=r+b+J.p(q.gI(q)) +while(q.u())}return r.charCodeAt(0)==0?r:r}, +rH(a){return this.bJ(0,"")}, +fQ(a,b){var s +for(s=this.gav(this);s.u();)if(b.$1(s.gI(s)))return!0 +return!1}, +ig(a,b){return A.a8(this,b,A.ba(this).i("B.E"))}, +cJ(a){return this.ig(0,!0)}, +hZ(a){return A.f8(this,A.ba(this).i("B.E"))}, +gt(a){var s,r=this.gav(this) +for(s=0;r.u();)++s +return s}, +ga_(a){return!this.gav(this).u()}, +gbC(a){return!this.ga_(this)}, +lL(a,b){return A.bwg(this,b,A.ba(this).i("B.E"))}, +kt(a,b){return A.bvT(this,b,A.ba(this).i("B.E"))}, +gW(a){var s=this.gav(this) +if(!s.u())throw A.d(A.cV()) +return s.gI(s)}, +gY(a){var s,r=this.gav(this) +if(!r.u())throw A.d(A.cV()) +do s=r.gI(r) +while(r.u()) +return s}, +h9(a,b,c){var s,r +for(s=this.gav(this);s.u();){r=s.gI(s) +if(b.$1(r))return r}if(c!=null)return c.$0() +throw A.d(A.cV())}, +pF(a,b){return this.h9(0,b,null)}, +aWr(a,b){var s,r,q=this.gav(this) +do{if(!q.u())throw A.d(A.cV()) +s=q.gI(q)}while(!b.$1(s)) +for(;q.u();){r=q.gI(q) +if(b.$1(r))s=r}return s}, +c2(a,b){var s,r +A.eu(b,"index") +s=this.gav(this) +for(r=b;s.u();){if(r===0)return s.gI(s);--r}throw A.d(A.eZ(b,b-r,this,null,"index"))}, +j(a){return A.tM(this,"(",")")}} +A.Rz.prototype={ +c2(a,b){A.bmw(b,this.a,this,null,null) +return this.b.$1(b)}, +gt(a){return this.a}} +A.aO.prototype={ +j(a){return"MapEntry("+A.c(this.a)+": "+A.c(this.b)+")"}, +gk(a){return this.b}} +A.aF.prototype={ +gB(a){return A.O.prototype.gB.call(this,0)}, +j(a){return"null"}} +A.O.prototype={$iO:1, +l(a,b){return this===b}, +gB(a){return A.at(this)}, +j(a){return"Instance of '"+A.aN9(this)+"'"}, +afd(a,b){throw A.d(A.oz(this,b))}, +gfl(a){return A.K(this)}, +toString(){return this.j(this)}} +A.akU.prototype={ +j(a){return""}, +$id0:1} +A.r1.prototype={ +gKT(){var s=this.gacV() +if($.rW()===1e6)return s +return s*1000}, +gKU(){var s=this.gacV() +if($.rW()===1000)return s +return B.e.cn(s,1000)}, +mF(a){var s=this,r=s.b +if(r!=null){s.a=s.a+($.y7.$0()-r) +s.b=null}}, +eU(a){var s=this.b +this.a=s==null?$.y7.$0():s}, +gacV(){var s=this.b +if(s==null)s=$.y7.$0() +return s-this.a}} +A.Dg.prototype={ +gav(a){return new A.Nf(this.a)}, +gY(a){var s,r,q=this.a,p=q.length +if(p===0)throw A.d(A.a1("No elements.")) +s=q.charCodeAt(p-1) +if((s&64512)===56320&&p>1){r=q.charCodeAt(p-2) +if((r&64512)===55296)return A.bym(r,s)}return s}} +A.Nf.prototype={ +gI(a){return this.d}, +u(){var s,r,q,p=this,o=p.b=p.c,n=p.a,m=n.length +if(o===m){p.d=-1 +return!1}s=n.charCodeAt(o) +r=o+1 +if((s&64512)===55296&&r4)this.a.$2("an IPv6 part can only contain a maximum of 4 hex digits",a) +s=A.c0(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:673} +A.Ul.prototype={ +guf(){var s,r,q,p,o=this,n=o.w +if(n===$){s=o.a +r=s.length!==0?""+s+":":"" +q=o.c +p=q==null +if(!p||s==="file"){s=r+"//" +r=o.b +if(r.length!==0)s=s+r+"@" +if(!p)s+=q +r=o.d +if(r!=null)s=s+":"+A.c(r)}else s=r +s+=o.e +r=o.f +if(r!=null)s=s+"?"+r +r=o.r +if(r!=null)s=s+"#"+r +n!==$&&A.aH() +n=o.w=s.charCodeAt(0)==0?s:s}return n}, +grS(){var s,r,q=this,p=q.x +if(p===$){s=q.e +if(s.length!==0&&s.charCodeAt(0)===47)s=B.c.bE(s,1) +r=s.length===0?B.hz:A.Ky(new A.ad(A.a(s.split("/"),t.s),A.bVg(),t.Gf),t.N) +q.x!==$&&A.aH() +p=q.x=r}return p}, +gB(a){var s,r=this,q=r.y +if(q===$){s=B.c.gB(r.guf()) +r.y!==$&&A.aH() +r.y=s +q=s}return q}, +gXQ(){var s,r=this,q=r.z +if(q===$){s=r.f +s=A.bo2(s==null?"":s) +r.z!==$&&A.aH() +q=r.z=new A.li(s,t.G5)}return q}, +gvz(){var s,r,q=this,p=q.Q +if(p===$){s=q.f +r=A.bRq(s==null?"":s) +q.Q!==$&&A.aH() +q.Q=r +p=r}return p}, +gov(){return this.b}, +gfz(a){var s=this.c +if(s==null)return"" +if(B.c.ba(s,"["))return B.c.R(s,1,s.length-1) +return s}, +gkf(a){var s=this.d +return s==null?A.bxY(this.a):s}, +gni(a){var s=this.f +return s==null?"":s}, +gkQ(){var s=this.r +return s==null?"":s}, +jw(a){var s=this.a +if(a.length!==s.length)return!1 +return A.byl(a,s,0)>=0}, +on(a,b,c,d,e,f){var s,r,q,p,o,n,m,l=this,k=l.a +if(f!=null){f=A.bg6(f,0,f.length) +s=f!==k}else{f=k +s=!1}r=f==="file" +q=l.b +if(d!=null)d=A.Um(d,f) +else{d=l.d +if(s)d=A.Um(d,f)}p=l.c +if(!(p!=null))p=q.length!==0||d!=null||r?"":null +o=p!=null +n=b==null +if(!n||c!=null)b=A.boI(b,0,n?0:b.length,c,f,o) +else{m=l.e +if(!r)n=o&&m.length!==0 +else n=!0 +if(n&&!B.c.ba(m,"/"))m="/"+m +b=m}if(e!=null){n=e.length +e=A.bg2(e,0,n,null)}else e=l.f +return A.G6(f,q,p,d,b,e,l.r)}, +agy(a,b){var s=null +return this.on(0,s,s,s,s,b)}, +agw(a,b){var s=null +return this.on(0,b,s,s,s,s)}, +b_z(a,b){var s=null +return this.on(0,s,b,s,s,s)}, +Nn(a,b){var s=null +return this.on(0,s,s,b,s,s)}, +agx(a,b){var s=null +return this.on(0,s,s,s,b,s)}, +b_A(a,b,c){return this.on(0,null,b,null,c,null)}, +Ev(){var s=this +if(s.r==null)return s +return A.G6(s.a,s.b,s.c,s.d,s.e,s.f,null)}, +afe(){var s=this,r=s.e,q=A.by5(r,s.a,s.c!=null) +if(q===r)return s +return s.agw(0,q)}, +a5J(a,b){var s,r,q,p,o,n,m +for(s=0,r=0;B.c.eZ(b,"../",r);){r+=3;++s}q=B.c.o6(a,"/") +while(!0){if(!(q>0&&s>0))break +p=B.c.LZ(a,"/",q-1) +if(p<0)break +o=q-p +n=o!==2 +m=!1 +if(!n||o===3)if(a.charCodeAt(p+1)===46)n=!n||a.charCodeAt(p+2)===46 +else n=m +else n=m +if(n)break;--s +q=p}return B.c.lK(a,q+1,null,B.c.bE(b,r-3*s))}, +Z(a){return this.zn(A.f1(a))}, +zn(a){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(a.gev().length!==0)return a +else{s=h.a +if(a.gWE()){r=a.agy(0,s) +return r}else{q=h.b +p=h.c +o=h.d +n=h.e +if(a.gadY())m=a.gDz()?a.gni(a):h.f +else{l=A.bRx(h,n) +if(l>0){k=B.c.R(n,0,l) +n=a.gWC()?k+A.zE(a.ge8(a)):k+A.zE(h.a5J(B.c.bE(n,k.length),a.ge8(a)))}else if(a.gWC())n=A.zE(a.ge8(a)) +else if(n.length===0)if(p==null)n=s.length===0?a.ge8(a):A.zE(a.ge8(a)) +else n=A.zE("/"+a.ge8(a)) +else{j=h.a5J(n,a.ge8(a)) +r=s.length===0 +if(!r||p!=null||B.c.ba(n,"/"))n=A.zE(j) +else n=A.boK(j,!r||p!=null)}m=a.gDz()?a.gni(a):null}}}i=a.gWG()?a.gkQ():null +return A.G6(s,q,p,o,n,m,i)}, +gae0(){return this.a.length!==0}, +gWE(){return this.c!=null}, +gDz(){return this.f!=null}, +gWG(){return this.r!=null}, +gadY(){return this.e.length===0}, +gWC(){return B.c.ba(this.e,"/")}, +gEg(a){var s,r,q=this,p=q.a +if(p==="")throw A.d(A.a1("Cannot use origin without a scheme: "+q.j(0))) +if(p!=="http"&&p!=="https")throw A.d(A.a1("Origin is only applicable schemes http and https: "+q.j(0))) +s=q.c +if(s==null||s==="")throw A.d(A.a1("A "+p+u.fq+q.j(0))) +r=q.d +if(r==null)return p+"://"+A.c(s) +return p+"://"+A.c(s)+":"+A.c(r)}, +NF(){var s,r=this,q=r.a +if(q!==""&&q!=="file")throw A.d(A.ag("Cannot extract a file path from a "+q+" URI")) +q=r.f +if((q==null?"":q)!=="")throw A.d(A.ag(u.z)) +q=r.r +if((q==null?"":q)!=="")throw A.d(A.ag(u.h8)) +if(r.c!=null&&r.gfz(0)!=="")A.V(A.ag(u.ba)) +s=r.grS() +A.bRo(s,!1) +q=A.aST(B.c.ba(r.e,"/")?""+"/":"",s,"/") +q=q.charCodeAt(0)==0?q:q +return q}, +j(a){return this.guf()}, +l(a,b){var s,r,q,p=this +if(b==null)return!1 +if(p===b)return!0 +s=!1 +if(t.Xu.b(b))if(p.a===b.gev())if(p.c!=null===b.gWE())if(p.b===b.gov())if(p.gfz(0)===b.gfz(b))if(p.gkf(0)===b.gkf(b))if(p.e===b.ge8(b)){r=p.f +q=r==null +if(!q===b.gDz()){if(q)r="" +if(r===b.gni(b)){r=p.r +q=r==null +if(!q===b.gWG()){s=q?"":r +s=s===b.gkQ()}}}}return s}, +$iv7:1, +gev(){return this.a}, +ge8(a){return this.e}} +A.bg1.prototype={ +$1(a){return A.rB(B.a7q,a,B.a5,!1)}, +$S:40} +A.bg4.prototype={ +$2(a,b){var s=this.b,r=this.a +s.a+=r.a +r.a="&" +r=A.rB(B.hB,a,B.a5,!0) +r=s.a+=r +if(b!=null&&b.length!==0){s.a=r+"=" +r=A.rB(B.hB,b,B.a5,!0) +s.a+=r}}, +$S:194} +A.bg3.prototype={ +$2(a,b){var s,r +if(b==null||typeof b=="string")this.a.$2(a,b) +else for(s=J.ay(b),r=this.a;s.u();)r.$2(a,s.gI(s))}, +$S:33} +A.bg7.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.nL(s,a,c,r,!0) +p=""}else{q=A.nL(s,a,b,r,!0) +p=A.nL(s,b+1,c,r,!0)}J.dN(this.c.cP(0,q,A.bVi()),p)}, +$S:677} +A.aVh.prototype={ +gl0(){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.iA(m,"?",s) +q=m.length +if(r>=0){p=A.Un(m,r+1,q,B.lW,!1,!1) +q=r}else p=n +m=o.c=new A.aek("data","",n,n,A.Un(m,s,q,B.Af,!1,!1),p,n)}return m}, +j(a){var s=this.a +return this.b[0]===-1?"data:"+s:s}} +A.bhx.prototype={ +$2(a,b){var s=this.a[a] +B.G.ru(s,0,96,b) +return s}, +$S:711} +A.bhy.prototype={ +$3(a,b,c){var s,r +for(s=b.length,r=0;r>>0]=c}, +$S:299} +A.mn.prototype={ +gae0(){return this.b>0}, +gWE(){return this.c>0}, +gWH(){return this.c>0&&this.d+1=0}, +gev(){var s=this.w +return s==null?this.w=this.auD():s}, +auD(){var s,r=this,q=r.b +if(q<=0)return"" +s=q===4 +if(s&&B.c.ba(r.a,"http"))return"http" +if(q===5&&B.c.ba(r.a,"https"))return"https" +if(s&&B.c.ba(r.a,"file"))return"file" +if(q===7&&B.c.ba(r.a,"package"))return"package" +return B.c.R(r.a,0,q)}, +gov(){var s=this.c,r=this.b+3 +return s>r?B.c.R(this.a,r,s-1):""}, +gfz(a){var s=this.c +return s>0?B.c.R(this.a,s,this.d):""}, +gkf(a){var s,r=this +if(r.gWH())return A.c0(B.c.R(r.a,r.d+1,r.e),null) +s=r.b +if(s===4&&B.c.ba(r.a,"http"))return 80 +if(s===5&&B.c.ba(r.a,"https"))return 443 +return 0}, +ge8(a){return B.c.R(this.a,this.e,this.f)}, +gni(a){var s=this.f,r=this.r +return s=this.r)return B.IX +return new A.li(A.bo2(this.gni(0)),t.G5)}, +gvz(){if(this.f>=this.r)return B.IY +var s=A.by7(this.gni(0)) +s.ahj(s,A.bzC()) +return A.bl7(s,t.N,t.yp)}, +a5j(a){var s=this.d+1 +return s+a.length===this.e&&B.c.eZ(this.a,a,s)}, +afe(){return this}, +Ev(){var s=this,r=s.r,q=s.a +if(r>=q.length)return s +return new A.mn(B.c.R(q,0,r),s.b,s.c,s.d,s.e,s.f,r,s.w)}, +on(a,b,c,d,e,f){var s,r,q,p,o,n,m,l,k=this,j=null +if(f!=null){f=A.bg6(f,0,f.length) +s=!(k.b===f.length&&B.c.ba(k.a,f))}else{f=k.gev() +s=!1}r=f==="file" +q=k.c +p=q>0?B.c.R(k.a,k.b+3,q):"" +if(d!=null)d=A.Um(d,f) +else{d=k.gWH()?k.gkf(0):j +if(s)d=A.Um(d,f)}q=k.c +if(q>0)o=B.c.R(k.a,q,k.d) +else o=p.length!==0||d!=null||r?"":j +q=k.a +n=k.f +b=B.c.R(q,k.e,n) +if(!r)m=o!=null&&b.length!==0 +else m=!0 +if(m&&!B.c.ba(b,"/"))b="/"+b +if(e!=null){n=e.length +e=A.bg2(e,0,n,j)}else{m=k.r +if(n0)return b +s=b.c +if(s>0){r=a.b +if(r<=0)return b +q=r===4 +if(q&&B.c.ba(a.a,"file"))p=b.e!==b.f +else if(q&&B.c.ba(a.a,"http"))p=!b.a5j("80") +else p=!(r===5&&B.c.ba(a.a,"https"))||!b.a5j("443") +if(p){o=r+1 +return new A.mn(B.c.R(a.a,0,o)+B.c.bE(b.a,c+1),r,s+o,b.d+o,b.e+o,b.f+o,b.r+o,a.w)}else return this.a8Q().zn(b)}n=b.e +c=b.f +if(n===c){s=b.r +if(c0?l:m +o=k-n +return new A.mn(B.c.R(a.a,0,k)+B.c.bE(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.eZ(s,"../",n);)n+=3 +o=j-n+1 +return new A.mn(B.c.R(a.a,0,j)+"/"+B.c.bE(s,n),a.b,a.c,a.d,j,c+o,b.r+o,a.w)}h=a.a +l=A.bxM(this) +if(l>=0)g=l +else for(g=j;B.c.eZ(h,"../",g);)g+=3 +f=0 +while(!0){e=n+3 +if(!(e<=c&&B.c.eZ(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.eZ(h,"/",j)){n-=f*3 +d=""}o=i-n+d.length +return new A.mn(B.c.R(h,0,i)+d+B.c.bE(s,n),a.b,a.c,a.d,j,c+o,b.r+o,a.w)}, +NF(){var s,r=this,q=r.b +if(q>=0){s=!(q===4&&B.c.ba(r.a,"file")) +q=s}else q=!1 +if(q)throw A.d(A.ag("Cannot extract a file path from a "+r.gev()+" URI")) +q=r.f +s=r.a +if(q0?s.gfz(0):r,n=s.gWH()?s.gkf(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.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.IM.prototype={ +j(a){var s,r=a.left +r.toString +s=a.top +s.toString +return"Rectangle ("+A.c(r)+", "+A.c(s)+") "+A.c(this.geu(a))+" x "+A.c(this.gbA(a))}, +l(a,b){var s,r,q +if(b==null)return!1 +s=!1 +if(t.Bb.b(b)){r=a.left +r.toString +q=J.dI(b) +if(r===q.gkc(b)){s=a.top +s.toString +s=s===q.gzt(b)&&this.geu(a)===q.geu(b)&&this.gbA(a)===q.gbA(b)}}return s}, +gB(a){var s,r=a.left +r.toString +s=a.top +s.toString +return A.a4(r,s,this.geu(a),this.gbA(a),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +ga4R(a){return a.height}, +gbA(a){var s=this.ga4R(a) +s.toString +return s}, +gkc(a){var s=a.left +s.toString +return s}, +gzt(a){var s=a.top +s.toString +return s}, +gaa1(a){return a.width}, +geu(a){var s=this.gaa1(a) +s.toString +return s}, +$il7:1} +A.a_x.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.a_z.prototype={ +gt(a){var s=a.length +s.toString +return s}, +gk(a){return a.value}, +q(a,b){return a.add(b)}, +p(a,b){var s=a.contains(b) +s.toString +return s}} +A.bv.prototype={ +j(a){var s=a.localName +s.toString +return s}} +A.bd.prototype={$ibd:1} +A.a_Z.prototype={ +L(a){return a.close()}} +A.am.prototype={ +Cc(a,b,c,d){if(c!=null)this.aDa(a,b,c,!1)}, +aDa(a,b,c,d){return a.addEventListener(b,A.rN(c,1),!1)}, +aIx(a,b,c,d){return a.removeEventListener(b,A.rN(c,1),!1)}, +$iam:1} +A.iO.prototype={$iiO:1} +A.Bg.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1, +$iBg:1} +A.a0b.prototype={ +gt(a){return a.length}} +A.a0o.prototype={ +q(a,b){return a.add(b)}} +A.a0q.prototype={ +gt(a){return a.length}} +A.jo.prototype={$ijo:1} +A.a0w.prototype={ +gk(a){return a.value}} +A.a0O.prototype={ +gt(a){var s=a.length +s.toString +return s}} +A.x7.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.a11.prototype={ +L(a){return a.close()}} +A.BC.prototype={$iBC:1} +A.a1d.prototype={ +gk(a){return a.value}, +gdG(a){return a.webkitEntries}} +A.a1p.prototype={ +gk(a){var s=a.value +s.toString +return s}} +A.a1T.prototype={ +j(a){var s=String(a) +s.toString +return s}} +A.a3V.prototype={ +L(a){var s=a.close() +s.toString +return A.jc(s,t.z)}} +A.a3W.prototype={ +gt(a){return a.length}} +A.u3.prototype={$iu3:1} +A.Cb.prototype={ +Cc(a,b,c,d){if(b==="message")a.start() +this.amr(a,b,c,!1)}, +L(a){return a.close()}, +$iCb:1} +A.a40.prototype={ +gk(a){return a.value}} +A.a41.prototype={ +hO(a,b){return B.b.fQ(this.gaJ(a),new A.aIC(b))}, +N(a,b){return A.mp(a.get(b))!=null}, +h(a,b){return A.mp(a.get(b))}, +az(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.mp(s.value[1]))}}, +gd1(a){var s=A.a([],t.s) +this.az(a,new A.aID(s)) +return s}, +gaJ(a){var s=A.a([],t.n4) +this.az(a,new A.aIE(s)) +return s}, +gt(a){var s=a.size +s.toString +return s}, +ga_(a){var s=a.size +s.toString +return s===0}, +gbC(a){var s=a.size +s.toString +return s!==0}, +n(a,b,c){throw A.d(A.ag("Not supported"))}, +cP(a,b,c){throw A.d(A.ag("Not supported"))}, +C(a,b){throw A.d(A.ag("Not supported"))}, +V(a){throw A.d(A.ag("Not supported"))}, +$iao:1} +A.aIC.prototype={ +$1(a){return!1}, +$S:125} +A.aID.prototype={ +$2(a,b){return this.a.push(a)}, +$S:33} +A.aIE.prototype={ +$2(a,b){return this.a.push(b)}, +$S:33} +A.a42.prototype={ +hO(a,b){return B.b.fQ(this.gaJ(a),new A.aIF(b))}, +N(a,b){return A.mp(a.get(b))!=null}, +h(a,b){return A.mp(a.get(b))}, +az(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.mp(s.value[1]))}}, +gd1(a){var s=A.a([],t.s) +this.az(a,new A.aIG(s)) +return s}, +gaJ(a){var s=A.a([],t.n4) +this.az(a,new A.aIH(s)) +return s}, +gt(a){var s=a.size +s.toString +return s}, +ga_(a){var s=a.size +s.toString +return s===0}, +gbC(a){var s=a.size +s.toString +return s!==0}, +n(a,b,c){throw A.d(A.ag("Not supported"))}, +cP(a,b,c){throw A.d(A.ag("Not supported"))}, +C(a,b){throw A.d(A.ag("Not supported"))}, +V(a){throw A.d(A.ag("Not supported"))}, +$iao:1} +A.aIF.prototype={ +$1(a){return!1}, +$S:125} +A.aIG.prototype={ +$2(a,b){return this.a.push(a)}, +$S:33} +A.aIH.prototype={ +$2(a,b){return this.a.push(b)}, +$S:33} +A.xG.prototype={ +L(a){var s=a.close() +s.toString +return A.jc(s,t.z)}} +A.jt.prototype={$ijt:1} +A.a43.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.bX.prototype={ +j(a){var s=a.nodeValue +return s==null?this.amB(a):s}, +p(a,b){var s=a.contains(b) +s.toString +return s}, +$ibX:1} +A.LJ.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.a50.prototype={ +L(a){return a.close()}} +A.a5d.prototype={ +gk(a){var s=a.value +s.toString +return s}} +A.a5n.prototype={ +gk(a){return a.value}} +A.a5Q.prototype={ +gk(a){var s=a.value +s.toString +return s}} +A.jw.prototype={ +gt(a){return a.length}, +$ijw:1} +A.a66.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.a6e.prototype={ +gk(a){return a.value}} +A.a6f.prototype={ +L(a){return a.close()}} +A.a6l.prototype={ +gk(a){var s=a.value +s.toString +return s}} +A.Ne.prototype={ +L(a){return a.close()}} +A.Df.prototype={ +L(a){return a.close()}} +A.a7v.prototype={ +hO(a,b){return B.b.fQ(this.gaJ(a),new A.aPz(b))}, +N(a,b){return A.mp(a.get(b))!=null}, +h(a,b){return A.mp(a.get(b))}, +az(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.mp(s.value[1]))}}, +gd1(a){var s=A.a([],t.s) +this.az(a,new A.aPA(s)) +return s}, +gaJ(a){var s=A.a([],t.n4) +this.az(a,new A.aPB(s)) +return s}, +gt(a){var s=a.size +s.toString +return s}, +ga_(a){var s=a.size +s.toString +return s===0}, +gbC(a){var s=a.size +s.toString +return s!==0}, +n(a,b,c){throw A.d(A.ag("Not supported"))}, +cP(a,b,c){throw A.d(A.ag("Not supported"))}, +C(a,b){throw A.d(A.ag("Not supported"))}, +V(a){throw A.d(A.ag("Not supported"))}, +$iao:1} +A.aPz.prototype={ +$1(a){return!1}, +$S:125} +A.aPA.prototype={ +$2(a,b){return this.a.push(a)}, +$S:33} +A.aPB.prototype={ +$2(a,b){return this.a.push(b)}, +$S:33} +A.a7X.prototype={ +gt(a){return a.length}, +gk(a){return a.value}} +A.Dt.prototype={$iDt:1} +A.a8a.prototype={ +L(a){return a.close()}} +A.jB.prototype={$ijB:1} +A.a8K.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.jC.prototype={$ijC:1} +A.a8S.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.jD.prototype={ +gt(a){return a.length}, +$ijD:1} +A.a8W.prototype={ +hO(a,b){return B.b.fQ(this.gaJ(a),new A.aSu(b))}, +N(a,b){return a.getItem(A.bS(b))!=null}, +h(a,b){return a.getItem(A.bS(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.bS(s):s}, +C(a,b){var s +A.bS(b) +s=a.getItem(b) +a.removeItem(b) +return s}, +V(a){return a.clear()}, +az(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)}}, +gd1(a){var s=A.a([],t.s) +this.az(a,new A.aSv(s)) +return s}, +gaJ(a){var s=A.a([],t.s) +this.az(a,new A.aSw(s)) +return s}, +gt(a){var s=a.length +s.toString +return s}, +ga_(a){return a.key(0)==null}, +gbC(a){return a.key(0)!=null}, +$iao:1} +A.aSu.prototype={ +$1(a){return!1}, +$S:21} +A.aSv.prototype={ +$2(a,b){return this.a.push(a)}, +$S:124} +A.aSw.prototype={ +$2(a,b){return this.a.push(b)}, +$S:124} +A.iz.prototype={$iiz:1} +A.a9k.prototype={ +gk(a){return a.value}} +A.jI.prototype={$ijI:1} +A.iB.prototype={$iiB:1} +A.a9B.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.a9C.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.a9D.prototype={ +gt(a){var s=a.length +s.toString +return s}} +A.jJ.prototype={$ijJ:1} +A.a9H.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.a9I.prototype={ +gt(a){return a.length}} +A.a9X.prototype={ +j(a){var s=String(a) +s.toString +return s}} +A.aa7.prototype={ +gt(a){return a.length}} +A.aan.prototype={ +L(a){return a.close()}} +A.PM.prototype={ +L(a){return a.close()}} +A.z9.prototype={} +A.acY.prototype={ +gk(a){return a.value}} +A.adX.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.QP.prototype={ +j(a){var s,r,q,p=a.left +p.toString +s=a.top +s.toString +r=a.width +r.toString +q=a.height +q.toString +return"Rectangle ("+A.c(p)+", "+A.c(s)+") "+A.c(r)+" x "+A.c(q)}, +l(a,b){var s,r,q +if(b==null)return!1 +s=!1 +if(t.Bb.b(b)){r=a.left +r.toString +q=J.dI(b) +if(r===q.gkc(b)){r=a.top +r.toString +if(r===q.gzt(b)){r=a.width +r.toString +if(r===q.geu(b)){s=a.height +s.toString +q=s===q.gbA(b) +s=q}}}}return s}, +gB(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.a4(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)}, +ga4R(a){return a.height}, +gbA(a){var s=a.height +s.toString +return s}, +gaa1(a){return a.width}, +geu(a){var s=a.width +s.toString +return s}} +A.afP.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +return a[b]}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){if(a.length>0)return a[0] +throw A.d(A.a1("No elements"))}, +gY(a){var s=a.length +if(s>0)return a[s-1] +throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.Sg.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.akJ.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.akW.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length,r=b>>>0!==b||b>=s +r.toString +if(r)throw A.d(A.eZ(b,s,a,null,null)) +s=a[b] +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s +if(a.length>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s,r=a.length +if(r>0){s=a[r-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return a[b]}, +$ics:1, +$iaz:1, +$icH:1, +$iB:1, +$iD:1} +A.blX.prototype={} +A.Rg.prototype={ +gi7(){return!0}, +aK(a,b,c,d){return A.Ri(this.a,this.b,a,!1,A.y(this).c)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}} +A.Rj.prototype={ +S(a){var s=this +if(s.b==null)return $.bkz() +s.S2() +s.d=s.b=null +return $.bkz()}, +jA(a){var s,r=this +if(r.b==null)throw A.d(A.a1("Subscription has been canceled.")) +r.S2() +s=A.bzl(new A.b3_(a),t.I3) +r.d=s +r.S1()}, +j5(a,b){}, +mm(a,b){if(this.b==null)return;++this.a +this.S2()}, +ic(a){return this.mm(0,null)}, +ie(a){var s=this +if(s.b==null||s.a<=0)return;--s.a +s.S1()}, +S1(){var s,r=this,q=r.d +if(q!=null&&r.a<=0){s=r.b +s.toString +J.bEu(s,r.c,q,!1)}}, +S2(){var s,r=this.d +if(r!=null){s=this.b +s.toString +J.bEt(s,this.c,r,!1)}}, +xI(a,b){return new A.a_($.ab,b.i("a_<0>"))}, +$ijG:1} +A.b2Y.prototype={ +$1(a){return this.a.$1(a)}, +$S:101} +A.b3_.prototype={ +$1(a){return this.a.$1(a)}, +$S:101} +A.aeg.prototype={ +adw(a){return new A.Rg(a,A.btq(a),!1,this.$ti.i("Rg<1>"))}} +A.bN.prototype={ +gav(a){return new A.a0e(a,this.gt(a),A.ba(a).i("a0e"))}, +q(a,b){throw A.d(A.ag("Cannot add to immutable List."))}, +fZ(a,b){throw A.d(A.ag("Cannot sort immutable List."))}, +iG(a){throw A.d(A.ag("Cannot remove from immutable List."))}, +C(a,b){throw A.d(A.ag("Cannot remove from immutable List."))}, +d5(a,b,c,d,e){throw A.d(A.ag("Cannot setRange on immutable List."))}, +dC(a,b,c,d){return this.d5(a,b,c,d,0)}} +A.a0e.prototype={ +u(){var s=this,r=s.c+1,q=s.b +if(r0){s.q(0,a) +this.b.$0()}else this.c.bv(0,s.oq())}, +$S:1010} +A.b40.prototype={ +$2(a,b){var s,r={} +r.a=new Uint8Array(b) +r.b=0 +s=new A.a_($.ab,t.Qy) +new A.b41(r,a,b,new A.aq(s,t.gI)).$0() +return s}, +$S:822} +A.b41.prototype={ +$0(){var s=this,r=s.a,q=r.a,p=r.b,o=s.c,n=s.d +s.b.b_7(q,p,Math.min(p+16777216,o)).cv(new A.b42(r,s,o,n),n.gxV(),t.P)}, +$S:0} +A.b42.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")).aK(a,b,c,d)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}, +L(a){this.G7(B.ov) +return this.fr.a}, +a1N(a){var s=this.fr +if((s.a.a&30)===0)s.bv(0,this)}, +aun(){return this.a1N(null)}, +Ba(){var s=this +s.dx=s.dy=!0 +s.a.L(0).ak(s.gaum(),t.H) +s.cy=s.db=!0 +s.gIS() +s.gIS().S(0) +s.c.L(0) +s.ax=203}, +G7(a){var s=this +if(a===B.ow||a===B.ov){s.dy=!0 +if(s.fx.c){s.a.G7(B.ow) +s.db=!0 +if(s.dx)s.Ba()}}if(a===B.uY||a===B.ov){s.cy=s.dx=!0 +s.a.G7(B.uY) +if(s.db)s.Ba()}}, +aFv(a){var s=this.Q +if(s==null)return!1 +return s.$1(a)}, +ax5(a){var s,r,q,p=this +try{if(a===B.akY){p.T_() +p.go=!0 +p.qR()}else if(a===B.akZ){p.Uq() +p.go=!0 +p.qR()}else if(a===B.Nj)p.AA()}catch(q){s=A.v(q) +r=A.aT(q) +p.u7(s,r)}}, +awr(){if(this.fx.b)this.Ba()}, +u7(a,b){var s=this +if(s.ax===203)return +else if(s.fy)s.b.dh(a,b) +else s.c.cX(a,b) +s.Ba()}, +aIL(a){return this.u7(a,null)}, +AA(){var s=0,r=A.n(t.H),q,p=this,o +var $async$AA=A.j(function(a,b){if(a===1)return A.k(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.q(0,B.Nj) +if(p.db)p.Ba() +s=7 +break +case 8:p.go=!0 +s=9 +return A.f(p.qR(),$async$AA) +case 9:case 7:s=4 +break +case 5:if(o===201){p.cy=!0 +if(p.fx.b)p.u7(new A.q3("HandshakeException","Connection terminated during handshake",null),null)}case 4:case 1:return A.l(q,r)}}) +return A.m($async$AA,r)}, +qL(){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j +var $async$qL=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:q=3 +s=6 +return A.f(o.k1.aUR(),$async$qL) +case 6:n=b +s=n?7:9 +break +case 7:s=10 +return A.f(o.qL(),$async$qL) +case 10:s=8 +break +case 9:o.fx.c=!1 +o.T_() +o.Uq() +o.go=!0 +s=11 +return A.f(o.qR(),$async$qL) +case 11:case 8:q=1 +s=5 +break +case 3:q=2 +j=p +m=A.v(j) +l=A.aT(j) +o.u7(m,l) +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$qL,r)}, +aJP(){var s,r,q,p=this +p.ax=202 +if(p.fy){p.fy=!1 +try{p.k1.b1r() +A.bZ(B.F,new A.bbv(p))}catch(q){s=A.v(q) +r=A.aT(q) +p.b.dh(s,r)}}}, +aG4(){var s,r=this,q=r.c,p=q.b +p=(p&1)!==0?(q.gjS().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.a7p() +r.Tp()}}if(!r.cy||!r.db){p=q.b +if((p&1)!==0?(q.gjS().e&4)!==0:(p&2)===0)r.gIS().ic(0) +else r.gIS().ie(0)}}, +aGe(){}, +qR(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$qR=A.j(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.f(n.Ip(),$async$qR) +case 9:n.fx=b +n.id=!1 +if(n.ax===203){n.k1.ex() +n.k1=null +s=1 +break}k.sXV(!0) +if(n.fx.c&&n.dy&&!n.db){n.G7(B.ow) +if(n.ax===203){s=1 +break}}if(n.fx.b&&n.cy&&!n.dx){if(n.ax===201){n.k1.aUR() +if(n.ax===201){k=A.bJ7("Connection terminated during handshake") +throw A.d(k)}}n.AA()}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.Uq() +if(n.fx.e)n.Tp() +if(n.fx.f)n.T_() +if(n.fx.d)n.a7p() +s=n.ax===201?12:13 +break +case 12:s=14 +return A.f(n.qL(),$async$qR) +case 14:case 13:case 11:s=7 +break +case 8:p=2 +s=6 +break +case 4:p=3 +h=o +m=A.v(h) +l=A.aT(h) +n.u7(m,l) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$qR,r)}, +aI7(a){if(!this.cy)return this.a.l_(0,a) +else return null}, +T_(){var s=this +if(s.ax===203)return +if(s.k1.gaaY().h(0,2).b2j(s.gaI6()).mC(0,0))s.fx.b=!1 +else s.a.sXV(!1)}, +Uq(){if(this.db)return +var s=this.a +if(this.k1.gaaY().h(0,3).b2b(s))s.sahV(!0)}, +a7p(){}, +Tp(){}, +Ip(){var s=0,r=A.n(t.GN),q=this,p,o,n,m,l,k +var $async$Ip=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:m=q.ax +l=A.bO(10,null,!1,t.z) +l[0]=q.k1.a6y() +l[1]=m!==202 +p=q.k1.gaaY() +for(o=0;o<4;++o){m=2*o +n=p.h(0,o) +l[m+2]=n.gcD(n) +n=p.h(0,o) +l[m+3]=n.gbV(n)}k=t.Dn +s=2 +return A.f(A.bQ7(43,l),$async$Ip) +case 2:k.a(b) +return A.l(null,r)}}) +return A.m($async$Ip,r)}, +$ijy:1, +$iuu:1} +A.bbv.prototype={ +$0(){var s=this.a +return s.b.bv(0,s)}, +$S:0} +A.nv.prototype={ +j(a){var s=""+this.a,r=this.b +if(r.length!==0)s+=": "+r +return s.charCodeAt(0)==0?s:s}, +$ibm:1} +A.q3.prototype={} +A.Oe.prototype={} +A.aSa.prototype={} +A.ke.prototype={ +j(a){return B.a4Q[this.a]}} +A.il.prototype={ +aDN(){return this.b.$0()}} +A.no.prototype={ +j(a){var s=""+"SocketException",r=this.a +if(r.length!==0)s+=": "+r +return s.charCodeAt(0)==0?s:s}, +$ibm:1} +A.bjv.prototype={ +$1(a){var s,r,q,p,o +if(A.bz_(a))return a +s=this.a +if(s.N(0,a))return s.h(0,a) +if(t.pE.b(a)){r={} +s.n(0,a,r) +for(s=J.dI(a),q=J.ay(s.gd1(a));q.u();){p=q.gI(q) +r[p]=this.$1(s.h(a,p))}return r}else if(t.VG.b(a)){o=[] +s.n(0,a,o) +B.b.G(o,J.eX(a,this,t.z)) +return o}else return a}, +$S:166} +A.bjS.prototype={ +$1(a){return this.a.bv(0,a)}, +$S:16} +A.bjT.prototype={ +$1(a){if(a==null)return this.a.dF(new A.a53(a===undefined)) +return this.a.dF(a)}, +$S:16} +A.biC.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i +if(A.byZ(a))return a +s=this.a +a.toString +if(s.N(0,a))return s.h(0,a) +if(a instanceof Date)return new A.aS(A.o9(a.getTime(),0,!0),0,!0) +if(a instanceof RegExp)throw A.d(A.bl("structured clone of RegExp",null)) +if(typeof Promise!="undefined"&&a instanceof Promise)return A.jc(a,t.X) +r=Object.getPrototypeOf(a) +if(r===Object.prototype||r===null){q=t.X +p=A.w(q,q) +s.n(0,a,p) +o=Object.keys(a) +n=[] +for(s=J.cF(o),q=s.gav(o);q.u();)n.push(A.bpj(q.gI(q))) +for(m=0;m4294967296)throw A.d(A.h1(u.E+a)) +return Math.random()*a>>>0}, +aXH(){return Math.random()}} +A.bbp.prototype={ +arh(a){var s,r,q,p,o,n,m,l=this,k=4294967296 +do{s=a>>>0 +a=B.e.cn(a-s,k) +r=a>>>0 +a=B.e.cn(a-r,k) +q=(~s>>>0)+(s<<21>>>0) +p=q>>>0 +r=(~r>>>0)+((r<<21|s>>>11)>>>0)+B.e.cn(q-p,k)>>>0 +q=((p^(p>>>24|r<<8))>>>0)*265 +s=q>>>0 +r=((r^r>>>24)>>>0)*265+B.e.cn(q-s,k)>>>0 +q=((s^(s>>>14|r<<18))>>>0)*21 +s=q>>>0 +r=((r^r>>>14)>>>0)*21+B.e.cn(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.e.cn(q-p,k) +q=l.a*1037 +n=l.a=q>>>0 +m=l.b*1037+B.e.cn(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.xe() +l.xe() +l.xe() +l.xe()}, +xe(){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.e.cn(o-n+(q-p)+(m-r),4294967296)>>>0}, +pR(a){var s,r,q,p=this +if(a<=0||a>4294967296)throw A.d(A.h1(u.E+a)) +s=a-1 +if((a&s)>>>0===0){p.xe() +return(p.a&s)>>>0}do{p.xe() +r=p.a +q=r%a}while(r-q+a>=4294967296) +return q}} +A.b8O.prototype={ +are(){var s=self.crypto +if(s!=null)if(s.getRandomValues!=null)return +throw A.d(A.ag("No source of cryptographically secure random numbers available."))}, +pR(a){var s,r,q,p,o,n,m,l,k +if(a<=0||a>4294967296)throw A.d(A.h1(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.ds(Math.pow(256,s)) +for(o=a-1,n=(a&o)>>>0===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.eZ(b,this.gt(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return this.h(a,b)}, +$iaz:1, +$iB:1, +$iD:1} +A.kY.prototype={ +gk(a){return a.value}, +$ikY:1} +A.a56.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length +s.toString +s=b>>>0!==b||b>=s +s.toString +if(s)throw A.d(A.eZ(b,this.gt(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return this.h(a,b)}, +$iaz:1, +$iB:1, +$iD:1} +A.a67.prototype={ +gt(a){return a.length}} +A.a8Y.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length +s.toString +s=b>>>0!==b||b>=s +s.toString +if(s)throw A.d(A.eZ(b,this.gt(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return this.h(a,b)}, +$iaz:1, +$iB:1, +$iD:1} +A.lg.prototype={$ilg:1} +A.a9K.prototype={ +gt(a){var s=a.length +s.toString +return s}, +h(a,b){var s=a.length +s.toString +s=b>>>0!==b||b>=s +s.toString +if(s)throw A.d(A.eZ(b,this.gt(a),a,null,null)) +s=a.getItem(b) +s.toString +return s}, +n(a,b,c){throw A.d(A.ag("Cannot assign element of immutable List."))}, +st(a,b){throw A.d(A.ag("Cannot resize immutable List."))}, +gW(a){var s=a.length +s.toString +if(s>0){s=a[0] +s.toString +return s}throw A.d(A.a1("No elements"))}, +gY(a){var s=a.length +s.toString +if(s>0){s=a[s-1] +s.toString +return s}throw A.d(A.a1("No elements"))}, +c2(a,b){return this.h(a,b)}, +$iaz:1, +$iB:1, +$iD:1} +A.agG.prototype={} +A.agH.prototype={} +A.ahD.prototype={} +A.ahE.prototype={} +A.akS.prototype={} +A.akT.prototype={} +A.alQ.prototype={} +A.alR.prototype={} +A.a_O.prototype={} +A.Xo.prototype={ +D(){return"ClipOp."+this.b}} +A.aa5.prototype={ +D(){return"VertexMode."+this.b}} +A.M2.prototype={ +D(){return"PathFillType."+this.b}} +A.aZZ.prototype={ +iB(a,b){A.bWh(this.a,this.b,a,b)}} +A.TL.prototype={ +jv(a){A.rP(this.b,this.c,a,t.CD)}} +A.rj.prototype={ +gt(a){return this.a.gt(0)}, +nh(a){var s,r,q=this +if(!q.d&&q.e!=null){q.e.iB(a.a,a.gaex()) +return!1}s=q.c +if(s<=0)return!0 +r=q.a2T(s-1) +q.a.f0(0,a) +return r}, +a2T(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.om() +A.rP(p.b,p.c,null,r)}return q}, +awz(){var s=this,r=s.a +if(!r.ga_(0)&&s.e!=null){r=r.om() +s.e.iB(r.a,r.gaex()) +A.ff(s.ga2P())}else s.d=!1}} +A.as2.prototype={ +aZM(a,b,c){this.a.cP(0,a,new A.as3()).nh(new A.TL(b,c,$.ab))}, +akC(a,b){var s=this.a.cP(0,a,new A.as4()),r=s.e +s.e=new A.aZZ(b,$.ab) +if(r==null&&!s.d){s.d=!0 +A.ff(s.ga2P())}}, +aU5(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.dw(a.buffer,a.byteOffset,a.byteLength) +if(j[0]===7){s=j[1] +if(s>=254)throw A.d(A.ae("Unrecognized message sent to dev.flutter/channel-buffers (method name too long)")) +r=2+s +q=B.a5.ei(0,B.G.cK(j,2,r)) +switch(q){case"resize":if(j[r]!==12)throw A.d(A.ae(l)) +p=r+1 +if(j[p]<2)throw A.d(A.ae(l));++p +if(j[p]!==7)throw A.d(A.ae("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.ae("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.a5.ei(0,B.G.cK(j,p,r)) +if(j[r]!==3)throw A.d(A.ae("Invalid arguments for 'resize' method sent to dev.flutter/channel-buffers (second argument must be an integer in the range 0 to 2147483647)")) +this.agF(0,n,a.getUint32(r+1,B.an===$.fS())) +break +case"overflow":if(j[r]!==12)throw A.d(A.ae(k)) +p=r+1 +if(j[p]<2)throw A.d(A.ae(k));++p +if(j[p]!==7)throw A.d(A.ae("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.ae("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.a5.ei(0,B.G.cK(j,p,r)) +r=j[r] +if(r!==1&&r!==2)throw A.d(A.ae("Invalid arguments for 'overflow' method sent to dev.flutter/channel-buffers (second argument must be a boolean)")) +break +default:throw A.d(A.ae("Unrecognized method '"+q+"' sent to dev.flutter/channel-buffers"))}}else{m=A.a(B.a5.ei(0,j).split("\r"),t.s) +if(m.length===3&&J.e(m[0],"resize"))this.agF(0,m[1],A.c0(m[2],null)) +else throw A.d(A.ae("Unrecognized message "+A.c(m)+" sent to dev.flutter/channel-buffers."))}}, +agF(a,b,c){var s=this.a,r=s.h(0,b) +if(r==null)s.n(0,b,new A.rj(A.ej(c,t.S8),c)) +else{r.c=c +r.a2T(c)}}} +A.as3.prototype={ +$0(){return new A.rj(A.ej(1,t.S8),1)}, +$S:331} +A.as4.prototype={ +$0(){return new A.rj(A.ej(1,t.S8),1)}, +$S:331} +A.a5a.prototype={ +mC(a,b){return this.a>b.a&&this.b>b.b}, +l(a,b){if(b==null)return!1 +return b instanceof A.a5a&&b.a===this.a&&b.b===this.b}, +gB(a){return A.a4(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"OffsetBase("+B.d.aF(this.a,1)+", "+B.d.aF(this.b,1)+")"}} +A.z.prototype={ +ges(){var s=this.a,r=this.b +return Math.sqrt(s*s+r*r)}, +guK(){var s=this.a,r=this.b +return s*s+r*r}, +ai(a,b){return new A.z(this.a-b.a,this.b-b.b)}, +ab(a,b){return new A.z(this.a+b.a,this.b+b.b)}, +ap(a,b){return new A.z(this.a*b,this.b*b)}, +fO(a,b){return new A.z(this.a/b,this.b/b)}, +l(a,b){if(b==null)return!1 +return b instanceof A.z&&b.a===this.a&&b.b===this.b}, +gB(a){return A.a4(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"Offset("+B.d.aF(this.a,1)+", "+B.d.aF(this.b,1)+")"}} +A.R.prototype={ +ga_(a){return this.a<=0||this.b<=0}, +ai(a,b){var s=this +if(b instanceof A.R)return new A.z(s.a-b.a,s.b-b.b) +if(b instanceof A.z)return new A.R(s.a-b.a,s.b-b.b) +throw A.d(A.bl(b,null))}, +ab(a,b){return new A.R(this.a+b.a,this.b+b.b)}, +ap(a,b){return new A.R(this.a*b,this.b*b)}, +fO(a,b){return new A.R(this.a/b,this.b/b)}, +nL(a){return new A.z(a.a+this.a/2,a.b+this.b/2)}, +JK(a,b){return new A.z(b.a+this.a,b.b+this.b)}, +p(a,b){var s=b.a,r=!1 +if(s>=0)if(s=0&&s=1/0||s.b>=1/0||s.c>=1/0||s.d>=1/0}, +gDR(a){var s=this +return isFinite(s.a)&&isFinite(s.b)&&isFinite(s.c)&&isFinite(s.d)}, +ga_(a){var s=this +return s.a>=s.c||s.b>=s.d}, +ep(a){var s=this,r=a.a,q=a.b +return new A.I(s.a+r,s.b+q,s.c+r,s.d+q)}, +bs(a,b,c){var s=this +return new A.I(s.a+b,s.b+c,s.c+b,s.d+c)}, +eA(a){var s=this +return new A.I(s.a-a,s.b-a,s.c+a,s.d+a)}, +hG(a){var s=this +return new A.I(Math.max(s.a,a.a),Math.max(s.b,a.b),Math.min(s.c,a.c),Math.min(s.d,a.d))}, +nT(a){var s=this +return new A.I(Math.min(s.a,a.a),Math.min(s.b,a.b),Math.max(s.c,a.c),Math.max(s.d,a.d))}, +XB(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}, +gje(){var s=this +return Math.min(Math.abs(s.c-s.a),Math.abs(s.d-s.b))}, +gabb(){var s=this.b +return new A.z(this.a,s+(this.d-s)/2)}, +gbq(){var s=this,r=s.a,q=s.b +return new A.z(r+(s.c-r)/2,q+(s.d-q)/2)}, +p(a,b){var s=this,r=b.a,q=!1 +if(r>=s.a)if(r=s.b&&r=s.c||s.b>=s.d}, +Ht(a,b,c,d){var s=b+c +if(s>d&&s!==0)return Math.min(a,d/s) +return a}, +w8(){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.Ht(s.Ht(s.Ht(s.Ht(1,l,k,m),j,i,p),h,g,m),f,e,p) +if(d<1)return new A.l6(q,n,r,o,j*d,k*d,i*d,h*d,f*d,g*d,e*d,l*d,!1) +return new A.l6(q,n,r,o,j,k,i,h,f,g,e,l,!1)}, +p(a,b){var s,r,q,p,o,n=this,m=b.a,l=n.a,k=!0 +if(!(m=n.c)){k=b.b +k=k=n.d}if(k)return!1 +s=n.w8() +r=s.e +if(mk-r&&b.bk-r&&b.b>n.d-s.y){q=m-k+r +p=s.y +o=b.b-n.d+p}else{r=s.z +if(mn.d-s.Q){q=m-l-r +p=s.Q +o=b.b-n.d+p}else return!0}}}q/=r +o/=p +if(q*q+o*o>1)return!1 +return!0}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(A.K(s)!==J.ah(b))return!1 +return b instanceof A.l6&&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}, +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.z,s.Q,s.x,s.y,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s,r,q=this,p=B.d.aF(q.a,1)+", "+B.d.aF(q.b,1)+", "+B.d.aF(q.c,1)+", "+B.d.aF(q.d,1),o=q.e,n=q.f,m=q.r,l=q.w +if(new A.bg(o,n).l(0,new A.bg(m,l))){s=q.x +r=q.y +s=new A.bg(m,l).l(0,new A.bg(s,r))&&new A.bg(s,r).l(0,new A.bg(q.z,q.Q))}else s=!1 +if(s){if(o===n)return"RRect.fromLTRBR("+p+", "+B.d.aF(o,1)+")" +return"RRect.fromLTRBXY("+p+", "+B.d.aF(o,1)+", "+B.d.aF(n,1)+")"}return"RRect.fromLTRBAndCorners("+p+", topLeft: "+new A.bg(o,n).j(0)+", topRight: "+new A.bg(m,l).j(0)+", bottomRight: "+new A.bg(q.x,q.y).j(0)+", bottomLeft: "+new A.bg(q.z,q.Q).j(0)+")"}} +A.Kj.prototype={ +D(){return"KeyEventType."+this.b}, +gDX(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.aD6.prototype={ +D(){return"KeyEventDeviceType."+this.b}} +A.k9.prototype={ +aEz(){var s=this.e +return"0x"+B.e.hY(s,16)+new A.aD4(B.d.dv(s/4294967296)).$0()}, +ax1(){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+'"'}}, +aI3(){var s=this.f +if(s==null)return"" +return" (0x"+new A.ad(new A.eY(s),new A.aD5(),t.Hz.i("ad")).bJ(0," ")+")"}, +j(a){var s=this,r=s.b.gDX(0),q=B.e.hY(s.d,16),p=s.aEz(),o=s.ax1(),n=s.aI3(),m=s.r?", synthesized":"" +return"KeyData("+r+", physical: 0x"+q+", logical: "+p+", character: "+o+n+m+")"}} +A.aD4.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:17} +A.aD5.prototype={ +$1(a){return B.c.fk(B.e.hY(a,16),2,"0")}, +$S:165} +A.A.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.A&&b.gk(b)===s.gk(s)}, +gB(a){return B.e.gB(this.gk(this))}, +j(a){return"Color(0x"+B.c.fk(B.e.hY(this.gk(this),16),8,"0")+")"}, +gk(a){return this.a}} +A.DK.prototype={ +D(){return"StrokeCap."+this.b}} +A.DL.prototype={ +D(){return"StrokeJoin."+this.b}} +A.a5O.prototype={ +D(){return"PaintingStyle."+this.b}} +A.dV.prototype={ +D(){return"BlendMode."+this.b}} +A.Aq.prototype={ +D(){return"Clip."+this.b}} +A.WZ.prototype={ +D(){return"BlurStyle."+this.b}} +A.xy.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.xy&&b.a===this.a&&b.b===this.b}, +gB(a){return A.a4(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"MaskFilter.blur("+this.a.j(0)+", "+B.d.aF(this.b,1)+")"}} +A.Jo.prototype={ +D(){return"FilterQuality."+this.b}} +A.bmv.prototype={} +A.uJ.prototype={ +bK(a,b){return new A.uJ(this.a,this.b.ap(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.uJ&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c===s.c}, +gB(a){return A.a4(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"TextShadow("+this.a.j(0)+", "+this.b.j(0)+", "+A.c(this.c)+")"}} +A.ol.prototype={ +gt(a){return this.b}} +A.a13.prototype={ +WP(){var s=0,r=A.n(t.hP),q,p=this,o +var $async$WP=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:o=p.a +if(o==null)throw A.d(A.a1("Object is disposed")) +o=$.ap().yT(o,!1,null,null) +q=o +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$WP,r)}} +A.aMG.prototype={} +A.q0.prototype={ +j(a){var s,r=A.K(this).j(0),q=this.a,p=A.dA(q[2],0,0),o=q[1],n=A.dA(o,0,0),m=q[4],l=A.dA(m,0,0),k=A.dA(q[3],0,0) +o=A.dA(o,0,0) +s=q[0] +return r+"(buildDuration: "+(A.c((p.a-n.a)*0.001)+"ms")+", rasterDuration: "+(A.c((l.a-k.a)*0.001)+"ms")+", vsyncOverhead: "+(A.c((o.a-A.dA(s,0,0).a)*0.001)+"ms")+", totalSpan: "+(A.c((A.dA(m,0,0).a-A.dA(s,0,0).a)*0.001)+"ms")+", layerCacheCount: "+q[6]+", layerCacheBytes: "+q[7]+", pictureCacheCount: "+q[8]+", pictureCacheBytes: "+q[9]+", frameNumber: "+B.b.gY(q)+")"}} +A.iH.prototype={ +D(){return"AppLifecycleState."+this.b}} +A.H_.prototype={ +D(){return"AppExitResponse."+this.b}} +A.dX.prototype={ +gda(a){var s=this.a,r=B.cE.h(0,s) +return r==null?s:r}, +gdi(){var s=this.c,r=B.dS.h(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.dX&&b.gda(0)===s.gda(0)&&b.b==s.b&&b.gdi()==s.gdi()}, +gB(a){return A.a4(this.gda(0),this.b,this.gdi(),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return this.u4("_")}, +u4(a){var s=this,r=s.gda(0),q=s.b +if(q!=null)r+=a+q +if(s.c!=null)r+=a+A.c(s.gdi()) +return r.charCodeAt(0)==0?r:r}} +A.au2.prototype={ +D(){return"DartPerformanceMode."+this.b}} +A.yA.prototype={ +j(a){return"SemanticsActionEvent("+this.a.j(0)+", view: "+this.b+", node: "+this.c+")"}} +A.aVI.prototype={ +D(){return"ViewFocusState."+this.b}} +A.aa9.prototype={ +D(){return"ViewFocusDirection."+this.b}} +A.qw.prototype={ +D(){return"PointerChange."+this.b}} +A.oF.prototype={ +D(){return"PointerDeviceKind."+this.b}} +A.CQ.prototype={ +D(){return"PointerSignalKind."+this.b}} +A.lX.prototype={ +rW(a){var s=this.p4 +if(s!=null)s.$1$allowPlatformDefault(a)}, +j(a){return"PointerData(viewId: "+this.a+", x: "+A.c(this.x)+", y: "+A.c(this.y)+")"}} +A.qx.prototype={} +A.eI.prototype={ +j(a){return"SemanticsAction."+this.b}} +A.eb.prototype={ +j(a){return"SemanticsFlag."+this.b}} +A.aRc.prototype={} +A.ul.prototype={ +D(){return"PlaceholderAlignment."+this.b}} +A.lL.prototype={ +j(a){var s=B.aeA.h(0,this.a) +s.toString +return s}, +gk(a){return this.b}} +A.oj.prototype={ +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.oj&&b.a===this.a&&b.b===this.b}, +gB(a){return A.a4(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"FontVariation('"+this.a+"', "+A.c(this.b)+")"}, +gk(a){return this.b}} +A.q2.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.q2&&s.a.l(0,b.a)&&s.b.l(0,b.b)&&s.c===b.c}, +gB(a){return A.a4(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"Glyph("+this.a.j(0)+", textRange: "+this.b.j(0)+", direction: "+this.c.j(0)+")"}} +A.r3.prototype={ +D(){return"TextAlign."+this.b}} +A.uV.prototype={ +D(){return"TextBaseline."+this.b}} +A.r4.prototype={ +p(a,b){var s=this.a +return(s|b.a)===s}, +l(a,b){if(b==null)return!1 +return b instanceof A.r4&&b.a===this.a}, +gB(a){return B.e.gB(this.a)}, +j(a){var s,r=this.a +if(r===0)return"TextDecoration.none" +s=A.a([],t.s) +if((r&1)!==0)s.push("underline") +if((r&2)!==0)s.push("overline") +if((r&4)!==0)s.push("lineThrough") +if(s.length===1)return"TextDecoration."+s[0] +return"TextDecoration.combine(["+B.b.bJ(s,", ")+"])"}} +A.uW.prototype={ +D(){return"TextDecorationStyle."+this.b}} +A.a9u.prototype={ +D(){return"TextLeadingDistribution."+this.b}} +A.OQ.prototype={ +l(a,b){var s +if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +s=!1 +if(b instanceof A.OQ)s=b.c===this.c +return s}, +gB(a){return A.a4(!0,!0,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"TextHeightBehavior(applyHeightToFirstAscent: true, applyHeightToLastDescent: true, leadingDistribution: "+this.c.j(0)+")"}} +A.oX.prototype={ +D(){return"TextDirection."+this.b}} +A.hO.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.hO&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.e===s.e}, +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this +return"TextBox.fromLTRBD("+B.d.aF(s.a,1)+", "+B.d.aF(s.b,1)+", "+B.d.aF(s.c,1)+", "+B.d.aF(s.d,1)+", "+s.e.j(0)+")"}} +A.a9i.prototype={ +D(){return"TextAffinity."+this.b}} +A.b_.prototype={ +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.b_&&b.a===this.a&&b.b===this.b}, +gB(a){return A.a4(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return A.K(this).j(0)+"(offset: "+this.a+", affinity: "+this.b.j(0)+")"}} +A.cW.prototype={ +gce(){return this.a>=0&&this.b>=0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.cW&&b.a===this.a&&b.b===this.b}, +gB(a){return A.a4(B.e.gB(this.a),B.e.gB(this.b),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"TextRange(start: "+this.a+", end: "+this.b+")"}} +A.ug.prototype={ +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.ug&&b.a===this.a}, +gB(a){return B.d.gB(this.a)}, +j(a){return A.K(this).j(0)+"(width: "+A.c(this.a)+")"}} +A.X1.prototype={ +D(){return"BoxHeightStyle."+this.b}} +A.aqJ.prototype={ +D(){return"BoxWidthStyle."+this.b}} +A.yV.prototype={ +D(){return"TileMode."+this.b}} +A.aw1.prototype={} +A.X5.prototype={ +D(){return"Brightness."+this.b}} +A.arA.prototype={ +l(a,b){if(b==null)return!1 +return this===b}, +gB(a){return A.O.prototype.gB.call(this,0)}} +A.a0y.prototype={ +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.a0y}, +gB(a){return A.a4(null,null,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"GestureSettings(physicalTouchSlop: null, physicalDoubleTapSlop: null)"}} +A.aq1.prototype={ +F4(a){var s,r,q +if(A.f1(a).gae0())return A.rB(B.qk,a,B.a5,!1) +s=this.b +if(s==null){s=self.window.document.querySelector("meta[name=assetBase]") +r=s==null?null:s.content +s=r==null +if(!s)self.window.console.warn("The `assetBase` meta tag is now deprecated.\nUse engineInitializer.initializeEngine(config) instead.\nSee: https://docs.flutter.dev/development/platform-integration/web/initialization") +q=this.b=s?"":r +s=q}return A.rB(B.qk,s+"assets/"+a,B.a5,!1)}} +A.Ho.prototype={ +D(){return"BrowserEngine."+this.b}} +A.qq.prototype={ +D(){return"OperatingSystem."+this.b}} +A.aqN.prototype={ +gJi(){var s=this.b +if(s===$){s=self.window.navigator.userAgent +this.b!==$&&A.aH() +this.b=s}return s}, +ge4(){var s,r,q,p=this,o=p.d +if(o===$){s=self.window.navigator.vendor +r=p.gJi() +q=p.D2(s,r.toLowerCase()) +p.d!==$&&A.aH() +p.d=q +o=q}s=o +return s}, +D2(a,b){if(a==="Google Inc.")return B.fU +else if(a==="Apple Computer, Inc.")return B.aL +else if(B.c.p(b,"Edg/"))return B.fU +else if(a===""&&B.c.p(b,"firefox"))return B.dG +A.dJ("WARNING: failed to detect current browser engine. Assuming this is a Chromium-compatible browser.") +return B.fU}, +gf9(){var s,r,q=this,p=q.f +if(p===$){s=q.aRD() +q.f!==$&&A.aH() +q.f=s +p=s}r=p +return r}, +aRD(){var s,r,q=null,p=self.window +p=p.navigator.platform +if(p==null)p=q +p.toString +s=p +if(B.c.ba(s,"Mac")){p=self.window +p=p.navigator.maxTouchPoints +if(p==null)p=q +p=p==null?q:B.d.aA(p) +r=p +if((r==null?0:r)>2)return B.bM +return B.dr}else if(B.c.p(s.toLowerCase(),"iphone")||B.c.p(s.toLowerCase(),"ipad")||B.c.p(s.toLowerCase(),"ipod"))return B.bM +else{p=this.gJi() +if(B.c.p(p,"Android"))return B.n6 +else if(B.c.ba(s,"Linux"))return B.rg +else if(B.c.ba(s,"Win"))return B.Js +else return B.aju}}} +A.bis.prototype={ +$1(a){return this.aiA(a)}, +$0(){return this.$1(null)}, +$C:"$1", +$R:0, +$D(){return[null]}, +aiA(a){var s=0,r=A.n(t.H) +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=2 +return A.f(A.bjo(a),$async$$1) +case 2:return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:768} +A.bit.prototype={ +$0(){var s=0,r=A.n(t.H),q=this +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:q.a.$0() +s=2 +return A.f(A.bpx(),$async$$0) +case 2:q.b.$0() +return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.ar4.prototype={ +Z1(a){return $.bz1.cP(0,a,new A.ar5(a))}} +A.ar5.prototype={ +$0(){return A.d6(this.a)}, +$S:251} +A.aB2.prototype={ +Uy(a){var s=new A.aB5(a) +A.eg(self.window,"popstate",B.uO.Z1(s),null) +return new A.aB4(this,s)}, +ajx(){var s=self.window.location.hash +if(s.length===0||s==="#")return"/" +return B.c.bE(s,1)}, +Z9(a){return A.bsB(self.window.history)}, +afO(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}, +ag1(a,b,c,d){var s=this.afO(d),r=self.window.history,q=A.b8(b) +if(q==null)q=t.K.a(q) +r.pushState(q,c,s)}, +vH(a,b,c,d){var s,r=this.afO(d),q=self.window.history +if(b==null)s=null +else{s=A.b8(b) +if(s==null)s=t.K.a(s)}q.replaceState(s,c,r)}, +Fz(a,b){var s=self.window.history +s.go(b) +return this.aNk()}, +aNk(){var s=new A.a_($.ab,t.U),r=A.bu("unsubscribe") +r.b=this.Uy(new A.aB3(r,new A.aq(s,t.h))) +return s}} +A.aB5.prototype={ +$1(a){var s=t.B.a(a).state +if(s==null)s=null +else{s=A.bpj(s) +s.toString}this.a.$1(s)}, +$S:372} +A.aB4.prototype={ +$0(){var s=this.b +A.hA(self.window,"popstate",B.uO.Z1(s),null) +$.bz1.C(0,s) +return null}, +$S:0} +A.aB3.prototype={ +$1(a){this.a.b2().$0() +this.b.d8(0)}, +$S:14} +A.WE.prototype={ +gt(a){return a.length}} +A.H4.prototype={ +L(a){var s=a.close() +s.toString +return A.jc(s,t.z)}} +A.WF.prototype={ +gk(a){return a.value}} +A.WG.prototype={ +hO(a,b){return B.b.fQ(this.gaJ(a),new A.aq5(b))}, +N(a,b){return A.mp(a.get(b))!=null}, +h(a,b){return A.mp(a.get(b))}, +az(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.mp(s.value[1]))}}, +gd1(a){var s=A.a([],t.s) +this.az(a,new A.aq6(s)) +return s}, +gaJ(a){var s=A.a([],t.n4) +this.az(a,new A.aq7(s)) +return s}, +gt(a){var s=a.size +s.toString +return s}, +ga_(a){var s=a.size +s.toString +return s===0}, +gbC(a){var s=a.size +s.toString +return s!==0}, +n(a,b,c){throw A.d(A.ag("Not supported"))}, +cP(a,b,c){throw A.d(A.ag("Not supported"))}, +C(a,b){throw A.d(A.ag("Not supported"))}, +V(a){throw A.d(A.ag("Not supported"))}, +$iao:1} +A.aq5.prototype={ +$1(a){return!1}, +$S:125} +A.aq6.prototype={ +$2(a,b){return this.a.push(a)}, +$S:33} +A.aq7.prototype={ +$2(a,b){return this.a.push(b)}, +$S:33} +A.WH.prototype={ +gt(a){return a.length}} +A.Hd.prototype={} +A.a59.prototype={ +gt(a){return a.length}} +A.acZ.prototype={} +A.ty.prototype={ +aqL(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){}, +wg(a,b){return this.al3(0,b,this.$ti.i("1?"))}, +al3(a,b,c){var s=0,r=A.n(c),q,p=this,o,n +var $async$wg=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:o=p.$ti +n=o.i("tz<1?>").a(A.bIK(p,B.alo,o.c)) +p.y2=n +s=3 +return A.f(A.bU(b,!1).nh(o.i("dj<1>").a(n)),$async$wg) +case 3:q=e +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$wg,r)}, +a0(){return new A.Rs(null,null,this.$ti.i("Rs<1?>"))}} +A.Rs.prototype={ +aj(){var s,r,q=this +q.aw() +q.w=new A.bG(null,t.A) +q.ay=new A.aq(new A.a_($.ab,t.ET),t.x6) +q.a.toString +q.Q=!1 +q.as=16 +q.auI() +q.a.toString +s=A.a0j(!0,null,!1) +q.at=s +r=q.c +r.toString +q.ax=s.aI(r)}, +m(){var s=this,r=s.y +if(r!=null)r.m() +s.a.toString +r=s.ax +r===$&&A.b() +r.aB(0) +s.at.m() +s.apZ()}, +auI(){$.cp.p2$.push(new A.b4h(this))}, +F(a){var s=null +this.a.toString +return new A.fh(B.O,s,1,A.fI(B.T,!0,s,A.fn(s,this.ayB(),B.S,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,new A.b4j(this),s,s,s,s,s,s,!1,B.aV),B.h,B.t,0,s,s,s,s,s,B.bL),s)}, +ayB(){var s,r=this,q=null,p=r.a,o=r.w +p=p.Q +s=A.aa(q,A.b2(A.a([r.ati(),A.bt(r.ay9(),B.l,B.o,B.k)],t.p),B.l,B.o,B.aE,B.r),B.h,q,q,new A.bb(p,q,q,q,q,q,q,B.E),q,q,o,q,q,q,q,q) +p=r.ay +p===$&&A.b() +return A.cq(B.a2,A.a([A.bJ0(new A.b4i(r),p.a,t.FW),s],t.p),B.w,B.W,q)}, +ati(){this.a.toString +return B.ez}, +ay9(){var s,r,q,p,o,n=this +n.a.toString +s=n.at4() +r=n.Q +r===$&&A.b() +if(r){n.a.toString +r=new A.be(new A.al(16,16,16,0),n.az2(),null)}else r=B.ez +q=n.as +q===$&&A.b() +n.a.toString +p=n.aym() +o=t.p +return A.a([s,A.cf(A.b2(A.a([r,new A.be(new A.al(16,q,16,16),p,null)],o),B.cv,B.o,B.aE,B.r),1)],o)}, +at4(){this.a.toString +return B.ez}, +az2(){var s,r=null +this.a.toString +s=A.X("",r,r,r,r,A.cb(r,r,B.n,r,r,r,r,r,r,r,r,16,r,r,B.cZ,r,r,!0,r,r,r,r,r,r,r,r),r,r) +return s}, +aym(){var s=null,r=this.a,q=r.r +r=r.x +return A.X(q,s,s,s,s,A.cb(s,s,r,s,s,s,s,s,s,s,s,14,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),s,s)}} +A.b4h.prototype={ +$1(a){var s,r,q=this.a,p=q.w +p.toString +s=$.aw.aR$.x.h(0,p) +if(s!=null){r=t.x.a(s.gag()) +q=q.ay +q===$&&A.b() +q.bv(0,r.gv(0))}}, +$S:3} +A.b4j.prototype={ +$0(){this.a.a.toString +return null}, +$S:0} +A.b4i.prototype={ +$2(a,b){if(b.b!=null){this.a.a.toString +return B.ez}return B.ez}, +$S:601} +A.a0h.prototype={ +D(){return"FlushbarPosition."+this.b}} +A.azu.prototype={ +D(){return"FlushbarStyle."+this.b}} +A.azn.prototype={ +D(){return"FlushbarDismissDirection."+this.b}} +A.Bl.prototype={ +D(){return"FlushbarStatus."+this.b}} +A.Ge.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.tz.prototype={ +auH(a){var s=this +switch(s.Q.ok.a){case 0:s.CW=B.Qp +s.cx=B.eG +break +case 1:s.CW=B.Qo +s.cx=B.oj +break}}, +lM(){return A.c7(B.jO,t.oj)}, +ac4(){var s={},r=A.a([],t.wi),q=this.ayu(this.as) +s.a=q +s.a=A.Dj(!0,q,B.Z,!0) +r.push(A.n6(new A.azs(s,this),!1,!1,!1)) +return r}, +ayu(a){var s=this,r=null,q=s.ayt(),p=s.fr +return A.bsk(B.aU,A.aa(r,s.as,B.h,r,r,r,r,r,r,B.Z,r,r,r,r),new A.azp(s),q,new A.eK(p,t.kK),new A.azq(s),r)}, +ayt(){if(this.Q.ok===B.xo)return B.wF +else return B.pt}, +gWh(){var s=this.fy.Q +s===$&&A.b() +return s===B.a9}, +aQS(){return null}, +aQV(){return null}, +axM(a){var s,r=this +switch(a.a){case 3:r.dy=B.a0E +s=r.f +if(s.length!==0)B.b.gW(s).soe(!1) +break +case 1:r.dy=B.xp +break +case 2:r.dy=B.xq +s=r.f +if(s.length!==0)B.b.gW(s).soe(!1) +break +case 0:r.dy=B.a0F +if(!r.gkb()){r.a.Wg(r) +s=r.f +if(s.length!==0)B.b.V(s)}break}}, +pK(){var s,r=this,q=A.K(r).j(0),p=r.a +p.toString +r.fy=A.c2(q,B.bK,null,null,p) +r.ay=r.aQS() +r.ch=r.aQV() +p=r.CW +q=r.cx +s=r.fy +s.toString +r.fx=new A.bf(A.cl(B.iQ,s,B.iQ),new A.GI(p,q),t.kt.i("bf")) +r.a_z()}, +ra(){var s=this +s.fx.a.fG(s.ga3h()) +s.auJ() +s.a_U() +return s.fy.cd(0)}, +KC(a){var s,r,q=this +if(a instanceof A.tz){s=q.fy +s.toString +r=a.fy.x +r===$&&A.b() +s.sk(0,r)}q.fx.a.fG(q.ga3h()) +q.a_V(a)}, +r9(a){var s=this +s.dx=a +s.a3g() +if(s.cy){A.bZ(B.T,new A.azt(s)) +s.cy=!1}else s.fy.dq(0) +s.a_x(a) +return!0}, +auJ(){var s=this,r=s.db +if(r!=null&&r.b!=null)r.S(0) +s.db=A.bZ(s.Q.cy,new A.azo(s))}, +a3g(){var s=this.db +if(s!=null&&s.b!=null)s.S(0)}, +m(){var s=this,r=s.fy +if(r!=null)r.m() +s.at.bv(0,s.dx) +r=s.db +if(r!=null)r.S(0) +s.a_y()}, +j(a){return A.K(this).j(0)+"(animation: "+A.c(this.fy)+")"}} +A.azr.prototype={ +$1(a){return this.a}, +$S:826} +A.azs.prototype={ +$1(a){var s,r=null,q=this.b.fx +q.toString +s=this.a.a +return new A.ck(A.cJ(r,r,r,r,r,r,r,r,r,r,r,r,r,!1,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r),!0,!0,!1,!1,new A.W9(s,q,r),r)}, +$S:13} +A.azp.prototype={ +$1(a){var s=this.a.dy +if(s===B.xp||s===B.xq)return A.c7(!1,t.X7) +return A.c7(!0,t.X7)}, +$S:351} +A.azq.prototype={ +$1(a){var s,r,q=this.a +q.fr+="1" +q.a3g() +q.cy=!0 +s=q.gkb() +r=q.a +if(s)r.cV() +else r.Nj(q)}, +$S:189} +A.azt.prototype={ +$0(){var s=this.a.fy +s.sk(0,s.a)}, +$S:0} +A.azo.prototype={ +$0(){var s=this.a +if(s.gkb())s.a.cV() +else if(s.gDO())s.a.Nj(s)}, +$S:0} +A.Hu.prototype={ +gk(a){var s=this.a.a +s=s==null?null:s.a +return s==null?new A.a_($.ab,this.$ti.i("a_<1>")):s}, +NB(a,b){var s=t.z +return this.b06(new A.arK(this,a,s),null,null,!0,s)}, +NA(a){return this.NB(a,null,t.z)}, +b06(a,b,c,d,e){var s,r=this,q=A.bro(r.gJX(r),e),p=r.a,o=p.a +if(o!=null){o=o.a +s=c==null?q.gxV():new A.arH(q,c) +o.cv(new A.arI(r,q,a),s,t.H)}p=p.b +if(p!=null){p=p.a +p.fC(b==null?q.gatJ():new A.arJ(q,b))}return q.gafw()}, +S(a){return this.a.PY()}} +A.arK.prototype={ +$2(a,b){b.bv(0,this.b.$1(a))}, +$S(){return this.a.$ti.aH(this.c).i("aF(2,Aj<1>)")}} +A.arI.prototype={ +$1(a){return this.ai5(a)}, +ai5(a){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$$1=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:i=n.b +if(i.a==null){s=1 +break}p=4 +k=n.c.$2(a,i) +s=7 +return A.f(t.uz.b(k)?k:A.en(k,t.H),$async$$1) +case 7:p=2 +s=6 +break +case 4:p=3 +h=o +m=A.v(h) +l=A.aT(h) +i.dh(m,l) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$$1,r)}, +$S(){return this.a.$ti.i("a2<~>(1)")}} +A.arH.prototype={ +$2(a,b){return this.ai6(a,b)}, +ai6(a,b){var s=0,r=A.n(t.P),q,p=2,o,n=this,m,l,k,j,i,h +var $async$$2=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:i=n.a +if(i.a==null){s=1 +break}p=4 +k=n.b.$3(a,b,i) +s=7 +return A.f(t.uz.b(k)?k:A.en(k,t.H),$async$$2) +case 7:p=2 +s=6 +break +case 4:p=3 +h=o +m=A.v(h) +l=A.aT(h) +k=a===m?b:l +i.dh(m,k) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$$2,r)}, +$S:382} +A.arJ.prototype={ +$0(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$$0=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:i=n.a +if(i.a==null){s=1 +break}p=4 +k=n.b.$1(i) +s=7 +return A.f(t.uz.b(k)?k:A.en(k,t.H),$async$$0) +case 7:p=2 +s=6 +break +case 4:p=3 +h=o +m=A.v(h) +l=A.aT(h) +i.dh(m,l) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.Aj.prototype={ +gafw(){var s=this,r=s.e +if(r===$){r!==$&&A.aH() +r=s.e=new A.Hu(s,s.$ti.i("Hu<1>"))}return r}, +bv(a,b){var s,r=this +if(!r.d)throw A.d(A.a1("Operation already completed")) +r.d=!1 +s=r.$ti +if(!s.i("a2<1>").b(b)){s=r.GR() +if(s!=null)s.bv(0,b) +return}if(r.a==null){if(s.i("a_<1>").b(b))b.aDd() +else b.cv(A.bzp(),A.bzp(),t.H) +return}b.cv(new A.arF(r),new A.arG(r),t.P)}, +GR(){var s=this.a +if(s==null)return null +this.b=null +return s}, +dh(a,b){var s +if(!this.d)throw A.d(A.a1("Operation already completed")) +this.d=!1 +s=this.GR() +if(s!=null)s.dh(a,b)}, +dF(a){return this.dh(a,null)}, +PY(){var s,r=this,q=r.b +if(q==null)return A.c7(null,t.H) +if(r.a!=null){r.a=null +s=r.c +q.bv(0,s==null?null:A.bJ2(s,t.H))}return q.a}} +A.arF.prototype={ +$1(a){var s=this.a.GR() +if(s!=null)s.bv(0,a)}, +$S(){return this.a.$ti.i("aF(1)")}} +A.arG.prototype={ +$2(a,b){var s=this.a.GR() +if(s!=null)s.dh(a,b)}, +$S:25} +A.Ht.prototype={ +F(a){var s=this,r=null,q=r,p=A.bny(r,r,s.c) +return new A.LM(p,r,q,s.gaFr(),s.gaFp(),B.F,s.Q,B.eN,s.at,B.ea,s.ay,s.ch,s.CW,B.O,B.dj,!1,s.fr,r,B.xk,!1,r)}, +aFs(a,b){var s,r +if(b!=null){s=b.b +r=b.a}else{s=null +r=0}return this.x.$3(a,this.e,new A.pI(s,r))}, +aFq(a,b,c){return this.y.$3(a,this.e,b)}} +A.tc.prototype={ +vq(a){return new A.cv(this,t.FB)}, +vn(a,b){var s=null,r=A.i9(s,s,s,s,!1,t.oA),q=A.buv(new A.cA(r,A.y(r).i("cA<1>")),this.aEm(a,r,b),new A.aru(this,a),a.d) +return q}, +aEm(a,b,c){var s=this,r=$.bpQ() +return new A.a15().aWG(s.b,s.c,b,c,r,s.r,s.w,s.f,s.x,new A.ars(a))}, +rJ(a,b){var s=null,r=A.i9(s,s,s,s,!1,t.oA),q=A.buv(new A.cA(r,A.y(r).i("cA<1>")),this.aEr(a,r,b),new A.arv(this,a),a.d) +return q}, +aEr(a,b,c){var s=this,r=$.bpQ() +return new A.a15().aWI(s.b,s.c,b,c,r,s.r,s.w,s.f,s.x,new A.art(a))}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.tc){s=b.b +if(this.b===s)s=this.d===b.d +else s=!1 +return s}return!1}, +gB(a){var s=this +return A.a4(s.b,s.d,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,B.a,B.a,B.a,B.a)}, +j(a){return'CachedNetworkImageProvider("'+this.b+'", scale: '+this.d+")"}} +A.aru.prototype={ +$0(){var s=null +return A.a([A.k2("Image provider",this.a,!0,B.bU,s,s,s,B.bp,!1,!0,!0,B.eP,s),A.k2("Image key",this.b,!0,B.bU,s,s,s,B.bp,!1,!0,!0,B.eP,s)],t.E)}, +$S:35} +A.ars.prototype={ +$0(){var s=$.ix.py$ +s===$&&A.b() +return s.VZ(this.a)}, +$S:0} +A.arv.prototype={ +$0(){var s=null +return A.a([A.k2("Image provider",this.a,!0,B.bU,s,s,s,B.bp,!1,!0,!0,B.eP,s),A.k2("Image key",this.b,!0,B.bU,s,s,s,B.bp,!1,!0,!0,B.eP,s)],t.E)}, +$S:35} +A.art.prototype={ +$0(){var s=$.ix.py$ +s===$&&A.b() +return s.VZ(this.a)}, +$S:0} +A.a4L.prototype={ +aqU(a,b,c,d){var s=this +b.M1(new A.aJX(s),new A.aJY(s,c)) +s.cy=a.M1(s.gagB(),new A.aJZ(s,c))}, +aFb(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.a5N(new A.fY(s.glE(s),q.as,null)) +q.ay=a +s=q.ax +q.ch=s.gKS(s) +q.ax=null +if(B.e.an(q.CW,q.z.gyP())===0?q.Q!=null:p){q.CW=0 +q.cx=null +p=q.Q +p.toString +q.z=p +if(o.length!==0)q.tY() +q.Q=null}else{r=B.e.im(q.CW,q.z.gyP()) +if(q.z.gNm()===-1||r<=q.z.gNm())q.tY()}return}s.toString +q.cx=A.bZ(new A.bj(B.e.aa(s.a-(a.a-q.ay.a))),q.gaFc())}, +tY(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$tY=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.f(n.z.vY(),$async$tY) +case 7:n.ax=b +p=2 +s=6 +break +case 4:p=3 +i=o +m=A.v(i) +l=A.aT(i) +n.q2(A.c3("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.gyP()===1){if(n.a.length===0){s=1 +break}j=n.ax +n.a5N(new A.fY(j.glE(j),n.as,null)) +s=1 +break}n.a5O() +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$tY,r)}, +a5O(){if(this.db)return +this.db=!0 +$.cp.zT(this.gaFa())}, +a5N(a){this.OK(a);++this.CW}, +a4(a,b){var s=this +s.dx=!0 +if(s.a.length===0&&s.z!=null)s.tY() +s.a_d(0,b)}, +K(a,b){var s,r=this +r.a_e(0,b) +if(r.a.length===0){s=r.cx +if(s!=null)s.S(0) +r.cx=null +r.a0p()}}, +yY(){var s=this.amy();++this.fr +return new A.bab(this,s)}, +a0p(){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.jA(null) +s=r.cy +if(s!=null)s.S(0) +r.cy=null}} +A.aJX.prototype={ +$1(a){var s=this.a +if(s.cx!=null)s.Q=a +else{s.z=a +if(s.a.length!==0)s.tY()}}, +$S:190} +A.aJY.prototype={ +$2(a,b){this.a.q2(A.c3("resolving an image codec"),a,this.b,!0,b)}, +$S:25} +A.aJZ.prototype={ +$2(a,b){this.a.q2(A.c3("loading an image"),a,this.b,!0,b)}, +$S:25} +A.bab.prototype={ +m(){this.b.m() +var s=this.a;--s.fr +s.a0p() +this.a=null}} +A.aCu.prototype={ +D(){return"ImageRenderMethodForWeb."+this.b}} +A.TJ.prototype={ +D(){return"_State."+this.b}} +A.a15.prototype={ +aWG(a,b,c,d,e,f,g,h,i,j){return this.a1c(a,b,c,new A.aCm(d),e,f,g,h,i,j)}, +aWI(a,b,c,d,e,f,g,h,i,j){return this.a1c(a,b,c,new A.aCn(d),e,f,g,h,i,j)}, +a1c(a,b,c,d,e,f,g,h,i,j){var s +switch(i.a){case 1:return this.aEl(a,b,c,d,e,f,g,h,j) +case 0:s=this.aEk(a,c) +return A.bNW(s,s.$ti.c)}}, +aEl(a,b,c,d,e,f,g,h,i){var s,r,q,p,o,n=null,m={},l=A.i9(n,n,n,n,!1,t.hP) +try{p=A.i9(n,n,n,n,!1,t.cL) +e.u3(p,a,a,h,!0) +s=new A.cA(p,A.y(p).i("cA<1>")) +m.a=B.ui +s.aK(new A.aCi(m,c,d,l),!0,new A.aCj(m,l,c),new A.aCk(i,l))}catch(o){r=A.v(o) +q=A.aT(o) +A.ff(new A.aCl(i)) +l.cX(r,q)}m=l +return new A.cA(m,A.y(m).i("cA<1>"))}, +aEk(a,b){var s=A.lj().Z(a) +return $.ap().LM(s,new A.aCe(b))}} +A.aCm.prototype={ +$1(a){return this.aia(a)}, +aia(a){var s=0,r=A.n(t.hP),q,p=this,o +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.f(A.tG(a),$async$$1) +case 3:q=o.$1(c) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:161} +A.aCn.prototype={ +$1(a){return this.aib(a)}, +aib(a){var s=0,r=A.n(t.hP),q,p=this,o +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=p.a +s=3 +return A.f(A.tG(a),$async$$1) +case 3:q=o.$1(c) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:161} +A.aCi.prototype={ +$1(a){var s,r=this +if(a instanceof A.pI)r.b.q(0,new A.iP(a.c,a.b)) +if(a instanceof A.tx){s=r.a +if(s.a===B.ui)s.a=B.Q6 +a.b.zg().ak(new A.aCg(r.c),t.hP).ak(new A.aCh(s,r.d,r.b),t.P)}}, +$S:519} +A.aCg.prototype={ +$1(a){return this.a.$1(a)}, +$S:161} +A.aCh.prototype={ +$1(a){var s=this.b +s.q(0,a) +if(this.a.a===B.Q7){s.L(0) +this.c.L(0)}}, +$S:558} +A.aCk.prototype={ +$2(a,b){A.ff(new A.aCf(this.a)) +this.b.cX(a,b)}, +$S:60} +A.aCf.prototype={ +$0(){this.a.$0()}, +$S:0} +A.aCj.prototype={ +$0(){var s=0,r=A.n(t.H),q=this,p,o +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=q.a +o=p.a +if(o===B.ui){q.b.L(0) +q.c.L(0)}else if(o===B.Q6)p.a=B.Q7 +return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.aCl.prototype={ +$0(){this.a.$0()}, +$S:0} +A.aCe.prototype={ +$2(a,b){this.a.q(0,new A.iP(a,b))}, +$S:97} +A.ev.prototype={ +gav(a){return new A.le(this.a,0,0)}, +gW(a){var s=this.a,r=s.length +return r===0?A.V(A.a1("No element")):B.c.R(s,0,new A.lC(s,r,0,176).kW())}, +gY(a){var s=this.a,r=s.length +return r===0?A.V(A.a1("No element")):B.c.bE(s,new A.H7(s,0,r,176).kW())}, +ga_(a){return this.a.length===0}, +gbC(a){return this.a.length!==0}, +gt(a){var s,r,q=this.a,p=q.length +if(p===0)return 0 +s=new A.lC(q,p,0,176) +for(r=0;s.kW()>=0;)++r +return r}, +F0(a,b){if(b.i("B<0>").b(this))return A.n_(this,new A.aSW(b),A.y(this).i("B.E"),b) +return new A.jk(b.i("jk<0>"))}, +bJ(a,b){var s +if(b==="")return this.a +s=this.a +return A.byD(s,0,s.length,b,"")}, +c2(a,b){var s,r,q,p,o,n +A.eu(b,"index") +s=this.a +r=s.length +q=0 +if(r!==0){p=new A.lC(s,r,0,176) +for(o=0;n=p.kW(),n>=0;o=n){if(q===b)return B.c.R(s,o,n);++q}}throw A.d(A.a18(b,this,"index",null,q))}, +p(a,b){var s +if(typeof b!="string")return!1 +s=b.length +if(s===0)return!1 +if(new A.lC(b,s,0,176).kW()!==s)return!1 +s=this.a +return A.aop(s,b,0,s.length)>=0}, +No(a,b,c){var s=this.a +s=new A.le(s,0,s.length).No(0,b,c) +if(s==null)s=null +else{s=s.a +s=s.length===0?B.bN:new A.ev(s)}return s==null?this:s}, +hI(a,b,c){var s=this.a +s=new A.le(s,0,s.length).hI(0,b,c) +if(s==null)s=null +else{s=s.a +s=s.length===0?B.bN:new A.ev(s)}return s==null?this:s}, +ku(a,b){return new A.ig(this.alv(0,b),t.JD)}, +alv(a,b){var s=this +return function(){var r=a,q=b +var p=0,o=2,n,m,l,k,j,i,h,g +return function $async$ku(c,d,e){if(d===1){n=e +p=o}while(true)switch(p){case 0:h=s.a +g=h.length +p=g===0?3:4 +break +case 3:p=5 +return c.b=s,1 +case 5:p=1 +break +case 4:m=q.gAc() +p=m.gbC(m)?6:8 +break +case 6:l=0 +k=0 +case 9:j=A.aop(h,m,k,g) +if(j<0){p=11 +break}p=12 +return c.b=new A.ev(B.c.R(h,k,j)),1 +case 12:k=B.e.ab(j,m.gt(m));--l +case 10:if(l!==1){p=9 +break}case 11:p=7 +break +case 8:i=new A.lC(h,g,0,176) +l=0 +k=0 +case 13:j=i.kW() +if(j<0){p=1 +break}p=16 +return c.b=new A.ev(B.c.R(h,k,j)),1 +case 16:--l +if(l!==1){k=j +p=14 +break}else{p=15 +break}case 14:if(!0){p=13 +break}case 15:if(j===g){p=1 +break}k=j +case 7:p=17 +return c.b=new A.ev(B.c.bE(h,k)),1 +case 17:case 1:return 0 +case 2:return c.c=n,3}}}}, +a84(a,b,c){var s,r +if(a===0||b===this.a.length)return b +s=this.a +c=new A.lC(s,s.length,b,176) +do{r=c.kW() +if(r<0)break +if(--a,a>0){b=r +continue}else{b=r +break}}while(!0) +return b}, +kt(a,b){A.eu(b,"count") +return this.aKK(b)}, +aKK(a){var s=this.a84(a,0,null),r=this.a +if(s===r.length)return B.bN +return new A.ev(B.c.bE(r,s))}, +lL(a,b){A.eu(b,"count") +return this.aLy(b)}, +aLy(a){var s=this.a84(a,0,null),r=this.a +if(s===r.length)return this +return new A.ev(B.c.R(r,0,s))}, +km(a,b){var s=this.P9(0,b).rH(0) +if(s.length===0)return B.bN +return new A.ev(s)}, +ab(a,b){return new A.ev(this.a+b.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.ev&&this.a===b.a}, +gB(a){return B.c.gB(this.a)}, +j(a){return this.a}, +$ibl0:1} +A.aSW.prototype={ +$1(a){return a}, +$S(){return this.a.i("0(0)")}} +A.le.prototype={ +gI(a){var s=this,r=s.d +return r==null?s.d=B.c.R(s.a,s.b,s.c):r}, +u(){return this.GD(1,this.c)}, +GD(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.kW() +if(q<0)break;--a}p.b=s +p.c=b +p.d=null +return a===0}, +ga_(a){return this.b===this.c}, +gbC(a){return this.b!==this.c}, +hI(a,b,c){var s,r,q=this,p=b.gAc(),o=c.gAc(),n=p.ga_(p),m=q.a,l=q.b +if(n)s=B.c.lK(m,l,l,o) +else{r=A.aop(m,p,l,q.c) +if(r>=0)s=B.c.lK(m,r,B.e.ab(r,p.gt(p)),o) +else return null}n=q.c +return A.aSV(s,q.b,s.length-m.length+n)}, +No(a,b,c){var s,r,q,p,o,n,m,l=this,k=b.gAc(),j=c.gAc() +if(k.ga_(k)){s=l.a +r=A.byD(s,l.b,l.c,j,j) +q=l.c +return A.aSV(r,l.b,r.length-(s.length-q))}p=l.b +if(p===l.c)return null +for(s=l.a,o=0,n=null;p=A.aop(s,k,p,l.c),p>=0;o=p){if(n==null){n=new A.cD("") +q=n}else q=n +q.a+=B.c.R(s,o,p) +m=A.c(j) +q.a+=m +p=B.e.ab(p,k.gt(k))}if(n==null)return null +q=B.c.bE(s,o) +q=n.a+=q +r=q.charCodeAt(0)==0?q:q +q=l.c +return A.aSV(r,l.b,r.length-(s.length-q))}, +ku(a,b){return new A.ig(this.alu(0,b),t.NQ)}, +alu(a,b){var s=this +return function(){var r=a,q=b +var p=0,o=2,n,m,l,k,j,i,h,g +return function $async$ku(c,d,e){if(d===1){n=e +p=o}while(true)switch(p){case 0:h=s.b +g=s.c +p=h===g?3:4 +break +case 3:p=5 +return c.b=s,1 +case 5:p=1 +break +case 4:m=q.gAc() +l=s.b +h=s.a +p=m.gbC(m)?6:8 +break +case 6:k=0 +case 9:j=A.aop(h,m,l,s.c) +if(j<0){p=11 +break}p=12 +return c.b=new A.le(h,l,j),1 +case 12:l=B.e.ab(j,m.gt(m));--k +case 10:if(k!==1){p=9 +break}case 11:p=13 +return c.b=new A.le(h,l,s.c),1 +case 13:p=7 +break +case 8:g=s.b +i=new A.lC(h,s.c,g,176) +k=0 +case 14:j=i.kW() +if(j<0){p=1 +break}p=17 +return c.b=new A.le(h,l,j),1 +case 17:--k +if(k!==1){l=j +p=15 +break}else{p=16 +break}case 15:if(!0){p=14 +break}case 16:g=s.c +p=js;){p=k.c=q-1 +o=r.charCodeAt(p) +if((o&64512)!==56320){p=k.d=j.charCodeAt(k.d&240|A.zR(o)) +if(((p>=208?k.d=A.bjy(r,s,k.c,p):p)&1)===0)return q +continue}n=2 +if(p>=s){m=r.charCodeAt(p-1) +if((m&64512)===55296){n=A.pk(m,o) +p=--k.c}}l=k.d=j.charCodeAt(k.d&240|n) +if(((l>=208?k.d=A.bjy(r,s,p,l):l)&1)===0)return q}p=k.d=j.charCodeAt(k.d&240|15) +if(((p>=208?k.d=A.bjy(r,s,q,p):p)&1)===0)return k.c +return-1}} +A.Xs.prototype={} +A.cP.prototype={ +h(a,b){var s,r=this +if(!r.HX(b))return null +s=r.c.h(0,r.a.$1(r.$ti.i("cP.K").a(b))) +return s==null?null:s.b}, +n(a,b,c){var s=this +if(!s.HX(b))return +s.c.n(0,s.a.$1(b),new A.aO(b,c,s.$ti.i("aO")))}, +G(a,b){b.az(0,new A.arL(this))}, +mW(a,b,c){var s=this.c +return s.mW(s,b,c)}, +V(a){this.c.V(0)}, +N(a,b){var s=this +if(!s.HX(b))return!1 +return s.c.N(0,s.a.$1(s.$ti.i("cP.K").a(b)))}, +hO(a,b){return this.c.gaJ(0).fQ(0,new A.arM(this,b))}, +gdG(a){var s=this.c +return s.gdG(s).eR(0,new A.arN(this),this.$ti.i("aO"))}, +az(a,b){this.c.az(0,new A.arO(this,b))}, +ga_(a){return this.c.a===0}, +gbC(a){return this.c.a!==0}, +gd1(a){var s=this.c.gaJ(0) +return A.n_(s,new A.arP(this),A.y(s).i("B.E"),this.$ti.i("cP.K"))}, +gt(a){return this.c.a}, +kd(a,b,c,d){var s=this.c +return s.kd(s,new A.arQ(this,b,c,d),c,d)}, +kS(a,b){var s=t.z +return this.kd(0,b,s,s)}, +cP(a,b,c){return this.c.cP(0,this.a.$1(b),new A.arR(this,b,c)).b}, +C(a,b){var s,r=this +if(!r.HX(b))return null +s=r.c.C(0,r.a.$1(r.$ti.i("cP.K").a(b))) +return s==null?null:s.b}, +gaJ(a){var s=this.c.gaJ(0) +return A.n_(s,new A.arS(this),A.y(s).i("B.E"),this.$ti.i("cP.V"))}, +j(a){return A.co(this)}, +HX(a){return this.$ti.i("cP.K").b(a)}, +$iao:1} +A.arL.prototype={ +$2(a,b){this.a.n(0,a,b) +return b}, +$S(){return this.a.$ti.i("~(cP.K,cP.V)")}} +A.arM.prototype={ +$1(a){return J.e(a.b,this.b)}, +$S(){return this.a.$ti.i("H(aO)")}} +A.arN.prototype={ +$1(a){var s=a.b +return new A.aO(s.a,s.b,this.a.$ti.i("aO"))}, +$S(){return this.a.$ti.i("aO(aO>)")}} +A.arO.prototype={ +$2(a,b){return this.b.$2(b.a,b.b)}, +$S(){return this.a.$ti.i("~(cP.C,aO)")}} +A.arP.prototype={ +$1(a){return a.a}, +$S(){return this.a.$ti.i("cP.K(aO)")}} +A.arQ.prototype={ +$2(a,b){return this.b.$2(b.a,b.b)}, +$S(){return this.a.$ti.aH(this.c).aH(this.d).i("aO<1,2>(cP.C,aO)")}} +A.arR.prototype={ +$0(){return new A.aO(this.b,this.c.$0(),this.a.$ti.i("aO"))}, +$S(){return this.a.$ti.i("aO()")}} +A.arS.prototype={ +$1(a){return a.b}, +$S(){return this.a.$ti.i("cP.V(aO)")}} +A.ZZ.prototype={ +ly(a,b){return J.e(a,b)}, +ju(a,b){return J.W(b)}} +A.a1L.prototype={ +ly(a,b){var s,r,q,p,o +if(a===b)return!0 +s=J.a0(a) +r=s.gt(a) +q=J.a0(b) +if(r!==q.gt(b))return!1 +for(p=this.a,o=0;o>>0)&2147483647 +q^=q>>>6}q=q+(q<<3>>>0)&2147483647 +q^=q>>>11 +return q+(q<<15>>>0)&2147483647}} +A.vJ.prototype={ +ly(a,b){var s,r,q,p,o +if(a===b)return!0 +s=this.a +r=A.ir(s.gaSY(),s.gaUX(s),s.gaWi(),A.y(this).i("vJ.E"),t.S) +for(s=J.ay(a),q=0;s.u();){p=s.gI(s) +o=r.h(0,p) +r.n(0,p,(o==null?0:o)+1);++q}for(s=J.ay(b);s.u();){p=s.gI(s) +o=r.h(0,p) +if(o==null||o===0)return!1 +r.n(0,p,o-1);--q}return q===0}, +ju(a,b){var s,r,q +for(s=J.ay(b),r=this.a,q=0;s.u();)q=q+r.ju(0,s.gI(s))&2147483647 +q=q+(q<<3>>>0)&2147483647 +q^=q>>>11 +return q+(q<<15>>>0)&2147483647}} +A.Ej.prototype={} +A.Dr.prototype={} +A.Fj.prototype={ +gB(a){var s=this.a +return 3*s.a.ju(0,this.b)+7*s.b.ju(0,this.c)&2147483647}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.Fj){s=this.a +s=s.a.ly(this.b,b.b)&&s.b.ly(this.c,b.c)}else s=!1 +return s}, +gk(a){return this.c}} +A.KI.prototype={ +ly(a,b){var s,r,q,p,o,n,m +if(a===b)return!0 +s=J.a0(a) +r=J.a0(b) +if(s.gt(a)!==r.gt(b))return!1 +q=A.ir(null,null,null,t.PJ,t.S) +for(p=J.ay(s.gd1(a));p.u();){o=p.gI(p) +n=new A.Fj(this,o,s.h(a,o)) +m=q.h(0,n) +q.n(0,n,(m==null?0:m)+1)}for(s=J.ay(r.gd1(b));s.u();){o=s.gI(s) +n=new A.Fj(this,o,r.h(b,o)) +m=q.h(0,n) +if(m==null||m===0)return!1 +q.n(0,n,m-1)}return!0}, +ju(a,b){var s,r,q,p,o,n,m,l,k +for(s=J.dI(b),r=J.ay(s.gd1(b)),q=this.a,p=this.b,o=this.$ti.y[1],n=0;r.u();){m=r.gI(r) +l=q.ju(0,m) +k=s.h(b,m) +n=n+3*l+7*p.ju(0,k==null?o.a(k):k)&2147483647}n=n+(n<<3>>>0)&2147483647 +n^=n>>>11 +return n+(n<<15>>>0)&2147483647}} +A.ZX.prototype={ +ly(a,b){var s,r=this,q=t.Ro +if(q.b(a))return q.b(b)&&new A.Dr(r,t.n5).ly(a,b) +q=t.f +if(q.b(a))return q.b(b)&&new A.KI(r,r,t.Dx).ly(a,b) +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.Ej(r,t.N2).ly(a,b)}return J.e(a,b)}, +ju(a,b){var s=this +if(t.Ro.b(b))return new A.Dr(s,t.n5).ju(0,b) +if(t.f.b(b))return new A.KI(s,s,t.Dx).ju(0,b) +if(t.JY.b(b))return new A.Ej(s,t.N2).ju(0,b) +return J.W(b)}, +aWj(a){return!0}} +A.a0L.prototype={ +AR(a){var s=this.b[a] +if(s==null){this.$ti.c.a(null) +s=null}return s}, +q(a,b){++this.d +this.aHP(0,b)}, +p(a,b){return this.aEy(b)>=0}, +ga_(a){return this.c===0}, +gbC(a){return this.c!==0}, +gt(a){return this.c}, +cJ(a){var s=this.aLZ() +B.b.fZ(s,this.a) +return s}, +aLZ(){var s,r,q=this.$ti,p=A.a([],q.i("E<1>")) +for(q=q.c,s=0;s>>1;++r}while(r>m)}while(r!==1) +return-1}, +aIy(){var s=this,r=s.c-1,q=s.AR(r) +B.b.n(s.b,r,null) +s.c=r +return q}, +asA(a,b){var s,r,q,p,o=this +for(s=o.a,r=o.$ti.c;b>0;b=q){q=B.e.cn(b-1,2) +p=o.b[q] +if(p==null){r.a(null) +p=null}if(s.$2(a,p)>0)break +B.b.n(o.b,b,p)}B.b.n(o.b,b,a)}, +asz(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){B.b.n(j.b,b,k) +b=p}}B.b.n(j.b,b,a)}} +A.asH.prototype={ +gMr(){var s=$.bB6().gMr() +return new A.QN(new A.asK(),s,A.y(s).i("QN"))}} +A.asK.prototype={ +$2(a,b){return A.bKu(a,b)}, +$S:704} +A.asJ.prototype={} +A.au_.prototype={ +gMr(){var s,r,q=this +if(q.a==null){q.a=new A.cd(null,null,t.X9) +s=self +r=t.v +A.F_(s.window,"online",new A.au0(q),!1,r) +A.F_(s.window,"offline",new A.au1(q),!1,r)}s=q.a +s.toString +return new A.aG(s,A.y(s).i("aG<1>"))}} +A.au0.prototype={ +$1(a){var s=this.a.a +s.toString +s.q(0,A.a([B.pb],t.wo))}, +$S:58} +A.au1.prototype={ +$1(a){var s=this.a.a +s.toString +s.q(0,A.a([B.pc],t.wo))}, +$S:58} +A.asI.prototype={} +A.aIu.prototype={ +gMr(){var s,r=this.c +if(r==null){r=B.SU.b_a() +s=A.y(r).i("jP>") +s=this.c=new A.jP(A.bY1(),new A.jP(new A.aIv(),r,s),s.i("jP>")) +r=s}return r}} +A.aIv.prototype={ +$1(a){return A.cN(a,!0,t.N)}, +$S:770} +A.fj.prototype={ +D(){return"ConnectivityResult."+this.b}} +A.bjL.prototype={ +$1(a){switch(B.c.cw(a)){case"bluetooth":return B.Y1 +case"wifi":return B.pb +case"ethernet":return B.Y2 +case"mobile":return B.w4 +case"vpn":return B.Y3 +case"other":return B.w5 +default:return B.pc}}, +$S:775} +A.aBf.prototype={ +gk5(){return B.SZ}} +A.a0M.prototype={ +b4(a){return A.byp(a,0,a.length)}, +hg(a){return new A.b5r(a)}} +A.b5r.prototype={ +q(a,b){this.a.q(0,A.byp(b,0,J.aM(b)))}, +L(a){this.a.L(0)}} +A.mE.prototype={ +l(a,b){var s,r,q,p,o +if(b==null)return!1 +if(b instanceof A.mE){s=this.a +r=b.a +q=s.length +if(q!==r.length)return!1 +for(p=0,o=0;o>>0)-s,q=0;q1125899906842623)throw A.d(A.ag("Hashing is unsupported for messages with more than 2^53 bits.")) +p=r*8 +o=i.b +i.G(0,new Uint8Array(8)) +n=A.eT(i.a.buffer,0,null) +m=B.e.cn(p,4294967296) +l=p>>>0 +i=j.b +r=B.an===i +k=o+4 +if(i===B.eI){n.setUint32(o,m,r) +n.setUint32(k,l,r)}else{n.setUint32(o,l,r) +n.setUint32(k,m,r)}}} +A.agU.prototype={ +hg(a){var s=new Uint32Array(4),r=new Uint8Array(0),q=new Uint32Array(16) +s[0]=1732584193 +s[1]=4023233417 +s[2]=2562383102 +s[3]=271733878 +return new A.vg(new A.b9o(s,a,B.an,q,new A.df(r,0)))}} +A.b9o.prototype={ +Yr(a){var s,r,q,p,o,n,m,l=this.w,k=l[0],j=l[1],i=l[2],h=l[3] +for(s=k,r=0;r<64;++r,s=h,h=i,i=j,j=m){if(r<16){q=(j&i|~j&h)>>>0 +p=r}else if(r<32){q=(h&j|~h&i)>>>0 +p=(5*r+1)%16}else if(r<48){q=(j^i^h)>>>0 +p=(3*r+5)%16}else{q=(i^(j|~h))>>>0 +p=B.e.an(7*r,16)}o=(s+q>>>0)+(B.a5F[r]+a[p]>>>0)>>>0 +n=B.ac4[r]&31 +m=j+((o<>>0)>>>0}l[0]=s+k>>>0 +l[1]=j+l[1]>>>0 +l[2]=i+l[2]>>>0 +l[3]=h+l[3]>>>0}, +gKG(){return this.w}} +A.akf.prototype={ +hg(a){var s=new Uint32Array(5),r=new Uint32Array(80),q=new Uint8Array(0),p=new Uint32Array(16) +s[0]=1732584193 +s[1]=4023233417 +s[2]=2562383102 +s[3]=271733878 +s[4]=3285377520 +return new A.vg(new A.bdg(s,r,a,B.eI,p,new A.df(q,0)))}} +A.bdg.prototype={ +Yr(a){var s,r,q,p,o,n=this.w,m=n[0],l=n[1],k=n[2],j=n[3],i=n[4] +for(s=this.x,r=0;r<80;++r,i=j,j=k,k=o,l=m,m=p){if(r<16)s[r]=a[r] +else{q=s[r-3]^s[r-8]^s[r-14]^s[r-16] +s[r]=(q<<1|q>>>31)>>>0}p=(((m<<5|m>>>27)>>>0)+i>>>0)+s[r]>>>0 +if(r<20)p=(p+((l&k|~l&j)>>>0)>>>0)+1518500249>>>0 +else if(r<40)p=(p+((l^k^j)>>>0)>>>0)+1859775393>>>0 +else p=r<60?(p+((l&k|l&j|k&j)>>>0)>>>0)+2400959708>>>0:(p+((l^k^j)>>>0)>>>0)+3395469782>>>0 +o=(l<<30|l>>>2)>>>0}n[0]=m+n[0]>>>0 +n[1]=l+n[1]>>>0 +n[2]=k+n[2]>>>0 +n[3]=j+n[3]>>>0 +n[4]=i+n[4]>>>0}, +gKG(){return this.w}} +A.akg.prototype={ +hg(a){var s=new Uint32Array(A.e7(A.a([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],t.t))),r=new Uint32Array(64),q=new Uint8Array(0) +return new A.vg(new A.bdh(s,r,a,B.eI,new Uint32Array(16),new A.df(q,0)))}} +A.bdi.prototype={ +Yr(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c +for(s=this.x,r=0;r<16;++r)s[r]=a[r] +for(r=16;r<64;++r){q=s[r-2] +p=s[r-7] +o=s[r-15] +s[r]=((((q>>>17|q<<15)^(q>>>19|q<<13)^q>>>10)>>>0)+p>>>0)+((((o>>>7|o<<25)^(o>>>18|o<<14)^o>>>3)>>>0)+s[r-16]>>>0)>>>0}q=this.w +n=q[0] +m=q[1] +l=q[2] +k=q[3] +j=q[4] +i=q[5] +h=q[6] +g=q[7] +for(f=n,r=0;r<64;++r,g=h,h=i,i=j,j=d,k=l,l=m,m=f,f=c){e=(g+(((j>>>6|j<<26)^(j>>>11|j<<21)^(j>>>25|j<<7))>>>0)>>>0)+(((j&i^~j&h)>>>0)+(B.a3c[r]+s[r]>>>0)>>>0)>>>0 +d=k+e>>>0 +c=e+((((f>>>2|f<<30)^(f>>>13|f<<19)^(f>>>22|f<<10))>>>0)+((f&m^f&l^m&l)>>>0)>>>0)>>>0}q[0]=f+n>>>0 +q[1]=m+q[1]>>>0 +q[2]=l+q[2]>>>0 +q[3]=k+q[3]>>>0 +q[4]=j+q[4]>>>0 +q[5]=i+q[5]>>>0 +q[6]=h+q[6]>>>0 +q[7]=g+q[7]>>>0}} +A.bdh.prototype={ +gKG(){return this.w}} +A.auF.prototype={} +A.auE.prototype={} +A.aIw.prototype={} +A.yg.prototype={ +L(a){return null}} +A.Xd.prototype={ +aP8(a,b){var s,r=this,q=null,p=r.a +if((p.a.a&30)!==0){p=r.b +s=p==null +if(b!==(s?q:p.d)){A.c(s?q:p.d) +p=r.b +A.c(p==null?q:p.e) +A.h3().j(0) +A.h3()}return}s=r.c +if(s==null)s=A.N5(q,q,q,q,q,q,q,q,q,q,q,q,q,"",q,q,q,q,q,q,q,q,q,q,q) +s=A.tp(b,u.cC,s,q,A.h3(),B.ld) +r.b=s +p.bv(0,s)}} +A.ob.prototype={ +D(){return"DioExceptionType."+this.b}} +A.hy.prototype={ +j(a){var s,r,q,p +try{q=A.bzK(this) +return q}catch(p){s=A.v(p) +r=A.aT(p) +q=A.bzK(this) +return q}}, +$ibm:1} +A.avq.prototype={ +L(a){var s +this.adc$=!0 +s=this.La$ +s===$&&A.b() +s.abo(0,!1)}, +YH(a,b,c,d,e,f,g){return this.b_F(0,b,c,null,d,A.avs("GET",e),f,g)}, +aiC(a,b,c,d){return this.YH(0,b,null,null,c,null,d)}, +ag3(a,b,c,d,e,f,g){return this.zk(0,b,c,d,null,e,A.avs("PUT",f),null,g)}, +ag2(a,b,c,d,e){return this.ag3(0,b,null,c,null,d,e)}, +zk(a,b,c,d,e,f,g,h,i){return this.b_G(0,b,c,d,e,f,g,h,i,i.i("i6<0>"))}, +b_F(a,b,c,d,e,f,g,h){return this.zk(0,b,c,d,e,null,f,g,h)}, +b_E(a,b,c,d,e,f,g){return this.zk(0,b,c,d,null,null,e,f,g)}, +b_G(a4,a5,a6,a7,a8,a9,b0,b1,b2,b3){var s=0,r=A.n(b3),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3 +var $async$zk=A.j(function(b4,b5){if(b4===1)return A.k(b5,r) +while(true)switch(s){case 0:a3=p.Wc$ +a3===$&&A.b() +o=A.h3() +n=t.N +m=t.z +l=A.w(n,m) +k=a3.yE$ +k===$&&A.b() +l.G(0,k) +if(b1!=null)l.G(0,b1) +k=a3.b +k===$&&A.b() +j=A.aou(k,m) +k=b0.b +if(k!=null)j.G(0,k) +i=j.h(0,"content-type") +k=a3.y +k===$&&A.b() +h=A.f7(k,n,m) +n=b0.a +if(n==null){n=a3.a +n===$&&A.b()}m=a3.Lb$ +m===$&&A.b() +k=a3.c +k===$&&A.b() +g=a3.Lc$ +f=b0.r +if(f==null){f=a3.r +f===$&&A.b()}e=a3.w +e===$&&A.b() +d=a3.x +d===$&&A.b() +c=a3.z +c===$&&A.b() +b=a3.Q +b===$&&A.b() +a=a3.as +a===$&&A.b() +a0=a3.ay +a0===$&&A.b() +a1=i==null?null:i +if(a1==null)a1=A.dk(a3.b.h(0,"content-type")) +a2=A.N5(m,a6,g,a1,a7,h,c,j,a0,b,n.toUpperCase(),a8,a9,a5,a,k,l,d,a3.e,a3.at,a3.ax,f,a3.d,o,e) +e=a2.cy +if(e!=null)e.c=a2 +if(p.adc$)throw A.d(A.bsd("Dio can't establish a new connection after it was closed.",a2)) +q=p.KZ(0,a2,b2) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$zk,r)}, +KZ(a,b,c){return this.aTf(0,b,c,c.i("i6<0>"))}, +aTf(a4,a5,a6,a7){var s=0,r=A.n(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$KZ=A.j(function(a8,a9){if(a8===1){o=a9 +s=p}while(true)switch(s){case 0:a2={} +a2.a=a5 +if(A.cK(a6)!==B.tM){i=a5.r +i===$&&A.b() +i=!(i===B.nh||i===B.ry)}else i=!1 +if(i)if(A.cK(a6)===B.nN)a5.r=B.alj +else a5.r=B.fq +h=new A.avy(a2) +g=new A.avB(a2) +f=new A.avv(a2) +i=t.z +m=A.a0v(new A.avt(a2),i) +for(e=n.Dm$,d=A.y(e),c=d.i("ci"),b=new A.ci(e,e.gt(0),c),d=d.i("S.E");b.u();){a=b.d +a0=(a==null?d.a(a):a).gEf() +m=m.ak(h.$1(a0),i)}m=m.ak(h.$1(new A.avu(a2,n,a6)),i) +for(b=new A.ci(e,e.gt(0),c);b.u();){a=b.d +a0=(a==null?d.a(a):a).gMG() +m=m.ak(g.$1(a0),i)}for(i=new A.ci(e,e.gt(0),c);i.u();){e=i.d +if(e==null)e=d.a(e) +a0=e.gpU(e) +m=m.dc(f.$1(a0))}p=4 +s=7 +return A.f(m,$async$KZ) +case 7:l=a9 +i=l instanceof A.fG?l.a:l +i=A.bsf(i,a2.a,a6) +q=i +s=1 +break +p=2 +s=6 +break +case 4:p=3 +a3=o +k=A.v(a3) +j=k instanceof A.fG +if(j)if(k.b===B.xV){q=A.bsf(k.a,a2.a,a6) +s=1 +break}i=j?k.a:k +throw A.d(A.blz(i,a2.a)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$KZ,r)}, +wP(a,b){return this.aw8(a,b)}, +aw8(a6,a7){var s=0,r=A.n(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 +var $async$wP=A.j(function(a8,a9){if(a8===1){o=a9 +s=p}while(true)switch(s){case 0:a4=a6.cy +p=4 +s=7 +return A.f(n.J6(a6),$async$wP) +case 7:m=a9 +d=n.La$ +d===$&&A.b() +c=a4 +c=c==null?null:c.a.a +c=d.L_(0,a6,m,c) +d=A.bro(null,t.Ol) +d.bv(0,c) +l=d.gafw() +k=new A.vN(new ($.VT())(l)) +d=a4 +if(d!=null)d.a.a.fC(new A.avr(k)) +s=8 +return A.f(J.je(l),$async$wP) +case 8:j=a9 +d=j.f +c=a6.c +c===$&&A.b() +i=A.bto(d,c) +j.f=i.b +j.toString +d=A.a([],t.Bw) +c=j.a +b=j.c +a=j.d +h=A.Da(null,j.r,i,c,d,a6,b,a,t.z) +g=a6.b14(j.c) +if(!g){d=a6.x +d===$&&A.b()}else d=!0 +s=d?9:11 +break +case 9:j.b=A.bW0(a6,j) +s=12 +return A.f(n.Wd$.t4(a6,j),$async$wP) +case 12:f=a9 +d=!1 +if(typeof f=="string")if(J.aM(f)===0)if(A.cK(a7)!==B.tM)if(A.cK(a7)!==B.nN){d=a6.r +d===$&&A.b() +d=d===B.fq}if(d)f=null +h.a=f +s=10 +break +case 11:J.A0(j) +case 10:d=a4 +a0=d==null?null:d.b +if(a0!=null)A.V(a0) +if(g){q=h +s=1 +break}else{d=j.c +if(d>=100&&d<200)a1="This is an informational response - the request was received, continuing processing" +else if(d>=200&&d<300)a1="The request was successfully received, understood, and accepted" +else if(d>=300&&d<400)a1="Redirection: further action needs to be taken in order to complete the request" +else if(d>=400&&d<500)a1="Client error - the request contains bad syntax or cannot be fulfilled" +else a1=d>=500&&d<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" +a2=A.bNY("") +d=""+d +a2.zA("This exception was thrown because the response has a status code of "+d+" and RequestOptions.validateStatus was configured to throw for this status code.") +a2.zA("The status code of "+d+' has the following meaning: "'+a1+'"') +a2.zA("Read more about status codes at https://developer.mozilla.org/en-US/docs/Web/HTTP/Status") +a2.zA("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.") +d=A.tp(null,a2.j(0),a6,h,null,B.wC) +throw A.d(d)}p=2 +s=6 +break +case 4:p=3 +a5=o +e=A.v(a5) +d=A.blz(e,a6) +throw A.d(d) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$wP,r)}, +aDW(a){var s,r,q +for(s=new A.eY(a),r=t.Hz,s=new A.ci(s,s.gt(0),r.i("ci")),r=r.i("S.E");s.u();){q=s.d +if(q==null)q=r.a(q) +if(q>=128||u.l.charCodeAt(q)===32)return!1}return!0}, +J6(a){return this.aMa(a)}, +aMa(a){var s=0,r=A.n(t.Pq),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d +var $async$J6=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:f={} +e=a.a +e===$&&A.b() +if(!p.aDW(e))throw A.d(A.hY(a.gaXi(0),"method",null)) +o=a.CW +s=o!=null?3:4 +break +case 3:f.a=null +s=o instanceof A.wZ?5:7 +break +case 5:e=a.b +e===$&&A.b() +n=o.c +n===$&&A.b() +e.n(0,"content-type","multipart/form-data; boundary="+n) +m=o.Dq() +l=o.gt(0) +f.a=l +a.b.n(0,"content-length",B.e.j(l)) +s=6 +break +case 7:s=t.D.b(o)?8:10 +break +case 8:k=o +s=9 +break +case 10:d=B.ao +s=11 +return A.f(p.Wd$.zv(a),$async$J6) +case 11:k=d.b4(c) +case 9:l=k.length +f.a=l +e=a.b +e===$&&A.b() +e.n(0,"content-length",B.e.j(l)) +j=A.a([],t.Zb) +i=B.d.dZ(k.length/1024) +for(h=0;h(type: "+this.b.j(0)+", data: "+this.a.j(0)+")"}} +A.aZ3.prototype={} +A.qL.prototype={ +iE(a,b){var s=this.a +if((s.a.a&30)!==0)A.V(A.a1(u.r)) +s.bv(0,new A.fG(b,B.ed,t.FN))}, +agG(a,b){var s,r=this.a +if((r.a.a&30)!==0)A.V(A.a1(u.r)) +s=b?B.xW:B.xV +r.bv(0,new A.fG(a,s,t.Pm))}, +Z(a){return this.agG(a,!1)}, +agj(a,b){var s,r=this.a +if((r.a.a&30)!==0)A.V(A.a1(u.r)) +s=b?B.xX:B.a2u +r.dh(new A.fG(a,s,t.oF),a.e)}, +b_h(a){return this.agj(a,!1)}} +A.yh.prototype={} +A.pR.prototype={} +A.i2.prototype={ +kY(a,b){b.iE(0,a)}, +od(a,b){var s=b.a +if((s.a.a&30)!==0)A.V(A.a1(u.r)) +s.bv(0,new A.fG(a,B.ed,t.Pm))}, +kX(a,b,c){var s=c.a +if((s.a.a&30)!==0)A.V(A.a1(u.r)) +s.dh(new A.fG(b,B.ed,t.oF),b.e)}} +A.Ka.prototype={ +gt(a){return this.a.length}, +st(a,b){B.b.st(this.a,b)}, +h(a,b){var s=this.a[b] +s.toString +return s}, +n(a,b,c){var s=this.a +if(s.length===b)s.push(c) +else s[b]=c}} +A.wZ.prototype={ +axS(a,b){this.c="--dio-boundary-"+B.c.fk(B.e.j($.bE1().pR(4294967296)),10,"0") +A.bpm(a,new A.aA3(this),!1,!1,b)}, +a4P(a){var s={},r=a.b,q='content-disposition: form-data; name="'+A.c(this.a12(a.a))+'"' +s.a=q +q=q+'; filename="'+A.c(this.a12(r.b))+'"' +s.a=q +s.a=q+"\r\ncontent-type: "+r.d.j(0) +r.c.az(0,new A.aA2(s)) +return s.a+"\r\n\r\n"}, +a12(a){var s=A.bB("\\r\\n|\\r|\\n",!0,!1,!1) +s=A.dm(a,s,"%0D%0A") +s=A.dm(s,'"',"%22") +return s}, +gt(a){var s,r,q,p,o,n,m,l,k=this +for(s=k.d,r=s.length,q=0,p=0;p"))}} +A.aA3.prototype={ +$2(a,b){var s,r=this.a +if(b instanceof A.Cs)r.e.push(new A.aO(a,b,t.YB)) +else{s=b==null?null:J.p(b) +if(s==null)s="" +r.d.push(new A.aO(a,s,t.mT))}return null}, +$S:359} +A.aA2.prototype={ +$2(a,b){var s,r,q +for(s=J.ay(b),r=this.a;s.u();){q=s.gI(s) +r.a=r.a+"\r\n"+a+": "+q}}, +$S:113} +A.aA7.prototype={ +$0(){return this.a.q(0,$.bE3())}, +$S:0} +A.aA8.prototype={ +$1(a){var s=B.ao.b4(a) +return this.a.q(0,s)}, +$S:19} +A.aA4.prototype={ +$0(){var s=0,r=A.n(t.H),q=this,p,o,n,m,l,k,j,i,h +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=q.a,o=p.e,n=o.length,m=q.b,l=q.c,k=q.d,j=0 +case 2:if(!(j"))}, +gt(a){return this.a}} +A.aKb.prototype={ +$0(){return A.bnO(A.a([this.a],t.Zb),t.Cm)}, +$S:366} +A.aKc.prototype={ +$1(a){return t.D.b(a)?a:new Uint8Array(A.e7(a))}, +$S:370} +A.Db.prototype={ +D(){return"ResponseType."+this.b}} +A.a1M.prototype={ +D(){return"ListFormat."+this.b}} +A.a5e.prototype={ +saaV(a){this.Lb$=a}, +sabE(a){if(a!=null&&a.a<0)throw A.d(A.a1("connectTimeout should be positive")) +this.Lc$=a}} +A.aql.prototype={} +A.aKQ.prototype={} +A.l8.prototype={ +gl0(){var s,r,q,p,o=this,n=o.cx +if(!B.c.ba(n,A.bB("https?:",!0,!1,!1))){s=o.Lb$ +s===$&&A.b() +n=s+n +r=n.split(":/") +if(r.length===2){s=A.c(r[0]) +q=r[1] +n=s+":/"+A.dm(q,"//","/")}}s=o.yE$ +s===$&&A.b() +q=o.ay +q===$&&A.b() +p=A.bOL(s,q) +if(p.length!==0)n+=(B.c.p(n,"?")?"&":"?")+p +return A.f1(n).afe()}} +A.bci.prototype={ +a0h(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,a0){var s,r,q=this,p="content-type" +q.sLC(0,d) +s=q.b +s===$&&A.b() +r=s.N(0,p) +if(a!=null&&r&&!J.e(q.b.h(0,p),a))throw A.d(A.hY(a,"contentType","Unable to set different values for `contentType` and the content-type header.")) +if(!r)q.sabI(0,a)}, +gaXi(a){var s=this.a +s===$&&A.b() +return s}, +sLC(a,b){var s=this,r="content-type",q=A.aou(b,t.z) +s.b=q +if(!q.N(0,r)&&s.f!=null)s.b.n(0,r,s.f)}, +sabI(a,b){var s,r="content-type",q=b==null?null:B.c.cw(b) +this.f=q +s=this.b +if(q!=null){s===$&&A.b() +s.n(0,r,q)}else{s===$&&A.b() +s.C(0,r)}}, +gb13(){var s=this.w +s===$&&A.b() +return s}, +b14(a){return this.gb13().$1(a)}} +A.az5.prototype={ +D(){return"FileAccessMode."+this.b}} +A.ad8.prototype={} +A.ajA.prototype={} +A.i6.prototype={ +j(a){var s=this.a +if(t.f.b(s))return B.a7.lw(s) +return J.p(s)}} +A.bjh.prototype={ +$0(){var s=this.a,r=s.b +if(r!=null)r.S(0) +s.b=null +s=this.c +if(s.b==null)s.b=$.y7.$0() +s.eU(0)}, +$S:0} +A.bji.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.S(0) +r=q.c +r.eU(0) +r.mF(0) +s.b=A.bZ(p,new A.bjj(q.d,q.e,q.f,q.r,p,q.w))}, +$S:0} +A.bjj.prototype={ +$0(){var s=this +s.a.$0() +s.b.L(0) +J.Gz(s.c.b2()) +A.boU(s.d,A.blx(s.f,s.e),null)}, +$S:0} +A.bjd.prototype={ +$1(a){var s,r,q,p=this +p.b.$0() +if(A.dA(p.c.gKT(),0,0).a<=p.d.a){p.e.q(0,a) +s=p.f.db +if(s!=null){r=p.a +q=r.a+a.length +r.a=q +s.$2(q,p.r.b2())}}}, +$S:179} +A.bjf.prototype={ +$2(a,b){this.a.$0() +A.boU(this.b,a,b)}, +$S:60} +A.bje.prototype={ +$0(){this.a.$0() +J.Gz(this.b.b2()) +this.c.L(0)}, +$S:0} +A.bjg.prototype={ +$0(){var s,r=this +r.a.$0() +r.b.L(0) +J.Gz(r.c.b2()) +s=r.e.cy.b +s.toString +A.boU(r.d,s,null)}, +$S:4} +A.aUV.prototype={} +A.aUW.prototype={ +$2(a,b){if(b==null)return a +return a+"="+A.rB(B.hB,J.p(b),B.a5,!0)}, +$S:196} +A.aUX.prototype={ +$2(a,b){if(b==null)return a +return a+"="+A.c(b)}, +$S:196} +A.aqc.prototype={} +A.a0u.prototype={ +zv(a){return this.b0s(a)}, +b0s(a){var s=0,r=A.n(t.N),q +var $async$zv=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=A.bwE(a,A.bzA()) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$zv,r)}, +t4(a,b){return this.b0u(a,b)}, +b0u(a,b){var s=0,r=A.n(t.z),q,p=this,o,n,m,l +var $async$t4=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:l=a.r +l===$&&A.b() +if(l===B.ry){q=b +s=1 +break}if(l===B.nh){q=A.vU(b.b) +s=1 +break}o=b.f.h(0,"content-type") +n=A.bo1(o==null?null:J.fT(o))&&l===B.fq +if(n){q=p.wV(a,b) +s=1 +break}s=3 +return A.f(A.vU(b.b),$async$t4) +case 3:m=d +l=B.a5.CV(0,m,!0) +q=l +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$t4,r)}, +wV(a,b){return this.axk(a,b)}, +axk(a,b){var s=0,r=A.n(t.X),q,p=this,o,n,m,l,k,j +var $async$wV=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:j=b.f.h(0,"content-length") +s=!(j!=null&&J.du(j))?3:5 +break +case 3:s=6 +return A.f(A.vU(b.b),$async$wV) +case 6:o=d +n=o.length +s=4 +break +case 5:n=A.c0(J.fT(j),null) +o=null +case 4:s=n>=p.a?7:9 +break +case 7:s=o==null?10:12 +break +case 10:s=13 +return A.f(A.vU(b.b),$async$wV) +case 13:s=11 +break +case 12:d=o +case 11:m=d +q=A.bzy().$2$2(A.bVR(),m,t.D,t.X) +s=1 +break +s=8 +break +case 9:s=o!=null?14:16 +break +case 14:if(o.length===0){q=null +s=1 +break}m=$.bkj() +q=A.zL(m.a.b4(o),m.b.a) +s=1 +break +s=15 +break +case 16:l=B.SM.iZ(b.b) +s=17 +return A.f($.bkj().iZ(l).cJ(0),$async$wV) +case 17:k=d +m=J.a0(k) +if(m.ga_(k)){q=null +s=1 +break}q=m.gW(k) +s=1 +break +case 15:case 8:case 1:return A.l(q,r)}}) +return A.m($async$wV,r)}} +A.aTu.prototype={ +zv(a){return this.b0t(a)}, +b0t(a){var s=0,r=A.n(t.N),q +var $async$zv=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=A.bwE(a,A.bzA()) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$zv,r)}, +t4(a,b){return this.b0v(a,b)}, +b0v(a,b){var s=0,r=A.n(t.z),q,p=this,o,n,m,l,k +var $async$t4=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:k=a.r +k===$&&A.b() +if(k===B.ry){q=b +s=1 +break}s=3 +return A.f(A.vU(b.b),$async$t4) +case 3:o=d +if(k===B.nh){q=o +s=1 +break}n=b.f.h(0,"content-type") +m=A.bo1(n==null?null:J.fT(n)) +l=!m||!B.G.ga_(o)?B.a5.CV(0,o,!0):null +if(l!=null&&l.length!==0&&k===B.fq&&m){q=p.a.$1(l) +s=1 +break}q=l +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$t4,r)}} +A.a_0.prototype={ +iZ(a){return new A.lm(new A.auf(),a,t.MS)}} +A.auf.prototype={ +$1(a){return new A.EJ(a)}, +$S:375} +A.EJ.prototype={ +q(a,b){var s +this.b=this.b||!B.G.ga_(b) +s=this.a.a +if((s.e&2)!==0)A.V(A.a1("Stream is already closed")) +s.l8(0,b)}, +cX(a,b){return this.a.cX(a,b)}, +L(a){var s,r,q="Stream is already closed" +if(!this.b){s=$.bD0() +r=this.a.a +if((r.e&2)!==0)A.V(A.a1(q)) +r.l8(0,s)}s=this.a.a +if((s.e&2)!==0)A.V(A.a1(q)) +s.qp()}, +$ice:1} +A.bkf.prototype={ +$0(){return this.a.d8(0)}, +$S:0} +A.biM.prototype={ +$1(a){return a}, +$S:40} +A.biN.prototype={ +$1(a){if(!this.a||a==null||typeof a!="string")return a +return this.b.$1(a)}, +$S:166} +A.biO.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.b,e=A.bT4(f,g.c),d=t.j +if(d.b(a)){s=f===B.lT +if(s||f===B.a33)for(r=J.a0(a),q=g.f,p=g.d,o=g.e,n=b+o,m=t.f,l=0;l0?a1.a=A.bZ(j,new A.aqR(a1,f,a2,a5,j)):null +c=a6!=null +if(c){b=a2.upload +if(n!=null)A.F_(b,"progress",new A.aqU(a1),!1,t.v) +if(k.a>0){$.rW() +A.F_(b,"progress",new A.aqV(new A.r1(),k,f,a5,a2),!1,t.v)}if(l!=null)A.F_(b,"progress",new A.aqW(l),!1,t.v)}else{if(k.a>0)A.h3() +if(l!=null)A.h3()}a=new A.r1() +$.rW() +a1.b=null +A.F_(a2,"progress",new A.aqX(a1,new A.ar2(a1,i,a,f,a2,a5,new A.ar1(a1,a)),a5),!1,t.v) +new A.rn(a2,"error",!1,e).gW(0).ak(new A.aqY(a1,f,a5),d) +new A.rn(a2,"timeout",!1,e).gW(0).ak(new A.aqZ(a1,f,j,a5,h),d) +if(a7!=null)a7.ak(new A.ar_(a1,a2,f,a5),d) +s=c?3:5 +break +case 3:if(o==="GET")A.h3() +a1=new A.a_($.ab,t.Qy) +f=new A.aq(a1,t.gI) +a0=new A.Qf(new A.ar0(f),new Uint8Array(1024)) +a6.aK(a0.git(a0),!0,a0.gpq(a0),new A.aqS(f)) +a3=a2 +s=6 +return A.f(a1,$async$L_) +case 6:a3.send(a9) +s=4 +break +case 5:a2.send() +case 4:q=g.fC(new A.aqT(p,a2)) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$L_,r)}, +abo(a,b){this.a.V(0)}, +L(a){return this.abo(0,!1)}} +A.aqP.prototype={ +$2(a,b){var s=this.a +if(t.JY.b(b))s.setRequestHeader(a,J.bkE(b,", ")) +else s.setRequestHeader(a,J.p(b))}, +$S:33} +A.aqQ.prototype={ +$1(a){var s=this.a,r=A.dw(t.RZ.a(s.response),0,null),q=s.status,p=A.bSL(s),o=s.statusText +s=J.e(s.status,302)||J.e(s.status,301)||this.c.gl0().j(0)!==s.responseURL +r=A.bw1(r,t.D) +this.b.bv(0,new A.yg(s,r,q,o,p,A.w(t.N,t.z)))}, +$S:119} +A.aqR.prototype={ +$0(){var s,r=this +r.a.a=null +s=r.b +if((s.a.a&30)!==0)return +r.c.abort() +s.dh(A.bse(r.d,r.e),A.h3())}, +$S:0} +A.aqU.prototype={ +$1(a){var s=this.a,r=s.a +if(r!=null)r.S(0) +s.a=null}, +$S:58} +A.aqV.prototype={ +$1(a){var s,r=this,q=r.a +if(q.b!=null)q.mF(0) +s=r.b +if(A.dA(q.gKT(),0,0).a>s.a){if(q.b==null)q.b=$.y7.$0() +r.c.dh(A.tp(null,"The request took longer than "+s.j(0)+" to send data. It was aborted. To get rid of this exception, try raising the RequestOptions.sendTimeout above the duration of "+s.j(0)+u.v,r.d,null,null,B.wA),A.h3()) +r.e.abort()}}, +$S:58} +A.aqW.prototype={ +$1(a){this.a.$2(a.loaded,a.total)}, +$S:58} +A.ar1.prototype={ +$0(){var s=this.a,r=s.b +if(r!=null)r.S(0) +s.b=null +s=this.b +if(s.b==null)s.b=$.y7.$0()}, +$S:0} +A.ar2.prototype={ +$0(){var s,r,q=this,p=q.b +if(p.a<=0)return +s=q.c +s.eU(0) +if(s.b!=null)s.mF(0) +s=q.a +r=s.b +if(r!=null)r.S(0) +s.b=A.bZ(p,new A.ar3(q.d,q.e,p,q.f,q.r))}, +$S:0} +A.ar3.prototype={ +$0(){var s=this,r=s.a +if((r.a.a&30)===0){s.b.abort() +r.dh(A.blx(s.d,s.c),A.h3())}s.e.$0()}, +$S:0} +A.aqX.prototype={ +$1(a){var s=this.a,r=s.a +if(r!=null){r.S(0) +s.a=null}this.b.$0() +s=this.c.db +if(s!=null)s.$2(a.loaded,a.total)}, +$S:58} +A.aqY.prototype={ +$1(a){var s=this.a.a +if(s!=null)s.S(0) +this.b.dh(A.bsd("The XMLHttpRequest onError callback was called. This typically indicates an error on the network layer.",this.c),A.h3())}, +$S:119} +A.aqZ.prototype={ +$1(a){var s,r=this,q=r.a.a,p=q!=null +if(p)q.S(0) +q=r.b +if((q.a.a&30)===0){s=r.d +if(p)q.dF(A.bse(s,r.c)) +else q.dh(A.blx(s,A.dA(0,r.e,0)),A.h3())}}, +$S:119} +A.ar_.prototype={ +$1(a){var s,r,q=this,p=q.b +if(p.readyState<4&&p.readyState>0){s=q.a.a +if(s!=null)s.S(0) +try{p.abort()}catch(r){}p=q.c +if((p.a.a&30)===0)p.dF(A.tp("The XMLHttpRequest was aborted.",u.cC,q.d,null,null,B.ld))}}, +$S:20} +A.ar0.prototype={ +$1(a){return this.a.bv(0,a)}, +$S:96} +A.aqS.prototype={ +$2(a,b){return this.a.dh(a,b)}, +$S:32} +A.aqT.prototype={ +$0(){this.a.a.C(0,this.b)}, +$S:4} +A.a_m.prototype={ +acM(a,b,c,d,e){throw A.d(A.ag("The download method is not available in the Web environment."))}} +A.aeI.prototype={} +A.bim.prototype={ +$2(a,b){var s,r="Stream is already closed",q=this.a,p=q.cy +if(p!=null&&p.b!=null){p.c=q +q=p.b +q.toString +b.pd(q) +q=b.a +if((q.e&2)!==0)A.V(A.a1(r)) +q.qp()}else{q=b.a +if(t.D.b(a)){if((q.e&2)!==0)A.V(A.a1(r)) +q.l8(0,a)}else{s=new Uint8Array(A.e7(a)) +if((q.e&2)!==0)A.V(A.a1(r)) +q.l8(0,s)}}}, +$S(){return this.b.i("~(0,ce)")}} +A.af0.prototype={ +aT(a,b){var s,r,q=null,p=t.Y,o=this.f,n=b.b +o=A.aoj(o,Math.min(o,n),n) +s=this.e +r=new A.b0(0,0,p).al(0,s.gk(0)) +this.w.jB(a,new A.z(0,r),new A.q7(q,q,q,q,new A.R(b.a,new A.b0(o,n,p).al(0,s.gk(0))-r),q))}, +ff(a){var s=this +return!a.b.l(0,s.b)||a.c!==s.c||a.d!==s.d||!J.e(a.r,s.r)||a.f!==s.f||a.e!==s.e}} +A.b2m.prototype={ +$0(){}, +$S:0} +A.EU.prototype={ +a0(){return new A.EW(this.$ti.i("EW<1>"))}} +A.EW.prototype={ +awE(a){var s,r,q=$.aw.aR$.d.a.b +switch((q==null?A.vn():q).a){case 0:s=!1 +break +case 1:s=!0 +break +default:s=null}if(a&&s){q=this.a +r=q.c.Ol(q.e,q.f.d,q.r,q.w) +this.a.c.hR.kD(r.d,B.e9,B.bc)}}, +awG(){var s,r=this.a +r=r.c.bH[r.w] +s=this.c +s.toString +A.bU(s,!1).fM(new A.mg(r.f.r,this.$ti.i("mg<1>")))}, +F(a){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.a,h=i.c,g=h.bH +i=i.w +s=g[i] +r=0.5/(g.length+1.5) +q=A.aoj(0.5+(i+1)*r,0,1) +p=A.aoj(q+1.5*r,0,1) +h=h.k2 +h.toString +o=A.cl(new A.eF(q,p,B.X),h,j) +h=k.a +i=h.c +g=i.dS +n=g.c +if(n==null)n=B.bV +h=h.w +m=A.aa(j,i.bH[h],B.h,j,j,j,j,g.a,j,j,n,j,j,j) +g=s.f.w +if(g){l=!i.d9&&h===i.cm +m=A.eQ(l,j,!0,m,j,!0,j,j,j,j,j,k.gawD(),j,j,j,k.gawF(),j,j,j,j)}m=new A.eB(o,!1,m,j) +return g?A.NN(m,j,B.IQ):m}} +A.ES.prototype={ +a0(){return new A.QZ(A.cI([B.fK,B.N],t.g),this.$ti.i("QZ<1>"))}} +A.QZ.prototype={ +aj(){var s,r,q,p,o,n=this +n.aw() +s=n.a.c.k2 +s.toString +n.d=A.cl(B.xZ,s,B.y_) +s=n.a.c.k2 +s.toString +n.e=A.cl(B.y0,s,B.k8) +n.a.toString +s=A.a([],t.p) +for(r=n.$ti.i("EU<1>"),q=0;p=n.a,o=p.c,q0?b+B.b.lI(B.b.cK(this.jt,0,a),new A.b2u()):b}, +Ol(a,b,c,d){var s,r,q,p,o,n,m,l,k=this,j=Math.max(0,b-(c.gc9(0)+c.gci(0))-48),i=k.dK,h=i.a +if(h!=null)j=Math.min(j,h) +s=i.c +r=s==null +q=r?null:s.gc9(0)+s.gci(0) +if(q==null)q=B.dg.gc9(0)+B.dg.gci(0) +q+=0 +if(k.bH.length!==0)q+=B.b.lI(k.jt,new A.b2w()) +p=Math.min(j,q) +o=a.d-i.w.b +n=c.b +m=b-c.d +if(om)o=m-p +if(q>j)l=Math.min(Math.max(0,k.ajd(d,!r?s.b:8)-p/2+k.jt[k.cm]/2),q-p) +else l=0 +return new A.b9V(o,l)}, +gpj(){return this.nZ}, +gpi(){return this.fv}, +guq(){return this.k6}} +A.b2s.prototype={ +$2(a,b){var s=A.cr(a,null,t.l).w,r=b.Kf(b.d-s.f.d),q=this.a +return new A.fu(q.d4,new A.b2q(q,r,s.r),null,null,t.HJ)}, +$S:401} +A.b2q.prototype={ +$3(a,b,c){var s=this.a +b.toString +return new A.EX(s,this.b,this.c,b,s.cm,s.ft,!0,null,s.$ti.i("EX<1>"))}, +$S(){return this.a.$ti.i("EX<1>(Q,I?,o?)")}} +A.b2u.prototype={ +$2(a,b){return a+b}, +$S:75} +A.b2w.prototype={ +$2(a,b){return a+b}, +$S:75} +A.EX.prototype={ +F(a){var s,r=this,q=null,p=r.c +if(p.hR==null)p.hR=A.uE(p.Ol(r.f,r.d.d,r.e,r.r).d,q,q) +s=A.e1(a) +return A.aI8(new A.fi(new A.b2p(r,s,new A.ES(p,s,r.f,r.d,r.e,!0,q,r.$ti.i("ES<1>"))),q),a,!0,!0,!0,!0)}} +A.b2p.prototype={ +$1(a){var s=this.a +return new A.kz(new A.af2(s.c,s.f,s.d.d,s.e,this.b,s.$ti.i("af2<1>")),new A.nD(s.x.a,this.c,null),null)}, +$S:199} +A.Fn.prototype={ +b6(a){var s=new A.ajf(this.e,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.E=this.e}} +A.ajf.prototype={ +ck(){this.qo() +var s=this.gv(0) +this.E.$1(s)}} +A.aeY.prototype={ +F(a){var s=null +return A.aa(this.d,this.c,B.h,s,B.uG,s,s,s,s,s,s,s,s,s)}} +A.B_.prototype={ +a0(){var s=$.aW() +return new A.B0(new A.cS(!1,s),new A.cS(null,s),this.$ti.i("B0<1>"))}, +gk(a){return this.e}} +A.B0.prototype={ +gRd(){this.a.toString +var s=this.r +return s}, +aj(){var s,r,q=this +q.aw() +$.aw.cU$.push(q) +q.a2U() +s=q.a +s.toString +if(q.r==null)q.r=A.kK(!0,A.K(s).j(0),!0,!0,null,null,!1) +s=t.ot +r=t.wS +q.w=A.C([B.nL,new A.dv(new A.awD(q),new A.bV(A.a([],s),r),t.wY),B.tF,new A.dv(new A.awE(q),new A.bV(A.a([],s),r),t.nz)],t.u,t.od)}, +m(){var s,r=this +$.aw.lJ(r) +r.QS() +s=r.r +if(s!=null)s.m() +r.ar()}, +QS(){var s,r=this.e +if(r!=null)if(r.gDO()){s=r.a +if(s!=null)s.Nj(r)}this.f=this.e=null}, +b1(a){var s,r=this +r.bb(a) +s=r.a +s.toString +if(r.r==null)r.r=A.kK(!0,A.K(s).j(0),!0,!0,null,null,!1) +r.a2U()}, +a2U(){var s,r,q,p=this,o=p.a,n=!0,m=o.c +if(m.length!==0)o=o.e==null&&!new A.bh(m,new A.awA(p),A.af(m).i("bh<1>")).gav(0).u() +else o=n +if(o){p.d=null +return}for(o=p.a,n=o.c,m=n.length,s=0;s>")) +for(s=a2.i("Fn<1>"),r=0;q=a0.a.c,r?>") +e=a2.i("aq?>") +d=A.qF(B.cT) +c=A.a([],t.wi) +b=$.aW() +a=$.ab +a0.e=new A.R0(a3,s,q,o,m,n,!0,j,k,a1,i,!0,a1,l,a1,a1,h,A.bn(t.f9),new A.bG(a1,a2.i("bG>>")),new A.bG(a1,t.A),new A.ud(),a1,0,new A.aq(new A.a_(g,f),e),d,c,B.i1,new A.cS(a1,b),new A.aq(new A.a_(a,f),e),new A.aq(new A.a_(a,f),e),a2.i("R0<1>")) +a0.x.sk(0,!0) +A.eC(B.pw,new A.awy(a0),t.P) +a2=a0.e +a2.toString +p.nh(a2).ak(new A.awz(a0),t.H) +a2=a0.a.x +if(a2!=null)a2.$1(!0)}, +gawI(){var s,r=this +if(r.gqv()){r.a.toString +s=r.c +s.toString +switch(A.q(s).ax.a.a){case 1:return B.iJ +case 0:return B.au}}else{r.a.toString +s=r.c +s.toString +switch(A.q(s).ax.a.a){case 1:return B.kU +case 0:return B.vZ}}}, +gqv(){var s=this.a +s=s.c.length!==0 +return s}, +ayb(a){var s,r=this.a.CW +if(r==null)s=null +else s=r.d.d +if(s!=null){r=a.au(t.I) +r.toString +return s.Z(r.w)}return null}, +F(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=A.de(a,f),d=e==null?f:e.gpV(0) +if(d==null){$.aw.toString +s=$.ja.gmo() +d=s.a>s.b?B.rl:B.rk}e=g.f +if(e==null){g.f=d +e=d}if(d!==e){g.QS() +g.f=d}e=g.a +r=e.d +if(r==null)q=A.a8(e.c,!0,t.l7) +else q=A.a8(r.$1(a),!0,t.l7) +e=g.a.f==null +if(e)if(!g.gqv())g.a.toString +if(!e){e=g.gqv() +r=g.a +if(e){e=r.f +e.toString +p=e}else{e=r.f +e.toString +p=e}o=q.length +e=g.gH8() +e.toString +e=e.cc(A.q(a).db) +g.a.toString +q.push(A.kD(A.ok(new A.aeY(p,B.io,f),!0,f),f,f,B.cs,!0,e,f,f,B.aX))}else o=f +A.bkY(a) +if(q.length===0)n=B.ax +else{e=g.a +r=e.CW +if((r==null?f:r.b)==null&&e.cy.b==null){e=e.db.c +e=e==null?f:e.gde() +if(e==null)e=B.bV.gde() +r=g.a.cy.c +r=r==null?f:r.gde() +if(r==null)r=0 +g.a.toString +e=(e+r+0)/2}else e=0 +r=g.d +if(r==null)r=o +m=A.af(q).i("ad<1,aB>") +m=A.a8(new A.ad(q,new A.awB(g),m),!0,m.i("aN.E")) +n=new A.be(new A.al(e,0,e,0),A.btC(B.io,m,r),f)}if(g.gqv()){e=g.gH8() +e.toString}else{e=g.gH8() +e.toString +e=e.cc(A.q(a).ch)}r=g.a +m=r.dy +if(m==null){r=r.CW +m=f +if(r==null)r=m +else{l=r.d +k=l.e +if(k==null){r=r.e +r=B.mN.h(0,r)}else r=k +r=l.aQf(r)}m=g.a.CW +m=m==null?f:m.c +if(m==null){m=a.au(t.I) +m.toString +m=B.Z.Z(m.w)}l=g.a.CW +k=l==null +j=k?f:l.a +if(j==null)j=f +l=k?f:l.b +k=A.a([],t.p) +if(g.a.as)k.push(A.cf(n,1)) +else k.push(n) +i=g.gawI() +g.a.toString +k.push(A.BA(new A.fu(g.x,new A.awC(g),f,f,t.D0),new A.eP(24,f,f,f,f,i,f,f,f),f)) +l=A.aa(f,A.bt(k,B.l,B.bX,B.aE),B.h,f,f,r,f,j,f,f,m,f,f,l) +r=l}else r=m +d=A.kD(r,f,f,B.cs,!0,e,f,f,B.aX) +if(a.au(t.U2)==null){e=g.a +e=e.z +d=A.cq(B.a2,A.a([d,A.eH(8,e==null?A.aa(f,f,B.h,f,f,B.uJ,f,1,f,f,f,f,f,f):e,f,f,0,0,f,f)],t.p),B.w,B.W,f)}e=A.bn(t.g) +if(!g.gqv())e.q(0,B.L) +h=A.dH(B.eD,e,t.Pb) +g.a.toString +e=g.w +e===$&&A.b() +r=g.gqv() +if(r)g.a.toString +r=r?g.gawH():f +if(g.gqv())g.a.toString +m=g.gqv() +l=g.gRd() +g.a.toString +e=A.rY(e,A.eQ(!1,g.ayb(a),m,d,f,!1,f,l,f,f,h,f,f,f,f,r,f,f,f,f)) +return new A.ck(A.cJ(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,f,f),!1,!1,!1,!1,e,f)}} +A.awD.prototype={ +$1(a){return this.a.QR()}, +$S:200} +A.awE.prototype={ +$1(a){return this.a.QR()}, +$S:201} +A.awA.prototype={ +$1(a){var s,r +if(a.w){s=a.r +r=this.a.a.e +r=s==null?r==null:s===r +s=r}else s=!1 +return s}, +$S(){return this.a.$ti.i("H(iN<1>)")}} +A.awx.prototype={ +$1(a){var s=this.a.e +if(s==null)return +s.jt[this.b]=a.b}, +$S:157} +A.awy.prototype={ +$0(){var s=this.a.gRd() +if(s!=null)s.iI()}, +$S:4} +A.awz.prototype={ +$1(a){var s,r=this.a +r.QS() +r.x.sk(0,!1) +s=r.gRd() +if(s!=null)s.jb() +s=r.a.x +if(s!=null)s.$1(!1) +if(r.c==null||a==null)return +r.a.w.$1(a.a)}, +$S(){return this.a.$ti.i("aF(mg<1>?)")}} +A.awB.prototype={ +$1(a){return new A.aB(null,this.a.a.db.a,a,null)}, +$S:438} +A.awC.prototype={ +$3(a,b,c){var s=this.a.a.cx +return s.a}, +$S:439} +A.arg.prototype={} +A.a1_.prototype={} +A.a_F.prototype={} +A.L7.prototype={} +A.awF.prototype={ +D(){return"DropdownDirection."+this.b}} +A.QX.prototype={} +A.a_G.prototype={ +D(){return"EasyButtonState."+this.b}} +A.a_H.prototype={ +D(){return"EasyButtonType."+this.b}} +A.IW.prototype={ +a0(){return new A.R3(new A.bG(null,t.A),B.j2,null,null)}} +A.R3.prototype={ +m(){var s=this.f +if(s!=null)s.m() +this.apW()}, +fn(){this.a2V() +this.oK()}, +aj(){this.a2V() +this.aw()}, +a2V(){var s,r=this +r.w=B.j2 +s=r.a +r.x=s.w +r.y=s.x +r.z=s.z}, +F(a){var s,r,q=this,p=q.z +p===$&&A.b() +p=A.bq(p) +s=q.y +s===$&&A.b() +r=q.x +r===$&&A.b() +return A.buY(p,new A.aB(r,s,q.asH(a),q.d),B.h,B.t,0,B.v,B.E)}, +asH(a){var s,r,q,p,o=this,n=null,m=o.a,l=new A.al(0,0,0,0),k=m.as,j=o.z +j===$&&A.b() +s=new A.cu(A.bq(j),B.x) +r=A.im(n,n,k,n,n,n,0,n,n,n,n,n,n,l,n,s,n,n,n,n,n) +q=A.buN(n,n,n,n,n,n,n,n,n,n,n,n,l,n,s,new A.br(k,1,B.I,-1),n,n,n,n) +p=A.OM(n,n,n,n,n,n,n,n,n,n,n,n,n,l,n,n,n,n,n,n) +switch(m.e.a){case 0:m=o.SD() +return A.f6(!1,o.PQ(a),n,n,B.a3,n,n,n,n,m,n,r) +case 1:m=o.SD() +return A.iA(!1,o.PQ(a),n,n,B.a3,n,n,n,n,m,n,q) +case 2:m=o.SD() +return A.iA(!1,o.PQ(a),n,n,B.a3,n,n,n,n,m,n,p)}}, +PQ(a){var s,r,q=this.a +q.toString +switch(this.w.a){case 0:s=q.c +break +case 1:r=q.x +s=new A.aB(r,r,q.d,null) +break +default:s=null}return s}, +SD(){this.a.toString +return this.gaEF()}, +I1(){return this.aEG()}, +aEG(){var s=0,r=A.n(t.z),q,p=this,o,n,m +var $async$I1=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:n={} +if(p.w!==B.j2){s=1 +break}n.a=null +p.a.toString +p.aLX() +p.axX(new A.b2B(n,p)) +o=p.a.at.$0() +m=n +s=3 +return A.f(t.L0.b(o)?o:A.en(o,t.z),$async$I1) +case 3:m.a=b +p.f.dq(0) +case 1:return A.l(q,r)}}) +return A.m($async$I1,r)}, +aLX(){this.J(new A.b2D(this))}, +aLW(){var s=this +if(s.c!=null)s.J(new A.b2C(s)) +else s.w=B.j2}, +axX(a){var s,r,q=this,p=$.aw.aR$.x.h(0,q.d).gv(0).a,o=q.a.z,n=q.y +n===$&&A.b() +s=q.f=A.c2(null,B.j0,null,null,q) +r=t.Y +s.a4(0,new A.b2A(q,p,n,o,n/2)) +s.fG(a) +q.e=new A.bf(s,new A.b0(0,1,r),r.i("bf")) +q.f.cd(0)}} +A.b2B.prototype={ +$1(a){var s,r +if(a===B.a9){this.b.aLW() +s=this.a.a +if(s!=null)r=t.M.b(s)||t.Gm.b(s) +else r=!1 +if(r)s.$0()}}, +$S:10} +A.b2D.prototype={ +$0(){this.a.w=B.a_6}, +$S:0} +A.b2C.prototype={ +$0(){this.a.w=B.j2}, +$S:0} +A.b2A.prototype={ +$0(){var s=this,r=s.a +r.J(new A.b2z(r,s.b,s.c,s.d,s.e))}, +$S:0} +A.b2z.prototype={ +$0(){var s=this,r=s.a,q=s.b,p=r.e,o=p.b +p=p.a +r.x=q-(q-s.c)*o.al(0,p.gk(p)) +p=s.d +o=r.e +q=o.b +o=o.a +r.z=p-(p-s.e)*q.al(0,o.gk(o))}, +$S:0} +A.UU.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.WC.prototype={} +A.a7o.prototype={ +M2(a,b,c){return this.aWC(0,b,c)}, +aWC(a,b,c){var s=0,r=A.n(t.nA),q,p,o +var $async$M2=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:p=B.b.bJ(A.a(c.u4("_").split("_"),t.s),"-") +$.lu().$3$level$stackTrace("Load asset from "+b,B.dQ,null) +o=B.a7 +s=3 +return A.f($.vX().X4(b+"/"+p+".json"),$async$M2) +case 3:q=o.ei(0,e) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$M2,r)}} +A.IX.prototype={ +a0(){return new A.af5()}} +A.af5.prototype={ +aj(){var s,r,q,p,o,n=this +$.lu().$3$level$stackTrace("Init state",B.dQ,null) +s=n.a +r=s.e +q=s.d +p=s.f +s=new A.a_I(new A.b2G(n),B.Tl,s.z,!1,!0,!1,null,$.aW()) +s.b=r +o=$.blU +if(o==null){r=A.bsO(q,p,null) +s.a=r +$.lu().$1("Start locale loaded "+r.u4("_"))}else{$.lu().$1("Saved locale loaded "+o.j(0)) +p=$.blU +p.toString +s.a=A.bI2(q,p,r)}n.e=s +s.a4(0,new A.b2H(n)) +n.aw()}, +m(){var s=this.e +s.toString +s.U$=$.aW() +s.M$=0 +this.ar()}, +F(a){var s,r,q,p,o=this,n=null +$.lu().$3$level$stackTrace("Build",B.dQ,n) +s=o.f +if(s!=null){o.a.toString +r=A.bIs(s) +s=new A.Ja(r,s,new A.kl()) +return s}s=o.a +s.toString +r=o.e +r.toString +$.lu().$3$level$stackTrace("Init Localization Delegate",B.dQ,n) +q=r.a +q===$&&A.b() +p=r.z +$.lu().$3$level$stackTrace("Init provider",B.dQ,n) +return new A.R4(s,r,q,new A.af4(s.d,r,!1,!0),p!=null,s.c,n)}} +A.b2G.prototype={ +$1(a){var s=this.a +s.J(new A.b2F(s,a))}, +$S:441} +A.b2F.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.b2H.prototype={ +$0(){var s=this.a +if(s.c!=null)s.J(new A.b2E())}, +$S:0} +A.b2E.prototype={ +$0(){}, +$S:0} +A.R4.prototype={ +dY(a){var s=this.r.a +s===$&&A.b() +return!a.w.l(0,s)||a.y!==this.y}} +A.af4.prototype={ +vj(a){return B.b.p(this.a,a)}, +iC(a,b){return this.aWD(0,b)}, +aWD(a,b){var s=0,r=A.n(t.ec),q,p=this,o,n,m +var $async$iC=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:$.lu().$3$level$stackTrace("Load Localization Delegate",B.dQ,null) +o=p.b +s=o.z==null?3:4 +break +case 3:s=5 +return A.f(o.M8(),$async$iC) +case 5:case 4:n=o.z +o=o.Q +m=$.xw +if(m==null)m=$.xw=A.aF5() +m.a=n +m.b=o +m.x=!1 +q=A.c7(m,t.ec) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$iC,r)}, +tu(a){return!1}} +A.a_I.prototype={ +M8(){var s=0,r=A.n(t.z),q=1,p,o=this,n,m,l,k,j,i,h,g +var $async$M8=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:i=null +q=3 +l=o.a +l===$&&A.b() +k=t.z +g=A +s=6 +return A.f(o.X5(l),$async$M8) +case 6:i=g.f7(b,t.N,k) +o.z=new A.aV1(i,A.w(t.T,k)) +o.T() +q=1 +s=5 +break +case 3:q=2 +h=p +l=A.v(h) +if(l instanceof A.og){n=l +o.d.$1(n)}else{m=l +o.d.$1(A.mP(J.p(m)))}s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$M8,r)}, +X5(a){return this.aWL(a)}, +aWL(a){var s=0,r=A.n(t.a),q,p=this +var $async$X5=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=p.GQ(p.e,p.y,a,p.f,!1) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$X5,r)}, +GQ(a,b,c,d,e){return this.auj(a,b,c,d,!1)}, +auj(a,b,c,d,e){var s=0,r=A.n(t.a),q,p,o,n,m,l +var $async$GQ=A.j(function(f,g){if(f===1)return A.k(g,r) +while(true)switch(s){case 0:n=A.w(t.N,t.z) +m=A.a([],t.n9) +l=[a] +for(p=l.length,o=0;o"),m=a;s.u();){l=s.d +k=(l==null?p.a(l):l).b[0] +k.toString +j=q.pf(0,k) +i=j.gav(0) +if(!i.u())A.V(A.cV()) +h=i.gI(0).b[0] +h.toString +i=j.gav(0) +if(!i.u())A.V(A.cV()) +g=i.gI(0).b[1] +h=A.dm(k,h,"") +f=d.a5z(A.dm(h,r,"")) +if(g!=null)if(o.N(0,g))f=o.h(0,g).$1(f) +else{h=$.lu() +e=A.tM(new A.aR(o,n),"(",")") +if(h.o3(0,B.jc))h.f.$4$level$name$stackTrace("Undefined modifier "+g+", available modifiers: "+e,B.jc,h.b,null)}if(!(f.length===0))m=A.dm(m,k,f)}return m}, +aIA(a,b){var s,r,q,p +if(b==null||b.length===0)return a +for(s=b.length,r=this.d,q=0;q") +m.e=o.z.a=A.a8(new A.ad(s,new A.bdu(n,o),p),!0,p.i("aN.E")) +m.T()}, +aw9(){this.aN8()}, +aN8(){var s,r,q=this,p=q.y +p===$&&A.b() +p=p.c.a +s=q.c +s.toString +r=q.a1f(p,s) +if(q.c!=null&&r!==q.d)q.J(new A.bdx(q,r))}, +b1(a){var s,r,q=this +q.bb(a) +s=q.a +s.toString +q.e=!1 +q.f=!1 +q.r=s.Q +if(s.c!==a.c||s.d!==a.d)q.a58() +s=q.a.r +if(s!==a.r){r=q.y +r===$&&A.b() +r.b=s +r.T()}}, +c1(){var s,r,q=this +q.ea() +s=q.y +s===$&&A.b() +s=s.c.a +r=q.c +r.toString +q.d=q.a1f(s,r)}, +aM0(){var s=this +if(s.x===B.O9)s.J(new A.bdv(s)) +else s.J(new A.bdw(s))}, +a5X(){var s,r=this.a.y +if(r!=null){s=this.y +s===$&&A.b() +r.$1(s.c.a)}}, +a1f(a,b){var s,r=this,q=r.y +q===$&&A.b() +s=q.b.a +if(a===B.rP)s=r.atB(b) +else if(a===B.cL)s=r.a1e() +else if(a===B.fv)s=r.a1d() +return s}, +atB(a){var s=A.cr(a,null,t.l).w,r=this.r +r===$&&A.b() +if(s.a.a>r)return this.a1e() +else return this.a1d()}, +a1e(){var s=this,r=s.y +r===$&&A.b() +r.c.abc(B.cL) +s.a5X() +A.eC(s.a8S(),new A.bdt(s),t.P) +r=r.b.a +return r}, +a1d(){var s=this.y +s===$&&A.b() +s.c.abc(B.fv) +this.a5X() +s.sZM(!1) +s=s.b.b +return s}, +aKG(a){var s=null,r=this.y +r===$&&A.b() +r=r.b.c +return new A.bb(r,s,s,s,s,s,s,B.E)}, +a8S(){this.a.toString +return B.ZZ}, +F(a){var s=this.y +s===$&&A.b() +return A.Am(null,new A.fi(new A.bdB(this),null),s,t.zR)}, +m(){var s=this.y +s===$&&A.b() +s.c.K(0,this.ga2J()) +s.U$=$.aW() +s.M$=0 +this.ar()}} +A.bdu.prototype={ +$1(a){var s=null,r=this.b.y +r===$&&A.b() +r=A.bNC(s,s,s,r,s,a.d,a.b,a.a,s,s) +return r}, +$S:468} +A.bdx.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.bdv.prototype={ +$0(){this.a.x=B.O8}, +$S:0} +A.bdw.prototype={ +$0(){this.a.x=B.O9}, +$S:0} +A.bdt.prototype={ +$0(){var s=this.a +if(s.c!=null){s=s.y +s===$&&A.b() +s.sZM(!0)}}, +$S:4} +A.bdB.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k=null,j=this.a +A.fX(k,k,k,k,B.a1K,k,j.gaM_(),k,k,k,k) +s=j.y +s===$&&A.b() +s.b.toString +r=j.a8S() +q=j.d +p=A.cr(a,B.fO,t.l).w +o=j.aKG(j.a.r) +n=t.p +m=A.a([],n) +l=s.b +if(l.r===B.fv){l=j.e +l===$&&A.b()}else l=!1 +if(l)m.push(B.any) +m.push(j.a.e) +l=j.z.a +l===$&&A.b() +B.b.G(m,l) +m=A.a([A.m2(A.b2(m,B.ap,B.o,B.k,B.r),k,B.S,k,k,B.aw)],n) +j.a.toString +if(s.b.r!==B.rP){l=j.e +l===$&&A.b()}else l=!1 +if(l){l=s.c.a===B.cL?0:4 +m.push(new A.be(new A.al(l,0,l,0),A.bt(A.a([new A.NQ(new A.bdA(j,a),s,k)],n),B.l,B.cD,B.k),k))}j=A.bqZ(A.cq(B.a2,m,B.w,B.W,k),o,r,p.a.b,q) +return j}, +$S:13} +A.bdA.prototype={ +$0(){var s,r=this.b.o_(t.Rt)==null&&null +if(r===!0)return +r=this.a +s=r.y +s===$&&A.b() +s=s.c.a +if(s===B.fv)r.J(new A.bdy(r)) +else if(s===B.cL)r.J(new A.bdz(r))}, +$S:4} +A.bdy.prototype={ +$0(){var s=this.a.y +s===$&&A.b() +s.b.r=B.cL}, +$S:0} +A.bdz.prototype={ +$0(){var s=this.a.y +s===$&&A.b() +s.b.r=B.fv}, +$S:0} +A.NO.prototype={} +A.qU.prototype={ +D(){return"SideMenuDisplayMode."+this.b}} +A.aRC.prototype={} +A.a8c.prototype={ +D(){return"SideMenuHamburgerMode."+this.b}} +A.NP.prototype={$iaRE:1} +A.aRD.prototype={} +A.Dw.prototype={ +a0(){return new A.Tv()}} +A.Tv.prototype={ +gacf(){var s,r=this.d +if(r===$){s=this.a.e.a +s===$&&A.b() +s=s.a +s===$&&A.b() +r=this.d=s}return r}, +aj(){this.aw() +$.aw.p2$.push(new A.bds(this))}, +m(){var s,r=this +r.f=!0 +s=r.a.e.a +s===$&&A.b() +s=s.b +new A.aG(s,A.y(s).i("aG<1>")).bL(r.ga83()).S(0) +r.ar()}, +aKH(a){if(this.c!=null)this.J(new A.bdm(this,a))}, +aeI(a){var s=this.a +s=a.f===s.f +if(s)return!0 +else return!1}, +Rq(){var s,r,q,p,o,n +for(s=this.a.e.e,r=s.length,q=0,p=0;p")).bL(r.ga83())}}, +$S:3} +A.bdm.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.bdr.prototype={ +$3(a,b,c){var s,r,q=null,p=this.a +p.a.toString +s=b.b +r=s.dx +s=s.fr +p=A.eQ(!1,q,!0,new A.be(r,A.aa(q,new A.fu(b.c,new A.bdo(p,b),q,q,t.ID),B.h,q,q,new A.bb(p.aK4(),q,q,b.b.fx,q,q,q,B.E),q,s,q,q,q,q,q,1/0),q),q,!0,B.t,q,B.t,B.t,q,q,q,new A.bdp(p),q,new A.bdq(p,b),q,B.t,q,q) +return p}, +$C:"$3", +$R:3, +$S:469} +A.bdq.prototype={ +$0(){var s,r=this.a,q=r.a.d +r=r.Rq() +s=this.b.a +s===$&&A.b() +s=q.$2(r,s) +return s}, +$S:0} +A.bdp.prototype={ +$1(a){var s=this.a +if(s.c!=null)s.J(new A.bdn(s,a))}, +$S:11} +A.bdn.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.bdo.prototype={ +$3(a,b,c){var s,r,q,p,o,n,m,l=this,k=null,j=J.dd(b),i=j.l(b,B.fv) +if(i)l.b.b.toString +if(i)i=l.a.a.f +else i="" +s=j.l(b,B.fv) +r=l.b +q=r.b +if(s)s=q.dy +else s=q.dy +p=l.a +o=p.a +n=t.p +o=A.a([new A.aB(q.dy*2,k,k,k),p.ay1(o.r,o.w),new A.aB(r.b.dy,k,k,k)],n) +if(j.l(b,B.cL)){j=p.a.f +q=p.Rq() +m=B.e.dZ(p.gacf()) +r=r.b +j=A.a([A.cf(A.X(j,k,B.al,k,k,q===m?B.arF.cO(r.w):B.arG.cO(r.x),k,k),1)],n) +p.a.toString +B.b.G(o,j)}return A.bnZ(new A.be(new A.al(0,s,0,s),A.bt(o,B.l,B.o,B.k),k),k,i,k,k,k,k,k)}, +$S:472} +A.aRF.prototype={} +A.NQ.prototype={ +a0(){return new A.akp()}} +A.akp.prototype={ +F(a){var s=null,r=this.a.d,q=r.c.a===B.cL,p=q?4:0 +q=q?0:2 +r=r.b.r===B.cL?B.a1y:B.a1z +return new A.be(new A.al(0,p,q,0),A.fX(B.ab,s,s,s,A.bFk(r,B.bl,new A.bdC()),s,new A.bdD(this),s,s,s,s),s)}} +A.bdC.prototype={ +$2(a,b){var s=t.Y,r=s.i("bf") +s=J.e(a.a,B.Px)?new A.bf(b,new A.b0(1,0.5,s),r):new A.bf(b,new A.b0(0.5,1,s),r) +return A.bnA(new A.eB(b,!1,a,null),s)}, +$S:473} +A.bdD.prototype={ +$0(){this.a.a.c.$0()}, +$S:0} +A.Jc.prototype={ +vr(a,b){var s,r=this.a,q=A.y(r) +if(A.cK(b)===B.tM)return b.i("b7<0>").a(new A.aG(r,q.i("aG<1>"))) +else{q=q.i("aG<1>") +s=q.i("zI") +return new A.wc(new A.zI(new A.ayh(b),new A.aG(r,q),s),s.i("@").aH(b).i("wc<1,2>"))}}, +ex(){this.a.L(0)}} +A.ayh.prototype={ +$1(a){return this.a.b(a)}, +$S:48} +A.asp.prototype={} +A.bbD.prototype={} +A.L3.prototype={ +gW1(){return B.eT}, +KY(){this.a.d.$2(this.b,B.xj) +var s=this.gUO() +return(s==null?null:s.gGa(0).d)===B.eT}, +aR8(a){var s,r=this.b +this.a.d.$2(r,B.a0v) +s=this.aes(new A.aIg(!1),!0,!0) +if((s==null?null:s.gi_(s))!==B.eT)throw A.d(A.bjD(r))}, +aca(){return this.aR8(!1)}, +Vq(a){return this.aR9(a)}, +aR9(a){var s=0,r=A.n(t.m3),q,p=this +var $async$Vq=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=p.acb(a) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Vq,r)}, +acb(a){var s,r,q,p,o={},n=this.a,m=n.c,l=m.WZ(0,this.b,a+"rand"),k=m.aRO(l),j=A.qt(l,m.a).gJI(),i=t.y9.a(n.Lk(k)) +if(i==null)A.V(A.bpD(A.bS(new A.aIh(k).$0()))) +i.toString +A.bUY(i,new A.aIi(k)) +s=$.bqo() +A.wL(n) +r=s.a.get(n) +o.a=r==null?0:r +q=new A.aIj(o,j) +for(s=i.r;s.N(0,q.$0());)++o.a +$.bqo().n(0,n,o.a) +p=A.bsh(i) +s.n(0,q.$0(),p) +n=new A.L3(n,m.WZ(0,k,q.$0())) +n.aca() +return n}, +j(a){return"MemoryDirectory: '"+this.b+"'"}, +$iAX:1, +$iblD:1} +A.aIg.prototype={ +$2(a,b){if(this.a||b)return A.bsh(a) +return null}, +$S:474} +A.aIh.prototype={ +$0(){return this.a}, +$S:17} +A.aIi.prototype={ +$0(){return this.a}, +$S:17} +A.aIj.prototype={ +$0(){return this.b+this.a.a}, +$S:17} +A.ah6.prototype={} +A.L4.prototype={ +gaJ_(){var s,r=this,q=r.gUO() +if(q==null)q=r.awk() +else{s=q.gi_(q) +if(s===B.lu)q=A.bjX(t.C5.a(q),new A.aIr(r),null,null) +A.bpa(B.hk,q.gi_(q),new A.aIs(r))}return t.jL.a(q)}, +gW1(){return B.hk}, +KY(){this.a.d.$2(this.b,B.xj) +var s=this.gUO() +return(s==null?null:s.gGa(0).d)===B.hk}, +awk(){var s=this.aVP(new A.aIq(!1),!0) +if((s==null?null:s.gi_(s))!==B.hk)throw A.d(A.bA0(this.b)) +return s}, +nd(a){var s=0,r=A.n(t.S),q,p=this +var $async$nd=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=t.jL.a(p.gY4()).r.length +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$nd,r)}, +M_(a){var s=0,r=A.n(t.CG),q,p=this +var $async$M_=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=t.jL.a(p.gY4()).gGa(0).b +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$M_,r)}, +zg(){var s=0,r=A.n(t.D),q,p=this +var $async$zg=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:q=p.ag8() +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$zg,r)}, +ag8(){this.a.d.$2(this.b,B.a0t) +return new Uint8Array(A.e7(t.jL.a(this.gY4()).r))}, +oj(){var s=0,r=A.n(t.N),q,p=this +var $async$oj=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:q=p.b_2(B.a5) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$oj,r)}, +b_2(a){var s,r,q +try{r=a.ei(0,this.ag8()) +return r}catch(q){r=A.v(q) +if(t.bE.b(r)){s=r +throw A.d(A.aze(J.bqL(s),this.b,null))}else throw q}}, +j(a){return"MemoryFile: '"+this.b+"'"}, +$ioe:1, +$ibm4:1} +A.aIr.prototype={ +$0(){return this.a.b}, +$S:17} +A.aIs.prototype={ +$0(){return this.a.b}, +$S:17} +A.aIq.prototype={ +$2(a,b){var s +if(b){s=new A.kJ(new Uint8Array(0),a) +s.Pm(a) +return s}return null}, +$S:480} +A.afs.prototype={ +gLT(){var s=this.c +s=s==null?null:(s.a.a&30)!==0 +return s===!1}, +q(a,b){if(this.gLT())A.V(A.a1("StreamSink is bound to a stream")) +if(this.d)throw A.d(A.a1("StreamSink is closed")) +this.a0r(b)}, +cX(a,b){if(this.gLT())A.V(A.a1("StreamSink is bound to a stream")) +this.a.dh(a,b)}, +nI(a,b){var s=this +if(s.gLT())A.V(A.a1("StreamSink is bound to a stream")) +s.c=new A.aq(new A.a_($.ab,t.U),t.h) +b.aK(new A.b3O(s),!0,new A.b3P(s),new A.b3Q(s)) +return s.c.a}, +L(a){var s=this +if(s.gLT())A.V(A.a1("StreamSink is bound to a stream")) +if(!s.d){s.d=!0 +s.b.cv(new A.b3R(s),new A.b3S(s),t.H)}return s.a.a}, +a0r(a){this.b=this.b.ak(new A.b3N(a),t.jL)}, +$ice:1} +A.b3M.prototype={ +$0(){var s,r,q=this.a.a +if(q!=null)throw A.d(q) +q=this.c +s=q.b2() +r=this.d +if(r===B.lt||r===B.xh)s.r=new Uint8Array(0) +return q.b2()}, +$S:487} +A.b3O.prototype={ +$1(a){return this.a.a0r(a)}, +$S:96} +A.b3Q.prototype={ +$2(a,b){var s=this.a +s.c.dh(a,b) +s.c=null}, +$S:25} +A.b3P.prototype={ +$0(){var s=this.a +s.c.d8(0) +s.c=null}, +$S:0} +A.b3R.prototype={ +$1(a){return this.a.a.d8(0)}, +$S:489} +A.b3S.prototype={ +$2(a,b){return this.a.a.dh(a,b)}, +$S:32} +A.b3N.prototype={ +$1(a){a.eC(0,this.a) +return a}, +$S:497} +A.aIk.prototype={} +A.b9R.prototype={ +acC(a,b){return new A.L3(this,this.Z3(b))}, +adn(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.ki(a)>0){r=e.a +a=B.c.bE(a,0)}else{s=s.b +r=t.y9.a(e.Lk(s==null?A.bpi():s))}}$.aoW() +q=A.a(a.split("/"),t.s) +if(!!q.fixed$length)A.V(A.ag("removeWhere")) +B.b.mQ(q,A.bY2(),!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.gbt(p) +p=g?d:p.gbt(p) +break +default:j=p==null?d:p.r.h(0,h)}g=new A.b9T(e,q,i) +if((j==null?d:j.gi_(j))===B.lu)f=i#"+A.c5(this)+"("+this.EJ()+")"}, +EJ(){switch(this.gbi(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}} +A.Ew.prototype={ +D(){return"_AnimationDirection."+this.b}} +A.Wg.prototype={ +D(){return"AnimationBehavior."+this.b}} +A.A5.prototype={ +gk(a){var s=this.x +s===$&&A.b() +return s}, +sk(a,b){var s=this +s.f_(0) +s.Sd(b) +s.T() +s.Ay()}, +gkl(){var s=this.r +if(!(s!=null&&s.a!=null))return 0 +s=this.w +s.toString +return s.j0(0,this.y.a/1e6)}, +Sd(a){var s=this,r=s.a,q=s.b,p=s.x=A.M(a,r,q) +if(p===r)s.Q=B.a9 +else if(p===q)s.Q=B.am +else{switch(s.z.a){case 0:r=B.cR +break +case 1:r=B.ci +break +default:r=null}s.Q=r}}, +gmi(){var s=this.r +return s!=null&&s.a!=null}, +gbi(a){var s=this.Q +s===$&&A.b() +return s}, +n5(a,b){var s=this +s.z=B.b5 +if(b!=null)s.sk(0,b) +return s.a0I(s.b)}, +cd(a){return this.n5(0,null)}, +agO(a,b){var s=this +s.z=B.kp +if(b!=null)s.sk(0,b) +return s.a0I(s.a)}, +dq(a){return this.agO(0,null)}, +jP(a,b,c){var s,r,q,p,o,n,m,l,k,j=this,i=j.d +$label0$0:{s=B.ok===i +if(s){r=$.a81.L3$ +r===$&&A.b() +q=(r.a&4)!==0 +r=q}else r=!1 +if(r){r=0.05 +break $label0$0}if(s||B.ol===i){r=1 +break $label0$0}r=null}if(c==null){p=j.b-j.a +if(isFinite(p)){o=j.x +o===$&&A.b() +n=Math.abs(a-o)/p}else n=1 +if(j.z===B.kp&&j.f!=null){o=j.f +o.toString +m=o}else{o=j.e +o.toString +m=o}l=new A.bj(B.d.aa(m.a*n))}else{o=j.x +o===$&&A.b() +l=a===o?B.F:c}j.f_(0) +o=l.a +if(o===B.F.a){r=j.x +r===$&&A.b() +if(r!==a){j.x=A.M(a,j.a,j.b) +j.T()}j.Q=j.z===B.b5?B.am:B.a9 +j.Ay() +return A.bnX()}k=j.x +k===$&&A.b() +return j.IU(new A.b8L(o*r/1e6,k,a,b,B.dx))}, +a0I(a){return this.jP(a,B.X,null)}, +agv(a,b){var s,r,q=this,p=q.a,o=q.b,n=q.e +q.f_(0) +s=q.x +s===$&&A.b() +r=n.a/1e6 +s=o===p?0:(A.M(s,p,o)-p)/(o-p)*r +return q.IU(new A.bch(p,o,b,q.gavV(),r,s,B.dx))}, +vG(a){return this.agv(0,!1)}, +avW(a){this.z=a +this.Q=a===B.b5?B.cR:B.ci +this.Ay()}, +Ll(a){var s,r,q,p,o,n,m=this,l=$.bDC(),k=a<0 +m.z=k?B.kp:B.b5 +s=k?m.a-0.01:m.b+0.01 +r=m.d +$label0$0:{q=B.ok===r +if(q){k=$.a81.L3$ +k===$&&A.b() +p=(k.a&4)!==0 +k=p}else k=!1 +if(k){k=200 +break $label0$0}if(q||B.ol===r){k=1 +break $label0$0}k=null}o=m.x +o===$&&A.b() +n=new A.Oh(s,A.FT(l,o-s,a*k),B.dx) +n.a=B.auv +m.f_(0) +return m.IU(n)}, +UE(a){this.f_(0) +this.z=B.b5 +return this.IU(a)}, +IU(a){var s,r=this +r.w=a +r.y=B.F +r.x=A.M(a.i1(0,0),r.a,r.b) +s=r.r.mF(0) +r.Q=r.z===B.b5?B.cR:B.ci +r.Ay() +return s}, +A9(a,b){this.y=this.w=null +this.r.A9(0,b)}, +f_(a){return this.A9(0,!0)}, +m(){var s=this +s.r.m() +s.r=null +s.ec$.V(0) +s.dR$.V(0) +s.Gm()}, +Ay(){var s=this,r=s.Q +r===$&&A.b() +if(s.as!==r){s.as=r +s.Eb(r)}}, +asj(a){var s,r=this +r.y=a +s=a.a/1e6 +r.x=A.M(r.w.i1(0,s),r.a,r.b) +if(r.w.pL(s)){r.Q=r.z===B.b5?B.am:B.a9 +r.A9(0,!1)}r.T() +r.Ay()}, +EJ(){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.Gl() +q=this.x +q===$&&A.b() +return r+" "+B.d.aF(q,3)+p+s}} +A.b8L.prototype={ +i1(a,b){var s,r=this,q=A.M(b/r.b,0,1) +$label0$0:{if(0===q){s=r.c +break $label0$0}if(1===q){s=r.d +break $label0$0}s=r.c +s+=(r.d-s)*r.e.al(0,q) +break $label0$0}return s}, +j0(a,b){return(this.i1(0,b+0.001)-this.i1(0,b-0.001))/0.002}, +pL(a){return a>this.b}} +A.bch.prototype={ +i1(a,b){var s,r,q,p=this,o=b+p.r,n=p.f,m=B.d.an(o/n,1),l=(B.d.im(o,n)&1)===1 +n=p.d&&l +s=p.e +r=p.c +q=p.b +if(n){s.$1(B.kp) +n=A.ak(r,q,m) +n.toString +return n}else{s.$1(B.b5) +n=A.ak(q,r,m) +n.toString +return n}}, +j0(a,b){return(this.c-this.b)/this.f}, +pL(a){return!1}} +A.acK.prototype={} +A.acL.prototype={} +A.acM.prototype={} +A.Wi.prototype={ +l(a,b){var s,r,q=this +if(b==null)return!1 +if(q===b)return!0 +if(J.ah(b)!==A.K(q))return!1 +s=!1 +if(b instanceof A.Wi){r=b.b +if(r.a===q.b.a){r=b.d +s=r.a===q.d.a}}return s}, +gB(a){return A.a4(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.acN.prototype={} +A.acz.prototype={ +a4(a,b){}, +K(a,b){}, +fG(a){}, +dX(a){}, +gbi(a){return B.am}, +gk(a){return 1}, +j(a){return"kAlwaysCompleteAnimation"}} +A.acA.prototype={ +a4(a,b){}, +K(a,b){}, +fG(a){}, +dX(a){}, +gbi(a){return B.a9}, +gk(a){return 0}, +j(a){return"kAlwaysDismissedAnimation"}} +A.nY.prototype={ +a4(a,b){}, +K(a,b){}, +fG(a){}, +dX(a){}, +gbi(a){return B.cR}, +EJ(){return this.Gl()+" "+A.c(this.a)+"; paused"}, +gk(a){return this.a}} +A.t1.prototype={ +a4(a,b){return this.gbt(this).a4(0,b)}, +K(a,b){return this.gbt(this).K(0,b)}, +fG(a){return this.gbt(this).fG(a)}, +dX(a){return this.gbt(this).dX(a)}, +gbi(a){var s=this.gbt(this) +return s.gbi(s)}} +A.Mo.prototype={ +sbt(a,b){var s,r=this,q=r.c +if(b==q)return +if(q!=null){r.a=q.gbi(q) +q=r.c +r.b=q.gk(q) +if(r.rm$>0)r.KE()}r.c=b +if(b!=null){if(r.rm$>0)r.KD() +q=r.b +s=r.c +s=s.gk(s) +if(q==null?s!=null:q!==s)r.T() +q=r.a +s=r.c +if(q!==s.gbi(s)){q=r.c +r.Eb(q.gbi(q))}r.b=r.a=null}}, +KD(){var s=this,r=s.c +if(r!=null){r.a4(0,s.geS()) +s.c.fG(s.gaff())}}, +KE(){var s=this,r=s.c +if(r!=null){r.K(0,s.geS()) +s.c.dX(s.gaff())}}, +gbi(a){var s=this.c +if(s!=null)s=s.gbi(s) +else{s=this.a +s.toString}return s}, +gk(a){var s=this.c +if(s!=null)s=s.gk(s) +else{s=this.b +s.toString}return s}, +j(a){var s=this.c +if(s==null)return"ProxyAnimation(null; "+this.Gl()+" "+B.d.aF(this.gk(0),3)+")" +return s.j(0)+"\u27a9ProxyAnimation"}} +A.la.prototype={ +a4(a,b){this.ct() +this.a.a4(0,b)}, +K(a,b){this.a.K(0,b) +this.KF()}, +KD(){this.a.fG(this.gxv())}, +KE(){this.a.dX(this.gxv())}, +IV(a){this.Eb(this.a7g(a))}, +gbi(a){var s=this.a +return this.a7g(s.gbi(s))}, +gk(a){var s=this.a +return 1-s.gk(s)}, +a7g(a){var s +switch(a.a){case 1:s=B.ci +break +case 2:s=B.cR +break +case 3:s=B.a9 +break +case 0:s=B.am +break +default:s=null}return s}, +j(a){return this.a.j(0)+"\u27aaReverseAnimation"}} +A.I7.prototype={ +a9f(a){var s +if(a.gmi()){s=this.d +if(s==null)s=a}else s=null +this.d=s}, +ga9Q(){if(this.c!=null){var s=this.d +if(s==null){s=this.a +s=s.gbi(s)}s=s!==B.ci}else s=!0 +return s}, +m(){this.a.dX(this.gJ8())}, +gk(a){var s=this,r=s.ga9Q()?s.b:s.c,q=s.a,p=q.gk(q) +if(r==null)return p +if(p===0||p===1)return p +return r.al(0,p)}, +j(a){var s=this +if(s.c==null)return s.a.j(0)+"\u27a9"+s.b.j(0) +if(s.ga9Q())return s.a.j(0)+"\u27a9"+s.b.j(0)+"\u2092\u2099/"+A.c(s.c) +return s.a.j(0)+"\u27a9"+s.b.j(0)+"/"+A.c(s.c)+"\u2092\u2099"}, +gbt(a){return this.a}} +A.alP.prototype={ +D(){return"_TrainHoppingMode."+this.b}} +A.z_.prototype={ +IV(a){if(a!==this.e){this.T() +this.e=a}}, +gbi(a){var s=this.a +return s.gbi(s)}, +aNf(){var s,r,q,p=this,o=p.b +if(o!=null){switch(p.c.a){case 0:o=o.gk(o) +s=p.a +s=o<=s.gk(s) +o=s +break +case 1:o=o.gk(o) +s=p.a +s=o>=s.gk(s) +o=s +break +default:o=null}if(o){s=p.a +r=p.gxv() +s.dX(r) +s.K(0,p.gUh()) +s=p.b +p.a=s +p.b=null +s.fG(r) +r=p.a +p.IV(r.gbi(r))}q=o}else q=!1 +o=p.a +o=o.gk(o) +if(o!==p.f){p.T() +p.f=o}if(q&&p.d!=null)p.d.$0()}, +gk(a){var s=this.a +return s.gk(s)}, +m(){var s,r,q=this +q.a.dX(q.gxv()) +s=q.gUh() +q.a.K(0,s) +q.a=null +r=q.b +if(r!=null)r.K(0,s) +q.b=null +q.dR$.V(0) +q.ec$.V(0) +q.Gm()}, +j(a){var s=this +if(s.b!=null)return A.c(s.a)+"\u27a9TrainHoppingAnimation(next: "+A.c(s.b)+")" +return A.c(s.a)+"\u27a9TrainHoppingAnimation(no next)"}} +A.AA.prototype={ +KD(){var s,r=this,q=r.a,p=r.ga5H() +q.a4(0,p) +s=r.ga5I() +q.fG(s) +q=r.b +q.a4(0,p) +q.fG(s)}, +KE(){var s,r=this,q=r.a,p=r.ga5H() +q.K(0,p) +s=r.ga5I() +q.dX(s) +q=r.b +q.K(0,p) +q.dX(s)}, +gbi(a){var s=this.b +if(s.gbi(s).gmi())s=s.gbi(s) +else{s=this.a +s=s.gbi(s)}return s}, +j(a){return"CompoundAnimation("+this.a.j(0)+", "+this.b.j(0)+")"}, +aEU(a){var s=this +if(s.gbi(0)!==s.c){s.c=s.gbi(0) +s.Eb(s.gbi(0))}}, +aET(){var s=this +if(!J.e(s.gk(s),s.d)){s.d=s.gk(s) +s.T()}}} +A.GV.prototype={ +gk(a){var s,r=this.a +r=r.gk(r) +s=this.b +s=s.gk(s) +return Math.min(A.iE(r),A.iE(s))}} +A.Qn.prototype={} +A.Qo.prototype={} +A.Qp.prototype={} +A.aef.prototype={} +A.aiB.prototype={} +A.aiC.prototype={} +A.aiD.prototype={} +A.ajH.prototype={} +A.ajI.prototype={} +A.alM.prototype={} +A.alN.prototype={} +A.alO.prototype={} +A.LZ.prototype={ +al(a,b){return this.q4(b)}, +q4(a){throw A.d(A.cE(null))}, +j(a){return"ParametricCurve"}} +A.iK.prototype={ +al(a,b){if(b===0||b===1)return b +return this.an1(0,b)}} +A.RZ.prototype={ +q4(a){return a}} +A.Ng.prototype={ +q4(a){a*=this.a +return a-(a<0?Math.ceil(a):Math.floor(a))}, +j(a){return"SawTooth("+this.a+")"}} +A.eF.prototype={ +q4(a){var s=this.a +a=A.M((a-s)/(this.b-s),0,1) +if(a===0||a===1)return a +return this.c.al(0,a)}, +j(a){var s=this,r=s.c +if(!(r instanceof A.RZ))return"Interval("+A.c(s.a)+"\u22ef"+A.c(s.b)+")\u27a9"+r.j(0) +return"Interval("+A.c(s.a)+"\u22ef"+A.c(s.b)+")"}} +A.a8U.prototype={ +al(a,b){var s +if(b===0||b===1)return b +s=this.a +if(b===s)return s +if(b#"+A.c5(this)+"("+A.c(this.a)+", "+B.X.j(0)+", "+this.c.j(0)+")"}, +ku(a,b){return this.a.$1(b)}} +A.P3.prototype={ +q4(a){return a"))}} +A.bf.prototype={ +gk(a){var s=this.a +return this.b.al(0,s.gk(s))}, +j(a){var s=this.a,r=this.b +return s.j(0)+"\u27a9"+r.j(0)+"\u27a9"+A.c(r.al(0,s.gk(s)))}, +EJ(){return this.Gl()+" "+this.b.j(0)}, +gbt(a){return this.a}} +A.fO.prototype={ +al(a,b){return this.b.al(0,this.a.al(0,b))}, +j(a){return this.a.j(0)+"\u27a9"+this.b.j(0)}} +A.b0.prototype={ +fW(a){var s=this.a +return A.y(this).i("b0.T").a(J.pn(s,J.bqG(J.VX(this.b,s),a)))}, +al(a,b){var s,r=this +if(b===0){s=r.a +return s==null?A.y(r).i("b0.T").a(s):s}if(b===1){s=r.b +return s==null?A.y(r).i("b0.T").a(s):s}return r.fW(b)}, +j(a){return"Animatable("+A.c(this.a)+" \u2192 "+A.c(this.b)+")"}, +sUQ(a){return this.a=a}, +sbV(a,b){return this.b=b}} +A.Na.prototype={ +fW(a){return this.c.fW(1-a)}} +A.fU.prototype={ +fW(a){return A.U(this.a,this.b,a)}} +A.a8k.prototype={ +fW(a){return A.NW(this.a,this.b,a)}} +A.Mx.prototype={ +fW(a){return A.bnu(this.a,this.b,a)}} +A.tK.prototype={ +fW(a){var s,r=this.a +r.toString +s=this.b +s.toString +return B.d.aa(r+(s-r)*a)}} +A.AD.prototype={ +fW(a){var s=this.a +return s==null?this.$ti.c.a(s):s}, +j(a){return"ConstantTween(value: "+A.c(this.a)+")"}} +A.hZ.prototype={ +al(a,b){if(b===0||b===1)return b +return this.a.al(0,b)}, +j(a){return"CurveTween(curve: "+this.a.j(0)+")"}} +A.UD.prototype={} +A.Pi.prototype={ +ar4(a,b){var s,r,q,p,o,n,m,l=this.a +B.b.G(l,a) +for(s=l.length,r=0,q=0;q=n&&b=this.a&&b"}} +A.HT.prototype={ +a0(){return new A.ae_(null,null)}} +A.ae_.prototype={ +aj(){var s,r=this +r.aw() +s=A.c2(null,B.bK,null,null,r) +r.d=s +if(r.a.d)s.vG(0)}, +b1(a){var s,r +this.bb(a) +s=this.a.d +if(s!==a.d){r=this.d +if(s){r===$&&A.b() +r.vG(0)}else{r===$&&A.b() +r.f_(0)}}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.apP()}, +F(a){var s,r=null,q=this.a +q.toString +s=this.d +s===$&&A.b() +q=q.c +if(q==null)q=B.Yk.e2(a) +return new A.aB(20,20,A.fB(r,r,r,new A.adZ(s,q,10,this.a.f,A.bMu(-1,-3.3333333333333335,1,-10,1,1),s),B.V),r)}} +A.adZ.prototype={ +aT(a,b){var s,r,q,p,o,n,m,l,k=this,j=$.ap().br() +a.en(0) +a.bs(0,b.a/2,b.b/2) +s=k.b.x +s===$&&A.b() +r=B.d.dv(8*s) +for(s=k.e,q=8*s,p=k.f,s=s<1,o=k.c,n=0;n>>16&255,o.gk(o)>>>8&255,o.gk(o)&255)) +a.dk(p,j) +a.rY(0,0.7853981633974483)}a.el(0)}, +ff(a){return a.b!==this.b||!a.c.l(0,this.c)||a.e!==this.e}} +A.UM.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.HU.prototype={ +a0(){return new A.Qw(new A.b0(1,null,t.Y),null,null)}} +A.Qw.prototype={ +aj(){var s,r,q,p=this +p.aw() +p.r=!1 +s=A.c2(null,B.T,null,0,p) +p.e=s +r=t.m +q=p.d +p.f=new A.bf(r.a(new A.bf(r.a(s),new A.hZ(B.fX),t.HY.i("bf"))),q,q.$ti.i("bf")) +p.a7V()}, +b1(a){this.bb(a) +this.a7V()}, +a7V(){var s=this.a.x +this.d.b=s}, +m(){var s=this.e +s===$&&A.b() +s.m() +this.apQ()}, +aCp(a){if(!this.w){this.w=!0 +this.GE(0)}}, +aCv(a){if(this.w){this.w=!1 +this.GE(0)}}, +aCn(){if(this.w){this.w=!1 +this.GE(0)}}, +GE(a){var s,r,q,p=this.e +p===$&&A.b() +s=p.r +if(s!=null&&s.a!=null)return +r=this.w +if(r){p.z=B.b5 +q=p.jP(1,B.aun,B.ZM)}else{p.z=B.b5 +q=p.jP(0,B.Yb,B.ZT)}q.ak(new A.b0c(this,r),t.H)}, +aGc(a){this.J(new A.b0d(this,a))}, +F(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null,c=e.a.r==null,b=!c,a=A.I5(a2),a0=a.gj6(),a1=e.a.e +if(a1==null)s=d +else s=a1 instanceof A.dP?a1.e2(a2):a1 +a1=s==null +r=!a1 +if(r)q=a.gpZ() +else if(b)q=a0 +else{p=B.Yl.e2(a2) +q=p}e.a.toString +a1=a1?B.wh:s +a1=A.btn(A.Y(204,a1.gk(a1)>>>16&255,a1.gk(a1)>>>8&255,a1.gk(a1)&255)) +o=new A.Bw(a1.a,a1.b,0.835,0.69).ah1() +n=a.gzp().ghK().cc(q) +m=A.aC6(a2).cc(q) +a1=b?B.dt:B.cU +p=e.a +p.toString +l=b?e.gaCo():d +k=b?e.gaCu():d +j=b?e.gaCm():d +i=p.w +h=e.f +h===$&&A.b() +if(b){g=e.r +g===$&&A.b()}else g=!1 +if(g){g=new A.br(o,3.5,B.I,1) +g=new A.f4(g,g,g,g)}else g=d +if(r&&c){c=p.f +if(c instanceof A.dP)c=c.e2(a2)}else c=s +r=e.a +f=r.d +c=A.Ih(new A.be(f,new A.fh(r.z,1,1,A.kD(A.BA(r.c,m,d),d,d,B.cs,!0,n,d,d,B.aX),d),d),new A.bb(c,d,g,p.y,d,d,d,B.E),B.h5) +return A.ov(A.bmh(d,!1,A.fn(B.aU,new A.ck(A.cJ(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,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),!1,!1,!1,!1,new A.ep(new A.au(i,1/0,i,1/0),new A.eB(h,!1,c,d),d),d),B.S,!1,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,d,p.r,j,l,k,d,d,d,!1,B.aV),b,d,B.cU,d,e.gaGb(),d,d),a1,d,d,d,d)}} +A.b0c.prototype={ +$1(a){var s=this.a +if(s.c!=null&&this.b!==s.w)s.GE(0)}, +$S:20} +A.b0d.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.UN.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.dP.prototype={ +gk(a){return this.b.a}, +gBd(){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)}, +gBb(){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)}, +gBc(){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)}, +e2(a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=this,a4=null +if(a3.gBd()){s=a5.au(t.ri) +r=s==null?a4:s.w.c.gpm() +if(r==null){r=A.de(a5,B.u9) +r=r==null?a4:r.e}q=r==null?B.b_:r}else q=B.b_ +if(a3.gBc()){p=a5.au(t.H5) +r=p==null?a4:p.f +o=r==null?B.h4:r}else o=B.h4 +if(a3.gBb()){r=A.de(a5,B.PX) +r=r==null?a4:r.as +n=r===!0}else n=!1 +$label0$0:{m=B.b_===q +l=m +k=q +j=a4 +i=a4 +h=a4 +g=a4 +r=!1 +if(l){j=B.h4===o +f=j +i=o +if(f){h=!n +r=h +g=n}e=f}else{e=!1 +f=!1}if(r){r=a3.e +break $label0$0}d=a4 +r=!1 +if(m){if(l){c=j +b=l}else{j=B.h4===o +c=j +i=o +b=!0 +l=!0}if(c){if(f)r=g +else{r=n +g=r +f=!0}d=!0===r +r=d}}else{b=l +c=!1}if(r){r=a3.r +break $label0$0}a=a4 +r=!1 +if(m){if(l)a0=i +else{a0=o +i=a0 +l=!0}a=B.pj===a0 +a0=a +if(a0)if(e)r=h +else{if(f)r=g +else{r=n +g=r +f=!0}h=!1===r +r=h +e=!0}}if(r){r=a3.x +break $label0$0}r=!1 +if(m)if(a)if(c)r=d +else{if(f)r=g +else{r=n +g=r +f=!0}d=!0===r +r=d +c=!0}if(r){r=a3.z +break $label0$0}a1=B.aI===k +r=a1 +a0=!1 +if(r){if(b)r=j +else{if(l)r=i +else{r=o +i=r +l=!0}j=B.h4===r +r=j +b=!0}if(r)if(e)r=h +else{if(f)r=g +else{r=n +g=r +f=!0}h=!1===r +r=h +e=!0}else r=a0}else r=a0 +if(r){r=a3.f +break $label0$0}r=!1 +if(a1){if(b)a0=j +else{if(l)a0=i +else{a0=o +i=a0 +l=!0}j=B.h4===a0 +a0=j}if(a0)if(c)r=d +else{if(f)r=g +else{r=n +g=r +f=!0}d=!0===r +r=d +c=!0}}if(r){r=a3.w +break $label0$0}r=!1 +if(a1){if(m){a0=a +a2=m}else{if(l)a0=i +else{a0=o +i=a0 +l=!0}a=B.pj===a0 +a0=a +a2=!0}if(a0)if(e)r=h +else{if(f)r=g +else{r=n +g=r +f=!0}h=!1===r +r=h}}else a2=m +if(r){r=a3.y +break $label0$0}r=!1 +if(a1){if(a2)a0=a +else{a=B.pj===(l?i:o) +a0=a}if(a0)if(c)r=d +else{d=!0===(f?g:n) +r=d}}if(r){r=a3.Q +break $label0$0}r=a4}return new A.dP(r,a3.c,a4,a3.e,a3.f,a3.r,a3.w,a3.x,a3.y,a3.z,a3.Q,0)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.dP&&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)}, +gB(a){var s=this +return A.a4(s.b.a,s.e,s.f,s.r,s.x,s.y,s.w,s.Q,s.z,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this,r=new A.at2(s),q=A.a([r.$2("color",s.e)],t.s) +if(s.gBd())q.push(r.$2("darkColor",s.f)) +if(s.gBb())q.push(r.$2("highContrastColor",s.r)) +if(s.gBd()&&s.gBb())q.push(r.$2("darkHighContrastColor",s.w)) +if(s.gBc())q.push(r.$2("elevatedColor",s.x)) +if(s.gBd()&&s.gBc())q.push(r.$2("darkElevatedColor",s.y)) +if(s.gBb()&&s.gBc())q.push(r.$2("highContrastElevatedColor",s.z)) +if(s.gBd()&&s.gBb()&&s.gBc())q.push(r.$2("darkHighContrastElevatedColor",s.Q)) +r=s.c +if(r==null)r="CupertinoDynamicColor" +q=B.b.bJ(q,", ") +return r+"("+q+", resolved by: UNRESOLVED)"}} +A.at2.prototype={ +$2(a,b){var s=b.l(0,this.a.b)?"*":"" +return s+a+" = "+b.j(0)+s}, +$S:541} +A.ae2.prototype={} +A.ae1.prototype={} +A.at1.prototype={ +zI(a){return B.V}, +JO(a,b,c,d){return B.ax}, +zH(a,b){return B.j}} +A.amU.prototype={} +A.XO.prototype={ +F(a){var s=null,r=A.cr(a,B.cQ,t.l).w.r.b+8,q=this.c.ai(0,new A.z(8,r)),p=A.b2(this.d,B.l,B.o,B.aE,B.r),o=$.ap().aQT(20,20,B.ch) +return new A.be(new A.al(8,r,8,8),new A.kz(new A.a_6(q),A.aa(s,A.bFv(A.Ih(new A.be(B.a05,p,s),new A.bb(B.Yt.e2(a),s,A.ee(B.Yo.e2(a),1),B.uD,s,s,s,B.E),B.h5),o),B.w,s,s,B.RV,s,s,s,s,s,s,s,222),s),s)}} +A.wr.prototype={ +a0(){return new A.Qx()}} +A.Qx.prototype={ +aFK(a){this.J(new A.b0e(this))}, +aFO(a){this.J(new A.b0f(this))}, +F(a){var s=this,r=null,q=s.a.f,p=A.X(q,r,B.al,r,r,B.Pk.cc(s.d?A.I5(a).gpZ():B.l8.e2(a)),r,r) +q=s.d?A.I5(a).gj6():r +return new A.aB(1/0,r,A.ov(A.brJ(B.kv,B.dF,p,q,B.Yu,0,s.a.c,B.a07,0.7),B.cU,r,s.gaFJ(),s.gaFN(),r),r)}} +A.b0e.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.b0f.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.XP.prototype={ +Z(a){var s=this.f,r=s instanceof A.dP?s.e2(a):s +return J.e(r,s)?this:this.cc(r)}, +CJ(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.gfL(0):e,k=g==null?s.w:g +return A.brK(a==null?s.x:a,m,q,o,l,n,k,r,p)}, +cc(a){var s=null +return this.CJ(s,a,s,s,s,s,s,s,s)}} +A.ae3.prototype={} +A.ZB.prototype={ +D(){return"CupertinoUserInterfaceLevelData."+this.b}} +A.ae4.prototype={ +vj(a){return a.gda(0)==="en"}, +iC(a,b){return new A.cv(B.SJ,t.Vr)}, +tu(a){return!1}, +j(a){return"DefaultCupertinoLocalizations.delegate(en_US)"}} +A.ZY.prototype={ +ga7(){return"Cut"}, +ga6(){return"Copy"}, +ga8(){return"Paste"}, +ga1(){return"Select All"}, +gO(){return"Look Up"}, +ga5(){return"Search Web"}, +gP(){return"Share..."}, +$iaJ:1} +A.I3.prototype={ +a0(){return new A.Qy(B.j,null,null)}} +A.Qy.prototype={ +aj(){var s,r,q=this +q.aw() +s=A.c2(null,B.eQ,null,0,q) +s.ct() +r=s.dR$ +r.b=!0 +r.a.push(new A.b0o(q)) +q.f!==$&&A.d1() +q.f=s +r=q.a +r.d.a=s +r.w.a4(0,q.gSp()) +q.a.toString +s=A.cl(B.eN,s,null) +q.w!==$&&A.d1() +q.w=s +r=t.Y +q.r!==$&&A.d1() +q.r=new A.bf(s,new A.b0(0,1,r),r.i("bf"))}, +m(){var s,r=this +r.a.d.a=null +s=r.f +s===$&&A.b() +s.m() +s=r.w +s===$&&A.b() +s.m() +r.a.w.K(0,r.gSp()) +r.apR()}, +b1(a){var s,r=this,q=a.w +if(q!==r.a.w){s=r.gSp() +q.K(0,s) +r.a.w.a4(0,s)}r.bb(a)}, +c1(){this.a5A() +this.ea()}, +a5A(){var s,r,q,p=this,o=p.a.w,n=o.gk(o),m=n.c.gbq().b +o=n.a +s=m-o.b +r=p.a +r.toString +if(s<-48){if(r.d.gG6())p.a.d.DB(!1) +return}if(!r.d.gG6()){r=p.f +r===$&&A.b() +r.cd(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.cr(r,B.fO,t.l).w.a +p.a.toString +s=A.bu7(new A.I(10,-21.5,0+r.a-10,0+r.b+21.5),new A.I(o,s,o+80,s+47.5)) +p.J(new A.b0m(p,new A.z(s.a,s.b),m,q))}, +F(a){var s,r,q=this +q.a.toString +s=q.d +r=q.r +r===$&&A.b() +return A.bkO(new A.Zx(r,new A.z(0,q.e),null),B.eN,B.a_0,s.a,s.b)}} +A.b0o.prototype={ +$0(){return this.a.J(new A.b0n())}, +$S:0} +A.b0n.prototype={ +$0(){}, +$S:0} +A.b0m.prototype={ +$0(){var s=this,r=s.a +r.d=s.b +r.e=s.c-s.d}, +$S:0} +A.Zx.prototype={ +F(a){var s,r,q=this.w,p=q.b +q=q.a +p.al(0,q.gk(q)) +s=new A.z(0,49.75).ab(0,this.x) +r=p.al(0,q.gk(q)) +r=A.oA(B.aiQ,B.j,r==null?1:r) +r.toString +q=p.al(0,q.gk(q)) +if(q==null)q=1 +return A.bOI(A.bve(null,B.h,new A.C4(q,B.a7Z,new A.cu(B.Rv,B.RB)),s,1,B.anc),r)}} +A.UO.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.at4.prototype={ +$0(){return this.a.gkb()}, +$S:46} +A.at3.prototype={ +$0(){return this.a.gDO()}, +$S:46} +A.at5.prototype={ +$0(){var s=this.a +s=A.eR.prototype.gaZq.call(s) +return s}, +$S:46} +A.at6.prototype={ +$0(){return A.bGB(this.a)}, +$S(){return this.b.i("Qv<0>()")}} +A.I2.prototype={ +a0(){return new A.ae5()}} +A.ae5.prototype={ +aj(){this.aw() +this.a7W()}, +b1(a){var s,r=this +r.bb(a) +s=r.a +if(a.d!==s.d||a.e!==s.e||a.f!==s.f){r.a2L() +r.a7W()}}, +m(){this.a2L() +this.ar()}, +a2L(){var s=this,r=s.r +if(r!=null)r.m() +r=s.w +if(r!=null)r.m() +r=s.x +if(r!=null)r.m() +s.x=s.w=s.r=null}, +a7W(){var s,r,q=this,p=q.a +if(!p.f){q.r=A.cl(B.Pn,p.d,new A.mO(B.Pn)) +q.w=A.cl(B.wa,q.a.e,B.Yd) +q.x=A.cl(B.wa,q.a.d,null)}p=q.r +if(p==null)p=q.a.d +s=$.bDS() +r=t.m +q.d=new A.bf(r.a(p),s,s.$ti.i("bf")) +s=q.w +p=s==null?q.a.e:s +s=$.bDL() +q.e=new A.bf(r.a(p),s,s.$ti.i("bf")) +s=q.x +p=s==null?q.a.d:s +s=$.bD_() +q.f=new A.bf(r.a(p),s,A.y(s).i("bf"))}, +F(a){var s,r,q,p=this,o=a.au(t.I) +o.toString +s=o.w +o=p.e +o===$&&A.b() +r=p.d +r===$&&A.b() +q=p.f +q===$&&A.b() +return A.aRO(A.aRO(new A.ZU(q,p.a.c,q,null),r,s,!0),o,s,!1)}} +A.EH.prototype={ +a0(){return new A.EI(this.$ti.i("EI<1>"))}, +aSK(){return this.d.$0()}, +aYF(){return this.e.$0()}} +A.EI.prototype={ +aj(){var s,r=this +r.aw() +s=A.aBE(r,null) +s.ch=r.gaA5() +s.CW=r.gaA7() +s.cx=r.gaA1() +s.cy=r.gazZ() +r.e=s}, +m(){var s=this,r=s.e +r===$&&A.b() +r.p2.V(0) +r.mI() +if(s.d!=null)$.aw.p2$.push(new A.b0b(s)) +s.ar()}, +aA6(a){this.d=this.a.aYF()}, +aA8(a){var s,r,q=this.d +q.toString +s=a.c +s.toString +s=this.a28(s/this.c.gv(0).a) +q=q.a +r=q.x +r===$&&A.b() +q.sk(0,r-s)}, +aA2(a){var s=this,r=s.d +r.toString +r.acO(s.a28(a.a.a.a/s.c.gv(0).a)) +s.d=null}, +aA_(){var s=this.d +if(s!=null)s.acO(0) +this.d=null}, +aJe(a){var s +if(this.a.aSK()){s=this.e +s===$&&A.b() +s.Cf(a)}}, +a28(a){var s=this.c.au(t.I) +s.toString +switch(s.w.a){case 0:s=-a +break +case 1:s=a +break +default:s=null}return s}, +F(a){var s=null,r=a.au(t.I) +r.toString +switch(r.w.a){case 0:r=A.cr(a,B.cQ,t.l).w.r.c +break +case 1:r=A.cr(a,B.cQ,t.l).w.r.a +break +default:r=s}return A.cq(B.a2,A.a([this.a.c,new A.a6b(0,0,0,Math.max(r,20),A.BY(B.d0,s,s,s,this.gaJd(),s,s,s,s),s)],t.p),B.w,B.OU,s)}} +A.b0b.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.D5() +s.d=null}, +$S:3} +A.Qv.prototype={ +acO(a){var s,r,q,p,o=this,n=o.d.$0() +if(!n)s=o.c.$0() +else 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.ak(800,0,q) +q.toString +q=A.dA(0,Math.min(B.d.dv(q),300),0) +r.z=B.b5 +r.jP(1,B.wd,q)}else{if(n)o.b.cV() +r=o.a +q=r.r +if(q!=null&&q.a!=null){q=r.x +q===$&&A.b() +q=A.ak(0,800,q) +q.toString +q=A.dA(0,B.d.dv(q),0) +r.z=B.kp +r.jP(0,B.wd,q)}}q=r.r +if(q!=null&&q.a!=null){p=A.bu("animationStatusCallback") +p.b=new A.b0a(o,p) +q=p.b2() +r.ct() +r=r.ec$ +r.b=!0 +r.a.push(q)}else o.b.D5()}} +A.b0a.prototype={ +$1(a){var s=this.a +s.b.D5() +s.a.dX(this.b.b2())}, +$S:10} +A.nF.prototype={ +f6(a,b){var s +if(a instanceof A.nF){s=A.b0g(a,this,b) +s.toString +return s}s=A.b0g(null,this,b) +s.toString +return s}, +f7(a,b){var s +if(a instanceof A.nF){s=A.b0g(this,a,b) +s.toString +return s}s=A.b0g(this,null,b) +s.toString +return s}, +y4(a){return new A.b0j(this,a)}, +l(a,b){var s,r +if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +if(b instanceof A.nF){s=b.a +r=this.a +r=s==null?r==null:s===r +s=r}else s=!1 +return s}, +gB(a){return J.W(this.a)}} +A.b0h.prototype={ +$1(a){var s=A.U(null,a,this.a) +s.toString +return s}, +$S:114} +A.b0i.prototype={ +$1(a){var s=A.U(null,a,1-this.a) +s.toString +return s}, +$S:114} +A.b0j.prototype={ +jB(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this.b.a +if(f==null)return +s=c.e +r=s.a +q=0.05*r +p=s.b +o=q/(f.length-1) +switch(c.d.a){case 0:s=new A.b3(1,b.a+r) +break +case 1:s=new A.b3(-1,b.a) +break +default:s=null}n=s.a +m=null +l=s.b +m=l +k=n +for(s=b.b,r=s+p,j=0,i=0;i=a-14}, +a22(a){return new A.au(30,1/0,0,1/0).ri(new A.au(0,a.b,0,a.d))}, +a1S(a){return new A.z(0,this.a5e(a.b)?-7:0)}, +fH(a,b){var s,r,q=this.H$ +if(q==null)return null +s=this.a22(a) +r=q.ii(s,b) +return r==null?null:r+this.a1S(q.aM(B.af,s,q.gdD())).b}, +ck(){var s,r=this,q=r.H$ +if(q==null)return +q.df(r.a22(t.k.a(A.G.prototype.gah.call(r))),!0) +s=q.b +s.toString +t.r.a(s).a=r.a1S(q.gv(0)) +r.id=new A.R(q.gv(0).a,q.gv(0).b-7)}, +aub(a,b){var s,r,q,p,o,n,m=this,l=$.ap().cR() +if(30>m.gv(0).a){l.hk(b) +return l}s=m.a5e(a.gv(0).b) +r=A.M(m.he(s?m.E:m.af).a,15,m.gv(0).a-7-8) +q=r+7 +p=r-7 +if(s){o=a.gv(0).b-7 +n=a.gv(0) +l.hc(0,q,o) +l.dg(0,r,n.b) +l.dg(0,p,o)}else{l.hc(0,p,7) +l.dg(0,r,0) +l.dg(0,q,7)}q=A.bQK(l,b,s?1.5707963267948966:-1.5707963267948966) +q.L(0) +return q}, +aT(a,b){var s,r,q,p,o,n,m,l=this,k=l.H$ +if(k==null)return +s=k.b +s.toString +t.r.a(s) +r=A.oI(new A.I(0,7,0+k.gv(0).a,7+(k.gv(0).b-14)),B.dW).w8() +q=l.aub(k,r) +p=l.aZ +if(p!=null){o=A.bvc(r.a,r.b,r.c,r.d+7,B.dW).ep(b.ab(0,s.a).ab(0,B.j)) +a.gca(0).dk(o,new A.c6(0,B.a6,p,B.j,15).kk())}p=l.bH +n=l.cx +n===$&&A.b() +s=b.ab(0,s.a) +m=k.gv(0) +p.sb0(0,a.aZP(n,s,new A.I(0,0,0+m.a,0+m.b),q,new A.bbM(k),p.a))}, +m(){this.bH.sb0(0,null) +this.h0()}, +dU(a,b){var s,r,q=this.H$ +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.I(r,s,r+q.gv(0).a,s+(q.gv(0).b-14)).p(0,b))return!1 +return this.anv(a,b)}} +A.bbM.prototype={ +$2(a,b){return a.fa(this.a,b)}, +$S:18} +A.QA.prototype={ +a0(){return new A.QB(new A.bG(null,t.A),null,null)}, +b0m(a,b,c,d){return this.f.$4(a,b,c,d)}} +A.QB.prototype={ +aFX(a){var s=a.b +if(s!=null&&s!==0)if(s>0)this.a4x() +else this.a4u()}, +a4u(){var s=this,r=$.aw.aR$.x.h(0,s.r) +r=r==null?null:r.gag() +t.Qv.a(r) +if(r instanceof A.zx){r=r.X +r===$&&A.b()}else r=!1 +if(r){r=s.d +r===$&&A.b() +r.dq(0) +r=s.d +r.ct() +r=r.ec$ +r.b=!0 +r.a.push(s.gIW()) +s.e=s.f+1}}, +a4x(){var s=this,r=$.aw.aR$.x.h(0,s.r) +r=r==null?null:r.gag() +t.Qv.a(r) +if(r instanceof A.zx){r=r.a9 +r===$&&A.b()}else r=!1 +if(r){r=s.d +r===$&&A.b() +r.dq(0) +r=s.d +r.ct() +r=r.ec$ +r.b=!0 +r.a.push(s.gIW()) +s.e=s.f-1}}, +aLd(a){var s,r=this +if(a!==B.a9)return +r.J(new A.b0s(r)) +s=r.d +s===$&&A.b() +s.cd(0) +r.d.dX(r.gIW())}, +aj(){this.aw() +this.d=A.c2(null,B.pv,null,1,this)}, +b1(a){var s,r=this +r.bb(a) +if(r.a.e!==a.e){r.f=0 +r.e=null +s=r.d +s===$&&A.b() +s.cd(0) +r.d.dX(r.gIW())}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.apS()}, +F(a){var s,r,q,p=this,o=null,n=B.l8.e2(a),m=A.cL(A.brN(A.ok(A.fB(o,o,o,new A.agF(n,!0,o),B.Ov),!0,o),p.gaBx()),1,1),l=A.cL(A.brN(A.ok(A.fB(o,o,o,new A.ajK(n,!1,o),B.Ov),!0,o),p.gaB6()),1,1),k=p.a.e,j=A.af(k).i("ad<1,ik>"),i=A.a8(new A.ad(k,new A.b0t(),j),!0,j.i("aN.E")) +j=p.a +k=j.c +s=j.d +r=p.d +r===$&&A.b() +q=p.f +return j.b0m(a,k,s,new A.eB(r,!1,A.br1(A.fn(o,new A.QC(m,i,B.Yp.e2(a),1/A.cr(a,B.e7,t.l).w.b,l,q,p.r),B.S,!1,o,o,o,o,p.gaFW(),o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,!1,B.aV),B.fX,B.pv),o))}} +A.b0s.prototype={ +$0(){var s=this.a,r=s.e +r.toString +s.f=r +s.e=null}, +$S:0} +A.b0t.prototype={ +$1(a){return A.cL(a,1,1)}, +$S:594} +A.agF.prototype={} +A.ajK.prototype={} +A.ae0.prototype={ +aT(a,b){var s,r,q,p,o=b.b,n=this.c,m=n?1:-1,l=new A.z(o/4*m,0) +m=o/2 +s=new A.z(m,0).ab(0,l) +r=new A.z(n?0:o,m).ab(0,l) +q=new A.z(m,o).ab(0,l) +p=$.ap().br() +p.saG(0,this.b) +p.sd0(0,B.aJ) +p.shw(2) +p.swn(B.th) +p.sP0(B.tj) +a.k0(s,r,p) +a.k0(r,q,p)}, +ff(a){return!a.b.l(0,this.b)||a.c!==this.c}} +A.QC.prototype={ +b6(a){var s=new A.zx(A.w(t.TC,t.x),this.w,this.e,this.f,0,null,null,new A.bk(),A.aK()) +s.b5() +return s}, +b9(a,b){b.spW(0,this.w) +b.suL(this.e) +b.saSg(this.f)}, +cp(a){var s=t.R +return new A.ae9(A.w(t.TC,s),A.dD(s),this,B.aA)}} +A.ae9.prototype={ +gag(){return t.l0.a(A.bP.prototype.gag.call(this))}, +a9y(a,b){var s +switch(b.a){case 0:s=t.l0.a(A.bP.prototype.gag.call(this)) +s.U=s.a8J(s.U,a,B.u3) +break +case 1:s=t.l0.a(A.bP.prototype.gag.call(this)) +s.ac=s.a8J(s.ac,a,B.u4) +break}}, +mg(a,b){var s,r +if(b instanceof A.zg){this.a9y(t.x.a(a),b) +return}if(b instanceof A.tH){s=t.l0.a(A.bP.prototype.gag.call(this)) +t.x.a(a) +r=b.a +r=r==null?null:r.gag() +t.Qv.a(r) +s.lp(a) +s.Sb(a,r) +return}}, +mk(a,b,c){t.l0.a(A.bP.prototype.gag.call(this)).E6(t.x.a(a),t.Qv.a(c.a.gag()))}, +nj(a,b){var s +if(b instanceof A.zg){this.a9y(null,b) +return}s=t.l0.a(A.bP.prototype.gag.call(this)) +t.x.a(a) +s.T2(a) +s.rh(a)}, +bZ(a){var s,r,q,p,o +this.p2.gaJ(0).az(0,a) +s=this.p1 +s===$&&A.b() +r=s.length +q=this.p3 +p=0 +for(;p0){q=l.ac.b +q.toString +n=t._ +n.a(q) +m=l.U.b +m.toString +n.a(m) +if(l.aC!==r){q.a=new A.z(o.b2(),0) +q.e=!0 +o.b=o.b2()+l.ac.gv(0).a}if(l.aC>0){m.a=B.j +m.e=!0}}else o.b=o.b2()-l.M +r=l.aC +l.X=r!==k.c +l.a9=r>0 +l.id=s.a(A.G.prototype.gah.call(l)).bD(new A.R(o.b2(),k.a))}, +aT(a,b){this.bZ(new A.bbH(this,b,a))}, +ht(a){if(!(a.b instanceof A.iX))a.b=new A.iX(null,null,B.j)}, +dU(a,b){var s,r,q=this.dJ$ +for(s=t._;q!=null;){r=q.b +r.toString +s.a(r) +if(!r.e){q=r.du$ +continue}if(A.boy(q,a,b))return!0 +q=r.du$}if(A.boy(this.U,a,b))return!0 +if(A.boy(this.ac,a,b))return!0 +return!1}, +aI(a){var s,r,q +this.aq9(a) +for(s=this.A.gaJ(0),r=A.y(s),s=new A.bD(J.ay(s.a),s.b,r.i("bD<1,2>")),r=r.y[1];s.u();){q=s.a;(q==null?r.a(q):q).aI(a)}}, +aB(a){var s,r,q +this.aqa(0) +for(s=this.A.gaJ(0),r=A.y(s),s=new A.bD(J.ay(s.a),s.b,r.i("bD<1,2>")),r=r.y[1];s.u();){q=s.a;(q==null?r.a(q):q).aB(0)}}, +j8(){this.bZ(new A.bbK(this))}, +bZ(a){var s=this.U +if(s!=null)a.$1(s) +s=this.ac +if(s!=null)a.$1(s) +this.Gp(a)}, +iL(a){this.bZ(new A.bbL(a))}} +A.bbI.prototype={ +$1(a){var s,r +t.x.a(a) +s=this.b +s=a.aM(B.bC,t.k.a(A.G.prototype.gah.call(s)).b,a.gcM()) +r=this.a +if(s>r.a)r.a=s}, +$S:30} +A.bbJ.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._.a(s) +s.e=!1 +r=l.b +if(a===r.U||a===r.ac||k.c>r.aC)return +if(k.c===0)q=j===r.dl$+1?0:r.ac.gv(0).a +else q=l.c +j=t.k +p=j.a(A.G.prototype.gah.call(r)) +o=k.a +a.df(new A.au(0,p.b-q,o,o),!0) +if(k.b+q+a.gv(0).a>j.a(A.G.prototype.gah.call(r)).b){++k.c +k.b=r.U.gv(0).a+r.M +p=r.U.gv(0) +o=r.ac.gv(0) +j=j.a(A.G.prototype.gah.call(r)) +n=k.a +a.df(new A.au(0,j.b-(p.a+o.a),n,n),!0)}j=k.b +s.a=new A.z(j,0) +m=j+(a.gv(0).a+r.M) +k.b=m +r=k.c===r.aC +s.e=r +if(r)l.d.b=m}, +$S:30} +A.bbH.prototype={ +$1(a){var s,r,q,p,o,n=this +t.x.a(a) +s=a.b +s.toString +t._.a(s) +if(s.e){r=s.a.ab(0,n.b) +q=n.c +q.fa(a,r) +if(s.aO$!=null||a===n.a.U){s=q.gca(0) +q=new A.z(a.gv(0).a,0).ab(0,r) +p=new A.z(a.gv(0).a,a.gv(0).b).ab(0,r) +o=$.ap().br() +o.saG(0,n.a.aQ) +s.k0(q,p,o)}}}, +$S:30} +A.bbG.prototype={ +$2(a,b){return this.a.dT(a,b)}, +$S:24} +A.bbK.prototype={ +$1(a){this.a.ol(t.x.a(a))}, +$S:30} +A.bbL.prototype={ +$1(a){var s +t.x.a(a) +s=a.b +s.toString +if(t._.a(s).e)this.a.$1(a)}, +$S:30} +A.zg.prototype={ +D(){return"_CupertinoTextSelectionToolbarItemsSlot."+this.b}} +A.UP.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.V7.prototype={ +aI(a){var s,r,q +this.eD(a) +s=this.am$ +for(r=t._;s!=null;){s.aI(a) +q=s.b +q.toString +s=r.a(q).aO$}}, +aB(a){var s,r,q +this.eE(0) +s=this.am$ +for(r=t._;s!=null;){s.aB(0) +q=s.b +q.toString +s=r.a(q).aO$}}} +A.anp.prototype={} +A.tk.prototype={ +a0(){return new A.Qz()}} +A.Qz.prototype={ +aGj(a){this.J(new A.b0q(this))}, +aGl(a){var s +this.J(new A.b0r(this)) +s=this.a.d +if(s!=null)s.$0()}, +aGh(){this.J(new A.b0p(this))}, +F(a){var s=this,r=null,q=s.ayh(a),p=s.d?B.Ys.e2(a):B.t,o=s.a.d,n=A.brJ(B.O,r,q,p,B.t,44,o,B.a_E,1) +if(o!=null)return A.fn(r,n,B.S,!1,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,s.gaGg(),s.gaGi(),s.gaGk(),r,r,r,!1,B.aV) +else return n}, +ayh(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.brO(a,q)}else q=p +s=A.X(q,r,B.al,r,r,B.atA.cc(this.a.d!=null?B.l8.e2(a):B.iR),r,r) +q=this.a.e +switch(q==null?r:q.b){case B.l2:case B.l3:case B.l4:case B.l5:case B.w7:case B.pf:case B.pg:case B.l6:case B.pi:case null:case void 0:return s +case B.ph:q=B.l8.e2(a) +p=$.ap().br() +p.swn(B.th) +p.sP0(B.tj) +p.shw(1) +p.sd0(0,B.aJ) +return new A.aB(13,13,A.fB(r,r,r,new A.agQ(q,p,r),B.V),r)}}} +A.b0q.prototype={ +$0(){return this.a.d=!0}, +$S:0} +A.b0r.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.b0p.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.agQ.prototype={ +aT(a,b){var s,r,q,p,o,n=this.c +n.saG(0,this.b) +a.en(0) +s=b.a +r=b.b +a.bs(0,s/2,r/2) +s=-s/2 +r=-r/2 +q=$.ap().cR() +q.hc(0,s,r+3.5) +q.dg(0,s,r+1) +q.aOo(new A.z(s+1,r),B.Ng) +q.dg(0,s+3.5,r) +s=new Float64Array(16) +p=new A.bW(s) +p.eo() +p.vJ(1.5707963267948966) +for(o=0;o<4;++o){a.eJ(q,n) +a.al(0,s)}a.k0(B.ajk,B.aiY,n) +a.k0(B.aji,B.aiX,n) +a.k0(B.ajj,B.aiU,n) +a.el(0)}, +ff(a){return!a.b.l(0,this.b)}} +A.AH.prototype={ +ghK(){var s=this.c,r=this.a.a +s=B.l9.l(0,r)?B.Pj:B.Pj.cc(r) +return s}, +e2(a){var s,r=this,q=r.a,p=q.a,o=p instanceof A.dP?p.e2(a):p,n=q.b +if(n instanceof A.dP)n=n.e2(a) +q=o.l(0,p)&&n.l(0,B.iR)?q:new A.U2(o,n) +s=r.b +if(s instanceof A.dP)s=s.e2(a) +return new A.AH(q,s,A.zN(r.c,a),A.zN(r.d,a),A.zN(r.e,a),A.zN(r.f,a),A.zN(r.r,a),A.zN(r.w,a),A.zN(r.x,a),A.zN(r.y,a))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.AH)if(b.a.l(0,r.a)){s=J.e(b.b,r.b) +s}return s}, +gB(a){var s=this +return A.a4(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.U2.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.U2&&b.a.l(0,s.a)&&b.b.l(0,s.b)}, +gB(a){return A.a4(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.aeb.prototype={} +A.I4.prototype={ +F(a){var s=null +return new A.K1(this,A.BA(this.d,A.brK(s,this.c.gj6(),s,s,s,s,s,s,s),s),s)}} +A.K1.prototype={ +tc(a,b,c){return new A.I4(this.w.c,c,null)}, +dY(a){return!this.w.c.l(0,a.w.c)}} +A.AI.prototype={ +gj6(){var s=this.b +return s==null?this.w.b:s}, +gpZ(){var s=this.c +return s==null?this.w.c:s}, +gzp(){var s=null,r=this.d +if(r==null){r=this.w.r +r=new A.b0A(r.a,r.b,B.aB0,this.gj6(),s,s,s,s,s,s,s,s)}return r}, +gCp(){var s=this.e +return s==null?this.w.d:s}, +gw7(){var s=this.f +return s==null?this.w.e:s}, +gxH(){var s=this.r +return s==null?!1:s}, +e2(a){var s,r=this,q=new A.at8(a),p=r.gpm(),o=q.$1(r.b),n=q.$1(r.c),m=r.d +m=m==null?null:m.e2(a) +s=q.$1(r.e) +q=q.$1(r.f) +r.gxH() +return A.bGI(p,o,n,m,s,q,!1,r.w.b_P(a,r.d==null))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.AI)if(b.gpm()==r.gpm())if(b.gj6().l(0,r.gj6()))if(b.gpZ().l(0,r.gpZ()))if(b.gzp().l(0,r.gzp()))if(b.gCp().l(0,r.gCp())){s=b.gw7().l(0,r.gw7()) +if(s){b.gxH() +r.gxH()}}return s}, +gB(a){var s=this,r=s.gpm(),q=s.gj6(),p=s.gpZ(),o=s.gzp(),n=s.gCp(),m=s.gw7() +s.gxH() +return A.a4(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.at8.prototype={ +$1(a){return a instanceof A.dP?a.e2(this.a):a}, +$S:207} +A.LI.prototype={ +e2(a){var s=this,r=new A.aKv(a),q=s.gpm(),p=r.$1(s.gj6()),o=r.$1(s.gpZ()),n=s.gzp() +n=n==null?null:n.e2(a) +return new A.LI(q,p,o,n,r.$1(s.gCp()),r.$1(s.gw7()),s.gxH())}, +gpm(){return this.a}, +gj6(){return this.b}, +gpZ(){return this.c}, +gzp(){return this.d}, +gCp(){return this.e}, +gw7(){return this.f}, +gxH(){return this.r}} +A.aKv.prototype={ +$1(a){return a instanceof A.dP?a.e2(this.a):a}, +$S:207} +A.aee.prototype={ +b_P(a,b){var s,r,q=this,p=new A.b0v(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.dP)r=r.e2(a) +s=s.b +s=new A.aec(r,s instanceof A.dP?s.e2(a):s)}return new A.aee(q.a,o,n,m,p,!1,s)}} +A.b0v.prototype={ +$1(a){return a instanceof A.dP?a.e2(this.a):a}, +$S:114} +A.aec.prototype={} +A.b0A.prototype={ +ghK(){return A.AH.prototype.ghK.call(this).cc(this.z)}} +A.aed.prototype={} +A.vk.prototype={ +EI(a,b){var s=A.mD.prototype.gk.call(this,0) +s.toString +return J.bqP(s)}, +j(a){return this.EI(0,B.bp)}, +gk(a){var s=A.mD.prototype.gk.call(this,0) +s.toString +return s}} +A.Bb.prototype={} +A.a_Y.prototype={} +A.a_V.prototype={} +A.cM.prototype={ +aT3(){var s,r,q,p,o,n,m,l=this.a +if(t.vp.b(l)){s=l.gia(l) +r=l.j(0) +l=null +if(typeof s=="string"&&s!==r){q=r.length +p=s.length +if(q>p){o=B.c.o6(r,s) +if(o===q-p&&o>2&&B.c.R(r,o-2,o)===": "){n=B.c.R(r,0,o-2) +m=B.c.dV(n," Failed assertion:") +if(m>=0)n=B.c.R(n,0,m)+"\n"+B.c.bE(n,m+1) +l=B.c.NO(s)+"\n"+n}}}if(l==null)l=r}else if(!(typeof l=="string"))l=t.Lt.b(l)||t.J.b(l)?J.p(l):" "+A.c(l) +l=B.c.NO(l) +return l.length===0?" ":l}, +galW(){return A.bs9(new A.azB(this).$0(),!0)}, +fb(){return"Exception caught by "+this.c}, +j(a){A.bPP(null,B.Zn,this) +return""}} +A.azB.prototype={ +$0(){return J.bFb(this.a.aT3().split("\n")[0])}, +$S:17} +A.og.prototype={ +gia(a){return this.j(0)}, +fb(){return"FlutterError"}, +j(a){var s,r,q=new A.ey(this.a,t.ow) +if(!q.ga_(0)){s=q.gW(0) +r=J.dI(s) +s=A.mD.prototype.gk.call(r,s) +s.toString +s=J.bqP(s)}else s="FlutterError" +return s}, +$iw2:1} +A.azC.prototype={ +$1(a){return A.c3(a)}, +$S:623} +A.azD.prototype={ +$1(a){return a+1}, +$S:94} +A.azE.prototype={ +$1(a){return a+1}, +$S:94} +A.biD.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:21} +A.a_h.prototype={} +A.afB.prototype={} +A.afD.prototype={} +A.afC.prototype={} +A.WW.prototype={ +ka(){}, +vb(){}, +aWP(a){var s;++this.c +s=a.$0() +s.fC(new A.aqC(this)) +return s}, +Yk(){}, +j(a){return""}} +A.aqC.prototype={ +$0(){var s,r,q,p=this.a +if(--p.c<=0)try{p.apw() +if(p.k1$.c!==0)p.QX()}catch(q){s=A.v(q) +r=A.aT(q) +p=A.c3("while handling pending events") +A.e9(new A.cM(s,r,"foundation",p,null,!1))}}, +$S:4} +A.aA.prototype={} +A.bo.prototype={ +a4(a,b){var s,r,q,p,o=this +if(o.ghh(o)===o.gf1().length){s=t.Nw +if(o.ghh(o)===0)o.sf1(A.bO(1,null,!1,s)) +else{r=A.bO(o.gf1().length*2,null,!1,s) +for(q=0;q0){r.gf1()[s]=null +r.sqJ(r.gqJ()+1)}else r.a6T(s) +break}}, +m(){this.sf1($.aW()) +this.shh(0,0)}, +T(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this +if(f.ghh(f)===0)return +f.sp0(f.gp0()+1) +p=f.ghh(f) +for(s=0;s0){l=f.ghh(f)-f.gqJ() +if(l*2<=f.gf1().length){k=A.bO(l,null,!1,t.Nw) +for(j=0,s=0;s#"+A.c5(this)+"("+A.c(this.gk(this))+")"}} +A.Iv.prototype={ +D(){return"DiagnosticLevel."+this.b}} +A.pE.prototype={ +D(){return"DiagnosticsTreeStyle."+this.b}} +A.baf.prototype={} +A.fD.prototype={ +EI(a,b){return this.dQ(0)}, +j(a){return this.EI(0,B.bp)}} +A.mD.prototype={ +gk(a){this.aEO() +return this.at}, +aEO(){return}} +A.Iw.prototype={ +gk(a){return this.f}} +A.a_g.prototype={} +A.aY.prototype={ +fb(){return"#"+A.c5(this)}, +EI(a,b){var s=this.fb() +return s}, +j(a){return this.EI(0,B.bp)}} +A.avh.prototype={ +fb(){return"#"+A.c5(this)}} +A.mC.prototype={ +j(a){return this.ah2(B.eP).dQ(0)}, +fb(){return"#"+A.c5(this)}, +b09(a,b){return A.blu(a,b,this)}, +ah2(a){return this.b09(null,a)}} +A.Ix.prototype={ +gk(a){return this.y}} +A.aeF.prototype={} +A.iu.prototype={} +A.a1R.prototype={} +A.kl.prototype={ +j(a){return"[#"+A.c5(this)+"]"}} +A.eK.prototype={ +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return A.y(this).i("eK").b(b)&&J.e(b.a,this.a)}, +gB(a){return A.a4(A.K(this),this.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=A.y(this),r=s.i("eK.T"),q=this.a,p=A.cK(r)===B.nN?"<'"+A.c(q)+"'>":"<"+A.c(q)+">" +if(A.K(this)===A.cK(s.i("eK")))return"["+p+"]" +return"["+A.cK(r).j(0)+" "+p+"]"}, +gk(a){return this.a}} +A.boD.prototype={} +A.lS.prototype={} +A.Kt.prototype={} +A.bV.prototype={ +gIf(){var s,r=this,q=r.c +if(q===$){s=A.dD(r.$ti.c) +r.c!==$&&A.aH() +r.c=s +q=s}return q}, +q(a,b){this.b=!0 +this.a.push(b)}, +C(a,b){this.b=!0 +this.gIf().V(0) +return B.b.C(this.a,b)}, +V(a){this.b=!1 +B.b.V(this.a) +this.gIf().V(0)}, +p(a,b){var s=this,r=s.a +if(r.length<3)return B.b.p(r,b) +if(s.b){s.gIf().G(0,r) +s.b=!1}return s.gIf().p(0,b)}, +gav(a){var s=this.a +return new J.di(s,s.length,A.af(s).i("di<1>"))}, +ga_(a){return this.a.length===0}, +gbC(a){return this.a.length!==0}, +ig(a,b){var s=this.a,r=A.af(s) +return b?A.a(s.slice(0),r):J.qc(s.slice(0),r.c)}, +cJ(a){return this.ig(0,!0)}} +A.q4.prototype={ +q(a,b){var s=this.a,r=s.h(0,b) +s.n(0,b,(r==null?0:r)+1)}, +C(a,b){var s=this.a,r=s.h(0,b) +if(r==null)return!1 +if(r===1)s.C(0,b) +else s.n(0,b,r-1) +return!0}, +p(a,b){return this.a.N(0,b)}, +gav(a){var s=this.a +return A.js(s,s.r)}, +ga_(a){return this.a.a===0}, +gbC(a){return this.a.a!==0}} +A.Me.prototype={ +aZX(a,b,c){var s=this.a,r=s==null?$.VR():s,q=r.oi(0,0,b,A.at(b),c) +if(q===s)return this +return new A.Me(q)}, +h(a,b){var s=this.a +return s==null?null:s.zC(0,0,b,J.W(b))}} +A.bfW.prototype={} +A.afN.prototype={ +oi(a,b,c,d,e){var s,r,q,p,o=B.e.xt(d,b)&31,n=this.a,m=n[o] +if(m==null)m=$.VR() +s=m.oi(0,b+5,c,d,e) +if(s===m)n=this +else{r=n.length +q=A.bO(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.bEZ(p,a5+5,a6,a7,a8) +if(o===p)return c +a2=a.length +n=A.bO(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.aDm(a5) +a1.a[a]=$.VR().oi(0,a5+5,a6,a7,a8) +return a1}else{h=2*s +g=2*i +f=A.bO(g+2,b,!1,t.X) +for(a=c.b,e=0;e>>0,f)}}}, +zC(a,b,c,d){var s,r,q,p,o=1<<(B.e.xt(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.zC(0,b+5,c,d) +if(c===q)return p +return null}, +aDm(a){var s,r,q,p,o,n,m,l=A.bO(32,null,!1,t.X) +for(s=this.a,r=a+5,q=this.b,p=0,o=0;o<32;++o)if((B.e.xt(s,o)&1)!==0){n=q[p] +m=p+1 +if(n==null)l[o]=q[m] +else l[o]=$.VR().oi(0,r,n,J.W(n),q[m]) +p+=2}return new A.afN(l)}} +A.RD.prototype={ +oi(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.a4Z(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.bO(q,null,!1,t.X) +for(o=0;o>>0,k).oi(0,b,c,d,e)}, +zC(a,b,c,d){var s=this.a4Z(c) +return s<0?null:this.b[s+1]}, +a4Z(a){var s,r,q=this.b,p=q.length +for(s=J.dd(a),r=0;r=s.a.length)s.T9(q) +B.G.dC(s.a,s.b,q,a) +s.b+=r}, +Ap(a,b,c){var s=this,r=c==null?s.e.length:c,q=s.b+(r-b) +if(q>=s.a.length)s.T9(q) +B.G.dC(s.a,s.b,q,a) +s.b=q}, +arO(a){return this.Ap(a,0,null)}, +T9(a){var s=this.a,r=s.length,q=a==null?0:a,p=Math.max(q,r*2),o=new Uint8Array(p) +B.G.dC(o,0,r,s) +this.a=o}, +aIT(){return this.T9(null)}, +aZZ(a){var s=$.fS() +B.jE.ZD(this.d,0,a,s)}, +nu(a){var s=B.e.an(this.b,a) +if(s!==0)this.Ap($.bCX(),0,a-s)}, +rd(){var s,r=this +if(r.c)throw A.d(A.a1("done() must not be called more than once on the same "+A.K(r).j(0)+".")) +s=A.eT(r.a.buffer,0,r.b) +r.a=new Uint8Array(0) +r.c=!0 +return s}} +A.Mw.prototype={ +no(a){return this.a.getUint8(this.b++)}, +Oh(a){var s=this.b,r=$.fS() +B.jE.YS(this.a,s,r)}, +qg(a){var s=this.a,r=A.dw(s.buffer,s.byteOffset+this.b,a) +this.b+=a +return r}, +Oi(a){var s +this.nu(8) +s=this.a +B.n3.aaH(s.buffer,s.byteOffset+this.b,a)}, +nu(a){var s=this.b,r=B.e.an(s,a) +if(r!==0)this.b=s+(a-r)}} +A.nq.prototype={ +gB(a){var s=this +return A.a4(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.ah(b)!==A.K(s))return!1 +return b instanceof A.nq&&b.b===s.b&&b.d===s.d&&b.f===s.f&&b.r===s.r&&b.w===s.w&&b.x===s.x&&b.a===s.a}, +j(a){var s=this +return"StackFrame(#"+s.b+", "+s.c+":"+s.d+"/"+s.e+":"+s.f+":"+s.r+", className: "+s.w+", method: "+s.x+")"}} +A.aSj.prototype={ +$1(a){return a.length!==0}, +$S:21} +A.cv.prototype={ +po(a,b){return new A.a_($.ab,this.$ti.i("a_<1>"))}, +dc(a){return this.po(a,null)}, +cv(a,b,c){var s=a.$1(this.a) +if(c.i("a2<0>").b(s))return s +return new A.cv(s,c.i("cv<0>"))}, +ak(a,b){return this.cv(a,null,b)}, +NA(a){return this.cv(a,null,t.z)}, +t2(a,b,c){return A.c7(this.a,this.$ti.c).t2(0,b,c)}, +fC(a){var s,r,q,p,o,n=this +try{s=a.$0() +if(t.L0.b(s)){p=s.ak(new A.aTv(n),n.$ti.c) +return p}return n}catch(o){r=A.v(o) +q=A.aT(o) +p=A.i0(r,q,n.$ti.c) +return p}}, +$ia2:1} +A.aTv.prototype={ +$1(a){return this.a.a}, +$S(){return this.a.$ti.i("1(@)")}} +A.a0x.prototype={ +D(){return"GestureDisposition."+this.b}} +A.eD.prototype={} +A.Bu.prototype={ +Z(a){this.a.xi(this.b,this.c,a)}} +A.F6.prototype={ +q(a,b){this.a.push(b)}, +j(a){var s=this,r=s.a +r=r.length===0?""+"":""+new A.ad(r,new A.b53(s),A.af(r).i("ad<1,h>")).bJ(0,", ") +if(s.b)r+=" [open]" +if(s.c)r+=" [held]" +if(s.d)r+=" [hasPendingSweep]" +return r.charCodeAt(0)==0?r:r}} +A.b53.prototype={ +$1(a){if(a===this.a.e)return a.j(0)+" (eager winner)" +return a.j(0)}, +$S:627} +A.aAr.prototype={ +nH(a,b,c){this.a.cP(0,b,new A.aAt()).a.push(c) +return new A.Bu(this,b,c)}, +V4(a,b){var s=this.a.h(0,b) +if(s==null)return +s.b=!1 +this.a8Z(b,s)}, +a04(a){var s,r=this.a,q=r.h(0,a) +if(q==null)return +if(q.c){q.d=!0 +return}r.C(0,a) +r=q.a +if(r.length!==0){B.b.gW(r).kB(a) +for(s=1;s")),p=n.r,q=q.y[1];r.u();){o=r.a;(o==null?q.a(o):o).b1x(0,p)}s.V(0) +n.c=B.F +s=n.y +if(s!=null)s.S(0)}} +A.JF.prototype={ +aBh(a){var s,r,q,p,o=this +try{o.by$.G(0,A.bM2(a.a,o.gavC())) +if(o.c<=0)o.Rc()}catch(q){s=A.v(q) +r=A.aT(q) +p=A.c3("while handling a pointer data packet") +A.e9(new A.cM(s,r,"gestures library",p,null,!1))}}, +avD(a){var s +if($.bC().geB().b.h(0,a)==null)s=null +else{s=$.dz().d +if(s==null){s=self.window.devicePixelRatio +if(s===0)s=1}}return s}, +aPc(a){var s=this.by$ +if(s.b===s.c&&this.c<=0)A.ff(this.gaxK()) +s.aNS(A.buZ(0,0,0,0,0,B.br,!1,0,a,B.j,1,1,0,0,0,0,0,0,B.F,0))}, +Rc(){for(var s=this.by$;!s.ga_(0);)this.Ww(s.om())}, +Ww(a){this.ga75().f_(0) +this.a4w(a)}, +a4w(a){var s,r=this,q=!t.pY.b(a) +if(!q||t.ks.b(a)||t.XA.b(a)||t.w5.b(a)){s=A.aBC() +r.DF(s,a.gcl(a),a.gzz()) +if(!q||t.w5.b(a))r.X$.n(0,a.gbX(),s)}else if(t.oN.b(a)||t.Ko.b(a)||t.WQ.b(a))s=r.X$.C(0,a.gbX()) +else s=a.gKO()||t.DB.b(a)?r.X$.h(0,a.gbX()):null +if(s!=null||t.ge.b(a)||t.PB.b(a)){q=r.CW$ +q.toString +q.b0U(a,t.n2.b(a)?null:s) +r.amu(0,a,s)}}, +DF(a,b,c){a.q(0,new A.kL(this,t.AL))}, +aSd(a,b,c){var s,r,q,p,o,n,m,l,k,j,i="gesture library" +if(c==null){try{this.bI$.agU(b)}catch(p){s=A.v(p) +r=A.aT(p) +A.e9(A.bIO(A.c3("while dispatching a non-hit-tested pointer event"),b,s,null,new A.aAw(b),i,r))}return}for(n=c.a,m=n.length,l=0;l0.4){r.dy=B.nX +r.Z(B.d_)}else if(a.gy8().guK()>A.vS(a.ge1(a),r.b))r.Z(B.bd) +if(s>0.4&&r.dy===B.PT){r.dy=B.nX +if(r.at!=null)r.e6("onStart",new A.aA1(r,s))}}r.Gd(a)}, +kB(a){var s=this,r=s.dy +if(r===B.nW)r=s.dy=B.PT +if(s.at!=null&&r===B.nX)s.e6("onStart",new A.aA_(s))}, +yc(a){var s=this,r=s.dy,q=r===B.nX||r===B.aA3 +if(r===B.nW){s.Z(B.bd) +return}if(q&&s.ch!=null)if(s.ch!=null)s.e6("onEnd",new A.aA0(s)) +s.dy=B.u8}, +j9(a){this.lR(a) +this.yc(a)}} +A.aA1.prototype={ +$0(){var s=this.a,r=s.at +r.toString +s=s.db +s===$&&A.b() +return r.$1(new A.wY(s.b))}, +$S:0} +A.aA_.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.wY(s.b))}, +$S:0} +A.aA0.prototype={ +$0(){var s=this.a,r=s.ch +r.toString +s=s.db +s===$&&A.b() +return r.$1(new A.wY(s.b))}, +$S:0} +A.AT.prototype={ +gB(a){return A.a4(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.ah(b)!==A.K(this))return!1 +return b instanceof A.AT&&b.a==this.a}, +j(a){return"DeviceGestureSettings(touchSlop: "+A.c(this.a)+")"}} +A.kL.prototype={ +j(a){return"#"+A.c5(this)+"("+this.a.j(0)+")"}} +A.G5.prototype={} +A.S9.prototype={ +e7(a,b){return this.a.iD(b)}} +A.Ft.prototype={ +e7(a,b){var s,r,q,p,o=new Float64Array(16),n=new A.bW(o) +n.c5(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.q5.prototype={ +az7(){var s,r,q,p,o=this.c +if(o.length===0)return +s=this.b +r=B.b.gY(s) +for(q=o.length,p=0;p":B.b.bJ(s,", "))+")"}} +A.C2.prototype={} +A.KF.prototype={} +A.C1.prototype={} +A.mY.prototype={ +lF(a){var s=this +switch(a.ghm(a)){case 1:if(s.p1==null&&s.p3==null&&s.p2==null&&s.p4==null&&s.RG==null&&s.R8==null)return!1 +break +case 2:return!1 +case 4:return!1 +default:return!1}return s.wt(a)}, +VD(){var s,r=this +r.Z(B.d_) +r.k2=!0 +s=r.CW +s.toString +r.a_F(s) +r.atU()}, +adS(a){var s,r=this +if(!a.gtE()){if(t.pY.b(a)){s=new A.jL(a.ge1(a),A.bO(20,null,!1,t.av)) +r.A=s +s.uk(a.giJ(a),a.gfA())}if(t.n2.b(a)){s=r.A +s.toString +s.uk(a.giJ(a),a.gfA())}}if(t.oN.b(a)){if(r.k2)r.atS(a) +else r.Z(B.bd) +r.So()}else if(t.Ko.b(a)){r.a1s() +r.So()}else if(t.pY.b(a)){r.k3=new A.iw(a.gfA(),a.gcl(a)) +r.k4=a.ghm(a) +r.atR(a)}else if(t.n2.b(a))if(a.ghm(a)!==r.k4&&!r.k2){r.Z(B.bd) +s=r.CW +s.toString +r.lR(s)}else if(r.k2)r.atT(a)}, +atR(a){this.k3.toString +this.e.h(0,a.gbX()).toString +switch(this.k4){case 1:break +case 2:break +case 4:break}}, +a1s(){var s,r=this +if(r.ch===B.lA)switch(r.k4){case 1:s=r.p1 +if(s!=null)r.e6("onLongPressCancel",s) +break +case 2:break +case 4:break}}, +atU(){var s,r=this +switch(r.k4){case 1:if(r.p3!=null){s=r.k3.b +r.e6("onLongPressStart",new A.aFo(r,new A.C2(s)))}s=r.p2 +if(s!=null)r.e6("onLongPress",s) +break +case 2:break +case 4:break}}, +atT(a){var s,r=this,q=a.gcl(a) +a.gfA() +s=a.gcl(a).ai(0,r.k3.b) +a.gfA().ai(0,r.k3.a) +switch(r.k4){case 1:if(r.p4!=null)r.e6("onLongPressMoveUpdate",new A.aFn(r,new A.KF(q,s))) +break +case 2:break +case 4:break}}, +atS(a){var s,r=this +r.A.zS() +a.gcl(a) +a.gfA() +r.A=null +switch(r.k4){case 1:if(r.RG!=null)r.e6("onLongPressEnd",new A.aFm(r,new A.C1())) +s=r.R8 +if(s!=null)r.e6("onLongPressUp",s) +break +case 2:break +case 4:break}}, +So(){var s=this +s.k2=!1 +s.A=s.k4=s.k3=null}, +Z(a){var s=this +if(a===B.bd)if(s.k2)s.So() +else s.a1s() +s.a_w(a)}, +kB(a){}} +A.aFo.prototype={ +$0(){return this.a.p3.$1(this.b)}, +$S:0} +A.aFn.prototype={ +$0(){return this.a.p4.$1(this.b)}, +$S:0} +A.aFm.prototype={ +$0(){return this.a.RG.$1(this.b)}, +$S:0} +A.rC.prototype={ +h(a,b){return this.c[b+this.a]}, +n(a,b,c){this.c[b+this.a]=c}, +ap(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.jr(A.a8(new A.ad(s,new A.aMZ(),r),!0,r.i("aN.E")),"[","]") +r=this.b +r===$&&A.b() +return"PolynomialFit("+q+", confidence: "+B.d.aF(r,3)+")"}} +A.aMZ.prototype={ +$1(a){return B.d.ah8(a,3)}, +$S:693} +A.a1H.prototype={ +ZR(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.aMY(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.rC(c*a5,a5,q).ap(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;mr){r=p +s=q}}else{r.toString +if(p0:b.b>0,o=q?b.a:b.b,n=this.ayJ(a,p) +if(n===c)return o +else{n.toString +s=this.Rs(a,n,p) +r=this.Rs(a,c,p) +if(p){q=r+o +if(q>s)return q-s +else return 0}else{q=r+o +if(q")),r=r.y[1],q=n;s.u();){p=s.a +if(p==null)p=r.a(p) +q=o?q+p.a:q+p.b}return q/m}, +k7(a){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(!a.gtE())s=t.pY.b(a)||t.n2.b(a)||t.w5.b(a)||t.DB.b(a) +else s=!1 +if(s){$label0$0:{if(t.w5.b(a)){s=B.j +break $label0$0}if(t.DB.b(a)){s=a.gEj(a) +break $label0$0}s=a.gfA() +break $label0$0}r=h.p2.h(0,a.gbX()) +r.toString +r.uk(a.giJ(a),s)}s=t.n2.b(a) +if(s&&a.ghm(a)!==h.k3){h.Rw(a.gbX()) +return}if((s||t.DB.b(a))&&h.aKr(a.gbX())){q=s?a.gy8():t.DB.a(a).gafD() +p=s?a.go8():t.DB.a(a).gaeX() +if(s)o=a.gcl(a) +else{r=a.gcl(a) +t.DB.a(a) +o=r.ab(0,a.gEj(a))}n=s?a.gfA():a.gfA().ab(0,t.DB.a(a).gX7()) +h.k1=new A.iw(n,o) +m=h.aIX(a.gbX(),p) +$label1$1:{l=h.fy +if(B.e4===l||B.PR===l){s=h.id +s===$&&A.b() +h.id=s.ab(0,new A.iw(p,q)) +h.k2=a.giJ(a) +h.k4=a.gcZ(a) +k=h.AY(p) +if(a.gcZ(a)==null)j=null +else{s=a.gcZ(a) +s.toString +j=A.xF(s)}s=h.ok +s===$&&A.b() +r=A.CP(j,null,k,n).ges() +i=h.B1(k) +h.ok=s+r*J.hs(i==null?1:i) +s=a.ge1(a) +r=h.b +if(h.S0(s,r==null?null:r.a)){h.p1=!0 +if(B.b.p(h.RG,a.gbX()))h.a1n(a.gbX()) +else h.Z(B.d_)}break $label1$1}if(B.kr===l){s=a.giJ(a) +h.a1x(h.AY(m),o,n,h.B1(m),s)}}h.aIm(a.gbX(),p)}if(t.oN.b(a)||t.Ko.b(a)||t.WQ.b(a))h.Rw(a.gbX())}, +kB(a){var s=this +s.RG.push(a) +s.rx=a +if(!s.fr||s.p1)s.a1n(a)}, +j9(a){this.Rw(a)}, +yc(a){var s,r=this +switch(r.fy.a){case 0:break +case 1:r.Z(B.bd) +s=r.cy +if(s!=null)r.e6("onCancel",s) +break +case 2:r.atQ(a) +break}r.p1=!1 +r.p2.V(0) +r.k3=null +r.fy=B.e4}, +Rw(a){var s,r=this +r.lR(a) +s=r.RG +if(!B.b.C(s,a))r.Nu(a,B.bd) +r.p3.C(0,a) +if(r.rx===a)r.rx=s.length!==0?B.b.gW(s):null}, +atO(){var s,r=this +if(r.ay!=null){s=r.go +s===$&&A.b() +r.e6("onDown",new A.awj(r,new A.pJ(s.b)))}}, +a1n(a){var s,r,q,p,o,n,m,l,k=this +if(k.fy===B.kr)return +k.fy=B.kr +s=k.id +s===$&&A.b() +r=k.k2 +q=k.k4 +switch(k.at.a){case 1:p=k.go +p===$&&A.b() +k.go=p.ab(0,s) +o=B.j +break +case 0:o=k.AY(s.a) +break +default:o=null}k.id=B.Jm +k.k4=k.k2=null +k.atZ(r,a) +if(!J.e(o,B.j)&&k.CW!=null){n=q!=null?A.xF(q):null +s=k.go +s===$&&A.b() +m=A.CP(n,null,o,s.a.ab(0,o)) +l=k.go.ab(0,new A.iw(o,m)) +k.a1x(o,l.b,l.a,k.B1(o),r)}k.Z(B.d_)}, +atZ(a,b){var s,r,q=this +if(q.ch!=null){s=q.go +s===$&&A.b() +r=q.e.h(0,b) +r.toString +q.e6("onStart",new A.awo(q,new A.mH(a,s.b,r)))}}, +a1x(a,b,c,d,e){if(this.CW!=null)this.e6("onUpdate",new A.awp(this,new A.mI(e,a,d,b)))}, +atQ(a){var s,r,q,p,o,n=this,m={} +if(n.cx==null)return +s=n.p2.h(0,a) +r=s.zS() +m.a=null +if(r==null){q=new A.awk() +p=null}else{o=m.a=n.Qk(r,s.a) +q=o!=null?new A.awl(m,r):new A.awm(r) +p=o}if(p==null){p=n.k1 +p===$&&A.b() +m.a=new A.iM(B.eB,0,p.b)}n.aVV("onEnd",new A.awn(m,n),q)}, +m(){this.p2.V(0) +this.mI()}} +A.awj.prototype={ +$0(){return this.a.ay.$1(this.b)}, +$S:0} +A.awo.prototype={ +$0(){return this.a.ch.$1(this.b)}, +$S:0} +A.awp.prototype={ +$0(){return this.a.CW.$1(this.b)}, +$S:0} +A.awk.prototype={ +$0(){return"Could not estimate velocity."}, +$S:17} +A.awl.prototype={ +$0(){return this.b.j(0)+"; fling at "+this.a.a.a.j(0)+"."}, +$S:17} +A.awm.prototype={ +$0(){return this.a.j(0)+"; judged to not be a fling."}, +$S:17} +A.awn.prototype={ +$0(){var s,r=this.b.cx +r.toString +s=this.a.a +s.toString +return r.$1(s)}, +$S:0} +A.lk.prototype={ +Qk(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.vS(b,o.b) +r=a.a.b +if(!(Math.abs(r)>n&&Math.abs(a.d.b)>s))return null +q=o.dy +if(q==null)q=8000 +p=A.M(r,-q,q) +r=o.k1 +r===$&&A.b() +return new A.iM(new A.km(new A.z(0,p)),p,r.b)}, +S0(a,b){var s=this.ok +s===$&&A.b() +return Math.abs(s)>A.vS(a,this.b)}, +AY(a){return new A.z(0,a.b)}, +B1(a){return a.b}, +Rr(){return B.ih}} +A.kM.prototype={ +Qk(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.vS(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.M(r,-q,q) +r=o.k1 +r===$&&A.b() +return new A.iM(new A.km(new A.z(p,0)),p,r.b)}, +S0(a,b){var s=this.ok +s===$&&A.b() +return Math.abs(s)>A.vS(a,this.b)}, +AY(a){return new A.z(a.a,0)}, +B1(a){return a.a}, +Rr(){return B.ig}} +A.n8.prototype={ +Qk(a,b){var s,r,q,p,o,n=this,m=n.dx +if(m==null)m=50 +s=n.db +if(s==null)s=A.vS(b,n.b) +r=a.a +if(!(r.guK()>m*m&&a.d.guK()>s*s))return null +q=n.dx +if(q==null)q=50 +p=n.dy +if(p==null)p=8000 +o=new A.km(r).aPt(q,p) +p=n.k1 +p===$&&A.b() +return new A.iM(o,null,p.b)}, +S0(a,b){var s=this.ok +s===$&&A.b() +return Math.abs(s)>A.biA(a,this.b)}, +AY(a){return a}, +B1(a){return null}} +A.aeV.prototype={ +D(){return"_DragDirection."+this.b}} +A.adW.prototype={ +aGn(){this.a=!0}} +A.G1.prototype={ +lR(a){if(this.r){this.r=!1 +$.iq.bI$.agp(this.b,a)}}, +aeM(a,b){return a.gcl(a).ai(0,this.d).ges()<=b}} +A.mG.prototype={ +lF(a){var s,r,q=this +if(q.y==null){s=q.r==null +if(s)return!1}r=q.wt(a) +if(!r)q.tZ() +return r}, +ln(a){var s=this,r=s.y +if(r!=null)if(!r.aeM(a,100))return +else{r=s.y +if(!r.f.a||a.ghm(a)!==r.e){s.tZ() +return s.a8X(a)}}s.a8X(a)}, +a8X(a){var s,r,q,p,o,n,m=this +m.a8h() +s=$.iq.bR$.nH(0,a.gbX(),m) +r=a.gbX() +q=a.gcl(a) +p=a.ghm(a) +o=new A.adW() +A.bZ(B.a__,o.gaGm()) +n=new A.G1(r,s,q,p,o) +m.z.n(0,a.gbX(),n) +o=a.gcZ(a) +if(!n.r){n.r=!0 +$.iq.bI$.aao(r,m.gIe(),o)}}, +aFd(a){var s,r=this,q=r.z,p=q.h(0,a.gbX()) +p.toString +if(t.oN.b(a)){s=r.y +if(s==null){if(r.x==null)r.x=A.bZ(B.bl,r.gaFe()) +s=p.b +$.iq.bR$.LG(s) +p.lR(r.gIe()) +q.C(0,s) +r.a1G() +r.y=p}else{s=s.c +s.a.xi(s.b,s.c,B.d_) +s=p.c +s.a.xi(s.b,s.c,B.d_) +p.lR(r.gIe()) +q.C(0,p.b) +q=r.r +if(q!=null)r.e6("onDoubleTap",q) +r.tZ()}}else if(t.n2.b(a)){if(!p.aeM(a,18))r.Bz(p)}else if(t.Ko.b(a))r.Bz(p)}, +kB(a){}, +j9(a){var s,r=this,q=r.z.h(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.Bz(q)}, +Bz(a){var s,r=this,q=r.z +q.C(0,a.b) +s=a.c +s.a.xi(s.b,s.c,B.bd) +a.lR(r.gIe()) +s=r.y +if(s!=null)if(a===s)r.tZ() +else{r.a1l() +if(q.a===0)r.tZ()}}, +m(){this.tZ() +this.a_c()}, +tZ(){var s,r=this +r.a8h() +if(r.y!=null){if(r.z.a!==0)r.a1l() +s=r.y +s.toString +r.y=null +r.Bz(s) +$.iq.bR$.b_j(0,s.b)}r.a1G()}, +a1G(){var s=this.z.gaJ(0) +B.b.az(A.a8(s,!0,A.y(s).i("B.E")),this.gaIt())}, +a8h(){var s=this.x +if(s!=null){s.S(0) +this.x=null}}, +a1l(){}} +A.aMT.prototype={ +aao(a,b,c){J.bT(this.a.cP(0,a,new A.aMV()),b,c)}, +agp(a,b){var s,r=this.a,q=r.h(0,a) +q.toString +s=J.cF(q) +s.C(q,b) +if(s.ga_(q))r.C(0,a)}, +aw6(a,b,c){var s,r,q,p,o +a=a +try{a=a.bY(c) +b.$1(a)}catch(p){s=A.v(p) +r=A.aT(p) +q=null +o=A.c3("while routing a pointer event") +A.e9(new A.cM(s,r,"gesture library",o,q,!1))}}, +agU(a){var s=this,r=s.a.h(0,a.gbX()),q=s.b,p=t.Ld,o=t.iD,n=A.qg(q,p,o) +if(r!=null)s.a2G(a,r,A.qg(r,p,o)) +s.a2G(a,q,n)}, +a2G(a,b,c){c.az(0,new A.aMU(this,b,a))}} +A.aMV.prototype={ +$0(){return A.w(t.Ld,t.iD)}, +$S:702} +A.aMU.prototype={ +$2(a,b){if(J.cO(this.b,a))this.a.aw6(this.c,a,b)}, +$S:703} +A.aMW.prototype={ +agg(a,b,c){if(this.a!=null)return +this.b=b +this.a=c}, +Z(a){var s,r,q,p,o,n=this,m=n.a +if(m==null){a.rW(!0) +return}try{p=n.b +p.toString +m.$1(p)}catch(o){s=A.v(o) +r=A.aT(o) +q=null +m=A.c3("while resolving a PointerSignalEvent") +A.e9(new A.cM(s,r,"gesture library",m,q,!1))}n.b=n.a=null}} +A.a_A.prototype={ +D(){return"DragStartBehavior."+this.b}} +A.a4O.prototype={ +D(){return"MultitouchDragStrategy."+this.b}} +A.es.prototype={ +aNZ(a){this.e.n(0,a.gbX(),a.ge1(a)) +if(this.LS(a))this.Js(a)}, +Js(a){}, +Cf(a){var s=this +s.e.n(0,a.gbX(),a.ge1(a)) +if(s.lF(a))s.ln(a) +else s.Dv(a)}, +ln(a){}, +Dv(a){}, +lF(a){var s=this.c +return(s==null||s.p(0,a.ge1(a)))&&this.d.$1(a.ghm(a))}, +LS(a){var s=this.c +return s==null||s.p(0,a.ge1(a))}, +m(){}, +aez(a,b,c){var s,r,q,p,o,n=null +try{n=b.$0()}catch(p){s=A.v(p) +r=A.aT(p) +q=null +o=A.c3("while handling a gesture") +A.e9(new A.cM(s,r,"gesture",o,q,!1))}return n}, +e6(a,b){return this.aez(a,b,null,t.z)}, +aVV(a,b,c){return this.aez(a,b,c,t.z)}} +A.LO.prototype={ +ln(a){this.A8(a.gbX(),a.gcZ(a))}, +Dv(a){this.Z(B.bd)}, +kB(a){}, +j9(a){}, +Z(a){var s,r=this.f,q=A.a8(r.gaJ(0),!0,t.SP) +r.V(0) +for(r=q.length,s=0;s")),r=r.c;q.u();){p=q.d +if(p==null)p=r.a(p) +o=$.iq.bI$ +n=k.grz() +o=o.a +m=o.h(0,p) +m.toString +l=J.cF(m) +l.C(m,n) +if(l.ga_(m))o.C(0,p)}s.V(0) +k.a_c()}, +A8(a,b){var s,r=this +$.iq.bI$.aao(a,r.grz(),b) +r.r.q(0,a) +s=r.w +s=s==null?null:s.nH(0,a,r) +if(s==null)s=$.iq.bR$.nH(0,a,r) +r.f.n(0,a,s)}, +lR(a){var s=this.r +if(s.p(0,a)){$.iq.bI$.agp(a,this.grz()) +s.C(0,a) +if(s.a===0)this.yc(a)}}, +Gd(a){if(t.oN.b(a)||t.Ko.b(a)||t.WQ.b(a))this.lR(a.gbX())}} +A.JG.prototype={ +D(){return"GestureRecognizerState."+this.b}} +A.CR.prototype={ +ln(a){var s=this +s.Ah(a) +if(s.ch===B.eV){s.ch=B.lA +s.CW=a.gbX() +s.cx=new A.iw(a.gfA(),a.gcl(a)) +s.db=A.bZ(s.at,new A.aN3(s,a))}}, +Dv(a){if(!this.cy)this.a_v(a)}, +k7(a){var s,r,q,p=this +if(p.ch===B.lA&&a.gbX()===p.CW){if(!p.cy)s=p.a3B(a)>18 +else s=!1 +if(p.cy){r=p.ay +q=r!=null&&p.a3B(a)>r}else q=!1 +if(t.n2.b(a))r=s||q +else r=!1 +if(r){p.Z(B.bd) +r=p.CW +r.toString +p.lR(r)}else p.adS(a)}p.Gd(a)}, +VD(){}, +kB(a){if(a===this.CW){this.pb() +this.cy=!0}}, +j9(a){var s=this +if(a===s.CW&&s.ch===B.lA){s.pb() +s.ch=B.a0T}}, +yc(a){var s=this +s.pb() +s.ch=B.eV +s.cx=null +s.cy=!1}, +m(){this.pb() +this.mI()}, +pb(){var s=this.db +if(s!=null){s.S(0) +this.db=null}}, +a3B(a){return a.gcl(a).ai(0,this.cx.b).ges()}} +A.aN3.prototype={ +$0(){this.a.VD() +return null}, +$S:0} +A.iw.prototype={ +ab(a,b){return new A.iw(this.a.ab(0,b.a),this.b.ab(0,b.b))}, +ai(a,b){return new A.iw(this.a.ai(0,b.a),this.b.ai(0,b.b))}, +j(a){return"OffsetPair(local: "+this.a.j(0)+", global: "+this.b.j(0)+")"}} +A.afQ.prototype={} +A.FM.prototype={ +D(){return"_ScaleState."+this.b}} +A.zu.prototype={ +gaTw(){return this.b.ab(0,this.c)}, +glO(a){return this.d}, +j(a){var s=this +return"_PointerPanZoomData(parent: "+s.a.j(0)+", _position: "+s.b.j(0)+", _pan: "+s.c.j(0)+", _scale: "+A.c(s.d)+", _rotation: "+s.e+")"}} +A.aQ1.prototype={ +j(a){return"ScaleStartDetails(focalPoint: "+this.a.j(0)+", localFocalPoint: "+this.b.j(0)+", pointersCount: "+this.c+")"}} +A.aQ2.prototype={ +j(a){var s=this +return"ScaleUpdateDetails(focalPoint: "+s.b.j(0)+", localFocalPoint: "+s.c.j(0)+", scale: "+A.c(s.d)+", horizontalScale: "+A.c(s.e)+", verticalScale: "+A.c(s.f)+", rotation: "+A.c(s.r)+", pointerCount: "+s.w+", focalPointDelta: "+s.a.j(0)+", sourceTimeStamp: "+A.c(s.x)+")"}} +A.a7C.prototype={ +j(a){return"ScaleEndDetails(velocity: "+this.a.j(0)+", scaleVelocity: "+A.c(this.b)+", pointerCount: "+this.c+")"}} +A.agJ.prototype={} +A.ng.prototype={ +gN_(){return 2*this.R8.a+this.p1.length}, +gBt(){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}, +gxn(){var s,r,q,p=this.gBt() +for(s=this.R8.gaJ(0),r=A.y(s),s=new A.bD(J.ay(s.a),s.b,r.i("bD<1,2>")),r=r.y[1];s.u();){q=s.a +p*=(q==null?r.a(q):q).glO(0)/this.RG}return p}, +gaD8(){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.gaJ(0),s=A.y(o),o=new A.bD(J.ay(o.a),o.b,s.i("bD<1,2>")),s=s.y[1];o.u();){q=o.a +r*=(q==null?s.a(q):q).glO(0)/p.RG}return r}, +gaNh(){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.gaJ(0),s=A.y(o),o=new A.bD(J.ay(o.a),o.b,s.i("bD<1,2>")),s=s.y[1];o.u();){q=o.a +r*=(q==null?s.a(q):q).glO(0)/p.RG}return r}, +auC(){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.gaJ(0),s=A.y(m),m=new A.bD(J.ay(m.a),m.b,s.i("bD<1,2>")),s=s.y[1];m.u();){r=m.a +o+=(r==null?s.a(r):r).e}return o-n.rx}, +ln(a){var s=this +s.Ah(a) +s.p2.n(0,a.gbX(),new A.jL(a.ge1(a),A.bO(20,null,!1,t.av))) +s.ry=a.giJ(a) +if(s.CW===B.kt){s.CW=B.ku +s.k1=s.id=s.go=s.fy=s.fx=s.fr=0}}, +LS(a){return!0}, +Js(a){var s=this +s.a_b(a) +s.A8(a.gbX(),a.gcZ(a)) +s.p2.n(0,a.gbX(),new A.jL(a.ge1(a),A.bO(20,null,!1,t.av))) +s.ry=a.giJ(a) +if(s.CW===B.kt){s.CW=B.ku +s.RG=1 +s.rx=0}}, +k7(a){var s,r,q,p,o,n=this,m=!0 +if(t.n2.b(a)){s=n.p2.h(0,a.gbX()) +s.toString +if(!a.gtE())s.uk(a.giJ(a),a.gcl(a)) +n.ok.n(0,a.gbX(),a.gcl(a)) +n.cx=a.gcZ(a) +r=!1}else{r=!0 +if(t.pY.b(a)){n.ok.n(0,a.gbX(),a.gcl(a)) +n.p1.push(a.gbX()) +n.cx=a.gcZ(a)}else if(t.oN.b(a)||t.Ko.b(a)){n.ok.C(0,a.gbX()) +B.b.C(n.p1,a.gbX()) +n.cx=a.gcZ(a) +m=!1}else if(t.w5.b(a)){n.R8.n(0,a.gbX(),new A.zu(n,a.gcl(a),B.j,1,0)) +n.cx=a.gcZ(a)}else{m=t.DB.b(a) +if(m){s=a.gtE() +if(!s){s=n.p2.h(0,a.gbX()) +s.toString +s.uk(a.giJ(a),a.gEj(a))}n.R8.n(0,a.gbX(),new A.zu(n,a.gcl(a),a.gEj(a),a.glO(a),a.gagS())) +n.cx=a.gcZ(a) +r=!1}else{r=t.WQ.b(a) +if(r)n.R8.C(0,a.gbX())}}}s=n.ok +if(s.a<2)n.k3=n.k4 +else{q=n.k3 +if(q!=null){p=n.p1 +q=q.b===p[0]&&q.d===p[1]}else q=!1 +p=n.p1 +if(q){q=p[0] +o=s.h(0,q) +o.toString +p=p[1] +s=s.h(0,p) +s.toString +n.k4=new A.agJ(o,q,s,p)}else{q=p[0] +o=s.h(0,q) +o.toString +p=p[1] +s=s.h(0,p) +s.toString +n.k4=n.k3=new A.agJ(o,q,s,p)}}n.aMw(0) +if(!r||n.aIk(a.gbX()))n.asd(m,a) +n.Gd(a)}, +aMw(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.js(s,s.r),q=B.j;r.u();){p=s.h(0,r.d) +q=new A.z(q.a+p.a,q.b+p.b)}for(r=e.R8,p=r.gaJ(0),o=A.y(p),p=new A.bD(J.ay(p.a),p.b,o.i("bD<1,2>")),o=o.y[1];p.u();){n=p.a +n=(n==null?o.a(n):n).gaTw() +q=new A.z(q.a+n.a,q.b+n.b)}r=e.dy=q.fO(0,Math.max(1,s.a+r.a)) +p=e.cx +if(d==null){e.k2=A.Mf(p,r) +e.p4=B.j}else{o=e.k2 +o===$&&A.b() +r=A.Mf(p,r) +e.k2=r +e.p4=r.ai(0,o)}m=s.a +for(r=A.js(s,s.r),l=B.j;r.u();){p=s.h(0,r.d) +l=new A.z(l.a+p.a,l.b+p.b)}r=m>0 +if(r)l=l.fO(0,m) +for(p=A.js(s,s.r),o=l.a,n=l.b,k=0,j=0,i=0;p.u();){h=p.d +g=s.h(0,h) +f=o-g.a +g=n-g.b +k+=Math.sqrt(f*f+g*g) +j+=Math.abs(o-s.h(0,h).a) +i+=Math.abs(n-s.h(0,h).b)}e.fx=r?k/m:0 +e.go=r?j/m:0 +e.k1=r?i/m:0}, +aIk(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.gxn()/r.gBt() +p=p.gaJ(0) +r.rx=A.n_(p,new A.aPW(),A.y(p).i("B.E"),t.i).lI(0,new A.aPX())}if(r.CW===B.oe){if(r.ch!=null){s=r.p2.h(0,a).Or() +q.a=s +p=s.a +if(p.guK()>2500){if(p.guK()>64e6)q.a=new A.km(p.fO(0,p.ges()).ap(0,8000)) +r.e6("onEnd",new A.aPY(q,r))}else r.e6("onEnd",new A.aPZ(r))}r.CW=B.Q5 +r.p3=new A.jL(B.br,A.bO(20,null,!1,t.av)) +return!1}r.p3=new A.jL(B.br,A.bO(20,null,!1,t.av)) +return!0}, +asd(a,b){var s,r,q,p,o=this,n=o.CW +if(n===B.kt)n=o.CW=B.ku +if(n===B.ku){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.ai(0,q).ges() +if(Math.abs(n-s)>A.bV8(b.ge1(b))||p>A.biA(b.ge1(b),o.b)||Math.max(o.gxn()/o.gBt(),o.gBt()/o.gxn())>1.05)o.Z(B.d_)}else if(n.a>=2)o.Z(B.d_) +if(o.CW===B.Q5&&a){o.ry=b.giJ(b) +o.CW=B.oe +o.a2I()}if(o.CW===B.oe){n=o.p3 +if(n!=null)n.uk(b.giJ(b),new A.z(o.gxn(),0)) +if(o.ay!=null)o.e6("onUpdate",new A.aPU(o,b))}}, +a2I(){var s=this +if(s.ax!=null)s.e6("onStart",new A.aPV(s)) +s.ry=null}, +kB(a){var s,r=this +if(r.CW===B.ku){r.CW=B.oe +r.a2I() +if(r.at===B.S){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.gxn()/r.gBt() +s=s.gaJ(0) +r.rx=A.n_(s,new A.aQ_(),A.y(s).i("B.E"),t.i).lI(0,new A.aQ0())}}}}, +j9(a){var s=this +s.R8.C(0,a) +s.ok.C(0,a) +B.b.C(s.p1,a) +s.lR(a)}, +yc(a){switch(this.CW.a){case 1:this.Z(B.bd) +break +case 0:break +case 2:break +case 3:break}this.CW=B.kt}, +m(){this.p2.V(0) +this.mI()}} +A.aPW.prototype={ +$1(a){return a.e}, +$S:208} +A.aPX.prototype={ +$2(a,b){return a+b}, +$S:75} +A.aPY.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.Or().a.a +if(r==null)r=-1 +return p.$1(new A.a7C(s,r,q.gN_()))}, +$S:0} +A.aPZ.prototype={ +$0(){var s,r=this.a,q=r.ch +q.toString +s=r.p3 +s=s==null?null:s.Or().a.a +if(s==null)s=-1 +return q.$1(new A.a7C(B.eB,s,r.gN_()))}, +$S:0} +A.aPU.prototype={ +$0(){var s,r,q,p,o,n,m,l,k=this.a,j=k.ay +j.toString +s=k.gxn() +r=k.gaD8() +q=k.gaNh() +p=k.dy +p.toString +o=k.k2 +o===$&&A.b() +n=k.auC() +m=k.gN_() +k=k.p4 +k===$&&A.b() +l=this.b +j.$1(A.bN2(p,k,r,o,m,n,s,l.giJ(l),q))}, +$S:0} +A.aPV.prototype={ +$0(){var s,r,q=this.a,p=q.ax +p.toString +s=q.dy +s.toString +r=q.k2 +r===$&&A.b() +q=q.gN_() +p.$1(new A.aQ1(s,r,q))}, +$S:0} +A.aQ_.prototype={ +$1(a){return a.e}, +$S:208} +A.aQ0.prototype={ +$2(a,b){return a+b}, +$S:75} +A.DU.prototype={} +A.uU.prototype={} +A.WT.prototype={ +ln(a){var s=this +if(s.ch===B.eV){if(s.k4!=null&&s.ok!=null)s.BE() +s.k4=a}if(s.k4!=null)s.an6(a)}, +A8(a,b){this.amW(a,b)}, +adS(a){var s,r,q=this +if(t.oN.b(a)){q.ok=a +q.a1w()}else if(t.Ko.b(a)){q.Z(B.bd) +if(q.k2){s=q.k4 +s.toString +q.Lz(a,s,"")}q.BE()}else{s=a.ghm(a) +r=q.k4 +if(s!==r.ghm(r)){q.Z(B.bd) +s=q.CW +s.toString +q.lR(s)}}}, +Z(a){var s,r=this +if(r.k3&&a===B.bd){s=r.k4 +s.toString +r.Lz(null,s,"spontaneous") +r.BE()}r.a_w(a)}, +VD(){this.a8p()}, +kB(a){var s=this +s.a_F(a) +if(a===s.CW){s.a8p() +s.k3=!0 +s.a1w()}}, +j9(a){var s,r=this +r.an7(a) +if(a===r.CW){if(r.k2){s=r.k4 +s.toString +r.Lz(null,s,"forced")}r.BE()}}, +a8p(){var s,r=this +if(r.k2)return +s=r.k4 +s.toString +r.adV(s) +r.k2=!0}, +a1w(){var s,r,q=this +if(!q.k3||q.ok==null)return +s=q.k4 +s.toString +r=q.ok +r.toString +q.adW(s,r) +q.BE()}, +BE(){var s=this +s.k3=s.k2=!1 +s.k4=s.ok=null}} +A.kj.prototype={ +lF(a){var s=this +switch(a.ghm(a)){case 1:if(s.a2==null&&s.bI==null&&s.by==null&&s.bR==null)return!1 +break +case 2:if(s.A==null&&s.X==null&&s.a9==null&&s.aC==null)return!1 +break +case 4:return!1 +default:return!1}return s.wt(a)}, +adV(a){var s,r=this,q=a.gcl(a),p=a.gfA() +r.e.h(0,a.gbX()).toString +s=new A.DU(q,p) +switch(a.ghm(a)){case 1:if(r.a2!=null)r.e6("onTapDown",new A.aTJ(r,s)) +break +case 2:if(r.X!=null)r.e6("onSecondaryTapDown",new A.aTK(r,s)) +break +case 4:break}}, +adW(a,b){var s,r,q=this +b.ge1(b) +b.gcl(b) +b.gfA() +s=new A.uU() +switch(a.ghm(a)){case 1:if(q.by!=null)q.e6("onTapUp",new A.aTL(q,s)) +r=q.bI +if(r!=null)q.e6("onTap",r) +break +case 2:if(q.a9!=null)q.e6("onSecondaryTapUp",new A.aTM(q,s)) +if(q.A!=null)q.e6("onSecondaryTap",new A.aTN(q)) +break +case 4:break}}, +Lz(a,b,c){var s,r=this,q=c===""?c:c+" " +switch(b.ghm(b)){case 1:s=r.bR +if(s!=null)r.e6(q+"onTapCancel",s) +break +case 2:s=r.aC +if(s!=null)r.e6(q+"onSecondaryTapCancel",s) +break +case 4:break}}} +A.aTJ.prototype={ +$0(){return this.a.a2.$1(this.b)}, +$S:0} +A.aTK.prototype={ +$0(){return this.a.X.$1(this.b)}, +$S:0} +A.aTL.prototype={ +$0(){return this.a.by.$1(this.b)}, +$S:0} +A.aTM.prototype={ +$0(){return this.a.a9.$1(this.b)}, +$S:0} +A.aTN.prototype={ +$0(){return this.a.A.$0()}, +$S:0} +A.QW.prototype={ +D(){return"_DragState."+this.b}} +A.OE.prototype={} +A.OH.prototype={} +A.OG.prototype={} +A.OI.prototype={} +A.OF.prototype={} +A.TU.prototype={ +k7(a){var s,r,q=this +if(t.n2.b(a)){s=A.vS(a.ge1(a),q.b) +r=q.L7$ +if(a.gcl(a).ai(0,r.b).ges()>s){q.GV() +q.Dl$=q.Dk$=null}}else if(t.oN.b(a)){q.yD$=a +if(q.pA$!=null){q.GV() +if(q.v1$==null)q.v1$=A.bZ(B.bl,q.gauN())}}else if(t.Ko.b(a))q.J_()}, +j9(a){this.J_()}, +aCW(a){var s=this.Dk$ +s.toString +if(a===s)return!0 +else return!1}, +aDX(a){var s=this.Dl$ +if(s==null)return!1 +return a.ai(0,s).ges()<=100}, +GV(){var s=this.v1$ +if(s!=null){s.S(0) +this.v1$=null}}, +auO(){}, +J_(){var s,r=this +r.GV() +r.Dl$=r.L7$=r.Dk$=null +r.nW$=0 +r.yD$=r.pA$=null +s=r.L9$ +if(s!=null)s.$0()}} +A.He.prototype={ +aA9(){var s=this +if(s.db!=null)s.e6("onDragUpdate",new A.aqv(s)) +s.p3=s.p4=null}, +lF(a){var s=this +if(s.go==null)switch(a.ghm(a)){case 1:if(s.CW==null&&s.cy==null&&s.db==null&&s.dx==null&&s.cx==null&&s.dy==null)return!1 +break +default:return!1}else if(a.gbX()!==s.go)return!1 +return s.wt(a)}, +ln(a){var s,r=this +if(r.k2===B.kq){r.aoo(a) +r.go=a.gbX() +r.p1=r.ok=0 +r.k2=B.u6 +s=a.gcl(a) +r.k4=new A.iw(a.gfA(),s) +r.id=A.bZ(B.bc,new A.aqw(r,a))}}, +Dv(a){if(a.ghm(a)!==1)if(!this.fy)this.a_v(a)}, +kB(a){var s,r=this +if(a!==r.go)return +r.IY() +r.R8.q(0,a) +s=r.pA$ +if(s!=null)r.a1u(s) +r.fy=!0 +s=r.k3 +if(s!=null&&r.ch){s.toString +r.Gz(s)}s=r.k3 +if(s!=null&&!r.ch){r.k2=B.ii +s.toString +r.Gz(s)}s=r.yD$ +if(s!=null)r.a1v(s)}, +yc(a){var s,r=this +switch(r.k2.a){case 0:r.a8q() +r.Z(B.bd) +break +case 1:if(r.fr)if(r.fy){if(r.pA$!=null){if(!r.R8.C(0,a))r.Nu(a,B.bd) +r.k2=B.ii +s=r.pA$ +s.toString +r.Gz(s) +r.a1o()}}else{r.a8q() +r.Z(B.bd)}else{s=r.yD$ +if(s!=null)r.a1v(s)}break +case 2:r.a1o() +break}r.IY() +r.k2=B.kq +r.fr=!1}, +k7(a){var s,r,q,p,o,n,m=this +if(a.gbX()!==m.go)return +m.apr(a) +if(t.n2.b(a)){s=A.vS(a.ge1(a),m.b) +if(!m.fr){r=m.k4 +r===$&&A.b() +r=a.gcl(a).ai(0,r.b).ges()>s}else r=!0 +m.fr=r +r=m.k2 +if(r===B.ii)m.a1q(a) +else if(r===B.u6){if(m.k3==null){if(a.gcZ(a)==null)q=null +else{r=a.gcZ(a) +r.toString +q=A.xF(r)}p=m.a8r(a.go8()) +r=m.ok +r===$&&A.b() +o=A.CP(q,null,p,a.gfA()).ges() +n=m.a8s(p) +m.ok=r+o*J.hs(n==null?1:n) +r=m.p1 +r===$&&A.b() +m.p1=r+A.CP(q,null,a.go8(),a.gfA()).ges()*B.e.gOT(1) +if(!m.a8t(a.ge1(a)))r=m.fy&&Math.abs(m.p1)>A.biA(a.ge1(a),m.b) +else r=!0 +if(r){m.k3=a +if(m.ch){m.k2=B.ii +if(!m.fy)m.Z(B.d_)}}}r=m.k3 +if(r!=null&&m.fy){m.k2=B.ii +r.toString +m.Gz(r)}}}else if(t.oN.b(a)){r=m.k2 +if(r===B.u6)m.Gd(a) +else if(r===B.ii)m.TJ(a.gbX())}else if(t.Ko.b(a)){m.k2=B.kq +m.TJ(a.gbX())}}, +j9(a){var s=this +if(a!==s.go)return +s.aps(a) +s.IY() +s.TJ(a) +s.IA() +s.Iz()}, +m(){this.IY() +this.Iz() +this.aop()}, +Gz(a){var s,r,q,p,o,n=this +if(!n.fy)return +if(n.at===B.S){s=n.k4 +s===$&&A.b() +r=a.gy8() +n.k4=s.ab(0,new A.iw(a.go8(),r))}n.atP(a) +if(!a.go8().l(0,B.j)){if(a.gcZ(a)!=null){s=a.gcZ(a) +s.toString +q=A.xF(s)}else q=null +s=n.k4 +s===$&&A.b() +p=s.a.ab(0,a.go8()) +o=A.CP(q,null,a.go8(),p) +s=a.go8() +n.p2=n.k4.ab(0,new A.iw(s,o)) +n.a1q(a) +n.p2=null}}, +a1u(a){var s,r,q,p,o=this +if(o.fx)return +s=a.gcl(a) +r=a.gfA() +q=o.e.h(0,a.gbX()) +q.toString +p=o.nW$ +if(o.CW!=null)o.e6("onTapDown",new A.aqt(o,new A.OE(s,r,q,p))) +o.fx=!0}, +a1v(a){var s,r,q,p,o=this +if(!o.fy)return +s=a.ge1(a) +r=a.gcl(a) +q=a.gfA() +p=o.nW$ +if(o.cx!=null)o.e6("onTapUp",new A.aqu(o,new A.OH(r,q,s,p))) +o.IA() +if(!o.R8.C(0,a.gbX()))o.Nu(a.gbX(),B.bd)}, +atP(a){var s,r,q,p=this +if(p.cy!=null){s=a.giJ(a) +r=p.k4 +r===$&&A.b() +q=p.e.h(0,a.gbX()) +q.toString +p.e6("onDragStart",new A.aqr(p,new A.OG(s,r.b,r.a,q,p.nW$)))}p.k3=null}, +a1q(a){var s,r,q,p,o,n,m=this,l=m.p2,k=l!=null?l.b:a.gcl(a) +l=m.p2 +s=l!=null?l.a:a.gfA() +l=a.giJ(a) +r=a.go8() +q=m.e.h(0,a.gbX()) +q.toString +p=m.k4 +p===$&&A.b() +p=k.ai(0,p.b) +o=s.ai(0,m.k4.a) +n=m.nW$ +if(m.db!=null)m.e6("onDragUpdate",new A.aqs(m,new A.OI(l,r,k,s,q,p,o,n)))}, +a1o(){var s=this,r=s.p4 +if(r!=null){r.S(0) +s.aA9()}r=s.nW$ +if(s.dx!=null)s.e6("onDragEnd",new A.aqq(s,new A.OF(0,r))) +s.IA() +s.Iz()}, +a8q(){var s,r=this +if(!r.fx)return +s=r.dy +if(s!=null)r.e6("onCancel",s) +r.Iz() +r.IA()}, +TJ(a){this.lR(a) +if(!this.R8.C(0,a))this.Nu(a,B.bd)}, +IA(){this.fy=this.fx=!1 +this.go=null}, +Iz(){return}, +IY(){var s=this.id +if(s!=null){s.S(0) +this.id=null}}} +A.aqv.prototype={ +$0(){var s=this.a,r=s.db +r.toString +s=s.p3 +s.toString +return r.$1(s)}, +$S:0} +A.aqw.prototype={ +$0(){var s=this.a,r=s.pA$ +if(r!=null){s.a1u(r) +if(s.nW$>1)s.Z(B.d_)}return null}, +$S:0} +A.aqt.prototype={ +$0(){return this.a.CW.$1(this.b)}, +$S:0} +A.aqu.prototype={ +$0(){return this.a.cx.$1(this.b)}, +$S:0} +A.aqr.prototype={ +$0(){return this.a.cy.$1(this.b)}, +$S:0} +A.aqs.prototype={ +$0(){return this.a.db.$1(this.b)}, +$S:0} +A.aqq.prototype={ +$0(){return this.a.dx.$1(this.b)}, +$S:0} +A.oV.prototype={ +a8t(a){var s=this.ok +s===$&&A.b() +return Math.abs(s)>A.vS(a,this.b)}, +a8r(a){return new A.z(a.a,0)}, +a8s(a){return a.a}} +A.oW.prototype={ +a8t(a){var s=this.ok +s===$&&A.b() +return Math.abs(s)>A.biA(a,this.b)}, +a8r(a){return a}, +a8s(a){return null}} +A.Q4.prototype={ +ln(a){var s,r=this +r.Ah(a) +s=r.v1$ +if(s!=null&&s.b==null)r.J_() +r.yD$=null +if(r.pA$!=null)s=!(r.v1$!=null&&r.aDX(a.gcl(a))&&r.aCW(a.ghm(a))) +else s=!1 +if(s)r.nW$=1 +else ++r.nW$ +r.GV() +r.pA$=a +r.Dk$=a.ghm(a) +r.Dl$=a.gcl(a) +r.L7$=new A.iw(a.gfA(),a.gcl(a)) +s=r.L8$ +if(s!=null)s.$0()}, +m(){this.J_() +this.mI()}} +A.al9.prototype={} +A.ala.prototype={} +A.alb.prototype={} +A.alc.prototype={} +A.ald.prototype={} +A.adw.prototype={ +Z(a){this.a.aLC(this.b,a)}, +$iBu:1} +A.zd.prototype={ +kB(a){var s,r,q,p,o=this +o.a8w() +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.km(s.fO(0,s.ges()).ap(0,b)) +if(r40)return B.tP +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.a1H(o,r,p).ZR(2) +if(d!=null){c=new A.a1H(o,q,p).ZR(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.v8(new A.z(s*1000,g*1000),b*a,new A.bj(l-k.a.a),m.b.ai(0,k.b))}}}return new A.v8(B.j,1,new A.bj(l-k.a.a),m.b.ai(0,k.b))}, +Or(){var s=this.zS() +if(s==null||s.a.l(0,B.j))return B.eB +return new A.km(s.a)}} +A.x8.prototype={ +uk(a,b){var s,r=this +r.gud().mF(0) +r.gud().eU(0) +s=(r.d+1)%20 +r.d=s +r.e[s]=new A.Sz(a,b)}, +xf(a){var s,r,q=this.d+a,p=B.e.an(q,20),o=B.e.an(q-1,20) +q=this.e +s=q[p] +r=q[o] +if(s==null||r==null)return B.j +q=s.a.a-r.a.a +return q>0?s.b.ai(0,r.b).ap(0,1000).fO(0,q/1000):B.j}, +zS(){var s,r,q,p,o,n,m=this +if(m.gud().gKU()>40)return B.tP +s=m.xf(-2).ap(0,0.6).ab(0,m.xf(-1).ap(0,0.35)).ab(0,m.xf(0).ap(0,0.05)) +r=m.e +q=m.d +p=r[q] +for(o=null,n=1;n<=20;++n){o=r[B.e.an(q+n,20)] +if(o!=null)break}if(o==null||p==null)return B.Py +else return new A.v8(s,1,new A.bj(p.a.a-o.a.a),p.b.ai(0,o.b))}} +A.C3.prototype={ +zS(){var s,r,q,p,o,n,m=this +if(m.gud().gKU()>40)return B.tP +s=m.xf(-2).ap(0,0.15).ab(0,m.xf(-1).ap(0,0.65)).ab(0,m.xf(0).ap(0,0.2)) +r=m.e +q=m.d +p=r[q] +for(o=null,n=1;n<=20;++n){o=r[B.e.an(q+n,20)] +if(o!=null)break}if(o==null||p==null)return B.Py +else return new A.v8(s,1,new A.bj(p.a.a-o.a.a),p.b.ai(0,o.b))}} +A.acr.prototype={ +F(a){var s=this,r=null +return A.fX(s.e,r,r,r,s.c,r,new A.aXw(s,a),r,r,s.f,s.Rt(a))}} +A.aXw.prototype={ +$0(){this.a.SH(this.b)}, +$S:0} +A.Ev.prototype={ +F(a){var s,r,q,p +a.au(t.vH) +s=A.q(a) +r=this.c.$1(s.p4) +if(r!=null)return r.$1(a) +q=this.d.$1(a) +p=null +switch(A.bY().a){case 0:s=A.hE(a,B.bu,t.C) +s.toString +p=this.e.$1(s) +break +case 1:case 3:case 5:case 2:case 4:break}return A.hD(q,null,p,null)}} +A.WM.prototype={ +F(a){return new A.Ev(new A.aq9(),new A.aqa(),new A.aqb(),null)}} +A.aq9.prototype={ +$1(a){return a==null?null:a.a}, +$S:155} +A.aqa.prototype={ +$1(a){return B.xF}, +$S:152} +A.aqb.prototype={ +$1(a){return a.gbf()}, +$S:151} +A.WL.prototype={ +SH(a){return A.buD(a)}, +Rt(a){var s=A.hE(a,B.bu,t.C) +s.toString +return s.gbf()}} +A.a_D.prototype={ +F(a){return new A.Ev(new A.awt(),new A.awu(),new A.awv(),null)}} +A.awt.prototype={ +$1(a){return a==null?null:a.c}, +$S:155} +A.awu.prototype={ +$1(a){return B.pN}, +$S:152} +A.awv.prototype={ +$1(a){return a.gaV()}, +$S:151} +A.a_C.prototype={ +SH(a){var s,r,q=A.Nm(a),p=q.e +if(p.gad()!=null){s=q.x +r=s.y +s=r==null?A.y(s).i("dG.T").a(r):r}else s=!1 +if(s)p.gad().L(0) +q=q.d.gad() +if(q!=null)q.vs(0) +return null}, +Rt(a){var s=A.hE(a,B.bu,t.C) +s.toString +return s.gaV()}} +A.a_N.prototype={ +F(a){return new A.Ev(new A.axJ(),new A.axK(),new A.axL(),null)}} +A.axJ.prototype={ +$1(a){return a==null?null:a.d}, +$S:155} +A.axK.prototype={ +$1(a){return B.pN}, +$S:152} +A.axL.prototype={ +$1(a){return a.gaV()}, +$S:151} +A.a_M.prototype={ +SH(a){var s,r,q=A.Nm(a),p=q.d +if(p.gad()!=null){s=q.w +r=s.y +s=r==null?A.y(s).i("dG.T").a(r):r}else s=!1 +if(s)p.gad().L(0) +q=q.e.gad() +if(q!=null)q.vs(0) +return null}, +Rt(a){var s=A.hE(a,B.bu,t.C) +s.toString +return s.gaV()}} +A.A2.prototype={ +gB(a){var s=this +return A.cj([s.a,s.b,s.c,s.d])}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.A2}} +A.act.prototype={} +A.W7.prototype={ +F(a){var s,r,q=this,p=q.c.length===0 +if(p)return B.ax +s=J.nX(A.bFi(a,q.c)) +switch(A.q(a).w.a){case 2:p=q.e +r=p.a +p=p.b +return A.bGF(r,p==null?r:p,s) +case 0:p=q.e +r=p.a +p=p.b +return A.bOm(r,p==null?r:p,s) +case 1:case 3:case 5:return new A.a_5(q.e.a,s,null) +case 4:return new A.XO(q.e.a,s,null)}}} +A.aps.prototype={ +$1(a){return A.bGG(a)}, +$S:713} +A.apt.prototype={ +$1(a){var s=this.a +return A.bH4(s,a.a,A.bkK(s,a))}, +$S:714} +A.apu.prototype={ +$1(a){return A.bGs(a.a,A.bkK(this.a,a))}, +$S:723} +A.P0.prototype={ +D(){return"ThemeMode."+this.b}} +A.KP.prototype={ +a0(){return new A.S3()}} +A.aFD.prototype={ +$2(a,b){return new A.C6(a,b)}, +$S:729} +A.aI4.prototype={ +mA(a){return A.q(a).w}, +JQ(a,b,c){switch(A.c_(c.a).a){case 0:return b +case 1:switch(A.q(a).w.a){case 3:case 4:case 5:return A.aQy(b,c.b,null,null,null) +case 0:case 1:case 2:return b}break}}, +JP(a,b,c){A.q(a) +switch(A.q(a).w.a){case 2:case 3:case 4:case 5:return b +case 0:switch(0){case 0:return new A.Oq(c.a,c.d,b,null)}case 1:break}return A.btk(c.a,b,A.q(a).ax.y)}} +A.S3.prototype={ +aj(){this.aw() +this.d=A.bKL()}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.ar()}, +gaEx(){var s=A.a([],t.a9) +B.b.G(s,this.a.k2) +s.push(B.TR) +s.push(B.TH) +return s}, +aEL(a,b){var s,r,q,p,o,n,m,l=this,k=null,j=l.a.fx,i=A.de(a,B.u9),h=i==null?k:i.e +if(h==null)h=B.b_ +if(j!==B.Pm)s=j===B.Pl&&h===B.aI +else s=!0 +i=A.de(a,B.PX) +i=i==null?k:i.as +r=i===!0 +if(s)if(r)l.a.toString +q=k +if(s)l.a.toString +if(s)q=l.a.dx +else if(r)l.a.toString +if(q==null)q=l.a.db +i=q.f5 +p=i.b +if(p==null){o=q.ax.b +p=A.Y(102,o.gk(o)>>>16&255,o.gk(o)>>>8&255,o.gk(o)&255)}n=i.a +if(n==null)n=q.ax.b +l.a.toString +$.bB_() +m=new A.GR(q,new A.fi(new A.b9t(l,b),k),B.X,B.T,k,k) +return new A.Nk(A.auh(m,n,k,k,p),k)}, +att(a){var s,r,q,p,o,n,m=this,l=null,k=m.a,j=k.db +j=j.fr +s=j +if(s==null)s=B.dT +j=k.c +r=k.e +q=k.r +p=k.w +k=k.k1 +o=m.gaEx() +n=m.a +return new A.PD(j,p,l,new A.b9s(),l,l,l,l,l,r,B.agn,l,l,q,B.aag,m.gaEK(),"",l,B.at1,s,k,o,l,l,n.ok,!1,!1,n.RG,n.rx,l,new A.x2(m,t.bT))}, +F(a){var s,r=null,q=A.tA(!1,!1,this.att(a),r,r,r,r,!0,r,r,r,new A.b9u(),r,r) +this.a.toString +s=this.d +s===$&&A.b() +return A.bnD(B.T7,new A.x5(s,q,r))}} +A.b9t.prototype={ +$1(a){return this.a.a.CW.$2(a,this.b)}, +$S:13} +A.b9s.prototype={ +$1$2(a,b,c){return A.ql(b,a,c)}, +$2(a,b){return this.$1$2(a,b,t.z)}, +$S:738} +A.b9u.prototype={ +$2(a,b){if(!(b instanceof A.op)&&!(b instanceof A.xk)||!b.b.l(0,B.jr))return B.jb +return A.bOH()?B.pS:B.jb}, +$S:209} +A.bfT.prototype={ +q9(a){return a.agZ(this.b)}, +qf(a){return new A.R(a.b,this.b)}, +qe(a,b){return new A.z(0,a.b-b.b)}, +oF(a){return this.b!==a.b}} +A.aix.prototype={} +A.GZ.prototype={ +ayv(a){var s=this.cy +if(s==null)s=a.R8.y +return s==null?new A.apA(this,a).$0():s}, +a0(){return new A.PW()}, +ob(a){return A.Gs().$1(a)}} +A.apA.prototype={ +$0(){switch(this.b.w.a){case 0:case 1:case 3:case 5:return!1 +case 2:case 4:return this.a.f==null}}, +$S:46} +A.PW.prototype={ +c1(){var s,r=this +r.ea() +s=r.d +if(s!=null)s.K(0,r.gRP()) +s=r.c +s.toString +s=r.d=A.bvG(s) +if(s!=null){s=s.d +s.B9(s.c,new A.rr(r.gRP()),!1)}}, +m(){var s=this,r=s.d +if(r!=null){r.K(0,s.gRP()) +s.d=null}s.ar()}, +aBJ(a){var s,r,q,p=this +if(a instanceof A.jA&&p.a.ob(a)){s=p.e +r=a.a +switch(r.e.a){case 0:q=p.e=Math.max(r.gkT()-r.gfB(),0)>0 +break +case 2:q=p.e=Math.max(r.gfB()-r.gkU(),0)>0 +break +case 1:case 3:q=s +break +default:q=s}if(q!==s)p.J(new A.aYC())}}, +a79(a,b,c,d){var s=t.MH,r=A.dH(b,a,s) +s=r==null?A.dH(c,a,s):r +return s==null?A.dH(d,a,t.n8):s}, +F(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=this,b1=null,b2=A.q(b8),b3=A.bmt(b8),b4=A.q(b8).R8,b5=new A.aYB(b8,b1,b1,0,3,b1,b1,b1,b1,b1,b1,16,64,b1,b1,b1),b6=b8.o_(t.Np),b7=A.La(b8,t.X) +b8.au(t.N8) +s=A.bn(t.g) +r=b0.e +if(r)s.q(0,B.tW) +r=b6==null +if(r)q=b1 +else{b6.a.toString +q=!1}if(r)b6=b1 +else{b6.a.toString +b6=!1}r=b0.a +p=r.fy +o=p==null?b4.Q:p +if(o==null)o=56 +p=b4.a +n=b0.a79(s,r.ax,p,b5.gco(0)) +r=b0.a.ax +m=A.q(b8).ax +l=m.p4 +k=b0.a79(s,r,p,l==null?m.k2:l) +j=s.p(0,B.tW)?k:n +b0.a.toString +i=b4.b +h=i==null?b5.gfw():i +r=b0.a.x +g=r==null?b4.c:r +if(g==null){r=b5.c +r.toString +g=r}if(s.p(0,B.tW)){b0.a.toString +s=b4.d +if(s==null)s=b5.d +f=s==null?g:s}else f=g +s=b0.a.ch +e=s==null?b4.w:s +if(e==null)e=b5.grC().cc(h) +s=b0.a +s.toString +r=b4.x +s=r==null?s.ch:r +if(s==null)s=b4.w +if(s==null){s=b5.gxA().cc(i) +d=s}else d=s +if(d==null)d=e +b0.a.toString +c=b4.as +if(c==null){s=b5.gEN() +c=s==null?b1:s.cc(h)}b0.a.toString +b=b4.at +if(b==null){s=b5.giK() +b=s==null?b1:s.cc(h)}b0.a.toString +a=b1 +if(q===!0){s=e.a +a=new A.a_C(B.ZH,b1,b1,A.Bz(b1,b1,b1,b1,b1,b1,b1,b1,b1,s==null?24:s,b1,b1,b1,b1),b1)}else{if(b7==null)s=b1 +else s=b7.gWD()||b7.rl$>0 +if(s===!0)a=B.QC}if(a!=null){if(e.l(0,b5.grC()))a0=b3 +else{a1=A.Bz(b1,b1,b1,b1,b1,b1,e.f,b1,b1,e.a,b1,b1,b1,b1) +s=b3.a +a0=new A.tD(s==null?b1:s.abZ(a1.c,a1.as,a1.d))}a=A.aC4(a,a0) +b0.a.toString +a=new A.ep(A.o1(b1,56),a,b1)}s=b0.a +a2=s.e +if(a2!=null){a2=new A.acQ(a2,b1) +a3=b2.w +$label0$0:{r=b1 +if(B.bg===a3||B.du===a3||B.dv===a3||B.dw===a3){r=!0 +break $label0$0}if(B.aG===a3||B.cr===a3)break $label0$0}a2=new A.ck(A.cJ(b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,!0,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,r,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1),!1,!1,!1,!1,a2,b1) +b.toString +a2=A.bL2(A.kD(a2,b1,b1,B.al,!1,b,b1,b1,B.aX),1.34)}s=s.f +if(s!=null)a4=A.bt(s,B.l,B.o,B.aE) +else if(b6===!0){b6=e.a +a4=new A.a_M(B.a0b,b1,b1,A.Bz(b1,b1,b1,b1,b1,b1,b1,b1,b1,b6==null?24:b6,b1,b1,b1,b1),b1)}else a4=b1 +if(a4!=null){if(d.l(0,b5.gxA()))a5=b3 +else{a6=A.Bz(b1,b1,b1,b1,b1,b1,d.f,b1,b1,d.a,b1,b1,b1,b1) +b6=b3.a +a5=new A.tD(b6==null?b1:b6.abZ(a6.c,a6.as,a6.d))}a4=A.aC4(A.a10(a4,d),a5)}b6=b0.a.ayv(b2) +s=b0.a +s.toString +r=b4.z +if(r==null)r=16 +c.toString +a7=A.Xq(new A.kz(new A.bfT(o),A.a10(A.kD(new A.a4U(a,a2,a4,b6,r,b1),b1,b1,B.cs,!0,c,b1,b1,B.aX),e),b1),B.w,b1) +if(s.w!=null){b6=A.a([new A.of(1,B.hl,new A.ep(new A.au(0,1/0,0,o),a7,b1),b1)],t.p) +s=b0.a.w +s.toString +b6.push(s) +a7=A.b2(b6,B.l,B.bX,B.k,B.r)}b0.a.toString +a7=A.Dj(!1,a7,B.Z,!0) +b6=A.P_(j) +a8=b6===B.aI?B.apc:B.apb +a9=new A.oU(b1,b1,b1,b1,B.t,a8.f,a8.r,a8.w) +b0.a.toString +b6=b4.e +if(b6==null)b6=b5.gcW(0) +b0.a.toString +s=b4.f +if(s==null){s=b2.ax +r=s.bG +s=r==null?s.b:r}r=b4.r +if(r==null)r=b5.r +b6=A.fI(B.T,!0,b1,new A.ck(A.cJ(b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1),!1,!0,!1,!1,new A.fh(B.ip,b1,b1,a7,b1),b1),B.h,j,f,b1,b6,r,s,b1,B.bL) +return new A.ck(A.cJ(b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1,b1),!0,!1,!1,!1,new A.GW(a9,b6,b1,t.ph),b1)}} +A.aYC.prototype={ +$0(){}, +$S:0} +A.acQ.prototype={ +b6(a){var s=a.au(t.I) +s.toString +s=new A.aj4(B.O,s.w,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){var s=a.au(t.I) +s.toString +b.scr(s.w)}} +A.aj4.prototype={ +ds(a){var s=a.Kf(1/0),r=this.H$ +return a.bD(r.aM(B.af,s,r.gdD()))}, +fH(a,b){var s,r,q=this,p=a.Kf(1/0),o=q.H$ +if(o==null)return null +s=o.ii(p,b) +if(s==null)return null +r=o.aM(B.af,p,o.gdD()) +return s+q.gagH().ph(t.c.a(q.aM(B.af,a,q.gdD()).ai(0,r))).b}, +ck(){var s=this,r=t.k,q=r.a(A.G.prototype.gah.call(s)).Kf(1/0) +s.H$.df(q,!0) +s.id=r.a(A.G.prototype.gah.call(s)).bD(s.H$.gv(0)) +s.UA()}} +A.aYB.prototype={ +ga8K(){var s,r=this,q=r.ch +if(q===$){s=A.q(r.ay) +r.ch!==$&&A.aH() +r.ch=s +q=s}return q}, +gGF(){var s,r=this,q=r.CW +if(q===$){s=r.ga8K() +r.CW!==$&&A.aH() +q=r.CW=s.ax}return q}, +ga8A(){var s,r=this,q=r.cx +if(q===$){s=r.ga8K() +r.cx!==$&&A.aH() +q=r.cx=s.p2}return q}, +gco(a){return this.gGF().k2}, +gfw(){return this.gGF().k3}, +gcW(a){return B.t}, +gdr(){return B.t}, +grC(){var s=null +return new A.eP(24,s,s,s,s,this.gGF().k3,s,s,s)}, +gxA(){var s=null,r=this.gGF(),q=r.rx +return new A.eP(24,s,s,s,s,q==null?r.k3:q,s,s,s)}, +gEN(){return this.ga8A().z}, +giK(){return this.ga8A().r}} +A.A7.prototype={ +gB(a){var s=this +return A.a4(s.gco(s),s.gfw(),s.c,s.d,s.gcW(s),s.gdr(),s.r,s.grC(),s.gxA(),s.y,s.z,s.Q,s.gEN(),s.giK(),s.ax,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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.A7)if(J.e(b.gco(b),r.gco(r)))if(J.e(b.gfw(),r.gfw()))if(b.c==r.c)if(b.d==r.d)if(J.e(b.gcW(b),r.gcW(r)))if(J.e(b.gdr(),r.gdr()))if(J.e(b.r,r.r))if(J.e(b.grC(),r.grC()))if(J.e(b.gxA(),r.gxA()))if(b.z==r.z)if(b.Q==r.Q)if(J.e(b.gEN(),r.gEN()))s=J.e(b.giK(),r.giK()) +return s}, +gco(a){return this.a}, +gfw(){return this.b}, +gcW(a){return this.e}, +gdr(){return this.f}, +grC(){return this.w}, +gxA(){return this.x}, +gEN(){return this.as}, +giK(){return this.at}} +A.acP.prototype={} +A.KZ.prototype={ +oZ(){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.ai(0,f) +q=Math.abs(r.a) +p=Math.abs(r.b) +o=r.ges() +n=s.a +m=f.b +l=new A.z(n,m) +k=new A.aI2(g,o) +if(q>2&&p>2){j=o*o +i=f.a +h=s.b +if(q700){s=-o/p.ga1z() +o=p.a.c +r=o.x +r===$&&A.b() +if(r>0)o.Ll(s) +q=s<0}else{o=p.a.c +r=o.x +r===$&&A.b() +q=r<0.5 +if(q){if(r>0)o.Ll(-1)}else o.cd(0)}p.a.z.$2$isClosing(a,q) +if(q)p.a.aXT()}, +aTb(a){a.gfh() +a.gb22() +return!1}, +aA4(a){if(a!==this.e.p(0,B.N))this.J(new A.aZc(this,a))}, +F(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=A.q(a).x1 +A.q(a) +s=A.boh(a) +g.a.toString +r=e.as +if(r==null)r=s.gah() +q=g.a.Q +p=q==null?e.a:q +if(p==null)p=s.gco(0) +o=e.b +if(o==null)o=s.gdr() +g.a.toString +n=e.f +if(n==null)n=s.gcW(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.aeW(q.d,g.gaA3(),g.e,f,f,f) +if(!q.f)i=new A.Q9(i,g.ga10(),g.ga11(),g.ga1_(),f)}else i=f +if(!j)q=q.JR(a) +else{i.toString +q=A.cq(B.ip,A.a([i,new A.be(B.a_q,q.JR(a),f)],t.p),B.w,B.W,f)}h=A.fI(B.T,!0,f,new A.ea(g.gaTa(),q,f,t.K3),B.h,p,l,g.d,n,k,o,f,B.bL) +h=new A.fh(B.eF,f,1,new A.ep(r,h,f),f) +return!g.a.f?h:new A.Q9(h,g.ga10(),g.ga11(),g.ga1_(),f)}} +A.aZd.prototype={ +$0(){this.a.e.q(0,B.fK)}, +$S:0} +A.aZb.prototype={ +$0(){this.a.e.C(0,B.fK)}, +$S:0} +A.aZc.prototype={ +$0(){var s=this.a.e +if(this.b)s.q(0,B.N) +else s.C(0,B.N)}, +$S:0} +A.aeW.prototype={ +F(a){var s,r,q,p,o,n,m=this,l=null,k=A.q(a).x1,j=A.boh(a),i=k.z +if(i==null)i=B.Ow +s=A.hE(a,B.bu,t.C) +s.toString +s=s.gaS() +r=i.b +q=A.bq(r/2) +p=m.e +o=t.MH +n=A.dH(m.f,p,o) +p=n==null?A.dH(k.y,p,o):n +if(p==null){p=j.gPO() +o=p.rx +p=o==null?p.k3:o}r=A.cL(A.aa(l,l,B.h,l,l,new A.bb(p,l,l,q,l,l,l,B.E),l,r,l,l,l,l,l,i.a),l,l) +return A.ov(new A.ck(A.cJ(l,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,l,m.c,l,l,l,l,l,l,l,l,l,l,l),!0,!1,!1,!1,new A.aB(48,48,r,l),l),B.cU,l,new A.b2e(m),new A.b2f(m),l)}} +A.b2e.prototype={ +$1(a){return this.a.d.$1(!0)}, +$S:67} +A.b2f.prototype={ +$1(a){return this.a.d.$1(!1)}, +$S:62} +A.adg.prototype={ +b6(a){var s=new A.SK(B.V,this.e,this.f,!0,this.w,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.saXR(this.e) +b.saOh(this.f) +b.saWf(!0) +b.sajY(this.w)}} +A.SK.prototype={ +saXR(a){if(J.e(this.af,a))return +this.af=a +this.ae()}, +saOh(a){if(this.aZ===a)return +this.aZ=a +this.ae()}, +saWf(a){return}, +sajY(a){if(this.d4===a)return +this.d4=a +this.ae()}, +bU(a){var s=A.jg(a,1/0),r=s.bD(new A.R(A.M(1/0,s.a,s.b),A.M(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bQ(a){var s=A.jg(a,1/0),r=s.bD(new A.R(A.M(1/0,s.a,s.b),A.M(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bT(a){var s=A.jg(1/0,a),r=s.bD(new A.R(A.M(1/0,s.a,s.b),A.M(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +bP(a){var s=A.jg(1/0,a),r=s.bD(new A.R(A.M(1/0,s.a,s.b),A.M(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +ds(a){return a.bD(new A.R(A.M(1/0,a.a,a.b),A.M(1/0,a.c,a.d)))}, +fH(a,b){var s,r,q,p,o,n=this.H$ +if(n==null)return null +s=this.a3y(a) +r=n.ii(s,b) +if(r==null)return null +q=s.a +p=s.b +o=q>=p&&s.c>=s.d?new A.R(A.M(0,q,p),A.M(0,s.c,s.d)):n.aM(B.af,s,n.gdD()) +return r+this.a3P(a.bD(new A.R(A.M(1/0,a.a,a.b),A.M(1/0,a.c,a.d))),o).b}, +a3y(a){var s=a.b +return new A.au(s,s,0,a.d)}, +a3P(a,b){return new A.z(0,a.b-b.b*this.aZ)}, +ck(){var s,r,q,p,o,n=this,m=t.k,l=m.a(A.G.prototype.gah.call(n)) +n.id=l.bD(new A.R(A.M(1/0,l.a,l.b),A.M(1/0,l.c,l.d))) +s=n.H$ +if(s==null)return +r=n.a3y(m.a(A.G.prototype.gah.call(n))) +m=r.a +l=r.b +q=m>=l +s.df(r,!(q&&r.c>=r.d)) +p=s.b +p.toString +t.r.a(p) +o=q&&r.c>=r.d?new A.R(A.M(0,m,l),A.M(0,r.c,r.d)):s.gv(0) +p.a=n.a3P(n.gv(0),o) +if(!n.E.l(0,o)){n.E=o +n.af.$1(o)}}} +A.zq.prototype={ +a0(){return new A.Fp(B.we,this.$ti.i("Fp<1>"))}} +A.Fp.prototype={ +ayX(a){var s=this.c +s.toString +switch(A.q(s).w.a){case 2:case 4:return"" +case 0:case 1:case 3:case 5:return a.gaN()}}, +aTQ(a){this.d=B.X}, +adJ(a,b){this.d=new A.a8U(this.a.c.k2.gk(0),B.we)}, +aTO(a){return this.adJ(a,null)}, +F(a){var s,r,q,p,o,n,m,l=this,k=A.hE(a,B.bu,t.C) +k.toString +s=l.ayX(k) +k=l.a +r=k.c +q=r.k2 +q.toString +p=r.pw +o=k.f +n=k.r +m=k.w +return A.lw(q,new A.b9Y(l,s),A.bFD(p,o,r.bH,k.x,k.y,n,k.z,new A.b9Z(l,a),l.gaTN(),l.gaTP(),m,k.Q))}} +A.b9Z.prototype={ +$0(){if(this.a.a.c.gkb())A.bU(this.b,!1).fM(null)}, +$S:0} +A.b9Y.prototype={ +$2(a,b){var s=null,r=this.a +r=A.Xq(new A.adg(new A.b9X(r),r.d.al(0,r.a.c.k2.gk(0)),!0,r.a.e,b,s),B.w,s) +return new A.ck(A.cJ(s,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,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,r,s)}, +$S:212} +A.b9X.prototype={ +$1(a){this.a.a.c.avQ(new A.al(0,0,0,a.b))}, +$S:157} +A.L9.prototype={ +m(){var s=this.ma +s.U$=$.aW() +s.M$=0 +this.a_X()}, +avQ(a){var s=this.ma +if(J.e(s.a,a))return!1 +s.sk(0,a) +return!0}, +gvQ(a){return B.j0}, +gagP(){return B.T}, +gpj(){return!0}, +gpi(){var s=this.hF +return s==null?B.ab:s}, +ac2(){var s=this.a +s.toString +s=A.bFF(s,this.kK) +this.pw=s +return s}, +xM(a,b,c){var s=A.aI8(new A.ID(this.k6,new A.fi(new A.aIP(this),null),null),a,!1,!1,!1,!0),r=new A.nD(this.d4.a,s,null) +return r}, +ab0(){var s,r,q=this,p=q.hF,o=p==null +if(((o?B.ab:p).a>>>24&255)!==0&&!q.k1){s=q.k2 +s.toString +r=(o?B.ab:p).a +r=A.Y(0,r>>>16&255,r>>>8&255,r&255) +if(o)p=B.ab +o=t.IC.i("fO") +return A.br_(!0,q.ma,new A.bf(t.m.a(s),new A.fO(new A.hZ(B.bk),new A.fU(r,p),o),o.i("bf")),!0,q.nU,q.js)}else return A.aIN(!0,q.ma,null,!0,null,q.nU,q.js)}, +guq(){return this.nU}} +A.aIP.prototype={ +$1(a){var s,r,q,p,o,n=A.q(a).x1 +A.q(a) +s=A.boh(a) +r=this.a +q=r.ft +if(q==null)q=n.d +if(q==null)q=n.a +if(q==null)q=s.gco(0) +p=n.r +if(p==null)p=n.c +if(p==null)p=s.r +o=r.nZ +o=!1 +return new A.zq(r,!0,r.d9,q,p,r.hE,r.dK,r.dS,r.hR,o,null,r.$ti.i("zq<1>"))}, +$S(){return this.a.$ti.i("zq<1>(Q)")}} +A.Q9.prototype={ +F(a){return new A.nb(this.c,A.C([B.nK,new A.dC(new A.aZ9(this),new A.aZa(this),t.ok)],t.u,t.xR),null,!0,null)}} +A.aZ9.prototype={ +$0(){return A.bo8(this.a,null)}, +$S:149} +A.aZa.prototype={ +$1(a){var s=this.a +a.ch=s.d +a.CW=s.e +a.cx=s.f +a.fr=!0}, +$S:148} +A.aZ8.prototype={ +gPO(){var s,r=this,q=r.ax +if(q===$){s=A.q(r.at) +r.ax!==$&&A.aH() +q=r.ax=s.ax}return q}, +gco(a){var s=this.gPO(),r=s.p3 +return r==null?s.k2:r}, +gdr(){return B.t}, +gcW(a){return B.t}, +gKP(){var s=this.gPO(),r=s.rx +return r==null?s.k3:r}, +gKQ(){return B.Ow}, +gah(){return B.uH}} +A.Ad.prototype={ +gB(a){var s=this +return A.a4(s.gco(s),s.gdr(),s.c,s.d,s.e,s.gcW(s),s.r,s.w,s.x,s.gKP(),s.gKQ(),s.Q,s.gah(),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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.Ad)if(J.e(b.gco(b),r.gco(r)))if(J.e(b.gdr(),r.gdr()))if(b.c==r.c)if(J.e(b.d,r.d))if(J.e(b.gcW(b),r.gcW(r)))if(J.e(b.e,r.e))if(b.r==r.r)if(J.e(b.w,r.w))if(J.e(b.gKP(),r.gKP()))if(J.e(b.gKQ(),r.gKQ()))s=J.e(b.gah(),r.gah()) +return s}, +gco(a){return this.a}, +gdr(){return this.b}, +gcW(a){return this.f}, +gKP(){return this.y}, +gKQ(){return this.z}, +gah(){return this.as}} +A.adh.prototype={} +A.Hp.prototype={ +gB(a){var s=this +return A.a4(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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.Hp)if(b.d==r.d)if(b.e==r.e)s=J.e(b.f,r.f) +return s}} +A.adk.prototype={} +A.cB.prototype={ +Kg(a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0,c1,c2,c3,c4,c5,c6,c7){var s=this,r=c6==null?s.ghK():c6,q=a7==null?s.gco(s):a7,p=b2==null?s.gfw():b2,o=b8==null?s.gcI():b8,n=c0==null?s.gcW(s):c0,m=c4==null?s.gdr():c4,l=a8==null?s.geK(s):a8,k=b9==null?s.gdW(s):b9,j=b6==null?s.gjz():b6,i=b0==null?s.y:b0,h=b5==null?s.gjy():b5,g=b3==null?s.Q:b3,f=b4==null?s.gj3():b4,e=c2==null?s.ghu():c2,d=c1==null?s.gcC(s):c1,c=b7==null?s.ghb():b7,b=c7==null?s.gfX():c7,a=c5==null?s.gjD():c5,a0=a5==null?s.cx:a5,a1=a9==null?s.cy:a9,a2=a4==null?s.db:a4,a3=c3==null?s.ghf():c3 +return A.Ah(a2,a0,s.dy,q,l,a1,i,s.fr,p,g,f,h,j,c,o,k,n,d,e,a3,m,a,r,b)}, +CD(a){var s=null +return this.Kg(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s,s,s,s,s)}, +abZ(a,b,c){var s=null +return this.Kg(s,s,s,s,s,s,s,s,a,s,b,s,s,s,c,s,s,s,s,s,s,s,s,s)}, +aQu(a,b){var s=null +return this.Kg(s,s,s,a,s,s,s,s,b,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +cO(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,a5=this +if(a6==null)return a5 +s=a5.ghK() +if(s==null)s=a6.ghK() +r=a5.gco(a5) +if(r==null)r=a6.gco(a6) +q=a5.gfw() +if(q==null)q=a6.gfw() +p=a5.gcI() +if(p==null)p=a6.gcI() +o=a5.gcW(a5) +if(o==null)o=a6.gcW(a6) +n=a5.gdr() +if(n==null)n=a6.gdr() +m=a5.geK(a5) +if(m==null)m=a6.geK(a6) +l=a5.gdW(a5) +if(l==null)l=a6.gdW(a6) +k=a5.gjz() +if(k==null)k=a6.gjz() +j=a5.y +if(j==null)j=a6.y +i=a5.gjy() +if(i==null)i=a6.gjy() +h=a5.Q +if(h==null)h=a6.Q +g=a5.gj3() +if(g==null)g=a6.gj3() +f=a5.ghu() +if(f==null)f=a6.ghu() +e=a5.gcC(a5) +if(e==null)e=a6.gcC(a6) +d=a5.ghb() +if(d==null)d=a6.ghb() +c=a5.gfX() +if(c==null)c=a6.gfX() +b=a5.gjD() +if(b==null)b=a6.gjD() +a=a5.cx +if(a==null)a=a6.cx +a0=a5.cy +if(a0==null)a0=a6.cy +a1=a5.db +if(a1==null)a1=a6.db +a2=a5.ghf() +if(a2==null)a2=a6.ghf() +a3=a6.dy +a4=a6.fr +return a5.Kg(a1,a,a3,r,m,a0,j,a4,q,h,g,i,k,d,p,l,o,e,f,a2,n,b,s,c)}, +gB(a){var s=this +return A.cj([s.ghK(),s.gco(s),s.gfw(),s.gcI(),s.gcW(s),s.gdr(),s.geK(s),s.gdW(s),s.gjz(),s.y,s.gjy(),s.Q,s.gj3(),s.ghu(),s.gcC(s),s.ghb(),s.gfX(),s.gjD(),s.cx,s.cy,s.db,s.ghf(),s.dy,s.fr])}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.cB)if(b.ghK()==r.ghK())if(J.e(b.gco(b),r.gco(r)))if(J.e(b.gfw(),r.gfw()))if(J.e(b.gcI(),r.gcI()))if(b.gcW(b)==r.gcW(r))if(b.gdr()==r.gdr())if(b.geK(b)==r.geK(r))if(b.gdW(b)==r.gdW(r))if(b.gjz()==r.gjz())if(b.y==r.y)if(b.gjy()==r.gjy())if(J.e(b.Q,r.Q))if(b.gj3()==r.gj3())if(b.ghu()==r.ghu())if(b.gcC(b)==r.gcC(r))if(J.e(b.ghb(),r.ghb()))if(J.e(b.gfX(),r.gfX()))if(b.gjD()==r.gjD())if(J.e(b.cx,r.cx))if(b.cy==r.cy)if(J.e(b.db,r.db))s=b.ghf()==r.ghf() +return s}, +ghK(){return this.a}, +gco(a){return this.b}, +gfw(){return this.c}, +gcI(){return this.d}, +gcW(a){return this.e}, +gdr(){return this.f}, +geK(a){return this.r}, +gdW(a){return this.w}, +gjz(){return this.x}, +gjy(){return this.z}, +gj3(){return this.as}, +ghu(){return this.at}, +gcC(a){return this.ax}, +ghb(){return this.ay}, +gfX(){return this.ch}, +gjD(){return this.CW}, +ghf(){return this.dx}} +A.adl.prototype={} +A.aC3.prototype={ +D(){return"IconAlignment."+this.b}} +A.Hq.prototype={ +a0(){return new A.Qe(null,null)}} +A.Qe.prototype={ +Wy(){this.J(new A.aZT())}, +gh_(){var s=this.a.z +if(s==null){s=this.r +s.toString}return s}, +DK(){var s,r,q=this +if(q.a.z==null)q.r=A.aX2(null) +s=q.gh_() +r=q.a.c +s.fc(0,B.L,r==null) +q.gh_().a4(0,q.gv7())}, +aj(){this.aw() +this.DK()}, +b1(a){var s,r,q=this +q.bb(a) +s=a.z +if(q.a.z!=s){if(s!=null)s.K(0,q.gv7()) +if(q.a.z!=null){s=q.r +if(s!=null){s.U$=$.aW() +s.M$=0}q.r=null}q.DK()}s=q.a.c +if(s!=null!==(a.c!=null)){s=q.gh_() +r=q.a.c +s.fc(0,B.L,r==null) +s=q.a.c +if(s==null)q.gh_().fc(0,B.a4,!1)}}, +m(){var s,r=this +r.gh_().K(0,r.gv7()) +s=r.r +if(s!=null){s.U$=$.aW() +s.M$=0}s=r.d +if(s!=null)s.m() +r.apK()}, +F(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.aZQ(c4.r,c4.Nz(c7),c2.a.y6(c7)),c6=new A.aZR(c2,c5) +c4=t.PM +s=c6.$1$1(new A.aZr(),c4) +r=c6.$1$1(new A.aZs(),t.p8) +q=t.MH +p=c6.$1$1(new A.aZt(),q) +o=c6.$1$1(new A.aZE(),q) +n=c6.$1$1(new A.aZJ(),q) +m=c6.$1$1(new A.aZK(),q) +l=c6.$1$1(new A.aZL(),t.pc) +k=t.tW +j=c6.$1$1(new A.aZM(),k) +i=c6.$1$1(new A.aZN(),k) +h=c6.$1$1(new A.aZO(),k) +g=c6.$1$1(new A.aZP(),q) +f=c6.$1$1(new A.aZu(),c4) +e=c6.$1$1(new A.aZv(),t.oI) +d=c6.$1$1(new A.aZw(),t.KX) +c=c5.$1$1(new A.aZx(),t.X3) +b=c5.$1$1(new A.aZy(),t.Od) +a=c5.$1$1(new A.aZz(),t.Tu) +a0=c5.$1$1(new A.aZA(),t.y) +a1=c5.$1$1(new A.aZB(),t.pC) +a2=new A.z(c.a,c.b).ap(0,4) +a3=c5.$1$1(new A.aZC(),t.Ya) +c4=t.QN +a4=c5.$1$1(new A.aZD(),c4) +a5=c5.$1$1(new A.aZF(),c4) +a6=c2.a.w +if(a6==null)a6=(a4==null?a5:a4)!=null?B.by:B.h +c4=j.a +q=j.b +a7=c.aSG(new A.au(c4,h.a,q,h.b)) +if(i!=null){a8=a7.bD(i) +c4=a8.a +if(isFinite(c4))a7=a7.aQC(c4,c4) +c4=a8.b +if(isFinite(c4))a7=a7.aQB(c4,c4)}a9=a2.b +c4=a2.a +b0=Math.max(0,c4) +b1=l.q(0,new A.al(b0,a9,b0,a9)).iv(0,B.Z,B.PY) +q=!1 +if(a.a>0){k=c2.e +if(k!=null){b2=c2.f +if(b2!=null)if(k!==s)if(b2.gk(b2)!==p.gk(p)){q=c2.f +q=(q.gk(q)>>>24&255)/255===1&&(p.gk(p)>>>24&255)/255<1&&s===0}}}if(q){q=c2.d +if(!J.e(q==null?c3:q.e,a)){q=c2.d +if(q!=null)q.m() +q=A.c2(c3,a,c3,c3,c2) +q.ct() +k=q.ec$ +k.b=!0 +k.a.push(new A.aZG(c2)) +c2.d=q}p=c2.f +c2.d.sk(0,0) +c2.d.cd(0)}c2.e=s +c2.f=p +a1.toString +b3=new A.be(b1,new A.fh(a1,1,1,a5!=null?a5.$3(c7,c2.gh_().a,c2.a.as):c2.a.as,c3),c3) +if(a4!=null)b3=a4.$3(c7,c2.gh_().a,b3) +s.toString +q=r==null?c3:r.cc(o) +k=d.r3(e) +b2=p==null?B.fh:B.qx +b4=c2.a +b5=b4.c +b6=b4.d +b7=b4.e +b8=b4.x +b4=b4.f +b9=d.r3(e) +c0=c2.gh_() +q=A.fI(a,!0,c3,A.eQ(!1,c3,b5!=null,A.a10(b3,new A.eP(f,c3,c3,c3,c3,g==null?o:g,c3,c3,c3)),b9,a0,c3,b8,B.t,c3,new A.ahh(new A.aZH(c5)),b4,c3,b7,b6,b5,new A.bQ(new A.aZI(c5),t.b),c3,a3,c0),a6,p,s,c3,n,k,m,q,b2) +switch(b.a){case 0:c1=new A.R(48+c4,48+a9) +break +case 1:c1=B.V +break +default:c1=c3}c4=c2.a.c +return new A.ck(A.cJ(c3,c3,c3,c3,c3,!0,c3,c3,c3,c3,c4!=null,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,c3,c3),!0,!1,!1,!1,new A.agq(c1,new A.ep(a7,q,c3),c3),c3)}} +A.aZT.prototype={ +$0(){}, +$S:0} +A.aZQ.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:819} +A.aZR.prototype={ +$1$1(a,b){return this.b.$1$1(new A.aZS(this.a,a,b),b)}, +$1(a){return this.$1$1(a,t.z)}, +$S:820} +A.aZS.prototype={ +$1(a){var s=this.b.$1(a) +return s==null?null:s.Z(this.a.gh_().a)}, +$S(){return this.c.i("0?(cB?)")}} +A.aZr.prototype={ +$1(a){return a==null?null:a.geK(a)}, +$S:213} +A.aZs.prototype={ +$1(a){return a==null?null:a.ghK()}, +$S:834} +A.aZt.prototype={ +$1(a){return a==null?null:a.gco(a)}, +$S:104} +A.aZE.prototype={ +$1(a){return a==null?null:a.gfw()}, +$S:104} +A.aZJ.prototype={ +$1(a){return a==null?null:a.gcW(a)}, +$S:104} +A.aZK.prototype={ +$1(a){return a==null?null:a.gdr()}, +$S:104} +A.aZL.prototype={ +$1(a){return a==null?null:a.gdW(a)}, +$S:847} +A.aZM.prototype={ +$1(a){return a==null?null:a.gjz()}, +$S:147} +A.aZN.prototype={ +$1(a){return a==null?null:a.y}, +$S:147} +A.aZO.prototype={ +$1(a){return a==null?null:a.gjy()}, +$S:147} +A.aZP.prototype={ +$1(a){return a==null?null:a.Q}, +$S:104} +A.aZu.prototype={ +$1(a){return a==null?null:a.gj3()}, +$S:213} +A.aZv.prototype={ +$1(a){return a==null?null:a.ghu()}, +$S:860} +A.aZw.prototype={ +$1(a){return a==null?null:a.gcC(a)}, +$S:881} +A.aZH.prototype={ +$1(a){return this.a.$1$1(new A.aZp(a),t.Pb)}, +$S:887} +A.aZp.prototype={ +$1(a){var s +if(a==null)s=null +else{s=a.ghb() +s=s==null?null:s.Z(this.a)}return s}, +$S:888} +A.aZI.prototype={ +$1(a){return this.a.$1$1(new A.aZo(a),t.n8)}, +$S:47} +A.aZo.prototype={ +$1(a){var s +if(a==null)s=null +else{s=a.gcI() +s=s==null?null:s.Z(this.a)}return s}, +$S:936} +A.aZx.prototype={ +$1(a){return a==null?null:a.gfX()}, +$S:977} +A.aZy.prototype={ +$1(a){return a==null?null:a.gjD()}, +$S:996} +A.aZz.prototype={ +$1(a){return a==null?null:a.cx}, +$S:997} +A.aZA.prototype={ +$1(a){return a==null?null:a.cy}, +$S:998} +A.aZB.prototype={ +$1(a){return a==null?null:a.db}, +$S:1005} +A.aZC.prototype={ +$1(a){return a==null?null:a.ghf()}, +$S:1006} +A.aZD.prototype={ +$1(a){return a==null?null:a.dy}, +$S:215} +A.aZF.prototype={ +$1(a){return a==null?null:a.fr}, +$S:215} +A.aZG.prototype={ +$1(a){if(a===B.am)this.a.J(new A.aZq())}, +$S:10} +A.aZq.prototype={ +$0(){}, +$S:0} +A.ahh.prototype={ +Z(a){var s=this.a.$1(a) +s.toString +return s}, +gKr(){return"ButtonStyleButton_MouseCursor"}} +A.agq.prototype={ +b6(a){var s=new A.SS(this.e,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.saXl(this.e)}} +A.SS.prototype={ +saXl(a){if(this.E.l(0,a))return +this.E=a +this.ae()}, +bU(a){var s=this.H$ +if(s!=null)return Math.max(s.aM(B.bh,a,s.gcF()),this.E.a) +return 0}, +bT(a){var s=this.H$ +if(s!=null)return Math.max(s.aM(B.bi,a,s.gcE()),this.E.b) +return 0}, +bQ(a){var s=this.H$ +if(s!=null)return Math.max(s.aM(B.aM,a,s.gcb()),this.E.a) +return 0}, +bP(a){var s=this.H$ +if(s!=null)return Math.max(s.aM(B.bC,a,s.gcM()),this.E.b) +return 0}, +a1a(a,b){var s,r,q=this.H$ +if(q!=null){s=b.$2(q,a) +q=s.a +r=this.E +return a.bD(new A.R(Math.max(q,r.a),Math.max(s.b,r.b)))}return B.V}, +ds(a){return this.a1a(a,A.jb())}, +fH(a,b){var s,r,q=this.H$ +if(q==null)return null +s=q.ii(a,b) +if(s==null)return null +r=q.aM(B.af,a,q.gdD()) +return s+B.O.ph(t.c.a(this.aM(B.af,a,this.gdD()).ai(0,r))).b}, +ck(){var s,r=this +r.id=r.a1a(t.k.a(A.G.prototype.gah.call(r)),A.rR()) +s=r.H$ +if(s!=null){s=s.b +s.toString +t.r.a(s).a=B.O.ph(t.c.a(r.gv(0).ai(0,r.H$.gv(0))))}}, +dT(a,b){var s +if(this.oJ(a,b))return!0 +s=this.H$.gv(0).nL(B.j) +return a.aat(new A.bbU(this,s),s,A.bL1(s))}} +A.bbU.prototype={ +$2(a,b){return this.a.H$.dT(a,this.b)}, +$S:24} +A.UH.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.Hr.prototype={ +D(){return"ButtonTextTheme."+this.b}} +A.are.prototype={ +D(){return"ButtonBarLayoutBehavior."+this.b}} +A.Xa.prototype={ +gdW(a){var s=this.e +if(s==null)switch(this.c.a){case 0:s=B.bV +break +case 1:s=B.bV +break +case 2:s=B.wV +break +default:s=null}return s}, +gcC(a){var s,r=this.f +if(r==null){s=this.c +$label0$0:{if(B.uN===s||B.SA===s){r=B.rz +break $label0$0}if(B.SB===s){r=B.Nq +break $label0$0}r=null}}return r}, +l(a,b){var s=this +if(b==null)return!1 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.Xa&&b.c===s.c&&b.a===s.a&&b.b===s.b&&b.gdW(0).l(0,s.gdW(0))&&b.gcC(0).l(0,s.gcC(0))&&J.e(b.w,s.w)&&J.e(b.y,s.y)&&J.e(b.z,s.z)&&J.e(b.at,s.at)&&b.ax==s.ax}, +gB(a){var s=this +return A.a4(s.c,s.a,s.b,s.gdW(0),s.gcC(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.adm.prototype={} +A.aZW.prototype={ +D(){return"_CardVariant."+this.b}} +A.Xg.prototype={ +F(a){var s,r,q,p,o,n,m,l,k=null,j=A.q(a).xr +A.q(a) +switch(0){case 0:s=new A.aZV(a,B.h,k,k,k,1,B.pA,k) +break}r=s +s=j.f +if(s==null){s=r.f +s.toString}q=j.b +if(q==null)q=r.gaG(0) +p=j.c +if(p==null)p=r.gcW(0) +o=j.d +if(o==null)o=r.gdr() +n=this.f +if(n==null)n=j.e +if(n==null){n=r.e +n.toString}m=this.r +if(m==null)m=j.r +if(m==null)m=r.gcC(0) +l=j.a +if(l==null){l=r.a +l.toString}q=A.fI(B.T,!0,k,new A.ck(A.cJ(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,k,k),!1,!1,!1,!1,this.Q,k),l,q,n,k,p,m,o,k,B.fg) +return new A.ck(A.cJ(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,k,k),!0,!1,!1,!1,new A.be(s,q,k),k)}} +A.aZV.prototype={ +ga1g(){var s,r=this,q=r.x +if(q===$){s=A.q(r.w) +r.x!==$&&A.aH() +q=r.x=s.ax}return q}, +gaG(a){var s=this.ga1g(),r=s.p3 +return r==null?s.k2:r}, +gcW(a){var s=this.ga1g().x1 +return s==null?B.v:s}, +gdr(){return B.t}, +gcC(a){return B.all}} +A.Ak.prototype={ +gB(a){var s=this +return A.a4(s.a,s.gaG(s),s.gcW(s),s.gdr(),s.e,s.f,s.gcC(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.ah(b)!==A.K(s))return!1 +return b instanceof A.Ak&&b.a==s.a&&J.e(b.gaG(b),s.gaG(s))&&J.e(b.gcW(b),s.gcW(s))&&J.e(b.gdr(),s.gdr())&&b.e==s.e&&J.e(b.f,s.f)&&J.e(b.gcC(b),s.gcC(s))}, +gaG(a){return this.b}, +gcW(a){return this.c}, +gdr(){return this.d}, +gcC(a){return this.r}} +A.ado.prototype={} +A.b_6.prototype={ +D(){return"_CheckboxType."+this.b}} +A.Hw.prototype={ +a0(){return new A.adr(new A.adq($.aW()),$,$,$,$,$,$,$,$,B.bc,$,null,!1,!1,null,null)}, +gk(a){return this.c}} +A.adr.prototype={ +aj(){this.apN() +this.e=this.a.c}, +b1(a){var s,r=this +r.bb(a) +s=a.c +if(s!==r.a.c){r.e=s +r.JE()}}, +m(){this.d.m() +this.apM()}, +gib(){return this.a.d}, +gYj(){this.a.toString +return!1}, +gk(a){return this.a.c}, +gaa_(){return new A.bQ(new A.b_4(this),t.b)}, +xj(a,b){if(a instanceof A.rE)return A.dH(a,b,t.oI) +if(!b.p(0,B.Y))return a +return null}, +F(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(0){case 0:break}a9.au(t.ES) +s=A.q(a9).y1 +A.q(a9) +r=new A.b__(A.q(a9),A.q(a9).ax,a8,a8,a8,a8,a8,a8,a8,a8,a8) +a7.a.toString +q=r.gpQ() +a7.a.toString +p=r.gfX() +switch(q.a){case 0:o=B.Oy +break +case 1:o=B.Ox +break +default:o=a8}n=o.ab(0,new A.z(p.a,p.b).ap(0,4)) +m=a7.gjg() +m.q(0,B.Y) +l=a7.gjg() +l.C(0,B.Y) +a7.a.toString +k=a7.gaa_().a.$1(m) +if(k==null){o=s.b +k=o==null?a8:o.Z(m)}o=k==null +if(o){j=r.gmd().a.$1(m) +j.toString +i=j}else i=k +a7.a.toString +h=a7.gaa_().a.$1(l) +if(h==null){j=s.b +h=j==null?a8:j.Z(l)}j=h==null +if(j){g=r.gmd().a.$1(l) +g.toString +f=g}else f=h +a7.a.toString +g=a7.xj(a8,m) +e=g==null?a7.xj(s.x,m):g +if(e==null){g=a7.xj(r.ghu(),m) +g.toString +e=g}a7.a.toString +g=a7.xj(a8,l) +d=g==null?a7.xj(s.x,l):g +if(d==null){g=a7.xj(r.ghu(),l) +g.toString +d=g}c=a7.gjg() +c.q(0,B.R) +a7.a.toString +g=s.d +b=g==null?a8:g.Z(c) +a=b +if(a==null){b=r.gcI().a.$1(c) +b.toString +a=b}a0=a7.gjg() +a0.q(0,B.N) +a7.a.toString +b=g==null?a8:g.Z(a0) +a1=b +if(a1==null){b=r.gcI().a.$1(a0) +b.toString +a1=b}m.q(0,B.a4) +a7.a.toString +b=g==null?a8:g.Z(m) +if(b==null){o=o?a8:A.Y(31,k.gk(k)>>>16&255,k.gk(k)>>>8&255,k.gk(k)&255) +a2=o}else a2=b +if(a2==null){o=r.gcI().a.$1(m) +o.toString +a2=o}l.q(0,B.a4) +a7.a.toString +o=g==null?a8:g.Z(l) +if(o==null){o=j?a8:A.Y(31,h.gk(h)>>>16&255,h.gk(h)>>>8&255,h.gk(h)&255) +a3=o}else a3=o +if(a3==null){o=r.gcI().a.$1(l) +o.toString +a3=o}if(a7.v5$!=null){a1=a7.gjg().p(0,B.Y)?a2:a3 +a=a7.gjg().p(0,B.Y)?a2:a3}a7.a.toString +a4=a7.gjg() +a7.a.toString +o=s.c +o=o==null?a8:o.Z(a4) +a5=o +if(a5==null){o=r.gus().Z(a4) +o.toString +a5=o}a7.a.toString +a6=s.e +if(a6==null)a6=r.gjK() +o=a7.a.c +j=a7.d +g=a7.lB$ +g===$&&A.b() +j.scl(0,g) +g=a7.v2$ +g===$&&A.b() +j.sag4(g) +g=a7.v4$ +g===$&&A.b() +j.sag6(g) +g=a7.v3$ +g===$&&A.b() +j.sag7(g) +j.saec(a3) +j.sag5(a2) +j.syR(a1) +j.syM(a) +j.sjK(a6) +j.sacL(a7.v5$) +j.sLR(a7.gjg().p(0,B.R)) +j.saeE(a7.gjg().p(0,B.N)) +j.saac(i) +j.saeb(f) +j.sus(a5) +j.sk(0,a7.a.c) +j.saZx(a7.e) +a7.a.toString +g=s.w +j.scC(0,g==null?r.gcC(0):g) +j.saNI(e) +j.saVo(d) +j=a7.aOY(!1,a8,new A.bQ(new A.b_5(a7,s),t.tR),j,n) +return new A.ck(A.cJ(a8,a8,a8,a8,a8,a8,o,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,a8,a8),!1,!1,!1,!1,j,a8)}} +A.b_4.prototype={ +$1(a){if(a.p(0,B.L))return null +if(a.p(0,B.Y)){this.a.a.toString +return null}return null}, +$S:47} +A.b_5.prototype={ +$1(a){var s +this.a.a.toString +s=A.dH(null,a,t.GE) +if(s==null)s=null +return s==null?B.eD.Z(a):s}, +$S:146} +A.adq.prototype={ +sus(a){if(J.e(this.dx,a))return +this.dx=a +this.T()}, +gk(a){return this.dy}, +sk(a,b){if(this.dy===b)return +this.dy=b +this.T()}, +saZx(a){if(this.fr==a)return +this.fr=a +this.T()}, +scC(a,b){if(J.e(this.fx,b))return +this.fx=b +this.T()}, +saNI(a){if(J.e(this.fy,a))return +this.fy=a +this.T()}, +saVo(a){if(J.e(this.go,a))return +this.go=a +this.T()}, +a6e(a,b){var s=1-Math.abs(b-0.5)*2,r=18-s*2,q=a.a+s,p=a.b+s +return new A.I(q,p,q+r,p+r)}, +a1M(a){var s,r=this.e +if(a>=0.25)r.toString +else{s=this.f +s.toString +r.toString +r=A.U(s,r,a*4) +r.toString}return r}, +QN(a,b,c,d){a.eJ(this.fx.w_(b),c) +this.fx.r3(d).aT(a,b)}, +QO(a,b,c,d){var s,r=$.ap().cR(),q=b.a,p=b.b,o=q+2.6999999999999997,n=p+8.1 +if(c<0.5){s=A.oA(B.ajc,B.Jr,c*2) +s.toString +r.hc(0,o,n) +r.dg(0,q+s.a,p+s.b)}else{s=A.oA(B.Jr,B.ajb,(c-0.5)*2) +s.toString +r.hc(0,o,n) +r.dg(0,q+7.2,p+12.6) +r.dg(0,q+s.a,p+s.b)}a.eJ(r,d)}, +QP(a,b,c,d){var s,r=A.oA(B.ajm,B.Jq,1-c) +r.toString +s=A.oA(B.Jq,B.aj2,c) +s.toString +a.k0(b.ab(0,r),b.ab(0,s),d)}, +aT(a,b){var s,r,q,p,o,n,m,l,k,j,i=this +i.afA(a,b.nL(B.j)) +s=$.ap() +r=s.br() +q=i.dx +q.toString +r.saG(0,q) +r.sd0(0,B.aJ) +r.shw(2) +p=t.c.a(b.fO(0,2).ai(0,B.an9.fO(0,2))) +q=i.a.a +o=q.gbi(q) +$label0$0:{if(B.cR===o||B.am===o){q=i.a.gk(0) +break $label0$0}if(B.ci===o||B.a9===o){q=1-i.a.gk(0) +break $label0$0}q=null}if(i.fr===!1||i.dy===!1){n=i.dy===!1?1-q:q +m=i.a6e(p,n) +l=s.br() +l.saG(0,i.a1M(n)) +s=i.fy +if(n<=0.5){q=i.go +q.toString +s.toString +i.QN(a,m,l,A.bF(q,s,n))}else{s.toString +i.QN(a,m,l,s) +k=(n-0.5)*2 +if(i.fr==null||i.dy==null)i.QP(a,p,k,r) +else i.QO(a,p,k,r)}}else{m=i.a6e(p,1) +l=s.br() +l.saG(0,i.a1M(1)) +s=i.fy +s.toString +i.QN(a,m,l,s) +if(q<=0.5){k=1-q*2 +s=i.fr +if(s===!0)i.QO(a,p,k,r) +else i.QP(a,p,k,r)}else{j=(q-0.5)*2 +s=i.dy +if(s===!0)i.QO(a,p,j,r) +else i.QP(a,p,j,r)}}}} +A.b__.prototype={ +ghu(){return A.boM(new A.b_3(this))}, +gmd(){return new A.bQ(new A.b_1(this),t.mN)}, +gus(){return new A.bQ(new A.b_0(this),t.mN)}, +gcI(){return new A.bQ(new A.b_2(this),t.mN)}, +gjK(){return 20}, +gpQ(){return this.y.f}, +gfX(){return this.y.Q}, +gcC(a){return B.rz}} +A.b_3.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.L)){if(a.p(0,B.Y))return B.Ry +s=q.a.z.k3.a +return new A.br(A.Y(97,s>>>16&255,s>>>8&255,s&255),2,B.I,-1)}if(a.p(0,B.Y))return B.Rz +if(a.p(0,B.cN))return new A.br(q.a.z.fy,2,B.I,-1) +if(a.p(0,B.a4))return new A.br(q.a.z.k3,2,B.I,-1) +if(a.p(0,B.N))return new A.br(q.a.z.k3,2,B.I,-1) +if(a.p(0,B.R))return new A.br(q.a.z.k3,2,B.I,-1) +s=q.a.z +r=s.rx +return new A.br(r==null?s.k3:r,2,B.I,-1)}, +$S:136} +A.b_1.prototype={ +$1(a){var s +if(a.p(0,B.L)){if(a.p(0,B.Y)){s=this.a.z.k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}return B.t}if(a.p(0,B.Y)){if(a.p(0,B.cN))return this.a.z.fy +return this.a.z.b}return B.t}, +$S:9} +A.b_0.prototype={ +$1(a){if(a.p(0,B.L)){if(a.p(0,B.Y))return this.a.z.k2 +return B.t}if(a.p(0,B.Y)){if(a.p(0,B.cN))return this.a.z.go +return this.a.z.c}return B.t}, +$S:9} +A.b_2.prototype={ +$1(a){var s,r=this +if(a.p(0,B.cN)){if(a.p(0,B.a4)){s=r.a.z.fy.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.N)){s=r.a.z.fy.a +return A.Y(20,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.R)){s=r.a.z.fy.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}}if(a.p(0,B.Y)){if(a.p(0,B.a4)){s=r.a.z.k3.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.N)){s=r.a.z.b +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=r.a.z.b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return B.t}if(a.p(0,B.a4)){s=r.a.z.b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=r.a.z.k3.a +return A.Y(20,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.R)){s=r.a.z.k3.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}return B.t}, +$S:9} +A.UJ.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.UK.prototype={ +aj(){var s,r=this,q=null +r.aw() +s=A.c2(q,B.T,q,!r.a.c?0:1,r) +r.pB$=s +r.lB$=A.cl(B.ea,s,B.eN) +s=A.c2(q,r.We$,q,q,r) +r.nX$=s +r.v2$=A.cl(B.aQ,s,q) +s=A.c2(q,B.hd,q,r.rt$||r.rs$?1:0,r) +r.yF$=s +r.v3$=A.cl(B.aQ,s,q) +s=A.c2(q,B.hd,q,r.rt$||r.rs$?1:0,r) +r.yG$=s +r.v4$=A.cl(B.aQ,s,q)}, +m(){var s=this,r=s.pB$ +r===$&&A.b() +r.m() +r=s.lB$ +r===$&&A.b() +r.m() +r=s.nX$ +r===$&&A.b() +r.m() +r=s.v2$ +r===$&&A.b() +r.m() +r=s.yF$ +r===$&&A.b() +r.m() +r=s.v3$ +r===$&&A.b() +r.m() +r=s.yG$ +r===$&&A.b() +r.m() +r=s.v4$ +r===$&&A.b() +r.m() +s.apL()}} +A.Ao.prototype={ +gB(a){var s=this +return A.a4(s.a,s.gmd(),s.gus(),s.gcI(),s.gjK(),s.gpQ(),s.gfX(),s.gcC(s),s.ghu(),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.ah(b)!==A.K(s))return!1 +return b instanceof A.Ao&&b.gmd()==s.gmd()&&b.gus()==s.gus()&&b.gcI()==s.gcI()&&b.gjK()==s.gjK()&&b.gpQ()==s.gpQ()&&J.e(b.gfX(),s.gfX())&&J.e(b.gcC(b),s.gcC(s))&&J.e(b.ghu(),s.ghu())}, +gmd(){return this.b}, +gus(){return this.c}, +gcI(){return this.d}, +gjK(){return this.e}, +gpQ(){return this.f}, +gfX(){return this.r}, +gcC(a){return this.w}, +ghu(){return this.x}} +A.ads.prototype={} +A.Hx.prototype={ +gB(a){var s=this +return A.cj([s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,s.CW,s.cx,s.cy,s.db,s.dx,s.dy])}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.Hx&&b.a==s.a&&J.e(b.b,s.b)&&J.e(b.c,s.c)&&J.e(b.d,s.d)&&J.e(b.e,s.e)&&J.e(b.f,s.f)&&J.e(b.r,s.r)&&J.e(b.w,s.w)&&J.e(b.x,s.x)&&b.y==s.y&&J.e(b.z,s.z)&&J.e(b.Q,s.Q)&&J.e(b.as,s.as)&&J.e(b.at,s.at)&&J.e(b.ax,s.ax)&&J.e(b.ay,s.ay)&&J.e(b.ch,s.ch)&&b.CW==s.CW&&b.cx==s.cx&&b.cy==s.cy&&J.e(b.db,s.db)&&J.e(b.dx,s.dx)&&J.e(b.dy,s.dy)}} +A.adt.prototype={} +A.awG.prototype={ +D(){return"DynamicSchemeVariant."+this.b}} +A.tg.prototype={ +abW(d2,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=this,c8=null,c9=c7.b,d0=c7.c,d1=c7.d +if(d1==null)d1=c9 +s=c7.e +if(s==null)s=d0 +r=c7.f +if(r==null)r=c9 +q=c7.r +if(q==null)q=c9 +p=c7.w +if(p==null)p=d0 +o=c7.x +if(o==null)o=d0 +n=c7.y +m=d3==null?c7.z:d3 +l=c7.Q +if(l==null)l=n +k=c7.as +if(k==null)k=c7.z +j=c7.at +if(j==null)j=n +i=c7.ax +if(i==null)i=n +h=c7.ay +if(h==null)h=c7.z +g=c7.ch +if(g==null)g=c7.z +f=c7.CW +e=f==null?n:f +d=c7.cx +c=d==null?c7.z:d +b=c7.cy +if(b==null)b=f==null?n:f +a=c7.db +if(a==null)a=d==null?c7.z:d +a0=c7.dx +if(a0==null)a0=f==null?n:f +a1=c7.dy +if(a1==null){if(f==null)f=n}else f=a1 +a1=c7.fr +if(a1==null)a1=d==null?c7.z:d +a2=c7.fx +if(a2==null){if(d==null)d=c7.z}else d=a2 +a2=c7.fy +a3=c7.go +a4=c7.id +if(a4==null)a4=a2 +a5=c7.k1 +if(a5==null)a5=a3 +a6=c7.k2 +a7=c7.k3 +a8=c7.ok +if(a8==null)a8=a6 +a9=c7.p1 +if(a9==null)a9=a6 +b0=c7.p2 +if(b0==null)b0=a6 +b1=c7.p3 +if(b1==null)b1=a6 +b2=c7.p4 +if(b2==null)b2=a6 +b3=c7.R8 +if(b3==null)b3=a6 +b4=c7.RG +if(b4==null)b4=a6 +b5=c7.rx +if(b5==null)b5=a7 +b6=c7.ry +if(b6==null){b6=c7.a2 +if(b6==null)b6=a7}b7=c7.to +if(b7==null){b7=c7.a2 +if(b7==null)b7=a7}b8=c7.x1 +if(b8==null)b8=B.v +b9=c7.x2 +if(b9==null)b9=B.v +c0=c7.xr +if(c0==null)c0=a7 +c1=c7.y1 +if(c1==null)c1=a6 +c2=c7.y2 +if(c2==null)c2=d0 +c3=c7.bG +if(c3==null)c3=c9 +c4=c7.bx +if(c4==null)c4=a6 +c5=c7.a2 +if(c5==null)c5=a7 +c6=c7.k4 +if(c6==null)c6=a6 +return A.asr(c4,c7.a,a2,a4,c2,c0,c5,a3,a5,c1,d0,s,p,o,m,k,h,g,a7,b5,c,a,a1,d,b6,b7,c9,d1,r,q,b9,n,l,j,i,b8,a6,a9,b2,b3,b4,b1,b0,a8,c3,c6,e,b,a0,f)}, +aQg(a){return this.abW(a,null)}, +abO(a){return this.abW(null,a)}, +l(a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this +if(a2==null)return!1 +if(a0===a2)return!0 +if(J.ah(a2)!==A.K(a0))return!1 +s=!1 +if(a2 instanceof A.tg)if(a2.a===a0.a){r=a2.b +q=a0.b +if(r.l(0,q)){p=a2.c +o=a0.c +if(p.l(0,o)){n=a2.d +if(n==null)n=r +m=a0.d +if(n.l(0,m==null?q:m)){n=a2.e +if(n==null)n=p +m=a0.e +if(n.l(0,m==null?o:m)){n=a2.f +if(n==null)n=r +m=a0.f +if(n.l(0,m==null?q:m)){n=a2.r +if(n==null)n=r +m=a0.r +if(n.l(0,m==null?q:m)){n=a2.w +if(n==null)n=p +m=a0.w +if(n.l(0,m==null?o:m)){n=a2.x +if(n==null)n=p +m=a0.x +if(n.l(0,m==null?o:m)){n=a2.y +m=a0.y +if(n.l(0,m)){l=a2.z +k=a0.z +if(l.l(0,k)){j=a2.Q +if(j==null)j=n +i=a0.Q +if(j.l(0,i==null?m:i)){j=a2.as +if(j==null)j=l +i=a0.as +if(j.l(0,i==null?k:i)){j=a2.at +if(j==null)j=n +i=a0.at +if(j.l(0,i==null?m:i)){j=a2.ax +if(j==null)j=n +i=a0.ax +if(j.l(0,i==null?m:i)){j=a2.ay +if(j==null)j=l +i=a0.ay +if(j.l(0,i==null?k:i)){j=a2.ch +if(j==null)j=l +i=a0.ch +if(j.l(0,i==null?k:i)){j=a2.CW +i=j==null +h=i?n:j +g=a0.CW +f=g==null +if(h.l(0,f?m:g)){h=a2.cx +e=h==null +d=e?l:h +c=a0.cx +b=c==null +if(d.l(0,b?k:c)){d=a2.cy +if(d==null)d=i?n:j +a=a0.cy +if(a==null)a=f?m:g +if(d.l(0,a)){d=a2.db +if(d==null)d=e?l:h +a=a0.db +if(a==null)a=b?k:c +if(d.l(0,a)){d=a2.dx +if(d==null)d=i?n:j +a=a0.dx +if(a==null)a=f?m:g +if(d.l(0,a)){d=a2.dy +if(d==null)n=i?n:j +else n=d +j=a0.dy +if(j==null)m=f?m:g +else m=j +if(n.l(0,m)){n=a2.fr +if(n==null)n=e?l:h +m=a0.fr +if(m==null)m=b?k:c +if(n.l(0,m)){n=a2.fx +if(n==null)n=e?l:h +m=a0.fx +if(m==null)m=b?k:c +if(n.l(0,m)){n=a2.fy +m=a0.fy +if(n.l(0,m)){l=a2.go +k=a0.go +if(l.l(0,k)){j=a2.id +n=j==null?n:j +j=a0.id +if(n.l(0,j==null?m:j)){n=a2.k1 +if(n==null)n=l +m=a0.k1 +if(n.l(0,m==null?k:m)){n=a2.k2 +m=a0.k2 +if(n.l(0,m)){l=a2.k3 +k=a0.k3 +if(l.l(0,k)){j=a2.ok +if(j==null)j=n +i=a0.ok +if(j.l(0,i==null?m:i)){j=a2.p1 +if(j==null)j=n +i=a0.p1 +if(j.l(0,i==null?m:i)){j=a2.p2 +if(j==null)j=n +i=a0.p2 +if(j.l(0,i==null?m:i)){j=a2.p3 +if(j==null)j=n +i=a0.p3 +if(j.l(0,i==null?m:i)){j=a2.p4 +if(j==null)j=n +i=a0.p4 +if(j.l(0,i==null?m:i)){j=a2.R8 +if(j==null)j=n +i=a0.R8 +if(j.l(0,i==null?m:i)){j=a2.RG +if(j==null)j=n +i=a0.RG +if(j.l(0,i==null?m:i)){j=a2.rx +if(j==null)j=l +i=a0.rx +if(j.l(0,i==null?k:i)){j=a2.ry +if(j==null){j=a2.a2 +if(j==null)j=l}i=a0.ry +if(i==null){i=a0.a2 +if(i==null)i=k}if(j.l(0,i)){j=a2.to +if(j==null){j=a2.a2 +if(j==null)j=l}i=a0.to +if(i==null){i=a0.a2 +if(i==null)i=k}if(j.l(0,i)){j=a2.x1 +if(j==null)j=B.v +i=a0.x1 +if(j.l(0,i==null?B.v:i)){j=a2.x2 +if(j==null)j=B.v +i=a0.x2 +if(j.l(0,i==null?B.v:i)){j=a2.xr +if(j==null)j=l +i=a0.xr +if(j.l(0,i==null?k:i)){j=a2.y1 +if(j==null)j=n +i=a0.y1 +if(j.l(0,i==null?m:i)){j=a2.y2 +p=j==null?p:j +j=a0.y2 +if(p.l(0,j==null?o:j)){p=a2.bG +r=p==null?r:p +p=a0.bG +if(r.l(0,p==null?q:p)){r=a2.bx +if(r==null)r=n +q=a0.bx +if(r.l(0,q==null?m:q)){r=a2.a2 +if(r==null)r=l +q=a0.a2 +if(r.l(0,q==null?k:q)){s=a2.k4 +if(s==null)s=n +r=a0.k4 +s=s.l(0,r==null?m:r)}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return s}, +gB(d1){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=this,c8=c7.b,c9=c7.c,d0=c7.d +if(d0==null)d0=c8 +s=c7.e +if(s==null)s=c9 +r=c7.y +q=c7.z +p=c7.Q +if(p==null)p=r +o=c7.as +if(o==null)o=q +n=c7.CW +m=n==null +l=m?r:n +k=c7.cx +j=k==null +i=j?q:k +h=c7.cy +if(h==null)h=m?r:n +g=c7.db +if(g==null)g=j?q:k +f=c7.fy +e=c7.go +d=c7.id +if(d==null)d=f +c=c7.k1 +if(c==null)c=e +b=c7.k2 +a=c7.k3 +a0=c7.ok +if(a0==null)a0=b +a1=c7.p1 +if(a1==null)a1=b +a2=c7.p2 +if(a2==null)a2=b +a3=c7.p3 +if(a3==null)a3=b +a4=c7.p4 +if(a4==null)a4=b +a5=c7.R8 +if(a5==null)a5=b +a6=c7.RG +if(a6==null)a6=b +a7=c7.rx +if(a7==null)a7=a +a8=c7.ry +if(a8==null){a8=c7.a2 +if(a8==null)a8=a}a9=c7.to +if(a9==null){a9=c7.a2 +if(a9==null)a9=a}b0=c7.x1 +if(b0==null)b0=B.v +b1=c7.x2 +if(b1==null)b1=B.v +b2=c7.xr +if(b2==null)b2=a +b3=c7.y1 +if(b3==null)b3=b +b4=c7.y2 +if(b4==null)b4=c9 +b5=c7.bG +if(b5==null)b5=c8 +b6=c7.f +if(b6==null)b6=c8 +b7=c7.r +if(b7==null)b7=c8 +b8=c7.w +if(b8==null)b8=c9 +b9=c7.x +if(b9==null)b9=c9 +c0=c7.at +if(c0==null)c0=r +c1=c7.ax +if(c1==null)c1=r +c2=c7.ay +if(c2==null)c2=q +c3=c7.ch +if(c3==null)c3=q +c4=c7.dx +if(c4==null)c4=m?r:n +c5=c7.dy +if(c5==null){if(m)n=r}else n=c5 +m=c7.fr +if(m==null)m=j?q:k +c5=c7.fx +if(c5==null){if(j)k=q}else k=c5 +j=c7.bx +if(j==null)j=b +c5=c7.a2 +if(c5==null)c5=a +c6=c7.k4 +return A.a4(c7.a,c8,c9,d0,s,r,q,p,o,l,i,h,g,f,e,d,c,A.a4(b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,A.a4(b6,b7,b8,b9,c0,c1,c2,c3,c4,n,m,k,j,c5,c6==null?b:c6,B.a,B.a,B.a,B.a,B.a),B.a),B.a,B.a)}} +A.adv.prototype={} +A.qk.prototype={} +A.a22.prototype={} +A.If.prototype={ +gB(a){var s=this +return A.a4(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)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.If)if(J.e(b.a,r.a))if(b.b==r.b)if(b.c==r.c)if(b.d==r.d)if(J.e(b.e,r.e))if(b.f==r.f)if(b.r==r.r)if(J.e(b.w,r.w))if(b.x==r.x)if(b.y==r.y)if(b.z==r.z)s=b.Q==r.Q +return s}} +A.aej.prototype={} +A.Ig.prototype={ +gB(a){var s=this +return A.cj([s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,s.CW,s.cx,s.cy,s.db,s.dx,s.dy,s.fr,s.fx,s.fy,s.go,s.id,s.k1,s.k2,s.k3,s.k4,s.ok,s.p1,s.p2,s.p3,s.p4,s.R8])}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +s=!1 +if(b instanceof A.Ig)if(J.e(b.a,r.a))if(b.b==r.b)if(J.e(b.c,r.c))if(J.e(b.d,r.d))if(J.e(b.e,r.e))if(J.e(b.f,r.f))if(J.e(b.r,r.r))if(J.e(b.w,r.w))if(J.e(b.x,r.x))if(J.e(b.y,r.y))if(J.e(b.z,r.z))if(b.Q==r.Q)if(b.as==r.as)if(b.at==r.at)if(b.ax==r.ax)if(b.ay==r.ay)if(b.ch==r.ch)if(J.e(b.CW,r.CW))if(J.e(b.cx,r.cx))if(b.cy==r.cy)if(b.db==r.db)if(b.dx==r.dx)if(J.e(b.dy,r.dy))if(b.fr==r.fr)if(J.e(b.fx,r.fx))if(J.e(b.fy,r.fy))if(J.e(b.go,r.go))if(J.e(b.id,r.id))if(J.e(b.k1,r.k1))if(J.e(b.k2,r.k2))if(J.e(b.k3,r.k3))if(J.e(b.k4,r.k4))if(b.ok==r.ok)if(J.e(b.p1,r.p1))if(J.e(b.p3,r.p3))s=J.e(b.p4,r.p4) +return s}} +A.ael.prototype={} +A.aey.prototype={} +A.aur.prototype={ +zI(a){return B.V}, +JO(a,b,c,d){return B.ax}, +zH(a,b){return B.j}} +A.amV.prototype={} +A.a_5.prototype={ +F(a){var s=null,r=A.cr(a,B.cQ,t.l).w.r.b+8 +return new A.be(new A.al(8,r,8,8),new A.kz(new A.a_6(this.c.ai(0,new A.z(8,r))),new A.aB(222,s,A.fI(B.T,!0,B.Rs,A.b2(this.d,B.l,B.o,B.aE,B.r),B.by,s,1,s,s,s,s,s,B.fg),s),s),s)}} +A.AP.prototype={ +F(a){var s=null +return new A.aB(1/0,s,A.iA(!1,this.d,s,s,B.a3,s,s,s,s,this.c,s,A.OM(B.kv,s,s,s,s,B.cg,s,s,B.cg,A.q(a).ax.a===B.aI?B.n:B.ai,s,B.ane,s,B.a_H,s,B.jN,s,s,s,s)),s)}} +A.AV.prototype={ +F(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null +A.q(a) +s=A.q(a).a2 +r=t.l +q=A.cr(a,B.o2,r).w +p=g.x +if(p==null)p=s.Q +if(p==null)p=B.a_Z +o=q.f.ab(0,p) +n=A.bxe(a) +q=s.f +if(q==null){q=n.f +q.toString}p=g.c +if(p==null)p=s.a +if(p==null)p=A.q(a).ay +m=g.d +if(m==null)m=s.b +if(m==null){m=n.b +m.toString}l=s.c +if(l==null)l=n.gcW(0) +k=s.d +if(k==null)k=n.gdr() +j=g.z +if(j==null)j=s.e +if(j==null){j=n.e +j.toString}i=s.as +if(i==null){i=n.as +i.toString}h=new A.fh(q,f,f,new A.ep(B.RM,A.fI(B.T,!0,f,g.as,i,p,m,f,l,j,k,f,B.fg),f),f) +return new A.GM(o,new A.n0(A.cr(a,f,r).w.ags(!0,!0,!0,!0),h,f),B.fX,B.bc,f,f)}} +A.rZ.prototype={ +F(a){var s,r,q,p,o,n,m,l=this,k=null,j=A.q(a),i=A.q(a).a2,h=A.bxe(a),g=j.w,f=k +switch(g.a){case 2:case 4:break +case 0:case 1:case 3:case 5:s=A.hE(a,B.bu,t.C) +s.toString +f=s.gbe() +break}s=A.de(a,B.cP) +s=s==null?k:s.gem() +s=A.ak(1,0.3333333333333333,A.M(14*(s==null?B.aB:s).a/14,1,2)-1) +s.toString +A.e1(a) +r=24*s +q=i.r +if(q==null){q=h.giK() +q.toString}g=f==null&&g!==B.aG +p=new A.be(new A.al(r,r,r,0),A.kD(new A.ck(A.cJ(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,g,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),!0,!1,!1,!1,l.f,k),k,k,B.cs,!0,q,B.bn,k,B.aX),k) +g=24*s +s=i.w +if(s==null){s=h.gn_() +s.toString}o=new A.be(new A.al(g,16,g,24),A.kD(new A.ck(A.cJ(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,k,k),!0,!1,!1,!1,l.x,k),k,k,B.cs,!0,s,k,k,B.aX),k) +g=i.x +if(g==null)g=h.gC6() +n=new A.be(g,A.bLQ(B.cD,l.Q,B.ajL,B.r,0,8),k) +g=A.a([],t.p) +p.toString +g.push(p) +o.toString +g.push(new A.of(1,B.hl,o,k)) +n.toString +g.push(n) +m=A.bmx(A.b2(g,B.cv,B.o,B.aE,B.r)) +if(f!=null)m=new A.ck(A.cJ(k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,f,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,!0,k,k,k,k,k,k,k,k,k),!1,!0,!1,!1,m,k) +return A.Iy(k,k,m,k,k,k,k,l.fy,k)}} +A.Iz.prototype={ +xN(a,b,c,d){var s=this.yv,r=s==null +if((r?null:s.a)!==b){if(!r)s.m() +s=this.yv=A.cl(B.eN,b,null)}s.toString +return new A.eB(s,!1,this.an9(a,b,c,d),null)}, +m(){var s=this.yv +if(s!=null)s.m() +this.a_X()}} +A.avl.prototype={ +$3(a,b,c){var s=new A.fi(this.a,null),r=new A.nD(this.b.a,s,null) +return this.c?A.Dj(!0,r,B.Z,!0):r}, +$C:"$3", +$R:3, +$S:842} +A.b1Q.prototype={ +ga2v(){var s,r=this,q=r.ax +if(q===$){s=A.q(r.at) +r.ax!==$&&A.aH() +q=r.ax=s.ax}return q}, +ga2w(){var s,r=this,q=r.ay +if(q===$){s=A.q(r.at) +r.ay!==$&&A.aH() +q=r.ay=s.p2}return q}, +gfV(){return this.ga2v().y}, +gco(a){var s=this.ga2v(),r=s.R8 +return r==null?s.k2:r}, +gcW(a){return B.t}, +gdr(){return B.t}, +giK(){return this.ga2w().f}, +gn_(){return this.ga2w().z}, +gC6(){return B.a_J}} +A.AW.prototype={ +gB(a){var s=this +return A.cj([s.gco(s),s.b,s.gcW(s),s.gdr(),s.e,s.f,s.gfV(),s.giK(),s.gn_(),s.gC6(),s.z,s.Q,s.as])}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.AW&&J.e(b.gco(b),s.gco(s))&&b.b==s.b&&J.e(b.gcW(b),s.gcW(s))&&J.e(b.gdr(),s.gdr())&&J.e(b.e,s.e)&&J.e(b.f,s.f)&&J.e(b.gfV(),s.gfV())&&J.e(b.giK(),s.giK())&&J.e(b.gn_(),s.gn_())&&J.e(b.gC6(),s.gC6())&&J.e(b.z,s.z)&&J.e(b.Q,s.Q)&&b.as==s.as}, +gco(a){return this.a}, +gcW(a){return this.c}, +gdr(){return this.d}, +giK(){return this.r}, +gn_(){return this.w}, +gC6(){return this.x}, +gfV(){return this.y}} +A.aeH.prototype={} +A.pF.prototype={ +F(a){var s,r,q,p,o,n,m,l=this,k=null +A.q(a) +s=A.blG(a) +r=A.boj(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.aB(k,p,A.cL(A.aa(k,k,B.h,k,k,new A.bb(k,k,new A.f4(B.x,B.x,A.bsm(a,l.r,o),B.x),k,k,k,k,B.E),k,o,k,new A.eA(n,0,m,0),k,k,k,k),k,k),k)}} +A.aa6.prototype={ +F(a){var s,r,q,p,o,n,m,l=null +A.q(a) +s=A.blG(a) +r=A.boj(a) +q=this.c +p=s.c +if(p==null){o=r.c +o.toString +p=o}n=s.d +if(n==null){o=r.d +o.toString +n=o}m=s.e +if(m==null){o=r.e +o.toString +m=o}return new A.aB(q,l,A.cL(A.aa(l,l,B.h,l,l,new A.bb(l,l,new A.f4(B.x,B.x,B.x,A.bsm(a,this.r,p)),l,l,l,l,B.E),l,l,l,new A.eA(0,n,0,m),l,l,l,p),l,l),l)}} +A.b1Z.prototype={ +gaG(a){var s=A.q(this.f).ax,r=s.to +if(r==null){r=s.a2 +s=r==null?s.k3:r}else s=r +return s}} +A.wC.prototype={ +gB(a){var s=this +return A.a4(s.gaG(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.ah(b)!==A.K(s))return!1 +return b instanceof A.wC&&J.e(b.gaG(b),s.gaG(s))&&b.b==s.b&&b.c==s.c&&b.d==s.d&&b.e==s.e}, +gaG(a){return this.a}} +A.aeM.prototype={} +A.IR.prototype={ +gB(a){var s=this +return A.a4(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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.IR)if(J.e(b.a,r.a))if(J.e(b.b,r.b))if(b.c==r.c)if(J.e(b.d,r.d))if(J.e(b.e,r.e))if(J.e(b.f,r.f))if(J.e(b.r,r.r))s=b.w==r.w +return s}} +A.aeX.prototype={} +A.af_.prototype={ +aT(a,b){var s=null,r=b.b,q=A.M(this.r.$0(),0,Math.max(r-48,0)),p=t.Y,o=A.M(q+48,Math.min(48,r),r),n=this.f +q=new A.b0(q,0,p).al(0,n.gk(0)) +this.w.jB(a,new A.z(0,q),new A.q7(s,s,s,s,new A.R(b.a,new A.b0(o,r,p).al(0,n.gk(0))-q),s))}, +ff(a){var s=this,r=!0 +if(a.b.l(0,s.b))if(a.c===s.c)if(a.d===s.d)r=a.f!==s.f +return r}} +A.ET.prototype={ +a0(){return new A.EV(this.$ti.i("EV<1>"))}} +A.EV.prototype={ +aj(){this.aw() +this.a7S()}, +b1(a){var s,r,q +this.bb(a) +s=this.a +if(a.w===s.w){r=a.c +q=r.k2 +s=s.c +s=q!=s.k2||r.d9!==s.d9||s.bH.length!==r.bH.length}else s=!0 +if(s)this.a7S()}, +a7S(){var s,r,q,p,o,n=this,m=n.d +if(m!=null)m.m() +m=n.a +s=m.c +r=0.5/(s.bH.length+1.5) +m=m.w +q=s.k2 +if(m===s.d9){q.toString +n.d=A.cl(B.k8,q,null)}else{p=A.M(0.5+(m+1)*r,0,1) +o=A.M(p+1.5*r,0,1) +q.toString +n.d=A.cl(new A.eF(p,o,B.X),q,null)}}, +awB(a){var s,r=$.aw.aR$.d.a.b +switch((r==null?A.vn():r).a){case 0:r=!1 +break +case 1:r=!0 +break +default:r=null}if(a&&r){r=this.a +s=r.c.Ok(r.f,r.r.d,r.w) +this.a.d.kD(s.d,B.e9,B.bc)}}, +aBa(){var s,r=this.a +r=r.c.bH[r.w] +s=this.c +s.toString +A.bU(s,!1).fM(new A.mf(r.f.r,this.$ti.i("mf<1>")))}, +m(){var s=this.d +if(s!=null)s.m() +this.ar()}, +F(a){var s=this,r=null,q=s.a,p=q.c,o=q.w,n=p.bH[o],m=q.e,l=new A.aB(r,p.dK,new A.be(m,n,r),r) +q=n.f.w +if(q)l=A.eQ(o===p.d9,r,!0,l,r,!0,r,r,r,r,r,s.gawA(),r,r,r,s.gaB9(),r,r,r,r) +p=s.d +p.toString +l=new A.eB(p,!1,l,r) +return q?A.NN(l,r,B.IQ):l}} +A.ER.prototype={ +a0(){return new A.QY(this.$ti.i("QY<1>"))}} +A.QY.prototype={ +aj(){var s,r=this +r.aw() +s=r.a.c.k2 +s.toString +s=A.cl(B.xZ,s,B.y_) +r.d!==$&&A.d1() +r.d=s +s=r.a.c.k2 +s.toString +s=A.cl(B.y0,s,B.k8) +r.e!==$&&A.d1() +r.e=s}, +m(){var s=this.d +s===$&&A.b() +s.m() +s=this.e +s===$&&A.b() +s.m() +this.ar()}, +F(a){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=A.hE(a,B.bu,t.C) +f.toString +s=h.a.c +r=A.a([],t.p) +for(q=s.bH,p=h.$ti.i("ET<1>"),o=0;o0?8+B.b.lI(B.b.cK(this.fv,0,a),new A.b2t()):8}, +Ok(a,b,c){var s,r,q,p,o=this,n=b-96,m=a.b,l=a.d,k=Math.min(l,b),j=o.YT(c),i=Math.min(48,m),h=Math.max(b-48,k),g=o.fv,f=o.d9 +l-=m +s=m-j-(g[f]-l)/2 +r=B.dg.gc9(0)+B.dg.gci(0) +if(o.bH.length!==0)r+=B.b.lI(g,new A.b2v()) +q=Math.min(n,r) +p=s+q +if(sh){p=Math.max(k,h) +s=p-q}g=g[f]/2 +l=k-l/2 +if(p-gn?Math.min(Math.max(0,j-(m-s)),r-q):0)}, +guq(){return this.k6}} +A.b2r.prototype={ +$2(a,b){var s=this.a +return new A.zi(s,b,s.d4,s.cm,s.d9,s.fu,s.hF,!0,s.nZ,s.dS,null,s.$ti.i("zi<1>"))}, +$S(){return this.a.$ti.i("zi<1>(Q,au)")}} +A.b2t.prototype={ +$2(a,b){return a+b}, +$S:75} +A.b2v.prototype={ +$2(a,b){return a+b}, +$S:75} +A.zi.prototype={ +a0(){return new A.R1(this.$ti.i("R1<1>"))}} +A.R1.prototype={ +aj(){this.aw() +var s=this.a +this.d=A.uE(s.c.Ok(s.r,s.d.d,s.w).d,null,null)}, +F(a){var s,r=this,q=A.e1(a),p=r.a,o=p.c,n=p.f,m=p.r,l=p.d,k=p.Q +p=p.at +s=r.d +s===$&&A.b() +return A.aI8(new A.fi(new A.b2o(r,q,new A.ER(o,n,m,l,k,!0,p,s,null,r.$ti.i("ER<1>"))),null),a,!0,!0,!0,!0)}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.ar()}} +A.b2o.prototype={ +$1(a){var s=this.a,r=s.a +return new A.kz(new A.af1(r.r,r.c,this.b,r.ax,s.$ti.i("af1<1>")),new A.nD(r.y.a,this.c,null),null)}, +$S:199} +A.Fm.prototype={ +b6(a){var s=new A.aje(this.e,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.E=this.e}} +A.aje.prototype={ +ck(){this.qo() +var s=this.gv(0) +this.E.$1(s)}} +A.aeZ.prototype={ +F(a){var s=null +return new A.ck(A.cJ(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,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),!1,!1,!1,!1,new A.ep(B.uG,new A.fh(this.d,s,s,this.c,s),s),s)}} +A.iN.prototype={ +gk(a){return this.r}} +A.IS.prototype={ +dY(a){return!1}} +A.AZ.prototype={ +a0(){return new A.EQ(this.$ti.i("EQ<1>"))}, +gk(a){return this.d}} +A.EQ.prototype={ +gdw(a){var s +this.a.toString +s=this.r +return s}, +aj(){var s,r,q=this +q.aw() +q.a9C() +s=q.a +s.toString +if(q.r==null)q.r=A.kK(!0,A.K(s).j(0),!0,!0,null,null,!1) +s=t.ot +r=t.wS +q.w=A.C([B.nL,new A.dv(new A.b2k(q),new A.bV(A.a([],s),r),t.wY),B.tF,new A.dv(new A.b2l(q),new A.bV(A.a([],s),r),t.nz)],t.u,t.od)}, +m(){var s,r=this +$.aw.lJ(r) +r.T1() +s=r.r +if(s!=null)s.m() +r.ar()}, +T1(){var s,r=this.e +if(r!=null)if(r.gDO()){s=r.a +if(s!=null)s.Nj(r)}this.f=this.e=null}, +b1(a){var s,r=this +r.bb(a) +s=r.a +s.toString +if(r.r==null)r.r=A.kK(!0,A.K(s).j(0),!0,!0,null,null,!1) +r.a9C()}, +a9C(){var s,r,q,p=this,o=p.a,n=!0,m=o.c +if(m.length!==0)o=o.d==null&&!new A.bh(m,new A.b2i(p),A.af(m).i("bh<1>")).gav(0).u() +else o=n +if(o){p.d=null +return}for(o=p.a,n=o.c,m=n.length,s=0;s>")) +for(q=a1.i("Fm<1>"),p=0;o=a.a.c,p?>") +f=a1.i("aq?>") +e=A.qF(B.cT) +d=A.a([],t.wi) +c=$.aW() +b=$.ab +a.e=new A.R_(r,B.bV,q,o,8,l,m,48,a0,a0,a0,!0,a0,j,k,a0,a0,i,A.bn(t.f9),new A.bG(a0,a1.i("bG>>")),new A.bG(a0,t.A),new A.ud(),a0,0,new A.aq(new A.a_(h,g),f),e,d,B.i1,new A.cS(a0,c),new A.aq(new A.a_(b,g),f),new A.aq(new A.a_(b,g),f),a1.i("R_<1>")) +a1=a.gdw(0) +if(a1!=null)a1.iI() +a1=a.e +a1.toString +n.nh(a1).ak(new A.b2h(a),t.H) +a.a.toString}, +gaDc(){var s,r,q=this.c +q.toString +s=A.q(q).ax.a +q=this.gwR() +r=this.a +if(q){r.toString +q=null +switch(s.a){case 1:q=B.iJ +break +case 0:q=B.au +break}return q}else{r.toString +q=null +switch(s.a){case 1:q=B.kU +break +case 0:q=B.vZ +break}return q}}, +gwR(){var s=this.a +s=s.c.length!==0 +return s}, +F(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h=A.de(a,B.PW),g=h==null?i:h.gpV(0) +if(g==null){s=A.z6(a).gmo() +g=s.a>s.b?B.rl:B.rk}h=j.f +if(h==null){j.f=g +h=g}if(g!==h){j.T1() +j.f=g}h=j.a +r=A.a8(h.c,!0,t.l7) +j.a.toString +if(!j.gwR())j.a.toString +A.bkY(a) +if(r.length===0)q=B.ax +else{h=j.d +if(h==null)h=i +j.a.toString +p=A.af(r).i("ad<1,aV>") +p=A.a8(new A.ad(r,new A.b2j(j),p),!0,p.i("aN.E")) +q=A.btC(B.io,p,h)}if(j.gwR()){h=j.gTL() +h.toString}else{h=j.gTL() +h.toString +h=h.cc(A.q(a).ch)}j.a.toString +p=a.au(t.I) +p.toString +p=B.Z.Z(p.w) +o=t.p +n=A.a([],o) +j.a.toString +n.push(A.cf(q,1)) +m=j.gaDc() +j.a.toString +n.push(A.BA(B.pO,new A.eP(24,i,i,i,i,m,i,i,i),i)) +g=A.kD(new A.aB(i,i,new A.be(p,A.bt(n,B.l,B.bX,B.aE),i),i),i,i,B.cs,!0,h,i,i,B.aX) +if(a.au(t.U2)==null){j.a.toString +h=A.aa(i,i,B.h,i,i,B.uJ,i,1,i,i,i,i,i,i) +g=A.cq(B.a2,A.a([g,A.eH(8,h,i,i,0,0,i,i)],o),B.w,B.W,i)}h=A.bn(t.g) +if(!j.gwR())h.q(0,B.L) +l=A.dH(B.eD,h,t.Pb) +j.a.toString +k=j.d!=null +h=j.w +h===$&&A.b() +p=j.gwR()?j.gawC():i +o=j.gwR() +j.a.toString +n=j.gdw(0) +j.a.toString +m=A.q(a) +j.a.toString +h=A.rY(h,A.eQ(!1,i,o,g,i,!1,m.cx,n,i,i,l,i,i,i,i,p,i,i,i,i)) +return new A.ck(A.cJ(i,i,i,i,i,!k,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,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i),!1,!1,!1,!1,h,i)}} +A.b2k.prototype={ +$1(a){return this.a.QQ()}, +$S:200} +A.b2l.prototype={ +$1(a){return this.a.QQ()}, +$S:201} +A.b2i.prototype={ +$1(a){var s,r +if(a.w){s=a.r +r=this.a.a.d +r=s==null?r==null:s===r +s=r}else s=!1 +return s}, +$S(){return this.a.$ti.i("H(iN<1>)")}} +A.b2g.prototype={ +$1(a){var s=this.a.e +if(s==null)return +s.fv[this.b]=a.b}, +$S:157} +A.b2h.prototype={ +$1(a){var s=this.a +s.T1() +if(s.c==null||a==null)return +s.a.r.$1(a.a)}, +$S(){return this.a.$ti.i("aF(mf<1>?)")}} +A.b2j.prototype={ +$1(a){this.a.a.toString +return new A.aB(null,48,a,null)}, +$S:338} +A.UT.prototype={} +A.IT.prototype={ +gB(a){return A.a4(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.IT)if(J.e(b.a,r.a))s=J.e(b.c,r.c) +return s}} +A.af3.prototype={} +A.B5.prototype={ +y6(a){var s=null +A.q(a) +A.q(a) +return new A.afc(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,B.T,!0,B.O,s,s,s)}, +Nz(a){var s +a.au(t.dq) +s=A.q(a) +return s.A.a}} +A.EZ.prototype={ +Z(a){if(a.p(0,B.L))return this.b +return this.a}} +A.afb.prototype={ +Z(a){var s +if(a.p(0,B.a4)){s=this.a +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=this.a +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=this.a +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}} +A.af9.prototype={ +Z(a){var s=this +if(a.p(0,B.L))return 0 +if(a.p(0,B.a4))return s.a+6 +if(a.p(0,B.N))return s.a+2 +if(a.p(0,B.R))return s.a+2 +return s.a}} +A.afa.prototype={ +Z(a){if(a.p(0,B.L))return this.b +return this.a}} +A.afe.prototype={ +y6(a){var s,r,q,p +A.q(a) +s=this.amp(a) +r=s.ghK() +if(r==null)q=null +else{r=r.Z(B.jY) +r=r==null?null:r.r +q=r}if(q==null)q=14 +r=A.de(a,B.cP) +r=r==null?null:r.gem() +p=A.arf(B.py,B.a_f,B.a_e,q*(r==null?B.aB:r).a/14) +return s.CD(new A.bK(p,t.mD))}} +A.aff.prototype={ +F(a){var s,r,q,p=this,o=null,n=p.e.a,m=o +if(n==null)n=m +else{n=n.Z(B.jY) +n=n==null?o:n.r}s=n +if(s==null)s=14 +n=A.de(a,B.cP) +n=n==null?o:n.gem() +n=A.ak(8,4,A.M(s*(n==null?B.aB:n).a/14,1,2)-1) +n.toString +m=t.p +r=p.d +q=p.c +return A.bt(p.f===B.a3?A.a([r,new A.aB(n,o,o,o),new A.of(1,B.hl,q,o)],m):A.a([new A.of(1,B.hl,q,o),new A.aB(n,o,o,o),r],m),B.l,B.o,B.aE)}} +A.afc.prototype={ +gqx(){var s,r=this,q=r.fy +if(q===$){s=A.q(r.fx) +r.fy!==$&&A.aH() +q=r.fy=s.ax}return q}, +ghK(){return new A.bK(A.q(this.fx).p2.as,t.RP)}, +gco(a){return new A.bQ(new A.b2N(this),t.b)}, +gfw(){return new A.bQ(new A.b2P(this),t.b)}, +gcI(){return new A.bQ(new A.b2R(this),t.b)}, +gcW(a){var s=this.gqx().x1 +if(s==null)s=B.v +return new A.bK(s,t.De)}, +gdr(){return B.bO}, +geK(a){return new A.bQ(new A.b2O(),t.N5)}, +gdW(a){return new A.bK(A.bU6(this.fx),t.mD)}, +gjz(){return B.tV}, +gjy(){return B.fJ}, +gcC(a){return B.fI}, +ghb(){return new A.bQ(new A.b2Q(),t.B_)}, +gfX(){return A.q(this.fx).Q}, +gjD(){return A.q(this.fx).f}, +ghf(){return A.q(this.fx).y}} +A.b2N.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){s=this.a.gqx().k3.a +return A.Y(31,s>>>16&255,s>>>8&255,s&255)}s=this.a.gqx() +r=s.p3 +return r==null?s.k2:r}, +$S:9} +A.b2P.prototype={ +$1(a){var s +if(a.p(0,B.L)){s=this.a.gqx().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}return this.a.gqx().b}, +$S:9} +A.b2R.prototype={ +$1(a){var s +if(a.p(0,B.a4)){s=this.a.gqx().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=this.a.gqx().b +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=this.a.gqx().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}, +$S:47} +A.b2O.prototype={ +$1(a){if(a.p(0,B.L))return 0 +if(a.p(0,B.a4))return 1 +if(a.p(0,B.N))return 3 +if(a.p(0,B.R))return 1 +return 1}, +$S:216} +A.b2Q.prototype={ +$1(a){if(a.p(0,B.L))return B.cg +return B.dt}, +$S:61} +A.amX.prototype={} +A.amY.prototype={} +A.amZ.prototype={} +A.an_.prototype={} +A.B6.prototype={ +gB(a){return J.W(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.B6&&J.e(b.a,this.a)}} +A.afd.prototype={} +A.rm.prototype={} +A.Jf.prototype={ +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,s.e,s.gfV(),s.gV7(),s.gvL(),s.gV8(),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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.Jf)if(J.e(b.a,r.a))if(J.e(b.b,r.b))if(J.e(b.c,r.c))if(J.e(b.d,r.d))if(J.e(b.e,r.e))if(J.e(b.gfV(),r.gfV()))if(J.e(b.gV7(),r.gV7()))if(J.e(b.gvL(),r.gvL()))if(J.e(b.gV8(),r.gV8()))if(J.e(b.y,r.y))s=J.e(b.z,r.z) +return s}, +gfV(){return this.f}, +gV7(){return this.r}, +gvL(){return this.w}, +gV8(){return this.x}} +A.afk.prototype={} +A.Jn.prototype={ +gB(a){return J.W(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.Jn&&J.e(b.a,this.a)}} +A.aft.prototype={} +A.Jr.prototype={ +dY(a){var s=this,r=!0 +if(s.f===a.f)if(s.r===a.r)if(s.w===a.w)r=s.x!==a.x +return r}} +A.azm.prototype={ +j(a){return"FloatingActionButtonLocation"}} +A.aSk.prototype={ +aWb(){return!1}, +ti(a){var s=this.aWb()?4:0 +return new A.z(this.aju(a,s),this.ajv(a,s))}} +A.ayr.prototype={ +ajv(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.ayq.prototype={ +aju(a,b){var s +switch(a.y.a){case 0:s=16+a.e.a-b +break +case 1:s=A.bNV(a,b) +break +default:s=null}return s}} +A.b2T.prototype={ +j(a){return"FloatingActionButtonLocation.endFloat"}} +A.azl.prototype={ +j(a){return"FloatingActionButtonAnimator"}} +A.bcW.prototype={ +ajt(a,b,c){if(c<0.5)return a +else return b}} +A.PV.prototype={ +gk(a){var s=this,r=s.w.x +r===$&&A.b() +if(r>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return s}if(a.p(0,B.N)){s=r.c +if(s==null){s=r.a +s=s==null?q:A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return s}if(a.p(0,B.R)){s=r.b +s=r.a +s=s==null?q:A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255) +return s}}if(a.p(0,B.a4)){s=r.d +if(s==null){s=r.a +s=s==null?q:A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return s}if(a.p(0,B.N)){s=r.c +if(s==null){s=r.a +s=s==null?q:A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return s}if(a.p(0,B.R)){s=r.b +s=r.a +s=s==null?q:A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255) +return s}return q}, +j(a){return"{hovered: "+A.c(this.c)+", focused: "+A.c(this.b)+", pressed: "+A.c(this.d)+", otherwise: null}"}} +A.ag8.prototype={ +Z(a){if(a.p(0,B.L))return this.b +return this.a}} +A.aga.prototype={ +gbS(){var s,r=this,q=r.go +if(q===$){s=A.q(r.fx) +r.go!==$&&A.aH() +q=r.go=s.ax}return q}, +gco(a){return B.PC}, +gfw(){return new A.bQ(new A.b7t(this),t.b)}, +gcI(){return new A.bQ(new A.b7v(this),t.b)}, +geK(a){return B.ic}, +gcW(a){return B.bO}, +gdr(){return B.bO}, +gdW(a){return B.nS}, +gjz(){return B.nR}, +gjy(){return B.fJ}, +gj3(){return B.nQ}, +ghu(){return null}, +gcC(a){return B.fI}, +ghb(){return new A.bQ(new A.b7u(),t.B_)}, +gfX(){return B.kc}, +gjD(){return A.q(this.fx).f}, +ghf(){return A.q(this.fx).y}} +A.b7t.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){s=this.a.gbS().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.Y))return this.a.gbS().b +s=this.a.gbS() +r=s.rx +return r==null?s.k3:r}, +$S:9} +A.b7v.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.Y)){if(a.p(0,B.a4)){s=q.a.gbS().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=q.a.gbS().b +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=q.a.gbS().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}}if(a.p(0,B.a4)){s=q.a.gbS() +r=s.rx +s=r==null?s.k3:r +s=s.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.N)){s=q.a.gbS() +r=s.rx +s=(r==null?s.k3:r).a +return A.Y(20,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.R)){s=q.a.gbS() +r=s.rx +s=r==null?s.k3:r +s=s.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}return B.t}, +$S:9} +A.b7u.prototype={ +$1(a){if(a.p(0,B.L))return B.cg +return B.dt}, +$S:61} +A.afu.prototype={ +gbS(){var s,r=this,q=r.go +if(q===$){s=A.q(r.fx) +r.go!==$&&A.aH() +q=r.go=s.ax}return q}, +gco(a){return new A.bQ(new A.b48(this),t.b)}, +gfw(){return new A.bQ(new A.b49(this),t.b)}, +gcI(){return new A.bQ(new A.b4b(this),t.b)}, +geK(a){return B.ic}, +gcW(a){return B.bO}, +gdr(){return B.bO}, +gdW(a){return B.nS}, +gjz(){return B.nR}, +gjy(){return B.fJ}, +gj3(){return B.nQ}, +ghu(){return null}, +gcC(a){return B.fI}, +ghb(){return new A.bQ(new A.b4a(),t.B_)}, +gfX(){return B.kc}, +gjD(){return A.q(this.fx).f}, +ghf(){return A.q(this.fx).y}} +A.b48.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){s=this.a.gbS().k3.a +return A.Y(31,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.Y))return this.a.gbS().b +s=this.a +if(s.fy){s=s.gbS() +r=s.RG +return r==null?s.k2:r}return s.gbS().b}, +$S:9} +A.b49.prototype={ +$1(a){var s +if(a.p(0,B.L)){s=this.a.gbS().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.Y))return this.a.gbS().c +s=this.a +if(s.fy)return s.gbS().b +return s.gbS().c}, +$S:9} +A.b4b.prototype={ +$1(a){var s,r=this +if(a.p(0,B.Y)){if(a.p(0,B.a4)){s=r.a.gbS().c +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=r.a.gbS().c +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=r.a.gbS().c +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}}s=r.a +if(s.fy){if(a.p(0,B.a4)){s=s.gbS().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=s.gbS().b +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=s.gbS().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}}if(a.p(0,B.a4)){s=s.gbS().c +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=s.gbS().c +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=s.gbS().c +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return B.t}, +$S:9} +A.b4a.prototype={ +$1(a){if(a.p(0,B.L))return B.cg +return B.dt}, +$S:61} +A.afv.prototype={ +gbS(){var s,r=this,q=r.go +if(q===$){s=A.q(r.fx) +r.go!==$&&A.aH() +q=r.go=s.ax}return q}, +gco(a){return new A.bQ(new A.b4c(this),t.b)}, +gfw(){return new A.bQ(new A.b4d(this),t.b)}, +gcI(){return new A.bQ(new A.b4f(this),t.b)}, +geK(a){return B.ic}, +gcW(a){return B.bO}, +gdr(){return B.bO}, +gdW(a){return B.nS}, +gjz(){return B.nR}, +gjy(){return B.fJ}, +gj3(){return B.nQ}, +ghu(){return null}, +gcC(a){return B.fI}, +ghb(){return new A.bQ(new A.b4e(),t.B_)}, +gfX(){return B.kc}, +gjD(){return A.q(this.fx).f}, +ghf(){return A.q(this.fx).y}} +A.b4c.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){s=this.a.gbS().k3.a +return A.Y(31,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.Y)){s=this.a.gbS() +r=s.Q +return r==null?s.y:r}s=this.a +if(s.fy){s=s.gbS() +r=s.RG +return r==null?s.k2:r}s=s.gbS() +r=s.Q +return r==null?s.y:r}, +$S:9} +A.b4d.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){s=this.a.gbS().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.Y)){s=this.a.gbS() +r=s.as +return r==null?s.z:r}s=this.a +if(s.fy){s=s.gbS() +r=s.rx +return r==null?s.k3:r}s=s.gbS() +r=s.as +return r==null?s.z:r}, +$S:9} +A.b4f.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.Y)){if(a.p(0,B.a4)){s=q.a.gbS() +r=s.as +s=r==null?s.z:r +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=q.a.gbS() +r=s.as +s=r==null?s.z:r +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=q.a.gbS() +r=s.as +s=r==null?s.z:r +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}}s=q.a +if(s.fy){if(a.p(0,B.a4)){s=s.gbS() +r=s.rx +s=r==null?s.k3:r +s=s.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.N)){s=s.gbS() +r=s.rx +s=(r==null?s.k3:r).a +return A.Y(20,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.R)){s=s.gbS() +r=s.rx +s=r==null?s.k3:r +s=s.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}}if(a.p(0,B.a4)){s=s.gbS() +r=s.as +s=r==null?s.z:r +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=s.gbS() +r=s.as +s=r==null?s.z:r +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=s.gbS() +r=s.as +s=r==null?s.z:r +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return B.t}, +$S:9} +A.b4e.prototype={ +$1(a){if(a.p(0,B.L))return B.cg +return B.dt}, +$S:61} +A.ahL.prototype={ +gbS(){var s,r=this,q=r.go +if(q===$){s=A.q(r.fx) +r.go!==$&&A.aH() +q=r.go=s.ax}return q}, +gco(a){return new A.bQ(new A.bal(this),t.b)}, +gfw(){return new A.bQ(new A.bam(this),t.b)}, +gcI(){return new A.bQ(new A.bao(this),t.b)}, +geK(a){return B.ic}, +gcW(a){return B.bO}, +gdr(){return B.bO}, +gdW(a){return B.nS}, +gjz(){return B.nR}, +gjy(){return B.fJ}, +gj3(){return B.nQ}, +ghu(){return new A.bQ(new A.bap(this),t.jZ)}, +gcC(a){return B.fI}, +ghb(){return new A.bQ(new A.ban(),t.B_)}, +gfX(){return B.kc}, +gjD(){return A.q(this.fx).f}, +ghf(){return A.q(this.fx).y}} +A.bal.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){if(a.p(0,B.Y)){s=this.a.gbS().k3.a +return A.Y(31,s>>>16&255,s>>>8&255,s&255)}return B.t}if(a.p(0,B.Y)){s=this.a.gbS() +r=s.xr +return r==null?s.k3:r}return B.t}, +$S:9} +A.bam.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){s=this.a.gbS().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.Y)){s=this.a.gbS() +r=s.y1 +return r==null?s.k2:r}s=this.a.gbS() +r=s.rx +return r==null?s.k3:r}, +$S:9} +A.bao.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.Y)){if(a.p(0,B.a4)){s=q.a.gbS() +r=s.y1 +s=r==null?s.k2:r +s=s.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.N)){s=q.a.gbS() +r=s.y1 +s=(r==null?s.k2:r).a +return A.Y(20,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.R)){s=q.a.gbS() +r=s.y1 +s=(r==null?s.k2:r).a +return A.Y(20,s>>>16&255,s>>>8&255,s&255)}}if(a.p(0,B.a4)){s=q.a.gbS().k3.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.N)){s=q.a.gbS() +r=s.rx +s=(r==null?s.k3:r).a +return A.Y(20,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.R)){s=q.a.gbS() +r=s.rx +s=(r==null?s.k3:r).a +return A.Y(20,s>>>16&255,s>>>8&255,s&255)}return B.t}, +$S:9} +A.bap.prototype={ +$1(a){var s,r +if(a.p(0,B.Y))return null +else{if(a.p(0,B.L)){s=this.a.gbS().k3.a +return new A.br(A.Y(31,s>>>16&255,s>>>8&255,s&255),1,B.I,-1)}s=this.a.gbS() +r=s.ry +if(r==null){r=s.a2 +s=r==null?s.k3:r}else s=r +return new A.br(s,1,B.I,-1)}}, +$S:341} +A.ban.prototype={ +$1(a){if(a.p(0,B.L))return B.cg +return B.dt}, +$S:61} +A.an6.prototype={} +A.tD.prototype={ +gB(a){return J.W(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.tD&&J.e(b.a,this.a)}} +A.JT.prototype={ +tc(a,b,c){return A.aC4(c,this.w)}, +dY(a){return!this.w.l(0,a.w)}} +A.agc.prototype={} +A.K3.prototype={ +gaDz(){var s,r,q,p,o=this.e,n=o==null?null:o.gdW(o) +$label0$0:{s=null +r=n==null +q=r +if(q){o=B.Z +break $label0$0}q=n instanceof A.eh +if(q){p=n==null?t.A0.a(n):n +o=p +break $label0$0}null.toString +o=null.q(0,o.gdW(o)) +break $label0$0}return o}, +a0(){return new A.RQ(new A.bG(null,t.A))}} +A.RQ.prototype={ +aBB(){this.e=null}, +fn(){var s=this.e +if(s!=null)s.m() +this.oK()}, +asC(a){var s,r,q,p=this,o=p.e,n=p.a +if(o==null){o=n.e +n=A.bx1(a) +s=A.Go(a,null) +r=A.aFq(a,t.zd) +r.toString +q=$.aw.aR$.x.h(0,p.d).gag() +q.toString +q=new A.K4(s,r,t.x.a(q),p.gaBA()) +q.sbw(o) +q.saeK(n) +r.Jx(q) +p.e=q}else{o.sbw(n.e) +o=p.e +o.toString +o.saeK(A.bx1(a)) +o=p.e +o.toString +o.sr2(A.Go(a,null))}o=p.a.c +return o}, +F(a){var s=this,r=s.a.gaDz() +s.a.toString +return new A.be(r,new A.fi(s.gasB(),null),s.d)}} +A.K4.prototype={ +sbw(a){var s,r=this +if(J.e(a,r.f))return +r.f=a +s=r.e +if(s!=null)s.m() +s=r.f +r.e=s==null?null:s.y4(r.gazz()) +r.a.aU()}, +saeK(a){if(a===this.r)return +this.r=a +this.a.aU()}, +sr2(a){if(a.l(0,this.w))return +this.w=a +this.a.aU()}, +azA(){this.a.aU()}, +m(){var s=this.e +if(s!=null)s.m() +this.oH()}, +MR(a,b){var s,r,q=this +if(q.e==null||!q.r)return +s=A.a3T(b) +r=q.w.Vj(q.b.gv(0)) +if(s==null){a.en(0) +a.al(0,b.a) +q.e.jB(a,B.j,r) +a.el(0)}else q.e.jB(a,s,r)}} +A.tI.prototype={ +azd(a){var s +if(a===B.a9&&!this.CW){s=this.ch +s===$&&A.b() +s.m() +this.oH()}}, +m(){var s=this.ch +s===$&&A.b() +s.m() +this.oH()}, +a6k(a,b,c){var s,r,q=this +a.en(0) +s=q.f +if(s!=null)a.mZ(0,s.fE(b,q.ax)) +switch(q.z.a){case 1:s=b.gbq() +r=q.Q +a.k_(s,r==null?35:r,c) +break +case 0:s=q.as +if(!s.l(0,B.aH))a.dk(A.a6q(b,s.c,s.d,s.a,s.b),c) +else a.ey(b,c) +break}a.el(0)}, +MR(a,b){var s,r,q,p=this,o=$.ap().br(),n=p.e,m=p.ay +m===$&&A.b() +s=m.a +o.saG(0,A.Y(m.b.al(0,s.gk(s)),n.gk(n)>>>16&255,n.gk(n)>>>8&255,n.gk(n)&255)) +r=A.a3T(b) +n=p.at +if(n!=null)q=n.$0() +else{n=p.b.gv(0) +q=new A.I(0,0,0+n.a,0+n.b)}if(r==null){a.en(0) +a.al(0,b.a) +p.a6k(a,q,o) +a.el(0)}else p.a6k(a,q.ep(r),o)}} +A.bhO.prototype={ +$0(){var s=this.a.gv(0) +return new A.I(0,0,0+s.a,0+s.b)}, +$S:217} +A.b8j.prototype={ +ac1(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.aH:b +if(a1==null){if(a2!=null){s=a2.$0() +r=new A.R(s.c-s.a,s.d-s.b)}else r=a3.gv(0) +s=Math.max(r.JK(0,B.j).ges(),new A.z(0+r.a,0).ai(0,new A.z(0,0+r.b)).ges())/2}else s=a1 +h=new A.K6(a0,h,s,A.bT1(a3,d,a2),a4,c,f,e,a3,g) +q=e.E +p=A.c2(i,B.lg,i,i,q) +o=e.gf8() +p.ct() +n=p.dR$ +n.b=!0 +n.a.push(o) +p.cd(0) +h.cx=p +n=c.gk(c) +m=t.m +l=t.gD +h.CW=new A.bf(m.a(p),new A.tK(0,n>>>24&255),l.i("bf")) +n=A.c2(i,B.bK,i,i,q) +n.ct() +p=n.dR$ +p.b=!0 +p.a.push(o) +n.cd(0) +h.ch=n +p=t.Y +k=$.bBt() +j=p.i("fO") +h.ay=new A.bf(m.a(n),new A.fO(k,new A.b0(s*0.3,s+5,p),j),j.i("bf")) +q=A.c2(i,B.wH,i,i,q) +q.ct() +j=q.dR$ +j.b=!0 +j.a.push(o) +q.ct() +o=q.ec$ +o.b=!0 +o.a.push(h.gaDA()) +h.db=q +o=c.gk(c) +j=$.bBu() +l=l.i("fO") +h.cy=new A.bf(m.a(q),new A.fO(j,new A.tK(o>>>24&255,0),l),l.i("bf")) +e.Jx(h) +return h}} +A.K6.prototype={ +xW(a){var s=this.ch +s===$&&A.b() +s.e=B.ZV +s.cd(0) +s=this.cx +s===$&&A.b() +s.cd(0) +s=this.db +s===$&&A.b() +s.z=B.b5 +s.jP(1,B.X,B.wH)}, +S(a){var s,r=this,q=r.cx +q===$&&A.b() +q.f_(0) +q=r.cx.x +q===$&&A.b() +s=1-q +q=r.db +q===$&&A.b() +q.sk(0,s) +if(s<1){q=r.db +q.z=B.b5 +q.jP(1,B.X,B.lg)}}, +aDB(a){if(a===B.am)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.oH()}, +MR(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.al(0,s.gk(s))}else{l=m.cy +l===$&&A.b() +s=l.a +r=l.b.al(0,s.gk(s))}q=$.ap().br() +l=m.e +q.saG(0,A.Y(r,l.gk(l)>>>16&255,l.gk(l)>>>8&255,l.gk(l)&255)) +l=m.at +if(l!=null)p=l.$0() +else p=null +s=p!=null?p.gbq():m.b.gv(0).nL(B.j) +o=m.ch +o===$&&A.b() +o=o.x +o===$&&A.b() +o=A.oA(m.z,s,B.bk.al(0,o)) +o.toString +s=m.ay +s===$&&A.b() +n=s.a +n=s.b.al(0,n.gk(n)) +m.afy(m.Q,a,o,l,m.f,q,n,m.ax,b)}} +A.bhN.prototype={ +$0(){var s=this.a.gv(0) +return new A.I(0,0,0+s.a,0+s.b)}, +$S:217} +A.b8k.prototype={ +ac1(a,b,c,d,e,f,g,h,i,j,k,a0){var s,r,q,p,o,n=null,m=b==null?B.aH:b,l=i==null?A.bT5(k,d,j,h):i +m=new A.K7(h,m,l,A.bT0(k,d,j),!d,a0,c,f,e,k,g) +s=e.E +r=A.c2(n,B.bK,n,n,s) +q=e.gf8() +r.ct() +p=r.dR$ +p.b=!0 +p.a.push(q) +r.cd(0) +m.CW=r +p=t.Y +o=t.m +m.ch=new A.bf(o.a(r),new A.b0(0,l,p),p.i("bf")) +s=A.c2(n,B.T,n,n,s) +s.ct() +p=s.dR$ +p.b=!0 +p.a.push(q) +s.ct() +q=s.ec$ +q.b=!0 +q.a.push(m.gaDC()) +m.cy=s +q=c.gk(c) +m.cx=new A.bf(o.a(s),new A.tK(q>>>24&255,0),t.gD.i("bf")) +e.Jx(m) +return m}} +A.K7.prototype={ +xW(a){var s=B.d.dv(this.as/1),r=this.CW +r===$&&A.b() +r.e=A.dA(0,s,0) +r.cd(0) +this.cy.cd(0)}, +S(a){var s=this.cy +if(s!=null)s.cd(0)}, +aDD(a){if(a===B.am)this.m()}, +m(){var s=this,r=s.CW +r===$&&A.b() +r.m() +s.cy.m() +s.cy=null +s.oH()}, +MR(a,b){var s,r,q=this,p=$.ap().br(),o=q.e,n=q.cx +n===$&&A.b() +s=n.a +p.saG(0,A.Y(n.b.al(0,s.gk(s)),o.gk(o)>>>16&255,o.gk(o)>>>8&255,o.gk(o)&255)) +r=q.z +if(q.ax){o=q.b.gv(0).nL(B.j) +n=q.CW +n===$&&A.b() +n=n.x +n===$&&A.b() +r=A.oA(r,o,n)}r.toString +o=q.ch +o===$&&A.b() +n=o.a +n=o.b.al(0,n.gk(n)) +q.afy(q.Q,a,r,q.at,q.f,p,n,q.ay,b)}} +A.tL.prototype={ +xW(a){}, +S(a){}, +saG(a,b){if(b.l(0,this.e))return +this.e=b +this.a.aU()}, +sVs(a){if(J.e(a,this.f))return +this.f=a +this.a.aU()}, +afy(a,b,c,d,e,f,g,h,i){var s,r=A.a3T(i) +b.en(0) +if(r==null)b.al(0,i.a) +else b.bs(0,r.a,r.b) +if(d!=null){s=d.$0() +if(e!=null)b.mZ(0,e.fE(s,h)) +else if(!a.l(0,B.aH))b.uv(A.a6q(s,a.c,a.d,a.a,a.b)) +else b.nN(s)}b.k_(c,g,f) +b.el(0)}} +A.BI.prototype={} +A.Sw.prototype={ +dY(a){return this.f!==a.f}} +A.K5.prototype={ +ajC(a){return null}, +F(a){var s=this,r=a.au(t.sZ),q=r==null?null:r.f +return new A.RP(s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.Q,s.z,s.as,s.at,s.ax,s.ay,s.ch,s.CW,s.cx,s.cy,s.db,s.dx,s.dy,s.fr,s.fx,s.fy,s.go,s.id,!1,s.k2,s.k3,s.k4,s.ok,q,s.gajB(),s.p1,s.p2,null)}} +A.RP.prototype={ +a0(){return new A.RO(A.w(t.R9,t.Pr),new A.bV(A.a([],t.IR),t.yw),null)}} +A.vo.prototype={ +D(){return"_HighlightType."+this.b}} +A.RO.prototype={ +gaV5(){var s=this.r.gaJ(0) +return!new A.bh(s,new A.b8h(),A.y(s).i("bh")).ga_(0)}, +Xb(a,b){var s,r=this.y,q=r.a,p=q.length +if(b){r.b=!0 +q.push(a)}else r.C(0,a) +s=q.length!==0 +if(s!==(p!==0)){r=this.a.p1 +if(r!=null)r.Xb(this,s)}}, +aNE(a){var s=this,r=s.z +if(r!=null)r.S(0) +s.z=null +r=s.c +r.toString +s.TE(r) +r=s.e +if(r!=null)r.xW(0) +s.e=null +r=s.a +if(r.d!=null){if(r.id){r=s.c +r.toString +A.ayt(r)}r=s.a.d +if(r!=null)r.$0()}s.z=A.bZ(B.bc,new A.b8d(s))}, +ZN(a){var s=this.c +s.toString +this.TE(s) +this.adU()}, +alh(){return this.ZN(null)}, +alf(){var s=this.c +s.toString +this.TE(s) +this.adQ()}, +Wy(){this.J(new A.b8g())}, +gh_(){var s=this.a.p4 +if(s==null){s=this.x +s.toString}return s}, +DK(){var s,r,q=this +if(q.a.p4==null)q.x=A.aX2(null) +s=q.gh_() +r=q.a +r.toString +s.fc(0,B.L,!(q.lf(r)||q.lh(r))) +q.gh_().a4(0,q.gv7())}, +aj(){this.aq4() +this.DK() +$.aw.aR$.d.a.f.q(0,this.gadM())}, +b1(a){var s,r,q,p,o=this +o.bb(a) +s=a.p4 +if(o.a.p4!=s){if(s!=null)s.K(0,o.gv7()) +if(o.a.p4!=null){s=o.x +if(s!=null){s.U$=$.aW() +s.M$=0}o.x=null}o.DK()}s=o.a +if(s.cx!=a.cx||s.CW!==a.CW||!J.e(s.cy,a.cy)){s=o.r +r=s.h(0,B.ij) +if(r!=null){q=r.ch +q===$&&A.b() +q.m() +r.oH() +o.Ys(B.ij,!1,o.f)}p=s.h(0,B.PV) +if(p!=null){s=p.ch +s===$&&A.b() +s.m() +p.oH()}}if(!J.e(o.a.db,a.db))o.aMG() +s=o.a +s.toString +s=o.lf(s)||o.lh(s) +if(s!==(o.lf(a)||o.lh(a))){s=o.gh_() +q=o.a +q.toString +s.fc(0,B.L,!(o.lf(q)||o.lh(q))) +s=o.a +s.toString +if(!(o.lf(s)||o.lh(s))){o.gh_().fc(0,B.a4,!1) +r=o.r.h(0,B.ij) +if(r!=null){s=r.ch +s===$&&A.b() +s.m() +r.oH()}}o.Ys(B.ij,!1,o.f)}o.Yq()}, +m(){var s,r=this +$.aw.aR$.d.a.f.C(0,r.gadM()) +r.gh_().K(0,r.gv7()) +s=r.x +if(s!=null){s.U$=$.aW() +s.M$=0}s=r.z +if(s!=null)s.S(0) +r.z=null +r.ar()}, +gtb(){if(!this.gaV5()){var s=this.d +s=s!=null&&s.a!==0}else s=!0 +return s}, +aiY(a){switch(a.a){case 0:return B.T +case 1:case 2:this.a.toString +return B.hd}}, +Ys(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.r,e=f.h(0,a),d=a.a +switch(d){case 0:h.gh_().fc(0,B.a4,c) +break +case 1:if(b)h.gh_().fc(0,B.N,c) +break +case 2:break}if(a===B.fM){s=h.a.p1 +if(s!=null)s.Xb(h,c)}s=e==null +if(c===(!s&&e.CW))return +if(c)if(s){s=h.a.fx +r=s==null?g:s.Z(h.gh_().a) +if(r==null){switch(d){case 0:s=h.a.fr +if(s==null){s=h.c +s.toString +s=A.q(s).cy}break +case 2:s=h.a.dx +if(s==null){s=h.c +s.toString +s=A.q(s).cx}break +case 1:s=h.a.dy +if(s==null){s=h.c +s.toString +s=A.q(s).dx}break +default:s=g}r=s}s=h.c.gag() +s.toString +t.x.a(s) +q=h.c +q.toString +q=A.aFq(q,t.zd) +q.toString +p=h.a +p.toString +p=h.lf(p)||h.lh(p)?r:A.Y(0,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +o=h.a +n=o.CW +m=o.cx +l=o.cy +k=o.db +o=o.p2.$1(s) +j=h.c.au(t.I) +j.toString +i=h.aiY(a) +if(l==null)l=B.aH +s=new A.tI(n,m,l,o,j.w,p,k,q,s,new A.b8i(h,a)) +i=A.c2(g,i,g,g,q.E) +i.ct() +k=i.dR$ +k.b=!0 +k.a.push(q.gf8()) +i.ct() +k=i.ec$ +k.b=!0 +k.a.push(s.gazc()) +i.cd(0) +s.ch=i +k=s.e +k=k.gk(k) +s.ay=new A.bf(t.m.a(i),new A.tK(0,k>>>24&255),t.gD.i("bf")) +q.Jx(s) +f.n(0,a,s) +h.t6()}else{e.CW=!0 +f=e.ch +f===$&&A.b() +f.cd(0)}else{e.CW=!1 +f=e.ch +f===$&&A.b() +f.dq(0)}switch(d){case 0:f=h.a.at +if(f!=null)f.$1(c) +break +case 1:if(b){f=h.a.ax +if(f!=null)f.$1(c)}break +case 2:break}}, +q6(a,b){return this.Ys(a,!0,b)}, +aMG(){var s,r,q,p=this +for(s=p.r.gaJ(0),r=A.y(s),s=new A.bD(J.ay(s.a),s.b,r.i("bD<1,2>")),r=r.y[1];s.u();){q=s.a +if(q==null)q=r.a(q) +if(q!=null)q.sVs(p.a.db)}s=p.e +if(s!=null)s.sVs(p.a.db) +s=p.d +if(s!=null&&s.a!==0)for(r=A.y(s),s=new A.j2(s,s.tJ(),r.i("j2<1>")),r=r.c;s.u();){q=s.d +if(q==null)q=r.a(q) +q.sVs(p.a.db)}}, +avb(a){var s,r,q,p,o,n,m,l,k,j,i=this,h={},g=i.c +g.toString +g=A.aFq(g,t.zd) +g.toString +s=i.c.gag() +s.toString +t.x.a(s) +r=s.he(a) +q=i.a.fx +q=q==null?null:q.Z(i.gh_().a) +p=q==null?i.a.fy:q +if(p==null){q=i.c +q.toString +p=A.q(q).k2}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.q(q).y}l=i.a +k=l.ch +l=l.cx +j=i.c.au(t.I) +j.toString +return h.a=q.ac1(0,n,p,k,g,m,new A.b8c(h,i),r,l,o,s,j.w)}, +aTU(a){if(this.c==null)return +this.J(new A.b8f(this))}, +gaKp(){var s,r=this,q=r.c +q.toString +q=A.de(q,B.ik) +s=q==null?null:q.ch +$label0$0:{if(B.hR===s||s==null){q=r.a +q.toString +q=(r.lf(q)||r.lh(q))&&r.Q +break $label0$0}if(B.n4===s){q=r.Q +break $label0$0}q=null}return q}, +Yq(){var s=$.aw.aR$.d.a.b +switch((s==null?A.vn():s).a){case 0:s=!1 +break +case 1:s=this.gaKp() +break +default:s=null}this.q6(B.PV,s)}, +aTW(a){var s,r=this +r.Q=a +r.gh_().fc(0,B.R,a) +r.Yq() +s=r.a.k2 +if(s!=null)s.$1(a)}, +adF(a){if(this.y.a.length!==0)return +this.aLb(a)}, +aUK(a){this.adF(a) +this.a.toString}, +aUM(a){this.a.toString}, +aUB(a){this.adF(a) +this.a.toString}, +aUD(a){this.a.toString}, +a8d(a,b){var s,r,q,p,o=this +if(a!=null){s=a.gag() +s.toString +t.x.a(s) +r=s.gv(0) +r=new A.I(0,0,0+r.a,0+r.b).gbq() +q=A.ct(s.bB(0,null),r)}else q=b.a +o.gh_().fc(0,B.a4,!0) +p=o.avb(q) +s=o.d;(s==null?o.d=A.dD(t.nQ):s).q(0,p) +s=o.e +if(s!=null)s.S(0) +o.e=p +o.t6() +o.q6(B.fM,!0)}, +aLb(a){return this.a8d(null,a)}, +TE(a){return this.a8d(a,null)}, +adU(){var s=this,r=s.e +if(r!=null)r.xW(0) +s.e=null +s.q6(B.fM,!1) +r=s.a +if(r.d!=null){if(r.id){r=s.c +r.toString +A.ayt(r)}r=s.a.d +if(r!=null)r.$0()}}, +aUI(){var s=this,r=s.e +if(r!=null)r.S(0) +s.e=null +s.a.toString +s.q6(B.fM,!1)}, +adQ(){var s=this,r=s.e +if(r!=null)r.xW(0) +s.e=null +r=s.a +if(r.x!=null){if(r.id){r=s.c +r.toString +A.bm1(r)}s.a.x.$0()}}, +aUx(){var s=this,r=s.e +if(r!=null)r.xW(0) +s.e=null +s.q6(B.fM,!1) +s.a.toString}, +aUz(){var s=this,r=s.e +if(r!=null)r.S(0) +s.e=null +s.a.toString +s.q6(B.fM,!1)}, +fn(){var s,r,q,p,o,n,m,l=this,k=l.d +if(k!=null){l.d=null +for(s=A.y(k),k=new A.j2(k,k.tJ(),s.i("j2<1>")),s=s.c;k.u();){r=k.d;(r==null?s.a(r):r).m()}l.e=null}for(k=l.r,s=A.js(k,k.r);s.u();){r=s.d +q=k.h(0,r) +if(q!=null){p=q.ch +p===$&&A.b() +p.r.m() +p.r=null +o=p.ec$ +o.b=!1 +B.b.V(o.a) +n=o.c +if(n===$){m=A.dD(o.$ti.c) +o.c!==$&&A.aH() +o.c=m +n=m}if(n.a>0){n.b=n.c=n.d=n.e=null +n.a=0}o=p.dR$ +o.b=!1 +B.b.V(o.a) +n=o.c +if(n===$){m=A.dD(o.$ti.c) +o.c!==$&&A.aH() +o.c=m +n=m}if(n.a>0){n.b=n.c=n.d=n.e=null +n.a=0}p.Gm() +q.oH()}k.n(0,r,null)}k=l.a.p1 +if(k!=null)k.Xb(l,!1) +l.aq3()}, +lf(a){var s=!0 +if(a.d==null)s=a.x!=null +return s}, +lh(a){return!1}, +aU8(a){var s=this,r=s.f=!0,q=s.a +q.toString +if(!s.lf(q)?s.lh(q):r)s.q6(B.ij,s.f)}, +aUa(a){this.f=!1 +this.q6(B.ij,!1)}, +gatH(){var s,r=this,q=r.c +q.toString +q=A.de(q,B.ik) +s=q==null?null:q.ch +$label0$0:{if(B.hR===s||s==null){q=r.a +q.toString +q=(r.lf(q)||r.lh(q))&&r.a.ok +break $label0$0}if(B.n4===s){q=!0 +break $label0$0}q=null}return q}, +F(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.Ad(a1) +s=new A.b8e(a,a1) +for(r=a.r,q=A.js(r,r.r);q.u();){p=q.d +o=r.h(0,p) +if(o!=null)o.saG(0,s.$1(p))}r=a.e +if(r!=null){q=a.a.fx +q=q==null?a0:q.Z(a.gh_().a) +if(q==null)q=a.a.fy +r.saG(0,q==null?A.q(a1).k2:q)}r=a.a.ay +if(r==null)r=B.eD +n=A.dH(r,a.gh_().a,t.Pb) +m=a.w +if(m===$){r=a.gaND() +q=t.ot +p=t.wS +l=A.C([B.nL,new A.dv(r,new A.bV(A.a([],q),p),t.wY),B.tF,new A.dv(r,new A.bV(A.a([],q),p),t.nz)],t.u,t.od) +a.w!==$&&A.aH() +a.w=l +m=l}r=a.a.k4 +q=a.gatH() +p=a.a +o=p.k3 +k=p.d +k=k==null?a0:a.galg() +j=p.x +j=j==null?a0:a.gale() +p=a.lf(p)?a.gaUJ():a0 +i=a.a +i.toString +i=a.lf(i)?a.gaUL():a0 +h=a.a +h.toString +h=a.lf(h)?a.gaUG():a0 +g=a.a +g.toString +g=a.lf(g)?a.gaUH():a0 +f=a.a +e=f.x!=null?a.gaU4():a0 +f=a.lh(f)?a.gaUA():a0 +d=a.a +d.toString +d=a.lh(d)?a.gaUC():a0 +c=a.a +c.toString +c=a.lh(c)?a.gaUw():a0 +b=a.a +b.toString +b=a.lh(b)?a.gaUy():a0 +i=A.fn(B.aU,a.a.c,B.S,!0,a0,a0,a0,a0,a0,a0,a0,e,a0,a0,a0,a0,c,b,f,d,h,g,p,i,a0,a0,a0,!1,B.aV) +return new A.Sw(a,A.rY(m,A.tA(o,q,A.ov(A.bGZ(new A.ck(A.cJ(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,a0,a0,j,a0,a0,a0,a0,a0,a0,a0,a0,a0,k,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0,a0),!1,!1,!1,!1,i,a0),n),n,a0,a.gaU7(),a.gaU9(),a0),a0,a0,a0,r,!0,a0,a.gaTV(),a0,a0,a0,a0)),a0)}, +$ibox:1} +A.b8h.prototype={ +$1(a){return a!=null}, +$S:347} +A.b8d.prototype={ +$0(){this.a.q6(B.fM,!1)}, +$S:0} +A.b8g.prototype={ +$0(){}, +$S:0} +A.b8i.prototype={ +$0(){var s=this.a +s.r.n(0,this.b,null) +s.t6()}, +$S:0} +A.b8c.prototype={ +$0(){var s,r=this.b,q=r.d +if(q!=null){s=this.a +q.C(0,s.a) +if(r.e==s.a)r.e=null +r.t6()}}, +$S:0} +A.b8f.prototype={ +$0(){this.a.Yq()}, +$S:0} +A.b8e.prototype={ +$1(a){var s,r,q=this,p=null,o=A.q(q.b) +switch(a.a){case 0:s=q.a +r=s.a.fx +r=r==null?p:r.Z(B.am6) +s=r==null?s.a.fr:r +if(s==null)s=o.cy +break +case 2:s=q.a +r=s.a.fx +r=r==null?p:r.Z(B.am7) +s=r==null?s.a.dx:r +if(s==null)s=o.cx +break +case 1:s=q.a +r=s.a.fx +r=r==null?p:r.Z(B.am5) +s=r==null?s.a.dy:r +if(s==null)s=o.dx +break +default:s=p}return s}, +$S:348} +A.a1b.prototype={} +A.V0.prototype={ +aj(){this.aw() +if(this.gtb())this.tR()}, +fn(){var s=this.i6$ +if(s!=null){s.T() +s.dN() +this.i6$=null}this.oK()}} +A.kN.prototype={} +A.ahv.prototype={ +Kd(a){return B.eE}, +gvh(){return!1}, +gm7(){return B.Z}, +bK(a,b){return B.eE}, +l1(a,b){var s=$.ap().cR() +s.jT(a) +return s}, +fE(a,b){var s=$.ap().cR() +s.jT(a) +return s}, +kZ(a,b,c,d){a.ey(b,c)}, +gjC(){return!0}, +z9(a,b,c,d,e,f){}, +hW(a,b,c){return this.z9(a,b,0,0,null,c)}} +A.jK.prototype={ +gvh(){return!1}, +Kd(a){var s=a==null?this.a:a +return new A.jK(this.b,s)}, +gm7(){return new A.al(0,0,0,this.a.b)}, +bK(a,b){return new A.jK(B.fS,this.a.bK(0,b))}, +l1(a,b){var s=$.ap().cR(),r=a.a,q=a.b +s.jT(new A.I(r,q,r+(a.c-r),q+Math.max(0,a.d-q-this.a.b))) +return s}, +fE(a,b){var s=$.ap().cR() +s.hk(this.b.e9(a)) +return s}, +kZ(a,b,c,d){a.dk(this.b.e9(b),c)}, +gjC(){return!0}, +f6(a,b){var s,r +if(a instanceof A.jK){s=A.bF(a.a,this.a,b) +r=A.o0(a.b,this.b,b) +r.toString +return new A.jK(r,s)}return this.Gt(a,b)}, +f7(a,b){var s,r +if(a instanceof A.jK){s=A.bF(this.a,a.a,b) +r=A.o0(this.b,a.b,b) +r.toString +return new A.jK(r,s)}return this.Gu(a,b)}, +z9(a,b,c,d,e,f){var s,r,q,p,o,n=this.a,m=n.c +if(m===B.bo)return +s=this.b +r=s.c +q=!r.l(0,B.B)||!s.d.l(0,B.B) +p=b.d +if(q){q=(p-b.b)/2 +r=r.abh(0,new A.bg(q,q)) +q=s.d.abh(0,new A.bg(q,q)) +s=n.a +A.bkW(a,b,new A.cY(B.B,B.B,r,q),new A.br(s,n.b,m,-1),s,B.x,B.x,B.E,f,B.x)}else{o=new A.z(0,n.b/2) +a.k0(new A.z(b.a,p).ai(0,o),new A.z(b.c,p).ai(0,o),n.kk())}}, +hW(a,b,c){return this.z9(a,b,0,0,null,c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.jK&&b.a.l(0,s.a)&&b.b.l(0,s.b)}, +gB(a){return A.a4(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.hJ.prototype={ +gvh(){return!0}, +Kd(a){var s=a==null?this.a:a +return new A.hJ(this.b,this.c,s)}, +gm7(){var s=this.a.b +return new A.al(s,s,s,s)}, +bK(a,b){var s=this.a.bK(0,b) +return new A.hJ(this.b*b,this.c.ap(0,b),s)}, +f6(a,b){var s,r +if(a instanceof A.hJ){s=A.o0(a.c,this.c,b) +s.toString +r=A.bF(a.a,this.a,b) +return new A.hJ(a.b,s,r)}return this.Gt(a,b)}, +f7(a,b){var s,r +if(a instanceof A.hJ){s=A.o0(this.c,a.c,b) +s.toString +r=A.bF(this.a,a.a,b) +return new A.hJ(a.b,s,r)}return this.Gu(a,b)}, +l1(a,b){var s=$.ap().cR() +s.hk(this.c.e9(a).eA(-this.a.b)) +return s}, +fE(a,b){var s=$.ap().cR() +s.hk(this.c.e9(a)) +return s}, +kZ(a,b,c,d){a.dk(this.c.e9(b),c)}, +gjC(){return!0}, +z9(a8,a9,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=this.a,a7=a6.kk() +a6=a6.b/2 +s=this.c.e9(a9).eA(-a6) +if(b2==null||b0<=0||b1===0)a8.dk(s,a7) +else{r=this.b +q=A.ak(0,b0+r*2,b1) +q.toString +switch(b3.a){case 0:r=b2+r-q +break +case 1:r=b2-r +break +default:r=null}r=Math.max(0,r) +p=s.w8() +o=p.a +n=p.b +m=p.e +l=p.f +k=p.c +j=p.r +i=j*2 +h=k-i +g=p.w +f=new A.I(h,n,h+i,n+g*2) +i=p.x +h=i*2 +e=k-h +d=p.d +c=p.y +b=c*2 +a=d-b +a0=p.Q +a1=a0*2 +a2=d-a1 +a3=p.z +a4=$.ap().cR() +if(!new A.bg(m,l).l(0,B.B))a4.xB(new A.I(o,n,o+m*2,n+l*2),3.141592653589793,Math.acos(A.M(1-r/m,0,1))) +else a4.hc(0,o-a6,n) +if(r>m)a4.dg(0,o+r,n) +a6=r+q +m=k-o +if(a6#"+A.c5(this)}} +A.RS.prototype={ +fW(a){var s=A.fb(this.a,this.b,a) +s.toString +return t.U1.a(s)}} +A.ago.prototype={ +aT(a,b){var s,r,q=this,p=q.c.al(0,q.b.gk(0)),o=new A.I(0,0,0+b.a,0+b.b),n=q.w.al(0,q.x.gk(0)) +n.toString +s=A.Xz(n,q.r) +if((s.gk(s)>>>24&255)>0){n=p.fE(o,q.f) +r=$.ap().br() +r.saG(0,s) +r.sd0(0,B.cm) +a.eJ(n,r)}n=q.e +r=n.a +p.z9(a,o,n.b,q.d.gk(0),r,q.f)}, +ff(a){var s=this +return s.b!==a.b||s.x!==a.x||s.d!==a.d||s.c!==a.c||!s.e.l(0,a.e)||s.f!==a.f}, +j(a){return"#"+A.c5(this)}} +A.Q8.prototype={ +a0(){return new A.adc(null,null)}} +A.adc.prototype={ +aj(){var s,r=this,q=null +r.aw() +r.e=A.c2(q,B.ZQ,q,r.a.w?1:0,r) +s=A.c2(q,B.hb,q,q,r) +r.d=s +r.f=A.cl(B.aQ,s,new A.mO(B.aQ)) +s=r.a.c +r.r=new A.RS(s,s) +r.w=A.cl(B.X,r.e,q) +r.x=new A.fU(B.t,r.a.r)}, +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.w +r===$&&A.b() +r.m() +s.apJ()}, +b1(a){var s,r,q=this +q.bb(a) +s=a.c +if(!q.a.c.l(0,s)){q.r=new A.RS(s,q.a.c) +s=q.d +s===$&&A.b() +s.sk(0,0) +s.cd(0)}if(!q.a.r.l(0,a.r))q.x=new A.fU(B.t,q.a.r) +s=q.a.w +if(s!==a.w){r=q.e +if(s){r===$&&A.b() +r.cd(0)}else{r===$&&A.b() +r.dq(0)}}}, +F(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.au(t.I) +o.toString +n=k.a.f +m=k.x +m===$&&A.b() +l=k.w +l===$&&A.b() +return A.fB(null,new A.ago(s,j,p,q,o.w,n,m,l,new A.zp(r)),null,null,B.V)}} +A.RE.prototype={ +a0(){return new A.RF(null,null)}} +A.RF.prototype={ +gHI(){this.a.toString +return!1}, +gp_(){var s=this.a.x +return s!=null}, +aj(){var s,r=this +r.aw() +r.d=A.c2(null,B.hb,null,null,r) +if(r.gp_()){r.f=r.Au() +r.d.sk(0,1)}else if(r.gHI())r.e=r.GI() +s=r.d +s.ct() +s=s.dR$ +s.b=!0 +s.a.push(r.gS9())}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aq0()}, +Sa(){this.J(new A.b5l())}, +b1(a){var s,r,q=this +q.bb(a) +s=q.a.x!=null +r=s!==(a.x!=null) +if(r)if(s){q.f=q.Au() +s=q.d +s===$&&A.b() +s.cd(0)}else{s=q.d +s===$&&A.b() +s.dq(0)}}, +GI(){var s,r,q,p,o=null,n=t.Y,m=this.d +m===$&&A.b() +s=this.a +r=s.e +r.toString +q=s.f +p=s.c +p=A.X(r,s.r,B.al,o,o,q,p,o) +return new A.ck(A.cJ(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,o,o),!0,!1,!1,!1,new A.eB(new A.bf(m,new A.b0(1,0,n),n.i("bf")),!1,p,o),o)}, +Au(){var s,r,q,p,o,n=null,m=this.d +m===$&&A.b() +s=new A.b0(B.aj8,B.j,t.Ni).al(0,m.gk(0)) +r=this.a +q=r.x +q.toString +p=r.y +o=r.c +o=A.X(q,r.z,B.al,n,n,p,o,n) +s=A.btc(o,!0,s) +return new A.ck(A.cJ(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,n,n),!0,!1,!1,!1,new A.eB(m,!1,s,n),n)}, +F(a){var s=this,r=null,q=s.d +q===$&&A.b() +if(q.gbi(0)===B.a9){s.f=null +if(s.gHI())return s.e=s.GI() +else{s.e=null +return B.ax}}if(s.d.gbi(0)===B.am){s.e=null +if(s.gp_())return s.f=s.Au() +else{s.f=null +return B.ax}}if(s.e==null&&s.gp_())return s.Au() +if(s.f==null&&s.gHI())return s.GI() +if(s.gp_()){q=t.Y +return A.cq(B.a2,A.a([new A.eB(new A.bf(s.d,new A.b0(1,0,q),q.i("bf")),!1,s.e,r),s.Au()],t.p),B.w,B.W,r)}if(s.gHI())return A.cq(B.a2,A.a([s.GI(),new A.eB(s.d,!1,s.f,r)],t.p),B.w,B.W,r) +return B.ax}} +A.b5l.prototype={ +$0(){}, +$S:0} +A.Ju.prototype={ +D(){return"FloatingLabelBehavior."+this.b}} +A.a0g.prototype={ +gB(a){return B.e.gB(-1)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.a0g}, +j(a){return A.bII(-1)}} +A.id.prototype={ +D(){return"_DecorationSlot."+this.b}} +A.aen.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.aen&&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.e(b.z,s.z)&&J.e(b.Q,s.Q)&&J.e(b.as,s.as)&&J.e(b.at,s.at)&&J.e(b.ax,s.ax)&&J.e(b.ay,s.ay)&&J.e(b.ch,s.ch)&&J.e(b.CW,s.CW)&&b.cx.tz(0,s.cx)&&J.e(b.cy,s.cy)&&b.db.tz(0,s.db)}, +gB(a){var s=this +return A.a4(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.bbN.prototype={} +A.SN.prototype={ +gfR(a){var s,r=this.fj$,q=r.h(0,B.d9),p=A.a([],t.Ik) +if(r.h(0,B.bv)!=null){s=r.h(0,B.bv) +s.toString +p.push(s)}if(r.h(0,B.bI)!=null){s=r.h(0,B.bI) +s.toString +p.push(s)}if(r.h(0,B.aS)!=null){s=r.h(0,B.aS) +s.toString +p.push(s)}if(r.h(0,B.bB)!=null){s=r.h(0,B.bB) +s.toString +p.push(s)}if(r.h(0,B.bQ)!=null){s=r.h(0,B.bQ) +s.toString +p.push(s)}if(r.h(0,B.bR)!=null){s=r.h(0,B.bR) +s.toString +p.push(s)}if(r.h(0,B.aY)!=null){s=r.h(0,B.aY) +s.toString +p.push(s)}if(r.h(0,B.bP)!=null){s=r.h(0,B.bP) +s.toString +p.push(s)}if(q!=null)p.push(q) +if(r.h(0,B.dA)!=null){s=r.h(0,B.dA) +s.toString +p.push(s)}if(r.h(0,B.e3)!=null){r=r.h(0,B.e3) +r.toString +p.push(r)}return p}, +sbw(a){if(this.A.l(0,a))return +this.A=a +this.ae()}, +scr(a){if(this.X===a)return +this.X=a +this.ae()}, +sb03(a,b){if(this.a9===b)return +this.a9=b +this.ae()}, +sb02(a){return}, +sLR(a){if(this.aQ===a)return +this.aQ=a +this.bM()}, +sW0(a){return}, +gSf(){var s=this.A.f.gvh() +return s}, +iL(a){var s,r=this.fj$ +if(r.h(0,B.bv)!=null){s=r.h(0,B.bv) +s.toString +a.$1(s)}if(r.h(0,B.bQ)!=null){s=r.h(0,B.bQ) +s.toString +a.$1(s)}if(r.h(0,B.aS)!=null){s=r.h(0,B.aS) +s.toString +a.$1(s)}if(r.h(0,B.aY)!=null){s=r.h(0,B.aY) +s.toString +a.$1(s)}if(r.h(0,B.bP)!=null)if(this.aQ){s=r.h(0,B.bP) +s.toString +a.$1(s)}else if(r.h(0,B.aY)==null){s=r.h(0,B.bP) +s.toString +a.$1(s)}if(r.h(0,B.bI)!=null){s=r.h(0,B.bI) +s.toString +a.$1(s)}if(r.h(0,B.bB)!=null){s=r.h(0,B.bB) +s.toString +a.$1(s)}if(r.h(0,B.bR)!=null){s=r.h(0,B.bR) +s.toString +a.$1(s)}if(r.h(0,B.e3)!=null){s=r.h(0,B.e3) +s.toString +a.$1(s)}s=r.h(0,B.d9) +s.toString +a.$1(s) +if(r.h(0,B.dA)!=null){r=r.h(0,B.dA) +r.toString +a.$1(r)}}, +auF(a,b,c){var s,r,q,p,o,n,m,l,k=this.fj$,j=k.h(0,B.dA) +if(j!=null){s=c.$2(j,a) +r=b.$2(j,a)}else{s=B.V +r=0}q=a.uC(new A.al(s.a,0,0,0)) +j=k.h(0,B.d9) +j.toString +p=c.$2(j,q).b +if(p===0&&s.b===0)return null +k=k.h(0,B.d9) +k.toString +k=Math.max(r,A.iE(b.$2(k,q))) +j=this.U +o=j?4:8 +n=Math.max(r,p) +m=j?4:8 +l=Math.max(s.b,p) +j=j?4:8 +return new A.aiU(k+o,n+m,l+j)}, +Sg(d3,d4,d5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0,c1,c2,c3=this,c4=d3.b,c5=d3.d,c6=new A.au(0,c4,0,c5),c7=c3.fj$,c8=c7.h(0,B.bv),c9=c8==null?0:d5.$2(c8,c6).a,d0=c6.uC(new A.al(c9,0,0,0)),d1=d0.uC(new A.al(c3.A.a.gde(),0,0,0)),d2=c3.auF(d1,d4,d5) +c8=c7.h(0,B.aS) +s=c7.h(0,B.bB) +r=c8==null +q=r?B.V:d5.$2(c8,d0) +c8=s==null +p=c8?B.V:d5.$2(s,d0) +s=c7.h(0,B.bQ) +o=c7.h(0,B.bR) +n=s==null +m=n?B.V:d5.$2(s,d1) +l=o==null +k=l?B.V:d5.$2(o,d1) +j=m.a +r=r?c3.A.a.a:q.a +i=k.a +c8=c8?c3.A.a.c:p.a +h=Math.max(0,c4-new A.eA(c9+j+r,0,i+c8,0).gde()) +c8=c7.h(0,B.aY) +if(c8!=null){r=c3.A.f.gvh() +g=p.a +if(r){r=A.ak(g,0,c3.A.d) +r.toString +g=r}f=Math.max(0,c4-(c9+c3.A.a.gde()+q.a+g)) +r=A.ak(1,1.3333333333333333,c3.A.d) +r.toString +e=c6.abN(f*r) +d5.$2(c8,e) +r=c3.A +d=r.c +c=r.f.gvh()?Math.max(d-d4.$2(c8,e),0):d}else c=0 +c8=d2==null +b=c8?null:d2.b +if(b==null)b=0 +r=c3.A.a +j=r.gc9(0) +r=r.gci(0) +i=c3.A.y +a=c6.uC(new A.al(0,j+r+c+b+new A.z(i.a,i.b).ap(0,4).b,0,0)).EE(h) +i=c7.h(0,B.bI) +c7=c7.h(0,B.bP) +r=i==null +a0=r?B.V:d5.$2(i,a) +j=c7==null +a1=j?B.V:d5.$2(c7,c6.EE(h)) +a2=r?0:d4.$2(i,a) +a3=j?0:d4.$2(c7,c6.EE(h)) +a4=Math.max(a1.b,a0.b) +a5=Math.max(a2,a3) +a6=n?0:d4.$2(s,d1) +a7=l?0:d4.$2(o,d1) +a8=Math.max(0,Math.max(a6,a7)-a5) +a9=Math.max(0,Math.max(m.b-a6,k.b-a7)-(a4-a5)) +b0=Math.max(q.b,p.b) +c7=c3.A +s=c7.a +c7=c7.y +b1=Math.max(b0,c+s.b+a8+a4+a9+s.d+new A.z(c7.a,c7.b).ap(0,4).b) +c7=c3.A.x +c7.toString +b2=c7?a4:48 +b3=Math.max(0,c5-b) +b4=Math.min(Math.max(b1,b2),b3) +b5=b2>b1?(b2-b1)/2:0 +b6=Math.max(0,b1-b3) +c5=c3.aC +c5=c3.gSf()?B.P3:B.P4 +b7=(c5.a+1)/2 +b8=a8-b6*(1-b7) +c5=c3.A +c7=c5.y +b9=c5.a.b+c+a5+b8+b5+new A.z(c7.a,c7.b).ap(0,4).b/2 +c7=c3.A.a +c5=c7.gc9(0) +c7=c7.gci(0) +s=c3.A.y +c0=b4-(c5+c7)-c-new A.z(s.a,s.b).ap(0,4).b-(a8+a4+a9) +if(c3.gSf()){c1=a5+b8/2+(b4-a4)/2 +c5=c3.aC +c5=c3.gSf()?B.P3:B.P4 +c5=c5.a +c2=c1+(c5<=0?Math.max(c1-b9,0):Math.max(b9+c0-c1,0))*c5}else c2=b9+c0*b7 +c5=c8?null:d2.c +return new A.bbN(a,c2,b4,d2,new A.R(c4,b4+(c5==null?0:c5)))}, +bU(a){var s=this.fj$,r=A.ml(s.h(0,B.bv),a),q=s.h(0,B.aS)!=null?0:this.A.a.a,p=A.ml(s.h(0,B.aS),a),o=A.ml(s.h(0,B.bQ),a),n=Math.max(A.ml(s.h(0,B.bI),a),A.ml(s.h(0,B.bP),a)),m=A.ml(s.h(0,B.bR),a),l=A.ml(s.h(0,B.bB),a) +s=s.h(0,B.bB)!=null?0:this.A.a.c +return r+q+p+o+n+m+l+s}, +bQ(a){var s=this.fj$,r=A.FE(s.h(0,B.bv),a),q=s.h(0,B.aS)!=null?0:this.A.a.a,p=A.FE(s.h(0,B.aS),a),o=A.FE(s.h(0,B.bQ),a),n=Math.max(A.FE(s.h(0,B.bI),a),A.FE(s.h(0,B.bP),a)),m=A.FE(s.h(0,B.bR),a),l=A.FE(s.h(0,B.bB),a) +s=s.h(0,B.bB)!=null?0:this.A.a.c +return r+q+p+o+n+m+l+s}, +aE4(a,b,c){var s,r,q,p,o +for(s=0,r=0;r<2;++r){q=c[r] +if(q==null)continue +p=q.gcE() +o=B.bi.ha(q.fx,b,p) +p=o +if(p==null)p=0 +s=Math.max(p,s)}return s}, +bT(a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=b.fj$,a0=A.FF(a.h(0,B.bv),a1) +a1=Math.max(a1-A.ml(a.h(0,B.bv),a0),0) +s=A.FF(a.h(0,B.aS),a1) +r=A.ml(a.h(0,B.aS),s) +q=A.FF(a.h(0,B.bB),a1) +p=A.ml(a.h(0,B.bB),q) +a1=Math.max(a1-b.A.a.gde(),0) +o=A.FF(a.h(0,B.dA),a1) +n=Math.max(a1-A.ml(a.h(0,B.dA),o),0) +m=a.h(0,B.d9) +m.toString +l=Math.max(o,A.FF(m,n)) +if(l>0)l+=b.U?4:8 +k=A.FF(a.h(0,B.bQ),a1) +j=A.ml(a.h(0,B.bQ),k) +i=A.FF(a.h(0,B.bR),a1) +m=t.n +h=B.b.lI(A.a([b.aE4(0,Math.max(a1-j-A.ml(a.h(0,B.bR),i)-r-p,0),A.a([a.h(0,B.bI),a.h(0,B.bP)],t.Rs)),k,i],m),B.kD) +g=b.A +a=a.h(0,B.aY)==null?0:b.A.c +f=b.A +e=f.y +d=B.b.lI(A.a([a0,g.a.b+a+h+f.a.d+new A.z(e.a,e.b).ap(0,4).b,s,q],m),B.kD) +a=b.A.x +a.toString +c=a?0:48 +return Math.max(d,c)+l}, +bP(a){return this.aM(B.bi,a,this.gcE())}, +iw(a){var s,r,q=this.fj$.h(0,B.bI) +if(q==null)return 0 +s=q.b +s.toString +s=t.r.a(s).a +r=q.my(a) +q=r==null?q.gv(0).b:r +return s.b+q}, +fH(a,b){var s,r,q,p,o=this.fj$.h(0,B.bI) +if(o==null)return 0 +s=this.Sg(a,A.bA_(),A.jb()) +switch(b.a){case 0:o=0 +break +case 1:r=s.a +q=o.ii(r,B.ay) +if(q==null)q=o.aM(B.af,r,o.gdD()).b +p=o.ii(r,B.H) +o=q-(p==null?o.aM(B.af,r,o.gdD()).b:p) +break +default:o=null}return o+s.b}, +ds(a){return a.bD(this.Sg(a,A.bA_(),A.jb()).e)}, +ck(){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.k.a(A.G.prototype.gah.call(a1)) +a1.ac=null +s=a1.Sg(a3,A.bW9(),A.rR()) +r=s.e +a1.id=a3.bD(r) +q=r.a +r=a1.fj$ +p=r.h(0,B.e3) +if(p!=null){p.df(A.o1(s.c,q-A.jQ(r.h(0,B.bv)).a),!0) +switch(a1.X.a){case 0:o=0 +break +case 1:o=A.jQ(r.h(0,B.bv)).a +break +default:o=a2}n=p.b +n.toString +t.r.a(n).a=new A.z(o,0)}m=s.c +l=new A.bbR(m) +if(r.h(0,B.bv)!=null){switch(a1.X.a){case 0:o=q-r.h(0,B.bv).gv(0).a +break +case 1:o=0 +break +default:o=a2}n=r.h(0,B.bv) +n.toString +l.$2(n,o)}o=s.d +o=o==null?a2:o.a +k=(o==null?0:o)+m +o=r.h(0,B.dA) +n=r.h(0,B.d9) +n.toString +n=n.qa(B.H) +n.toString +j=o==null +if(j)i=a2 +else{h=o.qa(B.H) +h.toString +i=h}if(i==null)i=0 +switch(a1.X.a){case 1:g=a1.A.a.a+A.jQ(r.h(0,B.bv)).a +f=q-a1.A.a.c +h=r.h(0,B.d9) +h.toString +h=h.b +h.toString +e=t.r +e.a(h).a=new A.z(g,k-n) +if(!j){n=o.b +n.toString +e.a(n).a=new A.z(f-o.gv(0).a,k-i)}break +case 0:g=q-a1.A.a.a-A.jQ(r.h(0,B.bv)).a +f=a1.A.a.c +h=r.h(0,B.d9) +h.toString +h=h.b +h.toString +e=t.r +e.a(h) +d=r.h(0,B.d9) +d.toString +h.a=new A.z(g-d.gv(0).a,k-n) +if(!j){o=o.b +o.toString +e.a(o).a=new A.z(f,k-i)}break +default:f=a2 +g=f}c=new A.bbQ(s.b) +switch(a1.X.a){case 0:if(r.h(0,B.aS)!=null){g+=a1.A.a.a +o=r.h(0,B.aS) +o.toString +g-=l.$2(o,g-r.h(0,B.aS).gv(0).a)}if(r.h(0,B.aY)!=null){o=r.h(0,B.aY) +o.toString +l.$2(o,g-r.h(0,B.aY).gv(0).a)}if(r.h(0,B.bQ)!=null){o=r.h(0,B.bQ) +o.toString +g-=c.$2(o,g-r.h(0,B.bQ).gv(0).a)}if(r.h(0,B.bI)!=null){o=r.h(0,B.bI) +o.toString +c.$2(o,g-r.h(0,B.bI).gv(0).a)}if(r.h(0,B.bP)!=null){o=r.h(0,B.bP) +o.toString +c.$2(o,g-r.h(0,B.bP).gv(0).a)}if(r.h(0,B.bB)!=null){f-=a1.A.a.c +o=r.h(0,B.bB) +o.toString +f+=l.$2(o,f)}if(r.h(0,B.bR)!=null){o=r.h(0,B.bR) +o.toString +c.$2(o,f)}break +case 1:if(r.h(0,B.aS)!=null){g-=a1.A.a.a +o=r.h(0,B.aS) +o.toString +g+=l.$2(o,g)}if(r.h(0,B.aY)!=null){o=r.h(0,B.aY) +o.toString +l.$2(o,g)}if(r.h(0,B.bQ)!=null){o=r.h(0,B.bQ) +o.toString +g+=c.$2(o,g)}if(r.h(0,B.bI)!=null){o=r.h(0,B.bI) +o.toString +c.$2(o,g)}if(r.h(0,B.bP)!=null){o=r.h(0,B.bP) +o.toString +c.$2(o,g)}if(r.h(0,B.bB)!=null){f+=a1.A.a.c +o=r.h(0,B.bB) +o.toString +f-=l.$2(o,f-r.h(0,B.bB).gv(0).a)}if(r.h(0,B.bR)!=null){o=r.h(0,B.bR) +o.toString +c.$2(o,f-r.h(0,B.bR).gv(0).a)}break}if(r.h(0,B.aY)!=null){o=r.h(0,B.aY).b +o.toString +b=t.r.a(o).a.a +a=A.jQ(r.h(0,B.aY)).a*0.75 +switch(a1.X.a){case 0:o=r.h(0,B.aS) +a0=o!=null?a1.U?A.jQ(r.h(0,B.aS)).a-a1.A.a.c:0:0 +a1.A.r.scD(0,A.ak(b+A.jQ(r.h(0,B.aY)).a+a0,A.jQ(p).a/2+a/2,0)) +break +case 1:o=r.h(0,B.aS) +a0=o!=null?a1.U?-A.jQ(r.h(0,B.aS)).a+a1.A.a.a:0:0 +a1.A.r.scD(0,A.ak(b-A.jQ(r.h(0,B.bv)).a+a0,A.jQ(p).a/2-a/2,0)) +break}a1.A.r.sfh(r.h(0,B.aY).gv(0).a*0.75)}else{a1.A.r.scD(0,a2) +a1.A.r.sfh(0)}}, +aGL(a,b){var s=this.fj$.h(0,B.aY) +s.toString +a.fa(s,b)}, +aT(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=new A.bbP(a,b),d=f.fj$ +e.$1(d.h(0,B.e3)) +if(d.h(0,B.aY)!=null){s=d.h(0,B.aY).b +s.toString +r=t.r +q=r.a(s).a +s=A.jQ(d.h(0,B.aY)) +p=A.jQ(d.h(0,B.aY)).a +o=f.A +n=o.f +m=o.d +l=n.gvh() +k=-s.b*0.75/2+n.a.b/2 +if(l)j=k +else{s=f.A +o=s.y +j=s.a.b+new A.z(o.a,o.b).ap(0,4).b/2}s=A.ak(1,0.75,m) +s.toString +o=d.h(0,B.e3).b +o.toString +o=r.a(o).a +r=A.jQ(d.h(0,B.e3)) +switch(f.X.a){case 0:i=q.a+p*(1-s) +if(d.h(0,B.aS)!=null)n=l +else n=!1 +if(n)h=i+(f.U?A.jQ(d.h(0,B.aS)).a-f.A.a.c:0) +else h=i +break +case 1:i=q.a +if(d.h(0,B.aS)!=null)n=l +else n=!1 +if(n)h=i+(f.U?-A.jQ(d.h(0,B.aS)).a+f.A.a.a:0) +else h=i +break +default:i=null +h=null}r=A.ak(h,o.a+r.a/2-p*0.75/2,0) +r.toString +r=A.ak(i,r,m) +r.toString +o=q.b +n=A.ak(0,j-o,m) +n.toString +g=new A.bW(new Float64Array(16)) +g.eo() +g.bs(0,r,o+n) +g.bK(0,s) +f.ac=g +s=f.cx +s===$&&A.b() +n=f.ch +n.sb0(0,a.rV(s,b,g,f.gaGK(),t.zV.a(n.a)))}else f.ch.sb0(0,null) +e.$1(d.h(0,B.bv)) +e.$1(d.h(0,B.bQ)) +e.$1(d.h(0,B.bR)) +e.$1(d.h(0,B.aS)) +e.$1(d.h(0,B.bB)) +e.$1(d.h(0,B.bP)) +e.$1(d.h(0,B.bI)) +s=d.h(0,B.d9) +s.toString +e.$1(s) +e.$1(d.h(0,B.dA))}, +er(a,b){var s,r=this,q=r.fj$ +if(a===q.h(0,B.aY)&&r.ac!=null){q=q.h(0,B.aY).b +q.toString +s=t.r.a(q).a +q=r.ac +q.toString +b.e7(0,q) +b.bs(0,-s.a,-s.b)}r.a_M(a,b)}, +k9(a){return!0}, +dU(a,b){var s,r,q,p,o,n +for(s=this.gfR(0),r=s.length,q=t.r,p=0;p>>16&255,s>>>8&255,s&255),q,q,q,q,q,q,q,q,q,q,q,q,q,q,!0,q,q,q,q,q,q,q,q)}s=this.a.gd7() +r=s.rx +return A.cb(q,q,r==null?s.k3:r,q,q,q,q,q,q,q,q,q,q,q,q,q,q,!0,q,q,q,q,q,q,q,q)}, +$S:76} +A.b8o.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){s=this.a.gd7().k3.a +return A.Y(10,s>>>16&255,s>>>8&255,s&255)}s=this.a.gd7() +r=s.RG +return r==null?s.k2:r}, +$S:9} +A.b8m.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.L)){s=q.a.gd7().k3.a +return new A.br(A.Y(97,s>>>16&255,s>>>8&255,s&255),1,B.I,-1)}if(a.p(0,B.cN)){if(a.p(0,B.R))return new A.br(q.a.gd7().fy,2,B.I,-1) +if(a.p(0,B.N)){s=q.a.gd7() +r=s.k1 +return new A.br(r==null?s.go:r,1,B.I,-1)}return new A.br(q.a.gd7().fy,1,B.I,-1)}if(a.p(0,B.R))return new A.br(q.a.gd7().b,2,B.I,-1) +if(a.p(0,B.N))return new A.br(q.a.gd7().k3,1,B.I,-1) +s=q.a.gd7() +r=s.rx +return new A.br(r==null?s.k3:r,1,B.I,-1)}, +$S:136} +A.b8t.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.L)){s=q.a.gd7().k3.a +return new A.br(A.Y(31,s>>>16&255,s>>>8&255,s&255),1,B.I,-1)}if(a.p(0,B.cN)){if(a.p(0,B.R))return new A.br(q.a.gd7().fy,2,B.I,-1) +if(a.p(0,B.N)){s=q.a.gd7() +r=s.k1 +return new A.br(r==null?s.go:r,1,B.I,-1)}return new A.br(q.a.gd7().fy,1,B.I,-1)}if(a.p(0,B.R))return new A.br(q.a.gd7().b,2,B.I,-1) +if(a.p(0,B.N))return new A.br(q.a.gd7().k3,1,B.I,-1) +s=q.a.gd7() +r=s.ry +if(r==null){r=s.a2 +s=r==null?s.k3:r}else s=r +return new A.br(s,1,B.I,-1)}, +$S:136} +A.b8u.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){s=this.a.gd7().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}s=this.a.gd7() +r=s.rx +return r==null?s.k3:r}, +$S:9} +A.b8v.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.L)){s=q.a.gd7().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.cN)){if(a.p(0,B.N)){s=q.a.gd7() +r=s.k1 +return r==null?s.go:r}return q.a.gd7().fy}s=q.a.gd7() +r=s.rx +return r==null?s.k3:r}, +$S:9} +A.b8s.prototype={ +$1(a){var s,r=this.a,q=r.gHS().y +if(q==null)q=B.i9 +if(a.p(0,B.L)){r=r.gd7().k3.a +return q.cc(A.Y(97,r>>>16&255,r>>>8&255,r&255))}if(a.p(0,B.cN)){if(a.p(0,B.R))return q.cc(r.gd7().fy) +if(a.p(0,B.N)){r=r.gd7() +s=r.k1 +return q.cc(s==null?r.go:s)}return q.cc(r.gd7().fy)}if(a.p(0,B.R))return q.cc(r.gd7().b) +if(a.p(0,B.N)){r=r.gd7() +s=r.rx +return q.cc(s==null?r.k3:s)}r=r.gd7() +s=r.rx +return q.cc(s==null?r.k3:s)}, +$S:76} +A.b8p.prototype={ +$1(a){var s,r=this.a,q=r.gHS().y +if(q==null)q=B.i9 +if(a.p(0,B.L)){r=r.gd7().k3.a +return q.cc(A.Y(97,r>>>16&255,r>>>8&255,r&255))}if(a.p(0,B.cN)){if(a.p(0,B.R))return q.cc(r.gd7().fy) +if(a.p(0,B.N)){r=r.gd7() +s=r.k1 +return q.cc(s==null?r.go:s)}return q.cc(r.gd7().fy)}if(a.p(0,B.R))return q.cc(r.gd7().b) +if(a.p(0,B.N)){r=r.gd7() +s=r.rx +return q.cc(s==null?r.k3:s)}r=r.gd7() +s=r.rx +return q.cc(s==null?r.k3:s)}, +$S:76} +A.b8q.prototype={ +$1(a){var s,r=this.a,q=r.gHS().Q +if(q==null)q=B.i9 +if(a.p(0,B.L)){r=r.gd7().k3.a +return q.cc(A.Y(97,r>>>16&255,r>>>8&255,r&255))}r=r.gd7() +s=r.rx +return q.cc(s==null?r.k3:s)}, +$S:76} +A.b8n.prototype={ +$1(a){var s=this.a,r=s.gHS().Q +if(r==null)r=B.i9 +return r.cc(s.gd7().fy)}, +$S:76} +A.agp.prototype={} +A.UG.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.UY.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.V1.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.anq.prototype={ +aI(a){var s,r,q +this.eD(a) +for(s=this.gfR(0),r=s.length,q=0;q72){s=16 +break $label0$0}if(r){s=(b-a)/2 +if(d)s=Math.min(s,16) +break $label0$0}if(B.a36===q){s=c.ac +break $label0$0}if(B.ya===q){s=(b-a)/2 +break $label0$0}if(B.a37===q){s=b-a-c.ac +break $label0$0}s=null}return s}} +A.mX.prototype={ +Se(a,b){var s=this.w +if(s==null)s=b.a +if(s==null)s=a.M.a +return s===!0}, +F(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=this,a6=null,a7=A.q(b3),a8=A.bKz(b3),a9=new A.b97(b3,a6,B.jN,a6,a6,a6,a6,a6,a6,a6,B.py,a6,a6,a6,8,24,a6,a6,a6,a6,a6),b0=t.g,b1=A.bn(b0),b2=a5.cx +if(!b2)b1.q(0,B.L) +s=a5.fr +if(s)b1.q(0,B.Y) +b1=new A.aF_(b1) +r=a5.z +q=b1.$3(a6,r,a6) +if(q==null){q=a8.e +q=b1.$3(q,a8.d,q)}if(q==null){q=a7.M +p=q.e +p=b1.$3(p,q.d,p) +o=p}else o=q +if(o==null)o=b1.$4(a9.gfV(),a9.gwa(),a9.gfV(),a7.ch) +r=b1.$3(a6,r,a6) +if(r==null){r=a8.f +r=b1.$3(r,a8.d,r)}if(r==null){r=a7.M +q=r.f +q=b1.$3(q,r.d,q) +n=q}else n=r +if(n==null){r=a9.f +n=b1.$4(r,a9.gwa(),r,a7.ch)}b1=A.Bz(a6,a6,a6,a6,a6,a6,o,a6,a6,a6,a6,a6,a6,a6) +r=a5.c +q=r==null +if(!q||a5.f!=null){m=a8.x +m=(m==null?a9.gDZ():m).cc(n)}else m=a6 +if(!q){m.toString +l=A.We(r,B.X,B.T,m)}else l=a6 +k=a8.r +if(k==null)k=a9.giK() +k=k.xZ(n,a5.Se(a7,a8)?13:a6) +r=a5.d +j=A.We(r==null?B.ez:r,B.X,B.T,k) +r=a5.e +if(r!=null){i=a8.w +if(i==null)i=a9.gwq() +i=i.xZ(n,a5.Se(a7,a8)?12:a6) +h=A.We(r,B.X,B.T,i)}else{i=a6 +h=i}r=a5.f +if(r!=null){m.toString +g=A.We(r,B.X,B.T,m)}else g=a6 +r=b3.au(t.I) +r.toString +f=r.w +r=a5.CW +r=r==null?a6:r.Z(f) +if(r==null){r=a8.y +r=r==null?a6:r.Z(f) +e=r}else e=r +if(e==null)e=a9.y.Z(f) +b0=A.bn(b0) +if(b2)r=a5.cy==null +else r=!0 +if(r)b0.q(0,B.L) +r=A.dH(a6,b0,t.GE) +if(r==null)d=a6 +else d=r +if(d==null)d=B.eD.Z(b0) +b0=a5.y +r=b0==null +q=r?a8.b:b0 +p=b2?a5.cy:a6 +c=a5.k4 +if(c==null)c=a8.ch +if(r)b0=a8.b +if(b0==null)b0=B.uF +if(s){r=a8.Q +b=r==null?a7.M.Q:r}else{r=a8.z +b=r==null?a7.M.z:r}r=b==null?a9.gEF():b +a=a5.Se(a7,a8) +a0=k.Q +if(a0==null){a0=a9.giK().Q +a0.toString}a1=i==null?a6:i.Q +if(a1==null){a1=a9.gwq().Q +a1.toString}a2=a8.as +if(a2==null)a2=16 +a3=a8.at +if(a3==null){a3=a9.at +a3.toString}a4=a8.ax +if(a4==null){a4=a9.ax +a4.toString}b1=A.Dj(!1,A.a10(A.aC4(new A.agO(l,j,h,g,!1,a,a7.Q,f,a0,a1,a2,a3,a4,a8.ay,B.y9,a6),new A.tD(b1)),new A.eP(a6,a6,a6,a6,a6,o,a6,a6,a6)),e,!1) +return A.eQ(!1,a6,b2,new A.ck(A.cJ(a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,b2,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,s,a6,a6,a6,a6,a6,a6,a6,a6),!1,!1,!1,!1,new A.K3(b1,new A.nm(r,a6,a6,a6,b0),a6),a6),q,c!==!1,a6,a5.id,a6,a5.fy,d,a5.dx,a6,a6,a6,p,a6,a6,a6,a6)}} +A.aF_.prototype={ +$4(a,b,c,d){return new A.agm(a,c,b,d).Z(this.a)}, +$3(a,b,c){return this.$4(a,b,c,null)}, +$S:353} +A.agm.prototype={ +Z(a){var s=this,r=s.a +if(r instanceof A.zJ)return A.dH(r,a,t.MH) +if(a.p(0,B.L))return s.d +if(a.p(0,B.Y))return s.c +return s.b}} +A.nH.prototype={ +D(){return"_ListTileSlot."+this.b}} +A.agO.prototype={ +gZP(){return B.a6K}, +abf(a){var s,r=this +switch(a.a){case 0:s=r.d +break +case 1:s=r.e +break +case 2:s=r.f +break +case 3:s=r.r +break +default:s=null}return s}, +b6(a){var s=this,r=new A.SV(s.x,s.y,!1,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,s.CW,A.w(t.cB,t.x),new A.bk(),A.aK()) +r.b5() +return r}, +b9(a,b){var s=this +b.saWg(!1) +b.saW4(s.x) +b.sfX(s.y) +b.scr(s.z) +b.sb08(s.Q) +b.salV(s.as) +b.saVb(s.at) +b.saXj(s.ay) +b.saXm(s.ch) +b.saXn(s.ax) +b.sb07(s.CW)}} +A.SV.prototype={ +gfR(a){var s,r=this.fj$,q=r.h(0,B.cO),p=A.a([],t.Ik) +if(r.h(0,B.e5)!=null){s=r.h(0,B.e5) +s.toString +p.push(s)}if(q!=null)p.push(q) +if(r.h(0,B.e6)!=null){s=r.h(0,B.e6) +s.toString +p.push(s)}if(r.h(0,B.fN)!=null){r=r.h(0,B.fN) +r.toString +p.push(r)}return p}, +saW4(a){if(this.A===a)return +this.A=a +this.ae()}, +sfX(a){if(this.X.l(0,a))return +this.X=a +this.ae()}, +saWg(a){return}, +scr(a){if(this.aC===a)return +this.aC=a +this.ae()}, +sb08(a){if(this.aQ===a)return +this.aQ=a +this.ae()}, +salV(a){if(this.M===a)return +this.M=a +this.ae()}, +gHa(){return this.U+this.X.a*2}, +saVb(a){if(this.U===a)return +this.U=a +this.ae()}, +saXn(a){if(this.ac===a)return +this.ac=a +this.ae()}, +saXj(a){if(this.aE===a)return +this.aE=a +this.ae()}, +saXm(a){if(this.cB==a)return +this.cB=a +this.ae()}, +sb07(a){if(this.c4===a)return +this.c4=a +this.ae()}, +gks(){return!1}, +bU(a){var s,r,q,p=this.fj$ +if(p.h(0,B.e5)!=null){s=p.h(0,B.e5) +r=Math.max(s.aM(B.bh,a,s.gcF()),this.aE)+this.gHa()}else r=0 +s=p.h(0,B.cO) +s.toString +s=s.aM(B.bh,a,s.gcF()) +q=p.h(0,B.e6) +q=q==null?0:q.aM(B.bh,a,q.gcF()) +q=Math.max(s,q) +p=p.h(0,B.fN) +p=p==null?0:p.aM(B.aM,a,p.gcb()) +return r+q+p}, +bQ(a){var s,r,q,p=this.fj$ +if(p.h(0,B.e5)!=null){s=p.h(0,B.e5) +r=Math.max(s.aM(B.aM,a,s.gcb()),this.aE)+this.gHa()}else r=0 +s=p.h(0,B.cO) +s.toString +s=s.aM(B.aM,a,s.gcb()) +q=p.h(0,B.e6) +q=q==null?0:q.aM(B.aM,a,q.gcb()) +q=Math.max(s,q) +p=p.h(0,B.fN) +p=p==null?0:p.aM(B.aM,a,p.gcb()) +return r+q+p}, +gGY(){var s,r,q,p=this,o=null,n=p.X,m=new A.z(n.a,n.b).ap(0,4),l=p.fj$.h(0,B.e6)!=null +$label0$0:{s=!0 +n=!0 +if(n){r=l +q=r}else{q=o +r=!1}if(r){n=p.A?64:72 +break $label0$0}if(s){r=!1===(n?q:l) +n=r}else n=!1 +if(n){n=p.A?48:56 +break $label0$0}n=o}return m.b+n}, +bT(a){var s,r,q=this.cB +if(q==null)q=this.gGY() +s=this.fj$ +r=s.h(0,B.cO) +r.toString +r=r.aM(B.bi,a,r.gcE()) +s=s.h(0,B.e6) +s=s==null?null:s.aM(B.bi,a,s.gcE()) +return Math.max(q,r+(s==null?0:s))}, +bP(a){return this.aM(B.bi,a,this.gcE())}, +iw(a){var s=this.fj$,r=s.h(0,B.cO) +r.toString +r=r.b +r.toString +t.r.a(r) +s=s.h(0,B.cO) +s.toString +return A.WU(s.my(a),r.a.b)}, +a2_(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=this,a8=b5.b,a9=new A.au(0,a8,0,b5.d),b0=a7.A?48:56,b1=a7.X,b2=a9.ri(new A.au(0,1/0,0,b0+new A.z(b1.a,b1.b).ap(0,4).b)) +b1=a7.fj$ +b0=b1.h(0,B.e5) +s=b1.h(0,B.fN) +r=b0==null +q=r?null:b4.$2(b0,b2) +p=s==null +o=p?null:b4.$2(s,b2) +n=q==null +m=n?0:Math.max(a7.aE,q.a)+a7.gHa() +l=o==null +k=l?0:Math.max(o.a+a7.gHa(),32) +j=a9.EE(a8-m-k) +i=b1.h(0,B.e6) +h=b1.h(0,B.cO) +h.toString +g=b4.$2(h,j).b +switch(a7.aC.a){case 1:h=!0 +break +case 0:h=!1 +break +default:h=null}if(i==null){i=a7.cB +if(i==null)i=a7.gGY() +f=Math.max(i,g+2*a7.ac) +e=(f-g)/2}else{d=b4.$2(i,j).b +c=b1.h(0,B.cO) +c.toString +b=b3.$3(c,j,a7.aQ) +if(b==null)b=g +a=b3.$3(i,j,a7.M) +if(a==null)a=d +c=a7.A?28:32 +a0=c-b +c=a7.A?48:52 +a1=c+a7.X.b*2-a +a2=Math.max(a0+g-a1,0)/2 +a3=a0-a2 +a4=a1+a2 +c=a7.ac +if(!(a3a5}else a6=!0 +if(b6!=null){c=h?m:k +b6.$2(i,new A.z(c,a6?a7.ac+g:a4))}if(a6)f=2*a7.ac+g+d +else{i=a7.cB +f=i==null?a7.gGY():i}e=a6?a7.ac:a3}if(b6!=null){b1=b1.h(0,B.cO) +b1.toString +b6.$2(b1,new A.z(h?m:k,e)) +if(!r&&!n){b1=h?0:a8-q.a +b6.$2(b0,new A.z(b1,a7.c4.Ur(q.b,f,a7,!0)))}if(!p&&!l){b0=h?a8-o.a:0 +b6.$2(s,new A.z(b0,a7.c4.Ur(o.b,f,a7,!1)))}}return new A.aiX(j,new A.R(a8,f),e)}, +a1Z(a,b,c){return this.a2_(a,b,c,null)}, +fH(a,b){var s=this.a1Z(A.ku(),A.jb(),a),r=this.fj$.h(0,B.cO) +r.toString +return A.WU(r.ii(s.a,b),s.c)}, +ds(a){return a.bD(this.a1Z(A.ku(),A.jb(),a).b)}, +ck(){var s=this,r=t.k,q=s.a2_(A.bjw(),A.rR(),r.a(A.G.prototype.gah.call(s)),A.bWp()) +s.id=r.a(A.G.prototype.gah.call(s)).bD(q.b)}, +aT(a,b){var s,r=new A.bbW(a,b),q=this.fj$ +r.$1(q.h(0,B.e5)) +s=q.h(0,B.cO) +s.toString +r.$1(s) +r.$1(q.h(0,B.e6)) +r.$1(q.h(0,B.fN))}, +k9(a){return!0}, +dU(a,b){var s,r,q,p,o,n +for(s=this.gfR(0),r=s.length,q=t.r,p=0;p#"+A.c5(this)}} +A.yF.prototype={ +fW(a){return A.fb(this.a,this.b,a)}} +A.S4.prototype={ +a0(){return new A.ah_(null,null)}} +A.ah_.prototype={ +pH(a){var s,r,q=this +q.CW=t.ir.a(a.$3(q.CW,q.a.z,new A.b9v())) +s=t.YJ +q.cy=s.a(a.$3(q.cy,q.a.as,new A.b9w())) +r=q.a.at +q.cx=r!=null?s.a(a.$3(q.cx,r,new A.b9x())):null +q.db=t.TZ.a(a.$3(q.db,q.a.w,new A.b9y()))}, +F(a){var s,r,q,p,o,n=this,m=null,l=n.db +l.toString +l=l.al(0,n.ghx().gk(0)) +l.toString +s=n.CW +s.toString +r=s.al(0,n.ghx().gk(0)) +A.q(a) +s=n.a.Q +q=n.cx +p=A.bsR(s,q==null?m:q.al(0,n.ghx().gk(0)),r) +s=n.cy +s.toString +s=s.al(0,n.ghx().gk(0)) +s.toString +q=A.e1(a) +o=n.a +return new A.a61(new A.uK(l,q,m),o.y,r,p,s,new A.Ts(o.r,l,!0,m),m)}} +A.b9v.prototype={ +$1(a){return new A.b0(A.d5(a),null,t.Y)}, +$S:55} +A.b9w.prototype={ +$1(a){return new A.fU(t.n8.a(a),null)}, +$S:115} +A.b9x.prototype={ +$1(a){return new A.fU(t.n8.a(a),null)}, +$S:115} +A.b9y.prototype={ +$1(a){return new A.yF(t.RY.a(a),null)}, +$S:358} +A.Ts.prototype={ +F(a){var s=A.e1(a) +return A.fB(this.c,new A.akh(this.d,s,null),null,null,B.V)}} +A.akh.prototype={ +aT(a,b){this.b.hW(a,new A.I(0,0,0+b.a,0+b.b),this.c)}, +ff(a){return!a.b.l(0,this.b)}} +A.anb.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.ah0.prototype={ +vj(a){return a.gda(0)==="en"}, +iC(a,b){return new A.cv(B.SL,t.az)}, +tu(a){return!1}, +j(a){return"DefaultMaterialLocalizations.delegate(en_US)"}} +A.a__.prototype={ +gaV(){return"Open navigation menu"}, +gbf(){return"Back"}, +gaY(){return"Delete"}, +gbk(){return"More"}, +gb7(){return"Popup menu"}, +gaN(){return"Dialog"}, +gbe(){return"Alert"}, +gaX(){return"Scrim"}, +gb3(){return"Bottom Sheet"}, +Zl(a){return"Close "+a}, +agX(a,b){return"Tab "+b+" of "+a}, +ga6(){return"Copy"}, +ga7(){return"Cut"}, +gaW(){return"Scan text"}, +ga8(){return"Paste"}, +ga1(){return"Select all"}, +gO(){return"Look Up"}, +ga5(){return"Search Web"}, +gP(){return"Share"}, +gaS(){return"Dismiss"}, +gbm(){return B.P}, +gbj(){return"Refresh"}, +agl(a){var s +$label0$0:{if(0===a){s="No characters remaining" +break $label0$0}if(1===a){s="1 character remaining" +break $label0$0}s=""+a+" characters remaining" +break $label0$0}return s}, +$iaE:1} +A.a3Y.prototype={} +A.L6.prototype={ +gB(a){return J.W(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.L6&&J.e(b.a,this.a)}} +A.ah7.prototype={} +A.a3Z.prototype={ +gB(a){var s=this +return A.cj([s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as])}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.a3Z)if(b.a==r.a)if(b.b==r.b)if(b.c==r.c)if(b.d==r.d)if(b.e==r.e)if(b.f==r.f)if(b.r==r.r)if(b.w==r.w)if(b.x==r.x)if(b.y==r.y)s=J.e(b.as,r.as) +return s}} +A.ah8.prototype={} +A.Ca.prototype={ +gB(a){return J.W(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.Ca&&J.e(b.a,this.a)}} +A.ah9.prototype={} +A.LB.prototype={ +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.LB)if(b.a==r.a)if(J.e(b.b,r.b))if(b.c==r.c)if(J.e(b.d,r.d))if(J.e(b.e,r.e))if(J.e(b.f,r.f))if(J.e(b.r,r.r))if(b.w==r.w)if(b.x==r.x)s=b.z==r.z +return s}} +A.ahq.prototype={} +A.LC.prototype={ +gB(a){var s=this +return A.a4(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.ah(b)!==A.K(s))return!1 +return b instanceof A.LC&&b.a==s.a&&J.e(b.b,s.b)&&b.c==s.c&&J.e(b.d,s.d)&&J.e(b.e,s.e)&&J.e(b.f,s.f)&&J.e(b.r,s.r)&&J.e(b.w,s.w)&&b.x==s.x&&b.y==s.y}} +A.ahr.prototype={} +A.LD.prototype={ +gB(a){var s=this +return A.a4(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=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.LD&&J.e(b.a,s.a)&&b.b==s.b&&J.e(b.c,s.c)&&J.e(b.d,s.d)&&J.e(b.e,s.e)&&J.e(b.f,s.f)&&b.r==s.r&&J.e(b.y,s.y)&&J.e(b.z,s.z)&&b.Q==s.Q&&b.as==s.as}} +A.ahs.prototype={} +A.a5m.prototype={ +y6(a){var s=null +A.q(a) +A.q(a) +return new A.ahJ(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,B.T,!0,B.O,s,s,s)}, +Nz(a){var s +a.au(t.BR) +s=A.q(a) +return s.fT.a}} +A.Sq.prototype={ +Z(a){if(a.p(0,B.L))return this.b +return this.a}} +A.ahI.prototype={ +Z(a){var s +if(a.p(0,B.a4)){s=this.a +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=this.a +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=this.a +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}} +A.ahH.prototype={ +Z(a){if(a.p(0,B.L))return this.b +return this.a}} +A.ahJ.prototype={ +gqI(){var s,r=this,q=r.fy +if(q===$){s=A.q(r.fx) +r.fy!==$&&A.aH() +q=r.fy=s.ax}return q}, +ghK(){return new A.bK(A.q(this.fx).p2.as,t.RP)}, +gco(a){return B.bO}, +gfw(){return new A.bQ(new A.bah(this),t.b)}, +gcI(){return new A.bQ(new A.baj(this),t.b)}, +gcW(a){return B.bO}, +gdr(){return B.bO}, +geK(a){return B.ic}, +gdW(a){return new A.bK(A.bU8(this.fx),t.mD)}, +gjz(){return B.tV}, +gjy(){return B.fJ}, +ghu(){return new A.bQ(new A.bak(this),t.GD)}, +gcC(a){return B.fI}, +ghb(){return new A.bQ(new A.bai(),t.B_)}, +gfX(){return A.q(this.fx).Q}, +gjD(){return A.q(this.fx).f}, +ghf(){return A.q(this.fx).y}} +A.bah.prototype={ +$1(a){var s +if(a.p(0,B.L)){s=this.a.gqI().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}return this.a.gqI().b}, +$S:9} +A.baj.prototype={ +$1(a){var s +if(a.p(0,B.a4)){s=this.a.gqI().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=this.a.gqI().b +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=this.a.gqI().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}, +$S:47} +A.bak.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){s=this.a.gqI().k3.a +return new A.br(A.Y(31,s>>>16&255,s>>>8&255,s&255),1,B.I,-1)}if(a.p(0,B.R))return new A.br(this.a.gqI().b,1,B.I,-1) +s=this.a.gqI() +r=s.ry +if(r==null){r=s.a2 +s=r==null?s.k3:r}else s=r +return new A.br(s,1,B.I,-1)}, +$S:136} +A.bai.prototype={ +$1(a){if(a.p(0,B.L))return B.cg +return B.dt}, +$S:61} +A.ani.prototype={} +A.anj.prototype={} +A.ank.prototype={} +A.LQ.prototype={ +gB(a){return J.W(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.LQ&&J.e(b.a,this.a)}} +A.ahK.prototype={} +A.u0.prototype={ +guB(){return A.h5.prototype.guB.call(this)+"("+A.c(this.b.a)+")"}, +gz1(){return!0}} +A.a3P.prototype={ +gvQ(a){return B.bl}, +gpi(){return null}, +guq(){return null}, +UX(a){return a instanceof A.u0}, +xM(a,b,c){var s=null,r=this.d9.$1(a) +return new A.ck(A.cJ(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,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,r,s)}, +xN(a,b,c,d){A.q(a) +return new A.Fw(B.J3,this,b,c,d,null,this.$ti.i("Fw<1>"))}} +A.S5.prototype={} +A.amO.prototype={ +F(a){var s=this +return new A.B1(s.c,new A.bh5(s),new A.bh6(s),new A.B1(new A.la(s.d,new A.bV(A.a([],t.x8),t.jc),0),new A.bh7(s),new A.bh8(s),s.f,null),null)}} +A.bh5.prototype={ +$3(a,b,c){return new A.vP(b,c,this.a.e,!1,null)}, +$C:"$3", +$R:3, +$S:223} +A.bh6.prototype={ +$3(a,b,c){return new A.vQ(b,this.a.e,!0,c,null)}, +$C:"$3", +$R:3, +$S:224} +A.bh7.prototype={ +$3(a,b,c){return new A.vP(b,c,this.a.e,!0,null)}, +$C:"$3", +$R:3, +$S:223} +A.bh8.prototype={ +$3(a,b,c){return new A.vQ(b,this.a.e,!1,c,null)}, +$C:"$3", +$R:3, +$S:224} +A.vP.prototype={ +a0(){return new A.amM(new A.Oc($.aW()),$,$)}} +A.amM.prototype={ +gYA(){return!1}, +Br(){var s,r=this,q=r.a,p=q.f +if(p)s=B.iy +else{s=$.bDh() +s=new A.bf(q.c,s,s.$ti.i("bf"))}r.px$=s +p=p?$.bDi():$.bDj() +q=q.c +r.rn$=new A.bf(q,p,p.$ti.i("bf")) +q.a4(0,r.gz5()) +r.a.c.fG(r.gz4())}, +aj(){var s,r,q,p,o=this +o.Br() +s=o.a +r=s.f +q=o.px$ +q===$&&A.b() +p=o.rn$ +p===$&&A.b() +o.d=A.bye(s.c,q,r,p) +o.aw()}, +b1(a){var s,r,q,p=this,o=p.a +if(a.f!==o.f||a.c!==o.c){o=a.c +o.K(0,p.gz5()) +o.dX(p.gz4()) +p.Br() +o=p.d +o===$&&A.b() +o.m() +o=p.a +s=o.f +r=p.px$ +r===$&&A.b() +q=p.rn$ +q===$&&A.b() +p.d=A.bye(o.c,r,s,q)}p.bb(a)}, +m(){var s,r=this +r.a.c.K(0,r.gz5()) +r.a.c.dX(r.gz4()) +s=r.d +s===$&&A.b() +s.m() +r.aqv()}, +F(a){var s=this.d +s===$&&A.b() +return A.bvY(!0,this.a.d,this.uX$,B.OS,s)}} +A.vQ.prototype={ +a0(){return new A.amN(new A.Oc($.aW()),$,$)}} +A.amN.prototype={ +gYA(){return!1}, +Br(){var s,r=this,q=r.a,p=q.e +if(p){s=$.bDl() +s=new A.bf(q.c,s,s.$ti.i("bf"))}else s=B.iy +r.px$=s +p=p?$.bDm():$.bDn() +q=q.c +r.rn$=new A.bf(q,p,p.$ti.i("bf")) +q.a4(0,r.gz5()) +r.a.c.fG(r.gz4())}, +aj(){var s,r,q,p,o=this +o.Br() +s=o.a +r=s.e +q=o.px$ +q===$&&A.b() +p=o.rn$ +p===$&&A.b() +o.d=A.byf(s.c,q,r,p) +o.aw()}, +b1(a){var s,r,q,p=this,o=p.a +if(a.e!==o.e||a.c!==o.c){o=a.c +o.K(0,p.gz5()) +o.dX(p.gz4()) +p.Br() +o=p.d +o===$&&A.b() +o.m() +o=p.a +s=o.e +r=p.px$ +r===$&&A.b() +q=p.rn$ +q===$&&A.b() +p.d=A.byf(o.c,r,s,q)}p.bb(a)}, +m(){var s,r=this +r.a.c.K(0,r.gz5()) +r.a.c.dX(r.gz4()) +s=r.d +s===$&&A.b() +s.m() +r.aqw()}, +F(a){var s=this.d +s===$&&A.b() +return A.bvY(!0,this.a.f,this.uX$,B.OS,s)}} +A.qr.prototype={} +A.aco.prototype={ +ab4(a,b,c,d,e){return new A.amO(c,d,!0,e,!0,null)}} +A.Zy.prototype={ +ab4(a,b,c,d,e,f){return A.bGC(a,b,c,d,e,f)}} +A.a5r.prototype={ +asg(a){var s=t.Tr +return A.a8(new A.ad(B.ac0,new A.aMd(a),s),!0,s.i("aN.E"))}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +if(b instanceof A.a5r)return!0 +return!1}, +gB(a){return A.cj(this.asg(B.J3))}} +A.aMd.prototype={ +$1(a){return this.a.h(0,a)}, +$S:361} +A.Fw.prototype={ +a0(){return new A.Sv(this.$ti.i("Sv<1>"))}} +A.Sv.prototype={ +F(a){var s,r,q=this,p=A.q(a).w,o=q.a +if(o.d.a.cx.a){s=q.d +if(s==null)q.d=p +else p=s}else q.d=null +r=o.c.h(0,p) +if(r==null){$label0$0:{if(B.aG===p){o=B.ot +break $label0$0}if(B.bg===p||B.du===p||B.dw===p||B.cr===p||B.dv===p){o=B.v2 +break $label0$0}o=null}r=o}o=q.a +return r.ab4(o.d,a,o.e,o.f,o.r,q.$ti.c)}} +A.Gd.prototype={ +aXP(){var s,r=this,q=r.rn$ +q===$&&A.b() +s=q.a +if(J.e(q.b.al(0,s.gk(s)),1)){q=r.px$ +q===$&&A.b() +if(!J.e(q.gk(q),0)){q=r.px$ +q=J.e(q.gk(q),1)}else q=!0}else q=!1 +s=r.uX$ +if(q)s.sUB(!1) +else{r.gYA() +s.sUB(!1)}}, +aXO(a){if(a.gmi())this.gYA() +this.uX$.sUB(!1)}} +A.UA.prototype={ +SJ(a){this.T()}, +a2R(a,b,c){var s,r,q,p,o +if(!this.r){s=this.w +s=s.gbi(s)!==B.am}else s=!1 +if(s){s=this.w +s=$.bDk().al(0,s.gk(s)) +s.toString +r=s}else r=0 +if(r>0){s=a.gca(0) +q=b.a +p=b.b +o=$.ap().br() +o.saG(0,A.Y(B.d.aa(255*r),0,0,0)) +s.ey(new A.I(q,p,q+c.a,p+c.b),o)}}, +z8(a,b,c,d){var s,r,q,p=this +if(!p.w.gmi())return d.$2(a,b) +p.a2R(a,b,c) +s=p.z +r=p.x +q=r.a +A.bzi(s,r.b.al(0,q.gk(q)),c) +q=p.as +q.sb0(0,a.rV(!0,b,s,new A.bh3(p,d),q.a))}, +afB(a,b,c,d,e,f){var s,r,q +this.a2R(a,b,c) +s=this.x +r=s.a +q=this.y +A.byy(a,d,s.b.al(0,r.gk(r)),q.gk(q),f)}, +m(){var s=this,r=s.w,q=s.geS() +r.K(0,q) +r.dX(s.gBq()) +s.x.a.K(0,q) +s.y.K(0,q) +s.Q.sb0(0,null) +s.as.sb0(0,null) +s.dN()}, +ff(a){var s,r,q,p,o=this,n=!0 +if(a.r===o.r){s=a.w +r=o.w +if(J.e(s.gk(s),r.gk(r))){s=a.x +r=s.a +q=o.x +p=q.a +if(J.e(s.b.al(0,r.gk(r)),q.b.al(0,p.gk(p)))){n=a.y +s=o.y +s=!J.e(n.gk(n),s.gk(s)) +n=s}}}return n}} +A.bh3.prototype={ +$2(a,b){var s=this.a,r=s.Q +s=s.y +r.sb0(0,a.XO(b,B.d.aa(s.gk(s)*255),this.b,r.a))}, +$S:18} +A.UB.prototype={ +SJ(a){this.T()}, +afB(a,b,c,d,e,f){var s=this.w,r=s.a,q=this.x +A.byy(a,d,s.b.al(0,r.gk(r)),q.gk(q),f)}, +z8(a,b,c,d){var s,r,q,p=this +if(!p.y.gmi())return d.$2(a,b) +s=p.z +r=p.w +q=r.a +A.bzi(s,r.b.al(0,q.gk(q)),c) +q=p.as +q.sb0(0,a.rV(!0,b,s,new A.bh4(p,d),q.a))}, +ff(a){var s,r,q,p=!0 +if(a.r===this.r){s=a.x +r=this.x +if(J.e(s.gk(s),r.gk(r))){p=a.w +s=p.a +r=this.w +q=r.a +q=!J.e(p.b.al(0,s.gk(s)),r.b.al(0,q.gk(q))) +p=q}}return p}, +m(){var s,r=this +r.Q.sb0(0,null) +r.as.sb0(0,null) +s=r.geS() +r.w.a.K(0,s) +r.x.K(0,s) +r.y.dX(r.gBq()) +r.dN()}} +A.bh4.prototype={ +$2(a,b){var s=this.a,r=s.Q +s=s.x +r.sb0(0,a.XO(b,B.d.aa(s.gk(s)*255),this.b,r.a))}, +$S:18} +A.ahP.prototype={} +A.Vj.prototype={ +m(){var s=this.uX$ +s.U$=$.aW() +s.M$=0 +this.ar()}} +A.Vk.prototype={ +m(){var s=this.uX$ +s.U$=$.aW() +s.M$=0 +this.ar()}} +A.Mg.prototype={ +gB(a){var s=this +return A.a4(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=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.Mg&&J.e(b.a,s.a)&&J.e(b.b,s.b)&&J.e(b.c,s.c)&&b.d==s.d&&J.e(b.e,s.e)&&J.e(b.f,s.f)&&J.e(b.r,s.r)&&b.w==s.w&&J.e(b.Q,s.Q)&&b.as==s.as}} +A.aiv.prototype={} +A.aXy.prototype={ +D(){return"_ActivityIndicatorType."+this.b}} +A.a6m.prototype={ +Rv(a,b){var s=this.f +s=s==null?null:s.gk(s) +if(s==null)s=this.e +if(s==null)s=A.aNh(a).a +if(s==null)s=b +return s==null?A.q(a).ax.b:s}, +az3(a){return this.Rv(a,null)}, +PR(a,b){var s=null,r=this.w,q=this.c +if(q!=null)r=""+B.d.aa(q*100)+"%" +return new A.ck(A.cJ(s,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,s,r),!1,!1,!1,!1,a,s)}, +gk(a){return this.c}} +A.agK.prototype={ +aT(a,b){var s,r,q,p,o,n,m=this,l=$.ap().br() +l.saG(0,m.b) +l.sd0(0,B.cm) +l.saG(0,m.c) +s=new A.b93(m,b,a,l) +r=m.d +q=b.a +if(r!=null)s.$2(0,A.M(r,0,1)*q) +else{r=m.e +p=q*B.a2A.al(0,r) +o=B.a2D.al(0,r) +n=q*B.a2C.al(0,r) +r=B.a2B.al(0,r) +s.$2(p,q*o-p) +s.$2(n,q*r-n)}}, +ff(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)}, +gk(a){return this.d}} +A.b93.prototype={ +$2(a,b){var s,r,q,p,o=this +if(b<=0)return +s=o.a +switch(s.f.a){case 0:r=o.b.a-b-a +break +case 1:r=a +break +default:r=null}q=new A.I(r,0,r+b,0+o.b.b) +s=s.r +r=o.c +p=o.d +if(!s.l(0,B.aH))r.dk(s.e9(q),p) +else r.ey(q,p)}, +$S:362} +A.Kv.prototype={ +a0(){return new A.agL(null,null)}} +A.agL.prototype={ +aj(){var s,r=this +r.aw() +s=A.c2(null,B.ZU,null,null,r) +r.d=s +if(r.a.c==null)s.vG(0)}, +b1(a){var s,r,q=this +q.bb(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.vG(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.f_(0)}}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aq6()}, +a17(a,b,c){var s,r,q,p,o,n,m,l,k,j=this,i=null +A.q(a) +s=new A.b92(a,i,i,i,i,i) +r=A.aNh(a) +q=j.a +q.toString +q=q.d +p=q==null?r.b:q +if(p==null)p=s.gE1() +q=j.a.y +o=q==null?r.c:q +if(o==null)o=s.gE0() +q=j.a +n=!q.z.l(0,B.aH)&&j.a.c==null?B.by:B.h +m=j.a +l=m.z +m=m.Rv(a,s.gaG(0)) +k=j.a +return q.PR(A.aa(i,A.fB(i,i,i,new A.agK(p,m,k.c,b,c,k.z,i),B.V),n,i,new A.au(1/0,1/0,o,1/0),new A.nm(p,i,i,i,new A.cu(l,B.x)),i,i,i,i,i,i,i,i),a)}, +F(a){var s,r=this,q=a.au(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.a17(a,q,s)}q=r.d +q===$&&A.b() +return A.lw(q,new A.b94(r,s),null)}} +A.b94.prototype={ +$2(a,b){var s=this.a,r=s.d +r===$&&A.b() +r=r.x +r===$&&A.b() +return s.a17(a,r,this.b)}, +$S:54} +A.EB.prototype={ +aT(a,b){var s,r,q,p,o,n,m=this,l=$.ap(),k=l.br() +k.saG(0,m.c) +s=m.x +k.shw(s) +k.sd0(0,B.aJ) +r=s/2*-m.y +q=r*2 +p=b.a-q +q=b.b-q +o=m.b +if(o!=null){n=l.br() +n.saG(0,o) +n.shw(s) +n.sd0(0,B.aJ) +a.acP(new A.I(r,r,r+p,r+q),0,6.282185307179586,!1,n)}if(m.d==null)k.swn(B.ti) +else k.swn(B.k5) +a.acP(new A.I(r,r,r+p,r+q),m.z,m.Q,!1,k)}, +ff(a){var s=this,r=!0 +if(J.e(a.b,s.b))if(a.c.l(0,s.c))if(a.d==s.d)if(a.e===s.e)if(a.f===s.f)if(a.r===s.r)if(a.w===s.w)if(a.x===s.x)r=a.y!==s.y +return r}, +gk(a){return this.d}} +A.kw.prototype={ +gco(a){return this.d}, +a0(){return new A.Qk(null,null)}} +A.Qk.prototype={ +aj(){var s=this +s.aw() +s.d=A.c2(null,B.ZY,null,null,s) +if(s.gaL().c==null)s.d.vG(0)}, +b1(a){var s,r=this +r.bb(a) +if(r.gaL().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.vG(0)}else{if(r.gaL().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.f_(0)}}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.apO()}, +GJ(a,b,c,d,e){var s,r,q,p,o,n=this,m=null +A.q(a) +s=n.gaL() +r=s.gco(s) +if(r==null)r=A.aNh(a).d +s=n.gaL() +q=n.gaL().Rv(a,new A.b_8(a,m,m,m,m,m).gaG(0)) +p=n.gaL() +o=n.gaL() +return s.PR(A.aa(m,A.fB(m,m,m,A.bPo(r,b,d,e,n.gaL().Q,n.gaL().as,o.z,c,p.c,q),B.V),B.h,m,B.RL,m,m,m,m,m,m,m,m,m),a)}, +PP(){var s=this.d +s===$&&A.b() +return A.lw(s,new A.b_9(this),null)}, +F(a){var s=this +s.gaL() +switch(0){case 0:if(s.gaL().c!=null)return s.GJ(a,0,0,0,0) +return s.PP()}}} +A.b_9.prototype={ +$2(a,b){var s=this.a,r=$.bqd(),q=s.d +q===$&&A.b() +return s.GJ(a,r.al(0,q.gk(0)),$.bqe().al(0,s.d.gk(0)),$.bqb().al(0,s.d.gk(0)),$.bqc().al(0,s.d.gk(0)))}, +$S:54} +A.aj1.prototype={ +aT(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +g.aor(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=$.ap() +i=j.cR() +i.hc(0,o+q*l,o+p*l) +i.dg(0,o+q*k,o+p*k) +i.dg(0,o+q*o+-p*n*2*s,o+p*o+q*n*2*s) +i.L(0) +h=j.br() +h.saG(0,g.c) +h.shw(n) +h.sd0(0,B.cm) +a.eJ(i,h)}}} +A.MB.prototype={ +gco(a){return A.kw.prototype.gco.call(this,0)}, +a0(){return new A.aj2(null,null)}} +A.aj2.prototype={ +gaL(){return t.nP.a(A.a9.prototype.gaL.call(this))}, +F(a){var s,r,q=this,p=t.nP.a(A.a9.prototype.gaL.call(q)).c +if(p!=null){q.Q=p +s=q.d +s===$&&A.b() +r=q.y +if(r===$){r!==$&&A.aH() +r=q.y=new A.hZ(B.y1)}s.sk(0,r.al(0,p)*0.000225022502250225)}return q.PP()}, +PP(){var s=this.d +s===$&&A.b() +return A.lw(s,new A.bbF(this),null)}, +GJ(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.a9.prototype.gaL.call(i)).c,e=f==null,d=e?0:B.y1.al(0,f) +if(e&&i.Q==null)s=0 +else{r=i.z +if(r===$){q=t.Y +p=t.Ns +o=A.aV2(A.a([new A.hP(new A.b0(-0.1,-0.2,q),0.33,p),new A.hP(new A.b0(-0.2,1.35,q),0.6699999999999999,p)],t.x0),t.i) +i.z!==$&&A.aH() +i.z=o +r=o}if(e){e=i.Q +e.toString}else e=f +s=3.141592653589793*r.al(0,e)}n=g.a(A.a9.prototype.gaL.call(i)).az3(a) +e=n.gk(n) +n=A.Y(255,n.gk(n)>>>16&255,n.gk(n)>>>8&255,n.gk(n)&255) +q=g.a(A.a9.prototype.gaL.call(i)) +q=A.kw.prototype.gco.call(q,0) +m=q==null?A.aNh(a).e:q +if(m==null)m=A.q(a).as +q=g.a(A.a9.prototype.gaL.call(i)) +g.a(A.a9.prototype.gaL.call(i)) +g.a(A.a9.prototype.gaL.call(i)) +g.a(A.a9.prototype.gaL.call(i)) +p=g.a(A.a9.prototype.gaL.call(i)) +l=g.a(A.a9.prototype.gaL.call(i)) +g=g.a(A.a9.prototype.gaL.call(i)) +k=c*3/2*3.141592653589793 +j=Math.max(b*3/2*3.141592653589793-k,0.001) +return q.PR(A.aa(h,A.fI(B.T,!0,h,new A.be(B.dO,A.LP(A.Eb(s,A.fB(h,h,h,new A.aj1(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.V)),(e>>>24&255)/255),h),B.h,m,2,h,h,h,h,h,B.qw),B.h,h,h,h,h,41,h,B.pA,h,h,h,41),a)}} +A.bbF.prototype={ +$2(a,b){var s=this.a,r=$.bqd(),q=s.d +q===$&&A.b() +return s.GJ(a,1.05*r.al(0,q.gk(0)),$.bqe().al(0,s.d.gk(0)),$.bqb().al(0,s.d.gk(0)),$.bqc().al(0,s.d.gk(0)))}, +$S:54} +A.b_8.prototype={ +gAD(){var s,r=this,q=r.r +if(q===$){s=A.q(r.f) +r.r!==$&&A.aH() +q=r.r=s.ax}return q}, +gaG(a){return this.gAD().b}, +gK4(){var s=this.gAD(),r=s.Q +return r==null?s.y:r}} +A.b92.prototype={ +gAD(){var s,r=this,q=r.r +if(q===$){s=A.q(r.f) +r.r!==$&&A.aH() +q=r.r=s.ax}return q}, +gaG(a){return this.gAD().b}, +gE1(){var s=this.gAD(),r=s.Q +return r==null?s.y:r}, +gE0(){return 4}} +A.UL.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.V2.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.CX.prototype={ +gB(a){var s=this +return A.a4(s.gaG(s),s.gE1(),s.gE0(),s.gK4(),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.ah(b)!==A.K(s))return!1 +return b instanceof A.CX&&J.e(b.gaG(b),s.gaG(s))&&J.e(b.gE1(),s.gE1())&&b.gE0()==s.gE0()&&J.e(b.gK4(),s.gK4())&&J.e(b.e,s.e)}, +gaG(a){return this.a}, +gE1(){return this.b}, +gE0(){return this.c}, +gK4(){return this.d}} +A.aiA.prototype={} +A.Mr.prototype={ +gB(a){var s=this +return A.a4(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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.Mr)if(b.b==r.b)if(b.c==r.c)s=b.d==r.d +return s}} +A.aiF.prototype={} +A.vC.prototype={ +D(){return"_RefreshIndicatorMode."+this.b}} +A.aNY.prototype={ +D(){return"RefreshIndicatorTriggerMode."+this.b}} +A.b89.prototype={ +D(){return"_IndicatorType."+this.b}} +A.Mz.prototype={ +a0(){return new A.MA(null,null)}, +aYn(){return this.f.$0()}, +ob(a){return A.Gs().$1(a)}} +A.MA.prototype={ +ga2X(){var s,r=this,q=r.at +if(q===$){r.a.toString +s=r.c +s.toString +s=A.q(s) +q=r.at=s.ax.b}return q}, +aj(){var s,r,q,p=this,o=null +p.aw() +s=p.d=A.c2(o,o,o,o,p) +r=$.bCj() +q=t.m +p.f=new A.bf(q.a(s),r,r.$ti.i("bf")) +r=$.bCl() +p.w=new A.bf(q.a(s),r,r.$ti.i("bf")) +r=A.c2(o,o,o,o,p) +p.e=r +s=$.bCk() +p.r=new A.bf(q.a(r),s,s.$ti.i("bf"))}, +c1(){this.aKf() +this.ea()}, +b1(a){this.bb(a) +this.a.toString}, +m(){var s=this.d +s===$&&A.b() +s.m() +s=this.e +s===$&&A.b() +s.m() +this.aoK()}, +aKf(){var s,r,q,p,o,n=this +n.a.toString +s=n.c +s.toString +s=A.q(s) +n.at=s.ax.b +r=n.ga2X() +if((r.gk(r)>>>24&255)===0)n.x=new A.nY(r,t.ZU) +else{s=n.d +s===$&&A.b() +q=A.Y(0,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +p=A.Y(r.gk(r)>>>24&255,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +o=t.IC.i("fO") +n.x=new A.bf(t.m.a(s),new A.fO(new A.hZ(B.a2I),new A.fU(q,p),o),o.i("bf"))}}, +aIr(a){var s,r,q,p,o=this +if(!o.a.ob(a))return!1 +s=a instanceof A.yu&&a.d!=null +if(!s)if(a instanceof A.jA)if(a.d!=null)o.a.toString +if(s){s=a.a +r=s.e +if(!(r===B.at&&Math.max(s.gkT()-s.gfB(),0)===0))s=r===B.ah&&Math.max(s.gfB()-s.gkU(),0)===0 +else s=!0 +s=s&&o.y==null&&o.aIs(0,r)}else s=!1 +if(s){o.J(new A.aNT(o)) +return!1}s=a.a +q=s.e +$label0$0:{r=null +if(B.ah===q||B.at===q){r=!0 +break $label0$0}if(B.cj===q||B.dD===q)break $label0$0}if(r!=o.Q){s=o.y +if(s===B.fP||s===B.fQ)o.oU(B.o4)}else if(a instanceof A.jA){r=o.y +if(r===B.fP||r===B.fQ){if(q===B.ah){r=o.as +r.toString +p=a.e +p.toString +o.as=r-p}else if(q===B.at){r=o.as +r.toString +p=a.e +p.toString +o.as=r+p}s=s.d +s.toString +o.a1p(s)}if(o.y===B.fQ&&a.d==null)o.a6S()}else if(a instanceof A.n7){r=o.y +if(r===B.fP||r===B.fQ){if(q===B.ah){r=o.as +r.toString +o.as=r-a.e}else if(q===B.at){r=o.as +r.toString +o.as=r+a.e}s=s.d +s.toString +o.a1p(s)}}else if(a instanceof A.lc)switch(o.y){case B.fQ:s=o.d +s===$&&A.b() +s=s.x +s===$&&A.b() +if(s<1)o.oU(B.o4) +else o.a6S() +break +case B.fP:o.oU(B.o4) +break +case B.o4:case B.ub:case B.o3:case B.ua:case null:case void 0:break}return!1}, +aAE(a){if(a.j2$!==0||!a.a)return!1 +if(this.y===B.fP){a.c=!1 +return!0}return!1}, +aIs(a,b){var s,r=this +switch(b.a){case 2:case 0:r.Q=!0 +break +case 3:case 1:r.Q=null +return!1}r.as=0 +s=r.e +s===$&&A.b() +s.sk(0,0) +s=r.d +s===$&&A.b() +s.sk(0,0) +return!0}, +a1p(a){var s,r,q=this,p=q.as +p.toString +s=p/(a*0.25) +if(q.y===B.fQ)s=Math.max(s,0.6666666666666666) +p=q.d +p===$&&A.b() +p.sk(0,A.M(s,0,1)) +if(q.y===B.fP){p=q.x +p===$&&A.b() +p=p.gk(p) +p.toString +p=J.je(p) +r=q.ga2X() +r=(p>>>24&255)===(r.gk(r)>>>24&255) +p=r}else p=!1 +if(p)q.y=B.fQ}, +oU(a){return this.aw2(a)}, +aw2(a){var s=0,r=A.n(t.H),q=this,p +var $async$oU=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=2 +return A.f(A.c7(null,t.H),$async$oU) +case 2:q.J(new A.aNR(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.b5 +s=11 +return A.f(p.jP(1,B.X,B.T),$async$oU) +case 11:s=4 +break +case 6:p=q.d +p===$&&A.b() +p.z=B.b5 +s=12 +return A.f(p.jP(0,B.X,B.T),$async$oU) +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.J(new A.aNS(q))}return A.l(null,r)}}) +return A.m($async$oU,r)}, +a6S(){var s,r=$.ab +this.y=B.ua +s=this.d +s===$&&A.b() +s.z=B.b5 +s.jP(0.6666666666666666,B.X,B.eQ).ak(new A.aNW(this,new A.aq(new A.a_(r,t.U),t.h)),t.H)}, +F(a){var s,r,q,p=this,o=null,n=p.a.c,m=p.y,l=m===B.o3||m===B.ub +n=A.a([new A.ea(p.gaIq(),new A.ea(p.gaAD(),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.eH(m,A.bvR(B.aw,1,A.aa(B.ip,A.a7E(B.O,A.lw(q,new A.aNX(p,l),o),r),B.h,o,o,o,o,o,o,o,new A.al(0,40,0,0),o,o,o),s),o,o,0,0,0,o))}return A.cq(B.a2,n,B.w,B.W,o)}} +A.aNT.prototype={ +$0(){this.a.y=B.fP}, +$S:0} +A.aNR.prototype={ +$0(){this.a.y=this.b}, +$S:0} +A.aNS.prototype={ +$0(){this.a.y=null}, +$S:0} +A.aNW.prototype={ +$1(a){var s=this.a +if(s.c!=null&&s.y===B.ua){s.J(new A.aNU(s)) +s.a.aYn().fC(new A.aNV(s,this.b))}}, +$S:20} +A.aNU.prototype={ +$0(){this.a.y=B.o3}, +$S:0} +A.aNV.prototype={ +$0(){var s=this.a +if(s.c!=null&&s.y===B.o3){this.b.d8(0) +s.oU(B.ub)}}, +$S:4} +A.aNX.prototype={ +$2(a,b){var s,r,q,p,o,n=null,m=this.a +m.a.toString +s=A.hE(a,B.bu,t.C) +s.toString +s=s.gbj() +m.a.toString +if(this.b)r=n +else{r=m.w +r===$&&A.b() +q=r.a +q=r.b.al(0,q.gk(q)) +r=q}q=m.x +q===$&&A.b() +m.a.toString +p=new A.MB(2.5,0,n,r,n,n,q,s,n,n) +o=A.bGr(n,n) +switch(0){case 0:return p}}, +$S:54} +A.SJ.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.ks.prototype={ +D(){return"_ScaffoldSlot."+this.b}} +A.Nk.prototype={ +a0(){var s=null +return new A.Nl(A.tV(t.Np),A.ej(s,t.nY),A.ej(s,t.BL),s,s)}} +A.Nl.prototype={ +c1(){var s,r,q=this,p=q.c +p.toString +s=A.cr(p,B.o_,t.l).w.z +p=q.y +r=!1 +if(p===!0)if(!s){p=q.x +p=p!=null&&p.b==null}else p=r +else p=r +if(p)q.LD(B.OR) +q.y=s +q.ea()}, +U8(){var s,r,q,p,o,n +for(s=this.d,r=A.dr(s,s.r,A.y(s).c),q=t.Np,p=r.$ti.c;r.u();){o=r.d +if(o==null)o=p.a(o) +n=o.c.o_(q) +if(n==null||!s.p(0,n)){o.a9K() +o.a9q()}}}, +aDT(a){var s=a.c.o_(t.Np) +return s==null||!this.d.p(0,s)}, +jJ(a){var s,r,q,p,o=this,n=o.w +if(n==null){n=A.c2("SnackBar",B.j0,null,null,o) +n.ct() +r=n.ec$ +r.b=!0 +r.a.push(o.gaC6()) +o.w=n}r=o.r +if(r.b===r.c)n.cd(0) +s=A.bu("controller") +n=o.w +n.toString +r=new A.kl() +q=a.a +r=q==null?r:q +s.b=new A.Ni(A.ki(a.Q,a.as,n,a.d,a.z,a.cy,a.ax,a.c,a.cx,a.ay,a.e,a.y,r,a.f,a.CW,a.r,a.x,a.at,a.w),new A.aq(new A.a_($.ab,t.dH),t.fO),new A.aPO(o),t.BL) +try{o.J(new A.aPP(o,s)) +o.U8()}catch(p){throw p}return s.b2()}, +aC7(a){var s=this +switch(a.a){case 0:s.J(new A.aPK(s)) +s.U8() +if(!s.r.ga_(0))s.w.cd(0) +break +case 3:s.J(new A.aPL()) +s.U8() +break +case 1:case 2:break}}, +Y0(a){var s,r=this,q=r.r +if(q.b===q.c)return +s=q.gW(0).b +if((s.a.a&30)===0)s.bv(0,a) +q=r.x +if(q!=null)q.S(0) +r.x=null +r.w.sk(0,0)}, +Y_(){return this.Y0(B.ao4)}, +LD(a){var s,r,q=this,p=q.r +if(p.b===p.c||q.w.gbi(0)===B.a9)return +s=p.gW(0).b +p=q.y +p.toString +r=q.w +if(p){r.sk(0,0) +s.bv(0,a)}else r.dq(0).ak(new A.aPN(s,a),t.H) +p=q.x +if(p!=null)p.S(0) +q.x=null}, +ae3(){return this.LD(B.ao3)}, +aPw(){var s,r=this.r +if(r.b===r.c||this.w.gbi(0)===B.a9)return +s=r.gW(0) +r.V(0) +r.f0(0,s) +this.ae3()}, +F(a){var s,r,q,p=this +p.y=A.cr(a,B.o_,t.l).w.z +s=p.r +if(!s.ga_(0)){r=A.La(a,t.X) +if(r==null||r.gkb())if(p.w.gbi(0)===B.am&&p.x==null){q=s.gW(0).a +p.x=A.bZ(q.ay,new A.aPM(p,q,a))}}return new A.T8(p,p.a.c,null)}, +m(){var s=this,r=s.w +if(r!=null)r.m() +r=s.x +if(r!=null)r.S(0) +s.x=null +s.apc()}} +A.aPO.prototype={ +$0(){this.a.ae3()}, +$S:0} +A.aPP.prototype={ +$0(){this.a.r.f0(0,this.b.b2())}, +$S:0} +A.aPK.prototype={ +$0(){this.a.r.om()}, +$S:0} +A.aPL.prototype={ +$0(){}, +$S:0} +A.aPN.prototype={ +$1(a){var s=this.a +if((s.a.a&30)===0)s.bv(0,this.b)}, +$S:20} +A.aPM.prototype={ +$0(){if(this.b.Q!=null&&A.cr(this.c,B.o_,t.l).w.z)return +this.a.LD(B.OR)}, +$S:0} +A.T8.prototype={ +dY(a){return this.f!==a.f}} +A.aPQ.prototype={} +A.Nj.prototype={ +aJm(a){var s,r,q,p=this +if(a===1)return p +if(a===0)return new A.Nj(p.a,null) +s=p.b +r=s.gbq() +q=r.a +r=r.b +s=A.bnu(new A.I(q,r,q+0,r+0),s,a) +s.toString +return p.aQi(s)}, +abU(a,b){var s=a==null?this.a:a +return new A.Nj(s,b==null?this.b:b)}, +aQi(a){return this.abU(null,a)}} +A.ajU.prototype={ +gk(a){var s=this.c,r=this.b +r.toString +return s.aJm(r)}, +a9O(a,b,c){var s=this +s.b=c==null?s.b:c +s.c=s.c.abU(a,b) +s.T()}, +a9N(a){return this.a9O(null,null,a)}, +aN9(a,b){return this.a9O(a,b,null)}} +A.Q7.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(!s.am5(0,b))return!1 +return b instanceof A.Q7&&b.r===s.r&&b.e===s.e&&b.f===s.f}, +gB(a){var s=this +return A.a4(A.au.prototype.gB.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.adb.prototype={ +F(a){return this.c}} +A.bcU.prototype={ +MX(a7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2=this,a3=A.aqH(a7),a4=a7.a,a5=a3.EE(a4),a6=a7.b +if(a2.b.h(0,B.o7)!=null){s=a2.hS(B.o7,a5).b +a2.kg(B.o7,B.j) +r=s}else{r=0 +s=0}if(a2.b.h(0,B.oc)!=null){q=0+a2.hS(B.oc,a5).b +p=Math.max(0,a6-q) +a2.kg(B.oc,new A.z(0,p))}else{q=0 +p=null}if(a2.b.h(0,B.ug)!=null){q+=a2.hS(B.ug,new A.au(0,a5.b,0,Math.max(0,a6-q-r))).b +a2.kg(B.ug,new A.z(0,Math.max(0,a6-q)))}if(a2.b.h(0,B.ob)!=null){o=a2.hS(B.ob,a5) +a2.kg(B.ob,new A.z(0,s)) +if(!a2.ay)r+=o.b}else o=B.V +n=a2.f +m=Math.max(0,a6-Math.max(n.d,q)) +if(a2.b.h(0,B.o6)!=null){l=Math.max(0,m-r) +k=a2.d +if(k)l=A.M(l+q,0,a3.d-r) +k=k?q:0 +a2.hS(B.o6,new A.Q7(k,s,o.b,0,a5.b,0,l)) +a2.kg(B.o6,new A.z(0,r))}if(a2.b.h(0,B.o9)!=null){a2.hS(B.o9,new A.au(0,a5.b,0,m)) +a2.kg(B.o9,B.j)}j=a2.b.h(0,B.im)!=null&&!a2.at?a2.hS(B.im,a5):B.V +if(a2.b.h(0,B.oa)!=null){i=a2.hS(B.oa,new A.au(0,a5.b,0,Math.max(0,m-r))) +a2.kg(B.oa,new A.z((a4-i.a)/2,m-i.b))}else i=B.V +h=A.bu("floatingActionButtonRect") +if(a2.b.h(0,B.od)!=null){g=a2.hS(B.od,a3) +f=new A.aPQ(g,i,m,s,n,a2.r,a7,j,a2.w) +e=a2.z.ti(f) +d=a2.as.ajt(a2.y.ti(f),e,a2.Q) +a2.kg(B.od,d) +k=d.a +c=d.b +h.b=new A.I(k,c,k+g.a,c+g.b)}if(a2.b.h(0,B.im)!=null){k=a2.ax +b=k!=null&&k") +m=t.x8 +l=t.jc +k=t.i +j=A.bx8(new A.la(new A.bf(r,new A.hZ(new A.mO(B.xY)),n),new A.bV(A.a([],m),l),0),new A.bf(r,new A.hZ(B.xY),n),r,0.5,k) +r=f.a.d +i=$.bD7() +o.a(r) +h=$.bD8() +g=A.bx8(new A.bf(r,i,i.$ti.i("bf")),new A.la(new A.bf(r,h,A.y(h).i("bf")),new A.bV(A.a([],m),l),0),r,0.5,k) +f.a.toString +r=f.e +r.toString +f.w=A.br2(j,r,k) +r=f.r +r.toString +f.y=A.br2(j,r,k) +f.x=A.bo_(new A.bf(d,new A.b0(1,1,s),s.i("bf")),g,e) +f.Q=A.bo_(new A.bf(q,p,p.$ti.i("bf")),g,e) +d=f.y +f.z=new A.bf(o.a(d),new A.hZ(B.a2H),n) +n=f.gaG6() +d.ct() +d=d.dR$ +d.b=!0 +d.a.push(n) +d=f.w +d.ct() +d=d.dR$ +d.b=!0 +d.a.push(n)}, +aBw(a){this.J(new A.b4g(this,a))}, +F(a){var s,r,q=this,p=A.a([],t.p),o=q.d +o===$&&A.b() +if(o.gbi(0)!==B.a9){o=q.w +s=q.as +o===$&&A.b() +r=q.x +r===$&&A.b() +p.push(A.a7E(B.O,A.bnA(s,r),o))}o=q.a +s=q.y +o=o.c +s===$&&A.b() +r=q.Q +r===$&&A.b() +p.push(A.a7E(B.O,A.bnA(o,r),s)) +return A.cq(B.oi,p,B.w,B.W,null)}, +aG7(){var s,r=this.w +r===$&&A.b() +r=r.gk(r) +s=this.y +s===$&&A.b() +s=s.gk(s) +s=Math.max(A.iE(r),A.iE(s)) +this.a.f.a9N(s)}} +A.b4g.prototype={ +$0(){this.a.a.toString}, +$S:0} +A.Nh.prototype={ +a0(){var s=null,r=t.jk,q=t.A,p=$.aW() +return new A.Dk(new A.bG(s,r),new A.bG(s,r),new A.bG(s,q),new A.N7(!1,p),new A.N7(!1,p),A.a([],t.Z4),new A.bG(s,q),B.v,s,A.w(t.yb,t.M),s,!0,s,s,s)}} +A.Dk.prototype={ +ghJ(){this.a.toString +return null}, +nk(a,b){var s=this +s.vC(s.w,"drawer_open") +s.vC(s.x,"end_drawer_open")}, +a9K(){var s=this,r=!s.y.r.ga_(0)?s.y.r.gW(0):null +if(s.z!=r)s.J(new A.aPS(s,r))}, +a9q(){var s=this,r=!s.y.e.ga_(0)?s.y.e.gW(0):null +if(s.Q!=r)s.J(new A.aPR(s,r))}, +aEN(){this.a.toString}, +aCh(){var s,r=this.c +r.toString +s=A.aN4(r) +if(s!=null&&s.f.length!==0)s.kD(0,B.iQ,B.bK)}, +gu8(){var s=this.a.cy +return s!==!1}, +aj(){var s,r=this,q=null +r.aw() +s=r.c +s.toString +r.dx=new A.ajU(s,B.alr,$.aW()) +r.a.toString +r.cy=B.oA +r.CW=B.TT +r.cx=B.oA +r.ch=A.c2(q,new A.bj(4e5),q,1,r) +r.db=A.c2(q,B.T,q,q,r)}, +b1(a){this.apf(a) +this.a.toString}, +c1(){var s,r=this,q=r.c.au(t.Q),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.C(0,r) +r.y=p +if(p!=null){p.d.q(0,r) +if(p.aDT(r)){if(!p.r.ga_(0))r.a9K() +if(!p.e.ga_(0))r.a9q()}}r.aEN() +r.ape()}, +m(){var s=this,r=s.dx +r===$&&A.b() +r.U$=$.aW() +r.M$=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.C(0,s) +s.w.m() +s.x.m() +s.apg()}, +Px(a,b,c,d,e,f,g,h,i){var s,r=this.c +r.toString +s=A.cr(r,null,t.l).w.ago(f,g,h,i) +if(e)s=s.b_r(!0) +if(d&&s.f.d!==0)s=s.CD(s.r.Ke(s.w.d)) +if(b!=null)a.push(A.aER(A.C9(b,s),c))}, +as0(a,b,c,d,e,f,g,h){return this.Px(a,b,c,!1,d,e,f,g,h)}, +Aq(a,b,c,d,e,f,g){return this.Px(a,b,c,!1,!1,d,e,f,g)}, +Pw(a,b,c,d,e,f,g,h){return this.Px(a,b,c,d,!1,e,f,g,h)}, +a15(a,b){this.a.toString}, +a14(a,b){this.a.toString}, +F(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h={},g=A.q(a),f=a.au(t.I) +f.toString +s=f.w +r=A.a([],t.s9) +f=j.a +q=f.f +p=f.e +f=f.CW +j.as0(r,new A.adb(new A.lP(q,j.f),!1,!1,i),B.o6,j.gu8(),f!=null,!1,!1,p!=null) +if(j.dy)j.Aq(r,A.aIN(!0,i,j.fr,!1,i,i,i),B.o9,!0,!0,!0,!0) +if(j.a.e!=null){f=A.cr(a,B.cQ,t.l).w +f=j.r=A.bFo(a,j.a.e.fx)+f.r.b +q=j.a.e +q.toString +j.Aq(r,new A.ep(new A.au(0,1/0,0,f),new A.Jr(1,f,f,f,i,i,q,i),i),B.o7,!0,!1,!1,!1)}h.a=!1 +h.b=null +if(j.at!=null||j.as.length!==0){f=A.a8(j.as,!0,t.l7) +q=j.at +if(q!=null)f.push(q.a) +j.Aq(r,A.cq(B.eF,f,B.w,B.W,i),B.oa,j.gu8(),!1,!1,!0)}f=j.z +if(f!=null){f=f.a +q=f.z +o=q==null?g.h7.r:q +h.a=(o==null?B.OQ:o)===B.tf +h.b=g.h7.w +q=j.a.CW +j.Pw(r,f,B.im,!j.gu8(),q!=null,!1,!1,!0)}h.c=!1 +if(j.Q!=null){a.au(t.iB) +f=A.q(a) +q=j.Q +if(q!=null){q=q.a +q.geK(q)}n=f.rx.f +h.c=(n==null?0:n)!==0 +f=j.Q +f=f==null?i:f.a +q=j.a.e +j.Pw(r,f,B.ob,!j.gu8(),!0,!1,!1,q!=null)}f=j.a +f=f.CW +if(f!=null)j.Pw(r,f,B.oc,!j.gu8(),!1,!1,!1,!0) +f=j.ch +f===$&&A.b() +q=j.CW +q===$&&A.b() +p=j.dx +p===$&&A.b() +m=j.db +m===$&&A.b() +j.a.toString +j.Aq(r,new A.Rq(i,f,q,p,m,i),B.od,!0,!0,!0,!0) +switch(g.w.a){case 2:case 4:j.Aq(r,A.fn(B.aU,i,B.S,!0,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,j.gaCg(),i,i,i,i,i,i,!1,B.aV),B.o8,!0,!1,!1,!0) +break +case 0:case 1:case 3:case 5:break}f=j.x +q=f.y +if(q==null?A.y(f).i("dG.T").a(q):q){j.a14(r,s) +j.a15(r,s)}else{j.a15(r,s) +j.a14(r,s)}f=t.l +q=A.cr(a,B.cQ,f).w +p=j.gu8()?A.cr(a,B.o2,f).w.f.d:0 +l=q.r.Ke(p) +p=A.cr(a,B.aAi,f).w +f=j.gu8()&&A.cr(a,B.o2,f).w.f.d!==0?0:i +k=p.w.Ke(f) +if(l.d<=0)j.a.toString +f=j.a.ch +if(f==null)f=g.go +return new A.ajV(!1,new A.Ns(A.fI(B.T,!0,i,A.lw(j.ch,new A.aPT(h,j,!1,l,k,s,r),i),B.h,f,0,i,i,i,i,i,B.bL),i),i)}} +A.aPS.prototype={ +$0(){this.a.z=this.b}, +$S:0} +A.aPR.prototype={ +$0(){this.a.Q=this.b}, +$S:0} +A.aPT.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l=this,k=A.C([B.tG,new A.aeK(a,new A.bV(A.a([],t.ot),t.wS))],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.rY(k,new A.I9(new A.bcU(l.c,!1,l.d,l.e,l.f,p,j,s,r,q,n,o.b,m),l.r,null))}, +$S:365} +A.aeK.prototype={ +o3(a,b){var s=this.e,r=A.Nm(s).w,q=r.y +if(!(q==null?A.y(r).i("dG.T").a(q):q)){s=A.Nm(s).x +r=s.y +s=r==null?A.y(s).i("dG.T").a(r):r}else s=!0 +return s}, +jv(a){var s=this.e +A.Nm(s).a.toString +A.Nm(s).a.toString}} +A.Ni.prototype={ +L(a){return this.c.$0()}} +A.ajV.prototype={ +dY(a){return this.f!==a.f}} +A.bcV.prototype={ +$2(a,b){if(!a.a)a.K(0,b)}, +$S:83} +A.T9.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.Ta.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.Tb.prototype={ +b1(a){this.bb(a) +this.yd()}, +c1(){var s,r,q,p,o=this +o.ea() +s=o.dd$ +r=o.gvI() +q=o.c +q.toString +q=A.yi(q) +o.kM$=q +p=o.uh(q,r) +if(r){o.nk(s,o.iz$) +o.iz$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.kL$.az(0,new A.bcV()) +s=r.dd$ +if(s!=null)s.m() +r.dd$=null +r.apd()}} +A.UW.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.a7W.prototype={ +F(a){var s,r,q,p,o,n=this,m=null +if(A.q(a).w===B.aG){s=n.r +r=s==null +q=r?3:s +if(r)s=8 +r=n.w +p=r==null +o=p?B.akW:r +if(p)r=B.fp +return A.bGD(n.c,n.d,m,o,r,m,q,s,n.e===!0)}return new A.Fl(n.c,n.d,n.e,n.w,n.r,m,B.bl,B.j1,A.Gs(),m,m,m)}} +A.Fl.prototype={ +a0(){var s=null +return new A.ah2(new A.bG(s,t.A),new A.bG(s,t.hA),s,s)}} +A.ah2.prototype={ +gwj(){var s=this.a.e +if(s==null){s=this.id +s===$&&A.b() +s=s.a +s=s==null?null:s.Z(this.gBS())}return s==null?!1:s}, +guM(){this.a.toString +var s=this.id +s===$&&A.b() +s=s.d +if(s==null){s=this.k1 +s===$&&A.b() +s=!s}return s}, +gJ5(){return new A.bQ(new A.b9E(this),t.Dm)}, +gBS(){var s=A.bn(t.g) +if(this.fx)s.q(0,B.fK) +if(this.fy)s.q(0,B.N) +return s}, +gaLO(){var s,r,q,p,o,n,m,l=this,k=l.go +k===$&&A.b() +s=k.k3 +r=A.bu("dragColor") +q=A.bu("hoverColor") +p=A.bu("idleColor") +switch(k.a.a){case 1:k=s.a +o=k>>>16&255 +n=k>>>8&255 +k&=255 +r.b=A.Y(153,o,n,k) +q.b=A.Y(B.d.aa(127.5),o,n,k) +m=l.k1 +m===$&&A.b() +if(m){k=l.c +k.toString +k=A.q(k).cy.a +k=A.Y(255,k>>>16&255,k>>>8&255,k&255)}else k=A.Y(B.d.aa(25.5),o,n,k) +p.b=k +break +case 0:k=s.a +o=k>>>16&255 +n=k>>>8&255 +k&=255 +r.b=A.Y(191,o,n,k) +q.b=A.Y(166,o,n,k) +m=l.k1 +m===$&&A.b() +if(m){k=l.c +k.toString +k=A.q(k).cy.a +k=A.Y(255,k>>>16&255,k>>>8&255,k&255)}else k=A.Y(B.d.aa(76.5),o,n,k) +p.b=k +break}return new A.bQ(new A.b9B(l,r,q,p),t.mN)}, +gaM9(){var s=this.go +s===$&&A.b() +return new A.bQ(new A.b9D(this,s.a,s.k3),t.mN)}, +gaM8(){var s=this.go +s===$&&A.b() +return new A.bQ(new A.b9C(this,s.a,s.k3),t.mN)}, +gaLL(){return new A.bQ(new A.b9A(this),t.N5)}, +aj(){var s,r=this +r.a_L() +s=r.fr=A.c2(null,B.T,null,null,r) +s.ct() +s=s.dR$ +s.b=!0 +s.a.push(new A.b9K(r))}, +c1(){var s,r=this,q=r.c +q.toString +s=A.q(q) +r.go=s.ax +q=r.c +q.au(t.NF) +q=A.q(q) +r.id=q.x +switch(s.w.a){case 0:r.k1=!0 +break +case 2:case 3:case 1:case 4:case 5:r.k1=!1 +break}r.ana()}, +EW(){var s,r=this,q=r.CW +q===$&&A.b() +q.saG(0,r.gaLO().a.$1(r.gBS())) +q.sot(r.gaM9().a.$1(r.gBS())) +q.sahc(r.gaM8().a.$1(r.gBS())) +s=r.c.au(t.I) +s.toString +q.scr(s.w) +q.sYa(r.gaLL().a.$1(r.gBS())) +s=r.a.r +if(s==null){s=r.id +s===$&&A.b() +s=s.e}if(s==null){s=r.k1 +s===$&&A.b() +s=s?null:B.dW}q.sEs(s) +s=r.id +s===$&&A.b() +s=s.x +if(s==null){s=r.k1 +s===$&&A.b() +s=s?0:2}q.sVr(s) +s=r.id.y +q.sX9(s==null?0:s) +s=r.id.z +q.sXg(0,s==null?48:s) +s=r.c +s.toString +q.sdW(0,A.cr(s,B.cQ,t.l).w.r) +q.sOx(r.a.db) +q.sae9(!r.guM())}, +LB(a){this.a_K(a) +this.J(new A.b9J(this))}, +LA(a,b){this.a_J(a,b) +this.J(new A.b9I(this))}, +Wq(a){var s,r=this +r.anb(a) +if(r.aeF(a.gcl(a),a.ge1(a),!0)){r.J(new A.b9G(r)) +s=r.fr +s===$&&A.b() +s.cd(0)}else if(r.fy){r.J(new A.b9H(r)) +s=r.fr +s===$&&A.b() +s.dq(0)}}, +Wr(a){var s,r=this +r.anc(a) +r.J(new A.b9F(r)) +s=r.fr +s===$&&A.b() +s.dq(0)}, +m(){var s=this.fr +s===$&&A.b() +s.m() +this.a_I()}} +A.b9E.prototype={ +$1(a){var s=this.a,r=s.a.Q +s=s.id +s===$&&A.b() +s=s.c +s=s==null?null:s.Z(a) +return s==null?!1:s}, +$S:367} +A.b9B.prototype={ +$1(a){var s,r,q,p=this,o=null +if(a.p(0,B.fK)){s=p.a.id +s===$&&A.b() +s=s.f +s=s==null?o:s.Z(a) +return s==null?p.b.b2():s}s=p.a +if(s.gJ5().a.$1(a)){s=s.id +s===$&&A.b() +s=s.f +s=s==null?o:s.Z(a) +return s==null?p.c.b2():s}r=s.id +r===$&&A.b() +r=r.f +r=r==null?o:r.Z(a) +if(r==null)r=p.d.b2() +q=s.id.f +q=q==null?o:q.Z(a) +if(q==null)q=p.c.b2() +s=s.fr +s===$&&A.b() +s=s.x +s===$&&A.b() +s=A.U(r,q,s) +s.toString +return s}, +$S:9} +A.b9D.prototype={ +$1(a){var s=this,r=s.a +if(r.gwj()&&r.gJ5().a.$1(a)){r=r.id +r===$&&A.b() +r=r.r +r=r==null?null:r.Z(a) +if(r==null)switch(s.b.a){case 1:r=s.c.a +r=A.Y(8,r>>>16&255,r>>>8&255,r&255) +break +case 0:r=s.c.a +r=A.Y(13,r>>>16&255,r>>>8&255,r&255) +break +default:r=null}return r}return B.t}, +$S:9} +A.b9C.prototype={ +$1(a){var s=this,r=s.a +if(r.gwj()&&r.gJ5().a.$1(a)){r=r.id +r===$&&A.b() +r=r.w +r=r==null?null:r.Z(a) +if(r==null)switch(s.b.a){case 1:r=s.c.a +r=A.Y(B.d.aa(25.5),r>>>16&255,r>>>8&255,r&255) +break +case 0:r=s.c.a +r=A.Y(64,r>>>16&255,r>>>8&255,r&255) +break +default:r=null}return r}return B.t}, +$S:9} +A.b9A.prototype={ +$1(a){var s,r +if(a.p(0,B.N)&&this.a.gJ5().a.$1(a)){s=this.a +r=s.a.w +if(r==null){s=s.id +s===$&&A.b() +s=s.b +s=s==null?null:s.Z(a)}else s=r +return s==null?12:s}s=this.a +r=s.a.w +if(r==null){r=s.id +r===$&&A.b() +r=r.b +r=r==null?null:r.Z(a)}if(r==null){s=s.k1 +s===$&&A.b() +r=8/(s?2:1) +s=r}else s=r +return s}, +$S:216} +A.b9K.prototype={ +$0(){this.a.EW()}, +$S:0} +A.b9J.prototype={ +$0(){this.a.fx=!0}, +$S:0} +A.b9I.prototype={ +$0(){this.a.fx=!1}, +$S:0} +A.b9G.prototype={ +$0(){this.a.fy=!0}, +$S:0} +A.b9H.prototype={ +$0(){this.a.fy=!1}, +$S:0} +A.b9F.prototype={ +$0(){this.a.fy=!1}, +$S:0} +A.Dn.prototype={ +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.z,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.Dn&&b.a==s.a&&b.b==s.b&&b.c==s.c&&b.d==s.d&&J.e(b.e,s.e)&&b.f==s.f&&b.r==s.r&&b.w==s.w&&b.x==s.x&&b.y==s.y&&b.z==s.z}} +A.ak0.prototype={} +A.Nu.prototype={ +gB(a){var s=this +return A.a4(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,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.Nu)if(b.a==r.a)if(b.b==r.b)if(b.c==r.c)if(b.d==r.d)if(b.e==r.e)if(b.f==r.f)if(b.r==r.r)if(b.w==r.w)if(b.x==r.x)if(b.y==r.y)s=J.e(b.z,r.z) +return s}} +A.ak1.prototype={} +A.Nv.prototype={ +gB(a){var s=this +return A.a4(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.ah(b)!==A.K(s))return!1 +return b instanceof A.Nv&&J.e(b.a,s.a)&&b.b==s.b&&J.e(b.c,s.c)&&J.e(b.d,s.d)&&J.e(b.e,s.e)&&b.f==s.f&&J.e(b.r,s.r)&&J.e(b.w,s.w)&&J.e(b.x,s.x)&&J.e(b.y,s.y)}} +A.ak2.prototype={} +A.Nw.prototype={ +gB(a){return A.a4(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){var s +if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +if(b instanceof A.Nw)s=J.e(b.a,this.a) +else s=!1 +return s}} +A.ak3.prototype={} +A.bdP.prototype={ +D(){return"_SliderType."+this.b}} +A.a8q.prototype={ +D(){return"SliderInteraction."+this.b}} +A.O1.prototype={ +a0(){return new A.Tw(new A.bG(null,t.A),new A.BS(),null,null)}, +gk(a){return this.c}} +A.Tw.prototype={ +gdw(a){var s +this.a.toString +s=this.at +s.toString +return s}, +aj(){var s,r=this,q=null +r.aw() +r.d=A.c2(q,B.bc,q,q,r) +r.e=A.c2(q,B.bc,q,q,r) +r.f=A.c2(q,B.lg,q,q,r) +r.r=A.c2(q,B.F,q,q,r) +s=r.f +r.a.toString +s.sk(0,1) +r.r.sk(0,r.a26(r.a.c)) +r.y=A.C([B.avn,new A.dv(r.garD(),new A.bV(A.a([],t.ot),t.wS),t.f6)],t.u,t.od) +r.a.toString +if(r.at==null)r.at=A.kK(!0,q,!0,!0,q,q,!1)}, +m(){var s=this,r=s.w +if(r!=null)r.S(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.CW +if(r!=null)r.eT(0) +r=s.CW +if(r!=null)r.m() +s.CW=null +r=s.at +if(r!=null)r.m() +s.aqp()}, +aKP(a){var s,r=this,q=r.a5u(a) +if(r.as!==q){r.as=q +s=r.a +if(q!==s.c)s.e.$1(q)}}, +TD(a){this.Q=!0 +this.a.toString}, +TB(a){var s=this +s.Q=!1 +s.as=null +s.a.r.$1(s.a5u(a))}, +arE(a){var s,r=this.x,q=$.aw.aR$.x.h(0,r).au(t.I) +q.toString +s=q.w +switch(a.a.a){case 2:q=!0 +break +case 3:q=!1 +break +case 1:q=s===B.ae +break +case 0:q=s===B.i +break +default:q=null}r=$.aw.aR$.x.h(0,r).gag() +r.toString +t.Sq.a(r) +return q?r.aed():r.acl()}, +aKT(a){if(a!==this.ax)this.J(new A.bdM(this,a))}, +aKV(a){if(a!==this.ay)this.J(new A.bdN(this,a))}, +a5u(a){var s=this.a,r=s.x +s=s.w +return a*(r-s)+s}, +a26(a){var s=this.a,r=s.x,q=s.w,p=r>q?(a-q)/(r-q):0,o=s.y +s=B.d.aa(p*o) +return s/o}, +F(a){this.a.toString +switch(0){case 0:return this.at7(a)}}, +at7(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=this,b0=null,b1={},b2=A.q(b7),b3=b1.a=A.bvW(b7),b4=new A.bdH(b7,4,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0),b5=b4.gzx(),b6=A.bn(t.g) +a9.a.toString +if(a9.ay)b6.q(0,B.N) +if(a9.ax)b6.q(0,B.R) +if(a9.Q)b6.q(0,B.fK) +s=b3.dx +if(s==null)s=b5 +if(s instanceof A.aNQ){r=b3.ay +if(r==null){q=b2.ax +p=q.k3.a +q=q.k2.a +r=A.Xz(A.Y(153,p>>>16&255,p>>>8&255,p&255),A.Y(B.d.aa(229.5),q>>>16&255,q>>>8&255,q&255))}}else{a9.a.toString +r=b3.ay +if(r==null)r=b2.ax.b}o=b3.id +if(o==null)o=b4.gzy() +q=A.de(b7,B.o0) +q=q==null?b0:q.ay +if(q===!0)o=o.cO(B.nG) +q=b1.a +p=q.a +if(p==null)p=b4.a +a9.a.toString +n=q.b +if(n==null)n=b4.guj() +a9.a.toString +m=b1.a.c +if(m==null)m=b4.gva() +a9.a.toString +l=b1.a.d +if(l==null)l=b4.gw9() +k=b1.a.e +if(k==null)k=b4.gyf() +j=b1.a.r +if(j==null)j=b4.gyh() +i=b1.a.f +if(i==null)i=b4.gyi() +a9.a.toString +h=b1.a.w +if(h==null)h=b4.gC8() +a9.a.toString +g=b1.a.x +if(g==null)g=b4.gDG() +f=b1.a.y +if(f==null)f=b4.gye() +e=b1.a.z +if(e==null)e=b4.gyg() +a9.a.toString +d=b1.a.Q +if(d==null)d=b4.gkj() +c=b1.a.at +if(c==null)c=b4.gyj() +b=new A.bdK(b1,a9,b6,b4).$0() +a=b1.a +a0=a.db +if(a0==null)a0=B.To +a1=a.cx +if(a1==null)a1=B.Tn +a2=a.cy +if(a2==null)a2=B.alk +a3=a.CW +if(a3==null)a3=B.Tm +a=a.go +b1.a=q.abY(h,n,f,k,e,j,i,c,g,m,b,a3,l,a==null?B.amc:a,d,a2,a1,p,a0,r,s,o) +a9.a.toString +q=A.dH(b0,b6,t.GE) +if(q==null)a4=b0 +else a4=q +if(a4==null)a4=B.eD.Z(b6) +a9.a.toString +a5=b0 +switch(b2.w.a){case 0:case 1:case 2:case 3:case 4:break +case 5:a5=new A.bdJ(a9) +break}switch(A.cr(b7,B.ik,t.l).w.ch.a){case 1:b6=B.aeI +break +case 0:b6=B.aeE +break +default:b6=b0}q=b1.a.id +a6=q==null?b0:q.r +if(a6==null)a6=14 +a7=a6===0?14:a6 +q=A.de(b7,B.cP) +q=q==null?b0:q.gem() +a8=(q==null?B.aB:q).aPs(0,1.3) +q=a9.y +q===$&&A.b() +p=a9.gdw(0) +n=a9.a26(a9.a.c) +m=a9.a +l=m.y +m=m.z +k=b1.a +j=new A.bdL(b7).$0() +i=a9.a +h=i.x +i=i.w +i=h>i?a9.gaKO():b0 +b6=A.bmh(q,!1,new A.wl(a9.ch,new A.akw(n,b0,l,m,k,a7*a8.a/a7,j,i,a9.gTC(),a9.gTA(),b0,a9,a9.ax,a9.ay,B.anA,a9.x),b0),!0,p,a4,b0,a9.gaKS(),a9.gaKU(),b6) +return new A.ck(A.cJ(b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,a5,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,b0,!0,b0,b0,b0,b0,b0,b0,b0),!0,!1,!1,!1,b6,b0)}, +alb(){var s,r,q=this +if(q.CW==null){q.CW=A.n6(new A.bdO(q),!1,!1,!1) +s=q.c +s.toString +q.a.toString +s=A.KG(s,t.N1) +s.toString +r=q.CW +r.toString +s.vd(0,r)}}} +A.bdM.prototype={ +$0(){this.a.ax=this.b}, +$S:0} +A.bdN.prototype={ +$0(){this.a.ay=this.b}, +$S:0} +A.bdK.prototype={ +$0(){var s,r,q,p=this +p.b.a.toString +s=p.c +r=t.MH +q=A.dH(p.a.a.ax,s,r) +return q==null?A.dH(p.d.gcI(),s,r):q}, +$S:369} +A.bdL.prototype={ +$0(){return A.cr(this.a,B.fO,t.l).w.a}, +$S:226} +A.bdJ.prototype={ +$0(){var s,r=this.a +if(!r.gdw(0).gcN()){s=r.gdw(0) +s=s.b&&B.b.hr(s.gew(),A.hq())}else s=!1 +if(s)r.gdw(0).iI()}, +$S:0} +A.bdO.prototype={ +$1(a){var s=this.a +return A.bl5(new A.amk(s,null),s.ch,B.j,!0)}, +$S:371} +A.akw.prototype={ +b6(a){var s,r=this,q=a.au(t.I) +q.toString +s=A.q(a) +return A.bQO(r.CW,r.f,A.cr(a,B.o1,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)}, +b9(a,b){var s,r,q=this +b.saSh(q.f) +b.sk(0,q.d) +b.sak1(q.e) +b.sDX(0,q.r) +b.salk(q.w) +b.sb05(q.x) +b.sajW(q.y) +b.sib(q.z) +b.h7=q.Q +b.fU=q.as +s=a.au(t.I) +s.toString +b.scr(s.w) +b.sak8(q.at) +b.saZp(0,A.q(a).w) +b.scN(q.ay) +b.saVc(q.ch) +s=A.cr(a,B.o1,t.l).w.CW +r=b.M +r===$&&A.b() +r.b=s +r=b.U +r===$&&A.b() +r.b=s +b.saO9(q.CW)}, +gk(a){return this.d}} +A.FH.prototype={ +arj(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.BZ() +s=new A.aAu(A.w(t.S,t.EG)) +r=A.aBE(o,o) +r.w=s +r.ch=p.gTC() +r.CW=p.gaKQ() +r.cx=p.gTA() +r.cy=p.gawW() +r.b=c +p.M=r +r=A.aTI(o,o) +r.w=s +r.a2=p.gaKW() +r.by=p.gaKY() +r.b=c +p.U=r +r=p.A +q=r.d +q===$&&A.b() +p.X=A.cl(B.aQ,q,o) +q=r.e +q===$&&A.b() +q=A.cl(B.aQ,q,o) +q.a.fG(new A.bc4(p)) +p.a9=q +r=r.f +r===$&&A.b() +p.aC=A.cl(B.e9,r,o)}, +gSr(){var s=this.ga86() +return new A.ad(s,new A.bc2(),A.af(s).i("ad<1,a5>")).lI(0,B.kD)}, +gSq(){var s=this.ga86() +return new A.ad(s,new A.bc1(),A.af(s).i("ad<1,a5>")).lI(0,B.kD)}, +ga86(){var s,r,q=this.b_ +q.CW.toString +s=q.cy +s.toString +r=this.cY!=null +if(r)s=s.a +else s=s.a +s*=2 +return A.a([new A.R(48,48),new A.R(s,s),q.cx.Fr(r,q)],t.X4)}, +gTQ(){var s=this.b_ +return s.db.Z4(!1,this,s)}, +gk(a){return this.c4}, +sk(a,b){var s,r,q=this,p=q.d3,o=p>0?q.wO(b):b +if(o===q.c4)return +q.c4=o +p=q.d3 +s=q.A.r +if(p>0){s===$&&A.b() +p=s.x +p===$&&A.b() +r=Math.abs(o-p) +s.e=r!==0?new A.bj(B.d.aa(75e3*(1/r))):B.F +s.z=B.b5 +s.jP(o,B.e9,null)}else{s===$&&A.b() +s.sk(0,o)}q.bM()}, +sak1(a){if(a==this.eM)return +this.eM=a +this.bM()}, +saZp(a,b){if(this.fT===b)return +this.fT=b +this.bM()}, +sak8(a){return}, +saSh(a){if(a===this.d3)return +this.d3=a +this.aU()}, +sDX(a,b){return}, +salk(a){if(a.l(0,this.b_))return +this.b_=a +this.BZ()}, +sb05(a){if(a===this.cU)return +this.cU=a +this.BZ()}, +sajW(a){if(a.l(0,this.ed))return +this.ed=a +this.aU()}, +sib(a){var s,r,q=this +if(J.e(a,q.cY))return +s=q.cY +q.cY=a +r=a!=null +if(s!=null!==r){s=q.A.f +if(r){s===$&&A.b() +s.cd(0)}else{s===$&&A.b() +s.dq(0)}q.aU() +q.bM()}}, +scr(a){if(a===this.cG)return +this.cG=a +this.BZ()}, +scN(a){var s,r,q=this +if(a===q.eN)return +q.eN=a +s=q.A +r=s.d +if(a){r===$&&A.b() +r.cd(0) +if(q.gG5()){s=s.e +s===$&&A.b() +s.cd(0)}}else{r===$&&A.b() +r.dq(0) +if(q.gG5()){s=s.e +s===$&&A.b() +s.dq(0)}}q.bM()}, +saVc(a){if(a===this.f5)return +this.f5=a +this.a9l(a)}, +saVd(a){var s=this +if(a===s.h8)return +s.h8=a +s.a9l(s.f5)}, +saO9(a){if(a===this.lC)return +this.lC=a +this.bM()}, +a9l(a){var s,r=this +if(a&&r.h8){s=r.A.d +s===$&&A.b() +s.cd(0)}else if(!r.ac&&!r.eN){s=r.A.d +s===$&&A.b() +s.dq(0)}}, +gG5(){switch(this.b_.go.a){case 0:var s=this.d3>0 +break +case 1:s=this.d3 +s=s<=0 +break +case 2:s=!0 +break +case 3:s=!1 +break +default:s=null}return s}, +BZ(){this.aQ.se3(0,null) +this.ae()}, +Ao(){this.Pb() +this.aQ.ae() +this.BZ()}, +aI(a){var s,r,q=this +q.aqd(a) +s=q.X +s===$&&A.b() +r=q.gf8() +s.a.a4(0,r) +s=q.a9 +s===$&&A.b() +s.a.a4(0,r) +s=q.aC +s===$&&A.b() +s.a.a4(0,r) +s=q.A.r +s===$&&A.b() +s.ct() +s=s.dR$ +s.b=!0 +s.a.push(r)}, +aB(a){var s,r=this,q=r.X +q===$&&A.b() +s=r.gf8() +q.a.K(0,s) +q=r.a9 +q===$&&A.b() +q.a.K(0,s) +q=r.aC +q===$&&A.b() +q.a.K(0,s) +q=r.A.r +q===$&&A.b() +q.K(0,s) +r.aqe(0)}, +m(){var s=this,r=s.M +r===$&&A.b() +r.p2.V(0) +r.mI() +r=s.U +r===$&&A.b() +r.pb() +r.mI() +s.aQ.m() +r=s.aC +r===$&&A.b() +r.m() +r=s.a9 +r===$&&A.b() +r.m() +r=s.X +r===$&&A.b() +r.m() +s.h0()}, +az4(a){var s +switch(this.cG.a){case 0:s=1-a +break +case 1:s=a +break +default:s=null}return s}, +wO(a){var s=A.M(a,0,1),r=this.d3 +return r>0?B.d.aa(s*r)/r:s}, +a8c(a){var s,r,q,p=this,o=p.A +if(o.c==null)return +o.alb() +if(!p.ac&&p.cY!=null){switch(p.lC.a){case 0:case 1:p.ac=!0 +s=p.he(a) +r=p.gTQ() +q=p.gTQ() +p.aE=p.az4((s.a-r.a)/(q.c-q.a)) +break +case 3:s=p.cB +s.toString +if(s.p(0,p.he(a))){p.ac=!0 +p.aE=p.c4}break +case 2:p.h7.$1(p.wO(p.c4)) +break}if(p.ac){p.h7.$1(p.wO(p.c4)) +s=p.cY +s.toString +s.$1(p.wO(p.aE)) +s=o.d +s===$&&A.b() +s.cd(0) +if(p.gG5()){s=o.e +s===$&&A.b() +s.cd(0) +s=o.w +if(s!=null)s.S(0) +o.w=A.bZ(new A.bj(5e5),new A.bc3(p))}}}}, +QV(){var s,r,q=this,p=q.A +if(p.c==null)return +s=q.ac +if(s){q.fU.$1(q.wO(q.aE)) +s=q.ac=!1 +q.aE=0 +r=p.d +r===$&&A.b() +r.dq(0) +if(q.gG5()?p.w==null:s){p=p.e +p===$&&A.b() +p.dq(0)}}}, +TD(a){this.a8c(a.b)}, +aKR(a){var s,r,q,p=this +if(p.A.c==null)return +s=p.ac +if(!s&&p.lC===B.anB){s=p.ac=!0 +p.aE=p.c4}switch(p.lC.a){case 0:case 2:case 3:if(s&&p.cY!=null){s=a.c +s.toString +r=p.gTQ() +q=s/(r.c-r.a) +r=p.aE +switch(p.cG.a){case 0:s=-q +break +case 1:s=q +break +default:s=null}s=r+s +p.aE=s +r=p.cY +r.toString +r.$1(p.wO(s))}break +case 1:break}}, +TB(a){this.QV()}, +aKX(a){this.a8c(a.a)}, +aKZ(a){this.QV()}, +k9(a){return!0}, +n6(a,b){var s,r=this +if(r.A.c==null)return +if(t.pY.b(a)&&r.cY!=null){s=r.M +s===$&&A.b() +s.Cf(a) +s=r.U +s===$&&A.b() +s.Cf(a)}if(r.cY!=null&&r.cB!=null){s=r.cB +s.toString +r.saVd(s.p(0,a.gfA()))}}, +bU(a){return 144+this.gSr()}, +bQ(a){return 144+this.gSr()}, +bT(a){var s=this.b_.a +s.toString +return Math.max(s,this.gSq())}, +bP(a){var s=this.b_.a +s.toString +return Math.max(s,this.gSq())}, +gks(){return!0}, +ds(a){var s,r=a.b +r=r<1/0?r:144+this.gSr() +s=a.d +if(!(s<1/0)){s=this.b_.a +s.toString +s=Math.max(s,this.gSq())}return new A.R(r,s)}, +aT(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=this,a4=null,a5=a3.A.r +a5===$&&A.b() +a5=a5.x +a5===$&&A.b() +s=a3.cG +$label0$0:{r=B.ae===s +if(r&&a3.eM==null){a5=new A.b3(1-a5,a4) +break $label0$0}if(r){q=a3.eM +q.toString +q=new A.b3(1-a5,1-q) +a5=q +break $label0$0}if(B.i===s){a5=new A.b3(a5,a3.eM) +break $label0$0}a5=a4}p=a5.a +o=a4 +n=a5.b +o=n +a5=a3.b_ +q=a3.d3 +m=a5.db.Z5(q>0,a7,a3,a5) +a5=m.a +q=m.c-a5 +l=new A.z(a5+p*q,m.gbq().b) +if(a3.cY!=null){a3.b_.CW.toString +a3.cB=A.nc(l,24)}k=o!=null?new A.z(a5+o*q,m.gbq().b):a4 +j=a3.b_ +i=j.db +i.toString +h=a3.aC +h===$&&A.b() +g=a3.cG +f=a3.d3 +i.aYZ(a6,a7,h,f>0,a3.cY!=null,a3,k,j,g,l) +j=a3.X +j===$&&A.b() +if(j.gbi(0)!==B.a9){j=a3.b_ +j.CW.toString +i=a3.X +if(a3.ed.ga_(0))a3.gv(0) +e=a6.gca(0) +i=new A.b0(0,24,t.Y).al(0,i.gk(0)) +h=$.ap().br() +j=j.ax +j.toString +h.saG(0,j) +e.k_(l,i,h)}j=a3.d3 +if(j>0){j=a3.b_ +j=j.cx.Fr(a3.cY!=null,j) +d=m.d-m.b +c=q-d +if(c/a3.d3>=3*j.a){b=m.gbq().b +for(q=d/2,a=0;j=a3.d3,a<=j;++a){i=a3.b_ +h=a3.aC +g=a3.cG +i.cx.afx(a6,new A.z(a5+a/j*c+q,b),h,a3.cY!=null,a3,i,g,l)}}}a5=a3.b_ +q=a5.cy +q.toString +j=a3.X +i=a3.aC +if(a3.ed.ga_(0))a3.gv(0) +e=a6.gca(0) +q=q.a +h=t.Y +a5=new A.fU(a5.at,a5.Q).al(0,i.gk(0)) +a5.toString +a0=new A.b0(q,q,h).al(0,i.gk(0)) +a1=new A.b0(1,6,h).al(0,j.gk(0)) +j=$.ap() +a2=j.cR() +h=2*a0 +a2.xB(A.bnt(l,h,h),0,6.283185307179586) +e.yp(a2,B.v,a1,!0) +q=j.br() +q.saG(0,a5) +e.k_(l,a0,q)}, +hP(a){var s,r=this +r.jM(a) +a.a=!1 +s=r.cY +a.c6(B.rM,!0) +a.c6(B.rK,s!=null) +a.a2=r.cG +a.e=!0 +if(r.cY!=null){a.sMz(r.gaVs()) +a.sMu(r.gaRr())}s=r.c4 +a.to=new A.e8(""+B.d.aa(s*100)+"%",B.be) +a.e=!0 +a.x1=new A.e8(""+B.d.aa(A.M(s+r.gIE(),0,1)*100)+"%",B.be) +a.e=!0 +a.x2=new A.e8(""+B.d.aa(A.M(r.c4-r.gIE(),0,1)*100)+"%",B.be) +a.e=!0}, +gIE(){var s=this.d3 +return 1/s}, +aed(){var s,r=this +if(r.cY!=null){r.h7.$1(A.M(r.c4,0,1)) +s=A.M(r.c4+r.gIE(),0,1) +r.cY.$1(s) +r.fU.$1(s)}}, +acl(){var s,r=this +if(r.cY!=null){r.h7.$1(A.M(r.c4,0,1)) +s=A.M(r.c4-r.gIE(),0,1) +r.cY.$1(s) +r.fU.$1(s)}}} +A.bc4.prototype={ +$1(a){var s,r +if(a===B.a9){s=this.a.A +r=s.CW +if(r!=null)r.eT(0) +r=s.CW +if(r!=null)r.m() +s.CW=null}}, +$S:10} +A.bc2.prototype={ +$1(a){return a.a}, +$S:227} +A.bc1.prototype={ +$1(a){return a.b}, +$S:227} +A.bc3.prototype={ +$0(){var s=this.a,r=s.A +r.w=null +if(!s.ac){s=r.e +s===$&&A.b() +s=s.gbi(0)===B.am}else s=!1 +if(s){s=r.e +s===$&&A.b() +s.dq(0)}}, +$S:0} +A.nC.prototype={} +A.FS.prototype={ +D(){return"_SliderAdjustmentType."+this.b}} +A.amk.prototype={ +b6(a){var s,r=new A.aju(this.d,!1,new A.bk(),A.aK()) +r.b5() +s=r.X.e +s===$&&A.b() +r.A=A.cl(B.aQ,s,null) +return r}, +b9(a,b){b.X=this.d}} +A.aju.prototype={ +gks(){return!0}, +aI(a){var s,r,q=this +q.aqh(a) +s=q.A +s===$&&A.b() +r=q.gf8() +s.a.a4(0,r) +s=q.X.r +s===$&&A.b() +s.ct() +s=s.dR$ +s.b=!0 +s.a.push(r)}, +aB(a){var s,r=this,q=r.A +q===$&&A.b() +s=r.gf8() +q.a.K(0,s) +q=r.X.r +q===$&&A.b() +q.K(0,s) +r.aqi(0)}, +aT(a,b){var s=this.X.z +if(s!=null)s.$2(a,b)}, +ds(a){return new A.R(A.M(0,a.a,a.b),A.M(0,a.c,a.d))}, +m(){var s=this.A +s===$&&A.b() +s.m() +this.h0()}} +A.bdH.prototype={ +giT(){var s,r=this,q=r.p1 +if(q===$){s=A.q(r.ok) +r.p1!==$&&A.aH() +q=r.p1=s.ax}return q}, +guj(){return this.giT().b}, +gva(){var s=this.giT(),r=s.RG +return r==null?s.k2:r}, +gw9(){var s=this.giT().b +return A.Y(138,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}, +gyf(){var s=this.giT().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}, +gyh(){var s=this.giT().k3.a +return A.Y(31,s>>>16&255,s>>>8&255,s&255)}, +gyi(){var s=this.giT().k3.a +return A.Y(31,s>>>16&255,s>>>8&255,s&255)}, +gC8(){var s=this.giT().c +return A.Y(97,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}, +gDG(){var s=this.giT(),r=s.rx +s=(r==null?s.k3:r).a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}, +gye(){var s=this.giT().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}, +gyg(){var s=this.giT().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}, +gkj(){return this.giT().b}, +gyj(){var s=this.giT().k3.a +return A.Xz(A.Y(97,s>>>16&255,s>>>8&255,s&255),this.giT().k2)}, +gcI(){return A.vO(new A.bdI(this))}, +gzy(){var s=A.q(this.ok).p2.at +s.toString +return s.cc(this.giT().c)}, +gzx(){return B.SQ}} +A.bdI.prototype={ +$1(a){var s +if(a.p(0,B.fK)){s=this.a.giT().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=this.a.giT().b +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=this.a.giT().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return B.t}, +$S:9} +A.V9.prototype={ +aI(a){this.eD(a) +$.ix.pz$.a.q(0,this.gqK())}, +aB(a){$.ix.pz$.a.C(0,this.gqK()) +this.eE(0)}} +A.Vb.prototype={ +aI(a){this.eD(a) +$.ix.pz$.a.q(0,this.gqK())}, +aB(a){$.ix.pz$.a.C(0,this.gqK()) +this.eE(0)}} +A.Vf.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.O2.prototype={ +tc(a,b,c){return A.bvU(c,this.w)}, +dY(a){return!this.w.l(0,a.w)}} +A.aRB.prototype={ +D(){return"ShowValueIndicator."+this.b}} +A.Dx.prototype={ +abY(a,b,c,d,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7){var s=this,r=b3==null?s.a:b3,q=a8==null?s.gw9():a8,p=d==null?s.gyf():d,o=a1==null?s.gyh():a1,n=a2==null?s.gyi():a2,m=c==null?s.gye():c,l=a0==null?s.gyg():a0,k=a3==null?s.gyj():a3,j=a6==null?s.gcI():a6,i=b5==null?s.ay:b5,h=a7==null?s.CW:a7,g=b6==null?s.gzx():b6,f=a9==null?s.go:a9,e=b7==null?s.gzy():b7 +return A.bvV(a,b,s.k4,m,p,l,o,n,k,a4,a5,s.k1,s.k3,s.as,j,h,s.fr,s.dy,s.fx,s.fy,q,f,b0,s.k2,b1,b2,r,b4,i,g,s.ch,e)}, +aQs(a,b,c,d,e,f,g,h,i,j){var s=null +return this.abY(a,b,s,s,s,s,s,s,c,d,e,s,s,s,f,g,h,i,j,s,s,s)}, +gB(a){var s=this +return A.a4(s.a,s.guj(),s.gva(),s.gw9(),s.gyf(),s.gyh(),s.gyi(),s.gC8(),s.gDG(),s.gye(),s.gyg(),s.gkj(),s.as,s.gyj(),s.gcI(),s.ay,s.CW,s.cx,s.cy,A.a4(s.db,s.gzx(),s.dy,s.fr,s.fx,s.fy,s.go,s.gzy(),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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.Dx)if(b.a==r.a)if(J.e(b.guj(),r.guj()))if(J.e(b.gva(),r.gva()))if(J.e(b.gw9(),r.gw9()))if(J.e(b.gyf(),r.gyf()))if(J.e(b.gyh(),r.gyh()))if(J.e(b.gyi(),r.gyi()))if(J.e(b.gC8(),r.gC8()))if(J.e(b.gDG(),r.gDG()))if(J.e(b.gye(),r.gye()))if(J.e(b.gyg(),r.gyg()))if(J.e(b.gkj(),r.gkj()))if(J.e(b.as,r.as))if(J.e(b.gyj(),r.gyj()))if(J.e(b.gcI(),r.gcI()))if(J.e(b.ay,r.ay))if(J.e(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.gzx()==r.gzx())if(b.go==r.go)if(J.e(b.gzy(),r.gzy()))s=b.k1==r.k1 +return s}, +guj(){return this.b}, +gva(){return this.c}, +gw9(){return this.d}, +gyf(){return this.e}, +gyi(){return this.f}, +gyh(){return this.r}, +gC8(){return this.w}, +gDG(){return this.x}, +gye(){return this.y}, +gyg(){return this.z}, +gkj(){return this.Q}, +gyj(){return this.at}, +gcI(){return this.ax}, +gzx(){return this.dx}, +gzy(){return this.id}} +A.aRP.prototype={} +A.aRQ.prototype={} +A.aRR.prototype={} +A.aqp.prototype={ +w1(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.gv(0).b-s)/2 +p=r+d.gv(0).a-Math.max(o,48) +return new A.I(Math.min(r,p),q,Math.max(r,p),q+s)}, +Z4(a,b,c){return this.w1(a,!1,B.j,b,c)}, +Z5(a,b,c,d){return this.w1(a,!1,b,c,d)}} +A.a7t.prototype={ +aYZ(a1,a2,a3,a4,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.a +if(a0==null||a0<=0)return +a0=$.ap() +s=a0.br() +r=new A.fU(a8.e,a8.b).al(0,a3.gk(0)) +r.toString +s.saG(0,r) +q=a0.br() +r=new A.fU(a8.r,a8.c).al(0,a3.gk(0)) +r.toString +q.saG(0,r) +switch(a9.a){case 1:r=new A.b3(s,q) +break +case 0:r=new A.b3(q,s) +break +default:r=null}p=r.a +o=null +n=r.b +o=n +m=this.w1(a4,a5,a2,a6,a8) +r=m.d +l=m.b +k=r-l +j=k/2 +i=new A.bg(j,j) +k=(k+2)/2 +h=new A.bg(k,k) +k=a1.gca(0) +j=a9===B.i +g=j?l-1:l +f=b0.a +e=j?r+1:r +d=j?h:i +c=j?h:i +k.dk(A.Mq(m.a,g,f,e,c,B.B,d,B.B),p) +d=a1.gca(0) +k=a9===B.ae +g=k?l-1:l +e=k?r+1:r +c=k?h:i +k=k?h:i +d.dk(A.Mq(f,g,m.c,e,B.B,k,B.B,c),o) +if(a7!=null){k=a7.a +b=j?k>f:k0){r=new A.b3(f.z,f.x) +break $label0$0}q=B.ae===g +if(q&&k<0){r=new A.b3(f.z,f.x) +break $label0$0}if(!s)r=q +else r=!0 +if(r){r=new A.b3(f.y,f.w) +break $label0$0}r=null}p=r.a +o=null +n=r.b +o=n +m=$.ap().br() +r=new A.fU(p,o).al(0,c.gk(0)) +r.toString +m.saG(0,r) +l=this.Fr(d,f).a/2 +if(l>0)a.gca(0).k_(b,l,m)}} +A.a7s.prototype={} +A.aPr.prototype={} +A.aNQ.prototype={} +A.aww.prototype={} +A.ajO.prototype={} +A.akx.prototype={} +A.nn.prototype={ +D(){return"SnackBarClosedReason."+this.b}} +A.Ob.prototype={ +a0(){return new A.Tz()}, +Xw(){return this.w.$0()}} +A.Tz.prototype={ +aBu(){var s,r=this +if(r.d)return +r.J(new A.bdS(r)) +r.a.Xw() +s=r.c.au(t.Q) +s.toString +s.f.LD(B.ao0)}, +F(a){var s,r,q,p,o=this,n=null +A.q(a) +s=A.bxN(a) +r=A.q(a).h7 +q=new A.bdV(o,r,s) +p=A.OM(n,n,n,n,n,n,n,n,n,n,n,n,q.$0(),n,n,n,n,n,n,n) +q=q.$0() +q=p.aQu(new A.bdT(o,r).$0(),q) +p=o.d?n:o.gaBt() +return A.iA(!1,A.X(o.a.r,n,n,n,n,n,n,n),n,n,B.a3,n,n,n,n,p,n,q)}} +A.bdS.prototype={ +$0(){this.a.d=!0}, +$S:0} +A.bdV.prototype={ +$0(){var s,r=this,q=r.a +q.a.toString +if(!(r.b.b!=null)){s=r.c +s.gqW() +if(s.gqW() instanceof A.zJ)return t._E.a(s.gqW())}return A.vO(new A.bdW(q,r.b,r.c))}, +$S:373} +A.bdW.prototype={ +$1(a){var s,r=this +if(a.p(0,B.L)){r.a.a.toString +s=r.b.c +return s==null?r.c.gD7():s}r.a.a.toString +s=r.b.b +return s==null?r.c.gqW():s}, +$S:9} +A.bdT.prototype={ +$0(){var s=this.a +s.a.toString +return A.vO(new A.bdU(s,this.b))}, +$S:374} +A.bdU.prototype={ +$1(a){var s,r=this +if(a.p(0,B.L)){r.a.a.toString +s=r.b.at +return s==null?B.t:s}r.a.a.toString +s=r.b.as +return s==null?B.t:s}, +$S:9} +A.yI.prototype={ +a0(){return new A.TA()}} +A.TA.prototype={ +aj(){var s,r=this +r.aw() +s=r.a.ch +s.ct() +s=s.ec$ +s.b=!0 +s.a.push(r.gSC()) +r.a7L()}, +b1(a){var s,r,q=this +q.bb(a) +s=a.ch +if(q.a.ch!=s){r=q.gSC() +s.dX(r) +s=q.a.ch +s.ct() +s=s.ec$ +s.b=!0 +s.a.push(r) +q.a2K() +q.a7L()}}, +a7L(){var s=this,r=s.a.ch +r.toString +s.e=A.cl(B.aQ,r,null) +r=s.a.ch +r.toString +s.f=A.cl(B.a2w,r,null) +r=s.a.ch +r.toString +s.r=A.cl(B.a2E,r,null) +r=s.a.ch +r.toString +s.w=A.cl(B.a2K,r,B.k8) +r=s.a.ch +r.toString +s.x=A.cl(B.Yi,r,B.k8)}, +a2K(){var s=this,r=s.e +if(r!=null)r.m() +r=s.f +if(r!=null)r.m() +r=s.r +if(r!=null)r.m() +r=s.w +if(r!=null)r.m() +r=s.x +if(r!=null)r.m() +s.x=s.w=s.r=s.f=s.e=null}, +m(){var s=this +s.a.ch.dX(s.gSC()) +s.a2K() +s.ar()}, +aFt(a){if(a===B.am){this.a.toString +this.d=!0}}, +F(b1){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.l,a4=A.cr(b1,B.o_,a3).w,a5=A.q(b1),a6=a5.ax,a7=a5.h7,a8=a6.a===B.aI?a6.b:a6.y,a9=A.bxN(b1),b0=a7.d +if(b0==null)b0=a9.gn_() +s=a1.a.z +r=s==null?a7.r:s +if(r==null)r=a9.gCq() +a1.a.toString +q=a7.w +a9.gA1() +p=r===B.tf +o=p?16:24 +s=a1.a +n=s.r +m=s.Q +n=new A.eA(o,0,m!=null?0:o,0) +l=o/2 +s=s.Q +s=s==null?a2:s.r +if(s==null)s="" +k=A.uZ(a2,a2,1,a2,A.ew(a2,A.q(b1).p2.as,s),B.bn,B.i,a2,B.aB,B.aX) +k.M0() +s=k.b +m=s.c +s=s.a.c +s.gbA(s) +s=a1.a.Q!=null?l:0 +k.m() +j=a1.a.f +if(j==null)j=a2 +i=j==null?a7.x:j +if(i==null)i=a9.gDN() +a1.a.toString +h=A.cr(b1,B.fO,a3).w.a.a-(i.a+i.c) +a1.a.toString +g=a7.Q +if(g==null)g=a9.gC5() +f=(m+s+0)/h>g +a3=t.p +s=A.a([],a3) +m=a1.a.Q +if(m!=null)s.push(new A.be(new A.al(l,0,l,0),A.bwk(m,new A.DV(A.OM(a2,a2,a2,a2,a2,a2,a2,a2,a2,a8,a2,a2,a2,new A.al(o,0,o,0),a2,a2,a2,a2,a2,a2))),a2)) +m=a1.a +m=A.a([A.cf(A.aa(a2,A.kD(m.c,a2,a2,B.cs,!0,b0,a2,a2,B.aX),B.h,a2,a2,a2,a2,a2,a2,a2,B.a_k,a2,a2,a2),1)],a3) +if(!f)B.b.G(m,s) +if(f)m.push(new A.aB(h*0.4,a2,a2,a2)) +a3=A.a([A.bt(m,B.l,B.o,B.k)],a3) +if(f)a3.push(new A.be(B.a_g,A.bt(s,B.l,B.cD,B.k),a2)) +e=new A.be(n,A.acd(a3,B.ie,B.aN,B.dy,0,0),a2) +if(!p)e=A.Dj(!0,e,B.Z,!1) +a1.a.toString +d=a7.e +if(d==null)d=a9.geK(0) +a3=a1.a.d +c=a3==null?a7.a:a3 +if(c==null)c=a9.gco(0) +a1.a.toString +b=a7.f +if(b==null)b=p?a9.gcC(0):a2 +a3=a1.a +s=a3.cx +a=s==null?a7.ax:s +if(a==null)a=B.pt +s=a3.cy +e=A.fI(B.T,!0,a2,new A.v0(a5,e,a2),s,c,d,a2,a2,b,a2,a2,B.bL) +if(p)e=A.Dj(!1,q!=null?A.aa(a2,e,B.h,a2,a2,a2,a2,a2,a2,new A.al(0,i.b,0,i.d),a2,a2,a2,q):new A.be(i,e,a2),B.Z,!1) +s=a3.y +s=a3.f!=null||a7.x!=null?B.di:B.aU +s=A.bsk(s,e,a2,a,B.awc,new A.bdX(b1),a2) +e=new A.ck(A.cJ(a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,!0,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,new A.bdY(b1),a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2,a2),!0,!1,!1,!1,s,a2) +if(a4.z)a0=e +else{a4=t.j3 +if(p){s=a1.r +s.toString +m=a1.x +m.toString +a0=new A.eB(s,!1,new A.fu(m,new A.bdZ(),e,a2,a4),a2)}else{s=a1.e +s.toString +a0=new A.fu(s,new A.be_(),e,a2,a4)}}a3=a3.c.j(0) +return A.bJg(A.Xq(a0,a1.a.cy,a2),"",!0)}} +A.bdY.prototype={ +$0(){var s=this.a.au(t.Q) +s.toString +s.f.Y0(B.ao1)}, +$S:0} +A.bdX.prototype={ +$1(a){var s=this.a.au(t.Q) +s.toString +s.f.Y0(B.ao2)}, +$S:189} +A.bdZ.prototype={ +$3(a,b,c){return new A.fh(B.oj,null,b,c,null)}, +$S:228} +A.be_.prototype={ +$3(a,b,c){return new A.fh(B.a2,null,b,c,null)}, +$S:228} +A.be0.prototype={ +gp9(){var s,r=this,q=r.CW +if(q===$){q=r.ch +if(q===$){s=A.q(r.ay) +r.ch!==$&&A.aH() +r.ch=s +q=s}r.CW!==$&&A.aH() +q=r.CW=q.ax}return q}, +gco(a){var s=this.gp9(),r=s.xr +return r==null?s.k3:r}, +gqW(){return A.vO(new A.be1(this))}, +gD7(){var s=this.gp9(),r=s.y2 +return r==null?s.c:r}, +gn_(){var s,r,q=A.q(this.ay).p2.z +q.toString +s=this.gp9() +r=s.y1 +return q.cc(r==null?s.k2:r)}, +geK(a){return 6}, +gcC(a){return B.Nq}, +gCq(){return B.OQ}, +gDN(){return B.a_z}, +gA1(){return!1}, +gK6(){var s=this.gp9(),r=s.y1 +return r==null?s.k2:r}, +gC5(){return 0.25}} +A.be1.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.L)){s=q.a.gp9() +r=s.y2 +return r==null?s.c:r}if(a.p(0,B.a4)){s=q.a.gp9() +r=s.y2 +return r==null?s.c:r}if(a.p(0,B.N)){s=q.a.gp9() +r=s.y2 +return r==null?s.c:r}if(a.p(0,B.R)){s=q.a.gp9() +r=s.y2 +return r==null?s.c:r}s=q.a.gp9() +r=s.y2 +return r==null?s.c:r}, +$S:9} +A.a8G.prototype={ +D(){return"SnackBarBehavior."+this.b}} +A.DD.prototype={ +gB(a){var s=this +return A.a4(s.gco(s),s.gqW(),s.gD7(),s.gn_(),s.geK(s),s.gcC(s),s.gCq(),s.w,s.gDN(),s.gA1(),s.gK6(),s.gC5(),s.as,s.at,s.ax,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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.DD)if(J.e(b.gco(b),r.gco(r)))if(J.e(b.gqW(),r.gqW()))if(J.e(b.gD7(),r.gD7()))if(J.e(b.gn_(),r.gn_()))if(b.geK(b)==r.geK(r))if(J.e(b.gcC(b),r.gcC(r)))if(b.gCq()==r.gCq())if(b.w==r.w)if(J.e(b.gDN(),r.gDN()))if(b.gA1()==r.gA1())if(J.e(b.gK6(),r.gK6()))if(b.gC5()==r.gC5())if(J.e(b.as,r.as))s=J.e(b.at,r.at) +return s}, +gco(a){return this.a}, +gqW(){return this.b}, +gD7(){return this.c}, +gn_(){return this.d}, +geK(a){return this.e}, +gcC(a){return this.f}, +gCq(){return this.r}, +gDN(){return this.x}, +gA1(){return null}, +gK6(){return this.z}, +gC5(){return this.Q}} +A.akG.prototype={} +A.al1.prototype={ +D(){return"_SwitchType."+this.b}} +A.a95.prototype={ +az1(a){var s,r,q,p,o=A.q(a),n=A.bnR(a) +if(this.cx===B.aAZ){s=o.YI(t.wL);(s==null?B.v8:s).aad(o,n)}r=new A.TQ(a,A.q(a).ax) +q=this.CW +switch(q.a){case 0:p=new A.R(r.ga05(),r.gaqy()) +break +case 1:p=new A.R(r.ga05(),r.gaqz()) +break +default:p=null}return p}, +F(a){var s,r=this,q=null,p=r.cx,o=q,n=q +switch(p.a){case 0:o=r.e +break +case 1:switch(A.q(a).w.a){case 0:case 1:case 3:case 5:o=r.e +break +case 2:case 4:n=r.e +break}break}s=r.az1(a) +return new A.S6(r.c,r.d,o,n,r.r,r.w,r.x,r.y,r.z,r.Q,r.as,r.at,r.ax,q,r.ch,r.db,r.dx,q,q,r.fx,r.fy,q,r.id,!1,s,!1,p,q)}, +gk(a){return this.c}} +A.S6.prototype={ +a0(){var s=null +return new A.S7(new A.TR(A.uZ(s,s,s,s,s,B.bn,s,s,B.aB,B.aX),$.aW()),$,$,$,$,$,$,$,$,B.bc,$,s,!1,!1,s,s)}, +gk(a){return this.c}} +A.S7.prototype={ +b1(a){var s,r=this +r.bb(a) +if(a.c!==r.a.c){s=r.lB$ +s===$&&A.b() +if(s.gk(0)===0||r.lB$.gk(0)===1)switch(r.a.k2.a){case 1:s=r.c +s.toString +switch(A.q(s).w.a){case 0:case 1:case 3:case 5:r.ahl() +break +case 2:case 4:s=r.lB$ +s.c=s.b=B.X +break}break +case 0:r.ahl() +break}r.JE()}}, +m(){this.d.m() +this.aq8()}, +gib(){this.a.toString +return this.gaLn()}, +gYj(){return!1}, +gk(a){return this.a.c}, +ahl(){var s=this.c +s.toString +A.q(s) +s=this.lB$ +s===$&&A.b() +s.b=B.wf +s.c=new A.mO(B.wf)}, +gC4(){return new A.bQ(new A.b9N(this),t.b)}, +gaa0(){return new A.bQ(new A.b9O(this),t.b)}, +ga8W(){var s=this,r=s.a +switch(r.k2.a){case 1:r=s.c +r.toString +switch(A.q(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.q(r) +return 20}break +case 0:return r.id.a-40}}, +aLs(a){var s +if(this.gib()!=null){s=this.nX$ +s===$&&A.b() +s.cd(0)}}, +aLu(a){var s,r,q,p,o,n=this +if(n.gib()!=null){s=n.lB$ +s===$&&A.b() +s.b=B.X +s=s.c=null +r=a.c +r.toString +q=r/n.ga8W() +r=n.pB$ +r===$&&A.b() +p=r.x +p===$&&A.b() +o=n.c.au(t.I) +o.toString +switch(o.w.a){case 0:s=-q +break +case 1:s=q +break}r.sk(0,p+s)}}, +aLq(a){var s,r,q=this,p=q.lB$ +p===$&&A.b() +p=p.gk(0) +s=q.a +r=s.c +if(p>=0.5!==r){s.d.$1(!r) +q.J(new A.b9M(q))}else q.JE() +p=q.nX$ +p===$&&A.b() +p.dq(0)}, +aLo(a){var s=this.a.d +a.toString +s.$1(a)}, +F(c4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0,c1=this,c2=null,c3={} +if(c1.e){c1.e=!1 +c1.JE()}s=A.q(c4) +r=c3.a=A.bnR(c4) +q=s.ax +p=q.b +c3.b=null +o=c2 +n=c2 +switch(c1.a.k2.a){case 0:o=new A.TQ(c4,A.q(c4).ax) +m=A.bxO(c4) +c3.b=m +l=m +n=r +break +case 1:k=s.YI(t.wL) +l=c3.a=(k==null?B.v8:k).aad(s,r) +switch(s.w.a){case 0:case 1:case 3:case 5:o=new A.TQ(c4,A.q(c4).ax) +m=A.bxO(c4) +c3.b=m +n=m +break +case 2:case 4:c1.f=!0 +c1.a.toString +o=new A.beg(c4,A.q(c4).ax) +m=new A.akY(c4,c2,c2,c2,c2,c2,c2,c2,c2,c2) +c3.b=m +n=c1.nX$ +n===$&&A.b() +n.e=B.T +n=m +break}j=l +l=n +n=j +break +default:l=n +n=r}i=c1.pB$ +i===$&&A.b() +i.e=A.dA(0,o.gaha(),0) +h=c1.gjg() +h.q(0,B.Y) +g=c1.gjg() +g.C(0,B.Y) +c1.a.toString +f=c1.gC4().a.$1(h) +if(f==null){i=n.a +f=i==null?c2:i.Z(h)}i=f==null +if(i){e=l.gkj().Z(h) +e.toString +d=e}else d=f +c1.a.toString +c=c1.gC4().a.$1(g) +if(c==null){e=n.a +c=e==null?c2:e.Z(g)}e=c==null +if(e){b=l.gkj().Z(g) +b.toString +a=b}else a=c +c1.a.toString +b=c1.gaa0().a.$1(h) +if(b==null){b=n.b +b=b==null?c2:b.Z(h)}if(b==null){b=c1.gC4().a.$1(h) +if(b==null)b=c2 +else{a0=J.dI(b) +b=A.Y(128,a0.gk(b)>>>16&255,a0.gk(b)>>>8&255,a0.gk(b)&255)}a1=b}else a1=b +if(a1==null){b=l.got().a.$1(h) +b.toString +a1=b}c1.a.toString +b=n.c +a0=b==null?c2:b.Z(h) +a2=a0 +if(a2==null)a2=l.gvP().Z(h) +c1.a.toString +a0=n.d +a3=a0==null?c2:a0.Z(h) +a4=a3 +if(a4==null){a3=l.gzu() +a4=a3==null?c2:a3.Z(h)}c1.a.toString +a3=c1.gaa0().a.$1(g) +if(a3==null){a3=n.b +a3=a3==null?c2:a3.Z(g) +a5=a3}else a5=a3 +if(a5==null){a3=l.got().a.$1(g) +a3.toString +a5=a3}c1.a.toString +b=b==null?c2:b.Z(g) +a6=b +if(a6==null)a6=l.gvP().Z(g) +c1.a.toString +b=a0==null?c2:a0.Z(g) +a7=b +if(a7==null){b=l.gzu() +a7=b==null?c2:b.Z(g)}c1.a.toString +a8=o.gfV().Z(h) +a9=o.gfV().Z(g) +b0=c1.gjg() +b0.q(0,B.R) +c1.a.toString +b=n.r +a0=b==null?c2:b.Z(b0) +if(a0==null){a0=c2 +b1=a0}else b1=a0 +if(b1==null){a0=l.gcI().a.$1(b0) +a0.toString +b1=a0}b2=c1.gjg() +b2.q(0,B.N) +c1.a.toString +a0=b==null?c2:b.Z(b2) +b3=a0 +if(b3==null){a0=l.gcI().a.$1(b2) +a0.toString +b3=a0}h.q(0,B.a4) +c1.a.toString +a0=c1.gC4().a.$1(h) +if(a0==null){a0=n.a +a0=a0==null?c2:a0.Z(h) +b4=a0}else b4=a0 +if(b4==null){a0=l.gkj().Z(h) +a0.toString +b4=a0}c1.a.toString +a0=b==null?c2:b.Z(h) +if(a0==null){i=i?c2:A.Y(31,f.gk(f)>>>16&255,f.gk(f)>>>8&255,f.gk(f)&255) +b5=i}else b5=a0 +if(b5==null){i=l.gcI().a.$1(h) +i.toString +b5=i}g.q(0,B.a4) +c1.a.toString +i=c1.gC4().a.$1(g) +if(i==null){n=n.a +n=n==null?c2:n.Z(g) +b6=n}else b6=i +if(b6==null){n=l.gkj().Z(g) +n.toString +b6=n}c1.a.toString +n=b==null?c2:b.Z(g) +if(n==null){n=e?c2:A.Y(31,c.gk(c)>>>16&255,c.gk(c)>>>8&255,c.gk(c)&255) +b7=n}else b7=n +if(b7==null){n=l.gcI().a.$1(g) +n.toString +b7=n}b8=o.gJq() +c1.a.toString +b9=o.gLI() +c1.a.toString +c0=c3.a.w +if(c0==null)c0=c3.b.gjK() +n=c1.a +l=n.c +i=n.cx +e=n.fx +b=n.fy +n=n.id +a0=c1.d +a3=c1.lB$ +a3===$&&A.b() +a0.scl(0,a3) +a3=c1.v2$ +a3===$&&A.b() +a0.sag4(a3) +a3=c1.v4$ +a3===$&&A.b() +a0.sag6(a3) +a3=c1.v3$ +a3===$&&A.b() +a0.sag7(a3) +a0.saec(b7) +a0.sag5(b5) +a0.syR(b3) +a0.syM(b1) +a0.sjK(c0) +a0.sacL(c1.v5$) +a0.sLR(c1.gjg().p(0,B.R)) +a0.saeE(c1.gjg().p(0,B.N)) +a0.saac(d) +a0.saeb(a) +a0.saNH(b4) +a0.saVn(b6) +a0.saNJ(c1.a.x) +a0.saXN(c1.a.y) +a0.saVp(c1.a.z) +a0.saYe(c1.a.Q) +a0.suj(a1) +a0.saNK(a2) +a0.saNL(a4) +a0.sva(a5) +a0.saVq(a6) +a0.saVr(a7) +a0.sr2(A.Go(c4,c2)) +a0.saW8(c1.gib()!=null) +a0.sb0o(c1.ga8W()) +a3=c4.au(t.I) +a3.toString +a0.scr(a3.w) +a0.saqx(q.k2) +a0.sLI(b9) +a0.sJq(b8) +a0.sN2(o.gN2()) +a0.sNC(o.gNC()) +a0.sNK(o.gNK()) +a0.sNL(o.gNL()) +a0.saNG(a8) +a0.saVm(a9) +a0.saNF(c2) +a0.saVl(c2) +a0.srC(A.aC6(c4)) +a0.sND(o.gND()) +a0.sNM(o.gNM()) +a0.saZs(c1.pB$) +a0.saW3(c1.f) +i=A.fn(c2,A.LP(c1.ab3(!1,e,new A.bQ(new A.b9P(c3,c1),t.tR),b,a0,n),1),i,!0,c2,c2,c2,c2,c1.gaLp(),c1.gaLr(),c1.gaLt(),c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,!1,B.aV) +return new A.ck(A.cJ(c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,c2,l,c2,c2),!1,!1,!1,!1,i,c2)}} +A.b9N.prototype={ +$1(a){if(a.p(0,B.L))return this.a.a.r +if(a.p(0,B.Y))return this.a.a.e +return this.a.a.r}, +$S:47} +A.b9O.prototype={ +$1(a){if(a.p(0,B.Y))return this.a.a.f +return this.a.a.w}, +$S:47} +A.b9M.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.b9P.prototype={ +$1(a){var s=A.dH(this.b.a.cy,a,t.GE) +if(s==null)s=null +if(s==null){s=this.a.b.ghb().a.$1(a) +s.toString}return s}, +$S:146} +A.TR.prototype={ +saZs(a){var s,r=this +if(a===r.dx)return +r.dx=a +s=r.dy +if(s!=null)s.m() +s=r.dx +s.toString +r.dy=A.cl(B.eN,s,B.ea) +r.T()}, +saNF(a){return}, +saVl(a){return}, +srC(a){if(a.l(0,this.fy))return +this.fy=a +this.T()}, +saNG(a){if(a.l(0,this.go))return +this.go=a +this.T()}, +saVm(a){if(a.l(0,this.id))return +this.id=a +this.T()}, +saNH(a){if(a.l(0,this.k1))return +this.k1=a +this.T()}, +saVn(a){if(a.l(0,this.k2))return +this.k2=a +this.T()}, +sJq(a){if(a===this.k3)return +this.k3=a +this.T()}, +sLI(a){if(a===this.k4)return +this.k4=a +this.T()}, +sN2(a){if(a===this.ok)return +this.ok=a +this.T()}, +sNC(a){if(a==this.p1)return +this.p1=a +this.T()}, +sNM(a){if(a.l(0,this.p2))return +this.p2=a +this.T()}, +sNK(a){if(a===this.p3)return +this.p3=a +this.T()}, +sNL(a){if(a===this.p4)return +this.p4=a +this.T()}, +saNJ(a){return}, +saXN(a){return}, +saVp(a){return}, +saYe(a){return}, +suj(a){if(a.l(0,this.to))return +this.to=a +this.T()}, +saNK(a){if(J.e(a,this.x1))return +this.x1=a +this.T()}, +saVq(a){if(J.e(a,this.x2))return +this.x2=a +this.T()}, +saNL(a){if(a==this.xr)return +this.xr=a +this.T()}, +saVr(a){if(a==this.y1)return +this.y1=a +this.T()}, +sva(a){if(a.l(0,this.y2))return +this.y2=a +this.T()}, +sr2(a){if(a.l(0,this.bG))return +this.bG=a +this.T()}, +scr(a){if(this.bx===a)return +this.bx=a +this.T()}, +saqx(a){if(a.l(0,this.a2))return +this.a2=a +this.T()}, +saW8(a){if(a===this.by)return +this.by=a +this.T()}, +sb0o(a){if(a===this.bI)return +this.bI=a +this.T()}, +saW3(a){if(a===this.bR)return +this.bR=a +this.T()}, +sND(a){var s=this.A +if(a==null?s==null:a===s)return +this.A=a +this.T()}, +azN(){if(!this.U)this.T()}, +aT(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.gk(0) +switch(b3.bx.a){case 0:s=1-b4 +break +case 1:s=b4 +break +default:s=null}r=b3.b.a +r=r.gbi(r)===B.ci&&!b3.ac +if(r)b3.ac=!0 +else b3.ac=!1 +if(!r){r=b3.bR +r.toString +b3.c4=r?b3.b.gk(0)*7:0 +if(b3.b.gbi(0)===B.am){r=b3.k4 +r.toString +q=b3.ok +q.toString +b3.aE=A.ak(r,q,b3.b.gk(0)) +q=b3.k3 +q.toString +r=b3.ok +r.toString +b3.cB=A.ak(q,r,b3.b.gk(0))}if(b4===0){r=b3.k4 +r.toString +q=b3.ok +q.toString +b3.aE=A.ak(r,q,b3.b.gk(0)) +q=b3.k3 +q.toString +b3.cB=q}if(b4===1){r=b3.k3 +r.toString +q=b3.ok +q.toString +b3.cB=A.ak(r,q,b3.b.gk(0)) +q=b3.k4 +q.toString +b3.aE=q}}r=b3.bR +r.toString +q=b3.aE +if(r){q.toString +q*=2 +p=b3.c4 +p===$&&A.b() +o=new A.R(q+p,q)}else{if(q==null){q=b3.k4 +q.toString}q*=2 +o=new A.R(q,q)}q=b3.cB +if(r){q.toString +q*=2 +p=b3.c4 +p===$&&A.b() +n=new A.R(q+p,q)}else{if(q==null){q=b3.k3 +q.toString}q*=2 +n=new A.R(q,q)}q=new A.bes(b3,o,n) +if(r)if(b3.b.gbi(0)===B.am){r=b3.aE +r.toString +r*=2 +q=b3.c4 +q===$&&A.b() +m=new A.R(r+q,r)}else{if(b3.a.gbi(0)!==B.a9){r=b3.a.a +r=r.gbi(r)===B.cR}else r=!0 +q=b3.a +m=r?A.NW(o,n,q.gk(0)):A.NW(o,n,q.gk(0))}else if(b3.b.gbi(0)===B.am){r=b3.ok +r.toString +r*=2 +m=new A.R(r,r)}else{if(b3.a.gbi(0)!==B.a9){r=b3.a.a +r=r.gbi(r)===B.cR}else r=!0 +if(r){r=q.$1(!0) +q=r.b +r=r.a +m=q.al(0,r.gk(r))}else{r=q.$1(!1) +q=r.b +r=r.a +m=q.al(0,r.gk(r))}}r=b3.p1 +l=r==null?0:1-Math.abs(b4-r)*2 +r=m.a-l +q=m.b-l +k=b3.dy.gk(0) +p=b3.y2 +p.toString +j=b3.to +j.toString +j=A.U(p,j,k) +j.toString +p=b3.x2 +i=p==null||b3.x1==null?null:A.U(p,b3.x1,k) +h=A.ak(b3.y1,b3.xr,k) +if(b3.b.gbi(0)!==B.a9){p=b3.k2 +p.toString +g=b3.k1 +g.toString +g=A.U(p,g,k) +g.toString +f=g}else{p=b3.dx.Q +p===$&&A.b() +if(p===B.cR){p=b3.k2 +p.toString +g=b3.e +g.toString +g=A.U(p,g,k) +g.toString +f=g}else{g=b3.f +if(p===B.ci){g.toString +p=b3.k1 +p.toString +p=A.U(g,p,k) +p.toString +f=p}else{g.toString +p=b3.e +p.toString +p=A.U(g,p,k) +p.toString +f=p}}}p=b3.a2 +p.toString +e=A.Xz(f,p) +p=b4<0.5 +d=p?b3.fx:b3.fr +c=p?b3.rx:b3.R8 +b=p?b3.ry:b3.RG +p=$.ap() +a=p.br() +a.saG(0,j) +j=b3.p4 +j.toString +g=b3.p3 +g.toString +a0=(b6.a-j)/2 +a1=b6.b +a2=(a1-g)/2 +a3=g/2 +a4=q/2 +a5=b3.bI +a5.toString +a6=b3.c4 +a6===$&&A.b() +a7=a0+a3+a6/2-r/2+s*(a5-a6) +a8=A.oI(new A.I(a0,a2,a0+j,a2+g),new A.bg(a3,a3)) +b5.dk(a8,a) +if(i!=null){s=a0+1 +j=a2+1 +g=b3.p4 +g.toString +a5=b3.p3 +a5.toString +a9=A.oI(new A.I(s,j,s+(g-2),j+(a5-2)),new A.bg(a3,a3)) +b0=p.br() +b0.sd0(0,B.aJ) +b0.shw(h==null?2:h) +b0.saG(0,i) +b5.dk(a9,b0)}s=b3.bR +s.toString +if(s){s=b3.as +s.toString +if(s){b1=a8.eA(1.75) +b2=p.br() +b2.sd0(0,B.aJ) +s=b3.y +s.toString +b2.saG(0,s) +b2.shw(3.5) +b5.dk(b1,b2)}b5.uv(a8)}b3.afA(b5,new A.z(a7+a4,a1/2)) +b3.aGP(new A.z(a7,a2-(a4-a3)),b5,k,e,c,b,d,new A.R(r,q),l)}, +aGP(a,b,c,d,e,f,g,h,i){var s,r,q=this +try{q.U=!0 +if(q.M!=null){r=d.l(0,q.a9) +r=!r}else r=!0 +if(r){q.a9=d +q.aC=e +q.aQ=f +r=q.M +if(r!=null)r.m() +r=q.bR +r.toString +q.M=A.bR0(new A.nm(d,null,null,r?null:q.A,B.OV),q.gazM())}r=q.M +r.toString +s=r +r=q.bR +r.toString +if(r)q.aGI(b,a,h) +s.jB(b,a,q.bG.Vj(h))}finally{q.U=!1}}, +aGI(a,b,c){var s,r,q,p=b.a,o=b.b,n=c.b,m=n/2,l=A.bvc(p,o,p+c.a,o+n,new A.bg(m,m)) +p=this.A +if(p!=null)for(o=p.length,s=0;s0?m*0.57735+0.5:0 +q.sXc(new A.xy(r.e,m)) +a.dk(n,q)}p=l.eA(0.5) +o=$.ap().br() +o.saG(0,B.Um) +a.dk(p,o)}, +m(){var s,r=this +r.X.m() +s=r.M +if(s!=null)s.m() +r.aQ=r.aC=r.a9=r.M=null +s=r.dy +if(s!=null)s.m() +r.aoe()}} +A.bes.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.p2,j=n.i("fO") +if(a){k.toString +s=A.a([new A.hP(new A.fO(new A.hZ(B.wc),new A.b0(r,k,n),j),11,m),new A.hP(new A.fO(new A.hZ(B.wb),new A.b0(k,p,n),j),72,m),new A.hP(new A.AD(p,p,l),17,m)],o)}else{k.toString +s=A.a([new A.hP(new A.AD(r,r,l),17,m),new A.hP(new A.fO(new A.hZ(new A.mO(B.wb)),new A.b0(r,k,n),j),72,m),new A.hP(new A.fO(new A.hZ(new A.mO(B.wc)),new A.b0(k,p,n),j),11,m)],o)}r=A.aV2(s,t.FW) +q=q.dx +q.toString +return new A.bf(q,r,r.$ti.i("bf"))}, +$S:377} +A.al_.prototype={ +aad(a,b){switch(a.w.a){case 0:case 1:case 3:case 5:return b +case 2:case 4:return B.OY}}} +A.akX.prototype={} +A.akY.prototype={ +ghb(){return new A.bQ(new A.bej(),t.B_)}, +gkj(){return B.axv}, +got(){return new A.bQ(new A.bel(this),t.mN)}, +gvP(){return B.bO}, +gcI(){return new A.bQ(new A.bek(this),t.b)}, +gjK(){return 0}} +A.bej.prototype={ +$1(a){if(a.p(0,B.L))return B.cg +return B.dt}, +$S:61} +A.bel.prototype={ +$1(a){var s +if(a.p(0,B.Y)){s=B.wg.e2(this.a.y) +return s}s=B.Yq.e2(this.a.y) +return s}, +$S:9} +A.bek.prototype={ +$1(a){var s +if(a.p(0,B.R)){s=B.wg.e2(this.a.y) +s=A.btn(A.Y(204,s.gk(0)>>>16&255,s.gk(0)>>>8&255,s.gk(0)&255)) +return new A.Bw(s.a,s.b,0.835,0.69).ah1()}return B.t}, +$S:9} +A.beg.prototype={ +gfV(){return new A.bQ(new A.beh(this),t.mN)}, +gJq(){return 14}, +gLI(){return 14}, +gN2(){return 14}, +gND(){return B.a5S}, +gNK(){return 31}, +gNL(){return 51}, +gNM(){return B.anb}, +gaha(){return 140}, +gNC(){return null}} +A.beh.prototype={ +$1(a){var s,r +if(a.p(0,B.L)){s=this.a.b.k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}s=this.a.b +r=s.e +return r==null?s.c:r}, +$S:9} +A.akZ.prototype={ +gf2(){var s,r=this,q=r.z +if(q===$){s=A.q(r.y) +r.z!==$&&A.aH() +q=r.z=s.ax}return q}, +gkj(){return new A.bQ(new A.beo(this),t.mN)}, +got(){return new A.bQ(new A.bep(this),t.mN)}, +gvP(){return new A.bQ(new A.beq(this),t.b)}, +gcI(){return new A.bQ(new A.ben(this),t.b)}, +ghb(){return new A.bQ(new A.bem(),t.tR)}, +gzu(){return B.axu}, +gjK(){return 20}} +A.beo.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.L)){if(a.p(0,B.Y)){s=q.a.gf2().k2.a +return A.Y(255,s>>>16&255,s>>>8&255,s&255)}s=q.a.gf2().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.Y)){if(a.p(0,B.a4)){s=q.a.gf2() +r=s.d +return r==null?s.b:r}if(a.p(0,B.N)){s=q.a.gf2() +r=s.d +return r==null?s.b:r}if(a.p(0,B.R)){s=q.a.gf2() +r=s.d +return r==null?s.b:r}return q.a.gf2().c}if(a.p(0,B.a4)){s=q.a.gf2() +r=s.rx +return r==null?s.k3:r}if(a.p(0,B.N)){s=q.a.gf2() +r=s.rx +return r==null?s.k3:r}if(a.p(0,B.R)){s=q.a.gf2() +r=s.rx +return r==null?s.k3:r}s=q.a.gf2() +r=s.ry +if(r==null){r=s.a2 +s=r==null?s.k3:r}else s=r +return s}, +$S:9} +A.bep.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.L)){if(a.p(0,B.Y)){s=q.a.gf2().k3.a +return A.Y(31,s>>>16&255,s>>>8&255,s&255)}s=q.a.gf2() +r=s.RG +s=(r==null?s.k2:r).a +return A.Y(31,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.Y)){if(a.p(0,B.a4))return q.a.gf2().b +if(a.p(0,B.N))return q.a.gf2().b +if(a.p(0,B.R))return q.a.gf2().b +return q.a.gf2().b}if(a.p(0,B.a4)){s=q.a.gf2() +r=s.RG +return r==null?s.k2:r}if(a.p(0,B.N)){s=q.a.gf2() +r=s.RG +return r==null?s.k2:r}if(a.p(0,B.R)){s=q.a.gf2() +r=s.RG +return r==null?s.k2:r}s=q.a.gf2() +r=s.RG +return r==null?s.k2:r}, +$S:9} +A.beq.prototype={ +$1(a){var s,r +if(a.p(0,B.Y))return B.t +if(a.p(0,B.L)){s=this.a.gf2().k3.a +return A.Y(31,s>>>16&255,s>>>8&255,s&255)}s=this.a.gf2() +r=s.ry +if(r==null){r=s.a2 +s=r==null?s.k3:r}else s=r +return s}, +$S:9} +A.ben.prototype={ +$1(a){var s,r=this +if(a.p(0,B.Y)){if(a.p(0,B.a4)){s=r.a.gf2().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=r.a.gf2().b +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=r.a.gf2().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}if(a.p(0,B.a4)){s=r.a.gf2().k3.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.N)){s=r.a.gf2().k3.a +return A.Y(20,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.R)){s=r.a.gf2().k3.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}return null}, +$S:47} +A.bem.prototype={ +$1(a){return B.eD.Z(a)}, +$S:146} +A.TQ.prototype={ +gJq(){return 12}, +gfV(){return new A.bQ(new A.bei(this),t.mN)}, +gLI(){return 8}, +gN2(){return 14}, +gaqy(){return 48}, +gaqz(){return 40}, +ga05(){return 60}, +gND(){return B.BX}, +gNK(){return 32}, +gNL(){return 52}, +gNM(){return B.and}, +gaha(){return 300}, +gNC(){return null}} +A.bei.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.L)){if(a.p(0,B.Y)){s=q.a.b.k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}s=q.a.b +r=s.RG +s=(r==null?s.k2:r).a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.Y)){if(a.p(0,B.a4)){s=q.a.b +r=s.e +return r==null?s.c:r}if(a.p(0,B.N)){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.a4)){s=q.a.b +r=s.RG +return r==null?s.k2:r}if(a.p(0,B.N)){s=q.a.b +r=s.RG +return r==null?s.k2:r}if(a.p(0,B.R)){s=q.a.b +r=s.RG +return r==null?s.k2:r}s=q.a.b +r=s.RG +return r==null?s.k2:r}, +$S:9} +A.V3.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.V4.prototype={ +aj(){var s,r=this,q=null +r.aw() +s=A.c2(q,B.T,q,!r.a.c?0:1,r) +r.pB$=s +r.lB$=A.cl(B.ea,s,B.eN) +s=A.c2(q,r.We$,q,q,r) +r.nX$=s +r.v2$=A.cl(B.aQ,s,q) +s=A.c2(q,B.hd,q,r.rt$||r.rs$?1:0,r) +r.yF$=s +r.v3$=A.cl(B.aQ,s,q) +s=A.c2(q,B.hd,q,r.rt$||r.rs$?1:0,r) +r.yG$=s +r.v4$=A.cl(B.aQ,s,q)}, +m(){var s=this,r=s.pB$ +r===$&&A.b() +r.m() +r=s.lB$ +r===$&&A.b() +r.m() +r=s.nX$ +r===$&&A.b() +r.m() +r=s.v2$ +r===$&&A.b() +r.m() +r=s.yF$ +r===$&&A.b() +r.m() +r=s.v3$ +r===$&&A.b() +r.m() +r=s.yG$ +r===$&&A.b() +r.m() +r=s.v4$ +r===$&&A.b() +r.m() +s.aq7()}} +A.anO.prototype={} +A.anP.prototype={} +A.ber.prototype={ +D(){return"_SwitchListTileType."+this.b}} +A.a96.prototype={ +F(a){var s,r,q,p,o,n,m,l=this,k=null +switch(0){case 0:s=new A.a0_(new A.a95(l.c,l.d,k,k,k,k,k,k,k,k,k,k,k,k,B.mP,B.aAY,!1,B.S,k,k,k,k,!1,k),k) +break}$label0$1:{r=new A.b3(k,s) +break $label0$1}q=r.a +p=r.b +o=A.q(a) +n=A.bnR(a) +r=n.a +r=r==null?k:r.Z(A.bn(t.g)) +m=r +if(m==null)m=o.ax.y +return new A.a4_(A.os(!1,k,k,k,!0,k,k,!1,q,k,k,new A.aTt(l),!1,m,k,k,k,k,l.fy,p,k),k)}, +gk(a){return this.c}} +A.aTt.prototype={ +$0(){var s=this.a +s.d.$1(!s.c)}, +$S:0} +A.nt.prototype={ +gB(a){var s=this +return A.a4(s.gkj(),s.got(),s.gvP(),s.gzu(),s.gpQ(),s.ghb(),s.gcI(),s.gjK(),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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.nt)if(b.gkj()==r.gkj())if(b.got()==r.got())if(b.gvP()==r.gvP())if(b.gzu()==r.gzu())if(b.gpQ()==r.gpQ())if(b.ghb()==r.ghb())if(b.gcI()==r.gcI())s=b.gjK()==r.gjK() +return s}, +gkj(){return this.a}, +got(){return this.b}, +gvP(){return this.c}, +gzu(){return this.d}, +gpQ(){return this.e}, +ghb(){return this.f}, +gcI(){return this.r}, +gjK(){return this.w}} +A.al0.prototype={} +A.DT.prototype={ +gB(a){var s=this +return A.a4(s.a,s.gDH(),s.c,s.guL(),s.gD9(),s.gDY(),s.r,s.gnc(),s.gES(),s.gET(),s.gcI(),s.ghf(),s.as,s.gED(),s.ax,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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.DT)if(J.e(b.a,r.a))if(J.e(b.gDH(),r.gDH()))if(b.c==r.c)if(J.e(b.guL(),r.guL()))if(b.gD9()==r.gD9())if(J.e(b.gDY(),r.gDY()))if(J.e(b.r,r.r))if(J.e(b.gnc(),r.gnc()))if(J.e(b.gES(),r.gES()))if(J.e(b.gET(),r.gET()))if(b.gcI()==r.gcI())if(b.ghf()==r.ghf())s=b.gED()==r.gED() +return s}, +gDH(){return this.b}, +guL(){return this.d}, +gD9(){return this.e}, +gDY(){return this.f}, +gnc(){return this.w}, +gES(){return this.x}, +gET(){return this.y}, +gcI(){return this.z}, +ghf(){return this.Q}, +gED(){return this.at}} +A.al5.prototype={} +A.OD.prototype={ +geh(a){var s=this.a +return s==null?null:s}, +a1j(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.T() +q=r.a +q.toString +s=r.d +b.toString +q.z=B.b5 +q.jP(s,b,c).ahR(new A.aTD(r))}else{r.f=s +r.a.sk(0,a);--r.f +r.T()}}, +a1i(a){return this.a1j(a,null,null)}, +sdA(a,b){var s,r=this.a,q=r.x +q===$&&A.b() +s=this.d +if(b===q-s)return +r.sk(0,b+s)}, +m(){var s=this.a +if(s!=null)s.m() +this.a=null +this.dN()}, +gt(a){return this.c}} +A.aTD.prototype={ +$0(){var s=this.a +if(s.a!=null){--s.f +s.T()}}, +$S:0} +A.v5.prototype={ +f6(a,b){var s,r +if(a instanceof A.v5){s=A.bF(a.b,this.b,b) +r=A.fm(a.c,this.c,b) +r.toString +return new A.v5(null,s,r)}return this.P2(a,b)}, +f7(a,b){var s,r +if(a instanceof A.v5){s=A.bF(this.b,a.b,b) +r=A.fm(this.c,a.c,b) +r.toString +return new A.v5(null,s,r)}return this.P3(a,b)}, +y4(a){return new A.bg0(this,this.a,a)}, +HP(a,b){var s=this.c.Z(b).CY(a),r=s.a,q=this.b.b,p=s.d-q +return new A.I(r,p,r+(s.c-r),p+q)}, +F5(a,b){var s,r=this.a +if(r!=null){s=$.ap().cR() +s.hk(r.e9(this.HP(a,b))) +return s}r=$.ap().cR() +r.jT(this.HP(a,b)) +return r}} +A.bg0.prototype={ +jB(a,b,c){var s,r,q,p=c.e,o=b.a,n=b.b,m=new A.I(o,n,o+p.a,n+p.b) +p=c.d +p.toString +o=this.c +n=this.b +s=n.b +if(o!=null){r=$.ap().br() +r.saG(0,s.a) +q=n.HP(m,p) +p=o.a +n=o.b +s=o.d +a.dk(A.a6q(q,o.c,s,p,n),r)}else{r=s.kk() +r.swn(B.ti) +q=n.HP(m,p).eA(-(s.b/2)) +p=q.d +a.k0(new A.z(q.a,p),new A.z(q.c,p),r)}}} +A.aTC.prototype={ +D(){return"TabBarIndicatorSize."+this.b}} +A.aTB.prototype={ +D(){return"TabAlignment."+this.b}} +A.a9a.prototype={ +at3(){var s=null,r=A.X(this.c,s,B.apL,s,!1,s,s,s) +return r}, +F(a){var s=this.at3() +return new A.aB(null,46,A.cL(s,null,1),null)}, +gvw(){return B.anh}} +A.al8.prototype={ +aIZ(a){var s,r,q,p,o,n=null,m={} +A.q(a) +s=A.q(a).cG +r=t.m.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.gDY() +m.a=p +m.b=null +if(p instanceof A.zJ){m.b=p.c.$1(B.jY) +m.a=p.c.$1(B.O5)}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.gES() +q.toString +o=q}m.b=o}return A.vO(new A.beF(m,r))}, +F(a){var s,r,q,p=this,o=null,n=A.q(a).cG,m=t.m.a(p.c),l=p.r,k=l?B.O5:B.jY,j=p.e,i=n.w +if(i==null){i=p.z.gnc() +i.toString}s=i.abL(!0) +i=n.y +j=i==null?j:i +if(j==null){j=p.z.gET() +j.toString}r=j.abL(!0) +if(l){l=A.c9(s,r,m.gk(m)) +l.toString +q=l}else{l=A.c9(r,s,m.gk(m)) +l.toString +q=l}l=p.aIZ(a).c.$1(k) +j=q.cc(l) +return A.kD(A.a10(p.Q,new A.eP(24,o,o,o,o,l,o,o,o)),o,o,B.cs,!0,j,o,o,B.aX)}} +A.beF.prototype={ +$1(a){var s,r,q=this +if(a.p(0,B.Y)){s=q.a +r=q.b +r=A.U(s.a,s.b,r.gk(r)) +r.toString +return r}s=q.a +r=q.b +r=A.U(s.b,s.a,r.gk(r)) +r.toString +return r}, +$S:9} +A.al7.prototype={ +ck(){var s,r,q,p,o=this +o.anf() +s=o.am$ +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.aO$}switch(o.aQ.a){case 0:B.b.rF(r,0,o.gv(0).a) +break +case 1:r.push(o.gv(0).a) +break}q=o.aQ +q.toString +p=o.gv(0) +o.hR.$3(r,q,p.a)}} +A.al6.prototype={ +b6(a){var s=this,r=s.Oc(a) +r.toString +return A.bR4(s.w,s.e,s.f,s.r,s.ax,r,s.y)}, +b9(a,b){this.ams(a,b) +b.hR=this.ax}} +A.RL.prototype={ +aU(){this.ay=!0}, +m(){var s=this.ax +if(s!=null)s.m()}, +aeg(a,b){var s,r,q,p,o,n,m,l,k,j,i=this +switch(i.as.a){case 0:s=i.Q +s=new A.b3(s[b+1],s[b]) +break +case 1:s=i.Q +s=new A.b3(s[b],s[b+1]) +break +default:s=null}r=s.a +q=s.b +if(i.d===B.P1){s=i.f[b] +p=$.aw.aR$.x.h(0,s).gv(0).a +o=i.r[b].Z(i.as) +r+=(q-r-(p+o.gde()))/2+o.a +q=r+p}o=i.e +s=r+(q-r) +n=0+a.b +m=new A.I(r,0,s,n) +l=o.gde() +k=o.gc9(0) +j=o.gci(0) +if(!(s-r>=l&&n>=k+j))throw A.d(A.mP("indicatorPadding insets should be less than Tab Size\nRect Size : "+m.gv(0).j(0)+", Insets: "+o.j(0))) +return o.CY(m)}, +aT(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=null,f=h.ay=!1 +if(h.ax==null)h.ax=h.c.y4(h.gf8()) +s=h.b +r=s.d +s=s.geh(0).x +s===$&&A.b() +q=r>s +p=q?B.d.dv(s):B.d.dZ(s) +o=B.e.iv(p,0,h.Q.length-2) +p=q?o+1:o-1 +n=B.e.iv(p,0,h.Q.length-2) +s=h.at=A.bnu(h.aeg(b,o),h.aeg(b,n),Math.abs(s-o)) +switch(h.d.a){case 1:s.toString +s=h.asq(s) +break +case 0:break +default:s=g}h.at=s +p=s.c +m=s.a +l=s.d +s=s.b +k=h.as +if(h.y){f=h.x +f.toString +f=f>0}if(f){j=$.ap().br() +f=h.w +f.toString +j.saG(0,f) +f=h.x +f.toString +j.shw(f) +f=b.b +a.k0(new A.z(0,f-j.ghw()/2),new A.z(b.a,f-j.ghw()/2),j)}f=h.ax +f.toString +i=h.at +f.jB(a,new A.z(i.a,i.b),new A.q7(g,h.z,g,k,new A.R(p-m,l-s),g))}, +asq(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.b +if(h.geh(0).gbi(0)===B.am)return a +s=h.d +r=h.geh(0).x +r===$&&A.b() +q=A.bu("tabChangeProgress") +p=Math.abs(s-r) +if(h.f!==0){o=Math.abs(h.d-h.e) +q.b=1-A.M(o!==0?p/o:p,0,1)}else q.b=p +if(J.e(q.b2(),1))return a +h=a.c +r=a.a +n=i.ch +if(n===$){m=t.Y +l=t.Ns +k=A.aV2(A.a([new A.hP(new A.b0(0,1,m),20,l),new A.hP(new A.b0(1,0,m),80,l)],t.x0),t.i) +i.ch!==$&&A.aH() +i.ch=k +n=k}j=(h-r)*n.al(0,q.b2())/2 +return new A.I(r-j,a.b,h+j,a.d)}, +ff(a){var s=this +return s.ay||s.b!==a.b||!s.c.l(0,a.c)||s.f.length!==a.f.length||!A.d7(s.Q,a.Q)||s.as!=a.as}} +A.adp.prototype={ +gbt(a){var s=this.a.geh(0) +s.toString +return s}, +dX(a){if(this.a.geh(0)!=null)this.ZY(a)}, +K(a,b){if(this.a.geh(0)!=null)this.ZX(0,b)}, +gk(a){return A.bTc(this.a)}} +A.EP.prototype={ +gbt(a){var s=this.a.geh(0) +s.toString +return s}, +dX(a){if(this.a.geh(0)!=null)this.ZY(a)}, +K(a,b){if(this.a.geh(0)!=null)this.ZX(0,b)}, +gk(a){var s=this.a,r=s.geh(0).x +r===$&&A.b() +return A.M(Math.abs(A.M(r,0,s.c-1)-this.b),0,1)}} +A.bew.prototype={} +A.OC.prototype={ +gvw(){var s,r,q +for(s=this.c,r=46,q=0;q<2;++q)r=Math.max(s[q].gvw().b,r) +return new A.R(1/0,r+2)}, +gb00(){var s,r,q +for(s=this.c,r=0;r<2;++r){q=s[r] +if(q.gvw().b===72)return!0}return!1}, +a0(){return new A.TS()}} +A.TS.prototype={ +aj(){var s,r,q=this +q.aw() +s=q.a.c +r=A.af(s).i("ad<1,jp>>") +q.x=A.a8(new A.ad(s,new A.beB(),r),!0,r.i("aN.E")) +q.a.toString +q.y=A.bO(2,B.Z,!0,t.A0)}, +glc(){var s=null,r=this.c +r.toString +A.q(r) +this.a.toString +r=this.c +r.toString +return new A.beG(r,!1,s,s,B.P1,s,s,s,s,s,s,s,s,s,s,s,s)}, +ayF(a){var s,r,q,p,o,n=this,m=null,l=n.c +l.toString +A.q(l) +l=n.c +l.toString +s=A.q(l).cG +n.a.toString +l=s.a +if(l!=null)return l +r=s.b +if(r==null)r=n.glc().gDH() +n.a.toString +l=r.gk(r) +q=n.c +q.toString +q=A.aFq(q,t.zd) +if(q==null)q=m +else{q=q.af +q=q==null?m:q.gk(q)}q=l===q +l=q +if(l)r=B.n +n.a.toString +switch(!0){case!0:l=A.bR5(a) +break +case!1:l=2 +break +default:l=m}p=Math.max(2,A.iE(l)) +switch(a.a){case 1:l=!0 +break +case 0:l=!1 +break +default:l=m}o=l?new A.cY(new A.bg(p,p),new A.bg(p,p),B.B,B.B):m +return new A.v5(o,new A.br(r,p,B.I,-1),B.Z)}, +gtM(){var s=this.e +return(s==null?null:s.geh(0))!=null}, +C0(){var s,r=this,q=r.a.d +if(q===r.e)return +if(r.gtM()){r.e.geh(0).K(0,r.gtS()) +r.e.K(0,r.gRS())}r.e=q +s=q.geh(0) +s.ct() +s=s.dR$ +s.b=!0 +s.a.push(r.gtS()) +r.e.a4(0,r.gRS()) +r.r=r.e.d}, +S4(){var s,r,q,p,o,n,m,l,k,j=this,i=j.c +i.toString +A.q(i) +i=j.c +i.toString +s=A.q(i).cG +j.a.toString +r=s.c +if(r==null){i=j.glc().c +i.toString +r=i}q=j.f +if(!j.gtM())i=null +else{i=j.e +i.toString +p=j.ayF(r) +j.a.toString +o=j.x +o===$&&A.b() +n=j.y +n===$&&A.b() +m=s.d +if(m==null)m=j.glc().guL() +j.a.toString +l=j.glc().gD9() +j.a.toString +k=j.c +k.toString +i=new A.RL(i,p,r,B.Z,o,n,m,l,!0,A.cr(k,B.e7,t.l).w.b,i.geh(0)) +if(q!=null){p=q.Q +o=q.as +i.Q=p +i.as=o}}j.f=i +if(q!=null)q.m()}, +c1(){this.ea() +this.C0() +this.S4()}, +b1(a){var s,r,q,p,o,n,m=this +m.bb(a) +if(m.a.d!==a.d){m.C0() +m.S4() +s=m.d +if(s!=null&&s.f.length!==0){r=B.b.gd_(s.f) +if(r instanceof A.bew)r.U=!0}}else{s=!0 +s=B.Z.l(0,B.Z) +if(s)m.a.toString +s=!s +if(s)m.S4()}m.a.toString +s=m.x +s===$&&A.b() +q=s.length +if(2>q){p=2-q +o=J.mU(p,t.yi) +for(q=t.A,n=0;n0){j=o-1 +o=a5.e +o.toString +m=A.a([],t.x8) +p[j]=a5.Av(p[j],!1,new A.la(new A.EP(o,j),new A.bV(m,t.jc),0),a5.glc())}o=a5.r +o.toString +a5.a.toString +if(o<1){j=o+1 +o=a5.e +o.toString +m=A.a([],t.x8) +p[j]=a5.Av(p[j],!1,new A.la(new A.EP(o,j),new A.bV(m,t.jc),0),a5.glc())}}}a5.a.toString +for(o=r===B.P0,m=t.p,l=s.z,i=t.b,h=t.GE,g=t.g,f=l==null,e=0;e<2;e=a2){d=A.bn(g) +if(e===a5.r)d.q(0,B.Y) +a5.a.toString +c=A.dH(a6,d,h) +if(c==null)b=a6 +else b=c +if(b==null)b=B.eD.Z(d) +a=new A.bQ(new A.bez(a5,d),i) +a5.a.toString +d=f?a:l +c=a5.glc().ghf() +a5.a.toString +a0=p[e] +a1=a5.r +a2=e+1 +a3=q.agX(2,a2) +d=A.eQ(!1,a6,!0,new A.be(new A.al(0,0,0,2),new A.m6(B.a2,a6,B.W,B.w,A.a([a0,new A.ck(new A.a85(a6,a6,a6,a6,a6,e===a1,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a3,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6,a6),!1,!1,!1,!1,a6,a6)],m),a6),a6),a6,!0,a6,a6,a6,a6,b,a6,a6,a6,a6,new A.beA(a5,e),d,a6,c,a6) +p[e]=d +a5.a.toString +if(o)p[e]=new A.Bd(1,B.lv,d,a6)}q=a5.f +m=a5.glc() +o=o?B.k:B.aE +a4=A.fB(A.bxQ(B.cT,new A.al6(a5.gaJk(),B.aN,B.o,o,B.l,a6,B.r,a6,p,a6),m,!0,!1,a6,a6,a6,a6),a6,a6,q,B.V) +a5.a.toString +q=A.cr(a7,a6,t.l).w +a5.a.toString +return A.C9(a4,q.abR(s.ax))}} +A.beB.prototype={ +$1(a){return new A.bG(null,t.A)}, +$S:379} +A.bex.prototype={ +$0(){}, +$S:0} +A.bey.prototype={ +$1(a){var s,r=null,q=this.a,p=q.a,o=p.c[a],n=r +if(p.gb00()&&o.gvw().b===46){q.a.toString +p=this.b.r +if(p!=null)n=p.q(0,B.a_j) +else n=B.a_C}p=q.y +p===$&&A.b() +if(n==null){q.a.toString +s=r}else s=n +if(s==null)s=this.b.r +if(s==null)s=B.bV +p[a]=s +p=q.x +p===$&&A.b() +p=p[a] +return A.cL(new A.be(s,new A.lP(q.a.c[a],p),r),1,r)}, +$S:380} +A.bez.prototype={ +$1(a){var s,r=this.b +r.G(0,a) +s=this.a.glc().gcI() +return s==null?null:s.Z(r)}, +$S:47} +A.beA.prototype={ +$0(){var s=this.a,r=s.e,q=r.b +r.a1j(this.b,B.bk,q) +s.a.toString}, +$S:0} +A.yK.prototype={ +a0(){return new A.TT()}} +A.TT.prototype={ +gtM(){var s=this.d +return(s==null?null:s.geh(0))!=null}, +C0(){var s,r=this,q=r.a.c +if(q===r.d)return +if(r.gtM())r.d.geh(0).K(0,r.gtS()) +r.d=q +s=q.geh(0) +s.ct() +s=s.dR$ +s.b=!0 +s.a.push(r.gtS())}, +HY(a){++this.w +this.e.o5(a);--this.w}, +At(a,b,c){return this.ash(a,b,c)}, +ash(a,b,c){var s=0,r=A.n(t.H),q=this +var $async$At=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:++q.w +s=2 +return A.f(q.e.UD(a,b,c),$async$At) +case 2:--q.w +return A.l(null,r)}}) +return A.m($async$At,r)}, +aj(){this.aw() +this.f=A.aDp(this.a.d)}, +c1(){var s,r,q=this +q.ea() +q.C0() +s=q.r=q.d.d +r=q.e +if(r==null){q.a.toString +q.e=A.xU(s,1)}else r.o5(s)}, +b1(a){var s,r=this +r.bb(a) +if(r.a.c!==a.c){r.C0() +s=r.d.d +r.r=s +r.HY(s)}s=r.a +s=s.d +if(s!==a.d&&r.w===0)r.f=A.aDp(s)}, +m(){var s,r=this +if(r.gtM())r.d.geh(0).K(0,r.gtS()) +r.d=null +s=r.e +if(s!=null)s.m() +r.ar()}, +RR(){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.aNo()}}, +aNo(){var s,r,q,p=this +if(p.c!=null){s=t.gQ.a(B.b.gd_(p.e.f)).gpW(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.Jj(r) +else p.Jk(r)}, +Jj(a){return this.aNn(a)}, +aNn(a){var s=0,r=A.n(t.H),q,p=this,o +var $async$Jj=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=p.r +s=a.a===B.F.a?3:5 +break +case 3:o.toString +p.HY(o) +s=4 +break +case 5:o.toString +s=6 +return A.f(p.At(o,B.bk,a),$async$Jj) +case 6:case 4:if(p.c!=null)p.J(new A.beC(p)) +q=A.c7(null,t.H) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Jj,r)}, +Jk(a){return this.aNp(a)}, +aNp(a){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$Jk=A.j(function(b,c){if(b===1)return A.k(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.J(new A.beD(q,p,o)) +q.HY(p) +n=q.r +s=a.a===B.F.a?2:4 +break +case 2:n.toString +q.HY(n) +s=3 +break +case 4:n.toString +s=5 +return A.f(q.At(n,B.bk,a),$async$Jk) +case 5:case 3:if(q.c!=null)q.J(new A.beE(q)) +return A.l(null,r)}}) +return A.m($async$Jk,r)}, +a8l(){var s,r=this.d +r.toString +s=t.gQ.a(B.b.gd_(this.e.f)).gpW(0) +s.toString +r.sdA(0,A.M(s-this.d.d,-1,1))}, +aLx(a){var s,r,q=this +if(q.w>0||q.x>0)return!1 +if(a.j2$!==0)return!1 +if(!q.gtM())return!1;++q.x +s=t.gQ.a(B.b.gd_(q.e.f)).gpW(0) +s.toString +if(a instanceof A.jA&&q.d.f===0){r=q.d +if(Math.abs(s-r.d)>1){r.a1i(B.d.aa(s)) +q.r=q.d.d}q.a8l()}else if(a instanceof A.lc){r=q.d +r.toString +r.a1i(B.d.aa(s)) +s=q.d +q.r=s.d +if(s.f===0)q.a8l()}--q.x +return!1}, +F(a){var s,r=this,q=r.a,p=r.e +q=B.Jw.mV(q.e) +s=r.f +s===$&&A.b() +return new A.ea(r.gaLw(),A.a5s(s,B.w,p,B.S,null,new A.CG(q),B.aN),null,t.WA)}} +A.beC.prototype={ +$0(){var s=this.a +s.f=A.aDp(s.a.d)}, +$S:0} +A.beD.prototype={ +$0(){var s,r,q=this.a,p=q.f +p===$&&A.b() +p=q.f=A.a8(p,!1,t.l7) +q=this.b +s=p[q] +r=this.c +p[q]=p[r] +p[r]=s}, +$S:0} +A.beE.prototype={ +$0(){var s=this.a +s.f=A.aDp(s.a.d)}, +$S:0} +A.beG.prototype={ +gnE(){var s,r=this,q=r.ch +if(q===$){s=A.q(r.ay) +r.ch!==$&&A.aH() +q=r.ch=s.ax}return q}, +ga8o(){var s,r=this,q=r.CW +if(q===$){s=A.q(r.ay) +r.CW!==$&&A.aH() +q=r.CW=s.p2}return q}, +guL(){var s=this.gnE(),r=s.to +if(r==null){r=s.a2 +s=r==null?s.k3:r}else s=r +return s}, +gD9(){return 1}, +gDH(){return this.gnE().b}, +gDY(){return this.gnE().b}, +gnc(){return this.ga8o().x}, +gES(){var s=this.gnE(),r=s.rx +return r==null?s.k3:r}, +gET(){return this.ga8o().x}, +gcI(){return new A.bQ(new A.beH(this),t.b)}, +ghf(){return A.q(this.ay).y}, +gED(){return B.P0}} +A.beH.prototype={ +$1(a){var s,r=this +if(a.p(0,B.Y)){if(a.p(0,B.a4)){s=r.a.gnE().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=r.a.gnE().b +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=r.a.gnE().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}if(a.p(0,B.a4)){s=r.a.gnE().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=r.a.gnE().k3.a +return A.Y(20,s>>>16&255,s>>>8&255,s&255)}if(a.p(0,B.R)){s=r.a.gnE().k3.a +return A.Y(B.d.aa(25.5),s>>>16&255,s>>>8&255,s&255)}return null}, +$S:47} +A.amR.prototype={} +A.amW.prototype={} +A.a9l.prototype={ +y6(a){var s=null +A.q(a) +A.q(a) +return new A.alh(a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,B.T,!0,B.O,s,s,s)}, +Nz(a){var s=a.au(t.if),r=s==null?null:s.w +return(r==null?A.q(a).eN:r).a}} +A.TW.prototype={ +Z(a){if(a.p(0,B.L))return this.b +return this.a}, +j(a){return"{disabled: "+A.c(this.b)+", otherwise: "+A.c(this.a)+"}"}} +A.alg.prototype={ +Z(a){var s +if(a.p(0,B.a4)){s=this.a +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=this.a +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=this.a +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}, +j(a){var s=this.a +return"{hovered: "+A.Y(10,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255).j(0)+", focused,pressed: "+A.Y(31,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255).j(0)+", otherwise: null}"}} +A.alf.prototype={ +Z(a){if(a.p(0,B.L))return this.b +return this.a}} +A.alh.prototype={ +gBU(){var s,r=this,q=r.fy +if(q===$){s=A.q(r.fx) +r.fy!==$&&A.aH() +q=r.fy=s.ax}return q}, +ghK(){return new A.bK(A.q(this.fx).p2.as,t.RP)}, +gco(a){return B.bO}, +gfw(){return new A.bQ(new A.bf3(this),t.b)}, +gcI(){return new A.bQ(new A.bf5(this),t.b)}, +gcW(a){return B.bO}, +gdr(){return B.bO}, +geK(a){return B.ic}, +gdW(a){return new A.bK(A.bU7(this.fx),t.mD)}, +gjz(){return B.tV}, +gjy(){return B.fJ}, +gcC(a){return B.fI}, +ghb(){return new A.bQ(new A.bf4(),t.B_)}, +gfX(){return A.q(this.fx).Q}, +gjD(){return A.q(this.fx).f}, +ghf(){return A.q(this.fx).y}} +A.bf3.prototype={ +$1(a){var s +if(a.p(0,B.L)){s=this.a.gBU().k3.a +return A.Y(97,s>>>16&255,s>>>8&255,s&255)}return this.a.gBU().b}, +$S:9} +A.bf5.prototype={ +$1(a){var s +if(a.p(0,B.a4)){s=this.a.gBU().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.N)){s=this.a.gBU().b +return A.Y(20,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}if(a.p(0,B.R)){s=this.a.gBU().b +return A.Y(B.d.aa(25.5),s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255)}return null}, +$S:47} +A.bf4.prototype={ +$1(a){if(a.p(0,B.L))return B.cg +return B.dt}, +$S:61} +A.anQ.prototype={} +A.DV.prototype={ +gB(a){return J.W(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.DV&&J.e(b.a,this.a)}} +A.OL.prototype={ +tc(a,b,c){return A.bwk(c,this.w)}, +dY(a){return!this.w.l(0,a.w)}} +A.ali.prototype={} +A.all.prototype={ +Xr(a){var s +this.aoc(a) +s=this.a +if(s.a.bx&&s.gh4()&&this.b){s=s.y.gad() +s.toString +s.lQ()}}, +aY9(a){}, +aYQ(){this.w.a.toString}, +Xx(a){var s,r +this.aod(a) +s=this.a +if(s.a.bx&&s.gh4()){s=this.w +r=s.c +r.toString +switch(A.q(r).w.a){case 2:case 4:break +case 0:case 1:case 3:case 5:s=s.c +s.toString +A.bm1(s) +break}}}} +A.OP.prototype={ +a0(){var s=null +return new A.TX(new A.bG(s,t.NE),s,A.w(t.yb,t.M),s,!0,s)}} +A.TX.prototype={ +gny(){var s=this.a.e +return s}, +gfF(){var s=this.a.f +if(s==null){s=this.e +if(s==null){s=A.kK(!0,null,!0,!0,null,null,!1) +this.e=s}}return s}, +ga2W(){var s=this.a.k3 +if(s==null){s=this.c +s.toString +A.q(s) +s=B.agK}return s}, +gh4(){var s=this.a,r=s.p4 +if(r==null)s=s.r.a2 +else s=r +return s}, +ga4O(){var s=this.a.k2,r=!1 +if(s!=null)if(s>0){s=this.gny().a.a +s=(s.length===0?B.bN:new A.ev(s)).gt(0) +r=this.a.k2 +r.toString +r=s>r +s=r}else s=r +else s=r +return s}, +gtT(){var s=this.a.r +if(s.ch==null)s=this.ga4O() +else s=!0 +return s}, +gAS(){this.a.toString +this.a3z() +var s=this.c +s.toString +s=A.q(s) +return s.ax.fy}, +a3z(){var s,r,q,p,o,n,m,l,k,j=this,i=j.c +i.toString +i=A.hE(i,B.bu,t.C) +i.toString +s=j.c +s.toString +r=A.q(s) +s=j.a.r +s=s.aaC(r.e) +q=j.gh4() +p=j.a +o=p.r.at +n=s.aQy(q,o==null?p.fr:o) +s=n.R8==null +if(!s||n.p4!=null)return n +q=j.gny().a.a +m=(q.length===0?B.bN:new A.ev(q)).gt(0) +if(s)if(n.p4==null)j.a.toString +s=j.a.k2 +if(s==null)return n +l=""+m +if(s>0){l+="/"+A.c(s) +k=i.agl(B.e.iv(s-m,0,s))}else k="" +if(j.ga4O()){i=n.ch +if(i==null)i="" +s=n.CW +s=j.c +s.toString +q=A.q(s).p2.Q +q.toString +s=q.cc(A.q(s).ax.fy) +return n.aQM(s,l,i,k)}return n.aQx(l,k)}, +aj(){var s,r,q=this +q.aw() +q.w=new A.all(q,q) +q.a.toString +s=q.gfF() +q.a.toString +r=q.gh4() +s.snK(r) +q.gfF().a4(0,q.gJ1()) +q.aDq()}, +ga8B(){var s,r=this.c +r.toString +r=A.de(r,B.ik) +s=r==null?null:r.ch +switch((s==null?B.hR:s).a){case 0:this.a.toString +r=this.gh4() +break +case 1:r=!0 +break +default:r=null}return r}, +c1(){this.aqs() +this.gfF().snK(this.ga8B())}, +b1(a){var s,r,q=this +q.aqt(a) +s=q.a +r=a.f +if(s.f!=r){s=r==null?q.e:r +if(s!=null)s.K(0,q.gJ1()) +s=q.a.f +if(s==null)s=q.e +if(s!=null)s.a4(0,q.gJ1())}q.gfF().snK(q.ga8B()) +if(q.gfF().gcN())q.a.toString +q.a.toString +q.gjl().fc(0,B.L,!q.gh4()) +q.gjl().fc(0,B.N,q.f) +q.gjl().fc(0,B.R,q.gfF().gcN()) +q.gjl().fc(0,B.cN,q.gtT())}, +nk(a,b){var s=this.d +if(s!=null)this.vC(s,"controller")}, +ghJ(){this.a.toString +return null}, +m(){var s,r=this +r.gfF().K(0,r.gJ1()) +s=r.e +if(s!=null)s.m() +s=r.d +if(s!=null){s.b1D() +s.b1z()}r.gjl().K(0,r.ga4F()) +s=r.z +if(s!=null){s.U$=$.aW() +s.M$=0}r.aqu()}, +a74(){var s=this.y.gad() +if(s!=null)s.Nr()}, +aKq(a){var s=this,r=s.w +r===$&&A.b() +if(!r.b)return!1 +if(a===B.b2)return!1 +s.a.toString +if(!s.gh4())return!1 +if(a===B.cK||a===B.nj)return!0 +if(s.gny().a.a.length!==0)return!0 +return!1}, +aLE(){this.J(new A.bf7()) +this.gjl().fc(0,B.R,this.gfF().gcN())}, +aBP(a,b){var s,r=this,q=r.aKq(b) +if(q!==r.r)r.J(new A.bf9(r,q)) +s=r.c +s.toString +switch(A.q(s).w.a){case 2:case 4:case 3:case 5:case 1:case 0:if(b===B.cK){s=r.y.gad() +if(s!=null)s.m2(a.gfh())}break}s=r.c +s.toString +switch(A.q(s).w.a){case 2:case 1:case 0:break +case 4:case 3:case 5:if(b===B.b4){s=r.y.gad() +if(s!=null)s.k8()}break}}, +aBV(){var s=this.gny().a.b +if(s.a===s.b)this.y.gad().ahb()}, +a4o(a){var s=this +if(a!==s.f){s.J(new A.bf8(s,a)) +s.gjl().fc(0,B.N,s.f)}}, +aCf(){this.J(new A.bfa())}, +gjl(){this.a.toString +var s=this.z +s.toString +return s}, +aDq(){var s=this +s.a.toString +s.z=A.aX2(null) +s.gjl().fc(0,B.L,!s.gh4()) +s.gjl().fc(0,B.N,s.f) +s.gjl().fc(0,B.R,s.gfF().gcN()) +s.gjl().fc(0,B.cN,s.gtT()) +s.gjl().a4(0,s.ga4F())}, +gq3(){var s,r,q,p,o,n=this +n.a.toString +s=J.qc(B.hz.slice(0),t.N) +if(s!=null){r=n.y.gad() +r.toString +r=A.at(r) +q=n.gny().a +p=n.a.r +o=new A.H6(!0,"EditableText-"+r,s,q,p.z)}else o=B.uy +r=n.y.gad().gq3() +return A.bwm(r.ay,r.e,o,!1,!0,r.y,!0,r.Q,r.b,r.at,!1,r.c,r.r,r.w,r.as,r.a)}, +F(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={},c5=A.q(c7),c6=c7.au(t.Uf) +if(c6==null)c6=B.h6 +s=A.dH(c2.a.z,c2.gjl().a,t.p8) +r=A.q(c7).p2.y +r.toString +q=c2.c +q.toString +A.q(q) +q=c2.c +q.toString +q=A.bTD(q) +p=t.em +o=A.dH(q,c2.gjl().a,p) +n=A.dH(r,c2.gjl().a,p).cO(o).cO(s) +c2.a.toString +r=c5.ax +m=c2.gny() +l=c2.gfF() +q=t.VS +p=A.a([],q) +k=c2.a.p3 +if(k!=null)B.b.G(p,k) +k=c2.a.k2 +if(k!=null)p.push(new A.a1I(k,c2.ga2W())) +switch(A.bY().a){case 2:case 4:c2.a.toString +j=A.bGE(c3) +break +case 0:case 1:case 3:case 5:c2.a.toString +j=A.bOi(c3) +break +default:j=c3}c2.a.toString +c4.a=c4.b=null +i=!1 +h=!1 +g=c3 +f=c3 +e=c3 +switch(c5.w.a){case 2:d=A.I5(c7) +c2.x=!0 +c=$.bEg() +if(c2.gtT())b=c2.gAS() +else{k=c2.a.x1 +if(k==null)k=c6.w +b=k==null?d.gj6():k}a=c6.x +if(a==null){c6=d.gj6() +a=A.Y(102,c6.gk(c6)>>>16&255,c6.gk(c6)>>>8&255,c6.gk(c6)&255)}g=new A.z(-2/A.cr(c7,B.e7,t.l).w.b,0) +f=a +i=!0 +h=!0 +e=B.i_ +break +case 4:d=A.I5(c7) +h=c2.x=!1 +c=$.bEf() +if(c2.gtT())b=c2.gAS() +else{k=c2.a.x1 +if(k==null)k=c6.w +b=k==null?d.gj6():k}a=c6.x +if(a==null){c6=d.gj6() +a=A.Y(102,c6.gk(c6)>>>16&255,c6.gk(c6)>>>8&255,c6.gk(c6)&255)}g=new A.z(-2/A.cr(c7,B.e7,t.l).w.b,0) +c4.b=new A.bfd(c2) +c4.a=new A.bfe(c2) +i=!0 +e=B.i_ +break +case 0:case 1:c2.x=!1 +c=$.bEm() +if(c2.gtT())b=c2.gAS() +else{k=c2.a.x1 +if(k==null)k=c6.w +b=k==null?r.b:k}a=c6.x +if(a==null){c6=r.b +a=A.Y(102,c6.gk(c6)>>>16&255,c6.gk(c6)>>>8&255,c6.gk(c6)&255)}break +case 3:c2.x=!1 +c=$.bqt() +if(c2.gtT())b=c2.gAS() +else{k=c2.a.x1 +if(k==null)k=c6.w +b=k==null?r.b:k}a=c6.x +if(a==null){c6=r.b +a=A.Y(102,c6.gk(c6)>>>16&255,c6.gk(c6)>>>8&255,c6.gk(c6)&255)}c4.b=new A.bff(c2) +c4.a=new A.bfg(c2) +break +case 5:c2.x=!1 +c=$.bqt() +if(c2.gtT())b=c2.gAS() +else{k=c2.a.x1 +if(k==null)k=c6.w +b=k==null?r.b:k}a=c6.x +if(a==null){c6=r.b +a=A.Y(102,c6.gk(c6)>>>16&255,c6.gk(c6)>>>8&255,c6.gk(c6)&255)}c4.b=new A.bfh(c2) +c4.a=new A.bfi(c2) +break +default:a=c3 +b=a +h=b +i=h +c=i}c6=c2.dd$ +c2.a.toString +k=c2.gh4() +a0=!k +a1=c2.a +a2=a1.k1 +a3=c2.r +a4=a1.w +a5=a1.x +a6=a1.as +a7=a1.ay +a8=a1.cy +a9=a1.db +b0=a1.dx +a1=a1.fr +b1=l.gcN()?a:c3 +b2=c2.a +b3=b2.bx +b4=b3?c:c3 +b5=b2.k4 +b6=b2.p1 +b7=b2.A +b2=b2.rx +b8=$.bCx() +if(t.qY.b(b4))b9=B.Po +else b9=a0?B.aux:B.auy +if(a1===1){q=A.a([$.bBm()],q) +B.b.G(q,p)}else q=p +p=a2==null?k:a2 +b8=A.a9V(c6,new A.B2(m,l,"\u2022",!1,a0,b9,a3,p,a8,a9,b0,!0,n,c3,c3,a6,c3,B.apg,b,f,B.iR,a1,c3,!1,a7,b1,b4,a4,a5,b5,c3,b6,c3,c2.gaBO(),c2.gaBU(),B.kb,b7,q,B.cU,!0,2,b2,e,h,g,i,B.iw,B.fT,r.a,B.wU,b3,B.S,c3,c3,!0,c2,B.w,"editable",!0,c3,A.bXP(),j,b8,c2.y)) +c2.a.toString +c0=A.lw(new A.zp(A.a([l,m],t.Eo)),new A.bfj(c2,l,m),new A.lY(b8,c3)) +c2.a.toString +c1=A.dH(B.azZ,c2.gjl().a,t.Pb) +c4.c=null +if(c2.ga2W()!==B.agI){c6=c2.a.k2 +c6=c6!=null&&c6>0}else c6=!1 +if(c6)c4.c=c2.a.k2 +c2.a.toString +c6=c2.gh4() +r=c2.w +r===$&&A.b() +q=r.a.x +q===$&&A.b() +p=q?r.gaYa():c3 +q=q?r.gaY8():c3 +r.w.a.toString +return A.ov(A.a9r(A.ok(A.lw(m,new A.bfk(c4,c2),new A.OV(r.gaYK(),r.gaYI(),r.gaYG(),p,q,r.gaYq(),r.gaYs(),r.gaYD(),r.gaYB(),r.gaYP(),r.gaYA(),r.gaYy(),r.gaYw(),r.gaXW(),r.gaYN(),r.gaY_(),r.gaY1(),r.gaXY(),!1,B.d0,c0,c3)),!c6,c3),c3,B.kb,c3),c1,c3,new A.bfl(c2),new A.bfm(c2),c3)}} +A.bf7.prototype={ +$0(){}, +$S:0} +A.bf9.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.bf8.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.bfa.prototype={ +$0(){}, +$S:0} +A.bfd.prototype={ +$0(){var s,r=this.a +if(!r.gfF().gcN()){s=r.gfF() +s=s.b&&B.b.hr(s.gew(),A.hq())}else s=!1 +if(s)r.gfF().iI()}, +$S:0} +A.bfe.prototype={ +$0(){this.a.gfF().jb()}, +$S:0} +A.bff.prototype={ +$0(){var s,r=this.a +if(!r.gfF().gcN()){s=r.gfF() +s=s.b&&B.b.hr(s.gew(),A.hq())}else s=!1 +if(s)r.gfF().iI()}, +$S:0} +A.bfg.prototype={ +$0(){this.a.gfF().jb()}, +$S:0} +A.bfh.prototype={ +$0(){var s,r=this.a +if(!r.gfF().gcN()){s=r.gfF() +s=s.b&&B.b.hr(s.gew(),A.hq())}else s=!1 +if(s)r.gfF().iI()}, +$S:0} +A.bfi.prototype={ +$0(){this.a.gfF().jb()}, +$S:0} +A.bfj.prototype={ +$2(a,b){var s,r,q,p=this.a,o=p.a3z(),n=p.a,m=n.z +n=n.as +s=p.f +r=this.b.gcN() +q=this.c.a.a +p.a.toString +return A.bJx(m,b,o,!1,q.length===0,r,s,n,null)}, +$S:384} +A.bfl.prototype={ +$1(a){return this.a.a4o(!0)}, +$S:67} +A.bfm.prototype={ +$1(a){return this.a.a4o(!1)}, +$S:62} +A.bfk.prototype={ +$2(a,b){var s,r,q=null,p=this.b,o=p.gh4(),n=this.a,m=n.c,l=p.gny().a.a +l=(l.length===0?B.bN:new A.ev(l)).gt(0) +p.a.toString +s=n.b +n=n.a +r=p.gh4()?new A.bfb(p):q +return new A.ck(A.cJ(q,q,q,q,q,q,q,l,q,q,o,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,m,q,q,q,q,q,q,q,s,n,q,r,q,q,q,q,q,q,q,q,q,q,q,new A.bfc(p),q,q,q,q,q,q,q,q,q,q,q),!1,!1,!1,!1,b,q)}, +$S:212} +A.bfc.prototype={ +$0(){var s=this.a +if(!s.gny().a.b.gce())s.gny().szW(A.r6(B.q,s.gny().a.a.length)) +s.a74()}, +$S:0} +A.bfb.prototype={ +$0(){var s=this.a,r=s.gfF() +if(r.b&&B.b.hr(r.gew(),A.hq())&&!s.gfF().gcN())s.gfF().iI() +else{s.a.toString +s.a74()}}, +$S:0} +A.bi6.prototype={ +$1(a){var s,r=null +if(a.p(0,B.L)){s=A.q(this.a).p2.y.b +return A.cb(r,r,s==null?r:A.Y(97,s.gk(s)>>>16&255,s.gk(s)>>>8&255,s.gk(s)&255),r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r)}return A.cb(r,r,A.q(this.a).p2.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:76} +A.bhc.prototype={ +$2(a,b){if(!a.a)a.K(0,b)}, +$S:83} +A.Vi.prototype={ +b1(a){this.bb(a) +this.yd()}, +c1(){var s,r,q,p,o=this +o.ea() +s=o.dd$ +r=o.gvI() +q=o.c +q.toString +q=A.yi(q) +o.kM$=q +p=o.uh(q,r) +if(r){o.nk(s,o.iz$) +o.iz$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.kL$.az(0,new A.bhc()) +s=r.dd$ +if(s!=null)s.m() +r.dd$=null +r.ar()}} +A.a3Q.prototype={} +A.aI5.prototype={ +zI(a){return B.ana}, +JO(a,b,c,d){var s,r,q,p=null,o=A.q(a) +a.au(t.bZ) +s=A.q(a) +r=s.f5.c +if(r==null)r=o.ax.b +q=new A.aB(22,22,A.fB(A.fn(B.d0,p,B.S,!1,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,d,p,p,p,p,p,p,!1,B.aV),p,p,new A.alo(r,p),B.V),p) +switch(b.a){case 0:s=A.Eb(1.5707963267948966,q) +break +case 1:s=q +break +case 2:s=A.Eb(0.7853981633974483,q) +break +default:s=p}return s}, +zH(a,b){var s +switch(a.a){case 2:s=B.aiS +break +case 0:s=B.aiW +break +case 1:s=B.j +break +default:s=null}return s}} +A.alo.prototype={ +aT(a,b){var s,r,q,p,o=$.ap(),n=o.br() +n.saG(0,this.b) +s=b.a/2 +r=A.nc(new A.z(s,s),s) +q=0+s +p=o.cR() +p.pe(r) +p.jT(new A.I(0,0,q,q)) +a.eJ(p,n)}, +ff(a){return!this.b.l(0,a.b)}} +A.ah4.prototype={} +A.OY.prototype={ +gB(a){return A.a4(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.ah(b)!==A.K(s))return!1 +return b instanceof A.OY&&J.e(b.a,s.a)&&J.e(b.b,s.b)&&J.e(b.c,s.c)}} +A.alp.prototype={} +A.a9y.prototype={ +F(a){var s=this.c.ai(0,B.rd),r=this.d.ab(0,B.aiO),q=A.cr(a,B.cQ,t.l).w.r.b+8,p=44<=s.b-8-q,o=new A.z(8,q) +return new A.be(new A.al(8,q,8,8),new A.kz(new A.a9z(s.ai(0,o),r.ai(0,o),p),new A.U1(this.e,p,A.bXR(),null),null),null)}} +A.U1.prototype={ +a0(){return new A.alu(new A.kl(),null,null)}, +b0l(a,b){return this.e.$2(a,b)}} +A.alu.prototype={ +b1(a){var s=this +s.bb(a) +if(!A.d7(s.a.c,a.c)){s.e=new A.kl() +s.d=!1}}, +F(a){var s,r,q,p,o,n,m,l=this,k=null,j=A.hE(a,B.bu,t.C) +j.toString +s=l.e +r=l.d +q=a.au(t.I) +q.toString +p=l.a +o=p.d +n=l.d +m=A.hD(n?B.xF:B.a1g,k,k,k) +j=n?j.gbf():j.gbk() +j=A.a([new A.alt(m,new A.bfD(l),j,k)],t.p) +B.b.G(j,l.a.c) +return new A.alv(r,q.w,A.br1(p.b0l(a,new A.alr(o,n,j,k)),B.X,B.ZP),s)}} +A.bfD.prototype={ +$0(){var s=this.a +s.J(new A.bfC(s))}, +$S:0} +A.bfC.prototype={ +$0(){var s=this.a +s.d=!s.d}, +$S:0} +A.alv.prototype={ +b6(a){var s=new A.alw(this.e,this.f,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sXA(this.e) +b.scr(this.f)}} +A.alw.prototype={ +sXA(a){if(a===this.af)return +this.af=a +this.ae()}, +scr(a){if(a===this.aZ)return +this.aZ=a +this.ae()}, +ck(){var s,r,q=this,p=q.H$ +p.toString +s=t.k +r=s.a(A.G.prototype.gah.call(q)) +p.df(new A.au(0,r.b,0,r.d),!0) +if(!q.af&&q.E==null)q.E=q.H$.gv(0).a +p=s.a(A.G.prototype.gah.call(q)) +s=q.E +if(s!=null){s=q.H$.gv(0) +r=q.E +r.toString +s=s.a>r}else{r=s +s=!0}if(s)s=q.H$.gv(0).a +else{r.toString +s=r}q.id=p.bD(new A.R(s,q.H$.gv(0).b)) +s=q.H$.b +s.toString +t._.a(s) +s.a=new A.z(q.aZ===B.ae?0:q.gv(0).a-q.H$.gv(0).a,0)}, +aT(a,b){var s=this.H$,r=s.b +r.toString +a.fa(s,t._.a(r).a.ab(0,b))}, +dU(a,b){var s=this.H$.b +s.toString +return a.m0(new A.bfE(this),t._.a(s).a,b)}, +ht(a){if(!(a.b instanceof A.iX))a.b=new A.iX(null,null,B.j)}, +er(a,b){var s=a.b +s.toString +s=t._.a(s).a +b.bs(0,s.a,s.b) +this.ann(a,b)}} +A.bfE.prototype={ +$2(a,b){return this.a.H$.dT(a,b)}, +$S:24} +A.alr.prototype={ +b6(a){var s=new A.ajt(this.e,this.f,0,null,null,new A.bk(),A.aK()) +s.b5() +return s}, +b9(a,b){b.saW0(this.e) +b.sXA(this.f)}, +cp(a){return new A.als(A.dD(t.R),this,B.aA)}} +A.als.prototype={} +A.ajt.prototype={ +saW0(a){if(a===this.X)return +this.X=a +this.ae()}, +sXA(a){if(a===this.a9)return +this.a9=a +this.ae()}, +aE2(){var s,r=this,q={},p=t.k,o=r.a9?p.a(A.G.prototype.gah.call(r)):A.aqH(new A.R(p.a(A.G.prototype.gah.call(r)).b,44)) +q.a=-1 +q.b=0 +r.bZ(new A.bc5(q,r,o)) +p=r.am$ +p.toString +s=r.A +if(s!==-1&&s===r.dl$-2&&q.b-p.gv(0).a<=o.b)r.A=-1}, +Tv(a,b){var s,r=this +if(a===r.am$)return r.A!==-1 +s=r.A +if(s===-1)return!0 +return b>s===r.a9}, +aHz(){var s,r,q,p,o=this,n={} +n.a=-1 +n.b=B.V +n.c=0 +s=o.am$ +s.toString +n.d=o.a9&&!o.X?s.gv(0).b:0 +o.bZ(new A.bc6(n,o,s)) +r=s.b +r.toString +t._.a(r) +q=o.am$ +q.toString +if(o.Tv(q,0)){r.e=!0 +if(o.a9){q=o.X +r.a=q?new A.z(0,n.d):B.j +r=n.b +p=r.b +s=q?p+s.gv(0).b:p +n.b=new A.R(r.a,s)}else{r.a=new A.z(n.c,0) +n.b=new A.R(n.b.a+s.gv(0).a,n.b.b)}}else r.e=!1 +o.id=n.b}, +aIU(){var s,r=this,q={} +if(!r.a9)return +s=r.am$ +s.toString +q.a=-1 +r.bZ(new A.bc7(q,r,s))}, +ck(){var s,r=this +r.A=-1 +if(r.am$==null){s=t.k.a(A.G.prototype.gah.call(r)) +r.id=new A.R(A.M(0,s.a,s.b),A.M(0,s.c,s.d)) +return}r.aE2() +r.aHz() +r.aIU()}, +aT(a,b){this.bZ(new A.bc9(a,b))}, +ht(a){if(!(a.b instanceof A.iX))a.b=new A.iX(null,null,B.j)}, +dU(a,b){var s,r,q={},p=q.a=this.dJ$ +for(s=t._;p!=null;){p=p.b +p.toString +s.a(p) +if(!p.e){r=p.du$ +q.a=r +p=r +continue}if(a.m0(new A.bc8(q),p.a,b))return!0 +r=p.du$ +q.a=r +p=r}return!1}, +iL(a){this.bZ(new A.bca(a))}} +A.bc5.prototype={ +$1(a){var s,r,q,p,o=this.a;++o.a +s=this.b +if(s.A!==-1&&!s.a9)return +t.x.a(a) +r=this.c +q=r.b +a.df(new A.au(0,q,0,r.d),!0) +p=o.b+a.gv(0).a +o.b=p +if(p>q&&s.A===-1)s.A=o.a-1}, +$S:30} +A.bc6.prototype={ +$1(a){var s,r,q,p=this.a,o=++p.a +t.x.a(a) +s=a.b +s.toString +t._.a(s) +if(a===this.c)return +r=this.b +if(!r.Tv(a,o)){s.e=!1 +return}s.e=!0 +if(!r.a9){o=p.c +s.a=new A.z(o,0) +q=o+a.gv(0).a +p.c=q +p.b=new A.R(q,Math.max(a.gv(0).b,p.b.b))}else{o=p.d +s.a=new A.z(0,o) +p.d=o+a.gv(0).b +p.b=new A.R(Math.max(a.gv(0).a,p.b.a),p.d)}}, +$S:30} +A.bc7.prototype={ +$1(a){var s,r,q +t.x.a(a) +s=a.b +s.toString +t._.a(s) +r=++this.a.a +if(a===this.c)return +q=this.b +if(!q.Tv(a,r)){s.e=!1 +return}a.df(A.o1(null,q.gv(0).a),!0)}, +$S:30} +A.bc9.prototype={ +$1(a){var s +t.x.a(a) +s=a.b +s.toString +t._.a(s) +if(!s.e)return +this.a.fa(a,s.a.ab(0,this.b))}, +$S:30} +A.bc8.prototype={ +$2(a,b){return this.a.a.dT(a,b)}, +$S:24} +A.bca.prototype={ +$1(a){var s +t.x.a(a) +s=a.b +s.toString +if(t._.a(s).e)this.a.$1(a)}, +$S:30} +A.alq.prototype={ +F(a){var s=null +return A.fI(B.T,!0,B.Rt,this.c,B.by,A.bR6(A.q(a).ax),1,s,s,s,s,s,B.fg)}} +A.alt.prototype={ +F(a){var s=null +return A.fI(B.T,!0,s,A.fX(s,s,s,s,this.c,s,this.d,s,s,s,this.e),B.h,B.t,0,s,s,s,s,s,B.fg)}} +A.anz.prototype={ +aI(a){var s,r,q +this.eD(a) +s=this.am$ +for(r=t._;s!=null;){s.aI(a) +q=s.b +q.toString +s=r.a(q).aO$}}, +aB(a){var s,r,q +this.eE(0) +s=this.am$ +for(r=t._;s!=null;){s.aB(0) +q=s.b +q.toString +s=r.a(q).aO$}}} +A.anR.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.G3.prototype={ +D(){return"_TextSelectionToolbarItemPosition."+this.b}} +A.a9A.prototype={ +F(a){var s=this,r=null +return A.iA(!1,s.c,r,r,B.a3,r,r,r,r,s.d,r,A.OM(s.f,r,B.t,r,r,r,r,r,r,A.bOq(A.q(a).ax),r,B.Oy,r,s.e,r,B.jN,r,r,B.as5,r))}} +A.h4.prototype={ +cO(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.cO(b3.a) +if(r==null)r=b3.a +q=b1.b +p=q==null?b2:q.cO(b3.b) +if(p==null)p=b3.b +o=b1.c +n=o==null?b2:o.cO(b3.c) +if(n==null)n=b3.c +m=b1.d +l=m==null?b2:m.cO(b3.d) +if(l==null)l=b3.d +k=b1.e +j=k==null?b2:k.cO(b3.e) +if(j==null)j=b3.e +i=b1.f +h=i==null?b2:i.cO(b3.f) +if(h==null)h=b3.f +g=b1.r +f=g==null?b2:g.cO(b3.r) +if(f==null)f=b3.r +e=b1.w +d=e==null?b2:e.cO(b3.w) +if(d==null)d=b3.w +c=b1.x +b=c==null?b2:c.cO(b3.x) +if(b==null)b=b3.x +a=b1.y +a0=a==null?b2:a.cO(b3.y) +if(a0==null)a0=b3.y +a1=b1.z +a2=a1==null?b2:a1.cO(b3.z) +if(a2==null)a2=b3.z +a3=b1.Q +a4=a3==null?b2:a3.cO(b3.Q) +if(a4==null)a4=b3.Q +a5=b1.as +a6=a5==null?b2:a5.cO(b3.as) +if(a6==null)a6=b3.as +a7=b1.at +a8=a7==null?b2:a7.cO(b3.at) +if(a8==null)a8=b3.at +a9=b1.ax +b0=a9==null?b2:a9.cO(b3.ax) +if(b0==null)b0=b3.ax +s=r==null?s:r +r=p==null?q:p +q=n==null?o:n +p=l==null?m:l +o=j==null?k:j +n=h==null?i:h +m=f==null?g:f +l=d==null?e:d +k=b==null?c:b +j=a0==null?a:a0 +i=a2==null?a1:a2 +h=a4==null?a3:a4 +g=a6==null?a5:a6 +f=a8==null?a7:a8 +return A.aUB(j,i,h,s,r,q,p,o,n,g,f,b0==null?a9:b0,m,l,k)}, +aaB(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.jU(a0,d,b,d,a1,a2,0,1,a3) +s=e.b +s=s==null?d:s.jU(a0,d,b,d,a1,a2,0,1,a3) +r=e.c +r=r==null?d:r.jU(a0,d,b,d,a1,a2,0,1,a3) +q=e.d +q=q==null?d:q.jU(a0,d,b,d,a1,a2,0,1,a3) +p=e.e +p=p==null?d:p.jU(a0,d,b,d,a1,a2,0,1,a3) +o=e.f +o=o==null?d:o.jU(a,d,b,d,a1,a2,0,1,a3) +n=e.r +n=n==null?d:n.jU(a,d,b,d,a1,a2,0,1,a3) +m=e.w +m=m==null?d:m.jU(a,d,b,d,a1,a2,0,1,a3) +l=e.x +l=l==null?d:l.jU(a,d,b,d,a1,a2,0,1,a3) +k=e.y +k=k==null?d:k.jU(a,d,b,d,a1,a2,0,1,a3) +j=e.z +j=j==null?d:j.jU(a,d,b,d,a1,a2,0,1,a3) +i=e.Q +i=i==null?d:i.jU(a0,d,b,d,a1,a2,0,1,a3) +h=e.as +h=h==null?d:h.jU(a,d,b,d,a1,a2,0,1,a3) +g=e.at +g=g==null?d:g.jU(a,d,b,d,a1,a2,0,1,a3) +f=e.ax +return A.aUB(k,j,i,c,s,r,q,p,o,h,g,f==null?d:f.jU(a,d,b,d,a1,a2,0,1,a3),n,m,l)}, +aaA(a,b,c){return this.aaB(a,b,c,null,null,null)}, +aaz(a){var s=null +return this.aaB(s,s,s,a,s,s)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.h4&&J.e(s.a,b.a)&&J.e(s.b,b.b)&&J.e(s.c,b.c)&&J.e(s.d,b.d)&&J.e(s.e,b.e)&&J.e(s.f,b.f)&&J.e(s.r,b.r)&&J.e(s.w,b.w)&&J.e(s.x,b.x)&&J.e(s.y,b.y)&&J.e(s.z,b.z)&&J.e(s.Q,b.Q)&&J.e(s.as,b.as)&&J.e(s.at,b.at)&&J.e(s.ax,b.ax)}, +gB(a){var s=this +return A.a4(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.aly.prototype={} +A.v0.prototype={ +F(a){var s,r,q,p,o,n,m=this,l=null,k=a.au(t.ri),j=k==null?l:k.w.c +if(j==null){j=B.eb.a +s=B.eb.b +r=B.eb.c +q=B.eb.d +p=B.eb.e +o=B.eb.f +n=B.eb.r +n=new A.a23(m.c,new A.LI(j,s,r,q,p,o,n),B.u5,j,s,r,q,p,o,n) +j=n}j=A.bub(j.ay,j.ch.e2(a)) +s=a.au(t.Uf) +if(s==null)s=B.h6 +r=m.c +q=r.f5 +p=q.b +if(p==null)p=s.x +q=q.a +s=q==null?s.w:q +return new A.RN(m,new A.I4(j,A.BA(A.auh(m.d,s,l,l,p),r.k4,l),l),l)}} +A.RN.prototype={ +tc(a,b,c){return new A.v0(this.w.c,c,null)}, +dY(a){return!this.w.c.l(0,a.w.c)}} +A.yS.prototype={ +fW(a){var s,r=this.a +r.toString +s=this.b +s.toString +return A.bOz(r,s,a)}} +A.GR.prototype={ +a0(){return new A.acJ(null,null)}} +A.acJ.prototype={ +pH(a){var s=a.$3(this.CW,this.a.r,new A.aYz()) +s.toString +this.CW=t.ZM.a(s)}, +F(a){var s=this.CW +s.toString +return new A.v0(s.al(0,this.ghx().gk(0)),this.a.w,null)}} +A.aYz.prototype={ +$1(a){return new A.yS(t.we.a(a),null)}, +$S:385} +A.pp.prototype={} +A.xA.prototype={ +D(){return"MaterialTapTargetSize."+this.b}} +A.m9.prototype={ +YI(a){return a.i("pp<0>?").a(this.d.h(0,A.cK(a)))}, +ac0(a,b,c,d){var s=this,r=c==null?s.x:c,q=(a==null?s.ax:a).aQg(null),p=b==null?s.p1:b,o=d==null?s.p2:d +return A.bnW(s.p4,s.d,s.R8,s.a,s.RG,s.rx,s.ry,s.to,s.x1,s.cu,s.x2,s.as,s.at,s.xr,s.y1,s.y2,q,s.b,s.bG,s.bx,s.ay,s.a2,s.ch,s.CW,s.by,s.bI,s.bR,s.A,s.X,s.c,s.a9,s.aC,s.cx,s.cy,s.db,s.dx,s.aQ,s.k4,s.dy,s.e,s.M,s.f,s.U,s.ac,s.aE,s.cB,s.c4,s.eM,s.fT,s.r,s.w,s.H,s.fr,s.fx,s.fy,s.ok,p,s.d3,s.aR,s.go,r,s.b_,s.cU,s.id,s.ed,s.k1,s.cY,s.h7,s.k2,s.y,s.fU,s.cG,s.eN,s.f5,o,s.h8,s.lC,s.nY,s.p3,s.k3,!0,s.Q)}, +aQF(a,b){return this.ac0(null,a,null,b)}, +abP(a){return this.ac0(null,null,a,null)}, +l(a,b){var s=this +if(b==null)return!1 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.m9&&A.aoC(b.d,s.d)&&b.a===s.a&&A.aoC(b.c,s.c)&&b.e.l(0,s.e)&&b.f===s.f&&b.r.l(0,s.r)&&b.w===s.w&&b.x.l(0,s.x)&&b.y===s.y&&b.Q.l(0,s.Q)&&b.as.l(0,s.as)&&b.at.l(0,s.at)&&b.ax.l(0,s.ax)&&b.ay.l(0,s.ay)&&b.ch.l(0,s.ch)&&b.CW.l(0,s.CW)&&b.cx.l(0,s.cx)&&b.cy.l(0,s.cy)&&b.db.l(0,s.db)&&b.dx.l(0,s.dx)&&b.dy.l(0,s.dy)&&b.fr.l(0,s.fr)&&b.fx.l(0,s.fx)&&b.fy.l(0,s.fy)&&b.go.l(0,s.go)&&b.id.l(0,s.id)&&b.k1.l(0,s.k1)&&b.k2.l(0,s.k2)&&b.k3.l(0,s.k3)&&b.k4.l(0,s.k4)&&b.ok.l(0,s.ok)&&b.p1.l(0,s.p1)&&b.p2.l(0,s.p2)&&b.p3.l(0,s.p3)&&J.e(b.p4,s.p4)&&b.R8.l(0,s.R8)&&b.RG.l(0,s.RG)&&b.rx.l(0,s.rx)&&b.ry.l(0,s.ry)&&b.to.l(0,s.to)&&b.x1.l(0,s.x1)&&b.x2.l(0,s.x2)&&b.xr.l(0,s.xr)&&b.y1.l(0,s.y1)&&b.y2.l(0,s.y2)&&b.bG.l(0,s.bG)&&b.bx.l(0,s.bx)&&b.a2.l(0,s.a2)&&b.by.l(0,s.by)&&b.bI.l(0,s.bI)&&b.bR.l(0,s.bR)&&b.A.l(0,s.A)&&b.X.l(0,s.X)&&b.a9.l(0,s.a9)&&b.aC.l(0,s.aC)&&b.aQ.l(0,s.aQ)&&b.M.l(0,s.M)&&b.U.l(0,s.U)&&b.ac.l(0,s.ac)&&b.aE.l(0,s.aE)&&b.cB.l(0,s.cB)&&b.c4.l(0,s.c4)&&b.eM.l(0,s.eM)&&b.fT.l(0,s.fT)&&b.H.l(0,s.H)&&b.d3.l(0,s.d3)&&b.aR.l(0,s.aR)&&b.b_.l(0,s.b_)&&b.cU.l(0,s.cU)&&b.ed.l(0,s.ed)&&b.cY.l(0,s.cY)&&b.h7.l(0,s.h7)&&b.fU.l(0,s.fU)&&b.cG.l(0,s.cG)&&b.eN.l(0,s.eN)&&b.f5.l(0,s.f5)&&b.h8.l(0,s.h8)&&b.lC.l(0,s.lC)&&b.nY.l(0,s.nY)&&b.cu.l(0,s.cu)}, +gB(a){var s=this,r=s.d,q=A.a8(new A.aR(r,A.y(r).i("aR<1>")),!0,t.X) +B.b.G(q,r.gaJ(0)) +q.push(s.a) +q.push(s.b) +r=s.c +B.b.G(q,r.gd1(r)) +B.b.G(q,r.gaJ(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.as) +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.bG) +q.push(s.bx) +q.push(s.a2) +q.push(s.by) +q.push(s.bI) +q.push(s.bR) +q.push(s.A) +q.push(s.X) +q.push(s.a9) +q.push(s.aC) +q.push(s.aQ) +q.push(s.M) +q.push(s.U) +q.push(s.ac) +q.push(s.aE) +q.push(s.cB) +q.push(s.c4) +q.push(s.eM) +q.push(s.fT) +q.push(s.H) +q.push(s.d3) +q.push(s.aR) +q.push(s.b_) +q.push(s.cU) +q.push(s.ed) +q.push(s.cY) +q.push(s.h7) +q.push(s.fU) +q.push(s.cG) +q.push(s.eN) +q.push(s.f5) +q.push(s.h8) +q.push(s.lC) +q.push(s.nY) +q.push(s.cu) +return A.cj(q)}} +A.aUF.prototype={ +$0(){var s=this.a,r=this.b +return s.aQF(r.cO(s.p1),r.cO(s.p2))}, +$S:386} +A.aUD.prototype={ +$2(a,b){return new A.aO(a,b.b2_(this.a.c.h(0,a),this.b),t.sw)}, +$S:387} +A.aUE.prototype={ +$1(a){return!this.a.c.N(0,a.a)}, +$S:388} +A.a23.prototype={ +gpm(){var s=this.ch.a +return s==null?this.ay.ax.a:s}, +gj6(){var s=this.ch.b +return s==null?this.ay.ax.b:s}, +gpZ(){var s=this.ch.c +return s==null?this.ay.ax.c:s}, +gw7(){var s=this.ch.f +return s==null?this.ay.go:s}, +e2(a){return A.bub(this.ay,this.ch.e2(a))}} +A.bld.prototype={} +A.Fa.prototype={ +gB(a){return(A.rT(this.a)^A.rT(this.b))>>>0}, +l(a,b){if(b==null)return!1 +return b instanceof A.Fa&&b.a===this.a&&b.b===this.b}} +A.afm.prototype={ +cP(a,b,c){var s,r=this.a,q=r.h(0,b) +if(q!=null)return q +if(r.a===this.b)r.C(0,new A.aR(r,A.y(r).i("aR<1>")).gW(0)) +s=c.$0() +r.n(0,b,s) +return s}} +A.rd.prototype={ +aSG(a){var s=this.a,r=this.b,q=A.M(a.a+new A.z(s,r).ap(0,4).a,0,a.b) +return a.aQD(A.M(a.c+new A.z(s,r).ap(0,4).b,0,a.d),q)}, +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.rd&&b.a===this.a&&b.b===this.b}, +gB(a){return A.a4(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)}, +fb(){return this.amk()+"(h: "+A.mq(this.a)+", v: "+A.mq(this.b)+")"}} +A.alC.prototype={} +A.ams.prototype={} +A.P7.prototype={ +gCT(){var s=this.e +if(s==null)return s +return A.vO(new A.aUI(this))}, +gB(a){var s=this +return A.cj([s.a,s.b,s.c,s.d,s.gCT(),s.f,s.r,s.w,s.x,s.y,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,s.CW,s.cx,s.cy,s.db,s.dx,s.dy,s.fr])}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.P7&&J.e(b.a,s.a)&&J.e(b.b,s.b)&&J.e(b.c,s.c)&&J.e(b.d,s.d)&&J.e(b.gCT(),s.gCT())&&J.e(b.f,s.f)&&J.e(b.r,s.r)&&J.e(b.w,s.w)&&J.e(b.x,s.x)&&J.e(b.y,s.y)&&J.e(b.z,s.z)&&J.e(b.Q,s.Q)&&b.as==s.as&&J.e(b.at,s.at)&&J.e(b.ax,s.ax)&&J.e(b.ay,s.ay)&&J.e(b.ch,s.ch)&&J.e(b.CW,s.CW)&&J.e(b.cx,s.cx)&&J.e(b.db,s.db)&&J.e(b.dx,s.dx)&&b.dy==s.dy&&b.fr==s.fr}} +A.aUI.prototype={ +$1(a){var s +if(a.p(0,B.Y)){s=this.a.e +return s==null?t.n8.a(s):s}return B.t}, +$S:9} +A.alE.prototype={} +A.P9.prototype={ +gB(a){var s=this +return A.a4(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.ah(b)!==A.K(s))return!1 +return b instanceof A.P9&&J.e(b.a,s.a)&&J.e(b.b,s.b)&&J.e(b.c,s.c)&&J.e(b.d,s.d)&&J.e(b.e,s.e)&&J.e(b.f,s.f)&&J.e(b.r,s.r)&&J.e(b.w,s.w)&&J.e(b.y,s.y)&&J.e(b.x,s.x)&&J.e(b.z,s.z)&&J.e(b.Q,s.Q)&&J.e(b.as,s.as)&&J.e(b.ax,s.ax)&&b.at==s.at}} +A.alH.prototype={} +A.afj.prototype={ +b6(a){var s=new A.aja(!0,this.e,null,this.r,B.cU,B.aU,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}} +A.aja.prototype={ +dT(a,b){var s,r=this,q=$.boA +$.boA=!1 +if(r.gv(0).p(0,b)){s=r.dU(a,b)||r.E===B.aU +if((s||r.E===B.d0)&&!$.boz){$.boz=!0 +a.q(0,new A.w6(b,r))}}else s=!1 +if(q){$.boA=!0 +$.boz=!1}return s}} +A.yY.prototype={ +a0(){return new A.v2(new A.aM0(),A.bn(t.S),B.a9,null,null)}} +A.v2.prototype={ +gaKC(){var s=this.a.ay +if(s==null){this.f===$&&A.b() +s=null}return s==null?B.ZR:s}, +gawT(){this.a.toString +this.f===$&&A.b() +return!0}, +gTO(){var s=this.a.c +return s==null?null.ah7():s}, +gqQ(){var s,r=this,q=r.w +if(q==null){q=A.c2(null,B.eQ,B.lg,null,r) +q.ct() +s=q.ec$ +s.b=!0 +s.a.push(r.gaM6()) +r.w=q}return q}, +aM7(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null +$label0$0:{s=f.as===B.a9 +r=a===B.a9 +q=!s +p=q +if(p){o=r +n=o +m=n}else{n=e +m=n +o=!1}if(o){B.b.C($.yZ,f) +o=f.d +l=o.a +if(l!=null)l.v9() +else o.b=null +break $label0$0}k=!0===s +o=k +j=e +if(o){if(p){i=n +h=p}else{i=r +n=i +h=!0}j=!1===i +i=j}else{h=p +i=!1}if(i){o=f.d +l=o.a +g=$.bnc+1 +if(l!=null){$.bnc=g +l.wg(0,g)}else o.b=$.bnc=g +$.yZ.push(f) +A.aRa(f.gTO()) +break $label0$0}if(k)if(p){i=m +p=h}else{if(h){i=n +p=h}else{i=r +n=i +p=!0}m=!0===i +i=m}else{p=h +i=!1}if(!i)if(q)if(o)o=j +else{j=!1===(p?n:r) +o=j}else o=!1 +else o=!0 +if(o)break $label0$0}f.as=a}, +aJx(a,b){var s,r=this,q=new A.aUT(r,a) +if(r.gqQ().gbi(0)===B.a9&&b.a>0){s=r.r +if(s!=null)s.S(0) +r.r=A.bZ(b,q)}else q.$0()}, +a7r(a){return this.aJx(null,a)}, +BI(a){var s=this,r=s.r +if(r!=null)r.S(0) +s.r=null +r=s.w +r=r==null?null:r.gbi(0).gyW() +if(r===!0)if(a.a>0){r=s.gqQ() +s.r=A.bZ(a,r.gagN(r))}else s.gqQ().dq(0)}, +aM5(a){var s,r=this +r.a.toString +r.f===$&&A.b() +switch(1){case 1:s=r.y +if(s==null)s=r.y=A.aFl(r,B.amb) +s.p1=r.gaCr() +s.p2=r.gaAK() +s.R8=r.gaBr() +s.Cf(a) +break}}, +aAt(a){var s=this,r=s.z +r=r==null?null:r.CW +if(r!==a.gbX()){r=s.y +r=r==null?null:r.CW +r=r===a.gbX()}else r=!0 +if(r)return +if(s.r==null&&s.gqQ().gbi(0)===B.a9||!t.pY.b(a))return +s.a4K()}, +a4K(){this.a.toString +this.BI(B.F) +this.Q.V(0)}, +aAL(){var s,r=this,q=r.e +q===$&&A.b() +if(!q)return +s=r.gqQ().gbi(0)===B.a9 +if(s)r.gawT() +if(s){q=r.c +q.toString +A.bm1(q)}r.a.toString +r.a7r(B.F)}, +aBs(){if(this.Q.a!==0)return +this.BI(this.gaKC())}, +aAT(a){var s,r,q,p=this +p.Q.q(0,a.gn0(a)) +s=A.af($.yZ).i("bh<1>") +r=A.a8(new A.bh($.yZ,new A.aUS(),s),!0,s.i("B.E")) +for(s=r.length,q=0;q=10===j?o:j)?Math.min(m,k):Math.max(l,10) +p=b.a +r=a.a-p +return new A.z(r<=20?r/2:A.M(q.a-p/2,10,r-10),s)}, +oF(a){return!this.b.l(0,a.b)||this.c!==a.c||this.d!==a.d}} +A.alI.prototype={ +F(a){var s,r,q=this,p=null,o=A.q(a).p2.z +o.toString +s=A.aa(p,A.cL(new A.fs(p,q.c,q.w,q.x,p,p,p,p,p,p),1,1),B.h,p,p,q.r,p,p,p,q.f,q.e,p,p,p) +o=A.kD(new A.ck(A.cJ(p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p,p),!0,!1,!1,!1,s,p),p,p,B.cs,!0,o,p,p,B.aX) +r=A.bxh(new A.eB(q.y,!1,new A.ep(new A.au(0,1/0,q.d,1/0),o,p),p),q.at,q.ax) +o=A.de(a,B.o2) +o=o==null?p:o.f +o=o==null?p:o.d +if(o==null)o=0 +return A.qD(o,new A.kz(new A.bfV(q.z,q.Q,q.as),r,p))}} +A.U9.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.Pg.prototype={ +gB(a){var s=this,r=null +return A.a4(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,r,r,r,r,r,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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.Pg)if(b.a==r.a)if(J.e(b.b,r.b))if(J.e(b.c,r.c))if(b.d==r.d)if(J.e(b.r,r.r)){s=J.e(b.w,r.w) +s}return s}} +A.alJ.prototype={} +A.No.prototype={ +D(){return"ScriptCategory."+this.b}} +A.Ec.prototype={ +aiB(a){var s +switch(a.a){case 0:s=this.c +break +case 1:s=this.d +break +case 2:s=this.e +break +default:s=null}return s}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.Ec&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c.l(0,s.c)&&b.d.l(0,s.d)&&b.e.l(0,s.e)}, +gB(a){var s=this +return A.a4(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.am8.prototype={} +A.Cw.prototype={ +vq(a){return new A.cv(this,t.Ow)}, +vn(a,b){var s=null,r=A.i9(s,s,s,s,!1,t.oA) +return A.Cq(new A.cA(r,A.y(r).i("cA<1>")),this.wC(a,b,r),a.a,s,1)}, +rJ(a,b){var s=null,r=A.i9(s,s,s,s,!1,t.oA) +return A.Cq(new A.cA(r,A.y(r).i("cA<1>")),this.wC(a,b,r),a.a,s,1)}, +wC(a,b,c){return this.aEj(a,b,c)}, +aEj(a,b,c){var s=0,r=A.n(t.hP),q,p,o,n,m,l,k,j,i,h +var $async$wC=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:m=a.a +l=A.lj().Z(m) +k=a.c +j=k.gbC(k) +i=self +s=i.window.flutterCanvasKit!=null||i.window._flutter_skwasmInstance!=null||j?3:5 +break +case 3:i=new A.a_($.ab,t.XC) +p=new A.aq(i,t.m6) +o=A.bT9() +o.open("GET",m,!0) +o.responseType="arraybuffer" +if(j)k.az(0,new A.aKq(o)) +o.addEventListener("load",A.d6(new A.aKr(o,p,l))) +o.addEventListener("error",A.d6(new A.aKs(p))) +o.send() +s=6 +return A.f(i,$async$wC) +case 6:m=o.response +m.toString +n=A.dw(t.RZ.a(m),0,null) +if(n.byteLength===0)throw A.d(A.buE(A.pj(o,"status"),l)) +h=b +s=7 +return A.f(A.tG(n),$async$wC) +case 7:q=h.$1(e) +s=1 +break +s=4 +break +case 5:q=$.ap().LM(l,new A.aKt(c)) +s=1 +break +case 4:case 1:return A.l(q,r)}}) +return A.m($async$wC,r)}, +l(a,b){var s +if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +if(b instanceof A.Cw)s=b.a===this.a +else s=!1 +return s}, +gB(a){return A.a4(this.a,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,B.a,B.a,B.a,B.a,B.a)}, +j(a){return'NetworkImage("'+this.a+'", scale: '+B.e.aF(1,1)+")"}} +A.aKq.prototype={ +$2(a,b){this.a.setRequestHeader(a,b)}, +$S:124} +A.aKr.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.bv(0,s) +else{n.dF(a) +throw A.d(A.buE(r,this.c))}}, +$S:119} +A.aKs.prototype={ +$1(a){return this.a.dF(a)}, +$S:58} +A.aKt.prototype={ +$2(a,b){this.a.q(0,new A.iP(a,b))}, +$S:97} +A.iG.prototype={ +q(a,b){var s=this +return new A.Fo(B.d.ab(s.glY(),b.glY()),B.d.ab(s.glS(s),b.glS(b)),B.d.ab(s.glZ(),b.glZ()))}, +j(a){var s=this +if(s.glS(s)===0)return A.bkN(s.glY(),s.glZ()) +if(s.glY()===0)return A.bkM(s.glS(s),s.glZ()) +return A.bkN(s.glY(),s.glZ())+" + "+A.bkM(s.glS(s),0)}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.iG&&b.glY()===s.glY()&&b.glS(b)===s.glS(s)&&b.glZ()===s.glZ()}, +gB(a){var s=this +return A.a4(s.glY(),s.glS(s),s.glZ(),B.a,B.a,B.a,B.a,B.a,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.dh.prototype={ +glY(){return this.a}, +glS(a){return 0}, +glZ(){return this.b}, +q(a,b){var s=this.ab(0,b) +return s}, +ai(a,b){return new A.dh(this.a-b.a,this.b-b.b)}, +ab(a,b){return new A.dh(this.a+b.a,this.b+b.b)}, +ap(a,b){return new A.dh(this.a*b,this.b*b)}, +ph(a){var s=a.a/2,r=a.b/2 +return new A.z(s+this.a*s,r+this.b*r)}, +JC(a){var s=a.a/2,r=a.b/2 +return new A.z(s+this.a*s,r+this.b*r)}, +ahT(a){var s=a.a,r=(a.c-s)/2,q=a.b,p=(a.d-q)/2 +return new A.z(s+r+this.a*r,q+p+this.b*p)}, +WM(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.I(s,p,s+r,p+o)}, +Z(a){return this}, +j(a){return A.bkN(this.a,this.b)}} +A.iF.prototype={ +glY(){return 0}, +glS(a){return this.a}, +glZ(){return this.b}, +q(a,b){var s=this.ab(0,b) +return s}, +ai(a,b){return new A.iF(this.a-b.a,this.b-b.b)}, +ab(a,b){return new A.iF(this.a+b.a,this.b+b.b)}, +ap(a,b){return new A.iF(this.a*b,this.b*b)}, +Z(a){var s,r=this +switch(a.a){case 0:s=new A.dh(-r.a,r.b) +break +case 1:s=new A.dh(r.a,r.b) +break +default:s=null}return s}, +j(a){return A.bkM(this.a,this.b)}} +A.Fo.prototype={ +ap(a,b){return new A.Fo(this.a*b,this.b*b,this.c*b)}, +Z(a){var s,r=this +switch(a.a){case 0:s=new A.dh(r.a-r.b,r.c) +break +case 1:s=new A.dh(r.a+r.b,r.c) +break +default:s=null}return s}, +glY(){return this.a}, +glS(a){return this.b}, +glZ(){return this.c}} +A.a9j.prototype={ +j(a){return"TextAlignVertical(y: "+this.a+")"}} +A.MI.prototype={ +D(){return"RenderComparison."+this.b}} +A.WK.prototype={ +D(){return"Axis."+this.b}} +A.aVz.prototype={ +D(){return"VerticalDirection."+this.b}} +A.Ab.prototype={ +D(){return"AxisDirection."+this.b}} +A.a5N.prototype={ +aep(a,b,c,d){var s=$.ap(),r=a.a +r.toString +return s.yT(r,!1,c,d)}, +aVK(a){return this.aep(a,!1,null,null)}, +aeq(a,b){return A.aoB(a,b)}, +aVN(a){return this.aeq(a,null)}} +A.al3.prototype={ +T(){var s,r,q +for(s=this.a,s=A.dr(s,s.r,A.y(s).c),r=s.$ti.c;s.u();){q=s.d;(q==null?r.a(q):q).$0()}}, +a4(a,b){this.a.q(0,b)}, +K(a,b){this.a.C(0,b)}} +A.Hi.prototype={ +Gj(a){var s=this +return new A.Sb(s.giU().ai(0,a.giU()),s.gll().ai(0,a.gll()),s.gla().ai(0,a.gla()),s.glT().ai(0,a.glT()),s.giV().ai(0,a.giV()),s.glk().ai(0,a.glk()),s.glU().ai(0,a.glU()),s.gl9().ai(0,a.gl9()))}, +q(a,b){var s=this +return new A.Sb(s.giU().ab(0,b.giU()),s.gll().ab(0,b.gll()),s.gla().ab(0,b.gla()),s.glT().ab(0,b.glT()),s.giV().ab(0,b.giV()),s.glk().ab(0,b.glk()),s.glU().ab(0,b.glU()),s.gl9().ab(0,b.gl9()))}, +j(a){var s,r,q,p,o=this +if(o.giU().l(0,o.gll())&&o.gll().l(0,o.gla())&&o.gla().l(0,o.glT()))if(!o.giU().l(0,B.B))s=o.giU().a===o.giU().b?"BorderRadius.circular("+B.d.aF(o.giU().a,1)+")":"BorderRadius.all("+o.giU().j(0)+")" +else s=null +else{r=""+"BorderRadius.only(" +q=!o.giU().l(0,B.B) +if(q)r+="topLeft: "+o.giU().j(0) +if(!o.gll().l(0,B.B)){if(q)r+=", " +r+="topRight: "+o.gll().j(0) +q=!0}if(!o.gla().l(0,B.B)){if(q)r+=", " +r+="bottomLeft: "+o.gla().j(0) +q=!0}if(!o.glT().l(0,B.B)){if(q)r+=", " +r+="bottomRight: "+o.glT().j(0)}r+=")" +s=r.charCodeAt(0)==0?r:r}if(o.giV().l(0,o.glk())&&o.glk().l(0,o.gl9())&&o.gl9().l(0,o.glU()))if(!o.giV().l(0,B.B))p=o.giV().a===o.giV().b?"BorderRadiusDirectional.circular("+B.d.aF(o.giV().a,1)+")":"BorderRadiusDirectional.all("+o.giV().j(0)+")" +else p=null +else{r=""+"BorderRadiusDirectional.only(" +q=!o.giV().l(0,B.B) +if(q)r+="topStart: "+o.giV().j(0) +if(!o.glk().l(0,B.B)){if(q)r+=", " +r+="topEnd: "+o.glk().j(0) +q=!0}if(!o.glU().l(0,B.B)){if(q)r+=", " +r+="bottomStart: "+o.glU().j(0) +q=!0}if(!o.gl9().l(0,B.B)){if(q)r+=", " +r+="bottomEnd: "+o.gl9().j(0)}r+=")" +p=r.charCodeAt(0)==0?r:r}r=s==null +if(!r&&p!=null)return A.c(s)+" + "+p +r=r?p:s +return r==null?"BorderRadius.zero":r}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.Hi&&b.giU().l(0,s.giU())&&b.gll().l(0,s.gll())&&b.gla().l(0,s.gla())&&b.glT().l(0,s.glT())&&b.giV().l(0,s.giV())&&b.glk().l(0,s.glk())&&b.glU().l(0,s.glU())&&b.gl9().l(0,s.gl9())}, +gB(a){var s=this +return A.a4(s.giU(),s.gll(),s.gla(),s.glT(),s.giV(),s.glk(),s.glU(),s.gl9(),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.cY.prototype={ +giU(){return this.a}, +gll(){return this.b}, +gla(){return this.c}, +glT(){return this.d}, +giV(){return B.B}, +glk(){return B.B}, +glU(){return B.B}, +gl9(){return B.B}, +e9(a){var s=this,r=s.a.m4(0,B.B),q=s.b.m4(0,B.B) +return A.a6q(a,s.c.m4(0,B.B),s.d.m4(0,B.B),r,q)}, +Gj(a){if(a instanceof A.cY)return this.ai(0,a) +return this.a_0(a)}, +q(a,b){if(b instanceof A.cY)return this.ab(0,b) +return this.a__(0,b)}, +ai(a,b){var s=this +return new A.cY(s.a.ai(0,b.a),s.b.ai(0,b.b),s.c.ai(0,b.c),s.d.ai(0,b.d))}, +ab(a,b){var s=this +return new A.cY(s.a.ab(0,b.a),s.b.ab(0,b.b),s.c.ab(0,b.c),s.d.ab(0,b.d))}, +ap(a,b){var s=this +return new A.cY(s.a.ap(0,b),s.b.ap(0,b),s.c.ap(0,b),s.d.ap(0,b))}, +Z(a){return this}} +A.t9.prototype={ +giV(){return this.a}, +glk(){return this.b}, +glU(){return this.c}, +gl9(){return this.d}, +giU(){return B.B}, +gll(){return B.B}, +gla(){return B.B}, +glT(){return B.B}, +Gj(a){if(a instanceof A.t9)return this.ai(0,a) +return this.a_0(a)}, +q(a,b){if(b instanceof A.t9)return this.ab(0,b) +return this.a__(0,b)}, +ai(a,b){var s=this +return new A.t9(s.a.ai(0,b.a),s.b.ai(0,b.b),s.c.ai(0,b.c),s.d.ai(0,b.d))}, +ab(a,b){var s=this +return new A.t9(s.a.ab(0,b.a),s.b.ab(0,b.b),s.c.ab(0,b.c),s.d.ab(0,b.d))}, +ap(a,b){var s=this +return new A.t9(s.a.ap(0,b),s.b.ap(0,b),s.c.ap(0,b),s.d.ap(0,b))}, +Z(a){var s=this +switch(a.a){case 0:return new A.cY(s.b,s.a,s.d,s.c) +case 1:return new A.cY(s.a,s.b,s.c,s.d)}}} +A.Sb.prototype={ +ap(a,b){var s=this +return new A.Sb(s.a.ap(0,b),s.b.ap(0,b),s.c.ap(0,b),s.d.ap(0,b),s.e.ap(0,b),s.f.ap(0,b),s.r.ap(0,b),s.w.ap(0,b))}, +Z(a){var s=this +switch(a.a){case 0:return new A.cY(s.a.ab(0,s.f),s.b.ab(0,s.e),s.c.ab(0,s.w),s.d.ab(0,s.r)) +case 1:return new A.cY(s.a.ab(0,s.e),s.b.ab(0,s.f),s.c.ab(0,s.r),s.d.ab(0,s.w))}}, +giU(){return this.a}, +gll(){return this.b}, +gla(){return this.c}, +glT(){return this.d}, +giV(){return this.e}, +glk(){return this.f}, +glU(){return this.r}, +gl9(){return this.w}} +A.X_.prototype={ +D(){return"BorderStyle."+this.b}} +A.br.prototype={ +bK(a,b){var s=Math.max(0,this.b*b),r=b<=0?B.bo:this.c +return new A.br(this.a,s,r,-1)}, +kk(){switch(this.c.a){case 1:var s=$.ap().br() +s.saG(0,this.a) +s.shw(this.b) +s.sd0(0,B.aJ) +return s +case 0:s=$.ap().br() +s.saG(0,B.t) +s.shw(0) +s.sd0(0,B.aJ) +return s}}, +ghv(){return this.b*(1-(1+this.d)/2)}, +gwo(){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.ah(b)!==A.K(s))return!1 +return b instanceof A.br&&b.a.l(0,s.a)&&b.b===s.b&&b.c===s.c&&b.d===s.d}, +gB(a){var s=this +return A.a4(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)}, +fb(){return"BorderSide"}} +A.dp.prototype={ +m_(a,b,c){return null}, +q(a,b){return this.m_(0,b,!1)}, +ab(a,b){var s=this.q(0,b) +if(s==null)s=b.m_(0,this,!0) +return s==null?new A.me(A.a([b,this],t.N_)):s}, +f6(a,b){if(a==null)return this.bK(0,b) +return null}, +f7(a,b){if(a==null)return this.bK(0,1-b) +return null}, +kZ(a,b,c,d){}, +gjC(){return!1}, +j(a){return"ShapeBorder()"}} +A.fK.prototype={ +gm7(){var s=Math.max(this.a.ghv(),0) +return new A.al(s,s,s,s)}, +f6(a,b){if(a==null)return this.bK(0,b) +return null}, +f7(a,b){if(a==null)return this.bK(0,1-b) +return null}} +A.me.prototype={ +gm7(){return B.b.yN(this.a,B.Z,new A.b_d())}, +m_(a,b,c){var s,r,q,p=b instanceof A.me +if(!p){s=this.a +r=c?B.b.gY(s):B.b.gW(s) +q=r.m_(0,b,c) +if(q==null)q=b.m_(0,r,!c) +if(q!=null){p=A.a8(s,!0,t.RY) +p[c?p.length-1:0]=q +return new A.me(p)}}s=A.a([],t.N_) +if(c)B.b.G(s,this.a) +if(p)B.b.G(s,b.a) +else s.push(b) +if(!c)B.b.G(s,this.a) +return new A.me(s)}, +q(a,b){return this.m_(0,b,!1)}, +bK(a,b){var s=this.a,r=A.af(s).i("ad<1,dp>") +return new A.me(A.a8(new A.ad(s,new A.b_f(b),r),!0,r.i("aN.E")))}, +f6(a,b){return A.bxc(a,this,b)}, +f7(a,b){return A.bxc(this,a,b)}, +l1(a,b){var s,r +for(s=this.a,r=0;r") +return new A.ad(new A.e5(s,r),new A.b_g(),r.i("ad")).bJ(0," + ")}} +A.b_d.prototype={ +$2(a,b){return a.q(0,b.gm7())}, +$S:392} +A.b_f.prototype={ +$1(a){return a.bK(0,this.a)}, +$S:393} +A.b_e.prototype={ +$1(a){return a.gjC()}, +$S:394} +A.b_g.prototype={ +$1(a){return a.j(0)}, +$S:395} +A.add.prototype={} +A.X4.prototype={ +D(){return"BoxShape."+this.b}} +A.X0.prototype={ +m_(a,b,c){return null}, +q(a,b){return this.m_(0,b,!1)}, +l1(a,b){var s=$.ap().cR() +s.jT(this.gm7().Z(b).CY(a)) +return s}, +fE(a,b){var s=$.ap().cR() +s.jT(a) +return s}, +kZ(a,b,c,d){a.ey(b,c)}, +gjC(){return!0}} +A.f4.prototype={ +gm7(){var s,r=this +if(r.gaa2()){s=r.a.ghv() +return new A.al(s,s,s,s)}return new A.al(r.d.ghv(),r.a.ghv(),r.b.ghv(),r.c.ghv())}, +gDT(){var s,r=this,q=r.a,p=q.a,o=r.d,n=!1 +if(o.a.l(0,p)&&r.c.a.l(0,p)&&r.b.a.l(0,p))if(r.gaa2())if(r.gBT()){s=q.d +q=o.d===s&&r.c.d===s&&r.b.d===s}else q=n +else q=n +else q=n +return q}, +gaa2(){var s=this,r=s.a.b +return s.d.b===r&&s.c.b===r&&s.b.b===r}, +gBT(){var s=this,r=s.a.c +return s.d.c===r&&s.c.c===r&&s.b.c===r}, +m_(a,b,c){var s=this +if(b instanceof A.f4&&A.pt(s.a,b.a)&&A.pt(s.b,b.b)&&A.pt(s.c,b.c)&&A.pt(s.d,b.d))return new A.f4(A.my(s.a,b.a),A.my(s.b,b.b),A.my(s.c,b.c),A.my(s.d,b.d)) +return null}, +q(a,b){return this.m_(0,b,!1)}, +bK(a,b){var s=this +return new A.f4(s.a.bK(0,b),s.b.bK(0,b),s.c.bK(0,b),s.d.bK(0,b))}, +f6(a,b){if(a instanceof A.f4)return A.bkV(a,this,b) +return this.Gt(a,b)}, +f7(a,b){if(a instanceof A.f4)return A.bkV(this,a,b) +return this.Gu(a,b)}, +MQ(a,b,c,d,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this +if(e.gDT()){s=e.a +switch(s.c.a){case 0:return +case 1:switch(d.a){case 1:A.brd(a,b,s) +break +case 0:if(c!=null&&!c.l(0,B.aH)){A.bre(a,b,s,c) +return}A.brf(a,b,s) +break}return}}if(e.gBT()&&e.a.c===B.bo)return +s=A.bn(t.n8) +r=e.a +q=r.c +p=q===B.bo +if(!p)s.q(0,r.a) +o=e.b +n=o.c +m=n===B.bo +if(!m)s.q(0,o.a) +l=e.c +k=l.c +j=k===B.bo +if(!j)s.q(0,l.a) +i=e.d +h=i.c +g=h===B.bo +if(!g)s.q(0,i.a) +f=!0 +if(!(q===B.I&&r.b===0))if(!(n===B.I&&o.b===0)){if(!(k===B.I&&l.b===0))q=h===B.I&&i.b===0 +else q=f +f=q}q=!1 +if(s.a===1)if(!f)if(d!==B.bw)q=c!=null&&!c.l(0,B.aH) +else q=!0 +if(q){if(p)r=B.x +q=m?B.x:o +p=j?B.x:l +o=g?B.x:i +A.bkW(a,b,c,p,s.gW(0),o,q,d,a0,r) +return}A.bAn(a,b,l,i,o,r)}, +hW(a,b,c){return this.MQ(a,b,null,B.E,c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.f4&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c.l(0,s.c)&&b.d.l(0,s.d)}, +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s,r,q=this +if(q.gDT())return"Border.all("+q.a.j(0)+")" +s=A.a([],t.s) +r=q.a +if(!r.l(0,B.x))s.push("top: "+r.j(0)) +r=q.b +if(!r.l(0,B.x))s.push("right: "+r.j(0)) +r=q.c +if(!r.l(0,B.x))s.push("bottom: "+r.j(0)) +r=q.d +if(!r.l(0,B.x))s.push("left: "+r.j(0)) +return"Border("+B.b.bJ(s,", ")+")"}, +gzt(a){return this.a}} +A.iI.prototype={ +gm7(){var s,r=this +if(r.gDT()){s=r.a.ghv() +return new A.eA(s,s,s,s)}return new A.eA(r.b.ghv(),r.a.ghv(),r.c.ghv(),r.d.ghv())}, +gDT(){var s,r,q=this,p=q.a,o=p.a,n=q.b,m=!1 +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.gBT()){r=p.d +p=n.d===r&&q.d.d===r&&q.c.d===r}else p=m +else p=m}else p=m +return p}, +gBT(){var s=this,r=s.a.c +return s.b.c===r&&s.d.c===r&&s.c.c===r}, +m_(a,b,c){var s,r,q,p=this,o=null +if(b instanceof A.iI){s=p.a +r=b.a +if(A.pt(s,r)&&A.pt(p.b,b.b)&&A.pt(p.c,b.c)&&A.pt(p.d,b.d))return new A.iI(A.my(s,r),A.my(p.b,b.b),A.my(p.c,b.c),A.my(p.d,b.d)) +return o}if(b instanceof A.f4){s=b.a +r=p.a +if(!A.pt(s,r)||!A.pt(b.c,p.d))return o +q=p.b +if(!q.l(0,B.x)||!p.c.l(0,B.x)){if(!b.d.l(0,B.x)||!b.b.l(0,B.x))return o +return new A.iI(A.my(s,r),q,p.c,A.my(b.c,p.d))}return new A.f4(A.my(s,r),b.b,A.my(b.c,p.d),b.d)}return o}, +q(a,b){return this.m_(0,b,!1)}, +bK(a,b){var s=this +return new A.iI(s.a.bK(0,b),s.b.bK(0,b),s.c.bK(0,b),s.d.bK(0,b))}, +f6(a,b){if(a instanceof A.iI)return A.bkU(a,this,b) +return this.Gt(a,b)}, +f7(a,b){if(a instanceof A.iI)return A.bkU(this,a,b) +return this.Gu(a,b)}, +MQ(a,b,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this +if(c.gDT()){s=c.a +switch(s.c.a){case 0:return +case 1:switch(a1.a){case 1:A.brd(a,b,s) +break +case 0:if(a0!=null&&!a0.l(0,B.aH)){A.bre(a,b,s,a0) +return}A.brf(a,b,s) +break}return}}if(c.gBT()&&c.a.c===B.bo)return +switch(a2.a){case 0:s=new A.b3(c.c,c.b) +break +case 1:s=new A.b3(c.b,c.c) +break +default:s=null}r=s.a +q=null +p=s.b +q=p +o=r +s=A.bn(t.n8) +n=c.a +m=n.c +l=m===B.bo +if(!l)s.q(0,n.a) +k=c.c +j=k.c +if(j!==B.bo)s.q(0,k.a) +i=c.d +h=i.c +g=h===B.bo +if(!g)s.q(0,i.a) +f=c.b +e=f.c +if(e!==B.bo)s.q(0,f.a) +d=!0 +if(!(m===B.I&&n.b===0))if(!(j===B.I&&k.b===0)){if(!(h===B.I&&i.b===0))m=e===B.I&&f.b===0 +else m=d +d=m}m=!1 +if(s.a===1)if(!d)if(a1!==B.bw)m=a0!=null&&!a0.l(0,B.aH) +else m=!0 +if(m){if(l)n=B.x +m=q.c===B.bo?B.x:q +l=g?B.x:i +k=o.c===B.bo?B.x:o +A.bkW(a,b,a0,l,s.gW(0),k,m,a1,a2,n) +return}A.bAn(a,b,i,o,q,n)}, +hW(a,b,c){return this.MQ(a,b,null,B.E,c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.iI&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c.l(0,s.c)&&b.d.l(0,s.d)}, +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this,r=A.a([],t.s),q=s.a +if(!q.l(0,B.x))r.push("top: "+q.j(0)) +q=s.b +if(!q.l(0,B.x))r.push("start: "+q.j(0)) +q=s.c +if(!q.l(0,B.x))r.push("end: "+q.j(0)) +q=s.d +if(!q.l(0,B.x))r.push("bottom: "+q.j(0)) +return"BorderDirectional("+B.b.bJ(r,", ")+")"}, +gzt(a){return this.a}} +A.bb.prototype={ +abV(a,b){var s=this,r=b==null?s.a:b,q=a==null?s.e:a +return new A.bb(r,s.b,s.c,s.d,q,s.f,s.r,s.w)}, +aQf(a){return this.abV(a,null)}, +gdW(a){var s=this.c +s=s==null?null:s.gm7() +return s==null?B.Z:s}, +F5(a,b){var s,r,q +switch(this.w.a){case 1:s=A.nc(a.gbq(),a.gje()/2) +r=$.ap().cR() +r.pe(s) +return r +case 0:r=this.d +if(r!=null){q=$.ap().cR() +q.hk(r.Z(b).e9(a)) +return q}r=$.ap().cR() +r.jT(a) +return r}}, +bK(a,b){var s=this,r=null,q=A.U(r,s.a,b),p=A.blq(r,s.b,b),o=A.brg(r,s.c,b),n=A.o_(r,s.d,b),m=A.bkX(r,s.e,b),l=s.f +l=l==null?r:l.bK(0,b) +return new A.bb(q,p,o,n,m,l,r,s.w)}, +gLQ(){return this.e!=null}, +f6(a,b){if(a==null)return this.bK(0,b) +if(a instanceof A.bb)return A.brh(a,this,b) +return this.P2(a,b)}, +f7(a,b){if(a==null)return this.bK(0,1-b) +if(a instanceof A.bb)return A.brh(this,a,b) +return this.P3(a,b)}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.bb)if(J.e(b.a,r.a))if(J.e(b.b,r.b))if(J.e(b.c,r.c))if(J.e(b.d,r.d))if(A.d7(b.e,r.e))if(J.e(b.f,r.f))s=b.w===r.w +return s}, +gB(a){var s=this,r=s.e +r=r==null?null:A.cj(r) +return A.a4(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)}, +WJ(a,b,c){var s +switch(this.w.a){case 0:s=this.d +if(s!=null)return s.Z(c).e9(new A.I(0,0,0+a.a,0+a.b)).p(0,b) +return!0 +case 1:return b.ai(0,a.nL(B.j)).ges()<=Math.min(a.a,a.b)/2}}, +y4(a){return new A.Ey(this,a)}} +A.Ey.prototype={ +a6h(a,b,c,d){var s=this.b +switch(s.w.a){case 1:a.k_(b.gbq(),b.gje()/2,c) +break +case 0:s=s.d +if(s==null||s.l(0,B.aH))a.ey(b,c) +else a.dk(s.Z(d).e9(b),c) +break}}, +aGN(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.ep(q.b) +n=q.d +this.a6h(a,new A.I(o.a-n,o.b-n,o.c+n,o.d+n),p,c)}}, +aGD(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.Kl(s)}r=null +switch(o.w.a){case 1:q=A.nc(b.gbq(),b.gje()/2) +r=$.ap().cR() +r.pe(q) +break +case 0:o=o.d +if(o!=null){r=$.ap().cR() +r.hk(o.Z(c.d).e9(b))}break}p.e.z8(a,b,r,c)}, +m(){var s=this.e +if(s!=null)s.m() +this.a_1()}, +jB(a,b,c){var s,r,q=this,p=c.e,o=b.a,n=b.b,m=new A.I(o,n,o+p.a,n+p.b),l=c.d +q.aGN(a,m,l) +p=q.b +o=p.a +n=o==null +if(!n||p.f!=null){if(q.c!=null)s=p.f!=null&&!J.e(q.d,m) +else s=!0 +if(s){r=$.ap().br() +if(!n)r.saG(0,o) +o=p.f +if(o!=null){r.swf(o.ac9(0,m,l)) +q.d=m}q.c=r}o=q.c +o.toString +q.a6h(a,m,o,l)}q.aGD(a,m,c) +o=p.c +if(o!=null){n=p.d +n=n==null?null:n.Z(l) +o.MQ(a,m,n,p.w,l)}}, +j(a){return"BoxPainter for "+this.b.j(0)}} +A.Hn.prototype={ +D(){return"BoxFit."+this.b}} +A.a0d.prototype={} +A.c6.prototype={ +kk(){var s=$.ap().br() +s.saG(0,this.a) +s.sXc(new A.xy(this.e,A.bNy(this.c))) +return s}, +bK(a,b){var s=this +return new A.c6(s.d*b,s.e,s.a,s.b.ap(0,b),s.c*b)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.c6&&b.a.l(0,s.a)&&b.b.l(0,s.b)&&b.c===s.c&&b.d===s.d&&b.e===s.e}, +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,s.e,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this +return"BoxShadow("+s.a.j(0)+", "+s.b.j(0)+", "+A.mq(s.c)+", "+A.mq(s.d)+", "+s.e.j(0)+")"}} +A.hb.prototype={ +bK(a,b){return new A.hb(this.b,this.a.bK(0,b))}, +f6(a,b){var s,r +if(a instanceof A.hb){s=A.bF(a.a,this.a,b) +r=A.ak(a.b,this.b,b) +r.toString +return new A.hb(A.M(r,0,1),s)}return this.wu(a,b)}, +f7(a,b){var s,r +if(a instanceof A.hb){s=A.bF(this.a,a.a,b) +r=A.ak(this.b,a.b,b) +r.toString +return new A.hb(A.M(r,0,1),s)}return this.wv(a,b)}, +l1(a,b){var s=$.ap().cR() +s.pe(this.GC(a).eA(-this.a.ghv())) +return s}, +fE(a,b){var s=$.ap().cR() +s.pe(this.GC(a)) +return s}, +w_(a){return this.fE(a,null)}, +kZ(a,b,c,d){if(this.b===0)a.k_(b.gbq(),b.gje()/2,c) +else a.Dc(this.GC(b),c)}, +gjC(){return!0}, +r3(a){var s=a==null?this.a:a +return new A.hb(this.b,s)}, +hW(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.k_(b.gbq(),(b.gje()+s)/2,r.kk()) +else a.Dc(this.GC(b).eA(s/2),r.kk()) +break}}, +aT(a,b){return this.hW(a,b,null)}, +GC(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.nc(a.gbq(),a.gje()/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.aoC(b.b,s.b)}, +gB(a){return A.a4(A.K(this),this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"ColorSwatch(primary value: "+this.am9(0)+")"}} +A.kC.prototype={ +fb(){return"Decoration"}, +gdW(a){return B.Z}, +gLQ(){return!1}, +f6(a,b){return null}, +f7(a,b){return null}, +WJ(a,b,c){return!0}, +F5(a,b){throw A.d(A.ag("This Decoration subclass does not expect to be used for clipping."))}} +A.X2.prototype={ +m(){}} +A.aep.prototype={} +A.BD.prototype={ +D(){return"ImageRepeat."+this.b}} +A.ada.prototype={ +Kl(a){var s,r=this.a +r=r==null?null:r.Kl(a) +s=this.b +s=s==null?null:s.Kl(a) +return new A.aZ7(r,s,this.c)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.ada&&J.e(b.a,s.a)&&J.e(b.b,s.b)&&b.c===s.c}, +gB(a){return A.a4(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"_BlendedDecorationImage("+A.c(this.a)+", "+A.c(this.b)+", "+A.c(this.c)+")"}} +A.aZ7.prototype={ +XC(a,b,c,d,e,f){var s,r,q=this +a.w6(null,$.ap().br()) +s=q.a +r=s==null +if(!r)s.XC(a,b,c,d,e*(1-q.c),f) +s=q.b +if(s!=null){r=!r?B.uz:f +s.XC(a,b,c,d,e*q.c,r)}a.el(0)}, +z8(a,b,c,d){return this.XC(a,b,c,d,1,B.dE)}, +m(){var s=this.a +if(s!=null)s.m() +s=this.b +if(s!=null)s.m()}, +j(a){return"_BlendedDecorationImagePainter("+A.c(this.a)+", "+A.c(this.b)+", "+A.c(this.c)+")"}} +A.eh.prototype={ +gde(){var s=this +return s.giP(s)+s.giR(s)+s.gkA(s)+s.gkw()}, +aOa(a){var s,r=this +switch(a.a){case 0:s=r.gde() +break +case 1:s=r.gc9(r)+r.gci(r) +break +default:s=null}return s}, +q(a,b){var s=this +return new A.vu(s.giP(s)+b.giP(b),s.giR(s)+b.giR(b),s.gkA(s)+b.gkA(b),s.gkw()+b.gkw(),s.gc9(s)+b.gc9(b),s.gci(s)+b.gci(b))}, +iv(a,b,c){var s=this +return new A.vu(A.M(s.giP(s),b.a,c.a),A.M(s.giR(s),b.c,c.b),A.M(s.gkA(s),0,c.c),A.M(s.gkw(),0,c.d),A.M(s.gc9(s),b.b,c.e),A.M(s.gci(s),b.d,c.f))}, +j(a){var s=this +if(s.gkA(s)===0&&s.gkw()===0){if(s.giP(s)===0&&s.giR(s)===0&&s.gc9(s)===0&&s.gci(s)===0)return"EdgeInsets.zero" +if(s.giP(s)===s.giR(s)&&s.giR(s)===s.gc9(s)&&s.gc9(s)===s.gci(s))return"EdgeInsets.all("+B.d.aF(s.giP(s),1)+")" +return"EdgeInsets("+B.d.aF(s.giP(s),1)+", "+B.d.aF(s.gc9(s),1)+", "+B.d.aF(s.giR(s),1)+", "+B.d.aF(s.gci(s),1)+")"}if(s.giP(s)===0&&s.giR(s)===0)return"EdgeInsetsDirectional("+B.d.aF(s.gkA(s),1)+", "+B.d.aF(s.gc9(s),1)+", "+B.d.aF(s.gkw(),1)+", "+B.d.aF(s.gci(s),1)+")" +return"EdgeInsets("+B.d.aF(s.giP(s),1)+", "+B.d.aF(s.gc9(s),1)+", "+B.d.aF(s.giR(s),1)+", "+B.d.aF(s.gci(s),1)+") + EdgeInsetsDirectional("+B.d.aF(s.gkA(s),1)+", 0.0, "+B.d.aF(s.gkw(),1)+", 0.0)"}, +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.eh&&b.giP(b)===s.giP(s)&&b.giR(b)===s.giR(s)&&b.gkA(b)===s.gkA(s)&&b.gkw()===s.gkw()&&b.gc9(b)===s.gc9(s)&&b.gci(b)===s.gci(s)}, +gB(a){var s=this +return A.a4(s.giP(s),s.giR(s),s.gkA(s),s.gkw(),s.gc9(s),s.gci(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.al.prototype={ +giP(a){return this.a}, +gc9(a){return this.b}, +giR(a){return this.c}, +gci(a){return this.d}, +gkA(a){return 0}, +gkw(){return 0}, +DI(a){var s=this +return new A.I(a.a-s.a,a.b-s.b,a.c+s.c,a.d+s.d)}, +CY(a){var s=this +return new A.I(a.a+s.a,a.b+s.b,a.c-s.c,a.d-s.d)}, +q(a,b){if(b instanceof A.al)return this.ab(0,b) +return this.a_8(0,b)}, +iv(a,b,c){var s=this +return new A.al(A.M(s.a,b.a,c.a),A.M(s.b,b.b,c.e),A.M(s.c,b.c,c.b),A.M(s.d,b.d,c.f))}, +ai(a,b){var s=this +return new A.al(s.a-b.a,s.b-b.b,s.c-b.c,s.d-b.d)}, +ab(a,b){var s=this +return new A.al(s.a+b.a,s.b+b.b,s.c+b.c,s.d+b.d)}, +ap(a,b){var s=this +return new A.al(s.a*b,s.b*b,s.c*b,s.d*b)}, +Z(a){return this}, +uy(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.al(r,q,p,a==null?s.d:a)}, +Ke(a){return this.uy(a,null,null,null)}, +abT(a,b){return this.uy(a,null,null,b)}, +aQA(a,b){return this.uy(null,a,b,null)}} +A.eA.prototype={ +gkA(a){return this.a}, +gc9(a){return this.b}, +gkw(){return this.c}, +gci(a){return this.d}, +giP(a){return 0}, +giR(a){return 0}, +q(a,b){if(b instanceof A.eA)return this.ab(0,b) +return this.a_8(0,b)}, +ai(a,b){var s=this +return new A.eA(s.a-b.a,s.b-b.b,s.c-b.c,s.d-b.d)}, +ab(a,b){var s=this +return new A.eA(s.a+b.a,s.b+b.b,s.c+b.c,s.d+b.d)}, +ap(a,b){var s=this +return new A.eA(s.a*b,s.b*b,s.c*b,s.d*b)}, +Z(a){var s,r=this +switch(a.a){case 0:s=new A.al(r.c,r.b,r.a,r.d) +break +case 1:s=new A.al(r.a,r.b,r.c,r.d) +break +default:s=null}return s}} +A.vu.prototype={ +ap(a,b){var s=this +return new A.vu(s.a*b,s.b*b,s.c*b,s.d*b,s.e*b,s.f*b)}, +Z(a){var s,r=this +switch(a.a){case 0:s=new A.al(r.d+r.a,r.e,r.c+r.b,r.f) +break +case 1:s=new A.al(r.c+r.a,r.e,r.d+r.b,r.f) +break +default:s=null}return s}, +giP(a){return this.a}, +giR(a){return this.b}, +gkA(a){return this.c}, +gkw(){return this.d}, +gc9(a){return this.e}, +gci(a){return this.f}} +A.Bq.prototype={ +ai(a,b){if(!(b instanceof A.Bq))return this.am0(0,b) +return A.aA9((this.a+1)/2-(b.a+1)/2,(this.b+1)/2-(b.b+1)/2)}, +ab(a,b){if(!(b instanceof A.Bq))return this.am_(0,b) +return A.aA9((this.a+1)/2+(b.a+1)/2,(this.b+1)/2+(b.b+1)/2)}, +ap(a,b){return A.aA9((this.a+1)/2*b,(this.b+1)/2*b)}, +j(a){return"FractionalOffset("+B.d.aF((this.a+1)/2,1)+", "+B.d.aF((this.b+1)/2,1)+")"}} +A.b_b.prototype={} +A.bih.prototype={ +$1(a){return a<=this.a}, +$S:396} +A.bhT.prototype={ +$1(a){var s=this,r=A.U(A.bz8(s.a,s.b,a),A.bz8(s.c,s.d,a),s.e) +r.toString +return r}, +$S:397} +A.aAS.prototype={ +S3(){var s,r,q,p=this.b +if(p!=null)return p +p=this.a.length +s=1/(p-1) +r=J.bmy(p,t.i) +for(q=0;q") +return new A.BV(s.d,s.e,s.f,A.a8(new A.ad(r,new A.aEU(b),q),!0,q.i("aN.E")),s.b,null)}, +f6(a,b){var s=A.bu0(a,this,b) +return s}, +f7(a,b){var s=A.bu0(this,a,b) +return s}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.BV&&b.d.l(0,s.d)&&b.e.l(0,s.e)&&b.f===s.f&&A.d7(b.a,s.a)&&A.d7(b.b,s.b)}, +gB(a){var s=this,r=A.cj(s.a),q=s.b +q=q==null?null:A.cj(q) +return A.a4(s.d,s.e,s.f,s.c,r,q,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this,r=A.a(["begin: "+s.d.j(0),"end: "+s.e.j(0),"colors: "+A.c(s.a)],t.s),q=s.b +if(q!=null)r.push("stops: "+A.c(q)) +r.push("tileMode: "+s.f.j(0)) +return"LinearGradient("+B.b.bJ(r,", ")+")"}} +A.aEU.prototype={ +$1(a){var s=A.U(null,a,this.a) +s.toString +return s}, +$S:114} +A.aC9.prototype={ +V(a){var s,r,q,p +for(s=this.b,r=s.gaJ(0),q=A.y(r),r=new A.bD(J.ay(r.a),r.b,q.i("bD<1,2>")),q=q.y[1];r.u();){p=r.a;(p==null?q.a(p):p).m()}s.V(0) +for(s=this.a,r=s.gaJ(0),q=A.y(r),r=new A.bD(J.ay(r.a),r.b,q.i("bD<1,2>")),q=q.y[1];r.u();){p=r.a +if(p==null)p=q.a(p) +p.a.K(0,p.b)}s.V(0) +this.f=0}, +VZ(a){var s,r,q,p=this,o=p.c.C(0,a) +if(o!=null){s=o.a +r=o.d +r===$&&A.b() +if(s.x)A.V(A.a1(u.V)) +B.b.C(s.y,r) +o.a_Z()}q=p.a.C(0,a) +if(q!=null){q.a.K(0,q.b) +return!0}o=p.b.C(0,a) +if(o!=null){s=p.f +r=o.b +r.toString +p.f=s-r +o.m() +return!0}return!1}, +a8V(a,b,c){var s,r=this,q=b.b +if(q!=null)s=q<=104857600 +else s=!1 +if(s){s=r.f +q.toString +r.f=s+q +r.b.n(0,a,b) +r.atM(c)}else b.m()}, +TP(a,b,c){var s=this.c.cP(0,a,new A.aCc(this,b,a)) +if(s.b==null)s.b=c}, +XP(a,b,c,d){var s,r,q,p,o,n,m,l=this,k=null,j={},i=l.a,h=i.h(0,b),g=h==null?k:h.a +j.a=g +if(g!=null)return g +h=l.b +q=h.C(0,b) +if(q!=null){j=q.a +l.TP(b,j,q.b) +h.n(0,b,q) +return j}p=l.c.h(0,b) +if(p!=null){j=p.a +l.a8V(b,new A.Qg(j,p.b,j.yY()),k) +return j}try{g=j.a=c.$0() +l.TP(b,g,k) +h=g}catch(o){s=A.v(o) +r=A.aT(o) +if(d!=null){d.$2(s,r) +return k}else throw o}j.b=!1 +n=A.bu("pendingImage") +m=new A.iQ(new A.aCd(j,l,b,!0,k,n),k,k) +n.b=new A.ahS(h,m) +i.n(0,b,n.b2()) +j.a.a4(0,m) +return j.a}, +cP(a,b,c){return this.XP(0,b,c,null)}, +N(a,b){return this.a.h(0,b)!=null||this.b.h(0,b)!=null}, +atM(a){var s,r,q,p,o,n=this,m=n.b,l=A.y(m).i("aR<1>") +while(!0){if(!(n.f>104857600||m.a>1000))break +s=new A.aR(m,l).gav(0) +if(!s.u())A.V(A.cV()) +r=s.gI(0) +q=m.h(0,r) +p=n.f +o=q.b +o.toString +n.f=p-o +q.m() +m.C(0,r)}}} +A.aCc.prototype={ +$0(){return A.bQf(this.b,new A.aCb(this.a,this.c))}, +$S:398} +A.aCb.prototype={ +$0(){this.a.c.C(0,this.b)}, +$S:0} +A.aCd.prototype={ +$2(a,b){var s,r,q,p,o,n=this +if(a!=null){s=a.a +r=s.gbA(s)*s.geu(s)*4 +s.m()}else r=null +s=n.a +q=s.a +p=new A.Qg(q,r,q.yY()) +q=n.b +o=n.c +q.TP(o,s.a,r) +if(n.d)q.a8V(o,p,n.e) +else p.m() +q.a.C(0,o) +if(!s.b){q=n.f.b2() +q.a.K(0,q.b)}s.b=!0}, +$S:231} +A.adn.prototype={ +m(){$.cp.p2$.push(new A.aZU(this))}} +A.aZU.prototype={ +$1(a){var s=this.a,r=s.c +if(r!=null)r.m() +s.c=null}, +$S:3} +A.Qg.prototype={} +A.Fi.prototype={ +arf(a,b,c){var s=new A.b98(this,b) +this.d=s +if(a.x)A.V(A.a1(u.V)) +a.y.push(s)}, +j(a){return"#"+A.c5(this)}} +A.b98.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.V(A.a1(u.V)) +B.b.C(r.y,q) +s.a_Z()}, +$S:0} +A.ahS.prototype={} +A.q7.prototype={ +Vj(a){var s=this +return new A.q7(s.a,s.b,s.c,s.d,a,s.f)}, +l(a,b){var s=this +if(b==null)return!1 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.q7&&b.a==s.a&&b.b==s.b&&J.e(b.c,s.c)&&b.d==s.d&&J.e(b.e,s.e)&&b.f==s.f}, +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.e,s.f,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this,r=""+"ImageConfiguration(",q=s.a,p=q!=null +if(p)r+="bundle: "+q.j(0) +q=s.b +if(q!=null){if(p)r+=", " +q=r+("devicePixelRatio: "+B.d.aF(q,1)) +r=q +p=!0}q=s.c +if(q!=null){if(p)r+=", " +q=r+("locale: "+q.j(0)) +r=q +p=!0}q=s.d +if(q!=null){if(p)r+=", " +q=r+("textDirection: "+q.j(0)) +r=q +p=!0}q=s.e +if(q!=null){if(p)r+=", " +q=r+("size: "+q.j(0)) +r=q +p=!0}q=s.f +if(q!=null){if(p)r+=", " +q=r+("platform: "+q.b) +r=q}r+=")" +return r.charCodeAt(0)==0?r:r}} +A.fZ.prototype={ +Z(a){var s=new A.aCx() +this.av2(a,new A.aCs(this,a,s),new A.aCt(this,s)) +return s}, +av2(a,b,c){var s,r,q,p,o,n={} +n.a=null +n.b=!1 +s=new A.aCp(n,c) +r=null +try{r=this.vq(a)}catch(o){q=A.v(o) +p=A.aT(o) +s.$2(q,p) +return}r.ak(new A.aCo(n,this,b,s),t.H).dc(s)}, +EA(a,b,c,d){var s,r +if(b.a!=null){s=$.ix.py$ +s===$&&A.b() +s.XP(0,c,new A.aCq(b),d) +return}s=$.ix.py$ +s===$&&A.b() +r=s.XP(0,c,new A.aCr(this,c),d) +if(r!=null)b.Zw(r)}, +vn(a,b){return A.bx7()}, +rJ(a,b){return A.bx7()}, +j(a){return"ImageConfiguration()"}} +A.aCs.prototype={ +$2(a,b){this.a.EA(this.b,this.c,a,b)}, +$S(){return A.y(this.a).i("~(fZ.T,~(O,d0?))")}} +A.aCt.prototype={ +$3(a,b,c){return this.aid(a,b,c)}, +aid(a,b,c){var s=0,r=A.n(t.H),q=this,p +var $async$$3=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:p=A.en(null,t.P) +s=2 +return A.f(p,$async$$3) +case 2:p=q.b +if(p.a==null)p.Zw(new A.b2W(A.a([],t.XZ),A.a([],t.SM),A.a([],t.qj))) +p=p.a +p.toString +p.q2(A.c3("while resolving an image"),b,null,!0,c) +return A.l(null,r)}}) +return A.m($async$$3,r)}, +$S(){return A.y(this.a).i("a2<~>(fZ.T?,O,d0?)")}} +A.aCp.prototype={ +aic(a,b){var s=0,r=A.n(t.H),q,p=this,o +var $async$$2=A.j(function(c,d){if(c===1)return A.k(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.l(q,r)}}) +return A.m($async$$2,r)}, +$2(a,b){return this.aic(a,b)}, +$S:400} +A.aCo.prototype={ +$1(a){var s,r,q,p=this +p.a.a=a +try{p.c.$2(a,p.d)}catch(q){s=A.v(q) +r=A.aT(q) +p.d.$2(s,r)}}, +$S(){return A.y(this.b).i("aF(fZ.T)")}} +A.aCq.prototype={ +$0(){var s=this.a.a +s.toString +return s}, +$S:232} +A.aCr.prototype={ +$0(){var s=this.a,r=this.b,q=s.rJ(r,$.ix.gaVM()) +return q instanceof A.acp?s.vn(r,$.ix.gaVJ()):q}, +$S:232} +A.acp.prototype={} +A.nZ.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.nZ&&b.a===s.a&&b.b===s.b&&b.c===s.c}, +gB(a){return A.a4(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"AssetBundleImageKey(bundle: "+this.a.j(0)+', name: "'+this.b+'", scale: '+A.c(this.c)+")"}} +A.WA.prototype={ +rJ(a,b){return A.Cq(null,this.mN(a,b),a.b,null,a.c)}, +vn(a,b){return A.Cq(null,this.mN(a,b),a.b,null,a.c)}, +mN(a,b){return this.aEg(a,b)}, +aEg(a,b){var s=0,r=A.n(t.hP),q,p=2,o,n,m,l,k +var $async$mN=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:l=null +p=4 +s=7 +return A.f(a.a.M4(a.b),$async$mN) +case 7:l=d +p=2 +s=6 +break +case 4:p=3 +k=o +if(A.v(k) instanceof A.og){m=$.ix.py$ +m===$&&A.b() +m.VZ(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.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$mN,r)}} +A.u2.prototype={ +vq(a){return new A.cv(this,t.Q6)}, +vn(a,b){return A.Cq(null,this.mN(a,b),"MemoryImage("+("#"+A.c5(a.a))+")",null,a.b)}, +rJ(a,b){return A.Cq(null,this.mN(a,b),"MemoryImage("+("#"+A.c5(a.a))+")",null,a.b)}, +mN(a,b){return this.aEi(a,b)}, +aEi(a,b){var s=0,r=A.n(t.hP),q,p=this,o +var $async$mN=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:o=b +s=3 +return A.f(A.tG(p.a),$async$mN) +case 3:q=o.$1(d) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$mN,r)}, +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.u2&&b.a===this.a&&b.b===this.b}, +gB(a){return A.a4(A.at(this.a),this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"MemoryImage("+("#"+A.c5(this.a))+", scale: "+B.e.aF(this.b,1)+")"}} +A.b2W.prototype={} +A.a4V.prototype={ +j(a){return this.b}, +$ibm:1} +A.H3.prototype={ +gyZ(){return this.a}, +vq(a){var s,r={},q=a.a +if(q==null)q=$.vX() +r.a=r.b=null +s=t.P +A.bJ1(A.bFu(q).ak(new A.aq_(r,this,a,q),s),new A.aq0(r),s,t.K) +s=r.a +if(s!=null)return s +s=new A.a_($.ab,t.Lv) +r.b=new A.aq(s,t.h8) +return s}, +au6(a,b,c){var s,r,q,p,o +if(c==null||c.length===0||b.b==null)return new A.t5(null,a) +s=A.bnM(t.i,t.pR) +for(r=c.length,q=0;q(r+q)/2){s=a.h(0,q) +s.toString +return s}else{s=a.h(0,r) +s.toString +return s}}, +l(a,b){var s +if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +if(b instanceof A.H3)s=b.gyZ()===this.gyZ() +else s=!1 +return s}, +gB(a){return A.a4(this.gyZ(),this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"AssetImage(bundle: "+A.c(this.b)+', name: "'+this.gyZ()+'")'}} +A.aq_.prototype={ +$1(a){var s,r,q=this,p=q.b,o=a.aiJ(p.gyZ()),n=p.au6(p.gyZ(),q.c,o) +p=n.a +if(p==null)p=1 +s=new A.nZ(q.d,n.b,p) +p=q.a +r=p.b +if(r!=null)r.bv(0,s) +else p.a=new A.cv(s,t.WT)}, +$S:402} +A.aq0.prototype={ +$2(a,b){this.a.b.dh(a,b)}, +$S:25} +A.fY.prototype={ +hN(a){return new A.fY(this.a.hN(0),this.b,this.c)}, +j(a){var s=this.c +s=s!=null?s+" ":"" +return s+this.a.j(0)+" @ "+A.mq(this.b)+"x"}, +gB(a){return A.a4(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.ah(b)!==A.K(s))return!1 +return b instanceof A.fY&&b.a===s.a&&b.b===s.b&&b.c==s.c}} +A.iQ.prototype={ +gB(a){return A.a4(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.ah(b)!==A.K(s))return!1 +return b instanceof A.iQ&&J.e(b.a,s.a)&&J.e(b.b,s.b)&&J.e(b.c,s.c)}, +aYc(a,b){return this.a.$2(a,b)}} +A.iP.prototype={} +A.aCx.prototype={ +Zw(a){var s,r=this +r.a=a +s=r.b +if(s!=null){r.b=null +a.r=!0 +B.b.az(s,a.gCe(a)) +r.a.r=!1}}, +a4(a,b){var s=this.a +if(s!=null)return s.a4(0,b) +s=this.b;(s==null?this.b=A.a([],t.XZ):s).push(b)}, +K(a,b){var s,r=this.a +if(r!=null)return r.K(0,b) +for(s=0;r=this.b,s")),t.kE),!0,t.CF) +n=i.b +B.b.G(o,n) +B.b.V(n) +s=!1 +for(n=o.length,m=0;m")),r),!0,r.i("B.E")) +for(s=q.length,p=0;p=s.a}else r=!0 +if(r){s=p.ax +p.a2Y(new A.fY(s.glE(s).hN(0),p.as,p.e)) +p.ay=a +s=p.ax +p.ch=s.gKS(s) +s=p.ax +s.glE(s).m() +p.ax=null +q=B.e.im(p.CW,p.Q.gyP()) +if(p.Q.gNm()===-1||q<=p.Q.gNm())p.wM() +return}s.toString +r=p.ay +r===$&&A.b() +p.cx=A.bZ(new A.bj(B.e.aa(s.a-(a.a-r.a))),new A.aJU(p))}, +wM(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$wM=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:j=n.ax +if(j!=null)j.glE(j).m() +n.ax=null +p=4 +s=7 +return A.f(n.Q.vY(),$async$wM) +case 7:n.ax=b +p=2 +s=6 +break +case 4:p=3 +i=o +m=A.v(i) +l=A.aT(i) +n.q2(A.c3("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.gyP()===1){if(n.a.length===0){s=1 +break}j=n.ax +n.a2Y(new A.fY(j.glE(j).hN(0),n.as,n.e)) +j=n.ax +j.glE(j).m() +n.ax=null +s=1 +break}n.a7j() +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$wM,r)}, +a7j(){if(this.cy)return +this.cy=!0 +$.cp.zT(this.gazi())}, +a2Y(a){this.OK(a);++this.CW}, +a4(a,b){var s,r=this,q=!1 +if(r.a.length===0){s=r.Q +if(s!=null)q=r.c==null||s.gyP()>1}if(q)r.wM() +r.a_d(0,b)}, +K(a,b){var s,r=this +r.a_e(0,b) +if(r.a.length===0){s=r.cx +if(s!=null)s.S(0) +r.cx=null}}, +I6(){var s,r=this +r.amx() +if(r.x){s=r.z +if(s!=null)s.jA(null) +s=r.z +if(s!=null)s.S(0) +r.z=null}}} +A.aJV.prototype={ +$2(a,b){this.a.q2(A.c3("resolving an image codec"),a,this.b,!0,b)}, +$S:25} +A.aJW.prototype={ +$2(a,b){this.a.q2(A.c3("loading an image"),a,this.b,!0,b)}, +$S:25} +A.aJU.prototype={ +$0(){this.a.a7j()}, +$S:0} +A.agf.prototype={} +A.agh.prototype={} +A.agg.prototype={} +A.W5.prototype={ +gk(a){return this.a}} +A.q9.prototype={ +l(a,b){var s=this +if(b==null)return!1 +return b instanceof A.q9&&b.a===s.a&&b.b==s.b&&b.d===s.d&&A.d7(b.f,s.f)}, +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"InlineSpanSemanticsInformation{text: "+this.a+", semanticsLabel: "+A.c(this.b)+", recognizer: "+A.c(this.c)+"}"}} +A.k7.prototype={ +Z7(a){var s={} +s.a=null +this.bZ(new A.aCK(s,a,new A.W5())) +return s.a}, +t3(a){var s,r=new A.cD("") +this.Vc(r,!0,a) +s=r.a +return s.charCodeAt(0)==0?s:s}, +ah7(){return this.t3(!0)}, +pr(a,b){var s={} +if(b<0)return null +s.a=null +this.bZ(new A.aCJ(s,b,new A.W5())) +return s.a}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.k7&&J.e(b.a,this.a)}, +gB(a){return J.W(this.a)}} +A.aCK.prototype={ +$1(a){var s=a.Z8(this.b,this.c) +this.a.a=s +return s==null}, +$S:144} +A.aCJ.prototype={ +$1(a){var s=a.abq(this.b,this.c) +this.a.a=s +return s==null}, +$S:144} +A.a63.prototype={ +Vc(a,b,c){var s=A.ek(65532) +a.a+=s}, +K7(a){a.push(B.a2q)}} +A.cu.prototype={ +bK(a,b){var s=this.a.bK(0,b) +return new A.cu(this.b.ap(0,b),s)}, +f6(a,b){var s,r,q=this +if(a instanceof A.cu){s=A.bF(a.a,q.a,b) +r=A.o_(a.b,q.b,b) +r.toString +return new A.cu(r,s)}if(a instanceof A.hb){s=A.bF(a.a,q.a,b) +return new A.j4(q.b,1-b,a.b,s)}return q.wu(a,b)}, +f7(a,b){var s,r,q=this +if(a instanceof A.cu){s=A.bF(q.a,a.a,b) +r=A.o_(q.b,a.b,b) +r.toString +return new A.cu(r,s)}if(a instanceof A.hb){s=A.bF(q.a,a.a,b) +return new A.j4(q.b,b,a.b,s)}return q.wv(a,b)}, +r3(a){var s=a==null?this.a:a +return new A.cu(this.b,s)}, +l1(a,b){var s=this.b.Z(b).e9(a).eA(-this.a.ghv()),r=$.ap().cR() +r.hk(s) +return r}, +ajc(a){return this.l1(a,null)}, +fE(a,b){var s=$.ap().cR() +s.hk(this.b.Z(b).e9(a)) +return s}, +w_(a){return this.fE(a,null)}, +kZ(a,b,c,d){var s=this.b +if(s.l(0,B.aH))a.ey(b,c) +else a.dk(s.Z(d).e9(b),c)}, +gjC(){return!0}, +hW(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.dk(s.Z(c).e9(b),o.kk()) +else{r=$.ap().br() +r.saG(0,o.a) +q=s.Z(c).e9(b) +p=q.eA(-o.ghv()) +a.Db(q.eA(o.gwo()),p,r)}break}}, +aT(a,b){return this.hW(a,b,null)}, +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.cu&&b.a.l(0,this.a)&&b.b.l(0,this.b)}, +gB(a){return A.a4(this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"RoundedRectangleBorder("+this.a.j(0)+", "+this.b.j(0)+")"}} +A.j4.prototype={ +bK(a,b){var s=this.a.bK(0,b) +return new A.j4(this.b.ap(0,b),b,this.d,s)}, +f6(a,b){var s,r,q,p=this +if(a instanceof A.cu){s=A.bF(a.a,p.a,b) +r=A.o_(a.b,p.b,b) +r.toString +return new A.j4(r,p.c*b,p.d,s)}if(a instanceof A.hb){s=A.bF(a.a,p.a,b) +r=p.c +return new A.j4(p.b,r+(1-r)*(1-b),a.b,s)}if(a instanceof A.j4){s=A.bF(a.a,p.a,b) +r=A.o_(a.b,p.b,b) +r.toString +q=A.ak(a.c,p.c,b) +q.toString +return new A.j4(r,q,p.d,s)}return p.wu(a,b)}, +f7(a,b){var s,r,q,p=this +if(a instanceof A.cu){s=A.bF(p.a,a.a,b) +r=A.o_(p.b,a.b,b) +r.toString +return new A.j4(r,p.c*(1-b),p.d,s)}if(a instanceof A.hb){s=A.bF(p.a,a.a,b) +r=p.c +return new A.j4(p.b,r+(1-r)*b,a.b,s)}if(a instanceof A.j4){s=A.bF(p.a,a.a,b) +r=A.o_(p.b,a.b,b) +r.toString +q=A.ak(p.c,a.c,b) +q.toString +return new A.j4(r,q,p.d,s)}return p.wv(a,b)}, +BG(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.gjC())p.x=A.a8(new A.ad(r,new A.bdk(a),A.af(r).i("ad<1,I>")),!0,t.YT) +else p.y=A.a8(new A.ad(r,new A.bdl(p,a,b),A.af(r).i("ad<1,M_>")),!0,t.Ze)}r=s.e +if(!r.gjC())q=p.r!=null||p.w!=null +else q=!1 +if(q)p.e=r.fE(a,b) +if(s.c!=null)p.f=r.l1(a,b) +p.c=a +p.d=b}, +aKk(a,b,c){var s,r,q,p,o=this +if(o.w!=null){s=o.b.e +if(s.gjC()){r=0 +while(!0){q=o.w +q.toString +if(!(r>>0)+r+-56613888 +break $label0$0}if(56320===s){r=r.pr(0,a-1) +r.toString +r=(r<<10>>>0)+q+-56613888 +break $label0$0}r=q +break $label0$0}return r}, +aKM(a,b){var s,r=this.aug(b?a-1:a),q=b?a:a-1,p=this.a.pr(0,q) +if(!(r==null||p==null||A.bod(r)||A.bod(p))){q=A.bB("[\\p{Space_Separator}\\p{Punctuation}]",!0,!1,!0) +s=A.ek(r) +q=!q.b.test(s)}else q=!0 +return q}, +gaf8(){var s=this,r=s.c +if(r===$){r!==$&&A.aH() +r=s.c=new A.amg(s.gaKL(),s)}return r}} +A.amg.prototype={ +ij(a){var s +if(a<0)return null +s=this.b.ij(a) +return s==null||this.a.$2(s,!1)?s:this.ij(s-1)}, +ik(a){var s=this.b.ik(Math.max(a,0)) +return s==null||this.a.$2(s,!0)?s:this.ik(s)}} +A.bfn.prototype={ +qa(a){var s +switch(a.a){case 0:s=this.c +s=s.gCi(s) +break +case 1:s=this.c +s=s.gaVg(s) +break +default:s=null}return s}, +aux(){var s,r,q,p,o,n,m=this,l=m.b.gpY(),k=m.c.gafg() +k=m.c.YX(k-1) +k.toString +s=l.charCodeAt(l.length-1) +$label0$0:{r=9===s||12288===s||32===s +if(r)break $label0$0 +break $label0$0}q=k.gmU() +p=A.boq("lastGlyph",new A.bfo(m,l)) +o=null +if(r&&p.jR()!=null){n=p.jR().a +k=m.a +switch(k.a){case 1:r=n.c +break +case 0:r=n.a +break +default:r=o}o=r}else{r=m.a +switch(r.a){case 1:k=k.gkc(k)+k.geu(k) +break +case 0:k=k.gkc(k) +break +default:k=o}o=k +k=r}return new A.Ff(new A.z(o,q),k)}, +Qm(a,b,c){var s +switch(c.a){case 1:s=A.M(this.c.gaWU(),a,b) +break +case 0:s=A.M(this.c.grN(),a,b) +break +default:s=null}return s}} +A.bfo.prototype={ +$0(){return this.a.c.YQ(this.b.length-1)}, +$S:412} +A.alm.prototype={ +glH(){var s,r,q=this.d +if(q===0)return B.j +s=this.a +r=s.c +if(!isFinite(r.geu(r)))return B.ajp +r=this.c +s=s.c +return new A.z(q*(r-s.geu(s)),0)}, +aIV(a,b,c){var s,r,q,p=this,o=p.c +if(b===o&&a===o){p.c=p.a.Qm(a,b,c) +return!0}if(!isFinite(p.glH().a)){o=p.a.c +o=!isFinite(o.geu(o))&&isFinite(a)}else o=!1 +if(o)return!1 +o=p.a +s=o.c.grN() +if(b!==p.b){r=o.c +q=r.geu(r)-s>-1e-10&&b-s>-1e-10}else q=!0 +if(q){p.c=o.Qm(a,b,c) +return!0}return!1}} +A.Ff.prototype={} +A.E0.prototype={ +ae(){var s=this.b +if(s!=null)s.a.c.m() +this.b=null}, +se3(a,b){var s,r,q,p=this +if(J.e(p.e,b))return +s=p.e +s=s==null?null:s.a +r=b==null +if(!J.e(s,r?null:b.a)){s=p.ch +if(s!=null)s.m() +p.ch=null}if(r)q=B.cd +else{s=p.e +s=s==null?null:s.bO(0,b) +q=s==null?B.cd:s}p.e=b +p.f=null +s=q.a +if(s>=3)p.ae() +else if(s>=2)p.c=!0}, +gpY(){var s=this.f +if(s==null){s=this.e +s=s==null?null:s.t3(!1) +this.f=s}return s==null?"":s}, +st_(a,b){if(this.r===b)return +this.r=b +this.ae()}, +scr(a){var s,r=this +if(r.w==a)return +r.w=a +r.ae() +s=r.ch +if(s!=null)s.m() +r.ch=null}, +sem(a){var s,r=this +if(a.l(0,r.x))return +r.x=a +r.ae() +s=r.ch +if(s!=null)s.m() +r.ch=null}, +sVS(a){if(this.y==a)return +this.y=a +this.ae()}, +srM(a,b){if(J.e(this.z,b))return +this.z=b +this.ae()}, +srO(a){if(this.Q==a)return +this.Q=a +this.ae()}, +smG(a){if(J.e(this.as,a))return +this.as=a +this.ae()}, +st0(a){if(this.at===a)return +this.at=a}, +svM(a){return}, +gaej(){var s,r,q,p=this.b +if(p==null)return null +s=p.glH() +if(!isFinite(s.a)||!isFinite(s.b))return A.a([],t.Lx) +r=p.e +if(r==null)r=p.e=p.a.c.O8() +if(s.l(0,B.j))return r +q=A.af(r).i("ad<1,hO>") +return A.a8(new A.ad(r,new A.aUx(s),q),!1,q.i("aN.E"))}, +l6(a){if(a==null||a.length===0||A.d7(a,this.ay))return +this.ay=a +this.ae()}, +a2g(a){var s,r,q,p,o=this,n=o.e,m=n==null?null:n.a +if(m==null)m=B.i9 +n=a==null?o.r:a +s=o.w +r=o.x +q=o.Q +p=o.ax +return m.ajw(o.y,o.z,q,o.as,n,s,p,r)}, +av7(){return this.a2g(null)}, +eq(){var s,r,q=this,p=q.ch +if(p==null){p=q.a2g(B.k6) +s=$.ap().Km(p) +p=q.e +if(p==null)r=null +else{p=p.a +r=p==null?null:p.Fv(q.x)}if(r!=null)s.ze(r) +s.Cg(" ") +p=s.cL() +p.j4(B.Jx) +q.ch=p}return p}, +a2f(a){var s=this,r=s.av7(),q=$.ap().Km(r) +r=s.x +a.JN(q,s.ay,r) +s.c=!1 +return q.cL()}, +kR(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.b,f=g==null +if(!f&&g.aIV(b,a,h.at))return +s=h.e +if(s==null)throw A.d(A.a1("TextPainter.text must be set to a non-null value before using the TextPainter.")) +r=h.w +if(r==null)throw A.d(A.a1("TextPainter.textDirection must be set to a non-null value before using the TextPainter.")) +q=A.bwr(h.r,r) +if(!(!isFinite(a)&&q!==0))p=a +else p=f?null:g.a.c.grN() +o=p==null +n=o?a:p +m=f?null:g.a.c +if(m==null)m=h.a2f(s) +m.j4(new A.ug(n)) +l=new A.bfn(r,h,m) +k=l.Qm(b,a,h.at) +if(o&&isFinite(b)){j=l.c.grN() +m.j4(new A.ug(j)) +i=new A.alm(l,j,k,q)}else i=new A.alm(l,n,k,q) +h.b=i}, +M0(){return this.kR(1/0,0)}, +aWs(a){return this.kR(a,0)}, +aT(a,b){var s,r,q,p=this,o=p.b +if(o==null)throw A.d(A.a1("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.glH().a)||!isFinite(o.glH().b))return +if(p.c){s=o.a +r=s.c +q=p.e +q.toString +q=p.a2f(q) +q.j4(new A.ug(o.b)) +s.c=q +r.m()}a.rg(o.a.c,b.ab(0,o.glH()))}, +YZ(a){var s=this.e.pr(0,a) +if(s==null)return null +return(s&64512)===55296?a+2:a+1}, +Z_(a){var s=a-1,r=this.e.pr(0,s) +if(r==null)return null +return(r&64512)===56320?a-2:s}, +ow(a,b){var s,r,q,p,o,n,m,l,k=this,j=k.b +j.toString +s=k.Qh(a) +if(s==null){r=k.r +q=k.w +q.toString +p=A.bwr(r,q) +return new A.z(p===0?0:p*j.c,0)}$label0$0:{o=s.b +n=B.i===o +if(n)m=s.a +else m=null +if(n){l=m +r=l +break $label0$0}n=B.ae===o +if(n){m=s.a +r=m +r=r instanceof A.z}else r=!1 +if(r){l=n?m:s.a +r=new A.z(l.a-(b.c-b.a),l.b) +break $label0$0}r=null}return new A.z(A.M(r.a+j.glH().a,0,j.c),r.b+j.glH().b)}, +YP(a,b){var s=B.b.gd_(this.eq().YJ(0,1,B.uM)) +return s.d-s.b}, +Qh(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=a.b,a2=a1.a +if(a2.c.gafg()<1||a.gpY().length===0)return a0 +$label0$0:{s=a3.a +if(0===s){r=B.al0 +break $label0$0}q=a0 +r=!1 +q=a3.b +r=B.q===q +if(r){r=new A.b3(s,!0) +break $label0$0}p=a0 +r=!1 +p=B.aW===q +o=p +if(o){r=s-1 +r=0<=r&&r") +r=A.a8(new A.ad(s,new A.aUw(p),r),!1,r.i("aN.E"))}return r}, +nn(a){return this.vU(a,B.iw,B.fT)}, +YM(a){var s=this.b,r=s.a.c.aiP(a.ai(0,s.glH())) +if(r==null||s.glH().l(0,B.j))return r +return new A.q2(r.a.ep(s.glH()),r.b,r.c)}, +fe(a){var s=this.b +return s.a.c.fe(a.ai(0,s.glH()))}, +Cy(){var s,r,q=this.b,p=q.glH() +if(!isFinite(p.a)||!isFinite(p.b))return B.aa8 +s=q.f +if(s==null){s=q.a.c.Cy() +q.f=s}if(p.l(0,B.j))r=s +else{r=A.af(s).i("ad<1,BU>") +r=A.a8(new A.ad(s,new A.aUv(p),r),!1,r.i("aN.E"))}return r}, +m(){var s=this,r=s.ch +if(r!=null)r.m() +s.ch=null +r=s.b +if(r!=null)r.a.c.m() +s.e=s.b=null}} +A.aUx.prototype={ +$1(a){return A.bws(a,this.a)}, +$S:143} +A.aUw.prototype={ +$1(a){return A.bws(a,this.a)}, +$S:143} +A.aUv.prototype={ +$1(a){var s=this.a,r=a.gaUS(),q=a.gaOs(),p=a.gacs(),o=a.gb0E(),n=a.gbA(a),m=a.geu(a),l=a.gkc(a),k=a.gmU(),j=a.gaeU(a) +return $.ap().aR_(q,k+s.b,p,r,n,l+s.a,j,o,m)}, +$S:414} +A.mj.prototype={ +abi(a,b,c){var s=this.a,r=A.M(s,c,b) +return r===s?this:new A.mj(r)}, +aPs(a,b){return this.abi(0,b,0)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.mj&&b.a===this.a}, +gB(a){return B.d.gB(this.a)}, +j(a){var s=this.a +return s===1?"no scaling":"linear ("+A.c(s)+"x)"}} +A.v_.prototype={ +gCS(a){return this.e}, +gYB(){return!0}, +n6(a,b){}, +JN(a,b,c){var s,r,q,p,o,n=this.a,m=n!=null +if(m)a.ze(n.Fv(c)) +n=this.b +if(n!=null)try{a.Cg(n)}catch(q){n=A.v(q) +if(n instanceof A.jf){s=n +r=A.aT(q) +A.e9(new A.cM(s,r,"painting library",A.c3("while building a TextSpan"),null,!0)) +a.Cg("\ufffd")}else throw q}p=this.c +if(p!=null)for(n=p.length,o=0;o0?q:B.dX +if(p===B.cd)return p}else p=B.dX +s=n.c +if(s!=null)for(r=b.c,o=0;op.a)p=q +if(p===B.cd)return p}return p}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +if(!s.a_g(0,b))return!1 +return b instanceof A.v_&&b.b==s.b&&s.e.l(0,b.e)&&A.d7(b.c,s.c)}, +gB(a){var s=this,r=null,q=A.k7.prototype.gB.call(s,0),p=s.c +p=p==null?r:A.cj(p) +return A.a4(q,s.b,r,r,r,r,s.e,p,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +fb(){return"TextSpan"}, +$iaU:1, +$iow:1, +gafi(){return null}, +gafj(){return null}} +A.J.prototype={ +gpG(){var s,r=this.e +if(!(this.f==null))if(r==null)r=null +else{s=A.af(r).i("ad<1,h>") +s=A.a8(new A.ad(r,new A.aUA(this),s),!0,s.i("aN.E")) +r=s}return r}, +gug(a){var s,r=this.f +if(r!=null){s=this.d +return s==null?null:B.c.bE(s,("packages/"+r+"/").length)}return this.d}, +kH(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){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this,a1=c0==null?a0.a:c0,a2=a0.ay +if(a2==null&&b8==null)s=a5==null?a0.b:a5 +else s=null +r=a0.ch +if(r==null&&a3==null)q=a4==null?a0.c:a4 +else q=null +p=b4==null?a0.r:b4 +o=b7==null?a0.w:b7 +n=c2==null?a0.y:c2 +m=c8==null?a0.z:c8 +l=c7==null?a0.Q:c7 +k=b9==null?a0.as:b9 +j=c1==null?a0.at:c1 +a2=b8==null?a2:b8 +r=a3==null?r:a3 +i=c6==null?a0.dy:c6 +h=b6==null?a0.fx:b6 +g=a7==null?a0.CW:a7 +f=a8==null?a0.cx:a8 +e=a9==null?a0.cy:a9 +d=b0==null?a0.db:b0 +c=b1==null?a0.gug(0):b1 +b=b2==null?a0.e:b2 +a=c5==null?a0.f:c5 +return A.cb(r,q,s,null,g,f,e,d,c,b,a0.fr,p,a0.x,h,o,a2,k,a1,j,n,a0.ax,a0.fy,a,i,l,m)}, +aQH(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.kH(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)}, +cc(a){var s=null +return this.kH(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)}, +xZ(a,b){var s=null +return this.kH(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)}, +aQj(a){var s=null +return this.kH(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)}, +e5(a,b,c){var s=null +return this.kH(s,s,a,s,s,s,s,s,s,s,s,b,s,s,c,s,s,s,s,s,s,s,s,s,s,s)}, +f4(a,b){var s=null +return this.kH(s,s,s,s,s,s,s,s,s,s,s,a,s,s,b,s,s,s,s,s,s,s,s,s,s,s)}, +m5(a){var s=null +return this.kH(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)}, +ac_(a,b,c,d){var s=null +return this.kH(s,s,a,s,s,s,s,s,s,s,s,b,s,s,c,s,d,s,s,s,s,s,s,s,s,s)}, +aQv(a,b){var s=null +return this.kH(s,s,a,s,s,s,s,s,s,s,s,s,s,s,b,s,s,s,s,s,s,s,s,s,s,s)}, +aQz(a,b){var s=null +return this.kH(s,s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,b,s,s,s,s,s,s,s,s,s)}, +abL(a){var s=null +return this.kH(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)}, +aQL(a,b,c,d){var s=null +return this.kH(s,s,a,s,s,s,s,s,b,s,s,c,s,s,s,s,s,s,s,d,s,s,s,s,s,s)}, +aQJ(a,b,c){var s=null +return this.kH(s,s,s,s,s,s,s,s,s,s,s,a,s,s,b,s,c,s,s,s,s,s,s,s,s,s)}, +Vi(a){var s=null +return this.kH(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)}, +jU(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=e==null?h.gug(0):e +o=h.r +o=o==null?g:o*a2+a1 +n=h.w +n=n==null?g:B.qd[B.e.iv(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 +if(!(k==null||k===0)){k.toString +k+=0}j=c==null?h.cx:c +i=h.db +i=i==null?g:i+0 +return A.cb(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)}, +cO(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.gug(0) +a2=a4.e +a3=a4.f +return this.aQH(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)}, +Fv(a){var s,r,q,p,o,n,m,l=this,k=l.r +$label0$0:{s=null +if(k==null)break $label0$0 +r=a.l(0,B.aB) +if(r){s=k +break $label0$0}r=k*a.a +s=r +break $label0$0}r=l.gpG() +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.A){m=p==null?t.n8.a(p):p +o=$.ap().br() +o.saG(0,m) +break $label1$1}o=null +break $label1$1}return A.bnV(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)}, +ajw(a,b,c,d,e,a0,a1,a2){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.at,g=h==null?null:new A.OQ(h),f=i.r +if(f==null)f=14 +s=a2.a +if(d==null)r=null +else{r=d.a +q=d.gpG() +p=d.d +$label0$0:{o=null +if(p==null)break $label0$0 +n=p*s +o=n +break $label0$0}n=d.e +m=d.x +l=d.f +k=d.r +j=d.w +l=$.ap().aR7(r,q,o,j,k,!0,n,m,l) +r=l}return A.bne(a,i.d,f*s,i.x,i.w,i.as,b,c,r,e,a0,g)}, +bO(a,b){var s,r=this +if(r===b)return B.dX +s=!0 +if(r.a===b.a)if(r.d==b.d)if(r.r==b.r)if(r.w==b.w)if(r.y==b.y)if(r.z==b.z)if(r.Q==b.Q)if(r.as==b.as)if(r.at==b.at)if(r.ay==b.ay)if(r.ch==b.ch)if(A.d7(r.dy,b.dy))if(A.d7(r.fr,b.fr))if(A.d7(r.fx,b.fx)){s=A.d7(r.gpG(),b.gpG()) +s=!s}if(s)return B.cd +if(!J.e(r.b,b.b)||!J.e(r.c,b.c)||!J.e(r.CW,b.CW)||!J.e(r.cx,b.cx)||r.cy!=b.cy||r.db!=b.db)return B.alg +return B.dX}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.J)if(b.a===r.a)if(J.e(b.b,r.b))if(J.e(b.c,r.c))if(b.r==r.r)if(b.w==r.w)if(b.y==r.y)if(b.z==r.z)if(b.Q==r.Q)if(b.as==r.as)if(b.at==r.at)if(b.ay==r.ay)if(b.ch==r.ch)if(A.d7(b.dy,r.dy))if(A.d7(b.fr,r.fr))if(A.d7(b.fx,r.fx))if(J.e(b.CW,r.CW))if(J.e(b.cx,r.cx))if(b.cy==r.cy)if(b.db==r.db)if(b.d==r.d)if(A.d7(b.gpG(),r.gpG()))s=b.f==r.f +return s}, +gB(a){var s,r=this,q=null,p=r.gpG(),o=p==null?q:A.cj(p),n=A.a4(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.cj(m) +s=l==null?q:A.cj(l) +return A.a4(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)}, +fb(){return"TextStyle"}} +A.aUA.prototype={ +$1(a){var s=this.a.f +return"packages/"+(s==null?A.bS(s):s)+"/"+a}, +$S:40} +A.alx.prototype={} +A.a0s.prototype={ +aqM(a,b,c,d,e){var s=this +s.r=A.byW(new A.aAc(s),s.gVR(s),0,10,0)}, +i1(a,b){var s,r,q=this +if(b>q.r)return q.gLi() +s=q.e +r=q.c +return q.d+s*Math.pow(q.b,b)/r-s/r-q.f/2*b*b}, +j0(a,b){var s=this +if(b>s.r)return 0 +return s.e*Math.pow(s.b,b)-s.f*b}, +gLi(){var s=this +if(s.f===0)return s.d-s.e/s.c +return s.i1(0,s.r)}, +ah_(a){var s,r=this,q=r.d +if(a===q)return 0 +s=r.e +if(s!==0)if(s>0)q=ar.gLi() +else q=a>q||a=r.b&&r.c>=r.d +else q=!0 +if(q){o.f_(0) +o=p.dH +p.id=o.a=o.b=new A.R(A.M(0,r.a,r.b),A.M(0,r.c,r.d)) +p.iy=B.No +o=p.H$ +if(o!=null)o.j4(r) +return}s.df(r,!0) +switch(p.iy.a){case 0:o=p.dH +o.a=o.b=p.H$.gv(0) +p.iy=B.rx +break +case 1:s=p.dH +if(!J.e(s.b,p.H$.gv(0))){s.a=p.gv(0) +s.b=p.H$.gv(0) +p.fo=0 +o.n5(0,0) +p.iy=B.ale}else{q=o.x +q===$&&A.b() +if(q===o.b)s.a=s.b=p.H$.gv(0) +else{s=o.r +if(!(s!=null&&s.a!=null))o.cd(0)}}break +case 2:s=p.dH +if(!J.e(s.b,p.H$.gv(0))){s.a=s.b=p.H$.gv(0) +p.fo=0 +o.n5(0,0) +p.iy=B.alf}else{p.iy=B.rx +s=o.r +if(!(s!=null&&s.a!=null))o.cd(0)}break +case 3:s=p.dH +if(!J.e(s.b,p.H$.gv(0))){s.a=s.b=p.H$.gv(0) +p.fo=0 +o.n5(0,0)}else{o.f_(0) +p.iy=B.rx}break}o=p.dH +s=p.ez +s===$&&A.b() +s=o.al(0,s.gk(0)) +s.toString +p.id=r.bD(s) +p.UA() +if(p.gv(0).a=a.b&&a.c>=a.d +else s=!0 +if(s)return new A.R(A.M(0,a.a,a.b),A.M(0,a.c,a.d)) +p=p.aM(B.af,a,p.gdD()) +switch(q.iy.a){case 0:return a.bD(p) +case 1:if(!J.e(q.dH.b,p))return a.bD(q.gv(0)) +else{s=q.dt +s===$&&A.b() +r=s.x +r===$&&A.b() +if(r===s.b)return a.bD(p)}break +case 3:case 2:if(!J.e(q.dH.b,p))return a.bD(p) +break}p=q.ez +p===$&&A.b() +p=q.dH.al(0,p.gk(0)) +p.toString +return a.bD(p)}, +asi(a){}, +aT(a,b){var s,r,q,p=this +if(p.H$!=null){s=p.hD +s===$&&A.b() +s=s&&p.uT!==B.h}else s=!1 +r=p.dI +if(s){s=p.gv(0) +q=p.cx +q===$&&A.b() +r.sb0(0,a.og(q,b,new A.I(0,0,0+s.a,0+s.b),A.yd.prototype.ghV.call(p),p.uT,r.a))}else{r.sb0(0,null) +p.anw(a,b)}}, +m(){var s,r=this +r.dI.sb0(0,null) +s=r.dt +s===$&&A.b() +s.m() +s=r.ez +s===$&&A.b() +s.m() +r.h0()}} +A.aO6.prototype={ +$0(){var s=this.a,r=s.dt +r===$&&A.b() +r=r.x +r===$&&A.b() +if(r!==s.fo)s.ae()}, +$S:0} +A.N3.prototype={ +gMZ(){var s,r=this,q=r.cx$ +if(q===$){s=A.bLX(new A.aP7(r),new A.aP8(r),new A.aP9(r)) +q!==$&&A.aH() +r.cx$=s +q=s}return q}, +Ws(){var s,r,q,p,o,n,m,l,k,j,i +for(s=this.dx$.gaJ(0),r=A.y(s),s=new A.bD(J.ay(s.a),s.b,r.i("bD<1,2>")),r=r.y[1],q=!1;s.u();){p=s.a +if(p==null)p=r.a(p) +q=q||p.H$!=null +o=p.go +n=$.dz() +m=n.d +if(m==null){l=self.window.devicePixelRatio +m=l===0?1:l}l=o.at +if(l==null){l=o.ch.Vb() +o.at=l}l=A.bwY(o.Q,new A.R(l.a/m,l.b/m)) +o=l.a*m +k=l.b*m +j=l.c*m +l=l.d*m +i=n.d +if(i==null){n=self.window.devicePixelRatio +i=n===0?1:n}p.sr2(new A.Pu(new A.au(o/i,k/i,j/i,l/i),new A.au(o,k,j,l),i))}if(q)this.ajT()}, +Wz(){}, +Wv(){}, +aVx(){var s,r=this.CW$ +if(r!=null){r.U$=$.aW() +r.M$=0}r=t.S +s=$.aW() +this.CW$=new A.a49(new A.aP6(this),new A.aIV(B.cg,A.w(r,t.ZA)),A.w(r,t.xg),s)}, +aCU(a){B.agS.le("first-frame",null,!1,t.H)}, +aBc(a){this.VP() +this.aJr()}, +aJr(){$.cp.p2$.push(new A.aP5(this))}, +aaw(){--this.fr$ +if(!this.fx$)this.Zk()}, +VP(){var s,r,q=this,p=q.db$ +p===$&&A.b() +p.ads() +q.db$.adq() +q.db$.adt() +if(q.fx$||q.fr$===0){for(p=q.dx$.gaJ(0),s=A.y(p),p=new A.bD(J.ay(p.a),p.b,s.i("bD<1,2>")),s=s.y[1];p.u();){r=p.a;(r==null?s.a(r):r).aPK()}q.db$.adu() +q.fx$=!0}}} +A.aP7.prototype={ +$0(){var s=this.a.gMZ().e +if(s!=null)s.FB()}, +$S:0} +A.aP9.prototype={ +$1(a){var s=this.a.gMZ().e +if(s!=null)s.go.gZt().b0O(a)}, +$S:234} +A.aP8.prototype={ +$0(){var s=this.a.gMZ().e +if(s!=null)s.uu()}, +$S:0} +A.aP6.prototype={ +$2(a,b){var s=A.aBC() +this.a.DF(s,a,b) +return s}, +$S:416} +A.aP5.prototype={ +$1(a){this.a.CW$.b0H()}, +$S:3} +A.Q5.prototype={ +m(){this.a.gBJ().K(0,this.geS()) +this.dN()}} +A.aes.prototype={} +A.ajG.prototype={ +XL(){if(this.X)return +this.anx() +this.X=!0}, +FB(){this.uu() +this.ank()}, +m(){this.sbz(null)}} +A.au.prototype={ +CG(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.au(r,q,p,a==null?s.d:a)}, +aQC(a,b){return this.CG(null,a,null,b)}, +aQB(a,b){return this.CG(a,null,b,null)}, +aQD(a,b){return this.CG(null,null,a,b)}, +Kf(a){return this.CG(a,null,null,null)}, +abN(a){return this.CG(null,a,null,null)}, +uC(a){var s=this,r=a.gde(),q=a.gc9(0)+a.gci(0),p=Math.max(0,s.a-r),o=Math.max(0,s.c-q) +return new A.au(p,Math.max(p,s.b-r),o,Math.max(o,s.d-q))}, +ri(a){var s=this,r=a.a,q=a.b,p=a.c,o=a.d +return new A.au(A.M(s.a,r,q),A.M(s.b,r,q),A.M(s.c,p,o),A.M(s.d,p,o))}, +NE(a,b){var s,r,q=this,p=b==null,o=q.a,n=p?o:A.M(b,o,q.b),m=q.b +p=p?m:A.M(b,o,m) +o=a==null +m=q.c +s=o?m:A.M(a,m,q.d) +r=q.d +return new A.au(n,p,s,o?r:A.M(a,m,r))}, +EE(a){return this.NE(null,a)}, +agZ(a){return this.NE(a,null)}, +gLm(){var s=this +return new A.au(s.c,s.d,s.a,s.b)}, +bD(a){var s=this +return new A.R(A.M(a.a,s.a,s.b),A.M(a.b,s.c,s.d))}, +CB(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.R(A.M(0,m,l),A.M(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}, +ap(a,b){var s=this +return new A.au(s.a*b,s.b*b,s.c*b,s.d*b)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.au&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d}, +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s,r=this,q=r.a,p=!1 +if(q>=0)if(q<=r.b){p=r.c +p=p>=0&&p<=r.d}s=p?"":"; NOT NORMALIZED" +if(q===1/0&&r.c===1/0)return"BoxConstraints(biggest"+s+")" +if(q===0&&r.b===1/0&&r.c===0&&r.d===1/0)return"BoxConstraints(unconstrained"+s+")" +p=new A.aqI() +return"BoxConstraints("+p.$3(q,r.b,"w")+", "+p.$3(r.c,r.d,"h")+s+")"}} +A.aqI.prototype={ +$3(a,b,c){if(a===b)return c+"="+B.d.aF(a,1) +return B.d.aF(a,1)+"<="+c+"<="+B.d.aF(b,1)}, +$S:191} +A.tb.prototype={ +Ch(a,b,c){if(c!=null){c=A.xF(A.bnm(c)) +if(c==null)return!1}return this.aat(a,b,c)}, +m0(a,b,c){var s,r=b==null,q=r?c:c.ai(0,b) +r=!r +if(r)this.c.push(new A.Ft(new A.z(-b.a,-b.b))) +s=a.$2(this,q) +if(r)this.N0() +return s}, +aat(a,b,c){var s,r=c==null,q=r?b:A.ct(c,b) +r=!r +if(r)this.c.push(new A.S9(c)) +s=a.$2(this,q) +if(r)this.N0() +return s}, +aas(a,b,c){var s,r=this +if(b!=null)r.c.push(new A.Ft(new A.z(-b.a,-b.b))) +else{c.toString +c=A.xF(A.bnm(c)) +c.toString +r.c.push(new A.S9(c))}s=a.$1(r) +r.N0() +return s}, +aO6(a,b){return this.aas(a,null,b)}, +aO5(a,b){return this.aas(a,b,null)}} +A.w6.prototype={ +j(a){return"#"+A.c5(this.a)+"@"+this.c.j(0)}} +A.iJ.prototype={ +j(a){return"offset="+this.a.j(0)}} +A.HP.prototype={} +A.b2x.prototype={ +ha(a,b,c){var s=a.b +if(s==null)s=a.b=A.w(t.k,t.FW) +return s.cP(0,b,new A.b2y(c,b))}} +A.b2y.prototype={ +$0(){return this.a.$1(this.b)}, +$S:226} +A.aZ4.prototype={ +ha(a,b,c){var s +switch(b.b){case B.H:s=a.c +if(s==null){s=A.w(t.k,t.PM) +a.c=s}break +case B.ay:s=a.d +if(s==null){s=A.w(t.k,t.PM) +a.d=s}break +default:s=null}return s.cP(0,b.a,new A.aZ5(c,b))}} +A.aZ5.prototype={ +$0(){return this.a.$1(this.b)}, +$S:417} +A.zn.prototype={ +D(){return"_IntrinsicDimension."+this.b}, +ha(a,b,c){var s=a.a +if(s==null)s=a.a=A.w(t.Yr,t.i) +return s.cP(0,new A.b3(this,b),new A.b8M(c,b))}} +A.b8M.prototype={ +$0(){return this.a.$1(this.b)}, +$S:150} +A.bk.prototype={} +A.P.prototype={ +ht(a){if(!(a.b instanceof A.iJ))a.b=new A.iJ(B.j)}, +auA(a,b,c){var s=a.ha(this.fx,b,c) +return s}, +aM(a,b,c){return this.auA(a,b,c,t.K,t.z)}, +bU(a){return 0}, +bQ(a){return 0}, +bT(a){return 0}, +bP(a){return 0}, +auw(a){return this.ds(a)}, +ds(a){return B.V}, +ii(a,b){return this.aM(B.iz,new A.b3(a,b),this.gGS())}, +auv(a){return this.fH(a.a,a.b)}, +fH(a,b){return null}, +gv(a){var s=this.id +return s==null?A.V(A.a1("RenderBox was not laid out: "+A.K(this).j(0)+"#"+A.c5(this))):s}, +goA(){var s=this.gv(0) +return new A.I(0,0,0+s.a,0+s.b)}, +F9(a,b){var s=null +try{s=this.my(a)}finally{}if(s==null&&!b)return this.gv(0).b +return s}, +qa(a){return this.F9(a,!1)}, +my(a){return this.aM(B.iz,new A.b3(t.k.a(A.G.prototype.gah.call(this)),a),new A.aO8(this))}, +iw(a){return null}, +gah(){return t.k.a(A.G.prototype.gah.call(this))}, +ae(){var s=this,r=null,q=s.fx,p=q.b,o=p==null,n=o?r:p.a!==0,m=!0 +if(n!==!0){n=q.a +n=n==null?r:n.a!==0 +if(n!==!0){n=q.c +n=n==null?r:n.a!==0 +if(n!==!0){n=q.d +n=n==null?r:n.a!==0 +n=n===!0}else n=m +m=n}}if(m){if(!o)p.V(0) +p=q.a +if(p!=null)p.V(0) +p=q.c +if(p!=null)p.V(0) +q=q.d +if(q!=null)q.V(0)}if(m&&s.gbt(s)!=null){s.Md() +return}s.ani()}, +zb(){this.id=this.ds(t.k.a(A.G.prototype.gah.call(this)))}, +ck(){}, +dT(a,b){var s=this +if(s.id.p(0,b))if(s.dU(a,b)||s.k9(b)){a.q(0,new A.w6(b,s)) +return!0}return!1}, +k9(a){return!1}, +dU(a,b){return!1}, +er(a,b){var s,r=a.b +r.toString +s=t.r.a(r).a +b.bs(0,s.a,s.b)}, +he(a){var s,r,q,p,o,n=this.bB(0,null) +if(n.hn(n)===0)return B.j +s=new A.hQ(new Float64Array(3)) +s.oD(0,0,1) +r=new A.hQ(new Float64Array(3)) +r.oD(0,0,0) +q=n.MY(r) +r=new A.hQ(new Float64Array(3)) +r.oD(0,0,1) +p=n.MY(r).ai(0,q) +r=new A.hQ(new Float64Array(3)) +r.oD(a.a,a.b,0) +o=n.MY(r) +r=o.ai(0,p.ox(s.acK(o)/s.acK(p))).a +return new A.z(r[0],r[1])}, +gof(){var s=this.gv(0) +return new A.I(0,0,0+s.a,0+s.b)}, +n6(a,b){this.anh(a,b)}} +A.aO8.prototype={ +$1(a){return this.a.iw(a.b)}, +$S:187} +A.el.prototype={ +aRv(a){var s,r,q,p=this.am$ +for(s=A.y(this).i("el.1");p!=null;){r=p.b +r.toString +s.a(r) +q=p.my(a) +if(q!=null)return q+r.a.b +p=r.aO$}return null}, +Ks(a){var s,r,q,p,o,n=this.am$ +for(s=A.y(this).i("el.1"),r=null;n!=null;){q=n.b +q.toString +s.a(q) +p=n.my(a) +o=q.a +r=A.Ac(r,p==null?null:p+o.b) +n=q.aO$}return r}, +CX(a,b){var s,r,q={},p=q.a=this.dJ$ +for(s=A.y(this).i("el.1");p!=null;p=r){p=p.b +p.toString +s.a(p) +if(a.m0(new A.aO7(q),p.a,b))return!0 +r=p.du$ +q.a=r}return!1}, +y5(a,b){var s,r,q,p,o,n=this.am$ +for(s=A.y(this).i("el.1"),r=b.a,q=b.b;n!=null;){p=n.b +p.toString +s.a(p) +o=p.a +a.fa(n,new A.z(o.a+r,o.b+q)) +n=p.aO$}}} +A.aO7.prototype={ +$2(a,b){return this.a.a.dT(a,b)}, +$S:24} +A.Qr.prototype={ +aB(a){this.Ai(0)}} +A.lU.prototype={ +j(a){return this.Gn(0)+"; id="+A.c(this.e)}} +A.aJR.prototype={ +hS(a,b){var s=this.b.h(0,a) +s.df(b,!0) +return s.gv(0)}, +kg(a,b){var s=this.b.h(0,a).b +s.toString +t.Wz.a(s).a=b}, +atE(a,b){var s,r,q,p,o,n=this,m=n.b +try{n.b=A.w(t.K,t.x) +s=b +for(q=t.Wz;s!=null;){p=s.b +p.toString +r=q.a(p) +p=n.b +p.toString +o=r.e +o.toString +p.n(0,o,s) +s=r.aO$}n.MX(a)}finally{n.b=m}}, +j(a){return"MultiChildLayoutDelegate"}} +A.MK.prototype={ +ht(a){if(!(a.b instanceof A.lU))a.b=new A.lU(null,null,B.j)}, +sVx(a){var s=this.A +if(s===a)return +if(A.K(a)!==A.K(s)||a.oF(s))this.ae() +this.A=a}, +aI(a){this.aoL(a)}, +aB(a){this.aoM(0)}, +bU(a){var s=A.jg(a,1/0),r=s.bD(new A.R(A.M(1/0,s.a,s.b),A.M(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bQ(a){var s=A.jg(a,1/0),r=s.bD(new A.R(A.M(1/0,s.a,s.b),A.M(1/0,s.c,s.d))).a +if(isFinite(r))return r +return 0}, +bT(a){var s=A.jg(1/0,a),r=s.bD(new A.R(A.M(1/0,s.a,s.b),A.M(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +bP(a){var s=A.jg(1/0,a),r=s.bD(new A.R(A.M(1/0,s.a,s.b),A.M(1/0,s.c,s.d))).b +if(isFinite(r))return r +return 0}, +ds(a){return a.bD(new A.R(A.M(1/0,a.a,a.b),A.M(1/0,a.c,a.d)))}, +ck(){var s=this,r=t.k.a(A.G.prototype.gah.call(s)) +s.id=r.bD(new A.R(A.M(1/0,r.a,r.b),A.M(1/0,r.c,r.d))) +s.A.atE(s.gv(0),s.am$)}, +aT(a,b){this.y5(a,b)}, +dU(a,b){return this.CX(a,b)}} +A.SM.prototype={ +aI(a){var s,r,q +this.eD(a) +s=this.am$ +for(r=t.Wz;s!=null;){s.aI(a) +q=s.b +q.toString +s=r.a(q).aO$}}, +aB(a){var s,r,q +this.eE(0) +s=this.am$ +for(r=t.Wz;s!=null;){s.aB(0) +q=s.b +q.toString +s=r.a(q).aO$}}} +A.aj7.prototype={} +A.ZG.prototype={ +a4(a,b){var s=this.a +return s==null?null:s.a4(0,b)}, +K(a,b){var s=this.a +return s==null?null:s.K(0,b)}, +gFF(){return null}, +OO(a){return this.ff(a)}, +DE(a){return null}, +j(a){var s=A.c5(this),r=this.a +r=r==null?null:r.j(0) +if(r==null)r="" +return"#"+s+"("+r+")"}} +A.ML.prototype={ +svu(a){var s=this.E +if(s==a)return +this.E=a +this.a2z(a,s)}, +sadz(a){var s=this.af +if(s==a)return +this.af=a +this.a2z(a,s)}, +a2z(a,b){var s=this,r=a==null +if(r)s.aU() +else if(b==null||A.K(a)!==A.K(b)||a.ff(b))s.aU() +if(s.y!=null){if(b!=null)b.K(0,s.gf8()) +if(!r)a.a4(0,s.gf8())}if(r){if(s.y!=null)s.bM()}else if(b==null||A.K(a)!==A.K(b)||a.OO(b))s.bM()}, +svw(a){if(this.aZ.l(0,a))return +this.aZ=a +this.ae()}, +bU(a){var s +if(this.H$==null){s=this.aZ.a +return isFinite(s)?s:0}return this.Pi(a)}, +bQ(a){var s +if(this.H$==null){s=this.aZ.a +return isFinite(s)?s:0}return this.Pg(a)}, +bT(a){var s +if(this.H$==null){s=this.aZ.b +return isFinite(s)?s:0}return this.Ph(a)}, +bP(a){var s +if(this.H$==null){s=this.aZ.b +return isFinite(s)?s:0}return this.Pf(a)}, +aI(a){var s,r=this +r.wz(a) +s=r.E +if(s!=null)s.a4(0,r.gf8()) +s=r.af +if(s!=null)s.a4(0,r.gf8())}, +aB(a){var s=this,r=s.E +if(r!=null)r.K(0,s.gf8()) +r=s.af +if(r!=null)r.K(0,s.gf8()) +s.qq(0)}, +dU(a,b){var s=this.af +if(s!=null){s=s.DE(b) +s=s===!0}else s=!1 +if(s)return!0 +return this.Al(a,b)}, +k9(a){var s=this.E +if(s!=null){s=s.DE(a) +s=s!==!1}else s=!1 +return s}, +ck(){this.qo() +this.bM()}, +Cz(a){return a.bD(this.aZ)}, +a6o(a,b,c){A.bu("debugPreviousCanvasSaveCount") +a.en(0) +if(!b.l(0,B.j))a.bs(0,b.a,b.b) +c.aT(a,this.gv(0)) +a.el(0)}, +aT(a,b){var s,r,q=this +if(q.E!=null){s=a.gca(0) +r=q.E +r.toString +q.a6o(s,b,r) +q.a7U(a)}q.jN(a,b) +if(q.af!=null){s=a.gca(0) +r=q.af +r.toString +q.a6o(s,b,r) +q.a7U(a)}}, +a7U(a){}, +hP(a){var s,r=this +r.jM(a) +s=r.E +r.cm=s==null?null:s.gFF() +s=r.af +r.d9=s==null?null:s.gFF() +a.a=!1}, +xJ(a,b,c){var s,r,q,p,o=this +o.ft=A.bvn(o.ft,B.BY) +o.fu=A.bvn(o.fu,B.BY) +s=o.ft +r=s!=null&&!s.ga_(s) +s=o.fu +q=s!=null&&!s.ga_(s) +s=A.a([],t.QF) +if(r){p=o.ft +p.toString +B.b.G(s,p)}B.b.G(s,c) +if(q){p=o.fu +p.toString +B.b.G(s,p)}o.a_O(a,b,s)}, +uu(){this.Pc() +this.fu=this.ft=null}} +A.au9.prototype={} +A.yQ.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.yQ&&b.a.l(0,s.a)&&b.b==s.b}, +j(a){var s,r=this +switch(r.b){case B.i:s=r.a.j(0)+"-ltr" +break +case B.ae:s=r.a.j(0)+"-rtl" +break +case null:case void 0:s=r.a.j(0) +break +default:s=null}return s}, +gB(a){return A.a4(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.aVy.prototype={ +gce(){var s=this +if(!s.f)return!1 +if(s.e.b_.Cy()!==s.d)s.f=!1 +return s.f}, +a40(a){var s,r,q=this,p=q.r,o=p.h(0,a) +if(o!=null)return o +s=new A.z(q.a.a,q.d[a].gmU()) +r=new A.aO(s,q.e.b_.fe(s),t.tO) +p.n(0,a,r) +return r}, +gI(a){return this.c}, +u(){var s,r=this,q=r.b+1 +if(q>=r.d.length)return!1 +s=r.a40(q);++r.b +r.a=s.a +r.c=s.b +return!0}, +af9(){var s,r=this,q=r.b +if(q<=0)return!1 +s=r.a40(q-1);--r.b +r.a=s.a +r.c=s.b +return!0}, +aXt(a){var s,r=this,q=r.a +if(a>=0){for(s=q.b+a;r.a.bs;)if(!r.af9())break +return!q.l(0,r.a)}} +A.yb.prototype={ +m(){var s,r,q=this,p=null +q.ad8.sb0(0,p) +s=q.A +if(s!=null)s.ch.sb0(0,p) +q.A=null +s=q.X +if(s!=null)s.ch.sb0(0,p) +q.X=null +q.ad9.sb0(0,p) +s=q.ac +if(s!=null){s.U$=$.aW() +s.M$=0}s=q.aE +if(s!=null){s.U$=$.aW() +s.M$=0}s=q.d3 +r=s.U$=$.aW() +s.M$=0 +s=q.aR +s.U$=r +s.M$=0 +s=q.U +s.U$=r +s.M$=0 +s=q.M +s.U$=r +s.M$=0 +s=q.gi4() +s.U$=r +s.M$=0 +q.b_.m() +s=q.cY +if(s!=null)s.m() +if(q.h7){s=q.fU +s.U$=r +s.M$=0 +q.h7=!1}q.h0()}, +a9m(a){var s,r=this,q=r.gatv(),p=r.A +if(p==null){s=A.bxF(q) +r.lp(s) +r.A=s}else p.svu(q) +r.a9=a}, +a9u(a){var s,r=this,q=r.gatw(),p=r.X +if(p==null){s=A.bxF(q) +r.lp(s) +r.X=s}else p.svu(q) +r.aC=a}, +gi4(){var s,r,q=this.aQ +if(q===$){s=$.ap().br() +r=$.aW() +this.aQ!==$&&A.aH() +q=this.aQ=new A.Qh(s,B.j,r)}return q}, +gatv(){var s=this,r=s.ac +if(r==null){r=A.a([],t.xT) +if(s.aZ)r.push(s.gi4()) +r=s.ac=new A.EC(r,$.aW())}return r}, +gatw(){var s=this,r=s.aE +if(r==null){r=A.a([s.U,s.M],t.xT) +if(!s.aZ)r.push(s.gi4()) +r=s.aE=new A.EC(r,$.aW())}return r}, +svM(a){return}, +st0(a){var s=this.b_ +if(s.at===a)return +s.st0(a) +this.ae()}, +snR(a,b){if(this.c4===b)return +this.c4=b +this.ae()}, +saXM(a){if(this.eM===a)return +this.eM=a +this.ae()}, +saXL(a){return}, +zK(a){var s=this.b_.b.a.c.YW(a) +return A.dx(B.q,s.a,s.b,!1)}, +aMY(a){var s,r,q,p,o,n,m=this +if(!m.cu.gce()){m.d3.sk(0,!1) +m.aR.sk(0,!1) +return}s=m.gv(0) +r=new A.I(0,0,0+s.a,0+s.b) +s=m.b_ +q=m.cu +p=m.kK +p===$&&A.b() +o=s.ow(new A.b_(q.a,q.e),p) +m.d3.sk(0,r.eA(0.5).p(0,o.ab(0,a))) +p=m.cu +n=s.ow(new A.b_(p.b,p.e),m.kK) +m.aR.sk(0,r.eA(0.5).p(0,n.ab(0,a)))}, +qN(a,b){var s,r +if(a.gce()){s=this.H.a.c.a.a.length +a=a.CE(Math.min(a.c,s),Math.min(a.d,s))}r=this.H.a.c.a.lt(a) +this.H.jG(r,b)}, +aU(){this.anj() +var s=this.A +if(s!=null)s.aU() +s=this.X +if(s!=null)s.aU()}, +Ao(){this.Pb() +this.b_.ae()}, +se3(a,b){var s=this,r=s.b_ +if(J.e(r.e,b))return +s.jt=null +r.se3(0,b) +s.ed=s.cU=null +s.ae() +s.bM()}, +gqw(){var s,r=null,q=this.cY +if(q==null)q=this.cY=A.uZ(r,r,r,r,r,B.bn,r,r,B.aB,B.aX) +s=this.b_ +q.se3(0,s.e) +q.st_(0,s.r) +q.scr(s.w) +q.sem(s.x) +q.srO(s.Q) +q.sVS(s.y) +q.srM(0,s.z) +q.smG(s.as) +q.st0(s.at) +q.svM(s.ax) +return q}, +st_(a,b){var s=this.b_ +if(s.r===b)return +s.st_(0,b) +this.ae()}, +scr(a){var s=this.b_ +if(s.w===a)return +s.scr(a) +this.ae() +this.bM()}, +srM(a,b){var s=this.b_ +if(J.e(s.z,b))return +s.srM(0,b) +this.ae()}, +smG(a){var s=this.b_ +if(J.e(s.as,a))return +s.smG(a) +this.ae()}, +sal6(a){var s=this,r=s.fU +if(r===a)return +if(s.y!=null)r.K(0,s.gIR()) +if(s.h7){r=s.fU +r.U$=$.aW() +r.M$=0 +s.h7=!1}s.fU=a +if(s.y!=null){s.gi4().sON(s.fU.a) +s.fU.a4(0,s.gIR())}}, +aKE(){this.gi4().sON(this.fU.a)}, +scN(a){if(this.cG===a)return +this.cG=a +this.bM()}, +saTF(a){if(this.eN)return +this.eN=!0 +this.ae()}, +sXW(a,b){if(this.f5===b)return +this.f5=b +this.bM()}, +srO(a){var s,r=this +if(r.h8===a)return +r.h8=a +s=a===1?1:null +r.b_.srO(s) +r.ae()}, +saXk(a){return}, +sW0(a){return}, +sem(a){var s=this.b_ +if(s.x.l(0,a))return +s.sem(a) +this.ae()}, +szW(a){var s=this +if(s.cu.l(0,a))return +s.cu=a +s.M.sLF(a) +s.aU() +s.bM()}, +sdA(a,b){var s=this,r=s.kO +if(r===b)return +if(s.y!=null)r.K(0,s.gf8()) +s.kO=b +if(s.y!=null)b.a4(0,s.gf8()) +s.ae()}, +saRf(a){if(this.E===a)return +this.E=a +this.ae()}, +saRe(a){if(this.af==a)return +this.af=a +this.ae()}, +saZ0(a){var s=this +if(s.aZ===a)return +s.aZ=a +s.aE=s.ac=null +s.a9m(s.a9) +s.a9u(s.aC)}, +salB(a){if(this.bH===a)return +this.bH=a +this.aU()}, +saSS(a){if(this.d4===a)return +this.d4=a +this.aU()}, +saSJ(a){var s=this +if(s.fu===a)return +s.fu=a +s.ae() +s.bM()}, +gZq(){var s=this.fu +return s}, +nn(a){var s,r +this.mK() +s=this.b_.nn(a) +r=A.af(s).i("ad<1,hO>") +return A.a8(new A.ad(s,new A.aOd(this),r),!0,r.i("aN.E"))}, +hP(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this +d.jM(a) +s=d.b_ +r=s.e +r.toString +q=A.a([],t.O_) +r.K7(q) +d.dS=q +if(B.b.fQ(q,new A.aOc())&&A.bY()!==B.cr){a.c=a.a=!0 +return}r=d.cU +if(r==null){p=new A.cD("") +o=A.a([],t.oU) +for(r=d.dS,n=r.length,m=0,l=0,k="";lh){d=c0[h].dy +d=d!=null&&d.p(0,new A.qv(i,b7))}else d=!1 +if(!d)break +b=c0[h] +d=s.b +d.toString +m.a(d) +b5.push(b);++h}b7=s.b +b7.toString +s=n.a(b7).aO$;++i}else{a=b6.nn(new A.iW(j,e,B.q,!1,c,d)) +if(a.length===0)continue +d=B.b.gW(a) +a0=new A.I(d.a,d.b,d.c,d.d) +a1=B.b.gW(a).e +for(d=A.af(a),c=d.i("aP<1>"),a2=new A.aP(a,1,b4,c),a2.c_(a,1,b4,d.c),a2=new A.ci(a2,a2.gt(0),c.i("ci")),c=c.i("aN.E");a2.u();){d=a2.d +if(d==null)d=c.a(d) +a0=a0.nT(new A.I(d.a,d.b,d.c,d.d)) +a1=d.e}d=a0.a +c=Math.max(0,d) +a2=a0.b +a3=Math.max(0,a2) +d=Math.min(a0.c-d,o.a(A.G.prototype.gah.call(b3)).b) +a2=Math.min(a0.d-a2,o.a(A.G.prototype.gah.call(b3)).d) +a4=Math.floor(c)-4 +a5=Math.floor(a3)-4 +d=Math.ceil(c+d)+4 +a2=Math.ceil(a3+a2)+4 +a6=new A.I(a4,a5,d,a2) +a7=A.oN() +a8=k+1 +a7.k3=new A.xR(k,b4) +a7.e=!0 +a7.a2=l +a3=f.b +b7=a3==null?b7:a3 +a7.ry=new A.e8(b7,f.f) +$label0$1:{break $label0$1}b7=b8.r +if(b7!=null){a9=b7.hG(a6) +if(a9.a>=a9.c||a9.b>=a9.d)b7=!(a4>=d||a5>=a2) +else b7=!1 +a7.c6(B.nn,b7)}b0=A.bu("newChild") +b7=b3.hF +d=b7==null?b4:b7.a!==0 +if(d===!0){b7.toString +b1=new A.aR(b7,A.y(b7).i("aR<1>")).gav(0) +if(!b1.u())A.V(A.cV()) +b7=b7.C(0,b1.gI(0)) +b7.toString +if(b0.b!==b0)A.V(A.btW(b0.a)) +b0.b=b7}else{b2=new A.kl() +b7=A.NC(b2,b3.ava(b2)) +if(b0.b!==b0)A.V(A.btW(b0.a)) +b0.b=b7}if(b7===b0)A.V(A.xp(b0.a)) +J.bFc(b7,a7) +if(!b7.e.l(0,a6)){b7.e=a6 +b7.li()}b7=b0.b +if(b7===b0)A.V(A.xp(b0.a)) +d=b7.a +d.toString +r.n(0,d,b7) +b7=b0.b +if(b7===b0)A.V(A.xp(b0.a)) +b5.push(b7) +k=a8 +l=a1}}b3.hF=r +b8.q8(0,b5,b9)}, +ava(a){return new A.aO9(this,a)}, +aC3(a){this.qN(a,B.b2)}, +aB0(a){var s=this,r=s.b_.YZ(s.cu.d) +if(r==null)return +s.qN(A.dx(B.q,!a?r:s.cu.c,r,!1),B.b2)}, +aAX(a){var s=this,r=s.b_.Z_(s.cu.d) +if(r==null)return +s.qN(A.dx(B.q,!a?r:s.cu.c,r,!1),B.b2)}, +aB2(a){var s,r=this,q=r.cu.gfh(),p=r.a3K(r.b_.b.a.c.kq(q).b) +if(p==null)return +s=a?r.cu.c:p.a +r.qN(A.dx(B.q,s,p.a,!1),B.b2)}, +aAZ(a){var s,r=this,q=r.cu.gfh(),p=r.a3Q(r.b_.b.a.c.kq(q).a-1) +if(p==null)return +s=a?r.cu.c:p.a +r.qN(A.dx(B.q,s,p.a,!1),B.b2)}, +a3K(a){var s,r,q +for(s=this.b_;!0;){r=s.b.a.c.kq(new A.b_(a,B.q)) +q=r.a +if(!(q>=0&&r.b>=0)||q===r.b)return null +if(!this.a6a(r))return r +a=r.b}}, +a3Q(a){var s,r,q +for(s=this.b_;a>=0;){r=s.b.a.c.kq(new A.b_(a,B.q)) +q=r.a +if(!(q>=0&&r.b>=0)||q===r.b)return null +if(!this.a6a(r))return r +a=q-1}return null}, +a6a(a){var s,r,q,p +for(s=a.a,r=a.b,q=this.b_;s=m.gpY().length)return A.E1(new A.b_(m.gpY().length,B.aW)) +s=m.b.a.c.kq(a) +switch(a.b.a){case 0:r=n-1 +break +case 1:r=n +break +default:r=null}if(r>0&&A.bwp(m.gpY().charCodeAt(r))){m=s.a +q=o.a3Q(m) +switch(A.bY().a){case 2:if(q==null){p=o.a3K(m) +if(p==null)return A.r6(B.q,n) +return A.dx(B.q,n,p.b,!1)}return A.dx(B.q,q.a,n,!1) +case 0:if(o.f5){if(q==null)return A.dx(B.q,n,n+1,!1) +return A.dx(B.q,q.a,n,!1)}break +case 1:case 4:case 3:case 5:break}}return A.dx(B.q,s.a,s.b,!1)}, +wF(a,b){var s=Math.max(0,a-(1+this.E)),r=Math.min(b,s),q=this.eN?s:r +return new A.b3(q,this.h8!==1?s:1/0)}, +a0A(){return this.wF(1/0,0)}, +asa(a){return this.wF(a,0)}, +mK(){var s,r=this,q=t.k,p=q.a(A.G.prototype.gah.call(r)),o=r.wF(q.a(A.G.prototype.gah.call(r)).b,p.a),n=o.a,m=null,l=o.b +m=l +s=n +r.b_.kR(m,s)}, +aut(){var s,r,q=this +switch(A.bY().a){case 2:case 4:s=q.E +r=q.af +if(r==null){r=q.b_.eq() +r=r.gbA(r)}q.kK=new A.I(0,0,s,0+(r+2)) +break +case 0:case 1:case 3:case 5:s=q.E +r=q.af +if(r==null){r=q.b_.eq() +r=r.gbA(r)}q.kK=new A.I(0,2,s,2+(r-4)) +break}}, +ds(a){var s,r,q,p,o=this,n=a.a,m=a.b,l=o.wF(m,n),k=l.a,j=null,i=l.b +j=i +s=k +r=o.gqw() +r.l6(o.mj(m,A.jb(),A.ku())) +r.kR(j,s) +if(o.eN)q=m +else{r=o.gqw().b +p=r.c +r=r.a.c +r.gbA(r) +q=A.M(p+(1+o.E),n,m)}return new A.R(q,A.M(o.a6C(m),a.c,a.d))}, +fH(a,b){var s,r,q=this,p=a.b,o=q.wF(p,a.a),n=o.a,m=null,l=o.b +m=l +s=n +r=q.gqw() +r.l6(q.mj(p,A.jb(),A.ku())) +r.kR(m,s) +return q.gqw().b.a.qa(b)}, +ck(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=t.k.a(A.G.prototype.gah.call(g)),e=f.b +g.uQ=g.mj(e,A.rR(),A.bjw()) +s=f.a +r=g.wF(e,s) +q=r.a +p=null +o=r.b +p=o +n=q +m=g.b_ +m.l6(g.uQ) +m.kR(p,n) +l=m.gaej() +l.toString +g.afM(l) +g.aut() +e=g.eN?e:A.M(m.b.c+(1+g.E),s,e) +k=g.h8 +$label0$0:{if(1===k){s=m.b.a.c +s=s.gbA(s) +break $label0$0}s=m.b.a.c +s=s.gbA(s) +l=m.eq() +l=l.gbA(l) +j=m.eq() +j=A.M(s,l*k,j.gbA(j)*k) +s=j +break $label0$0}g.id=new A.R(e,A.M(s,f.c,f.d)) +m=m.b +s=m.c +l=g.E +m=m.a.c +i=new A.R(s+(1+l),m.gbA(m)) +h=A.ta(i) +m=g.A +if(m!=null)m.j4(h) +s=g.X +if(s!=null)s.j4(h) +g.hE=g.ayI(i) +g.kO.qZ(g.gawO()) +g.kO.qY(0,g.hE)}, +ab5(a,b){var s,r,q,p,o,n,m,l=this,k=l.gv(0),j=l.b_,i=j.b.a.c +i=Math.min(k.b,i.gbA(i)) +k=j.eq() +s=i-k.gbA(k)+5 +r=Math.min(l.gv(0).a,j.b.c)+4 +q=new A.I(-4,-4,r,s) +if(b!=null)l.nU=b +if(!l.nU)return A.bvo(a,q) +k=l.ma +p=k!=null?a.ai(0,k):B.j +if(l.pw&&p.a>0){l.js=new A.z(a.a- -4,l.js.b) +l.pw=!1}else if(l.uR&&p.a<0){l.js=new A.z(a.a-r,l.js.b) +l.uR=!1}if(l.uS&&p.b>0){l.js=new A.z(l.js.a,a.b- -4) +l.uS=!1}else if(l.L1&&p.b<0){l.js=new A.z(l.js.a,a.b-s) +l.L1=!1}k=l.js +o=a.a-k.a +n=a.b-k.b +m=A.bvo(new A.z(o,n),q) +if(o<-4&&p.a<0)l.pw=!0 +else if(o>r&&p.a>0)l.uR=!0 +if(n<-4&&p.b<0)l.uS=!0 +else if(n>s&&p.b>0)l.L1=!0 +l.ma=a +return m}, +aP4(a){return this.ab5(a,null)}, +ZC(a,b,c,d){var s,r,q=this,p=a===B.lx +if(p){q.js=B.j +q.ma=null +q.nU=!0 +q.uR=q.uS=q.L1=!1}p=!p +q.d9=p +q.ad7=d +if(p){q.ft=c +if(d!=null){p=A.a_K(B.x_,B.Z,d) +p.toString +s=p}else s=B.x_ +p=q.gi4() +r=q.kK +r===$&&A.b() +p.sado(s.DI(r).ep(b))}else q.gi4().sado(null) +q.gi4().w=q.ad7==null}, +OI(a,b,c){return this.ZC(a,b,c,null)}, +aE5(a,b){var s,r,q,p,o,n=this.b_.ow(a,B.ar) +for(s=b.length,r=n.b,q=0;p=b.length,qr)return new A.aO(J.bqK(o),new A.z(n.a,o.gmU()),t.DC)}s=Math.max(0,p-1) +r=p!==0?B.b.gY(b).gmU()+B.b.gY(b).gacs():0 +return new A.aO(s,new A.z(n.a,r),t.DC)}, +a6j(a,b){var s,r,q=this,p=b.ab(0,q.giq()),o=q.d9 +if(!o)q.aMY(p) +s=q.A +r=q.X +if(r!=null)a.fa(r,b) +q.b_.aT(a.gca(0),p) +q.afz(a,p) +if(s!=null)a.fa(s,b)}, +er(a,b){if(a===this.A||a===this.X)return +this.acm(a,b)}, +aT(a,b){var s,r,q,p,o,n,m,l=this +l.mK() +s=(l.hE>0||!l.giq().l(0,B.j))&&l.dK!==B.h +r=l.ad9 +if(s){s=l.cx +s===$&&A.b() +q=l.gv(0) +r.sb0(0,a.og(s,b,new A.I(0,0,0+q.a,0+q.b),l.gaGH(),l.dK,r.a))}else{r.sb0(0,null) +l.a6j(a,b)}p=l.cu +s=p.gce() +if(s){s=l.Od(p) +o=s[0].a +r=A.M(o.a,0,l.gv(0).a) +q=A.M(o.b,0,l.gv(0).b) +n=l.ad8 +n.sb0(0,A.bmI(l.bH,new A.z(r,q).ab(0,b))) +n=n.a +n.toString +a.q_(n,A.G.prototype.ghV.call(l),B.j) +if(s.length===2){m=s[1].a +s=A.M(m.a,0,l.gv(0).a) +r=A.M(m.b,0,l.gv(0).b) +a.q_(A.bmI(l.d4,new A.z(s,r).ab(0,b)),A.G.prototype.ghV.call(l),B.j)}}}, +r8(a){var s,r=this +switch(r.dK.a){case 0:return null +case 1:case 2:case 3:if(r.hE>0||!r.giq().l(0,B.j)){s=r.gv(0) +s=new A.I(0,0,0+s.a,0+s.b)}else s=null +return s}}} +A.aOd.prototype={ +$1(a){var s=this.a +return new A.hO(a.a+s.giq().a,a.b+s.giq().b,a.c+s.giq().a,a.d+s.giq().b,a.e)}, +$S:143} +A.aOc.prototype={ +$1(a){return!1}, +$S:421} +A.aO9.prototype={ +$0(){var s=this.a,r=s.hF.h(0,this.b) +r.toString +s.tw(s,r.e)}, +$S:0} +A.aOe.prototype={ +$2(a,b){var s=a==null?null:a.nT(new A.I(b.a,b.b,b.c,b.d)) +return s==null?new A.I(b.a,b.b,b.c,b.d):s}, +$S:422} +A.aOb.prototype={ +$2(a,b){return new A.R(a.aM(B.bh,1/0,a.gcF()),0)}, +$S:73} +A.aOa.prototype={ +$2(a,b){return new A.R(a.aM(B.aM,1/0,a.gcb()),0)}, +$S:73} +A.aj8.prototype={ +gbt(a){return t.CA.a(A.G.prototype.gbt.call(this,0))}, +gi8(){return!0}, +gks(){return!0}, +svu(a){var s,r=this,q=r.A +if(a===q)return +r.A=a +s=a.ff(q) +if(s)r.aU() +if(r.y!=null){s=r.gf8() +q.K(0,s) +a.a4(0,s)}}, +aT(a,b){var s=t.CA.a(A.G.prototype.gbt.call(this,0)),r=this.A +if(s!=null){s.mK() +r.jB(a.gca(0),this.gv(0),s)}}, +aI(a){this.eD(a) +this.A.a4(0,this.gf8())}, +aB(a){this.A.K(0,this.gf8()) +this.eE(0)}, +ds(a){return new A.R(A.M(1/0,a.a,a.b),A.M(1/0,a.c,a.d))}} +A.uy.prototype={} +A.TY.prototype={ +sLE(a){if(J.e(a,this.w))return +this.w=a +this.T()}, +sLF(a){if(J.e(a,this.x))return +this.x=a +this.T()}, +sZr(a){if(this.y===a)return +this.y=a +this.T()}, +sZs(a){if(this.z===a)return +this.z=a +this.T()}, +jB(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.saG(0,h) +r=c.b_ +q=r.vU(A.dx(B.q,i.a,i.b,!1),j.y,j.z) +for(p=q.length,o=0;o>>16&255,o>>>8&255,o&255)}if(r||n==null||!k.r)return +r=A.oI(s,B.Ng) +m=k.y +if(m===$){l=$.ap().br() +k.y!==$&&A.aH() +k.y=l +m=l}m.saG(0,n) +a.dk(r,m)}, +ff(a){var s=this +if(s===a)return!1 +return!(a instanceof A.Qh)||a.r!==s.r||a.w!==s.w||!J.e(a.z,s.z)||!J.e(a.Q,s.Q)||!a.as.l(0,s.as)||!J.e(a.at,s.at)||!J.e(a.ax,s.ax)}} +A.EC.prototype={ +a4(a,b){var s,r,q +for(s=this.r,r=s.length,q=0;q")) +s=this.r +p=A.af(s) +o=new J.di(s,s.length,p.i("di<1>")) +s=p.c +r=r.c +while(!0){if(!(q.u()&&o.u()))break +p=o.d +if(p==null)p=s.a(p) +n=q.d +if(p.ff(n==null?r.a(n):n))return!0}return!1}} +A.SO.prototype={ +aI(a){this.eD(a) +$.ix.pz$.a.q(0,this.gqK())}, +aB(a){$.ix.pz$.a.C(0,this.gqK()) +this.eE(0)}} +A.SP.prototype={ +aI(a){var s,r,q +this.aoN(a) +s=this.am$ +for(r=t.tq;s!=null;){s.aI(a) +q=s.b +q.toString +s=r.a(q).aO$}}, +aB(a){var s,r,q +this.aoO(0) +s=this.am$ +for(r=t.tq;s!=null;){s.aB(0) +q=s.b +q.toString +s=r.a(q).aO$}}} +A.aj9.prototype={} +A.MN.prototype={ +aqZ(a){var s,r,q,p,o=this +try{r=o.A +if(r!==""){q=$.bCn() +s=$.ap().Km(q) +s.ze($.bCo()) +s.Cg(r) +r=s.cL() +o.X!==$&&A.d1() +o.X=r}else{o.X!==$&&A.d1() +o.X=null}}catch(p){}}, +bQ(a){return 1e5}, +bP(a){return 1e5}, +gks(){return!0}, +k9(a){return!0}, +ds(a){return a.bD(B.an6)}, +aT(a,b){var s,r,q,p,o,n,m,l,k,j=this +try{p=a.gca(0) +o=j.gv(0) +n=b.a +m=b.b +l=$.ap().br() +l.saG(0,$.bCm()) +p.ey(new A.I(n,m,n+o.a,m+o.b),l) +p=j.X +p===$&&A.b() +if(p!=null){s=j.gv(0).a +r=0 +q=0 +if(s>328){s-=128 +r+=64}p.j4(new A.ug(s)) +o=j.gv(0) +if(o.b>96+p.gbA(p)+12)q+=96 +o=a.gca(0) +o.rg(p,b.ab(0,new A.z(r,q)))}}catch(k){}}} +A.b91.prototype={} +A.a0f.prototype={ +D(){return"FlexFit."+this.b}} +A.i_.prototype={ +j(a){return this.Gn(0)+"; flex="+A.c(this.e)+"; fit="+A.c(this.f)}} +A.a20.prototype={ +D(){return"MainAxisSize."+this.b}} +A.tZ.prototype={ +D(){return"MainAxisAlignment."+this.b}, +AX(a,b,c){var s,r,q,p=this +$label0$0:{if(B.o===p){s=c?new A.b3(a,0):B.al_ +break $label0$0}if(B.cD===p){s=B.o.AX(a,b,!c) +break $label0$0}r=B.bX===p +if(r&&b<2){s=B.o.AX(a,b,c) +break $label0$0}q=B.mM===p +if(q&&b===0){s=B.o.AX(a,b,c) +break $label0$0}if(B.ac===p){s=new A.b3(a/2,0) +break $label0$0}if(r){s=new A.b3(0,a/(b-1)) +break $label0$0}if(q){s=a/b +s=new A.b3(s/2,s) +break $label0$0}if(B.jz===p){s=a/(b+1) +s=new A.b3(s,s) +break $label0$0}s=null}return s}} +A.wq.prototype={ +D(){return"CrossAxisAlignment."+this.b}, +Ro(a,b){var s,r=this +$label0$0:{if(B.cv===r||B.l7===r){s=0 +break $label0$0}if(B.ap===r){s=b?a:0 +break $label0$0}if(B.l===r){s=a/2 +break $label0$0}if(B.h3===r){s=B.ap.Ro(a,!b) +break $label0$0}s=null}return s}} +A.yc.prototype={ +ht(a){if(!(a.b instanceof A.i_))a.b=new A.i_(null,null,B.j)}, +Hs(a,b,c){var s,r,q,p,o,n,m,l=this,k=l.A +if(k===c){s=l.am$ +k=A.y(l).i("aD.1") +r=t.US +q=0 +p=0 +o=0 +while(s!=null){n=s.b +n.toString +m=r.a(n).e +if(m==null)m=0 +q+=m +if(m>0)o=Math.max(o,a.$2(s,b)/m) +else p+=a.$2(s,b) +n=s.b +n.toString +s=k.a(n).aO$}return o*q+p}else{switch(k.a){case 0:k=!0 +break +case 1:k=!1 +break +default:k=null}r=k?new A.au(0,b,0,1/0):new A.au(0,1/0,0,b) +return l.Hi(r,A.ku(),new A.aOg(k,a)).a.b}}, +bU(a){return this.Hs(new A.aOl(),a,B.aN)}, +bQ(a){return this.Hs(new A.aOj(),a,B.aN)}, +bT(a){return this.Hs(new A.aOk(),a,B.aw)}, +bP(a){return this.Hs(new A.aOi(),a,B.aw)}, +iw(a){var s +switch(this.A.a){case 0:s=this.Ks(a) +break +case 1:s=this.aRv(a) +break +default:s=null}return s}, +ga5g(){var s,r=this.aC +$label0$1:{s=!1 +if(B.l7===r){switch(this.A.a){case 0:s=!0 +break +case 1:break +default:s=null}break $label0$1}if(B.ap===r||B.l===r||B.h3===r||B.cv===r)break $label0$1 +s=null}return s}, +ayj(a){var s +switch(this.A.a){case 0:s=a.b +break +case 1:s=a.a +break +default:s=null}return s}, +a3J(a){var s +switch(this.A.a){case 0:s=a.a +break +case 1:s=a.b +break +default:s=null}return s}, +ga3d(){var s,r=this,q=!1 +if(r.am$!=null)switch(r.A.a){case 0:s=r.aQ +$label0$1:{if(s==null||B.i===s)break $label0$1 +if(B.ae===s){q=!0 +break $label0$1}q=null}break +case 1:switch(r.M.a){case 1:break +case 0:q=!0 +break +default:q=null}break +default:q=null}return q}, +ga3c(){var s,r=this,q=!1 +if(r.am$!=null)switch(r.A.a){case 1:s=r.aQ +$label0$1:{if(s==null||B.i===s)break $label0$1 +if(B.ae===s){q=!0 +break $label0$1}q=null}break +case 0:switch(r.M.a){case 1:break +case 0:q=!0 +break +default:q=null}break +default:q=null}return q}, +a24(a){var s,r,q=null,p=this.aC +$label0$0:{if(B.cv===p){s=!0 +break $label0$0}if(B.ap===p||B.l===p||B.h3===p||B.l7===p){s=!1 +break $label0$0}s=q}switch(this.A.a){case 0:r=a.d +s=s?A.o1(r,q):new A.au(0,1/0,0,r) +break +case 1:r=a.b +s=s?A.o1(q,r):new A.au(0,r,0,1/0) +break +default:s=q}return s}, +a23(a,b,c){var s,r,q=a.b +q.toString +q=t.US.a(q).f +switch((q==null?B.lv:q).a){case 0:q=c +break +case 1:q=0 +break +default:q=null}s=this.aC +$label0$1:{if(B.cv===s){r=!0 +break $label0$1}if(B.ap===s||B.l===s||B.h3===s||B.l7===s){r=!1 +break $label0$1}r=null}switch(this.A.a){case 0:r=r?b.d:0 +r=new A.au(q,c,r,b.d) +q=r +break +case 1:r=r?b.b:0 +q=new A.au(r,b.b,q,c) +break +default:q=null}return q}, +fH(a5,a6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2=this,a3=null,a4=a2.Hi(a5,A.ku(),A.jb()) +if(a2.ga5g())return a4.c +s=new A.aOh(a2,a4,a5,a2.a24(a5)) +r=a3 +switch(a2.A.a){case 1:q=a4.b +p=Math.max(0,q) +o=a2.ga3d() +n=a2.X.AX(p,a2.dl$,o) +m=n.a +l=a3 +k=n.b +l=k +j=m +i=o?j+(a2.dl$-1)*l+(a4.a.a-q):j +h=o?-1:1 +g=a2.am$ +q=A.y(a2).i("aD.1") +while(!0){if(!(r==null&&g!=null))break +f=s.$1(g) +e=g.gdD() +d=g.fx +c=B.af.ha(d,f,e) +b=B.iz.ha(d,new A.b3(f,a6),g.gGS()) +a=o?-c.b:0 +a2=b==null?a3:b+i +a2=a2==null?a3:a2+a +i+=h*(l+c.b) +e=g.b +e.toString +g=q.a(e).aO$ +r=a2}break +case 0:a0=a2.ga3c() +g=a2.am$ +q=A.y(a2).i("aD.1") +e=a4.a.b +while(g!=null){f=s.$1(g) +d=g.gGS() +a1=g.fx +c=B.iz.ha(a1,new A.b3(f,a6),d) +b=B.af.ha(a1,f,g.gdD()) +d=a2.aC.Ro(e-b.b,a0) +r=A.Ac(r,c==null?a3:c+d) +d=g.b +d.toString +g=q.a(d).aO$}break}return r}, +ds(a){return A.aYW(this.Hi(a,A.ku(),A.jb()).a,this.A)}, +Hi(a3,a4,a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=null,a0=b.a3J(new A.R(A.M(1/0,a3.a,a3.b),A.M(1/0,a3.c,a3.d))),a1=isFinite(a0),a2=b.a24(a3) +if(b.ga5g())A.V(A.mP('To use CrossAxisAlignment.baseline, you must also specify which baseline to use using the "textBaseline" argument.')) +s=b.am$ +r=A.y(b).i("aD.1") +q=t.US +p=a +o=p +n=0 +m=B.V +while(s!=null){if(a1){l=s.b +l.toString +k=q.a(l).e +if(k==null)k=0 +l=k>0}else{k=a +l=!1}if(l){n+=k +if(o==null)o=s}else{j=A.aYW(a5.$2(s,a2),b.A) +j=new A.R(m.a+j.a,Math.max(m.b,j.b)) +p=A.bx9(p,a) +m=j}l=s.b +l.toString +s=r.a(l).aO$}i=Math.max(0,a0-m.a)/n +s=o +while(!0){if(!(s!=null&&n>0))break +c$0:{l=s.b +l.toString +k=q.a(l).e +if(k==null)k=0 +if(k===0)break c$0 +n-=k +j=A.aYW(a5.$2(s,b.a23(s,a3,i*k)),b.A) +j=new A.R(m.a+j.a,Math.max(m.b,j.b)) +p=A.bx9(p,a) +m=j}l=s.b +l.toString +s=r.a(l).aO$}$label0$1:{r=p==null +if(r){q=B.V +break $label0$1}h=a +g=a +f=p.a +h=p.b +g=f +j=new A.R(0,g+A.d5(h)) +q=j +break $label0$1 +q=a}m=A.bPi(m,q) +e=b.a9 +$label1$2:{d=B.k===e +if(d&&a1){q=a0 +break $label1$2}if(d||B.aE===e){q=m.a +break $label1$2}q=a}c=A.bPj(new A.R(q,m.b),a3,b.A) +r=r?a:p.a +q=o==null?a:i +return new A.b91(c,c.a-m.a,r,q)}, +ck(){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="Pattern matching error",a6="RenderBox was not laid out: ",a7=a3.Hi(t.k.a(A.G.prototype.gah.call(a3)),A.bjw(),A.rR()),a8=a7.a,a9=a8.b +a3.id=A.aYW(a8,a3.A) +a8=a7.b +a3.ac=Math.max(0,-a8) +s=Math.max(0,a8) +r=a3.ga3d() +q=a3.ga3c() +p=a3.X.AX(s,a3.dl$,r) +o=p.a +n=a4 +m=p.b +n=m +l=o +k=r?new A.b3(a3.gK3(),a3.dJ$):new A.b3(a3.gCw(),a3.am$) +j=k.a +a8=t.xP.b(j) +i=a4 +if(a8){h=k.b +i=h +g=j}else g=a4 +if(!a8)throw A.d(A.a1(a5)) +f=a7.c +for(a8=t.US,e=f!=null,d=i,c=l;d!=null;d=g.$1(d)){if(e){b=a3.U +b.toString +a=d.F9(b,!0) +a0=a!=null}else{a=a4 +a0=!1}if(a0){a.toString +a1=f-a}else{b=a3.aC +a2=d.id +a1=b.Ro(a9-a3.ayj(a2==null?A.V(A.a1(a6+A.K(d).j(0)+"#"+A.c5(d))):a2),q)}b=d.b +b.toString +a8.a(b) +switch(a3.A.a){case 0:a2=new A.z(c,a1) +break +case 1:a2=new A.z(a1,c) +break +default:a2=a4}b.a=a2 +a2=d.id +c+=a3.a3J(a2==null?A.V(A.a1(a6+A.K(d).j(0)+"#"+A.c5(d))):a2)+n}}, +dU(a,b){return this.CX(a,b)}, +aT(a,b){var s,r,q,p=this +if(!(p.ac>1e-10)){p.y5(a,b) +return}if(p.gv(0).ga_(0))return +s=p.cB +r=p.cx +r===$&&A.b() +q=p.gv(0) +s.sb0(0,a.og(r,b,new A.I(0,0,0+q.a,0+q.b),p.gacn(),p.aE,s.a))}, +m(){this.cB.sb0(0,null) +this.aoR()}, +r8(a){var s +switch(this.aE.a){case 0:return null +case 1:case 2:case 3:if(this.ac>1e-10){s=this.gv(0) +s=new A.I(0,0,0+s.a,0+s.b)}else s=null +return s}}, +fb(){return this.anl()}} +A.aOg.prototype={ +$2(a,b){var s,r,q=this.a,p=q?b.b:b.d +if(isFinite(p))s=p +else s=q?a.aM(B.aM,1/0,a.gcb()):a.aM(B.bC,1/0,a.gcM()) +r=this.b +return q?new A.R(s,r.$2(a,s)):new A.R(r.$2(a,s),s)}, +$S:73} +A.aOl.prototype={ +$2(a,b){return a.aM(B.bh,b,a.gcF())}, +$S:88} +A.aOj.prototype={ +$2(a,b){return a.aM(B.aM,b,a.gcb())}, +$S:88} +A.aOk.prototype={ +$2(a,b){return a.aM(B.bi,b,a.gcE())}, +$S:88} +A.aOi.prototype={ +$2(a,b){return a.aM(B.bC,b,a.gcM())}, +$S:88} +A.aOh.prototype={ +$1(a){var s,r,q=this,p=q.b.d +if(p!=null){s=A.bMO(a) +r=s>0}else{s=null +r=!1}return r?q.a.a23(a,q.c,s*p):q.d}, +$S:424} +A.ajb.prototype={ +aI(a){var s,r,q +this.eD(a) +s=this.am$ +for(r=t.US;s!=null;){s.aI(a) +q=s.b +q.toString +s=r.a(q).aO$}}, +aB(a){var s,r,q +this.eE(0) +s=this.am$ +for(r=t.US;s!=null;){s.aB(0) +q=s.b +q.toString +s=r.a(q).aO$}}} +A.ajc.prototype={} +A.SQ.prototype={ +m(){var s,r,q +for(s=this.adb$,r=s.length,q=0;q>")) +this.kP(new A.Wj(s,c.i("Wj<0>")),b,!0,c) +return s.length===0?null:B.b.gW(s).a}, +as7(a){var s,r=this +if(!r.w&&r.x!=null){s=r.x +s.toString +a.aO1(s) +return}r.kC(a) +r.w=!1}, +fb(){var s=this.aml() +return s+(this.y==null?" DETACHED":"")}} +A.aEO.prototype={ +$0(){this.b.$1(this.a)}, +$S:0} +A.aEP.prototype={ +$0(){var s=this.a +s.a.C(0,this.b) +s.C_(-1)}, +$S:0} +A.a1E.prototype={ +sb0(a,b){var s=this.a +if(b==s)return +if(s!=null)if(--s.f===0)s.m() +this.a=b +if(b!=null)++b.f}, +j(a){var s=this.a +return"LayerHandle("+(s!=null?s.j(0):"DISPOSED")+")"}} +A.a62.prototype={ +safJ(a){var s +this.i9() +s=this.ay +if(s!=null)s.m() +this.ay=a}, +m(){this.safJ(null) +this.a_j()}, +kC(a){var s=this.ay +s.toString +a.aNX(B.j,s,this.ch,this.CW)}, +kP(a,b,c){return!1}} +A.hc.prototype={ +AW(a){var s +this.amG(a) +if(!a)return +s=this.ax +for(;s!=null;){s.AW(!0) +s=s.Q}}, +Pk(){for(var s=this.ay;s!=null;s=s.as)if(!s.Pk())return!1 +return!0}, +ab1(a){var s=this +s.NZ() +s.kC(a) +if(s.b>0)s.AW(!0) +s.w=!1 +return a.cL()}, +m(){this.XZ() +this.a.V(0) +this.a_j()}, +NZ(){var s,r=this +r.amJ() +s=r.ax +for(;s!=null;){s.NZ() +r.w=r.w||s.w +s=s.Q}}, +kP(a,b,c,d){var s,r,q +for(s=this.ay,r=a.a;s!=null;s=s.as){if(s.kP(a,b,!0,d))return!0 +q=r.length +if(q!==0)return!1}return!1}, +aI(a){var s +this.amH(a) +s=this.ax +for(;s!=null;){s.aI(a) +s=s.Q}}, +aB(a){var s +this.amI(0) +s=this.ax +for(;s!=null;){s.aB(0) +s=s.Q}this.AW(!1)}, +Cj(a,b){var s,r=this +if(!r.gxE())r.i9() +s=b.b +if(s!==0)r.C_(s) +b.r=r +s=r.y +if(s!=null)b.aI(s) +r.ol(b) +s=b.as=r.ay +if(s!=null)s.Q=b +r.ay=b +if(r.ax==null)r.ax=b +b.e.sb0(0,b)}, +j8(){var s,r,q=this.ax +for(;q!=null;){s=q.z +r=this.z +if(s<=r){q.z=r+1 +q.j8()}q=q.Q}}, +ol(a){var s=a.z,r=this.z +if(s<=r){a.z=r+1 +a.j8()}}, +a2S(a){var s,r=this +if(!r.gxE())r.i9() +s=a.b +if(s!==0)r.C_(-s) +a.r=null +if(r.y!=null)a.aB(0)}, +XZ(){var s,r=this,q=r.ax +for(;q!=null;q=s){s=q.Q +q.Q=q.as=null +r.a2S(q) +q.e.sb0(0,null)}r.ay=r.ax=null}, +kC(a){this.lo(a)}, +lo(a){var s=this.ax +for(;s!=null;){s.as7(a) +s=s.Q}}, +um(a,b){}} +A.n4.prototype={ +sdA(a,b){if(!b.l(0,this.k3))this.i9() +this.k3=b}, +kP(a,b,c,d){return this.ql(a,b.ai(0,this.k3),!0,d)}, +um(a,b){var s=this.k3 +b.bs(0,s.a,s.b)}, +kC(a){var s=this,r=s.k3 +s.sj1(a.ag0(r.a,r.b,t.Ff.a(s.x))) +s.lo(a) +a.cV()}, +b0c(a,b){var s,r=$.ap().ac7(),q=A.C7(b,b,1),p=a.a,o=this.k3,n=a.b +q.bs(0,-(p+o.a),-(n+o.b)) +r.aZW(q.a) +s=this.ab1(r) +try{p=s.EH(B.d.dZ(b*(a.c-p)),B.d.dZ(b*(a.d-n))) +return p}finally{s.m()}}} +A.At.prototype={ +Ky(){return this.k3}, +kP(a,b,c,d){if(!this.k3.p(0,b))return!1 +return this.ql(a,b,!0,d)}, +kC(a){var s=this,r=s.k3 +r.toString +s.sj1(a.aZR(r,s.k4,t.GB.a(s.x))) +s.lo(a) +a.cV()}} +A.HC.prototype={ +Ky(){var s=this.k3 +return s==null?null:new A.I(s.a,s.b,s.c,s.d)}, +kP(a,b,c,d){if(!this.k3.p(0,b))return!1 +return this.ql(a,b,!0,d)}, +kC(a){var s=this,r=s.k3 +r.toString +s.sj1(a.aZQ(r,s.k4,t.cW.a(s.x))) +s.lo(a) +a.cV()}} +A.HB.prototype={ +Ky(){var s=this.k3 +return s==null?null:s.ko(0)}, +kP(a,b,c,d){if(!this.k3.p(0,b))return!1 +return this.ql(a,b,!0,d)}, +kC(a){var s=this,r=s.k3 +r.toString +s.sj1(a.aZO(r,s.k4,t.Ax.a(s.x))) +s.lo(a) +a.cV()}} +A.Xx.prototype={ +kC(a){var s=this,r=s.k3 +r.toString +s.sj1(a.aZS(r,t.Ca.a(s.x))) +s.lo(a) +a.cV()}} +A.JX.prototype={ +kC(a){var s=this +s.sj1(a.aZT(s.bG,s.k3,t.IE.a(s.x))) +s.lo(a) +a.cV()}} +A.r7.prototype={ +scZ(a,b){var s=this +if(b.l(0,s.bG))return +s.bG=b +s.by=!0 +s.i9()}, +kC(a){var s,r,q=this +q.bx=q.bG +if(!q.k3.l(0,B.j)){s=q.k3 +s=A.u1(s.a,s.b,0) +r=q.bx +r.toString +s.e7(0,r) +q.bx=s}q.sj1(a.Eq(q.bx.a,t.qf.a(q.x))) +q.lo(a) +a.cV()}, +TR(a){var s,r=this +if(r.by){s=r.bG +s.toString +r.a2=A.xF(A.bnm(s)) +r.by=!1}s=r.a2 +if(s==null)return null +return A.ct(s,a)}, +kP(a,b,c,d){var s=this.TR(b) +if(s==null)return!1 +return this.amV(a,s,!0,d)}, +um(a,b){var s=this.bx +if(s==null){s=this.bG +s.toString +b.e7(0,s)}else b.e7(0,s)}} +A.a5c.prototype={ +sUC(a,b){var s=this,r=s.bG +if(b!=r){if(b===255||r===255)s.sj1(null) +s.bG=b +s.i9()}}, +kC(a){var s,r,q,p=this +if(p.ax==null){p.sj1(null) +return}s=p.bG +s.toString +r=p.k3 +q=p.x +if(s<255)p.sj1(a.aZV(s,r,t.Zr.a(q))) +else p.sj1(a.ag0(r.a,r.b,t.Ff.a(q))) +p.lo(a) +a.cV()}} +A.H9.prototype={ +sLg(a,b){if(!b.l(0,this.k3)){this.k3=b +this.i9()}}, +kC(a){var s=this,r=s.k3 +r.toString +s.sj1(a.aZN(r,s.k4,t.tX.a(s.x))) +s.lo(a) +a.cV()}} +A.BS.prototype={ +j(a){var s=A.c5(this),r=this.a!=null?"":"" +return"#"+s+"("+r+")"}} +A.Ks.prototype={ +svm(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}, +sdA(a,b){if(b.l(0,this.k4))return +this.k4=b +this.i9()}, +aI(a){this.amd(a) +this.k3.a=this}, +aB(a){var s=this.k3 +if(s.a===this)s.a=null +this.ame(0)}, +kP(a,b,c,d){return this.ql(a,b.ai(0,this.k4),!0,d)}, +kC(a){var s,r=this +if(!r.k4.l(0,B.j)){s=r.k4 +r.sj1(a.Eq(A.u1(s.a,s.b,0).a,t.qf.a(r.x)))}else r.sj1(null) +r.lo(a) +if(!r.k4.l(0,B.j))a.cV()}, +um(a,b){var s +if(!this.k4.l(0,B.j)){s=this.k4 +b.bs(0,s.a,s.b)}}} +A.JB.prototype={ +TR(a){var s,r,q,p,o=this +if(o.R8){s=o.YU() +s.toString +o.p4=A.xF(s) +o.R8=!1}if(o.p4==null)return null +r=new A.nx(new Float64Array(4)) +r.G0(a.a,a.b,0,1) +s=o.p4.al(0,r).a +q=s[0] +p=o.p1 +return new A.z(q-p.a,s[1]-p.b)}, +kP(a,b,c,d){var s,r=this +if(r.k3.a==null){if(r.k4)return r.ql(a,b.ai(0,r.ok),!0,d) +return!1}s=r.TR(b) +if(s==null)return!1 +return r.ql(a,s,!0,d)}, +YU(){var s,r +if(this.p3==null)return null +s=this.p2 +r=A.u1(-s.a,-s.b,0) +s=this.p3 +s.toString +r.e7(0,s) +return r}, +ax2(){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.azZ(s,m,q,p) +o=A.bt9(q) +s.um(null,o) +r=m.p1 +o.bs(0,r.a,r.b) +n=A.bt9(p) +if(n.hn(n)===0)return +n.e7(0,o) +m.p3=n +m.R8=!0}, +gxE(){return!0}, +kC(a){var s,r,q=this +if(q.k3.a==null&&!q.k4){q.p2=q.p3=null +q.R8=!0 +q.sj1(null) +return}q.ax2() +s=q.p3 +r=t.qf +if(s!=null){q.p2=q.ok +q.sj1(a.Eq(s.a,r.a(q.x))) +q.lo(a) +a.cV()}else{q.p2=null +s=q.ok +q.sj1(a.Eq(A.u1(s.a,s.b,0).a,r.a(q.x))) +q.lo(a) +a.cV()}q.R8=!0}, +um(a,b){var s=this.p3 +if(s!=null)b.e7(0,s) +else{s=this.ok +b.e7(0,A.u1(s.a,s.b,0))}}} +A.GX.prototype={ +kP(a,b,c,d){var s,r,q=this,p=q.ql(a,b,!0,d),o=a.a,n=o.length +if(n!==0)return p +n=q.k4 +if(n!=null){s=q.ok +r=s.a +s=s.b +n=!new A.I(r,s,r+n.a,s+n.b).p(0,b)}else n=!1 +if(n)return p +if(A.cK(q.$ti.c)===A.cK(d))o.push(new A.GY(d.a(q.k3),b.ai(0,q.ok),d.i("GY<0>"))) +return p}, +gk(a){return this.k3}} +A.agB.prototype={} +A.ahj.prototype={ +b_B(a){var s=this.a +this.a=a +return s}, +j(a){var s="#",r=A.c5(this.b),q=this.a.a +return s+A.c5(this)+"("+("latestEvent: "+(s+r))+", "+("annotations: [list of "+q+"]")+")"}} +A.ahk.prototype={ +gn0(a){var s=this.c +return s.gn0(s)}} +A.a49.prototype={ +a4T(a){var s,r,q,p,o,n,m=t._h,l=A.kR(null,null,m,t.xV) +for(s=a.a,r=s.length,q=0;q") +this.b.aTM(a.gn0(0),a.d,A.n_(new A.aR(s,r),new A.aIY(),r.i("B.E"),t.Pb))}, +b0U(a,b){var s,r,q,p,o,n=this,m={} +if(a.ge1(a)!==B.cI&&a.ge1(a)!==B.cq)return +if(t.ks.b(a))return +m.a=null +if(t.PB.b(a))m.a=A.aBC() +else{s=a.gzz() +m.a=b==null?n.a.$2(a.gcl(a),s):b}r=a.gn0(a) +q=n.c +p=q.h(0,r) +if(!A.bL9(p,a))return +o=q.a +new A.aJ0(m,n,p,a,r).$0() +if(o!==0!==(q.a!==0))n.T()}, +b0H(){new A.aIZ(this).$0()}} +A.aIY.prototype={ +$1(a){return a.gCS(a)}, +$S:425} +A.aJ0.prototype={ +$0(){var s=this +new A.aJ_(s.a,s.b,s.c,s.d,s.e).$0()}, +$S:0} +A.aJ_.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.ahj(A.kR(m,m,t._h,t.xV),s))}else{s=n.d +if(t.PB.b(s))n.b.c.C(0,s.gn0(s))}r=n.b +q=r.c.h(0,n.e) +if(q==null){l.toString +q=l}p=q.b +q.b=s +o=t.PB.b(s)?A.kR(m,m,t._h,t.xV):r.a4T(n.a.a) +r.a4f(new A.ahk(q.b_B(o),o,p,s))}, +$S:0} +A.aIZ.prototype={ +$0(){var s,r,q,p,o,n,m +for(s=this.a,r=s.c.gaJ(0),q=A.y(r),r=new A.bD(J.ay(r.a),r.b,q.i("bD<1,2>")),q=q.y[1];r.u();){p=r.a +if(p==null)p=q.a(p) +o=p.b +n=s.axy(p) +m=p.a +p.a=n +s.a4f(new A.ahk(m,n,o,null))}}, +$S:0} +A.aIW.prototype={ +$2(a,b){var s +if(a.gYB()&&!this.a.N(0,a)){s=a.gafj(a) +if(s!=null)s.$1(this.b.bY(this.c.h(0,a)))}}, +$S:426} +A.aIX.prototype={ +$1(a){return!this.a.N(0,a)}, +$S:427} +A.and.prototype={} +A.e_.prototype={ +aB(a){}, +j(a){return""}} +A.qs.prototype={ +fa(a,b){var s,r=this +if(a.gi8()){r.Ab() +if(!a.cy){s=a.ay +s===$&&A.b() +s=!s}else s=!0 +if(s)A.buS(a,!0) +else if(a.db)A.bLS(a) +s=a.ch.a +s.toString +t.gY.a(s) +s.sdA(0,b) +s.eT(0) +r.a.Cj(0,s)}else{s=a.ay +s===$&&A.b() +if(s){a.ch.sb0(0,null) +a.SO(r,b)}else a.SO(r,b)}}, +gca(a){var s +if(this.e==null)this.TG() +s=this.e +s.toString +return s}, +TG(){var s,r,q=this +q.c=new A.a62(q.b,A.w(t.S,t.M),A.aK()) +$.oK.toString +s=$.ap() +r=s.CO() +q.d=r +$.oK.toString +q.e=s.CK(r,null) +r=q.c +r.toString +q.a.Cj(0,r)}, +Ab(){var s,r=this +if(r.e==null)return +s=r.c +s.toString +s.safJ(r.d.KW()) +r.e=r.d=r.c=null}, +ZE(){if(this.c==null)this.TG() +var s=this.c +if(!s.ch){s.ch=!0 +s.i9()}}, +zd(a,b,c,d){var s +if(a.ax!=null)a.XZ() +this.Ab() +a.eT(0) +this.a.Cj(0,a) +s=new A.qs(a,d==null?this.b:d) +b.$2(s,c) +s.Ab()}, +q_(a,b,c){return this.zd(a,b,c,null)}, +og(a,b,c,d,e,f){var s,r,q=this +if(e===B.h){d.$2(q,b) +return null}s=c.ep(b) +if(a){r=f==null?new A.At(B.w,A.w(t.S,t.M),A.aK()):f +if(!s.l(0,r.k3)){r.k3=s +r.i9()}if(e!==r.k4){r.k4=e +r.i9()}q.zd(r,d,b,s) +return r}else{q.aPA(s,e,s,new A.aMh(q,d,b)) +return null}}, +afZ(a,b,c,d,e,f,g){var s,r,q,p=this +if(f===B.h){e.$2(p,b) +return null}s=c.ep(b) +r=d.ep(b) +if(a){q=g==null?new A.HC(B.by,A.w(t.S,t.M),A.aK()):g +if(!r.l(0,q.k3)){q.k3=r +q.i9()}if(f!==q.k4){q.k4=f +q.i9()}p.zd(q,e,b,s) +return q}else{p.aPz(r,f,s,new A.aMg(p,e,b)) +return null}}, +XN(a,b,c,d,e,f,g){var s,r,q,p=this +if(f===B.h){e.$2(p,b) +return null}s=c.ep(b) +r=d.ep(b) +if(a){q=g==null?new A.HB(B.by,A.w(t.S,t.M),A.aK()):g +if(r!==q.k3){q.k3=r +q.i9()}if(f!==q.k4){q.k4=f +q.i9()}p.zd(q,e,b,s) +return q}else{p.aPy(r,f,s,new A.aMf(p,e,b)) +return null}}, +aZP(a,b,c,d,e,f){return this.XN(a,b,c,d,e,B.by,f)}, +rV(a,b,c,d,e){var s,r=this,q=b.a,p=b.b,o=A.u1(q,p,0) +o.e7(0,c) +o.bs(0,-q,-p) +if(a){s=e==null?A.bwD(null):e +s.scZ(0,o) +r.zd(s,d,b,A.buj(o,r.b)) +return s}else{q=r.gca(0) +q.en(0) +q.al(0,o.a) +d.$2(r,b) +r.gca(0).el(0) +return null}}, +XO(a,b,c,d){var s=d==null?A.bn8():d +s.sUC(0,b) +s.sdA(0,a) +this.q_(s,c,B.j) +return s}, +j(a){return"PaintingContext#"+A.at(this)+"(layer: "+this.a.j(0)+", canvas bounds: "+this.b.j(0)+")"}} +A.aMh.prototype={ +$0(){return this.b.$2(this.a,this.c)}, +$S:0} +A.aMg.prototype={ +$0(){return this.b.$2(this.a,this.c)}, +$S:0} +A.aMf.prototype={ +$0(){return this.b.$2(this.a,this.c)}, +$S:0} +A.asN.prototype={} +A.qu.prototype={ +zm(){var s=this.cx +if(s!=null)s.a.VW()}, +sY7(a){var s=this.e +if(s==a)return +if(s!=null)s.aB(0) +this.e=a +if(a!=null)a.aI(this)}, +ads(){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.W0(s,new A.aMB()) +for(r=0;r")) +i.c_(m,l,k,j.c) +B.b.G(n,i) +break}}q=J.i(s,r) +if(q.z&&q.y===h)q.aE3()}h.f=!1}for(o=h.CW,o=A.dr(o,o.r,A.y(o).c),n=o.$ti.c;o.u();){m=o.d +p=m==null?n.a(m):m +p.ads()}}finally{h.f=!1}}, +awU(a){try{a.$0()}finally{this.f=!0}}, +adq(){var s,r,q,p,o=this.z +B.b.fZ(o,new A.aMA()) +for(s=o.length,r=0;r=m){l=q.gbt(q) +if(l==null)l=A.V(A.mP(A.c(a1)+" and "+d.j(0)+b)) +if(o==null){o=A.a([d],s) +k=o}else k=o +k.push(l) +q=l}if(n<=m){j=r.gbt(r) +if(j==null)j=A.V(A.mP(A.c(a1)+" and "+d.j(0)+b)) +if(p==null){a1.toString +p=A.a([a1],s) +k=p}else k=p +k.push(j) +r=j}}if(o!=null){i=new A.bW(new Float64Array(16)) +i.eo() +s=o.length +h=a?s-2:s-1 +for(g=h;g>0;g=f){f=g-1 +o[g].er(o[f],i)}}else i=c +if(p==null){if(i==null){a=new A.bW(new Float64Array(16)) +a.eo()}else a=i +return a}e=new A.bW(new Float64Array(16)) +e.eo() +for(g=p.length-1;g>0;g=f){f=g-1 +p[g].er(p[f],e)}if(e.hn(e)===0)return new A.bW(new Float64Array(16)) +if(i==null)a=c +else{i.e7(0,e) +a=i}return a==null?e:a}, +r8(a){return null}, +Vy(a){return null}, +FB(){this.y.ch.q(0,this) +this.y.zm()}, +hP(a){}, +FH(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.gbt(q)!=null)q.gbt(q).FH(a)}, +gIF(){var s,r=this +if(r.dx==null){s=A.oN() +r.dx=s +r.hP(s)}s=r.dx +s.toString +return s}, +uu(){this.dy=!0 +this.fr=null +this.bZ(new A.aOw())}, +bM(){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.k2)!=null||o.gIF().k2!=null +o.dx=null +q=o.gIF().a&&s +p=o +while(!0){if(p.gbt(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.gbt(p) +if(p.dx==null){n=A.oN() +p.dx=n +p.hP(n)}q=p.dx.a +if(q&&p.fr==null)return}if(p!==o&&o.fr!=null&&o.dy)o.y.ch.C(0,o) +if(!p.dy){p.dy=!0 +n=o.y +if(n!=null){n.ch.q(0,p) +o.y.zm()}}}, +aN0(){var s,r,q,p,o,n,m,l=this,k=null +if(l.z)return +s=l.fr +r=s==null +q=k +if(!r){p=s.ch +if(!(p==null))if(!p.Q)q=p.ch!=null&&p.y +else q=!0}s=r?k:s.z +o=t.pp.a(l.a3Y(s===!0,q===!0)) +s=t.QF +n=A.a([],s) +m=A.a([],s) +s=l.fr +r=s==null +q=r?k:s.f +p=r?k:s.r +s=r?k:s.w +o.xU(s==null?0:s,p,q,n,m)}, +a3Y(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d={},c=e.gIF() +d.a=c.d +d.b=!c.e&&!c.a +s=a||c.b +r=b||c.R8 +q=A.a([],t.q1) +p=c.c||e.gbt(e)==null +o=c.k2 +n=t.pp +m=A.w(t.ZX,n) +l=t.CZ +k=A.a([],l) +j=A.a([],t.i1) +i=c.a9 +i=i==null?null:i.a!==0 +e.iL(new A.aOr(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.c5(this)}, +j(a){return this.fb()}, +i3(a,b,c,d){var s,r=this +if(r.gbt(r) instanceof A.G){s=r.gbt(r) +s.toString +s.i3(a,b==null?r:b,c,d)}}, +A3(){return this.i3(B.bk,null,B.F,null)}, +tv(a){return this.i3(B.bk,null,B.F,a)}, +wi(a,b,c){return this.i3(a,null,b,c)}, +tw(a,b){return this.i3(B.bk,a,B.F,b)}, +$iaU:1} +A.aOu.prototype={ +$0(){var s=A.a([],t.E),r=this.a +s.push(A.blu("The following RenderObject was being processed when the exception was fired",B.Zl,r)) +s.push(A.blu("RenderObject",B.Zm,r)) +return s}, +$S:35} +A.aOx.prototype={ +$0(){this.b.$1(this.c.a(this.a.gah()))}, +$S:0} +A.aOv.prototype={ +$1(a){var s +a.a9d() +s=a.cx +s===$&&A.b() +if(s)this.a.cx=!0}, +$S:30} +A.aOw.prototype={ +$1(a){a.uu()}, +$S:30} +A.aOr.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=a.a3Y(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.gaf4(),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.akc() +b.a20(a3,a4,c)}else b=a2 +c=b.c +c===$&&A.b() +a=b.d +a===$&&A.b() +a0=A.f9(c,a) +e=e==null?a2:e.nT(a0) +if(e==null)e=a0 +c=b.b +if(c!=null){a1=A.f9(b.c,c) +f=f==null?a2:f.hG(a1) +if(f==null)f=a1}c=b.a +if(c!=null){a1=A.f9(b.c,c) +g=g==null?a2:g.hG(a1) +if(g==null)g=a1}d=d.c +if(d!=null)l.G(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.NC(a2,B.b.gW(o).gwh()) +a6.q(0,i.b) +i.dy=l +if(!i.e.l(0,e)){i.e=e +i.li()}if(!A.bmR(i.d,a2)){i.d=null +i.li()}i.f=f +i.r=g +for(k=k.gav(m);k.u();){j=k.gI(k) +if(j.gjW()!=null)B.b.gW(j.b).fr=i}i.Yy(0,h) +a5.push(i)}}}, +xU(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.bn(t.S),c=f.y +for(s=f.x,r=s.length,q=0;q");s.u();){n=s.gI(s) +if(n instanceof A.zD){if(n.z){m=n.b +m=B.b.gW(m).fr!=null&&d.p(0,B.b.gW(m).fr.b)}else m=!1 +if(m)B.b.gW(n.b).fr=null}m=n.b +l=new A.aP(r,1,e,p) +l.c_(r,1,e,o) +B.b.G(m,l) +n.xU(a+f.f.bG,b,a0,a1,a2)}return}s=f.b +k=s.length>1?A.bQZ(s,b,a0):e +r=!f.e +if(r){if(k==null)p=e +else{p=k.d +p===$&&A.b() +if(!p.ga_(0)){p=k.c +p===$&&A.b() +p=p.aeN()}else p=!0}p=p===!0}else p=!1 +if(p)return +p=B.b.gW(s) +j=p.fr +if(j==null)j=p.fr=A.NC(e,B.b.gW(s).gwh()) +j.dy=f.c +j.w=a +if(a!==0){f.Hb() +p=f.f +p.seK(0,p.bG+a)}if(k!=null){p=k.d +p===$&&A.b() +j.scf(0,p) +p=k.c +p===$&&A.b() +j.scZ(0,p) +j.f=k.b +j.r=k.a +if(r&&k.e){f.Hb() +f.f.c6(B.nn,!0)}}r=t.QF +i=A.a([],r) +f.a5K(j.f,j.r,a2,d) +for(p=J.ay(c);p.u();){o=p.gI(p) +if(o instanceof A.zD){if(o.z){n=o.b +n=B.b.gW(n).fr!=null&&d.p(0,B.b.gW(n).fr.b)}else n=!1 +if(n)B.b.gW(o.b).fr=null}h=A.a([],r) +n=j.f +o.xU(0,j.r,n,i,h) +B.b.G(a2,h)}r=f.f +if(r.a)B.b.gW(s).xJ(j,f.f,i) +else j.q8(0,i,r) +a1.push(j) +for(s=a2.length,r=t.g3,q=0;q0;){r=c[s];--s +q=c[s] +A.bR_(r,q,g.c) +if(r===q.gbt(q))g.a1T(r,q,g.b,g.a) +else{p=A.a([q],e) +o=q.gbt(q) +while(!0){n=o==null +m=!n +if(!(m&&o.fr==null))break +p.push(o) +o=o.gbt(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.a1T(j,p[k],g.b,g.a) +j=p[k]}}}i=B.b.gW(c) +e=g.b +e=e==null?f:e.hG(i.goA()) +if(e==null)e=i.goA() +g.d=e +n=g.a +if(n!=null){h=n.hG(e) +e=h.ga_(0)&&!g.d.ga_(0) +g.e=e +if(!e)g.d=h}}, +a1T(a,b,c,d){var s,r,q,p=$.bD9() +p.eo() +a.er(b,p) +s=a.r8(b) +r=A.bxL(A.bxK(s,d),p) +this.a=r +if(r==null)this.b=null +else{q=a.Vy(b) +this.b=A.bxL(q==null?A.bxK(c,s):q,p)}}} +A.ahV.prototype={} +A.ajg.prototype={} +A.qv.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.qv&&b.b===this.b}, +gB(a){return A.a4(B.avy,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.m8.prototype={ +aB(a){this.a=this.b=null +this.apt(0)}, +j(a){var s=A.c(this.b),r=this.a +r=r==null?"not laid out":"offset: "+r.j(0) +return"widget: "+s+", "+r}} +A.a6Q.prototype={ +ht(a){if(!(a.b instanceof A.m8))a.b=new A.m8(null,null)}, +mj(a,b,c){var s,r=new A.au(0,a,0,1/0),q=A.a([],t.UY),p=this.am$,o=A.y(this).i("aD.1") +while(p!=null){q.push(A.bMP(p,r,b,c)) +s=p.b +s.toString +p=o.a(s).aO$}return q}, +afM(a){var s,r,q,p,o,n,m=this.am$ +for(s=a.length,r=t.tq,q=A.y(this).i("aD.1"),p=0;ph){d=c0[h].dy +d=d!=null&&d.p(0,new A.qv(i,b7))}else d=!1 +if(!d)break +b=c0[h] +d=s.b +d.toString +if(m.a(d).a!=null)b5.push(b);++h}b7=s.b +b7.toString +s=n.a(b7).aO$;++i}else{a=o.a(A.G.prototype.gah.call(b3)) +b6.l6(b3.eM) +a0=a.b +a0=b3.U||b3.ac===B.al?a0:1/0 +b6.kR(a0,a.a) +a1=b6.vU(new A.iW(j,e,B.q,!1,c,d),B.iw,B.fT) +if(a1.length===0)continue +d=B.b.gW(a1) +a2=new A.I(d.a,d.b,d.c,d.d) +a3=B.b.gW(a1).e +for(d=A.af(a1),c=d.i("aP<1>"),a=new A.aP(a1,1,b4,c),a.c_(a1,1,b4,d.c),a=new A.ci(a,a.gt(0),c.i("ci")),c=c.i("aN.E");a.u();){d=a.d +if(d==null)d=c.a(d) +a2=a2.nT(new A.I(d.a,d.b,d.c,d.d)) +a3=d.e}d=a2.a +c=Math.max(0,d) +a=a2.b +a0=Math.max(0,a) +d=Math.min(a2.c-d,o.a(A.G.prototype.gah.call(b3)).b) +a=Math.min(a2.d-a,o.a(A.G.prototype.gah.call(b3)).d) +a4=Math.floor(c)-4 +a5=Math.floor(a0)-4 +d=Math.ceil(c+d)+4 +a=Math.ceil(a0+a)+4 +a6=new A.I(a4,a5,d,a) +a7=A.oN() +a8=k+1 +a7.k3=new A.xR(k,b4) +a7.e=!0 +a7.a2=l +a0=f.b +b7=a0==null?b7:a0 +a7.ry=new A.e8(b7,f.f) +$label0$1:{break $label0$1}b7=b8.r +if(b7!=null){a9=b7.hG(a6) +if(a9.a>=a9.c||a9.b>=a9.d)b7=!(a4>=d||a5>=a) +else b7=!1 +a7.c6(B.nn,b7)}b7=b3.H +d=b7==null?b4:b7.a!==0 +if(d===!0){b7.toString +b0=new A.aR(b7,A.y(b7).i("aR<1>")).gav(0) +if(!b0.u())A.V(A.cV()) +b7=b7.C(0,b0.gI(0)) +b7.toString +b1=b7}else{b2=new A.kl() +b1=A.NC(b2,b3.aGR(b2))}b1.Yy(0,a7) +if(!b1.e.l(0,a6)){b1.e=a6 +b1.li()}b7=b1.a +b7.toString +r.n(0,b7,b1) +b5.push(b1) +k=a8 +l=a3}}b3.H=r +b8.q8(0,b5,b9)}, +aGR(a){return new A.aOy(this,a)}, +uu(){this.Pc() +this.H=null}} +A.aOB.prototype={ +$1(a){return a.z=null}, +$S:432} +A.aOC.prototype={ +$1(a){var s=a.x +s===$&&A.b() +return s.c!==B.ey}, +$S:433} +A.aOA.prototype={ +$2(a,b){return new A.R(a.aM(B.bh,1/0,a.gcF()),0)}, +$S:73} +A.aOz.prototype={ +$2(a,b){return new A.R(a.aM(B.aM,1/0,a.gcb()),0)}, +$S:73} +A.aOy.prototype={ +$0(){var s=this.a,r=s.H.h(0,this.b) +r.toString +s.tw(s,r.e)}, +$S:0} +A.p8.prototype={ +gk(a){var s=this.x +s===$&&A.b() +return s}, +aGS(){var s=this,r=s.a3X(),q=s.x +q===$&&A.b() +if(q.l(0,r))return +s.x=r +s.T()}, +a3X(){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.NJ +s=e.a +r=f.e.a +e=f.b +q=e.B0(new A.b_(s,B.q)) +p=s===r?q:e.B0(new A.b_(r,B.q)) +o=e.A +n=o.w +n.toString +m=s>r!==(B.ae===n) +l=A.dx(B.q,s,r,!1) +k=A.a([],t.AO) +for(e=e.nn(l),n=e.length,j=0;jr!==s>r){p=sr?a.a:d}else if(e!=null)p=c.ar +if(s!==r&&n!==s>r){o=b.$1(e) +m.e=n?o.a:o.b}}p=null}return p==null?c:p}, +a9D(a,b,c,d,e){var s,r,q,p,o,n,m,l=this +if(a!=null)if(l.f&&d!=null&&e!=null){s=c.a +r=d.a +q=e.a +if(s!==r&&r>q!==sr?a.a:e}else if(d!=null)p=c.ae.a +if(m!==s=p&&m.a.a>p}else s=!0}else s=!1 +if(s)m=null +l=k.hM(c?k.a9D(m,b,n,j,i):k.a9G(m,b,n,j,i)) +if(c)k.e=l +else k.d=l +s=l.a +p=k.a +if(s===p.b)return B.a8 +if(s===p.a)return B.ad +return A.NB(k.glg(),q)}, +aMU(a,b){var s,r,q,p,o,n,m=this +if(b)m.e=null +else m.d=null +s=m.b +r=s.bB(0,null) +r.hn(r) +q=A.ct(r,a) +if(m.glg().ga_(0))return A.NB(m.glg(),q) +p=m.glg() +o=s.A.w +o.toString +n=m.hM(s.fe(A.NA(p,q,o))) +if(b)m.e=n +else m.d=n +s=n.a +p=m.a +if(s===p.b)return B.a8 +if(s===p.a)return B.ad +return A.NB(m.glg(),q)}, +Ua(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this +if(f.f&&d!=null&&e!=null){s=e.a +r=s>=d.a +if(b){q=f.c +p=a.$2(c,q) +o=a.$2(r?new A.b_(s-1,e.b):e,q) +n=r?o.a.a:o.b.a +s=c.a +q=s>n +if(sj&&p.a.a>j)return B.a8 +k=k.a +if(l=s.a){s=o.b.a +if(l>=s)return B.ag +if(lq)return B.a8}}else{i=f.hM(c) +s=r?new A.b_(s-1,e.b):e +o=a.$2(s,f.c) +if(r&&i.a===f.a.a){f.d=i +return B.ad}s=!r +if(s&&i.a===f.a.b){f.d=i +return B.a8}if(r&&i.a===f.a.b){f.e=f.hM(o.b) +f.d=i +return B.a8}if(s&&i.a===f.a.a){f.e=f.hM(o.a) +f.d=i +return B.ad}}}else{s=f.b.kq(c) +q=f.c +h=B.c.R(q,s.a,s.b)===$.VS() +if(!b||h)return null +if(e!=null){p=a.$2(c,q) +s=d==null +g=!0 +if(!(s&&e.a===f.a.a))if(!(J.e(d,e)&&e.a===f.a.a)){s=!s&&d.a>e.a +g=s}s=p.b +q=s.a +l=f.a +k=l.a +j=ql&&p.a.a>l){f.d=new A.b_(l,B.q) +return B.a8}if(g){s=p.a +q=s.a +if(q<=l){f.d=f.hM(s) +return B.ag}if(q>l){f.d=new A.b_(l,B.q) +return B.a8}}else{f.d=f.hM(s) +if(j)return B.ad +if(q>=k)return B.ag}}}return null}, +U9(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this +if(f.f&&d!=null&&e!=null){s=e.a +r=d.a +q=s>=r +if(b){s=f.c +p=a.$2(c,s) +o=a.$2(q?d:new A.b_(r-1,d.b),s) +n=q?o.b.a:o.a.a +s=c.a +r=sn)m=p.a +else m=q?e:d +if(!q!==r)f.d=f.hM(q?o.a:o.b) +s=f.hM(m) +f.e=s +r=f.d.a +l=p.b.a +k=f.a +j=k.b +if(l>j&&p.a.a>j)return B.a8 +k=k.a +if(l=r){s=p.a.a +r=o.a.a +if(s<=r)return B.ag +if(s>r)return B.a8}else{s=o.b.a +if(l>=s)return B.ag +if(le.a +g=s}s=p.b +r=s.a +l=f.a +k=l.a +j=rl&&p.a.a>l){f.e=new A.b_(l,B.q) +return B.a8}if(g){f.e=f.hM(s) +if(j)return B.ad +if(r>=k)return B.ag}else{s=p.a +r=s.a +if(r<=l){f.e=f.hM(s) +return B.ag}if(r>l){f.e=new A.b_(l,B.q) +return B.a8}}}}return null}, +aN_(a6,a7,a8,a9,b0,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=this,a5=null +if(a4.f&&b0!=null&&b1!=null){s=b1.a>=b0.a +r=a4.a3N() +q=a4.b +if(r===q)return a4.Ua(a6,a8,a9,b0,b1) +p=r.bB(0,a5) +p.hn(p) +o=A.ct(p,a7) +n=r.gv(0) +m=new A.I(0,0,0+n.a,0+n.b).p(0,o) +l=r.fe(o) +if(m){k=r.A.e.t3(!1) +j=a6.$2(l,k) +i=a6.$2(a4.qA(r),k) +h=s?i.a.a:i.b.a +q=l.a +n=q>h +if(qe&&j.a.a>e)return B.a8 +if(d=q.a){q=j.a.a +n=i.a.a +if(q<=n)return B.ag +if(q>n)return B.a8}else{q=i.b.a +if(d>=q)return B.ag +if(d=n){a4.d=new A.b_(a4.a.b,B.q) +return B.a8}if(s&&c.a>=n){a4.e=b0 +a4.d=new A.b_(a4.a.b,B.q) +return B.a8}if(f&&c.a<=q){a4.e=b0 +a4.d=new A.b_(a4.a.a,B.q) +return B.ad}}}else{if(a8)return a4.Ua(a6,!0,a9,b0,b1) +if(b1!=null){b=a4.a3O(a7) +if(b==null)return a5 +a=b.b +a0=a.fe(b.a) +a1=a.A.e.t3(!1) +q=a.kq(a0) +if(B.c.R(a1,q.a,q.b)===$.VS())return a5 +q=b0==null +a2=!0 +if(!(q&&b1.a===a4.a.a))if(!(J.e(b0,b1)&&b1.a===a4.a.a)){q=!q&&b0.a>b1.a +a2=q}a3=a6.$2(a0,a1) +q=a4.qA(a).a +n=q+$.Gx() +f=a3.b.a +e=fn&&a3.a.a>n){a4.d=new A.b_(a4.a.b,B.q) +return B.a8}if(a2){if(a3.a.a<=n){a4.d=new A.b_(a4.a.b,B.q) +return B.ag}a4.d=new A.b_(a4.a.b,B.q) +return B.a8}else{if(f>=q){a4.d=new A.b_(a4.a.a,B.q) +return B.ag}if(e){a4.d=new A.b_(a4.a.a,B.q) +return B.ad}}}}return a5}, +aMX(a6,a7,a8,a9,b0,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=this,a5=null +if(a4.f&&b0!=null&&b1!=null){s=b1.a>=b0.a +r=a4.a3N() +q=a4.b +if(r===q)return a4.U9(a6,a8,a9,b0,b1) +p=r.bB(0,a5) +p.hn(p) +o=A.ct(p,a7) +n=r.gv(0) +m=new A.I(0,0,0+n.a,0+n.b).p(0,o) +l=r.fe(o) +if(m){k=r.A.e.t3(!1) +j=a6.$2(l,k) +i=a6.$2(a4.qA(r),k) +h=s?i.b.a:i.a.a +q=l.a +n=qh?j.a:b1 +if(!s!==n)a4.d=b1 +q=a4.hM(g) +a4.e=q +n=a4.d.a +f=a4.qA(r).a +e=f+$.Gx() +d=j.b.a +if(d>e&&j.a.a>e)return B.a8 +if(d=n){q=j.a.a +n=i.a.a +if(q<=n)return B.ag +if(q>n)return B.a8}else{q=i.b.a +if(d>=q)return B.ag +if(d=n){a4.d=b1 +a4.e=new A.b_(a4.a.b,B.q) +return B.a8}if(s&&c.a>=n){a4.e=new A.b_(a4.a.b,B.q) +return B.a8}if(f&&c.a<=q){a4.e=new A.b_(a4.a.a,B.q) +return B.ad}}}else{if(a8)return a4.U9(a6,!0,a9,b0,b1) +if(b0!=null){b=a4.a3O(a7) +if(b==null)return a5 +a=b.b +a0=a.fe(b.a) +a1=a.A.e.t3(!1) +q=a.kq(a0) +if(B.c.R(a1,q.a,q.b)===$.VS())return a5 +q=b1==null +a2=!0 +if(!(q&&b0.a===a4.a.b))if(!(b0.l(0,b1)&&b0.a===a4.a.b)){q=!q&&b0.a>b1.a +a2=q}a3=a6.$2(a0,a1) +q=a4.qA(a).a +n=q+$.Gx() +f=a3.b.a +e=fn&&a3.a.a>n){a4.e=new A.b_(a4.a.b,B.q) +return B.a8}if(a2){if(f>=q){a4.e=new A.b_(a4.a.a,B.q) +return B.ag}if(e){a4.e=new A.b_(a4.a.a,B.q) +return B.ad}}else{if(a3.a.a<=n){a4.e=new A.b_(a4.a.b,B.q) +return B.ag}a4.e=new A.b_(a4.a.b,B.q) +return B.a8}}}return a5}, +aMV(a,b,c,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=f.d,d=f.e +if(a0)f.e=null +else f.d=null +s=f.b +r=s.bB(0,null) +r.hn(r) +q=A.ct(r,a) +if(f.glg().ga_(0))return A.NB(f.glg(),q) +p=f.glg() +o=s.A +n=o.w +n.toString +m=A.NA(p,q,n) +n=s.gv(0) +o=o.w +o.toString +l=A.NA(new A.I(0,0,0+n.a,0+n.b),q,o) +k=s.fe(m) +j=s.fe(l) +if(f.aDS())if(a0){s=s.gv(0) +i=f.aMX(c,a,new A.I(0,0,0+s.a,0+s.b).p(0,q),j,e,d)}else{s=s.gv(0) +i=f.aN_(c,a,new A.I(0,0,0+s.a,0+s.b).p(0,q),j,e,d)}else if(a0){s=s.gv(0) +i=f.U9(c,new A.I(0,0,0+s.a,0+s.b).p(0,q),j,e,d)}else{s=s.gv(0) +i=f.Ua(c,new A.I(0,0,0+s.a,0+s.b).p(0,q),j,e,d)}if(i!=null)return i +h=f.asx(q)?b.$1(k):null +if(h!=null){s=h.b.a +p=f.a +o=p.a +if(!(s=p&&h.a.a>p}else s=!0}else s=!1 +if(s)h=null +g=f.hM(a0?f.a9D(h,b,k,e,d):f.a9G(h,b,k,e,d)) +if(a0)f.e=g +else f.d=g +s=g.a +p=f.a +if(s===p.b)return B.a8 +if(s===p.a)return B.ad +return A.NB(f.glg(),q)}, +a1J(a,b){var s=b.a,r=a.b,q=a.a +return Math.abs(s-r.a)=p&&a.a.a>p)return B.a8}s.d=r +s.e=a.a +s.f=!0 +return B.ag}, +PC(a,b){var s=A.bu("start"),r=A.bu("end"),q=b.a,p=a.b +if(q>p){q=new A.b_(q,B.q) +r.sfI(q) +s.sfI(q)}else{s.sfI(new A.b_(a.a,B.q)) +r.sfI(new A.b_(p,B.aW))}q=s.b2() +return new A.aiQ(r.b2(),q)}, +aBM(a){var s=this,r=s.b,q=r.fe(r.he(a)) +if(s.aHD(q)&&!J.e(s.d,s.e))return B.ag +return s.aBL(s.a42(q))}, +a42(a){return this.PC(this.b.kq(a),a)}, +qA(a){var s=this.b,r=s.bB(0,a) +s=s.gv(0) +return a.fe(A.ct(r,new A.I(0,0,0+s.a,0+s.b).gabb()))}, +ayP(a,b){var s,r=new A.uf(b),q=a.a,p=b.length,o=r.ij(q===p||a.b===B.aW?q-1:q) +if(o==null)o=0 +s=r.ik(q) +return this.PC(new A.cW(o,s==null?p:s),a)}, +ayg(a){var s,r,q=this.c,p=new A.uf(q),o=a.a,n=q.length,m=p.ij(o===n||a.b===B.aW?o-1:o) +if(m==null)m=0 +s=p.ik(o) +n=s==null?n:s +q=this.a +r=q.a +if(mo)m=o}s=q.b +if(n>s)n=s +else if(ns){i=J.bqK(q) +break}}if(b&&i===l.length-1)p=new A.b_(n.a.b,B.aW) +else if(!b&&i===0)p=new A.b_(n.a.a,B.q) +else p=n.hM(m.fe(new A.z(c,l[b?i+1:i-1].gmU()))) +m=p.a +j=n.a +if(m===j.a)o=B.ad +else o=m===j.b?B.a8:B.ag +return new A.aO(p,o,t.UH)}, +aHD(a){var s,r,q,p,o=this +if(o.d==null||o.e==null)return!1 +s=A.bu("currentStart") +r=A.bu("currentEnd") +q=o.d +q.toString +p=o.e +p.toString +if(A.boC(q,p)>0){s.b=q +r.b=p}else{s.b=p +r.b=q}return A.boC(s.b2(),a)>=0&&A.boC(r.b2(),a)<=0}, +bB(a,b){return this.b.bB(0,b)}, +oh(a,b){if(this.b.y==null)return}, +gpk(){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.nn(A.dx(B.q,q,r.b,!1)) +r=t.AO +if(p.length!==0){l.y=A.a([],r) +for(s=p.length,o=0;o=q)return r.a +s=this.Pi(a) +r=this.E +q=r.a +if(!(q>=1/0))return A.M(s,q,r.b) +return s}, +bQ(a){var s,r=this.E,q=r.b +if(q<1/0&&r.a>=q)return r.a +s=this.Pg(a) +r=this.E +q=r.a +if(!(q>=1/0))return A.M(s,q,r.b) +return s}, +bT(a){var s,r=this.E,q=r.d +if(q<1/0&&r.c>=q)return r.c +s=this.Ph(a) +r=this.E +q=r.c +if(!(q>=1/0))return A.M(s,q,r.d) +return s}, +bP(a){var s,r=this.E,q=r.d +if(q<1/0&&r.c>=q)return r.c +s=this.Pf(a) +r=this.E +q=r.c +if(!(q>=1/0))return A.M(s,q,r.d) +return s}, +fH(a,b){var s=this.H$ +return s==null?null:s.ii(this.E.ri(a),b)}, +ck(){var s=this,r=t.k.a(A.G.prototype.gah.call(s)),q=s.H$,p=s.E +if(q!=null){q.df(p.ri(r),!0) +s.id=s.H$.gv(0)}else s.id=p.ri(r).bD(B.V)}, +ds(a){var s=this.H$ +s=s==null?null:s.aM(B.af,this.E.ri(a),s.gdD()) +return s==null?this.E.ri(a).bD(B.V):s}} +A.a6S.prototype={ +saX9(a,b){if(this.E===b)return +this.E=b +this.ae()}, +saX8(a,b){if(this.af===b)return +this.af=b +this.ae()}, +a5v(a){var s,r,q=a.a,p=a.b +p=p<1/0?p:A.M(this.E,q,p) +s=a.c +r=a.d +return new A.au(q,p,s,r<1/0?r:A.M(this.af,s,r))}, +AE(a,b){var s=this.H$ +if(s!=null)return a.bD(b.$2(s,this.a5v(a))) +return this.a5v(a).bD(B.V)}, +ds(a){return this.AE(a,A.jb())}, +ck(){this.id=this.AE(t.k.a(A.G.prototype.gah.call(this)),A.rR())}} +A.MS.prototype={ +salI(a){return}, +salH(a){return}, +bU(a){return this.aM(B.aM,a,this.gcb())}, +bQ(a){var s=this.H$ +if(s==null)return 0 +return A.aOq(s.aM(B.aM,a,s.gcb()),this.E)}, +bT(a){var s,r=this +if(r.H$==null)return 0 +if(!isFinite(a))a=r.aM(B.aM,1/0,r.gcb()) +s=r.H$ +return A.aOq(s.aM(B.bi,a,s.gcE()),r.af)}, +bP(a){var s,r=this +if(r.H$==null)return 0 +if(!isFinite(a))a=r.aM(B.aM,1/0,r.gcb()) +s=r.H$ +return A.aOq(s.aM(B.bC,a,s.gcM()),r.af)}, +a1y(a,b){var s=b.a>=b.b?null:A.aOq(a.aM(B.aM,b.d,a.gcb()),this.E) +return b.NE(null,s)}, +AE(a,b){var s=this.H$ +return s==null?new A.R(A.M(0,a.a,a.b),A.M(0,a.c,a.d)):b.$2(s,this.a1y(s,a))}, +ds(a){return this.AE(a,A.jb())}, +fH(a,b){var s=this.H$ +return s==null?null:s.ii(this.a1y(s,a),b)}, +ck(){this.id=this.AE(t.k.a(A.G.prototype.gah.call(this)),A.rR())}} +A.a6U.prototype={ +gmT(){return this.H$!=null&&this.E>0}, +gi8(){return this.H$!=null&&this.E>0}, +sfL(a,b){var s,r,q,p,o=this +if(o.af===b)return +s=o.H$!=null +r=s&&o.E>0 +q=o.E +o.af=b +p=B.d.aa(A.M(b,0,1)*255) +o.E=p +if(r!==(s&&p>0))o.o9() +o.af_() +s=o.E +if(q!==0!==(s!==0))o.bM()}, +sJD(a){return}, +pX(a){return this.E>0}, +zw(a){var s=a==null?A.bn8():a +s.sUC(0,this.E) +return s}, +aT(a,b){if(this.H$==null||this.E===0)return +this.jN(a,b)}, +iL(a){var s,r=this.H$ +if(r!=null){s=this.E +s=s!==0}else s=!1 +if(s){r.toString +a.$1(r)}}} +A.MF.prototype={ +gi8(){if(this.H$!=null){var s=this.W7$ +s.toString}else s=!1 +return s}, +zw(a){var s=a==null?A.bn8():a +s.sUC(0,this.yy$) +return s}, +sfL(a,b){var s=this,r=s.yz$ +if(r===b)return +if(s.y!=null&&r!=null)r.K(0,s.gJc()) +s.yz$=b +if(s.y!=null)b.a4(0,s.gJc()) +s.U4()}, +sJD(a){if(!1===this.W8$)return +this.W8$=!1 +this.bM()}, +U4(){var s,r=this,q=r.yy$,p=r.yz$ +p=r.yy$=B.d.aa(A.M(p.gk(p),0,1)*255) +if(q!==p){s=r.W7$ +p=p>0 +r.W7$=p +if(r.H$!=null&&s!==p)r.o9() +r.af_() +if(q===0||r.yy$===0)r.bM()}}, +pX(a){var s=this.yz$ +return s.gk(s)>0}, +iL(a){var s,r=this.H$ +if(r!=null)if(this.yy$===0){s=this.W8$ +s.toString}else s=!0 +else s=!1 +if(s){r.toString +a.$1(r)}}} +A.a6F.prototype={} +A.a6G.prototype={ +sLg(a,b){if(this.E.l(0,b))return +this.E=b +this.aU()}, +sxL(a){if(this.af===a)return +this.af=a +this.aU()}, +gmT(){return this.H$!=null}, +aT(a,b){var s,r,q,p=this +if(p.H$!=null){s=t.m2 +if(s.a(A.G.prototype.gb0.call(p,0))==null)p.ch.sb0(0,A.br7(null)) +s.a(A.G.prototype.gb0.call(p,0)).sLg(0,p.E) +r=s.a(A.G.prototype.gb0.call(p,0)) +q=p.af +if(q!==r.k4){r.k4=q +r.i9()}s=s.a(A.G.prototype.gb0.call(p,0)) +s.toString +a.q_(s,A.hK.prototype.ghV.call(p),b)}else p.ch.sb0(0,null)}} +A.I8.prototype={ +a4(a,b){var s=this.a +return s==null?null:s.a.a4(0,b)}, +K(a,b){var s=this.a +return s==null?null:s.a.K(0,b)}, +aiI(a){return new A.I(0,0,0+a.a,0+a.b)}, +j(a){return"CustomClipper"}} +A.uK.prototype={ +O9(a){return this.b.fE(new A.I(0,0,0+a.a,0+a.b),this.c)}, +OP(a){if(A.K(a)!==B.av9)return!0 +t.jH.a(a) +return!a.b.l(0,this.b)||a.c!=this.c}} +A.FD.prototype={ +sxT(a){var s,r=this,q=r.E +if(q==a)return +r.E=a +s=a==null +if(s||q==null||A.K(a)!==A.K(q)||a.OP(q))r.xa() +if(r.y!=null){if(q!=null)q.K(0,r.gI2()) +if(!s)a.a4(0,r.gI2())}}, +aI(a){var s +this.wz(a) +s=this.E +if(s!=null)s.a4(0,this.gI2())}, +aB(a){var s=this.E +if(s!=null)s.K(0,this.gI2()) +this.qq(0)}, +xa(){this.af=null +this.aU() +this.bM()}, +smY(a){if(a!==this.aZ){this.aZ=a +this.aU()}}, +ck(){var s=this,r=s.id!=null?s.gv(0):null +s.qo() +if(!J.e(r,s.gv(0)))s.af=null}, +nG(){var s,r=this +if(r.af==null){s=r.E +s=s==null?null:s.O9(r.gv(0)) +r.af=s==null?r.gAI():s}}, +r8(a){var s,r=this +switch(r.aZ.a){case 0:return null +case 1:case 2:case 3:s=r.E +s=s==null?null:s.aiI(r.gv(0)) +if(s==null){s=r.gv(0) +s=new A.I(0,0,0+s.a,0+s.b)}return s}}, +m(){this.d4=null +this.h0()}} +A.a6K.prototype={ +gAI(){var s=this.gv(0) +return new A.I(0,0,0+s.a,0+s.b)}, +dT(a,b){var s=this +if(s.E!=null){s.nG() +if(!s.af.p(0,b))return!1}return s.oJ(a,b)}, +aT(a,b){var s,r,q=this,p=q.H$ +if(p!=null){s=q.ch +if(q.aZ!==B.h){q.nG() +p=q.cx +p===$&&A.b() +r=q.af +r.toString +s.sb0(0,a.og(p,b,r,A.hK.prototype.ghV.call(q),q.aZ,t.VX.a(s.a)))}else{a.fa(p,b) +s.sb0(0,null)}}else q.ch.sb0(0,null)}} +A.a6J.prototype={ +sUT(a,b){if(this.dH.l(0,b))return +this.dH=b +this.xa()}, +scr(a){if(this.hD==a)return +this.hD=a +this.xa()}, +gAI(){var s=this.dH,r=this.gv(0) +return s.e9(new A.I(0,0,0+r.a,0+r.b))}, +dT(a,b){var s=this +if(s.E!=null){s.nG() +if(!s.af.p(0,b))return!1}return s.oJ(a,b)}, +aT(a,b){var s,r,q=this,p=q.H$ +if(p!=null){s=q.ch +if(q.aZ!==B.h){q.nG() +p=q.cx +p===$&&A.b() +r=q.af +s.sb0(0,a.afZ(p,b,new A.I(r.a,r.b,r.c,r.d),r,A.hK.prototype.ghV.call(q),q.aZ,t.eG.a(s.a)))}else{a.fa(p,b) +s.sb0(0,null)}}else q.ch.sb0(0,null)}} +A.a6I.prototype={ +gAI(){var s=$.ap().cR(),r=this.gv(0) +s.jT(new A.I(0,0,0+r.a,0+r.b)) +return s}, +dT(a,b){var s=this +if(s.E!=null){s.nG() +if(!s.af.p(0,b))return!1}return s.oJ(a,b)}, +aT(a,b){var s,r,q,p=this,o=p.H$ +if(o!=null){s=p.ch +if(p.aZ!==B.h){p.nG() +o=p.cx +o===$&&A.b() +r=p.gv(0) +q=p.af +q.toString +s.sb0(0,a.XN(o,b,new A.I(0,0,0+r.a,0+r.b),q,A.hK.prototype.ghV.call(p),p.aZ,t.JG.a(s.a)))}else{a.fa(o,b) +s.sb0(0,null)}}else p.ch.sb0(0,null)}} +A.SX.prototype={ +seK(a,b){if(this.dH===b)return +this.dH=b +this.aU()}, +scW(a,b){if(this.hD.l(0,b))return +this.hD=b +this.aU()}, +saG(a,b){if(this.fo.l(0,b))return +this.fo=b +this.aU()}, +hP(a){this.jM(a) +a.seK(0,this.dH)}} +A.a6V.prototype={ +scC(a,b){if(this.W5===b)return +this.W5=b +this.xa()}, +sUT(a,b){if(J.e(this.W6,b))return +this.W6=b +this.xa()}, +gAI(){var s,r,q=this.gv(0),p=0+q.a +q=0+q.b +switch(this.W5.a){case 0:s=this.W6 +if(s==null)s=B.aH +q=s.e9(new A.I(0,0,p,q)) +break +case 1:s=p/2 +r=q/2 +r=new A.l6(0,0,p,q,s,r,s,r,s,r,s,r,s===r) +q=r +break +default:q=null}return q}, +dT(a,b){var s=this +if(s.E!=null){s.nG() +if(!s.af.p(0,b))return!1}return s.oJ(a,b)}, +aT(a,b){var s,r,q,p,o,n,m,l,k,j=this +if(j.H$==null){j.ch.sb0(0,null) +return}j.nG() +s=j.af.ep(b) +r=$.ap() +q=r.cR() +q.hk(s) +p=a.gca(0) +o=j.dH +if(o!==0){n=j.hD +m=j.fo +p.yp(q,n,o,(m.gk(m)>>>24&255)!==255)}l=j.aZ===B.oD +if(!l){r=r.br() +r.saG(0,j.fo) +p.dk(s,r)}r=j.cx +r===$&&A.b() +o=j.gv(0) +n=j.af +n.toString +m=j.ch +k=t.eG.a(m.a) +m.sb0(0,a.afZ(r,b,new A.I(0,0,0+o.a,0+o.b),n,new A.aOD(j,l),j.aZ,k))}} +A.aOD.prototype={ +$2(a,b){var s,r +if(this.b){s=a.gca(0) +r=$.ap().br() +r.saG(0,this.a.fo) +s.Dd(r)}this.a.jN(a,b)}, +$S:18} +A.a6W.prototype={ +gAI(){var s=$.ap().cR(),r=this.gv(0) +s.jT(new A.I(0,0,0+r.a,0+r.b)) +return s}, +dT(a,b){var s=this +if(s.E!=null){s.nG() +if(!s.af.p(0,b))return!1}return s.oJ(a,b)}, +aT(a,b){var s,r,q,p,o,n,m,l,k=this +if(k.H$==null){k.ch.sb0(0,null) +return}k.nG() +s=k.af.ep(b) +r=a.gca(0) +q=k.dH +if(q!==0){p=k.hD +o=k.fo +r.yp(s,p,q,(o.gk(o)>>>24&255)!==255)}n=k.aZ===B.oD +if(!n){q=$.ap().br() +q.saG(0,k.fo) +r.eJ(s,q)}q=k.cx +q===$&&A.b() +p=k.gv(0) +o=k.af +o.toString +m=k.ch +l=t.JG.a(m.a) +m.sb0(0,a.XN(q,b,new A.I(0,0,0+p.a,0+p.b),o,new A.aOE(k,n),k.aZ,l))}} +A.aOE.prototype={ +$2(a,b){var s,r +if(this.b){s=a.gca(0) +r=$.ap().br() +r.saG(0,this.a.fo) +s.Dd(r)}this.a.jN(a,b)}, +$S:18} +A.ZV.prototype={ +D(){return"DecorationPosition."+this.b}} +A.a6L.prototype={ +sbw(a){var s,r=this +if(a.l(0,r.af))return +s=r.E +if(s!=null)s.m() +r.E=null +r.af=a +r.aU()}, +scl(a,b){if(b===this.aZ)return +this.aZ=b +this.aU()}, +sr2(a){if(a.l(0,this.bH))return +this.bH=a +this.aU()}, +aB(a){var s=this,r=s.E +if(r!=null)r.m() +s.E=null +s.qq(0) +s.aU()}, +m(){var s=this.E +if(s!=null)s.m() +this.h0()}, +k9(a){return this.af.WJ(this.gv(0),a,this.bH.d)}, +aT(a,b){var s,r,q=this +if(q.E==null)q.E=q.af.y4(q.gf8()) +s=q.bH.Vj(q.gv(0)) +if(q.aZ===B.h5){r=q.E +r.toString +r.jB(a.gca(0),b,s) +if(q.af.gLQ())a.ZE()}q.jN(a,b) +if(q.aZ===B.wn){r=q.E +r.toString +r.jB(a.gca(0),b,s) +if(q.af.gLQ())a.ZE()}}} +A.a76.prototype={ +sEg(a,b){return}, +siu(a){var s=this +if(J.e(s.af,a))return +s.af=a +s.aU() +s.bM()}, +scr(a){var s=this +if(s.aZ==a)return +s.aZ=a +s.aU() +s.bM()}, +gmT(){return this.H$!=null&&this.cm!=null}, +scZ(a,b){var s,r=this +if(J.e(r.d4,b))return +s=new A.bW(new Float64Array(16)) +s.c5(b) +r.d4=s +r.aU() +r.bM()}, +srv(a){var s,r,q=this,p=q.cm +if(p==a)return +s=q.H$!=null +r=s&&p!=null +q.cm=a +if(r!==(s&&a!=null))q.o9() +q.aU()}, +gQU(){var s,r,q=this,p=q.af,o=p==null?null:p.Z(q.aZ) +if(o==null)return q.d4 +s=new A.bW(new Float64Array(16)) +s.eo() +r=o.JC(q.gv(0)) +s.bs(0,r.a,r.b) +p=q.d4 +p.toString +s.e7(0,p) +s.bs(0,-r.a,-r.b) +return s}, +dT(a,b){return this.dU(a,b)}, +dU(a,b){var s=this.bH?this.gQU():null +return a.Ch(new A.aOV(this),b,s)}, +aT(a,b){var s,r,q,p,o,n,m,l,k,j=this +if(j.H$!=null){s=j.gQU() +s.toString +if(j.cm==null){r=A.a3T(s) +if(r==null){q=s.acu() +if(q===0||!isFinite(q)){j.ch.sb0(0,null) +return}p=j.cx +p===$&&A.b() +o=A.hK.prototype.ghV.call(j) +n=j.ch +m=n.a +n.sb0(0,a.rV(p,b,s,o,m instanceof A.r7?m:null))}else{j.jN(a,b.ab(0,r)) +j.ch.sb0(0,null)}}else{p=b.a +o=b.b +l=A.u1(p,o,0) +l.e7(0,s) +l.bs(0,-p,-o) +o=j.cm +o.toString +k=A.btz(l.a,o) +s=j.ch +p=s.a +if(p instanceof A.JX){if(!k.l(0,p.bG)){p.bG=k +p.i9()}}else s.sb0(0,new A.JX(k,B.j,A.w(t.S,t.M),A.aK())) +s=s.a +s.toString +a.q_(s,A.hK.prototype.ghV.call(j),b)}}}, +er(a,b){var s=this.gQU() +s.toString +b.e7(0,s)}} +A.aOV.prototype={ +$2(a,b){return this.a.Al(a,b)}, +$S:24} +A.MO.prototype={ +a3b(a){switch(a.a){case 6:return!0 +case 1:case 2:case 0:case 4:case 3:case 5:return!1}}, +syL(a){var s=this,r=s.af +if(r===a)return +s.af=a +if(s.a3b(r)||s.a3b(a))s.ae() +else{s.cm=s.d4=null +s.aU()}}, +siu(a){var s=this +if(s.aZ.l(0,a))return +s.aZ=a +s.E=s.cm=s.d4=null +s.aU()}, +scr(a){var s=this +if(s.bH==a)return +s.bH=a +s.E=s.cm=s.d4=null +s.aU()}, +ds(a){var s=this.H$ +if(s!=null){s=s.aM(B.af,B.kB,s.gdD()) +switch(this.af.a){case 6:return a.bD(new A.au(0,a.b,0,a.d).CB(s)) +case 1:case 2:case 0:case 4:case 3:case 5:return a.CB(s)}}else return new A.R(A.M(0,a.a,a.b),A.M(0,a.c,a.d))}, +ck(){var s,r,q=this,p=q.H$ +if(p!=null){p.df(B.kB,!0) +switch(q.af.a){case 6:p=t.k +s=p.a(A.G.prototype.gah.call(q)) +r=new A.au(0,s.b,0,s.d).CB(q.H$.gv(0)) +q.id=p.a(A.G.prototype.gah.call(q)).bD(r) +break +case 1:case 2:case 0:case 4:case 3:case 5:q.id=t.k.a(A.G.prototype.gah.call(q)).CB(q.H$.gv(0)) +break}q.cm=q.d4=null}else{p=t.k.a(A.G.prototype.gah.call(q)) +q.id=new A.R(A.M(0,p.a,p.b),A.M(0,p.c,p.d))}}, +U5(){var s,r,q,p,o,n,m,l,k,j,i=this +if(i.cm!=null)return +s=i.H$ +if(s==null){i.d4=!1 +s=new A.bW(new Float64Array(16)) +s.eo() +i.cm=s}else{r=i.E +if(r==null)r=i.E=i.aZ +q=s.gv(0) +p=A.bzn(i.af,q,i.gv(0)) +s=p.b +o=p.a +n=q.a +m=q.b +l=r.WM(o,new A.I(0,0,0+n,0+m)) +k=i.gv(0) +j=r.WM(s,new A.I(0,0,0+k.a,0+k.b)) +k=l.a +i.d4=l.c-k")) +s.aZ.sb0(0,p) +a.q_(p,A.hK.prototype.ghV.call(s),b)}, +m(){this.aZ.sb0(0,null) +this.h0()}, +gmT(){return!0}} +A.aj3.prototype={ +aI(a){var s=this +s.wz(a) +s.yz$.a4(0,s.gJc()) +s.U4()}, +aB(a){this.yz$.K(0,this.gJc()) +this.qq(0)}, +aT(a,b){if(this.yy$===0)return +this.jN(a,b)}} +A.SY.prototype={ +aI(a){var s +this.eD(a) +s=this.H$ +if(s!=null)s.aI(a)}, +aB(a){var s +this.eE(0) +s=this.H$ +if(s!=null)s.aB(0)}} +A.SZ.prototype={ +iw(a){var s=this.H$ +s=s==null?null:s.my(a) +return s==null?this.Gq(a):s}} +A.MY.prototype={ +sb_0(a){if(this.A===a)return +this.A=a +this.ae()}, +bU(a){var s=this.H$ +if(s==null)return 0 +return(this.A&1)===1?s.aM(B.bi,a,s.gcE()):s.aM(B.bh,a,s.gcF())}, +bQ(a){var s=this.H$ +if(s==null)return 0 +return(this.A&1)===1?s.aM(B.bC,a,s.gcM()):s.aM(B.aM,a,s.gcb())}, +bT(a){var s=this.H$ +if(s==null)return 0 +return(this.A&1)===1?s.aM(B.bh,a,s.gcF()):s.aM(B.bi,a,s.gcE())}, +bP(a){var s=this.H$ +if(s==null)return 0 +return(this.A&1)===1?s.aM(B.aM,a,s.gcb()):s.aM(B.bC,a,s.gcM())}, +ds(a){var s,r=this.H$ +if(r==null)return new A.R(A.M(0,a.a,a.b),A.M(0,a.c,a.d)) +s=(this.A&1)===1?a.gLm():a +r=r.aM(B.af,s,r.gdD()) +return(this.A&1)===1?new A.R(r.b,r.a):r}, +ck(){var s,r,q=this +q.X=null +s=q.H$ +if(s!=null){r=t.k +s.df((q.A&1)===1?r.a(A.G.prototype.gah.call(q)).gLm():r.a(A.G.prototype.gah.call(q)),!0) +s=q.A +r=q.H$ +q.id=(s&1)===1?new A.R(r.gv(0).b,q.H$.gv(0).a):r.gv(0) +s=new A.bW(new Float64Array(16)) +s.eo() +s.bs(0,q.gv(0).a/2,q.gv(0).b/2) +s.vJ(1.5707963267948966*B.e.an(q.A,4)) +s.bs(0,-q.H$.gv(0).a/2,-q.H$.gv(0).b/2) +q.X=s}else{s=t.k.a(A.G.prototype.gah.call(q)) +q.id=new A.R(A.M(0,s.a,s.b),A.M(0,s.c,s.d))}}, +dU(a,b){var s=this +if(s.H$==null||s.X==null)return!1 +return a.Ch(new A.aOF(s),b,s.X)}, +aGF(a,b){var s=this.H$ +s.toString +a.fa(s,b)}, +aT(a,b){var s,r,q=this,p=q.a9 +if(q.H$!=null){s=q.cx +s===$&&A.b() +r=q.X +r.toString +p.sb0(0,a.rV(s,b,r,q.gaGE(),p.a))}else p.sb0(0,null)}, +m(){this.a9.sb0(0,null) +this.h0()}, +er(a,b){var s=this.X +if(s!=null)b.e7(0,s) +this.a_M(a,b)}} +A.aOF.prototype={ +$2(a,b){return this.a.H$.dT(a,b)}, +$S:24} +A.ajj.prototype={ +aI(a){var s +this.eD(a) +s=this.H$ +if(s!=null)s.aI(a)}, +aB(a){var s +this.eE(0) +s=this.H$ +if(s!=null)s.aB(0)}} +A.uH.prototype={ +D(){return"SelectionResult."+this.b}} +A.hL.prototype={$iaA:1} +A.a8_.prototype={ +svE(a){var s=this,r=s.yB$ +if(a==r)return +if(a==null)s.K(0,s.ga7H()) +else if(r==null)s.a4(0,s.ga7H()) +s.a7G() +s.yB$=a +s.a7I()}, +a7I(){var s=this +if(s.yB$==null){s.v0$=!1 +return}if(s.v0$&&!s.gk(0).e){s.yB$.C(0,s) +s.v0$=!1}else if(!s.v0$&&s.gk(0).e){s.yB$.q(0,s) +s.v0$=!0}}, +a7G(){var s=this +if(s.v0$){s.yB$.C(0,s) +s.v0$=!1}}} +A.yx.prototype={ +D(){return"SelectionEventType."+this.b}} +A.yO.prototype={ +D(){return"TextGranularity."+this.b}} +A.aQJ.prototype={} +A.Hz.prototype={} +A.Ny.prototype={} +A.Do.prototype={ +D(){return"SelectionExtendDirection."+this.b}} +A.Nz.prototype={ +D(){return"SelectionStatus."+this.b}} +A.uG.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.uG&&J.e(b.a,s.a)&&J.e(b.b,s.b)&&b.d===s.d&&b.c===s.c&&b.e===s.e}, +gB(a){var s=this +return A.a4(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.yy.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.yy&&b.a.l(0,s.a)&&b.b===s.b&&b.c===s.c}, +gB(a){return A.a4(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.OX.prototype={ +D(){return"TextSelectionHandleType."+this.b}} +A.ak8.prototype={} +A.yd.prototype={ +bU(a){var s=this.H$ +s=s==null?null:s.aM(B.bh,a,s.gcF()) +return s==null?0:s}, +bQ(a){var s=this.H$ +s=s==null?null:s.aM(B.aM,a,s.gcb()) +return s==null?0:s}, +bT(a){var s=this.H$ +s=s==null?null:s.aM(B.bi,a,s.gcE()) +return s==null?0:s}, +bP(a){var s=this.H$ +s=s==null?null:s.aM(B.bC,a,s.gcM()) +return s==null?0:s}, +iw(a){var s,r,q=this.H$ +if(q!=null){s=q.my(a) +r=q.b +r.toString +t.r.a(r) +if(s!=null)s+=r.a.b}else s=this.Gq(a) +return s}, +aT(a,b){var s,r=this.H$ +if(r!=null){s=r.b +s.toString +a.fa(r,t.r.a(s).a.ab(0,b))}}, +dU(a,b){var s,r=this.H$ +if(r!=null){s=r.b +s.toString +return a.m0(new A.aOG(r),t.r.a(s).a,b)}return!1}} +A.aOG.prototype={ +$2(a,b){return this.a.dT(a,b)}, +$S:24} +A.MV.prototype={ +gu9(){var s=this,r=s.E +return r==null?s.E=s.af.Z(s.aZ):r}, +sdW(a,b){var s=this +if(s.af.l(0,b))return +s.af=b +s.E=null +s.ae()}, +scr(a){var s=this +if(s.aZ==a)return +s.aZ=a +s.E=null +s.ae()}, +bU(a){var s=this.gu9(),r=this.H$ +if(r!=null)return r.aM(B.bh,Math.max(0,a-(s.gc9(0)+s.gci(0))),r.gcF())+s.gde() +return s.gde()}, +bQ(a){var s=this.gu9(),r=this.H$ +if(r!=null)return r.aM(B.aM,Math.max(0,a-(s.gc9(0)+s.gci(0))),r.gcb())+s.gde() +return s.gde()}, +bT(a){var s=this.gu9(),r=this.H$ +if(r!=null)return r.aM(B.bi,Math.max(0,a-s.gde()),r.gcE())+(s.gc9(0)+s.gci(0)) +return s.gc9(0)+s.gci(0)}, +bP(a){var s=this.gu9(),r=this.H$ +if(r!=null)return r.aM(B.bC,Math.max(0,a-s.gde()),r.gcM())+(s.gc9(0)+s.gci(0)) +return s.gc9(0)+s.gci(0)}, +ds(a){var s,r,q=this.gu9() +if(this.H$==null)return a.bD(new A.R(q.gde(),q.gc9(0)+q.gci(0))) +s=a.uC(q) +r=this.H$ +r=r.aM(B.af,s,r.gdD()) +return a.bD(new A.R(q.gde()+r.a,q.gc9(0)+q.gci(0)+r.b))}, +fH(a,b){var s,r=this.H$ +if(r==null)return null +s=this.gu9() +return A.WU(r.ii(a.uC(s),b),s.b)}, +ck(){var s,r,q=this,p=t.k.a(A.G.prototype.gah.call(q)),o=q.gu9() +if(q.H$==null){q.id=p.bD(new A.R(o.gde(),o.gc9(0)+o.gci(0))) +return}s=p.uC(o) +q.H$.df(s,!0) +r=q.H$.b +r.toString +t.r.a(r).a=new A.z(o.a,o.b) +q.id=p.bD(new A.R(o.gde()+q.H$.gv(0).a,o.gc9(0)+o.gci(0)+q.H$.gv(0).b))}} +A.a6E.prototype={ +gagH(){var s=this,r=s.E +return r==null?s.E=s.af.Z(s.aZ):r}, +siu(a){var s=this +if(s.af.l(0,a))return +s.af=a +s.E=null +s.ae()}, +scr(a){var s=this +if(s.aZ==a)return +s.aZ=a +s.E=null +s.ae()}, +UA(){var s=this,r=s.H$.b +r.toString +t.r.a(r).a=s.gagH().ph(t.c.a(s.gv(0).ai(0,s.H$.gv(0))))}} +A.MW.prototype={ +sb1a(a){if(this.dt==a)return +this.dt=a +this.ae()}, +saUZ(a){if(this.ez==a)return +this.ez=a +this.ae()}, +bU(a){var s=this.anu(a),r=this.dt +return s*(r==null?1:r)}, +bQ(a){var s=this.ans(a),r=this.dt +return s*(r==null?1:r)}, +bT(a){var s=this.ant(a),r=this.ez +return s*(r==null?1:r)}, +bP(a){var s=this.anr(a),r=this.ez +return s*(r==null?1:r)}, +ds(a){var s,r,q=this,p=q.dt!=null||a.b===1/0,o=q.ez!=null||a.d===1/0,n=q.H$ +if(n!=null){n=n.aM(B.af,new A.au(0,a.b,0,a.d),n.gdD()) +if(p){s=n.a +r=q.dt +s*=r==null?1:r}else s=1/0 +if(o){n=n.b +r=q.ez +n*=r==null?1:r}else n=1/0 +return a.bD(new A.R(s,n))}n=p?0:1/0 +return a.bD(new A.R(n,o?0:1/0))}, +ck(){var s,r,q=this,p=t.k.a(A.G.prototype.gah.call(q)),o=q.dt!=null||p.b===1/0,n=q.ez!=null||p.d===1/0,m=q.H$ +if(m!=null){m.df(new A.au(0,p.b,0,p.d),!0) +if(o){m=q.H$.gv(0) +s=q.dt +if(s==null)s=1 +s=m.a*s +m=s}else m=1/0 +if(n){s=q.H$.gv(0) +r=q.ez +if(r==null)r=1 +r=s.b*r +s=r}else s=1/0 +q.id=p.bD(new A.R(m,s)) +q.UA()}else{m=o?0:1/0 +q.id=p.bD(new A.R(m,n?0:1/0))}}} +A.aRI.prototype={ +qf(a){return new A.R(A.M(1/0,a.a,a.b),A.M(1/0,a.c,a.d))}, +q9(a){return a}, +qe(a,b){return B.j}} +A.MM.prototype={ +sVx(a){var s=this.E +if(s===a)return +if(A.K(a)!==A.K(s)||a.oF(s))this.ae() +this.E=a}, +aI(a){this.a01(a)}, +aB(a){this.a02(0)}, +bU(a){var s=A.jg(a,1/0),r=s.bD(this.E.qf(s)).a +if(isFinite(r))return r +return 0}, +bQ(a){var s=A.jg(a,1/0),r=s.bD(this.E.qf(s)).a +if(isFinite(r))return r +return 0}, +bT(a){var s=A.jg(1/0,a),r=s.bD(this.E.qf(s)).b +if(isFinite(r))return r +return 0}, +bP(a){var s=A.jg(1/0,a),r=s.bD(this.E.qf(s)).b +if(isFinite(r))return r +return 0}, +ds(a){return a.bD(this.E.qf(a))}, +fH(a,b){var s,r,q,p,o,n,m=this.H$ +if(m==null)return null +s=this.E.q9(a) +r=m.ii(s,b) +if(r==null)return null +q=this.E +p=a.bD(q.qf(a)) +o=s.a +n=s.b +return r+q.qe(p,o>=n&&s.c>=s.d?new A.R(A.M(0,o,n),A.M(0,s.c,s.d)):m.aM(B.af,s,m.gdD())).b}, +ck(){var s,r,q,p,o,n=this,m=t.k,l=m.a(A.G.prototype.gah.call(n)) +n.id=l.bD(n.E.qf(l)) +if(n.H$!=null){s=n.E.q9(m.a(A.G.prototype.gah.call(n))) +m=n.H$ +m.toString +l=s.a +r=s.b +q=l>=r +m.df(s,!(q&&s.c>=s.d)) +m=n.H$.b +m.toString +t.r.a(m) +p=n.E +o=n.gv(0) +m.a=p.qe(o,q&&s.c>=s.d?new A.R(A.M(0,l,r),A.M(0,s.c,s.d)):n.H$.gv(0))}}} +A.T0.prototype={ +aI(a){var s +this.eD(a) +s=this.H$ +if(s!=null)s.aI(a)}, +aB(a){var s +this.eE(0) +s=this.H$ +if(s!=null)s.aB(0)}} +A.a8v.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(!(b instanceof A.a8v))return!1 +return b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d}, +j(a){var s=this +return"scrollOffset: "+A.c(s.a)+" precedingScrollExtent: "+A.c(s.b)+" viewportMainAxisExtent: "+A.c(s.c)+" crossAxisExtent: "+A.c(s.d)}, +gB(a){var s=this +return A.a4(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.a0I.prototype={ +D(){return"GrowthDirection."+this.b}} +A.uM.prototype={ +gaeJ(){return!1}, +Cn(a,b,c){if(a==null)a=this.w +switch(A.c_(this.a).a){case 0:return new A.au(c,b,a,a) +case 1:return new A.au(a,a,c,b)}}, +aOr(a,b){return this.Cn(null,a,b)}, +aOq(){return this.Cn(null,1/0,0)}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(!(b instanceof A.uM))return!1 +return b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.e===s.e&&b.f===s.f&&b.r===s.r&&b.w===s.w&&b.x===s.x&&b.y===s.y&&b.Q===s.Q&&b.z===s.z}, +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y,s.Q,s.z,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){var s=this,r=A.a([s.a.j(0),s.b.j(0),s.c.j(0),"scrollOffset: "+B.d.aF(s.d,1),"precedingScrollExtent: "+B.d.aF(s.e,1),"remainingPaintExtent: "+B.d.aF(s.r,1)],t.s),q=s.f +if(q!==0)r.push("overlap: "+B.d.aF(q,1)) +r.push("crossAxisExtent: "+B.d.aF(s.w,1)) +r.push("crossAxisDirection: "+s.x.j(0)) +r.push("viewportMainAxisExtent: "+B.d.aF(s.y,1)) +r.push("remainingCacheExtent: "+B.d.aF(s.Q,1)) +r.push("cacheOrigin: "+B.d.aF(s.z,1)) +return"SliverConstraints("+B.b.bJ(r,", ")+")"}} +A.a8s.prototype={ +fb(){return"SliverGeometry"}} +A.Dz.prototype={} +A.a8u.prototype={ +j(a){return A.K(this.a).j(0)+"@(mainAxis: "+A.c(this.c)+", crossAxis: "+A.c(this.d)+")"}} +A.qY.prototype={ +j(a){var s=this.a +return"layoutOffset="+(s==null?"None":B.d.aF(s,1))}} +A.qX.prototype={} +A.uN.prototype={ +j(a){return"paintOffset="+this.a.j(0)}} +A.r_.prototype={} +A.e4.prototype={ +gah(){return t.q.a(A.G.prototype.gah.call(this))}, +goA(){return this.gof()}, +gof(){var s=this,r=t.q +switch(A.c_(r.a(A.G.prototype.gah.call(s)).a).a){case 0:return new A.I(0,0,0+s.fx.c,0+r.a(A.G.prototype.gah.call(s)).w) +case 1:return new A.I(0,0,0+r.a(A.G.prototype.gah.call(s)).w,0+s.fx.c)}}, +zb(){}, +ae4(a,b,c){var s,r=this +if(c>=0&&c=0&&b0){r=a/s +q=B.d.aa(r) +if(Math.abs(r*s-q*s)<1e-10)return q +return B.d.dv(r)}return 0}, +YY(a,b){var s,r,q +this.gDV() +s=this.gDU() +s.toString +if(s>0){r=a/s-1 +q=B.d.aa(r) +if(Math.abs(r*s-q*s)<1e-10)return Math.max(0,q) +return Math.max(0,B.d.dZ(r))}return 0}, +aPM(a,b){var s,r +this.gDV() +s=this.gDU() +s.toString +r=this.a2.gxR() +return r*s}, +Hl(a){var s +this.gDV() +s=this.gDU() +s.toString +return t.q.a(A.G.prototype.gah.call(this)).aOr(s,s)}, +ck(){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.q.a(A.G.prototype.gah.call(a3)),a6=a3.a2 +a6.R8=!1 +s=a5.d +r=s+a5.z +q=r+a5.Q +a3.cu=new A.a8v(s,a5.e,a5.y,a5.w) +p=a3.ajq(r,-1) +o=isFinite(q)?a3.YY(q,-1):a4 +if(a3.am$!=null){n=a3.ab6(p) +a3.uw(n,o!=null?a3.ab7(o):0)}else a3.uw(0,0) +if(a3.am$==null)if(!a3.Ux(p,a3.rD(-1,p))){m=p<=0?0:a3.aPM(a5,-1) +a3.fx=A.m5(a4,!1,a4,a4,m,0,0,m,a4) +a6.uG() +return}l=a3.am$ +l.toString +l=l.b +l.toString +k=t.W +l=k.a(l).b +l.toString +j=l-1 +i=a4 +for(;j>=p;--j){h=a3.aen(a3.Hl(j)) +if(h==null){a3.fx=A.m5(a4,!1,a4,a4,0,0,0,0,a3.rD(-1,j)) +return}l=h.b +l.toString +k.a(l).a=a3.rD(-1,j) +if(i==null)i=h}if(i==null){l=a3.am$ +l.toString +g=l.b +g.toString +g=k.a(g).b +g.toString +l.j4(a3.Hl(g)) +g=a3.am$.b +g.toString +k.a(g).a=a3.rD(-1,p) +i=a3.am$}l=i.b +l.toString +l=k.a(l).b +l.toString +j=l+1 +l=A.y(a3).i("aD.1") +g=o!=null +while(!0){if(!(!g||j<=o)){f=1/0 +break}e=i.b +e.toString +h=l.a(e).aO$ +if(h!=null){e=h.b +e.toString +e=k.a(e).b +e.toString +e=e!==j}else e=!0 +if(e){h=a3.ael(a3.Hl(j),i) +if(h==null){f=a3.rD(-1,j) +break}}else h.j4(a3.Hl(j)) +e=h.b +e.toString +k.a(e) +d=e.b +d.toString +e.a=a3.rD(-1,d);++j +i=h}l=a3.dJ$ +l.toString +l=l.b +l.toString +l=k.a(l).b +l.toString +c=a3.rD(-1,p) +b=a3.rD(-1,l+1) +f=Math.min(f,a6.VY(a5,p,l,c,b)) +a=a3.Ct(a5,c,b) +a0=a3.JU(a5,c,b) +a1=s+a5.r +a2=isFinite(a1)?a3.YY(a1,-1):a4 +a3.fx=A.m5(a0,a2!=null&&l>=a2||s>0,a4,a4,f,a,0,f,a4) +if(f===b)a6.R8=!0 +a6.uG()}} +A.aRV.prototype={ +aiK(a){var s=this.c +return a.Cn(this.d,s,s)}, +j(a){var s=this +return"SliverGridGeometry("+B.b.bJ(A.a(["scrollOffset: "+A.c(s.a),"crossAxisOffset: "+A.c(s.b),"mainAxisExtent: "+A.c(s.c),"crossAxisExtent: "+A.c(s.d)],t.s),", ")+")"}} +A.aRW.prototype={} +A.aRX.prototype={ +ajp(a){var s=this.b +if(s>0)return Math.max(0,this.a*B.d.dZ(a/s)-1) +return 0}, +ayL(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}, +Of(a){var s=this,r=s.a,q=B.e.an(a,r) +return new A.aRV(B.e.im(a,r)*s.b,s.ayL(q*s.c),s.d,s.e)}, +abA(a){var s +if(a===0)return 0 +s=this.b +return s*(B.e.im(a-1,this.a)+1)-(s-this.d)}} +A.aRU.prototype={} +A.O4.prototype={ +YV(a){var s=this,r=s.c,q=s.a,p=Math.max(0,a.w-r*(q-1))/q,o=p/s.d +return new A.aRX(q,o+s.b,p+r,o,p,A.Gm(a.x))}} +A.Dy.prototype={ +j(a){return"crossAxisOffset="+A.c(this.w)+"; "+this.ao5(0)}} +A.a73.prototype={ +ht(a){if(!(a.b instanceof A.Dy))a.b=new A.Dy(!1,null,null)}, +sajM(a){var s,r,q=this +if(q.cu===a)return +s=!0 +if(A.K(a)===A.K(q.cu)){r=q.cu +if(r.a===a.a)if(r.b===a.b)if(r.c===a.c)s=r.d!==a.d}if(s)q.ae() +q.cu=a}, +xS(a){var s=a.b +s.toString +s=t.h5.a(s).w +s.toString +return s}, +ck(){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.G.prototype.gah.call(a8)),b1=a8.a2 +b1.R8=!1 +s=b0.d +r=s+b0.z +q=r+b0.Q +p=a8.cu.YV(b0) +o=p.b +n=o>1e-10?p.a*B.d.im(r,o):0 +m=isFinite(q)?p.ajp(q):a9 +if(a8.am$!=null){l=a8.ab6(n) +a8.uw(l,m!=null?a8.ab7(m):0)}else a8.uw(0,0) +k=p.Of(n) +if(a8.am$==null)if(!a8.Ux(n,k.a)){j=p.abA(b1.gxR()) +a8.fx=A.m5(a9,!1,a9,a9,j,0,0,j,a9) +b1.uG() +return}i=k.a +h=i+k.c +o=a8.am$ +o.toString +o=o.b +o.toString +g=t.W +o=g.a(o).b +o.toString +f=o-1 +o=t.h5 +e=a9 +for(;f>=n;--f){d=p.Of(f) +c=d.c +b=a8.aen(b0.Cn(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.am$ +c.toString +c.j4(k.aiK(b0)) +e=a8.am$ +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.y(a8).i("aD.1") +a=m!=null +while(!0){if(!(!a||f<=m)){a1=!1 +break}d=p.Of(f) +a0=d.c +a2=b0.Cn(d.d,a0,a0) +a3=e.b +a3.toString +b=c.a(a3).aO$ +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.ael(a2,e) +if(b==null){a1=!0 +break}}else b.j4(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.dJ$ +o.toString +o=o.b +o.toString +o=g.a(o).b +o.toString +a5=a1?h:b1.VY(b0,n,o,i,h) +a6=a8.Ct(b0,Math.min(s,i),h) +a7=a8.JU(b0,i,h) +a8.fx=A.m5(a7,a5>a6||s>0||b0.f!==0,a9,a9,a5,a6,0,a5,a9) +if(a5===h)b1.R8=!0 +b1.uG()}} +A.a74.prototype={ +ck(){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.G.prototype.gah.call(a3)),a7=a3.a2 +a7.R8=!1 +s=a6.d +r=s+a6.z +q=r+a6.Q +p=a6.aOq() +if(a3.am$==null)if(!a3.aak()){a3.fx=B.OG +a7.uG() +return}a5.a=null +o=a3.am$ +n=o.b +n.toString +m=t.W +if(m.a(n).a==null){n=A.y(a3).i("aD.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).aO$;++l}a3.uw(l,0) +if(a3.am$==null)if(!a3.aak()){a3.fx=B.OG +a7.uG() +return}}o=a3.am$ +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.WO(p,!0) +if(o==null){n=a3.am$ +k=n.b +k.toString +m.a(k).a=0 +if(r===0){n.df(p,!0) +o=a3.am$ +if(a5.a==null)a5.a=o +i=o +break}else{a3.fx=A.m5(a4,!1,a4,a4,0,0,0,0,-r) +return}}n=a3.am$ +n.toString +h=j-a3.vt(n) +if(h<-1e-10){a3.fx=A.m5(a4,!1,a4,a4,0,0,0,0,-h) +a7=a3.am$.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.am$ +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.WO(p,!0) +k=a3.am$ +k.toString +h=n-a3.vt(k) +k=a3.am$.b +k.toString +m.a(k).a=0 +if(h<-1e-10){a3.fx=A.m5(a4,!1,a4,a4,0,0,0,0,-h) +return}}if(i==null){o.df(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.vt(o) +g=new A.aOL(a5,a3,p) +for(f=0;a5.es+a6.r||s>0,a4,a4,a,a1,0,a,a4) +if(a===n)a7.R8=!0 +a7.uG()}} +A.aOL.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.y(s).i("aD.1").a(o).aO$ +o=r==null +if(o)p.b=!1 +q=++p.d +if(!p.b){if(!o){o=r.b +o.toString +o=t.W.a(o).b +o.toString +q=o!==q +o=q}else o=!0 +q=this.c +if(o){r=s.aem(q,n,!0) +p.c=r +if(r==null)return!1}else r.df(q,!0) +o=p.a=p.c}else o=r +n=o.b +n.toString +t.W.a(n) +q=p.e +n.a=q +p.e=q+s.vt(o) +return!0}, +$S:46} +A.mV.prototype={$ie_:1} +A.aOP.prototype={ +ht(a){}} +A.i8.prototype={ +j(a){var s=this.b,r=this.yC$?"keepAlive; ":"" +return"index="+A.c(s)+"; "+r+this.ao4(0)}} +A.qK.prototype={ +ht(a){if(!(a.b instanceof A.i8))a.b=new A.i8(!1,null,null)}, +lp(a){var s +this.a_N(a) +s=a.b +s.toString +if(!t.W.a(s).c)this.a2.VA(t.x.a(a))}, +LL(a,b,c){this.P1(0,b,c)}, +E6(a,b){var s,r=this,q=a.b +q.toString +t.W.a(q) +if(!q.c){r.amf(a,b) +r.a2.VA(a) +r.ae()}else{s=r.by +if(s.h(0,q.b)===a)s.C(0,q.b) +r.a2.VA(a) +q=q.b +q.toString +s.n(0,q,a)}}, +C(a,b){var s=b.b +s.toString +t.W.a(s) +if(!s.c){this.amg(0,b) +return}this.by.C(0,s.b) +this.rh(b)}, +Qu(a,b){this.LN(new A.aOM(this,a,b),t.q)}, +a2p(a){var s,r=this,q=a.b +q.toString +t.W.a(q) +if(q.yC$){r.C(0,a) +s=q.b +s.toString +r.by.n(0,s,a) +a.b=q +r.a_N(a) +q.c=!0}else r.a2.agm(a)}, +aI(a){var s,r,q +this.aoV(a) +for(s=this.by.gaJ(0),r=A.y(s),s=new A.bD(J.ay(s.a),s.b,r.i("bD<1,2>")),r=r.y[1];s.u();){q=s.a;(q==null?r.a(q):q).aI(a)}}, +aB(a){var s,r,q +this.aoW(0) +for(s=this.by.gaJ(0),r=A.y(s),s=new A.bD(J.ay(s.a),s.b,r.i("bD<1,2>")),r=r.y[1];s.u();){q=s.a;(q==null?r.a(q):q).aB(0)}}, +j8(){this.a_3() +this.by.gaJ(0).az(0,this.gXY())}, +bZ(a){this.Gp(a) +this.by.gaJ(0).az(0,a)}, +iL(a){this.Gp(a)}, +Ux(a,b){var s +this.Qu(a,null) +s=this.am$ +if(s!=null){s=s.b +s.toString +t.W.a(s).a=b +return!0}this.a2.R8=!0 +return!1}, +aak(){return this.Ux(0,0)}, +WO(a,b){var s,r,q,p=this,o=p.am$ +o.toString +o=o.b +o.toString +s=t.W +o=s.a(o).b +o.toString +r=o-1 +p.Qu(r,null) +o=p.am$ +o.toString +q=o.b +q.toString +q=s.a(q).b +q.toString +if(q===r){o.df(a,b) +return p.am$}p.a2.R8=!0 +return null}, +aen(a){return this.WO(a,!1)}, +aem(a,b,c){var s,r,q,p=b.b +p.toString +s=t.W +p=s.a(p).b +p.toString +r=p+1 +this.Qu(r,b) +p=b.b +p.toString +q=A.y(this).i("aD.1").a(p).aO$ +if(q!=null){p=q.b +p.toString +p=s.a(p).b +p.toString +p=p===r}else p=!1 +if(p){q.df(a,c) +return q}this.a2.R8=!0 +return null}, +ael(a,b){return this.aem(a,b,!1)}, +ab6(a){var s,r=this.am$,q=A.y(this).i("aD.1"),p=t.W,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).du$}return o}, +uw(a,b){var s={} +s.a=a +s.b=b +this.LN(new A.aOO(s,this),t.q)}, +vt(a){var s +switch(A.c_(t.q.a(A.G.prototype.gah.call(this)).a).a){case 0:s=a.gv(0).a +break +case 1:s=a.gv(0).b +break +default:s=null}return s}, +WK(a,b,c){var s,r,q=this.dJ$,p=A.bri(a) +for(s=A.y(this).i("aD.1");q!=null;){if(this.aV9(p,q,b,c))return!0 +r=q.b +r.toString +q=s.a(r).du$}return!1}, +V1(a){var s=a.b +s.toString +return t.W.a(s).a}, +pX(a){var s=t.MR.a(a.b) +return(s==null?null:s.b)!=null&&!this.by.N(0,s.b)}, +er(a,b){if(!this.pX(a))b.G1() +else this.aOm(a,b)}, +aT(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.am$==null)return +s=t.q +r=!0 +switch(A.rM(s.a(A.G.prototype.gah.call(c)).a,s.a(A.G.prototype.gah.call(c)).b).a){case 0:q=a0.ab(0,new A.z(0,c.fx.c)) +p=B.re +o=B.fk +break +case 1:q=a0 +p=B.fk +o=B.cH +r=!1 +break +case 2:q=a0 +p=B.cH +o=B.fk +r=!1 +break +case 3:q=a0.ab(0,new A.z(c.fx.c,0)) +p=B.rf +o=B.cH +break +default:r=b +q=r +o=q +p=o}n=c.am$ +for(m=A.y(c).i("aD.1"),l=t.W;n!=null;){k=n.b +k.toString +k=l.a(k).a +k.toString +j=k-s.a(A.G.prototype.gah.call(c)).d +i=c.xS(n) +k=q.a +h=p.a +k=k+h*j+o.a*i +g=q.b +f=p.b +g=g+f*j+o.b*i +e=new A.z(k,g) +if(r){d=c.vt(n) +e=new A.z(k+h*d,g+f*d)}if(j0)a.fa(n,e) +k=n.b +k.toString +n=m.a(k).aO$}}} +A.aOM.prototype={ +$1(a){var s=this.a,r=s.by,q=this.b,p=this.c +if(r.N(0,q)){r=r.C(0,q) +r.toString +q=r.b +q.toString +t.W.a(q) +s.rh(r) +r.b=q +s.P1(0,r,p) +q.c=!1}else s.a2.aQU(q,p)}, +$S:239} +A.aOO.prototype={ +$1(a){var s,r,q +for(s=this.a,r=this.b;s.a>0;){q=r.am$ +q.toString +r.a2p(q);--s.a}for(;s.b>0;){q=r.dJ$ +q.toString +r.a2p(q);--s.b}s=r.by.gaJ(0) +q=A.y(s).i("bh") +B.b.az(A.a8(new A.bh(s,new A.aON(),q),!0,q.i("B.E")),r.a2.gb_o())}, +$S:239} +A.aON.prototype={ +$1(a){var s=a.b +s.toString +return!t.W.a(s).yC$}, +$S:440} +A.T2.prototype={ +aI(a){var s,r,q +this.eD(a) +s=this.am$ +for(r=t.W;s!=null;){s.aI(a) +q=s.b +q.toString +s=r.a(q).aO$}}, +aB(a){var s,r,q +this.eE(0) +s=this.am$ +for(r=t.W;s!=null;){s.aB(0) +q=s.b +q.toString +s=r.a(q).aO$}}} +A.ajp.prototype={} +A.ajq.prototype={} +A.akC.prototype={ +aB(a){this.Ai(0)}} +A.akD.prototype={} +A.N_.prototype={ +gUP(){var s=this,r=t.q +switch(A.rM(r.a(A.G.prototype.gah.call(s)).a,r.a(A.G.prototype.gah.call(s)).b).a){case 0:r=s.gkh().d +break +case 1:r=s.gkh().a +break +case 2:r=s.gkh().b +break +case 3:r=s.gkh().c +break +default:r=null}return r}, +gaO7(){var s=this,r=t.q +switch(A.rM(r.a(A.G.prototype.gah.call(s)).a,r.a(A.G.prototype.gah.call(s)).b).a){case 0:r=s.gkh().b +break +case 1:r=s.gkh().c +break +case 2:r=s.gkh().d +break +case 3:r=s.gkh().a +break +default:r=null}return r}, +gaRd(){switch(A.c_(t.q.a(A.G.prototype.gah.call(this)).a).a){case 0:var s=this.gkh() +s=s.gc9(0)+s.gci(0) +break +case 1:s=this.gkh().gde() +break +default:s=null}return s}, +ht(a){if(!(a.b instanceof A.uN))a.b=new A.uN(B.j)}, +ck(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2=this,a3=null,a4=t.q,a5=a4.a(A.G.prototype.gah.call(a2)),a6=new A.aOI(a2,a5),a7=new A.aOH(a2,a5),a8=a2.gkh() +a8.toString +s=a2.gUP() +a2.gaO7() +r=a2.gkh() +r.toString +q=r.aOa(A.c_(a4.a(A.G.prototype.gah.call(a2)).a)) +p=a2.gaRd() +if(a2.H$==null){o=a6.$2$from$to(0,q) +a2.fx=A.m5(a7.$2$from$to(0,q),!1,a3,a3,q,Math.min(o,a5.r),0,q,a3) +return}n=a6.$2$from$to(0,s) +m=a5.f +if(m>0)m=Math.max(0,m-n) +a4=a2.H$ +a4.toString +r=Math.max(0,a5.d-s) +l=Math.min(0,a5.z+s) +k=a5.r +j=a6.$2$from$to(0,s) +i=a5.Q +h=a7.$2$from$to(0,s) +g=Math.max(0,a5.w-p) +f=a5.a +e=a5.b +a4.df(new A.uM(f,e,a5.c,r,s+a5.e,m,k-j,g,a5.x,a5.y,l,i-h),!0) +d=a2.H$.fx +a4=d.y +if(a4!=null){a2.fx=A.m5(a3,!1,a3,a3,0,0,0,0,a4) +return}c=d.a +b=a7.$2$from$to(0,s) +a4=s+c +r=q+c +a=a7.$2$from$to(a4,r) +a0=a6.$2$from$to(a4,r) +a1=n+a0 +a4=d.c +l=d.d +o=Math.min(n+Math.max(a4,l+a0),k) +k=d.b +l=Math.min(a1+l,o) +i=Math.min(b+a+d.z,i) +j=d.e +a4=Math.max(a1+a4,n+d.r) +a2.fx=A.m5(i,d.x,a4,l,q+j,o,k,r,a3) +switch(A.rM(f,e).a){case 0:a4=a6.$2$from$to(a8.d+c,a8.gc9(0)+a8.gci(0)+c) +break +case 3:a4=a6.$2$from$to(a8.c+c,a8.gde()+c) +break +case 1:a4=a6.$2$from$to(0,a8.a) +break +case 2:a4=a6.$2$from$to(0,a8.b) +break +default:a4=a3}r=a2.H$.b +r.toString +t.jB.a(r) +switch(A.c_(f).a){case 0:a4=new A.z(a4,a8.b) +break +case 1:a4=new A.z(a8.a,a4) +break +default:a4=a3}r.a=a4}, +WK(a,b,c){var s,r,q,p,o=this,n=o.H$ +if(n!=null&&n.fx.r>0){n=n.b +n.toString +t.jB.a(n) +s=o.Ct(t.q.a(A.G.prototype.gah.call(o)),0,o.gUP()) +r=o.H$ +r.toString +r=o.xS(r) +n=n.a +q=o.H$.gaV8() +a.c.push(new A.Ft(new A.z(-n.a,-n.b))) +p=q.$3$crossAxisPosition$mainAxisPosition(a,b-r,c-s) +a.N0() +return p}return!1}, +xS(a){var s +switch(A.c_(t.q.a(A.G.prototype.gah.call(this)).a).a){case 0:s=this.gkh().b +break +case 1:s=this.gkh().a +break +default:s=null}return s}, +V1(a){return this.gUP()}, +er(a,b){var s=a.b +s.toString +s=t.jB.a(s).a +b.bs(0,s.a,s.b)}, +aT(a,b){var s,r=this.H$ +if(r!=null&&r.fx.w){s=r.b +s.toString +a.fa(r,b.ab(0,t.jB.a(s).a))}}} +A.aOI.prototype={ +$2$from$to(a,b){return this.a.Ct(this.b,a,b)}, +$S:240} +A.aOH.prototype={ +$2$from$to(a,b){return this.a.JU(this.b,a,b)}, +$S:240} +A.a75.prototype={ +gkh(){return this.cG}, +aL0(){if(this.cG!=null)return +this.cG=this.eN}, +sdW(a,b){var s=this +if(s.eN.l(0,b))return +s.eN=b +s.cG=null +s.ae()}, +scr(a){var s=this +if(s.f5===a)return +s.f5=a +s.cG=null +s.ae()}, +ck(){this.aL0() +this.a_T()}} +A.ajn.prototype={ +aI(a){var s +this.eD(a) +s=this.H$ +if(s!=null)s.aI(a)}, +aB(a){var s +this.eE(0) +s=this.H$ +if(s!=null)s.aB(0)}} +A.fM.prototype={ +gvi(){var s=this +return s.e!=null||s.f!=null||s.r!=null||s.w!=null||s.x!=null||s.y!=null}, +XK(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=null,d=f.w,c=f.f +$label0$0:{s=d!=null +r=e +q=e +p=!1 +if(s){o=d==null +if(o)A.d5(d) +q=o?A.d5(d):d +p=c!=null +if(p)if(c==null)A.d5(c) +r=c}if(p){n=s?r:c +if(n==null)n=A.d5(n) +p=a.a-n-q +break $label0$0}p=f.x +break $label0$0}m=f.e +l=f.r +$label1$1:{k=m!=null +j=e +i=e +o=!1 +if(k){h=m==null +if(h)A.d5(m) +i=h?A.d5(m):m +o=l!=null +if(o)if(l==null)A.d5(l) +j=l}if(o){g=k?j:l +if(g==null)g=A.d5(g) +o=a.b-g-i +break $label1$1}o=f.y +break $label1$1}p=p==null?e:Math.max(0,p) +return A.o1(o==null?e:Math.max(0,o),p)}, +j(a){var s=this,r=A.a([],t.s),q=s.e +if(q!=null)r.push("top="+A.mq(q)) +q=s.f +if(q!=null)r.push("right="+A.mq(q)) +q=s.r +if(q!=null)r.push("bottom="+A.mq(q)) +q=s.w +if(q!=null)r.push("left="+A.mq(q)) +q=s.x +if(q!=null)r.push("width="+A.mq(q)) +q=s.y +if(q!=null)r.push("height="+A.mq(q)) +if(r.length===0)r.push("not positioned") +r.push(s.Gn(0)) +return B.b.bJ(r,"; ")}} +A.Oj.prototype={ +D(){return"StackFit."+this.b}} +A.D5.prototype={ +ht(a){if(!(a.b instanceof A.fM))a.b=new A.fM(null,null,B.j)}, +gTe(){var s=this,r=s.X +return r==null?s.X=s.a9.Z(s.aC):r}, +siu(a){var s=this +if(s.a9.l(0,a))return +s.a9=a +s.X=null +s.ae()}, +scr(a){var s=this +if(s.aC==a)return +s.aC=a +s.X=null +s.ae()}, +syL(a){if(this.aQ!==a){this.aQ=a +this.ae()}}, +smY(a){var s=this +if(a!==s.M){s.M=a +s.aU() +s.bM()}}, +bU(a){return A.ye(this.am$,new A.aOT(a))}, +bQ(a){return A.ye(this.am$,new A.aOR(a))}, +bT(a){return A.ye(this.am$,new A.aOS(a))}, +bP(a){return A.ye(this.am$,new A.aOQ(a))}, +iw(a){return this.Ks(a)}, +fH(a,b){var s,r,q,p,o,n,m,l=this +switch(l.aQ.a){case 0:s=new A.au(0,a.b,0,a.d) +break +case 1:s=A.ta(new A.R(A.M(1/0,a.a,a.b),A.M(1/0,a.c,a.d))) +break +case 2:s=a +break +default:s=null}r=l.gTe() +q=l.aM(B.af,a,l.gdD()) +p=l.am$ +o=A.y(l).i("aD.1") +n=null +while(p!=null){n=A.Ac(n,A.bvq(p,q,s,r,b)) +m=p.b +m.toString +p=o.a(m).aO$}return n}, +ds(a){return this.a8a(a,A.jb())}, +a8a(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g +if(this.dl$===0){s=a.a +r=a.b +q=A.M(1/0,s,r) +p=a.c +o=a.d +n=A.M(1/0,p,o) +return isFinite(q)&&isFinite(n)?new A.R(A.M(1/0,s,r),A.M(1/0,p,o)):new A.R(A.M(0,s,r),A.M(0,p,o))}m=a.a +l=a.c +switch(this.aQ.a){case 0:s=new A.au(0,a.b,0,a.d) +break +case 1:s=A.ta(new A.R(A.M(1/0,m,a.b),A.M(1/0,l,a.d))) +break +case 2:s=a +break +default:s=null}k=this.am$ +for(r=t.d,j=l,i=m,h=!1;k!=null;){q=k.b +q.toString +r.a(q) +if(!q.gvi()){g=b.$2(k,s) +i=Math.max(i,g.a) +j=Math.max(j,g.b) +h=!0}k=q.aO$}return h?new A.R(i,j):new A.R(A.M(1/0,m,a.b),A.M(1/0,l,a.d))}, +ck(){var s,r,q,p,o,n,m,l=this,k="RenderBox was not laid out: ",j=t.k.a(A.G.prototype.gah.call(l)) +l.A=!1 +l.id=l.a8a(j,A.rR()) +s=l.gTe() +r=l.am$ +for(q=t.d,p=t.c;r!=null;){o=r.b +o.toString +q.a(o) +if(!o.gvi()){n=l.id +if(n==null)n=A.V(A.a1(k+A.K(l).j(0)+"#"+A.c5(l))) +m=r.id +o.a=s.ph(p.a(n.ai(0,m==null?A.V(A.a1(k+A.K(r).j(0)+"#"+A.c5(r))):m)))}else{n=l.id +l.A=A.bvr(r,o,n==null?A.V(A.a1(k+A.K(l).j(0)+"#"+A.c5(l))):n,s)||l.A}r=o.aO$}}, +dU(a,b){return this.CX(a,b)}, +MS(a,b){this.y5(a,b)}, +aT(a,b){var s,r=this,q=r.M!==B.h&&r.A,p=r.U +if(q){q=r.cx +q===$&&A.b() +s=r.gv(0) +p.sb0(0,a.og(q,b,new A.I(0,0,0+s.a,0+s.b),r.gafC(),r.M,p.a))}else{p.sb0(0,null) +r.MS(a,b)}}, +m(){this.U.sb0(0,null) +this.h0()}, +r8(a){var s +switch(this.M.a){case 0:return null +case 1:case 2:case 3:if(this.A){s=this.gv(0) +s=new A.I(0,0,0+s.a,0+s.b)}else s=null +return s}}} +A.aOT.prototype={ +$1(a){return a.aM(B.bh,this.a,a.gcF())}, +$S:59} +A.aOR.prototype={ +$1(a){return a.aM(B.aM,this.a,a.gcb())}, +$S:59} +A.aOS.prototype={ +$1(a){return a.aM(B.bi,this.a,a.gcE())}, +$S:59} +A.aOQ.prototype={ +$1(a){return a.aM(B.bC,this.a,a.gcM())}, +$S:59} +A.MR.prototype={ +iL(a){var s=this.Az() +if(s!=null)a.$1(s)}, +Az(){var s,r,q,p,o=this.hE +if(o==null)return null +s=this.am$ +r=A.y(this).i("aD.1") +q=0 +while(!0){if(!(q=r.b&&r.c>=r.d) +r=s.H$ +if(r!=null)r.df(s.gah(),q) +if(q&&s.H$!=null)r=s.H$.gv(0) +else{r=s.gah() +r=new A.R(A.M(0,r.a,r.b),A.M(0,r.c,r.d))}s.fx=r}, +gi8(){return!0}, +aT(a,b){var s=this.H$ +if(s!=null)a.fa(s,b)}, +er(a,b){var s=this.k1 +s.toString +b.e7(0,s) +this.ang(a,b)}, +aPK(){var s,r,q,p,o,n,m=this +try{$.oK.toString +s=$.ap().ac7() +r=m.ch.a.ab1(s) +m.aN5() +q=m.go +p=m.fy +o=m.fx +p=p.b.bD(o.ap(0,p.c)) +o=$.dz().d +if(o==null){o=self.window.devicePixelRatio +if(o===0)o=1}n=p.fO(0,o) +o=q.ghq().a.style +A.N(o,"width",A.c(n.a)+"px") +A.N(o,"height",A.c(n.b)+"px") +q.Qj() +q.b.Nl(r,q) +r.m()}finally{}}, +aN5(){var s,r,q,p,o,n=null,m=this.gof(),l=m.gbq(),k=m.gbq(),j=this.ch,i=t.ew,h=j.a.adj(0,new A.z(l.a,0),i),g=n +switch(A.bY().a){case 0:g=j.a.adj(0,new A.z(k.a,m.d-1),i) +break +case 1:case 2:case 3:case 4:case 5:break}l=h==null +if(l&&g==null)return +if(!l&&g!=null){l=h.f +k=h.r +j=h.e +i=h.w +A.bwe(new A.oU(g.a,g.b,g.c,g.d,j,l,k,i)) +return}s=A.bY()===B.bg +r=l?g:h +l=r.f +k=r.r +j=r.e +i=r.w +q=s?r.a:n +p=s?r.b:n +o=s?r.c:n +A.bwe(new A.oU(q,p,o,s?r.d:n,j,l,k,i))}, +gof(){var s=this.fx.ap(0,this.fy.c) +return new A.I(0,0,0+s.a,0+s.b)}, +goA(){var s,r=this.k1 +r.toString +s=this.fx +return A.f9(r,new A.I(0,0,0+s.a,0+s.b))}} +A.ajv.prototype={ +aI(a){var s +this.eD(a) +s=this.H$ +if(s!=null)s.aI(a)}, +aB(a){var s +this.eE(0) +s=this.H$ +if(s!=null)s.aB(0)}} +A.Xc.prototype={ +D(){return"CacheExtentStyle."+this.b}} +A.uB.prototype={ +j(a){return"RevealedOffset(offset: "+A.c(this.a)+", rect: "+this.b.j(0)+")"}} +A.D7.prototype={ +hP(a){this.jM(a) +a.Uz(B.O4)}, +iL(a){var s=this.gV2() +new A.bh(s,new A.aOX(),A.af(s).i("bh<1>")).az(0,a)}, +skE(a){if(a===this.A)return +this.A=a +this.ae()}, +sacd(a){if(a===this.X)return +this.X=a +this.ae()}, +sdA(a,b){var s=this,r=s.a9 +if(b===r)return +if(s.y!=null)r.K(0,s.gMc()) +s.a9=b +if(s.y!=null)b.a4(0,s.gMc()) +s.ae()}, +saP2(a){if(a==null)a=250 +if(a===this.aC)return +this.aC=a +this.ae()}, +saP3(a){if(a===this.M)return +this.M=a +this.ae()}, +smY(a){var s=this +if(a!==s.U){s.U=a +s.aU() +s.bM()}}, +aI(a){this.aoY(a) +this.a9.a4(0,this.gMc())}, +aB(a){this.a9.K(0,this.gMc()) +this.aoZ(0)}, +bU(a){return 0}, +bQ(a){return 0}, +bT(a){return 0}, +bP(a){return 0}, +gi8(){return!0}, +X3(a,b,c,d,e,f,g,h,a0,a1,a2){var s,r,q,p,o,n,m,l,k=this,j=A.bUE(k.a9.k4,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.df(new A.uM(k.A,e,j,q,r,i-s,Math.max(0,a1-s+f),d,k.X,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.Ym(c,l,e) +else k.Ym(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.ahp(e,n) +c=a.$1(c)}return 0}, +r8(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.gv(0) +r=0+s.a +q=0+s.b +s=t.q +if(s.a(A.G.prototype.gah.call(a)).f===0||!isFinite(s.a(A.G.prototype.gah.call(a)).y))return new A.I(0,0,r,q) +p=s.a(A.G.prototype.gah.call(a)).y-s.a(A.G.prototype.gah.call(a)).r+s.a(A.G.prototype.gah.call(a)).f +o=0 +n=0 +switch(A.rM(this.A,s.a(A.G.prototype.gah.call(a)).b).a){case 2:n=0+p +break +case 0:q-=p +break +case 1:o=0+p +break +case 3:r-=p +break}return new A.I(o,n,r,q)}, +Vy(a){var s,r,q,p,o=this +if(o.aQ==null){s=o.gv(0) +return new A.I(0,0,0+s.a,0+s.b)}switch(A.c_(o.A).a){case 1:o.gv(0) +o.gv(0) +s=o.aQ +s.toString +r=o.gv(0) +q=o.gv(0) +p=o.aQ +p.toString +return new A.I(0,0-s,0+r.a,0+q.b+p) +case 0:o.gv(0) +s=o.aQ +s.toString +o.gv(0) +r=o.gv(0) +q=o.aQ +q.toString +return new A.I(0-s,0,0+r.a+q,0+o.gv(0).b)}}, +aT(a,b){var s,r,q,p=this +if(p.am$==null)return +s=p.gae2()&&p.U!==B.h +r=p.ac +if(s){s=p.cx +s===$&&A.b() +q=p.gv(0) +r.sb0(0,a.og(s,b,new A.I(0,0,0+q.a,0+q.b),p.gaNi(),p.U,r.a))}else{r.sb0(0,null) +p.a9W(a,b)}}, +m(){this.ac.sb0(0,null) +this.h0()}, +a9W(a,b){var s,r,q,p,o,n,m +for(s=this.gV2(),r=s.length,q=b.a,p=b.b,o=0;o0}, +$S:443} +A.aOW.prototype={ +$1(a){var s=this,r=s.c,q=s.a,p=s.b.abx(r,q.b) +return r.ae4(s.d,q.a,p)}, +$S:238} +A.N1.prototype={ +ht(a){if(!(a.b instanceof A.r_))a.b=new A.r_(null,null,B.j)}, +saOc(a){if(a===this.dK)return +this.dK=a +this.ae()}, +sbq(a){if(a==this.dS)return +this.dS=a +this.ae()}, +gks(){return!0}, +ds(a){return new A.R(A.M(1/0,a.a,a.b),A.M(1/0,a.c,a.d))}, +ck(){var s,r,q,p,o,n,m,l,k,j,i,h=this +switch(A.c_(h.A).a){case 1:h.a9.qZ(h.gv(0).b) +break +case 0:h.a9.qZ(h.gv(0).a) +break}if(h.dS==null){h.jt=h.hF=0 +h.hR=!1 +h.a9.qY(0,0) +return}switch(A.c_(h.A).a){case 1:s=new A.b3(h.gv(0).b,h.gv(0).a) +break +case 0:s=new A.b3(h.gv(0).a,h.gv(0).b) +break +default:s=null}r=s.a +q=null +p=s.b +q=p +o=r +h.dS.toString +n=10*h.dl$ +m=0 +do{s=h.a9.at +s.toString +l=h.PL(o,q,s+0) +if(l!==0)h.a9.Vm(l) +else{s=h.a9 +k=h.hF +k===$&&A.b() +j=h.dK +k=Math.min(0,k+o*j) +i=h.jt +i===$&&A.b() +if(s.qY(k,Math.max(0,i-o*(1-j))))break}++m}while(m=a?s:r +f=e.aQ +f.toString +return e.X3(e.gCw(),A.M(s,-f,0),q,b,B.lB,j,a,o,k,p,h)}, +gae2(){return this.hR}, +ahp(a,b){var s,r=this +switch(a.a){case 0:s=r.jt +s===$&&A.b() +r.jt=s+b.a +break +case 1:s=r.hF +s===$&&A.b() +r.hF=s-b.a +break}if(b.x)r.hR=!0}, +Ym(a,b,c){var s=a.b +s.toString +t.jB.a(s).a=this.abw(a,b,c)}, +XD(a){var s=a.b +s.toString +return t.jB.a(s).a}, +Zm(a,b){var s,r,q,p,o=this +switch(t.q.a(A.G.prototype.gah.call(a)).b.a){case 0:s=o.dS +for(r=A.y(o).i("aD.1"),q=0;s!==a;){q+=s.fx.a +p=s.b +p.toString +s=r.a(p).aO$}return q+b +case 1:r=o.dS.b +r.toString +p=A.y(o).i("aD.1") +s=p.a(r).du$ +for(q=0;s!==a;){q-=s.fx.a +r=s.b +r.toString +s=p.a(r).du$}return q-b}}, +af2(a){var s,r,q,p=this +switch(t.q.a(A.G.prototype.gah.call(a)).b.a){case 0:s=p.dS +for(r=A.y(p).i("aD.1");s!==a;){s.fx.toString +q=s.b +q.toString +s=r.a(q).aO$}return 0 +case 1:r=p.dS.b +r.toString +q=A.y(p).i("aD.1") +s=q.a(r).du$ +for(;s!==a;){s.fx.toString +r=s.b +r.toString +s=q.a(r).du$}return 0}}, +er(a,b){var s=a.b +s.toString +s=t.jB.a(s).a +b.bs(0,s.a,s.b)}, +abx(a,b){var s,r=a.b +r.toString +s=t.jB.a(r).a +r=t.q +switch(A.rM(r.a(A.G.prototype.gah.call(a)).a,r.a(A.G.prototype.gah.call(a)).b).a){case 2:r=b-s.b +break +case 1:r=b-s.a +break +case 0:r=a.fx.c-(b-s.b) +break +case 3:r=a.fx.c-(b-s.a) +break +default:r=null}return r}, +gV2(){var s,r,q=this,p=A.a([],t.Ry),o=q.am$ +if(o==null)return p +for(s=A.y(q).i("aD.1");o!=q.dS;){o.toString +p.push(o) +r=o.b +r.toString +o=s.a(r).aO$}o=q.dJ$ +for(;!0;){o.toString +p.push(o) +if(o===q.dS)return p +r=o.b +r.toString +o=s.a(r).du$}}, +gabg(){var s,r,q,p=this,o=A.a([],t.Ry) +if(p.am$==null)return o +s=p.dS +for(r=A.y(p).i("aD.1");s!=null;){o.push(s) +q=s.b +q.toString +s=r.a(q).aO$}q=p.dS.b +q.toString +s=r.a(q).du$ +for(;s!=null;){o.push(s) +q=s.b +q.toString +s=r.a(q).du$}return o}} +A.a70.prototype={ +ht(a){if(!(a.b instanceof A.qX))a.b=new A.qX(null,null)}, +ck(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=null,b=t.k.a(A.G.prototype.gah.call(d)) +if(d.am$==null){switch(A.c_(d.A).a){case 1:s=new A.R(b.b,b.c) +break +case 0:s=new A.R(b.a,b.d) +break +default:s=c}d.id=s +d.a9.qZ(0) +d.dS=d.dK=0 +d.hF=!1 +d.a9.qY(0,0) +return}switch(A.c_(d.A).a){case 1:s=new A.b3(b.d,b.b) +break +case 0:s=new A.b3(b.b,b.d) +break +default:s=c}r=s.a +q=c +p=s.b +q=p +o=r +for(s=b.a,n=b.b,m=b.c,l=b.d,k=c;!0;){j=d.a9.at +j.toString +i=d.PL(o,q,j) +if(i!==0){j=d.a9 +h=j.at +h.toString +j.at=h+i +j.ch=!0}else{switch(A.c_(d.A).a){case 1:j=d.dS +j===$&&A.b() +j=A.M(j,m,l) +break +case 0:j=d.dS +j===$&&A.b() +j=A.M(j,s,n) +break +default:j=c}g=d.a9.qZ(j) +h=d.a9 +f=d.dK +f===$&&A.b() +e=h.qY(0,Math.max(0,f-j)) +if(g&&e){k=j +break}k=j}}switch(A.c_(d.A).a){case 1:s=new A.R(A.M(q,s,n),A.M(k,m,l)) +break +case 0:s=new A.R(A.M(k,s,n),A.M(q,m,l)) +break +default:s=c}d.id=s}, +PL(a,b,c){var s,r,q,p,o,n=this +n.dS=n.dK=0 +n.hF=c<0 +switch(n.M.a){case 0:s=n.aC +break +case 1:s=a*n.aC +break +default:s=null}n.aQ=s +r=n.am$ +q=Math.max(0,c) +p=Math.min(0,c) +o=Math.max(0,-c) +s.toString +return n.X3(n.gCw(),-s,r,b,B.lB,o,a,p,a+2*s,a+p,q)}, +gae2(){return this.hF}, +ahp(a,b){var s=this,r=s.dK +r===$&&A.b() +s.dK=r+b.a +if(b.x)s.hF=!0 +r=s.dS +r===$&&A.b() +s.dS=r+b.e}, +Ym(a,b,c){var s=a.b +s.toString +t.Xp.a(s).a=b}, +XD(a){var s=a.b +s.toString +s=t.Xp.a(s).a +s.toString +return this.abw(a,s,B.lB)}, +Zm(a,b){var s,r,q,p=this.am$ +for(s=A.y(this).i("aD.1"),r=0;p!==a;){r+=p.fx.a +q=p.b +q.toString +p=s.a(q).aO$}return r+b}, +af2(a){var s,r,q=this.am$ +for(s=A.y(this).i("aD.1");q!==a;){q.fx.toString +r=q.b +r.toString +q=s.a(r).aO$}return 0}, +er(a,b){var s=this.XD(t.nl.a(a)) +b.bs(0,s.a,s.b)}, +abx(a,b){var s,r,q=a.b +q.toString +q=t.Xp.a(q).a +q.toString +s=t.q +r=A.rM(s.a(A.G.prototype.gah.call(a)).a,s.a(A.G.prototype.gah.call(a)).b) +$label0$0:{if(B.ah===r||B.dD===r){q=b-q +break $label0$0}if(B.at===r){q=this.gv(0).b-b-q +break $label0$0}if(B.cj===r){q=this.gv(0).a-b-q +break $label0$0}q=null}return q}, +gV2(){var s,r,q=A.a([],t.Ry),p=this.dJ$ +for(s=A.y(this).i("aD.1");p!=null;){q.push(p) +r=p.b +r.toString +p=s.a(r).du$}return q}, +gabg(){var s,r,q=A.a([],t.Ry),p=this.am$ +for(s=A.y(this).i("aD.1");p!=null;){q.push(p) +r=p.b +r.toString +p=s.a(r).aO$}return q}} +A.mm.prototype={ +aI(a){var s,r,q +this.eD(a) +s=this.am$ +for(r=A.y(this).i("mm.0");s!=null;){s.aI(a) +q=s.b +q.toString +s=r.a(q).aO$}}, +aB(a){var s,r,q +this.eE(0) +s=this.am$ +for(r=A.y(this).i("mm.0");s!=null;){s.aB(0) +q=s.b +q.toString +s=r.a(q).aO$}}} +A.Nr.prototype={ +D(){return"ScrollDirection."+this.b}} +A.j_.prototype={ +Mm(a,b,c,d){var s=d.a===B.F.a +if(s){this.hH(b) +return A.c7(null,t.H)}else return this.kD(b,c,d)}, +j(a){var s=this,r=A.a([],t.s) +s.anY(r) +r.push(A.K(s.w).j(0)) +r.push(s.r.j(0)) +r.push(A.c(s.fr)) +r.push(s.k4.j(0)) +return"#"+A.c5(s)+"("+B.b.bJ(r,", ")+")"}, +h6(a){var s=this.at +if(s!=null)a.push("offset: "+B.d.aF(s,1))}} +A.vb.prototype={ +D(){return"WrapAlignment."+this.b}, +H5(a,b,c,d){var s,r,q=this +$label0$0:{if(B.dy===q){s=new A.b3(d?a:0,b) +break $label0$0}if(B.azl===q){s=B.dy.H5(a,b,c,!d) +break $label0$0}r=B.azn===q +if(r&&c<2){s=B.dy.H5(a,b,c,d) +break $label0$0}if(B.azm===q){s=new A.b3(a/2,b) +break $label0$0}if(r){s=new A.b3(0,a/(c-1)+b) +break $label0$0}if(B.azo===q){s=a/c +s=new A.b3(s/2,s+b) +break $label0$0}if(B.azp===q){s=a/(c+1) +s=new A.b3(s,s+b) +break $label0$0}s=null}return s}} +A.PN.prototype={ +D(){return"WrapCrossAlignment."+this.b}, +gaxG(){switch(this.a){case 0:var s=B.azq +break +case 1:s=B.ie +break +case 2:s=B.azr +break +default:s=null}return s}, +gasf(){switch(this.a){case 0:var s=0 +break +case 1:s=1 +break +case 2:s=0.5 +break +default:s=null}return s}} +A.FK.prototype={ +b0A(a,b,c,d,e){var s=this,r=s.a +if(r.a+b.a+d-e>1e-10)return new A.FK(b,a) +else{s.a=A.aYV(r,A.aYV(b,new A.R(d,0)));++s.b +if(c)s.c=a +return null}}} +A.p1.prototype={} +A.N2.prototype={ +sKH(a,b){if(this.A===b)return +this.A=b +this.ae()}, +siu(a){if(this.X===a)return +this.X=a +this.ae()}, +sOU(a,b){if(this.a9===b)return +this.a9=b +this.ae()}, +sb_Z(a){if(this.aC===a)return +this.aC=a +this.ae()}, +sb0_(a){if(this.aQ===a)return +this.aQ=a +this.ae()}, +saRc(a){if(this.M===a)return +this.M=a +this.ae()}, +ht(a){if(!(a.b instanceof A.p1))a.b=new A.p1(null,null,B.j)}, +bU(a){var s,r,q,p,o,n=this +switch(n.A.a){case 0:s=n.am$ +for(r=A.y(n).i("aD.1"),q=0;s!=null;){p=s.gcF() +o=B.bh.ha(s.fx,1/0,p) +q=Math.max(q,o) +p=s.b +p.toString +s=r.a(p).aO$}return q +case 1:return n.aM(B.af,new A.au(0,1/0,0,a),n.gdD()).a}}, +bQ(a){var s,r,q,p,o,n=this +switch(n.A.a){case 0:s=n.am$ +for(r=A.y(n).i("aD.1"),q=0;s!=null;){p=s.gcb() +o=B.aM.ha(s.fx,1/0,p) +q+=o +p=s.b +p.toString +s=r.a(p).aO$}return q +case 1:return n.aM(B.af,new A.au(0,1/0,0,a),n.gdD()).a}}, +bT(a){var s,r,q,p,o,n=this +switch(n.A.a){case 0:return n.aM(B.af,new A.au(0,a,0,1/0),n.gdD()).b +case 1:s=n.am$ +for(r=A.y(n).i("aD.1"),q=0;s!=null;){p=s.gcE() +o=B.bi.ha(s.fx,1/0,p) +q=Math.max(q,o) +p=s.b +p.toString +s=r.a(p).aO$}return q}}, +bP(a){var s,r,q,p,o,n=this +switch(n.A.a){case 0:return n.aM(B.af,new A.au(0,a,0,1/0),n.gdD()).b +case 1:s=n.am$ +for(r=A.y(n).i("aD.1"),q=0;s!=null;){p=s.gcM() +o=B.bC.ha(s.fx,1/0,p) +q+=o +p=s.b +p.toString +s=r.a(p).aO$}return q}}, +iw(a){return this.Ks(a)}, +ayH(a){var s +switch(this.A.a){case 0:s=a.a +break +case 1:s=a.b +break +default:s=null}return s}, +ayi(a){var s +switch(this.A.a){case 0:s=a.b +break +case 1:s=a.a +break +default:s=null}return s}, +ayK(a,b){var s +switch(this.A.a){case 0:s=new A.z(a,b) +break +case 1:s=new A.z(b,a) +break +default:s=null}return s}, +ga0R(){var s,r=this.U +switch((r==null?B.i:r).a){case 1:r=!1 +break +case 0:r=!0 +break +default:r=null}switch(this.ac.a){case 1:s=!1 +break +case 0:s=!0 +break +default:s=null}switch(this.A.a){case 0:r=new A.b3(r,s) +break +case 1:r=new A.b3(s,r) +break +default:r=null}return r}, +fH(a,b){var s,r,q,p,o,n,m,l,k=this,j=null,i={} +if(k.am$==null)return j +switch(k.A.a){case 0:s=new A.au(0,a.b,0,1/0) +break +case 1:s=new A.au(0,1/0,0,a.d) +break +default:s=j}r=k.a1Y(a,A.jb()) +q=r.a +p=j +o=!1 +n=r.b +o=t.EE.b(n) +if(o)p=n +m=q +if(!o)throw A.d(A.a1("Pattern matching error")) +l=A.bxa(m,a,k.A) +i.a=null +k.a6B(p,m,l,new A.aP3(i,s,b),new A.aP4(s)) +return i.a}, +ds(a){return this.aNr(a)}, +aNr(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=null +switch(d.A.a){case 0:s=a.b +s=new A.b3(new A.au(0,s,0,1/0),s) +break +case 1:s=a.d +s=new A.b3(new A.au(0,1/0,0,s),s) +break +default:s=c}r=s.a +q=c +p=s.b +q=p +o=r +n=d.am$ +for(s=A.y(d).i("aD.1"),m=0,l=0,k=0,j=0,i=0;n!=null;){h=A.brs(n,o) +g=d.ayH(h) +f=d.ayi(h) +if(i>0&&k+g+d.a9>q){m=Math.max(m,k) +l+=j+d.aQ +k=0 +j=0 +i=0}k+=g +j=Math.max(j,f) +if(i>0)k+=d.a9;++i +e=n.b +e.toString +n=s.a(e).aO$}l+=j +m=Math.max(m,k) +switch(d.A.a){case 0:s=new A.R(m,l) +break +case 1:s=new A.R(l,m) +break +default:s=c}return a.bD(s)}, +ck(){var s,r,q,p,o,n,m,l,k=this,j=t.k.a(A.G.prototype.gah.call(k)) +if(k.am$==null){k.id=new A.R(A.M(0,j.a,j.b),A.M(0,j.c,j.d)) +k.cB=!1 +return}s=k.a1Y(j,A.rR()) +r=s.a +q=null +p=!1 +o=s.b +p=t.EE.b(o) +if(p)q=o +n=r +if(!p)throw A.d(A.a1("Pattern matching error")) +p=k.A +m=A.bxa(n,j,p) +k.id=A.bog(m,p) +p=m.a-n.a +l=m.b-n.b +k.cB=p<0||l<0 +k.a6B(q,new A.R(p,l),m,A.bY6(),A.bY5())}, +a1Y(a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=null,a="Pattern matching error" +switch(c.A.a){case 0:s=a0.b +s=new A.b3(new A.au(0,s,0,1/0),s) +break +case 1:s=a0.d +s=new A.b3(new A.au(0,1/0,0,s),s) +break +default:s=b}r=s.a +q=b +p=s.b +q=p +o=r +n=c.ga0R().a +m=n +l=c.a9 +k=A.a([],t.M6) +j=c.am$ +s=A.y(c).i("aD.1") +i=b +h=B.V +while(j!=null){g=A.bog(a1.$2(j,o),c.A) +f=i==null +e=f?new A.FK(g,j):i.b0A(j,g,m,l,q) +if(e!=null){k.push(e) +if(f)f=b +else{f=i.a +g=new A.R(f.b,f.a) +f=g}if(f==null)f=B.V +g=new A.R(h.a+f.a,Math.max(h.b,f.b)) +h=g +i=e}f=j.b +f.toString +j=s.a(f).aO$}s=c.aQ +f=k.length +d=i.a +h=A.aYV(h,A.aYV(new A.R(s*(f-1),0),new A.R(d.b,d.a))) +return new A.b3(new A.R(h.b,h.a),k)}, +a6B(b3,b4,b5,b6,b7){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5=this,a6=null,a7=a5.a9,a8=Math.max(0,b4.b),a9=a5.ga0R(),b0=a9.a,b1=a6,b2=a9.b +b1=b2 +s=a5.M +if(b1)s=s.gaxG() +r=a5.aC.H5(a8,a5.aQ,b3.length,b1) +q=r.a +p=a6 +o=r.b +p=o +n=b0?a5.gK3():a5.gCw() +for(m=J.ay(b1?new A.e5(b3,A.af(b3).i("e5<1>")):b3),l=b5.a,k=q;m.u();){j=m.gI(m) +i=j.a +h=i.b +g=j.b +f=Math.max(0,l-i.a) +e=a5.X.H5(f,a7,g,b0) +d=e.a +c=a6 +b=e.b +c=b +a=j.b +a0=j.c +a1=d +while(!0){if(!(a0!=null&&a>0))break +a2=A.bog(b7.$1(a0),a5.A) +a3=a6 +a4=a2.b +a3=a4 +b6.$2(a5.ayK(a1,k+s.gasf()*(h-a3)),a0) +a1+=a2.a+c +a0=n.$1(a0);--a}k+=h+p}}, +dU(a,b){return this.CX(a,b)}, +aT(a,b){var s,r=this,q=r.cB&&r.aE!==B.h,p=r.c4 +if(q){q=r.cx +q===$&&A.b() +s=r.gv(0) +p.sb0(0,a.og(q,b,new A.I(0,0,0+s.a,0+s.b),r.gacn(),r.aE,p.a))}else{p.sb0(0,null) +r.y5(a,b)}}, +m(){this.c4.sb0(0,null) +this.h0()}} +A.aP3.prototype={ +$2(a,b){var s=this.a +s.a=A.Ac(s.a,A.WU(b.ii(this.b,this.c),a.b))}, +$S:241} +A.aP4.prototype={ +$1(a){return a.aM(B.af,this.a,a.gdD())}, +$S:242} +A.ajy.prototype={ +aI(a){var s,r,q +this.eD(a) +s=this.am$ +for(r=t.aP;s!=null;){s.aI(a) +q=s.b +q.toString +s=r.a(q).aO$}}, +aB(a){var s,r,q +this.eE(0) +s=this.am$ +for(r=t.aP;s!=null;){s.aB(0) +q=s.b +q.toString +s=r.a(q).aO$}}} +A.ajz.prototype={} +A.pb.prototype={ +b01(){return this.a.$0()}} +A.F4.prototype={} +A.yp.prototype={ +D(){return"SchedulerPhase."+this.b}} +A.aMs.prototype={} +A.oL.prototype={ +agr(a){var s=this.fy$ +B.b.C(s,a) +if(s.length===0){s=$.bC() +s.dy=null +s.fr=$.ab}}, +axc(a){var s,r,q,p,o,n,m,l,k,j=this.fy$,i=A.a8(j,!0,t.xu) +for(o=i.length,n=0;n0)return!1 +if(i)A.V(A.a1(k)) +s=j.AR(0) +i=s.b +if(l.id$.$2$priority$scheduler(i,l)){try{if(j.c===0)A.V(A.a1(k));++j.d +j.AR(0) +o=j.aIy() +if(j.c>0)j.asz(o,0) +i=s +i.f.bv(0,i.b01())}catch(n){r=A.v(n) +q=A.aT(n) +p=null +i=A.c3("during a task callback") +m=p==null?null:new A.aQ6(p) +A.e9(new A.cM(r,q,"scheduler library",i,m,!1))}return j.c!==0}return!0}, +zU(a,b){var s,r=this +r.oy() +s=++r.k3$ +r.k4$.n(0,s,new A.F4(a)) +return r.k3$}, +zT(a){return this.zU(a,!1)}, +gaSU(){var s=this +if(s.p3$==null){if(s.R8$===B.fr)s.oy() +s.p3$=new A.aq(new A.a_($.ab,t.U),t.h) +s.p2$.push(new A.aQ4(s))}return s.p3$.a}, +gadB(){return this.RG$}, +a7P(a){if(this.RG$===a)return +this.RG$=a +if(a)this.oy()}, +ad1(){var s=$.bC() +if(s.ax==null){s.ax=this.gazq() +s.ay=$.ab}if(s.ch==null){s.ch=this.gaAa() +s.CW=$.ab}}, +VW(){switch(this.R8$.a){case 0:case 4:this.oy() +return +case 1:case 2:case 3:return}}, +oy(){var s,r=this +if(!r.p4$)s=!(A.oL.prototype.gadB.call(r)&&r.eN$) +else s=!0 +if(s)return +r.ad1() +$.bC().oy() +r.p4$=!0}, +ajT(){if(this.p4$)return +this.ad1() +$.bC().oy() +this.p4$=!0}, +Zk(){var s,r=this +if(r.rx$||r.R8$!==B.fr)return +r.rx$=!0 +s=r.p4$ +$.bC() +A.bZ(B.F,new A.aQ7(r)) +A.bZ(B.F,new A.aQ8(r,s)) +r.aWP(new A.aQ9(r))}, +a0B(a){var s=this.ry$ +return A.dA(B.d.aa((s==null?B.F:new A.bj(a.a-s.a)).a/1)+this.to$.a,0,0)}, +azr(a){if(this.rx$){this.y2$=!0 +return}this.adG(a)}, +aAb(){var s=this +if(s.y2$){s.y2$=!1 +s.p2$.push(new A.aQ3(s)) +return}s.adK()}, +adG(a){var s,r,q=this +if(q.ry$==null)q.ry$=a +r=a==null +q.x2$=q.a0B(r?q.x1$:a) +if(!r)q.x1$=a +q.p4$=!1 +try{q.R8$=B.Ny +s=q.k4$ +q.k4$=A.w(t.S,t.h1) +J.fz(s,new A.aQ5(q)) +q.ok$.V(0)}finally{q.R8$=B.Nz}}, +b_N(a){var s=this,r=s.bx$,q=r==null +if(!q&&r!==a)return null +if(r===a)++s.a2$ +else if(q){s.bx$=a +s.a2$=1}return new A.aMs(s.gawe())}, +awf(){if(--this.a2$===0){this.bx$=null +$.bC()}}, +adK(){var s,r,q,p,o,n,m,l,k=this +try{k.R8$=B.i2 +for(p=t.Vu,o=A.a8(k.p1$,!0,p),n=o.length,m=0;m0&&r<4){s=s.x2$ +s.toString +q.c=s}s=q.a +s.toString +return s}, +A9(a,b){var s=this,r=s.a +if(r==null)return +s.c=s.a=null +s.NT() +if(b)r.a8N(s) +else r.a8O()}, +f_(a){return this.A9(0,!1)}, +aLP(a){var s,r=this +r.e=null +s=r.c +if(s==null)s=r.c=a +r.d.$1(new A.bj(a.a-s.a)) +if(!r.b&&r.a!=null&&r.e==null)r.e=$.cp.zU(r.gJ2(),!0)}, +NT(){var s,r=this.e +if(r!=null){s=$.cp +s.k4$.C(0,r) +s.ok$.q(0,r) +this.e=null}}, +m(){var s=this,r=s.a +if(r!=null){s.a=null +s.NT() +r.a8N(s)}}, +j(a){var s=""+"Ticker()" +return s.charCodeAt(0)==0?s:s}} +A.yT.prototype={ +a8O(){this.c=!0 +this.a.d8(0) +var s=this.b +if(s!=null)s.d8(0)}, +a8N(a){var s +this.c=!1 +s=this.b +if(s!=null)s.dF(new A.P4(a))}, +ahR(a){var s,r,q=this,p=new A.aUH(a) +if(q.b==null){s=q.b=new A.aq(new A.a_($.ab,t.U),t.h) +r=q.c +if(r!=null)if(r)s.d8(0) +else s.dF(B.aup)}q.b.a.cv(p,p,t.H)}, +po(a,b){return this.a.a.po(a,b)}, +dc(a){return this.po(a,null)}, +cv(a,b,c){return this.a.a.cv(a,b,c)}, +ak(a,b){return this.cv(a,null,b)}, +NA(a){return this.cv(a,null,t.z)}, +t2(a,b,c){return this.a.a.t2(0,b,c)}, +fC(a){return this.a.a.fC(a)}, +j(a){var s=A.c5(this),r=this.c +if(r==null)r="active" +else r=r?"complete":"canceled" +return"#"+s+"("+r+")"}, +$ia2:1} +A.aUH.prototype={ +$1(a){this.a.$0()}, +$S:16} +A.P4.prototype={ +j(a){var s=this.a +if(s!=null)return"This ticker was canceled: "+s.j(0) +return'The ticker was canceled before the "orCancel" property was first used.'}, +$ibm:1} +A.a80.prototype={ +gBJ(){var s,r,q=this.ada$ +if(q===$){s=$.bC().c +r=$.aW() +q!==$&&A.aH() +q=this.ada$=new A.cS(s.c,r)}return q}, +aSV(){++this.W4$ +this.gBJ().sk(0,!0) +return new A.aR0(this.gavR())}, +avS(){--this.W4$ +this.gBJ().sk(0,this.W4$>0)}, +a4D(){var s,r=this +if($.bC().c.c){if(r.L2$==null)r.L2$=r.aSV()}else{s=r.L2$ +if(s!=null)s.a.$0() +r.L2$=null}}, +aC0(a){var s,r,q=a.d +if(t.V4.b(q)){s=B.bx.jY(q) +if(J.e(s,B.ix))s=q +r=new A.yA(a.a,a.b,a.c,s)}else r=a +s=this.dx$.h(0,r.b) +if(s!=null){s=s.y +if(s!=null){s=s.at +if(s!=null)s.aZe(r.c,r.a,r.d)}}}} +A.aR0.prototype={} +A.nl.prototype={ +j(a){return"SemanticsTag("+this.a+")"}} +A.Ap.prototype={} +A.Xj.prototype={} +A.AL.prototype={ +gB(a){return A.a4(null,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.AL&&b.b===this.b&&b.c===this.c}, +j(a){return"CustomSemanticsAction("+A.c($.blh.h(0,this))+", label:null, hint:"+this.b+", action:"+this.c.j(0)+")"}} +A.e8.prototype={ +ab(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.a8(this.b,!0,t.Vc) +q=b.b +p=q.length +if(p!==0)for(o=0;o=0;--o)r[o]=n[q-o-1].b}n=a4.fy +m=n.length +if(m!==0){l=new Int32Array(m) +for(o=0;o0?r[n-1].p3:null +if(n!==0)if(J.ah(l)===J.ah(o)){s=l==null||l.a==o.a +k=s}else k=!1 +else k=!0 +if(!k&&p.length!==0){if(o!=null)B.b.mE(p) +B.b.G(q,p) +B.b.V(p)}p.push(new A.ry(m,l,n))}if(o!=null)B.b.mE(p) +B.b.G(q,p) +s=t.rB +return A.a8(new A.ad(q,new A.aR2(),s),!0,s.i("aN.E"))}, +akf(a){if(this.ay==null)return +B.iu.fm(0,a.NH(this.b))}, +fb(){return"SemanticsNode#"+this.b}, +ah2(a){return new A.akb(this,null)}} +A.aR4.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&$.ap0():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 +p.db=a.y2 +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.bn(t.g3):r).G(0,s)}for(s=this.b.db,s=A.js(s,s.r),r=this.c;s.u();)r.q(0,A.atO(s.d)) +s=a.p1 +if(s!=null){s=s.a +if(s!=null)r.q(0,A.atO(new A.AL(s,B.fu))) +a.p1.toString}s=p.d +r=p.y +p.d=A.bht(a.fy,a.p2,s,r) +r=p.w +s=p.y +p.w=A.bht(a.k2,a.p2,r,s) +p.dx=Math.max(p.dx,a.ok+a.k4) +return!0}, +$S:142} +A.aR2.prototype={ +$1(a){return a.a}, +$S:451} +A.rh.prototype={ +bO(a,b){return B.d.bO(this.b,b.b)}, +$ida:1} +A.nK.prototype={ +bO(a,b){return B.d.bO(this.a,b.a)}, +alq(){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.a8(new A.hB(n,new A.bde(),s),!0,s.i("B.E"))}, +alp(){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.w(s,t.bu) +q=A.w(s,s) +for(p=this.b,o=p===B.ae,p=p===B.i,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.af(a3)) +B.b.fZ(a2,new A.bda()) +new A.ad(a2,new A.bdb(),A.af(a2).i("ad<1,t>")).az(0,new A.bdd(A.bn(s),q,a1)) +a3=t.qn +a3=A.a8(new A.ad(a1,new A.bdc(r),a3),!0,a3.i("aN.E")) +a4=A.af(a3).i("e5<1>") +return A.a8(new A.e5(a3,a4),!0,a4.i("aN.E"))}, +$ida:1} +A.bde.prototype={ +$1(a){return a.alp()}, +$S:245} +A.bda.prototype={ +$2(a,b){var s,r,q=a.e,p=A.zM(a,new A.z(q.a,q.b)) +q=b.e +s=A.zM(b,new A.z(q.a,q.b)) +r=B.d.bO(p.b,s.b) +if(r!==0)return-r +return-B.d.bO(p.a,s.a)}, +$S:139} +A.bdd.prototype={ +$1(a){var s=this,r=s.a +if(r.p(0,a))return +r.q(0,a) +r=s.b +if(r.N(0,a)){r=r.h(0,a) +r.toString +s.$1(r)}s.c.push(a)}, +$S:23} +A.bdb.prototype={ +$1(a){return a.b}, +$S:454} +A.bdc.prototype={ +$1(a){var s=this.a.h(0,a) +s.toString +return s}, +$S:455} +A.bhn.prototype={ +$1(a){return a.alq()}, +$S:245} +A.ry.prototype={ +bO(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.bO(0,s)}, +$ida:1} +A.ND.prototype={ +m(){var s=this +s.b.V(0) +s.c.V(0) +s.d.V(0) +s.dN()}, +akk(){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.bn(t.S) +r=A.a([],t.QF) +for(q=A.y(f).i("bh<1>"),p=q.i("B.E"),o=g.d;f.a!==0;){n=A.a8(new A.bh(f,new A.aR7(g),q),!0,p) +f.V(0) +o.V(0) +B.b.fZ(n,new A.aR8()) +B.b.G(r,n) +for(m=n.length,l=0;l#"+A.c5(this)}} +A.aR7.prototype={ +$1(a){return!this.a.d.p(0,a)}, +$S:142} +A.aR8.prototype={ +$2(a,b){return a.CW-b.CW}, +$S:139} +A.aR9.prototype={ +$2(a,b){return a.CW-b.CW}, +$S:139} +A.aR6.prototype={ +$1(a){if(a.cy.N(0,this.b)){this.a.a=a +return!1}return!0}, +$S:142} +A.nk.prototype={ +tF(a,b){var s=this +s.f.n(0,a,b) +s.r=s.r|a.a +s.e=!0}, +jO(a,b){this.tF(a,new A.aQQ(b))}, +srR(a){a.toString +this.jO(B.fu,a)}, +srQ(a){a.toString +this.jO(B.NM,a)}, +sMI(a){this.jO(B.jW,a)}, +sMx(a){this.jO(B.alJ,a)}, +sMJ(a){this.jO(B.jX,a)}, +sMK(a){this.jO(B.jU,a)}, +sMH(a){this.jO(B.jV,a)}, +sMz(a){this.jO(B.NN,a)}, +sMu(a){this.jO(B.NL,a)}, +sMs(a,b){this.jO(B.alK,b)}, +sMt(a,b){this.jO(B.alO,b)}, +sMF(a,b){this.jO(B.alF,b)}, +sMD(a){this.tF(B.alM,new A.aQU(a))}, +sMB(a){this.tF(B.alP,new A.aQS(a))}, +sME(a){this.tF(B.alN,new A.aQV(a))}, +sMC(a){this.tF(B.alE,new A.aQT(a))}, +sML(a){this.tF(B.alG,new A.aQW(a))}, +sMM(a){this.tF(B.alH,new A.aQX(a))}, +sMv(a){this.jO(B.rI,a)}, +sMw(a){this.jO(B.rJ,a)}, +sMy(a,b){this.jO(B.alL,b)}, +sajX(a){if(a==this.ok)return +this.ok=a +this.e=!0}, +sajZ(a){if(a==this.p1)return +this.p1=a +this.e=!0}, +sMf(a){if(a==this.p3)return +this.p3=a +this.e=!0}, +sKo(a){if(a==this.p4)return +this.p4=a +this.e=!0}, +gk(a){return this.to.a}, +saV7(a){if(a==null)return +this.y2=a +this.e=!0}, +seK(a,b){if(b===this.bG)return +this.bG=b +this.e=!0}, +sWI(a){this.by=a +this.e=!0}, +Uz(a){var s=this.a9;(s==null?this.a9=A.bn(t.g3):s).q(0,a)}, +c6(a,b){var s=this,r=s.aC,q=a.a +if(b)s.aC=r|q +else s.aC=r&~q +s.e=!0}, +aeC(a){var s=this +if(a==null||!a.e||!s.e)return!0 +if((s.r&a.r)!==0)return!1 +if((s.aC&a.aC)!==0)return!1 +if(s.p2!=null&&a.p2!=null)return!1 +if(s.p3!=null&&a.p3!=null)return!1 +if(s.p4!=null&&a.p4!=null)return!1 +if(s.to.a.length!==0&&a.to.a.length!==0)return!1 +return!0}, +qU(a){var s,r,q,p=this +if(!a.e)return +s=a.f +if(a.b)s.az(0,new A.aQR(p)) +else p.f.G(0,s) +s=p.r +r=a.b +q=a.r +p.r=s|(r?q&$.ap0():q) +p.RG.G(0,a.RG) +p.aC=p.aC|a.aC +if(p.bI==null)p.bI=a.bI +if(p.bR==null)p.bR=a.bR +if(p.A==null)p.A=a.A +if(p.X==null)p.X=a.X +if(p.y2==null)p.y2=a.y2 +if(p.k4==null)p.k4=a.k4 +if(p.p1==null)p.p1=a.p1 +if(p.ok==null)p.ok=a.ok +if(p.p2==null)p.p2=a.p2 +if(p.p3==null)p.p3=a.p3 +if(p.p4==null)p.p4=a.p4 +s=p.a2 +if(s==null){s=p.a2=a.a2 +p.e=!0}if(p.k3==null)p.k3=a.k3 +if(p.rx==="")p.rx=a.rx +r=p.ry +p.ry=A.bht(a.ry,a.a2,r,s) +if(p.to.a==="")p.to=a.to +if(p.x1.a==="")p.x1=a.x1 +if(p.x2.a==="")p.x2=a.x2 +s=p.xr +r=p.a2 +p.xr=A.bht(a.xr,a.a2,s,r) +if(p.y1==="")p.y1=a.y1 +p.bx=Math.max(p.bx,a.bx+a.bG) +p.e=p.e||a.e}, +aQb(){var s=this,r=A.oN() +r.a=s.a +r.c=s.c +r.d=s.d +r.e=s.e +r.R8=s.R8 +r.a2=s.a2 +r.k3=s.k3 +r.rx=s.rx +r.ry=s.ry +r.x1=s.x1 +r.to=s.to +r.x2=s.x2 +r.xr=s.xr +r.y2=s.y2 +r.y1=s.y1 +r.bG=s.bG +r.bx=s.bx +r.aC=s.aC +r.a9=s.a9 +r.bI=s.bI +r.bR=s.bR +r.A=s.A +r.X=s.X +r.r=s.r +r.k4=s.k4 +r.p1=s.p1 +r.ok=s.ok +r.p2=s.p2 +r.p3=s.p3 +r.p4=s.p4 +r.f.G(0,s.f) +r.RG.G(0,s.RG) +r.b=s.b +r.by=s.by +return r}} +A.aQQ.prototype={ +$1(a){this.a.$0()}, +$S:14} +A.aQU.prototype={ +$1(a){a.toString +this.a.$1(A.Gh(a))}, +$S:14} +A.aQS.prototype={ +$1(a){a.toString +this.a.$1(A.Gh(a))}, +$S:14} +A.aQV.prototype={ +$1(a){a.toString +this.a.$1(A.Gh(a))}, +$S:14} +A.aQT.prototype={ +$1(a){a.toString +this.a.$1(A.Gh(a))}, +$S:14} +A.aQW.prototype={ +$1(a){var s,r,q +a.toString +s=J.mu(t.f.a(a),t.N,t.S) +r=s.h(0,"base") +r.toString +q=s.h(0,"extent") +q.toString +this.a.$1(A.dx(B.q,r,q,!1))}, +$S:14} +A.aQX.prototype={ +$1(a){a.toString +this.a.$1(A.bS(a))}, +$S:14} +A.aQR.prototype={ +$2(a,b){if(($.ap0()&a.a)>0)this.a.f.n(0,a,b)}, +$S:457} +A.aua.prototype={ +D(){return"DebugSemanticsDumpOrder."+this.b}} +A.Dq.prototype={ +bO(a,b){var s,r=this.a,q=b.a +if(r==q)return this.aSi(b) +s=r==null +if(s&&q!=null)return-1 +else if(!s&&q==null)return 1 +r.toString +q.toString +return B.c.bO(r,q)}, +$ida:1} +A.xR.prototype={ +aSi(a){var s=a.b,r=this.b +if(s===r)return 0 +return B.e.bO(r,s)}} +A.aka.prototype={} +A.akd.prototype={} +A.ake.prototype={} +A.aQZ.prototype={ +NH(a){var s=A.C(["type",this.a,"data",this.zF()],t.N,t.z) +if(a!=null)s.n(0,"nodeId",a) +return s}, +b0e(){return this.NH(null)}, +j(a){var s,r,q,p=A.a([],t.s),o=this.zF(),n=J.nX(o.gd1(o)) +B.b.mE(n) +for(s=n.length,r=0;r#"+A.c5(this)+"()"}} +A.arw.prototype={ +rK(a,b){if(b)return this.a.cP(0,a,new A.arx(this,a)) +return this.ZZ(a,!0)}, +X4(a){return this.rK(a,!0)}, +aWK(a,b,c){var s,r=this,q={},p=r.b +if(p.N(0,a)){q=p.h(0,a) +q.toString +return c.i("a2<0>").a(q)}q.a=q.b=null +r.rK(a,!1).ak(b,c).cv(new A.ary(q,r,a,c),new A.arz(q,r,a),t.H) +s=q.a +if(s!=null)return s +s=new A.a_($.ab,c.i("a_<0>")) +q.b=new A.aq(s,c.i("aq<0>")) +p.n(0,a,s) +return q.b.a}} +A.arx.prototype={ +$0(){return this.a.ZZ(this.b,!0)}, +$S:458} +A.ary.prototype={ +$1(a){var s=this,r=new A.cv(a,s.d.i("cv<0>")),q=s.a +q.a=r +s.b.b.n(0,s.c,r) +q=q.b +if(q!=null)q.bv(0,a)}, +$S(){return this.d.i("aF(0)")}} +A.arz.prototype={ +$2(a,b){this.b.b.C(0,this.c) +this.a.b.dh(a,b)}, +$S:25} +A.aME.prototype={ +iC(a,b){var s,r=null,q=B.ao.b4(A.rA(r,r,A.rB(B.qk,b,B.a5,!1),r,r,r,r,r,r).e),p=$.h2.uV$ +p===$&&A.b() +s=p.OB(0,"flutter/assets",A.bl_(q)).ak(new A.aMF(b),t.V4) +return s}, +M4(a){return this.aWF(a)}, +aWF(a){var s=0,r=A.n(t.SG),q,p=this,o,n +var $async$M4=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=A +n=A +s=3 +return A.f(p.iC(0,a),$async$M4) +case 3:q=o.tG(n.a9P(c,0,null)) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$M4,r)}} +A.aMF.prototype={ +$1(a){if(a==null)throw A.d(A.wU(A.a([A.bSH(this.a),A.c3("The asset does not exist or has empty data.")],t.E))) +return a}, +$S:459} +A.aq3.prototype={ +$1(a){return this.ai2(a)}, +ai2(a){var s=0,r=A.n(t.CL),q +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=new A.zb(t.pE.a(B.bx.jY(A.bl_(B.da.b4(A.bS(B.a7.ei(0,a)))))),A.w(t.N,t.Rk)) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:460} +A.zb.prototype={ +aiJ(a){var s,r,q,p=this.b +if(!p.N(0,a)){s=this.a +r=J.a0(s) +if(r.h(s,a)==null)return null +q=r.h(s,a) +if(q==null)q=[] +q=J.A_(t.VG.a(q),t.pE) +p.n(0,a,q.eR(q,new A.aYE(a),t.pR).cJ(0)) +r.C(s,a)}p=p.h(0,a) +p.toString +return p}, +$iaq2:1} +A.aYE.prototype={ +$1(a){var s,r=J.a0(a),q=r.h(a,"asset") +q.toString +A.bS(q) +s=r.h(a,"dpr") +r=r.h(a,"asset") +r.toString +A.bS(r) +return new A.t5(A.boN(s),r)}, +$S:333} +A.t5.prototype={} +A.H6.prototype={ +ao(){var s,r,q=this +if(q.a){s=A.w(t.N,t.z) +s.n(0,"uniqueIdentifier",q.b) +s.n(0,"hints",q.c) +s.n(0,"editingValue",q.d.Ye()) +r=q.e +if(r!=null)s.n(0,"hintText",r)}else s=null +return s}} +A.aqB.prototype={} +A.NJ.prototype={ +aDo(){var s,r,q=this,p=t.v3,o=new A.aB_(A.w(p,t.G),A.bn(t.SQ),A.a([],t.sA)) +q.yw$!==$&&A.d1() +q.yw$=o +s=$.aoU() +r=A.a([],t.K0) +q.yx$!==$&&A.d1() +q.yx$=new A.a1n(o,s,r,A.bn(p)) +p=q.yw$ +p===$&&A.b() +p.Gx().ak(new A.aRo(q),t.P)}, +Du(){var s=$.vX() +s.a.V(0) +s.b.V(0) +s.c.V(0)}, +rB(a){return this.aUE(a)}, +aUE(a){var s=0,r=A.n(t.H),q,p=this +var $async$rB=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:switch(A.bS(J.i(t.a.a(a),"type"))){case"memoryPressure":p.Du() +break}s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$rB,r)}, +as2(){var s=A.bu("controller") +s.sfI(A.i9(null,new A.aRn(s),null,null,!1,t.hz)) +return J.bqN(s.b2())}, +b_5(){if(this.go$==null)$.bC() +return}, +RM(a){return this.aAJ(a)}, +aAJ(a){var s=0,r=A.n(t.T),q,p=this,o,n +var $async$RM=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:a.toString +o=A.bNv(a) +n=p.go$ +o.toString +B.b.az(p.ay4(n,o),p.gaTH()) +q=null +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$RM,r)}, +ay4(a,b){var s,r,q,p +if(a===b)return B.aaf +s=A.a([],t.QP) +if(a==null)s.push(b) +else{r=B.b.dV(B.jm,a) +q=B.b.dV(B.jm,b) +if(b===B.fR){for(p=r+1;p<5;++p)s.push(B.jm[p]) +s.push(B.fR)}else if(r>q)for(p=q;p") +r=A.f8(new A.aR(c,s),s.i("B.E")) +q=A.a([],t.K0) +p=c.h(0,b) +o=$.h2.x1$ +n=a0.a +if(n==="")n=d +m=e.auS(a0) +if(a0 instanceof A.ut)if(p==null){l=new A.op(b,a,n,o,!1) +r.q(0,b)}else l=A.btS(n,m,p,b,o) +else if(p==null)l=d +else{l=A.btT(m,p,b,!1,o) +r.C(0,b)}for(s=e.c.d,k=A.y(s).i("aR<1>"),j=k.i("B.E"),i=r.hC(A.f8(new A.aR(s,k),j)),i=i.gav(i),h=e.e;i.u();){g=i.gI(i) +if(g.l(0,b))q.push(new A.xm(g,a,d,o,!0)) +else{f=c.h(0,g) +f.toString +h.push(new A.xm(g,f,d,o,!0))}}for(c=A.f8(new A.aR(s,k),j).hC(r),c=c.gav(c);c.u();){k=c.gI(c) +j=s.h(0,k) +j.toString +h.push(new A.op(k,j,d,o,!0))}if(l!=null)h.push(l) +B.b.G(h,q)}} +A.agy.prototype={} +A.aDn.prototype={ +j(a){return"KeyboardInsertedContent("+this.a+", "+this.b+", "+A.c(this.c)+")"}, +l(a,b){var s,r,q=this +if(b==null)return!1 +if(J.ah(b)!==A.K(q))return!1 +s=!1 +if(b instanceof A.aDn)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}return s}, +gB(a){return A.a4(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.aDo.prototype={} +A.x.prototype={ +gB(a){return B.e.gB(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.x&&b.a===this.a}} +A.aFe.prototype={ +$1(a){var s=$.bBz().h(0,a) +return s==null?A.cI([a],t.G):s}, +$S:246} +A.aFg.prototype={ +$1(a){var s=$.bBy().h(0,a) +return s==null?A.cI([a],t.G):s}, +$S:246} +A.L.prototype={ +gB(a){return B.e.gB(this.a)}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.L&&b.a===this.a}} +A.agz.prototype={} +A.n1.prototype={ +j(a){return"MethodCall("+this.a+", "+A.c(this.b)+")"}} +A.xZ.prototype={ +j(a){var s=this +return"PlatformException("+s.a+", "+A.c(s.b)+", "+A.c(s.c)+", "+A.c(s.d)+")"}, +$ibm:1} +A.L8.prototype={ +j(a){return"MissingPluginException("+A.c(this.a)+")"}, +$ibm:1} +A.aSX.prototype={ +jY(a){if(a==null)return null +return B.a5.ei(0,A.a9P(a,0,null))}, +e_(a){if(a==null)return null +return A.bl_(B.ao.b4(a))}} +A.aCW.prototype={ +e_(a){if(a==null)return null +return B.ox.e_(B.a7.lw(a))}, +jY(a){var s +if(a==null)return a +s=B.ox.jY(a) +s.toString +return B.a7.ei(0,s)}} +A.aCY.prototype={ +n2(a){var s=B.eJ.e_(A.C(["method",a.a,"args",a.b],t.N,t.X)) +s.toString +return s}, +m6(a){var s,r,q,p=null,o=B.eJ.jY(a) +if(!t.f.b(o))throw A.d(A.bL("Expected method call Map, got "+A.c(o),p,p)) +s=J.a0(o) +r=s.h(o,"method") +q=s.h(o,"args") +if(typeof r=="string")return new A.n1(r,q) +throw A.d(A.bL("Invalid method call: "+A.c(o),p,p))}, +Vv(a){var s,r,q,p=null,o=B.eJ.jY(a) +if(!t.j.b(o))throw A.d(A.bL("Expected envelope List, got "+A.c(o),p,p)) +s=J.a0(o) +if(s.gt(o)===1)return s.h(o,0) +r=!1 +if(s.gt(o)===3)if(typeof s.h(o,0)=="string")r=s.h(o,1)==null||typeof s.h(o,1)=="string" +if(r){r=A.bS(s.h(o,0)) +q=A.dk(s.h(o,1)) +throw A.d(A.bnl(r,s.h(o,2),q,p))}r=!1 +if(s.gt(o)===4)if(typeof s.h(o,0)=="string")if(s.h(o,1)==null||typeof s.h(o,1)=="string")r=s.h(o,3)==null||typeof s.h(o,3)=="string" +if(r){r=A.bS(s.h(o,0)) +q=A.dk(s.h(o,1)) +throw A.d(A.bnl(r,s.h(o,2),q,A.dk(s.h(o,3))))}throw A.d(A.bL("Invalid envelope: "+A.c(o),p,p))}, +De(a){var s=B.eJ.e_([a]) +s.toString +return s}, +uN(a,b,c){var s=B.eJ.e_([a,c,b]) +s.toString +return s}, +acY(a,b){return this.uN(a,null,b)}} +A.aSm.prototype={ +e_(a){var s +if(a==null)return null +s=A.aX7(64) +this.ih(0,s,a) +return s.rd()}, +jY(a){var s,r +if(a==null)return null +s=new A.Mw(a) +r=this.mp(0,s) +if(s.b=b.a.byteLength)throw A.d(B.cx) +return this.q0(b.no(0),b)}, +q0(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=$.fS() +q=b.a.getInt32(s,B.an===r) +b.b+=4 +return q +case 4:return b.Oh(0) +case 6:b.nu(8) +s=b.b +r=$.fS() +q=b.a.getFloat64(s,B.an===r) +b.b+=8 +return q +case 5:case 7:p=k.j7(b) +return B.eA.b4(b.qg(p)) +case 8:return b.qg(k.j7(b)) +case 9:p=k.j7(b) +b.nu(4) +s=b.a +o=A.aKe(s.buffer,s.byteOffset+b.b,p) +b.b=b.b+4*p +return o +case 10:return b.Oi(k.j7(b)) +case 14:p=k.j7(b) +b.nu(4) +s=b.a +o=A.buy(s.buffer,s.byteOffset+b.b,p) +b.b=b.b+4*p +return o +case 11:p=k.j7(b) +b.nu(8) +s=b.a +o=A.bn1(s.buffer,s.byteOffset+b.b,p) +b.b=b.b+8*p +return o +case 12:p=k.j7(b) +n=A.bO(p,null,!1,t.X) +for(s=b.a,m=0;m=s.byteLength)A.V(B.cx) +b.b=r+1 +n[m]=k.q0(s.getUint8(r),b)}return n +case 13:p=k.j7(b) +s=t.X +n=A.w(s,s) +for(s=b.a,m=0;m=s.byteLength)A.V(B.cx) +b.b=r+1 +r=k.q0(s.getUint8(r),b) +l=b.b +if(l>=s.byteLength)A.V(B.cx) +b.b=l+1 +n.n(0,r,k.q0(s.getUint8(l),b))}return n +default:throw A.d(B.cx)}}, +kn(a,b){var s,r +if(b<254)a.iS(0,b) +else{s=a.d +if(b<=65535){a.iS(0,254) +r=$.fS() +s.setUint16(0,b,B.an===r) +a.Ap(a.e,0,2)}else{a.iS(0,255) +r=$.fS() +s.setUint32(0,b,B.an===r) +a.Ap(a.e,0,4)}}}, +j7(a){var s,r,q=a.no(0) +$label0$0:{if(254===q){s=a.b +r=$.fS() +q=a.a.getUint16(s,B.an===r) +a.b+=2 +s=q +break $label0$0}if(255===q){s=a.b +r=$.fS() +q=a.a.getUint32(s,B.an===r) +a.b+=4 +s=q +break $label0$0}s=q +break $label0$0}return s}} +A.aSn.prototype={ +$2(a,b){var s=this.a,r=this.b +s.ih(0,r,a) +s.ih(0,r,b)}, +$S:129} +A.aSq.prototype={ +n2(a){var s=A.aX7(64) +B.bx.ih(0,s,a.a) +B.bx.ih(0,s,a.b) +return s.rd()}, +m6(a){var s,r,q +a.toString +s=new A.Mw(a) +r=B.bx.mp(0,s) +q=B.bx.mp(0,s) +if(typeof r=="string"&&s.b>=a.byteLength)return new A.n1(r,q) +else throw A.d(B.xv)}, +De(a){var s=A.aX7(64) +s.iS(0,0) +B.bx.ih(0,s,a) +return s.rd()}, +uN(a,b,c){var s=A.aX7(64) +s.iS(0,1) +B.bx.ih(0,s,a) +B.bx.ih(0,s,c) +B.bx.ih(0,s,b) +return s.rd()}, +acY(a,b){return this.uN(a,null,b)}, +Vv(a){var s,r,q,p,o,n +if(a.byteLength===0)throw A.d(B.a0S) +s=new A.Mw(a) +if(s.no(0)===0)return B.bx.mp(0,s) +r=B.bx.mp(0,s) +q=B.bx.mp(0,s) +p=B.bx.mp(0,s) +o=s.b=a.byteLength +else n=!1 +if(n)throw A.d(A.bnl(r,p,A.dk(q),o)) +else throw A.d(B.a0R)}} +A.aIV.prototype={ +aTM(a,b,c){var s,r,q,p,o +if(t.PB.b(b)){this.b.C(0,a) +return}s=this.b +r=s.h(0,a) +q=A.bPw(c) +if(q==null)q=this.a +p=r==null +if(J.e(p?null:r.gCS(r),q))return +o=q.Kn(a) +s.n(0,a,o) +if(!p)r.m() +o.c0()}} +A.Le.prototype={ +gCS(a){return this.a}} +A.eG.prototype={ +j(a){var s=this.gKr() +return s}} +A.aev.prototype={ +Kn(a){throw A.d(A.cE(null))}, +gKr(){return"defer"}} +A.al4.prototype={ +gCS(a){return t.U8.a(this.a)}, +c0(){return B.ajw.e0("activateSystemCursor",A.C(["device",this.b,"kind",t.U8.a(this.a).a],t.N,t.z),t.H)}, +m(){}} +A.oT.prototype={ +gKr(){return"SystemMouseCursor("+this.a+")"}, +Kn(a){return new A.al4(this,a)}, +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.oT&&b.a===this.a}, +gB(a){return B.c.gB(this.a)}} +A.ahi.prototype={} +A.t7.prototype={ +gCr(){var s=$.h2.uV$ +s===$&&A.b() +return s}, +fm(a,b){return this.aka(0,b,this.$ti.i("1?"))}, +aka(a,b,c){var s=0,r=A.n(c),q,p=this,o,n,m +var $async$fm=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:o=p.b +n=p.gCr().OB(0,p.a,o.e_(b)) +m=o +s=3 +return A.f(t.T8.b(n)?n:A.en(n,t.CD),$async$fm) +case 3:q=m.jY(e) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$fm,r)}, +FR(a){this.gCr().FS(this.a,new A.aqz(this,a))}} +A.aqz.prototype={ +$1(a){return this.ai3(a)}, +ai3(a){var s=0,r=A.n(t.CD),q,p=this,o,n +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=p.a.b +n=o +s=3 +return A.f(p.b.$1(o.jY(a)),$async$$1) +case 3:q=n.e_(c) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:247} +A.n2.prototype={ +gCr(){var s=$.h2.uV$ +s===$&&A.b() +return s}, +le(a,b,c,d){return this.aDL(a,b,c,d,d.i("0?"))}, +aDL(a,b,c,d,e){var s=0,r=A.n(e),q,p=this,o,n,m,l,k +var $async$le=A.j(function(f,g){if(f===1)return A.k(g,r) +while(true)switch(s){case 0:o=p.b +n=o.n2(new A.n1(a,b)) +m=p.a +l=p.gCr().OB(0,m,n) +s=3 +return A.f(t.T8.b(l)?l:A.en(l,t.CD),$async$le) +case 3:k=g +if(k==null){if(c){q=null +s=1 +break}throw A.d(A.aIJ("No implementation found for method "+a+" on channel "+m))}q=d.i("0?").a(o.Vv(k)) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$le,r)}, +e0(a,b,c){return this.le(a,b,!1,c)}, +LO(a,b,c,d){return this.aVW(a,b,c,d,c.i("@<0>").aH(d).i("ao<1,2>?"))}, +WS(a,b,c){return this.LO(a,null,b,c)}, +aVW(a,b,c,d,e){var s=0,r=A.n(e),q,p=this,o +var $async$LO=A.j(function(f,g){if(f===1)return A.k(g,r) +while(true)switch(s){case 0:s=3 +return A.f(p.e0(a,b,t.f),$async$LO) +case 3:o=g +q=o==null?null:J.mu(o,c,d) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$LO,r)}, +tq(a){var s=this.gCr() +s.FS(this.a,new A.aIB(this,a))}, +Hw(a,b){return this.azk(a,b)}, +azk(a,b){var s=0,r=A.n(t.CD),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$Hw=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:h=n.b +g=h.m6(a) +p=4 +e=h +s=7 +return A.f(b.$1(g),$async$Hw) +case 7:k=e.De(d) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +k=A.v(f) +if(k instanceof A.xZ){m=k +k=m.a +i=m.b +q=h.uN(k,m.c,i) +s=1 +break}else if(k instanceof A.L8){q=null +s=1 +break}else{l=k +h=h.acY("error",J.p(l)) +q=h +s=1 +break}s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Hw,r)}} +A.aIB.prototype={ +$1(a){return this.a.Hw(a,this.b)}, +$S:247} +A.l_.prototype={ +e0(a,b,c){return this.aVX(a,b,c,c.i("0?"))}, +o2(a,b){return this.e0(a,null,b)}, +aVX(a,b,c,d){var s=0,r=A.n(d),q,p=this +var $async$e0=A.j(function(e,f){if(e===1)return A.k(f,r) +while(true)switch(s){case 0:q=p.amM(a,b,!0,c) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$e0,r)}} +A.ayi.prototype={ +b_a(){var s=new A.n2(u.W,B.bT),r=A.bu("controller") +r.b=new A.cd(new A.ayk(this,r,s,null),new A.ayl(this,s,null),t.zr) +return J.bqN(r.b2())}} +A.ayk.prototype={ +$0(){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j +var $async$$0=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:k=$.h2.uV$ +k===$&&A.b() +k.FS(u.W,new A.ayj(o.a,o.b)) +q=3 +s=6 +return A.f(o.c.le("listen",o.d,!1,t.H),$async$$0) +case 6:q=1 +s=5 +break +case 3:q=2 +j=p +n=A.v(j) +m=A.aT(j) +k=A.c3("while activating platform stream on channel dev.fluttercommunity.plus/connectivity_status") +A.e9(new A.cM(n,m,"services library",k,null,!1)) +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.ayj.prototype={ +$1(a){return this.ai8(a)}, +ai8(a){var s=0,r=A.n(t.P),q,p=this,o,n,m +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:if(a==null)J.A0(p.b.b2()) +else try{J.dN(p.b.b2(),B.bT.Vv(a))}catch(l){m=A.v(l) +if(m instanceof A.xZ){o=m +p.b.b2().pd(o)}else throw l}q=null +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:470} +A.ayl.prototype={ +$0(){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j +var $async$$0=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:k=$.h2.uV$ +k===$&&A.b() +k.FS(u.W,null) +q=3 +s=6 +return A.f(o.b.le("cancel",o.c,!1,t.H),$async$$0) +case 6:q=1 +s=5 +break +case 3:q=2 +j=p +n=A.v(j) +m=A.aT(j) +k=A.c3("while de-activating platform stream on channel dev.fluttercommunity.plus/connectivity_status") +A.e9(new A.cM(n,m,"services library",k,null,!1)) +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.Oz.prototype={ +D(){return"SwipeEdge."+this.b}} +A.a6d.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.a6d&&J.e(s.a,b.a)&&s.b===b.b&&s.c===b.c}, +gB(a){return A.a4(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"PredictiveBackEvent{touchOffset: "+A.c(this.a)+", progress: "+A.c(this.b)+", swipeEdge: "+this.c.j(0)+"}"}} +A.CW.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.CW&&b.a===this.a&&b.b===this.b}, +gB(a){return A.a4(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.aug.prototype={ +Nb(){var s=0,r=A.n(t.Xf),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$Nb=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:g=null +p=4 +l=n.a +l===$&&A.b() +e=t.J1 +s=7 +return A.f(l.o2("ProcessText.queryTextActions",t.z),$async$Nb) +case 7:m=e.a(b) +if(m==null){l=A.a([],t.RW) +q=l +s=1 +break}g=m +p=2 +s=6 +break +case 4:p=3 +f=o +l=A.a([],t.RW) +q=l +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:l=A.a([],t.RW) +for(j=J.ay(J.rX(g));j.u();){i=j.gI(j) +i.toString +A.bS(i) +h=J.i(g,i) +h.toString +l.push(new A.CW(i,A.bS(h)))}q=l +s=1 +break +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Nb,r)}, +N5(a,b,c){return this.aZC(a,b,c)}, +aZC(a,b,c){var s=0,r=A.n(t.T),q,p=this,o,n +var $async$N5=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:o=p.a +o===$&&A.b() +n=A +s=3 +return A.f(o.e0("ProcessText.processTextAction",[a,b,c],t.z),$async$N5) +case 3:q=n.dk(e) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$N5,r)}} +A.xn.prototype={ +D(){return"KeyboardSide."+this.b}} +A.kS.prototype={ +D(){return"ModifierKey."+this.b}} +A.Mu.prototype={ +gaXq(){var s,r,q=A.w(t.xS,t.Dk) +for(s=0;s<9;++s){r=B.Cp[s] +if(this.aWc(r))q.n(0,r,B.hp)}return q}} +A.qI.prototype={} +A.aNl.prototype={ +$0(){var s,r,q,p=this.b,o=J.a0(p),n=A.dk(o.h(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.dk(o.h(p,"code")) +if(s==null)s="" +m=m?"":n +r=A.jU(o.h(p,"location")) +if(r==null)r=0 +q=A.jU(o.h(p,"metaState")) +if(q==null)q=0 +p=A.jU(o.h(p,"keyCode")) +return new A.a6v(s,m,r,q,p==null?0:p)}, +$S:471} +A.ut.prototype={} +A.y9.prototype={} +A.aNo.prototype={ +aUt(a){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(a instanceof A.ut){o=a.c +h.d.n(0,o.gnf(),o.gz0())}else if(a instanceof A.y9)h.d.C(0,a.c.gnf()) +h.aLv(a) +for(o=h.a,n=A.a8(o,!0,t.Sp),m=n.length,l=0;l")),e),a0=a1 instanceof A.ut +if(a0)a.q(0,g.gnf()) +for(s=g.a,r=null,q=0;q<9;++q){p=B.Cp[q] +o=$.bCi() +n=o.h(0,new A.eW(p,B.dP)) +if(n==null)continue +m=B.J4.h(0,s) +if(n.p(0,m==null?new A.L(98784247808+B.c.gB(s)):m))r=p +if(f.h(0,p)===B.hp){c.G(0,n) +if(n.fQ(0,a.gps(a)))continue}l=f.h(0,p)==null?A.bn(e):o.h(0,new A.eW(p,f.h(0,p))) +if(l==null)continue +for(o=A.y(l),m=new A.vt(l,l.r,o.i("vt<1>")),m.c=l.e,o=o.c;m.u();){k=m.d +if(k==null)k=o.a(k) +j=$.bCh().h(0,k) +j.toString +d.n(0,k,j)}}i=b.h(0,B.fm)!=null&&!J.e(b.h(0,B.fm),B.js) +for(e=$.bq4(),e=A.js(e,e.r);e.u();){a=e.d +h=i&&a.l(0,B.fm) +if(!c.p(0,a)&&!h)b.C(0,a)}b.C(0,B.jG) +b.G(0,d) +if(a0&&r!=null&&!b.N(0,g.gnf())){e=g.gnf().l(0,B.hX) +if(e)b.n(0,g.gnf(),g.gz0())}}} +A.eW.prototype={ +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.eW&&b.a===this.a&&b.b==this.b}, +gB(a){return A.a4(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.aiH.prototype={} +A.aiG.prototype={} +A.a6v.prototype={ +gnf(){var s=this.a,r=B.J4.h(0,s) +return r==null?new A.L(98784247808+B.c.gB(s)):r}, +gz0(){var s,r=this.b,q=B.aez.h(0,r),p=q==null?null:q[this.c] +if(p!=null)return p +s=B.agA.h(0,r) +if(s!=null)return s +if(r.length===1)return new A.x(r.toLowerCase().charCodeAt(0)) +return new A.x(B.c.gB(this.a)+98784247808)}, +aWc(a){var s,r=this +$label0$0:{if(B.hJ===a){s=(r.d&4)!==0 +break $label0$0}if(B.hK===a){s=(r.d&1)!==0 +break $label0$0}if(B.hL===a){s=(r.d&2)!==0 +break $label0$0}if(B.hM===a){s=(r.d&8)!==0 +break $label0$0}if(B.qA===a){s=(r.d&16)!==0 +break $label0$0}if(B.qz===a){s=(r.d&32)!==0 +break $label0$0}if(B.qB===a){s=(r.d&64)!==0 +break $label0$0}if(B.qC===a||B.J7===a){s=!1 +break $label0$0}s=null}return s}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.a6v&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.e===s.e}, +gB(a){var s=this +return A.a4(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.N9.prototype={ +gb_X(){var s=this +if(s.c)return new A.cv(s.a,t.hr) +if(s.b==null){s.b=new A.aq(new A.a_($.ab,t.X6),t.E_) +s.Hv()}return s.b.a}, +Hv(){var s=0,r=A.n(t.H),q,p=this,o +var $async$Hv=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=3 +return A.f(B.ri.o2("get",t.pE),$async$Hv) +case 3:o=b +if(p.b==null){s=1 +break}p.a6p(o) +case 1:return A.l(q,r)}}) +return A.m($async$Hv,r)}, +a6p(a){var s,r=a==null +if(!r){s=J.i(a,"enabled") +s.toString +A.Gh(s)}else s=!1 +this.aUv(r?null:t.nc.a(J.i(a,"data")),s)}, +aUv(a,b){var s,r,q=this,p=q.c&&b +q.d=p +if(p)$.cp.p2$.push(new A.aPk(q)) +s=q.a +if(b){p=q.avi(a) +r=t.N +if(p==null){p=t.X +p=A.w(p,p)}r=new A.fq(p,q,null,"root",A.w(r,t.z4),A.w(r,t.I1)) +p=r}else p=null +q.a=p +q.c=!0 +r=q.b +if(r!=null)r.bv(0,p) +q.b=null +if(q.a!=s){q.T() +if(s!=null)s.m()}}, +Su(a){return this.aEZ(a)}, +aEZ(a){var s=0,r=A.n(t.H),q=this,p +var $async$Su=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=a.a +switch(p){case"push":q.a6p(t.pE.a(a.b)) +break +default:throw A.d(A.cE(p+" was invoked but isn't implemented by "+A.K(q).j(0)))}return A.l(null,r)}}) +return A.m($async$Su,r)}, +avi(a){if(a==null)return null +return t.J1.a(B.bx.jY(A.eT(a.buffer,a.byteOffset,a.byteLength)))}, +ajU(a){var s=this +s.r.q(0,a) +if(!s.f){s.f=!0 +$.cp.p2$.push(new A.aPl(s))}}, +a2M(){var s,r,q,p,o,n=this +if(!n.f)return +n.f=!1 +for(s=n.r,r=A.dr(s,s.r,A.y(s).c),q=r.$ti.c;r.u();){p=r.d;(p==null?q.a(p):p).w=!1}s.V(0) +o=B.bx.e_(n.a.a) +B.ri.e0("put",A.dw(o.buffer,o.byteOffset,o.byteLength),t.H)}, +adr(){if($.cp.p4$)return +this.a2M()}, +m(){var s=this.a +if(s!=null)s.m() +this.dN()}} +A.aPk.prototype={ +$1(a){this.a.d=!1}, +$S:3} +A.aPl.prototype={ +$1(a){return this.a.a2M()}, +$S:3} +A.fq.prototype={ +gBu(){var s=J.GD(this.a,"c",new A.aPh()) +s.toString +return t.pE.a(s)}, +gp7(){var s=J.GD(this.a,"v",new A.aPi()) +s.toString +return t.pE.a(s)}, +b_k(a,b,c){var s=this,r=J.cO(s.gp7(),b),q=c.i("0?").a(J.nW(s.gp7(),b)) +if(J.cT(s.gp7()))J.nW(s.a,"v") +if(r)s.xb() +return q}, +p(a,b){return J.cO(this.gp7(),b)}, +aPr(a,b){var s,r,q,p,o=this,n=o.f +if(n.N(0,a)||!J.cO(o.gBu(),a)){n=t.N +s=new A.fq(A.w(n,t.X),null,null,a,A.w(n,t.z4),A.w(n,t.I1)) +o.lp(s) +return s}r=t.N +q=o.c +p=J.i(o.gBu(),a) +p.toString +s=new A.fq(t.pE.a(p),q,o,a,A.w(r,t.z4),A.w(r,t.I1)) +n.n(0,a,s) +return s}, +lp(a){var s=this,r=a.d +if(r!==s){if(r!=null)r.It(a) +a.d=s +s.a0q(a) +if(a.c!=s.c)s.a6Q(a)}}, +aJ4(a){this.It(a) +a.d=null +if(a.c!=null){a.Tg(null) +a.a9Y(this.ga6P())}}, +xb(){var s,r=this +if(!r.w){r.w=!0 +s=r.c +if(s!=null)s.ajU(r)}}, +a6Q(a){a.Tg(this.c) +a.a9Y(this.ga6P())}, +Tg(a){var s=this,r=s.c +if(r==a)return +if(s.w)if(r!=null)r.r.C(0,s) +s.c=a +if(s.w&&a!=null){s.w=!1 +s.xb()}}, +It(a){var s,r,q,p=this +if(J.e(p.f.C(0,a.e),a)){J.nW(p.gBu(),a.e) +s=p.r +r=s.h(0,a.e) +if(r!=null){q=J.cF(r) +p.a34(q.iG(r)) +if(q.ga_(r))s.C(0,a.e)}if(J.cT(p.gBu()))J.nW(p.a,"c") +p.xb() +return}s=p.r +q=s.h(0,a.e) +if(q!=null)J.nW(q,a) +q=s.h(0,a.e) +q=q==null?null:J.cT(q) +if(q===!0)s.C(0,a.e)}, +a0q(a){var s=this +if(s.f.N(0,a.e)){J.dN(s.r.cP(0,a.e,new A.aPg()),a) +s.xb() +return}s.a34(a) +s.xb()}, +a34(a){this.f.n(0,a.e,a) +J.bT(this.gBu(),a.e,a.a)}, +a9Z(a,b){var s=this.f.gaJ(0),r=this.r.gaJ(0),q=s.Wi(0,new A.hB(r,new A.aPj(),A.y(r).i("hB"))) +J.fz(b?A.a8(q,!1,A.y(q).i("B.E")):q,a)}, +a9Y(a){return this.a9Z(a,!1)}, +b_s(a){var s,r=this +if(a===r.e)return +s=r.d +if(s!=null)s.It(r) +r.e=a +s=r.d +if(s!=null)s.a0q(r)}, +m(){var s,r=this +r.a9Z(r.gaJ3(),!0) +r.f.V(0) +r.r.V(0) +s=r.d +if(s!=null)s.It(r) +r.d=null +r.Tg(null)}, +j(a){return"RestorationBucket(restorationId: "+this.e+", owner: null)"}} +A.aPh.prototype={ +$0(){var s=t.X +return A.w(s,s)}, +$S:250} +A.aPi.prototype={ +$0(){var s=t.X +return A.w(s,s)}, +$S:250} +A.aPg.prototype={ +$0(){return A.a([],t.QT)}, +$S:475} +A.aPj.prototype={ +$1(a){return a}, +$S:476} +A.uS.prototype={ +l(a,b){var s,r +if(b==null)return!1 +if(this===b)return!0 +if(b instanceof A.uS){s=b.a +r=this.a +s=s.a===r.a&&s.b===r.b&&A.d7(b.b,this.b)}else s=!1 +return s}, +gB(a){var s=this.a +return A.a4(s.a,s.b,A.cj(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.Og.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.Og&&b.a===this.a&&A.d7(b.b,this.b)}, +gB(a){return A.a4(this.a,A.cj(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.auj.prototype={ +L0(a,b){return this.aTg(a,b)}, +aTg(a1,a2){var s=0,r=A.n(t.EZ),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0 +var $async$L0=A.j(function(a3,a4){if(a3===1){o=a4 +s=p}while(true)switch(s){case 0:c=null +b=a1.u4("-") +p=4 +m=n.b +m===$&&A.b() +a0=t.j +s=7 +return A.f(m.e0("SpellCheck.initiateSpellCheck",A.a([b,a2],t.s),t.z),$async$L0) +case 7:c=a0.a(a4) +p=2 +s=6 +break +case 4:p=3 +a=o +q=null +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:m=A.a([],t.bt) +for(k=J.A_(c,t.f),j=k.$ti,k=new A.ci(k,k.gt(0),j.i("ci")),i=t.Dn,h=t.N,j=j.i("S.E");k.u();){g=k.d +if(g==null)g=j.a(g) +f=J.a0(g) +m.push(new A.uS(new A.cW(A.ds(f.h(g,"startIndex")),A.ds(f.h(g,"endIndex"))),J.A_(i.a(f.h(g,"suggestions")),h)))}k=n.a +if(k!=null){j=k.a +e=A.d7(k.b,m) +d=j===a2&&e?A.bH_(n.a.b,m):m}else d=m +n.a=new A.Og(a2,d) +q=d +s=1 +break +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$L0,r)}} +A.a_c.prototype={ +D(){return"DeviceOrientation."+this.b}} +A.apV.prototype={} +A.a99.prototype={ +D(){return"SystemUiMode."+this.b}} +A.oU.prototype={ +a8P(){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.D() +q=o.r.D() +p=o.c +p=p==null?null:p.D() +return A.C(["systemNavigationBarColor",n,"systemNavigationBarDividerColor",null,"systemStatusBarContrastEnforced",o.w,"statusBarColor",s,"statusBarBrightness",r,"statusBarIconBrightness",q,"systemNavigationBarIconBrightness",p,"systemNavigationBarContrastEnforced",o.d],t.N,t.z)}, +j(a){return"SystemUiOverlayStyle("+this.a8P().j(0)+")"}, +gB(a){var s=this +return A.a4(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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.oU)if(J.e(b.a,r.a))if(J.e(b.e,r.e))if(b.r===r.r)if(b.f===r.f)s=b.c==r.c +return s}} +A.aTy.prototype={ +$0(){if(!J.e($.DS,$.bnS)){B.bz.e0("SystemChrome.setSystemUIOverlayStyle",$.DS.a8P(),t.H) +$.bnS=$.DS}$.DS=null}, +$S:0} +A.a98.prototype={ +D(){return"SystemSoundType."+this.b}} +A.lf.prototype={ +ij(a){var s +if(a<0)return null +s=this.zP(a).a +return s>=0?s:null}, +ik(a){var s=this.zP(Math.max(0,a)).b +return s>=0?s:null}, +zP(a){var s,r=this.ij(a) +if(r==null)r=-1 +s=this.ik(a) +return new A.cW(r,s==null?-1:s)}} +A.An.prototype={ +ij(a){var s +if(a<0)return null +s=this.a +return A.aSU(s,Math.min(a,s.length)).b}, +ik(a){var s,r=this.a +if(a>=r.length)return null +s=A.aSU(r,Math.max(0,a+1)) +return s.b+s.gI(0).length}, +zP(a){var s,r,q,p=this +if(a<0){s=p.ik(a) +return new A.cW(-1,s==null?-1:s)}else{s=p.a +if(a>=s.length){s=p.ij(a) +return new A.cW(s==null?-1:s,-1)}}r=A.aSU(s,a) +s=r.b +if(s!==r.c)s=new A.cW(s,s+r.gI(0).length) +else{q=p.ik(a) +s=new A.cW(s,q==null?-1:q)}return s}} +A.BT.prototype={ +zP(a){return this.a.zK(new A.b_(Math.max(a,0),B.q))}} +A.uf.prototype={ +ij(a){var s,r,q +if(a<0||this.a.length===0)return null +s=this.a +r=s.length +if(a>=r)return r +if(a===0)return 0 +if(a>1&&s.charCodeAt(a)===10&&s.charCodeAt(a-1)===13)q=a-2 +else q=A.bnU(s.charCodeAt(a))?a-1:a +for(;q>0;){if(A.bnU(s.charCodeAt(q)))return q+1;--q}return Math.max(q,0)}, +ik(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.bnU(r.charCodeAt(s));){++s +if(s===q)return s}return s=s?null:s}} +A.iW.prototype={ +gr_(){var s,r=this +if(!r.gce()||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.y_(a.b,p.b,o) +n=q?o:s +return p.CE(n,q?r:o)}if(b)return p.y_(a.b,n,o) +n=q?s:o +return p.CE(n,q?o:r)}, +ad5(a){if(this.gfh().l(0,a))return this +return this.aQt(a.b,a.a)}} +A.uX.prototype={} +A.a9n.prototype={} +A.a9m.prototype={} +A.a9o.prototype={} +A.DX.prototype={} +A.alk.prototype={} +A.L0.prototype={ +D(){return"MaxLengthEnforcement."+this.b}} +A.uY.prototype={} +A.ahm.prototype={} +A.bf6.prototype={} +A.Bj.prototype={ +adA(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=b.b +g=g.gce()?new A.ahm(g.c,g.d):h +s=b.c +s=s.gce()&&s.a!==s.b?new A.ahm(s.a,s.b):h +r=new A.bf6(b,new A.cD(""),g,s) +s=b.a +q=J.ap7(i.a,s) +for(g=q.gav(q),p=i.b,o=!p,n=h;g.u();n=m){m=g.gI(g) +l=n==null?h:n.gbV(n) +if(l==null)l=0 +i.SW(p,l,m.gcD(m),r) +i.SW(o,m.gcD(m),m.gbV(m),r)}g=n==null?h:n.gbV(n) +if(g==null)g=0 +i.SW(p,g,s.length,r) +k=r.c +j=r.d +s=r.b.a +g=j==null||j.a===j.b?B.bH:new A.cW(j.a,j.b) +if(k==null)p=B.i8 +else{p=r.a.b +p=A.dx(p.e,k.a,k.b,p.f)}return new A.dS(s.charCodeAt(0)==0?s:s,p,g)}, +SW(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.azg(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.azg.prototype={ +$1(a){var s=this,r=s.a,q=a<=r&&a=r.a&&s<=this.a.length}else r=!1 +return r}, +agz(a,b){var s,r,q,p,o=this +if(!a.gce())return o +s=a.a +r=a.b +q=B.c.lK(o.a,s,r,b) +if(r-s===b.length)return o.aQp(q) +s=new A.aTW(a,b) +r=o.b +p=o.c +return new A.dS(q,A.dx(B.q,s.$1(r.c),s.$1(r.d),!1),new A.cW(s.$1(p.a),s.$1(p.b)))}, +Ye(){var s=this.b,r=this.c +return A.C(["text",this.a,"selectionBase",s.c,"selectionExtent",s.d,"selectionAffinity",s.e.D(),"selectionIsDirectional",s.f,"composingBase",r.a,"composingExtent",r.b],t.N,t.z)}, +j(a){return"TextEditingValue(text: \u2524"+this.a+"\u251c, selection: "+this.b.j(0)+", composing: "+this.c.j(0)+")"}, +l(a,b){var s=this +if(b==null)return!1 +if(s===b)return!0 +return b instanceof A.dS&&b.a===s.a&&b.b.l(0,s.b)&&b.c.l(0,s.c)}, +gB(a){var s=this.c +return A.a4(B.c.gB(this.a),this.b.gB(0),A.a4(B.e.gB(s.a),B.e.gB(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.aTW.prototype={ +$1(a){var s=this.a,r=s.a,q=a<=r&&a") +l=p.f +k=A.y(l).i("aR<1>") +j=k.i("hF>") +q=A.a8(new A.hF(new A.bh(new A.aR(l,k),new A.aUn(p,A.a8(new A.ad(n,new A.aUo(),m),!0,m.i("aN.E"))),k.i("bh")),new A.aUp(p),j),!0,j.i("B.E")) +s=1 +break $async$outer +case"TextInputClient.scribbleInteractionBegan":p.r=!0 +s=1 +break $async$outer +case"TextInputClient.scribbleInteractionFinished":p.r=!1 +s=1 +break $async$outer}n=p.d +if(n==null){s=1 +break}if(b==="TextInputClient.requestExistingInputState"){m=p.e +m===$&&A.b() +p.PK(n,m) +p.II(p.d.r.a.c.a) +s=1 +break}n=t.j +o=n.a(a.b) +if(b===u.gP){n=t.a +i=n.a(J.i(o,1)) +for(m=J.dI(i),l=J.ay(m.gd1(i));l.u();)A.bwl(n.a(m.h(i,l.gI(l)))) +s=1 +break}m=J.a0(o) +h=A.ds(m.h(o,0)) +l=p.d +if(h!==l.f){s=1 +break}switch(b){case"TextInputClient.updateEditingState":g=A.bwl(t.a.a(m.h(o,1))) +$.dt().aMB(g,$.bkt()) +break +case u.au:l=t.a +f=l.a(m.h(o,1)) +m=A.a([],t.sD) +for(n=J.ay(n.a(J.i(f,"deltas")));n.u();)m.push(A.bOg(l.a(n.gI(n)))) +t.Je.a(p.d.r).b2h(m) +break +case"TextInputClient.performAction":if(A.bS(m.h(o,1))==="TextInputAction.commitContent"){n=t.a.a(m.h(o,2)) +m=J.a0(n) +A.bS(m.h(n,"mimeType")) +A.bS(m.h(n,"uri")) +if(m.h(n,"data")!=null)new Uint8Array(A.e7(A.cN(t.JY.a(m.h(n,"data")),!0,t.S))) +p.d.r.a.toString}else p.d.r.aZd(A.bUr(A.bS(m.h(o,1)))) +break +case"TextInputClient.performSelectors":e=J.A_(n.a(m.h(o,1)),t.N) +e.az(e,p.d.r.gaZf()) +break +case"TextInputClient.performPrivateCommand":n=t.a +d=n.a(m.h(o,1)) +m=p.d.r +l=J.a0(d) +A.bS(l.h(d,"action")) +if(l.h(d,"data")!=null)n.a(l.h(d,"data")) +m.a.toString +break +case"TextInputClient.updateFloatingCursor":n=l.r +l=A.bUq(A.bS(m.h(o,1))) +m=t.a.a(m.h(o,2)) +if(l===B.lw){k=J.a0(m) +c=new A.z(A.iD(k.h(m,"X")),A.iD(k.h(m,"Y")))}else c=B.j +n.NX(new A.D0(c,null,l)) +break +case"TextInputClient.onConnectionClosed":n=l.r +if(n.gky()){n.z.toString +n.k3=n.z=$.dt().d=null +n.a.d.jb()}break +case"TextInputClient.showAutocorrectionPromptRect":l.r.al5(A.ds(m.h(o,1)),A.ds(m.h(o,2))) +break +case"TextInputClient.showToolbar":l.r.lQ() +break +case"TextInputClient.insertTextPlaceholder":l.r.aVH(new A.R(A.iD(m.h(o,1)),A.iD(m.h(o,2)))) +break +case"TextInputClient.removeTextPlaceholder":l.r.agq() +break +default:throw A.d(A.aIJ(null))}case 1:return A.l(q,r)}}) +return A.m($async$RT,r)}, +aJo(){if(this.w)return +this.w=!0 +A.ff(new A.aUr(this))}, +aK3(a,b){var s,r,q,p,o,n,m +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=t.jl,q=t.H,p=s.$ti.c;s.u();){o=s.d +if(o==null)o=p.a(o) +n=$.dt() +m=n.c +m===$&&A.b() +m.e0("TextInput.setClient",A.a([n.d.f,o.a21(b)],r),q)}}, +Q7(){var s,r,q,p,o=this +o.d.toString +for(s=o.b,s=A.dr(s,s.r,A.y(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p) +p=$.dt().c +p===$&&A.b() +p.o2("TextInput.clearClient",r)}o.d=null +o.aJo()}, +a9e(a){var s,r,q,p,o +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)p=q.a(p) +o=$.dt().c +o===$&&A.b() +o.e0("TextInput.updateConfig",p.a21(a),r)}}, +II(a){var s,r,q,p +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p) +p=$.dt().c +p===$&&A.b() +p.e0("TextInput.setEditingState",a.Ye(),r)}}, +Tx(){var s,r,q,p +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p) +p=$.dt().c +p===$&&A.b() +p.o2("TextInput.show",r)}}, +aD_(){var s,r,q,p +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p) +p=$.dt().c +p===$&&A.b() +p.o2("TextInput.hide",r)}}, +aK8(a,b){var s,r,q,p,o,n,m,l,k +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=a.a,q=a.b,p=b.a,o=t.N,n=t.z,m=t.H,l=s.$ti.c;s.u();){k=s.d +if(k==null)l.a(k) +k=$.dt().c +k===$&&A.b() +k.e0("TextInput.setEditableSizeAndTransform",A.C(["width",r,"height",q,"transform",p],o,n),m)}}, +aK5(a){var s,r,q,p,o,n,m,l,k,j +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=a.a,q=a.c-r,p=a.b,o=a.d-p,n=t.N,m=t.z,l=t.H,k=s.$ti.c;s.u();){j=s.d +if(j==null)k.a(j) +j=$.dt().c +j===$&&A.b() +j.e0("TextInput.setMarkedTextRect",A.C(["width",q,"height",o,"x",r,"y",p],n,m),l)}}, +aK2(a){var s,r,q,p,o,n,m,l,k,j +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=a.a,q=a.c-r,p=a.b,o=a.d-p,n=t.N,m=t.z,l=t.H,k=s.$ti.c;s.u();){j=s.d +if(j==null)k.a(j) +j=$.dt().c +j===$&&A.b() +j.e0("TextInput.setCaretRect",A.C(["width",q,"height",o,"x",r,"y",p],n,m),l)}}, +aKd(a){var s,r,q +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=s.$ti.c;s.u();){q=s.d;(q==null?r.a(q):q).akM(a)}}, +Ts(a,b,c,d,e){var s,r,q,p,o,n,m,l,k +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=d.a,q=e.a,p=t.N,o=t.z,n=t.H,m=c==null,l=s.$ti.c;s.u();){k=s.d +if(k==null)l.a(k) +k=$.dt().c +k===$&&A.b() +k.e0("TextInput.setStyle",A.C(["fontFamily",a,"fontSize",b,"fontWeightIndex",m?null:c.a,"textAlignIndex",r,"textDirectionIndex",q],p,o),n)}}, +aIO(){var s,r,q,p +for(s=this.b,s=A.dr(s,s.r,A.y(s).c),r=t.H,q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p) +p=$.dt().c +p===$&&A.b() +p.o2("TextInput.requestAutofill",r)}}, +aMB(a,b){var s,r,q,p +if(this.d==null)return +for(s=$.dt().b,s=A.dr(s,s.r,A.y(s).c),r=s.$ti.c,q=t.H;s.u();){p=s.d +if((p==null?r.a(p):p)!==b){p=$.dt().c +p===$&&A.b() +p.e0("TextInput.setEditingState",a.Ye(),q)}}$.dt().d.r.b0K(a)}} +A.aUq.prototype={ +$0(){var s=null +return A.a([A.k2("call",this.a,!0,B.bU,s,s,s,B.bp,!1,!0,!0,B.dM,s)],t.E)}, +$S:35} +A.aUo.prototype={ +$1(a){return a}, +$S:477} +A.aUn.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.h(0,a) +p=r==null?null:r.aW6(new A.I(o,n,o+m,n+p)) +if(p!==!0)return!1 +p=s.h(0,a) +q=p==null?null:p.gpl(0) +if(q==null)q=B.ar +return!(q.l(0,B.ar)||q.gaUU()||q.gaW7(0))}, +$S:21} +A.aUp.prototype={ +$1(a){var s=this.a.f.h(0,a).gpl(0),r=[a],q=s.a,p=s.b +B.b.G(r,[q,p,s.c-q,s.d-p]) +return r}, +$S:478} +A.aUr.prototype={ +$0(){var s=this.a +s.w=!1 +if(s.d==null)s.aD_()}, +$S:0} +A.OS.prototype={} +A.ahW.prototype={ +a21(a){var s,r=a.ao() +if($.dt().a!==$.bkt()){s=B.Pg.ao() +s.n(0,"isMultiline",a.b.l(0,B.tz)) +r.n(0,"inputType",s)}return r}, +akM(a){var s,r=$.dt().c +r===$&&A.b() +s=A.af(a).i("ad<1,D>") +r.e0("TextInput.setSelectionRects",A.a8(new A.ad(a,new A.baD(),s),!0,s.i("aN.E")),t.H)}} +A.baD.prototype={ +$1(a){var s=a.b,r=s.a,q=s.b +return A.a([r,q,s.c-r,s.d-q,a.a,a.c.a],t.a0)}, +$S:479} +A.anl.prototype={} +A.a9Q.prototype={ +D(){return"UndoDirection."+this.b}} +A.a9R.prototype={ +gaMm(){var s=this.a +s===$&&A.b() +return s}, +RV(a){return this.aCM(a)}, +aCM(a){var s=0,r=A.n(t.z),q,p=this,o,n +var $async$RV=A.j(function(b,c){if(b===1)return A.k(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.aUe(p.aLY(A.bS(J.i(n,0)))) +s=1 +break}throw A.d(A.aIJ(null)) +case 1:return A.l(q,r)}}) +return A.m($async$RV,r)}, +aLY(a){var s +$label0$0:{if("undo"===a){s=B.avB +break $label0$0}if("redo"===a){s=B.avC +break $label0$0}s=A.V(A.wU(A.a([A.pS("Unknown undo direction: "+a)],t.E)))}return s}} +A.aVa.prototype={} +A.bhP.prototype={ +$1(a){this.a.sfI(a) +return!1}, +$S:37} +A.c8.prototype={} +A.d2.prototype={ +iW(a){this.b=a}, +o3(a,b){return this.gn9()}, +HV(a,b){var s=this +if(A.y(s).i("fV").b(s))return s.DQ(0,a,b) +return s.o3(0,a)}, +gn9(){return!0}, +xY(a){return!0}, +b0d(a,b){return this.xY(a)?B.pS:B.y2}, +HT(a,b){var s=this +if(A.y(s).i("fV").b(s))return s.iB(a,b) +return s.jv(a)}, +Ut(a){var s=this.a +s.b=!0 +s.a.push(a) +return null}, +Ng(a){return this.a.C(0,a)}, +h2(a){return new A.Ss(this,a,!1,!1,!1,!1,new A.bV(A.a([],t.ot),t.wS),A.y(this).i("Ss"))}} +A.fV.prototype={ +DQ(a,b,c){return this.alY(0,b)}, +o3(a,b){return this.DQ(0,b,null)}, +h2(a){return new A.St(this,a,!1,!1,!1,!1,new A.bV(A.a([],t.ot),t.wS),A.y(this).i("St"))}} +A.dv.prototype={ +jv(a){return this.c.$1(a)}} +A.apk.prototype={ +aey(a,b,c){return a.HT(b,c)}, +aVU(a,b,c){if(a.HV(b,c))return new A.b3(!0,a.HT(b,c)) +return B.al4}} +A.po.prototype={ +a0(){return new A.PS(A.bn(t.od),new A.O())}} +A.apm.prototype={ +$1(a){t.L1.a(a.gaL()) +return!1}, +$S:108} +A.app.prototype={ +$1(a){var s=this,r=A.apl(t.L1.a(a.gaL()),s.b,s.d) +if(r!=null){s.c.P5(a,null) +s.a.a=r +return!0}return!1}, +$S:108} +A.apn.prototype={ +$1(a){var s=A.apl(t.L1.a(a.gaL()),this.b,this.c) +if(s!=null){this.a.a=s +return!0}return!1}, +$S:108} +A.apo.prototype={ +$1(a){var s=this,r=s.b,q=A.apl(t.L1.a(a.gaL()),r,s.d),p=q!=null +if(p&&q.HV(r,s.c))s.a.a=A.bkI(a).aey(q,r,s.c) +return p}, +$S:108} +A.apq.prototype={ +$1(a){var s=this,r=s.b,q=A.apl(t.L1.a(a.gaL()),r,s.d),p=q!=null +if(p&&q.HV(r,s.c))s.a.a=A.bkI(a).aey(q,r,s.c) +return p}, +$S:108} +A.PS.prototype={ +aj(){this.aw() +this.a92()}, +azb(a){this.J(new A.aXx(this))}, +a92(){var s,r,q=this,p=q.a.d.gaJ(0),o=A.f8(p,A.y(p).i("B.E")),n=q.d.hC(o) +p=q.d +p.toString +s=o.hC(p) +for(p=n.gav(n),r=q.ga45();p.u();)p.gI(p).Ng(r) +for(p=s.gav(s);p.u();)p.gI(p).Ut(r) +q.d=o}, +b1(a){this.bb(a) +this.a92()}, +m(){var s,r,q,p,o=this +o.ar() +for(s=o.d,s=A.dr(s,s.r,A.y(s).c),r=o.ga45(),q=s.$ti.c;s.u();){p=s.d;(p==null?q.a(p):p).Ng(r)}o.d=null}, +F(a){var s=this.a +return new A.PR(null,s.d,this.e,s.e,null)}} +A.aXx.prototype={ +$0(){this.a.e=new A.O()}, +$S:0} +A.PR.prototype={ +dY(a){var s +if(this.w===a.w)s=!A.aoC(a.r,this.r) +else s=!0 +return s}} +A.wW.prototype={ +a0(){return new A.Rv(new A.bG(null,t.A))}} +A.Rv.prototype={ +aj(){this.aw() +$.cp.p2$.push(new A.b4G(this)) +$.aw.aR$.d.a.f.q(0,this.ga4j())}, +m(){$.aw.aR$.d.a.f.C(0,this.ga4j()) +this.ar()}, +a9o(a){this.I5(new A.b4E(this))}, +aAs(a){if(this.c==null)return +this.a9o(a)}, +arK(a){if(!this.e)this.I5(new A.b4z(this))}, +arM(a){if(this.e)this.I5(new A.b4A(this))}, +arI(a){var s,r=this +if(r.f!==a){r.I5(new A.b4y(r,a)) +s=r.a.Q +if(s!=null)s.$1(r.f)}}, +a5G(a,b){var s,r,q,p,o,n,m=this,l=new A.b4D(m),k=new A.b4C(m,new A.b4B(m)) +if(a==null){s=m.a +s.toString +r=s}else r=a +q=l.$1(r) +p=k.$1(r) +if(b!=null)b.$0() +s=m.a +s.toString +o=l.$1(s) +s=m.a +s.toString +n=k.$1(s) +if(p!==n)m.a.y.$1(n) +if(q!==o){l=m.a.z +if(l!=null)l.$1(o)}}, +I5(a){return this.a5G(null,a)}, +aEM(a){return this.a5G(a,null)}, +b1(a){this.bb(a) +if(this.a.c!==a.c)$.cp.p2$.push(new A.b4F(this,a))}, +garG(){var s,r=this.c +r.toString +r=A.de(r,B.ik) +s=r==null?null:r.ch +$label0$0:{if(B.hR===s||s==null){r=this.a.c +break $label0$0}if(B.n4===s){r=!0 +break $label0$0}r=null}return r}, +F(a){var s,r,q,p=this,o=null,n=p.a,m=n.as +n=n.d +s=p.garG() +r=p.a +q=A.ov(A.tA(!1,s,r.ax,o,!0,!0,n,!0,o,p.garH(),o,o,o,o),m,p.r,p.garJ(),p.garL(),o) +n=r.c +if(n){m=r.w +m=m!=null&&m.a!==0}else m=!1 +if(m){m=r.w +m.toString +q=A.rY(m,q)}if(n){n=r.x +n=n!=null&&n.gbC(n)}else n=!1 +if(n){n=p.a.x +n.toString +q=A.NN(q,o,n)}return q}} +A.b4G.prototype={ +$1(a){var s=$.aw.aR$.d.a.b +if(s==null)s=A.vn() +this.a.a9o(s)}, +$S:3} +A.b4E.prototype={ +$0(){var s=$.aw.aR$.d.a.b +switch((s==null?A.vn():s).a){case 0:s=!1 +break +case 1:s=!0 +break +default:s=null}this.a.d=s}, +$S:0} +A.b4z.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.b4A.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.b4y.prototype={ +$0(){this.a.f=this.b}, +$S:0} +A.b4D.prototype={ +$1(a){var s=this.a +return s.e&&a.c&&s.d}, +$S:169} +A.b4B.prototype={ +$1(a){var s,r=this.a.c +r.toString +r=A.de(r,B.ik) +s=r==null?null:r.ch +$label0$0:{if(B.hR===s||s==null){r=a.c +break $label0$0}if(B.n4===s){r=!0 +break $label0$0}r=null}return r}, +$S:169} +A.b4C.prototype={ +$1(a){var s=this.a +return s.f&&s.d&&this.b.$1(a)}, +$S:169} +A.b4F.prototype={ +$1(a){this.a.aEM(this.b)}, +$S:3} +A.a_t.prototype={ +xY(a){return this.c}, +jv(a){}} +A.k3.prototype={} +A.a_p.prototype={} +A.Fv.prototype={ +a5b(a,b,c){var s +a.iW(this.gr6()) +s=a.HT(b,c) +a.iW(null) +return s}, +iB(a,b){var s=this,r=A.bkJ(s.gE2(),A.y(s).c) +return r==null?s.aeA(a,s.b,b):s.a5b(r,a,b)}, +jv(a){return this.iB(a,null)}, +gn9(){var s,r,q=this,p=A.bqX(q.gE2(),null,A.y(q).c) +if(p!=null){p.iW(q.gr6()) +s=p.gn9() +p.iW(null) +r=s}else r=q.gr6().gn9() +return r}, +DQ(a,b,c){var s,r=this,q=A.bkJ(r.gE2(),A.y(r).c),p=q==null +if(!p)q.iW(r.gr6()) +s=(p?r.gr6():q).HV(b,c) +if(!p)q.iW(null) +return s}, +o3(a,b){return this.DQ(0,b,null)}, +xY(a){var s,r=this,q=A.bkJ(r.gE2(),A.y(r).c),p=q==null +if(!p)q.iW(r.gr6()) +s=(p?r.gr6():q).xY(a) +if(!p)q.iW(null) +return s}} +A.Ss.prototype={ +aeA(a,b,c){var s=this.e +if(b==null)return s.jv(a) +else return s.jv(a)}, +gr6(){return this.e}, +gE2(){return this.f}} +A.St.prototype={ +a5b(a,b,c){var s +c.toString +a.iW(new A.Qs(c,this.e,new A.bV(A.a([],t.ot),t.wS),this.$ti.i("Qs<1>"))) +s=a.HT(b,c) +a.iW(null) +return s}, +aeA(a,b,c){var s=this.e +if(b==null)return s.iB(a,c) +else return s.iB(a,c)}, +gr6(){return this.e}, +gE2(){return this.f}} +A.Qs.prototype={ +iW(a){this.d.iW(a)}, +o3(a,b){return this.d.DQ(0,b,this.c)}, +gn9(){return this.d.gn9()}, +xY(a){return this.d.xY(a)}, +Ut(a){var s +this.alX(a) +s=this.d.a +s.b=!0 +s.a.push(a)}, +Ng(a){this.alZ(a) +this.d.a.C(0,a)}, +jv(a){return this.d.iB(a,this.c)}} +A.acu.prototype={} +A.acs.prototype={} +A.agu.prototype={} +A.V5.prototype={ +iW(a){this.ZW(a) +this.e.iW(a)}} +A.V6.prototype={ +iW(a){this.ZW(a) +this.e.iW(a)}} +A.GP.prototype={ +a0(){return new A.acI(null,null)}} +A.acI.prototype={ +F(a){var s=this.a +return new A.acH(B.O,s.e,s.f,null,this,B.w,null,s.c,null)}} +A.acH.prototype={ +b6(a){var s=this +return A.bMM(s.e,s.y,s.f,s.r,s.z,s.w,A.e1(a),s.x)}, +b9(a,b){var s,r=this +b.siu(r.e) +b.sKS(0,r.r) +b.sb_V(r.w) +b.saRg(0,r.f) +b.sb19(r.x) +b.scr(A.e1(a)) +s=r.y +if(s!==b.uT){b.uT=s +b.aU() +b.bM()}b.saY5(0,r.z)}} +A.amQ.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.vh.prototype={ +j(a){return"Entry#"+A.c5(this)+"("+this.d.j(0)+")"}} +A.GQ.prototype={ +a0(){return new A.PU(A.bn(t.Ie),B.aae,null,null)}, +b0x(a,b){return this.w.$2(a,b)}, +aWt(a,b){return A.bUC().$2(a,b)}} +A.PU.prototype={ +aj(){this.aw() +this.a0s(!1)}, +b1(a){var s,r,q=this +q.bb(a) +if(!J.e(q.a.w,a.w)){q.e.az(0,q.gaN6()) +s=q.d +if(s!=null)q.Ud(s) +q.f=null}s=q.a +s.toString +r=q.d +if(r!=null){s=s.c +r=r.d +s=!(A.K(s)===A.K(r)&&J.e(s.a,r.a))}else s=!0 +if(s){++q.r +q.a0s(!0)}else{s=q.d +if(s!=null){s.d=q.a.c +q.Ud(s) +q.f=null}}}, +a0s(a){var s,r,q,p=this,o=p.d +if(o!=null){p.e.q(0,o) +p.d.a.dq(0) +p.d=p.f=null}o=p.a +s=A.c2(null,o.d,null,null,p) +p.a.toString +r=A.cl(B.X,s,B.X) +o=p.a +q=o.c +p.d=p.aFh(r,o.w,q,s) +if(a)s.cd(0) +else s.sk(0,1)}, +aFh(a,b,c,d){var s=new A.vh(d,a,A.bJS(b.$2(c,a),this.r),c) +a.a.fG(new A.aYw(this,s,d,a)) +return s}, +Ud(a){var s=a.c +a.c=new A.lP(this.a.b0x(a.d,a.b),s.a)}, +aIe(){if(this.f==null){var s=this.e +this.f=A.Ky(new A.pM(s,new A.aYx(),A.y(s).i("pM<1,o>")),t.l7)}}, +m(){var s,r,q,p,o,n,m=this,l=m.d +if(l!=null){l.a.m() +m.d.b.m()}for(l=m.e,l=A.dr(l,l.r,A.y(l).c),s=l.$ti.c;l.u();){r=l.d +if(r==null)r=s.a(r) +q=r.a +q.r.m() +q.r=null +p=q.ec$ +p.b=!1 +B.b.V(p.a) +o=p.c +if(o===$){n=A.dD(p.$ti.c) +p.c!==$&&A.aH() +p.c=n +o=n}if(o.a>0){o.b=o.c=o.d=o.e=null +o.a=0}p=q.dR$ +p.b=!1 +B.b.V(p.a) +o=p.c +if(o===$){n=A.dD(p.$ti.c) +p.c!==$&&A.aH() +p.c=n +o=n}if(o.a>0){o.b=o.c=o.d=o.e=null +o.a=0}q.Gm() +r=r.b +r.a.dX(r.gJ8())}m.apH()}, +F(a){var s,r,q,p,o=this +o.aIe() +s=o.a +s.toString +r=o.d +r=r==null?null:r.c +q=o.f +q.toString +p=A.af(q).i("bh<1>") +p=A.f8(new A.bh(q,new A.aYy(o),p),p.i("B.E")) +return s.aWt(r,A.a8(p,!0,A.y(p).c))}} +A.aYw.prototype={ +$1(a){var s,r=this +if(a===B.a9){s=r.a +s.J(new A.aYv(s,r.b)) +r.c.m() +r.d.m()}}, +$S:10} +A.aYv.prototype={ +$0(){var s=this.a +s.e.C(0,this.b) +s.f=null}, +$S:0} +A.aYx.prototype={ +$1(a){return a.c}, +$S:485} +A.aYy.prototype={ +$1(a){var s=this.a.d +s=s==null?null:s.c.a +return!J.e(a.a,s)}, +$S:486} +A.UE.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.GW.prototype={ +b6(a){var s=new A.MH(this.e,!0,A.aK(),null,new A.bk(),A.aK(),this.$ti.i("MH<1>")) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sk(0,this.e) +b.sali(!0)}, +gk(a){return this.e}} +A.PD.prototype={ +a0(){return new A.Ur()}} +A.Ur.prototype={ +gaDu(){var s,r +$.aw.toString +s=$.bC() +if(s.gVw()!=="/"){$.aw.toString +s=s.gVw()}else{r=this.a.ay +if(r==null){$.aw.toString +s=s.gVw()}else s=r}return s}, +avp(a){switch(this.d){case null:case void 0:case B.fR:case B.is:return!0 +case B.dB:case B.ky:case B.kz:A.bnT(a.a) +return!0}}, +uE(a){this.d=a +this.a_Y(a)}, +aj(){var s=this +s.aw() +s.aMR() +$.aw.toString +s.w=s.Td($.bC().c.f,s.a.go) +$.aw.cU$.push(s) +s.d=$.aw.go$}, +b1(a){this.bb(a) +this.a9A(a)}, +m(){$.aw.lJ(this) +var s=this.e +if(s!=null)s.m() +this.ar()}, +a1F(){var s=this.e +if(s!=null)s.m() +this.f=this.e=null}, +a9A(a){var s,r=this +r.a.toString +if(r.ga9S()){r.a1F() +if(r.r==null||r.a.c!=a.c){s=r.a.c +r.r=s==null?new A.x2(r,t.TX):s}}else{r.a1F() +r.r=null}}, +aMR(){return this.a9A(null)}, +ga9S(){var s=this.a,r=!0 +if(s.Q==null){s=s.as +s=s==null?null:s.gbC(s) +if(s!==!0){s=this.a.d +s=s!=null}else s=r}else s=r +return s}, +aFR(a){var s,r=this,q=a.a,p=q==="/"&&r.a.Q!=null?new A.bgV(r):r.a.as.h(0,q) +if(p!=null)return r.a.f.$1$2(a,p,t.z) +s=r.a.d +if(s!=null)return s.$1(a) +return null}, +aGr(a){return this.a.at.$1(a)}, +uH(){var s=0,r=A.n(t.y),q,p=this,o,n +var $async$uH=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p.a.toString +o=p.r +n=o==null?null:o.gad() +if(n==null){q=!1 +s=1 +break}q=n.af3() +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$uH,r)}, +D4(a){return this.aRJ(a)}, +aRJ(a){var s=0,r=A.n(t.y),q,p=this,o,n,m,l +var $async$D4=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p.a.toString +o=p.r +n=o==null?null:o.gad() +if(n==null){q=!1 +s=1 +break}m=a.gl0() +o=m.ge8(m).length===0?"/":m.ge8(m) +l=m.gvz() +l=l.ga_(l)?null:m.gvz() +o=A.rA(m.gkQ().length===0?null:m.gkQ(),null,o,null,null,null,l,null,null).guf() +n.aZU(A.nL(o,0,o.length,B.a5,!1),t.X) +q=!0 +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$D4,r)}, +Td(a,b){this.a.toString +return A.bUQ(a,b)}, +acw(a){var s=this,r=s.Td(a,s.a.go) +if(!r.l(0,s.w))s.J(new A.bgX(s,r))}, +F(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g={} +g.a=null +s=i.a +s.toString +if(i.ga9S()){s=i.r +r=i.gaDu() +q=i.a +p=q.ch +p.toString +g.a=A.bIU(!0,new A.xO(r,i.gaFQ(),i.gaGq(),p,"nav",B.auA,A.bWC(),!0,B.h,s),"Navigator Scope",!0,h,h,h,h) +s=q}else{s=i.a +s.toString}g.b=null +o=new A.fi(new A.bgW(g,i),h) +g.b=o +g.b=A.kD(o,h,h,B.cs,!0,s.db,h,h,B.aX) +r=s.dx +r=A.Y(255,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +g=g.b +n=i.Td(A.a([i.a.dy],t.ss),i.a.go) +q=i.a +p=q.p2 +m=q.ok +q=q.p1 +l=A.aNF() +k=t.a9 +j=A.a([],k) +B.b.G(j,i.a.fr) +j.push(B.TW) +k=A.a(j.slice(0),k) +return new A.Nc(new A.NK(new A.ea(i.gavo(),A.NN(new A.a_2(A.rY(q,A.bmc(new A.a9e(new A.NL(new A.KD(n,k,new A.a9E(s.cx,r,g,h),h),h),h),l)),h),"",m),h,t.en),h),p,h)}} +A.bgV.prototype={ +$1(a){var s=this.a.a.Q +s.toString +return s}, +$S:13} +A.bgX.prototype={ +$0(){this.a.w=this.b}, +$S:0} +A.bgW.prototype={ +$1(a){return this.b.a.CW.$2(a,this.a.a)}, +$S:13} +A.aog.prototype={} +A.HK.prototype={ +D(){return"ConnectionState."+this.b}} +A.lA.prototype={ +j(a){var s=this +return"AsyncSnapshot("+s.a.j(0)+", "+A.c(s.b)+", "+A.c(s.c)+", "+A.c(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.e(b.b,s.b)&&J.e(b.c,s.c)&&b.d==s.d}, +gB(a){return A.a4(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.Bt.prototype={ +a0(){return new A.Ry(this.$ti.i("Ry<1>"))}} +A.Ry.prototype={ +aj(){var s=this +s.aw() +s.a.toString +s.e=new A.lA(B.w3,null,null,null,s.$ti.i("lA<1>")) +s.a0T()}, +b1(a){var s,r=this +r.bb(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.lA(B.w3,s.b,s.c,s.d,s.$ti)}r.a0T()}, +F(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.ar()}, +a0T(){var s,r=this,q=r.a +q.toString +s=r.d=new A.O() +q.c.cv(new A.b4M(r,s),new A.b4N(r,s),t.H) +q=r.e +q===$&&A.b() +if(q.a!==B.pa)r.e=new A.lA(B.XZ,q.b,q.c,q.d,q.$ti)}} +A.b4M.prototype={ +$1(a){var s=this.a +if(s.d===this.b)s.J(new A.b4L(s,a))}, +$S(){return this.a.$ti.i("aF(1)")}} +A.b4L.prototype={ +$0(){var s=this.a +s.e=new A.lA(B.pa,this.b,null,null,s.$ti.i("lA<1>"))}, +$S:0} +A.b4N.prototype={ +$2(a,b){var s=this.a +if(s.d===this.b)s.J(new A.b4K(s,a,b))}, +$S:25} +A.b4K.prototype={ +$0(){var s=this.a +s.e=new A.lA(B.pa,null,this.b,this.c,s.$ti.i("lA<1>"))}, +$S:0} +A.Aa.prototype={ +a0(){return new A.PY()}} +A.PY.prototype={ +aj(){this.aw() +this.a0Y()}, +b1(a){this.bb(a) +this.a0Y()}, +a0Y(){this.e=new A.ea(this.garS(),this.a.c,null,t.Jc)}, +m(){var s,r,q=this.d +if(q!=null)for(q=A.js(q,q.r);q.u();){s=q.d +r=this.d.h(0,s) +r.toString +s.K(0,r)}this.ar()}, +arT(a){var s,r=this,q=a.a,p=r.d +if(p==null)p=r.d=A.w(t.I_,t.M) +p.n(0,q,r.av_(q)) +p=r.d.h(0,q) +p.toString +q.a4(0,p) +if(!r.f){r.f=!0 +s=r.a3v() +if(s!=null)r.a9v(s) +else $.cp.p2$.push(new A.aYP(r))}return!1}, +a3v(){var s={},r=this.c +r.toString +s.a=null +r.bZ(new A.aYU(s)) +return t.xO.a(s.a)}, +a9v(a){var s,r +this.c.toString +s=this.f +r=this.e +r===$&&A.b() +a.a0P(t.Fw.a(A.bJK(r,s)))}, +av_(a){var s=A.bu("callback"),r=new A.aYT(this,a,s) +s.sfI(r) +return r}, +F(a){var s=this.f,r=this.e +r===$&&A.b() +return new A.Kh(s,r,null)}} +A.aYP.prototype={ +$1(a){var s,r=this.a +if(r.c==null)return +s=r.a3v() +s.toString +r.a9v(s)}, +$S:3} +A.aYU.prototype={ +$1(a){this.a.a=a}, +$S:27} +A.aYT.prototype={ +$0(){var s=this.a,r=this.b +s.d.C(0,r) +r.K(0,this.c.b2()) +if(s.d.a===0)if($.cp.R8$.a<3)s.J(new A.aYR(s)) +else{s.f=!1 +A.ff(new A.aYS(s))}}, +$S:0} +A.aYR.prototype={ +$0(){this.a.f=!1}, +$S:0} +A.aYS.prototype={ +$0(){var s=this.a +if(s.c!=null&&s.d.a===0)s.J(new A.aYQ())}, +$S:0} +A.aYQ.prototype={ +$0(){}, +$S:0} +A.BM.prototype={} +A.Ki.prototype={ +m(){this.T() +this.dN()}} +A.pr.prototype={ +tR(){var s=new A.Ki($.aW()) +this.i6$=s +this.c.fS(new A.BM(s))}, +t6(){var s,r=this +if(r.gtb()){if(r.i6$==null)r.tR()}else{s=r.i6$ +if(s!=null){s.T() +s.dN() +r.i6$=null}}}, +F(a){if(this.gtb()&&this.i6$==null)this.tR() +return B.aAF}} +A.ahz.prototype={ +F(a){throw A.d(A.mP("Widgets that mix AutomaticKeepAliveClientMixin into their State must call super.build() but must ignore the return value of the superclass."))}} +A.am9.prototype={ +Zy(a,b){}, +rP(a){A.bxS(this,new A.bfY(this,a))}} +A.bfY.prototype={ +$1(a){var s=a.z +if(s!=null&&s.p(0,this.a))a.c1()}, +$S:27} +A.bfX.prototype={ +$1(a){A.bxS(a,this.a)}, +$S:27} +A.ama.prototype={ +cp(a){return new A.am9(A.ir(null,null,null,t.R,t.X),this,B.aA)}} +A.lI.prototype={ +dY(a){return this.w!==a.w}} +A.a5b.prototype={ +b6(a){var s=this.e +s=new A.a6U(B.d.aa(A.M(s,0,1)*255),s,!1,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sfL(0,this.e) +b.sJD(!1)}} +A.WN.prototype={ +b6(a){var s=new A.a6G(this.e,B.dE,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sLg(0,this.e) +b.sxL(B.dE)}} +A.Ia.prototype={ +b6(a){var s=new A.ML(this.e,this.f,this.r,!1,!1,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.svu(this.e) +b.sadz(this.f) +b.svw(this.r) +b.d4=b.bH=!1}, +D6(a){a.svu(null) +a.sadz(null)}} +A.As.prototype={ +b6(a){var s=new A.a6K(this.e,this.f,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sxT(this.e) +b.smY(this.f)}, +D6(a){a.sxT(null)}} +A.Xp.prototype={ +b6(a){var s=new A.a6J(this.e,A.e1(a),null,this.r,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sUT(0,this.e) +b.smY(this.r) +b.sxT(null) +b.scr(A.e1(a))}} +A.Ar.prototype={ +b6(a){var s=new A.a6I(this.e,this.f,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sxT(this.e) +b.smY(this.f)}, +D6(a){a.sxT(null)}} +A.asd.prototype={ +$1(a){return A.asc(this.c,this.b,new A.uK(this.a,A.e1(a),null))}, +$S:492} +A.a60.prototype={ +b6(a){var s=this,r=new A.a6V(s.e,s.r,s.w,s.y,s.x,null,s.f,null,new A.bk(),A.aK()) +r.b5() +r.sbz(null) +return r}, +b9(a,b){var s=this +b.scC(0,s.e) +b.smY(s.f) +b.sUT(0,s.r) +b.seK(0,s.w) +b.saG(0,s.x) +b.scW(0,s.y)}} +A.a61.prototype={ +b6(a){var s=this,r=new A.a6W(s.r,s.x,s.w,s.e,s.f,null,new A.bk(),A.aK()) +r.b5() +r.sbz(null) +return r}, +b9(a,b){var s=this +b.sxT(s.e) +b.smY(s.f) +b.seK(0,s.r) +b.saG(0,s.w) +b.scW(0,s.x)}} +A.z0.prototype={ +b6(a){var s=this,r=A.e1(a),q=new A.a76(s.w,null,new A.bk(),A.aK()) +q.b5() +q.sbz(null) +q.scZ(0,s.e) +q.siu(s.r) +q.scr(r) +q.srv(s.x) +q.sEg(0,null) +return q}, +b9(a,b){var s=this +b.scZ(0,s.e) +b.sEg(0,null) +b.siu(s.r) +b.scr(A.e1(a)) +b.bH=s.w +b.srv(s.x)}} +A.wl.prototype={ +b6(a){var s=new A.a6R(this.e,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.svm(this.e)}} +A.Az.prototype={ +b6(a){var s=new A.a6N(this.e,this.f,this.x,B.eG,B.eG,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.svm(this.e) +b.salc(this.f) +b.sdA(0,this.x) +b.saWv(B.eG) +b.saTB(B.eG)}} +A.a0c.prototype={ +b6(a){var s=new A.MO(this.e,this.f,A.e1(a),this.r,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){var s +b.syL(this.e) +b.siu(this.f) +b.scr(A.e1(a)) +s=this.r +if(s!==b.d9){b.d9=s +b.aU() +b.bM()}}} +A.a0r.prototype={ +b6(a){var s=new A.a6O(this.e,this.f,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sb0z(this.e) +b.af=this.f}} +A.a7r.prototype={ +b6(a){var s=new A.MY(this.e,A.aK(),null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sb_0(this.e)}} +A.be.prototype={ +b6(a){var s=new A.MV(this.e,A.e1(a),null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sdW(0,this.e) +b.scr(A.e1(a))}} +A.fh.prototype={ +b6(a){var s=new A.MW(this.f,this.r,this.e,A.e1(a),null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.siu(this.e) +b.sb1a(this.f) +b.saUZ(this.r) +b.scr(A.e1(a))}} +A.ik.prototype={} +A.kz.prototype={ +b6(a){var s=new A.MM(this.e,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sVx(this.e)}} +A.Kr.prototype={ +xG(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.gbt(a) +if(r instanceof A.G)r.ae()}}} +A.I9.prototype={ +b6(a){var s=new A.MK(this.e,0,null,null,new A.bk(),A.aK()) +s.b5() +s.G(0,null) +return s}, +b9(a,b){b.sVx(this.e)}} +A.aB.prototype={ +b6(a){return A.bvl(A.o1(this.f,this.e))}, +b9(a,b){b.saau(A.o1(this.f,this.e))}, +fb(){var s,r,q,p,o=this.e,n=this.f +$label0$0:{s=1/0===o +if(s){r=1/0===n +q=n}else{q=null +r=!1}if(r){r="SizedBox.expand" +break $label0$0}if(0===o)r=0===(s?q:n) +else r=!1 +if(r){r="SizedBox.shrink" +break $label0$0}r="SizedBox" +break $label0$0}p=this.a +return p==null?r:r+"-"+p.j(0)}} +A.ep.prototype={ +b6(a){return A.bvl(this.e)}, +b9(a,b){b.saau(this.e)}} +A.a1K.prototype={ +b6(a){var s=new A.a6S(this.e,this.f,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.saX9(0,this.e) +b.saX8(0,this.f)}} +A.qp.prototype={ +b6(a){var s=new A.MU(this.e,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sEd(this.e)}, +cp(a){return new A.ahG(this,B.aA)}} +A.ahG.prototype={} +A.a1f.prototype={ +b6(a){var s=null,r=new A.MS(s,s,s,new A.bk(),A.aK()) +r.b5() +r.sbz(s) +return r}, +b9(a,b){b.salI(null) +b.salH(null)}} +A.a8x.prototype={ +b6(a){var s=a.au(t.I) +s.toString +s=new A.a75(this.e,s.w,null,A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){var s +b.sdW(0,this.e) +s=a.au(t.I) +s.toString +b.scr(s.w)}} +A.m6.prototype={ +b6(a){var s=A.e1(a) +return A.bMS(this.e,null,this.w,this.r,s)}, +b9(a,b){var s +b.siu(this.e) +s=A.e1(a) +b.scr(s) +b.syL(this.r) +b.smY(this.w)}} +A.a19.prototype={ +F(a){var s,r,q=this.w,p=q.length,o=J.mU(p,t.l7) +for(s=this.r,r=0;r=s.b&&s.c>=s.d) +else s=!0}else s=!1 +if(s)m=A.bKp(new A.ep(B.uI,n,n),0,0) +else{s=o.d +if(s!=null)m=new A.fh(s,n,n,m,n)}r=o.gaGA() +if(r!=null)m=new A.be(r,m,n) +s=o.f +if(s!=null)m=new A.wk(s,m,n) +s=o.as +if(s!==B.h){q=A.e1(a) +p=o.r +p.toString +m=A.asc(m,s,new A.aeo(q==null?B.i:q,p,n))}s=o.r +if(s!=null)m=A.Ih(m,s,B.h5) +s=o.w +if(s!=null)m=A.Ih(m,s,B.wn) +s=o.x +if(s!=null)m=new A.ep(s,m,n) +s=o.y +if(s!=null)m=new A.be(s,m,n) +s=o.z +if(s!=null)m=A.a9J(o.Q,m,n,s,!0) +m.toString +return m}} +A.aeo.prototype={ +O9(a){return this.c.F5(new A.I(0,0,0+a.a,0+a.b),this.b)}, +OP(a){return!a.c.l(0,this.c)||a.b!==this.b}} +A.lF.prototype={ +D(){return"ContextMenuButtonType."+this.b}} +A.f5.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.f5&&b.c==s.c&&J.e(b.a,s.a)&&b.b===s.b}, +gB(a){return A.a4(this.c,this.a,this.b,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"ContextMenuButtonItem "+this.b.j(0)+", "+A.c(this.c)}} +A.XE.prototype={ +al2(a,b,c){var s,r +A.brF() +s=A.a1Y(b,t.N1) +s.toString +r=A.oy(b) +if(r==null)r=null +else{r=r.c +r.toString}r=A.n6(new A.asP(A.BG(b,r),c),!1,!1,!1) +$.wo=r +s.vd(0,r) +$.pA=this}, +eT(a){if($.pA!==this)return +A.brF()}} +A.asP.prototype={ +$1(a){return new A.nD(this.a.a,this.b.$1(a),null)}, +$S:13} +A.tm.prototype={ +tc(a,b,c){return A.auh(c,this.w,null,this.y,this.x)}, +dY(a){return!J.e(this.w,a.w)||!J.e(this.x,a.x)||!J.e(this.y,a.y)}} +A.aui.prototype={ +$1(a){var s=a.au(t.Uf) +if(s==null)s=B.h6 +return A.auh(this.e,s.w,this.a,this.d,s.x)}, +$S:495} +A.ahA.prototype={ +F(a){throw A.d(A.mP("A DefaultSelectionStyle constructed with DefaultSelectionStyle.fallback cannot be incorporated into the widget tree, it is meant only to provide a fallback value returned by DefaultSelectionStyle.of() when no enclosing default selection style is present in a BuildContext."))}} +A.a_2.prototype={ +ays(){var s,r,q +switch(A.bY().a){case 3:s=A.qg($.bpW(),t.zU,t.vz) +for(r=$.bpU(),r=A.js(r,r.r),q=t.nR;r.u();)s.n(0,q.a(r.d),B.J) +return s +case 0:case 1:case 5:case 2:case 4:return $.bpW()}switch(A.bY().a){case 0:case 1:case 3:case 5:return null +case 2:return B.J2 +case 4:return $.bBc()}}, +F(a){var s=this.c,r=this.ays() +if(r!=null)s=A.NN(s,"",r) +return A.NN(s,"",A.bH1())}} +A.a_6.prototype={ +q9(a){return new A.au(0,a.b,0,a.d)}, +qe(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.z(q,s>0?r-s:r)}, +oF(a){return!this.b.l(0,a.b)}} +A.kF.prototype={ +D(){return"DismissDirection."+this.b}} +A.IC.prototype={ +a0(){var s=null +return new A.QM(new A.bG(s,t.A),s,s,s)}} +A.Rp.prototype={ +D(){return"_FlingGestureKind."+this.b}} +A.QM.prototype={ +aj(){var s,r,q=this +q.apV() +s=q.ghi() +s.ct() +r=s.ec$ +r.b=!0 +r.a.push(q.gazV()) +s.ct() +s=s.dR$ +s.b=!0 +s.a.push(q.gazX()) +q.U3()}, +ghi(){var s,r=this,q=r.d +if(q===$){r.a.toString +s=A.c2(null,B.T,null,null,r) +r.d!==$&&A.aH() +r.d=s +q=s}return q}, +gtb(){var s=this.ghi().r +if(!(s!=null&&s.a!=null)){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.ghi().m() +var s=this.f +if(s!=null)s.m() +this.apU()}, +glW(){var s=this.a.x +return s===B.Zu||s===B.wE||s===B.ps}, +wU(a){var s,r,q,p +if(a===0)return B.pu +if(this.glW()){s=this.c.au(t.I) +s.toString +r=s.w +$label0$0:{q=B.ae===r +if(q&&a<0){s=B.ps +break $label0$0}p=B.i===r +if(p&&a>0){s=B.ps +break $label0$0}if(!q)s=p +else s=!0 +if(s){s=B.wE +break $label0$0}s=null}return s}return a>0?B.pt:B.wF}, +gQI(){this.a.toString +B.agq.h(0,this.wU(this.w)) +return 0.4}, +ga6f(){var s=this.c.gv(0) +s.toString +return this.glW()?s.a:s.b}, +aw4(a){var s,r=this +if(r.x)return +r.y=!0 +s=r.ghi().r +if(s!=null&&s.a!=null){s=r.ghi().x +s===$&&A.b() +r.w=s*r.ga6f()*J.hs(r.w) +r.ghi().f_(0)}else{r.w=0 +r.ghi().sk(0,0)}r.J(new A.b1X(r))}, +aw5(a){var s,r,q,p=this +if(p.y){s=p.ghi().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.au(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.au(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.hs(r)!==J.hs(p.w))p.J(new A.b1Y(p)) +s=p.ghi().r +if(!(s!=null&&s.a!=null))p.ghi().sk(0,Math.abs(p.w)/p.ga6f())}, +azY(){this.a.toString}, +U3(){var s=this,r=J.hs(s.w),q=s.ghi(),p=s.glW(),o=s.a +if(p){o.toString +p=new A.z(r,0)}else{o.toString +p=new A.z(0,r)}o=t.Ni +s.e=new A.bf(t.m.a(q),new A.b0(B.j,p,o),o.i("bf"))}, +avz(a){var s,r,q,p,o=this +if(o.w===0)return B.u7 +s=a.a +r=s.a +q=s.b +if(o.glW()){s=Math.abs(r) +if(s-Math.abs(q)<400||s<700)return B.u7 +p=o.wU(r)}else{s=Math.abs(q) +if(s-Math.abs(r)<400||s<700)return B.u7 +p=o.wU(q)}if(p===o.wU(o.w))return B.aA1 +return B.aA2}, +aw3(a){var s,r,q,p=this +if(p.y){s=p.ghi().r +s=s!=null&&s.a!=null}else s=!0 +if(s)return +p.y=!1 +if(p.ghi().gbi(0)===B.am){p.B4() +return}s=a.a +r=s.a +q=p.glW()?r.a:r.b +switch(p.avz(s).a){case 1:if(p.gQI()>=1){p.ghi().dq(0) +break}p.w=J.hs(q) +p.ghi().Ll(Math.abs(q)*0.0033333333333333335) +break +case 2:p.w=J.hs(q) +p.ghi().Ll(-Math.abs(q)*0.0033333333333333335) +break +case 0:if(p.ghi().gbi(0)!==B.a9){s=p.ghi().x +s===$&&A.b() +if(s>p.gQI())p.ghi().cd(0) +else p.ghi().dq(0)}break}}, +Hz(a){return this.azW(a)}, +azW(a){var s=0,r=A.n(t.H),q=this +var $async$Hz=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=a===B.am&&!q.y?2:3 +break +case 2:s=4 +return A.f(q.B4(),$async$Hz) +case 4:case 3:if(q.c!=null)q.t6() +return A.l(null,r)}}) +return A.m($async$Hz,r)}, +B4(){var s=0,r=A.n(t.H),q,p=this,o +var $async$B4=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:if(p.gQI()>=1){p.ghi().dq(0) +s=1 +break}s=3 +return A.f(p.GT(),$async$B4) +case 3:o=b +if(p.c!=null)if(o)p.aLc() +else p.ghi().dq(0) +case 1:return A.l(q,r)}}) +return A.m($async$B4,r)}, +GT(){var s=0,r=A.n(t.y),q,p=2,o,n=[],m=this,l,k +var $async$GT=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:s=m.a.f!=null?3:4 +break +case 3:m.x=!0 +l=m.wU(m.w) +p=5 +s=8 +return A.f(m.a.f.$1(l),$async$GT) +case 8:k=b +if(k==null)k=!1 +q=k +n=[1] +s=6 +break +n.push(7) +s=6 +break +case 5:n=[2] +case 6:p=2 +m.x=!1 +s=n.pop() +break +case 7:case 4:q=!0 +s=1 +break +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$GT,r)}, +aLc(){var s,r=this +r.a.toString +s=r.wU(r.w) +r.a.w.$1(s)}, +F(a){var s,r,q,p,o,n,m,l=this,k=null +l.Ad(a) +s=l.a +s.toString +r=l.r +if(r!=null){s=l.glW()?B.aw:B.aN +q=l.z +return A.bvR(s,0,new A.aB(q.a,q.b,k,k),r)}r=l.e +r===$&&A.b() +p=A.aRO(new A.lP(s.c,l.as),r,k,!0) +if(s.x===B.pu)return p +s=l.glW()?l.ga2E():k +r=l.glW()?l.ga2F():k +q=l.glW()?l.ga2D():k +o=l.glW()?k:l.ga2E() +n=l.glW()?k:l.ga2F() +m=l.glW()?k:l.ga2D() +return A.fn(l.a.ax,p,B.S,!1,k,k,k,k,q,s,r,k,k,k,k,k,k,k,k,k,k,k,k,k,m,o,n,!1,B.aV)}} +A.b1X.prototype={ +$0(){this.a.U3()}, +$S:0} +A.b1Y.prototype={ +$0(){this.a.U3()}, +$S:0} +A.UR.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.US.prototype={ +aj(){this.aw() +if(this.gtb())this.tR()}, +fn(){var s=this.i6$ +if(s!=null){s.T() +s.dN() +this.i6$=null}this.oK()}} +A.ID.prototype={ +F(a){var s=A.cr(a,null,t.l).w,r=s.a,q=r.a,p=r.b,o=A.bHC(a),n=A.bHA(o,r),m=A.bHB(A.bHE(new A.I(0,0,0+q,0+p),A.bHD(s)),n) +return new A.be(new A.al(m.a,m.b,q-m.c,p-m.d),A.C9(this.d,s.b_p(m)),null)}} +A.aw3.prototype={ +$1(a){var s=a.gpl(a).gje().mC(0,0) +if(!s)a.gb1w(a) +return s}, +$S:254} +A.aw4.prototype={ +$1(a){return a.gpl(a)}, +$S:498} +A.a_s.prototype={ +gbN(a){var s=this.a +if(s==null)s=null +else{s=s.c +s.toString}return s}} +A.B1.prototype={ +a0(){return new A.R2(A.qF(null),A.qF(null))}, +aTG(a,b,c){return this.d.$3(a,b,c)}, +b_U(a,b,c){return this.e.$3(a,b,c)}} +A.R2.prototype={ +aj(){var s,r=this +r.aw() +s=r.a.c +r.d=s.gbi(s) +s=r.a.c +s.ct() +s=s.ec$ +s.b=!0 +s.a.push(r.gPE()) +r.a93()}, +a0J(a){var s,r=this,q=r.d +q===$&&A.b() +s=r.atD(a,q) +r.d=s +if(q!==s)r.a93()}, +b1(a){var s,r,q=this +q.bb(a) +s=a.c +if(s!==q.a.c){r=q.gPE() +s.dX(r) +s=q.a.c +s.ct() +s=s.ec$ +s.b=!0 +s.a.push(r) +r=q.a.c +q.a0J(r.gbi(r))}}, +atD(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}}, +a93(){var s=this,r=s.d +r===$&&A.b() +switch(r.a){case 0:case 1:s.e.sbt(0,s.a.c) +s.f.sbt(0,B.cT) +break +case 2:case 3:s.e.sbt(0,B.iy) +s.f.sbt(0,new A.la(s.a.c,new A.bV(A.a([],t.x8),t.jc),0)) +break}}, +m(){this.a.c.dX(this.gPE()) +this.ar()}, +F(a){var s=this.a +return s.aTG(a,this.e,s.b_U(a,this.f,s.f))}} +A.ady.prototype={ +b6(a){var s=new A.aj5(this.e,this.f,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){var s +this.a_R(a,b) +s=this.f +b.aZ=s +if(!s){s=b.af +if(s!=null)s.$0() +b.af=null}else if(b.af==null)b.aU()}} +A.aj5.prototype={ +aT(a,b){var s=this +if(s.aZ)if(s.af==null)s.af=a.a.aag(s.E) +s.jN(a,b)}} +A.r5.prototype={ +se3(a,b){this.tD(0,this.a.CF(B.bH,B.i8,b))}, +aOX(a,b,c){var s,r,q,p,o=null +if(!this.a.gaeD()||!c)return A.ew(o,b,this.a.a) +s=b.cO(B.Pi) +r=this.a +q=r.c +r=r.a +p=q.a +q=q.b +return A.ew(A.a([A.ew(o,o,B.c.R(r,0,p)),A.ew(o,s,B.c.R(r,p,q)),A.ew(o,o,B.c.bE(r,q))],t.Ne),b,o)}, +szW(a){var s,r=this.a,q=r.a.length,p=a.b +if(q=s.a&&p<=s.b?s:B.bH,a))}} +A.Pf.prototype={} +A.ko.prototype={ +gk(a){return this.b}} +A.b1W.prototype={ +j0(a,b){return 0}, +pL(a){return a>=this.b}, +i1(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.h(s,o) +else if(a<=n)q=o-1 +else p=o+1}return null}, +aP1(){var s,r=this,q=null,p=r.a.z +if(p===B.Po)return q +s=A.a([],t.ZD) +if(p.b&&r.gKp())s.push(new A.f5(new A.axb(r),B.l2,q)) +if(p.a&&r.gKb())s.push(new A.f5(new A.axc(r),B.l3,q)) +if(p.c&&r.gza())s.push(new A.f5(new A.axd(r),B.l4,q)) +if(p.d&&r.gZp())s.push(new A.f5(new A.axe(r),B.l5,q)) +return s}, +ajb(){var s,r,q,p,o,n,m,l=this,k=l.a.c.a.b,j=l.gaq().b_.e.ah7(),i=l.a.c.a.a +if(j!==i||!k.gce()||k.a===k.b){s=l.gaq().b_.eq() +s=s.gbA(s) +r=l.gaq().b_.eq() +return new A.SF(r.gbA(r),s)}s=k.a +r=k.b +q=B.c.R(i,s,r) +p=q.length===0 +o=(p?B.bN:new A.ev(q)).gW(0) +n=l.gaq().zN(new A.cW(s,s+o.length)) +s=(p?B.bN:new A.ev(q)).gY(0) +m=l.gaq().zN(new A.cW(r-s.length,r)) +s=n==null?null:n.d-n.b +if(s==null){s=l.gaq().b_.eq() +s=s.gbA(s)}r=m==null?null:m.d-m.b +if(r==null){r=l.gaq().b_.eq() +r=r.gbA(r)}return new A.SF(r,s)}, +gaQ5(){var s,r,q,p,o,n,m,l,k=this +if(k.gaq().k6!=null){s=k.gaq().k6 +s.toString +return new A.OZ(s,null)}r=k.ajb() +q=r.b +p=null +o=r.a +p=o +n=q +m=k.a.c.a.b +l=k.gaq().Od(m) +return A.bOn(p,k.gaq(),l,n)}, +gaQ6(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=g.aP1() +if(e==null){e=g.x.ay +s=g.gKb()?new A.axf(g):f +r=g.gKp()?new A.axg(g):f +q=g.gza()?new A.axh(g):f +p=g.gZp()?new A.axi(g):f +o=g.gaWV()?new A.axj(g):f +n=g.gak_()?new A.axk(g):f +m=g.gakV()?new A.axl(g):f +l=g.gaeW()?new A.axm(g):f +k=t.ZD +j=A.a([],k) +i=q!=null +if(!i||e!==B.oF){h=A.bY()===B.bg +e=A.a([],k) +if(r!=null)e.push(new A.f5(r,B.l2,f)) +if(s!=null)e.push(new A.f5(s,B.l3,f)) +if(i)e.push(new A.f5(q,B.l4,f)) +s=m!=null +if(s&&h)e.push(new A.f5(m,B.l6,f)) +if(p!=null)e.push(new A.f5(p,B.l5,f)) +if(o!=null)e.push(new A.f5(o,B.pf,f)) +if(n!=null)e.push(new A.f5(n,B.pg,f)) +if(s&&!h)e.push(new A.f5(m,B.l6,f)) +B.b.G(j,e)}if(l!=null)j.push(new A.f5(l,B.ph,f)) +e=j}B.b.G(e,g.gaLD()) +return e}, +gaLD(){var s,r,q,p,o=A.a([],t.ZD),n=this.a.c.a.b +if(!n.gce()||n.a===n.b)return o +for(s=this.go,r=s.length,q=0;q0||!r.gky())return +s=r.a.c.a +if(s.l(0,r.k3))return +r.z.toString +$.dt().II(s) +r.k3=s}, +a3L(a){var s,r,q,p,o,n,m,l,k=this +if(!B.b.gd_(k.gjj().f).r.gpg()){s=B.b.gd_(k.gjj().f).at +s.toString +return new A.uB(s,a)}r=k.gaq().gv(0) +if(k.a.k2===1){s=a.c +q=a.a +p=r.a +o=s-q>=p?p/2-a.gbq().a:A.M(0,s-p,q) +n=B.fk}else{s=a.gbq() +q=k.gaq().b_.eq() +m=A.bnt(s,Math.max(a.d-a.b,q.gbA(q)),a.c-a.a) +s=m.d +q=m.b +p=r.b +o=s-q>=p?p/2-m.gbq().b:A.M(0,s-p,q) +n=B.cH}s=B.b.gd_(k.gjj().f).at +s.toString +q=B.b.gd_(k.gjj().f).z +q.toString +p=B.b.gd_(k.gjj().f).Q +p.toString +l=A.M(o+s,q,p) +p=B.b.gd_(k.gjj().f).at +p.toString +return new A.uB(l,a.ep(n.ap(0,p-l)))}, +Ik(){var s,r,q,p,o,n,m=this +if(!m.gky()){s=m.a +r=s.c.a +s=s.eM +s.gq3() +s=m.a.eM +s=s.gq3() +q=A.bwn(m) +$.dt().PK(q,s) +s=q +m.z=s +m.a9J() +m.a7m() +m.z.toString +s=m.fr +s===$&&A.b() +p=m.gAP() +o=m.a.db +n=$.dt() +n.Ts(s.d,s.r,s.w,o,p) +n.II(r) +n.Tx() +s=m.a.eM +if(s.gq3().f.a){m.z.toString +n.aIO()}m.k3=r}else{m.z.toString +$.dt().Tx()}}, +a1H(){var s,r,q=this +if(q.gky()){s=q.z +s.toString +r=$.dt() +if(r.d===s)r.Q7() +q.xr=q.k3=q.z=null +q.agq()}}, +aJv(){if(this.p4)return +this.p4=!0 +A.ff(this.gaJ1())}, +aJ2(){var s,r,q,p,o,n=this +n.p4=!1 +s=n.gky() +if(!s)return +s=n.z +s.toString +r=$.dt() +if(r.d===s)r.Q7() +n.k3=n.z=null +s=n.a.eM +s.gq3() +s=n.a.eM +s=s.gq3() +q=A.bwn(n) +r.PK(q,s) +p=q +n.z=p +r.Tx() +s=n.fr +s===$&&A.b() +o=n.gAP() +r.Ts(s.d,s.r,s.w,n.a.db,o) +r.II(n.a.c.a) +n.k3=n.a.c.a}, +aMn(){this.R8=!1 +$.aw.aR$.d.K(0,this.gBW())}, +Nr(){var s=this +if(s.a.d.gcN())s.Ik() +else{s.R8=!0 +$.aw.aR$.d.a4(0,s.gBW()) +s.a.d.iI()}}, +a9t(){var s,r,q=this +if(q.Q!=null){s=q.a.d.gcN() +r=q.Q +if(s){r.toString +r.cg(0,q.a.c.a)}else{r.m() +q.Q=null}}}, +aJH(a){var s,r,q,p,o +if(a==null)return!1 +s=this.c +s.toString +r=t.Lm +q=a.o_(r) +if(q==null)return!1 +for(p=s;p!=null;){o=p.o_(r) +if(o===q)return!0 +if(o==null)p=null +else{s=o.c +s.toString +p=s}}return!1}, +azL(a){var s,r,q,p=this,o=a instanceof A.yu +if(!o&&!(a instanceof A.lc))return +$label0$0:{if(!(o&&p.at!=null))o=a instanceof A.lc&&p.at==null +else o=!0 +if(o)break $label0$0 +if(a instanceof A.lc&&!p.at.b.l(0,p.a.c.a)){p.at=null +p.QJ() +break $label0$0}s=a.b +o=!1 +r=s==null?null:s.o_(t.Lm) +o=$.aw.aR$.x.h(0,p.ay) +if(r==null)q=null +else{q=r.c +q.toString}o=!J.e(o,q)&&p.aJH(s) +if(o)p.a4d(a)}}, +a4d(a){$.aoO() +return}, +GX(){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=g.a +f.toString +s=g.c +s.toString +r=f.c.a +q=g.gaq() +p=g.a +o=p.p2 +n=p.U +m=p.x1 +$.aoO() +p=p.cY +l=$.aW() +k=new A.cS(!1,l) +j=new A.cS(!1,l) +i=new A.cS(!1,l) +h=new A.a9x(s,q,o,g,null,r,k,j,i) +r=h.ga9L() +q.d3.a4(0,r) +q.aR.a4(0,r) +h.Uc() +r=h.gazg() +q=q.k6 +h.e!==$&&A.d1() +h.e=new A.a7Z(s,new A.cS(B.aey,l),new A.xx(),p,B.i7,0,k,h.gaBW(),h.gaBY(),r,B.i7,0,j,h.gaBQ(),h.gaBS(),r,i,B.aac,f,g.CW,g.cx,g.cy,o,g,n,m,g.x,q,new A.XE(),new A.XE()) +return h}, +H9(a,b){var s,r,q,p=this,o=p.a.c,n=o.a.a.length +if(n>>24&255)/255,s) +s=q.gaq() +p=q.a.go +p=A.Y(B.d.aa(255*r),p.gk(p)>>>16&255,p.gk(p)>>>8&255,p.gk(p)&255) +s.gi4().sUZ(p) +if(q.a.as){p=q.gnw().x +p===$&&A.b() +p=p>0}else p=!1 +q.r.sk(0,p)}, +gIL(){var s,r,q=this +if(q.a.d.gcN()){s=q.a +r=s.c.a.b +s=r.a===r.b&&s.as&&q.k2&&!q.gaq().d9}else s=!1 +return s}, +BR(){var s,r=this +if(!r.a.as)return +if(!r.k2)return +s=r.d +if(s!=null)s.S(0) +r.gnw().sk(0,1) +if(r.a.bI)r.gnw().UE(r.ga5d()).a.a.fC(r.ga63()) +else r.d=A.E5(B.ec,new A.ax3(r))}, +SF(){var s,r=this,q=r.x1 +if(q>0){$.aw.toString +$.bC();--q +r.x1=q +if(q===0)r.J(new A.awW())}if(r.a.bI){q=r.d +if(q!=null)q.S(0) +r.d=A.bZ(B.F,new A.awX(r))}else{q=r.d +q=q==null?null:q.b!=null +if(q!==!0&&r.k2)r.d=A.E5(B.ec,new A.awY(r)) +q=r.gnw() +s=r.gnw().x +s===$&&A.b() +q.sk(0,s===0?1:0)}}, +IX(a){var s=this,r=s.gnw() +r.sk(0,s.gaq().d9?1:0) +r=s.d +if(r!=null)r.S(0) +s.d=null +if(a)s.x1=0}, +a8g(){return this.IX(!0)}, +TF(){var s=this +if(!s.gIL())s.a8g() +else if(s.d==null)s.BR()}, +a2y(){var s,r,q,p=this +if(p.a.d.gcN()&&!p.a.c.a.b.gce()){s=p.gH2() +p.a.c.K(0,s) +r=p.a.c +q=p.a0E() +q.toString +r.szW(q) +p.a.c.a4(0,s)}p.U7() +p.TF() +p.a9t() +p.J(new A.awS()) +p.gUj().alJ()}, +awP(){var s,r,q,p=this +if(p.a.d.gcN()&&p.a.d.aQ2())p.Ik() +else if(!p.a.d.gcN()){p.a1H() +s=p.a.c +s.tD(0,s.a.Vg(B.bH))}p.TF() +p.a9t() +s=p.a.d.gcN() +r=$.aw +if(s){r.cU$.push(p) +s=p.c +s.toString +p.to=A.z6(s).ay.d +if(!p.a.x)p.ID(!0) +q=p.a0E() +if(q!=null)p.H9(q,null)}else{r.lJ(p) +p.J(new A.awU(p))}p.t6()}, +a0E(){var s,r=this.a +if(r.M&&r.k2===1&&!this.R8)s=A.dx(B.q,0,r.c.a.a.length,!1) +else s=!r.c.a.b.gce()?A.r6(B.q,this.a.c.a.a.length):null +return s}, +aus(a){if(this.gaq().y==null||!this.gky())return +this.a9J()}, +a9J(){var s=this.gaq().gv(0),r=this.gaq().bB(0,null),q=this.z +if(!s.l(0,q.a)||!r.l(0,q.b)){q.a=s +q.b=r +$.dt().aK8(s,r)}}, +a7n(a){var s,r,q,p=this +if(!p.gky())return +p.aMZ() +s=p.a.c.a.c +r=p.gaq().zN(s) +if(r==null){q=s.gce()?s.a:0 +r=p.gaq().mz(new A.b_(q,B.q))}p.z.akq(r) +p.aMz() +$.cp.p2$.push(p.gaJs())}, +a7m(){return this.a7n(null)}, +a9E(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null +e.a.toString +s=A.bY() +if(s!==B.aG)return +if(B.b.gd_(e.gjj().f).k4!==B.jQ)return +s=e.gaq().b_.e +s.toString +e.a.toString +$label0$0:{r=e.c +r.toString +r=A.de(r,B.cP) +r=r==null?d:r.gem() +if(r==null)r=B.aB +break $label0$0}q=e.a.db +p=e.gAP() +e.a.toString +o=e.c +o.toString +o=A.auo(o) +n=new A.bcX(q,p,r,o,d,e.a.gmG(),e.y2,e.gaq().gv(0),s) +if(a)m=B.cd +else{r=e.xr +r=r==null?d:r.V9(n) +m=r==null?B.cd:r}if(m.a<3)return +e.xr=n +l=A.a([],t.u1) +k=s.t3(!1) +j=new A.le(k,0,0) +for(i=0;j.GD(1,j.c);i=h){s=j.d +h=i+(s==null?j.d=B.c.R(k,j.b,j.c):s).length +s=e.gaq() +r=i1){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.aSU(s,o) +q=r.b +if(o===s.length)r.a7f(2,q) +else{r.a7f(1,q) +r.GD(1,r.b)}o=r.a +p.jG(new A.dS(B.c.R(o,0,r.b)+new A.ev(r.gI(0)).gY(0)+new A.ev(r.gI(0)).gW(0)+B.c.bE(o,r.c),A.r6(B.q,r.b+r.gI(0).length),B.bH),B.b2)}, +a70(a){var s=this.a.c.a,r=a.a.agz(a.c,a.b) +this.jG(r,a.d) +if(r.l(0,s))this.a2y()}, +aJB(a){if(a.a)this.m2(new A.b_(this.a.c.a.a.length,B.q)) +else this.m2(B.i6)}, +awR(a){var s,r,q,p,o,n,m,l=this +if(a.b!==B.jR)return +s=B.b.gd_(l.gjj().f) +if(l.a.k2===1){r=l.gjj() +q=s.Q +q.toString +r.hH(q) +return}r=s.Q +r.toString +if(r===0){r=s.z +r.toString +r=r===0}else r=!1 +if(r)return +p=t._N.a(l.ay.gad()) +p.toString +o=A.bnC(p,a) +r=s.at +r.toString +q=s.z +q.toString +n=s.Q +n.toString +m=A.M(r+o,q,n) +if(m===r)return +l.gjj().hH(m)}, +axh(a){var s,r,q,p,o,n,m,l,k,j,i=this +if(i.a.k2===1)return +s=i.gaq().mz(i.a.c.a.b.gfh()) +r=t._N.a(i.ay.gad()) +r.toString +q=A.bnC(r,new A.nh(a.gLp(a)?B.ah:B.at,B.jR)) +p=B.b.gd_(i.gjj().f) +if(a.gLp(a)){o=i.a.c.a +if(o.b.d>=o.a.length)return +o=s.b+q +n=p.Q +n.toString +m=i.gaq().gv(0) +l=p.at +l.toString +k=o+l>=n+m.b?new A.b_(i.a.c.a.a.length,B.q):i.gaq().jd(A.ct(i.gaq().bB(0,null),new A.z(s.a,o))) +j=i.a.c.a.b.Vh(k.a)}else{if(i.a.c.a.b.d<=0)return +o=s.b+q +n=p.at +n.toString +k=o+n<=0?B.i6:i.gaq().jd(A.ct(i.gaq().bB(0,null),new A.z(s.a,o))) +j=i.a.c.a.b.Vh(k.a)}i.m2(j.gfh()) +i.jG(i.a.c.a.lt(j),B.b2)}, +aMT(a){var s=a.b +this.m2(s.gfh()) +this.jG(a.a.lt(s),a.c)}, +gUj(){var s,r=this,q=r.bR +if(q===$){s=A.a([],t.ot) +r.bR!==$&&A.aH() +q=r.bR=new A.Uk(r,new A.bV(s,t.wS),t.Wp)}return q}, +aD2(a){var s=this.Q +if(s==null)s=null +else{s=s.e +s===$&&A.b() +s=s.gEM()}if(s===!0){this.pJ(!1) +return null}s=this.c +s.toString +return A.vY(s,a,t.xm)}, +avr(a){switch(A.bY().a){case 0:case 2:case 1:switch(a.ge1(a).a){case 0:this.a.d.jb() +break +case 1:case 2:case 3:case 5:this.a.d.jb() +break +case 4:throw A.d(A.cE("Unexpected pointer down event for trackpad"))}break +case 3:case 4:case 5:this.a.d.jb() +break}}, +garF(){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.A +if(b1===$){s=t.ot +r=A.a([],s) +q=t.wS +b1=b0.by +if(b1===$){p=A.a([],s) +b0.by!==$&&A.aH() +b1=b0.by=new A.dv(b0.gaIG(),new A.bV(p,q),t.Tx)}o=b0.bI +if(o===$){p=A.a([],s) +b0.bI!==$&&A.aH() +o=b0.bI=new A.dv(b0.gaMS(),new A.bV(p,q),t.ZQ)}p=A.a([],s) +n=A.a([],s) +m=b0.gatL() +l=b0.gaF3() +k=A.a([],s) +j=b0.c +j.toString +j=new A.rk(b0,m,l,new A.bV(k,q),t.dA).h2(j) +k=b0.gaFl() +i=A.a([],s) +h=b0.c +h.toString +h=new A.rk(b0,k,l,new A.bV(i,q),t.Uz).h2(h) +i=b0.gaE6() +g=b0.gaF5() +f=A.a([],s) +e=b0.c +e.toString +e=new A.rk(b0,i,g,new A.bV(f,q),t.Fb).h2(e) +m=A.vK(b0,m,l,!1,!1,!1,t._w) +f=b0.c +f.toString +f=m.h2(f) +m=A.a([],s) +d=b0.c +d.toString +d=new A.dv(b0.gaxg(),new A.bV(m,q),t.vr).h2(d) +m=A.vK(b0,k,l,!1,!0,!1,t.P9) +c=b0.c +c.toString +c=m.h2(c) +m=b0.gaGT() +b=A.vK(b0,m,l,!1,!0,!1,t.cP) +a=b0.c +a.toString +a=b.h2(a) +b=A.vK(b0,i,g,!1,!0,!1,t.OO) +a0=b0.c +a0.toString +a0=b.h2(a0) +b=b0.gUj() +a1=b0.c +a1.toString +a1=b.h2(a1) +b=b0.gUj() +a2=b0.c +a2.toString +a2=b.h2(a2) +m=A.vK(b0,m,l,!1,!0,!1,t.b6) +b=b0.c +b.toString +b=m.h2(b) +m=b0.gawm() +a3=A.vK(b0,m,l,!1,!0,!1,t.HH) +a4=b0.c +a4.toString +a4=a3.h2(a4) +l=A.vK(b0,k,l,!1,!0,!1,t.eI) +k=b0.c +k.toString +k=l.h2(k) +l=A.a([],s) +a3=b0.c +a3.toString +a3=new A.dv(b0.gaJA(),new A.bV(l,q),t.sl).h2(a3) +l=A.a([],s) +i=A.vK(b0,i,g,!1,!0,!0,t.oB) +a5=b0.c +a5.toString +a5=i.h2(a5) +g=A.vK(b0,m,g,!0,!0,!0,t.gt) +m=b0.c +m.toString +m=g.h2(m) +g=A.a([],s) +i=b0.c +i.toString +i=new A.ak4(b0,new A.bV(g,q)).h2(i) +g=A.a([],s) +a6=b0.c +a6.toString +a6=new A.adU(b0,new A.bV(g,q)).h2(a6) +g=A.a([],s) +a7=b0.c +a7.toString +a7=new A.dv(new A.awR(b0),new A.bV(g,q),t.gv).h2(a7) +a8=b0.a2 +if(a8===$){s=A.a([],s) +b0.a2!==$&&A.aH() +a8=b0.a2=new A.dv(b0.gaMb(),new A.bV(s,q),t.j5)}s=b0.c +s.toString +a9=A.C([B.avt,new A.a_t(!1,new A.bV(r,q)),B.av5,b1,B.avh,o,B.auJ,new A.a_n(!0,new A.bV(p,q)),B.tG,new A.dv(b0.gaD1(),new A.bV(n,q),t.OZ),B.auH,j,B.avk,h,B.auI,e,B.auD,f,B.auM,d,B.auX,c,B.av2,a,B.avw,a0,B.avu,a1,B.avv,a2,B.auC,b,B.auY,a4,B.auB,k,B.avm,a3,B.av7,new A.dv(b0.gawQ(),new A.bV(l,q),t.fn),B.avl,a5,B.avz,m,B.av8,i,B.auF,a6,B.av1,a7,B.avc,a8.h2(s)],t.u,t.od) +b0.A!==$&&A.aH() +b0.A=a9 +b1=a9}return b1}, +F(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=null +c.Ad(a) +s=c.a.p2 +$label0$0:{r=A.de(a,B.cP) +r=r==null?b:r.gem() +if(r==null)r=B.aB +break $label0$0}q=c.gky() +p=c.a +o=p.x2 +if(p.d.gcN()){p=c.a.xr +if(p==null)p=c.gavq()}else p=b +n=c.a.y2 +m=c.garF() +l=c.a +k=l.c +j=l.d +i=l.cx +l=l.k2!==1?B.ah:B.dD +h=c.gjj() +g=c.a +f=g.aE +e=g.U +g=g.H +d=A.uD(a).abX(!1,c.a.k2!==1) +return new A.ady(c.gaur(),q,A.a9r(A.ov(A.rY(m,new A.Ed(k,new A.ax6(c),new A.ax7(),new A.ax8(c),j,i,A.tA(!1,b,new A.ea(new A.ax9(c),A.aQn(l,B.w,h,e,!0,B.aU,c.ay,f,g,d,b,new A.axa(c,s,r)),b,t.WA),b,b,b,j,!1,b,b,b,b,b,b),b,t.pm)),n,b,b,b,b),b,o,p),b)}, +ab2(){var s,r,q,p,o,n,m,l=this,k=null,j=l.a +j.toString +s=l.y2 +if(s>=0&&s<=j.c.a.a.length){r=A.a([],t.s6) +j=l.a +q=j.c.a.a.length-l.y2 +if(j.k2!==1){r.push(B.aAR) +r.push(new A.rt(new A.R(l.gaq().gv(0).a,0),B.ax,B.hY,k,k))}else r.push(B.aAS) +j=l.fr +j===$&&A.b() +s=A.a([A.ew(k,k,B.c.R(l.a.c.a.a,0,q))],t.VO) +B.b.G(s,r) +s.push(A.ew(k,k,B.c.bE(l.a.c.a.a,q))) +return A.ew(s,j,k)}p=!j.x&&j.d.gcN() +if(l.ga87()){o=!l.a.c.a.gaeD()||!p +j=l.a.c.a +s=l.fr +s===$&&A.b() +n=l.dy +n===$&&A.b() +n=n.c +n.toString +m=l.fx +m.toString +return A.bUW(j,o,s,n,m)}j=l.a.c +s=l.c +s.toString +n=l.fr +n===$&&A.b() +return j.aOX(s,n,p)}} +A.awV.prototype={ +$0(){}, +$S:0} +A.axn.prototype={ +$1(a){var s=this.a +if(s.c!=null)s.m2(s.a.c.a.b.gfh())}, +$S:3} +A.awZ.prototype={ +$1(a){var s=this.a +if(s.c!=null)s.m2(s.a.c.a.b.gfh())}, +$S:3} +A.axb.prototype={ +$0(){this.a.Kq(B.b3)}, +$S:0} +A.axc.prototype={ +$0(){this.a.Kc(B.b3)}, +$S:0} +A.axd.prototype={ +$0(){this.a.vv(B.b3)}, +$S:0} +A.axe.prototype={ +$0(){this.a.Oy(B.b3)}, +$S:0} +A.axf.prototype={ +$0(){return this.a.Kc(B.b3)}, +$S:0} +A.axg.prototype={ +$0(){return this.a.Kq(B.b3)}, +$S:0} +A.axh.prototype={ +$0(){return this.a.vv(B.b3)}, +$S:0} +A.axi.prototype={ +$0(){return this.a.Oy(B.b3)}, +$S:0} +A.axj.prototype={ +$0(){return this.a.Ma(B.b3)}, +$S:0} +A.axk.prototype={ +$0(){return this.a.FC(B.b3)}, +$S:0} +A.axl.prototype={ +$0(){return this.a.G2(B.b3)}, +$S:0} +A.axm.prototype={ +$0(){return this.a.aLa(B.b3)}, +$S:0} +A.ax4.prototype={ +$0(){var s=0,r=A.n(t.H),q=this,p,o,n,m,l +var $async$$0=A.j(function(a,b){if(a===1)return A.k(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.f(n.fy.N5(q.c.a,l,m.x),$async$$0) +case 4:p=b +if(p!=null&&n.gPD())n.a6v(B.b3,p) +else n.k8() +case 3:return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.axo.prototype={ +$1(a){var s,r=this.a +if(r.c!=null&&r.gaq().id!=null){r.R8=!0 +$.aw.aR$.d.a4(0,r.gBW()) +s=r.c +s.toString +A.Bn(s).aaQ(0,r.a.d)}}, +$S:3} +A.axq.prototype={ +$1(a){var s,r=this +if(r.b)r.a.Q.lQ() +if(r.c){s=r.a.Q +s.ui() +s=s.e +s===$&&A.b() +s.ZK()}}, +$S:3} +A.axr.prototype={ +$1(a){this.a.Ik()}, +$S:3} +A.ax_.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h=this.a +h.ry=!1 +s=$.aw.aR$.x.h(0,h.w) +s=s==null?null:s.gag() +t.CA.a(s) +if(s!=null){r=s.cu.gce() +r=!r||h.gjj().f.length===0}else r=!0 +if(r)return +r=s.b_.eq() +q=r.gbA(r) +p=h.a.aQ.d +r=h.Q +if((r==null?null:r.c)!=null){o=r.c.zI(q).b +n=Math.max(o,48) +p=Math.max(o/2-h.Q.c.zH(B.i7,q).b+n/2,p)}m=h.a.aQ.Ke(p) +l=h.a3L(s.mz(s.cu.gfh())) +k=h.a.c.a.b +if(k.a===k.b)j=l.b +else{i=s.nn(k) +if(i.length===0)j=l.b +else if(k.c>>24&255)/255,n) +n=b4.a.go +n=A.Y(B.d.aa(255*m),n.gk(n)>>>16&255,n.gk(n)>>>8&255,n.gk(n)&255) +p=b4.a +l=p.k1 +k=p.x +p=p.d.gcN() +j=b4.a +i=j.k2 +h=j.k3 +j=j.gmG() +g=b4.Q +if(g==null)g=b3 +else{g=g.e +g===$&&A.b() +g=$.pA===g.p1}if(g===!0){b4.dy===$&&A.b() +g=b4.a +f=g.p1 +e=f +f=g +g=e}else{g=b4.a +f=g.p1 +e=f +f=g +g=e}d=this.c +c=b4.gAP() +b4.a.toString +b=A.auo(b8) +a=b4.a +a0=a.e +a1=a.bx +a2=a.a2 +a3=a.by +a4=a.bR +if(a4==null)a4=B.j +a5=a.X +a6=a.a9 +a7=a.A +a=a.M +a8=b4.c +a8.toString +a8=A.cr(a8,B.e7,t.l).w +a9=b4.bx +b0=b4.a +b1=b0.id +b0=b0.fT +b2=A.bx5(q,d) +return new A.wl(b4.CW,new A.ck(A.cJ(b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b6,b7,b3,b3,b3,b3,b3,b3,b3,b3,b3,b5,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3,b3),!1,!1,!1,!1,new A.Tc(new A.a8i(new A.R5(q,o,n,b4.cx,b4.cy,l,b4.r,!0,k,p,i,h,!1,j,g,d,f.db,c,b3,a0,!1,b,B.aX,b9,!0,a1,a2,a3,a4,a7,a5,a6,a,b4,a8.b,a9,b1,b0,b2,r),b3),s,r,new A.ax5(b4),!0,b3),b3),b3)}, +$S:516} +A.ax5.prototype={ +$0(){var s=this.a +s.Ik() +s.a9E(!0)}, +$S:0} +A.R5.prototype={ +b6(a){var s,r=this,q=null,p=r.ax,o=r.cy,n=A.C0(a),m=r.f.b,l=A.bxR(),k=A.bxR(),j=$.aW(),i=A.aK(),h=A.aK() +if(o.l(0,B.aB))o=new A.mj(1) +s=p===1?1:q +o=A.uZ(q,n,s,r.CW,r.e,r.db,r.dx,r.fy,o,r.go) +p=new A.yb(l,k,!0,r.RG,r.fr,!1,r.R8,new A.cS(!0,j),new A.cS(!0,j),o,!1,r.z,r.at,!0,r.as,p,r.ay,!1,m,r.id,r.k2,r.k3,r.p1,r.w,r.x,r.p4,r.to,B.j,i,h,0,q,q,!1,new A.bk(),A.aK()) +p.b5() +l.sLE(r.cx) +l.sLF(m) +l.sZr(r.p2) +l.sZs(r.p3) +k.sLE(r.ry) +k.sLF(r.rx) +p.gi4().sUZ(r.r) +p.gi4().sach(r.k4) +p.gi4().sacg(r.ok) +p.gi4().saaS(r.y) +p.a9m(q) +p.a9u(q) +p.G(0,q) +return p}, +b9(a,b){var s,r,q=this +b.se3(0,q.e) +b.gi4().sUZ(q.r) +b.salB(q.w) +b.saSS(q.x) +b.gi4().saaS(q.y) +b.sal6(q.z) +b.saTF(!0) +b.sXW(0,q.as) +b.scN(q.at) +b.srO(q.ax) +b.saXk(q.ay) +b.sW0(!1) +b.smG(q.CW) +s=b.M +s.sLE(q.cx) +b.sem(q.cy) +b.st_(0,q.db) +b.scr(q.dx) +r=A.C0(a) +b.srM(0,r) +b.szW(q.f.b) +b.sdA(0,q.id) +b.cB=!0 +b.svM(q.fy) +b.st0(q.go) +b.saXM(q.fr) +b.saXL(!1) +b.saRf(q.k2) +b.saRe(q.k3) +b.gi4().sach(q.k4) +b.gi4().sacg(q.ok) +s.sZr(q.p2) +s.sZs(q.p3) +b.saSJ(q.p4) +b.H=q.R8 +b.snR(0,q.RG) +b.saZ0(q.p1) +s=b.U +s.sLE(q.ry) +r=q.to +if(r!==b.dK){b.dK=r +b.aU() +b.bM()}s.sLF(q.rx)}, +gk(a){return this.f}} +A.bcX.prototype={ +V9(a){var s,r,q=this +if(a===q)return B.dX +s=!0 +if(q.a===a.a)if(q.b===a.b){if(q.c.l(0,a.c))r=!B.Pd.l(0,B.Pd)||!q.f.l(0,a.f)||q.r!==a.r||!q.w.l(0,a.w) +else r=s +s=r}return s?B.cd:q.x.bO(0,a.x)}} +A.Tc.prototype={ +a0(){var s=$.bxI +$.bxI=s+1 +return new A.ajX(B.e.j(s))}, +b0N(){return this.f.$0()}} +A.ajX.prototype={ +aj(){var s=this +s.aw() +s.a.toString +$.dt().f.n(0,s.d,s)}, +b1(a){this.bb(a) +this.a.toString}, +m(){$.dt().f.C(0,this.d) +this.ar()}, +gaq(){var s=this.a.e +s=$.aw.aR$.x.h(0,s) +s=s==null?null:s.gag() +return t.CA.a(s)}, +aW6(a){var s,r,q,p,o=this,n=o.gpl(0),m=o.gaq() +m=m==null?null:m.f5 +if(m===!0)return!1 +if(n.l(0,B.ar))return!1 +if(!n.XB(a))return!1 +s=n.hG(a) +r=A.aBC() +m=$.aw +m.toString +q=s.gbq() +p=o.c +p.toString +m.DF(r,q,A.z6(p).a) +return B.b.fQ(r.a,new A.bcY(o))}, +gpl(a){var s=t.Qv.a(this.c.gag()) +if(s==null||this.c==null||s.y==null)return B.ar +return A.f9(s.bB(0,null),new A.I(0,0,0+s.gv(0).a,0+s.gv(0).b))}, +F(a){return this.a.c}, +$ibvF:1} +A.bcY.prototype={ +$1(a){return a.a.l(0,this.a.gaq())}, +$S:517} +A.rt.prototype={ +JN(a,b,c){var s=this.a,r=s!=null +if(r)a.ze(s.Fv(c)) +s=this.x +a.aNY(s.a,s.b,this.b) +if(r)a.cV()}} +A.rk.prototype={ +iB(a,b){var s,r,q,p,o,n=this.e,m=n.a.c.a.b +if(!m.gce())return null +s=n.a1k() +r=m.a +q=m.b +if(r!==q){r=s.ij(r) +if(r==null)r=n.a.c.a.a.length +q=s.ik(q-1) +if(q==null)q=0 +b.toString +return A.vY(b,new A.nd(n.a.c.a,"",new A.cW(r,q),B.b2),t.UM)}r=a.a +p=this.r.$3(m.gr_(),r,this.f.$0()).a +q=m.c +if(r){r=s.ij(q) +if(r==null)r=n.a.c.a.a.length}else{r=s.ik(q-1) +if(r==null)r=0}o=A.dx(B.q,r,p,!1) +b.toString +return A.vY(b,new A.nd(n.a.c.a,"",o,B.b2),t.UM)}, +jv(a){return this.iB(a,null)}, +gn9(){var s=this.e.a +return!s.x&&s.c.a.b.gce()}} +A.Uj.prototype={ +iB(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.M +i=g.a +s=g.b +r=i===s +if(!r&&!k.f&&f){b.toString +return A.vY(b,new A.mb(h,A.r6(B.q,a.a?s:i),B.b2),t.gU)}q=g.gfh() +if(a.d){i=a.a +h=!1 +if(i){s=j.gaq().zK(q).b +if(new A.b_(s,B.aW).l(0,q)){h=j.a.c.a.a +h=s!==h.length&&h.charCodeAt(q.a)!==10}}if(h)q=new A.b_(q.a,B.q) +else{if(!i){i=j.gaq().zK(q).a +i=new A.b_(i,B.q).l(0,q)&&i!==0&&j.a.c.a.a.charCodeAt(q.a-1)!==10}else i=!1 +if(i)q=new A.b_(q.a,B.aW)}}i=k.r +if(i){h=g.c +s=g.d +p=a.a?h>s:h"))}, +gew(){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}, +gcN(){if(!this.go0()){var s=this.w +if(s==null)s=null +else{s=s.c +s=s==null?null:B.b.p(s.gew(),this)}s=s===!0}else s=!0 +return s}, +go0(){var s=this.w +return(s==null?null:s.c)===this}, +gml(){return this.gjr()}, +a1E(){var s,r,q,p,o=this.ay +if(o==null)return +this.ay=null +s=this.as +r=s.length +if(r!==0)for(q=0;q")).az(0,B.b.gzh(r))}}b.Q=null +b.a1E() +B.b.C(this.as,b) +for(r=this.gew(),q=r.length,p=0;p#"+s+q}, +$iaA:1} +A.azT.prototype={ +$1(a){return!a.gjf()&&a.b&&B.b.hr(a.gew(),A.hq())}, +$S:36} +A.azS.prototype={ +$1(a){return a.gjr()===this.a}, +$S:36} +A.tC.prototype={ +gml(){return this}, +gjp(){return this.b&&A.er.prototype.gjp.call(this)}, +gEQ(){if(!(this.b&&B.b.hr(this.gew(),A.hq())))return B.uQ +return A.er.prototype.gEQ.call(this)}, +FN(a){if(a.Q==null)this.Iv(a) +if(this.gcN())a.nx(!0) +else a.xq()}, +aaQ(a,b){var s,r=this +if(b.Q==null)r.Iv(b) +s=r.w +if(s!=null)s.w.push(new A.ad0(r,b)) +s=r.w +if(s!=null)s.Bm()}, +nx(a){var s,r,q,p=this,o=p.fx +while(!0){if(o.length!==0){s=B.b.gY(o) +if(s.b&&B.b.hr(s.gew(),A.hq())){s=B.b.gY(o) +r=s.ay +if(r==null){q=s.Q +r=s.ay=q==null?null:q.gml()}s=r==null}else s=!0}else s=!1 +if(!s)break +o.pop()}o=A.qb(o) +if(!a||o==null){if(p.b&&B.b.hr(p.gew(),A.hq())){p.xq() +p.a5E(p)}return}o.nx(!0)}} +A.tB.prototype={ +D(){return"FocusHighlightMode."+this.b}} +A.azR.prototype={ +D(){return"FocusHighlightStrategy."+this.b}} +A.acR.prototype={ +uE(a){return this.a.$1(a)}} +A.Jz.prototype={ +gaJ0(){return!0}, +m(){var s,r=this,q=r.e +if(q!=null)$.aw.lJ(q) +q=r.a +s=$.h2.yx$ +s===$&&A.b() +if(J.e(s.a,q.gadP())){$.iq.bI$.b.C(0,q.gadR()) +s=$.h2.yx$ +s===$&&A.b() +s.a=null}q.f=new A.q4(A.kR(null,null,t.Su,t.S),t.op) +r.b.m() +r.dN()}, +asm(a){var s,r,q=this +if(a===B.dB)if(q.c!==q.b)q.f=null +else{s=q.f +if(s!=null){s.iI() +q.f=null}}else{s=q.c +r=q.b +if(s!==r){q.r=r +q.f=s +q.aaD()}}}, +Bm(){if(this.x)return +this.x=!0 +A.ff(this.gaOl())}, +aaD(){var s,r,q,p,o,n,m,l,k,j=this +j.x=!1 +s=j.c +for(r=j.w,q=r.length,p=j.b,o=0;o")) +if(!r.gav(0).u())p=null +else p=b?r.gY(0):r.gW(0)}return p==null?a:p}, +a36(a,b){return this.R6(a,!1,b)}, +aVT(a){}, +V0(a,b){}, +Id(a,b){var s,r,q,p,o,n,m,l=this,k=a.gml() +k.toString +l.ws(k) +l.uU$.C(0,k) +s=A.qb(k.fx) +r=s==null +if(r){q=b?l.a36(a,!1):l.R6(a,!0,!1) +return l.xh(q,b?B.ew:B.ex,b)}if(r)s=k +p=A.bmd(k,s) +if(b&&s===B.b.gY(p))switch(k.fr.a){case 1:s.jb() +return!1 +case 2:o=k.gjr() +if(o!=null&&o!==$.aw.aR$.d.b){s.jb() +k=o.e +k.toString +A.Bo(k).Id(o,!0) +k=s.gjr() +return(k==null?null:A.qb(k.fx))!==s}return l.xh(B.b.gW(p),B.ew,b) +case 0:return l.xh(B.b.gW(p),B.ew,b)}if(!b&&s===B.b.gW(p))switch(k.fr.a){case 1:s.jb() +return!1 +case 2:o=k.gjr() +if(o!=null&&o!==$.aw.aR$.d.b){s.jb() +k=o.e +k.toString +A.Bo(k).Id(o,!1) +k=s.gjr() +return(k==null?null:A.qb(k.fx))!==s}return l.xh(B.b.gY(p),B.ex,b) +case 0:return l.xh(B.b.gY(p),B.ex,b)}for(k=J.ay(b?p:new A.e5(p,A.af(p).i("e5<1>"))),n=null;k.u();n=m){m=k.gI(k) +if(n===s)return l.xh(m,b?B.ew:B.ex,b)}return!1}} +A.azW.prototype={ +$1(a){return a.b&&B.b.hr(a.gew(),A.hq())&&!a.gjf()}, +$S:36} +A.azY.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(!n.ga_(0))o=n}if(b===B.nJ){m=J.nX(o) +o=new A.e5(m,A.af(m).i("e5<1>"))}l=J.apc(o,new A.avT(new A.I(g.gcf(0).a,-1/0,g.gcf(0).c,1/0))) +if(!l.ga_(0)){p=B.b.gW(A.bHv(g.gcf(0).gbq(),l)) +break}p=B.b.gW(A.bHw(g.gcf(0).gbq(),o)) +break +case 1:case 3:o=i.aL2(b,g.gcf(0),h.gEQ()) +if(o.length===0)break +if(q!=null&&!q.d.gaaL()){n=new A.bh(o,new A.avU(q),A.af(o).i("bh<1>")) +if(!n.ga_(0))o=n}if(b===B.tE){m=J.nX(o) +o=new A.e5(m,A.af(m).i("e5<1>"))}l=J.apc(o,new A.avV(new A.I(-1/0,g.gcf(0).b,1/0,g.gcf(0).d))) +if(!l.ga_(0)){p=B.b.gW(A.bHu(g.gcf(0).gbq(),l)) +break}p=B.b.gW(A.bHx(g.gcf(0).gbq(),o)) +break}if(p!=null){m=i.uU$ +k=m.h(0,h) +j=new A.EM(b,g) +if(k!=null)k.a.push(j) +else m.n(0,h,new A.aeJ(A.a([j],t.Kj))) +switch(r){case 0:case 3:i.a.$2$alignmentPolicy(p,B.ex) +break +case 2:case 1:i.a.$2$alignmentPolicy(p,B.ew) +break}return!0}return!1}} +A.bbC.prototype={ +$1(a){return a.b===this.a}, +$S:522} +A.avR.prototype={ +$2(a,b){var s=this.a +if(s.b)if(s.a)return B.d.bO(a.gcf(0).b,b.gcf(0).b) +else return B.d.bO(b.gcf(0).d,a.gcf(0).d) +else if(s.a)return B.d.bO(a.gcf(0).a,b.gcf(0).a) +else return B.d.bO(b.gcf(0).c,a.gcf(0).c)}, +$S:68} +A.avO.prototype={ +$2(a,b){var s=a.gcf(0).gbq(),r=b.gcf(0).gbq(),q=this.a,p=A.blC(q,s,r) +if(p===0)return A.blB(q,s,r) +return p}, +$S:68} +A.avN.prototype={ +$2(a,b){var s=a.gcf(0).gbq(),r=b.gcf(0).gbq(),q=this.a,p=A.blB(q,s,r) +if(p===0)return A.blC(q,s,r) +return p}, +$S:68} +A.avP.prototype={ +$2(a,b){var s,r,q,p=this.a,o=a.gcf(0),n=b.gcf(0),m=o.a,l=p.a,k=o.c +m=Math.abs(m-l)=s.c}, +$S:36} +A.avJ.prototype={ +$2(a,b){return B.d.bO(a.gcf(0).gbq().a,b.gcf(0).gbq().a)}, +$S:68} +A.avK.prototype={ +$1(a){var s=this.a +return!a.gcf(0).l(0,s)&&a.gcf(0).gbq().b<=s.b}, +$S:36} +A.avL.prototype={ +$1(a){var s=this.a +return!a.gcf(0).l(0,s)&&a.gcf(0).gbq().b>=s.d}, +$S:36} +A.avM.prototype={ +$2(a,b){return B.d.bO(a.gcf(0).gbq().b,b.gcf(0).gbq().b)}, +$S:68} +A.avG.prototype={ +$1(a){var s,r,q=this,p=q.b.a.pop().b,o=p.e +o.toString +o=A.qR(o) +s=$.aw.aR$.d.c.e +s.toString +if(o!=A.qR(s)){o=q.a +s=q.c +o.ws(s) +o.uU$.C(0,s) +return!1}switch(a.a){case 0:case 3:r=B.ex +break +case 1:case 2:r=B.ew +break +default:r=null}q.a.a.$2$alignmentPolicy(p,r) +return!0}, +$S:524} +A.avS.prototype={ +$1(a){var s=a.e +s.toString +return A.qR(s)===this.a}, +$S:36} +A.avT.prototype={ +$1(a){return!a.gcf(0).hG(this.a).ga_(0)}, +$S:36} +A.avU.prototype={ +$1(a){var s=a.e +s.toString +return A.qR(s)===this.a}, +$S:36} +A.avV.prototype={ +$1(a){return!a.gcf(0).hG(this.a).ga_(0)}, +$S:36} +A.h7.prototype={ +gacB(){var s=this.d +if(s==null){s=this.c.e +s.toString +s=this.d=new A.bbA().$1(s)}s.toString +return s}} +A.bbz.prototype={ +$1(a){var s=a.gacB() +return A.tW(s,A.af(s).c)}, +$S:525} +A.bbB.prototype={ +$2(a,b){var s +switch(this.a.a){case 1:s=B.d.bO(a.b.a,b.b.a) +break +case 0:s=B.d.bO(b.b.c,a.b.c) +break +default:s=null}return s}, +$S:259} +A.bbA.prototype={ +$1(a){var s,r=A.a([],t.vl),q=t.I,p=a.jc(q) +for(;p!=null;){r.push(q.a(p.gaL())) +s=A.bSZ(p) +p=s==null?null:s.jc(q)}return r}, +$S:527} +A.p6.prototype={ +gcf(a){var s,r,q,p,o=this +if(o.b==null)for(s=o.a,r=A.af(s).i("ad<1,I>"),s=new A.ad(s,new A.bbx(),r),s=new A.ci(s,s.gt(0),r.i("ci")),r=r.i("aN.E");s.u();){q=s.d +if(q==null)q=r.a(q) +p=o.b +if(p==null){o.b=q +p=q}o.b=p.nT(q)}s=o.b +s.toString +return s}} +A.bbx.prototype={ +$1(a){return a.b}, +$S:528} +A.bby.prototype={ +$2(a,b){var s +switch(this.a.a){case 1:s=B.d.bO(a.gcf(0).a,b.gcf(0).a) +break +case 0:s=B.d.bO(b.gcf(0).c,a.gcf(0).c) +break +default:s=null}return s}, +$S:529} +A.aNE.prototype={ +auh(a){var s,r,q,p,o,n=B.b.gW(a).a,m=t.qi,l=A.a([],m),k=A.a([],t.jE) +for(s=a.length,r=0;r") +return A.a8(new A.bh(b,new A.aNI(new A.I(-1/0,s.b,1/0,s.d)),r),!0,r.i("B.E"))}, +$S:530} +A.aNI.prototype={ +$1(a){return!a.b.hG(this.a).ga_(0)}, +$S:531} +A.JA.prototype={ +a0(){return new A.afL()}} +A.Ru.prototype={} +A.afL.prototype={ +gdw(a){var s,r,q,p=this,o=p.d +if(o===$){s=p.a.c +r=A.a([],t.bp) +q=$.aW() +p.d!==$&&A.aH() +o=p.d=new A.Ru(s,!1,!0,!0,!0,null,null,r,q)}return o}, +m(){this.gdw(0).m() +this.ar()}, +b1(a){var s=this +s.bb(a) +if(a.c!==s.a.c)s.gdw(0).fr=s.a.c}, +F(a){var s=null,r=this.gdw(0) +return A.tA(!1,!1,this.a.f,s,!0,!0,r,!1,s,s,s,s,s,!0)}} +A.a4Y.prototype={} +A.a6g.prototype={} +A.tq.prototype={} +A.a_n.prototype={ +jv(a){var s,r +if(!this.c){s=$.aw.aR$.d.c +r=s.e +r.toString +A.Bo(r).aVj(s,a.a)}}} +A.afM.prototype={} +A.aiM.prototype={ +V0(a,b){var s +this.amt(a,b) +s=this.uU$.h(0,b) +if(s!=null){s=s.a +if(!!s.fixed$length)A.V(A.ag("removeWhere")) +B.b.mQ(s,new A.bbC(a),!0)}}} +A.ann.prototype={} +A.ano.prototype={} +A.jp.prototype={ +gad(){var s,r=$.aw.aR$.x.h(0,this) +if(r instanceof A.jF){s=r.ok +s.toString +if(A.y(this).c.b(s))return s}return null}} +A.bG.prototype={ +j(a){var s,r=this,q=r.a +if(q!=null)s=" "+q +else s="" +if(A.K(r)===B.auV)return"[GlobalKey#"+A.c5(r)+s+"]" +return"["+("#"+A.c5(r))+s+"]"}} +A.x2.prototype={ +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return this.$ti.b(b)&&b.a===this.a}, +gB(a){return A.rT(this.a)}, +j(a){var s="GlobalObjectKey",r=B.c.bF(s,">")?B.c.R(s,0,-8):s +return"["+r+" "+("#"+A.c5(this.a))+"]"}, +gk(a){return this.a}} +A.o.prototype={ +fb(){var s=this.a +return s==null?"Widget":"Widget-"+s.j(0)}, +l(a,b){if(b==null)return!1 +return this.tz(0,b)}, +gB(a){return A.O.prototype.gB.call(this,0)}} +A.ax.prototype={ +cp(a){return new A.DI(this,B.aA)}} +A.a3.prototype={ +cp(a){var s=this.a0(),r=new A.jF(s,this,B.aA) +s.c=r +s.a=this +return r}} +A.a9.prototype={ +gaL(){var s=this.a +s.toString +return s}, +aj(){}, +b1(a){}, +J(a){a.$0() +this.c.dL()}, +fn(){}, +c0(){}, +m(){}, +c1(){}} +A.bA.prototype={} +A.hl.prototype={ +cp(a){return new A.uh(this,B.aA,A.y(this).i("uh"))}} +A.bR.prototype={ +cp(a){return A.bJt(this)}} +A.aV.prototype={ +b9(a,b){}, +D6(a){}} +A.a1G.prototype={ +cp(a){return new A.a1F(this,B.aA)}} +A.bE.prototype={ +cp(a){return new A.NS(this,B.aA)}} +A.hj.prototype={ +cp(a){return A.bLm(this)}} +A.EY.prototype={ +D(){return"_ElementLifecycle."+this.b}} +A.agk.prototype={ +a91(a){a.bZ(new A.b88(this)) +a.ou()}, +aMr(){var s,r=this.b,q=A.a8(r,!0,A.y(r).c) +B.b.fZ(q,A.bpp()) +s=q +r.V(0) +try{r=s +new A.e5(r,A.af(r).i("e5<1>")).az(0,this.gaMp())}finally{}}, +q(a,b){if(b.w===B.fL){b.fn() +b.bZ(A.biY())}this.b.q(0,b)}} +A.b88.prototype={ +$1(a){this.a.a91(a)}, +$S:27} +A.X8.prototype={ +aMg(a){var s,r,q +try{a.agc()}catch(q){s=A.v(q) +r=A.aT(q) +A.bic(A.c3("while rebuilding dirty elements"),s,r,new A.ar7(a))}}, +axI(a){var s,r,q,p,o,n=this,m=n.e +B.b.fZ(m,A.bpp()) +n.d=!1 +try{for(s=0;s0?r[a-1].as:s))break;--a}return a}} +A.ar7.prototype={ +$0(){var s=null,r=A.a([],t.E) +J.dN(r,A.k2("The element being rebuilt at the time was",this.a,!0,B.bU,s,s,s,B.bp,!1,!0,!0,B.dM,s)) +return r}, +$S:35} +A.ar6.prototype={ +Zj(a){var s,r=this,q=a.gpn() +if(!r.c&&r.a!=null){r.c=!0 +r.a.$0()}if(!a.at){q.e.push(a) +a.at=!0}if(!q.a&&!q.b){q.a=!0 +s=q.c +if(s!=null)s.$0()}if(q.d!=null)q.d=!0}, +aeY(a){try{a.$0()}finally{}}, +Cs(a,b){var s=a.gpn(),r=b==null +if(r&&s.e.length===0)return +try{this.c=!0 +s.b=!0 +if(!r)try{b.$0()}finally{}s.axI(a)}finally{this.c=s.b=!1}}, +aOW(a){return this.Cs(a,null)}, +aTo(){var s,r,q +try{this.aeY(this.b.gaMq())}catch(q){s=A.v(q) +r=A.aT(q) +A.bic(A.pS("while finalizing the widget tree"),s,r,null)}finally{}}} +A.LK.prototype={ +UN(){var s=this.a +this.b=new A.bag(this,s==null?null:s.b)}} +A.bag.prototype={ +fS(a){var s=this.a.afm(a) +if(s)return +s=this.b +if(s!=null)s.fS(a)}} +A.bc.prototype={ +l(a,b){if(b==null)return!1 +return this===b}, +gaL(){var s=this.e +s.toString +return s}, +gpn(){var s=this.r +s.toString +return s}, +gag(){for(var s=this;s!=null;)if(s.w===B.PS)break +else if(s instanceof A.bP)return s.gag() +else s=s.gzj() +return null}, +gzj(){var s={} +s.a=null +this.bZ(new A.axC(s)) +return s.a}, +aRC(a){var s=null,r=A.a([],t.E),q=A.a([],t.lX) +this.mw(new A.axA(q)) +r.push(A.k2("The specific widget that could not find a "+a.j(0)+" ancestor was",this,!0,B.bU,s,s,s,B.bp,!1,!0,!0,B.dM,s)) +if(q.length!==0)r.push(A.bI9("The ancestors of this widget were",q)) +else r.push(A.c3('This widget is the root of the tree, so it has no ancestors, let alone a "'+a.j(0)+'" ancestor.')) +return r}, +aRB(a){var s=null +return A.k2(a,this,!0,B.bU,s,s,s,B.bp,!1,!0,!0,B.dM,s)}, +bZ(a){}, +fN(a,b,c){var s,r,q=this +if(b==null){if(a!=null)q.CU(a) +return null}if(a!=null){s=a.gaL().l(0,b) +if(s){if(!J.e(a.c,c))q.ahr(a,c) +r=a}else{s=a.gaL() +if(A.K(s)===A.K(b)&&J.e(s.a,b.a)){if(!J.e(a.c,c))q.ahr(a,c) +a.cg(0,b) +r=a}else{q.CU(a) +r=q.DJ(b,c)}}}else r=q.DJ(b,c) +return r}, +ahk(a1,a2,a3){var s,r,q,p,o,n,m,l,k=this,j=null,i=new A.axD(a3),h=new A.axE(j),g=a2.length,f=g-1,e=a1.length-1,d=t.R,c=A.bO(g,$.bqh(),!1,d),b=j,a=0,a0=0 +while(!0){if(!(a0<=e&&a<=f))break +s=i.$1(a1[a0]) +r=a2[a] +if(s!=null){g=s.gaL() +g=!(A.K(g)===A.K(r)&&J.e(g.a,r.a))}else g=!0 +if(g)break +g=k.fN(s,r,h.$2(a,b)) +g.toString +c[a]=g;++a;++a0 +b=g}q=e +while(!0){g=a0<=q +if(!(g&&a<=f))break +s=i.$1(a1[q]) +r=a2[f] +if(s!=null){p=s.gaL() +p=!(A.K(p)===A.K(r)&&J.e(p.a,r.a))}else p=!0 +if(p)break;--q;--f}if(g){o=A.w(t.D2,d) +for(;a0<=q;){s=i.$1(a1[a0]) +if(s!=null)if(s.gaL().a!=null){d=s.gaL().a +d.toString +o.n(0,d,s)}else{s.a=null +s.y9() +d=k.f.b +if(s.w===B.fL){s.fn() +s.bZ(A.biY())}d.b.q(0,s)}++a0}}else o=j +for(;a<=f;b=d){r=a2[a] +s=j +if(g){n=r.a +if(n!=null){m=o.h(0,n) +if(m!=null){d=m.gaL() +if(A.K(d)===A.K(r)&&J.e(d.a,n)){o.C(0,n) +s=m}}else s=m}}d=k.fN(s,r,h.$2(a,b)) +d.toString +c[a]=d;++a}f=a2.length-1 +while(!0){if(!(a0<=e&&a<=f))break +d=k.fN(a1[a0],a2[a],h.$2(a,b)) +d.toString +c[a]=d;++a;++a0 +b=d}if(g&&o.a!==0)for(g=o.gaJ(0),d=A.y(g),g=new A.bD(J.ay(g.a),g.b,d.i("bD<1,2>")),d=d.y[1];g.u();){p=g.a +if(p==null)p=d.a(p) +if(!a3.p(0,p)){p.a=null +p.y9() +l=k.f.b +if(p.w===B.fL){p.fn() +p.bZ(A.biY())}l.b.q(0,p)}}return c}, +hs(a,b){var s,r,q,p=this +p.a=a +p.c=b +p.w=B.fL +s=a!=null +if(s){r=a.d +r===$&&A.b();++r}else r=1 +p.d=r +if(s){p.f=a.f +p.r=a.gpn()}q=p.gaL().a +if(q instanceof A.jp)p.f.x.n(0,q,p) +p.U1() +p.UN()}, +cg(a,b){this.e=b}, +ahr(a,b){new A.axF(b).$1(a)}, +EX(a){this.c=a}, +a9g(a){var s=a+1,r=this.d +r===$&&A.b() +if(r")),s=s.c;p.u();){r=p.d;(r==null?s.a(r):r).a2.C(0,q)}q.y=null +q.w=B.azS}, +ou(){var s=this,r=s.e,q=r==null?null:r.a +if(q instanceof A.jp){r=s.f.x +if(J.e(r.h(0,q),s))r.C(0,q)}s.z=s.e=null +s.w=B.PS}, +gv(a){var s=this.gag() +if(s instanceof A.P)return s.gv(0) +return null}, +pv(a,b){var s=this.z;(s==null?this.z=A.dD(t.IS):s).q(0,a) +a.Yn(this,b) +return t.WB.a(a.gaL())}, +Kx(a){return this.pv(a,null)}, +au(a){var s=this.y,r=s==null?null:s.h(0,A.cK(a)) +if(r!=null)return a.a(this.pv(r,null)) +this.Q=!0 +return null}, +Og(a){var s=this.jc(a) +s=s==null?null:s.gaL() +return a.i("0?").a(s)}, +jc(a){var s=this.y +return s==null?null:s.h(0,A.cK(a))}, +UN(){var s=this.a +this.b=s==null?null:s.b}, +U1(){var s=this.a +this.y=s==null?null:s.y}, +adk(a){var s,r=this.a +while(!0){s=r==null +if(!(!s&&A.K(r.gaL())!==A.cK(a)))break +r=r.a}s=s?null:r.gaL() +return a.i("0?").a(s)}, +o_(a){var s,r,q=this.a +for(;s=q==null,!s;){if(q instanceof A.jF){r=q.ok +r.toString +r=a.b(r)}else r=!1 +if(r)break +q=q.a}t.lE.a(q) +if(s)s=null +else{s=q.ok +s.toString}return a.i("0?").a(s)}, +aTq(a){var s,r,q=this.a +for(s=null;q!=null;){if(q instanceof A.jF){r=q.ok +r.toString +r=a.b(r)}else r=!1 +if(r)s=q +q=q.a}if(s==null)r=null +else{r=s.ok +r.toString}return a.i("0?").a(r)}, +yI(a){var s=this.a +for(;s!=null;){if(s instanceof A.bP&&a.b(s.gag()))return a.a(s.gag()) +s=s.a}return null}, +mw(a){var s=this.a +while(!0){if(!(s!=null&&a.$1(s)))break +s=s.a}}, +c1(){this.dL()}, +fS(a){var s=this.b +if(s!=null)s.fS(a)}, +fb(){var s=this.e +s=s==null?null:s.fb() +return s==null?"#"+A.c5(this)+"(DEFUNCT)":s}, +dL(){var s=this +if(s.w!==B.fL)return +if(s.as)return +s.as=!0 +s.f.Zj(s)}, +Ne(a){var s +if(this.w===B.fL)s=!this.as&&!a +else s=!0 +if(s)return +try{this.mn()}finally{}}, +agc(){return this.Ne(!1)}, +mn(){this.as=!1}, +$iQ:1} +A.axC.prototype={ +$1(a){this.a.a=a}, +$S:27} +A.axA.prototype={ +$1(a){this.a.push(a) +return!0}, +$S:37} +A.axz.prototype={ +$1(a){var s=null +return A.k2("",a,!0,B.bU,s,s,s,B.bp,!1,!0,!0,B.eP,s)}, +$S:532} +A.axD.prototype={ +$1(a){var s=this.a.p(0,a) +return s?null:a}, +$S:533} +A.axE.prototype={ +$2(a,b){return new A.tH(b,a,t.Bc)}, +$S:534} +A.axF.prototype={ +$1(a){var s +a.EX(this.a) +s=a.gzj() +if(s!=null)this.$1(s)}, +$S:27} +A.axx.prototype={ +$1(a){a.a9g(this.a)}, +$S:27} +A.axw.prototype={ +$1(a){a.a95()}, +$S:27} +A.axB.prototype={ +$1(a){a.y9()}, +$S:27} +A.axy.prototype={ +$1(a){a.Co(this.a)}, +$S:27} +A.Ja.prototype={ +b6(a){var s=this.d,r=new A.MN(s,new A.bk(),A.aK()) +r.b5() +r.aqZ(s) +return r}} +A.HH.prototype={ +gzj(){return this.ay}, +hs(a,b){this.P7(a,b) +this.R9()}, +R9(){this.agc()}, +mn(){var s,r,q,p,o,n,m=this,l=null +try{l=m.cL() +m.gaL()}catch(o){s=A.v(o) +r=A.aT(o) +n=A.Jb(A.bic(A.c3("building "+m.j(0)),s,r,new A.asu())) +l=n}finally{m.ty()}try{m.ay=m.fN(m.ay,l,m.c)}catch(o){q=A.v(o) +p=A.aT(o) +n=A.Jb(A.bic(A.c3("building "+m.j(0)),q,p,new A.asv())) +l=n +m.ay=m.fN(null,l,m.c)}}, +bZ(a){var s=this.ay +if(s!=null)a.$1(s)}, +lD(a){this.ay=null +this.mH(a)}} +A.asu.prototype={ +$0(){var s=A.a([],t.E) +return s}, +$S:35} +A.asv.prototype={ +$0(){var s=A.a([],t.E) +return s}, +$S:35} +A.DI.prototype={ +cL(){return t.Iz.a(this.gaL()).F(this)}, +cg(a,b){this.wr(0,b) +this.Ne(!0)}} +A.jF.prototype={ +cL(){return this.ok.F(this)}, +R9(){this.ok.aj() +this.ok.c1() +this.ama()}, +mn(){var s=this +if(s.p1){s.ok.c1() +s.p1=!1}s.amb()}, +cg(a,b){var s,r,q,p=this +p.wr(0,b) +s=p.ok +r=s.a +r.toString +q=p.e +q.toString +s.a=t.d2.a(q) +s.b1(r) +p.Ne(!0)}, +c0(){this.Ae() +this.ok.c0() +this.dL()}, +fn(){this.ok.fn() +this.a_9()}, +ou(){var s=this +s.Af() +s.ok.m() +s.ok=s.ok.c=null}, +pv(a,b){return this.P5(a,b)}, +Kx(a){return this.pv(a,null)}, +c1(){this.P6() +this.p1=!0}} +A.Mp.prototype={ +cL(){return t.yH.a(this.gaL()).b}, +cg(a,b){var s=this,r=t.yH.a(s.gaL()) +s.wr(0,b) +s.EY(r) +s.Ne(!0)}, +EY(a){this.rP(a)}} +A.uh.prototype={ +a0P(a){var s=this.ay +if(s!=null)new A.aMj(a).$1(s)}, +rP(a){var s=this.e +s.toString +this.a0P(this.$ti.i("hl<1>").a(s))}} +A.aMj.prototype={ +$1(a){var s +if(a instanceof A.bP)this.a.xG(a.gag()) +else if(a.gzj()!=null){s=a.gzj() +s.toString +this.$1(s)}}, +$S:27} +A.jq.prototype={ +U1(){var s=this,r=s.a,q=r==null?null:r.y +if(q==null)q=B.ajW +s.y=q.aZX(0,A.K(s.gaL()),s)}, +Zy(a,b){this.a2.n(0,a,b)}, +Yn(a,b){this.Zy(a,null)}, +Xj(a,b){b.c1()}, +EY(a){if(t.WB.a(this.gaL()).dY(a))this.an8(a)}, +rP(a){var s,r,q +for(s=this.a2,r=A.y(s),s=new A.vm(s,s.wI(),r.i("vm<1>")),r=r.c;s.u();){q=s.d +this.Xj(a,q==null?r.a(q):q)}}} +A.bP.prototype={ +gag(){var s=this.ay +s.toString +return s}, +gzj(){return null}, +axx(){var s,r=this.a +while(!0){s=r==null +if(!(!s&&!(r instanceof A.bP)))break +r=s?null:r.a}return t.p2.a(r)}, +axw(){var s=this.a,r=A.a([],t.OM) +while(!0){if(!(s!=null&&!(s instanceof A.bP)))break +if(s instanceof A.uh)r.push(s) +s=s.a}return r}, +hs(a,b){var s=this +s.P7(a,b) +s.ay=t.F5.a(s.gaL()).b6(s) +s.Co(b) +s.ty()}, +cg(a,b){var s=this +s.wr(0,b) +t.F5.a(s.gaL()).b9(s,s.gag()) +s.ty()}, +mn(){var s=this +t.F5.a(s.gaL()).b9(s,s.gag()) +s.ty()}, +fn(){this.a_9()}, +ou(){var s=this,r=t.F5.a(s.gaL()) +s.Af() +r.D6(s.gag()) +s.ay.m() +s.ay=null}, +EX(a){var s,r=this,q=r.c +r.amo(a) +s=r.CW +if(s!=null)s.mk(r.gag(),q,r.c)}, +Co(a){var s,r,q,p,o,n=this +n.c=a +s=n.CW=n.axx() +if(s!=null)s.mg(n.gag(),a) +r=n.axw() +for(s=r.length,q=t.IL,p=0;p"))}, +mg(a,b){var s=this.gag(),r=b.a +s.LL(0,a,r==null?null:r.gag())}, +mk(a,b,c){var s=this.gag(),r=c.a +s.E6(a,r==null?null:r.gag())}, +nj(a,b){this.gag().C(0,a)}, +bZ(a){var s,r,q,p,o=this.p1 +o===$&&A.b() +s=o.length +r=this.p2 +q=0 +for(;q") +j.d=new A.bf(t.m.a(q),new A.fO(new A.hZ(new A.eF(o,1,B.X)),p,n),n.i("bf"))}}if(s)s=!(isFinite(r.a)&&isFinite(r.b)) +else s=!0 +j.w=s}, +alw(a,b){var s,r,q,p=this +p.saX2(b) +s=p.f +switch(s.a.a){case 1:r=p.e +r===$&&A.b() +r.sbt(0,new A.la(s.geh(0),new A.bV(A.a([],t.x8),t.jc),0)) +q=!1 +break +case 0:r=p.e +r===$&&A.b() +r.sbt(0,s.geh(0)) +q=!0 +break +default:q=null}s=p.f +p.b=s.CL(s.gadD(),p.f.gNG()) +p.f.f.OY(q) +p.f.r.OX() +s=p.f.b +r=A.n6(p.gatd(),!1,!1,!1) +p.r=r +s.vd(0,r) +r=p.e +r===$&&A.b() +r.ct() +r=r.dR$ +r.b=!0 +r.a.push(p.gXy())}, +j(a){var s,r,q,p=this.f,o=p.d.b,n=p.e.b +p=A.c(p.f.a.c) +s=o.j(0) +r=n.j(0) +q=this.e +q===$&&A.b() +return"HeroFlight(for: "+p+", from: "+s+", to: "+r+" "+A.c(q.c)+")"}} +A.b5n.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.al(0,s.gk(0)) +s.toString +p=q.f.c +return A.eH(p.b-s.d,A.ok(new A.eB(q.d,!1,b,r),!0,r),r,r,s.a,p.a-s.c,s.b,r)}, +$S:550} +A.b5o.prototype={ +$0(){var s,r=this.a +r.x=!1 +this.b.cx.K(0,this) +s=r.e +s===$&&A.b() +r.a6w(s.gbi(0))}, +$S:0} +A.JM.prototype={ +D5(){var s,r,q,p=$.nU() +A.wL(this) +if(p.a.get(this).cx.a)return +p=this.b.gaJ(0) +s=A.y(p).i("bh") +r=A.a8(new A.bh(p,new A.aBc(),s),!1,s.i("B.E")) +for(p=r.length,q=0;q"),a=t.k2;s.u();){a0=s.gI(s) +a1=a0.a +a2=a0.b +a3=k.h(0,a1) +a4=j.h(0,a1) +if(a3==null)a5=null +else{a0=o.id +if(a0==null)a0=A.V(A.a1("RenderBox was not laid out: "+A.K(o).j(0)+"#"+A.c5(o))) +a3.a.toString +a2.a.toString +a5=new A.b5m(b2,q,a0,b0,b1,a2,a3,p,r,b3,a4!=null)}if(a5!=null&&a5.gce()){k.C(0,a1) +if(a4!=null){a0=a4.f +a6=a0.a +if(a6===B.eW&&a5.a===B.eX){a0=a4.e +a0===$&&A.b() +a0.sbt(0,new A.la(a5.geh(0),new A.bV(A.a([],h),g),0)) +a0=a4.b +a0===$&&A.b() +a4.b=new A.Na(a0,a0.b,a0.a,a)}else{a6=a6===B.eX&&a5.a===B.eW +a7=a4.e +if(a6){a7===$&&A.b() +a0=a5.geh(0) +a6=a4.f.geh(0).gk(0) +a7.sbt(0,new A.bf(c.a(a0),new A.b0(a6,1,d),b)) +a0=a4.f +a6=a0.f +a7=a5.r +if(a6!==a7){a6.yr(!0) +a7.OX() +a0=a4.f +a0.toString +a6=a4.b +a6===$&&A.b() +a4.b=a0.CL(a6.b,a5.gNG())}else{a6=a4.b +a6===$&&A.b() +a4.b=a0.CL(a6.b,a6.a)}}else{a6=a4.b +a6===$&&A.b() +a7===$&&A.b() +a4.b=a0.CL(a6.al(0,a7.gk(0)),a5.gNG()) +a4.c=null +a0=a5.a +a6=a4.e +if(a0===B.eX)a6.sbt(0,new A.la(a5.geh(0),new A.bV(A.a([],h),g),0)) +else a6.sbt(0,a5.geh(0)) +a4.f.f.yr(!0) +a4.f.r.yr(!0) +a5.f.OY(a0===B.eW) +a5.r.OX() +a0=a4.r.r.gad() +if(a0!=null)a0.a5D()}}a0=a4.f +if(a0!=null){a0=a0.Q +if(a0!=null)a0.a.dX(a0.gJ8())}a4.f=a5}else{a0=new A.rq(i,B.iy) +a6=A.a([],h) +a7=new A.bV(a6,g) +a8=new A.Mo(a7,new A.bV(A.a([],f),e),0) +a8.a=B.a9 +a8.b=0 +a8.ct() +a7.b=!0 +a6.push(a0.ga46()) +a0.e=a8 +a0.alw(0,a5) +j.n(0,a1,a0)}}else if(a4!=null)a4.w=!0}for(s=J.ay(k.gaJ(k));s.u();)s.gI(s).ad_()}, +aAn(a){var s=this.b.C(0,a.f.f.a.c) +if(s!=null)s.m()}, +avn(a,b,c,d,e){var s=t.rA.a(e.gaL()),r=A.de(e,null),q=A.de(d,null) +if(r==null||q==null)return s.e +return A.lw(b,new A.aBa(r,c,q.r,r.r,b,s),null)}, +m(){var s,r,q +for(s=this.b.gaJ(0),r=A.y(s),s=new A.bD(J.ay(s.a),s.b,r.i("bD<1,2>")),r=r.y[1];s.u();){q=s.a;(q==null?r.a(q):q).m()}}} +A.aBc.prototype={ +$1(a){var s=a.f,r=!1 +if(s.y)if(s.a===B.eX){s=a.e +s===$&&A.b() +s=s.gbi(0)===B.a9}else s=r +else s=r +return s}, +$S:553} +A.aBb.prototype={ +$1(a){var s=this,r=s.b +if(r.a==null||s.c.a==null)return +s.a.a8b(r,s.c,s.d,s.e)}, +$S:3} +A.aBa.prototype={ +$2(a,b){var s=this,r=s.c,q=s.d,p=s.e +r=s.b===B.eW?new A.IY(r,q).al(0,p.gk(p)):new A.IY(q,r).al(0,p.gk(p)) +return A.C9(s.f.e,s.a.CD(r))}, +$S:554} +A.ei.prototype={ +F(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this,f=null,e=a.au(t.I) +e.toString +s=e.w +r=A.aC6(a) +e=g.d +q=e==null?r.a:e +if(q==null)q=14 +if(r.x===!0){e=A.de(a,B.cP) +e=e==null?f:e.gem() +p=q*(e==null?B.aB:e).a}else p=q +o=r.b +n=r.c +m=r.d +l=r.e +k=g.c +j=r.gfL(0) +if(j==null)j=1 +i=g.x +if(i==null){e=r.f +e.toString +i=e}if(j!==1)i=A.Y(B.d.aa(255*((i.gk(i)>>>24&255)/255*j)),i.gk(i)>>>16&255,i.gk(i)>>>8&255,i.gk(i)&255) +e=A.a([],t.uf) +if(o!=null)e.push(new A.oj("FILL",o)) +if(n!=null)e.push(new A.oj("wght",n)) +if(m!=null)e.push(new A.oj("GRAD",m)) +if(l!=null)e.push(new A.oj("opsz",l)) +h=A.bnz(f,f,f,B.Ph,f,f,!0,f,A.ew(f,A.cb(f,f,i,f,f,f,f,f,k.b,f,f,p,f,e,f,f,1,!1,B.a1,f,f,f,k.c,r.w,f,f),A.ek(k.a)),B.bn,s,f,B.aB,B.aX) +if(k.d)switch(s.a){case 0:e=new A.bW(new Float64Array(16)) +e.eo() +e.lP(0,-1,1,1) +h=A.a9J(B.O,h,f,e,!1) +break +case 1:break}e=A.cL(h,f,f) +return new A.ck(A.cJ(f,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,f),!1,!1,!1,!1,new A.ts(!0,new A.aB(p,p,e,f),f),f)}} +A.db.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.db&&b.a===s.a&&b.b===s.b&&b.c==s.c&&b.d===s.d&&A.d7(null,null)}, +gB(a){var s=this +return A.a4(s.a,s.b,s.c,s.d,A.cj(B.aa9),B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"IconData(U+"+B.c.fk(B.e.hY(this.a,16).toUpperCase(),5,"0")+")"}} +A.x9.prototype={ +dY(a){return!this.w.l(0,a.w)}, +tc(a,b,c){return A.BA(c,this.w,null)}} +A.aC5.prototype={ +$1(a){return A.BA(this.c,A.btw(a).cO(this.b),this.a)}, +$S:555} +A.eP.prototype={ +CJ(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.gfL(0):e,k=g==null?s.w:g +return new A.eP(r,q,p,o,n,m,l,k,a==null?s.x:a)}, +cc(a){var s=null +return this.CJ(s,a,s,s,s,s,s,s,s)}, +cO(a){return this.CJ(a.x,a.f,a.b,a.d,a.gfL(0),a.e,a.w,a.a,a.c)}, +Z(a){return this}, +gfL(a){var s=this.r +if(s==null)s=null +else s=A.M(s,0,1) +return s}, +l(a,b){var s=this +if(b==null)return!1 +if(J.ah(b)!==A.K(s))return!1 +return b instanceof A.eP&&b.a==s.a&&b.b==s.b&&b.c==s.c&&b.d==s.d&&b.e==s.e&&J.e(b.f,s.f)&&b.gfL(0)==s.gfL(0)&&A.d7(b.w,s.w)&&b.x==s.x}, +gB(a){var s=this,r=s.gfL(0),q=s.w +q=q==null?null:A.cj(q) +return A.a4(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.agd.prototype={} +A.bjP.prototype={ +$2(a,b){var s=this.b +if((s.a.a&30)===0)s.d8(0) +$.cp.p2$.push(new A.bjO(this.a,a,this.c))}, +$S:231} +A.bjO.prototype={ +$1(a){var s=this.b +if(s!=null)s.a.m() +s=this.a.a +s.toString +this.c.K(0,s)}, +$S:3} +A.bjQ.prototype={ +$2(a,b){var s=this.b +if((s.a.a&30)===0)s.d8(0) +s=this.a.a +s.toString +this.c.K(0,s) +A.e9(new A.cM(a,b,"image resource service",A.c3("image failed to precache"),null,!0))}, +$S:126} +A.xa.prototype={ +a0(){return new A.RI()}} +A.RI.prototype={ +aj(){var s=this +s.aw() +$.aw.cU$.push(s) +s.z=new A.a_s(s)}, +m(){var s,r=this +$.aw.lJ(r) +r.aLe() +s=r.at +if(s!=null)s.m() +s=r.z +s===$&&A.b() +s.a=null +r.T4(null) +r.ar()}, +c1(){var s,r=this +r.aMI() +r.a7c() +s=r.c +s.toString +if(A.bnY(s))r.aEd() +else r.a8i(!0) +r.ea()}, +b1(a){var s,r,q=this +q.bb(a) +if(q.r&&q.a.e==null!==(a.e==null)){s=q.B_() +r=q.d +r.toString +r.a4(0,q.a3H(!0)) +q.d.K(0,s)}if(!q.a.c.l(0,a.c))q.a7c()}, +aMI(){var s=this.c +s.toString +s=A.de(s,B.aAh) +s=s==null?null:s.Q +if(s==null){s=$.a81.L3$ +s===$&&A.b() +s=(s.a&2)!==0}this.w=s}, +a7c(){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.R(p,s)}else s=null +o.aN4(new A.Np(n,r,t.ti).Z(A.Go(q,s)))}, +a3H(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.gaAz() +q=q.f +q=q!=null?new A.b7y(r):null +q=r.ax=new A.iQ(r.gaAB(),s,q)}q.toString +return q}, +B_(){return this.a3H(!1)}, +aAC(a,b){this.J(new A.b7A(this,a,b))}, +aAA(a){this.J(new A.b7z(this,a))}, +T4(a){var s=this.e +$.cp.p2$.push(new A.b7B(s)) +this.e=a}, +aN4(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.K(0,q.B_())}if(!q.a.CW)q.J(new A.b7C(q)) +q.J(new A.b7D(q)) +q.d=a +if(q.r)a.a4(0,q.B_())}, +aEd(){var s,r=this +if(r.r)return +s=r.d +s.toString +s.a4(0,r.B_()) +s=r.at +if(s!=null)s.m() +r.at=null +r.r=!0}, +a8i(a){var s,r=this +if(!r.r)return +s=!1 +if(a)if(r.at==null){s=r.d +s=(s==null?null:s.a)!=null}if(s)r.at=r.d.a.yY() +s=r.d +s.toString +s.K(0,r.B_()) +r.r=!1}, +aLe(){return this.a8i(!1)}, +F(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=new A.a6u(r,q,o,n,d,s,m,p.z,l,k,j,i,e,!1,h,!1,e) +g=new A.ck(A.cJ(e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,!0,e,e,e,"",e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e),!1,!1,!1,!1,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.b7y.prototype={ +$2(a,b){var s=this.a +s.J(new A.b7x(s,a,b))}, +$S:126} +A.b7x.prototype={ +$0(){var s=this.a +s.Q=this.b +s.as=this.c}, +$S:0} +A.b7A.prototype={ +$0(){var s,r=this.a +r.T4(this.b) +r.as=r.Q=r.f=null +s=r.x +r.x=s==null?0:s+1 +r.y=B.ho.tk(r.y,this.c)}, +$S:0} +A.b7z.prototype={ +$0(){var s=this.a +s.f=this.b +s.as=s.Q=null}, +$S:0} +A.b7B.prototype={ +$1(a){var s=this.a +if(s!=null)s.a.m() +return null}, +$S:3} +A.b7C.prototype={ +$0(){this.a.T4(null)}, +$S:0} +A.b7D.prototype={ +$0(){var s=this.a +s.x=s.f=null +s.y=!1}, +$S:0} +A.an7.prototype={} +A.w5.prototype={ +fW(a){var s=A.o2(this.a,this.b,a) +s.toString +return s}} +A.pC.prototype={ +fW(a){var s=A.auc(this.a,this.b,a) +s.toString +return s}} +A.IY.prototype={ +fW(a){var s=A.a_K(this.a,this.b,a) +s.toString +return s}} +A.pL.prototype={ +fW(a){var s=A.fm(this.a,this.b,a) +s.toString +return s}} +A.w4.prototype={ +fW(a){return A.o0(this.a,this.b,a)}} +A.xE.prototype={ +fW(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.hQ(new Float64Array(3)),a5=new A.hQ(new Float64Array(3)),a6=A.bvb(),a7=A.bvb(),a8=new A.hQ(new Float64Array(3)),a9=new A.hQ(new Float64Array(3)) +this.a.ack(a4,a6,a8) +this.b.ack(a5,a7,a9) +s=1-b0 +r=a4.ox(s).ab(0,a5.ox(b0)) +q=a6.ox(s).ab(0,a7.ox(b0)) +p=new Float64Array(4) +o=new A.ur(p) +o.c5(q) +o.E9(0) +n=a8.ox(s).ab(0,a9.ox(b0)) +s=new Float64Array(16) +q=new A.bW(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.yR.prototype={ +fW(a){var s=A.c9(this.a,this.b,a) +s.toString +return s}} +A.a17.prototype={} +A.BE.prototype={ +gtL(){var s,r=this,q=r.d +if(q===$){s=A.c2(null,r.a.d,null,null,r) +r.d!==$&&A.aH() +r.d=s +q=s}return q}, +ghx(){var s,r=this,q=r.e +if(q===$){s=r.gtL() +q=r.e=A.cl(r.a.c,s,null)}return q}, +aj(){var s,r=this +r.aw() +s=r.gtL() +s.ct() +s=s.ec$ +s.b=!0 +s.a.push(new A.aCD(r)) +r.a25() +r.VI()}, +b1(a){var s,r=this +r.bb(a) +if(r.a.c!==a.c){r.ghx().m() +s=r.gtL() +r.e=A.cl(r.a.c,s,null)}r.gtL().e=r.a.d +if(r.a25()){r.pH(new A.aCC(r)) +s=r.gtL() +s.sk(0,0) +s.cd(0) +r.VI()}}, +m(){this.ghx().m() +this.gtL().m() +this.aoA()}, +aN7(a,b){if(a==null)return +a.sUQ(a.al(0,this.ghx().gk(0))) +a.sbV(0,b)}, +a25(){var s={} +s.a=!1 +this.pH(new A.aCB(s,this)) +return s.a}, +VI(){}} +A.aCD.prototype={ +$1(a){if(a===B.am)this.a.a.toString}, +$S:10} +A.aCC.prototype={ +$3(a,b,c){this.a.aN7(a,b) +return a}, +$S:268} +A.aCB.prototype={ +$3(a,b,c){var s +if(b!=null){if(a==null)a=c.$1(b) +s=a.b +if(!J.e(b,s==null?a.a:s))this.a.a=!0 +else if(a.b==null)a.sbV(0,a.a)}else a=null +return a}, +$S:268} +A.A4.prototype={ +aj(){this.amz() +var s=this.gtL() +s.ct() +s=s.dR$ +s.b=!0 +s.a.push(this.gaze())}, +azf(){this.J(new A.apx())}} +A.apx.prototype={ +$0(){}, +$S:0} +A.GJ.prototype={ +a0(){return new A.acB(null,null)}} +A.acB.prototype={ +pH(a){var s,r,q,p=this,o=null,n=p.CW +p.a.toString +s=t.VF +p.CW=s.a(a.$3(n,o,new A.aY9())) +n=p.cx +p.a.toString +r=t.Om +p.cx=r.a(a.$3(n,o,new A.aYa())) +n=t.ms +p.cy=n.a(a.$3(p.cy,p.a.y,new A.aYb())) +q=p.db +p.a.toString +p.db=n.a(a.$3(q,o,new A.aYc())) +p.dx=t.YY.a(a.$3(p.dx,p.a.Q,new A.aYd())) +q=p.dy +p.a.toString +p.dy=r.a(a.$3(q,o,new A.aYe())) +q=p.fr +p.a.toString +p.fr=t.YV.a(a.$3(q,o,new A.aYf())) +q=p.fx +p.a.toString +p.fx=s.a(a.$3(q,o,new A.aYg()))}, +F(a){var s,r,q,p,o,n,m,l=this,k=null,j=l.ghx(),i=l.CW +i=i==null?k:i.al(0,j.gk(0)) +s=l.cx +s=s==null?k:s.al(0,j.gk(0)) +r=l.cy +r=r==null?k:r.al(0,j.gk(0)) +q=l.db +q=q==null?k:q.al(0,j.gk(0)) +p=l.dx +p=p==null?k:p.al(0,j.gk(0)) +o=l.dy +o=o==null?k:o.al(0,j.gk(0)) +n=l.fr +n=n==null?k:n.al(0,j.gk(0)) +m=l.fx +m=m==null?k:m.al(0,j.gk(0)) +return A.aa(i,l.a.r,B.h,k,p,r,q,k,k,o,s,n,m,k)}} +A.aY9.prototype={ +$1(a){return new A.t_(t.pC.a(a),null)}, +$S:269} +A.aYa.prototype={ +$1(a){return new A.pL(t.A0.a(a),null)}, +$S:141} +A.aYb.prototype={ +$1(a){return new A.pC(t.Hw.a(a),null)}, +$S:271} +A.aYc.prototype={ +$1(a){return new A.pC(t.Hw.a(a),null)}, +$S:271} +A.aYd.prototype={ +$1(a){return new A.w5(t.k.a(a),null)}, +$S:562} +A.aYe.prototype={ +$1(a){return new A.pL(t.A0.a(a),null)}, +$S:141} +A.aYf.prototype={ +$1(a){return new A.xE(t.xV.a(a),null)}, +$S:563} +A.aYg.prototype={ +$1(a){return new A.t_(t.pC.a(a),null)}, +$S:269} +A.GM.prototype={ +a0(){return new A.acE(null,null)}} +A.acE.prototype={ +pH(a){this.CW=t.Om.a(a.$3(this.CW,this.a.r,new A.aYj()))}, +F(a){var s=this.CW +s.toString +return new A.be(J.bqI(s.al(0,this.ghx().gk(0)),B.Z,B.PY),this.a.w,null)}} +A.aYj.prototype={ +$1(a){return new A.pL(t.A0.a(a),null)}, +$S:141} +A.GO.prototype={ +a0(){return new A.acG(null,null)}} +A.acG.prototype={ +pH(a){var s,r=this,q=null,p=t.ir +r.CW=p.a(a.$3(r.CW,r.a.w,new A.aYo())) +r.cx=p.a(a.$3(r.cx,r.a.x,new A.aYp())) +s=r.cy +r.a.toString +r.cy=p.a(a.$3(s,q,new A.aYq())) +s=r.db +r.a.toString +r.db=p.a(a.$3(s,q,new A.aYr())) +s=r.dx +r.a.toString +r.dx=p.a(a.$3(s,q,new A.aYs())) +s=r.dy +r.a.toString +r.dy=p.a(a.$3(s,q,new A.aYt()))}, +F(a){var s,r,q,p,o,n=this,m=null,l=n.CW +l=l==null?m:l.al(0,n.ghx().gk(0)) +s=n.cx +s=s==null?m:s.al(0,n.ghx().gk(0)) +r=n.cy +r=r==null?m:r.al(0,n.ghx().gk(0)) +q=n.db +q=q==null?m:q.al(0,n.ghx().gk(0)) +p=n.dx +p=p==null?m:p.al(0,n.ghx().gk(0)) +o=n.dy +o=o==null?m:o.al(0,n.ghx().gk(0)) +return A.eH(q,n.a.r,o,m,l,r,s,p)}} +A.aYo.prototype={ +$1(a){return new A.b0(A.d5(a),null,t.Y)}, +$S:55} +A.aYp.prototype={ +$1(a){return new A.b0(A.d5(a),null,t.Y)}, +$S:55} +A.aYq.prototype={ +$1(a){return new A.b0(A.d5(a),null,t.Y)}, +$S:55} +A.aYr.prototype={ +$1(a){return new A.b0(A.d5(a),null,t.Y)}, +$S:55} +A.aYs.prototype={ +$1(a){return new A.b0(A.d5(a),null,t.Y)}, +$S:55} +A.aYt.prototype={ +$1(a){return new A.b0(A.d5(a),null,t.Y)}, +$S:55} +A.GL.prototype={ +a0(){return new A.acD(null,null)}} +A.acD.prototype={ +pH(a){this.z=t.ir.a(a.$3(this.z,this.a.w,new A.aYi()))}, +VI(){var s=this.ghx(),r=this.z +r.toString +this.Q=new A.bf(t.m.a(s),r,A.y(r).i("bf"))}, +F(a){var s=this.Q +s===$&&A.b() +return new A.eB(s,!1,this.a.r,null)}} +A.aYi.prototype={ +$1(a){return new A.b0(A.d5(a),null,t.Y)}, +$S:55} +A.GK.prototype={ +a0(){return new A.acC(null,null)}} +A.acC.prototype={ +pH(a){this.CW=t.Dh.a(a.$3(this.CW,this.a.w,new A.aYh()))}, +F(a){var s=null,r=this.CW +r.toString +r=r.al(0,this.ghx().gk(0)) +return A.kD(this.a.r,s,s,B.cs,!0,r,s,s,B.aX)}} +A.aYh.prototype={ +$1(a){return new A.yR(t.em.a(a),null)}, +$S:564} +A.GN.prototype={ +a0(){return new A.acF(null,null)}} +A.acF.prototype={ +pH(a){var s=this,r=s.CW +s.a.toString +s.CW=t.eJ.a(a.$3(r,B.aH,new A.aYk())) +s.cx=t.ir.a(a.$3(s.cx,s.a.z,new A.aYl())) +r=t.YJ +s.cy=r.a(a.$3(s.cy,s.a.Q,new A.aYm())) +s.db=r.a(a.$3(s.db,s.a.at,new A.aYn()))}, +F(a){var s,r,q,p=this,o=p.a.x,n=p.CW +n.toString +n=n.al(0,p.ghx().gk(0)) +s=p.cx +s.toString +s=s.al(0,p.ghx().gk(0)) +r=p.a.Q +q=p.db +q.toString +q=q.al(0,p.ghx().gk(0)) +q.toString +return A.buY(n,p.a.r,o,r,s,q,B.E)}} +A.aYk.prototype={ +$1(a){return new A.w4(t.m_.a(a),null)}, +$S:565} +A.aYl.prototype={ +$1(a){return new A.b0(A.d5(a),null,t.Y)}, +$S:55} +A.aYm.prototype={ +$1(a){return new A.fU(t.n8.a(a),null)}, +$S:115} +A.aYn.prototype={ +$1(a){return new A.fU(t.n8.a(a),null)}, +$S:115} +A.Fb.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.lN.prototype={ +cp(a){return new A.K2(A.ir(null,null,null,t.R,t.X),this,B.aA,A.y(this).i("K2"))}} +A.K2.prototype={ +Yn(a,b){var s=this.a2,r=this.$ti,q=r.i("cz<1>?").a(s.h(0,a)),p=q==null +if(!p&&q.ga_(q))return +if(b==null)s.n(0,a,A.dD(r.c)) +else{p=p?A.dD(r.c):q +p.q(0,r.c.a(b)) +s.n(0,a,p)}}, +Xj(a,b){var s,r=this.$ti,q=r.i("cz<1>?").a(this.a2.h(0,b)) +if(q==null)return +if(!q.ga_(q)){s=this.e +s.toString +s=r.i("lN<1>").a(s).Yu(a,q) +r=s}else r=!0 +if(r)b.c1()}} +A.om.prototype={ +dY(a){return a.f!==this.f}, +cp(a){var s=new A.Fc(A.ir(null,null,null,t.R,t.X),this,B.aA,A.y(this).i("Fc")) +this.f.a4(0,s.gRW()) +return s}} +A.Fc.prototype={ +cg(a,b){var s,r,q=this,p=q.e +p.toString +s=q.$ti.i("om<1>").a(p).f +r=b.f +if(s!==r){p=q.gRW() +s.K(0,p) +r.a4(0,p)}q.a_H(0,b)}, +cL(){var s,r=this +if(r.d3){s=r.e +s.toString +r.a_f(r.$ti.i("om<1>").a(s)) +r.d3=!1}return r.a_G()}, +aCN(){this.d3=!0 +this.dL()}, +rP(a){this.a_f(a) +this.d3=!1}, +ou(){var s=this,r=s.e +r.toString +s.$ti.i("om<1>").a(r).f.K(0,s.gRW()) +s.Af()}} +A.et.prototype={} +A.aCI.prototype={ +$1(a){var s,r,q +if(a.l(0,this.a))return!1 +if(a instanceof A.jq&&a.gaL() instanceof A.et){s=t.og.a(a.gaL()) +r=A.K(s) +q=this.b +if(!q.p(0,r)){q.q(0,r) +this.c.push(s)}}return!0}, +$S:37} +A.Xf.prototype={} +A.nD.prototype={ +F(a){var s,r,q,p=this.d +for(s=this.c,r=s.length,q=0;q"))}} +A.Fe.prototype={ +gag(){return this.$ti.i("iU<1,G>").a(A.bP.prototype.gag.call(this))}, +gpn(){var s,r=this,q=r.p2 +if(q===$){s=A.a([],t.lX) +r.p2!==$&&A.aH() +q=r.p2=new A.X8(r.gaJt(),s)}return q}, +aJu(){var s,r,q,p=this +if(p.p3)return +s=$.cp +r=s.R8$ +$label0$0:{if(B.fr===r||B.rB===r){q=!0 +break $label0$0}if(B.Ny===r||B.Nz===r||B.i2===r){q=!1 +break $label0$0}q=null}if(!q){p.$ti.i("iU<1,G>").a(A.bP.prototype.gag.call(p)).ae() +return}p.p3=!0 +s.zT(p.gaxZ())}, +ay_(a){var s=this +s.p3=!1 +if(s.e!=null)s.$ti.i("iU<1,G>").a(A.bP.prototype.gag.call(s)).ae()}, +bZ(a){var s=this.p1 +if(s!=null)a.$1(s)}, +lD(a){this.p1=null +this.mH(a)}, +hs(a,b){var s=this +s.tC(a,b) +s.$ti.i("iU<1,G>").a(A.bP.prototype.gag.call(s)).Yl(s.ga6K())}, +cg(a,b){var s,r=this,q=r.e +q.toString +s=r.$ti +s.i("pz<1>").a(q) +r.qn(0,b) +s=s.i("iU<1,G>") +s.a(A.bP.prototype.gag.call(r)).Yl(r.ga6K()) +r.R8=!0 +s.a(A.bP.prototype.gag.call(r)).ae()}, +dL(){var s=this +s.amm() +s.$ti.i("iU<1,G>").a(A.bP.prototype.gag.call(s)).ae() +s.R8=!0}, +mn(){var s=this +s.$ti.i("iU<1,G>").a(A.bP.prototype.gag.call(s)).ae() +s.R8=!0 +s.Pe()}, +ou(){this.$ti.i("iU<1,G>").a(A.bP.prototype.gag.call(this)).Yl(null) +this.a_Q()}, +aIg(a){var s=this,r=new A.b8Z(s,a) +r=s.R8||!a.l(0,s.p4)?r:null +s.f.Cs(s,r)}, +mg(a,b){this.$ti.i("iU<1,G>").a(A.bP.prototype.gag.call(this)).sbz(a)}, +mk(a,b,c){}, +nj(a,b){this.$ti.i("iU<1,G>").a(A.bP.prototype.gag.call(this)).sbz(null)}} +A.b8Z.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.i("pz<1>").a(n).c.$2(o,k.b) +o.e.toString}catch(m){s=A.v(m) +r=A.aT(m) +l=A.Jb(A.bz3(A.c3("building "+k.a.e.j(0)),s,r,new A.b9_())) +j=l}try{o=k.a +o.p1=o.fN(o.p1,j,null)}catch(m){q=A.v(m) +p=A.aT(m) +o=k.a +l=A.Jb(A.bz3(A.c3("building "+o.e.j(0)),q,p,new A.b90())) +j=l +o.p1=o.fN(null,j,o.c)}finally{o=k.a +o.R8=!1 +o.p4=k.b}}, +$S:0} +A.b9_.prototype={ +$0(){var s=A.a([],t.E) +return s}, +$S:35} +A.b90.prototype={ +$0(){var s=A.a([],t.E) +return s}, +$S:35} +A.iU.prototype={ +Yl(a){if(J.e(a,this.Wf$))return +this.Wf$=a +this.ae()}} +A.lQ.prototype={ +b6(a){var s=new A.ST(null,null,new A.bk(),A.aK()) +s.b5() +return s}} +A.ST.prototype={ +bU(a){return 0}, +bQ(a){return 0}, +bT(a){return 0}, +bP(a){return 0}, +ds(a){return B.V}, +fH(a,b){return null}, +ck(){var s=this,r=t.k.a(A.G.prototype.gah.call(s)),q=s.Wf$ +q.toString +s.LN(q,A.y(s).i("iU.0")) +q=s.H$ +if(q!=null){q.df(r,!0) +s.id=r.bD(s.H$.gv(0))}else s.id=new A.R(A.M(1/0,r.a,r.b),A.M(1/0,r.c,r.d))}, +iw(a){var s=this.H$ +s=s==null?null:s.my(a) +return s==null?this.Gq(a):s}, +dU(a,b){var s=this.H$ +s=s==null?null:s.dT(a,b) +return s===!0}, +aT(a,b){var s=this.H$ +if(s!=null)a.fa(s,b)}} +A.ant.prototype={ +aI(a){var s +this.eD(a) +s=this.H$ +if(s!=null)s.aI(a)}, +aB(a){var s +this.eE(0) +s=this.H$ +if(s!=null)s.aB(0)}} +A.anu.prototype={} +A.Fx.prototype={} +A.bi3.prototype={ +$1(a){return this.a.a=a}, +$S:78} +A.bi4.prototype={ +$1(a){return a.b}, +$S:566} +A.bi5.prototype={ +$1(a){var s,r,q,p +for(s=J.a0(a),r=this.a,q=this.b,p=0;ps.b?B.rl:B.rk}, +CI(a,b,c,d,e){var s=this,r=c==null?s.gem():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 new A.L1(s.a,s.b,r,s.e,o,q,p,s.x,!1,s.z,s.Q,s.as,s.at,s.ax,s.ay,s.ch,s.CW,n,!1)}, +CD(a){var s=null +return this.CI(s,a,s,s,s)}, +aQE(a,b){return this.CI(null,a,null,null,b)}, +abR(a){var s=null +return this.CI(s,s,a,s,s)}, +aQG(a,b){return this.CI(null,null,null,a,b)}, +aQN(a,b,c,d){return this.CI(a,b,null,c,d)}, +ago(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.uy(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.aQE(r,q.uy(a?Math.max(0,q.d-s.d):l,p,n,o))}, +ags(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.uy(l,p,n,o) +p=b?0:r +o=d?0:r +n=c?0:r +return s.aQG(m.uy(0,p,n,o),q)}, +b_r(a){return this.ags(a,!1,!1,!1)}, +b_p(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.R(g-f,e-d).l(0,c)&&new A.z(f,d).l(0,B.j))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.af(j).i("bh<1>") +return h.aQN(A.a8(new A.bh(j,new A.aI9(a),i),!0,i.i("B.E")),new A.al(e,c,q,g),new A.al(f,d,k,l),new A.al(o,n,m,p))}, +l(a,b){var s,r=this +if(b==null)return!1 +if(J.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.L1)if(b.a.l(0,r.a))if(b.b===r.b)if(b.gem().a===r.gem().a)if(b.e===r.e)if(b.r.l(0,r.r))if(b.w.l(0,r.w))if(b.f.l(0,r.f))if(b.x.l(0,r.x))if(b.as===r.as)if(b.at===r.at)if(b.ax===r.ax)if(b.Q===r.Q)if(b.z===r.z)if(b.ay===r.ay)if(b.ch===r.ch)if(b.CW.l(0,r.CW))s=A.d7(b.cx,r.cx) +return s}, +gB(a){var s=this +return A.a4(s.a,s.b,s.gem().a,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.cj(s.cx),!1,B.a,B.a)}, +j(a){var s=this +return"MediaQueryData("+B.b.bJ(A.a(["size: "+s.a.j(0),"devicePixelRatio: "+B.d.aF(s.b,1),"textScaler: "+s.gem().j(0),"platformBrightness: "+s.e.j(0),"padding: "+s.r.j(0),"viewPadding: "+s.w.j(0),"viewInsets: "+s.f.j(0),"systemGestureInsets: "+s.x.j(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.j(0),"displayFeatures: "+A.c(s.cx),"supportsShowingSystemContextMenu: false"],t.s),", ")+")"}} +A.aI9.prototype={ +$1(a){return this.a.XB(a.gpl(a))}, +$S:254} +A.n0.prototype={ +dY(a){return!this.w.l(0,a.w)}, +Yu(a,b){return b.fQ(0,new A.aIa(this,a))}} +A.aIb.prototype={ +$1(a){var s=A.cr(a,null,t.l).w +return A.C9(this.c,s.abR(s.gem().abi(0,this.b,this.a)))}, +$S:570} +A.aIa.prototype={ +$1(a){var s=this,r=!1 +if(a instanceof A.hU)switch(a.a){case 0:r=!s.a.w.a.l(0,s.b.w.a) +break +case 1:r=s.a.w.gpV(0)!==s.b.w.gpV(0) +break +case 2:r=s.a.w.b!==s.b.w.b +break +case 3:r=s.a.w.gem().a!==s.b.w.gem().a +break +case 4:r=!s.a.w.gem().l(0,s.b.w.gem()) +break +case 5:r=s.a.w.e!==s.b.w.e +break +case 6:r=!s.a.w.r.l(0,s.b.w.r) +break +case 7:r=!s.a.w.f.l(0,s.b.w.f) +break +case 9:r=!s.a.w.w.l(0,s.b.w.w) +break +case 12:r=s.a.w.Q!==s.b.w.Q +break +case 13:r=s.a.w.as!==s.b.w.as +break +case 14:r=s.a.w.at!==s.b.w.at +break +case 15:r=s.a.w.ax!==s.b.w.ax +break +case 16:r=s.a.w.ay!==s.b.w.ay +break +case 17:r=s.a.w.ch!==s.b.w.ch +break +case 18:r=!s.a.w.CW.l(0,s.b.w.CW) +break +case 19:r=s.a.w.cx!==s.b.w.cx +break +case 8:r=!s.a.w.x.l(0,s.b.w.x) +break +case 11:r=s.a.w.z!==s.b.w.z +break +case 10:break +case 20:break +default:r=null}return r}, +$S:135} +A.a4T.prototype={ +D(){return"NavigationMode."+this.b}} +A.Sa.prototype={ +a0(){return new A.ah5()}} +A.ah5.prototype={ +aj(){this.aw() +$.aw.cU$.push(this)}, +c1(){this.ea() +this.aMO() +this.BY()}, +b1(a){var s,r=this +r.bb(a) +s=r.a +s.toString +if(r.e==null||a.c!==s.c)r.BY()}, +aMO(){var s,r=this +r.a.toString +s=r.c +s.toString +s=A.de(s,null) +r.d=s +r.e=null}, +BY(){var s=this,r=A.a3X(s.a.c,s.d) +if(!r.l(0,s.e))s.J(new A.b9Q(s,r))}, +ya(){this.BY()}, +acy(){if(this.d==null)this.BY()}, +acx(){if(this.d==null)this.BY()}, +m(){$.aw.lJ(this) +this.ar()}, +F(a){var s=this.e +s.toString +return A.C9(this.a.e,s)}} +A.b9Q.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.anc.prototype={} +A.ak9.prototype={ +b6(a){var s=new A.ajl(this.e,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.saPx(this.e)}} +A.ajl.prototype={ +saPx(a){var s=this,r=s.E +if(r===a)return +if(s.y!=null)r.K(0,s.gz2()) +s.E=a +a.a4(0,s.gz2()) +s.bM()}, +goA(){var s=this.E.a,r=A.P.prototype.goA.call(this) +return new A.I(r.a+s.a,r.b+s.b,r.c-s.c,r.d-s.d)}, +aI(a){this.wz(a) +this.E.a4(0,this.gz2())}, +aB(a){this.E.K(0,this.gz2()) +this.qq(0)}, +hP(a){this.jM(a) +a.a=!0}} +A.a45.prototype={ +F(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=null +switch(A.bY().a){case 1:case 3:case 5:s=!1 +break +case 0:case 2:case 4:s=!0 +break +default:s=h}r=i.d&&s +q=new A.aIO(i,a) +p=i.x +o=r&&i.r!=null?q:h +n=r&&i.r!=null?q:h +m=r?i.r:h +if(r&&i.r!=null){l=a.au(t.I) +l.toString +l=l.w}else l=h +k=i.c +k=A.ov(new A.ep(B.uI,k==null?h:new A.wk(k,h,h),h),B.cg,h,h,h,h) +j=new A.ck(A.cJ(h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,p!=null?new A.a83(p,h):h,h,h,h,h,h,m,h,h,h,h,h,h,h,h,h,h,h,h,n,h,h,h,h,h,h,h,h,h,h,h,h,o,h,h,h,h,h,h,l,h,h,h,h),!1,!1,!1,!1,k,h) +if(r&&i.w!=null){p=i.w +p.toString +j=new A.ak9(p,j,h)}return A.bFA(new A.ts(!r,new A.ahe(j,q,h),h))}} +A.aIO.prototype={ +$0(){if(this.a.d)A.buD(this.b) +else A.OB(B.ap8)}, +$S:0} +A.Wf.prototype={ +F(a){var s=this,r=t.Bs.a(s.c) +return A.aIN(!0,s.x,r.gk(r),s.e,null,s.f,s.y)}} +A.Ex.prototype={ +lF(a){if(this.a2==null)return!1 +return this.wt(a)}, +adV(a){}, +adW(a,b){var s=this.a2 +if(s!=null)this.e6("onAnyTapUp",s)}, +Lz(a,b,c){}} +A.acO.prototype={ +abG(){var s=t.S +return new A.Ex(B.bc,18,B.eV,A.w(s,t.SP),A.dD(s),null,null,A.Gr(),A.w(s,t.Au))}, +aei(a){a.a2=this.a}} +A.ahe.prototype={ +F(a){return new A.nb(this.c,A.C([B.avo,new A.acO(this.d)],t.u,t.xR),B.aU,!1,null)}} +A.a4U.prototype={ +F(a){var s,r,q=this,p=a.au(t.I) +p.toString +s=A.a([],t.p) +r=q.c +if(r!=null)s.push(A.aER(r,B.of)) +r=q.d +if(r!=null)s.push(A.aER(r,B.og)) +r=q.e +if(r!=null)s.push(A.aER(r,B.oh)) +return new A.I9(new A.bfU(q.f,q.r,p.w),s,null)}} +A.U8.prototype={ +D(){return"_ToolbarSlot."+this.b}} +A.bfU.prototype={ +MX(a){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(h.b.h(0,B.of)!=null){s=a.a +r=a.b +q=h.hS(B.of,new A.au(0,s,r,r)).a +switch(h.f.a){case 0:s-=q +break +case 1:s=0 +break +default:s=null}h.kg(B.of,new A.z(s,0))}else q=0 +if(h.b.h(0,B.oh)!=null){p=h.hS(B.oh,A.aqH(a)) +switch(h.f.a){case 0:s=0 +break +case 1:s=a.a-p.a +break +default:s=null}o=p.a +h.kg(B.oh,new A.z(s,(a.b-p.b)/2))}else o=0 +if(h.b.h(0,B.og)!=null){s=a.a +r=h.e +n=Math.max(s-q-o-r*2,0) +m=h.hS(B.og,A.aqH(a).abN(n)) +l=q+r +if(h.d){k=m.a +j=(s-k)/2 +i=s-o +if(j+k>i)j=i-k-r +else if(j")),s=s.c;q.u();){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}, +gDO(){var s=this.a +if(s==null)s=null +else{s=s.a3a(A.boB(this)) +s=s==null?null:s.gaeG()}return s===!0}} +A.aPy.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.gjr() +if(r!=null)r.iI()}}, +$S:20} +A.aPx.prototype={ +$1(a){var s=this.a.a +if(s!=null){s=s.y.gjr() +if(s!=null)s.iI()}}, +$S:20} +A.lZ.prototype={ +j(a){var s=this.a +s=s==null?"none":'"'+s+'"' +return"RouteSettings("+s+", "+A.c(this.b)+")"}} +A.xP.prototype={} +A.x5.prototype={ +dY(a){return a.f!=this.f}} +A.aPw.prototype={} +A.a9M.prototype={} +A.a_3.prototype={} +A.xO.prototype={ +a0(){var s=null,r=A.a([],t.uD),q=$.aW(),p=t.Tp +return new A.n3(new A.afW(r,q),A.bn(t.Ez),new A.afX(q),A.ej(s,p),A.ej(s,p),A.kK(!0,"Navigator",!0,!0,s,s,!1),new A.N8(0,q,t.dZ),new A.cS(!1,q),A.bn(t.S),s,A.w(t.yb,t.M),s,!0,s,s,s)}, +aYb(a,b){return this.as.$2(a,b)}} +A.aKn.prototype={ +$1(a){return a==null}, +$S:571} +A.j5.prototype={ +D(){return"_RouteLifecycle."+this.b}} +A.ajP.prototype={} +A.lo.prototype={ +ghJ(){var s,r +if(this.c){s=t.sd.a(this.a.b) +s.ghJ() +r=A.c(s.ghJ()) +return"p+"+r}r=this.b +if(r!=null)return"r+"+r.gagI() +return null}, +aUr(a,b,c,d){var s,r,q,p=this,o=p.d,n=p.a +n.a=b +n.pK() +s=p.d +if(s===B.Q1||s===B.Q2){r=n.ra() +p.d=B.Q3 +r.ahR(new A.bcJ(p,b))}else{n.KC(c) +p.d=B.ks}if(a)n.uF(null) +s=o===B.aAP||o===B.Q2 +q=b.w +if(s)q.f0(0,new A.Sm(n,d)) +else q.f0(0,new A.Fs(n,d))}, +Wn(a){var s=this +s.a.yb(a) +s.f=new A.vN(new ($.VT())(a)) +if(s.w!=null)a.e.a.ak(new A.bcI(s),t.P)}, +aUg(a,b){var s,r=this +r.d=B.aAL +s=r.a +if((s.d.a.a&30)!==0)return!0 +if(!s.r9(r.x)){r.d=B.ks +return!1}s.Ee(!0,r.x) +if(r.c){t.sd.a(s.b) +a.a.toString}r.x=null +return!0}, +eT(a){if(this.d.a>=10)return +this.y=!0 +this.d=B.Q0}, +m(){var s,r,q,p,o,n,m,l=this,k={} +l.d=B.aAN +s=l.a +r=s.f +q=new A.bcG() +p=new A.bh(r,q,A.af(r).i("bh<1>")) +if(!p.gav(0).u()){l.d=B.o5 +s.m() +return}k.a=p.gt(0) +o=s.a +o.f.q(0,l) +for(s=B.b.gav(r),q=new A.va(s,q);q.u();){r=s.gI(0) +n=A.bu("listener") +m=new A.bcH(k,l,r,n,o) +n.b=m +r=r.e +if(r!=null)r.a4(0,m)}}, +gb1b(){var s=this.d.a +return s<=7&&s>=1}, +gaeG(){var s=this.d.a +return s<=10&&s>=1}} +A.bcJ.prototype={ +$0(){var s=this.a +if(s.d===B.Q3){s.d=B.ks +this.b.Rb()}}, +$S:0} +A.bcI.prototype={ +$1(a){var s=0,r=A.n(t.P),q=this,p,o +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=A.bY() +s=B.bg===p?3:4 +break +case 3:o=q.a.w +s=5 +return A.f(A.eC(B.bl,null,t.H),$async$$1) +case 5:B.iu.fm(0,B.xs.NH(o)) +s=2 +break +case 4:if(B.aG===p){B.iu.fm(0,B.xs.NH(q.a.w)) +s=2 +break}s=2 +break +case 2:return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:272} +A.bcG.prototype={ +$1(a){return a.gMl()}, +$S:573} +A.bcH.prototype={ +$0(){var s=this,r=s.a;--r.a +s.c.K(0,s.d.b2()) +if(r.a===0)return A.ff(new A.bcF(s.b,s.e))}, +$S:0} +A.bcF.prototype={ +$0(){var s=this.a +if(!this.b.f.C(0,s))return +s.d=B.o5 +s.a.m()}, +$S:0} +A.bcK.prototype={ +$1(a){return a.a===this.a}, +$S:102} +A.vv.prototype={} +A.Fs.prototype={ +vp(a){a.Ia(this.b,this.a,B.eW,!1)}} +A.Fr.prototype={ +vp(a){var s=$.nU() +A.wL(a) +if(!s.a.get(a).cx.a)a.Ia(this.a,this.b,B.eX,!1)}} +A.Sl.prototype={ +vp(a){}} +A.Sm.prototype={ +vp(a){var s=this.a,r=s.gkb() +if(r)a.Ia(this.b,s,B.eW,!1)}} +A.afW.prototype={ +q(a,b){this.a.push(b) +this.T()}, +G(a,b){B.b.G(this.a,b) +if(J.du(b))this.T()}, +h(a,b){return this.a[b]}, +gav(a){var s=this.a +return new J.di(s,s.length,A.af(s).i("di<1>"))}, +j(a){return A.jr(this.a,"[","]")}, +$iaA:1} +A.n3.prototype={ +aAw(){var s,r,q=this,p=q.kF(),o=A.bu("routeBlocksPop"),n=!p +if(n){s=q.qF(A.ls()) +o.sfI(s!=null&&s.a.grT()===B.i0)}else o.sfI(!1) +r=new A.u9(!n||o.b2()) +n=$.cp +switch(n.R8$.a){case 4:q.c.fS(r) +break +case 0:case 2:case 3:case 1:n.p2$.push(new A.aKk(q,r)) +break}}, +aj(){var s,r,q,p,o=this +o.aw() +for(s=o.a.y,r=0;!1;++r){q=s[r] +p=$.nU() +A.wK(q) +p.a.set(q,o)}o.as=o.a.y +s=o.c.jc(t.mS) +s=s==null?null:s.gaL() +t._I.a(s) +o.U0(s==null?null:s.f) +o.a.toString +B.rh.o2("selectSingleEntryHistory",t.H) +$.h2.L4$.a4(0,o.ga6M()) +o.e.a4(0,o.ga4n())}, +aIl(){var s=this.e,r=A.qb(new A.bh(s,A.ls(),A.y(s).i("bh"))) +if(r!=null)r.w=$.h2.L4$.a}, +nk(a,b){var s,r,q,p,o,n,m,l=this +l.vC(l.at,"id") +s=l.r +l.vC(s,"history") +l.a3l() +l.d=new A.bG(null,t.ku) +r=l.e +r.G(0,s.agJ(null,l)) +l.a.toString +q=r.a +p=0 +for(;!1;++p){o=B.aah[p] +n=l.c +n.toString +m=new A.lo(o.Vp(n),null,!0,B.uc,B.dH,new A.vN(new ($.VT())(B.dH)),B.dH) +q.push(m) +r.T() +n=s.agJ(m,l) +B.b.G(q,n) +if(B.b.gbC(n))r.T()}if(s.y==null){s=l.a +q=s.r +r.G(0,J.eX(s.aYb(l,q),new A.aKm(l),t.Ez))}l.Rb()}, +VG(a){var s,r=this +r.anD(a) +s=r.r +if(r.dd$!=null)s.cg(0,r.e) +else s.V(0)}, +ghJ(){return this.a.z}, +c1(){var s,r,q,p,o=this +o.aoF() +s=o.c.au(t.mS) +o.U0(s==null?null:s.f) +for(r=o.e.a,q=A.af(r),r=new J.di(r,r.length,q.i("di<1>")),q=q.c;r.u();){p=r.d;(p==null?q.a(p):p).a.K1()}}, +a3l(){var s,r,q +this.f.R3(new A.aKj(),!0) +for(s=this.e,r=s.a;!s.ga_(0);){q=r.pop() +s.T() +A.buC(q,!1)}}, +U0(a){var s,r,q=this +if(q.Q!=a){if(a!=null)$.nU().n(0,a,q) +s=q.Q +if(s==null)s=null +else{r=$.nU() +A.wL(s) +s=r.a.get(s)}if(s===q){s=$.nU() +r=q.Q +r.toString +s.n(0,r,null)}q.Q=a +q.a9j()}}, +a9j(){var s=this,r=s.Q,q=s.a +if(r!=null)s.as=B.b.ab(q.y,A.a([r],t.tc)) +else s.as=q.y}, +b1(a){var s,r,q,p,o,n=this +n.aoG(a) +s=a.y +if(s!==n.a.y){for(r=0;!1;++r){q=s[r] +p=$.nU() +A.wK(q) +p.a.set(q,null)}for(s=n.a.y,r=0;!1;++r){q=s[r] +p=$.nU() +A.wK(q) +p.a.set(q,n)}n.a9j()}n.a.toString +for(s=n.e.a,p=A.af(s),s=new J.di(s,s.length,p.i("di<1>")),p=p.c;s.u();){o=s.d;(o==null?p.a(o):o).a.K1()}}, +fn(){var s,r,q,p,o=this.as +o===$&&A.b() +s=o.length +r=0 +for(;r")),r=r.c;s.u();){q=s.d +B.b.G(p,(q==null?r.a(q):q).a.f)}return p}, +Hj(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=null +a2.ch=!0 +s=a2.e +r=s.gt(0)-1 +q=s.a +p=q[r] +o=r>0?q[r-1]:a3 +n=A.a([],t.uD) +$label0$1:for(m=a2.x,l=a2.w,k=a3,j=k,i=!1,h=!1;r>=0;){g=!0 +f=!0 +switch(p.d.a){case 1:e=a2.qz(r-1,A.ls()) +d=e>=0?q[e]:a3 +d=d==null?a3:d.a +c=p.a +c.a=a2 +c.pK() +p.d=B.aAO +l.f0(0,new A.Fs(c,d)) +continue $label0$1 +case 2:if(i||j==null){d=p.a +d.D3() +p.d=B.ks +if(j==null)d.uF(a3) +continue $label0$1}break +case 3:case 4:case 6:d=o==null?a3:o.a +e=a2.qz(r-1,A.ls()) +c=e>=0?q[e]:a3 +c=c==null?a3:c.a +p.aUr(j==null,a2,d,c) +if(p.d===B.ks)continue $label0$1 +break +case 5:if(!h&&k!=null)p.Wn(k) +h=f +break +case 7:if(!h&&k!=null)p.Wn(k) +h=f +i=g +break +case 8:e=a2.qz(r,A.VA()) +d=e>=0?q[e]:a3 +if(!p.aUg(a2,d==null?a3:d.a))continue $label0$1 +if(!h){if(k!=null)p.Wn(k) +k=p.a}d=p.a +e=a2.qz(r,A.VA()) +c=e>=0?q[e]:a3 +m.f0(0,new A.Fr(d,c==null?a3:c.a)) +if(p.d===B.ud)continue $label0$1 +i=g +break +case 11:break +case 9:d=p.a +c=p.x +if(c==null)c=a3 +d=d.d.a +if((d.a&30)!==0)A.V(A.a1("Future already completed")) +d.kv(c) +p.x=null +p.d=B.Q0 +continue $label0$1 +case 10:if(!h){if(k!=null)p.a.yb(k) +k=a3}e=a2.qz(r,A.VA()) +d=e>=0?q[e]:a3 +d=d==null?a3:d.a +p.d=B.aAM +if(p.y)m.f0(0,new A.Sl(p.a,d)) +continue $label0$1 +case 12:if(!i&&j!=null)break +if(p.c)a2.a.toString +p.d=B.ud +continue $label0$1 +case 13:p=B.b.iF(q,r) +s.T() +n.push(p) +p=j +break +case 14:case 15:case 0:break}--r +b=r>0?q[r-1]:a3 +j=p +p=o +o=b}a2.axJ() +a2.axL() +a2.a.toString +a=a2.qF(A.ls()) +a0=a==null?a3:a.a.b.a +if(a0!=null&&a0!==a2.ax){A.bO8(!1,a3,A.f1(a0)) +a2.ax=a0}for(q=n.length,a1=0;a1=0;){s=l[k] +r=s.d.a +if(!(r<=12&&r>=3)){--k +continue}q=this.ayW(k+1,A.bAi()) +r=q==null +p=r?m:q.a +if(p!=s.r){if(!((r?m:q.a)==null&&J.e(s.f.a.deref(),s.r))){p=s.a +p.uF(r?m:q.a)}s.r=r?m:q.a}--k +o=this.qz(k,A.bAi()) +n=o>=0?l[o]:m +r=n==null +p=r?m:n.a +if(p!=s.e){p=s.a +p.VB(r?m:n.a) +s.e=r?m:n.a}}}, +a3V(a,b){a=this.qz(a,b) +return a>=0?this.e.a[a]:null}, +qz(a,b){var s=this.e.a +while(!0){if(!(a>=0&&!b.$1(s[a])))break;--a}return a}, +ayW(a,b){var s=this.e,r=s.a +while(!0){if(!(a?") +q=r.a(this.a.w.$1(s)) +return q==null&&!b?r.a(this.a.x.$1(s)):q}, +Tj(a,b,c){return this.IC(a,!1,b,c)}, +ag_(a,b,c){var s=this.Tj(a,b,c) +s.toString +return this.nh(s)}, +aZU(a,b){return this.ag_(a,null,b)}, +aZL(a){var s=this.e +s.a.push(A.bxH(a,B.Q1,!1,null)) +s.T() +this.Rb() +this.PW() +return a.d.a}, +nh(a){return this.aZL(a,t.X)}, +kF(){var s=this.e.gav(0),r=new A.va(s,A.ls()) +if(!r.u())return!1 +if(s.gI(0).a.gYD())return!0 +if(!r.u())return!1 +return!0}, +E4(a){var s=0,r=A.n(t.y),q,p=this,o,n +var $async$E4=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)$async$outer:switch(s){case 0:n=p.qF(A.ls()) +if(n==null){q=!1 +s=1 +break}o=n.a +s=3 +return A.f(o.lM(),$async$E4) +case 3:if(c===B.i0){q=!0 +s=1 +break}if(p.c==null){q=!0 +s=1 +break}if(n!==p.qF(A.ls())){q=!0 +s=1 +break}switch(o.grT().a){case 2:q=!1 +s=1 +break $async$outer +case 0:p.fM(a) +q=!0 +s=1 +break $async$outer +case 1:o.Ee(!1,a) +q=!0 +s=1 +break $async$outer}case 1:return A.l(q,r)}}) +return A.m($async$E4,r)}, +af3(){return this.E4(null,t.X)}, +aXa(a){return this.E4(a,t.X)}, +afL(a){var s=this,r=s.e.aWr(0,A.ls()) +if(r.c)s.a.toString +r.x=a +r.d=B.aAQ +s.Hj(!1) +s.PW()}, +fM(a){return this.afL(a,t.X)}, +cV(){return this.afL(null,t.X)}, +aZr(a){var s=this.qF(A.ls()) +for(;s!=null;){if(a.$1(s.a))return +this.cV() +s=this.qF(A.ls())}}, +Nj(a){var s=this,r=a.gkb() +s.e.pF(0,A.boB(a)).eT(0) +s.Hj(!1) +if(r){s.qF(A.ls()) +s.PW()}}, +Wg(a){var s,r=this,q=r.e.a,p=B.b.aef(q,A.boB(a),0) +q=q[p] +if(q.c&&q.d.a<8){s=r.a3V(p-1,A.VA()) +s=s==null?null:s.a +r.x.f0(0,new A.Fr(a,s))}q.d=B.ud +if(!r.ch)r.Hj(!1)}, +sa9R(a){this.CW=a +this.cx.sk(0,a>0)}, +aRL(){var s,r,q,p,o,n,m=this +m.sa9R(m.CW+1) +if(m.CW===1){s=m.e +r=m.qz(s.gt(0)-1,A.VA()) +q=s.a[r].a +p=!q.gYD()&&r>0?m.a3V(r-1,A.VA()).a:null +s=m.as +s===$&&A.b() +o=s.length +n=0 +for(;n")),r=r.c;s.u();){q=s.d +if(q==null)q=r.a(q) +if(a.$1(q))return q}return null}, +qF(a){var s,r,q,p,o +for(s=this.e.a,r=A.af(s),s=new J.di(s,s.length,r.i("di<1>")),r=r.c,q=null;s.u();){p=s.d +o=p==null?r.a(p):p +if(a.$1(o))q=o}return q}, +F(a){var s,r,q=this,p=null,o=q.gaBp(),n=A.Bo(a),m=q.dd$,l=q.d +l===$&&A.b() +s=q.a.ax +if(l.gad()==null){r=q.ga0G() +r=J.qc(r.slice(0),A.af(r).c)}else r=B.aai +return new A.x5(p,new A.ea(new A.aKl(q,a),A.BY(B.di,A.bFe(!1,A.bmc(A.tA(!0,p,A.a9V(m,new A.xS(r,s,l)),p,p,p,q.y,!1,p,p,p,p,p,!0),n)),p,o,q.gaBi(),p,p,p,o),p,t.en),p)}} +A.aKk.prototype={ +$1(a){var s=this.a.c +if(s==null)return +s.fS(this.b)}, +$S:3} +A.aKm.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.i("dG.T").a(r) +s.anC(0,r+1) +q=new A.ahn(r,q,null,B.ue)}else q=null +return A.bxH(a,B.uc,!1,q)}, +$S:576} +A.aKj.prototype={ +$1(a){a.d=B.o5 +a.a.m() +return!0}, +$S:102} +A.aKi.prototype={ +$0(){var s=this.a +if(s!=null)s.saa9(!0)}, +$S:0} +A.aKl.prototype={ +$1(a){if(a.a||!this.a.kF())return!1 +this.b.fS(B.aij) +return!0}, +$S:252} +A.T7.prototype={ +D(){return"_RouteRestorationType."+this.b}} +A.ajE.prototype={ +gaeH(){return!0}, +K8(){return A.a([this.a.a],t.jl)}} +A.ahn.prototype={ +K8(){var s=this,r=s.ap1(),q=A.a([s.c,s.d],t.jl),p=s.e +if(p!=null)q.push(p) +B.b.G(r,q) +return r}, +Vp(a){var s=a.Tj(this.d,this.e,t.z) +s.toString +return s}, +gagI(){return this.c}} +A.aYA.prototype={ +gaeH(){return!1}, +K8(){A.bLZ(this.d)}, +Vp(a){var s=a.c +s.toString +return this.d.$2(s,this.e)}, +gagI(){return this.c}} +A.afX.prototype={ +cg(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.w(t.N,t.UX) +s=t.jl +r=A.a([],s) +q=c.y +q.toString +p=J.i(q,null) +if(p==null)p=B.mt +o=A.w(t.T,t.UX) +q=c.y +q.toString +n=J.bF9(J.rX(q)) +for(q=a1.a,m=A.af(q),q=new J.di(q,q.length,m.i("di<1>")),m=m.c,l=b,k=a,j=!0;q.u();){i=q.d +h=i==null?m.a(i):i +if(h.d.a>7){i=h.a +i.c.sk(0,b) +continue}if(h.c){k=k||r.length!==J.aM(p) +if(r.length!==0){g=l==null?b:l.ghJ() +o.n(0,g,r) +n.C(0,g)}j=h.ghJ()!=null +i=h.a +f=j?h.ghJ():b +i.c.sk(0,f) +if(j){r=A.a([],s) +i=c.y +i.toString +p=J.i(i,h.ghJ()) +if(p==null)p=B.mt}else{r=B.mt +p=B.mt}l=h +continue}if(j){i=h.b +i=i==null?b:i.gaeH() +j=i===!0}else j=!1 +i=h.a +f=j?h.ghJ():b +i.c.sk(0,f) +if(j){i=h.b +f=i.b +i=f==null?i.b=i.K8():f +if(!k){f=J.a0(p) +e=f.gt(p) +d=r.length +k=e<=d||!J.e(f.h(p,d),i)}else k=!0 +B.b.q(r,i)}}k=k||r.length!==J.aM(p) +c.axu(r,l,o,n) +if(k||n.gbC(n)){c.y=o +c.T()}}, +axu(a,b,c,d){var s +if(a.length!==0){s=b==null?null:b.ghJ() +c.n(0,s,a) +d.C(0,s)}}, +V(a){if(this.y==null)return +this.y=null +this.T()}, +agJ(a,b){var s,r,q,p=A.a([],t.uD) +if(this.y!=null)s=a!=null&&a.ghJ()==null +else s=!0 +if(s)return p +s=this.y +s.toString +r=J.i(s,a==null?null:a.ghJ()) +if(r==null)return p +for(s=J.ay(r);s.u();){q=A.bQR(s.gI(s)) +p.push(new A.lo(q.Vp(b),q,!1,B.uc,B.dH,new A.vN(new ($.VT())(B.dH)),B.dH))}return p}, +Ki(){return null}, +yQ(a){a.toString +return J.W_(t.f.a(a),new A.b5t(),t.T,t.UX)}, +aeh(a){this.y=a}, +zr(){return this.y}, +gyq(a){return this.y!=null}} +A.b5t.prototype={ +$2(a,b){return new A.aO(A.dk(a),A.cN(t.j.a(b),!0,t.K),t.qE)}, +$S:577} +A.u9.prototype={ +j(a){return"NavigationNotification canHandlePop: "+this.a}} +A.bad.prototype={ +$2(a,b){if(!a.a)a.K(0,b)}, +$S:83} +A.Sn.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.So.prototype={ +b1(a){this.bb(a) +this.yd()}, +c1(){var s,r,q,p,o=this +o.ea() +s=o.dd$ +r=o.gvI() +q=o.c +q.toString +q=A.yi(q) +o.kM$=q +p=o.uh(q,r) +if(r){o.nk(s,o.iz$) +o.iz$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.kL$.az(0,new A.bad()) +s=r.dd$ +if(s!=null)s.m() +r.dd$=null +r.aoE()}} +A.an4.prototype={} +A.a51.prototype={ +j(a){var s=A.a([],t.s) +this.h6(s) +return"Notification("+B.b.bJ(s,", ")+")"}, +h6(a){}} +A.ea.prototype={ +cp(a){return new A.Sp(this,B.aA,this.$ti.i("Sp<1>"))}} +A.Sp.prototype={ +afm(a){var s,r=this.e +r.toString +s=this.$ti +s.i("ea<1>").a(r) +if(s.c.b(a))return r.d.$1(a) +return!1}, +rP(a){}} +A.kP.prototype={} +A.anh.prototype={} +A.a5p.prototype={ +D(){return"OverflowBarAlignment."+this.b}} +A.a5o.prototype={ +b6(a){var s=this,r=null,q=a.au(t.I) +q.toString +q=q.w +q=new A.FG(s.e,s.f,s.r,s.w,s.x,q,0,r,r,new A.bk(),A.aK()) +q.b5() +q.G(0,r) +return q}, +b9(a,b){var s,r=this +t.To.a(b) +b.sOU(0,r.e) +b.siu(r.f) +b.saYX(r.r) +b.saYV(r.w) +b.saYW(r.x) +s=a.au(t.I) +s.toString +b.scr(s.w)}} +A.p5.prototype={} +A.FG.prototype={ +sOU(a,b){if(this.A===b)return +this.A=b +this.ae()}, +siu(a){if(this.X==a)return +this.X=a +this.ae()}, +saYX(a){if(this.a9===a)return +this.a9=a +this.ae()}, +saYV(a){if(this.aC===a)return +this.aC=a +this.ae()}, +saYW(a){if(this.aQ===a)return +this.aQ=a +this.ae()}, +scr(a){if(this.M===a)return +this.M=a +this.ae()}, +ht(a){if(!(a.b instanceof A.p5))a.b=new A.p5(null,null,B.j)}, +bT(a){var s,r,q,p,o,n,m=this,l=m.am$ +if(l==null)return 0 +for(s=A.y(m).i("aD.1"),r=0;l!=null;){q=l.gcF() +p=B.bh.ha(l.fx,1/0,q) +r+=p +q=l.b +q.toString +l=s.a(q).aO$}q=m.A +o=m.dl$ +l=m.am$ +if(r+q*(o-1)>a){for(n=0;l!=null;){q=l.gcE() +p=B.bi.ha(l.fx,a,q) +n+=p +q=l.b +q.toString +l=s.a(q).aO$}return n+m.a9*(m.dl$-1)}else{for(n=0;l!=null;){q=l.gcE() +p=B.bi.ha(l.fx,a,q) +n=Math.max(n,p) +q=l.b +q.toString +l=s.a(q).aO$}return n}}, +bP(a){var s,r,q,p,o,n,m=this,l=m.am$ +if(l==null)return 0 +for(s=A.y(m).i("aD.1"),r=0;l!=null;){q=l.gcF() +p=B.bh.ha(l.fx,1/0,q) +r+=p +q=l.b +q.toString +l=s.a(q).aO$}q=m.A +o=m.dl$ +l=m.am$ +if(r+q*(o-1)>a){for(n=0;l!=null;){q=l.gcM() +p=B.bC.ha(l.fx,a,q) +n+=p +q=l.b +q.toString +l=s.a(q).aO$}return n+m.a9*(m.dl$-1)}else{for(n=0;l!=null;){q=l.gcM() +p=B.bC.ha(l.fx,a,q) +n=Math.max(n,p) +q=l.b +q.toString +l=s.a(q).aO$}return n}}, +bU(a){var s,r,q,p,o=this,n=o.am$ +if(n==null)return 0 +for(s=A.y(o).i("aD.1"),r=0;n!=null;){q=n.gcF() +p=B.bh.ha(n.fx,1/0,q) +r+=p +q=n.b +q.toString +n=s.a(q).aO$}return r+o.A*(o.dl$-1)}, +bQ(a){var s,r,q,p,o=this,n=o.am$ +if(n==null)return 0 +for(s=A.y(o).i("aD.1"),r=0;n!=null;){q=n.gcb() +p=B.aM.ha(n.fx,1/0,q) +r+=p +q=n.b +q.toString +n=s.a(q).aO$}return r+o.A*(o.dl$-1)}, +iw(a){return this.Ks(a)}, +fH(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=a2.b,a1=new A.au(0,a0,0,a2.d) +switch(b.aQ.a){case 1:s=new A.b3(b.gCw(),b.am$) +break +case 0:s=new A.b3(b.gK3(),b.dJ$) +break +default:s=a}r=s.a +q=t.xP.b(r) +p=a +if(q){o=s.b +p=o +n=r}else n=a +if(!q)throw A.d(A.a1("Pattern matching error")) +for(m=p,l=a,k=l,j=0,i=0,h=0;m!=null;m=n.$1(m)){s=m.gdD() +q=m.fx +g=B.af.ha(q,a1,s) +f=g.b +e=f-j +if(e>0){d=k==null?a:k+e/2 +k=d +j=f}c=B.iz.ha(q,new A.b3(a1,a3),m.gGS()) +if(c!=null){if(l==null){d=c+i +l=d}k=A.Ac(k,c+(j-f))}i+=f+b.a9 +h+=g.a}return h+b.A*(b.dl$-1)>a0?l:k}, +ds(a){var s,r,q,p,o,n,m,l,k,j=this,i=j.am$ +if(i==null)return new A.R(A.M(0,a.a,a.b),A.M(0,a.c,a.d)) +s=a.b +r=new A.au(0,s,0,a.d) +for(q=A.y(j).i("aD.1"),p=0,o=0,n=0;i!=null;){m=i.gdD() +l=B.af.ha(i.fx,r,m) +p+=l.a +m=l.b +o=Math.max(o,m) +n+=m+j.a9 +m=i.b +m.toString +i=q.a(m).aO$}k=p+j.A*(j.dl$-1) +if(k>s)return a.bD(new A.R(s,n-j.a9)) +else return a.bD(new A.R(j.X==null?k:s,o))}, +ck(){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="RenderBox was not laid out: ",a5={},a6=a5.a=a3.am$ +if(a6==null){s=t.k.a(A.G.prototype.gah.call(a3)) +a3.id=new A.R(A.M(0,s.a,s.b),A.M(0,s.c,s.d)) +return}s=t.k +r=s.a(A.G.prototype.gah.call(a3)) +q=new A.au(0,r.b,0,r.d) +for(r=A.y(a3).i("aD.1"),p=a6,o=0,n=0,m=0;p!=null;p=a6){p.df(q,!0) +p=a5.a +l=p.id +o+=(l==null?A.V(A.a1(a4+A.K(p).j(0)+"#"+A.c5(p))):l).a +n=Math.max(n,l.b) +m=Math.max(m,l.a) +p=p.b +p.toString +a6=r.a(p).aO$ +a5.a=a6}k=a3.M===B.ae +j=o+a3.A*(a3.dl$-1) +if(j>s.a(A.G.prototype.gah.call(a3)).b){a6=a3.aQ===B.r?a3.am$:a3.dJ$ +a5.a=a6 +i=new A.bbX(a5,a3) +for(r=t.pi,p=a6,h=0;p!=null;p=a6){l=p.b +l.toString +r.a(l) +g=0 +switch(a3.aC.a){case 2:p=s.a(A.G.prototype.gah.call(a3)) +g=a5.a +f=g.id +if(f==null)f=A.V(A.a1(a4+A.K(g).j(0)+"#"+A.c5(g))) +f=(p.b-f.a)/2 +p=f +break +case 0:if(k){p=s.a(A.G.prototype.gah.call(a3)) +g=a5.a +f=g.id +if(f==null)f=A.V(A.a1(a4+A.K(g).j(0)+"#"+A.c5(g))) +f=p.b-f.a +p=f}else{e=g +g=p +p=e}break +case 1:if(k){e=g +g=p +p=e}else{p=s.a(A.G.prototype.gah.call(a3)) +g=a5.a +f=g.id +if(f==null)f=A.V(A.a1(a4+A.K(g).j(0)+"#"+A.c5(g))) +f=p.b-f.a +p=f}break +default:g=p +p=null}l.a=new A.z(p,h) +p=g.id +if(p==null)p=A.V(A.a1(a4+A.K(g).j(0)+"#"+A.c5(g))) +h+=p.b+a3.a9 +a6=i.$0() +a5.a=a6}a3.id=s.a(A.G.prototype.gah.call(a3)).bD(new A.R(s.a(A.G.prototype.gah.call(a3)).b,h-a3.a9))}else{a6=a3.am$ +a5.a=a6 +d=a6.gv(0).a +c=a3.X==null?j:s.a(A.G.prototype.gah.call(a3)).b +a3.id=s.a(A.G.prototype.gah.call(a3)).bD(new A.R(c,n)) +b=A.bu("x") +a=a3.A +switch(a3.X){case null:case void 0:b.b=k?a3.gv(0).a-d:0 +break +case B.o:b.b=k?a3.gv(0).a-d:0 +break +case B.ac:a0=(a3.gv(0).a-j)/2 +b.b=k?a3.gv(0).a-a0-d:a0 +break +case B.cD:b.b=k?j-d:a3.gv(0).a-j +break +case B.bX:a=(a3.gv(0).a-o)/(a3.dl$-1) +b.b=k?a3.gv(0).a-d:0 +break +case B.mM:a=a3.dl$>0?(a3.gv(0).a-o)/a3.dl$:0 +s=a/2 +b.b=k?a3.gv(0).a-s-d:s +break +case B.jz:a=(a3.gv(0).a-o)/(a3.dl$+1) +b.b=k?a3.gv(0).a-a-d:a +break}for(s=!k,p=t.pi,l=b.a;g=a5.a,g!=null;){f=g.b +f.toString +p.a(f) +a1=b.b +if(a1===b)A.V(A.xp(l)) +a2=g.id +f.a=new A.z(a1,(n-(a2==null?A.V(A.a1(a4+A.K(g).j(0)+"#"+A.c5(g))):a2).b)/2) +if(s)g=b.b=a1+(a2.a+a) +else g=a1 +a6=a5.a=r.a(f).aO$ +if(k&&a6!=null){f=a6.id +b.b=g-((f==null?A.V(A.a1(a4+A.K(a6).j(0)+"#"+A.c5(a6))):f).a+a)}}}}, +dU(a,b){return this.CX(a,b)}, +aT(a,b){this.y5(a,b)}} +A.bbX.prototype={ +$0(){var s=this.b,r=s.aQ,q=this.a.a +s=A.y(s).i("aD.1") +if(r===B.r){r=q.b +r.toString +r=s.a(r).aO$ +s=r}else{r=q.b +r.toString +r=s.a(r).du$ +s=r}return s}, +$S:578} +A.anw.prototype={ +aI(a){var s,r,q +this.eD(a) +s=this.am$ +for(r=t.pi;s!=null;){s.aI(a) +q=s.b +q.toString +s=r.a(q).aO$}}, +aB(a){var s,r,q +this.eE(0) +s=this.am$ +for(r=t.pi;s!=null;){s.aB(0) +q=s.b +q.toString +s=r.a(q).aO$}}} +A.anx.prototype={} +A.lW.prototype={ +soe(a){var s +if(this.b===a)return +this.b=a +s=this.f +if(s!=null)s.a2x()}, +sz1(a){if(this.c)return +this.c=!0 +this.f.a2x()}, +gMl(){var s=this.e +return(s==null?null:s.a)!=null}, +a4(a,b){var s=this.e +if(s!=null)s.a4(0,b)}, +K(a,b){var s=this.e +if(s!=null)s.K(0,b)}, +eT(a){var s,r=this.f +r.toString +this.f=null +if(r.c==null)return +B.b.C(r.d,this) +s=$.cp +if(s.R8$===B.i2)s.p2$.push(new A.aM_(r)) +else r.a5B()}, +dL(){var s=this.r.gad() +if(s!=null)s.a5D()}, +m(){var s,r=this +r.w=!0 +if(!r.gMl()){s=r.e +if(s!=null){s.U$=$.aW() +s.M$=0}r.e=null}}, +j(a){var s=this,r=A.c5(s),q=s.b,p=s.c,o=s.w?"(DISPOSED)":"" +return"#"+r+"(opaque: "+q+"; maintainState: "+p+")"+o}, +$iaA:1} +A.aM_.prototype={ +$1(a){this.a.a5B()}, +$S:3} +A.rs.prototype={ +a0(){return new A.Sr()}} +A.Sr.prototype={ +aGx(a,b){var s,r,q,p=this.e +if(p==null)p=this.e=new A.qh(t.oM) +s=p.b===0?null:p.gY(0) +r=b.a +while(!0){q=s==null +if(!(!q&&s.a>r))break +s=s.gafR()}if(q){p.B9(p.c,b,!0) +p.c=b}else s.lz$.B9(s.lA$,b,!1)}, +gSN(){var s,r=this,q=r.f +if(q===$){s=r.Qt(!1) +r.f!==$&&A.aH() +r.f=s +q=s}return q}, +Qt(a){return new A.ig(this.av0(a),t.bm)}, +av0(a){var s=this +return function(){var r=a +var q=0,p=2,o,n,m,l +return function $async$Qt(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.gY(0):l.gW(0) +case 3:if(!(n!=null)){q=4 +break}m=n.d +n=r?n.gafR():n.gkV(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}}}}, +aj(){var s,r=this +r.aw() +r.a.c.e.sk(0,r) +s=r.c.yI(t.im) +s.toString +r.d=s}, +b1(a){var s,r=this +r.bb(a) +if(a.d!==r.a.d){s=r.c.yI(t.im) +s.toString +r.d=s}}, +m(){var s,r=this,q=r.a.c.e +if(q!=null)q.sk(0,null) +q=r.a.c +if(q.w){s=q.e +if(s!=null){s.U$=$.aW() +s.M$=0}q.e=null}r.e=null +r.ar()}, +F(a){var s=this.a,r=s.e,q=this.d +q===$&&A.b() +return new A.yU(r,new A.zy(q,this,s.c.a.$1(a),null),null)}, +a5D(){this.J(new A.bar())}} +A.bar.prototype={ +$0(){}, +$S:0} +A.xS.prototype={ +a0(){return new A.CF(A.a([],t.wi),null,null)}} +A.CF.prototype={ +aj(){this.aw() +this.aek(0,this.a.c)}, +Sc(a,b){if(a!=null)return B.b.dV(this.d,a) +return this.d.length}, +WN(a,b,c){b.f=this +this.J(new A.aM4(this,c,null,b))}, +vd(a,b){return this.WN(0,b,null)}, +aek(a,b){var s,r=b.length +if(r===0)return +for(s=0;s"),s=new A.e5(s,r),s=new A.ci(s,s.gt(0),r.i("ci")),r=r.i("aN.E"),q=!0,p=0;s.u();){o=s.d +if(o==null)o=r.a(o) +if(q){++p +m.push(new A.rs(o,n,!0,o.r)) +o=o.b +q=!o}else if(o.c)m.push(new A.rs(o,n,!1,o.r))}s=t.MV +return new A.U5(m.length-p,n.a.d,A.a8(new A.e5(m,s),!1,s.i("aN.E")),null)}} +A.aM4.prototype={ +$0(){var s=this,r=s.a +B.b.rF(r.d,r.Sc(s.b,s.c),s.d)}, +$S:0} +A.aM3.prototype={ +$0(){var s=this,r=s.a +B.b.DM(r.d,r.Sc(s.b,s.c),s.d)}, +$S:0} +A.aM5.prototype={ +$0(){var s,r,q=this,p=q.a,o=p.d +B.b.V(o) +s=q.b +B.b.G(o,s) +r=q.c +r.Nh(s) +B.b.DM(o,p.Sc(q.d,q.e),r)}, +$S:0} +A.aM2.prototype={ +$0(){}, +$S:0} +A.aM1.prototype={ +$0(){}, +$S:0} +A.U5.prototype={ +cp(a){return new A.alB(A.dD(t.R),this,B.aA)}, +b6(a){var s=a.au(t.I) +s.toString +s=new A.vE(s.w,this.e,this.f,A.aK(),0,null,null,new A.bk(),A.aK()) +s.b5() +s.G(0,null) +return s}, +b9(a,b){var s=this.e +if(b.a9!==s){b.a9=s +if(!b.aQ)b.wx()}s=a.au(t.I) +s.toString +b.scr(s.w) +s=this.f +if(s!==b.aC){b.aC=s +b.aU() +b.bM()}}} +A.alB.prototype={ +gag(){return t.im.a(A.kW.prototype.gag.call(this))}, +mg(a,b){var s,r +this.a_m(a,b) +s=a.b +s.toString +t.i9.a(s) +r=this.e +r.toString +s.at=t.KJ.a(t.f4.a(r).c[b.b]).c}, +mk(a,b,c){this.a_n(a,b,c)}} +A.zz.prototype={ +ht(a){if(!(a.b instanceof A.fM))a.b=new A.fM(null,null,B.j)}, +iw(a){var s,r,q,p,o,n +for(s=this.tH(),s=s.gav(s),r=t.d,q=null;s.u();){p=s.gI(s) +o=p.b +o.toString +r.a(o) +n=p.my(a) +o=o.a +q=A.Ac(q,n==null?null:n+o.b)}return q}, +hS(a,b){var s,r=a.b +r.toString +t.d.a(r) +s=this.gY9().gSK() +if(!r.gvi()){a.df(b,!0) +r.a=B.j}else A.bvr(a,r,this.gv(0),s)}, +dU(a,b){var s,r,q,p=this.Q4(),o=p.gav(p) +p=t.d +s=!1 +while(!0){if(!(!s&&o.u()))break +r=o.gI(o) +q=r.b +q.toString +s=a.m0(new A.bcb(r),p.a(q).a,b)}return s}, +aT(a,b){var s,r,q,p,o,n +for(s=this.tH(),s=s.gav(s),r=t.d,q=b.a,p=b.b;s.u();){o=s.gI(s) +n=o.b +n.toString +n=r.a(n).a +a.fa(o,new A.z(n.a+q,n.b+p))}}} +A.bcb.prototype={ +$2(a,b){return this.a.dT(a,b)}, +$S:24} +A.G4.prototype={ +ahD(a){var s=this.at +if(s==null)s=null +else{s=s.e +s=s==null?null:s.a.gSN().az(0,a)}return s}} +A.vE.prototype={ +gY9(){return this}, +ht(a){if(!(a.b instanceof A.G4))a.b=new A.G4(null,null,B.j)}, +aI(a){var s,r,q,p,o +this.aqf(a) +s=this.am$ +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 +o=p==null?null:new A.lp(p.a.gSN().a())}if(o!=null)for(;o.u();)o.b.aI(a) +s=q.aO$}}, +aB(a){var s,r,q +this.aqg(0) +s=this.am$ +for(r=t.i9;s!=null;){q=s.b +q.toString +r.a(q) +q.ahD(A.bWH()) +s=q.aO$}}, +j8(){return this.bZ(this.gXY())}, +gSK(){var s=this.A +return s==null?this.A=B.a2.Z(this.X):s}, +scr(a){var s=this +if(s.X===a)return +s.X=a +s.A=null +if(!s.aQ)s.wx()}, +Pu(a){var s=this +s.aQ=!0 +s.lp(a) +s.aU() +s.aQ=!1 +a.E.ae()}, +T0(a){var s=this +s.aQ=!0 +s.rh(a) +s.aU() +s.aQ=!1}, +ae(){if(!this.aQ)this.wx()}, +gwY(){var s,r,q,p,o=this +if(o.a9===A.aD.prototype.gxR.call(o))return null +s=A.aD.prototype.gaTt.call(o,0) +for(r=o.a9,q=t.d;r>0;--r){p=s.b +p.toString +s=q.a(p).aO$}return s}, +bU(a){return A.ye(this.gwY(),new A.bcf(a))}, +bQ(a){return A.ye(this.gwY(),new A.bcd(a))}, +bT(a){return A.ye(this.gwY(),new A.bce(a))}, +bP(a){return A.ye(this.gwY(),new A.bcc(a))}, +fH(a,b){var s,r,q,p,o=a.a,n=a.b,m=A.M(1/0,o,n),l=a.c,k=a.d,j=A.M(1/0,l,k) +if(isFinite(m)&&isFinite(j))s=new A.R(A.M(1/0,o,n),A.M(1/0,l,k)) +else{o=this.R7() +s=o.aM(B.af,a,o.gdD())}r=A.ta(s) +q=this.gSK() +for(o=new A.lp(this.tH().a()),p=null;o.u();)p=A.Ac(p,A.bxG(o.b,s,r,q,b)) +return p}, +ds(a){var s=a.a,r=a.b,q=A.M(1/0,s,r),p=a.c,o=a.d,n=A.M(1/0,p,o) +if(isFinite(q)&&isFinite(n))return new A.R(A.M(1/0,s,r),A.M(1/0,p,o)) +s=this.R7() +return s.aM(B.af,a,s.gdD())}, +tH(){return new A.ig(this.au4(),t.bm)}, +au4(){var s=this +return function(){var r=0,q=1,p,o,n,m,l,k +return function $async$tH(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:k=s.gwY() +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 +l=m==null?null:new A.lp(m.a.gSN().a())}r=l!=null?5:6 +break +case 5:case 7:if(!l.u()){r=8 +break}r=9 +return a.b=l.b,1 +case 9:r=7 +break +case 8:case 6:k=n.aO$ +r=2 +break +case 3:return 0 +case 1:return a.c=p,3}}}}, +Q4(){return new A.ig(this.au3(),t.bm)}, +au3(){var s=this +return function(){var r=0,q=1,p,o,n,m,l,k,j,i,h +return function $async$Q4(a,b,c){if(b===1){p=c +r=q}while(true)switch(r){case 0:i=s.a9===A.aD.prototype.gxR.call(s)?null:s.dJ$ +h=s.dl$-s.a9 +o=t.i9 +case 2:if(!(i!=null)){r=3 +break}n=i.b +n.toString +o.a(n) +m=n.at +l=null +if(!(m==null)){m=m.e +if(!(m==null)){m=m.a +k=m.r +if(k===$){j=m.Qt(!0) +m.r!==$&&A.aH() +m.r=j +k=j}m=new A.lp(k.a()) +l=m}}r=l!=null?4:5 +break +case 4:case 6:if(!l.u()){r=7 +break}r=8 +return a.b=l.b,1 +case 8:r=6 +break +case 7:case 5:r=9 +return a.b=i,1 +case 9:--h +i=h<=0?null:n.du$ +r=2 +break +case 3:return 0 +case 1:return a.c=p,3}}}}, +gks(){return!1}, +ck(){var s,r,q=this,p=t.k,o=p.a(A.G.prototype.gah.call(q)),n=A.M(1/0,o.a,o.b) +o=A.M(1/0,o.c,o.d) +if(isFinite(n)&&isFinite(o)){p=p.a(A.G.prototype.gah.call(q)) +q.id=new A.R(A.M(1/0,p.a,p.b),A.M(1/0,p.c,p.d)) +s=null}else{s=q.R7() +q.hS(s,p.a(A.G.prototype.gah.call(q))) +q.id=s.gv(0)}r=A.ta(q.gv(0)) +for(p=new A.lp(q.tH().a());p.u();){o=p.b +if(o!==s)q.hS(o,r)}}, +R7(){var s,r,q,p=this,o=p.a9===A.aD.prototype.gxR.call(p)?null:p.dJ$ +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.gvi())return o +o=r.du$}throw A.d(A.wU(A.a([A.pS("Overlay was given infinite constraints and cannot be sized by a suitable child."),A.c3("The constraints given to the overlay ("+p.gah().j(0)+") would result in an illegal infinite size ("+p.gah().gaON().j(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.a_W("Try wrapping the Overlay in a SizedBox to give it a finite size or use an OverlayEntry with canSizeOverlay set to true.")],t.E)))}, +aT(a,b){var s,r,q=this,p=q.M +if(q.aC!==B.h){s=q.cx +s===$&&A.b() +r=q.gv(0) +p.sb0(0,a.og(s,b,new A.I(0,0,0+r.a,0+r.b),A.zz.prototype.ghV.call(q),q.aC,p.a))}else{p.sb0(0,null) +q.aoX(a,b)}}, +m(){this.M.sb0(0,null) +this.h0()}, +bZ(a){var s,r,q=this.am$ +for(s=t.i9;q!=null;){a.$1(q) +r=q.b +r.toString +s.a(r) +r.ahD(a) +q=r.aO$}}, +iL(a){var s,r,q=this.gwY() +for(s=t.i9;q!=null;){a.$1(q) +r=q.b +r.toString +q=s.a(r).aO$}}, +r8(a){var s +switch(this.aC.a){case 0:return null +case 1:case 2:case 3:s=this.gv(0) +return new A.I(0,0,0+s.a,0+s.b)}}} +A.bcf.prototype={ +$1(a){return a.aM(B.bh,this.a,a.gcF())}, +$S:59} +A.bcd.prototype={ +$1(a){return a.aM(B.aM,this.a,a.gcb())}, +$S:59} +A.bce.prototype={ +$1(a){return a.aM(B.bi,this.a,a.gcE())}, +$S:59} +A.bcc.prototype={ +$1(a){return a.aM(B.bC,this.a,a.gcM())}, +$S:59} +A.aM0.prototype={ +j(a){return"OverlayPortalController"+(this.a!=null?"":" DETACHED")}} +A.LS.prototype={ +a0(){return new A.ahN()}} +A.ahN.prototype={ +ayG(a,b){var s,r,q=this,p=q.f,o=A.boq("marker",new A.bas(q,!1)) +if(p!=null)if(q.e){s=o.jR() +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.vy(a,o.jR().r,o.jR().f)}, +aj(){this.aw() +this.a7X(this.a.c)}, +a7X(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}, +c1(){this.ea() +this.e=!0}, +b1(a){var s,r,q=this +q.bb(a) +if(!q.e)q.a.toString +s=a.c +r=q.a.c +if(s!==r){s.a=null +q.a7X(r)}}, +m(){this.a.c.a=null +this.f=null +this.ar()}, +wg(a,b){this.J(new A.bau(this,b)) +this.f=null}, +v9(){this.J(new A.bat(this)) +this.f=null}, +F(a){var s,r,q=this,p=null,o=q.d +if(o==null)return new A.Fu(p,q.a.e,p,p) +q.a.toString +s=q.ayG(o,!1) +r=q.a +return new A.Fu(new A.aeu(new A.fi(r.d,p),p),r.e,s,p)}} +A.bas.prototype={ +$0(){var s=this.a.c +s.toString +return A.bQP(s,this.b)}, +$S:579} +A.bau.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.bat.prototype={ +$0(){this.a.d=null}, +$S:0} +A.vy.prototype={ +a0z(a){var s,r=this +r.d=a +r.b.aGx(0,r) +s=r.c +s.aU() +s.o9() +s.bM()}, +a6W(a){var s,r=this +r.d=null +s=r.b.e +if(s!=null)s.C(0,r) +s=r.c +s.aU() +s.o9() +s.bM()}, +j(a){var s=A.c5(this) +return"_OverlayEntryLocation["+s+"] "}} +A.zy.prototype={ +dY(a){return a.f!==this.f||a.r!==this.r}} +A.Fu.prototype={ +cp(a){return new A.ahM(this,B.aA)}, +b6(a){var s=new A.SU(null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}} +A.ahM.prototype={ +gag(){return t.SN.a(A.bP.prototype.gag.call(this))}, +hs(a,b){var s,r=this +r.tC(a,b) +s=r.e +s.toString +t.eU.a(s) +r.p2=r.fN(r.p2,s.d,null) +r.p1=r.fN(r.p1,s.c,s.e)}, +cg(a,b){var s=this +s.qn(0,b) +s.p2=s.fN(s.p2,b.d,null) +s.p1=s.fN(s.p1,b.c,b.e)}, +lD(a){this.p2=null +this.mH(a)}, +bZ(a){var s=this.p2,r=this.p1 +if(s!=null)a.$1(s) +if(r!=null)a.$1(r)}, +c0(){var s,r,q +this.Ae() +s=this.p1 +if(s!=null){r=t.Kp.a(s.gag()) +if(r!=null){q=s.c +q.toString +t.Vl.a(q) +q.c.Pu(r) +q.d=r}}}, +fn(){var s,r,q=this.p1 +if(q!=null){s=t.Kp.a(q.gag()) +if(s!=null){r=q.c +r.toString +t.Vl.a(r) +r.c.T0(s) +r.d=null}}this.a_P()}, +mg(a,b){var s=t.SN +if(b!=null){s=s.a(A.bP.prototype.gag.call(this)) +t.Lj.a(a) +s.E=a +b.a0z(a) +b.c.Pu(a)}else s.a(A.bP.prototype.gag.call(this)).sbz(a)}, +mk(a,b,c){var s=b.c,r=c.c +if(s!==r){s.T0(a) +r.Pu(a)}if(b.b!==c.b||b.a!==c.a){b.a6W(a) +c.a0z(a)}}, +nj(a,b){if(b==null){t.SN.a(A.bP.prototype.gag.call(this)).sbz(null) +return}t.Lj.a(a) +b.a6W(a) +b.c.T0(a) +t.SN.a(A.bP.prototype.gag.call(this)).E=null}} +A.aeu.prototype={ +b6(a){var s,r=a.yI(t.SN) +r.toString +s=new A.vD(r,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return r.E=s}, +b9(a,b){}} +A.vD.prototype={ +tH(){var s=this.H$ +return s==null?B.SS:A.bJG(1,new A.bbS(s),t.x)}, +Q4(){return this.tH()}, +gY9(){var s=this.d +return s instanceof A.vE?s:A.V(A.mP(A.c(s)+" of "+this.j(0)+" is not a _RenderTheater"))}, +j8(){this.E.ol(this) +this.a_S()}, +gks(){return!0}, +ae(){this.af=!0 +this.wx()}, +fH(a,b){var s=this.H$ +if(s==null)return null +return A.bxG(s,new A.R(A.M(1/0,a.a,a.b),A.M(1/0,a.c,a.d)),a,this.gY9().gSK(),b)}, +aWu(){var s,r=t.IJ.a(this.d) +if(r==null||this.y==null)return +s=t.k.a(A.G.prototype.gah.call(r)) +this.Pd(A.ta(new A.R(A.M(1/0,s.a,s.b),A.M(1/0,s.c,s.d))),!1)}, +df(a,b){var s,r=this,q=r.af||!t.k.a(A.G.prototype.gah.call(r)).l(0,a) +r.aZ=!0 +r.Pd(a,b) +r.af=r.aZ=!1 +if(q){s=r.d +s.toString +t.im.a(s).LN(new A.bbT(r),t.k)}}, +j4(a){return this.df(a,!1)}, +zb(){var s=t.k.a(A.G.prototype.gah.call(this)) +this.id=new A.R(A.M(1/0,s.a,s.b),A.M(1/0,s.c,s.d))}, +ck(){var s,r=this +if(r.aZ){r.af=!1 +return}s=r.H$ +if(s==null){r.af=!1 +return}r.hS(s,t.k.a(A.G.prototype.gah.call(r))) +r.af=!1}, +er(a,b){var s,r=a.b +r.toString +s=t.r.a(r).a +b.bs(0,s.a,s.b)}} +A.bbS.prototype={ +$1(a){return this.a}, +$S:580} +A.bbT.prototype={ +$1(a){var s=this.a +s.af=!0 +s.wx()}, +$S:581} +A.SU.prototype={ +j8(){this.a_S() +var s=this.E +if(s!=null&&s.y!=null)this.ol(s)}, +ck(){this.qo() +var s=this.E +if(s!=null)s.aWu()}, +iL(a){var s +this.tB(a) +s=this.E +if(s!=null)a.$1(s)}} +A.ahO.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.anr.prototype={} +A.ans.prototype={} +A.Va.prototype={ +aI(a){var s,r,q +this.eD(a) +s=this.am$ +for(r=t.d;s!=null;){s.aI(a) +q=s.b +q.toString +s=r.a(q).aO$}}, +aB(a){var s,r,q +this.eE(0) +s=this.am$ +for(r=t.d;s!=null;){s.aB(0) +q=s.b +q.toString +s=r.a(q).aO$}}} +A.anA.prototype={} +A.JH.prototype={ +a0(){var s=t.y +return new A.RB(A.C([!1,!0,!0,!0],s,s),null,null)}, +ob(a){return A.Gs().$1(a)}} +A.RB.prototype={ +aj(){var s,r,q=this +q.aw() +s=q.a +r=s.f +q.d=A.bxl(A.c_(s.e),r,q) +r=q.a +s=r.f +s=A.bxl(A.c_(r.e),s,q) +q.e=s +r=q.d +r.toString +q.f=new A.zp(A.a([r,s],t.Eo))}, +b1(a){var s,r=this +r.bb(a) +if(!a.f.l(0,r.a.f)||A.c_(a.e)!==A.c_(r.a.e)){s=r.d +s.toString +s.saG(0,r.a.f) +s=r.d +s.toString +s.saaR(A.c_(r.a.e)) +s=r.e +s.toString +s.saG(0,r.a.f) +s=r.e +s.toString +s.saaR(A.c_(r.a.e))}}, +SM(a){var s,r,q,p,o,n,m,l,k,j,i,h=this +if(!h.a.ob(a))return!1 +s=a.a +r=s.e +if(A.c_(r)!==A.c_(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.n7){s=a.e +if(s<0)n=q +else if(s>0)n=o +else n=null +m=n===q +l=new A.uc(m,0) +q=h.c +q.fS(l) +q=h.w +q.n(0,m,l.c) +q=q.h(0,m) +q.toString +if(q)n.d=0 +q=h.w.h(0,m) +q.toString +if(q){q=a.f +if(q!==0){s=n.c +if(s!=null)s.S(0) +n.c=null +k=A.M(Math.abs(q),100,1e4) +s=n.r +if(n.a===B.nY)r=0.3 +else{r=n.w +r===$&&A.b() +q=r.a +q=r.b.al(0,q.gk(q)) +r=q}s.a=r +r.toString +s.b=A.M(k*0.00006,r,0.5) +r=n.x +s=n.y +s===$&&A.b() +q=s.a +r.a=s.b.al(0,q.gk(q)) +r.b=Math.min(0.025+75e-8*k*k,1) +r=n.b +r===$&&A.b() +r.e=A.dA(0,B.d.aa(0.15+k*0.02),0) +r.n5(0,0) +n.at=0.5 +n.a=B.aA4}else{q=a.d +if(q!=null){p=a.b.gag() +p.toString +t.x.a(p) +j=p.gv(0) +i=p.he(q.d) +switch(A.c_(r).a){case 0:n.toString +r=j.b +n.afY(0,Math.abs(s),j.a,A.M(i.b,0,r),r) +break +case 1:n.toString +r=j.a +n.afY(0,Math.abs(s),j.b,A.M(i.a,0,r),r) +break}}}}}else{if(!(a instanceof A.lc&&a.d!=null))s=a instanceof A.jA&&a.d!=null +else s=!0 +if(s){if(q.a===B.nZ)q.u5(B.j1) +s=h.e +if(s.a===B.nZ)s.u5(B.j1)}}h.r=A.K(a) +return!1}, +m(){this.d.m() +this.e.m() +this.aq_()}, +F(a){var s=this,r=null,q=s.a,p=s.d,o=s.e,n=q.e,m=s.f +return new A.ea(s.gSL(),new A.lY(A.fB(new A.lY(q.w,r),new A.afT(p,o,n,m),r,r,B.V),r),r,t.WA)}} +A.F7.prototype={ +D(){return"_GlowState."+this.b}} +A.RA.prototype={ +saG(a,b){if(this.ay.l(0,b))return +this.ay=b +this.T()}, +saaR(a){if(this.ch===a)return +this.ch=a +this.T()}, +m(){var s=this,r=s.b +r===$&&A.b() +r.m() +r=s.f +r===$&&A.b() +r.m() +r=s.z +r===$&&A.b() +r.w.dI$.C(0,r) +r.a_W() +r=s.c +if(r!=null)r.S(0) +s.dN()}, +afY(a,b,c,d,e){var s,r,q,p=this,o=p.c +if(o!=null)o.S(0) +p.ax=p.ax+b/200 +o=p.r +s=p.w +s===$&&A.b() +r=s.b +s=s.a +o.a=r.al(0,s.gk(s)) +o.b=Math.min(r.al(0,s.gk(s))+b/c*0.8,0.5) +q=Math.min(c,e*0.20096189432249995) +s=p.x +r=p.y +r===$&&A.b() +o=r.b +r=r.a +s.a=o.al(0,r.gk(r)) +s.b=Math.max(1-1/(0.7*Math.sqrt(p.ax*q)),A.iE(o.al(0,r.gk(r)))) +r=d/e +p.as=r +if(r!==p.at){o=p.z +o===$&&A.b() +if(!o.gaWh())o.mF(0)}else{o=p.z +o===$&&A.b() +o.f_(0) +p.Q=null}o=p.b +o===$&&A.b() +o.e=B.hb +if(p.a!==B.nZ){o.n5(0,0) +p.a=B.nZ}else{o=o.r +if(!(o!=null&&o.a!=null))p.T()}p.c=A.bZ(B.hb,new A.b58(p))}, +Q0(a){var s=this +if(a!==B.am)return +switch(s.a.a){case 1:s.u5(B.j1) +break +case 3:s.a=B.nY +s.ax=0 +break +case 2:case 0:break}}, +u5(a){var s,r,q=this,p=q.a +if(p===B.PU||p===B.nY)return +p=q.c +if(p!=null)p.S(0) +q.c=null +p=q.r +s=q.w +s===$&&A.b() +r=s.a +p.a=s.b.al(0,r.gk(r)) +p.b=0 +p=q.x +r=q.y +r===$&&A.b() +s=r.a +p.a=r.b.al(0,s.gk(s)) +p.b=0 +p=q.b +p===$&&A.b() +p.e=a +p.n5(0,0) +q.a=B.PU}, +aLR(a){var s,r=this,q=r.Q +if(q!=null){q=q.a +s=r.as +r.at=s-(s-r.at)*Math.pow(2,-(a.a-q)/$.bD2().a) +r.T()}if(A.VB(r.as,r.at,0.001)){q=r.z +q===$&&A.b() +q.f_(0) +r.Q=null}else r.Q=a}, +aT(a,b){var s,r,q,p,o,n,m,l,k,j=this,i=j.w +i===$&&A.b() +s=i.a +if(J.e(i.b.al(0,s.gk(s)),0))return +s=b.a +r=b.b +q=s>r?r/s:1 +p=s*3/2 +o=Math.min(r,s*0.20096189432249995) +r=j.y +r===$&&A.b() +n=r.a +n=r.b.al(0,n.gk(n)) +r=j.at +m=$.ap().br() +l=j.ay +k=i.a +m.saG(0,A.Y(B.d.aa(255*i.b.al(0,k.gk(k))),l.gk(l)>>>16&255,l.gk(l)>>>8&255,l.gk(l)&255)) +a.en(0) +a.bs(0,0,j.d+j.e) +a.i2(0,1,n*q) +a.nN(new A.I(0,0,0+s,0+o)) +a.k_(new A.z(s/2*(0.5+r),o-p),p,m) +a.el(0)}, +j(a){return"_GlowController(color: "+this.ay.j(0)+", axis: "+this.ch.b+")"}} +A.b58.prototype={ +$0(){return this.a.u5(B.dN)}, +$S:0} +A.afT.prototype={ +a6l(a,b,c,d,e){var s +if(c==null)return +switch(A.rM(d,e).a){case 0:c.aT(a,b) +break +case 2:a.en(0) +a.bs(0,0,b.b) +a.i2(0,1,-1) +c.aT(a,b) +a.el(0) +break +case 3:a.en(0) +a.rY(0,1.5707963267948966) +a.i2(0,1,-1) +c.aT(a,new A.R(b.b,b.a)) +a.el(0) +break +case 1:a.en(0) +s=b.a +a.bs(0,s,0) +a.rY(0,1.5707963267948966) +c.aT(a,new A.R(b.b,s)) +a.el(0) +break}}, +aT(a,b){var s=this,r=s.d +s.a6l(a,b,s.b,r,B.xC) +s.a6l(a,b,s.c,r,B.lB)}, +ff(a){return a.b!=this.b||a.c!=this.c}, +j(a){return"_GlowingOverscrollIndicatorPainter("+A.c(this.b)+", "+A.c(this.c)+")"}} +A.akQ.prototype={ +D(){return"_StretchDirection."+this.b}} +A.Oq.prototype={ +a0(){return new A.TO(null,null)}, +ob(a){return A.Gs().$1(a)}} +A.TO.prototype={ +gue(){var s,r,q,p,o,n=this,m=null,l=n.d +if(l===$){s=t.Y +r=new A.b0(0,0,s) +q=new A.TN(r,B.uk,B.uj,$.aW()) +p=A.c2(m,m,m,m,n) +p.ct() +o=p.ec$ +o.b=!0 +o.a.push(q.gQ_()) +q.a!==$&&A.d1() +q.a=p +p=A.cl(B.fX,p,m) +p.a.a4(0,q.geS()) +q.c!==$&&A.d1() +q.c=p +t.m.a(p) +q.b!==$&&A.d1() +q.b=new A.bf(p,r,s.i("bf")) +n.d!==$&&A.aH() +n.d=q +l=q}return l}, +SM(a){var s,r,q,p,o,n,m,l,k=this +if(!k.a.ob(a))return!1 +s=a.a +if(A.c_(s.e)!==A.c_(k.a.c))return!1 +if(a instanceof A.n7){k.f=a +J.ah(k.e) +r=a.e +q=new A.uc(r<0,0) +p=k.c +p.fS(q) +k.w=q.c +if(k.w){r=k.r+=r +p=a.f +if(p!==0){s=k.gue() +r=k.r +o=A.M(Math.abs(p),1,1e4) +p=s.d +n=s.b +n===$&&A.b() +m=n.a +p.a=n.b.al(0,m.gk(m)) +p.b=Math.min(0.016+1.01/o,1) +p=s.a +p===$&&A.b() +p.e=A.dA(0,B.d.aa(Math.max(o*0.02,50)),0) +p.n5(0,0) +s.e=B.aAX +s.r=r>0?B.uj:B.Q8}else if(a.d!=null){s=s.d +s.toString +l=A.M(Math.abs(r)/s,0,1) +k.gue().aZJ(0,l,k.r)}}}else if(a instanceof A.lc||a instanceof A.jA){k.r=0 +s=k.gue() +if(s.e===B.ul)s.u5(B.px)}k.e=a +return!1}, +ay8(a){var s +switch(a.a){case 0:s=this.a.c +break +case 1:s=A.bzR(this.a.c) +break +default:s=null}switch(s.a){case 0:s=B.Qg +break +case 2:s=B.Qf +break +case 3:s=B.kv +break +case 1:s=B.oi +break +default:s=null}return s}, +m(){this.gue().m() +this.aqr()}, +F(a){var s={},r=A.cr(a,B.fO,t.l).w +s.a=null +return new A.ea(this.gSL(),A.lw(this.gue(),new A.be7(s,this,r.a),null),null,t.WA)}} +A.be7.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l=this,k=l.b,j=k.gue().b +j===$&&A.b() +s=j.a +s=j.b.al(0,s.gk(s)) +r=1 +q=1 +switch(A.c_(k.a.c).a){case 0:r=1+s +l.a.a=l.c.a +break +case 1:q=1+s +l.a.a=l.c.b +break}p=k.ay8(k.gue().r) +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.C7(r,q,1) +s=s===0 +n=s?null:B.eU +k=k.a +m=A.a9J(p,k.f,n,j,!0) +return A.Xq(m,!s&&o!==l.a.a?k.e:B.h,null)}, +$S:582} +A.FZ.prototype={ +D(){return"_StretchState."+this.b}} +A.TN.prototype={ +gk(a){var s,r=this.b +r===$&&A.b() +s=r.a +return r.b.al(0,s.gk(s))}, +aZJ(a,b,c){var s,r,q,p=this,o=c>0?B.uj:B.Q8 +if(p.r!==o&&p.e===B.um)return +p.r=o +p.f=b +s=p.d +r=p.b +r===$&&A.b() +q=r.a +s.a=r.b.al(0,q.gk(q)) +q=p.f +s.b=0.016*q+0.016*(1-Math.exp(-q*8.237217661997105)) +q=p.a +q===$&&A.b() +q.e=B.px +if(p.e!==B.ul){q.n5(0,0) +p.e=B.ul}else{s=q.r +if(!(s!=null&&s.a!=null))p.T()}}, +Q0(a){var s=this +if(a!==B.am)return +switch(s.e.a){case 1:s.u5(B.px) +break +case 3:s.e=B.uk +s.f=0 +break +case 2:case 0:break}}, +u5(a){var s,r,q=this,p=q.e +if(p===B.um||p===B.uk)return +p=q.d +s=q.b +s===$&&A.b() +r=s.a +p.a=s.b.al(0,r.gk(r)) +p.b=0 +p=q.a +p===$&&A.b() +p.e=a +p.n5(0,0) +q.e=B.um}, +m(){var s=this.a +s===$&&A.b() +s.m() +s=this.c +s===$&&A.b() +s.m() +this.dN()}, +j(a){return"_StretchController()"}} +A.uc.prototype={ +h6(a){this.aoI(a) +a.push("side: "+(this.a?"leading edge":"trailing edge"))}} +A.Su.prototype={ +h6(a){var s,r +this.Pa(a) +s=this.j2$ +r=s===0?"local":"remote" +a.push("depth: "+s+" ("+r+")")}} +A.UX.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.Vh.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.TK.prototype={ +gbC(a){return this.a.length!==0}, +l(a,b){if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +return b instanceof A.TK&&A.d7(b.a,this.a)}, +gB(a){return A.cj(this.a)}, +j(a){return"StorageEntryIdentifier("+B.b.bJ(this.a,":")+")"}} +A.ud.prototype={ +a0F(a){var s=A.a([],t.g8) +if(A.buP(a,s))a.mw(new A.aMb(s)) +return s}, +ai_(a,b){var s,r=this +if(r.a==null)r.a=A.w(t.K,t.z) +s=r.a0F(a) +if(s.length!==0)r.a.n(0,new A.TK(s),b)}, +agb(a){var s +if(this.a==null)return null +s=this.a0F(a) +return s.length!==0?this.a.h(0,new A.TK(s)):null}} +A.aMb.prototype={ +$1(a){return A.buP(a,this.a)}, +$S:37} +A.CH.prototype={ +F(a){return this.c}} +A.a5q.prototype={ +UD(a,b,c){var s=t.gQ.a(B.b.gd_(this.f)) +if(s.U!=null){s.U=a +return A.c7(null,t.H)}return s.kD(s.w0(a),b,c)}, +o5(a){var s=t.gQ.a(B.b.gd_(this.f)) +if(s.U!=null){s.U=a +return}s.hH(s.w0(a))}, +ac8(a,b,c){var s=null,r=$.aW() +r=new A.vz(this.as,this.ax,B.jQ,a,b,!0,s,new A.cS(!1,r),r) +r.a0d(b,s,!0,c,a) +r.a0e(b,s,s,!0,c,a) +return r}, +aI(a){this.anQ(a) +t.gQ.a(a).sF_(this.ax)}} +A.xV.prototype={} +A.vz.prototype={ +Df(a,b,c,d,e,f){return this.ao_(a,b,c,d,e,null)}, +sF_(a){var s,r=this +if(r.ac===a)return +s=r.gpW(0) +r.ac=a +if(s!=null)r.Wj(r.w0(s))}, +gHR(){var s=this.ax +s.toString +return Math.max(0,s*(this.ac-1)/2)}, +Fo(a,b){var s=Math.max(0,a-this.gHR())/(b*this.ac),r=B.d.agT(s) +if(Math.abs(s-r)<1e-10)return r +return s}, +w0(a){var s=this.ax +s.toString +return a*s*this.ac+this.gHR()}, +gpW(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.U +if(s==null){p.toString +s=q.z +s.toString +r=q.Q +r.toString +r=A.M(p,s,r) +s=q.ax +s.toString +s=q.Fo(r,s) +p=s}else p=s}return p}, +Zh(){var s,r,q=this,p=q.w,o=p.c +o.toString +o=A.aMc(o) +if(o!=null){p=p.c +p.toString +s=q.U +if(s==null){s=q.at +s.toString +r=q.ax +r.toString +r=q.Fo(s,r) +s=r}o.ai_(p,s)}}, +agL(){var s,r +if(this.at==null){s=this.w +r=s.c +r.toString +r=A.aMc(r) +if(r==null)s=null +else{s=s.c +s.toString +s=r.agb(s)}A.boN(s) +if(s!=null)this.M=s}}, +Zg(){var s,r=this,q=r.U +if(q==null){q=r.at +q.toString +s=r.ax +s.toString +s=r.Fo(q,s) +q=s}r.w.r.sk(0,q) +q=$.h2.uW$ +q===$&&A.b() +q.adr()}, +agK(a,b){if(b)this.M=a +else this.hH(this.w0(a))}, +qZ(a){var s,r,q,p,o=this,n=o.ax +n=n!=null?n:null +if(a===n)return!0 +o.anW(a) +s=o.at +s=s!=null?s:null +if(s==null)r=o.M +else if(n===0){q=o.U +q.toString +r=q}else{n.toString +r=o.Fo(s,n)}p=o.w0(r) +o.U=a===0?r:null +if(p!==s){o.at=p +return!1}return!0}, +qU(a){var s +this.ao0(a) +if(!(a instanceof A.vz))return +s=a.U +if(s!=null)this.U=s}, +qY(a,b){var s=a+this.gHR() +return this.anU(s,Math.max(s,b-this.gHR()))}, +ix(){var s,r,q,p,o,n=this,m=null,l=m,k=n.z +if(k!=null&&n.Q!=null){k.toString +l=k}k=m +if(n.z!=null&&n.Q!=null){k=n.Q +k.toString}s=n.at +s=s!=null?s:m +r=n.ax +r=r!=null?r:m +q=n.w +p=q.a.c +o=n.ac +q=q.f +q===$&&A.b() +return new A.xV(o,l,k,s,r,p,q)}, +$ixV:1} +A.Rw.prototype={ +nJ(a){return new A.Rw(!1,this.mV(a))}, +gpg(){return this.b}} +A.CG.prototype={ +nJ(a){return new A.CG(this.mV(a))}, +ayN(a){var s,r +if(a instanceof A.vz){s=a.gpW(0) +s.toString +return s}s=a.at +s.toString +r=a.ax +r.toString +return s/r}, +ayQ(a,b){var s +if(a instanceof A.vz)return a.w0(b) +s=a.ax +s.toString +return b*s}, +y3(a,b){var s,r,q,p,o,n=this +if(b<=0){s=a.at +s.toString +r=a.z +r.toString +r=s<=r +s=r}else s=!1 +if(!s)if(b>=0){s=a.at +s.toString +r=a.Q +r.toString +r=s>=r +s=r}else s=!1 +else s=!0 +if(s)return n.anS(a,b) +q=n.EL(a) +p=n.ayN(a) +s=q.c +if(b<-s)p-=0.5 +else if(b>s)p+=0.5 +o=n.ayQ(a,B.d.agT(p)) +s=a.at +s.toString +if(o!==s){s=n.gwk() +r=a.at +r.toString +return new A.uF(o,A.FT(s,r-o,b),q)}return null}, +gpg(){return!1}} +A.LV.prototype={ +a0(){return new A.ahQ()}} +A.ahQ.prototype={ +aj(){var s,r=this +r.aw() +r.a52() +s=r.e +s===$&&A.b() +r.d=s.as}, +m(){if(this.a.r==null){var s=this.e +s===$&&A.b() +s.m()}this.ar()}, +a52(){var s=this.a.r +this.e=s==null?A.xU(0,1):s}, +b1(a){var s=this,r=a.r +if(r!=s.a.r){if(r==null){r=s.e +r===$&&A.b() +r.m()}s.a52()}s.bb(a)}, +ayr(a){var s,r +switch(this.a.e.a){case 0:s=a.au(t.I) +s.toString +r=A.bk5(s.w) +this.a.toString +return r +case 1:return B.ah}}, +F(a){var s,r,q,p=this,o=null,n=p.ayr(a),m=p.a.w +m=new A.CG(B.Jw.mV(m)) +m=new A.Rw(!1,o).mV(m) +s=p.a.Q +r=p.e +r===$&&A.b() +q=A.uD(a).abQ(!1) +return new A.ea(new A.bav(p),A.aQn(n,B.w,r,s,!1,B.aU,o,new A.Rw(!1,m),o,q,o,new A.baw(p,n)),o,t.WA)}} +A.bav.prototype={ +$1(a){var s,r,q,p,o +if(a.j2$===0&&this.a.a.y!=null&&a instanceof A.jA){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.M(r,q,p)) +q=s.d +q.toString +o=B.d.aa(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:50} +A.baw.prototype={ +$2(a,b){var s=this.a,r=s.a,q=r.as +s=s.e +s===$&&A.b() +return A.bx0(0,this.b,0,B.TX,null,q,b,A.a([new A.a8r(s.ax,!0,r.z,null)],t.p))}, +$S:583} +A.oC.prototype={ +goe(){return!0}, +gpj(){return!1}, +UX(a){return a instanceof A.oC}, +ab9(a){return a instanceof A.oC}} +A.aIt.prototype={} +A.aMI.prototype={} +A.a_1.prototype={ +St(a){return this.aEX(a)}, +aEX(a){var s=0,r=A.n(t.H),q,p=this,o,n,m +var $async$St=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:n=A.ds(a.b) +m=p.a +if(!m.N(0,n)){s=1 +break}m=m.h(0,n) +m.toString +o=a.a +if(o==="Menu.selectedCallback"){m.gb25().$0() +m.gaYv() +o=$.aw.aR$.d.c.e +o.toString +A.bFh(o,m.gaYv(),t.vz)}else if(o==="Menu.opened")m.gb24(m).$0() +else if(o==="Menu.closed")m.gb23(m).$0() +case 1:return A.l(q,r)}}) +return A.m($async$St,r)}} +A.CS.prototype={ +dY(a){return this.f!=a.f}} +A.Mv.prototype={ +a0(){return new A.SC()}} +A.SC.prototype={ +aj(){this.aw() +this.a.c.a4(0,this.gSZ())}, +b1(a){var s,r,q=this +q.bb(a) +s=a.c +if(q.a.c!==s){r=q.gSZ() +s.K(0,r) +q.a.c.a4(0,r)}}, +m(){var s=this +s.a.c.K(0,s.gSZ()) +s.a2q() +s.ar()}, +aI4(){if(this.a.c.gcN())this.ass() +else this.a2q()}, +ass(){if(this.d)return +$.aoU().a.push(this.ga4y()) +this.d=!0}, +a2q(){if(!this.d)return +B.b.C($.aoU().a,this.ga4y()) +this.d=!1}, +aBz(a){this.a.f.$1(a)}, +F(a){var s=null,r=this.a,q=r.c +return A.tA(!1,s,r.r,s,s,s,q,!0,s,s,s,s,s,s)}} +A.uA.prototype={ +a0(){return new A.ajF(null,A.w(t.yb,t.M),null,!0,null)}} +A.ajF.prototype={ +ghJ(){return this.a.d}, +nk(a,b){}, +F(a){return A.a9V(this.dd$,this.a.c)}} +A.Pk.prototype={ +dY(a){return a.f!=this.f}} +A.Nc.prototype={ +a0(){return new A.T6()}} +A.T6.prototype={ +c1(){var s,r=this +r.ea() +s=r.c +s.toString +r.r=A.yi(s) +r.Sl() +if(r.d==null){r.a.toString +r.d=!1}}, +b1(a){this.bb(a) +this.Sl()}, +ga5l(){this.a.toString +return!1}, +Sl(){var s,r=this +if(r.ga5l()&&!r.w){r.w=!0;++$.oK.fr$ +s=$.h2.uW$ +s===$&&A.b() +s.gb_X().ak(new A.bcA(r),t.P)}}, +aIE(){var s,r=this +r.e=!1 +r.f=null +s=$.h2.uW$ +s===$&&A.b() +s.K(0,r.gT5()) +r.Sl()}, +m(){if(this.e){var s=$.h2.uW$ +s===$&&A.b() +s.K(0,this.gT5())}this.ar()}, +F(a){var s,r,q=this,p=q.d +p.toString +if(p&&q.ga5l())return B.ax +p=q.r +if(p==null)p=q.f +s=q.a +r=s.d +return A.a9V(p,new A.uA(s.c,r,null))}} +A.bcA.prototype={ +$1(a){var s,r=this.a +r.w=!1 +if(r.c!=null){s=$.h2.uW$ +s===$&&A.b() +s.a4(0,r.gT5()) +r.J(new A.bcz(r,a))}$.oK.aaw()}, +$S:584} +A.bcz.prototype={ +$0(){var s=this.a +s.f=this.b +s.e=!0 +s.d=!1}, +$S:0} +A.hm.prototype={ +gyq(a){return!0}, +m(){var s=this,r=s.c +if(r!=null)r.aMt(s) +s.dN() +s.a=!0}} +A.ne.prototype={ +VG(a){}, +vC(a,b){var s,r,q=this,p=q.dd$ +p=p==null?null:J.cO(p.gp7(),b) +s=p===!0 +r=s?a.yQ(J.i(q.dd$.gp7(),b)):a.Ki() +if(a.b==null){a.b=b +a.c=q +p=new A.aPm(q,a) +a.a4(0,p) +q.kL$.n(0,a,p)}a.aeh(r) +if(!s&&a.gyq(a)&&q.dd$!=null)q.U6(a)}, +yd(){var s,r,q=this +if(q.kM$!=null){s=q.dd$ +s=s==null?null:s.e +s=s==q.ghJ()||q.gvI()}else s=!0 +if(s)return +r=q.dd$ +if(q.uh(q.kM$,!1))if(r!=null)r.m()}, +gvI(){var s,r,q=this +if(q.iz$)return!0 +if(q.ghJ()==null)return!1 +s=q.c +s.toString +r=A.yi(s) +if(r!=q.kM$){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}, +uh(a,b){var s,r,q=this +if(q.ghJ()==null||a==null)return q.a7R(null,b) +if(b||q.dd$==null){s=q.ghJ() +s.toString +return q.a7R(a.aPr(s,q),b)}s=q.dd$ +s.toString +r=q.ghJ() +r.toString +s.b_s(r) +r=q.dd$ +r.toString +a.lp(r) +return!1}, +a7R(a,b){var s,r=this,q=r.dd$ +if(a==q)return!1 +r.dd$=a +if(!b){if(a!=null){s=r.kL$ +new A.aR(s,A.y(s).i("aR<1>")).az(0,r.gaMP())}r.VG(q)}return!0}, +U6(a){var s,r=a.gyq(a),q=this.dd$ +if(r){if(q!=null){r=a.b +r.toString +s=a.zr() +if(!J.e(J.i(q.gp7(),r),s)||!J.cO(q.gp7(),r)){J.bT(q.gp7(),r,s) +q.xb()}}}else if(q!=null){r=a.b +r.toString +q.b_k(0,r,t.K)}}, +aMt(a){var s=this.kL$.C(0,a) +s.toString +a.K(0,s) +a.c=a.b=null}} +A.aPm.prototype={ +$0(){var s=this.a +if(s.dd$==null)return +s.U6(this.b)}, +$S:0} +A.bha.prototype={ +$2(a,b){if(!a.a)a.K(0,b)}, +$S:83} +A.anB.prototype={ +b1(a){this.bb(a) +this.yd()}, +c1(){var s,r,q,p,o=this +o.ea() +s=o.dd$ +r=o.gvI() +q=o.c +q.toString +q=A.yi(q) +o.kM$=q +p=o.uh(q,r) +if(r){o.nk(s,o.iz$) +o.iz$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.kL$.az(0,new A.bha()) +s=r.dd$ +if(s!=null)s.m() +r.dd$=null +r.ar()}} +A.dG.prototype={ +gk(a){var s=this.y +return s==null?A.y(this).i("dG.T").a(s):s}, +sk(a,b){var s=this.y +if(b==null?s!=null:b!==s){this.y=b +this.VJ(s)}}, +aeh(a){this.y=a}} +A.nJ.prototype={ +Ki(){return this.cy}, +VJ(a){this.T()}, +yQ(a){return A.y(this).i("nJ.T").a(a)}, +zr(){var s=this.y +return s==null?A.y(this).i("dG.T").a(s):s}} +A.T4.prototype={ +yQ(a){return this.ap_(a)}, +zr(){var s=this.ap0() +s.toString +return s}} +A.N8.prototype={} +A.N7.prototype={} +A.bhb.prototype={ +$2(a,b){if(!a.a)a.K(0,b)}, +$S:83} +A.uC.prototype={ +gl0(){return this.b}} +A.a7u.prototype={ +a0(){return new A.FJ(new A.ajC($.aW()),null,A.w(t.yb,t.M),null,!0,null,this.$ti.i("FJ<1>"))}} +A.aPt.prototype={ +D(){return"RouteInformationReportingType."+this.b}} +A.FJ.prototype={ +ghJ(){return this.a.r}, +aj(){var s,r=this +r.aw() +s=r.a.c +if(s!=null)s.a4(0,r.gHE()) +r.a.f.aNM(r.gRB()) +r.a.e.a4(0,r.gRO())}, +nk(a,b){var s,r,q=this,p=q.f +q.vC(p,"route") +s=p.y +r=s==null +if((r?A.y(p).i("dG.T").a(s):s)!=null){p=r?A.y(p).i("dG.T").a(s):s +p.toString +q.Io(p,new A.bcR(q))}else{p=q.a.c +if(p!=null)q.Io(p.a,new A.bcS(q))}}, +aJw(){var s=this +if(s.w||s.a.c==null)return +s.w=!0 +$.cp.p2$.push(s.gaIM())}, +aIN(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.y(s).i("dG.T").a(r):r)!=null){s=q?A.y(s).i("dG.T").a(r):r +s.toString +r=p.a.c +r.toString +q=p.e +q.toString +r.b2e(s,q)}p.e=B.Nr}, +aJ9(){this.a.e.gb1S() +this.a.toString +return null}, +I7(){var s=this +s.f.sk(0,s.aJ9()) +if(s.e==null)s.e=B.Nr +s.aJw()}, +c1(){var s,r,q,p=this +p.r=!0 +p.aqj() +s=p.f +r=s.y +q=r==null?A.y(s).i("dG.T").a(r):r +if(q==null){s=p.a.c +q=s==null?null:s.a}if(q!=null&&p.r)p.Io(q,new A.bcQ(p)) +p.r=!1 +p.I7()}, +b1(a){var s,r,q,p=this +p.aqk(a) +s=p.a.c +r=a.c +p.d=new A.O() +if(s!=r){s=r==null +if(!s)r.K(0,p.gHE()) +q=p.a.c +if(q!=null)q.a4(0,p.gHE()) +s=s?null:r.a +r=p.a.c +if(s!=(r==null?null:r.a))p.a4A()}s=a.f +if(p.a.f!==s){r=p.gRB() +s.b_n(r) +p.a.f.aNM(r)}p.a.toString +s=p.gRO() +a.e.K(0,s) +p.a.e.a4(0,s) +p.I7()}, +m(){var s,r=this +r.f.m() +s=r.a.c +if(s!=null)s.K(0,r.gHE()) +r.a.f.b_n(r.gRB()) +r.a.e.K(0,r.gRO()) +r.d=null +r.aql()}, +Io(a,b){var s,r,q=this +q.r=!1 +q.d=new A.O() +s=q.a.d +s.toString +r=q.c +r.toString +s.b26(a,r).ak(q.aHU(q.d,b),t.H)}, +aHU(a,b){return new A.bcO(this,a,b)}, +a4A(){var s=this +s.r=!0 +s.Io(s.a.c.a,new A.bcL(s))}, +azn(){var s=this +s.d=new A.O() +return s.a.e.b28().ak(s.aBD(s.d),t.y)}, +aBD(a){return new A.bcM(this,a)}, +a7h(){this.J(new A.bcP()) +this.I7() +return new A.cv(null,t.b9)}, +aBE(){this.J(new A.bcN()) +this.I7()}, +F(a){var s=this.dd$,r=this.a,q=r.c,p=r.f,o=r.d +r=r.e +return A.a9V(s,new A.ajQ(q,p,o,r,this,new A.fi(r.gaaZ(),null),null))}} +A.bcR.prototype={ +$0(){return this.a.a.e.gb1v()}, +$S(){return this.a.$ti.i("a2<~>(1)()")}} +A.bcS.prototype={ +$0(){return this.a.a.e.gb1s()}, +$S(){return this.a.$ti.i("a2<~>(1)()")}} +A.bcQ.prototype={ +$0(){return this.a.a.e.gakG()}, +$S(){return this.a.$ti.i("a2<~>(1)()")}} +A.bcO.prototype={ +$1(a){var s=0,r=A.n(t.H),q,p=this,o,n +var $async$$1=A.j(function(b,c){if(b===1)return A.k(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.f(p.c.$0().$1(a),$async$$1) +case 3:if(o.d==n)o.a7h() +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S(){return this.a.$ti.i("a2<~>(1)")}} +A.bcL.prototype={ +$0(){return this.a.a.e.gakG()}, +$S(){return this.a.$ti.i("a2<~>(1)()")}} +A.bcM.prototype={ +$1(a){var s=this.a +if(this.b!=s.d)return new A.cv(!0,t.d9) +s.a7h() +return new A.cv(a,t.d9)}, +$S:586} +A.bcP.prototype={ +$0(){}, +$S:0} +A.bcN.prototype={ +$0(){}, +$S:0} +A.ajQ.prototype={ +dY(a){return!0}} +A.ajC.prototype={ +Ki(){return null}, +VJ(a){this.T()}, +yQ(a){var s,r +if(a==null)return null +t.Dn.a(a) +s=J.cF(a) +r=A.dk(s.gW(a)) +if(r==null)return null +return new A.uC(A.f1(r),s.gY(a))}, +zr(){var s,r=this,q=r.y,p=q==null +if((p?A.y(r).i("dG.T").a(q):q)==null)q=null +else{q=(p?A.y(r).i("dG.T").a(q):q).gl0().j(0) +s=r.y +q=[q,(s==null?A.y(r).i("dG.T").a(s):s).c]}return q}} +A.Gf.prototype={ +b1(a){this.bb(a) +this.yd()}, +c1(){var s,r,q,p,o=this +o.ea() +s=o.dd$ +r=o.gvI() +q=o.c +q.toString +q=A.yi(q) +o.kM$=q +p=o.uh(q,r) +if(r){o.nk(s,o.iz$) +o.iz$=!1}if(p)if(s!=null)s.m()}, +m(){var s,r=this +r.kL$.az(0,new A.bhb()) +s=r.dd$ +if(s!=null)s.m() +r.dd$=null +r.ar()}} +A.CE.prototype={ +pK(){B.b.G(this.f,this.ac4()) +this.anM()}, +gWh(){return!0}, +r9(a){var s=this +s.anJ(a) +if(s.gWh())s.a.Wg(s) +return!0}, +m(){var s,r,q +for(s=this.f,r=s.length,q=0;q"))}} +A.mk.prototype={ +aj(){var s,r,q=this +q.aw() +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.zp(s)}, +b1(a){this.bb(a) +this.a9k()}, +c1(){this.ea() +this.d=null +this.a9k()}, +a9k(){var s,r,q=this.a.c,p=q.id +p=p!=null?p:q.a.a.Q +s=this.f +s.fr=p +r=q.gkb() +if(r)this.a.c.a.a.toString +if(r){r=q.a.y.gjr() +if(r!=null)r.FN(s)}}, +axR(){this.J(new A.ba_(this))}, +m(){this.f.m() +this.r.m() +this.ar()}, +ga80(){var s=this.a.c.k2 +if((s==null?null:s.gbi(0))!==B.ci){s=this.a.c.a +s=s==null?null:s.cx.a +s=s===!0}else s=!0 +return s}, +F(a){var s,r,q,p,o,n=this,m=null +n.f.sjf(!n.a.c.gkb()) +s=n.a.c +r=s.gkb() +q=n.a.c +if(!q.gWD()){q=q.mb$ +q=q!=null&&q.length!==0}else q=!0 +p=n.a.c +p=p.gWD()||p.rl$>0 +o=n.a.c +return A.lw(s.c,new A.ba3(n),new A.Sc(r,q,p,s,new A.qp(o.k1,new A.CH(new A.fi(new A.ba4(n),m),o.p3,m),m),m))}} +A.ba_.prototype={ +$0(){this.a.d=null}, +$S:0} +A.ba3.prototype={ +$2(a,b){var s=this.a.a.c.c.a +b.toString +return new A.uA(b,s,null)}, +$S:588} +A.ba4.prototype={ +$1(a){var s,r=A.C([B.tG,new A.aeL(a,new A.bV(A.a([],t.ot),t.wS))],t.u,t.od),q=this.a,p=q.e +p===$&&A.b() +s=q.d +if(s==null)s=q.d=new A.lY(new A.fi(new A.ba1(q),null),q.a.c.p2) +return A.rY(r,A.bno(A.bxj(new A.lY(new A.tX(new A.ba2(q),s,p,null),null),q.f,!0),q.r))}, +$S:589} +A.ba2.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.cS(!1,$.aW()) +return p.xN(a,o,s,new A.tX(new A.ba0(q),b,r,null))}, +$S:54} +A.ba0.prototype={ +$2(a,b){var s=this.a,r=s.ga80() +s.f.snK(!r) +return A.ok(b,r,null)}, +$S:590} +A.ba1.prototype={ +$1(a){var s,r=this.a.a.c,q=r.k2 +q.toString +s=r.k3 +s.toString +return r.xM(a,q,s)}, +$S:13} +A.eR.prototype={ +J(a){var s,r=this.p1 +if(r.gad()!=null){r=r.gad() +if(r.a.c.gkb()){s=!r.ga80() +if(s)r.a.c.a.a.toString}else s=!1 +if(s){s=r.a.c.a.y.gjr() +if(s!=null)s.FN(r.f)}r.J(a)}else a.$0()}, +xN(a,b,c,d){return d}, +pK(){var s=this +s.aok() +s.k2=A.qF(A.h5.prototype.geh.call(s,0)) +s.k3=A.qF(A.h5.prototype.gZn.call(s))}, +ra(){var s=this,r=s.p1,q=r.gad()!=null +if(q)s.a.a.toString +if(q){q=s.a.y.gjr() +if(q!=null)q.FN(r.gad().f)}return s.aoj()}, +D3(){var s=this,r=s.p1,q=r.gad()!=null +if(q)s.a.a.toString +if(q){q=s.a.y.gjr() +if(q!=null)q.FN(r.gad().f)}s.aof()}, +gOz(){return!0}, +gaZq(){var s,r=this +if(r.gWV())return!1 +s=r.mb$ +if(s!=null&&s.length!==0)return!1 +s=r.grT() +if(s===B.i0)return!1 +if(r.k2.gbi(0)!==B.am)return!1 +if(r.k3.gbi(0)!==B.a9)return!1 +if(r.a.cx.a)return!1 +return!0}, +sEd(a){var s,r=this +if(r.k1===a)return +r.J(new A.aIS(r,a)) +s=r.k2 +s.toString +s.sbt(0,r.k1?B.iy:A.h5.prototype.geh.call(r,0)) +s=r.k3 +s.toString +s.sbt(0,r.k1?B.cT:A.h5.prototype.gZn.call(r)) +r.ur()}, +lM(){var s=0,r=A.n(t.oj),q,p=this,o,n,m +var $async$lM=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p.p1.gad() +o=A.a8(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.gpi() +r=A.Y(0,r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255) +q=l.gpi() +p=t.IC.i("fO") +t.m.a(s) +o=l.gpj() +n=l.guq() +l.gOz() +m=A.br_(!0,k,new A.bf(s,new A.fO(new A.hZ(B.bk),new A.fU(r,q),p),p.i("bf")),o,n,k)}else{s=l.gpj() +r=l.guq() +l.gOz() +m=A.aIN(!0,k,k,s,k,r,k)}return m}, +atb(a){var s=this,r=null,q=s.R8 +if(q==null)q=s.R8=new A.ck(A.cJ(r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,B.ajI,r,r,r,r,r,r),!1,!1,!1,!1,new A.Fq(s,s.p1,A.y(s).i("Fq")),r) +return q}, +ac4(){var s,r=this,q=A.n6(r.gat8(),!1,!1,!1) +r.p4=q +r.gz1() +s=A.n6(r.gata(),r.goe(),!0,!1) +r.RG=s +return A.a([q,s],t.wi)}, +j(a){return"ModalRoute("+this.b.j(0)+", animation: "+A.c(this.ax)+")"}} +A.aIS.prototype={ +$0(){this.a.k1=this.b}, +$S:0} +A.aIQ.prototype={ +$1(a){var s=this.a.p2,r=$.aw.aR$.x.h(0,s) +r=r==null?null:r.e!=null +if(r!==!0)return +s=$.aw.aR$.x.h(0,s) +if(s!=null)s.fS(this.b)}, +$S:3} +A.aIR.prototype={ +$0(){}, +$S:0} +A.Mh.prototype={ +goe(){return!1}, +gz1(){return!0}} +A.D_.prototype={ +gpj(){return this.d4}, +guq(){return this.cm}, +gpi(){return this.d9}, +gvQ(a){return this.ft}, +xM(a,b,c){var s=null,r=this.bH.$3(a,b,c) +return new A.ck(A.cJ(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,s,s,!0,s,s,s,s,s,s,s,s,s),!1,!0,!1,!1,new A.ID(this.hE,r,s),s)}, +xN(a,b,c,d){return this.fu.$4(a,b,c,d)}} +A.zr.prototype={ +lM(){var s=0,r=A.n(t.oj),q,p=this,o +var $async$lM=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:o=p.mb$ +if(o!=null&&o.length!==0){q=B.jO +s=1 +break}q=p.anO() +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$lM,r)}, +grT(){var s=this.mb$ +if(s!=null&&s.length!==0)return B.jO +return A.dj.prototype.grT.call(this)}, +r9(a){var s,r,q=this,p=q.mb$ +if(p!=null&&p.length!==0){s=p.pop() +s.b=null +s.b1G() +r=s.c&&--q.rl$===0 +if(q.mb$.length===0||r)q.ur() +return!1}q.aoh(a) +return!0}} +A.a7z.prototype={ +F(a){var s,r,q,p=this,o=A.cr(a,B.cQ,t.l).w.r,n=p.r,m=Math.max(o.a,n.a),l=p.d,k=l?o.b:0 +k=Math.max(k,n.b) +s=Math.max(o.c,n.c) +r=p.f +q=r?o.d:0 +return new A.be(new A.al(m,k,s,Math.max(q,n.d)),A.aI8(p.x,a,r,!0,!0,l),null)}} +A.a7O.prototype={ +agE(){}, +acG(a,b){if(b!=null)b.fS(new A.yu(null,a,b,0))}, +acH(a,b,c){b.fS(A.bnE(b,null,null,a,c))}, +KM(a,b,c){b.fS(new A.n7(null,c,0,a,b,0))}, +acF(a,b){b.fS(new A.lc(null,a,b,0))}, +Cl(){}, +m(){this.b=!0}, +j(a){return"#"+A.c5(this)}} +A.tE.prototype={ +Cl(){this.a.l3(0)}, +goE(){return!1}, +gnb(){return!1}, +gkl(){return 0}} +A.aBD.prototype={ +goE(){return!1}, +gnb(){return!1}, +gkl(){return 0}, +m(){this.c.$0() +this.Gs()}} +A.aQg.prototype={ +asb(a,b){var s,r,q=this +if(b==null)return a +if(a===0){s=!1 +if(q.d!=null)if(q.r==null){s=q.e +s=b.a-s.a>5e4}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.hs(a)}else return 0}}}, +cg(a,b){var s,r,q,p,o,n=this +n.x=b +s=b.c +s.toString +r=s===0 +if(!r)n.e=b.a +q=b.a +p=!1 +if(n.f)if(r)if(q!=null){r=n.e +r=q.a-r.a>2e4}else r=!0 +else r=p +else r=p +if(r)n.f=!1 +o=n.asb(s,q) +if(o===0)return +s=n.a +if(A.Gm(s.w.a.c))o=-o +s.Yx(o>0?B.rC:B.rD) +r=s.at +r.toString +s.Pj(r-s.r.UJ(s,o))}, +acZ(a,b){var s,r,q=this,p=b.b +p.toString +s=-p +if(A.Gm(q.a.w.a.c))s=-s +q.x=b +if(q.f){p=q.c +r=Math.abs(s)>Math.abs(p)*0.5 +if(J.hs(s)===J.hs(p)&&r)s+=p}q.a.l3(s)}, +m(){this.x=null +this.b.$0()}, +j(a){return"#"+A.c5(this)}} +A.awq.prototype={ +acG(a,b){var s=t.uL.a(this.c.x) +if(b!=null)b.fS(new A.yu(s,a,b,0))}, +acH(a,b,c){b.fS(A.bnE(b,null,t.zk.a(this.c.x),a,c))}, +KM(a,b,c){b.fS(new A.n7(t.zk.a(this.c.x),c,0,a,b,0))}, +acF(a,b){var s=this.c.x +b.fS(new A.lc(s instanceof A.iM?s:null,a,b,0))}, +goE(){var s=this.c +return(s==null?null:s.w)!==B.cc}, +gnb(){return!0}, +gkl(){return 0}, +m(){this.c=null +this.Gs()}, +j(a){return"#"+A.c5(this)+"("+A.c(this.c)+")"}} +A.WO.prototype={ +agE(){var s=this.a,r=this.c +r===$&&A.b() +s.l3(r.gkl())}, +Cl(){var s=this.a,r=this.c +r===$&&A.b() +s.l3(r.gkl())}, +Tn(){var s=this.c +s===$&&A.b() +s=s.x +s===$&&A.b() +if(!(Math.abs(this.a.Pj(s))<1e-10)){s=this.a +s.m1(new A.tE(s))}}, +Tl(){if(!this.b)this.a.l3(0)}, +KM(a,b,c){var s=this.c +s===$&&A.b() +b.fS(new A.n7(null,c,s.gkl(),a,b,0))}, +gnb(){return!0}, +gkl(){var s=this.c +s===$&&A.b() +return s.gkl()}, +m(){var s=this.c +s===$&&A.b() +s.m() +this.Gs()}, +j(a){var s=A.c5(this),r=this.c +r===$&&A.b() +return"#"+s+"("+r.j(0)+")"}, +goE(){return this.d}} +A.a_E.prototype={ +Tn(){var s=this.a,r=this.d +r===$&&A.b() +r=r.x +r===$&&A.b() +if(s.Pj(r)!==0){s=this.a +s.m1(new A.tE(s))}}, +Tl(){var s,r +if(!this.b){s=this.a +r=this.d +r===$&&A.b() +s.l3(r.gkl())}}, +KM(a,b,c){var s=this.d +s===$&&A.b() +b.fS(new A.n7(null,c,s.gkl(),a,b,0))}, +goE(){return!0}, +gnb(){return!0}, +gkl(){var s=this.d +s===$&&A.b() +return s.gkl()}, +m(){var s=this.c +s===$&&A.b() +s.d8(0) +s=this.d +s===$&&A.b() +s.m() +this.Gs()}, +j(a){var s=A.c5(this),r=this.d +r===$&&A.b() +return"#"+s+"("+r.j(0)+")"}} +A.Np.prototype={ +EA(a,b,c,d){var s,r=this +if(b.a==null){s=$.ix.py$ +s===$&&A.b() +s=s.N(0,c)}else s=!0 +if(s){r.b.EA(a,b,c,d) +return}s=r.a +if(s.gbN(0)==null)return +s=s.gbN(0) +s.toString +if(A.bNd(s)){$.cp.zT(new A.aQc(r,a,b,c,d)) +return}r.b.EA(a,b,c,d)}, +vn(a,b){return this.b.vn(a,b)}, +rJ(a,b){return this.b.rJ(a,b)}, +vq(a){return this.b.vq(a)}} +A.aQc.prototype={ +$1(a){var s=this +A.ff(new A.aQb(s.a,s.b,s.c,s.d,s.e))}, +$S:3} +A.aQb.prototype={ +$0(){var s=this +return s.a.EA(s.b,s.c,s.d,s.e)}, +$S:0} +A.a7P.prototype={ +r4(a,b,c,d,e,f,g){return new A.bh1(this,g!==!1,c!==!1,d,e,a,b,f)}, +abX(a,b){var s=null +return this.r4(s,s,a,s,s,s,b)}, +Vk(a,b,c,d){return this.r4(null,null,a,b,c,null,d)}, +abQ(a){var s=null +return this.r4(s,s,s,s,s,s,a)}, +mA(a){return A.bY()}, +gre(){return B.O7}, +th(a){switch(this.mA(a).a){case 4:case 2:return B.r9 +case 3:case 5:case 0:case 1:return B.hQ}}, +gEo(){return A.cI([B.dq,B.dR],t.G)}, +JQ(a,b,c){var s=null +switch(this.mA(a).a){case 3:case 4:case 5:return A.bMA(b,c.b,B.bl,s,s,A.Gs(),B.F,s,s,s,s,B.j1,s) +case 0:case 1:case 2:return b}}, +JP(a,b,c){switch(this.mA(a).a){case 2:case 3:case 4:case 5:return b +case 0:case 1:return A.btk(c.a,b,B.n)}}, +O3(a){switch(this.mA(a).a){case 2:return new A.aQd() +case 4:return new A.aQe() +case 0:case 1:case 3:case 5:return new A.aQf()}}, +w2(a){switch(this.mA(a).a){case 2:return B.RH +case 4:return B.RI +case 0:case 1:case 3:case 5:return B.U5}}, +OM(a){return!1}, +j(a){return"ScrollBehavior"}} +A.aQd.prototype={ +$1(a){return A.bJo(a.ge1(a))}, +$S:591} +A.aQe.prototype={ +$1(a){var s=a.ge1(a),r=t.av +return new A.C3(A.bO(20,null,!1,r),s,A.bO(20,null,!1,r))}, +$S:592} +A.aQf.prototype={ +$1(a){return new A.jL(a.ge1(a),A.bO(20,null,!1,t.av))}, +$S:273} +A.bh1.prototype={ +gre(){var s=this.f +return s==null?B.O7:s}, +gEo(){var s=this.w +return s==null?A.cI([B.dq,B.dR],t.G):s}, +th(a){var s=this.a.th(a) +return s}, +JP(a,b,c){if(this.c)return this.a.JP(a,b,c) +return b}, +JQ(a,b,c){if(this.b)return this.a.JQ(a,b,c) +return b}, +r4(a,b,c,d,e,f,g){var s=this,r=g==null?s.b:g,q=c==null?s.c:c,p=s.gre(),o=s.gEo(),n=d==null?s.d:d,m=e==null?s.e:e +return s.a.r4(p,s.r,q,n,m,o,r)}, +abX(a,b){var s=null +return this.r4(s,s,a,s,s,s,b)}, +Vk(a,b,c,d){return this.r4(null,null,a,b,c,null,d)}, +abQ(a){var s=null +return this.r4(s,s,s,s,s,s,a)}, +mA(a){var s=this.e +return s==null?this.a.mA(a):s}, +w2(a){var s=this.d +return s==null?this.a.w2(a):s}, +OM(a){var s=this,r=!0 +if(A.K(a.a)===A.K(s.a))if(a.b===s.b)if(a.c===s.c)if(A.VC(a.gre(),s.gre()))if(A.VC(a.gEo(),s.gEo()))if(a.d==s.d)r=a.e!=s.e +return r}, +O3(a){return this.a.O3(a)}, +j(a){return"_WrappedScrollBehavior"}} +A.Nq.prototype={ +dY(a){var s=this.f,r=a.f +if(A.K(s)===A.K(r))s=s!==r&&s.OM(r) +else s=!0 +return s}} +A.qP.prototype={ +kD(a,b,c){return this.aOf(a,b,c)}, +aOf(a,b,c){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$kD=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:n=A.a([],t.mo) +for(p=q.f,o=0;o#"+A.c5(this)+"("+B.b.bJ(r,", ")+")"}} +A.aRS.prototype={ +gyu(){return null}, +j(a){var s=A.a([],t.s) +this.h6(s) +return"#"+A.c5(this)+"("+B.b.bJ(s,", ")+")"}, +h6(a){var s,r,q +try{s=this.gyu() +if(s!=null)a.push("estimated child count: "+A.c(s))}catch(q){r=A.v(q) +a.push("estimated child count: EXCEPTION ("+J.ah(r).j(0)+")")}}} +A.FL.prototype={} +A.O3.prototype={ +adl(a){return null}, +UV(a,b){var s,r,q,p,o,n,m,l,k=null +if(b>=0)p=b>=this.b +else p=!0 +if(p)return k +s=null +try{s=this.a.$2(a,b)}catch(o){r=A.v(o) +q=A.aT(o) +n=new A.cM(r,q,"widgets library",A.c3("building"),k,!1) +A.e9(n) +s=A.Jb(n)}if(s==null)return k +if(s.a!=null){p=s.a +p.toString +m=new A.FL(p)}else m=k +p=s +s=new A.lY(p,k) +l=this.r.$2(s,b) +if(l!=null)s=new A.K0(l,s,k) +p=s +s=new A.Aa(new A.FN(p,k),k) +return new A.lP(s,m)}, +gyu(){return this.b}, +ZI(a){return!0}} +A.aRT.prototype={ +axA(a){var s,r,q,p=null,o=this.r +if(!o.N(0,a)){s=o.h(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.FL(r):o +s=new A.lY(s,o) +p=A.byM(s,b) +s=p!=null?new A.K0(p,s,o):s +return new A.lP(new A.Aa(new A.FN(s,o),o),q)}, +gyu(){return this.f.length}, +ZI(a){return this.f!==a.f}} +A.FN.prototype={ +a0(){return new A.Tq(null)}} +A.Tq.prototype={ +gtb(){return this.r}, +aWA(a){return new A.bd8(this,a)}, +Jd(a,b){var s,r=this +if(b){s=r.d;(s==null?r.d=A.bn(t.x9):s).q(0,a)}else{s=r.d +if(s!=null)s.C(0,a)}s=r.d +s=s==null?null:s.a!==0 +s=s===!0 +if(r.r!==s){r.r=s +r.t6()}}, +c1(){var s,r,q,p=this +p.ea() +s=p.c +s.toString +r=A.Nx(s) +s=p.f +if(s!=r){if(s!=null){q=p.e +if(q!=null)new A.aR(q,A.y(q).i("aR<1>")).az(0,s.gzh(s))}p.f=r +if(r!=null){s=p.e +if(s!=null)new A.aR(s,A.y(s).i("aR<1>")).az(0,r.git(r))}}}, +q(a,b){var s,r=this,q=r.aWA(b) +b.a4(0,q) +s=r.e;(s==null?r.e=A.w(t.x9,t.M):s).n(0,b,q) +r.f.q(0,b) +if(b.gk(b).c!==B.ey)r.Jd(b,!0)}, +C(a,b){var s=this.e +if(s==null)return +s=s.C(0,b) +s.toString +b.K(0,s) +this.f.C(0,b) +this.Jd(b,!1)}, +m(){var s,r,q=this,p=q.e +if(p!=null){for(p=A.js(p,p.r);p.u();){s=p.d +q.f.C(0,s) +r=q.e.h(0,s) +r.toString +s.K(0,r)}q.e=null}q.d=null +q.ar()}, +F(a){var s=this +s.Ad(a) +if(s.f==null)return s.a.c +return A.bvI(s.a.c,s)}} +A.bd8.prototype={ +$0(){var s=this.b,r=this.a +if(s.gk(s).c!==B.ey)r.Jd(s,!0) +else r.Jd(s,!1)}, +$S:0} +A.anG.prototype={ +aj(){this.aw() +if(this.r)this.tR()}, +fn(){var s=this.i6$ +if(s!=null){s.T() +s.dN() +this.i6$=null}this.oK()}} +A.ni.prototype={ +ix(){var s=this,r=null,q=s.gWF()?s.gkU():r,p=s.gWF()?s.gkT():r,o=s.gae_()?s.gfB():r,n=s.gae1()?s.gEZ():r,m=s.gkE(),l=s.gnR(s) +return new A.Jp(q,p,o,n,m,l)}, +gEh(){var s=this +return s.gfB()s.gkT()}, +gaaL(){var s=this +return s.gfB()===s.gkU()||s.gfB()===s.gkT()}, +guO(){var s=this +return s.gEZ()-A.M(s.gkU()-s.gfB(),0,s.gEZ())-A.M(s.gfB()-s.gkT(),0,s.gEZ())}} +A.Jp.prototype={ +gkU(){var s=this.a +s.toString +return s}, +gkT(){var s=this.b +s.toString +return s}, +gWF(){return this.a!=null&&this.b!=null}, +gfB(){var s=this.c +s.toString +return s}, +gae_(){return this.c!=null}, +gEZ(){var s=this.d +s.toString +return s}, +gae1(){return this.d!=null}, +j(a){var s=this +return"FixedScrollMetrics("+B.d.aF(Math.max(s.gfB()-s.gkU(),0),1)+"..["+B.d.aF(s.guO(),1)+"].."+B.d.aF(Math.max(s.gkT()-s.gfB(),0),1)+")"}, +gkE(){return this.e}, +gnR(a){return this.f}} +A.afz.prototype={} +A.jM.prototype={} +A.aac.prototype={ +afm(a){if(t.rS.b(a))++a.j2$ +return!1}} +A.jz.prototype={ +h6(a){this.api(a) +a.push(this.a.j(0))}} +A.yu.prototype={ +h6(a){var s +this.Am(a) +s=this.d +if(s!=null)a.push(s.j(0))}} +A.jA.prototype={ +h6(a){var s +this.Am(a) +a.push("scrollDelta: "+A.c(this.e)) +s=this.d +if(s!=null)a.push(s.j(0))}} +A.n7.prototype={ +h6(a){var s,r=this +r.Am(a) +a.push("overscroll: "+B.d.aF(r.e,1)) +a.push("velocity: "+B.d.aF(r.f,1)) +s=r.d +if(s!=null)a.push(s.j(0))}} +A.lc.prototype={ +h6(a){var s +this.Am(a) +s=this.d +if(s!=null)a.push(s.j(0))}} +A.a9Y.prototype={ +h6(a){this.Am(a) +a.push("direction: "+this.d.j(0))}} +A.Tf.prototype={ +h6(a){var s,r +this.Pa(a) +s=this.j2$ +r=s===0?"local":"remote" +a.push("depth: "+s+" ("+r+")")}} +A.Te.prototype={ +dY(a){return this.f!==a.f}} +A.rr.prototype={ +aWz(a,b){return this.a.$1(b)}} +A.Ns.prototype={ +a0(){return new A.a7S(new A.qh(t.z_))}} +A.a7S.prototype={ +K(a,b){var s,r,q=this.d +q.toString +q=A.bQe(q,q.$ti.c) +s=q.$ti.c +for(;q.u();){r=q.c +if(r==null)r=s.a(r) +if(J.e(r.a,b)){q=r.lz$ +q.toString +q.TV(A.y(r).i("iS.E").a(r)) +return}}}, +a5V(a){var s,r,q,p,o,n,m,l,k=this.d +if(k.b===0)return +p=A.a8(k,!0,t.Sx) +for(k=p.length,o=0;oMath.max(Math.abs(s.a),Math.abs(s.b))}return s.age(a,b,c)}, +Ck(a,b){var s=this.a +s=s==null?null:s.Ck(a,b) +return s==null?0:s}, +JA(a,b,c,d){var s=this.a +if(s==null){s=b.c +s.toString +return s}return s.JA(a,b,c,d)}, +y3(a,b){var s=this.a +return s==null?null:s.y3(a,b)}, +gwk(){var s=this.a +s=s==null?null:s.gwk() +return s==null?$.bCq():s}, +EL(a){var s=this.a +s=s==null?null:s.EL(a) +if(s==null){s=a.w.f +s===$&&A.b() +s=new A.Pb(1/s,1/(0.05*s))}return s}, +gXf(){var s=this.a +s=s==null?null:s.gXf() +return s==null?18:s}, +gMh(){var s=this.a +s=s==null?null:s.gMh() +return s==null?50:s}, +gE3(){var s=this.a +s=s==null?null:s.gE3() +return s==null?8000:s}, +V_(a){var s=this.a +s=s==null?null:s.V_(a) +return s==null?0:s}, +gVO(){var s=this.a +return s==null?null:s.gVO()}, +gpg(){return!0}, +gaax(){return!0}, +j(a){var s=this.a +if(s==null)return"ScrollPhysics" +return"ScrollPhysics -> "+s.j(0)}} +A.a6s.prototype={ +nJ(a){return new A.a6s(this.mV(a))}, +JA(a,b,c,d){var s,r,q,p,o,n,m=d===0,l=c.a +l.toString +s=b.a +s.toString +if(l===s){r=c.b +r.toString +q=b.b +q.toString +q=r===q +r=q}else r=!1 +p=r?!1:m +r=c.c +r.toString +q=b.c +q.toString +if(r!==q){q=!1 +if(isFinite(l)){o=c.b +o.toString +if(isFinite(o))if(isFinite(s)){q=b.b +q.toString +q=isFinite(q)}}if(q)m=!1 +p=!1}q=ro}else o=!0 +if(o)m=!1 +if(p){if(q&&s>l)return s-(l-r) +l=c.b +l.toString +if(r>l){q=b.b +q.toString +q=q0&&b<0))n=p>0&&b>0 +else n=!0 +s=a.ax +if(n){s.toString +m=this.adC((o-Math.abs(b))/s)}else{s.toString +m=this.adC(o/s)}l=J.hs(b) +if(n&&this.b===B.NA)return l*Math.abs(b) +return l*A.bFG(o,Math.abs(b),m)}, +Ck(a,b){return 0}, +y3(a,b){var s,r,q,p,o,n,m,l=this.EL(a) +if(Math.abs(b)>=l.c||a.gEh()){s=this.gwk() +r=a.at +r.toString +q=a.z +q.toString +p=a.Q +p.toString +switch(this.b.a){case 1:o=1400 +break +case 0:o=0 +break +default:o=null}n=new A.aqG(q,p,s,l) +if(rp){n.f=new A.uF(p,A.FT(s,r-p,b),B.dx) +n.r=-1/0}else{r=n.e=A.bIZ(0.135,r,b,o) +m=r.gLi() +if(b>0&&m>p){q=r.ah_(p) +n.r=q +n.f=new A.uF(p,A.FT(s,p-p,Math.min(r.j0(0,q),5000)),B.dx)}else if(b<0&&mr)q=r +else q=o +r=a.z +r.toString +if(s0){r=a.at +r.toString +p=a.Q +p.toString +p=r>=p +r=p}else r=!1 +if(r)return o +if(b<0){r=a.at +r.toString +p=a.z +p.toString +p=r<=p +r=p}else r=!1 +if(r)return o +r=a.at +r.toString +r=new A.as7(r,b,n) +p=$.bkg() +s=p*0.35*Math.pow(s/2223.8657884799995,1/(p-1)) +r.e=s +r.f=b*s/p +return r}} +A.Wa.prototype={ +nJ(a){return new A.Wa(this.mV(a))}, +tt(a){return!0}} +A.a4W.prototype={ +nJ(a){return new A.a4W(this.mV(a))}, +gaax(){return!1}, +gpg(){return!1}} +A.ys.prototype={ +D(){return"ScrollPositionAlignmentPolicy."+this.b}} +A.oM.prototype={ +a0d(a,b,c,d,e){if(d!=null)this.qU(d) +this.agL()}, +gkU(){var s=this.z +s.toString +return s}, +gkT(){var s=this.Q +s.toString +return s}, +gWF(){return this.z!=null&&this.Q!=null}, +gfB(){var s=this.at +s.toString +return s}, +gae_(){return this.at!=null}, +gEZ(){var s=this.ax +s.toString +return s}, +gae1(){return this.ax!=null}, +qU(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.K(a)!==A.K(s))s.fr.agE() +s.w.OJ(s.fr.goE()) +s.dy.sk(0,s.fr.gnb())}, +gnR(a){var s=this.w.f +s===$&&A.b() +return s}, +akH(a){var s,r,q,p=this,o=p.at +o.toString +if(a!==o){s=p.r.Ck(p,a) +o=p.at +o.toString +r=a-s +p.at=r +if(r!==o){if(p.gEh())p.w.OJ(!1) +p.Ub() +p.a_2() +r=p.at +r.toString +p.VH(r-o)}if(Math.abs(s)>1e-10){o=p.fr +o.toString +r=p.ix() +q=$.aw.aR$.x.h(0,p.w.Q) +q.toString +o.KM(r,q,s) +return s}}return 0}, +Vm(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.Ub() +s.a_2() +$.cp.p2$.push(new A.aQk(s))}, +Zh(){var s,r=this.w,q=r.c +q.toString +q=A.aMc(q) +if(q!=null){r=r.c +r.toString +s=this.at +s.toString +q.ai_(r,s)}}, +agL(){var s,r +if(this.at==null){s=this.w +r=s.c +r.toString +r=A.aMc(r) +if(r==null)s=null +else{s=s.c +s.toString +s=r.agb(s)}A.boN(s) +if(s!=null)this.at=s}}, +agK(a,b){if(b)this.at=a +else this.hH(a)}, +Zg(){var s=this.at +s.toString +this.w.r.sk(0,s) +s=$.h2.uW$ +s===$&&A.b() +s.adr()}, +qZ(a){if(this.ax!==a){this.ax=a +this.ch=!0}return!0}, +qY(a,b){var s,r,q,p,o=this +if(!A.VB(o.z,a,0.001)||!A.VB(o.Q,b,0.001)||o.ch||o.db!==A.c_(o.gkE())){o.z=a +o.Q=b +o.db=A.c_(o.gkE()) +s=o.ay?o.ix():null +o.ch=!1 +o.CW=!0 +if(o.ay){r=o.cx +r.toString +s.toString +r=!o.aQP(r,s)}else r=!1 +if(r)return!1 +o.ay=!0}if(o.CW){o.anV() +o.w.ako(o.r.tt(o)) +o.CW=!1}s=o.ix() +if(o.cx!=null){r=Math.max(s.gfB()-s.gkU(),0) +q=o.cx +p=!1 +if(r===Math.max(q.gfB()-q.gkU(),0))if(s.guO()===o.cx.guO()){r=Math.max(s.gkT()-s.gfB(),0) +q=o.cx +r=r===Math.max(q.gkT()-q.gfB(),0)&&s.e===o.cx.e}else r=p +else r=p +r=!r}else r=!0 +if(r){if(!o.cy){A.ff(o.gaRM()) +o.cy=!0}o.cx=o.ix()}return!0}, +aQP(a,b){var s=this,r=s.r.JA(s.fr.gnb(),b,a,s.fr.gkl()),q=s.at +q.toString +if(r!==q){s.at=r +return!1}return!0}, +Cl(){this.fr.Cl() +this.Ub()}, +Ub(){var s,r,q,p,o,n,m=this,l=m.w +switch(l.a.c.a){case 0:s=B.al1 +break +case 2:s=B.al6 +break +case 3:s=B.al2 +break +case 1:s=B.al8 +break +default:s=null}r=s.a +q=null +p=s.b +q=p +s=A.bn(t._S) +o=m.at +o.toString +n=m.z +n.toString +if(o>n)s.q(0,q) +o=m.at +o.toString +n=m.Q +n.toString +if(on)k=n +break +default:k=null}n=p.at +n.toString +if(k===n){s=1 +break}if(e.a===B.F.a){p.hH(k) +s=1 +break}q=p.kD(k,d,e) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Df,r)}, +Mm(a,b,c,d){var s,r=this.z +r.toString +s=this.Q +s.toString +b=A.M(b,r,s) +return this.aom(0,b,c,d)}, +m1(a){var s,r,q=this,p=q.fr +if(p!=null){s=p.goE() +r=q.fr.gnb() +if(r&&!a.gnb())q.VC() +q.fr.m()}else{r=!1 +s=!1}q.fr=a +if(s!==a.goE())q.w.OJ(q.fr.goE()) +q.dy.sk(0,q.fr.gnb()) +if(!r&&q.fr.gnb())q.VF()}, +VF(){var s=this.fr +s.toString +s.acG(this.ix(),$.aw.aR$.x.h(0,this.w.Q))}, +VH(a){var s,r,q=this.fr +q.toString +s=this.ix() +r=$.aw.aR$.x.h(0,this.w.Q) +r.toString +q.acH(s,r,a)}, +VC(){var s,r,q=this,p=q.fr +p.toString +s=q.ix() +r=$.aw.aR$.x.h(0,q.w.Q) +r.toString +p.acF(s,r) +q.Zg() +q.Zh()}, +aRN(){var s,r,q +this.cy=!1 +s=this.w.Q +if($.aw.aR$.x.h(0,s)!=null){r=this.ix() +q=$.aw.aR$.x.h(0,s) +q.toString +s=$.aw.aR$.x.h(0,s) +if(s!=null)s.fS(new A.yq(r,q,0))}}, +m(){var s=this,r=s.fr +if(r!=null)r.m() +s.fr=null +r=s.dy +r.U$=$.aW() +r.M$=0 +s.dN()}, +h6(a){var s,r,q=this +q.aol(a) +s=q.z +s=s==null?null:B.d.aF(s,1) +r=q.Q +r=r==null?null:B.d.aF(r,1) +a.push("range: "+A.c(s)+".."+A.c(r)) +r=q.ax +a.push("viewport: "+A.c(r==null?null:B.d.aF(r,1)))}} +A.aQk.prototype={ +$1(a){this.a.as=0}, +$S:3} +A.yq.prototype={ +aaJ(){return A.bnE(this.b,this.j2$,null,this.a,null)}, +h6(a){this.aph(a) +a.push(this.a.j(0))}} +A.Td.prototype={ +h6(a){var s,r +this.Pa(a) +s=this.j2$ +r=s===0?"local":"remote" +a.push("depth: "+s+" ("+r+")")}} +A.ajY.prototype={} +A.yt.prototype={ +a0e(a,b,c,d,e,f){var s=this +if(s.at==null&&c!=null)s.at=c +if(s.fr==null)s.m1(new A.tE(s))}, +gkE(){return this.w.a.c}, +qU(a){var s,r=this +r.anT(a) +r.fr.a=r +r.k4=a.k4 +s=a.ok +if(s!=null){r.ok=s +s.a=r +a.ok=null}}, +m1(a){var s,r=this +r.k3=0 +r.anX(a) +s=r.ok +if(s!=null)s.m() +r.ok=null +if(!r.fr.gnb())r.Yx(B.jQ)}, +l3(a){var s,r,q,p=this,o=p.r.y3(p,a) +if(o!=null){if(!p.gEh()){s=p.fr +s=s==null?null:s.goE() +s=s!==!1}else s=!1 +s=new A.WO(s,p) +r=A.bkP(null,0,p.w) +r.ct() +q=r.dR$ +q.b=!0 +q.a.push(s.gTm()) +r.UE(o).a.a.fC(s.gTk()) +s.c=r +p.m1(s)}else p.m1(new A.tE(p))}, +Yx(a){var s,r,q,p=this +if(p.k4===a)return +p.k4=a +s=p.ix() +r=p.w.Q +q=$.aw.aR$.x.h(0,r) +q.toString +r=$.aw.aR$.x.h(0,r) +if(r!=null)r.fS(new A.a9Y(a,s,q,0))}, +kD(a,b,c){var s,r,q,p=this,o=p.at +o.toString +if(A.VB(a,o,p.r.EL(p).a)){p.hH(a) +return A.c7(null,t.H)}o=p.at +o.toString +s=new A.a_E(p) +r=new A.aq(new A.a_($.ab,t.U),t.h) +s.c=r +o=A.bkP("DrivenScrollActivity",o,p.w) +o.ct() +q=o.dR$ +q.b=!0 +q.a.push(s.gTm()) +o.z=B.b5 +o.jP(a,b,c).a.a.fC(s.gTk()) +s.d!==$&&A.d1() +s.d=o +p.m1(s) +return r.a}, +hH(a){var s,r,q=this +q.m1(new A.tE(q)) +s=q.at +s.toString +if(s!==a){q.Wj(a) +q.VF() +r=q.at +r.toString +q.VH(r-s) +q.VC()}q.l3(0)}, +XJ(a){var s,r,q,p,o=this +if(a===0){o.l3(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.m1(new A.tE(o)) +o.Yx(-a>0?B.rC:B.rD) +s=o.at +s.toString +o.dy.sk(0,!0) +o.Wj(p) +o.VF() +r=o.at +r.toString +o.VH(r-s) +o.VC() +o.l3(0)}}, +LG(a){var s=this,r=s.fr.gkl(),q=new A.aBD(a,s) +s.m1(q) +s.k3=r +return q}, +acN(a,b){var s,r,q=this,p=q.r,o=p.V_(q.k3) +p=p.gVO() +s=p==null?null:0 +r=new A.aQg(q,b,o,p,a.a,o!==0,s,a.d,a) +q.m1(new A.awq(r,q)) +return q.ok=r}, +m(){var s=this.ok +if(s!=null)s.m() +this.ok=null +this.anZ()}} +A.aqG.prototype={ +Tz(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}, +i1(a,b){return this.Tz(b).i1(0,b-this.w)}, +j0(a,b){return this.Tz(b).j0(0,b-this.w)}, +pL(a){return this.Tz(a).pL(a-this.w)}, +j(a){return"BouncingScrollSimulation(leadingExtent: "+A.c(this.b)+", trailingExtent: "+A.c(this.c)+")"}} +A.as7.prototype={ +i1(a,b){var s,r=this.e +r===$&&A.b() +s=A.M(b/r,0,1) +r=this.f +r===$&&A.b() +return this.b+r*(1-Math.pow(1-s,$.bkg()))}, +j0(a,b){var s=this.e +s===$&&A.b() +return this.c*Math.pow(1-A.M(b/s,0,1),$.bkg()-1)}, +pL(a){var s=this.e +s===$&&A.b() +return a>=s}} +A.a7U.prototype={ +D(){return"ScrollViewKeyboardDismissBehavior."+this.b}} +A.a7T.prototype={ +aOZ(a,b,c,d){var s=this +if(s.x)return new A.a8b(c,b,s.ch,d,null) +return A.bx0(0,c,s.Q,B.v9,null,s.ch,b,d)}, +F(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=i.ab_(a),f=i.cy +if(f==null){s=A.de(a,h) +if(s!=null){r=s.r +q=r.abT(0,0) +p=r.aQA(0,0) +r=i.c===B.aw +f=r?p:q +g=A.C9(g,s.CD(r?q:p))}}o=A.a([f!=null?new A.a8x(f,g,h):g],t.p) +r=i.c +n=A.bzU(a,r,!1) +m=i.f +if(m==null)m=i.e==null&&A.bv2(a,r) +l=m?A.aN4(a):i.e +k=A.aQn(n,i.ch,l,i.at,!1,i.CW,h,i.r,i.ay,h,i.as,new A.aQl(i,n,o)) +j=m&&l!=null?A.bv1(k):k +if(i.ax===B.alt)return new A.ea(new A.aQm(a),j,h,t.kj) +else return j}} +A.aQl.prototype={ +$2(a,b){return this.a.aOZ(a,b,this.b,this.c)}, +$S:596} +A.aQm.prototype={ +$1(a){var s,r=A.Bn(this.a) +if(a.d!=null&&!r.go0()&&r.gcN()){s=$.aw.aR$.d.c +if(s!=null)s.jb()}return!1}, +$S:597} +A.X3.prototype={} +A.BX.prototype={ +ab_(a){return new A.a8w(this.ry,null)}} +A.aF0.prototype={ +$2(a,b){var s=B.e.cn(b,2) +if((b&1)===0)return this.a.$2(a,s) +return this.b.$2(a,s)}, +$S:598} +A.aF1.prototype={ +$2(a,b){return(b&1)===0?B.e.cn(b,2):null}, +$S:599} +A.JJ.prototype={ +ab_(a){return new A.a8t(this.R8,this.RG,null)}} +A.bd1.prototype={ +$2(a,b){if(!a.a)a.K(0,b)}, +$S:83} +A.Nt.prototype={ +a0(){var s=null,r=t.A +return new A.yv(new A.ajD($.aW()),new A.bG(s,r),new A.bG(s,t.hA),new A.bG(s,r),B.J1,s,A.w(t.yb,t.M),s,!0,s,s,s)}, +b17(a,b){return this.f.$2(a,b)}} +A.aQu.prototype={ +$1(a){return null}, +$S:600} +A.Tg.prototype={ +dY(a){return this.r!==a.r}} +A.yv.prototype={ +gacr(){var s,r=this +switch(r.a.c.a){case 0:s=r.d.at +s.toString +s=new A.z(0,-s) +break +case 2:s=r.d.at +s.toString +s=new A.z(0,s) +break +case 3:s=r.d.at +s.toString +s=new A.z(-s,0) +break +case 1:s=r.d.at +s.toString +s=new A.z(s,0) +break +default:s=null}return s}, +gAQ(){var s=this.a.d +if(s==null){s=this.x +s.toString}return s}, +ghJ(){return this.a.Q}, +a9x(){var s,r,q,p=this,o=p.a.as +if(o==null){o=p.c +o.toString +o=A.uD(o)}p.w=o +s=p.c +s.toString +s=o.w2(s) +p.e=s +o=p.a +r=o.e +if(r!=null)p.e=r.nJ(s) +else{o=o.as +if(o!=null){s=p.c +s.toString +p.e=o.w2(s).nJ(p.e)}}q=p.d +if(q!=null){p.gAQ().D1(0,q) +A.ff(q.gdj())}o=p.gAQ() +s=p.e +s.toString +p.d=o.ac8(s,p,q) +s=p.gAQ() +o=p.d +o.toString +s.aI(o)}, +nk(a,b){var s,r,q,p=this.r +this.vC(p,"offset") +s=p.y +r=s==null +if((r?A.y(p).i("dG.T").a(s):s)!=null){q=this.d +q.toString +p=r?A.y(p).i("dG.T").a(s):s +p.toString +q.agK(p,b)}}, +aj(){if(this.a.d==null)this.x=A.uE(0,null,null) +this.aw()}, +c1(){var s=this,r=s.c +r.toString +r=A.de(r,B.o1) +s.y=r==null?null:r.CW +r=s.c +r.toString +r=A.de(r,B.e7) +r=r==null?null:r.b +if(r==null){r=s.c +r.toString +A.z6(r).toString +r=$.dz().d +if(r==null){r=self.window.devicePixelRatio +if(r===0)r=1}}s.f=r +s.a9x() +s.apk()}, +aKs(a){var s,r,q=this,p=null,o=q.a.as,n=o==null,m=a.as,l=m==null +if(n!==l)return!0 +if(!n&&!l&&o.OM(m))return!0 +o=q.a +s=o.e +if(s==null){o=o.as +if(o==null)s=p +else{n=q.c +n.toString +n=o.w2(n) +s=n}}r=a.e +if(r==null)if(l)r=p +else{o=q.c +o.toString +o=m.w2(o) +r=o}do{o=s==null +n=o?p:A.K(s) +m=r==null +if(n!=(m?p:A.K(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.K(o) +n=a.d +return o!=(n==null?p:A.K(n))}, +b1(a){var s,r,q=this +q.apl(a) +s=a.d +if(q.a.d!=s){if(s==null){s=q.x +s.toString +r=q.d +r.toString +s.D1(0,r) +q.x.m() +q.x=null}else{r=q.d +r.toString +s.D1(0,r) +if(q.a.d==null)q.x=A.uE(0,null,null)}s=q.gAQ() +r=q.d +r.toString +s.aI(r)}if(q.aKs(a))q.a9x()}, +m(){var s,r=this,q=r.a.d +if(q!=null){s=r.d +s.toString +q.D1(0,s)}else{q=r.x +if(q!=null){s=r.d +s.toString +q.D1(0,s)}q=r.x +if(q!=null)q.m()}r.d.m() +r.r.m() +r.apm()}, +ako(a){var s,r,q=this +if(a===q.ay)s=!a||A.c_(q.a.c)===q.ch +else s=!1 +if(s)return +if(!a){q.at=B.J1 +q.a7w()}else{switch(A.c_(q.a.c).a){case 1:q.at=A.C([B.nK,new A.dC(new A.aQq(q),new A.aQr(q),t.ok)],t.u,t.xR) +break +case 0:q.at=A.C([B.tJ,new A.dC(new A.aQs(q),new A.aQt(q),t.Uv)],t.u,t.xR) +break}a=!0}q.ay=a +q.ch=A.c_(q.a.c) +s=q.Q +if(s.gad()!=null){s=s.gad() +s.TI(q.at) +if(!s.a.f){r=s.c.gag() +r.toString +t.Wx.a(r) +s.e.aOt(r)}}}, +OJ(a){var s,r=this +if(r.ax===a)return +r.ax=a +s=r.as +if($.aw.aR$.x.h(0,s)!=null){s=$.aw.aR$.x.h(0,s).gag() +s.toString +t.f1.a(s).saea(r.ax)}}, +aA0(a){this.cx=this.d.LG(this.gawc())}, +aJD(a){this.CW=this.d.acN(a,this.gawa())}, +aJE(a){var s=this.CW +if(s!=null)s.cg(0,a)}, +aJC(a){var s=this.CW +if(s!=null)s.acZ(0,a)}, +a7w(){if($.aw.aR$.x.h(0,this.Q)==null)return +var s=this.cx +if(s!=null)s.a.l3(0) +s=this.CW +if(s!=null)s.a.l3(0)}, +awd(){this.cx=null}, +awb(){this.CW=null}, +a7B(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)}, +a7A(a){var s,r,q=$.h2.yw$ +q===$&&A.b() +q=q.a.gaJ(0) +s=A.f8(q,A.y(q).i("B.E")) +q=this.w +q===$&&A.b() +q=q.gEo() +r=s.fQ(0,q.gps(q))&&a.ge1(a)===B.cI +q=this.a +switch((r?A.bVN(A.c_(q.c)):A.c_(q.c)).a){case 0:q=a.gzV().a +break +case 1:q=a.gzV().b +break +default:q=null}return A.Gm(this.a.c)?-q:q}, +aIi(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.tt(r) +s=r}else s=!1 +if(s){a.rW(!0) +return}q=o.a7A(a) +p=o.a7B(q) +if(q!==0){s=o.d.at +s.toString +s=p!==s}else s=!1 +if(s){$.iq.A$.agg(0,a,o.gaJF()) +return}a.rW(!0)}else if(t.xb.b(a))o.d.XJ(0)}, +aJG(a){var s,r=this,q=r.a7A(a),p=r.a7B(q) +if(q!==0){s=r.d.at +s.toString +s=p!==s}else s=!1 +if(s)r.d.XJ(q)}, +aBI(a){var s,r +if(a.j2$===0){s=$.aw.aR$.x.h(0,this.z) +r=s==null?null:s.gag() +if(r!=null)r.bM()}return!1}, +F(a){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.d +i.toString +s=k.at +r=k.a +q=r.x +p=r.w +o=k.ax +o=A.ok(r.b17(a,i),o,k.as) +n=new A.Tg(k,i,A.BY(B.di,new A.nb(new A.ck(A.cJ(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,j,j),!1,!p,!1,!1,o,j),s,q,p,k.Q),j,j,j,j,j,k.gaIh(),j),j) +i=k.a +if(!i.w){i=k.d +i.toString +s=k.e.gpg() +r=k.a +n=new A.ea(k.gaBH(),new A.ajZ(i,s,r.y,n,k.z),j,t.ji) +i=r}s=k.gAQ() +r=k.a.at +m=new A.a7V(i.c,s,r) +i=k.w +i===$&&A.b() +n=i.JQ(a,i.JP(a,n,m),m) +l=A.Nx(a) +if(l!=null){i=k.d +i.toString +n=new A.Ti(k,i,n,l,j)}return n}} +A.aQq.prototype={ +$0(){var s=this.a.w +s===$&&A.b() +return A.bo8(null,s.gre())}, +$S:149} +A.aQr.prototype={ +$1(a){var s,r,q=this.a +a.ay=q.ga4g() +a.ch=q.ga7y() +a.CW=q.ga7z() +a.cx=q.ga7x() +a.cy=q.ga7v() +s=q.e +a.db=s==null?null:s.gXf() +s=q.e +a.dx=s==null?null:s.gMh() +s=q.e +a.dy=s==null?null:s.gE3() +s=q.w +s===$&&A.b() +r=q.c +r.toString +a.fx=s.O3(r) +a.at=q.a.z +r=q.w +s=q.c +s.toString +a.ax=r.th(s) +a.b=q.y +a.c=q.w.gre()}, +$S:148} +A.aQs.prototype={ +$0(){var s=this.a.w +s===$&&A.b() +return A.aBE(null,s.gre())}, +$S:264} +A.aQt.prototype={ +$1(a){var s,r,q=this.a +a.ay=q.ga4g() +a.ch=q.ga7y() +a.CW=q.ga7z() +a.cx=q.ga7x() +a.cy=q.ga7v() +s=q.e +a.db=s==null?null:s.gXf() +s=q.e +a.dx=s==null?null:s.gMh() +s=q.e +a.dy=s==null?null:s.gE3() +s=q.w +s===$&&A.b() +r=q.c +r.toString +a.fx=s.O3(r) +a.at=q.a.z +r=q.w +s=q.c +s.toString +a.ax=r.th(s) +a.b=q.y +a.c=q.w.gre()}, +$S:265} +A.Ti.prototype={ +a0(){return new A.ak_()}} +A.ak_.prototype={ +aj(){var s,r,q,p +this.aw() +s=this.a +r=s.c +s=s.d +q=t.x9 +p=t.i +q=new A.Th(r,new A.awN(r,30),s,A.w(q,p),A.w(q,p),A.a([],t.D1),A.bn(q),B.NK,$.aW()) +s.a4(0,q.ga7l()) +this.d=q}, +b1(a){var s,r +this.bb(a) +s=this.a.d +if(a.d!==s){r=this.d +r===$&&A.b() +r.scl(0,s)}}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.ar()}, +F(a){var s=this.a,r=s.f,q=this.d +q===$&&A.b() +return new A.yw(r,s.e,q,null)}} +A.Th.prototype={ +scl(a,b){var s,r=this.id +if(b===r)return +s=this.ga7l() +r.K(0,s) +this.id=b +b.a4(0,s)}, +aJp(){if(this.fr)return +this.fr=!0 +$.cp.p2$.push(new A.bcZ(this))}, +KB(){var s=this,r=s.b,q=A.tW(r,A.af(r).c) +r=s.k1 +r.vF(r,new A.bd_(q)) +r=s.k2 +r.vF(r,new A.bd0(q)) +s.a_o()}, +Lt(a){var s=this +s.k1.V(0) +s.k2.V(0) +s.fy=s.fx=null +s.go=!1 +return s.a_r(a)}, +rA(a){var s,r,q,p,o,n,m=this +if(m.fy==null&&m.fx==null)m.go=m.a43(a.b) +s=A.aoo(m.dx) +r=a.b +q=a.c +p=-s.a +o=-s.b +if(a.a===B.ft){r=m.fy=m.a51(r) +a=A.aQH(new A.z(r.a+p,r.b+o),q)}else{r=m.fx=m.a51(r) +a=A.aQI(new A.z(r.a+p,r.b+o),q)}n=m.a_u(a) +if(n===B.rG){m.dy.e=!1 +return n}if(m.go){r=m.dy +r.alx(A.bnt(a.b,0,0)) +if(r.e)return B.rG}return n}, +a51(a){var s,r,q,p=this.dx,o=p.c.gag() +o.toString +t.x.a(o) +s=o.he(a) +if(!this.go){r=s.b +if(r<0||s.a<0)return A.ct(o.bB(0,null),B.j) +if(r>o.gv(0).b||s.a>o.gv(0).a)return B.aiZ}q=A.aoo(p) +return A.ct(o.bB(0,null),new A.z(s.a+q.a,s.b+q.b))}, +U_(a,b){var s,r,q,p=this,o=p.dx,n=A.aoo(o) +o=o.c.gag() +o.toString +t.x.a(o) +s=o.bB(0,null) +r=p.d +if(r!==-1)q=p.fx==null||b +else q=!1 +if(q){r=J.je(p.b[r]).a +r.toString +p.fx=A.ct(s,A.ct(J.bkC(p.b[p.d],o),r.a.ab(0,new A.z(0,-r.b/2))).ab(0,n))}r=p.c +if(r!==-1){r=J.je(p.b[r]).b +r.toString +p.fy=A.ct(s,A.ct(J.bkC(p.b[p.c],o),r.a.ab(0,new A.z(0,-r.b/2))).ab(0,n))}}, +a9h(){return this.U_(!0,!0)}, +Lx(a){var s=this.a_s(a) +if(this.d!==-1)this.a9h() +return s}, +Ly(a){var s,r=this +r.go=r.a43(a.gZd()) +s=r.a_t(a) +r.a9h() +return s}, +Wp(a){var s=this,r=s.amT(a),q=a.gna() +s.U_(a.gna(),!q) +if(s.go)s.a5n(a.gna()) +return r}, +Wo(a){var s=this,r=s.amS(a),q=a.gna() +s.U_(a.gna(),!q) +if(s.go)s.a5n(a.gna()) +return r}, +a5n(a){var s,r,q,p,o,n,m,l,k=this,j=k.b +if(a){s=j[k.c] +r=s.gk(s).b +q=s.gk(s).b.b}else{s=j[k.d] +r=s.gk(s).a +j=s.gk(s).a +q=j==null?null:j.b}if(q==null||r==null)return +j=k.dx +p=j.c.gag() +p.toString +t.x.a(p) +o=A.ct(s.bB(0,p),r.a) +n=p.gv(0).a +p=p.gv(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.hH(n+p-m) +return}if(l<0){j=k.id +p=j.at +p.toString +j.hH(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.hH(p+r-n) +return}if(r<0){j=k.id +p=j.at +p.toString +j.hH(p+r)}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.hH(n+m-p) +return}if(l<0){j=k.id +p=j.at +p.toString +j.hH(p+l)}return +case 3:r=o.a +if(r>=n&&r<=0)return +if(r>n){j=k.id +p=j.at +p.toString +j.hH(p+n-r) +return}if(r<0){j=k.id +p=j.at +p.toString +j.hH(p+0-r)}return}}, +a43(a){var s,r=this.dx.c.gag() +r.toString +t.x.a(r) +s=r.he(a) +return new A.I(0,0,0+r.gv(0).a,0+r.gv(0).b).p(0,s)}, +hp(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.rj(a) +break +case 1:s=q.dx.d.at +s.toString +q.k2.n(0,a,s) +q.rj(a) +break +case 6:case 7:q.rj(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.C(0,a) +q.k1.C(0,a) +break +case 3:case 4:case 5: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.a_p(a,b)}, +rj(a){var s,r,q,p,o,n,m=this,l=m.dx,k=l.d.at +k.toString +s=m.k1 +r=s.h(0,a) +q=m.fx +if(q!=null)p=r==null||Math.abs(k-r)>1e-10 +else p=!1 +if(p){o=A.aoo(l) +a.rb(A.aQI(new A.z(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.h(0,a) +q=m.fy +if(q!=null)k=n==null||Math.abs(k-n)>1e-10 +else k=!1 +if(k){o=A.aoo(l) +a.rb(A.aQH(new A.z(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.a_q()}} +A.bcZ.prototype={ +$1(a){var s=this.a +if(!s.fr)return +s.fr=!1 +s.Je()}, +$S:3} +A.bd_.prototype={ +$2(a,b){return!this.a.p(0,a)}, +$S:278} +A.bd0.prototype={ +$2(a,b){return!this.a.p(0,a)}, +$S:278} +A.ajZ.prototype={ +b6(a){var s=this.e,r=new A.ajk(s,this.f,this.r,null,new A.bk(),A.aK()) +r.b5() +r.sbz(null) +s.a4(0,r.gz2()) +return r}, +b9(a,b){b.spg(this.f) +b.scl(0,this.e) +b.sak7(this.r)}} +A.ajk.prototype={ +scl(a,b){var s,r=this,q=r.E +if(b===q)return +s=r.gz2() +q.K(0,s) +r.E=b +b.a4(0,s) +r.bM()}, +spg(a){if(a===this.af)return +this.af=a +this.bM()}, +sak7(a){if(a==this.aZ)return +this.aZ=a +this.bM()}, +hP(a){var s,r,q=this +q.jM(a) +a.a=!0 +if(q.E.ay){a.c6(B.alT,q.af) +s=q.E +r=s.at +r.toString +a.bR=r +a.e=!0 +r=s.Q +r.toString +a.A=r +s=s.z +s.toString +a.X=s +a.sajX(q.aZ)}}, +xJ(a,b,c){var s,r,q,p,o,n,m,l=this +if(c.length!==0){s=B.b.gW(c).dy +s=!(s!=null&&s.p(0,B.O4))}else s=!0 +if(s){l.bH=null +l.a_O(a,b,c) +return}s=l.bH +if(s==null)s=l.bH=A.NC(null,l.gwh()) +s.scf(0,a.e) +s=l.bH +s.toString +r=t.QF +q=A.a([s],r) +p=A.a([],r) +for(s=c.length,o=null,n=0;n#"+A.c5(r)+"("+B.b.bJ(q,", ")+")"}, +gB(a){return A.a4(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.ah(b)!==A.K(r))return!1 +s=!1 +if(b instanceof A.a7V)if(b.a===r.a)if(b.b===r.b)s=b.d===r.d +return s}} +A.aQp.prototype={ +$2(a,b){if(b!=null)this.a.push(a+b.j(0))}, +$S:604} +A.awN.prototype={ +SB(a,b){var s +switch(b.a){case 0:s=a.a +break +case 1:s=a.b +break +default:s=null}return s}, +aKJ(a,b){var s +switch(b.a){case 0:s=a.a +break +case 1:s=a.b +break +default:s=null}return s}, +alx(a){var s=this,r=s.a.gacr() +s.d=a.bs(0,r.a,r.b) +if(s.e)return +s.xo()}, +xo(){var s=0,r=A.n(t.H),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c +var $async$xo=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:d=p.a +c=d.c.gag() +c.toString +t.x.a(c) +o=A.f9(c.bB(0,null),new A.I(0,0,0+c.gv(0).a,0+c.gv(0).b)) +c=p.e=!0 +n=d.gacr() +m=o.a +l=o.b +k=p.SB(new A.z(m+n.a,l+n.b),A.c_(d.a.c)) +j=k+p.aKJ(new A.R(o.c-m,o.d-l),A.c_(d.a.c)) +l=p.d +l===$&&A.b() +i=p.SB(new A.z(l.a,l.b),A.c_(d.a.c)) +l=p.d +h=p.SB(new A.z(l.c,l.d),A.c_(d.a.c)) +g=null +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){f=Math.min(h-j,20) +m=d.d +l=m.z +l.toString +m=m.at +m.toString +g=Math.max(l,m-f)}else{if(im}else m=!1 +if(m){f=Math.min(k-i,20) +m=d.d +l=m.z +l.toString +m=m.at +m.toString +g=Math.max(l,m-f)}else{if(h>j){m=d.d +l=m.at +l.toString +m=m.Q +m.toString +m=l>>24&255)/255*this.r.gk(0))),r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255)) +return s}, +a6n(a){var s,r,q=this +if(a){s=$.ap().br() +r=q.c +s.saG(0,A.Y(B.d.aa(255*((r.gk(r)>>>24&255)/255*q.r.gk(0))),r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255)) +s.sd0(0,B.aJ) +s.shw(1) +return s}s=$.ap().br() +r=q.b +s.saG(0,A.Y(B.d.aa(255*((r.gk(r)>>>24&255)/255*q.r.gk(0))),r.gk(r)>>>16&255,r.gk(r)>>>8&255,r.gk(r)&255)) +return s}, +aGQ(){return this.a6n(!1)}, +aGM(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=null +e.gTf() +switch(e.gTf().a){case 0:s=e.f +r=e.cy +r===$&&A.b() +q=new A.R(s,r) +s+=2*e.x +r=e.db.d +r.toString +p=e.dx +p=p===B.ah||p===B.at +o=e.Q +n=new A.R(s,r-(p?o.gc9(0)+o.gci(0):o.gde())) +r=e.x +m=r+e.Q.a +o=e.cx +o===$&&A.b() +r=m-r +l=e.gBh() +k=new A.z(r,l) +j=k.ab(0,new A.z(s,0)) +i=e.db.d +i.toString +p=e.dx +p=p===B.ah||p===B.at +h=e.Q +p=p?h.gc9(0)+h.gci(0):h.gde() +g=new A.z(r+s,l+(i-p)) +f=o +break +case 1:s=e.f +r=e.cy +r===$&&A.b() +q=new A.R(s,r) +r=e.x +p=e.db.d +p.toString +o=e.dx +o=o===B.ah||o===B.at +l=e.Q +o=o?l.gc9(0)+l.gci(0):l.gde() +n=new A.R(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.gBh() +k=new A.z(p,r) +s=e.db.d +s.toString +l=e.dx +l=l===B.ah||l===B.at +i=e.Q +g=new A.z(p,r+(s-(l?i.gc9(0)+i.gci(0):i.gde()))) +j=k +f=o +break +case 2:s=e.cy +s===$&&A.b() +q=new A.R(s,e.f) +s=e.db.d +s.toString +r=e.dx +r=r===B.ah||r===B.at +p=e.Q +r=r?p.gc9(0)+p.gci(0):p.gde() +p=e.f +o=e.x +p+=2*o +n=new A.R(s-r,p) +r=e.cx +r===$&&A.b() +f=o+e.Q.b +o=e.gBh() +s=f-e.x +k=new A.z(o,s) +j=k.ab(0,new A.z(0,p)) +l=e.db.d +l.toString +i=e.dx +i=i===B.ah||i===B.at +h=e.Q +g=new A.z(o+(l-(i?h.gc9(0)+h.gci(0):h.gde())),s+p) +m=r +break +case 3:s=e.cy +s===$&&A.b() +q=new A.R(s,e.f) +s=e.db.d +s.toString +r=e.dx +r=r===B.ah||r===B.at +p=e.Q +r=r?p.gc9(0)+p.gci(0):p.gde() +p=e.f +o=e.x +n=new A.R(s-r,p+2*o) +r=e.cx +r===$&&A.b() +f=b.b-p-o-e.Q.d +o=e.gBh() +p=f-e.x +k=new A.z(o,p) +s=e.db.d +s.toString +l=e.dx +l=l===B.ah||l===B.at +i=e.Q +g=new A.z(o+(s-(l?i.gc9(0)+i.gci(0):i.gde())),p) +j=k +m=r +break +default:g=d +j=g +k=j +n=k +q=n +f=q +m=f}s=k.a +r=k.b +e.ch=new A.I(s,r,s+n.a,r+n.b) +e.CW=new A.I(m,f,m+q.a,f+q.b) +if(e.r.gk(0)!==0){s=e.ch +s.toString +a.ey(s,e.aGQ()) +a.k0(j,g,e.a6n(!0)) +s=e.y +if(s!=null){r=e.CW +r.toString +a.dk(A.oI(r,s),e.ga6m()) +return}s=e.CW +s.toString +a.ey(s,e.ga6m()) +return}}, +aT(a,b){var s,r,q,p,o,n,m,l,k,j,i,h=this,g=h.dx,f=!0 +if(g!=null){s=h.db +if(s!=null){f=s.b +f.toString +s=s.a +s.toString +s=f<=s +f=s}}if(f)return +f=h.db.d +f.toString +g=g===B.ah||g===B.at +s=h.Q +g=g?s.gc9(0)+s.gci(0):s.gde() +if(f-g-2*h.w<=0)return +g=h.db +f=g.b +f.toString +if(f==1/0||f==-1/0)return +g=g.guO() +f=h.dx +f=f===B.ah||f===B.at +s=h.Q +f=f?s.gc9(0)+s.gci(0):s.gde() +s=h.db +r=s.b +r.toString +q=s.a +q.toString +s=s.d +s.toString +p=h.dx +p=p===B.ah||p===B.at +o=h.Q +p=p?o.gc9(0)+o.gci(0):o.gde() +n=A.M((g-f)/(r-q+s-p),0,1) +p=h.db.d +p.toString +g=h.dx +g=g===B.ah||g===B.at +f=h.Q +g=g?f.gc9(0)+f.gci(0):f.gde() +g=Math.min(p-g-2*h.w,h.at) +p=h.db.d +p.toString +f=h.dx +f=f===B.ah||f===B.at +s=h.Q +f=f?s.gc9(0)+s.gci(0):s.gde() +m=Math.max(g,(p-f-2*h.w)*n) +f=h.db.guO() +p=h.db.d +p.toString +g=h.as +s=h.dx +s=s===B.ah||s===B.at +r=h.Q +s=s?r.gc9(0)+r.gci(0):r.gde() +l=Math.min(g,p-s-2*h.w) +g=h.dx +g=g===B.at||g===B.cj +s=h.db +if((g?Math.max(s.gkT()-s.gfB(),0):Math.max(s.gfB()-s.gkU(),0))>0){g=h.dx +g=g===B.at||g===B.cj +s=h.db +s=(g?Math.max(s.gfB()-s.gkU(),0):Math.max(s.gkT()-s.gfB(),0))>0 +g=s}else g=!1 +k=g?l:l*(1-A.M(1-f/p,0,0.2)/0.2) +g=h.db.d +g.toString +f=h.dx +f=f===B.ah||f===B.at +s=h.Q +f=f?s.gc9(0)+s.gci(0):s.gde() +f=A.M(m,k,g-f-2*h.w) +h.cy=f +g=h.db +s=g.b +s.toString +r=g.a +r.toString +j=s-r +if(j>0){s=g.c +s.toString +i=A.M((s-r)/j,0,1)}else i=0 +s=h.dx +r=s===B.at +q=r||s===B.cj?1-i:i +g=g.d +g.toString +s=s===B.ah||r +r=h.Q +s=s?r.gc9(0)+r.gci(0):r.gde() +h.cx=q*(g-s-2*h.w-f)+(h.gBh()+h.w) +return h.aGM(a,b)}, +Za(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.ah||r===B.at +q=o.Q +r=r?q.gc9(0)+q.gci(0):q.gde() +q=o.w +p=o.cy +p===$&&A.b() +return(m-s)*a/(n-r-2*q-p)}, +DE(a){var s,r,q=this +if(q.CW==null)return null +s=!0 +if(!q.ay)if(q.r.gk(0)!==0){s=q.db +r=s.a +r.toString +s=s.b +s.toString +s=r===s}if(s)return!1 +return q.ch.p(0,a)}, +ae6(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.nT(A.nc(p.CW.gbq(),24)) +if(p.r.gk(0)===0){if(c&&b===B.cI)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)}}, +aVa(a,b){return this.ae6(a,b,!1)}, +ae7(a,b){var s,r,q=this +if(q.CW==null)return!1 +if(q.ay)return!1 +if(q.r.gk(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.nT(A.nc(s.gbq(),24)).p(0,a) +case 1:case 2:case 3:case 5:return q.CW.p(0,a)}}, +ff(a){var s=this,r=!0 +if(s.a.l(0,a.a))if(s.b.l(0,a.b))if(s.c.l(0,a.c))if(s.e==a.e)if(s.f===a.f)if(s.r===a.r)if(s.w===a.w)if(s.x===a.x)if(J.e(s.y,a.y))if(s.Q.l(0,a.Q))if(s.as===a.as)if(s.at===a.at)r=s.ay!==a.ay +return r}, +OO(a){return!1}, +gFF(){return null}, +j(a){return"#"+A.c5(this)}, +m(){this.r.a.K(0,this.geS()) +this.dN()}} +A.aQz.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:605} +A.D2.prototype={ +a0(){return A.bMB(t.jU)}, +ob(a){return this.cx.$1(a)}} +A.oJ.prototype={ +gnD(){var s=this.a.d +if(s==null){s=this.c +s.toString +s=A.aN4(s)}return s}, +gwj(){var s=this.a.e +return s===!0}, +ga81(){if(this.gwj())this.a.toString +return!1}, +guM(){this.a.toString +return!0}, +aj(){var s,r,q,p,o=this,n=null +o.aw() +s=A.c2(n,o.a.ay,n,n,o) +s.ct() +r=s.ec$ +r.b=!0 +r.a.push(o.gaNd()) +o.x=s +s=o.y=A.cl(B.aQ,s,n) +r=o.a +q=r.w +if(q==null)q=6 +p=r.r +r=r.db +r=new A.Dm(B.oJ,B.t,B.t,n,q,s,0,0,p,n,B.Z,18,18,r,$.aW()) +s.a.a4(0,r.geS()) +o.CW!==$&&A.d1() +o.CW=r}, +c1(){this.ea()}, +aNe(a){if(a!==B.a9)if(this.gnD()!=null)this.guM()}, +EW(){var s,r=this,q=r.CW +q===$&&A.b() +r.a.toString +q.saG(0,B.oJ) +r.a.toString +q.sb0p(null) +if(r.ga81()){r.a.toString +s=B.Uh}else s=B.t +q.sot(s) +if(r.ga81()){r.a.toString +s=B.XU}else s=B.t +q.sahc(s) +s=r.c.au(t.I) +s.toString +q.scr(s.w) +s=r.a.w +q.sYa(s==null?6:s) +q.sEs(r.a.r) +r.a.toString +s=r.c +s.toString +s=A.cr(s,B.cQ,t.l).w +q.sdW(0,s.r) +q.sOx(r.a.db) +r.a.toString +q.sX9(0) +r.a.toString +q.scC(0,null) +r.a.toString +q.sVr(0) +r.a.toString +q.sXg(0,18) +r.a.toString +q.saf7(18) +q.sae9(!r.guM())}, +b1(a){var s,r=this +r.bb(a) +s=r.a.e +if(s!=a.e)if(s===!0){s=r.w +if(s!=null)s.S(0) +s=r.x +s===$&&A.b() +s.z=B.b5 +s.jP(1,B.X,null)}else{s=r.x +s===$&&A.b() +s.dq(0)}}, +I9(){var s,r=this +if(!r.gwj()){s=r.w +if(s!=null)s.S(0) +r.w=A.bZ(r.a.ch,new A.aNx(r))}}, +awh(){this.as=null}, +awj(){this.ax=null}, +ayS(a){var s,r,q,p,o,n=this,m=B.b.gd_(n.r.f),l=A.bu("primaryDeltaFromDragStart"),k=A.bu("primaryDeltaFromLastDragUpdate"),j=m.w +switch(j.a.c.a){case 0:s=a.b +l.b=n.d.b-s +k.b=n.e.b-s +break +case 1:s=a.a +l.b=s-n.d.a +k.b=s-n.e.a +break +case 2:s=a.b +l.b=s-n.d.b +k.b=s-n.e.b +break +case 3:s=a.a +l.b=n.d.a-s +k.b=n.e.a-s +break}s=n.CW +s===$&&A.b() +r=n.f +r.toString +q=s.Za(r+l.b2()) +if(l.b2()>0){r=m.at +r.toString +r=qr}else r=!1 +else r=!0 +if(r){r=m.at +r.toString +q=r+s.Za(k.b2())}s=m.at +s.toString +if(q!==s){p=q-m.r.Ck(m,q) +s=n.c +s.toString +s=A.uD(s) +r=n.c +r.toString +switch(s.mA(r).a){case 1:case 3:case 4:case 5:s=m.z +s.toString +r=m.Q +r.toString +p=A.M(p,s,r) +break +case 2:case 0:break}o=A.Gm(j.a.c) +j=m.at +if(o){j.toString +j=p-j}else{j.toString +j-=p}return j}return null}, +WA(){var s,r=this +r.r=r.gnD() +if(r.ay==null)return +s=r.w +if(s!=null)s.S(0) +r.ax=B.b.gd_(r.r.f).LG(r.gawi())}, +LB(a){var s,r,q,p,o,n,m,l=this +if(l.ay==null)return +s=l.w +if(s!=null)s.S(0) +s=l.x +s===$&&A.b() +s.cd(0) +r=B.b.gd_(l.r.f) +s=$.aw.aR$.x.h(0,l.z).gag() +s.toString +s=A.ct(t.x.a(s).bB(0,null),a) +l.as=r.acN(new A.mH(null,s,null),l.gawg()) +l.e=l.d=a +s=l.CW +s===$&&A.b() +q=s.db +p=q.b +p.toString +o=q.a +o.toString +n=p-o +if(n>0){p=q.c +p.toString +m=A.M(p/n,0,1)}else m=0 +q=q.d +q.toString +p=s.dx +p=p===B.ah||p===B.at +o=s.Q +p=p?o.gc9(0)+o.gci(0):o.gde() +o=s.w +s=s.cy +s===$&&A.b() +l.f=m*(q-p-2*o-s)}, +aUP(a){var s,r,q,p,o,n=this +if(J.e(n.e,a))return +s=B.b.gd_(n.r.f) +if(!s.r.tt(s))return +r=n.ay +if(r==null)return +if(n.as==null)return +q=n.ayS(a) +if(q==null)return +switch(r.a){case 0:p=new A.z(q,0) +break +case 1:p=new A.z(0,q) +break +default:p=null}o=$.aw.aR$.x.h(0,n.z).gag() +o.toString +o=A.ct(t.x.a(o).bB(0,null),a) +n.as.cg(0,new A.mI(null,p,q,o)) +n.e=a}, +LA(a,b){var s,r,q,p,o,n=this,m=n.ay +if(m==null)return +n.I9() +n.e=n.r=null +if(n.as==null)return +s=n.c +s.toString +s=A.uD(s) +r=n.c +r.toString +q=s.mA(r) +$label0$0:{if(B.aG===q||B.bg===q){s=b.a +s=new A.km(new A.z(-s.a,-s.b)) +break $label0$0}s=B.eB +break $label0$0}r=$.aw.aR$.x.h(0,n.z).gag() +r.toString +r=A.ct(t.x.a(r).bB(0,null),a) +switch(m.a){case 0:p=s.a.a +break +case 1:p=s.a.b +break +default:p=null}o=n.as +if(o!=null)o.acZ(0,new A.iM(s,p,r)) +n.r=n.f=n.e=n.d=null}, +aCK(a){var s,r,q,p,o,n=this,m=n.gnD() +n.r=m +s=B.b.gd_(m.f) +if(!s.r.tt(s))return +m=s.w +switch(A.c_(m.a.c).a){case 1:r=n.CW +r===$&&A.b() +r=r.cx +r===$&&A.b() +q=a.c.b>r?B.ah:B.at +break +case 0:r=n.CW +r===$&&A.b() +r=r.cx +r===$&&A.b() +q=a.c.a>r?B.dD:B.cj +break +default:q=null}m=$.aw.aR$.x.h(0,m.Q) +m.toString +p=A.qR(m) +p.toString +o=A.bnC(p,new A.nh(q,B.jR)) +m=B.b.gd_(n.r.f) +r=B.b.gd_(n.r.f).at +r.toString +m.Mm(0,r+o,B.e9,B.bc)}, +Tw(a){var s,r,q=this.gnD() +if(q==null)return!0 +s=q.f +r=s.length +if(r>1)return!1 +return r===0||A.c_(B.b.gd_(s).gkE())===a}, +aJJ(a){var s,r,q=this,p=q.a +p.toString +if(!p.ob(a.aaJ()))return!1 +if(q.gwj()){p=q.x +p===$&&A.b() +p=!p.gbi(0).gyW()}else p=!1 +if(p){p=q.x +p===$&&A.b() +p.cd(0)}s=a.a +p=s.e +if(q.Tw(A.c_(p))){r=q.CW +r===$&&A.b() +r.fc(0,s,p)}if(A.c_(p)!==q.ay)q.J(new A.aNv(q,s)) +p=q.at +r=s.b +r.toString +if(p!==r>0)q.J(new A.aNw(q)) +return!1}, +aJL(a){var s,r,q,p=this +if(!p.a.ob(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() +if(r.gbi(0).gyW())p.x.dq(0) +r=s.e +if(p.Tw(A.c_(r))){q=p.CW +q===$&&A.b() +q.fc(0,s,r)}return!1}if(a instanceof A.jA||a instanceof A.n7){r=p.x +r===$&&A.b() +if(!r.gbi(0).gyW())p.x.cd(0) +r=p.w +if(r!=null)r.S(0) +r=s.e +if(p.Tw(A.c_(r))){q=p.CW +q===$&&A.b() +q.fc(0,s,r)}}else if(a instanceof A.lc)if(p.as==null)p.I9() +return!1}, +aCB(a){this.WA()}, +Rx(a){var s=$.aw.aR$.x.h(0,this.z).gag() +s.toString +return t.x.a(s).he(a)}, +aCF(a){this.LB(this.Rx(a.b))}, +aCH(a){this.aUP(this.Rx(a.d))}, +aCD(a){this.LA(this.Rx(a.c),a.a)}, +aCz(){if($.aw.aR$.x.h(0,this.ch)==null)return +var s=this.ax +if(s!=null)s.a.l3(0) +s=this.as +if(s!=null)s.a.l3(0)}, +aDr(a){var s=this +a.ay=s.gaCA() +a.ch=s.gaCE() +a.CW=s.gaCG() +a.cx=s.gaCC() +a.cy=s.gaCy() +a.b=B.YP +a.at=B.le}, +gay7(){var s,r=this,q=A.w(t.u,t.xR),p=!1 +if(r.guM())if(r.gnD()!=null)if(r.gnD().f.length===1){s=B.b.gd_(r.gnD().f) +if(s.z!=null&&s.Q!=null){p=B.b.gd_(r.gnD().f).Q +p.toString +p=p>0}}if(!p)return q +switch(r.ay){case B.aN:q.n(0,B.avr,new A.dC(new A.aNr(r),r.ga55(),t.lh)) +break +case B.aw:q.n(0,B.avx,new A.dC(new A.aNs(r),r.ga55(),t.Pw)) +break +case null:case void 0:return q}q.n(0,B.avq,new A.dC(new A.aNt(r),new A.aNu(r),t.Bk)) +return q}, +aeF(a,b,c){var s,r=this.z +if($.aw.aR$.x.h(0,r)==null)return!1 +s=A.boZ(r,a) +r=this.CW +r===$&&A.b() +return r.ae6(s,b,!0)}, +Wq(a){var s,r=this +if(r.aeF(a.gcl(a),a.ge1(a),!0)){r.Q=!0 +s=r.x +s===$&&A.b() +s.cd(0) +s=r.w +if(s!=null)s.S(0)}else if(r.Q){r.Q=!1 +r.I9()}}, +Wr(a){this.Q=!1 +this.I9()}, +a6z(a){var s=A.c_(B.b.gd_(this.r.f).gkE())===B.aN?a.gzV().a:a.gzV().b +return A.Gm(B.b.gd_(this.r.f).w.a.c)?s*-1:s}, +a8u(a){var s,r=B.b.gd_(this.r.f).at +r.toString +s=B.b.gd_(this.r.f).z +s.toString +s=Math.max(r+a,s) +r=B.b.gd_(this.r.f).Q +r.toString +return Math.min(s,r)}, +aBo(a){var s,r,q,p=this +p.r=p.gnD() +s=p.a6z(a) +r=p.a8u(s) +if(s!==0){q=B.b.gd_(p.r.f).at +q.toString +q=r!==q}else q=!1 +if(q)B.b.gd_(p.r.f).XJ(s)}, +aJN(a){var s,r,q,p,o,n=this +n.r=n.gnD() +s=n.CW +s===$&&A.b() +s=s.DE(a.gfA()) +r=!1 +if(s===!0){s=n.r +if(s!=null)s=s.f.length!==0 +else s=r}else s=r +if(s){q=B.b.gd_(n.r.f) +if(t.Mj.b(a)){if(!q.r.tt(q))return +p=n.a6z(a) +o=n.a8u(p) +if(p!==0){s=q.at +s.toString +s=o!==s}else s=!1 +if(s)$.iq.A$.agg(0,a,n.gaBn())}else if(t.xb.b(a)){s=q.at +s.toString +q.hH(s)}}}, +m(){var s=this,r=s.x +r===$&&A.b() +r.m() +r=s.w +if(r!=null)r.S(0) +r=s.CW +r===$&&A.b() +r.r.a.K(0,r.geS()) +r.dN() +r=s.y +r===$&&A.b() +r.m() +s.aoJ()}, +F(a){var s,r,q=this,p=null +q.EW() +s=q.gay7() +r=q.CW +r===$&&A.b() +return new A.ea(q.gaJI(),new A.ea(q.gaJK(),new A.lY(A.BY(B.di,new A.nb(A.ov(A.fB(new A.lY(q.a.c,p),r,q.z,p,B.V),B.cU,p,p,new A.aNy(q),new A.aNz(q)),s,p,!1,q.ch),p,p,p,p,p,q.gaJM(),p),p),p,t.WA),p,t.ji)}} +A.aNx.prototype={ +$0(){var s=this.a,r=s.x +r===$&&A.b() +r.dq(0) +s.w=null}, +$S:0} +A.aNv.prototype={ +$0(){this.a.ay=A.c_(this.b.e)}, +$S:0} +A.aNw.prototype={ +$0(){var s=this.a +s.at=!s.at}, +$S:0} +A.aNr.prototype={ +$0(){var s=this.a,r=t.S +return new A.vp(s.z,B.S,B.hQ,A.aoD(),B.e4,A.w(r,t.GY),A.w(r,t.c),B.j,A.a([],t.t),A.w(r,t.SP),A.dD(r),s,null,A.aoE(),A.w(r,t.Au))}, +$S:607} +A.aNs.prototype={ +$0(){var s=this.a,r=t.S +return new A.vM(s.z,B.S,B.hQ,A.aoD(),B.e4,A.w(r,t.GY),A.w(r,t.c),B.j,A.a([],t.t),A.w(r,t.SP),A.dD(r),s,null,A.aoE(),A.w(r,t.Au))}, +$S:608} +A.aNt.prototype={ +$0(){var s=this.a,r=t.S +return new A.pc(s.z,B.bc,18,B.eV,A.w(r,t.SP),A.dD(r),s,null,A.Gr(),A.w(r,t.Au))}, +$S:609} +A.aNu.prototype={ +$1(a){a.a2=this.a.gaCJ()}, +$S:610} +A.aNy.prototype={ +$1(a){var s +switch(a.ge1(a).a){case 1:case 4:s=this.a +if(s.guM())s.Wr(a) +break +case 2:case 3:case 5:case 0:break}}, +$S:62} +A.aNz.prototype={ +$1(a){var s +switch(a.ge1(a).a){case 1:case 4:s=this.a +if(s.guM())s.Wq(a) +break +case 2:case 3:case 5:case 0:break}}, +$S:611} +A.pc.prototype={ +lF(a){return A.bTu(this.nY,a)&&this.aob(a)}} +A.vM.prototype={ +LS(a){return!1}, +lF(a){return A.byL(this.E,a)&&this.a_7(a)}} +A.vp.prototype={ +LS(a){return!1}, +lF(a){return A.byL(this.E,a)&&this.a_7(a)}} +A.FC.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.Cr.prototype={ +q(a,b){this.Q.q(0,b) +this.a7q()}, +C(a,b){var s,r,q=this +if(q.Q.C(0,b))return +s=B.b.dV(q.b,b) +B.b.iF(q.b,s) +r=q.c +if(s<=r)q.c=r-1 +r=q.d +if(s<=r)q.d=r-1 +b.K(0,q.gRQ()) +q.a7q()}, +a7q(){var s,r +if(!this.y){this.y=!0 +s=new A.aK6(this) +r=$.cp +if(r.R8$===B.rB)A.ff(s) +else r.p2$.push(s)}}, +axH(){var s,r,q,p,o,n,m,l,k=this,j=k.Q,i=A.a8(j,!0,A.y(j).c) +B.b.fZ(i,k.gCx()) +s=k.b +k.b=A.a([],t.D1) +r=k.d +q=k.c +j=k.gRQ() +p=0 +o=0 +while(!0){n=i.length +if(!(pMath.min(n,l))k.rj(m) +m.a4(0,j) +B.b.q(k.b,m);++p}}k.c=q +k.d=r +k.Q=A.bn(t.x9)}, +KB(){this.Je()}, +gk(a){return this.at}, +Je(){var s=this,r=s.ajF() +if(!s.at.l(0,r)){s.at=r +s.T()}s.aMD()}, +gCx(){return A.bXy()}, +aBN(){if(this.x)return +this.Je()}, +ajF(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=null,b=d.c +if(b===-1||d.d===-1||d.b.length===0)return new A.uG(c,c,B.ey,B.qg,d.b.length!==0) +if(!d.as){b=d.a0D(d.d,b) +d.d=b +d.c=d.a0D(d.c,b)}s=J.je(d.b[d.d]) +b=d.c +r=d.d +q=b>=r +while(!0){if(!(r!==d.c&&s.a==null))break +r+=q?1:-1 +s=J.je(d.b[r])}b=s.a +if(b!=null){p=d.b[r] +o=d.a.gag() +o.toString +n=A.ct(p.bB(0,t.x.a(o)),b.a) +m=isFinite(n.a)&&isFinite(n.b)?new A.yy(n,b.b,b.c):c}else m=c +l=J.je(d.b[d.c]) +k=d.c +while(!0){if(!(k!==d.d&&l.b==null))break +k+=q?-1:1 +l=J.je(d.b[k])}b=l.b +if(b!=null){p=d.b[k] +o=d.a.gag() +o.toString +j=A.ct(p.bB(0,t.x.a(o)),b.a) +i=isFinite(j.a)&&isFinite(j.b)?new A.yy(j,b.b,b.c):c}else i=c +h=A.a([],t.AO) +g=d.gaUV()?new A.I(0,0,0+d.gabH().a,0+d.gabH().b):c +for(f=d.d;f<=d.c;++f){e=J.je(d.b[f]).d +b=new A.ad(e,new A.aK7(d,f,g),A.af(e).i("ad<1,I>")).P9(0,new A.aK8()) +B.b.G(h,A.a8(b,!0,b.$ti.i("B.E")))}return new A.uG(m,i,!s.l(0,l)?B.rH:s.c,h,!0)}, +a0D(a,b){var s=b>a +while(!0){if(!(a!==b&&J.je(this.b[a]).c!==B.rH))break +a+=s?1:-1}return a}, +oh(a,b){return}, +aMD(){var s,r=this,q=null,p=r.e,o=r.r,n=r.d +if(n===-1||r.c===-1){n=r.f +if(n!=null){n.oh(q,q) +r.f=null}n=r.w +if(n!=null){n.oh(q,q) +r.w=null}return}if(!J.e(r.b[n],r.f)){n=r.f +if(n!=null)n.oh(q,q)}if(!J.e(r.b[r.c],r.w)){n=r.w +if(n!=null)n.oh(q,q)}n=r.b +s=r.d +n=r.f=n[s] +if(s===r.c){r.w=n +n.oh(p,o) +return}n.oh(p,q) +n=r.b[r.c] +r.w=n +n.oh(q,o)}, +a3f(){var s,r,q,p=this,o=p.d,n=o===-1 +if(n&&p.c===-1)return +if(n||p.c===-1){if(n)o=p.c +n=p.b +new A.bh(n,new A.aK2(p,o),A.af(n).i("bh<1>")).az(0,new A.aK3(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.hp(n[q],B.iC)}}, +Lx(a){var s,r,q,p=this +for(s=p.b,r=s.length,q=0;q")).az(0,new A.aK5(i)) +i.d=i.c=r}return B.ag}else if(s===B.a8){i.d=i.c=r-1 +return B.ag}}return B.ag}, +Ly(a){return this.a4C(a)}, +adT(a){return this.a4C(a)}, +Lt(a){var s,r,q,p=this +for(s=p.b,r=s.length,q=0;q0&&r===B.ad))break;--s +r=p.hp(p.b[s],a)}if(a.gna())p.c=s +else p.d=s +return r}, +Wo(a){var s,r,q,p=this +if(p.d===-1){a.gKH(a) +$label0$0:{}p.d=p.c=null}s=a.gna()?p.c:p.d +r=p.hp(p.b[s],a) +switch(a.gKH(a)){case B.rE:if(r===B.ad)if(s>0){--s +r=p.hp(p.b[s],a.aQh(B.nl))}break +case B.rF:if(r===B.a8){q=p.b +if(s=0&&a==null))break +a0=d.b=a1.hp(a3[b],a6) +switch(a0.a){case 2:case 3:case 4:a=a0 +break +case 0:if(c===!1){++b +a=B.ag}else if(b===a1.b.length-1)a=a0 +else{++b +c=!0}break +case 1:if(c===!0){--b +a=B.ag}else if(b===0)a=a0 +else{--b +c=!1}break}}if(a7)a1.c=b +else a1.d=b +a1.a3f() +a.toString +return a}, +abs(a,b){return this.gCx().$2(a,b)}} +A.aK6.prototype={ +$1(a){var s=this.a +if(!s.y)return +s.y=!1 +if(s.Q.a!==0)s.axH() +s.KB()}, +$0(){return this.$1(null)}, +$C:"$1", +$R:0, +$D(){return[null]}, +$S:256} +A.aK7.prototype={ +$1(a){var s,r=this.a,q=r.b[this.b] +r=r.a.gag() +r.toString +s=A.f9(q.bB(0,t.x.a(r)),a) +r=this.c +r=r==null?null:r.hG(s) +return r==null?s:r}, +$S:612} +A.aK8.prototype={ +$1(a){return a.gDR(0)&&!a.ga_(0)}, +$S:613} +A.aK2.prototype={ +$1(a){return a!==this.a.b[this.b]}, +$S:107} +A.aK3.prototype={ +$1(a){return this.a.hp(a,B.iC)}, +$S:65} +A.aK4.prototype={ +$1(a){return a!==this.a.b[this.b]}, +$S:107} +A.aK5.prototype={ +$1(a){return this.a.hp(a,B.iC)}, +$S:65} +A.ahl.prototype={} +A.yw.prototype={ +a0(){return new A.ak7(A.bn(t.M),null,!1)}} +A.ak7.prototype={ +aj(){var s,r,q,p=this +p.aw() +s=p.a +r=s.e +if(r!=null){q=p.c +q.toString +r.a=q +s=s.c +if(s!=null)p.svE(s)}}, +b1(a){var s,r,q,p,o,n=this +n.bb(a) +s=a.e +if(s!=n.a.e){r=s==null +if(!r){s.a=null +n.d.az(0,s.gagn(s))}q=n.a.e +if(q!=null){p=n.c +p.toString +q.a=p +n.d.az(0,q.gCe(q))}s=r?null:s.at +r=n.a.e +if(!J.e(s,r==null?null:r.at))for(s=n.d,s=A.a8(s,!1,A.y(s).c),r=s.length,o=0;o").b(b)&&A.VC(b.a,this.a)}, +gB(a){var s,r=this,q=r.b +if(q===$){s=A.bJM(r.a) +r.b!==$&&A.aH() +r.b=s +q=s}return q}} +A.KE.prototype={ +D(){return"LockState."+this.b}} +A.a1W.prototype={ +gahh(){return this.ga8Y()}, +ga8Y(){var s,r,q,p=this,o=p.c +if(o===$){s=p.a.hZ(0) +r=A.y(s).i("hB<1,x>") +q=A.f8(new A.hB(s,new A.aFd(),r),r.i("B.E")) +p.c!==$&&A.aH() +p.c=q +o=q}return o}, +aaa(a,b){var s,r,q,p +if(!(a instanceof A.op)&&!(a instanceof A.xk))return!1 +s=!1 +if(this.ga8Y().p(0,a.b)){r=b.a.gaJ(0) +r=A.f8(r,A.y(r).i("B.E")) +q=A.bu5(this.a.hZ(0)) +p=A.bu5(r) +if(q.a===p.a){s=q.hC(p) +s=s.ga_(s)}}return s}, +$iuL:1} +A.aFd.prototype={ +$1(a){var s=$.bBx().h(0,a) +return s==null?A.a([a],t.w3):s}, +$S:615} +A.b1.prototype={ +gahh(){return A.a([this.a],t.w3)}, +aKn(a){var s +switch(this.f.a){case 0:s=!0 +break +case 1:s=a.b.p(0,B.pT) +break +case 2:s=!a.b.p(0,B.pT) +break +default:s=null}return s}, +aaa(a,b){var s,r,q,p=this +if(!(a instanceof A.op))s=a instanceof A.xk +else s=!0 +r=!1 +if(s)if(B.b.p(A.a([p.a],t.w3),a.b)){s=b.a.gaJ(0) +s=A.f8(s,A.y(s).i("B.E")) +r=s.n7(0,$.bDs()) +q=!1 +if(p.b===r.gbC(r)){r=s.n7(0,$.bE6()) +if(p.c===r.gbC(r)){r=s.n7(0,$.bDp()) +if(p.d===r.gbC(r)){s=s.n7(0,$.bDY()) +s=p.e===s.gbC(s)}else s=q}else s=q}else s=q +s=s&&p.aKn(b)}else s=r +else s=r +return s}, +$iuL:1} +A.ve.prototype={} +A.Dv.prototype={ +sqj(a){var s=this +if(!A.aoC(s.b,a)){s.b=a +s.c=null +s.T()}}, +ga5_(){var s=this.c +return s==null?this.c=A.bNB(this.b):s}, +axv(a,b){var s,r,q,p=this.ga5_().h(0,a.b) +if(p==null)p=A.a([],t.Na) +p=A.a8(p,!0,t.J_) +s=this.ga5_().h(0,null) +B.b.G(p,s==null?A.a([],t.Na):s) +s=p.length +r=0 +for(;rq.gI4()){o=q.X +s=q.gI4() +r=q.X.at +r.toString +o.Vm(s-r)}else{o=q.X +s=o.at +s.toString +if(s<0)o.Vm(0-s)}q.X.qZ(q.gaNj()) +q.X.qY(0,q.gI4())}, +Bs(a){var s,r=this +switch(r.A.a){case 0:s=new A.z(0,a-r.H$.gv(0).b+r.gv(0).b) +break +case 3:s=new A.z(a-r.H$.gv(0).a+r.gv(0).a,0) +break +case 1:s=new A.z(-a,0) +break +case 2:s=new A.z(0,-a) +break +default:s=null}return s}, +a8_(a){var s,r,q=this +switch(q.a9.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.H$.gv(0).a>q.gv(0).a||r+q.H$.gv(0).b>q.gv(0).b}else s=!0 +return s}}, +aT(a,b){var s,r,q,p,o,n=this +if(n.H$!=null){s=n.X.at +s.toString +r=n.Bs(s) +s=new A.bc0(n,r) +q=n.aC +if(n.a8_(r)){p=n.cx +p===$&&A.b() +o=n.gv(0) +q.sb0(0,a.og(p,b,new A.I(0,0,0+o.a,0+o.b),s,n.a9,q.a))}else{q.sb0(0,null) +s.$2(a,b)}}}, +m(){this.aC.sb0(0,null) +this.h0()}, +er(a,b){var s,r=this.X.at +r.toString +s=this.Bs(r) +b.bs(0,s.a,s.b)}, +r8(a){var s=this,r=s.X.at +r.toString +r=s.a8_(s.Bs(r)) +if(r){r=s.gv(0) +return new A.I(0,0,0+r.a,0+r.b)}return null}, +dU(a,b){var s,r=this +if(r.H$!=null){s=r.X.at +s.toString +return a.m0(new A.bc_(r),r.Bs(s),b)}return!1}, +vZ(a,b,c,d){var s,r,q,p,o,n,m,l,k,j,i=this,h=null +A.c_(i.A) +if(d==null)d=a.gof() +if(!(a instanceof A.P)){s=i.X.at +s.toString +return new A.uB(s,d)}r=A.f9(a.bB(0,i.H$),d) +q=i.H$.gv(0) +switch(i.A.a){case 0:s=r.d +s=new A.kr(i.gv(0).b,q.b-s,s-r.b) +break +case 3:s=r.c +s=new A.kr(i.gv(0).a,q.a-s,s-r.a) +break +case 1:s=r.a +s=new A.kr(i.gv(0).a,s,r.c-s) +break +case 2:s=r.b +s=new A.kr(i.gv(0).b,s,r.d-s) +break +default:s=h}p=s.a +o=h +n=h +m=s.b +l=s.c +n=l +o=m +k=p +j=o-(k-n)*b +return new A.uB(j,r.ep(i.Bs(j)))}, +On(a,b,c){return this.vZ(a,b,null,c)}, +i3(a,b,c,d){var s=this +if(!s.X.r.gpg())return s.Gr(a,b,c,d) +s.Gr(a,null,c,A.bvs(a,b,c,s.X,d,s))}, +A3(){return this.i3(B.bk,null,B.F,null)}, +tv(a){return this.i3(B.bk,null,B.F,a)}, +wi(a,b,c){return this.i3(a,null,b,c)}, +tw(a,b){return this.i3(B.bk,a,B.F,b)}, +Vy(a){var s,r,q=this,p=q.gI4(),o=q.X.at +o.toString +s=p-o +switch(q.A.a){case 0:q.gv(0) +q.gv(0) +p=q.gv(0) +o=q.gv(0) +r=q.X.at +r.toString +return new A.I(0,0-s,0+p.a,0+o.b+r) +case 1:q.gv(0) +p=q.X.at +p.toString +q.gv(0) +return new A.I(0-p,0,0+q.gv(0).a+s,0+q.gv(0).b) +case 2:q.gv(0) +q.gv(0) +p=q.X.at +p.toString +return new A.I(0,0-p,0+q.gv(0).a,0+q.gv(0).b+s) +case 3:q.gv(0) +q.gv(0) +p=q.gv(0) +o=q.X.at +o.toString +return new A.I(0-s,0,0+p.a+o,0+q.gv(0).b)}}, +$iME:1} +A.bc0.prototype={ +$2(a,b){var s=this.a.H$ +s.toString +a.fa(s,b.ab(0,this.b))}, +$S:18} +A.bc_.prototype={ +$2(a,b){return this.a.H$.dT(a,b)}, +$S:24} +A.V8.prototype={ +aI(a){var s +this.eD(a) +s=this.H$ +if(s!=null)s.aI(a)}, +aB(a){var s +this.eE(0) +s=this.H$ +if(s!=null)s.aB(0)}} +A.anH.prototype={} +A.anI.prototype={} +A.a8h.prototype={} +A.a8i.prototype={ +b6(a){var s=new A.ajm(new A.aRM(a),null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}} +A.aRM.prototype={ +$0(){this.a.fS(B.Tt)}, +$S:0} +A.ajm.prototype={ +ck(){var s=this +s.qo() +if(s.af!=null&&!s.gv(0).l(0,s.af))s.E.$0() +s.af=s.gv(0)}} +A.a8y.prototype={} +A.qZ.prototype={ +cp(a){return A.bvX(this,!1)}, +VX(a,b,c,d,e){return null}} +A.a8w.prototype={ +cp(a){return A.bvX(this,!0)}, +b6(a){var s=new A.a74(t.Gt.a(a),A.w(t.S,t.x),0,null,null,A.aK()) +s.b5() +return s}} +A.a8t.prototype={ +b6(a){var s=new A.a73(this.f,t.Gt.a(a),A.w(t.S,t.x),0,null,null,A.aK()) +s.b5() +return s}, +b9(a,b){b.sajM(this.f)}, +VX(a,b,c,d,e){var s +this.ao6(a,b,c,d,e) +s=this.f.YV(a).abA(this.d.gyu()) +return s}} +A.DA.prototype={ +gag(){return t.Ss.a(A.bP.prototype.gag.call(this))}, +cg(a,b){var s,r,q=this.e +q.toString +t.M0.a(q) +this.qn(0,b) +s=b.d +r=q.d +if(s!==r)q=A.K(s)!==A.K(r)||s.ZI(r) +else q=!1 +if(q)this.mn()}, +mn(){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.Pe() +a.p3=null +a1.a=!1 +try{i=t.S +s=A.bnM(i,t.Dv) +r=A.ir(a0,a0,a0,i,t.i) +i=a.e +i.toString +q=t.M0.a(i) +p=new A.aS0(a1,a,s,q,r) +for(i=a.p2,h=i.$ti.i("ru<1,j6<1,2>>"),h=A.a8(new A.ru(i,h),!0,h.i("B.E")),g=h.length,f=t.MR,e=a.p1,d=0;d>")).az(0,p) +if(!a1.a&&a.R8){b=i.aeT() +k=b==null?-1:b +j=k+1 +J.bT(s,j,i.h(0,j)) +p.$1(j)}}finally{a.p4=null +a.gag()}}, +aQU(a,b){this.f.Cs(this,new A.aRY(this,b,a))}, +fN(a,b,c){var s,r,q,p,o=null +if(a==null)s=o +else{s=a.gag() +s=s==null?o:s.b}r=t.MR +r.a(s) +q=this.amn(a,b,c) +if(q==null)p=o +else{p=q.gag() +p=p==null?o:p.b}r.a(p) +if(s!=p&&s!=null&&p!=null)p.a=s.a +return q}, +lD(a){this.p2.C(0,a.c) +this.mH(a)}, +agm(a){var s,r=this +r.gag() +s=a.b +s.toString +s=t.W.a(s).b +s.toString +r.f.Cs(r,new A.aS1(r,s))}, +VY(a,b,c,d,e){var s,r,q=this.e +q.toString +s=t.M0 +r=s.a(q).d.gyu() +q=this.e +q.toString +s.a(q) +d.toString +q=q.VX(a,b,c,d,e) +return q==null?A.bNH(b,c,d,e,r):q}, +gxR(){var s,r=this.e +r.toString +s=t.M0.a(r).d.gyu() +return s}, +uG(){var s=this.p2 +s.aTu() +s.aeT() +s=this.e +s.toString +t.M0.a(s)}, +VA(a){var s=a.b +s.toString +t.W.a(s).b=this.p4}, +mg(a,b){this.gag().P1(0,t.x.a(a),this.p3)}, +mk(a,b,c){this.gag().E6(t.x.a(a),this.p3)}, +nj(a,b){this.gag().C(0,t.x.a(a))}, +bZ(a){var s=this.p2,r=s.$ti.i("zB<1,2>") +r=A.jX(new A.zB(s,r),r.i("B.E"),t.R) +B.b.az(A.a8(r,!0,A.y(r).i("B.E")),a)}} +A.aS0.prototype={ +$1(a){var s,r,q,p,o=this,n=o.b +n.p4=a +q=n.p2 +if(q.h(0,a)!=null&&!J.e(q.h(0,a),o.c.h(0,a))){q.n(0,a,n.fN(q.h(0,a),null,a)) +o.a.a=!0}s=n.fN(o.c.h(0,a),o.d.d.UV(n,a),a) +if(s!=null){p=o.a +p.a=p.a||!J.e(q.h(0,a),s) +q.n(0,a,s) +q=s.gag().b +q.toString +r=t.W.a(q) +if(a===0)r.a=0 +else{q=o.e +if(q.N(0,a))r.a=q.h(0,a)}if(!r.c)n.p3=t.Qv.a(s.gag())}else{o.a.a=!0 +q.C(0,a)}}, +$S:23} +A.aRZ.prototype={ +$0(){return null}, +$S:4} +A.aS_.prototype={ +$0(){return this.a.p2.h(0,this.b)}, +$S:620} +A.aRY.prototype={ +$0(){var s,r,q,p=this,o=p.a +o.p3=p.b==null?null:t.Qv.a(o.p2.h(0,p.c-1).gag()) +s=null +try{q=o.e +q.toString +r=t.M0.a(q) +q=o.p4=p.c +s=o.fN(o.p2.h(0,q),r.d.UV(o,q),q)}finally{o.p4=null}q=p.c +o=o.p2 +if(s!=null)o.n(0,q,s) +else o.C(0,q)}, +$S:0} +A.aS1.prototype={ +$0(){var s,r,q=this +try{s=q.a +r=s.p4=q.b +s.fN(s.p2.h(0,r),null,r)}finally{q.a.p4=null}q.a.p2.C(0,q.b)}, +$S:0} +A.Kh.prototype={ +xG(a){var s,r,q=a.b +q.toString +t.Cl.a(q) +s=this.f +if(q.yC$!==s){q.yC$=s +r=a.gbt(a) +if(r instanceof A.G&&!s)r.ae()}}} +A.a8r.prototype={ +F(a){var s=this.c,r=A.M(1-s,0,1) +return new A.akz(r/2,new A.aky(s,this.e,null),null)}} +A.aky.prototype={ +b6(a){var s=new A.a71(this.f,t.Gt.a(a),A.w(t.S,t.x),0,null,null,A.aK()) +s.b5() +return s}, +b9(a,b){b.sF_(this.f)}} +A.akz.prototype={ +b6(a){var s=new A.ajo(this.e,null,A.aK()) +s.b5() +return s}, +b9(a,b){b.sF_(this.e)}} +A.ajo.prototype={ +sF_(a){var s=this +if(s.eN===a)return +s.eN=a +s.f5=null +s.ae()}, +gkh(){return this.f5}, +aL_(){var s,r,q=this +if(q.f5!=null&&J.e(q.cG,t.q.a(A.G.prototype.gah.call(q))))return +s=t.q +r=s.a(A.G.prototype.gah.call(q)).y*q.eN +q.cG=s.a(A.G.prototype.gah.call(q)) +switch(A.c_(s.a(A.G.prototype.gah.call(q)).a).a){case 0:s=new A.al(r,0,r,0) +break +case 1:s=new A.al(0,r,0,r) +break +default:s=null}q.f5=s +return}, +ck(){this.aL_() +this.a_T()}} +A.O5.prototype={} +A.kg.prototype={ +cp(a){var s=A.y(this),r=t.R +return new A.O6(A.w(s.i("kg.0"),r),A.w(t.D2,r),this,B.aA,s.i("O6"))}} +A.oR.prototype={ +gfR(a){return this.fj$.gaJ(0)}, +j8(){J.fz(this.gfR(this),this.gXY())}, +bZ(a){J.fz(this.gfR(this),a)}, +IH(a,b){var s=this.fj$,r=s.h(0,b) +if(r!=null){this.rh(r) +s.C(0,b)}if(a!=null){s.n(0,b,a) +this.lp(a)}}} +A.O6.prototype={ +gag(){return this.$ti.i("oR<1,2>").a(A.bP.prototype.gag.call(this))}, +bZ(a){this.p1.gaJ(0).az(0,a)}, +lD(a){this.p1.C(0,a.c) +this.mH(a)}, +hs(a,b){this.tC(a,b) +this.a9a()}, +cg(a,b){this.qn(0,b) +this.a9a()}, +a9a(){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.i("kg<1,2>").a(e) +r=f.p2 +q=t.R +f.p2=A.w(t.D2,q) +p=f.p1 +s=s.c +f.p1=A.w(s,q) +for(q=e.gZP(),o=q.length,n=0;n").a(A.bP.prototype.gag.call(this)).IH(a,b)}, +nj(a,b){var s=this.$ti.i("oR<1,2>") +if(s.a(A.bP.prototype.gag.call(this)).fj$.h(0,b)===a)s.a(A.bP.prototype.gag.call(this)).IH(null,b)}, +mk(a,b,c){var s=this.$ti.i("oR<1,2>").a(A.bP.prototype.gag.call(this)) +if(s.fj$.h(0,b)===a)s.IH(null,b) +s.IH(a,c)}} +A.Tx.prototype={ +b9(a,b){return this.a_R(a,b)}} +A.Od.prototype={ +D(){return"SnapshotMode."+this.b}} +A.Oc.prototype={ +sUB(a){if(a===this.a)return +this.a=a +this.T()}} +A.a8I.prototype={ +b6(a){var s=new A.FI(A.cr(a,B.e7,t.l).w.b,this.w,this.e,this.f,!0,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){t.xL.a(b) +b.saQ7(0,this.e) +b.saXp(0,this.f) +b.snR(0,A.cr(a,B.e7,t.l).w.b) +b.svu(this.w) +b.saOJ(!0)}} +A.FI.prototype={ +snR(a,b){var s,r=this +if(b===r.E)return +r.E=b +s=r.cm +if(s==null)return +else{s.m() +r.cm=null +r.aU()}}, +svu(a){var s,r=this,q=r.af +if(a===q)return +s=r.gf8() +q.K(0,s) +r.af=a +if(A.K(q)!==A.K(r.af)||r.af.ff(q))r.aU() +if(r.y!=null)r.af.a4(0,s)}, +saQ7(a,b){var s,r,q=this,p=q.aZ +if(b===p)return +s=q.gIi() +p.K(0,s) +r=q.aZ.a +q.aZ=b +if(q.y!=null){b.a4(0,s) +if(r!==q.aZ.a)q.a68()}}, +saXp(a,b){if(b===this.bH)return +this.bH=b +this.aU()}, +saOJ(a){return}, +aI(a){var s=this +s.aZ.a4(0,s.gIi()) +s.af.a4(0,s.gf8()) +s.wz(a)}, +aB(a){var s,r=this +r.ft=!1 +r.aZ.K(0,r.gIi()) +r.af.K(0,r.gf8()) +s=r.cm +if(s!=null)s.m() +r.d9=r.cm=null +r.qq(0)}, +m(){var s,r=this +r.aZ.K(0,r.gIi()) +r.af.K(0,r.gf8()) +s=r.cm +if(s!=null)s.m() +r.d9=r.cm=null +r.h0()}, +a68(){var s,r=this +r.ft=!1 +s=r.cm +if(s!=null)s.m() +r.d9=r.cm=null +r.aU()}, +aGB(){var s,r=this,q=A.buK(B.j),p=r.gv(0),o=new A.qs(q,new A.I(0,0,0+p.a,0+p.b)) +r.jN(o,B.j) +o.Ab() +if(r.bH!==B.ao8&&!q.Pk()){q.m() +if(r.bH===B.ao7)throw A.d(A.mP("SnapshotWidget used with a child that contains a PlatformView.")) +r.ft=!0 +return null}p=r.gv(0) +s=q.b0c(new A.I(0,0,0+p.a,0+p.b),r.E) +q.m() +r.fu=r.gv(0) +return s}, +aT(a,b){var s,r,q,p,o=this +if(o.gv(0).ga_(0)){s=o.cm +if(s!=null)s.m() +o.d9=o.cm=null +return}if(!o.aZ.a||o.ft){s=o.cm +if(s!=null)s.m() +o.d9=o.cm=null +o.af.z8(a,b,o.gv(0),A.hK.prototype.ghV.call(o)) +return}if(!o.gv(0).l(0,o.fu)&&o.fu!=null){s=o.cm +if(s!=null)s.m() +o.cm=null}if(o.cm==null){o.cm=o.aGB() +o.d9=o.gv(0).ap(0,o.E)}s=o.cm +r=o.af +if(s==null)r.z8(a,b,o.gv(0),A.hK.prototype.ghV.call(o)) +else{s=o.gv(0) +q=o.cm +q.toString +p=o.d9 +p.toString +r.afB(a,b,s,q,p,o.E)}}} +A.a8H.prototype={} +A.QE.prototype={ +ghh(a){return A.V(A.oz(this,A.tN(B.ap1,"gb1J",1,[],[],0)))}, +shh(a,b){A.V(A.oz(this,A.tN(B.ap7,"sb1B",2,[b],[],0)))}, +gf1(){return A.V(A.oz(this,A.tN(B.ap2,"gb1K",1,[],[],0)))}, +sf1(a){A.V(A.oz(this,A.tN(B.aoZ,"sb1E",2,[a],[],0)))}, +gp0(){return A.V(A.oz(this,A.tN(B.ap3,"gb1L",1,[],[],0)))}, +sp0(a){A.V(A.oz(this,A.tN(B.aoX,"sb1F",2,[a],[],0)))}, +gqJ(){return A.V(A.oz(this,A.tN(B.ap4,"gb1M",1,[],[],0)))}, +sqJ(a){A.V(A.oz(this,A.tN(B.ap_,"sb1I",2,[a],[],0)))}, +a6T(a){return A.V(A.oz(this,A.tN(B.ap5,"b1N",0,[a],[],0)))}, +a4(a,b){}, +m(){}, +K(a,b){}, +$iaA:1, +$ibo:1} +A.a8Q.prototype={ +F(a){return A.cf(B.ax,1)}} +A.Of.prototype={ +aQO(a,b,c,d){var s=this +if(!s.e)return B.k4 +return new A.Of(c,s.b,s.c,s.d,!0)}, +aQo(a){return this.aQO(null,null,a,null)}, +j(a){var s=this,r=s.e?"enabled":"disabled" +return"SpellCheckConfiguration("+r+", service: "+A.c(s.a)+", text style: "+A.c(s.c)+", toolbar builder: "+A.c(s.d)+")"}, +l(a,b){var s +if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +s=!1 +if(b instanceof A.Of)if(b.a==this.a)s=b.e===this.e +return s}, +gB(a){var s=this +return A.a4(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.a9e.prototype={ +b6(a){var s=new A.N0(new A.Je(new WeakMap()),A.bn(t.Cn),A.w(t.X,t.hh),B.di,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){}} +A.N0.prototype={ +NS(a){var s +this.hQ.C(0,a) +s=this.dt +s.h(0,a.fo).C(0,a) +if(s.h(0,a.fo).a===0)s.C(0,a.fo)}, +dT(a,b){var s,r,q=this +if(!q.gv(0).p(0,b))return!1 +s=q.dU(a,b)||q.E===B.aU +if(s){r=new A.w6(b,q) +q.ej.n(0,r,a) +a.q(0,r)}return s}, +n6(a,b){var s,r,q,p,o,n,m,l,k=this +if(!t.pY.b(a))return +s=k.hQ +if(s.a===0)return +A.wL(b) +r=k.ej.a.get(b) +if(r==null)return +q=k.ayU(s,r.a) +p=t.Cn +o=A.aRr(q,q.gSy(),A.y(q).c,p).aue() +p=A.bn(p) +for(q=o.gav(o),n=k.dt;q.u();){m=n.h(0,q.gI(q).fo) +m.toString +p.G(0,m)}l=s.hC(p) +for(s=l.gav(l);s.u();){q=s.gI(s) +q=q.hQ +if(q!=null)q.$1(a)}for(s=A.dr(p,p.r,p.$ti.c),q=s.$ti.c;s.u();){p=s.d +if(p==null)q.a(p)}}, +ayU(a,b){var s,r,q,p,o=A.bn(t.zE) +for(s=b.length,r=this.hQ,q=0;q=0&&i==null))break +h=l.b=g.hp(s[j],a) +switch(h.a){case 2:case 3:case 4:i=h +break +case 0:if(k===!1){++j +i=B.ag}else if(j===g.b.length-1)i=h +else{++j +k=!0}break +case 1:if(k===!0){--j +i=B.ag}else if(j===0)i=h +else{--j +k=!1}break}}if(b)g.c=j +else g.d=j +g.a8x() +i.toString +return i}, +a0C(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=this,a3=null,a4=a2.at,a5=a8?a4.b!=null:a4.a!=null,a6=a8?a4.a!=null:a4.b!=null +$label0$0:{s=a3 +r=a3 +a4=!1 +if(a8){if(a5){a4=a6 +r=a4 +s=r}q=a5 +p=q +o=p +n=o}else{o=a3 +n=o +p=!1 +q=!1}m=0 +if(a4){a4=a2.c +break $label0$0}l=a3 +a4=!1 +if(a8){if(a8){k=n +j=a8 +i=j}else{k=a5 +o=k +n=o +i=!0 +j=!0}if(k){if(q)a4=r +else{a4=a6 +r=a4 +q=!0}l=!1===a4 +a4=l}}else{j=a8 +i=j +k=!1}if(a4){a4=a2.c +break $label0$0}h=a3 +a4=!1 +if(a8){if(j)g=o +else{g=a5 +o=g +j=!0}h=!1===g +g=h +if(g)if(p)a4=s +else{if(q)a4=r +else{a4=a6 +r=a4 +q=!0}s=!0===a4 +a4=s +p=!0}}if(a4){a4=a2.d +break $label0$0}a4=!1 +if(a8)if(h)if(k)a4=l +else{if(q)a4=r +else{a4=a6 +r=a4 +q=!0}l=!1===a4 +a4=l +k=!0}if(a4){a4=m +break $label0$0}f=!1===a8 +a4=f +g=!1 +if(a4){if(i)a4=n +else{if(j)a4=o +else{a4=a5 +o=a4 +j=!0}n=!0===a4 +a4=n +i=!0}if(a4)if(p)a4=s +else{if(q)a4=r +else{a4=a6 +r=a4 +q=!0}s=!0===a4 +a4=s +p=!0}else a4=g}else a4=g +if(a4){a4=a2.d +break $label0$0}a4=!1 +if(f){if(i)g=n +else{if(j)g=o +else{g=a5 +o=g +j=!0}n=!0===g +g=n}if(g)if(k)a4=l +else{if(q)a4=r +else{a4=a6 +r=a4 +q=!0}l=!1===a4 +a4=l +k=!0}}if(a4){a4=a2.d +break $label0$0}a4=!1 +if(f){if(a8){g=h +e=a8}else{if(j)g=o +else{g=a5 +o=g +j=!0}h=!1===g +g=h +e=!0}if(g)if(p)a4=s +else{if(q)a4=r +else{a4=a6 +r=a4 +q=!0}s=!0===a4 +a4=s}}else e=a8 +if(a4){a4=a2.c +break $label0$0}a4=!1 +if(f){if(e)g=h +else{h=!1===(j?o:a5) +g=h}if(g)if(k)a4=l +else{l=!1===(q?r:a6) +a4=l}}if(a4){a4=m +break $label0$0}a4=a3}d=A.bu("currentSelectableResult") +c=a3 +b=a4 +a=c +while(!0){a4=a2.b +if(!(b=0&&a==null))break +a0=d.b=a2.hp(a4[b],a7) +switch(a0.a){case 2:case 3:case 4:a=a0 +break +case 0:if(c===!1){++b +a=B.ag}else if(b===a2.b.length-1)a=a0 +else{++b +c=!0}break +case 1:if(c===!0){--b +a=B.ag}else if(b===0)a=a0 +else{--b +c=!1}break}}a4=a2.c +m=a2.d +a1=a4>=m +if(a8){if(c!=null)if(!(!a1&&c&&b>=m))m=a1&&!c&&b<=m +else m=!0 +else m=!1 +if(m)a2.d=a4 +a2.c=b}else{if(c!=null)if(!(!a1&&!c&&b<=a4))a4=a1&&c&&b>=a4 +else a4=!0 +else a4=!1 +if(a4)a2.c=m +a2.d=b}a2.a8x() +a.toString +return a}, +gCx(){return A.bXO()}, +a8x(){var s,r,q,p=this,o=p.d,n=o===-1 +if(n&&p.c===-1)return +if(n||p.c===-1){if(n)o=p.c +n=p.b +new A.bh(n,new A.bd2(p,o),A.af(n).i("bh<1>")).az(0,new A.bd3(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.hp(n[q],B.iC)}}, +C(a,b){this.dy.C(0,b) +this.fr.C(0,b) +this.amU(0,b)}, +U2(){var s,r,q,p,o=this,n=o.d +if(n!==-1&&J.je(o.b[n]).c!==B.ey){s=o.b[o.d] +r=s.gk(s).a.a.ab(0,new A.z(0,-s.gk(s).a.b/2)) +o.fx=A.ct(s.bB(0,null),r)}n=o.c +if(n!==-1&&J.je(o.b[n]).c!==B.ey){q=o.b[o.c] +p=q.gk(q).b.a.ab(0,new A.z(0,-q.gk(q).b.b/2)) +o.fy=A.ct(q.bB(0,null),p)}}, +Lx(a){var s,r,q,p,o,n,m=this,l=m.a_s(a) +for(s=m.b,r=s.length,q=m.dy,p=m.fr,o=0;o1)return +if(q.c){r=p.gad() +r.toString +r.gaq() +r=p.gad() +r.toString +r=r.gaq().cu.gce()}else r=!1 +if(r)switch(A.bY().a){case 2:case 4:q.axe(a.b,B.b4) +break +case 0:case 1:case 3:case 5:q.wT(a.b,B.b4) +break}else switch(A.bY().a){case 2:switch(s){case B.cI:case B.cc:p=p.gad() +p.toString +p.gaq().jH(B.b4,a.b) +break +case B.cq:case B.eu:case B.br:case B.ds:case null:case void 0:break}break +case 0:case 1:switch(s){case B.cI:case B.cc:p=p.gad() +p.toString +p.gaq().jH(B.b4,a.b) +break +case B.cq:case B.eu:case B.br:case B.ds:r=p.gad() +r.toString +if(r.gaq().cG){p=p.gad() +p.toString +r=a.b +p.gaq().jH(B.b4,r) +q.BP(r)}break +case null:case void 0:break}break +case 3:case 4:case 5:p=p.gad() +p.toString +p.gaq().jH(B.b4,a.b) +break}}, +aY2(a){var s,r,q,p,o,n,m,l,k,j,i=this,h=i.a +if(!(h.a.bx&&h.gh4()))return +if(!i.c){s=h.y +r=s.gad() +r.toString +if(r.gaq().h8===1){r=s.gad() +r.toString +r=r.gaq().kO.at +r.toString +q=new A.z(r-i.e,0)}else{r=s.gad() +r.toString +r=r.gaq().kO.at +r.toString +q=new A.z(0,r-i.e)}r=i.ga7t() +switch(A.c_(r==null?B.cj:r).a){case 0:r=new A.z(i.gxp()-i.d,0) +break +case 1:r=new A.z(0,i.gxp()-i.d) +break +default:r=null}p=a.d +o=p.ai(0,a.r) +n=a.x +if(A.G2(n)===2){m=s.gad() +m.toString +m.gaq().FE(B.b4,o.ai(0,q).ai(0,r),p) +switch(a.f){case B.cq:case B.eu:case B.br:case B.ds:return i.BP(p) +case B.cI:case B.cc:case null:case void 0:return}}if(A.G2(n)===3)switch(A.bY().a){case 0:case 1:case 2:switch(a.f){case B.cI:case B.cc:return i.To(B.b4,o.ai(0,q).ai(0,r),p) +case B.cq:case B.eu:case B.br:case B.ds:case null:case void 0:break}return +case 3:return i.a7C(B.b4,o.ai(0,q).ai(0,r),p) +case 5:case 4:return i.To(B.b4,o.ai(0,q).ai(0,r),p)}switch(A.bY().a){case 2:switch(a.f){case B.cI:case B.cc:h=s.gad() +h.toString +return h.gaq().FD(B.b4,o.ai(0,q).ai(0,r),p) +case B.cq:case B.eu:case B.br:case B.ds:case null:case void 0:break}return +case 0:case 1:switch(a.f){case B.cI:case B.cc:case B.cq:case B.eu:h=s.gad() +h.toString +return h.gaq().FD(B.b4,o.ai(0,q).ai(0,r),p) +case B.br:case B.ds:h=s.gad() +h.toString +if(h.gaq().cG){h=s.gad() +h.toString +h.gaq().jH(B.b4,p) +return i.BP(p)}break +case null:case void 0:break}return +case 4:case 3:case 5:h=s.gad() +h.toString +return h.gaq().FD(B.b4,o.ai(0,q).ai(0,r),p)}}s=i.f +if(s.a!==s.b)s=A.bY()!==B.aG&&A.bY()!==B.cr +else s=!0 +if(s)return i.wT(a.d,B.b4) +h=h.y +s=h.gad() +s.toString +l=s.a.c.a.b +s=h.gad() +s.toString +r=a.d +k=s.gaq().jd(r) +s=i.f +p=s.c +n=k.a +j=pp +if(j&&l.c===p){s=h.gad() +s.toString +h=h.gad() +h.toString +s.jG(h.a.c.a.lt(A.dx(B.q,i.f.d,n,!1)),B.b4)}else if(!j&&n!==p&&l.c!==p){s=h.gad() +s.toString +h=h.gad() +h.toString +s.jG(h.a.c.a.lt(A.dx(B.q,i.f.c,n,!1)),B.b4)}else i.wT(r,B.b4)}, +aXZ(a){var s,r=this +if(r.b&&A.G2(a.c)===2){s=r.a.y.gad() +s.toString +s.lQ()}if(r.c)r.f=null +r.a4S()}} +A.OV.prototype={ +a0(){return new A.U0()}} +A.U0.prototype={ +aCt(){this.a.c.$0()}, +aCs(){this.a.d.$0()}, +aLJ(a){var s +this.a.e.$1(a) +s=a.d +if(A.G2(s)===2){s=this.a.ay.$1(a) +return s}if(A.G2(s)===3){s=this.a.ch.$1(a) +return s}}, +aLK(a){if(A.G2(a.d)===1){this.a.y.$1(a) +this.a.Q.$0()}else this.a.toString}, +aLI(){this.a.z.$0()}, +aLG(a){this.a.CW.$1(a)}, +aLH(a){this.a.cx.$1(a)}, +aLF(a){this.a.cy.$1(a)}, +axQ(a){var s=this.a.f +if(s!=null)s.$1(a)}, +axO(a){var s=this.a.r +if(s!=null)s.$1(a)}, +aAR(a){this.a.as.$1(a)}, +aAP(a){this.a.at.$1(a)}, +aAN(a){this.a.ax.$1(a)}, +F(a){var s,r,q=this,p=A.w(t.u,t.xR) +p.n(0,B.tK,new A.dC(new A.bfs(q),new A.bft(q),t.UN)) +q.a.toString +p.n(0,B.tH,new A.dC(new A.bfu(q),new A.bfv(q),t.jn)) +q.a.toString +switch(A.bY().a){case 0:case 1:case 2:p.n(0,B.avs,new A.dC(new A.bfw(q),new A.bfx(q),t.hg)) +break +case 3:case 4:case 5:p.n(0,B.avb,new A.dC(new A.bfy(q),new A.bfz(q),t.Qm)) +break}s=q.a +if(s.f!=null||s.r!=null)p.n(0,B.auP,new A.dC(new A.bfA(q),new A.bfB(q),t.C1)) +s=q.a +r=s.dx +return new A.nb(s.dy,p,r,!0,null)}} +A.bfs.prototype={ +$0(){return A.aTI(this.a,null)}, +$S:260} +A.bft.prototype={ +$1(a){var s=this.a.a +a.A=s.w +a.X=s.x}, +$S:261} +A.bfu.prototype={ +$0(){return A.aFl(this.a,A.cI([B.br],t.Au))}, +$S:262} +A.bfv.prototype={ +$1(a){var s=this.a +a.p3=s.gaAQ() +a.p4=s.gaAO() +a.RG=s.gaAM()}, +$S:263} +A.bfw.prototype={ +$0(){var s=null,r=t.S +return new A.oV(B.S,B.kq,A.bn(r),s,s,0,s,s,s,s,s,s,A.w(r,t.SP),A.dD(r),this.a,s,A.Gr(),A.w(r,t.Au))}, +$S:629} +A.bfx.prototype={ +$1(a){var s +a.at=B.le +a.ch=A.bY()!==B.aG +s=this.a +a.L8$=s.ga4M() +a.L9$=s.ga4L() +a.CW=s.ga8G() +a.cy=s.ga8D() +a.db=s.ga8E() +a.dx=s.ga8C() +a.cx=s.ga8H() +a.dy=s.ga8F()}, +$S:630} +A.bfy.prototype={ +$0(){var s=null,r=t.S +return new A.oW(B.S,B.kq,A.bn(r),s,s,0,s,s,s,s,s,s,A.w(r,t.SP),A.dD(r),this.a,s,A.Gr(),A.w(r,t.Au))}, +$S:631} +A.bfz.prototype={ +$1(a){var s +a.at=B.le +s=this.a +a.L8$=s.ga4M() +a.L9$=s.ga4L() +a.CW=s.ga8G() +a.cy=s.ga8D() +a.db=s.ga8E() +a.dx=s.ga8C() +a.cx=s.ga8H() +a.dy=s.ga8F()}, +$S:632} +A.bfA.prototype={ +$0(){return A.bIX(this.a,null)}, +$S:633} +A.bfB.prototype={ +$1(a){var s=this.a,r=s.a +a.at=r.f!=null?s.gaxP():null +a.ch=r.r!=null?s.gaxN():null}, +$S:634} +A.HE.prototype={ +a4(a,b){var s=this +if(s.M$<=0)$.aw.cU$.push(s) +if(s.ay===B.oF)A.c7(null,t.H) +s.am6(0,b)}, +K(a,b){var s=this +s.am7(0,b) +if(!s.w&&s.M$<=0)$.aw.lJ(s)}, +uE(a){switch(a.a){case 1:A.c7(null,t.H) +break +case 0:case 2:case 3:case 4:break}}, +m(){$.aw.lJ(this) +this.w=!0 +this.dN()}} +A.Av.prototype={ +D(){return"ClipboardStatus."+this.b}} +A.nu.prototype={ +Wu(a){return this.aUc(a)}, +aUc(a){var s=0,r=A.n(t.H) +var $async$Wu=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:return A.l(null,r)}}) +return A.m($async$Wu,r)}} +A.adu.prototype={} +A.Vd.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.Ve.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.OZ.prototype={} +A.a9z.prototype={ +q9(a){return new A.au(0,a.b,0,a.d)}, +qe(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.bOp(s.a,b.a,a.a) +q=s.b +return new A.z(r,o?Math.max(0,q-b.b):q)}, +oF(a){return!this.b.l(0,a.b)||!this.c.l(0,a.c)||this.d!=a.d}} +A.yU.prototype={ +a0(){return new A.alD(new A.cS(!0,$.aW()))}} +A.alD.prototype={ +c1(){var s,r=this +r.ea() +s=r.c +s.toString +r.d=A.bnY(s) +r.a9i()}, +b1(a){this.bb(a) +this.a9i()}, +m(){var s=this.e +s.U$=$.aW() +s.M$=0 +this.ar()}, +a9i(){var s=this.d&&this.a.c +this.e.sk(0,s)}, +F(a){var s=this.e +return new A.R9(s.a,s,this.a.d,null)}} +A.R9.prototype={ +dY(a){return this.f!==a.f}} +A.ho.prototype={ +CQ(a){var s,r=this +r.fp$=new A.E4(a) +r.cQ() +r.is() +s=r.fp$ +s.toString +return s}, +is(){var s,r=this.fp$ +if(r!=null){s=this.c3$ +r.sXh(0,!s.gk(s))}}, +cQ(){var s,r=this,q=r.c +q.toString +s=A.bwv(q) +q=r.c3$ +if(s===q)return +if(q!=null)q.K(0,r.gir()) +s.a4(0,r.gir()) +r.c3$=s}} +A.e6.prototype={ +CQ(a){var s,r,q=this +if(q.b8$==null)q.cQ() +if(q.dI$==null)q.dI$=A.bn(t.DH) +s=new A.amx(q,a) +r=q.b8$ +s.sXh(0,!r.gk(r)) +q.dI$.q(0,s) +return s}, +f3(){var s,r,q,p +if(this.dI$!=null){s=this.b8$ +r=!s.gk(s) +for(s=this.dI$,s=A.dr(s,s.r,A.y(s).c),q=s.$ti.c;s.u();){p=s.d;(p==null?q.a(p):p).sXh(0,r)}}}, +cQ(){var s,r=this,q=r.c +q.toString +s=A.bwv(q) +q=r.b8$ +if(s===q)return +if(q!=null)q.K(0,r.geG()) +s.a4(0,r.geG()) +r.b8$=s}} +A.amx.prototype={ +m(){this.w.dI$.C(0,this) +this.a_W()}} +A.Qq.prototype={ +a4(a,b){}, +K(a,b){}, +$iaA:1, +gk(){return!0}} +A.a9E.prototype={ +F(a){A.aTw(new A.apV(this.c,this.d.a)) +return this.e}} +A.E9.prototype={ +JE(){var s,r,q=this +q.gYj() +s=q.gk(q) +r=q.pB$ +if(s){r===$&&A.b() +r.cd(0)}else{r===$&&A.b() +r.dq(0)}}, +aM3(a){var s,r=this +if(r.gib()!=null){r.J(new A.aUM(r,a)) +s=r.nX$ +s===$&&A.b() +s.cd(0)}}, +a8U(a){var s,r=this +if(r.gib()==null)return +switch(r.gk(r)){case!1:r.gib().$1(!0) +break +case!0:s=r.gib() +s.toString +r.gYj() +s.$1(!1) +break +case null:case void 0:r.gib().$1(!1) +break}r.c.gag().FH(B.P2)}, +aM1(){return this.a8U(null)}, +a4J(a){var s,r=this +if(r.v5$!=null)r.J(new A.aUN(r)) +s=r.nX$ +s===$&&A.b() +s.dq(0)}, +aCq(){return this.a4J(null)}, +aAr(a){var s,r=this +if(a!==r.rs$){r.J(new A.aUK(r,a)) +s=r.yG$ +if(a){s===$&&A.b() +s.cd(0)}else{s===$&&A.b() +s.dq(0)}}}, +aAy(a){var s,r=this +if(a!==r.rt$){r.J(new A.aUL(r,a)) +s=r.yF$ +if(a){s===$&&A.b() +s.cd(0)}else{s===$&&A.b() +s.dq(0)}}}, +gjg(){var s,r=this,q=A.bn(t.g) +if(r.gib()==null)q.q(0,B.L) +if(r.rt$)q.q(0,B.N) +if(r.rs$)q.q(0,B.R) +s=r.gk(r) +if(s)q.q(0,B.Y) +return q}, +ab3(a,b,c,d,e,f){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g=i.Ld$ +if(g===$){s=A.C([B.nL,new A.dv(i.ga8T(),new A.bV(A.a([],t.ot),t.wS),t.wY)],t.u,t.od) +i.Ld$!==$&&A.aH() +i.Ld$=s +g=s}r=i.gib() +if(c==null)q=h +else{q=i.gjg() +q=c.a.$1(q)}if(q==null)q=B.cg +p=i.gib() +o=i.gib()!=null?i.gaM2():h +n=i.gib()!=null?i.ga8T():h +m=i.gib()!=null?i.ga4I():h +l=i.gib()!=null?i.ga4I():h +k=i.gib() +j=A.fB(h,h,h,e,f) +return A.bmh(g,!1,A.fn(h,new A.ck(A.cJ(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,h,h),!1,!1,!1,!1,j,h),B.S,p==null,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,h,n,l,o,m,h,h,h,!1,B.aV),r!=null,b,q,d,i.gaAq(),i.gaAx(),h)}, +aOY(a,b,c,d,e){return this.ab3(a,b,c,null,d,e)}} +A.aUM.prototype={ +$0(){this.a.v5$=this.b.c}, +$S:0} +A.aUN.prototype={ +$0(){this.a.v5$=null}, +$S:0} +A.aUK.prototype={ +$0(){this.a.rs$=this.b}, +$S:0} +A.aUL.prototype={ +$0(){this.a.rt$=this.b}, +$S:0} +A.E8.prototype={ +scl(a,b){var s=this,r=s.a +if(b===r)return +if(r!=null)r.a.K(0,s.geS()) +b.a.a4(0,s.geS()) +s.a=b +s.T()}, +sag4(a){var s=this,r=s.b +if(a===r)return +if(r!=null)r.a.K(0,s.geS()) +a.a.a4(0,s.geS()) +s.b=a +s.T()}, +sag6(a){var s=this,r=s.c +if(a===r)return +if(r!=null)r.a.K(0,s.geS()) +a.a.a4(0,s.geS()) +s.c=a +s.T()}, +sag7(a){var s=this,r=s.d +if(a===r)return +if(r!=null)r.a.K(0,s.geS()) +a.a.a4(0,s.geS()) +s.d=a +s.T()}, +saac(a){if(J.e(this.e,a))return +this.e=a +this.T()}, +saeb(a){if(J.e(this.f,a))return +this.f=a +this.T()}, +saec(a){if(a.l(0,this.r))return +this.r=a +this.T()}, +sag5(a){if(a.l(0,this.w))return +this.w=a +this.T()}, +syR(a){if(a.l(0,this.x))return +this.x=a +this.T()}, +syM(a){if(a.l(0,this.y))return +this.y=a +this.T()}, +sjK(a){if(a===this.z)return +this.z=a +this.T()}, +sacL(a){if(J.e(a,this.Q))return +this.Q=a +this.T()}, +sLR(a){if(a===this.as)return +this.as=a +this.T()}, +saeE(a){if(a===this.at)return +this.at=a +this.T()}, +afA(a,b){var s,r,q,p,o=this +if(o.b.gbi(0)!==B.a9||o.c.gbi(0)!==B.a9||o.d.gbi(0)!==B.a9){s=$.ap().br() +r=o.r +r.toString +q=o.w +q.toString +q=A.U(r,q,o.a.gk(0)) +r=o.x +r.toString +r=A.U(q,r,o.d.gk(0)) +q=o.y +q.toString +q=A.U(r,q,o.c.gk(0)) +q.toString +s.saG(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.b0(0,q,t.Y).al(0,o.b.gk(0)) +if(p>0)a.k_(b.ab(0,B.j),p,s)}}, +m(){var s=this,r=s.a +if(r!=null)r.a.K(0,s.geS()) +r=s.b +if(r!=null)r.a.K(0,s.geS()) +r=s.c +if(r!=null)r.a.K(0,s.geS()) +r=s.d +if(r!=null)r.a.K(0,s.geS()) +s.dN()}, +ff(a){return!0}, +DE(a){return null}, +gFF(){return null}, +OO(a){return!1}, +j(a){return"#"+A.c5(this)}} +A.GS.prototype={ +a0(){return new A.PT()}, +gpO(){return this.c}} +A.PT.prototype={ +aj(){this.aw() +this.a.gpO().a4(0,this.gRD())}, +b1(a){var s,r=this +r.bb(a) +if(!r.a.gpO().l(0,a.gpO())){s=r.gRD() +a.gpO().K(0,s) +r.a.gpO().a4(0,s)}}, +m(){this.a.gpO().K(0,this.gRD()) +this.ar()}, +azw(){if(this.c==null)return +this.J(new A.aYu())}, +F(a){return this.a.F(a)}} +A.aYu.prototype={ +$0(){}, +$S:0} +A.a8p.prototype={ +F(a){var s=this,r=t.so.a(s.c),q=r.gk(r) +if(s.e===B.ae)q=new A.z(-q.a,q.b) +return A.btc(s.r,s.f,q)}} +A.a3S.prototype={ +F(a){var s=this,r=t.m.a(s.c),q=s.e.$1(r.gk(r)) +r=r.gmi()?s.r:null +return A.a9J(s.f,s.w,r,q,!0)}} +A.a7D.prototype={} +A.Dc.prototype={} +A.a8j.prototype={ +F(a){var s,r,q=this,p=null,o=q.e +switch(o.a){case 0:s=new A.iF(q.f,-1) +break +case 1:s=new A.iF(-1,q.f) +break +default:s=p}if(o===B.aw){r=t.m.a(q.c) +r=Math.max(A.iE(r.gk(r)),0)}else r=p +if(o===B.aN){o=t.m.a(q.c) +o=Math.max(A.iE(o.gk(o)),0)}else o=p +return A.Xq(new A.fh(s,o,r,q.w,p),B.w,p)}} +A.eB.prototype={ +b6(a){var s=null,r=new A.a6F(s,s,s,s,s,new A.bk(),A.aK()) +r.b5() +r.sbz(s) +r.sfL(0,this.e) +r.sJD(!1) +return r}, +b9(a,b){b.sfL(0,this.e) +b.sJD(!1)}} +A.ZU.prototype={ +F(a){var s=this.e,r=s.a +return A.Ih(this.r,s.b.al(0,r.gk(r)),B.h5)}} +A.W9.prototype={ +F(a){var s=t.C8.a(this.c) +return new A.fh(s.gk(s),null,null,this.r,null)}} +A.tX.prototype={ +gpO(){return this.c}, +F(a){return this.JS(a,this.f)}, +JS(a,b){return this.e.$2(a,b)}} +A.Wd.prototype={ +gpO(){return A.tX.prototype.gpO.call(this)}, +gaP_(){return this.e}, +JS(a,b){return this.gaP_().$2(a,b)}} +A.Ed.prototype={ +a0(){var s=this.$ti +return new A.Ee(new A.amb(A.a([],s.i("E<1>")),s.i("amb<1>")),s.i("Ee<1>"))}, +gk(a){return this.c}} +A.Ee.prototype={ +gaLM(){var s=this.e +s===$&&A.b() +return s}, +gBV(){var s=this.a.w,r=this.x +if(r==null){s=$.aW() +s=new A.Pj(new A.bo(s),new A.bo(s),B.avD,s) +this.x=s}else s=r +return s}, +ER(){var s,r,q,p=this,o=p.d +if(o.gCR()==null)return +s=p.f +r=s==null +q=r?null:s.b!=null +if(q===!0){if(!r)s.S(0) +p.TU(0,o.gCR())}else p.TU(0,o.ER()) +p.Jf()}, +Et(){this.TU(0,this.d.Et()) +this.Jf()}, +Jf(){var s=this.gBV(),r=this.d,q=r.a,p=q.length!==0&&r.b>0 +s.sk(0,new A.Ef(p,r.gab8())) +if(A.bY()!==B.aG)return +s=$.aoY() +if(s.b===this){q=q.length!==0&&r.b>0 +r=r.gab8() +s=s.a +s===$&&A.b() +s.e0("UndoManager.setUndoState",A.C(["canUndo",q,"canRedo",r],t.N,t.y),t.H)}}, +aMl(a){this.ER()}, +aIp(a){this.Et()}, +TU(a,b){var s=this +if(b==null)return +if(J.e(b,s.w))return +s.w=b +s.r=!0 +try{s.a.f.$1(b)}finally{s.r=!1}}, +a6G(){var s,r,q=this +if(J.e(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.e(r,q.w))return +q.w=r +q.f=q.aLN(r)}, +a4h(){var s,r=this +if(!r.a.r.gcN()){s=$.aoY() +if(s.b===r)s.b=null +return}$.aoY().b=r +r.Jf()}, +aUe(a){switch(a.a){case 0:this.ER() +break +case 1:this.Et() +break}}, +aj(){var s,r=this +r.aw() +s=A.bUk(B.ec,new A.aV9(r),r.$ti.c) +r.e!==$&&A.d1() +r.e=s +r.a6G() +r.a.c.a4(0,r.gSY()) +r.a4h() +r.a.r.a4(0,r.gRK()) +r.gBV().w.a4(0,r.gahi()) +r.gBV().x.a4(0,r.gagf())}, +b1(a){var s,r,q=this +q.bb(a) +s=a.c +if(q.a.c!==s){r=q.d +B.b.V(r.a) +r.b=-1 +r=q.gSY() +s.K(0,r) +q.a.c.a4(0,r)}s=a.r +if(q.a.r!==s){r=q.gRK() +s.K(0,r) +q.a.r.a4(0,r)}q.a.toString}, +m(){var s=this,r=$.aoY() +if(r.b===s)r.b=null +s.a.c.K(0,s.gSY()) +s.a.r.K(0,s.gRK()) +s.gBV().w.K(0,s.gahi()) +s.gBV().x.K(0,s.gagf()) +r=s.x +if(r!=null)r.m() +r=s.f +if(r!=null)r.S(0) +s.ar()}, +F(a){var s=t.ot,r=t.wS +return A.rY(A.C([B.avg,new A.dv(this.gaMk(),new A.bV(A.a([],s),r),t._n).h2(a),B.av4,new A.dv(this.gaIo(),new A.bV(A.a([],s),r),t.fN).h2(a)],t.u,t.od),this.a.x)}, +aLN(a){return this.gaLM().$1(a)}} +A.aV9.prototype={ +$1(a){var s=this.a +s.d.nh(a) +s.Jf()}, +$S(){return this.a.$ti.i("~(1)")}} +A.Ef.prototype={ +j(a){return"UndoHistoryValue(canUndo: "+this.a+", canRedo: "+this.b+")"}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.Ef&&b.a===this.a&&b.b===this.b}, +gB(a){var s=this.a?519018:218159 +return A.a4(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.Pj.prototype={ +m(){var s=this.w,r=$.aW() +s.U$=r +s.M$=0 +s=this.x +s.U$=r +s.M$=0 +this.dN()}} +A.amb.prototype={ +gCR(){var s=this.a +return s.length===0?null:s[this.b]}, +gab8(){var s=this.a.length +return s!==0&&this.b"))}} +A.G9.prototype={ +gk(a){var s=this.d +s===$&&A.b() +return s}, +aj(){var s,r=this +r.aw() +s=r.a.c +r.d=s.gk(s) +r.a.c.a4(0,r.gUi())}, +b1(a){var s,r,q=this +q.bb(a) +s=a.c +if(s!==q.a.c){r=q.gUi() +s.K(0,r) +s=q.a.c +q.d=s.gk(s) +q.a.c.a4(0,r)}}, +m(){this.a.c.K(0,this.gUi()) +this.ar()}, +aNg(){this.J(new A.bgd(this))}, +F(a){var s,r=this.a +r.toString +s=this.d +s===$&&A.b() +return r.d.$3(a,s,r.e)}} +A.bgd.prototype={ +$0(){var s=this.a,r=s.a.c +s.d=r.gk(r)}, +$S:0} +A.Pt.prototype={ +a0(){return new A.amo(A.a0j(!0,null,!1),A.aNF())}} +A.amo.prototype={ +aj(){this.aw() +$.aw.cU$.push(this)}, +m(){$.aw.lJ(this) +this.d.m() +this.ar()}, +acz(a){var s,r=this +if(a.a!==r.a.c.a)return +switch(a.b.a){case 1:switch(a.c.a){case 1:s=r.e.a36(r.d,!0) +break +case 2:s=r.e.R6(r.d,!0,!0) +break +case 0:s=r.d +break +default:s=null}s.iI() +break +case 0:$.aw.aR$.d.b.nx(!1) +break}}, +F(a){var s=this.a,r=s.c,q=s.e,p=s.f +return new A.a6y(r,new A.Sa(r,A.bmc(A.bxj(s.d,this.d,!1),this.e),null),q,p,null)}} +A.a6y.prototype={ +F(a){var s=this,r=s.c,q=s.e,p=s.f +return new A.SD(r,new A.aND(s),q,p,new A.QF(r,q,p,t.Q8))}} +A.aND.prototype={ +$2(a,b){var s=this.a +return new A.zF(s.c,new A.Sx(b,s.d,null),null)}, +$S:638} +A.SD.prototype={ +cp(a){return new A.aiK(this,B.aA)}, +b6(a){return this.f}} +A.aiK.prototype={ +goV(){var s=this.e +s.toString +t.bR.a(s) +return s.e}, +gag(){return t.Ju.a(A.bP.prototype.gag.call(this))}, +TX(){var s,r,q,p,o,n,m,l=this +try{n=l.e +n.toString +s=t.bR.a(n).d.$2(l,l.goV()) +l.bR=l.fN(l.bR,s,null)}catch(m){r=A.v(m) +q=A.aT(m) +n=A.c3("building "+l.j(0)) +p=new A.cM(r,q,"widgets library",n,null,!1) +A.e9(p) +o=A.Jb(p) +l.bR=l.fN(null,o,l.c)}}, +hs(a,b){var s,r=this +r.tC(a,b) +s=t.Ju +r.goV().sY7(s.a(A.bP.prototype.gag.call(r))) +r.a0V() +r.TX() +s.a(A.bP.prototype.gag.call(r)).XL() +if(r.goV().at!=null)s.a(A.bP.prototype.gag.call(r)).FB()}, +a0W(a){var s,r,q,p=this +if(a==null)a=A.bx_(p) +s=p.goV() +a.CW.q(0,s) +r=a.cx +if(r!=null)s.aI(r) +s=$.oK +s.toString +r=t.Ju.a(A.bP.prototype.gag.call(p)) +q=r.go +s.dx$.n(0,q.a,r) +r.sr2(A.bOW(q)) +p.A=a}, +a0V(){return this.a0W(null)}, +a2r(){var s,r=this,q=r.A +if(q!=null){s=$.oK +s.toString +s.dx$.C(0,t.Ju.a(A.bP.prototype.gag.call(r)).go.a) +s=r.goV() +q.CW.C(0,s) +if(q.cx!=null)s.aB(0) +r.A=null}}, +c1(){var s,r=this +r.P6() +if(r.A==null)return +s=A.bx_(r) +if(s!==r.A){r.a2r() +r.a0W(s)}}, +mn(){this.Pe() +this.TX()}, +c0(){var s=this +s.Ae() +s.goV().sY7(t.Ju.a(A.bP.prototype.gag.call(s))) +s.a0V()}, +fn(){this.a2r() +this.goV().sY7(null) +this.a_P()}, +cg(a,b){this.qn(0,b) +this.TX()}, +bZ(a){var s=this.bR +if(s!=null)a.$1(s)}, +lD(a){this.bR=null +this.mH(a)}, +mg(a,b){t.Ju.a(A.bP.prototype.gag.call(this)).sbz(a)}, +mk(a,b,c){}, +nj(a,b){t.Ju.a(A.bP.prototype.gag.call(this)).sbz(null)}, +ou(){var s=this,r=s.goV(),q=s.e +q.toString +if(r!==t.bR.a(q).e){r=s.goV() +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.a_Q()}} +A.zF.prototype={ +dY(a){return this.f!==a.f}} +A.Sx.prototype={ +dY(a){return this.f!==a.f}} +A.QF.prototype={ +l(a,b){var s=this +if(b==null)return!1 +if(J.ah(b)!==A.K(s))return!1 +return s.$ti.b(b)&&b.a===s.a&&b.b===s.b&&b.c===s.c}, +gB(a){return A.a4(this.a,this.b,this.c,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a,B.a)}, +j(a){return"[_DeprecatedRawViewKey "+("#"+A.c5(this.a))+"]"}} +A.aoc.prototype={} +A.z7.prototype={ +b6(a){var s=this,r=s.e,q=A.aVM(a,r),p=s.y,o=A.aK() +if(p==null)p=250 +o=new A.N1(s.r,r,q,s.w,p,s.z,s.Q,o,0,null,null,new A.bk(),A.aK()) +o.b5() +o.G(0,null) +r=o.am$ +if(r!=null)o.dS=r +return o}, +b9(a,b){var s=this,r=s.e +b.skE(r) +r=A.aVM(a,r) +b.sacd(r) +b.saOc(s.r) +b.sdA(0,s.w) +b.saP2(s.y) +b.saP3(s.z) +b.smY(s.Q)}, +cp(a){return new A.amq(A.dD(t.R),this,B.aA)}} +A.amq.prototype={ +gag(){return t.E1.a(A.kW.prototype.gag.call(this))}, +hs(a,b){var s=this +s.A=!0 +s.amP(a,b) +s.a98() +s.A=!1}, +cg(a,b){var s=this +s.A=!0 +s.amR(0,b) +s.a98() +s.A=!1}, +a98(){var s=this,r=s.e +r.toString +t.Dg.a(r) +r=t.E1 +if(!s.gfR(0).ga_(0)){r.a(A.kW.prototype.gag.call(s)).sbq(t.IT.a(s.gfR(0).gW(0).gag())) +s.X=0}else{r.a(A.kW.prototype.gag.call(s)).sbq(null) +s.X=null}}, +mg(a,b){var s=this +s.a_m(a,b) +if(!s.A&&b.b===s.X)t.E1.a(A.kW.prototype.gag.call(s)).sbq(t.IT.a(a))}, +mk(a,b,c){this.a_n(a,b,c)}, +nj(a,b){var s=this +s.amQ(a,b) +if(!s.A&&t.E1.a(A.kW.prototype.gag.call(s)).dS===a)t.E1.a(A.kW.prototype.gag.call(s)).sbq(null)}} +A.a8b.prototype={ +b6(a){var s=this.e,r=A.aVM(a,s),q=A.aK() +s=new A.a70(s,r,this.r,250,B.v9,this.w,q,0,null,null,new A.bk(),A.aK()) +s.b5() +s.G(0,null) +return s}, +b9(a,b){var s=this.e +b.skE(s) +s=A.aVM(a,s) +b.sacd(s) +b.sdA(0,this.r) +b.smY(this.w)}} +A.aod.prototype={} +A.aoe.prototype={} +A.Pv.prototype={ +F(a){var s,r=this,q=null,p=r.c +if(r.w){s=r.e +p=new A.amr(s,r.x,A.ok(p,!s&&!r.y,q),q)}else if(r.f){if(!r.r)p=new A.yU(r.e,p,q) +s=r.e +p=new A.qp(!s,p,q)}else{s=r.e +p=s?p:B.ax}return new A.Up(s,p,q)}} +A.aVQ.prototype={ +$1(a){this.a.a=a +return!1}, +$S:37} +A.Up.prototype={ +dY(a){return this.f!==a.f}} +A.amr.prototype={ +b6(a){var s=new A.ajw(this.e,this.f,null,new A.bk(),A.aK()) +s.b5() +s.sbz(null) +return s}, +b9(a,b){b.sYC(0,this.e) +b.saX1(this.f)}} +A.ajw.prototype={ +sYC(a,b){if(b===this.E)return +this.E=b +this.aU()}, +saX1(a){if(a===this.af)return +this.af=a +this.bM()}, +iL(a){if(this.af||this.E)this.tB(a)}, +aT(a,b){if(!this.E)return +this.jN(a,b)}} +A.Eq.prototype={ +JN(a,b,c){var s,r=this.a,q=r!=null +if(q)a.ze(r.Fv(c)) +b.toString +s=b[a.gaZo()] +r=s.a +a.aan(r.a,r.b,this.b,s.d,s.c) +if(q)a.cV()}, +bZ(a){return a.$1(this)}, +ahz(a){return!0}, +Z8(a,b){var s=b.a +if(a.a===s)return this +b.a=s+1 +return null}, +abq(a,b){var s=b.a +b.a=s+1 +return a-s===0?65532:null}, +bO(a,b){var s,r,q,p,o,n=this +if(n===b)return B.dX +if(A.K(b)!==A.K(n))return B.cd +s=n.a +r=s==null +q=b.a +if(r!==(q==null))return B.cd +t.a7.a(b) +if(!n.e.tz(0,b.e)||n.b!==b.b)return B.cd +if(!r){q.toString +p=s.bO(0,q) +o=p.a>0?p:B.dX +if(o===B.cd)return o}else o=B.dX +return o}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r===b)return!0 +if(J.ah(b)!==A.K(r))return!1 +if(!r.a_g(0,b))return!1 +s=!1 +if(b instanceof A.rt)if(b.e.tz(0,r.e))s=b.b===r.b +return s}, +gB(a){var s=this +return A.a4(A.k7.prototype.gB.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.aX1.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.gY(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.rt){q=B.b.gY(o.b) +p=q===0?0:q*o.c.a/q +m=o.a.a++ +o.d.push(new A.amv(a,new A.ck(A.cJ(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,new A.qv(m,"PlaceholderSpanIndexSemanticsTag("+m+")"),n,n,n,n,n),!1,!1,!1,!1,new A.ad_(a,p,a.e,n),n),n))}a.ahz(o) +if(r)o.b.pop() +return!0}, +$S:144} +A.amv.prototype={ +xG(a){var s=a.b +s.toString +t.tq.a(s).b=this.f}} +A.ad_.prototype={ +b6(a){var s=this.e +s=new A.T_(this.f,s.b,s.c,null,new A.bk(),A.aK()) +s.b5() +return s}, +b9(a,b){var s=this.e +b.siu(s.b) +b.smU(s.c) +b.slO(0,this.f)}} +A.T_.prototype={ +slO(a,b){if(b===this.A)return +this.A=b +this.ae()}, +siu(a){if(this.X===a)return +this.X=a +this.ae()}, +smU(a){return}, +bP(a){var s=this.H$ +s=s==null?null:s.aM(B.bC,a/this.A,s.gcM()) +if(s==null)s=0 +return s*this.A}, +bQ(a){var s=this.H$ +s=s==null?null:s.aM(B.aM,a/this.A,s.gcb()) +if(s==null)s=0 +return s*this.A}, +bT(a){var s=this.H$ +s=s==null?null:s.aM(B.bi,a/this.A,s.gcE()) +if(s==null)s=0 +return s*this.A}, +bU(a){var s=this.H$ +s=s==null?null:s.aM(B.bh,a/this.A,s.gcF()) +if(s==null)s=0 +return s*this.A}, +iw(a){var s=this.H$,r=s==null?null:s.my(a) +$label0$0:{if(r==null){s=this.Gq(a) +break $label0$0}s=this.A*r +break $label0$0}return s}, +fH(a,b){var s=this.H$,r=s==null?null:s.ii(new A.au(0,a.b/this.A,0,1/0),b) +return r==null?null:this.A*r}, +ds(a){var s=this.H$,r=s==null?null:s.aM(B.af,new A.au(0,a.b/this.A,0,1/0),s.gdD()) +if(r==null)r=B.V +return a.bD(r.ap(0,this.A))}, +ck(){var s,r=this,q=r.H$ +if(q==null)return +s=t.k +q.df(new A.au(0,s.a(A.G.prototype.gah.call(r)).b/r.A,0,1/0),!0) +r.id=s.a(A.G.prototype.gah.call(r)).bD(q.gv(0).ap(0,r.A))}, +er(a,b){var s=this.A +b.i2(0,s,s)}, +aT(a,b){var s,r,q,p=this,o=p.H$ +if(o==null){p.ch.sb0(0,null) +return}s=p.A +if(s===1){a.fa(o,b) +p.ch.sb0(0,null) +return}r=p.cx +r===$&&A.b() +q=p.ch +q.sb0(0,a.rV(r,b,A.C7(s,s,1),new A.bbZ(o),t.zV.a(q.a)))}, +dU(a,b){var s,r=this.H$ +if(r==null)return!1 +s=this.A +return a.Ch(new A.bbY(r),b,A.C7(s,s,1))}} +A.bbZ.prototype={ +$2(a,b){return a.fa(this.a,b)}, +$S:18} +A.bbY.prototype={ +$2(a,b){return this.a.dT(a,b)}, +$S:24} +A.any.prototype={ +aI(a){var s +this.eD(a) +s=this.H$ +if(s!=null)s.aI(a)}, +aB(a){var s +this.eE(0) +s=this.H$ +if(s!=null)s.aB(0)}} +A.dq.prototype={ +D(){return"WidgetState."+this.b}} +A.p0.prototype={$icg:1} +A.zJ.prototype={ +Z(a){return this.c.$1(a)}} +A.aaq.prototype={ +Kn(a){return this.Z(A.bn(t.g)).Kn(a)}, +$icg:1} +A.Rd.prototype={ +Z(a){if(a.p(0,B.L))return B.cg +return this.a}, +gKr(){return"WidgetStateMouseCursor("+this.c+")"}} +A.aap.prototype={$icg:1} +A.agI.prototype={ +Z(a){var s,r=this,q=r.a,p=q==null?null:q.Z(a) +q=r.b +s=q==null?null:q.Z(a) +q=p==null +if(q&&s==null)return null +if(q){q=s.a +return A.bF(new A.br(A.Y(0,q.gk(q)>>>16&255,q.gk(q)>>>8&255,q.gk(q)&255),0,B.I,-1),s,r.c)}if(s==null){q=p.a +return A.bF(p,new A.br(A.Y(0,q.gk(q)>>>16&255,q.gk(q)>>>8&255,q.gk(q)&255),0,B.I,-1),r.c)}return A.bF(p,s,r.c)}, +$icg:1} +A.rE.prototype={ +Z(a){return this.x.$1(a)}} +A.aar.prototype={$icg:1} +A.amw.prototype={ +Z(a){return this.bR.$1(a)}} +A.cg.prototype={} +A.RY.prototype={ +Z(a){var s,r=this,q=r.a,p=q==null?null:q.Z(a) +q=r.b +s=q==null?null:q.Z(a) +return r.d.$3(p,s,r.c)}, +$icg:1} +A.bQ.prototype={ +Z(a){return this.a.$1(a)}, +$icg:1} +A.bK.prototype={ +Z(a){return this.a}, +j(a){var s="WidgetStatePropertyAll(",r=this.a +if(typeof r=="number")return s+A.mq(r)+")" +else return s+A.c(r)+")"}, +$icg:1, +gk(a){return this.a}} +A.aas.prototype={ +fc(a,b,c){var s=this.a +if(c?J.dN(s,b):J.nW(s,b))this.T()}} +A.arm.prototype={ +aqF(a){var s=A.ej(null,t.ax) +this.c!==$&&A.d1() +this.c=new A.aWM(this.b,a.f,A.w(t.N,t.UL),s)}, +u3(a,b,c,d,e){return this.aI_(a,b,c,d,!0)}, +aI_(a2,a3,a4,a5,a6){var s=0,r=A.n(t.H),q=1,p,o=[],n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$u3=A.j(function(a7,a8){if(a7===1){p=a8 +s=q}while(true)switch(s){case 0:a4=a4 +a6=a6 +if(a4==null)a4=a3 +m=null +q=3 +s=6 +return A.f(n.b.zG(0,a4,!1),$async$u3) +case 6:m=a8 +if(m!=null){a2.q(0,m) +a6=!1}q=1 +s=5 +break +case 3:q=2 +a0=p +l=A.v(a0) +$.ap2() +A.c(l) +s=5 +break +case 2:s=1 +break +case 5:s=m==null||m.d.WT(new A.aS(Date.now(),0,!1))?7:8 +break +case 7:q=10 +h=n.c +h===$&&A.b() +g=a4 +if(g==null)g=a3 +f=h.c +e=f.h(0,g) +if(e==null){d=t.cL +c=new A.cd(null,null,t.jx) +b=new A.amA(B.oy) +e=new A.Hg(b,c,A.bH3(A.bFx(b,c,!1,d),!0,d),t.UL) +f.n(0,g,e) +h.tP(a3,g,a5)}h=new A.rw(A.ez(new A.vf(e,e.$ti.i("vf<1>")),"stream",t.K)) +q=13 +case 16:s=18 +return A.f(h.u(),$async$u3) +case 18:if(!a8){s=17 +break}k=h.gI(0) +if(k instanceof A.pI&&a6){f=k +d=a2.b +if(d>=4)A.V(a2.nv()) +if((d&1)!==0)a2.jk(f) +else if((d&3)===0){d=a2.wS() +f=new A.p3(f) +a=d.c +if(a==null)d.b=d.c=f +else{a.skV(0,f) +d.c=f}}}if(k instanceof A.tx){f=k +d=a2.b +if(d>=4)A.V(a2.nv()) +if((d&1)!==0)a2.jk(f) +else if((d&3)===0){d=a2.wS() +f=new A.p3(f) +a=d.c +if(a==null)d.b=d.c=f +else{a.skV(0,f) +d.c=f}}}s=16 +break +case 17:o.push(15) +s=14 +break +case 13:o=[10] +case 14:q=10 +s=19 +return A.f(h.S(0),$async$u3) +case 19:s=o.pop() +break +case 15:q=1 +s=12 +break +case 10:q=9 +a1=p +j=A.v(a1) +$.ap2() +A.c(j) +if(m==null&&(a2.b&1)!==0)a2.pd(j) +s=m!=null&&j instanceof A.JS&&j.c===404?20:21 +break +case 20:if((a2.b&1)!==0)a2.pd(j) +s=22 +return A.f(n.Ni(a4),$async$u3) +case 22:case 21:s=12 +break +case 9:s=1 +break +case 12:case 8:a2.L(0) +return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$u3,r)}, +Ni(a){return this.b_q(a)}, +b_q(a){var s=0,r=A.n(t.H),q=this +var $async$Ni=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=2 +return A.f(q.b.agM(a),$async$Ni) +case 2:return A.l(null,r)}}) +return A.m($async$Ni,r)}} +A.aud.prototype={} +A.aer.prototype={} +A.aCa.prototype={} +A.arn.prototype={ +zG(a,b,c){return this.aj0(0,b,!1)}, +aj0(a,b,c){var s=0,r=A.n(t.Zx),q,p=this,o,n +var $async$zG=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:s=3 +return A.f(p.EB(b,!1),$async$zG) +case 3:n=e +if(n==null){q=null +s=1 +break}s=4 +return A.f(p.d.r5(0,n.d),$async$zG) +case 4:o=e +$.ap2() +q=new A.tx(o,n.e) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$zG,r)}, +N7(a){return this.aZY(a)}, +aZY(a){var s=0,r=A.n(t.H),q=this +var $async$N7=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q.c.n(0,a.c,a) +s=2 +return A.f(q.BX(a),$async$N7) +case 2:return A.l(null,r)}}) +return A.m($async$N7,r)}, +EB(a,b){return this.b_S(a,!1)}, +agM(a){return this.EB(a,!1)}, +b_S(a,b){var s=0,r=A.n(t.Cq),q,p=this,o,n +var $async$EB=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:o=p.c +n=o.N(0,a) +s=n?3:4 +break +case 3:s=5 +return A.f(p.AU(o.h(0,a)),$async$EB) +case 5:if(d){q=o.h(0,a) +s=1 +break}case 4:o=p.b +if(!o.N(0,a)){n=new A.a_($.ab,t.EU) +p.x_(a).ak(new A.arq(p,a,new A.aq(n,t.It)),t.P) +o.n(0,a,n)}q=o.h(0,a) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$EB,r)}, +AU(a){return this.axs(a)}, +axs(a){var s=0,r=A.n(t.y),q,p=this +var $async$AU=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:if(a==null){q=!1 +s=1 +break}s=3 +return A.f(p.d.r5(0,a.d),$async$AU) +case 3:q=c.m9() +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$AU,r)}, +x_(a){return this.ayd(a)}, +ayd(a){var s=0,r=A.n(t.Cq),q,p=this,o +var $async$x_=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=3 +return A.f(p.f,$async$x_) +case 3:s=4 +return A.f(A.c7(null,t.Cq),$async$x_) +case 4:o=c +s=5 +return A.f(p.AU(o),$async$x_) +case 5:if(c){o.toString +p.BX(o)}p.aJn() +q=o +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$x_,r)}, +aJn(){if(this.w!=null)return +this.w=A.bZ(B.ZL,new A.aro(this))}, +BX(a){return this.aMy(a)}, +aMy(a){var s=0,r=A.n(t.z),q,p=this +var $async$BX=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=3 +return A.f(p.f,$async$BX) +case 3:q=A.c7(null,t.z) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$BX,r)}, +tI(){var s=0,r=A.n(t.H),q=this,p,o,n,m,l +var $async$tI=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:m=A.a([],t.t) +s=2 +return A.f(q.f,$async$tI) +case 2:p=t.Cs +o=t.a6 +l=J +s=3 +return A.f(A.c7(A.a([],p),o),$async$tI) +case 3:n=l.ay(b) +case 4:if(!n.u()){s=5 +break}q.xg(n.gI(n),m) +s=4 +break +case 5:l=J +s=6 +return A.f(A.c7(A.a([],p),o),$async$tI) +case 6:p=l.ay(b) +case 7:if(!p.u()){s=8 +break}q.xg(p.gI(p),m) +s=7 +break +case 8:s=9 +return A.f(A.c7(m.length,t.S),$async$tI) +case 9:return A.l(null,r)}}) +return A.m($async$tI,r)}, +xg(a,b){return this.aIv(a,b)}, +aIv(a,b){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$xg=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:j=a.a +if(B.b.p(b,j)){s=1 +break}j.toString +b.push(j) +j=n.c +l=a.c +if(j.N(0,l))j.C(0,l) +j=n.b +s=j.N(0,l)?3:4 +break +case 3:j=j.C(0,l) +s=5 +return A.f(t.lC.b(j)?j:A.en(j,t.Cq),$async$xg) +case 5:case 4:m=A.Bi(a.d) +s=m.KY()?6:7 +break +case 6:p=9 +s=12 +return A.f(J.bEB(m),$async$xg) +case 12:p=2 +s=11 +break +case 9:p=8 +i=o +if(!(A.v(i) instanceof A.CL))throw i +s=11 +break +case 8:s=2 +break +case 11:case 7:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$xg,r)}} +A.arp.prototype={ +$1(a){return this.a.a}, +$S:639} +A.arq.prototype={ +$1(a){return this.ai4(a)}, +ai4(a){var s=0,r=A.n(t.P),q=this,p,o,n +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=q.a +o=q.b +n=p.c +if(a==null)n.C(0,o) +else n.n(0,o,a) +q.c.bv(0,a) +p.b.C(0,o) +return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:640} +A.aro.prototype={ +$0(){var s=this.a +s.w=null +s.tI()}, +$S:0} +A.asy.prototype={} +A.arl.prototype={} +A.pI.prototype={ +gafT(){var s=this.b +if(s==null||this.c>s)return null +s.toString +return this.c/s}} +A.tx.prototype={} +A.mM.prototype={} +A.a4Z.prototype={ +L(a){var s=0,r=A.n(t.y),q +var $async$L=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=!0 +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$L,r)}, +vs(a){var s=0,r=A.n(t.y),q +var $async$vs=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=!0 +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$vs,r)}, +$iark:1} +A.lD.prototype={ +Vl(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.brk(r,o,s.a,s.c,n,q,s.w,p)}, +aQr(a){var s=null +return this.Vl(s,s,s,s,a,s)}, +aQI(a,b,c){return this.Vl(a,null,null,b,null,c)}, +aQl(a){var s=null +return this.Vl(s,s,a,s,s,s)}, +gt(a){return this.r}} +A.aIf.prototype={ +r5(a,b){return this.aQX(0,b)}, +aQX(a,b){var s=0,r=A.n(t.f8),q,p=this,o,n +var $async$r5=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:s=3 +return A.f(p.a,$async$r5) +case 3:o=d +n=o.a +q=new A.L4(n,n.Z3(n.c.WZ(0,o.b,b))) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$r5,r)}} +A.azc.prototype={} +A.aBR.prototype={ +F3(a,b,c){return this.aiD(0,b,c)}, +aiD(a,b,c){var s=0,r=A.n(t.nZ),q,p=this,o,n +var $async$F3=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:n=A.bvv("GET",A.f1(b)) +n.r.G(0,c) +s=3 +return A.f(p.b.fm(0,n),$async$F3) +case 3:o=e +A.bpb() +q=new A.a0Y(A.bk4(),o) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$F3,r)}} +A.a0Y.prototype={ +gZU(a){return this.b.b}, +gb12(){var s,r,q,p,o,n,m=this.b.e.h(0,"cache-control") +if(m!=null){s=m.split(",") +for(r=s.length,q=B.wJ,p=0;p0)q=new A.bj(1e6*n)}}}else q=B.wJ +return this.a.a0v(q.a)}, +$ibt0:1} +A.a6p.prototype={} +A.aWM.prototype={ +tP(a,b,c){return this.awx(a,b,c)}, +awx(a,a0,a1){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b +var $async$tP=A.j(function(a2,a3){if(a2===1){o=a3 +s=p}while(true)switch(s){case 0:c=m.e +if(c>=10){m.d.f0(0,new A.a6p(a,a0,a1)) +s=1 +break}$.ap2() +m.e=c+1 +c=m.c +h=c.h(0,a0) +h.toString +l=h +p=4 +h=new A.rw(A.ez(m.xy(a,a0,a1),"stream",t.K)) +p=7 +case 10:s=12 +return A.f(h.u(),$async$tP) +case 12:if(!a3){s=11 +break}k=h.gI(0) +g=l +f=k +if(g.c)A.V(A.a1(u.bW)) +e=g.b +if((e.c&4)===0){g=g.e +g.b=f +g.a=!0}if(!e.gnz())A.V(e.ns()) +e.jk(f) +s=10 +break +case 11:n.push(9) +s=8 +break +case 7:n=[4] +case 8:p=4 +s=13 +return A.f(h.S(0),$async$tP) +case 13:s=n.pop() +break +case 9:n.push(6) +s=5 +break +case 4:p=3 +b=o +j=A.v(b) +i=A.aT(b) +l.cX(j,i) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2;--m.e +s=14 +return A.f(J.A0(l),$async$tP) +case 14:c.C(0,a0) +m.atY() +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$tP,r)}, +atY(){var s,r=this.d +if(r.b===r.c)return +s=r.om() +this.tP(s.a,s.b,s.c)}, +xy(a,b,c){return this.aMC(a,b,c)}, +aMC(a,b,c){var $async$xy=A.j(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.j9(m.a.agM(b),$async$xy,r) +case 3:k=e +if(k==null){A.bpb() +l=A.bk4() +k=A.brk(a,null,null,b,null,B.Pw.aht()+".file",null,l)}else k=k.aQr(a) +l=t.N +j=k +s=5 +return A.j9(m.b.F3(0,k.b,A.w(l,l)),$async$xy,r) +case 5:s=4 +q=[1] +return A.j9(A.bQ9(m.qH(j,e)),$async$xy,r) +case 4:case 1:return A.j9(null,0,r) +case 2:return A.j9(o,1,r)}}) +var s=0,r=A.bp1($async$xy,t.cL),q,p=2,o,n=[],m=this,l,k,j +return A.bp4(r)}, +qH(a,b){return this.aEH(a,b)}, +aEH(a4,a5){var $async$qH=A.j(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.yk,a0) +a2=B.b.p(B.yx,a0) +if(!a1&&!a2)throw A.d(new A.JS(a5.gZU(0),"Invalid statusCode: "+a5.gZU(0),A.f1(a4.b))) +j=a.e +i=j.h(0,"content-type") +if(i!=null){h=A.bPp(i) +g=B.aeO.h(0,h.d+"/"+h.e) +if(g==null)g="."+h.e}else g="" +f=a4.d +if(!B.b.p(B.yx,a0)){if(!B.c.bF(f,g))m.u6(f) +f=B.Pw.aht()+g}e=a5.gb12() +d=b.a=a4.aQI(j.h(0,"etag"),f,e) +s=B.b.p(B.yk,a0)?3:5 +break +case 3:l=0 +c=A.i9(null,null,null,null,!1,t.S) +m.xm(c,d,a5) +a0=new A.rw(A.ez(new A.cA(c,A.y(c).i("cA<1>")),"stream",t.K)) +p=6 +a=a.d +case 9:s=11 +return A.j9(a0.u(),$async$qH,r) +case 11:if(!a7){s=10 +break}k=a0.gI(0) +l=k +s=12 +q=[1,7] +return A.j9(A.bor(new A.pI(a,k)),$async$qH,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.j9(a0.S(0),$async$qH,r) +case 13:s=n.pop() +break +case 8:a=b.a=b.a.aQl(l) +s=4 +break +case 5:a=d +case 4:a0=m.a +a0.N7(a).ak(new A.aWN(b,m,a4),t.P) +a3=A +s=15 +return A.j9(a0.d.r5(0,b.a.d),$async$qH,r) +case 15:s=14 +q=[1] +return A.j9(A.bor(new a3.tx(a7,b.a.e)),$async$qH,r) +case 14:case 1:return A.j9(null,0,r) +case 2:return A.j9(o,1,r)}}) +var s=0,r=A.bp1($async$qH,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.bp4(r)}, +xm(a,b,c){return this.aJj(a,b,c)}, +aJj(a,b,c){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j,i,h,g +var $async$xm=A.j(function(d,e){if(d===1){p=e +s=q}while(true)switch(s){case 0:i={} +s=2 +return A.f(o.a.d.r5(0,b.d),$async$xm) +case 2:h=e +q=4 +i.a=0 +k=h +k.a.d.$2(k.b,B.a0w) +n=A.bPM(k,B.lt,B.a5) +k=c.b.w +s=7 +return A.f(new A.jP(new A.aWO(i,a),k,A.y(k).i("jP>")).aZn(n),$async$xm) +case 7:q=1 +s=6 +break +case 4:q=3 +g=p +m=A.v(g) +l=A.aT(g) +a.cX(m,l) +s=6 +break +case 3:s=1 +break +case 6:s=8 +return A.f(a.L(0),$async$xm) +case 8:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$xm,r)}, +u6(a){return this.aIz(a)}, +aIz(a){var s=0,r=A.n(t.H),q=this,p +var $async$u6=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=2 +return A.f(q.a.d.r5(0,a),$async$u6) +case 2:p=c +s=5 +return A.f(p.m9(),$async$u6) +case 5:s=c?3:4 +break +case 3:s=6 +return A.f(p.Kt(0),$async$u6) +case 6:case 4:return A.l(null,r)}}) +return A.m($async$u6,r)}} +A.aWN.prototype={ +$1(a){var s=this.c.d +if(this.a.a.d!==s)this.b.u6(s)}, +$S:20} +A.aWO.prototype={ +$1(a){var s=this.a,r=s.a+J.aM(a) +s.a=r +this.b.q(0,r) +return a}, +$S:641} +A.JS.prototype={} +A.azF.prototype={} +A.aVe.prototype={ +abu(a,b,c,d,e,f,g,h,i,j){throw A.d(A.cE(null))}, +abv(a,b,c,d,e,f,g,h,i){throw A.d(A.cE(null))}} +A.asw.prototype={ +D(){return"CompressFormat."+this.b}} +A.azG.prototype={ +abu(a,b,c,d,e,f,g,h,i,j){throw A.d(A.cE("The method not support web"))}, +abv(a,b,c,d,e,f,g,h,i){return A.bjW(a,c,f,g,h)}} +A.a0B.prototype={$iaJ:1} +A.afS.prototype={ +vj(a){return $.bqu().p(0,a.gda(0))}, +iC(a,b){return $.bPU.cP(0,b,new A.b54(b))}, +tu(a){return!1}, +j(a){return"GlobalCupertinoLocalizations.delegate("+$.bqu().a+" locales)"}} +A.b54.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j,i +A.bAa() +s=this.a +r=A.Gn(s.u4("_")) +q=A.bu("fullYearFormat") +p=A.bu("dayFormat") +o=A.bu("mediumDateFormat") +n=A.bu("singleDigitHourFormat") +m=A.bu("singleDigitMinuteFormat") +l=A.bu("doubleDigitMinuteFormat") +k=A.bu("singleDigitSecondFormat") +j=A.bu("decimalFormat") +i=new A.b55(q,p,o,n,m,l,k,j) +if(A.ZO(r))i.$1(r) +else if(A.ZO(s.gda(0)))i.$1(s.gda(0)) +else i.$1(null) +s=A.bVT(s,q.b2(),p.b2(),o.b2(),n.b2(),m.b2(),l.b2(),k.b2(),j.b2()) +s.toString +return new A.cv(s,t.Vr)}, +$S:642} +A.b55.prototype={ +$1(a){var s=this +s.a.b=A.au4(a) +s.b.b=A.bGP(a) +s.c.b=A.au3(a) +s.d.b=A.brU("HH",a) +s.e.b=A.bGQ(a) +s.f.b=A.brU("mm",a) +s.r.b=A.bGR(a) +s.w.b=A.aKD(a)}, +$S:183} +A.XQ.prototype={ +ga6(){return"Kopieer"}, +ga7(){return"Knip"}, +gO(){return"Kyk op"}, +ga8(){return"Plak"}, +ga5(){return"Deursoek web"}, +ga1(){return"Kies alles"}, +gP(){return"Deel \u2026"}} +A.XR.prototype={ +ga6(){return"\u1245\u12f3"}, +ga7(){return"\u1241\u1228\u1325"}, +gO(){return"\u12ed\u1218\u120d\u12a8\u1271"}, +ga8(){return"\u1208\u1325\u134d"}, +ga5(){return"\u12f5\u122d\u1295 \u1348\u120d\u130d"}, +ga1(){return"\u1201\u1209\u1295\u121d \u121d\u1228\u1325"}, +gP(){return"\u12a0\u130b\u122b..."}} +A.XS.prototype={ +ga6(){return"\u0646\u0633\u062e"}, +ga7(){return"\u0642\u0635"}, +gO(){return"\u0627\u0644\u0646\u0638\u0631 \u0625\u0644\u0649 \u0623\u0639\u0644\u0649"}, +ga8(){return"\u0644\u0635\u0642"}, +ga5(){return"\u0627\u0644\u0628\u062d\u062b \u0639\u0644\u0649 \u0627\u0644\u0648\u064a\u0628"}, +ga1(){return"\u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0643\u0644"}, +gP(){return"\u0645\u0634\u0627\u0631\u0643\u0629\u2026"}} +A.XT.prototype={ +ga6(){return"\u09aa\u09cd\u09f0\u09a4\u09bf\u09b2\u09bf\u09aa\u09bf \u0995\u09f0\u0995"}, +ga7(){return"\u0995\u09be\u099f \u0995\u09f0\u0995"}, +gO(){return"\u0993\u09aa\u09f0\u09b2\u09c8 \u099a\u09be\u0993\u0995"}, +ga8(){return"\u09aa\u09c7'\u09b7\u09cd\u099f \u0995\u09f0\u0995"}, +ga5(){return"\u09f1\u09c7\u09ac\u09a4 \u09b8\u09a8\u09cd\u09a7\u09be\u09a8 \u0995\u09f0\u0995"}, +ga1(){return"\u09b8\u0995\u09b2\u09cb \u09ac\u09be\u099b\u09a8\u09bf \u0995\u09f0\u0995"}, +gP(){return"\u09b6\u09cd\u09ac\u09c7\u09df\u09be\u09f0 \u0995\u09f0\u0995\u2026"}} +A.XU.prototype={ +ga6(){return"Kopyalay\u0131n"}, +ga7(){return"K\u0259sin"}, +gO(){return"Axtar\u0131n"}, +ga8(){return"Yerl\u0259\u015fdirin"}, +ga5(){return"Vebd\u0259 axtar\u0131n"}, +ga1(){return"Ham\u0131s\u0131n\u0131 se\xe7in"}, +gP(){return"Payla\u015f\u0131n..."}} +A.XV.prototype={ +ga6(){return"\u041a\u0430\u043f\u0456\u0440\u0430\u0432\u0430\u0446\u044c"}, +ga7(){return"\u0412\u044b\u0440\u0430\u0437\u0430\u0446\u044c"}, +gO(){return"\u0417\u043d\u0430\u0439\u0441\u0446\u0456"}, +ga8(){return"\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c"}, +ga5(){return"\u041f\u043e\u0448\u0443\u043a \u0443 \u0441\u0435\u0442\u0446\u044b"}, +ga1(){return"\u0412\u044b\u0431\u0440\u0430\u0446\u044c \u0443\u0441\u0435"}, +gP(){return"\u0410\u0431\u0430\u0433\u0443\u043b\u0456\u0446\u044c..."}} +A.XW.prototype={ +ga6(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u043d\u0435"}, +ga7(){return"\u0418\u0437\u0440\u044f\u0437\u0432\u0430\u043d\u0435"}, +gO(){return"Look Up"}, +ga8(){return"\u041f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435"}, +ga5(){return"\u0422\u044a\u0440\u0441\u0435\u043d\u0435 \u0432 \u043c\u0440\u0435\u0436\u0430\u0442\u0430"}, +ga1(){return"\u0418\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u0438"}, +gP(){return"\u0421\u043f\u043e\u0434\u0435\u043b\u044f\u043d\u0435..."}} +A.XX.prototype={ +ga6(){return"\u0995\u09aa\u09bf \u0995\u09b0\u09c1\u09a8"}, +ga7(){return"\u0995\u09be\u099f \u0995\u09b0\u09c1\u09a8"}, +gO(){return"\u09b2\u09c1\u0995-\u0986\u09aa"}, +ga8(){return"\u09aa\u09c7\u09b8\u09cd\u099f \u0995\u09b0\u09c1\u09a8"}, +ga5(){return"\u0993\u09df\u09c7\u09ac\u09c7 \u09b8\u09be\u09b0\u09cd\u099a \u0995\u09b0\u09c1\u09a8"}, +ga1(){return"\u09b8\u09ac \u09ac\u09c7\u099b\u09c7 \u09a8\u09bf\u09a8"}, +gP(){return"\u09b6\u09c7\u09df\u09be\u09b0 \u0995\u09b0\u09c1\u09a8..."}} +A.XY.prototype={ +ga6(){return"Kopiraj"}, +ga7(){return"Izre\u017ei"}, +gO(){return"Pogled nagore"}, +ga8(){return"Zalijepi"}, +ga5(){return"Pretra\u017ei Web"}, +ga1(){return"Odaberi sve"}, +gP(){return"Dijeli..."}} +A.XZ.prototype={ +ga6(){return"Copia"}, +ga7(){return"Retalla"}, +gO(){return"Mira amunt"}, +ga8(){return"Enganxa"}, +ga5(){return"Cerca al web"}, +ga1(){return"Seleccionar-ho tot"}, +gP(){return"Comparteix..."}} +A.Y_.prototype={ +ga6(){return"Kop\xedrovat"}, +ga7(){return"Vyjmout"}, +gO(){return"Vyhledat"}, +ga8(){return"Vlo\u017eit"}, +ga5(){return"Vyhled\xe1vat na webu"}, +ga1(){return"Vybrat v\u0161e"}, +gP(){return"Sd\xedlet\u2026"}} +A.Y0.prototype={ +ga6(){return"Cop\xefo"}, +ga7(){return"Torri"}, +gO(){return"Chwilio"}, +ga8(){return"Gludo"}, +ga5(){return"Chwilio'r We"}, +ga1(){return"Dewis y Cyfan"}, +gP(){return"Rhannu..."}} +A.Y1.prototype={ +ga6(){return"Kopi\xe9r"}, +ga7(){return"Klip"}, +gO(){return"Sl\xe5 op"}, +ga8(){return"Inds\xe6t"}, +ga5(){return"S\xf8g p\xe5 nettet"}, +ga1(){return"V\xe6lg alt"}, +gP(){return"Del\u2026"}} +A.HV.prototype={ +ga6(){return"Kopieren"}, +ga7(){return"Ausschneiden"}, +gO(){return"Nachschlagen"}, +ga8(){return"Einsetzen"}, +ga5(){return"Im Web suchen"}, +ga1(){return"Alle ausw\xe4hlen"}, +gP(){return"Teilen\u2026"}} +A.Y2.prototype={ +ga1(){return"Alles ausw\xe4hlen"}} +A.Y3.prototype={ +ga6(){return"\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae"}, +ga7(){return"\u0391\u03c0\u03bf\u03ba\u03bf\u03c0\u03ae"}, +gO(){return"Look Up"}, +ga8(){return"\u0395\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7"}, +ga5(){return"\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7 \u03c3\u03c4\u03bf\u03bd \u03b9\u03c3\u03c4\u03cc"}, +ga1(){return"\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae \u03cc\u03bb\u03c9\u03bd"}, +gP(){return"\u039a\u03bf\u03b9\u03bd\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u2026"}} +A.HW.prototype={ +ga6(){return"Copy"}, +ga7(){return"Cut"}, +gO(){return"Look Up"}, +ga8(){return"Paste"}, +ga5(){return"Search Web"}, +ga1(){return"Select All"}, +gP(){return"Share..."}} +A.Y4.prototype={ +gO(){return"Look up"}, +ga1(){return"Select all"}} +A.Y5.prototype={ +ga1(){return"Select all"}} +A.Y6.prototype={ +gO(){return"Look up"}, +ga1(){return"Select all"}} +A.Y7.prototype={ +gO(){return"Look up"}, +ga1(){return"Select all"}} +A.Y8.prototype={ +gO(){return"Look up"}, +ga1(){return"Select all"}} +A.Y9.prototype={ +gO(){return"Look up"}, +ga1(){return"Select all"}} +A.Ya.prototype={ +gO(){return"Look up"}, +ga1(){return"Select all"}} +A.Yb.prototype={ +gO(){return"Look up"}, +ga1(){return"Select all"}} +A.HX.prototype={ +ga6(){return"Copiar"}, +ga7(){return"Cortar"}, +gO(){return"Buscador visual"}, +ga8(){return"Pegar"}, +ga5(){return"Buscar en la Web"}, +ga1(){return"Seleccionar todo"}, +gP(){return"Compartir..."}} +A.Yc.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yd.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Ye.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yf.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yg.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yh.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yi.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yj.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yk.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yl.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Ym.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yn.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yo.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yp.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yq.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yr.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Ys.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yt.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yu.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yv.prototype={ +gP(){return"Compartir\u2026"}, +gO(){return"Mirar hacia arriba"}} +A.Yw.prototype={ +ga6(){return"Kopeeri"}, +ga7(){return"L\xf5ika"}, +gO(){return"Look Up"}, +ga8(){return"Kleebi"}, +ga5(){return"Otsi veebist"}, +ga1(){return"Vali k\xf5ik"}, +gP(){return"Jaga \u2026"}} +A.Yx.prototype={ +ga6(){return"Kopiatu"}, +ga7(){return"Ebaki"}, +gO(){return"Bilatu"}, +ga8(){return"Itsatsi"}, +ga5(){return"Bilatu sarean"}, +ga1(){return"Hautatu dena"}, +gP(){return"Partekatu..."}} +A.Yy.prototype={ +ga6(){return"\u06a9\u067e\u06cc"}, +ga7(){return"\u0628\u0631\u0634"}, +gO(){return"\u062c\u0633\u062a\u062c\u0648"}, +ga8(){return"\u062c\u0627\u06cc\u200c\u06af\u0630\u0627\u0631\u06cc"}, +ga5(){return"\u062c\u0633\u062a\u062c\u0648 \u062f\u0631 \u0648\u0628"}, +ga1(){return"\u0627\u0646\u062a\u062e\u0627\u0628 \u0647\u0645\u0647"}, +gP(){return"\u0647\u0645\u200c\u0631\u0633\u0627\u0646\u06cc\u2026"}} +A.Yz.prototype={ +ga6(){return"Kopioi"}, +ga7(){return"Leikkaa"}, +gO(){return"Hae"}, +ga8(){return"Liit\xe4"}, +ga5(){return"Hae verkosta"}, +ga1(){return"Valitse kaikki"}, +gP(){return"Jaa\u2026"}} +A.YA.prototype={ +ga6(){return"Kopyahin"}, +ga7(){return"I-cut"}, +gO(){return"Tumingin sa Itaas"}, +ga8(){return"I-paste"}, +ga5(){return"Maghanap sa Web"}, +ga1(){return"Piliin Lahat"}, +gP(){return"Ibahagi..."}} +A.HY.prototype={ +ga6(){return"Copier"}, +ga7(){return"Couper"}, +gO(){return"Recherche visuelle"}, +ga8(){return"Coller"}, +ga5(){return"Rechercher sur le Web"}, +ga1(){return"Tout s\xe9lectionner"}, +gP(){return"Partager\u2026"}} +A.YB.prototype={ +gO(){return"Regarder en haut"}} +A.YC.prototype={ +ga6(){return"Copiar"}, +ga7(){return"Cortar"}, +gO(){return"Mirar cara arriba"}, +ga8(){return"Pegar"}, +ga5(){return"Buscar na Web"}, +ga1(){return"Seleccionar todo"}, +gP(){return"Compartir\u2026"}} +A.YD.prototype={ +ga6(){return"Kopieren"}, +ga7(){return"Ausschneiden"}, +gO(){return"Nachschlagen"}, +ga8(){return"Einsetzen"}, +ga5(){return"Im Web suchen"}, +ga1(){return"Alle ausw\xe4hlen"}, +gP(){return"Teilen\u2026"}} +A.YE.prototype={ +ga6(){return"\u0a95\u0ac9\u0aaa\u0abf \u0a95\u0ab0\u0acb"}, +ga7(){return"\u0a95\u0abe\u0aaa\u0acb"}, +gO(){return"\u0ab6\u0acb\u0aa7\u0acb"}, +ga8(){return"\u0aaa\u0ac7\u0ab8\u0acd\u0a9f \u0a95\u0ab0\u0acb"}, +ga5(){return"\u0ab5\u0ac7\u0aac \u0aaa\u0ab0 \u0ab6\u0acb\u0aa7\u0acb"}, +ga1(){return"\u0aac\u0aa7\u0abe \u0aaa\u0ab8\u0a82\u0aa6 \u0a95\u0ab0\u0acb"}, +gP(){return"\u0ab6\u0ac7\u0ab0 \u0a95\u0ab0\u0acb\u2026"}} +A.YF.prototype={ +ga6(){return"\u05d4\u05e2\u05ea\u05e7\u05d4"}, +ga7(){return"\u05d2\u05d6\u05d9\u05e8\u05d4"}, +gO(){return"\u05d7\u05d9\u05e4\u05d5\u05e9"}, +ga8(){return"\u05d4\u05d3\u05d1\u05e7\u05d4"}, +ga5(){return"\u05d7\u05d9\u05e4\u05d5\u05e9 \u05d1\u05d0\u05d9\u05e0\u05d8\u05e8\u05e0\u05d8"}, +ga1(){return"\u05d1\u05d7\u05d9\u05e8\u05ea \u05d4\u05db\u05d5\u05dc"}, +gP(){return"\u05e9\u05d9\u05ea\u05d5\u05e3\u2026"}} +A.YG.prototype={ +ga6(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u0947\u0902"}, +ga7(){return"\u0915\u093e\u091f\u0947\u0902"}, +gO(){return"\u0932\u0941\u0915 \u0905\u092a \u092c\u091f\u0928"}, +ga8(){return"\u091a\u093f\u092a\u0915\u093e\u090f\u0902"}, +ga5(){return"\u0935\u0947\u092c \u092a\u0930 \u0916\u094b\u091c\u0947\u0902"}, +ga1(){return"\u0938\u092d\u0940 \u091a\u0941\u0928\u0947\u0902"}, +gP(){return"\u0936\u0947\u092f\u0930 \u0915\u0930\u0947\u0902\u2026"}} +A.YH.prototype={ +ga6(){return"Kopiraj"}, +ga7(){return"Izre\u017ei"}, +gO(){return"Pogled prema gore"}, +ga8(){return"Zalijepi"}, +ga5(){return"Pretra\u017ei web"}, +ga1(){return"Odaberi sve"}, +gP(){return"Dijeli..."}} +A.YI.prototype={ +ga6(){return"M\xe1sol\xe1s"}, +ga7(){return"Kiv\xe1g\xe1s"}, +gO(){return"Felfel\xe9 n\xe9z\xe9s"}, +ga8(){return"Beilleszt\xe9s"}, +ga5(){return"Keres\xe9s az interneten"}, +ga1(){return"\xd6sszes kijel\xf6l\xe9se"}, +gP(){return"Megoszt\xe1s\u2026"}} +A.YJ.prototype={ +ga6(){return"\u054a\u0561\u057f\u0573\u0565\u0576\u0565\u056c"}, +ga7(){return"\u053f\u057f\u0580\u0565\u056c"}, +gO(){return"\u0553\u0576\u057f\u0580\u0565\u056c"}, +ga8(){return"\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c"}, +ga5(){return"\u0548\u0580\u0578\u0576\u0565\u056c \u0570\u0561\u0574\u0561\u0581\u0561\u0576\u0581\u0578\u0582\u0574"}, +ga1(){return"\u0546\u0577\u0565\u056c \u0562\u0578\u056c\u0578\u0580\u0568"}, +gP(){return"\u053f\u056b\u057d\u057e\u0565\u056c..."}} +A.YK.prototype={ +ga6(){return"Salin"}, +ga7(){return"Potong"}, +gO(){return"Cari"}, +ga8(){return"Tempel"}, +ga5(){return"Telusuri di Web"}, +ga1(){return"Pilih Semua"}, +gP(){return"Bagikan..."}} +A.YL.prototype={ +ga6(){return"Afrita"}, +ga7(){return"Klippa"}, +gO(){return"Look Up"}, +ga8(){return"L\xedma"}, +ga5(){return"Leita \xe1 vefnum"}, +ga1(){return"Velja allt"}, +gP(){return"Deila..."}} +A.YM.prototype={ +ga6(){return"Copia"}, +ga7(){return"Taglia"}, +gO(){return"Cerca"}, +ga8(){return"Incolla"}, +ga5(){return"Cerca sul web"}, +ga1(){return"Seleziona tutto"}, +gP(){return"Condividi\u2026"}} +A.YN.prototype={ +ga6(){return"\u30b3\u30d4\u30fc"}, +ga7(){return"\u5207\u308a\u53d6\u308a"}, +gO(){return"\u8abf\u3079\u308b"}, +ga8(){return"\u8cbc\u308a\u4ed8\u3051"}, +ga5(){return"\u30a6\u30a7\u30d6\u3092\u691c\u7d22"}, +ga1(){return"\u3059\u3079\u3066\u3092\u9078\u629e"}, +gP(){return"\u5171\u6709..."}} +A.YO.prototype={ +ga6(){return"\u10d9\u10dd\u10de\u10d8\u10e0\u10d4\u10d1\u10d0"}, +ga7(){return"\u10d0\u10db\u10dd\u10ed\u10e0\u10d0"}, +gO(){return"\u10d0\u10d8\u10ee\u10d4\u10d3\u10d4\u10d7 \u10d6\u10d4\u10db\u10dd\u10d7"}, +ga8(){return"\u10e9\u10d0\u10e1\u10db\u10d0"}, +ga5(){return"\u10d5\u10d4\u10d1\u10e8\u10d8 \u10eb\u10d8\u10d4\u10d1\u10d0"}, +ga1(){return"\u10e7\u10d5\u10d4\u10da\u10d0\u10e1 \u10d0\u10e0\u10e9\u10d4\u10d5\u10d0"}, +gP(){return"\u10d2\u10d0\u10d6\u10d8\u10d0\u10e0\u10d4\u10d1\u10d0..."}} +A.YP.prototype={ +ga6(){return"\u041a\u04e9\u0448\u0456\u0440\u0443"}, +ga7(){return"\u049a\u0438\u044e"}, +gO(){return"\u0406\u0437\u0434\u0435\u0443"}, +ga8(){return"\u049a\u043e\u044e"}, +ga5(){return"\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0442\u0435\u043d \u0456\u0437\u0434\u0435\u0443"}, +ga1(){return"\u0411\u0430\u0440\u043b\u044b\u0493\u044b\u043d \u0442\u0430\u04a3\u0434\u0430\u0443"}, +gP(){return"\u0411\u04e9\u043b\u0456\u0441\u0443\u2026"}} +A.YQ.prototype={ +ga6(){return"\u1785\u1798\u17d2\u179b\u1784"}, +ga7(){return"\u1780\u17b6\u178f\u17cb"}, +gO(){return"\u179a\u1780\u1798\u17be\u179b"}, +ga8(){return"\u178a\u17b6\u1780\u17cb\u200b\u1785\u17bc\u179b"}, +ga5(){return"\u179f\u17d2\u179c\u17c2\u1784\u179a\u1780\u200b\u179b\u17be\u1794\u178e\u17d2\u178a\u17b6\u1789"}, +ga1(){return"\u1787\u17d2\u179a\u17be\u179f\u179a\u17be\u179f\u200b\u1791\u17b6\u17c6\u1784\u17a2\u179f\u17cb"}, +gP(){return"\u1785\u17c2\u1780\u179a\u17c6\u179b\u17c2\u1780..."}} +A.YR.prototype={ +ga6(){return"\u0ca8\u0c95\u0cb2\u0cbf\u0cb8\u0cbf"}, +ga7(){return"\u0c95\u0ca4\u0ccd\u0ca4\u0cb0\u0cbf\u0cb8\u0cbf"}, +gO(){return"\u0cae\u0cc7\u0cb2\u0cc6 \u0ca8\u0ccb\u0ca1\u0cbf"}, +ga8(){return"\u0c85\u0c82\u0c9f\u0cbf\u0cb8\u0cbf"}, +ga5(){return"\u0cb5\u0cc6\u0cac\u0ccd\u200c\u0ca8\u0cb2\u0ccd\u0cb2\u0cbf \u0cb9\u0cc1\u0ca1\u0cc1\u0c95\u0cbf"}, +ga1(){return"\u0c8e\u0cb2\u0ccd\u0cb2\u0cb5\u0ca8\u0ccd\u0ca8\u0cc2 \u0c86\u0caf\u0ccd\u0c95\u0cc6\u0cae\u0cbe\u0ca1\u0cbf"}, +gP(){return"\u0cb9\u0c82\u0c9a\u0cbf\u0c95\u0cca\u0cb3\u0ccd\u0cb3\u0cbf..."}} +A.YS.prototype={ +ga6(){return"\ubcf5\uc0ac"}, +ga7(){return"\uc798\ub77c\ub0c4"}, +gO(){return"\ucc3e\uae30"}, +ga8(){return"\ubd99\uc5ec\ub123\uae30"}, +ga5(){return"\uc6f9 \uac80\uc0c9"}, +ga1(){return"\uc804\uccb4 \uc120\ud0dd"}, +gP(){return"\uacf5\uc720..."}} +A.YT.prototype={ +ga6(){return"\u041a\u04e9\u0447\u04af\u0440\u04af\u04af"}, +ga7(){return"\u041a\u0435\u0441\u04af\u04af"}, +gO(){return"\u0418\u0437\u0434\u04e9\u04e9"}, +ga8(){return"\u0427\u0430\u043f\u0442\u043e\u043e"}, +ga5(){return"\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0442\u0435\u043d \u0438\u0437\u0434\u04e9\u04e9"}, +ga1(){return"\u0411\u0430\u0430\u0440\u044b\u043d \u0442\u0430\u043d\u0434\u043e\u043e"}, +gP(){return"\u0411\u04e9\u043b\u04af\u0448\u04af\u04af\u2026"}} +A.YU.prototype={ +ga6(){return"\u0eaa\u0eb3\u0ec0\u0e99\u0ebb\u0eb2"}, +ga7(){return"\u0e95\u0eb1\u0e94"}, +gO(){return"\u0e8a\u0ead\u0e81\u0eab\u0eb2\u0e82\u0ecd\u0ec9\u0ea1\u0eb9\u0e99"}, +ga8(){return"\u0ea7\u0eb2\u0e87"}, +ga5(){return"\u0e8a\u0ead\u0e81\u0eab\u0eb2\u0ea2\u0eb9\u0ec8\u0ead\u0eb4\u0e99\u0ec0\u0e95\u0eb5\u0ec0\u0e99\u0eb1\u0e94"}, +ga1(){return"\u0ec0\u0ea5\u0eb7\u0ead\u0e81\u0e97\u0eb1\u0e87\u0edd\u0ebb\u0e94"}, +gP(){return"\u0ec1\u0e9a\u0ec8\u0e87\u0e9b\u0eb1\u0e99..."}} +A.YV.prototype={ +ga6(){return"Kopijuoti"}, +ga7(){return"I\u0161kirpti"}, +gO(){return"Ie\u0161koti"}, +ga8(){return"\u012eklijuoti"}, +ga5(){return"Ie\u0161koti \u017einiatinklyje"}, +ga1(){return"Pasirinkti visk\u0105"}, +gP(){return"Bendrinti..."}} +A.YW.prototype={ +ga6(){return"Kop\u0113t"}, +ga7(){return"Izgriezt"}, +gO(){return"Mekl\u0113t"}, +ga8(){return"Iel\u012bm\u0113t"}, +ga5(){return"Mekl\u0113t t\u012bmekl\u012b"}, +ga1(){return"Atlas\u012bt visu"}, +gP(){return"Kop\u012bgot\u2026"}} +A.YX.prototype={ +ga6(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +ga7(){return"\u0418\u0441\u0435\u0447\u0438"}, +gO(){return"\u041f\u043e\u0433\u043b\u0435\u0434\u043d\u0435\u0442\u0435 \u043d\u0430\u0433\u043e\u0440\u0435"}, +ga8(){return"\u0417\u0430\u043b\u0435\u043f\u0438"}, +ga5(){return"\u041f\u0440\u0435\u0431\u0430\u0440\u0430\u0458\u0442\u0435 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442"}, +ga1(){return"\u0418\u0437\u0431\u0435\u0440\u0438 \u0433\u0438 \u0441\u0438\u0442\u0435"}, +gP(){return"\u0421\u043f\u043e\u0434\u0435\u043b\u0435\u0442\u0435..."}} +A.YY.prototype={ +ga6(){return"\u0d2a\u0d15\u0d7c\u0d24\u0d4d\u0d24\u0d41\u0d15"}, +ga7(){return"\u0d2e\u0d41\u0d31\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gO(){return"\u0d2e\u0d41\u0d15\u0d33\u0d3f\u0d32\u0d47\u0d15\u0d4d\u0d15\u0d4d \u0d28\u0d4b\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +ga8(){return"\u0d12\u0d1f\u0d4d\u0d1f\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +ga5(){return"\u0d35\u0d46\u0d2c\u0d3f\u0d7d \u0d24\u0d3f\u0d30\u0d2f\u0d41\u0d15"}, +ga1(){return"\u0d0e\u0d32\u0d4d\u0d32\u0d3e\u0d02 \u0d24\u0d3f\u0d30\u0d1e\u0d4d\u0d1e\u0d46\u0d1f\u0d41\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gP(){return"\u0d2a\u0d19\u0d4d\u0d15\u0d3f\u0d1f\u0d41\u0d15..."}} +A.YZ.prototype={ +ga6(){return"\u0425\u0443\u0443\u043b\u0430\u0445"}, +ga7(){return"\u0422\u0430\u0441\u043b\u0430\u0445"}, +gO(){return"\u0414\u044d\u044d\u0448\u044d\u044d \u0445\u0430\u0440\u0430\u0445"}, +ga8(){return"\u0411\u0443\u0443\u043b\u0433\u0430\u0445"}, +ga5(){return"\u0412\u0435\u0431\u044d\u044d\u0441 \u0445\u0430\u0439\u0445"}, +ga1(){return"\u0411\u04af\u0433\u0434\u0438\u0439\u0433 \u0441\u043e\u043d\u0433\u043e\u0445"}, +gP(){return"\u0425\u0443\u0432\u0430\u0430\u043b\u0446\u0430\u0445..."}} +A.Z_.prototype={ +ga6(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u093e"}, +ga7(){return"\u0915\u091f \u0915\u0930\u093e"}, +gO(){return"\u0936\u094b\u0927 \u0918\u094d\u092f\u093e"}, +ga8(){return"\u092a\u0947\u0938\u094d\u091f \u0915\u0930\u093e"}, +ga5(){return"\u0935\u0947\u092c\u0935\u0930 \u0936\u094b\u0927\u093e"}, +ga1(){return"\u0938\u0930\u094d\u0935 \u0928\u093f\u0935\u0921\u093e"}, +gP(){return"\u0936\u0947\u0905\u0930 \u0915\u0930\u093e..."}} +A.Z0.prototype={ +ga6(){return"Salin"}, +ga7(){return"Potong"}, +gO(){return"Lihat ke Atas"}, +ga8(){return"Tampal"}, +ga5(){return"Buat carian pada Web"}, +ga1(){return"Pilih Semua"}, +gP(){return"Kongsi..."}} +A.Z1.prototype={ +ga6(){return"\u1019\u102d\u1010\u1039\u1010\u1030\u1000\u1030\u1038\u101b\u1014\u103a"}, +ga7(){return"\u1016\u103c\u1010\u103a\u101a\u1030\u101b\u1014\u103a"}, +gO(){return"\u1021\u1015\u1031\u102b\u103a\u1000\u103c\u100a\u103a\u1037\u101b\u1014\u103a"}, +ga8(){return"\u1000\u1030\u1038\u1011\u100a\u1037\u103a\u101b\u1014\u103a"}, +ga5(){return"\u101d\u1018\u103a\u1010\u103d\u1004\u103a\u101b\u103e\u102c\u101b\u1014\u103a"}, +ga1(){return"\u1021\u102c\u1038\u101c\u102f\u1036\u1038 \u101b\u103d\u1031\u1038\u101b\u1014\u103a"}, +gP(){return"\u1019\u103b\u103e\u101d\u1031\u101b\u1014\u103a..."}} +A.Z2.prototype={ +ga6(){return"Kopi\xe9r"}, +ga7(){return"Klipp ut"}, +gO(){return"Sl\xe5 opp"}, +ga8(){return"Lim inn"}, +ga5(){return"S\xf8k p\xe5 nettet"}, +ga1(){return"Velg alle"}, +gP(){return"Del\u2026"}} +A.Z3.prototype={ +ga6(){return"\u092a\u094d\u0930\u0924\u093f\u0932\u093f\u092a\u093f \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +ga7(){return"\u0915\u093e\u091f\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gO(){return"\u092e\u093e\u0925\u093f\u0924\u093f\u0930 \u0939\u0947\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +ga8(){return"\u091f\u093e\u0901\u0938\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +ga5(){return"\u0935\u0947\u092c\u092e\u093e \u0916\u094b\u091c\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +ga1(){return"\u0938\u092c\u0948 \u091a\u092f\u0928 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gP(){return"\u0938\u0947\u092f\u0930 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d..."}} +A.Z4.prototype={ +ga6(){return"Kopi\xebren"}, +ga7(){return"Knippen"}, +gO(){return"Opzoeken"}, +ga8(){return"Plakken"}, +ga5(){return"Op internet zoeken"}, +ga1(){return"Alles selecteren"}, +gP(){return"Delen..."}} +A.Z5.prototype={ +ga6(){return"Kopi\xe9r"}, +ga7(){return"Klipp ut"}, +gO(){return"Sl\xe5 opp"}, +ga8(){return"Lim inn"}, +ga5(){return"S\xf8k p\xe5 nettet"}, +ga1(){return"Velg alle"}, +gP(){return"Del\u2026"}} +A.Z6.prototype={ +ga6(){return"\u0b15\u0b2a\u0b3f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +ga7(){return"\u0b15\u0b1f\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gO(){return"\u0b09\u0b2a\u0b30\u0b15\u0b41 \u0b26\u0b47\u0b16\u0b28\u0b4d\u0b24\u0b41"}, +ga8(){return"\u0b2a\u0b47\u0b37\u0b4d\u0b1f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +ga5(){return"\u0b71\u0b47\u0b2c \u0b38\u0b30\u0b4d\u0b1a\u0b4d\u0b1a \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +ga1(){return"\u0b38\u0b2e\u0b38\u0b4d\u0b24 \u0b1a\u0b5f\u0b28 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gP(){return"\u0b38\u0b47\u0b5f\u0b3e\u0b30\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41..."}} +A.Z7.prototype={ +ga6(){return"\u0a15\u0a3e\u0a2a\u0a40 \u0a15\u0a30\u0a4b"}, +ga7(){return"\u0a15\u0a71\u0a1f \u0a15\u0a30\u0a4b"}, +gO(){return"\u0a16\u0a4b\u0a1c\u0a4b"}, +ga8(){return"\u0a2a\u0a47\u0a38\u0a1f \u0a15\u0a30\u0a4b"}, +ga5(){return"\u0a35\u0a48\u0a71\u0a2c '\u0a24\u0a47 \u0a16\u0a4b\u0a1c\u0a4b"}, +ga1(){return"\u0a38\u0a2d \u0a1a\u0a41\u0a23\u0a4b"}, +gP(){return"\u0a38\u0a3e\u0a02\u0a1d\u0a3e \u0a15\u0a30\u0a4b..."}} +A.Z8.prototype={ +ga6(){return"Kopiuj"}, +ga7(){return"Wytnij"}, +gO(){return"Sprawd\u017a"}, +ga8(){return"Wklej"}, +ga5(){return"Szukaj w\xa0internecie"}, +ga1(){return"Wybierz wszystkie"}, +gP(){return"Udost\u0119pnij\u2026"}} +A.HZ.prototype={ +ga6(){return"Copiar"}, +ga7(){return"Cortar"}, +gO(){return"Pesquisar"}, +ga8(){return"Colar"}, +ga5(){return"Pesquisar na Web"}, +ga1(){return"Selecionar tudo"}, +gP(){return"Compartilhar\u2026"}} +A.Z9.prototype={ +gP(){return"Partilhar\u2026"}, +gO(){return"Procurar"}} +A.Za.prototype={ +ga6(){return"Copia\u021bi"}, +ga7(){return"Decupa\u021bi"}, +gO(){return"Privire \xeen sus"}, +ga8(){return"Insera\u021bi"}, +ga5(){return"C\u0103uta\u021bi pe web"}, +ga1(){return"Selecteaz\u0103 tot"}, +gP(){return"Trimite\u021bi\u2026"}} +A.Zb.prototype={ +ga6(){return"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c"}, +ga7(){return"\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c"}, +gO(){return"\u041d\u0430\u0439\u0442\u0438"}, +ga8(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c"}, +ga5(){return"\u0418\u0441\u043a\u0430\u0442\u044c \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435"}, +ga1(){return"\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435"}, +gP(){return"\u041f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f"}} +A.Zc.prototype={ +ga6(){return"\u0db4\u0dd2\u0da7\u0db4\u0dad\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +ga7(){return"\u0d9a\u0db4\u0db1\u0dca\u0db1"}, +gO(){return"\u0d8b\u0da9 \u0db6\u0dbd\u0db1\u0dca\u0db1"}, +ga8(){return"\u0d85\u0dbd\u0dc0\u0db1\u0dca\u0db1"}, +ga5(){return"\u0dc0\u0dd9\u0db6\u0dba \u0dc3\u0ddc\u0dba\u0db1\u0dca\u0db1"}, +ga1(){return"\u0dc3\u0dd2\u0dba\u0dbd\u0dca\u0dbd \u0dad\u0ddd\u0dbb\u0db1\u0dca\u0db1"}, +gP(){return"\u0db6\u0dd9\u0daf\u0dcf \u0d9c\u0db1\u0dca\u0db1..."}} +A.Zd.prototype={ +ga6(){return"Kop\xedrova\u0165"}, +ga7(){return"Vystrihn\xfa\u0165"}, +gO(){return"Poh\u013ead nahor"}, +ga8(){return"Prilepi\u0165"}, +ga5(){return"H\u013eada\u0165 na webe"}, +ga1(){return"Ozna\u010di\u0165 v\u0161etko"}, +gP(){return"Zdie\u013ea\u0165\u2026"}} +A.Ze.prototype={ +ga6(){return"Kopiraj"}, +ga7(){return"Izre\u017ei"}, +gO(){return"Pogled gor"}, +ga8(){return"Prilepi"}, +ga5(){return"Iskanje v spletu"}, +ga1(){return"Izberi vse"}, +gP(){return"Deli \u2026"}} +A.Zf.prototype={ +ga6(){return"Kopjo"}, +ga7(){return"Prit"}, +gO(){return"K\xebrko"}, +ga8(){return"Ngjit"}, +ga5(){return"K\xebrko n\xeb ueb"}, +ga1(){return"Zgjidhi t\xeb gjitha"}, +gP(){return"Ndaj..."}} +A.I_.prototype={ +ga6(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +ga7(){return"\u0418\u0441\u0435\u0446\u0438"}, +gO(){return"\u041f\u043e\u0433\u043b\u0435\u0434 \u043d\u0430\u0433\u043e\u0440\u0435"}, +ga8(){return"\u041d\u0430\u043b\u0435\u043f\u0438"}, +ga5(){return"\u041f\u0440\u0435\u0442\u0440\u0430\u0436\u0438 \u0432\u0435\u0431"}, +ga1(){return"\u0418\u0437\u0430\u0431\u0435\u0440\u0438 \u0441\u0432\u0435"}, +gP(){return"\u0414\u0435\u043b\u0438\u2026"}} +A.Zg.prototype={} +A.Zh.prototype={ +ga6(){return"Kopiraj"}, +ga7(){return"Iseci"}, +gO(){return"Pogled nagore"}, +ga8(){return"Nalepi"}, +ga5(){return"Pretra\u017ei veb"}, +ga1(){return"Izaberi sve"}, +gP(){return"Deli\u2026"}} +A.Zi.prototype={ +ga6(){return"Kopiera"}, +ga7(){return"Klipp ut"}, +gO(){return"Titta upp"}, +ga8(){return"Klistra in"}, +ga5(){return"S\xf6k p\xe5 webben"}, +ga1(){return"Markera allt"}, +gP(){return"Dela \u2026"}} +A.Zj.prototype={ +ga6(){return"Nakili"}, +ga7(){return"Kata"}, +gO(){return"Tafuta"}, +ga8(){return"Bandika"}, +ga5(){return"Tafuta kwenye Wavuti"}, +ga1(){return"Teua Zote"}, +gP(){return"Shiriki..."}} +A.Zk.prototype={ +ga6(){return"\u0ba8\u0b95\u0bb2\u0bc6\u0b9f\u0bc1"}, +ga7(){return"\u0bb5\u0bc6\u0b9f\u0bcd\u0b9f\u0bc1"}, +gO(){return"\u0ba4\u0bc7\u0b9f\u0bc1"}, +ga8(){return"\u0b92\u0b9f\u0bcd\u0b9f\u0bc1"}, +ga5(){return"\u0b87\u0ba3\u0bc8\u0baf\u0ba4\u0bcd\u0ba4\u0bbf\u0bb2\u0bcd \u0ba4\u0bc7\u0b9f\u0bc1"}, +ga1(){return"\u0b8e\u0bb2\u0bcd\u0bb2\u0bbe\u0bae\u0bcd \u0ba4\u0bc7\u0bb0\u0bcd\u0ba8\u0bcd\u0ba4\u0bc6\u0b9f\u0bc1"}, +gP(){return"\u0baa\u0b95\u0bbf\u0bb0\u0bcd..."}} +A.Zl.prototype={ +ga6(){return"\u0c15\u0c3e\u0c2a\u0c40 \u0c1a\u0c47\u0c2f\u0c3f"}, +ga7(){return"\u0c15\u0c24\u0c4d\u0c24\u0c3f\u0c30\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gO(){return"\u0c35\u0c46\u0c24\u0c15\u0c02\u0c21\u0c3f"}, +ga8(){return"\u0c2a\u0c47\u0c38\u0c4d\u0c1f\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +ga5(){return"\u0c35\u0c46\u0c2c\u0c4d\u200c\u0c32\u0c4b \u0c38\u0c46\u0c30\u0c4d\u0c1a\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +ga1(){return"\u0c05\u0c28\u0c4d\u0c28\u0c3f\u0c02\u0c1f\u0c3f\u0c28\u0c40 \u0c0e\u0c02\u0c1a\u0c41\u0c15\u0c4b\u0c02\u0c21\u0c3f"}, +gP(){return"\u0c37\u0c47\u0c30\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f..."}} +A.Zm.prototype={ +ga6(){return"\u0e04\u0e31\u0e14\u0e25\u0e2d\u0e01"}, +ga7(){return"\u0e15\u0e31\u0e14"}, +gO(){return"\u0e04\u0e49\u0e19\u0e2b\u0e32"}, +ga8(){return"\u0e27\u0e32\u0e07"}, +ga5(){return"\u0e04\u0e49\u0e19\u0e2b\u0e32\u0e1a\u0e19\u0e2d\u0e34\u0e19\u0e40\u0e17\u0e2d\u0e23\u0e4c\u0e40\u0e19\u0e47\u0e15"}, +ga1(){return"\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e17\u0e31\u0e49\u0e07\u0e2b\u0e21\u0e14"}, +gP(){return"\u0e41\u0e0a\u0e23\u0e4c..."}} +A.Zn.prototype={ +ga6(){return"Kopyahin"}, +ga7(){return"I-cut"}, +gO(){return"Tumingin sa Itaas"}, +ga8(){return"I-paste"}, +ga5(){return"Maghanap sa Web"}, +ga1(){return"Piliin Lahat"}, +gP(){return"Ibahagi..."}} +A.Zo.prototype={ +ga6(){return"Kopyala"}, +ga7(){return"Kes"}, +gO(){return"Ara"}, +ga8(){return"Yap\u0131\u015ft\u0131r"}, +ga5(){return"Web'de Ara"}, +ga1(){return"T\xfcm\xfcn\xfc Se\xe7"}, +gP(){return"Payla\u015f..."}} +A.Zp.prototype={ +ga6(){return"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438"}, +ga7(){return"\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438"}, +gO(){return"\u0428\u0443\u043a\u0430\u0442\u0438"}, +ga8(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438"}, +ga5(){return"\u041f\u043e\u0448\u0443\u043a \u0432 \u0406\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0456"}, +ga1(){return"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u0432\u0441\u0435"}, +gP(){return"\u041f\u043e\u0434\u0456\u043b\u0438\u0442\u0438\u0441\u044f\u2026"}} +A.Zq.prototype={ +ga6(){return"\u06a9\u0627\u067e\u06cc \u06a9\u0631\u06cc\u06ba"}, +ga7(){return"\u06a9\u0679 \u06a9\u0631\u06cc\u06ba"}, +gO(){return"\u062a\u0641\u0635\u06cc\u0644 \u062f\u06cc\u06a9\u06be\u06cc\u06ba"}, +ga8(){return"\u067e\u06cc\u0633\u0679 \u06a9\u0631\u06cc\u06ba"}, +ga5(){return"\u0648\u06cc\u0628 \u062a\u0644\u0627\u0634 \u06a9\u0631\u06cc\u06ba"}, +ga1(){return"\u0633\u0628\u06be\u06cc \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba"}, +gP(){return"\u0627\u0634\u062a\u0631\u0627\u06a9 \u06a9\u0631\u06cc\u06ba..."}} +A.Zr.prototype={ +ga6(){return"Nusxa olish"}, +ga7(){return"Kesib olish"}, +gO(){return"Tepaga qarang"}, +ga8(){return"Joylash"}, +ga5(){return"Internetdan qidirish"}, +ga1(){return"Barchasini tanlash"}, +gP(){return"Ulashish\u2026"}} +A.Zs.prototype={ +ga6(){return"Sao ch\xe9p"}, +ga7(){return"C\u1eaft"}, +gO(){return"Tra c\u1ee9u"}, +ga8(){return"D\xe1n"}, +ga5(){return"T\xecm ki\u1ebfm tr\xean web"}, +ga1(){return"Ch\u1ecdn t\u1ea5t c\u1ea3"}, +gP(){return"Chia s\u1ebb..."}} +A.I0.prototype={ +ga6(){return"\u590d\u5236"}, +ga7(){return"\u526a\u5207"}, +gO(){return"\u67e5\u8be2"}, +ga8(){return"\u7c98\u8d34"}, +ga5(){return"\u641c\u7d22"}, +ga1(){return"\u5168\u9009"}, +gP(){return"\u5171\u4eab\u2026"}} +A.Zt.prototype={} +A.I1.prototype={ +ga6(){return"\u8907\u88fd"}, +ga7(){return"\u526a\u4e0b"}, +gO(){return"\u67e5\u8a62"}, +ga8(){return"\u8cbc\u4e0a"}, +ga5(){return"\u641c\u5c0b"}, +ga1(){return"\u5168\u9078"}, +gP(){return"\u5206\u4eab\u2026"}} +A.Zu.prototype={} +A.Zv.prototype={} +A.Zw.prototype={ +ga6(){return"Kopisha"}, +ga7(){return"Sika"}, +gO(){return"Bheka Phezulu"}, +ga8(){return"Namathisela"}, +ga5(){return"Sesha Iwebhu"}, +ga1(){return"Khetha konke"}, +gP(){return"Yabelana..."}} +A.a26.prototype={ +gbe(){return"Opletberig"}, +gbf(){return"Terug"}, +gb3(){return"Onderste blad"}, +ga6(){return"Kopieer"}, +ga7(){return"Knip"}, +gaY(){return"Vee uit"}, +gaN(){return"Dialoog"}, +gO(){return"Kyk op"}, +gaS(){return"Maak toe"}, +gbk(){return"Nog"}, +gaV(){return"Maak navigasiekieslys oop"}, +ga8(){return"Plak"}, +gb7(){return"Opspringkieslys"}, +gbj(){return"Herlaai"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 karakter oor"}, +gbg(){return"$remainingCount karakters oor"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skandeer teks"}, +gaX(){return"Skerm"}, +gbh(){return"Maak $modalRouteContentName toe"}, +gbm(){return B.P}, +ga5(){return"Deursoek web"}, +ga1(){return"Kies alles"}, +gP(){return"Deel \u2026"}, +gbd(){return"Oortjie $tabIndex van $tabCount"}} +A.a27.prototype={ +gbe(){return"\u121b\u1295\u1242\u12eb"}, +gbf(){return"\u1270\u1218\u1208\u1235"}, +gb3(){return"\u12e8\u130d\u122d\u130c \u1209\u1205"}, +ga6(){return"\u1245\u12f3"}, +ga7(){return"\u1241\u1228\u1325"}, +gaY(){return"\u1230\u122d\u12dd"}, +gaN(){return"\u1218\u1308\u1293\u129b"}, +gO(){return"\u12ed\u1218\u120d\u12a8\u1271"}, +gaS(){return"\u12a0\u1230\u1293\u1265\u1275"}, +gbk(){return"\u1270\u1328\u121b\u122a"}, +gaV(){return"\u12e8\u12f3\u1230\u1233 \u121d\u1293\u120c\u1295 \u12ad\u1348\u1275"}, +ga8(){return"\u1208\u1325\u134d"}, +gb7(){return"\u12e8\u1265\u1245-\u1263\u12ed \u121d\u1293\u120c"}, +gbj(){return"\u12a0\u12f5\u1235"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 \u1241\u121d\u134a \u12ed\u1240\u122b\u120d"}, +gbg(){return"$remainingCount \u1241\u121d\u134a\u12ce\u127d \u12ed\u1240\u122b\u1209"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u133d\u1201\u134d\u1295 \u1243\u129d"}, +gaX(){return"\u1308\u12f3\u1262"}, +gbh(){return"$modalRouteContentName\u1295 \u12dd\u130b"}, +gbm(){return B.P}, +ga5(){return"\u12f5\u122d\u1295 \u1348\u120d\u130d"}, +ga1(){return"\u1201\u1209\u1295\u121d \u121d\u1228\u1325"}, +gP(){return"\u12a0\u130b\u122b..."}, +gbd(){return"\u1275\u122d $tabIndex \u12a8$tabCount"}} +A.a28.prototype={ +gbe(){return"\u062a\u0646\u0628\u064a\u0647"}, +gbf(){return"\u0631\u062c\u0648\u0639"}, +gb3(){return"\u0628\u0637\u0627\u0642\u0629 \u0633\u0641\u0644\u064a\u0629"}, +ga6(){return"\u0646\u0633\u062e"}, +ga7(){return"\u0642\u0635"}, +gaY(){return"\u062d\u0630\u0641"}, +gaN(){return"\u0645\u0631\u0628\u0639 \u062d\u0648\u0627\u0631"}, +gO(){return"\u0627\u0644\u0646\u0638\u0631 \u0625\u0644\u0649 \u0623\u0639\u0644\u0649"}, +gaS(){return"\u0631\u0641\u0636"}, +gbk(){return"\u0627\u0644\u0645\u0632\u064a\u062f"}, +gaV(){return"\u0641\u062a\u062d \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u062a\u0646\u0642\u0644"}, +ga8(){return"\u0644\u0635\u0642"}, +gb7(){return"\u0642\u0627\u0626\u0645\u0629 \u0645\u0646\u0628\u062b\u0642\u0629"}, +gbj(){return"\u0625\u0639\u0627\u062f\u0629 \u062a\u062d\u0645\u064a\u0644"}, +gbl(){return"$remainingCount \u0623\u062d\u0631\u0641 \u0645\u062a\u0628\u0642\u064a\u0629"}, +gbn(){return"$remainingCount \u062d\u0631\u0641\u064b\u0627 \u0645\u062a\u0628\u0642\u064a\u064b\u0627"}, +gbc(){return"\u062d\u0631\u0641 \u0648\u0627\u062d\u062f \u0645\u062a\u0628\u0642\u064d"}, +gbg(){return"$remainingCount \u062d\u0631\u0641 \u0645\u062a\u0628\u0642\u064d"}, +gbo(){return"\u062d\u0631\u0641\u0627\u0646 ($remainingCount) \u0645\u062a\u0628\u0642\u064a\u0627\u0646"}, +gbp(){return"\u0644\u0627 \u0623\u062d\u0631\u0641 \u0645\u062a\u0628\u0642\u064a\u0629"}, +gaW(){return"\u0645\u0633\u062d \u0627\u0644\u0646\u0635 \u0636\u0648\u0626\u064a\u064b\u0627"}, +gaX(){return"\u062a\u0645\u0648\u064a\u0647"}, +gbh(){return'\u0625\u063a\u0644\u0627\u0642 "$modalRouteContentName"'}, +gbm(){return B.bY}, +ga5(){return"\u0627\u0644\u0628\u062d\u062b \u0639\u0644\u0649 \u0627\u0644\u0648\u064a\u0628"}, +ga1(){return"\u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0643\u0644"}, +gP(){return"\u0645\u0634\u0627\u0631\u0643\u0629\u2026"}, +gbd(){return"\u0639\u0644\u0627\u0645\u0629 \u0627\u0644\u062a\u0628\u0648\u064a\u0628 $tabIndex \u0645\u0646 $tabCount"}} +A.a29.prototype={ +gbe(){return"\u09b8\u09a4\u09f0\u09cd\u0995\u09ac\u09be\u09f0\u09cd\u09a4\u09be"}, +gbf(){return"\u0989\u09ad\u09a4\u09bf \u09af\u09be\u0993\u0995"}, +gb3(){return"\u09a4\u09b2\u09f0 \u09b6\u09cd\u09ac\u09c0\u099f"}, +ga6(){return"\u09aa\u09cd\u09f0\u09a4\u09bf\u09b2\u09bf\u09aa\u09bf \u0995\u09f0\u0995"}, +ga7(){return"\u0995\u09be\u099f \u0995\u09f0\u0995"}, +gaY(){return"\u09ae\u099a\u0995"}, +gaN(){return"\u09a1\u09be\u09df\u09b2'\u0997"}, +gO(){return"\u0993\u09aa\u09f0\u09b2\u09c8 \u099a\u09be\u0993\u0995"}, +gaS(){return"\u0985\u0997\u09cd\u09f0\u09be\u09b9\u09cd\u09af \u0995\u09f0\u0995"}, +gbk(){return"\u0985\u09a7\u09bf\u0995"}, +gaV(){return"\u09a8\u09c7\u09ad\u09bf\u0997\u09c7\u09b6\u09cd\u09ac\u09a8 \u09ae\u09c7\u09a8\u09c1 \u0996\u09cb\u09b2\u0995"}, +ga8(){return"\u09aa\u09c7'\u09b7\u09cd\u099f \u0995\u09f0\u0995"}, +gb7(){return"\u09aa'\u09aa\u0986\u09aa \u09ae\u09c7\u09a8\u09c1"}, +gbj(){return"\u09f0\u09bf\u09ab\u09cd\u09f0\u09c7\u09b6\u09cd\u09ac \u0995\u09f0\u0995"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u09e7\u099f\u09be \u09ac\u09b0\u09cd\u09a3 \u09ac\u09be\u0995\u09c0 \u0986\u099b\u09c7"}, +gbg(){return"$remainingCount\u099f\u09be \u09ac\u09b0\u09cd\u09a3 \u09ac\u09be\u0995\u09c0 \u0986\u099b\u09c7"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u09aa\u09be\u09a0 \u09b8\u09cd\u0995\u09c7\u09a8 \u0995\u09f0\u0995"}, +gaX(){return"\u09b8\u09cd\u0995\u09cd\u09f0\u09bf\u09ae"}, +gbh(){return"$modalRouteContentName \u09ac\u09a8\u09cd\u09a7 \u0995\u09f0\u0995"}, +gbm(){return B.P}, +ga5(){return"\u09f1\u09c7\u09ac\u09a4 \u09b8\u09a8\u09cd\u09a7\u09be\u09a8 \u0995\u09f0\u0995"}, +ga1(){return"\u09b8\u0995\u09b2\u09cb \u09ac\u09be\u099b\u09a8\u09bf \u0995\u09f0\u0995"}, +gP(){return"\u09b6\u09cd\u09ac\u09c7\u09df\u09be\u09f0 \u0995\u09f0\u0995\u2026"}, +gbd(){return"$tabCount\u09f0 $tabIndex\u099f\u09be \u099f\u09c7\u09ac"}} +A.a2a.prototype={ +gbe(){return"Bildiri\u015f"}, +gbf(){return"Geri"}, +gb3(){return"A\u015fa\u011f\u0131dak\u0131 V\u0259r\u0259q"}, +ga6(){return"Kopyalay\u0131n"}, +ga7(){return"K\u0259sin"}, +gaY(){return"Silin"}, +gaN(){return"Dialoq"}, +gO(){return"Axtar\u0131n"}, +gaS(){return"\u0130mtina edin"}, +gbk(){return"Daha \xe7ox"}, +gaV(){return"Naviqasiya menyusunu a\xe7\u0131n"}, +ga8(){return"Yerl\u0259\u015fdirin"}, +gb7(){return"Popap menyusu"}, +gbj(){return"Yenil\u0259yin"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 simvol qal\u0131r"}, +gbg(){return"$remainingCount simvol qal\u0131r"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"M\u0259tni skan edin"}, +gaX(){return"K\u0259tan"}, +gbh(){return"Ba\u011flay\u0131n: $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Vebd\u0259 axtar\u0131n"}, +ga1(){return"Ham\u0131s\u0131n\u0131 se\xe7in"}, +gP(){return"Payla\u015f\u0131n..."}, +gbd(){return"$tabIndex/$tabCount tab"}} +A.a2b.prototype={ +gbe(){return"\u0410\u0431\u0432\u0435\u0441\u0442\u043a\u0430"}, +gbf(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb3(){return"\u041d\u0456\u0436\u043d\u0456 \u0430\u0440\u043a\u0443\u0448"}, +ga6(){return"\u041a\u0430\u043f\u0456\u0440\u0430\u0432\u0430\u0446\u044c"}, +ga7(){return"\u0412\u044b\u0440\u0430\u0437\u0430\u0446\u044c"}, +gaY(){return"\u0412\u044b\u0434\u0430\u043b\u0456\u0446\u044c"}, +gaN(){return"\u0414\u044b\u044f\u043b\u043e\u0433\u0430\u0432\u0430\u0435 \u0430\u043a\u043d\u043e"}, +gO(){return"\u0417\u043d\u0430\u0439\u0441\u0446\u0456"}, +gaS(){return"\u0410\u0434\u0445\u0456\u043b\u0456\u0446\u044c"}, +gbk(){return"\u042f\u0448\u0447\u044d"}, +gaV(){return"\u0410\u0434\u043a\u0440\u044b\u0446\u044c \u043c\u0435\u043d\u044e \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u044b\u0456"}, +ga8(){return"\u0423\u0441\u0442\u0430\u0432\u0456\u0446\u044c"}, +gb7(){return"\u041c\u0435\u043d\u044e \u045e\u0441\u043f\u043b\u044b\u0432\u0430\u043b\u044c\u043d\u0430\u0433\u0430 \u0430\u043a\u043d\u0430"}, +gbj(){return"\u0410\u0431\u043d\u0430\u0432\u0456\u0446\u044c"}, +gbl(){return"\u0417\u0430\u0441\u0442\u0430\u043b\u043e\u0441\u044f $remainingCount\xa0\u0441\u0456\u043c\u0432\u0430\u043b\u044b"}, +gbn(){return"\u0417\u0430\u0441\u0442\u0430\u043b\u043e\u0441\u044f $remainingCount\xa0\u0441\u0456\u043c\u0432\u0430\u043b\u0430\u045e"}, +gbc(){return"\u0417\u0430\u0441\u0442\u0430\u045e\u0441\u044f 1\xa0\u0441\u0456\u043c\u0432\u0430\u043b"}, +gbg(){return"\u0417\u0430\u0441\u0442\u0430\u043b\u043e\u0441\u044f $remainingCount\xa0\u0441\u0456\u043c\u0432\u0430\u043b\u0430"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0421\u043a\u0430\u043d\u0456\u0440\u0430\u0432\u0430\u0446\u044c \u0442\u044d\u043a\u0441\u0442"}, +gaX(){return"\u041f\u0430\u043b\u0430\u0442\u043d\u043e"}, +gbh(){return"\u0417\u0430\u043a\u0440\u044b\u0446\u044c: $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"\u041f\u043e\u0448\u0443\u043a \u0443 \u0441\u0435\u0442\u0446\u044b"}, +ga1(){return"\u0412\u044b\u0431\u0440\u0430\u0446\u044c \u0443\u0441\u0435"}, +gP(){return"\u0410\u0431\u0430\u0433\u0443\u043b\u0456\u0446\u044c..."}, +gbd(){return"\u0423\u043a\u043b\u0430\u0434\u043a\u0430 $tabIndex \u0437 $tabCount"}} +A.a2c.prototype={ +gbe(){return"\u0421\u0438\u0433\u043d\u0430\u043b"}, +gbf(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb3(){return"\u0414\u043e\u043b\u0435\u043d \u043b\u0438\u0441\u0442"}, +ga6(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u043d\u0435"}, +ga7(){return"\u0418\u0437\u0440\u044f\u0437\u0432\u0430\u043d\u0435"}, +gaY(){return"\u0418\u0437\u0442\u0440\u0438\u0432\u0430\u043d\u0435"}, +gaN(){return"\u0414\u0438\u0430\u043b\u043e\u0433\u043e\u0432 \u043f\u0440\u043e\u0437\u043e\u0440\u0435\u0446"}, +gO(){return"Look Up"}, +gaS(){return"\u041e\u0442\u0445\u0432\u044a\u0440\u043b\u044f\u043d\u0435"}, +gbk(){return"\u041e\u0449\u0435"}, +gaV(){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"}, +ga8(){return"\u041f\u043e\u0441\u0442\u0430\u0432\u044f\u043d\u0435"}, +gb7(){return"\u0418\u0437\u0441\u043a\u0430\u0447\u0430\u0449\u043e \u043c\u0435\u043d\u044e"}, +gbj(){return"\u041e\u043f\u0440\u0435\u0441\u043d\u044f\u0432\u0430\u043d\u0435"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u041e\u0441\u0442\u0430\u0432\u0430 1 \u0437\u043d\u0430\u043a"}, +gbg(){return"\u041e\u0441\u0442\u0430\u0432\u0430\u0442 $remainingCount \u0437\u043d\u0430\u043a\u0430"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0421\u043a\u0430\u043d\u0438\u0440\u0430\u0439\u0442\u0435 \u0442\u0435\u043a\u0441\u0442"}, +gaX(){return"\u0421\u043a\u0440\u0438\u043c"}, +gbh(){return"\u0417\u0430\u0442\u0432\u0430\u0440\u044f\u043d\u0435 \u043d\u0430 $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"\u0422\u044a\u0440\u0441\u0435\u043d\u0435 \u0432 \u043c\u0440\u0435\u0436\u0430\u0442\u0430"}, +ga1(){return"\u0418\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0432\u0441\u0438\u0447\u043a\u0438"}, +gP(){return"\u0421\u043f\u043e\u0434\u0435\u043b\u044f\u043d\u0435..."}, +gbd(){return"\u0420\u0430\u0437\u0434\u0435\u043b $tabIndex \u043e\u0442 $tabCount"}} +A.a2d.prototype={ +gbe(){return"\u09b8\u09a4\u09b0\u09cd\u0995\u09a4\u09be"}, +gbf(){return"\u09ab\u09bf\u09b0\u09c7 \u09af\u09be\u09a8"}, +gb3(){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"}, +ga6(){return"\u0995\u09aa\u09bf \u0995\u09b0\u09c1\u09a8"}, +ga7(){return"\u0995\u09be\u099f \u0995\u09b0\u09c1\u09a8"}, +gaY(){return"\u09ae\u09c1\u099b\u09c7 \u09a6\u09bf\u09a8"}, +gaN(){return"\u09a1\u09be\u09df\u09be\u09b2\u0997"}, +gO(){return"\u09b2\u09c1\u0995-\u0986\u09aa"}, +gaS(){return"\u0996\u09be\u09b0\u09bf\u099c \u0995\u09b0\u09c1\u09a8"}, +gbk(){return"\u0986\u09b0\u0993"}, +gaV(){return"\u09a8\u09c7\u09ad\u09bf\u0997\u09c7\u09b6\u09a8 \u09ae\u09c7\u09a8\u09c1 \u0996\u09c1\u09b2\u09c1\u09a8"}, +ga8(){return"\u09aa\u09c7\u09b8\u09cd\u099f \u0995\u09b0\u09c1\u09a8"}, +gb7(){return"\u09aa\u09aa-\u0986\u09aa \u09ae\u09c7\u09a8\u09c1"}, +gbj(){return"\u09b0\u09bf\u09ab\u09cd\u09b0\u09c7\u09b6 \u0995\u09b0\u09c1\u09a8"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u0986\u09b0 \u09e7\u099f\u09bf \u0985\u0995\u09cd\u09b7\u09b0 \u09b2\u09c7\u0996\u09be \u09af\u09be\u09ac\u09c7"}, +gbg(){return"\u0986\u09b0 $remainingCount\u099f\u09bf \u0985\u0995\u09cd\u09b7\u09b0 \u09b2\u09c7\u0996\u09be \u09af\u09be\u09ac\u09c7"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u099f\u09c7\u0995\u09cd\u09b8\u099f \u09b8\u09cd\u0995\u09cd\u09af\u09be\u09a8 \u0995\u09b0\u09c1\u09a8"}, +gaX(){return"\u09b8\u09cd\u0995\u09cd\u09b0\u09bf\u09ae"}, +gbh(){return"$modalRouteContentName \u09ac\u09a8\u09cd\u09a7 \u0995\u09b0\u09c1\u09a8"}, +gbm(){return B.bY}, +ga5(){return"\u0993\u09df\u09c7\u09ac\u09c7 \u09b8\u09be\u09b0\u09cd\u099a \u0995\u09b0\u09c1\u09a8"}, +ga1(){return"\u09b8\u09ac \u09ac\u09c7\u099b\u09c7 \u09a8\u09bf\u09a8"}, +gP(){return"\u09b6\u09c7\u09df\u09be\u09b0 \u0995\u09b0\u09c1\u09a8..."}, +gbd(){return"$tabCount-\u098f\u09b0 \u09ae\u09a7\u09cd\u09af\u09c7 $tabIndex\u099f\u09bf \u099f\u09cd\u09af\u09be\u09ac"}} +A.a2e.prototype={ +gbe(){return"Upozorenje"}, +gbf(){return"Nazad"}, +gb3(){return"Donja tabela"}, +ga6(){return"Kopiraj"}, +ga7(){return"Izre\u017ei"}, +gaY(){return"Brisanje"}, +gaN(){return"Dijalo\u0161ki okvir"}, +gO(){return"Pogled nagore"}, +gaS(){return"Odbaci"}, +gbk(){return"Vi\u0161e"}, +gaV(){return"Otvorite meni za navigaciju"}, +ga8(){return"Zalijepi"}, +gb7(){return"Sko\u010dni meni"}, +gbj(){return"Osvje\u017ei"}, +gbl(){return"Jo\u0161 $remainingCount znaka"}, +gbn(){return null}, +gbc(){return"Jo\u0161 jedan znak"}, +gbg(){return"Jo\u0161 $remainingCount znakova"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skeniraj tekst"}, +gaX(){return"Rubno"}, +gbh(){return"Zatvori: $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Pretra\u017ei Web"}, +ga1(){return"Odaberi sve"}, +gP(){return"Dijeli..."}, +gbd(){return"$tabIndex. kartica od $tabCount"}} +A.a2f.prototype={ +gbe(){return"Alerta"}, +gbf(){return"Enrere"}, +gb3(){return"Full inferior"}, +ga6(){return"Copia"}, +ga7(){return"Retalla"}, +gaY(){return"Suprimeix"}, +gaN(){return"Di\xe0leg"}, +gO(){return"Mira amunt"}, +gaS(){return"Ignora"}, +gbk(){return"M\xe9s"}, +gaV(){return"Obre el men\xfa de navegaci\xf3"}, +ga8(){return"Enganxa"}, +gb7(){return"Men\xfa emergent"}, +gbj(){return"Actualitza"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"Queda 1\xa0car\xe0cter"}, +gbg(){return"Queden $remainingCount\xa0car\xe0cters"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Escaneja text"}, +gaX(){return"Fons atenuat"}, +gbh(){return"Tanca $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Cerca al web"}, +ga1(){return"Selecciona-ho tot"}, +gP(){return"Comparteix..."}, +gbd(){return"Pestanya $tabIndex de $tabCount"}} +A.a2g.prototype={ +gbe(){return"Upozorn\u011bn\xed"}, +gbf(){return"Zp\u011bt"}, +gb3(){return"Spodn\xed tabulka"}, +ga6(){return"Kop\xedrovat"}, +ga7(){return"Vyjmout"}, +gaY(){return"Smazat"}, +gaN(){return"Dialogov\xe9 okno"}, +gO(){return"Vyhledat"}, +gaS(){return"Zav\u0159\xedt"}, +gbk(){return"V\xedce"}, +gaV(){return"Otev\u0159\xedt naviga\u010dn\xed nab\xeddku"}, +ga8(){return"Vlo\u017eit"}, +gb7(){return"Vyskakovac\xed nab\xeddka"}, +gbj(){return"Obnovit"}, +gbl(){return"Zb\xfdvaj\xed $remainingCount znaky"}, +gbn(){return"Zb\xfdv\xe1 $remainingCount znaku"}, +gbc(){return"Zb\xfdv\xe1 1 znak"}, +gbg(){return"Zb\xfdv\xe1 $remainingCount znak\u016f"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Naskenovat text"}, +gaX(){return"Scrim"}, +gbh(){return"Zav\u0159\xedt $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Vyhled\xe1vat na webu"}, +ga1(){return"Vybrat v\u0161e"}, +gP(){return"Sd\xedlet\u2026"}, +gbd(){return"Karta $tabIndex z\xa0$tabCount"}} +A.a2h.prototype={ +gbe(){return"Rhybudd"}, +gbf(){return"N\xf4l"}, +gb3(){return"Taflen Gwaelod"}, +ga6(){return"Cop\xefo"}, +ga7(){return"Torri"}, +gaY(){return"Dileu"}, +gaN(){return"Deialog"}, +gO(){return"Chwilio"}, +gaS(){return"Diystyru"}, +gbk(){return"Rhagor"}, +gaV(){return"Agor y ddewislen llywio"}, +ga8(){return"Gludo"}, +gb7(){return"Dewislen ffenestr naid"}, +gbj(){return"Ail-lwytho"}, +gbl(){return"$remainingCount nod ar \xf4l"}, +gbn(){return"$remainingCount nod ar \xf4l"}, +gbc(){return"1 nod ar \xf4l"}, +gbg(){return"$remainingCount nod ar \xf4l"}, +gbo(){return"$remainingCount nod ar \xf4l"}, +gbp(){return"Dim nodau ar \xf4l"}, +gaW(){return"Sganio testun"}, +gaX(){return"Scrim"}, +gbh(){return"Cau $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Chwilio'r We"}, +ga1(){return"Dewis y Cyfan"}, +gP(){return"Rhannu..."}, +gbd(){return"Tab $tabIndex o $tabCount"}} +A.a2i.prototype={ +gbe(){return"Underretning"}, +gbf(){return"Tilbage"}, +gb3(){return"Felt i bunden"}, +ga6(){return"Kopi\xe9r"}, +ga7(){return"Klip"}, +gaY(){return"Slet"}, +gaN(){return"Dialogboks"}, +gO(){return"Sl\xe5 op"}, +gaS(){return"Afvis"}, +gbk(){return"Mere"}, +gaV(){return"\xc5bn navigationsmenuen"}, +ga8(){return"Inds\xe6t"}, +gb7(){return"Pop op-menu"}, +gbj(){return"Opdater"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\xc9t tegn tilbage"}, +gbg(){return"$remainingCount tegn tilbage"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Scan tekst"}, +gaX(){return"D\xe6mpesk\xe6rm"}, +gbh(){return"Luk $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"S\xf8g p\xe5 nettet"}, +ga1(){return"Mark\xe9r alt"}, +gP(){return"Del\u2026"}, +gbd(){return"Fane $tabIndex af $tabCount"}} +A.KR.prototype={ +gbe(){return"Benachrichtigung"}, +gbf(){return"Zur\xfcck"}, +gb3(){return"Ansicht am unteren Rand"}, +ga6(){return"Kopieren"}, +ga7(){return"Ausschneiden"}, +gaY(){return"L\xf6schen"}, +gaN(){return"Dialogfeld"}, +gO(){return"Nachschlagen"}, +gaS(){return"Schlie\xdfen"}, +gbk(){return"Mehr"}, +gaV(){return"Navigationsmen\xfc \xf6ffnen"}, +ga8(){return"Einsetzen"}, +gb7(){return"Pop-up-Men\xfc"}, +gbj(){return"Aktualisieren"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"Noch 1\xa0Zeichen"}, +gbg(){return"Noch $remainingCount\xa0Zeichen"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Text scannen"}, +gaX(){return"Gitter"}, +gbh(){return"$modalRouteContentName schlie\xdfen"}, +gbm(){return B.P}, +ga5(){return"Im Web suchen"}, +ga1(){return"Alle ausw\xe4hlen"}, +gP(){return"Teilen\u2026"}, +gbd(){return"Tab $tabIndex von $tabCount"}} +A.a2j.prototype={ +gaS(){return"Schliessen"}} +A.a2k.prototype={ +gbe(){return"\u0395\u03b9\u03b4\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7"}, +gbf(){return"\u03a0\u03af\u03c3\u03c9"}, +gb3(){return"\u03a6\u03cd\u03bb\u03bb\u03bf \u03ba\u03ac\u03c4\u03c9 \u03bc\u03ad\u03c1\u03bf\u03c5\u03c2"}, +ga6(){return"\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae"}, +ga7(){return"\u0391\u03c0\u03bf\u03ba\u03bf\u03c0\u03ae"}, +gaY(){return"\u0394\u03b9\u03b1\u03b3\u03c1\u03b1\u03c6\u03ae"}, +gaN(){return"\u03a0\u03b1\u03c1\u03ac\u03b8\u03c5\u03c1\u03bf \u03b4\u03b9\u03b1\u03bb\u03cc\u03b3\u03bf\u03c5"}, +gO(){return"Look Up"}, +gaS(){return"\u03a0\u03b1\u03c1\u03ac\u03b2\u03bb\u03b5\u03c8\u03b7"}, +gbk(){return"\u03a0\u03b5\u03c1\u03b9\u03c3\u03c3\u03cc\u03c4\u03b5\u03c1\u03b1"}, +gaV(){return"\u0386\u03bd\u03bf\u03b9\u03b3\u03bc\u03b1 \u03bc\u03b5\u03bd\u03bf\u03cd \u03c0\u03bb\u03bf\u03ae\u03b3\u03b7\u03c3\u03b7\u03c2"}, +ga8(){return"\u0395\u03c0\u03b9\u03ba\u03cc\u03bb\u03bb\u03b7\u03c3\u03b7"}, +gb7(){return"\u0391\u03bd\u03b1\u03b4\u03c5\u03cc\u03bc\u03b5\u03bd\u03bf \u03bc\u03b5\u03bd\u03bf\u03cd"}, +gbj(){return"\u0391\u03bd\u03b1\u03bd\u03ad\u03c9\u03c3\u03b7"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u03b1\u03c0\u03bf\u03bc\u03ad\u03bd\u03b5\u03b9 1 \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03b1\u03c2"}, +gbg(){return"\u03b1\u03c0\u03bf\u03bc\u03ad\u03bd\u03bf\u03c5\u03bd $remainingCount \u03c7\u03b1\u03c1\u03b1\u03ba\u03c4\u03ae\u03c1\u03b5\u03c2"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u03a3\u03ac\u03c1\u03c9\u03c3\u03b7 \u03ba\u03b5\u03b9\u03bc\u03ad\u03bd\u03bf\u03c5"}, +gaX(){return"\u0395\u03c0\u03b9\u03ba\u03ac\u03bb\u03c5\u03c8\u03b7"}, +gbh(){return"\u039a\u03bb\u03b5\u03af\u03c3\u03b9\u03bc\u03bf $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"\u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7 \u03c3\u03c4\u03bf\u03bd \u03b9\u03c3\u03c4\u03cc"}, +ga1(){return"\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae \u03cc\u03bb\u03c9\u03bd"}, +gP(){return"\u039a\u03bf\u03b9\u03bd\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7\u2026"}, +gbd(){return"\u039a\u03b1\u03c1\u03c4\u03ad\u03bb\u03b1 $tabIndex \u03b1\u03c0\u03cc $tabCount"}} +A.KS.prototype={ +gbe(){return"Alert"}, +gbf(){return"Back"}, +gb3(){return"Bottom Sheet"}, +ga6(){return"Copy"}, +ga7(){return"Cut"}, +gaY(){return"Delete"}, +gaN(){return"Dialog"}, +gO(){return"Look Up"}, +gaS(){return"Dismiss"}, +gbk(){return"More"}, +gaV(){return"Open navigation menu"}, +ga8(){return"Paste"}, +gb7(){return"Popup menu"}, +gbj(){return"Refresh"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 character remaining"}, +gbg(){return"$remainingCount characters remaining"}, +gbo(){return null}, +gbp(){return"No characters remaining"}, +gaW(){return"Scan text"}, +gaX(){return"Scrim"}, +gbh(){return"Close $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Search Web"}, +ga1(){return"Select all"}, +gP(){return"Share"}, +gbd(){return"Tab $tabIndex of $tabCount"}} +A.a2l.prototype={ +gP(){return"Share..."}, +gO(){return"Look up"}, +gb3(){return"Bottom sheet"}, +gb7(){return"Pop-up menu"}, +gaN(){return"Dialogue"}} +A.a2m.prototype={ +gb7(){return"Pop-up menu"}, +gaN(){return"Dialogue"}} +A.a2n.prototype={ +gP(){return"Share..."}, +gO(){return"Look up"}, +gb3(){return"Bottom sheet"}, +gb7(){return"Pop-up menu"}, +gaN(){return"Dialogue"}} +A.a2o.prototype={ +gP(){return"Share..."}, +gO(){return"Look up"}, +gb3(){return"Bottom sheet"}, +gb7(){return"Pop-up menu"}, +gaN(){return"Dialogue"}} +A.a2p.prototype={ +gP(){return"Share..."}, +gO(){return"Look up"}, +gb3(){return"Bottom sheet"}, +gb7(){return"Pop-up menu"}, +gaN(){return"Dialogue"}} +A.a2q.prototype={ +gP(){return"Share..."}, +gO(){return"Look up"}, +gb3(){return"Bottom sheet"}, +gb7(){return"Pop-up menu"}, +gaN(){return"Dialogue"}} +A.a2r.prototype={ +gP(){return"Share..."}, +gO(){return"Look up"}, +gb3(){return"Bottom sheet"}, +gb7(){return"Pop-up menu"}, +gaN(){return"Dialogue"}} +A.a2s.prototype={ +gP(){return"Share..."}, +gO(){return"Look up"}, +gb3(){return"Bottom sheet"}, +gb7(){return"Pop-up menu"}, +gaN(){return"Dialogue"}} +A.KT.prototype={ +gbe(){return"Alerta"}, +gbf(){return"Atr\xe1s"}, +gb3(){return"Hoja inferior"}, +ga6(){return"Copiar"}, +ga7(){return"Cortar"}, +gaY(){return"Eliminar"}, +gaN(){return"Cuadro de di\xe1logo"}, +gO(){return"Buscador visual"}, +gaS(){return"Cerrar"}, +gbk(){return"M\xe1s"}, +gaV(){return"Abrir el men\xfa de navegaci\xf3n"}, +ga8(){return"Pegar"}, +gb7(){return"Men\xfa emergente"}, +gbj(){return"Actualizar"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"Queda 1 car\xe1cter."}, +gbg(){return"Quedan $remainingCount caracteres"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Escanear texto"}, +gaX(){return"Sombreado"}, +gbh(){return"Cerrar $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Buscar en la Web"}, +ga1(){return"Seleccionar todo"}, +gP(){return"Compartir..."}, +gbd(){return"Pesta\xf1a $tabIndex de $tabCount"}} +A.a2t.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2u.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2v.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2w.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2x.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2y.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2z.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2A.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2B.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2C.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2D.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2E.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2F.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2G.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2H.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2I.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2J.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2K.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaY(){return"Borrar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaN(){return"Di\xe1logo"}} +A.a2L.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2M.prototype={ +gP(){return"Compartir\u2026"}, +gaW(){return"Analizar texto"}, +gO(){return"Mirar hacia arriba"}, +gaX(){return"L\xe1mina"}, +gaS(){return"Descartar"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +gaY(){return"Borrar"}, +gaN(){return"Di\xe1logo"}} +A.a2N.prototype={ +gbe(){return"M\xe4rguanne"}, +gbf(){return"Tagasi"}, +gb3(){return"Alumine leht"}, +ga6(){return"Kopeeri"}, +ga7(){return"L\xf5ika"}, +gaY(){return"Kustuta"}, +gaN(){return"Dialoog"}, +gO(){return"Look Up"}, +gaS(){return"Loobu"}, +gbk(){return"Rohkem"}, +gaV(){return"Ava navigeerimismen\xfc\xfc"}, +ga8(){return"Kleebi"}, +gb7(){return"H\xfcpikmen\xfc\xfc"}, +gbj(){return"V\xe4rskendamine"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"J\xe4\xe4nud on 1 t\xe4hem\xe4rk"}, +gbg(){return"J\xe4\xe4nud on $remainingCount t\xe4hem\xe4rki"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skanni tekst"}, +gaX(){return"Sirm"}, +gbh(){return"Sule $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Otsi veebist"}, +ga1(){return"Vali k\xf5ik"}, +gP(){return"Jaga \u2026"}, +gbd(){return"$tabIndex. vahekaart $tabCount-st"}} +A.a2O.prototype={ +gbe(){return"Alerta"}, +gbf(){return"Atzera"}, +gb3(){return"Behealdeko orria"}, +ga6(){return"Kopiatu"}, +ga7(){return"Ebaki"}, +gaY(){return"Ezabatu"}, +gaN(){return"Leihoa"}, +gO(){return"Bilatu"}, +gaS(){return"Baztertu"}, +gbk(){return"Gehiago"}, +gaV(){return"Ireki nabigazio-menua"}, +ga8(){return"Itsatsi"}, +gb7(){return"Menu gainerakorra"}, +gbj(){return"Freskatu"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 karaktere geratzen da"}, +gbg(){return"$remainingCount karaktere geratzen dira"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Eskaneatu testua"}, +gaX(){return"Barrera"}, +gbh(){return"Itxi $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Bilatu sarean"}, +ga1(){return"Hautatu guztiak"}, +gP(){return"Partekatu..."}, +gbd(){return"$tabIndex/$tabCount fitxa"}} +A.a2P.prototype={ +gbe(){return"\u0647\u0634\u062f\u0627\u0631"}, +gbf(){return"\u0628\u0631\u06af\u0634\u062a"}, +gb3(){return"\u0628\u0631\u06af \u0632\u06cc\u0631\u06cc\u0646"}, +ga6(){return"\u06a9\u067e\u06cc"}, +ga7(){return"\u0628\u0631\u0634"}, +gaY(){return"\u062d\u0630\u0641"}, +gaN(){return"\u06a9\u0627\u062f\u0631 \u06af\u0641\u062a\u06af\u0648"}, +gO(){return"\u062c\u0633\u062a\u062c\u0648"}, +gaS(){return"\u0646\u067e\u0630\u06cc\u0631\u0641\u062a\u0646"}, +gbk(){return"\u0628\u06cc\u0634\u062a\u0631"}, +gaV(){return"\u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 \u0645\u0646\u0648\u06cc \u067e\u06cc\u0645\u0627\u06cc\u0634"}, +ga8(){return"\u062c\u0627\u06cc\u200c\u06af\u0630\u0627\u0631\u06cc"}, +gb7(){return"\u0645\u0646\u0648\u06cc \u0628\u0627\u0632\u0634\u0648"}, +gbj(){return"\u0628\u0627\u0632\u0622\u0648\u0631\u06cc"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u06f1 \u0646\u0648\u06cc\u0633\u0647 \u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647 \u0627\u0633\u062a"}, +gbg(){return"$remainingCount \u0646\u0648\u06cc\u0633\u0647 \u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647 \u0627\u0633\u062a"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0627\u0633\u06a9\u0646 \u06a9\u0631\u062f\u0646 \u0646\u0648\u0634\u062a\u0627\u0631"}, +gaX(){return"\u0631\u0648\u06cc\u0647"}, +gbh(){return"\u0628\u0633\u062a\u0646 $modalRouteContentName"}, +gbm(){return B.bY}, +ga5(){return"\u062c\u0633\u062a\u062c\u0648 \u062f\u0631 \u0648\u0628"}, +ga1(){return"\u0627\u0646\u062a\u062e\u0627\u0628 \u0647\u0645\u0647"}, +gP(){return"\u0647\u0645\u200c\u0631\u0633\u0627\u0646\u06cc\u2026"}, +gbd(){return"\u0628\u0631\u06af\u0647 $tabIndex \u0627\u0632 $tabCount"}} +A.a2Q.prototype={ +gbe(){return"Ilmoitus"}, +gbf(){return"Takaisin"}, +gb3(){return"Alapaneeli"}, +ga6(){return"Kopioi"}, +ga7(){return"Leikkaa"}, +gaY(){return"Poista"}, +gaN(){return"Valintaikkuna"}, +gO(){return"Hae"}, +gaS(){return"Ohita"}, +gbk(){return"Lis\xe4\xe4"}, +gaV(){return"Avaa navigointivalikko"}, +ga8(){return"Liit\xe4"}, +gb7(){return"Ponnahdusvalikko"}, +gbj(){return"P\xe4ivitys"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 merkki j\xe4ljell\xe4"}, +gbg(){return"$remainingCount merkki\xe4 j\xe4ljell\xe4"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skannaa teksti\xe4"}, +gaX(){return"Sermi"}, +gbh(){return"Sulje $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Hae verkosta"}, +ga1(){return"Valitse kaikki"}, +gP(){return"Jaa\u2026"}, +gbd(){return"V\xe4lilehti $tabIndex kautta $tabCount"}} +A.a2R.prototype={ +gbe(){return"Alerto"}, +gbf(){return"Bumalik"}, +gb3(){return"Bottom Sheet"}, +ga6(){return"Kopyahin"}, +ga7(){return"I-cut"}, +gaY(){return"I-delete"}, +gaN(){return"Dialog"}, +gO(){return"Tumingin sa Itaas"}, +gaS(){return"I-dismiss"}, +gbk(){return"Higit Pa"}, +gaV(){return"Buksan ang menu ng navigation"}, +ga8(){return"I-paste"}, +gb7(){return"Popup na menu"}, +gbj(){return"Nagre-refresh"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 character ang natitira"}, +gbg(){return u._}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"I-scan ang text"}, +gaX(){return"Scrim"}, +gbh(){return"Isara ang $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Maghanap sa Web"}, +ga1(){return"Piliin lahat"}, +gP(){return"Ibahagi..."}, +gbd(){return"Tab $tabIndex ng $tabCount"}} +A.KU.prototype={ +gbe(){return"Alerte"}, +gbf(){return"Retour"}, +gb3(){return"Bottom sheet"}, +ga6(){return"Copier"}, +ga7(){return"Couper"}, +gaY(){return"Supprimer"}, +gaN(){return"Bo\xeete de dialogue"}, +gO(){return"Recherche visuelle"}, +gaS(){return"Ignorer"}, +gbk(){return"Plus"}, +gaV(){return"Ouvrir le menu de navigation"}, +ga8(){return"Coller"}, +gb7(){return"Menu contextuel"}, +gbj(){return"Actualiser"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1\xa0caract\xe8re restant"}, +gbg(){return"$remainingCount\xa0caract\xe8res restants"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Scanner du texte"}, +gaX(){return"Fond"}, +gbh(){return"Fermer $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Rechercher sur le Web"}, +ga1(){return"Tout s\xe9lectionner"}, +gP(){return"Partager\u2026"}, +gbd(){return"Onglet $tabIndex sur $tabCount"}} +A.a2S.prototype={ +gO(){return"Regarder en haut"}, +gaW(){return"Balayer un texte"}, +gaX(){return"Grille"}, +gb3(){return"Zone de contenu dans le bas de l'\xe9cran"}, +gbd(){return"Onglet\xa0$tabIndex sur\xa0$tabCount"}} +A.a2T.prototype={ +gbe(){return"Alerta"}, +gbf(){return"Atr\xe1s"}, +gb3(){return"Panel inferior"}, +ga6(){return"Copiar"}, +ga7(){return"Cortar"}, +gaY(){return"Eliminar"}, +gaN(){return"Cadro de di\xe1logo"}, +gO(){return"Mirar cara arriba"}, +gaS(){return"Ignorar"}, +gbk(){return"M\xe1is"}, +gaV(){return"Abrir men\xfa de navegaci\xf3n"}, +ga8(){return"Pegar"}, +gb7(){return"Men\xfa emerxente"}, +gbj(){return"Actualizar"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 car\xe1cter restante"}, +gbg(){return"$remainingCount caracteres restantes"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Escanear texto"}, +gaX(){return"Sombreado"}, +gbh(){return"Pechar $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Buscar na Web"}, +ga1(){return"Seleccionar todo"}, +gP(){return"Compartir\u2026"}, +gbd(){return"Pestana $tabIndex de $tabCount"}} +A.a2U.prototype={ +gbe(){return"Benachrichtigung"}, +gbf(){return"Zur\xfcck"}, +gb3(){return"Ansicht am unteren Rand"}, +ga6(){return"Kopieren"}, +ga7(){return"Ausschneiden"}, +gaY(){return"L\xf6schen"}, +gaN(){return"Dialogfeld"}, +gO(){return"Nachschlagen"}, +gaS(){return"Schlie\xdfen"}, +gbk(){return"Mehr"}, +gaV(){return"Navigationsmen\xfc \xf6ffnen"}, +ga8(){return"Einsetzen"}, +gb7(){return"Pop-up-Men\xfc"}, +gbj(){return"Aktualisieren"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"Noch 1\xa0Zeichen"}, +gbg(){return"Noch $remainingCount\xa0Zeichen"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Text scannen"}, +gaX(){return"Gitter"}, +gbh(){return"$modalRouteContentName schlie\xdfen"}, +gbm(){return B.P}, +ga5(){return"Im Web suchen"}, +ga1(){return"Alle ausw\xe4hlen"}, +gP(){return"Teilen\u2026"}, +gbd(){return"Tab $tabIndex von $tabCount"}} +A.a2V.prototype={ +gbe(){return"\u0a85\u0ab2\u0ab0\u0acd\u0a9f"}, +gbf(){return"\u0aaa\u0abe\u0a9b\u0ab3"}, +gb3(){return"\u0aac\u0acb\u0a9f\u0aae \u0ab6\u0ac0\u0a9f"}, +ga6(){return"\u0a95\u0ac9\u0aaa\u0abf \u0a95\u0ab0\u0acb"}, +ga7(){return"\u0a95\u0abe\u0aaa\u0acb"}, +gaY(){return"\u0aa1\u0abf\u0ab2\u0ac0\u0a9f \u0a95\u0ab0\u0acb"}, +gaN(){return"\u0ab8\u0a82\u0ab5\u0abe\u0aa6"}, +gO(){return"\u0ab6\u0acb\u0aa7\u0acb"}, +gaS(){return"\u0a9b\u0acb\u0aa1\u0ac0 \u0aa6\u0acb"}, +gbk(){return"\u0ab5\u0aa7\u0ac1"}, +gaV(){return"\u0aa8\u0ac5\u0ab5\u0abf\u0a97\u0ac7\u0ab6\u0aa8 \u0aae\u0ac7\u0aa8\u0ac2 \u0a96\u0acb\u0ab2\u0acb"}, +ga8(){return"\u0aaa\u0ac7\u0ab8\u0acd\u0a9f \u0a95\u0ab0\u0acb"}, +gb7(){return"\u0aaa\u0ac9\u0aaa\u0a85\u0aaa \u0aae\u0ac7\u0aa8\u0ac2"}, +gbj(){return"\u0ab0\u0abf\u0aab\u0acd\u0ab0\u0ac7\u0ab6 \u0a95\u0ab0\u0acb"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 \u0a85\u0a95\u0acd\u0ab7\u0ab0 \u0aac\u0abe\u0a95\u0ac0"}, +gbg(){return"$remainingCount \u0a85\u0a95\u0acd\u0ab7\u0ab0 \u0aac\u0abe\u0a95\u0ac0"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0a9f\u0ac7\u0a95\u0acd\u0ab8\u0acd\u0a9f \u0ab8\u0acd\u0a95\u0ac5\u0aa8 \u0a95\u0ab0\u0acb"}, +gaX(){return"\u0ab8\u0acd\u0a95\u0acd\u0ab0\u0abf\u0aae"}, +gbh(){return"$modalRouteContentName\u0aa8\u0ac7 \u0aac\u0a82\u0aa7 \u0a95\u0ab0\u0acb"}, +gbm(){return B.bY}, +ga5(){return"\u0ab5\u0ac7\u0aac \u0aaa\u0ab0 \u0ab6\u0acb\u0aa7\u0acb"}, +ga1(){return"\u0aac\u0aa7\u0abe \u0aaa\u0ab8\u0a82\u0aa6 \u0a95\u0ab0\u0acb"}, +gP(){return"\u0ab6\u0ac7\u0ab0 \u0a95\u0ab0\u0acb\u2026"}, +gbd(){return"$tabCount\u0aae\u0abe\u0a82\u0aa5\u0ac0 $tabIndex \u0a9f\u0ac5\u0aac"}} +A.a2W.prototype={ +gbe(){return"\u05d4\u05ea\u05e8\u05d0\u05d4"}, +gbf(){return"\u05d4\u05e7\u05d5\u05d3\u05dd"}, +gb3(){return"\u05d2\u05d9\u05dc\u05d9\u05d5\u05df \u05ea\u05d7\u05ea\u05d5\u05df"}, +ga6(){return"\u05d4\u05e2\u05ea\u05e7\u05d4"}, +ga7(){return"\u05d2\u05d6\u05d9\u05e8\u05d4"}, +gaY(){return"\u05de\u05d7\u05d9\u05e7\u05d4"}, +gaN(){return"\u05ea\u05d9\u05d1\u05ea \u05d3\u05d5-\u05e9\u05d9\u05d7"}, +gO(){return"\u05d7\u05d9\u05e4\u05d5\u05e9"}, +gaS(){return"\u05e1\u05d2\u05d9\u05e8\u05d4"}, +gbk(){return"\u05e2\u05d5\u05d3"}, +gaV(){return"\u05e4\u05ea\u05d9\u05d7\u05d4 \u05e9\u05dc \u05ea\u05e4\u05e8\u05d9\u05d8 \u05d4\u05e0\u05d9\u05d5\u05d5\u05d8"}, +ga8(){return"\u05d4\u05d3\u05d1\u05e7\u05d4"}, +gb7(){return"\u05ea\u05e4\u05e8\u05d9\u05d8 \u05e7\u05d5\u05e4\u05e5"}, +gbj(){return"\u05e8\u05e2\u05e0\u05d5\u05df"}, +gbl(){return null}, +gbn(){return"\u05e0\u05d5\u05ea\u05e8\u05d5 $remainingCount \u05ea\u05d5\u05d5\u05d9\u05dd"}, +gbc(){return"\u05e0\u05d5\u05ea\u05e8 \u05ea\u05d5 \u05d0\u05d7\u05d3"}, +gbg(){return"\u05e0\u05d5\u05ea\u05e8\u05d5 $remainingCount \u05ea\u05d5\u05d5\u05d9\u05dd"}, +gbo(){return"\u05e0\u05d5\u05ea\u05e8\u05d5 $remainingCount \u05ea\u05d5\u05d5\u05d9\u05dd"}, +gbp(){return null}, +gaW(){return"\u05e1\u05e8\u05d9\u05e7\u05ea \u05d8\u05e7\u05e1\u05d8"}, +gaX(){return"\u05de\u05d9\u05e1\u05d5\u05da"}, +gbh(){return"\u05e1\u05d2\u05d9\u05e8\u05ea $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"\u05d7\u05d9\u05e4\u05d5\u05e9 \u05d1\u05d0\u05d9\u05e0\u05d8\u05e8\u05e0\u05d8"}, +ga1(){return"\u05d1\u05d7\u05d9\u05e8\u05ea \u05d4\u05db\u05d5\u05dc"}, +gP(){return"\u05e9\u05d9\u05ea\u05d5\u05e3\u2026"}, +gbd(){return"\u05db\u05e8\u05d8\u05d9\u05e1\u05d9\u05d9\u05d4 $tabIndex \u05de\u05ea\u05d5\u05da $tabCount"}} +A.a2X.prototype={ +gbe(){return"\u0905\u0932\u0930\u094d\u091f"}, +gbf(){return"\u0935\u093e\u092a\u0938 \u091c\u093e\u090f\u0902"}, +gb3(){return"\u092c\u0949\u091f\u092e \u0936\u0940\u091f"}, +ga6(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u0947\u0902"}, +ga7(){return"\u0915\u093e\u091f\u0947\u0902"}, +gaY(){return"\u092e\u093f\u091f\u093e\u090f\u0902"}, +gaN(){return"\u0921\u093e\u092f\u0932\u0949\u0917"}, +gO(){return"\u0932\u0941\u0915 \u0905\u092a \u092c\u091f\u0928"}, +gaS(){return"\u0916\u093e\u0930\u093f\u091c \u0915\u0930\u0947\u0902"}, +gbk(){return"\u095b\u094d\u092f\u093e\u0926\u093e"}, +gaV(){return"\u0928\u0947\u0935\u093f\u0917\u0947\u0936\u0928 \u092e\u0947\u0928\u094d\u092f\u0942 \u0916\u094b\u0932\u0947\u0902"}, +ga8(){return"\u091a\u093f\u092a\u0915\u093e\u090f\u0902"}, +gb7(){return"\u092a\u0949\u092a\u0905\u092a \u092e\u0947\u0928\u094d\u092f\u0942"}, +gbj(){return"\u0930\u0940\u092b\u093c\u094d\u0930\u0947\u0936 \u0915\u0930\u0947\u0902"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u090f\u0915 \u0935\u0930\u094d\u0923 \u0906\u0948\u0930 \u0921\u093e\u0932\u093e \u091c\u093e \u0938\u0915\u0924\u093e \u0939\u0948"}, +gbg(){return"$remainingCount \u0935\u0930\u094d\u0923 \u0906\u0948\u0930 \u0921\u093e\u0932\u0947 \u091c\u093e \u0938\u0915\u0924\u0947 \u0939\u0948\u0902"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u091f\u0947\u0915\u094d\u0938\u094d\u091f \u0938\u094d\u0915\u0948\u0928 \u0915\u0930\u0947\u0902"}, +gaX(){return"\u0938\u094d\u0915\u094d\u0930\u093f\u092e"}, +gbh(){return"$modalRouteContentName \u0915\u094b \u092c\u0902\u0926 \u0915\u0930\u0947\u0902"}, +gbm(){return B.fs}, +ga5(){return"\u0935\u0947\u092c \u092a\u0930 \u0916\u094b\u091c\u0947\u0902"}, +ga1(){return"\u0938\u092d\u0940 \u0915\u094b \u091a\u0941\u0928\u0947\u0902"}, +gP(){return"\u0936\u0947\u092f\u0930 \u0915\u0930\u0947\u0902\u2026"}, +gbd(){return"$tabCount \u0915\u093e \u091f\u0948\u092c $tabIndex"}} +A.a2Y.prototype={ +gbe(){return"Upozorenje"}, +gbf(){return"Natrag"}, +gb3(){return"Donja tablica"}, +ga6(){return"Kopiraj"}, +ga7(){return"Izre\u017ei"}, +gaY(){return"Brisanje"}, +gaN(){return"Dijalog"}, +gO(){return"Pogled prema gore"}, +gaS(){return"Odbaci"}, +gbk(){return"Vi\u0161e"}, +gaV(){return"Otvaranje izbornika za navigaciju"}, +ga8(){return"Zalijepi"}, +gb7(){return"Sko\u010dni izbornik"}, +gbj(){return"Osvje\u017ei"}, +gbl(){return"Preostala su $remainingCount znaka"}, +gbn(){return null}, +gbc(){return"Preostao je 1 znak"}, +gbg(){return"Preostalo je $remainingCount znakova"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skeniranje teksta"}, +gaX(){return"Rubno"}, +gbh(){return"Zatvori $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Pretra\u017ei web"}, +ga1(){return"Odaberi sve"}, +gP(){return"Dijeli..."}, +gbd(){return"Kartica $tabIndex od $tabCount"}} +A.a2Z.prototype={ +gbe(){return"\xc9rtes\xedt\xe9s"}, +gbf(){return"Vissza"}, +gb3(){return"Als\xf3 lap"}, +ga6(){return"M\xe1sol\xe1s"}, +ga7(){return"Kiv\xe1g\xe1s"}, +gaY(){return"T\xf6rl\xe9s"}, +gaN(){return"P\xe1rbesz\xe9dablak"}, +gO(){return"Felfel\xe9 n\xe9z\xe9s"}, +gaS(){return"Elvet\xe9s"}, +gbk(){return"T\xf6bb"}, +gaV(){return"Navig\xe1ci\xf3s men\xfc megnyit\xe1sa"}, +ga8(){return"Beilleszt\xe9s"}, +gb7(){return"El\u0151ugr\xf3 men\xfc"}, +gbj(){return"Friss\xedt\xe9s"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 karakter maradt"}, +gbg(){return"$remainingCount karakter maradt"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Sz\xf6veg beolvas\xe1sa"}, +gaX(){return"Bor\xedt\xe1s"}, +gbh(){return"$modalRouteContentName bez\xe1r\xe1sa"}, +gbm(){return B.P}, +ga5(){return"Keres\xe9s az interneten"}, +ga1(){return"\xd6sszes kijel\xf6l\xe9se"}, +gP(){return"Megoszt\xe1s\u2026"}, +gbd(){return"$tabCount/$tabIndex. lap"}} +A.a3_.prototype={ +gbe(){return"\u053e\u0561\u0576\u0578\u0582\u0581\u0578\u0582\u0574"}, +gbf(){return"\u0540\u0565\u057f"}, +gb3(){return"\u0546\u0565\u0580\u0584\u0587\u056b \u0567\u056f\u0580\u0561\u0576"}, +ga6(){return"\u054a\u0561\u057f\u0573\u0565\u0576\u0565\u056c"}, +ga7(){return"\u053f\u057f\u0580\u0565\u056c"}, +gaY(){return"\u054b\u0576\u057b\u0565\u056c"}, +gaN(){return"\u0535\u0580\u056f\u056d\u0578\u057d\u0578\u0582\u0569\u0575\u0561\u0576 \u057a\u0561\u057f\u0578\u0582\u0570\u0561\u0576"}, +gO(){return"\u0553\u0576\u057f\u0580\u0565\u056c"}, +gaS(){return"\u0553\u0561\u056f\u0565\u056c"}, +gbk(){return"\u0531\u0575\u056c"}, +gaV(){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"}, +ga8(){return"\u054f\u0565\u0572\u0561\u0564\u0580\u0565\u056c"}, +gb7(){return"\u0535\u056c\u0576\u0578\u0572 \u0568\u0576\u057f\u0580\u0561\u0581\u0561\u0576\u056f"}, +gbj(){return"\u0539\u0561\u0580\u0574\u0561\u0581\u0576\u0565\u056c"}, +gbl(){return"\u0544\u0576\u0561\u0581 $remainingCount \u0576\u056b\u0577"}, +gbn(){return"\u0544\u0576\u0561\u0581 $remainingCount \u0576\u056b\u0577"}, +gbc(){return"\u0544\u0576\u0561\u0581\u0565\u056c \u0567 1 \u0576\u056b\u0577"}, +gbg(){return"\u0544\u0576\u0561\u0581\u0565\u056c \u0567 $remainingCount \u0576\u056b\u0577"}, +gbo(){return null}, +gbp(){return"\u0546\u056b\u0577\u056b \u0570\u0576\u0561\u0580\u0561\u057e\u0578\u0580\u0578\u0582\u0569\u0575\u0578\u0582\u0576 \u0579\u056f\u0561"}, +gaW(){return"\u054d\u056f\u0561\u0576\u0561\u057e\u0578\u0580\u0565\u056c \u057f\u0565\u0584\u057d\u057f"}, +gaX(){return"\u0534\u056b\u0574\u0561\u056f"}, +gbh(){return"\u0553\u0561\u056f\u0565\u056c\u055d $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"\u0548\u0580\u0578\u0576\u0565\u056c \u0570\u0561\u0574\u0561\u0581\u0561\u0576\u0581\u0578\u0582\u0574"}, +ga1(){return"\u0546\u0577\u0565\u056c \u0562\u0578\u056c\u0578\u0580\u0568"}, +gP(){return"\u053f\u056b\u057d\u057e\u0565\u056c..."}, +gbd(){return"\u0546\u0565\u0580\u0564\u056b\u0580 $tabIndex\u055d $tabCount-\u056b\u0581"}} +A.a30.prototype={ +gbe(){return"Notifikasi"}, +gbf(){return"Kembali"}, +gb3(){return"Sheet Bawah"}, +ga6(){return"Salin"}, +ga7(){return"Potong"}, +gaY(){return"Hapus"}, +gaN(){return"Dialog"}, +gO(){return"Cari"}, +gaS(){return"Tutup"}, +gbk(){return"Lainnya"}, +gaV(){return"Buka menu navigasi"}, +ga8(){return"Tempel"}, +gb7(){return"Menu pop-up"}, +gbj(){return"Memuat ulang"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"Sisa 1 karakter"}, +gbg(){return"Sisa $remainingCount karakter"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Pindai teks"}, +gaX(){return"Scrim"}, +gbh(){return"Tutup $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Telusuri di Web"}, +ga1(){return"Pilih semua"}, +gP(){return"Bagikan..."}, +gbd(){return"Tab $tabIndex dari $tabCount"}} +A.a31.prototype={ +gbe(){return"Tilkynning"}, +gbf(){return"Til baka"}, +gb3(){return"Bla\xf0 ne\xf0st"}, +ga6(){return"Afrita"}, +ga7(){return"Klippa"}, +gaY(){return"Ey\xf0a"}, +gaN(){return"Gluggi"}, +gO(){return"Look Up"}, +gaS(){return"Hunsa"}, +gbk(){return"Meira"}, +gaV(){return"Opna yfirlitsvalmynd"}, +ga8(){return"L\xedma"}, +gb7(){return"Sprettivalmynd"}, +gbj(){return"Endurn\xfdja"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 stafur eftir"}, +gbg(){return"$remainingCount stafir eftir"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skanna texta"}, +gaX(){return"M\xf6skvi"}, +gbh(){return"Loka $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Leita \xe1 vefnum"}, +ga1(){return"Velja allt"}, +gP(){return"Deila..."}, +gbd(){return"Flipi $tabIndex af $tabCount"}} +A.a32.prototype={ +gbe(){return"Avviso"}, +gbf(){return"Indietro"}, +gb3(){return"Riquadro inferiore"}, +ga6(){return"Copia"}, +ga7(){return"Taglia"}, +gaY(){return"Elimina"}, +gaN(){return"Finestra di dialogo"}, +gO(){return"Cerca"}, +gaS(){return"Ignora"}, +gbk(){return"Altro"}, +gaV(){return"Apri il menu di navigazione"}, +ga8(){return"Incolla"}, +gb7(){return"Menu popup"}, +gbj(){return"Aggiorna"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 carattere rimanente"}, +gbg(){return"$remainingCount caratteri rimanenti"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Scansiona testo"}, +gaX(){return"Rete"}, +gbh(){return"Chiudi $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Cerca sul web"}, +ga1(){return"Seleziona tutto"}, +gP(){return"Condividi\u2026"}, +gbd(){return"Scheda $tabIndex di $tabCount"}} +A.a33.prototype={ +gbe(){return"\u901a\u77e5"}, +gbf(){return"\u623b\u308b"}, +gb3(){return"\u30dc\u30c8\u30e0\u30b7\u30fc\u30c8"}, +ga6(){return"\u30b3\u30d4\u30fc"}, +ga7(){return"\u5207\u308a\u53d6\u308a"}, +gaY(){return"\u524a\u9664"}, +gaN(){return"\u30c0\u30a4\u30a2\u30ed\u30b0"}, +gO(){return"\u8abf\u3079\u308b"}, +gaS(){return"\u9589\u3058\u308b"}, +gbk(){return"\u305d\u306e\u4ed6"}, +gaV(){return"\u30ca\u30d3\u30b2\u30fc\u30b7\u30e7\u30f3 \u30e1\u30cb\u30e5\u30fc\u3092\u958b\u304f"}, +ga8(){return"\u8cbc\u308a\u4ed8\u3051"}, +gb7(){return"\u30dd\u30c3\u30d7\u30a2\u30c3\u30d7 \u30e1\u30cb\u30e5\u30fc"}, +gbj(){return"\u66f4\u65b0"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u6b8b\u308a 1 \u6587\u5b57\uff08\u534a\u89d2\u76f8\u5f53\uff09"}, +gbg(){return"\u6b8b\u308a $remainingCount \u6587\u5b57\uff08\u534a\u89d2\u76f8\u5f53\uff09"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u30c6\u30ad\u30b9\u30c8\u3092\u30b9\u30ad\u30e3\u30f3"}, +gaX(){return"\u30b9\u30af\u30ea\u30e0"}, +gbh(){return"$modalRouteContentName \u3092\u9589\u3058\u308b"}, +gbm(){return B.fs}, +ga5(){return"\u30a6\u30a7\u30d6\u3092\u691c\u7d22"}, +ga1(){return"\u3059\u3079\u3066\u3092\u9078\u629e"}, +gP(){return"\u5171\u6709..."}, +gbd(){return"\u30bf\u30d6: $tabIndex/$tabCount"}} +A.a34.prototype={ +gbe(){return"\u10d2\u10d0\u10e4\u10e0\u10d7\u10ee\u10d8\u10da\u10d4\u10d1\u10d0"}, +gbf(){return"\u10e3\u10d9\u10d0\u10dc"}, +gb3(){return"\u10e5\u10d5\u10d4\u10d3\u10d0 \u10e4\u10e3\u10e0\u10ea\u10d4\u10da\u10d8"}, +ga6(){return"\u10d9\u10dd\u10de\u10d8\u10e0\u10d4\u10d1\u10d0"}, +ga7(){return"\u10d0\u10db\u10dd\u10ed\u10e0\u10d0"}, +gaY(){return"\u10ec\u10d0\u10e8\u10da\u10d0"}, +gaN(){return"\u10d3\u10d8\u10d0\u10da\u10dd\u10d2\u10d8"}, +gO(){return"\u10d0\u10d8\u10ee\u10d4\u10d3\u10d4\u10d7 \u10d6\u10d4\u10db\u10dd\u10d7"}, +gaS(){return"\u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0"}, +gbk(){return"\u10db\u10d4\u10e2\u10d8"}, +gaV(){return"\u10e1\u10d0\u10dc\u10d0\u10d5\u10d8\u10d2\u10d0\u10ea\u10d8\u10dd \u10db\u10d4\u10dc\u10d8\u10e3\u10e1 \u10d2\u10d0\u10ee\u10e1\u10dc\u10d0"}, +ga8(){return"\u10e9\u10d0\u10e1\u10db\u10d0"}, +gb7(){return"\u10d0\u10db\u10dd\u10db\u10ee\u10e2\u10d0\u10e0\u10d8 \u10db\u10d4\u10dc\u10d8\u10e3"}, +gbj(){return"\u10d2\u10d0\u10dc\u10d0\u10ee\u10da\u10d4\u10d1\u10d0"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u10d3\u10d0\u10e0\u10e9\u10d0 1 \u10e1\u10d8\u10db\u10d1\u10dd\u10da\u10dd"}, +gbg(){return"\u10d3\u10d0\u10e0\u10e9\u10d0 $remainingCount \u10e1\u10d8\u10db\u10d1\u10dd\u10da\u10dd"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u10e2\u10d4\u10e5\u10e1\u10e2\u10d8\u10e1 \u10e1\u10d9\u10d0\u10dc\u10d8\u10e0\u10d4\u10d1\u10d0"}, +gaX(){return"\u10e1\u10d9\u10e0\u10d8\u10db\u10d8"}, +gbh(){return"$modalRouteContentName-\u10d8\u10e1 \u10d3\u10d0\u10ee\u10e3\u10e0\u10d5\u10d0"}, +gbm(){return B.P}, +ga5(){return"\u10d5\u10d4\u10d1\u10e8\u10d8 \u10eb\u10d8\u10d4\u10d1\u10d0"}, +ga1(){return"\u10e7\u10d5\u10d4\u10da\u10d0\u10e1 \u10d0\u10e0\u10e9\u10d4\u10d5\u10d0"}, +gP(){return"\u10d2\u10d0\u10d6\u10d8\u10d0\u10e0\u10d4\u10d1\u10d0..."}, +gbd(){return"\u10e9\u10d0\u10dc\u10d0\u10e0\u10d7\u10d8 $tabIndex / $tabCount-\u10d3\u10d0\u10dc"}} +A.a35.prototype={ +gbe(){return"\u0414\u0430\u0431\u044b\u043b"}, +gbf(){return"\u0410\u0440\u0442\u049b\u0430"}, +gb3(){return"\u0422\u04e9\u043c\u0435\u043d\u0433\u0456 \u043f\u0430\u0440\u0430\u049b\u0448\u0430"}, +ga6(){return"\u041a\u04e9\u0448\u0456\u0440\u0443"}, +ga7(){return"\u049a\u0438\u044e"}, +gaY(){return"\u0416\u043e\u044e"}, +gaN(){return"\u0414\u0438\u0430\u043b\u043e\u0433\u0442\u044b\u049b \u0442\u0435\u0440\u0435\u0437\u0435"}, +gO(){return"\u0406\u0437\u0434\u0435\u0443"}, +gaS(){return"\u0416\u0430\u0431\u0443"}, +gbk(){return"\u0416\u0430\u044e"}, +gaV(){return"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u043c\u04d9\u0437\u0456\u0440\u0456\u043d \u0430\u0448\u0443"}, +ga8(){return"\u049a\u043e\u044e"}, +gb7(){return"\u049a\u0430\u043b\u049b\u044b\u043c\u0430\u043b\u044b \u0442\u0435\u0440\u0435\u0437\u0435 \u043c\u04d9\u0437\u0456\u0440\u0456"}, +gbj(){return"\u0416\u0430\u04a3\u0430\u0440\u0442\u0443"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 \u0442\u0430\u04a3\u0431\u0430 \u049b\u0430\u043b\u0434\u044b."}, +gbg(){return"$remainingCount \u0442\u0430\u04a3\u0431\u0430 \u049b\u0430\u043b\u0434\u044b."}, +gbo(){return null}, +gbp(){return"\u0422\u0430\u04a3\u0431\u0430\u043b\u0430\u0440 \u049b\u0430\u043b\u043c\u0430\u0434\u044b"}, +gaW(){return"\u041c\u04d9\u0442\u0456\u043d\u0434\u0456 \u0441\u043a\u0430\u043d\u0435\u0440\u043b\u0435\u0443"}, +gaX(){return"\u041a\u0435\u043d\u0435\u043f"}, +gbh(){return"$modalRouteContentName \u0436\u0430\u0431\u0443"}, +gbm(){return B.P}, +ga5(){return"\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0442\u0435\u043d \u0456\u0437\u0434\u0435\u0443"}, +ga1(){return"\u0411\u0430\u0440\u043b\u044b\u0493\u044b\u043d \u0442\u0430\u04a3\u0434\u0430\u0443"}, +gP(){return"\u0411\u04e9\u043b\u0456\u0441\u0443\u2026"}, +gbd(){return"$tabCount/$tabIndex \u049b\u043e\u0439\u044b\u043d\u0434\u044b"}} +A.a36.prototype={ +gbe(){return"\u1787\u17bc\u1793\u178a\u17c6\u178e\u17b9\u1784"}, +gbf(){return"\u1790\u1799\u1780\u17d2\u179a\u17c4\u1799"}, +gb3(){return"\u179f\u1793\u17d2\u179b\u17b9\u1780\u200b\u1781\u17b6\u1784\u1780\u17d2\u179a\u17c4\u1798"}, +ga6(){return"\u1785\u1798\u17d2\u179b\u1784"}, +ga7(){return"\u1780\u17b6\u178f\u17cb"}, +gaY(){return"\u179b\u17bb\u1794"}, +gaN(){return"\u1794\u17d2\u179a\u17a2\u1794\u17cb"}, +gO(){return"\u179a\u1780\u1798\u17be\u179b"}, +gaS(){return"\u1785\u17d2\u179a\u17b6\u1793\u200b\u1785\u17c4\u179b"}, +gbk(){return"\u1785\u17d2\u179a\u17be\u1793\u200b\u1791\u17c0\u178f"}, +gaV(){return"\u1794\u17be\u1780\u200b\u1798\u17c9\u17ba\u1793\u17bb\u1799\u179a\u17bb\u1780\u179a\u1780"}, +ga8(){return"\u178a\u17b6\u1780\u17cb\u200b\u1785\u17bc\u179b"}, +gb7(){return"\u200b\u1798\u17c9\u17ba\u1793\u17bb\u1799\u200b\u179b\u17c4\u178f\u200b\u17a1\u17be\u1784"}, +gbj(){return"\u1795\u17d2\u1791\u17bb\u1780\u17a1\u17be\u1784\u179c\u17b7\u1789"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u1793\u17c5\u179f\u179b\u17cb\u200b 1 \u178f\u17bd\u200b\u1791\u17c0\u178f"}, +gbg(){return"\u1793\u17c5\u179f\u179b\u17cb $remainingCount \u178f\u17bd\u200b\u1791\u17c0\u178f"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u179f\u17d2\u1780\u17c1\u1793\u200b\u17a2\u1780\u17d2\u179f\u179a"}, +gaX(){return"\u1795\u17d2\u1791\u17b6\u17c6\u1784\u179f\u17d2\u179a\u17a2\u17b6\u1794\u17cb"}, +gbh(){return"\u1794\u17b7\u1791 $modalRouteContentName"}, +gbm(){return B.fs}, +ga5(){return"\u179f\u17d2\u179c\u17c2\u1784\u179a\u1780\u200b\u179b\u17be\u1794\u178e\u17d2\u178a\u17b6\u1789"}, +ga1(){return"\u1787\u17d2\u179a\u17be\u179f\u179a\u17be\u179f\u200b\u1791\u17b6\u17c6\u1784\u17a2\u179f\u17cb"}, +gP(){return"\u1785\u17c2\u1780\u179a\u17c6\u179b\u17c2\u1780..."}, +gbd(){return"\u1795\u17d2\u1791\u17b6\u17c6\u1784 $tabIndex \u1780\u17d2\u1793\u17bb\u1784\u200b\u1785\u17c6\u178e\u17c4\u1798\u200b $tabCount"}} +A.a37.prototype={ +gbe(){return"\u0c8e\u0c9a\u0ccd\u0c9a\u0cb0\u0cbf\u0c95\u0cc6"}, +gbf(){return"\u0cb9\u0cbf\u0c82\u0ca4\u0cbf\u0cb0\u0cc1\u0c97\u0cbf"}, +gb3(){return"\u0c95\u0cc6\u0cb3\u0cad\u0cbe\u0c97\u0ca6 \u0cb6\u0cc0\u0c9f\u0ccd"}, +ga6(){return"\u0ca8\u0c95\u0cb2\u0cbf\u0cb8\u0cbf"}, +ga7(){return"\u0c95\u0ca4\u0ccd\u0ca4\u0cb0\u0cbf\u0cb8\u0cbf"}, +gaY(){return"\u0c85\u0cb3\u0cbf\u0cb8\u0cbf"}, +gaN(){return"\u0ca1\u0cc8\u0cb2\u0cbe\u0c97\u0ccd"}, +gO(){return"\u0cae\u0cc7\u0cb2\u0cc6 \u0ca8\u0ccb\u0ca1\u0cbf"}, +gaS(){return"\u0cb5\u0c9c\u0cbe\u0c97\u0cca\u0cb3\u0cbf\u0cb8\u0cbf"}, +gbk(){return"\u0c87\u0ca8\u0ccd\u0ca8\u0cb7\u0ccd\u0c9f\u0cc1"}, +gaV(){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"}, +ga8(){return"\u0c85\u0c82\u0c9f\u0cbf\u0cb8\u0cbf"}, +gb7(){return"\u0caa\u0cbe\u0caa\u0ccd\u0c85\u0caa\u0ccd \u0cae\u0cc6\u0ca8\u0cc1"}, +gbj(){return"\u0cb0\u0cbf\u0cab\u0ccd\u0cb0\u0cc6\u0cb6\u0ccd \u0cae\u0cbe\u0ca1\u0cbf"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 \u0c85\u0c95\u0ccd\u0cb7\u0cb0 \u0c89\u0cb3\u0cbf\u0ca6\u0cbf\u0ca6\u0cc6"}, +gbg(){return"$remainingCount \u0c85\u0c95\u0ccd\u0cb7\u0cb0\u0c97\u0cb3\u0cc1 \u0c89\u0cb3\u0cbf\u0ca6\u0cbf\u0cb5\u0cc6"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0caa\u0ca0\u0ccd\u0caf\u0cb5\u0ca8\u0ccd\u0ca8\u0cc1 \u0cb8\u0ccd\u0c95\u0ccd\u0caf\u0cbe\u0ca8\u0ccd \u0cae\u0cbe\u0ca1\u0cbf"}, +gaX(){return"\u0cb8\u0ccd\u0c95\u0ccd\u0cb0\u0cbf\u0cae\u0ccd"}, +gbh(){return"$modalRouteContentName \u0c85\u0ca8\u0ccd\u0ca8\u0cc1 \u0cae\u0cc1\u0c9a\u0ccd\u0c9a\u0cbf\u0cb0\u0cbf"}, +gbm(){return B.bY}, +ga5(){return"\u0cb5\u0cc6\u0cac\u0ccd\u200c\u0ca8\u0cb2\u0ccd\u0cb2\u0cbf \u0cb9\u0cc1\u0ca1\u0cc1\u0c95\u0cbf"}, +ga1(){return"\u0c8e\u0cb2\u0ccd\u0cb2\u0cb5\u0ca8\u0ccd\u0ca8\u0cc2 \u0c86\u0caf\u0ccd\u0c95\u0cc6 \u0cae\u0cbe\u0ca1\u0cbf"}, +gP(){return"\u0cb9\u0c82\u0c9a\u0cbf\u0c95\u0cca\u0cb3\u0ccd\u0cb3\u0cbf..."}, +gbd(){return"$tabCount \u0cb0\u0cb2\u0ccd\u0cb2\u0cbf\u0ca8 $tabIndex \u0c9f\u0ccd\u0caf\u0cbe\u0cac\u0ccd"}} +A.a38.prototype={ +gbe(){return"\uc54c\ub9bc"}, +gbf(){return"\ub4a4\ub85c"}, +gb3(){return"\ud558\ub2e8 \uc2dc\ud2b8"}, +ga6(){return"\ubcf5\uc0ac"}, +ga7(){return"\uc798\ub77c\ub0c4"}, +gaY(){return"\uc0ad\uc81c"}, +gaN(){return"\ub300\ud654\uc0c1\uc790"}, +gO(){return"\ucc3e\uae30"}, +gaS(){return"\ub2eb\uae30"}, +gbk(){return"\ub354\ubcf4\uae30"}, +gaV(){return"\ud0d0\uc0c9 \uba54\ub274 \uc5f4\uae30"}, +ga8(){return"\ubd99\uc5ec\ub123\uae30"}, +gb7(){return"\ud31d\uc5c5 \uba54\ub274"}, +gbj(){return"\uc0c8\ub85c\uace0\uce68"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1\uc790 \ub0a8\uc74c"}, +gbg(){return"$remainingCount\uc790 \ub0a8\uc74c"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\ud14d\uc2a4\ud2b8 \uc2a4\uce94"}, +gaX(){return"\uc2a4\ud06c\ub9bc"}, +gbh(){return"$modalRouteContentName \ub2eb\uae30"}, +gbm(){return B.fs}, +ga5(){return"\uc6f9 \uac80\uc0c9"}, +ga1(){return"\uc804\uccb4 \uc120\ud0dd"}, +gP(){return"\uacf5\uc720..."}, +gbd(){return"\ud0ed $tabCount\uac1c \uc911 $tabIndex\ubc88\uc9f8"}} +A.a39.prototype={ +gbe(){return"\u042d\u0441\u043a\u0435\u0440\u0442\u04af\u04af"}, +gbf(){return"\u0410\u0440\u0442\u043a\u0430"}, +gb3(){return"\u042b\u043b\u0434\u044b\u0439\u043a\u044b \u044d\u043a\u0440\u0430\u043d"}, +ga6(){return"\u041a\u04e9\u0447\u04af\u0440\u04af\u04af"}, +ga7(){return"\u041a\u0435\u0441\u04af\u04af"}, +gaY(){return"\u0416\u043e\u043a \u043a\u044b\u043b\u0443\u0443"}, +gaN(){return"\u0414\u0438\u0430\u043b\u043e\u0433"}, +gO(){return"\u0418\u0437\u0434\u04e9\u04e9"}, +gaS(){return"\u0416\u0430\u0431\u0443\u0443"}, +gbk(){return"\u0414\u0430\u0433\u044b"}, +gaV(){return"\u0427\u0430\u0431\u044b\u0442\u0442\u043e\u043e \u043c\u0435\u043d\u044e\u0441\u0443\u043d \u0430\u0447\u0443\u0443"}, +ga8(){return"\u0427\u0430\u043f\u0442\u043e\u043e"}, +gb7(){return"\u041a\u0430\u043b\u043a\u044b\u043f \u0447\u044b\u0433\u0443\u0443\u0447\u0443 \u043c\u0435\u043d\u044e"}, +gbj(){return"\u0416\u0430\u04a3\u044b\u0440\u0442\u0443\u0443"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 \u0431\u0435\u043b\u0433\u0438 \u043a\u0430\u043b\u0434\u044b"}, +gbg(){return"$remainingCount \u0431\u0435\u043b\u0433\u0438 \u043a\u0430\u043b\u0434\u044b"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0422\u0435\u043a\u0441\u0442\u0442\u0438 \u0441\u043a\u0430\u043d\u0434\u043e\u043e"}, +gaX(){return"\u041a\u0435\u043d\u0435\u043f"}, +gbh(){return"$modalRouteContentName \u0436\u0430\u0431\u0443\u0443"}, +gbm(){return B.P}, +ga5(){return"\u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0442\u0435\u043d \u0438\u0437\u0434\u04e9\u04e9"}, +ga1(){return"\u0411\u0430\u0430\u0440\u044b\u043d \u0442\u0430\u043d\u0434\u043e\u043e"}, +gP(){return"\u0411\u04e9\u043b\u04af\u0448\u04af\u04af\u2026"}, +gbd(){return"$tabCount \u043a\u044b\u043d\u0430\u043b\u043c\u0430 \u0438\u0447\u0438\u043d\u0435\u043d $tabIndex"}} +A.a3a.prototype={ +gbe(){return"\u0e81\u0eb2\u0e99\u0ec0\u0e95\u0eb7\u0ead\u0e99"}, +gbf(){return"\u0e81\u0eb1\u0e9a\u0e84\u0eb7\u0e99"}, +gb3(){return"\u0e8a\u0eb5\u0e94\u0ea5\u0eb8\u0ec8\u0ea1\u0eaa\u0eb8\u0e94"}, +ga6(){return"\u0eaa\u0eb3\u0ec0\u0e99\u0ebb\u0eb2"}, +ga7(){return"\u0e95\u0eb1\u0e94"}, +gaY(){return"\u0ea5\u0eb6\u0e9a"}, +gaN(){return"\u0e82\u0ecd\u0ec9\u0e84\u0ea7\u0eb2\u0ea1"}, +gO(){return"\u0e8a\u0ead\u0e81\u0eab\u0eb2\u0e82\u0ecd\u0ec9\u0ea1\u0eb9\u0e99"}, +gaS(){return"\u0e9b\u0eb4\u0e94\u0ec4\u0ea7\u0ec9"}, +gbk(){return"\u0ec0\u0e9e\u0eb5\u0ec8\u0ea1\u0ec0\u0e95\u0eb5\u0ea1"}, +gaV(){return"\u0ec0\u0e9b\u0eb5\u0e94\u0ec0\u0ea1\u0e99\u0eb9\u0e81\u0eb2\u0e99\u0e99\u0eb3\u0e97\u0eb2\u0e87"}, +ga8(){return"\u0ea7\u0eb2\u0e87"}, +gb7(){return"\u0ec0\u0ea1\u0e99\u0eb9\u0e9b\u0eb1\u0ead\u0e9a\u0ead\u0eb1\u0e9a"}, +gbj(){return"\u0ec2\u0eab\u0ebc\u0e94\u0e84\u0eb7\u0e99\u0ec3\u0edd\u0ec8"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u0e8d\u0eb1\u0e87\u0ead\u0eb5\u0e81 1 \u0e95\u0ebb\u0ea7\u0ead\u0eb1\u0e81\u0eaa\u0ead\u0e99"}, +gbg(){return"\u0e8d\u0eb1\u0e87\u0ead\u0eb5\u0e81 $remainingCount \u0e95\u0ebb\u0ea7\u0ead\u0eb1\u0e81\u0eaa\u0ead\u0e99"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0eaa\u0eb0\u0ec1\u0e81\u0e99\u0e82\u0ecd\u0ec9\u0e84\u0ea7\u0eb2\u0ea1"}, +gaX(){return"Scrim"}, +gbh(){return"\u0e9b\u0eb4\u0e94 $modalRouteContentName"}, +gbm(){return B.bY}, +ga5(){return"\u0e8a\u0ead\u0e81\u0eab\u0eb2\u0ea2\u0eb9\u0ec8\u0ead\u0eb4\u0e99\u0ec0\u0e95\u0eb5\u0ec0\u0e99\u0eb1\u0e94"}, +ga1(){return"\u0ec0\u0ea5\u0eb7\u0ead\u0e81\u0e97\u0eb1\u0e87\u0edd\u0ebb\u0e94"}, +gP(){return"\u0ec1\u0e9a\u0ec8\u0e87\u0e9b\u0eb1\u0e99..."}, +gbd(){return"\u0ec1\u0e96\u0e9a\u0e97\u0eb5 $tabIndex \u0e88\u0eb2\u0e81\u0e97\u0eb1\u0e87\u0edd\u0ebb\u0e94 $tabCount"}} +A.a3b.prototype={ +gbe(){return"\u012esp\u0117jimas"}, +gbf(){return"Atgal"}, +gb3(){return"Apatinis lapas"}, +ga6(){return"Kopijuoti"}, +ga7(){return"I\u0161kirpti"}, +gaY(){return"I\u0161trinti"}, +gaN(){return"Dialogo langas"}, +gO(){return"Ie\u0161koti"}, +gaS(){return"Atsisakyti"}, +gbk(){return"Daugiau"}, +gaV(){return"Atidaryti nar\u0161ymo meniu"}, +ga8(){return"\u012eklijuoti"}, +gb7(){return"I\u0161\u0161okantysis meniu"}, +gbj(){return"Atnaujinti"}, +gbl(){return"Liko $remainingCount simboliai"}, +gbn(){return"Liko $remainingCount simbolio"}, +gbc(){return"Liko 1 simbolis"}, +gbg(){return"Liko $remainingCount simboli\u0173"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Nuskaityti tekst\u0105"}, +gaX(){return"U\u017esklanda"}, +gbh(){return"U\u017edaryti \u201e$modalRouteContentName\u201c"}, +gbm(){return B.P}, +ga5(){return"Ie\u0161koti \u017einiatinklyje"}, +ga1(){return"Pasirinkti visk\u0105"}, +gP(){return"Bendrinti..."}, +gbd(){return"$tabIndex skirtukas i\u0161 $tabCount"}} +A.a3c.prototype={ +gbe(){return"Br\u012bdin\u0101jums"}, +gbf(){return"Atpaka\u013c"}, +gb3(){return"Ekr\u0101na apak\u0161da\u013cas lapa"}, +ga6(){return"Kop\u0113t"}, +ga7(){return"Izgriezt"}, +gaY(){return"Dz\u0113st"}, +gaN(){return"Dialoglodzi\u0146\u0161"}, +gO(){return"Mekl\u0113t"}, +gaS(){return"Ner\u0101d\u012bt"}, +gbk(){return"Vair\u0101k"}, +gaV(){return"Atv\u0113rt navig\u0101cijas izv\u0113lni"}, +ga8(){return"Iel\u012bm\u0113t"}, +gb7(){return"Uznirsto\u0161\u0101 izv\u0113lne"}, +gbj(){return"Atsvaidzin\u0101t"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"Atlikusi 1\xa0rakstz\u012bme."}, +gbg(){return"Atliku\u0161as $remainingCount\xa0rakstz\u012bmes."}, +gbo(){return null}, +gbp(){return"Nav atlikusi neviena rakstz\u012bme."}, +gaW(){return"Sken\u0113t tekstu"}, +gaX(){return"P\u0101rkl\u0101jums"}, +gbh(){return"Aizv\u0113rt $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Mekl\u0113t t\u012bmekl\u012b"}, +ga1(){return"Atlas\u012bt visu"}, +gP(){return"Kop\u012bgot\u2026"}, +gbd(){return"$tabIndex.\xa0cilne no\xa0$tabCount"}} +A.a3d.prototype={ +gbe(){return"\u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0434\u0443\u0432\u0430\u045a\u0435"}, +gbf(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb3(){return"\u0414\u043e\u043b\u0435\u043d \u043b\u0438\u0441\u0442"}, +ga6(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +ga7(){return"\u0418\u0441\u0435\u0447\u0438"}, +gaY(){return"\u0418\u0437\u0431\u0440\u0438\u0448\u0438"}, +gaN(){return"\u0414\u0438\u0458\u0430\u043b\u043e\u0433"}, +gO(){return"\u041f\u043e\u0433\u043b\u0435\u0434\u043d\u0435\u0442\u0435 \u043d\u0430\u0433\u043e\u0440\u0435"}, +gaS(){return"\u041e\u0442\u0444\u0440\u043b\u0438"}, +gbk(){return"\u0423\u0448\u0442\u0435"}, +gaV(){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"}, +ga8(){return"\u0417\u0430\u043b\u0435\u043f\u0438"}, +gb7(){return"\u0421\u043a\u043e\u043a\u0430\u0447\u043a\u043e \u043c\u0435\u043d\u0438"}, +gbj(){return"\u041e\u0441\u0432\u0435\u0436\u0438"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043d\u0443\u0432\u0430 \u0443\u0448\u0442\u0435 1 \u0437\u043d\u0430\u043a"}, +gbg(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043d\u0443\u0432\u0430\u0430\u0442 \u0443\u0448\u0442\u0435 $remainingCount \u0437\u043d\u0430\u0446\u0438"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0421\u043a\u0435\u043d\u0438\u0440\u0430\u0458\u0442\u0435 \u0433\u043e \u0442\u0435\u043a\u0441\u0442\u043e\u0442"}, +gaX(){return"\u0421\u043a\u0440\u0438\u043c"}, +gbh(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0435\u0442\u0435 \u0458\u0430 $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"\u041f\u0440\u0435\u0431\u0430\u0440\u0430\u0458\u0442\u0435 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442"}, +ga1(){return"\u0418\u0437\u0431\u0435\u0440\u0438 \u0433\u0438 \u0441\u0438\u0442\u0435"}, +gP(){return"\u0421\u043f\u043e\u0434\u0435\u043b\u0435\u0442\u0435..."}, +gbd(){return"\u041a\u0430\u0440\u0442\u0438\u0447\u043a\u0430 $tabIndex \u043e\u0434 $tabCount"}} +A.a3e.prototype={ +gbe(){return"\u0d2e\u0d41\u0d28\u0d4d\u0d28\u0d31\u0d3f\u0d2f\u0d3f\u0d2a\u0d4d\u0d2a\u0d4d"}, +gbf(){return"\u0d2e\u0d1f\u0d19\u0d4d\u0d19\u0d41\u0d15"}, +gb3(){return"\u0d2c\u0d4b\u0d1f\u0d4d\u0d1f\u0d02 \u0d37\u0d40\u0d31\u0d4d\u0d31\u0d4d"}, +ga6(){return"\u0d2a\u0d15\u0d7c\u0d24\u0d4d\u0d24\u0d41\u0d15"}, +ga7(){return"\u0d2e\u0d41\u0d31\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gaY(){return"\u0d07\u0d32\u0d4d\u0d32\u0d3e\u0d24\u0d3e\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gaN(){return"\u0d21\u0d2f\u0d32\u0d4b\u0d17\u0d4d"}, +gO(){return"\u0d2e\u0d41\u0d15\u0d33\u0d3f\u0d32\u0d47\u0d15\u0d4d\u0d15\u0d4d \u0d28\u0d4b\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gaS(){return"\u0d28\u0d3f\u0d30\u0d38\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbk(){return"\u0d15\u0d42\u0d1f\u0d41\u0d24\u0d7d"}, +gaV(){return"\u0d28\u0d3e\u0d35\u0d3f\u0d17\u0d47\u0d37\u0d7b \u0d2e\u0d46\u0d28\u0d41 \u0d24\u0d41\u0d31\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +ga8(){return"\u0d12\u0d1f\u0d4d\u0d1f\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gb7(){return"\u0d2a\u0d4b\u0d2a\u0d4d\u0d2a\u0d4d \u0d05\u0d2a\u0d4d\u0d2a\u0d4d \u0d2e\u0d46\u0d28\u0d41"}, +gbj(){return"\u0d31\u0d40\u0d2b\u0d4d\u0d30\u0d37\u0d4d \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u0d12\u0d30\u0d41 \u0d2a\u0d4d\u0d30\u0d24\u0d40\u0d15\u0d02 \u0d36\u0d47\u0d37\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d41"}, +gbg(){return"$remainingCount \u0d2a\u0d4d\u0d30\u0d24\u0d40\u0d15\u0d19\u0d4d\u0d19\u0d7e \u0d36\u0d47\u0d37\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d28\u0d4d\u0d28\u0d41"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0d1f\u0d46\u0d15\u0d4d\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4d \u0d38\u0d4d\u200c\u0d15\u0d3e\u0d7b \u0d1a\u0d46\u0d2f\u0d4d\u0d2f\u0d41\u0d15"}, +gaX(){return"\u0d38\u0d4d\u0d15\u0d4d\u0d30\u0d3f\u0d02"}, +gbh(){return"$modalRouteContentName \u0d05\u0d1f\u0d2f\u0d4d\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gbm(){return B.bY}, +ga5(){return"\u0d35\u0d46\u0d2c\u0d3f\u0d7d \u0d24\u0d3f\u0d30\u0d2f\u0d41\u0d15"}, +ga1(){return"\u0d0e\u0d32\u0d4d\u0d32\u0d3e\u0d02 \u0d24\u0d3f\u0d30\u0d1e\u0d4d\u0d1e\u0d46\u0d1f\u0d41\u0d15\u0d4d\u0d15\u0d41\u0d15"}, +gP(){return"\u0d2a\u0d19\u0d4d\u0d15\u0d3f\u0d1f\u0d41\u0d15..."}, +gbd(){return"$tabCount-\u0d7d $tabIndex"}} +A.a3f.prototype={ +gbe(){return"\u0421\u044d\u0440\u044d\u043c\u0436\u043b\u04af\u04af\u043b\u044d\u0433"}, +gbf(){return"\u0411\u0443\u0446\u0430\u0445"}, +gb3(){return"\u0414\u043e\u043e\u0434 \u0445\u04af\u0441\u043d\u044d\u0433\u0442"}, +ga6(){return"\u0425\u0443\u0443\u043b\u0430\u0445"}, +ga7(){return"\u0422\u0430\u0441\u043b\u0430\u0445"}, +gaY(){return"\u0423\u0441\u0442\u0433\u0430\u0445"}, +gaN(){return"\u0425\u0430\u0440\u0438\u043b\u0446\u0430\u0445 \u0446\u043e\u043d\u0445"}, +gO(){return"\u0414\u044d\u044d\u0448\u044d\u044d \u0445\u0430\u0440\u0430\u0445"}, +gaS(){return"\u04ae\u043b \u0445\u044d\u0440\u044d\u0433\u0441\u044d\u0445"}, +gbk(){return"\u0411\u0443\u0441\u0430\u0434"}, +gaV(){return"\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u044b\u043d \u0446\u044d\u0441\u0438\u0439\u0433 \u043d\u044d\u044d\u0445"}, +ga8(){return"\u0411\u0443\u0443\u043b\u0433\u0430\u0445"}, +gb7(){return"\u041f\u043e\u043f\u0430\u043f \u0446\u044d\u0441"}, +gbj(){return"\u0421\u044d\u0440\u0433\u044d\u044d\u0445"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 \u0442\u044d\u043c\u0434\u044d\u0433\u0442 \u04af\u043b\u0434\u0441\u044d\u043d"}, +gbg(){return"$remainingCount \u0442\u044d\u043c\u0434\u044d\u0433\u0442 \u04af\u043b\u0434\u0441\u044d\u043d"}, +gbo(){return null}, +gbp(){return"No characters remaining"}, +gaW(){return"\u0422\u0435\u043a\u0441\u0442\u0438\u0439\u0433 \u0441\u043a\u0430\u043d \u0445\u0438\u0439\u0445"}, +gaX(){return"\u0421\u043a\u0440\u0438\u043c"}, +gbh(){return"$modalRouteContentName-\u0433 \u0445\u0430\u0430\u0445"}, +gbm(){return B.P}, +ga5(){return"\u0412\u0435\u0431\u044d\u044d\u0441 \u0445\u0430\u0439\u0445"}, +ga1(){return"\u0411\u04af\u0433\u0434\u0438\u0439\u0433 \u0441\u043e\u043d\u0433\u043e\u0445"}, +gP(){return"\u0425\u0443\u0432\u0430\u0430\u043b\u0446\u0430\u0445..."}, +gbd(){return"$tabCount-\u043d $tabIndex-\u0440 \u0442\u0430\u0431"}} +A.a3g.prototype={ +gbe(){return"\u0938\u0942\u091a\u0928\u093e"}, +gbf(){return"\u092e\u093e\u0917\u0947"}, +gb3(){return"\u0924\u0933\u093e\u0936\u0940 \u0905\u0938\u0932\u0947\u0932\u0940 \u0936\u0940\u091f"}, +ga6(){return"\u0915\u0949\u092a\u0940 \u0915\u0930\u093e"}, +ga7(){return"\u0915\u091f \u0915\u0930\u093e"}, +gaY(){return"\u0939\u091f\u0935\u093e"}, +gaN(){return"\u0921\u093e\u092f\u0932\u0949\u0917"}, +gO(){return"\u0936\u094b\u0927 \u0918\u094d\u092f\u093e"}, +gaS(){return"\u0921\u093f\u0938\u092e\u093f\u0938 \u0915\u0930\u093e"}, +gbk(){return"\u0906\u0923\u0916\u0940"}, +gaV(){return"\u0928\u0947\u0935\u094d\u0939\u093f\u0917\u0947\u0936\u0928 \u092e\u0947\u0928\u0942 \u0909\u0918\u0921\u093e"}, +ga8(){return"\u092a\u0947\u0938\u094d\u091f \u0915\u0930\u093e"}, +gb7(){return"\u092a\u0949\u092a\u0905\u092a \u092e\u0947\u0928\u0942"}, +gbj(){return"\u0930\u093f\u092b\u094d\u0930\u0947\u0936 \u0915\u0930\u093e"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u090f\u0915 \u0935\u0930\u094d\u0923 \u0936\u093f\u0932\u094d\u0932\u0915"}, +gbg(){return"$remainingCount \u0935\u0930\u094d\u0923 \u0936\u093f\u0932\u094d\u0932\u0915"}, +gbo(){return null}, +gbp(){return"\u0915\u094b\u0923\u0924\u0947\u0939\u0940 \u0935\u0930\u094d\u0923 \u0936\u093f\u0932\u094d\u0932\u0915 \u0928\u093e\u0939\u0940\u0924"}, +gaW(){return"\u092e\u091c\u0915\u0942\u0930 \u0938\u094d\u0915\u0945\u0928 \u0915\u0930\u093e"}, +gaX(){return"\u0938\u094d\u0915\u094d\u0930\u093f\u092e"}, +gbh(){return"$modalRouteContentName \u092c\u0902\u0926 \u0915\u0930\u093e"}, +gbm(){return B.fs}, +ga5(){return"\u0935\u0947\u092c\u0935\u0930 \u0936\u094b\u0927\u093e"}, +ga1(){return"\u0938\u0930\u094d\u0935 \u0928\u093f\u0935\u0921\u093e"}, +gP(){return"\u0936\u0947\u0905\u0930 \u0915\u0930\u093e..."}, +gbd(){return"$tabCount \u092a\u0948\u0915\u0940 $tabIndex \u091f\u0945\u092c"}} +A.a3h.prototype={ +gbe(){return"Makluman"}, +gbf(){return"Kembali"}, +gb3(){return"Helaian Bawah"}, +ga6(){return"Salin"}, +ga7(){return"Potong"}, +gaY(){return"Padam"}, +gaN(){return"Dialog"}, +gO(){return"Lihat ke Atas"}, +gaS(){return"Tolak"}, +gbk(){return"Lagi"}, +gaV(){return"Buka menu navigasi"}, +ga8(){return"Tampal"}, +gb7(){return"Menu pop timbul"}, +gbj(){return"Muat semula"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 aksara lagi"}, +gbg(){return"$remainingCount aksara lagi"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Imbas teks"}, +gaX(){return"Scrim"}, +gbh(){return"Tutup $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Buat carian pada Web"}, +ga1(){return"Pilih semua"}, +gP(){return"Kongsi..."}, +gbd(){return"Tab $tabIndex dari $tabCount"}} +A.a3i.prototype={ +gbe(){return"\u101e\u1010\u102d\u1015\u1031\u1038\u1001\u103b\u1000\u103a"}, +gbf(){return"\u1014\u1031\u102c\u1000\u103a\u101e\u102d\u102f\u1037"}, +gb3(){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"}, +ga6(){return"\u1019\u102d\u1010\u1039\u1010\u1030\u1000\u1030\u1038\u101b\u1014\u103a"}, +ga7(){return"\u1016\u103c\u1010\u103a\u101a\u1030\u101b\u1014\u103a"}, +gaY(){return"\u1016\u103b\u1000\u103a\u101b\u1014\u103a"}, +gaN(){return"\u1012\u102d\u102f\u1004\u103a\u101a\u102c\u101c\u1031\u102c\u1037"}, +gO(){return"\u1021\u1015\u1031\u102b\u103a\u1000\u103c\u100a\u103a\u1037\u101b\u1014\u103a"}, +gaS(){return"\u1015\u101a\u103a\u101b\u1014\u103a"}, +gbk(){return"\u1014\u1031\u102c\u1000\u103a\u1011\u1015\u103a"}, +gaV(){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"}, +ga8(){return"\u1000\u1030\u1038\u1011\u100a\u1037\u103a\u101b\u1014\u103a"}, +gb7(){return"\u1015\u1031\u102b\u1037\u1015\u103a\u1021\u1015\u103a\u1019\u102e\u1014\u1030\u1038"}, +gbj(){return"\u1015\u103c\u1014\u103a\u101c\u100a\u103a\u1005\u1010\u1004\u103a\u101b\u1014\u103a"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u1021\u1000\u1039\u1001\u101b\u102c \u1041 \u101c\u102f\u1036\u1038\u1000\u103b\u1014\u103a\u101e\u100a\u103a"}, +gbg(){return"\u1021\u1000\u1039\u1001\u101b\u102c $remainingCount \u101c\u102f\u1036\u1038\u1000\u103b\u1014\u103a\u101e\u100a\u103a"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u1005\u102c\u101e\u102c\u1038 \u1005\u1000\u1004\u103a\u1016\u1010\u103a\u101b\u1014\u103a"}, +gaX(){return"Scrim"}, +gbh(){return"$modalRouteContentName \u1015\u102d\u1010\u103a\u101b\u1014\u103a"}, +gbm(){return B.bY}, +ga5(){return"\u101d\u1018\u103a\u1010\u103d\u1004\u103a\u101b\u103e\u102c\u101b\u1014\u103a"}, +ga1(){return"\u1021\u102c\u1038\u101c\u102f\u1036\u1038 \u101b\u103d\u1031\u1038\u101b\u1014\u103a"}, +gP(){return"\u1019\u103b\u103e\u101d\u1031\u101b\u1014\u103a..."}, +gbd(){return"\u1010\u1018\u103a $tabCount \u1021\u1014\u1000\u103a $tabIndex \u1001\u102f"}} +A.a3j.prototype={ +gbe(){return"Varsel"}, +gbf(){return"Tilbake"}, +gb3(){return"Felt nederst"}, +ga6(){return"Kopi\xe9r"}, +ga7(){return"Klipp ut"}, +gaY(){return"Slett"}, +gaN(){return"Dialogboks"}, +gO(){return"Sl\xe5 opp"}, +gaS(){return"Avvis"}, +gbk(){return"Mer"}, +gaV(){return"\xc5pne navigasjonsmenyen"}, +ga8(){return"Lim inn"}, +gb7(){return"Forgrunnsmeny"}, +gbj(){return"Laster inn p\xe5 nytt"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 tegn gjenst\xe5r"}, +gbg(){return"$remainingCount tegn gjenst\xe5r"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skann tekst"}, +gaX(){return"Vev"}, +gbh(){return"Lukk $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"S\xf8k p\xe5 nettet"}, +ga1(){return"Velg alle"}, +gP(){return"Del\u2026"}, +gbd(){return"Fane $tabIndex av $tabCount"}} +A.a3k.prototype={ +gbe(){return"\u0905\u0932\u0930\u094d\u091f"}, +gbf(){return"\u092a\u091b\u093e\u0921\u093f \u091c\u093e\u0928\u0941\u0939\u094b\u0938\u094d"}, +gb3(){return"\u092a\u0941\u091b\u093e\u0930\u0915\u094b \u092a\u093e\u0928\u093e"}, +ga6(){return"\u092a\u094d\u0930\u0924\u093f\u0932\u093f\u092a\u093f \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +ga7(){return"\u0915\u093e\u091f\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaY(){return"\u092e\u0947\u091f\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaN(){return"\u0938\u0902\u0935\u093e\u0926"}, +gO(){return"\u092e\u093e\u0925\u093f\u0924\u093f\u0930 \u0939\u0947\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaS(){return"\u0916\u093e\u0930\u0947\u091c \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbk(){return"\u0925\u092a"}, +gaV(){return"\u0928\u0947\u092d\u093f\u0917\u0947\u0938\u0928 \u092e\u0947\u0928\u0941 \u0916\u094b\u0932\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +ga8(){return"\u091f\u093e\u0901\u0938\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gb7(){return"\u092a\u092a\u0905\u092a \u092e\u0947\u0928\u0941"}, +gbj(){return"\u092a\u0941\u0928\u0903 \u0924\u093e\u091c\u093e \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u0967 \u0935\u0930\u094d\u0923 \u092c\u093e\u0901\u0915\u0940"}, +gbg(){return"$remainingCount \u0935\u0930\u094d\u0923\u0939\u0930\u0942 \u092c\u093e\u0901\u0915\u0940"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u091f\u0947\u0915\u094d\u0938\u094d\u091f \u0938\u094d\u0915\u094d\u092f\u093e\u0928 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gaX(){return"\u0938\u094d\u0915\u094d\u0930\u093f\u092e"}, +gbh(){return"$modalRouteContentName \u092c\u0928\u094d\u0926 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gbm(){return B.bY}, +ga5(){return"\u0935\u0947\u092c\u092e\u093e \u0916\u094b\u091c\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +ga1(){return"\u0938\u092c\u0948 \u092c\u091f\u0928\u0939\u0930\u0942 \u091a\u092f\u0928 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d"}, +gP(){return"\u0938\u0947\u092f\u0930 \u0917\u0930\u094d\u0928\u0941\u0939\u094b\u0938\u094d..."}, +gbd(){return"$tabCount \u092e\u0927\u094d\u092f\u0947 $tabIndex \u091f\u094d\u092f\u093e\u092c"}} +A.a3l.prototype={ +gbe(){return"Melding"}, +gbf(){return"Terug"}, +gb3(){return"Blad onderaan"}, +ga6(){return"Kopi\xebren"}, +ga7(){return"Knippen"}, +gaY(){return"Verwijderen"}, +gaN(){return"Dialoogvenster"}, +gO(){return"Opzoeken"}, +gaS(){return"Sluiten"}, +gbk(){return"Meer"}, +gaV(){return"Navigatiemenu openen"}, +ga8(){return"Plakken"}, +gb7(){return"Pop-upmenu"}, +gbj(){return"Vernieuwen"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 teken resterend"}, +gbg(){return"$remainingCount tekens resterend"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Tekst scannen"}, +gaX(){return"Scrim"}, +gbh(){return"$modalRouteContentName sluiten"}, +gbm(){return B.P}, +ga5(){return"Op internet zoeken"}, +ga1(){return"Alles selecteren"}, +gP(){return"Delen..."}, +gbd(){return"Tabblad $tabIndex van $tabCount"}} +A.a3m.prototype={ +gbe(){return"Varsel"}, +gbf(){return"Tilbake"}, +gb3(){return"Felt nederst"}, +ga6(){return"Kopi\xe9r"}, +ga7(){return"Klipp ut"}, +gaY(){return"Slett"}, +gaN(){return"Dialogboks"}, +gO(){return"Sl\xe5 opp"}, +gaS(){return"Avvis"}, +gbk(){return"Mer"}, +gaV(){return"\xc5pne navigasjonsmenyen"}, +ga8(){return"Lim inn"}, +gb7(){return"Forgrunnsmeny"}, +gbj(){return"Laster inn p\xe5 nytt"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 tegn gjenst\xe5r"}, +gbg(){return"$remainingCount tegn gjenst\xe5r"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skann tekst"}, +gaX(){return"Vev"}, +gbh(){return"Lukk $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"S\xf8k p\xe5 nettet"}, +ga1(){return"Velg alle"}, +gP(){return"Del\u2026"}, +gbd(){return"Fane $tabIndex av $tabCount"}} +A.a3n.prototype={ +gbe(){return"\u0b06\u0b32\u0b30\u0b4d\u0b1f"}, +gbf(){return"\u0b2a\u0b1b\u0b15\u0b41 \u0b2b\u0b47\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gb3(){return"\u0b2c\u0b1f\u0b2e \u0b38\u0b3f\u0b1f"}, +ga6(){return"\u0b15\u0b2a\u0b3f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +ga7(){return"\u0b15\u0b1f\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaY(){return"\u0b21\u0b3f\u0b32\u0b3f\u0b1f\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaN(){return"\u0b21\u0b3e\u0b5f\u0b32\u0b17\u0b4d"}, +gO(){return"\u0b09\u0b2a\u0b30\u0b15\u0b41 \u0b26\u0b47\u0b16\u0b28\u0b4d\u0b24\u0b41"}, +gaS(){return"\u0b16\u0b3e\u0b30\u0b1c \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbk(){return"\u0b05\u0b27\u0b3f\u0b15"}, +gaV(){return"\u0b28\u0b3e\u0b2d\u0b3f\u0b17\u0b47\u0b38\u0b28\u0b4d \u0b2e\u0b47\u0b28\u0b41 \u0b16\u0b4b\u0b32\u0b28\u0b4d\u0b24\u0b41"}, +ga8(){return"\u0b2a\u0b47\u0b37\u0b4d\u0b1f \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gb7(){return"\u0b2a\u0b2a\u0b4d-\u0b05\u0b2a\u0b4d \u0b2e\u0b47\u0b28\u0b41"}, +gbj(){return"\u0b30\u0b3f\u0b2b\u0b4d\u0b30\u0b47\u0b38\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1\u0b1f\u0b3f \u0b05\u0b15\u0b4d\u0b37\u0b30 \u0b2c\u0b3e\u0b15\u0b3f \u0b05\u0b1b\u0b3f"}, +gbg(){return"$remainingCount\u0b1f\u0b3f \u0b05\u0b15\u0b4d\u0b37\u0b30 \u0b2c\u0b3e\u0b15\u0b3f \u0b05\u0b1b\u0b3f"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0b1f\u0b47\u0b15\u0b4d\u0b38\u0b1f\u0b4d \u0b38\u0b4d\u0b15\u0b3e\u0b28\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gaX(){return"\u0b38\u0b4d\u0b15\u0b4d\u0b30\u0b3f\u0b2e"}, +gbh(){return"$modalRouteContentName\u0b15\u0b41 \u0b2c\u0b28\u0b4d\u0b26 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gbm(){return B.bY}, +ga5(){return"\u0b71\u0b47\u0b2c \u0b38\u0b30\u0b4d\u0b1a\u0b4d\u0b1a \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +ga1(){return"\u0b38\u0b2c\u0b41 \u0b1a\u0b5f\u0b28 \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41"}, +gP(){return"\u0b38\u0b47\u0b5f\u0b3e\u0b30\u0b4d \u0b15\u0b30\u0b28\u0b4d\u0b24\u0b41..."}, +gbd(){return"$tabCount\u0b30 $tabIndex \u0b1f\u0b3e\u0b2c\u0b4d"}} +A.a3o.prototype={ +gbe(){return"\u0a05\u0a32\u0a30\u0a1f"}, +gbf(){return"\u0a2a\u0a3f\u0a71\u0a1b\u0a47"}, +gb3(){return"\u0a39\u0a47\u0a20\u0a32\u0a40 \u0a36\u0a40\u0a1f"}, +ga6(){return"\u0a15\u0a3e\u0a2a\u0a40 \u0a15\u0a30\u0a4b"}, +ga7(){return"\u0a15\u0a71\u0a1f \u0a15\u0a30\u0a4b"}, +gaY(){return"\u0a2e\u0a3f\u0a1f\u0a3e\u0a13"}, +gaN(){return"\u0a35\u0a3f\u0a70\u0a21\u0a4b"}, +gO(){return"\u0a16\u0a4b\u0a1c\u0a4b"}, +gaS(){return"\u0a16\u0a3e\u0a30\u0a1c \u0a15\u0a30\u0a4b"}, +gbk(){return"\u0a39\u0a4b\u0a30"}, +gaV(){return"\u0a28\u0a48\u0a35\u0a40\u0a17\u0a47\u0a36\u0a28 \u0a2e\u0a40\u0a28\u0a42 \u0a16\u0a4b\u0a32\u0a4d\u0a39\u0a4b"}, +ga8(){return"\u0a2a\u0a47\u0a38\u0a1f \u0a15\u0a30\u0a4b"}, +gb7(){return"\u0a2a\u0a4c\u0a2a\u0a05\u0a71\u0a2a \u0a2e\u0a40\u0a28\u0a42"}, +gbj(){return"\u0a30\u0a3f\u0a2b\u0a4d\u0a30\u0a48\u0a36 \u0a15\u0a30\u0a4b"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 \u0a05\u0a71\u0a16\u0a30-\u0a1a\u0a3f\u0a70\u0a28\u0a4d\u0a39 \u0a2c\u0a3e\u0a15\u0a40"}, +gbg(){return"$remainingCount \u0a05\u0a71\u0a16\u0a30-\u0a1a\u0a3f\u0a70\u0a28\u0a4d\u0a39 \u0a2c\u0a3e\u0a15\u0a40"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0a32\u0a3f\u0a16\u0a24 \u0a28\u0a42\u0a70 \u0a38\u0a15\u0a48\u0a28 \u0a15\u0a30\u0a4b"}, +gaX(){return"\u0a38\u0a15\u0a4d\u0a30\u0a3f\u0a2e"}, +gbh(){return"$modalRouteContentName \u0a28\u0a42\u0a70 \u0a2c\u0a70\u0a26 \u0a15\u0a30\u0a4b"}, +gbm(){return B.bY}, +ga5(){return"\u0a35\u0a48\u0a71\u0a2c '\u0a24\u0a47 \u0a16\u0a4b\u0a1c\u0a4b"}, +ga1(){return"\u0a38\u0a2d \u0a1a\u0a41\u0a23\u0a4b"}, +gP(){return"\u0a38\u0a3e\u0a02\u0a1d\u0a3e \u0a15\u0a30\u0a4b..."}, +gbd(){return"$tabCount \u0a35\u0a3f\u0a71\u0a1a\u0a4b\u0a02 $tabIndex \u0a1f\u0a48\u0a2c"}} +A.a3p.prototype={ +gbe(){return"Alert"}, +gbf(){return"Wstecz"}, +gb3(){return"Plansza dolna"}, +ga6(){return"Kopiuj"}, +ga7(){return"Wytnij"}, +gaY(){return"Usu\u0144"}, +gaN(){return"Okno dialogowe"}, +gO(){return"Sprawd\u017a"}, +gaS(){return"Zamknij"}, +gbk(){return"Wi\u0119cej"}, +gaV(){return"Otw\xf3rz menu nawigacyjne"}, +ga8(){return"Wklej"}, +gb7(){return"Menu kontekstowe"}, +gbj(){return"Od\u015bwie\u017c"}, +gbl(){return"Pozosta\u0142y $remainingCount znaki"}, +gbn(){return"Pozosta\u0142o $remainingCount znak\xf3w"}, +gbc(){return"Jeszcze 1 znak"}, +gbg(){return"Pozosta\u0142o $remainingCount znak\xf3w"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skanuj tekst"}, +gaX(){return"Siatka"}, +gbh(){return"Zamknij: $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Szukaj w\xa0internecie"}, +ga1(){return"Zaznacz wszystko"}, +gP(){return"Udost\u0119pnij\u2026"}, +gbd(){return"Karta $tabIndex z\xa0$tabCount"}} +A.a3q.prototype={ +gbe(){return"\u062e\u0628\u0631\u062a\u06cc\u0627"}, +gbf(){return"\u0634\u0627\u062a\u0647"}, +gb3(){return"Bottom Sheet"}, +ga6(){return"\u06a9\u0627\u067e\u06cc"}, +ga7(){return"\u06a9\u0645 \u06a9\u0693\u0626"}, +gaY(){return""}, +gaN(){return"\u062e\u0628\u0631\u06d0 \u0627\u062a\u0631\u06d0"}, +gO(){return"Look Up"}, +gaS(){return"\u0631\u062f \u06a9\u0693\u0647"}, +gbk(){return"More"}, +gaV(){return"\u062f \u067e\u0631\u0627\u0646\u06cc\u0633\u062a\u06cc \u0646\u06cc\u06cc\u0646\u06ab \u0645\u06cc\u0646\u0648"}, +ga8(){return"\u067e\u06cc\u067c \u06a9\u0693\u0626"}, +gb7(){return"\u062f \u067e\u0627\u067e \u0627\u067e \u0645\u06cc\u0646\u0648"}, +gbj(){return"Refresh"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 character remaining"}, +gbg(){return"$remainingCount characters remaining"}, +gbo(){return null}, +gbp(){return"No characters remaining"}, +gaW(){return"\u0645\u062a\u0646 \u0633\u06a9\u06cc\u0646 \u06a9\u0693\u0626"}, +gaX(){return"Scrim"}, +gbh(){return"Close $modalRouteName"}, +gbm(){return B.bY}, +ga5(){return"Search Web"}, +ga1(){return"\u063a\u0648\u0631\u0647 \u06a9\u0693\u0626"}, +gP(){return"Share..."}, +gbd(){return"$tabIndex \u062f $tabCount"}} +A.KV.prototype={ +gbe(){return"Alerta"}, +gbf(){return"Voltar"}, +gb3(){return"P\xe1gina inferior"}, +ga6(){return"Copiar"}, +ga7(){return"Cortar"}, +gaY(){return"Excluir"}, +gaN(){return"Caixa de di\xe1logo"}, +gO(){return"Pesquisar"}, +gaS(){return"Dispensar"}, +gbk(){return"Mais"}, +gaV(){return"Abrir menu de navega\xe7\xe3o"}, +ga8(){return"Colar"}, +gb7(){return"Menu pop-up"}, +gbj(){return"Atualizar"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 caractere restante"}, +gbg(){return"$remainingCount caracteres restantes"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Digitalizar texto"}, +gaX(){return"Scrim"}, +gbh(){return"Fechar $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Pesquisar na Web"}, +ga1(){return"Selecionar tudo"}, +gP(){return"Compartilhar\u2026"}, +gbd(){return"Guia $tabIndex de $tabCount"}} +A.a3r.prototype={ +gP(){return"Partilhar\u2026"}, +gO(){return"Procurar"}, +gb3(){return"Sec\xe7\xe3o inferior"}, +gbd(){return"Separador $tabIndex de $tabCount"}, +gaY(){return"Eliminar"}, +gaS(){return"Ignorar"}, +gbc(){return"Resta 1 car\xe1ter"}, +gbg(){return"Restam $remainingCount carateres"}} +A.a3s.prototype={ +gbe(){return"Alert\u0103"}, +gbf(){return"\xcenapoi"}, +gb3(){return"Foaie din partea de jos"}, +ga6(){return"Copia\u021bi"}, +ga7(){return"Decupa\u021bi"}, +gaY(){return"\u0218terge\u021bi"}, +gaN(){return"Caset\u0103 de dialog"}, +gO(){return"Privire \xeen sus"}, +gaS(){return"\xcenchide\u021bi"}, +gbk(){return"Mai multe"}, +gaV(){return"Deschide\u021bi meniul de navigare"}, +ga8(){return"Insera\u021bi"}, +gb7(){return"Meniu pop-up"}, +gbj(){return"Actualiza\u021bi"}, +gbl(){return"$remainingCount caractere r\u0103mase"}, +gbn(){return null}, +gbc(){return"un caracter r\u0103mas"}, +gbg(){return"$remainingCount de caractere r\u0103mase"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Scana\u021bi textul"}, +gaX(){return"Material"}, +gbh(){return"\xcenchide\u021bi $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"C\u0103uta\u021bi pe web"}, +ga1(){return"Selecta\u021bi tot"}, +gP(){return"Trimite\u021bi\u2026"}, +gbd(){return"Fila $tabIndex din $tabCount"}} +A.a3t.prototype={ +gbe(){return"\u041e\u043f\u043e\u0432\u0435\u0449\u0435\u043d\u0438\u0435"}, +gbf(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb3(){return"\u041d\u0438\u0436\u043d\u0438\u0439 \u044d\u043a\u0440\u0430\u043d"}, +ga6(){return"\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c"}, +ga7(){return"\u0412\u044b\u0440\u0435\u0437\u0430\u0442\u044c"}, +gaY(){return"\u0423\u0434\u0430\u043b\u0438\u0442\u044c"}, +gaN(){return"\u0414\u0438\u0430\u043b\u043e\u0433\u043e\u0432\u043e\u0435 \u043e\u043a\u043d\u043e"}, +gO(){return"\u041d\u0430\u0439\u0442\u0438"}, +gaS(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c"}, +gbk(){return"\u0415\u0449\u0451"}, +gaV(){return"\u041e\u0442\u043a\u0440\u044b\u0442\u044c \u043c\u0435\u043d\u044e \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u0438"}, +ga8(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044c"}, +gb7(){return"\u0412\u0441\u043f\u043b\u044b\u0432\u0430\u044e\u0449\u0435\u0435 \u043c\u0435\u043d\u044e"}, +gbj(){return"\u041e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435"}, +gbl(){return"\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c $remainingCount\xa0\u0441\u0438\u043c\u0432\u043e\u043b\u0430"}, +gbn(){return"\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c $remainingCount\xa0\u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432"}, +gbc(){return"\u041e\u0441\u0442\u0430\u043b\u0441\u044f 1\xa0\u0441\u0438\u043c\u0432\u043e\u043b"}, +gbg(){return"\u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c $remainingCount\xa0\u0441\u0438\u043c\u0432\u043e\u043b\u0430"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0421\u043a\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u0435\u043a\u0441\u0442"}, +gaX(){return"\u041c\u0430\u0441\u043a\u0430"}, +gbh(){return"\u0417\u0430\u043a\u0440\u044b\u0442\u044c $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"\u0418\u0441\u043a\u0430\u0442\u044c \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435"}, +ga1(){return"\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0432\u0441\u0435"}, +gP(){return"\u041f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f"}, +gbd(){return"\u0412\u043a\u043b\u0430\u0434\u043a\u0430\xa0$tabIndex \u0438\u0437\xa0$tabCount"}} +A.a3u.prototype={ +gbe(){return"\u0d87\u0d9f\u0dc0\u0dd3\u0db8"}, +gbf(){return"\u0d86\u0db4\u0dc3\u0dd4"}, +gb3(){return"\u0db4\u0dc4\u0dc5\u0db8 \u0db4\u0dad\u0dca\u200d\u0dbb\u0dba"}, +ga6(){return"\u0db4\u0dd2\u0da7\u0db4\u0dad\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +ga7(){return"\u0d9a\u0db4\u0db1\u0dca\u0db1"}, +gaY(){return"\u0db8\u0d9a\u0db1\u0dca\u0db1"}, +gaN(){return"\u0dc3\u0d82\u0dc0\u0dcf\u0daf\u0dba"}, +gO(){return"\u0d8b\u0da9 \u0db6\u0dbd\u0db1\u0dca\u0db1"}, +gaS(){return"\u0d89\u0dc0\u0dad \u0dbd\u0db1\u0dca\u0db1"}, +gbk(){return"\u0dad\u0dc0"}, +gaV(){return"\u0dc3\u0d82\u0da0\u0dcf\u0dbd\u0db1 \u0db8\u0dd9\u0db1\u0dd4\u0dc0 \u0dc0\u0dd2\u0dc0\u0dd8\u0dad \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +ga8(){return"\u0d85\u0dbd\u0dc0\u0db1\u0dca\u0db1"}, +gb7(){return"\u0d8b\u0dad\u0dca\u0db4\u0dad\u0db1 \u0db8\u0dd9\u0db1\u0dd4\u0dc0"}, +gbj(){return"\u0db1\u0dd0\u0dc0\u0dd4\u0db8\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u0d85\u0db1\u0dd4\u0dbd\u0d9a\u0dd4\u0dab\u0dd4 1\u0d9a\u0dca \u0d89\u0dad\u0dd2\u0dbb\u0dd2\u0dba"}, +gbg(){return"\u0d85\u0db1\u0dd4\u0dbd\u0d9a\u0dd4\u0dab\u0dd4 $remainingCount\u0d9a\u0dca \u0d89\u0dad\u0dd2\u0dbb\u0dd2\u0dba"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0db4\u0dd9\u0dc5 \u0dc3\u0dca\u0d9a\u0dd1\u0db1\u0dca \u0d9a\u0dbb\u0db1\u0dca\u0db1"}, +gaX(){return"\u0dc3\u0dca\u0d9a\u0dca\u200d\u0dbb\u0dd2\u0db8\u0dca"}, +gbh(){return"$modalRouteContentName \u0dc0\u0dc3\u0db1\u0dca\u0db1"}, +gbm(){return B.P}, +ga5(){return"\u0dc0\u0dd9\u0db6\u0dba \u0dc3\u0ddc\u0dba\u0db1\u0dca\u0db1"}, +ga1(){return"\u0dc3\u0dd2\u0dba\u0dbd\u0dca\u0dbd \u0dad\u0ddd\u0dbb\u0db1\u0dca\u0db1"}, +gP(){return"\u0db6\u0dd9\u0daf\u0dcf \u0d9c\u0db1\u0dca\u0db1..."}, +gbd(){return"\u0da7\u0dd0\u0db6 $tabIndex\u0d9a\u0dd2\u0db1\u0dca $tabCount"}} +A.a3v.prototype={ +gbe(){return"Upozornenie"}, +gbf(){return"Sp\xe4\u0165"}, +gb3(){return"Doln\xfd h\xe1rok"}, +ga6(){return"Kop\xedrova\u0165"}, +ga7(){return"Vystrihn\xfa\u0165"}, +gaY(){return"Odstr\xe1ni\u0165"}, +gaN(){return"Dial\xf3gov\xe9 okno"}, +gO(){return"Poh\u013ead nahor"}, +gaS(){return"Odmietnu\u0165"}, +gbk(){return"Viac"}, +gaV(){return"Otvori\u0165 naviga\u010dn\xfa ponuku"}, +ga8(){return"Prilepi\u0165"}, +gb7(){return"Kontextov\xe1 ponuka"}, +gbj(){return"Obnovi\u0165"}, +gbl(){return"Zost\xe1vaj\xfa $remainingCount\xa0znaky"}, +gbn(){return"$remainingCount characters remaining"}, +gbc(){return"Zost\xe1va 1\xa0znak"}, +gbg(){return"Zost\xe1va $remainingCount\xa0znakov"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Naskenova\u0165 text"}, +gaX(){return"Scrim"}, +gbh(){return"Zavrie\u0165 $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"H\u013eada\u0165 na webe"}, +ga1(){return"Vybra\u0165 v\u0161etko"}, +gP(){return"Zdie\u013ea\u0165\u2026"}, +gbd(){return"Karta $tabIndex z\xa0$tabCount"}} +A.a3w.prototype={ +gbe(){return"Opozorilo"}, +gbf(){return"Nazaj"}, +gb3(){return"Razdelek na dnu zaslona"}, +ga6(){return"Kopiraj"}, +ga7(){return"Izre\u017ei"}, +gaY(){return"Brisanje"}, +gaN(){return"Pogovorno okno"}, +gO(){return"Pogled gor"}, +gaS(){return"Opusti"}, +gbk(){return"Ve\u010d"}, +gaV(){return"Odpiranje menija za krmarjenje"}, +ga8(){return"Prilepi"}, +gb7(){return"Pojavni meni"}, +gbj(){return"Osve\u017ei"}, +gbl(){return"\u0160e $remainingCount znaki"}, +gbn(){return null}, +gbc(){return"\u0160e 1 znak"}, +gbg(){return"\u0160e $remainingCount znakov"}, +gbo(){return"\u0160e $remainingCount znaka"}, +gbp(){return null}, +gaW(){return"Opti\u010dno preberite besedilo"}, +gaX(){return"Scrim"}, +gbh(){return"Zapiranje \xbb$modalRouteContentName\xab"}, +gbm(){return B.P}, +ga5(){return"Iskanje v spletu"}, +ga1(){return"Izberi vse"}, +gP(){return"Deli \u2026"}, +gbd(){return"Zavihek $tabIndex od $tabCount"}} +A.a3x.prototype={ +gbe(){return"Sinjalizim"}, +gbf(){return"Prapa"}, +gb3(){return"Fleta e poshtme"}, +ga6(){return"Kopjo"}, +ga7(){return"Prit"}, +gaY(){return"Fshi"}, +gaN(){return"Dialogu"}, +gO(){return"K\xebrko"}, +gaS(){return"Hiq"}, +gbk(){return"M\xeb shum\xeb"}, +gaV(){return"Hap menyn\xeb e navigimit"}, +ga8(){return"Ngjit"}, +gb7(){return"Menyja k\xebrcyese"}, +gbj(){return"Rifresko"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 karakter i mbetur"}, +gbg(){return"$remainingCount karaktere t\xeb mbetura"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skano tekstin"}, +gaX(){return"Kanavac\xeb"}, +gbh(){return"Mbyll $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"K\xebrko n\xeb ueb"}, +ga1(){return"Zgjidh t\xeb gjitha"}, +gP(){return"Ndaj..."}, +gbd(){return"Skeda $tabIndex nga $tabCount"}} +A.KW.prototype={ +gbe(){return"\u041e\u0431\u0430\u0432\u0435\u0448\u0442\u0435\u045a\u0435"}, +gbf(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb3(){return"\u0414\u043e\u045a\u0430 \u0442\u0430\u0431\u0435\u043b\u0430"}, +ga6(){return"\u041a\u043e\u043f\u0438\u0440\u0430\u0458"}, +ga7(){return"\u0418\u0441\u0435\u0446\u0438"}, +gaY(){return"\u0418\u0437\u0431\u0440\u0438\u0448\u0438\u0442\u0435"}, +gaN(){return"\u0414\u0438\u0458\u0430\u043b\u043e\u0433"}, +gO(){return"\u041f\u043e\u0433\u043b\u0435\u0434 \u043d\u0430\u0433\u043e\u0440\u0435"}, +gaS(){return"\u041e\u0434\u0431\u0430\u0446\u0438"}, +gbk(){return"\u0408\u043e\u0448"}, +gaV(){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"}, +ga8(){return"\u041d\u0430\u043b\u0435\u043f\u0438"}, +gb7(){return"\u0418\u0441\u043a\u0430\u0447\u0443\u045b\u0438 \u043c\u0435\u043d\u0438"}, +gbj(){return"\u041e\u0441\u0432\u0435\u0436\u0438"}, +gbl(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043b\u0430 \u0441\u0443 $remainingCount \u0437\u043d\u0430\u043a\u0430"}, +gbn(){return null}, +gbc(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043e \u0458\u0435 1 \u0437\u043d\u0430\u043a"}, +gbg(){return"\u041f\u0440\u0435\u043e\u0441\u0442\u0430\u043b\u043e \u0458\u0435 $remainingCount \u0437\u043d\u0430\u043a\u043e\u0432\u0430"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0421\u043a\u0435\u043d\u0438\u0440\u0430\u0458 \u0442\u0435\u043a\u0441\u0442"}, +gaX(){return"\u0421\u043a\u0440\u0438\u043c"}, +gbh(){return"\u0417\u0430\u0442\u0432\u043e\u0440\u0438: $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"\u041f\u0440\u0435\u0442\u0440\u0430\u0436\u0438 \u0432\u0435\u0431"}, +ga1(){return"\u0418\u0437\u0430\u0431\u0435\u0440\u0438 \u0441\u0432\u0435"}, +gP(){return"\u0414\u0435\u043b\u0438\u2026"}, +gbd(){return"$tabIndex. \u043a\u0430\u0440\u0442\u0438\u0446\u0430 \u043e\u0434 $tabCount"}} +A.a3y.prototype={} +A.a3z.prototype={ +gbe(){return"Obave\u0161tenje"}, +gbf(){return"Nazad"}, +gb3(){return"Donja tabela"}, +ga6(){return"Kopiraj"}, +ga7(){return"Iseci"}, +gaY(){return"Izbri\u0161ite"}, +gaN(){return"Dijalog"}, +gO(){return"Pogled nagore"}, +gaS(){return"Odbaci"}, +gbk(){return"Jo\u0161"}, +gaV(){return"Otvorite meni za navigaciju"}, +ga8(){return"Nalepi"}, +gb7(){return"Iska\u010duc\u0301i meni"}, +gbj(){return"Osve\u017ei"}, +gbl(){return"Preostala su $remainingCount znaka"}, +gbc(){return"Preostao je 1 znak"}, +gbg(){return"Preostalo je $remainingCount znakova"}, +gaW(){return"Skeniraj tekst"}, +gaX(){return"Skrim"}, +gbh(){return"Zatvori: $modalRouteContentName"}, +ga5(){return"Pretra\u017ei veb"}, +ga1(){return"Izaberi sve"}, +gP(){return"Deli\u2026"}, +gbd(){return"$tabIndex. kartica od $tabCount"}} +A.a3A.prototype={ +gbe(){return"Varning"}, +gbf(){return"Tillbaka"}, +gb3(){return"Ark p\xe5 nedre delen av sk\xe4rmen"}, +ga6(){return"Kopiera"}, +ga7(){return"Klipp ut"}, +gaY(){return"Radera"}, +gaN(){return"Dialogruta"}, +gO(){return"Titta upp"}, +gaS(){return"St\xe4ng"}, +gbk(){return"Mer"}, +gaV(){return"\xd6ppna navigeringsmenyn"}, +ga8(){return"Klistra in"}, +gb7(){return"Popup-meny"}, +gbj(){return"Uppdatera"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 tecken kvar"}, +gbg(){return"$remainingCount tecken kvar"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skanna text"}, +gaX(){return"Scrim"}, +gbh(){return"St\xe4ng $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"S\xf6k p\xe5 webben"}, +ga1(){return"Markera allt"}, +gP(){return"Dela \u2026"}, +gbd(){return"Flik $tabIndex av $tabCount"}} +A.a3B.prototype={ +gbe(){return"Arifa"}, +gbf(){return"Rudi Nyuma"}, +gb3(){return"Safu ya Chini"}, +ga6(){return"Nakili"}, +ga7(){return"Kata"}, +gaY(){return"Futa"}, +gaN(){return"Kidirisha"}, +gO(){return"Tafuta"}, +gaS(){return"Ondoa"}, +gbk(){return"Zaidi"}, +gaV(){return"Fungua menyu ya kusogeza"}, +ga8(){return"Bandika"}, +gb7(){return"Menyu ibukizi"}, +gbj(){return"Onyesha upya"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"Imesalia herufi 1"}, +gbg(){return"Zimesalia herufi $remainingCount"}, +gbo(){return null}, +gbp(){return"Hapana herufi zilizo baki"}, +gaW(){return"Changanua maandishi"}, +gaX(){return"Scrim"}, +gbh(){return"Funga $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Tafuta kwenye Wavuti"}, +ga1(){return"Chagua vyote"}, +gP(){return"Shiriki..."}, +gbd(){return"Kichupo cha $tabIndex kati ya $tabCount"}} +A.a3C.prototype={ +gbe(){return"\u0bb5\u0bbf\u0bb4\u0bbf\u0baa\u0bcd\u0baa\u0bc2\u0b9f\u0bcd\u0b9f\u0bb2\u0bcd"}, +gbf(){return"\u0bae\u0bc1\u0ba8\u0bcd\u0ba4\u0bc8\u0baf \u0baa\u0b95\u0bcd\u0b95\u0bae\u0bcd"}, +gb3(){return"\u0b95\u0bc0\u0bb4\u0bcd\u0ba4\u0bcd \u0ba4\u0bbf\u0bb0\u0bc8"}, +ga6(){return"\u0ba8\u0b95\u0bb2\u0bc6\u0b9f\u0bc1"}, +ga7(){return"\u0bb5\u0bc6\u0b9f\u0bcd\u0b9f\u0bc1"}, +gaY(){return"\u0ba8\u0bc0\u0b95\u0bcd\u0b95\u0bc1"}, +gaN(){return"\u0b89\u0bb0\u0bc8\u0baf\u0bbe\u0b9f\u0bb2\u0bcd"}, +gO(){return"\u0ba4\u0bc7\u0b9f\u0bc1"}, +gaS(){return"\u0ba8\u0bbf\u0bb0\u0bbe\u0b95\u0bb0\u0bbf\u0b95\u0bcd\u0b95\u0bc1\u0bae\u0bcd"}, +gbk(){return"\u0bae\u0bc7\u0bb2\u0bc1\u0bae\u0bcd"}, +gaV(){return"\u0bb5\u0bb4\u0bbf\u0b9a\u0bc6\u0bb2\u0bc1\u0ba4\u0bcd\u0ba4\u0bb2\u0bcd \u0bae\u0bc6\u0ba9\u0bc1\u0bb5\u0bc8\u0ba4\u0bcd \u0ba4\u0bbf\u0bb1"}, +ga8(){return"\u0b92\u0b9f\u0bcd\u0b9f\u0bc1"}, +gb7(){return"\u0baa\u0bbe\u0baa\u0bcd-\u0b85\u0baa\u0bcd \u0bae\u0bc6\u0ba9\u0bc1"}, +gbj(){return"\u0bb0\u0bc6\u0b83\u0baa\u0bcd\u0bb0\u0bc6\u0bb7\u0bcd \u0b9a\u0bc6\u0baf\u0bcd\u0baf\u0bc1\u0bae\u0bcd"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 \u0b8e\u0bb4\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1 \u0bae\u0bc0\u0ba4\u0bae\u0bc1\u0bb3\u0bcd\u0bb3\u0ba4\u0bc1"}, +gbg(){return"$remainingCount \u0b8e\u0bb4\u0bc1\u0ba4\u0bcd\u0ba4\u0bc1\u0b95\u0bb3\u0bcd \u0bae\u0bc0\u0ba4\u0bae\u0bc1\u0bb3\u0bcd\u0bb3\u0ba9"}, +gbo(){return null}, +gbp(){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"}, +gaW(){return"\u0bb5\u0bbe\u0bb0\u0bcd\u0ba4\u0bcd\u0ba4\u0bc8\u0b95\u0bb3\u0bc8 \u0bb8\u0bcd\u0b95\u0bc7\u0ba9\u0bcd \u0b9a\u0bc6\u0baf\u0bcd"}, +gaX(){return"\u0bb8\u0bcd\u0b95\u0bcd\u0bb0\u0bbf\u0bae\u0bcd"}, +gbh(){return"$modalRouteContentName \u0b90 \u0bae\u0bc2\u0b9f\u0bc1\u0b95"}, +gbm(){return B.fs}, +ga5(){return"\u0b87\u0ba3\u0bc8\u0baf\u0ba4\u0bcd\u0ba4\u0bbf\u0bb2\u0bcd \u0ba4\u0bc7\u0b9f\u0bc1"}, +ga1(){return"\u0b85\u0ba9\u0bc8\u0ba4\u0bcd\u0ba4\u0bc8\u0baf\u0bc1\u0bae\u0bcd \u0ba4\u0bc7\u0bb0\u0bcd\u0ba8\u0bcd\u0ba4\u0bc6\u0b9f\u0bc1"}, +gP(){return"\u0baa\u0b95\u0bbf\u0bb0\u0bcd..."}, +gbd(){return"\u0ba4\u0bbe\u0bb5\u0bb2\u0bcd $tabIndex / $tabCount"}} +A.a3D.prototype={ +gbe(){return"\u0c05\u0c32\u0c30\u0c4d\u0c1f\u0c4d"}, +gbf(){return"\u0c35\u0c46\u0c28\u0c41\u0c15\u0c15\u0c41"}, +gb3(){return"\u0c26\u0c3f\u0c17\u0c41\u0c35\u0c41\u0c28 \u0c09\u0c28\u0c4d\u0c28 \u0c37\u0c40\u0c1f\u0c4d"}, +ga6(){return"\u0c15\u0c3e\u0c2a\u0c40 \u0c1a\u0c47\u0c2f\u0c3f"}, +ga7(){return"\u0c15\u0c24\u0c4d\u0c24\u0c3f\u0c30\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gaY(){return"\u0c24\u0c4a\u0c32\u0c17\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f"}, +gaN(){return"\u0c21\u0c48\u0c32\u0c3e\u0c17\u0c4d"}, +gO(){return"\u0c35\u0c46\u0c24\u0c15\u0c02\u0c21\u0c3f"}, +gaS(){return"\u0c35\u0c3f\u0c38\u0c4d\u0c2e\u0c30\u0c3f\u0c02\u0c1a\u0c41"}, +gbk(){return"\u0c2e\u0c30\u0c3f\u0c28\u0c4d\u0c28\u0c3f"}, +gaV(){return"\u0c28\u0c3e\u0c35\u0c3f\u0c17\u0c47\u0c37\u0c28\u0c4d \u0c2e\u0c46\u0c28\u0c42\u0c28\u0c41 \u0c24\u0c46\u0c30\u0c41\u0c35\u0c41"}, +ga8(){return"\u0c2a\u0c47\u0c38\u0c4d\u0c1f\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gb7(){return"\u0c2a\u0c3e\u0c2a\u0c4d\u200c\u0c05\u0c2a\u0c4d \u0c2e\u0c46\u0c28\u0c42"}, +gbj(){return"\u0c30\u0c3f\u0c2b\u0c4d\u0c30\u0c46\u0c37\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 \u0c05\u0c15\u0c4d\u0c37\u0c30\u0c02 \u0c2e\u0c3f\u0c17\u0c3f\u0c32\u0c3f \u0c09\u0c02\u0c26\u0c3f"}, +gbg(){return"$remainingCount \u0c05\u0c15\u0c4d\u0c37\u0c30\u0c3e\u0c32\u0c41 \u0c2e\u0c3f\u0c17\u0c3f\u0c32\u0c3f \u0c09\u0c28\u0c4d\u0c28\u0c3e\u0c2f\u0c3f"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0c1f\u0c46\u0c15\u0c4d\u0c38\u0c4d\u0c1f\u0c4d\u200c\u0c28\u0c41 \u0c38\u0c4d\u0c15\u0c3e\u0c28\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gaX(){return"\u0c38\u0c4d\u0c15\u0c4d\u0c30\u0c3f\u0c2e\u0c4d"}, +gbh(){return"$modalRouteContentName\u200c\u0c28\u0c41 \u0c2e\u0c42\u0c38\u0c3f\u0c35\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +gbm(){return B.bY}, +ga5(){return"\u0c35\u0c46\u0c2c\u0c4d\u200c\u0c32\u0c4b \u0c38\u0c46\u0c30\u0c4d\u0c1a\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f"}, +ga1(){return"\u0c05\u0c28\u0c4d\u0c28\u0c3f\u0c02\u0c1f\u0c3f\u0c28\u0c40 \u0c0e\u0c02\u0c1a\u0c41\u0c15\u0c4b\u0c02\u0c21\u0c3f"}, +gP(){return"\u0c37\u0c47\u0c30\u0c4d \u0c1a\u0c47\u0c2f\u0c02\u0c21\u0c3f..."}, +gbd(){return"$tabCount\u0c32\u0c4b $tabIndex\u0c35 \u0c1f\u0c4d\u0c2f\u0c3e\u0c2c\u0c4d"}} +A.a3E.prototype={ +gbe(){return"\u0e01\u0e32\u0e23\u0e41\u0e08\u0e49\u0e07\u0e40\u0e15\u0e37\u0e2d\u0e19"}, +gbf(){return"\u0e01\u0e25\u0e31\u0e1a"}, +gb3(){return"Bottom Sheet"}, +ga6(){return"\u0e04\u0e31\u0e14\u0e25\u0e2d\u0e01"}, +ga7(){return"\u0e15\u0e31\u0e14"}, +gaY(){return"\u0e25\u0e1a"}, +gaN(){return"\u0e01\u0e25\u0e48\u0e2d\u0e07\u0e42\u0e15\u0e49\u0e15\u0e2d\u0e1a"}, +gO(){return"\u0e04\u0e49\u0e19\u0e2b\u0e32"}, +gaS(){return"\u0e1b\u0e34\u0e14"}, +gbk(){return"\u0e40\u0e1e\u0e34\u0e48\u0e21\u0e40\u0e15\u0e34\u0e21"}, +gaV(){return"\u0e40\u0e1b\u0e34\u0e14\u0e40\u0e21\u0e19\u0e39\u0e01\u0e32\u0e23\u0e19\u0e33\u0e17\u0e32\u0e07"}, +ga8(){return"\u0e27\u0e32\u0e07"}, +gb7(){return"\u0e40\u0e21\u0e19\u0e39\u0e1b\u0e4a\u0e2d\u0e1b\u0e2d\u0e31\u0e1b"}, +gbj(){return"\u0e23\u0e35\u0e40\u0e1f\u0e23\u0e0a"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u0e40\u0e2b\u0e25\u0e37\u0e2d 1 \u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30"}, +gbg(){return"\u0e40\u0e2b\u0e25\u0e37\u0e2d $remainingCount \u0e2d\u0e31\u0e01\u0e02\u0e23\u0e30"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0e2a\u0e41\u0e01\u0e19\u0e02\u0e49\u0e2d\u0e04\u0e27\u0e32\u0e21"}, +gaX(){return"Scrim"}, +gbh(){return"\u0e1b\u0e34\u0e14 $modalRouteContentName"}, +gbm(){return B.bY}, +ga5(){return"\u0e04\u0e49\u0e19\u0e2b\u0e32\u0e1a\u0e19\u0e2d\u0e34\u0e19\u0e40\u0e17\u0e2d\u0e23\u0e4c\u0e40\u0e19\u0e47\u0e15"}, +ga1(){return"\u0e40\u0e25\u0e37\u0e2d\u0e01\u0e17\u0e31\u0e49\u0e07\u0e2b\u0e21\u0e14"}, +gP(){return"\u0e41\u0e0a\u0e23\u0e4c..."}, +gbd(){return"\u0e41\u0e17\u0e47\u0e1a\u0e17\u0e35\u0e48 $tabIndex \u0e08\u0e32\u0e01 $tabCount"}} +A.a3F.prototype={ +gbe(){return"Alerto"}, +gbf(){return"Bumalik"}, +gb3(){return"Bottom Sheet"}, +ga6(){return"Kopyahin"}, +ga7(){return"I-cut"}, +gaY(){return"I-delete"}, +gaN(){return"Dialog"}, +gO(){return"Tumingin sa Itaas"}, +gaS(){return"I-dismiss"}, +gbk(){return"Higit Pa"}, +gaV(){return"Buksan ang menu ng navigation"}, +ga8(){return"I-paste"}, +gb7(){return"Popup na menu"}, +gbj(){return"Nagre-refresh"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 character ang natitira"}, +gbg(){return u._}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"I-scan ang text"}, +gaX(){return"Scrim"}, +gbh(){return"Isara ang $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Maghanap sa Web"}, +ga1(){return"Piliin lahat"}, +gP(){return"Ibahagi..."}, +gbd(){return"Tab $tabIndex ng $tabCount"}} +A.a3G.prototype={ +gbe(){return"Uyar\u0131"}, +gbf(){return"Geri"}, +gb3(){return"alt sayfa"}, +ga6(){return"Kopyala"}, +ga7(){return"Kes"}, +gaY(){return"Sil"}, +gaN(){return"\u0130leti\u015fim kutusu"}, +gO(){return"Ara"}, +gaS(){return"Kapat"}, +gbk(){return"Di\u011fer"}, +gaV(){return"Gezinme men\xfcs\xfcn\xfc a\xe7"}, +ga8(){return"Yap\u0131\u015ft\u0131r"}, +gb7(){return"Popup men\xfc"}, +gbj(){return"Yenile"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 karakter kald\u0131"}, +gbg(){return"$remainingCount karakter kald\u0131"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Metin tara"}, +gaX(){return"opakl\u0131k katman\u0131"}, +gbh(){return"$modalRouteContentName i\xe7eri\u011fini kapat"}, +gbm(){return B.P}, +ga5(){return"Web'de Ara"}, +ga1(){return"T\xfcm\xfcn\xfc se\xe7"}, +gP(){return"Payla\u015f..."}, +gbd(){return"Sekme $tabIndex / $tabCount"}} +A.a3H.prototype={ +gbe(){return"\u0421\u043f\u043e\u0432\u0456\u0449\u0435\u043d\u043d\u044f"}, +gbf(){return"\u041d\u0430\u0437\u0430\u0434"}, +gb3(){return"\u041d\u0438\u0436\u043d\u0456\u0439 \u0435\u043a\u0440\u0430\u043d"}, +ga6(){return"\u041a\u043e\u043f\u0456\u044e\u0432\u0430\u0442\u0438"}, +ga7(){return"\u0412\u0438\u0440\u0456\u0437\u0430\u0442\u0438"}, +gaY(){return"\u0412\u0438\u0434\u0430\u043b\u0438\u0442\u0438"}, +gaN(){return"\u0412\u0456\u043a\u043d\u043e"}, +gO(){return"\u0428\u0443\u043a\u0430\u0442\u0438"}, +gaS(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438"}, +gbk(){return"\u0406\u043d\u0448\u0456"}, +gaV(){return"\u0412\u0456\u0434\u043a\u0440\u0438\u0442\u0438 \u043c\u0435\u043d\u044e \u043d\u0430\u0432\u0456\u0433\u0430\u0446\u0456\u0457"}, +ga8(){return"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u0438"}, +gb7(){return"\u0421\u043f\u043b\u0438\u0432\u0430\u044e\u0447\u0435 \u043c\u0435\u043d\u044e"}, +gbj(){return"\u041e\u043d\u043e\u0432\u0438\u0442\u0438"}, +gbl(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u043b\u043e\u0441\u044f $remainingCount \u0441\u0438\u043c\u0432\u043e\u043b\u0438"}, +gbn(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u043b\u043e\u0441\u044f $remainingCount \u0441\u0438\u043c\u0432\u043e\u043b\u0456\u0432"}, +gbc(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u0432\u0441\u044f 1 \u0441\u0438\u043c\u0432\u043e\u043b"}, +gbg(){return"\u0417\u0430\u043b\u0438\u0448\u0438\u043b\u043e\u0441\u044f $remainingCount \u0441\u0438\u043c\u0432\u043e\u043b\u0443"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0412\u0456\u0434\u0441\u043a\u0430\u043d\u0443\u0432\u0430\u0442\u0438 \u0442\u0435\u043a\u0441\u0442"}, +gaX(){return"\u041c\u0430\u0441\u043a\u0443\u0432\u0430\u043b\u044c\u043d\u0438\u0439 \u0444\u043e\u043d"}, +gbh(){return"\u0417\u0430\u043a\u0440\u0438\u0442\u0438: $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"\u041f\u043e\u0448\u0443\u043a \u0432 \u0406\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0456"}, +ga1(){return"\u0412\u0438\u0431\u0440\u0430\u0442\u0438 \u0432\u0441\u0456"}, +gP(){return"\u041f\u043e\u0434\u0456\u043b\u0438\u0442\u0438\u0441\u044f\u2026"}, +gbd(){return"\u0412\u043a\u043b\u0430\u0434\u043a\u0430 $tabIndex \u0437 $tabCount"}} +A.a3I.prototype={ +gbe(){return"\u0627\u0644\u0631\u0679"}, +gbf(){return"\u067e\u06cc\u0686\u06be\u06d2"}, +gb3(){return"\u0646\u06cc\u0686\u06d2 \u06a9\u06cc \u0634\u06cc\u0679"}, +ga6(){return"\u06a9\u0627\u067e\u06cc \u06a9\u0631\u06cc\u06ba"}, +ga7(){return"\u06a9\u0679 \u06a9\u0631\u06cc\u06ba"}, +gaY(){return"\u062d\u0630\u0641 \u06a9\u0631\u06cc\u06ba"}, +gaN(){return"\u0688\u0627\u0626\u0644\u0627\u06af"}, +gO(){return"\u062a\u0641\u0635\u06cc\u0644 \u062f\u06cc\u06a9\u06be\u06cc\u06ba"}, +gaS(){return"\u0628\u0631\u062e\u0627\u0633\u062a \u06a9\u0631\u06cc\u06ba"}, +gbk(){return"\u0645\u0632\u06cc\u062f"}, +gaV(){return"\u0646\u06cc\u0648\u06cc\u06af\u06cc\u0634\u0646 \u0645\u06cc\u0646\u06cc\u0648 \u06a9\u06be\u0648\u0644\u06cc\u06ba"}, +ga8(){return"\u067e\u06cc\u0633\u0679 \u06a9\u0631\u06cc\u06ba"}, +gb7(){return"\u067e\u0627\u067e \u0627\u067e \u0645\u06cc\u0646\u06cc\u0648"}, +gbj(){return"\u0631\u06cc\u0641\u0631\u06cc\u0634 \u06a9\u0631\u06cc\u06ba"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 \u062d\u0631\u0641 \u0628\u0627\u0642\u06cc \u06c1\u06d2"}, +gbg(){return"$remainingCount \u062d\u0631\u0648\u0641 \u0628\u0627\u0642\u06cc \u06c1\u06cc\u06ba"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u0679\u06cc\u06a9\u0633\u0679 \u0627\u0633\u06a9\u06cc\u0646 \u06a9\u0631\u06cc\u06ba"}, +gaX(){return"\u0627\u0633\u06a9\u0631\u06cc\u0645"}, +gbh(){return"$modalRouteContentName \u0628\u0646\u062f \u06a9\u0631\u06cc\u06ba"}, +gbm(){return B.bY}, +ga5(){return"\u0648\u06cc\u0628 \u062a\u0644\u0627\u0634 \u06a9\u0631\u06cc\u06ba"}, +ga1(){return"\u0633\u0628\u06be\u06cc \u06a9\u0648 \u0645\u0646\u062a\u062e\u0628 \u06a9\u0631\u06cc\u06ba"}, +gP(){return"\u0627\u0634\u062a\u0631\u0627\u06a9 \u06a9\u0631\u06cc\u06ba..."}, +gbd(){return"$tabCount \u0645\u06cc\u06ba \u0633\u06d2 $tabIndex \u0679\u06cc\u0628"}} +A.a3J.prototype={ +gbe(){return"Ogohlantirish"}, +gbf(){return"Orqaga"}, +gb3(){return"Quyi ekran"}, +ga6(){return"Nusxa olish"}, +ga7(){return"Kesib olish"}, +gaY(){return"Olib tashlash"}, +gaN(){return"Muloqot oynasi"}, +gO(){return"Tepaga qarang"}, +gaS(){return"Yopish"}, +gbk(){return"Yana"}, +gaV(){return"Navigatsiya menyusini ochish"}, +ga8(){return"Joylash"}, +gb7(){return"Pop-ap menyusi"}, +gbj(){return"Yangilash"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 ta belgi qoldi"}, +gbg(){return"$remainingCount ta belgi qoldi"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Matnni skanerlash"}, +gaX(){return"Kanop"}, +gbh(){return"Yopish: $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Internetdan qidirish"}, +ga1(){return"Hammasi"}, +gP(){return"Ulashish\u2026"}, +gbd(){return"$tabCount varaqdan $tabIndex"}} +A.a3K.prototype={ +gbe(){return"Th\xf4ng b\xe1o"}, +gbf(){return"Quay l\u1ea1i"}, +gb3(){return"B\u1ea3ng d\u01b0\u1edbi c\xf9ng"}, +ga6(){return"Sao ch\xe9p"}, +ga7(){return"C\u1eaft"}, +gaY(){return"X\xf3a"}, +gaN(){return"H\u1ed9p tho\u1ea1i"}, +gO(){return"Tra c\u1ee9u"}, +gaS(){return"B\u1ecf qua"}, +gbk(){return"Th\xeam"}, +gaV(){return"M\u1edf menu di chuy\u1ec3n"}, +ga8(){return"D\xe1n"}, +gb7(){return"Menu b\u1eadt l\xean"}, +gbj(){return"L\xe0m m\u1edbi"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"Co\u0300n la\u0323i 1 k\xfd t\u1ef1"}, +gbg(){return"Co\u0300n la\u0323i $remainingCount k\xfd t\u1ef1"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Qu\xe9t v\u0103n b\u1ea3n"}, +gaX(){return"Scrim"}, +gbh(){return"\u0110\xf3ng $modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"T\xecm ki\u1ebfm tr\xean web"}, +ga1(){return"Ch\u1ecdn t\u1ea5t c\u1ea3"}, +gP(){return"Chia s\u1ebb..."}, +gbd(){return"Tab $tabIndex trong t\u1ed5ng s\u1ed1 $tabCount"}} +A.KX.prototype={ +gbe(){return"\u63d0\u9192"}, +gbf(){return"\u8fd4\u56de"}, +gb3(){return"\u5e95\u90e8\u52a8\u4f5c\u6761"}, +ga6(){return"\u590d\u5236"}, +ga7(){return"\u526a\u5207"}, +gaY(){return"\u5220\u9664"}, +gaN(){return"\u5bf9\u8bdd\u6846"}, +gO(){return"\u67e5\u8be2"}, +gaS(){return"\u5173\u95ed"}, +gbk(){return"\u66f4\u591a"}, +gaV(){return"\u6253\u5f00\u5bfc\u822a\u83dc\u5355"}, +ga8(){return"\u7c98\u8d34"}, +gb7(){return"\u5f39\u51fa\u83dc\u5355"}, +gbj(){return"\u5237\u65b0"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"\u8fd8\u53ef\u8f93\u5165 1 \u4e2a\u5b57\u7b26"}, +gbg(){return"\u8fd8\u53ef\u8f93\u5165 $remainingCount \u4e2a\u5b57\u7b26"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"\u626b\u63cf\u6587\u5b57"}, +gaX(){return"\u7eb1\u7f69"}, +gbh(){return"\u5173\u95ed $modalRouteContentName"}, +gbm(){return B.fs}, +ga5(){return"\u641c\u7d22"}, +ga1(){return"\u5168\u9009"}, +gP(){return"\u5171\u4eab\u2026"}, +gbd(){return"\u7b2c $tabIndex \u4e2a\u6807\u7b7e\uff0c\u5171 $tabCount \u4e2a"}} +A.a3L.prototype={} +A.KY.prototype={ +gbe(){return"\u901a\u77e5"}, +gb3(){return"\u9801\u5e95\u9762\u677f"}, +ga6(){return"\u8907\u88fd"}, +ga7(){return"\u526a\u4e0b"}, +gaY(){return"\u522a\u9664"}, +gaN(){return"\u5c0d\u8a71\u65b9\u584a"}, +gO(){return"\u67e5\u8a62"}, +gaS(){return"\u62d2\u7d55"}, +gaV(){return"\u958b\u555f\u5c0e\u89bd\u9078\u55ae"}, +ga8(){return"\u8cbc\u4e0a"}, +gb7(){return"\u5f48\u51fa\u5f0f\u9078\u55ae"}, +gbj(){return"\u91cd\u65b0\u6574\u7406"}, +gbc(){return"\u5c1a\u9918 1 \u500b\u5b57\u5143"}, +gbg(){return"\u5c1a\u9918 $remainingCount \u500b\u5b57\u5143"}, +gaW(){return"\u6383\u7784\u6587\u5b57"}, +gaX(){return"Scrim"}, +gbh(){return"\u95dc\u9589 $modalRouteContentName"}, +ga5(){return"\u641c\u5c0b"}, +ga1(){return"\u5168\u90e8\u9078\u53d6"}, +gP(){return"\u5206\u4eab\u2026"}, +gbd(){return"\u7b2c $tabIndex \u500b\u6a19\u7c64\uff0c\u7e3d\u5171 $tabCount \u500b"}} +A.a3M.prototype={} +A.a3N.prototype={ +gaW(){return"\u6383\u63cf\u6587\u5b57"}, +gaX(){return"\u7d17\u7f69"}, +gb3(){return"\u5e95\u90e8\u529f\u80fd\u8868"}, +gbh(){return"\u95dc\u9589\u300c$modalRouteContentName\u300d"}, +gbd(){return"\u7b2c $tabIndex \u500b\u5206\u9801 (\u5171 $tabCount \u500b)"}, +gaS(){return"\u95dc\u9589"}, +ga1(){return"\u5168\u9078"}, +gbe(){return"\u5feb\u8a0a"}, +gbc(){return"\u9084\u53ef\u8f38\u5165 1 \u500b\u5b57\u5143"}, +gbg(){return"\u9084\u53ef\u8f38\u5165 $remainingCount \u500b\u5b57\u5143"}} +A.a3O.prototype={ +gbe(){return"Isexwayiso"}, +gbf(){return"Emuva"}, +gb3(){return"Ishidi Eliphansi"}, +ga6(){return"Kopisha"}, +ga7(){return"Sika"}, +gaY(){return"Susa"}, +gaN(){return"Ingxoxo"}, +gO(){return"Bheka Phezulu"}, +gaS(){return"Cashisa"}, +gbk(){return"Okuningi"}, +gaV(){return"Vula imenyu yokuzulazula"}, +ga8(){return"Namathisela"}, +gb7(){return"Imenyu ye-popup"}, +gbj(){return"Vuselela"}, +gbl(){return null}, +gbn(){return null}, +gbc(){return"1 uhlamvu olusele"}, +gbg(){return"$remainingCount izinhlamvu ezisele"}, +gbo(){return null}, +gbp(){return null}, +gaW(){return"Skena umbhalo"}, +gaX(){return"I-Scrim"}, +gbh(){return"Vala i-$modalRouteContentName"}, +gbm(){return B.P}, +ga5(){return"Sesha Iwebhu"}, +ga1(){return"Khetha konke"}, +gP(){return"Yabelana..."}, +gbd(){return"Ithebhu $tabIndex kwangu-$tabCount"}} +A.aav.prototype={} +A.aaw.prototype={} +A.aax.prototype={} +A.aay.prototype={} +A.aaz.prototype={} +A.aaA.prototype={} +A.aaB.prototype={} +A.aaC.prototype={} +A.aaD.prototype={} +A.aaE.prototype={} +A.aaF.prototype={} +A.aaG.prototype={} +A.aaH.prototype={} +A.PE.prototype={} +A.aaI.prototype={} +A.aaJ.prototype={} +A.PF.prototype={} +A.aaK.prototype={} +A.aaL.prototype={} +A.aaM.prototype={} +A.aaN.prototype={} +A.aaO.prototype={} +A.aaP.prototype={} +A.aaQ.prototype={} +A.aaR.prototype={} +A.PG.prototype={} +A.aaS.prototype={} +A.aaT.prototype={} +A.aaU.prototype={} +A.aaV.prototype={} +A.aaW.prototype={} +A.aaX.prototype={} +A.aaY.prototype={} +A.aaZ.prototype={} +A.ab_.prototype={} +A.ab0.prototype={} +A.ab1.prototype={} +A.ab2.prototype={} +A.ab3.prototype={} +A.ab4.prototype={} +A.ab5.prototype={} +A.ab6.prototype={} +A.ab7.prototype={} +A.ab8.prototype={} +A.ab9.prototype={} +A.aba.prototype={} +A.abb.prototype={} +A.abc.prototype={} +A.abd.prototype={} +A.abe.prototype={} +A.abf.prototype={} +A.PH.prototype={} +A.abg.prototype={} +A.abh.prototype={} +A.abi.prototype={} +A.abj.prototype={} +A.abk.prototype={} +A.abl.prototype={} +A.abm.prototype={} +A.abn.prototype={} +A.abo.prototype={} +A.abp.prototype={} +A.abq.prototype={} +A.abr.prototype={} +A.abs.prototype={} +A.abt.prototype={} +A.abu.prototype={} +A.abv.prototype={} +A.abw.prototype={} +A.abx.prototype={} +A.aby.prototype={} +A.abz.prototype={} +A.abA.prototype={} +A.abB.prototype={} +A.abC.prototype={} +A.abD.prototype={} +A.abE.prototype={} +A.abF.prototype={} +A.abG.prototype={} +A.abH.prototype={} +A.abI.prototype={} +A.abJ.prototype={} +A.abK.prototype={} +A.abL.prototype={} +A.abM.prototype={} +A.abN.prototype={} +A.abO.prototype={} +A.abP.prototype={} +A.PI.prototype={} +A.abQ.prototype={} +A.abR.prototype={} +A.abS.prototype={} +A.abT.prototype={} +A.abU.prototype={} +A.abV.prototype={} +A.abW.prototype={} +A.PJ.prototype={} +A.abX.prototype={} +A.abY.prototype={} +A.abZ.prototype={} +A.ac_.prototype={} +A.ac0.prototype={} +A.ac1.prototype={} +A.ac2.prototype={} +A.ac3.prototype={} +A.ac4.prototype={} +A.ac5.prototype={} +A.ac6.prototype={} +A.ac7.prototype={} +A.ac8.prototype={} +A.PK.prototype={} +A.ac9.prototype={} +A.PL.prototype={} +A.aca.prototype={} +A.acb.prototype={} +A.acc.prototype={} +A.a0C.prototype={ +Zl(a){return B.c.hI(this.gbh(),"$modalRouteContentName",a)}, +agX(a,b){var s=this.x +return B.c.hI(B.c.hI(this.gbd(),"$tabIndex",s.Wk(b)),"$tabCount",s.Wk(a))}, +gbp(){return null}, +gbc(){return null}, +gbo(){return null}, +gbn(){return null}, +gbl(){return null}, +agl(a){var s=this,r=s.gbp(),q=s.gbc(),p=s.gbo(),o=s.gbn() +return B.c.hI(A.bJC(a,s.gbl(),s.a,o,q,s.gbg(),p,r),"$remainingCount",s.x.Wk(a))}, +$iaE:1} +A.ah1.prototype={ +vj(a){return $.bqx().p(0,a.gda(0))}, +iC(a,b){return $.bQg.cP(0,b,new A.b9z(b))}, +tu(a){return!1}, +j(a){return"GlobalMaterialLocalizations.delegate("+$.bqx().a+" locales)"}} +A.b9z.prototype={ +$0(){var s,r,q,p,o,n,m,l,k,j,i,h=null +A.bAa() +s=this.a +r=A.Gn(s.u4("_")) +if(A.ZO(r)){q=A.au4(r) +p=A.blp(r) +o=A.blo(r) +n=A.au3(r) +m=A.bln(r) +l=A.blm(r) +k=A.bll(r)}else if(A.ZO(s.gda(0))){q=A.au4(s.gda(0)) +p=A.blp(s.gda(0)) +o=A.blo(s.gda(0)) +n=A.au3(s.gda(0)) +m=A.bln(s.gda(0)) +l=A.blm(s.gda(0)) +k=A.bll(s.gda(0))}else{q=A.au4(h) +p=A.blp(h) +o=A.blo(h) +n=A.au3(h) +m=A.bln(h) +l=A.blm(h) +k=A.bll(h)}if(A.bn6(r)){j=A.aKD(r) +i=A.bn5("00",r)}else if(A.bn6(s.gda(0))){j=A.aKD(s.gda(0)) +i=A.bn5("00",s.gda(0))}else{j=A.aKD(h) +i=A.bn5("00",h)}s=A.bVW(s,q,p,o,n,m,l,k,j,i) +s.toString +return new A.cv(s,t.az)}, +$S:643} +A.bjx.prototype={ +$2(a,b){var s,r=B.agB.h(0,a) +if($.bku() instanceof A.Eg)$.bSm=A.bSA() +if($.ap5() instanceof A.Eg)$.bVt=A.bSz() +if(r==null)A.V(A.bl("Missing DateTime formatting patterns",null)) +s=b.a +if(a!==s)A.V(A.hY(A.a([a,s],t._m),"Locale does not match symbols.NAME",null)) +J.bT($.bku(),s,b) +J.bT($.ap5(),s,r)}, +$S:644} +A.a0E.prototype={$iaI:1, +gcr(){return this.a}} +A.amz.prototype={ +vj(a){return $.bqB().p(0,a.gda(0))}, +iC(a,b){return $.bRE.cP(0,b,new A.bh0(b))}, +tu(a){return!1}, +j(a){return"GlobalWidgetsLocalizations.delegate("+$.bqB().a+" locales)"}} +A.bh0.prototype={ +$0(){var s=A.bVZ(this.a) +s.toString +return new A.cv(s,t.E8)}, +$S:645} +A.acT.prototype={ +D(){return"_ArrowDirection."+this.b}} +A.a6a.prototype={ +D(){return"PopupPosition."+this.b}} +A.Ib.prototype={ +a0(){return new A.ZH()}} +A.ZH.prototype={ +al1(a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=this,a4=null +a3.a.toString +s=a3.c +r=t.Qv.a(s.gag()) +if(r==null)return +r.gv(0) +q=A.ct(r.bB(0,a4),new A.z(0,0)) +a3.a.toString +p=a3.c +p.toString +p=A.bU(p,!1) +o=r.gv(0) +n=q.a +m=q.b +l=a3.a +k=l.r +j=l.w +i=l.x +h=l.z +l=l.d +g=t.A +f=$.aoZ() +e=A.a([],t.Zt) +d=$.ab +c=t.U +b=t.h +a=A.qF(B.cT) +a0=A.a([],t.wi) +a1=$.aW() +a2=$.ab +p.nh(new A.aiw(new A.I(n,m,n+(0+o.a),m+(0+o.b)),B.N9,l,B.eQ,B.e9,new A.bG(a4,g),new A.bG(a4,g),k,j,!0,i,h,a4,a4,f.d-f.b,B.u2,a4,a4,e,A.bn(t.f9),new A.bG(a4,t.sY),new A.bG(a4,g),new A.ud(),a4,0,new A.aq(new A.a_(d,c),b),a,a0,B.i1,new A.cS(a4,a1),new A.aq(new A.a_(a2,c),b),new A.aq(new A.a_(a2,c),b))).ak(new A.atK(a3),t.H)}, +F(a){var s=null,r=this.a +return A.fn(B.d0,r.e,B.S,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,new A.atJ(this),s,s,s,!1,B.aV)}} +A.atK.prototype={ +$1(a){this.a.a.toString +return null}, +$S:646} +A.atJ.prototype={ +$1(a){return this.a.al1(0)}, +$S:74} +A.aiu.prototype={ +F(a){var s,r=this,q=null,p=r.f,o=p===B.PJ,n=o?0:q +p=p===B.u2 +n=B.a_i.abT(p?0:q,n) +s=r.as +s=new A.bb(r.w,q,q,A.bq(10),A.a([new A.c6(0,B.a6,A.Y(B.d.aa(25.5),0,0,0),B.j,10)],t.F),q,q,B.E) +n=A.aa(q,r.c,B.h,q,B.RP,s,q,q,r.d,n,r.z,q,q,q) +s=p?2:q +o=o?2:q +p=p?2:4 +return A.cq(B.a2,A.a([n,A.eH(o,new A.a7r(p,A.fB(q,q,q,new A.am7(r.x,q),B.an8),r.e),q,q,r.r,q,s,q)],t.p),B.w,B.W,q)}} +A.am7.prototype={ +aT(a,b){var s,r,q,p,o=$.ap(),n=o.br(),m=o.cR() +n.sLP(!0) +n.saG(0,this.b) +o=b.a +s=o*0.66 +r=b.b +q=r*0.86 +m.dg(0,s,q) +r*=1.05 +p=o*0.34 +m.uz(o*0.58,r,o*0.42,r,p,q) +m.uz(p,q,0,0,0,0) +m.uz(0,0,o,0,o,0) +m.uz(o,0,s,q,s,q) +m.uz(s,q,s,q,s,q) +a.eJ(m,n)}, +ff(a){return!0}} +A.aiw.prototype={ +gpi(){return this.jt}, +gpj(){return!0}, +guq(){return"Popup"}, +ra(){this.a_l(!0) +$.cp.p2$.push(new A.baP(this)) +return this.amN()}, +a3i(a){var s,r,q,p,o,n=$.aw.aR$.x.h(0,a),m=n==null,l=m?null:n.gag() +t.Qv.a(l) +if(l==null||m)return null +l.gv(0) +s=A.ct(l.bB(0,null),new A.z(0,0)) +m=l.gv(0) +l=s.a +r=s.b +q=l+(0+m.a) +m=r+(0+m.b) +p=new A.I(l,r,q,m) +o=n.au(t.I) +o.toString +return o.w===B.ae?new A.I(0,r,q-l,m):p}, +atA(a,b){var s,r,q,p,o,n,m,l=this +if(b==null||a==null)return +s=l.bH +r=s.gbq().a-b.gbq().a +q=b.c-b.a +p=r+q +o=$.aoZ() +n=o.a +if(ro)r-=p-o +m=s.gbq().a-r-a.gbq().a +if(m+a.gbq().a>q-15)s=l.kK=m-15 +else if(m<15){l.kK=15 +s=15}else{l.kK=m +s=m}l.js=(s+a.gbq().a)/q}, +atC(a){var s,r,q,p,o,n,m,l,k,j=this +if(a==null)return +s=j.bH +r=s.b +q=$.aoZ() +p=s.d +o=q.d-p +n=Math.max(r-q.b,o) +m=a.d-a.b +if(m>n)m=n +j.k6=m +l=j.d4 +if(l!==B.akG)m=l===B.N9&&m>o +else m=!0 +if(m){p=$.bC().geB().b.gaJ(0) +j.nU=A.a3X(p.b.$1(J.fT(p.a)),null).a.b-r +j.uQ=B.PJ +j.ma=1}else{j.pw=p +j.uQ=B.u2 +j.ma=0}k=s.gbq().a-a.gbq().a +if(k+(a.c-a.a)>q.c)j.uS=10 +else j.uR=k<10?10:k}, +xM(a,b,c){return this.cm}, +xN(a,b,c,d){var s,r,q,p,o,n=this,m=null,l=n.kK +d=new A.aiu(d,n.fu,n.hE,n.uQ,l,n.dK,n.dS,!0,n.hR,n.nZ,n.fv,m) +if(b.gbi(0)!==B.am){s=A.cl(n.ft,b,m) +d=new A.eB(s,!1,A.a7E(A.aA9(n.js,n.ma),d,s),m)}l=n.uR +r=n.uS +q=n.pw +p=n.nU +o=$.aoZ() +return A.cq(B.a2,A.a([A.eH(p,new A.ep(new A.au(0,o.c-o.a,0,n.k6),A.fI(B.T,!0,m,d,B.h,B.t,0,m,m,m,m,m,B.fh),m),m,m,l,r,q,m)],t.p),B.w,B.W,m)}, +gvQ(a){return this.d9}} +A.baP.prototype={ +$1(a){var s=this.a,r=s.a3i(s.fu) +s.atA(s.a3i(s.hE),r) +s.atC(r) +s.a_l(!1)}, +$S:3} +A.kh.prototype={ +D(){return"SmartStatus."+this.b}} +A.DC.prototype={ +D(){return"SmartToastType."+this.b}} +A.DB.prototype={ +D(){return"SmartAnimationType."+this.b}} +A.O7.prototype={ +D(){return"SmartAwaitOverType."+this.b}} +A.Oa.prototype={ +D(){return"SmartMaskTriggerType."+this.b}} +A.oS.prototype={ +D(){return"SmartNonAnimationType."+this.b}} +A.uO.prototype={ +D(){return"SmartInitType."+this.b}} +A.O8.prototype={ +D(){return"SmartBackType."+this.b}} +A.xQ.prototype={ +D(){return"NotifyType."+this.b}} +A.a8z.prototype={} +A.a8A.prototype={} +A.a8B.prototype={} +A.a8C.prototype={} +A.a8D.prototype={} +A.a8E.prototype={} +A.att.prototype={ +al7(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){var s,r,q=this,p=A.a8(i,!0,t.vo) +if($.fg().d.at&&B.b.p(p,B.ON))p.push(B.OK) +$.fg().d.at=!0 +q.e=!1 +q.f=null +s=q.c +if(s!=null)s.S(0) +$.fg() +q.c=A.bZ(B.F,new A.atA(q)) +s=q.b +r=q.azU(j,f) +$.fg() +return s.OQ(0,a,b,c,d,B.fz,null,!1,g,B.tc,h,p,r,new A.atB(q,k,!1),!1,!0,!1,!1,n,o)}, +azU(a,b){var s=this.d +if(s!=null)s.S(0) +return new A.atu(this,a)}, +Bx(a){return this.aIc(a)}, +aIb(){return this.Bx(B.kH)}, +aIc(a){var s=0,r=A.n(t.H),q=this +var $async$Bx=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:$.fg().d.at=!1 +s=2 +return A.f(q.b.j_(a),$async$Bx) +case 2:return A.l(null,r)}}) +return A.m($async$Bx,r)}, +j_(a){return this.aS8(a)}, +aS8(a){var s=0,r=A.n(t.H),q=this,p +var $async$j_=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=new A.atv(q,a) +q.f=p +s=q.e?2:3 +break +case 2:q.e=!1 +$.fg().d.at=!1 +p=p.$0() +s=4 +return A.f(t.L0.b(p)?p:A.en(p,t.z),$async$j_) +case 4:case 3:return A.l(null,r)}}) +return A.m($async$j_,r)}} +A.atA.prototype={ +$0(){var s=this.a +s.e=!0 +s=s.f +if(s!=null)s.$0()}, +$S:0} +A.atB.prototype={ +$0(){if(!this.c)return +this.a.aIb()}, +$S:0} +A.atu.prototype={ +$0(){var s=this.a.d +if(s!=null)s.S(0)}, +$S:0} +A.atv.prototype={ +$0(){return this.a.Bx(this.b)}, +$S:15} +A.atC.prototype={ +OR(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,a0,a1,a2,a3,a4){var s,r,q=this,p=$.au8 +if((p==null?$.au8=new A.ZR(A.w(t.KZ,t.CG)):p).aaU(B.wj,!1))return A.c7(null,a4.i("0?")) +$.fg().c.ay=!0 +p=A.at(q) +a0=A.c(p+B.fY.aXH()) +s=new A.a52(q,a0,e,m) +q.aHZ(s) +p=q.b +r=q.avc(n,h,s) +$.fg() +return p.OQ(0,a,b,c,d,B.fz,null,!1,j,B.tc,k,l,r,new A.atH(o,!1,s),!0,!0,!0,!1,a3,a4)}, +avc(a,b,c){var s,r={},q=c.b +if(q==="smartKeepSingle"){s=c.d +if(s!=null)s.S(0)}r.a=null +c.d=r.a=A.bZ(b,new A.atE(q)) +return new A.atF(r,a)}, +aHZ(a){var s,r=$.cC +if(r==null)r=$.cC=A.fl() +s=r.d +s===$&&A.b() +s.f0(0,a) +A.Em(new A.atG(this,r))}} +A.atH.prototype={ +$0(){return}, +$S:0} +A.atE.prototype={ +$0(){return A.blg(B.kH,!1,null,this.a,B.lc)}, +$S:0} +A.atF.prototype={ +$0(){var s=this.a.a +if(s!=null)s.S(0)}, +$S:0} +A.atG.prototype={ +$0(){var s,r,q +try{s=A.KG($.blv.eg(),t.N1) +s.toString +r=this.b.b +r===$&&A.b() +s.WN(0,this.a.a,r)}catch(q){s=$.blv.eg() +s=A.KG(s,t.N1) +s.vd(0,this.a.a)}}, +$S:0} +A.KH.prototype={ +OQ(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,a0,a1,a2,a3,a4){var s,r=this,q=o?r.b:new A.kl(),p=new A.aS4() +r.d=p +s=A.a8(l,!0,t.vo) +B.b.p(s,B.anP) +r.r=new A.O9(a3,p,n,b,a1,d,!0,e,s,c,i,k,j,g,q) +r.azD(d,f,m,!1) +q=new A.a_($.ab,a4.i("a_<0?>")) +r.e=new A.aq(q,a4.i("aq<0?>")) +return q}, +azD(a,b,c,d){var s,r=this +r.w=b +s=t.P +A.eC(B.ZK,new A.aFz(r),s) +A.eC(a,new A.aFA(r),s) +r.f=c +r.a.dL()}, +a4a(a,b){var s,r,q +if(a===this.w){s=this.e +r=s==null +q=r?null:(s.a.a&30)!==0 +if(q===!1)if(!r)s.bv(0,b)}}, +azm(a,b){return this.a4a(a,b,t.z)}, +a4b(a){return this.a4a(a,null,t.z)}, +uJ(a,b,c){return this.aS9(a,b,!1)}, +yl(){return this.uJ(B.kH,null,!1,t.z)}, +aS4(a,b){return this.uJ(a,b,!1,t.z)}, +j_(a){return this.uJ(a,null,!1,t.z)}, +aS9(a,b,c){var s=0,r=A.n(t.H),q=this,p +var $async$uJ=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:p=q.f +if(p!=null)p.$0() +p=q.d +p=p==null?null:p.j_(a) +s=2 +return A.f(t.uz.b(p)?p:A.en(p,t.H),$async$uJ) +case 2:q.r=A.aa(null,null,B.h,null,null,null,null,null,null,null,null,null,null,null) +q.a.dL() +s=3 +return A.f(A.aab(null),$async$uJ) +case 3:q.azm(B.fz,b) +return A.l(null,r)}}) +return A.m($async$uJ,r)}} +A.aFz.prototype={ +$0(){this.a.a4b(B.anJ)}, +$S:4} +A.aFA.prototype={ +$0(){this.a.a4b(B.anI)}, +$S:4} +A.atR.prototype={ +tx(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){return this.ala(a,b,c,d,!1,!1,g,h,i,j,k,l,m,!0,!0,p)}, +ala(a,b,c,d,e,f,g,h,i,a0,a1,a2,a3,a4,a5,a6){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j +var $async$tx=A.j(function(a7,a8){if(a7===1){o=a8 +s=p}while(true)switch(s){case 0:k=$.au8 +if((k==null?$.au8=new A.ZR(A.w(t.KZ,t.CG)):k).aaU(B.wk,!1)){s=1 +break}m=new A.atY(n,a6,a,i,a0,c,d,a1,b,!0,!0,a2,a3,!1) +p=4 +s=h===B.nz?7:9 +break +case 7:s=10 +return A.f(A.ZK(n.b,!0,m,g),$async$tx) +case 10:s=8 +break +case 9:s=h===B.OP?11:13 +break +case 11:s=14 +return A.f(A.ZJ(n.b,m,g),$async$tx) +case 14:s=12 +break +case 13:s=h===B.te?15:17 +break +case 15:s=18 +return A.f(A.blk(n.b,m,g,a6),$async$tx) +case 18:s=16 +break +case 17:s=h===B.ao_?19:20 +break +case 19:s=21 +return A.f(A.blj(n.b,m,g),$async$tx) +case 21:case 20:case 16:case 12:case 8:p=2 +s=6 +break +case 4:p=3 +j=o +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$tx,r)}} +A.atY.prototype={ +$0(){var s,r,q,p=this +$.fg() +s=p.a +r=s.a +r.eT(0) +q=A.KG($.bsa.eg(),t.N1) +q.vd(0,r) +s=s.b +$.fg() +s.OQ(0,p.c,p.x,p.f,p.r,B.fz,null,!1,p.d,B.tc,p.e,p.w,p.Q,new A.atZ(p.as,p.at),!1,p.y,p.z,!1,p.b,t.z)}, +$S:4} +A.atZ.prototype={ +$0(){return}, +$S:0} +A.atW.prototype={ +$0(){var s=0,r=A.n(t.H),q +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:q=$.ft +s=2 +return A.f((q==null?$.ft=new A.kk(A.ej(null,t.Mq)):q).yl(),$async$$0) +case 2:q=$.ft;(q==null?$.ft=new A.kk(A.ej(null,t.Mq)):q).KL() +return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.atT.prototype={ +$0(){this.a.a.a.eT(0)}, +$S:0} +A.atU.prototype={ +$0(){var s=$.ft;(s==null?$.ft=new A.kk(A.ej(null,t.Mq)):s).yl()}, +$S:0} +A.atX.prototype={ +$0(){var s=0,r=A.n(t.H),q +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:q=$.ft +s=2 +return A.f((q==null?$.ft=new A.kk(A.ej(null,t.Mq)):q).yl(),$async$$0) +case 2:$.atS=$.bli=null +return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.atV.prototype={ +$0(){var s=0,r=A.n(t.H),q=this,p +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=q.a +s=2 +return A.f(p.yl(),$async$$0) +case 2:p.a.eT(0) +return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.E6.prototype={} +A.kk.prototype={ +ym(a){return this.aSb(a)}, +yl(){return this.ym(!1)}, +aSb(a){var s=0,r=A.n(t.H),q,p=this,o,n +var $async$ym=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:n=p.c +if(n.b===n.c){s=1 +break}if(a){p.abk() +$.fg() +s=1 +break}o=n.gW(0) +n.C(0,o) +if(n.b===n.c)$.fg() +n=o.a +s=3 +return A.f(n.yl(),$async$ym) +case 3:n=n.a +if(n.gMl())n.eT(0) +$.fg() +s=4 +return A.f(A.eC(B.bc,null,t.z),$async$ym) +case 4:case 1:return A.l(q,r)}}) +return A.m($async$ym,r)}, +abk(){var s,r,q,p,o=this.c +if(o.b===o.c)return +this.JY() +for(s=A.bou(o,o.$ti.c),r=s.$ti.c;s.u();){q=s.e +q=(q==null?r.a(q):q).a.a +p=q.e +if((p==null?null:p.a)!=null)q.eT(0)}o.V(0)}, +aco(a,b,c){var s=new A.a_($.ab,t.U),r=new A.aq(s,t.h) +this.b=r +this.a=A.bZ(b,new A.aUJ(r,c)) +return s}, +JY(){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$JY=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:n=q.a +if(n!=null)n.S(0) +n=q.b +p=n==null +o=p?null:(n.a.a&30)!==0 +if(o===!1)if(!p)n.d8(0) +return A.l(null,r)}}) +return A.m($async$JY,r)}, +KL(){var s=0,r=A.n(t.H),q,p=this,o,n,m +var $async$KL=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:m=p.c +if(m.b===m.c){s=1 +break}o=m.gW(0) +s=o.b===B.nz?3:4 +break +case 3:m=o.c +n=o.d +s=5 +return A.f(A.ZK(o.a,!1,n,m),$async$KL) +case 5:case 4:case 1:return A.l(q,r)}}) +return A.m($async$KL,r)}} +A.aUJ.prototype={ +$0(){var s=this.a +if((s.a.a&30)===0)s.d8(0) +this.b.$0()}, +$S:0} +A.aqf.prototype={ +aWl(a,b){if(b===B.anO)return!0 +else if(a===B.U7&&b===B.OL)return!0 +else if(a===B.U8&&b===B.OM)return!0 +else if(a===B.oG&&b===B.OM)return!0 +return!1}} +A.aqg.prototype={} +A.aF3.prototype={} +A.a52.prototype={} +A.azI.prototype={} +A.Aw.prototype={ +D(){return"CloseType."+this.b}} +A.oa.prototype={ +D(){return"DialogType."+this.b}} +A.a_k.prototype={ +gjW(){var s=this.a +s===$&&A.b() +return s}, +grL(){var s=this.e +return s===$?this.e=new A.aF3():s}, +gaWM(){var s=this.f +s===$&&A.b() +return s}, +gb0h(){var s=this.r +s===$&&A.b() +return s}, +aVy(a,b){var s,r,q=this,p=null +if(b.p(0,B.ny)){q.b=A.bnL(new A.avi(q)) +s=q.grL() +r=q.b +s.a=new A.att(r,new A.KH(r,new A.kl(),A.aa(p,p,B.h,p,p,p,p,p,p,p,p,p,p,p),B.fz))}}, +OR(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,a0,a1,a2,a3,a4){var s,r,q=null,p={} +p.a=null +s=A.bnL(new A.avj(p)) +r=new A.atC(s,new A.KH(s,new A.kl(),A.aa(q,q,B.h,q,q,q,q,q,q,q,q,q,q,q),B.fz)) +p.a=r +return r.OR(a,b,c,d,e,!1,!1,h,!1,j,k,l,m,n,o,a0,!0,!0,a3,a4)}, +al9(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,a0,a1){var s,r,q=null,p={} +p.a=null +s=A.bnL(new A.avk(p)) +r=new A.atR(s,new A.KH(s,new A.kl(),A.aa(q,q,B.h,q,q,q,q,q,q,q,q,q,q,q),B.fz)) +p.a=r +return r.tx(a,b,c,d,!1,!1,h,i,j,k,l,m,n,!0,!0,new A.P8(!1,a1,q))}, +VL(a,b,c,d,e){var s,r,q,p,o,n=this +if(d===B.anR){s=n.a +s===$&&A.b() +r=!1 +if(s.d.at)if(e!=null){s=n.c +s===$&&A.b() +if(s.b===s.c){s=n.d +s===$&&A.b() +s=s.b===s.c}else s=r}else s=!0 +else s=r +if(s){s=n.grL().a +s===$&&A.b() +return s.j_(a)}s=n.d +s===$&&A.b() +if(!s.ga_(0)){q=e==null +if(!q)for(s=n.d,s=A.bou(s,s.$ti.c),r=s.$ti.c,q=!1;s.u();){p=s.e +if((p==null?r.a(p):p).b===e)q=!0}if(q)return A.blg(a,!1,c,e,B.lc)}s=n.c +s===$&&A.b() +if(!s.ga_(0))return A.brP(a,!1,c,e,B.iZ)}else if(d===B.anS)return A.Ie(!1,t.H) +else if(d===B.anU)return A.Ie(!0,t.H) +else if(d===B.as){s=n.grL().a +s===$&&A.b() +return s.j_(a)}else if(d===B.td||d===B.OO){s=n.a27(d) +s.toString +return A.blg(a,!1,c,e,s)}o=n.a27(d) +if(o==null)return null +return A.brP(a,!1,c,e,o)}, +aS7(a,b,c,d){return this.VL(B.kH,a,b,c,d,t.z)}, +aS5(a,b){return this.VL(a,!1,null,b,null,t.z)}, +aS6(a,b,c){return this.VL(a,!1,null,b,c,t.z)}, +a27(a){if(a===B.anX)return B.iZ +else if(a===B.anV)return B.pp +else if(a===B.anW)return B.pq +else if(a===B.td)return B.lc +else if(a===B.anT)return B.ww +else if(a===B.anY)return B.wx +else if(a===B.anZ)return B.wy +else if(a===B.OO)return B.Zq +return null}, +aWN(a){return this.gaWM().$1(a)}, +b0i(a){return this.gb0h().$1(a)}} +A.avi.prototype={ +$1(a){var s=this.a.grL().a +s===$&&A.b() +s=s.b +return new A.qp(!s.c,s.r,null)}, +$S:13} +A.avj.prototype={ +$1(a){var s=this.a.a.b +return new A.qp(!s.c,s.r,null)}, +$S:13} +A.avk.prototype={ +$1(a){var s=this.a.a.b +return new A.qp(!s.c,s.r,null)}, +$S:13} +A.a46.prototype={ +uH(){var s=0,r=A.n(t.y),q +var $async$uH=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:q=A.a47() +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$uH,r)}} +A.ahg.prototype={} +A.aPv.prototype={} +A.Jy.prototype={ +a0(){return new A.afE()}} +A.azH.prototype={ +$2(a,b){var s=this,r=A.bIR(b,s.f,s.c,s.d,s.e,s.b) +return r}, +$S:54} +A.afE.prototype={ +galO(){var s=this.d +s===$&&A.b() +return s}, +aj(){var s,r=this +A.Em(new A.b4l(r)) +r.a.toString +r.d=new A.b4m() +s=A.cI([B.OI,B.OJ,B.ny,B.tb,B.ta],t.lo) +r.e=s +s=$.cC +if(s==null)s=$.cC=A.fl() +s.aVy(0,r.e) +if(r.e.p(0,B.tb)){s=$.cC +if(s==null)s=$.cC=A.fl() +r.a.toString +s.r=new A.b4n()}if(r.e.p(0,B.ny)){s=$.cC +if(s==null)s=$.cC=A.fl() +r.a.toString +s.f=new A.b4o()}if(r.e.p(0,B.ta)){r.a.toString +s=$.cC +if(s==null)s=$.cC=A.fl() +s.w=new A.azI(new A.b4p(),new A.b4q(),new A.b4r(),new A.b4s(),new A.b4t())}r.aw()}, +F(a){var s=A.a([A.n6(new A.b4k(this),!1,!1,!1)],t.wi),r=this.e +r===$&&A.b() +if(r.p(0,B.ny)){r=$.cC +r=(r==null?$.cC=A.fl():r).b +r===$&&A.b() +s.push(r)}return this.alP(new A.xS(s,B.w,null))}, +ajr(a){var s,r=a.a +if(r instanceof A.jp){t.yi.a(r) +s=$.aw.aR$.x.h(0,r)}else s=null +return s}, +alP(a){return this.galO().$1(a)}} +A.b4l.prototype={ +$0(){var s,r,q,p,o +try{s=null +q=this.a +p=q.a +p=p.c +if(p instanceof A.Bm){r=p +if(r.d instanceof A.xO)s=q.ajr(t.tw.a(r.d))}$.bsb=s}catch(o){}}, +$S:0} +A.b4m.prototype={ +$1(a){var s=null +return A.fI(B.T,!0,s,a,B.h,B.t,0,s,s,s,s,s,B.bL)}, +$S:647} +A.b4n.prototype={ +$1(a){return new A.E7(a,null)}, +$S:648} +A.b4o.prototype={ +$1(a){return new A.BZ(a,null)}, +$S:649} +A.b4p.prototype={ +$1(a){return new A.CA(a,null)}, +$S:650} +A.b4q.prototype={ +$1(a){return new A.Cz(a,null)}, +$S:651} +A.b4r.prototype={ +$1(a){return new A.CB(a,null)}, +$S:652} +A.b4s.prototype={ +$1(a){return new A.Cx(a,null)}, +$S:653} +A.b4t.prototype={ +$1(a){return new A.Cy(a,null)}, +$S:654} +A.b4k.prototype={ +$1(a){var s=null,r=this.a,q=r.e +q===$&&A.b() +if(q.p(0,B.OI))$.bHq.b=a +if(r.e.p(0,B.OJ))$.bHp.b=a +if(r.e.p(0,B.ta))$.blv.b=a +if(r.e.p(0,B.tb))$.bsa.b=a +r=r.a.c +return r==null?A.aa(s,s,B.h,s,s,s,s,s,s,s,s,s,s,s):r}, +$S:13} +A.tl.prototype={ +D(){return"DebounceType."+this.b}} +A.ZR.prototype={ +aaU(a,b){var s,r,q,p +if(!b)return!1 +if(a===B.Yy){$.fg() +s=B.bl}else if(a===B.Yz){$.fg() +s=B.bl}else if(a===B.wj){$.fg() +s=B.bl}else if(a===B.wk){$.fg() +s=B.bl}else s=a===B.YA?B.ec:B.F +r=new A.aS(Date.now(),0,!1) +q=this.a +p=q.h(0,a) +q.n(0,a,r) +return p!=null&&r.hC(p).a")),null,!0)}, +a2k(){var s,r=this.a.c +if(r.l(0,B.eF)||r.l(0,B.oj)||r.l(0,B.Qh))s=B.cH +else if(r.l(0,B.ip)||r.l(0,B.eG)||r.l(0,B.Qi))s=B.re +else if(r.l(0,B.kv))s=B.rf +else s=r.l(0,B.oi)?B.fk:B.j +this.d=new A.b0(s,B.j,t.Ni)}} +A.anJ.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.BZ.prototype={ +F(a){var s,r=null,q=A.hR()?B.eL:B.v,p=A.bq(15) +A.hR() +s=A.wh(r,r,r,r,r,0,r,3,r,new A.nY(B.n,t.Jn)) +A.hR() +return A.aa(r,A.b2(A.a([s,A.aa(r,A.X(this.c,r,r,r,r,A.cb(r,r,B.n,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r),r,r),B.h,r,r,r,r,r,r,B.a_n,r,r,r,r)],t.p),B.l,B.o,B.aE,B.r),B.h,r,r,new A.bb(q,r,r,p,r,r,r,B.E),r,r,r,r,B.a_V,r,r,r)}} +A.Cx.prototype={ +F(a){var s,r=null,q=A.bq(8),p=A.hR()?B.eL:B.v +A.hR() +s=A.hD(B.a1q,B.n,r,22) +A.hR() +return A.aa(r,A.b2(A.a([s,A.aa(r,A.X(this.c,r,r,r,r,A.cb(r,r,B.n,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r),r,r),B.h,r,r,r,r,r,r,B.j3,r,r,r,r)],t.p),B.l,B.o,B.aE,B.r),B.h,r,r,new A.bb(p,r,r,q,r,r,r,B.E),r,r,r,r,B.j4,r,r,r)}} +A.Cy.prototype={ +F(a){var s,r=null,q=A.bq(8),p=A.hR()?B.eL:B.v +A.hR() +s=A.hD(B.xJ,B.n,r,22) +A.hR() +return A.aa(r,A.b2(A.a([s,A.aa(r,A.X(this.c,r,r,r,r,A.cb(r,r,B.n,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r),r,r),B.h,r,r,r,r,r,r,B.j3,r,r,r,r)],t.p),B.l,B.o,B.aE,B.r),B.h,r,r,new A.bb(p,r,r,q,r,r,r,B.E),r,r,r,r,B.j4,r,r,r)}} +A.Cz.prototype={ +F(a){var s,r=null,q=A.bq(8),p=A.hR()?B.eL:B.v +A.hR() +s=A.hD(B.xI,B.n,r,22) +A.hR() +return A.aa(r,A.b2(A.a([s,A.aa(r,A.X(this.c,r,r,r,r,A.cb(r,r,B.n,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r),r,r),B.h,r,r,r,r,r,r,B.j3,r,r,r,r)],t.p),B.l,B.o,B.aE,B.r),B.h,r,r,new A.bb(p,r,r,q,r,r,r,B.E),r,r,r,r,B.j4,r,r,r)}} +A.CA.prototype={ +F(a){var s,r=null,q=A.bq(8),p=A.hR()?B.eL:B.v +A.hR() +s=A.hD(B.lC,B.n,r,22) +A.hR() +return A.aa(r,A.b2(A.a([s,A.aa(r,A.X(this.c,r,r,r,r,A.cb(r,r,B.n,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r),r,r),B.h,r,r,r,r,r,r,B.j3,r,r,r,r)],t.p),B.l,B.o,B.aE,B.r),B.h,r,r,new A.bb(p,r,r,q,r,r,r,B.E),r,r,r,r,B.j4,r,r,r)}} +A.CB.prototype={ +F(a){var s,r=null,q=A.bq(8),p=A.hR()?B.eL:B.v +A.hR() +s=A.hD(B.a1r,B.n,r,22) +A.hR() +return A.aa(r,A.b2(A.a([s,A.aa(r,A.X(this.c,r,r,r,r,A.cb(r,r,B.n,r,r,r,r,r,r,r,r,r,r,r,r,r,r,!0,r,r,r,r,r,r,r,r),r,r),B.h,r,r,r,r,r,r,B.j3,r,r,r,r)],t.p),B.l,B.o,B.aE,B.r),B.h,r,r,new A.bb(p,r,r,q,r,r,r,B.E),r,r,r,r,B.j4,r,r,r)}} +A.E7.prototype={ +F(a){var s=null,r=A.hR()?B.eL:B.v,q=A.bq(20) +A.hR() +return A.aa(s,A.X(this.c,s,s,s,s,A.cb(s,s,B.n,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),s,s),B.h,s,s,new A.bb(r,s,s,q,s,s,s,B.E),s,s,s,B.a_W,B.a_R,s,s,s)}} +A.avm.prototype={} +A.IA.prototype={ +a0(){return new A.aeG()}, +JR(a){return this.d.$1(a)}} +A.aeG.prototype={ +aj(){var s=this,r=s.a +r.e.a=s +s.Zx(r.c) +s.aw()}, +F(a){var s=this.e +return s==null?this.a.JR(a):s}, +Zx(a){if(a!=null)a.a=this.d=new A.b1T(this)}, +m(){var s=this,r=s.d +s.a.toString +if(r==null)s.a.toString +s.ar()}} +A.b1T.prototype={ +$0(){A.Em(new A.b1S(this.a))}, +$S:0} +A.b1S.prototype={ +$0(){var s=this.a +if(s.c!=null)s.J(new A.b1R())}, +$S:0} +A.b1R.prototype={ +$0(){}, +$S:0} +A.aS3.prototype={} +A.KM.prototype={ +a0(){return new A.agY()}} +A.agY.prototype={ +F(a){var s,r,q,p=this,o=null,n={} +n.a=n.b=n.c=null +s=p.a +r=s.c +if(r===B.anM)n.c=s.d +else{q=s.d +if(r===B.anN)n.b=q +else n.a=q}return A.BY(B.d0,s.e,o,o,new A.b9p(n,p),new A.b9q(n,p),o,o,new A.b9r(n,p))}} +A.b9p.prototype={ +$1(a){var s=this.a,r=s.c +if(r!=null)r.$0() +if(s.c!=null)this.b.d=!0}, +$S:70} +A.b9q.prototype={ +$1(a){var s,r=this.b +if(!r.d){s=this.a.b +if(s!=null)s.$0()}if(this.a.b!=null)r.d=!0}, +$S:655} +A.b9r.prototype={ +$1(a){var s=this,r=s.a,q=r.a +if(q!=null)q.$0() +if(r.a==null&&!s.b.d)s.b.a.d.$0() +s.b.d=!1}, +$S:656} +A.a8F.prototype={ +dL(){A.Em(new A.aS8(this))}, +eT(a){if(!this.gMl())return +this.amZ(0) +this.amX()}} +A.aS8.prototype={ +$0(){return this.a.amY()}, +$S:0} +A.P8.prototype={ +a0(){return new A.alG()}} +A.alG.prototype={ +aj(){$.aw.cU$.push(this) +A.Em(new A.bfS(this)) +this.aw()}, +F(a){var s,r=null,q=this.d +this.a.toString +s=A.ok(new A.fi(new A.bfR(this),r),!0,r) +return A.aa(r,s,B.h,r,r,r,r,r,r,new A.al(0,0,0,q),r,r,r,r)}, +ya(){this.aon() +this.a2l()}, +m(){$.aw.lJ(this) +this.ar()}, +a2l(){A.Em(new A.bfQ(this))}} +A.bfS.prototype={ +$0(){var s,r=this.a +if(r.c==null)return +s=r.e +s=s==null?null:s.gag() +t.Qv.a(s) +if(s!=null){r.f=A.ct(s.bB(0,null),B.j) +r.r=s.gv(0)}r.a2l()}, +$S:0} +A.bfR.prototype={ +$1(a){var s=this.a +s.e=a +return s.a.d}, +$S:13} +A.bfQ.prototype={ +$0(){var s,r,q,p=this.a,o=p.c +if(o==null||p.f==null||p.r==null)return +o.toString +s=t.l +r=A.cr(o,null,s).w.a.b-(p.f.b+p.r.b) +o=p.c +o.toString +q=A.cr(o,null,s).w.f.d +if(r<0){p.d=q +p.J(new A.bfO()) +return}if(r-q>-30)return +p.d=q-r +p.J(new A.bfP())}, +$S:0} +A.bfO.prototype={ +$0(){}, +$S:0} +A.bfP.prototype={ +$0(){}, +$S:0} +A.anS.prototype={} +A.O9.prototype={ +a0(){return new A.akF(null,null)}} +A.akF.prototype={ +aj(){this.a77() +this.aw()}, +a77(){var s,r=this,q=null,p=r.a,o=p.w +if(B.b.p(p.z,B.OK))o=B.F +r.a.toString +p=r.d +if(p==null){r.d=A.c2(q,o,q,q,r) +p=A.c2(q,o,q,q,r) +r.e=p +s=r.d +p.e=s.e=o +s.cd(0) +r.e.cd(0)}else{p.e=o +p=r.e +p===$&&A.b() +p.e=o +p.sk(0,0) +r.e.cd(0)}A.Em(new A.bdR(r)) +r.a.d.a=r}, +b1(a){if(!a.c.tz(0,this.a.c))this.a77() +this.bb(a)}, +F(a){var s,r=null,q=this.a,p=q.ax,o=q.e,n=this.d +n.toString +s=q.as +return new A.be(new A.al(0,0,0,0),A.cq(B.a2,A.a([new A.KM(p,o,new A.KL(n,q.at,s,q.r,r),r),A.aa(q.f,this.asE(),B.h,r,r,r,r,r,r,r,r,r,r,r)],t.p),B.w,B.W,r),r)}, +asE(){var s,r,q,p,o=this.a,n=o.c,m=o.y,l=this.e +l===$&&A.b() +s=new A.Jg(l,n,null) +r=new A.Nn(l,n,null) +o=o.f +q=new A.O0(o,n,l,null) +if(m===B.nx)p=s +else if(m===B.anF)p=r +else if(m===B.anG)p=o.l(0,B.O)?s:q +else if(m===B.anH)p=o.l(0,B.O)?r:q +else p=s +return p}, +j_(a){return this.aSc(a)}, +aSc(a){var s=0,r=A.n(t.H),q,p=this,o,n,m,l,k +var $async$j_=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:if(p.d==null){s=1 +break}o=p.a +n=o.w +for(o=o.z,m=o.length,l=0;l")).gW(0))}r.n(0,b,c)}} +A.arr.prototype={ +$1(a){var s=this.b,r=this.c +s.a.C(0,r) +s.a1b(0,r,a) +this.a.a=a}, +$S:657} +A.a93.prototype={ +l(a,b){var s +if(b==null)return!1 +if(J.ah(b)!==A.K(this))return!1 +if(b instanceof A.a93)s=B.v.l(0,B.v) +else s=!1 +return s}, +gB(a){return A.a4(B.v,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)}, +j(a){return"SvgTheme(currentColor: "+B.v.j(0)+", fontSize: 14, xHeight: 7)"}} +A.m7.prototype={ +zc(a){return new A.cv(null,A.y(this).i("cv"))}, +Op(a){a.au(t.AG) +return B.Tv}, +aEf(a){var s=this.Op(a) +return this.zc(a).ak(new A.aTh(this,s),t.V4)}, +aWH(a){return $.bEp().b.cP(0,this.UW(a),new A.aTi(this,a))}, +UW(a){return new A.Ov(this.Op(a),this,this.b)}} +A.aTh.prototype={ +$1(a){var s=this.a +return A.bUi(new A.aTg(s,this.b),a,"Load Bytes",A.y(s).i("m7.T?"),t.V4)}, +$S(){return A.y(this.a).i("a2(m7.T?)")}} +A.aTg.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.afW(a1),b=t.N,a=A.ej(10,t.mf),a0=new A.ns(new A.a94(new A.an(4278190080),14,7),null,new A.ach(c,B.v1,!1,!1,!1,!1,!1).gav(0),!1,new A.ajB(A.w(b,t.Pg),A.w(b,t.R1),A.w(b,t.YN),A.w(b,t.lf)),a,A.bn(b),B.fA) +a0.y=a0.x=a0.w=!1 +a0.aH2() +c=a0.Q +c.toString +s=new A.aPc().O4(c,B.bJ) +if(a0.w)A.V(A.ae(d)) +if(a0.x)A.V(A.ae(d)) +if(a0.y)A.V(A.ae(d)) +c=t.S +b=A.w(t.qA,c) +a=A.w(t.Mr,c) +r=A.w(t.Qr,c) +q=A.w(t.aN,c) +p=A.w(t.iG,c) +o=A.w(t.WR,c) +n=A.a([],t.SV) +m=A.w(t.D3,c) +l=A.w(t.cv,c) +k=new A.ass(new A.awr(b,a,r,q,p,o,n,A.w(t.K,c),m,l)) +k.O4(s,null) +c=k.b +c===$&&A.b() +j=k.c +j===$&&A.b() +i=b.$ti.i("aR<1>") +i=A.a8(new A.aR(b,i),!0,i.i("B.E")) +b=a.$ti.i("aR<1>") +b=A.a8(new A.aR(a,b),!0,b.i("B.E")) +a=r.$ti.i("aR<1>") +a=A.a8(new A.aR(r,a),!0,a.i("B.E")) +r=o.$ti.i("aR<1>") +h=q.$ti.i("aR<1>") +g=p.$ti.i("aR<1>") +f=m.$ti.i("aR<1>") +e=l.$ti.i("aR<1>") +return A.eT(A.bSB(new A.aa3(c,j,i,b,A.a8(new A.aR(o,r),!0,r.i("B.E")),a,A.a8(new A.aR(q,h),!0,h.i("B.E")),A.a8(new A.aR(p,g),!0,g.i("B.E")),A.a8(new A.aR(m,f),!0,f.i("B.E")),A.a8(new A.aR(l,e),!0,e.i("B.E")),n),!1).buffer,0,null)}, +$S(){return A.y(this.a).i("d9(m7.T?)")}} +A.aTi.prototype={ +$0(){return this.a.aEf(this.b)}, +$S:658} +A.Ov.prototype={ +gB(a){return A.a4(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 +if(b==null)return!1 +s=!1 +if(b instanceof A.Ov)if(b.a.l(0,this.a))s=b.b.l(0,this.b) +return s}} +A.acU.prototype={ +gB(a){return A.a4(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 +if(b==null)return!1 +s=!1 +if(b instanceof A.acU)if(b.a===this.a)s=b.c===this.c +return s}, +j(a){return"VectorGraphicAsset("+this.a+")"}} +A.Ou.prototype={ +a78(a){var s=A.brZ(a) +return s}, +zc(a){var s=this.a78(a) +return s.iC(0,this.c)}, +afW(a){return B.a5.CV(0,A.dw(a.buffer,0,null),!0)}, +UW(a){var s=this +return new A.Ov(s.Op(a),new A.acU(s.c,s.d,s.a78(a)),s.b)}, +gB(a){var s=this +return A.a4(s.c,s.d,s.e,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.Ou)s=b.c===this.c +else s=!1 +return s}, +j(a){return"SvgAssetLoader("+this.c+")"}} +A.Ow.prototype={ +zc(a){return this.aZw(a)}, +aZw(a){var s=0,r=A.n(t.nc),q,p=this,o,n,m +var $async$zc=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:n=p.e +m=A.bpO() +n=m==null?new A.Af(A.a([],t.E5)):m +s=3 +return A.f(n.BM("GET",A.f1(p.c),p.d),$async$zc) +case 3:o=c +n.L(0) +q=o.w +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$zc,r)}, +afW(a){a.toString +return B.a5.CV(0,a,!0)}, +gB(a){var s=this +return A.a4(s.c,s.d,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,B.a)}, +l(a,b){var s +if(b==null)return!1 +if(b instanceof A.Ow)s=b.c===this.c +else s=!1 +return s}, +j(a){return"SvgNetworkLoader("+this.c+")"}} +A.aTc.prototype={} +A.Ox.prototype={ +F(a){var s=this,r=null +return new A.Pq(s.r,s.c,s.d,s.e,B.O,!1,r,!1,B.w,s.w,s.at,r,s.ax,r,B.ali,!0,r)}} +A.Pr.prototype={ +a0(){var s=t.bp +return new A.amm(A.a([],s),A.a([],s),A.a([],t.PF),A.a([],t.s))}, +aXU(a){return this.c.$1(a)}, +Xq(a){return this.d.$1(a)}, +gt(a){return this.f}} +A.amm.prototype={ +aj(){var s,r,q,p,o=this,n=null,m=o.d +B.b.V(m) +s=o.e +B.b.V(s) +for(r=o.r,q=o.f,p=0;p0){r.J(new A.bgp(r,a)) +s=r.c +s.toString +A.Bn(s).Ey(A.kK(!0,null,!0,!0,null,null,!1)) +s=r.c +s.toString +A.Bn(s).Ey(r.d[r.w])}}, +at5(){var s,r,q,p,o=null,n=A.a([],t.p) +for(s=0;r=this.a,s0)q.a.f[r-1].tD(0,B.apu) +q.a.SV(r)}if(s.gz0().l(0,B.cB))q.a.SV(q.b) +else if(s.gz0().l(0,B.cC))q.a.a5T(q.b)}}, +$S:153} +A.bgn.prototype={ +$1(a){var s,r,q,p,o,n=this.a,m=n.w,l=n.a +if(m+1===l.f&&a.length!==0)l.Xq(!1) +else l.Xq(!0) +if(a.length===0){n.SV(this.b) +return}s=this.b +m=n.f +r=a +while(!0){if(!(r.length!==0&&s1&&q>p.Q)for(;B.e.an(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.Rm(r) +p.a3n(s)}, +a3n(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.e.j(a) +if(s.k4===0){r=B.c.fk(p,r,"0") +q.a+=r}else s.aL1(r,p)}, +a3e(a){var s +if(B.d.go4(a)&&!B.d.go4(Math.abs(a)))throw A.d(A.bl("Internal error: expected positive number, got "+A.c(a),null)) +s=B.d.dv(a) +return s}, +aJc(a){if(a==1/0||a==-1/0)return $.bko() +else return B.d.aa(a)}, +Rm(a2){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0=this,a1={} +a1.a=null +a1.b=a0.at +a1.c=a0.ay +s=a2==1/0||a2==-1/0 +if(s){a1.a=B.d.aA(a2) +r=0 +q=0 +p=0}else{o=a0.a3e(a2) +a1.a=o +n=a2-o +a1.d=n +if(B.d.aA(n)!==0){a1.a=a2 +a1.d=0}new A.aKG(a1,a0,a2).$0() +p=A.ds(Math.pow(10,a1.b)) +m=p*a0.dx +l=B.d.aA(a0.aJc(a1.d*m)) +if(l>=m){a1.a=a1.a+1 +l-=m}else if(A.buH(l)>A.buH(B.e.aA(a0.a3e(a1.d*m))))a1.d=l/m +q=B.e.im(l,p) +r=B.e.an(l,p)}o=a1.a +if(typeof o=="number"&&o>$.bko()){k=B.d.dZ(Math.log(o)/$.bqn())-$.bC6() +j=B.d.aa(Math.pow(10,k)) +if(j===0)j=Math.pow(10,k) +i=B.c.ap("0",B.e.aA(k)) +o=B.d.aA(o/j)}else i="" +h=q===0?"":B.e.j(q) +g=a0.aED(o) +f=g+(g.length===0?h:B.c.fk(h,a0.dy,"0"))+i +e=f.length +if(a1.b>0)d=a1.c>0||r>0 +else d=!1 +if(e!==0||a0.Q>0){f=B.c.ap("0",a0.Q-e)+f +e=f.length +for(s=a0.k2,c=a0.k4,b=0;bn))break +o=s}for(n=this.k2,r=this.k4,q=1;qs&&B.e.an(q-s,r.e)===1)r.k2.a+=r.fy.c}, +j(a){return"NumberFormat("+this.fx+", "+A.c(this.fr)+")"}} +A.aKF.prototype={ +$1(a){return this.a}, +$S:665} +A.aKE.prototype={ +$1(a){return a.Q}, +$S:666} +A.aKG.prototype={ +$0(){}, +$S:0} +A.a55.prototype={} +A.aKC.prototype={ +aGV(){var s,r,q,p,o,n,m,l,k,j=this,i=j.f +i.b=j.Il() +s=j.aH3() +i.d=j.Il() +r=j.b +if(r.MW()===";"){++r.b +i.a=j.Il() +for(q=s.length,p=r.a,o=p.length,n=0;n=o.a.length)return!1 +s=o.MW() +if(s==="'"){r=o.XH(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.xw) +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.xw) +o.e=1000 +a.a+=p.a.x +break +default:a.a+=s}return!0}, +aH3(){var s,r,q,p,o,n=this,m=new A.cD(""),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.aZa(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.bL('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}, +aZa(a){var s,r,q,p,o,n=this,m=null,l=n.b,k=l.MW() +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.bL('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.bL('Multiple decimal separators in pattern "'+l.j(0)+'"',m,m)) +n.x=n.y+n.z+n.Q +break +case"E":a.a+=k +s=n.f +if(s.ax)throw A.d(A.bL('Multiple exponential symbols in pattern "'+l.j(0)+'"',m,m)) +s.ax=!0 +s.f=0;++l.b +if(l.MW()==="+"){r=l.b_1(0) +a.a+=r +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.bL('Malformed exponential pattern "'+l.j(0)+'"',m,m)) +return!1 +default:return!1}a.a+=k;++l.b +return!0}} +A.aSZ.prototype={ +b_1(a){var s=this.XH(1);++this.b +return s}, +XH(a){var s=this.a,r=this.b +return B.c.R(s,r,Math.min(r+a,s.length))}, +MW(){return this.XH(1)}, +j(a){return this.a+" at "+this.b}} +A.Eg.prototype={ +h(a,b){return A.Gn(b)==="en_US"?this.b:this.a8M()}, +N(a,b){if(A.Gn(b)!=="en_US")this.a8M() +return!0}, +a8M(){throw A.d(new A.a1S("Locale data has not been initialized, call "+this.a+"."))}} +A.a1S.prototype={ +j(a){return"LocaleDataException: "+this.a}, +$ibm:1} +A.bkc.prototype={ +$1(a){return A.bpk(A.bAS(a))}, +$S:63} +A.bkd.prototype={ +$1(a){return A.bpk(A.Gn(a))}, +$S:63} +A.bke.prototype={ +$1(a){return"fallback"}, +$S:63} +A.n9.prototype={ +D(){return"PluralCase."+this.b}} +A.A8.prototype={ +D(){return"AppDialogType."+this.b}} +A.atx.prototype={ +$1(a){var s=null,r=A.bq(12),q=this.a,p=A.q(q).ax,o=p.p4 +p=o==null?p.k2:o +return A.Iy(s,p,new A.be(B.a_N,A.b2(A.a([B.fZ,B.aK,A.X(this.b,s,s,s,s,A.q(q).p2.x,s,s)],t.p),B.l,B.o,B.aE,B.r),s),s,s,s,s,new A.cu(r,B.x),s)}, +$S:668} +A.aty.prototype={ +$1(a){$.ZE=!1}, +$S:2} +A.atz.prototype={ +$0(){A.blf(this.a)}, +$S:4} +A.A9.prototype={ +D(){return"AppEnvironment."+this.b}, +gcq(a){switch(this.a){case 0:return"dev" +case 1:return"staging" +case 2:return"pre" +case 3:return"prod"}}} +A.Wp.prototype={ +D(){return"AppLanguage."+this.b}, +gcq(a){switch(this.a){case 0:return"en" +case 1:return"zh"}}} +A.Ws.prototype={ +D(){return"AppRegion."+this.b}, +gcq(a){switch(this.a){case 0:return"CN" +case 1:return"US"}}} +A.apH.prototype={ +j(a){var s=this +return"AppConfig{environment: "+s.a.j(0)+", locale: "+s.b.j(0)+", region: "+s.Q.j(0)+", language: "+s.as.j(0)+", baseUrl: "+s.c+", appName: Lava, apiKey: mall-app, apiSecret: 123456}"}} +A.apM.prototype={ +$1(a){if(a.gda(0)===this.a.gda(0))return!0 +return!1}, +$S:116} +A.apO.prototype={ +$1(a){return a.gda(0)===this.a.gda(0)}, +$S:116} +A.apP.prototype={ +$0(){return new A.dX(B.bS.gcq(0),null,B.c_.gcq(0))}, +$S:156} +A.apQ.prototype={ +$1(a){return a.gda(0)===this.a.gda(0)}, +$S:116} +A.apR.prototype={ +$0(){return new A.dX(B.bS.gcq(0),null,B.c_.gcq(0))}, +$S:156} +A.Wt.prototype={ +aDy(){this.d=A.bXo(new A.apU(this))}, +uE(a){this.a_Y(a) +this.a0M(a)}, +a0M(a){var s,r,q,p,o,n,m,l,k,j=this,i=null,h="\u5e94\u7528\u72b6\u6001\u53d8\u5316\uff1a"+j.az_(a) +A.u(h,i) +if(j.a===a){A.u(h+"\uff0c\u72b6\u6001\u672a\u53d8\u5316\uff0c\u8df3\u8fc7",i) +return}j.a=a +h=j.c +if((h.c&4)===0)h.q(0,a) +for(h=A.cN(j.b,!0,t.LV),p=h.length,o=0;oq +return!1}, +mX(a,b){return this.aPk(a,b)}, +aPk(a1,a2){var s=0,r=A.n(t.H),q=this,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0 +var $async$mX=A.j(function(a3,a4){if(a3===1)return A.k(a4,r) +while(true)switch(s){case 0:b=q.a +b.toString +p=A.wB(b) +b=t.xY +o=b.i("B.E") +n=A.a8(new A.ey(p.aeV(),b),!0,o) +m=n.length +s=m!==0?2:4 +break +case 2:l=0,k=0 +case 5:if(!(k524288e3?10:11 +break +case 10:b=A.a8(new A.ey(p.aeV(),b),!0,o),o=b.length,m=t.nA,j=null,i=0,k=0 +case 12:if(!(k") +new A.zI(new A.aEM(b),new A.aG(s,r),r.i("zI")).bL(new A.aEN(c))}} +A.aEM.prototype={ +$1(a){return J.e(J.i(a,"name"),this.a)}, +$S:112} +A.aEN.prototype={ +$1(a){this.a.$1(J.i(a,"data"))}, +$S:110} +A.aKf.prototype={ +Gc(){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k +var $async$Gc=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:q=3 +o.a=null +s=6 +return A.f(B.agT.le("stopDiscovery",null,!1,t.z),$async$Gc) +case 6:q=1 +s=5 +break +case 3:q=2 +k=p +l=A.v(k) +if(l instanceof A.xZ){n=l +A.dJ("\u505c\u6b62\u8bbe\u5907\u53d1\u73b0\u5931\u8d25: "+A.c(n.b))}else throw k +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$Gc,r)}} +A.H5.prototype={ +kY(a,b){var s=a.b +s===$&&A.b() +s.n(0,"accept","application/json") +a.sLC(0,s) +this.a_i(a,b)}} +A.Hs.prototype={ +kY(a,b){return this.aYo(a,b)}, +aYo(a,b){var s=0,r=A.n(t.H),q,p,o,n +var $async$kY=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:n=a.b +n===$&&A.b() +q=n.h(0,"cache_control") +if(q==null)q="" +s=q==="onlyCache"?2:4 +break +case 2:p=a.gl0().j(0) +s=5 +return A.f($.bkx().qc(p),$async$kY) +case 5:o=d +n=t.z +if(o!=null)b.Z(A.Da(o,null,null,!1,B.jo,A.N5(null,null,null,null,null,null,null,null,null,null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null),200,"Cache fetch successful",n)) +else b.Z(A.Da(o,null,null,!1,B.jo,A.N5(null,null,null,null,null,null,null,null,null,null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null),200,"Failed to retrieve network cache data",n)) +s=3 +break +case 4:s=q==="cacheFirstOrNetworkPut"?6:8 +break +case 6:p=a.gl0().j(0) +s=9 +return A.f($.bkx().qc(p),$async$kY) +case 9:o=d +if(o!=null)b.Z(A.Da(o,null,null,!1,B.jo,A.N5(null,null,null,null,null,null,null,null,null,null,null,null,null,"",null,null,null,null,null,null,null,null,null,null,null),200,"Cache fetch successful",t.z)) +else{n.n(0,"cache_key",p) +a.sLC(0,n) +b.iE(0,a)}s=7 +break +case 8:if(q==="onlyNetworkPutCache"){n.n(0,"cache_key",a.gl0().j(0)) +a.sLC(0,n) +b.iE(0,a)}else b.iE(0,a) +case 7:case 3:return A.l(null,r)}}) +return A.m($async$kY,r)}, +od(a,b){var s,r,q,p,o,n,m="cache_control" +if(a.c===200){s=a.b.b +s===$&&A.b() +if(s.h(0,m)!=null){r=s.h(0,"cache_key") +q=s.h(0,m) +p=s.h(0,"cache_expiration") +o=a.a +A.u("the response carries cache handling logic with it cacheControl ==== > "+A.c(q)+" cacheKey ==== > "+A.c(r)+" cacheExpiration ==== > "+A.c(p),null) +n=p!=null?A.dA(0,A.c0(p,null),0):null +s=$.bkx() +s.N8(r==null?"unknow":r,o,n)}}this.P8(a,b)}, +kX(a,b,c){return this.aY6(0,b,c)}, +aY6(a,b,c){var s=0,r=A.n(t.z),q=this +var $async$kX=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:q.a_h(0,b,c) +return A.l(null,r)}}) +return A.m($async$kX,r)}} +A.LF.prototype={ +kY(a,b){var s,r,q,p,o=null,n="is_show_loading_dialog",m="network_debounce",l=$.LE +if(J.mv((l==null?$.LE=A.bn3():l).a.a,B.iP)){b.b_h(A.tp("No internet connection",o,a,o,o,B.pr)) +return}l=a.gl0() +s=l.ge8(l) +l=a.a +l===$&&A.b() +r=a.cy +q=a.b +q===$&&A.b() +p=q.h(0,n)!=null&&J.e(q.h(0,n),"true") +if(q.h(0,m)!=null&&J.e(q.h(0,m),"true"))this.RN(s,l,this.a3r(l,a),r,a,b,p) +else{if(p)A.mx(o) +this.a_i(a,b)}}, +a3r(a,b){var s,r,q,p,o,n,m,l,k,j,i,h +if(a==="GET"){s=b.yE$ +s===$&&A.b() +return s}else if(a==="POST"&&b.CW instanceof A.wZ){r=t.yO.a(b.CW) +q=A.w(t.N,t.z) +for(s=r.d,p=s.length,o=0;o=1e5&&s<=199999 +return r}catch(q){return!0}}} +A.aw_.prototype={ +aqI(a){A.u("DiscoverClient instance created",null) +this.b=A.bKK(new A.aw0()) +this.a=a}, +f_(a){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$f_=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:try{q.r=!0 +o=q.w +if(o!=null)o.S(0) +q.e=!1 +if($.bCe())q.c.Gc() +else{o=q.b +o===$&&A.b() +o.f_(0)}}catch(m){p=A.v(m) +A.as().$1("Fail: DiscoverClient stop: "+J.p(p))}return A.l(null,r)}}) +return A.m($async$f_,r)}} +A.aw0.prototype={ +$5$reuseAddress$reusePort$ttl(a,b,c,d,e){A.u(">>>>MDnsClient rawDatagramSocketFactory: host: "+A.c(a)+", port: "+b+" set 1884, reuseAddress: "+c+" set true , reusePort:"+d+" isAndroid set false",null) +return A.bnr(a,1884,c,$.bCd()?!1:d,e)}, +$2(a,b){return this.$5$reuseAddress$reusePort$ttl(a,b,!0,!1,255)}, +$C:"$5$reuseAddress$reusePort$ttl", +$R:2, +$D(){return{reuseAddress:!0,reusePort:!1,ttl:255}}, +$S:186} +A.yn.prototype={ +D(){return"SHttpMethod."+this.b}} +A.a7y.prototype={ +a0c(a,b){var s,r,q,p,o=this +$.bvA.n(0,"Authorization",$.f2.eg().z.length!==0?"Bearer "+$.f2.eg().z:"") +s=b?null:$.bvA +if(b)r="" +else r=a.length!==0?a:$.f2.eg().c +$.f2.eg() +q=A.dA(0,0,3e4) +$.f2.eg() +p=A.dA(0,0,3e4) +$.f2.eg() +p=o.a=A.bly(A.bkT(r,q,s,p,A.dA(0,0,3e4))) +if(!b){p.Wd$=new A.aqc(A.bUP()) +s=p.Dm$ +s.q(s,new A.LF()) +s=o.a.Dm$ +s.q(s,new A.H5()) +s=o.a.Dm$ +s.q(s,new A.On()) +s=o.a.Dm$ +s.q(s,new A.Hs())}}, +zl(a,b,c,d,e,f,g,h){return this.b_M(a,b,c,d,e,f,g,h)}, +oo(a,b,c){var s=null +return this.zl(a,s,b,c,s,s,s,s)}, +b_L(a,b,c,d,e){return this.zl(a,b,c,null,d,null,null,e)}, +agD(a,b,c,d,e,f,g){return this.zl(a,b,c,d,e,f,null,g)}, +b_K(a){var s=null +return this.zl(a,s,B.jP,s,s,s,s,s)}, +b_M(a,b,c,d,e,f,g,h){var s=0,r=A.n(t.F9),q,p=this +var $async$zl=A.j(function(i,j){if(i===1)return A.k(j,r) +while(true)switch(s){case 0:q=p.He(a,c,b,d,f,e,null,null,h,g,null,!1) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$zl,r)}, +He(a,b,c,d,e,f,g,h,i,j,k,l){return this.axa(a,b,c,d,e,f,g,h,i,j,k,!1)}, +axa(a,b,c,d,e,f,a0,a1,a2,a3,a4,a5){var s=0,r=A.n(t.F9),q,p=2,o,n=this,m,l,k,j,i,h,g +var $async$He=A.j(function(a6,a7){if(a6===1){o=a7 +s=p}while(true)switch(s){case 0:p=4 +m=null +l=new A.aPD(n,b,d,e,f,a,c,a0,a1,a2,a3,a4) +s=7 +return A.f(l.$0(),$async$He) +case 7:m=a7 +j=n.aBC(m) +q=j +s=1 +break +p=2 +s=6 +break +case 4:p=3 +g=o +j=A.v(g) +if(j instanceof A.hy){k=j +j=A.c(k) +h=J.p(k.d) +$.ac().a3("HttpClient - DioException\uff1a"+j+" \u5176\u4ed6\u9519\u8befError:"+h) +q=n.aDb(k) +s=1 +break}else throw g +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$He,r)}, +Rn(a,b,c,d,e,f,g,h,i,j,k){return this.ay3(a,b,c,d,e,f,g,h,i,j,k)}, +ay3(a,b,c,d,e,f,g,h,i,j,k){var s=0,r=A.n(t.k8),q,p=this,o,n +var $async$Rn=A.j(function(l,m){if(l===1)return A.k(m,r) +while(true)switch(s){case 0:if(a===B.cJ){q=p.u2(k,f,b,d,c,j,i,e) +s=1 +break}else if(a===B.Nv){q=p.Iq(0,k,f,b,d,c,i,e) +s=1 +break}else if(a===B.Nx){o=p.a +o===$&&A.b() +q=o.b_E(0,e,null,null,A.avs("DELETE",A.CC(f,null)),b,t.z) +s=1 +break}else if(a===B.Nw){n=b==null?null:J.i(b,"savePath") +if(n==null)n="" +if(J.e(n,""))A.V(A.bl("savePath is null",null)) +if(B.c.bF(e,".enc")){q=p.H7(k,j,n,e) +s=1 +break}else{q=p.QM(k,j,n,e) +s=1 +break}}else{o=p.a +o===$&&A.b() +q=o.YH(0,e,k,j,A.CC(f,null),b,t.z) +s=1 +break}case 1:return A.l(q,r)}}) +return A.m($async$Rn,r)}, +u2(a,b,c,d,e,f,g,h){return this.aHI(a,b,c,d,e,f,g,h)}, +aHI(a,b,a0,a1,a2,a3,a4,a5){var s=0,r=A.n(t.k8),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c +var $async$u2=A.j(function(a6,a7){if(a6===1)return A.k(a7,r) +while(true)switch(s){case 0:d=b==null?null:b.h(0,"Content-Type") +if(d==null)d="application/json" +s=d==="multipart/form-data"?3:5 +break +case 3:o=A.w(t.N,t.z) +n=a0==null +s=!n||a2!=null||a1!=null?6:7 +break +case 6:if(!n)o.G(0,a0) +s=a2!=null&&a2.a!==0&&!new A.aR(a2,A.y(a2).i("aR<1>")).ga_(0)?8:9 +break +case 8:n=a2.gdG(a2),n=n.gav(n),m=t.D +case 10:if(!n.u()){s=11 +break}l=n.gI(n) +k=l.a +j=l.b +s=j.length!==0&&B.c.ba(j,"assets/images/")&&A.bw2(j)?12:14 +break +case 12:s=15 +return A.f(A.bma(j,1000,1000,80),$async$u2) +case 15:i=a7 +if(i!=null){l=o.h(0,"filename") +o.n(0,k,A.aKa(i,l==null?k:l))}s=13 +break +case 14:s=16 +return A.f(A.lK(j,m),$async$u2) +case 16:h=a7 +l=o.h(0,"filename") +o.n(0,k,A.aKa(h,l==null?B.b.gY(j.split("/")):l)) +case 13:s=10 +break +case 11:case 9:s=a1!=null&&a1.a!==0&&!new A.aR(a1,A.y(a1).i("aR<1>")).ga_(0)?17:18 +break +case 17:n=a1.gdG(a1),n=n.gav(n) +case 19:if(!n.u()){s=20 +break}m=n.gI(n) +k=m.a +j=m.b +s=!B.G.ga_(j)&&A.bw2(k)?21:23 +break +case 21:s=24 +return A.f(A.bmb(j,1000,1000,80),$async$u2) +case 24:i=a7 +m=o.h(0,"filename") +o.n(0,k,A.aKa(i,m==null?k:m)) +s=22 +break +case 23:m=o.h(0,"filename") +o.n(0,k,A.aKa(j,m==null?k:m)) +case 22:s=19 +break +case 20:case 18:case 7:g=new A.wZ(A.a([],t.Iq),A.a([],t.cS)) +g.axS(o,B.lT) +f=g +s=4 +break +case 5:s=d==="application/octet-stream"?25:27 +break +case 25:e=new A.adV($.Gw()) +s=a2!=null&&a2.a!==0&&!new A.aR(a2,A.y(a2).i("aR<1>")).ga_(0)?28:29 +break +case 28:n=a2.gdG(a2),n=n.gav(n),m=t.D +case 30:if(!n.u()){s=31 +break}c=e +s=32 +return A.f(A.lK(n.gI(n).b,m),$async$u2) +case 32:c.q(0,a7) +s=30 +break +case 31:case 29:if(a1!=null&&a1.a!==0&&!new A.aR(a1,A.y(a1).i("aR<1>")).ga_(0))for(n=a1.gdG(a1),n=n.gav(n);n.u();)e.q(0,n.gI(n).b) +f=e.EG() +s=26 +break +case 27:f=a0 +case 26:case 4:n=p.a +n===$&&A.b() +q=n.zk(0,a5,a,f,a3,a4,A.avs("POST",A.CC(b,null)),null,t.z) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$u2,r)}, +Iq(a,b,c,d,e,f,g,h){return this.aI1(0,b,c,d,e,f,g,h)}, +aI1(a,b,c,d,e,f,g,h){var s=0,r=A.n(t.k8),q,p=this,o,n,m,l,k,j,i +var $async$Iq=A.j(function(a0,a1){if(a0===1)return A.k(a1,r) +while(true)switch(s){case 0:j=c==null?null:c.h(0,"Content-Type") +s=(j==null?"application/octet-stream":j)==="application/octet-stream"?3:5 +break +case 3:o=new A.adV($.Gw()) +s=f!=null&&f.a!==0?6:7 +break +case 6:n=f.gdG(f),n=n.gav(n),m=t.D +case 8:if(!n.u()){s=9 +break}i=o +s=10 +return A.f(A.lK(n.gI(n).b,m),$async$Iq) +case 10:i.q(0,a1) +s=8 +break +case 9:case 7:if(e!=null&&e.a!==0)for(n=e.gdG(e),n=n.gav(n);n.u();)o.q(0,n.gI(n).b) +l=o.EG() +s=4 +break +case 5:k=A.w(t.N,t.z) +if(d!=null)k.G(0,d) +l=k +case 4:n=p.a +n===$&&A.b() +q=n.ag3(0,h,b,l,g,A.CC(c,null),t.z) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Iq,r)}, +QM(a,b,c,d){return this.aws(a,b,c,d)}, +aws(a,b,c,d){var s=0,r=A.n(t.k8),q,p=this,o +var $async$QM=A.j(function(e,f){if(e===1)return A.k(f,r) +while(true)switch(s){case 0:o=p.a +o===$&&A.b() +q=o.acM(0,d,c,a,b) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$QM,r)}, +H7(a,b,c,d){return this.awt(a,b,c,d)}, +awt(a,b,c,d){var s=0,r=A.n(t.k8),q=1,p,o=this,n,m,l,k,j,i +var $async$H7=A.j(function(e,f){if(e===1){p=f +s=q}while(true)switch(s){case 0:q=3 +A.u("[HttpClient] \u5f00\u59cb\u4e0b\u8f7d\u52a0\u5bc6\u6587\u4ef6: "+d,null) +n=c+".tmp" +k=o.a +k===$&&A.b() +s=6 +return A.f(k.acM(0,d,n,a,b),$async$H7) +case 6:m=f +q=1 +s=5 +break +case 3:q=2 +i=p +l=A.v(i) +k=A.c(l) +$.ac().a3("[HttpClient] \u4e0b\u8f7d\u52a0\u5bc6\u6587\u4ef6\u5931\u8d25: "+k) +throw i +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$H7,r)}, +aBC(a){var s,r,q,p,o,n,m,l,k,j,i,h=null,g="code",f="page",e=a.c,d=e==null,c=d?200:e,b=c>=200 +if(!(b&&c<300))r=c>=400&&c<499 +else r=!0 +r=r&&t.f.b(a.a) +q=a.a +if(r){s=q +if(J.cO(s,g)){p=J.i(s,g) +if(p===200||p===0)try{d=s +b=J.a0(d) +r=b.h(d,"isSuccess") +if(r==null)r=J.e(b.h(d,g),200)||J.e(b.h(d,g),0) +o=b.h(d,"msg") +if(o==null)o="" +n=b.h(d,g) +if(n==null)n=200 +m=b.h(d,"data") +if(b.h(d,f)!=null){d=b.h(d,f) +b=J.a0(d) +l=b.h(d,"total") +if(l==null)l=0 +k=b.h(d,"pageSize") +if(k==null)k=10 +d=b.h(d,f) +d=new A.aMa(l,k,d==null?1:d)}else d=h +return new A.i1(r,o,n,m,d)}catch(j){d=A.ae("Json parsing exception") +throw A.d(d)}else{d=J.i(s,"msg") +if(d==null)d="" +b=a.a +return new A.i1(!1,d,p,b==null?a.e:b,h)}}else{d=b&&c<300 +b=a.d +if(b==null)b="" +r=a.a +return new A.i1(d,b,c,r==null?a.e:r,h)}}else{i=q==null||J.e(q,"")?a.e:q +if(!(b&&c<300))b=c>=400&&c<499 +else b=!0 +if(d){$.f2.eg() +d=-60001}else d=e +r=a.d +return new A.i1(b,r==null?"":r,d,i,h)}}, +aDb(a){var s,r,q=null,p="Network connection error, please check the network connection",o=-60001,n=a.b +if(n!=null){s=n.a +s=A.c(s) +r=n.e.j(0) +A.u("\u7f51\u7edc\u8bf7\u6c42\u9519\u8bef\uff0cdata\uff1a"+s+", header:"+r,q) +s=n.c +if(s==null){$.f2.eg() +r=o}else r=s +n=n.d +return new A.i1(!1,"errorCode\uff1a"+A.c(s)+" errorMessage\uff1a"+A.c(n),r,q,q)}else{n=a.c +if(n===B.wz||n===B.wA||n===B.wB)return new A.i1(!1,"Network connection timeout, please try again later",408,q,q) +else if(n===B.ld)return new A.i1(!1,"The network request has been canceled",499,q,q) +else if(n===B.Zr)return new A.i1(!1,"The network connection certificate is invalid",500,q,q) +else if(n===B.wC)return new A.i1(!1,"Network response error, please try again later",501,q,q) +else if(n===B.pr)return new A.i1(!1,p,502,q,q) +else if(n===B.wD){n=a.d +if(n!=null){s=J.dd(n) +if(B.c.p(s.j(n),"HandshakeException"))return new A.i1(!1,p,502,q,q) +else{$.f2.eg() +return new A.i1(!1,s.j(n),o,q,q)}}else{$.f2.eg() +return new A.i1(!1,"An unknown error occurred on the network request",o,q,q)}}else{$.f2.eg() +n=a.f +return new A.i1(!1,n==null?"unkown error":n,o,q,q)}}}} +A.aPD.prototype={ +$0(){var s=0,r=A.n(t.k8),q,p=this +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:q=p.a.Rn(p.b,p.c,p.d,p.e,p.f,p.r,p.w,p.x,p.y,p.z,p.Q) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$0,r)}, +$S:674} +A.i1.prototype={ +j(a){var s=this +return"Message : "+s.b+" \n Code: "+s.c+" \n Data : "+A.c(s.d)+" \n Page : "+A.c(s.e)}, +ao(){var s,r=this,q=A.w(t.N,t.z) +q.n(0,"isSuccess",r.a) +q.n(0,"msg",r.b) +q.n(0,"code",r.c) +q.n(0,"data",r.d) +s=r.e +if(s!=null)q.n(0,"page",s.ao()) +return q}} +A.aMa.prototype={ +ao(){var s=A.w(t.N,t.z) +s.n(0,"total",this.a) +s.n(0,"pageSize",this.b) +s.n(0,"page",this.c) +return s}} +A.qm.prototype={ +D(){return"MqttClientStatus."+this.b}} +A.Lj.prototype={ +D(){return"MqttClientSubscribeStatus."+this.b}} +A.aJ2.prototype={ +aIS(a){var s,r,q,p,o,n=this +if(a.length===0||n.d!=="+")return +A.u("MqttClient _resetTopic topic: "+a,null) +if(B.c.p(a,"/")&&a.split("/").length>1){s=a.split("/")[0] +if(s===n.at)return +if(s!==n.d)n.d=s}r=n.d +if(r!=="+"){q=n.at +p=n.b +o=J.a0(p) +if(q!=null){r=o.h(p,"authRequest") +r.toString +n.y=q+A.c(r) +r=n.at +q=J.i(n.c,"authResponse") +q.toString +n.z=A.c(r)+A.c(q)}else{q=o.h(p,"request") +q.toString +n.y=r+A.c(q) +q=n.d +r=J.i(n.c,"response") +r.toString +n.z=q+A.c(r)}r=n.d +q=J.i(n.c,"status") +q.toString +n.Q=r+A.c(q) +q=n.d +r=J.i(n.c,"notification") +r.toString +n.as=q+A.c(r) +r=t.N +n.CW.q(0,B.a7.lx(A.C(["jsonrpc","2.0","method","updateTopic","params",A.C(["sn",n.d],r,r)],r,t.K),null)) +n.J7() +n.xc()}}, +eb(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$eb=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +k=n.ch +k.cj(B.ah_) +j=n.a +j===$&&A.b() +s=7 +return A.f(j.eb(),$async$eb) +case 7:m=n.a.gnQ().a===B.c7 +s=m?8:9 +break +case 8:s=10 +return A.f(n.xc(),$async$eb) +case 10:s=n.fr===B.qH?11:13 +break +case 11:if(k.a!==B.hN)k.cj(B.hN) +A.u("MqttClient onConnected, isconnected: true, this.hashCode: "+A.at(n),null) +q=!0 +s=1 +break +s=12 +break +case 13:A.u("MqttClient onConnected, subscribe failed, retry, this.hashCode: "+A.at(n),null) +n.fx=!0 +n.a.H3(!1) +n.cy=!1 +n.dy=null +A.u("MqttClient onConnected, subscribe failed, retry, wait 3 seconds, this.hashCode: "+A.at(n),null) +s=14 +return A.f(A.eC(B.hc,null,t.z),$async$eb) +case 14:s=15 +return A.f(n.a.eb(),$async$eb) +case 15:s=16 +return A.f(n.xc(),$async$eb) +case 16:if(n.fr===B.qH){if(k.a!==B.hN)k.cj(B.hN) +A.u("MqttClient onConnected, subscribe failed, retry, isconnected: true, this.hashCode: "+A.at(n),null) +q=!0 +s=1 +break}else{A.u("MqttClient onConnected, subscribe failed, retry, isconnected: false, this.hashCode: "+A.at(n),null) +n.fx=!1 +n.a.H3(!1) +n.cy=!1 +n.dy=null +q=!1 +s=1 +break}case 12:case 9:k=A.c(m) +j=A.at(n) +$.ac().a3("MqttClient connect end, isConnected: "+k+", this.hashCode: "+j) +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +h=o +l=A.v(h) +k=J.p(l) +$.ac().a3("MqttClient Error connecting to the broker: "+k) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$eb,r)}, +jq(a){var s=0,r=A.n(t.y),q,p=this,o,n,m,l,k +var $async$jq=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:try{n=p.ch +m=n.a +if(m===B.qG||m===B.Jb){A.u(u.y+A.at(p)+", sn: "+p.d+", already disconnected or disconnecting: ("+n.a.j(0)+"), skip",null) +q=!0 +s=1 +break}A.u(u.y+A.at(p)+", sn: "+p.d,null) +n.cj(B.Jb) +n=p.a +n===$&&A.b() +n.H3(!1) +p.J7() +p.cy=!1 +p.dy=null +q=!0 +s=1 +break}catch(j){o=A.v(j) +n=J.p(o) +m=A.at(p) +k=p.d +$.ac().a3("MqttClient Error disconnecting from the broker: "+n+", this.hashCode: "+m+", sn: "+k) +throw j}case 1:return A.l(q,r)}}) +return A.m($async$jq,r)}, +ak9(a,b,c,d){var s,r,q,p,o,n=this,m=n.a +m===$&&A.b() +m=m.gnQ().a +A.u("MqttClient _client.connectionStatus.state: "+m.j(0),null) +m=n.ch.a +if(m!==B.hN){A.u("MqttClient status: "+m.j(0),null) +return}q=new A.aJe() +q.a=new A.df(new Uint8Array(0),0) +s=q +m=B.a7.lx(b,null) +s.a.G(0,B.ao.b4(m)) +s.toString +try{if(c!=null)m=n.f!=null +else m=!1 +p=n.a +if(m){m=n.f +m.toString +p.afX(m,B.cG,s.a)}else{m=n.y +m===$&&A.b() +p.afX(m,B.cG,s.a)}}catch(o){r=A.v(o) +m=J.p(r) +$.ac().a3("MqttClient send error: "+m) +throw o}}, +fm(a,b){return this.ak9(0,b,null,null)}, +xc(){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e +var $async$xc=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +k=m.a +k===$&&A.b() +k=k.gnQ().a +A.u("MqttClient _subscribeTopicsOnConnected, mqtt\u72b6\u6001\uff1a"+k.j(0)+", \u8ba2\u9605\u72b6\u6001\uff1a"+m.fr.j(0)+", hashcode: "+A.at(m),null) +if(m.cy){k=m.a.gnQ().a +A.u("MqttClient \u6b63\u5728\u8ba2\u9605\u4e2d\uff0c\u8df3\u8fc7\u91cd\u590d\u8ba2\u9605, mqtt\u72b6\u6001\uff1a"+k.j(0)+", \u8ba2\u9605\u72b6\u6001\uff1a"+m.fr.j(0)+", hashcode: "+A.at(m),null) +n=[1] +s=5 +break}m.fr=B.Jc +m.cy=!0 +m.dx=0 +k=A.a([],t.s) +m.cx=k +j=m.z +j===$&&A.b() +k.push(j) +j=m.cx +k=m.Q +k===$&&A.b() +j.push(k) +k=m.cx +j=m.as +j===$&&A.b() +k.push(j) +k=m.w +if(k!=null)m.cx.push(k) +s=7 +return A.f(m.xw(),$async$xc) +case 7:n.push(6) +s=5 +break +case 4:p=3 +e=o +l=A.v(e) +k=A.at(m) +j=m.d +h=J.p(l) +g=m.a +g===$&&A.b() +g=g.gnQ() +g=g.a +g=g.j(0) +f=A.at(m) +$.ac().a3("MqttClient Subscribe _subscribeTopicsOnConnected, this.hashCode: "+k+", sn:"+j+", error: "+h+", mqtt\u72b6\u6001\uff1a"+g+", hashcode: "+f) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.u("MqttClientSubscribe _subscribeTopicsOnConnected end",null) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$xc,r)}, +J7(){var s=0,r=A.n(t.H),q=this,p,o,n,m +var $async$J7=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:try{A.u("MqttClient _unSubscribeTopicsOnConnected",null) +o=q.z +o===$&&A.b() +if(o.length!==0){n=q.a +n===$&&A.b() +n.x.NV(o)}o=q.Q +o===$&&A.b() +if(o.length!==0){n=q.a +n===$&&A.b() +n.x.NV(o)}o=q.as +o===$&&A.b() +if(o.length!==0){n=q.a +n===$&&A.b() +n.x.NV(o)}o=q.w +if(o!=null){n=q.a +n===$&&A.b() +n.x.NV(o)}}catch(l){p=A.v(l) +o=J.p(p) +$.ac().a3("MqttClient _unSubscribeTopicsOnConnected error: "+o)}return A.l(null,r)}}) +return A.m($async$J7,r)}, +xw(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$xw=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:f=n.dx +e=n.cx +if(f>=e.length){n.cy=!1 +n.fr=B.qH +n.aKj() +f=n.a +f===$&&A.b() +f=f.gnQ().a +A.u("MqttClient Subscribe \u6240\u6709\u4e3b\u9898\u8ba2\u9605\u5b8c\u6210, mqtt\u72b6\u6001\uff1a"+f.j(0)+", \u8ba2\u9605\u72b6\u6001\uff1a"+n.fr.j(0)+", hashcode: "+A.at(n),null) +s=1 +break}m=e[f] +f=A.c(m) +e=n.dx +j=n.cx.length +i=n.a +i===$&&A.b() +i=i.gnQ().a +A.u("MqttClient Subscribe \u5f00\u59cb\u8ba2\u9605\u4e3b\u9898: "+f+" ("+(e+1)+"/"+j+"), mqtt\u72b6\u6001\uff1a"+i.j(0)+"\uff0c hashcode: "+A.at(n),null) +n.dy=new A.aq(new A.a_($.ab,t.tr),t.VY) +f=n.a +e=m +if(f.gnQ().a!==B.c7){j=f.r +if(j==null)j=null +else j=j.cy.a +A.V(A.buo(j))}f=f.x +h=f.aMf(e) +if((h==null?f.av6(e,B.cG):h)==null){f=A.c(m) +$.ac().a3("MqttClient Subscribe \u8ba2\u9605\u8bf7\u6c42\u53d1\u9001\u5931\u8d25: "+f) +n.fr=B.Jd +n.dy.bv(0,!1)}else A.u("MqttClient Subscribe \u8ba2\u9605\u8bf7\u6c42\u5df2\u53d1\u9001: "+A.c(m),null) +p=4 +s=7 +return A.f(n.dy.a.t2(0,B.hc,new A.aJ4(m)),$async$xw) +case 7:l=b +s=l?8:10 +break +case 8:A.u("MqttClient Subscribe \u4e3b\u9898\u8ba2\u9605\u6210\u529f: "+A.c(m),null);++n.dx +s=11 +return A.f(n.xw(),$async$xw) +case 11:s=9 +break +case 10:f=A.c(m) +$.ac().a3("MqttClient Subscribe \u4e3b\u9898\u8ba2\u9605\u5931\u8d25: "+f) +n.a4H(m) +case 9:p=2 +s=6 +break +case 4:p=3 +d=o +k=A.v(d) +f=A.c(m) +e=J.p(k) +$.ac().a3("MqttClient Subscribe \u8ba2\u9605\u8fc7\u7a0b\u4e2d\u53d1\u751f\u5f02\u5e38: "+f+", error: "+e) +n.a4H(m) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$xw,r)}, +a4H(a){$.ac().a3("MqttClient Subscribe \u8ba2\u9605\u5931\u8d25\uff0c\u7ec8\u6b62\u540e\u7eed\u8ba2\u9605: "+a) +this.fr=B.Jd +this.cy=!1 +this.dy=null}, +aKj(){var s=this.a +s===$&&A.b() +s=s.x.z +this.ay=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.aJ3(this))}} +A.aJ4.prototype={ +$0(){$.ac().a3("MqttClient Subscribe \u8ba2\u9605\u8d85\u65f6: "+this.a) +return!1}, +$S:46} +A.aJ3.prototype={ +$1(a){var s,r,q,p,o,n,m,l +if(a==null)return +s=this.a +r=s.ax +r.f0(0,a) +for(q=t.RN,p=s.CW;!r.ga_(0);){o=r.om() +n=J.a0(o) +s.aIS(n.h(o,0).a) +m=new A.cD("") +n=q.a(n.h(o,0).b).c +n===$&&A.b() +n=n.d +n.az(n,m.gb1g()) +n=m.a +l=(n.charCodeAt(0)==0?n:n).split(A.ek(3)) +if(l.length!==0)p.q(0,B.b.gY(l))}}, +$S:675} +A.tj.prototype={ +D(){return"ConnectivityStatus."+this.b}} +A.aKo.prototype={ +aEa(){var s=$.brE;(s==null?$.brE=new A.asH():s).gMr().bL(new A.aKp(this))}} +A.aKp.prototype={ +$1(a){var s=A.a([],t.IZ),r=J.a0(a) +if(r.p(a,B.pc)){s.push(B.iP) +this.a.a.cj(s) +return}if(r.p(a,B.w4))s.push(B.pe) +if(r.p(a,B.pb))s.push(B.pd) +if(r.p(a,B.w5))s.push(B.w6) +this.a.a.cj(s)}, +$S:676} +A.re.prototype={ +D(){return"WcpStatus."+this.b}} +A.Px.prototype={ +D(){return"WcpClientConnectType."+this.b}} +A.aVY.prototype={ +y0(){var s=0,r=A.n(t.y),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,b2,b3,b4,b5,b6,b7 +var $async$y0=A.j(function(b8,b9){if(b8===1){o=b9 +s=p}while(true)switch(s){case 0:p=4 +A.u("WcpClient createAgentId start, this.hashCode: "+A.at(n),null) +m=A.bu("serverAddress") +a4=n.cx.h(0,"ca") +l=a4==null?"":a4 +a5=n.cx.h(0,"cert") +k=a5==null?"":a5 +a6=n.cx.h(0,"key") +j=a6==null?"":a6 +a7=n.cx.h(0,"clientId") +i=a7==null?"":a7 +a8=n.cx.h(0,"connected") +h=a8==null?!1:a8 +g=n.cx.h(0,"port") +f=n.cx.h(0,"ip") +a9=n.cx.h(0,"link_mode") +e=a9==null?"":a9 +b0=n.cx.h(0,"sn") +d=b0==null?"":b0 +b1=n.cx.h(0,"userid") +c=b1==null?"":b1 +b2=n.cx.h(0,"nickname") +b=b2==null?"":b2 +b3=n.cx.h(0,"id") +a=b3==null?"":b3 +if(J.aM(l)!==0&&J.aM(k)!==0&&J.aM(j)!==0){m.b="mqtts://"+A.c(f)+":"+A.c(g) +n.b=B.ib}else{m.b="mqtt://"+A.c(f)+":"+A.c(g) +n.b=B.tR}b4=n.a +b4===$&&A.b() +b4=b4.r +A.u(" WcpClient createAgentId pendingConnectionData.keys: "+A.tM(new A.aR(b4,A.y(b4).i("aR<1>")),"(",")"),null) +a0=n.a.r.h(0,i) +A.u(" WcpClient createAgentId, connected: "+A.c(h)+", _endPoint['connected']:"+A.c(n.cx.h(0,"connected"))+"}, pendingData['connected']:"+A.c(J.i(a0,"connected")),null) +if(a0!=null&&a0.a!==0||h){A.dE(" WcpClient createAgentId, tempConnectEndPointData: "+A.c(n.cy.h(0,"connected"))+", _endPoint: "+A.c(n.cx.h(0,"connected"))+", pendingData: "+A.c(J.i(a0,"connected"))) +if((J.e(J.i(a0,"connected"),!0)||h)&&J.e(J.i(a0,"sn"),d)&&J.bkG(m.b2(),"mqtts")&&J.e(J.i(a0,"clientId"),i)&&J.e(J.i(a0,"link_mode"),e)){A.dE(" WcpClient createAgentId mqttsConnected, pendingConnectionData: "+A.co(n.a.r)) +n.d="mock-"+B.e.j(Date.now()) +n.b=B.e0 +A.u("WcpClient createAgentId mqttsConnected, _connectType: "+B.e0.j(0)+", _agentId: "+n.d+", clientId: "+n.f,null) +q=!0 +s=1 +break}}b4=n.a +b5=A.C(["keepAlivePeriod",30,"server_address",m.b2(),"clientId",i,"clientid",i,"ca",l,"cert",k,"key",j,"clean_session",!1,"link_mode",e,"sn",d,"userid",c,"nickname",b,"id",a],t.N,t.z) +s=7 +return A.f(b4.Kk(n.b===B.ib,b5),$async$y0) +case 7:a1=b9 +A.u("WcpClient createAgentId result: "+J.p(a1)+", result['id'].runtimeType: "+J.ah(J.i(a1,"id")).j(0),null) +n.d=J.p(J.i(a1,"id")) +a2=J.i(a1,"type") +if(J.e(a2,"mqtt"))n.b=B.tR +else if(J.e(a2,"mqtts"))n.b=B.ib +A.u("WcpClient createAgentId, this.hashCode: "+A.at(n)+", _connectType: "+n.b.j(0)+", _agentId: "+n.d+", clientId: "+n.f,null) +q=!0 +s=1 +break +p=2 +s=6 +break +case 4:p=3 +b7=o +a3=A.v(b7) +b4=A.at(n) +b5=J.p(a3) +$.ac().a3("WcpClient, this.hashCode: "+b4+", Error setting agent id: "+b5) +throw b7 +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$y0,r)}, +eb(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$eb=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +A.u("WcpClient connect, this.hashCode: "+A.at(n)+", connectType: "+n.b.j(0)+" , clientId: "+n.f+", agentId: "+n.d,null) +if(n.d.length===0&&n.b!==B.e0){j=A.at(n) +$.ac().a3("WcpClient Error connecting to the broker: AgentId is empty, this.hashCode: "+j) +j=A.ae("AgentId is empty, please call setAgentId first") +throw A.d(j)}j=n.ch +j.cj(B.axs) +i=n.a +i===$&&A.b() +h=n.d +g=n.b +f=t.z +g=A.C(["id",h,"connected",g===B.e0],t.N,f) +s=7 +return A.f(i.Mn(n.b===B.ib,g),$async$eb) +case 7:m=b +A.u("WcpClient connect result: "+J.p(m),null) +l=n.a.f.b==="connected" +if(j.a!==B.fH)if(l)j.cj(B.fH) +A.u("WcpClient connect result: "+A.c(l),null) +s=l?8:9 +break +case 8:n.aFy() +n.arU() +j=n.aLj() +s=10 +return A.f(t.L0.b(j)?j:A.en(j,f),$async$eb) +case 10:s=11 +return A.f(n.IJ(),$async$eb) +case 11:A.u("WcpClient connect end, this.hashCode: "+A.at(n)+", isConnected: "+A.c(l),null) +case 9:j=l?"\u2705":"\u274c" +A.u("WcpClient connect end, "+j+", this.hashCode: "+A.at(n)+", isConnected: "+A.c(l)+", _connectType: "+n.b.j(0)+", _agentId: "+n.d+", _sn: "+n.c,null) +q=l +s=1 +break +p=2 +s=6 +break +case 4:p=3 +d=o +k=A.v(d) +j=J.p(k) +i=A.at(n) +$.ac().a3("WcpClient \u274c Error connecting to the broker: "+j+", this.hashCode: "+i) +n.a6V() +i=n.a +i===$&&A.b() +i.Yt(n.f,!1) +throw d +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$eb,r)}, +IJ(){var s=0,r=A.n(t.H),q=1,p,o=[],n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5 +var $async$IJ=A.j(function(a6,a7){if(a6===1){p=a7 +s=q}while(true)switch(s){case 0:q=3 +k=n.b +s=k===B.ib?6:8 +break +case 6:A.u("WcpClient _setEngine start, _connectType: "+k.j(0)+", _agentId: "+n.d+", _sn: "+n.c+", _accessCode: "+A.c(n.ax)+"}",null) +k=n.a +k===$&&A.b() +j=n.d +i=n.cx.h(0,"ip") +h=n.cx.h(0,"port") +g=n.c +f=n.ax +if(f==null)f="" +e=n.cx.h(0,"ca") +d=n.cx.h(0,"cert") +c=n.cx.h(0,"key") +b=n.cx.h(0,"clientId") +a=n.cx.h(0,"clientId") +a0=n.cx.h(0,"link_mode") +if(a0==null)a0="" +a1=n.cx.h(0,"id") +if(a1==null)a1="" +a2=n.cx.h(0,"userid") +if(a2==null)a2="" +a3=n.cx.h(0,"nickname") +j=A.C(["engine_id",j,"ip",i,"port",h,"sn",g,"code",f,"ca",e,"cert",d,"key",c,"clientId",b,"clientid",a,"link_mode",a0,"id",a1,"userid",a2,"nickname",a3==null?"":a3,"connected",!0,"need_reload",!0],t.N,t.z) +s=9 +return A.f(k.Mq(n.b===B.ib,j),$async$IJ) +case 9:m=a7 +n.e=m +if(m){n.e=!0 +n.b=B.e0}A.u("WcpClient connect, this.hashCode: "+A.at(n)+", setEngineResult: "+J.p(m),null) +s=7 +break +case 8:if(k===B.e0){n.e=!0 +A.u("WcpClient connect setEngineResult mqttsConnected, ignore",null)}else A.u("WcpClient connect setEngineResult not mqtts, ignore",null) +case 7:o.push(5) +s=4 +break +case 3:q=2 +a5=p +l=A.v(a5) +k=A.at(n) +j=J.p(l) +$.ac().a3("WcpClient connect setEngineResult, this.hashCode: "+k+", error: "+j) +j=A.ae("-1: setEngine error: "+J.p(l)) +throw A.d(j) +o.push(5) +s=4 +break +case 2:o=[1] +case 4:q=1 +A.u("WcpClient connect setEngineResult end, this.hashCode: "+A.at(n),null) +s=o.pop() +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$IJ,r)}, +jZ(a,b){return this.aRR(0,b)}, +jq(a){return this.jZ(0,!0)}, +aRR(a,b){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$jZ=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:A.u("WcpClient disconnect start, this.hashCode: "+A.at(n)+", _agentId: "+n.d+", _isSetEngine: "+n.e+", _connectType: "+n.b.j(0)+", needReload: "+b,null) +p=4 +k=n.ch +k.cj(B.axt) +m=!1 +j=n.d +i=j.length===0||n.e||n.b===B.e0 +h=n.a +s=i?7:9 +break +case 7:h===$&&A.b() +s=10 +return A.f(h.KJ(0,n.f,n.c,b),$async$jZ) +case 10:m=d +s=8 +break +case 9:h===$&&A.b() +s=11 +return A.f(h.Mo(A.C(["id",j],t.N,t.z)),$async$jZ) +case 11:m=d +case 8:if(m){k.cj(B.tU) +n.a6V() +k=n.a +k===$&&A.b() +k.Yt(n.f,!1) +k=m?"\u2705":"\u274c" +A.u("WcpClient disconnect end, "+k+", this.hashCode: "+A.at(n)+", _agentId: "+n.d+", _isSetEngine: "+n.e+", _connectType: "+n.b.j(0)+", result: "+A.c(m),null) +k=m +q=k +s=1 +break}q=!1 +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +l=A.v(f) +if(B.c.p(J.p(l),"-3")||B.c.p(J.p(l),"-1")){k=J.p(l) +$.ac().a3("WcpClient disconnect \u2705 error: "+k) +q=!0 +s=1 +break}k=J.p(l) +$.ac().a3("WcpClient disconnect \u274c error: "+k) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$jZ,r)}, +fm(a,b){var s,r,q,p,o,n,m,l,k=this,j=", this.hashCode: ",i="params",h=k.e +if(!h&&k.b!==B.e0){A.u("WcpClient send data, _isSetEngine: "+h+j+A.at(k),null) +k.vy(b) +return}h=k.ch.a +if(h!==B.fH){A.dE(u.gr+h.j(0)+j+A.at(k)) +return}try{if(b.h(0,"id")==null||J.e(b.h(0,"id"),""))A.dE("WcpClient send error: id is null or empty, this.hashCode: "+A.at(k)+",data: "+A.co(b)) +n=b.h(0,"method") +s=n==null?"":n +r=J.p(b.h(0,"id")) +if(b.h(0,i)==null)m=A.w(t.N,t.z) +else m=t.a.b(b.h(0,i))?b.h(0,i):A.w(t.N,t.z) +q=m +p=new A.by(A.C(["seqid",r,"method",s],t.N,t.z),q) +h=k.a +h===$&&A.b() +h.vy(p)}catch(l){o=A.v(l) +h=J.p(o) +$.ac().a3("WcpClient send error: "+h) +throw l}}, +pc(a){return this.aLk(a)}, +aLj(){return this.pc(!1)}, +aLk(a){var s=0,r=A.n(t.z),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d +var $async$pc=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:e=""+a +A.u("WcpClient _subscribeTopicsOnConnected start,this.hashCode: "+A.at(m)+", isRetry: "+e,null) +if(m.b===B.e0){A.u("WcpClient _subscribeTopicsOnConnected mqttsConnected, ignore subscribe, this.hashCode: "+A.at(m)+", isRetry: "+e,null) +s=1 +break}p=4 +k=m.a +k===$&&A.b() +j=m.d +i=m.as +h=t.N +g=t.z +s=7 +return A.f(k.vo(A.C(["id",j,"topic",i,"qos",1,"event_id",i],h,g)),$async$pc) +case 7:A.u(u.u+m.as+", subscribe success",null) +i=m.a +j=m.d +k=m.Q +s=8 +return A.f(i.vo(A.C(["id",j,"topic",k,"qos",1,"event_id",k],h,g)),$async$pc) +case 8:A.u(u.u+m.Q+", subscribe success",null) +k=m.a +j=m.d +i=m.at +s=9 +return A.f(k.vo(A.C(["id",j,"topic",i,"qos",1,"event_id",i],h,g)),$async$pc) +case 9:A.u(u.u+m.at+", subscribe success",null) +k=m.y +s=k!=null&&k!==m.c?10:11 +break +case 10:s=12 +return A.f(m.a.vo(A.C(["id",m.d,"topic",k,"qos",1,"event_id",k],h,g)),$async$pc) +case 12:A.u(u.u+A.c(m.y)+", subscribe success",null) +case 11:n.push(6) +s=5 +break +case 4:p=3 +d=o +l=A.v(d) +k=J.p(l) +j=m.db +i=$.ac() +i.a3(u.dV+k+", retryCount: "+j+", isRetry: "+e) +s=B.c.p(J.p(l),"-1")?13:15 +break +case 13:s=++m.db<2?16:18 +break +case 16:s=19 +return A.f(A.eC(B.wI,new A.aW0(m),t.P),$async$pc) +case 19:s=17 +break +case 18:i.a3(u.dV+J.p(l)+", retryCount: "+m.db+", isRetry: "+e) +throw d +case 17:s=14 +break +case 15:m.db=0 +throw d +case 14:n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.u("WcpClient _subscribeTopicsOnConnected end",null) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$pc,r)}, +arU(){var s,r,q,p,o=this +try{A.u("WcpClient _addClientUpdateStream start, this.hashCode: "+A.at(o),null) +r=o.a +r===$&&A.b() +r=r.d +o.ay=new A.aG(r,A.y(r).i("aG<1>")).bL(new A.aW_(o)) +A.u("WcpClient _addClientUpdateStream end",null)}catch(q){s=A.v(q) +r=J.p(s) +p=A.at(o) +$.ac().a3("WcpClient _addClientUpdateStream error: "+r+", this.hashCode: "+p)}}, +a6V(){A.u("WcpClient _removeClientUpdateStream start, this.hashCode: "+A.at(this),null) +var s=this.ay +if(s!=null)s.S(0) +A.u("WcpClient _removeClientUpdateStream end",null)}, +vy(a){return this.aZG(a)}, +aZG(a){var s=0,r=A.n(t.H),q=this,p,o,n,m,l,k +var $async$vy=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:A.u("WcpClient publishMessage start, this.hashCode: "+A.at(q)+", data: "+A.co(a),null) +m=q.ch.a +if(m!==B.fH){A.u(u.gr+m.j(0)+", this.hashCode: "+A.at(q),null) +throw A.d(A.ae("WcpClient not connected, please call connect first, this.hashCode: "+A.at(q)))}try{p=J.p(a.h(0,"id")) +A.u(u.P+A.at(q)+", seqid: "+A.c(p)+", data: "+A.co(a),null) +o=B.a7.lx(a,null) +m=q.a +m===$&&A.b() +m.Mp(A.C(["id",q.d,"topic",q.z,"qos",1,"payload",o],t.N,t.z),p).ak(new A.aW1(q),t.P).dc(new A.aW2(q))}catch(j){n=A.v(j) +m=A.at(q) +k=J.p(n) +$.ac().a3(u.P+m+", error: "+k) +throw j}return A.l(null,r)}}) +return A.m($async$vy,r)}, +aFy(){A.u("WcpClient _onConnected, this.hashCode: "+A.at(this),null) +var s=this.ch +if(s.a===B.fH)return +s.cj(B.fH) +A.u("WcpClient _onConnected, status: "+A.c(s.a)+", this.hashCode: "+A.at(this),null)}} +A.aW0.prototype={ +$0(){this.a.pc(!0)}, +$S:4} +A.aW_.prototype={ +$1(a){if(a==null)return +this.a.CW.q(0,a.ao())}, +$S:138} +A.aW1.prototype={ +$1(a){A.u(u.P+A.at(this.a)+", success: "+a,null)}, +$S:26} +A.aW2.prototype={ +$1(a){var s=u.P,r=this.a,q=A.at(r),p=J.dd(a),o=p.j(a) +$.ac().a3(s+q+", error: "+o) +throw A.d(A.ae(s+A.at(r)+", error: "+p.j(a)+"}"))}, +$S:82} +A.WV.prototype={ +cj(a){var s=this.b +if((s.c&4)===0){this.a=a +s.q(0,a)}}, +gk(a){return this.a}, +L(a){this.b.L(0)}} +A.mZ.prototype={ +xC(a,b){var s=this.a +if((s.c&4)===0)s.q(0,b)}, +jE(a){var s=this.a +if((s.c&4)===0){s.q(0,a) +s.L(0)}}, +L(a){var s=0,r=A.n(t.H),q=this,p +var $async$L=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=q.a +s=(p.c&4)===0?2:3 +break +case 2:s=4 +return A.f(p.L(0),$async$L) +case 4:case 3:return A.l(null,r)}}) +return A.m($async$L,r)}} +A.a87.prototype={ +aab(){var s=this,r=s.b +if(r5242880?4:6 +break +case 4:A.u("upload in chunks...",null) +h=B.d.dZ(n/5242880) +g=A.a([],t.H7) +i=p.x,f=0 +case 7:if(!(fn)d=n +c=o.buffer +b=new Uint8Array(c,e,d-e) +s=9 +return A.f(A.aVg(b),$async$EO) +case 9:a=a3 +a0=A.w(a1,k);++f +a0.n(0,"partNumber",f) +a0.n(0,"checkSum",a) +g.push(a0) +i.n(0,a,m) +s=7 +break +case 8:j.n(0,"uploadParts",g) +s=5 +break +case 6:A.u("directly upload...",null) +p.x.n(0,l,m) +case 5:q=p.y=j +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$EO,r)}, +Yi(a){return this.b0w(a)}, +b0w(a){var s=0,r=A.n(t.a),q,p=this,o,n,m +var $async$Yi=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:m=J.a0(a) +A.u("UploadConverter, transformerAWSUploadDirectlyParams, mapJson: url: "+A.c(m.h(a,"url"))+", method: "+A.c(m.h(a,"method")),null) +o=p.y +o===$&&A.b() +n=o.h(0,"checkSum") +o=p.r +if(o!=null)A.u(u.d2+o.length,null) +else{A.u(u.a+p.e,null) +$.ac().a3(u.fQ) +throw A.d(A.ae("unsupported file upload in web or wasm"))}q=A.C(["checkSum",n,"data",A.dw(A.eT(o.buffer,0,null).buffer,0,null),"url",m.h(a,"url"),"method",m.h(a,"method"),"contentType","application/octet-stream","deviceId",p.y.h(0,"deviceId")],t.N,t.z) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Yi,r)}, +ahf(a){var s,r=this,q="uploadParts",p="contentType",o="checkSum",n="deviceId",m="fileName",l=J.dI(a) +if(l.N(a,q)&&t.j.b(l.h(a,q))){s=A.f7(a,t.N,t.z) +l=r.y +l===$&&A.b() +s.n(0,p,l.h(0,p)) +s.n(0,o,r.y.h(0,o)) +s.n(0,n,r.y.h(0,n)) +s.n(0,m,r.y.h(0,m)) +return s}return A.w(t.N,t.z)}, +Nd(a){return this.b_3(a)}, +b_3(a){var s=0,r=A.n(t.D),q,p=this,o,n,m,l,k +var $async$Nd=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:k=p.r +if(k!=null)o=A.eT(k.buffer,0,null) +else{$.ac().a3("UploadConverter, readChunk, not support file upload in web or wasm, please use data stream") +throw A.d(A.ae("unsupported file upload in web or wasm"))}n=o.byteLength +m=a*5242880 +l=m+5242880 +if(l>n)l=n +q=A.dw(o.buffer,m,l-m) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Nd,r)}} +A.dy.prototype={ +j(a){var s=this +return"UploadTaskState(progress: "+A.c(s.a)+", result: "+A.c(s.b)+", isDone: "+s.c+", isError: "+s.d+", errorMessage: "+A.c(s.e)+", filePath: "+A.c(s.f)+", printStarted: "+s.r+", checksum: "+A.c(s.w)+")"}} +A.arD.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","camera.upload_timelapse_instance","params",A.C(["date_index",this.b,"type",this.c],s,s),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.arE.prototype={ +cS(a){return A.C(["jsonrpc","2.0","method","printer.print.cancel","id",this.a],t.N,t.z)}, +dP(a){this.a=a}} +A.asY.prototype={ +cS(a){var s=this +return A.C(["file",s.b,"fileBytes",s.c,"deviceId",s.e,"print","false","filename",s.f,"id",s.a],t.N,t.z)}, +dP(a){this.a=a}} +A.atL.prototype={ +cS(a){var s=this,r=t.N +return A.C(["jsonrpc","2.0","method","server.client_manager.request_pin_code","params",A.C(["userid",s.b,"nickname",s.c,"app_id",s.d],r,r),"id",s.a],r,t.z)}, +dP(a){this.a=a}} +A.atp.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","custom.file.filament.objects.get_mapping","params",A.C(["filename",this.b],s,t.T),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.ato.prototype={ +cS(a){return A.C(["jsonrpc","2.0","method",u.d4,"params",this.b,"id",this.a],t.N,t.z)}, +dP(a){this.a=a}} +A.ZD.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","server.client_manager.confirm_lan_status","params",A.C(["clientid",this.b],s,s),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.atP.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","machine.set_device_name","params",A.C(["name",this.a],s,s),"id",this.b],s,t.z)}, +dP(a){this.b=a}} +A.atQ.prototype={ +cS(a){var s=this,r=t.N +return A.C(["jsonrpc","2.0","method","server.client_manager.set_userinfo","params",A.C(["auther",A.C(["id",s.a,"nickname",s.b,"email",s.c],r,t.K)],r,t.nf),"id",s.d],r,t.z)}, +dP(a){this.d=a}} +A.atd.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","printer.control.led","params",A.C(["name","cavity_led","white",this.c],s,t.K),"id",this.b],s,t.z)}, +dP(a){this.b=a}} +A.atc.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","printer.control.bed_temp","params",A.C(["temp",this.a],s,t.S),"id",this.b],s,t.z)}, +dP(a){this.b=a}} +A.atg.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","printer.control.print_speed","params",A.C(["percentage",this.a],s,t.S),"id",this.b],s,t.z)}, +dP(a){this.b=a}} +A.ath.prototype={ +cS(a){var s=t.N,r=t.z,q=A.w(s,r) +q.n(0,"fan_speed",this.b) +return A.C(["jsonrpc","2.0","method","printer.control.purifier","params",q,"id",this.a],s,r)}, +dP(a){this.a=a}} +A.atf.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","printer.control.main_fan","params",A.C(["speed",this.a],s,t.S),"id",this.b],s,t.z)}, +dP(a){this.b=a}} +A.ate.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","printer.control.generic_fan","params",A.C(["name",this.a,"speed",this.b],s,t.K),"id",this.c],s,t.z)}, +dP(a){this.c=a}} +A.atr.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","server.files.thumbnails_base64","params",A.C(["path",this.b],s,s),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.ats.prototype={ +cS(a){var s=this,r=t.N +return A.C(["jsonrpc","2.0","method","server.files.list_page","params",A.C(["root",s.b,"page_number",s.c,"files_per_page",s.d],r,t.K),"id",s.a],r,t.z)}, +dP(a){this.a=a}} +A.atq.prototype={ +cS(a){return A.C(["jsonrpc","2.0","method","system.get_device_info","id",this.a],t.N,t.z)}, +dP(a){this.a=a}} +A.ZI.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","server.client_manager.request_lan_auth","params",A.C(["clientid",this.b,"app_id",this.c],s,s),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.az9.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","server.files.metadata","params",A.C(["filename",this.b],s,s),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.aAo.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","printer.gcode.script","params",A.C(["script",this.b],s,s),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.aBV.prototype={ +j(a){return A.co(this.cS(0))}} +A.aKI.prototype={ +cS(a){return A.C(["jsonrpc","2.0","method","printer.objects.list","id",this.a],t.N,t.z)}, +dP(a){this.a=a}} +A.aMq.prototype={ +cS(a){return A.C(["jsonrpc","2.0","method","printer.print.pause","id",this.a],t.N,t.z)}, +dP(a){this.a=a}} +A.CY.prototype={ +cS(a){var s=t.N,r=t.z,q=A.w(s,r) +B.b.az(this.b,new A.aNj(q)) +return A.C(["jsonrpc","2.0","method","printer.objects.query","params",A.C(["objects",q],s,t.a),"id",this.a],s,r)}, +dP(a){this.a=a}} +A.aNj.prototype={ +$1(a){var s,r=this,q=null +switch(a){case"print_stats":r.a.n(0,a,A.a(["filename","state","total_duration","print_duration","filament_used","message","info"],t.s)) +break +case"display_status":r.a.n(0,a,A.a(["progress","message"],t.s)) +break +case"webhooks":r.a.n(0,a,A.a(["state","state_message"],t.s)) +break +case"virtual_sdcard":r.a.n(0,a,A.a(["progress","file_position","is_active","file_size","file_path"],t.s)) +break +case"toolhead":r.a.n(0,a,q) +break +case"gcode_move":r.a.n(0,a,q) +break +case"print_task_config":r.a.n(0,a,q) +break +default:if(B.c.p(a,"extruder"))r.a.n(0,a,A.a(["temperature","target","power","can_extrude","pressure_advance","smooth_time","state"],t.s)) +else{s=r.a +if(a==="heater_bed")s.n(0,a,A.a(["temperature","target","power"],t.s)) +else s.n(0,a,q)}break}}, +$S:19} +A.aPn.prototype={ +cS(a){return A.C(["jsonrpc","2.0","method","printer.print.resume","id",this.a],t.N,t.z)}, +dP(a){this.a=a}} +A.aRg.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","camera.start_monitor","params",A.C(["domain",this.b,"interval",0],s,t.K),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.aRh.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","camera.stop_monitor","params",A.C(["domain",this.b],s,s),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.aRl.prototype={ +cS(a){var s=this,r=t.N,q=t.z +return A.C(["jsonrpc","2.0","method","server.files.pull","params",A.C(["type",s.b,"url",s.c,"auto_start",s.d],r,q),"id",s.a],r,q)}, +dP(a){this.a=a}} +A.aRk.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","server.files.metadata","params",A.C(["filename",this.b],s,s),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.aRm.prototype={ +cS(a){return A.C(["jsonrpc","2.0","method","server.files.roots","id",this.a],t.N,t.z)}, +dP(a){this.a=a}} +A.aRi.prototype={ +cS(a){return A.C(["jsonrpc","2.0","method","server.exception.query","id",this.a],t.N,t.z)}, +dP(a){this.a=a}} +A.aRj.prototype={ +cS(a){return A.C(["jsonrpc","2.0","method","server.files.get_status","id",this.a],t.N,t.z)}, +dP(a){this.a=a}} +A.aSr.prototype={ +cS(a){var s=t.N +return A.C(["jsonrpc","2.0","method","printer.print.start","params",A.C(["filename",this.b],s,s),"id",this.a],s,t.z)}, +dP(a){this.a=a}} +A.aT4.prototype={ +cS(a){var s=t.N,r=t.z,q=A.w(s,r) +B.b.az(this.b,new A.aT5(q)) +return A.C(["jsonrpc","2.0","method","printer.objects.subscribe","params",A.C(["objects",q],s,t.a),"id",this.a],s,r)}, +dP(a){this.a=a}} +A.aT5.prototype={ +$1(a){var s,r=this,q=null +switch(a){case"configfile":r.a.n(0,a,A.a(["settings"],t.s)) +break +case"print_stats":r.a.n(0,a,A.a(["filename","state","total_duration","print_duration","filament_used","message","info"],t.s)) +break +case"display_status":r.a.n(0,a,A.a(["progress","message"],t.s)) +break +case"webhooks":r.a.n(0,a,A.a(["state","state_message"],t.s)) +break +case"virtual_sdcard":r.a.n(0,a,A.a(["progress","file_position","is_active","file_size","file_path"],t.s)) +break +case"toolhead":r.a.n(0,a,q) +break +case"gcode_move":r.a.n(0,a,q) +break +case"print_task_config":r.a.n(0,a,q) +break +case"led cavity_led":r.a.n(0,a,A.a(["color_data"],t.s)) +break +case"fan":r.a.n(0,a,A.a(["speed","rpm"],t.s)) +break +case"motion_report":r.a.n(0,a,A.a(["live_position","live_velocity","live_extruder_velocity"],t.s)) +break +case"heater_bed":r.a.n(0,a,A.a(["temperature","target","power"],t.s)) +break +default:s=r.a +if(B.c.p(a,"extruder"))s.n(0,a,A.a(["temperature","target","power","can_extrude","pressure_advance","smooth_time","state"],t.s)) +else s.n(0,a,q) +break}}, +$S:19} +A.aRp.prototype={ +cS(a){var s=t.N,r=t.z,q=A.w(s,r) +B.b.az(this.b,new A.aRq(q)) +return A.C(["jsonrpc","2.0","method","printer.objects.setSubscribeFilter","params",A.C(["objects",q],s,t.a),"id",this.a],s,r)}, +dP(a){this.a=a}} +A.aRq.prototype={ +$1(a){var s,r=this,q=null +switch(a){case"configfile":r.a.n(0,a,A.a(["settings"],t.s)) +break +case"print_stats":r.a.n(0,a,A.a(["filename","state","total_duration","print_duration","filament_used","message","info"],t.s)) +break +case"display_status":r.a.n(0,a,A.a(["progress","message"],t.s)) +break +case"webhooks":r.a.n(0,a,A.a(["state","state_message"],t.s)) +break +case"virtual_sdcard":r.a.n(0,a,A.a(["progress","file_position","is_active","file_size","file_path"],t.s)) +break +case"toolhead":r.a.n(0,a,q) +break +case"gcode_move":r.a.n(0,a,q) +break +case"print_task_config":r.a.n(0,a,q) +break +case"led cavity_led":r.a.n(0,a,A.a(["color_data"],t.s)) +break +case"fan":r.a.n(0,a,A.a(["speed","rpm"],t.s)) +break +case"heater_bed":r.a.n(0,a,A.a(["temperature","target","power"],t.s)) +break +default:s=r.a +if(B.c.p(a,"extruder"))s.n(0,a,A.a(["temperature","target","power","can_extrude","pressure_advance","smooth_time","state"],t.s)) +else s.n(0,a,q) +break}}, +$S:19} +A.aTz.prototype={ +cS(a){return A.C(["jsonrpc","2.0","method","machine.system_info","id",this.a],t.N,t.z)}, +dP(a){this.a=a}} +A.aue.prototype={ +ja(a){throw A.d(A.cE(null))}, +eb(){throw A.d(A.cE(null))}, +dB(a,b,c){throw A.d(A.cE(null))}, +l4(a){return this.dB(a,3,3)}, +OC(a,b){return this.dB(a,b,3)}, +lv(a,b,c){throw A.d(A.cE(null))}, +jZ(a,b){return this.lv(0,!1,b)}, +t8(a){throw A.d(A.cE(null))}, +gYz(){return A.V(A.cE(null))}, +m(){}, +gMg(){return A.V(A.cE(null))}, +gGb(){return A.V(A.cE(null))}} +A.lE.prototype={ +D(){return"ConnectionStatus."+this.b}} +A.HJ.prototype={ +j(a){return"Exception: "+this.b+": "+this.a}, +ao(){return A.C(["code",this.b,"message",this.a],t.N,t.z)}, +$ibm:1} +A.aBW.prototype={ +gbi(a){return B.dd}} +A.xo.prototype={ +D(){return"LanModeAvailableState."+this.b}} +A.aDr.prototype={ +gMg(){var s=this.ax +return new A.aG(s,A.y(s).i("aG<1>"))}, +gGb(){var s=this.ay.b +return new A.aG(s,A.y(s).i("aG<1>"))}, +gJG(){var s=this.ch.b +return new A.aG(s,A.y(s).i("aG<1>"))}, +gbi(a){return this.aDZ()}, +gYz(){var s=this.d +s===$&&A.b() +s=s.a +return new A.aG(s,A.y(s).i("aG<1>"))}, +m(){var s,r,q,p=this +try{p.CW=!1 +p.ax.L(0) +p.ay.b.L(0) +p.ch.b.L(0) +r=p.Q +if(r!=null)r.S(0) +r=p.as +if(r!=null)r.S(0) +r=p.at +if(r!=null)r.S(0) +p.e.V(0) +r=p.d +r===$&&A.b() +r.L(0) +A.u("LanConnection dispose success",null)}catch(q){s=A.v(q) +r=J.p(s) +$.ac().a3("LanConnection dispose error: "+r)}}, +Be(a,b){var s="state",r="action",q=A.w(t.N,t.z) +switch(a.a){case 0:q.n(0,s,"notConnected") +q.n(0,r,"") +break +case 1:q.n(0,s,"modeNotAvailable") +q.n(0,r,"") +break +case 3:q.n(0,s,"notAuthorized") +q.n(0,r,"") +break +case 2:q.n(0,s,"authorizing") +q.n(0,r,"startCountDown") +break +case 4:q.n(0,s,"ready") +q.n(0,r,"") +break +default:break}if(b!=null)q.n(0,"message",b) +return q}, +aDY(a){return this.Be(a,null)}, +Bg(){var s=0,r=A.n(t.a),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2 +var $async$Bg=A.j(function(a3,a4){if(a3===1){o=a4 +s=p}while(true)switch(s){case 0:d=3 +c=3 +b=new A.aq(new A.a_($.ab,t.zs),t.BZ) +a=m.cy.aP() +a0=m.x +a1=new A.ZD($.d8().aP(),a0) +a1.a=a +l=c<1?1:c +p=3 +k=m.c.oB(a1) +m.e.n(0,J.p(a),b) +j=0 +case 6:if(!(j")).bL(new A.aDv(this))}, +aE0(){var s=this.f +s===$&&A.b() +s=s.ch.b +this.Q=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.aDt(this))}, +a5q(){var s=this.r +s===$&&A.b() +s=s.CW +this.as=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.aDu(this))}, +aE_(){var s=this.f +s===$&&A.b() +s=s.CW +this.at=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.aDs(this))}} +A.aDy.prototype={ +$1(a){return this.a.qE(a,B.e.j(this.b),0)}, +$S:38} +A.aDz.prototype={ +$1(a){return this.a.qE(a,B.e.j(this.b),this.c)}, +$S:38} +A.aDw.prototype={ +$1(a){return this.a.qE(a,B.e.j(this.b),0)}, +$S:38} +A.aDx.prototype={ +$1(a){return this.a.qE(a,B.e.j(this.b),this.c)}, +$S:38} +A.aDA.prototype={ +$1(a){return this.a.qE(a,B.e.j(this.b),0)}, +$S:38} +A.aDB.prototype={ +$1(a){return this.a.qE(a,B.e.j(this.b),this.c)}, +$S:38} +A.aDC.prototype={ +$2(a,b){var s,r=null,q=a/b +A.u("LanConnection, upload file count: "+a+", total: "+b+", progress: "+B.d.aA(q*100)+"%",r) +this.a.a=q +s=this.b.d +s===$&&A.b() +s.xC(0,new A.dy(q,r,!1,!1,r,r,!1,r))}, +$S:97} +A.aDv.prototype={ +$1(a){var s,r +switch(a.a){case 1:s=B.iO +break +case 3:s=B.av +break +case 2:s=B.l1 +break +case 0:r=this.a.cx +r.a=0 +r.b=1000*Date.now() +s=B.av +break +default:s=B.dd +break}r=this.a +if(r.CW)r.ay.cj(s)}, +$S:286} +A.aDt.prototype={ +$1(a){var s +switch(a.a){case 1:break +case 3:break +case 2:break +case 0:s=this.a.cy +s.a=0 +s.b=1000*Date.now() +break +default:break}}, +$S:286} +A.aDu.prototype={ +$1(a){var s,r,q,p,o,n,m +try{p=this.a +s=p.c.D0(a) +if(J.i(s,"id")!=null){r=J.p(J.i(s,"id")) +A.u(": "+p.CW+", mqttClientdata stream and deserialize the seqId: "+A.c(r)+",\nrespone: "+J.p(s)+"\n",null) +o=p.e +if(o.N(0,r)){o.h(0,r).bv(0,s) +o.C(0,r) +return}}if(p.CW)p.ax.q(0,s) +if(J.e(J.i(s,"method"),"notify_proc_stat_update"))return}catch(n){q=A.v(n) +p=this.a.CW +o=A.c(a) +m=A.c(q) +$.ac().a3("LanConnection, isResponding: "+p+", mqttclient.messages.listen:\n "+o+"\nerror: "+m+"\n")}}, +$S:16} +A.aDs.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h="app_id" +try{l=this.a +s=l.c.D0(a) +if(J.i(s,"method")!=null)if(J.e(J.i(s,"method"),"notify_lan_auth")){r=J.i(s,"params") +if(r!=null){q=J.i(J.i(r,0),"state") +p=J.i(J.i(r,0),"clientid") +o=J.i(J.i(r,0),h)!=null&&!J.e(J.i(J.i(r,0),h),"")?J.p(J.i(J.i(r,0),h)):l.y +if(q!=null&&p!=null&&J.GF(p).toLowerCase()===B.c.cw(l.x).toLowerCase()&&J.e(o,l.y))if(J.e(q,"approve")){l.TZ(J.i(r,0)) +l.ch.cj("ready") +l.z=B.lH}else if(J.e(q,"denied")){l.ch.cj("rejected") +l.z=B.hq}}}if(J.i(s,"id")!=null){n=J.p(J.i(s,"id")) +l=l.e +if(l.N(0,n)){l.h(0,n).bv(0,s) +l.C(0,n) +return}}}catch(k){m=A.v(k) +l=this.a.CW +j=A.c(a) +i=A.c(m) +$.ac().a3("LanConnection, isResponding: "+l+", mqttclient.messages.listen:\n "+j+"\nerror: "+i+"\n")}}, +$S:16} +A.z8.prototype={ +D(){return"WcpModeAvailableState."+this.b}} +A.aai.prototype={ +gMg(){var s=this.ay +return new A.aG(s,A.y(s).i("aG<1>"))}, +gGb(){var s=this.ch.b +return new A.aG(s,A.y(s).i("aG<1>"))}, +gbi(a){return this.az0()}, +gYz(){var s=this.d +s===$&&A.b() +s=s.a +return new A.aG(s,A.y(s).i("aG<1>"))}, +gJG(){if(this.x){var s=this.db.b +s=new A.aG(s,A.y(s).i("aG<1>"))}else s=A.V(A.cE(null)) +return s}, +m(){var s,r,q,p,o=this +A.u("WcpConnection, dispose, this.hashCode: "+A.at(o),null) +try{o.CW=!1 +o.ay.L(0) +o.ch.b.L(0) +o.db.b.L(0) +r=o.as +if(r!=null)r.S(0) +r=o.at +if(r!=null)r.S(0) +r=o.ax +if(r!=null)r.S(0) +o.e.V(0) +r=o.d +r===$&&A.b() +r.L(0) +A.u("WcpConnection, dispose success",null)}catch(q){s=A.v(q) +r=J.p(s) +p=A.at(o) +$.ac().a3("WcpConnection, dispose error: "+r+", this.hashCode: "+p)}}, +Aw(a,b){var s="state",r="action",q=A.w(t.N,t.z) +switch(a.a){case 0:q.n(0,s,"notConnected") +q.n(0,r,"") +break +case 1:q.n(0,s,"modeNotAvailable") +q.n(0,r,"") +break +case 3:q.n(0,s,"notAuthorized") +q.n(0,r,"") +break +case 2:q.n(0,s,"authorizing") +q.n(0,r,"startCountDown") +break +case 4:q.n(0,s,"ready") +q.n(0,r,"") +break +default:break}if(b!=null)q.n(0,"message",b) +return q}, +PS(a){return this.Aw(a,null)}, +BD(){var s=0,r=A.n(t.a),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2 +var $async$BD=A.j(function(a3,a4){if(a3===1){o=a4 +s=p}while(true)switch(s){case 0:A.u("WcpConnection, requestCheckAuth start",null) +if(!m.x)throw A.d(A.ae("WcpConnection, requestCheckAuth error, not lan")) +l=3 +k=3 +j=new A.aq(new A.a_($.ab,t.zs),t.BZ) +i=m.cy.aP() +d=m.y +h=new A.ZD($.d8().aP(),d) +h.a=i +g=k<1?1:k +p=3 +f=m.c.oB(h) +m.e.n(0,J.p(i),j) +e=0 +case 6:if(!(e")).bL(new A.aW8(this))}, +aFo(){var s=this.f +if(s==null)s=null +else{s=s.ch.b +s=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.aW6(this))}this.as=s}, +a5Z(){var s=this,r=s.r +r===$&&A.b() +A.u("WcpConnection, _observeClientMessages start: "+((A.at(r.CW)^892482866)>>>0),null) +r=s.r.CW +s.at=new A.aG(r,A.y(r).i("aG<1>")).bL(new A.aW7(s)) +A.u("WcpConnection, _observeClientMessages end: "+((A.at(s.r.CW)^892482866)>>>0),null)}, +aFn(){var s=this,r=null,q=s.f +A.u("WcpConnection, _observeAuthClientMessage start: "+A.c(q==null?r:(A.at(q.CW)^892482866)>>>0),r) +q=s.f +if(q==null)q=r +else{q=q.CW +q=new A.aG(q,A.y(q).i("aG<1>")).bL(new A.aW5(s))}s.ax=q +q=s.f +A.u("WcpConnection, _observeAuthClientMessage end: "+A.c(q==null?r:(A.at(q.CW)^892482866)>>>0),r)}} +A.aWb.prototype={ +$1(a){return this.a.qT(a,B.e.j(this.b),A.co(this.c.cS(0)),0)}, +$S:38} +A.aWc.prototype={ +$1(a){var s=this +return s.a.qT(a,B.e.j(s.b),A.co(s.c.cS(0)),s.d)}, +$S:38} +A.aW9.prototype={ +$1(a){return this.a.qT(a,B.e.j(this.b),A.co(this.c.cS(0)),0)}, +$S:38} +A.aWa.prototype={ +$1(a){var s=this +return s.a.qT(a,B.e.j(s.b),A.co(s.c.cS(0)),s.d)}, +$S:38} +A.aWf.prototype={ +$1(a){return this.a.qT(a,B.e.j(this.b),A.co(this.c.cS(0)),0)}, +$S:38} +A.aWg.prototype={ +$1(a){var s=this +return s.a.qT(a,B.e.j(s.b),A.co(s.c.cS(0)),s.d)}, +$S:38} +A.aWd.prototype={ +$2(a,b){var s,r=null,q=a/b +A.u("WcpConnection, upload file count: "+a+", total: "+b+", progress: "+B.d.aA(q*100)+"%",r) +this.a.a=q +s=this.b.d +s===$&&A.b() +s.xC(0,new A.dy(q,r,!1,!1,r,r,!1,r))}, +$S:97} +A.aW3.prototype={ +$1(a){var s,r,q,p,o,n,m=this,l=null,k="etag",j="partNumber",i=m.a;++i.a +s=a.e +r=a.c +q=A.c(r) +A.u("WcpConnection, \u4e0a\u4f20\u6210\u529f value.headers: "+s.j(0)+", response.statusCode: "+q+", response.data: "+A.c(a.a),l) +if(r===200){s=s.b +if(s.N(0,k)){s=s.h(0,k) +p=s==null?t.yp.a(s):s}else p=[] +s=J.a0(p) +o=s.ga_(p)?"":s.gW(p) +s=m.c +r=J.cF(s) +r.n(s,k,J.bqS(o,A.bB('^"+|"+$',!0,!1,!1),"")) +A.u("WcpConnection, \u4e0a\u4f20\u6210\u529f etag: "+A.c(r.h(s,k)),l)}else{s=a.j(0) +$.ac().a3("WcpConnection, \u4e0a\u4f20\u5931\u8d25: response.statusCode: "+q+":"+A.c(a.d)+", response.toString:"+s) +s=m.d +r=m.c +q=J.a0(r) +if(s.N(0,q.h(r,j))){n=q.h(r,j) +r=s.h(0,q.h(r,j)) +r.toString +s.n(0,n,r+1)}else s.n(0,q.h(r,j),1)}s=m.b.d +s===$&&A.b() +i=i.a/m.e +s.xC(0,new A.dy(i>1?1:i,l,!1,!1,l,l,!1,l))}, +$S:679} +A.aW4.prototype={ +$0(){this.a.agk(0)}, +$S:4} +A.aWe.prototype={ +$2(a,b){var s,r=null,q=a/b +A.u("LanConnection, upload file count: "+a+", total: "+b+", progress: "+B.d.aA(q*100)+"%",r) +this.a.a=q +s=this.b.d +s===$&&A.b() +s.xC(0,new A.dy(q,r,!1,!1,r,r,!1,r))}, +$S:97} +A.aW8.prototype={ +$1(a){var s,r,q=this.a +A.u("WcpConnection, isResponding: "+q.CW+", wcpClient.statusStream.stream.listen: "+a.j(0)+"\n",null) +switch(a.a){case 1:s=B.iO +break +case 3:s=B.av +break +case 2:s=B.l1 +break +case 0:r=q.cx +r.a=0 +r.b=1000*Date.now() +s=B.av +break +default:s=B.dd +break}if(q.CW){A.u("WcpConnection, isResponding: true, status: "+s.j(0)+"\n",null) +q.ch.cj(s)}}, +$S:287} +A.aW6.prototype={ +$1(a){var s +switch(a.a){case 1:break +case 3:break +case 2:break +case 0:s=this.a.cy +s.a=0 +s.b=1000*Date.now() +break +default:break}}, +$S:287} +A.aW7.prototype={ +$1(a){var s,r,q,p,o,n,m,l="error" +try{p=this.a +s=p.c.D0(a) +if(J.i(s,"id")!=null){r=J.p(J.i(s,"id")) +o=p.e +if(o.N(0,r)){if(J.i(s,l)!=null){p=o.h(0,r) +if(p!=null)p.dF(new A.HJ(J.i(J.i(s,l),"message"),J.i(J.i(s,l),"code"))) +o.C(0,r) +return}p=o.h(0,r) +if(p!=null)p.bv(0,s) +o.C(0,r) +return}}if(p.CW)p.ay.q(0,s) +if(J.e(J.i(s,"method"),"notify_proc_stat_update"))return}catch(n){q=A.v(n) +p=this.a.CW +o=A.c(a) +m=A.c(q) +$.ac().a3("OrcalConnection, isResponding: "+p+", wcpclient.messages.listen: "+o+"\nerror: "+m+"\n")}}, +$S:16} +A.aW5.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h="app_id" +try{l=this.a +s=l.c.D0(a) +if(J.i(s,"method")!=null)if(J.e(J.i(s,"method"),"notify_lan_auth")){r=J.i(s,"params") +if(r!=null){q=J.i(J.i(r,0),"state") +p=J.i(J.i(r,0),"clientid") +o=J.i(J.i(r,0),h)!=null&&!J.e(J.i(J.i(r,0),h),"")?J.p(J.i(J.i(r,0),h)):l.z +if(q!=null&&p!=null&&J.GF(p).toLowerCase()===B.c.cw(l.y).toLowerCase()&&J.e(o,l.z))if(J.e(q,"approve")){A.u("WcpConnection, _observeAuthClientMessage, notify_lan_auth approved: "+A.c(J.i(r,0)),null) +l.Q=B.kh +l.TY(J.i(r,0)) +l.db.cj("ready")}else if(J.e(q,"denied")){l.Q=B.fG +l.db.cj("rejected")}}}if(J.i(s,"id")!=null){n=J.p(J.i(s,"id")) +l=l.e +if(l.N(0,n)){l.h(0,n).bv(0,s) +l.C(0,n) +return}}}catch(k){m=A.v(k) +l=this.a.CW +j=A.c(a) +i=A.c(m) +$.ac().a3("WcpConnection, isResponding: "+l+", _wcpClient.messages.listen:\n "+j+"\nerror: "+i+"\n")}}, +$S:16} +A.Ik.prototype={} +A.Im.prototype={ +ao(){var s=this,r=s.w +r===$&&A.b() +return A.C(["endpoint",s.a,"port",s.b,"clientId",s.c,"cert",s.d,"key",s.e,"ca",r,"publishTopics",s.r,"subscribeTopics",s.f],t.N,t.z)}, +j(a){var s,r,q=this,p=q.e,o=p.length,n=o!==0&&o>20?B.c.R(p,0,20)+"...":"" +p=q.w +p===$&&A.b() +o=p.length +s=o!==0&&o>20?B.c.R(p,0,20)+"...":"" +p=q.d +o=p.length +r=o!==0&&o>20?B.c.R(p,0,20)+"...":"" +return"DeviceCertConfig(hashCode: "+A.at(q)+", endpoint: "+q.a+",port: "+q.b+", clientId: "+q.c+", cert: "+r+", key: "+n+", ca: "+s+", subscribeTopics: "+A.c(q.f)+", publishTopics: "+A.c(q.r)+")"}, +gce(){var s=this,r=!1 +if(s.a.length!==0)if(s.b>0)if(s.c.length!==0)if(s.d.length!==0)if(s.e.length!==0){r=s.w +r===$&&A.b() +r=r.length!==0}return r}} +A.mB.prototype={ +D(){return"DeviceConnectionStatus."+this.b}, +gk(a){switch(this.a){case 0:return 0 +case 1:return 1 +case 2:return 2 +case 3:return 3 +case 4:return 4 +case 5:return 5 +case 6:return 6 +case 7:return 10 +default:return 0}}, +gcq(a){var s=this +if(s===B.cw||s===B.iU||s===B.h7)return"wan" +else if(s===B.cY||s===B.iV||s===B.h8)return"lan" +return"unknown"}, +eO(){if(B.b.p(A.a([B.cY,B.iV,B.h8],t.KT),this))return!0 +return!1}, +eP(){if(B.b.p(A.a([B.cw,B.iU,B.h7],t.KT),this))return!0 +return!1}, +aWd(){if(this===B.h7||this===B.h8)return!0 +return!1}} +A.oH.prototype={ +D(){return"PrintState."+this.b}} +A.AB.prototype={ +D(){return"ConnectionChannel."+this.b}} +A.wy.prototype={ +ao(){return A.C(["message",this.b,"logLevel",this.a.gk(0),"timestamp",this.c.a],t.N,t.z)}} +A.ch.prototype={ +gkI(a){var s=this.b +if(s!=null&&s!=="")s.toString +else s=this.a +return s}, +z3(){var s,r=this,q=r.d +if(q.length===0)return q +s=A.bB("^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$|^::([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4}$|^[0-9a-fA-F]{1,4}::([0-9a-fA-F]{1,4}:){0,5}[0-9a-fA-F]{1,4}$",!0,!1,!1) +q=r.d +if(s.b.test(q))return"["+r.d+"]" +else{q=r.d +if(B.c.ba(q,"[")&&B.c.bF(q,"]")&&B.c.p(q,"::"))return q}return q}, +gnM(a){var s=this.id.c +if(s.length!==0)return s +return this.CW}, +akL(a){if(a.length!==0)return}, +OE(a){this.id=a +this.CW=a.c +A.u("setDeviceCertConfig: "+a.j(0),null)}, +Zz(a,b){A.u(u.p+A.c(this.b)+", setDeviceName: "+a+", reason: "+b+", this.hashCode: "+A.at(this),null) +this.b=a}, +Oj(){var s,r,q,p,o,n=this +n.ch="app-"+A.bs4(!1) +s=n.z3() +r=n.f +q=n.ch +p=n.at +if(p==null)p="12345678" +o=t.N +return A.C(["ip",s,"port",r,"clientId",q,"accessCode",p,"sn",n.w,"publishTopics",A.C(["request","/request","authRequest","/config/request","config",""],o,o),"subscribeTopics",A.C(["response","/response","authResponse","/config/response","status","/status","config","/config/notification","notification","/notification"],o,o),"link_mode","lan","isLocalDevice",n.k2],o,t.z)}, +YN(){var s,r +try{s=A.bNm(!1)}catch(r){return A.w(t.N,t.z)}}, +Fn(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e="12345678",d="clientId",c="clientid",b=t.N,a=t.z,a0=A.w(b,a) +try{r=f.z3() +q=f.f +p=f.at +if(p==null)p=e +o=f.id +n=o.w +n===$&&A.b() +m=f.gnM(0) +l=f.w +k=f.e +j=f.at +if(j==null)j=e +i=f.ax +if(i==null)i="" +h=f.ay +if(h==null)h="" +J.zZ(a0,A.C(["ip",r,"port",q,"code",p,"ca",n,"cert",o.d,"key",o.e,"clientId",m,"sn",l,"link_mode","lan","id",k,"accessCode",j,"authCode",i,"userid",h,"publishTopics",A.C(["request","/request","authRequest","/config/request","config",""],b,b),"subscribeTopics",A.C(["response","/response","authResponse","/config/response","status","/status","notification","/notification","config","/config/notification"],b,b),"connected",f.fr,"isLocalDevice",f.k2],b,a)) +A.u("orca _getOrcaLanEndpoint: model.clientId: "+f.gnM(0)+", clientId: "+A.c(J.i(a0,d))+"}",null) +if(J.i(a0,d)==null||J.cT(J.i(a0,d))){if(J.i(a0,c)!=null&&J.du(J.i(a0,c))){J.bT(a0,d,J.i(a0,c)) +f.CW=J.i(a0,d)}else{J.bT(a0,d,"orca-"+A.bs4(!0)) +f.CW=J.i(a0,d)}A.u("orca _getOrcaLanEndpoint: clientId is null, set clientId: "+A.c(J.i(a0,d)),null)}A.u("orca _getOrcaLanEndpoint: ip: "+f.d+", port: "+f.f+", clientId:"+f.gnM(0)+", certConfig.mqttClientId: "+f.id.c+", sn: "+f.w+", link_mode: lan, id: "+f.e+", connected: "+f.fr,null) +return a0}catch(g){s=A.v(g) +b=J.p(s) +$.ac().a3("Get cloud endpoint error "+b) +return a0}}, +Z2(){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=t.N,a4=t.z,a5=A.w(a3,a4) +try{s=A.bs3(a2.id.f) +r=A.bs3(a2.id.r) +p=a2.ax +if(p==null)p="" +o=a2.ay +if(o==null)o="" +n=a2.at +if(n==null)n="12345678" +m=a2.w +l=a2.id +k=l.w +k===$&&A.b() +j=a2.a +i=a2.e +h=a2.Q +g=J.i(r,"config") +f=a2.id +e=J.i(r,"data") +if(e==null)e="" +d=J.i(r,"request") +if(d==null)d="/request" +d=A.C(["config",A.c(g)+"/"+f.c,"data",e,"request",d],a3,a3) +e=J.i(s,"config") +f=a2.id +g=J.i(s,"data") +if(g==null)g="" +c=J.i(s,"error") +if(c==null)c="" +b=J.i(s,"response") +if(b==null)b="/response" +a=J.i(s,"status") +if(a==null)a="/status" +a0=J.i(s,"notification") +if(a0==null)a0="/notification" +J.zZ(a5,A.C(["authCode",p,"userid",o,"code",n,"sn",m,"ca",k,"cert",l.d,"key",l.e,"clientId",l.c,"port",l.b,"ip",l.a,"devName",j,"id",i,"productId",h,"link_mode","wan","publishTopics",d,"subscribeTopics",A.C(["config",A.c(e)+"/"+f.c,"data",g,"error",c,"response",b,"status",a,"notification",a0],a3,a3),"connected",a2.fr,"isLocalDevice",a2.k2],a3,a4)) +return a5}catch(a1){q=A.v(a1) +a3=J.p(q) +$.ac().a3("Get cloud endpoint error "+a3) +return a5}}, +ahm(a1,a2){var s=this,r="name",q=", this.hashCode: ",p="device_name",o="dev_name",n="clientId",m="deviceConnectionState",l="link_mode",k="linkMode",j="macAddress",i="certConfig",h="loginUser",g="accessCode",f="authCode",e="connected",d="preset_name",c="nozzle_sizes",b="machine_type",a="productCode",a0="deviceModel" +if(a1.N(0,r)&&!J.e(a1.h(0,r),"")){A.u("DeviceModel, updateDeviceModel, model['name']: "+A.c(a1.h(0,r))+", name: "+s.a+q+A.at(s),null) +s.a=a1.h(0,r)}else if(a1.N(0,p)&&!J.e(a1.h(0,p),"")){A.u(" DeviceModel, updateDeviceModel, device_name: "+A.c(a1.h(0,p))+", name: "+s.a+q+A.at(s),null) +s.a=a1.h(0,p)}else if(a1.N(0,o)&&!J.e(a1.h(0,o),"")){A.u("DeviceModel, updateDeviceModel, dev_name: "+A.c(a1.h(0,o))+", name: "+s.a+q+A.at(s),null) +s.a=a1.h(0,o)}if(a1.N(0,"ip"))s.d=a1.h(0,"ip") +if(a1.N(0,"port"))s.f=a1.h(0,"port") +if(a1.N(0,n))s.CW=a1.h(0,n) +if(a1.N(0,"id"))s.e=a1.h(0,"id") +if(a1.N(0,m))s.fy=A.bs1(a1.h(0,m)) +if(a1.N(0,l))s.go=a1.h(0,l) +else if(a1.N(0,k))s.go=a1.h(0,k) +if(a1.N(0,j))s.r=a1.h(0,j) +if(a1.N(0,i))s.id=A.In(a1.h(0,i)) +if(a1.N(0,h))s.fx=a1.h(0,h) +if(a1.N(0,"isBind"))s.db=a1.h(0,"isBind") +if(a1.N(0,g))s.at=a1.h(0,g) +if(a1.N(0,f))s.ax=a1.h(0,f) +if(a1.N(0,"userid"))s.ay=a1.h(0,"userid") +if(a1.N(0,e))s.fr=a1.h(0,e) +if(a1.N(0,"status"))s.dx=a1.h(0,"status") +if(a1.N(0,"online"))s.dy=a1.h(0,"online") +if(a1.N(0,"img"))s.cx=a1.h(0,"img") +if(a1.N(0,d))s.cy=a1.h(0,d) +if(a1.N(0,c))s.y=a1.h(0,c) +if(a1.N(0,"dev_id"))s.x=a1.h(0,"dev_id") +if(a1.N(0,b))s.c=a1.h(0,b) +if(a1.N(0,a))s.Q=a1.h(0,a) +if(a1.N(0,a0))s.as=a1.h(0,a0) +if(a1.N(0,"sn"))s.w=a1.h(0,"sn")}, +jF(a){this.fy=a +if(a===B.iV||a===B.iU)this.fr=!0}, +iO(a,b){A.u("DeviceModel setConnected, reason: "+b+", _connected: "+this.fr+", set isConnected: "+a+", this.hashCode: "+A.at(this),null) +this.fr=a}, +ao(){var s=this +return A.C(["name",s.a,"device_name",s.gkI(0),"machine_type",s.c,"ip",s.d,"port",s.f,"id",s.e,"status",s.dx,"online",s.dy,"connected",s.fr,"deviceConnectionState",s.fy.gk(0),"link_mode",s.go,"mac",s.r,"sn",s.w,"productName",s.z,"productCode",s.Q,"deviceModel",s.as,"certConfig",s.id.ao(),"loginUser",s.fx,"isBind",s.db,"img",s.cx,"dev_id",s.x,"preset_name",s.cy,"nozzle_sizes",s.y,"accessCode",s.at,"authCode",s.ax,"userid",s.ay,"clientId",s.gnM(0),"version",s.k1],t.N,t.z)}, +aD(){var s=this +return"DeviceModel(hashCode: "+A.at(s)+",key: "+s.w+", name: "+s.a+", deviceName: "+s.gkI(0)+", ip: "+s.d+", port: "+s.f+", clientId: "+s.gnM(0)+", id: "+s.e+", linkMode: "+s.go+", deviceConnectionState: "+s.fy.gcq(0)+", connected: "+s.fr+", online: "+s.dy+", deviceVersion: "+s.k1+")"}, +j(a){var s=this,r=s.id.j(0) +return"DeviceModel(hashCode: "+A.at(s)+" ,key: "+s.w+", ip: "+s.d+", port: "+s.f+", clientId: "+s.gnM(0)+", id: "+s.e+", devId: "+A.c(s.x)+", nozzleSizes: "+A.c(s.y)+", presetName: "+A.c(s.cy)+", deviceConnectionState: "+s.fy.gcq(0)+", name: "+s.a+", deviceName: "+s.gkI(0)+", presetName: "+A.c(s.cy)+", img: "+A.c(s.cx)+", machineType: "+s.c+", deviceModel: "+s.as+", productCode: "+s.Q+", sn: "+s.w+", authCode: "+A.c(s.ax)+", userid: "+A.c(s.ay)+", certConfig.clientId: "+s.id.c+", accessCode: "+A.c(s.at)+", linkMode: "+s.go+", connected: "+s.fr+", status: "+s.dx+", online: "+s.dy+", isBind: "+s.db+", deviceVersion: "+s.k1+", certConfig: "+r+")"}} +A.wA.prototype={ +t7(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,a0,a1,a2,a3,a4,a5){var s,r=this +if(n!=null)r.a=n +if(c!=null)r.b=c +if(a0!=null)r.d=a0 +if(a1!=null)r.e=a1 +if(d!=null)r.f=d +if(f!=null)r.r=f +if(k!=null)r.w=k +if(a3!=null)r.x=a3 +if(m!=null)r.CW=m +if(b!=null)r.y=b +if(g!=null)r.z=g +if(a!=null)r.Q=a +if(j!=null)r.ch=j +if(a2!=null)r.as=a2 +if(l!=null)r.at=l +if(p!=null)r.ax=p +if(q!=null)r.cx=q +if(o!=null)r.db=o +if(i!=null)r.dx=i +if(h!=null)r.dy=h +if(a4!=null)r.cy=a4 +if(e!=null){s=r.fr +B.b.V(s) +B.b.G(s,e)}return r}, +b0Q(a){var s=null +return this.t7(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s)}, +b0R(a,b,c,d,e,f,g,h,i,j,k,l,m,n){var s=null +return this.t7(s,s,s,a,s,s,s,b,c,s,s,d,e,s,f,g,h,i,j,k,l,m,n)}, +Yv(a){var s=null +return this.t7(s,s,a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +Yw(a){var s=null +return this.t7(s,s,s,s,a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +b0T(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,a0){return this.t7(a,b,c,d,null,e,f,g,h,i,j,k,null,null,l,m,n,o,p,q,r,s,a0)}, +b0P(a){var s=null +return this.t7(s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s)}, +ahs(a){var s=null +return this.t7(s,s,s,s,s,s,s,s,s,s,s,s,s,a,s,s,s,s,s,s,s,s,s)}, +b0S(a,b){var s=null +return this.t7(s,s,a,s,s,s,s,s,s,s,s,s,s,s,s,s,s,b,s,s,s,s,s)}, +eU(a){var s,r,q=this +B.b.V(q.fr) +J.GA(q.CW) +B.b.V(q.cx) +q.r.V(0) +q.w=new A.Bx(0,0,0) +q.x=new A.Pd("") +q.y=new A.we(B.C) +q.z=new A.wP(0,0) +q.Q=new A.wP(0,0) +s=t.N +r=t.z +q.as=A.CV(A.w(s,r)) +q.at=new A.JV(0,"Idle") +q.ax=A.bmV(A.w(s,r)) +q.cy=A.boa(A.w(s,r)) +q.db=A.bmP(A.w(s,r)) +q.dx=A.bm3(A.w(s,r)) +q.dy=A.bm2(A.w(s,r)) +q.e=new A.Mm(0,0,0,"","",B.cF,"",null) +q.f=new A.IE() +q.d=B.rv +q.b=B.dd +q.a="" +q.T()}} +A.Km.prototype={ +gho(){return B.dJ}, +m(){var s,r,q,p,o,n=this,m=", model.hashCode: ",l="[Device]***** this.hashCode: " +try{r=n.ax +if(r!=null)r.S(0) +r=n.a +A.u("[Device] LavaDevice dispose start, connection.hashCode: "+A.at(n.b)+", this.hashCode: "+A.at(n)+m+A.at(r),null) +n.b.lv(0,!0,!0) +n.b.m() +q=n.fr +if(q!=null)q.S(0) +q=n.fx +if(q!=null)q.S(0) +n.cx.b.L(0) +n.cy.b.L(0) +n.dx.L(0) +n.db.L(0) +B.b.V(n.d) +A.u(l+A.at(n)+m+A.at(r)+", LavaDevice dispose success ******",null)}catch(p){s=A.v(p) +r=A.at(n) +q=A.at(n.a) +o=J.p(s) +$.ac().a3(l+r+m+q+", LavaDevice dispose error: "+o+" ******")}}, +dz(){var s=this,r=s.b +A.u("[Device] isDeviceConnected "+r.gbi(r).j(0)+", _connectionStatus: "+s.ay.j(0)+u.o+s.cx.a.b.j(0),null) +r=s.b +return r.gbi(r)===B.av}, +t5(){var s=0,r=A.n(t.a),q,p=this,o,n,m,l,k,j +var $async$t5=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.u("[Device]LavaDevice tryConnect",null) +case 3:switch(p.gho().a){case 1:s=5 +break +case 2:s=6 +break +case 3:s=7 +break +default:s=8 +break}break +case 5:A.u(u.ft,null) +o=p.a.Oj() +s=o.h(0,"ip")!=null&&J.du(o.h(0,"ip"))?9:10 +break +case 9:n=A.btU(o,new A.Ld()) +p.b=n +n.gJG().bL(new A.aEH(p)) +n=t.N +m=t.z +s=11 +return A.f(p.b.ja(A.w(n,m)),$async$t5) +case 11:l=b +A.u("[Device]try connect result: "+J.p(l),null) +k=p.a48(l) +A.u(u.fo+p.gho().j(0)+", handle authorize result "+A.c(k),null) +if(k!=null){q=k +s=1 +break}q=A.w(n,m) +s=1 +break +case 10:s=4 +break +case 6:A.u(u.I,null) +j=A.w(t.N,t.z) +j.n(0,"state","authorized") +j.n(0,"action","approve") +p.cy.cj(j) +q=j +s=1 +break +case 7:A.u(u.dL,null) +n=p.a +if(n.fy.eP()){A.u("[Device]LavaDevice connect ConnectionChannel.wcp, isWan",null) +j=A.w(t.N,t.z) +j.n(0,"state","authorized") +j.n(0,"action","approve") +p.cy.cj(j) +q=j +s=1 +break}A.u("[Device]LavaDevice connect ConnectionChannel.wcp, isLan",null) +n=A.bx2(n.Fn(),new A.aaj()) +p.b=n +n.gJG().bL(new A.aEI(p)) +A.u("[Device]LavaDevice connect ConnectionChannel.wcp, try connect start",null) +n=t.N +m=t.z +s=12 +return A.f(p.b.ja(A.w(n,m)),$async$t5) +case 12:l=b +A.u("[Device]LavaDevice connect ConnectionChannel.wcp, try connect result: "+J.p(l),null) +k=p.azl(l) +A.u(u.fo+p.gho().j(0)+", handle authorize result "+A.c(k),null) +if(k!=null){q=k +s=1 +break}q=A.w(n,m) +s=1 +break +case 8:A.u(u.aZ,null) +s=p.gho()===B.dJ?13:14 +break +case 13:s=15 +return A.f(p.t5(),$async$t5) +case 15:q=b +s=1 +break +case 14:n=p.a +o=n.Oj() +s=o.h(0,"ip")!=null&&J.du(o.h(0,"ip"))&&!n.fy.eP()?16:18 +break +case 16:s=o.h(0,"ip")!=null&&J.du(o.h(0,"ip"))?19:20 +break +case 19:n=A.btU(o,new A.Ld()) +p.b=n +n.gJG().bL(new A.aEJ(p)) +n=t.N +m=t.z +s=21 +return A.f(p.b.ja(A.w(n,m)),$async$t5) +case 21:l=b +A.u("try connect result: "+J.p(l),null) +k=p.a48(l) +A.u("[Device]try connect result, "+p.ch.j(0)+", handle authorize result "+A.c(k),null) +if(k!=null){q=k +s=1 +break}q=A.w(n,m) +s=1 +break +case 20:s=17 +break +case 18:A.u(u.I,null) +j=A.w(t.N,t.z) +j.n(0,"state","authorized") +j.n(0,"action","approve") +p.cy.cj(j) +q=j +s=1 +break +case 17:s=4 +break +case 4:q=A.w(t.N,t.z) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$t5,r)}, +RA(a){var s,r="state",q="authorizationInvalid" +A.u("[Device]LavaDevice _handleAuthStateResult state "+a,null) +s=A.C(["state","init"],t.N,t.z) +switch(a){case"ready":s.n(0,r,"ready") +break +case"rejected":s.n(0,r,"rejected") +break +case"notAvailable":s.n(0,r,"notAvailable") +break +case"authorizing":s.n(0,r,"authorizing") +break +case"authorizationInvalid":s.n(0,r,q) +break +case"init":default:s.n(0,r,"init") +break}this.cy.cj(s)}, +a48(a){var s,r,q=this,p=J.dd(a) +A.u(u.A+p.j(a)+", currentConnectionChannel: "+q.gho().j(0),null) +s=p.h(a,"state") +switch(s==null?"":s){case"notConnected":q.cy.cj(a) +return a +case"modeNotAvailable":q.cy.cj(a) +return a +case"notAuthorized":return a +case"authorizing":q.cy.cj(a) +break +case"ready":r=A.w(t.N,t.z) +r.n(0,"state","authorized") +r.n(0,"action","approve") +q.cy.cj(r) +return r +default:return a}return null}, +azl(a){var s,r,q=J.dd(a) +A.u(u.A+q.j(a)+", currentConnectionChannel: "+this.gho().j(0),null) +s=q.h(a,"state") +switch(s==null?"":s){case"notConnected":return a +case"modeNotAvailable":return a +case"notAuthorized":return a +case"authorizing":this.cy.cj(a) +break +case"ready":r=A.w(t.N,t.z) +r.n(0,"state","authorized") +r.n(0,"action","approve") +this.cy.cj(r) +break +default:return a}return null}, +nP(a){return this.aPS(!0)}, +aPS(a){var s=0,r=A.n(t.y),q,p=this,o,n,m +var $async$nP=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p.y=!0 +o=!1 +case 3:switch(p.gho().a){case 1:s=5 +break +case 2:s=6 +break +case 3:s=7 +break +default:s=8 +break}break +case 5:A.u(u.ft,null) +s=9 +return A.f(p.AG(),$async$nP) +case 9:o=c +n=p.a +if(o){n.jF(B.cY) +n.iO(!0,"LavaDevice connect result: true, ConnectionChannel.lan") +p.ch=B.eM +p.u_() +q=!0 +s=1 +break}else A.u(u.h+n.d+", model.key: "+n.w,null) +s=4 +break +case 6:A.u(u.I,null) +n=p.a +m=n.YN() +s=m.h(0,"clientId")!=null&&J.du(m.h(0,"clientId"))?10:11 +break +case 10:s=12 +return A.f(p.AF(m),$async$nP) +case 12:o=c +if(o){n.jF(B.cw) +n.iO(!0,"LavaDevice connect result: true, ConnectionChannel.cloud") +p.ch=B.w2 +p.u_() +q=!0 +s=1 +break}else A.u(u.d+A.c(m.h(0,"endpoint"))+", model.key: "+n.w,null) +case 11:s=4 +break +case 7:A.u(u.dL,null) +n=p.a +A.u("[Device]LavaDevice connect ConnectionChannel.wcp, model.deviceConnectionState: "+n.fy.j(0)+", name: "+n.fy.gcq(0),null) +s=n.fy.eO()?13:15 +break +case 13:m=n.Fn() +s=16 +return A.f(p.tK(m),$async$nP) +case 16:o=c +if(o){n.jF(B.cY) +n.iO(!0,u.cD) +p.ch=B.dJ +p.u_()}s=14 +break +case 15:m=n.Z2() +s=17 +return A.f(p.tK(m),$async$nP) +case 17:o=c +if(o){n.jF(B.cw) +n.iO(!0,u.cD) +p.ch=B.dJ +p.u_()}case 14:A.u("[Device]LavaDevice orca wcp connect result: "+o+", endpoint.ip: "+A.c(m.h(0,"ip"))+", model.key: "+n.w,null) +s=4 +break +case 8:A.u(u.aZ,null) +s=p.gho()===B.dJ?18:19 +break +case 18:n=p.a +s=20 +return A.f(p.tK(n.fy.eP()?n.Z2():n.Fn()),$async$nP) +case 20:q=c +s=1 +break +case 19:n=p.a +n.Oj() +s=!n.fy.eP()?21:22 +break +case 21:s=23 +return A.f(p.AG(),$async$nP) +case 23:o=c +if(o){n.jF(B.cY) +n.iO(!0,u.eP) +p.ch=B.eM +p.u_() +q=!0 +s=1 +break}else A.u(u.h+n.d+", model.key: "+n.w,null) +case 22:m=n.YN() +A.u("[Device]LavaDevice cloud connect, try to connect to cloud, endpoint.ip: "+A.c(m.h(0,"ip"))+", model.key: "+n.w,null) +A.u("model.getCloudEndpoint() endpoint "+m.j(0),null) +s=m.h(0,"clientId")!=null&&J.du(m.h(0,"clientId"))?24:25 +break +case 24:s=26 +return A.f(p.AF(m),$async$nP) +case 26:o=c +if(o){n.jF(B.cw) +n.iO(!0,u.eP) +p.ch=B.w2 +p.u_() +q=!0 +s=1 +break}else A.u(u.d+A.c(m.h(0,"endpoint"))+", model.key: "+n.w,null) +case 25:s=4 +break +case 4:q=A.c7(o,t.y) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$nP,r)}, +AG(){var s=0,r=A.n(t.y),q,p=this,o,n,m,l +var $async$AG=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:o=p.a60(p.b.gGb()) +n=p.a61(p.b.gMg()) +s=3 +return A.f(p.b.eb(),$async$AG) +case 3:m=b +l=A.w(t.N,t.z) +if(m){p.ch=B.eM +p.fr=o +p.fx=n +l.n(0,"state","authorized") +l.n(0,"action","approve")}else{o.S(0) +n.S(0) +l.n(0,"state","notAvailable") +l.n(0,"action","disconnect")}p.cy.cj(l) +q=m +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$AG,r)}, +AF(a){var s=0,r=A.n(t.y),q,p=this +var $async$AF=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=3 +return A.f(p.tK(a),$async$AF) +case 3:q=c +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$AF,r)}, +tK(a){return this.auL(a)}, +auL(a){var s=0,r=A.n(t.y),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d +var $async$tK=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +A.u("[Device]LavaDevice _connectToOrca start, endpoint: "+A.co(a),null) +A.u("[Device]LavaDevice _connectToOrca connection, start , connection: "+A.fQ(A.K(m.b).a,null),null) +if(A.K(m.b)!==B.avi){A.u("[Device]LavaDevice _connectToOrca create WcpConnection, start connect, 1 , connection: "+A.K(m.b).j(0),null) +m.b=A.bx2(a,new A.aaj())}l=m.a60(m.b.gGb()) +k=m.a61(m.b.gMg()) +A.u("[Device]LavaDevice _connectToOrca create connection, start connect, 2 , connection: "+A.fQ(A.K(m.b).a,null),null) +s=7 +return A.f(m.b.eb(),$async$tK) +case 7:j=c +A.u("LavaDevice _connectToOrca end, result "+A.c(j),null) +i=A.w(t.N,t.z) +if(j){A.u("[Device]LavaDevice _connectToOrca _authorizeResultStream: authorized",null) +m.ch=B.dJ +m.fr=l +m.fx=k +if(m.a.fy.eO()){J.bT(i,"state","authorized") +J.bT(i,"action","approve") +m.cy.cj(i)}A.u(u.fY+m.gho().j(0)+", state: authorized, action: approve",null)}else{g=l +if(g!=null)J.Gz(g) +g=k +if(g!=null)J.Gz(g) +if(m.a.fy.eO()){J.bT(i,"state","notAvailable") +J.bT(i,"action","disconnect") +m.cy.cj(i)}A.u(u.fY+m.gho().j(0)+", state: notAvailable, action: disconnect",null)}q=j +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 4:p=3 +d=o +h=A.v(d) +g=m.gho().j(0) +e=J.p(h) +$.ac().a3(u.x+g+", error: "+e) +q=!1 +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.u(u.x+m.gho().j(0)+", finally",null) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$tK,r)}, +jZ(a,b){var s,r,q,p,o=this,n=!0 +try{r=o.a +A.u("[Device]LavaDevice disconnect start, isForeDisConnect: "+A.c(n)+", needReload: "+b+", currentConnectionChannel: "+o.gho().j(0)+", device.key: "+r.w+", hashCode:"+A.at(o)+", connection.hashCode: "+A.at(o.b)+", model.hashCode: "+A.at(r)+", , currentConnectionChannel: "+o.gho().j(0)+",connection: "+A.K(o.b).j(0)+", call disconnect",null) +o.w=!1 +o.ay=B.iO +r=o.ax +if(r!=null){r.S(0) +o.ax=null +A.u("[Device]LavaDevice disconnect _heartbeatDetectionTimer cancel",null)}r=o.b.jZ(0,b) +return r}catch(q){s=A.v(q) +r=A.c(n) +p=J.p(s) +$.ac().a3("[Device]LavaDevice disconnect, isForeDisConnect: "+r+", needReload: "+b+", error: "+p) +p=A.c7(!1,t.y) +return p}}, +jq(a){return this.jZ(0,!0)}, +u_(){var s=this,r=s.r +if(!r){r=s.a.w +r=r==="+"||r==="" +if(r)s.r=!1 +else s.r=!0 +r=!r}if(!r)return +A.u("[Device]LavaDevice _connectionSuccess",new A.aS(Date.now(),0,!1)) +s.x=s.w=!1 +s.x3().cv(new A.aEB(s),new A.aEC(s),t.P)}, +wb(a,b,c){return this.akh(a,b,c)}, +tm(a){return this.wb(a,!0,3)}, +akg(a,b){return this.wb(a,!0,b)}, +akh(a,b,c){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g +var $async$wb=A.j(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:n.Ca(a,B.A) +p=4 +k=n.b +j=$.d8().aP() +i=b?3:0 +s=7 +return A.f(k.dB(new A.aAo(j,a),i,c),$async$wb) +case 7:m=e +A.u("[Device]LavaDevice Gcoode request result "+A.c(m),null) +if(J.i(m,"error")==null){q=!0 +s=1 +break}else{k=A.c(J.i(m,"error")) +$.ac().a3("[Device]LavaDevice sendGcode error: "+k) +if(J.i(J.i(m,"error"),"message")!=null){n.dx.q(0,A.auG(B.p,J.i(J.i(m,"error"),"message"))) +k=A.ae(A.c(J.i(J.i(m,"error"),"message"))) +throw A.d(k)}else if(J.i(J.i(m,"error"),"msg")!=null){k=A.ae(A.c(J.i(J.i(m,"error"),"msg"))) +throw A.d(k)}else{k=A.ae(A.c(J.i(m,"error"))) +throw A.d(k)}}p=2 +s=6 +break +case 4:p=3 +g=o +l=A.v(g) +k=J.p(l) +$.ac().a3("[Device]LavaDevice sendGcode error: "+k) +throw g +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$wb,r)}, +Mj(a){return this.aXr(a)}, +aXr(a){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g +var $async$Mj=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:n.Ca(a,B.A) +p=4 +m=new A.atP(a,$.d8().aP()) +A.u("[Device]LavaDevice modifyDeviceName request start",null) +s=7 +return A.f(n.b.dB(m,0,0),$async$Mj) +case 7:l=c +A.u("[Device]LavaDevice modifyDeviceName request result "+A.c(l),null) +k=A.zQ(l) +if(k.a===!0){q=!0 +s=1 +break}else{j=n.dx +if(k.a===!1){i=k.b +j.q(0,A.auG(B.p,i==null?"modify device name error":i)) +j=A.ae(k.b) +throw A.d(j)}else{i=k.b +j.q(0,A.auG(B.p,i==null?"modify device name error":i)) +j=k.b +$.ac().a3("[Device]LavaDevice modify device name error: "+A.c(j)) +q=!1 +s=1 +break}}p=2 +s=6 +break +case 4:p=3 +g=o +throw g +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Mj,r)}, +G_(a,b,c){return this.akR(a,b,c)}, +akR(a,b,c){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$G_=A.j(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:p=4 +n.Ca("setUserinfo: "+a+", "+b+", "+c,B.A) +m=new A.atQ(A.c0(a,null),b,c,$.d8().aP()) +A.u("[Device]LavaDevice setUserinfo request start",null) +s=7 +return A.f(n.b.l4(m),$async$G_) +case 7:l=e +A.u("[Device]LavaDevice setUserinfo request result "+A.c(l),null) +k=A.zQ(l) +if(k.a===!0){q=!0 +s=1 +break}else if(k.a===!1){j=A.ae(k.b) +throw A.d(j)}q=!0 +s=1 +break +p=2 +s=6 +break +case 4:p=3 +h=o +throw h +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$G_,r)}, +x3(){return this.ayq()}, +ayq(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$x3=A.j(function(a0,a1){if(a0===1){o=a1 +s=p}while(true)switch(s){case 0:b={} +A.u("[Device]LavaDevice getDeviceObject request start",new A.aS(Date.now(),0,!1)) +p=4 +i=b.a=A.a([],t.s) +A.u("[Device]LavaDevice getDeviceModuleList request start",null) +m=new A.aKI($.d8().aP()) +s=7 +return A.f(n.b.dB(m,0,3),$async$x3) +case 7:l=a1 +if(J.i(l,"error")!=null){i=A.c(J.i(l,"error")) +$.ac().a3('[Device]LavaDevice getDeviceModuleList response["error"]: '+i) +n.f=!1 +q=!1 +s=1 +break}if(J.i(l,"result")!=null&&t.j.b(J.i(J.i(l,"result"),"objects")))i=b.a=J.bFd(J.i(J.i(l,"result"),"objects"),t.N).cJ(0) +h=n.fy +B.b.V(h) +g=t.Ri +B.b.G(h,A.a8(new A.ey(i,g),!0,g.i("B.E"))) +for(i=h.length,g=n.e,f=0;f>"))}, +wl(a){return this.alG(a)}, +alG(a){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$wl=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +m=new A.aSr($.d8().aP(),a) +s=7 +return A.f(n.b.dB(m,0,0),$async$wl) +case 7:l=c +A.u("PrinterStart request result "+A.c(l),null) +if(J.i(l,"error")==null){q=!0 +s=1 +break}else{j=A.c(J.i(l,"error")) +$.ac().a3("startPrint error: "+j) +j=A.ae(J.i(l,"error")) +throw A.d(j)}p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +j=J.p(k) +$.ac().a3("startPrint "+a+" error: "+j) +throw h +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$wl,r)}, +MV(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$MV=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +m=new A.aMq($.d8().aP()) +s=7 +return A.f(n.b.dB(m,0,0),$async$MV) +case 7:l=b +A.u("pausePrint request result "+A.c(l),null) +if(J.i(l,"error")==null){q=!0 +s=1 +break}else{j=A.c(J.i(l,"error")) +$.ac().a3("pausePrint error: "+j) +j=A.ae(J.i(l,"error")) +throw A.d(j)}p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +if(k instanceof A.fd)$.ac().a3("pausePrint timeout") +else{j=J.p(k) +$.ac().a3("pausePrint error: "+j)}throw h +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$MV,r)}, +Nw(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$Nw=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +m=new A.aPn($.d8().aP()) +s=7 +return A.f(n.b.dB(m,0,0),$async$Nw) +case 7:l=b +A.u("resumePrint request result "+A.c(l),null) +if(J.i(l,"error")==null){q=!0 +s=1 +break}else{j=A.c(J.i(l,"error")) +$.ac().a3("resumePrint error: "+j) +j=A.ae(J.i(l,"error")) +throw A.d(j)}p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +if(k instanceof A.fd)$.ac().a3("resumePrint timeout") +else{j=J.p(k) +$.ac().a3("resumePrint error: "+j)}throw h +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Nw,r)}, +K_(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$K_=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +m=new A.arE($.d8().aP()) +s=7 +return A.f(n.b.dB(m,0,0),$async$K_) +case 7:l=b +A.u("cancelPrint request result "+A.c(l),null) +if(J.i(l,"error")==null){q=!0 +s=1 +break}else{j=A.c(J.i(l,"error")) +$.ac().a3("cancelPrint error: "+j) +j=A.ae(J.i(l,"error")) +throw A.d(j)}p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +if(k instanceof A.fd)$.ac().a3("cancelPrint timeout") +else{j=J.p(k) +$.ac().a3("cancelPrint error: "+j)}throw h +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$K_,r)}, +Np(a,b,c,d){return this.b_I(a,b,c,d)}, +b_I(a,b,c,d){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$Np=A.j(function(e,f){if(e===1){o=f +s=p}while(true)switch(s){case 0:A.u("requesting device download "+a+" with type "+b,null) +p=4 +m=new A.aRl($.d8().aP(),b,a,c) +s=7 +return A.f(n.b.dB(m,0,0),$async$Np) +case 7:l=f +A.u("requestDeviceDownloadFile response "+J.p(l)+", command: "+A.co(J.ap8(m)),null) +if(J.i(l,"result")!=null){A.u("requestDeviceDownloadFile response "+A.c(J.i(l,"result")),null) +j=J.e(J.i(J.i(l,"result"),"state"),"success") +q=j +s=1 +break}else{j=J.p(l) +$.ac().a3("requestDeviceDownloadFile fileType: "+b+", url: "+a+", autoStart: "+c+", checksum: "+A.c(d)+", response: "+j) +j=A.ae("device download wan file failed: "+A.c(J.i(l,"error"))) +throw A.d(j)}p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +j=J.p(k) +$.ac().a3("requestDeviceDownloadFile error: "+j) +throw h +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Np,r)}, +Nq(){var s=0,r=A.n(t.a),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$Nq=A.j(function(a0,a1){if(a0===1){o=a1 +s=p}while(true)switch(s){case 0:p=4 +m=new A.aRj($.d8().aP()) +s=7 +return A.f(n.b.l4(m),$async$Nq) +case 7:l=a1 +if(J.i(l,"result")!=null){k=J.i(l,"result") +j=J.i(k,"state") +switch(j){case"ready":i=J.i(k,"path") +n.dy.jE(new A.dy(1,i,!0,!1,null,null,!1,null)) +break +case"started":n.dy.jE(new A.dy(1,null,!0,!1,null,null,!0,null)) +break +case"downloading":if((n.dy.a.c&4)!==0)n.dy=new A.mZ(new A.cd(null,null,t.L_),t.KQ) +h=J.i(k,"percent") +A.u("downloading progress "+A.c(h),null) +d=n.dy +c=J.i(k,"path") +if(c==null)c="" +d.xC(0,new A.dy(h/100,null,!1,!1,null,c,!1,null)) +break +case"error":A.u("downloading error "+A.c(k),null) +g=J.i(k,"message") +f=new A.dy(0,null,!0,!0,g,null,!1,null) +n.dy.jE(f) +break +case"pending":A.u(u.C+A.c(k),null) +break +default:break}A.u("response "+A.c(J.i(l,"result")),null) +d=J.i(l,"result") +q=d +s=1 +break}else{d=A.ae("Could not get result from device") +throw A.d(d)}p=2 +s=6 +break +case 4:p=3 +a=o +e=A.v(a) +d=J.p(e) +$.ac().a3("requestDeviceCancelDownloadFile error: "+d) +throw a +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Nq,r)}, +Ns(){var s=0,r=A.n(t.N),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b +var $async$Ns=A.j(function(a,a0){if(a===1){o=a0 +s=p}while(true)switch(s){case 0:c="wan" +if(n.gho()===B.dJ)c=n.a.fy.eO()?"lan":"wan" +else c=n.gho()===B.eM?"lan":"wan" +p=4 +e=c +m=new A.aRg($.d8().aP(),e) +s=7 +return A.f(n.b.dB(m,0,0),$async$Ns) +case 7:l=a0 +A.u("request start monitoring response "+A.c(l),null) +if(J.i(l,"result")!=null){A.u("response "+A.c(J.i(l,"result")),null) +if(J.e(J.i(J.i(l,"result"),"state"),"success")){k=J.i(J.i(l,"result"),"url") +if(J.e(c,"lan")){j="http://"+n.a.z3()+"/server"+A.c(k) +q=j +s=1 +break}else{q=k +s=1 +break}}else{i=J.i(J.i(l,"result"),"message") +q=i +s=1 +break}}else{$.ac().a3("requestStartCameraMonitoring could not get result from device") +h=J.i(l,"error") +if(J.e(J.i(h,"code"),-32601)){g="device not implement! return:\n"+A.c(h) +q=g +s=1 +break}e=J.p(h) +q=e +s=1 +break}p=2 +s=6 +break +case 4:p=3 +b=o +f=A.v(b) +e=J.p(f) +$.ac().a3("requestStartCameraMonitoring error: "+e) +throw b +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Ns,r)}, +Nt(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Nt=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:g="wan" +if(n.gho()===B.dJ)g=n.a.fy.eO()?"lan":"wan" +else g=n.gho()===B.eM?"lan":"wan" +p=4 +i=g +m=new A.aRh($.d8().aP(),i) +s=7 +return A.f(n.b.l4(m),$async$Nt) +case 7:l=b +if(J.i(l,"result")!=null){A.u("response "+A.c(J.i(l,"result")),null) +k=J.e(J.i(J.i(l,"result"),"state"),"success") +A.u("request stop camera monitoring ... "+A.c(k),null) +q=k +s=1 +break}else{$.ac().a3("could not get result from device") +q=!1 +s=1 +break}p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +i=J.p(j) +$.ac().a3("requestStopCameraMonitoring error: "+i) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Nt,r)}, +Ez(a,b){return this.b_O(a,b)}, +b_O(a,b){var s=0,r=A.n(t.a),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Ez=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:s=(n.gho()===B.dJ?n.a.fy.eO():n.gho()===B.eM)?3:5 +break +case 3:h=t.N +q=A.C(["result","failed","msg","Lan mode not support timelapse upload"],h,h) +s=1 +break +s=4 +break +case 5:p=7 +m=new A.arD($.d8().aP(),a,b) +s=10 +return A.f(n.b.dB(m,0,0),$async$Ez) +case 10:l=d +if(J.i(l,"result")!=null){A.u("response "+A.c(J.i(l,"result")),null) +if(J.e(J.i(J.i(l,"result"),"state"),"success")){k=J.i(J.i(l,"result"),"url") +A.u("uploaded url "+A.c(k),null) +h=J.i(l,"result") +q=h +s=1 +break}else{j=J.i(J.i(l,"result"),"message") +h=A.c(j) +$.ac().a3("Upload "+a+" failed, "+h) +h=A.C(["result","failed","msg",j],t.N,t.z) +q=h +s=1 +break}}else{$.ac().a3("could not get result from device") +h=A.C(["result","failed","msg","could not get result from device"],t.N,t.z) +q=h +s=1 +break}p=2 +s=9 +break +case 7:p=6 +f=o +i=A.v(f) +h=J.p(i) +$.ac().a3("requestTimeLapseInstanceUpload error: "+h) +throw f +s=9 +break +case 6:s=2 +break +case 9:case 4:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Ez,r)}, +a60(a){return a.bL(new A.aEz(this))}, +a61(a){return a.bL(new A.aEA(this))}, +Fu(){var s=0,r=A.n(t.N),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Fu=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:A.u("getServerFilesRoots request start",new A.aS(Date.now(),0,!1)) +p=4 +m=new A.aRm($.d8().aP()) +s=7 +return A.f(n.b.dB(m,0,0),$async$Fu) +case 7:l=b +if(J.i(l,"result")!=null&&t.j.b(J.i(l,"result"))){k=J.i(l,"result") +j=J.ap9(k,new A.aEF(),new A.aEG()) +if(j!=null)J.i(j,"path") +h=J.i(j,"path") +if(h==null)h="" +q=h +s=1 +break}q="" +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +i=A.v(f) +h=J.p(i) +$.ac().a3("getServerFilesRoots error: "+h) +q="" +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fu,r)}, +zO(a){return this.ajH(a)}, +ajH(a){var s=0,r=A.n(t.a),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$zO=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:A.u("[Device]LavaDevice getServerFileMetadata request start filename: "+a,new A.aS(Date.now(),0,!1)) +if(a.length===0){q=A.w(t.N,t.z) +s=1 +break}p=4 +m=new A.aRk($.d8().aP(),a) +s=7 +return A.f(n.b.dB(m,0,0),$async$zO) +case 7:l=c +h=Date.now() +A.u("[Device]LavaDevice getServerFileMetadata request filename: "+a+", response: "+A.c(l),new A.aS(h,0,!1)) +if(J.i(l,"result")!=null&&t.f.b(J.i(l,"result"))){h=t.a +n.as=h.a(J.i(l,"result")) +k=h.a(J.i(l,"result")) +if(J.cO(k,"thumbnails")&&t.j.b(J.i(k,"thumbnails"))){j=t.j.a(J.i(k,"thumbnails")) +J.fz(j,new A.aEE(n)) +J.bT(k,"thumbnails",j)}q=k +s=1 +break}else{q=A.w(t.N,t.z) +s=1 +break}p=2 +s=6 +break +case 4:p=3 +f=o +i=A.v(f) +h=J.p(i) +$.ac().a3("[Device]LavaDevice getServerFileMetadata error: "+h) +q=A.w(t.N,t.z) +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$zO,r)}, +zL(a,b,c){return this.aji(a,b,c)}, +ajh(a,b){return this.zL(a,b,20)}, +aji(a5,a6,a7){var s=0,r=A.n(t.j),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4 +var $async$zL=A.j(function(a8,a9){if(a8===1){o=a9 +s=p}while(true)switch(s){case 0:p=4 +f=new A.ats($.d8().aP(),a5,a6) +f.d=a7 +m=f +A.u("send command "+J.ap8(m).j(0),null) +s=7 +return A.f(n.b.dB(m,0,0),$async$zL) +case 7:l=a9 +A.bWr("getLocalFileList response "+A.c(l)) +if(J.i(l,"result")!=null&&t.f.b(J.i(l,"result"))){k=J.i(l,"result") +if(J.i(k,"files")!=null&&t.j.b(J.i(k,"files"))){j=A.a([],t.H7) +for(e=J.ay(J.i(k,"files")),d=t.f,c=t.N,b=t.z;e.u();){i=e.gI(e) +if(d.b(i)){a=J.i(i,"path") +if(a==null)a="" +a0=J.i(i,"modified") +if(a0==null)a0=0 +a1=J.i(i,"size") +if(a1==null)a1=0 +a2=J.i(i,"permissions") +h=A.C(["path",a,"modified",a0,"size",a1,"permissions",a2==null?"":a2],c,b) +J.dN(j,h)}}q=j +s=1 +break}}else{A.dE("get local file list response invalid") +q=[] +s=1 +break}p=2 +s=6 +break +case 4:p=3 +a4=o +g=A.v(a4) +e=A.c(g) +$.ac().a3("get local file list error, "+e) +q=[] +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:q=[] +s=1 +break +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$zL,r)}, +Fc(a){return this.aj6(a)}, +aj6(a){var s=0,r=A.n(t.a),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Fc=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +if(a.length===0){h=A.ae("filePath is empty") +throw A.d(h)}m=B.b.gY(a.split("/")) +if(B.c.ba(a,".udisk"))m=a +h=m +l=new A.atr($.d8().aP(),h) +s=7 +return A.f(n.b.dB(l,0,0),$async$Fc) +case 7:k=c +if(J.i(k,"result")!=null&&t.f.b(J.i(k,"result"))){j=J.i(k,"result") +q=j +s=1 +break}else{q=A.w(t.N,t.z) +s=1 +break}p=2 +s=6 +break +case 4:p=3 +f=o +i=A.v(f) +h=J.p(i) +$.ac().a3("getFileThumbnailFromPath failed, error: "+h) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fc,r)}, +xQ(){var s=0,r=A.n(t.y),q,p=this,o,n +var $async$xQ=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:n=p.CW.c +if(n.r.length!==0){n=n.w +n=n==null?null:J.i(n,"filename") +n=!J.e(n,p.CW.c.r)}else n=!1 +s=n?3:4 +break +case 3:s=5 +return A.f(p.zO(p.CW.c.r),$async$xQ) +case 5:o=b +if(J.cT(o)){q=!1 +s=1 +break}p.CW.c.eV(A.C(["fileMetadata",o],t.N,t.z)) +n=p.cx +n.cj(n.a.b0P(p.CW.c)) +q=!0 +s=1 +break +case 4:q=!1 +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$xQ,r)}, +Ca(a,b){var s=A.auG(b,a),r=this.d +r.push(s) +if(r.length>1000)B.b.iF(r,0) +this.dx.q(0,s)}, +aNQ(a){return this.Ca(a,B.a0)}, +FP(a){return this.akB(a)}, +akB(a){var s=0,r=A.n(t.pA),q,p=this,o,n +var $async$FP=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=$.d8().aP() +n=A +s=3 +return A.f(p.b.dB(new A.atd(o,a),0,0),$async$FP) +case 3:q=n.zQ(c) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$FP,r)}, +FV(a){return this.akJ(a)}, +akJ(a){var s=0,r=A.n(t.pA),q,p=this,o,n +var $async$FV=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=$.d8().aP() +n=A +s=3 +return A.f(p.b.dB(new A.atg(a,o),0,0),$async$FV) +case 3:q=n.zQ(c) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$FV,r)}, +FI(a){return this.akn(a)}, +akn(a){var s=0,r=A.n(t.pA),q,p=this,o,n +var $async$FI=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=$.d8().aP() +n=A +s=3 +return A.f(p.b.dB(new A.atc(a,o),0,0),$async$FI) +case 3:q=n.zQ(c) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$FI,r)}, +FW(a,b,c){return this.akK(a,b,c)}, +akK(a,b,c){var s=0,r=A.n(t.pA),q,p=this,o,n +var $async$FW=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:o=$.d8().aP() +n=A +s=3 +return A.f(p.b.dB(new A.ath(o,b,a,c),0,0),$async$FW) +case 3:q=n.zQ(e) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$FW,r)}, +FQ(a){return this.akD(a)}, +akD(a){var s=0,r=A.n(t.pA),q,p=this,o,n +var $async$FQ=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=$.d8().aP() +n=A +s=3 +return A.f(p.b.dB(new A.atf(a,o),0,0),$async$FQ) +case 3:q=n.zQ(c) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$FQ,r)}, +FO(a){return this.akz(a)}, +akz(a){var s=0,r=A.n(t.pA),q,p=this,o,n +var $async$FO=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=$.d8().aP() +n=A +s=3 +return A.f(p.b.dB(new A.ate("cavity_fan",a,o),0,0),$async$FO) +case 3:q=n.zQ(c) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$FO,r)}} +A.aEH.prototype={ +$1(a){this.a.RA(a)}, +$S:19} +A.aEI.prototype={ +$1(a){return this.aij(a)}, +aij(a){var s=0,r=A.n(t.H),q=this,p +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=q.a +A.u("[Device]LavaDevice connect ConnectionChannel.wcp, try connect, authStateSteam state: "+a+", currentConnectionChannel: "+p.gho().j(0),null) +p.RA(a) +return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:288} +A.aEJ.prototype={ +$1(a){return this.aii(a)}, +aii(a){var s=0,r=A.n(t.H),q=this +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q.a.RA(a) +return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:288} +A.aEB.prototype={ +$1(a){var s=this.a +A.u("[Device]LavaDevice !!! getDeviceObject, result, _moduleObjectIsSuccess:"+s.f,null) +s.wp() +s.zf() +s.Na() +s.tr() +s.a4Q() +s.N9()}, +$S:26} +A.aEC.prototype={ +$1(a){var s=this.a,r=s.f,q=J.p(a),p=$.ac() +p.a3("[Device]LavaDevice !!! getDeviceObject, _moduleObjectIsSuccess:"+r+", error:"+q) +p.a3("LavaDevice _getDeviceObject Failed, run connectionFailed") +s.wp() +s.tr() +s.a4Q()}, +$S:2} +A.aEx.prototype={ +$1(a){return!B.b.p(this.a.a,a)}, +$S:21} +A.aED.prototype={ +$1(a){var s,r="relative_path" +if(t.f.b(a)&&J.cO(a,r)){s=J.a0(a) +if(B.c.ba(J.p(s.h(a,r)),"http"))s.n(a,"url",J.pn(s.h(a,r),"?width="+A.c(s.h(a,"width"))+"&height="+A.c(s.h(a,"height")))) +else s.n(a,"url","http://"+this.a.a.z3()+"/server/files/gcodes/"+A.c(s.h(a,r))+"?width="+A.c(s.h(a,"width"))+"&height="+A.c(s.h(a,"height")))}}, +$S:16} +A.aEy.prototype={ +$1(a){return this.aih(a)}, +aih(a){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c +var $async$$1=A.j(function(b,a0){if(b===1){o=a0 +s=p}while(true)switch(s){case 0:e=Date.now() +d=n.b +A.u("[Device]LavaDevice heartbeatDetection Timer 3, _heartbeatDetectionCount: "+d.go,new A.aS(e,0,!1));++d.go +p=4 +e=A.a(["machine_state_manager"],t.s) +m=new A.CY($.d8().aP(),e) +s=7 +return A.f(d.b.dB(m,0,2),$async$$1) +case 7:l=a0 +if(l==null){s=1 +break}k=A.bpu(l) +e=n.a +if(k.a===!0)e.a=!0 +else e.a=!1 +e=d.w +if(!e&&!d.x){d.x=!0 +A.u("[Device]LavaDevice heartbeatDetection, printerStateSubscribe, _printerSubscribeResult:"+e+", _printerSubscribing: true",null) +d.wp() +d.zf()}if(J.i(l,"result")!=null&&t.f.b(J.i(l,"result"))){e=J.i(l,"result") +i=J.a0(e) +h=i.h(e,"state") +if(h==null)h="" +i.h(e,"state_message") +i.h(e,"hostname") +i.h(e,"software_version") +i.h(e,"cpu_info") +i.h(e,"klipper_path") +i.h(e,"python_path") +i.h(e,"log_file") +i.h(e,"config_file") +i.h(e,"user_id") +i.h(e,"group_id") +i.h(e,"process_id") +g=new A.aNg(h) +d.at=g +e=d.ay +if(!(e===B.aP||e===B.av)){d.ay=B.aP +d.a9s(g)}}if(!d.f)d.tr() +p=2 +s=6 +break +case 4:p=3 +c=o +j=A.v(c) +e=J.p(j) +i=$.ac() +i.a3("[Device]LavaDevice heartbeatDetection error: "+e) +e=n.a +if(e.a){e.a=!1 +i.a3("[Device]LavaDevice heartbeatDetection heartbeatDetectionTimer isActive == false") +s=1 +break}if(d.gho()===B.eM&&!e.a){A.u("try connect again from heartbeat",null) +d.b.ja(A.w(t.N,t.z))}e=d.ax +if((e==null?null:e.b!=null)===!0){if(!d.x)d.w=!1 +d.ay=B.Y_ +d.aMM()}else i.a3("[Device]LavaDevice heartbeatDetection _heartbeatDetectionTimer.isActive == false") +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$$1,r)}, +$S:682} +A.aEK.prototype={ +$1(a){return t.va.a(a)}, +$S:683} +A.aEz.prototype={ +$1(a){var s,r,q,p="LavaDevice _observeDeviceConnectStatus statusStream.listen, status:",o=",_connectionStatus:",n=this.a +n.ay=a +A.u(p+a.j(0)+o+n.ay.j(0),null) +s=n.cx +r=s.a +if(r.a==="")r.ahs(n.a.w) +q=r.a +if(q!==""&&q!==n.a.w){q=n.a +A.u(p+a.j(0)+o+n.ay.j(0)+", deviceModulesStatus."+r.a+" != model."+q.w,null) +A.dE("deviceModulesStatus."+r.a+" != model."+q.w)}s.cj(r.Yv(n.ay))}, +$S:684} +A.aEA.prototype={ +$1(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,a8,a9,b0,b1,b2,b3,b4,b5,b6,b7,b8,b9,c0,c1,c2,c3,c4=this,c5=null,c6="action",c7="method: notify_history_changed, action: ",c8="notify_device_info_update",c9="exceptions" +try{b7=t.f +if(b7.b(d0)){b8=J.a0(d0) +s=b8.h(d0,"params") +b9=b8.h(d0,"method") +r=b9==null?"":b9 +q=b8.h(d0,"jsonrpc") +if(!J.e(q,"2.0")){A.u("support jsonrpc 2.0, \n message: "+A.c(d0),c5) +return}if(J.e(r,"updateTopic")&&b7.b(s)&&J.cO(s,"sn")){b7=c4.a +b7.r=!0 +b7.u_() +return}if(J.e(r,"notify_user_created")||J.e(r,"notify_user_deleted")||J.e(r,"notify_user_logged_out")){p=J.i(s,0) +A.u(J.p(p),c5)}else if(J.e(r,"notify_filelist_changed")&&t.j.b(s)&&J.aM(s)===1&&b7.b(J.i(s,0))){o=J.i(s,0) +A.u(J.p(o),c5) +switch(J.i(o,c6)){case"create_file":case"create_dir":case"delete_file":case"delete_dir":case"move_file":case"move_dir":case"modify_file":case"root_update":break}}else if(J.e(r,"notify_history_changed")&&t.j.b(s)&&J.aM(s)===1&&b7.b(J.i(s,0))){if(b7.b(J.i(s,0))){n=J.i(s,0) +switch(J.i(n,c6)){case"added":case"finished":b7=c4.a +b7.xQ() +b7.CW.aho(n) +b8=b7.CW.a +b7.aNQ(b8.a+":"+b8.b) +b8=b7.cx +m=b8.a +c0=m +c1=b7.CW +c2=c1.c +c3=A.aNb(c2.d) +m=c0.b0R(c1.d,c1.cx,c1.CW,c1.ay,c1.Q,c1.as,c1.ch,b7.fy,c3,c2,c1.ax,c1.w,c1.f,c1.a) +b8.cj(m) +if(J.e(J.i(n,c6),"finished"))A.cx(J.i(n,c6)) +break +case"create_file":A.u(c7+A.c(J.i(n,c6)),c5) +break +default:A.u(c7+A.c(J.i(n,c6)),c5) +break}}else if(typeof J.i(s,0)=="string"){l=J.bqT(J.i(s,0),A.bB("^//\\s*",!0,!1,!1),"") +A.cx("1 "+A.c(l))}}else if(J.e(r,"notify_gcode_response")){if(t.j.b(s)&&J.aM(s)===1&&typeof J.i(s,0)=="string"){k=J.i(s,0) +c4.a.Ca(k,B.a0) +j=J.bqT(k,A.bB("^//\\s*",!0,!1,!1),"") +A.cx("2 "+A.c(j))}return}else if(J.e(r,"notify_proc_stat_update"))return +else if(J.e(r,"notify_file_pull_progress"))if(t.j.b(s)&&J.aM(s)===1&&b7.b(J.i(s,0)))try{i=J.i(s,0) +A.u("notify_file_pull_progress "+A.c(i),c5) +h=J.i(i,"state") +switch(h){case"ready":g=J.i(i,"path") +c4.a.dy.jE(new A.dy(1,g,!0,!1,c5,c5,!1,c5)) +break +case"started":c4.a.dy.jE(new A.dy(1,c5,!0,!1,c5,c5,!0,c5)) +break +case"downloading":b7=c4.a +if((b7.dy.a.c&4)!==0)b7.dy=new A.mZ(new A.cd(c5,c5,t.L_),t.KQ) +f=J.i(i,"percent") +A.u("downloading progress "+A.c(f),c5) +b7=b7.dy +b8=J.i(i,"path") +if(b8==null)b8="" +b7.xC(0,new A.dy(f/100,c5,!1,!1,c5,b8,!1,c5)) +break +case"error":A.u("downloading error "+A.c(i),c5) +e=J.i(i,"message") +d=new A.dy(0,c5,!0,!0,e,c5,!1,c5) +c4.a.dy.jE(d) +break +case"pending":A.u(u.C+A.c(i),c5) +break +default:break}}catch(a7){c=A.v(a7) +b7=J.p(c) +$.ac().a3("notify_file_pull_progress error: "+b7)}else{A.dE("notify_file_pull_progress push params that not as expected.\n "+J.p(s)) +return}else if(J.e(r,"notify_klippy_ready")||J.e(r,"notify_klippy_shutdown")||J.e(r,"notify_klippy_disconnected")){A.u(r,c5) +return}else if(J.e(r,"notify_job_queue_changed")&&t.j.b(s)&&J.aM(s)===1&&b7.b(J.i(s,0))){b=J.i(s,0) +A.u(J.p(b),c5) +switch(J.i(b,c6)){case"state_changed":break +case"jobs_added":break +case"jobs_removed":break +case"job_loaded":break}}else if(J.e(r,"notify_link_mode_update")){A.u("notify_link_mode_update changed notify "+A.c(s),c5) +a=!1 +if(t.j.b(s)&&b7.b(J.i(s,0))){a0=J.i(J.i(s,0),"link_mode") +if(J.e(a0,"lan")&&c4.a.a.fy.eP())a=!0 +if(J.e(a0,"wan")&&c4.a.a.fy.eO())a=!0}if(a){A.u("modeChange true, change to discontinue",c5) +b7=c4.a.cx +a1=b7.a +a1=a1.Yv(B.Y0) +b7.cj(a1)}}else if(J.e(r,"notify_logout")){A.u("notify_logout changed notify "+A.c(s),c5) +if(t.j.b(s)&&b7.b(J.i(s,0))){a2=J.i(J.i(s,0),"userid") +if(a2!=null){A.u("notify_logout _logoutStream: ******",c5) +b7=c4.a +b8=b7.a +c0=b8.w +b7.db.q(0,A.C(["userid",a2,"action","logout","sn",c0,"ip",b8.d,"key",c0],t.N,t.z))}}}else if(J.e(r,c8)){A.u("notify_device_info_update changed notify "+A.c(s),c5) +if(t.j.b(s)&&b7.b(J.i(s,0))){a3=J.i(J.i(s,0),"device_name") +if(a3!=null){A.u("LavaDevice notify_device_info_update setDeviceName: "+A.c(a3),c5) +c4.a.a.Zz(J.p(a3),c8)}}}else if(J.e(r,"notify_exception_notification")){b8=t.j +if(b8.b(s)&&b7.b(J.i(s,0))){b7=t.a +a4=b7.a(J.i(s,0)) +a5=A.a([],t.qN) +if(b8.b(J.i(a4,c9))){a6=b8.a(J.i(a4,c9)) +for(b8=J.ay(a6);b8.u();){a7=b8.gI(b8) +if(b7.b(a7))J.dN(a5,A.bls(a7))}}b7=c4.a.cx +a8=b7.a +a8=a8.Yw(a5) +b7.cj(a8)}}else if(J.e(r,"notify_exception_status")){b8=t.j +if(b8.b(s)&&b7.b(J.i(s,0))){b7=t.a +a9=b7.a(J.i(s,0)) +b0=A.a([],t.qN) +if(b8.b(J.i(a9,c9))){b1=b8.a(J.i(a9,c9)) +for(b8=J.ay(b1);b8.u();){b2=b8.gI(b8) +if(b7.b(b2))J.dN(b0,A.bls(b2))}}b7=c4.a.cx +b3=b7.a +b3=b3.Yw(b0) +b7.cj(b3)}}if(t.j.b(s)&&J.aM(s)===2&&t.a.b(J.i(s,0))&&typeof J.i(s,1)=="number"){b4=t.a.a(J.i(s,0)) +b7=c4.a +b7.CW.aho(b4) +b8=b7.cx +b5=b8.a +c0=b5 +c1=b5.b!==B.aP?B.aP:c5 +c2=b7.CW +c3=c2.c +b5=c0.b0T(c2.z,c2.x,c1,c2.d,c2.b,c2.y,c2.cx,c2.CW,c2.r,c2.e,c2.ay,c2.as,c2.ch,b7.fy,A.aNb(c3.d),c3,c2.ax,c2.w,c2.f,c2.a) +if(b5.a!=="")b5.toString +b8.cj(b5) +b7.xQ()}else A.u("The list does not match the expected types, params: "+J.p(s),c5)}}catch(a7){b6=A.v(a7) +b7=J.p(b6) +b8=J.p(d0) +$.ac().a3("observeDeviceMessages error: "+b7+", message: "+b8)}}, +$S:16} +A.aEF.prototype={ +$1(a){return t.f.b(a)&&J.e(J.i(a,"name"),"gcodes")}, +$S:48} +A.aEG.prototype={ +$0(){return null}, +$S:4} +A.aEE.prototype={ +$1(a){var s,r="relative_path" +if(t.f.b(a)&&J.cO(a,r)){s=J.a0(a) +if(B.c.ba(J.p(s.h(a,r)),"http"))s.n(a,"url",J.pn(s.h(a,r),"?width="+A.c(s.h(a,"width"))+"&height="+A.c(s.h(a,"height")))) +else s.n(a,"url","http://"+this.a.a.z3()+"/server/files/gcodes/"+A.c(s.h(a,r))+"?width="+A.c(s.h(a,"width"))+"&height="+A.c(s.h(a,"height")))}}, +$S:16} +A.we.prototype={ +ao(){var s=t.z,r=J.eX(this.a,new A.as0(),s) +return A.C(["color_data",A.a8(r,!0,r.$ti.i("aN.E"))],t.N,s)}, +eV(a){var s=J.i(a,"color_data") +if(s==null||!t.j.b(s))return +if(!A.d7(this.a,s))this.a=s}} +A.as0.prototype={ +$1(a){return a.ao()}, +$S:78} +A.AS.prototype={ +gyO(){var s=this +return B.c.fk(B.e.j(s.d),4,"0")+B.c.fk(B.e.j(s.a),4,"0")+B.c.fk(B.e.j(s.b),4,"0")+B.c.fk(B.e.j(s.c),4,"0")}, +ao(){var s=this +return A.C(["id",s.a,"index",s.b,"code",s.c,"level",s.d,"message",s.e],t.N,t.z)}, +j(a){var s=this +return"DeviceException(id: "+s.a+", index: "+s.b+", code: "+s.c+", level: "+s.d+", message: "+s.e+")"}} +A.auH.prototype={ +aho(a){J.fz(J.rX(a),new A.auJ(this,a))}} +A.auJ.prototype={ +$1(c6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d="state",c="printing_time",b="state_message",a="file_position",a0="file_size",a1="file_path",a2="is_active",a3="progress",a4="speed_factor",a5="extrude_factor",a6="absolute_coordinates",a7="absolute_extrude",a8="homing_origin",a9="position",b0="gcode_position",b1="homed_axes",b2="axis_minimum",b3="axis_maximum",b4="print_time",b5="estimated_print_time",b6="extruder",b7="max_velocity",b8="max_accel",b9="minimum_cruise_ratio",c0="square_corner_velocity",c1="metadata",c2="temperature",c3="can_extrude",c4="pressure_advance",c5="smooth_time" +switch(c6){case"idle_timeout":s=e.a.ay +r=J.i(e.b,c6) +q=J.a0(r) +if(q.h(r,d)!=null)s.b=q.h(r,d) +if(q.h(r,c)!=null)s.a=q.h(r,c) +break +case"motion_report":e.a.ch.eV(J.i(e.b,c6)) +break +case"configfile":J.i(e.b,c6) +break +case"webhooks":s=e.a.a +r=J.i(e.b,c6) +q=J.a0(r) +if(q.h(r,d)!=null)s.a=q.h(r,d) +if(q.h(r,b)!=null)s.b=q.h(r,b) +break +case"virtual_sdcard":s=e.a.f +r=J.i(e.b,c6) +q=J.a0(r) +if(q.h(r,a)!=null)s.a=q.h(r,a) +if(q.h(r,a0)!=null)s.b=q.h(r,a0) +if(q.h(r,a1)!=null)s.c=q.h(r,a1) +if(q.h(r,a2)!=null)s.d=q.h(r,a2) +if(q.h(r,a3)!=null)s.e=q.h(r,a3) +break +case"print_stats":e.a.c.eV(J.i(e.b,c6)) +break +case"display_status":e.a.d.eV(J.i(e.b,c6)) +break +case"gcode_move":s=J.i(e.b,c6) +r=J.a0(s) +if(r.h(s,a4)!=null)e.a.r.a=r.h(s,a4) +if(r.h(s,"speed")!=null)r.h(s,"speed") +if(r.h(s,a5)!=null)r.h(s,a5) +if(r.h(s,a6)!=null)r.h(s,a6) +if(r.h(s,a7)!=null)r.h(s,a7) +if(r.h(s,a8)!=null)A.cN(r.h(s,a8),!0,t.Ci) +if(r.h(s,a9)!=null)A.cN(r.h(s,a9),!0,t.Ci) +if(r.h(s,b0)!=null)A.cN(r.h(s,b0),!0,t.Ci) +break +case"heater_bed":e.a.e.eV(J.i(e.b,c6)) +break +case"toolhead":s=J.i(e.b,c6) +r=J.a0(s) +if(r.h(s,b1)!=null)r.h(s,b1) +if(r.h(s,b2)!=null)r.h(s,b2) +if(r.h(s,b3)!=null)r.h(s,b3) +if(r.h(s,b4)!=null)r.h(s,b4) +if(r.h(s,"stalls")!=null)r.h(s,"stalls") +if(r.h(s,b5)!=null)r.h(s,b5) +if(r.h(s,b6)!=null){q=r.h(s,b6) +e.a.w.r=q +A.uQ(q)}if(r.h(s,a9)!=null)r.h(s,a9) +if(r.h(s,b7)!=null)r.h(s,b7) +if(r.h(s,b8)!=null)r.h(s,b8) +if(r.h(s,b9)!=null)r.h(s,b9) +if(r.h(s,c0)!=null)r.h(s,c0) +break +case"led cavity_led":e.a.x.eV(J.i(e.b,c6)) +break +case"fan":e.a.y.eV(J.i(e.b,c6)) +break +case"fan_generic cavity_fan":e.a.z.eV(J.i(e.b,c6)) +break +case"print_task_config":e.a.ax.eV(J.i(e.b,c6)) +break +case"filament_detect":e.a.cx.eV(J.i(e.b,c6)) +break +case"filament_feed left":e.a.CW.eV(J.i(e.b,c6)) +break +case"filament_feed right":e.a.CW.eV(J.i(e.b,c6)) +break +case"machine_state_manager":e.a.as.eV(J.i(e.b,c6)) +break +case"job":s=e.a +r=e.b +q=J.a0(r) +s.Q=q.h(r,c6) +if(J.e(J.i(q.h(r,c6),"action"),"added")||J.e(J.i(q.h(r,c6),"action"),"finished")){p=J.i(q.h(r,c6),"status") +o=J.i(q.h(r,c6),"filament_used") +n=J.i(q.h(r,c6),"total_duration") +m=J.i(q.h(r,c6),"filename") +l=J.i(q.h(r,c6),c1)!=null?J.i(J.i(q.h(r,c6),c1),"slicer"):"" +k=J.i(q.h(r,c6),c1)!=null?J.i(J.i(q.h(r,c6),c1),"thumbnails"):null +j=t.N +i=t.z +s.c.eV(A.C(["state",p,"filament_used",o,"total_duration",n,"filename",m,"slicer",l,"thumbnails",k],j,i)) +if(J.e(J.i(q.h(r,c6),"status"),"completed"))s.d.eV(A.C(["progress",1,"message","completed"],j,i))}break +default:h=A.bB("^extruder(\\d*)$",!0,!1,!1) +if(h.b.test(c6)){s=e.a.b +if(s.N(0,c6)){s=s.h(0,c6) +s.toString +r=J.i(e.b,c6) +q=J.a0(r) +if(q.h(r,c2)!=null)if(J.bqF(J.bqH(J.VX(q.h(r,c2),s.b)),0.5))s.b=q.h(r,c2) +if(q.h(r,"target")!=null)s.c=q.h(r,"target") +if(q.h(r,"power")!=null)s.d=q.h(r,"power") +if(q.h(r,c3)!=null)s.e=q.h(r,c3) +if(q.h(r,c4)!=null)s.f=q.h(r,c4) +if(q.h(r,c5)!=null)s.r=q.h(r,c5) +if(q.h(r,d)!=null)s.w=q.h(r,d)}else{g=A.uQ(c6) +if(g>=0){f=A.bsW(J.i(e.b,c6)) +f.a=g +s.n(0,c6,f)}}return}A.dJ("Unknown module: "+c6)}}, +$S:19} +A.auI.prototype={ +$1(a){var s,r,q=a.a,p=A.bB("^extruder(\\d*)$",!0,!1,!1) +if(p.b.test(q)){s=A.uQ(q) +if(s>=0){r=A.bsW(a.b) +r.a=s +this.a.n(0,q,r)}}}, +$S:685} +A.IE.prototype={ +eV(a){var s="progress",r=J.a0(a) +if(r.h(a,s)!=null)r.h(a,s) +if(r.h(a,"message")!=null)r.h(a,"message")}} +A.mK.prototype={ +ao(){var s=this,r=s.a +return A.C(["name","Tool"+(r+1),"temperature",s.b,"target",s.c,"power",s.d,"canExtruder",s.e,"pressureAdvance",s.f,"smoothTime",s.r,"state",s.w,"index",r],t.N,t.z)}} +A.wP.prototype={ +eV(a){var s=J.a0(a) +if(s.h(a,"speed")!=null)this.a=s.h(a,"speed") +if(s.h(a,"rpm")!=null)this.b=s.h(a,"rpm")}, +ao(){return A.C(["speed",this.a,"rpm",this.b],t.N,t.z)}} +A.ayw.prototype={ +ao(){var s=this.a,r=A.af(s).i("ad<1,ao>") +return A.C(["info",A.a8(new A.ad(s,new A.ayz(),r),!0,r.i("aN.E")),"state",this.b,"config",this.c],t.N,t.z)}, +eV(a){var s=J.dI(a) +if(s.N(a,"info"))this.a=J.nX(J.VZ(s.h(a,"info"),new A.ayA())) +if(s.N(a,"state"))this.b=J.nX(J.VZ(s.h(a,"state"),new A.ayB())) +if(s.N(a,"config"))this.c=s.h(a,"config")}} +A.ayx.prototype={ +$1(a){return A.bsZ(a)}, +$S:289} +A.ayy.prototype={ +$1(a){return a}, +$S:78} +A.ayz.prototype={ +$1(a){return a.ao()}, +$S:687} +A.ayA.prototype={ +$1(a){return A.bsZ(a)}, +$S:289} +A.ayB.prototype={ +$1(a){return A.ds(a)}, +$S:688} +A.pY.prototype={ +ao(){var s=this +return A.C(["vendor",s.a,"main_type",s.b,"sub_type",s.c,"color_nums",s.d,"rgb1",s.e,"rgb2",s.f,"rgb3",s.r,"rgb4",s.w,"rgb5",s.x,"alpha",s.y,"argb_color",s.z,"diameter",s.Q,"weight",s.as,"length",s.at,"drying_temp",s.ax,"drying_time",s.ay,"hotend_max_temp",s.ch,"hotend_min_temp",s.CW,"bed_temp",s.cx,"first_layer_temp",s.cy,"other_layer_temp",s.db,"sn",s.dx,"mf_date",s.dy,"official",s.fr,"tag_type",s.fx,"card_uid",s.fy],t.N,t.z)}, +gt(a){return this.at}} +A.ayC.prototype={ +gaTc(){var s,r,q=A.qg(this.a,t.N,t.ik) +q.G(0,this.b) +s=A.y(q).i("aR<1>") +r=A.a8(new A.aR(q,s),!0,s.i("B.E")) +B.b.fZ(r,new A.ayF()) +s=A.af(r).i("ad<1,k4>") +return A.a8(new A.ad(r,new A.ayG(q),s),!0,s.i("aN.E"))}, +eV(a){var s="filament_feed left",r="filament_feed right",q=J.dI(a) +if(q.N(a,s))J.fz(t.a.a(q.h(a,s)),new A.ayJ(this)) +if(q.N(a,r))J.fz(t.a.a(q.h(a,r)),new A.ayK(this))}, +ao(){var s=this.a,r=t.N,q=t.a,p=this.b +return A.C(["filament_feed left",s.kd(s,new A.ayH(),r,q),"filament_feed right",p.kd(p,new A.ayI(),r,q)],r,t.z)}} +A.ayF.prototype={ +$2(a,b){return B.e.bO(A.uQ(a),A.uQ(b))}, +$S:689} +A.ayG.prototype={ +$1(a){var s=this.a.h(0,a) +s.toString +return s}, +$S:690} +A.ayD.prototype={ +$1(a){return J.W_(a,new A.ayE(),t.N,t.ik)}, +$S:691} +A.ayE.prototype={ +$2(a,b){return new A.aO(a,A.bm_(t.a.a(b),A.uQ(a)),t.S_)}, +$S:692} +A.ayJ.prototype={ +$2(a,b){var s=this.a.a +if(s.N(0,a)){s=s.h(0,a) +if(s!=null)s.eV(b)}else s.n(0,a,A.bm_(t.a.a(b),A.uQ(a)))}, +$S:33} +A.ayK.prototype={ +$2(a,b){var s=this.a.b +if(s.N(0,a)){s=s.h(0,a) +if(s!=null)s.eV(b)}else s.n(0,a,A.bm_(t.a.a(b),A.uQ(a)))}, +$S:33} +A.ayH.prototype={ +$2(a,b){return new A.aO(a,b.ao(),t.V5)}, +$S:290} +A.ayI.prototype={ +$2(a,b){return new A.aO(a,b.ao(),t.V5)}, +$S:290} +A.k4.prototype={ +eV(a){var s=this,r="filament_detected",q="disable_auto",p="channel_state",o="channel_error",n=J.dI(a) +if(n.N(a,r))s.b=n.h(a,r) +if(n.N(a,q))s.c=n.h(a,q) +if(n.N(a,p))s.d=n.h(a,p) +if(n.N(a,o))s.e=n.h(a,o) +if(n.N(a,"index"))s.a=n.h(a,"index")}, +ao(){var s=this +return A.C(["filament_detected",s.b,"disable_auto",s.c,"channel_state",s.d,"channel_error",s.e,"index",s.a],t.N,t.z)}, +j(a){var s=this +return"ExtruderFilamentStatus(index: "+s.a+", filamentDetected: "+s.b+", disableAuto: "+s.c+", channelState: "+s.d+", channelError: "+s.e+")"}} +A.aAp.prototype={} +A.Bx.prototype={ +ao(){return A.C(["name","heater_bed","temperature",this.a,"target",this.b,"power",this.c],t.N,t.z)}, +j(a){return"HeaterBed(temperature: "+A.c(this.a)+", target: "+A.c(this.b)+", power: "+A.c(this.c)+")"}, +eV(a){var s=this,r="temperature",q=J.a0(a) +if(q.h(a,r)!=null)if(J.bqF(J.bqH(J.VX(q.h(a,r),s.a)),0.5))s.a=q.h(a,r) +if(q.h(a,"target")!=null)s.b=q.h(a,"target") +if(q.h(a,"power")!=null)s.c=q.h(a,"power")}} +A.aBX.prototype={} +A.JV.prototype={ +ao(){return A.C(["printing_time",this.a,"state",this.b],t.N,t.z)}} +A.aFx.prototype={ +ao(){return A.C(["main_state",this.a,"action_code",this.b],t.N,t.z)}, +j(a){return"MachineStateManager(mainState: "+A.c(this.a)+", actionCode: "+A.c(this.b)+")"}, +eV(a){var s,r="main_state",q="action_code" +A.u("MachineStateManager updateInfo "+A.c(a),null) +s=J.a0(a) +if(s.h(a,r)!=null)this.a=s.h(a,r) +if(s.h(a,q)!=null)this.b=s.h(a,q)}} +A.a48.prototype={ +ao(){return A.C(["live_position",this.a,"live_velocity",this.b,"live_extruder_velocity",this.c],t.N,t.z)}, +j(a){return"MotionReport{livePosition: "+A.c(this.a)+", liveVelocity: "+A.c(this.b)+", liveExtruderVelocity: "+A.c(this.c)+"}"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.a48&&A.K(r)===A.K(b)&&A.d7(r.a,b.a)&&r.b===b.b&&r.c===b.c +else s=!0 +return s}, +gB(a){return(J.W(this.a)^B.d.gB(this.b)^B.d.gB(this.c))>>>0}, +eV(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +try{j=J.a0(a) +i=t.kc.a(j.h(a,"live_position")) +if(i==null)i=null +else{i=J.eX(i,new A.aIT(),t.Ci) +i=A.a8(i,!0,i.$ti.i("aN.E")) +i=new A.ij(i,A.af(i).i("ij<1,cX>"))}g.a=i==null?A.a([0,0,0,0],t.a0):i +s=null +r=j.h(a,"live_velocity") +$label0$0:{q=null +if(typeof r=="number"){q=r +s=q +break $label0$0}p=null +if(typeof r=="string"){p=r +i=A.bjF(p) +s=i==null?0:i +break $label0$0}s=0 +break $label0$0}g.b=s +o=null +n=j.h(a,"live_extruder_velocity") +$label1$1:{m=null +if(typeof n=="number"){m=n +o=m +break $label1$1}l=null +if(typeof n=="string"){l=n +s=A.bjF(l) +o=s==null?0:s +break $label1$1}o=0 +break $label1$1}g.c=o}catch(h){k=A.v(h) +A.as().$1("\u6570\u636e\u89e3\u6790\u5931\u8d25: "+A.c(k)) +g.a=A.a([0,0,0,0],t.a0) +g.c=g.b=0}}} +A.aIT.prototype={ +$1(a){var s +if(typeof a=="number")return a +if(typeof a=="string"){s=A.bjF(a) +return s==null?0:s}return 0}, +$S:694} +A.Mm.prototype={ +eV(a){var s=this,r="total_duration",q="print_duration",p="filament_used",o="filename",n="fileMetadata",m=J.a0(a) +if(m.h(a,"state")!=null)s.d=m.h(a,"state") +if(m.h(a,r)!=null)s.a=m.h(a,r) +if(m.h(a,q)!=null)s.b=m.h(a,q) +if(m.h(a,p)!=null)s.c=m.h(a,p) +if(m.h(a,"message")!=null)s.e=m.h(a,"message") +if(m.h(a,"info")!=null)s.f=m.h(a,"info") +if(m.h(a,o)!=null)s.r=m.h(a,o) +if(m.h(a,n)!=null)s.w=m.h(a,n)}, +j(a){var s=this +return"PrintStats(totalDuration: "+A.c(s.a)+", printDuration: "+A.c(s.b)+", filamentUsed: "+A.c(s.c)+", state: "+s.d+", message: "+s.e+", filename: "+s.r+", fileMetadata: "+A.c(s.w)+", info: "+A.c(s.f)+")"}} +A.qE.prototype={ +gaTd(){var s,r,q=this,p=t.N +if(J.cT(q.e)){p=J.eX(q.d,new A.aNc(),p) +s=A.a8(p,!0,p.$ti.i("aN.E"))}else{p=J.eX(q.e,new A.aNd(),p) +s=A.a8(p,!0,p.$ti.i("aN.E"))}r=A.a([],t.H7) +new A.mW(s,A.af(s).i("mW<1>")).az(0,new A.aNe(q,r)) +return r}, +yV(){var s=this +return J.cT(s.a)&&J.cT(s.b)&&J.cT(s.c)&&J.cT(s.e)&&J.cT(s.f)&&J.cT(s.r)&&J.cT(s.Q)&&J.cT(s.as)&&J.cT(s.at)}, +eV(a2){var s,r,q,p=this,o="filament_vendor",n="filament_type",m="filament_color",l="filament_color_rgba",k="filament_edit",j="extruder_map_table",i="filament_sub_type",h="filament_exist",g="filament_official",f="extruders_used",e="time_lapse_camera",d="auto_bed_leveling",c="flow_calibrate",b="shaper_calibrate",a="auto_replenish_filament",a0="can_auto_replenish",a1="auto_replenish_index" +try{r=J.a0(a2) +if(r.h(a2,o)!=null)p.a=r.h(a2,o) +if(r.h(a2,n)!=null)p.b=r.h(a2,n) +if(r.h(a2,m)!=null)p.d=r.h(a2,m) +if(r.h(a2,l)!=null)p.e=r.h(a2,l) +if(r.h(a2,k)!=null)p.Q=r.h(a2,k) +if(r.h(a2,j)!=null)p.r=r.h(a2,j) +if(r.h(a2,i)!=null)p.c=r.h(a2,i) +if(r.h(a2,h)!=null)p.as=r.h(a2,h) +if(r.h(a2,g)!=null)p.f=r.h(a2,g) +if(r.h(a2,f)!=null)p.at=r.h(a2,f) +if(r.h(a2,e)!=null)p.w=r.h(a2,e) +if(r.h(a2,d)!=null)p.x=r.h(a2,d) +if(r.h(a2,c)!=null)p.y=r.h(a2,c) +if(r.h(a2,b)!=null)p.z=r.h(a2,b) +if(r.h(a2,a)!=null)p.ax=r.h(a2,a) +if(r.h(a2,a0)!=null)p.ay=r.h(a2,a0) +if(r.h(a2,a1)!=null)p.ch=r.h(a2,a1)}catch(q){s=A.v(q) +r=A.ae("PrintTaskConfig.updateInfo error: "+J.p(s)) +throw A.d(r)}finally{A.as().$1("PrintTaskConfig.updateInfo success")}}, +ao(){var s=this +return A.C(["filament_vendor",s.a,"filament_type",s.b,"filament_sub_type",s.c,"filament_color",s.d,"filament_color_rgba",s.e,"filament_official",s.f,"extruder_map_table",s.r,"extruders_used",s.at,"filament_edit",s.Q,"filament_exist",s.as,"time_lapse_camera",s.w,"auto_bed_leveling",s.x,"flow_calibrate",s.y,"shaper_calibrate",s.z,"auto_replenish_filament",s.ax,"can_auto_replenish",s.ay,"auto_replenish_index",s.ch],t.N,t.z)}, +WU(a){var s=this +return!A.d7(s.a,a.a)||!A.d7(s.b,a.b)||!A.d7(s.c,a.c)||!A.d7(s.d,a.d)||!A.d7(s.e,a.e)||!A.d7(s.f,a.f)||!A.d7(s.Q,a.Q)||!A.d7(s.as,a.as)||!A.d7(s.r,a.r)||!A.d7(s.at,a.at)}, +ix(){var s=this,r=s.a,q=s.b,p=s.c,o=s.d,n=s.e,m=s.f,l=s.r,k=s.Q,j=s.as,i=s.w,h=s.x,g=s.y,f=s.z,e=s.ax,d=s.ay +return A.bv9(h,e,s.ch,d,l,s.at,o,n,k,j,m,p,q,r,g,f,i)}, +j(a){var s=this +return"PrintTaskConfig(filamentVendor: "+J.p(s.a)+", filamentType: "+J.p(s.b)+", filamentSubType: "+J.p(s.c)+", filamentOfficial: "+J.p(s.f)+", filamentColor: "+J.p(s.d)+", filamentColorRgba: "+J.p(s.e)+", extruderMapTable: "+J.p(s.r)+", timeLapseCameraFlag: "+s.w+", autoBedLevelingFlag: "+s.x+", filamentEdit: "+J.p(s.Q)+", filamentExist: "+J.p(s.as)+", extrudersUsed: "+J.p(s.at)+", autoReplenishFilamentFlag: "+s.ax+", canAutoReplenishFlag: "+s.ay+", autoReplenishIndex: "+s.ch+")"}} +A.aNc.prototype={ +$1(a){return A.brC(A.jh(a))}, +$S:63} +A.aNd.prototype={ +$1(a){return A.brC(A.jh(a))}, +$S:63} +A.aNe.prototype={ +$2(a,b){var s,r="NONE",q=A.w(t.N,t.z) +q.n(0,"index",a) +q.n(0,"color",b) +s=this.a +q.n(0,"vendor",J.aM(s.a)>a?J.p(J.i(s.a,a)):r) +q.n(0,"material",J.aM(s.b)>a?J.p(J.i(s.b,a)):r) +q.n(0,"serie",J.aM(s.c)>a?J.p(J.i(s.c,a)):r) +q.n(0,"official",J.aM(s.f)>a&&J.i(s.f,a)) +q.n(0,"filamentEdit",J.aM(s.Q)>a&&J.i(s.Q,a)) +q.n(0,"filamentExist",J.aM(s.as)>a&&J.i(s.as,a)) +this.b.push(q)}, +$S:695} +A.aNg.prototype={} +A.Pd.prototype={} +A.aVN.prototype={ +j(a){var s=this +return"VirtualSdcard(filePosition: "+s.a+", fileSize: "+s.b+", filePath: "+s.c+", isActive: "+s.d+", progress: "+A.c(s.e)+")"}} +A.aX0.prototype={} +A.aC2.prototype={} +A.Ld.prototype={ +oB(a){return a.cS(0)}, +D0(a){return B.a7.jo(0,a,null)}} +A.aaj.prototype={ +oB(a){return a.cS(0)}, +D0(a){var s,r,q,p,o,n=null,m="event_id",l="data",k="method",j="error",i="seqid",h=t.N,g=t.z,f=A.C(["jsonrpc","2.0"],h,g) +try{s=A.w(h,g) +if(typeof a=="string")s=B.a7.jo(0,a,n) +else if(t.f.b(a))s=t.a.a(a) +else{h=J.dd(a) +A.as().$1("[WCP]WcpPtotocol receive message error: not match format, data.runtimeType: "+h.gfl(a).j(0)+", data: "+h.j(a)) +return f}h=t.a +r=h.a(J.i(s,"header")) +q=h.a(J.i(s,"payload")) +if(J.cO(r,m)&&J.i(r,m)!=null){if(J.i(J.i(q,l),l)!=null&&typeof J.i(J.i(q,l),l)=="string"){A.as().$1("[WCP]WcpPtotocol receive message, \u5904\u7406wcp\u6ca1\u6709setEngine\u4e4b\u524d\u7684\u6570\u636e: "+A.c(J.i(J.i(q,l),l))) +h=A.bP3(J.i(J.i(q,l),l)) +return h}h=J.i(q,l) +h=h==null?n:J.i(h,k) +if(h==null)h="" +J.bT(f,k,h) +if(J.e(J.i(q,"code"),200)){h=J.i(q,l) +h=h==null?n:J.i(h,l) +J.bT(f,"params",h)}else{h=J.i(q,l) +J.bT(f,j,A.a(["!! "+A.c(h==null?n:J.i(h,"message"))],t.s))}}else if(J.cO(r,i)&&J.i(r,i)!=null){J.bT(f,"id",J.i(r,i)) +if(J.e(J.i(q,"code"),200)){h=J.i(q,l) +if((h==null?n:J.i(h,k))!=null){h=J.i(q,l) +if((h==null?n:J.i(h,j))!=null){h=J.i(q,l) +h=h==null?n:J.i(h,j) +J.bT(f,j,h)}else{h=J.i(q,l) +h=h==null?n:J.i(h,l) +if(h==null)h="ok" +J.bT(f,"result",h)}}else{h=J.i(q,l) +if(h==null)h="ok" +J.bT(f,"result",h)}}else J.bT(f,j,q)}else{A.as().$1("[WCP]WcpPtotocol receive message error: not match format, payload: "+J.p(q)) +return f}return f}catch(o){p=A.v(o) +A.as().$1("[WCP]WcpPtotocol receive message error: "+J.p(p)) +return f}}} +A.oP.prototype={ +aP(){var s,r=(this.a+1)%999999 +this.a=r +s=this.b+r +return s<0||s>9007199254740991?B.e.an(s,1e15):s}} +A.bdQ.prototype={} +A.av9.prototype={ +$1(a){A.as().$1("DiscoveryService startMachineFind result: "+A.c(a))}, +$S:2} +A.ava.prototype={ +$1(a){A.as().$1("DiscoveryService startMachineFind error: "+J.p(a))}, +$S:2} +A.avb.prototype={ +$1(a){var s +if(a==null)return +s=a.a.h(0,"event_id") +s=s==null?null:J.mv(s,B.e1.geL()) +if(s==null?!1:s)$.av6=J.W_(J.i(a.b,"data"),new A.av8(),t.N,t.a)}, +$S:138} +A.av8.prototype={ +$2(a,b){var s="device_name",r=$.ji.h(0,a),q=r==null?null:r.a +if(q!=null&&t.f.b(b)&&J.e(J.i(b,"link_mode"),q.go)&&q.fr)J.bT(b,"connected",!0) +r=J.a0(b) +if(r.h(b,s)!=null&&!J.e(r.h(b,s),""))r.n(b,"name",r.h(b,s)) +return new A.aO(a,b,t.V5)}, +$S:696} +A.kT.prototype={ +D(){return"MoveDirectionType."+this.b}} +A.CU.prototype={ +D(){return"PrintAction."+this.b}} +A.H8.prototype={ +D(){return"BackHomeActionType."+this.b}, +Oe(){var s=A.bu("result") +switch(this.a){case 1:s.b="G28 X" +break +case 2:s.b="G28 Y" +break +case 3:s.b="G28 Z" +break +case 4:s.b="G28 X Y" +break +default:s.b="G28" +break}return s.b2()}} +A.Il.prototype={ +D(){return"DeviceAxis."+this.b}} +A.hd.prototype={ +D(){return"DeviceErrorType."+this.b}} +A.auC.prototype={ +$1(a){return a.c===this.a}, +$S:697} +A.auD.prototype={ +$0(){return A.V(A.ae(""+this.a+"-"+this.b))}, +$S:291} +A.k1.prototype={ +j(a){var s=this.b +if(s!=null)return s +return this.a.d}, +$ibm:1} +A.wR.prototype={} +A.z4.prototype={ +j(a){return"VenderMaterialModel(vendor: "+this.a+", material: "+this.b+", serie: "+this.c+")"}} +A.a8o.prototype={ +ao(){var s=this +return A.C(["fileName",s.a,"filamentColor",s.b,"filamentColorRgba",s.c,"filamentType",s.d,"filamentWeight",s.e,"estimateMaterial",800,"estimateTime",s.r,"fileCover",s.w,"thumbnails",s.x],t.N,t.z)}, +j(a){var s=this +return"SliceFileInfoModel(fileName: "+s.a+", filamentColor: "+A.c(s.b)+", filamentColorRgba: "+A.c(s.c)+", filamentType: "+A.c(s.d)+", filamentWeight: "+A.c(s.e)+", estimateMaterial: 800, estimateTime: "+A.c(s.r)+", fileCover: "+A.c(s.w)+", thumbnails: "+A.c(s.x)+")"}} +A.AU.prototype={ +aFD(){this.a1m()}, +a1m(){var s,r,q=this,p=q.e +if(p==null)return +s=p.ax.w +if(q.a===s&&q.b!=null)return +q.a=s +r=new Uint8Array(A.e7(A.a([149,92,52,243,91,38,72,68],t.t))) +A.u(" PasswordSaltManager setCurrentDevice: "+s,null) +$.bnf=s +if(s.length!==0&&!B.G.ga_(r))$.bng.n(0,s,r) +if($.aMl.N(0,s)&&$.aMk.N(0,s))q.b=A.bnh(s) +else q.b=A.bnh(s) +q.T()}, +m(){var s=this,r=s.e +if(r!=null)r.K(0,s.ga64()) +s.e=null +s.dN()}} +A.ar9.prototype={ +f_(a){return}} +A.ar8.prototype={ +ao(){return A.C(["enabled",!0,"intervalSeconds",30,"timeoutSeconds",10,"maxRetryCount",3,"autoRestart",!0],t.N,t.z)}} +A.avg.prototype={ +aW5(a){var s,r,q,p="0.9.0" +try{s=A.bNp(a,p) +return!s}catch(q){r=A.v(q) +A.u("checkIfVersionOutDated failed, error: "+J.p(r),null) +throw q}}, +FJ(a,b,c){return this.aku(a,b,!1)}, +aku(a,b,c){var s=0,r=A.n(t.H),q=this,p +var $async$FJ=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:if(!J.cO(q.a,a)){p=t.z +J.bT(q.a,a,A.w(p,p))}if(!J.cO(J.i(q.a,a),"version"))J.bT(J.i(q.a,a),"version",b) +J.bT(J.i(q.a,a),"notify",!1) +s=2 +return A.f(q.BH(),$async$FJ) +case 2:return A.l(null,r)}}) +return A.m($async$FJ,r)}, +aiW(a,b){var s=this,r="version" +if(J.cO(s.a,a)){if(!J.cO(J.i(s.a,a),r)||b!==J.i(J.i(s.a,a),r)){J.bT(J.i(s.a,a),r,b) +J.bT(J.i(s.a,a),"notify",!0)}return J.i(J.i(s.a,a),"notify")}else{J.bT(s.a,a,A.C(["version",b,"notify",!0],t.N,t.K)) +s.BH() +return!0}}, +H1(){var s=0,r=A.n(t.H),q=this +var $async$H1=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=2 +return A.f(q.I_(),$async$H1) +case 2:return A.l(null,r)}}) +return A.m($async$H1,r)}, +I_(){var s=0,r=A.n(t.H),q=this,p,o,n,m,l +var $async$I_=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:m=A +l=J +s=2 +return A.f(A.i7(),$async$I_) +case 2:n=m.dk(l.i(b.a,"devices_version_records")) +if(n==null){p=t.z +q.a=A.C(["data",A.w(p,p)],t.N,p)}else{o=A.zL(n,null) +p=J.dI(o) +if(p.N(o,"data"))q.a=t.a.a(p.h(o,"data"))}A.u("_devicesVersionMap loaded, "+A.c(q.a),null) +return A.l(null,r)}}) +return A.m($async$I_,r)}, +BH(){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$BH=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=2 +return A.f(A.i7(),$async$BH) +case 2:n=b +if(J.cT(q.a)){p=t.z +q.a=A.C(["data",A.w(p,p)],t.N,p)}o=B.a7.lx(q.a,null) +A.u("saving deviceMap "+o,null) +n.BN("String","devices_version_records",o) +return A.l(null,r)}}) +return A.m($async$BH,r)}} +A.WI.prototype={ +F(a){return new A.lQ(new A.aq8(this),null)}} +A.aq8.prototype={ +$2(a,b){var s,r,q,p,o=null,n=this.a,m=n.c,l=n.d +if(l==null){s=a.au(t.yS) +s=(s==null?B.wo:s).w}else s=l +r=A.uZ(o,o,1,o,A.ew(o,s,m),B.bn,B.i,o,B.aB,B.aX) +r.aWs(b.b) +q=r.b.a.c.gacA() +s=t.p +m=A.a([A.cf(A.X(m,1,q?B.al:B.Ph,o,o,l,o,o),1)],s) +if(!(q&&n.r!=null))p=n.f&&n.r!=null +else p=!0 +if(p)B.b.G(m,A.a([B.ce,A.fn(o,A.X(n.w,o,o,o,o,l,o,o),B.S,!1,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,n.r,o,o,o,o,o,o,!1,B.aV)],s)) +return A.bt(m,B.l,B.o,B.k)}, +$S:699} +A.Xi.prototype={ +aT(a,b){var s,r,q,p,o,n,m,l=$.ap().br(),k=this.d,j=B.d.dZ(b.b/k),i=B.d.dZ(b.a/k) +for(s=this.c,r=this.b,q=0;q52428800&&$.Q2.a!==0))break +this.aDj()}$.Q2.n(0,a,b) +$.Q0.n(0,a,new A.aS(Date.now(),0,!1)) +s=$.ad7+r +$.ad7=s +A.as().$1("Base64ImageWidget \u7f13\u5b58\u5927\u5c0f: "+A.c(s/1024/1024)+"MB")}, +aDj(){var s,r,q,p,o,n,m,l,k +if($.Q0.a===0)return +for(s=$.Q0.gdG($.Q0),s=s.gav(s),r=null,q=null;s.u();){p=s.gI(s) +o=!0 +if(q!=null){n=p.b +m=n.a +l=q.a +if(m>=l)o=m===l&&n.b"))}, +aqQ(){var s,r=this +A.Z(B.A,"[LavaDeviceVM] init") +r.aEb() +r.LJ() +r.aEc() +r.aE9() +$.bki() +s=$.bpP().c +new A.aG(s,A.y(s).i("aG<1>")).bL(new A.aEg(r))}, +aEc(){this.p1.aah(0,B.a2Y,new A.aE7(this))}, +aE9(){this.p1.aah(0,B.a2Z,new A.aE5(this))}, +eU(a){var s=0,r=A.n(t.H),q=this,p,o +var $async$eU=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:A.Z(B.f,"[LavaDeviceVM] reset start") +s=2 +return A.f(q.KK(),$async$eU) +case 2:A.Io() +p=q.a +o=A.y(p).i("aR<1>") +A.Z(B.f,"[LavaDeviceVM] web logout event received, _modelMap.removeWhere isWan, _modelMap.values.first: "+A.jr(A.f8(new A.aR(p,o),o.i("B.E")),"{","}")) +p.vF(p,new A.aEo()) +q.ay.V(0) +B.b.V(q.cx) +q.y=A.blt() +q.at=B.iP +q.c=q.z=null +p=q.go +if(p!=null)p.S(0) +q.go=null +p=q.fy +if(p!=null)p.S(0) +q.fy=null +q.e=null +p=q.f +if(p!=null)p.S(0) +q.f=null +q.r=null +p=q.w +if(p!=null)p.S(0) +q.w=null +p=q.R8 +if(p!=null)p.S(0) +q.R8=null +p=q.p2 +if(p!=null)p.S(0) +q.p2=null +p=t.N +q.ok.cj(A.w(p,t.th)) +q.id.cj(A.w(p,t.CX)) +q.x.q(0,A.w(p,t.z)) +q.ch=!1 +q.ax=A.wz("12345678","",!1,"",B.dK,"","","",u.N,"",!1,"wan",B.cF,"","",B.C,0,1883,null,"","","",0,"") +q.k1.sk(0,B.bj) +q.T() +return A.l(null,r)}}) +return A.m($async$eU,r)}, +LJ(){var s=0,r=A.n(t.H),q=this +var $async$LJ=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.Z(B.f,"[LavaDeviceVM] initLocalDevices start") +s=2 +return A.f(A.bmF(q),$async$LJ) +case 2:A.bKj(q) +q.T() +A.Z(B.f,"[LavaDeviceVM] initLocalDevices end") +return A.l(null,r)}}) +return A.m($async$LJ,r)}, +m(){var s,r=this +A.Z(B.f,"[LavaDeviceVM] dispose start") +r.z=null +s=r.f +if(s!=null)s.S(0) +s=r.w +if(s!=null)s.S(0) +s=r.fy +if(s!=null)s.S(0) +s=r.k1 +s.U$=$.aW() +s.M$=0 +r.k4.L(0) +r.ok.b.L(0) +s=r.p3 +if(s!=null)s.S(0) +r.p3=null +s=r.R8 +if(s!=null)s.S(0) +r.R8=null +s=r.go +if(s!=null)s.S(0) +r.go=null +r.id.b.L(0) +r.x.L(0) +r.k3=null +r.k2.f_(0) +r.dN() +A.Z(B.f,"[LavaDeviceVM] dispose end")}, +aEb(){var s,r +A.Z(B.f,"[LavaDeviceVM] _listenOnConnectivityChanged start") +s=$.LE +s=(s==null?$.LE=A.bn3():s).a +r=s.b +if(J.du(s.a)){s=$.LE +this.at=J.lv((s==null?$.LE=A.bn3():s).a.a)}new A.aG(r,A.y(r).i("aG<1>")).bL(new A.aE6(this))}, +A_(a){var s,r=null,q="nickname",p=this.k1 +p.sk(0,B.bj) +if(a==null){this.c=null +return}A.Z(B.f,"[LavaDeviceVM] setPreBindOrConnectDeviceData deviceModel: "+a.aD()+", authorizationStatusNotifier.value: "+p.a.b) +p=a.fx +s=!0 +if(p!=null)if(J.i(p,q)!=null){p=a.fx +if(!J.e(p==null?r:J.i(p,q),"")){p=a.fx +if((p==null?r:J.i(p,"userid"))!=null){p=a.fx +p=J.e(p==null?r:J.i(p,"userid"),"")}else p=s}else p=s}else p=s +else p=s +if(p&&a.fy.eP())A.Z(B.p,"[LavaDeviceVM] setPreBindOrConnectDeviceData loginUser is required, current loginUser: "+J.p(a.fx)) +this.c=a}, +uP(a,b){return this.aTh(a,!1)}, +ad6(a){return this.uP(a,!1)}, +aTh(b9,c0){var s=0,r=A.n(t.c8),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,b2,b3,b4,b5,b6,b7,b8 +var $async$uP=A.j(function(c1,c2){if(c1===1){o=c2 +s=p}while(true)switch(s){case 0:A.Z(B.A,"[LavaDeviceVM] fetchUserDeviceList start") +m=A.a([],t.sX) +a5=J.a0(b9) +if(a5.h(b9,"userid")==null||J.e(a5.h(b9,"userid"),"")){A.Z(B.p,"[LavaDeviceVM] fetchUserDeviceList user id is empty") +throw A.d(A.ae("fetchUserDeviceList user id is empty"))}p=4 +s=7 +return A.f(A.a_8(),$async$uP) +case 7:l=c2 +a6=t.N +k=A.bn(a6) +a7=J.ay(l),a8=t.z,a9=n.a +case 8:if(!a7.u()){s=9 +break}j=a7.gI(a7) +b0=J.i(j,"name") +i=b0==null?"":b0 +h=J.p(J.i(j,"deviceId")) +g=J.p(J.i(j,"sn")) +b1=J.i(j,"mac") +f=b1==null?"":b1 +e=J.p(J.i(j,"productId")) +b2=J.i(j,"status") +d=b2==null?0:b2 +b3=J.i(j,"online") +c=b3==null?0:b3 +b4=a5.h(b9,"userid") +if(b4==null)b4="" +b=new A.ch(i,"",h,1883,f,g,"",B.C,"",e,"","12345678","",b4,u.N,null,!0,d,c,!1,b9,B.cw,"wan",A.In(A.w(a6,a8)),"") +s=J.aM(g)!==0&&J.aM(h)!==0?10:11 +break +case 10:a=b.w +a0=a9.h(0,a) +s=a0==null?12:14 +break +case 12:a9.n(0,a,b) +s=13 +break +case 14:s=a0.fr&&a0.fy.eO()?15:16 +break +case 15:A.Z(B.f,"[LavaDeviceVM] fetchUserDeviceList, oldDevice.connected == true, deviceModel.connected == false, !!! disconnectDevice: "+a0.aD()+", call disconnectDevice") +s=17 +return A.f(n.yk(a0,!1),$async$uP) +case 17:case 16:a1=A.w(a6,a8) +J.bT(a1,"id",b.e) +b4=b +b5=b4.b +if(b5!=null&&b5!==""){b5.toString +b4=b5}else b4=b4.a +J.bT(a1,"name",b4) +J.bT(a1,"online",b.dy) +J.bT(a1,"status",b.dx) +J.bT(a1,"deviceConnectionState",b.fy.gk(0)) +J.bT(a1,"linkMode",b.go) +a0.ahm(a1,"fetchUserDeviceList") +case 13:J.dN(k,a) +case 11:J.dN(m,b) +s=8 +break +case 9:a2=a9.gdG(a9).km(0,new A.aEk(k)).cJ(0) +a5=a2,a7=a5.length,b6=0 +case 18:if(!(b6") +n.k4.q(0,A.C(["action","unbindDelete","sns",A.a8(new A.ad(a5,new A.aEl(),a7),!0,a7.i("aN.E"))],a6,a8))}n.T() +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +b8=o +a4=A.v(b8) +A.Z(B.p,"[LavaDeviceVM] fetchUserDeviceList remove duplicate sn failed "+J.p(a4)) +throw b8 +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$uP,r)}, +Cv(a){return this.aPl(a)}, +aPl(a){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j +var $async$Cv=A.j(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:q=3 +s=6 +return A.f(A.auu(a.e,a.w),$async$Cv) +case 6:n=c +if(J.cT(n)){A.Z(B.f,"[LavaDeviceVM], checkDeviceBindAuthState, deviceIsUnbind device is null or empty") +l=A.wx(B.de,null) +throw A.d(l)}l=J.bkH(J.i(n,"online")) +a.dy=l +q=1 +s=5 +break +case 3:q=2 +j=p +m=A.v(j) +if(m instanceof A.k1){A.Z(B.p,u.bu+m.a.c+": "+m.a.d+"}") +if(m.a===B.de||m.a===B.df){o.r7(a.w,"checkDeviceBindAuthState, deviceIsUnbind, deleteDeviceFromList") +o.k4.q(0,A.C(["action","unbindDelete","sns",A.a([a.w],t.s)],t.N,t.z))}}else A.Z(B.p,u.bu+J.p(m)) +throw j +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$Cv,r)}, +mD(a){return this.ak2(a)}, +ak2(a){var s=0,r=A.n(t.y),q,p=this,o,n,m,l,k +var $async$mD=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:m=p.a +if(m.h(0,a)==null){A.Z(B.f,"[LavaDeviceVM] selectDevice _deviceMap["+a+"] is null") +throw A.d(A.ae("selectDevice "+a+" is null"))}o=p.ax +if(o.w===a&&A.b5(o).dz()){A.Z(B.f,"[LavaDeviceVM] "+a+" selectDevice current device is connected") +q=!0 +s=1 +break}o=p.c +if(o!=null&&o.w===a){A.Z(B.f,"[LavaDeviceVM] selectDevice _preBindOrConnectDeviceData.key == key") +q=!0 +s=1 +break}s=m.h(0,a).fy.eP()?3:4 +break +case 3:o=m.h(0,a) +o.toString +l=m +k=a +s=5 +return A.f(p.rU(o),$async$mD) +case 5:l.n(0,k,c) +case 4:A.Z(B.f,"[LavaDeviceVM] deviceviewModel connectDevice selectDevice, _modelMap[key]!.deviceConnectionState: "+m.h(0,a).fy.j(0)) +if(p.ax.fy.eP()){o=p.ax +o=o.fr&&o.w!==m.h(0,a).w}else o=!1 +s=o?6:7 +break +case 6:A.Z(B.f,"[LavaDeviceVM] deviceviewModel connectDevice selectDevice, currentDeviceModel.sn != _modelMap[key]!.sn, disconnectDevice: "+p.ax.aD()+", call disconnectDevice") +s=8 +return A.f(p.yk(p.ax,!1),$async$mD) +case 8:case 7:A.aDQ(p) +A.bmE(p) +p.y.eU(0) +m=m.h(0,a) +m.toString +s=9 +return A.f(p.aPZ(m),$async$mD) +case 9:n=c +p.T() +q=n +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$mD,r)}, +JJ(a){return this.aOQ(a)}, +aOQ(a2){var s=0,r=A.n(t.CX),q,p=this,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$JJ=A.j(function(a3,a4){if(a3===1)return A.k(a4,r) +while(true)switch(s){case 0:a1=p.c +if(a1==null){A.Z(B.p,"[LavaDeviceVM] bindCloudDevice devicePreBindOrConnectData is null") +throw A.d(A.ae("devicePreBindOrConnectData is null"))}o=a1.fx +o=o==null?null:J.i(o,"nickname") +if(o==null)o="" +n=t.z +m=t.N +l=A.f7(A.C(["operate",0,"nickname",o,"authCode",a1.ax],n,n),m,n) +if(l.h(0,"authCode")==null||J.e(l.h(0,"authCode"),"")){A.Z(B.p,"[LavaDeviceVM] bindCloudDevice authCode is required, current authCode is empty, please check the authCode") +throw A.d(A.ae("authCode is required, current authCode is empty, please check the authCode"))}a1=J.e(l.h(0,"nickname"),"") +if(a1)l.n(0,"nickname",a2.h(0,"nickname")) +if(l.h(0,"nickname")==null||J.e(l.h(0,"nickname"),"")){A.Z(B.p,"[LavaDeviceVM] bindCloudDevice nickname is required, current nickname is empty, please check the nickname") +throw A.d(A.ae("nickname is required, current nickname is empty, please check the nickname"))}p.nF(A.C(["state","authorizing"],m,n),null,"bindCloudDevice, _updateAuthorizedResult, authorizing") +s=3 +return A.f(A.aus(l),$async$JJ) +case 3:k=a4 +j=k.a +A.Z(B.f,"[LavaDeviceVM] bind result "+k.j(0)) +if(j){A.Z(B.f,"[LavaDeviceVM] bindCloudDevice, success, \u2705 call _updateAuthorizedResult({'state': 'authorized'})") +p.nF(A.C(["state","authorized"],m,n),null,"bindCloudDevice result: "+k.j(0)) +a1=k.d +if(t.a.b(a1)){i=J.mu(a1,m,n) +a1=J.p(i.h(0,"name")) +o=J.p(i.h(0,"sn")) +n=J.p(i.h(0,"deviceId")) +m=J.p(i.h(0,"productName")) +h=J.p(i.h(0,"productId")) +g=i.h(0,"deviceModel") +if(g==null)g="" +f=i.h(0,"status") +if(f==null)f=0 +e=i.h(0,"online") +if(e==null)e=0 +d=i.h(0,"ip") +d=d==null?null:J.p(d) +if(d==null)d="" +c=i.h(0,"port") +if(c==null)c=8883 +b=l.h(0,"authCode") +b=b==null?null:J.p(b) +if(b==null)b="" +a=a2.h(0,"userid") +a0=p.c=A.wz("12345678",b,!1,"",B.cw,g,"",n,u.N,d,!0,"wan",a2,"",a1,B.C,e,c,null,h,m,o,f,a==null?"":a) +p.a.n(0,a0.w,a0) +p.T() +q=a0 +s=1 +break}else{A.Z(B.p,"[LavaDeviceVM] bindCloudDevice bind result data is not a map") +throw A.d(A.ae("bind result data is not a map"))}}else{A.Z(B.f,"[LavaDeviceVM] bindCloudDevice, failed, \u274c call _updateAuthorizedResult({'state': 'notAvailable'})") +p.nF(A.C(["state","notAvailable"],m,n),null,"bindCloudDevice result: "+k.j(0)) +a1=k.c +o=k.b +A.Z(B.f,"[LavaDeviceVM] bind result failed, return, "+a1+", "+o) +a1=A.bIl(a1) +a1=A.wx(A.Ir(a1.a,A.F(a1.b,null)),new A.Wo(a1,o).gia(0)) +throw A.d(a1)}case 1:return A.l(q,r)}}) +return A.m($async$JJ,r)}, +NQ(a){return this.b0D(a)}, +b0D(a){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$NQ=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +A.Z(B.f,"[LavaDeviceVM] unBindDevice "+a.aD()) +A.Z(B.f,"[LavaDeviceVM] unBindDevice start, data:"+a.aD()) +if(a.fy.eO()){A.Z(B.f,"[LavaDeviceVM] unBindDevice lan device "+a.e+", \u5c40\u57df\u7f51\u4e0d\u9700\u8981\u89e3\u7ed1") +q=!0 +s=1 +break}A.Z(B.f,"[LavaDeviceVM] unBindDevice wan device id: "+a.e+", sn: "+a.w+", \u9700\u8981\u89e3\u7ed1") +m=A.C(["deviceId",a.e,"operate",1],t.N,t.z) +s=7 +return A.f(A.auv(m),$async$NQ) +case 7:l=c +A.Z(B.f,"[LavaDeviceVM] unbind result: "+A.c(l)+", device: "+a.aD()+" ") +if(l){j=n.a +if(j.h(0,a.w)!=null){A.Z(B.f,"[LavaDeviceVM] unBindDevice success \u2705, remove _modelMap removeKey: "+a.w) +j.C(0,a.w)}A.he(a,a.w) +n.T() +q=!0 +s=1 +break}A.Z(B.p,"[LavaDeviceVM] "+a.gkI(0)+" unbind device failed \u274c") +j=A.ae(a.gkI(0)+" unbind device failed") +throw A.d(j) +p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +A.Z(B.p,"[LavaDeviceVM] unBindDevice error: "+J.p(k)) +if(k instanceof A.k1)if(k.a.c===602e3||k.a.c===602003){j=n.a +if(j.h(0,a.w)!=null){A.Z(B.f,"[LavaDeviceVM] unBindDevice unBindResult \u2705, code: "+k.a.c+", _modelMap.remove: "+a.w) +j.C(0,a.w)}A.he(a,a.w) +n.T() +q=!0 +s=1 +break}throw h +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$NQ,r)}, +aiV(){if(this.ax.gkI(0).length!==0)return this.ax.gkI(0) +return A.b5(this.ax).a.gkI(0)}, +Mk(a,b){return this.aXs(a,b)}, +aXs(a,b){var s=0,r=A.n(t.y),q,p=this +var $async$Mk=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:s=3 +return A.f(A.b5(p.ax).Mj(a),$async$Mk) +case 3:q=d +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Mk,r)}, +OF(a){return this.akt(a)}, +akt(a){var s=0,r=A.n(t.H),q,p=this,o,n,m,l,k +var $async$OF=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:if(a.fy.eO()){A.Z(B.f,"[LavaDeviceVM] setDeviceUserinfo deviceModel is lan device, skip") +s=1 +break}o=a.fx +if(o==null){A.Z(B.f,"[LavaDeviceVM] setDeviceUserinfo userInfo is null, skip") +s=1 +break}n=J.a0(o) +m=n.h(o,"userid") +if(m==null||J.e(m,"")){A.Z(B.f,"[LavaDeviceVM] setDeviceUserinfo userid is null or empty, skip") +s=1 +break}l=n.h(o,"nickname") +if(l==null||J.e(l,"")){A.Z(B.f,"[LavaDeviceVM] setDeviceUserinfo nickname is null or empty, skip") +s=1 +break}k=n.h(o,"account") +if(k==null||J.e(k,"")){A.Z(B.f,"[LavaDeviceVM] setDeviceUserinfo account is null or empty, skip") +s=1 +break}A.b5(p.ax).G_(m,l,k) +case 1:return A.l(q,r)}}) +return A.m($async$OF,r)}, +KA(a){return this.aRG(a)}, +aRG(a){var s=0,r=A.n(t.y),q,p=2,o,n,m,l,k,j,i +var $async$KA=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +A.Z(B.f,"[LavaDeviceVM] deviceOnlineAuth deviceModel: "+a.aD()) +n=a.id.c +if(J.e(n,"")){k=A.ae("certId is required") +throw A.d(k)}s=7 +return A.f(A.aut(n,a.e,a.w),$async$KA) +case 7:m=c +A.Z(B.f,"[LavaDeviceVM] deviceOnlineAuth isAuth: "+A.c(m)) +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +i=o +l=A.v(i) +A.Z(B.p,"[LavaDeviceVM] \u274e deviceOnlineAuth error: "+J.p(l)) +throw i +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$KA,r)}, +Fy(a,b){return this.ajL(a,b)}, +ajL(a,b){var s=0,r=A.n(t.xh),q,p=2,o,n,m,l,k,j +var $async$Fy=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.f(A.AR(b),$async$Fy) +case 7:n=d +if(n==null){l=A.ae("device cert is null") +throw A.d(l)}a.OE(n) +q=n +s=1 +break +p=2 +s=6 +break +case 4:p=3 +j=o +m=A.v(j) +A.Z(B.p,"[LavaDeviceVM] getValidDeviceModelCert fail: "+J.p(m)) +throw j +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fy,r)}, +Vz(a){return this.aRF(a)}, +aRF(a){var s=0,r=A.n(t.H),q,p,o +var $async$Vz=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=a.fx +o=p==null?null:J.i(p,"userid") +q=A.Ip(o==null?"":o) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Vz,r)}, +aLm(){var s,r=this +A.Z(B.f,"[LavaDeviceVM] subscriptingToPrinterConnectionStateInfo start, _currentDeviceModel.deviceConnectionState: "+r.ax.fy.j(0)) +s=r.f +if(s!=null)s.S(0) +s=A.b5(r.ax).cx.b +r.f=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.aEf(r)) +r.aLl() +r.a8k()}, +aLl(){var s,r,q=this +A.Z(B.f,"[LavaDeviceVM] _subscriptingToLogoutStream start") +s=A.b5(q.ax) +r=q.go +if(r!=null)r.S(0) +r=s.db +q.go=new A.aG(r,A.y(r).i("aG<1>")).bL(new A.aEe(q))}, +a8k(){var s,r,q=this +A.Z(B.f,"[LavaDeviceVM] _subscriptingToDeviceDownloadTaskStream start") +s=A.b5(q.ax) +r=q.w +if(r!=null)r.S(0) +r=s.dy.a +r=new A.aG(r,A.y(r).i("aG<1>")).bL(new A.aEc(q)) +q.w=r +r.Xn(new A.aEd(q))}, +Ku(a,b,c){var s,r,q=this,p="[LavaDeviceVM] ["+b,o=q.a,n=A.y(o).i("aR<1>") +A.Z(B.f,p+"] deleteDeviceFromList, key: "+a+", isConnetNext: false, _modelMap: "+A.jr(A.f8(new A.aR(o,n),n.i("B.E")),"{","}")) +if(o.h(0,a)!=null&&o.h(0,a).fr){A.Z(B.f,p+"] deleteDeviceFromList, _modelMap[key]!.connected, disconnectDevice: "+o.h(0,a).aD()+", call disconnectDevice") +n=o.h(0,a) +n.toString +q.yk(n,!1)}if(q.b.h(0,a)!=null){q.b.C(0,a) +A.xr(q)}try{if(o.h(0,a)!=null){if(q.b.h(0,a)!=null){q.b.C(0,a) +A.xr(q)}A.he(o.h(0,a),a) +n=q.f +if(n!=null)n.S(0) +n=q.w +if(n!=null)n.S(0) +q.x.q(0,A.w(t.N,t.z)) +if(o.h(0,a)!=null&&o.h(0,a).fy.eO()){A.Z(B.f,"deleteDeviceFromList, _modelMap[key]!.deviceConnectionState.isLan(), _modelMap.remove: "+a) +o.C(0,a)}if(q.ax.w===a)q.ax=A.wz("12345678","",!1,"",B.dK,"","","",u.N,"",!1,"wan",B.cF,"","",B.C,0,1883,null,"","","",0,"") +if(q.b.h(0,a)!=null){q.b.C(0,a) +A.xr(q)}}else{A.Z(B.f,p+"] deleteDeviceFromList, _modelMap[key] is null, key: "+a+",DeviceService.removeDevice()") +A.he(o.h(0,a),a)}q.T()}catch(r){s=A.v(r) +A.Z(B.p,p+"] deleteDeviceFromList error: "+J.p(s))}finally{if(B.c.p(b,"modeNotAvailable")||B.c.p(b,"rejected")||B.c.p(b,"notAuthorized"))q.k4.q(0,A.C(["action","delete","sns",A.a([a],t.s)],t.N,t.z))}}, +r7(a,b){return this.Ku(a,b,!1)}, +acp(a){return this.Ku(a,"",!1)}, +Ex(a,b){var s="" +return this.b_H(a,b)}, +b_H(a9,b0){var s=0,r=A.n(t.N),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 +var $async$Ex=A.j(function(b1,b2){if(b1===1){o=b2 +s=p}while(true)switch(s){case 0:a4={} +a5="" +a6=new A.aq(new A.a_($.ab,t.fB),t.pN) +A.Z(B.f,"[LavaDeviceVM] ["+A.c(a5)+"] requestAuthCodeWeb start") +s=a9.d.length!==0?3:5 +break +case 3:d=a9.ax +s=d==null?6:8 +break +case 6:p=10 +n.k1.sk(0,B.bj) +m=a9.Fn() +d=J.i(m,"ip") +c=J.i(m,"port") +b=A.c(J.i(m,"clientId")) +a=J.i(m,"sn") +a0=J.i(m,"publishTopics") +a1=J.i(m,"subscribeTopics") +a2=J.i(m,"link_mode") +if(a2==null)a2="lan" +l=A.aVZ(d,c,b+"-cloud",a,a0,a1,"cloud",null,null,null,null,a2) +s=13 +return A.f(l.y0(),$async$Ex) +case 13:k=b2 +if(!k){A.Z(B.p,"[LavaDeviceVM] ["+A.c(a5)+"] requestAuthCodeWeb agentIdSuccess failed. -1") +q="-1" +s=1 +break}j=!1 +p=15 +s=18 +return A.f(l.eb(),$async$Ex) +case 18:j=b2 +p=10 +s=17 +break +case 15:p=14 +a7=o +i=A.v(a7) +A.Z(B.p,"[LavaDeviceVM] ["+A.c(a5)+"] requestAuthCodeWeb connect error: "+J.p(i)) +throw a7 +s=17 +break +case 14:s=10 +break +case 17:if(!j){A.Z(B.p,"[LavaDeviceVM] ["+A.c(a5)+"] requestAuthCodeWeb connect failed. -1") +a4=n.p3 +if(a4!=null)a4.S(0) +n.p3=null +q="-1" +s=1 +break}else{a4.a="1234" +d=new A.oP() +d.b=1000*Date.now() +h="orca-"+d.aP() +A.Z(B.f,"[LavaDeviceVM] ["+A.c(a5)+"] requestAuthCodeWeb connect success, appId: "+A.c(h)+", add [wcpClient.clientDataStream.listen] start") +d=n.p3 +if(d!=null)d.S(0) +d=l.CW +n.p3=new A.aG(d,A.y(d).i("aG<1>")).bL(new A.aEn(a4,n,a5,h,b0,l,a6,a9)) +A.Z(B.f,"[LavaDeviceVM] ["+A.c(a5)+"] requestAuthCodeWeb, [wcpClient.clientDataStream.listen] success, send customRequestPinCodeCommand start, deviceModel: "+a9.aD()) +d=a9.fx +d.toString +d=J.i(d,"userid") +c=a9.fx +c.toString +c=J.i(c,"nickname") +if(c==null)c="" +g=new A.atL($.d8().aP(),d,c,h) +f=J.ap8(g) +a4.a=J.p(J.i(f,"id")) +A.Z(B.f,"[LavaDeviceVM] requestAuthCodeWeb send CustomRequestPinCodeCommand, data: "+A.co(f)) +J.bF3(l,f) +A.Z(B.f,"[LavaDeviceVM] requestAuthCodeWeb send CustomRequestPinCodeCommand end")}p=2 +s=12 +break +case 10:p=9 +a8=o +e=A.v(a8) +A.Z(B.p,"[LavaDeviceVM] requestAuthCodeWeb error: "+J.p(e)+", return -1") +a4=n.p3 +if(a4!=null)a4.S(0) +n.p3=null +q="-1" +s=1 +break +s=12 +break +case 9:s=2 +break +case 12:s=7 +break +case 8:A.Z(B.f,"[LavaDeviceVM] requestAuthCodeWeb authCode is not null, return authCode: "+d+", return authCode") +a4=a9.ax +a4.toString +q=a4 +s=1 +break +case 7:s=4 +break +case 5:A.Z(B.p,"[LavaDeviceVM] requestAuthCodeWeb ip is empty, return -1") +q="-1" +s=1 +break +case 4:q=a6.a +s=1 +break +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Ex,r)}, +rU(a){return this.aZu(a)}, +aZu(a){var s=0,r=A.n(t.CX),q,p=2,o,n=this,m,l,k,j,i,h +var $async$rU=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +j=a.fx +j=j==null?null:J.i(j,"userid") +s=7 +return A.f(n.Fy(a,j==null?"":j),$async$rU) +case 7:m=c +a.OE(m) +s=8 +return A.f(n.KA(a),$async$rU) +case 8:l=c +if(!l){j=A.ae("deviceOnlineAuth failed") +throw A.d(j)}$.aEm=2 +q=a +s=1 +break +p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +A.Z(B.p,u.b+J.p(k)) +s=k instanceof A.k1?9:10 +break +case 9:s=k.a===B.wt?11:13 +break +case 11:j=$.aEm +if(j>0)$.aEm=j-1 +else{A.Z(B.p,u.b+J.p(k)+", maxRetryCertCount: "+$.aEm) +throw h}s=14 +return A.f(n.Vz(a),$async$rU) +case 14:q=n.rU(a) +s=1 +break +s=12 +break +case 13:if(k.a===B.df){A.Z(B.p,u.b+J.p(k)) +throw h}else throw h +case 12:case 10:throw h +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$rU,r)}, +UY(a){return this.aP9(a)}, +aP9(a){var s=0,r=A.n(t.H),q=this,p,o,n,m +var $async$UY=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:m=a.j(0) +A.Z(B.f,"[LavaDeviceVM] cancelAuthorizationConnectDevice, cancel requestAuthCode/requestAuthCodeWeb start, model: "+m+", flag: ") +m=q.fy +if(m!=null)m.S(0) +q.fy=null +m=q.p3 +if(m!=null)m.S(0) +q.p3=null +p=A.b5(a) +A.Z(B.f,"[LavaDeviceVM] cancelAuthorizationConnectDevice, device.dispose:"+A.at(p)+", flag: ") +p.m() +m=t.N +o=t.z +q.aMx(A.C(["state","authorizing"],m,o),a) +n=a.j(0) +A.Z(B.f,"[LavaDeviceVM] cancelAuthorizationConnectDevice, cancel requestAuthCode/requestAuthCodeWeb end, {'state': 'authorizing'}, model: "+n+", flag: ") +q.nF(A.C(["state","authorizing"],m,o),a,"cancelAuthorizationConnectDevice") +q.T() +return A.l(null,r)}}) +return A.m($async$UY,r)}, +ux(a,b,c,d){return this.aQ1(a,b,c,d)}, +aPZ(a){return this.ux(a,"",!0,null)}, +aQ0(a,b,c){return this.ux(a,"",b,c)}, +aQ_(a,b){return this.ux(a,"",b,null)}, +aQ1(a1,a2,a3,a4){var s=0,r=A.n(t.y),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a,a0 +var $async$ux=A.j(function(a5,a6){if(a5===1){o=a6 +s=p}while(true)switch(s){case 0:a={} +p=4 +f="[LavaDeviceVM] ["+a2 +A.Z(B.f,f+"] connectDevice, model: "+a1.aD()+", currentDeviceModel: "+m.ax.aD()) +if(a1.fy.eP()&&a1.e.length===0){e=f+"] connectDevice wan device id is empty, return false" +A.Z(B.f,e) +d=m.a +l=new A.aR(d,A.y(d).i("aR<1>")).h9(0,new A.aEh(a1),new A.aEi()) +c=l.length +if(c!==0){e=d.h(0,l) +e.toString +k=e +A.Z(B.f,f+"] connectDevice wan device id is empty, use key: "+A.c(l)+", tmpModel: "+J.p(k)+", flag: "+a2) +a1.e=k.e}else A.Z(B.p,e)}e=a1.w +d=m.ax +if(e===d.w&&A.b5(d).dz()&&a1.fr){A.Z(B.f,f+"] connectDevice device is connected, return true, flag: "+a2) +q=!0 +n=[1] +s=5 +break}j=A.b5(a1) +e=m.fy +if(e!=null)e.S(0) +i=new A.aq(new A.a_($.ab,t.tr),t.VY) +a.a=!1 +e=j.cy.b +m.fy=new A.aG(e,A.y(e).i("aG<1>")).bL(new A.aEj(a,m,a2,j,i,a1,a4)) +A.Z(B.f,f+"] 5 connectDevice, tryConnect start") +m.k1.sk(0,B.bj) +s=7 +return A.f(j.t5(),$async$ux) +case 7:h=a6 +A.Z(B.f,f+"] 6 connectDevice, tryConnect end, result: "+J.p(h)+"}") +s=J.i(h,"state")!=null?8:9 +break +case 8:case 10:switch(J.i(h,"state")){case"authorized":s=12 +break +case"modeNotAvailable":s=13 +break +case"notAuthorized":s=14 +break +case"authorizing":s=15 +break +case"notConnected":s=16 +break +default:s=17 +break}break +case 12:A.Z(B.f,f+"] 7 connectDevice, _realConnect, tryConnect authorized, start _realConnect") +s=!a.a?18:19 +break +case 18:a.a=!0 +s=20 +return A.f(m.Bw(j,i,a2),$async$ux) +case 20:case 19:s=11 +break +case 13:m.r7(j.a.w,a2+", "+a1.aD()+" connectDevice, modeNotAvailable") +J.VY(i,!1) +s=11 +break +case 14:if(J.i(h,"action")!=null)J.e(J.i(h,"action"),"hold") +if(a1.k2){m.r7(a1.w,a2+", connectDevice, notAuthorized") +f=A.ae("device authorization removed") +throw A.d(f)}m.nF(A.C(["state","notAvailable"],t.N,t.z),j.a,a2+", connectDevice, tryConnect notAuthorized") +J.VY(i,!1) +s=11 +break +case 15:A.Z(B.f,f+"] 8 connectDevice tryConnect, result: "+A.c(h)+", updateAuthorizedResult: authorizing, call showAuthorizationDialog") +if(a4!=null)a4.$1(B.bj) +s=11 +break +case 16:A.Z(B.f,f+"] 9 connectDevice tryConnect, result: "+A.c(h)+", updateAuthorizedResult: notConnected") +m.nF(A.C(["state","notConnected"],t.N,t.z),j.a,a2+", connectDevice, tryConnect notConnected") +J.VY(i,!1) +s=11 +break +case 17:s=11 +break +case 11:case 9:m.T() +f=i.a +q=f +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 4:p=3 +a0=o +g=A.v(a0) +A.Z(B.p,"[LavaDeviceVM] connectDevice error: "+J.p(g)+", return false") +if(B.c.p(J.p(g),"device authorization removed"))throw a0 +else{q=!1 +n=[1] +s=5 +break}n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.Z(B.f,"[LavaDeviceVM] ["+a2+"] connectDevice end") +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$ux,r)}, +Bw(a,b,c){return this.aIa(a,b,c)}, +aI9(a,b){return this.Bw(a,b,"")}, +aIa(a,b,c){var s=0,r=A.n(t.H),q=this,p,o,n,m,l,k +var $async$Bw=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:k="[LavaDeviceVM] ["+c +A.Z(B.f,k+"] 10 connectDevice, _realConnect start") +p=q.ax +if(p.w===""){q.ax=a.a +o=null}else o=A.b5(p) +s=2 +return A.f(a.nP(!0),$async$Bw) +case 2:n=e +A.Z(B.f,k+"] 11 connectDevice, _realConnect end, result: "+A.c(n)) +p=t.N +m=t.z +l=a.a +if(n){q.OF(l) +A.Z(B.f,k+"] 12 connectDevice, _realConnect end, result: true, updateAuthorizedResult: authorized, device.model.connected, device: "+l.aD()) +q.nF(A.C(["state","authorized"],p,m),l,c+", _realConnect,device.connect result:true") +if(!l.fr){A.Z(B.f,k+"] 12 connectDevice, _realConnect end, result: true, set device.model.connected to true, setConnected: true") +l.iO(!0,u.H)}p=q.a +if(p.h(0,l.w)==null){A.Z(B.f,k+"] 13 connectDevice, _realConnect end, result: true, _modelMap[device.model.key] == null, set _modelMap[device.model.key] = device.model, _currentDeviceModel = _modelMap[device.model.key]!") +p.n(0,l.w,l) +p=p.h(0,l.w) +p.toString +p=q.ax=p}else{m=p.h(0,l.w) +m.toString +if(A.at(m)!==A.at(l)){A.Z(B.f,k+"] 13 connectDevice, _realConnect end, result: true, _modelMap[device.model.key]!.hashCode != device.model.hashCode, set _modelMap[device.model.key] = device.model, _currentDeviceModel = _modelMap[device.model.key]!") +p.n(0,l.w,l) +p=p.h(0,l.w) +p.toString +q.ax=p}else{A.Z(B.f,k+"] 13 connectDevice, _realConnect end, result: true, else, set _modelMap[device.model.key]!.setConnected(true), _currentDeviceModel = _modelMap[device.model.key]!") +p.h(0,l.w).iO(!0,u.H) +p=p.h(0,l.w) +p.toString +q.ax=p}}A.Z(B.f,k+"] 14 connectDevice _currentDeviceModel: "+p.aD()+", model: "+l.aD()) +if(q.ax.fy.eO()){A.Z(B.f,k+"] 15 connectDevice, _realConnect end, result: true, _currentDeviceModel.deviceConnectionState.isLan(), set _lanOnlyModelMap[device.model.key] = device.model, _saveLanOnlyDeviceModels()!") +q.b.n(0,l.w,l) +A.xr(q)}q.Jb() +q.aLm() +if(l.w!==q.ax.w&&o!=null&&o.dz()&&o.a.fr)A.Z(B.f,k+"] 16 connectDevice, _realConnect end, result: true, curTmpDevice.isDeviceConnected(), !!! skip disconnect curTmpDevice: "+o.a.aD()+"}") +q.aLh()}else{A.Z(B.f,k+"] 16 connectDevice, _realConnect end, result: false, updateAuthorizedResult: notAvailable ") +q.nF(A.C(["state","notAvailable"],p,m),l,c+", _realConnect,device.connect result:false, 16") +if(q.b.h(0,l.w)!=null){q.b.C(0,l.w) +A.xr(q)}}q.T() +b.bv(0,n) +return A.l(null,r)}}) +return A.m($async$Bw,r)}, +nF(a,b,c){var s,r,q=A.c(a),p=b==null,o=p?null:b.aD() +A.Z(B.f,"[LavaDeviceVM], ["+c+"] _updateAuthorizedResult, result: "+q+", deviceModel: "+A.c(o)) +s=J.i(a,"state") +if(s!=null){switch(s){case"notConnected":r=B.it +break +case"modeNotAvailable":if(!p)this.r7(b.w,c+", _updateAuthorizedResult, modeNotAvailable") +r=B.it +break +case"notAvailable":r=B.it +break +case"authorizing":r=B.bj +break +case"authorized":case"ready":r=B.eH +break +case"rejected":if(!p)this.r7(b.w,c+", _updateAuthorizedResult, rejected") +r=B.dC +break +case"timeout":r=B.QA +break +case"authorizationInvalid":A.Z(B.f,"[LavaDeviceVM] ["+c+"] authorizationInvalid detected") +r=B.dC +break +case"init":default:r=B.bj +break}q=this.k1 +if(!J.e(q.a,r)){A.Z(B.f,"[LavaDeviceVM] _updateAuthorizedResult authorizationStatusNotifier.value: "+A.c(q.a)+", newStatus: "+r.b+"}") +q.sk(0,r)}}else A.Z(B.f,"[LavaDeviceVM] _updateAuthorizedResult state is null")}, +aMx(a,b){return this.nF(a,b,"")}, +uI(a,b,c,d){return this.aS_(a,b,c,d)}, +yk(a,b){return this.uI(a,"",b,!0)}, +aRY(a,b,c){return this.uI(a,b,!0,c)}, +aRZ(a,b,c){return this.uI(a,"",b,c)}, +aS_(a0,a1,a2,a3){var s=0,r=A.n(t.y),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a +var $async$uI=A.j(function(a4,a5){if(a4===1){o=a5 +s=p}while(true)switch(s){case 0:e="[LavaDeviceVM] ["+a1 +d=a0==null +c=d?null:a0.aD() +A.Z(B.f,e+"] 1 disconnectDevice start, deviceModel: "+A.c(c)+", currentDeviceModel: "+m.ax.aD()) +s=!d&&a0.w!==m.ax.w&&a0.fr?3:4 +break +case 3:m.k1.sk(0,B.bj) +l=!1 +p=6 +s=9 +return A.f(A.b5(a0).jZ(0,a2),$async$uI) +case 9:l=a5 +if(a0.fr)a0.iO(!l,u.F) +if(l)m.y.eU(0) +n.push(8) +s=7 +break +case 6:p=5 +b=o +k=A.v(b) +A.Z(B.p,e+"] disconnectDevice error: "+J.p(k)) +l=!1 +n.push(8) +s=7 +break +case 5:n=[2] +case 7:p=2 +if(a3){A.Z(B.f,e+"] disconnectDevice, removeDevice, DeviceService.removeDevice, deviceModel: "+m.ax.aD()) +e=m.ax +A.he(e,e.w)}s=n.pop() +break +case 8:m.T() +q=l +s=1 +break +case 4:c=d?null:a0.w +g=d?null:a0.w +f=d?null:a0.fr +A.Z(B.f,e+"] 2 disconnectDevice start, key: "+A.c(c)+", sn: "+A.c(g)+", connected: "+A.c(f)) +m.k1.sk(0,B.bj) +f=m.R8 +if(f!=null)f.S(0) +m.z=m.R8=null +j=!1 +p=11 +s=14 +return A.f(A.b5(d?m.ax:a0).jZ(0,a2),$async$uI) +case 14:j=a5 +j=!0 +m.ax.iO(!j,u.F) +d=m.a +if(d.h(0,m.ax.w)!=null)d.h(0,m.ax.w).iO(!j,u.F) +n.push(13) +s=12 +break +case 11:p=10 +a=o +i=A.v(a) +A.Z(B.p,"[LavaDeviceVM] disconnectDevice error: "+J.p(i)) +j=!1 +n.push(13) +s=12 +break +case 10:n=[2] +case 12:p=2 +if(a3&&j){d=m.ax +A.he(d,d.w)}m.ax=A.wz("12345678","",!1,"",B.dK,"","","",u.N,"",!1,"wan",B.cF,"","",B.C,0,1883,null,"","","",0,"") +s=n.pop() +break +case 13:A.Z(B.f,e+"] disconnectDevice end: "+A.c(j)+", connected: "+m.ax.fr) +m.T() +q=j +s=1 +break +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$uI,r)}, +KK(){var s="" +return this.aRT()}, +aRT(){var s=0,r=A.n(t.H),q=1,p,o=[],n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2 +var $async$KK=A.j(function(a3,a4){if(a3===1){p=a4 +s=q}while(true)switch(s){case 0:a1="" +A.Z(B.f,"[LavaDeviceVM] ["+A.c(a1)+"] disconnectAllDevices start, authorizationStatusNotifier.value set to AuthorizationStatus.authorizing") +n.k1.sk(0,B.bj) +i=n.a.gaJ(0),h=A.y(i),i=new A.bD(J.ay(i.a),i.b,h.i("bD<1,2>")),h=h.y[1] +case 2:if(!i.u()){s=3 +break}g=i.a +m=g==null?h.a(g):g +l=A.b5(m) +g=l +f=g.b +f=f.gbi(f).j(0) +e=g.ay.j(0) +d=g.cx.a.b.j(0) +c=$.ac() +b=c.a +b===$&&A.b() +a=Date.now() +b.cH(B.aj,"[Device] isDeviceConnected "+f+", _connectionStatus: "+e+u.o+d,null,null,new A.aS(a,0,!1)) +g=g.b +s=g.gbi(g)===B.av?4:6 +break +case 4:q=8 +s=11 +return A.f(J.bED(l),$async$KK) +case 11:k=a4 +if(m.fr){g=m +f=!k +e=g.fr +d=A.at(g) +c=c.a +b=Date.now() +c.cH(B.aj,"DeviceModel setConnected, reason: LavaDeviceViewModel disconnectAllDevices, model.connected != true, setConnected: true, _connected: "+e+", set isConnected: "+f+", this.hashCode: "+d,null,null,new A.aS(b,0,!1)) +g.fr=f}o.push(10) +s=9 +break +case 8:q=7 +a2=p +j=A.v(a2) +A.Z(B.p,"[LavaDeviceVM] ["+A.c(a1)+"] disconnectAllDevices error: "+J.p(j)) +o.push(10) +s=9 +break +case 7:o=[1] +case 9:q=1 +A.Z(B.f,"[LavaDeviceVM] ["+A.c(a1)+"] disconnectAllDevices, finally, DeviceService.removeDevice, model: "+m.aD()) +A.he(m,m.w) +s=o.pop() +break +case 10:s=5 +break +case 6:A.Z(B.f,"[LavaDeviceVM] ["+A.c(a1)+"] disconnectAllDevices, device is not connected, DeviceService.removeDevice, model: "+m.aD()) +A.he(m,m.w) +case 5:s=2 +break +case 3:i=n.f +if(i!=null)i.S(0) +n.x.q(0,A.w(t.N,t.z)) +i=n.w +if(i!=null)i.S(0) +n.ax=A.wz("12345678","",!1,"",B.dK,"","","",u.N,"",!1,"wan",B.cF,"","",B.C,0,1883,null,"","","",0,"") +n.T() +return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$KK,r)}, +Pl(a,b){return this.aqC(a,b)}, +aqC(a5,a6){var s=0,r=A.n(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 +var $async$Pl=A.j(function(a8,a9){if(a8===1)return A.k(a9,r) +while(true)switch(s){case 0:A.Z(B.f,"[LavaDeviceVM] syncOrcaDeviceModelList, kIsWasm || kIsWeb, currentModule: "+a6+", initModule: "+$.Vw+", isFirstSync: "+p.p4) +try{p.p4=!1 +f=p.a +e=f.gaJ(0) +o=A.a8(e,!0,A.y(e).i("B.E")) +e=o +A.Z(B.f,"[LavaDeviceVM] syncOrcaDeviceModelList, oldDeviceList: "+new A.ad(e,new A.aEp(),A.af(e).i("ad<1,h>")).bJ(0,", ")) +e=A.af(a5) +A.Z(B.f,"[LavaDeviceVM] syncOrcaDeviceModelList, updateDeviceList: "+new A.ad(a5,new A.aEq(),e.i("ad<1,h>")).bJ(0,", ")) +for(d=a5.length,c=0;c")),b) +i=A.tW(new A.ad(a5,new A.aEu(),e.i("ad<1,@>")),b) +h=j.hC(i) +if(J.du(h)){A.Z(B.f,"[LavaDeviceVM] syncOrcaDeviceModelList, deleteDeviceSns: "+J.bkE(h,", ")) +f.vF(f,new A.aEv(h)) +J.fz(h,new A.aEw(p)) +A.xr(p)}}catch(a7){g=A.v(a7) +A.Z(B.p,"[LavaDeviceVM] syncOrcaDeviceModelList error: "+J.p(g))}finally{A.Z(B.f,"[LavaDeviceVM] syncOrcaDeviceModelList finally") +p.T()}return A.l(null,r)}}) +return A.m($async$Pl,r)}, +Jb(){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$Jb=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:n=q.ax.fx +if(n==null)p=null +else{n=J.i(n,"userid") +n=n==null?null:J.p(n) +p=n}if(p==null)p="" +s=q.ax.fy.eP()?2:4 +break +case 2:A.Z(B.f,"[LavaDeviceVM] _updateModelOnConnected/setDeviceCertConfig, isWan, userid: "+p) +s=p.length!==0?5:7 +break +case 5:s=8 +return A.f(A.AR(p),$async$Jb) +case 8:o=b +q.ax.OE(o) +s=6 +break +case 7:A.Z(B.f,"[LavaDeviceVM] _updateModelOnConnected/setDeviceCertConfig, isWan, userid is null") +case 6:s=3 +break +case 4:A.Z(B.f,"[LavaDeviceVM] _updateModelOnConnected/setDeviceCertConfig, isLan, no need to setDeviceCertConfig") +case 3:return A.l(null,r)}}) +return A.m($async$Jb,r)}, +aLh(){var s,r=this,q=r.R8 +if(q!=null)q.S(0) +s=r.aiU() +if(s!=null)r.R8=s.M1(new A.aE8(r),new A.aE9())}} +A.aEg.prototype={ +$1(a){var s,r="[LavaDeviceVM] app status changed: "+a.b +A.Z(B.f,r) +if(a===B.is){A.Z(B.f,r+", inactive") +r=this.a +s=r.ax +if(s.w.length!==0&&A.b5(s).dz())A.BQ(r) +else{s=r.ax +if(s.w.length!==0&&!A.b5(s).dz())r.mD(r.ax.w)}}}, +$S:132} +A.aE7.prototype={ +$1(a){A.Z(B.f,"[LavaDeviceVM] logout event received") +this.a.eU(0)}, +$S:16} +A.aE5.prototype={ +$1(a){A.Z(B.f,"[LavaDeviceVM] deviceRefresh event received") +this.a.T()}, +$S:16} +A.aEo.prototype={ +$2(a,b){return b.fy.eP()}, +$S:297} +A.aE6.prototype={ +$1(a){var s=this,r=", currentStatus: ",q="[LavaDeviceVM] _listenOnConnectivityChanged status: ",p=J.cF(a),o=p.gY(a),n=p.j(a),m=o.b +A.Z(B.f,q+n+r+m) +if(p.p(a,B.iP)){n=s.a +n.at=o +n.T()}if(p.p(a,B.pd)&&p.p(a,B.pe)){A.Z(B.f,q+p.j(a)+r+m+", hey we have both mobile and wifi network?") +return}if(p.p(a,B.pd)){A.Z(B.f,q+p.j(a)+r+m+", connectivity changed into wifi") +p=s.a +p.at=o +p.T() +return}if(p.p(a,B.pe)){A.Z(B.f,q+p.j(a)+r+m+", connectivity changed into mobile") +p=s.a +p.at=o +p.T() +return}if(p.p(a,B.w6)){A.Z(B.f,q+p.j(a)+r+m+", connectivity changed into other") +p=s.a +A.b5(p.ax).dz() +p.at=o +p.T() +return}}, +$S:2} +A.aEk.prototype={ +$1(a){return a.b.fy.eP()&&!this.a.p(0,a.a)}, +$S:708} +A.aEl.prototype={ +$1(a){return a.b.w}, +$S:709} +A.aEf.prototype={ +$1(a){var s,r,q,p,o="[LavaDeviceVM] device.deviceModulesStatusStream.listen Connection discontinue \u274c",n="device.deviceModulesStatusStream.listen Connection discontinue \u274c",m=this.a +A.Z(B.f,"[LavaDeviceVM] subscriptingToPrinterConnectionStateInfo, _deviceModulesStatus: "+m.y.b.b+", newDeviceModulesStatus: "+a.b.b) +m.y=a +if(m.ax.fy.eP())switch(m.y.b.a){case 1:m.ax.jF(B.cw) +break +case 2:case 4:m.ax.jF(B.iU) +break +case 3:case 5:m.ax.jF(B.h7) +break +case 6:A.Z(B.f,o) +m.ax.jF(B.h7) +m.Ku(m.ax.w,n,!1) +break +default:m.ax.jF(B.cw) +break}else if(m.ax.fy.eO())switch(m.y.b.a){case 1:m.ax.jF(B.cY) +break +case 2:case 4:m.ax.jF(B.iV) +break +case 3:case 5:m.ax.jF(B.h8) +break +case 6:A.Z(B.f,o) +m.ax.jF(B.h8) +m.Ku(m.ax.w,n,!1) +break +default:m.ax.jF(B.cY) +break}s=m.ax.fy.aWd() +r=m.ok +q=m.ax.w +if(s){s=t.N +r.cj(A.C([q,A.CV(A.w(s,t.z))],s,t.th))}else{p=J.i(r.a,q) +s=p==null +if(s&&!m.y.as.yV())r.cj(A.C([q,m.y.as.ix()],t.N,t.th)) +else if(!s&&p.WU(m.y.as)&&!m.y.as.yV())r.cj(A.C([q,m.y.as.ix()],t.N,t.th))}m.T()}, +$S:710} +A.aEe.prototype={ +$1(a){return this.aif(a)}, +aif(a){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$$1=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:A.Z(B.f,"[LavaDeviceVM] _subscriptingToLogoutStream, message: "+J.p(a)) +j=t.z +i=A.f7(a,j,j) +s=J.e(i.h(0,"action"),"logout")?3:4 +break +case 3:m=i.h(0,"sn") +i.h(0,"userid") +if(m==null||J.e(m,"")){A.Z(B.p,"[LavaDeviceVM] _subscriptingToLogoutStream, logoutSn is null, message: "+A.co(i)) +s=1 +break}j=n.a +s=J.e(m,j.ax.w)?5:7 +break +case 5:p=9 +s=j.ax.fy.eP()&&j.ax.e.length!==0?12:13 +break +case 12:s=14 +return A.f(j.Cv(j.ax),$async$$1) +case 14:case 13:p=2 +s=11 +break +case 9:p=8 +f=o +l=A.v(f) +if(l instanceof A.k1)if(l.a===B.de||l.a===B.df){if(j.ax.fr){g=j.id +k=g.a +if(!J.cO(k,m)){J.bT(k,m,j.ax) +g.cj(k)}}A.Z(B.A,"[LavaDeviceVM] _subscriptingToLogoutStream, deleteDeviceFromList, _currentDeviceModel: "+j.ax.aD())}s=11 +break +case 8:s=2 +break +case 11:s=6 +break +case 7:A.Z(B.f,"[LavaDeviceVM] _subscriptingToLogoutStream, logoutSn != _currentDeviceModel.sn, message: "+A.co(i)) +j.r7(m,"device.notifyUserDeviceLogoutStream logout") +case 6:case 4:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$$1,r)}, +$S:137} +A.aEc.prototype={ +$1(a){var s,r,q,p,o="[LavaDeviceVM] _subscriptingToDeviceDownloadTaskStream, state: " +if(a.d){A.Z(B.f,o+a.j(0)) +this.a.x.q(0,A.C(["action","download","state","error","message",a.e],t.N,t.z))}else{s=this.a +r=t.N +q=t.z +p=s.x +if(a.c){A.Z(B.f,o+a.j(0)) +p.q(0,A.C(["action","download","state","done","path",a.b,"message","Download done"],r,q)) +A.eC(B.dN,new A.aEb(s),t.P)}else p.q(0,A.C(["action","download","state","downloading","path",a.f,"progress",a.a,"message","Downloading"],r,q))}}, +$S:298} +A.aEb.prototype={ +$0(){this.a.x.q(0,A.w(t.N,t.z))}, +$S:4} +A.aEd.prototype={ +$0(){A.eC(B.a_1,new A.aEa(this.a),t.P)}, +$S:0} +A.aEa.prototype={ +$0(){var s=this.a,r=s.w +if(r!=null)r.S(0) +s.a8k()}, +$S:4} +A.aEn.prototype={ +$1(a4){var s,r,q,p,o,n,m,l,k,j,i,h=this,g="event_id",f="data",e="result",d="state",c="denied",b="app_id",a=B.a7.jo(0,a4,null),a0=A.w(t.N,t.z),a1=t.a,a2=a1.a(J.i(a,"header")),a3=a1.a(J.i(a,"payload")) +if(J.cO(a2,g)&&J.i(a2,g)!=null)if(J.i(J.i(a3,f),f)!=null&&typeof J.i(J.i(a3,f),f)=="string")if(t.f.b(J.i(J.i(a3,f),f)))a0=J.i(J.i(a3,f),f) +else a0=B.a7.jo(0,J.i(J.i(a3,f),f),null) +a1="[LavaDeviceVM] ["+h.c +k=h.a +j=h.d +A.Z(B.f,a1+"] requestAuthCodeWeb, [wcpClient.clientDataStream.listen] wcpResponse: "+J.p(a)+", "+J.p(a0)+", curSeqId: "+k.a+", appId: "+j) +if(J.i(a0,"id")!=null){s=J.p(J.i(a0,"id")) +if(J.e(s,k.a)){A.Z(B.f,a1+"] requestAuthCodeWeb, [wcpClient.clientDataStream.listen] seqId: "+A.c(s)+", curSeqId: "+k.a+", response[result]: "+J.p(J.i(a0,e))+", result[state]: "+A.c(J.i(J.i(a0,e),d))+"}") +if(J.i(a0,e)!=null){r=J.i(J.i(a0,e),d) +if(r!=null)switch(r){case"authorizing":A.Z(B.f,a1+"] requestAuthCodeWeb, [wcpClient.clientDataStream.listen] updateAuthorizedResult, waiting") +h.e.$2(B.bj,null) +break +case"error":A.Z(B.f,a1+"] requestAuthCodeWeb, [wcpClient.clientDataStream.listen] updateAuthorizedResult, error: "+A.c(J.i(J.i(a0,e),"message"))) +h.e.$2(B.dC,"error") +break +case"rejected":case"denied":A.Z(B.f,a1+"] requestAuthCodeWeb, [wcpClient.clientDataStream.listen] updateAuthorizedResult, rejected: "+A.c(J.i(J.i(a0,e),"message"))) +h.e.$2(B.dC,c) +k=h.b +i=k.p3 +if(i!=null)i.S(0) +k.p3=null +h.f.jq(0) +h.r.bv(0,"0") +break +default:k=h.b +i=k.p3 +if(i!=null)i.S(0) +k.p3=null +h.f.jq(0) +h.r.bv(0,"0") +break}}}}if(J.i(a0,"method")!=null){q=J.i(a0,"method") +if(J.e(q,"notify_cloud_auth")){p=J.i(a0,"params") +if(p!=null){o=J.i(J.i(p,0),d) +n=J.i(J.i(p,0),b)!=null&&!J.e(J.i(J.i(p,0),b),"")?J.p(J.i(J.i(p,0),b)):j +m=J.p(J.i(J.i(p,0),"userid")) +A.Z(B.f,a1+"] requestAuthCodeWeb, [wcpClient.clientDataStream.listen], method: "+A.c(q)+", state: "+A.c(o)+", params: "+J.p(J.i(p,0))) +if(o!=null&&B.c.cw(m.toLowerCase())===h.w.ay&&j===n)if(J.e(o,"approve")){l=J.p(J.i(J.i(p,0),"pin_code")) +a1=h.b +k=a1.p3 +if(k!=null)k.S(0) +a1.p3=null +h.f.jq(0) +h.r.bv(0,l)}else if(J.e(o,c)){h.e.$2(B.dC,c) +a1=h.b +k=a1.p3 +if(k!=null)k.S(0) +a1.p3=null +h.f.jq(0) +h.r.bv(0,"0")}}}}}, +$S:16} +A.aEh.prototype={ +$1(a){return B.c.p(a,this.a.w)}, +$S:21} +A.aEi.prototype={ +$0(){return""}, +$S:17} +A.aEj.prototype={ +$1(a){return this.aig(a)}, +aig(a){var s=0,r=A.n(t.H),q=this,p,o,n,m,l,k,j +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=q.c +n="[LavaDeviceVM] ["+o +m=q.b +l=J.dd(a) +k=q.d +j=k.a +A.Z(B.f,n+"] 1 connectDevice [device.authorizeResultStream.listen], current authorizationStatusNotifier.value: "+A.c(m.k1.a)+", updateAuthorizedResult: "+l.j(a)+", call _updateAuthorizedResult(status, "+j.w+")") +m.nF(a,j,o+", connectDevice, [device.authorizeResultStream.listen]") +if(l.h(a,"state")!=null)if(!J.e(l.h(a,"state"),"ready"))p=J.e(l.h(a,"state"),"authorized")&&J.e(l.h(a,"action"),"approve") +else p=!0 +else p=!1 +s=p?2:4 +break +case 2:A.Z(B.f,n+"] 2 connectDevice, [device.authorizeResultStream.listen], _authorizationStatusSub ready, call _realConnect start, flag: "+o) +o=q.a +s=!o.a?5:6 +break +case 5:o.a=!0 +s=7 +return A.f(m.aI9(k,q.e),$async$$1) +case 7:case 6:s=3 +break +case 4:if(J.e(l.h(a,"state"),"rejected")){A.Z(B.f,n+"] 2 connectDevice, [device.authorizeResultStream.listen], _authorizationStatusSub rejected, call device.dispose:"+A.at(k)+", flag: "+o) +k.m() +m.r7(j.w,o+", "+q.f.aD()+" connectDevice, status: "+l.j(a))}else if(J.e(l.h(a,"state"),"authorizing")){if(J.e(l.h(a,"action"),"startCountDown")&&j.fy.eO()){A.Z(B.f,n+u.d5+l.j(a)+", call showAuthorizationDialog") +o=q.r +if(o!=null)o.$1(B.bj)}else if(j.fy.eP()){A.Z(B.f,n+u.d5+l.j(a)+", call showAuthorizationDialog") +o=q.r +if(o!=null)o.$1(B.bj)}}else if(J.e(l.h(a,"state"),"notConnected")){A.Z(B.f,n+"] 4 connectDevice !!! [device.authorizeResultStream.listen], updateAuthorizedResult: "+l.j(a)) +if(!q.f.fy.eO()){A.Z(B.f,n+"] 4 connectDevice !!! [device.authorizeResultStream.listen], updateAuthorizedResult: "+l.j(a)+", call showAuthorizationDialog") +o=q.r +if(o!=null)o.$1(B.it)}}case 3:return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:137} +A.aEp.prototype={ +$1(a){return a.aD()}, +$S:22} +A.aEq.prototype={ +$1(a){return a.aD()}, +$S:22} +A.aEr.prototype={ +$1(a){return a.w===this.a.w}, +$S:31} +A.aEs.prototype={ +$0(){return A.kE(A.w(t.N,t.z))}, +$S:715} +A.aEt.prototype={ +$1(a){return a.w}, +$S:22} +A.aEu.prototype={ +$1(a){return a.w}, +$S:22} +A.aEv.prototype={ +$2(a,b){return this.a.p(0,b.w)}, +$S:297} +A.aEw.prototype={ +$1(a){this.a.b.C(0,a)}, +$S:19} +A.aE8.prototype={ +$1(a){}, +$S:716} +A.aE9.prototype={ +$1(a){A.Z(B.p,"[LavaDeviceVM] _subscribeToDeviceLogs, error: "+A.c(a))}, +$S:2} +A.aDP.prototype={ +$1(a){return this.aie(a)}, +aie(a){var s=0,r=A.n(t.H),q=this,p,o,n,m,l,k +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=a.c?2:4 +break +case 2:A.u("requestDeviceDownloadAndPrint taskState: "+a.j(0),null) +o=q.b +n=t.N +m=t.z +l=o.x +s=a.d?5:7 +break +case 5:o=a.e +k=A.c(o) +A.u("requestDeviceDownloadAndPrint taskError! "+k,null) +l.q(0,A.C(["action","download","state","error","message",o],n,m)) +throw A.d(A.ae("[LavaDeviceVM] Download failed "+k)) +s=6 +break +case 7:p=a.b +l.q(0,A.C(["action","download","state","done","path",p,"message","Download done"],n,m)) +n=t.P +A.eC(B.dN,new A.aDN(o),n) +m=q.c +l=""+m +A.u(u.Y+A.c(p)+" autoStart: "+l,null) +k=p.length +s=k!==0&&m?8:9 +break +case 8:A.u(u.Y+A.c(p)+", autoStart: "+l+", startPrint start",null) +s=o.ax.fy.eO()?10:11 +break +case 10:s=12 +return A.f(q.d.wl(p),$async$$1) +case 12:case 11:case 9:A.eC(B.bK,new A.aDO(q.a),n) +case 6:s=3 +break +case 4:o=a.a +A.Z(B.A,"[LavaDeviceVM] update device download process... "+A.c(o)) +q.b.x.q(0,A.C(["action","download","state","downloading","progress",o,"message","Downloading"],t.N,t.z)) +case 3:return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:717} +A.aDN.prototype={ +$0(){this.a.x.q(0,A.w(t.N,t.z))}, +$S:4} +A.aDO.prototype={ +$0(){var s=this.a,r=s.a +if(r!=null)r.S(0) +s.a=null}, +$S:4} +A.aDE.prototype={ +$2(a,b){var s="modified" +return B.d.bO(A.bAj(J.p(J.i(b,s))),A.bAj(J.p(J.i(a,s))))}, +$S:718} +A.aDZ.prototype={ +$1(a){return a.b!=null}, +$S:719} +A.aE_.prototype={ +$1(a){return A.c(a.a)+"='"+A.c(a.b)+"'"}, +$S:720} +A.aDX.prototype={ +$1(a){return a.a.toUpperCase()+"="+A.c(a.b)}, +$S:721} +A.aDG.prototype={ +$1(a){return J.p(J.i(a,"deviceId"))===this.a.e}, +$S:48} +A.aDH.prototype={ +$0(){var s=t.z +return A.w(s,s)}, +$S:722} +A.aE4.prototype={ +$1(a){var s,r=$.av6 +J.bF2(r,new A.aE3()) +s=this.a +s.ch=!1 +A.bKl(s,r) +s.T()}, +$S:85} +A.aE3.prototype={ +$2(a,b){var s="link_mode",r=J.a0(b) +return J.e(r.h(b,s),"")||r.h(b,s)==null}, +$S:301} +A.aE2.prototype={ +$2(a,b){return this.a.p(0,a)}, +$S:301} +A.oO.prototype={ +D(){return"SendButtonState."+this.b}} +A.NF.prototype={ +we(a,b,c){var s=this +s.a=a +s.b=b +s.c=c +s.T()}, +il(a,b){return this.we(a,b,0)}, +J(a){return this.we(a,"",0)}, +wc(a){this.a=B.am_ +this.b=a +this.T()}, +m(){this.dN()}} +A.AJ.prototype={ +F(a){var s,r=this,q=null,p=A.bq(12),o=A.aa(q,A.X(r.c,q,q,q,q,B.aq3,B.bt,q),B.h,q,q,q,q,q,q,q,B.a_M,q,q,1/0),n=A.aa(q,A.X(r.d,q,q,q,q,B.arT,B.bt,q),B.h,q,q,q,q,q,q,q,B.a_L,q,q,1/0),m=A.aa(q,q,B.h,B.c1,q,q,q,1,q,q,q,q,q,1/0),l=A.cf(A.fn(q,A.aa(q,A.cL(A.X(r.f,q,q,q,q,A.cb(q,q,B.ai,q,q,q,q,q,q,q,q,16,q,q,B.K,q,q,!0,q,q,q,q,q,q,q,q),q,q),q,q),B.h,q,q,new A.bb(B.kZ,q,q,B.Rm,q,q,q,B.E),q,48,q,q,q,q,q,q),B.S,!1,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,new A.at9(r,a),q,q,q,q,q,q,!1,B.aV),1),k=A.aa(q,q,B.h,B.c1,q,q,q,48,q,q,q,q,q,1),j=r.x +if(j==null)j=B.kN +s=t.p +return A.Iy(q,B.t,A.aa(q,A.b2(A.a([o,n,m,A.bt(A.a([l,k,A.cf(A.fn(q,A.aa(q,A.cL(A.X(r.e,q,q,q,q,B.asQ,q,q),q,q),B.h,q,q,new A.bb(j,q,q,B.Rn,q,q,q,B.E),q,48,q,q,q,q,q,q),B.S,!1,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,q,new A.ata(r,a),q,q,q,q,q,q,!1,B.aV),1)],s),B.l,B.o,B.k)],s),B.l,B.o,B.aE,B.r),B.h,q,q,new A.bb(B.n,q,q,p,q,q,q,B.E),q,q,q,q,q,q,q,280),q,0,q,q,q,q)}} +A.atb.prototype={ +$1(a){var s=this +return new A.AJ(s.a,s.b,s.c,s.d,s.e,s.f,s.r,s.w,null)}, +$S:724} +A.at9.prototype={ +$0(){A.bU(this.b,!1).fM(!1)}, +$S:0} +A.ata.prototype={ +$0(){A.bU(this.b,!1).fM(!0)}, +$S:0} +A.AK.prototype={ +F(a){var s=null,r=A.bq(16) +return A.Iy(s,this.z,this.avf(a),s,s,B.wX,s,new A.cu(r,B.x),s)}, +avf(a){var s=null,r=this.ch,q=A.a([],t.p) +q.push(A.cf(A.m2(this.avd(a),s,B.S,s,s,B.aw),1)) +return new A.ep(new A.au(0,this.ax,0,r),A.bmx(new A.aB(s,r,A.b2(q,B.l,B.o,B.k,B.r),s)),s)}, +avd(a){var s=A.a([],t.p) +B.b.G(s,this.x) +return new A.be(B.bW,A.b2(s,B.cv,B.o,B.aE,B.r),null)}} +A.a9b.prototype={ +F(a){var s=this,r=null,q=A.fn(r,A.aa(r,A.X(s.c,r,r,r,r,A.cb(r,r,B.h_,r,r,r,r,r,r,r,r,14,r,r,B.K,r,r,!0,r,r,r,r,r,r,r,r),r,r),B.h,r,r,r,r,r,r,r,B.wR,r,r,r),B.S,!1,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,new A.aTG(s),r,r,r,r,r,r,!1,B.aV),p=s.d,o=p.length>1?A.X("|",r,r,r,r,A.cb(r,r,B.iK,r,r,r,r,r,r,r,r,14,r,r,r,r,r,!0,r,r,r,r,r,r,r,r),r,r):B.ax +p=new A.mW(p,A.af(p).i("mW<1>")) +p=A.a([q,B.cf,o,B.fw,A.cf(A.aa(r,A.bt(p.gdG(p).eR(0,new A.aTH(s),t.iF).cJ(0),B.h3,B.o,B.k),B.h,r,r,r,r,1/0,r,r,r,r,r,r),1)],t.p) +q=s.z +if(q!=null)p.push(q) +return new A.aB(r,40,A.aa(r,A.bt(p,B.l,B.o,B.k),B.h,r,r,new A.bb(s.x,r,r,new A.cY(new A.bg(8,8),new A.bg(8,8),B.B,B.B),r,r,r,B.E),r,r,r,r,B.bV,r,r,r),r)}} +A.aTG.prototype={ +$0(){var s=this.a.r +return A.cI([s==null?null:s.$0()],t.H)}, +$S:0} +A.aTH.prototype={ +$1(a){var s=null,r=a.a,q=a.b.a,p=this.a,o=p.e===r,n=o?B.wT:B.j5 +return new A.be(B.wL,A.fn(s,A.aa(s,q,B.h,s,s,new A.bb(o?B.n:B.t,s,s,B.Rw,s,s,s,B.E),s,s,s,s,n,s,s,s),B.S,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,new A.aTF(p,r),s,s,s,s,s,s,!1,B.aV),s)}, +$S:725} +A.aTF.prototype={ +$0(){var s=this.a,r=this.b,q=s.f +if(q!=null&&s.e!==r)q.$1(r) +return null}, +$S:0} +A.r2.prototype={} +A.JE.prototype={ +D(){return"FramePlayerState."+this.b}} +A.xc.prototype={ +a0(){return new A.RJ(B.j9,B.fY,null,null)}} +A.RJ.prototype={ +m(){var s=this,r=s.d +if(r!=null)r.S(0) +s.as=null +r=s.fr +if(r!=null)r.eT(0) +s.fr=null +A.aTx(A.a([B.YS],t.UW)) +A.a97(B.ap9,null) +s.aq2()}, +aj(){var s,r=this +r.aw() +r.a4E() +r.aKe() +r.aL7() +s=r.a.c +if(s!=null){r.SS(s) +if(r.r===B.j9)r.r=B.hm}}, +b1(a){var s,r=this +r.bb(a) +s=r.a.c +if(s!=a.c&&s!=null)r.SS(s) +if(r.r===B.j9&&r.a.c!=null)r.J(new A.b7T(r)) +if(r.r===B.hm&&r.a.c==null)r.J(new A.b7U(r))}, +aKe(){var s=this,r=null,q=A.c2(r,B.pw,r,r,s) +s.ax=q +s.ay=A.cl(B.X,q,r) +q=s.ax +q.ct() +q=q.ec$ +q.b=!0 +q.a.push(new A.b7P(s))}, +a0w(a){var s=B.c.p(a,"?")?"&":"?" +return a+s+"_nocache="+Date.now()+"_"+this.cy.pR(1e4)}, +a2c(a,b){if(b){this.a.toString +return new A.pO(a,"",B.IS)}else return new A.Cw(a,B.IS)}, +a1D(){var s,r=this,q=r.at +if(q!=null&&r.as!=null){q.toString +s=r.as +s.toString +q.K(0,s) +r.as=r.at=null}}, +a6D(a){var s,r,q,p,o,n=this +if(n.c==null||n.ch)return +s=++n.w +r=new A.aS(Date.now(),0,!1) +n.x=r +q=B.c.bF(a,".enc") +r=r.j(0) +p=q?" \u52a0\u5bc6\u56fe\u7247":" \u666e\u901a\u56fe\u7247" +A.u("[Frame "+s+"] \u5f00\u59cb\u9884\u52a0\u8f7d\u56fe\u7247 - \u5f00\u59cb\u65f6\u95f4: "+r+p+" url: "+a,null) +o=n.a2c(n.a0w(a),q) +p=n.c +p.toString +A.bXk(o,p).ak(new A.b7N(n,s,o),t.P).dc(new A.b7O(n,s))}, +a4p(){var s=this +A.dE("\u56fe\u7247\u52a0\u8f7d\u5931\u8d25\uff0c\u8fde\u7eed\u5931\u8d25\u6b21\u6570: "+ ++s.db+"/5") +if(s.db>=5){$.ac().a3("\u8fde\u7eed\u52a0\u8f7d\u5931\u8d25 5 \u6b21\uff0c\u6682\u505c\u89c6\u9891\u64ad\u653e") +s.a4v() +if(s.c!=null)A.cx(A.F("Network connection failed. Please check your network connection.",null))}}, +SS(a){var s,r,q,p,o=this +if(o.c==null)return +o.ch=!0 +o.a1D() +s=B.c.bF(a,".enc") +r=o.a2c(o.a0w(a),s) +q=r.Z(B.a1S) +o.at=q +p=new A.iQ(new A.b7L(o,r),null,new A.b7M(o)) +o.as=p +q.a4(0,p)}, +aL7(){var s=this.d +if(s!=null)s.S(0) +this.d=A.E5(B.bl,new A.b7Q(this))}, +a4E(){var s,r=this +r.J(new A.b7H(r)) +s=r.e +if(s!=null)s.S(0) +r.e=A.bZ(B.hc,new A.b7I(r))}, +a4v(){this.J(new A.b7F(this)) +this.a.d.$0()}, +a13(a,b,c,d){var s,r,q=null,p=c?q:d,o=A.bq(20),n=A.Y(B.d.aa(255*(c?0.3:0.5)),0,0,0) +if(c)s=B.anr +else s=A.hD(a,b==null?B.n:b,q,24) +r=A.fI(B.T,!0,q,A.eQ(!1,o,!0,A.aa(q,s,B.h,q,q,new A.bb(n,q,q,q,q,q,q,B.bw),q,36,q,q,q,q,q,36),q,!0,q,q,q,q,q,q,q,q,q,p,q,q,q,q),B.h,B.t,0,q,q,q,q,q,B.bL) +return r}, +asL(a,b){return this.a13(a,null,!1,b)}, +asM(a,b,c){return this.a13(a,b,!1,c)}, +at1(){var s,r,q,p=this,o=null +if(p.r===B.j9)return A.b2(A.a([B.fZ,B.aK,A.X(A.F("Wait for device response...",o),o,o,o,o,B.asR,o,o)],t.p),B.l,B.ac,B.k,B.r) +s=A.a([],t.p) +if(p.z==null&&p.Q==null)s.push(A.aa(o,A.cL(A.wh(o,o,o,o,o,0,o,4,o,o),o,o),B.h,B.v,o,o,o,o,o,o,o,o,o,o)) +r=p.y +if((r?p.z:p.Q)!=null){r=r?p.z:p.Q +r.toString +s.push(A.qD(0,A.aC7(B.O,o,o,o,B.eU,B.M,o,!0,o,r,o,o,!1,B.dj,o)))}r=p.y +if((r?p.Q:p.z)!=null){q=p.ay +q===$&&A.b() +r=r?p.Q:p.z +r.toString +s.push(A.qD(0,new A.eB(q,!1,A.aC7(B.O,o,o,new A.b7E(),B.eU,B.M,o,!0,o,r,o,o,!1,B.dj,o),o)))}return A.cq(B.a2,s,B.w,B.OT,o)}, +F(a){var s=this,r=null,q=A.cr(a,r,t.l).w,p=s.at1(),o=s.f?1:0,n=t.p,m=A.a([A.eH(r,s.asL(B.a1s,s.gaBf()),r,r,r,16,16,r)],n),l=s.a +l=l.Q?B.J5:B.n +m.push(A.eH(r,s.asM(B.a1f,l,new A.b7R(s)),r,r,r,16,72,r)) +s.a.toString +return A.aa(r,A.fn(B.aU,A.cq(B.a2,A.a([p,A.br0(A.cq(B.a2,m,B.w,B.W,r),B.X,B.ec,o)],n),B.w,B.OT,r),B.S,!1,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,r,new A.b7S(s),r,r,r,!1,B.aV),B.h,B.v,r,r,r,268,r,r,r,r,r,q.a.a)}} +A.b7T.prototype={ +$0(){this.a.r=B.hm}, +$S:0} +A.b7U.prototype={ +$0(){this.a.r=B.xz}, +$S:0} +A.b7P.prototype={ +$1(a){var s,r +if(a===B.am){s=this.a +r=s.ax +r===$&&A.b() +r.sk(0,1) +r=s.a.c +if(r!=null&&s.r===B.hm&&!s.ch){r.toString +s.a6D(r) +r=s.a.c +r.toString +s.a6D(r)}}}, +$S:10} +A.b7N.prototype={ +$1(a){var s=Date.now(),r=this.a,q=r.x +q.toString +A.u("[Frame "+this.b+"] \u9884\u7f13\u5b58\u5b8c\u6210 - \u7f13\u5b58\u7528\u65f6: "+B.e.cn(new A.aS(s,0,!1).hC(q).a,1000)+"ms",null) +r.db=0 +s=this.c +if(r.y)r.z=s +else r.Q=s}, +$S:20} +A.b7O.prototype={ +$1(a){var s=A.c(a) +$.ac().a3("[Frame "+this.b+"] \u9884\u52a0\u8f7d\u56fe\u7247\u5931\u8d25: "+s) +this.a.a4p()}, +$S:2} +A.b7L.prototype={ +$2(a,b){var s,r=this.a +if(r.c==null)return +s=this.b +if(r.y){r.z=s +A.u("\ud83d\udd27 \u8bbe\u7f6e _image1 \u6210\u529f\uff0c_image1Ready=true",null)}else{r.Q=s +A.u("\ud83d\udd27 \u8bbe\u7f6e _image2 \u6210\u529f\uff0c_image2Ready=true",null)}s=r.ax +s===$&&A.b() +s.sk(0,0.8) +r.J(new A.b7K(r)) +r.ax.n5(0,0.8)}, +$S:140} +A.b7K.prototype={ +$0(){var s=this.a +s.y=!s.y +s.ch=!1 +s=s.fr +if(s!=null)s.dL()}, +$S:0} +A.b7M.prototype={ +$2(a,b){var s=A.c(a) +$.ac().a3("\u56fe\u7247\u52a0\u8f7d\u9519\u8bef: "+s) +s=this.a +s.a4p() +s.a1D() +s.J(new A.b7J(s))}, +$S:126} +A.b7J.prototype={ +$0(){var s=this.a +s.ch=!1 +if(s.y)s.z=null +else s.Q=null}, +$S:0} +A.b7Q.prototype={ +$1(a){var s,r=this.a +if(r.r===B.hm&&r.c!=null&&!r.ch&&r.a.c!=null){s=r.a.c +s.toString +r.SS(s)}}, +$S:85} +A.b7H.prototype={ +$0(){return this.a.f=!0}, +$S:0} +A.b7I.prototype={ +$0(){var s=this.a +if(s.c!=null)s.J(new A.b7G(s))}, +$S:0} +A.b7G.prototype={ +$0(){return this.a.f=!1}, +$S:0} +A.b7F.prototype={ +$0(){var s,r=this.a +if(r.r===B.hm){r.r=B.xz +s=r.d +if(s!=null)s.S(0) +r.d=null +s=r.e +if(s!=null)s.S(0) +r.e=null +r.y=r.ch=!1 +r.Q=r.z=null +r.db=0 +r.f=!1}else{r.r=B.j9 +r.db=0}}, +$S:0} +A.b7E.prototype={ +$3(a,b,c){var s=J.p(b),r=A.c(c) +$.ac().a3("\u56fe\u7247\u663e\u793a\u9519\u8bef: "+s+" "+r) +return B.ez}, +$S:726} +A.b7S.prototype={ +$1(a){return this.a.a4E()}, +$S:74} +A.b7R.prototype={ +$0(){var s=this.a.a +s=s.w.$1(!s.Q) +return s}, +$S:0} +A.V_.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.Ek.prototype={ +F(a){var s=null,r=A.bq(8),q=A.cL(A.JW("assets/images/deviceInvalidVersion.png",s,s,s,128,s,128),s,s),p=A.X(A.F("device_firmware_version_not_compatible_desc",s),s,s,s,s,B.aqn,B.bt,s),o=A.buN(s,s,s,s,s,s,s,s,s,s,s,B.Oz,B.wM,s,new A.cu(A.bq(24),B.x),new A.br(A.q(a).ax.b,1,B.I,-1),s,s,s,s),n=A.F("dont_remind_again_desc",s),m=A.q(a).p2.z +o=A.cf(new A.a5m(this.c,s,s,s,o,s,s,!1,s,!0,A.X(n,s,s,s,s,m==null?s:m.cc(A.q(a).ax.b),s,s),s),1) +n=A.im(s,s,A.q(a).ax.b,s,s,s,s,s,s,B.n,s,s,B.Oz,B.wM,s,new A.cu(A.bq(24),B.x),s,s,s,s,s) +m=t.p +return A.Iy(s,B.n,A.aa(s,A.b2(A.a([new A.aB(120,120,q,s),B.i5,p,B.t8,A.bt(A.a([o,B.fw,A.cf(A.f6(!1,A.X(A.F("Remind later",s),s,s,s,s,s,s,s),s,s,B.a3,s,s,s,s,this.d,s,n),1)],m),B.l,B.jz,B.k)],m),B.l,B.o,B.aE,B.r),B.h,s,s,s,s,s,s,s,B.a_I,s,s,400),s,s,s,s,new A.cu(r,B.x),s)}} +A.aVx.prototype={ +$1(a){return new A.Ek(new A.aVv(a),new A.aVw(a),null)}, +$S:727} +A.aVv.prototype={ +$0(){A.bU(this.a,!1).fM(!1)}, +$S:0} +A.aVw.prototype={ +$0(){A.bU(this.a,!1).fM(!0)}, +$S:0} +A.Wv.prototype={ +F(a){var s,r=this,q=null,p=r.w,o=A.bq(p),n=A.ee(A.q(a).ax.k2,4) +p=A.bq(p) +s=r.e +return A.aa(q,A.fX(q,B.kB,q,q,new A.aB(s,s,r.d,q),q,r.x,B.Z,q,A.Ah(q,q,q,new A.bQ(new A.apX(),t.b),q,q,q,q,q,q,q,q,q,q,new A.bK(A.Y(51,158,158,158),t.rc),new A.bK(B.Z,t.WY),q,new A.bK(new A.cu(p,B.x),t._o),q,q,q,B.mP,q,q),q),B.h,q,q,new A.bb(r.c,q,n,o,q,q,q,B.E),q,r.r,q,q,q,q,q,r.f)}} +A.apX.prototype={ +$1(a){if(a.p(0,B.a4))return B.cW +return B.t}, +$S:9} +A.H1.prototype={ +F(a){var s=this,r=null,q=A.Eb(s.a3U(!0),A.bkR(28,A.q(a).ax.c,56,B.pP,30,new A.apY(s),56)),p=A.q(a).p2.x +p=p==null?r:p.Vi(10) +return A.b2(A.a([new A.fh(B.O,r,r,q,r),B.aK,A.X(s.c,r,r,r,r,p,r,r),B.aK,new A.fh(B.O,r,r,A.Eb(s.a3U(!1),A.bkR(28,A.q(a).ax.c,56,B.pP,30,new A.apZ(s),56)),r)],t.p),B.l,B.ac,B.k,B.r)}, +a3U(a){if(a)return 3.14159265359 +else return 0}} +A.apY.prototype={ +$0(){var s=this.a.d.$1(B.qD) +return s}, +$S:0} +A.apZ.prototype={ +$0(){var s=this.a.d.$1(B.qE) +return s}, +$S:0} +A.Id.prototype={ +a0(){return new A.aeh()}, +gk(a){return this.c}} +A.aeh.prototype={ +F(a){var s,r,q,p,o=this,n=null,m=A.bvW(a) +o.a.toString +s=A.q(a) +o.a.toString +r=A.q(a).ax +q=r.to +if(q==null){q=r.a2 +r=q==null?r.k3:q}else r=q +o.a.toString +q=A.q(a).ax +p=q.to +if(p==null){p=q.a2 +q=p==null?q.k3:p}else q=p +o.a.toString +p=A.q(a) +o.a.toString +m=m.aQs(r,s.ax.b,q,B.c1,B.t,p.ax.c,new A.a7s(12),B.T5,8,new A.aAe()) +s=o.a +r=s.d +q=s.e +p=s.f +return A.bvU(new A.O1(s.c,s.ay,s.ch,r,q,p,n,n),m)}} +A.a02.prototype={ +F(a){var s,r,q=this,p=null +if(!q.d){s=q.e +r=A.ee(q.r,1) +return A.aa(p,A.cq(B.O,A.a([A.Eb(-0.7853981633974483,A.aa(p,p,B.h,q.w,p,p,p,1,p,p,p,p,p,s-2))],t.p),B.w,B.W,p),B.h,p,p,new A.bb(q.x,p,r,p,p,new A.BV(B.ip,B.eF,B.ch,B.a67,p,p),p,B.bw),p,q.f,p,p,p,p,p,s)}s=q.c +if((s.gk(s)>>>24&255)===0){s=A.jh("#6d6d6d") +s=A.ee(A.Y(s.d,s.a,s.b,s.c),0.1) +return A.aa(p,A.fB(p,p,p,new A.Xi(B.VO,B.W_,3,p),B.V),B.by,p,p,new A.bb(p,p,s,p,p,p,p,B.bw),p,q.f,p,p,p,p,p,q.e)}return A.aa(p,p,B.h,p,p,new A.bb(s,p,A.ee(q.r,0.8),p,p,p,p,B.bw),p,q.f,p,p,p,p,p,q.e)}} +A.C5.prototype={ +j(a){var s=this +return"MaterialHead(index: "+s.a+", id: "+s.b+", material: "+s.c+", vendor: "+s.e+", color: "+s.x+", serie: "+s.d+", minTemperature: "+s.f+", maxTemperature: "+s.r+", bedTemperature: "+s.w+", isAvailable: true, isSelected: false, isFed: "+s.z+", official: "+s.Q+")"}} +A.wO.prototype={ +F(a){var s,r,q,p,o=null,n=this.c,m=A.jh(n.x),l=A.Y(m.d,m.a,m.b,m.c) +A.bGd(l) +s=n.z +m=A.bm0(B.vG,l,o,34,s,B.vG,34) +r=t.p +m=A.cq(B.O,A.a([m,A.cL(A.X(""+(n.a+1),o,o,o,o,A.cb(o,o,s?A.bGc(l):B.v,o,o,o,o,o,o,o,o,12,o,o,B.pJ,o,o,!0,o,o,o,o,o,o,o,o),o,o),o,o)],r),B.w,B.W,o) +q=A.Y(B.d.aa(127.5),32,32,32) +p=A.bq(70) +p=A.aa(o,A.cL(A.X(n.c,1,B.al,o,o,B.atp,B.bt,o),o,o),B.h,o,o,new A.bb(q,o,o,p,o,o,o,B.E),o,o,o,o,B.wY,o,o,o) +if(n.Q){n=A.q(a).ax +q=n.to +if(q==null){q=n.a2 +n=q==null?n.k3:q}else n=q +n=A.eE("assets/svgs/device/iconFilamentCheck.svg",n,B.M,o,20)}else{n=A.q(a).ax +q=n.to +if(q==null){q=n.a2 +n=q==null?n.k3:q}else n=q +n=A.eE("assets/svgs/device/iconFilamentEdit.svg",n,B.M,o,20)}return A.b2(A.a([A.eQ(!1,o,!0,A.aa(o,A.cq(B.a2,A.a([B.akH,A.aa(o,A.b2(A.a([B.dZ,m,B.bf,p,B.k3,A.cf(n,1),B.bf],r),B.l,B.ac,B.k,B.r),B.h,B.t,o,o,o,o,o,B.a_U,o,o,o,o)],r),B.w,B.W,o),B.h,B.t,o,o,o,140,o,o,o,o,o,64),o,!0,o,o,o,o,o,o,o,o,o,this.e,o,o,o,o)],r),B.l,B.o,B.k,B.r)}} +A.a04.prototype={ +F(a){var s,r,q,p,o,n,m,l=this,k=null,j=l.r +j=j.length!==0?j:A.bt_(l.f) +s=A.az2(l.d,l.e) +r=A.os(!1,B.Z,k,k,!0,k,k,!1,A.X(A.F("Filaments",k),k,k,k,k,A.q(a).p2.w,k,k),k,k,k,!1,k,k,k,k,k,k,A.X(l.c+" "+s,k,k,k,k,A.q(a).p2.as,k,k),k) +q=A.X(A.F("Colors",k),k,k,k,k,A.q(a).p2.w,k,k) +p=A.jh(l.f) +p=A.Y(p.d,p.a,p.b,p.c) +o=A.jh("#6d6d6d") +n=t.p +o=A.os(!1,B.Z,k,k,!0,k,k,!1,q,k,k,k,!1,k,k,k,k,k,k,new A.aB(120,k,A.bt(A.a([A.aa(k,k,B.h,k,k,new A.bb(p,k,A.ee(A.Y(o.d,o.a,o.b,o.c),0.8),k,k,k,k,B.bw),k,16,k,k,k,k,k,16),B.ce,A.X(A.F(j,k),k,k,k,k,A.q(a).p2.as,k,k)],n),B.l,B.cD,B.k),k),k) +p=A.X(A.F("Extruder Temp.",k),k,k,k,k,A.q(a).p2.w,k,k) +q=l.w +if(q==="0\u2103-0\u2103")q="--" +q=A.os(!1,B.Z,k,k,!0,k,k,!1,p,k,k,k,!1,k,k,k,k,k,k,A.X(q,k,k,k,k,A.q(a).p2.as,k,k),k) +p=A.X(A.F("Heated Bed Temp.",k),k,k,k,k,A.q(a).p2.w,k,k) +m=l.x +if(m==="0\u2103")m="--" +m=A.a([r,B.ha,o,B.ha,q,B.ha,A.os(!1,B.Z,k,k,!0,k,k,!1,p,k,k,k,!1,k,k,k,k,k,k,A.X(m,k,k,k,k,A.q(a).p2.as,k,k),k),B.OE],n) +r=l.y +if(r.length!==0){q=A.q(a) +p=A.bq(50) +m.push(A.aa(k,A.bt(A.a([A.X("SN: "+r,k,k,k,k,A.q(a).p2.w,k,k)],n),B.l,B.ac,B.k),B.h,k,k,new A.bb(q.ax.k2,k,k,p,k,k,k,B.E),k,k,k,k,B.bW,k,k,k))}return A.aa(k,A.b2(m,B.l,B.o,B.k,B.r),B.h,B.t,k,k,k,k,k,l.Q,l.z,k,k,k)}} +A.Bf.prototype={ +D(){return"FanType."+this.b}} +A.tw.prototype={} +A.Lb.prototype={ +a0(){return new A.ahf()}} +A.ahf.prototype={ +aj(){var s,r=this +r.aw() +s=r.a +r.d=s.f +r.e=s.r +r.f=s.w}, +aiZ(a){switch(a.a){case 0:return this.d +case 1:return this.e +case 2:return this.f}}, +aj_(a){switch(a.a){case 0:return 0 +case 1:return 0 +case 2:return 0}}, +akv(a,b){var s=this +switch(a.a){case 0:if(s.d===b)return +s.d=b +break +case 1:if(s.e===b)return +s.e=b +break +case 2:if(s.f===b)return +s.f=b +break}s.J(new A.ba9())}, +F(a){var s,r=this,q=A.a([],t.HW) +r.a.toString +q.push(new A.tw(B.a0l,A.F("Main Cooling Fan Speed",null),"assets/svgs/iconMainCooling.svg")) +r.a.toString +q.push(new A.tw(B.a0m,A.F("Assist Cooling Fan Speed",null),"assets/svgs/iconAuxiliaryCooling.svg")) +r.a.toString +s=t.zm +return new A.be(B.bW,A.b2(A.a8(new A.ad(q,new A.ba8(r),s),!0,s.i("aN.E")),B.l,B.o,B.k,B.r),null)}} +A.ba9.prototype={ +$0(){}, +$S:0} +A.ba8.prototype={ +$1(a){var s=this.a,r=a.a,q=s.aiZ(r) +s.aj_(r) +return new A.be(B.a_h,new A.a01(a.c,a.b,q,new A.ba6(s,a),new A.ba7(s,a),null),null)}, +$S:728} +A.ba6.prototype={ +$1(a){return this.a.akv(this.b.a,a)}, +$S:56} +A.ba7.prototype={ +$1(a){this.a.a.x.$2(this.b.a,a) +return null}, +$S:56} +A.a01.prototype={ +F(a){var s,r,q,p,o,n,m=this,l=null,k=t.p,j=A.a([],k) +j.push(A.eE(m.c,l,B.M,20,20)) +j.push(B.ce) +s=m.e +r=B.d.aA(s) +q=A.q(a).p2.x +q=q==null?l:q.aQJ(14,B.K,1.25) +j.push(A.X(m.d+" "+r+"% ",l,l,l,l,q,l,l)) +j=A.bt(j,B.l,B.o,B.k) +s=A.brS(4,100,0,m.w,m.r,s) +q=A.q(a).p2.Q +r=A.X("0%",l,l,l,l,A.cb(l,l,q==null?l:q.b,l,l,l,l,l,l,l,l,12,l,l,l,l,l,!0,l,l,l,l,l,l,l,l),l,l) +q=A.q(a).p2.Q +q=A.X("25%",l,l,l,l,A.cb(l,l,q==null?l:q.b,l,l,l,l,l,l,l,l,12,l,l,l,l,l,!0,l,l,l,l,l,l,l,l),l,l) +p=A.q(a).p2.Q +p=A.X("50%",l,l,l,l,A.cb(l,l,p==null?l:p.b,l,l,l,l,l,l,l,l,12,l,l,l,l,l,!0,l,l,l,l,l,l,l,l),l,l) +o=A.q(a).p2.Q +o=A.X("75%",l,l,l,l,A.cb(l,l,o==null?l:o.b,l,l,l,l,l,l,l,l,12,l,l,l,l,l,!0,l,l,l,l,l,l,l,l),l,l) +n=A.q(a).p2.Q +return A.aa(l,A.b2(A.a([j,B.bf,new A.be(B.a_s,s,l),new A.be(B.a_T,A.bt(A.a([r,q,p,o,A.X("100%",l,l,l,l,A.cb(l,l,n==null?l:n.b,l,l,l,l,l,l,l,l,12,l,l,l,l,l,!0,l,l,l,l,l,l,l,l),l,l)],k),B.l,B.bX,B.k),l)],k),B.ap,B.o,B.k,B.r),B.h,B.t,l,l,l,l,l,l,B.Z,l,l,l)}, +gk(a){return this.e}} +A.Lc.prototype={ +a0(){return new A.Sd()}} +A.Sd.prototype={ +aj(){this.aw() +this.d=B.e.iv(this.a.c,50,150)}, +aF2(a){this.J(new A.baa(this,a))}, +azy(a){this.a.d.$1(B.d.aa(a))}, +F(a){var s=this,r=null,q=t.p,p=A.a([],q) +p.push(A.b2(A.a([A.X(s.a.e,r,r,r,r,A.q(a).p2.r,r,r),B.aK],q),B.l,B.o,B.k,B.r)) +q=s.d +q===$&&A.b() +p.push(A.X(""+B.d.aa(q)+"%",r,r,r,r,A.cb(r,r,A.q(a).ax.b,r,r,r,r,r,r,r,r,32,r,r,B.cZ,r,r,!0,r,r,r,r,r,r,r,r),r,r)) +p.push(B.aK) +p.push(A.brS(4,150,50,s.gazx(),s.gaF1(),s.d)) +p.push(B.anx) +return A.Dj(!0,new A.be(B.a_A,A.b2(p,B.l,B.o,B.aE,B.r),r),B.Z,!0)}} +A.baa.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.a6D.prototype={ +F(a){var s,r,q=this,p=null,o=A.q(a).ax,n=o.d +o=n==null?o.b:n +n=q.w +s=q.r +r=q.f +return A.aa(p,A.cq(B.a2,A.a([q.asG(a),A.aO_(B.Qk,s,n,r,B.Qu,new A.aO2(q)),A.aO_(B.Qn,s,n,r,B.Qv,new A.aO3(q)),A.aO_(B.Ql,s,n,r,B.Qw,new A.aO4(q)),A.aO_(B.Qj,s,n,r,B.Qx,new A.aO5(q))],t.p),B.w,B.W,p),B.h,p,p,new A.bb(o,p,n,p,p,p,p,B.bw),p,q.e,p,p,B.dO,p,p,q.d)}, +asG(a){var s=null,r=this.f,q=A.q(a),p=A.q(a).ax,o=p.p4 +p=(o==null?p.k2:o).a +p=A.a([new A.c6(0,B.a6,A.Y(204,p>>>16&255,p>>>8&255,p&255),B.ajd,12)],t.F) +return new A.fh(B.O,s,s,A.fI(B.T,!0,s,A.eQ(!1,s,!0,A.aa(s,A.cL(A.X("XY",s,s,s,s,A.q(a).p2.w,s,s),s,s),B.h,s,s,new A.bb(q.ax.k2,s,s,s,p,s,s,B.bw),s,r,s,s,s,s,s,r),B.iB,!0,s,s,s,s,s,s,s,s,s,new A.aO1(this),s,s,s,s),B.h,s,0,s,s,B.iB,s,s,B.bL),s)}} +A.aO2.prototype={ +$1(a){return this.a.c.$1(B.agX)}, +$S:117} +A.aO3.prototype={ +$1(a){return this.a.c.$1(B.agW)}, +$S:117} +A.aO4.prototype={ +$1(a){return this.a.c.$1(B.agV)}, +$S:117} +A.aO5.prototype={ +$1(a){return this.a.c.$1(B.agU)}, +$S:117} +A.aO1.prototype={ +$0(){return this.a.c.$1(B.qF)}, +$S:0} +A.ma.prototype={ +ao(){var s=this +return A.C(["name",s.a,"index",s.b,"unit",s.c,"value",s.d,"isSelected",s.e,"isShowPointer",s.f],t.N,t.z)}, +gk(a){return this.d}} +A.Pe.prototype={ +F(a){var s=null,r=A.bq(8),q=A.a([new A.c6(0,B.a6,A.q(a).k1,B.fj,10)],t.F),p=this.c,o=A.af(p).i("ad<1,mS>") +return A.aa(s,A.bt(A.a8(new A.ad(p,new A.aUQ(this,a),o),!0,o.i("aN.E")),B.l,B.bX,B.k),B.h,s,s,new A.bb(B.p6,s,s,r,q,s,s,B.E),s,s,s,s,B.pA,s,s,s)}} +A.aUQ.prototype={ +$1(a){var s,r,q,p,o=null,n=this.a,m=B.b.dV(n.c,a),l=n.d===m,k=this.b +if(l){s=A.q(k).ax +r=s.p4 +s=r==null?s.k2:r}else s=A.q(k).ax.k2 +r=A.bq(8) +q=l?A.ee(A.q(k).ax.b,2):o +k=A.q(k).p2.w +k=k==null?o:k.f4(10,B.K) +k=A.a([A.X(a.a,o,o,o,o,k,o,o)],t.p) +if(a.f){p=A.jh("#0ED400") +k.push(new A.be(B.a_S,A.aa(o,o,B.h,o,o,new A.bb(A.Y(p.d,p.a,p.b,p.c),o,o,o,o,o,o,B.bw),o,6,o,o,o,o,o,6),o))}return A.fn(o,A.aa(o,A.bt(k,B.l,B.ac,B.k),B.h,o,o,new A.bb(s,o,q,r,o,o,o,B.E),o,32,o,o,o,o,o,40),B.S,!1,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,new A.aUP(n,m),o,o,o,o,o,o,!1,B.aV)}, +$S:730} +A.aUP.prototype={ +$0(){return this.a.e.$1(this.b)}, +$S:0} +A.HQ.prototype={ +a0(){return A.bPq()}} +A.adD.prototype={ +F(a){var s=this.x||this.w?437:109 +return new A.aB(s,null,A.fA(new A.b_U(this),t.e),null)}, +atW(a,b){var s,r,q,p=null +if(a.length===0){s=b.au(t.Q) +s.toString +r=A.X(A.F("Please enter temperature value",p),p,p,p,p,p,p,p) +s.f.jJ(A.ki(p,p,p,A.q(b).ax.fy,p,B.w,p,r,p,B.c2,p,p,p,p,p,p,p,p,p)) +return!1}q=A.na(a,p) +if(q==null){s=b.au(t.Q) +s.toString +r=A.X(A.F("Please enter a valid temperature value",p),p,p,p,p,p,p,p) +s.f.jJ(A.ki(p,p,p,A.q(b).ax.fy,p,B.w,p,r,p,B.c2,p,p,p,p,p,p,p,p,p)) +return!1}s=q<0 +if(s||q>300){s=b.au(t.Q) +s.toString +r=A.X(A.F("Temperature should be between 0-300\xb0C",p),p,p,p,p,p,p,p) +s.f.jJ(A.ki(p,p,p,A.q(b).ax.fy,p,B.w,p,r,p,B.c2,p,p,p,p,p,p,p,p,p)) +return!1}if(s){s=b.au(t.Q) +s.toString +r=A.X(A.F("Temperature should be greater than 0\xb0C",p),p,p,p,p,p,p,p) +s.f.jJ(A.ki(p,p,p,A.q(b).ax.fy,p,B.w,p,r,p,B.c2,p,p,p,p,p,p,p,p,p)) +return!1}return!0}, +HG(a,b,c){return this.aCw(a,b,c)}, +aCw(a,b,c){var s=0,r=A.n(t.H),q,p=2,o,n,m,l,k,j,i,h +var $async$HG=A.j(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:i=A.oG(a) +if(i==null){s=1 +break}n=i +m=b.a +p=4 +s=7 +return A.f(A.aDT(c,m,n),$async$HG) +case 7:p=2 +s=6 +break +case 4:p=3 +h=o +l=A.v(h) +j=A.c(l) +$.ac().a3("Failed to set temperature: "+j) +A.cx(J.p(l)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$HG,r)}, +atV(a,b){var s,r,q,p=this,o=null +if(a.length===0){s=p.c.au(t.Q) +s.toString +r=A.X(A.F("Please enter temperature value",o),o,o,o,o,o,o,o) +s.f.jJ(A.ki(o,o,o,A.q(b).ax.fy,o,B.w,o,r,o,B.c2,o,o,o,o,o,o,o,o,o)) +return!1}q=A.na(a,o) +if(q==null){s=p.c.au(t.Q) +s.toString +r=A.X(A.F("Please enter a valid temperature value",o),o,o,o,o,o,o,o) +s.f.jJ(A.ki(o,o,o,A.q(b).ax.fy,o,B.w,o,r,o,B.c2,o,o,o,o,o,o,o,o,o)) +return!1}s=q<0 +if(s||q>100){s=p.c.au(t.Q) +s.toString +r=A.X(A.F("Temperature should be between 0-100\xb0C",o),o,o,o,o,o,o,o) +s.f.jJ(A.ki(o,o,o,A.q(b).ax.fy,o,B.w,o,r,o,B.c2,o,o,o,o,o,o,o,o,o)) +return!1}if(s){s=p.c.au(t.Q) +s.toString +r=A.X(A.F("Temperature should be greater than 0\xb0C",o),o,o,o,o,o,o,o) +s.f.jJ(A.ki(o,o,o,A.q(b).ax.fy,o,B.w,o,r,o,B.c2,o,o,o,o,o,o,o,o,o)) +return!1}return!0}, +HA(a,b){return this.aAv(a,b)}, +aAv(a,b){var s=0,r=A.n(t.H),q,p=2,o,n,m,l,k,j,i +var $async$HA=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:j=A.oG(a) +if(j==null){s=1 +break}n=j +p=4 +s=7 +return A.f(A.aDV(b,n),$async$HA) +case 7:p=2 +s=6 +break +case 4:p=3 +i=o +m=A.v(i) +k=A.c(m) +$.ac().a3("Failed to set temperature: "+k) +A.cx(J.p(m)) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$HA,r)}, +atc(a,b){var s=null +if(b.y.db.a!==1)return B.ax +return this.w?A.cq(B.a2,A.a([A.aa(B.eF,new A.Lc(a,new A.b_E(this,a),A.F("Print Speed",s),s),B.h,B.t,s,s,s,s,s,s,s,s,s,318),A.eH(s,A.fX(s,s,s,s,B.ja,20,new A.b_F(this),s,s,s,s),s,s,s,8,8,s)],t.p),B.w,B.W,s):B.ax}, +asU(a,b,c,d){var s=null +return this.x?A.cq(B.a2,A.a([A.aa(B.eF,new A.Lb(!1,!0,!0,a,b,c,new A.b_A(d),s),B.h,B.t,s,s,s,s,s,s,s,s,s,318),A.eH(s,A.fX(s,s,s,s,B.ja,20,new A.b_B(this),s,s,s,s),s,s,s,8,8,s)],t.p),B.w,B.W,s):B.ax}} +A.b_U.prototype={ +$3(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=null,c="assets/svgs/iconArrowRight.svg" +if(!b.ax.fr)return new A.aB(0,0,A.cL(A.b2(A.a([B.a2i,B.bf,A.X(A.F("Unconnected machine",d),d,d,d,d,d,d,d)],t.p),B.l,B.ac,B.k,B.r),d,d),d) +s=b.y +r=s.w +q=s.y.a +p=J.a0(q) +if(p.gbC(q)&&J.zY(J.aM(p.gW(q)),3)){p=J.zY(J.i(p.gW(q),3),0.5)?1:0 +this.a.f=p}p=this.a +p.r=B.d.aA(s.ch.a*100) +o=B.d.aA(s.z.a*100) +n=B.d.aA(s.Q.a*100) +m=p.e +m.eV(r.ao()) +l=s.r.gaJ(0) +B.b.az(A.a8(l,!0,A.y(l).i("B.E")),new A.b_O(p)) +l=A.q(a).ax +k=l.p4 +l=k==null?l.k2:k +k=p.d +k=A.a8(new A.ad(k,new A.b_P(p,b,a),A.af(k).i("ad<1,o>")),!0,t.l7) +k.push(B.dZ) +j=m.a +m=m.b +i=p.x||p.w +k.push(A.bwh(j,"assets/svgs/device/iconHotBedTemperature.svg",0,!0,i,new A.b_Q(p,b,a),m)) +k.push(B.dZ) +m=p.f===1 +j=new A.b_R(p,b) +i=p.c +i.toString +i=A.q(i) +i=i.ax.k3.a +i=A.eE("assets/svgs/device/iconLed.svg",A.Y(B.d.aa(255*(p.x||p.w?0.5:1)),i>>>16&255,i>>>8&255,i&255),B.M,d,d) +h=p.c +h.toString +h=A.q(h) +g=p.c +g.toString +g=A.q(g) +f=p.c +f.toString +f=A.q(f) +j=!(p.x||p.w)?j:d +e=t.p +k.push(A.aa(d,A.bt(A.a([new A.aB(24,24,i,d),B.fx,new A.HG(m,m,j,18,10,h.ax.b,g.ax.k2,f.ax.c,10,d)],e),B.l,B.o,B.k),B.h,d,B.or,d,d,d,d,B.li,d,d,d,d)) +k.push(B.dZ) +f=p.c +f.toString +f=A.q(f) +m=!p.x +j=f.ax.k3.a +j=A.eE("assets/svgs/device/iconFan.svg",A.Y(B.d.aa(255*((!m||p.w)&&m?0.5:1)),j>>>16&255,j>>>8&255,j&255),B.M,d,d) +i=p.c +i.toString +i=A.q(i) +m=!p.x +i=i.ax.k3.a +k.push(A.eQ(!1,d,!0,A.aa(d,A.bt(A.a([new A.aB(24,24,j,d),B.ce,new A.aB(18,18,A.eE(c,A.Y(B.d.aa(255*((!m||p.w)&&m?0.5:1)),i>>>16&255,i>>>8&255,i&255),B.M,d,d),d)],e),B.l,B.o,B.k),B.h,d,B.or,d,d,d,d,B.li,d,d,d,d),d,!0,d,d,d,d,d,d,d,d,d,new A.b_S(p),d,d,d,d)) +k.push(B.dZ) +i=p.r +j=p.c +j.toString +j=A.q(j) +m=j.ax.k3.a +m=A.eE("assets/svgs/device/iconSpeed.svg",A.Y(B.d.aa(255*((p.x||p.w)&&!p.w?0.5:1)),m>>>16&255,m>>>8&255,m&255),B.M,d,d) +j=i===-1?"_":""+i+"%" +i=p.c +i.toString +i=A.q(i).p2.x +if(i==null)i=d +else{h=p.c +h.toString +h=A.q(h) +h=h.ax.k3.a +h=i.e5(A.Y(B.d.aa(255*((p.x||p.w)&&!p.w?0.5:1)),h>>>16&255,h>>>8&255,h&255),12,B.K) +i=h}i=A.X(j,d,d,d,d,i,d,d) +j=p.c +j.toString +j=A.q(j) +j=j.ax.k3.a +k.push(A.eQ(!1,d,!0,A.aa(d,A.bt(A.a([new A.aB(24,24,m,d),i,B.ce,new A.aB(18,18,A.eE(c,A.Y(B.d.aa(255*((p.x||p.w)&&!p.w?0.5:1)),j>>>16&255,j>>>8&255,j&255),B.M,d,d),d)],e),B.l,B.o,B.k),B.h,d,B.or,d,d,d,d,B.li,d,d,d,d),d,!0,d,d,d,d,d,d,d,d,d,new A.b_T(p,b),d,d,d,d)) +k.push(B.dZ) +k=A.m2(A.b2(k,B.ap,B.o,B.k,B.r),d,B.S,d,d,B.aw) +m=p.w?p.atc(p.r,b):B.ax +return A.aa(d,A.bt(A.a([k,m,p.x?p.asU(o,n,0,b):B.ax],e),B.l,B.o,B.k),B.h,l,d,d,d,d,d,d,d,d,d,d)}, +$C:"$3", +$R:3, +$S:71} +A.b_O.prototype={ +$1(a){var s=a.a +if(s<=4){s=this.a.d[s] +s.b=a.b +s.c=a.c +s.d=a.d +s.e=a.e +s.f=a.f +s.r=a.r}}, +$S:732} +A.b_P.prototype={ +$1(a){var s=a.a,r=a.b,q=a.c,p=this.a,o=p.x||p.w +return A.b2(A.a([B.dZ,A.bwh(r,"assets/svgs/extruder/iconExtruder"+(s+1)+".svg",s,!0,o,new A.b_N(p,this.b,this.c,a),q)],t.p),B.l,B.o,B.k,B.r)}, +$S:733} +A.b_N.prototype={ +$1(a){var s,r,q=this +A.dJ("onTargetTempChanged: "+A.c(a)) +s=q.b +if(!s.ax.fr)return +r=q.a +if(r.atW(B.d.j(a),q.c))r.HG(B.d.j(a),q.d,s)}, +$S:303} +A.b_Q.prototype={ +$1(a){var s,r=this.b +if(!r.ax.fr)return +s=this.a +if(s.atV(B.d.j(a),this.c))s.HA(B.d.j(a),r)}, +$S:303} +A.b_R.prototype={ +$1(a){return this.aiu(a)}, +aiu(a){var s=0,r=A.n(t.H),q=this,p,o +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=q.a +o.J(new A.b_K(o,a)) +p=a?1:0 +A.a1y(q.b,p).cv(new A.b_L(o),new A.b_M(o),t.P) +return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:1009} +A.b_K.prototype={ +$0(){var s=this.b?1:0 +this.a.f=s}, +$S:0} +A.b_L.prototype={ +$1(a){var s=this.a +s.J(new A.b_H(s,a))}, +$S:26} +A.b_H.prototype={ +$0(){var s=this.b?1:0 +this.a.f=s}, +$S:0} +A.b_M.prototype={ +$1(a){var s=this.a +s.J(new A.b_G(s))}, +$S:2} +A.b_G.prototype={ +$0(){this.a.f=0}, +$S:0} +A.b_S.prototype={ +$0(){var s=this.a +s.J(new A.b_J(s))}, +$S:0} +A.b_J.prototype={ +$0(){var s=this.a +s.x=!s.x +s.w=!1}, +$S:0} +A.b_T.prototype={ +$0(){if(this.b.y.db.a!==1)return +var s=this.a +s.J(new A.b_I(s))}, +$S:0} +A.b_I.prototype={ +$0(){var s=this.a +s.x=!1 +s.w=!s.w}, +$S:0} +A.b_E.prototype={ +$1(a){var s +if(a===this.b)return!1 +s=this.a +s.J(new A.b_D(s,a)) +s=s.c +s.toString +A.aE0(A.cy(s,!1,t.e),a)}, +$S:736} +A.b_D.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.b_F.prototype={ +$0(){var s=this.a +s.J(new A.b_C(s))}, +$S:0} +A.b_C.prototype={ +$0(){this.a.w=!1}, +$S:0} +A.b_A.prototype={ +$2(a,b){A.as().$1("\u98ce\u901f\uff1a"+a.j(0)+" "+A.c(b)) +switch(a.a){case 0:A.aDW(this.a,B.d.aA(b)) +break +case 1:A.aDS(this.a,B.d.aA(b)) +break +case 2:A.aDR(this.a,B.d.aA(b)) +break +default:break}}, +$S:737} +A.b_B.prototype={ +$0(){var s=this.a +s.J(new A.b_z(s))}, +$S:0} +A.b_z.prototype={ +$0(){this.a.x=!1}, +$S:0} +A.HR.prototype={ +a0(){return A.bPr()}} +A.adE.prototype={ +m(){A.as().$1("ControlRightWidget dispose") +this.ar()}, +oY(a){return this.aAV(a)}, +aAV(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i +var $async$oY=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:A.as().$1(a.j(0)+" \u65b9\u5411") +k=m.c +k.toString +l=A.cy(k,!1,t.e) +j=m.w[m.d].d +if(l.y.db.a!==0){s=1 +break}case 3:switch(a.a){case 0:s=5 +break +case 1:s=6 +break +case 2:s=7 +break +case 3:s=8 +break +case 4:s=9 +break +case 5:s=10 +break +case 6:s=11 +break +case 7:s=12 +break +case 8:s=13 +break +default:s=14 +break}break +case 5:A.tP(l,B.wp,1,j) +s=4 +break +case 6:A.tP(l,B.wp,0,j) +s=4 +break +case 7:A.tP(l,B.wq,0,j) +s=4 +break +case 8:A.tP(l,B.wq,1,j) +s=4 +break +case 9:A.tP(l,B.wr,0,j) +s=4 +break +case 10:A.tP(l,B.wr,1,j) +s=4 +break +case 11:case 12:case 13:p=15 +k=a===B.J8 +if(k){i=m.c +i.toString +A.atw(i,A.F("Homing...",null),120)}else if(a===B.qF){i=m.c +i.toString +A.atw(i,"XY "+A.F("Homing...",null),120)}else if(a===B.J9){i=m.c +i.toString +A.atw(i,"Z "+A.F("Homing...",null),120)}s=k?18:20 +break +case 18:s=21 +return A.f(A.Kq(l,B.QD),$async$oY) +case 21:s=19 +break +case 20:s=a===B.qF?22:24 +break +case 22:s=25 +return A.f(A.Kq(l,B.QF),$async$oY) +case 25:s=23 +break +case 24:s=a===B.J9?26:27 +break +case 26:s=28 +return A.f(A.Kq(l,B.QE),$async$oY) +case 28:case 27:case 23:case 19:n.push(17) +s=16 +break +case 15:n=[2] +case 16:p=2 +k=m.c +k.toString +A.blf(k) +s=n.pop() +break +case 17:s=4 +break +case 14:s=4 +break +case 4:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$oY,r)}, +F(a){return A.fA(new A.b05(this),t.e)}, +aD3(a){var s,r=this.c +r.toString +r=A.q(r) +s=a?null:new A.b03(this) +return A.b2(A.a([A.bkR(8,r.ax.c,40,B.a1E,20,s,56),A.cf(this.at0(),1),B.fy],t.p),B.l,B.o,B.k,B.r)}, +asT(a){return new A.Pe(a,this.e,new A.b_Z(this),null)}, +asS(){var s,r=this.c +r.toString +s=A.cy(r,!1,t.e) +return new A.H1(A.F("Extruder",null),new A.b_X(s),null)}, +atg(a,b){var s=a.w==="ACTIVATE"?A.F("Park Extruder",null):A.F("Pick Extruder",null) +return new A.a7m(!b,new A.b00(this,a),s,8,4,null)}, +asN(){return new A.Pe(this.w,this.d,new A.b_W(this),null)}, +atj(){return new A.lQ(new A.b02(this),null)}, +at0(){return new A.H1(A.F("Heated Bed",null),new A.b0_(this),null)}} +A.b07.prototype={ +$1(a){return A.bwA(a)}, +$S:304} +A.b06.prototype={ +$1(a){return A.bwA(a)}, +$S:304} +A.b05.prototype={ +$3(a,b,c){var s,r,q,p,o,n,m,l=null +if(!b.ax.fr)return new A.aB(406,300,A.cL(A.b2(A.a([B.xT,B.bf,A.X(A.F("No Data",l),l,l,l,l,A.q(a).p2.z,l,l)],t.p),B.l,B.ac,B.k,B.r),l,l),l) +s=b.y.r +r=s.gaJ(0) +q=A.a8(r,!0,A.y(r).i("B.E")) +if(q.length===0)return A.cL(A.b2(A.a([B.xT,B.bf,A.X(A.F("No Data",l),l,l,l,l,A.q(a).p2.z,l,l)],t.p),B.l,B.ac,B.k,B.r),l,l) +r=this.a +r.r=s.gdG(s).eR(0,new A.b04(),t.MU).cJ(0) +p=q[r.e] +o=b.y.db.a!==0 +n=A.q(a).ax +m=n.p4 +n=m==null?n.k2:m +m=t.p +return A.aa(l,A.bt(A.a([A.b2(A.a([r.asT(r.r),A.cf(r.asS(),1),r.atg(p,o)],m),B.l,B.o,B.k,B.r),B.OB,A.b2(A.a([r.asN(),A.cf(r.atj(),1),B.fy],m),B.l,B.o,B.k,B.r),B.OB,r.aD3(o)],m),B.l,B.o,B.k),B.h,n,l,l,l,l,l,l,l,l,l,l)}, +$C:"$3", +$R:3, +$S:71} +A.b04.prototype={ +$1(a){var s,r,q,p,o=a.b.ao(),n=o.h(0,"name") +if(n==null)n="" +s=o.h(0,"index") +if(s==null)s=0 +r=o.h(0,"unit") +if(r==null)r="" +q=o.h(0,"value") +if(q==null)q=0 +p=o.h(0,"isSelected") +if(p==null)p=!1 +o=J.e(o.h(0,"state"),"ACTIVATE") +return new A.ma(n,s,r,q,p,o)}, +$S:739} +A.b03.prototype={ +$0(){A.as().$1("\u56de\u5230\u539f\u70b9HOME") +this.a.oY(B.J8)}, +$S:0} +A.b_Z.prototype={ +$1(a){var s=this.a +s.J(new A.b_Y(s,a))}, +$S:123} +A.b_Y.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.b_X.prototype={ +$1(a){A.as().$1(a.j(0)+" \u6309\u94ae") +if(a===B.qD)A.BR(this.a,"300","10","retract") +else if(a===B.qE)A.BR(this.a,"300","10","extrude")}, +$S:159} +A.b00.prototype={ +$0(){var s=0,r=A.n(t.H),q=1,p,o=[],n=this,m,l,k,j,i,h +var $async$$0=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:i=n.a +h=i.c +h.toString +m=A.cy(h,!1,t.e) +A.as().$1("\u653e\u56de\u6253\u5370\u5934") +h=i.c +h.toString +j=n.b +A.atw(h,A.F("Extruder",null)+" "+(j.a+1)+" "+A.F("operating...",null),60) +q=2 +s=j.w==="ACTIVATE"?5:7 +break +case 5:h=j.a +l=h===0?"PARK_EXTRUDER":"PARK_EXTRUDER"+h +s=8 +return A.f(A.a1x(m,l),$async$$0) +case 8:s=6 +break +case 7:k="T"+j.a+" A0" +s=9 +return A.f(A.a1x(m,k),$async$$0) +case 9:case 6:o.push(4) +s=3 +break +case 2:o=[1] +case 3:q=1 +i=i.c +i.toString +A.blf(i) +s=o.pop() +break +case 4:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.b_W.prototype={ +$1(a){var s=this.a +s.J(new A.b_V(s,a))}, +$S:123} +A.b_V.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.b02.prototype={ +$2(a,b){return A.b2(A.a([new A.a6D(new A.b01(this.a),140,140,44,30,A.ee(A.q(a).ax.k2,4),null)],t.p),B.l,B.ac,B.k,B.r)}, +$S:741} +A.b01.prototype={ +$1(a){this.a.oY(a)}, +$S:159} +A.b0_.prototype={ +$1(a){A.as().$1(a.j(0)+" \u6309\u94ae") +if(a===B.qD)this.a.oY(a) +else if(a===B.qE)this.a.oY(a)}, +$S:159} +A.a7m.prototype={ +F(a){var s,r,q,p,o,n,m=this,l=null,k=m.w,j=A.bq(k),i=m.c,h=i?B.p6:B.cW +h=A.ee(h,m.x) +s=i?B.n:B.l_ +r=A.bq(k) +k=A.bq(k) +q=i?m.d:l +p=i?A.Y(51,158,158,158):l +o=i?A.Y(B.d.aa(25.5),158,158,158):l +n=A.q(a).p2.x +if(n==null)i=l +else{if(i)i=A.q(a).ax.k3 +else{i=A.q(a).ax.k3.a +i=A.Y(204,i>>>16&255,i>>>8&255,i&255)}i=n.e5(i,10,B.K)}return A.aa(l,A.fI(B.T,!0,r,A.eQ(!1,k,!0,A.aa(l,A.cL(A.X(m.e,l,l,l,l,i,l,l),l,l),B.h,l,B.RO,l,l,l,l,l,B.a_K,l,l,l),l,!0,l,l,o,l,l,l,l,l,l,q,l,p,l,l),B.h,s,0,l,l,l,l,l,B.bL),B.h,l,l,new A.bb(l,l,h,j,l,l,l,B.E),l,l,l,l,l,l,l,l)}} +A.OJ.prototype={ +a0(){return new A.TV()}} +A.TV.prototype={ +aj(){var s,r=this +r.aw() +s=r.a +r.e=s.x +r.f=!0 +r.r=B.d.aA(s.d) +s=B.d.aA(s.e) +r.Q=r.w=s +s=B.e.j(s) +r.y=new A.r5(new A.dS(s,B.i8,B.bH),$.aW()) +s=A.kK(!0,null,!0,!0,null,null,!1) +r.z=s +s.a4(0,r.gaLz())}, +m(){var s=this.y +s===$&&A.b() +s.U$=$.aW() +s.M$=0 +s=this.z +s===$&&A.b() +s.m() +this.ar()}, +aJi(){var s,r,q=this +q.J(new A.beI(q)) +s=q.y +s===$&&A.b() +if(s.a.a!==B.e.j(q.w)){r=A.na(q.y.a.a,null) +if(r!=null){s=q.Q +s===$&&A.b() +s=r!==s}else s=!1 +if(s){s=q.Q +s===$&&A.b() +A.u("saveAndExit: "+A.c(s),null) +q.Q=r +q.a.y.$1(r)}}}, +aLA(){}, +b1(a){var s,r,q=this +q.bb(a) +s=q.a +r=s.x +if(a.x!==r||a.d!==s.d||a.e!==s.e){q.e=r +q.f=!0 +q.r=B.d.aA(s.d) +s=B.d.aA(s.e) +q.w=s +r=q.y +r===$&&A.b() +r.se3(0,B.e.j(s))}s=q.z +s===$&&A.b() +if(!s.gcN()){s=q.a.e +r=q.Q +r===$&&A.b() +r=s!==r +s=r}else s=!1 +if(s){s=q.a.e +q.Q=s +r=q.y +r===$&&A.b() +r.se3(0,B.d.j(s))}}, +F(a){var s,r,q,p,o=this,n=null,m=!o.f||o.e,l=m?n:new A.beK(o),k=t.p,j=A.a([],k),i=o.a.r,h=A.q(a) +h=h.ax.k3.a +j.push(new A.aB(24,24,A.eE(i,A.Y(B.d.aa(255*(m?0.5:1)),h>>>16&255,h>>>8&255,h&255),B.M,n,n),n)) +j.push(B.fx) +i=o.r +i=i===-1?"_":""+B.e.aA(i) +h=A.q(a).p2.x +if(h==null)h=n +else{s=A.q(a) +s=s.ax.k3.a +s=h.e5(A.Y(B.d.aa(255*(m?0.5:1)),s>>>16&255,s>>>8&255,s&255),12,B.K) +h=s}h=A.X(i,n,n,n,n,h,n,n) +i=A.q(a).p2.x +if(i==null)i=n +else{s=A.q(a) +s=s.ax.k3.a +s=i.e5(A.Y(B.d.aa(255*(o.e?0.5:1)),s>>>16&255,s>>>8&255,s&255),12,B.K) +i=s}k=A.a([h,B.fx,A.X("/",n,n,n,n,i,n,n),B.fx],k) +if(o.x){i=o.y +i===$&&A.b() +h=o.z +h===$&&A.b() +s=A.a([$.bBl()],t.VS) +r=A.q(a).ax +q=r.ry +if(q==null){q=r.a2 +r=q==null?r.k3:q}else r=q +q=A.q(a).ax +p=q.ry +if(p==null){p=q.a2 +q=p==null?q.k3:p}else q=p +q=A.a1c(n,new A.jK(B.fS,new A.br(r,2,B.I,-1)),n,n,n,n,n,B.eE,!0,B.eE,n,B.eE,n,n,n,n,n,n,n,n,n,new A.jK(B.fS,new A.br(q,2,B.I,-1)),B.eE,n,n,n,n,n,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) +r=A.q(a).p2.x +if(r==null)r=n +else{p=A.q(a) +p=p.ax.k3.a +p=r.e5(A.Y(B.d.aa(255*(m?0.5:1)),p>>>16&255,p>>>8&255,p&255),12,B.K) +r=p}k.push(new A.aB(20,n,A.a9p(!0,!1,i,n,n,q,!m,h,s,B.apJ,n,n,1,!1,n,new A.beL(o),new A.beM(o),n,r,B.bt,B.nD),n))}if(!o.x){i=o.w +i=i===-1?"_":""+B.e.aA(i) +h=A.q(a).p2.x +if(h==null)h=n +else{s=A.q(a) +s=s.ax.k3.a +s=h.e5(A.Y(B.d.aa(255*(m?0.5:1)),s>>>16&255,s>>>8&255,s&255),12,B.K) +h=s}k.push(A.X(i,n,n,n,n,h,n,n))}k.push(B.fx) +j.push(A.bt(k,B.l,B.bX,B.k)) +o.a.toString +k=A.q(a).p2.x +if(k==null)k=n +else{i=A.q(a) +i=i.ax.k3.a +i=k.e5(A.Y(B.d.aa(255*(m?0.5:1)),i>>>16&255,i>>>8&255,i&255),12,B.K) +k=i}j.push(A.X("\xb0C",n,n,n,n,k,n,n)) +return A.eQ(!1,n,!0,A.aa(n,A.bt(j,B.l,B.o,B.k),B.h,n,n,n,n,n,n,B.li,n,n,n,n),n,!0,n,n,n,n,n,n,n,n,n,l,n,n,n,n)}} +A.beI.prototype={ +$0(){var s=this.a +s.x=!1 +s=s.z +s===$&&A.b() +s.jb()}, +$S:0} +A.beK.prototype={ +$0(){var s=this.a +s.J(new A.beJ(s))}, +$S:0} +A.beJ.prototype={ +$0(){var s=this.a +s.x=!0 +s=s.z +s===$&&A.b() +s.iI()}, +$S:0} +A.beL.prototype={ +$1(a){this.a.aJi()}, +$S:19} +A.beM.prototype={ +$1(a){var s,r=this.a,q=r.y +q===$&&A.b() +s=r.Q +s===$&&A.b() +q.se3(0,B.d.j(s)) +r=r.z +r===$&&A.b() +r.jb()}, +$S:70} +A.XF.prototype={ +F(a){var s=null,r=A.F("Control",s),q=A.a([],t.Jp) +r=A.aTE(A.q(a).ax.z,s,s,s,0,q,r) +q=A.q(a).p2.r +q=q==null?s:q.b +return A.b2(A.a([r,A.cf(A.aa(s,this.auR(a),B.h,q,s,s,s,s,s,s,s,s,s,s),1)],t.p),B.l,B.o,B.k,B.r)}, +auR(a){return A.fA(new A.asT(this),t.e)}} +A.asT.prototype={ +$3(a,b,c){var s,r,q,p,o,n,m,l=null +if(!b.ax.fr){s=A.q(a).ax +r=s.p4 +return A.aa(l,B.U1,B.h,r==null?s.k2:r,l,l,l,l,l,l,l,l,l,l)}s=A.q(a).ax +r=s.p4 +s=r==null?s.k2:r +r=A.q(a).ax +q=r.p4 +p=t.p +q=A.bt(A.a([B.ani,A.cf(A.aa(l,B.Y8,B.h,q==null?r.k2:q,l,l,l,l,l,l,B.a_x,l,l,l),1)],p),B.l,B.o,B.k) +r=A.q(a).ax +o=r.p4 +r=o==null?r.k2:o +o=A.bq(8) +n=A.q(a).ax +m=n.ry +if(m==null){m=n.a2 +n=m==null?n.k3:m}else n=m +return A.aa(l,A.cq(B.a2,A.a([q,A.eH(0,A.aa(l,B.Y7,B.h,l,l,new A.bb(r,l,A.ee(A.Y(51,n.gk(n)>>>16&255,n.gk(n)>>>8&255,n.gk(n)&255),4),o,l,l,l,B.E),l,l,l,l,B.Z,l,l,l),l,l,0,l,0,l)],p),B.w,B.W,l),B.h,s,l,l,l,l,l,l,B.wQ,l,l,l)}, +$C:"$3", +$R:3, +$S:71} +A.a_b.prototype={ +F(a){return A.fA(new A.auB(),t.e)}} +A.auB.prototype={ +$3(a,b,c){return new A.lQ(new A.auA(),null)}, +$C:"$3", +$R:3, +$S:742} +A.auA.prototype={ +$2(a,b){var s,r,q,p,o,n=null,m=b.b,l=b.d,k=m<1150 +A.dJ("availableWidth: "+A.c(m)) +A.dJ("availableHeight: "+A.c(l)) +s=k?1:2 +r=m>600&&k?10+110*(m-600)/550:20 +q=Math.max(m/s,535) +p=Math.max(l/s,379) +Math.min(q/535,p/379) +o=A.bnI(A.a([new A.aB(q,p,B.awk,n),new A.aB(q,p,B.Y6,n),new A.aB(q,p,B.ape,n),new A.aB(q,p,B.a0n,n)],t.p),!0,!0,!0) +return new A.be(new A.al(r,20,r,20),A.aa(n,new A.aB(n,n,new A.JJ(new A.O4(s,20,20,1.4116094986807388),o,n,B.aw,!1,n,n,B.iq,!1,n,4,B.S,B.jS,n,B.w,B.aU,n),n),B.h,n,n,n,n,1/0,n,n,n,n,n,1/0),n)}, +$S:743} +A.It.prototype={ +a0(){return new A.QL(A.bvN(),new A.bG(null,t.A))}, +aNT(){return this.c.$0()}, +aYu(a){return this.d.$1(a)}, +o5(a){return this.e.$1(a)}, +CZ(a){return this.f.$1(a)}, +aRV(a){return this.r.$1(a)}, +aiT(){return this.w.$0()}} +A.QL.prototype={ +aj(){this.aw() +var s=this.d.b +new A.aG(s,A.y(s).i("aG<1>")).bL(new A.b1M(this))}, +m(){A.u("DeviceSideMenu dispose",null) +this.d.b.L(0) +this.ar()}, +Ju(){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j +var $async$Ju=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:o.B5() +q=3 +s=6 +return A.f(o.a.aNT(),$async$Ju) +case 6:n=b +A.u("\u6dfb\u52a0\u8bbe\u5907 result: "+A.c(n),null) +q=1 +s=5 +break +case 3:q=2 +j=p +m=A.v(j) +k=A.c(m) +$.ac().a3("DeviceDetailLavaWebPage addDevice error: "+k) +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$Ju,r)}, +aKB(){var s,r,q=this,p=t.x.a($.aw.aR$.x.h(0,q.e).gag()) +q.f=A.n6(new A.b1B(q,A.ct(p.bB(0,null),B.j),p.gv(0)),!1,!1,!1) +s=q.c +s.toString +s=A.KG(s,t.N1) +s.toString +r=q.f +r.toString +s.vd(0,r) +q.J(new A.b1C(q)) +q.a.aiT()}, +B5(){var s=this,r=s.f +if(r!=null)r.eT(0) +s.f=null +s.J(new A.b1z(s))}, +aFT(){if(this.f==null)this.aKB() +else this.B5()}, +mD(a){return this.ak3(a)}, +ak3(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h +var $async$mD=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:m.B5() +if(m.r){A.cx(A.F("The existing device connection is connecting, please wait",null)) +s=1 +break}p=4 +m.J(new A.b1N(m)) +s=7 +return A.f(m.a.aYu(a),$async$mD) +case 7:l=c +if(l){m.w=a +m.QG()}else m.w=null +n.push(6) +s=5 +break +case 4:p=3 +h=o +k=A.v(h) +i=J.p(k) +$.ac().a3("DeviceSideMenu selectDevice error: "+i) +m.w=null +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +m.J(new A.b1O(m)) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$mD,r)}, +avO(a){A.u("DeviceSideMenu _deleteDevice deviceModel: "+a.aD(),null) +if(a.fr){this.a.aRV(a) +return}this.a.CZ(a)}, +QG(){var s=0,r=A.n(t.H),q=this +var $async$QG=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.eC(B.bK,new A.b1A(q),t.P) +return A.l(null,r)}}) +return A.m($async$QG,r)}, +F(a){return A.fA(new A.b1L(this),t.e)}, +at_(){return A.fA(new A.b1y(this),t.e)}, +aOV(a){var s,r=this,q=null,p=A.aa(q,q,B.h,q,q,new A.bb(a.fr?B.dU:B.eq,q,q,q,q,q,q,B.bw),q,6,q,q,q,q,q,6),o=a.gkI(0),n=r.c +n.toString +n=A.q(n).p2.as +if(n==null)n=q +else n=n.f4(12,a===r.w&&a.fr?B.cZ:B.u) +s=t.p +n=A.a([p,B.nw,A.cf(A.X(o,1,B.al,q,q,n,q,q),1)],s) +if(a.fy.eO()){p=A.bq(2) +o=A.ee(B.cW,1) +B.b.G(n,A.a([B.ce,A.aa(q,A.X(A.F("LAN",q),q,q,q,q,B.arH,q,q),B.h,q,q,new A.bb(B.n,q,o,p,q,q,q,B.E),q,q,q,q,B.a03,q,q,q)],s))}if(a.fy.eP())B.b.G(n,A.a([B.ce,B.a2o],s)) +n.push(B.nw) +n.push(B.tg) +p=r.c +p.toString +n.push(A.eQ(!1,q,!0,A.hD(B.xM,A.q(p).ax.k3,q,18),q,!0,q,q,q,q,q,q,q,q,q,new A.b1I(r,a),q,q,q,q)) +return A.eQ(!1,q,!0,new A.be(B.dg,A.bt(n,B.l,B.o,B.k),q),q,!0,q,q,q,q,q,q,q,q,q,new A.b1J(r,a),q,q,q,q)}, +aOU(){return A.fA(new A.b1E(this),t.e)}} +A.b1M.prototype={ +$1(a){this.a.a.o5(a)}, +$S:23} +A.b1B.prototype={ +$1(a){var s=null,r=this.a,q=this.b,p=this.c +return A.fn(B.d0,A.cq(B.a2,A.a([A.eH(s,A.fI(B.T,!0,A.bq(16),r.aOU(),B.h,s,6,s,s,s,s,s,B.bL),s,s,q.a+16,s,q.b+p.b-20,p.a-32)],t.p),B.w,B.W,s),B.S,!1,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,s,r.gaD0(),s,s,s,s,s,s,!1,B.aV)}, +$S:744} +A.b1C.prototype={ +$0(){this.a.x=!0}, +$S:0} +A.b1z.prototype={ +$0(){this.a.x=!1}, +$S:0} +A.b1N.prototype={ +$0(){this.a.r=!0}, +$S:0} +A.b1O.prototype={ +$0(){this.a.r=!1}, +$S:0} +A.b1A.prototype={ +$0(){var s=0,r=A.n(t.P),q=1,p,o=this,n,m,l,k,j,i,h +var $async$$0=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:j=o.a +i=j.c +i.toString +n=A.cy(i,!1,t.e) +q=3 +s=6 +return A.f(A.xq(n),$async$$0) +case 6:m=b +s=m?7:8 +break +case 7:i=j.c +i.toString +s=9 +return A.f(A.aa4(i),$async$$0) +case 9:l=b +if(J.e(l,!1))A.BP(n,!1) +case 8:q=1 +s=5 +break +case 3:q=2 +h=p +j=j.c +if(j!=null){i=A.F("Could not get device version",null) +A.bLN(j,A.F("Confirm",null),"assets/images/deviceNoResponse.webp",i,t.z)}s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$$0,r)}, +$S:49} +A.b1L.prototype={ +$3(a,b,c){var s,r,q=this.a,p=A.q(a).ax,o=p.p4 +p=o==null?p.k2:o +o=A.Xw("#0C63E2") +s=B.d.aa(25.5) +o=o.a +o=A.Y(s,o>>>16&255,o>>>8&255,o&255) +r=A.Xw("#0C63E2").a +r=A.bvO(p,70,B.cL,B.c1,20,B.aH,48,8,B.Z,262,o,A.Y(s,r>>>16&255,r>>>8&255,r&255),A.q(a).p2.x,!1,A.q(a).p2.x) +s=q.at_() +return A.bvM(-1,q.d,A.a([A.a8d(B.alp,new A.b1K(q),A.F("Device control",null))],t.EQ),null,r,s)}, +$C:"$3", +$R:3, +$S:745} +A.b1K.prototype={ +$2(a,b){var s=this.a.d +s.a=a +s.b.q(0,a)}, +$S:95} +A.b1y.prototype={ +$3(a,b,c){var s,r,q,p,o=null,n=b.ax,m=A.b5(n).ay,l=m===B.aP||m===B.av +m=this.a +s=n.fr +if(s){r=n.cx +r=A.eE(r==null?"assets/images/logo.png":r,o,B.M,26,26)}else r=B.a2g +s=s?n.gkI(0):A.F("Unconnected device",o) +q=A.q(a).p2.w +p=t.p +q=A.a([new A.aB(26,26,r,o),B.cf,new A.ep(B.RS,A.X(s,o,B.al,o,o,q==null?o:q.m5(B.bm),o,o),o)],p) +if(m.r)B.b.G(q,A.a([B.cf,new A.aB(14,14,A.wh(o,A.q(a).ax.b,o,o,o,0,o,1,o,o),o)],p)) +q.push(A.hD(m.x?B.xL:B.xK,B.ab,o,20)) +q.push(B.ce) +if(n.fr)q.push(A.hD(B.a1o,l?B.dU:B.jB,o,26)) +m=A.fn(o,A.aa(o,A.bt(q,B.l,B.o,B.k),B.h,o,o,o,o,98,o,o,B.a_X,o,o,o),B.S,!1,m.e,o,o,o,o,o,o,o,o,o,o,o,o,o,o,o,m.gaFS(),o,o,o,o,o,o,!1,B.aV) +s=A.q(a).ax +r=s.ry +if(r==null){r=s.a2 +s=r==null?s.k3:r}else s=r +return A.b2(A.a([m,new A.pF(o,1,o,o,s,o)],p),B.l,B.o,B.k,B.r)}, +$C:"$3", +$R:3, +$S:747} +A.b1J.prototype={ +$0(){return this.a.mD(this.b)}, +$S:0} +A.b1I.prototype={ +$0(){var s,r=this.a +r.B5() +s=r.c +s.toString +A.jd(null,!0,new A.b1H(r,this.b),s,null,!0,!0,t.z)}, +$S:0} +A.b1H.prototype={ +$1(a){var s,r,q=null,p=this.b +if(p.fr)s=A.F("Disconnect",q) +else s=p.fy.eO()?A.F("Delete lan device",q):A.F("Delete cloud device",q) +s=A.X(s,q,q,q,q,q,q,q) +if(p.fr)r=A.F(u.af,q) +else r=p.fy.eO()?A.F(u.m,q):A.F(u.el,q) +r=A.X(r,q,q,q,q,q,q,q) +return A.A3(A.a([A.iA(!1,A.X(A.F("Cancel",q),q,q,q,q,q,q,q),q,q,B.a3,q,q,q,q,new A.b1F(a),q,q),A.iA(!1,A.X(A.F("Ok",q),q,q,q,q,q,q,q),q,q,B.a3,q,q,q,q,new A.b1G(this.a,a,p),q,q)],t.p),r,q,s)}, +$S:77} +A.b1F.prototype={ +$0(){A.bU(this.a,!1).fM(null) +return null}, +$S:0} +A.b1G.prototype={ +$0(){A.bU(this.b,!1).fM(null) +this.a.avO(this.c)}, +$S:0} +A.b1E.prototype={ +$3(a,b,c){var s,r,q,p,o,n,m=null,l=b.a.gaJ(0),k=A.a8(l,!0,A.y(l).i("B.E")) +l=A.bq(16) +s=A.bq(16) +r=A.F("My Devices",m) +q=A.q(a).p2.x +p=t.p +q=A.a([A.X(r,m,m,m,m,q==null?m:q.m5(B.K),m,m),B.dZ,B.ha],p) +r=this.a +B.b.G(q,new A.ad(k,new A.b1D(r),A.af(k).i("ad<1,o>"))) +q.push(B.bf) +o=A.F("add device",m) +n=r.c +n.toString +n=A.q(n).p2.z +q.push(A.eQ(!1,m,!0,new A.be(B.dg,A.bt(A.a([B.a2p,B.cf,A.X(o,m,m,m,m,n==null?m:n.f4(12,B.K),m,m)],p),B.l,B.o,B.k),m),m,!0,m,m,m,m,m,m,m,m,m,r.gaNP(),m,m,m,m)) +return A.fI(B.T,!0,l,A.aa(m,A.b2(q,B.ap,B.o,B.aE,B.r),B.h,m,m,new A.bb(B.n,m,m,s,m,m,m,B.E),m,m,m,m,B.wS,m,m,230),B.h,m,6,m,m,m,m,m,B.bL)}, +$C:"$3", +$R:3, +$S:749} +A.b1D.prototype={ +$1(a){return this.a.aOV(a)}, +$S:750} +A.a5j.prototype={ +F(a){var s,r,q,p,o=this,n=null,m=A.eE(o.f,n,B.M,o.w,o.r),l=A.q(a).p2.x +l=l==null?n:l.e5(A.q(a).ax.k3,14,B.K) +s=t.p +l=A.a([m,B.ba,A.X(o.c,n,n,n,n,l,n,n)],s) +l.push(B.fy) +m=A.q(a) +r=A.q(a) +q=A.bq(28) +p=A.q(a).p2.w +p=p==null?n:p.e5(A.q(a).ax.c,16,B.u) +p=A.im(n,n,m.ax.b,n,n,n,n,n,n,r.ax.c,n,n,n,n,n,new A.cu(q,B.x),n,n,n,p,n) +m=A.q(a).p2.w +m=m==null?n:m.e5(A.q(a).ax.c,16,B.u) +l.push(new A.aB(240,56,A.f6(!1,A.X(o.e,n,n,n,n,m,n,n),n,n,B.a3,n,n,n,n,o.x,n,p),n)) +return A.aa(n,A.cq(B.a2,A.a([A.cL(A.b2(l,B.l,B.ac,B.k,B.r),n,n)],s),B.w,B.W,n),B.h,B.t,n,n,n,283,n,n,n,n,n,430)}} +A.aLV.prototype={ +$1(a){var s=this +return new A.AK(!1,A.a([new A.a5j(s.a,s.b,s.c,s.d,s.e,s.f,new A.aLT(a),null)],t.p),B.n,430,315,null)}, +$S:751} +A.aLT.prototype={ +$0(){return A.bU(this.a,!1).cV()}, +$S:0} +A.a03.prototype={ +F(a){var s=null,r=A.F("Filament auto feed description",s),q=A.q(a).p2.z,p=t.p +return A.aa(B.O,A.fI(B.T,!0,s,A.cq(B.a2,A.a([A.aa(s,A.b2(A.a([A.cf(A.m2(A.X(r,s,s,s,s,q==null?s:q.aQz(B.u,1.8),s,s),s,B.S,s,s,B.aw),1)],p),B.ap,B.o,B.k,B.r),B.h,s,s,B.RU,s,s,s,B.a00,s,s,s,s),A.eH(s,A.fX(s,s,s,s,B.ja,s,this.c,s,s,s,s),s,s,s,12,6,s)],p),B.w,B.W,s),B.h,B.t,0,s,s,s,s,s,B.bL),B.h,s,s,s,s,s,s,s,s,s,s,s)}} +A.Ji.prototype={ +a0(){return new A.Jj(A.xU(0,1),A.a([A.a25(0,"","",0,!1,"/",0,0,!1,"",""),A.a25(0,"","",1,!1,"/",0,0,!1,"",""),A.a25(0,"","",2,!1,"/",0,0,!1,"",""),A.a25(0,"","",3,!1,"/",0,0,!1,"","")],t.Kg))}} +A.Jj.prototype={ +aj(){this.aw() +this.d.a4(0,new A.ayZ(this))}, +m(){this.d.m() +A.u("FilamentPageWidgetState dispose",null) +this.ar()}, +aF0(a,b,c,d,e){var s=this.c +s.toString +A.a06(b,s,a,c,d,e).ak(new A.ayU(this,e,c,d,b),t.P)}, +aF_(a,b,c,d){return this.aF0(a,null,b,c,d)}, +awJ(a){var s,r,q=this,p=null +A.as().$1("\u70b9\u51fb\u4e86editOrCheck") +if(!a.z){s=t.Q +r=q.c.au(s) +r.toString +r.f.Y_() +s=q.c.au(s) +s.toString +s.f.jJ(A.ki(p,p,p,p,p,B.w,p,A.X(A.F("Current filament not loaded, please load filament first",p),p,p,p,p,p,p,p),p,B.c2,p,p,p,p,p,p,p,p,p)) +return}q.r=a +s=a.a +if(a.Q)q.rI(3,s,!0) +else q.rI(1,s,!0)}, +rI(a,b,c){var s=this +A.u("jumpToPage: "+a,null) +if(a===6)s.J(new A.az_(s)) +else if(a===3)s.J(new A.az0(s)) +else{if(!(a===1||a===2))s.r=null +s.d.o5(a) +s.J(new A.az1(s))}}, +o5(a){return this.rI(a,0,!0)}, +F(a){return A.fA(new A.ayX(this),t.e)}, +asV(){var s,r=null,q=this.c +q.toString +q=A.q(q).ax +s=q.p4 +q=s==null?q.k2:s +return A.aa(r,new A.a03(new A.ayN(this),r),B.h,q,r,r,r,r,r,r,r,r,r,r)}, +asX(){var s,r,q,p,o,n,m,l,k=this,j=null,i=k.c +i.toString +i=A.q(i).ax +s=i.p4 +i=s==null?i.k2:s +s=k.r +r=s==null +q=r?j:s.e +if(q==null)q="" +p=r?j:s.c +if(p==null)p="" +o=r?j:s.d +if(o==null)o="" +n=r?j:s.x +if(n==null)n="" +if(r)m="" +else{m=B.e.aA(s.f) +l=B.e.aA(s.r) +m=""+m+"\u2103-"+l+"\u2103"}if(r)s="" +else s=A.c(B.e.aA(s.w))+"\u2103" +r=k.c +r.toString +return A.aa(j,A.cq(B.a2,A.a([new A.a04(q,p,o,n,"",m,s,"",B.Z,B.a_P,j),A.eH(j,A.fX(j,j,j,j,A.eE("assets/svgs/iconClose.svg",A.q(r).db,B.M,20,20),j,new A.ayO(k),j,j,j,j),j,j,j,12,12,j)],t.p),B.w,B.W,j),B.h,i,j,j,j,j,j,j,j,j,j,j)}, +asY(){var s,r,q,p,o,n,m=this,l=null,k=m.c +k.toString +k=A.q(k).ax +s=k.p4 +k=s==null?k.k2:s +s=m.r +r=s==null +q=r?l:s.a +if(q==null)q=0 +p=r?l:s.x +if(p==null)p="" +o=r?l:s.e +if(o==null)o="" +n=r?l:s.c +if(n==null)n="" +s=r?l:s.d +if(s==null)s="" +return A.aa(l,new A.Jk(p,o,s,n,q,new A.ayP(m),new A.ayQ(m),l),B.h,k,l,l,l,l,l,l,l,l,l,l)}, +asZ(){var s,r,q,p,o,n=this,m=null,l=n.c +l.toString +l=A.q(l).ax +s=l.p4 +l=s==null?l.k2:s +s=n.r +r=s==null +q=r?m:s.a +if(q==null)q=0 +p=r?m:s.e +if(p==null)p="" +o=r?m:s.c +if(o==null)o="" +s=r?m:s.d +if(s==null)s="" +return A.aa(m,new A.Jl(q,p,s,o,new A.ayR(n),new A.ayS(n),m),B.h,l,m,m,m,m,m,m,m,m,m,m)}} +A.ayZ.prototype={ +$0(){var s=this.a,r=s.d,q=r.f,p=B.b.gd_(q).at +p.toString +q=B.b.gd_(q).Q +q.toString +if(p===q){s.r=null +r.o5(0) +s.J(new A.ayY(s))}}, +$S:0} +A.ayY.prototype={ +$0(){var s=this.a +s.w=s.x=!1}, +$S:0} +A.ayU.prototype={ +$1(a){var s,r=this +if(a){s=r.a +s.J(new A.ayT(s,r.b,r.c,r.d,r.e)) +A.u("\u4fee\u6539\u8017\u6750\u6210\u529f",null)}else $.ac().a3("\u4fee\u6539\u8017\u6750\u5931\u8d25")}, +$S:26} +A.ayT.prototype={ +$0(){var s,r=this,q=r.b +if(q!=null){s=r.a.r +if(s!=null)s.e=q}q=r.c +if(q!=null){s=r.a.r +if(s!=null)s.c=q}q=r.d +if(q!=null){s=r.a.r +if(s!=null)s.d=q}}, +$S:0} +A.az_.prototype={ +$0(){var s=this.a +s.w=!s.w +s.x=!1}, +$S:0} +A.az0.prototype={ +$0(){var s=this.a +s.x=!0 +s.w=!1}, +$S:0} +A.az1.prototype={ +$0(){var s=this.a +s.w=s.x=!1}, +$S:0} +A.ayX.prototype={ +$3(a,b,c){var s,r,q,p,o,n,m,l,k=null,j=b.y.as.gaTd(),i=b.y,h=i.dy.a +i.dx.gaTc() +s=j.length>4?B.b.cK(j,0,4):j +i=this.a +r=i.y +q=A.af(r).i("ad<1,wO>") +p=A.a8(new A.ad(r,new A.ayW(i,s,h),q),!0,q.i("aN.E")) +q=A.q(a).ax +r=q.p4 +if(r==null)r=q.k2 +q=t.p +r=A.aa(B.O,A.b2(A.a([A.bt(p,B.l,B.jz,B.k)],q),B.l,B.ac,B.k,B.r),B.h,r,k,k,k,k,k,k,B.wQ,k,k,k) +o=i.asY() +n=i.asZ() +m=A.q(a).ax +l=m.p4 +r=A.a([A.aa(k,A.a5s(A.a([r,o,n,A.aa(k,B.TZ,B.h,l==null?m.k2:l,k,k,k,k,k,k,k,k,k,k)],q),B.w,i.d,B.S,k,B.fi,B.aw),B.h,B.jC,k,k,k,k,k,k,k,k,k,k)],q) +if(i.x)r.push(A.qD(0,i.asX())) +if(i.w)r.push(A.qD(0,i.asV())) +return A.cq(B.a2,r,B.w,B.W,k)}, +$C:"$3", +$R:3, +$S:752} +A.ayW.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h="material",g=a.a,f=this.b +if(g") +p=t.hT +q=A.n_(new A.aR(r,q),new A.b3D(m,a),q.i("B.E"),p) +q=A.cf(A.a1N(A.a8(q,!0,A.y(q).i("B.E")),l,l,!1),1) +r=A.jh("#E5E5E5") +r=A.bo7(A.Y(r.d,r.a,r.b,r.c),1) +o=m.y +n=m.z +n===$&&A.b() +if(o.h(0,n)!=null){o=m.y.h(0,m.z) +o.toString +o=J.cT(o)}else o=!0 +if(o)p=A.cL(A.b2(A.a([B.xU,B.aK,A.X(A.F("No Data",l),l,l,l,l,A.q(a).p2.Q,l,l)],t.p),B.l,B.o,B.k,B.r),l,l) +else{o=m.y.h(0,m.z) +if(o==null)o=A.a([],t.Vg) +p=J.eX(o,new A.b3E(m,a),p) +p=A.a1N(A.a8(p,!0,p.$ti.i("aN.E")),l,l,!1)}o=t.p +o=A.cq(B.a2,A.a([A.aa(l,A.bt(A.a([q,r,A.cf(p,3)],o),B.l,B.o,B.k),B.h,s,l,l,l,l,l,l,B.a_O,l,l,l),A.eH(l,A.fX(l,l,l,l,A.eE("assets/svgs/iconClose.svg",A.q(a).db,B.M,20,20),l,new A.b3F(m),l,l,l,l),l,l,l,12,12,l)],o),B.w,B.W,l) +s=o}return s}} +A.b3G.prototype={ +$1(a){this.a.M6()}, +$S:3} +A.b3H.prototype={ +$0(){this.a.x=!1}, +$S:0} +A.b3D.prototype={ +$1(a){var s,r=null,q=this.a,p=q.z +p===$&&A.b() +s=a.toUpperCase()===p.toUpperCase() +p=this.b +return A.os(!1,r,r,r,!0,r,r,!1,r,r,r,new A.b3C(q,a),s,r,r,r,r,r,A.X(a,r,r,r,r,s?A.q(p).p2.x:A.q(p).p2.Q,r,r),r,r)}, +$S:757} +A.b3C.prototype={ +$0(){var s=this.a +s.J(new A.b3A(s,this.b))}, +$S:0} +A.b3A.prototype={ +$0(){var s=this.a +s.z=this.b +s.as=s.Q=""}, +$S:0} +A.b3E.prototype={ +$1(a){var s,r=null,q=a.b,p=a.c,o=A.az2(q,p),n=this.a,m=n.as +m===$&&A.b() +if(m.toUpperCase()===p.toUpperCase()){m=n.Q +m===$&&A.b() +m=m.toUpperCase()===q.toUpperCase()}else m=!1 +s=this.b +if(m){m=A.q(s).p2.x +m=m==null?r:m.cc(A.q(s).ax.b)}else m=A.q(s).p2.x +m=A.X(o,r,r,r,r,m,r,r) +if(n.as.toUpperCase()===p.toUpperCase()){p=n.Q +p===$&&A.b() +q=p.toUpperCase()===q.toUpperCase()}else q=!1 +return A.os(!1,r,r,r,!0,r,r,!1,r,r,r,new A.b3B(n,a),q,r,r,r,r,r,m,r,r)}, +$S:758} +A.b3B.prototype={ +$0(){var s,r,q=this.a,p=this.b,o=p.b +q.Q=o +p=p.c +q.as=p +s=q.a +r=s.c +q=q.z +q===$&&A.b() +s.aYg(r,q,o,p)}, +$S:0} +A.b3F.prototype={ +$0(){var s=this.a.a +s.r.$1(s.c)}, +$S:0} +A.Jh.prototype={ +a0(){return new A.afn(A.xU(0,1),new A.bG(null,t.km))}} +A.afn.prototype={ +aj(){this.aw()}, +m(){this.ar() +A.u("FilamentContainerWidget dispose",null)}, +F(a){var s,r=null,q=$.bEl(),p=A.F("Filament",r),o=A.a([],t.Jp) +p=A.aTE(A.q(a).ax.z,r,r,this.atk(),0,o,p) +o=A.q(a).ax +s=o.p4 +o=s==null?o.k2:s +return A.aa(r,A.b2(A.a([p,A.cf(A.aa(r,this.asJ(a),B.h,o,r,r,r,r,r,r,r,r,r,r),1)],t.p),B.l,B.ac,B.k,B.r),B.h,r,r,r,r,r,q,r,r,r,r,r)}, +atk(){var s=null +return A.bt(A.a([A.fX(s,B.kB,B.t,B.t,B.a2a,s,new A.b32(this),B.Z,B.t,s,s)],t.p),B.l,B.o,B.k)}, +asJ(a){return A.fA(new A.b31(this),t.e)}} +A.b32.prototype={ +$0(){var s=this.a.r.gad() +if(s!=null)s.o5(6)}, +$S:0} +A.b31.prototype={ +$3(a,b,c){var s,r,q=null +if(!b.ax.fr){s=this.a.c +s.toString +s=A.q(s).ax +r=s.p4 +return A.aa(q,B.U_,B.h,r==null?s.k2:r,q,q,q,q,q,q,q,q,q,q)}return new A.Ji(this.a.r)}, +$C:"$3", +$R:3, +$S:71} +A.OK.prototype={ +a0(){return new A.ale(A.w(t.N,t.z))}} +A.ale.prototype={ +aj(){var s,r=this +r.aw() +s=A.xU(r.e,1) +r.d!==$&&A.d1() +r.d=s +r.aLi()}, +m(){var s=this.d +s===$&&A.b() +s.m() +s=this.f +if(s!=null)s.S(0) +this.ar()}, +aLi(){var s=this.c +s.toString +s=A.cy(s,!1,t.e).x +this.f=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.beZ(this))}, +F(a){var s,r,q=this,p=null,o=A.F("Printing Task",p),n=A.a([new A.r2(A.eE("assets/svgs/device/exclamationMark.svg",p,B.M,20,20),"info"),new A.r2(A.eE("assets/svgs/device/iconFile.svg",p,B.M,20,20),"folder")],t.Jp) +o=A.aTE(A.q(a).ax.z,new A.bf1(q),p,p,q.e,n,o) +n=A.q(a).ax +s=n.p4 +n=s==null?n.k2:s +s=q.d +s===$&&A.b() +r=t.p +return A.b2(A.a([o,A.cf(A.aa(p,A.a5s(A.a([q.atn(),q.at6()],r),B.w,s,B.S,new A.bf2(q),B.fi,B.aN),B.h,n,p,p,p,p,p,p,p,p,p,p),1)],r),B.l,B.o,B.k,B.r)}, +aKD(a,b){var s={} +s.a=0 +A.jd(null,!0,new A.beW(s,this,b),a,null,!0,!0,t.z)}, +asQ(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b=this,a=null,a0="state",a1="N/A",a2=b.c +a2.toString +s=A.cy(a2,!1,t.e) +a2=s.y +r=a2.db +q=r.a +p=r.b +o=A.Ky(a2.fr,t.Cv) +n=s.aiV() +m=A.bs8(q) +l=A.bHh(p) +if(J.du(b.r)&&J.e(J.i(b.r,a0),"downloading")){k=J.bkH(J.bqG(J.i(b.r,"progress"),100)) +j=J.i(b.r,"path") +if(j==null)j="" +if(t.j.b(j)){a2=J.dd(j) +i=a2.j(j).length!==0?a2.j(j):a1}else i=J.du(j)?j:a1 +if(i.length>20)i=B.c.R(i,0,20)+"..." +l=A.F("downloading_desc_format",A.a([i,""+k],t.s))}else if(J.du(b.r)&&J.e(J.i(b.r,a0),"done")){j=J.i(b.r,"path") +if(j==null)j="" +if(t.j.b(j)){a2=J.dd(j) +i=a2.j(j).length!==0?a2.j(j):a1}else i=J.du(j)?j:a1 +l=A.F("downloaded_desc_format",A.a([i.length>20?B.c.R(i,0,20)+"...":i],t.s))}else if(J.du(b.r)&&J.e(J.i(b.r,a0),"error")){h=J.i(b.r,"message") +A.dU("Error: device download failed. \n"+A.c(h==null?"":h))}a2=o.length!==0 +if(a2){g=o[0] +l=A.F("error_"+g.gyO()+"_title",a) +if(l==="error_"+g.gyO()+"_title")l=g.e +m=B.wv}r=b.c +r.toString +A.q(r) +f=A.bHi(m,r) +r=A.bq(4) +e=A.ee(f,1) +d=A.bHj(m) +r=A.aa(a,A.X(d,a,a,a,a,A.cb(a,a,B.n,a,a,a,a,a,a,a,a,10,a,a,B.bm,a,a,!0,a,a,a,a,a,a,a,a),a,a),B.h,a,a,new A.bb(f,a,e,r,a,a,a,B.E),a,a,a,a,B.a04,a,a,a) +e=b.c +e.toString +e=A.q(e).p2.r +e=A.aa(a,A.X(n,1,B.al,a,a,e==null?a:e.f4(16,B.bm),a,a),B.h,a,B.RR,a,a,a,a,a,a,a,a,a) +d=b.c +d.toString +d=A.q(d).p2.r +d=d==null?a:d.f4(12,B.u) +c=a2?new A.beN(b,o):a +return A.aa(a,A.bt(A.a([r,B.ce,e,B.nw,A.cf(new A.WI(l,d,a2,c,A.F("Check",a),a),1)],t.p),B.l,B.o,B.aE),B.h,a,a,a,a,a,a,a,B.bW,a,a,a)}, +atn(){var s,r=null,q=this.c +q.toString +q=A.q(q).ax +s=q.p4 +q=s==null?q.k2:s +return A.aa(r,A.fA(new A.beP(this),t.e),B.h,q,r,r,r,r,r,r,r,r,r,r)}, +at6(){return A.fA(new A.beO(),t.e)}} +A.beZ.prototype={ +$1(a){var s=this.a +if(J.du(a))s.J(new A.beX(s,a)) +else s.J(new A.beY(s))}, +$S:110} +A.beX.prototype={ +$0(){this.a.r=this.b}, +$S:0} +A.beY.prototype={ +$0(){this.a.r=A.w(t.N,t.z)}, +$S:0} +A.bf1.prototype={ +$1(a){var s=this.a +s.J(new A.bf0(s,a)) +s=s.d +s===$&&A.b() +s.UD(a,B.bk,B.bl)}, +$S:23} +A.bf0.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.bf2.prototype={ +$1(a){var s=this.a +s.J(new A.bf_(s,a))}, +$S:23} +A.bf_.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.beW.prototype={ +$1(a){return new A.uP(new A.beV(this.a,this.b,this.c),null)}, +$S:759} +A.beV.prototype={ +$2(a,b){var s,r,q,p,o,n,m,l=null,k=this.c,j=this.a,i=k[j.a],h=B.c.fk(B.e.j(i.d),4,"0"),g=B.c.fk(B.e.j(i.a),4,"0"),f=B.c.fk(B.e.j(i.b),4,"0"),e=B.c.fk(B.e.j(i.c),4,"0"),d=A.F("error_"+i.gyO()+"_title",l) +if(d==="error_"+i.gyO()+"_title")d=A.F("default_exception_title",l) +s=A.F("error_"+i.gyO()+"_desc",l) +if(s==="error_"+i.gyO()+"_desc")s=i.e +r=A.bq(12) +q=A.q(a).p2.r +q=A.cf(A.X(d,l,l,l,l,q==null?l:q.m5(B.bm),l,l),1) +p=j.a +k=k.length +o=A.q(a).p2.Q +o=o==null?l:o.cc(A.q(a).db) +n=t.p +o=A.bt(A.a([q,A.X(""+(p+1)+"/"+k,l,l,l,l,o,l,l)],n),B.l,B.o,B.k) +p=A.F("Error Code",l) +q=A.q(a).p2.w +q=q==null?l:q.m5(B.K) +q=A.X(p+":",l,l,l,l,q,l,l) +p=A.bq(8) +m=A.q(a).p2.w +m=m==null?l:m.aQL(B.jC,"Roboto Mono",16,1.2) +p=A.a([new A.be(B.a_Y,A.aa(l,A.bt2(B.O,A.X(h+" "+g+" "+f+" "+e,l,l,l,l,m,B.bt,l),B.h,B.uL),B.h,l,l,new A.bb(l,l,l,p,l,l,l,B.E),l,l,l,l,B.a06,l,l,l),l)],n) +if(j.a>0)p.push(A.eH(0,A.cL(A.fX(l,l,l,l,B.a1D,l,new A.beS(j,b),l,l,l,l),l,l),l,l,0,l,0,l)) +if(j.a")) +q.d.agv(0,!0)}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.aq1()}, +F(a){var s=null,r=A.q(a).ax,q=r.p4 +return new A.be(B.Z,A.aa(s,B.a2e,B.h,q==null?r.k2:q,s,s,s,s,s,s,s,s,s,s),s)}} +A.UZ.prototype={ +c0(){this.d2() +this.cQ() +this.f3()}, +m(){var s=this,r=s.b8$ +if(r!=null)r.K(0,s.geG()) +s.b8$=null +s.ar()}} +A.Mn.prototype={ +a0(){return new A.aiz(A.w(t.N,t.z))}} +A.aiz.prototype={ +IN(){var s=0,r=A.n(t.y),q,p=this,o,n,m,l,k +var $async$IN=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:k=p.c +k.toString +o=A.F("cancel_print_confirm_title",null) +n=A.F("cancel_print_confirm_message",null) +m=A.F("cancel_print_confirm_yes",null) +s=3 +return A.f(A.ble(A.F("cancel_print_confirm_no",null),null,m,k,n,o),$async$IN) +case 3:l=b +q=l===!0 +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$IN,r)}, +aj(){this.aw()}, +Ho(a){return this.ayw(a)}, +ayw(a){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Ho=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +if(a.length===0){n.e=!1 +A.u("_getFileMetaData, path is empty",null) +s=1 +break}m=B.c.dV(a,"gcodes") +if(J.e(m,-1)){A.u("_getFileMetaData, Could not found gcodes folder",null) +n.e=!1 +s=1 +break}l=B.c.bE(a,m+6) +k=J.bkG(l,"/")?J.bF7(l,1):l +A.u("_getFileMetaData, check path: "+A.c(k),null) +h=n.c +h.toString +s=7 +return A.f(A.a1v(A.cy(h,!1,t.e),k),$async$Ho) +case 7:j=c +n.e=!1 +n.J(new A.bbd(n,j)) +p=2 +s=6 +break +case 4:p=3 +f=o +i=A.v(f) +h=J.p(i) +$.ac().a3("getFileMetaData error: "+h) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Ho,r)}, +Hq(a){return this.ayy(a)}, +ayy(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d +var $async$Hq=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:e={} +p=4 +if(a.length===0){A.u("filePath is empty",null) +n=[1] +s=5 +break}if(m.y){n=[1] +s=5 +break}m.y=!0 +i=m.c +i.toString +l=A.cy(i,!1,t.e) +e.a="" +s=7 +return A.f(A.a1w(l,a),$async$Hq) +case 7:k=c +if(J.cT(k)){A.u("Get Thumbnail error!, filePath: "+a+", result: "+A.c(k),null) +n=[1] +s=5 +break}i="" +if(J.i(k,"state")!=null)if(J.e(J.i(k,"state"),"error")){h=J.i(k,"message") +A.dU("Get Thumbnail error!, message: "+A.c(h==null?"N/A":h))}else{g=J.i(k,"data") +if(g==null)g="" +e.a=g +i=g}if(i.length!==0&&!B.c.ba(i,"data:image"))e.a="data:image/png;base64,"+i +m.J(new A.bbe(e,m)) +n.push(6) +s=5 +break +case 4:p=3 +d=o +j=A.v(d) +e=J.p(j) +$.ac().a3("Get Thumbnail error: "+e) +A.dU("Get Thumbnail error: "+J.p(j)) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +m.y=m.e=!1 +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Hq,r)}, +F(a){return A.fA(new A.bbo(this),t.e)}} +A.bbd.prototype={ +$0(){this.a.f=J.mu(this.b,t.N,t.z)}, +$S:0} +A.bbe.prototype={ +$0(){this.b.x=this.a.a}, +$S:0} +A.bbo.prototype={ +$3(a4,a5,a6){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=null,a0="NA",a1=a5.y,a2=a1.e,a3=J.i(a2.f,"current_layer") +if(a3==null)a3=a0 +s=J.i(a2.f,"total_layer") +if(s==null)s=a0 +r=a1.cy +q=r.a +p=r.c +if(p.length===0)p=a1.e.r +r=this.a +o=a2.w +o=o==null?a:J.mu(o,t.N,t.z) +if(o==null)o=A.w(t.N,t.z) +r.f=o +if(o.ga_(o)&&!r.e){r.e=!0 +r.Ho(p) +r.e=!1}else{if(q>0){o=r.f +o=o.gbC(o)}else o=!1 +n=r.f +if(o){m=n.h(0,"gcode_start_byte") +l=r.f.h(0,"gcode_end_byte") +k=r.f.h(0,"estimated_time") +if(k==null)k=0 +if(q>l)r.w=100 +else if(q>") +k=A.a8(new A.ad(c,new A.aWI(a0),k),!0,k.i("aN.E")) +j=A.bq(0) +i=A.ee(B.c1,1) +h=A.bq(0) +h=A.bsN(new A.bb(B.n,d,A.ee(B.c1,1),h,d,d,d,B.E),d,B.j,B.Z,d,300) +g=A.hD(l.d?B.a16:B.xG,B.v,d,28) +f=A.F("Click to select printer",d) +e=A.q(a0).ax.k3.a +return A.aa(d,A.bt(A.a([new A.ep(B.kC,o,d),B.dY,n,B.t5,A.cf(A.bsM(new A.arg(50,300,B.bV,new A.bb(B.n,d,i,j,d,d,d,B.E),0),d,h,A.X(f,d,d,d,d,A.cb(d,d,A.Y(204,e>>>16&255,e>>>8&255,e&255),d,d,d,d,d,d,d,d,12,d,d,B.u,d,d,!0,d,d,d,d,d,d,d,d),d,d),new A.a1_(g),!1,k,B.agO,new A.aWJ(l,c),l.r,new A.aWK(c),A.aa(d,d,B.h,d,d,d,d,d,d,d,d,d,d,d),m,t.N),1)],t.p),B.ap,B.o,B.k),B.h,d,d,new A.bb(d,d,b,p,d,d,d,B.E),d,d,d,d,B.dO,d,d,d)}, +$C:"$3", +$R:3, +$S:306} +A.aWJ.prototype={ +$1(a){if(a==="add device"){this.a.f.$0() +return}this.a.e.$1(B.b.pF(this.b,new A.aWH(a)))}, +$S:183} +A.aWH.prototype={ +$1(a){return a.w===this.a}, +$S:31} +A.aWI.prototype={ +$1(a){var s,r=null,q=a.w,p=a.cx,o=this.a,n=t.p +p=A.a([A.eE(p==null?"assets/images/defaultEmpty.png":p,r,B.M,24,24),B.dY,A.X(a.gkI(0),r,r,r,r,A.q(o).p2.z,r,r),B.dY],n) +if(a.fy.eO()&&a.w!=="add device"){s=A.F("Lan Mode",r) +o=A.q(o).p2.z +B.b.G(p,A.a([A.X(s,1,B.al,r,r,o==null?r:o.f4(12,B.u),r,r)],n))}p.push(B.dY) +if(a.fr)p.push(B.a1Q) +return A.blT(A.aa(r,A.bt(p,B.l,B.o,B.k),B.h,r,r,r,r,r,r,r,B.dg,r,r,r),!0,q,t.N)}, +$S:771} +A.aWK.prototype={ +$1(a){var s=this.a,r=A.af(s).i("ad<1,ky>") +return A.a8(new A.ad(s,new A.aWG(a),r),!0,r.i("aN.E"))}, +$S:772} +A.aWG.prototype={ +$1(a){var s,r=null,q=a.cx,p=this.a,o=t.p +q=A.a([A.eE(q==null?"assets/images/defaultEmpty.png":q,r,B.M,24,24),B.dY,A.X(a.gkI(0),r,r,r,r,A.q(p).p2.z,r,r),B.dY],o) +if(a.fy.eO()&&a.w!=="add device"){s=A.F("Lan Mode",r) +p=A.q(p).p2.z +B.b.G(q,A.a([A.X(s,1,B.al,r,r,p==null?r:p.f4(12,B.u),r,r)],o))}return A.aa(r,A.bt(q,B.l,B.o,B.k),B.h,r,r,r,r,r,r,r,B.wT,r,r,r)}, +$S:773} +A.Py.prototype={ +F(a){var s=this +return new A.a9T(s.c,s.d,s.e,s.f,B.a0o,A.F("Edit filament",null),12,null)}} +A.Pz.prototype={ +F(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f="thumbnails",e=null,d="filament_weight_total",c="estimated_time",b=this.c +if(b.h(0,f)!=null&&t.j.b(b.h(0,f))&&J.zY(J.aM(b.h(0,f)),0)){p=J.i(J.lv(t.j.a(b.h(0,f))),"url") +if(p==null)p=""}else p="assets/images/gcodeCover.png" +s="N/A" +if(b.h(0,d)!=null)try{r=b.h(0,d) +if(typeof r=="number")s=J.bFa(r,2)+" g"}catch(o){q=A.v(o) +n=A.c(q) +$.ac().a3("buildFileMetaInfo error: "+n)}m=b.h(0,c)!=null?B.d.aA(A.iD(b.h(0,c))):-1 +n=A.q(a).ax +l=n.ry +if(l==null){l=n.a2 +n=l==null?n.k3:l}else n=l +n=A.ee(n,2) +l=A.bq(8) +k=A.F("Model information",e) +j=A.q(a).p2.w +k=A.X(k,e,e,e,e,j==null?e:j.f4(14,B.bm),e,e) +j=A.bq(16) +j=A.aa(e,A.eE(p,e,B.M,100,100),B.h,e,e,new A.bb(B.c1,e,e,j,e,e,e,B.E),e,100,e,e,e,e,e,100) +i=A.F("File name",e) +b=b.h(0,"filename") +b=A.X(i+": "+A.c(b==null?"N/A":b),e,e,e,e,A.q(a).p2.z,e,e) +i=A.F("Estimated time",e) +h=m===-1?"N/A":A.bva(m) +g=t.p +return A.aa(e,A.bt(A.a([new A.ep(B.kC,k,e),B.dY,j,B.t5,A.cf(A.b2(A.a([B.ans,b,B.ba,A.X(i+": "+h,e,e,e,e,A.q(a).p2.z,e,e),B.ba,A.X(A.F("Estimated material",e)+": "+A.c(s),e,e,e,e,A.q(a).p2.z,e,e)],g),B.ap,B.o,B.k,B.r),1)],g),B.ap,B.o,B.k),B.h,e,e,new A.bb(e,e,n,l,e,e,e,B.E),e,e,e,e,B.dO,e,e,e)}} +A.PA.prototype={ +F(a){var s,r,q,p,o,n,m=this,l=null,k=A.q(a).ax,j=k.ry +if(j==null){j=k.a2 +k=j==null?k.k3:j}else k=j +k=A.ee(k,2) +j=A.bq(8) +s=A.F("Preference setting",l) +r=A.q(a).p2.w +s=A.X(s,l,l,l,l,r==null?l:r.f4(14,B.bm),l,l) +r=A.F("Extrusion flow calibrate",l) +q=m.c +p=q.h(0,"flow_calibrate") +if(p==null)p=!1 +p=m.a19(a,r,p,new A.aWW(m),new A.aWX(a),!0) +r=A.F("Time-lapse camera",l) +o=q.h(0,"time_lapse_camera") +if(o==null)o=!1 +o=m.a18(a,r,o,new A.aWY(m)) +r=A.F("Auto leveling",l) +q=q.h(0,"bed_level") +if(q==null)q=!1 +n=t.p +return A.aa(l,A.bt(A.a([new A.ep(B.kC,s,l),B.dY,A.cf(A.acd(A.a([p,o,m.a18(a,r,q,new A.aWZ(m))],n),B.ie,B.aN,B.dy,12,170),1)],n),B.ap,B.o,B.k),B.h,l,l,new A.bb(l,l,k,j,l,l,l,B.E),l,l,l,l,B.dO,l,l,l)}, +a19(a,b,c,d,e,f){var s,r,q,p,o,n=null,m=A.q(a).p2.w,l=t.p +m=A.a([A.X(b,n,n,n,n,m==null?n:m.f4(14,B.K),n,n)],l) +if(f&&e!=null){s=A.q(a).ax +r=s.ry +if(r==null){r=s.a2 +s=r==null?s.k3:r}else s=r +m.push(new A.be(B.a01,A.fn(n,A.hD(B.a1c,s,n,20),B.S,!1,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,e,n,n,n,n,n,n,!1,B.aV),n))}m=A.cf(A.bt(m,B.l,B.o,B.k),1) +s=A.bq(9) +r=c?B.dU:B.n +q=A.q(a).ax +p=q.ry +if(p==null){p=q.a2 +q=p==null?q.k3:p}else q=p +q=A.ee(q,2) +p=A.bq(9) +o=c?B.a1B:n +return new A.ep(B.RK,A.bt(A.a([m,A.eQ(!1,s,!0,A.aa(n,o,B.h,n,n,new A.bb(r,n,q,p,n,n,n,B.E),n,18,n,n,n,n,n,18),n,!0,n,n,n,n,n,n,n,n,n,new A.aWT(d,c),n,n,n,n)],l),B.l,B.o,B.k),n)}, +a18(a,b,c,d){return this.a19(a,b,c,d,null,!1)}} +A.aWW.prototype={ +$1(a){return this.a.d.$2("flow_calibrate",a)}, +$S:11} +A.aWX.prototype={ +$0(){A.jd(null,!0,new A.aWV(),this.a,null,!0,!0,t.z)}, +$S:0} +A.aWV.prototype={ +$1(a){var s=null,r=A.X(A.F("Extrusion flow calibrate",s),s,s,s,s,s,s,s),q=A.X(A.F("When enabled, the printer will automatically calibrate flow compensation before printing. Recommended after each filament change.",s),s,s,s,s,s,s,s) +return A.A3(A.a([A.iA(!1,A.X(A.F("Ok",s),s,s,s,s,s,s,s),s,s,B.a3,s,s,s,s,new A.aWU(a),s,s)],t.p),q,s,r)}, +$S:77} +A.aWU.prototype={ +$0(){return A.bU(this.a,!1).cV()}, +$S:0} +A.aWY.prototype={ +$1(a){return this.a.d.$2("time_lapse_camera",a)}, +$S:11} +A.aWZ.prototype={ +$1(a){return this.a.d.$2("bed_level",a)}, +$S:11} +A.aWT.prototype={ +$0(){return this.a.$1(!this.b)}, +$S:0} +A.PB.prototype={ +F(a){return new A.tX(new A.aX_(this),null,this.c,null)}, +ayc(){switch(this.c.a.a){case 1:return B.dT +case 2:case 3:case 4:return B.jC +case 5:return B.dU +case 6:return B.jB +case 7:case 0:default:return B.eq}}, +asF(){var s=null,r=this.c.a +if(r===B.rN||r===B.rO||r===B.i4)return B.anq +return A.X(A.F("Send",s),s,s,s,s,B.arU,s,s)}} +A.aX_.prototype={ +$2(a,b){var s,r=null,q=A.bq(4),p=this.a,o=p.c.c +q=A.cf(A.pw(q,A.aEV(B.c1,B.aH,r,8,o,B.Qq),B.by),1) +o=A.X(B.d.aF(o*100,0)+"%",r,r,r,r,r,r,r) +s=A.im(r,r,p.ayc(),r,r,r,r,r,r,B.n,r,r,r,r,r,new A.cu(A.bq(4),B.x),r,r,r,r,r) +return new A.be(B.bW,A.bt(A.a([q,B.ano,o,B.anm,new A.aB(120,40,A.f6(!1,p.asF(),r,r,B.a3,r,r,r,r,p.e,r,s),r),B.OA],t.p),B.l,B.cD,B.k),r)}, +$S:774} +A.a_d.prototype={ +F(a){var s=this +return A.brq(new A.QJ(s.d,s.Q,s.ax,null),new A.auL(s),t.NI)}} +A.auL.prototype={ +$1(a){var s=this.a,r=A.bs6(B.iY) +r.aVA(0,a,s.f,s.d,null,s.c,s.at) +return r}, +$S:307} +A.QJ.prototype={ +a0(){return new A.aeC()}} +A.aeC.prototype={ +aj(){this.aw()}, +F(a){var s=null,r=A.X(A.F("File information",s),s,s,s,s,s,s,s),q=A.q(a).ax,p=q.p4 +r=A.A6(s,p==null?q.k2:p,s,!0,0,s,r,0) +q=A.q(a).ax +p=q.p4 +q=p==null?q.k2:p +p=t.NI +return A.lb(r,q,A.fA(new A.b1r(this),p),A.fA(new A.b1s(this),p),s)}} +A.b1r.prototype={ +$3(a,b,c){var s,r,q=null,p=A.q(a).ax,o=p.p4 +p=o==null?p.k2:o +o=this.a +s=t.p +r=A.a([B.aK,new A.Pz(b.id,q),B.bf,new A.aam(b.f,new A.b1o(o),new A.b1p(o),b.gakE(),q)],s) +if(o.a.d)B.b.G(r,A.a([B.bf,new A.Py(b.ay,b.ch,b.CW,new A.b1q(b),q),B.bf,new A.PA(b.fr,b.gb0M(),q),B.i5],s)) +r.push(B.i5) +p=A.a([A.aa(q,A.m2(A.b2(r,B.l,B.o,B.k,B.r),q,B.S,B.bV,q,B.aw),B.h,p,q,q,q,q,q,q,q,q,q,q)],s) +if(b.b)p.push(A.aa(q,B.va,B.h,A.Y(B.d.aa(127.5),0,0,0),q,q,q,q,q,q,q,q,q,q)) +return A.cq(B.a2,p,B.w,B.W,q)}, +$C:"$3", +$R:3, +$S:308} +A.b1o.prototype={ +$1(a){var s=this.a.a.ax.$1(a) +return s}, +$S:777} +A.b1p.prototype={ +$0(){var s=this.a.a.Q.$0() +return s}, +$S:0} +A.b1q.prototype={ +$2(a,b){return this.a.ZJ(a,b)}, +$S:162} +A.b1s.prototype={ +$3(a,b,c){var s=null,r=A.q(a).ax,q=r.p4 +r=q==null?r.k2:q +q=b.y +q.toString +this.a.a.toString +return A.aa(s,new A.PB(q,new A.b1n(b,a),s),B.h,r,s,s,s,s,s,s,s,s,s,s)}, +$C:"$3", +$R:3, +$S:306} +A.b1n.prototype={ +$0(){return this.a.tn(this.b)}, +$S:0} +A.a_e.prototype={ +F(a){var s=this +return A.brq(new A.QK(s.c,!0,s.e,s.f,s.r,null),new A.auK(s),t.NI)}} +A.auK.prototype={ +$1(a){var s=null,r=this.a,q=A.bs6(B.YT) +q.aVB(0,r.f,a,r.e,s,s,s,r.c,s,s) +return q}, +$S:307} +A.QK.prototype={ +a0(){return new A.aeD()}} +A.aeD.prototype={ +aj(){this.aw() +$.aw.p2$.push(new A.b1x(this))}, +F(a){return A.fA(new A.b1w(this),t.NI)}} +A.b1x.prototype={ +$1(a){var s,r,q,p=this.a,o=p.c +o.toString +s=A.cy(o,!1,t.NI) +o=p.c +o.toString +p=p.a +r=p.c +q=p.e +s.aVz(0,p.f,o,q,!0,p.r,r)}, +$S:3} +A.b1w.prototype={ +$3(a,b,c){var s,r,q,p,o,n,m=null,l=A.q(a).ax,k=l.p4 +l=k==null?l.k2:k +k=b.id +s=b.ay +r=b.ch +q=b.CW +p=b.fr +this.a.a.toString +o=b.y +o.toString +n=t.p +n=A.a([A.aa(m,A.m2(A.b2(A.a([B.aK,new A.Pz(k,m),B.aK,new A.Py(s,r,q,new A.b1t(b),m),B.aK,new A.PA(p,new A.b1u(b),m),B.k2,new A.PB(o,new A.b1v(b,a),m),B.t8],n),B.l,B.o,B.k,B.r),m,B.S,B.bV,m,B.aw),B.h,l,m,m,m,m,m,m,m,m,m,m)],n) +if(b.b)n.push(A.qD(0,A.aa(m,B.va,B.h,A.Y(B.d.aa(127.5),0,0,0),m,m,m,m,m,m,m,m,m,m))) +return A.cq(B.a2,n,B.w,B.W,m)}, +$C:"$3", +$R:3, +$S:308} +A.b1t.prototype={ +$2(a,b){return this.a.ZJ(a,b)}, +$S:162} +A.b1u.prototype={ +$2(a,b){return this.a.ahq(a,b)}, +$S:309} +A.b1v.prototype={ +$0(){return this.a.tn(this.b)}, +$S:0} +A.aF4.prototype={ +nq(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j +var $async$nq=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +m=A.cy(n.b,!1,t.e) +s=7 +return A.f(A.or(m,B.Ne,n.a),$async$nq) +case 7:l=b +q=l +s=1 +break +p=2 +s=6 +break +case 4:p=3 +j=o +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$nq,r)}} +A.aLL.prototype={ +Fa(){var s=0,r=A.n(t.nc),q,p=this,o +var $async$Fa=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:o=p.f +if(o!=null){q=o +s=1 +break}s=3 +return A.f(p.AN(),$async$Fa) +case 3:q=p.f +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Fa,r)}, +O_(){var s=0,r=A.n(t.T),q,p=this,o,n +var $async$O_=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:n=p.w +if(n!=null){o=n.length +o=o!==0}else o=!1 +if(o){q=n +s=1 +break}s=3 +return A.f(p.C1(),$async$O_) +case 3:q=p.w +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$O_,r)}, +nq(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$nq=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +m=A.cy(n.a,!1,t.e) +l=m.ax.fy.eO() +s=l?7:9 +break +case 7:s=n.c?10:11 +break +case 10:h=n.w +if(h==null)h=n.r +if(h==null)h="" +s=12 +return A.f(A.a1A(m,h),$async$nq) +case 12:k=b +q=k +s=1 +break +case 11:q=!0 +s=1 +break +s=8 +break +case 9:h=n.w +g=h==null?null:B.b.gY(h.split(".")) +j=g==null?"gcode":g +h=n.w +if(h==null)h=n.r +if(h==null)h="" +s=13 +return A.f(A.aDM(m,h,j,n.c,n.x),$async$nq) +case 13:q=!0 +s=1 +break +case 8:p=2 +s=6 +break +case 4:p=3 +e=o +i=A.v(e) +h=J.p(i) +$.ac().a3("sendPrintTask error: "+h) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$nq,r)}, +AN(){var s=!1 +return this.aww()}, +aww(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b +var $async$AN=A.j(function(a,a0){if(a===1){o=a0 +s=p}while(true)switch(s){case 0:c=!1 +A.dE("downloadFileFromOrca, isZip: "+A.c(c)) +p=4 +if(n.f!=null){A.dE("downloadFileFromOrca, activeFileBytes is not null, skip") +s=1 +break}n.b.we(B.rN,A.F("Downloading...",null),0) +s=7 +return A.f(A.cy(n.a,!1,t.mr).zD(A.C(["is_zip",c],t.N,t.z)),$async$AN) +case 7:m=a0 +s=m!=null&&J.i(m.b,"data")!=null&&t.f.b(J.i(m.b,"data"))?8:10 +break +case 8:f=J.i(m.b,"data") +l=f==null?null:J.i(f,"file_name") +f=J.i(m.b,"data") +e=f==null?null:J.i(f,"file_path") +k=e==null?"":e +f=J.i(m.b,"data") +j=f==null?null:J.i(f,"url") +n.r=l +f=j +i=A.f1(f==null?"http://localhost:13619/localfile/"+A.bNZ(J.p(k)):f) +s=11 +return A.f(A.bpr(i),$async$AN) +case 11:h=a0 +if(h.b===200)n.f=h.w +else{f=A.ae("DownloadFile\uff1a "+h.b) +throw A.d(f)}s=9 +break +case 10:f=A.ae("Cannot get the current slice file information, or the file does not exist, please re-operate the slice") +throw A.d(f) +case 9:p=2 +s=6 +break +case 4:p=3 +b=o +g=A.v(b) +f=J.p(g) +$.ac().a3("downloadFileFromOrca error: "+f) +throw b +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$AN,r)}, +C1(){return this.aNb()}, +aNb(){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a +var $async$C1=A.j(function(a0,a1){if(a0===1){o=a1 +s=p}while(true)switch(s){case 0:b={} +A.dE("uploadFileToDeviceServerOrCloudServer, isZip: false") +p=4 +if(m.f==null){b=A.ae("File content is empty") +throw A.d(b)}g=m.w +if(g!=null){f=g.length +f=f!==0}else f=!1 +if(f){A.dE("uploadFileToDeviceServerOrCloudServer, downloadPath is not null, skip, downloadPath: "+A.c(g)) +s=1 +break}l=A.cy(m.a,!1,t.e) +g=m.b +g.we(B.rO,A.F("Uploading...",null),0) +g.c=0 +g.T() +g=l +f=m.r +if(f==null)f="" +e=m.f +if(A.b5(g.ax).dz()){d=A.b5(g.ax).ay +d=!(d===B.aP||d===B.av)}else d=!0 +if(d){A.Z(B.f,"[LavaDeviceVM] uploadFile requires the printer to be online, currently the printer is not online") +A.V(A.ae("uploadFile requires the printer to be online, currently the printer is not online"))}k=A.b5(g.ax).b0X(e,null,f,!1) +j=new A.aq(new A.a_($.ab,t.U),t.h) +i=null +b.a=null +i=k.eQ(new A.aLM(b,m,j),new A.aLN(),new A.aLO(b,j)) +p=7 +s=10 +return A.f(j.a,$async$C1) +case 10:b=b.a +if(b!=null)throw A.d(b) +n.push(9) +s=8 +break +case 7:n=[4] +case 8:p=4 +b=i +b=b==null?null:J.Gz(b) +s=11 +return A.f(t.uz.b(b)?b:A.en(b,t.H),$async$C1) +case 11:A.dE("uploadFileToDeviceServerOrCloudServer subscription cancelled") +s=n.pop() +break +case 9:p=2 +s=6 +break +case 4:p=3 +a=o +h=A.v(a) +b=J.p(h) +$.ac().a3(u.er+b) +throw a +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$C1,r)}} +A.aLM.prototype={ +$1(a){var s,r,q=this,p="Upload failed" +A.dE("uploadFileToDeviceServerOrCloudServer state: "+a.j(0)) +s=a.c +if(!s){r=q.b.b +r.c=a.a +r.T()}else if(a.d){r=q.b.b +r.il(B.i3,A.F(r.b,null))}if(s)if(a.d){s=a.e +if(s==null)s=p +q.a.a=new A.zj(s) +s=q.c +if((s.a.a&30)===0)s.d8(0)}else{s=q.b +r=s.b +r.c=1 +r.T() +r=a.b +if(r!=null&&typeof r=="string")s.w=r +else s.r=s.w=a.f +s.x=a.w +s=q.c +if((s.a.a&30)===0)s.d8(0)}else if(a.d){s=a.e +$.ac().a3("uploadFileToDeviceServerOrCloudServer state.isError: true, state.errorMessage: "+A.c(s)) +r=s==null?p:s +q.a.a=new A.zj(r) +r=q.c +if((r.a.a&30)===0)r.d8(0) +r=q.b.e +if(r!=null)r.$2(500001,s)}}, +$S:298} +A.aLO.prototype={ +$1(a){var s=J.dd(a),r=s.j(a) +$.ac().a3(u.er+r) +this.a.a=new A.zj("Upload failed: "+s.j(a)) +s=this.b +if((s.a.a&30)===0)s.d8(0)}, +$S:2} +A.aLN.prototype={ +$0(){A.dE("uploadFileToDeviceServerOrCloudServer stream done")}, +$S:0} +A.aKh.prototype={ +$1(a){var s=this.a +if(B.b.p(s.a,a.b.a))return s.b=!0 +return!1}, +$S:780} +A.baR.prototype={ +G4(a,b,c,d,e){return this.al8(a,b,c,!0,e)}, +al8(a,b,c,d,e){var s=0,r=A.n(t.H),q=this +var $async$G4=A.j(function(f,g){if(f===1)return A.k(g,r) +while(true)switch(s){case 0:q.a=!0 +q.b=A.bU(b,!1) +s=2 +return A.f(A.bXA(b,new A.a_e(e,!0,c,a,new A.baS(q),null),!0,A.X(A.F("File information",null),null,null,null,null,null,null,null),t.z),$async$G4) +case 2:q.a=!1 +q.b=null +return A.l(null,r)}}) +return A.m($async$G4,r)}, +aPB(){var s,r,q +if(this.a&&this.b!=null)try{this.b.cV()}catch(r){s=A.v(r) +q=J.p(s) +$.ac().a3("\u5173\u95ed\u5f39\u7a97\u5931\u8d25: "+q)}}} +A.baS.prototype={ +$0(){return this.a.aPB()}, +$S:0} +A.lH.prototype={ +oW(a){var s=this.cx +if(s==null)s=this.cx=A.cy(a,!1,t.e) +s.toString +return s}, +syU(a){var s +if(A.bs7(this.a)){s=this.y +if(a){if(s!=null)s.il(B.i3,A.F(s.b,null))}else if(s!=null)s.il(B.np,A.F("Send",null))}this.T()}, +fg(a,b){var s +switch(a.a){case 2:A.dE(a.j(0)+": "+b) +break +case 1:A.bmK(a.j(0)+": "+b) +break +case 3:s=a.j(0) +$.ac().a3(s+": "+b) +break +default:A.u(a.j(0)+": "+b,null) +break}}, +avN(a){var s,r,q +try{if(A.nO(a))return new A.A(a>>>0) +r=A.jh(a) +r=A.Y(r.d,r.a,r.b,r.c) +return r}catch(q){s=A.v(q) +this.fg(B.p,"Failed to parse color: "+A.c(a)+", error: "+A.c(s)) +return B.n}}, +ZG(a){this.ch=a +A.u("DevicePrepareToPrintViewModel setmachineFilamentConfig:machineFilamentConfig: "+J.p(a),null)}, +afE(a){var s,r,q,p,o,n="filament_type",m=";",l="filament_color_rgba",k="filament_color",j="filament_vendor",i="filament_sub_type",h="filament_weight",g="filament_used",f=[],e=J.a0(a) +if(e.h(a,n)!=null){s=t.j +if(s.b(e.h(a,n)))f=s.a(e.h(a,n)) +else if(typeof e.h(a,n)=="string")f=A.a(A.bS(e.h(a,n)).split(m),t.s)}r=[] +if(e.h(a,l)!=null){s=t.j +if(s.b(e.h(a,l)))r=s.a(e.h(a,l)) +else if(typeof e.h(a,l)=="string")r=A.a(A.bS(e.h(a,l)).split(m),t.s)}else if(e.h(a,k)!=null){s=t.j +if(s.b(e.h(a,k)))r=s.a(e.h(a,k)) +else if(typeof e.h(a,k)=="string")r=A.a(A.bS(e.h(a,k)).split(m),t.s)}q=[] +if(e.h(a,j)!=null){s=t.j +if(s.b(e.h(a,j)))q=s.a(e.h(a,j)) +else if(typeof e.h(a,j)=="string")q=A.a(A.bS(e.h(a,j)).split(m),t.s)}p=[] +if(e.h(a,i)!=null){s=t.j +if(s.b(e.h(a,i)))p=s.a(e.h(a,i)) +else if(typeof e.h(a,i)=="string")p=A.a(A.bS(e.h(a,i)).split(m),t.s)}o=[0,0,0,0] +if(e.h(a,h)!=null){s=t.j +if(s.b(e.h(a,h)))o=s.a(e.h(a,h)) +else if(typeof e.h(a,h)=="string"){s=t.WL +o=A.a8(new A.ad(A.a(A.bS(e.h(a,h)).split(m),t.s),new A.auU(),s),!0,s.i("aN.E"))}}else if(e.h(a,g)!=null){s=t.j +if(s.b(e.h(a,g)))o=s.a(e.h(a,g)) +else if(typeof e.h(a,g)=="string"){s=t.WL +o=A.a8(new A.ad(A.a(A.bS(e.h(a,g)).split(m),t.s),new A.auV(),s),!0,s.i("aN.E"))}}return A.C(["filamentType",f,"filamentColor",r,"filamentVendor",q,"filamentSubtype",p,"filamentUsed",o],t.N,t.z)}, +qb(a){return this.aj1(a)}, +aj1(a){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$qb=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:g=n.ay +s=!new A.aR(g,A.y(g).i("aR<1>")).ga_(0)?3:4 +break +case 3:s=n.a===B.iY?5:7 +break +case 5:s=8 +return A.f(n.Fj(a),$async$qb) +case 8:s=6 +break +case 7:s=9 +return A.f(n.q7(),$async$qb) +case 9:case 6:n.FY() +s=1 +break +case 4:p=11 +i=n.go +m=i.length!==0?i:n.fy +n.fg(B.a0,"getFileFilamentConfig queryId: "+A.c(m)) +s=14 +return A.f(A.aDK(n.oW(a),m).t2(0,B.a_2,new A.auT()),$async$qb) +case 14:l=c +s=l!=null&&J.du(l)?15:16 +break +case 15:s=17 +return A.f(n.zZ(t.a.a(l),a),$async$qb) +case 17:case 16:s=18 +return A.f(n.q7(),$async$qb) +case 18:k=c +if(k!=null&&n.a5i(k))n.ZG(k) +n.FY() +p=2 +s=13 +break +case 11:p=10 +f=o +j=A.v(f) +n.fg(B.p,"getFileFilamentConfig error: "+J.p(j)) +throw f +s=13 +break +case 10:s=2 +break +case 13:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$qb,r)}, +q7(){var s=0,r=A.n(t.na),q,p=this,o,n +var $async$q7=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:n=p.cx +if(n==null){A.u("DevicePrepareToPrintViewModel updateMachineFilamentConfig:deviceViewModel is null",null) +q=null +s=1 +break}o=n.ax +A.u("DevicePrepareToPrintViewModel updateMachineFilamentConfig:currentDevice: "+o.j(0),null) +if(!o.fr){A.u("DevicePrepareToPrintViewModel updateMachineFilamentConfig:device not connected, clearing machine filament config",null) +J.GA(p.ch) +p.CW.V(0) +if(p.M$>0)p.T() +q=null +s=1 +break}p.fg(B.a0,"Getting machine filament info...") +n=p.cx +n.toString +q=A.Kn(n).ak(new A.av2(p,!1),t.na).dc(new A.av3()) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$q7,r)}, +a5i(a){var s=this.ay2(a) +if(this.dy===s)return!1 +this.dy=s +return!0}, +ay2(a){var s,r,q,p,o,n="filamentColor",m=J.a0(a),l=""+(""+m.gt(a)+":") +for(m=m.gdG(a),m=m.gav(m),s=t.n8;m.u();){r=m.gI(m) +q=r.b +p=J.a0(q) +r=l+(A.c(r.a)+":"+A.c(p.h(q,"filamentType"))+":"+A.c(p.h(q,"filamentVendor"))+":"+A.c(p.h(q,"filamentSubtype"))+":") +if(p.h(q,n) instanceof A.A){o=s.a(p.h(q,n)) +l=r+(""+(o.gk(o)>>>16&255)+","+(o.gk(o)>>>8&255)+","+(o.gk(o)&255))}else l=r+A.c(p.h(q,n)) +l+=";"}return l.charCodeAt(0)==0?l:l}, +FY(){var s,r,q=this,p=null,o={} +A.u(u.ge+A.co(q.ay),p) +A.u("DevicePrepareToPrintViewModel setSelectMap:machineFilamentConfig: "+J.p(q.ch),p) +A.u("DevicePrepareToPrintViewModel setSelectMap:selectMap: "+A.co(q.CW),p) +A.u("DevicePrepareToPrintViewModel setSelectMap:extruderNum: 4",p) +if(q.a===B.iY&&!q.x){o=q.ay +if(!new A.aR(o,A.y(o).i("aR<1>")).ga_(0)){q.syU(!0) +o=q.y +if(o!=null)o.il(B.i3,A.F(o.b,p))}return}s=q.ay +if(!new A.aR(s,A.y(s).i("aR<1>")).ga_(0))q.syU(q.ay.gaJ(0).fQ(0,new A.auY())) +s=o.a=!1 +r=q.ay +r.gdG(r).km(0,new A.auZ()).az(0,new A.av_(o,q)) +q.syU(!0) +q.CW.az(0,new A.av0(q)) +if(o.a?q.M$>0:s)q.T() +A.u("DevicePrepareToPrintViewModel setSelectMap:hasChanges: "+o.a+" hasListeners: "+(q.M$>0)+", selectMap: "+A.co(q.CW),p)}, +adm(b3,b4){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,b0,b1,b2="filamentColor" +for(s=J.nV(this.ch),s=s.gav(s),r=1/0,q=null;s.u();){p=s.gI(s) +o=p.b +n=J.a0(o) +if(J.e(n.h(o,"filamentType"),b3)){if(J.e(n.h(o,b2),b4))return p.a +o=n.h(o,b2) +m=A.brm(o.gk(o)>>>16&255,o.gk(o)>>>8&255,o.gk(o)&255) +l=A.brn(m[0],m[1],m[2]) +m=A.brm(b4.gk(b4)>>>16&255,b4.gk(b4)>>>8&255,b4.gk(b4)&255) +k=A.brn(m[0],m[1],m[2]) +o=l[0] +n=l[1] +j=l[2] +i=k[0] +h=k[1] +g=k[2] +f=j*j +e=g*g +d=(Math.sqrt(n*n+f)+Math.sqrt(h*h+e))/2 +c=1+0.5*(1-Math.sqrt(Math.pow(d,7)/(Math.pow(d,7)+Math.pow(25,7)))) +b=c*n +a=c*h +a0=Math.sqrt(b*b+f) +a1=Math.sqrt(a*a+e) +if(b!==0||j!==0){a2=Math.atan2(j,b) +if(a2<0)a2+=6.283185307179586}else a2=0 +if(a!==0||g!==0){a3=Math.atan2(g,a) +if(a3<0)a3+=6.283185307179586}else a3=0 +n=a0*a1 +j=n!==0 +if(j){a4=a3-a2 +if(a4>3.141592653589793)a4-=6.283185307179586 +else if(a4<-3.141592653589793)a4+=6.283185307179586}else a4=0 +n=Math.sqrt(n) +h=Math.sin(a4/2) +a5=(a0+a1)/2 +if(j){j=a2+a3 +if(Math.abs(a2-a3)<=3.141592653589793)a6=j/2 +else{a6=(j+6.283185307179586)/2 +if(a6>6.283185307179586)a6-=6.283185307179586}}else a6=0 +j=Math.cos(a6-0.5235987755982988) +g=Math.cos(2*a6) +f=Math.cos(3*a6+0.10471975511965977) +e=Math.cos(4*a6-1.0995574287564276) +c=(o+i)/2-50 +a7=Math.pow(c,2) +c=Math.sqrt(20+Math.pow(c,2)) +a8=Math.exp(-Math.pow((a6-4.799655442984406)/0.4363323129985824,2)) +a9=Math.sqrt(Math.pow(a5,7)/(Math.pow(a5,7)+Math.pow(25,7))) +a8=Math.sin(2*(30*a8)*3.141592653589793/180) +b0=(a1-a0)/(1+0.045*a5) +e=2*n*h/(1+0.015*a5*(1-0.17*j+0.24*g+0.32*f-0.2*e)) +b1=Math.sqrt(Math.pow((i-o)/(1+0.015*a7/c),2)+Math.pow(b0,2)+Math.pow(e,2)+-(2*a9)*a8*b0*e) +if(b10)r.T()}, +aL9(a){var s=this.cy +if(s!=null)s.S(0) +s=a.ok.b +this.cy=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.auO(this,a))}, +avM(){A.brY("device_change",B.bK,this.gazO())}, +a4e(){var s,r,q=this,p=q.cx +if(p==null){q.fg(B.p,"DeviceViewModel is null") +return}if(q.M$<=0){q.fg(B.f,"ViewModel has no listeners, skipping device change handling") +return}s=p.ax +q.b0J() +if(s.fr){p=q.d +r=s.w +if(p!==r){q.d=r +q.T() +q.adI()}}else{q.d=null +q.T() +p=q.ax +if(p!=null)p.$0()}q.q7()}, +aDP(){if(this.db.length===0)return!0 +var s=this.cx +s=s==null?null:s.a.a +return s!==this.dx.a}, +b0J(){var s=this +if(s.cx==null)return +if(!s.aDP())return +s.dx=A.f7(s.cx.a,t.N,t.CX) +s.adI() +s.T()}, +adI(){var s="add device",r=this.cx.a.gaJ(0),q=A.a8(r,!0,A.y(r).i("B.E")) +A.u("DevicePrepareToPrintViewModel handleDeviceList:newDeviceList: "+A.jr(q,"[","]"),null) +B.b.q(q,A.wz("12345678","",!1,"",B.dK,"","","",u.N,"",!1,"wan",B.cF,"",A.F(s,null),B.C,0,1883,null,"","",s,0,"")) +this.db=q}, +Ob(a){return this.aiS(a)}, +aiS(a){var s=0,r=A.n(t.H),q,p=this,o,n,m +var $async$Ob=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:try{p.fg(B.A,"getDeviceInfo") +o=p.oW(a) +if(o.ax.fr||A.b5(o.ax).dz()){p.fg(B.f,"isConnected or isDeviceConnected") +s=1 +break}}catch(l){n=A.v(l) +p.fg(B.p,"getDeviceInfo error: "+J.p(n))}case 1:return A.l(q,r)}}) +return A.m($async$Ob,r)}, +zZ(a,b){return this.aky(a,b)}, +aky(b0,b1){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9 +var $async$zZ=A.j(function(b3,b4){if(b3===1){p=b4 +s=q}while(true)switch(s){case 0:a8=J.dd(b0) +o.fg(B.f,"setFileFilamentConfig fileMetadata: "+a8.j(b0)) +q=3 +if(J.du(a8.gd1(b0))){n=b0 +m=o.afE(n) +a8=t.j +l=a8.a(J.i(m,"filamentType")) +k=a8.a(J.i(m,"filamentColor")) +j=a8.a(J.i(m,"filamentUsed")) +if(J.i(n,"file_cover")!=null)if(t.f.b(J.i(n,"file_cover"))){a1=J.i(n,"file_cover") +a2=a1}else{a1=t.z +a1=A.w(a1,a1) +a2=a1}else a2=null +i=a2 +if(J.cO(n,"thumbnails")&&a8.b(J.i(n,"thumbnails"))&&J.zY(J.aM(J.i(n,"thumbnails")),0)){h=J.lv(a8.a(J.i(n,"thumbnails"))) +a8=o.k1 +a1=h +if(a8==null?a1!=null:a8!==a1)o.k1=h}else{a8=o.k1 +a1=i +if(a8==null?a1!=null:a8!==a1)o.k1=i}try{if(J.cO(n,"filament_extruder_map")&&t.f.b(J.i(n,"filament_extruder_map"))&&J.du(J.i(n,"filament_extruder_map"))){g=t.f.a(J.i(n,"filament_extruder_map")) +o.CW.V(0) +J.fz(g,new A.auW(o)) +o.fg(B.f,"setFileFilamentConfig filamentExtruderMap: "+A.co(o.CW))}}catch(b2){f=A.v(b2) +o.fg(B.p,"setFileFilamentConfig filamentExtruderMap error: "+J.p(f))}a8=J.eX(k,new A.auX(),t.n8) +e=A.a8(a8,!0,a8.$ti.i("aN.E")) +d=A.w(t.S,t.a) +for(a8=J.bEx(j),a8=a8.gdG(a8),a8=a8.gav(a8),a1=t.N,a4=t.z;a8.u();){c=a8.gI(a8) +b=c.a +a5=A.pi(J.p(c.b)) +a6=Math.pow(10,2) +a=B.d.aa(a5*a6)/a6 +a5=b0)q.T()}}, +aVD(a,b){var s,r=this,q="filename" +switch(A.bHb(r.a).a){case 0:s=b==null?A.w(t.N,t.z):b +r.id=s +s=s.h(0,q) +r.go=s==null?"":s +r.zZ(r.id,a) +r.fg(B.a0,"Direct fileMetaData: "+A.co(r.id)) +break +case 1:if(b!=null&&b.a!==0){r.id=b +s=b.h(0,q) +r.go=s==null?"":s}else if(r.fy.length!==0)r.Hp(a) +break}}, +Hp(a){return this.ayx(a)}, +ayx(a){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j +var $async$Hp=A.j(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:q=3 +s=6 +return A.f(A.a1v(o.oW(a),o.fy),$async$Hp) +case 6:n=c +o.fg(B.a0,"API fileMetadata: "+A.c(n)) +l=A.f7(n,t.N,t.z) +o.id=l +l=l.h(0,"filename") +o.go=l==null?"":l +if(o.M$>0)o.T() +q=1 +s=5 +break +case 3:q=2 +j=p +m=A.v(j) +o.fg(B.p,"Failed to get file metadata: "+A.c(m)) +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$Hp,r)}, +vc(a,b,c,d,e,f,g,h,i,j,k,l){return this.aVC(0,b,c,d,e,f,g,h,i,j,k,l)}, +aVA(a,b,c,d,e,f,g){var s=null +return this.vc(0,s,b,4,c,d,s,s,e,f,g,s)}, +aVz(a,b,c,d,e,f,g){var s=null +return this.vc(0,b,c,d,s,e,s,f,s,g,s,s)}, +aVB(a,b,c,d,e,f,g,h,i,j){return this.vc(0,b,c,d,e,!1,f,null,g,h,i,j)}, +aVC(a,b,c,d,e,f,g,h,i,a0,a1,a2){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j +var $async$vc=A.j(function(a3,a4){if(a3===1){p=a4 +s=q}while(true)switch(s){case 0:o.as=i +o.at=a1 +o.ax=h +o.x=f +q=3 +o.b=!0 +m=a0.h(0,"path") +o.fy=m==null?"":m +m=a0.h(0,"filename") +o.go=m==null?"":m +o.aVD(c,e) +m=o.a +if(A.bHc(m))switch(m.a){case 0:m=o.y +m.toString +o.Q=new A.aLL(c,m,f,o.at) +break +case 1:o.z=new A.aF4(o.fy,c) +break +case 2:break}s=6 +return A.f(o.Ob(c),$async$vc) +case 6:l=o.cx=o.oW(c) +l.a4(0,o.ga2u()) +o.a4e() +o.aL9(l) +o.q7() +s=7 +return A.f(o.qb(c),$async$vc) +case 7:o.aDx(c) +o.b=!1 +o.T() +q=1 +s=5 +break +case 3:q=2 +j=p +n=A.v(j) +J.p(n) +o.b=!1 +o.T() +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$vc,r)}, +aDx(a){var s,r,q=this,p=null +switch(q.a.a){case 0:s=q.y +if(s!=null)s.T() +s=J.du(q.ch) +r=q.y +if(s){if(r!=null)r.il(B.i3,A.F(r.b,p))}else if(r!=null)r.il(B.np,A.F("Send",p)) +break +case 1:break +case 2:s=q.y +if(s!=null)s.T() +s=J.du(q.ch) +r=q.y +if(s){if(r!=null)r.il(B.i3,A.F(r.b,p))}else if(r!=null)r.il(B.np,A.F("Send",p)) +break}}, +tn(a){return this.akl(a)}, +akl(a){var s=0,r=A.n(t.H),q=this +var $async$tn=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:case 2:switch(q.a.a){case 0:s=4 +break +case 1:s=5 +break +case 2:s=6 +break +default:s=3 +break}break +case 4:s=7 +return A.f(q.uc(a),$async$tn) +case 7:s=3 +break +case 5:s=8 +return A.f(q.BK(a),$async$tn) +case 8:s=3 +break +case 6:s=9 +return A.f(q.BL(a),$async$tn) +case 9:s=3 +break +case 3:return A.l(null,r)}}) +return A.m($async$tn,r)}, +xz(a){return this.aNc(a)}, +aNc(a){var s=0,r=A.n(t.y),q,p=this,o,n,m +var $async$xz=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)$async$outer:switch(s){case 0:if(p.w){q=!1 +s=1 +break}p.w=!0 +if(!(!p.x&&p.a===B.iY)){o=p.CW +if(o.a===0){A.cx(A.F("Please select filament type",null)) +q=!1 +s=1 +break}for(o=o.gdG(o),o=o.gav(o);o.u();)if(o.gI(o).b==null){o=$.xw +o=(o==null?$.xw=A.aF5():o).Yh("Please select filament type",null,null,null) +if(o.length!==0){o=A.dm(o,"Exception: ","") +n=$.xw +o=(n==null?$.xw=A.aF5():n).Yh(o,null,null,null) +A.w0(B.uq,o)}q=!1 +s=1 +break $async$outer}}A.mx(null) +m=p.oW(a) +o=p.CW +n=t.N +s=3 +return A.f(A.a1z(m,o.kd(o,new A.auS(),n,n),p.fx),$async$xz) +case 3:if(!c){A.dR(B.as) +A.cx(A.F("Setting print preferences failed",null)) +throw A.d(A.ae(A.F("Setting print preferences failed",null)))}q=!0 +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$xz,r)}, +uc(a){return this.aJZ(a)}, +aJZ(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h +var $async$uc=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +h=m.x +if(h){s=7 +break}else c=h +s=8 +break +case 7:s=9 +return A.f(m.xz(a),$async$uc) +case 9:c=!c +case 8:if(c){n=[1] +s=5 +break}k=m.fy +s=k.length!==0?10:12 +break +case 10:s=13 +return A.f(m.IG(a),$async$uc) +case 13:s=11 +break +case 12:s=14 +return A.f(m.ua(a),$async$uc) +case 14:s=15 +return A.f(m.J0(a),$async$uc) +case 15:case 11:n.push(6) +s=5 +break +case 4:p=3 +i=o +l=A.v(i) +A.cx(J.p(l)) +k=J.p(l) +$.ac().a3("sendTaskActionOrca error: "+k) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +m.w=!1 +A.dR(B.as) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$uc,r)}, +BK(a){return this.aJY(a)}, +aJY(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i +var $async$BK=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.f(m.xz(a),$async$BK) +case 7:if(!c){n=[1] +s=5 +break}s=8 +return A.f(m.Hc(a),$async$BK) +case 8:n.push(6) +s=5 +break +case 4:p=3 +i=o +l=A.v(i) +A.cx(J.p(l)) +j=J.p(l) +$.ac().a3("sendTaskActionAppLocal error: "+j) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +m.w=!1 +A.dR(B.as) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$BK,r)}, +Hc(a){return this.ax8(a)}, +ax8(a){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j,i +var $async$Hc=A.j(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:q=3 +l=o.y +if(l!=null)l.il(B.i4,A.F("Sending...",null)) +s=6 +return A.f(o.z.nq(),$async$Hc) +case 6:n=c +l=n&&a.e!=null +k=o.y +if(l){if(k!=null)k.il(B.no,A.F("Success",null)) +A.bLy(a,A.a(["/device_control"],t.s))}else if(k!=null)k.wc("Send failed") +q=1 +s=5 +break +case 3:q=2 +i=p +m=A.v(i) +l=o.y +if(l!=null)l.wc(J.p(m)) +throw i +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$Hc,r)}, +BL(a){return this.aK_(a)}, +aK_(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i +var $async$BL=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.f(m.xz(a),$async$BL) +case 7:if(!c){n=[1] +s=5 +break}s=8 +return A.f(m.Hd(a),$async$BL) +case 8:n.push(6) +s=5 +break +case 4:p=3 +i=o +l=A.v(i) +A.cx(J.p(l)) +j=J.p(l) +$.ac().a3("sendTaskActionOrcaLocal error: "+j) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +m.w=!1 +A.dR(B.as) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$BL,r)}, +Hd(a){return this.ax9(a)}, +ax9(a){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j,i +var $async$Hd=A.j(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:q=3 +l=o.y +if(l!=null)l.il(B.i4,A.F("Sending...",null)) +l=o.cx +l.toString +s=6 +return A.f(A.or(l,B.Ne,o.fy),$async$Hd) +case 6:n=c +l=n&&a.e!=null +k=o.y +if(l){if(k!=null)k.il(B.no,A.F("Success",null)) +A.bU(a,!1).cV()}else if(k!=null)k.wc("Send failed") +q=1 +s=5 +break +case 3:q=2 +i=p +m=A.v(i) +l=o.y +if(l!=null)l.wc(J.p(m)) +throw i +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$Hd,r)}, +IG(a){return this.aJX(a)}, +aJX(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g +var $async$IG=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +if(a.e==null){n=[1] +s=5 +break}A.dE("sendPrintJob start") +l=m.oW(a) +s=7 +return A.f(A.a1A(l,m.fy),$async$IG) +case 7:k=c +A.dE("sendPrintJob result: "+A.c(k)) +if(!k){i=A.ae("start print failed") +throw A.d(i)}i=m.y +if(i!=null)i.J(B.i4) +if(a.e!=null){i=A.F("Print job sent success",null) +if(i.length!==0)A.w0(B.up,A.F(i,null))}i=m.y +if(i!=null)i.il(B.no,A.F("Success",null)) +n.push(6) +s=5 +break +case 4:p=3 +g=o +j=A.v(g) +i=J.p(j) +$.ac().a3("sendPrintJob error: "+i) +if(a.e!=null)A.dU(J.p(j)) +i=m.y +if(i!=null)i.wc(J.p(j)) +throw g +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.u("sendPrintJob finally",null) +if(a.e!=null)A.dR(B.as) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$IG,r)}, +ua(a){return this.aJV(a)}, +aJV(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g +var $async$ua=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +if(a.e==null){n=[1] +s=5 +break}l=m.oW(a) +k=l.ax.fy.eO() +A.dE("sendOrcaFileToDevice, currentConnnect isLan: "+A.c(k)) +A.dE("sendOrcaFileToDevice, 1, downloadFileFromOrca") +i=m.y +if(i!=null)i.we(B.rN,A.F("Downloading...",null),0.1) +s=7 +return A.f(m.Q.Fa(),$async$ua) +case 7:A.dE("sendOrcaFileToDevice, 2, uploadFileToDeviceServerOrCloudServer") +i=m.y +if(i!=null)i.we(B.rO,A.F("Uploading...",null),0.5) +s=8 +return A.f(m.Q.O_(),$async$ua) +case 8:s=m.x?9:10 +break +case 9:A.dE("sendOrcaFileToDevice, 3, _setMachinePreferences") +i=m.y +if(i!=null)i.il(B.i4,A.F("Setting preferences...",null)) +s=11 +return A.f(m.IK(a),$async$ua) +case 11:case 10:A.dE("sendOrcaFileToDevice, 4, _requestDeviceDownloadAndPrint") +i=m.y +if(i!=null)i.il(B.i4,A.F("Sending to device...",null)) +s=12 +return A.f(m.Q.nq(),$async$ua) +case 12:if(a.e!=null){i=m.Q.r +A.Jw(a,A.F("dialog_file_send_success_to_device_tips",A.a([i==null?"":i],t.s)),B.xr)}i=m.y +if(i!=null)i.il(B.no,A.F("Success",null)) +n.push(6) +s=5 +break +case 4:p=3 +g=o +j=A.v(g) +i=J.p(j) +$.ac().a3("sendOrcaFileToDevice error: "+i) +if(a.e!=null){i=J.p(j) +A.Jw(a,A.F(B.c.NN(A.dm(i,"Exception: ","")),null),B.pF)}i=m.y +if(i!=null)i.wc(J.p(j)) +throw g +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.u("sendFileToDevice finally",null) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$ua,r)}, +IK(a){return this.aKa(a)}, +aKa(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e +var $async$IK=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +if(a.e==null){n=[1] +s=5 +break}A.dE("setMachinePreferences start") +l=m.oW(a) +h=m.CW +g=t.N +k=h.kd(h,new A.auM(),g,g) +s=7 +return A.f(A.a1z(l,k,m.fx),$async$IK) +case 7:j=c +A.dE("setMachinePrePrintConfiguration: "+A.c(j)) +if(!j){h=A.ae(A.F("Setting print preferences failed",null)) +throw A.d(h)}n.push(6) +s=5 +break +case 4:p=3 +e=o +i=A.v(e) +h=J.p(i) +$.ac().a3("setMachinePreferences error: "+h) +if(a.e!=null){h=J.p(i) +A.Jw(a,A.F(B.c.NN(A.dm(h,"Exception: ","")),null),B.pF)}throw e +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.u("setMachinePreferences finally",null) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$IK,r)}, +J0(a){return this.aLB(a)}, +aLB(a){var s=0,r=A.n(t.H),q,p=this,o,n,m +var $async$J0=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:if(a.e==null){s=1 +break}o=p.oW(a) +A.dE("taskComplete start") +n=t.N +s=3 +return A.f(A.aDU(o,A.C(["status","success","message","ok"],n,n)).cv(new A.auP(),new A.auQ(),t.P),$async$J0) +case 3:if(a.e!=null){n=t.Q +m=a.au(n) +m.toString +m.f.Y_() +n=a.au(n) +n.toString +m=A.bt(A.a([B.a1P,B.fw,A.X(A.F("File uploaded successfully",null),null,null,null,null,null,null,null)],t.p),B.l,B.o,B.k) +n.f.jJ(A.ki(new A.Ob(A.F("Ok",null),new A.auR(a),null),null,null,null,B.tf,B.w,null,new A.aB(null,66,m,null),B.pu,B.a_3,null,null,null,B.bW,null,null,null,null,null))}case 1:return A.l(q,r)}}) +return A.m($async$J0,r)}, +akF(a){if(A.bHd(this.a)){this.f=a +this.T()}}, +m(){var s=this,r=s.y +if(r!=null)r.dN() +A.brX("device_change") +A.brX("filament_info") +r=s.cx +if(r!=null)r.K(0,s.ga2u()) +r=s.cy +if(r!=null)r.S(0) +s.cx=s.cy=null +s.dN()}} +A.auU.prototype={ +$1(a){var s=A.oG(a) +return s==null?0:s}, +$S:310} +A.auV.prototype={ +$1(a){var s=A.oG(a) +return s==null?0:s}, +$S:310} +A.auT.prototype={ +$0(){throw A.d(A.ae(A.F("Timeout: Cannot get file filament mapping",null)))}, +$S:291} +A.av2.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=null,b=a==null +A.u("DevicePrepareToPrintViewModel updateMachineFilamentConfig:data: "+A.c(b?c:J.p(a)),c) +if(!b&&J.du(a)){b=this.a +s=b.afE(a) +r=t.j +q=r.a(s.h(0,"filamentType")) +p=r.a(s.h(0,"filamentColor")) +o=r.a(s.h(0,"filamentVendor")) +n=r.a(s.h(0,"filamentSubtype")) +m=A.w(t.S,t.a) +for(r=J.a0(q),l=t.N,k=t.z,j=J.a0(n),i=J.a0(o),h=J.a0(p),g=0;g0)b.T()}else b.fg(B.a0,"Machine filament config unchanged, no update needed") +return m}else{b=this.a +if(J.du(b.ch)){b.fg(B.f,"Machine filament config is empty, clearing...") +J.GA(b.ch) +b.CW.V(0) +if(b.M$>0)b.T()}else b.fg(B.a0,"Machine filament config already empty, no update needed") +return c}}, +$S:782} +A.av3.prototype={ +$1(a){var s=A.c(a) +$.ac().a3("Failed to update machine filament config: "+s) +return null}, +$S:2} +A.auY.prototype={ +$1(a){var s=J.a0(a) +return(typeof s.h(a,"used")=="number"?A.iD(s.h(a,"used")):0)>0}, +$S:112} +A.auZ.prototype={ +$1(a){var s=a.b,r=J.a0(s) +return(typeof r.h(s,"used")=="number"?A.iD(r.h(s,"used")):0)>0}, +$S:305} +A.av_.prototype={ +$1(a){var s,r,q,p,o,n="filamentType",m="DevicePrepareToPrintViewModel setSelectMap:index: ",l=", selectMap[index]: ",k="filamentColor",j=a.a,i=a.b,h=this.b +if(h.CW.N(0,j)&&h.CW.h(0,j)!=null){s=J.i(h.ch,j) +r=h.ay.h(0,j) +if(s!=null&&r!=null&&J.e(J.i(s,n),J.i(r,n))){A.u(m+A.c(j)+l+A.c(h.CW.h(0,j))+", skip",null) +return}}if(j<4){s=J.i(h.ch,j) +if(s!=null){q=J.a0(s) +p=J.a0(i) +q=J.e(q.h(s,n),p.h(i,n))&&J.e(q.h(s,k),p.h(i,k))}else q=!1 +if(q)o=j +else{q=J.a0(i) +o=h.adm(q.h(i,n),q.h(i,k))}}else{q=J.a0(i) +o=h.adm(q.h(i,n),q.h(i,k))}if(!J.e(h.CW.h(0,j),o)||o==null){h.CW.n(0,j,o) +this.a.a=!0}A.u(m+A.c(j)+l+A.c(h.CW.h(0,j))+", extruderIndex: "+A.c(o)+", hasChanges: "+this.a.a,null)}, +$S:783} +A.av0.prototype={ +$2(a,b){if(b==null||J.e(b,-1))this.a.syU(!1)}, +$S:258} +A.av1.prototype={ +$2(a,b){if(b==null)this.a.syU(!1)}, +$S:162} +A.auO.prototype={ +$1(a){var s=this.a +s.fg(B.a0,"Filament info changed: "+A.c(a)) +if(J.cO(a,this.b.ax.w)){s.fg(B.a0,"Current device filament info changed, updating...") +A.brY("filament_info",B.bK,new A.auN(s))}}, +$S:784} +A.auN.prototype={ +$0(){this.a.q7()}, +$S:0} +A.auW.prototype={ +$2(a,b){this.a.CW.n(0,A.c0(J.p(a),null),A.c0(J.p(b),null))}, +$S:79} +A.auX.prototype={ +$1(a){var s=A.jh(a) +return A.Y(s.d,s.a,s.b,s.c)}, +$S:311} +A.auS.prototype={ +$2(a,b){return new A.aO(B.e.j(a),J.p(b),t.mT)}, +$S:312} +A.auM.prototype={ +$2(a,b){return new A.aO(B.e.j(a),J.p(b),t.mT)}, +$S:312} +A.auP.prototype={ +$1(a){A.dE("taskComplete onPressed success, value: "+a)}, +$S:26} +A.auQ.prototype={ +$1(a){var s=J.p(a) +$.ac().a3("taskComplete onPressed error: "+s)}, +$S:2} +A.auR.prototype={ +$0(){var s=0,r=A.n(t.H),q=this,p,o +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:o=q.a +if(o.e!=null){p=o.au(t.Q) +p.toString +p.f.Y_() +A.cy(o,!1,t.mr).Ds()}return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.a0a.prototype={ +D(){return"FileMetaDataSource."+this.b}} +A.a_f.prototype={ +D(){return"DevicePrepareToPrintViewModelType."+this.b}} +A.h0.prototype={} +A.a24.prototype={} +A.Mj.prototype={} +A.Pl.prototype={ +D(){return"UploadStatus."+this.b}} +A.y8.prototype={ +a0(){return new A.SA(A.a([],t.xX),new A.Mj(!1,!1,!1),B.aw_)}} +A.SA.prototype={ +aj(){this.aw() +this.tV()}, +tV(){var s=0,r=A.n(t.H),q=1,p,o=[],n=this,m,l,k,j +var $async$tV=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:q=3 +s=6 +return A.f(n.Hf(),$async$tV) +case 6:n.d=b +s=7 +return A.f(n.R2(),$async$tV) +case 7:l=b +n.e=l +l=J.ap9(l,new A.bb7(),new A.bb8(n)) +n.f=l +s=8 +return A.f(n.AT(l.a),$async$tV) +case 8:n.r=b +s=9 +return A.f(n.Hg(n.f.a),$async$tV) +case 9:n.w=b +o.push(5) +s=4 +break +case 3:q=2 +j=p +m=A.v(j) +A.as().$1("error: "+A.c(m)) +o.push(5) +s=4 +break +case 2:o=[1] +case 4:q=1 +n.J(new A.bb9(n)) +s=o.pop() +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$tV,r)}, +Hf(){var s=0,r=A.n(t.KN),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$Hf=A.j(function(a2,a3){if(a2===1){o=a3 +s=p}while(true)switch(s){case 0:p=4 +g=n.c +g.toString +m=A.cy(g,!1,t.mr) +s=7 +return A.f(m.aj3(A.C(["filename",""],t.N,t.z)),$async$Hf) +case 7:l=a3 +g=l==null +if(!g)l.toString +if(g){g=A.ae("Failed to get file metadata") +throw A.d(g)}k=J.i(l.b,"data") +if(k==null){g=A.ae("Failed to get file metadata") +throw A.d(g)}A.as().$1("data: "+A.c(k)) +j=null +if(J.cO(k,"thumbnails")&&t.j.b(J.i(k,"thumbnails"))&&J.zY(J.aM(J.i(k,"thumbnails")),0))j=J.lv(t.j.a(J.i(k,"thumbnails"))) +g=J.i(k,"filename") +f=J.i(k,"estimated_time") +e=J.i(k,"filament_color") +if(e==null)e=[] +d=J.i(k,"filament_color_rgba") +if(d==null)d=[] +c=J.i(k,"filament_type") +if(c==null)c=[] +b=J.i(k,"filament_weight") +if(b==null)b=[] +a=J.i(k,"thumbnails") +if(a==null)a=[] +i=new A.a8o(g,e,d,c,b,f,j,a) +A.as().$1("modelInfo: "+J.p(i)) +q=i +s=1 +break +p=2 +s=6 +break +case 4:p=3 +a1=o +h=A.v(a1) +A.as().$1("error: "+A.c(h)) +g=A.ae("Failed to get model info") +throw A.d(g) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Hf,r)}, +R2(){var s=0,r=A.n(t.wk),q,p=this,o,n +var $async$R2=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:n=p.c +n.toString +n=A.cy(n,!1,t.e).a.gaJ(0) +n=A.a8(n,!0,A.y(n).i("B.E")) +o=A.af(n).i("ad<1,h0>") +q=A.a8(new A.ad(n,new A.bb6(),o),!0,o.i("aN.E")) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$R2,r)}, +AT(a){return this.axm(a)}, +axm(a){var s=0,r=A.n(t.jC),q,p=this,o,n,m,l,k,j,i +var $async$AT=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:i=p.c +i.toString +s=3 +return A.f(A.Kn(A.cy(i,!1,t.e)),$async$AT) +case 3:o=c +if(o==null)throw A.d(A.ae("Failed to get material config")) +i=J.a0(o) +n=t.j +m=n.a(i.h(o,"filament_type")) +if(i.h(o,"filament_color_rgba")!=null)l=n.a(i.h(o,"filament_color_rgba")) +else l=i.h(o,"filament_color")!=null?n.a(i.h(o,"filament_color")):[] +k=J.eX(l,new A.bb3(),t.n8) +A.a8(k,!0,k.$ti.i("aN.E")) +j=n.a(i.h(o,"filament_weight")) +i=t.N +n=J.eX(m,new A.bb4(),i) +A.a8(n,!0,n.$ti.i("aN.E")) +i=J.eX(j,new A.bb5(),i) +A.a8(i,!0,i.$ti.i("aN.E")) +q=new A.a24() +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$AT,r)}, +Hg(a){return this.axn(a)}, +axn(a){var s=0,r=A.n(t.du),q +var $async$Hg=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=new A.Mj(!0,!1,!1) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Hg,r)}, +Ij(){var s=0,r=A.n(t.H),q=this,p,o +var $async$Ij=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:q.J(new A.bba(q)) +p=t.z,o=1 +case 2:if(!(o<=10)){s=4 +break}s=5 +return A.f(A.eC(B.T,null,p),$async$Ij) +case 5:new A.bbb(q,o).$0() +q.c.dL() +case 3:++o +s=2 +break +case 4:q.J(new A.bbc(q)) +return A.l(null,r)}}) +return A.m($async$Ij,r)}, +SI(){var s=0,r=A.n(t.H),q=this,p +var $async$SI=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=q.c.au(t.Q) +p.toString +p.f.jJ(B.ao6) +return A.l(null,r)}}) +return A.m($async$SI,r)}, +F(a){var s,r,q,p,o,n,m=this,l=null,k=A.A6(l,l,l,l,l,l,A.X(m.a.c?"\u4e0a\u4f20\u5e76\u6253\u5370\u4efb\u52a1":"\u4e0a\u4f20\u4efb\u52a1",l,l,l,l,l,l,l),l) +if(m.d==null)s=B.dI +else{s=t.p +r=A.a([],s) +q=m.d +if(q!=null){q=q.w +q=q==null?l:J.i(q,"url") +q=A.eE(q==null?"":q,l,B.M,100,100) +p=m.d +o=p==null +n=A.X("\u6587\u4ef6\u540d\u79f0: "+A.c(o?l:p.a),l,l,l,l,l,l,l) +p=A.X("\u9884\u8ba1\u7528\u65f6: "+A.c(o?l:p.r),l,l,l,l,l,l,l) +r.push(A.w8(A.os(!1,l,l,l,!0,l,l,!1,q,l,l,l,!1,l,l,l,A.b2(A.a([p,A.X("\u9884\u8ba1\u7528\u6599: "+A.c(m.d==null?l:800),l,l,l,l,l,l,l)],s),B.ap,B.o,B.k,B.r),l,n,l,l),l,l))}if(m.f!=null)r.push(B.aK) +r.push(m.ath()) +r.push(B.aK) +if(m.r!=null)r.push(A.w8(A.os(!1,l,l,l,!0,l,l,!1,B.a1H,l,l,l,!1,l,l,l,B.aua,l,B.aug,l,l),l,l)) +r.push(B.aK) +r.push(m.atf()) +r.push(B.t8) +r.push(m.asD()) +s=A.m2(A.b2(r,B.cv,B.o,B.k,B.r),l,B.S,B.bW,l,B.aw)}return A.lb(k,l,s,l,l)}, +ath(){var s=null,r=this.f,q=J.eX(this.e,new A.bb1(),t.t3) +return A.w8(A.os(!1,s,s,s,!0,s,s,!1,B.a1J,s,s,s,!1,s,s,s,s,s,new A.AZ(A.a8(q,!0,q.$ti.i("aN.E")),r,new A.bb2(this),!0,s,t.RO),s,s),s,s)}, +atf(){var s=this,r=s.w +return A.w8(A.b2(A.a([A.bnQ(new A.baX(s),B.aul,r.a),A.bnQ(new A.baY(s),B.au5,r.b),A.bnQ(new A.baZ(s),B.auf,r.c)],t.p),B.l,B.o,B.k,B.r),null,null)}, +asD(){var s=this,r=null,q=s.y +if(q===B.Pu)return A.b2(A.a([B.aub,A.aEV(r,B.aH,r,r,s.x,r)],t.p),B.l,B.o,B.k,B.r) +if(q===B.Pv&&s.z)return A.f6(!1,B.auj,r,r,B.a3,r,r,r,r,s.gaG5(),r,r) +return A.f6(!1,A.X(s.a.c?"\u4e0a\u4f20\u5e76\u6253\u5370":"\u4e0a\u4f20",r,r,r,r,r,r,r),r,r,B.a3,r,r,r,r,s.gaGs(),r,r)}} +A.bb7.prototype={ +$1(a){return a.c}, +$S:787} +A.bb8.prototype={ +$0(){return J.fT(this.a.e)}, +$S:788} +A.bb9.prototype={ +$0(){}, +$S:0} +A.bb6.prototype={ +$1(a){return new A.h0(a.w,a.gkI(0),a.fr)}, +$S:789} +A.bb3.prototype={ +$1(a){var s=A.jh(a) +return A.Y(s.d,s.a,s.b,s.c)}, +$S:311} +A.bb4.prototype={ +$1(a){return J.p(a)}, +$S:63} +A.bb5.prototype={ +$1(a){return J.p(a)}, +$S:63} +A.bba.prototype={ +$0(){var s=this.a +s.y=B.Pu +s.x=0}, +$S:0} +A.bbb.prototype={ +$0(){this.a.x=this.b/10}, +$S:0} +A.bbc.prototype={ +$0(){var s=this.a +s.y=B.Pv +s.z=!s.a.c}, +$S:0} +A.bb1.prototype={ +$1(a){var s=null,r=a.c?"\uff08\u5f53\u524d\u8fde\u63a5\uff09":"" +return A.blT(A.X(a.b+r,s,s,s,s,s,s,s),!0,a,t.Es)}, +$S:790} +A.bb2.prototype={ +$1(a){return this.aiz(a)}, +aiz(a){var s=0,r=A.n(t.H),q,p=this,o,n,m +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:if(a==null){s=1 +break}o=p.a +o.J(new A.bb_(o,a)) +n=a.a +m=o +s=3 +return A.f(o.AT(n),$async$$1) +case 3:m.r=c +m=o +s=4 +return A.f(o.Hg(n),$async$$1) +case 4:m.w=c +o.J(new A.bb0()) +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:791} +A.bb_.prototype={ +$0(){var s=this.a +s.f=this.b +s.r=null}, +$S:0} +A.bb0.prototype={ +$0(){}, +$S:0} +A.baX.prototype={ +$1(a){var s=this.a +s.J(new A.baW(s,a))}, +$S:11} +A.baW.prototype={ +$0(){this.a.w.a=this.b}, +$S:0} +A.baY.prototype={ +$1(a){var s=this.a +s.J(new A.baV(s,a))}, +$S:11} +A.baV.prototype={ +$0(){this.a.w.b=this.b}, +$S:0} +A.baZ.prototype={ +$1(a){var s=this.a +s.J(new A.baU(s,a))}, +$S:11} +A.baU.prototype={ +$0(){this.a.w.c=this.b}, +$S:0} +A.Is.prototype={ +a0(){var s=null,r=t.z,q=t.N +return new A.QI(A.a([A.uE(0,s,s),A.uE(0,s,s)],t.VC),A.a([new A.Ro(),new A.Ro()],t.fa),A.w(r,r),A.w(q,t.f),A.w(q,t.y),s,s)}} +A.QI.prototype={ +aj(){var s,r,q=this +A.as().$1("DeviceLocalFilePage initState") +q.aw() +q.d=new A.OD(A.bkP(null,0,q),B.bl,2,$.aW()) +q.a.toString +if(B.IP.N(0,"path"))q.a.toString +q.a.toString +if(B.IP.N(0,"isTransparent")){q.a.toString +q.x=!0}for(s=q.e,r=0;r<2;++r)s[r].a4(0,new A.b1m(q,r)) +q.d.a4(0,q.ga69()) +q.tW(q.d.d,!0)}, +m(){var s,r,q=this +A.as().$1("DeviceLocalFilePage dispose") +for(s=q.e,r=0;r<2;++r)s[r].m() +s=q.d +s===$&&A.b() +s.K(0,q.ga69()) +q.d.m() +q.y.V(0) +q.apT()}, +aGf(){var s,r=this.d +r===$&&A.b() +if(r.f===0){s=r.d +r=this.f[s] +if(r.a===0&&!r.b)this.tW(s,!0)}}, +tW(a,b){return this.aEt(a,b)}, +aEs(a){return this.tW(a,!1)}, +aEt(a,b){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g +var $async$tW=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:h=m.f[a] +if(!h.b)j=!h.c&&!b +else j=!0 +if(j){s=1 +break}m.J(new A.b1j(h)) +p=4 +j=m.c +j.toString +l=A.cy(j,!1,t.e) +s=7 +return A.f(A.aDJ(l,h.a,b),$async$tW) +case 7:j=l +j=a===1?j.fr:j.dy +h.c=j +if(h.c)h.a=h.a+1 +n.push(6) +s=5 +break +case 4:p=3 +g=o +k=A.v(g) +A.as().$1("\u52a0\u8f7d\u6587\u4ef6\u5931\u8d25: "+J.p(k)) +if(m.c!=null)A.dU("Load data failed: "+J.p(k)) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +if(m.c!=null)m.J(new A.b1k(h)) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$tW,r)}, +Hr(a){return this.ayz(a)}, +ayz(a){var s=0,r=A.n(t.N),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$Hr=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:if($.aeB.N(0,a)){i=$.aeB.h(0,a) +i.toString +q=i +s=1 +break}i=n.z +if(i.h(0,a)===!0){q="" +s=1 +break}i.n(0,a,!0) +p=4 +h=n.c +h.toString +m=A.cy(h,!1,t.e) +l="" +s=7 +return A.f(A.a1w(m,a),$async$Hr) +case 7:k=c +if(J.cT(k)){i.n(0,a,!1) +q="" +s=1 +break}if(J.i(k,"state")!=null)if(J.e(J.i(k,"state"),"error")){h=J.i(k,"message") +A.as().$1("\u83b7\u53d6\u7f29\u7565\u56fe\u5931\u8d25: "+A.c(h==null?"N/A":h)) +i.n(0,a,!1) +q="" +s=1 +break}else{g=J.i(k,"data") +l=g==null?"":g}if(J.aM(l)!==0&&!J.bkG(l,"data:image"))l="data:image/png;base64,"+A.c(l) +$.aeB.n(0,a,l) +i.n(0,a,!1) +h=l +q=h +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +A.as().$1("\u83b7\u53d6\u7f29\u7565\u56fe\u5931\u8d25: "+A.c(j)) +i.n(0,a,!1) +q="" +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Hr,r)}, +ato(a){return new A.uP(new A.b1i(this,J.i(a,"path")),null)}, +a16(a,b){var s=this,r=s.e[b],q=a.length,p=s.f,o=p[b].c?1:0 +o=A.a([A.bvj(A.btm(r,B.anD,new A.b1e(s,a,b),q+o,B.bW,null,!1),new A.b1f(s,b))],t.p) +if(p[b].b&&a.length===0)o.push(B.dI) +return A.cq(B.a2,o,B.w,B.W,null)}, +F(a){var s,r,q=this,p=null,o="Local Files",n=q.x?p:A.X(A.F(o,p),p,p,p,p,p,p,p),m=q.x?0:p,l=q.d +l===$&&A.b() +s=A.a([A.bwf(A.F(o,p)),A.bwf(A.F("U-disk Files",p))],t.p) +r=q.x?B.t:p +return A.lb(A.A6(p,r,new A.OC(s,l,B.fi,p),p,p,p,n,m),p,A.fA(new A.b1l(q),t.e),p,p)}} +A.b1m.prototype={ +$0(){var s,r,q=this.a,p=this.b,o=q.f[p],n=q.e[p] +if(!o.b&&o.c){s=n.f +if(s.length!==0){r=B.b.gd_(s).at +r.toString +s=B.b.gd_(s).Q +s.toString +s=r>=s-100}else s=!1 +if(s)q.aEs(p)}return null}, +$S:0} +A.b1j.prototype={ +$0(){this.a.b=!0}, +$S:0} +A.b1k.prototype={ +$0(){this.a.b=!1}, +$S:0} +A.b1i.prototype={ +$2(a,b){var s,r=null,q=this.b +if($.aeB.N(0,q)){q=$.aeB.h(0,q) +q.toString +s=this.a.c +s.toString +s=A.q(s).ax.a===B.aI?B.cV:B.c1 +return A.pw(B.uE,A.aa(r,A.cL(q.length!==0?A.eE(q,r,B.M,130,160):A.JW("assets/images/gcodeCover.png",r,r,B.M,130,r,160),r,r),B.h,s,r,r,r,r,r,r,r,r,r,r),B.by)}s=this.a +s.Hr(q).ak(new A.b1h(s,b),t.P) +return A.pw(B.uE,A.aa(r,B.U0,B.h,A.q(a).ax.a===B.aI?B.cV:B.c1,r,r,r,r,r,r,r,r,r,r),B.by)}, +$S:792} +A.b1h.prototype={ +$1(a){if(this.a.c!=null&&a.length!==0)this.b.$1(new A.b1g())}, +$S:99} +A.b1g.prototype={ +$0(){}, +$S:0} +A.b1f.prototype={ +$0(){var s=0,r=A.n(t.H),q=this,p,o +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=q.a +o=q.b +p.f[o].a=0 +s=2 +return A.f(p.tW(o,!0),$async$$0) +case 2:return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.b1e.prototype={ +$2(a,b){var s,r,q=this,p=null,o=q.b +if(b===o.length&&q.a.f[q.c].c)return A.cL(new A.be(B.bW,q.a.f[q.c].b?B.fZ:A.X(A.F("Refresh More",p),p,p,p,p,p,p,p),p),p,p) +s=o[b] +o=J.i(s,"path") +if(o==null)o="" +r=A.qt(o,$.ap4().a).gJI() +o=A.bq(12) +return A.eQ(!1,p,!0,A.w8(A.b2(A.a([A.cf(q.a.ato(s),3),A.cf(new A.be(B.j5,A.X(r,1,B.al,p,p,B.tB,B.bt,p),p),1)],t.p),B.cv,B.o,B.k,B.r),2,new A.cu(o,B.x)),p,!0,p,p,p,p,p,p,p,p,p,new A.b1d(a,s),p,p,p,p)}, +$S:793} +A.b1d.prototype={ +$0(){var s=this.b,r=J.a0(s),q=r.h(s,"path") +s=r.h(s,"filename") +A.aKg(this.a,!0,A.C(["path",q,"filename",s==null?"":s,"isPrint",!0],t.N,t.z))}, +$S:0} +A.b1l.prototype={ +$3(a,b,c){var s=this.a,r=s.d +r===$&&A.b() +return new A.yK(r,A.a([s.a16(b.db,0),s.a16(b.cy,1)],t.p),B.fi,null)}, +$C:"$3", +$R:3, +$S:794} +A.Ro.prototype={} +A.UQ.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.P6.prototype={ +a0(){return new A.U6(A.a([],t.jY),A.bn(t.S))}} +A.U6.prototype={ +aj(){this.aw() +this.x8()}, +m(){var s,r=this +A.u("TimeLapseCameraPage dispose",null) +B.b.V(r.d) +r.r.V(0) +r.w=r.f=r.e=!1 +s=r.x +if(s!=null)A.aDQ(s) +r.ar()}, +x8(){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3,a4,a5,a6,a7,a8 +var $async$x8=A.j(function(a9,b0){if(a9===1){o=b0 +s=p}while(true)switch(s){case 0:if(m.w){s=1 +break}m.J(new A.bfF(m)) +p=4 +c=m.c +c.toString +c=m.x=A.cy(c,!1,t.e) +c=c==null?null:A.aDI(c,0) +s=7 +return A.f(t.uz.b(c)?c:A.en(c,t.H),$async$x8) +case 7:c=m.x +b=c==null?null:c.dx +l=b==null?A.a([],t.H7):b +k=A.a([],t.jY) +c=l,a=c.length,a0=t._U,a1=t.qo,a2=0 +case 8:if(!(a2>>0>=p))break +o.om()}o.f0(0,a)}} +A.aRG.prototype={ +aWQ(a){return A.a(["["+a.e.ah4()+"] ["+a.a.b.toUpperCase()+"] "+J.p(a.b)],t.s)}} +A.Hf.prototype={ +a0(){return new A.ad9(null,null)}} +A.ad9.prototype={ +aj(){this.aw() +var s=A.c2(null,B.bK,null,null,this) +s.vG(0) +this.d=s}, +F(a){var s=this.a,r=s.c,q=s.d +s=this.d +s===$&&A.b() +return new A.aB(r,r,A.lw(s,new A.aZ6(this,q,r),null),null)}, +m(){var s=this.d +s===$&&A.b() +s.m() +this.apI()}} +A.aZ6.prototype={ +$2(a,b){var s,r,q,p,o,n,m=null,l=this.a,k=l.d +k===$&&A.b() +s=k.x +s===$&&A.b() +k=A.KB(k,0,B.Yh,0.7,0.15,1) +r=A.KB(l.d,0,B.X,0.2,0,1) +q=this.b +p=this.c +o=p/5 +n=p/8 +s=A.aVO(A.bo0(A.LP(new A.aB(p,p,A.fB(m,m,m,new A.yj(q,A.KB(l.d,0,B.X,0.7,o,n),m),B.V),m),r),k),s<=0.7) +k=l.d +r=k.x +r===$&&A.b() +r=A.aVO(new A.aB(p,p,A.fB(m,m,m,new A.yj(q,A.KB(k,0,B.X,0.7,o,n),m),B.V),m),r<=0.7) +k=l.d +o=k.x +o===$&&A.b() +o=o<=0.8&&o>=0.7 +k=A.KB(k,0.7,B.X,0.8,1,1.15) +o=A.aVO(A.bo0(new A.aB(p,p,A.fB(m,m,m,new A.yj(q,n,m),B.V),m),k),o) +l=l.d +k=l.x +k===$&&A.b() +l=A.KB(l,0.8,B.X,0.9,1.15,1) +return A.cq(B.O,A.a([s,r,o,A.aVO(A.bo0(new A.aB(p,p,A.fB(m,m,m,new A.yj(q,n,m),B.V),m),l),k>=0.8)],t.p),B.w,B.W,m)}, +$S:810} +A.UF.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.yj.prototype={ +aT(a,b){var s,r=$.ap().br() +r.saG(0,this.b) +r.sd0(0,B.aJ) +r.shw(this.c) +s=b.b/2 +a.k_(new A.z(b.a/2,s),s,r)}, +ff(a){return!1}} +A.a1U.prototype={} +A.aF9.prototype={ +me(){var s=0,r=A.n(t.H) +var $async$me=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:return A.l(null,r)}}) +return A.m($async$me,r)}, +ex(){var s=0,r=A.n(t.H) +var $async$ex=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:return A.l(null,r)}}) +return A.m($async$ex,r)}} +A.qe.prototype={ +D(){return"Level."+this.b}, +mC(a,b){return B.e.mC(this.c,b.gk(b))}, +gk(a){return this.c}} +A.a1V.prototype={ +me(){var s=0,r=A.n(t.H) +var $async$me=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:return A.l(null,r)}}) +return A.m($async$me,r)}, +ex(){var s=0,r=A.n(t.H) +var $async$ex=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:return A.l(null,r)}}) +return A.m($async$ex,r)}} +A.aFb.prototype={ +me(){var s=0,r=A.n(t.H) +var $async$me=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:return A.l(null,r)}}) +return A.m($async$me,r)}, +ex(){var s=0,r=A.n(t.H) +var $async$ex=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:return A.l(null,r)}}) +return A.m($async$ex,r)}} +A.aFc.prototype={ +aVf(a,b,c,d){this.cH(B.y5,a,b,c,d)}, +aVe(a){return this.aVf(a,null,null,null)}, +cH(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i=this +if(!i.e)throw A.d(A.bl("Logger has already been closed.",null)) +else if(a===B.a30)throw A.d(A.bl("Log events cannot have Level.all",null)) +else if(a===B.a31||a===B.a32)throw A.d(A.bl("Log events cannot have Level.off",null)) +o=new A.a1U(a,b,c,d,e==null?new A.aS(Date.now(),0,!1):e) +for(n=A.dr($.bmL,$.bmL.r,A.y($.bmL).c),m=n.$ti.c;n.u();){l=n.d;(l==null?m.a(l):l).$1(o)}if(i.b.al_(o)){k=i.c.aWQ(o) +if(k.length!==0){s=new A.LR(k) +try{for(n=A.dr($.bmM,$.bmM.r,A.y($.bmM).c),m=n.$ti.c;n.u();){l=n.d +r=l==null?m.a(l):l +r.$1(s)}i.d.Xz(s)}catch(j){q=A.v(j) +p=A.aT(j) +A.dJ(q) +A.dJ(p)}}}}, +L(a){var s=0,r=A.n(t.H),q=this +var $async$L=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q.e=!1 +s=2 +return A.f(q.b.ex(),$async$L) +case 2:s=3 +return A.f(q.c.ex(),$async$L) +case 3:s=4 +return A.f(q.d.ex(),$async$L) +case 4:return A.l(null,r)}}) +return A.m($async$L,r)}} +A.LR.prototype={} +A.XC.prototype={ +Xz(a){B.b.az(a.a,A.bVj())}} +A.IU.prototype={ +cs(a){var s,r,q=this.x,p=q.h(0,a) +if(p!=null)return p +s=this.zQ(a) +r=this.b.$1(a).cs(s) +if(q.a>4)q.V(0) +q.n(0,a,r) +return r}, +zQ(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,a8=this,a9=b1.e,b0=a8.w +if(b0!=null){s=b0.$1(b1) +r=s.a +q=s.b +p=s.c +o=s.d +n=s.e +m=a8.e.$1(b1).zQ(b1) +l=!0 +if(o!==B.e_)if(!(o===B.fD&&!b1.d)){b0=o===B.auw&&b1.d +l=b0}k=l?r:q +j=l?q:r +i=b1.d?1:-1 +h=k.r.iM(0,a9) +g=j.r.iM(0,a9) +f=k.c.$1(b1) +e=A.wp(m,f)>=h?f:A.IV(m,h) +d=j.c.$1(b1) +c=A.wp(m,d)>=g?d:A.IV(m,g) +if(!((c-e)*i>=p)){a9=p*i +c=A.aI6(0,100,e+a9) +e=(c-e)*i>=p?e:A.aI6(0,100,c-a9)}b=60 +if(50<=e&&e<60){a9=p*i +if(i>0){c=Math.max(c,60+a9) +e=b}else{c=Math.min(c,49+a9) +e=49}}else if(50<=c&&c<60)if(n){a9=p*i +if(i>0){c=Math.max(c,60+a9) +e=b}else{c=Math.min(c,49+a9) +e=49}}else c=i>0?60:49 +return a8.a===k.a?e:c}else{a=a8.c.$1(b1) +b0=a8.e +if(b0==null)return a +m=b0.$1(b1).zQ(b1) +a0=a8.r.iM(0,a9) +a=A.wp(m,a)>=a0?a:A.IV(m,a0) +if(a8.d&&50<=a&&a<60)a=A.wp(49,m)>=a0?49:60 +a9=a8.f +if(a9!=null){a1=b0.$1(b1).zQ(b1) +a2=a9.$1(b1).zQ(b1) +a3=Math.max(a1,a2) +a4=Math.min(a1,a2) +if(A.wp(a3,a)>=a0&&A.wp(a4,a)>=a0)return a +a5=A.brH(a0,a3) +a6=A.brG(a0,a4) +a7=[] +if(a5!==-1)a7.push(a5) +if(a6!==-1)a7.push(a6) +if(B.d.aa(a1)<60||B.d.aa(a2)<60)return a5<0?100:a5 +if(a7.length===1)return a7[0] +return a6<0?0:a6}return a}}} +A.fW.prototype={} +A.aFE.prototype={ +$1(a){return a.x}, +$S:7} +A.aFF.prototype={ +$1(a){return a.d?6:98}, +$S:6} +A.aFX.prototype={ +$1(a){return a.x}, +$S:7} +A.aFY.prototype={ +$1(a){return a.d?90:10}, +$S:6} +A.aFW.prototype={ +$1(a){return $.bpZ()}, +$S:8} +A.aHL.prototype={ +$1(a){return a.x}, +$S:7} +A.aHM.prototype={ +$1(a){return a.d?6:98}, +$S:6} +A.aHH.prototype={ +$1(a){return a.x}, +$S:7} +A.aHI.prototype={ +$1(a){return a.d?6:new A.k_(87,87,80,75).iM(0,a.e)}, +$S:6} +A.aHv.prototype={ +$1(a){return a.x}, +$S:7} +A.aHw.prototype={ +$1(a){return a.d?new A.k_(24,24,29,34).iM(0,a.e):98}, +$S:6} +A.aHD.prototype={ +$1(a){return a.x}, +$S:7} +A.aHE.prototype={ +$1(a){return a.d?new A.k_(4,4,2,0).iM(0,a.e):100}, +$S:6} +A.aHB.prototype={ +$1(a){return a.x}, +$S:7} +A.aHC.prototype={ +$1(a){var s=a.e +return a.d?new A.k_(10,10,11,12).iM(0,s):new A.k_(96,96,96,95).iM(0,s)}, +$S:6} +A.aHF.prototype={ +$1(a){return a.x}, +$S:7} +A.aHG.prototype={ +$1(a){var s=a.e +return a.d?new A.k_(12,12,16,20).iM(0,s):new A.k_(94,94,92,90).iM(0,s)}, +$S:6} +A.aHx.prototype={ +$1(a){return a.x}, +$S:7} +A.aHy.prototype={ +$1(a){var s=a.e +return a.d?new A.k_(17,17,21,25).iM(0,s):new A.k_(92,92,88,85).iM(0,s)}, +$S:6} +A.aHz.prototype={ +$1(a){return a.x}, +$S:7} +A.aHA.prototype={ +$1(a){var s=a.e +return a.d?new A.k_(22,22,26,30).iM(0,s):new A.k_(90,90,84,80).iM(0,s)}, +$S:6} +A.aGA.prototype={ +$1(a){return a.x}, +$S:7} +A.aGB.prototype={ +$1(a){return a.d?90:10}, +$S:6} +A.aGz.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aHJ.prototype={ +$1(a){return a.y}, +$S:7} +A.aHK.prototype={ +$1(a){return a.d?30:90}, +$S:6} +A.aGx.prototype={ +$1(a){return a.y}, +$S:7} +A.aGy.prototype={ +$1(a){return a.d?80:30}, +$S:6} +A.aGw.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aFU.prototype={ +$1(a){return a.x}, +$S:7} +A.aFV.prototype={ +$1(a){return a.d?90:20}, +$S:6} +A.aFP.prototype={ +$1(a){return a.x}, +$S:7} +A.aFQ.prototype={ +$1(a){return a.d?20:95}, +$S:6} +A.aFO.prototype={ +$1(a){return $.bkm()}, +$S:8} +A.aGU.prototype={ +$1(a){return a.y}, +$S:7} +A.aGV.prototype={ +$1(a){return a.d?60:50}, +$S:6} +A.aGT.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aGR.prototype={ +$1(a){return a.y}, +$S:7} +A.aGS.prototype={ +$1(a){return a.d?30:80}, +$S:6} +A.aGQ.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aHt.prototype={ +$1(a){return a.x}, +$S:7} +A.aHu.prototype={ +$1(a){return 0}, +$S:6} +A.aHb.prototype={ +$1(a){return a.x}, +$S:7} +A.aHc.prototype={ +$1(a){return 0}, +$S:6} +A.aH8.prototype={ +$1(a){return a.f}, +$S:7} +A.aH9.prototype={ +$1(a){if(a.c===B.bb)return a.d?100:0 +return a.d?80:40}, +$S:6} +A.aH7.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aHa.prototype={ +$1(a){return new A.ib($.VH(),$.VG(),10,B.e_,!1)}, +$S:34} +A.aGg.prototype={ +$1(a){return a.f}, +$S:7} +A.aGh.prototype={ +$1(a){if(a.c===B.bb)return a.d?10:90 +return a.d?20:100}, +$S:6} +A.aGf.prototype={ +$1(a){return $.VG()}, +$S:8} +A.aGX.prototype={ +$1(a){return a.f}, +$S:7} +A.aGY.prototype={ +$1(a){var s=a.c +if(s===B.fF||s===B.fE){s=a.b.c +s===$&&A.b() +return s}if(s===B.bb)return a.d?85:25 +return a.d?30:90}, +$S:6} +A.aGW.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aGZ.prototype={ +$1(a){return new A.ib($.VH(),$.VG(),10,B.e_,!1)}, +$S:34} +A.aG5.prototype={ +$1(a){return a.f}, +$S:7} +A.aG6.prototype={ +$1(a){var s=a.c +if(s===B.fF||s===B.fE)return A.IV($.VH().c.$1(a),4.5) +if(s===B.bb)return a.d?0:100 +return a.d?90:10}, +$S:6} +A.aG4.prototype={ +$1(a){return $.VH()}, +$S:8} +A.aFS.prototype={ +$1(a){return a.f}, +$S:7} +A.aFT.prototype={ +$1(a){return a.d?40:80}, +$S:6} +A.aFR.prototype={ +$1(a){return $.bkm()}, +$S:8} +A.aHq.prototype={ +$1(a){return a.r}, +$S:7} +A.aHr.prototype={ +$1(a){return a.d?80:40}, +$S:6} +A.aHp.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aHs.prototype={ +$1(a){return new A.ib($.VK(),$.aoR(),10,B.e_,!1)}, +$S:34} +A.aGu.prototype={ +$1(a){return a.r}, +$S:7} +A.aGv.prototype={ +$1(a){if(a.c===B.bb)return a.d?10:100 +else return a.d?20:100}, +$S:6} +A.aGt.prototype={ +$1(a){return $.aoR()}, +$S:8} +A.aHe.prototype={ +$1(a){return a.r}, +$S:7} +A.aHf.prototype={ +$1(a){var s=a.d,r=s?30:90,q=a.c +if(q===B.bb)return s?30:85 +if(!(q===B.fF||q===B.fE))return r +q=a.r +return A.bKO(q.a,q.b,r,!s)}, +$S:6} +A.aHd.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aHg.prototype={ +$1(a){return new A.ib($.VK(),$.aoR(),10,B.e_,!1)}, +$S:34} +A.aGj.prototype={ +$1(a){return a.r}, +$S:7} +A.aGk.prototype={ +$1(a){var s=a.c +if(!(s===B.fF||s===B.fE))return a.d?90:10 +return A.IV($.VK().c.$1(a),4.5)}, +$S:6} +A.aGi.prototype={ +$1(a){return $.VK()}, +$S:8} +A.aI_.prototype={ +$1(a){return a.w}, +$S:7} +A.aI0.prototype={ +$1(a){if(a.c===B.bb)return a.d?90:25 +return a.d?80:40}, +$S:6} +A.aHZ.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aI1.prototype={ +$1(a){return new A.ib($.VN(),$.aoS(),10,B.e_,!1)}, +$S:34} +A.aGO.prototype={ +$1(a){return a.w}, +$S:7} +A.aGP.prototype={ +$1(a){if(a.c===B.bb)return a.d?10:90 +return a.d?20:100}, +$S:6} +A.aGN.prototype={ +$1(a){return $.aoS()}, +$S:8} +A.aHO.prototype={ +$1(a){return a.w}, +$S:7} +A.aHP.prototype={ +$1(a){var s=a.c +if(s===B.bb)return a.d?60:49 +if(!(s===B.fF||s===B.fE))return a.d?30:90 +s=a.b.c +s===$&&A.b() +s=A.blF(a.w.cs(s)).c +s===$&&A.b() +return s}, +$S:6} +A.aHN.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aHQ.prototype={ +$1(a){return new A.ib($.VN(),$.aoS(),10,B.e_,!1)}, +$S:34} +A.aGD.prototype={ +$1(a){return a.w}, +$S:7} +A.aGE.prototype={ +$1(a){var s=a.c +if(s===B.bb)return a.d?0:100 +if(!(s===B.fF||s===B.fE))return a.d?90:10 +return A.IV($.VN().c.$1(a),4.5)}, +$S:6} +A.aGC.prototype={ +$1(a){return $.VN()}, +$S:8} +A.aFL.prototype={ +$1(a){return a.z}, +$S:7} +A.aFM.prototype={ +$1(a){return a.d?80:40}, +$S:6} +A.aFK.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aFN.prototype={ +$1(a){return new A.ib($.aoQ(),$.aoP(),10,B.e_,!1)}, +$S:34} +A.aG2.prototype={ +$1(a){return a.z}, +$S:7} +A.aG3.prototype={ +$1(a){return a.d?20:100}, +$S:6} +A.aG1.prototype={ +$1(a){return $.aoP()}, +$S:8} +A.aFH.prototype={ +$1(a){return a.z}, +$S:7} +A.aFI.prototype={ +$1(a){return a.d?30:90}, +$S:6} +A.aFG.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aFJ.prototype={ +$1(a){return new A.ib($.aoQ(),$.aoP(),10,B.e_,!1)}, +$S:34} +A.aG_.prototype={ +$1(a){return a.z}, +$S:7} +A.aG0.prototype={ +$1(a){return a.d?90:10}, +$S:6} +A.aFZ.prototype={ +$1(a){return $.aoQ()}, +$S:8} +A.aH4.prototype={ +$1(a){return a.f}, +$S:7} +A.aH5.prototype={ +$1(a){return a.c===B.bb?40:90}, +$S:6} +A.aH3.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aH6.prototype={ +$1(a){return new A.ib($.VI(),$.VJ(),10,B.fD,!0)}, +$S:34} +A.aH0.prototype={ +$1(a){return a.f}, +$S:7} +A.aH1.prototype={ +$1(a){return a.c===B.bb?30:80}, +$S:6} +A.aH_.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aH2.prototype={ +$1(a){return new A.ib($.VI(),$.VJ(),10,B.fD,!0)}, +$S:34} +A.aGc.prototype={ +$1(a){return a.f}, +$S:7} +A.aGe.prototype={ +$1(a){return a.c===B.bb?100:10}, +$S:6} +A.aGb.prototype={ +$1(a){return $.VJ()}, +$S:8} +A.aGd.prototype={ +$1(a){return $.VI()}, +$S:8} +A.aG8.prototype={ +$1(a){return a.f}, +$S:7} +A.aGa.prototype={ +$1(a){return a.c===B.bb?90:30}, +$S:6} +A.aG7.prototype={ +$1(a){return $.VJ()}, +$S:8} +A.aG9.prototype={ +$1(a){return $.VI()}, +$S:8} +A.aHm.prototype={ +$1(a){return a.r}, +$S:7} +A.aHn.prototype={ +$1(a){return a.c===B.bb?80:90}, +$S:6} +A.aHl.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aHo.prototype={ +$1(a){return new A.ib($.VL(),$.VM(),10,B.fD,!0)}, +$S:34} +A.aHi.prototype={ +$1(a){return a.r}, +$S:7} +A.aHj.prototype={ +$1(a){return a.c===B.bb?70:80}, +$S:6} +A.aHh.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aHk.prototype={ +$1(a){return new A.ib($.VL(),$.VM(),10,B.fD,!0)}, +$S:34} +A.aGq.prototype={ +$1(a){return a.r}, +$S:7} +A.aGs.prototype={ +$1(a){return 10}, +$S:6} +A.aGp.prototype={ +$1(a){return $.VM()}, +$S:8} +A.aGr.prototype={ +$1(a){return $.VL()}, +$S:8} +A.aGm.prototype={ +$1(a){return a.r}, +$S:7} +A.aGo.prototype={ +$1(a){return a.c===B.bb?25:30}, +$S:6} +A.aGl.prototype={ +$1(a){return $.VM()}, +$S:8} +A.aGn.prototype={ +$1(a){return $.VL()}, +$S:8} +A.aHW.prototype={ +$1(a){return a.w}, +$S:7} +A.aHX.prototype={ +$1(a){return a.c===B.bb?40:90}, +$S:6} +A.aHV.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aHY.prototype={ +$1(a){return new A.ib($.VO(),$.VP(),10,B.fD,!0)}, +$S:34} +A.aHS.prototype={ +$1(a){return a.w}, +$S:7} +A.aHT.prototype={ +$1(a){return a.c===B.bb?30:80}, +$S:6} +A.aHR.prototype={ +$1(a){return a.d?$.hW():$.hX()}, +$S:8} +A.aHU.prototype={ +$1(a){return new A.ib($.VO(),$.VP(),10,B.fD,!0)}, +$S:34} +A.aGK.prototype={ +$1(a){return a.w}, +$S:7} +A.aGM.prototype={ +$1(a){return a.c===B.bb?100:10}, +$S:6} +A.aGJ.prototype={ +$1(a){return $.VP()}, +$S:8} +A.aGL.prototype={ +$1(a){return $.VO()}, +$S:8} +A.aGG.prototype={ +$1(a){return a.w}, +$S:7} +A.aGI.prototype={ +$1(a){return a.c===B.bb?90:30}, +$S:6} +A.aGF.prototype={ +$1(a){return $.VP()}, +$S:8} +A.aGH.prototype={ +$1(a){return $.VO()}, +$S:8} +A.k_.prototype={ +iM(a,b){var s,r=this +if(b<0.5)return A.bmQ(r.b,r.c,b/0.5) +else{s=r.d +if(b<1)return A.bmQ(r.c,s,(b-0.5)/0.5) +else return s}}} +A.Pc.prototype={ +D(){return"TonePolarity."+this.b}} +A.ib.prototype={} +A.nw.prototype={ +D(){return"Variant."+this.b}} +A.arB.prototype={ +aA(a){var s,r,q,p,o,n,m=this.b1m($.Gv(),this.y),l=m[0],k=m[1],j=m[2],i=$.bl2[0],h=i[0],g=i[1] +i=i[2] +s=$.bl2[1] +r=s[0] +q=s[1] +s=s[2] +p=$.bl2[2] +o=p[0] +n=p[1] +p=p[2] +return A.bl3(A.py(h*l+g*k+i*j),A.py(r*l+q*k+s*j),A.py(o*l+n*k+p*j))}, +b1m(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=this,a4=a3.b,a5=a4===0||a3.c===0?0:a4/Math.sqrt(a3.c/100),a6=Math.pow(a5/Math.pow(1.64-Math.pow(0.29,a8.f),0.73),1.1111111111111112),a7=a3.a*3.141592653589793/180 +a4=Math.cos(a7+2) +s=a8.r*Math.pow(a3.c/100,1/a8.y/a8.ay)/a8.w +r=Math.sin(a7) +q=Math.cos(a7) +p=23*(s+0.305)*a6/(23*(0.25*(a4+3.8)*3846.153846153846*a8.z*a8.x)+11*a6*q+108*a6*r) +o=p*q +n=p*r +a4=460*s +m=(a4+451*o+288*n)/1403 +l=(a4-891*o-261*n)/1403 +k=(a4-220*o-6300*n)/1403 +a4=Math.abs(m) +j=Math.max(0,27.13*a4/(400-a4)) +a4=A.ou(m) +i=100/a8.at +h=Math.pow(j,2.380952380952381) +g=Math.abs(l) +f=Math.max(0,27.13*g/(400-g)) +g=A.ou(l) +e=Math.pow(f,2.380952380952381) +d=Math.abs(k) +c=Math.max(0,27.13*d/(400-d)) +d=A.ou(k) +b=Math.pow(c,2.380952380952381) +a=a8.as +a0=a4*i*h/a[0] +a1=g*i*e/a[1] +a2=d*i*b/a[2] +a9[0]=1.86206786*a0-1.01125463*a1+0.14918677*a2 +a9[1]=0.38752654*a0+0.62144744*a1-0.00897398*a2 +a9[2]=-0.0158415*a0-0.03412294*a1+1.04996444*a2 +return a9}} +A.k5.prototype={ +l(a,b){var s,r +if(b==null)return!1 +if(!(b instanceof A.k5))return!1 +s=b.d +s===$&&A.b() +r=this.d +r===$&&A.b() +return s===r}, +gB(a){var s=this.d +s===$&&A.b() +return B.e.gB(s)}, +j(a){var s,r,q=this.a +q===$&&A.b() +q=B.e.j(B.d.aa(q)) +s=this.b +s===$&&A.b() +s=B.d.aa(s) +r=this.c +r===$&&A.b() +return"H"+q+" C"+s+" T"+B.e.j(B.d.aa(r))}, +aA(a){var s=this.d +s===$&&A.b() +return s}} +A.aVL.prototype={} +A.yX.prototype={ +cs(a){var s=this.d +if(s.N(0,a)){s=s.h(0,a) +s.toString +return A.k6(s)}else return A.k6(A.x3(this.a,this.b,a))}, +l(a,b){if(b==null)return!1 +if(b instanceof A.yX)return this.a===b.a&&this.b===b.b +return!1}, +gB(a){var s=A.a4(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) +return s}, +j(a){return"TonalPalette.of("+A.c(this.a)+", "+A.c(this.b)+")"}} +A.a7F.prototype={} +A.a7G.prototype={} +A.a7H.prototype={} +A.a7I.prototype={} +A.a7J.prototype={} +A.a7K.prototype={} +A.a7L.prototype={} +A.a7M.prototype={} +A.a7N.prototype={} +A.aTQ.prototype={ +aOb(a2,a3){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a=this,a0=a.a,a1=a0.a +a1===$&&A.b() +s=B.d.aa(a1) +r=a.gv8()[s] +q=a.Nf(r) +a1=t.DU +p=A.a([r],a1) +for(o=0,n=0;n<360;++n,q=l){m=B.e.an(s+n,360) +l=a.Nf(a.gv8()[m]) +o+=Math.abs(l-q)}k=o/a3 +q=a.Nf(r) +for(j=1,i=0;p.length=g*k +e=1 +while(!0){if(!(f&&g=(g+e)*k;++e}++j +if(j>360){for(;p.length=a1?B.e.an(b,a1):b])}for(a0=a2-c-1+1,n=1;n=a1?B.e.an(b,a1):b])}return d}, +gaPJ(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d=this,c=d.f +if(c!=null)return c +c=B.b.gW(d.gpI()).a +c===$&&A.b() +s=d.gos().h(0,B.b.gW(d.gpI())) +s.toString +r=B.b.gY(d.gpI()).a +r===$&&A.b() +q=d.gos().h(0,B.b.gY(d.gpI())) +q.toString +p=q-s +q=d.a +o=q.a +o===$&&A.b() +n=A.bwj(c,o,r) +if(n)m=r +else m=c +if(n)l=c +else l=r +k=d.gv8()[B.d.aa(q.a)] +j=1-d.gaVF() +for(i=1000,h=0;h<=360;++h){g=B.d.an(m+h,360) +if(g<0)g+=360 +if(!A.bwj(m,g,l))continue +f=d.gv8()[B.d.aa(g)] +c=d.d.h(0,f) +c.toString +e=Math.abs(j-(c-s)/p) +if(e=0)return p +p=q.gos().h(0,B.b.gW(q.gpI())) +p.toString +s=q.gos().h(0,B.b.gY(q.gpI())) +s.toString +r=s-p +s=q.gos().h(0,q.a) +s.toString +return q.e=r===0?0.5:(s-p)/r}, +gpI(){var s,r=this,q=r.b +if(q.length!==0)return q +s=A.cN(r.gv8(),!0,t.bq) +s.push(r.a) +B.b.fZ(s,new A.aTR(r.gos())) +return r.b=s}, +gos(){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=a4.d +if(a5.a!==0)return a5 +a5=t.bq +s=A.cN(a4.gv8(),!0,a5) +s.push(a4.a) +a5=A.w(a5,t.i) +for(r=s.length,q=0;q>>16&255 +l=n>>>8&255 +k=n&255 +j=A.ot(A.a([A.ef(p),A.ef(l),A.ef(k)],r),$.mz) +i=A.arC(j[0],j[1],j[2],o) +m.a=i.a +m.b=i.b +m.c=116*A.th(A.ot(A.a([A.ef(p),A.ef(l),A.ef(k)],r),$.mz)[1]/100)-16 +s.push(m)}return this.c=A.cN(s,!1,t.bq)}} +A.aTR.prototype={ +$2(a,b){var s=this.a,r=s.h(0,a) +r.toString +s=s.h(0,b) +s.toString +return B.d.bO(r,s)}, +$S:815} +A.aII.prototype={ +aWX(a,b){var s=A.bL6(a),r=this.a.h(0,s) +r=B.agm.h(0,s) +if(r!=null)return r +return null}} +A.a4e.prototype={ +j5(a,b){this.QH() +if(this.d!=null){A.aC("MqttConnectionBase::_onError - calling disconnected callback",!1) +this.d.$0()}}, +pT(){this.QH() +if(this.d!=null){A.aC("MqttConnectionBase::_onDone - calling disconnected callback",!1) +this.d.$0()}}, +QH(){var s,r,q=this,p=q.c +p.ee() +s=p.a +if(s!==0)A.V(A.a1("MqttByteBuffer::clear - attempt to clear a byte buffer where postion is not zero, it is "+s)) +p=p.b +if(p!=null)p.st(0,0) +p=q.a +if(p!=null){try{p.ex()}catch(r){if(t.We.b(A.v(r)))J.A0(q.a) +else throw r}q.a=null}}, +KI(a,b){if(b)this.QH() +else this.pT()}, +jq(a){return this.KI(0,!1)}} +A.a4g.prototype={ +CA(a,b,c){return this.aPU(a,b,c)}, +aPU(a,b,c){var s=0,r=A.n(t.Ki),q,p=2,o,n=this,m,l,k +var $async$CA=A.j(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:n.r=a +n.w=b +A.aC("MqttConnectionHandlerBase::connect - server "+A.c(a)+", port "+A.c(b),!1) +n.x=c +p=4 +s=7 +return A.f(n.vf(a,b,c),$async$CA) +case 7:m=n.cy +q=m +s=1 +break +p=2 +s=6 +break +case 4:p=3 +k=o +if(t.J.b(A.v(k))){n.cy.a=B.ahm +throw k}else throw k +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$CA,r)}, +JH(a){return this.aOI(a)}, +aOI(a){var s=0,r=A.n(t.H),q,p=this,o +var $async$JH=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:A.aC("MqttConnectionHandlerBase::autoReconnect entered",!1) +o=p.f +if(o){s=1 +break}p.f=!0 +o=p.ax +o===$&&A.b() +o.KI(0,!0) +p.ax.d=null +A.aC("MqttConnectionHandlerBase::autoReconnect - attempting reconnection",!1) +s=3 +return A.f(p.CA(p.r,p.w,p.x),$async$JH) +case 3:o=c +p.cy=o +p.f=!1 +if(o.a===B.c7){p.ax.d=p.b +p.as.a.q(0,new A.Cn(!0)) +A.aC("MqttConnectionHandlerBase::autoReconnect - auto reconnect complete",!1)}else{A.aC("MqttConnectionHandlerBase::autoReconnect - auto reconnect failed - re trying",!1) +o=p.as +if(o!=null)o.a.q(0,new A.xI())}case 1:return A.l(q,r)}}) +return A.m($async$JH,r)}, +kr(a){var s,r,q,p +A.aC("MqttConnectionHandlerBase::sendMessage - sending message started >>> -> ",a) +if(!a.gce())throw A.d(A.bl("MqttConnectionHandlerBase::sendMessage - message cannot be sent, not valid",null)) +s=this.cy.a +if(s===B.c7||s===B.Je){r=new A.ju(new A.df(new Uint8Array(0),0)) +a.fd(r) +r.Zo(0,0) +s=this.ax +s===$&&A.b() +s.fm(0,r) +for(s=this.CW,q=s.length,p=0;p>>",!1)}, +L(a){if(this.cy.a===B.c7)this.jq(0)}, +aXf(a){var s,r=a.a,q=r.a.c +A.aC("MqttConnectionHandlerBase::messageAvailable - message type is "+A.c(q),!1) +q.toString +s=this.ch.h(0,q) +if(s!=null)s.$1(r) +else A.aC("MqttConnectionHandlerBase::messageAvailable - WARN - no registered callback for this message type",!1)}, +acD(a,b){var s,r=this +A.aC("MqttConnectionHandlerBase::disconnect",!1) +if(r.cy.a===B.c7)if(b==null){s=new A.xK() +s.a09() +s.b.c=B.hO +r.kr(s)}else r.kr(b) +r.SP() +return r.cy.a}, +jq(a){return this.acD(0,null)}, +SP(){A.aC("MqttConnectionHandlerBase::_performConnectionDisconnect entered",!1) +this.cy.a=B.qI +this.as=null}, +aPW(a){var s,r,q,p,o=this +A.aC("MqttConnectionHandlerBase::_connectAckProcessor",!1) +try{t.nk.a(a) +s=a +if(!o.aId(a)){A.aC("MqttConnectionHandlerBase::_connectAckProcessor - reason code check failed, disconnecting",!1) +o.SP()}else{A.aC("MqttConnectionHandlerBase::_connectAckProcessor - state = connected",!1) +r=o.cy +r.a=B.c7 +r.b=s.b.c +r.c=s.b.as +r=o.a +if(r!=null)r.$0()}}catch(q){if(t.J.b(A.v(q)))o.SP() +else throw q}A.aC("MqttConnectionHandlerBase:: cancelling connect timer",!1) +r=o.Q +r===$&&A.b() +if(r.d){p=r.c +p===$&&A.b() +p.S(0) +r.d=!1 +r=r.b +r===$&&A.b() +r.d8(0)}return!0}, +aPY(a){var s=a.a +s.toString +this.aPW(s)}, +aId(a){var s,r,q,p=a.b +if(p!=null){s=p.c +if(s!=null){r=$.zV().iY(s) +if(r!=null){p=this.cy +p.b=s +q=a.b +p.c=q==null?null:q.as +if(r>=128){$.zV() +A.aC("MqttConnectionHandlerBase::_reasonCodeOk - reason code is an error "+B.b.gY(s.j(0).split(".")),!1) +return!1}else{$.zV() +A.aC("MqttConnectionHandlerBase::_reasonCodeOk - reason code is ok "+B.b.gY(s.j(0).split(".")),!1) +return!0}}else{A.aC("MqttConnectionHandlerBase::_reasonCodeOk - reason code has a null integer value",!1) +return!1}}else{A.aC("MqttConnectionHandlerBase::_reasonCodeOk - reason code is null",!1) +return!0}}else{A.aC("MqttConnectionHandlerBase::_reasonCodeOk - variable header is null",!1) +return!1}}} +A.a4h.prototype={ +aZk(){var s,r,q,p,o,n=this +A.aC("MqttConnectionKeepAlive::pingRequired",!1) +if(n.f)return!1 +else n.f=!0 +s=!1 +q=new A.a4q() +p=new A.jv(new A.hH(),B.b9) +p.c=B.mS +q.a=p +r=q +p=n.e +p===$&&A.b() +if(p.cy.a===B.c7){A.aC("MqttConnectionKeepAlive::pingRequired - sending ping request",!1) +try{n.e.kr(r) +s=!0}catch(o){A.aC("MqttConnectionKeepAlive::pingRequired - exception occurred",!1)}}else A.aC("MqttConnectionKeepAlive::pingRequired - NOT sending ping - not connected",!1) +A.aC("MqttConnectionKeepAlive::pingRequired - restarting ping timer",!1) +p=n.a +p===$&&A.b() +n.c=A.bZ(A.dA(0,p,0),n.gafK()) +if(n.b!==0){p=n.d +if(p==null){A.aC("MqttConnectionKeepAlive::pingRequired - starting disconnect timer",!1) +if(s)n.d=A.bZ(A.dA(0,n.b,0),n.gafc()) +else n.afb()}else{p=p.b +if(p==null)if(s){A.aC("MqttConnectionKeepAlive::pingRequired - restarting disconnect timer",!1) +n.d=A.bZ(A.dA(0,n.b,0),n.gafc())}else n.afb() +else A.aC("MqttConnectionKeepAlive::pingRequired - disconnect timer is active, not restarting",!1)}}n.f=!1 +return s}, +aZj(a){var s,r=this +A.aC("MqttConnectionKeepAlive::pingRequestReceived",!1) +if(r.f)return!1 +else r.f=!0 +a=new A.Lm() +s=new A.jv(new A.hH(),B.b9) +s.c=B.mT +a.a=s +s=r.e +s===$&&A.b() +s.kr(a) +r.f=!1 +return!0}, +aZm(a){var s +A.aC("MqttConnectionKeepAlive::pingResponseReceived",!1) +s=this.r +if(s!=null)s.$0() +s=this.d +if(s!=null)s.S(0) +return!0}, +aXh(a){return!0}, +aXJ(){var s=this.e +s===$&&A.b() +if(s.cy.a===B.c7){A.aC("MqttConnectionKeepAlive::noPingResponseReceived - connected, attempting to disconnect",!1) +s=this.w +if(s!=null){s.a.q(0,new A.AY()) +A.aC("MqttConnectionKeepAlive::noPingResponseReceived - OK - disconnect event fired",!1)}else A.aC("MqttConnectionKeepAlive::noPingResponseReceived - ERROR - disconnect event not fired, no event handler",!1)}else A.aC("MqttConnectionKeepAlive::noPingResponseReceived - not disconnecting, not connected",!1)}, +afb(){var s=this.e +s===$&&A.b() +if(s.cy.a===B.c7){A.aC("MqttConnectionKeepAlive::noMessageSent - connected, attempting to disconnect",!1) +s=this.w +if(s!=null){s.a.q(0,new A.avZ()) +A.aC("MqttConnectionKeepAlive::noMessageSent - OK - disconnect event fired",!1)}else A.aC("MqttConnectionKeepAlive::noMessageSent - ERROR - disconnect event not fired, no event handler",!1)}else A.aC("MqttConnectionKeepAlive::noMessageSent - not disconnecting, not connected",!1)}} +A.Cg.prototype={ +D(){return"MqttDisconnectionOrigin."+this.b}} +A.Cf.prototype={ +D(){return"MqttConnectionState."+this.b}} +A.Ln.prototype={} +A.a4b.prototype={ +ah0(a){var s,r=a.gt(0) +if(r===0)throw A.d(A.ae("MqttBinaryDataEncoding::toBinaryData - data is null or empty")) +r=a.b +if(r>65535)throw A.d(A.ae("MqttBinaryDataEncoding::toBinaryData - data length is invalid, length is "+r)) +s=new A.df(new Uint8Array(0),0) +s.lm(0,B.e.cA(r,8)) +s.lm(0,a.b&255) +s.G(0,a) +return s}, +o7(a,b){if(b.b<2)throw A.d(A.ae("MqttBinaryDataEncoding::length length byte array must comprise 2 bytes")) +return(b.h(0,0)<<8>>>0)+b.h(0,1)}} +A.aJE.prototype={ +gk(a){return this.b}} +A.kV.prototype={ +mu(a){var s,r,q +this.a9U(a) +s=B.ao.b4(a) +r=s.length +if(r>65535)throw A.d(A.ae("MqttUtf8Encoding::toUtf8 - UTF8 string length is invalid, length is "+r)) +q=new A.df(new Uint8Array(0),0) +q.lm(0,r>>>8) +q.lm(0,r&255) +q.G(0,s) +return q}, +adE(a){var s,r,q=this.o7(0,a),p=a.cJ(a),o=2+q +A.dL(2,o,p.length,null,null) +s=A.fc(p,2,o,A.af(p).c) +r=B.eA.b4(s.cJ(0)) +this.a9U(r) +return r}, +o7(a,b){if(b.b<2)throw A.d(A.ae("MqttUtf8Encoding:: Length byte array must comprise 2 bytes")) +return(b.h(0,0)<<8>>>0)+b.h(0,1)}, +a9U(a){if(new A.Dg(a).fQ(0,new A.aJP()))throw A.d(A.ae("MqttUtf8Encoding:: UTF8 string is invalid, contains control characters"))}} +A.aJP.prototype={ +$1(a){var s +if(!(a>=0&&a<=31))s=a>=127&&a<=159 +else s=!0 +return s}, +$S:86} +A.hH.prototype={ +zq(a,b){var s,r,q,p,o,n,m=null +if(b==null||b.gt(0)===0)throw A.d(A.bl("MqttByteIntegerEncoding::toInt byte integer is null or empty",m)) +s=1 +r=0 +q=0 +p=0 +try{do{if(q>4)break +p=b.h(0,q) +r+=(p&127)*s +if(s>2097152){o=A.bl("MqttByteIntegerEncoding::toInt Malformed Variable Byte Integer",m) +throw A.d(o)}s*=128;++q}while((p&128)!==0)}catch(n){if(t.Lt.b(A.v(n)))throw A.d(A.bl("MqttByteIntegerEncoding::toInt invalid byte sequence "+A.c(b),m)) +else throw n}if(q>4)throw A.d(A.bL("MqttByteIntegerEncoding::toInt - variable byte integer is incorrectly formatted",m,m)) +return r}, +fJ(a){var s,r,q,p,o +if(a>268435455||a<0)throw A.d(A.bl("MqttByteIntegerEncoding::fromInt supplied value is not convertible "+a,null)) +s=new A.df(new Uint8Array(0),0) +r=a +q=0 +do{if(q>4)break +p=B.e.an(r,128) +r=B.e.cn(r,128) +o=r>0 +s.lm(0,o?(p|128)>>>0:p);++q}while(o) +if(s.gt(0)===0||q>4)throw A.d(A.bl("MqttByteIntegerEncoding::fromInt byte integer has an invalid length "+s.b+", value is "+a,null)) +return s}, +o7(a,b){return this.fJ(b).b}} +A.a4f.prototype={ +j(a){var s=this.a +s===$&&A.b() +return s}, +$ibm:1} +A.a4l.prototype={ +j(a){var s=this.a +s===$&&A.b() +return s}, +$ibm:1} +A.a4m.prototype={ +j(a){var s=this.a +s===$&&A.b() +return s}, +$ibm:1} +A.a4n.prototype={ +j(a){var s=this.a +s===$&&A.b() +return s}, +$ibm:1} +A.Ch.prototype={ +j(a){var s=this.a +s===$&&A.b() +return s}, +$ibm:1} +A.a4o.prototype={ +j(a){var s=this.a +s===$&&A.b() +return s}, +$ibm:1} +A.a4p.prototype={ +j(a){var s=this.a +s===$&&A.b() +return s}, +$ibm:1} +A.Cd.prototype={ +fd(a){var s,r=this.b,q=r.c!==B.jD&&r.e!=null?r.d.eX().b+1:0 +this.a.mx(q,a) +r=this.b +s=r.c +if(s!==B.jD&&r.e!=null){a.eW($.bky().iY(s)) +a.eC(0,r.d.eX())}}, +gce(){var s=this.b +s=s.c!==B.jD&&s.e!=null +return s}, +j(a){var s=""+(this.jL(0)+"\n")+J.p(this.b) +return s.charCodeAt(0)==0?s:s}} +A.aJ1.prototype={ +gt(a){return this.b}, +i5(){var s,r,q,p,o,n,m=this,l=m.d +if(l.a.N(0,B.c8))throw A.d(A.bL("MqttAuthenticateVariableHeader::_processProperties, message properties received are invalid",null,null)) +s=l.cJ(0) +for(r=s.length,q=0;q>>0) +a.td(o.e) +a.eC(0,o.a.eX()) +p.c.a7J(a)}, +j(a){var s=this.jL(0),r=this.b.j(0),q=this.c +q===$&&A.b() +q=""+s+r+q.j(0) +return q.charCodeAt(0)==0?q:q}} +A.aJ8.prototype={ +a7J(a){A.bmX(a,this.c)}, +j(a){var s=""+"Will topic = null\nUser name = not set\nPassword = not set\n" +return s.charCodeAt(0)==0?s:s}} +A.aJ9.prototype={ +gt(a){return this.np()}, +np(){return new A.kV().mu(this.b).b+1+1+2+this.a.eX().b}, +j(a){var s=this,r=""+("ProtocolName = "+s.b+"\n")+("ProtocolVersion = "+s.c+"\n")+("ConnectFlags = "+s.d.j(0)+"\n")+("KeepAlive = "+s.e+"\n")+("Properties = "+s.a.j(0)) +return r.charCodeAt(0)==0?r:r}} +A.aJQ.prototype={ +gt(a){var s=this.a +return s.c.zq(0,s.eX())}, +j(a){var s=""+"Will Delay Interval = 0\nPayload Format Indicator = false\nMessage Expiry Interval = 0\nContent Type = null\nResponse Topic = null\nCorrelation Data = null\n"+("user properties = "+this.a.j(0)+"\n") +return s.charCodeAt(0)==0?s:s}} +A.aJ5.prototype={ +gt(a){return 1}, +j(a){var s=""+("Session Present = "+this.a+"\n") +return s.charCodeAt(0)==0?s:s}} +A.Lk.prototype={ +fd(a){var s,r=this.a +r.toString +s=this.b.d +r.mx(2+s.c.zq(0,s.eX()),a) +s=this.b +if(s!=null){if(s.b)a.eW(1) +else a.eW(0) +a.eW($.zV().iY(s.c)) +a.eC(0,s.d.eX())}}, +j(a){var s=""+this.jL(0)+J.p(this.b) +return s.charCodeAt(0)==0?s:s}} +A.aJ6.prototype={ +i5(){var s,r,q,p,o=this,n=o.d +if(n.a.N(0,B.c8))throw A.d(A.bL("MqttConnectAckVariableHeader::_processProperties, message properties received are invalid",null,null)) +s=n.cJ(0) +for(n=s.length,r=0;r>>1&3) +p.d=(s>>>3&1)===1 +p.c=B.a7E[s>>>4&15] +try{p.b=new A.hH().zq(0,A.bLa(a))}catch(r){q=A.v(r) +if(t.J.b(q))throw A.d(A.aJc(o)) +else if(t.Lt.b(q))throw A.d(A.aJc(o)) +else throw r}}, +j(a){var s=this,r=""+("MessageType = "+A.c(s.c))+(" Duplicate = "+s.d)+(" Retain = "+s.f)+(" Qos = "+A.c(s.e.D().split(".")[1]))+(" Size = "+s.b) +return r.charCodeAt(0)==0?r:r}} +A.aJb.prototype={} +A.e3.prototype={ +fd(a){this.a.mx(0,a)}, +hX(a){}, +gce(){return!0}, +j(a){var s=""+"MQTTMessage of type "+(J.p(this.a.c)+"\n")+(J.p(this.a)+"\n") +return s.charCodeAt(0)==0?s:s}} +A.hi.prototype={ +D(){return"MqttMessageType."+this.b}} +A.Co.prototype={ +j(a){var s=""+("Maximum Qos = "+A.c(this.a.D().split(".")[1])+"\n")+"No Local = false\nRetain As Published = true\n"+("Retain Handling = "+A.c(B.ai3.D().split(".")[1])+"\n") +return s.charCodeAt(0)==0?s:s}} +A.a4q.prototype={ +fd(a){a.eW(this.a.c.a<<4>>>0) +a.eW(0)}, +j(a){var s=""+this.jL(0) +return s.charCodeAt(0)==0?s:s}} +A.Lm.prototype={ +fd(a){throw A.d(A.cE("MqttPingRequestMessage::readFrom - not implemented, message is receive only"))}, +j(a){var s=""+this.jL(0) +return s.charCodeAt(0)==0?s:s}} +A.a4c.prototype={ +fd(a){a.eW($.h9().iY(this.a)) +a.eC(0,this.c.ah0(this.b))}, +np(){return this.c.ah0(this.b).b+1}, +j(a){var s=this.b +return"Identifier "+A.c(this.a)+", value "+s.j(s)}, +$ikb:1, +gdm(a){return this.a}, +gk(a){return this.b}} +A.Lg.prototype={ +fd(a){a.eW($.h9().iY(this.a)) +a.eW(this.b)}, +np(){return 2}, +j(a){$.h9() +return"Identifier : "+B.b.gY(J.p(this.a).split("."))+", value : "+this.b}, +$ikb:1, +gdm(a){return this.a}, +gk(a){return this.b}} +A.a4k.prototype={ +fd(a){var s=this +a.eW($.h9().iY(s.a)) +a.eW(s.b>>>24&255) +a.eW(s.b>>>16&255) +a.eW(s.b>>>8&255) +a.eW(s.b&255)}, +np(){return 5}, +j(a){$.h9() +return"Identifier : "+B.b.gY(J.p(this.a).split("."))+", value : "+this.b}, +$ikb:1, +gdm(a){return this.a}, +gk(a){return this.b}} +A.a4r.prototype={ +q(a,b){var s=b.a +if(s!==B.bG)this.a.n(0,s,b) +else this.b.push(b)}, +p(a,b){var s +b.gdm(b) +s=this.a.N(0,b.gdm(b)) +return s}, +eX(){var s,r,q,p,o=this,n=new A.ju(new A.df(new Uint8Array(0),0)),m=o.a +if(m.a===0&&o.b.length===0)return o.c.fJ(0) +for(m=m.gaJ(0),s=A.y(m),m=new A.bD(J.ay(m.a),m.b,s.i("bD<1,2>")),s=s.y[1];m.u();){r=m.a;(r==null?s.a(r):r).fd(n)}for(m=o.b,s=m.length,q=0;q0;){q=A.bLe(a) +if(q.gdm(q)!==B.bG)r.n(0,q.gdm(q),q) +else p.push(s.a(q)) +o-=q.np()}}, +cJ(a){var s=this.a.gaJ(0) +s=A.a8(s,!0,A.y(s).i("B.E")) +B.b.G(s,this.b) +return s}, +ga_(a){return this.a.a===0&&this.b.length===0}, +j(a){var s,r,q,p,o=this.a +if(o.a===0)o=""+"No properties set" +else{for(o=o.gaJ(0),s=A.y(o),o=new A.bD(J.ay(o.a),o.b,s.i("bD<1,2>")),s=s.y[1],r="";o.u();){q=o.a +r+=(q==null?s.a(q):q).j(0)+"\n"}for(o=this.b,s=o.length,p=0;p>>8&255) +a.eW(this.b&255)}, +np(){return 3}, +j(a){$.h9() +return"Identifier : "+B.b.gY(J.p(this.a).split("."))+", value : "+this.b}, +$ikb:1, +gdm(a){return this.a}, +gk(a){return this.b}} +A.Cp.prototype={} +A.a4I.prototype={ +fd(a){var s +a.eW($.h9().iY(this.a)) +s=this.b +s.toString +a.eC(0,this.c.mu(s))}, +np(){var s=this.b +s.toString +return this.c.mu(s).b+1}, +j(a){$.h9() +return"Identifier : "+B.b.gY(J.p(this.a).split("."))+", value : "+A.c(this.b)}, +$ikb:1, +gdm(a){return this.a}, +gk(a){return this.b}} +A.a4J.prototype={ +fd(a){a.eW($.h9().iY(this.a)) +a.eC(0,this.c.fJ(this.b))}, +hX(a){var s,r,q +this.a=$.h9().fJ(a.hd()) +s=new A.df(new Uint8Array(0),0) +for(r=!1;!r;){q=a.hd() +s.lm(0,q) +if(q<128)r=!0}this.b=this.c.zq(0,s)}, +np(){return this.c.fJ(this.b).b+1}, +j(a){$.h9() +return"Identifier : "+B.b.gY(J.p(this.a).split("."))+", value : "+this.b}, +$ikb:1, +gdm(a){return this.a}, +gk(a){return this.b}} +A.xL.prototype={ +fd(a){var s,r=this,q=r.b,p=q.f.mu(q.c).b,o=q.a.e +if(o===B.cG||o===B.hP)p+=2 +q=q.e.eX().b +o=r.c +o===$&&A.b() +s=o.d.b +r.a.mx(p+q+s,a) +q=r.b +A.bmX(a,q.c) +o=q.a.e +if(o===B.cG||o===B.hP)a.td(q.d) +a.eC(0,q.e.eX()) +a.eC(0,r.c.d)}, +j(a){var s=this.jL(0),r=J.p(this.b),q=this.c +q===$&&A.b() +q=""+s+(r+"\n")+(q.j(0)+"\n") +return q.charCodeAt(0)==0?q:q}} +A.a4v.prototype={ +j(a){var s=this.d +return"Payload: {"+s.b+" bytes={"+A.bLk(s)}, +gt(a){return this.a}} +A.a4y.prototype={ +gt(a){return this.b}, +sO2(a){var s,r,q,p,o,n +if(a!=null){for(s=a.length,r=this.e,q=r.a,p=0;p0){A.aC("Mqtt5Client::connect - keep alive is enabled with a value of "+o+" seconds",!1) +o=p.r +n=p.go +m=p.z +l=new A.a4h() +l.e=o +l.w=n +l.a=m*1000 +n=o.ch +n.n(0,B.mS,l.gaZi()) +n.n(0,B.mT,l.gaZl()) +o.CW.push(l.gaXg()) +l.c=A.bZ(A.dA(0,l.a,0),l.gafK()) +A.aC("MqttConnectionKeepAlive:: Initialised with a keep alive value of "+m+" seconds",!1) +A.aC("MqttConnectionKeepAlive:: Disconnect on no ping response is disabled",!1) +p.y=l +o=p.fy +if(o!=null)l.r=o}else A.aC("Mqtt5Client::connect - keep alive is disabled",!1) +j=p.ay +if(j==null){o=A.bum() +n=o.c +n===$&&A.b() +n.c=p.c +n=o.b +n.d.c=B.b9 +n.e=0 +j=o.aaP(a,b) +j.b.d.a=!0 +p.ay=j}o=j.c +o===$&&A.b() +if(o.c.length===0)o.c=p.c +p.ay=j +q=p.r.CA(p.a,p.b,j) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$ls,r)}, +aZE(a,b,c,d){var s,r,q,p,o,n,m,l,k=null,j=!1,i=this.r,h=i==null +if(h)q=k +else q=i.cy.a +if(q!==B.c7){if(h)i=k +else i=i.cy.a +throw A.d(A.buo(i))}try{s=A.bmZ(a) +i=this.as +i.toString +h=s.a +A.aC("MqttPublishingManager::publish - entered with topic "+h,!1) +p=i.a.gE8() +o=new A.xL() +q=new A.jv(new A.hH(),B.b9) +q.c=B.mV +o.a=q +n=o.b=new A.a4y(q,A.hG(),new A.kV(),A.a([],t.o),A.a([],t.Z)) +m=new A.a4v(k,k) +m.d=new A.df(new Uint8Array(0),0) +o.c=m +n.c=h +n.d=p +q.e=b +n.sO2(d) +m.d.G(0,c) +if(j)q.f=!0 +if(b===B.cG||b===B.hP)i.b.n(0,p,o) +i.e.kr(o) +return p}catch(l){i=A.v(l) +if(t.J.b(i)){r=i +i=new A.a4o() +i.a="mqtt-client::InvalidTopicException: Topic "+a+" is "+J.p(r) +throw A.d(i)}else throw l}}, +afX(a,b,c){return this.aZE(a,b,c,null)}, +aS3(a){var s +A.aC("Mqtt5Client::_disconnectOnNoPingResponse - disconnecting, no ping request response for 0 seconds",!1) +s=this.r +if(s!=null){s=s.ax +s===$&&A.b() +s.jq(0)}this.aet()}, +aet(){var s=this,r=s.r +if(r==null){A.aC("MqttClient::internalDisconnect - not invoking disconnect, no connection handler",!1) +return}if(s.e&&r.cx)if(!r.f)s.go.a.q(0,new A.xI()) +else A.aC("MqttClient::internalDisconnect - not invoking auto connect, already in progress",!1) +else if(r.cx)s.H3(!0)}, +a2C(a,b){var s,r,q,p=this +if(!b)if(!a){s=p.r +if(s!=null)s.acD(0,p.ch) +r=B.ahQ}else r=B.ahR +else r=B.ahP +s=p.as +if(s!=null)s.f.L(0) +p.as=null +s=p.at +if(s!=null)s.b.L(0) +p.x=p.at=null +s=p.y +if(s!=null)s.c.S(0) +p.y=null +s=p.ax +q=p.gnQ().b +s.b=q +q=p.gnQ().c +s.c=q +p.r=null +q=p.go +if(q!=null)q.a.L(0) +p.go=null +s.a=B.qI +s.d=r +s=p.CW +if(s!=null)s.$0()}, +H3(a){return this.a2C(!1,a)}, +aHW(a){t.F3.a(a) +$.ap6() +A.aC("MqttClient::_processReceivedDisconnectMessage - Disconnect Message received, reason is '"+B.b.gY(J.p(a.b.c).split("."))+"' - disconnecting",!1) +this.a2C(!0,!1) +return!0}} +A.xJ.prototype={ +j(a){var s=this.a.D().split(".")[1] +$.zV() +return"Connection status is "+s+" with return code of "+B.b.gY(J.p(this.b).split("."))+" and a disconnection origin of "+this.d.D().split(".")[1]}} +A.Ci.prototype={} +A.Ce.prototype={} +A.u4.prototype={} +A.xI.prototype={} +A.Cn.prototype={} +A.AY.prototype={} +A.avZ.prototype={} +A.aJd.prototype={ +gE8(){var s=++this.a +return s===32768?this.a=1:s}} +A.a4s.prototype={} +A.a4z.prototype={ +aUk(a){var s,r,q +t.QX.a(a) +A.aC("MqttPublishingManager::handlePublishAcknowledgement - entered",!1) +s=a.b.b +r=this.b +if(r.N(0,s)){q=r.h(0,s) +q.toString +this.a5Y(q) +r.C(0,a.b.b)}return!0}, +aUi(a){var s,r,q,p,o,n,m,l,k,j=this +t.RN.a(a) +s=a +A.aC("MqttPublishingManager::handlePublish - entered",!1) +r=!0 +try{q=A.bmZ(s.b.c) +if(s.a.e===B.b9)j.w.a.q(0,new A.u4(a,q)) +else if(s.a.e===B.cG){j.w.a.q(0,new A.u4(a,q)) +n=new A.Cj() +m=new A.jv(new A.hH(),B.b9) +m.c=B.mW +n.a=m +m=n.b=new A.a4t(m,B.d6,A.hG(),A.a([],t.o)) +m.b=s.b.d +m.c=B.cl +p=n +j.e.kr(p)}else if(s.a.e===B.hP){m=j.c +if(!m.N(0,s.b.d))m.n(0,s.b.d,s) +l=new A.Cl() +m=new A.jv(new A.hH(),B.b9) +m.c=B.mX +l.a=m +m=l.b=new A.a4w(m,B.d6,A.hG(),A.a([],t.o)) +m.b=s.b.d +m.c=B.cl +o=l +j.e.kr(o)}}catch(k){if(t.J.b(A.v(k)))r=!1 +else throw k}return r}, +aUq(a){var s,r,q,p,o,n,m,l,k,j=this +A.aC("MqttPublishingManager::handlePublishRelease - entered",!1) +s=t.ER.a(a) +r=!0 +try{n=s.b +n===$&&A.b() +q=j.c.C(0,n.b) +p=null +if(q!=null){o=A.bmZ(q.b.c) +j.w.a.q(0,new A.u4(q,o)) +m=A.bur() +n=q.b.d +l=m.b +l===$&&A.b() +l.b=n +l.c=B.cl +p=m}else{m=A.bur() +n=j.a.gE8() +l=m.b +l===$&&A.b() +l.b=n +l.c=B.r7 +p=m}j.e.kr(p)}catch(k){if(t.J.b(A.v(k)))r=!1 +else throw k}return r}, +aUm(a){var s +A.aC("MqttPublishingManager::handlePublishComplete - entered",!1) +s=t.Ty.a(a).b +s===$&&A.b() +s=this.b.C(0,s.b) +s.toString +this.a5Y(s) +return!0}, +aUo(a){var s,r,q +A.aC("MqttPublishingManager::handlePublishReceived - entered",!1) +t.mt.a(a) +s=a.b +s===$&&A.b() +if(this.b.N(0,s.b)){r=A.bus() +s=a.b.b +q=r.b +q===$&&A.b() +q.b=s +q.c=B.cl}else{r=A.bus() +s=this.a.gE8() +q=r.b +q===$&&A.b() +q.b=s +q.c=B.r7}this.e.kr(r) +return!0}, +a5Y(a){var s +A.aC("MqttPublishingManager::_notifyPublish - entered message "+a.a.e.D(),!1) +s=this.f +if(s.d!=null)s.q(0,a)}} +A.xM.prototype={ +D(){return"MqttQos."+this.b}} +A.qn.prototype={} +A.aJf.prototype={ +D(){return"MqttRetainHandling."+this.b}} +A.u5.prototype={ +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.u5&&this.b.l(0,b.b)}, +j(a){var s=this.c.a.D(),r=this.a +r===$&&A.b() +r=""+("Topic = "+this.b.a+"\n")+("Maximum Qos = "+s+"\n")+("Created Time = "+r.j(0)+"\n") +return r.charCodeAt(0)==0?r:r}, +gB(a){return A.O.prototype.gB.call(this,0)*8}} +A.a4E.prototype={ +aMf(a){var s,r,q,p,o=this.b.h(0,a) +if(o==null)for(s=this.c.gaJ(0),r=A.y(s),s=new A.bD(J.ay(s.a),s.b,r.i("bD<1,2>")),r=r.y[1];s.u();){q=s.a +for(q=J.ay(q==null?r.a(q):q);q.u();){p=q.gI(q) +if(p.b.a===a)return p}}return o}, +a2d(a,b,c,d){var s,r,q,p,o,n,m,l,k,j +try{s=A.a4F(a) +n=new A.u5(s,B.r8,A.a([],t.o)) +m=new A.Co(B.b9) +n.c=m +m.a=b +n.a=new A.aS(Date.now(),0,!1) +r=n +if(d!=null)r.e=d +m=c==null +if(!m)r.c=c +q=this.a.gE8() +this.c.n(0,q,A.a([r],t.B5)) +p=null +if(m){l=new A.Lp() +l.a0a() +k=A.a4F(r.b.a) +c=new A.Co(B.b9) +c.a=b +l.c.c.push(A.but(k,c)) +l.b.sO2(d) +p=l}else{l=new A.Lp() +l.a0a() +k=A.a4F(r.b.a) +l.c.c.push(A.but(k,c)) +l.b.sO2(d) +p=l}p.b.a=q +this.e.kr(p) +return r}catch(j){m=A.v(j) +if(t.J.b(m)){o=m +A.aC("MqttSubscriptionManager::_createNewSubscription exception raised, text is "+A.c(o),!1) +return null}else throw j}}, +av6(a,b){return this.a2d(a,b,null,null)}, +aZI(a){var s=a.b +A.aC("MqttSubscriptionManager::publishMessageReceived topic is "+s.j(0),!1) +this.z.q(0,A.a([new A.qn(s.a,a.a,t.e_)],t.bM))}, +NV(a){var s,r,q,p,o=t.o,n=new A.u5(A.a4F(a),B.r8,A.a([],o)) +n.c=new A.Co(B.b9) +n.a=new A.aS(Date.now(),0,!1) +s=this.a.gE8() +o=new A.aJO(A.hG(),A.a([],o)) +r=A.a([],t.c0) +q=new A.a4H(o,new A.aJN(r)) +p=new A.jv(new A.hH(),B.b9) +p.c=B.qK +q.a=p +p.e=B.cG +o.a=s +r.push(A.a4F(a)) +this.e.kr(q) +this.d.n(0,o.a,A.a([n],t.B5))}, +aPP(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=this +t.dB.a(a) +s=a.c.d +r=a.b.c +q=g.c +if(q.N(0,r)){for(p=q.h(0,r),o=p.length,n=g.b,m=!0,l=0,k=0;k")),q=q.y[1];r.u();){p=r.a +if(p==null)p=q.a(p) +o=p.b +n=p.c +this.a2d(o.a,n.a,n,p.e)}s.V(0)}} +A.Lq.prototype={} +A.aJJ.prototype={ +$1(a){return(B.c.p(a,"#")||B.c.p(a,"+"))&&a.length>1}, +$S:21} +A.u6.prototype={ +a0b(a,b){var s,r +this.b=A.a(this.a.split("/"[0]),t.s) +for(s=b.length,r=0;r>>0)+this.hd()}, +l_(a,b){var s,r,q,p=this,o=p.b,n=o.b +if(nn)throw A.d(A.ae("MqttByteBuffer::read: The buffer did not have enough bytes for the read operation length "+p.gt(0)+", count "+b+", position "+p.a+", buffer "+A.c(p.b))) +s=new A.df(new Uint8Array(0),0) +n=p.a +r=n+b +A.dL(n,r,o.gt(0),null,null) +s.G(0,A.fc(o,n,r,A.y(o).i("S.E"))) +p.a+=b +q=new A.df(new Uint8Array(0),0) +q.G(0,s) +return q}, +eW(a){var s=this.b,r=s.b,q=this.a +if(r===q){a.toString +s.lm(0,a)}else{a.toString +s.n(0,q,a)}++this.a}, +td(a){this.eW(B.e.cA(a,8)) +this.eW(a&255)}, +eC(a,b){var s=this,r=s.b +if(r==null)s.b=b +else{b.toString +r.G(0,b)}s.a=s.b.b}, +Zo(a,b){var s=this.b.b +if(b<=s)this.a=b +else this.a=s}, +j(a){var s=this.b +if(s==null||s.gt(0)===0)return"null or empty" +else{s=this.b +return A.jr(s.cJ(s),"[","]")}}} +A.a4j.prototype={ +fJ(a){var s=this.a +if(s.N(0,a))return s.h(0,a) +return null}, +iY(a){var s=this.a +if(s.hO(0,a))return J.bEF(s.gd1(s),new A.aJa(this,a)) +return null}} +A.aJa.prototype={ +$1(a){return this.a.a.h(0,a)==this.b}, +$S:86} +A.aJe.prototype={ +gt(a){return this.a.b}} +A.Lh.prototype={ +ZO(){var s,r=this +if(!r.d){r.b=new A.aq(new A.a_($.ab,t.U),t.h) +r.c=A.bZ(A.dA(0,r.a,0),r.gaLT()) +r.d=!0}s=r.b +s===$&&A.b() +return s.a}, +aLU(){this.d=!1 +var s=this.b +s===$&&A.b() +s.d8(0)}} +A.a4A.prototype={ +qO(){var s,r,q,p=this +A.aC("MqttServerConnection::_startListening",!1) +try{p.a.eQ(p.gaF8(),p.gz7(),p.gpU(p))}catch(r){q=A.v(r) +if(t.J.b(q)){s=q +A.dJ("MqttServerConnection::_startListening - exception raised "+A.c(s))}else throw r}}, +aF9(a){var s,r,q,p,o,n,m,l,k,j,i,h,g=null,f=", message stream position is " +A.aC("MqttServerConnection::_onData - Message Received Started <<< ",!1) +n=J.a0(a) +if(n.ga_(a)){A.aC("MqttServerConnection::_ondata - Error - 0 byte message",!1) +return}m=this.c +A.aC("MqttServerConnection::_ondata - adding incoming data, data length is "+A.c(n.gt(a))+", message stream length is "+m.b.b+f+m.a,!1) +m.b.G(0,a) +A.aC("MqttServerConnection::_ondata - added incoming data message stream length is "+m.b.b+f+m.a,!1) +try{for(n=this.e,l=n!=null;m.aWa();){s=!0 +r=null +try{r=A.bLd(m) +if(r==null)return}catch(k){j=A.v(k) +if(j instanceof A.Ch){A.aC("MqttServerConnection::_ondata - message is not yet valid, waiting for more data ...",!1) +s=!1}else{q=j +A.aC("MqttServerConnection::_ondata - exception raised is "+A.c(q),!1) +throw k}}if(!s){n=m.b +l=m.a +A.dL(0,l,n.gt(0),g,g) +if(l>0)n.GO(n,0,l) +m.a=0 +return}if(s){A.aC("MqttServerConnection::_onData - MESSAGE RECEIVED -> ",r) +j=m.b +i=m.a +A.dL(0,i,j.gt(0),g,g) +if(i>0)j.GO(j,0,i) +m.a=0 +if(l){j=n.a +if((j.c&4)===0){if(r.a.c===B.qN){i=r +if(!j.gnz())A.V(j.ns()) +j.jk(new A.Ce(i))}else{i=r +if(!j.gnz())A.V(j.ns()) +j.jk(new A.Ci(i))}A.aC("MqttServerConnection::_onData - message available event fired",!1)}else A.aC("MqttServerConnection::_onData - message not processed, event bus is closed",!1)}else A.aC("MqttServerConnection::_onData - message not processed, event bus is null",!1)}}}catch(k){p=A.v(k) +A.aC("MqttServerConnection::_ondata - irrecoverable exception raised - sending disconnect "+A.c(p),!1) +h=new A.xK() +h.a09() +h.b.c=B.hO +o=h +m.a=0 +o.fd(m) +m.Zo(0,0) +this.fm(0,m)}A.aC("MqttServerConnection::_onData - Message Received Ended <<< ",!1)}, +fm(a,b){var s=b.l_(0,b.b.b),r=this.a +if(r!=null)J.dN(r,s.cJ(s))}, +GH(a,b){return!1}, +HW(a){if(a.gia(a).p(0,"Connection timed out"))return!0 +return!1}} +A.aJg.prototype={} +A.aJh.prototype={ +ls(a,b){var s,r,q,p,o=new A.aq(new A.a_($.ab,t.vC),t.SE) +A.aC("MqttNormalConnection::connect- entered",!1) +try{A.bvZ(a,b,this.r).ak(new A.aJk(this,o),t.P).dc(new A.aJl(this,a,b,o))}catch(q){p=A.v(q) +if(t.J.b(p)){s=p +o.dF(s) +r="MqttNormalConnection::The connection to the message broker {"+a+"}:{"+b+"} could not be made." +throw A.d(A.dF(r))}else throw q}return o.a}, +K9(a,b){var s,r,q,p,o=new A.aq(new A.a_($.ab,t.vC),t.SE) +A.aC("MqttNormalConnection::connectAuto - entered",!1) +try{A.bvZ(a,b,null).ak(new A.aJi(this,o),t.P).dc(new A.aJj(this,a,b,o))}catch(q){p=A.v(q) +if(t.J.b(p)){s=p +o.dF(s) +r="MqttNormalConnection::ConnectAuto - The connection to the message broker {"+a+"}:{"+b+"} could not be made." +throw A.d(A.dF(r))}else throw q}return o.a}} +A.aJk.prototype={ +$1(a){var s=this.a,r=s.GH(a,s.f) +if(r)A.aC("MqttNormalConnection::connect - socket options applied",!1) +s.a=a +s.qO() +this.b.d8(0)}, +$S:2} +A.aJl.prototype={ +$1(a){var s,r=this,q=r.a,p=r.d +if(q.HW(a)){s=u.dH+r.b+"}:{"+r.c+u.O +A.aC(s,!1) +p.d8(0)}else{q.j5(0,a) +p.dF(a)}}, +$S:2} +A.aJi.prototype={ +$1(a){var s=this.a,r=s.GH(a,s.f) +if(r)A.aC("MqttNormalConnection::connectAuto - socket options applied",!1) +s.a=a +s.qO() +this.b.d8(0)}, +$S:2} +A.aJj.prototype={ +$1(a){var s,r=this,q=r.a,p=r.d +if(q.HW(a)){s=u.dq+r.b+"}:{"+r.c+u.O +A.aC(s,!1) +p.d8(0)}else{q.j5(0,a) +p.dF(a)}}, +$S:2} +A.aJm.prototype={ +ls(a,b){var s,r,q,p,o,n,m,l,k=this,j=new A.aq(new A.a_($.ab,t.vC),t.SE) +A.aC("MqttServerSecureConnection::connect - entered",!1) +try{A.aQB(a,b,k.as,k.at,k.r).ak(new A.aJp(k,j),t.P).dc(new A.aJq(k,a,b,j))}catch(m){l=A.v(m) +if(l instanceof A.no){s=l +r="MqttServerSecureConnection::The connection to the message broker {"+a+"}:{"+b+"} could not be made. Error is "+J.p(s) +j.dF(s) +throw A.d(A.dF(r))}else if(l instanceof A.q3){q=l +p="MqttServerSecureConnection::Handshake exception to the message broker {"+a+"}:{"+b+"}. Error is "+J.p(q) +j.dF(q) +throw A.d(A.dF(p))}else if(l instanceof A.nv){o=l +n="MqttServerSecureConnection::TLS exception raised on secure connection. Error is "+J.p(o) +throw A.d(A.dF(n))}else throw m}return j.a}, +K9(a,b){var s,r,q,p,o,n,m,l,k=this,j=new A.aq(new A.a_($.ab,t.vC),t.SE) +A.aC("MqttServerSecureConnection::connectAuto - entered",!1) +try{A.aQB(a,b,k.as,k.at,null).ak(new A.aJn(k,j),t.P).dc(new A.aJo(k,a,b,j))}catch(m){l=A.v(m) +if(l instanceof A.no){s=l +r="MqttServerSecureConnection::connectAuto - The connection to the message broker {"+a+"}:{"+b+"} could not be made. Error is "+J.p(s) +j.dF(s) +throw A.d(A.dF(r))}else if(l instanceof A.q3){q=l +p="MqttServerSecureConnection::connectAuto - Handshake exception to the message broker {"+a+"}:{"+b+"}. Error is "+J.p(q) +j.dF(q) +throw A.d(A.dF(p))}else if(l instanceof A.nv){o=l +n="MqttServerSecureConnection::connectAuto - TLS exception raised on secure connection. Error is "+J.p(o) +throw A.d(A.dF(n))}else throw m}return j.a}, +sXk(a){return this.at=a}} +A.aJp.prototype={ +$1(a){var s,r +A.aC("MqttServerSecureConnection::connect - securing socket",!1) +r=this.a +s=r.GH(a,r.f) +if(s)A.aC("MqttServerSecureConnection::connect - socket options applied",!1) +r.a=a +A.aC("MqttServerSecureConnection::connect - start listening",!1) +r.qO() +this.b.d8(0)}, +$S:316} +A.aJq.prototype={ +$1(a){var s,r=this,q=r.a,p=r.d +if(q.HW(a)){s=u.dH+r.b+"}:{"+r.c+u.O +A.aC(s,!1) +p.d8(0)}else{q.j5(0,a) +p.dF(a)}}, +$S:2} +A.aJn.prototype={ +$1(a){var s,r +A.aC("MqttServerSecureConnection::connectAuto - securing socket",!1) +r=this.a +s=r.GH(a,r.f) +if(s)A.aC("MqttServerSecureConnection::connectAuto - socket options applied",!1) +r.a=a +A.aC("MqttServerSecureConnection::connectAuto - start listening",!1) +r.qO() +this.b.d8(0)}, +$S:316} +A.aJo.prototype={ +$1(a){var s,r=this,q=r.a,p=r.d +if(q.HW(a)){s=u.dq+r.b+"}:{"+r.c+u.O +A.aC(s,!1) +p.d8(0)}else{q.j5(0,a) +p.dF(a)}}, +$S:2} +A.QG.prototype={ +aK(a,b,c,d){var s=this.a +s.jA(a) +s.j5(0,d) +s.Xn(c) +return s}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}, +q(a,b){return this.b.q(0,b)}, +cX(a,b){return this.b.cX(a,b)}, +nI(a,b){return this.b.nI(0,b)}, +ex(){return this.b.ex()}, +L(a){return this.b.L(0)}, +$ice:1, +$if_:1} +A.bn0.prototype={ +ls(a,b){var s,r,q,p,o,n,m,l,k,j,i=this,h={},g=new A.aq(new A.a_($.ab,t.vC),t.SE) +A.aC("MqttServerWs2Connection::connect - entered",!1) +h.a=null +try{l=h.a=A.f1(a)}catch(k){if(t.J.b(A.v(k))){s="MqttWsConnection::The URI supplied for the WS2 connection is not valid - "+a +throw A.d(A.dF(s))}else throw k}if(l.gev()!=="wss")throw A.d(A.dF("MqttWsConnection::The URI supplied for the WS2 has an incorrect scheme - "+a)) +j=h.a=l.Nn(0,b) +A.aC("MqttServerWs2Connection:: WS URL is "+j.j(0)+", protocols are "+A.c(i.at),!1) +try{A.aQB(j.gfz(0),j.gkf(0),i.ax,i.as,null).ak(new A.aJy(h,i,g),t.P)}catch(k){h=A.v(k) +if(h instanceof A.no){r=h +q="MqttServerWs2Connection::The connection to the message broker {"+a+"}:{"+b+"} could not be made. Error is "+J.p(r) +g.dF(r) +throw A.d(A.dF(q))}else if(h instanceof A.q3){p=h +o="MqttServerWs2Connection::Handshake exception to the message broker {"+a+"}:{"+b+"}. Error is "+J.p(p) +g.dF(p) +throw A.d(A.dF(o))}else if(h instanceof A.nv){n=h +m="MqttServerWs2Connection::TLS exception raised on secure connection. Error is "+J.p(n) +throw A.d(A.dF(m))}else throw k}return g.a}, +K9(a,b){var s,r,q,p,o,n,m,l,k,j,i={},h=new A.aq(new A.a_($.ab,t.vC),t.SE) +A.aC("MqttServerWs2Connection::connectAuto - entered",!1) +i.a=null +try{l=i.a=A.f1(a)}catch(k){if(t.J.b(A.v(k))){s="MqttWsConnection::connectAuto - The URI supplied for the WS2 connection is not valid - "+a +throw A.d(A.dF(s))}else throw k}if(l.gev()!=="wss")throw A.d(A.dF("MqttWsConnection::connectAuto - The URI supplied for the WS2 has an incorrect scheme - "+a)) +j=i.a=l.Nn(0,b) +A.aC("MqttServerWs2Connection::connectAuto - WS URL is "+j.j(0)+", protocols are "+A.c(this.at),!1) +try{A.aQB(j.gfz(0),j.gkf(0),this.ax,null,null).ak(new A.aJv(i,this,h),t.P)}catch(k){i=A.v(k) +if(i instanceof A.no){r=i +q="MqttServerWs2Connection::connectAuto - The connection to the message broker {"+a+"}:{"+b+"} could not be made. Error is "+J.p(r) +h.dF(r) +throw A.d(A.dF(q))}else if(i instanceof A.q3){p=i +o="MqttServerWs2Connection::connectAuto - Handshake exception to the message broker {"+a+"}:{"+b+"}. Error is "+J.p(p) +h.dF(p) +throw A.d(A.dF(o))}else if(i instanceof A.nv){n=i +m="MqttServerWs2Connection::connectAuto - TLS exception raised on secure connection. Error is "+J.p(n) +throw A.d(A.dF(m))}else throw k}return h.a}, +In(a,b){return this.aHy(a,b)}, +aHy(a,b){var s=0,r=A.n(t.y),q,p=this,o,n,m,l,k,j,i +var $async$In=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:$.Gg.b="" +o=new A.a_($.ab,t.tr) +n=b.ge8(b) +m=b.gni(b) +l=b.gfz(b) +k=B.e.j(b.gkf(b)) +j=B.ao.b4("mqtt-"+Date.now()) +i=B.ct.gk5().b4(j) +a.eC(0,"GET "+(n+"?"+m)+" HTTP/1.1 \r\n"+("Host: "+(l+":"+k)+"\r\n")+"Upgrade: websocket\r\nConnection: Upgrade\r\n"+("Sec-WebSocket-Key: "+i+"\r\n")+("Sec-WebSocket-Protocol: "+B.c.cw(B.b.bJ(p.at," "))+"\r\n")+"Sec-WebSocket-Version: 13\r\n\r\n") +p.ay=a.b20(new A.aJr(i,new A.aq(o,t.VY)),new A.aJs(p)) +q=o +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$In,r)}, +sXk(a){return this.as=a}, +safV(a){return this.at=a}} +A.aJy.prototype={ +$1(a){var s,r +A.aC("MqttServerWs2Connection::connect - securing socket",!1) +s=this.b +r=this.c +s.In(a,this.a.a).ak(new A.aJw(s,a,r),t.P).dc(new A.aJx(s,r))}, +$S:133} +A.aJw.prototype={ +$1(a){var s=this.a +s.a=A.bx3(new A.QG(s.ay,this.b),!1) +A.aC("MqttServerWs2Connection::connect - start listening",!1) +s.qO() +this.c.d8(0)}, +$S:26} +A.aJx.prototype={ +$1(a){this.a.j5(0,a) +this.b.dF(a)}, +$S:2} +A.aJv.prototype={ +$1(a){var s,r +A.aC("MqttServerWs2Connection::connectAuto - securing socket",!1) +s=this.b +r=this.c +s.In(a,this.a.a).ak(new A.aJt(s,a,r),t.P).dc(new A.aJu(s,r))}, +$S:133} +A.aJt.prototype={ +$1(a){var s=this.a +s.a=A.bx3(new A.QG(s.ay,this.b),!1) +A.aC("MqttServerWs2Connection::connectAuto - start listening",!1) +s.qO() +this.c.d8(0)}, +$S:26} +A.aJu.prototype={ +$1(a){this.a.j5(0,a) +this.b.dF(a)}, +$S:2} +A.aJr.prototype={ +$1(a){var s=A.ia(a,0,null) +if(!A.bTQ(A.dm(s,"\r",""),this.a))this.b.bv(0,!0)}, +$S:179} +A.aJs.prototype={ +$0(){this.a.ay.S(0) +throw A.d(A.dF("MqttServerWs2Connection::TLS connection unexpectedly closed"))}, +$S:0} +A.a4B.prototype={ +ls(a,b){var s,r,q,p,o,n,m,l,k=this,j=new A.aq(new A.a_($.ab,t.vC),t.SE) +A.aC("MqttWsConnection::connectAuto - entered",!1) +s=null +try{s=A.f1(a)}catch(n){if(t.J.b(A.v(n))){r="MqttWsConnection::The URI supplied for the WS connection is not valid - "+a +throw A.d(A.dF(r))}else throw n}if(s.gev()!=="ws"&&s.gev()!=="wss")throw A.d(A.dF("MqttWsConnection::The URI supplied for the WS has an incorrect scheme - "+a)) +s=J.bqR(s,b) +q=s.guf() +A.aC("MqttWsConnection:: WS URL is "+A.c(q)+", protocols are "+A.c(k.at),!1) +p=null +if(k.as!=null){m=A.bts() +m.Q=new A.aJB(k) +p=m}try{l=k.at +l=l.length!==0?l:null +A.bx4(q,p,l).ak(new A.aJC(k,j),t.P).dc(new A.aJD(k,j))}catch(n){if(t.J.b(A.v(n))){o="MqttWsConnection::The connection to the message broker {"+A.c(q)+"} could not be made." +throw A.d(A.dF(o))}else throw n}return j.a}, +K9(a,b){var s,r,q,p,o,n,m=this,l=new A.aq(new A.a_($.ab,t.vC),t.SE) +A.aC("MqttWsConnection::connectAuto - entered",!1) +s=null +try{s=A.f1(a)}catch(o){if(t.J.b(A.v(o))){r="MqttWsConnection::connectAuto - The URI supplied for the WS connection is not valid - "+a +throw A.d(A.dF(r))}else throw o}if(s.gev()!=="ws"&&s.gev()!=="wss")throw A.d(A.dF("MqttWsConnection::connectAuto - The URI supplied for the WS has an incorrect scheme - "+a)) +s=J.bqR(s,b) +q=s.guf() +A.aC("MqttWsConnection::connectAuto - WS URL is "+A.c(q)+", protocols are "+A.c(m.at),!1) +try{n=m.at +n=n.length!==0?n:null +A.bx4(q,null,n).ak(new A.aJz(m,l),t.P).dc(new A.aJA(m,l))}catch(o){if(t.J.b(A.v(o))){p="MqttWsConnection::connectAuto - The connection to the message broker {"+A.c(q)+"} could not be made." +throw A.d(A.dF(p))}else throw o}return l.a}, +KI(a,b){if(b)this.a5M() +else this.pT()}, +jq(a){return this.KI(0,!1)}, +pT(){this.a5M() +if(this.d!=null){A.aC("MqttWsConnection::_onDone - calling disconnected callback",!1) +this.d.$0()}}, +a5M(){var s=this.a +if(s!=null){J.A0(s) +this.a=null}}, +sXk(a){return this.as=a}, +safV(a){return this.at=a}} +A.aJB.prototype={ +$3(a,b,c){return this.a.as.$1(a)}, +$S:827} +A.aJC.prototype={ +$1(a){var s=this.a +s.a=a +s.qO() +this.b.d8(0)}, +$S:2} +A.aJD.prototype={ +$1(a){this.a.j5(0,a) +this.b.dF(a)}, +$S:2} +A.aJz.prototype={ +$1(a){var s=this.a +s.a=a +s.qO() +this.b.d8(0)}, +$S:2} +A.aJA.prototype={ +$1(a){this.a.j5(0,a) +this.b.dF(a)}, +$S:2} +A.aJK.prototype={ +vf(a,b,c){return this.aVO(a,b,c)}, +aVO(a,b,c){var s=0,r=A.n(t.Ki),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$vf=A.j(function(a0,a1){if(a0===1){o=a1 +s=p}while(true)switch(s){case 0:A.aC("MqttSynchronousServerConnectionHandler::internalConnect entered",!1) +c.toString +n.ay=!1 +m=t.J +l=n.fy +k=n.dx +j=n.z +i=0 +case 3:A.aC("MqttSynchronousServerConnectionHandler::internalConnect - initiating connection try "+i+", auto reconnect in progress "+n.f,!1) +n.cy.a=B.Je +if(!n.f){if(n.db){A.aC("MqttSynchronousServerConnectionHandler::internalConnect - websocket selected",!1) +h=n.as +n.ax=new A.a4B(B.abi,l,k,new A.Ln(),new A.ju(new A.df(new Uint8Array(0),0)),h) +h=n.at +if(h!=null){g=n.ax +g===$&&A.b() +g.safV(h)}h=n.ax +h===$&&A.b() +h.sXk(n.y)}else if(n.fr){A.aC("MqttSynchronousServerConnectionHandler::internalConnect - secure selected",!1) +h=n.fx +g=n.as +f=n.y +n.ax=new A.aJm(h,f,l,k,new A.Ln(),new A.ju(new A.df(new Uint8Array(0),0)),g)}else{A.aC("MqttSynchronousServerConnectionHandler::internalConnect - insecure TCP selected",!1) +h=n.as +n.ax=new A.aJh(l,k,new A.Ln(),new A.ju(new A.df(new Uint8Array(0),0)),h)}h=n.ax +h===$&&A.b() +h.d=n.b}p=7 +s=!n.f?10:12 +break +case 10:A.aC("MqttSynchronousServerConnectionHandler::internalConnect - calling connect",!1) +h=n.ax +h===$&&A.b() +h=h.ls(a,b) +s=13 +return A.f(h,$async$vf) +case 13:s=11 +break +case 12:A.aC("MqttSynchronousServerConnectionHandler::internalConnect - calling connectAuto",!1) +h=n.ax +h===$&&A.b() +h=h.K9(a,b) +s=14 +return A.f(h,$async$vf) +case 14:case 11:p=2 +s=9 +break +case 7:p=6 +d=o +if(m.b(A.v(d)))if(n.f)A.aC("MqttSynchronousServerConnectionHandler::internalConnect exception thrown during auto reconnect - ignoring",!1) +else throw d +else throw d +s=9 +break +case 6:s=2 +break +case 9:A.aC("MqttSynchronousServerConnectionHandler::internalConnect - connection complete",!1) +A.aC("MqttSynchronousServerConnectionHandler::internalConnect sending connect message",!1) +n.kr(c) +A.aC("MqttSynchronousServerConnectionHandler::internalConnect - pre sleep, state = "+n.cy.j(0),!1) +h=n.Q +h===$&&A.b() +s=15 +return A.f(h.ZO(),$async$vf) +case 15:++i +s=n.ay?16:17 +break +case 16:case 18:A.aC("MqttSynchronousServerConnectionHandler::internalConnect - awaiting end of authentication sequence",!1) +h=new A.Lh(1000) +n.Q=h +s=21 +return A.f(h.ZO(),$async$vf) +case 21:case 19:if(n.cy.a!==B.c7){s=18 +break}case 20:case 17:A.aC("MqttSynchronousServerConnectionHandler::internalConnect - post sleep, state = "+n.cy.j(0),!1) +if(n.cy.a!==B.c7)if(!n.f)A.aC("MqttSynchronousMqttServerConnectionHandler::internalConnect failed, attempt "+i,!1) +h=n.cy.a!==B.c7 +case 4:if(h&&i"),n=new A.e5(n,s),n=new A.ci(n,n.gt(0),s.i("ci")),s=s.i("aN.E"),r=null;n.u();m=r){q=n.d +r=new A.vw(q==null?s.a(q):q,m,o,null)}if(r!=null)for(n=o.a2,n=A.dr(n,n.r,A.y(n).c),s=n.$ti.c;n.u();){q=n.d +if(q==null)q=s.a(q) +p=r.c +if(!J.e(q.by,p)){q.by=p +q.dL()}r=r.d +q.saVE(r) +if(!(r instanceof A.vw))break}return m}} +A.vw.prototype={ +cp(a){return new A.vx(this,B.aA)}, +F(a){return A.V(A.a1("handled internally"))}} +A.vx.prototype={ +gaL(){return t.Fn.a(A.bc.prototype.gaL.call(this))}, +saVE(a){var s,r=this.a2,q=!1 +if(a instanceof A.vw)if(r instanceof A.vw){q=a.c +s=r.c +q=A.K(q)===A.K(s)&&J.e(q.a,s.a)}if(q)return +if(!J.e(r,a)){this.a2=a +this.bZ(new A.bae())}}, +hs(a,b){var s=this,r=t.Fn +r.a(A.bc.prototype.gaL.call(s)).e.a2.q(0,s) +s.by=r.a(A.bc.prototype.gaL.call(s)).c +s.a2=r.a(A.bc.prototype.gaL.call(s)).d +s.Go(a,b)}, +ou(){t.Fn.a(A.bc.prototype.gaL.call(this)).e.a2.C(0,this) +this.Af()}, +cL(){var s=this.by +s.toString +return s}} +A.bae.prototype={ +$1(a){return a.dL()}, +$S:27} +A.a8g.prototype={} +A.bdF.prototype={ +$1(a){if(a instanceof A.vx)this.a.pC$=a +return!1}, +$S:37} +A.bh9.prototype={ +$1(a){if(a instanceof A.vx)this.a.pC$=a +return!1}, +$S:37} +A.m3.prototype={ +F(a){return this.xO(a,this.c)}, +cp(a){return A.bND(this)}, +$im4:1} +A.NT.prototype={ +cL(){var s=this +if(s.pC$!=null)return t.k7.a(A.bc.prototype.gaL.call(s)).xO(s,s.pC$.a2) +return s.aoa()}, +gaL(){return t.k7.a(A.bc.prototype.gaL.call(this))}} +A.a8e.prototype={ +xO(a,b){return this.e.$2(a,b)}} +A.akt.prototype={ +hs(a,b){if(t.Ej.b(a))this.pC$=a +this.Go(a,b)}, +c0(){this.Ae() +this.mw(new A.bdF(this))}} +A.ang.prototype={ +hs(a,b){if(t.Ej.b(a))this.pC$=a +this.Go(a,b)}, +c0(){this.Ae() +this.mw(new A.bh9(this))}} +A.Wh.prototype={ +D(){return"AnimationDirection."+this.b}} +A.tv.prototype={ +a0(){return new A.Rk(null,null)}} +A.Rk.prototype={ +F(a){var s=this.f +s===$&&A.b() +if(s)return B.ax +s=this.d +s===$&&A.b() +return new A.eB(s,!1,this.a.c,null)}, +aj(){var s,r,q,p,o=this,n=null +o.aw() +s=A.c2(n,o.a.d,n,n,o) +o.e=s +r=A.cl(o.a.f,s,n) +s=o.a.e===B.ir +q=s?0:1 +p=s?1:0 +s=t.Y +o.d=new A.bf(r,new A.b0(q,p,s),s.i("bf")) +o.e.cd(0) +o.f=!1 +s=o.a +if(s.e===B.kw){s=s.d +if(s.a===B.F.a)o.f=!0 +else o.d.a.fG(o.gUF())}}, +b1(a){var s,r,q,p,o,n=this +n.bb(a) +s=a.c +r=n.a.c +if(A.K(s)===A.K(r)&&J.e(s.a,r.a))return +s=n.d +s===$&&A.b() +r=n.gUF() +s.a.dX(r) +s=n.e +s===$&&A.b() +s.e=n.a.d +s.sk(0,0) +s=n.e +q=A.cl(n.a.f,s,null) +s=n.a.e===B.ir +p=s?0:1 +o=s?1:0 +s=t.Y +n.d=new A.bf(q,new A.b0(p,o,s),s.i("bf")) +n.e.cd(0) +n.f=!1 +s=n.a +if(s.e===B.kw){s=s.d +if(s.a===B.F.a)n.f=!0 +else n.d.a.fG(r)}}, +m(){var s=this,r=s.d +r===$&&A.b() +r.a.dX(s.gUF()) +r=s.e +r===$&&A.b() +r.m() +s.apX()}, +aOg(a){this.J(new A.b30(this,a))}} +A.b30.prototype={ +$0(){var s=this.a +s.f=s.a.e===B.kw&&this.b===B.am}, +$S:0} +A.UV.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.LM.prototype={ +a0(){return new A.ahF()}} +A.ahF.prototype={ +aj(){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d +this.aw() +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.btA(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.bb(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.gaaZ():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.btA(d,o,s.cx,s.cy,m,h,i,j,k,s.db,g,e,r,q,!1,p,l,n,c,f)}, +F(a){var s,r=this.a,q=r.as +r=r.at +s=this.e +s===$&&A.b() +return new A.aB(q,r,s.F(a),null)}} +A.Sy.prototype={ +D(){return"_PlaceholderType."+this.b}} +A.a14.prototype={ +aVh(){var s=this,r=s.z +r===$&&A.b() +switch(r.a){case 0:return s.gaDf() +case 1:return s.gaHA() +case 2:return s.gaHJ()}}, +F(a){var s,r,q=this,p=q.a,o=q.z +o===$&&A.b() +o=o===B.PZ?q.gaEv():null +s=q.aVh() +r=q.ax!=null?q.gax_():null +return A.aC7(q.e,q.w,q.x,r,q.y,q.d,s,!1,q.c,p,new A.eK(p,t.xs),o,!1,q.f,q.b)}, +a89(a,b){var s=this +return A.cq(B.O,A.a([new A.tv(a,s.cx,B.ir,s.cy,null),new A.tv(b,s.ch,B.kw,s.CW,null)],t.p),B.w,B.OU,null)}, +aDg(a,b,c,d){if(c==null)return b +return this.B7(a,b)}, +aHB(a,b,c,d){var s,r=this +if(c==null){s=r.ay +if(s.a!==B.F.a)return new A.tv(r.SQ(a),s,B.ir,r.cy,null) +else return r.SQ(a)}if(d&&!r.db)return r.B7(a,b) +return r.a89(r.B7(a,b),r.SQ(a))}, +aHK(a,b,c,d){this.dx=d +this.dy=c!=null +return b}, +aEw(a,b,c){var s,r=this +if(r.dy){if(r.dx)return r.B7(a,b) +return r.a89(r.B7(a,b),r.SX(a,null))}s=r.ay +if(s.a!==B.F.a)return new A.tv(r.SX(a,c),s,B.ir,r.cy,null) +else return r.SX(a,c)}, +B7(a,b){var s=this.Q +if(s!=null)return s.$2(a,b) +else return b}, +ax0(a,b,c){var s=this.ax +if(s==null)throw A.d(A.a1("Try to build errorBuilder with errorBuilder null")) +return s.$3(a,b,c)}, +SX(a,b){var s=this.at +if(s==null)throw A.d(A.a1("Try to build progressIndicatorBuilder with progressIndicatorBuilder null")) +return s.$2(a,b)}, +SQ(a){var s=null,r=this.as +if(r!=null)return r.$1(a) +return A.aa(s,s,B.h,s,s,s,s,s,s,s,s,s,s,s)}, +avt(){if(this.as!=null)return B.aAJ +if(this.at!=null)return B.PZ +return B.aAI}} +A.aKO.prototype={} +A.aKP.prototype={} +A.a5f.prototype={ +F(a){var s,r,q,p,o,n,m,l=A.bIS(),k=$.aX(),j=k.gacv() +k=k.gcT() +j.e=k +k.a4(0,j.ga64()) +j.a1m() +s=A.bVX(this.c) +r=A.cy(a,!0,t.nM) +j=t.G +k=A.dD(j) +k.q(0,B.ep) +k=new A.a1W(k) +k.aqO(B.ep,B.DZ,null,null,j) +k=A.C([k,B.SV],t.zU,t.vz) +j=A.C([B.auL,new A.dv(new A.aKR(),new A.bV(A.a([],t.ot),t.wS),t.L5)],t.u,t.od) +q=$.bqC() +p=t.IB +o=A.a([a.au(p).x,B.TQ,B.TV,B.TL],t.a9) +n=a.au(p).f +p=a.au(p).r.a +p===$&&A.b() +if(r.a)m=B.Pl +else m=r.b?B.Pm:B.aum +return new A.KP(q,s,"/",new A.aKS(),new A.aKT(l),A.tQ($.Gu(),!1),A.tQ($.bkl(),!0),m,p,o,n.d,!0,k,j,null)}} +A.aKR.prototype={ +$1(a){var s=$.aX() +A.aZ(s.gcz(),!0,B.eC,"ExitIntent onInvoke","Web",null,null) +s.gcz().W_() +return null}, +$S:829} +A.aKS.prototype={ +$1(a){var s=a.a +if(s==null)s="" +return A.bVS(new A.aLW(s,t.nA.a(a.b)))}, +$S:253} +A.aKT.prototype={ +$2(a,b){return this.a.$2(a,b)}, +$S:54} +A.aLW.prototype={ +j(a){var s=this.b +s=s==null?null:J.p(s) +return"OrcaRouteSettings(name: "+this.a+", arguments: "+A.c(s)+")"}} +A.bj1.prototype={ +$1(a){return B.Np}, +$S:830} +A.bj2.prototype={ +$1(a){return B.xD}, +$S:831} +A.bj3.prototype={ +$1(a){return new A.tn(null)}, +$S:832} +A.bj4.prototype={ +$1(a){return B.x3}, +$S:833} +A.bj5.prototype={ +$1(a){var s=this.a.b,r=s==null,q=r?null:J.i(s,"filename") +if(q==null)q="" +s=r?null:J.i(s,"isPrint") +return new A.od(q,s==null?!1:s,null)}, +$S:317} +A.bj6.prototype={ +$1(a){var s=this.a.b,r=s==null,q=r?null:J.i(s,"filename") +if(q==null)q="" +s=r?null:J.i(s,"isPrint") +return new A.od(q,s==null?!0:s,null)}, +$S:317} +A.bj7.prototype={ +$1(a){var s=this.a.b +s=s==null?null:J.i(s,"isPrint") +return new A.y8(s==null?!1:s,null)}, +$S:835} +A.bj8.prototype={ +$1(a){return B.Zw}, +$S:836} +A.bj9.prototype={ +$1(a){return B.x0}, +$S:837} +A.aLX.prototype={ +D(){return"OrcaTab."+this.b}, +gcq(a){var s +switch(this.a){case 0:s="Home" +break +case 1:s="3DEditor" +break +case 2:s="Preview" +break +case 3:s="Monitor" +break +case 4:s="Project" +break +default:s=null}return s}} +A.oB.prototype={ +D(){return"OrcaFlutterModules."+this.b}, +aA(a){var s +switch(this.a){case 0:s=0 +break +case 1:s=1 +break +case 2:s=2 +break +case 3:s=3 +break +case 4:s=4 +break +case 5:s=5 +break +case 6:s=6 +break +case 7:s=7 +break +default:s=null}return s}} +A.mL.prototype={ +ao(){var s=this +return A.C(["project_name",s.a,"path",s.b,"time",s.c,"image",s.d],t.N,t.z)}, +j(a){var s=this +return"FileItem(projectName: "+s.a+", path: "+s.b+", time: "+s.c+", image: "+s.d+")"}} +A.Pm.prototype={ +ao(){var s=this,r=s.c +return A.C(["nickname",s.b,"email",s.d,"account",s.e,"status",s.f,"icon",s.r,"token",s.w,"userid",r,"uid",r,"id",r],t.N,t.z)}} +A.tn.prototype={ +a0(){return new A.QH()}} +A.QH.prototype={ +aj(){this.aw() +this.ef(B.f,"initState") +$.aw.p2$.push(new A.b0Y(this))}, +ef(a,b){var s="[DeviceControlPage] "+b +switch(a.a){case 2:A.aL(s) +break +case 3:A.fJ(s) +break +case 1:A.CD(s) +break +case 0:A.fa(s) +break +default:A.fa(s) +break}}, +avJ(){var s,r=this +r.ef(B.f,"_subscriptingToLogoutStream add listener") +s=r.r +if(s!=null)s.S(0) +s=$.aX().gcT().id.b +r.r=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.b0V(r))}, +avI(){var s,r=this +r.ef(B.f,"_subscriptingToDeviceDownloadTaskStream add listener") +s=r.w +if(s!=null)s.S(0) +s=$.aX().gcT().x +r.w=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.b0U(r))}, +ld(a){var s=0,r=A.n(t.H),q,p=this,o +var $async$ld=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p.ef(B.f,"_showDeviceStateDialog: "+a.j(0)) +p.ef(B.f,"_showDeviceStateDialog: "+a.b+" mounted: "+(p.c!=null)) +o=p.c +if(o==null){s=1 +break}s=3 +return A.f(A.avc(o,a),$async$ld) +case 3:case 1:return A.l(q,r)}}) +return A.m($async$ld,r)}, +avF(){var s=$.aX().gcz().z +this.f=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.b0R(this))}, +m(){var s,r=this +r.ef(B.f,"dispose") +s=r.f +if(s!=null)s.S(0) +r.f=null +s=r.r +if(s!=null)s.S(0) +r.r=null +s=r.w +if(s!=null)s.S(0) +r.w=null +r.ar()}, +AJ(a,b){return this.azQ(a,b)}, +azQ(a,b){var s=0,r=A.n(t.H),q=this,p +var $async$AJ=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:if(a instanceof A.k1){p=a.a +if(p===B.de||p===B.df){A.aL("[DeviceControlPage], ["+b+u.s) +q.ld(B.h9)}else if(p===B.iW){A.aL("[DeviceControlPage], ["+b+u.f) +q.ld(B.la)}else if(p===B.iX){A.aL("[DeviceControlPage], ["+b+u.K) +q.ld(B.dL)}else A.dU(a.j(0))}else{p=J.dd(a) +if(B.c.p(p.j(a),"device authorization removed")){A.aL("[DeviceControlPage], ["+b+u.g) +q.ld(B.lb)}else if(B.c.p(p.j(a),"-1")){q.ef(B.p,"_onSelectDevice error: "+p.j(a)) +A.aL("[DeviceControlPage], ["+b+u.G) +q.ld(B.dL)}else A.dU(p.j(a))}return A.l(null,r)}}) +return A.m($async$AJ,r)}, +x0(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$x0=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:g=$.aX() +n.ef(B.f,"_getDeviceInfo: loginUser: "+A.co(g.gek().b.ao())) +k=g.gdM() +s=3 +return A.f(k.iN(),$async$x0) +case 3:m=b +j=m +n.ef(B.f,"_getDeviceInfo: getCurrentOrcaConnectedDevice: "+A.c(j==null?null:j.aD())) +if(m==null){n.ef(B.f,"_getDeviceInfo: wcp.getConnectedMachine is null") +n.J(new A.b0N(n)) +s=1 +break}p=5 +s=m.fy.eP()&&m.e.length!==0?8:9 +break +case 8:s=10 +return A.f(g.gdM().r0(m),$async$x0) +case 10:A.aL(u.b1+m.dy) +if(m.dy===0){A.aL(u.b1+m.dy+", call showDeviceStateDialog") +n.ld(B.eO) +s=1 +break}case 9:p=2 +s=7 +break +case 5:p=4 +f=o +l=A.v(f) +n.ef(B.p,"_getDeviceInfo error: "+J.p(l)) +n.AJ(l,u.cn) +s=1 +break +s=7 +break +case 4:s=2 +break +case 7:n.ef(B.f,"_getDeviceInfo: connectDevice & subscribeMachineState start, model: "+m.aD()) +g.gcz().oC(m.ao()) +s=11 +return A.f(k.pS(m,new A.b0O(n)).dc(new A.b0P(n)),$async$x0) +case 11:h=b +n.J(new A.b0Q(n)) +if(h)n.ef(B.A,"_getDeviceInfo: connectDevice & subscribeMachineState success") +else n.ef(B.A,"_getDeviceInfo: connectDevice & subscribeMachineState failed") +case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$x0,r)}, +AZ(){var s=0,r=A.n(t.H),q +var $async$AZ=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=3 +return A.f($.aX().gdM().qd(),$async$AZ) +case 3:q=b +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$AZ,r)}, +H_(){var s=0,r=A.n(t.y),q,p=this,o,n +var $async$H_=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p.ef(B.A,"_addOtherDevice start") +o=new A.a_($.ab,t.tr) +n=p.c +n.toString +A.bkL(n).ak(new A.b0M(p,new A.aq(o,t.VY)),t.P) +q=o +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$H_,r)}, +AK(a){return this.aG9(a)}, +aG9(a){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$AK=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:n.ef(B.f,"_onSelectDevice, deviceModel: "+a.aD()) +p=4 +j=$.aX() +A.aZ(j.gcz(),!0,B.az,"onSelectDevice","DeviceControlPage",null,null) +m=j.gdM() +s=a.fy.eP()&&a.e.length!==0?7:8 +break +case 7:s=9 +return A.f(j.gdM().r0(a),$async$AK) +case 9:n.ef(B.f,"_onSelectDevice, online: "+a.dy) +j=a.dy +if(j===0){A.aL("[DeviceControlPage] _onSelectDevice, online: "+j+", call showDeviceStateDialog") +n.ld(B.eO) +q=!1 +s=1 +break}case 8:s=10 +return A.f(m.pS(a,new A.b0S(n)),$async$AK) +case 10:l=c +q=l +s=1 +break +p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +n.ef(B.p,"_onSelectDevice error: "+J.p(k)) +n.AJ(k,u.k) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$AK,r)}, +QE(a){return this.avx(a)}, +avx(a){var s=0,r=A.n(t.H),q=this +var $async$QE=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q.ef(B.A,"deleteDevice") +$.aX().gdM().CZ(a) +return A.l(null,r)}}) +return A.m($async$QE,r)}, +H4(a,b){return this.aw_(a,!0)}, +avZ(a){return this.H4(a,!0)}, +aw_(a,b){var s=0,r=A.n(t.H),q=this +var $async$H4=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:q.ef(B.f,"_disconnectDevice, needReload: true") +$.aX().gdM().yk(a,!0) +return A.l(null,r)}}) +return A.m($async$H4,r)}, +H0(a,b,c){return this.aKu(a,b,c)}, +aKu(a,b,c){var s=0,r=A.n(t.H),q,p=this,o,n +var $async$H0=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:A.aL("[DeviceControlPage] ["+c+u.aV+p.e+", deviceModel: "+a.aD()+", start") +if(p.c==null){s=1 +break}if(p.e){A.aL("[DeviceControlPage] ["+c+u.eK) +s=1 +break}o=$.aX().gcT() +p.e=!0 +n=p.c +n.toString +s=3 +return A.f(A.asA(n,null,new A.b0T(p,c),b,o.k1),$async$H0) +case 3:p.e=!1 +A.aL("[DeviceControlPage] ["+c+u.X+p.e+", deviceModel: "+a.aD()+", end") +case 1:return A.l(q,r)}}) +return A.m($async$H0,r)}, +F(a){var s=this,r=null +return A.lb(r,r,new A.Iq(s.gavE(),s.gavw(),s.gavY(),s.gavG(),s.gayp(),s.gavH(),r),r,r)}} +A.b0Y.prototype={ +$1(a){var s,r=this.a +if(r.c!=null){r.ef(B.f,"_subscribeData") +s=$.aX() +s.gdM().oG() +s.gek().oG() +r.avI() +r.avJ() +r.avF() +s=r.c +s.toString +A.cy(s,!1,t.PO).w4().ak(new A.b0W(r),t.P).dc(new A.b0X(r))}}, +$S:3} +A.b0W.prototype={ +$1(a){var s=0,r=A.n(t.P),q=this,p +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=q.a +p.ef(B.f,"initState getUserInfo success") +s=2 +return A.f(p.x0(),$async$$1) +case 2:s=3 +return A.f(p.AZ(),$async$$1) +case 3:return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:841} +A.b0X.prototype={ +$1(a){this.a.ef(B.p,"initState error: "+J.p(a))}, +$S:2} +A.b0V.prototype={ +$1(a){var s=this.a,r=J.dd(a) +s.ef(B.f,"_subscriptingToLogoutStream value: "+r.j(a)+", Device State: unbound") +if(r.gbC(a)){A.aL("[DeviceControlPage] _subscriptingToLogoutStream, Device State: unbound, call showDeviceStateDialog") +s.ld(B.h9)}}, +$S:185} +A.b0U.prototype={ +$1(a){var s,r,q=null,p=this.a,o=J.dd(a) +p.ef(B.f,"_subscriptingToDeviceDownloadTaskStream: "+o.j(a)) +if(J.e(o.h(a,"action"),"download"))if(J.e(o.h(a,"state"),"error")){p.ef(B.f,"_subscriptingToDeviceDownloadTaskStream, DeviceState.state: downloadModelFileFailed, value: "+o.j(a)+", value: "+o.j(a)) +s=p.c +if(s!=null){r=t.Q +s=s.au(r) +s.toString +s.f.aPw() +r=p.c.au(r) +r.toString +r.f.jJ(A.ki(q,q,q,q,q,B.w,q,A.X("Device download file failed: "+J.p(o.h(a,"message")),q,q,q,q,q,q,q),q,B.c2,q,q,q,q,q,q,q,q,q))}A.aL("[DeviceControlPage] _subscriptingToDeviceDownloadTaskStream, DeviceState.downloadModelFileFailed, call showDeviceStateDialog") +p.ld(B.Z4)}}, +$S:110} +A.b0R.prototype={ +$1(a){var s=this.a,r=J.dd(a) +s.ef(B.f,"_listenWcp: "+r.j(a)) +if(J.e(r.h(a,"cmd"),"devicepage_add_device")){s.ef(B.f,"_listenWcp, cmd: devicepage_add_device, message: "+r.j(a)) +s.H_()}}, +$S:110} +A.b0N.prototype={ +$0(){}, +$S:0} +A.b0O.prototype={ +$2(a,b){this.a.ef(B.f,"_getDeviceInfo: onDeviceControl, showAuthorizationDialog, authState: "+b.j(0)+", deviceModel: "+a.aD())}, +$S:41} +A.b0P.prototype={ +$1(a){var s=this.a +s.ef(B.p,"_getDeviceInfo: onDeviceControl onError: "+J.p(a)) +s.AJ(a,u.cn) +return!1}, +$S:48} +A.b0Q.prototype={ +$0(){}, +$S:0} +A.b0M.prototype={ +$1(a){this.a.ef(B.f,"_addOtherDevice end, value: "+A.c(a)) +this.b.bv(0,!0)}, +$S:2} +A.b0S.prototype={ +$2(a,b){var s=this.a +s.ef(B.f,"_onSelectDevice orcaControlViewModel.onDeviceControl, showAuthorizationDialog, authState: "+b.j(0)+", deviceModel: "+a.aD()+", authState: "+b.j(0)) +s.H0(a,b,u.k)}, +$S:41} +A.b0T.prototype={ +$0(){var s=0,r=A.n(t.P),q=this,p +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.aL("[DeviceControlPage] ["+q.b+"] onTimeout, close dialog") +p=q.a +p.e=!1 +p=p.c +p.toString +A.bU(p,!1).cV() +return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:49} +A.wD.prototype={ +a0(){return new A.QU()}} +A.QU.prototype={ +aj(){this.aw() +this.wQ()}, +m(){this.ar()}, +wQ(){var s=0,r=A.n(t.z),q=1,p,o=[],n=this,m,l,k,j,i,h,g +var $async$wQ=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:A.as().$1("DownloadFile _init()") +n.J(new A.b26(n)) +q=3 +A.mx("Loading...") +i=$.aX() +m=i.gcz() +l=i.gdM() +s=6 +return A.f(l.iN(),$async$wQ) +case 6:k=b +if(k==null){A.as().$1("wcp.getConnectedMachine is null") +i=A.ae("Cannot get connected machine") +throw A.d(i)}A.as().$1("DeviceDetail getConnectedMachine result: "+k.ao().j(0)) +m.oC(k.ao()) +s=7 +return A.f(l.oc(k,!1,new A.b27()),$async$wQ) +case 7:A.as().$1("DeviceDetail connectDevice & subscribeMachineState") +n.J(new A.b28(n)) +o.push(5) +s=4 +break +case 3:q=2 +g=p +j=A.v(g) +A.as().$1("DownloadFile _init() error: "+J.p(j)) +n.J(new A.b29(n,j)) +o.push(5) +s=4 +break +case 2:o=[1] +case 4:q=1 +A.dR(B.as) +s=o.pop() +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$wQ,r)}, +AM(a){return this.awv(a)}, +awv(a2){var s=0,r=A.n(t.H),q=1,p,o=[],n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$AM=A.j(function(a3,a4){if(a3===1){p=a4 +s=q}while(true)switch(s){case 0:a=t.N +s=2 +return A.f($.aX().gcz().zD(A.C(["is_zip",a2],a,t.z)),$async$AM) +case 2:a0=a4 +s=a0!=null?3:5 +break +case 3:e=a0.b +d=J.a0(e) +c=d.h(e,"data") +m=c==null?null:J.i(c,"file_name") +e=d.h(e,"data") +l=e==null?null:J.i(e,"file_path") +e="DownloadFile _downloadFileForWeb(isZip: "+a2 +A.as().$1(e+") filename: "+A.c(m)) +A.as().$1(e+") filePath: "+A.c(l)) +q=7 +n.J(new A.b20(n)) +k=A.f1("http://localhost:13619/localfile/"+n.aSM(l)) +A.as().$1("DownloadFile _downloadFileForWeb() uri: "+A.c(k)) +s=10 +return A.f(A.bpr(k),$async$AM) +case 10:j=a4 +n.J(new A.b21(n)) +A.as().$1("DownloadFile _downloadFileForWeb() response.statusCode: "+j.b) +e=j +A.biQ(A.bhu(e.e)).ei(0,e.w) +A.as().$1("DownloadFile _downloadFileForWeb() response.body.runtimeType: "+A.cK(a).j(0)) +A.as().$1("DownloadFile _downloadFileForWeb() response.body: *****") +if(j.b===200){i=j.w +e=j +A.biQ(A.bhu(e.e)).ei(0,e.w) +e=A.cK(a).j(0) +j.toString +A.as().$1("DownloadFile _downloadFileForWeb() http.body.runtimeType: "+e+", http.bodyBytes.runtimeType:"+B.tL.j(0)) +n.J(new A.b22(n,i,m)) +h=A.bFz([j.w]) +n.J(new A.b23(n)) +e=(self.URL||self.webkitURL).createObjectURL(h) +e.toString +g=e +e=g +d=document.createElement("a") +d.toString +if(e!=null)d.href=e +d.setAttribute("download",A.c(m)+".gcode") +d.click();(self.URL||self.webkitURL).revokeObjectURL(g) +n.J(new A.b24(n)) +A.as().$1("DownloadFile _downloadFileForWeb() \u4e0b\u8f7d\u6210\u529f") +e=n.c +if(e!=null){e=e.au(t.Q) +e.toString +d=A.c(m) +c=j +A.biQ(A.bhu(c.e)).ei(0,c.w) +e.f.jJ(A.ki(null,null,null,B.dU,null,B.w,null,A.X("\u6587\u4ef6 "+d+".gcode \u4e0b\u8f7d\u6210\u529f\uff0c\u5185\u5bb9\u5df2\u52a0\u8f7d, boby.runtimeType: "+A.cK(a).j(0),null,null,null,null,null,null,null),null,B.c2,null,null,null,null,null,null,null,null,null))}}else{a=A.ae("\u4e0b\u8f7d\u5931\u8d25: HTTP "+j.b) +throw A.d(a)}o.push(9) +s=8 +break +case 7:q=6 +a1=p +f=A.v(a1) +A.as().$1("DownloadFile _downloadFileForWeb() error: "+J.p(f)) +a=A.ae("\u4e0b\u8f7d\u6587\u4ef6\u65f6\u53d1\u751f\u9519\u8bef: "+A.c(f)) +throw A.d(a) +o.push(9) +s=8 +break +case 6:o=[1] +case 8:q=1 +n.J(new A.b25(n)) +s=o.pop() +break +case 9:s=4 +break +case 5:A.as().$1("DownloadFile _downloadFileForWeb() activeFile is null") +throw A.d(A.ae("\u65e0\u6cd5\u83b7\u53d6\u6d3b\u52a8\u6587\u4ef6\u4fe1\u606f")) +case 4:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$AM,r)}, +AL(a){return this.awu(a)}, +awu(a){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k +var $async$AL=A.j(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:q=3 +s=6 +return A.f(o.AM(a),$async$AL) +case 6:q=1 +s=5 +break +case 3:q=2 +k=p +n=A.v(k) +A.as().$1("DownloadFile _downloadFile() error: "+J.p(n)) +l=o.c +if(l!=null){l=l.au(t.Q) +l.toString +l.f.jJ(A.ki(null,null,null,B.jB,null,B.w,null,A.X("\u4e0b\u8f7d\u5931\u8d25: "+J.p(n),null,null,null,null,null,null,null),null,B.c2,null,null,null,null,null,null,null,null,null))}s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$AL,r)}, +aSM(a){var s,r,q,p +for(s=new A.Nf(a),r="";s.u();){q=A.ek(s.d) +p=A.bB("[\\u4e00-\\u9fa5#]",!0,!1,!1) +r=p.b.test(q)?r+A.rB(B.BI,q,B.a5,!1):r+q}return r.charCodeAt(0)==0?r:r}, +F(a){var s,r,q,p,o,n,m,l=this,k=null,j=A.A6(k,k,k,k,k,k,B.aue,k) +if(l.f)s=B.dI +else{s=t.p +if(l.d)s=A.cL(A.b2(A.a([B.a1A,B.aK,A.X("\u8fde\u63a5\u9519\u8bef",k,k,k,k,A.q(a).p2.f,k,k),B.bf,A.X(l.e,k,k,k,k,A.q(a).p2.z,B.bt,k),B.aK,A.f6(!1,B.aud,k,k,B.a3,k,k,k,k,l.gawy(),k,k)],s),B.l,B.ac,B.k,B.r),k,k) +else{r=A.w8(new A.be(B.bW,A.b2(A.a([A.X("\u6587\u4ef6\u4e0b\u8f7d",k,k,k,k,A.q(a).p2.f,k,k),B.bf,A.X("\u70b9\u51fb\u4e0b\u65b9\u6309\u94ae\u4e0b\u8f7d\u5f53\u524d\u6d3b\u52a8\u7684GCode\u6587\u4ef6",k,k,k,k,A.q(a).p2.z,k,k)],s),B.ap,B.o,B.k,B.r),k),k,k) +q=l.r +p=q?k:new A.b2b(l) +o=q?B.OC:B.xQ +p=A.axG(o,A.X(q?"\u4e0b\u8f7d\u4e2d...":"\u4e0b\u8f7dGCode\u6587\u4ef6",k,k,k,k,k,k,k),p,A.im(k,k,k,k,k,k,k,k,k,k,k,k,k,B.wN,k,k,k,k,k,k,k)) +o=q?k:new A.b2c(l) +n=q?B.OC:B.xQ +r=A.a([r,B.aK,p,B.aK,A.axG(n,A.X(q?"\u4e0b\u8f7d\u4e2d...":"\u4e0b\u8f7dZIP\u6587\u4ef6",k,k,k,k,k,k,k),o,A.im(k,k,k,k,k,k,k,k,k,k,k,k,k,B.wN,k,k,k,k,k,k,k))],s) +if(l.r)B.b.G(r,A.a([B.aK,A.w8(new A.be(B.bW,A.b2(A.a([A.bt(A.a([A.X("\u4e0b\u8f7d\u8fdb\u5ea6",k,k,k,k,A.q(a).p2.w,k,k),A.X(""+B.d.aA(l.w*100)+"%",k,k,k,k,A.q(a).p2.w,k,k)],s),B.l,B.bX,B.k),B.bf,A.aEV(B.c1,B.aH,k,k,l.w,new A.nY(B.oQ,t.ZU))],s),B.ap,B.o,B.k,B.r),k),k,k)],s)) +r.push(B.aK) +q=A.bq(8) +p=A.ee(B.p0,1) +r.push(A.aa(k,A.bt(A.a([A.hD(B.a1e,B.kO,k,20),B.cf,A.cf(A.X("\u5728Web\u7248\u672c\u4e2d\uff0c\u6587\u4ef6\u5c06\u4e0b\u8f7d\u5230\u6d4f\u89c8\u5668\u7684\u9ed8\u8ba4\u4e0b\u8f7d\u6587\u4ef6\u5939",k,k,k,k,A.cb(k,k,B.kO,k,k,k,k,k,k,k,k,12,k,k,k,k,k,!0,k,k,k,k,k,k,k,k),k,k),1)],s),B.l,B.o,B.k),B.h,k,k,new A.bb(B.p2,k,p,q,k,k,k,B.E),k,k,k,k,B.dO,k,k,k)) +if(l.z&&l.x!=null){q=A.a([A.bt(A.a([B.a1x,B.cf,A.cf(A.X("\u6587\u4ef6\u5185\u5bb9\u9884\u89c8",k,k,k,k,A.q(a).p2.f,k,k),1),A.fX(k,k,k,k,B.ja,k,new A.b2d(l),k,k,k,"\u5173\u95ed\u9884\u89c8")],s),B.l,B.o,B.k),B.bf],s) +p=l.y +if(p!=null){o=A.bq(4) +q.push(A.aa(k,A.bt(A.a([B.a1C,B.ce,A.X("\u6587\u4ef6\u540d: "+p+".gcode",k,k,k,k,A.q(a).p2.z,k,k)],s),B.l,B.o,B.k),B.h,k,k,new A.bb(B.kZ,k,k,o,k,k,k,B.E),k,k,k,k,B.wP,k,k,k))}q.push(B.bf) +p=A.bq(4) +q.push(A.aa(k,A.bt(A.a([B.a1I,B.ce,A.X("\u6587\u4ef6\u5927\u5c0f: "+l.axV(l.x.length),k,k,k,k,A.q(a).p2.z,k,k)],s),B.l,B.o,B.k),B.h,k,k,new A.bb(B.kZ,k,k,p,k,k,k,B.E),k,k,k,k,B.wP,k,k,k)) +q.push(B.aK) +p=A.ee(B.cW,1) +o=A.bq(8) +n=A.bq(8) +m=l.x +m.toString +q.push(A.aa(k,A.pw(n,new A.Rm(m,k),B.by),B.h,k,k,new A.bb(k,k,p,o,k,k,k,B.E),k,400,k,k,k,k,k,k)) +B.b.G(r,A.a([B.aK,A.w8(new A.be(B.bW,A.b2(q,B.ap,B.o,B.k,B.r),k),k,k)],s))}s=A.b2(r,B.cv,B.o,B.k,B.r)}}return A.lb(j,k,A.aa(k,s,B.h,k,k,k,k,k,k,k,B.bW,k,k,k),k,k)}, +axV(a){if(a<1024)return""+a+" B" +else if(a<1048576)return B.d.aF(a/1024,1)+" KB" +else return B.d.aF(a/1048576,1)+" MB"}} +A.b26.prototype={ +$0(){var s=this.a +s.d=s.f=!1}, +$S:0} +A.b27.prototype={ +$2(a,b){A.as().$1("DownloadFile _init() showAuthorizationDialog, authState: "+b.j(0))}, +$S:41} +A.b28.prototype={ +$0(){this.a.f=!1}, +$S:0} +A.b29.prototype={ +$0(){var s=this.a +s.f=!1 +s.d=!0 +s.e=J.p(this.b)}, +$S:0} +A.b20.prototype={ +$0(){var s=this.a +s.r=!0 +s.w=0 +s.z=!1}, +$S:0} +A.b21.prototype={ +$0(){this.a.w=0.5}, +$S:0} +A.b22.prototype={ +$0(){var s=this.a +s.x=B.a5.ei(0,this.b) +s.y=this.c}, +$S:0} +A.b23.prototype={ +$0(){this.a.w=0.8}, +$S:0} +A.b24.prototype={ +$0(){var s=this.a +s.w=1 +s.z=!0}, +$S:0} +A.b25.prototype={ +$0(){var s=this.a +s.r=!1 +s.w=0}, +$S:0} +A.b2b.prototype={ +$0(){return this.a.AL(!1)}, +$S:0} +A.b2c.prototype={ +$0(){return this.a.AL(!0)}, +$S:0} +A.b2d.prototype={ +$0(){var s=this.a +s.J(new A.b2a(s))}, +$S:0} +A.b2a.prototype={ +$0(){var s=this.a +s.z=!1 +s.y=s.x=null}, +$S:0} +A.Rm.prototype={ +a0(){return new A.Rn(A.a([],t.t))}} +A.Rn.prototype={ +aj(){this.aw() +this.d=A.uE(0,null,null) +this.e=new A.r5(B.tx,$.aW())}, +m(){var s=this.d +s===$&&A.b() +s.m() +s=this.e +s===$&&A.b() +s.U$=$.aW() +s.M$=0 +this.ar()}, +aHm(a){this.J(new A.b3J(this,a))}, +aFk(){var s=this,r=s.r +if(r.length!==0){s.J(new A.b3I(s)) +s.a7u(r[s.w])}}, +aHO(){var s=this,r=s.r +if(r.length!==0){s.J(new A.b3K(s)) +s.a7u(r[s.w])}}, +a7u(a){var s=this.d +s===$&&A.b() +s.kD(a*20,B.e9,B.bl)}, +F(a){var s,r,q=this,p=null,o=A.a(q.a.c.split("\n"),t.s),n=q.e +n===$&&A.b() +s=t.p +n=A.a([B.a1G,B.cf,A.cf(A.a9p(!0,!1,n,p,p,B.a2t,p,p,p,p,p,p,1,!1,q.gaHl(),p,p,p,p,B.bn,p),1)],s) +if(q.f.length!==0)B.b.G(n,A.a([A.X(""+(q.w+1)+"/"+q.r.length,p,p,p,p,A.q(a).p2.Q,p,p),B.cf,A.fX(p,p,p,p,B.a1L,p,q.gaHN(),p,p,p,"\u4e0a\u4e00\u4e2a"),A.fX(p,p,p,p,B.a1w,p,q.gaFj(),p,p,p,"\u4e0b\u4e00\u4e2a")],s)) +n=A.aa(p,A.bt(n,B.l,B.o,B.k),B.h,p,p,new A.bb(B.l_,p,new A.f4(B.x,B.x,new A.br(B.cW,1,B.I,-1),B.x),p,p,p,p,B.E),p,p,p,p,B.j5,p,p,p) +r=q.d +r===$&&A.b() +return A.b2(A.a([n,A.cf(A.bKA(r,new A.b3L(q,o),o.length,B.j5,p,!1),1)],s),B.l,B.o,B.k,B.r)}} +A.b3J.prototype={ +$0(){var s,r,q,p=this.a,o=p.f=this.b,n=p.r +B.b.V(n) +p.w=-1 +if(o.length!==0){s=p.a.c.split("\n") +for(r=0;r "+r) +q.f=r}}, +a4U(a){this.qB(B.A,"_onPageChanged: "+a) +if(a!==this.f)this.d.o5(a)}, +F(a){var s,r,q,p,o,n,m=this,l=null,k=A.q(a).ax,j=k.p4 +k=j==null?k.k2:j +j=A.q(a).ax +s=j.p4 +j=A.A6(l,s==null?j.k2:s,l,l,0,l,B.nH,0) +s=t.p +r=A.cq(B.a2,A.a([A.aa(l,l,B.h,B.t,l,l,l,l,l,l,l,l,l,262),A.qD(0,new A.JQ(new A.b5U(m),l))],s),B.w,B.W,l) +q=A.bo7(A.Xw("#D5D6D9"),1) +p=A.a([A.aa(l,A.bt(A.a([B.fw,A.pK(4,A.q(a).ax.b,33,A.X(A.F("Open Project",l),l,l,l,l,A.cb(l,l,A.q(a).ax.b,l,l,l,l,l,l,l,l,12,l,l,l,l,l,!0,l,l,l,l,l,l,l,l),l,l),A.aa(l,l,B.h,l,l,l,l,l,l,l,l,l,l,l),new A.b5V(m),B.he,102),B.fw,A.pK(4,A.q(a).ax.b,33,A.bt(A.a([A.hD(B.pM,A.q(a).ax.c,l,18),B.ce,A.X(A.F("Create New Project",l),l,l,l,l,A.cb(l,l,A.q(a).ax.c,l,l,l,l,l,l,l,l,12,l,l,l,l,l,!0,l,l,l,l,l,l,l,l),l,l)],s),B.l,B.ac,B.k),B.nH,new A.b5W(m),B.lh,120)],s),B.l,B.cD,B.k),B.h,B.t,l,l,l,57,l,l,B.wV,l,l,l)],s) +o=A.q(a).ax +n=o.p4 +o=n==null?o.k2:n +p.push(A.cf(A.aa(l,A.cq(B.a2,A.a([A.a5s(B.a9w,B.w,m.d,B.S,new A.b5X(m),B.fi,B.aN)],s),B.w,B.W,l),B.h,o,l,l,l,l,l,l,l,l,l,l),1)) +return A.lb(j,k,A.bt(A.a([r,q,A.cf(A.aa(l,A.b2(p,B.l,B.o,B.k,B.r),B.h,l,l,l,l,l,l,l,B.Z,l,l,l),1)],s),B.l,B.o,B.k),l,l)}} +A.b60.prototype={ +$1(a){var s,r,q=this.a +if(q.c!=null&&!q.e){q.qB(B.f,"initState") +q.e=!0 +s=t.P +A.bth(new A.b5Y(),s) +r=$.aX() +r.gdM().oG() +r.gek().oG() +r=q.c +r.toString +A.cy(r,!1,t.PO).w4().ak(new A.b5Z(q),s).dc(new A.b6_(q))}}, +$S:3} +A.b5Y.prototype={ +$0(){$.aX().gek().M9(!1)}, +$S:4} +A.b5Z.prototype={ +$1(a){this.a.qB(B.f,"initState getUserInfo success")}, +$S:20} +A.b6_.prototype={ +$1(a){this.a.qB(B.p,"initState error: "+J.p(a))}, +$S:2} +A.b61.prototype={ +$0(){var s=this.a,r=t.gQ.a(B.b.gd_(s.d.f)).gpW(0),q=r==null?null:B.d.aa(r) +if(q==null)q=0 +if(q!==s.f)s.f=q}, +$S:0} +A.b5U.prototype={ +$1(a){this.a.a4U(a)}, +$S:123} +A.b5V.prototype={ +$0(){var s=this.a.c +s.toString +A.cy(s,!1,t.P8).afv(null)}, +$S:4} +A.b5W.prototype={ +$0(){var s=this.a.c +s.toString +A.cy(s,!1,t.P8).Vo()}, +$S:4} +A.b5X.prototype={ +$1(a){this.a.a4U(a)}, +$S:23} +A.an5.prototype={} +A.GG.prototype={ +a0(){return new A.acv()}} +A.acv.prototype={ +F(a){var s=null,r=this.a.c,q=A.bq(8),p=A.a([new A.c6(0,B.a6,A.Y(13,0,0,0),B.fj,8)],t.F),o=A.F("add device",s),n=A.q(a).p2.x,m=t.p +p=A.aa(s,A.b2(A.a([B.a1M,B.anw,A.X(o,s,s,s,s,n==null?s:n.f4(14,B.K),s,s)],m),B.l,B.ac,B.k,B.r),B.h,s,s,new A.bb(B.n,s,s,q,p,s,s,B.E),s,178,s,s,s,s,s,178) +q=A.q(a).p2.x +return A.eQ(!1,s,!0,A.b2(A.a([p,B.k3,A.aa(s,A.X("",1,B.al,s,s,q==null?s:q.f4(14,B.K),B.bt,s),B.h,B.t,s,s,s,s,s,s,B.bV,s,s,146)],m),B.l,B.o,B.k,B.r),s,!0,s,s,B.t,B.t,s,s,s,s,s,r,s,B.t,s,s)}} +A.to.prototype={ +a0(){return new A.aeA()}} +A.aeA.prototype={ +SG(){var s=0,r=A.n(t.z),q=this +var $async$SG=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:if(q.a.w)q.J(new A.b11(q)) +else q.J(new A.b12(q)) +q.a.ax.$0().NA(new A.b13(q)) +A.eC(B.wG,new A.b14(q),t.P) +return A.l(null,r)}}) +return A.m($async$SG,r)}, +F(a){var s,r,q,p=this,o=null,n=A.bq(8),m=A.a([new A.c6(0,B.a6,A.Y(13,0,0,0),B.fj,8)],t.F),l=t.p,k=A.a([],l) +if(p.a.c){s=A.q(a).ax +r=s.rx +s=r==null?s.k3:r +r=A.q(a).p2.x +k.push(A.pw(B.Ro,A.aa(B.O,A.X("LAN",1,B.al,o,o,r==null?o:r.e5(B.n,12,B.K),o,o),B.h,s,o,o,o,30,o,o,B.bV,o,o,1/0),B.by))}if(!p.a.c)k.push(A.aa(B.O,B.a24,B.h,B.t,o,o,o,o,o,o,B.a_r,o,o,1/0)) +k.push(A.aa(o,A.xd(p.a.f,B.M,o,o),B.h,B.t,o,o,o,116,o,B.a_B,o,o,o,146)) +n=A.a([A.aa(o,A.b2(k,B.l,B.o,B.k,B.r),B.h,o,o,new A.bb(B.n,o,o,n,m,o,o,B.E),o,178,o,o,o,o,o,178)],l) +m=p.a +n.push(A.eH(o,A.aa(o,o,B.h,o,o,new A.bb(m.w?B.dU:B.eq,o,o,o,o,o,o,B.bw),o,12,o,o,o,o,o,12),o,o,9,o,9,o)) +if(p.d){if(p.a.c)m=A.q(a).ax.c +else{m=A.q(a).ax +k=m.x +m=k==null?m.c:k}m=A.eH(o,A.eQ(!1,o,!0,A.hD(B.xM,m,o,o),o,!0,o,o,o,o,o,o,o,o,o,new A.b18(p),o,o,o,o),30,o,o,0,0,30) +k=A.q(a) +s=A.F("Create New Project",o) +r=A.q(a).p2.at +k=A.pK(4,k.ax.b,20,A.X(s,o,o,o,o,r==null?o:r.e5(A.q(a).ax.c,10,B.K),o,o),B.fZ,p.a.as,B.lh,68) +s=A.q(a) +r=A.F("Device Control",o) +q=A.q(a).p2.at +B.b.G(n,A.a([m,A.eH(0,A.aa(o,A.bt(A.a([k,B.nw,A.pK(4,s.ax.b,20,A.X(r,o,o,o,o,q==null?o:q.e5(A.q(a).ax.c,10,B.K),o,o),B.fZ,new A.b19(p),B.lh,68)],l),B.l,B.ac,B.k),B.h,o,o,o,o,o,o,o,B.dO,o,o,o),o,o,0,0,o,o)],l))}if(p.e)n.push(A.qD(0,A.cL(A.wh(o,A.q(a).ax.b,o,o,o,0,o,4,o,o),o,o))) +n=A.cq(B.a2,n,B.w,B.W,o) +m=p.a +k=m.w +m=m.d +s=A.q(a).p2.x +s=s==null?o:s.f4(14,B.K) +return A.ov(A.b2(A.a([n,B.k3,new A.IZ(m,178,!k,s,new A.b1a(p),o)],l),B.l,B.o,B.k,B.r),B.cU,o,new A.b1b(p),new A.b1c(p),o)}} +A.b11.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.b12.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.b13.prototype={ +$1(a){var s=this.a +s.J(new A.b10(s))}, +$S:2} +A.b10.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.b14.prototype={ +$0(){var s=this.a +if(s.c!=null&&s.e)s.J(new A.b1_(s))}, +$S:4} +A.b1_.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.b1b.prototype={ +$1(a){var s=this.a +return s.J(new A.b16(s))}, +$S:67} +A.b16.prototype={ +$0(){return this.a.d=!0}, +$S:0} +A.b1c.prototype={ +$1(a){var s=this.a +return s.J(new A.b15(s))}, +$S:62} +A.b15.prototype={ +$0(){return this.a.d=!1}, +$S:0} +A.b18.prototype={ +$0(){var s=this.a +s.J(new A.b17(s)) +s.a.x.$0()}, +$S:0} +A.b17.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.b19.prototype={ +$0(){this.a.SG()}, +$S:4} +A.b1a.prototype={ +$1(a){A.as().$1("newName: "+a) +if(a.length!==0&&a!==this.a.a.d)this.a.a.y.$1(a)}, +$S:19} +A.IZ.prototype={ +a0(){return new A.R6(A.kK(!0,null,!0,!0,null,null,!1))}} +A.R6.prototype={ +aj(){var s,r=this +r.aw() +s=r.a.c +r.d=new A.r5(new A.dS(s,B.i8,B.bH),$.aW()) +r.f.a4(0,r.gavK())}, +b1(a){var s,r +this.bb(a) +s=this.a.c +if(a.c!==s){r=this.d +r===$&&A.b() +r.se3(0,s)}}, +avL(){if(!this.f.gcN()&&this.e)this.a2t()}, +a2t(){var s,r,q=this +q.J(new A.b2I(q)) +s=q.a +s.toString +r=q.d +r===$&&A.b() +r=r.a.a +if(r!==s.c)s.w.$1(r)}, +m(){var s=this.d +s===$&&A.b() +s.U$=$.aW() +s.M$=0 +this.f.m() +this.ar()}, +F(a){var s,r,q,p,o,n=this,m=null,l=n.a +if(l.f){s=l.d +l=l.c +r=A.q(a).p2.x +return A.aa(m,A.X(l,1,B.al,m,m,r==null?m:r.f4(14,B.K),B.bt,m),B.h,B.t,m,m,m,m,m,m,B.bV,m,m,s)}s=l.d +r=n.e +q=r?A.ee(B.dT,1):m +p=A.bq(2) +o=l.r +if(r){l=n.d +l===$&&A.b() +if(o==null){r=A.q(a).p2.x +r=r==null?m:r.f4(14,B.K)}else r=o +r=A.a9p(!0,!0,l,m,12,B.a2s,m,n.f,m,m,m,m,1,!1,m,new A.b2L(n),m,m,r,B.bt,m) +l=r}else{l=l.c +if(o==null){r=A.q(a).p2.x +r=r==null?m:r.f4(14,B.K)}else r=o +r=A.X(l,1,B.al,m,m,r,B.bt,m) +l=r}return A.aa(m,A.bt(A.a([B.t5,A.aa(m,l,B.h,m,m,new A.bb(m,m,q,p,m,m,m,B.E),m,m,m,m,m,m,m,138),B.fx,A.aa(m,new A.aB(18,m,A.eQ(!1,m,!0,B.a2b,m,!0,m,m,m,m,m,m,m,m,m,new A.b2M(n),m,m,m,m),m),B.h,B.t,m,m,m,m,m,m,m,m,m,m)],t.p),B.l,B.mM,B.k),B.h,B.t,m,m,m,m,m,m,m,m,m,s)}} +A.b2I.prototype={ +$0(){this.a.e=!1}, +$S:0} +A.b2L.prototype={ +$1(a){return this.a.a2t()}, +$S:19} +A.b2M.prototype={ +$0(){var s=this.a +s.J(new A.b2J(s)) +A.eC(B.bc,new A.b2K(s),t.P)}, +$S:0} +A.b2J.prototype={ +$0(){this.a.e=!0}, +$S:0} +A.b2K.prototype={ +$0(){this.a.f.iI()}, +$S:4} +A.JO.prototype={ +a0(){return new A.RG()}} +A.RG.prototype={ +m(){A.aL("[HomeMyDevices] dispose") +var s=this.f +if(s!=null)s.S(0) +this.f=null +this.ar()}, +aj(){this.aw() +A.fa("[HomeMyDevices] initState") +$.aw.p2$.push(new A.b5T(this))}, +BA(){var s=0,r=A.n(t.z),q,p,o,n +var $async$BA=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=$.aX() +o=p.gdM() +s=3 +return A.f(o.iN(),$async$BA) +case 3:n=b +if(n==null){A.fa("[HomeMyDevices] wcp.getConnectedMachine is null") +s=1 +break}A.fa("[HomeMyDevices] _reloadWidgetTryConnect start, model: "+n.aD()) +p.gcz().oC(n.ao()) +s=n.fr?4:6 +break +case 4:s=7 +return A.f(o.pS(n,new A.b5G()),$async$BA) +case 7:if(b)A.fa("[HomeMyDevices] _reloadWidgetTryConnect connectDevice & subscribeMachineState success") +else A.fa("[HomeMyDevices] _reloadWidgetTryConnect connectDevice & subscribeMachineState failed") +s=5 +break +case 6:A.fa("[HomeMyDevices] _reloadWidgetTryConnect model is not connected") +case 5:case 1:return A.l(q,r)}}) +return A.m($async$BA,r)}, +B6(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$B6=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:g=n.c +g.toString +m=A.cy(g,!1,t.e) +p=4 +s=7 +return A.f(A.xq(m),$async$B6) +case 7:l=b +s=l?8:10 +break +case 8:g=n.c +g.toString +s=11 +return A.f(A.aa4(g),$async$B6) +case 11:k=b +if(J.e(k,!1)){A.BP(m,!1) +q=!1 +s=1 +break}else{q=!0 +s=1 +break}s=9 +break +case 10:q=!0 +s=1 +break +case 9:p=2 +s=6 +break +case 4:p=3 +f=o +g=n.c +if(g!=null){j=new A.aq(new A.a_($.ab,t.tr),t.VY) +h=A.F("Could not get device version",null) +A.aLS(g,A.F("Confirm",null),"assets/images/deviceNoResponse.webp",new A.b5D(n,j),h,t.z) +q=j.a +s=1 +break}q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$B6,r)}, +aD5(){var s=this.f +if(s!=null)s.S(0) +s=$.aX().gcT().id.b +this.f=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.b5I(this))}, +mM(a){var s=0,r=A.n(t.H),q,p=this,o +var $async$mM=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:A.aL("[HomeMyDevices] showDeviceStateDialog, state: "+a.j(0)+" 1") +A.aL("[HomeMyDevices] showDeviceStateDialog, Device State: "+a.b+" mounted: "+(p.c!=null)) +o=p.c +if(o==null){s=1 +break}s=3 +return A.f(A.avc(o,a),$async$mM) +case 3:case 1:return A.l(q,r)}}) +return A.m($async$mM,r)}, +c1(){this.ea() +A.fa("[HomeMyDevices] didChangeDependencies")}, +QD(a){return this.avu(a)}, +avu(a){var s=0,r=A.n(t.z),q,p=this,o +var $async$QD=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:if(a.fr){p.HM(a) +s=1 +break}o=p.c +o.toString +A.jd(null,!1,new A.b5x(p,a),o,null,!0,!0,t.y) +case 1:return A.l(q,r)}}) +return A.m($async$QD,r)}, +HM(a){return this.aw0(a)}, +aw0(a){var s=0,r=A.n(t.z),q=this,p +var $async$HM=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=q.c +p.toString +s=2 +return A.f(A.jd(null,!1,new A.b5C(a),p,null,!0,!0,t.y),$async$HM) +case 2:if(c===!0){p=A.F("Disconnect success",null) +A.cx(p)}return A.l(null,r)}}) +return A.m($async$HM,r)}, +aD4(a){var s,r,q,p +try{q=a.x +s=q==null?"":q +if(J.aM(s)===0)s=a.w +a.x=s +$.aX().gdM().CZ(a)}catch(p){r=A.v(p) +A.fJ("[HomeMyDevices] delete device error: "+J.p(r)) +A.dU(J.p(r))}}, +Pv(){var s=0,r=A.n(t.z),q=this,p +var $async$Pv=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.aL("[HomeMyDevices] _addDevice start") +p=q.c +p.toString +A.bkL(p).ak(new A.b5u(),t.P) +return A.l(null,r)}}) +return A.m($async$Pv,r)}, +HO(a,b,c){return this.aKw(a,b,c)}, +aKw(a,b,c){var s=0,r=A.n(t.H),q,p=this,o,n,m +var $async$HO=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:m="[HomeMyDevices] ["+c +A.aL(m+u.aV+p.d+", deviceModel: "+a.aD()+", start") +o=p.c +if(o==null){s=1 +break}if(p.d){A.aL(m+u.eK) +s=1 +break}n=A.cy(o,!1,t.e) +p.d=!0 +o=p.c +o.toString +s=3 +return A.f(A.asA(o,null,new A.b5H(p),b,n.k1),$async$HO) +case 3:p.d=!1 +A.aL(m+u.X+p.d+", deviceModel: "+a.aD()+", end") +case 1:return A.l(q,r)}}) +return A.m($async$HO,r)}, +HN(a,b){return this.azS(a,b)}, +azS(a,b){var s=0,r=A.n(t.H),q=this,p +var $async$HN=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:if(a instanceof A.fd){A.aL("[HomeMyDevices], ["+b+"] _handleDeviceError, timeout, call showDeviceStateDialog") +q.mM(B.dL)}else if(a instanceof A.k1){p=a.a +if(p===B.de||p===B.df){A.aL("[HomeMyDevices], ["+b+u.s) +q.mM(B.h9)}else if(p===B.iW){A.aL("[HomeMyDevices], ["+b+u.f) +q.mM(B.la)}else if(p===B.iX){A.aL("[HomeMyDevices], ["+b+u.K) +q.mM(B.dL)}else A.dU(a.j(0))}else{p=J.dd(a) +if(B.c.p(p.j(a),"device authorization removed")){A.aL("[HomeMyDevices], ["+b+u.g) +q.mM(B.lb)}else if(B.c.p(p.j(a),"-1")){A.aL("[HomeMyDevices], ["+b+u.G) +q.mM(B.dL)}else A.dU(p.j(a))}return A.l(null,r)}}) +return A.m($async$HN,r)}, +tU(a){return this.aFE(a)}, +aFE(a){var s=0,r=A.n(t.y),q,p=2,o,n=[],m=this,l,k,j,i,h,g +var $async$tU=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:A.aL("[HomeMyDevices] _onDeviceControl deviceModel: "+a.aD()) +p=4 +s=a.fy.eP()&&a.e.length!==0?7:8 +break +case 7:s=9 +return A.f($.aX().gdM().r0(a),$async$tU) +case 9:A.aL(u.fO+a.dy) +i=a.dy +if(i===0){A.aL(u.fO+i+", _showDeviceStateDialog DeviceState.offline, call showDeviceStateDialog") +m.mM(B.eO) +q=!1 +n=[1] +s=5 +break}case 8:s=a.fr?10:11 +break +case 10:s=12 +return A.f($.aX().gdM().iN(),$async$tU) +case 12:l=c +if(l!=null&&l.fr&&l.w===a.w){A.aL("[HomeMyDevices] _onDeviceControl, currentConnectedDeviceModel is the same as the deviceModel, skip connected") +q=!0 +n=[1] +s=5 +break}case 11:k=$.aX().gdM() +s=13 +return A.f(k.pS(a,new A.b5E(m)).t2(0,B.wG,new A.b5F(m,a)),$async$tU) +case 13:i=c +q=i +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 4:p=3 +g=o +j=A.v(g) +A.fJ("[HomeMyDevices] _onDeviceControl error: "+J.p(j)+", deviceModel.key: "+a.w) +m.HN(j,u.bB) +q=!1 +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.dR(B.as) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$tU,r)}, +F(a){var s=null +return A.lb(s,s,new A.HN(new A.b5R(this),s,s,t.A1),s,s)}} +A.b5T.prototype={ +$1(a){var s=this.a +if(s.c!=null&&!s.e){A.fa("[HomeMyDevices] initState") +s.e=!0 +A.aL("[HomeMyDevices] initState, getCloudDeviceList") +$.aX().gdM().tf().ak(new A.b5S(),t.P) +s.BA() +s.aD5()}}, +$S:3} +A.b5S.prototype={ +$1(a){A.fa("[HomeMyDevices] getDeviceList success")}, +$S:20} +A.b5G.prototype={ +$2(a,b){A.fa("[HomeMyDevices] _reloadWidgetTryConnect showAuthorizationDialog, authState: "+b.j(0))}, +$S:41} +A.b5D.prototype={ +$0(){var s=0,r=A.n(t.H),q=this,p +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=q.a.c +p.toString +A.bU(p,!1).cV() +p=q.b +if((p.a.a&30)===0)p.bv(0,!1) +return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.b5I.prototype={ +$1(a){var s=J.dd(a) +A.fa("HomeMyDevices subscriptingToLogoutStream: "+s.j(a)+"}") +if(s.gbC(a)){A.aL("[HomeMyDevices] subscriptingToLogoutStream, deviceModel: "+J.fT(s.gaJ(a)).aD()+", Device State: unbound, call showDeviceStateDialog") +this.a.mM(B.h9)}}, +$S:185} +A.b5x.prototype={ +$1(a){var s=null,r=this.b,q=A.X(r.go==="lan"?A.F("Delete lan device",s):A.F("Delete cloud device",s),s,s,s,s,s,s,s),p=A.X(r.go==="lan"?A.F(u.m,s):A.F(u.el,s),s,s,s,s,s,s,s) +return A.A3(A.a([A.iA(!1,A.X(A.F("Cancel",s),s,s,s,s,s,s,s),s,s,B.a3,s,s,s,s,new A.b5v(a),s,s),A.iA(!1,A.X(A.F("Ok",s),s,s,s,s,s,s,s),s,s,B.a3,s,s,s,s,new A.b5w(this.a,a,r),s,s)],t.p),p,s,q)}, +$S:77} +A.b5v.prototype={ +$0(){return A.bU(this.a,!1).fM(!1)}, +$S:0} +A.b5w.prototype={ +$0(){A.bU(this.b,!1).fM(!0) +this.a.aD4(this.c)}, +$S:0} +A.b5C.prototype={ +$1(a){var s=null,r=A.X(A.F("Disconnect",s),s,s,s,s,s,s,s),q=A.X(A.F(u.af,s),s,s,s,s,s,s,s) +return A.A3(A.a([A.iA(!1,A.X(A.F("Cancel",s),s,s,s,s,s,s,s),s,s,B.a3,s,s,s,s,new A.b5A(a),s,s),A.iA(!1,A.X(A.F("Ok",s),s,s,s,s,s,s,s),s,s,B.a3,s,s,s,s,new A.b5B(a,this.a),s,s)],t.p),q,s,r)}, +$S:77} +A.b5A.prototype={ +$0(){return A.bU(this.a,!1).fM(!1)}, +$S:0} +A.b5B.prototype={ +$0(){var s=this.a +A.cy(s,!1,t.P8).aRW(this.b).cv(new A.b5y(s),new A.b5z(s),t.P)}, +$S:0} +A.b5y.prototype={ +$1(a){var s=this.a +if(s.e!=null&&A.bU(s,!1).kF())A.bU(s,!1).fM(!0)}, +$S:20} +A.b5z.prototype={ +$1(a){var s +A.fJ("[HomeMyDevices] disconnectDevice error: "+J.p(a)) +s=this.a +if(s.e!=null&&A.bU(s,!1).kF())A.bU(s,!1).fM(!1)}, +$S:2} +A.b5u.prototype={ +$1(a){A.aL("[HomeMyDevices] _addDevice end, value: "+A.c(a))}, +$S:2} +A.b5H.prototype={ +$0(){var s=0,r=A.n(t.P),q=this,p +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.aL("[HomeMyDevices] onTimeout, close dialog") +p=q.a +p.d=!1 +p=p.c +p.toString +A.bU(p,!1).cV() +return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:49} +A.b5E.prototype={ +$2(a,b){A.aL("[HomeMyDevices] _onDeviceControl, showAuthorizationDialog, authState: "+b.j(0)+", deviceModel: "+a.aD()) +this.a.HO(a,b,u.bB)}, +$S:41} +A.b5F.prototype={ +$0(){A.aL("[HomeMyDevices] _onDeviceControl, onDeviceControl timeout, deviceModel: "+this.b.aD()) +this.a.HN(new A.fd("onDeviceControl timeout",null),"_onDeviceControl: orcaControlViewModel.onDeviceControl timeout") +return!1}, +$S:46} +A.b5R.prototype={ +$4(a,b,c,d){var s,r,q,p,o=null,n=b.a.gaJ(0) +n=A.a8(n,!0,A.y(n).i("B.E")) +s=this.a +r=A.af(n).i("ad<1,to>") +q=A.a8(new A.ad(n,new A.b5Q(s),r),!0,r.i("aN.E")) +r=A.F("My Devices",o) +n=A.q(a).p2.w +p=t.p +n=A.aa(o,A.bt(A.a([A.X(r,o,o,o,o,n==null?o:n.m5(B.bm),o,o)],p),B.l,B.o,B.k),B.h,B.t,o,o,o,33,o,o,o,o,o,o) +r=A.a8(q,!0,t.l7) +r.push(new A.GG(s.garW(),o)) +return new A.be(B.pz,A.b2(A.a([n,B.k2,A.cf(A.m2(A.acd(r,B.ie,B.aN,B.dy,12,12),o,B.S,o,o,B.aw),1)],p),B.ap,B.o,B.k,B.r),o)}, +$C:"$4", +$R:4, +$S:845} +A.b5Q.prototype={ +$1(a){var s,r=a.go,q=a.gkI(0),p=a.cx +if(p==null)p="" +s=this.a +return new A.to(r==="lan",q,p,a.fr,new A.b5M(s,a),new A.b5N(a),new A.b5O(s,a),new A.b5P(s,a),null)}, +$S:846} +A.b5M.prototype={ +$0(){return this.a.QD(this.b)}, +$S:0} +A.b5N.prototype={ +$1(a){return this.aix(a)}, +aix(a){var s=0,r=A.n(t.P),q=this,p +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=q.a +$.aX().gcT().Mk(a,p.w).ak(new A.b5L(p,a),t.P) +return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:319} +A.b5L.prototype={ +$1(a){var s,r,q +A.u("HomeMyDevices _onDeviceControl modifyDeviceName result: "+a,null) +if(a){s=$.aX().gdM() +r=this.a +q=r.x +r=q==null||q===""?r.w:q +s.b_t(r,this.b)}}, +$S:26} +A.b5O.prototype={ +$0(){var s=this.b +A.u("HomeMyDevices onCreateProject, data: "+s.aD(),null) +if(!s.fr)this.a.tU(s) +$.aX().gdM().ac6(s.cy)}, +$S:0} +A.b5P.prototype={ +$0(){var s=0,r=A.n(t.z),q,p=this,o,n +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:o=p.a +n=p.b +s=3 +return A.f(o.tU(n).ak(new A.b5K(o,n),t.z),$async$$0) +case 3:q=b +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$0,r)}, +$S:69} +A.b5K.prototype={ +$1(a){return this.aiw(a)}, +aiw(a){var s=0,r=A.n(t.P),q=this,p +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=a?2:3 +break +case 2:p=q.a +p.J(new A.b5J(q.b)) +s=4 +return A.f(p.B6(),$async$$1) +case 4:$.aX().gdM().Gv(B.ajH) +case 3:return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:320} +A.b5J.prototype={ +$0(){this.a.iO(!0,"home_my_devices onDeviceControl success")}, +$S:0} +A.JP.prototype={ +a0(){return new A.afZ(A.w(t.N,t.y))}} +A.afZ.prototype={ +m(){A.as().$1("HomeRecentFiles dispose") +this.ar()}, +aj(){this.aw() +$.aw.p2$.push(new A.b6c(this))}, +a7_(a){var s,r,q,p,o=this,n=t.P8 +if(a){s=o.c +s.toString +s=A.cy(s,!1,n).a +r=A.af(s).i("ad<1,h>") +q=A.a8(new A.ad(s,new A.b62(),r),!0,r.i("aN.E")) +r=o.c +r.toString +A.cy(r,!1,n).acq(q)}else{s=o.e +r=A.y(s).i("aR<1>") +p=r.i("bh") +q=A.a8(new A.bh(new A.aR(s,r),new A.b63(o),p),!0,p.i("B.E")) +p=o.c +p.toString +A.cy(p,!1,n).acq(q)}}, +IP(){var s=0,r=A.n(t.H),q=this,p,o,n,m +var $async$IP=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:m=q.c +m.toString +p=A.F("delete_selected_files_confirm_title",null) +o=A.F("delete_selected_files_confirm_message",null) +n=A.F("delete_confirm_yes",null) +s=2 +return A.f(A.ble(A.F("delete_confirm_no",null),B.kN,n,m,o,p),$async$IP) +case 2:if(b===!0)q.a7_(!1) +return A.l(null,r)}}) +return A.m($async$IP,r)}, +IO(){var s=0,r=A.n(t.H),q=this,p,o,n,m +var $async$IO=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:m=q.c +m.toString +p=A.F("clear_all_files_confirm_title",null) +o=A.F("clear_all_files_confirm_message",null) +n=A.F("delete_confirm_yes",null) +s=2 +return A.f(A.ble(A.F("delete_confirm_no",null),B.kN,n,m,o,p),$async$IO) +case 2:if(b===!0)q.a7_(!0) +return A.l(null,r)}}) +return A.m($async$IO,r)}, +F(a){var s=null +return A.lb(s,s,A.fA(new A.b6b(this),t.P8),s,s)}} +A.b6c.prototype={ +$1(a){var s=this.a +if(s.c!=null&&!s.f){A.as().$1("HomeRecentFiles initState") +s.f=!0 +s=s.c +s.toString +A.cy(s,!1,t.P8).zM()}}, +$S:3} +A.b62.prototype={ +$1(a){return a.b}, +$S:849} +A.b63.prototype={ +$1(a){return this.a.e.h(0,a)===!0}, +$S:21} +A.b6b.prototype={ +$3(a,b,c){var s,r,q,p,o=null,n=b.a,m=this.a,l=A.af(n).i("ad<1,o>"),k=A.a8(new A.ad(n,new A.b68(m,a),l),!0,l.i("aN.E")) +l=A.F("Recent Open Files",o) +s=A.q(a).p2.w +r=t.p +s=A.a([A.X(l,o,o,o,o,s==null?o:s.m5(B.bm),o,o)],r) +l=k.length===0 +if(!l){q=A.q(a) +p=m.d?A.F("Delete selected",o):A.F("Batch processing",o) +B.b.G(s,A.a([B.tg,A.bt(A.a([B.fw,A.pK(4,q.db,33,A.X(p,o,o,o,o,A.cb(o,o,A.q(a).db,o,o,o,o,o,o,o,o,12,o,o,o,o,o,!0,o,o,o,o,o,o,o,o),o,o),A.aa(o,o,B.h,o,o,o,o,o,o,o,o,o,o,o),new A.b69(m),B.he,102),B.cf,A.pK(4,A.q(a).db,33,A.X(A.F("Clear files",o),o,o,o,o,A.cb(o,o,A.q(a).db,o,o,o,o,o,o,o,o,12,o,o,o,o,o,!0,o,o,o,o,o,o,o,o),o,o),B.nH,new A.b6a(m),B.he,102)],r),B.l,B.cD,B.k)],r))}m=A.a([A.aa(o,A.bt(s,B.l,B.o,B.k),B.h,B.t,o,o,o,33,o,o,o,o,o,o),B.k2],r) +if(l)m.push(A.cf(A.cL(A.b2(A.a([B.a22,A.X(A.F("No open files",o),o,o,o,o,o,o,o)],r),B.l,B.ac,B.k,B.r),o,o),1)) +else m.push(A.cf(A.m2(A.acd(k,B.ie,B.aN,B.dy,12,12),o,B.S,o,o,B.aw),1)) +return new A.be(B.pz,A.b2(m,B.ap,B.o,B.k,B.r),o)}, +$C:"$3", +$R:3, +$S:850} +A.b68.prototype={ +$1(a){var s,r,q,p=null,o=this.a,n=o.d,m=o.e.h(0,a.b),l=o.d?p:new A.b66(this.b,a),k=A.bq(6),j=o.c +j.toString +j=A.q(j).ax +s=j.p4 +j=s==null?j.k2:s +s=A.bq(6) +s=A.aa(p,A.xd(a.d,B.M,p,p),B.h,p,p,new A.bb(j,p,p,s,p,p,p,B.E),p,148,p,B.dO,p,p,p,200) +j=o.c +j.toString +j=A.q(j).p2.w +j=A.X(a.a,1,B.al,p,!0,A.cb(p,p,j==null?p:j.b,p,p,p,p,p,p,p,p,14,p,p,B.K,p,p,!0,p,p,p,p,p,p,p,p),p,p) +r=o.c +r.toString +r=A.q(r).p2.Q +q=t.p +q=A.a([A.aa(p,A.eQ(!1,p,!0,A.b2(A.a([s,B.k3,new A.be(B.wO,j,p),new A.be(B.a_w,A.X(a.c,p,p,p,p,A.cb(p,p,r==null?p:r.b,p,p,p,p,p,p,p,p,12,p,p,B.u,p,p,!0,p,p,p,p,p,p,p,p),p,p),p)],q),B.ap,B.o,B.k,B.r),p,!0,p,p,p,p,p,p,p,p,p,l,p,p,p,p),B.h,p,p,new A.bb(B.t,p,p,k,p,p,p,B.E),p,p,p,p,p,p,p,200)],q) +if(n)q.push(A.eH(p,new A.Hw(m===!0,new A.b67(o,a),p),p,p,8,p,8,p)) +return A.cq(B.a2,q,B.w,B.W,p)}, +$S:851} +A.b67.prototype={ +$1(a){var s=this.a +s.J(new A.b64(s,this.b,a))}, +$S:229} +A.b64.prototype={ +$0(){this.a.e.n(0,this.b.b,this.c===!0)}, +$S:0} +A.b66.prototype={ +$0(){A.cy(this.a,!1,t.P8).afv(this.b.b)}, +$S:0} +A.b69.prototype={ +$0(){var s=this.a +if(s.d)s.IP() +s.J(new A.b65(s))}, +$S:4} +A.b65.prototype={ +$0(){var s=this.a +s.d=!s.d}, +$S:0} +A.b6a.prototype={ +$0(){this.a.IO()}, +$S:4} +A.JQ.prototype={ +a0(){return new A.ag_(A.bvN(),new A.bG(null,t.A),B.cL)}, +aXQ(a){return this.c.$1(a)}} +A.ag_.prototype={ +aj(){this.aw() +A.as().$1("HomeSideMenuWidget initState") +this.aEo() +var s=this.d.b +new A.aG(s,A.y(s).i("aG<1>")).bL(new A.b6n())}, +Ih(a){this.a.aXQ(a)}, +aEo(){var s=this,r="My Devices",q=null,p="Recent Files",o=t.zn +s.r=A.a([A.a8d(B.Nu,new A.b6h(s),A.F(r,q)),A.a8d(B.Nt,new A.b6i(s),A.F(p,q))],o) +s.w=A.a([A.a8d(B.Nu,new A.b6j(s),A.F(r,q)),A.a8d(B.Nt,new A.b6k(s),A.F(p,q))],o)}, +c1(){this.ea() +A.as().$1("HomeSideMenuWidget didChangeDependencies")}, +b1(a){this.bb(a) +A.as().$1("HomeSideMenuWidget didUpdateWidget")}, +m(){A.as().$1("HomeSideMenuWidget dispose") +this.d.b.L(0) +this.ar()}, +F(a){return new A.lQ(new A.b6m(this),null)}, +aKF(a,b){var s,r=null,q=A.aa(r,A.xd(b,B.M,r,r),B.h,r,r,B.uK,r,32,r,r,r,r,r,32),p=this.c +p.toString +p=A.q(p).p2.w +s=t.p +p=A.bt(A.a([q,B.cf,new A.ep(B.RJ,A.X(a,r,B.al,r,r,p==null?r:p.f4(16,B.bm),r,r),r)],s),B.l,B.ac,B.k) +q=this.c +q.toString +return A.aa(r,new A.aB(185,r,A.b2(A.a([p,B.anv,new A.aB(120,r,A.pK(4,A.q(q).ax.b,40,A.X(A.F("Logout",r),r,r,r,r,r,r,r),B.nH,new A.b6l(this),B.he,1/0),r),B.anz],s),B.l,B.ac,B.aE,B.r),r),B.h,r,r,r,r,r,r,B.wU,r,r,r,r)}, +aD7(){return A.fA(new A.b6g(this),t.PO)}, +aD6(a){var s,r,q,p,o=this,n=null,m=a.b +if(m.f==="online"&&m.c.length!==0){s=A.Y(B.d.aa(25.5),0,0,0) +m=o.aKF(m.b,m.r) +r=a.b +q=A.aa(n,A.xd(r.r,B.M,n,n),B.h,n,n,B.uK,n,32,n,n,n,n,n,32) +p=o.c +p.toString +p=A.q(p).p2.w +p=p==null?n:p.f4(16,B.bm) +s=A.cL(new A.Ib(m,A.bt(A.a([q,B.cf,new A.ep(new A.au(0,162,0,40),A.X(r.b,n,B.al,n,n,p,n,n),n),B.pO],t.p),B.l,B.ac,B.aE),B.n,B.t,s,B.Z,o.e),n,n) +m=s}else{m=A.F("Login/Register",n) +s=o.c +s.toString +s=A.q(s).p2.w +m=A.eQ(!1,n,!0,A.cL(A.X(m,n,n,n,n,s==null?n:s.f4(16,B.bm),n,n),n,n),n,!0,n,n,n,n,n,n,n,n,n,new A.b6d(),n,n,n,n)}return new A.aB(262,n,A.b2(A.a([new A.aB(262,160,m,n),B.ha,B.ba],t.p),B.l,B.o,B.k,B.r),n)}} +A.b6n.prototype={ +$1(a){A.u("HomeSideMenuWidget sideMenu.addListener: "+a,null)}, +$S:23} +A.b6h.prototype={ +$2(a,b){var s,r +A.as().$1("\u4fa7\u8fb9\u680f\u70b9\u51fb: My Devices, index: "+a) +s=this.a +r=s.d +r.a=a +r.b.q(0,a) +if(a!==s.f){s.f=a +s.Ih(a)}}, +$S:95} +A.b6i.prototype={ +$2(a,b){var s,r +A.as().$1("\u4fa7\u8fb9\u680f\u70b9\u51fb: Recent Files, index: "+a) +s=this.a +r=s.d +r.a=a +r.b.q(0,a) +if(a!==s.f){s.f=a +s.Ih(a)}}, +$S:95} +A.b6j.prototype={ +$2(a,b){var s,r +A.as().$1("\u4fa7\u8fb9\u680f\u70b9\u51fb: My Devices, index: "+a) +s=this.a +r=s.d +r.a=a +r.b.q(0,a) +if(a!==s.f){s.f=a +s.Ih(a)}}, +$S:95} +A.b6k.prototype={ +$2(a,b){var s,r +A.as().$1("\u4fa7\u8fb9\u680f\u70b9\u51fb: Recent Files, index: "+a) +s=this.a +r=s.d +r.a=a +r.b.q(0,a) +if(a!==s.f){s.f=a +s.Ih(a)}}, +$S:95} +A.b6m.prototype={ +$2(a,b){return this.a.aD7()}, +$S:852} +A.b6l.prototype={ +$0(){var s=this.a,r=s.c +r.toString +A.bU(r,!1).cV() +s=s.c +s.toString +A.cy(s,!1,t.P8).aRU() +A.bmO()}, +$S:4} +A.b6g.prototype={ +$3(a,b,c){var s,r,q,p=this.a,o=A.q(a).ax,n=o.p4 +o=n==null?o.k2:n +n=A.Xw("#0C63E2") +s=B.d.aa(25.5) +n=n.a +n=A.Y(s,n>>>16&255,n>>>8&255,n&255) +r=A.Xw("#0C63E2").a +r=A.Y(s,r>>>16&255,r>>>8&255,r&255) +s=A.q(a) +q=A.q(a) +q=A.bvO(o,70,p.x,B.c1,20,B.aH,48,8,B.Z,262,n,r,s.p2.x,!1,q.p2.x) +s=p.aD6(b) +o=b.b +if(o.f==="online"&&o.c.length!==0){o=p.w +o===$&&A.b()}else{o=p.r +o===$&&A.b()}return A.bvM(-1,p.d,o,new A.b6f(p),q,s)}, +$C:"$3", +$R:3, +$S:853} +A.b6f.prototype={ +$1(a){var s +if(a!==B.cL){A.as().$1("HomeSideMenuWidget setState: open") +s=this.a +s.J(new A.b6e(s))}}, +$S:854} +A.b6e.prototype={ +$0(){this.a.x=B.cL}, +$S:0} +A.b6d.prototype={ +$0(){A.aFh()}, +$S:0} +A.Ml.prototype={ +a0(){return new A.aiy()}} +A.aiy.prototype={ +aj(){this.aw() +$.aw.p2$.push(new A.baT(this))}, +m(){A.as().$1("PrintHistory dispose") +this.ar()}, +F(a){var s=null,r=A.F("Print history",s),q=A.q(a).p2.w,p=t.p +return A.lb(s,s,new A.be(B.pz,A.b2(A.a([A.aa(s,A.bt(A.a([A.X(r,s,s,s,s,q==null?s:q.m5(B.bm),s,s)],p),B.l,B.o,B.k),B.h,B.t,s,s,s,33,s,s,s,s,s,s),B.k2],p),B.ap,B.o,B.k,B.r),s),s,s)}} +A.baT.prototype={ +$1(a){var s=this.a +if(s.c!=null&&!s.d)s.d=!0}, +$S:3} +A.od.prototype={ +a0(){return new A.Rl(A.w(t.S,t.a),A.w(t.N,t.z))}} +A.Rl.prototype={ +aKz(a){var s,r=this +if(r.Q||a.length===0)return +r.J(new A.b3i(r)) +A.mx(a) +s=r.as +if(s!=null)s.S(0) +r.as=A.bZ(B.ZO,new A.b3j(r))}, +HL(){var s,r=this +if(!r.Q)return +s=r.as +if(s!=null)s.S(0) +r.as=null +r.J(new A.b38(r)) +A.dR(B.as)}, +aj(){this.aw() +$.aw.p2$.push(new A.b3r(this))}, +lj(a){var s=0,r=A.n(t.H),q,p=this,o +var $async$lj=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p.d6(B.f,"_showDeviceStateDialog: "+a.j(0)) +p.d6(B.f,"_showDeviceStateDialog: "+a.b+" mounted: "+(p.c!=null)) +o=p.c +if(o==null){s=1 +break}s=3 +return A.f(A.avc(o,a),$async$lj) +case 3:case 1:return A.l(q,r)}}) +return A.m($async$lj,r)}, +axp(){var s,r=this +r.d6(B.f,"_subscriptingToLogoutStream") +s=r.z +if(s!=null)s.S(0) +s=$.aX().gcT().id.b +r.z=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.b3k(r))}, +m(){var s=this,r=s.y +if(r!=null)r.S(0) +s.y=null +r=s.z +if(r!=null)r.S(0) +s.z=null +r=s.as +if(r!=null)r.S(0) +s.as=null +s.d6(B.f,"dispose") +s.ar()}, +aEe(){var s,r=this +if(r.x)return +r.x=!0 +s=$.aX().gcz().z +r.y=new A.aG(s,A.y(s).i("aG<1>")).bL(new A.b3c(r))}, +Ar(){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h +var $async$Ar=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:n.d6(B.f,"_addOtherDevice start") +p=4 +m=new A.aq(new A.a_($.ab,t.tr),t.VY) +j=n.c +j.toString +A.bkL(j).ak(new A.b33(n,m),t.P).dc(new A.b34(n,m)) +s=7 +return A.f(m.a,$async$Ar) +case 7:l=b +n.d6(B.f,"_addOtherDevice completed, result: "+A.c(l)) +q=l +s=1 +break +p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +n.d6(B.p,"_addOtherDevice exception: "+A.c(k)) +q=!1 +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Ar,r)}, +wX(){var s=0,r=A.n(t.z),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f +var $async$wX=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:m.d6(B.f,"_init()") +p=4 +m.d6(B.f,"_init, Loading filament config...") +A.mx("Loading filament config...") +h=$.aX() +l=h.gdM() +s=7 +return A.f(l.iN(),$async$wX) +case 7:k=b +if(k==null){m.d6(B.f,"_init, wcp.getConnectedMachine is null") +n=[1] +s=5 +break}m.d6(B.f,"_init, connectDevice & subscribeMachineState start, model: "+k.aD()) +k.iO(!0,"_init, setConnected: true") +h.gcz().oC(k.ao()) +s=8 +return A.f(l.pS(k,new A.b39(m)),$async$wX) +case 8:j=b +if(j)m.d6(B.f,"_init, connectDevice & subscribeMachineState success") +else m.d6(B.f,"_init, connectDevice & subscribeMachineState failed") +n.push(6) +s=5 +break +case 4:p=3 +f=o +i=A.v(f) +m.d6(B.p,"_init, error: "+J.p(i)) +m.J(new A.b3a(m,i)) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.dR(B.as) +h=m.a.c +s=h.length===0?9:11 +break +case 9:h=m.Hn() +s=12 +return A.f(h,$async$wX) +case 12:s=10 +break +case 11:m.J(new A.b3b(m)) +case 10:s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$wX,r)}, +SE(){var s=0,r=A.n(t.H),q=this +var $async$SE=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.eC(B.dN,new A.b3e(q),t.P) +return A.l(null,r)}}) +return A.m($async$SE,r)}, +wW(){var s=0,r=A.n(t.wI),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d +var $async$wW=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +g=$.aX() +l=g.gdM() +s=7 +return A.f(l.iN(),$async$wW) +case 7:k=b +if(k==null){m.d6(B.f,"_onDeviceConnected, wcp.getConnectedMachine is null") +q=null +n=[1] +s=5 +break}p=9 +s=k.fy.eP()&&k.e.length!==0?12:13 +break +case 12:s=14 +return A.f(g.gdM().r0(k),$async$wW) +case 14:A.aL(u.j+k.dy) +if(k.dy===0){A.aL(u.j+k.dy+", call showDeviceStateDialog") +m.lj(B.eO) +q=k +n=[1] +s=5 +break}case 13:p=4 +s=11 +break +case 9:p=8 +e=o +j=A.v(e) +m.d6(B.p,"_getDeviceInfo error: "+J.p(j)) +m.B2(j,u.i) +q=null +n=[1] +s=5 +break +s=11 +break +case 8:s=4 +break +case 11:m.d6(B.f,"_onDeviceConnected, connectDevice & subscribeMachineState start, model: "+k.aD()) +g.gcz().oC(k.ao()) +s=15 +return A.f(l.pS(k,new A.b35(m)),$async$wW) +case 15:i=b +k.iO(i,"_onDeviceConnected, setConnected: "+A.c(i)) +q=k +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 4:p=3 +d=o +h=A.v(d) +m.d6(B.p,"_onDeviceConnected, error: "+J.p(h)) +m.B2(h,u.i) +throw d +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.dR(B.as) +m.d6(B.f,"_onDeviceConnected, finally") +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$wW,r)}, +B2(a,b){return this.azR(a,b)}, +azR(a,b){var s=0,r=A.n(t.H),q=this,p +var $async$B2=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:if(a instanceof A.k1){p=a.a +if(p===B.de||p===B.df){A.aL("[FilamentExtruderMappingPage] ["+b+u.s) +q.lj(B.h9)}else if(p===B.iW){A.aL("[FilamentExtruderMappingPage] ["+b+u.f) +q.lj(B.la)}else if(p===B.iX){A.aL("[FilamentExtruderMappingPage] ["+b+u.K) +q.lj(B.dL)}else A.dU(a.j(0))}else{p=J.dd(a) +if(B.c.p(p.j(a),"device authorization removed")){A.aL("[FilamentExtruderMappingPage] ["+b+u.g) +q.lj(B.lb)}else if(B.c.p(p.j(a),"-1")){A.aL("[FilamentExtruderMappingPage] ["+b+u.G) +q.lj(B.dL)}else A.dU(p.j(a))}return A.l(null,r)}}) +return A.m($async$B2,r)}, +u0(a){return this.aGa(a)}, +aGa(a){var s=0,r=A.n(t.y),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e +var $async$u0=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:m.d6(B.f,"_onSelectDevice, start, model: "+a.aD()) +p=4 +m.aKz(A.F("Connecting...",null)) +h=$.aX() +l=h.gdM() +s=a.fy.eP()&&a.e.length!==0?7:8 +break +case 7:s=9 +return A.f(h.gdM().r0(a),$async$u0) +case 9:A.aL(u.dd+a.dy) +g=a.dy +if(g===0){A.aL(u.dd+g+", call showDeviceStateDialog") +m.lj(B.eO) +m.HL() +q=!1 +n=[1] +s=5 +break}case 8:s=10 +return A.f(l.iN(),$async$u0) +case 10:k=c +if(k!=null&&k.fr&&k.w===a.w){m.d6(B.f,"_onSelectDevice, currentConnectedModel is connected and key is the same as the model, model: "+a.aD()) +m.HL() +q=!0 +n=[1] +s=5 +break}s=k!=null&&k.fr&&k.w!==a.w?11:12 +break +case 11:m.d6(B.f,"_onSelectDevice, currentConnectedModel is connected and key is not the same as the model, model: "+a.aD()) +s=13 +return A.f(l.aRX(k,!0),$async$u0) +case 13:h.gcT() +g=k.w +A.Z(B.f,"[LavaDeviceVM] [filament_extruder_mapping_page _onSelectDevice] removeDeviceService, key: "+g) +A.he(null,g) +case 12:m.d6(B.f,"_onSelectDevice, connectDevice & subscribeMachineState start, model: "+a.aD()) +h.gcz().oC(a.ao()) +s=14 +return A.f(l.pS(a,new A.b3f(m)),$async$u0) +case 14:j=c +if(j)m.SE() +m.d6(B.f,"_onSelectDevice completed, result: "+A.c(j)) +q=j +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 4:p=3 +e=o +i=A.v(e) +m.d6(B.p,"_onSelectDevice, error: "+J.p(i)) +m.B2(i,u.i) +if(i instanceof A.k1)h=i.a===B.de||i.a===B.df +else h=!1 +if(h){q=!1 +n=[1] +s=5 +break}throw e +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.bZ(B.bK,new A.b3g(m)) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$u0,r)}, +Hn(){var s=0,r=A.n(t.z),q=1,p,o=[],n=this,m,l,k,j,i,h,g +var $async$Hn=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:q=3 +A.mx("Loading filament config...") +m=$.aX().gcz() +s=6 +return A.f(m.aj2(),$async$Hn) +case 6:l=b +if(l==null||J.i(l.b,"data")==null){n.d6(B.p,"_getFilamentConfig, result is null, Unable to get current slicing details, go to the Prepare page to initiate slicing") +i=A.ae(u.aj) +throw A.d(i)}k=J.i(l.b,"data") +if(k!=null&&t.f.b(k)){n.f=A.f7(k,t.N,t.z) +n.J(new A.b36(n))}else{n.d6(B.p,"_getFilamentConfig, filamentConfig is null, Unable to get current slicing details, go to the Prepare page to initiate slicing") +i=A.ae(u.aj) +throw A.d(i)}o.push(5) +s=4 +break +case 3:q=2 +g=p +j=A.v(g) +n.d6(B.p,"_getFilamentConfig, error: "+J.p(j)) +n.J(new A.b37(n,j)) +o.push(5) +s=4 +break +case 2:o=[1] +case 4:q=1 +A.dR(B.as) +s=o.pop() +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$Hn,r)}, +d6(a,b){var s="[FilamentExtruderMappingPage] "+b +switch(a.a){case 2:A.aL(s) +break +case 3:A.fJ(s) +break +case 1:A.CD(s) +break +case 0:A.fa(s) +break +default:A.fa(s) +break}}, +BO(a,b,c){return this.aKv(a,b,c)}, +aKv(a,b,c){var s=0,r=A.n(t.H),q,p=this,o,n,m +var $async$BO=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:m="[FilamentExtruderMappingPage] ["+c+u.X +A.fa(m+p.at+", deviceModel: "+a.aD()+", start") +if(p.c==null){s=1 +break}if(p.at){A.aL(m+"true, skip") +s=1 +break}o=$.aX().gcT() +p.at=!0 +n=p.c +n.toString +s=3 +return A.f(A.asA(n,null,new A.b3h(p,c),b,o.k1),$async$BO) +case 3:p.at=!1 +A.aL(m+p.at+", deviceModel: "+a.aD()+", end") +case 1:return A.l(q,r)}}) +return A.m($async$BO,r)}, +F(a){var s,r,q,p=this,o=null +if(p.d)s=B.dI +else if(p.r){s=p.w +s=A.X(A.F(B.c.cw(A.dm(s,"Exception:","")),o),o,o,o,o,A.q(a).p2.w,o,o) +r=A.F("Ok",o) +q=A.q(a).p2.w +s=A.cL(A.b2(A.a([s,B.i5,new A.aB(100,44,A.f6(!1,A.X(r,o,o,o,o,q==null?o:q.e5(A.q(a).ax.c,14,B.u),o,o),o,o,B.a3,o,o,o,o,new A.b3l(),o,o),o)],t.p),B.l,B.ac,B.k,B.r),o,o)}else{s=p.f +r=p.a +q=r.c +r=r.d +s=new A.a_d(A.C(["filename",q,"isPrint",r],t.N,t.z),r,q,s,p.gaxl(),new A.b3m(p),p.gaKA(),new A.b3n(p),p.gaG8(),p.gauP(),o)}return A.lb(o,o,s,o,o)}} +A.b3i.prototype={ +$0(){this.a.Q=!0}, +$S:0} +A.b3j.prototype={ +$0(){var s=this.a +s.HL() +s.d6(B.f,"\u8bbe\u5907\u64cd\u4f5cloading\u8d85\u65f6\uff0c\u81ea\u52a8\u9690\u85cf")}, +$S:0} +A.b38.prototype={ +$0(){this.a.Q=!1}, +$S:0} +A.b3r.prototype={ +$1(a){var s,r=this.a +r.d6(B.f,"initState") +if(r.c!=null){r.aEe() +s=$.aX() +s.gdM().oG() +s.gek().oG() +s.gek().w4().ak(new A.b3p(r),t.P).dc(new A.b3q(r)) +r.axp()}}, +$S:3} +A.b3p.prototype={ +$1(a){var s=this.a +s.d6(B.f,"initState getUserInfo success, getCloudDeviceList()") +s.wX() +$.aX().gdM().tf()}, +$S:20} +A.b3q.prototype={ +$1(a){var s=this.a +s.d6(B.p,"initState, error: "+J.p(a)) +s.J(new A.b3o(s,a))}, +$S:2} +A.b3o.prototype={ +$0(){var s=this.a +s.d=!1 +s.r=!0 +s.w=J.p(this.b)}, +$S:0} +A.b3k.prototype={ +$1(a){var s=this.a,r=J.dd(a) +s.d6(B.f,"_subscriptingToLogoutStream: "+r.j(a)) +if(r.gbC(a)){s.d6(B.f,"_subscriptingToLogoutStream deviceModel: "+J.fT(r.gaJ(a)).aD()+", call showDeviceStateDialog") +s.lj(B.eO)}}, +$S:185} +A.b3c.prototype={ +$1(a){var s=this.a,r=J.dd(a) +s.d6(B.f,"callFlutterMethodStream: "+r.j(a)) +if(J.e(r.h(a,"cmd"),"devicepage_add_device"))s.Ar()}, +$S:110} +A.b33.prototype={ +$1(a){this.a.d6(B.f,"_addOtherDevice end, value: "+A.c(a)) +this.b.bv(0,!0)}, +$S:2} +A.b34.prototype={ +$1(a){this.a.d6(B.p,"_addOtherDevice error: "+A.c(a)) +this.b.bv(0,!1)}, +$S:2} +A.b39.prototype={ +$2(a,b){this.a.d6(B.f,"_init, onDeviceControl, showAuthorizationDialog, authState: "+b.j(0))}, +$S:41} +A.b3a.prototype={ +$0(){this.a.w=J.p(this.b)}, +$S:0} +A.b3b.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.b3e.prototype={ +$0(){var s=0,r=A.n(t.P),q=1,p,o=this,n,m,l,k,j,i,h +var $async$$0=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:q=3 +l=$.aX() +s=6 +return A.f(A.xq(l.gcT()),$async$$0) +case 6:n=b +s=n?7:8 +break +case 7:k=o.a.c +k.toString +s=9 +return A.f(A.aa4(k),$async$$0) +case 9:m=b +if(J.e(m,!1))A.BP(l.gcT(),!1) +case 8:q=1 +s=5 +break +case 3:q=2 +h=p +l=o.a +k=l.c +if(k!=null){i=A.F("Could not get device version",null) +A.aLS(k,A.F("Confirm",null),"assets/images/deviceNoResponse.webp",new A.b3d(l),i,t.z)}s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$$0,r)}, +$S:49} +A.b3d.prototype={ +$0(){var s=this.a.c +s.toString +A.bU(s,!1).cV()}, +$S:0} +A.b35.prototype={ +$2(a,b){var s=this.a +s.d6(B.f,"_onDeviceConnected, showAuthorizationDialog, authState: "+b.j(0)) +s.BO(a,b,"_onDeviceConnected: orcaControlViewModel.onDeviceControl")}, +$S:41} +A.b3f.prototype={ +$2(a,b){var s=this.a +s.d6(B.f,"_onSelectDevice, showAuthorizationDialog, authState: "+b.j(0)) +s.BO(a,b,u.k)}, +$S:41} +A.b3g.prototype={ +$0(){this.a.HL()}, +$S:0} +A.b36.prototype={ +$0(){this.a.d=!1}, +$S:0} +A.b37.prototype={ +$0(){var s=this.a +s.d=!1 +s.r=!0 +s.w=J.p(this.b)}, +$S:0} +A.b3h.prototype={ +$0(){var s=0,r=A.n(t.P),q=this,p +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.aL("[FilamentExtruderMappingPage] ["+q.b+"] onTimeout, close dialog") +p=q.a +p.at=!1 +p=p.c +p.toString +A.bU(p,!1).cV() +return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:49} +A.b3l.prototype={ +$0(){$.aX().gcz().Ds()}, +$S:0} +A.b3m.prototype={ +$0(){var s=0,r=A.n(t.y),q,p=this +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=3 +return A.f(p.a.Ar(),$async$$0) +case 3:q=b +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$$0,r)}, +$S:72} +A.b3n.prototype={ +$2(a,b){var s=this.a +s.d6(B.p,"uploadFileFailedCallback: "+a+", "+A.c(b)+", call showDeviceStateDialog") +s.lj(B.Z5)}, +$S:857} +A.yk.prototype={ +a0(){return new A.ajL()}} +A.ajL.prototype={ +aj(){this.aw() +this.nm().ak(new A.bcy(this),t.P)}, +nm(){var s=0,r=A.n(t.A9),q +var $async$nm=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=3 +return A.f(A.LU(),$async$nm) +case 3:q=b +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$nm,r)}, +F(a){var s=null,r=A.q(a).p2.r,q=t.p +return A.lb(s,s,A.cL(new A.ep(B.RT,A.b2(A.a([A.X("Welcome to Snapmaker Orca",s,s,s,s,r==null?s:r.Vi(30),s,s),B.ba,A.bt(A.a([A.X("Version: "+this.d,s,s,s,s,s,s,s),B.tg,A.X("BuildNumber: "+this.e,s,s,s,s,s,s,s)],q),B.l,B.o,B.k),B.ba,A.f6(!1,B.auc,s,s,B.a3,s,s,s,s,new A.bcq(a),s,s),B.ba,A.f6(!1,B.au7,s,s,B.a3,s,s,s,s,new A.bcr(a),s,s),B.ba,A.f6(!1,B.aui,s,s,B.a3,s,s,s,s,new A.bcs(a),s,s),B.ba,A.f6(!1,B.au9,s,s,B.a3,s,s,s,s,new A.bct(a),s,s),B.ba,A.f6(!1,B.auk,s,s,B.a3,s,s,s,s,new A.bcu(a),s,s),B.ba,A.f6(!1,B.au8,s,s,B.a3,s,s,s,s,new A.bcv(a),s,s),B.ba,A.f6(!1,B.au6,s,s,B.a3,s,s,s,s,new A.bcw(a),s,s)],q),B.l,B.o,B.k,B.r),s),s,s),s,s)}} +A.bcy.prototype={ +$1(a){var s=this.a +s.J(new A.bcx(s,a))}, +$S:858} +A.bcx.prototype={ +$0(){var s=this.a,r=this.b +s.d=r.c +s.e=r.d}, +$S:0} +A.bcq.prototype={ +$0(){A.Cu(this.a,"/home",t.X)}, +$S:0} +A.bcr.prototype={ +$0(){A.Cu(this.a,"/deviceControl",t.X)}, +$S:0} +A.bcs.prototype={ +$0(){A.Cu(this.a,"/deviceControlOld",t.X)}, +$S:0} +A.bct.prototype={ +$0(){A.Cu(this.a,"/preUploadAndPrint",t.X)}, +$S:0} +A.bcu.prototype={ +$0(){A.Cu(this.a,"/preUpload",t.X)}, +$S:0} +A.bcv.prototype={ +$0(){A.Cu(this.a,"/testPrintUploadTask",t.X)}, +$S:0} +A.bcw.prototype={ +$0(){A.Cu(this.a,"/testDownloadFile",t.X)}, +$S:0} +A.Bc.prototype={ +F(a){var s=null +return A.lb(A.A6(s,s,s,s,s,s,A.X(A.F("error",s),s,s,s,s,s,s,s),s),s,A.cL(A.b2(A.a([B.a27,B.ba,A.X(A.F("Not Found Page",s),s,s,s,s,s,s,s),B.ba,A.X("route: "+A.c(A.La(a,t.X).b.a),s,s,s,s,s,s,s),B.ba,new A.aB(120,36,A.f6(!1,A.X(A.F("Go Back",s),s,s,s,s,s,s,s),s,s,B.a3,s,s,s,s,new A.ayg(a),s,s),s)],t.p),B.l,B.ac,B.k,B.r),s,s),s,s)}} +A.ayg.prototype={ +$0(){A.bU(this.a,!1).cV()}, +$S:0} +A.o8.prototype={ +F(a){var s=null,r=A.bq(16) +return A.Iy(s,this.z,this.asR(a),s,s,B.wX,s,new A.cu(r,B.x),s)}, +asR(a){var s,r,q,p,o=this,n=null,m=o.ax +if(m==null)m=1/0 +s=o.ch +r=t.p +q=A.a([],r) +if(o.r){p=o.e +if(p==null)p="" +B.b.G(q,A.a([A.bLM(new A.atM(a),new A.atN(a),p)],r))}q.push(A.cf(A.m2(o.asK(a),n,B.S,n,n,B.aw),1)) +return new A.ep(new A.au(0,m,0,s),A.bmx(new A.aB(n,s,A.b2(q,B.l,B.o,B.k,B.r),n)),n)}, +asK(a){var s=A.a([],t.p) +B.b.G(s,this.x) +return new A.be(B.bW,A.b2(s,B.cv,B.o,B.aE,B.r),null)}} +A.atN.prototype={ +$0(){A.bU(this.a,!1).cV()}, +$S:0} +A.atM.prototype={ +$0(){A.bU(this.a,!1).cV()}, +$S:0} +A.a5h.prototype={ +F(a){var s=null,r=A.eH(s,B.ax,s,s,0,s,s,s),q=A.eH(s,B.ax,s,s,s,0,s,s),p=A.q(a).p2.x +if(p==null)p=s +else p=p.e5(B.n,16,B.u) +p=A.aa(s,A.X(this.c,1,B.al,s,s,p,B.bt,s),B.h,s,B.RQ,s,s,s,s,s,s,s,s,s) +return A.pw(new A.cY(new A.bg(8,8),new A.bg(8,8),B.B,B.B),A.aa(B.O,A.cq(B.a2,A.a([r,q,A.cL(p,s,s)],t.p),B.w,B.W,s),B.h,B.V5,s,s,s,40,s,s,B.lj,s,s,1/0),B.by)}} +A.tt.prototype={} +A.it.prototype={ +a0(){return new A.agi()}} +A.agi.prototype={ +aj(){this.aw() +this.d=this.a3p()}, +b1(a){var s,r=this +r.bb(a) +s=r.a.c +if(a.c!==s)r.d=r.a3p()}, +a3p(){var s=this.a,r=s.c,q=s.d,p=s.e +s=s.f.j(0) +this.a.toString +return r+"_"+A.c(q)+"_"+A.c(p)+"_"+s+"_0_true"}, +aye(){this.a.toString +return $.bxs.h(0,this.d)}, +atz(a){var s +this.a.toString +s=this.d +if(s!=null)$.bxs.n(0,s,a)}, +F(a){var s,r,q,p,o,n,m,l,k=this,j=null +k.a.toString +s=k.aye() +if(s!=null)return s +r=k.a.c +if(r.length===0)q=k.tO() +else{p=A.bB(u.ah,!1,!1,!1) +if(p.b.test(r)){r=k.a +o=r.c +n=r.d +m=r.e +r=r.f +q=new A.Hb(o,n,m,r,k.tO(),!0,j)}else{r=k.a +o=r.c +if(B.c.ba(o,"assets/")){n=B.c.bF(o,".svg") +m=r.d +l=r.e +r=r.f +if(n)q=A.bwc(o,j,new A.b7V(k),r,l,new A.b7W(k),m) +else q=A.JW(o,j,new A.b7X(k),r,l,j,m)}else{n=!B.c.ba(o,"http") +if((!n||B.c.ba(o,"https"))&&B.c.bF(o,".svg")){n=r.d +m=r.e +r=r.f +q=A.bwd(o,j,r,m,new A.b80(),n)}else if(!n||B.c.ba(o,"https")){n=r.d +m=r.e +q=A.brl(j,new A.b81(k),B.F,B.F,r.f,m,o,new A.b82(k),n)}else q=k.tO()}}}k.a.toString +k.atz(q) +return q}, +m(){this.ar()}, +tO(){var s=this.a,r=s.d,q=s.e +return A.JW("assets/images/defaultEmpty.png",null,null,s.f,q,null,r)}} +A.b7W.prototype={ +$1(a){var s=this.a +s.a.toString +return s.tO()}, +$S:13} +A.b7V.prototype={ +$3(a,b,c){return this.a.tO()}, +$S:292} +A.b7X.prototype={ +$3(a,b,c){return this.a.tO()}, +$S:51} +A.b80.prototype={ +$1(a){return B.dI}, +$S:293} +A.b82.prototype={ +$3(a,b,c){var s=null +this.a.a.toString +return A.cL(A.wh(s,s,s,s,s,0,s,4,c.gafT(),s),s,s)}, +$S:295} +A.b81.prototype={ +$3(a,b,c){return this.a.tO()}, +$S:296} +A.Hb.prototype={ +a0(){return new A.ad4()}} +A.ad4.prototype={ +aj(){this.aw() +this.a5y()}, +b1(a){var s +this.bb(a) +s=this.a +if(a.c!==s.c||a.d!=s.d||a.e!=s.e||a.f!==s.f)this.a5y()}, +a5y(){var s,r,q,p=this,o=p.a +o=o.c+"_"+A.c(o.d)+"_"+A.c(o.e)+"_"+o.f.j(0) +p.e=o +if($.Q1.N(0,o)){p.d=$.Q1.h(0,p.e) +o=p.e +o.toString +$.Q_.n(0,o,new A.aS(Date.now(),0,!1)) +return}try{s=B.da.b4(B.b.gY(p.a.c.split(","))) +p.d=s +o=p.e +o.toString +p.as6(o,s)}catch(q){r=A.v(q) +A.as().$1("Base64ImageWidget \u89e3\u7801\u5931\u8d25: "+J.p(r)) +p.d=null}}, +as6(a,b){var s,r=b.length +while(!0){if(!($.ad6+r>52428800&&$.Q1.a!==0))break +this.ax6()}$.Q1.n(0,a,b) +$.Q_.n(0,a,new A.aS(Date.now(),0,!1)) +s=$.ad6+r +$.ad6=s +A.as().$1("Base64ImageWidget \u7f13\u5b58\u5927\u5c0f: "+A.c(s/1024/1024)+"MB")}, +ax6(){var s,r,q,p,o,n,m,l,k +if($.Q_.a===0)return +for(s=$.Q_.gdG($.Q_),s=s.gav(s),r=null,q=null;s.u();){p=s.gI(s) +o=!0 +if(q!=null){n=p.b +m=n.a +l=q.a +if(m>=l)o=m===l&&n.b")).bL(new A.aLG(o)) +q=r.gcz().d +o.w=new A.aG(q,A.y(q).i("aG<1>")).bL(new A.aLH(o)) +q=r.gcT().k4 +o.y=new A.aG(q,A.y(q).i("aG<1>")).bL(new A.aLI(o)) +q=r.gcz().e +o.z=new A.aG(q,A.y(q).i("aG<1>")).bL(new A.aLJ(o)) +r=r.gcT().ok.b +o.Q=new A.aG(r,A.y(r).i("aG<1>")).bL(new A.aLK(o))}catch(p){s=A.v(p) +A.av(o,B.p,"subscribeData error: "+J.p(s))}finally{A.av(o,B.A,"subscribeData finally")}}, +qd(){var s=0,r=A.n(t.H) +var $async$qd=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:return A.l(null,r)}}) +return A.m($async$qd,r)}, +kJ(a,b,c,d){return this.aS0(a,b,c,d)}, +aRX(a,b){return this.kJ(a,"",b,!0)}, +yk(a,b){return this.kJ(a,"",!1,b)}, +acE(a,b,c){return this.kJ(a,b,!1,c)}, +aRW(a){return this.kJ(a,"",!1,!0)}, +aRU(){return this.kJ(null,"",!1,!0)}, +aS0(a1,a2,a3,a4){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d,c,b,a,a0 +var $async$kJ=A.j(function(a5,a6){if(a5===1){o=a6 +s=p}while(true)switch(s){case 0:d=a1==null +c=d?null:a1.aD() +b=""+a3 +a=""+a4 +A.av(m,B.f,"!!! disconnectDevice ["+a2+"], deviceModel: "+A.c(c)+", isWcp: "+b+", needReload: "+a) +p=4 +s=a3?7:9 +break +case 7:s=d?10:11 +break +case 10:s=12 +return A.f(m.iN(),$async$kJ) +case 12:l=a6 +s=l!=null&&l.fr?13:14 +break +case 13:j=l.x +k=j==null?"":j +if(J.aM(k)===0)k=l.w +c="disconnectDevice ["+a2+"], devId: " +A.av(m,B.f,c+A.c(k)+", currentConnectedDeviceModel: "+l.aD()+", disconnectDevice, start") +f=$.aX() +s=15 +return A.f(f.gcz().VK(k,a4),$async$kJ) +case 15:f.gcT() +f=k +A.Z(B.f,"[LavaDeviceVM] ["+(a2+", disconnectDevice, 1 isWcp: true")+"] removeDeviceService, key: "+f) +A.he(null,f) +A.av(m,B.f,c+A.c(k)+", currentConnectedDeviceModel: "+l.aD()+", disconnectDevice, success") +case 14:n=[1] +s=5 +break +case 11:k=a1.x +j=k==null?"":k +if(J.aM(j)===0)j=a1.w +s=a1.fr?16:17 +break +case 16:c="disconnectDevice ["+a2+"], devId: " +A.av(m,B.f,c+A.c(j)+", deviceModel: "+a1.aD()+", disconnectDevice, start") +f=$.aX() +s=18 +return A.f(f.gcz().VK(j,a4),$async$kJ) +case 18:f.gcT() +f=j +A.Z(B.f,"[LavaDeviceVM] ["+(a2+", disconnectDevice, 1 isWcp: true")+"] removeDeviceService, key: "+f) +A.he(null,f) +A.av(m,B.f,c+A.c(j)+", deviceModel: "+a1.aD()+", disconnectDevice, success") +case 17:n=[1] +s=5 +break +s=8 +break +case 9:s=19 +return A.f(m.iN(),$async$kJ) +case 19:i=a6 +s=i!=null&&i.fr?20:22 +break +case 20:k=i.x +h=k==null?"":k +if(J.aM(h)===0)h=i.w +A.av(m,B.f,"disconnectDevice ["+a2+"], devId: "+A.c(h)+", currentConnectedDeviceModel: "+i.aD()+", disconnectDevice, start") +c=$.aX() +s=23 +return A.f(c.gcz().VK(h,a4),$async$kJ) +case 23:c.gcT() +c=h +A.Z(B.f,"[LavaDeviceVM] ["+(a2+", disconnectDevice, 2 isWcp: false")+"] removeDeviceService, key: "+c) +A.he(null,c) +A.av(m,B.f,"disconnectDevice, devId: "+A.c(h)+", currentConnectedDeviceModel: "+i.aD()+", disconnectDevice, success") +s=21 +break +case 22:c=i +c=c==null?null:c.aD() +A.av(m,B.f,"disconnectDevice ["+a2+"], isWcp: false, needReload: "+a+", currentConnectedDeviceModel: "+A.c(c)+", call disconnectDevice, disconnectDevice, start") +$.aX().gcT().aRZ(a1,a4,!0).cv(new A.aLz(m,a2,a1,!1,a4),new A.aLA(m,a4,a2,!1),t.P) +case 21:case 8:n.push(6) +s=5 +break +case 4:p=3 +a0=o +g=A.v(a0) +d=d?null:a1.w +A.av(m,B.p,"disconnectDevice ["+a2+"], needReload: "+a+", isWcp: "+b+", sn: "+A.c(d)+", error: "+J.p(g)) +d=A.ae("disconnectDevice fail: "+J.p(g)) +throw A.d(d) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.av(m,B.A,"disconnectDevice finally, flag: "+a2) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$kJ,r)}, +Fq(a,b){return this.ajy(a,b)}, +ajy(a,b){var s=0,r=A.n(t.N),q,p=this,o,n,m,l,k,j +var $async$Fq=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:A.av(p,B.A,"getPincode, --- payload: "+A.co(a)) +if(a.a===0)throw A.d(A.ae("payload is empty")) +if(a.h(0,"ip")==null||a.h(0,"port")==null||a.h(0,"userid")==null||a.h(0,"nickname")==null)throw A.d(A.ae("getPincode payload is invalid")) +if(J.e(a.h(0,"userid"),""))a.n(0,"userid",$.aX().gek().b.c) +if(J.e(a.h(0,"nickname"),""))a.n(0,"nickname",$.aX().gek().b.b) +o=new A.a_($.ab,t.fB) +n=new A.aq(o,t.pN) +m=$.aX() +l=m.gcT() +k=A.kE(a) +k.fx=m.gek().b.ao() +k.ay=m.gek().b.c +A.av(p,B.A,"requestAuthCode deviceModel: "+k.aD()) +s=3 +return A.f(l.Ex(k,new A.aLC(b,k)),$async$Fq) +case 3:j=d +A.av(p,B.A,"requestAuthCodeWeb authCode: "+j) +if(j==="-1")n.bv(0,"-1") +else if(j==="0")n.bv(0,"0") +else n.bv(0,j) +q=o +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Fq,r)}, +Gv(a){return this.aqA(a)}, +aqA(a){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k +var $async$Gv=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.f($.aX().gcz().Gw(A.C(["target",a.gcq(0)],t.N,t.z)),$async$Gv) +case 7:q=!0 +s=1 +break +p=2 +s=6 +break +case 4:p=3 +k=o +m=A.v(k) +A.av(n,B.p,"switchTab error: "+J.p(m)) +throw k +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Gv,r)}, +b_t(a,b){if(a==null||a.length===0)return +$.aX().gcz().Nk(A.C(["dev_id",a,"dev_name",b],t.N,t.z))}, +afv(a){if(a!=null)$.aX().gcz().MO(A.C(["path",a],t.N,t.z)) +else $.aX().gcz().MN()}, +ac6(a){if(a==null||a.length===0){$.aX().gcz().Vo() +return}$.aX().gcz().CP(A.C(["preset_name",a],t.N,t.z))}, +Vo(){return this.ac6(null)}, +zM(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h +var $async$zM=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.f($.aX().gcz().Ft(),$async$zM) +case 7:m=b +if(m!=null){l=A.l9(m.b).b +if(l==null){B.b.V(n.a) +n.T() +s=1 +break}if(t.j.b(l)){j=n.a +B.b.V(j) +B.b.G(j,J.eX(l,new A.aLD(),t.JQ)) +n.T()}}p=2 +s=6 +break +case 4:p=3 +h=o +k=A.v(h) +A.av(n,B.p,"getRecentFiles error: "+J.p(k)) +j=A.ae("getRecentFiles fail: "+A.c(k)) +throw A.d(j) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$zM,r)}, +acq(a){var s=a.length +if(s===0)return +$.aX().gcz().Kw(A.C(["paths",a],t.N,t.z))}, +tf(){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g +var $async$tf=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:if(m.c){A.av(m,B.a0,"getCloudDeviceList \u6b63\u5728\u6267\u884c\u4e2d\uff0c\u8df3\u8fc7\u91cd\u590d\u8c03\u7528") +s=1 +break}m.c=!0 +p=4 +A.av(m,B.a0,"getCloudDeviceList") +j=$.aX() +i=j.gek().b +l=i.f==="online"&&i.c.length!==0 +s=l?7:8 +break +case 7:s=9 +return A.f(j.gcT().ad6(j.gek().b.ao()),$async$tf) +case 9:case 8:n.push(6) +s=5 +break +case 4:p=3 +g=o +k=A.v(g) +A.av(m,B.p,"getCloudDeviceList error: "+J.p(k)) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +m.c=!1 +A.av(m,B.A,"getCloudDeviceList finally, call updateOrcaDeviceListToCache") +A.l1(m,null,"loginUpdate") +m.T() +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$tf,r)}, +CZ(a){var s,r,q,p,o,n=this +A.av(n,B.f,"deleteDevice data: "+a.aD()) +try{if(a.fy.eO()){q=a.x +s=q==null?"":q +if(J.aM(s)===0)s=a.w +p=t.s +n.oS(A.a([s],p),A.a([a.w],p))}else n.GZ(a.w,a.e)}catch(o){r=A.v(o) +A.av(n,B.p,"delete device error: "+J.p(r)) +throw o}finally{A.av(n,B.A,"delete device finally")}}, +oS(a,b){return this.avy(a,b)}, +avy(a,b){var s=0,r=A.n(t.H),q=1,p,o=[],n=this,m,l,k,j,i,h,g,f,e,d +var $async$oS=A.j(function(c,a0){if(c===1){p=a0 +s=q}while(true)switch(s){case 0:q=3 +k=b.length +if(k!==0)for(j=0;j") +r=A.a8(new A.bh(o,new A.aLE(),n),!0,n.i("B.E")) +n=r +q=new A.ad(n,new A.aLF(),A.af(n).i("ad<1,h>")).hZ(0) +A.av(l,B.f,"logoutDeleLocalClouldDevice user is not login, cloudDeviceList: "+A.jr(r,"[","]")) +n=q +o=q +l.oS(A.a8(n,!0,A.y(n).c),A.a8(o,!0,A.y(o).c))}catch(m){p=A.v(m) +A.av(l,B.p,"logoutDeleLocalClouldDevice error: "+J.p(p)) +throw m}finally{A.av(l,B.A,"logoutDeleLocalClouldDevice finally") +A.l1(l,null,"logoutDeleLocalClouldDevice") +l.T()}}, +r0(a){return this.aPm(a)}, +aPm(a){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j +var $async$r0=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:A.av(n,B.f,"checkIfDeviceIsOnline, "+a.aD()) +if(a.fy.eO()){q=!0 +s=1 +break}p=4 +s=a.fy.eP()&&a.e.length!==0?7:8 +break +case 7:s=9 +return A.f($.aX().gcT().Cv(a),$async$r0) +case 9:case 8:if(a.dy===0){A.av(n,B.p,"checkIfDeviceIsOnline Device Offline, "+a.aD()) +q=!1 +s=1 +break}q=!0 +s=1 +break +p=2 +s=6 +break +case 4:p=3 +j=o +m=A.v(j) +if(m instanceof A.k1)if(m.a===B.de||m.a===B.df){k=t.s +n.oS(A.a([a.w],k),A.a([a.w],k))}A.av(n,B.p,"checkIfDeviceIsOnline, "+a.aD()+", error: "+J.p(m)) +throw j +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$r0,r)}, +oc(a,b,c){return this.aXV(a,b,c)}, +pS(a,b){return this.oc(a,!0,b)}, +aXV(a,b,c){var s=0,r=A.n(t.y),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f +var $async$oc=A.j(function(d,e){if(d===1){o=e +s=p}while(true)switch(s){case 0:A.av(m,B.f,"onDeviceControl, 1, deviceModel: "+a.aD()) +s=3 +return A.f(m.iN(),$async$oc) +case 3:j=e +if(j!=null&&j.fr&&j.w===a.w){A.av(m,B.f,u.bL) +a.iO(!0,u.bL)}i=$.aX() +l=i.gcT() +s=l.ax.w!==a.w&&l.ax.fr?4:5 +break +case 4:A.av(m,B.f,"onDeviceControl, 3, disconnectDevice, currentDeviceModel: "+l.ax.aD()+"}") +s=6 +return A.f(i.gdM().acE(l.ax,"onDeviceControl",!1),$async$oc) +case 6:i.gcT() +h=l.ax.w +A.Z(B.f,"[LavaDeviceVM] [onDeviceControl] removeDeviceService, key: "+h) +A.he(null,h) +case 5:p=8 +a.fx=i.gek().b.ao() +a.ay=i.gek().b.c +A.av(m,B.f,"onDeviceControl, 4, deviceModel: "+a.aD()) +s=a.fy.eP()?11:13 +break +case 11:i=i.gek().b +if(!(i.f==="online"&&i.c.length!==0)){A.av(m,B.p,"onDeviceControl, 5, \u274c wan Error binding connect device: User not logged in, "+a.aD()) +i=A.ae("User not logged in") +throw A.d(i)}A.av(m,B.f,"onDeviceControl, 6, wan connectDevice, "+a.aD()+", \u8fde\u63a5\u4e2d") +s=14 +return A.f(A.a5g(m,a,b),$async$oc) +case 14:i=e +q=i +n=[1] +s=9 +break +s=12 +break +case 13:A.av(m,B.f,"onDeviceControl, 7, lan connectDevice "+a.aD()) +s=15 +return A.f(A.aKU(m,a,b,c),$async$oc) +case 15:i=e +q=i +n=[1] +s=9 +break +case 12:n.push(10) +s=9 +break +case 8:p=7 +f=o +k=A.v(f) +A.av(m,B.p,"onDeviceControl, 8, deviceModel: "+a.aD()+", error: "+J.p(k)+", call disconnectDevice") +s=16 +return A.f(l.aRY(a,"onDeviceControl",!1),$async$oc) +case 16:$.aX().gcT() +i=a.w +A.Z(B.f,"[LavaDeviceVM] [onDeviceControl, error, disconnectDevice] removeDeviceService, key: "+i) +A.he(null,i) +throw f +n.push(10) +s=9 +break +case 7:n=[2] +case 9:p=2 +A.av(m,B.f,"onDeviceControl, 9, end") +s=n.pop() +break +case 10:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$oc,r)}, +iN(){var s=0,r=A.n(t.wI),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$iN=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +j=$.aX() +s=7 +return A.f(j.gcz().F6(),$async$iN) +case 7:m=b +if(m==null||J.i(m.b,"data")==null){A.av(n,B.f,"wcp.getConnectedMachine is null") +i=n.f +if(i!=null){A.av(n,B.f,"wcp.getConnectedMachine is null, _lastConnectedDeviceModel: "+A.c(i.aD())) +j.gcT() +i=n.f +h=i.w +i=i.aD() +A.Z(B.f,"[LavaDeviceVM] ["+(u.ai+A.c(i))+"] removeDeviceService, key: "+h) +A.he(null,h) +j=j.gcT().a.gaJ(0) +B.b.az(A.a8(j,!0,A.y(j).i("B.E")),new A.aLB(n))}n.f=null +q=null +s=1 +break}i=J.i(m.b,"data") +l=A.kE(i==null?A.w(t.N,t.z):i) +k=j.gek() +l.fx=k.b.ao() +l.ay=k.b.c +n.f=l +q=l +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +q=null +s=1 +break +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$iN,r)}, +xX(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$xX=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:s=3 +return A.f(n.iN(),$async$xX) +case 3:j=b +if(j==null){A.av(n,B.f,"connectCurrentOrcaConnectedDevice, deviceModel is null") +s=1 +break}l=$.aX().gcT().ax.fr +if(l){A.av(n,B.f,"connectCurrentOrcaConnectedDevice, deviceViewModel.currentDeviceModel.connected is true, skip") +s=1 +break}p=5 +A.av(n,B.f,"connectCurrentOrcaConnectedDevice onDeviceControl, deviceModel: "+j.aD()) +s=8 +return A.f(n.pS(j,new A.aLy(n)),$async$xX) +case 8:p=2 +s=7 +break +case 5:p=4 +i=o +m=A.v(i) +A.av(n,B.p,"connectCurrentOrcaConnectedDevice error: "+J.p(m)) +s=7 +break +case 4:s=2 +break +case 7:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$xX,r)}} +A.aLG.prototype={ +$1(a){return this.air(a)}, +air(a){var s=0,r=A.n(t.H),q,p=this,o,n +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=p.a +n=J.dd(a) +A.av(o,B.A,"subscribeCacheKeyStream: "+n.j(a)) +if(n.ga_(a)){s=1 +break}if(n.N(a,"deviceFilamentInfo"))A.bLH(o,n.h(a,"deviceFilamentInfo")) +if(n.N(a,"deviceList"))A.bna(o,n.h(a,"deviceList")) +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:137} +A.aLH.prototype={ +$1(a){return this.aiq(a)}, +aiq(a){var s=0,r=A.n(t.H),q,p=this,o,n,m,l,k,j +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:if(a!=null&&a.a.N(0,"event_id")){l=a.a.h(0,"event_id") +o=l==null?"":l +if(J.mv(o,B.kf.geL())){k=a.b +n=A.l9(k).b +j=p.a +A.av(j,B.A,"subscribeLocalDevices 1 eventId: "+A.c(o)+", payload: "+J.p(k)) +if(t.j.b(n)){k=j.r +B.b.V(k) +B.b.G(k,n) +A.av(j,B.a0,"subscribeLocalDevices 2 eventId: "+A.c(o)+", call updateOrcaDeviceListToCache") +A.l1(j,null,"subscribeLocalDevices")}}else if(J.mv(o,B.ke.geL())){m=A.l9(a.b).b +if(m==null){k=p.a +B.b.V(k.a) +k.T() +s=1 +break}if(t.j.b(m))p.a.zM()}}case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:862} +A.aLI.prototype={ +$1(a){return this.aip(a)}, +aip(a){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=J.a0(a) +o=p.h(a,"action") +n=p.h(a,"sns") +p=q.a +A.av(p,B.a0,"updateDeviceStream, action: "+A.c(o)+", sns: "+A.c(n)) +if(!J.e(o,"refresh"))if(J.e(o,"delete"))p.oS(n,A.a([],t.s)) +else if(J.e(o,"unbindDelete")){A.av(p,B.a0,"updateDeviceStream, action: "+A.c(o)+", sns: "+A.c(n)+" unbindDelete, delete orca local devices") +p.oS(n,A.a([],t.s))}return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:137} +A.aLJ.prototype={ +$1(a){return this.aio(a)}, +aio(a){var s=0,r=A.n(t.H),q=this,p,o +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=$.aX().gek().b +o=p.f==="online"&&p.c.length!==0 +p=q.a +if(a.a)p.ax=!0 +else p.ax=!1 +A.av(p,B.a0,"orcaControlViewModel, lifecycleStream, event: "+a.j(0)+", isLogin: "+A.c(o)+", !!! isActiveStatus: "+p.ax) +return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:863} +A.aLK.prototype={ +$1(a){return this.aim(a)}, +aim(a){var s=0,r=A.n(t.H),q,p=this,o,n,m,l +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:m=p.a +l=a==null +A.av(m,B.a0,"deviceUpdateFilamentInfoStream, printTaskConfigMap: "+A.c(l?null:J.p(a))) +o=$.aX().gcT().ax.w +if(!l&&J.aM(o)!==0){n=J.i(a,o) +if(n==null){s=1 +break}if(n.yV()){A.av(m,B.a0,"deviceUpdateFilamentInfoStream, printTaskConfig is default data, sn: "+A.c(o)+", skip update") +s=1 +break}A.aKX(m,n,o)}case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:864} +A.aLz.prototype={ +$1(a){return this.ail(a)}, +ail(a){var s=0,r=A.n(t.P),q=this,p,o,n,m,l,k,j +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:l=q.a +k=q.b +j="disconnectDevice ["+k +s=a?2:4 +break +case 2:o=q.c +n=o==null +m=n?null:o.fr +A.av(l,B.f,j+"], result: true, deviceModel.connected: "+A.c(m)) +if(!n){o.iO(!1,"orcaControlViewModel, ["+k+"], disconnectDevice , result: true") +$.aX().gcT() +l=o.w +A.Z(B.f,"[LavaDeviceVM] ["+(k+", disconnectDevice, 3 isWcp: "+q.d)+"] removeDeviceService, key: "+l) +A.he(null,l)}s=3 +break +case 4:A.av(l,B.p,j+"], fail, getCurrentOrcaDevice , wcp disconnectDevice, start") +s=5 +return A.f(l.iN(),$async$$1) +case 5:p=c +s=p!=null&&p.fr?6:7 +break +case 6:s=8 +return A.f(l.kJ(p,k+", on false",!0,q.e),$async$$1) +case 8:$.aX().gcT() +l=p.w +A.Z(B.f,"[LavaDeviceVM] ["+(k+", disconnectDevice, 4 isWcp: "+q.d)+"] removeDeviceService, key: "+l) +A.he(null,l) +case 7:case 3:return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:320} +A.aLA.prototype={ +$1(a){return this.aik(a)}, +aik(a){var s=0,r=A.n(t.P),q=this,p,o,n +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:n=q.a +A.av(n,B.p,"disconnectDevice error: "+J.p(a)+", getCurrentOrcaDevice, wcp disconnectDevice, start") +s=2 +return A.f(n.iN(),$async$$1) +case 2:p=c +s=p!=null&&p.fr?3:4 +break +case 3:o=q.c +s=5 +return A.f(n.kJ(p,o+", onError",!0,q.b),$async$$1) +case 5:$.aX().gcT() +n=p.w +A.Z(B.f,"[LavaDeviceVM] ["+(o+", disconnectDevice, 5 isWcp: "+q.d)+"] removeDeviceService, key: "+n) +A.he(null,n) +case 4:return A.l(null,r)}}) +return A.m($async$$1,r)}, +$S:272} +A.aLC.prototype={ +$2(a,b){this.a.$2(this.b,a)}, +$S:865} +A.aLD.prototype={ +$1(a){var s,r,q=J.a0(a),p=q.h(a,"project_name") +if(p==null)p="" +s=q.h(a,"path") +if(s==null)s="" +r=q.h(a,"time") +if(r==null)r="" +q=q.h(a,"image") +return new A.mL(p,s,r,q==null?"":q)}, +$S:866} +A.aLE.prototype={ +$1(a){return a.fy.eP()}, +$S:31} +A.aLF.prototype={ +$1(a){return a.w}, +$S:22} +A.aLB.prototype={ +$1(a){var s=u.ai,r=a.w,q=this.a,p=q.f +if(r===p.w){r=p.aD() +a.iO(!1,s+A.c(r)) +$.aX().gcT() +r=a.w +q=q.f +A.Z(B.f,"[LavaDeviceVM] ["+(s+A.c(q==null?null:q.aD()))+"] removeDeviceService, key: "+r) +A.he(null,r)}}, +$S:867} +A.aLy.prototype={ +$2(a,b){A.av(this.a,B.f,"connectCurrentOrcaConnectedDevice showAuthorizationDialog, authState: "+b.j(0))}, +$S:41} +A.aL1.prototype={ +$1(a){var s,r,q,p=this.a,o=this.b,n=this.c +A.av(p,B.f,"updateMachineFilamentInfo [1] success, printTaskConfig, "+o+": "+n.j(0)) +s=t.N +r=t.z +q=A.bw8(A.C([o,n.ao()],s,r),$.fR.b) +if(p.ax)A.Pw($.aX().gcz(),A.a([A.C(["key","deviceFilamentInfo","value",q],s,r)],t.H7)).cv(new A.aL_(p,o,q),new A.aL0(p,o,q),t.P) +else A.av(p,B.f,"writeFilamentInfoCacheObjects [1] \u53ea\u5141\u8bb8\u6fc0\u6d3b\u9875\u9762\u5199\u64cd\u4f5c, isActiveStatus: false")}, +$S:2} +A.aL_.prototype={ +$1(a){A.av(this.a,B.f,"writeFilamentInfoCacheObjects [1] success, "+this.b+": "+this.c)}, +$S:26} +A.aL0.prototype={ +$1(a){A.av(this.a,B.p,"writeFilamentInfoCacheObjects [1] error: "+J.p(a)+", "+this.b+": "+this.c)}, +$S:2} +A.aL2.prototype={ +$1(a){A.av(this.a,B.p,"updateMachineFilamentInfo [1] error: "+J.p(a)+", printTaskConfig: "+this.b.j(0))}, +$S:2} +A.aL3.prototype={ +$1(a){var s,r,q,p=this.a,o=this.b,n=this.c +A.av(p,B.f,"updateMachineFilamentInfo [2] success, printTaskConfig, "+o+": "+n.j(0)) +s=t.N +r=t.z +q=A.bw8(A.C([o,n.ao()],s,r),$.fR.b) +if(p.ax)A.Pw($.aX().gcz(),A.a([A.C(["key","deviceFilamentInfo","value",B.a7.lx(q,null)],s,r)],t.H7)).cv(new A.aKY(p,o,q),new A.aKZ(p,o,q),t.P) +else A.av(p,B.f,"writeFilamentInfoCacheObjects [2] \u53ea\u5141\u8bb8\u6fc0\u6d3b\u9875\u9762\u5199\u64cd\u4f5c, isActiveStatus: false")}, +$S:2} +A.aKY.prototype={ +$1(a){A.av(this.a,B.f,"writeFilamentInfoCacheObjects [2] success, "+this.b+": "+this.c)}, +$S:26} +A.aKZ.prototype={ +$1(a){A.av(this.a,B.p,"writeFilamentInfoCacheObjects [2] error: "+J.p(a)+", "+this.b+": "+this.c)}, +$S:2} +A.aL4.prototype={ +$1(a){A.av(this.a,B.p,"updateMachineFilamentInfo [2] error: "+J.p(a)+", printTaskConfig: "+this.b.j(0))}, +$S:2} +A.aL7.prototype={ +$1(a){return A.kE(a)}, +$S:131} +A.aL8.prototype={ +$1(a){return a.aD()}, +$S:22} +A.aLk.prototype={ +$1(a){return a.aD()}, +$S:22} +A.aLl.prototype={ +$1(a){return a.go==="lan"}, +$S:31} +A.aLm.prototype={ +$1(a){return a.go==="wan"}, +$S:31} +A.aLq.prototype={ +$1(a){return a.go==="lan"}, +$S:31} +A.aLr.prototype={ +$1(a){return a.go==="wan"}, +$S:31} +A.aLs.prototype={ +$1(a){return a.aD()}, +$S:22} +A.aLt.prototype={ +$1(a){return a.w}, +$S:22} +A.aLu.prototype={ +$1(a){return a.w}, +$S:22} +A.aLv.prototype={ +$1(a){return this.a.p(0,a.w)}, +$S:31} +A.aLw.prototype={ +$1(a){return a.aD()}, +$S:22} +A.aLx.prototype={ +$1(a){return a.fy.eP()}, +$S:31} +A.aLn.prototype={ +$1(a){return a.aD()}, +$S:22} +A.aLo.prototype={ +$1(a){return a.aD()}, +$S:22} +A.aLp.prototype={ +$1(a){return a.aD()}, +$S:22} +A.aLe.prototype={ +$1(a){return a.aD()}, +$S:22} +A.aLf.prototype={ +$1(a){return a.fr}, +$S:31} +A.aLg.prototype={ +$1(a){return a.fr}, +$S:31} +A.aLh.prototype={ +$1(a){return a.w}, +$S:22} +A.aLi.prototype={ +$1(a){return a.w}, +$S:22} +A.aL9.prototype={ +$1(a){return a.w}, +$S:22} +A.aLa.prototype={ +$1(a){return a.w}, +$S:22} +A.aLb.prototype={ +$1(a){return this.a.p(0,a.w)&&a.fy.eO()}, +$S:31} +A.aLc.prototype={ +$1(a){return this.a.p(0,a.w)}, +$S:31} +A.aLd.prototype={ +$1(a){return a.w===this.a.w}, +$S:31} +A.aKV.prototype={ +$1(a){A.av(this.a,B.a0,"_connectLanDevice, 5, info, showAuthorizationDialog authState: "+a.j(0)+", call showAuthorizationDialog") +this.b.$2(this.c,a)}, +$S:174} +A.n5.prototype={ +m(){var s,r=this +A.i5(r,B.A,"dispose") +s=r.d +if(s!=null)s.S(0) +r.d=null +r.dN()}, +oG(){var s,r,q,p=this +if(p.c){A.i5(p,B.A,"subscribeData already subscribed") +return}A.i5(p,B.A,"subscribeData") +p.c=!0 +try{r=$.aX() +r.gcz().Gi() +r=r.gcz().d +p.d=new A.aG(r,A.y(r).i("aG<1>")).bL(new A.aLY(p)) +r=$.aUO +if(r==null)r=$.aUO=new A.a9F(new A.Jc(new A.cd(null,null,t.zr))) +r.a.vr(0,t.x7).bL(new A.aLZ(p))}catch(q){s=A.v(q) +A.i5(p,B.p,"subscribeData error: "+J.p(s))}finally{A.i5(p,B.A,"subscribeData finally")}}, +a4N(a){var s=this,r=J.a0(a) +if(J.e(r.h(a,"status"),"offline")||J.e(r.h(a,"stauts"),"offline")){s.HH() +if(s.a){s.a=!1 +A.i5(s,B.f,"reset deviceViewModel")}}else{s.aCP(a) +s.a=!0}}, +HH(){this.b=new A.Pm("","","","","offline","","") +this.a9M()}, +aCP(a){var s,r,q,p,o,n,m,l,k,j,i=this +try{r=J.a0(a) +q=r.h(a,"nickname") +if(q==null)q="" +p=r.h(a,"email") +if(p==null)p="" +o=r.h(a,"status") +if(o==null)o=r.h(a,"stauts") +if(o==null)o="" +n=r.h(a,"icon") +if(n==null)n="" +m=r.h(a,"token") +if(m==null)m="" +l=r.h(a,"account") +if(l==null)l="" +k=J.p(r.h(a,"userid")).length===0?J.p(r.h(a,"id")):J.p(r.h(a,"userid")) +if(J.p(r.h(a,"id")).length!==0)J.p(r.h(a,"id")) +i.b=new A.Pm(q,k,p,l,o,n,m) +i.a9M()}catch(j){s=A.v(j) +A.i5(i,B.p,"\u89e3\u6790\u7528\u6237\u6570\u636e\u5931\u8d25: "+J.p(s)) +i.HH()}}, +a9M(){var s=this,r=s.b,q=r.f==="online"&&r.c.length!==0 +if(q){$.f2.eg().z=r.w +s.Fw() +A.i5(s,B.A,"_updateUserState, getCloudDeviceList") +$.aX().gdM().tf()}else{$.f2.eg().z="" +$.aX().gdM().aWT()}s.T()}, +w4(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i +var $async$w4=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +s=7 +return A.f($.aX().gcz().Fx(),$async$w4) +case 7:m=b +if(m==null){A.i5(n,B.f,"\u83b7\u53d6\u7528\u6237\u767b\u5f55\u72b6\u6001\u5931\u8d25: packet \u4e3a\u7a7a") +s=1 +break}l=A.l9(m.b).b +if(t.a.b(l))n.a4N(l) +else A.i5(n,B.f,"\u7528\u6237\u6570\u636e\u683c\u5f0f\u9519\u8bef: "+A.c(l)) +p=2 +s=6 +break +case 4:p=3 +i=o +k=A.v(i) +A.i5(n,B.p,"\u83b7\u53d6\u7528\u6237\u4fe1\u606f\u5931\u8d25: "+J.p(k)) +n.HH() +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$w4,r)}, +Fw(){var s=0,r=A.n(t.xh),q,p=this,o,n +var $async$Fw=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.i5(p,B.A,"getUserAwsIoTConfig [1] user.userid: "+p.b.c) +o=p.b +if(!(o.f==="online"&&o.c.length!==0)||o.c.length===0)throw A.d(A.ae("please login first")) +s=3 +return A.f(A.AR(o.c),$async$Fw) +case 3:n=b +A.i5(p,B.A,"getUserAwsIoTConfig [2] cer: "+J.p(n)) +if(n!=null&&n.gce()){A.i5(p,B.A,"getUserAwsIoTConfig [3] cer is valid \u2611\ufe0f") +q=n +s=1 +break}else{A.i5(p,B.A,"getUserAwsIoTConfig [4] cer is not valid \u274c") +throw A.d(A.ae("cer is not valid"))}case 1:return A.l(q,r)}}) +return A.m($async$Fw,r)}, +M9(a){return this.aWS(a)}, +aWS(a){var s=0,r=A.n(t.H),q=this +var $async$M9=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:A.i5(q,B.A,"login") +$.aX().gcz().O0(A.C(["show",a],t.N,t.z)) +return A.l(null,r)}}) +return A.m($async$M9,r)}, +X8(){var s=0,r=A.n(t.H),q=this +var $async$X8=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:A.i5(q,B.A,"logout") +$.aX().gcz().O1() +return A.l(null,r)}}) +return A.m($async$X8,r)}} +A.aLY.prototype={ +$1(a){var s,r,q,p,o,n="event_id" +if(a!=null&&a.a.N(0,n)){q=a.a.h(0,n) +s=q==null?"":q +if(J.mv(s,B.kd.geL())){p=a.b +r=A.l9(p).b +o=this.a +A.i5(o,B.A," "+A.c(s)+", event.payload: "+J.p(p)) +if(t.a.b(r))o.a4N(r)}}}, +$S:138} +A.aLZ.prototype={ +$1(a){var s=this.a,r=s.b +if(!(r.f==="online"&&r.c.length!==0))return +s.HH() +A.a1X("login credentials have expired, please login again")}, +$S:869} +A.P1.prototype={ +M7(){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$M7=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:s=2 +return A.f(A.i7(),$async$M7) +case 2:p=b.a +o=J.a0(p) +n=A.pe(o.h(p,"isDarkMode")) +q.b=n===!0 +p=A.pe(o.h(p,"isSystemTheme")) +p=p!==!1 +q.a=p +A.aL(u.bl+q.b+", isSystemTheme: "+p) +if(q.a)q.d=A.tQ($.Gu(),!1) +else q.d=q.b?A.tQ($.bkl(),!0):A.tQ($.Gu(),!1) +A.aL(u.bl+q.b+", isSystemTheme: "+q.a) +q.T() +return A.l(null,r)}}) +return A.m($async$M7,r)}, +zs(a,b){return this.b0j(a,!1)}, +b0j(a,b){var s=0,r=A.n(t.H),q=this,p +var $async$zs=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:q.b=a +q.a=!1 +A.aL("[ThemeVM] toggleTheme, isDark: "+a+", isSystemTheme: false") +if(q.a)q.d=A.tQ($.Gu(),!1) +else q.d=q.b?A.tQ($.bkl(),!0):A.tQ($.Gu(),!1) +s=2 +return A.f(A.i7(),$async$zs) +case 2:p=d +s=3 +return A.f(p.BN("Bool","isDarkMode",q.b),$async$zs) +case 3:s=4 +return A.f(p.BN("Bool","isSystemTheme",q.a),$async$zs) +case 4:return A.l(null,r)}}) +return A.m($async$zs,r)}} +A.GH.prototype={ +a0(){return new A.acw(null,null)}} +A.apv.prototype={ +$1(a){return A.Ic(null,B.a5J,623,580,!0,A.F("add device",null))}, +$S:130} +A.acw.prototype={ +aj(){this.aw() +A.aL("[AddDeviceMainPage] initState") +$.aw.p2$.push(new A.aY6(this))}, +m(){A.aL("[AddDeviceMainPage] _stopMachineFind") +A.bmG($.aX().gcT()) +if(this.e)A.fa("[AddDeviceMainPage] dispose, _isAuthorizing: true, cancel authorization") +A.aL("[AddDeviceMainPage] dispose") +this.apG()}, +c1(){this.ea()}, +IQ(a){return this.aKy(a)}, +aKy(a){var s=0,r=A.n(t.y),q,p=this,o +var $async$IQ=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=p.c +o.toString +s=3 +return A.f(A.jd(null,!0,new A.aXY(),o,null,!0,!0,t.z),$async$IQ) +case 3:q=c +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$IQ,r)}, +oT(a){return this.aw1(a)}, +aw1(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f +var $async$oT=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:s=3 +return A.f(m.Ax(a),$async$oT) +case 3:if(!c){A.dR(B.as) +A.aL("[AddDeviceMainPage] _discoverDeviceRequestConnect, device already exists, return") +s=1 +break}s=J.e(a.h(0,"link_mode"),"lan")?4:6 +break +case 4:s=7 +return A.f(m.wJ(A.kE(a)),$async$oT) +case 7:s=5 +break +case 6:p=9 +A.mx(A.F("Connecting...",null)) +A.aL("[AddDeviceMainPage] discoverDeviceRequestConnect, deviceMap: "+A.co(a)) +s=12 +return A.f(m.Ix(a),$async$oT) +case 12:l=c +s=J.aM(l)!==0?13:15 +break +case 13:a.n(0,"authCode",l) +a.n(0,"code",l) +a.n(0,"link_mode","wan") +a.n(0,"connected",!1) +h=$.aX() +a.n(0,"userid",h.gek().b.c) +a.n(0,"username",h.gek().b.b) +a.n(0,"operate",0) +s=16 +return A.f(m.Iy(a),$async$oT) +case 16:k=c +A.cx(A.F("Bind success",null)) +s=17 +return A.f(m.wJ(k),$async$oT) +case 17:A.dR(B.as) +A.cx(A.F("Connect success",null)) +m.w=!0 +s=18 +return A.f(m.oN(k,B.eH,"_discoverDeviceRequestConnect: _requestPinCodeBindDevice connect success after"),$async$oT) +case 18:h=m.c +h.toString +j=A.cy(h,!1,t.e) +m.GA() +A.eC(B.bK,new A.aXJ(m,j),t.P) +s=14 +break +case 15:A.dR(B.as) +A.cx(A.F("Failed to obtain connection authorization",null)) +case 14:n.push(11) +s=10 +break +case 9:p=8 +f=o +i=A.v(f) +A.dR(B.as) +m.wE(i,"_discoverDeviceRequestConnect._requestCloudDevicePinCode") +n.push(11) +s=10 +break +case 8:n=[2] +case 10:p=2 +A.dR(B.as) +m.J(new A.aXK(m)) +s=n.pop() +break +case 11:case 5:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$oT,r)}, +T7(){var s=0,r=A.n(t.N),q,p=this,o,n,m +var $async$T7=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:o=new A.a_($.ab,t.fB) +n=new A.aq(o,t.pN) +m=p.c +m.toString +A.bJy(m,new A.aXP(n),new A.aXQ(n)) +q=o +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$T7,r)}, +Iy(a){return this.aIQ(a)}, +aIQ(a){var s=0,r=A.n(t.CX),q,p=this,o,n,m,l,k,j +var $async$Iy=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:l=new A.a_($.ab,t.oV) +k=new A.aq(l,t.rs) +j=p.c +j.toString +o=A.cy(j,!1,t.e) +j=p.c +j.toString +n=A.cy(j,!1,t.PO).b +m=A.kE(a) +m.fx=n.ao() +m.ay=n.c +m.go="wan" +A.aKW($.aX().gdM(),m).cv(new A.aXR(o,k),new A.aXS(k),t.P) +q=l +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Iy,r)}, +wJ(a){return this.auK(a)}, +auK(a){var s=0,r=A.n(t.H),q=1,p,o=[],n=this,m,l,k +var $async$wJ=A.j(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:q=3 +A.mx(A.F("Connecting...",null)) +A.aL("[AddDeviceMainPage] _connectDevice, deviceModel: "+a.aD()) +s=6 +return A.f($.aX().gdM().pS(a,new A.aXH(n)),$async$wJ) +case 6:o.push(5) +s=4 +break +case 3:q=2 +k=p +m=A.v(k) +A.fJ("[AddDeviceMainPage] requestConnectClouldDevice error: "+J.p(m)) +n.wE(m,u.gj) +throw k +o.push(5) +s=4 +break +case 2:o=[1] +case 4:q=1 +A.dR(B.as) +n.r=!1 +A.l1($.aX().gdM(),null,"") +s=o.pop() +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$wJ,r)}, +Ix(a){return this.aIP(a)}, +aIP(a){var s=0,r=A.n(t.N),q,p=2,o,n=this,m,l,k,j,i,h,g +var $async$Ix=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:i=$.aX() +h=i.gek().b +if(a.h(0,"userid")==null||J.e(a.h(0,"userid"),""))a.n(0,"userid",h.c) +if(a.h(0,"username")==null||J.e(a.h(0,"username"),""))a.n(0,"nickname",h.b) +p=4 +m=i.gdM() +s=7 +return A.f(m.Fq(a,new A.aXO(n)),$async$Ix) +case 7:l=c +A.aL("[AddDeviceMainPage] _requestCloudDevicePinCode, authCode: "+A.c(l)) +if(J.e(l,"-1")){A.dR(B.as) +i=A.ae("-1: device no response") +throw A.d(i)}else if(J.e(l,"0")){A.aL("[AddDeviceMainPage] _requestCloudDevicePinCode, getPincode, authorization rejected") +i=A.ae("authorization rejected") +throw A.d(i)}else{q=l +s=1 +break}p=2 +s=6 +break +case 4:p=3 +g=o +k=A.v(g) +A.fJ("[AddDeviceMainPage] _requestCloudDevicePinCode, getPincode, error: "+J.p(k)) +A.dR(B.as) +throw g +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Ix,r)}, +oN(a,b,c){return this.aKt(a,b,c)}, +aKt(a,b,c){var s=0,r=A.n(t.H),q,p=this,o,n,m,l,k,j,i,h,g +var $async$oN=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:i={} +h="[AddDeviceMainPage] ["+c +g=h+"] _showAuthorizationDialog, _isShowAuthorizationDialog: " +A.aL(g+p.f+", _isAuthorizing: "+p.e+", _isConnecting: "+p.r+", authState: "+b.j(0)) +A.dR(B.as) +if(p.c==null){s=1 +break}if(p.f){A.aL(g+"true, pop") +o=p.c +if(o!=null){n=A.oy(o) +o=n!=null&&n.kF()}else o=!1 +if(o){o=p.c +o.toString +A.bU(o,!1).cV()}}o=p.e=p.f=!0 +m=p.c +m.toString +l=A.cy(m,!1,t.e) +i.a=!1 +m=p.c +m.toString +k=b!==B.bj?null:l.k1 +s=3 +return A.f(A.asA(m,new A.aXT(i,p,c,l,a),new A.aXU(i,p,c,l,a),b,k),$async$oN) +case 3:j=e +k=h+"] _showAuthorizationDialog, result: " +i=j==null +m=i?null:j.a +A.aL(k+A.c(m)+", _connectSuccess: "+p.w+", pop") +p.e=!1 +p.J(new A.aXV(p)) +if(j!==B.eH?p.w:o){o=p.c +m=!1 +if(o!=null)if(p.f){n=A.oy(o) +o=n!=null&&n.kF()}else o=m +else o=m +if(o){o=p.c +o.toString +A.bU(o,!1).cV() +A.aL(k+A.c(i?null:j.a)+", pop")}}p.f=p.w=!1 +if(l.k1.a===B.eH){o=p.c +if(o!=null){n=A.oy(o) +o=n!=null&&n.kF()}else o=!1 +if(o){o=p.c +o.toString +A.bU(o,!1).cV() +A.aL(h+"] _showAuthorizationDialog, deviceViewModel.authorizationStatusNotifier.value == AuthorizationStatus.authorized, pop")}}h=p.f +o=p.e +m=p.r +i=i?null:j.a +A.aL(g+h+", _isAuthorizing: "+o+", _isConnecting: "+m+", result: "+A.c(i)+", pop end") +case 1:return A.l(q,r)}}) +return A.m($async$oN,r)}, +qD(){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d +var $async$qD=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:p=4 +f=m.c +f.toString +l=A.cy(f,!1,t.PO) +f=l.b +s=!(f.f==="online"&&f.c.length!==0)?7:8 +break +case 7:A.cx(A.F("Please login first",null)) +A.aL("[AddDeviceMainPage] _inputPinCodeConnectDevice, please login first") +s=9 +return A.f(A.a1X(null),$async$qD) +case 9:k=b +if(J.e(k,!0)){f=m.c +f.toString +A.bU(f,!1).cV()}m.r=!1 +n=[1] +s=5 +break +case 8:s=10 +return A.f(m.T7(),$async$qD) +case 10:j=b +s=J.aM(j)!==0?11:13 +break +case 11:i=A.C(["authCode",j,"code",j,"link_mode","wan","connected",!1,"userid",l.b.c,"username",l.b.b,"operate",0,"user",l.b.ao()],t.N,t.z) +A.aL("[AddDeviceMainPage] _inputPinCodeConnectDevice, _requestPinCodeBindDevice, deviceMap: "+A.c(i)) +A.mx(A.F("Connecting...",null)) +s=14 +return A.f(m.Iy(i),$async$qD) +case 14:h=b +A.cx(A.F("Bind success",null)) +A.aL("[AddDeviceMainPage] _inputPinCodeConnectDevice, bind success, bindSuccessDeviceModel: "+h.aD()+", _requestConnectClouldDevice") +s=15 +return A.f(m.wJ(h),$async$qD) +case 15:A.dR(B.as) +A.cx(A.F("Connect success",null)) +A.aL("[AddDeviceMainPage] _inputPinCodeConnectDevice, _requestConnectClouldDevice, connect success, call showAuthorizationDialog") +m.w=!0 +s=16 +return A.f(m.oN(h,B.eH,"_inputPinCodeConnectDevice: _requestConnectClouldDevice connect success after"),$async$qD) +case 16:m.GA() +s=12 +break +case 13:A.dR(B.as) +A.fJ("[AddDeviceMainPage] _inputPinCodeConnectDevice, Pin code is empty") +case 12:n.push(6) +s=5 +break +case 4:p=3 +d=o +g=A.v(d) +m.r=!1 +A.dR(B.as) +m.as9(g) +A.fJ("[AddDeviceMainPage] _inputPinCodeConnectDevice, catch error: "+J.p(g)) +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.dR(B.as) +m.r=!1 +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$qD,r)}, +x6(a){return this.aDE(a)}, +aDE(a){var s=0,r=A.n(t.H),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d +var $async$x6=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:A.aL("[AddDeviceMainPage] _inputIpConnectDevice, ipAddress: "+a) +l=A.C(["sn",a,"link_mode","lan","connected",!1,"name","Lan Device","id","lan","ip",a,"port",1884],t.N,t.K) +p=4 +s=7 +return A.f(m.Ax(l),$async$x6) +case 7:k=c +if(!k){A.dR(B.as) +A.aL("[AddDeviceMainPage] _inputIpConnectDevice, device already exists, return") +n=[1] +s=5 +break}A.mx(A.F("Connecting...",null)) +j=A.kE(l) +s=8 +return A.f($.aX().gdM().oc(j,!0,new A.aXM(m)),$async$x6) +case 8:i=c +m.w=i +A.dR(B.as) +A.aL("[AddDeviceMainPage] _inputIpConnectDevice, onDeviceControl, result: "+A.c(i)) +s=i?9:10 +break +case 9:s=11 +return A.f(m.oN(j,B.eH,"_inputIpConnectDevice: orcaControlViewModel.onDeviceControl, result: "+A.c(i)+", after call"),$async$x6) +case 11:case 10:m.GA() +f=m.c +f.toString +h=A.cy(f,!1,t.e) +m.GA() +A.eC(B.bK,new A.aXN(m,h),t.P) +n.push(6) +s=5 +break +case 4:p=3 +d=o +g=A.v(d) +A.dR(B.as) +m.wE(g,u.hd) +A.fJ("[AddDeviceMainPage] _inputIpConnectDevice, ip connect ip: "+a+", error: "+J.p(g)) +throw d +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +A.dR(B.as) +m.r=!1 +A.l1($.aX().gdM(),null,"") +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$x6,r)}, +wE(a,b){return this.azP(a,b)}, +as9(a){return this.wE(a,"")}, +azP(a,b){var s=0,r=A.n(t.H),q=this,p +var $async$wE=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:if(a instanceof A.k1){p=a.a +if(p===B.de||p===B.df){A.aL("[AddDeviceMainPage], ["+b+u.s) +q.nt(B.h9)}else if(p===B.iW){A.aL("[AddDeviceMainPage] ["+b+u.f) +q.nt(B.la)}else if(p===B.iX){A.aL("[AddDeviceMainPage] ["+b+u.K) +q.nt(B.dL)}else if(p===B.po){A.aL("[AddDeviceMainPage] ["+b+"] _handleDeviceError, device auth check failed, call showDeviceStateDialog") +q.nt(B.Z6)}else if(p===B.ws){A.aL("[AddDeviceMainPage] ["+b+"] _handleDeviceError, device auth code locale not match, call showDeviceStateDialog") +q.nt(B.Z7)}else A.dU(a.j(0))}else{p=J.dd(a) +if(B.c.p(p.j(a),"device authorization removed")){A.aL("[AddDeviceMainPage] ["+b+u.g) +q.nt(B.lb)}else if(B.c.p(p.j(a),"-1"))q.nt(B.dL) +else A.cx(p.j(a))}return A.l(null,r)}}) +return A.m($async$wE,r)}, +nt(a){var s=0,r=A.n(t.H),q,p=this,o +var $async$nt=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:A.aL("[AddDeviceMainPage] showDeviceStateDialog, state: "+a.j(0)) +A.aL("[AddDeviceMainPage] showDeviceStateDialog, Device State: "+a.b+" mounted: "+(p.c!=null)) +o=p.c +if(o==null){s=1 +break}s=3 +return A.f(A.avc(o,a),$async$nt) +case 3:case 1:return A.l(q,r)}}) +return A.m($async$nt,r)}, +Ax(a){return this.atN(a)}, +atN(a2){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1 +var $async$Ax=A.j(function(a3,a4){if(a3===1){o=a4 +s=p}while(true)switch(s){case 0:p=4 +A.aL("[AddDeviceMainPage] _checkDeviceAlreadyExists, deviceMap: "+A.co(a2)+"}") +e=$.aX() +m=e.gcT() +l=e.gdM() +e=m.a.gaJ(0) +k=A.a8(e,!0,A.y(e).i("B.E")) +j=null +for(e=k,d=e.length,c=0;c") +q=o.a=A.a8(new A.bh(s,new A.aXB(b),r),!0,r.i("B.E")) +r=A.af(q).i("bh<1>") +q=o.a=A.a8(new A.bh(q,new A.aXC(d),r),!0,r.i("B.E")) +if(d.ch||q.length===0){o=A.F("Searching for devices",p) +n=A.q(a).p2.z +s=t.p +return A.cL(A.b2(A.a([B.a21,B.aK,A.bt(A.a([A.X(o,p,p,p,p,n==null?p:n.f4(14,B.u),p,p),A.fX(p,p,p,p,new A.Hf(18,A.q(a).ax.b,p),p,new A.aXD(d),p,p,p,p)],s),B.l,B.ac,B.k)],s),B.l,B.ac,B.k,B.r),p,p)}return A.bu2(new A.aXE(o,n),q.length,B.a_m,new A.aXF(),!1)}, +$C:"$5", +$R:5, +$S:871} +A.aXB.prototype={ +$1(a){var s="connected",r="userid",q=this.a,p=q.b +if(p.f==="online"&&p.c.length!==0){p=J.a0(a) +if(!J.e(p.h(a,s),!0))q=p.h(a,r)==null||J.e(p.h(a,r),"")||J.e(p.h(a,r),"none")||J.e(p.h(a,r),q.b.c) +else q=!1 +if(q)return!0 +else return!1}else{q=J.a0(a) +p=!1 +if(!J.e(q.h(a,s),!0))if(J.e(q.h(a,"link_mode"),"lan"))q=J.e(q.h(a,r),"")||J.e(q.h(a,r),"none")||q.h(a,r)==null +else q=p +else q=p +if(q)return!0 +else return!1}}, +$S:112} +A.aXC.prototype={ +$1(a){var s=this.a.a.gaJ(0) +return!B.b.fQ(A.a8(s,!0,A.y(s).i("B.E")),new A.aXA(a))}, +$S:112} +A.aXA.prototype={ +$1(a){var s=this.a,r=J.a0(s) +return a.w===r.h(s,"sn")&&a.go===r.h(s,"link_mode")}, +$S:31} +A.aXD.prototype={ +$0(){A.a1C(this.a)}, +$S:0} +A.aXF.prototype={ +$2(a,b){return B.aK}, +$S:872} +A.aXE.prototype={ +$2(a,b){var s=this.a.a[b],r=this.b +return new A.AQ(s,r.r?null:new A.aXz(r),null)}, +$S:873} +A.aXz.prototype={ +$1(a){return this.ais(a)}, +ais(a){var s=0,r=A.n(t.P),q,p=this,o +var $async$$1=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:o=p.a +if(o.r){A.aL("[AddDeviceMainPage] _buildDeviceList, requestConnect action, _isConnecting: true") +A.cx(A.F("Connecting...",null)) +s=1 +break}o.r=!0 +o.oT(A.f7(a,t.N,t.z)) +case 1:return A.l(q,r)}}) +return A.m($async$$1,r)}, +$S:874} +A.AQ.prototype={ +F(a){var s,r,q="userid",p=null,o=this.c,n=J.a0(o),m=J.e(n.h(o,"link_mode"),"lan"),l=J.e(n.h(o,"connected"),!0),k=n.h(o,q)!=null&&!J.e(n.h(o,q),"")&&!J.e(n.h(o,q),"none"),j=A.ee(B.p3,1),i=A.bq(4),h=A.bq(6),g=n.h(o,"cover") +h=A.pw(h,A.xd(g==null?"":g,B.os,40,40),B.by) +o=A.c(n.h(o,"name")) +n=A.q(a).p2.z +g=t.p +n=A.a([new A.of(1,B.hl,A.X(o,1,B.al,p,p,n==null?p:n.f4(14,B.u),p,p),p)],g) +if(m){o=A.F("Lan Mode",p) +s=A.q(a).p2.z +s=s==null?p:s.f4(14,B.u) +n.push(A.X(" ("+o+")",1,B.al,p,p,s,p,p))}o=A.cf(A.bt(n,B.ap,B.o,B.k),1) +n=A.im(p,p,A.q(a).ax.b,p,p,p,p,p,p,A.q(a).ax.c,p,p,p,p,p,new A.cu(A.bq(8),B.x),p,p,p,p,p) +s=!l +r=!s||k?new A.auw(this,l,k):new A.aux(this) +return A.aa(p,A.bt(A.a([h,B.cf,o,B.cf,new A.aB(105,40,A.f6(!1,A.X(!s||k?A.F("Connected",p):A.F("Connect",p),p,p,p,p,p,p,p),p,p,B.a3,p,p,p,p,r,p,n),p)],g),B.l,B.o,B.k),B.h,p,p,new A.bb(p,p,j,i,p,p,p,B.E),p,p,p,p,B.a_v,p,p,p)}} +A.auw.prototype={ +$0(){var s=this.b,r=this.c +A.aL("DeviceCard, onPressed, isConnected: "+s+", isBind: "+r+", device: "+J.p(this.a.c)) +if(r)A.cx(A.F("Bound",null)) +if(s)A.cx(A.F("Connected",null))}, +$S:0} +A.aux.prototype={ +$0(){var s=this.a,r=s.e +if(r!=null)r.$1(s.c)}, +$S:0} +A.UC.prototype={ +m(){var s=this,r=s.c3$ +if(r!=null)r.K(0,s.gir()) +s.c3$=null +s.ar()}, +c0(){this.d2() +this.cQ() +this.is()}} +A.HI.prototype={ +a0(){return new A.adA()}} +A.asG.prototype={ +$1(a){var s=this,r=s.a +if(r==null)r=new A.cS(s.b,$.aW()) +return new A.fu(r,new A.asF(s.c,s.d,s.e,s.f,s.r,s.w,s.x,s.y),null,null,t.Z6)}, +$S:875} +A.asF.prototype={ +$3(a,b,c){var s=this +return A.Ic(B.n,A.a([new A.HI(b,s.a,s.b,s.c,s.d,new A.asB(s.e,a),new A.asC(s.f,a),new A.asD(s.r,a),new A.asE(s.w,a),null)],t.p),315,430,!1,null)}, +$S:876} +A.asB.prototype={ +$0(){this.a.$0()}, +$S:0} +A.asC.prototype={ +$1(a){var s=this.b,r=A.oy(s) +if(r!=null&&r.kF())A.bU(s,!1).fM(a)}, +$S:174} +A.asD.prototype={ +$1(a){var s=this.b,r=A.oy(s) +if(r!=null&&r.kF())A.bU(s,!1).fM(a)}, +$S:174} +A.asE.prototype={ +$0(){var s,r,q=this.a,p=q==null +if(p){s=A.oy(this.b) +r=s!=null&&s.kF()}else r=!1 +if(r)A.bU(this.b,!1).fM(B.dC) +if(!p)q.$0()}, +$S:4} +A.adA.prototype={ +aj(){var s,r=this +r.aw() +s=r.a +r.d=s.d +if(s.c===B.bj)r.a8f()}, +b1(a){var s,r=this +r.bb(a) +s=r.a +if(s.c!==B.bj){s=r.e +if(s!=null)s.S(0)}else if(a.c!==B.bj){r.d=s.d +r.a8f()}}, +a8f(){var s=this.e +if(s!=null)s.S(0) +this.e=A.E5(B.bK,new A.b_p(this))}, +m(){var s=this.e +if(s!=null)s.S(0) +this.ar()}, +atm(){var s,r,q,p,o,n,m=this,l=null +switch(m.a.c.a){case 1:s=A.F("Please authorize on the device screen to continue binding",l) +r=m.c +r.toString +r=A.q(r).p2.x +s=A.X(s,l,l,l,l,r==null?l:r.f4(14,B.K),l,l) +m.a.toString +r=A.F("Waiting for device authorization",l) +q=m.c +q.toString +q=A.q(q).p2.Q +r=A.X(r,l,l,l,l,q==null?l:q.f4(16,B.u),l,l) +q=m.d +q===$&&A.b() +p=m.c +p.toString +p=A.q(p).p2.w +if(p==null)p=l +else{o=m.c +o.toString +o=p.e5(A.q(o).ax.b,16,B.u) +p=o}return A.b2(A.a([B.xS,B.ba,s,B.t7,r,B.dZ,A.X(""+q+"s",l,l,l,l,p,l,l)],t.p),B.l,B.ac,B.k,B.r) +case 3:s=A.F("Binding rejected",l) +r=m.c +r.toString +r=A.q(r).p2.x +if(r==null)r=l +else{q=m.c +q.toString +q=r.e5(A.q(q).ax.k3,14,B.K) +r=q}r=A.X(s,l,l,l,l,r,l,l) +s=m.c +s.toString +s=A.q(s) +q=m.c +q.toString +q=A.q(q) +p=A.bq(28) +o=m.c +o.toString +o=A.q(o).p2.w +if(o==null)o=l +else{n=m.c +n.toString +n=o.e5(A.q(n).ax.c,16,B.u) +o=n}o=A.im(l,l,s.ax.b,l,l,l,l,l,l,q.ax.c,l,l,l,l,l,new A.cu(p,B.x),l,l,l,o,l) +m.a.toString +s=A.F("Ok",l) +q=m.c +q.toString +q=A.q(q).p2.w +if(q==null)q=l +else{p=m.c +p.toString +p=q.e5(A.q(p).ax.c,16,B.u) +q=p}return A.b2(A.a([B.a2l,B.ba,r,B.fy,new A.aB(240,56,A.f6(!1,A.X(s,l,l,l,l,q,l,l),l,l,B.a3,l,l,l,l,new A.b_i(m),l,o),l)],t.p),B.l,B.ac,B.k,B.r) +case 2:s=A.F("Binding successful",l) +r=m.c +r.toString +r=A.q(r).p2.x +if(r==null)r=l +else{q=m.c +q.toString +q=r.e5(A.q(q).ax.k3,14,B.K) +r=q}r=A.X(s,l,l,l,l,r,l,l) +s=m.c +s.toString +s=A.q(s) +q=m.c +q.toString +q=A.q(q) +p=A.bq(28) +o=m.c +o.toString +o=A.q(o).p2.w +if(o==null)o=l +else{n=m.c +n.toString +n=o.e5(A.q(n).ax.c,16,B.u) +o=n}o=A.im(l,l,s.ax.b,l,l,l,l,l,l,q.ax.c,l,l,l,l,l,new A.cu(p,B.x),l,l,l,o,l) +m.a.toString +s=A.F("Ok",l) +q=m.c +q.toString +q=A.q(q).p2.w +if(q==null)q=l +else{p=m.c +p.toString +p=q.e5(A.q(p).ax.c,16,B.u) +q=p}return A.b2(A.a([B.a2f,B.ba,r,B.t7,new A.aB(240,56,A.f6(!1,A.X(s,l,l,l,l,q,l,l),l,l,B.a3,l,l,l,l,new A.b_j(m),l,o),l)],t.p),B.l,B.ac,B.k,B.r) +case 4:s=A.F("Device connect error, please return to device page and connect again.",l) +return A.b2(A.a([B.xS,B.ba,A.X(s,l,l,l,l,l,l,l)],t.p),B.l,B.ac,B.k,B.r) +case 0:s=A.F(u.a7,l) +r=m.c +r.toString +r=A.q(r).p2.x +if(r==null)r=l +else{q=m.c +q.toString +q=r.e5(A.q(q).ax.k3,14,B.K) +r=q}r=A.X(s,l,l,l,l,r,l,l) +s=m.c +s.toString +s=A.q(s) +q=m.c +q.toString +q=A.q(q) +p=A.bq(28) +o=m.c +o.toString +o=A.q(o).p2.w +if(o==null)o=l +else{n=m.c +n.toString +n=o.e5(A.q(n).ax.c,16,B.u) +o=n}o=A.im(l,l,s.ax.b,l,l,l,l,l,l,q.ax.c,l,l,l,l,l,new A.cu(p,B.x),l,l,l,o,l) +m.a.toString +s=A.F("Ok",l) +q=m.c +q.toString +q=A.q(q).p2.w +if(q==null)q=l +else{p=m.c +p.toString +p=q.e5(A.q(p).ax.c,16,B.u) +q=p}return A.b2(A.a([B.a20,B.ba,r,B.fy,new A.aB(240,56,A.f6(!1,A.X(s,l,l,l,l,q,l,l),l,l,B.a3,l,l,l,l,new A.b_k(m),l,o),l)],t.p),B.l,B.ac,B.k,B.r) +default:return B.ax}}, +IM(a){return this.aKx(a)}, +aKx(a){var s=0,r=A.n(t.y),q,p=this,o +var $async$IM=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=3 +return A.f(A.jd(null,!0,new A.b_n(p),a,null,!0,!0,t.y),$async$IM) +case 3:o=c +q=o===!0 +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$IM,r)}, +F(a){var s=null,r=A.a([A.cL(this.atm(),s,s)],t.p) +if(this.a.c===B.bj)r.push(A.eH(s,A.fX(s,s,s,s,B.ja,s,new A.b_q(this,a),s,s,s,s),s,s,s,0,0,s)) +return A.aa(s,A.cq(B.a2,r,B.w,B.W,s),B.h,B.t,s,s,s,283,s,s,s,s,s,430)}} +A.b_p.prototype={ +$1(a){var s=this.a,r=s.d +r===$&&A.b() +if(r>0)s.J(new A.b_o(s)) +else{r=s.e +if(r!=null)r.S(0) +if(!s.f&&s.a.c===B.bj){s.f=!0 +s.a.w.$0()}}}, +$S:85} +A.b_o.prototype={ +$0(){var s=this.a,r=s.d +r===$&&A.b() +s.d=r-1}, +$S:0} +A.b_i.prototype={ +$0(){this.a.a.x.$1(B.dC)}, +$S:0} +A.b_j.prototype={ +$0(){this.a.a.y.$1(B.eH)}, +$S:0} +A.b_k.prototype={ +$0(){this.a.a.x.$1(B.dC)}, +$S:0} +A.b_n.prototype={ +$1(a){var s=null,r=A.X(A.F("Exit authorizing",s),s,s,s,s,s,s,s),q=A.X(A.F("Exit authorizing process?",s),s,s,s,s,s,s,s) +return A.A3(A.a([A.iA(!1,A.X(A.F("Keep waiting",s),s,s,s,s,s,s,s),s,s,B.a3,s,s,s,s,new A.b_l(a),s,s),A.iA(!1,A.X(A.F("Confirm",s),s,s,s,s,A.cb(s,s,A.q(a).ax.fy,s,s,s,s,s,s,s,s,s,s,s,s,s,s,!0,s,s,s,s,s,s,s,s),s,s),s,s,B.a3,s,s,s,s,new A.b_m(this.a,a),s,s)],t.p),q,s,r)}, +$S:77} +A.b_l.prototype={ +$0(){return A.bU(this.a,!1).fM(!1)}, +$S:0} +A.b_m.prototype={ +$0(){A.bU(this.b,!1).fM(!0) +this.a.a.z.$0()}, +$S:0} +A.b_q.prototype={ +$0(){var s=0,r=A.n(t.H),q=this,p,o +var $async$$0=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=q.a +o=q.b +s=2 +return A.f(p.IM(o),$async$$0) +case 2:if(b&&o.e!=null)p.a.x.$1(B.dC) +return A.l(null,r)}}) +return A.m($async$$0,r)}, +$S:15} +A.hx.prototype={ +D(){return"DeviceState."+this.b}} +A.Iu.prototype={ +a0(){return new A.aeE()}} +A.avf.prototype={ +$1(a){var s=this,r=$.aW() +return new A.fu(new A.cS(s.b,r),new A.ave(s.c,s.d,s.e,s.f,s.r,s.w,s.x),null,null,t.If)}, +$S:877} +A.ave.prototype={ +$3(a,b,c){var s=this +return A.Ic(B.n,A.a([new A.Iu(b,s.b,s.c,s.d,new A.avd(s.f,a),null)],t.p),315,430,!1,null)}, +$S:878} +A.avd.prototype={ +$1(a){var s=this.b,r=A.oy(s) +if(r!=null&&r.kF())A.bU(s,!1).fM(a)}, +$S:879} +A.aeE.prototype={ +aj(){this.aw()}, +b1(a){this.bb(a)}, +m(){this.ar()}, +avP(){var s,r,q,p,o,n,m,l,k,j,i=this,h=null,g="assets/images/deviceRejected.png" +i.a.toString +s=A.F("Ok",h) +r="assets/images/deviceNoResponse.webp" +switch(i.a.c.a){case 1:q=A.F("The network is disconnected, please check whether the network environment of the software is normal.",h) +r="assets/images/deviceNoNetwork.webp" +break +case 4:q=A.F("The current device is currently processing the offline state, please check the device and try again.",h) +break +case 7:q=A.F("Your account has been unbound from the device. Please reselect the device to initiate the connection.",h) +break +case 5:q=A.F("The device is not connected, please click the printer to initiate device connection.",h) +break +case 6:q=A.F("The current mode of the device is not available, please check the current LAN mode status.",h) +break +case 2:q=A.F("The device failed to download the model file. Please check the device network and upload it again.",h) +break +case 3:q=A.F("File upload failed, please check network connection and try again.",h) +break +case 11:q=A.F(u.a7,h) +break +case 12:q=A.F("The device authorization has been removed, please add the device again.",h) +break +case 8:q=A.F("Bind device failed, please check if pin code is correct.",h) +r=g +break +case 9:q=A.F("Bind device failed, please check if device locale setting is not same as client.",h) +r=g +break +default:return B.ax}p=A.xd(r,B.M,128,128) +o=i.c +o.toString +o=A.q(o).p2.x +if(o==null)o=h +else{n=i.c +n.toString +n=o.e5(A.q(n).ax.k3,14,B.K) +o=n}o=A.X(q,h,h,h,h,o,h,h) +n=i.c +n.toString +n=A.q(n) +m=i.c +m.toString +m=A.q(m) +l=A.bq(28) +k=i.c +k.toString +k=A.q(k).p2.w +if(k==null)k=h +else{j=i.c +j.toString +j=k.e5(A.q(j).ax.c,16,B.u) +k=j}k=A.im(h,h,n.ax.b,h,h,h,h,h,h,m.ax.c,h,h,h,h,h,new A.cu(l,B.x),h,h,h,k,h) +l=i.c +l.toString +l=A.q(l).p2.w +if(l==null)n=h +else{n=i.c +n.toString +n=l.e5(A.q(n).ax.c,16,B.u)}return A.b2(A.a([p,B.ba,o,B.fy,new A.aB(240,56,A.f6(!1,A.X(s,h,h,h,h,n,h,h),h,h,B.a3,h,h,h,h,new A.b1P(i),h,k),h)],t.p),B.l,B.ac,B.k,B.r)}, +F(a){var s=null +return A.aa(s,A.cq(B.a2,A.a([A.cL(this.avP(),s,s)],t.p),B.w,B.W,s),B.h,B.t,s,s,s,283,s,s,s,s,s,430)}} +A.b1P.prototype={ +$0(){this.a.a.x.$1(B.eO)}, +$S:0} +A.K8.prototype={ +a0(){return new A.RU()}} +A.RU.prototype={ +aj(){var s,r=this +r.aw() +r.f=new A.r5(new A.dS("",B.i8,B.bH),$.aW()) +s=A.kK(!0,null,!0,!0,null,null,!1) +r.r=s +s.a4(0,r.gaDF())}, +m(){var s=this.f +s===$&&A.b() +s.U$=$.aW() +s.M$=0 +s=this.r +s===$&&A.b() +s.m() +this.ar()}, +aDG(){var s,r=this +A.as().$1("handleFocusChange") +s=r.r +s===$&&A.b() +if(!s.gcN()){r.a9T() +r.J(new A.b8z(r))}else r.J(new A.b8A(r))}, +a9T(){var s,r,q=this,p=q.f +p===$&&A.b() +s=B.c.cw(p.a.a) +if(s.length===0){q.J(new A.b8B(q)) +return}r=A.bB("^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$",!0,!1,!1) +q.J(new A.b8C(q,r.b.test(s)))}, +a4c(){var s,r=this,q=r.f +q===$&&A.b() +s=B.c.cw(q.a.a) +if(s.length===0){r.J(new A.b8x(r)) +return}if(!r.d){r.J(new A.b8y(r)) +return}r.a.c.$1(s)}, +azv(){this.a.d.$0()}, +F(a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=this,b=null,a=a0.au(t.IB).r.a +a===$&&A.b() +s=a.gda(0)==="zh"?"assets/images/ipInputGuideCN.webp":"assets/images/ipInputGuide.webp" +a=A.F("Machine IP acquisition method",b) +r=A.q(a0).p2.x +r=r==null?b:r.m5(B.u) +r=A.X(a+":",b,b,b,b,r,b,b) +a=A.F("Settings -> LAN Mode -> IP",b) +q=A.q(a0).p2.x +a=A.X(a,b,b,b,b,q==null?b:q.m5(B.u),b,b) +q=A.xd(s,B.M,264,398) +p=A.F("Ip address",b) +o=A.F("Currently only supports IPV4 addresses",b) +n=A.q(a0).p2.x +n=n==null?b:n.m5(B.u) +n=A.X(p+" ["+o+"]: ",b,b,b,b,n,b,b) +o=c.f +o===$&&A.b() +p=c.r +p===$&&A.b() +m=A.bq(8) +l=c.e!=null?A.q(a0).ax.fy:B.p3 +k=A.bq(8) +j=c.e!=null?A.q(a0).ax.fy:B.p3 +i=A.bq(8) +h=c.e!=null?A.q(a0).ax.fy:A.q(a0).ax.b +g=A.bq(8) +f=A.q(a0) +e=A.q(a0).p2.Q +e=e==null?b:e.cc(B.h1) +d=t.p +p=A.a([r,B.k3,a,B.OD,q,B.OE,n,B.anu,A.aa(b,A.a9p(!0,!1,o,b,b,A.a1c(b,new A.hJ(4,m,new A.br(l,1,B.I,-1)),b,B.wS,b,b,b,b,!0,new A.hJ(4,k,new A.br(j,1,B.I,-1)),b,new A.hJ(4,g,new A.br(f.ax.fy,1,B.I,-1)),b,b,b,b,b,b,b,b,b,new A.hJ(4,i,new A.br(h,2,B.I,-1)),b,b,b,b,b,b,b,e,"192.168.1.100",b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b),b,p,A.a([new A.Bj(A.bB("[0-9.]",!0,!1,!1),!0,"")],t.VS),B.Pf,b,b,1,!1,new A.b8D(c),new A.b8E(c),b,b,b,B.bn,B.nD),B.h,B.t,b,b,b,b,b,b,b,b,b,b)],d) +a=c.e +if(a!=null){r=A.q(a0).p2.Q +B.b.G(p,A.a([B.bf,A.X(a,b,b,b,b,r==null?b:r.xZ(A.q(a0).ax.fy,12),b,b)],d))}p.push(B.OF) +a=A.q(a0) +r=A.F("Cancel",b) +q=A.q(a0).p2.x +a=A.pK(4,a.ax.b,30,A.X(r,b,b,b,b,q==null?b:q.ac_(A.q(a0).ax.b,16,B.u,1.25),b,b),A.aa(b,b,B.h,b,b,b,b,b,b,b,b,b,b,b),c.gazu(),B.he,80) +r=A.q(a0) +q=A.F("Ok",b) +o=A.q(a0).p2.z +p.push(A.bt(A.a([a,B.OA,A.pK(4,r.ax.b,30,A.X(q,b,b,b,b,o==null?b:o.cc(A.q(a0).ax.c),b,b),A.aa(b,b,B.h,b,b,b,b,b,b,b,b,b,b,b),c.gazK(),B.lh,80)],d),B.l,B.cD,B.k)) +return A.aa(b,A.b2(p,B.ap,B.o,B.k,B.r),B.h,B.t,b,b,b,b,b,b,b,b,b,b)}} +A.b8z.prototype={ +$0(){var s=this.a +s.e=s.d?null:A.F("Invalid IP address format",null)}, +$S:0} +A.b8A.prototype={ +$0(){this.a.e=null}, +$S:0} +A.b8B.prototype={ +$0(){var s=this.a +s.d=!1 +s.e=null}, +$S:0} +A.b8C.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.b8x.prototype={ +$0(){var s=this.a +s.d=!1 +s.e=A.F("Please enter IP address",null)}, +$S:0} +A.b8y.prototype={ +$0(){this.a.e=A.F("Invalid IP address format",null)}, +$S:0} +A.b8D.prototype={ +$1(a){return this.a.a9T()}, +$S:19} +A.b8E.prototype={ +$1(a){return this.a.a4c()}, +$S:19} +A.K9.prototype={ +a0(){return new A.agr()}} +A.aCO.prototype={ +$1(a){var s=A.F(this.a,null) +return A.Ic(B.n,A.a([new A.K9(new A.aCM(a,this.c),new A.aCN(a,this.b),null)],t.p),258,463,!0,s)}, +$S:130} +A.aCN.prototype={ +$0(){var s=this.a,r=A.oy(s) +if(r!=null&&r.kF())A.bU(s,!1).cV() +this.b.$0()}, +$S:4} +A.aCM.prototype={ +$1(a){var s=this.a,r=A.oy(s) +if(r!=null&&r.kF())A.bU(s,!1).cV() +this.b.$1(a)}, +$S:99} +A.agr.prototype={ +F(a){var s,r,q,p,o,n,m,l=this,k=null,j=A.F("Please locate the PIN code on the account page of the device screen and enter it in the box below.",k),i=A.q(a).p2.x +j=A.X(j,k,k,k,k,i==null?k:i.m5(B.u),k,k) +i=A.F("PIN code",k) +s=A.q(a).p2.x +i=A.X(i,k,k,k,k,s==null?k:s.m5(B.u),k,k) +s=A.q(a).p2.z +s=s==null?k:s.e5(A.q(a).ax.b,16,B.bm) +if(s==null)s=A.cb(k,k,A.q(a).ax.b,k,k,k,k,k,k,k,k,16,k,k,B.bm,k,k,!0,k,k,k,k,k,k,k,k) +s=A.aa(k,new A.Pr(new A.b8H(l),new A.b8I(l,a),B.Pg,8,A.q(a).ax.b,34,!0,s,B.Z,k),B.h,B.t,k,k,k,k,k,k,k,k,k,k) +r=A.q(a) +q=A.F("Cancel",k) +p=A.q(a).p2.z +r=A.pK(4,r.ax.b,30,A.X(q,k,k,k,k,p==null?k:p.ac_(A.q(a).ax.b,16,B.u,1.25),k,k),A.aa(k,k,B.h,k,k,k,k,k,k,k,k,k,k,k),new A.b8J(l),B.he,80) +q=l.d?k:new A.b8K(l) +p=A.im(k,k,k,k,k,k,k,k,k,k,k,k,k,k,k,new A.cu(A.bq(4),B.x),k,k,k,k,k) +o=A.F("Ok",k) +n=A.q(a).p2.z +m=t.p +return A.aa(k,A.b2(A.a([j,B.t7,i,B.OD,s,B.OF,A.bt(A.a([r,B.ank,new A.aB(80,30,A.f6(!1,A.X(o,k,k,k,k,n==null?k:n.cc(A.q(a).ax.c),k,k),k,k,B.a3,k,k,k,k,q,k,p),k)],m),B.l,B.cD,B.k)],m),B.ap,B.o,B.k,B.r),B.h,B.t,k,k,k,k,k,k,k,k,k,k)}} +A.b8H.prototype={ +$1(a){var s=this.a +s.J(new A.b8G(s,a))}, +$S:19} +A.b8G.prototype={ +$0(){this.a.e=this.b}, +$S:0} +A.b8I.prototype={ +$1(a){var s=this.a +s.J(new A.b8F(s,a)) +if(!s.d)A.Bn(this.b).jb()}, +$S:11} +A.b8F.prototype={ +$0(){this.a.d=this.b}, +$S:0} +A.b8J.prototype={ +$0(){this.a.a.d.$0()}, +$S:4} +A.b8K.prototype={ +$0(){var s=this.a,r=s.a.c +s=s.e +r.$1(s==null?"":s)}, +$S:0} +A.BN.prototype={ +a0(){return new A.agx(!1,null)}} +A.agx.prototype={ +gtb(){return!0}, +F(a){var s,r=this +r.Ad(a) +s=A.K(r.a.c).j(0) +return new A.aae(new A.b8X(r),r.a.c,new A.eK("visibility-"+s,t.kK))}, +a5W(a){var s=A.fQ(A.K(this.a.c).a,null),r=a?"\u53ef\u89c1":"\u9690\u85cf" +A.as().$1("KeepAliveWrapper:"+s+", notifyPageVisibility \u9875\u9762"+r)}} +A.b8X.prototype={ +$1(a){if(a.gahv()>0.9)this.a.a5W(!0) +else if(a.gahv()<0.1)this.a.a5W(!1)}, +$S:880} +A.an9.prototype={ +aj(){this.aw() +this.tR()}, +fn(){var s=this.i6$ +if(s!=null){s.T() +s.dN() +this.i6$=null}this.oK()}} +A.ana.prototype={ +c1(){this.ea() +this.atX()}} +A.a5i.prototype={ +F(a){var s,r,q,p,o=this,n=null,m=A.xd(o.f,B.M,o.w,o.r),l=A.q(a).p2.x +l=l==null?n:l.e5(A.q(a).ax.k3,14,B.K) +s=t.p +l=A.a([m,B.ba,A.X(o.c,n,n,n,n,l,n,n)],s) +l.push(B.fy) +m=A.q(a) +r=A.q(a) +q=A.bq(28) +p=A.q(a).p2.w +p=p==null?n:p.e5(A.q(a).ax.c,16,B.u) +p=A.im(n,n,m.ax.b,n,n,n,n,n,n,r.ax.c,n,n,n,n,n,new A.cu(q,B.x),n,n,n,p,n) +m=A.q(a).p2.w +m=m==null?n:m.e5(A.q(a).ax.c,16,B.u) +l.push(new A.aB(240,56,A.f6(!1,A.X(o.e,n,n,n,n,m,n,n),n,n,B.a3,n,n,n,n,o.x,n,p),n)) +return A.aa(n,A.cq(B.a2,A.a([A.cL(A.b2(l,B.l,B.ac,B.k,B.r),n,n)],s),B.w,B.W,n),B.h,B.t,n,n,n,283,n,n,n,n,n,430)}} +A.aLU.prototype={ +$1(a){var s=this +return A.Ic(B.n,A.a([new A.a5i(s.a,s.b,s.c,s.d,s.e,s.f,s.r,null)],t.p),315,430,!1,null)}, +$S:130} +A.xT.prototype={ +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.xT&&A.K(r)===A.K(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&&J.e(r.r,b.r)&&J.e(r.w,b.w) +else s=!0 +return s}, +gB(a){var s=this +return B.c.gB(s.a)^B.c.gB(s.b)^B.c.gB(s.c)^B.c.gB(s.d)^B.c.gB(s.e)^J.W(s.f)^J.W(s.r)^J.W(s.w)}, +j(a){var s=this +return"PackageInfo(appName: "+s.a+", buildNumber: "+s.d+", packageName: "+s.b+", version: "+s.c+", buildSignature: "+s.e+", installerStore: "+A.c(s.f)+", installTime: "+A.c(s.r)+", updateTime: "+A.c(s.w)+")"}} +A.aM8.prototype={ +b16(a,b){var s=A.f1(a),r=A.bB("[^/]+\\.html.*",!0,!1,!1),q=A.bRl(s),p=s.ge8(s),o=A.f1(q+A.dm(p,r,"")).Ev().agx(0,"") +q=o.e +p=!1 +if(q.length>1)if(!B.c.bF(q,"/"))p=o.jw("http")||o.jw("https") +if(p)o=o.agw(0,B.c.R(q,0,B.c.o6(q,"/"))) +q=t.N +p=A.a8(o.grS(),!0,q) +if(!!p.fixed$length)A.V(A.ag("removeWhere")) +B.b.mQ(p,new A.aM9(),!0) +q=A.a8(p,!0,q) +q.push("version.json") +return o.b_A(0,q,"cachebuster="+b)}, +nl(a,b){return this.aiG(0,b)}, +aiG(a,b){var s=0,r=A.n(t.BB),q,p=this,o,n,m,l,k,j +var $async$nl=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:A.bpb() +o=A.bk4().a +s=3 +return A.f(p.x5(b,o),$async$nl) +case 3:n=d +s=n==null?4:5 +break +case 4:n=p.b.F4("") +s=6 +return A.f(p.x5(A.dm(n,"assets/",""),o),$async$nl) +case 6:n=d +case 5:s=n==null?7:9 +break +case 7:s=10 +return A.f(p.x5(self.window.document.baseURI,o),$async$nl) +case 10:s=8 +break +case 9:d=n +case 8:m=d +if(m==null)m=A.w(t.N,t.z) +n=J.a0(m) +l=n.h(m,"app_name") +if(l==null)l="" +k=n.h(m,"version") +if(k==null)k="" +j=n.h(m,"build_number") +if(j==null)j="" +n=n.h(m,"package_name") +q=new A.LT(l,n==null?"":n,k,j,"",null,null,null) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$nl,r)}, +x5(a,b){return this.az5(a,b)}, +az5(a,b){var s=0,r=A.n(t.nA),q,p=this +var $async$x5=A.j(function(c,d){if(c===1)return A.k(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.f(p.Hu(p.b16(a,b)),$async$x5) +case 5:q=p.avj(d) +s=1 +break +case 4:q=null +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$x5,r)}, +Hu(a){return this.ayV(a)}, +ayV(a){var s=0,r=A.n(t.Wd),q,p +var $async$Hu=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:s=3 +return A.f(A.bpr(a),$async$Hu) +case 3:p=c +q=p +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$Hu,r)}, +avj(a){var s,r +if(a.b===200)try{s=B.a7.jo(0,A.biQ(A.bhu(a.e)).ei(0,a.w),null) +return s}catch(r){return null}else return null}} +A.aM9.prototype={ +$1(a){return a===""}, +$S:21} +A.aIx.prototype={ +nl(a,b){return this.aiF(0,b)}, +aiF(a,b){var s=0,r=A.n(t.BB),q,p=this,o,n,m,l,k,j,i,h,g +var $async$nl=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:s=3 +return A.f(B.agR.WS("getAll",t.N,t.z),$async$nl) +case 3:j=d +i=j==null +h=p.a6r(i?null:J.i(j,"installTime")) +g=p.a6r(i?null:J.i(j,"updateTime")) +j.toString +o=J.a0(j) +n=o.h(j,"appName") +i=n==null?"":n +n=o.h(j,"packageName") +if(n==null)n="" +m=o.h(j,"version") +if(m==null)m="" +l=o.h(j,"buildNumber") +if(l==null)l="" +k=o.h(j,"buildSignature") +if(k==null)k="" +q=new A.LT(i,n,m,l,k,A.dk(o.h(j,"installerStore")),h,g) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$nl,r)}, +a6r(a){return a!=null&&A.na(a,null)!=null?new A.aS(A.o9(A.c0(a,null),0,!1),0,!1):null}} +A.LT.prototype={} +A.aM7.prototype={} +A.XD.prototype={ +aNB(a,b){var s,r=null +A.bzj("absolute",A.a([b,null,null,null,null,null,null,null,null,null,null,null,null,null,null],t._m)) +s=this.a +s=s.ki(b)>0&&!s.rG(b) +if(s)return b +s=this.b +return this.aeO(0,s==null?A.bpi():s,b,r,r,r,r,r,r,r,r,r,r,r,r,r,r)}, +aRO(a){var s,r,q=A.qt(a,this.a) +q.Ew() +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.iG(s) +q.e.pop() +q.Ew() +return q.j(0)}, +aeO(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.bzj("join",s) +return this.aWk(new A.ey(s,t.Ri))}, +WZ(a,b,c){var s=null +return this.aeO(0,b,c,s,s,s,s,s,s,s,s,s,s,s,s,s,s)}, +aWk(a){var s,r,q,p,o,n,m,l,k +for(s=a.gav(0),r=new A.va(s,new A.asR()),q=this.a,p=!1,o=!1,n="";r.u();){m=s.gI(0) +if(q.rG(m)&&o){l=A.qt(m,q) +k=n.charCodeAt(0)==0?n:n +n=B.c.R(k,0,q.zo(k,!0)) +l.b=n +if(q.E7(n))l.e[0]=q.gtp() +n=""+l.j(0)}else if(q.ki(m)>0){o=!q.rG(m) +n=""+m}else{if(!(m.length!==0&&q.Vd(m[0])))if(p)n+=q.gtp() +n+=m}p=q.E7(m)}return n.charCodeAt(0)==0?n:n}, +ku(a,b){var s=A.qt(b,this.a),r=s.d,q=A.af(r).i("bh<1>") +q=A.a8(new A.bh(r,new A.asS(),q),!0,q.i("B.E")) +s.d=q +r=s.b +if(r!=null)B.b.rF(q,0,r) +return s.d}, +Xi(a,b){var s +if(!this.aFg(b))return b +s=A.qt(b,this.a) +s.E9(0) +return s.j(0)}, +aFg(a){var s,r,q,p,o,n,m,l,k=this.a,j=k.ki(a) +if(j!==0){if(k===$.aoX())for(s=0;s0)return o.Xi(0,a) +if(m.ki(a)<=0||m.rG(a))a=o.aNB(0,a) +if(m.ki(a)<=0&&m.ki(s)>0)throw A.d(A.buU(n+a+'" from "'+s+'".')) +r=A.qt(s,m) +r.E9(0) +q=A.qt(a,m) +q.E9(0) +l=r.d +if(l.length!==0&&J.e(l[0],"."))return q.j(0) +l=r.b +p=q.b +if(l!=p)l=l==null||p==null||!m.XF(l,p) +else l=!1 +if(l)return q.j(0) +while(!0){l=r.d +if(l.length!==0){p=q.d +l=p.length!==0&&m.XF(l[0],p[0])}else l=!1 +if(!l)break +B.b.iF(r.d,0) +B.b.iF(r.e,1) +B.b.iF(q.d,0) +B.b.iF(q.e,1)}l=r.d +if(l.length!==0&&J.e(l[0],".."))throw A.d(A.buU(n+a+'" from "'+s+'".')) +l=t.N +B.b.DM(q.d,0,A.bO(r.d.length,"..",!1,l)) +p=q.e +p[0]="" +B.b.DM(p,1,A.bO(r.d.length,m.gtp(),!1,l)) +m=q.d +l=m.length +if(l===0)return"." +if(l>1&&J.e(B.b.gY(m),".")){B.b.iG(q.d) +m=q.e +m.pop() +m.pop() +m.push("")}q.b="" +q.Ew() +return q.j(0)}, +afQ(a){var s,r,q=this,p=A.bz0(a) +if(p.gev()==="file"&&q.a===$.VQ())return p.j(0) +else if(p.gev()!=="file"&&p.gev()!==""&&q.a!==$.VQ())return p.j(0) +s=q.Xi(0,q.a.XE(A.bz0(p))) +r=q.b_i(s) +return q.ku(0,r).length>q.ku(0,s).length?s:r}} +A.asR.prototype={ +$1(a){return a!==""}, +$S:21} +A.asS.prototype={ +$1(a){return a.length!==0}, +$S:21} +A.bin.prototype={ +$1(a){return a==null?"null":'"'+a+'"'}, +$S:92} +A.aCS.prototype={ +ajD(a){var s=this.ki(a) +if(s>0)return B.c.R(a,0,s) +return this.rG(a)?a[0]:null}, +XF(a,b){return a===b}} +A.a5R.prototype={ +gJI(){var s=this,r=t.N,q=new A.a5R(s.a,s.b,s.c,A.cN(s.d,!0,r),A.cN(s.e,!0,r)) +q.Ew() +r=q.d +if(r.length===0){r=s.b +return r==null?"":r}return B.b.gY(r)}, +Ew(){var s,r,q=this +while(!0){s=q.d +if(!(s.length!==0&&J.e(B.b.gY(s),"")))break +B.b.iG(q.d) +q.e.pop()}s=q.e +r=s.length +if(r!==0)s[r-1]=""}, +E9(a){var s,r,q,p,o,n,m=this,l=A.a([],t.s) +for(s=m.d,r=s.length,q=0,p=0;p0){s=B.c.iA(a,"\\",s+1) +if(s>0)return s}return r}if(r<3)return 0 +if(!A.bA1(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}, +ki(a){return this.zo(a,!1)}, +rG(a){return this.ki(a)===1}, +XE(a){var s,r +if(a.gev()!==""&&a.gev()!=="file")throw A.d(A.bl("Uri "+a.j(0)+" must have scheme 'file:'.",null)) +s=a.ge8(a) +if(a.gfz(a)===""){if(s.length>=3&&B.c.ba(s,"/")&&A.bzM(s,1)!=null)s=B.c.hI(s,"/","")}else s="\\\\"+a.gfz(a)+s +r=A.dm(s,"/","\\") +return A.nL(r,0,r.length,B.a5,!1)}, +aPF(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}, +XF(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.aTs.prototype={ +BQ(){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}}, +a85(){if(this.BQ()===44){++this.c +this.BQ()}}, +aER(a,b){var s +if(!(a>=48&&a<=57||a===43||a===45||a===46)||this.b===B.tk)return b +s=this.b +if(s===B.tp)return B.OW +if(s===B.tq)return B.OX +return s}, +nC(){var s=this,r=s.c +if(r>=s.d)return-1 +s.c=r+1 +return s.a.charCodeAt(r)}, +iQ(){var s,r,q,p,o,n,m,l,k,j,i=this,h="Numeric overflow" +i.BQ() +s=i.nC() +r=1 +if(s===43)s=i.nC() +else if(s===45){s=i.nC() +r=-1}if((s<48||s>57)&&s!==46)throw A.d(A.a1("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.nC()}if(!(-17976931348623157e292<=q&&q<=17976931348623157e292))throw A.d(A.a1(h)) +p=0 +if(s===46){s=i.nC() +if(s<48||s>57)throw A.d(A.a1("There must be at least one digit following the .")) +o=1 +while(!0){if(!(48<=s&&s<=57))break +o*=0.1 +p+=(s-48)*o +s=i.nC()}}n=(q+p)*r +m=i.c +l=!1 +if(m57)throw A.d(A.a1("Missing exponent")) +j=0 +while(!0){if(!(s>=48&&s<=57))break +j=j*10+(s-48) +s=i.nC()}if(k)j=-j +if(!(-37<=j&&j<=38))throw A.d(A.a1("Invalid exponent "+j)) +if(j!==0)n*=Math.pow(10,j)}if(!(-17976931348623157e292<=n&&n<=17976931348623157e292))throw A.d(A.a1(h)) +if(s!==-1){--i.c +i.a85()}return n}, +a6q(){var s,r=this,q=r.c +if(q>=r.d)throw A.d(A.a1("Expected more data")) +r.c=q+1 +s=r.a.charCodeAt(q) +r.a85() +if(s===48)return!1 +else if(s===49)return!0 +else throw A.d(A.a1("Invalid flag value"))}, +afG(){return new A.ig(this.aZ6(),t.ij)}, +aZ6(){var s=this +return function(){var r=0,q=1,p,o +return function $async$afG(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.eo() +q.i2(0,1/b0,1/b1) +q.vJ(a9) +l=a8.x9(q,b2) +k=a8.x9(q,b3.b) +j=k.ai(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.ap(0,b3.e===b3.f?-i:i) +a9=l.ab(0,k).ap(0,0.5) +o=a9.a+-j.b +a9=a9.b+j.a +h=new A.dM(o,a9) +l=l.ai(0,h) +g=Math.atan2(l.b,l.a) +k=k.ai(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.eo() +q.vJ(s) +q.i2(0,b0,b1) +e=B.d.dZ(Math.abs(f/1.5717963267948964)) +for(n=b4.a,d=0;d")),q.a,r)}, +c7(a,b){return this.a.c7(a,b)}} +A.NR.prototype={ +mt(a){return this.a===a}, +gk(a){return this.a}} +A.wm.prototype={ +mt(a){return this.a}} +A.a1Z.prototype={ +aqR(a){var s,r,q,p,o,n,m,l +for(s=a.length,r=this.a,q=this.c,p=0;p>>0}}}, +mt(a){var s=this.a,r=!1 +if(s<=a)if(a<=this.b){s=a-s +s=(this.c[B.e.cA(s,5)]&B.CQ[s&31])>>>0!==0}else s=r +else s=r +return s}, +$iha:1} +A.a5_.prototype={ +mt(a){return!this.a.mt(a)}} +A.bjG.prototype={ +$2(a,b){var s=a.a,r=b.a +return s!==r?s-r:a.b-b.b}, +$S:882} +A.bjH.prototype={ +$2(a,b){return a+(b.b-b.a+1)}, +$S:883} +A.bii.prototype={ +$1(a){return new A.fL(a.charCodeAt(0),a.charCodeAt(0))}, +$S:884} +A.bi9.prototype={ +$3(a,b,c){return new A.fL(a.charCodeAt(0),c.charCodeAt(0))}, +$S:885} +A.bi8.prototype={ +$2(a,b){var s +if(a==null)s=b +else s=b instanceof A.wm?new A.wm(!b.a):new A.a5_(b) +return s}, +$S:886} +A.ha.prototype={} +A.fL.prototype={ +mt(a){return this.a<=a&&a<=this.b}, +$iha:1} +A.aao.prototype={ +mt(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}}, +$iha:1} +A.wg.prototype={ +bW(a){var s,r,q,p,o=this.a,n=o[0].bW(a) +if(!(n instanceof A.cn))return n +for(s=o.length,r=this.b,q=n,p=1;p=0)return q}return q}} +A.fC.prototype={ +gfR(a){return A.a([this.a],t.Vz)}, +mr(a,b,c){var s=this +s.tA(0,b,c) +if(s.a.l(0,b))s.a=A.y(s).i("b6").a(c)}} +A.yC.prototype={ +bW(a){var s,r,q,p=this.a.bW(a) +if(p instanceof A.cn)return p +s=this.b.bW(p) +if(s instanceof A.cn)return s +r=p.gk(p) +q=s.gk(s) +return new A.f0(new A.b3(r,q),s.a,s.b)}, +c7(a,b){b=this.a.c7(a,b) +if(b<0)return-1 +b=this.b.c7(a,b) +if(b<0)return-1 +return b}, +gfR(a){return A.a([this.a,this.b],t.Vz)}, +mr(a,b,c){var s=this +s.tA(0,b,c) +if(s.a.l(0,b))s.a=s.$ti.i("b6<1>").a(c) +if(s.b.l(0,b))s.b=s.$ti.i("b6<2>").a(c)}} +A.aNJ.prototype={ +$1(a){return this.a.$2(a.a,a.b)}, +$S(){return this.d.i("@<0>").aH(this.b).aH(this.c).i("1(+(2,3))")}} +A.yD.prototype={ +bW(a){var s,r,q,p,o=this.a.bW(a) +if(o instanceof A.cn)return o +s=this.b.bW(o) +if(s instanceof A.cn)return s +r=this.c.bW(s) +if(r instanceof A.cn)return r +q=o.gk(o) +s=s.gk(s) +p=r.gk(r) +return new A.f0(new A.kr(q,s,p),r.a,r.b)}, +c7(a,b){b=this.a.c7(a,b) +if(b<0)return-1 +b=this.b.c7(a,b) +if(b<0)return-1 +b=this.c.c7(a,b) +if(b<0)return-1 +return b}, +gfR(a){return A.a([this.a,this.b,this.c],t.Vz)}, +mr(a,b,c){var s=this +s.tA(0,b,c) +if(s.a.l(0,b))s.a=s.$ti.i("b6<1>").a(c) +if(s.b.l(0,b))s.b=s.$ti.i("b6<2>").a(c) +if(s.c.l(0,b))s.c=s.$ti.i("b6<3>").a(c)}} +A.aNK.prototype={ +$1(a){return this.a.$3(a.a,a.b,a.c)}, +$S(){var s=this +return s.e.i("@<0>").aH(s.b).aH(s.c).aH(s.d).i("1(+(2,3,4))")}} +A.NG.prototype={ +bW(a){var s,r,q,p,o,n=this,m=n.a.bW(a) +if(m instanceof A.cn)return m +s=n.b.bW(m) +if(s instanceof A.cn)return s +r=n.c.bW(s) +if(r instanceof A.cn)return r +q=n.d.bW(r) +if(q instanceof A.cn)return q +p=m.gk(m) +s=s.gk(s) +r=r.gk(r) +o=q.gk(q) +return new A.f0(new A.aiY([p,s,r,o]),q.a,q.b)}, +c7(a,b){var s=this +b=s.a.c7(a,b) +if(b<0)return-1 +b=s.b.c7(a,b) +if(b<0)return-1 +b=s.c.c7(a,b) +if(b<0)return-1 +b=s.d.c7(a,b) +if(b<0)return-1 +return b}, +gfR(a){var s=this +return A.a([s.a,s.b,s.c,s.d],t.Vz)}, +mr(a,b,c){var s=this +s.tA(0,b,c) +if(s.a.l(0,b))s.a=s.$ti.i("b6<1>").a(c) +if(s.b.l(0,b))s.b=s.$ti.i("b6<2>").a(c) +if(s.c.l(0,b))s.c=s.$ti.i("b6<3>").a(c) +if(s.d.l(0,b))s.d=s.$ti.i("b6<4>").a(c)}} +A.aNM.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.i("@<0>").aH(s.b).aH(s.c).aH(s.d).aH(s.e).i("1(+(2,3,4,5))")}} +A.NH.prototype={ +bW(a){var s,r,q,p,o,n,m=this,l=m.a.bW(a) +if(l instanceof A.cn)return l +s=m.b.bW(l) +if(s instanceof A.cn)return s +r=m.c.bW(s) +if(r instanceof A.cn)return r +q=m.d.bW(r) +if(q instanceof A.cn)return q +p=m.e.bW(q) +if(p instanceof A.cn)return p +o=l.gk(l) +s=s.gk(s) +r=r.gk(r) +q=q.gk(q) +n=p.gk(p) +return new A.f0(new A.aiZ([o,s,r,q,n]),p.a,p.b)}, +c7(a,b){var s=this +b=s.a.c7(a,b) +if(b<0)return-1 +b=s.b.c7(a,b) +if(b<0)return-1 +b=s.c.c7(a,b) +if(b<0)return-1 +b=s.d.c7(a,b) +if(b<0)return-1 +b=s.e.c7(a,b) +if(b<0)return-1 +return b}, +gfR(a){var s=this +return A.a([s.a,s.b,s.c,s.d,s.e],t.Vz)}, +mr(a,b,c){var s=this +s.tA(0,b,c) +if(s.a.l(0,b))s.a=s.$ti.i("b6<1>").a(c) +if(s.b.l(0,b))s.b=s.$ti.i("b6<2>").a(c) +if(s.c.l(0,b))s.c=s.$ti.i("b6<3>").a(c) +if(s.d.l(0,b))s.d=s.$ti.i("b6<4>").a(c) +if(s.e.l(0,b))s.e=s.$ti.i("b6<5>").a(c)}} +A.aNN.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.i("@<0>").aH(s.b).aH(s.c).aH(s.d).aH(s.e).aH(s.f).i("1(+(2,3,4,5,6))")}} +A.NI.prototype={ +bW(a){var s,r,q,p,o,n,m,l,k,j=this,i=j.a.bW(a) +if(i instanceof A.cn)return i +s=j.b.bW(i) +if(s instanceof A.cn)return s +r=j.c.bW(s) +if(r instanceof A.cn)return r +q=j.d.bW(r) +if(q instanceof A.cn)return q +p=j.e.bW(q) +if(p instanceof A.cn)return p +o=j.f.bW(p) +if(o instanceof A.cn)return o +n=j.r.bW(o) +if(n instanceof A.cn)return n +m=j.w.bW(n) +if(m instanceof A.cn)return m +l=i.gk(i) +s=s.gk(s) +r=r.gk(r) +q=q.gk(q) +p=p.gk(p) +o=o.gk(o) +n=n.gk(n) +k=m.gk(m) +return new A.f0(new A.aj_([l,s,r,q,p,o,n,k]),m.a,m.b)}, +c7(a,b){var s=this +b=s.a.c7(a,b) +if(b<0)return-1 +b=s.b.c7(a,b) +if(b<0)return-1 +b=s.c.c7(a,b) +if(b<0)return-1 +b=s.d.c7(a,b) +if(b<0)return-1 +b=s.e.c7(a,b) +if(b<0)return-1 +b=s.f.c7(a,b) +if(b<0)return-1 +b=s.r.c7(a,b) +if(b<0)return-1 +b=s.w.c7(a,b) +if(b<0)return-1 +return b}, +gfR(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)}, +mr(a,b,c){var s=this +s.tA(0,b,c) +if(s.a.l(0,b))s.a=s.$ti.i("b6<1>").a(c) +if(s.b.l(0,b))s.b=s.$ti.i("b6<2>").a(c) +if(s.c.l(0,b))s.c=s.$ti.i("b6<3>").a(c) +if(s.d.l(0,b))s.d=s.$ti.i("b6<4>").a(c) +if(s.e.l(0,b))s.e=s.$ti.i("b6<5>").a(c) +if(s.f.l(0,b))s.f=s.$ti.i("b6<6>").a(c) +if(s.r.l(0,b))s.r=s.$ti.i("b6<7>").a(c) +if(s.w.l(0,b))s.w=s.$ti.i("b6<8>").a(c)}} +A.aNO.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.i("@<0>").aH(s.b).aH(s.c).aH(s.d).aH(s.e).aH(s.f).aH(s.r).aH(s.w).aH(s.x).i("1(+(2,3,4,5,6,7,8,9))")}} +A.xs.prototype={ +mr(a,b,c){var s,r,q,p +this.tA(0,b,c) +for(s=this.a,r=s.length,q=this.$ti.i("b6"),p=0;p=l||!r.mt(n.charCodeAt(q)))return new A.cn(o.b,n,q);++q;++p}s=o.d +while(!0){if(!(q=p||!r.mt(a.charCodeAt(b)))return-1;++b;++q}s=this.d +while(!0){if(!(b")) +for(s=o.b,r=a;n.length=s)return p +q=o.a.bW(r) +if(q instanceof A.cn)return p +n.push(q.gk(q))}else return new A.f0(n,r.a,r.b)}}, +c7(a,b){var s,r,q,p,o=this +for(s=o.b,r=b,q=0;q=s)return-1 +p=o.a.c7(a,r) +if(p<0)return-1;++q}else return r}} +A.Ku.prototype={ +gfR(a){return A.a([this.a,this.e],t.Vz)}, +mr(a,b,c){this.a_5(0,b,c) +if(this.e.l(0,b))this.e=c}} +A.Mi.prototype={ +bW(a){var s,r,q,p=this,o=A.a([],p.$ti.i("E<1>")) +for(s=p.b,r=a;o.length>>2][m&3]=l}k=a.c+1<<2>>>0 +for(a0=s>6,o=s;o>>0)^$.bU1[B.d.dv(o/s-1)] +else if(a0&&r===4)i=A.bzg(i) +r=a.b +r.toString +j=o-s +j=r[B.e.cA(j,2)][j&3] +r[B.e.cA(o,2)][o&3]=(j^i)>>>0}for(a0=a.c,r=a.b,h=1;h>>7&16843009)*27 +e=(f&2139062143)<<1^(f>>>7&16843009)*27 +d=(e&2139062143)<<1^(e>>>7&16843009)*27 +c=g^d +g=f^c +b=e^c +j[o]=(f^e^d^(g>>>8|(g&$.kq[24])<<24)^(b>>>16|(b&$.kq[16])<<16)^(c>>>24|(c&$.kq[8])<<8))>>>0}}, +XM(a,b,c,d){var s,r,q,p=this +if(p.b==null)throw A.d(A.a1("AES engine not initialised")) +if(b+16>a.byteLength)throw A.d(A.bl("Input buffer too short",null)) +if(d+16>c.byteLength)throw A.d(A.bl("Output buffer too short",null)) +s=A.eT(a.buffer,a.byteOffset,a.length) +r=A.eT(c.buffer,c.byteOffset,c.length) +p.a===$&&A.b() +p.aMs(s,b) +q=p.b +q.toString +p.ase(q) +p.aGy(r,d) +return 16}, +ase(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=this,d=e.d +d===$&&A.b() +s=e.c +s===$&&A.b() +r=a[s] +d=e.d=(d^B.e.aA(r[0]))>>>0 +q=e.e +q===$&&A.b() +q=e.e=(q^B.e.aA(r[1]))>>>0 +p=e.f +p===$&&A.b() +p=e.f=(p^B.e.aA(r[2]))>>>0 +o=e.r +o===$&&A.b() +r=e.r=(o^B.e.aA(r[3]))>>>0 +n=s-1 +for(s=q,q=r,r=p;n>1;m=r,r=d,d=m){p=$.nP[d&255] +o=$.nQ[q>>>8&255] +l=$.nR[r>>>16&255] +k=$.nS[s>>>24&255] +j=a[n] +i=p^o^l^k^B.e.aA(j[0]) +h=$.nP[s&255]^$.nQ[d>>>8&255]^$.nR[q>>>16&255]^$.nS[r>>>24&255]^B.e.aA(j[1]) +g=$.nP[r&255]^$.nQ[s>>>8&255]^$.nR[d>>>16&255]^$.nS[q>>>24&255]^B.e.aA(j[2]) +f=$.nP[q&255]^$.nQ[r>>>8&255]^$.nR[s>>>16&255]^$.nS[d>>>24&255]^B.e.aA(j[3]);--n +j=$.nP[i&255] +d=$.nQ[f>>>8&255] +s=$.nR[g>>>16&255] +r=$.nS[h>>>24&255] +q=a[n] +r=(j^d^s^r^B.e.aA(q[0]))>>>0 +e.d=r +s=($.nP[h&255]^$.nQ[i>>>8&255]^$.nR[f>>>16&255]^$.nS[g>>>24&255]^B.e.aA(q[1]))>>>0 +e.e=s +d=($.nP[g&255]^$.nQ[h>>>8&255]^$.nR[i>>>16&255]^$.nS[f>>>24&255]^B.e.aA(q[2]))>>>0 +e.f=d +q=($.nP[f&255]^$.nQ[g>>>8&255]^$.nR[h>>>16&255]^$.nS[i>>>24&255]^B.e.aA(q[3]))>>>0 +e.r=q;--n}p=$.nP[d&255] +o=$.nQ[q>>>8&255] +l=$.nR[r>>>16&255] +k=$.nS[s>>>24&255] +j=a[n] +i=p^o^l^k^B.e.aA(j[0]) +h=$.nP[s&255]^$.nQ[d>>>8&255]^$.nR[q>>>16&255]^$.nS[r>>>24&255]^B.e.aA(j[1]) +g=$.nP[r&255]^$.nQ[s>>>8&255]^$.nR[d>>>16&255]^$.nS[q>>>24&255]^B.e.aA(j[2]) +f=$.nP[q&255]^$.nQ[r>>>8&255]^$.nR[s>>>16&255]^$.nS[d>>>24&255]^B.e.aA(j[3]) +j=$.jV[i&255] +d=$.jV[f>>>8&255] +s=$.jV[g>>>16&255] +r=$.jV[h>>>24&255] +q=a[0] +e.d=(j&255^(d&255)<<8^(s&255)<<16^r<<24^B.e.aA(q[0]))>>>0 +e.e=($.jV[h&255]&255^($.jV[i>>>8&255]&255)<<8^($.jV[f>>>16&255]&255)<<16^$.jV[g>>>24&255]<<24^B.e.aA(q[1]))>>>0 +e.f=($.jV[g&255]&255^($.jV[h>>>8&255]&255)<<8^($.jV[i>>>16&255]&255)<<16^$.jV[f>>>24&255]<<24^B.e.aA(q[2]))>>>0 +e.r=($.jV[f&255]&255^($.jV[g>>>8&255]&255)<<8^($.jV[h>>>16&255]&255)<<16^$.jV[i>>>24&255]<<24^B.e.aA(q[3]))>>>0}, +aMs(a,b){var s=this +s.d=A.aoM(a,b,B.an) +s.e=A.aoM(a,b+4,B.an) +s.f=A.aoM(a,b+8,B.an) +s.r=A.aoM(a,b+12,B.an)}, +aGy(a,b){var s=this,r=s.d +r===$&&A.b() +A.bjI(r,a,b,B.an) +r=s.e +r===$&&A.b() +A.bjI(r,a,b+4,B.an) +r=s.f +r===$&&A.b() +A.bjI(r,a,b+8,B.an) +r=s.r +r===$&&A.b() +A.bjI(r,a,b+12,B.an)}} +A.ari.prototype={ +gaOR(){return 16}, +XM(a,b,c,d){var s +this.e===$&&A.b() +s=this.avl(a,b,c,d) +return s}, +avl(a,b,c,d){var s,r,q,p,o=this +if(b+16>a.length)throw A.d(A.bl("Input buffer too short",null)) +s=o.d +s.toString +B.G.dC(s,0,16,A.dw(a.buffer,a.byteOffset+b,16)) +r=o.a.XM(a,b,c,d) +for(s=o.c,q=0;q<16;++q){p=d+q +c[p]=c[p]^s[q]}o.c=o.d +o.d=s +return r}} +A.aPC.prototype={ +aZz(){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.e.cA(q,17) +o=$.kq[15] +n=B.e.cA(q,19) +m=$.kq[13] +l=B.e.cA(q,10) +k=s[r-7] +j=s[r-15] +s[r]=(((p|(q&o)<<15)^(n|(q&m)<<13)^l)>>>0)+k+(((B.e.cA(j,7)|(j&$.kq[25])<<25)^(B.e.cA(j,18)|(j&$.kq[14])<<14)^B.e.cA(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.e.cA(e,6) +o=$.kq[26] +n=B.e.cA(e,11) +m=$.kq[21] +l=B.e.cA(e,25) +k=$.kq[7] +b=b+(((p|(e&o)<<26)^(n|(e&m)<<21)^(l|(e&k)<<7))>>>0)+((e&d^~e&c)>>>0)+$.yl[r]+s[r]>>>0 +f=f+b>>>0 +l=B.e.cA(a,2) +n=$.kq[30] +p=B.e.cA(a,13) +j=$.kq[19] +a1=B.e.cA(a,22) +a2=$.kq[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)+$.yl[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)+$.yl[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)+$.yl[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)+$.yl[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)+$.yl[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)+$.yl[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)+$.yl[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}} +A.aMr.prototype={} +A.aM6.prototype={ +aRA(a,b,c,d){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=this,e=f.a +e===$&&A.b() +s=e.c +e=f.b +r=e.b +r===$&&A.b() +q=B.e.im(s+r-1,r) +p=new Uint8Array(4) +o=new Uint8Array(q*r) +n=B.G.hL(a,b) +m=e.a +m.eU(0) +l=n.length +k=e.c +k===$&&A.b() +if(l>k){m.vR(0,n,0,l) +n=e.d +n===$&&A.b() +m.yn(n,0) +l=e.b}else{j=e.d +j===$&&A.b() +B.G.dC(j,0,l,n)}n=e.d +n===$&&A.b() +B.G.ru(n,l,n.length,0) +n=e.e +n===$&&A.b() +B.G.dC(n,0,k,e.d) +e.aa8(e.d,k,54) +e.aa8(e.e,k,92) +e=e.d +m.vR(0,e,0,e.length) +for(i=0,h=1;h<=q;++h){for(g=3;!0;--g){p[g]=p[g]+1 +if(p[g]!==0)break}e=f.a +f.axi(e.a,e.b,p,o,i) +i+=r}B.G.dC(c,d,d+s,o) +return f.a.c}, +axi(a,b,c,d,e){var s,r,q,p,o,n,m,l=this +if(b<=0)throw A.d(A.bl("Iteration count must be at least 1.",null)) +s=l.b +r=s.a +r.vR(0,a,0,a.length) +r.vR(0,c,0,4) +q=l.c +q===$&&A.b() +s.yn(q,0) +q=l.c +B.G.dC(d,e,e+q.length,q) +for(p=1;p>>29)>>>0 +q.b=A.bAR(s,3) +r.aHT() +r.aHS(q) +r.QL() +r.aGz(a,b) +r.eU(0) +return 32}, +a6F(a,b){var s=this,r=s.w +r===$&&A.b() +s.w=r+1 +s.r[r]=A.aoM(a,b,s.d) +if(s.w===16)s.QL()}, +QL(){this.aZz() +this.w=0 +B.b.ru(this.r,0,16,0)}, +aHR(a,b,c){for(;c>0;){this.NW(a[b]);++b;--c}}, +aHY(a,b,c){var s,r +for(s=this.a,r=0;c>4;){this.a6F(a,b) +b+=4 +c-=4 +s.ZV(4) +r+=4}return r}, +aHX(a,b,c){var s,r=0 +while(!0){s=this.c +s===$&&A.b() +if(!(s!==0&&c>0))break +this.NW(a[b]);++b;--c;++r}return r}, +aHT(){this.NW(128) +while(!0){var s=this.c +s===$&&A.b() +if(!(s!==0))break +this.NW(0)}}, +aHS(a){var s,r=this,q=r.w +q===$&&A.b() +if(q>14)r.QL() +q=r.d +switch(q){case B.an:q=r.r +s=a.b +s===$&&A.b() +q[14]=s +s=a.a +s===$&&A.b() +q[15]=s +break +case B.eI: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.a1("Invalid endianness: "+q.j(0)))}}, +aGz(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;o>>0 +r.b=q +if(s!==q){q=r.a +q===$&&A.b();++q +r.a=q +r.a=q>>>0}}, +j(a){var s=this,r=new A.cD(""),q=s.a +q===$&&A.b() +s.a6g(r,q) +q=s.b +q===$&&A.b() +s.a6g(r,q) +q=r.a +return q.charCodeAt(0)==0?q:q}, +a6g(a,b){var s,r=B.e.hY(b,16) +for(s=8-r.length;s>0;--s)a.a+="0" +a.a+=r}, +gB(a){var s,r=this.a +r===$&&A.b() +s=this.b +s===$&&A.b() +return A.a4(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.wf.prototype={} +A.HM.prototype={ +xO(a,b){return this.e.$3(a,A.cy(a,!0,this.$ti.c),b)}} +A.HN.prototype={ +xO(a,b){var s=this.$ti +return this.e.$4(a,A.cy(a,!0,s.c),A.cy(a,!0,s.y[1]),b)}} +A.HO.prototype={ +xO(a,b){var s=this.$ti +return this.e.$5(a,A.cy(a,!0,s.c),A.cy(a,!0,s.y[1]),A.cy(a,!0,s.y[2]),b)}} +A.Kz.prototype={} +A.aF2.prototype={ +$0(){var s=this.a +return s==null?null:s.K(0,this.b.gaf0())}, +$S:0} +A.BF.prototype={ +cp(a){return new A.RM(null,this,B.aA)}, +xO(a,b){return this.atu(b)}, +PT(a,b){var s,r=this +if(r.r!=null)s=new A.fi(new A.aCH(r,a),null) +else{a.toString +s=a}return new A.fP(r,s,b,r.$ti.i("fP<1?>"))}, +atu(a){return this.PT(a,null)}} +A.aCH.prototype={ +$1(a){return this.a.r.$2(a,this.b)}, +$S:13} +A.RM.prototype={} +A.fP.prototype={ +dY(a){return!1}, +cp(a){return new A.zm(A.ir(null,null,null,t.R,t.X),this,B.aA,this.$ti.i("zm<1>"))}} +A.zm.prototype={ +gwN(){var s,r=this,q=r.cY +if(q===$){s=r.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(r)).f.e.a0() +s.a=r +r.cY!==$&&A.aH() +r.cY=s +q=s}return q}, +jc(a){var s={} +s.a=null +this.mw(new A.b8a(s,a)) +return s.a}, +hs(a,b){this.Go(a,b)}, +gaL(){return this.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(this))}, +Yn(a,b){var s=this.a2,r=s.h(0,a) +if(r!=null&&!this.$ti.i("bPx<1>").b(r))return +s.n(0,a,B.ix)}, +Xj(a,b){var s,r,q,p,o,n=this.a2.h(0,b),m=!1 +if(n!=null)if(this.$ti.i("bPx<1>").b(n)){if(b.as)return +for(r=n.c,q=r.length,p=0;p") +r.a(A.bc.prototype.gaL.call(s)) +s.gwN().UU(s.ed) +s.ed=!1 +if(s.d3){s.d3=!1 +s.rP(r.a(A.bc.prototype.gaL.call(s)))}return s.a_G()}, +ou(){this.gwN().m() +this.Af()}, +aX4(){if(!this.b_)return +this.dL() +this.d3=!0}, +gk(a){var s=this.gwN() +return s.gk(s)}, +pv(a,b){return this.P5(a,b)}, +Kx(a){return this.pv(a,null)}, +$ia1a:1} +A.b8a.prototype={ +$1(a){var s=this.b +if(A.K(a.gaL())===A.cK(s)){this.a.a=t.IS.a(a) +return!1}this.a.a=a.jc(s) +return!1}, +$S:37} +A.aex.prototype={} +A.j1.prototype={ +ahS(a){return!1}, +m(){}, +UU(a){}} +A.EF.prototype={ +a0(){return new A.Qt(this.$ti.i("Qt<1>"))}} +A.Qt.prototype={ +gk(a){var s,r,q,p,o,n,m=this,l=null,k=m.c +if(k&&m.f!=null){k=A.cK(m.$ti.c).j(0) +q=m.f +q=q==null?l:q.j(0) +throw A.d(A.a1("Tried to read a provider that threw during the creation of its value.\nThe exception occurred during the creation of type "+k+".\n\n"+A.c(q)))}if(!k){m.c=!0 +k=m.a +k.toString +q=m.$ti.i("j1.D") +q.a(k.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(k)).f.e) +try{k=m.a +k.toString +k=q.a(k.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(k)).f.e) +p=m.a +p.toString +m.d=k.a.$1(p)}catch(o){s=A.v(o) +r=A.aT(o) +m.f=new A.cM(s,r,"provider",l,l,!1) +throw o}finally{}k=m.a +k.toString +q.a(k.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(k)).f.e)}k=m.a +k.b_=!1 +if(m.b==null){q=m.$ti +k=q.i("j1.D").a(A.y(k).i("fP<1>").a(A.bc.prototype.gaL.call(k)).f.e) +p=m.a +p.toString +n=m.d +q=n==null?q.c.a(n):n +q=k.e.$2(p,q) +k=q +m.b=k}m.a.b_=!0 +k=m.d +return k==null?m.$ti.c.a(k):k}, +m(){var s,r,q,p,o=this +o.a0_() +s=o.b +if(s!=null)s.$0() +if(o.c){s=o.a +s.toString +r=o.$ti +s=r.i("j1.D").a(s.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(s)).f.e) +q=o.a +q.toString +p=o.d +r=p==null?r.c.a(p):p +s.f.$2(q,r)}}, +UU(a){var s,r=this +if(a)if(r.c){s=r.a +s.toString +r.$ti.i("j1.D").a(s.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(s)).f.e)}s=r.a +s.toString +r.e=r.$ti.i("j1.D").a(s.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(s)).f.e) +return r.aos(a)}} +A.G8.prototype={ +a0(){return new A.Uo(this.$ti.i("Uo<1>"))}, +gk(a){return this.a}} +A.Uo.prototype={ +gk(a){var s,r,q=this,p=q.a +p.b_=!1 +if(q.b==null){s=q.$ti.i("j1.D") +p=s.a(A.y(p).i("fP<1>").a(A.bc.prototype.gaL.call(p)).f.e) +r=q.a +r.toString +r=p.c.$2(r,s.a(r.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(r)).f.e).a) +q.b=r}p=q.a +p.b_=!0 +return q.$ti.i("j1.D").a(A.y(p).i("fP<1>").a(A.bc.prototype.gaL.call(p)).f.e).a}, +ahS(a){var s,r,q=this,p=q.a +p.toString +s=q.$ti.i("j1.D") +s.a(p.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(p)).f.e) +p=q.a +p.toString +r=!a.a.l(0,s.a(p.$ti.i("fP<1>").a(A.bc.prototype.gaL.call(p)).f.e).a) +if(r&&q.b!=null){q.b.$0() +q.b=null}return r}, +m(){this.a0_() +var s=this.b +if(s!=null)s.$0()}} +A.a4M.prototype={} +A.aK_.prototype={ +$1(a){var s=this.a +return s.PT(a,s.a)}, +$S:323} +A.aK0.prototype={ +$1(a){var s=this.b +return this.a.$1(s.PT(a,s.a))}, +$S:323} +A.aK1.prototype={ +$2(a,b){return this.a.a.$1(b)}, +$S:54} +A.a6o.prototype={ +j(a){return"A provider for "+this.a.j(0)+" unexpectedly returned null."}, +$ibm:1} +A.a6n.prototype={ +j(a){return"Provider<"+this.a.j(0)+"> not found for "+this.b.j(0)}, +$ibm:1} +A.Ij.prototype={ +gi7(){return!0}, +aK(a,b,c,d){var s,r,q,p,o,n,m,l=null,k=null +try{k=this.a.$0()}catch(q){s=A.v(q) +r=A.aT(q) +p=s +o=r +A.ez(p,"error",t.K) +n=this.$ti.i("md<1>") +m=new A.md(l,l,l,l,n) +m.ji(p,o==null?A.t6(p):o) +m.AB() +return new A.cA(m,n.i("cA<1>")).aK(a,b,c,d)}return k.aK(a,b,c,d)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}} +A.b9W.prototype={ +D(){return"_MissingCase."+this.b}} +A.aa1.prototype={ +j(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.Hg.prototype={ +gwm(a){return new A.vf(this,this.$ti.i("vf<1>"))}, +gk(a){var s=this.e.b +if(s!==B.oy)return this.$ti.c.a(s) +throw A.d(new A.aa1(B.aAj))}} +A.aqA.prototype={ +$0(){var s,r,q=this,p=q.a,o=p.c +if(o!=null&&!p.a){p=q.b +return new A.Ol(o.a,o.b,q.c.i("Ol<0>")).iZ(new A.aG(p,A.y(p).i("aG<1>")))}s=p.b +if(s!==B.oy&&p.a){p=q.b +r=q.c +return new A.Om(r.a(s),r.i("Om<0>")).iZ(new A.aG(p,A.y(p).i("aG<1>")))}p=q.b +return new A.aG(p,A.y(p).i("aG<1>"))}, +$S(){return this.c.i("b7<0>()")}} +A.amA.prototype={ +gk(a){return this.b}} +A.vf.prototype={ +gi7(){return!0}, +gB(a){return(A.at(this.a)^892482866)>>>0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.vf&&b.a===this.a}, +aK(a,b,c,d){return this.a.aK(a,b,c,d)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}, +gk(a){return this.a.gk(0)}} +A.DN.prototype={ +gwm(a){return new A.G0(this,this.$ti.i("G0<1>"))}, +cX(a,b){if(this.c)throw A.d(A.a1("You cannot add an error while items are being added from addStream")) +this.aLg(a,b)}, +pd(a){return this.cX(a,null)}, +aLg(a,b){var s,r=this.b +if((r.c&4)===0){s=this.e +s.c=new A.a_U(a,b) +s.a=!1}r.cX(a,b)}, +q(a,b){if(this.c)throw A.d(A.a1(u.bW)) +this.aLf(0,b)}, +aLf(a,b){var s,r=this.b +if((r.c&4)===0){s=this.e +s.b=b +s.a=!0}r.q(0,b)}, +L(a){if(this.c)throw A.d(A.a1("You cannot close the subject while items are being added from addStream")) +return this.b.L(0)}, +$ice:1} +A.G0.prototype={ +gi7(){return!0}, +gB(a){return(A.at(this.a)^892482866)>>>0}, +l(a,b){if(b==null)return!1 +if(this===b)return!0 +return b instanceof A.G0&&b.a===this.a}, +aK(a,b,c,d){return this.a.aK(a,b,c,d)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}} +A.FV.prototype={ +jA(a){return this.gqk().q(0,a)}, +kX(a,b,c){return this.gqk().cX(b,c)}, +pT(){return this.gqk().L(0)}, +Xl(a){}, +Xt(){this.gqk().q(0,this.c)}, +afp(a){}, +afs(a){}} +A.Om.prototype={ +iZ(a){var s=this.$ti.c +return A.bzS(a,new A.aSt(this),s,s)}} +A.aSt.prototype={ +$0(){return new A.FV(this.a.a)}, +$S(){return this.a.$ti.i("FV<1>()")}} +A.FU.prototype={ +jA(a){return this.gqk().q(0,a)}, +kX(a,b,c){return this.gqk().cX(b,c)}, +pT(){return this.gqk().L(0)}, +Xl(a){}, +Xt(){this.gqk().cX(this.c,this.d)}, +afp(a){}, +afs(a){}} +A.Ol.prototype={ +iZ(a){var s=this.$ti.c +return A.bzS(a,new A.aSs(this),s,s)}} +A.aSs.prototype={ +$0(){var s=this.a +return new A.FU(s.a,s.b)}, +$S(){return this.a.$ti.i("FU<1>()")}} +A.b2S.prototype={ +j(a){return"<>"}} +A.a_U.prototype={ +j(a){return"ErrorAndStackTrace{error: "+A.c(this.a)+", stackTrace: "+A.c(this.b)+"}"}, +l(a,b){var s,r=this +if(b==null)return!1 +if(r!==b)s=b instanceof A.a_U&&A.K(r)===A.K(b)&&J.e(r.a,b.a)&&r.b==b.b +else s=!0 +return s}, +gB(a){return(J.W(this.a)^J.W(this.b))>>>0}} +A.JD.prototype={ +gqk(){var s=this.a +return s==null?A.V(A.a1("Must call setSink(sink) before accessing!")):s}} +A.bhD.prototype={ +$1(a){var s={},r=this.a.$0() +r.a=new A.Se(a) +s.a=null +s.b=!1 +r.Xt() +new A.bhE(s,this.b,r).$0() +a.r=new A.bhC(s,r)}, +$S(){return this.c.i("~(a4N<0>)")}} +A.bhE.prototype={ +$1(a){var s,r,q,p=this.a +if(p.b)return +s=this.c +r=s.gXm() +q=s.gpU(s) +p.a=this.b.eQ(r,s.gz7(),q)}, +$0(){return this.$1(null)}, +$S:324} +A.bhC.prototype={ +$0(){var s,r,q=this.a +q.b=!0 +s=q.a +r=s==null?null:s.S(0) +q.a=null +return A.bAZ(r,this.b.Xl(0))}, +$S:0} +A.bhH.prototype={ +$0(){return this.a.$0()}, +$S(){return this.b.i("@<0>").aH(this.c).i("JD<1,2>()")}} +A.bhI.prototype={ +$0(){var s=this,r=s.c,q=s.d +r.jR().a=new A.Re(q) +r.jR().Xt() +new A.bhK(s.a,s.b,r,q).$0()}, +$S:0} +A.bhK.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.jR().gXm() +p=J.bEM(r.jR()) +n.a=s.eQ(q,r.jR().gz7(),p) +r.jR() +if(!s.gi7()){s=o.d +s.safo(0,new A.bhF(n,r)) +s.safr(0,new A.bhG(n,r))}}, +$0(){return this.$1(null)}, +$S:324} +A.bhF.prototype={ +$0(){this.a.a.ic(0) +J.bEX(this.b.jR())}, +$S:0} +A.bhG.prototype={ +$0(){this.a.a.ie(0) +J.bEY(this.b.jR())}, +$S:0} +A.bhJ.prototype={ +$0(){var s,r,q=this.a +q.b=!0 +s=q.a +r=s==null?null:s.S(0) +q.a=null +q=this.b +q.jR() +return A.bAZ(r,J.bEW(q.jR()))}, +$S:0} +A.Se.prototype={ +q(a,b){return this.a.aaq(b)}, +cX(a,b){return this.a.Uw(a,b)}, +L(a){return this.a.V6()}, +$ice:1} +A.Re.prototype={ +q(a,b){return this.a.q(0,b)}, +cX(a,b){return this.a.cX(a,b)}, +L(a){return this.a.L(0)}, +$ice:1} +A.Du.prototype={ +N(a,b){return J.cO(this.a,b)}, +C(a,b){J.nW(this.a,b) +return $.aoV().C(0,"flutter."+b)}, +BN(a,b,c){A.f3(c,"value") +J.bT(this.a,b,c) +return $.aoV().ts(a,"flutter."+b,c)}} +A.aIz.prototype={ +C(a,b){return this.b_l(0,b)}, +b_l(a,b){var s=0,r=A.n(t.y),q,p +var $async$C=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:s=3 +return A.f(B.qy.le("remove",A.C(["key",b],t.N,t.z),!1,t.y),$async$C) +case 3:p=d +p.toString +q=p +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$C,r)}, +ts(a,b,c){return this.akS(a,b,c)}, +akS(a,b,c){var s=0,r=A.n(t.y),q,p +var $async$ts=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:s=3 +return A.f(B.qy.le("set"+a,A.C(["key",b,"value",c],t.N,t.z),!1,t.y),$async$ts) +case 3:p=e +p.toString +q=p +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$ts,r)}, +te(a){var s=0,r=A.n(t.nf),q,p,o,n +var $async$te=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=t.N +o=t.K +s=3 +return A.f(B.qy.WS("getAll",p,o),$async$te) +case 3:n=c +q=n==null?A.w(p,o):n +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$te,r)}} +A.aRw.prototype={} +A.aN0.prototype={} +A.aAM.prototype={} +A.aRu.prototype={ +te(a){var s=0,r=A.n(t.nf),q,p=this +var $async$te=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:q=p.O6(new A.aAM(new A.aN0("flutter.",null))) +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$te,r)}, +O6(a){return this.aiH(a)}, +aiH(a){var s=0,r=A.n(t.nf),q,p=this,o,n,m,l,k,j,i +var $async$O6=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:j=a.a +i=A.w(t.N,t.K) +for(o=p.ayR(j.a,j.b),n=J.ay(o.a),o=new A.va(n,o.b);o.u();){m=n.gI(n) +l=self.window.localStorage.getItem(m) +l.toString +k=A.bSo(l) +if(k!=null)i.n(0,m,k)}q=i +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$O6,r)}, +C(a,b){return this.b_m(0,b)}, +b_m(a,b){var s=0,r=A.n(t.y),q +var $async$C=A.j(function(c,d){if(c===1)return A.k(d,r) +while(true)switch(s){case 0:self.window.localStorage.removeItem(b) +q=!0 +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$C,r)}, +ts(a,b,c){return this.akT(a,b,c)}, +akT(a,b,c){var s=0,r=A.n(t.y),q +var $async$ts=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:self.window.localStorage.setItem(b,B.a7.lw(c)) +q=!0 +s=1 +break +case 1:return A.l(q,r)}}) +return A.m($async$ts,r)}, +ayR(a,b){var s=A.bSY(b) +return new A.bh(s,new A.aRv(a),s.$ti.i("bh"))}} +A.aRv.prototype={ +$1(a){return B.c.ba(a,this.a)}, +$S:21} +A.bhL.prototype={ +$1(a){return!0}, +$S:21} +A.aSb.prototype={ +gt(a){return this.c.length}, +gaWy(a){return this.b.length}, +ar1(a,b){var s,r,q,p,o,n +for(s=this.c,r=s.length,q=this.b,p=0;p=r||s[n]!==10)o=10}if(o===10)q.push(p+1)}}, +zJ(a){var s,r=this +if(a<0)throw A.d(A.h1("Offset may not be negative, was "+a+".")) +else if(a>r.c.length)throw A.d(A.h1("Offset "+a+u.D+r.gt(0)+".")) +s=r.b +if(a=B.b.gY(s))return s.length-1 +if(r.aDQ(a)){s=r.d +s.toString +return s}return r.d=r.axr(a)-1}, +aDQ(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}, +Oa(a){var s,r,q=this +if(a<0)throw A.d(A.h1("Offset may not be negative, was "+a+".")) +else if(a>q.c.length)throw A.d(A.h1("Offset "+a+" must be not be greater than the number of characters in the file, "+q.gt(0)+".")) +s=q.zJ(a) +r=q.b[s] +if(r>a)throw A.d(A.h1("Line "+s+" comes after offset "+a+".")) +return a-r}, +ti(a){var s,r,q,p +if(a<0)throw A.d(A.h1("Line may not be negative, was "+a+".")) +else{s=this.b +r=s.length +if(a>=r)throw A.d(A.h1("Line "+a+" must be less than the number of lines in the file, "+this.gaWy(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.h1("Line "+a+" doesn't have 0 columns.")) +return q}} +A.a09.prototype={ +geY(){return this.a.a}, +gfK(a){return this.a.zJ(this.b)}, +ghB(){return this.a.Oa(this.b)}, +gdA(a){return this.b}} +A.F0.prototype={ +geY(){return this.a.a}, +gt(a){return this.c-this.b}, +gcD(a){return A.bm8(this.a,this.b)}, +gbV(a){return A.bm8(this.a,this.c)}, +ge3(a){return A.ia(B.ra.cK(this.a.c,this.b,this.c),0,null)}, +gbN(a){var s=this,r=s.a,q=s.c,p=r.zJ(q) +if(r.Oa(q)===0&&p!==0){if(q-s.b===0)return p===r.b.length-1?"":A.ia(B.ra.cK(r.c,r.ti(p),r.ti(p+1)),0,null)}else q=p===r.b.length-1?r.c.length:r.ti(p+1) +return A.ia(B.ra.cK(r.c,r.ti(r.zJ(s.b)),q),0,null)}, +bO(a,b){var s +if(!(b instanceof A.F0))return this.ao8(0,b) +s=B.e.bO(this.b,b.b) +return s===0?B.e.bO(this.c,b.c):s}, +l(a,b){var s=this +if(b==null)return!1 +if(!(b instanceof A.F0))return s.ao7(0,b) +return s.b===b.b&&s.c===b.c&&J.e(s.a.a,b.a.a)}, +gB(a){return A.a4(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)}, +$ir0:1} +A.aBg.prototype={ +aV3(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.aa4(B.b.gW(a3).c) +s=a1.e +r=A.bO(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.e(l,k)){a1.Jn("\u2575") +q.a+="\n" +a1.aa4(k)}else if(m.b+1!==n.b){a1.aNy("...") +q.a+="\n"}}for(l=n.d,k=A.af(l).i("e5<1>"),j=new A.e5(l,k),j=new A.ci(j,j.gt(0),k.i("ci")),k=k.i("aN.E"),i=n.b,h=n.a;j.u();){g=j.d +if(g==null)g=k.a(g) +f=g.a +e=f.gcD(f) +e=e.gfK(e) +d=f.gbV(f) +if(e!==d.gfK(d)){e=f.gcD(f) +f=e.gfK(e)===i&&a1.aDR(B.c.R(h,0,f.gcD(f).ghB()))}else f=!1 +if(f){c=B.b.dV(r,a2) +if(c<0)A.V(A.bl(A.c(r)+" contains no null elements.",a2)) +r[c]=g}}a1.aNx(i) +q.a+=" " +a1.aNw(n,r) +if(s)q.a+=" " +b=B.b.aee(l,new A.aBB()) +a=b===-1?a2:l[b] +k=a!=null +if(k){j=a.a +g=j.gcD(j) +g=g.gfK(g)===i?j.gcD(j).ghB():0 +f=j.gbV(j) +a1.aNu(h,g,f.gfK(f)===i?j.gbV(j).ghB():h.length,p)}else a1.Jp(h) +q.a+="\n" +if(k)a1.aNv(n,a,r) +for(k=l.length,a0=0;a0")),q=this.r,r=r.i("S.E");s.u();){p=s.d +if(p==null)p=r.a(p) +if(p===9){p=B.c.ap(" ",4) +q.a+=p}else{p=A.ek(p) +q.a+=p}}}, +Jo(a,b,c){var s={} +s.a=c +if(b!=null)s.a=B.e.j(b+1) +this.lV(new A.aBz(s,this,a),"\x1b[34m")}, +Jn(a){return this.Jo(a,null,null)}, +aNy(a){return this.Jo(null,null,a)}, +aNx(a){return this.Jo(null,a,null)}, +Up(){return this.Jo(null,null,null)}, +Qr(a){var s,r,q,p +for(s=new A.eY(a),r=t.Hz,s=new A.ci(s,s.gt(0),r.i("ci")),r=r.i("S.E"),q=0;s.u();){p=s.d +if((p==null?r.a(p):p)===9)++q}return q}, +aDR(a){var s,r,q +for(s=new A.eY(a),r=t.Hz,s=new A.ci(s,s.gt(0),r.i("ci")),r=r.i("S.E");s.u();){q=s.d +if(q==null)q=r.a(q) +if(q!==32&&q!==9)return!1}return!0}, +aui(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}, +lV(a,b){return this.aui(a,b,t.z)}} +A.aBA.prototype={ +$0(){return this.a}, +$S:889} +A.aBi.prototype={ +$1(a){var s=a.d +return new A.bh(s,new A.aBh(),A.af(s).i("bh<1>")).gt(0)}, +$S:890} +A.aBh.prototype={ +$1(a){var s=a.a,r=s.gcD(s) +r=r.gfK(r) +s=s.gbV(s) +return r!==s.gfK(s)}, +$S:175} +A.aBj.prototype={ +$1(a){return a.c}, +$S:892} +A.aBl.prototype={ +$1(a){var s=a.a.geY() +return s==null?new A.O():s}, +$S:893} +A.aBm.prototype={ +$2(a,b){return a.a.bO(0,b.a)}, +$S:894} +A.aBn.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.cF(d),r=s.gav(d),q=t._Y;r.u();){p=r.gI(r).a +o=p.gbN(p) +n=A.biX(o,p.ge3(p),p.gcD(p).ghB()) +n.toString +m=B.c.pf("\n",B.c.R(o,0,n)).gt(0) +p=p.gcD(p) +l=p.gfK(p)-m +for(p=o.split("\n"),n=p.length,k=0;kB.b.gY(c).b)c.push(new A.nG(j,l,e,A.a([],q)));++l}}i=A.a([],q) +for(r=c.length,h=0,k=0;k")),p=p.i("aN.E");q.u();){n=q.d +if(n==null)n=p.a(n) +f=n.a +f=f.gcD(f) +if(f.gfK(f)>j.b)break +i.push(n)}h+=i.length-g +B.b.G(j.d,i)}return c}, +$S:895} +A.aBk.prototype={ +$1(a){var s=a.a +s=s.gbV(s) +return s.gfK(s)" +s.a+=r +return null}, +$S:0} +A.aBv.prototype={ +$0(){var s=this.a.r,r=this.b===this.c.b?"\u250c":"\u2514" +s.a+=r}, +$S:4} +A.aBw.prototype={ +$0(){var s=this.a.r,r=this.b==null?"\u2500":"\u253c" +s.a+=r}, +$S:4} +A.aBx.prototype={ +$0(){this.a.r.a+="\u2500" +return null}, +$S:0} +A.aBy.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.lV(new A.aBt(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.gbV(r).ghB()===s.a.length}else s=!1 +r=q.b +if(s)r.r.a+="\u2514" +else r.lV(new A.aBu(r,o),p.b)}}}, +$S:4} +A.aBt.prototype={ +$0(){var s=this.b.r,r=this.a.a?"\u252c":"\u250c" +s.a+=r}, +$S:4} +A.aBu.prototype={ +$0(){this.a.r.a+=this.b}, +$S:4} +A.aBp.prototype={ +$0(){var s=this +return s.a.Jp(B.c.R(s.b,s.c,s.d))}, +$S:0} +A.aBq.prototype={ +$0(){var s,r,q=this.a,p=q.r,o=p.a,n=this.c.a,m=n.gcD(n).ghB(),l=n.gbV(n).ghB() +n=this.b.a +s=q.Qr(B.c.R(n,0,m)) +r=q.Qr(B.c.R(n,m,l)) +m+=s*3 +n=B.c.ap(" ",m) +p.a+=n +n=B.c.ap("^",Math.max(l+(s+r)*3-m,1)) +n=p.a+=n +return n.length-o.length}, +$S:66} +A.aBr.prototype={ +$0(){var s=this.c.a +return this.a.aNs(this.b,s.gcD(s).ghB())}, +$S:0} +A.aBs.prototype={ +$0(){var s,r=this,q=r.a,p=q.r,o=p.a +if(r.b){q=B.c.ap("\u2500",3) +p.a+=q}else{s=r.d.a +q.aa3(r.c,Math.max(s.gbV(s).ghB()-1,0),!1)}return p.a.length-o.length}, +$S:66} +A.aBz.prototype={ +$0(){var s=this.b,r=s.r,q=this.a.a +if(q==null)q="" +s=B.c.aYY(q,s.d) +s=r.a+=s +q=this.c +r.a=s+(q==null?"\u2502":q)}, +$S:4} +A.j3.prototype={ +j(a){var s,r,q=this.a,p=q.gcD(q) +p=p.gfK(p) +s=q.gcD(q).ghB() +r=q.gbV(q) +q=""+"primary "+(""+p+":"+s+"-"+r.gfK(r)+":"+q.gbV(q).ghB()) +return q.charCodeAt(0)==0?q:q}} +A.b5s.prototype={ +$0(){var s,r,q,p,o=this.a +if(!(t.D_.b(o)&&A.biX(o.gbN(o),o.ge3(o),o.gcD(o).ghB())!=null)){s=o.gcD(o) +s=A.a8L(s.gdA(s),0,0,o.geY()) +r=o.gbV(o) +r=r.gdA(r) +q=o.geY() +p=A.bVk(o.ge3(o),10) +o=A.aSc(s,A.a8L(r,A.bxo(o.ge3(o)),p,q),o.ge3(o),o.ge3(o))}return A.bPX(A.bPZ(A.bPY(o)))}, +$S:896} +A.nG.prototype={ +j(a){return""+this.b+': "'+this.a+'" ('+B.b.bJ(this.d,", ")+")"}} +A.np.prototype={ +VM(a){var s=this.a +if(!J.e(s,a.geY()))throw A.d(A.bl('Source URLs "'+A.c(s)+'" and "'+A.c(a.geY())+"\" don't match.",null)) +return Math.abs(this.b-a.gdA(a))}, +bO(a,b){var s=this.a +if(!J.e(s,b.geY()))throw A.d(A.bl('Source URLs "'+A.c(s)+'" and "'+A.c(b.geY())+"\" don't match.",null)) +return this.b-b.gdA(b)}, +l(a,b){if(b==null)return!1 +return t.y3.b(b)&&J.e(this.a,b.geY())&&this.b===b.gdA(b)}, +gB(a){var s=this.a +s=s==null?null:s.gB(s) +if(s==null)s=0 +return s+this.b}, +j(a){var s=this,r=A.K(s).j(0),q=s.a +return"<"+r+": "+s.b+" "+(A.c(q==null?"unknown source":q)+":"+(s.c+1)+":"+(s.d+1))+">"}, +$ida:1, +geY(){return this.a}, +gdA(a){return this.b}, +gfK(a){return this.c}, +ghB(){return this.d}} +A.a8M.prototype={ +VM(a){if(!J.e(this.a.a,a.geY()))throw A.d(A.bl('Source URLs "'+A.c(this.geY())+'" and "'+A.c(a.geY())+"\" don't match.",null)) +return Math.abs(this.b-a.gdA(a))}, +bO(a,b){if(!J.e(this.a.a,b.geY()))throw A.d(A.bl('Source URLs "'+A.c(this.geY())+'" and "'+A.c(b.geY())+"\" don't match.",null)) +return this.b-b.gdA(b)}, +l(a,b){if(b==null)return!1 +return t.y3.b(b)&&J.e(this.a.a,b.geY())&&this.b===b.gdA(b)}, +gB(a){var s=this.a.a +s=s==null?null:s.gB(s) +if(s==null)s=0 +return s+this.b}, +j(a){var s=A.K(this).j(0),r=this.b,q=this.a,p=q.a +return"<"+s+": "+r+" "+(A.c(p==null?"unknown source":p)+":"+(q.zJ(r)+1)+":"+(q.Oa(r)+1))+">"}, +$ida:1, +$inp:1} +A.a8O.prototype={ +ar2(a,b,c){var s,r=this.b,q=this.a +if(!J.e(r.geY(),q.geY()))throw A.d(A.bl('Source URLs "'+A.c(q.geY())+'" and "'+A.c(r.geY())+"\" don't match.",null)) +else if(r.gdA(r)'}, +$ida:1} +A.r0.prototype={ +gbN(a){return this.d}} +A.a8Z.prototype={ +gA4(a){return A.bS(this.c)}} +A.aSY.prototype={ +gX2(){var s=this +if(s.c!==s.e)s.d=null +return s.d}, +Ow(a){var s,r=this,q=r.d=J.bqQ(a,r.b,r.c) +r.e=r.c +s=q!=null +if(s)r.e=r.c=q.gbV(q) +return s}, +ad4(a,b){var s +if(this.Ow(a))return +if(b==null)if(a instanceof A.oo)b="/"+a.a+"/" +else{s=J.p(a) +s=A.dm(s,"\\","\\\\") +b='"'+A.dm(s,'"','\\"')+'"'}this.a32(b)}, +Di(a){return this.ad4(a,null)}, +aT8(){if(this.c===this.b.length)return +this.a32("no more input")}, +aT_(a,b,c,d){var s,r,q,p,o,n,m=this.b +if(d<0)A.V(A.h1("position must be greater than or equal to 0.")) +else if(d>m.length)A.V(A.h1("position must be less than or equal to the string length.")) +s=d+c>m.length +if(s)A.V(A.h1("position plus length must not go beyond the end of the string.")) +s=this.a +r=new A.eY(m) +q=A.a([0],t.t) +p=new Uint32Array(A.e7(r.cJ(r))) +o=new A.aSb(s,q,p) +o.ar1(r,s) +n=d+c +if(n>p.length)A.V(A.h1("End "+n+u.D+o.gt(0)+".")) +else if(d<0)A.V(A.h1("Start may not be negative, was "+d+".")) +throw A.d(new A.a8Z(m,b,new A.F0(o,d,n)))}, +a32(a){this.aT_(0,"expected "+a+".",0,this.c)}} +A.aqx.prototype={ +An(a,b,c){return this.aqE(a,b,c,c)}, +aqD(a,b){return this.An(a,null,b)}, +aqE(a,b,c,d){var s=0,r=A.n(d),q,p=2,o,n=[],m=this,l,k,j,i,h +var $async$An=A.j(function(e,f){if(e===1){o=f +s=p}while(true)switch(s){case 0:i=m.a +h=new A.rx(new A.a_($.ab,t.U),t.Hj) +m.a=h.a +p=3 +s=i!=null?6:7 +break +case 6:s=8 +return A.f(i,$async$An) +case 8:case 7:l=a.$0() +s=t.L0.b(l)?9:11 +break +case 9:j=l +s=12 +return A.f(c.i("a2<0>").b(j)?j:A.en(j,c),$async$An) +case 12:j=f +q=j +n=[1] +s=4 +break +s=10 +break +case 11:q=l +n=[1] +s=4 +break +case 10:n.push(5) +s=4 +break +case 3:n=[2] +case 4:p=2 +k=new A.aqy(m,h) +k.$0() +s=n.pop() +break +case 5:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$An,r)}, +j(a){return"Lock["+A.rT(this)+"]"}, +gY(a){return this.a}} +A.aqy.prototype={ +$0(){var s=this.a,r=this.b +if(s.a===r.a)s.a=null +r.d8(0)}, +$S:0} +A.ra.prototype={ +gt(a){return this.b}, +h(a,b){if(b>=this.b)throw A.d(A.a18(b,this,null,null,null)) +return this.a[b]}, +n(a,b,c){if(b>=this.b)throw A.d(A.a18(b,this,null,null,null)) +this.a[b]=c}, +st(a,b){var s,r,q,p=this,o=p.b +if(bo){if(o===0)q=new Uint8Array(b) +else q=p.TT(b) +B.G.dC(q,0,p.b,p.a) +p.a=q}}p.b=b}, +lm(a,b){var s=this,r=s.b +if(r===s.a.length)s.a9_(r) +s.a[s.b++]=b}, +q(a,b){var s=this,r=s.b +if(r===s.a.length)s.a9_(r) +s.a[s.b++]=b}, +G(a,b){A.eu(0,"start") +this.aMh(b,0,null)}, +aMh(a,b,c){var s,r,q +if(t.j.b(a))c=J.aM(a) +if(c!=null){this.aMj(this.b,a,b,c) +return}for(s=J.ay(a),r=0;s.u();){q=s.gI(s) +if(r>=b)this.lm(0,q);++r}if(rs.gt(b)||d>s.gt(b))throw A.d(A.a1("Too few elements"))}r=d-c +q=o.b+r +o.aMi(q) +s=o.a +p=a+r +B.G.d5(s,p,o.b+r,s,a) +B.G.d5(o.a,a,p,b,c) +o.b=q}, +aMi(a){var s,r=this +if(a<=r.a.length)return +s=r.TT(a) +B.G.dC(s,0,r.b,r.a) +r.a=s}, +TT(a){var s=this.a.length*2 +if(a!=null&&ss)throw A.d(A.dn(c,0,s,null,null)) +s=this.a +if(A.y(this).i("ra").b(d))B.G.d5(s,b,c,d.a,e) +else B.G.d5(s,b,c,d,e)}, +dC(a,b,c,d){return this.d5(0,b,c,d,0)}} +A.agt.prototype={} +A.df.prototype={} +A.a0D.prototype={} +A.aa0.prototype={ +D(){return"ValidationMode."+this.b}} +A.aNk.prototype={ +zB(){var s=this.a3q() +if(s.length!==16)throw A.d(A.ae("The length of the Uint8list returned by the custom RNG must be 16.")) +else return s}} +A.a3R.prototype={ +a3q(){var s,r,q,p=new Uint8Array(16) +for(s=this.a,r=0;r<16;r+=4){q=s.pR(B.d.aA(Math.pow(2,32))) +p[r]=q +p[r+1]=B.e.cA(q,8) +p[r+2]=B.e.cA(q,16) +p[r+3]=B.e.cA(q,24)}return p}} +A.XI.prototype={ +a3q(){var s,r,q=new Uint8Array(16) +for(s=0;s<16;s+=4){r=$.bB7().pR(B.d.aA(Math.pow(2,32))) +q[s]=r +q[s+1]=B.e.cA(r,8) +q[s+2]=B.e.cA(r,16) +q[s+3]=B.e.cA(r,24)}return q}} +A.Pp.prototype={ +aht(){return new A.aVq(this.a).F2(null)}, +b10(){return new A.aa_(this.a).F2(null)}, +ahu(a,b){var s,r,q,p +new A.aa_(this.a).F2(null) +s=A.bOU(a) +r=B.ao.b4(b) +q=A.a8(s,!0,t.S) +B.b.G(q,r) +p=B.v7.b4(q).a +p[6]=p[6]&15|80 +p[8]=p[8]&63|128 +return A.bo3(B.G.cK(p,0,16))}} +A.aVq.prototype={ +aDn(){var s,r +if($.bwP)return +s=this.a +if(s==null)r=null +else{s=s.a.zB() +r=s}if(r==null)r=$.bCM().zB() +$.bwS=A.a([r[0]|1,r[1],r[2],r[3],r[4],r[5]],t.t) +$.bo4=(r[6]<<8|r[7])&262143 +$.bwP=!0}, +F2(a){var s,r,q,p,o,n,m,l,k,j +this.aDn() +s=new Uint8Array(16) +r=$.bo4 +q=Date.now() +p=$.bwR +o=p+1 +n=$.bwQ +p=q-n+(o-p)/1e4<0 +if(p)r=r+1&16383 +p=p||q>n +if(p)o=0 +if(o>=1e4)throw A.d(A.ae("uuid.v1(): Can't create more than 10M uuids/sec")) +$.bwQ=q +$.bwR=o +$.bo4=r +q+=122192928e5 +m=((q&268435455)*1e4+o)%4294967296 +s[0]=m>>>24&255 +s[1]=m>>>16&255 +s[2]=m>>>8&255 +s[3]=m&255 +l=B.d.dv(q/4294967296*1e4)&268435455 +s[4]=l>>>8&255 +s[5]=l&255 +s[6]=l>>>24&255 +s[7]=l>>>16&255 +s[8]=r>>>8&63 +s[9]=r&255 +s[6]=s[6]&15|16 +s[8]=s[8]|128 +k=$.bwS +for(j=0;j<6;++j)s[10+j]=k[j] +return A.bo3(s)}} +A.aa_.prototype={ +F2(a){var s,r +if(a==null)s=null +else s=a.b.zB() +if(s==null){s=this.a +if(s==null)s=null +else s=s.a.zB() +r=s}else r=s +if(r==null)r=$.bCN().zB() +r[6]=r[6]&15|64 +r[8]=r[8]&63|128 +return A.bo3(r)}} +A.a7b.prototype={ +sUM(a){if(a.l(0,this.A))return +this.A=a}, +sEm(a){if(a===this.X)return +this.X=a +this.aU()}, +snO(a){if(this.a9==a)return +this.a9=a +this.aU()}, +sfL(a,b){return}, +a4V(){return}, +k9(a){return!0}, +gks(){return!0}, +gmT(){return!0}, +ds(a){return new A.R(A.M(0,a.a,a.b),A.M(0,a.c,a.d))}, +aI(a){this.a4V() +this.eD(a)}, +aB(a){this.eE(0)}, +m(){var s=this +s.M.sb0(0,null) +s.U.sb0(0,null) +s.ac.sb0(0,null) +s.h0()}, +aT(a,b){var s,r=this +if(r.aC<=0)return +s=r.M +s.sb0(0,a.rV(!0,b,r.aE,new A.aP2(r),s.a))}} +A.aP2.prototype={ +$2(a,b){var s=this.a,r=s.U +r.sb0(0,a.XO(b,B.e.aa(s.aC*255),new A.aP1(s),r.a))}, +$S:18} +A.aP1.prototype={ +$2(a,b){var s,r=this.a,q=r.a9,p=r.ac +if(q!=null){s=p.a +if(s==null)s=new A.Xx(A.w(t.S,t.M),A.aK()) +if(q!==s.k3){s.k3=q +s.i9()}a.q_(s,new A.aP0(r),b) +p.sb0(0,s)}else{p.sb0(0,null) +a.gca(0).yo(r.X.a)}}, +$S:18} +A.aP0.prototype={ +$2(a,b){a.gca(0).yo(this.a.X.a)}, +$S:18} +A.l4.prototype={} +A.biF.prototype={ +$0(){var s,r,q,p,o=this,n={},m=o.a +m=m.gB(m) +r=$.ap() +q=r.CO() +s=A.bt6(m,B.TJ,q,r.CK(q,null),o.b,o.c,o.d,o.e) +r=o.f +p=B.fW.aRn(0,r,s) +n.a=p +if(p.a)return new A.cv(s.Yf(),t.AH) +return A.lM(s.at,!1,t.H).ak(new A.biG(n,r,s),t.YA)}, +$S:897} +A.biG.prototype={ +$1(a){var s=this.c,r=this.a +r.a=B.fW.acj(0,this.b,s,r.a) +return s.Yf()}, +$S:898} +A.baz.prototype={} +A.ahR.prototype={} +A.b0B.prototype={} +A.azJ.prototype={ +Yf(){var s,r,q,p,o,n,m=this +try{q=m.f.KW() +p=m.CW +return new A.l4(q,p)}finally{for(q=m.ax,p=q.gaJ(0),o=A.y(p),p=new A.bD(J.ay(p.a),p.b,o.i("bD<1,2>")),o=o.y[1];p.u();){n=p.a +s=n==null?o.a(n):n +s.m()}q.V(0) +for(q=m.ay,p=q.gaJ(0),o=A.y(p),p=new A.bD(J.ay(p.a),p.b,o.i("bD<1,2>")),o=o.y[1];p.u();){n=p.a +r=n==null?o.a(n):n +n=r.b +if(n!=null)n.m()}q.V(0)}}, +Xo(a,b,c){return this.aY3(a,b,c)}, +aY3(a,b,c){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$Xo=A.j(function(d,e){if(d===1)return A.k(e,r) +while(true)switch(s){case 0:o=q.y[a] +n=q.x[b] +if(c!=null)n.swf(q.ay.h(0,c).b) +p=q.dy +if(p!=null){p=q.ay.h(0,p.a).a +p.eJ(o,n)}else{p=n +q.r.eJ(o,p)}return A.l(null,r)}}) +return A.m($async$Xo,r)}, +afn(a,b,c,d,e,f,g,h,i){var s=$.ap().br() +s.saG(0,new A.A(b)) +if(a!==0)s.sxL(B.ac9[a]) +if(e!=null)s.swf(this.z[e]) +if(d===1){s.sd0(0,B.aJ) +if(f!=null&&f!==0)s.swn(B.ad2[f]) +if(g!=null&&g!==0)s.sP0(B.a5D[g]) +if(h!=null&&h!==4)s.salN(h) +if(i!=null&&i!==0)s.shw(i)}this.x.push(s)}, +aYf(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.aAV(new A.z(a,b),new A.z(c,d),q,f,B.Ac[g],null))}, +aYm(a,b,c,d,e,f,g,h,i,j){var s,r,q,p,o,n=new A.z(a,b) +if(d==null)s=null +else{e.toString +s=new A.z(d,e)}r=A.a([],t.t_) +for(q=f.length,p=0;p>>0)) +o=!J.e(s,n)&&s!=null +q=B.Ac[i] +this.z.push(A.bJ6(n,c,r,g,q,h,o?s:null))}, +Xp(a,b,c,d){return this.aY4(a,b,c,d)}, +aY4(a,b,c,d){var s=0,r=A.n(t.H),q=this,p,o,n,m,l +var $async$Xp=A.j(function(e,f){if(e===1)return A.k(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.azK(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.l(null,r)}}) +return A.m($async$Xp,r)}, +aYd(a,b,c){var s,r,q=new A.a_($.ab,t.U),p=new A.aq(q,t.h) +this.at.push(q) +q=$.ix.py$ +q===$&&A.b() +s=q.cP(0,A.a4(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.azM(c)) +if(s==null){p.dF("Failed to load image") +return}r=A.bu("listener") +r.b=new A.iQ(new A.azN(this,s,r,a,p),null,new A.azO(p,s,r,null)) +s.a4(0,r.b2())}} +A.azK.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.swf(m.ay.h(0,k).b) +k=A.bne(n,n,n,n,n,n,n,n,n,n,m.d,n) +s=$.ap().Km(k) +k=o.d +s.ze(A.bnV(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.Cg(k.a) +r=s.cL() +r.j4(B.Jx) +o.a.a=r.grN() +if(m.dx!=null){q=m.r +q.en(0) +p=m.dx +p.toString +q.al(0,p)}q=m.r +q.rg(r,new A.z(o.e-r.grN()*k.d,o.f-r.gCi(r))) +r.m() +if(m.dx!=null)q.el(0)}, +$S:23} +A.azM.prototype={ +$0(){return A.bLA(A.tG(this.a).ak(new A.azL(),t.OX))}, +$S:899} +A.azL.prototype={ +$1(a){return this.ai9(a)}, +ai9(a){var s=0,r=A.n(t.OX),q,p=2,o,n=[],m,l,k,j +var $async$$1=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:p=3 +s=6 +return A.f(A.bmu(a),$async$$1) +case 6:m=c +s=7 +return A.f(m.WP(),$async$$1) +case 7:l=c +s=8 +return A.f(l.vY(),$async$$1) +case 8:k=c +j=J.apa(k) +m.a=null +l.m() +q=new A.fY(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.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$$1,r)}, +$S:900} +A.azN.prototype={ +$2(a,b){var s=this +s.b.K(0,s.c.b2()) +s.a.ax.n(0,s.d,a.a) +s.e.d8(0)}, +$S:140} +A.azO.prototype={ +$2(a,b){var s=this.a +if((s.a.a&30)===0)s.d8(0) +this.b.K(0,this.c.b2()) +A.e9(new A.cM(a,b,"image resource service",A.c3("Failed to load image"),null,!0))}, +$S:126} +A.aln.prototype={} +A.alj.prototype={} +A.aa2.prototype={ +j(a){return"VectorGraphicsDecodeException: Failed to decode vector graphic from "+this.a.j(0)+".\n\nAdditional error: "+A.c(this.b)}, +$ibm:1} +A.w7.prototype={} +A.Mt.prototype={ +l(a,b){if(b==null)return!1 +return b instanceof A.Mt&&b.a.l(0,this.a)&&b.b===this.b&&b.c===this.c}, +gB(a){return A.a4(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.a6t.prototype={} +A.a78.prototype={ +sUM(a){if(a.l(0,this.A))return +this.A=a}, +sEm(a){if(a===this.X)return +this.X=a +this.aU()}, +snO(a){if(this.a9==a)return +this.a9=a +this.aU()}, +snR(a,b){if(b===this.aC)return +this.aC=b +this.aU()}, +sfL(a,b){return}, +BB(){return}, +slO(a,b){if(b===this.U)return +this.U=b +this.aU()}, +k9(a){return!0}, +gks(){return!0}, +ds(a){return new A.R(A.M(0,a.a,a.b),A.M(0,a.c,a.d))}, +Ss(a){var s +if(a==null)return +if(--a.c===0&&$.a79.N(0,a.b)){$.a79.C(0,a.b) +s=a.a +if(s!=null)s.m() +a.a=null}}, +aEV(){var s,r,q,p,o=this,n=o.X.b,m=o.aC,l=o.U,k=B.d.aa(n.a*m/l),j=B.d.aa(n.b*m/l),i=new A.Mt(o.A,k,j) +if($.a79.N(0,i)){n=$.a79.h(0,i) +n.toString +m=o.ac +if(n!==m){o.Ss(m);++n.c}o.ac=n +return}n=o.aC +m=o.U +l=o.X +s=$.ap() +r=s.CO() +q=s.CK(r,null) +q.bK(0,n/m) +q.yo(l.a) +p=new A.a6t(r.KW().EH(k,j),i,0) +p.c=1 +$.a79.n(0,i,p) +o.Ss(o.ac) +o.ac=p}, +aI(a){this.BB() +this.eD(a)}, +aB(a){this.eE(0)}, +m(){this.Ss(this.ac) +this.h0()}, +aT(a,b){var s,r,q,p,o,n,m=this +if(m.aQ<=0)return +m.aEV() +s=m.ac +r=s.a +r.toString +s=s.b +q=$.ap().br() +q.srv(B.xk) +p=m.a9 +if(p!=null)q.snO(p) +q.saG(0,A.asq(0,0,0,m.aQ)) +p=b.a +o=b.b +n=m.X.b +a.gca(0).rf(r,new A.I(0,0,s.b,s.c),new A.I(p,o,p+n.a,o+n.b),q)}} +A.a6X.prototype={ +sEm(a){if(a===this.A)return +this.A=a +this.aU()}, +snO(a){if(this.X==a)return +this.X=a +this.aU()}, +sfL(a,b){return}, +BB(){return}, +k9(a){return!0}, +gks(){return!0}, +ds(a){return new A.R(A.M(0,a.a,a.b),A.M(0,a.c,a.d))}, +aI(a){this.BB() +this.eD(a)}, +aB(a){this.eE(0)}, +m(){this.h0()}, +aT(a,b){var s,r,q,p,o=this +if(o.a9<=0)return +s=$.ap().br() +r=o.X +if(r!=null)s.snO(r) +s.saG(0,A.asq(0,0,0,o.a9)) +q=a.gca(0).ajE() +if(!b.l(0,B.j)){a.gca(0).en(0) +a.gca(0).bs(0,b.a,b.b)}if(o.a9!==1||o.X!=null){a.gca(0).en(0) +r=a.gca(0) +p=o.gv(0) +r.nN(new A.I(0,0,0+p.a,0+p.b)) +p=a.gca(0) +r=o.gv(0) +p.w6(new A.I(0,0,0+r.a,0+r.b),s)}a.gca(0).yo(o.A.a) +a.gca(0).Y5(q)}} +A.a7c.prototype={ +D(){return"RenderingStrategy."+this.b}} +A.Pq.prototype={ +a0(){return new A.aml()}} +A.zt.prototype={} +A.Fz.prototype={ +gB(a){var s=this +return A.a4(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.Fz&&b.a.l(0,s.a)&&J.e(b.b,s.b)&&b.c==s.c&&b.d===s.d}} +A.aml.prototype={ +c1(){var s=this,r=s.c +r.toString +s.r=A.C0(r) +r=s.c +r.toString +s.w=A.e1(r) +s.Bj() +s.ea()}, +b1(a){if(!a.c.l(0,this.a.c))this.Bj() +this.bb(a)}, +m(){var s=this +s.I8(s.d) +s.d=null +s.ar()}, +I8(a){if(a==null)return +if(--a.c===0&&$.bgf.N(0,a.b)){$.bgf.C(0,a.b) +a.a.a.m()}}, +aEu(a,b,c){var s,r +if($.bgl.N(0,b)){s=$.bgl.h(0,b) +s.toString +return s}r=c.aWH(a).ak(new A.bgi(b,c),t.YA).ak(new A.bgj(b),t.EP) +$.bgl.n(0,b,r) +r.fC(new A.bgk(b)) +return r}, +aAi(a,b){if(this.c==null)return +this.J(new A.bge(this,a,b))}, +Bj(){var s=0,r=A.n(t.H),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$Bj=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:f=n.a.c +e=n.c +e.toString +m=new A.Fz(f.UW(e),n.r,n.w,n.a.CW) +h=$.bgf.h(0,m) +if(h!=null){++h.c +n.J(new A.bgg(n,h)) +s=1 +break}l=n.a.c +p=4 +f=n.c +f.toString +s=7 +return A.f(n.aEu(f,m,l),$async$Bj) +case 7:k=b +k.c=k.c+1 +if(n.c==null||!J.e(l,n.a.c)){n.I8(k) +s=1 +break}if(k.c===1)$.bgf.n(0,m,k) +n.J(new A.bgh(n,k)) +p=2 +s=6 +break +case 4:p=3 +d=o +j=A.v(d) +i=A.aT(d) +n.aAi(j,i) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Bj,r)}, +F(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.ga_(0)){h=g.b +s=r/h.b*h.a}else if(!h&&!g.b.ga_(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($.bDf()){p=j.d.b +o=j.a +n=new A.aiL(g,o.ax,o.ay,p,i,i) +p=o}else{p=j.a +o=p.ch +m=j.d +l=p.ax +k=p.ay +if(o===B.alh)n=new A.aiJ(g,l,q,k,m.b,i,i) +else{m.toString +n=new A.aiI(g,l,k,i,i)}}n=new A.aB(s,r,A.bt2(p.r,A.NX(n,h),p.z,p.f),i)}else{h=j.e +p=h!=null&&j.a.as!=null +o=j.a +if(p){p=o.as +p.toString +h.toString +o=j.f +n=p.$3(a,h,o==null?B.iA:o)}else{n=o.Q.$1(a) +if(n==null){h=j.a +n=new A.aB(h.d,h.e,i,i)}}}j.a.toString +n=new A.ck(A.cJ(i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,i,!0,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,i,i,i,i),!1,!1,!1,!1,n,i) +return n}} +A.bgi.prototype={ +$1(a){var s=this.a +return A.bVw(a,s.d,this.b,s.b,s.c)}, +$S:901} +A.bgj.prototype={ +$1(a){return new A.zt(a,this.a,0)}, +$S:902} +A.bgk.prototype={ +$0(){$.bgl.C(0,this.a)}, +$S:4} +A.bge.prototype={ +$0(){var s=this.a +s.e=this.b +s.f=this.c}, +$S:0} +A.bgg.prototype={ +$0(){var s=this.a +s.I8(s.d) +s.d=this.b}, +$S:0} +A.bgh.prototype={ +$0(){var s=this.a +s.I8(s.d) +s.d=this.b}, +$S:0} +A.aiJ.prototype={ +b6(a){var s=this,r=A.de(a,null) +r=r==null?null:r.b +if(r==null)r=1 +r=new A.a78(s.x,s.e,s.f,r,s.w,s.r,new A.bk(),A.aK()) +r.b5() +r.BB() +return r}, +b9(a,b){var s,r=this +b.sEm(r.e) +b.sUM(r.x) +b.snO(r.f) +s=A.de(a,null) +s=s==null?null:s.b +b.snR(0,s==null?1:s) +b.sfL(0,r.w) +b.slO(0,r.r)}} +A.aiL.prototype={ +b6(a){var s=this,r=A.aK(),q=A.aK(),p=A.aK(),o=new A.bW(new Float64Array(16)) +o.eo() +o=new A.a7b(s.w,s.e,s.f,s.r,r,q,p,o,new A.bk(),A.aK()) +o.b5() +o.a4V() +return o}, +b9(a,b){var s=this +b.sEm(s.e) +b.sUM(s.w) +b.snO(s.f) +b.sfL(0,s.r)}} +A.aiI.prototype={ +b6(a){var s=new A.a6X(this.e,this.f,this.r,new A.bk(),A.aK()) +s.b5() +s.BB() +return s}, +b9(a,b){b.sEm(this.e) +b.snO(this.f) +b.sfL(0,this.r)}} +A.ZS.prototype={} +A.aVt.prototype={ +acj(d7,d8,d9,e0){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=null,d6="The provided data was not a vector_graphics binary asset." +if(e0==null){s=new A.bbw(d8) +if(d8.byteLength<5)throw A.d(A.a1(d6)) +if(s.Oq(0)!==8924514)throw A.d(A.a1(d6)) +if(s.no(0)!==1)throw A.d(A.a1("The provided data does not match the currently supported version."))}else{r=e0.b +r.toString +s=r}$label0$1:for(r=s.a,q=d9.as,p=d9.ay,o=d9.r,n=d9.ax,m=d9.Q,l=t.J9,k=d9.y,j=d9.e,i=d9.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.vL(!1).AH(c1,0,d5,!0)}else c2=d5 +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.vL(!1).AH(c1,0,d5,!0) +c4=A.a([],l) +if((b9&1)!==0)c4.push(B.tw) +if((b9&2)!==0)c4.push(B.apq) +if((b9&4)!==0)c4.push(B.aps) +m.push(new A.alj(c3,c2,d,e,B.qd[b8],A.bOe(c4),B.a6w[c0],new A.A(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?d5:d +d=r.getUint16(g,!0) +g=s.b+=2 +c6=d===65535?d5:d +d=r.getUint16(g,!0) +s.b+=2 +d9.Xp(e,c5,c6,d===65535?d5: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 +d9.aYd(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.w3() +g=n.h(0,e) +g.toString +b2=c8!=null +if(b2){o.en(0) +o.al(0,c8)}o.rf(g,new A.I(0,0,g.geu(g),g.gbA(g)),new A.I(d,c,d+b,c+a),$.ap().br()) +if(b2)o.el(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.w3() +c9.toString +d9.dy=new A.baz(e,b,a,c9) +g=$.ap() +d0=g.CO() +d1=g.CK(d0,d5) +d1.nN(new A.I(d,c,d+b,c+a)) +g=new A.ahR() +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 +g=r.getUint8(g) +c9=s.w3() +b2=isNaN(e)?d5:e +b3=isNaN(d)?d5:d +d2=isNaN(c)?d5:c +d3=isNaN(b)?d5:b +q.push(new A.aln(b2,b3,d2,d3,g!==0,c9)) +continue $label0$1 +case 51:e=r.getUint16(s.b,!0) +s.b+=2 +d4=q[e] +if(d4.e)d9.db=d9.cy=0 +g=d4.a +if(g!=null)d9.cy=g +g=d4.b +if(g!=null)d9.db=g +g=d4.c +if(g!=null){b2=d9.cy +d9.cy=(b2==null?0:b2)+g}g=d4.d +if(g!=null)d9.db+=g +d9.dx=d4.f +continue $label0$1 +default:throw A.d(A.a1("Unknown type tag "+f))}}return B.YE}, +aRn(a,b,c){return this.acj(0,b,c,null)}, +ahU(a,b,c,d){a.ip(B.dz) +a.oL() +a.a.push(30) +a.p6(b) +a.p6(c) +a.p6(d==null?65535:d)}, +avh(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.a1(B.c.b0g(s[0])+B.c.bE(s,1)+" must be encoded together (current phase is "+this.as.b+")."))}this.as=a}, +aNA(a){var s,r=this.a +if(a!=null){s=a.length +r.push(s) +this.qS(8) +B.b.G(this.a,A.dw(a.buffer,a.byteOffset,8*s))}else r.push(0)}, +p6(a){var s,r +this.c.setUint16(0,a,!0) +s=this.a +r=this.d +r===$&&A.b() +B.b.G(s,A.fc(r,0,A.ez(2,"count",t.S),A.ba(r).i("S.E")))}, +aI2(a){var s,r +this.c.setUint32(0,a,!0) +s=this.a +r=this.d +r===$&&A.b() +B.b.G(s,A.fc(r,0,A.ez(4,"count",t.S),A.ba(r).i("S.E")))}, +a6I(a){this.qS(4) +B.b.G(this.a,A.dw(a.buffer,a.byteOffset,4*a.length))}, +mO(a){var s,r +this.c.setFloat32(0,a,!0) +s=this.a +r=this.d +r===$&&A.b() +B.b.G(s,A.fc(r,0,A.ez(4,"count",t.S),A.ba(r).i("S.E")))}, +a6H(a){this.qS(4) +B.b.G(this.a,A.dw(a.buffer,a.byteOffset,4*a.length))}, +qS(a){var s,r=this.a,q=B.e.an(r.length,a) +if(q!==0){s=$.zU() +B.b.G(r,A.fc(s,0,A.ez(a-q,"count",t.S),A.ba(s).i("S.E")))}}} +A.bbw.prototype={ +no(a){return this.a.getUint8(this.b++)}, +ajJ(a){var s=this.a.getUint16(this.b,!0) +this.b+=2 +return s}, +Oq(a){var s=this.a.getUint32(this.b,!0) +this.b+=4 +return s}, +qg(a){var s=this.a,r=A.dw(s.buffer,s.byteOffset+this.b,a) +this.b+=a +return r}, +Zb(a){var s,r,q,p=this +p.qS(2) +s=p.a +r=s.buffer +s=s.byteOffset+p.b +A.Vl(r,s,a) +q=new Uint16Array(r,s,a) +p.b=p.b+2*a +return q}, +YR(a){var s,r,q=this +q.qS(4) +s=q.a +r=A.aKe(s.buffer,s.byteOffset+q.b,a) +q.b=q.b+4*a +return r}, +Fh(a){var s,r,q=this +q.qS(4) +s=q.a +r=A.buy(s.buffer,s.byteOffset+q.b,a) +q.b=q.b+4*a +return r}, +qS(a){var s=this.b,r=B.e.an(s,a) +if(r!==0)this.b=s+(a-r)}, +w3(){var s,r,q=this,p=q.no(0) +if(p>0){q.qS(8) +s=q.a +r=A.bn1(s.buffer,s.byteOffset+q.b,p) +q.b=q.b+8*p +return r}return null}} +A.awr.prototype={ +ayM(a,b){return b.cP(0,a,new A.aws(b))}, +mL(a,b){return this.ayM(a,b,t.z)}, +aap(a){var s=null +this.r.push(new A.kH(s,B.Zy,s,this.mL(a,this.a),s,s))}, +aNV(a,b,c,d,e){var s,r,q,p=this +if(b.a.length===0)return +s=p.mL(b,p.b) +r=p.mL(c,p.a) +q=e!=null?p.w.h(0,e):null +p.r.push(new A.kH(d,B.Zx,s,r,q,null))}} +A.aws.prototype={ +$0(){return this.a.a}, +$S:66} +A.d3.prototype={ +gB(a){return A.a4(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.d3&&b.a===this.a&&b.b===this.b}, +ap(a,b){return new A.d3(this.a*b,this.b*b)}, +ab(a,b){return new A.d3(this.a+b.a,this.b+b.b)}, +j(a){return"Point("+A.c(this.a)+", "+A.c(this.b)+")"}} +A.kf.prototype={ +ga_(a){var s=this +return s.c-s.a===0||s.d-s.b===0}, +gB(a){var s=this +return A.a4(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.kf&&b.a===s.a&&b.b===s.b&&b.c===s.c&&b.d===s.d}, +j(a){var s=this +return"Rect.fromLTRB("+A.c(s.a)+", "+A.c(s.b)+", "+A.c(s.c)+", "+A.c(s.d)+")"}} +A.a12.prototype={} +A.a_B.prototype={} +A.mw.prototype={ +ajR(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}, +b_Y(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.pq(q*s+p*r,o*s+n*r,q*m+p*s,o*m+n*s,l.e,l.f,l.r)}, +gacX(){var s=this,r=s.a +return r>0&&s.b===0&&s.c===0&&s.d>0&&s.r===r}, +Zi(a,b){var s=this +if(a===1&&b===1)return s +return A.pq(s.a*a,s.b*a,s.c*b,s.d*b,s.e,s.f,s.r*a)}, +EP(a,b){var s=this,r=s.a,q=s.b,p=s.c,o=s.d +return A.pq(r,q,p,o,r*a+p*b+s.e,q*a+o*b+s.f,s.r)}, +iD(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.pq(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)}, +q5(a,b){var s=this,r=b.a,q=b.b +return new A.d3(s.a*r+s.c*q+s.e,s.b*r+s.d*q+s.f)}, +vN(){var s=this +return new Float64Array(A.e7(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)))}, +gB(a){var s=this +return A.a4(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.mw&&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}, +j(a){var s=this +return"[ "+A.c(s.a)+", "+A.c(s.c)+", "+A.c(s.e)+" ]\n[ "+A.c(s.b)+", "+A.c(s.d)+", "+A.c(s.f)+" ]\n[ 0.0, 0.0, 1.0 ] // _m4_10 = "+A.c(s.r)+"\n"}} +A.a5V.prototype={ +D(){return"PathFillType."+this.b}} +A.CJ.prototype={ +D(){return"PathCommandType."+this.b}} +A.uj.prototype={} +A.i3.prototype={ +bY(a){var s=a.q5(0,new A.d3(this.b,this.c)) +return new A.i3(s.a,s.b,B.cn)}, +gB(a){return A.a4(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.i3&&b.b===this.b&&b.c===this.c}, +j(a){return"LineToCommand("+A.c(this.b)+", "+A.c(this.c)+")"}} +A.kU.prototype={ +bY(a){var s=a.q5(0,new A.d3(this.b,this.c)) +return new A.kU(s.a,s.b,B.et)}, +gB(a){return A.a4(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.kU&&b.b===this.b&&b.c===this.c}, +j(a){return"MoveToCommand("+A.c(this.b)+", "+A.c(this.c)+")"}} +A.hv.prototype={ +abz(a){var s=this +return new A.at0().$5(a,new A.d3(s.b,s.c),new A.d3(s.d,s.e),new A.d3(s.f,s.r),0)}, +bY(a){var s=this,r=a.q5(0,new A.d3(s.b,s.c)),q=a.q5(0,new A.d3(s.d,s.e)),p=a.q5(0,new A.d3(s.f,s.r)) +return new A.hv(r.a,r.b,q.a,q.b,p.a,p.b,B.ca)}, +gB(a){var s=this +return A.a4(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.hv&&b.b===s.b&&b.c===s.c&&b.d===s.d&&b.e===s.e&&b.f===s.f&&b.r===s.r}, +j(a){var s=this +return"CubicToCommand("+A.c(s.b)+", "+A.c(s.c)+", "+A.c(s.d)+", "+A.c(s.e)+", "+A.c(s.f)+", "+A.c(s.r)+")"}} +A.at0.prototype={ +$5(a,b,c,d,e){var s +if(A.a68(b,A.y_(a,d,0.3333333333333333))>1.5||A.a68(c,A.y_(a,d,0.6666666666666666))>1.5){s=A.brI(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.a68(a,d) +return e}, +$S:903} +A.HF.prototype={ +bY(a){return this}, +gB(a){return A.at(this.a)}, +l(a,b){if(b==null)return!1 +return b instanceof A.HF}, +j(a){return"CloseCommand()"}} +A.l2.prototype={ +L(a){this.a.push(B.iD) +return this}, +pe(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.kU(l,q,B.et)) +o=l+s +n=l+k +m=j-r +p.push(new A.hv(o,q,n,m,n,j,B.ca)) +r=j+r +i=j+i +p.push(new A.hv(n,r,o,i,l,i,B.ca)) +s=l-s +k=l-k +p.push(new A.hv(s,i,k,r,k,j,B.ca)) +p.push(new A.hv(k,m,s,q,l,q,B.ca)) +p.push(B.iD) +return this}, +jT(a){var s,r=a.a,q=a.b,p=this.a +p.push(new A.kU(r,q,B.et)) +s=a.c +p.push(new A.i3(s,q,B.cn)) +q=a.d +p.push(new A.i3(s,q,B.cn)) +p.push(new A.i3(r,q,B.cn)) +p.push(B.iD) +return this}, +aO_(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.jT(a) +s=new A.d3(b,c).ap(0,0.551915024494) +r=a.a +q=r+b +p=a.b +o=this.a +o.push(new A.kU(q,p,B.et)) +n=r+(a.c-r) +m=n-b +o.push(new A.i3(m,p,B.cn)) +l=s.a +k=m+l +j=p+c +i=s.b +h=j-i +o.push(new A.hv(k,p,n,h,n,j,B.ca)) +g=p+(a.d-p) +f=g-c +o.push(new A.i3(n,f,B.cn)) +i=f+i +o.push(new A.hv(n,i,k,g,m,g,B.ca)) +o.push(new A.i3(q,g,B.cn)) +l=q-l +o.push(new A.hv(l,g,r,i,r,f,B.ca)) +o.push(new A.i3(r,j,B.cn)) +o.push(new A.hv(r,h,l,p,q,p,B.ca)) +o.push(B.iD) +return this}, +ah6(a){var s,r=this.a,q=this.b +q===$&&A.b() +s=A.a5T(r,q) +if(a)B.b.V(r) +return s}, +vO(){return this.ah6(!0)}} +A.iy.prototype={ +b1c(a){if(a===this.b)return this +return A.a5T(this.a,a)}, +ga_(a){return this.a.length===0}, +bY(a){var s,r,q,p=A.a([],t.H9) +for(s=this.a,r=s.length,q=0;q"+A.c(r)+","):"Path(" +s=this.b +r=(s!==B.d7?r+("\n fillType: "+s.j(0)+","):r)+"\n)" +return r.charCodeAt(0)==0?r:r}} +A.b_7.prototype={ +gkV(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.bay.prototype={ +gt(a){var s=this.b +s===$&&A.b() +return s}, +a2j(a){var s,r,q,p,o,n,m,l,k=this,j=A.a68(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.d3(m*o.a+n*r,m*o.b+n*q) +k.b=p.gkV(0) +o=k.e +o===$&&A.b() +m=k.c +l=m.a +m=m.b +if(o)s.push(new A.i3(l,m,B.cn)) +else s.push(new A.kU(l,m,B.et)) +j=A.a68(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.i3(r,q,B.cn))}k.c=a}, +avg(a){var s,r,q,p,o,n=this,m=null,l=a.abz(n.c),k=n.a,j=n.f +while(!0){s=n.b +s===$&&A.b() +if(!(l>=s))break +r=A.brI(n.c,new A.d3(a.b,a.c),new A.d3(a.d,a.e),new A.d3(a.f,a.r),s/l) +s=n.c=r[3] +q=n.e +q===$&&A.b() +if(q){s=A.af(r) +q=new A.aP(r,1,m,s.i("aP<1>")) +q.c_(r,1,m,s.c) +p=q.lL(0,3).cJ(0) +q=p[0] +s=p[1] +o=p[2] +j.push(new A.hv(q.a,q.b,s.a,s.b,o.a,o.b,B.ca))}else j.push(new A.kU(s.a,s.b,B.et)) +s=A.af(r) +q=new A.aP(r,4,m,s.i("aP<1>")) +q.c_(r,4,m,s.c) +p=q.lL(0,3).cJ(0) +q=p[0] +s=p[1] +o=p[2] +a=new A.hv(q.a,q.b,s.a,s.b,o.a,o.b,B.ca) +n.b=k.gkV(0) +l=a.abz(n.c) +n.e=!n.e}n.b=s-l +n.c=new A.d3(a.f,a.r) +k=n.e +k===$&&A.b() +if(k)j.push(a)}, +aRh(a){var s,r,q,p,o,n,m,l,k=this +k.b=k.a.gkV(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.c(s.e)+")"}} +A.JI.prototype={ +D(){return"GradientUnitMode."+this.b}} +A.us.prototype={ +UG(a,b){var s,r,q=this,p=q.f +if(p==null)p=B.bJ +s=q.e +switch((s==null?B.pL:s).a){case 0:s=a.a +r=a.b +p=b.EP(s,r).Zi(a.c-s,a.d-r).iD(p) +break +case 1:p=b.iD(p) +break +case 2:break}s=q.d +if(s==null)s=B.tC +return new A.us(q.r,q.w,q.x,q.a,q.b,q.c,s,B.xB,p)}, +UK(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.us(o.r,o.w,o.x,o.a,n,s,p,q,r)}, +gB(a){var s,r=this,q=r.b +q=A.cj(q==null?A.a([],t.Ai):q) +s=r.c +return A.a4(r.a,r.r,r.w,q,A.cj(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.us&&b.a===s.a&&b.r.l(0,s.r)&&b.w===s.w&&J.e(b.x,s.x)&&A.lr(b.b,s.b)&&A.lr(b.c,s.c)&&J.e(b.f,s.f)&&b.d==s.d&&b.e==s.e}, +j(a){var s=this,r=s.r.j(0),q=A.c(s.b),p=A.c(s.c),o=A.c(s.d),n=s.f +n=n==null?"":"transform: Float64List.fromList("+A.c(n.vN())+") ," +return"RadialGradient(id: '"+s.a+"', center: "+r+", radius: "+A.c(s.w)+", colors: "+q+", offsets: "+p+", tileMode: "+o+", "+n+"focalPoint: "+A.c(s.x)+", unitMode: "+A.c(s.e)+")"}} +A.oD.prototype={ +gB(a){return A.a4(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.oD&&b.a===this.a&&J.e(b.b,this.b)&&J.e(b.c,this.c)}, +j(a){var s="Paint(blendMode: "+this.a.j(0),r=this.b +if(r!=null)s+=", stroke: "+r.j(0) +r=this.c +s=(r!=null?s+(", fill: "+r.j(0)):s)+")" +return s.charCodeAt(0)==0?s:s}} +A.Or.prototype={ +gB(a){var s=this +return A.a4(B.ajN,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.Or){s=b.a +s=r.a.a===s.a&&J.e(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}, +j(a){var s=this,r="Stroke(color: "+s.a.j(0),q=s.b +if(q!=null)r+=", shader: "+q.j(0) +q=s.c +if(q!=null)r+=", cap: "+q.j(0) +q=s.d +if(q!=null)r+=", join: "+q.j(0) +q=s.e +if(q!=null)r+=", miterLimit: "+A.c(q) +q=s.f +r=(q!=null?r+(", width: "+A.c(q)):r)+")" +return r.charCodeAt(0)==0?r:r}} +A.wT.prototype={ +gB(a){return A.a4(B.ajM,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.wT){s=b.a +s=this.a.a===s.a&&J.e(b.b,this.b)}else s=!1 +return s}, +j(a){var s="Fill(color: "+this.a.j(0),r=this.b +s=(r!=null?s+(", shader: "+r.j(0)):s)+")" +return s.charCodeAt(0)==0?s:s}} +A.hu.prototype={ +D(){return"BlendMode."+this.b}} +A.a5P.prototype={ +D(){return"PaintingStyle."+this.b}} +A.Os.prototype={ +D(){return"StrokeCap."+this.b}} +A.Ot.prototype={ +D(){return"StrokeJoin."+this.b}} +A.P5.prototype={ +D(){return"TileMode."+this.b}} +A.OU.prototype={ +gB(a){var s=this +return A.a4(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.OU&&b.a==s.a&&b.c==s.c&&b.b==s.b&&b.d==s.d&&b.e===s.e&&J.e(b.f,s.f)}, +j(a){var s=this,r=""+("TextPosition(reset: "+s.e),q=s.a +if(q!=null)r+=", x: "+A.c(q) +q=s.c +if(q!=null)r+=", y: "+A.c(q) +q=s.b +if(q!=null)r+=", dx: "+A.c(q) +q=s.d +if(q!=null)r+=", dy: "+A.c(q) +q=s.f +r=(q!=null?r+(", transform: "+q.j(0)):r)+")" +return r.charCodeAt(0)==0?r:r}} +A.OO.prototype={ +gB(a){var s=this +return A.a4(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,q=this +if(b==null)return!1 +s=!1 +if(b instanceof A.OO)if(b.a===q.a)if(b.b===q.b)if(b.c===q.c)if(b.d==q.d)if(b.e===q.e){r=b.f +if(q.f.a===r.a)if(b.r===q.r)s=q.w.a===b.w.a}return s}, +j(a){var s=this +return"TextConfig('"+s.a+"', "+A.c(s.b)+", '"+A.c(s.d)+"', "+s.e.j(0)+", "+A.c(s.c)+", "+s.f.j(0)+", "+s.r.j(0)+", "+s.w.j(0)+",)"}} +A.mQ.prototype={ +D(){return"FontWeight."+this.b}} +A.yN.prototype={ +D(){return"TextDecorationStyle."+this.b}} +A.yM.prototype={ +p(a,b){var s=this.a +return B.e.tk(s,b.gb21(b))===s}, +l(a,b){if(b==null)return!1 +return b instanceof A.yM&&b.a===this.a}, +gB(a){return B.e.gB(this.a)}, +j(a){var s,r=this.a +if(r===0)return"TextDecoration.none" +s=A.a([],t.s) +if((r&1)!==0)s.push("underline") +if((r&2)!==0)s.push("overline") +if((r&4)!==0)s.push("lineThrough") +if(s.length===1)return"TextDecoration."+s[0] +return"TextDecoration.combine(["+B.b.bJ(s,", ")+"])"}} +A.dZ.prototype={ +h5(a,b){return this}, +lq(a){return this.h5(a,!1)}} +A.afg.prototype={ +dO(a,b,c){return b.ahA(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}} +A.a9L.prototype={ +r1(a){var s=this.a +if(s.l(0,B.bJ))return a +return a.iD(s)}} +A.ii.prototype={} +A.aad.prototype={ +dO(a,b,c){return b.O4(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}} +A.CI.prototype={ +C9(a,b,c,d,e,f,g){var s,r=b!=null?new A.HA(c,b,a,a.b.r):a +if(d!=null){s=a.b +r=new A.KN(d,r,s.z,e,s.r)}if(f!=null)r=new A.M4(f,r,g,a.b.r) +B.b.q(this.d,r)}, +Uu(a,b,c,d){return this.C9(a,null,b,null,c,null,d)}, +h5(a,b){var s=A.xX(this.b.xF(a),null,this.a) +B.b.G(s.d,this.d) +return s}, +lq(a){return this.h5(a,!1)}, +aQZ(){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.b0b(B.ald,this.a) +if(o==null){o=A.Ax(0,0,0,m==null?1:m) +o=new A.wT(o,q)}return new A.oD(s?B.kA:p,q,o)}return q}, +dO(a,b,c){return b.ahE(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}} +A.a9w.prototype={ +dO(a,b,c){return b.ahQ(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}, +h5(a,b){var s=A.bwt(this.b.xF(a),this.r) +B.b.G(s.d,this.d) +return s}, +lq(a){return this.h5(a,!1)}} +A.a7A.prototype={ +dO(a,b,c){return b.ahO(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}} +A.HA.prototype={ +dO(a,b,c){return b.ahx(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}, +h5(a,b){var s=this +return new A.HA(s.b,s.c,s.d.h5(a,b),s.a)}, +lq(a){return this.h5(a,!1)}} +A.KN.prototype={ +dO(a,b,c){return b.ahC(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}, +h5(a,b){var s=this +return new A.KN(s.b,s.c.h5(a,b),s.d,s.e,s.a)}, +lq(a){return this.h5(a,!1)}} +A.CK.prototype={ +Va(a,b){var s,r=this.b,q=r.e,p=q==null?null:q.ah9(a,b) +q=r.f +s=q==null?null:q.Yd(a,b,B.eK) +if(s==null&&p==null)return null +r=r.z +return new A.oD(r==null?B.kA:r,p,s)}, +h5(a,b){var s=this.b +s=b?a.Cm(s,this.a):s.xF(a) +return A.buW(this.d,s)}, +lq(a){return this.h5(a,!1)}, +dO(a,b,c){return b.ahF(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}} +A.AO.prototype={ +h5(a,b){var s=this,r=s.b +r=b?a.Cm(r,s.a):r.xF(a) +return A.bs0(r,s.d,s.e)}, +lq(a){return this.h5(a,!1)}, +dO(a,b,c){return b.ahy(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}} +A.a9v.prototype={ +Va(a,b){var s,r=this.b,q=r.f,p=q==null?null:q.Yd(a,b,B.eK) +q=r.e +s=q==null?null:q.ah9(a,b) +if(p==null&&s==null)return null +r=r.z +return new A.oD(r==null?B.kA:r,s,p)}, +h5(a,b){var s=this.b,r=b?a.Cm(s,this.a):s.xF(a) +return A.bwq(this.d,r)}, +lq(a){return this.h5(a,!1)}, +dO(a,b,c){return b.ahP(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}} +A.a16.prototype={ +h5(a,b){var s=this,r=s.b +r=b?a.Cm(r,s.a):r.xF(a) +return A.btB(s.d,s.e,r)}, +lq(a){return this.h5(a,!1)}, +dO(a,b,c){return b.ahB(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}} +A.M4.prototype={ +dO(a,b,c){return b.ahG(this,c)}, +dE(a,b,c){var s=t.z +return this.dO(0,b,c,s,s)}, +h5(a,b){var s=this +return new A.M4(s.b,s.c.h5(a,b),s.d,s.a)}, +lq(a){return this.h5(a,!1)}} +A.TP.prototype={} +A.ns.prototype={ +a2B(){var s,r,q=this,p=q.ax +for(s=q.c;s.u();){r=s.d +r.toString +if(r instanceof A.iC&&!r.r)++q.ax +else if(r instanceof A.j0)--q.ax +q.as=B.fA +q.at=null +if(q.ax>>0)}}if(B.c.ba(a.toLowerCase(),"rgba")){p=t.a4 +n=A.a8(new A.ad(A.a(B.c.R(a,J.bkD(a,"(")+1,B.c.dV(a,")")).split(","),t.s),new A.aTj(),p),!0,p.i("aN.E")) +p=A.ih(B.b.iG(n),!1) +p.toString +m=A.af(n).i("ad<1,t>") +l=A.a8(new A.ad(n,new A.aTk(),m),!0,m.i("aN.E")) +return A.Ax(l[0],l[1],l[2],p)}if(B.c.ba(a.toLowerCase(),"hsl")){p=t.SR +k=A.a8(new A.ad(A.a(B.c.R(a,J.bkD(a,"(")+1,B.c.dV(a,")")).split(","),t.s),new A.aTl(),p),!0,p.i("aN.E")) +j=B.d.an(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.a8(new A.ad(l,new A.aTm(p/100),m),!0,m.i("aN.E")) +p=A.af(l).i("ad<1,a5>") +l=i<0.5?A.a8(new A.ad(l,new A.aTn(i),p),!0,p.i("aN.E")):A.a8(new A.ad(l,new A.aTo(i),p),!0,p.i("aN.E")) +p=A.af(l).i("ad<1,a5>") +l=A.a8(new A.ad(l,new A.aTp(),p),!0,p.i("aN.E")) +return A.brz(h,J.bkF(l[0]),J.bkF(l[1]),J.bkF(l[2]))}if(B.c.ba(a.toLowerCase(),"rgb")){p=t.SR +l=A.a8(new A.ad(A.a(B.c.R(a,J.bkD(a,"(")+1,B.c.dV(a,")")).split(","),t.s),new A.aTq(),p),!0,p.i("aN.E")) +g=l.length>3?l[3]:255 +return A.brz(g,l[0],l[1],l[2])}f=B.agD.h(0,a) +if(f!=null)return f +return null}, +auY(a){var s,r,q,p,o,n,m,l,k,j=t.N,i=A.w(j,j) +for(j=J.ay(a);j.u();){s=j.gI(j) +r=B.c.cw(s.b) +s=s.a +q=B.c.dV(s,":") +p=q>0 +if((p?B.c.bE(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.Ax(r>>>16&255,r>>>8&255,r&255,1)}r=l==="none"?B.kI:new A.px(!1,o) +return new A.DR(n.f,r,q,m,m)}} +A.aTj.prototype={ +$1(a){return B.c.cw(a)}, +$S:40} +A.aTk.prototype={ +$1(a){return A.c0(a,null)}, +$S:90} +A.aTl.prototype={ +$1(a){var s +a=B.c.cw(a) +if(B.c.bF(a,"%"))a=B.c.R(a,0,a.length-1) +if(B.c.p(a,".")){s=A.ih(a,!1) +s.toString +return B.d.aa(s*2.55)}return A.c0(a,null)}, +$S:90} +A.aTm.prototype={ +$1(a){return a+(1-this.a)*(0.5-a)}, +$S:1} +A.aTn.prototype={ +$1(a){return this.a*2*a}, +$S:1} +A.aTo.prototype={ +$1(a){return this.a*2*(1-a)+2*a-1}, +$S:1} +A.aTp.prototype={ +$1(a){return a*255}, +$S:1} +A.aTq.prototype={ +$1(a){var s +a=B.c.cw(a) +if(B.c.bF(a,"%")){s=A.ih(B.c.R(a,0,a.length-1),!1) +s.toString +return B.d.aa(s*2.55)}return A.c0(a,null)}, +$S:90} +A.ajB.prototype={ +aiX(a){return this.a.h(0,a)}, +aiN(a){var s,r={},q=this.c.h(0,a) +if(q==null)return A.a([],t.hc) +s=A.a([],t.Sd) +r.a=null +J.fz(q,new A.bcp(r,s)) +r=t.OW +return A.a8(new A.ad(s,new A.bco(),r),!1,r.i("aN.E"))}, +Fp(a){var s,r +if(a.hA("fill")!=null){s=a.hA("fill") +s.toString +if(B.c.ba(s,"url")&&a.z.p(0,s))return s}if(a.hA("stroke")!=null){r=a.hA("stroke") +r.toString +if(B.c.ba(r,"url")&&a.z.p(0,r))return r}return null}, +aNO(a,b){J.dN(this.e.cP(0,a,new A.bcm()),b)}, +aaj(a,b){var s,r,q=this.b,p=a.a +if(q.N(0,p))return +q.n(0,p,a) +if(b!=null){b="url("+b+")" +s=q.h(0,b) +if(s!=null)q.n(0,p,a.UK(s)) +else this.aNO(b,a)}else{p=this.e.C(0,p) +p=J.ay(p==null?A.a([],t.AB):p) +for(;p.u();){r=p.gI(p) +q.n(0,r.a,r.UK(a))}}}, +aNN(a,b){this.c.cP(0,a,new A.bcl(b))}, +aNR(a,b){this.a.cP(0,a,new A.bcn(b))}} +A.bcp.prototype={ +$1(a){var s,r,q,p,o,n,m=this +if(a instanceof A.CK){s=a.d +r=A.a([],t.H9) +q=new A.l2(r,$) +B.b.G(r,s.a) +q.b=s.b +s=a.b.x +if(s==null)s=B.d7 +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.ah6(!1) +B.b.G(p.a,s.a)}}else if(a instanceof A.AO){s=a.d +m.$1(a.e.$1(s))}else if(a instanceof A.CI)B.b.az(a.d,m)}, +$S:906} +A.bco.prototype={ +$1(a){return a.vO()}, +$S:907} +A.bcm.prototype={ +$0(){return A.a([],t.AB)}, +$S:908} +A.bcl.prototype={ +$0(){return this.a}, +$S:909} +A.bcn.prototype={ +$0(){return this.a}, +$S:910} +A.amp.prototype={} +A.DQ.prototype={ +gaV_(){var s=this.a +s=s.gdG(s) +return s.km(s,new A.aTd())}, +Cm(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.qg(A.bu9(a3.gaV_(),a2,a2),a2,a2) +a2.G(0,a0.a) +s=a2.h(0,"id") +r=a2.h(0,"href") +q=a4==null?a0.r:a4 +p=a0.d.PG(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.PG(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.Oy(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.PG(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.DR(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.bwa(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)}, +xF(a){return this.Cm(a,null)}} +A.aTd.prototype={ +$1(a){return B.ama.p(0,a.a)}, +$S:911} +A.IO.prototype={ +xP(a){if(this.b)return this.a*a +return this.a}, +gB(a){return A.a4(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.IO&&b.b===this.b&&b.a===this.a}} +A.Oy.prototype={ +ah9(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.Or(B.eK,p,q.e,q.d,q.f,q.r) +s=q.c +if(s!=null){s=t.Mm.a(q.a.b.h(0,s)) +r=s==null?p:s.UG(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.Ax(o>>>16&255,o>>>8&255,o&255,s) +o=b.ajR(q.r) +return new A.Or(s,r,q.e,q.d,q.f,o)}} +A.DR.prototype={ +Yd(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.Ax(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.Ax(r>>>16&255,r>>>8&255,r&255,n) +s=n}if(s==null)return o +if(p.e===!0)return new A.wT(s,o) +n=p.d +if(n!=null){n=t.Mm.a(p.a.b.h(0,n)) +q=n==null?o:n.UG(a,b) +if(q==null)return o}else q=o +return new A.wT(s,q)}, +b0b(a,b){return this.Yd(a,b,null)}, +j(a){var s=this +return"SvgFillAttributes(definitions: "+s.a.j(0)+", color: "+s.b.j(0)+", shaderId: "+A.c(s.d)+", hasPattern: "+A.c(s.e)+", oapctiy: "+A.c(s.c)+")"}} +A.px.prototype={ +PG(a){var s,r=this +if(a==null||r.a)return r +if(a.a&&r.b==null)return B.kI +s=r.b +return new A.px(!1,s==null?a.b:s)}, +j(a){var s +if(this.a)s='"none"' +else{s=this.b +s=s==null?null:s.j(0) +if(s==null)s="null"}return s}} +A.aPc.prototype={ +ahx(a,b){var s,r=a.r1(b),q=A.a([],t.hc) +for(s=J.ay(a.b.$1(a.c));s.u();)q.push(s.gI(s).bY(r)) +if(q.length===0)return a.d.dE(0,this,b) +return new A.a7f(q,a.d.dE(0,this,b))}, +ahC(a,b){var s,r=a.e.$1(a.b) +if(r==null)return a.c.dE(0,this,b) +s=a.c.dE(0,this,b) +return new A.a7g(r.dE(0,this,a.r1(b)),s,a.d)}, +ahE(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.r1(b5),b2=b4.aQZ(),b3=t.f2 +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(s0;){k=n[m];--m +o=n[m] +j=k.Ky() +if(j!=null)l=l.hG(A.f9(q,j)) +k.um(o,q)}s=h.adg$ +if(s!=null)l=l.hG(A.f9(q,s)) +s=h.adf$ +if(s!=null)q.e7(0,s) +s=A.f9(q,b) +i=s.XB(l)?s.hG(l).ep(new A.z(-s.a,-s.b)):B.ar +return new A.rc(h.E,new A.R(s.c-s.a,s.d-s.b),i)}} +A.aOZ.prototype={ +$0(){var s,r=this.a +if(r.id!=null){s=r.gv(0) +s=new A.I(0,0,0+s.a,0+s.b)}else s=null +if(s==null)return +if(r.id!=null){s=r.gv(0) +s=new A.I(0,0,0+s.a,0+s.b)}else s=null +s.toString +r.axF(this.b,s)}, +$S:0} +A.aP_.prototype={ +$1(a){A.bvt()}, +$S:3} +A.bcg.prototype={ +$1(a){var s=a instanceof A.hc?a:a.r +this.a.a7s(s)}, +$S:255} +A.a7a.prototype={} +A.ajx.prototype={ +aT(a,b){var s,r=this +if(r.Dn$!=null){r.adg$=a.gca(0).ajf() +s=new A.bW(a.gca(0).w3()) +s.ahg(0,b.a,b.b,0) +r.adf$=s +s=r.yH$ +if(s!=null)s.$0() +r.yH$=a.a.aag(new A.bcg(r))}r.jN(a,b)}, +m(){var s=this,r=s.yH$ +if(r!=null)r.$0() +s.yH$=null +s.adh$=!0 +s.h0()}} +A.aae.prototype={ +b6(a){var s=null,r=this.a +r.toString +r=new A.a7a(r,s,s,0,s,s,!1,s,new A.bk(),A.aK()) +r.b5() +r.sbz(s) +r.Dn$=this.e +return r}, +b9(a,b){b.saYR(this.e)}} +A.rc.prototype={ +gahv(){var s,r=this.c,q=this.b,p=q.a*q.b +if(A.boV(p,0))return 0 +s=(r.c-r.a)*(r.d-r.b)/p +if(A.boV(s,0))s=0 +else if(A.boV(s,1))s=1 +return s}, +j(a){return"VisibilityInfo(key: "+this.a.j(0)+", size: "+this.b.j(0)+" visibleBounds: "+this.c.j(0)+")"}, +gB(a){return A.a4(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.rc&&b.a.l(0,this.a)&&b.b.l(0,this.b)&&b.c.l(0,this.c)}} +A.aVP.prototype={} +A.aVT.prototype={} +A.aVR.prototype={} +A.aIA.prototype={} +A.aVS.prototype={} +A.Eo.prototype={ +D(){return"WcpLogLevel."+this.b}} +A.bx.prototype={ +D(){return"WcpCmd."+this.b}, +gbu(){switch(this.a){case 0:return"sw_StartMachineFind" +case 1:return"sw_Connect" +case 2:return"sw_ConnectOtherMachine" +case 3:return"sw_Disconnect" +case 4:return"sw_StopMachineFind" +case 5:return"sw_GetMachineState" +case 6:return"sw_SubscribeMachineState" +case 7:return"sw_UnSubscribeMachineState" +case 8:return"sw_GetMachineObjects" +case 9:return"sw_SetSubscribeFilter" +case 10:return"sw_StopMachineStateSubscription" +case 11:return"sw_GetConnectedMachine" +case 12:return"sw_GetPrinterInfo" +case 13:return"sw_GetMachineSystemInfo" +case 14:return"sw_SendGCodes" +case 15:return"sw_SendCommand" +case 16:return"sw_MachinePrintStart" +case 17:return"sw_MachinePrintPause" +case 18:return"sw_MachinePrintResume" +case 19:return"sw_MachinePrintCancel" +case 20:return"sw_MachineFilesRoots" +case 21:return"sw_MachineFilesMetadata" +case 22:return"sw_MachineFilesThumbnails" +case 23:return"sw_MachineFilesGetDirectory" +case 24:return"sw_CameraStartMonitor" +case 25:return"sw_CameraStopMonitor" +case 26:return"sw_GetFileFilamentMapping" +case 27:return"sw_SetFilamentMappingComplete" +case 28:return"sw_FinishFilamentMapping" +case 29:return"sw_GetMachineFilamentMapping" +case 30:return"sw_DownloadMachineFile" +case 31:return"sw_UploadFiletoMachine" +case 32:return"sw_FileGetStatus" +case 33:return"sw_SystemGetDeviceInfo" +case 34:return"sw_StartCloudPrint" +case 37:return"sw_UserLogin" +case 38:return"sw_UserLogout" +case 39:return"sw_SubscribeUserLoginState" +case 40:return"sw_GetUserLoginState" +case 66:return"sw_LaunchConsole" +case 67:return"sw_Log" +case 68:return"sw_SetLogLevel" +case 69:return"sw_FileLog" +case 41:return"sw_NewProject" +case 42:return"sw_OpenProject" +case 43:return"sw_GetRecentProjects" +case 44:return"sw_OpenRecentFile" +case 45:return"sw_DeleteRecentFiles" +case 46:return"sw_SubscribeRecentFiles" +case 47:return"sw_GetLocalDevices" +case 48:return"sw_AddDevice" +case 49:return"sw_SubscribeLocalDevices" +case 50:return"sw_RenameDevice" +case 51:return"sw_SwitchModel" +case 52:return"sw_DeleteDevices" +case 53:return"sw_UploadFile" +case 54:return"sw_UploadFileResult" +case 55:return"sw_GetFileStream" +case 56:return"sw_GetActiveFile" +case 57:return"sw_SwitchTab" +case 58:return"sw_GetPincode" +case 35:return"sw_PullCloudFile" +case 36:return"sw_CancelPullCloudFile" +case 59:return"sw_test_mqtt_moonraker" +case 70:return"sw_create_mqtt_client" +case 71:return"sw_mqtt_connect" +case 72:return"sw_mqtt_disconnect" +case 73:return"sw_mqtt_subscribe" +case 74:return"sw_mqtt_unsubscribe" +case 75:return"sw_mqtt_publish" +case 76:return"sw_mqtt_set_engine" +case 77:return"sw_SetDeviceName" +case 78:return"sw_ControlLed" +case 79:return"sw_ControlPrintSpeed" +case 80:return"sw_BedMesh_AbortProbeMesh" +case 81:return"sw_ControlPurifier" +case 82:return"sw_ControlMainFan" +case 83:return"sw_ControlGenericFan" +case 84:return"sw_ControlBedTemp" +case 85:return"sw_ControlExtruderTemp" +case 86:return"sw_FilesThumbnailsBase64" +case 87:return"sw_exception_query" +case 88:return"sw_GetFileListPage" +case 89:return"sw_SubscribeApplicationLifecycle" +case 90:return"sw_Webview_Unsubscribe" +case 91:return"sw_Unsubscribe_Filter" +case 60:return"sw_SetCache" +case 61:return"sw_GetCache" +case 62:return"sw_RemoveCache" +case 64:return"sw_SubscribeCacheKey" +case 65:return"sw_UnsubscribeCacheKeys" +case 63:return"sw_UpdateMachineFilamentInfo" +case 92:return"sw_UploadCameraTimelapse" +case 93:return"sw_DeleteCameraTimelapse" +case 94:return"sw_ServerClientManagerSetUserinfo" +case 95:return"sw_Exit" +default:return"unknown_cmd"}}, +geL(){switch(this.a){case 0:return"send_machine_list" +case 6:return"subscribeMachineState" +case 39:return"subscribesUserLoginState" +case 46:return"subscribeRecentFiles" +case 49:return"subscribeLocalDevices" +case 73:return"responseCb" +case 89:return"subscribeApplicationLifecycle" +case 64:return"subscribeCacheKey" +case 65:return"unsubscribeCacheKeys" +default:return"unknownEvent"}}} +A.aRf.prototype={ +aP(){var s,r=(this.a+1)%999999 +this.a=r +s=this.b+r +return s<0||s>9007199254740991?B.e.an(s,1e15):s}} +A.aak.prototype={ +D(){return"WcpStatus."+this.b}} +A.En.prototype={ +ar6(){var s,r,q=this +A.u($.a7+" init",null) +A.u($.a7+" initialize, addListenTo ",null) +q.arQ() +s=q.a +r=s.b +new A.aG(r,A.y(r).i("aG<1>")).bL(new A.aVU(q)) +s=s.a +new A.aG(s,A.y(s).i("aG<1>")).bL(new A.aVV(q)) +A.u($.a7+" init done",null)}, +m(){var s,r,q,p,o,n=this,m=null +A.aZ(n,!0,B.az,"dispose",$.a7,m,m) +n.z.L(0) +n.d.L(0) +n.e.L(0) +s=n.c +s.V(0) +n.b.V(0) +n.r.V(0) +r=t.N +q=t.z +n.y=A.w(r,q) +n.f=B.kj +p=B.e.j(n.w.aP()) +o=B.axn.gbu() +n.c8(0,new A.by(A.C(["seqid",p],r,q),new A.c4(o,m,A.w(r,q)).ao())) +s.V(0) +s=n.a +s.a.L(0) +s.b.L(0) +s.c.L(0) +A.u("wcpGate.web dispose",m) +n.dN()}, +arQ(){var s=this,r=s.c +if(!r.N(0,B.ke.geL()+"_"+A.at(s)))r.n(0,B.ke.geL()+"_"+A.at(s),new A.aWl(s)) +if(!r.N(0,B.kf.geL()+"_"+A.at(s)))r.n(0,B.kf.geL()+"_"+A.at(s),new A.aWm(s)) +if(!r.N(0,B.kd.geL()+"_"+A.at(s)))r.n(0,B.kd.geL()+"_"+A.at(s),new A.aWn(s)) +if(!r.N(0,B.nO.geL()+"_"+A.at(s)))r.n(0,B.nO.geL()+"_"+A.at(s),new A.aWo(s)) +if(!r.N(0,B.e1.geL()))r.n(0,B.e1.geL(),new A.aWp(s)) +if(!r.N(0,B.tS.geL()+"_"+A.at(s)))r.n(0,B.tS.geL()+"_"+A.at(s),new A.aWq(s)) +if(!r.N(0,B.tT.geL()+"_"+A.at(s)))r.n(0,B.tT.geL()+"_"+A.at(s),new A.aWr(s)) +A.u($.a7+" addListenTo: "+A.tM(new A.aR(r,A.y(r).i("aR<1>")),"(",")")+" done",null)}, +oC(a){var s,r,q,p,o,n,m="clientId" +try{q=J.dI(a) +if(q.N(a,m)&&q.h(a,m)!=null){s=J.p(q.h(a,m)) +q=this.r +p=t.N +o=t.z +if(q.N(0,s))q.n(0,s,A.f7(a,p,o)) +else q.n(0,s,A.f7(a,p,o))}}catch(n){r=A.v(n) +q=$.a7 +A.aZ(this,!0,B.Q,"setPendingConnectionData error: "+J.p(r)+", payload: "+J.p(a),q,null,null)}finally{q=this.r +A.u($.a7+" setPendingConnectionData keys: "+A.tM(new A.aR(q,A.y(q).i("aR<1>")),"(",")"),null)}}, +Yt(a,b){var s,r,q,p=null +A.u($.a7+" updatePendingConnectionDataconnectedStatus: "+a+", false",p) +s=this.r +r=s.N(0,a)&&s.h(0,a)!=null +q="updatePendingConnectionDataconnectedStatus: "+a +if(r){s.h(0,a).n(0,"connected",!1) +A.aZ(this,!0,B.cM,q+", false",$.a7,p,p)}else A.aZ(this,!0,B.cM,q+" not exists",$.a7,p,p)}, +KJ(a,b,c,d){return this.aRQ(0,b,c,d)}, +aRQ(a,b,c,d){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$KJ=A.j(function(a0,a1){if(a0===1){o=a1 +s=p}while(true)switch(s){case 0:g=B.e.j(n.w.aP()) +f=A.C(["dev_id",c,"need_reload",d],t.N,t.K) +p=4 +k=$.a7 +A.aZ(n,!0,B.az,"disconnect start, clientId: "+b+", devId: "+c+", needReload: "+d+", seqid: "+A.c(g),k,null,null) +s=7 +return A.f(n.D8(c,d,g),$async$KJ) +case 7:m=a1 +if(m!=null&&J.e(J.i(m.b,"code"),200)){n.f=B.kj +n.Yt(b,!1) +k=$.a7 +A.aZ(n,!0,B.az,"disconnect success \u2705, payload: "+A.co(f)+", packet: "+J.p(m.b)+", seqid: "+A.c(g),k,null,null) +n.T() +k=A.c7(!0,t.y) +q=k +s=1 +break}else{n.f=B.ki +k=$.a7 +j=A.co(f) +i=m +i=i==null?null:J.p(i.b) +A.aZ(n,!0,B.az,"connectDevice disconnect failed \u274c, payload: "+j+", packet: "+A.c(i)+",seqid: "+A.c(g),k,null,null) +n.T() +k=A.c7(!1,t.y) +q=k +s=1 +break}p=2 +s=6 +break +case 4:p=3 +e=o +l=A.v(e) +k=$.a7 +A.aZ(n,!0,B.Q,"disconnect error: "+J.p(l)+", clientId: "+b+", payload: "+A.co(f)+", seqid: "+A.c(g),k,null,null) +throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$KJ,r)}, +Kk(a,b){return this.aR2(a,b)}, +aR2(a,b){var s=0,r=A.n(t.f),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c +var $async$Kk=A.j(function(a0,a1){if(a0===1){o=a1 +s=p}while(true)switch(s){case 0:e=B.e.j(n.w.aP()) +d=e +p=4 +i=b.a +if(i===0){i=A.ae("payload is empty") +throw A.d(i)}if(b.h(0,"server_address")==null||b.h(0,"clientId")==null){i=A.ae("payload is invalid, server_address and clientId are required, seqid: "+A.c(d)) +throw A.d(i)}n.oC(b) +m=new A.c4(B.ax4.gbu(),null,b) +i=t.N +h=t.z +l=new A.by(A.C(["seqid",d],i,h),m.ao()) +g=$.a7 +A.aZ(n,!0,B.az,"createMqttClient payload: "+A.co(b)+", seqid: "+A.c(d),g,null,null) +s=7 +return A.f(n.c8(0,l),$async$Kk) +case 7:k=a1 +A.u($.a7+" createMqttClient: "+J.p(k.b)+", seqid: "+A.c(d),null) +g=$.a7 +A.aZ(n,!0,B.az,"createMqttClient [1] result: "+J.p(k.b)+", seqid: "+A.c(d),g,null,null) +if(J.e(J.i(k.b,"code"),200))if(J.i(k.b,"data")!=null&&t.f.b(J.i(k.b,"data"))){i=A.f7(J.i(k.b,"data"),i,h) +q=i +s=1 +break}else{i=A.ae("response data is invalid") +throw A.d(i)}i=A.ae(A.c(J.i(k.b,"code"))+": "+A.c(J.i(k.b,"message"))) +throw A.d(i) +p=2 +s=6 +break +case 4:p=3 +c=o +j=A.v(c) +i=$.a7 +A.aZ(n,!0,B.Q,"createWcpClient error: "+J.p(j)+", isMqtts: "+a+", payload: "+b.j(0)+", seqid: "+A.c(d),i,null,null) +throw c +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Kk,r)}, +Mn(a,b){return this.aXu(a,b)}, +aXu(a,b){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$Mn=A.j(function(c,a0){if(c===1){o=a0 +s=p}while(true)switch(s){case 0:f=B.e.j(n.w.aP()) +e=f +p=4 +i=b.a +if(i===0){i=A.ae("payload is empty, seqid: "+A.c(e)) +throw A.d(i)}A.u($.a7+" mqttConnect payload: "+A.co(b)+", payload['connected']: "+A.c(b.h(0,"connected")),null) +if(J.e(b.h(0,"connected"),!0)){n.f=B.ki +i=$.a7 +A.aZ(n,!0,B.az,"mqttConnect connected is true, return true \u2705, payload: "+A.co(b)+", seqid: "+A.c(e),i,null,null) +n.T() +q=!0 +s=1 +break}if(b.h(0,"id")==null||J.e(b.h(0,"id"),"")){i=A.ae("payload is invalid, id is required") +throw A.d(i)}m=new A.c4(B.ax5.gbu(),null,b) +l=new A.by(A.C(["seqid",e],t.N,t.z),m.ao()) +A.u($.a7+" mqttConnect start, seqid: "+A.c(e),null) +s=7 +return A.f(n.c8(0,l),$async$Mn) +case 7:k=a0 +i=""+a +A.u($.a7+" mqttConnect result: "+J.p(k.b)+", isMqtts: "+i+", seqid: "+A.c(e),null) +if(J.e(J.i(k.b,"code"),200)){n.f=B.ki +h=$.a7 +A.aZ(n,!0,B.az,"mqttConnect success \u2705, mqttConnect result is Map and code 200, isMqtts: "+i+", result.payload: "+J.p(J.i(k.b,"data"))+", seqid: "+A.c(e),h,null,null) +n.T() +q=!0 +s=1 +break}n.f=B.kj +n.T() +i=A.ae(A.c(J.i(k.b,"code"))+": "+A.c(J.i(k.b,"message"))) +throw A.d(i) +p=2 +s=6 +break +case 4:p=3 +d=o +j=A.v(d) +i=$.a7 +A.aZ(n,!0,B.Q,"mqttConnect error: "+J.p(j)+", isMqtts: "+a+", payload: "+b.j(0)+", seqid: "+A.c(e),i,null,null) +throw d +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Mn,r)}, +Mo(a){return this.aXv(a)}, +aXv(a){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$Mo=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:g=B.e.j(n.w.aP()) +f=g +p=4 +i=a.a +if(i===0){i=A.ae("payload is empty, seqid: "+A.c(f)) +throw A.d(i)}if(a.h(0,"id")==null){i=A.ae("payload is invalid, id is required, seqid: "+A.c(f)) +throw A.d(i)}m=new A.c4(B.ax6.gbu(),null,a) +l=new A.by(A.C(["seqid",f],t.N,t.z),m.ao()) +A.u($.a7+" mqttDisconnect start, seqid: "+A.c(f),null) +s=7 +return A.f(n.c8(0,l),$async$Mo) +case 7:k=c +A.u($.a7+" mqttDisconnect result: "+J.p(k.b)+", seqid: "+A.c(f),null) +if(J.e(J.i(k.b,"code"),200)){n.f=B.kj +i=$.a7 +A.aZ(n,!0,B.az,"mqttDisconnect success \u2705, mqttDisconnect result is Map and code 200, result.payload: "+J.p(J.i(k.b,"data"))+", seqid: "+A.c(f),i,null,null) +q=!0 +s=1 +break}n.f=B.ki +n.T() +i=A.ae(A.c(J.i(k.b,"code"))+": "+A.c(J.i(k.b,"message"))) +throw A.d(i) +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +i=$.a7 +A.aZ(n,!0,B.Q,"mqttDisconnect error: "+J.p(j)+", payload: "+a.j(0)+", seqid: "+A.c(f),i,null,null) +throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Mo,r)}, +vo(a){return this.aXy(a)}, +aXy(a){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$vo=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:f=B.e.j(n.w.aP()) +e=f +p=4 +h=a.a +if(h===0){h=A.ae("payload is empty, seqid: "+A.c(e)) +throw A.d(h)}if(a.h(0,"id")==null||a.h(0,"topic")==null){h=A.ae("payload is invalid, id and topic are required, seqid: "+A.c(e)) +throw A.d(h)}m=A.c(a.h(0,"event_id"))+"_"+A.at(n) +l=new A.c4(B.tS.gbu(),m,a) +k=new A.by(A.C(["seqid",e],t.N,t.z),l.ao()) +h=$.a7 +A.aZ(n,!0,B.az,"mqttSubscribe start, seqid: "+A.c(e)+", requestPayload: "+J.p(l),h,null,null) +h=$.a7 +A.aZ(n,!0,B.az,"mqttSubscribe addListenTo "+A.c(m)+" not exists, seqid: "+A.c(e),h,null,null) +n.c.n(0,m,new A.aWs(n)) +s=7 +return A.f(n.c8(0,k),$async$vo) +case 7:j=c +h=$.a7 +A.aZ(n,!0,B.az,"mqttSubscribe, payload: "+A.co(a)+", result: "+J.p(j.b)+", seqid: "+A.c(e),h,null,null) +if(J.e(J.i(j.b,"code"),200)){q=!0 +s=1 +break}h=A.ae("eventId: "+A.c(m)+", "+A.c(J.i(j.b,"code"))+": "+A.c(J.i(j.b,"message"))) +throw A.d(h) +p=2 +s=6 +break +case 4:p=3 +d=o +i=A.v(d) +h=$.a7 +A.aZ(n,!0,B.Q,"mqttSubscribe error: "+J.p(i)+", payload: "+a.j(0)+", seqid: "+A.c(e),h,null,null) +throw d +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$vo,r)}, +Mp(a,b){return this.aXw(a,b)}, +aXw(a,b){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Mp=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b +p=4 +i=a.a +if(i===0){i=A.ae("payload is empty, seqid: "+A.c(g)) +throw A.d(i)}if(a.h(0,"id")==null||a.h(0,"topic")==null||a.h(0,"payload")==null||a.h(0,"qos")==null){i=A.ae("payload is invalid, id and topic and payload and qos are required, seqid: "+A.c(g)) +throw A.d(i)}m=new A.c4(B.ax7.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +i=$.a7 +A.aZ(n,!0,B.az,"mqttPublish start, seqid: "+A.c(g)+", requestPayload: "+J.p(m),i,null,null) +s=7 +return A.f(n.c8(0,l),$async$Mp) +case 7:k=d +i=$.a7 +A.aZ(n,!0,B.az,"mqttPublish result: "+J.p(k.b)+", seqid: "+A.c(g),i,null,null) +if(J.e(J.i(k.b,"code"),200)){q=!0 +s=1 +break}i=A.ae(A.c(J.i(k.b,"code"))+": "+A.c(J.i(k.b,"message"))) +throw A.d(i) +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +i=$.a7 +A.aZ(n,!0,B.Q,"mqttPublish error: "+J.p(j)+", payload: "+a.j(0)+", seqid: "+A.c(g),i,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Mp,r)}, +Mq(a,b){var s=!0 +return this.aXx(a,b)}, +aXx(a,b){var s=0,r=A.n(t.y),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c +var $async$Mq=A.j(function(a0,a1){if(a0===1){o=a1 +s=p}while(true)switch(s){case 0:f=!0 +e=B.e.j(n.w.aP()) +d=e +p=4 +i=b.a +if(i===0){i=A.ae("payload is empty, seqid: "+A.c(d)) +throw A.d(i)}if(b.h(0,"engine_id")==null){i=A.ae("payload is invalid, engine_id is required, seqid: "+A.c(d)) +throw A.d(i)}if(f){i=$.p_ +b.n(0,"need_reload",(i==null?$.p_=A.aag():i).as)}m=new A.c4(B.ax8.gbu(),null,b) +l=new A.by(A.C(["seqid",d],t.N,t.z),m.ao()) +i=$.a7 +h=""+a +A.aZ(n,!0,B.az,"mqttSetEngine start, "+h+", seqid: "+A.c(d)+", payload: "+A.co(b),i,null,null) +s=7 +return A.f(n.c8(0,l),$async$Mq) +case 7:k=a1 +if(J.e(J.i(k.b,"code"),200)){i=$.a7 +A.aZ(n,!0,B.az,"mqttSetEngine result success \u2705, "+h+", seqid: "+A.c(d)+", result.payload: "+A.c(J.i(k.b,"data")),i,null,null) +q=!0 +s=1 +break}i=A.ae(A.c(J.i(k.b,"code"))+": "+A.c(J.i(k.b,"message"))) +throw A.d(i) +p=2 +s=6 +break +case 4:p=3 +c=o +j=A.v(c) +i=$.a7 +A.aZ(n,!0,B.Q,"mqttSetEngine error: "+J.p(j)+", isMqtts: "+a+", seqid: "+A.c(d),i,null,null) +throw c +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Mq,r)}, +vy(a){return this.aZF(a)}, +aZF(a){var s=0,r=A.n(t.H),q,p=this,o,n,m,l,k,j,i,h +var $async$vy=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:A.u($.a7+" publishMessage message: "+a.j(0),null) +if(p.f!==B.ki){j=t.N +i=t.z +p.d.q(0,new A.by(A.C(["seqid",a.a.h(0,"seqid")],j,i),A.C(["code",-1,"message","wcp not connected","data",null],j,i))) +i=$.a7 +A.aZ(p,!0,B.eC,"publishMessage wcp not connected, packet: "+a.j(0),i,null,null) +q=A.i0("wcp not connected",null,t.H) +s=1 +break}try{j=a.a +switch(j.h(0,"method")){case"machine.system_info":p.Fm(a.b,j.h(0,"seqid")) +break +case"printer.gcode.script":A.u($.a7+" sendGcode>>>>>>",null) +p.FG(a.b,j.h(0,"seqid")) +break +case"printer.print.start":A.u($.a7+" startMachinePrint>>>>>>",null) +p.G9(a.b,j.h(0,"seqid")) +break +case"printer.print.pause":A.u($.a7+" pauseMachinePrint>>>>>",null) +p.MU(a.b,j.h(0,"seqid")) +break +case"printer.print.resume":A.u($.a7+" resumeMachinePrint>>>>>>",null) +p.Nv(a.b,j.h(0,"seqid")) +break +case"printer.print.cancel":A.u($.a7+" cancelMachinePrint>>>>>>",null) +p.JZ(a.b,j.h(0,"seqid")) +break +case"server.files.pull":p.N6(a.b,j.h(0,"seqid")) +break +case"server.files.cancel_pull":p.K0(a.b,j.h(0,"seqid")) +break +case"server.files.roots":p.Ff(a.b,j.h(0,"seqid")) +break +case"server.files.metadata":p.Fe(a.b,j.h(0,"seqid")) +break +case"server.files.thumbnails":p.Fg(a.b,j.h(0,"seqid")) +break +case"server.files.get_directory":p.Fd(a.b,j.h(0,"seqid")) +break +case"printer.info":p.Fl(a.b,j.h(0,"seqid")) +break +case"printer.objects.list":p.Fk(a.b,j.h(0,"seqid")) +break +case"printer.objects.query":p.Fi(a.b,j.h(0,"seqid")) +break +case"printer.objects.setSubscribeFilter":p.FZ(a.b,j.h(0,"seqid")) +break +case"printer.objects.subscribe":p.Gg(a.b,j.h(0,"seqid")) +break +case"printer.objects.unsubscribe":p.NU(a.b,j.h(0,"seqid")) +break +case"custom.file.filament.objects.get_mapping":p.vW(a.b,j.h(0,"seqid")) +break +case u.d4:p.FL(a.b,j.h(0,"seqid")) +break +case"camera.start_monitor":p.JV(a.b,j.h(0,"seqid")) +break +case"camera.stop_monitor":p.JW(a.b,j.h(0,"seqid")) +break +case"server.files.metascan":case"server.files.list":case"server.history.list":case"machine.set_device_name":case"printer.control.led":case"printer.control.print_speed":case"printer.bed_mesh.abort_probe_mesh":case"printer.control.purifier":case"printer.control.main_fan":case"printer.control.generic_fan":case"printer.control.bed_temp":case"printer.control.extruder_temp":case"server.files.thumbnails_base64":case"server.exception.query":case"server.files.list_page":case"camera.upload_timelapse_instance":case"camera.delete_timelapse_instance":o=a.b +J.bT(o,"cmd",p.af5(j.h(0,"method"))) +A.u($.a7+" sendCommand>>>>>>: "+A.c(o),null) +p.zX(o,j.h(0,"seqid")) +break +default:n=j.h(0,"method") +m=p.af5(n) +A.u($.a7+" publishMessage method: "+A.c(n)+", cmd: "+A.c(m),null) +if(n!=null&&!J.e(n,"")){l=a.b +J.bT(l,"cmd",m) +A.u($.a7+" sendCommand>>>>>>: "+A.c(l),null) +p.zX(l,j.h(0,"seqid"))}break}}catch(g){j=A.v(g) +if(t.J.b(j)){k=j +j=$.a7 +A.aZ(p,!0,B.Q,"publishMessage error: "+J.p(k),j,null,null) +throw A.d(A.ae("publishMessage error: "+J.p(k)))}else throw g}case 1:return A.l(q,r)}}) +return A.m($async$vy,r)}, +af5(a){switch(a){case"machine.set_device_name":return B.ax9.gbu() +case"printer.control.led":return B.axa.gbu() +case"printer.control.print_speed":return B.axb.gbu() +case"printer.bed_mesh.abort_probe_mesh":return B.axd.gbu() +case"printer.control.purifier":return B.axe.gbu() +case"printer.control.main_fan":return B.axf.gbu() +case"printer.control.generic_fan":return B.axg.gbu() +case"printer.control.bed_temp":return B.axh.gbu() +case"printer.control.extruder_temp":return B.axi.gbu() +case"server.files.thumbnails_base64":return B.axj.gbu() +case"server.exception.query":return B.axk.gbu() +case"server.files.list_page":return B.axl.gbu() +case"camera.upload_timelapse_instance":return B.axo.gbu() +case"camera.delete_timelapse_instance":return B.axp.gbu() +case"server.files.get_status":return B.awG.gbu() +case"system.get_device_info":return B.awH.gbu() +case"server.files.start_cloud_print":return B.awI.gbu() +case"server.client_manager.set_userinfo":return B.axq.gbu() +default:return a}}, +OD(a){return this.akj(a)}, +akj(a){var s=0,r=A.n(t.z),q=this,p,o,n +var $async$OD=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:try{q.a.kr(a)}catch(m){p=A.v(m) +n=$.a7 +A.aZ(q,!0,B.Q,"sendPacket, packet: "+a.j(0)+", error: "+J.p(p),n,null,null) +n=A.ae("Invalid request error: "+J.p(p)) +throw A.d(n)}return A.l(null,r)}}) +return A.m($async$OD,r)}, +aAS(a){var s,r,q,p,o,n,m,l,k,j=this +try{m=a.a +s=m.h(0,"seqid") +r=m.h(0,"event_id") +m=a.b +l=J.i(m,"method") +q=l==null?"":l +if(J.du(q)&&J.e(q,"call_flutter")){j.z.q(0,m) +return}if(s!=null&&j.b.N(0,s)){m=j.b +p=m.h(0,s) +if(p!=null)J.VY(p,a) +m.C(0,s) +j.c.C(0,s)}if(r!=null&&j.c.N(0,r)){o=j.c.h(0,r) +if(o!=null)o.$1(a)}}catch(k){n=A.v(k) +m=$.a7 +A.aZ(j,!0,B.Q,"handleMessage error: "+J.p(n)+", message: "+a.j(0),m,null,null)}}, +agC(a,b,c){var s,r,q,p=this +p.OD(b) +s=new A.a_($.ab,t.tt) +r=new A.aq(s,t.bI) +q=b.a.h(0,"seqid") +if(q!=null){p.c.n(0,q,new A.aWv(p,r,q)) +p.b.n(0,q,r)}if(c>0)A.eC(A.dA(0,0,c),new A.aWw(p,r,b,q),t.P) +return s}, +c8(a,b){return this.agC(0,b,0)}, +a4z(a,b){var s,r,q +try{b.$0()}catch(q){s=A.v(q) +r=A.aT(q) +if((a.a.a&30)===0)a.dh(s,r)}}, +A7(a,b){return this.alE(a,b)}, +alD(a){return this.A7(a,null)}, +alE(a,b){var s=0,r=A.n(t.z),q,p=2,o,n=[],m=this,l,k,j,i,h,g,f,e,d +var $async$A7=A.j(function(c,a0){if(c===1){o=a0 +s=p}while(true)switch(s){case 0:e=b==null?B.e.j(m.w.aP()):b +p=4 +m.T() +l=new A.c4(B.e1.gbu(),B.e1.geL(),a) +k=new A.by(A.C(["seqid",e],t.N,t.z),l.ao()) +h=$.a7 +A.aZ(m,!0,B.az,"startMachineFind start, seqid: "+A.c(e)+", payload: "+l.ao().j(0),h,null,null) +s=7 +return A.f(m.agC(0,k,3),$async$A7) +case 7:j=a0 +h=$.a7 +A.aZ(m,!0,B.az,"startMachineFind result: "+J.p(j.b)+", seqid: "+A.c(e),h,null,null) +h=m.c +if(!h.N(0,B.e1.geL())){g=$.a7 +A.aZ(m,!0,B.az,"startMachineFind addListenTo "+B.e1.geL(),g,null,null) +h.n(0,B.e1.geL(),new A.aWy(m))}m.d.q(0,j) +q=j +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 4:p=3 +d=o +i=A.v(d) +h=$.a7 +A.aZ(m,!0,B.Q,"startMachineFind error: "+J.p(i)+", seqid: "+A.c(e),h,null,null) +m.T() +h=A.i0(i,null,t.z) +q=h +n=[1] +s=5 +break +n.push(6) +s=5 +break +case 3:n=[2] +case 5:p=2 +if(m.at==null)m.at=A.E5(B.lf,new A.aWz(m,e,a)) +s=n.pop() +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$A7,r)}, +Aa(a){return this.alL(a)}, +alK(){return this.Aa(!0)}, +alL(a){var s=0,r=A.n(t.z),q=1,p,o=this,n,m,l,k,j,i,h,g,f +var $async$Aa=A.j(function(b,c){if(b===1){p=c +s=q}while(true)switch(s){case 0:g=B.e.j(o.w.aP()) +q=3 +o.c.C(0,B.e1.geL()) +if(a){j=o.at +if(j!=null)j.S(0) +o.at=null}j=t.N +i=t.z +n=new A.c4(B.awN.gbu(),null,A.w(j,i)) +m=new A.by(A.w(j,i),n.ao()) +i=$.a7 +A.aZ(o,!0,B.az,"stopMachineFind start, seqid: "+A.c(g)+", payload: "+n.ao().j(0),i,null,null) +s=6 +return A.f(o.c8(0,m),$async$Aa) +case 6:l=c +i=$.a7 +A.aZ(o,!0,B.az,"stopMachineFind result: "+J.p(l.b)+", seqid: "+A.c(g),i,null,null) +o.d.q(0,l) +q=1 +s=5 +break +case 3:q=2 +f=p +k=A.v(f) +j=$.a7 +A.aZ(o,!0,B.Q,"stopMachineFind error: "+J.p(k)+", seqid: "+A.c(g),j,null,null) +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$Aa,r)}, +D8(a,b,c){return this.aS1(a,b,c)}, +VK(a,b){return this.D8(a,b,null)}, +aS1(a,a0,a1){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b +var $async$D8=A.j(function(a2,a3){if(a2===1){o=a3 +s=p}while(true)switch(s){case 0:e=a1==null?B.e.j(n.w.aP()):a1 +d=t.N +c=A.C(["dev_id",a,"need_reload",a0],d,t.K) +p=4 +m=new A.c4(B.awF.gbu(),null,c) +h=t.z +l=new A.by(A.C(["seqid",e],d,h),m.ao()) +g=$.a7 +A.aZ(n,!0,B.az,"!!! disconnectDevice start, payload: "+A.co(c)+", seqid: "+A.c(e),g,null,null) +s=7 +return A.f(n.c8(0,l),$async$D8) +case 7:k=a3 +n.d.q(0,k) +j=A.l9(k.b) +if(j.a!==200)if(j.a===-3||j.a===-1){g=$.a7 +A.aZ(n,!0,B.az,"!!! disconnectDevice -3 / -1 code: "+j.a+", set success , \u2705, result: "+J.p(k.b)+", seqid: "+A.c(e),g,null,null) +g=A.C(["seqid",e],d,h) +h=A.C(["code",200,"message","Device not connected","data",null],d,h) +q=new A.by(g,h) +s=1 +break}else{d=A.ae(""+j.a+": "+A.c(j.c)) +throw A.d(d)}d=$.a7 +A.aZ(n,!0,B.az,"disconnectDevice success \u2705, result: "+J.p(k.b)+", seqid: "+A.c(e),d,null,null) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +b=o +i=A.v(b) +d=$.a7 +A.aZ(n,!0,B.Q,"disconnectDevice error: "+J.p(i)+", payload: "+A.co(c)+", seqid: "+A.c(e),d,null,null) +throw b +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$D8,r)}, +Fi(a,b){return this.ajk(a,b)}, +ajk(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Fi=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awV.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +i=$.a7 +A.aZ(n,!0,B.az,"getMachinState start, seqid: "+A.c(g)+", payload: "+m.ao().j(0),i,null,null) +s=7 +return A.f(n.c8(0,l),$async$Fi) +case 7:k=d +i=$.a7 +A.aZ(n,!0,B.az,"getMachinState result: *****, seqid: "+A.c(g),i,null,null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +i=$.a7 +A.aZ(n,!0,B.Q,"getMachinState error: "+J.p(j)+", payload: "+J.p(a)+", seqid: "+A.c(g),i,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fi,r)}, +Gg(a,b){return this.alS(a,b)}, +alS(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$Gg=A.j(function(c,a0){if(c===1){o=a0 +s=p}while(true)switch(s){case 0:e=b==null?B.e.j(n.w.aP()):b +p=4 +m=B.nO.geL()+"_"+A.at(n) +l=new A.c4(B.nO.gbu(),m,a) +k=new A.by(A.C(["seqid",e],t.N,t.z),l.ao()) +h=$.a7 +A.aZ(n,!0,B.az,"subscribeMachineState start, seqid: "+A.c(e)+", payload: "+l.ao().j(0),h,null,null) +s=7 +return A.f(n.c8(0,k),$async$Gg) +case 7:j=a0 +h=$.a7 +A.aZ(n,!0,B.az,"subscribeMachineState result: "+J.p(j.b)+", seqid: "+A.c(e),h,null,null) +n.d.q(0,j) +h=n.c +if(!h.N(0,m)){g=$.a7 +A.aZ(n,!0,B.az,"subscribeMachineState addListenTo "+A.c(m),g,null,null) +h.n(0,m,new A.aWB(n,e))}q=j +s=1 +break +p=2 +s=6 +break +case 4:p=3 +d=o +i=A.v(d) +h=$.a7 +A.aZ(n,!0,B.Q,"subscribeMachineState error: "+J.p(i)+", seqid: "+A.c(e),h,null,null) +throw d +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Gg,r)}, +FZ(a,b){return this.akO(a,b)}, +akO(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$FZ=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.axm.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +s=7 +return A.f(n.c8(0,l),$async$FZ) +case 7:k=d +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"setSubscribeFilter error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$FZ,r)}, +NU(a,b){return this.b0F(a,b)}, +b0F(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$NU=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:f=b==null?B.e.j(n.w.aP()):b +p=4 +i=t.N +h=t.z +m=new A.c4(B.ax3.gbu(),null,A.w(i,h)) +l=new A.by(A.C(["seqid",f],i,h),m.ao()) +s=7 +return A.f(n.c8(0,l),$async$NU) +case 7:k=d +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +i=$.a7 +A.aZ(n,!0,B.Q,"unsubscribeMachineState error: "+J.p(j)+", seqid: "+A.c(f),i,null,null) +throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$NU,r)}, +Fk(a,b){return this.ajm(a,b)}, +ajm(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Fk=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.axc.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +s=7 +return A.f(n.c8(0,l),$async$Fk) +case 7:k=d +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"getMachineObjectList error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fk,r)}, +Fl(a,b){return this.ajn(a,b)}, +ajn(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Fl=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awp.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" getMachinePrinterInfo start, seqid: "+A.c(g),null) +s=7 +return A.f(n.c8(0,l),$async$Fl) +case 7:k=d +A.u($.a7+" getMachinePrinterInfo result: "+J.p(k.b)+", seqid: "+A.c(g),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"getMachinePrinterInfo error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fl,r)}, +Fm(a,b){return this.ajo(a,b)}, +ajo(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Fm=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awq.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" getMachineSystemInfo start, seqid: "+A.c(g),null) +s=7 +return A.f(n.c8(0,l),$async$Fm) +case 7:k=d +A.u($.a7+" getMachineSystemInfo result: "+J.p(k.b)+", seqid: "+A.c(g),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"getMachineSystemInfo error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fm,r)}, +F6(){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$F6=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:f=B.e.j(n.w.aP()) +p=4 +i=t.N +h=t.z +m=new A.c4(B.awo.gbu(),null,A.w(i,h)) +l=new A.by(A.C(["seqid",f],i,h),m.ao()) +A.u($.a7+" getConnectedMachine start",null) +s=7 +return A.f(n.c8(0,l),$async$F6) +case 7:k=b +n.Dy(k) +h=$.a7 +A.aZ(n,!0,B.cM,"getConnectedMachine success \u2705, result: "+J.p(k.b)+", seqid: "+A.c(f),h,null,null) +if(J.i(k.b,"data")!=null&&t.f.b(J.i(k.b,"data")))n.oC(J.i(k.b,"data")) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +i=$.a7 +A.aZ(n,!0,B.Q,"getConnectedMachine fail: "+J.p(j)+", seqid: "+A.c(f),i,null,null) +throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$F6,r)}, +FG(a,b){return this.aki(a,b)}, +aki(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$FG=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awr.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" sendGcode start, seqid: "+A.c(g),null) +s=7 +return A.f(n.c8(0,l),$async$FG) +case 7:k=d +n.d.q(0,k) +n.Dy(k) +i=$.a7 +A.aZ(n,!0,B.cM,"sendGcode success \u2705, result: "+J.p(k.b)+", seqid: "+A.c(g),i,null,null) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +i=$.a7 +A.aZ(n,!0,B.Q,"sendGcode fail: "+J.p(j)+", seqid: "+A.c(g),i,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$FG,r)}, +zX(a,b){return this.akd(a,b)}, +akd(a0,a1){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$zX=A.j(function(a2,a3){if(a2===1){o=a3 +s=p}while(true)switch(s){case 0:b=a1==null?B.e.j(n.w.aP()):a1 +p=4 +f=J.a0(a0) +e=f.h(a0,"cmd") +m=e==null?"":e +if(J.e(m,"")){f=A.i0("cmd is empty",null,t.V) +q=f +s=1 +break}f.C(a0,"cmd") +l=new A.c4(m,null,a0) +k=new A.by(A.C(["seqid",b],t.N,t.z),l.ao()) +A.u($.a7+" sendcommand start, seqid: "+A.c(b),null) +s=7 +return A.f(n.c8(0,k),$async$zX) +case 7:j=a3 +if(f.N(a0,"event_id")){i=f.h(a0,"event_id") +if(i!=null&&J.du(i)&&!n.c.N(0,i)){A.u($.a7+" sendcommand addListenTo, seqid: "+A.c(b),null) +n.c.n(0,i,new A.aWx(n))}}n.d.q(0,j) +h=A.l9(j.b) +if(h.a!==200){f=A.ae(""+h.a+": "+A.c(h.c)) +throw A.d(f)}d=$.a7 +A.aZ(n,!0,B.cM,"sendCommand success \u2705, payload: "+f.j(a0)+", result: "+J.p(j.b)+", seqid: "+A.c(b),d,null,null) +q=j +s=1 +break +p=2 +s=6 +break +case 4:p=3 +a=o +g=A.v(a) +f=$.a7 +A.aZ(n,!0,B.Q,"sendCommand fail: "+J.p(g)+", payload: "+J.p(a0)+", seqid: "+A.c(b),f,null,null) +throw a +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$zX,r)}, +G9(a,b){return this.alF(a,b)}, +alF(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$G9=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.aws.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" startMachinePrint start, seqid: "+A.c(g),null) +s=7 +return A.f(n.c8(0,l),$async$G9) +case 7:k=d +A.u($.a7+" startMachinePrint result: "+J.p(k.b)+", seqid: "+A.c(g),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"startMachinePrint error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$G9,r)}, +MU(a,b){return this.aZc(a,b)}, +aZc(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$MU=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awt.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" pauseMachinePrint start, seqid: "+A.c(g),null) +s=7 +return A.f(n.c8(0,l),$async$MU) +case 7:k=d +A.u($.a7+" pauseMachinePrint result: "+J.p(k.b)+", seqid: "+A.c(g),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"pauseMachinePrint error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$MU,r)}, +Nv(a,b){return this.b_R(a,b)}, +b_R(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Nv=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awu.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" resumeMachinePrint start, seqid: "+A.c(g),null) +s=7 +return A.f(n.c8(0,l),$async$Nv) +case 7:k=d +A.u($.a7+" resumeMachinePrint result: "+J.p(k.b)+", seqid: "+A.c(g),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"resumeMachinePrint error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Nv,r)}, +JZ(a,b){return this.aPa(a,b)}, +aPa(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$JZ=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awv.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" cancelMachinePrint start, seqid: "+A.c(g),null) +s=7 +return A.f(n.c8(0,l),$async$JZ) +case 7:k=d +A.u($.a7+" cancelMachinePrint result: "+J.p(k.b)+", seqid: "+A.c(g),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"cancelMachinePrint error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$JZ,r)}, +Ff(a,b){return this.aj9(a,b)}, +aj9(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Ff=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.aww.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" getFilesRoots start, seqid: "+A.c(g),null) +s=7 +return A.f(n.c8(0,l),$async$Ff) +case 7:k=d +A.u($.a7+" getFilesRoots result: *****, seqid: "+A.c(g),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"getFilesRoots error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Ff,r)}, +Fe(a,b){return this.aj8(a,b)}, +aj8(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Fe=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awx.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +s=7 +return A.f(n.c8(0,l),$async$Fe) +case 7:k=d +A.u($.a7+" getFilesMetadata result: "+J.p(k.b)+", seqid: "+A.c(g),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"getFilesMetadata error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fe,r)}, +Fg(a,b){return this.aja(a,b)}, +aja(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Fg=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awy.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" getFilesThumbnails start, seqid: "+A.c(g),null) +s=7 +return A.f(n.c8(0,l),$async$Fg) +case 7:k=d +A.u($.a7+" getFilesThumbnails result: "+J.p(k.b)+", seqid: "+A.c(g),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"getFilesThumbnails error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fg,r)}, +Fd(a,b){return this.aj7(a,b)}, +aj7(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$Fd=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awz.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" getFilesDirectory start, seqid: "+A.c(g),null) +s=7 +return A.f(n.c8(0,l),$async$Fd) +case 7:k=d +A.u($.a7+" getFilesDirectory result: "+J.p(k.b)+", seqid: "+A.c(g),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"getFilesDirectory error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fd,r)}, +JV(a,b){return this.aP5(a,b)}, +aP5(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$JV=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awA.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +i=A.c(b) +A.u($.a7+" cameraStartMonitor start, seqid: "+i,null) +s=7 +return A.f(n.c8(0,l),$async$JV) +case 7:k=d +A.u($.a7+" cameraStartMonitor result: "+J.p(k.b)+", seqid: "+i,null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +i=$.a7 +A.aZ(n,!0,B.Q,"cameraStartMonitor error: "+J.p(j)+", seqid: "+A.c(g),i,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$JV,r)}, +JW(a,b){return this.aP6(a,b)}, +aP6(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$JW=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awB.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +i=A.c(b) +A.u($.a7+" cameraStopMonitor start, seqid: "+i,null) +s=7 +return A.f(n.c8(0,l),$async$JW) +case 7:k=d +A.u($.a7+" cameraStopMonitor result: "+J.p(k.b)+", seqid: "+i,null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +i=$.a7 +A.aZ(n,!0,B.Q,"cameraStopMonitor error: "+J.p(j)+", seqid: "+A.c(g),i,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$JW,r)}, +vW(a,b){return this.aj4(a,b)}, +aj3(a){return this.vW(a,null)}, +aj2(){return this.vW(null,null)}, +aj4(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$vW=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awC.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" getFileFilamentMapping start",null) +s=7 +return A.f(n.c8(0,l),$async$vW) +case 7:k=d +A.u($.a7+" getFileFilamentMapping result: "+J.p(k.b),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"getFileFilamentMapping error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$vW,r)}, +FL(a,b){return this.akw(a,b)}, +akw(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$FL=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awD.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +A.u($.a7+" setFilamentMappingComplete start",null) +s=7 +return A.f(n.c8(0,l),$async$FL) +case 7:k=d +A.u($.a7+" setFilamentMappingComplete result: "+J.p(k.b),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +h=$.a7 +A.aZ(n,!0,B.Q,"setFilamentMappingComplete error: "+J.p(j)+", seqid: "+A.c(g),h,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$FL,r)}, +Ds(){var s=null +return this.aTs()}, +aTs(){var s=0,r=A.n(t.H),q=1,p,o=this,n,m,l,k,j,i,h,g,f,e +var $async$Ds=A.j(function(a,b){if(a===1){p=b +s=q}while(true)switch(s){case 0:h=null +g=B.e.j(o.w.aP()) +f=g +q=3 +n=new A.c4(B.awE.gbu(),null,h) +m=new A.by(A.C(["seqid",f],t.N,t.z),n.ao()) +A.u($.a7+" finishFilamentMapping start",null) +s=6 +return A.f(o.c8(0,m),$async$Ds) +case 6:l=b +A.u($.a7+" finishFilamentMapping result: "+J.p(l.b),null) +o.d.q(0,l) +q=1 +s=5 +break +case 3:q=2 +e=p +k=A.v(e) +i=$.a7 +A.aZ(o,!0,B.Q,"finishFilamentMapping error: "+J.p(k)+", seqid: "+A.c(f),i,null,null) +throw e +s=5 +break +case 2:s=1 +break +case 5:return A.l(null,r) +case 1:return A.k(p,r)}}) +return A.m($async$Ds,r)}, +O0(a){var s=null +return this.b0Z(a)}, +b0Z(a){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b +var $async$O0=A.j(function(a0,a1){if(a0===1){o=a1 +s=p}while(true)switch(s){case 0:e=null +d=e +c=d==null?B.e.j(n.w.aP()):d +p=4 +m=new A.c4(B.awL.gbu(),null,a) +h=a.h(0,"show") +l=h==null?!0:h +k=new A.by(A.C(["seqid",c],t.N,t.z),m.ao()) +A.u($.a7+" userLogin start, seqid: "+A.c(e),null) +if(!l){n.c8(0,k) +q=null +s=1 +break}s=7 +return A.f(n.c8(0,k),$async$O0) +case 7:j=a1 +g=$.a7 +A.aZ(n,!0,B.cM,"userLogin result: "+J.p(j.b)+", seqid: "+A.c(e),g,null,null) +n.d.q(0,j) +q=j +s=1 +break +p=2 +s=6 +break +case 4:p=3 +b=o +i=A.v(b) +g=$.a7 +A.aZ(n,!0,B.Q,"userLogin error: "+J.p(i)+", seqid: "+A.c(c),g,null,null) +throw b +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$O0,r)}, +O1(){var s=null +return this.b1_()}, +b1_(){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$O1=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:g=null +f=B.e.j(n.w.aP()) +e=f +p=4 +m=new A.c4(B.awM.gbu(),null,g) +l=new A.by(A.C(["seqid",e],t.N,t.z),m.ao()) +A.u($.a7+" userLogout start, seqid: "+A.c(e),null) +s=7 +return A.f(n.c8(0,l),$async$O1) +case 7:k=b +A.u($.a7+" userLogout result: "+J.p(k.b)+", seqid: "+A.c(e),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +d=o +j=A.v(d) +h=$.a7 +A.aZ(n,!0,B.Q,"userLogout error: "+J.p(j)+", seqid: "+A.c(e),h,null,null) +throw d +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$O1,r)}, +Gi(){var s=null +return this.alU()}, +alU(){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c,b,a +var $async$Gi=A.j(function(a0,a1){if(a0===1){o=a1 +s=p}while(true)switch(s){case 0:d=null +c=B.e.j(n.w.aP()) +b=c +p=4 +m=B.kd.geL()+"_"+A.at(n) +l=new A.c4(B.kd.gbu(),m,d) +k=new A.by(A.C(["seqid",b],t.N,t.z),l.ao()) +A.u($.a7+" subscribeUserLoginState start, seqid: "+A.c(b),null) +s=7 +return A.f(n.c8(0,k),$async$Gi) +case 7:j=a1 +A.u($.a7+" subscribeUserLoginState result: "+J.p(j.b)+", seqid: "+A.c(b),null) +n.d.q(0,j) +h=n.c +g=h.N(0,m) +f=$.a7 +if(!g){A.u(f+" subscribeUserLoginState addListenTo "+A.c(m),null) +h.n(0,m,new A.aWD(n))}else{A.u(f+" subscribeUserLoginState already has callback "+A.c(m),null) +g=A.y(h).i("aR<1>") +A.u($.a7+" subscribeUserLoginState callback: "+A.c(A.a8(new A.aR(h,g),!0,g.i("B.E"))),null)}q=j +s=1 +break +p=2 +s=6 +break +case 4:p=3 +a=o +i=A.v(a) +h=$.a7 +A.aZ(n,!0,B.Q,"subscribeUserLoginState error: "+J.p(i)+", seqid: "+A.c(b),h,null,null) +throw a +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Gi,r)}, +Fx(){var s=null +return this.ajK()}, +ajK(){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$Fx=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:g=null +f=B.e.j(n.w.aP()) +e=f +p=4 +m=new A.c4(B.awO.gbu(),null,g) +l=new A.by(A.C(["seqid",e],t.N,t.z),m.ao()) +A.u($.a7+" getUserLoginState start, seqid: "+A.c(e),null) +s=7 +return A.f(n.c8(0,l),$async$Fx) +case 7:k=b +A.u($.a7+" getUserLoginState result: "+J.p(k.b)+", seqid: "+A.c(e),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +d=o +j=A.v(d) +h=$.a7 +A.aZ(n,!0,B.Q,"getUserLoginState error: "+J.p(j)+", seqid: "+A.c(e),h,null,null) +throw d +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Fx,r)}, +qd(){var s=null +return this.ajg()}, +ajg(){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$qd=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:g=null +f=B.e.j(n.w.aP()) +e=f +p=4 +m=new A.c4(B.awU.gbu(),null,g) +l=new A.by(A.C(["seqid",e],t.N,t.z),m.ao()) +A.u($.a7+" getLocalDevices start, seqid: "+A.c(e),null) +s=7 +return A.f(n.c8(0,l),$async$qd) +case 7:k=b +A.u($.a7+" getLocalDevices result: "+J.p(k.b)+", seqid: "+A.c(e),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +d=o +j=A.v(d) +h=$.a7 +A.aZ(n,!0,B.Q,"getLocalDevices error: "+J.p(j)+", seqid: "+A.c(e),h,null,null) +throw d +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$qd,r)}, +Gf(){var s=null +return this.alR()}, +alR(){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c +var $async$Gf=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:f=null +e=B.e.j(n.w.aP()) +d=e +p=4 +m=B.kf.geL()+"_"+A.at(n) +l=new A.c4(B.kf.gbu(),m,f) +k=new A.by(A.C(["seqid",d],t.N,t.z),l.ao()) +A.u($.a7+" subscribeLocalDevices start, seqid: "+A.c(d),null) +s=7 +return A.f(n.c8(0,k),$async$Gf) +case 7:j=b +A.u($.a7+" subscribeLocalDevices result: "+J.p(j.b)+", seqid: "+A.c(d),null) +n.d.q(0,j) +h=n.c +if(!h.N(0,m)){A.u($.a7+" subscribeLocalDevices addListenTo "+A.c(m),null) +h.n(0,m,new A.aWA(n))}q=j +s=1 +break +p=2 +s=6 +break +case 4:p=3 +c=o +i=A.v(c) +h=$.a7 +A.aZ(n,!0,B.Q,"subscribeLocalDevices error: "+J.p(i)+", seqid: "+A.c(d),h,null,null) +throw c +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Gf,r)}, +Nk(a){return this.b_u(a)}, +b_u(a){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$Nk=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:g=B.e.j(n.w.aP()) +f=g +p=4 +m=new A.c4(B.awW.gbu(),null,a) +l=new A.by(A.C(["seqid",f],t.N,t.z),m.ao()) +A.u($.a7+" renameDevice start, seqid: "+A.c(f),null) +s=7 +return A.f(n.c8(0,l),$async$Nk) +case 7:k=c +A.u($.a7+" renameDevice result: "+J.p(k.b)+", seqid: "+A.c(f),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +h=$.a7 +A.aZ(n,!0,B.Q,"renameDevice error: "+J.p(j)+", seqid: "+A.c(f),h,null,null) +throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Nk,r)}, +Kv(a){return this.aRx(a)}, +aRx(a){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$Kv=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:g=B.e.j(n.w.aP()) +f=g +p=4 +m=new A.c4(B.awX.gbu(),null,a) +l=new A.by(A.C(["seqid",f],t.N,t.z),m.ao()) +A.u($.a7+" deleteDevices start, payload: "+A.co(a)+", seqid: "+A.c(f),null) +s=7 +return A.f(n.c8(0,l),$async$Kv) +case 7:k=c +i=$.a7 +A.aZ(n,!0,B.cM,"deleteDevices result: "+J.p(k.b)+", seqid: "+A.c(f),i,null,null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +i=$.a7 +A.aZ(n,!0,B.Q,"deleteDevices error: "+J.p(j)+", seqid: "+A.c(f),i,null,null) +throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Kv,r)}, +CP(a){return this.aR4(a)}, +Vo(){return this.CP(null)}, +aR4(a){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$CP=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:g=B.e.j(n.w.aP()) +f=g +p=4 +m=new A.c4(B.awP.gbu(),null,a) +l=new A.by(A.C(["seqid",f],t.N,t.z),m.ao()) +A.u($.a7+" createProject start, seqid: "+A.c(f),null) +s=7 +return A.f(n.c8(0,l),$async$CP) +case 7:k=c +A.u($.a7+" createProject result: "+J.p(k.b)+", seqid: "+A.c(f),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +h=$.a7 +A.aZ(n,!0,B.Q,"createProject error: "+J.p(j)+", seqid: "+A.c(f),h,null,null) +throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$CP,r)}, +MN(){var s=null +return this.aYS()}, +aYS(){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$MN=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:g=null +f=B.e.j(n.w.aP()) +e=f +p=4 +m=new A.c4(B.awQ.gbu(),null,g) +l=new A.by(A.C(["seqid",e],t.N,t.z),m.ao()) +A.u($.a7+" openProject start, seqid: "+A.c(e),null) +s=7 +return A.f(n.c8(0,l),$async$MN) +case 7:k=b +A.u($.a7+" openProject result: "+J.p(k.b)+", seqid: "+A.c(e),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +d=o +j=A.v(d) +h=$.a7 +A.aZ(n,!0,B.Q,"openProject error: "+J.p(j)+", seqid: "+A.c(e),h,null,null) +throw d +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$MN,r)}, +Ft(){var s=null +return this.ajA()}, +ajA(){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$Ft=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:g=null +f=B.e.j(n.w.aP()) +e=f +p=4 +m=new A.c4(B.awR.gbu(),null,g) +l=new A.by(A.C(["seqid",e],t.N,t.z),m.ao()) +A.u($.a7+" getRecentProjects start, seqid: "+A.c(e),null) +s=7 +return A.f(n.c8(0,l),$async$Ft) +case 7:k=b +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +d=o +j=A.v(d) +A.u($.a7+" getRecentProjects error: "+J.p(j)+", seqid: "+A.c(e),null) +h=A.ae("getRecentProjects fail: "+A.c(j)+", seqid: "+A.c(e)) +throw A.d(h) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Ft,r)}, +MO(a){return this.aYT(a)}, +aYT(a){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$MO=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:g=B.e.j(n.w.aP()) +f=g +p=4 +m=new A.c4(B.awS.gbu(),null,a) +l=new A.by(A.C(["seqid",f],t.N,t.z),m.ao()) +A.u($.a7+" openRecentFile start, seqid: "+A.c(f),null) +s=7 +return A.f(n.c8(0,l),$async$MO) +case 7:k=c +A.u($.a7+" openRecentFile result: "+J.p(k.b)+", seqid: "+A.c(f),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +A.u($.a7+" openRecentFile error: "+J.p(j)+", seqid: "+A.c(f),null) +h=A.ae("openRecentFile fail: "+A.c(j)+", seqid: "+A.c(f)) +throw A.d(h) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$MO,r)}, +Kw(a){return this.aRy(a)}, +aRy(a){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$Kw=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:g=B.e.j(n.w.aP()) +f=g +p=4 +m=new A.c4(B.awT.gbu(),null,a) +l=new A.by(A.C(["seqid",f],t.N,t.z),m.ao()) +A.u($.a7+" deleteRecentFiles start, seqid: "+A.c(f),null) +s=7 +return A.f(n.c8(0,l),$async$Kw) +case 7:k=c +A.u($.a7+" deleteRecentFiles result: "+J.p(k.b)+", seqid: "+A.c(f),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +h=$.a7 +A.aZ(n,!0,B.Q,"deleteRecentFiles error: "+J.p(j)+", seqid: "+A.c(f),h,null,null) +throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Kw,r)}, +Gh(){var s=null +return this.alT()}, +alT(){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d,c +var $async$Gh=A.j(function(a,b){if(a===1){o=b +s=p}while(true)switch(s){case 0:f=null +e=B.e.j(n.w.aP()) +d=e +p=4 +m=B.ke.geL()+"_"+A.at(n) +l=new A.c4(B.ke.gbu(),m,f) +k=new A.by(A.C(["seqid",d],t.N,t.z),l.ao()) +A.u($.a7+" subscribeRecentFiles start, seqid: "+A.c(d),null) +s=7 +return A.f(n.c8(0,k),$async$Gh) +case 7:j=b +A.u($.a7+" subscribeRecentFiles result: "+J.p(j.b)+", seqid: "+A.c(d),null) +n.d.q(0,j) +h=n.c +if(!h.N(0,m)){A.u($.a7+" subscribeRecentFiles addListenTo "+A.c(m),null) +h.n(0,m,new A.aWC(n))}q=j +s=1 +break +p=2 +s=6 +break +case 4:p=3 +c=o +i=A.v(c) +h=$.a7 +A.aZ(n,!0,B.Q,"subscribeRecentFiles error: "+J.p(i)+", seqid: "+A.c(d),h,null,null) +throw c +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Gh,r)}, +zD(a){return this.aiE(a)}, +aiE(a){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$zD=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:g=B.e.j(n.w.aP()) +f=g +p=4 +m=new A.c4(B.awY.gbu(),null,a) +l=new A.by(A.C(["seqid",f],t.N,t.z),m.ao()) +A.u($.a7+" getActiveFile start, seqid: "+A.c(f),null) +s=7 +return A.f(n.c8(0,l),$async$zD) +case 7:k=c +n.Dy(k) +i=$.a7 +A.aZ(n,!0,B.eC,"getActiveFile success \u2705, result: "+J.p(k.b)+", seqid: "+A.c(f),i,null,null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +i=$.a7 +A.aZ(n,!0,B.Q,"getActiveFile fail: "+J.p(j)+", seqid: "+A.c(f),i,null,null) +throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$zD,r)}, +Gw(a){return this.aqB(a)}, +aqB(a){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e +var $async$Gw=A.j(function(b,c){if(b===1){o=c +s=p}while(true)switch(s){case 0:g=B.e.j(n.w.aP()) +f=g +p=4 +m=new A.c4(B.awZ.gbu(),null,a) +l=new A.by(A.C(["seqid",f],t.N,t.z),m.ao()) +A.u($.a7+" switchTab start, seqid: "+A.c(f),null) +s=7 +return A.f(n.c8(0,l),$async$Gw) +case 7:k=c +n.d.q(0,k) +n.Dy(k) +i=$.a7 +A.aZ(n,!0,B.eC,"switchTab success \u2705, result: "+J.p(k.b)+", seqid: "+A.c(f),i,null,null) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +e=o +j=A.v(e) +i=$.a7 +A.aZ(n,!0,B.Q,"switchTab fail: "+J.p(j)+", seqid: "+A.c(f),i,null,null) +throw e +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$Gw,r)}, +N6(a,b){return this.aZK(a,b)}, +aZK(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f +var $async$N6=A.j(function(c,d){if(c===1){o=d +s=p}while(true)switch(s){case 0:g=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awJ.gbu(),null,a) +l=new A.by(A.C(["seqid",g],t.N,t.z),m.ao()) +i=$.a7 +A.aZ(n,!0,B.eC,"pullCloudFile start, seqid: "+A.c(g),i,null,null) +s=7 +return A.f(n.c8(0,l),$async$N6) +case 7:k=d +n.d.q(0,k) +n.Dy(k) +i=$.a7 +A.aZ(n,!0,B.eC,"pullCloudFile success \u2705, result: "+J.p(k.b)+", seqid: "+A.c(g),i,null,null) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +f=o +j=A.v(f) +i=$.a7 +A.aZ(n,!0,B.Q,"pullCloudFile fail: "+J.p(j)+", seqid: "+A.c(g),i,null,null) +throw f +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$N6,r)}, +K0(a,b){return this.aPd(a,b)}, +aPd(a,b){var s=0,r=A.n(t.V),q,p=2,o,n=this,m,l,k,j,i,h,g,f,e,d +var $async$K0=A.j(function(c,a0){if(c===1){o=a0 +s=p}while(true)switch(s){case 0:e=b==null?B.e.j(n.w.aP()):b +p=4 +m=new A.c4(B.awK.gbu(),null,a) +l=new A.by(A.C(["seqid",e],t.N,t.z),m.ao()) +A.u($.a7+" cancelPullCloudFile start, seqid: "+A.c(e),null) +s=7 +return A.f(n.c8(0,l),$async$K0) +case 7:k=a0 +A.u($.a7+" cancelPullCloudFile result: "+J.p(k.b)+", seqid: "+A.c(e),null) +n.d.q(0,k) +q=k +s=1 +break +p=2 +s=6 +break +case 4:p=3 +d=o +j=A.v(d) +h=$.a7 +g=J.p(j) +f=A.c(e) +$.ac().a3(h+" cancelPullCloudFile error: "+g+", seqid: "+f) +f=A.ae("cancelPullCloudFile fail: "+A.c(j)+", seqid: "+A.c(e)) +throw A.d(f) +s=6 +break +case 3:s=2 +break +case 6:case 1:return A.l(q,r) +case 2:return A.k(o,r)}}) +return A.m($async$K0,r)}, +NY(a){return this.b0L(a)}, +b0L(a){var s=0,r=A.n(t.z),q=this,p,o,n +var $async$NY=A.j(function(b,c){if(b===1)return A.k(c,r) +while(true)switch(s){case 0:p=B.e.j(q.w.aP()) +o=B.ax1.gbu() +n=A.C(["seqid",p],t.N,t.z) +o=new A.c4(o,null,a).ao() +A.u($.a7+" updateMachineFilamentInfo start, seqid: "+p,null) +q.c8(0,new A.by(n,o)).cv(new A.aWE(q,p),new A.aWF(q,p),t.P) +return A.l(null,r)}}) +return A.m($async$NY,r)}, +W_(){var s=0,r=A.n(t.H),q=this,p,o,n +var $async$W_=A.j(function(a,b){if(a===1)return A.k(b,r) +while(true)switch(s){case 0:p=B.e.j(q.w.aP()) +o=B.axr.gbu() +n=A.C(["seqid",p],t.N,t.z) +o=new A.c4(o,null,null).ao() +A.u($.a7+" exit start, seqid: "+p,null) +q.c8(0,new A.by(n,o)) +return A.l(null,r)}}) +return A.m($async$W_,r)}, +Dy(a){var s=A.l9(a.b),r=s.a +if(r!==200)throw A.d(A.ae(""+r+": "+A.c(s.c)))}} +A.aVU.prototype={ +$1(a){var s=B.a7.ei(0,a),r=J.a0(s),q=t.N,p=t.z +this.a.aAS(new A.by(A.f7(r.h(s,"header"),q,p),A.f7(r.h(s,"payload"),q,p)))}, +$S:19} +A.aVV.prototype={ +$1(a){var s +A.u($.a7+" lifecycleStream: "+a.ao().j(0),null) +s=this.a.e +if((s.c&4)===0)s.q(0,a)}, +$S:913} +A.aWl.prototype={ +$1(a){this.a.d.q(0,a)}, +$S:28} +A.aWm.prototype={ +$1(a){this.a.d.q(0,a)}, +$S:28} +A.aWn.prototype={ +$1(a){this.a.d.q(0,a)}, +$S:28} +A.aWo.prototype={ +$1(a){var s,r,q +try{s=A.l9(a.b).b +if(t.a.b(s)&&J.i(s,"data")!=null&&t.j.b(J.i(s,"data")))this.a.ax.push(J.p(s)) +this.a.T()}catch(q){r=A.v(q) +A.u($.a7+" subscribeMachineState callback get error: "+J.p(r),null)}this.a.d.q(0,a)}, +$S:28} +A.aWp.prototype={ +$1(a){var s,r,q,p +A.u("startMachineFind 2 callback get message: "+a.j(0)+"\n",null) +try{s=A.l9(a.b).b +q=this.a +if(t.a.b(s))q.y=s +else q.y=A.w(t.N,t.z)}catch(p){r=A.v(p) +A.u($.a7+" startMachineFind callback error: "+J.p(r),null) +this.a.y=A.w(t.N,t.z)}q=this.a +q.d.q(0,a) +q.T()}, +$S:28} +A.aWq.prototype={ +$1(a){this.a.d.q(0,a)}, +$S:28} +A.aWr.prototype={ +$1(a){var s=this.a +A.u($.a7+" subscribeApplicationLifecycle addListenTo "+(B.tT.geL()+"_"+A.at(s))+" callback get message "+a.j(0),null) +s.d.q(0,a)}, +$S:28} +A.aWs.prototype={ +$1(a){this.a.d.q(0,a)}, +$S:28} +A.aWv.prototype={ +$1(a){var s=this.a,r=this.b +s.a4z(r,new A.aWu(s,r,a,this.c))}, +$S:28} +A.aWu.prototype={ +$0(){var s=this +s.b.bv(0,s.c) +s.a.b.C(0,s.d)}, +$S:0} +A.aWw.prototype={ +$0(){var s=this,r=s.a,q=s.b +r.a4z(q,new A.aWt(r,q,s.c,s.d))}, +$S:4} +A.aWt.prototype={ +$0(){var s=this,r=s.b +if((r.a.a&30)===0){r.dF(new A.by(s.c.a,new A.a7k(1,null,"Request timed out").ao())) +r=s.d +if(r!=null)s.a.b.C(0,r)}}, +$S:0} +A.aWy.prototype={ +$1(a){var s,r,q,p,o +A.u("startMachineFind 1 callback get message: "+a.j(0)+"\n",null) +try{s=A.l9(a.b).b +q=this.a +if(t.a.b(s))q.y=s +else q.y=A.w(t.N,t.z)}catch(p){r=A.v(p) +q=this.a +o=$.a7 +A.aZ(q,!0,B.Q,"startMachineFind callback error: "+J.p(r),o,null,null) +q.y=A.w(t.N,t.z)}q=this.a +q.d.q(0,a) +q.T()}, +$S:28} +A.aWz.prototype={ +$1(a){var s=this.a,r=$.a7,q=this.b,p=this.c +A.aZ(s,!0,B.cM,"startMachineFind discoveryTimer, seqid: "+q+", payload: "+A.co(p),r,null,null) +s.Aa(!1) +s.A7(p,q)}, +$S:85} +A.aWB.prototype={ +$1(a){var s,r,q,p,o=this +try{s=A.l9(a.b).b +if(t.a.b(s)&&J.i(s,"data")!=null&&t.j.b(J.i(s,"data")))o.a.ax.push(J.p(s)) +o.a.T()}catch(q){r=A.v(q) +p=$.a7 +A.aZ(o.a,!0,B.Q,"subscribeMachineState callback get error: "+J.p(r)+", seqid: "+o.b,p,null,null)}o.a.d.q(0,a)}, +$S:28} +A.aWx.prototype={ +$1(a){this.a.d.q(0,a)}, +$S:28} +A.aWD.prototype={ +$1(a){A.u($.a7+" subscribeUserLoginState callback get message "+a.j(0)+"}",null) +this.a.d.q(0,a)}, +$S:28} +A.aWA.prototype={ +$1(a){this.a.d.q(0,a)}, +$S:28} +A.aWC.prototype={ +$1(a){this.a.d.q(0,a)}, +$S:28} +A.aWE.prototype={ +$1(a){var s=$.a7 +A.aZ(this.a,!0,B.cM,"updateMachineFilamentInfo success \u2705, result: "+J.p(a.b)+", seqid: "+this.b,s,null,null)}, +$S:28} +A.aWF.prototype={ +$2(a,b){var s=$.a7 +A.aZ(this.a,!0,B.Q,"updateMachineFilamentInfo error: "+J.p(a)+", seqid: "+this.b,s,null,null)}, +$S:60} +A.aVX.prototype={ +$1(a){var s=A.l9(a.b).b +if(t.a.b(s))this.a.Q.q(0,s)}, +$S:28} +A.aWh.prototype={ +aDt(){var s=window +s.toString +A.Ri(s,"message",new A.aWk(this),!1,t.SA)}, +aDp(){var s=$.ja.b +s.k2=new A.aWi() +s.k3=$.ab}, +aDs(){var s=document +s.toString +s=B.v5.adw(s) +A.Ri(s.a,s.b,new A.aWj(this),!1,s.$ti.c)}, +kr(a){var s=a.ao() +A.bi(globalThis,"sendMessage",[s]) +A.as().$1("wcpGate.web sendMessage: \u8c03\u8bd5\u6a21\u5f0f\u672a\u542f\u7528\u6216\u672a\u8fde\u63a5\u5230\u8c03\u8bd5\u670d\u52a1\u5668") +return}, +aYh(a,b,c){var s=this.b +if((s.c&4)===0)s.q(0,b) +A.as().$1("wcpGate.web onMessage: \u8c03\u8bd5\u6a21\u5f0f\u672a\u542f\u7528\u6216\u672a\u8fde\u63a5\u5230\u8c03\u8bd5\u670d\u52a1\u5668") +return}} +A.aWk.prototype={ +$1(a){if(new A.Eu([],[]).Ka(a.data,!0)==null){A.as().$1("wcpGate.web, html.window.onMessage.listen, ignore event.data: null") +return}this.a.aYh(0,new A.Eu([],[]).Ka(a.data,!0),!0)}, +$S:915} +A.aWi.prototype={ +$0(){var s=$.ja.b.c.f +A.as().$1("onLocaleChanged: "+(s.length===0?B.ql:B.b.gW(s)).j(0)) +s=$.ja.b.c.f +s=s.length===0?B.ql:B.b.gW(s) +A.as().$1("wcpGate.web localeString: "+(s.gda(0)+"-"+A.c(s.gdi())))}, +$S:0} +A.aWj.prototype={ +$1(a){var s,r=document.hidden +r.toString +s=!r +if(s)A.as().$1("\ud83d\udfe2 \u5e94\u7528\u72b6\u6001\u53d8\u5316\uff1a\u9875\u9762\u53ef\u89c1\uff08\u56de\u5230\u524d\u53f0\uff09") +else A.as().$1("\ud83d\udd34 \u5e94\u7528\u72b6\u6001\u53d8\u5316\uff1a\u9875\u9762\u4e0d\u53ef\u89c1\uff08\u79bb\u5f00\u6216\u6700\u5c0f\u5316\uff09") +r=this.a +r.d=s +r=r.a +if((r.c&4)===0)r.q(0,new A.t3(s))}, +$S:101} +A.t3.prototype={ +ao(){return A.C(["is_visible",this.a,"path_hash",null,"path_name",null,"locale",null],t.N,t.z)}, +j(a){return"ApplicationLifecycle(isVisible: "+this.a+", pathHash: null, pathName: null, locale: null)"}} +A.c4.prototype={ +ao(){return A.C(["cmd",this.a,"event_id",this.b,"params",this.c,"metadata",null],t.N,t.z)}, +j(a){var s=this.c +s=s==null?null:J.p(s) +return"RequestPayload(cmd: "+this.a+", eventId: "+A.c(this.b)+", params: "+A.c(s)+", metadata: null)"}} +A.a7k.prototype={ +ao(){return A.C(["code",this.a,"data",this.b,"message",this.c],t.N,t.z)}, +j(a){var s=this.b +s=s==null?null:J.p(s) +return"ResponsePayload(code: "+this.a+", data: "+A.c(s)+", message: "+A.c(this.c)+")"}} +A.bjZ.prototype={ +$2(a,b){var s=typeof a=="string"?a:J.p(a),r=t.f.b(b)?A.bAJ(b):b +return new A.aO(s,r,t.YO)}, +$S:916} +A.by.prototype={ +ao(){return B.a7.lw(A.C(["header",this.a,"payload",this.b],t.N,t.a))}, +j(a){return"WcpPacket(header: "+B.a7.lw(this.a)+", payload: "+B.a7.lw(this.b)+")"}} +A.blY.prototype={} +A.rn.prototype={ +gi7(){return!0}, +aK(a,b,c,d){return A.F_(this.a,this.b,a,!1,A.y(this).c)}, +eQ(a,b,c){return this.aK(a,null,b,c)}, +hT(a,b){return this.aK(a,b,null,null)}, +hU(a,b,c){return this.aK(a,b,c,null)}} +A.Rb.prototype={} +A.Rh.prototype={ +S(a){var s=this,r=A.c7(null,t.H) +if(s.b==null)return r +s.TW() +s.d=s.b=null +return r}, +jA(a){var s,r=this +if(r.b==null)throw A.d(A.a1("Subscription has been canceled.")) +r.TW() +s=A.bzk(new A.b2Z(a),t.v) +s=s==null?null:A.d6(s) +r.d=s +r.TS()}, +j5(a,b){}, +mm(a,b){if(this.b==null)return;++this.a +this.TW()}, +ic(a){return this.mm(0,null)}, +ie(a){var s=this +if(s.b==null||s.a<=0)return;--s.a +s.TS()}, +TS(){var s=this,r=s.d +if(r!=null&&s.a<=0)s.b.addEventListener(s.c,r,!1)}, +TW(){var s=this.d +if(s!=null)this.b.removeEventListener(this.c,s,!1)}, +xI(a,b){return new A.a_($.ab,b.i("a_<0>"))}, +$ijG:1} +A.b2X.prototype={ +$1(a){return this.a.$1(a)}, +$S:58} +A.b2Z.prototype={ +$1(a){return this.a.$1(a)}, +$S:58} +A.hf.prototype={ +j(a){var s,r=this,q=r.a +if(q!=null){s=r.b.c +s=""+"PUBLIC "+s+q+s +q=s}else q=""+"SYSTEM" +s=r.d.c +s=q+" "+s+r.c+s +return s.charCodeAt(0)==0?s:s}, +gB(a){return A.a4(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){if(b==null)return!1 +return b instanceof A.hf}} +A.acf.prototype={ +aRo(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.a2m(B.c.bE(a,2),16) +else return this.a2m(B.c.bE(a,1),10)}else return B.aeH.h(0,a)}, +a2m(a,b){var s=A.na(a,b) +if(s==null||s<0||1114111");p.a>s;){q=new A.aR(p,r).gav(0) +if(!q.u())A.V(A.cV()) +p.C(0,q.gI(0))}}p=p.h(0,b) +p.toString +return p}} +A.Et.prototype={ +bW(a){var s,r=a.a,q=a.b,p=r.length,o=q") +return null}, +gB(a){return A.a4(B.azt,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.mc&&b.e===this.e}, +gk(a){return this.e}} +A.ny.prototype={ +qV(a,b){var s=b.a +s.q(0,"") +return null}, +gB(a){return A.a4(B.azw,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.ny&&b.e===this.e}, +gk(a){return this.e}} +A.nz.prototype={ +qV(a,b){var s=b.a +s.q(0,"") +return null}, +gB(a){return A.a4(B.azx,B.lS.ju(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.nz&&B.lS.ly(b.e,this.e)}} +A.nA.prototype={ +qV(a,b){var s,r,q=b.a +q.q(0,"") +return null}, +gB(a){return A.a4(B.azy,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.nA&&this.e===b.e&&J.e(this.f,b.f)&&this.r==b.r}} +A.j0.prototype={ +qV(a,b){var s=b.a +s.q(0,"") +return null}, +gB(a){return A.a4(B.PG,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.j0&&b.e===this.e}, +gcq(a){return this.e}} +A.amB.prototype={} +A.nB.prototype={ +qV(a,b){var s,r=b.a +r.q(0,"") +return null}, +gB(a){return A.a4(B.azu,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.nB&&b.e===this.e&&b.f===this.f}, +gk(a){return this.f}} +A.iC.prototype={ +qV(a,b){var s=b.a +s.q(0,"<") +s.q(0,this.e) +b.aae(this.f) +if(this.r)s.q(0,"/>") +else s.q(0,">") +return null}, +gB(a){return A.a4(B.PG,this.e,this.r,B.lS.ju(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.iC&&b.e===this.e&&b.r===this.r&&B.lS.ly(b.f,this.f)}, +gcq(a){return this.e}} +A.amJ.prototype={} +A.vd.prototype={ +gk(a){var s,r=this,q=r.r +if(q===$){s=r.f.ei(0,r.e) +r.r!==$&&A.aH() +r.r=s +q=s}return q}, +qV(a,b){b.a.q(0,A.aoK(this.gk(0),$.bEc(),A.bVB(),null)) +return null}, +gB(a){return A.a4(B.azv,this.gk(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.vd&&b.gk(0)===this.gk(0)}, +$iPP:1} +A.ach.prototype={ +gav(a){var s=A.a([],t.Ec),r=A.a([],t.po) +return new A.aX9($.bEk().h(0,this.b),new A.aX8(!1,!1,!1,!1,!1,s,r),new A.cn("",this.a,0))}} +A.aX9.prototype={ +gI(a){var s=this.d +s.toString +return s}, +u(){var s,r,q,p,o=this,n=o.c +if(n!=null){s=o.a.bW(n) +if(s instanceof A.f0){o.c=s +r=s.e +o.d=r +o.b.aOi(r,n.a,n.b,s.b) +return!0}else{r=n.b +q=n.a +if(r"),A.d4("/>")],t.sb),A.bVJ(),q),q,q,p,q,q),new A.aXq(),q,q,p,q,q,t.a1)}, +aOG(a){return A.bnn(new A.bs(this.gaOv(),B.C,t.vn),0,9007199254740991,t.wG)}, +aOw(){var s=this,r=t.WV,q=t.N,p=t._0 +return A.ya(A.nT(new A.bs(s.gA5(),B.C,r),new A.bs(s.gne(),B.C,r),new A.bs(s.gaOx(),B.C,t.VJ),q,q,p),new A.aXe(s),q,q,p,t.wG)}, +aOy(){var s=this.gA6(),r=t.WV,q=t.N,p=t._0 +return new A.l0(B.al7,A.aNL(A.bk0(new A.bs(s,B.C,r),A.d4("="),new A.bs(s,B.C,r),new A.bs(this.guo(),B.C,t.VJ),q,q,q,p),new A.aXa(),q,q,q,p,p),t.Tq)}, +aOz(){var s=t.VJ +return A.te(A.a([new A.bs(this.gaOA(),B.C,s),new A.bs(this.gaOE(),B.C,s),new A.bs(this.gaOC(),B.C,s)],t.m5),null,t._0)}, +aOB(){var s=t.N +return A.ya(A.nT(A.d4('"'),new A.Et('"',0),A.d4('"'),s,s,s),new A.aXb(),s,s,s,t._0)}, +aOF(){var s=t.N +return A.ya(A.nT(A.d4("'"),new A.Et("'",0),A.d4("'"),s,s,s),new A.aXd(),s,s,s,t._0)}, +aOD(){return A.u_(new A.bs(this.gne(),B.C,t.WV),new A.aXc(),!1,t.N,t._0)}, +aSQ(a){var s=t.WV,r=t.N +return A.aNL(A.bk0(A.d4(""),r,r,r,r),new A.aXn(),r,r,r,r,t.Gn)}, +aPH(){var s=t.N +return A.ya(A.nT(A.d4("" expected',new A.ka(A.d4("-->"),0,9007199254740991,new A.ly("input expected"),t.Po),t.Ii),A.d4("-->"),s,s,s),new A.aXh(),s,s,s,t.mL)}, +aPf(){var s=t.N +return A.ya(A.nT(A.d4("" expected',new A.ka(A.d4("]]>"),0,9007199254740991,new A.ly("input expected"),t.Po),t.Ii),A.d4("]]>"),s,s,s),new A.aXf(),s,s,s,t.nS)}, +aRm(){var s=t.N,r=t.d0 +return A.aNL(A.bk0(A.d4(""),s,r,s,s),new A.aXi(),s,r,s,s,t.UR)}, +aZD(){var s=t.WV,r=t.N +return A.aNL(A.bk0(A.d4("" expected',new A.ka(A.d4("?>"),0,9007199254740991,new A.ly("input expected"),t.Po),t.Ii),r,r),new A.aXo(),r,r,r),t.mA),A.d4("?>"),r,r,r,r),new A.aXp(),r,r,r,r,t.Mw)}, +aSk(){var s=this,r=A.d4(""),t.mM),new A.aXm(),n,n,n,t.dd,n,t.T,n,n,t.h0)}, +aSs(){var s=t.r0 +return A.te(A.a([new A.bs(this.gaSv(),B.C,s),new A.bs(this.gaSt(),B.C,s)],t.Gv),null,t.aD)}, +aSw(){var s=t.N,r=t._0 +return A.ya(A.nT(A.d4("SYSTEM"),new A.bs(this.gA5(),B.C,t.WV),new A.bs(this.guo(),B.C,t.VJ),s,s,r),new A.aXk(),s,s,r,t.aD)}, +aSu(){var s=this.gA5(),r=t.WV,q=this.guo(),p=t.VJ,o=t.N,n=t._0 +return A.bvh(A.bAO(A.d4("PUBLIC"),new A.bs(s,B.C,r),new A.bs(q,B.C,p),new A.bs(s,B.C,r),new A.bs(q,B.C,p),o,o,n,o,n),new A.aXj(),o,o,n,o,n,t.aD)}, +aSy(){var s,r=this,q=A.d4("["),p=t.lk +p=A.te(A.a([new A.bs(r.gaSn(),B.C,p),new A.bs(r.gaSl(),B.C,p),new A.bs(r.gaSp(),B.C,p),new A.bs(r.gaSz(),B.C,p),new A.bs(r.gafS(),B.C,t.hC),new A.bs(r.gabr(),B.C,t.ZV),new A.bs(r.gaSB(),B.C,p),new A.ly("input expected")],t.Vz),null,t.z) +s=t.N +return A.ya(A.nT(q,new A.mN('"]" expected',new A.ka(A.d4("]"),0,9007199254740991,p,t.lv),t.vq),A.d4("]"),s,s,s),new A.aXl(),s,s,s,s)}, +aSo(){var s=A.d4(""),0,9007199254740991,r,t.xj),A.d4(">"),q,t.UX,q)}, +aSm(){var s=A.d4(""),0,9007199254740991,r,t.xj),A.d4(">"),q,t.UX,q)}, +aSq(){var s=A.d4(""),0,9007199254740991,r,t.xj),A.d4(">"),q,t.UX,q)}, +aSA(){var s=A.d4(""),0,9007199254740991,r,t.xj),A.d4(">"),q,t.UX,q)}, +aSC(){var s=t.N +return A.nT(A.d4("%"),new A.bs(this.gne(),B.C,t.WV),A.d4(";"),s,s,s)}, +alr(){var s="whitespace expected" +return A.bvu(new A.yH(B.v0,s),1,9007199254740991,s)}, +als(){var s="whitespace expected" +return A.bvu(new A.yH(B.v0,s),0,9007199254740991,s)}, +aXE(){var s=t.WV,r=t.N +return new A.mN("name expected",A.bAN(new A.bs(this.gaXC(),B.C,s),A.bnn(new A.bs(this.gaXA(),B.C,s),0,9007199254740991,r),r,t.yp),t.TJ)}, +aXD(){return A.bAy(":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)}, +aXB(){return A.bAy(":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.aXg.prototype={ +$1(a){var s=null +return new A.vd(a,this.a.a,s,s,s,s)}, +$S:932} +A.aXq.prototype={ +$5(a,b,c,d,e){var s=null +return new A.iC(b,c,e==="/>",s,s,s,s)}, +$S:933} +A.aXe.prototype={ +$3(a,b,c){return new A.hT(b,this.a.a.ei(0,c.a),c.b,null)}, +$S:934} +A.aXa.prototype={ +$4(a,b,c,d){return d}, +$S:935} +A.aXb.prototype={ +$3(a,b,c){return new A.b3(b,B.u1)}, +$S:326} +A.aXd.prototype={ +$3(a,b,c){return new A.b3(b,B.azs)}, +$S:326} +A.aXc.prototype={ +$1(a){return new A.b3(a,B.u1)}, +$S:937} +A.aXn.prototype={ +$4(a,b,c,d){var s=null +return new A.j0(b,s,s,s,s)}, +$S:938} +A.aXh.prototype={ +$3(a,b,c){var s=null +return new A.ny(b,s,s,s,s)}, +$S:939} +A.aXf.prototype={ +$3(a,b,c){var s=null +return new A.mc(b,s,s,s,s)}, +$S:940} +A.aXi.prototype={ +$4(a,b,c,d){var s=null +return new A.nz(b,s,s,s,s)}, +$S:941} +A.aXo.prototype={ +$2(a,b){return b}, +$S:942} +A.aXp.prototype={ +$4(a,b,c,d){var s=null +return new A.nB(b,c,s,s,s,s)}, +$S:943} +A.aXm.prototype={ +$8(a,b,c,d,e,f,g,h){var s=null +return new A.nA(c,d,f,s,s,s,s)}, +$S:944} +A.aXk.prototype={ +$3(a,b,c){return new A.hf(null,null,c.a,c.b)}, +$S:945} +A.aXj.prototype={ +$5(a,b,c,d,e){return new A.hf(c.a,c.b,e.a,e.b)}, +$S:946} +A.aXl.prototype={ +$3(a,b,c){return b}, +$S:947} +A.biR.prototype={ +$1(a){return A.bXs(new A.bs(new A.aci(a).gaT1(),B.C,t.hq),t.xo)}, +$S:948} +A.XG.prototype={ +q(a,b){return this.a.$1(b)}, +L(a){}} +A.hT.prototype={ +gB(a){return A.a4(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.hT&&b.a===this.a&&b.b===this.b&&b.c===this.c}, +gcq(a){return this.a}, +gk(a){return this.b}} +A.amC.prototype={} +A.amD.prototype={} +A.PO.prototype={ +gX6(a){var s=this,r=B.c.dV(s.gcq(s),":") +return r>0?B.c.bE(s.gcq(s),r+1):s.gcq(s)}} +A.acj.prototype={ +b18(a){return a.qV(0,this)}} +A.bjB.prototype={ +$0(){return A.pl(A.a([],t.s))}, +$S:0} +A.bjA.prototype={ +$0(){var s,r=$.bEr(),q=$.bpS(),p=new A.au_(),o=$.aoT() +o.n(0,p,q) +A.um(p,q,!1) +$.bGp=p +p=self +q=p.window.navigator +s=$.bpX() +q=new A.auF(q) +o.n(0,q,s) +A.um(q,s,!1) +$.bHa=q +q=$.bBk() +s=new A.azb() +o.n(0,s,q) +if(p.document.querySelector("#__file_picker_web-file-input")==null){p.document.createElement("flt-file-picker-inputs").id="__file_picker_web-file-input" +p.document.querySelector("body").toString}A.um(s,q,!1) +$.bIB.b=s +q=new A.azG() +o.n(0,q,B.ix) +$.bIQ=q +q=$.bC7() +p=new A.aKP() +o.n(0,p,q) +A.um(p,q,!1) +q=$.Gi +q.toString +p=$.bq_() +q=new A.aM8(q) +o.n(0,q,p) +A.um(q,p,!1) +$.bLR=q +$.bCU() +$.bCV() +$.bCW() +q=$.bCa() +p=new A.aWQ() +o.n(0,p,q) +A.um(p,q,!1) +q=$.bq5() +p=new A.aRu() +o.n(0,p,q) +A.um(p,q,!0) +$.bNA=p +q=$.bq7() +p=new A.aVB(A.w(t.S,t.VD)) +o.n(0,p,q) +A.um(p,q,!0) +$.bOV=p +$.bP_.b=A.bpv("wakelock_plus","assets/no_sleep.js") +p=$.bq8() +q=new A.aVT() +o.n(0,q,p) +A.um(q,p,!0) +$.bOZ=q +$.bAz=r.gaTX()}, +$S:0};(function aliases(){var s=A.ajT.prototype +s.ap2=s.V +s.ap8=s.en +s.ap6=s.el +s.apb=s.bs +s.ap9=s.i2 +s.ap7=s.rY +s.apa=s.al +s.ap5=s.nN +s.ap4=s.uv +s.ap3=s.mZ +s=A.QO.prototype +s.a00=s.cp +s=A.Bv.prototype +s.amw=s.Qv +s=A.fp.prototype +s.an5=s.Nx +s.a_A=s.cL +s.Aj=s.ul +s.a_E=s.cg +s.a_D=s.op +s.a_B=s.m8 +s.a_C=s.vx +s=A.h_.prototype +s.an2=s.vx +s.an3=s.mq +s.oI=s.cg +s.an4=s.op +s.ww=s.m8 +s=A.a6h.prototype +s.mJ=s.i0 +s.Ak=s.m +s=A.Ii.prototype +s.P4=s.yS +s.amj=s.Yp +s.amh=s.lu +s.ami=s.VT +s=A.a_l.prototype +s.a_6=s.L +s=A.pP.prototype +s.amq=s.m +s=A.jS.prototype +s.apn=s.q +s.apo=s.L +s=A.kn.prototype +s.aoz=s.q +s=J.BJ.prototype +s.amB=s.j +s=J.tR.prototype +s.amK=s.j +s=A.iR.prototype +s.amC=s.aer +s.amD=s.aeu +s.amF=s.aew +s.amE=s.aev +s=A.ri.prototype +s.aoq=s.ns +s=A.fN.prototype +s.l8=s.jh +s.wy=s.ji +s.qp=s.oP +s=A.FY.prototype +s.app=s.iZ +s=A.rp.prototype +s.aov=s.wK +s.aow=s.a3t +s.aoy=s.a7K +s.aox=s.mP +s=A.S.prototype +s.a_k=s.d5 +s=A.bI.prototype +s.a_4=s.Wl +s=A.G_.prototype +s.apq=s.L +s=A.B.prototype +s.P9=s.km +s=A.O.prototype +s.tz=s.l +s.dQ=s.j +s=A.am.prototype +s.amr=s.Cc +s=A.A.prototype +s.am8=s.l +s.am9=s.j +s=A.Ge.prototype +s.apZ=s.m +s=A.i2.prototype +s.a_i=s.kY +s.P8=s.od +s.a_h=s.kX +s=A.UU.prototype +s.apW=s.m +s=A.cU.prototype +s.Gl=s.EJ +s=A.t1.prototype +s.ZX=s.K +s.ZY=s.dX +s=A.LZ.prototype +s.an1=s.al +s=A.GT.prototype +s.Gm=s.m +s=A.UM.prototype +s.apP=s.m +s=A.UN.prototype +s.apQ=s.m +s=A.UO.prototype +s.apR=s.m +s=A.UP.prototype +s.apS=s.m +s=A.V7.prototype +s.aq9=s.aI +s.aqa=s.aB +s=A.WW.prototype +s.am2=s.ka +s.am3=s.vb +s.am4=s.Yk +s=A.bo.prototype +s.am6=s.a4 +s.am7=s.K +s.dN=s.m +s.a_2=s.T +s=A.cS.prototype +s.tD=s.sk +s=A.aY.prototype +s.amk=s.fb +s=A.mC.prototype +s.aml=s.fb +s=A.JF.prototype +s.amv=s.DF +s.amu=s.aSd +s=A.kG.prototype +s.a_7=s.lF +s=A.es.prototype +s.a_b=s.Js +s.wt=s.lF +s.a_c=s.m +s=A.LO.prototype +s.Ah=s.ln +s.a_v=s.Dv +s.a_w=s.Z +s.mI=s.m +s.amW=s.A8 +s=A.CR.prototype +s.an6=s.ln +s.a_F=s.kB +s.an7=s.j9 +s=A.kj.prototype +s.aob=s.lF +s=A.TU.prototype +s.apr=s.k7 +s.aps=s.j9 +s=A.Q4.prototype +s.aoo=s.ln +s.aop=s.m +s=A.UH.prototype +s.apK=s.m +s=A.UJ.prototype +s.apL=s.m +s=A.UK.prototype +s.apN=s.aj +s.apM=s.m +s=A.B5.prototype +s.amp=s.y6 +s=A.V0.prototype +s.aq4=s.aj +s.aq3=s.fn +s=A.UG.prototype +s.apJ=s.m +s=A.UY.prototype +s.aq0=s.m +s=A.V1.prototype +s.aq5=s.m +s=A.on.prototype +s.oH=s.m +s=A.Vj.prototype +s.aqv=s.m +s=A.Vk.prototype +s.aqw=s.m +s=A.EB.prototype +s.aor=s.aT +s=A.UL.prototype +s.apO=s.m +s=A.V2.prototype +s.aq6=s.m +s=A.SJ.prototype +s.aoK=s.m +s=A.T9.prototype +s.apc=s.m +s=A.Ta.prototype +s.apd=s.m +s=A.Tb.prototype +s.apf=s.b1 +s.ape=s.c1 +s.apg=s.m +s=A.UW.prototype +s.apY=s.m +s=A.V9.prototype +s.aqd=s.aI +s.aqe=s.aB +s=A.Vb.prototype +s.aqh=s.aI +s.aqi=s.aB +s=A.Vf.prototype +s.aqp=s.m +s=A.V3.prototype +s.aq7=s.m +s=A.V4.prototype +s.aq8=s.m +s=A.Vi.prototype +s.aqt=s.b1 +s.aqs=s.c1 +s.aqu=s.m +s=A.U9.prototype +s.apu=s.m +s=A.dh.prototype +s.am0=s.ai +s.am_=s.ab +s=A.Hi.prototype +s.a_0=s.Gj +s.a__=s.q +s=A.dp.prototype +s.Gt=s.f6 +s.Gu=s.f7 +s=A.fK.prototype +s.wu=s.f6 +s.wv=s.f7 +s=A.kC.prototype +s.P2=s.f6 +s.P3=s.f7 +s=A.X2.prototype +s.a_1=s.m +s=A.eh.prototype +s.a_8=s.q +s=A.adn.prototype +s.a_Z=s.m +s=A.xb.prototype +s.a_d=s.a4 +s.amy=s.yY +s.a_e=s.K +s.amx=s.I6 +s=A.k7.prototype +s.a_g=s.l +s=A.Oh.prototype +s.ao9=s.i1 +s=A.N3.prototype +s.anz=s.Ws +s.anB=s.Wz +s.anA=s.Wv +s.any=s.VP +s=A.au.prototype +s.am5=s.l +s=A.iJ.prototype +s.Gn=s.j +s=A.P.prototype +s.Gq=s.iw +s.wx=s.ae +s.ane=s.zb +s.oJ=s.dT +s.a_M=s.er +s=A.SM.prototype +s.aoL=s.aI +s.aoM=s.aB +s=A.SO.prototype +s.aoN=s.aI +s.aoO=s.aB +s=A.SP.prototype +s.aoP=s.aI +s.aoQ=s.aB +s=A.yc.prototype +s.anf=s.ck +s=A.SQ.prototype +s.aoR=s.m +s=A.hh.prototype +s.amG=s.AW +s.a_j=s.m +s.amJ=s.NZ +s.amH=s.aI +s.amI=s.aB +s=A.hc.prototype +s.ql=s.kP +s.amd=s.aI +s.ame=s.aB +s=A.n4.prototype +s.amV=s.kP +s=A.e_.prototype +s.Ai=s.aB +s=A.G.prototype +s.h0=s.m +s.a_N=s.lp +s.eD=s.aI +s.eE=s.aB +s.ani=s.ae +s.Pd=s.df +s.anj=s.aU +s.ang=s.er +s.ank=s.FB +s.jM=s.hP +s.Pc=s.uu +s.tB=s.iL +s.a_O=s.xJ +s.anh=s.n6 +s.anl=s.fb +s.Gr=s.i3 +s=A.bp.prototype +s.a_S=s.j8 +s=A.aD.prototype +s.P1=s.LL +s.amg=s.C +s.amf=s.E6 +s.a_3=s.j8 +s.Gp=s.bZ +s=A.ux.prototype +s.Pb=s.Ao +s=A.jO.prototype +s.aoB=s.Jz +s=A.SW.prototype +s.aoS=s.aI +s.aoT=s.aB +s=A.U_.prototype +s.apt=s.aB +s=A.hK.prototype +s.Pi=s.bU +s.Pg=s.bQ +s.Ph=s.bT +s.Pf=s.bP +s.ano=s.fH +s.anp=s.ds +s.qo=s.ck +s.Al=s.dU +s.ann=s.er +s.jN=s.aT +s=A.MX.prototype +s.anq=s.dT +s=A.SY.prototype +s.wz=s.aI +s.qq=s.aB +s=A.SZ.prototype +s.aoU=s.iw +s=A.yd.prototype +s.anu=s.bU +s.ans=s.bQ +s.ant=s.bT +s.anr=s.bP +s.anw=s.aT +s.anv=s.dU +s=A.T0.prototype +s.a01=s.aI +s.a02=s.aB +s=A.qY.prototype +s.ao4=s.j +s=A.i8.prototype +s.ao5=s.j +s=A.T2.prototype +s.aoV=s.aI +s.aoW=s.aB +s=A.N_.prototype +s.a_T=s.ck +s=A.yf.prototype +s.anx=s.XL +s=A.mm.prototype +s.aoY=s.aI +s.aoZ=s.aB +s=A.j_.prototype +s.aom=s.Mm +s.aol=s.h6 +s=A.oL.prototype +s.anP=s.Wm +s=A.E4.prototype +s.a_W=s.m +s=A.Wz.prototype +s.ZZ=s.rK +s=A.NJ.prototype +s.ao1=s.Du +s.ao2=s.rB +s.ao3=s.WB +s=A.n2.prototype +s.amM=s.le +s=A.d2.prototype +s.ZW=s.iW +s.alY=s.o3 +s.alX=s.Ut +s.alZ=s.Ng +s=A.UE.prototype +s.apH=s.m +s=A.pr.prototype +s.Ad=s.F +s=A.Jq.prototype +s.ams=s.b9 +s=A.e0.prototype +s.aon=s.ya +s.a_Y=s.uE +s=A.T5.prototype +s.a03=s.hs +s=A.Us.prototype +s.apv=s.ka +s.apw=s.Yk +s=A.Ut.prototype +s.apx=s.ka +s.apy=s.vb +s=A.Uu.prototype +s.apz=s.ka +s.apA=s.vb +s=A.Uv.prototype +s.apC=s.ka +s.apB=s.Du +s=A.Uw.prototype +s.apD=s.ka +s=A.Ux.prototype +s.apE=s.ka +s.apF=s.vb +s=A.UR.prototype +s.apU=s.m +s=A.US.prototype +s.apV=s.aj +s=A.R7.prototype +s.aot=s.aj +s=A.R8.prototype +s.aou=s.m +s=A.a0k.prototype +s.ws=s.aVT +s.amt=s.V0 +s=A.a9.prototype +s.aw=s.aj +s.bb=s.b1 +s.oK=s.fn +s.d2=s.c0 +s.ar=s.m +s.ea=s.c1 +s=A.aV.prototype +s.a_R=s.b9 +s=A.bc.prototype +s.amn=s.fN +s.P7=s.hs +s.wr=s.cg +s.amo=s.EX +s.a_a=s.DJ +s.mH=s.lD +s.Ae=s.c0 +s.a_9=s.fn +s.Af=s.ou +s.P5=s.pv +s.P6=s.c1 +s.amm=s.dL +s.ty=s.mn +s=A.HH.prototype +s.Go=s.hs +s.ama=s.R9 +s.amb=s.mn +s=A.DI.prototype +s.aoa=s.cL +s=A.Mp.prototype +s.a_G=s.cL +s.a_H=s.cg +s.an8=s.EY +s=A.jq.prototype +s.amA=s.EY +s.a_f=s.rP +s=A.bP.prototype +s.tC=s.hs +s.qn=s.cg +s.Pe=s.mn +s.a_P=s.fn +s.a_Q=s.ou +s.anm=s.EX +s=A.kW.prototype +s.a_m=s.mg +s.a_n=s.mk +s.amQ=s.nj +s.amP=s.hs +s.amR=s.cg +s=A.BE.prototype +s.amz=s.aj +s=A.Fb.prototype +s.aoA=s.m +s=A.dj.prototype +s.anM=s.pK +s.a_U=s.ra +s.anG=s.D3 +s.a_V=s.KC +s.anO=s.lM +s.anN=s.Ee +s.anJ=s.r9 +s.anK=s.yb +s.anH=s.uF +s.anI=s.VB +s.anF=s.ur +s.anE=s.K1 +s.anL=s.m +s=A.ajE.prototype +s.ap1=s.K8 +s=A.Sn.prototype +s.aoD=s.c0 +s.aoE=s.m +s=A.So.prototype +s.aoG=s.b1 +s.aoF=s.c1 +s.aoH=s.m +s=A.a51.prototype +s.Pa=s.h6 +s=A.lW.prototype +s.amZ=s.eT +s.amY=s.dL +s.amX=s.m +s=A.zz.prototype +s.aoX=s.aT +s=A.Va.prototype +s.aqf=s.aI +s.aqg=s.aB +s=A.Su.prototype +s.aoI=s.h6 +s=A.UX.prototype +s.aq_=s.m +s=A.Vh.prototype +s.aqr=s.m +s=A.hm.prototype +s.b1A=s.m +s=A.ne.prototype +s.anD=s.VG +s=A.dG.prototype +s.anC=s.sk +s=A.nJ.prototype +s.ap_=s.yQ +s.ap0=s.zr +s=A.Gf.prototype +s.aqk=s.b1 +s.aqj=s.c1 +s.aql=s.m +s=A.CE.prototype +s.a_z=s.pK +s.a_x=s.r9 +s.a_y=s.m +s=A.h5.prototype +s.aok=s.pK +s.aoj=s.ra +s.aof=s.D3 +s.aoh=s.r9 +s.aoi=s.yb +s.aog=s.uF +s.a_X=s.m +s=A.eR.prototype +s.amN=s.ra +s.a_l=s.sEd +s=A.D_.prototype +s.an9=s.xN +s=A.zr.prototype +s.aoC=s.lM +s=A.a7O.prototype +s.Gs=s.m +s=A.qP.prototype +s.anQ=s.aI +s=A.jz.prototype +s.Am=s.h6 +s=A.Tf.prototype +s.api=s.h6 +s=A.yr.prototype +s.anR=s.JA +s.anS=s.y3 +s=A.oM.prototype +s.anT=s.qU +s.Pj=s.akH +s.anW=s.qZ +s.anU=s.qY +s.anV=s.Cl +s.ao_=s.Df +s.anX=s.m1 +s.anZ=s.m +s.anY=s.h6 +s=A.Td.prototype +s.aph=s.h6 +s=A.yt.prototype +s.ao0=s.qU +s=A.Tj.prototype +s.apj=s.m +s=A.Tk.prototype +s.apl=s.b1 +s.apk=s.c1 +s.apm=s.m +s=A.oJ.prototype +s.a_L=s.aj +s.ana=s.c1 +s.and=s.WA +s.a_K=s.LB +s.a_J=s.LA +s.anb=s.Wq +s.anc=s.Wr +s.a_I=s.m +s=A.FC.prototype +s.aoJ=s.m +s=A.Cr.prototype +s.amU=s.C +s.a_o=s.KB +s.a_s=s.Lx +s.a_t=s.Ly +s.a_r=s.Lt +s.amT=s.Wp +s.amS=s.Wo +s.a_u=s.rA +s.a_q=s.m +s.a_p=s.hp +s=A.Vc.prototype +s.aqm=s.m +s=A.V8.prototype +s.aqb=s.aI +s.aqc=s.aB +s=A.qZ.prototype +s.ao6=s.VX +s=A.OW.prototype +s.aoc=s.Xr +s.aod=s.Xx +s=A.Vd.prototype +s.aqn=s.m +s=A.Ve.prototype +s.aqo=s.m +s=A.E8.prototype +s.aoe=s.m +s=A.Vg.prototype +s.aqq=s.m +s=A.WS.prototype +s.am1=s.Dq +s=A.V_.prototype +s.aq2=s.m +s=A.UZ.prototype +s.aq1=s.m +s=A.UQ.prototype +s.apT=s.m +s=A.UF.prototype +s.apI=s.m +s=A.a1V.prototype +s.amL=s.ex +s=A.XC.prototype +s.amc=s.Xz +s=A.e3.prototype +s.Ag=s.hX +s.jL=s.j +s=A.Li.prototype +s.amO=s.ls +s=A.UV.prototype +s.apX=s.m +s=A.LW.prototype +s.an0=s.aYj +s.an_=s.aYi +s=A.UC.prototype +s.apG=s.m +s=A.b6.prototype +s.tA=s.mr +s.qm=s.j +s=A.fC.prototype +s.a_5=s.mr +s=A.j1.prototype +s.a0_=s.m +s.aos=s.UU +s=A.DF.prototype +s.ao8=s.bO +s.ao7=s.l})();(function installTearOffs(){var s=hunkHelpers._static_1,r=hunkHelpers.installStaticTearOff,q=hunkHelpers._static_0,p=hunkHelpers._instance_0u,o=hunkHelpers._instance_1u,n=hunkHelpers._instance_1i,m=hunkHelpers._instance_2u,l=hunkHelpers.installInstanceTearOff,k=hunkHelpers._static_2,j=hunkHelpers._instance_0i,i=hunkHelpers._instance_2i +s(A,"bSD","bFy",5) +r(A,"byB",1,function(){return{params:null}},["$2$params","$1"],["byw",function(a){return A.byw(a,null)}],950,0) +s(A,"bSF","bTL",52) +q(A,"bSE","bNF",0) +s(A,"aon","bSy",16) +p(A.W8.prototype,"gTM","aLV",0) +o(A.a1o.prototype,"gaFZ","aG_",184) +n(A.Ls.prototype,"gXu","Xv",14) +n(A.NU.prototype,"gXu","Xv",14) +o(A.a0N.prototype,"gaFU","aFV",5) +var h +p(h=A.a_T.prototype,"gdj","m",0) +o(h,"gaVZ","aW_",225) +o(h,"ga7M","aK1",132) +o(h,"ga9n","aMF",11) +o(A.adi.prototype,"gaGt","aGu",16) +o(A.aa8.prototype,"gaCR","aCS",23) +m(h=A.Xm.prototype,"gaYk","aYl",481) +p(h,"gaGo","aGp",0) +o(A.DZ.prototype,"gaHE","aHF",821) +o(A.a8R.prototype,"gaXc","Xe",828) +p(A.a7w.prototype,"gdj","m",0) +o(h=A.XA.prototype,"gazG","azH",5) +o(h,"gazI","azJ",5) +o(h,"gazE","azF",5) +o(h=A.Ii.prototype,"gDt","adH",5) +o(h,"gLr","aTK",5) +o(h,"gLs","aTL",5) +o(h,"gE5","aXb",5) +o(A.a0t.prototype,"gaGv","aGw",5) +o(A.a_q.prototype,"gaFH","aFI",5) +o(A.a0i.prototype,"gaSf","acI",195) +p(h=A.pP.prototype,"gdj","m",0) +o(h,"gavT","avU",431) +p(A.B8.prototype,"gdj","m",0) +r(A,"bTa",1,null,["$2$environment","$1"],["btt",function(a){return A.btt(a,null)}],951,0) +n(A.ag4.prototype,"gk","mv",192) +o(h=A.jS.prototype,"gaup","auq",16) +m(h,"gauo","a1O",32) +o(h=A.RH.prototype,"gars","art",179) +p(h,"garu","arv",0) +p(h=A.amu.prototype,"gaG0","aG1",0) +p(h,"garw","arx",0) +p(h,"gary","arz",0) +l(h,"gawo",0,0,function(){return[null,null]},["$2","$0","$1"],["H6","a2O","awp"],423,0,0) +k(J,"bTh","bJI",181) +n(J.E.prototype,"gzh","C",43) +o(A.Al.prototype,"garB","arC",14) +n(A.nE.prototype,"gps","p",43) +q(A,"bTx","bMm",66) +n(A.kx.prototype,"gps","p",43) +n(A.hC.prototype,"gps","p",43) +s(A,"bUI","bPc",89) +s(A,"bUJ","bPd",89) +s(A,"bUK","bPe",89) +r(A,"bzp",1,function(){return[null]},["$2","$1"],["btg",function(a){return A.btg(a,null)}],953,0) +q(A,"bzq","bUf",0) +s(A,"bUL","bTM",16) +k(A,"bUN","bTO",32) +q(A,"bUM","bTN",0) +r(A,"bUO",4,null,["$4"],["bif"],954,0) +p(h=A.zc.prototype,"gBo","nA",0) +p(h,"gBp","nB",0) +n(A.ri.prototype,"git","q",14) +l(A.ze.prototype,"gxV",0,1,function(){return[null]},["$2","$1"],["dh","dF"],173,0,0) +m(A.a_.prototype,"gwH","h1",32) +n(h=A.vG.prototype,"git","q",14) +l(h,"gUv",0,1,function(){return[null]},["$2","$1"],["cX","pd"],173,0,0) +j(h,"gpq","L",69) +n(h,"garN","jh",14) +m(h,"garX","ji",32) +p(h,"gauf","oP",0) +p(h=A.vj.prototype,"gBo","nA",0) +p(h,"gBp","nB",0) +l(h=A.fN.prototype,"gXG",1,0,null,["$1","$0"],["mm","ic"],270,0,0) +j(h,"gY6","ie",0) +j(h,"gJX","S",69) +p(h,"gBo","nA",0) +p(h,"gBp","nB",0) +l(h=A.EO.prototype,"gXG",1,0,null,["$1","$0"],["mm","ic"],270,0,0) +j(h,"gY6","ie",0) +j(h,"gJX","S",69) +p(h,"ga67","aG2",0) +o(h=A.rw.prototype,"gaFB","aFC",14) +m(h,"gaFL","aFM",32) +p(h,"gaFF","aFG",0) +p(h=A.vl.prototype,"gBo","nA",0) +p(h,"gBp","nB",0) +o(h,"gRF","RH",14) +m(h,"gPI","PJ",574) +p(h,"gRI","RJ",0) +p(h=A.FR.prototype,"gBo","nA",0) +p(h,"gBp","nB",0) +o(h,"gRF","RH",14) +m(h,"gPI","PJ",32) +p(h,"gRI","RJ",0) +k(A,"bpd","bSq",160) +s(A,"bpe","bSr",87) +k(A,"bV_","bKt",181) +k(A,"bV0","bSx",181) +l(h=A.p4.prototype,"gSy",0,0,null,["$1$0","$0"],["Bn","Sz"],172,0,0) +n(h,"gps","p",43) +l(h=A.kp.prototype,"gSy",0,0,null,["$1$0","$0"],["Bn","Sz"],172,0,0) +n(h,"gps","p",43) +l(h=A.DH.prototype,"gaFi",0,0,null,["$1$0","$0"],["a5S","xd"],172,0,0) +n(h,"gps","p",43) +r(A,"bzA",1,function(){return{toEncodable:null}},["$2$toEncodable","$1"],["bA7",function(a){return A.bA7(a,null)}],955,0) +r(A,"bVf",1,function(){return{reviver:null}},["$2$reviver","$1"],["bA6",function(a){return A.bA6(a,null)}],956,0) +s(A,"bzz","bSt",78) +j(A.Fd.prototype,"gpq","L",0) +n(h=A.Qf.prototype,"git","q",14) +j(h,"gpq","L",0) +s(A,"bzE","bW4",87) +k(A,"bzD","bW3",160) +k(A,"bzB","bGl",957) +s(A,"bVj","dJ",14) +r(A,"bVh",1,null,["$2$encoding","$1"],["bwM",function(a){return A.bwM(a,B.a5)}],958,0) +s(A,"bVg","bOS",40) +q(A,"bVi","bRr",959) +k(A,"bzC","bUs",960) +n(A.B.prototype,"gps","p",43) +n(h=A.cD.prototype,"gb1e","eC",14) +o(h,"gb1g","fY",23) +l(h,"gb1j",0,0,null,["$1","$0"],["zA","b1k"],663,0,0) +s(A,"c3j","btq",961) +r(A,"c3k",2,function(){return{reuseAddress:!0,reusePort:!1,ttl:1}},["$5$reuseAddress$reusePort$ttl","$2"],["bnr",function(a,b){return A.bnr(a,b,!0,!1,1)}],186,0) +n(A.afw.prototype,"git","q",14) +j(A.ro.prototype,"gt","nd",171) +j(h=A.zv.prototype,"gpq","L",15) +j(h,"gt","nd",171) +l(h=A.zw.prototype,"gaum",0,0,function(){return[null]},["$1","$0"],["a1N","aun"],931,0,0) +o(h,"gaFu","aFv",214) +o(h,"gax4","ax5",952) +p(h,"gawq","awr",0) +l(h,"gaIK",0,1,function(){return[null]},["$2","$1"],["u7","aIL"],999,0,0) +p(h,"gaJO","aJP",0) +p(h,"gaG3","aG4",0) +p(h,"gaGd","aGe",0) +o(h,"gaI6","aI7",1000) +r(A,"bAf",2,null,["$1$2","$2"],["bpC",function(a,b){return A.bpC(a,b,t.Ci)}],962,1) +r(A,"VD",3,null,["$3"],["NW"],963,0) +r(A,"VE",3,null,["$3"],["ak"],964,0) +r(A,"dg",3,null,["$3"],["U"],965,0) +o(A.TL.prototype,"gaex","jv",52) +p(A.rj.prototype,"ga2P","awz",0) +l(A.lX.prototype,"gb_Q",0,0,null,["$1$allowPlatformDefault"],["rW"],461,0,0) +o(A.tz.prototype,"ga3h","axM",10) +j(A.Hu.prototype,"gJX","S",69) +l(h=A.Aj.prototype,"gxV",0,1,function(){return[null]},["$2","$1"],["dh","dF"],173,0,0) +p(h,"gatJ","PY",15) +m(h=A.Ht.prototype,"gaFr","aFs",404) +l(h,"gaFp",0,3,null,["$3"],["aFq"],51,0,0) +o(h=A.a4L.prototype,"gaFa","aFb",3) +p(h,"gaFc","a5O",0) +n(h,"gCe","a4",163) +m(h=A.ZX.prototype,"gaSY","ly",160) +n(h,"gaUX","ju",87) +o(h,"gaWi","aWj",43) +s(A,"bY1","bWJ",966) +m(h=A.i2.prototype,"gEf","kY",93) +m(h,"gMG","od",121) +i(h,"gpU","kX",357) +n(A.JL.prototype,"gk","mv",192) +m(A.JY.prototype,"gEf","kY",93) +s(A,"bAm","bSu",967) +s(A,"bUP","bSn",176) +s(A,"bVR","bmk",968) +o(h=A.EW.prototype,"gawD","awE",11) +p(h,"gawF","awG",0) +p(A.B0.prototype,"gawH","QR",0) +p(A.R3.prototype,"gaEF","I1",69) +p(h=A.FP.prototype,"ga2J","aw9",0) +p(h,"gaM_","aM0",0) +o(A.Tv.prototype,"ga83","aKH",23) +j(A.L4.prototype,"gt","nd",171) +k(A,"bWx","bSs",969) +o(A.L5.prototype,"gaRt","aRu",500) +s(A,"bY2","bWl",21) +l(h=A.A5.prototype,"gagN",1,0,function(){return{from:null}},["$1$from","$0"],["agO","dq"],526,0,0) +o(h,"gavV","avW",535) +o(h,"gPF","asj",3) +o(A.la.prototype,"gxv","IV",10) +o(A.I7.prototype,"gJ8","a9f",10) +o(h=A.z_.prototype,"gxv","IV",10) +p(h,"gUh","aNf",0) +o(h=A.AA.prototype,"ga5I","aEU",10) +p(h,"ga5H","aET",0) +p(A.w_.prototype,"geS","T",0) +o(A.t0.prototype,"gaff","Eb",10) +n(A.RV.prototype,"gk","mv",1) +o(h=A.Qw.prototype,"gaCo","aCp",57) +o(h,"gaCu","aCv",74) +p(h,"gaCm","aCn",0) +o(h,"gaGb","aGc",11) +o(h=A.Qx.prototype,"gaFJ","aFK",67) +o(h,"gaFN","aFO",62) +p(A.Qy.prototype,"gSp","a5A",0) +o(h=A.EI.prototype,"gaA5","aA6",42) +o(h,"gaA7","aA8",29) +o(h,"gaA1","aA2",44) +p(h,"gazZ","aA_",0) +o(h,"gaJd","aJe",70) +r(A,"bXQ",4,null,["$4"],["bGH"],970,0) +o(h=A.QB.prototype,"gaFW","aFX",44) +p(h,"gaB6","a4u",0) +p(h,"gaBx","a4x",0) +o(h,"gIW","aLd",10) +o(h=A.Qz.prototype,"gaGi","aGj",57) +o(h,"gaGk","aGl",74) +p(h,"gaGg","aGh",0) +r(A,"bUH",1,null,["$2$forceReport","$1"],["bt5",function(a){return A.bt5(a,!1)}],971,0) +s(A,"bUG","bHn",972) +n(h=A.bo.prototype,"gCe","a4",89) +n(h,"gagn","K",89) +p(h,"gdj","m",0) +p(h,"geS","T",0) +r(A,"as",1,function(){return{wrapWidth:null}},["$2$wrapWidth","$1"],["bzJ",function(a){return A.bzJ(a,null)}],973,0) +q(A,"bXm","byu",0) +s(A,"bXC","bNU",974) +o(h=A.JF.prototype,"gaBg","aBh",672) +o(h,"gavC","avD",678) +o(h,"gaPb","aPc",23) +p(h,"gaxK","Rc",0) +o(h,"gaBk","a4w",39) +p(h,"gaBF","aBG",0) +r(A,"c3i",3,null,["$3"],["btb"],975,0) +o(A.mR.prototype,"grz","k7",39) +s(A,"bWs","bKH",86) +s(A,"aoD","bHW",273) +s(A,"aoE","bHX",86) +o(A.kG.prototype,"grz","k7",39) +s(A,"bWB","bHV",86) +p(A.adW.prototype,"gaGm","aGn",0) +o(h=A.mG.prototype,"gIe","aFd",39) +o(h,"gaIt","Bz",698) +p(h,"gaFe","tZ",0) +s(A,"Gr","bJ4",86) +o(A.CR.prototype,"grz","k7",39) +o(A.ng.prototype,"grz","k7",39) +o(h=A.TU.prototype,"grz","k7",39) +p(h,"gauN","auO",0) +o(A.He.prototype,"grz","k7",39) +m(A.S3.prototype,"gaEK","aEL",54) +o(A.PW.prototype,"gRP","aBJ",210) +o(h=A.Qa.prototype,"ga10","asv",42) +o(h,"ga11","asw",29) +o(h,"ga1_","asu",44) +o(h,"gaTa","aTb",779) +o(h,"gaA3","aA4",11) +o(h=A.SK.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +o(h=A.Fp.prototype,"gaTP","aTQ",42) +l(h,"gaTN",0,1,null,["$2$isClosing","$1"],["adJ","aTO"],781,0,0) +p(A.Qe.prototype,"gv7","Wy",0) +o(h=A.SS.prototype,"gcF","bU",1) +o(h,"gcE","bT",1) +o(h,"gcb","bQ",1) +o(h,"gcM","bP",1) +r(A,"bVD",4,null,["$4"],["bRR"],976,0) +o(h=A.EV.prototype,"gawA","awB",11) +p(h,"gaB9","aBa",0) +p(A.EQ.prototype,"gawC","QQ",0) +p(h=A.RQ.prototype,"gaBA","aBB",0) +o(h,"gasB","asC",13) +p(A.K4.prototype,"gazz","azA",0) +o(A.tI.prototype,"gazc","azd",10) +o(A.K6.prototype,"gaDA","aDB",10) +o(A.K7.prototype,"gaDC","aDD",10) +o(A.K5.prototype,"gajB","ajC",343) +o(h=A.RO.prototype,"gaND","aNE",344) +l(h,"galg",0,0,null,["$1","$0"],["ZN","alh"],218,0,0) +p(h,"gale","alf",0) +p(h,"gv7","Wy",0) +o(h,"gadM","aTU",219) +o(h,"gaTV","aTW",11) +o(h,"gaUJ","aUK",57) +o(h,"gaUL","aUM",74) +o(h,"gaUA","aUB",57) +o(h,"gaUC","aUD",74) +p(h,"gaUG","adU",0) +p(h,"gaUH","aUI",0) +p(h,"gaU4","adQ",0) +p(h,"gaUw","aUx",0) +p(h,"gaUy","aUz",0) +o(h,"gaU7","aU8",67) +o(h,"gaU9","aUa",62) +k(A,"bW9","bQL",327) +k(A,"bA_","bQM",327) +p(A.RF.prototype,"gS9","Sa",0) +o(h=A.SN.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +m(h,"gaGK","aGL",18) +o(h,"gau_","au0",220) +p(A.RT.prototype,"gS9","Sa",0) +k(A,"bWp","bQN",978) +o(h=A.SV.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +p(A.TZ.prototype,"gQF","a2s",0) +p(h=A.Gd.prototype,"gz5","aXP",0) +o(h,"gz4","aXO",10) +o(h=A.UA.prototype,"gBq","SJ",16) +p(h,"gdj","m",0) +o(h=A.UB.prototype,"gBq","SJ",16) +p(h,"gdj","m",0) +o(h=A.MA.prototype,"gaIq","aIr",50) +o(h,"gaAD","aAE",364) +o(A.Nl.prototype,"gaC6","aC7",10) +o(h=A.Rr.prototype,"gaBv","aBw",10) +p(h,"gaG6","aG7",0) +p(A.Dk.prototype,"gaCg","aCh",0) +r(A,"bAM",3,null,["$3"],["bTy"],979,0) +o(h=A.Tw.prototype,"gaKO","aKP",56) +o(h,"gTC","TD",56) +o(h,"gTA","TB",56) +o(h,"garD","arE",368) +o(h,"gaKS","aKT",11) +o(h,"gaKU","aKV",11) +p(h=A.FH.prototype,"gawW","QV",0) +o(h,"gTC","TD",42) +o(h,"gaKQ","aKR",29) +o(h,"gTA","TB",44) +o(h,"gaKW","aKX",57) +o(h,"gaKY","aKZ",74) +o(h,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +p(h,"gaVs","aed",0) +p(h,"gaRr","acl",0) +p(A.Tz.prototype,"gaBt","aBu",0) +o(A.TA.prototype,"gSC","aFt",10) +o(h=A.S7.prototype,"gaLr","aLs",42) +o(h,"gaLt","aLu",29) +o(h,"gaLp","aLq",44) +o(h,"gaLn","aLo",229) +p(h=A.TR.prototype,"gazM","azN",0) +p(h,"gdj","m",0) +p(A.OD.prototype,"gdj","m",0) +p(A.RL.prototype,"gf8","aU",0) +p(h=A.TS.prototype,"gtS","RR",0) +p(h,"gRS","aCj",0) +l(h,"gaJk",0,3,null,["$3"],["aJl"],378,0,0) +p(h=A.TT.prototype,"gtS","RR",0) +o(h,"gaLw","aLx",50) +k(A,"bXP","bOh",980) +o(h=A.all.prototype,"gaYa","Xr",118) +o(h,"gaY8","aY9",118) +p(h,"gaYP","aYQ",0) +o(h,"gaYA","Xx",230) +p(h=A.TX.prototype,"gJ1","aLE",0) +m(h,"gaBO","aBP",383) +p(h,"gaBU","aBV",0) +p(h,"ga4F","aCf",0) +k(A,"bXR","bOu",981) +o(h=A.v2.prototype,"gaM6","aM7",10) +o(h,"gaM4","aM5",70) +o(h,"ga4m","aAt",39) +p(h,"gaCr","a4K",0) +p(h,"gaAK","aAL",0) +p(h,"gaBr","aBs",0) +o(h,"ga4s","aAT",67) +o(h,"ga4t","aAU",62) +o(h,"gatr","ats",13) +l(h=A.a5N.prototype,"gaVJ",0,1,null,["$4$allowUpscaling$cacheHeight$cacheWidth","$1"],["aep","aVK"],390,0,0) +l(h,"gaVM",0,1,null,["$2$getTargetSize","$1"],["aeq","aVN"],391,0,0) +r(A,"biu",3,null,["$3"],["buM"],982,0) +r(A,"bpl",3,null,["$3"],["fm"],983,0) +n(h=A.xb.prototype,"gCe","a4",163) +o(h,"gakA","OK",403) +o(h,"gagB","b_D",233) +o(h=A.a4K.prototype,"gazB","azC",190) +o(h,"gazi","azj",3) +n(h,"gCe","a4",163) +m(A.Er.prototype,"gaKL","aKM",411) +r(A,"Gt",3,null,["$3"],["c9"],984,0) +n(h=A.a0s.prototype,"gb1l","i1",1) +n(h,"gVR","j0",1) +o(A.MG.prototype,"ga0K","asi",10) +s(A,"bUR","bPv",234) +o(h=A.N3.prototype,"gaCT","aCU",3) +o(h,"gaBb","aBc",3) +p(A.Q5.prototype,"gdj","m",0) +o(h=A.P.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +o(h,"gdD","auw",418) +o(h,"gGS","auv",187) +p(h,"gMc","ae",0) +m(A.el.prototype,"gacn","y5",18) +o(h=A.MK.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +o(h=A.ML.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +p(h=A.yb.prototype,"gf8","aU",0) +p(h,"gIR","aKE",0) +o(h,"gaC4","aC5",19) +o(h,"gaC2","aC3",420) +o(h,"gaB_","aB0",11) +o(h,"gaAW","aAX",11) +o(h,"gaB1","aB2",11) +o(h,"gaAY","aAZ",11) +o(h,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +o(h,"gawM","awN",57) +p(h,"gaCk","aCl",0) +p(h,"gawK","awL",0) +m(h,"gaGH","a6j",18) +o(h=A.MN.prototype,"gcb","bQ",1) +o(h,"gcM","bP",1) +o(h=A.yc.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +o(h=A.MQ.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +s(A,"bAk","bvp",30) +s(A,"bAl","bMR",30) +p(A.qu.prototype,"ga9H","a9I",0) +o(h=A.G.prototype,"gXY","ol",30) +p(h,"gf8","aU",0) +l(h,"ghV",0,2,null,["$2"],["aT"],18,0,1) +p(h,"gz2","bM",0) +l(h,"ga5F",0,1,null,["$2$isMergeUp","$1"],["I3","aEI"],429,0,0) +l(h,"gwh",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["i3","A3","tv","wi","tw"],154,0,0) +o(h=A.aD.prototype,"gK3","aPp","aD.0?(O?)") +o(h,"gCw","aPo","aD.0?(O?)") +p(A.ux.prototype,"gqK","aJy",0) +o(h=A.uz.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +o(h,"gau1","au2",220) +o(h=A.p8.prototype,"gaz6","a42",237) +m(h,"gayO","ayP",435) +o(h,"gayf","ayg",237) +o(h=A.hK.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +l(h,"ghV",0,2,null,["$2"],["aT"],18,0,1) +o(h=A.MJ.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +o(h=A.MS.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +p(A.MF.prototype,"gJc","U4",0) +p(A.FD.prototype,"gI2","xa",0) +m(A.MO.prototype,"gaGG","a6i",436) +o(h=A.MU.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +p(h=A.qJ.prototype,"gaHp","aHq",0) +p(h,"gaHr","aHs",0) +p(h,"gaHt","aHu",0) +p(h,"gaHn","aHo",0) +p(h=A.MZ.prototype,"gaHw","aHx",0) +p(h,"gaHh","aHi",0) +p(h,"gaHd","aHe",0) +p(h,"gaH5","aH6",0) +p(h,"gaH7","aH8",0) +p(h,"gaHj","aHk",0) +p(h,"gaH9","aHa",0) +p(h,"gaHb","aHc",0) +p(h,"gaHf","aHg",0) +o(h=A.MY.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +m(h,"gaGE","aGF",18) +p(A.a8_.prototype,"ga7H","a7I",0) +o(h=A.yd.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +l(h,"ghV",0,2,null,["$2"],["aT"],18,0,1) +o(h=A.MV.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +o(h=A.MW.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +o(h=A.MM.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +l(A.e4.prototype,"gaV8",0,1,null,["$3$crossAxisPosition$mainAxisPosition"],["ae4"],437,0,0) +o(h=A.D5.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +m(h,"gafC","MS",18) +m(A.MR.prototype,"gafC","MS",18) +o(h=A.D7.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +m(h,"gaNi","a9W",18) +l(h,"gwh",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["i3","A3","tv","wi","tw"],154,0,0) +s(A,"bY5","bMU",242) +k(A,"bY6","bMV",241) +o(h=A.N2.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +k(A,"bUT","bN3",985) +r(A,"bUU",0,null,["$2$priority$scheduler"],["bVx"],986,0) +o(h=A.oL.prototype,"gaxb","axc",243) +p(h,"gaJg","aJh",0) +o(h,"gazq","azr",3) +p(h,"gaAa","aAb",0) +p(h,"gawe","awf",0) +o(A.E4.prototype,"gJ2","aLP",3) +p(h=A.a80.prototype,"gavR","avS",0) +p(h,"gaC1","a4D",0) +o(h,"gaC_","aC0",448) +o(h=A.ec.prototype,"ga6R","aIn",244) +o(h,"gaMA","a99",244) +p(A.ND.prototype,"gdj","m",0) +o(A.nk.prototype,"gaO4","Uz",456) +s(A,"bUS","bNw",987) +p(h=A.NJ.prototype,"gas1","as2",462) +o(h,"gaAI","RM",463) +o(h,"gaBd","HC",127) +o(h=A.a1n.prototype,"gaTZ","aU_",184) +o(h,"gaUu","Wx",38) +o(h,"gauU","auV",153) +o(h=A.N9.prototype,"gaEY","Su",248) +p(h,"gdj","m",0) +o(h=A.fq.prototype,"gaJ3","aJ4",249) +o(h,"ga6P","a6Q",249) +o(A.a9t.prototype,"gaEB","I0",127) +o(A.a9R.prototype,"gaCL","RV",127) +o(A.PS.prototype,"ga45","azb",482) +o(h=A.Rv.prototype,"ga4j","aAs",219) +o(h,"garJ","arK",67) +o(h,"garL","arM",62) +o(h,"garH","arI",11) +k(A,"c31","bFm",988) +k(A,"bUC","bFl",989) +o(A.PU.prototype,"gaN6","Ud",484) +o(h=A.Ur.prototype,"gavo","avp",252) +o(h,"gaFQ","aFR",488) +o(h,"gaGq","aGr",253) +o(A.PY.prototype,"garS","arT",490) +p(A.Ki.prototype,"gdj","m",0) +p(h=A.aat.prototype,"gaU2","aU3",0) +o(h,"gaB3","aB4",494) +o(h,"gazo","azp",127) +p(h,"gazs","azt",0) +p(h=A.Uy.prototype,"gaU6","Ws",0) +p(h,"gaUO","Wz",0) +p(h,"gaUd","Wv",0) +o(h,"gaTH","Wm",132) +o(h,"gaUQ","WB",225) +o(h=A.QM.prototype,"ga2E","aw4",42) +o(h,"ga2F","aw5",29) +p(h,"gazX","azY",0) +o(h,"ga2D","aw3",44) +o(h,"gazV","Hz",496) +o(A.R2.prototype,"gPE","a0J",10) +p(h=A.tr.prototype,"ga62","aFw",0) +p(h,"gaFP","a65",0) +p(h,"gaJ1","aJ2",0) +p(h,"gBW","aMn",0) +o(h,"gRE","azL",210) +p(h,"gaFz","aFA",0) +p(h,"ga63","SF",0) +p(h,"gH2","a2y",0) +p(h,"gQT","awP",0) +o(h,"gaur","aus",255) +l(h,"gaJs",0,0,function(){return[null]},["$1","$0"],["a7n","a7m"],256,0,0) +o(h,"gaZf","aZg",19) +l(h,"gaF3",0,3,null,["$3"],["aF4"],257,0,0) +l(h,"gaF5",0,3,null,["$3"],["aF6"],257,0,0) +p(h,"gatL","a1k",105) +p(h,"gaFl","aFm",105) +p(h,"gaE6","aE7",105) +p(h,"gaGT","aGU",105) +p(h,"gawm","awn",105) +o(h,"gaMb","aMc",503) +o(h,"gaIG","a70",504) +o(h,"gaJA","aJB",505) +o(h,"gawQ","awR",506) +o(h,"gaxg","axh",507) +o(h,"gaMS","aMT",508) +o(h,"gaD1","aD2",509) +o(h,"gavq","avr",70) +s(A,"hq","bIT",36) +p(h=A.er.prototype,"gdj","m",0) +l(h,"gb_J",0,0,null,["$1","$0"],["Ey","iI"],518,0,0) +p(h=A.Jz.prototype,"gdj","m",0) +o(h,"gasl","asm",132) +p(h,"gaOl","aaD",0) +o(h=A.afV.prototype,"gadR","Ww",39) +o(h,"gadP","aU0",520) +p(A.F2.prototype,"gRL","aAp",0) +r(A,"bVQ",1,null,["$5$alignment$alignmentPolicy$curve$duration","$1","$2$alignmentPolicy"],["bme",function(a){var g=null +return A.bme(a,g,g,g,g)},function(a,b){return A.bme(a,null,b,null,null)}],990,0) +s(A,"biY","bQ8",27) +k(A,"bpp","bI8",991) +s(A,"bzT","bI7",27) +o(A.a9.prototype,"gakN","J",89) +o(h=A.agk.prototype,"gaMp","a91",27) +p(h,"gaMq","aMr",0) +o(A.bc.prototype,"gaRk","CU",27) +o(h=A.D1.prototype,"gay5","ay6",70) +o(h,"gaBl","aBm",547) +o(h,"gaN1","aN2",548) +o(h=A.rq.prototype,"gatd","ate",13) +o(h,"ga46","a47",10) +p(h,"gXy","aYM",0) +o(h=A.JM.prototype,"gaAm","aAn",551) +l(h,"gavm",0,5,null,["$5"],["avn"],552,0,0) +r(A,"bzY",3,null,["$3"],["q6"],992,0) +m(h=A.RI.prototype,"gaAB","aAC",140) +o(h,"gaAz","aAA",233) +p(A.A4.prototype,"gaze","azf",0) +p(A.Fc.prototype,"gRW","aCN",0) +p(h=A.Fe.prototype,"gaJt","aJu",0) +o(h,"gaxZ","ay_",3) +o(h,"ga6K","aIg",14) +o(h=A.ST.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +r(A,"bWu",3,null,["$3"],["bOj"],993,0) +k(A,"bWC","bLz",994) +s(A,"ls","bQS",102) +s(A,"bAi","bQT",102) +s(A,"VA","bQU",102) +o(A.Fs.prototype,"gEa","vp",120) +o(A.Fr.prototype,"gEa","vp",120) +o(A.Sl.prototype,"gEa","vp",120) +o(A.Sm.prototype,"gEa","vp",120) +p(h=A.n3.prototype,"ga4n","aAw",0) +p(h,"ga6M","aIl",0) +o(h,"gaBi","aBj",70) +o(h,"gaBp","aBq",39) +o(h=A.FG.prototype,"gcE","bT",1) +o(h,"gcM","bP",1) +o(h,"gcF","bU",1) +o(h,"gcb","bQ",1) +s(A,"bWH","bQQ",30) +l(A.zz.prototype,"ghV",0,2,null,["$2"],["aT"],18,0,1) +o(h=A.vE.prototype,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +o(A.RB.prototype,"gSL","SM",50) +p(h=A.RA.prototype,"gdj","m",0) +o(h,"gQ_","Q0",10) +o(h,"gaLQ","aLR",3) +o(A.TO.prototype,"gSL","SM",50) +o(h=A.TN.prototype,"gQ_","Q0",10) +p(h,"gdj","m",0) +o(A.a_1.prototype,"gaEW","St",248) +p(h=A.SC.prototype,"gSZ","aI4",0) +o(h,"ga4y","aBz",153) +p(A.T6.prototype,"gT5","aIE",0) +p(A.hm.prototype,"gdj","m",0) +o(A.ne.prototype,"gaMP","U6",585) +o(h=A.FJ.prototype,"gaIM","aIN",3) +p(h,"gHE","a4A",0) +p(h,"gRB","azn",72) +p(h,"gRO","aBE",0) +o(A.h5.prototype,"ga4G","aCi",10) +o(h=A.eR.prototype,"gat8","at9",13) +o(h,"gata","atb",13) +p(h=A.WO.prototype,"gTm","Tn",0) +p(h,"gTk","Tl",0) +p(h=A.a_E.prototype,"gTm","Tn",0) +p(h,"gTk","Tl",0) +p(A.qP.prototype,"gdj","m",0) +k(A,"bAL","byM",995) +n(h=A.Tq.prototype,"git","q",65) +n(h,"gzh","C",65) +s(A,"Gs","bVy",50) +p(h=A.oM.prototype,"gaRM","aRN",0) +p(h,"gdj","m",0) +p(A.yt.prototype,"gdj","m",0) +o(h=A.yv.prototype,"ga4g","aA0",276) +o(h,"ga7y","aJD",42) +o(h,"ga7z","aJE",29) +o(h,"ga7x","aJC",44) +p(h,"ga7v","a7w",0) +p(h,"gawc","awd",0) +p(h,"gawa","awb",0) +o(h,"gaIh","aIi",277) +o(h,"gaJF","aJG",39) +o(h,"gaBH","aBI",145) +p(h=A.Th.prototype,"ga7l","aJp",0) +p(h,"gdj","m",0) +p(A.Dm.prototype,"gdj","m",0) +o(h=A.oJ.prototype,"gaNd","aNe",10) +p(h,"gawg","awh",0) +p(h,"gawi","awj",0) +o(h,"gaCJ","aCK",57) +o(h,"gaJI","aJJ",145) +o(h,"gaJK","aJL",50) +o(h,"gaCA","aCB",276) +o(h,"gaCE","aCF",42) +o(h,"gaCG","aCH",29) +o(h,"gaCC","aCD",44) +p(h,"gaCy","aCz",0) +o(h,"ga55","aDr",606) +o(h,"gaBn","aBo",39) +o(h,"gaJM","aJN",277) +k(A,"bXy","bLq",328) +n(h=A.Cr.prototype,"git","q",65) +n(h,"gzh","C",65) +p(h,"gRQ","aBN",0) +p(h,"gdj","m",0) +m(A.Tu.prototype,"gaB7","aB8",209) +p(A.NM.prototype,"gdj","m",0) +p(A.Tt.prototype,"ga7Z","aKm",0) +p(h=A.T1.prototype,"gHK","aCX",0) +o(h,"gcF","bU",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcM","bP",1) +l(h,"gwh",0,0,null,["$4$curve$descendant$duration$rect","$0","$1$rect","$3$curve$duration$rect","$2$descendant$rect"],["i3","A3","tv","wi","tw"],154,0,0) +o(A.DA.prototype,"gb_o","agm",619) +p(A.FI.prototype,"gIi","a68",0) +p(A.QE.prototype,"gdj","m",0) +k(A,"bXO","bQX",328) +n(h=A.Tn.prototype,"gzh","C",65) +p(h,"gdj","m",0) +p(h=A.a9x.prototype,"ga9L","Uc",0) +o(h,"gaBQ","aBR",42) +o(h,"gaBS","aBT",29) +o(h,"gaBW","aBX",42) +o(h,"gaBY","aBZ",29) +o(h,"gazg","azh",44) +o(h=A.a7Z.prototype,"gaCb","aCc",42) +o(h,"gaCd","aCe",29) +o(h,"gaC9","aCa",44) +o(h,"gaAe","aAf",42) +o(h,"gaAg","aAh",29) +o(h,"gaAc","aAd",44) +o(h,"gatp","atq",13) +p(A.Tr.prototype,"gJ4","TN",0) +p(A.Tp.prototype,"gRY","RZ",0) +p(h=A.OW.prototype,"gaYK","aYL",0) +p(h,"gaYI","aYJ",0) +o(h,"gaYG","aYH",111) +o(h,"gaYD","aYE",279) +p(h,"gaYB","aYC",0) +o(h,"gaYy","aYz",280) +o(h,"gaYw","aYx",281) +p(h,"gaYq","aYr",0) +o(h,"gaYs","aYt",57) +o(h,"gaXW","aXX",111) +o(h,"gaYN","aYO",111) +o(h,"gaY_","aY0",282) +o(h,"gaY1","aY2",332) +o(h,"gaXY","aXZ",284) +p(h=A.U0.prototype,"ga4M","aCt",0) +p(h,"ga4L","aCs",0) +o(h,"ga8G","aLJ",111) +o(h,"ga8H","aLK",279) +p(h,"ga8F","aLI",0) +o(h,"ga8D","aLG",282) +o(h,"ga8E","aLH",332) +o(h,"ga8C","aLF",284) +o(h,"gaxP","axQ",118) +o(h,"gaxN","axO",118) +o(h,"gaAQ","aAR",230) +o(h,"gaAO","aAP",280) +o(h,"gaAM","aAN",281) +p(A.HE.prototype,"gdj","m",0) +p(A.ho.prototype,"gir","is",0) +p(A.e6.prototype,"geG","f3",0) +o(h=A.E9.prototype,"gaM2","aM3",57) +l(h,"ga8T",0,0,function(){return[null]},["$1","$0"],["a8U","aM1"],218,0,0) +l(h,"ga4I",0,0,null,["$1","$0"],["a4J","aCq"],635,0,0) +o(h,"gaAq","aAr",11) +o(h,"gaAx","aAy",11) +p(A.E8.prototype,"gdj","m",0) +s(A,"bXZ","bN1",329) +s(A,"bXY","bMX",329) +p(A.PT.prototype,"gRD","azw",0) +p(h=A.Ee.prototype,"gahi","ER",0) +p(h,"gagf","Et",0) +o(h,"gaMk","aMl",636) +o(h,"gaIo","aIp",637) +p(h,"gSY","a6G",0) +p(h,"gRK","a4h",0) +p(A.Pj.prototype,"gdj","m",0) +p(A.G9.prototype,"gUi","aNg",0) +o(h=A.T_.prototype,"gcM","bP",1) +o(h,"gcb","bQ",1) +o(h,"gcE","bT",1) +o(h,"gcF","bU",1) +l(A.a6B.prototype,"gaTX",0,3,null,["$3"],["Lu"],659,0,0) +s(A,"ph","ZO",330) +s(A,"bWE","bn6",330) +s(A,"bWe","Gn",92) +s(A,"bWd","bUl",40) +s(A,"bWf","bpk",40) +s(A,"bWg","bAS",40) +q(A,"jW","bSv",12) +q(A,"h8","bRN",12) +q(A,"eN","bRG",12) +q(A,"zS","bRI",12) +q(A,"bpF","bRJ",12) +q(A,"bX4","bRO",12) +q(A,"bX5","bRP",12) +q(A,"bjM","bRQ",12) +q(A,"bjN","bRU",12) +q(A,"bAB","bSj",12) +q(A,"bX6","bSk",12) +q(A,"bX7","bSl",12) +q(A,"aoG","bSI",12) +q(A,"bAA","bS3",12) +q(A,"bpG","bSQ",12) +q(A,"bX9","bSR",12) +q(A,"bAC","bT7",12) +q(A,"bX8","bSM",12) +q(A,"bXa","bTv",12) +q(A,"bpE","bRH",12) +q(A,"bXb","bTB",12) +q(A,"bXc","bTC",12) +q(A,"bXd","bTH",12) +q(A,"bXf","bTK",12) +q(A,"bXg","bTZ",12) +q(A,"bAD","bU0",12) +q(A,"bXe","bTI",12) +q(A,"bAE","bU4",12) +q(A,"bXh","bUc",12) +q(A,"bXi","bUe",12) +s(A,"bXj","bWq",21) +m(A.H5.prototype,"gEf","kY",93) +m(h=A.Hs.prototype,"gEf","kY",93) +m(h,"gMG","od",121) +i(h,"gpU","kX",285) +m(h=A.LF.prototype,"gEf","kY",93) +m(h,"gMG","od",121) +i(h,"gpU","kX",285) +m(A.On.prototype,"gMG","od",121) +p(h=A.AU.prototype,"ga64","aFD",0) +p(h,"gdj","m",0) +p(A.Ql.prototype,"gauk","aul",0) +p(A.dW.prototype,"gdj","m",0) +p(A.NF.prototype,"gdj","m",0) +p(A.RJ.prototype,"gaBf","a4v",0) +o(h=A.Sd.prototype,"gaF1","aF2",56) +o(h,"gazx","azy",56) +p(A.TV.prototype,"gaLz","aLA",0) +p(h=A.QL.prototype,"gaNP","Ju",0) +p(h,"gaD0","B5",0) +p(h,"gaFS","aFT",0) +o(A.S0.prototype,"gaAG","HB",11) +p(h=A.lH.prototype,"ga2u","avM",0) +p(h,"gazO","a4e",0) +m(h,"gb0M","ahq",309) +o(h,"gakE","akF",11) +p(h,"gdj","m",0) +p(h=A.SA.prototype,"gaGs","Ij",15) +p(h,"gaG5","SI",15) +p(A.QI.prototype,"ga69","aGf",0) +p(A.U6.prototype,"gaEn","x8",15) +s(A,"bWy","bLf",91) +s(A,"bWz","bLg",91) +s(A,"bWA","bLh",91) +s(A,"bAg","bLi",91) +s(A,"bAh","bLj",91) +n(h=A.a4e.prototype,"gpU","j5",16) +p(h,"gz7","pT",0) +o(h=A.a4g.prototype,"gaOH","JH",816) +o(h,"gaXe","aXf",817) +o(h,"gaPX","aPY",818) +p(h=A.a4h.prototype,"gafK","aZk",46) +o(h,"gaZi","aZj",167) +o(h,"gaZl","aZm",167) +o(h,"gaXg","aXh",167) +p(h,"gafc","aXJ",0) +n(A.a4b.prototype,"gt","o7",315) +n(A.kV.prototype,"gt","o7",315) +n(A.hH.prototype,"gt","o7",94) +j(A.a4r.prototype,"gt","nd",66) +o(A.a4a.prototype,"gaTI","aTJ",53) +o(h=A.Li.prototype,"gaS2","aS3",823) +p(h,"gaVS","aet",0) +o(h,"gaHV","aHW",53) +o(h=A.a4z.prototype,"gaUj","aUk",53) +o(h,"gaUh","aUi",53) +o(h,"gaUp","aUq",53) +o(h,"gaUl","aUm",53) +o(h,"gaUn","aUo",53) +o(h=A.a4E.prototype,"gaZH","aZI",824) +o(h,"gaPO","aPP",53) +o(h,"gaPQ","aPR",53) +o(h,"gaJ5","aJ6",825) +p(A.Lh.prototype,"gaLT","aLU",0) +o(A.a4A.prototype,"gaF8","aF9",16) +p(A.a4B.prototype,"gz7","pT",0) +o(A.Rk.prototype,"gUF","aOg",10) +o(h=A.a14.prototype,"gaaZ","F",13) +l(h,"gaDf",0,4,null,["$4"],["aDg"],170,0,0) +l(h,"gaHA",0,4,null,["$4"],["aHB"],170,0,0) +l(h,"gaHJ",0,4,null,["$4"],["aHK"],170,0,0) +l(h,"gaEv",0,3,null,["$3"],["aEw"],294,0,0) +l(h,"gax_",0,3,null,["$3"],["ax0"],51,0,0) +o(h=A.QH.prototype,"gavH","ld",134) +p(h,"gayp","AZ",15) +p(h,"gavE","H_",72) +o(h,"gavG","AK",318) +o(h,"gavw","QE",839) +l(h,"gavY",0,1,null,["$2$needReload","$1"],["H4","avZ"],840,0,0) +p(A.QU.prototype,"gawy","wQ",128) +o(h=A.Rn.prototype,"gaHl","aHm",19) +p(h,"gaFj","aFk",0) +p(h,"gaHN","aHO",0) +p(A.R6.prototype,"gavK","avL",0) +p(A.RG.prototype,"garW","Pv",128) +o(h=A.Rl.prototype,"gaKA","lj",134) +p(h,"gaxl","wW",855) +o(h,"gaG8","u0",318) +m(h,"gauP","d6",856) +p(A.kd.prototype,"gdj","m",0) +p(A.n5.prototype,"gdj","m",0) +p(h=A.RU.prototype,"gaDF","aDG",0) +p(h,"gazK","a4c",0) +p(h,"gazu","azv",0) +s(A,"bWF","bWG",1001) +k(A,"bUX","bFW",1002) +k(A,"bA9","bKB",1003) +p(A.zm.prototype,"gaf0","aX4",0) +n(A.DN.prototype,"git","q",14) +o(h=A.FV.prototype,"gXm","jA",14) +i(h,"gpU","kX",32) +p(h,"gz7","pT",0) +o(h=A.FU.prototype,"gXm","jA",14) +i(h,"gpU","kX",32) +p(h,"gz7","pT",0) +k(A,"bWQ","bPH",45) +k(A,"bAt","bPC",45) +k(A,"bAv","bPJ",45) +k(A,"bAu","bPI",45) +k(A,"bWO","bPF",45) +k(A,"bWR","bPK",45) +k(A,"bWP","bPG",45) +k(A,"bWN","bPE",45) +k(A,"bWL","bPB",45) +k(A,"bWM","bPD",45) +s(A,"bWS","bQo",100) +s(A,"bWV","bQr",100) +s(A,"bWY","bQu",100) +s(A,"bWW","bQs",283) +s(A,"bWX","bQt",283) +s(A,"bWT","bQp",100) +s(A,"bWU","bQq",100) +o(h=A.ajB.prototype,"gtg","aiX",904) +o(h,"gvV","aiN",905) +q(A,"bXp","bMT",0) +q(A,"bXq","bvt",0) +p(A.En.prototype,"gdj","m",0) +s(A,"bVB","bUj",103) +s(A,"bVA","bUd",103) +s(A,"bVz","bSw",103) +p(h=A.aci.prototype,"gaT1","aT2",917) +p(h,"gaPi","aPj",918) +p(h,"galy","alz",919) +j(h,"gaaO","aOG",920) +p(h,"gaOv","aOw",921) +p(h,"gaOx","aOy",109) +p(h,"guo","aOz",109) +p(h,"gaOA","aOB",109) +p(h,"gaOE","aOF",109) +p(h,"gaOC","aOD",109) +j(h,"gaSP","aSQ",923) +p(h,"gabr","aPH",924) +p(h,"gaPe","aPf",925) +p(h,"gaRl","aRm",926) +p(h,"gafS","aZD",927) +p(h,"gaSj","aSk",928) +p(h,"gaSr","aSs",178) +p(h,"gaSv","aSw",178) +p(h,"gaSt","aSu",178) +p(h,"gaSx","aSy",81) +p(h,"gaSn","aSo",106) +p(h,"gaSl","aSm",106) +p(h,"gaSp","aSq",106) +p(h,"gaSz","aSA",106) +p(h,"gaSB","aSC",106) +p(h,"gA5","alr",81) +p(h,"gA6","als",81) +p(h,"gne","aXE",81) +p(h,"gaXC","aXD",81) +p(h,"gaXA","aXB",81) +o(A.acj.prototype,"gahw","b18",949) +q(A,"c36","bk4",302) +r(A,"bzy",2,null,["$2$3$debugLabel","$2","$2$2"],["Vs",function(a,b){var g=t.z +return A.Vs(a,b,null,g,g)},function(a,b,c,d){return A.Vs(a,b,null,c,d)}],1007,0) +k(A,"jb","brs",73) +k(A,"rR","bG1",73) +r(A,"ku",3,null,["$3"],["bG0"],235,0) +r(A,"bjw",3,null,["$3"],["bG_"],235,0) +s(A,"bzv","bUn",165) +k(A,"bVJ","bXw",164) +k(A,"bzP","bXx",164) +k(A,"bVI","bXv",164) +k(A,"bWZ","bTR",84) +k(A,"bX1","bTU",84) +k(A,"bX2","bTV",84) +k(A,"bX3","bTW",84) +k(A,"bX0","bTT",84) +k(A,"bX_","bTS",84)})();(function inheritance(){var s=hunkHelpers.mixin,r=hunkHelpers.mixinHard,q=hunkHelpers.inherit,p=hunkHelpers.inheritMany +q(A.O,null) +p(A.O,[A.W8,A.apB,A.tf,A.ajT,A.asQ,A.arT,A.HD,A.ase,A.asf,A.aym,A.ayn,A.b2U,A.B7,A.azy,A.aw1,A.aQa,A.a0X,A.aBQ,A.a0W,A.a0V,A.a_y,A.IK,A.aeO,A.B,A.aeT,A.a_v,A.axP,A.a7B,A.yo,A.ajS,A.aPJ,A.Bp,A.wX,A.JC,A.dB,A.WB,A.jn,A.XH,A.EG,A.aAb,A.fp,A.ed,A.aT6,A.QO,A.aTf,A.aTe,A.a0Q,A.JR,A.DO,A.a91,A.jZ,A.aNi,A.asz,A.adz,A.at_,A.uT,A.aMm,A.CM,A.uk,A.qG,A.aRN,A.aMo,A.a_S,A.a_R,A.ue,A.aNP,A.eU,A.bax,A.aOU,A.a92,A.zG,A.a0R,A.aPd,A.DP,A.aT7,A.wF,A.aKz,A.aRt,A.B9,A.oc,A.a_Q,A.a88,A.oQ,A.yE,A.vB,A.aN1,A.NV,A.a1o,A.oi,A.aDc,A.asO,A.aIU,A.aqO,A.a0N,A.aMG,A.aVC,A.a65,A.apK,A.aa8,A.aMJ,A.aML,A.aPH,A.aMP,A.Xm,A.aMX,A.a1O,A.aZ1,A.bgT,A.p7,A.Ez,A.FA,A.b56,A.aMQ,A.bnp,A.aNm,A.a0A,A.a0z,A.aKJ,A.ape,A.a6h,A.qN,A.W3,A.aDq,A.J5,A.a86,A.a84,A.yB,A.ay3,A.ay4,A.aR1,A.aQY,A.aet,A.S,A.lT,A.aCV,A.aCX,A.aSl,A.aSp,A.aX6,A.a6z,A.aTb,A.Xe,A.xW,A.aMi,A.DM,A.arU,A.aBF,A.aU5,A.aU4,A.b4I,A.b4J,A.b4H,A.DZ,A.aES,A.a8R,A.a7w,A.aUu,A.pQ,A.oE,A.J6,A.J8,A.J7,A.OR,A.aTT,A.a9s,A.ex,A.rb,A.aqK,A.XA,A.axR,A.axS,A.ON,A.axM,A.WJ,A.DY,A.B3,A.aCL,A.aU8,A.aTU,A.aBS,A.axv,A.awP,A.dc,A.ays,A.a_l,A.a_q,A.awe,A.atn,A.aAd,A.a0i,A.aAQ,A.pP,A.aaa,A.El,A.bmA,A.b59,A.hg,A.My,A.ag4,A.afU,A.bdf,A.b08,A.b7,A.bI,A.bfZ,A.jS,A.b7e,A.vq,A.ic,A.ED,A.b6o,A.aiE,A.FB,A.rg,A.aj0,A.asx,A.PC,A.b_h,A.eJ,A.Gb,A.zH,A.bgR,A.amu,J.BJ,J.di,A.Al,A.adV,A.EA,A.Xh,A.bw,A.aRe,A.ci,A.bD,A.va,A.a00,A.a9c,A.a8m,A.a8n,A.a_L,A.a0m,A.Ep,A.K_,A.Bk,A.a9W,A.hp,A.nI,A.KK,A.AC,A.vs,A.m1,A.a1g,A.aV3,A.a54,A.Jd,A.TI,A.bcj,A.aEX,A.Kw,A.oo,A.Fk,A.za,A.DJ,A.be8,A.aZY,A.b8b,A.aho,A.u7,A.m_,A.afO,A.Ua,A.bea,A.KC,A.U7,A.PX,A.acW,A.RW,A.lp,A.WD,A.fN,A.ri,A.fd,A.ze,A.mh,A.a_,A.acV,A.vG,A.al2,A.acX,A.acx,A.aew,A.b0L,A.Fy,A.EO,A.rw,A.Rf,A.F8,A.amL,A.amK,A.vm,A.j2,A.b96,A.vt,A.Fg,A.iS,A.agW,A.Uh,A.QS,A.aeU,A.Fh,A.akL,A.akK,A.p9,A.nr,A.Xv,A.Xb,A.PZ,A.ad2,A.Xl,A.akq,A.zf,A.b8V,A.b8S,A.b_a,A.be9,A.amh,A.vL,A.vN,A.aS,A.bj,A.a5l,A.Ok,A.zj,A.ip,A.aO,A.aF,A.akU,A.r1,A.Nf,A.cD,A.Ul,A.aVh,A.mn,A.Je,A.uI,A.asZ,A.blX,A.Rj,A.aeg,A.bN,A.a0e,A.bec,A.aXu,A.ub,A.adj,A.io,A.wS,A.jl,A.zv,A.Jm,A.afx,A.nv,A.Oe,A.aSa,A.ke,A.il,A.no,A.a53,A.b8N,A.bbp,A.b8O,A.a_O,A.aZZ,A.TL,A.rj,A.as2,A.a5a,A.I,A.bg,A.l6,A.k9,A.A,A.xy,A.bmv,A.uJ,A.ol,A.a13,A.q0,A.dX,A.yA,A.lX,A.qx,A.eI,A.eb,A.aRc,A.lL,A.oj,A.q2,A.r4,A.OQ,A.hO,A.b_,A.cW,A.ug,A.arA,A.a0y,A.aq1,A.aqN,A.ar4,A.aB2,A.aeF,A.akM,A.ajP,A.Hu,A.Aj,A.fZ,A.agg,A.bab,A.a15,A.le,A.lC,A.H7,A.Xs,A.cP,A.ZZ,A.a1L,A.vJ,A.Fj,A.KI,A.ZX,A.a0L,A.asH,A.aMH,A.mE,A.avp,A.aB1,A.yg,A.Xd,A.hy,A.avq,A.fG,A.aZ3,A.i2,A.wZ,A.JL,A.Cs,A.a5e,A.bci,A.aKQ,A.i6,A.aUV,A.EJ,A.X7,A.aeI,A.aA,A.aRI,A.mg,A.b9V,A.ajg,A.arg,A.a1_,A.a_F,A.L7,A.WC,A.fH,A.bo,A.C_,A.aV1,A.awM,A.NO,A.NP,A.aRD,A.aRF,A.Jc,A.asp,A.L5,A.afs,A.aIk,A.azd,A.hI,A.pZ,A.azf,A.avW,A.agM,A.aRH,A.acN,A.t1,A.LZ,A.GU,A.GT,A.w_,A.t0,A.b4,A.hP,A.RV,A.aUy,A.agd,A.ZY,A.Qv,A.aep,A.X2,A.aeb,A.U2,A.LI,A.aee,A.aec,A.fD,A.afC,A.WW,A.baf,A.aY,A.mC,A.iu,A.boD,A.lS,A.Me,A.bfW,A.aX5,A.Mw,A.nq,A.cv,A.eD,A.Bu,A.F6,A.aAr,A.bck,A.JF,A.pJ,A.mH,A.mI,A.iM,A.ai6,A.h6,A.acq,A.adF,A.adP,A.adK,A.adI,A.adJ,A.adH,A.adL,A.adT,A.T3,A.adR,A.adS,A.adQ,A.adN,A.adO,A.adM,A.adG,A.wY,A.AT,A.kL,A.G5,A.q5,A.C2,A.KF,A.C1,A.rC,A.bov,A.aMY,A.a1H,A.adW,A.G1,A.aMT,A.aMW,A.iw,A.zu,A.aQ1,A.aQ2,A.a7C,A.agJ,A.DU,A.uU,A.al9,A.alc,A.alb,A.ald,A.ala,A.TU,A.adw,A.aAu,A.km,A.v8,A.Sz,A.jL,A.act,A.a7P,A.acP,A.rl,A.ad1,A.agZ,A.ade,A.adf,A.adh,A.adk,A.adl,A.ahi,A.adm,A.ado,A.ads,A.adt,A.adv,A.aej,A.ael,A.aeH,A.aeM,A.aeX,A.mf,A.b9U,A.af3,A.cg,A.afd,A.rm,A.afk,A.aft,A.azm,A.ayr,A.ayq,A.azl,A.afA,A.agc,A.on,A.BI,A.dp,A.a0g,A.aen,A.bbN,A.xe,A.agp,A.agP,A.a__,A.ah9,A.ah7,A.ah8,A.ahq,A.ahr,A.ahs,A.ahK,A.a3P,A.qr,A.ahP,A.Gd,A.aiv,A.aiA,A.aiF,A.aPQ,A.Nj,A.asN,A.aJR,A.acu,A.Ni,A.ak0,A.ak1,A.ak2,A.ak3,A.agu,A.akx,A.aRP,A.aRQ,A.aRR,A.aqp,A.akG,A.pp,A.akX,A.al0,A.anO,A.anP,A.al5,A.ali,A.OW,A.alp,A.aly,A.alC,A.bld,A.Fa,A.afm,A.ams,A.alE,A.alH,A.alJ,A.am8,A.iG,A.a9j,A.a5N,A.Hi,A.add,A.a0d,A.as8,A.Bw,A.ada,A.aZ7,A.eh,A.b_b,A.aAS,A.aC9,A.adn,A.ahS,A.q7,A.nZ,A.a4V,A.fY,A.iQ,A.agf,A.agh,A.aCy,A.W5,A.q9,A.akV,A.CN,A.lf,A.bfn,A.alm,A.Ff,A.E0,A.mj,A.alx,A.aSi,A.b09,A.baq,A.bg_,A.Pb,A.N3,A.ahV,A.e_,A.b2x,A.aZ4,A.bk,A.el,A.au9,A.yQ,A.aVy,A.b91,A.GY,A.Wj,A.agB,A.a1E,A.BS,A.ahj,A.and,A.bp,A.fk,A.aD,A.ux,A.bd9,A.akc,A.nl,A.a6Q,A.anC,A.hK,A.MF,A.hL,A.a8_,A.aQJ,A.uG,A.ak8,A.a8v,A.akA,A.aOJ,A.aRV,A.aRW,A.aRU,A.mV,A.aOP,A.Pu,A.uB,A.FK,A.pb,A.F4,A.aMs,A.oL,A.E4,A.yT,A.P4,A.a80,A.aR0,A.Ap,A.Xj,A.AL,A.e8,A.aka,A.akd,A.rh,A.nK,A.ry,A.nk,A.ake,A.aQZ,A.Wz,A.zb,A.t5,A.H6,A.aqB,A.NJ,A.aqM,A.Au,A.agy,A.aB_,A.Kk,A.a1n,A.aDn,A.agz,A.n1,A.xZ,A.L8,A.aSX,A.aCW,A.aCY,A.aSm,A.aSq,A.aIV,A.Le,A.t7,A.n2,A.ayi,A.a6d,A.CW,A.aug,A.aiG,A.aiH,A.aNo,A.eW,A.fq,A.uS,A.Og,A.auj,A.apV,A.oU,A.alk,A.uY,A.ahm,A.bf6,A.yP,A.aU9,A.D0,A.dS,A.aUz,A.aU7,A.yz,A.aUa,A.a9t,A.OS,A.anl,A.a9R,A.aVa,A.acs,A.Fv,A.vh,A.lA,A.a51,A.pr,A.e0,A.aat,A.f5,A.XE,A.a_s,A.Pf,A.ko,A.bcX,A.ad0,A.azQ,A.afH,A.afF,A.afV,A.F3,A.afM,A.EM,A.aeJ,A.avF,A.ano,A.ann,A.agk,A.X8,A.ar6,A.LK,A.bag,A.aPo,A.tH,A.x0,A.aR_,A.b5m,A.rq,A.xP,A.db,A.Xf,A.iU,A.Fx,A.a_4,A.qi,A.aUs,A.xx,A.C4,A.L1,A.lZ,A.aPw,A.a9M,A.vv,A.ajE,A.lW,A.zz,A.aM0,A.TK,A.ud,A.afz,A.yr,A.aIt,A.aMI,A.ne,A.uC,A.a1Q,A.a7O,A.aQg,A.bh1,A.aRS,A.ni,A.jM,A.aac,A.a7Y,A.a7V,A.awN,A.xl,A.akr,A.amP,A.akl,A.ako,A.kg,A.oR,A.QE,A.Of,A.a9x,A.a7Z,A.nu,A.OZ,A.ho,A.e6,A.Qq,A.E9,A.Ef,A.amb,A.agI,A.RY,A.bQ,A.bK,A.arm,A.aCa,A.arn,A.asy,A.arl,A.mM,A.a4Z,A.lD,A.aIf,A.azc,A.a0Y,A.a6p,A.aWM,A.a0B,A.a0C,A.a0E,A.a8z,A.a8A,A.a8B,A.a8C,A.a8D,A.a8E,A.aqg,A.KH,A.E6,A.kk,A.aqf,A.aF3,A.a52,A.azI,A.a_k,A.ahg,A.aPv,A.ZR,A.avm,A.aS3,A.arj,A.a93,A.w7,A.Ov,A.acU,A.aTc,A.wi,A.WR,A.WS,A.aqo,A.L2,A.AM,A.ua,A.kA,A.aKB,A.a55,A.aKC,A.aSZ,A.Eg,A.a1S,A.apH,A.acS,A.apy,A.nf,A.wt,A.az6,A.aEL,A.aKf,A.aw_,A.a7y,A.i1,A.aMa,A.aJ2,A.aKo,A.aVY,A.WV,A.mZ,A.a87,A.Ea,A.a9F,A.aVf,A.dy,A.aBV,A.aBW,A.HJ,A.Ik,A.Im,A.wy,A.ch,A.aBX,A.AS,A.auH,A.pY,A.k4,A.aC2,A.oP,A.k1,A.wR,A.z4,A.a8o,A.ar9,A.ar8,A.avg,A.r2,A.C5,A.tw,A.ma,A.aF4,A.aLL,A.baR,A.h0,A.a24,A.Mj,A.Ro,A.vI,A.Wo,A.aqi,A.aFa,A.aF9,A.a1V,A.aFb,A.a1U,A.aFc,A.LR,A.IU,A.fW,A.k_,A.ib,A.arB,A.k5,A.aVL,A.yX,A.aTQ,A.aII,A.a4e,A.a4g,A.a4h,A.Ln,A.a4b,A.aJE,A.kV,A.hH,A.a4f,A.a4l,A.a4m,A.a4n,A.Ch,A.a4o,A.a4p,A.e3,A.aJ1,A.aJ7,A.aJ8,A.aJ9,A.aJQ,A.aJ5,A.aJ6,A.a4i,A.jv,A.aJb,A.Co,A.a4c,A.Lg,A.a4k,A.a4r,A.a4C,A.a4G,A.a4I,A.a4J,A.a4v,A.a4y,A.a4t,A.a4u,A.a4w,A.a4x,A.a4D,A.aJH,A.aJI,A.aJG,A.aJO,A.aJM,A.a4a,A.Li,A.xJ,A.Ci,A.Ce,A.u4,A.xI,A.Cn,A.AY,A.avZ,A.aJd,A.u6,A.a4z,A.qn,A.u5,A.a4E,A.ju,A.a4j,A.aJe,A.Lh,A.aFw,A.aFu,A.aPe,A.a8g,A.a14,A.aLW,A.mL,A.Pm,A.aLP,A.LW,A.uR,A.xT,A.LT,A.XD,A.aT0,A.a5R,A.a5U,A.dM,A.aTs,A.a5W,A.aTr,A.a44,A.AE,A.a5S,A.b6,A.v1,A.a21,A.ha,A.a1Z,A.fL,A.aao,A.as6,A.aqe,A.aqh,A.aqj,A.aqk,A.MC,A.aex,A.j1,A.a6o,A.a6n,A.amA,A.JD,A.b2S,A.a_U,A.Se,A.Re,A.Du,A.aN0,A.aAM,A.aSb,A.a8M,A.DF,A.aBg,A.j3,A.nG,A.np,A.a8P,A.aSY,A.aqx,A.a0D,A.aNk,A.Pp,A.aVq,A.aa_,A.l4,A.baz,A.ahR,A.b0B,A.aVu,A.aln,A.alj,A.aa2,A.Mt,A.a6t,A.zt,A.Fz,A.ZS,A.aVt,A.aVs,A.bbw,A.awr,A.d3,A.kf,A.a12,A.a_B,A.mw,A.uj,A.l2,A.iy,A.b_7,A.bay,A.M3,A.aCw,A.an,A.mT,A.oD,A.Or,A.wT,A.OU,A.OO,A.yM,A.dZ,A.TP,A.ns,A.ajB,A.amp,A.DQ,A.IO,A.Oy,A.DR,A.px,A.aaf,A.a94,A.a_X,A.aa3,A.kH,A.xD,A.z3,A.xC,A.bW,A.ur,A.hQ,A.nx,A.z5,A.aOY,A.rc,A.aVP,A.aVR,A.aRf,A.aWh,A.t3,A.c4,A.a7k,A.by,A.blY,A.Rh,A.hf,A.vc,A.ack,A.aXr,A.ace,A.aX8,A.aXs,A.aXt,A.acl,A.aoh,A.amF,A.aX9,A.aci,A.XG,A.amC,A.PO,A.acj]) +p(A.tf,[A.Xt,A.apG,A.apC,A.apD,A.apE,A.asm,A.asn,A.ash,A.asi,A.asg,A.ask,A.asl,A.asj,A.awa,A.awf,A.Xu,A.biU,A.biV,A.biW,A.biT,A.aKA,A.aBJ,A.aBK,A.aBH,A.aBI,A.bjp,A.azx,A.azz,A.azw,A.biZ,A.bj_,A.bhU,A.bhV,A.bhW,A.bhX,A.bhY,A.bhZ,A.bi_,A.bi0,A.aD8,A.aD9,A.aDa,A.aDb,A.aDi,A.aDm,A.bjR,A.aJT,A.aRK,A.aRL,A.ay0,A.ay_,A.axW,A.axX,A.axY,A.axV,A.axZ,A.axT,A.ay2,A.aZf,A.aZe,A.aZg,A.aVE,A.aVF,A.aVG,A.aVH,A.aPI,A.aZ2,A.bgU,A.baF,A.baI,A.baJ,A.baK,A.baL,A.baM,A.baN,A.baO,A.aNq,A.avn,A.aph,A.api,A.aCF,A.aCG,A.bhq,A.aQw,A.aQx,A.ay5,A.auq,A.aIL,A.aTP,A.aTY,A.aTZ,A.aU_,A.aU0,A.aU2,A.arV,A.axN,A.axO,A.aul,A.aum,A.aun,A.aC1,A.aC_,A.azi,A.aBT,A.awQ,A.atl,A.aVD,A.bhR,A.b5d,A.b5e,A.b7c,A.b7d,A.b6X,A.b6Z,A.b6W,A.b6V,A.b6S,A.b6R,A.be5,A.b6N,A.b6O,A.b6P,A.b6I,A.b6J,A.b6K,A.b7h,A.b7f,A.b7j,A.b6u,A.b6p,A.b6r,A.b6F,A.b6B,A.b6A,A.b6C,A.b6D,A.b6G,A.b6z,A.b6t,A.b6s,A.b6x,A.b6y,A.b_r,A.b_s,A.b_w,A.b_x,A.b_u,A.b_t,A.b_v,A.b_y,A.b76,A.b78,A.b77,A.b75,A.b70,A.b71,A.b72,A.bgS,A.bgQ,A.bgP,A.bgw,A.bgy,A.bgB,A.bgz,A.bgA,A.bgL,A.bgM,A.bgN,A.bgK,A.bgI,A.bgJ,A.bgO,A.bgC,A.bgG,A.arY,A.a1e,A.a9h,A.aD2,A.aD1,A.bjl,A.bjn,A.beb,A.aYG,A.aYF,A.bhg,A.bhf,A.bet,A.bev,A.beu,A.aAm,A.aAl,A.aAf,A.b4S,A.b4Z,A.b51,A.aSy,A.aSB,A.aSQ,A.aSG,A.aSE,A.aSO,A.aSL,A.aSR,A.aSI,A.aSM,A.be4,A.bcE,A.b5b,A.b5a,A.b0w,A.b95,A.aFB,A.aSd,A.aSe,A.aSh,A.bhw,A.b8R,A.asX,A.bg1,A.bg7,A.bhy,A.bhz,A.aIC,A.aIF,A.aPz,A.aSu,A.b2Y,A.b3_,A.bhp,A.b1V,A.b1U,A.b3V,A.b3T,A.b3U,A.b3Y,A.b3X,A.b3W,A.b43,A.b45,A.b42,A.b4_,A.b3Z,A.b47,A.b46,A.bbq,A.bbt,A.bbs,A.bbu,A.bbr,A.aQC,A.aQG,A.aQF,A.aQD,A.aQE,A.aNA,A.aNC,A.aNB,A.bjv,A.bjS,A.bjT,A.biC,A.aD5,A.bis,A.aB5,A.aB3,A.aq5,A.b4h,A.azr,A.azs,A.azp,A.azq,A.arI,A.arF,A.aJX,A.aCm,A.aCn,A.aCi,A.aCg,A.aCh,A.aSW,A.arM,A.arN,A.arP,A.arS,A.au0,A.au1,A.aIv,A.bjL,A.avy,A.avA,A.avB,A.avD,A.avv,A.avw,A.avE,A.aA8,A.aA5,A.aKc,A.bjd,A.auf,A.biM,A.biN,A.bix,A.aqQ,A.aqU,A.aqV,A.aqW,A.aqX,A.aqY,A.aqZ,A.ar_,A.ar0,A.b2q,A.b2p,A.awD,A.awE,A.awA,A.awx,A.awz,A.awB,A.awC,A.b2B,A.b2G,A.awJ,A.awI,A.aF6,A.aF7,A.aF8,A.biJ,A.biK,A.bdu,A.bdB,A.bds,A.bdr,A.bdp,A.bdo,A.ayh,A.b3O,A.b3R,A.b3N,A.b9S,A.aIn,A.bjY,A.aya,A.ayb,A.ayc,A.ayd,A.aye,A.ayf,A.b0c,A.b0b,A.b0a,A.b0h,A.b0i,A.b0k,A.b0t,A.b0u,A.bbI,A.bbJ,A.bbH,A.bbK,A.bbL,A.at8,A.aKv,A.b0v,A.azC,A.azD,A.azE,A.biD,A.biE,A.aSj,A.aTv,A.b53,A.aMR,A.aMS,A.aMZ,A.aPW,A.aQ_,A.aq9,A.aqa,A.aqb,A.awt,A.awu,A.awv,A.axJ,A.axK,A.axL,A.aps,A.apt,A.apu,A.b9t,A.b9s,A.aI3,A.b2e,A.b2f,A.b9X,A.aIP,A.aZa,A.aZQ,A.aZR,A.aZS,A.aZr,A.aZs,A.aZt,A.aZE,A.aZJ,A.aZK,A.aZL,A.aZM,A.aZN,A.aZO,A.aZP,A.aZu,A.aZv,A.aZw,A.aZH,A.aZp,A.aZI,A.aZo,A.aZx,A.aZy,A.aZz,A.aZA,A.aZB,A.aZC,A.aZD,A.aZF,A.aZG,A.b_4,A.b_5,A.b_3,A.b_1,A.b_0,A.b_2,A.avl,A.b2o,A.b2k,A.b2l,A.b2i,A.b2g,A.b2h,A.b2j,A.b2N,A.b2P,A.b2R,A.b2O,A.b2Q,A.b7t,A.b7v,A.b7u,A.b48,A.b49,A.b4b,A.b4a,A.b4c,A.b4d,A.b4f,A.b4e,A.bal,A.bam,A.bao,A.bap,A.ban,A.b8h,A.b8e,A.bbP,A.b8r,A.b8o,A.b8m,A.b8t,A.b8u,A.b8v,A.b8s,A.b8p,A.b8q,A.b8n,A.aF_,A.bbW,A.aUt,A.b9L,A.b9v,A.b9w,A.b9x,A.b9y,A.bah,A.baj,A.bak,A.bai,A.bh5,A.bh6,A.bh7,A.bh8,A.aMd,A.aNW,A.aPN,A.b9E,A.b9B,A.b9D,A.b9C,A.b9A,A.bdO,A.bc4,A.bc2,A.bc1,A.bdI,A.bdW,A.bdU,A.bdX,A.bdZ,A.be_,A.be1,A.b9N,A.b9O,A.b9P,A.bes,A.bej,A.bel,A.bek,A.beh,A.beo,A.bep,A.beq,A.ben,A.bem,A.bei,A.beF,A.beB,A.bey,A.bez,A.beH,A.bf3,A.bf5,A.bf4,A.bfl,A.bfm,A.bi6,A.bc5,A.bc6,A.bc7,A.bc9,A.bca,A.aYz,A.aUE,A.aUI,A.aUS,A.aKr,A.aKs,A.b_f,A.b_e,A.b_g,A.as9,A.asa,A.asb,A.bih,A.bhT,A.aEU,A.aZU,A.aCt,A.aCo,A.aq_,A.aCz,A.aCA,A.aCK,A.aCJ,A.bdj,A.bdk,A.bdl,A.aUx,A.aUw,A.aUv,A.aUA,A.aAc,A.aP9,A.aP5,A.aqI,A.aO8,A.aOd,A.aOc,A.aOh,A.aIY,A.aIX,A.aOv,A.aOw,A.aOr,A.aOs,A.aOt,A.aNZ,A.aOB,A.aOC,A.aOK,A.aOM,A.aOO,A.aON,A.aOI,A.aOH,A.aOT,A.aOR,A.aOS,A.aOQ,A.aOX,A.aOW,A.aP4,A.aQ4,A.aQ3,A.aUH,A.aR4,A.aR2,A.bde,A.bdd,A.bdb,A.bdc,A.bhn,A.aR7,A.aR6,A.aQQ,A.aQU,A.aQS,A.aQV,A.aQT,A.aQW,A.aQX,A.ary,A.aMF,A.aq3,A.aYE,A.aRo,A.b0y,A.aFe,A.aFg,A.aqz,A.aIB,A.ayj,A.aPk,A.aPl,A.aPj,A.azg,A.aTW,A.aUo,A.aUn,A.aUp,A.baD,A.bhP,A.apm,A.app,A.apn,A.apo,A.apq,A.b4G,A.b4D,A.b4B,A.b4C,A.b4F,A.aYw,A.aYx,A.aYy,A.bgV,A.bgW,A.b4M,A.aYP,A.aYU,A.bfY,A.bfX,A.asd,A.bgZ,A.bh_,A.bgY,A.asP,A.aui,A.aw3,A.aw4,A.axn,A.awZ,A.axo,A.axq,A.axr,A.ax_,A.axp,A.ax3,A.awY,A.awR,A.ax8,A.ax7,A.ax9,A.bcY,A.azT,A.azS,A.bhM,A.azW,A.azY,A.azX,A.bbC,A.avH,A.avI,A.avK,A.avL,A.avG,A.avS,A.avT,A.avU,A.avV,A.bbz,A.bbA,A.bbx,A.aNI,A.b88,A.axC,A.axA,A.axz,A.axD,A.axF,A.axx,A.axw,A.axB,A.axy,A.aMj,A.aJS,A.aAz,A.aAE,A.aAG,A.aAI,A.aAK,A.aAB,A.aAD,A.b0D,A.b0E,A.b0F,A.b0I,A.b0J,A.b0K,A.aBe,A.aBc,A.aBb,A.aC5,A.bjO,A.b7B,A.aCD,A.aCC,A.aCB,A.aY9,A.aYa,A.aYb,A.aYc,A.aYd,A.aYe,A.aYf,A.aYg,A.aYj,A.aYo,A.aYp,A.aYq,A.aYr,A.aYs,A.aYt,A.aYi,A.aYh,A.aYk,A.aYl,A.aYm,A.aYn,A.aCI,A.bi3,A.bi4,A.bi5,A.b9m,A.b9n,A.aFs,A.aFt,A.aFr,A.aFy,A.aI9,A.aIb,A.aIa,A.aPy,A.aPx,A.aKn,A.bcI,A.bcG,A.bcK,A.aKk,A.aKm,A.aKj,A.aKl,A.aM_,A.bcf,A.bcd,A.bce,A.bcc,A.bbS,A.bbT,A.aMb,A.bav,A.bcA,A.bcO,A.bcM,A.aV0,A.aUY,A.ba5,A.ba4,A.ba1,A.aIQ,A.aQc,A.aQd,A.aQe,A.aQf,A.aQi,A.aQj,A.aQk,A.aQm,A.aQu,A.aQr,A.aQt,A.bcZ,A.aQz,A.aNu,A.aNy,A.aNz,A.aK6,A.aK7,A.aK8,A.aK2,A.aK3,A.aK4,A.aK5,A.aFd,A.aS0,A.bd2,A.bd3,A.bd4,A.bd5,A.aQO,A.aQM,A.aQN,A.aQP,A.aQL,A.aQK,A.bd7,A.bft,A.bfv,A.bfx,A.bfz,A.bfB,A.aV9,A.bil,A.aVQ,A.aX1,A.arp,A.arq,A.aWN,A.aWO,A.b55,A.atK,A.atJ,A.baP,A.avi,A.avj,A.avk,A.b4m,A.b4n,A.b4o,A.b4p,A.b4q,A.b4r,A.b4s,A.b4t,A.b4k,A.aVJ,A.aVK,A.aS6,A.aS5,A.aS7,A.b9p,A.b9q,A.b9r,A.bfR,A.arr,A.aTh,A.aTg,A.bgm,A.bgn,A.bjc,A.aqn,A.aqL,A.bia,A.bib,A.arh,A.arX,A.aId,A.biS,A.aCT,A.kB,A.aKF,A.aKE,A.bkc,A.bkd,A.bke,A.atx,A.aty,A.apM,A.apO,A.apQ,A.apU,A.bjV,A.aEM,A.aEN,A.aw0,A.aJ3,A.aKp,A.aW_,A.aW1,A.aW2,A.aNj,A.aT5,A.aRq,A.aDy,A.aDz,A.aDw,A.aDx,A.aDA,A.aDB,A.aDv,A.aDt,A.aDu,A.aDs,A.aWb,A.aWc,A.aW9,A.aWa,A.aWf,A.aWg,A.aW3,A.aW8,A.aW6,A.aW7,A.aW5,A.aEH,A.aEI,A.aEJ,A.aEB,A.aEC,A.aEx,A.aED,A.aEy,A.aEK,A.aEz,A.aEA,A.aEF,A.aEE,A.as0,A.auJ,A.auI,A.ayx,A.ayy,A.ayz,A.ayA,A.ayB,A.ayG,A.ayD,A.aIT,A.aNc,A.aNd,A.av9,A.ava,A.avb,A.auC,A.bk2,A.az3,A.az4,A.b84,A.b83,A.b85,A.b86,A.b87,A.b7Y,A.b8_,A.b7Z,A.aZ_,A.aZ0,A.aEg,A.aE7,A.aE5,A.aE6,A.aEk,A.aEl,A.aEf,A.aEe,A.aEc,A.aEn,A.aEh,A.aEj,A.aEp,A.aEq,A.aEr,A.aEt,A.aEu,A.aEw,A.aE8,A.aE9,A.aDP,A.aDZ,A.aE_,A.aDX,A.aDG,A.aE4,A.atb,A.aTH,A.b7P,A.b7N,A.b7O,A.b7Q,A.b7E,A.b7S,A.aVx,A.apX,A.ba8,A.ba6,A.ba7,A.aO2,A.aO3,A.aO4,A.aO5,A.aUQ,A.b_U,A.b_O,A.b_P,A.b_N,A.b_Q,A.b_R,A.b_L,A.b_M,A.b_E,A.b07,A.b06,A.b05,A.b04,A.b_Z,A.b_X,A.b_W,A.b01,A.b0_,A.beL,A.beM,A.asT,A.auB,A.b1M,A.b1B,A.b1L,A.b1y,A.b1H,A.b1E,A.b1D,A.aLV,A.ayU,A.ayX,A.ayW,A.ayQ,A.ayP,A.ayR,A.ayS,A.b3y,A.b3u,A.b3G,A.b3D,A.b3E,A.b31,A.beZ,A.bf1,A.bf2,A.beW,A.beP,A.beO,A.bbo,A.b9h,A.b9f,A.b9e,A.b9b,A.b9c,A.bgt,A.bgv,A.bgq,A.b0Z,A.ayu,A.ayv,A.aVb,A.aVc,A.aWL,A.aWJ,A.aWH,A.aWI,A.aWK,A.aWG,A.aWW,A.aWV,A.aWY,A.aWZ,A.auL,A.b1r,A.b1o,A.b1s,A.auK,A.b1x,A.b1w,A.aLM,A.aLO,A.aKh,A.auU,A.auV,A.av2,A.av3,A.auY,A.auZ,A.av_,A.auO,A.auX,A.auP,A.auQ,A.bb7,A.bb6,A.bb3,A.bb4,A.bb5,A.bb1,A.bb2,A.baX,A.baY,A.baZ,A.b1h,A.b1l,A.ara,A.av4,A.aBO,A.aKM,A.aMt,A.aVo,A.aFE,A.aFF,A.aFX,A.aFY,A.aFW,A.aHL,A.aHM,A.aHH,A.aHI,A.aHv,A.aHw,A.aHD,A.aHE,A.aHB,A.aHC,A.aHF,A.aHG,A.aHx,A.aHy,A.aHz,A.aHA,A.aGA,A.aGB,A.aGz,A.aHJ,A.aHK,A.aGx,A.aGy,A.aGw,A.aFU,A.aFV,A.aFP,A.aFQ,A.aFO,A.aGU,A.aGV,A.aGT,A.aGR,A.aGS,A.aGQ,A.aHt,A.aHu,A.aHb,A.aHc,A.aH8,A.aH9,A.aH7,A.aHa,A.aGg,A.aGh,A.aGf,A.aGX,A.aGY,A.aGW,A.aGZ,A.aG5,A.aG6,A.aG4,A.aFS,A.aFT,A.aFR,A.aHq,A.aHr,A.aHp,A.aHs,A.aGu,A.aGv,A.aGt,A.aHe,A.aHf,A.aHd,A.aHg,A.aGj,A.aGk,A.aGi,A.aI_,A.aI0,A.aHZ,A.aI1,A.aGO,A.aGP,A.aGN,A.aHO,A.aHP,A.aHN,A.aHQ,A.aGD,A.aGE,A.aGC,A.aFL,A.aFM,A.aFK,A.aFN,A.aG2,A.aG3,A.aG1,A.aFH,A.aFI,A.aFG,A.aFJ,A.aG_,A.aG0,A.aFZ,A.aH4,A.aH5,A.aH3,A.aH6,A.aH0,A.aH1,A.aH_,A.aH2,A.aGc,A.aGe,A.aGb,A.aGd,A.aG8,A.aGa,A.aG7,A.aG9,A.aHm,A.aHn,A.aHl,A.aHo,A.aHi,A.aHj,A.aHh,A.aHk,A.aGq,A.aGs,A.aGp,A.aGr,A.aGm,A.aGo,A.aGl,A.aGn,A.aHW,A.aHX,A.aHV,A.aHY,A.aHS,A.aHT,A.aHR,A.aHU,A.aGK,A.aGM,A.aGJ,A.aGL,A.aGG,A.aGI,A.aGF,A.aGH,A.aJP,A.aJJ,A.aJa,A.aJk,A.aJl,A.aJi,A.aJj,A.aJp,A.aJq,A.aJn,A.aJo,A.aJy,A.aJw,A.aJx,A.aJv,A.aJt,A.aJu,A.aJr,A.aJB,A.aJC,A.aJD,A.aJz,A.aJA,A.bae,A.bdF,A.bh9,A.aKR,A.aKS,A.bj1,A.bj2,A.bj3,A.bj4,A.bj5,A.bj6,A.bj7,A.bj8,A.bj9,A.b0Y,A.b0W,A.b0X,A.b0V,A.b0U,A.b0R,A.b0P,A.b0M,A.b60,A.b5Z,A.b6_,A.b5U,A.b5X,A.b13,A.b1b,A.b1c,A.b1a,A.b2L,A.b5T,A.b5S,A.b5I,A.b5x,A.b5C,A.b5y,A.b5z,A.b5u,A.b5R,A.b5Q,A.b5N,A.b5L,A.b5K,A.b6c,A.b62,A.b63,A.b6b,A.b68,A.b67,A.b6n,A.b6g,A.b6f,A.baT,A.b3r,A.b3p,A.b3q,A.b3k,A.b3c,A.b33,A.b34,A.bcy,A.b7W,A.b7V,A.b7X,A.b80,A.b82,A.b81,A.aYY,A.aYZ,A.aFk,A.aLQ,A.aLR,A.aMe,A.aT1,A.aT2,A.aT3,A.aLG,A.aLH,A.aLI,A.aLJ,A.aLK,A.aLz,A.aLA,A.aLD,A.aLE,A.aLF,A.aLB,A.aL1,A.aL_,A.aL0,A.aL2,A.aL3,A.aKY,A.aKZ,A.aL4,A.aL7,A.aL8,A.aLk,A.aLl,A.aLm,A.aLq,A.aLr,A.aLs,A.aLt,A.aLu,A.aLv,A.aLw,A.aLx,A.aLn,A.aLo,A.aLp,A.aLe,A.aLf,A.aLg,A.aLh,A.aLi,A.aL9,A.aLa,A.aLb,A.aLc,A.aLd,A.aKV,A.aLY,A.aLZ,A.apv,A.aY6,A.aXY,A.aXQ,A.aXR,A.aXS,A.aY4,A.aXG,A.aXB,A.aXC,A.aXA,A.aXz,A.asG,A.asF,A.asC,A.asD,A.b_p,A.b_n,A.avf,A.ave,A.avd,A.b8D,A.b8E,A.aCO,A.aCM,A.b8H,A.b8I,A.b8X,A.aLU,A.aM9,A.asR,A.asS,A.bin,A.bii,A.bi9,A.aNJ,A.aNK,A.aNM,A.aNN,A.aNO,A.bk3,A.aCH,A.b8a,A.aK_,A.aK0,A.bhD,A.bhE,A.bhK,A.aRv,A.bhL,A.aBi,A.aBh,A.aBj,A.aBl,A.aBn,A.aBk,A.aBB,A.biG,A.azK,A.azL,A.bgi,A.bgj,A.at0,A.aTj,A.aTk,A.aTl,A.aTm,A.aTn,A.aTo,A.aTp,A.aTq,A.bcp,A.bco,A.aTd,A.ast,A.aP_,A.bcg,A.aVU,A.aVV,A.aWl,A.aWm,A.aWn,A.aWo,A.aWp,A.aWq,A.aWr,A.aWs,A.aWv,A.aWy,A.aWz,A.aWB,A.aWx,A.aWD,A.aWA,A.aWC,A.aWE,A.aVX,A.aWk,A.aWj,A.b2X,A.b2Z,A.bhd,A.aXg,A.aXq,A.aXe,A.aXa,A.aXb,A.aXd,A.aXc,A.aXn,A.aXh,A.aXf,A.aXi,A.aXp,A.aXm,A.aXk,A.aXj,A.aXl,A.biR]) +p(A.Xt,[A.apF,A.aMx,A.aBL,A.aT9,A.aTa,A.aAT,A.aAU,A.bjr,A.bjs,A.azA,A.bhj,A.aDj,A.aDk,A.aDl,A.aDe,A.aDf,A.aDg,A.ay1,A.bju,A.aMK,A.baG,A.baH,A.b57,A.aNn,A.aNp,A.apf,A.avo,A.aPu,A.apg,A.aQv,A.ay8,A.ay7,A.ay6,A.aIM,A.aU1,A.aU3,A.aBG,A.auk,A.aC0,A.aTV,A.bhQ,A.axQ,A.b5c,A.b5j,A.b5i,A.b5f,A.b5g,A.b5h,A.b6U,A.b6Q,A.b6M,A.b7i,A.b6v,A.b6H,A.b73,A.b7l,A.b7m,A.b7n,A.b7o,A.b7p,A.b7q,A.b7r,A.b7s,A.bgD,A.bgF,A.bgH,A.as_,A.bjE,A.aN8,A.aYH,A.aYI,A.bfN,A.bfM,A.bhe,A.aYK,A.aYL,A.aYN,A.aYO,A.aYM,A.aYJ,A.aAj,A.aAi,A.aAh,A.b4O,A.b4V,A.b4U,A.b4R,A.b4Q,A.b4P,A.b4Y,A.b4X,A.b4W,A.b5_,A.b50,A.aSC,A.aSA,A.aSF,A.aSD,A.aSP,A.aSK,A.aSS,A.aSH,A.aSN,A.be3,A.be2,A.aY7,A.aZm,A.aZl,A.aZk,A.aZj,A.baA,A.b2_,A.bac,A.bhl,A.bhm,A.bie,A.bcD,A.bcC,A.bgb,A.bga,A.b44,A.b41,A.bbv,A.as3,A.as4,A.aD4,A.bit,A.ar5,A.aB4,A.b4j,A.azt,A.azo,A.arJ,A.aru,A.ars,A.arv,A.art,A.aCf,A.aCj,A.aCl,A.arR,A.avz,A.avC,A.avx,A.avt,A.avr,A.aA7,A.aA4,A.aA6,A.aKb,A.bjh,A.bji,A.bjj,A.bje,A.bjg,A.bkf,A.aqR,A.ar1,A.ar2,A.ar3,A.aqT,A.b2m,A.awy,A.b2D,A.b2C,A.b2A,A.b2z,A.b2F,A.b2H,A.b2E,A.awK,A.biL,A.bdx,A.bdv,A.bdw,A.bdt,A.bdA,A.bdy,A.bdz,A.bdm,A.bdq,A.bdn,A.bdD,A.aIh,A.aIi,A.aIj,A.aIr,A.aIs,A.b3M,A.b3P,A.b9T,A.aIl,A.aIo,A.aIp,A.aIm,A.b0d,A.b0e,A.b0f,A.b0o,A.b0n,A.b0m,A.at4,A.at3,A.at5,A.at6,A.b0l,A.b0s,A.b0q,A.b0r,A.b0p,A.azB,A.aqC,A.as1,A.aAt,A.aAs,A.aAw,A.aAx,A.aA1,A.aA_,A.aA0,A.aFo,A.aFn,A.aFm,A.awj,A.awo,A.awp,A.awk,A.awl,A.awm,A.awn,A.aMV,A.aN3,A.aPY,A.aPZ,A.aPU,A.aPV,A.aTJ,A.aTK,A.aTL,A.aTM,A.aTN,A.aqv,A.aqw,A.aqt,A.aqu,A.aqr,A.aqs,A.aqq,A.aAv,A.aXw,A.apA,A.aYC,A.aI2,A.aZd,A.aZb,A.aZc,A.b9Z,A.aZ9,A.aZT,A.aZq,A.b2n,A.bhO,A.bhN,A.b8d,A.b8g,A.b8i,A.b8c,A.b8f,A.b5l,A.b8w,A.bfq,A.bfp,A.bfr,A.aNT,A.aNR,A.aNS,A.aNU,A.aNV,A.aPO,A.aPP,A.aPK,A.aPL,A.aPM,A.b4g,A.aPS,A.aPR,A.b9K,A.b9J,A.b9I,A.b9G,A.b9H,A.b9F,A.bdM,A.bdN,A.bdK,A.bdL,A.bdJ,A.bc3,A.bdS,A.bdV,A.bdT,A.bdY,A.b9M,A.aTt,A.aTD,A.bex,A.beA,A.beC,A.beD,A.beE,A.bf7,A.bf9,A.bf8,A.bfa,A.bfd,A.bfe,A.bff,A.bfg,A.bfh,A.bfi,A.bfc,A.bfb,A.bfD,A.bfC,A.aUF,A.aUT,A.aCc,A.aCb,A.b98,A.aCq,A.aCr,A.aJU,A.bfo,A.aO6,A.aP7,A.aP8,A.b2y,A.aZ5,A.b8M,A.aO9,A.aEO,A.aEP,A.aJ0,A.aJ_,A.aIZ,A.aMh,A.aMg,A.aMf,A.aOu,A.aOx,A.aOy,A.aOL,A.aQ6,A.aQ7,A.aQ8,A.aQ9,A.arx,A.aRn,A.ayk,A.ayl,A.aNl,A.aPh,A.aPi,A.aPg,A.aTy,A.aUq,A.aUr,A.aXx,A.b4E,A.b4z,A.b4A,A.b4y,A.aYv,A.bgX,A.b4L,A.b4K,A.aYT,A.aYR,A.aYS,A.aYQ,A.aX3,A.aPp,A.aPq,A.b1X,A.b1Y,A.awV,A.axb,A.axc,A.axd,A.axe,A.axf,A.axg,A.axh,A.axi,A.axj,A.axk,A.axl,A.axm,A.ax4,A.awW,A.awX,A.awS,A.awU,A.axs,A.axt,A.axu,A.ax0,A.ax1,A.ax2,A.ax5,A.b4u,A.b4v,A.b4w,A.b4x,A.ar7,A.asu,A.asv,A.aAy,A.aAA,A.aAF,A.aAH,A.aAJ,A.aAL,A.aAC,A.b0H,A.b0G,A.b5q,A.b5p,A.b5o,A.b7x,A.b7A,A.b7z,A.b7C,A.b7D,A.apx,A.b8Z,A.b9_,A.b90,A.b9l,A.b9Q,A.aIO,A.bcJ,A.bcH,A.bcF,A.aKi,A.bbX,A.bar,A.aM4,A.aM3,A.aM5,A.aM2,A.aM1,A.bas,A.bau,A.bat,A.b58,A.bcz,A.aPm,A.bcR,A.bcS,A.bcQ,A.bcL,A.bcP,A.bcN,A.aUZ,A.aV_,A.ba_,A.aIS,A.aIR,A.aQb,A.bd8,A.aQh,A.aQq,A.aQs,A.aNx,A.aNv,A.aNw,A.aNr,A.aNs,A.aNt,A.aRz,A.aRM,A.aRZ,A.aS_,A.aRY,A.aS1,A.bd6,A.bfs,A.bfu,A.bfw,A.bfy,A.bfA,A.aUM,A.aUN,A.aUK,A.aUL,A.aYu,A.bik,A.bgd,A.aro,A.b54,A.b9z,A.bh0,A.atA,A.atB,A.atu,A.atv,A.atH,A.atE,A.atF,A.atG,A.aFz,A.aFA,A.atY,A.atZ,A.atW,A.atT,A.atU,A.atX,A.atV,A.aUJ,A.b4l,A.b1T,A.b1S,A.b1R,A.aS8,A.bfS,A.bfQ,A.bfO,A.bfP,A.bdR,A.aTi,A.bgo,A.bgp,A.aIc,A.aKG,A.atz,A.apP,A.apR,A.az7,A.aPD,A.aJ4,A.aW0,A.aW4,A.aEG,A.auD,A.au7,A.bk1,A.b9k,A.b9i,A.b9j,A.aO0,A.aEb,A.aEd,A.aEa,A.aEi,A.aEs,A.aDN,A.aDO,A.aDH,A.at9,A.ata,A.aTG,A.aTF,A.b7T,A.b7U,A.b7K,A.b7J,A.b7H,A.b7I,A.b7G,A.b7F,A.b7R,A.aVv,A.aVw,A.apY,A.apZ,A.ba9,A.baa,A.aO1,A.aUP,A.b_K,A.b_H,A.b_G,A.b_S,A.b_J,A.b_T,A.b_I,A.b_D,A.b_F,A.b_C,A.b_B,A.b_z,A.b03,A.b_Y,A.b00,A.b_V,A.beI,A.beK,A.beJ,A.b1C,A.b1z,A.b1N,A.b1O,A.b1A,A.b1J,A.b1I,A.b1F,A.b1G,A.aLT,A.ayZ,A.ayY,A.ayT,A.az_,A.az0,A.az1,A.ayV,A.ayN,A.ayM,A.ayO,A.b3z,A.b3v,A.b3w,A.b3x,A.b3s,A.b3H,A.b3C,A.b3A,A.b3B,A.b3F,A.b32,A.beX,A.beY,A.bf0,A.bf_,A.beS,A.beR,A.beT,A.beQ,A.beU,A.beN,A.bbd,A.bbe,A.bbl,A.bbj,A.bbk,A.bbm,A.bbh,A.bbi,A.bbn,A.bbf,A.bbg,A.b9d,A.b9a,A.b9g,A.b99,A.bgu,A.bgs,A.bgr,A.aWX,A.aWU,A.aWT,A.b1p,A.b1n,A.b1v,A.aLN,A.baS,A.auT,A.auN,A.auR,A.bb8,A.bb9,A.bba,A.bbb,A.bbc,A.bb_,A.bb0,A.baW,A.baV,A.baU,A.b1m,A.b1j,A.b1k,A.b1g,A.b1f,A.b1d,A.bfF,A.bfH,A.bfI,A.bfJ,A.arb,A.av5,A.aBP,A.aKN,A.aMu,A.aVp,A.aJs,A.b30,A.b0N,A.b0Q,A.b0T,A.b26,A.b28,A.b29,A.b20,A.b21,A.b22,A.b23,A.b24,A.b25,A.b2b,A.b2c,A.b2d,A.b2a,A.b3J,A.b3I,A.b3K,A.b5Y,A.b61,A.b5V,A.b5W,A.b11,A.b12,A.b10,A.b14,A.b1_,A.b16,A.b15,A.b18,A.b17,A.b19,A.b2I,A.b2M,A.b2J,A.b2K,A.b5D,A.b5v,A.b5w,A.b5A,A.b5B,A.b5H,A.b5F,A.b5M,A.b5O,A.b5P,A.b5J,A.b64,A.b66,A.b69,A.b65,A.b6a,A.b6l,A.b6e,A.b6d,A.b3i,A.b3j,A.b38,A.b3o,A.b3a,A.b3b,A.b3e,A.b3d,A.b3g,A.b36,A.b37,A.b3h,A.b3l,A.b3m,A.bcx,A.bcq,A.bcr,A.bcs,A.bct,A.bcu,A.bcv,A.bcw,A.ayg,A.atN,A.atM,A.aFi,A.aFj,A.aXW,A.aXX,A.aXJ,A.aXI,A.aXK,A.aXP,A.aXU,A.aXT,A.aXV,A.aXN,A.aXL,A.aY1,A.aY2,A.aY0,A.aY3,A.aY_,A.aY5,A.aXZ,A.aXD,A.auw,A.aux,A.asB,A.asE,A.b_o,A.b_i,A.b_j,A.b_k,A.b_l,A.b_m,A.b_q,A.b1P,A.b8z,A.b8A,A.b8B,A.b8C,A.b8x,A.b8y,A.aCN,A.b8G,A.b8F,A.b8J,A.b8K,A.aWR,A.aWS,A.aF2,A.aqA,A.aSt,A.aSs,A.bhC,A.bhH,A.bhI,A.bhF,A.bhG,A.bhJ,A.aBA,A.aBo,A.aBv,A.aBw,A.aBx,A.aBy,A.aBt,A.aBu,A.aBp,A.aBq,A.aBr,A.aBs,A.aBz,A.b5s,A.aqy,A.biF,A.azM,A.bgk,A.bge,A.bgg,A.bgh,A.aws,A.bcm,A.bcl,A.bcn,A.aOZ,A.aWu,A.aWw,A.aWt,A.aWi,A.bjB,A.bjA]) +q(A.arW,A.ajT) +p(A.b2U,[A.Xy,A.xY,A.ws,A.H2,A.Qj,A.Kl,A.l5,A.apj,A.x_,A.J3,A.tT,A.Br,A.Qm,A.afy,A.DW,A.Ph,A.a0U,A.d_,A.fv,A.Xo,A.aa5,A.M2,A.Kj,A.aD6,A.DK,A.DL,A.a5O,A.dV,A.Aq,A.WZ,A.Jo,A.iH,A.H_,A.au2,A.aVI,A.aa9,A.qw,A.oF,A.CQ,A.ul,A.r3,A.uV,A.uW,A.a9u,A.oX,A.a9i,A.X1,A.aqJ,A.yV,A.X5,A.Ho,A.qq,A.a0h,A.azu,A.azn,A.Bl,A.aCu,A.TJ,A.fj,A.ob,A.xg,A.Db,A.a1M,A.az5,A.awF,A.a_G,A.a_H,A.Ag,A.qf,A.qU,A.a8c,A.lx,A.Ew,A.Wg,A.alP,A.ZB,A.zg,A.Iv,A.pE,A.iV,A.Uz,A.a0x,A.zk,A.QV,A.aeV,A.a_A,A.a4O,A.JG,A.FM,A.QW,A.P0,A.EE,A.aC3,A.Hr,A.are,A.aZW,A.b_6,A.awG,A.b7w,A.vo,A.Ju,A.id,A.aEZ,A.xt,A.nH,A.xB,A.aXy,A.vC,A.aNY,A.b89,A.ks,A.bdP,A.a8q,A.FS,A.aRB,A.nn,A.a8G,A.al1,A.ber,A.aTC,A.aTB,A.G3,A.xA,A.No,A.MI,A.WK,A.aVz,A.Ab,A.X_,A.X4,A.Hn,A.BD,A.E_,A.aUC,A.Oi,A.D4,A.zn,A.a0f,A.a20,A.tZ,A.wq,A.JN,A.ZV,A.uH,A.yx,A.yO,A.Do,A.Nz,A.OX,A.a0I,A.Oj,A.Xc,A.Nr,A.vb,A.PN,A.yp,A.aua,A.BO,A.a1m,A.Oz,A.xn,A.kS,A.a_c,A.a99,A.a98,A.L0,A.aS2,A.aS9,A.jH,A.aTS,A.Jt,A.m0,A.a9Q,A.HK,A.lF,A.kF,A.Rp,A.oq,A.a9S,A.tB,A.azR,A.v4,A.a9N,A.EY,A.By,A.a5k,A.hU,A.a4T,A.U8,A.De,A.j5,A.T7,A.a5p,A.F7,A.akQ,A.FZ,A.aPt,A.a7Q,A.ys,A.a7U,A.a7R,A.Dl,A.KE,A.Od,A.Av,A.dq,A.asw,A.acT,A.a6a,A.kh,A.DC,A.DB,A.O7,A.Oa,A.oS,A.uO,A.O8,A.xQ,A.Aw,A.oa,A.tl,A.n9,A.A8,A.A9,A.Wp,A.Ws,A.a1D,A.yn,A.qm,A.Lj,A.tj,A.re,A.Px,A.lE,A.xo,A.z8,A.mB,A.oH,A.AB,A.kT,A.CU,A.H8,A.Il,A.hd,A.jj,A.Jv,A.azv,A.aNf,A.t4,A.ht,A.oO,A.JE,A.Bf,A.ayL,A.a0a,A.a_f,A.Pl,A.Ba,A.tY,A.qe,A.Pc,A.nw,A.Cg,A.Cf,A.hi,A.dY,A.xH,A.eS,A.dQ,A.kc,A.i4,A.xM,A.aJf,A.Wh,A.Sy,A.aLX,A.oB,A.a90,A.hx,A.fr,A.b9W,A.aa0,A.a7c,A.p2,A.a5V,A.CJ,A.tF,A.JI,A.hu,A.a5P,A.Os,A.Ot,A.P5,A.mQ,A.yN,A.mJ,A.Eo,A.bx,A.aak,A.eV,A.rf]) +q(A.a_P,A.aw1) +p(A.Xu,[A.biB,A.biy,A.aMw,A.bjq,A.bj0,A.aDh,A.aDd,A.axU,A.aSo,A.bhr,A.bk_,A.aBU,A.atm,A.b79,A.b7b,A.b5k,A.b6Y,A.b6T,A.be6,A.b6L,A.b7g,A.b7k,A.b6q,A.b6w,A.b6E,A.b74,A.b7_,A.bgx,A.bgE,A.aZX,A.arZ,A.asM,A.aN5,A.aD0,A.bjm,A.bhh,A.bip,A.aAn,A.aAk,A.aAg,A.b4T,A.b52,A.aSz,A.aSJ,A.aY8,A.aZn,A.bhk,A.bcB,A.aB0,A.aEY,A.aFC,A.aSg,A.aSf,A.b8W,A.b8T,A.aKx,A.bg5,A.aVl,A.aVi,A.aVj,A.aVk,A.bg4,A.bg3,A.bhx,A.aID,A.aIE,A.aIG,A.aIH,A.aPA,A.aPB,A.aSv,A.aSw,A.bee,A.bef,A.aXv,A.b40,A.aq6,A.aq7,A.b4i,A.arK,A.arH,A.arG,A.aJY,A.aJZ,A.aCk,A.aCe,A.arL,A.arO,A.arQ,A.asK,A.avu,A.aA3,A.aA2,A.aB7,A.aB8,A.bjf,A.aUW,A.aUX,A.biO,A.biP,A.biw,A.aqP,A.aqS,A.bim,A.b2s,A.b2u,A.b2w,A.bdC,A.aIg,A.aIq,A.b3Q,A.b3S,A.at2,A.bbM,A.bbG,A.aMU,A.aPX,A.aQ0,A.aFD,A.b9u,A.b9Y,A.bbU,A.b2r,A.b2t,A.b2v,A.bbR,A.bbQ,A.bbO,A.bbV,A.bh3,A.bh4,A.b93,A.b94,A.b_9,A.bbF,A.aNX,A.aPT,A.bcV,A.bfj,A.bfk,A.bhc,A.bfE,A.bc8,A.aUD,A.aKq,A.aKt,A.b_d,A.aCd,A.aCs,A.aCp,A.aq0,A.aKL,A.aJV,A.aJW,A.aP6,A.aO7,A.aOe,A.aOb,A.aOa,A.aOg,A.aOl,A.aOj,A.aOk,A.aOi,A.aIW,A.aMB,A.aMA,A.aMC,A.aMD,A.aOp,A.aOA,A.aOz,A.aOD,A.aOE,A.aOV,A.aOf,A.aOn,A.aOm,A.aOF,A.aOG,A.aOo,A.aP3,A.aQ5,A.bda,A.aR8,A.aR9,A.aQR,A.arz,A.b0z,A.aSn,A.b4N,A.awT,A.ax6,A.axa,A.avR,A.avO,A.avN,A.avP,A.avQ,A.avJ,A.avM,A.bbB,A.bby,A.aNG,A.aNH,A.axE,A.aBd,A.b5n,A.aBa,A.bjP,A.bjQ,A.b7y,A.b5t,A.bad,A.bcb,A.be7,A.baw,A.bha,A.bhb,A.ba3,A.ba2,A.ba0,A.aQl,A.aF0,A.aF1,A.bd1,A.bd_,A.bd0,A.aQp,A.aRA,A.aRJ,A.bc0,A.bc_,A.aND,A.bbZ,A.bbY,A.bjx,A.azH,A.aqm,A.aIe,A.aDC,A.aWd,A.aWe,A.ayF,A.ayE,A.ayJ,A.ayK,A.ayH,A.ayI,A.aNe,A.av8,A.aq8,A.aEo,A.aEv,A.aDE,A.aE3,A.aE2,A.b7L,A.b7M,A.b_A,A.b02,A.auA,A.b1K,A.b3t,A.beV,A.aVd,A.aX_,A.b1q,A.b1t,A.b1u,A.av0,A.av1,A.auW,A.auS,A.auM,A.b1i,A.b1e,A.bfG,A.bfL,A.bfK,A.aZ6,A.aTR,A.aKT,A.b0O,A.b0S,A.b27,A.b3L,A.b5G,A.b5E,A.b6h,A.b6i,A.b6j,A.b6k,A.b6m,A.b39,A.b35,A.b3f,A.b3n,A.aLC,A.aLy,A.aXH,A.aXO,A.aXM,A.aXF,A.aXE,A.bjG,A.bjH,A.bi8,A.aK1,A.aBm,A.aP2,A.aP1,A.aP0,A.azN,A.azO,A.aWF,A.bjZ,A.aXo]) +p(A.B,[A.zh,A.QQ,A.nE,A.az,A.hF,A.bh,A.hB,A.yL,A.qW,A.O_,A.q_,A.ey,A.q8,A.zo,A.acy,A.akR,A.ig,A.qh,A.IN,A.Dg,A.ev,A.bV,A.q4,A.an4,A.KO,A.ach]) +p(A.dB,[A.jm,A.kO,A.r8,A.a1h,A.a9U,A.aei,A.a7x,A.afi,A.Kg,A.w2,A.jf,A.qo,A.z2,A.z1,A.ld,A.XB,A.afD,A.aa1]) +p(A.jm,[A.a0n,A.a0p]) +p(A.fp,[A.h_,A.a5Z]) +p(A.h_,[A.M5,A.ahU,A.ahT,A.M6,A.M8,A.M9,A.Ma,A.Mb,A.Mc,A.Md]) +p(A.axP,[A.ps,A.aeN]) +q(A.M7,A.ahU) +q(A.a5X,A.ahT) +q(A.aw5,A.aeN) +p(A.a0Q,[A.a0T,A.a0P]) +q(A.a0S,A.a0P) +q(A.a6_,A.a5Z) +p(A.eU,[A.IQ,A.LY,A.a5I,A.a5M,A.a5K,A.a5J,A.a5L]) +p(A.IQ,[A.a5v,A.a5u,A.a5t,A.a5z,A.a5B,A.a5H,A.a5F,A.a5E,A.a5x,A.a5A,A.a5w,A.a5D,A.a5G,A.a5y,A.a5C]) +p(A.B9,[A.a0H,A.Bv]) +q(A.a0G,A.Bv) +p(A.oc,[A.Q6,A.S8]) +p(A.a_Q,[A.Cc,A.C8]) +p(A.aqO,[A.Ls,A.NU]) +q(A.a_T,A.aMG) +q(A.adi,A.apK) +q(A.anm,A.aZ1) +q(A.baE,A.anm) +p(A.a6h,[A.as5,A.a_i,A.aB9,A.aCv,A.aCE,A.aEW,A.aMM,A.aQo,A.aAq,A.arc,A.aTX]) +p(A.qN,[A.Dd,A.a0l,A.a1q,A.xu,A.a9f]) +p(A.aDq,[A.apW,A.awh,A.NY]) +p(A.aQY,[A.aup,A.aIK]) +q(A.Ii,A.aet) +p(A.Ii,[A.aRb,A.a0F,A.Di]) +p(A.S,[A.pd,A.Eh,A.Ka,A.ra]) +q(A.ags,A.pd) +q(A.a9O,A.ags) +q(A.CO,A.aMi) +p(A.DM,[A.Xk,A.a7q]) +p(A.aU5,[A.aEQ,A.ayp,A.aVr]) +p(A.aU4,[A.b_c,A.tS,A.w3]) +q(A.agC,A.b_c) +q(A.agD,A.agC) +q(A.agE,A.agD) +q(A.lR,A.agE) +q(A.J2,A.lR) +p(A.axR,[A.aKw,A.ay9,A.awi,A.aAR,A.aKu,A.aN2,A.aQA,A.aRd]) +p(A.axS,[A.aKy,A.Lt,A.aUl,A.aKH,A.aub,A.aMz,A.axH,A.aVm]) +q(A.aK9,A.Lt) +p(A.a0F,[A.aBZ,A.apw,A.azh]) +p(A.aU8,[A.aUf,A.aUm,A.aUh,A.aUk,A.aUg,A.aUj,A.aU6,A.aUc,A.aUi,A.aUe,A.aUd,A.aUb]) +p(A.a_l,[A.atk,A.a0t]) +p(A.pP,[A.afh,A.B8]) +q(A.bcT,A.b59) +q(A.adC,A.afU) +p(A.b7,[A.ln,A.ag5,A.EL,A.ag3,A.RH,A.aof,A.wc,A.FX,A.Oo,A.Rc,A.zs,A.ie,A.lm,A.Rg,A.zw,A.QG,A.Ij,A.vf,A.G0,A.rn]) +q(A.ag2,A.ag5) +p(A.bI,[A.alF,A.w9,A.amd,A.amc,A.WQ,A.WP,A.Rx,A.a1k,A.a1j,A.Po,A.Pn,A.acn,A.a0M,A.a0K,A.acg]) +q(A.ag6,A.jS) +q(A.kn,A.ag6) +q(A.jN,A.kn) +p(A.eJ,[A.Gc,A.Ga,A.wd,A.FY,A.a_0,A.Om,A.Ol]) +q(A.rD,A.aof) +p(J.BJ,[J.Kc,J.Kd,J.r,J.xh,J.xi,J.tO,J.qd]) +p(J.r,[J.tR,J.E,A.xN,A.hk,A.am,A.W4,A.t8,A.WY,A.lG,A.mA,A.dO,A.adY,A.ZM,A.a_u,A.aeP,A.IM,A.aeR,A.a_z,A.bd,A.afq,A.jo,A.a0w,A.a0O,A.ag0,A.a11,A.BC,A.a1T,A.a3W,A.aha,A.ahb,A.jt,A.ahc,A.ahw,A.jw,A.ahX,A.ajR,A.Dt,A.jC,A.akH,A.jD,A.akO,A.iz,A.alz,A.a9D,A.jJ,A.alK,A.a9I,A.a9X,A.amS,A.an2,A.ane,A.anK,A.anM,A.I6,A.a57,A.a58,A.Wc,A.kQ,A.agG,A.kY,A.ahD,A.a67,A.akS,A.lg,A.alQ,A.WE,A.WF,A.acZ]) +p(J.tR,[J.a64,J.oZ,J.k8]) +q(J.aCZ,J.E) +p(J.tO,[J.BL,J.Ke]) +p(A.nE,[A.wa,A.UI,A.td,A.pv]) +q(A.Ra,A.wa) +q(A.Qi,A.UI) +q(A.ij,A.Qi) +p(A.bw,[A.wb,A.Ei,A.iR,A.rp,A.RX]) +q(A.eY,A.Eh) +p(A.az,[A.aN,A.jk,A.aR,A.zl,A.S2,A.ru,A.zB,A.TD]) +p(A.aN,[A.aP,A.ad,A.agN,A.e5,A.Kx,A.agv,A.Rz]) +q(A.pM,A.hF) +q(A.J1,A.yL) +q(A.B4,A.qW) +q(A.J0,A.q_) +q(A.wE,A.q8) +q(A.mW,A.Ei) +p(A.nI,[A.aiN,A.aiO,A.aiP]) +p(A.aiN,[A.b3,A.aiQ,A.SE,A.SF,A.aiR,A.aiS,A.aiT]) +p(A.aiO,[A.kr,A.aiU,A.SG,A.aiV,A.aiW,A.aiX,A.SH]) +p(A.aiP,[A.aiY,A.SI,A.aiZ,A.aj_]) +q(A.Ui,A.KK) +q(A.li,A.Ui) +q(A.wn,A.li) +p(A.AC,[A.ai,A.cR]) +p(A.m1,[A.HL,A.FO]) +p(A.HL,[A.kx,A.hC]) +q(A.tJ,A.a1e) +q(A.LL,A.r8) +p(A.a9h,[A.a8V,A.Ae]) +p(A.iR,[A.Kf,A.xj,A.S_]) +q(A.ahp,A.aho) +q(A.Lx,A.ahp) +p(A.hk,[A.Lu,A.Ct]) +p(A.Ct,[A.Sh,A.Sj]) +q(A.Si,A.Sh) +q(A.u8,A.Si) +q(A.Sk,A.Sj) +q(A.kX,A.Sk) +p(A.u8,[A.Lv,A.a4P]) +p(A.kX,[A.a4Q,A.Lw,A.a4R,A.a4S,A.Ly,A.Lz,A.ox]) +q(A.Ub,A.afi) +q(A.cA,A.FX) +q(A.aG,A.cA) +p(A.fN,[A.vj,A.vl,A.FR]) +q(A.zc,A.vj) +p(A.ri,[A.pa,A.cd]) +p(A.ze,[A.aq,A.rx]) +p(A.vG,[A.md,A.vH]) +q(A.akP,A.acx) +p(A.aew,[A.p3,A.EK]) +q(A.Sf,A.md) +p(A.ie,[A.zI,A.jP,A.RC,A.QN]) +q(A.FW,A.vl) +q(A.TM,A.FY) +q(A.ajN,A.amK) +p(A.rp,[A.vr,A.QD]) +p(A.FO,[A.p4,A.kp]) +p(A.QS,[A.QR,A.QT]) +p(A.akL,[A.jR,A.j6]) +p(A.akK,[A.TE,A.TF]) +q(A.DG,A.TE) +p(A.p9,[A.rv,A.TH,A.zA]) +q(A.TG,A.TF) +q(A.DH,A.TG) +p(A.nr,[A.G_,A.ame,A.ad3,A.zC]) +q(A.Fd,A.G_) +p(A.Xv,[A.pN,A.aqd,A.aD3,A.aBf]) +p(A.pN,[A.Ww,A.a1r,A.a9Z]) +p(A.amd,[A.Wy,A.a1t]) +p(A.amc,[A.Wx,A.a1s]) +p(A.Xb,[A.b2V,A.bdE,A.aYX,A.vg,A.Qf,A.agA,A.amj,A.bg9,A.aZi,A.afw,A.b5r]) +q(A.aZh,A.PZ) +p(A.aYX,[A.aYD,A.bg8]) +q(A.a1i,A.Kg) +q(A.b8Q,A.Xl) +q(A.agw,A.b8V) +q(A.an8,A.agw) +q(A.b8U,A.an8) +q(A.b8Y,A.agA) +q(A.aob,A.amh) +q(A.ami,A.aob) +p(A.jf,[A.CZ,A.JZ]) +q(A.aek,A.Ul) +p(A.am,[A.bX,A.X6,A.z9,A.a_Z,A.a0b,A.a0o,A.a3V,A.Cb,A.xG,A.a50,A.a6e,A.a6f,A.Ne,A.Df,A.jB,A.TB,A.jI,A.iB,A.U3,A.aa7,A.aan,A.PM,A.ZN,A.Hd,A.WH]) +p(A.bX,[A.bv,A.o4,A.acY]) +q(A.bM,A.bv) +p(A.bM,[A.Wb,A.Wu,A.X9,A.ZL,A.a_j,A.a0q,A.a1d,A.a1p,A.a40,A.a5d,A.a5n,A.a5Q,A.a6l,A.a7X,A.a9k]) +p(A.lG,[A.XJ,A.HS,A.XL,A.XN]) +q(A.XK,A.mA) +q(A.AF,A.adY) +q(A.XM,A.HS) +p(A.z9,[A.ZW,A.a8a]) +q(A.aeQ,A.aeP) +q(A.IL,A.aeQ) +q(A.aeS,A.aeR) +q(A.a_x,A.aeS) +q(A.iO,A.t8) +q(A.afr,A.afq) +q(A.Bg,A.afr) +q(A.ag1,A.ag0) +q(A.x7,A.ag1) +q(A.u3,A.bd) +q(A.a41,A.aha) +q(A.a42,A.ahb) +q(A.ahd,A.ahc) +q(A.a43,A.ahd) +q(A.ahx,A.ahw) +q(A.LJ,A.ahx) +q(A.ahY,A.ahX) +q(A.a66,A.ahY) +q(A.a7v,A.ajR) +q(A.TC,A.TB) +q(A.a8K,A.TC) +q(A.akI,A.akH) +q(A.a8S,A.akI) +q(A.a8W,A.akO) +q(A.alA,A.alz) +q(A.a9B,A.alA) +q(A.U4,A.U3) +q(A.a9C,A.U4) +q(A.alL,A.alK) +q(A.a9H,A.alL) +q(A.amT,A.amS) +q(A.adX,A.amT) +q(A.QP,A.IM) +q(A.an3,A.an2) +q(A.afP,A.an3) +q(A.anf,A.ane) +q(A.Sg,A.anf) +q(A.anL,A.anK) +q(A.akJ,A.anL) +q(A.anN,A.anM) +q(A.akW,A.anN) +q(A.bed,A.bec) +q(A.Eu,A.aXu) +q(A.ZC,A.I6) +q(A.bh2,A.afw) +p(A.io,[A.EN,A.ro]) +p(A.jl,[A.M0,A.M1,A.CL]) +q(A.q3,A.nv) +q(A.agH,A.agG) +q(A.a1J,A.agH) +q(A.ahE,A.ahD) +q(A.a56,A.ahE) +q(A.akT,A.akS) +q(A.a8Y,A.akT) +q(A.alR,A.alQ) +q(A.a9K,A.alR) +p(A.a5a,[A.z,A.R]) +p(A.Hd,[A.H4,A.a59]) +q(A.WG,A.acZ) +q(A.avh,A.aeF) +p(A.avh,[A.o,A.bc,A.k7,A.a83,A.a85]) +p(A.o,[A.a3,A.ax,A.aV,A.bA,A.Nd,A.ahB]) +p(A.a3,[A.ty,A.EU,A.ES,A.B_,A.IW,A.IX,A.qV,A.qT,A.NQ,A.HT,A.HU,A.wr,A.I3,A.I2,A.EH,A.D2,A.QA,A.tk,A.KP,A.GZ,A.Hl,A.zq,A.Hq,A.Hw,A.ET,A.ER,A.zi,A.AZ,A.Tl,A.K3,A.RP,A.Q8,A.RE,A.xf,A.OT,A.qj,A.a17,A.vP,A.vQ,A.Fw,A.a6m,A.Mz,A.Nk,A.Rq,A.Nh,A.O1,A.Ob,A.yI,A.S6,A.GS,A.OC,A.yK,A.OP,A.U1,A.yY,A.po,A.wW,A.GP,A.GQ,A.PD,A.Bt,A.Aa,A.uP,A.IC,A.B1,A.B2,A.Tc,A.wV,A.JA,A.nb,A.x4,A.xa,A.KD,A.Sa,A.xO,A.rs,A.xS,A.LS,A.JH,A.Oq,A.LV,A.Mv,A.uA,A.Nc,A.a7u,A.Fq,A.FN,A.Ns,A.Nt,A.Ti,A.yw,A.NK,A.yG,A.NL,A.Tm,A.vF,A.To,A.OV,A.yU,A.Ed,A.fu,A.Pt,A.Ib,A.Jy,A.Jg,A.KL,A.Nn,A.O0,A.IA,A.KM,A.P8,A.O9,A.Pr,A.HG,A.fo,A.Hc,A.xv,A.xc,A.Id,A.Lb,A.Lc,A.HQ,A.HR,A.OJ,A.It,A.Ji,A.Jk,A.Jl,A.Jh,A.OK,A.JU,A.Mn,A.KA,A.Ps,A.Iq,A.QJ,A.QK,A.y8,A.Is,A.P6,A.Hf,A.tv,A.LM,A.tn,A.wD,A.Rm,A.x6,A.GG,A.to,A.IZ,A.JO,A.JP,A.JQ,A.Ml,A.od,A.yk,A.it,A.Hb,A.GH,A.HI,A.Iu,A.K8,A.K9,A.BN,A.Pq]) +q(A.a9,A.akM) +p(A.a9,[A.Ge,A.EW,A.QZ,A.QX,A.UU,A.af5,A.FP,A.Tv,A.akp,A.UM,A.UN,A.Qx,A.UO,A.ae5,A.EI,A.FC,A.UP,A.Qz,A.S3,A.PW,A.Qa,A.Fp,A.UH,A.UJ,A.EV,A.QY,A.R1,A.UT,A.ak5,A.RQ,A.V0,A.UG,A.UY,A.V1,A.TZ,A.anb,A.Fb,A.Vj,A.Vk,A.Sv,A.V2,A.UL,A.SJ,A.T9,A.UW,A.Ta,A.Vf,A.Tz,A.TA,A.V3,A.TS,A.TT,A.Vi,A.anR,A.U9,A.PS,A.Rv,A.amQ,A.UE,A.aog,A.Ry,A.PY,A.akN,A.UR,A.R2,A.R7,A.ajX,A.F2,A.afL,A.D1,A.F9,A.an7,A.agS,A.anc,A.Sn,A.Sr,A.ahO,A.ahN,A.UX,A.Vh,A.ahQ,A.SC,A.anB,A.T6,A.Gf,A.mk,A.anG,A.a7S,A.Tj,A.ak_,A.anF,A.akj,A.Tu,A.Tt,A.ak6,A.Ve,A.Vd,A.U0,A.alD,A.PT,A.Uc,A.G9,A.aoc,A.ZH,A.afE,A.afl,A.agX,A.ajW,A.anJ,A.aeG,A.agY,A.anS,A.Vg,A.amm,A.Ql,A.agj,A.ad5,A.agR,A.V_,A.aeh,A.ahf,A.Sd,A.adD,A.adE,A.TV,A.QL,A.Jj,A.afo,A.afp,A.afn,A.ale,A.UZ,A.aiz,A.S0,A.amn,A.aez,A.aeC,A.aeD,A.SA,A.UQ,A.U6,A.UF,A.UV,A.ahF,A.QH,A.QU,A.Rn,A.an5,A.acv,A.aeA,A.R6,A.RG,A.afZ,A.ag_,A.aiy,A.Rl,A.ajL,A.agi,A.ad4,A.UC,A.adA,A.aeE,A.RU,A.agr,A.an9,A.aml]) +q(A.Rs,A.Ge) +q(A.dj,A.ajP) +q(A.CE,A.dj) +p(A.CE,[A.tz,A.h5]) +p(A.ax,[A.Ht,A.EX,A.aeY,A.XO,A.Zx,A.ZA,A.I4,A.acr,A.Ev,A.WM,A.a_D,A.a_N,A.W7,A.aeW,A.Q9,A.Xg,A.a_5,A.AP,A.AV,A.rZ,A.pF,A.aa6,A.aeZ,A.aff,A.a0Z,A.K5,A.mX,A.a2_,A.Ts,A.amO,A.adb,A.a7W,A.a95,A.a96,A.a9a,A.a9y,A.alq,A.alt,A.a9A,A.v0,A.alI,A.ahz,A.a19,A.a6b,A.lP,A.fi,A.ky,A.ahA,A.a_2,A.ID,A.a0_,A.mS,A.ei,A.nD,A.a6x,A.a45,A.ahe,A.a4U,A.CH,A.a7z,A.a7T,A.a8f,A.a8r,A.a8Q,A.ahC,A.fs,A.ajJ,A.a9E,A.a6y,A.Pv,A.aiu,A.BZ,A.Cx,A.Cy,A.Cz,A.CA,A.CB,A.E7,A.Ox,A.WI,A.a6C,A.AJ,A.AK,A.a9b,A.Ek,A.Wv,A.H1,A.a02,A.wO,A.a04,A.a01,A.a6D,A.Pe,A.a7m,A.XF,A.a_b,A.a5j,A.a03,A.wQ,A.a9T,A.aam,A.Py,A.Pz,A.PA,A.PB,A.a_d,A.a_e,A.Cv,A.vw,A.m3,A.a5f,A.Be,A.Bc,A.o8,A.a5h,A.AQ,A.a5i]) +p(A.fZ,[A.tc,A.Cw,A.WA,A.u2,A.Np,A.pO]) +q(A.xb,A.agg) +p(A.xb,[A.a4L,A.acp,A.b2W,A.LN,A.a4K]) +p(A.vJ,[A.Ej,A.Dr]) +p(A.aMH,[A.asI,A.auE,A.aza,A.azF,A.aKO,A.aM7,A.aMn,A.aMv,A.aRw,A.aVA,A.aVS]) +p(A.asI,[A.asJ,A.aIu]) +q(A.au_,A.asJ) +p(A.a0K,[A.agU,A.akf,A.akg]) +p(A.aB1,[A.b9o,A.bdg,A.bdi]) +q(A.bdh,A.bdi) +p(A.auE,[A.auF,A.aIw]) +p(A.aZ3,[A.qL,A.yh,A.pR]) +p(A.i2,[A.JY,A.H5,A.Hs,A.LF,A.On]) +p(A.bci,[A.ad8,A.ajA]) +q(A.aql,A.ad8) +q(A.l8,A.ajA) +p(A.aUV,[A.aTu,A.a0u]) +q(A.aqc,A.aTu) +q(A.a_m,A.aeI) +p(A.aA,[A.ZG,A.cU,A.zp,A.al3,A.I8]) +p(A.ZG,[A.af0,A.adZ,A.ae8,A.ae0,A.agQ,A.af_,A.ago,A.akh,A.agK,A.EB,A.RL,A.alo,A.afT,A.am7,A.Xi,A.yj]) +p(A.aRI,[A.af2,A.bfT,A.af1,A.bfV,A.a_6,A.a9z]) +q(A.zr,A.h5) +q(A.eR,A.zr) +p(A.eR,[A.Mh,A.oC]) +p(A.Mh,[A.R0,A.L9,A.D_,A.R_,A.aiw]) +p(A.aV,[A.bE,A.QC,A.Tx,A.a1G,A.hj,A.pz,A.Fu,A.a8y,A.SD]) +p(A.bE,[A.Fn,A.aea,A.acQ,A.adg,A.agq,A.Fm,A.agn,A.alv,A.Lf,A.acH,A.GW,A.a5b,A.WN,A.Ia,A.As,A.Xp,A.Ar,A.a60,A.a61,A.z0,A.wl,A.Az,A.a0c,A.a0r,A.a7r,A.be,A.fh,A.kz,A.aB,A.ep,A.a1K,A.qp,A.a1f,A.a8x,A.a1P,A.lY,A.BB,A.W2,A.ck,A.a4_,A.WX,A.ts,A.K0,A.wk,A.ZT,A.ady,A.afR,A.agV,A.ak9,A.aeu,A.ajZ,A.FQ,A.a8i,A.akz,A.a8I,A.a9e,A.a9d,A.eB,A.amr,A.ad_,A.aiJ,A.aiL,A.aiI,A.aae]) +q(A.G,A.ajg) +p(A.G,[A.P,A.ajv,A.e4]) +p(A.P,[A.SY,A.T0,A.V7,A.anq,A.anv,A.V9,A.Vb,A.ajb,A.anz,A.SM,A.SO,A.aj8,A.MN,A.MQ,A.SW,A.ajj,A.ajr,A.mm,A.ajy,A.ant,A.anw,A.Va,A.V8,A.any,A.a7b,A.a78,A.a6X]) +q(A.SZ,A.SY) +q(A.a6Z,A.SZ) +p(A.a6Z,[A.ajf,A.aje,A.SR,A.alw,A.MX,A.ML,A.MJ,A.a6S,A.MS,A.a6U,A.aj3,A.a6G,A.FD,A.a6L,A.a76,A.MO,A.a6O,A.a7_,A.MP,A.MU,A.MD,A.MZ,A.a6H,A.a6T,A.a6M,A.a6P,A.a6R,A.a6N,A.MH,A.aj5,A.ajd,A.ajl,A.anr,A.SU,A.ajk,A.ajm,A.FI,A.ajw,A.ajx]) +q(A.B0,A.QX) +q(A.R3,A.UU) +q(A.a7o,A.WC) +p(A.bA,[A.bR,A.hl,A.ea]) +p(A.bR,[A.R4,A.et,A.IS,A.Jr,A.Sw,A.T8,A.ajV,A.PR,A.ama,A.om,A.lN,A.S1,A.x5,A.zy,A.CS,A.Pk,A.ajQ,A.Nq,A.Te,A.Tg,A.Dp,A.akn,A.R9,A.zF,A.Sx,A.Up,A.fP]) +p(A.fH,[A.af4,A.ae4,A.ah0,A.amy,A.afS,A.ah1,A.amz]) +p(A.bo,[A.a_I,A.x1,A.cS,A.E8,A.RR,A.a8H,A.ajU,A.OD,A.j_,A.Q5,A.uy,A.a49,A.ND,A.N9,A.Ki,A.hm,A.RA,A.TN,A.qP,A.Dm,A.Oc,A.wA,A.AU,A.dW,A.NF,A.lH,A.kd,A.n5,A.P1,A.En]) +p(A.cS,[A.a_r,A.r5,A.adu,A.Pj,A.aas]) +p(A.qV,[A.aRC,A.Dw]) +q(A.bbD,A.asp) +p(A.L5,[A.ah6,A.L4]) +q(A.L3,A.ah6) +q(A.b9R,A.azd) +q(A.D3,A.hI) +p(A.D3,[A.hz,A.kJ]) +q(A.a7p,A.hz) +q(A.baQ,A.azf) +q(A.azb,A.aza) +p(A.cU,[A.acK,A.acz,A.acA,A.nY,A.aiB,A.ajH,A.aef,A.alM,A.Qn,A.UD,A.amR,A.amW]) +q(A.acL,A.acK) +q(A.acM,A.acL) +q(A.A5,A.acM) +p(A.aRH,[A.b8L,A.bch,A.a0s,A.Oh,A.b1W,A.aqG,A.as7]) +q(A.Wi,A.acN) +q(A.aiC,A.aiB) +q(A.aiD,A.aiC) +q(A.Mo,A.aiD) +q(A.ajI,A.ajH) +q(A.la,A.ajI) +q(A.I7,A.aef) +q(A.alN,A.alM) +q(A.alO,A.alN) +q(A.z_,A.alO) +q(A.Qo,A.Qn) +q(A.Qp,A.Qo) +q(A.AA,A.Qp) +p(A.AA,[A.GV,A.PV]) +q(A.iK,A.LZ) +p(A.iK,[A.RZ,A.Ng,A.eF,A.a8U,A.P3,A.eq,A.P2,A.mO,A.aem]) +q(A.bf,A.UD) +p(A.b4,[A.fO,A.b0,A.hZ,A.Pi]) +p(A.b0,[A.Na,A.fU,A.a8k,A.Mx,A.tK,A.AD,A.KZ,A.RS,A.yF,A.yS,A.GI,A.t_,A.w5,A.pC,A.IY,A.pL,A.w4,A.xE,A.yR]) +q(A.ae_,A.UM) +q(A.Qw,A.UN) +p(A.A,[A.ae2,A.o5,A.p0]) +q(A.dP,A.ae2) +p(A.aUy,[A.at1,A.at7,A.aur,A.aI5]) +q(A.amU,A.at1) +q(A.ae1,A.amU) +q(A.eP,A.agd) +q(A.ae3,A.eP) +q(A.XP,A.ae3) +q(A.Qy,A.UO) +q(A.kC,A.aep) +p(A.kC,[A.nF,A.v5,A.bb,A.nm]) +p(A.X2,[A.b0j,A.bg0,A.Ey,A.aki]) +p(A.D2,[A.AG,A.Fl]) +q(A.oJ,A.FC) +p(A.oJ,[A.ae6,A.ah2]) +q(A.ae7,A.at7) +q(A.Zz,A.ae7) +q(A.yd,A.T0) +p(A.yd,[A.aj6,A.a6E,A.SK,A.SS,A.MV,A.MM]) +q(A.QB,A.UP) +p(A.ae0,[A.agF,A.ajK]) +p(A.bc,[A.bP,A.HH,A.T5,A.ahy]) +p(A.bP,[A.ae9,A.kW,A.NS,A.a1F,A.a77,A.Fe,A.ahM,A.DA,A.O6]) +q(A.anp,A.V7) +q(A.zx,A.anp) +q(A.AH,A.aeb) +p(A.et,[A.K1,A.JT,A.O2,A.OL,A.RN,A.tm,A.x9,A.AN]) +q(A.aed,A.LI) +q(A.AI,A.aed) +q(A.b0A,A.AH) +p(A.fD,[A.mD,A.Ix,A.Iw]) +q(A.vk,A.mD) +p(A.vk,[A.Bb,A.a_Y,A.a_V]) +q(A.cM,A.afC) +q(A.og,A.afD) +q(A.a_h,A.Ix) +p(A.Iw,[A.afB,A.a_g,A.akb]) +p(A.iu,[A.a1R,A.jp]) +p(A.a1R,[A.kl,A.eK]) +q(A.Kt,A.lS) +p(A.bfW,[A.afN,A.vi,A.RD]) +q(A.Jx,A.cM) +q(A.ca,A.ai6) +q(A.anX,A.acq) +q(A.anY,A.anX) +q(A.alW,A.anY) +p(A.ca,[A.ahZ,A.aij,A.ai9,A.ai4,A.ai7,A.ai2,A.aib,A.ais,A.air,A.aif,A.aih,A.aid,A.ai0]) +q(A.ai_,A.ahZ) +q(A.y0,A.ai_) +p(A.alW,[A.anT,A.ao4,A.ao_,A.anW,A.anZ,A.anV,A.ao0,A.aoa,A.ao7,A.ao8,A.ao5,A.ao2,A.ao3,A.ao1,A.anU]) +q(A.alS,A.anT) +q(A.aik,A.aij) +q(A.y4,A.aik) +q(A.am2,A.ao4) +q(A.aia,A.ai9) +q(A.qz,A.aia) +q(A.alY,A.ao_) +q(A.ai5,A.ai4) +q(A.un,A.ai5) +q(A.alV,A.anW) +q(A.ai8,A.ai7) +q(A.uo,A.ai8) +q(A.alX,A.anZ) +q(A.ai3,A.ai2) +q(A.qy,A.ai3) +q(A.alU,A.anV) +q(A.aic,A.aib) +q(A.qA,A.aic) +q(A.alZ,A.ao0) +q(A.ait,A.ais) +q(A.qC,A.ait) +q(A.am6,A.aoa) +q(A.iT,A.air) +p(A.iT,[A.ain,A.aip,A.ail]) +q(A.aio,A.ain) +q(A.y5,A.aio) +q(A.am4,A.ao7) +q(A.aiq,A.aip) +q(A.y6,A.aiq) +q(A.ao9,A.ao8) +q(A.am5,A.ao9) +q(A.aim,A.ail) +q(A.a69,A.aim) +q(A.ao6,A.ao5) +q(A.am3,A.ao6) +q(A.aig,A.aif) +q(A.qB,A.aig) +q(A.am0,A.ao2) +q(A.aii,A.aih) +q(A.y3,A.aii) +q(A.am1,A.ao3) +q(A.aie,A.aid) +q(A.y2,A.aie) +q(A.am_,A.ao1) +q(A.ai1,A.ai0) +q(A.y1,A.ai1) +q(A.alT,A.anU) +p(A.eD,[A.afQ,A.zd]) +q(A.es,A.afQ) +p(A.es,[A.LO,A.mG]) +p(A.LO,[A.mR,A.CR,A.kG,A.ng,A.Q4]) +p(A.G5,[A.S9,A.Ft]) +p(A.CR,[A.mY,A.WT]) +p(A.kG,[A.lk,A.kM,A.n8]) +p(A.WT,[A.kj,A.Ex]) +q(A.OE,A.al9) +q(A.OH,A.alc) +q(A.OG,A.alb) +q(A.OI,A.ald) +q(A.OF,A.ala) +q(A.He,A.Q4) +p(A.He,[A.oV,A.oW]) +q(A.x8,A.jL) +q(A.C3,A.x8) +p(A.acr,[A.WL,A.a_C,A.a_M]) +q(A.A2,A.act) +q(A.aI4,A.a7P) +q(A.aix,A.R) +p(A.a6E,[A.aj4,A.MG,A.MW]) +q(A.A7,A.acP) +q(A.aYB,A.A7) +q(A.C6,A.Mx) +q(A.Ha,A.ad1) +q(A.KQ,A.agZ) +q(A.Hj,A.ade) +q(A.Hk,A.adf) +q(A.Ad,A.adh) +q(A.aZ8,A.Ad) +q(A.Hp,A.adk) +q(A.cB,A.adl) +q(A.Qe,A.UH) +q(A.eG,A.ahi) +p(A.eG,[A.aaq,A.aev,A.oT]) +p(A.aaq,[A.ahh,A.Rd]) +q(A.Xa,A.adm) +q(A.Ak,A.ado) +q(A.aZV,A.Ak) +q(A.UK,A.UJ) +q(A.adr,A.UK) +p(A.E8,[A.adq,A.TR]) +q(A.Ao,A.ads) +q(A.b__,A.Ao) +q(A.Hx,A.adt) +q(A.tg,A.adv) +p(A.o5,[A.qk,A.a22]) +q(A.If,A.aej) +q(A.Ig,A.ael) +q(A.amV,A.aur) +q(A.aey,A.amV) +q(A.Iz,A.D_) +q(A.AW,A.aeH) +q(A.b1Q,A.AW) +q(A.wC,A.aeM) +q(A.b1Z,A.wC) +q(A.IR,A.aeX) +q(A.iN,A.aeZ) +q(A.EQ,A.UT) +q(A.IT,A.af3) +p(A.Hq,[A.B5,A.agb,A.a5m,A.a9l]) +p(A.cg,[A.amX,A.an_,A.amY,A.amZ,A.ag7,A.ag9,A.an6,A.agm,A.ani,A.ank,A.anj,A.TW,A.alg,A.anQ]) +q(A.EZ,A.amX) +q(A.afb,A.an_) +q(A.af9,A.amY) +q(A.afa,A.amZ) +q(A.afe,A.B5) +p(A.cB,[A.afc,A.aga,A.afu,A.afv,A.ahL,A.ahJ,A.alh]) +q(A.B6,A.afd) +q(A.Jf,A.afk) +q(A.Jn,A.aft) +q(A.aSk,A.azm) +q(A.an0,A.aSk) +q(A.an1,A.an0) +q(A.b2T,A.an1) +q(A.bcW,A.azl) +q(A.Js,A.afA) +q(A.ag8,A.an6) +q(A.tD,A.agc) +p(A.on,[A.K4,A.tL]) +p(A.tL,[A.tI,A.K6,A.K7]) +p(A.BI,[A.b8j,A.b8k]) +q(A.RO,A.V0) +q(A.a1b,A.K5) +p(A.dp,[A.kN,A.fK,A.me,A.X0]) +p(A.kN,[A.ahv,A.jK,A.hJ]) +q(A.adc,A.UG) +q(A.RF,A.UY) +q(A.SN,A.anq) +q(A.O5,A.Tx) +p(A.O5,[A.aeq,A.agO]) +q(A.RT,A.V1) +q(A.BH,A.agp) +q(A.b8l,A.BH) +q(A.SV,A.anv) +q(A.BW,A.agP) +q(A.b97,A.BW) +q(A.ah3,A.anb) +p(A.a17,[A.S4,A.GR,A.GJ,A.GM,A.GO,A.GL,A.GK,A.GN]) +q(A.BE,A.Fb) +p(A.BE,[A.A4,A.acD]) +p(A.A4,[A.ah_,A.acJ,A.acB,A.acE,A.acG,A.acC,A.acF]) +q(A.Ca,A.ah9) +q(A.a3Y,A.Ca) +q(A.L6,A.ah7) +q(A.a3Z,A.ah8) +q(A.LB,A.ahq) +q(A.LC,A.ahr) +q(A.LD,A.ahs) +q(A.Sq,A.ani) +q(A.ahI,A.ank) +q(A.ahH,A.anj) +q(A.LQ,A.ahK) +q(A.S5,A.oC) +q(A.u0,A.S5) +q(A.amM,A.Vj) +q(A.amN,A.Vk) +p(A.qr,[A.aco,A.Zy]) +q(A.a5r,A.ahP) +p(A.a8H,[A.UA,A.UB]) +q(A.Mg,A.aiv) +p(A.a6m,[A.Kv,A.kw]) +q(A.agL,A.V2) +q(A.Qk,A.UL) +q(A.aj1,A.EB) +q(A.MB,A.kw) +q(A.aj2,A.Qk) +q(A.CX,A.aiA) +p(A.CX,[A.b_8,A.b92]) +q(A.Mr,A.aiF) +q(A.MA,A.SJ) +q(A.Nl,A.T9) +p(A.asN,[A.au,A.uM]) +q(A.Q7,A.au) +p(A.aJR,[A.bcU,A.bfU]) +q(A.Rr,A.UW) +q(A.Tb,A.Ta) +q(A.Dk,A.Tb) +q(A.d2,A.acu) +p(A.d2,[A.a_p,A.fV,A.dv,A.a_t,A.Qs,A.a_n]) +p(A.a_p,[A.aeK,A.aeL]) +q(A.Dn,A.ak0) +q(A.Nu,A.ak1) +q(A.Nv,A.ak2) +q(A.Nw,A.ak3) +q(A.Tw,A.Vf) +p(A.a1G,[A.akw,A.amk,A.a6u,A.Ja]) +q(A.FH,A.V9) +q(A.c8,A.agu) +p(A.c8,[A.nC,A.k3,A.a4Y,A.a6g,A.tq,A.nh,A.IF,A.a_o,A.qS,A.o7,A.ui,A.uw,A.nd,A.v6,A.mb,A.v3,A.tt]) +q(A.aju,A.Vb) +q(A.Dx,A.akx) +q(A.bdH,A.Dx) +q(A.ajO,A.aRR) +q(A.a7t,A.ajO) +p(A.aRQ,[A.aPs,A.aET]) +p(A.aRP,[A.a7s,A.aPr,A.aNQ,A.aww]) +q(A.DD,A.akG) +q(A.be0,A.DD) +q(A.V4,A.V3) +q(A.S7,A.V4) +q(A.al_,A.pp) +q(A.nt,A.al0) +p(A.nt,[A.akY,A.akZ]) +q(A.beg,A.anO) +q(A.TQ,A.anP) +q(A.DT,A.al5) +p(A.GS,[A.al8,A.Wf,A.a8p,A.a3S,A.a8j,A.ZU,A.W9,A.tX]) +q(A.ajc,A.ajb) +q(A.SQ,A.ajc) +q(A.yc,A.SQ) +q(A.al7,A.yc) +p(A.hj,[A.Jq,A.alr,A.I9,A.m6,A.Es,A.a7n,A.R5,A.a5o,A.U5,A.z7,A.a8b]) +p(A.Jq,[A.al6,A.qO,A.o6]) +q(A.adp,A.amR) +q(A.EP,A.amW) +q(A.ajY,A.j_) +q(A.oM,A.ajY) +q(A.yt,A.oM) +p(A.yt,[A.bew,A.vz]) +q(A.beG,A.DT) +q(A.alf,A.anQ) +q(A.DV,A.ali) +q(A.all,A.OW) +q(A.TX,A.Vi) +q(A.ah4,A.aI5) +q(A.a3Q,A.ah4) +q(A.OY,A.alp) +q(A.alu,A.anR) +p(A.kW,[A.als,A.agl,A.alB,A.aod]) +q(A.ajt,A.anz) +q(A.h4,A.aly) +q(A.m9,A.alC) +q(A.a23,A.AI) +q(A.rd,A.ams) +q(A.P7,A.alE) +q(A.P9,A.alH) +q(A.afj,A.Lf) +p(A.MX,[A.MT,A.a6Y,A.qJ,A.SL,A.N0,A.D6]) +q(A.aja,A.MT) +q(A.v2,A.U9) +q(A.Pg,A.alJ) +q(A.Ec,A.am8) +p(A.iG,[A.dh,A.iF,A.Fo]) +p(A.Hi,[A.cY,A.t9,A.Sb]) +q(A.br,A.add) +p(A.X0,[A.f4,A.iI]) +q(A.c6,A.uJ) +p(A.fK,[A.hb,A.cu,A.j4,A.jE,A.j7,A.j8]) +p(A.eh,[A.al,A.eA,A.vu]) +q(A.Bq,A.dh) +q(A.BV,A.aAS) +p(A.adn,[A.Qg,A.Fi]) +q(A.H3,A.WA) +q(A.iP,A.agf) +q(A.aCx,A.agh) +p(A.k7,[A.a63,A.v_]) +q(A.a9_,A.akV) +p(A.lf,[A.Er,A.amg,A.An,A.BT,A.uf,A.IG]) +q(A.J,A.alx) +q(A.uF,A.Oh) +q(A.qu,A.ahV) +q(A.aes,A.qu) +q(A.yf,A.ajv) +q(A.ajG,A.yf) +p(A.q5,[A.tb,A.Dz]) +p(A.kL,[A.w6,A.a8u]) +p(A.e_,[A.iJ,A.U_,A.qY,A.uN]) +q(A.Qr,A.iJ) +q(A.HP,A.Qr) +p(A.HP,[A.lU,A.i_,A.fM,A.p1,A.p5,A.iX]) +q(A.aj7,A.SM) +q(A.MK,A.aj7) +q(A.SP,A.SO) +q(A.aj9,A.SP) +q(A.yb,A.aj9) +p(A.uy,[A.TY,A.Qh,A.EC]) +q(A.hh,A.agB) +p(A.hh,[A.a62,A.hc]) +p(A.hc,[A.n4,A.At,A.HC,A.HB,A.Xx,A.H9,A.Ks,A.JB,A.GX]) +p(A.n4,[A.JX,A.r7,A.a5c]) +q(A.ahk,A.and) +q(A.qs,A.as8) +p(A.bd9,[A.adB,A.jO]) +p(A.jO,[A.ajM,A.RK,A.zD]) +q(A.qv,A.nl) +q(A.m8,A.U_) +q(A.ajh,A.SW) +q(A.aji,A.ajh) +q(A.uz,A.aji) +q(A.anD,A.anC) +q(A.anE,A.anD) +q(A.p8,A.anE) +q(A.a6F,A.aj3) +p(A.I8,[A.uK,A.aeo,A.aht]) +p(A.FD,[A.a6K,A.a6J,A.a6I,A.SX]) +p(A.SX,[A.a6V,A.a6W]) +q(A.MY,A.ajj) +p(A.aQJ,[A.Hz,A.Ny]) +q(A.yy,A.ak8) +q(A.a8s,A.akA) +p(A.qY,[A.akB,A.akC]) +q(A.qX,A.akB) +q(A.akE,A.uN) +q(A.r_,A.akE) +p(A.e4,[A.T2,A.ajn]) +q(A.ajp,A.T2) +q(A.ajq,A.ajp) +q(A.qK,A.ajq) +p(A.qK,[A.a72,A.a73,A.a74]) +q(A.a71,A.a72) +q(A.aRX,A.aRW) +q(A.O4,A.aRU) +q(A.akD,A.akC) +q(A.i8,A.akD) +q(A.Dy,A.i8) +q(A.N_,A.ajn) +p(A.N_,[A.a75,A.ajo]) +q(A.ajs,A.ajr) +q(A.D5,A.ajs) +q(A.MR,A.D5) +q(A.D7,A.mm) +p(A.D7,[A.N1,A.a70]) +q(A.ajz,A.ajy) +q(A.N2,A.ajz) +q(A.a82,A.aka) +q(A.ec,A.akd) +q(A.Dq,A.ake) +q(A.xR,A.Dq) +p(A.aQZ,[A.aUR,A.aFp,A.aTO,A.azU]) +q(A.arw,A.Wz) +q(A.aME,A.arw) +p(A.aqB,[A.b0x,A.a6B]) +q(A.lO,A.agy) +p(A.lO,[A.op,A.xm,A.xk]) +q(A.aDo,A.agz) +p(A.aDo,[A.x,A.L]) +q(A.al4,A.Le) +q(A.l_,A.n2) +q(A.Mu,A.aiG) +q(A.qI,A.aiH) +p(A.qI,[A.ut,A.y9]) +q(A.a6v,A.Mu) +q(A.iW,A.cW) +q(A.uX,A.alk) +p(A.uX,[A.a9n,A.a9m,A.a9o,A.DX]) +p(A.uY,[A.Bj,A.a1I]) +q(A.ahW,A.anl) +q(A.apk,A.acs) +p(A.fV,[A.V5,A.V6,A.rk,A.Uj,A.Uk,A.ak4,A.adU]) +q(A.Ss,A.V5) +q(A.St,A.V6) +q(A.acI,A.amQ) +q(A.PU,A.UE) +q(A.Ur,A.aog) +p(A.a51,[A.BM,A.u9,A.kP,A.Su,A.Td]) +p(A.HH,[A.Mp,A.DI,A.jF]) +p(A.Mp,[A.jq,A.uh,A.anh]) +p(A.jq,[A.am9,A.K2,A.Fc,A.zm]) +q(A.lI,A.ama) +q(A.ik,A.fh) +p(A.hl,[A.Kr,A.up,A.of,A.Kh,A.amv]) +p(A.NS,[A.ahG,A.anH]) +q(A.SB,A.m6) +q(A.Bd,A.of) +q(A.Nb,A.T5) +q(A.Us,A.WW) +q(A.Ut,A.Us) +q(A.Uu,A.Ut) +q(A.Uv,A.Uu) +q(A.Uw,A.Uv) +q(A.Ux,A.Uw) +q(A.Uy,A.Ux) +q(A.aau,A.Uy) +q(A.US,A.UR) +q(A.QM,A.US) +q(A.af6,A.R7) +q(A.R8,A.af6) +q(A.af7,A.R8) +q(A.af8,A.af7) +q(A.tr,A.af8) +q(A.Eq,A.a63) +q(A.rt,A.Eq) +q(A.HE,A.adu) +q(A.amt,A.HE) +q(A.afI,A.afH) +q(A.er,A.afI) +p(A.er,[A.tC,A.Ru]) +q(A.acR,A.e0) +q(A.afG,A.afF) +q(A.Jz,A.afG) +q(A.Bm,A.wV) +q(A.afK,A.Bm) +q(A.afJ,A.F2) +q(A.Rt,A.om) +q(A.a0k,A.afM) +q(A.h7,A.ano) +q(A.p6,A.ann) +q(A.aiM,A.a0k) +q(A.aNE,A.aiM) +p(A.jp,[A.bG,A.x2,A.QF]) +p(A.x0,[A.dC,A.acO]) +q(A.b0C,A.aR_) +q(A.JM,A.xP) +q(A.RI,A.an7) +q(A.lQ,A.pz) +q(A.anu,A.ant) +q(A.ST,A.anu) +p(A.lN,[A.n0,A.Sc,A.akk]) +q(A.ah5,A.anc) +q(A.a_3,A.a9M) +q(A.lo,A.aPw) +p(A.vv,[A.Fs,A.Fr,A.Sl,A.Sm]) +q(A.afW,A.an4) +q(A.So,A.Sn) +q(A.n3,A.So) +p(A.ajE,[A.ahn,A.aYA]) +p(A.hm,[A.afX,A.dG]) +q(A.Sp,A.anh) +q(A.anx,A.anw) +q(A.FG,A.anx) +q(A.CF,A.ahO) +q(A.G4,A.fM) +q(A.anA,A.Va) +q(A.vE,A.anA) +p(A.iS,[A.vy,A.rr]) +q(A.ans,A.anr) +q(A.vD,A.ans) +q(A.RB,A.UX) +q(A.TO,A.Vh) +q(A.uc,A.Su) +q(A.a5q,A.qP) +q(A.Jp,A.afz) +q(A.xV,A.Jp) +p(A.yr,[A.Rw,A.CG,A.a6s,A.Hm,A.Hy,A.Wa,A.a4W]) +q(A.a_1,A.aMI) +q(A.ajF,A.anB) +p(A.dG,[A.nJ,A.ajC,A.ajD]) +q(A.T4,A.nJ) +p(A.T4,[A.N8,A.N7]) +q(A.FJ,A.Gf) +p(A.a7O,[A.tE,A.aBD,A.awq,A.WO,A.a_E]) +q(A.FL,A.eK) +p(A.aRS,[A.O3,A.aRT]) +q(A.Tq,A.anG) +p(A.kP,[A.Tf,A.a8h]) +q(A.jz,A.Tf) +p(A.jz,[A.yu,A.jA,A.n7,A.lc,A.a9Y]) +q(A.yq,A.Td) +q(A.X3,A.a7T) +p(A.X3,[A.BX,A.JJ]) +q(A.Tk,A.Tj) +q(A.yv,A.Tk) +q(A.ahl,A.a7Y) +q(A.Cr,A.ahl) +p(A.Cr,[A.Th,A.Tn]) +q(A.pc,A.kj) +q(A.vM,A.lk) +q(A.vp,A.kM) +q(A.Vc,A.anF) +q(A.ak7,A.Vc) +q(A.agT,A.xl) +q(A.a1W,A.agT) +q(A.aks,A.akr) +q(A.b1,A.aks) +q(A.ve,A.amP) +q(A.akm,A.akl) +q(A.Dv,A.akm) +q(A.NM,A.ako) +q(A.anI,A.anH) +q(A.aku,A.anI) +q(A.T1,A.V8) +q(A.qZ,A.a8y) +p(A.qZ,[A.a8w,A.a8t,A.aky]) +q(A.a9q,A.a9d) +p(A.a_o,[A.wu,A.ww,A.wv,A.iL,A.qQ]) +p(A.iL,[A.pT,A.pW,A.wN,A.wI,A.wJ,A.kI,A.tu,A.pX,A.pV,A.wM,A.pU]) +q(A.Tr,A.Ve) +q(A.Tp,A.Vd) +q(A.amx,A.E4) +p(A.a3S,[A.a7D,A.Dc]) +q(A.Wd,A.tX) +q(A.Ee,A.Uc) +q(A.amo,A.aoc) +q(A.aiK,A.a77) +q(A.aoe,A.aod) +q(A.amq,A.aoe) +q(A.T_,A.any) +q(A.zJ,A.p0) +q(A.aap,A.br) +q(A.rE,A.aap) +q(A.aar,A.J) +q(A.amw,A.aar) +q(A.aer,A.arm) +q(A.aud,A.aer) +p(A.mM,[A.pI,A.tx]) +q(A.aBR,A.azc) +q(A.JS,A.hg) +p(A.azF,[A.aVe,A.azG]) +p(A.a0B,[A.XQ,A.XR,A.XS,A.XT,A.XU,A.XV,A.XW,A.XX,A.XY,A.XZ,A.Y_,A.Y0,A.Y1,A.HV,A.Y3,A.HW,A.HX,A.Yw,A.Yx,A.Yy,A.Yz,A.YA,A.HY,A.YC,A.YD,A.YE,A.YF,A.YG,A.YH,A.YI,A.YJ,A.YK,A.YL,A.YM,A.YN,A.YO,A.YP,A.YQ,A.YR,A.YS,A.YT,A.YU,A.YV,A.YW,A.YX,A.YY,A.YZ,A.Z_,A.Z0,A.Z1,A.Z2,A.Z3,A.Z4,A.Z5,A.Z6,A.Z7,A.Z8,A.HZ,A.Za,A.Zb,A.Zc,A.Zd,A.Ze,A.Zf,A.I_,A.Zi,A.Zj,A.Zk,A.Zl,A.Zm,A.Zn,A.Zo,A.Zp,A.Zq,A.Zr,A.Zs,A.I0,A.Zw]) +q(A.Y2,A.HV) +p(A.HW,[A.Y4,A.Y5,A.Y6,A.Y7,A.Y8,A.Y9,A.Ya,A.Yb]) +p(A.HX,[A.Yc,A.Yd,A.Ye,A.Yf,A.Yg,A.Yh,A.Yi,A.Yj,A.Yk,A.Yl,A.Ym,A.Yn,A.Yo,A.Yp,A.Yq,A.Yr,A.Ys,A.Yt,A.Yu,A.Yv]) +q(A.YB,A.HY) +q(A.Z9,A.HZ) +p(A.I_,[A.Zg,A.Zh]) +p(A.I0,[A.Zt,A.I1]) +p(A.I1,[A.Zu,A.Zv]) +p(A.a0C,[A.a26,A.a27,A.a28,A.a29,A.a2a,A.a2b,A.a2c,A.a2d,A.a2e,A.a2f,A.a2g,A.a2h,A.a2i,A.KR,A.a2k,A.KS,A.KT,A.a2N,A.a2O,A.a2P,A.a2Q,A.a2R,A.KU,A.a2T,A.a2U,A.a2V,A.a2W,A.a2X,A.a2Y,A.a2Z,A.a3_,A.a30,A.a31,A.a32,A.a33,A.a34,A.a35,A.a36,A.a37,A.a38,A.a39,A.a3a,A.a3b,A.a3c,A.a3d,A.a3e,A.a3f,A.a3g,A.a3h,A.a3i,A.a3j,A.a3k,A.a3l,A.a3m,A.a3n,A.a3o,A.a3p,A.a3q,A.KV,A.a3s,A.a3t,A.a3u,A.a3v,A.a3w,A.a3x,A.KW,A.a3A,A.a3B,A.a3C,A.a3D,A.a3E,A.a3F,A.a3G,A.a3H,A.a3I,A.a3J,A.a3K,A.KX,A.a3O]) +q(A.a2j,A.KR) +p(A.KS,[A.a2l,A.a2m,A.a2n,A.a2o,A.a2p,A.a2q,A.a2r,A.a2s]) +p(A.KT,[A.a2t,A.a2u,A.a2v,A.a2w,A.a2x,A.a2y,A.a2z,A.a2A,A.a2B,A.a2C,A.a2D,A.a2E,A.a2F,A.a2G,A.a2H,A.a2I,A.a2J,A.a2K,A.a2L,A.a2M]) +q(A.a2S,A.KU) +q(A.a3r,A.KV) +p(A.KW,[A.a3y,A.a3z]) +p(A.KX,[A.a3L,A.KY]) +p(A.KY,[A.a3M,A.a3N]) +p(A.a0E,[A.aav,A.aaw,A.aax,A.aay,A.aaz,A.aaA,A.aaB,A.aaC,A.aaD,A.aaE,A.aaF,A.aaG,A.aaH,A.PE,A.aaJ,A.PF,A.PG,A.abb,A.abc,A.abd,A.abe,A.abf,A.PH,A.abh,A.abi,A.abj,A.abk,A.abl,A.abm,A.abn,A.abo,A.abp,A.abq,A.abr,A.abs,A.abt,A.abu,A.abv,A.abw,A.abx,A.aby,A.abz,A.abA,A.abB,A.abC,A.abD,A.abE,A.abF,A.abG,A.abH,A.abI,A.abJ,A.abK,A.abL,A.abM,A.abN,A.abO,A.abP,A.PI,A.abR,A.abS,A.abT,A.abU,A.abV,A.abW,A.PJ,A.abZ,A.ac_,A.ac0,A.ac1,A.ac2,A.ac3,A.ac4,A.ac5,A.ac6,A.ac7,A.ac8,A.PK,A.acc]) +q(A.aaI,A.PE) +p(A.PF,[A.aaK,A.aaL,A.aaM,A.aaN,A.aaO,A.aaP,A.aaQ,A.aaR]) +p(A.PG,[A.aaS,A.aaT,A.aaU,A.aaV,A.aaW,A.aaX,A.aaY,A.aaZ,A.ab_,A.ab0,A.ab1,A.ab2,A.ab3,A.ab4,A.ab5,A.ab6,A.ab7,A.ab8,A.ab9,A.aba]) +q(A.abg,A.PH) +q(A.abQ,A.PI) +p(A.PJ,[A.abX,A.abY]) +p(A.PK,[A.ac9,A.PL]) +p(A.PL,[A.aca,A.acb]) +p(A.aqg,[A.att,A.atC,A.atR]) +q(A.a46,A.ahg) +q(A.akv,A.anJ) +q(A.a8F,A.lW) +q(A.alG,A.anS) +q(A.akF,A.Vg) +q(A.aS4,A.aqf) +q(A.m7,A.w7) +p(A.m7,[A.Ou,A.Ow]) +q(A.aMN,A.a6B) +q(A.a7e,A.wi) +q(A.Af,A.WR) +p(A.Oo,[A.Ai,A.DN]) +q(A.aPa,A.WS) +p(A.aqo,[A.D9,A.Op]) +q(A.a8X,A.Op) +q(A.Hv,A.cP) +q(A.Wt,A.acS) +p(A.aBV,[A.arD,A.arE,A.asY,A.atL,A.atp,A.ato,A.ZD,A.atP,A.atQ,A.atd,A.atc,A.atg,A.ath,A.atf,A.ate,A.atr,A.ats,A.atq,A.ZI,A.az9,A.aAo,A.aKI,A.aMq,A.CY,A.aPn,A.aRg,A.aRh,A.aRl,A.aRk,A.aRm,A.aRi,A.aRj,A.aSr,A.aT4,A.aRp,A.aTz]) +p(A.aBW,[A.aue,A.aDr,A.aai]) +q(A.Km,A.Ik) +p(A.aBX,[A.we,A.IE,A.mK,A.wP,A.ayw,A.ayC,A.aAp,A.Bx,A.JV,A.aFx,A.a48,A.Mm,A.qE,A.aNg,A.Pd,A.aVN,A.aX0]) +p(A.aC2,[A.Ld,A.aaj]) +q(A.bdQ,A.a7y) +q(A.aAe,A.a7t) +q(A.RJ,A.V_) +q(A.age,A.UZ) +q(A.QI,A.UQ) +p(A.aqi,[A.pu,A.hw,A.is,A.lV,A.l3,A.iZ]) +q(A.baB,A.aF9) +q(A.XC,A.a1V) +q(A.atI,A.XC) +q(A.aRG,A.aFb) +q(A.ad9,A.UF) +p(A.fW,[A.a7F,A.a7G,A.a7H,A.a7I,A.a7J,A.a7K,A.a7L,A.a7M,A.a7N]) +p(A.e3,[A.Cd,A.a4d,A.Lk,A.xK,A.a4q,A.Lm,A.xL,A.Cj,A.Ck,A.Cl,A.Cm,A.Lp,A.Lo,A.a4H,A.Lr]) +q(A.Cp,A.a4C) +p(A.aJb,[A.aJF,A.aJN,A.aJL]) +p(A.u6,[A.a4s,A.Lq]) +q(A.a4A,A.a4e) +q(A.aJg,A.a4g) +p(A.a4A,[A.aJh,A.aJm,A.bn0,A.a4B]) +q(A.aJK,A.aJg) +q(A.bn_,A.Li) +p(A.DI,[A.ang,A.vx,A.akt]) +q(A.ahu,A.ang) +q(A.NT,A.akt) +p(A.m3,[A.a8e,A.BF,A.HM,A.HN,A.HO]) +q(A.Rk,A.UV) +q(A.aKP,A.aKO) +q(A.afY,A.an5) +q(A.acw,A.UC) +q(A.ana,A.an9) +q(A.agx,A.ana) +p(A.aM7,[A.aM8,A.aIx]) +q(A.aCS,A.aT0) +p(A.aCS,[A.aN_,A.aVn,A.aX4]) +q(A.aIy,A.aMn) +q(A.aWQ,A.aMv) +q(A.a7l,A.AE) +p(A.a7l,[A.f0,A.cn]) +p(A.b6,[A.bs,A.fC,A.xs,A.yC,A.yD,A.NG,A.NH,A.NI,A.wG,A.a4X,A.ly,A.yH,A.a6c,A.a7d,A.Et]) +p(A.fC,[A.mN,A.KJ,A.Pa,A.l0,A.NZ,A.N4]) +p(A.ha,[A.NR,A.wm,A.a5_]) +q(A.wg,A.xs) +p(A.N4,[A.Ku,A.Mi]) +q(A.ka,A.Ku) +p(A.as6,[A.aD7,A.aMr]) +p(A.aqe,[A.apd,A.ari]) +q(A.aFv,A.aqh) +q(A.aPC,A.aFv) +q(A.aM6,A.aqj) +q(A.aAW,A.aqk) +q(A.Kz,A.BF) +q(A.wf,A.Kz) +q(A.RM,A.NT) +p(A.aex,[A.EF,A.G8]) +p(A.j1,[A.Qt,A.Uo]) +q(A.a4M,A.Cv) +q(A.Hg,A.DN) +p(A.JD,[A.FV,A.FU]) +p(A.aRw,[A.aIz,A.aRu]) +q(A.a09,A.a8M) +p(A.DF,[A.F0,A.a8O]) +q(A.DE,A.a8P) +q(A.r0,A.a8O) +q(A.a8Z,A.DE) +q(A.agt,A.ra) +q(A.df,A.agt) +p(A.aNk,[A.a3R,A.XI]) +q(A.azJ,A.aVu) +p(A.uj,[A.i3,A.kU,A.hv,A.HF]) +p(A.aCw,[A.aMO,A.aAN,A.aD_,A.aWP,A.aqF]) +p(A.mT,[A.tU,A.us]) +p(A.dZ,[A.afg,A.a9L,A.a7j,A.a7i,A.D8,A.a7f,A.a7g,A.N6,A.a7h]) +p(A.a9L,[A.ii,A.HA,A.KN,A.M4]) +p(A.ii,[A.CI,A.CK,A.AO,A.a9v,A.a16]) +p(A.CI,[A.aad,A.a9w,A.a7A]) +p(A.aaf,[A.aPc,A.adx]) +q(A.ass,A.adx) +p(A.aVA,[A.baC,A.aVB]) +q(A.a7a,A.ajx) +p(A.aVS,[A.aVT,A.aIA]) +q(A.Rb,A.rn) +q(A.acf,A.vc) +q(A.amI,A.ack) +q(A.acm,A.amI) +q(A.amE,A.aoh) +q(A.amG,A.amF) +q(A.amH,A.amG) +q(A.em,A.amH) +p(A.em,[A.mc,A.ny,A.nz,A.nA,A.amB,A.nB,A.amJ,A.vd]) +q(A.j0,A.amB) +q(A.iC,A.amJ) +q(A.amD,A.amC) +q(A.hT,A.amD) +s(A.aet,A.XA) +s(A.aeN,A.aPJ) +s(A.agC,A.b4I) +s(A.agD,A.b4J) +s(A.agE,A.b4H) +r(A.ahT,A.QO) +r(A.ahU,A.QO) +s(A.anm,A.bgT) +s(A.aof,A.bdf) +s(A.Eh,A.a9W) +s(A.UI,A.S) +s(A.aho,A.S) +s(A.ahp,A.Bk) +s(A.Sh,A.S) +s(A.Si,A.Bk) +s(A.Sj,A.S) +s(A.Sk,A.Bk) +s(A.md,A.acX) +s(A.vH,A.al2) +s(A.Ei,A.Uh) +s(A.TE,A.bw) +s(A.TF,A.B) +s(A.TG,A.m1) +s(A.Ui,A.Uh) +s(A.an8,A.b8S) +s(A.aob,A.nr) +s(A.adY,A.asZ) +s(A.aeP,A.S) +s(A.aeQ,A.bN) +s(A.aeR,A.S) +s(A.aeS,A.bN) +s(A.afq,A.S) +s(A.afr,A.bN) +s(A.ag0,A.S) +s(A.ag1,A.bN) +s(A.aha,A.bw) +s(A.ahb,A.bw) +s(A.ahc,A.S) +s(A.ahd,A.bN) +s(A.ahw,A.S) +s(A.ahx,A.bN) +s(A.ahX,A.S) +s(A.ahY,A.bN) +s(A.ajR,A.bw) +s(A.TB,A.S) +s(A.TC,A.bN) +s(A.akH,A.S) +s(A.akI,A.bN) +s(A.akO,A.bw) +s(A.alz,A.S) +s(A.alA,A.bN) +s(A.U3,A.S) +s(A.U4,A.bN) +s(A.alK,A.S) +s(A.alL,A.bN) +s(A.amS,A.S) +s(A.amT,A.bN) +s(A.an2,A.S) +s(A.an3,A.bN) +s(A.ane,A.S) +s(A.anf,A.bN) +s(A.anK,A.S) +s(A.anL,A.bN) +s(A.anM,A.S) +s(A.anN,A.bN) +s(A.agG,A.S) +s(A.agH,A.bN) +s(A.ahD,A.S) +s(A.ahE,A.bN) +s(A.akS,A.S) +s(A.akT,A.bN) +s(A.alQ,A.S) +s(A.alR,A.bN) +s(A.acZ,A.bw) +r(A.Ge,A.e6) +s(A.ad8,A.a5e) +s(A.ajA,A.a5e) +s(A.aeI,A.avq) +s(A.QX,A.e0) +r(A.UU,A.e6) +s(A.ah6,A.avW) +s(A.acK,A.GT) +s(A.acL,A.w_) +s(A.acM,A.t0) +s(A.acN,A.aY) +s(A.Qn,A.GU) +s(A.Qo,A.w_) +s(A.Qp,A.t0) +s(A.aef,A.t1) +s(A.aiB,A.GU) +s(A.aiC,A.w_) +s(A.aiD,A.t0) +s(A.ajH,A.GU) +s(A.ajI,A.t0) +s(A.alM,A.GT) +s(A.alN,A.w_) +s(A.alO,A.t0) +s(A.UD,A.t1) +r(A.UM,A.ho) +r(A.UN,A.ho) +s(A.ae2,A.aY) +s(A.amU,A.nu) +s(A.ae3,A.aY) +r(A.UO,A.ho) +s(A.ae7,A.nu) +r(A.UP,A.e6) +r(A.V7,A.aD) +s(A.anp,A.el) +s(A.aeb,A.aY) +s(A.aed,A.aY) +s(A.afD,A.mC) +s(A.afC,A.aY) +s(A.aeF,A.aY) +s(A.ahZ,A.h6) +s(A.ai_,A.adF) +s(A.ai0,A.h6) +s(A.ai1,A.adG) +s(A.ai2,A.h6) +s(A.ai3,A.adH) +s(A.ai4,A.h6) +s(A.ai5,A.adI) +s(A.ai6,A.aY) +s(A.ai7,A.h6) +s(A.ai8,A.adJ) +s(A.ai9,A.h6) +s(A.aia,A.adK) +s(A.aib,A.h6) +s(A.aic,A.adL) +s(A.aid,A.h6) +s(A.aie,A.adM) +s(A.aif,A.h6) +s(A.aig,A.adN) +s(A.aih,A.h6) +s(A.aii,A.adO) +s(A.aij,A.h6) +s(A.aik,A.adP) +s(A.ail,A.h6) +s(A.aim,A.adQ) +s(A.ain,A.h6) +s(A.aio,A.adR) +s(A.aip,A.h6) +s(A.aiq,A.adS) +s(A.air,A.T3) +s(A.ais,A.h6) +s(A.ait,A.adT) +s(A.anT,A.adF) +s(A.anU,A.adG) +s(A.anV,A.adH) +s(A.anW,A.adI) +s(A.anX,A.aY) +s(A.anY,A.h6) +s(A.anZ,A.adJ) +s(A.ao_,A.adK) +s(A.ao0,A.adL) +s(A.ao1,A.adM) +s(A.ao2,A.adN) +s(A.ao3,A.adO) +s(A.ao4,A.adP) +s(A.ao5,A.adQ) +s(A.ao6,A.T3) +s(A.ao7,A.adR) +s(A.ao8,A.adS) +s(A.ao9,A.T3) +s(A.aoa,A.adT) +s(A.afQ,A.mC) +r(A.Q4,A.TU) +s(A.al9,A.aY) +s(A.ala,A.aY) +s(A.alb,A.aY) +s(A.alc,A.aY) +s(A.ald,A.aY) +s(A.act,A.aY) +s(A.acP,A.aY) +s(A.ad1,A.aY) +s(A.agZ,A.aY) +s(A.ade,A.aY) +s(A.adf,A.aY) +s(A.adh,A.aY) +s(A.adk,A.aY) +s(A.adl,A.aY) +r(A.UH,A.e6) +s(A.adm,A.aY) +s(A.ado,A.aY) +r(A.UJ,A.e6) +r(A.UK,A.E9) +s(A.ads,A.aY) +s(A.adt,A.aY) +s(A.adv,A.aY) +s(A.aej,A.aY) +s(A.ael,A.aY) +s(A.amV,A.nu) +s(A.aeH,A.aY) +s(A.aeM,A.aY) +s(A.aeX,A.aY) +s(A.UT,A.e0) +s(A.af3,A.aY) +s(A.amX,A.aY) +s(A.amY,A.aY) +s(A.amZ,A.aY) +s(A.an_,A.aY) +s(A.afd,A.aY) +s(A.afk,A.aY) +s(A.aft,A.aY) +s(A.an0,A.ayq) +s(A.an1,A.ayr) +s(A.afA,A.aY) +s(A.an6,A.aY) +s(A.agc,A.aY) +r(A.V0,A.pr) +s(A.agp,A.aY) +r(A.UG,A.e6) +r(A.UY,A.ho) +r(A.V1,A.e6) +r(A.anq,A.oR) +r(A.anv,A.oR) +s(A.agP,A.aY) +r(A.anb,A.e6) +s(A.ah7,A.aY) +s(A.ah8,A.aY) +s(A.ah9,A.aY) +s(A.ahq,A.aY) +s(A.ahr,A.aY) +s(A.ahs,A.aY) +s(A.ani,A.aY) +s(A.anj,A.aY) +s(A.ank,A.aY) +s(A.ahK,A.aY) +s(A.S5,A.a3P) +s(A.ahP,A.aY) +r(A.Vj,A.Gd) +r(A.Vk,A.Gd) +s(A.aiv,A.aY) +r(A.UL,A.ho) +r(A.V2,A.ho) +s(A.aiA,A.aY) +s(A.aiF,A.aY) +r(A.SJ,A.e6) +r(A.T9,A.e6) +r(A.Ta,A.e6) +r(A.Tb,A.ne) +r(A.UW,A.e6) +s(A.ak0,A.aY) +s(A.ak1,A.aY) +s(A.ak2,A.aY) +s(A.ak3,A.aY) +r(A.V9,A.ux) +r(A.Vb,A.ux) +r(A.Vf,A.e6) +s(A.ajO,A.aqp) +s(A.akx,A.aY) +s(A.akG,A.aY) +r(A.V3,A.e6) +r(A.V4,A.E9) +s(A.anO,A.akX) +s(A.anP,A.akX) +s(A.al0,A.aY) +s(A.al5,A.aY) +s(A.amR,A.t1) +s(A.amW,A.t1) +s(A.anQ,A.aY) +s(A.ali,A.aY) +r(A.Vi,A.ne) +s(A.ah4,A.nu) +s(A.alp,A.aY) +r(A.anz,A.aD) +r(A.anR,A.e6) +s(A.aly,A.aY) +s(A.alC,A.aY) +s(A.ams,A.aY) +s(A.alE,A.aY) +s(A.alH,A.aY) +r(A.U9,A.ho) +s(A.alJ,A.aY) +s(A.am8,A.aY) +s(A.add,A.aY) +s(A.aep,A.aY) +s(A.agf,A.aY) +s(A.agh,A.aY) +s(A.agg,A.aY) +s(A.akV,A.aY) +s(A.alx,A.aY) +r(A.Qr,A.fk) +r(A.SM,A.aD) +s(A.aj7,A.el) +r(A.SO,A.ux) +r(A.SP,A.aD) +s(A.aj9,A.a6Q) +r(A.ajb,A.aD) +s(A.ajc,A.el) +r(A.SQ,A.au9) +s(A.agB,A.mC) +s(A.and,A.aY) +s(A.ahV,A.mC) +s(A.ajg,A.mC) +r(A.SW,A.aD) +s(A.ajh,A.a6Q) +r(A.aji,A.ux) +r(A.U_,A.fk) +s(A.anC,A.hL) +s(A.anD,A.aY) +s(A.anE,A.bo) +r(A.aj3,A.MF) +r(A.SY,A.bp) +r(A.SZ,A.hK) +r(A.ajj,A.bp) +s(A.ak8,A.aY) +r(A.T0,A.bp) +s(A.akA,A.aY) +r(A.akB,A.fk) +r(A.akE,A.fk) +r(A.T2,A.aD) +s(A.ajp,A.aOJ) +s(A.ajq,A.aOP) +r(A.akC,A.fk) +s(A.akD,A.mV) +r(A.ajn,A.bp) +r(A.ajr,A.aD) +s(A.ajs,A.el) +r(A.ajv,A.bp) +r(A.mm,A.aD) +r(A.ajy,A.aD) +s(A.ajz,A.el) +s(A.aka,A.aY) +s(A.akd,A.mC) +s(A.ake,A.aY) +s(A.agy,A.aY) +s(A.agz,A.aY) +s(A.ahi,A.aY) +s(A.aiH,A.aY) +s(A.aiG,A.aY) +s(A.alk,A.aY) +s(A.anl,A.OS) +s(A.acu,A.aY) +s(A.acs,A.aY) +s(A.agu,A.aY) +r(A.V5,A.Fv) +r(A.V6,A.Fv) +r(A.amQ,A.ho) +r(A.UE,A.e6) +s(A.aog,A.e0) +r(A.T5,A.aPo) +r(A.Us,A.JF) +r(A.Ut,A.oL) +r(A.Uu,A.NJ) +r(A.Uv,A.a5N) +r(A.Uw,A.a80) +r(A.Ux,A.N3) +r(A.Uy,A.aat) +r(A.UR,A.e6) +r(A.US,A.pr) +r(A.R7,A.pr) +s(A.af6,A.e0) +r(A.R8,A.e6) +s(A.af7,A.aUz) +s(A.af8,A.aU7) +s(A.afF,A.mC) +s(A.afG,A.bo) +s(A.afH,A.mC) +s(A.afI,A.bo) +s(A.afM,A.aY) +r(A.aiM,A.avF) +s(A.ann,A.aY) +s(A.ano,A.aY) +s(A.akM,A.aY) +s(A.agd,A.aY) +s(A.an7,A.e0) +r(A.Fb,A.ho) +r(A.ant,A.bp) +s(A.anu,A.iU) +s(A.anc,A.e0) +r(A.Sn,A.e6) +r(A.So,A.ne) +s(A.an4,A.bo) +s(A.anh,A.LK) +r(A.anw,A.aD) +s(A.anx,A.el) +r(A.ahO,A.e6) +s(A.anr,A.zz) +s(A.ans,A.iS) +r(A.Va,A.aD) +s(A.anA,A.zz) +r(A.Su,A.jM) +r(A.UX,A.e6) +r(A.Vh,A.e6) +r(A.anB,A.ne) +r(A.Gf,A.ne) +r(A.zr,A.a1Q) +r(A.anG,A.pr) +s(A.afz,A.ni) +r(A.Tf,A.jM) +r(A.Td,A.jM) +s(A.ajY,A.ni) +r(A.Tj,A.e6) +r(A.Tk,A.ne) +r(A.FC,A.e6) +s(A.ahl,A.bo) +s(A.anF,A.hL) +r(A.Vc,A.a8_) +s(A.agT,A.aY) +s(A.akl,A.aY) +s(A.akm,A.bo) +s(A.ako,A.bo) +s(A.akr,A.aY) +s(A.aks,A.aIt) +s(A.amP,A.aY) +r(A.V8,A.bp) +s(A.anH,A.LK) +s(A.anI,A.aac) +r(A.Tx,A.kg) +s(A.adu,A.e0) +r(A.Vd,A.ho) +r(A.Ve,A.ho) +s(A.Uc,A.aVa) +s(A.aoc,A.e0) +s(A.aod,A.LK) +s(A.aoe,A.aac) +r(A.any,A.bp) +s(A.aer,A.aCa) +s(A.ahg,A.e0) +r(A.anJ,A.e6) +s(A.anS,A.e0) +r(A.Vg,A.e6) +s(A.acS,A.e0) +r(A.V_,A.ho) +r(A.UZ,A.e6) +r(A.UQ,A.ho) +r(A.UF,A.ho) +r(A.akt,A.a8g) +r(A.ang,A.a8g) +r(A.UV,A.ho) +s(A.an5,A.e0) +r(A.UC,A.ho) +r(A.an9,A.pr) +r(A.ana,A.LW) +s(A.adx,A.a_X) +r(A.ajx,A.aOY) +s(A.amI,A.aXr) +s(A.aoh,A.acj) +s(A.amF,A.acl) +s(A.amG,A.aXt) +s(A.amH,A.aXs) +s(A.amB,A.PO) +s(A.amJ,A.PO) +s(A.amC,A.PO) +s(A.amD,A.acl)})() +var v={typeUniverse:{eC:new Map(),tR:{},eT:{},tPV:{},sEA:[]},mangledGlobalNames:{t:"int",a5:"double",cX:"num",h:"String",H:"bool",aF:"Null",D:"List",O:"Object",ao:"Map"},mangledNames:{},types:["~()","a5(a5)","aF(@)","~(bj)","aF()","~(r)","a5(fW)","yX(fW)","IU(fW)","A(cz)","~(lx)","~(H)","n9()","o(Q)","~(O?)","a2<~>()","~(@)","h()","~(qs,z)","~(h)","aF(~)","H(h)","h(ch)","~(t)","H(tb,z)","aF(O,d0)","aF(H)","~(bc)","aF(by)","~(mI)","~(G)","H(ch)","~(O,d0)","~(h,@)","ib(fW)","D()","H(er)","H(bc)","a2>(@)","~(ca)","h(h)","aF(ch,ht)","~(mH)","H(O?)","~(iM)","~(ns,H)","H()","A?(cz)","H(@)","a2()","H(jz)","o(Q,O,d0?)","~(d9?)","H(e3)","o(Q,o?)","b0(@)","~(a5)","~(DU)","~(aj)","a5(P)","aF(@,@)","oT(cz)","~(uo)","h(@)","H(oi)","~(hL)","t()","~(un)","t(er,er)","a2<@>()","~(qy)","o(Q,dW,o?)","a2()","R(P,au)","~(uU)","a5(a5,a5)","J(cz)","rZ(Q)","@(@)","~(@,@)","t(boi)","b6()","0&(@)","~(hm,~())","mw(D,mw)","~(yW)","H(t)","t(O?)","a5(P,a5)","~(~())","t(h)","~(u6)","h(h?)","~(l8,qL)","t(t)","~(t,NO)","~(D)","~(t,t)","aF(r)","aF(h)","iy(ns)","~(bd)","H(lo)","h(xz)","cg?(cB?)","lf()","b6<@>()","H(hL)","H(jq)","b6<+(h,eV)>()","~(ao)","~(OE)","H(ao)","~(h,D)","A(A)","fU(@)","H(dX)","@(t4)","~(wY)","aF(aj)","~(xP)","~(i6<@>,yh)","t(G,G)","aF(t)","~(h,h)","H(ao<@,@>)","~(O,d0?)","a2<@>(n1)","@()","~(O?,O?)","o8(Q)","ch(@)","~(iH)","aF(f_)","a2<~>(@)","H(O)","br(cz)","a2<~>(ao)","~(by?)","t(ec,ec)","~(fY,H)","pL(@)","H(ec)","hO(hO)","H(k7)","H(yq)","eG(cz)","cg?(cB?)","~(lk)","lk()","a5()","h(aE)","db(Q)","~(qI)","~({curve:iK,descendant:G?,duration:bj,rect:I?})","o(Q)?(A2?)","dX()","~(R)","a2>()","aF(kT)","H(O?,O?)","a2(cc)","~(t,t?)","~(iQ)","cn(cn,cn)","h(t)","O?(O?)","H(e3?)","nj(jy)","H(wW)","o(Q,o,t?,H)","a2()","cz<0^>()","~(O[d0?])","aF(ht)","H(j3)","@(h)","a2<@>(@)","b6()","~(cc)","aF(@,d0)","t(@,@)","a2(@)","~(h?)","H(k9)","~(ao)","a2(@,t{reuseAddress:H,reusePort:H,ttl:t})","a5?(+(au,uV))","a2([r?])","~(kF)","~(jY)","h(a5,a5,h)","h?(h)","O(@)","~(h,h?)","r?(t)","h(h,O?)","H(h,h)","aj([r?])","kz(Q)","~(apr)","~(ard)","a2(jN)","hI?(hz,h,hI?)","aF(O?)","aF(fF)","k9()","A?(A?)","a5(zu)","oq(er,lO)","~(jz)","~(f_)","ck(Q,o?)","cg?(cB?)","H(bof)","o(Q,cz,o?)?(cB?)","a5(cz)","I()","~([c8?])","~(tB)","Ap(D)","~(P?)","h?(h?)","vP(Q,cU,o?)","vQ(Q,cU,o?)","~(bwZ)","R()","a5(R)","fh(Q,a5,o?)","~(H?)","~(C2)","~(fY?,H)","xb()","~(iP)","~(bnG)","a5?(P,au,uV)","jO(nk)","+boundaryEnd,boundaryStart(b_,b_)(b_)","H(tb)","~(uM)","a5({from!a5,to!a5})","~(z,P)","R(P)","~(D)","~(ec)","D(nK)","cz(x)","a2(d9?)","a2<~>(n1)","~(fq)","ao()","r()","H(u9)","dj<@>(lZ)","H(aw2)","~(hh)","~([bj?])","b_(b_,H,lf)","~(t,@)","t(h7,h7)","kj()","~(kj)","mY()","~(mY)","kM()","~(kM)","n8()","~(n8)","b0<@>?(b0<@>?,@,b0<@>(@))","t_(@)","~([a2<~>?])","pC(@)","a2(@)","jL(ca)","H(yB)","~(x_)","~(pJ)","~(iT)","H(hL,a5)","~(OH)","~(KF)","~(C1)","~(OG)","iy?(ns)","~(OF)","a2<@>(hy,pR)","~(qm)","~(re)","a2<~>(h)","pY(@)","aO>(h,k4)","0&()","o(Q,O,d0)","ik(Q)","o(Q,o,iP?)","o(Q,h,pI)","o(Q,h,O)","H(h,ch)","~(dy<@>)","~(cc,h,t)","O()","H(h,ao)","aS()","~(cX)","ma(ao)","H(aO>)","ky(Q,lH,o?)","lH(Q)","m6(Q,lH,o?)","~(h,H)","a5(h)","A(@)","aO(t,@)","zv(O?)","a2(qH)","t(df)","aF(nj)","od(Q)","a2(ch)","a2(h)","a2(H)","aF(by?)","aj?()","o(o?)","~([~])","a2(uu)","+(h,eV)(h,h,h)","a5(P,au)","t(hL,hL)","bW(a5)","H(h?)","rj()","~(OI)","t5(ao)","ic/(f_)","ic(vq)","jN/(ic)","jN(ic)","aV(o)","@(O)(~(hy,pR))","jN(jN)","br?(cz)","fG()","I()?(P)","~(c8?)","a2<~>(l8,qL)","0&(hy)","H(tI?)","A(vo)","a5(@)","ED()","a2(kF)","a2(@,@)","A?(A?,A?,A?[A?])","a3?(Q,xx,cS)","H(kP)","bdG?(bdG?,Qu)","~(hy,pR)","yF(@)","aF(h,O?)","aO>(h,D)","qr?(iV)","~(a5,a5)","~(ox)","H(uc)","po(Q,o?)","b7>()","H(cz)","~(nC)","A?()","cc(D)","Az(Q)","~(O)","p0()","p0?()","EJ(ce)","~(O?,h)","cU(H)","~(D,oX,a5)","jp>(o)","ik(t)","wX(@)","a2(O,d0)","~(iW,m0?)","xf(Q,o?)","yS(@)","m9()","aO>(O,oY<@>)","H(aO>)","H(v2)","a2(ol{allowUpscaling:H,cacheHeight:t?,cacheWidth:t?})","a2(ol{getTargetSize:bOb(t,t)?})","eh(eh,dp)","dp(dp)","H(dp)","h(dp)","H(a5)","A(a5)","Fi()","r?(a5)","a2<~>(O,d0?)","fu(Q,au)","aF(aq2)","~(fY)","o(Q,iP?)","~(O,d0?)?(iQ)","~(iP)?(iQ)","Gc(ce<@>)","LX(c6)","I(c6)","M_(c6)","H(t,H)","q2?()","Ga(ce>)","BU(BU)","~(D,r)","q5(z,t)","a5?()","R(au)","bJk?()","~(iW)","H(q9)","I(I?,hO)","H([O?,d0?])","au(P)","eG(ow)","~(ow,bW)","H(ow)","Bp(@)","~(D{isMergeUp:H})","rD(@)","~(R?)","~(p8)","H(p8)","aj()","+boundaryEnd,boundaryStart(b_,b_)(b_,h)","r7?(qs,z)","H(Dz{crossAxisPosition!a5,mainAxisPosition!a5})","aB(o)","o(Q,H,o?)","H(P)","aF(og)","a2(aBM)","H(e4)","~(B3?,DY?)","aF(k8,k8)","aF(D?>)","~(t,F4)","~(yA)","a2()","a2(fF)","ec(ry)","aF(O{level:qf?,name:h?,stackTrace:d0?})","a2(h)","t(ec)","ec(t)","~(nl)","~(eI,~(O?))","a2()","d9(d9?)","a2(h)","~({allowPlatformDefault!H})","b7()","a2(h?)","rD(f_)","a2<~>(d9?,~(d9?))","~(E,r)","DP()","qV(aRE)","o(Q,x1,o?)","a2(d9?)","Mu()","yY(Q,O?,o?)","Dc(o,cU)","hz?(hz,H)","D()","D(D)","a5(cX)","D<@>(h)","D(yz)","D3?(hz,H)","~(r,D)","~(d2)","~({allowPlatformDefault:H})","~(vh)","o(vh)","H(o)","kJ()","dj<@>?(lZ)","~(kJ)","H(BM)","@(@,h)","Ar(Q)","Ez()","a2(n1)","tm(Q)","a2<~>(lx)","kJ(kJ)","I(aw2)","a2(h,ao)","~(hI)","hI?(hz,h,hI?,t,t)","aO(aO)","~(v3)","~(nd)","~(qQ)","~(nh)","~(ayo)","~(mb)","O?(k3)","dS(dS,uY)","aF(~())","a2<~>(ui)","~(dS)","H(dS?,dS)","dS(dS)","wl(Q,j_)","H(kL)","~([er?])","~(mM)","H(Kk)","~(F3)","H(EM)","a_<@>?()","H(v4)","cz
  • (h7)","yT({from:a5?})","D
  • (Q)","I(h7)","t(p6,p6)","D(h7,B)","H(h7)","mD(bc)","bc?(bc)","O?(t,bc?)","~(Ew)","D?()","mG()","~(mG)","Qu?(rg)","a2(rg,h?)","h(h,A)","fF/(H)","a2()","h(O?)","ng()","~(ng)","~(qB)","~(qJ)","~(jF,O)","up(Q,o?)","~(rq)","o(Q,cU,By,Q,Q)","H(rq)","n0(Q,o?)","x9(Q)","H(A)","a_<@>(@)","aF(jY)","fF/(D<@>)","aF(E,r)","kn<@>?(@)","w5(@)","xE(@)","yR(@)","w4(@)","a2<@>(Fx)","ao(D<@>)","ao(ao)","aF(ao)","n0(Q)","H(dj<@>?)","a2<~>(~)","H(lW)","~(@,d0)","FA()","lo(dj<@>)","aO>(@,@)","P?()","zy()","P(t)","~(au)","As(Q,o?)","z7(Q,j_)","aF(fq?)","~(hm)","cv(H)","H(bow)","uA(Q,o?)","po(Q)","BB(Q,o?)","x8(ca)","C3(ca)","kn<@>?(@,@)","ik(o)","bc(t)","o(Q,j_)","H(jA)","o?(Q,t)","t?(o,t)","aF(D<~>)","o(Q,lA)","kn<@>(@)","~(v7)","~(h,O?)","H(ni?)","~(kG)","vp()","vM()","pc()","~(pc)","~(qz)","I(I)","H(I)","zf<@,@>(ce<@>)","D(x)","~(uL,c8)","D()","FQ(Q,j_)","~(P)","bc?()","vF(Q)","~(OA,@)","Bb(h)","kn<@>(@,@)","~(ln)","B(h)","h(eD)","F6()","oV()","~(oV)","oW()","~(oW)","mR()","~(mR)","~([uU?])","~(v6)","~(uw)","zF(Q,qu)","ark(H)","a2(lD?)","D(D)","cv()","cv()","~(h,AM)","cv()","~(~)","qj(o)","E7(h)","BZ(h)","CA(h)","Cz(h)","CB(h)","Cx(h)","Cy(h)","~(qA)","~(qC)","aF(d9)","a2()","a2<~>(h,d9?,~(d9?)?)","a2(Xn)","aF(h,h[O?])","L2()","~([O?])","aS(t,t,t,t,t,t,t,H)","h?(ua)","h(ua)","ao(ao,h)","AV(Q)","aF(iH)","~(h,t)","~(h,t?)","~(qx)","t(t,t)","a2>()","~(D>?)","~(D)","~(t,t,t)","a5?(t)","aF(i6<@>)","~(D)","H(lX)","a2<~>(yW)","dy<@>(@)","~(lE)","~(aO)","h6?(lX)","ao(pY)","t(@)","t(h,h)","k4(h)","ao(ao)","aO(h,@)","h(a5)","cX(@)","~(t,h)","aO>(h,@)","H(hd)","~(G1)","qO(Q,au)","be(Q)","wR(@)","ao<~(ca),bW?>()","~(~(ca),bW?)","H(D,D)","zd()","~(t,H(oi))","f_(f_)","H(aO)","h(aO)","~(wA)","cc(@,@)","aF(ln)","tk(f5)","AP(f5)","ch()","~(wy)","a2<~>(dy<@>)","t(ao,ao)","H(aO)","h(aO)","h(aO)","ao<@,@>()","wr(f5)","AJ(Q)","be(aO)","aB(Q,O,d0?)","Ek(Q)","be(tw)","C6(I?,I?)","mS(ma)","t(ue,ue)","~(mK)","o6(mK)","EL(f_)","~(h,r)","H?(t)","aF(Bf,a5)","u0<0^>(lZ,o(Q))","ma(aO)","@(@,@)","o6(Q,au)","lQ(Q,dW,o?)","be(Q,au)","mS(Q)","qT(Q,dW,o?)","EN(O?)","o6(Q,dW,o?)","pQ(oE)","qj(Q,dW,o?)","o(ch)","AK(Q)","m6(Q,dW,o?)","wO(C5)","~(t,h?,h?,h?)","~(t,h,h,h)","mS(Q,t)","mX(h)","mX(z4)","uP(Q)","rZ(Q,~(~()))","aV(Q,dW,o?)","be(Q,dW,o?)","xc(Q,dW,o?)","a2<~>(fY)","iN(aO>)","~(t?)","Es(Q,au)","a2<~>([r?])","wQ(aO>)","D(@)","iN(ch)","D(Q)","ky(ch)","be(Q,o?)","fj(h)","a5(rl)","a2?(ch)","ro(io)","H(blS)","H(dj<@>)","~(iM{isClosing:H?})","ao>?(ao?)","~(aO>)","~(ao)","@(@)(~(l8,qL))","a2(fF)","H(h0)","h0()","h0(ch)","iN(h0)","a2<~>(h0?)","o(Q,~(~()))","o(Q,t)","yK(Q,dW,o?)","t(vI,vI)","pF(Q,t)","mX(Q,t)","H(pu)","pu()","H(hw)","hw()","H(is)","is()","H(lV)","lV()","H(l3)","l3()","H(iZ)","iZ()","m6(Q,o?)","ro(O?)","vq(nj)","a2<+(h,jm?)>()","aS(O?)","t(k5,k5)","~(xI)","~(Ci)","~(Ce)","0^?(0^?(cB?))","0^?(cg<0^>?(cB?))","~(oE)","a2(qH,t)","~(AY)","~(u4)","~(Cn)","ty<@>(Q)","H(bof,h,t)","~(lR)","aF(tt)","yk(Q)","x6(Q)","tn(Q)","Be(Q)","cg?(cB?)","y8(Q)","wD(Q)","Bc(Q)","H(t,t)","a2<~>(ch)","a2<~>(ch{needReload:H})","a2(~)","o(Q,cU,cU)","a2(t)","ky(Q,t)","be(Q,dW,kd,o?)","to(ch)","cg?(cB?)","t(r)","h(mL)","be(Q,kd,o?)","o(mL)","o(Q,au)","qT(Q,n5,o?)","~(qU)","a2()","@(tY,h)","aF(t,h?)","aF(xT)","a2(qH)","cg?(cB?)","oe/(qH)","a2<~>(by?)","a2<~>(t3)","a2<~>(ao?)","aF(ht,h?)","mL(@)","~(ch)","cc(O?)","aF(Ea)","aF(ch)","o(Q,n5,kd,dW,o?)","aB(Q,t)","AQ(Q,t)","a2(ao)","fu(Q)","o8(Q,ht,o?)","fu(Q)","o8(Q,hx,o?)","aF(hx)","~(rc)","cg?(cB?)","t(fL,fL)","t(t,fL)","fL(h)","fL(h,h,h)","ha(h?,ha)","eG?(cz)","eG?(cB?)","h?()","t(nG)","~(tT,t)","O(nG)","O(j3)","t(j3,j3)","D(aO>)","r0()","a2()","l4(~)","LN()","a2(ol)","a2(d9)","zt(l4)","a5(d3,d3,d3,d3,a5)","ii?(h)","D(h)","~(dZ?)","iy(l2)","D()","D()","ii()","H(aO)","~(dZ)","~(t3)","il(il)","~(u3)","aO(@,@)","b6()","b6()","b6()","b6>()","b6()","a2(D)","b6()","b6()","b6()","b6()","b6()","b6()","a2(il)","il(il)","~([uu?])","vd(h)","iC(h,h,D,h,h)","hT(h,h,+(h,eV))","+(h,eV)(h,h,h,+(h,eV))","A?(cB?)","+(h,eV)(h)","j0(h,h,h,h)","ny(h,h,h)","mc(h,h,h)","nz(h,D,h,h)","h(h,h)","nB(h,h,h,h)","nA(h,h,h,hf?,h,h?,h,h)","hf(h,h,+(h,eV))","hf(h,h,+(h,eV),h,+(h,eV))","h(h,h,h)","b6(vc)","~(em)","r(t{params:O?})","h(v7{environment:ao?})","~(ke)","~(O?[O?])","~(PQ?,bP9?,PQ,~())","h(O?{toEncodable:O?(O?)?})","@(h{reviver:O?(O?,O?)?})","t(da<@>,da<@>)","h(h{encoding:pN})","D()","D(h,D)","h(am)","0^(0^,0^)","R?(R?,R?,a5)","a5?(cX?,cX?,a5)","A?(A?,A?,a5)","D(D)","H(t?)","a2(cc)","~(h,pZ)","o(Q,z,z,o)","~(cM{forceReport:H})","fD(h)","~(h?{wrapWidth:t?})","nq?(h)","a5(a5,a5,a5)","o(Q,cU,cU,o)","rd?(cB?)","~(P,z)","H?(H?,H?,a5)","o(Q,tr)","o(Q,o)","fK?(fK?,fK?,a5)","eh?(eh?,eh?,a5)","J?(J?,J?,a5)","t(pb<@>,pb<@>)","H({priority!t,scheduler!oL})","D(h)","o(o,cU)","o(o?,D)","~(er{alignment:a5?,alignmentPolicy:ys?,curve:iK?,duration:bj?})","t(bc,bc)","eP(eP?,eP?,a5)","o?(Q,xx,cS)","D>(n3,h)","t(o,t)","xA?(cB?)","bj?(cB?)","H?(cB?)","~(@[d0?])","D?(t)","ha(B)","~(Q,bo?)","~()(a1a,aA?)","t(vB,vB)","iG?(cB?)","BI?(cB?)","a2<1^>(1^/(0^),0^{debugLabel:h?})","@(@)(~(i6<@>,yh))","a2<~>(H)","aF(cc)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti"),rttc:{"2;":(a,b)=>c=>c instanceof A.b3&&a.b(c.a)&&b.b(c.b),"2;boundaryEnd,boundaryStart":(a,b)=>c=>c instanceof A.aiQ&&a.b(c.a)&&b.b(c.b),"2;distance,fragment":(a,b)=>c=>c instanceof A.SE&&a.b(c.a)&&b.b(c.b),"2;end,start":(a,b)=>c=>c instanceof A.aiR&&a.b(c.a)&&b.b(c.b),"2;endGlyphHeight,startGlyphHeight":(a,b)=>c=>c instanceof A.SF&&a.b(c.a)&&b.b(c.b),"2;localPosition,paragraph":(a,b)=>c=>c instanceof A.aiS&&a.b(c.a)&&b.b(c.b),"2;representation,targetSize":(a,b)=>c=>c instanceof A.aiT&&a.b(c.a)&&b.b(c.b),"3;":(a,b,c)=>d=>d instanceof A.kr&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;ascent,bottomHeight,subtextHeight":(a,b,c)=>d=>d instanceof A.aiU&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;data,event,timeStamp":(a,b,c)=>d=>d instanceof A.SG&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;domSize,representation,targetSize":(a,b,c)=>d=>d instanceof A.aiV&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;queue,target,timer":(a,b,c)=>d=>d instanceof A.aiW&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;textConstraints,tileSize,titleY":(a,b,c)=>d=>d instanceof A.aiX&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"3;x,y,z":(a,b,c)=>d=>d instanceof A.SH&&a.b(d.a)&&b.b(d.b)&&c.b(d.c),"4;":a=>b=>b instanceof A.aiY&&A.bjK(a,b.a),"4;domBlurListener,domFocusListener,element,semanticsNodeId":a=>b=>b instanceof A.SI&&A.bjK(a,b.a),"5;":a=>b=>b instanceof A.aiZ&&A.bjK(a,b.a),"8;":a=>b=>b instanceof A.aj_&&A.bjK(a,b.a)}} +A.bRi(v.typeUniverse,JSON.parse('{"k8":"tR","a64":"tR","oZ":"tR","bZq":"r","bZr":"r","bYd":"r","bYb":"bd","bZ4":"bd","bYc":"am","c_y":"am","c0d":"am","c_m":"bv","bYg":"bM","c_o":"bM","bZi":"bX","bYZ":"bX","c0X":"iB","c0e":"z9","bYn":"o4","c0t":"o4","c_p":"xG","bZl":"x7","bYz":"dO","bYB":"mA","bYD":"iz","bYE":"lG","bYA":"lG","bYC":"lG","jm":{"dB":[]},"h_":{"fp":[]},"pQ":{"BU":[]},"pP":{"azP":[]},"a0X":{"btu":[]},"a0W":{"bm":[]},"a0V":{"bm":[]},"zh":{"B":["1"],"B.E":"1"},"QQ":{"B":["1"],"B.E":"1"},"a0n":{"jm":[],"dB":[]},"a0p":{"jm":[],"dB":[]},"M5":{"h_":[],"fp":[],"br6":[]},"M7":{"h_":[],"fp":[],"brw":[]},"a5X":{"h_":[],"fp":[],"brv":[]},"M6":{"h_":[],"fp":[],"bru":[]},"M8":{"h_":[],"fp":[],"brA":[]},"a0T":{"jY":[]},"a0S":{"jY":[]},"JR":{"btx":[]},"M9":{"h_":[],"fp":[],"bty":[]},"Ma":{"h_":[],"fp":[],"buJ":[]},"Mb":{"h_":[],"fp":[],"buL":[]},"DO":{"LX":[]},"uT":{"M_":[]},"a6_":{"fp":[]},"IQ":{"eU":[]},"LY":{"eU":[]},"a5I":{"eU":[]},"a5M":{"eU":[]},"a5K":{"eU":[]},"a5J":{"eU":[]},"a5L":{"eU":[]},"a5v":{"eU":[]},"a5u":{"eU":[]},"a5t":{"eU":[]},"a5z":{"eU":[]},"a5B":{"eU":[]},"a5H":{"eU":[]},"a5F":{"eU":[]},"a5E":{"eU":[]},"a5x":{"eU":[]},"a5A":{"eU":[]},"a5w":{"eU":[]},"a5D":{"eU":[]},"a5G":{"eU":[]},"a5y":{"eU":[]},"a5C":{"eU":[]},"Mc":{"h_":[],"fp":[]},"wF":{"Ds":[]},"B9":{"Ds":[]},"a0H":{"Ds":[]},"Bv":{"Ds":[]},"a0G":{"Ds":[]},"Q6":{"oc":[]},"S8":{"oc":[]},"a_Q":{"oc":[]},"Cc":{"oc":[]},"C8":{"oc":[]},"a5Z":{"fp":[]},"Md":{"h_":[],"fp":[],"bwC":[]},"a0Q":{"jY":[]},"a0P":{"jY":[]},"NV":{"aAa":[]},"Dd":{"qN":[]},"a0l":{"qN":[]},"a1q":{"qN":[]},"xu":{"qN":[]},"a86":{"bnG":[]},"a9f":{"qN":[]},"pd":{"S":["1"],"D":["1"],"az":["1"],"B":["1"]},"ags":{"pd":["t"],"S":["t"],"D":["t"],"az":["t"],"B":["t"]},"a9O":{"pd":["t"],"S":["t"],"D":["t"],"az":["t"],"B":["t"],"S.E":"t","B.E":"t","pd.E":"t"},"CO":{"xW":[]},"Xk":{"DM":[]},"a7q":{"DM":[]},"J2":{"lR":[]},"afh":{"pP":[],"azP":[]},"B8":{"pP":[],"azP":[]},"aBM":{"ce":["D"]},"fF":{"b7":["D"]},"ln":{"b7":["cc"],"b7.T":"cc"},"kn":{"jS":["D"],"ce":["D"]},"jN":{"aBM":[],"jS":["D"],"ce":["D"],"jS.T":"D"},"EL":{"f_":[],"ce":["D"],"b7":["cc"],"b7.T":"cc"},"bdG":{"Qu":[]},"bQE":{"Qu":[]},"v9":{"ce":["@"],"b7":["@"]},"Gc":{"eJ":["D","@"],"ce":["D"],"eJ.S":"D","eJ.T":"@"},"Ga":{"eJ":["@","D"],"ce":["@"],"eJ.S":"@","eJ.T":"D"},"rD":{"v9":[],"ce":["@"],"b7":["@"],"b7.T":"@"},"hg":{"bm":[]},"My":{"hg":[],"bm":[]},"ag5":{"b7":["D"]},"ag2":{"fF":[],"b7":["D"],"b7.T":"D"},"alF":{"bI":["D","cc"],"bI.S":"D","bI.T":"cc"},"jS":{"ce":["1"],"jS.T":"1"},"ag6":{"jS":["D"],"ce":["D"]},"aj0":{"bvi":[]},"ag3":{"b7":["cc"],"b7.T":"cc"},"RH":{"b7":["ln"],"b7.T":"ln"},"PC":{"bm":[]},"r":{"aj":[]},"E":{"D":["1"],"r":[],"az":["1"],"aj":[],"B":["1"],"cs":["1"],"B.E":"1"},"Kc":{"H":[],"dT":[]},"Kd":{"aF":[],"dT":[]},"tR":{"r":[],"aj":[]},"aCZ":{"E":["1"],"D":["1"],"r":[],"az":["1"],"aj":[],"B":["1"],"cs":["1"],"B.E":"1"},"tO":{"a5":[],"cX":[],"da":["cX"]},"BL":{"a5":[],"t":[],"cX":[],"da":["cX"],"dT":[]},"Ke":{"a5":[],"cX":[],"da":["cX"],"dT":[]},"qd":{"h":[],"da":["h"],"cs":["@"],"dT":[]},"wc":{"b7":["2"],"b7.T":"2"},"Al":{"jG":["2"]},"wd":{"eJ":["3","4"],"eJ.S":"3","eJ.T":"4"},"w9":{"bI":["3","4"],"bI.S":"3","bI.T":"4"},"nE":{"B":["2"]},"wa":{"nE":["1","2"],"B":["2"],"B.E":"2"},"Ra":{"wa":["1","2"],"nE":["1","2"],"az":["2"],"B":["2"],"B.E":"2"},"Qi":{"S":["2"],"D":["2"],"nE":["1","2"],"az":["2"],"B":["2"]},"ij":{"Qi":["1","2"],"S":["2"],"D":["2"],"nE":["1","2"],"az":["2"],"B":["2"],"S.E":"2","B.E":"2"},"td":{"cz":["2"],"nE":["1","2"],"az":["2"],"B":["2"],"B.E":"2"},"wb":{"bw":["3","4"],"ao":["3","4"],"bw.V":"4","bw.K":"3"},"pv":{"nE":["1","2"],"az":["2"],"B":["2"],"B.E":"2"},"kO":{"dB":[]},"eY":{"S":["t"],"D":["t"],"az":["t"],"B":["t"],"S.E":"t","B.E":"t"},"az":{"B":["1"]},"aN":{"az":["1"],"B":["1"]},"aP":{"aN":["1"],"az":["1"],"B":["1"],"B.E":"1","aN.E":"1"},"hF":{"B":["2"],"B.E":"2"},"pM":{"hF":["1","2"],"az":["2"],"B":["2"],"B.E":"2"},"ad":{"aN":["2"],"az":["2"],"B":["2"],"B.E":"2","aN.E":"2"},"bh":{"B":["1"],"B.E":"1"},"hB":{"B":["2"],"B.E":"2"},"yL":{"B":["1"],"B.E":"1"},"J1":{"yL":["1"],"az":["1"],"B":["1"],"B.E":"1"},"qW":{"B":["1"],"B.E":"1"},"B4":{"qW":["1"],"az":["1"],"B":["1"],"B.E":"1"},"O_":{"B":["1"],"B.E":"1"},"jk":{"az":["1"],"B":["1"],"B.E":"1"},"q_":{"B":["1"],"B.E":"1"},"J0":{"q_":["1"],"az":["1"],"B":["1"],"B.E":"1"},"ey":{"B":["1"],"B.E":"1"},"q8":{"B":["+(t,1)"],"B.E":"+(t,1)"},"wE":{"q8":["1"],"az":["+(t,1)"],"B":["+(t,1)"],"B.E":"+(t,1)"},"Eh":{"S":["1"],"D":["1"],"az":["1"],"B":["1"]},"agN":{"aN":["t"],"az":["t"],"B":["t"],"B.E":"t","aN.E":"t"},"mW":{"bw":["t","1"],"ao":["t","1"],"bw.V":"1","bw.K":"t"},"e5":{"aN":["1"],"az":["1"],"B":["1"],"B.E":"1","aN.E":"1"},"hp":{"OA":[]},"wn":{"li":["1","2"],"ao":["1","2"]},"AC":{"ao":["1","2"]},"ai":{"AC":["1","2"],"ao":["1","2"]},"zo":{"B":["1"],"B.E":"1"},"cR":{"AC":["1","2"],"ao":["1","2"]},"HL":{"m1":["1"],"cz":["1"],"az":["1"],"B":["1"]},"kx":{"m1":["1"],"cz":["1"],"az":["1"],"B":["1"],"B.E":"1"},"hC":{"m1":["1"],"cz":["1"],"az":["1"],"B":["1"],"B.E":"1"},"a1e":{"q1":[]},"tJ":{"q1":[]},"LL":{"r8":[],"qo":[],"dB":[]},"a1h":{"qo":[],"dB":[]},"a9U":{"dB":[]},"a54":{"bm":[]},"TI":{"d0":[]},"tf":{"q1":[]},"Xt":{"q1":[]},"Xu":{"q1":[]},"a9h":{"q1":[]},"a8V":{"q1":[]},"Ae":{"q1":[]},"aei":{"dB":[]},"a7x":{"dB":[]},"iR":{"bw":["1","2"],"ao":["1","2"],"bw.V":"2","bw.K":"1"},"aR":{"az":["1"],"B":["1"],"B.E":"1"},"Kf":{"iR":["1","2"],"bw":["1","2"],"ao":["1","2"],"bw.V":"2","bw.K":"1"},"xj":{"iR":["1","2"],"bw":["1","2"],"ao":["1","2"],"bw.V":"2","bw.K":"1"},"Fk":{"a6A":[],"xz":[]},"acy":{"B":["a6A"],"B.E":"a6A"},"DJ":{"xz":[]},"akR":{"B":["xz"],"B.E":"xz"},"ox":{"kX":[],"cc":[],"S":["t"],"D":["t"],"hk":[],"cH":["t"],"r":[],"az":["t"],"aj":[],"cs":["t"],"B":["t"],"dT":[],"S.E":"t","B.E":"t"},"xN":{"r":[],"aj":[],"bkZ":[],"dT":[]},"Lx":{"S":["qa"],"D":["qa"],"az":["qa"],"B":["qa"],"dT":[],"S.E":"qa","B.E":"qa"},"hk":{"r":[],"aj":[]},"Lu":{"hk":[],"r":[],"d9":[],"aj":[],"dT":[]},"Ct":{"hk":[],"cH":["1"],"r":[],"aj":[],"cs":["1"]},"u8":{"S":["a5"],"D":["a5"],"hk":[],"cH":["a5"],"r":[],"az":["a5"],"aj":[],"cs":["a5"],"B":["a5"]},"kX":{"S":["t"],"D":["t"],"hk":[],"cH":["t"],"r":[],"az":["t"],"aj":[],"cs":["t"],"B":["t"]},"Lv":{"u8":[],"azj":[],"S":["a5"],"D":["a5"],"hk":[],"cH":["a5"],"r":[],"az":["a5"],"aj":[],"cs":["a5"],"B":["a5"],"dT":[],"S.E":"a5","B.E":"a5"},"a4P":{"u8":[],"azk":[],"S":["a5"],"D":["a5"],"hk":[],"cH":["a5"],"r":[],"az":["a5"],"aj":[],"cs":["a5"],"B":["a5"],"dT":[],"S.E":"a5","B.E":"a5"},"a4Q":{"kX":[],"aCP":[],"S":["t"],"D":["t"],"hk":[],"cH":["t"],"r":[],"az":["t"],"aj":[],"cs":["t"],"B":["t"],"dT":[],"S.E":"t","B.E":"t"},"Lw":{"kX":[],"aCQ":[],"S":["t"],"D":["t"],"hk":[],"cH":["t"],"r":[],"az":["t"],"aj":[],"cs":["t"],"B":["t"],"dT":[],"S.E":"t","B.E":"t"},"a4R":{"kX":[],"aCR":[],"S":["t"],"D":["t"],"hk":[],"cH":["t"],"r":[],"az":["t"],"aj":[],"cs":["t"],"B":["t"],"dT":[],"S.E":"t","B.E":"t"},"a4S":{"kX":[],"aV5":[],"S":["t"],"D":["t"],"hk":[],"cH":["t"],"r":[],"az":["t"],"aj":[],"cs":["t"],"B":["t"],"dT":[],"S.E":"t","B.E":"t"},"Ly":{"kX":[],"aV6":[],"S":["t"],"D":["t"],"hk":[],"cH":["t"],"r":[],"az":["t"],"aj":[],"cs":["t"],"B":["t"],"dT":[],"S.E":"t","B.E":"t"},"Lz":{"kX":[],"aV7":[],"S":["t"],"D":["t"],"hk":[],"cH":["t"],"r":[],"az":["t"],"aj":[],"cs":["t"],"B":["t"],"dT":[],"S.E":"t","B.E":"t"},"u7":{"qa":[]},"Ua":{"lh":[]},"afi":{"dB":[]},"Ub":{"r8":[],"dB":[]},"a_":{"a2":["1"]},"a4N":{"ce":["1"]},"fN":{"jG":["1"],"fN.T":"1"},"F8":{"ce":["1"]},"U7":{"yW":[]},"PX":{"ti":["1"]},"ig":{"B":["1"],"B.E":"1"},"WD":{"dB":[]},"aG":{"cA":["1"],"FX":["1"],"b7":["1"],"b7.T":"1"},"zc":{"vj":["1"],"fN":["1"],"jG":["1"],"fN.T":"1"},"ri":{"ce":["1"]},"pa":{"ri":["1"],"ce":["1"]},"cd":{"ri":["1"],"ce":["1"]},"fd":{"bm":[]},"ze":{"ti":["1"]},"aq":{"ze":["1"],"ti":["1"]},"rx":{"ze":["1"],"ti":["1"]},"Oo":{"b7":["1"]},"vG":{"ce":["1"]},"md":{"vG":["1"],"ce":["1"]},"vH":{"vG":["1"],"ce":["1"]},"cA":{"FX":["1"],"b7":["1"],"b7.T":"1"},"vj":{"fN":["1"],"jG":["1"],"fN.T":"1"},"FX":{"b7":["1"]},"EO":{"jG":["1"]},"Rc":{"b7":["1"],"b7.T":"1"},"zs":{"b7":["1"],"b7.T":"1"},"Sf":{"md":["1"],"vG":["1"],"a4N":["1"],"ce":["1"]},"ie":{"b7":["2"]},"vl":{"fN":["2"],"jG":["2"],"fN.T":"2"},"zI":{"ie":["1","1"],"b7":["1"],"b7.T":"1","ie.S":"1","ie.T":"1"},"jP":{"ie":["1","2"],"b7":["2"],"b7.T":"2","ie.S":"1","ie.T":"2"},"RC":{"ie":["1","1"],"b7":["1"],"b7.T":"1","ie.S":"1","ie.T":"1"},"FW":{"vl":["2","2"],"fN":["2"],"jG":["2"],"fN.T":"2"},"QN":{"ie":["1","1"],"b7":["1"],"b7.T":"1","ie.S":"1","ie.T":"1"},"Rf":{"ce":["1"]},"FR":{"fN":["2"],"jG":["2"],"fN.T":"2"},"FY":{"eJ":["1","2"]},"lm":{"b7":["2"],"b7.T":"2"},"TM":{"FY":["1","2"],"eJ":["1","2"],"eJ.S":"1","eJ.T":"2"},"amK":{"PQ":[]},"ajN":{"PQ":[]},"DG":{"bw":["1","2"],"ao":["1","2"],"bw.V":"2","bw.K":"1"},"rp":{"bw":["1","2"],"ao":["1","2"],"bw.V":"2","bw.K":"1"},"vr":{"rp":["1","2"],"bw":["1","2"],"ao":["1","2"],"bw.V":"2","bw.K":"1"},"QD":{"rp":["1","2"],"bw":["1","2"],"ao":["1","2"],"bw.V":"2","bw.K":"1"},"zl":{"az":["1"],"B":["1"],"B.E":"1"},"S_":{"iR":["1","2"],"bw":["1","2"],"ao":["1","2"],"bw.V":"2","bw.K":"1"},"p4":{"FO":["1"],"m1":["1"],"cz":["1"],"az":["1"],"B":["1"],"B.E":"1"},"kp":{"FO":["1"],"m1":["1"],"bKs":["1"],"cz":["1"],"az":["1"],"B":["1"],"B.E":"1"},"qh":{"B":["1"],"B.E":"1"},"S":{"D":["1"],"az":["1"],"B":["1"]},"bw":{"ao":["1","2"]},"Ei":{"bw":["1","2"],"ao":["1","2"]},"S2":{"az":["2"],"B":["2"],"B.E":"2"},"KK":{"ao":["1","2"]},"li":{"ao":["1","2"]},"QR":{"QS":["1"]},"QT":{"QS":["1"]},"IN":{"az":["1"],"B":["1"],"B.E":"1"},"Kx":{"aN":["1"],"az":["1"],"B":["1"],"B.E":"1","aN.E":"1"},"m1":{"cz":["1"],"az":["1"],"B":["1"]},"FO":{"m1":["1"],"cz":["1"],"az":["1"],"B":["1"]},"ru":{"az":["1"],"B":["1"],"B.E":"1"},"zB":{"az":["2"],"B":["2"],"B.E":"2"},"TD":{"az":["aO<1,2>"],"B":["aO<1,2>"],"B.E":"aO<1,2>"},"rv":{"p9":["1","2","1"],"p9.T":"1"},"TH":{"p9":["1","j6<1,2>","2"],"p9.T":"2"},"zA":{"p9":["1","j6<1,2>","aO<1,2>"],"p9.T":"aO<1,2>"},"DH":{"m1":["1"],"cz":["1"],"az":["1"],"B":["1"],"B.E":"1"},"zf":{"ce":["1"]},"RX":{"bw":["h","@"],"ao":["h","@"],"bw.V":"@","bw.K":"h"},"agv":{"aN":["h"],"az":["h"],"B":["h"],"B.E":"h","aN.E":"h"},"Fd":{"nr":[]},"Ww":{"pN":[]},"amd":{"bI":["h","D"]},"Wy":{"bI":["h","D"],"bI.S":"h","bI.T":"D"},"ame":{"nr":[]},"amc":{"bI":["D","h"]},"Wx":{"bI":["D","h"],"bI.S":"D","bI.T":"h"},"WQ":{"bI":["D","h"],"bI.S":"D","bI.T":"h"},"WP":{"bI":["h","D"],"bI.S":"h","bI.T":"D"},"ad3":{"nr":[]},"Rx":{"bI":["1","3"],"bI.S":"1","bI.T":"3"},"Kg":{"dB":[]},"a1i":{"dB":[]},"a1k":{"bI":["O?","h"],"bI.S":"O?","bI.T":"h"},"a1j":{"bI":["h","O?"],"bI.S":"h","bI.T":"O?"},"a1r":{"pN":[]},"a1t":{"bI":["h","D"],"bI.S":"h","bI.T":"D"},"a1s":{"bI":["D","h"],"bI.S":"D","bI.T":"h"},"G_":{"nr":[]},"zC":{"nr":[]},"a9Z":{"pN":[]},"Po":{"bI":["h","D"],"bI.S":"h","bI.T":"D"},"ami":{"nr":[]},"Pn":{"bI":["D","h"],"bI.S":"D","bI.T":"h"},"aS":{"da":["aS"]},"a5":{"cX":[],"da":["cX"]},"bj":{"da":["bj"]},"t":{"cX":[],"da":["cX"]},"D":{"az":["1"],"B":["1"]},"cX":{"da":["cX"]},"a6A":{"xz":[]},"cz":{"az":["1"],"B":["1"]},"h":{"da":["h"]},"w2":{"dB":[]},"r8":{"dB":[]},"jf":{"dB":[]},"CZ":{"dB":[]},"JZ":{"dB":[]},"qo":{"dB":[]},"z2":{"dB":[]},"z1":{"z2":[],"dB":[]},"ld":{"dB":[]},"XB":{"dB":[]},"a5l":{"dB":[]},"Ok":{"dB":[]},"zj":{"bm":[]},"ip":{"bm":[]},"Rz":{"aN":["1"],"az":["1"],"B":["1"],"B.E":"1","aN.E":"1"},"akU":{"d0":[]},"Dg":{"B":["t"],"B.E":"t"},"Ul":{"v7":[]},"mn":{"v7":[]},"aek":{"v7":[]},"dO":{"r":[],"aj":[]},"bd":{"r":[],"aj":[]},"am":{"r":[],"aj":[]},"iO":{"t8":[],"r":[],"aj":[]},"jo":{"r":[],"aj":[]},"u3":{"bd":[],"r":[],"aj":[]},"jt":{"r":[],"aj":[]},"bX":{"am":[],"r":[],"aj":[]},"jw":{"r":[],"aj":[]},"jB":{"am":[],"r":[],"aj":[]},"jC":{"r":[],"aj":[]},"jD":{"r":[],"aj":[]},"iz":{"r":[],"aj":[]},"jI":{"am":[],"r":[],"aj":[]},"iB":{"am":[],"r":[],"aj":[]},"jJ":{"r":[],"aj":[]},"bM":{"bX":[],"am":[],"r":[],"aj":[]},"W4":{"r":[],"aj":[]},"Wb":{"bX":[],"am":[],"r":[],"aj":[]},"Wu":{"bX":[],"am":[],"r":[],"aj":[]},"t8":{"r":[],"aj":[]},"WY":{"r":[],"aj":[]},"X6":{"am":[],"r":[],"aj":[]},"X9":{"bX":[],"am":[],"r":[],"aj":[]},"o4":{"bX":[],"am":[],"r":[],"aj":[]},"XJ":{"r":[],"aj":[]},"HS":{"r":[],"aj":[]},"XK":{"r":[],"aj":[]},"AF":{"r":[],"aj":[]},"lG":{"r":[],"aj":[]},"mA":{"r":[],"aj":[]},"XL":{"r":[],"aj":[]},"XM":{"r":[],"aj":[]},"XN":{"r":[],"aj":[]},"ZL":{"bX":[],"am":[],"r":[],"aj":[]},"ZM":{"r":[],"aj":[]},"ZW":{"am":[],"r":[],"aj":[]},"a_j":{"bX":[],"am":[],"r":[],"aj":[]},"a_u":{"r":[],"aj":[]},"IL":{"S":["l7"],"bN":["l7"],"D":["l7"],"cH":["l7"],"r":[],"az":["l7"],"aj":[],"B":["l7"],"cs":["l7"],"bN.E":"l7","S.E":"l7","B.E":"l7"},"IM":{"r":[],"l7":["cX"],"aj":[]},"a_x":{"S":["h"],"bN":["h"],"D":["h"],"cH":["h"],"r":[],"az":["h"],"aj":[],"B":["h"],"cs":["h"],"bN.E":"h","S.E":"h","B.E":"h"},"a_z":{"r":[],"aj":[]},"bv":{"bX":[],"am":[],"r":[],"aj":[]},"a_Z":{"am":[],"r":[],"aj":[]},"Bg":{"S":["iO"],"bN":["iO"],"D":["iO"],"cH":["iO"],"r":[],"az":["iO"],"aj":[],"B":["iO"],"cs":["iO"],"bN.E":"iO","S.E":"iO","B.E":"iO"},"a0b":{"am":[],"r":[],"aj":[]},"a0o":{"am":[],"r":[],"aj":[]},"a0q":{"bX":[],"am":[],"r":[],"aj":[]},"a0w":{"r":[],"aj":[]},"a0O":{"r":[],"aj":[]},"x7":{"S":["bX"],"bN":["bX"],"D":["bX"],"cH":["bX"],"r":[],"az":["bX"],"aj":[],"B":["bX"],"cs":["bX"],"bN.E":"bX","S.E":"bX","B.E":"bX"},"a11":{"r":[],"aj":[]},"BC":{"r":[],"aj":[]},"a1d":{"bX":[],"am":[],"r":[],"aj":[]},"a1p":{"bX":[],"am":[],"r":[],"aj":[]},"a1T":{"r":[],"aj":[]},"a3V":{"am":[],"r":[],"aj":[]},"a3W":{"r":[],"aj":[]},"Cb":{"am":[],"r":[],"aj":[]},"a40":{"bX":[],"am":[],"r":[],"aj":[]},"a41":{"r":[],"bw":["h","@"],"aj":[],"ao":["h","@"],"bw.V":"@","bw.K":"h"},"a42":{"r":[],"bw":["h","@"],"aj":[],"ao":["h","@"],"bw.V":"@","bw.K":"h"},"xG":{"am":[],"r":[],"aj":[]},"a43":{"S":["jt"],"bN":["jt"],"D":["jt"],"cH":["jt"],"r":[],"az":["jt"],"aj":[],"B":["jt"],"cs":["jt"],"bN.E":"jt","S.E":"jt","B.E":"jt"},"LJ":{"S":["bX"],"bN":["bX"],"D":["bX"],"cH":["bX"],"r":[],"az":["bX"],"aj":[],"B":["bX"],"cs":["bX"],"bN.E":"bX","S.E":"bX","B.E":"bX"},"a50":{"am":[],"r":[],"aj":[]},"a5d":{"bX":[],"am":[],"r":[],"aj":[]},"a5n":{"bX":[],"am":[],"r":[],"aj":[]},"a5Q":{"bX":[],"am":[],"r":[],"aj":[]},"a66":{"S":["jw"],"bN":["jw"],"D":["jw"],"cH":["jw"],"r":[],"az":["jw"],"aj":[],"B":["jw"],"cs":["jw"],"bN.E":"jw","S.E":"jw","B.E":"jw"},"a6e":{"am":[],"r":[],"aj":[]},"a6f":{"am":[],"r":[],"aj":[]},"a6l":{"bX":[],"am":[],"r":[],"aj":[]},"Ne":{"am":[],"r":[],"aj":[]},"Df":{"am":[],"r":[],"aj":[]},"a7v":{"r":[],"bw":["h","@"],"aj":[],"ao":["h","@"],"bw.V":"@","bw.K":"h"},"a7X":{"bX":[],"am":[],"r":[],"aj":[]},"Dt":{"r":[],"aj":[]},"a8a":{"am":[],"r":[],"aj":[]},"a8K":{"S":["jB"],"bN":["jB"],"D":["jB"],"am":[],"cH":["jB"],"r":[],"az":["jB"],"aj":[],"B":["jB"],"cs":["jB"],"bN.E":"jB","S.E":"jB","B.E":"jB"},"a8S":{"S":["jC"],"bN":["jC"],"D":["jC"],"cH":["jC"],"r":[],"az":["jC"],"aj":[],"B":["jC"],"cs":["jC"],"bN.E":"jC","S.E":"jC","B.E":"jC"},"a8W":{"r":[],"bw":["h","h"],"aj":[],"ao":["h","h"],"bw.V":"h","bw.K":"h"},"a9k":{"bX":[],"am":[],"r":[],"aj":[]},"a9B":{"S":["iB"],"bN":["iB"],"D":["iB"],"cH":["iB"],"r":[],"az":["iB"],"aj":[],"B":["iB"],"cs":["iB"],"bN.E":"iB","S.E":"iB","B.E":"iB"},"a9C":{"S":["jI"],"bN":["jI"],"D":["jI"],"am":[],"cH":["jI"],"r":[],"az":["jI"],"aj":[],"B":["jI"],"cs":["jI"],"bN.E":"jI","S.E":"jI","B.E":"jI"},"a9D":{"r":[],"aj":[]},"a9H":{"S":["jJ"],"bN":["jJ"],"D":["jJ"],"cH":["jJ"],"r":[],"az":["jJ"],"aj":[],"B":["jJ"],"cs":["jJ"],"bN.E":"jJ","S.E":"jJ","B.E":"jJ"},"a9I":{"r":[],"aj":[]},"a9X":{"r":[],"aj":[]},"aa7":{"am":[],"r":[],"aj":[]},"aan":{"am":[],"r":[],"aj":[]},"PM":{"am":[],"r":[],"aj":[]},"z9":{"am":[],"r":[],"aj":[]},"acY":{"bX":[],"am":[],"r":[],"aj":[]},"adX":{"S":["dO"],"bN":["dO"],"D":["dO"],"cH":["dO"],"r":[],"az":["dO"],"aj":[],"B":["dO"],"cs":["dO"],"bN.E":"dO","S.E":"dO","B.E":"dO"},"QP":{"r":[],"l7":["cX"],"aj":[]},"afP":{"S":["jo?"],"bN":["jo?"],"D":["jo?"],"cH":["jo?"],"r":[],"az":["jo?"],"aj":[],"B":["jo?"],"cs":["jo?"],"bN.E":"jo?","S.E":"jo?","B.E":"jo?"},"Sg":{"S":["bX"],"bN":["bX"],"D":["bX"],"cH":["bX"],"r":[],"az":["bX"],"aj":[],"B":["bX"],"cs":["bX"],"bN.E":"bX","S.E":"bX","B.E":"bX"},"akJ":{"S":["jD"],"bN":["jD"],"D":["jD"],"cH":["jD"],"r":[],"az":["jD"],"aj":[],"B":["jD"],"cs":["jD"],"bN.E":"jD","S.E":"jD","B.E":"jD"},"akW":{"S":["iz"],"bN":["iz"],"D":["iz"],"cH":["iz"],"r":[],"az":["iz"],"aj":[],"B":["iz"],"cs":["iz"],"bN.E":"iz","S.E":"iz","B.E":"iz"},"Rg":{"b7":["1"],"b7.T":"1"},"Rj":{"jG":["1"]},"I6":{"r":[],"aj":[]},"ZC":{"r":[],"aj":[]},"ZN":{"am":[],"r":[],"aj":[]},"a57":{"r":[],"aj":[]},"a58":{"r":[],"aj":[]},"AX":{"io":[]},"EN":{"AX":[],"io":[]},"oe":{"io":[]},"ro":{"oe":[],"io":[]},"zv":{"qH":[]},"nj":{"f_":[],"ce":["D"],"b7":["cc"]},"jy":{"uu":[],"b7":["ke"]},"zw":{"jy":[],"uu":[],"b7":["ke"],"b7.T":"ke"},"uu":{"b7":["ke"]},"f_":{"ce":["D"],"b7":["cc"]},"bnq":{"b7":["ke"]},"ub":{"bm":[]},"acn":{"bI":["D","D"],"bI.S":"D","bI.T":"D"},"jl":{"bm":[]},"M0":{"bm":[]},"M1":{"bm":[]},"CL":{"bm":[]},"nv":{"bm":[]},"q3":{"bm":[]},"no":{"bm":[]},"a53":{"bm":[]},"l7":{"c1s":["1"]},"kQ":{"r":[],"aj":[]},"kY":{"r":[],"aj":[]},"lg":{"r":[],"aj":[]},"Wc":{"r":[],"aj":[]},"a1J":{"S":["kQ"],"bN":["kQ"],"D":["kQ"],"r":[],"az":["kQ"],"aj":[],"B":["kQ"],"bN.E":"kQ","S.E":"kQ","B.E":"kQ"},"a56":{"S":["kY"],"bN":["kY"],"D":["kY"],"r":[],"az":["kY"],"aj":[],"B":["kY"],"bN.E":"kY","S.E":"kY","B.E":"kY"},"a67":{"r":[],"aj":[]},"a8Y":{"S":["h"],"bN":["h"],"D":["h"],"r":[],"az":["h"],"aj":[],"B":["h"],"bN.E":"h","S.E":"h","B.E":"h"},"a9K":{"S":["lg"],"bN":["lg"],"D":["lg"],"r":[],"az":["lg"],"aj":[],"B":["lg"],"bN.E":"lg","S.E":"lg","B.E":"lg"},"aCR":{"D":["t"],"az":["t"],"B":["t"]},"cc":{"D":["t"],"az":["t"],"B":["t"]},"aV7":{"D":["t"],"az":["t"],"B":["t"]},"aCP":{"D":["t"],"az":["t"],"B":["t"]},"aV5":{"D":["t"],"az":["t"],"B":["t"]},"aCQ":{"D":["t"],"az":["t"],"B":["t"]},"aV6":{"D":["t"],"az":["t"],"B":["t"]},"azj":{"D":["a5"],"az":["a5"],"B":["a5"]},"azk":{"D":["a5"],"az":["a5"],"B":["a5"]},"bJz":{"D":["qa"],"az":["qa"],"B":["qa"]},"WE":{"r":[],"aj":[]},"H4":{"am":[],"r":[],"aj":[]},"WF":{"r":[],"aj":[]},"WG":{"r":[],"bw":["h","@"],"aj":[],"ao":["h","@"],"bw.V":"@","bw.K":"h"},"WH":{"am":[],"r":[],"aj":[]},"Hd":{"am":[],"r":[],"aj":[]},"a59":{"am":[],"r":[],"aj":[]},"ty":{"a3":[],"o":[]},"Rs":{"a9":["ty<1>"]},"tz":{"dj":["1"]},"Ht":{"ax":[],"o":[]},"tc":{"fZ":["tc"],"fZ.T":"tc"},"ev":{"bl0":[],"B":["h"],"B.E":"h"},"le":{"brr":[]},"cP":{"ao":["2","3"]},"Ej":{"vJ":["1","B<1>"],"vJ.E":"1"},"Dr":{"vJ":["1","cz<1>"],"vJ.E":"1"},"a0M":{"bI":["D","h"],"bI.S":"D","bI.T":"h"},"a0K":{"bI":["D","mE"]},"agU":{"bI":["D","mE"],"bI.S":"D","bI.T":"mE"},"akf":{"bI":["D","mE"],"bI.S":"D","bI.T":"mE"},"akg":{"bI":["D","mE"],"bI.S":"D","bI.T":"mE"},"hy":{"bm":[]},"Ka":{"S":["i2"],"D":["i2"],"az":["i2"],"B":["i2"],"S.E":"i2","B.E":"i2"},"JY":{"i2":[]},"EJ":{"ce":["cc"]},"a_0":{"eJ":["cc","cc"],"eJ.S":"cc","eJ.T":"cc"},"EU":{"a3":[],"o":[]},"ES":{"a3":[],"o":[]},"EX":{"ax":[],"o":[]},"Fn":{"bE":[],"aV":[],"o":[]},"B_":{"a3":[],"o":[]},"af0":{"aA":[]},"EW":{"a9":["EU<1>"]},"QZ":{"a9":["ES<1>"]},"R0":{"eR":["mg<1>"],"h5":["mg<1>"],"dj":["mg<1>"],"eR.T":"mg<1>"},"ajf":{"P":[],"bp":["P"],"G":[],"aU":[]},"aeY":{"ax":[],"o":[]},"B0":{"a9":["B_<1>"],"e0":[]},"IW":{"a3":[],"o":[]},"R3":{"a9":["IW"]},"a7o":{"WC":[]},"IX":{"a3":[],"o":[]},"R4":{"bR":[],"bA":[],"o":[]},"af5":{"a9":["IX"]},"af4":{"fH":["C_"],"fH.T":"C_"},"a_I":{"bo":[],"aA":[]},"x1":{"bo":[],"aA":[]},"a_r":{"cS":["qU"],"bo":[],"aA":[]},"qV":{"a3":[],"o":[]},"qT":{"a3":[],"o":[]},"FP":{"a9":["qT"]},"NP":{"aRE":[]},"Dw":{"qV":[],"a3":[],"o":[]},"Tv":{"a9":["Dw"]},"NQ":{"a3":[],"o":[]},"akp":{"a9":["NQ"]},"L3":{"blD":[],"Bh":[],"AX":[],"io":[]},"L4":{"bm4":[],"Bh":[],"oe":[],"io":[]},"afs":{"ce":["D"]},"L5":{"Bh":[],"io":[]},"D3":{"hI":[]},"hz":{"hI":[]},"kJ":{"hI":[]},"bKr":{"hI":[]},"a7p":{"hz":[],"hI":[]},"agM":{"boi":[]},"cU":{"aA":[]},"A5":{"cU":["a5"],"aA":[]},"acz":{"cU":["a5"],"aA":[]},"acA":{"cU":["a5"],"aA":[]},"nY":{"cU":["1"],"aA":[]},"Mo":{"cU":["a5"],"aA":[]},"la":{"cU":["a5"],"aA":[]},"I7":{"cU":["a5"],"aA":[]},"z_":{"cU":["a5"],"aA":[]},"AA":{"cU":["1"],"aA":[]},"GV":{"cU":["1"],"aA":[]},"RZ":{"iK":[]},"Ng":{"iK":[]},"eF":{"iK":[]},"a8U":{"iK":[]},"P3":{"iK":[]},"eq":{"iK":[]},"P2":{"iK":[]},"mO":{"iK":[]},"aem":{"iK":[]},"b0":{"b4":["1"],"b4.T":"1","b0.T":"1"},"fU":{"b0":["A?"],"b4":["A?"],"b4.T":"A?","b0.T":"A?"},"bf":{"cU":["1"],"aA":[]},"fO":{"b4":["1"],"b4.T":"1"},"Na":{"b0":["1"],"b4":["1"],"b4.T":"1","b0.T":"1"},"a8k":{"b0":["R?"],"b4":["R?"],"b4.T":"R?","b0.T":"R?"},"Mx":{"b0":["I?"],"b4":["I?"],"b4.T":"I?","b0.T":"I?"},"tK":{"b0":["t"],"b4":["t"],"b4.T":"t","b0.T":"t"},"AD":{"b0":["1"],"b4":["1"],"b4.T":"1","b0.T":"1"},"hZ":{"b4":["a5"],"b4.T":"a5"},"Pi":{"b4":["1"],"b4.T":"1"},"HT":{"a3":[],"o":[]},"ae_":{"a9":["HT"]},"adZ":{"aA":[]},"HU":{"a3":[],"o":[]},"Qw":{"a9":["HU"]},"dP":{"A":[]},"ae1":{"nu":[]},"XO":{"ax":[],"o":[]},"wr":{"a3":[],"o":[]},"Qx":{"a9":["wr"]},"XP":{"eP":[]},"bGJ":{"bR":[],"bA":[],"o":[]},"ae4":{"fH":["aJ"],"fH.T":"aJ"},"ZY":{"aJ":[]},"I3":{"a3":[],"o":[]},"Qy":{"a9":["I3"]},"Zx":{"ax":[],"o":[]},"I2":{"a3":[],"o":[]},"EH":{"a3":[],"o":[]},"ae5":{"a9":["I2"]},"EI":{"a9":["EH<1>"]},"nF":{"kC":[]},"AG":{"a3":[],"o":[]},"ae6":{"oJ":["AG"],"a9":["AG"]},"ae8":{"aA":[]},"Zz":{"nu":[]},"QA":{"a3":[],"o":[]},"ZA":{"ax":[],"o":[]},"aea":{"bE":[],"aV":[],"o":[]},"aj6":{"P":[],"bp":["P"],"G":[],"aU":[]},"QB":{"a9":["QA"]},"agF":{"aA":[]},"ajK":{"aA":[]},"ae0":{"aA":[]},"QC":{"aV":[],"o":[]},"ae9":{"bP":[],"bc":[],"Q":[]},"zx":{"el":["P","iX"],"P":[],"aD":["P","iX"],"G":[],"aU":[],"aD.1":"iX","el.1":"iX","aD.0":"P"},"tk":{"a3":[],"o":[]},"Qz":{"a9":["tk"]},"agQ":{"aA":[]},"K1":{"et":[],"bR":[],"bA":[],"o":[]},"I4":{"ax":[],"o":[]},"vk":{"fD":[]},"Bb":{"vk":[],"fD":[]},"og":{"w2":[],"dB":[]},"a_Y":{"vk":[],"fD":[]},"a_V":{"vk":[],"fD":[]},"a_h":{"fD":[]},"afB":{"fD":[]},"bo":{"aA":[]},"cS":{"bo":[],"aA":[]},"zp":{"aA":[]},"mD":{"fD":[]},"Iw":{"fD":[]},"a_g":{"fD":[]},"Ix":{"fD":[]},"eK":{"iu":[],"eK.T":"1"},"a1R":{"iu":[]},"kl":{"iu":[]},"Kt":{"lS":[]},"bV":{"B":["1"],"B.E":"1"},"q4":{"B":["1"],"B.E":"1"},"cv":{"a2":["1"]},"Jx":{"cM":[]},"h6":{"ca":[]},"qz":{"ca":[]},"un":{"ca":[]},"uo":{"ca":[]},"qy":{"ca":[]},"qA":{"ca":[]},"qC":{"ca":[]},"iT":{"ca":[]},"qB":{"ca":[]},"acq":{"ca":[]},"alW":{"ca":[]},"y0":{"ca":[]},"alS":{"y0":[],"ca":[]},"y4":{"ca":[]},"am2":{"y4":[],"ca":[]},"alY":{"qz":[],"ca":[]},"alV":{"un":[],"ca":[]},"alX":{"uo":[],"ca":[]},"alU":{"qy":[],"ca":[]},"alZ":{"qA":[],"ca":[]},"am6":{"qC":[],"ca":[]},"y5":{"iT":[],"ca":[]},"am4":{"y5":[],"iT":[],"ca":[]},"y6":{"iT":[],"ca":[]},"am5":{"y6":[],"iT":[],"ca":[]},"a69":{"iT":[],"ca":[]},"am3":{"iT":[],"ca":[]},"am0":{"qB":[],"ca":[]},"y3":{"ca":[]},"am1":{"y3":[],"ca":[]},"y2":{"ca":[]},"am_":{"y2":[],"ca":[]},"y1":{"ca":[]},"alT":{"y1":[],"ca":[]},"mR":{"es":[],"eD":[]},"S9":{"G5":[]},"Ft":{"G5":[]},"mY":{"es":[],"eD":[]},"kG":{"es":[],"eD":[]},"lk":{"kG":[],"es":[],"eD":[]},"kM":{"kG":[],"es":[],"eD":[]},"n8":{"kG":[],"es":[],"eD":[]},"mG":{"es":[],"eD":[]},"es":{"eD":[]},"LO":{"es":[],"eD":[]},"CR":{"es":[],"eD":[]},"ng":{"es":[],"eD":[]},"kj":{"es":[],"eD":[]},"WT":{"es":[],"eD":[]},"oV":{"es":[],"eD":[]},"oW":{"es":[],"eD":[]},"He":{"es":[],"eD":[]},"zd":{"eD":[]},"adw":{"Bu":[]},"x8":{"jL":[]},"C3":{"jL":[]},"acr":{"ax":[],"o":[]},"Ev":{"ax":[],"o":[]},"WM":{"ax":[],"o":[]},"WL":{"ax":[],"o":[]},"a_D":{"ax":[],"o":[]},"a_C":{"ax":[],"o":[]},"a_N":{"ax":[],"o":[]},"a_M":{"ax":[],"o":[]},"bFf":{"et":[],"bR":[],"bA":[],"o":[]},"W7":{"ax":[],"o":[]},"KP":{"a3":[],"o":[]},"S3":{"a9":["KP"]},"GZ":{"a3":[],"o":[]},"aix":{"R":[]},"PW":{"a9":["GZ"]},"acQ":{"bE":[],"aV":[],"o":[]},"aj4":{"P":[],"bp":["P"],"G":[],"aU":[]},"C6":{"b0":["I?"],"b4":["I?"],"b4.T":"I?","b0.T":"I?"},"KZ":{"b0":["z"],"b4":["z"],"b4.T":"z","b0.T":"z"},"bKN":{"et":[],"bR":[],"bA":[],"o":[]},"Hl":{"a3":[],"o":[]},"zq":{"a3":[],"o":[]},"Qa":{"a9":["Hl"]},"aeW":{"ax":[],"o":[]},"adg":{"bE":[],"aV":[],"o":[]},"SK":{"P":[],"bp":["P"],"G":[],"aU":[]},"Fp":{"a9":["zq<1>"]},"L9":{"eR":["1"],"h5":["1"],"dj":["1"],"eR.T":"1"},"Q9":{"ax":[],"o":[]},"Hq":{"a3":[],"o":[]},"Qe":{"a9":["Hq"]},"ahh":{"eG":[],"cg":["eG"]},"agq":{"bE":[],"aV":[],"o":[]},"SS":{"P":[],"bp":["P"],"G":[],"aU":[]},"bFN":{"et":[],"bR":[],"bA":[],"o":[]},"Xg":{"ax":[],"o":[]},"Hw":{"a3":[],"o":[]},"adr":{"a9":["Hw"]},"adq":{"bo":[],"aA":[]},"bFX":{"bR":[],"bA":[],"o":[]},"qk":{"o5":["t"],"A":[],"o5.T":"t"},"a22":{"o5":["t"],"A":[],"o5.T":"t"},"aey":{"nu":[]},"a_5":{"ax":[],"o":[]},"AP":{"ax":[],"o":[]},"AV":{"ax":[],"o":[]},"rZ":{"ax":[],"o":[]},"Iz":{"eR":["1"],"h5":["1"],"dj":["1"],"eR.T":"1"},"pF":{"ax":[],"o":[]},"aa6":{"ax":[],"o":[]},"bHF":{"et":[],"bR":[],"bA":[],"o":[]},"ET":{"a3":[],"o":[]},"ER":{"a3":[],"o":[]},"zi":{"a3":[],"o":[]},"Fm":{"bE":[],"aV":[],"o":[]},"iN":{"ax":[],"o":[]},"IS":{"bR":[],"bA":[],"o":[]},"AZ":{"a3":[],"o":[]},"af_":{"aA":[]},"EV":{"a9":["ET<1>"]},"QY":{"a9":["ER<1>"]},"R_":{"eR":["mf<1>"],"h5":["mf<1>"],"dj":["mf<1>"],"eR.T":"mf<1>"},"R1":{"a9":["zi<1>"]},"aje":{"P":[],"bp":["P"],"G":[],"aU":[]},"aeZ":{"ax":[],"o":[]},"EQ":{"a9":["AZ<1>"],"e0":[]},"B5":{"a3":[],"o":[]},"EZ":{"cg":["A?"]},"afb":{"cg":["A?"]},"af9":{"cg":["a5"]},"afa":{"cg":["eG?"]},"afe":{"a3":[],"o":[]},"aff":{"ax":[],"o":[]},"afc":{"cB":[]},"bIa":{"et":[],"bR":[],"bA":[],"o":[]},"Jr":{"bR":[],"bA":[],"o":[]},"PV":{"cU":["1"],"aA":[]},"Tl":{"a3":[],"o":[]},"a0Z":{"ax":[],"o":[]},"ak5":{"a9":["Tl"]},"agb":{"a3":[],"o":[]},"ag7":{"cg":["A?"]},"ag9":{"cg":["A?"]},"ag8":{"cg":["eG?"]},"aga":{"cB":[]},"afu":{"cB":[]},"afv":{"cB":[]},"ahL":{"cB":[]},"JT":{"et":[],"bR":[],"bA":[],"o":[]},"K3":{"a3":[],"o":[]},"RQ":{"a9":["K3"]},"K4":{"on":[]},"tI":{"tL":[],"on":[]},"K6":{"tL":[],"on":[]},"K7":{"tL":[],"on":[]},"tL":{"on":[]},"Sw":{"bR":[],"bA":[],"o":[]},"RP":{"a3":[],"o":[]},"K5":{"ax":[],"o":[]},"RO":{"a9":["RP"],"box":[]},"a1b":{"ax":[],"o":[]},"kN":{"dp":[]},"ahv":{"kN":[],"dp":[]},"jK":{"kN":[],"dp":[]},"hJ":{"kN":[],"dp":[]},"Q8":{"a3":[],"o":[]},"RE":{"a3":[],"o":[]},"xf":{"a3":[],"o":[]},"RR":{"bo":[],"aA":[]},"RS":{"b0":["kN"],"b4":["kN"],"b4.T":"kN","b0.T":"kN"},"ago":{"aA":[]},"adc":{"a9":["Q8"]},"RF":{"a9":["RE"]},"SN":{"P":[],"oR":["id","P"],"G":[],"aU":[]},"aeq":{"kg":["id","P"],"aV":[],"o":[],"kg.0":"id","kg.1":"P"},"RT":{"a9":["xf"]},"mX":{"ax":[],"o":[]},"agm":{"cg":["A?"]},"agO":{"kg":["nH","P"],"aV":[],"o":[],"kg.0":"nH","kg.1":"P"},"SV":{"P":[],"oR":["nH","P"],"G":[],"aU":[]},"bKw":{"et":[],"bR":[],"bA":[],"o":[]},"OT":{"a3":[],"o":[]},"TZ":{"a9":["OT"]},"a2_":{"ax":[],"o":[]},"qj":{"a3":[],"o":[]},"SR":{"P":[],"bp":["P"],"G":[],"aU":[]},"yF":{"b0":["dp?"],"b4":["dp?"],"b4.T":"dp?","b0.T":"dp?"},"S4":{"a3":[],"o":[]},"ah3":{"a9":["qj"]},"agn":{"bE":[],"aV":[],"o":[]},"ah_":{"a9":["S4"]},"Ts":{"ax":[],"o":[]},"akh":{"aA":[]},"ah0":{"fH":["aE"],"fH.T":"aE"},"a__":{"aE":[]},"a5m":{"a3":[],"o":[]},"Sq":{"cg":["A?"]},"ahI":{"cg":["A?"]},"ahH":{"cg":["eG?"]},"ahJ":{"cB":[]},"bLO":{"et":[],"bR":[],"bA":[],"o":[]},"u0":{"a3P":["1"],"eR":["1"],"h5":["1"],"dj":["1"],"eR.T":"1"},"vP":{"a3":[],"o":[]},"vQ":{"a3":[],"o":[]},"Fw":{"a3":[],"o":[]},"amO":{"ax":[],"o":[]},"amM":{"a9":["vP"]},"amN":{"a9":["vQ"]},"aco":{"qr":[]},"Zy":{"qr":[]},"Sv":{"a9":["Fw<1>"]},"UA":{"bo":[],"aA":[]},"UB":{"bo":[],"aA":[]},"Kv":{"a3":[],"o":[]},"kw":{"a3":[],"o":[]},"a6m":{"a3":[],"o":[]},"agK":{"aA":[]},"agL":{"a9":["Kv"]},"EB":{"aA":[]},"Qk":{"a9":["kw"]},"aj1":{"aA":[]},"MB":{"a3":[],"o":[]},"aj2":{"a9":["kw"]},"bMs":{"et":[],"bR":[],"bA":[],"o":[]},"Mz":{"a3":[],"o":[]},"MA":{"a9":["Mz"]},"Nk":{"a3":[],"o":[]},"T8":{"bR":[],"bA":[],"o":[]},"Rq":{"a3":[],"o":[]},"Nh":{"a3":[],"o":[]},"Dk":{"a9":["Nh"]},"bR1":{"a3":[],"o":[]},"Nl":{"a9":["Nk"]},"ajU":{"bo":[],"aA":[]},"Q7":{"au":[]},"adb":{"ax":[],"o":[]},"Rr":{"a9":["Rq"]},"aeK":{"d2":["k3"],"d2.T":"k3"},"ajV":{"bR":[],"bA":[],"o":[]},"Fl":{"a3":[],"o":[]},"a7W":{"ax":[],"o":[]},"ah2":{"oJ":["Fl"],"a9":["Fl"]},"bNe":{"et":[],"bR":[],"bA":[],"o":[]},"O1":{"a3":[],"o":[]},"nC":{"c8":[]},"Tw":{"a9":["O1"]},"akw":{"aV":[],"o":[]},"FH":{"P":[],"G":[],"aU":[]},"amk":{"aV":[],"o":[]},"aju":{"P":[],"G":[],"aU":[]},"O2":{"et":[],"bR":[],"bA":[],"o":[]},"Ob":{"a3":[],"o":[]},"yI":{"a3":[],"o":[]},"Tz":{"a9":["Ob"]},"TA":{"a9":["yI"]},"S6":{"a3":[],"o":[]},"a95":{"ax":[],"o":[]},"S7":{"a9":["S6"]},"TR":{"bo":[],"aA":[]},"al_":{"pp":["nt"],"pp.T":"nt"},"akY":{"nt":[]},"akZ":{"nt":[]},"a96":{"ax":[],"o":[]},"bO4":{"bR":[],"bA":[],"o":[]},"OD":{"bo":[],"aA":[]},"v5":{"kC":[]},"OC":{"a3":[],"o":[]},"yK":{"a3":[],"o":[]},"a9a":{"ax":[],"o":[]},"al8":{"a3":[],"o":[]},"al7":{"el":["P","i_"],"P":[],"aD":["P","i_"],"G":[],"aU":[],"aD.1":"i_","el.1":"i_","aD.0":"P"},"al6":{"hj":[],"aV":[],"o":[]},"RL":{"aA":[]},"adp":{"cU":["a5"],"aA":[]},"EP":{"cU":["a5"],"aA":[]},"TS":{"a9":["OC"]},"TT":{"a9":["yK"]},"a9l":{"a3":[],"o":[]},"TW":{"cg":["A?"]},"alg":{"cg":["A?"]},"alf":{"cg":["eG?"]},"alh":{"cB":[]},"OL":{"et":[],"bR":[],"bA":[],"o":[]},"OP":{"a3":[],"o":[]},"TX":{"a9":["OP"]},"a3Q":{"nu":[]},"alo":{"aA":[]},"bOk":{"et":[],"bR":[],"bA":[],"o":[]},"U1":{"a3":[],"o":[]},"a9y":{"ax":[],"o":[]},"alu":{"a9":["U1"]},"alv":{"bE":[],"aV":[],"o":[]},"alw":{"P":[],"bp":["P"],"G":[],"aU":[]},"alr":{"hj":[],"aV":[],"o":[]},"als":{"bP":[],"bc":[],"Q":[]},"ajt":{"P":[],"aD":["P","iX"],"G":[],"aU":[],"aD.1":"iX","aD.0":"P"},"alq":{"ax":[],"o":[]},"alt":{"ax":[],"o":[]},"a9A":{"ax":[],"o":[]},"RN":{"et":[],"bR":[],"bA":[],"o":[]},"yS":{"b0":["m9"],"b4":["m9"],"b4.T":"m9","b0.T":"m9"},"GR":{"a3":[],"o":[]},"v0":{"ax":[],"o":[]},"acJ":{"a9":["GR"]},"yY":{"a3":[],"o":[]},"v2":{"a9":["yY"]},"afj":{"bE":[],"aV":[],"o":[]},"aja":{"P":[],"bp":["P"],"G":[],"ow":[],"aU":[]},"alI":{"ax":[],"o":[]},"bOF":{"et":[],"bR":[],"bA":[],"o":[]},"Cw":{"fZ":["bn4"],"fZ.T":"bn4"},"dh":{"iG":[]},"iF":{"iG":[]},"Fo":{"iG":[]},"al3":{"aA":[]},"fK":{"dp":[]},"me":{"dp":[]},"X0":{"dp":[]},"f4":{"dp":[]},"iI":{"dp":[]},"bb":{"kC":[]},"c6":{"uJ":[]},"hb":{"fK":[],"dp":[]},"o5":{"A":[]},"al":{"eh":[]},"eA":{"eh":[]},"vu":{"eh":[]},"Bq":{"dh":[],"iG":[]},"bn4":{"fZ":["bn4"]},"u2":{"fZ":["u2"],"fZ.T":"u2"},"WA":{"fZ":["nZ"]},"a4V":{"bm":[]},"H3":{"fZ":["nZ"],"fZ.T":"nZ"},"a63":{"k7":[]},"cu":{"fK":[],"dp":[]},"j4":{"fK":[],"dp":[]},"nm":{"kC":[]},"jE":{"fK":[],"dp":[]},"j7":{"fK":[],"dp":[]},"j8":{"fK":[],"dp":[]},"Er":{"lf":[]},"amg":{"lf":[]},"v_":{"k7":[],"ow":[],"aU":[]},"MG":{"P":[],"bp":["P"],"G":[],"aU":[]},"Q5":{"bo":[],"aA":[]},"aes":{"qu":[]},"ajG":{"yf":[],"bp":["P"],"G":[],"aU":[]},"tb":{"q5":[]},"P":{"G":[],"aU":[]},"w6":{"kL":["P"]},"iJ":{"e_":[]},"HP":{"iJ":[],"fk":["1"],"e_":[]},"lU":{"iJ":[],"fk":["P"],"e_":[]},"MK":{"el":["P","lU"],"P":[],"aD":["P","lU"],"G":[],"aU":[],"aD.1":"lU","el.1":"lU","aD.0":"P"},"ZG":{"aA":[]},"ML":{"P":[],"bp":["P"],"G":[],"aU":[]},"uy":{"bo":[],"aA":[]},"yb":{"P":[],"aD":["P","m8"],"G":[],"aU":[],"aD.1":"m8","aD.0":"P"},"aj8":{"P":[],"G":[],"aU":[]},"TY":{"uy":[],"bo":[],"aA":[]},"Qh":{"uy":[],"bo":[],"aA":[]},"EC":{"uy":[],"bo":[],"aA":[]},"MN":{"P":[],"G":[],"aU":[]},"i_":{"iJ":[],"fk":["P"],"e_":[]},"yc":{"el":["P","i_"],"P":[],"aD":["P","i_"],"G":[],"aU":[],"aD.1":"i_","el.1":"i_","aD.0":"P"},"MQ":{"P":[],"G":[],"aU":[]},"hc":{"hh":[]},"At":{"hc":[],"hh":[]},"HB":{"hc":[],"hh":[]},"Xx":{"hc":[],"hh":[]},"r7":{"n4":[],"hc":[],"hh":[]},"a5c":{"n4":[],"hc":[],"hh":[]},"Ks":{"hc":[],"hh":[]},"GX":{"hc":[],"hh":[]},"a62":{"hh":[]},"n4":{"hc":[],"hh":[]},"HC":{"hc":[],"hh":[]},"JX":{"n4":[],"hc":[],"hh":[]},"H9":{"hc":[],"hh":[]},"JB":{"hc":[],"hh":[]},"a49":{"bo":[],"aA":[]},"G":{"aU":[]},"fk":{"e_":[]},"ajM":{"jO":[]},"RK":{"jO":[]},"zD":{"jO":[]},"qv":{"nl":[]},"m8":{"fk":["P"],"e_":[]},"p8":{"hL":[],"bo":[],"aA":[]},"uz":{"P":[],"aD":["P","m8"],"G":[],"aU":[],"aD.1":"m8","aD.0":"P"},"uK":{"aA":[]},"MD":{"P":[],"bp":["P"],"G":[],"aU":[]},"qJ":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6Z":{"P":[],"bp":["P"],"G":[],"aU":[]},"MX":{"P":[],"bp":["P"],"G":[],"aU":[]},"MJ":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6S":{"P":[],"bp":["P"],"G":[],"aU":[]},"MS":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6U":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6F":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6G":{"P":[],"bp":["P"],"G":[],"aU":[]},"I8":{"aA":[]},"FD":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6K":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6J":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6I":{"P":[],"bp":["P"],"G":[],"aU":[]},"SX":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6V":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6W":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6L":{"P":[],"bp":["P"],"G":[],"aU":[]},"a76":{"P":[],"bp":["P"],"G":[],"aU":[]},"MO":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6O":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6Y":{"P":[],"bp":["P"],"G":[],"aU":[]},"MT":{"P":[],"bp":["P"],"G":[],"ow":[],"aU":[]},"a7_":{"P":[],"bp":["P"],"G":[],"aU":[]},"MP":{"P":[],"bp":["P"],"G":[],"aU":[]},"MU":{"P":[],"bp":["P"],"G":[],"aU":[]},"MZ":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6H":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6T":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6M":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6P":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6R":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6N":{"P":[],"bp":["P"],"G":[],"aU":[]},"MH":{"P":[],"bp":["P"],"G":[],"aU":[]},"MY":{"P":[],"bp":["P"],"G":[],"aU":[]},"hL":{"aA":[]},"yd":{"P":[],"bp":["P"],"G":[],"aU":[]},"MV":{"P":[],"bp":["P"],"G":[],"aU":[]},"a6E":{"P":[],"bp":["P"],"G":[],"aU":[]},"MW":{"P":[],"bp":["P"],"G":[],"aU":[]},"MM":{"P":[],"bp":["P"],"G":[],"aU":[]},"Dz":{"q5":[]},"qX":{"qY":[],"fk":["e4"],"e_":[]},"r_":{"uN":[],"fk":["e4"],"e_":[]},"e4":{"G":[],"aU":[]},"a8u":{"kL":["e4"]},"qY":{"e_":[]},"uN":{"e_":[]},"a71":{"qK":[],"e4":[],"aD":["P","i8"],"G":[],"aU":[],"aD.1":"i8","aD.0":"P"},"a72":{"qK":[],"e4":[],"aD":["P","i8"],"G":[],"aU":[]},"Dy":{"i8":[],"qY":[],"fk":["P"],"mV":[],"e_":[]},"a73":{"qK":[],"e4":[],"aD":["P","i8"],"G":[],"aU":[],"aD.1":"i8","aD.0":"P"},"a74":{"qK":[],"e4":[],"aD":["P","i8"],"G":[],"aU":[],"aD.1":"i8","aD.0":"P"},"mV":{"e_":[]},"i8":{"qY":[],"fk":["P"],"mV":[],"e_":[]},"qK":{"e4":[],"aD":["P","i8"],"G":[],"aU":[]},"N_":{"e4":[],"bp":["e4"],"G":[],"aU":[]},"a75":{"e4":[],"bp":["e4"],"G":[],"aU":[]},"fM":{"iJ":[],"fk":["P"],"e_":[]},"D5":{"el":["P","fM"],"P":[],"aD":["P","fM"],"G":[],"aU":[],"aD.1":"fM","el.1":"fM","aD.0":"P"},"MR":{"el":["P","fM"],"P":[],"aD":["P","fM"],"G":[],"aU":[],"aD.1":"fM","el.1":"fM","aD.0":"P"},"t_":{"b0":["iG?"],"b4":["iG?"],"b4.T":"iG?","b0.T":"iG?"},"GI":{"b0":["dh"],"b4":["dh"],"b4.T":"dh","b0.T":"dh"},"yf":{"bp":["P"],"G":[],"aU":[]},"D7":{"mm":["1"],"P":[],"aD":["e4","1"],"ME":[],"G":[],"aU":[]},"N1":{"mm":["r_"],"P":[],"aD":["e4","r_"],"ME":[],"G":[],"aU":[],"aD.1":"r_","mm.0":"r_","aD.0":"e4"},"a70":{"mm":["qX"],"P":[],"aD":["e4","qX"],"ME":[],"G":[],"aU":[],"aD.1":"qX","mm.0":"qX","aD.0":"e4"},"j_":{"bo":[],"aA":[]},"p1":{"iJ":[],"fk":["P"],"e_":[]},"N2":{"el":["P","p1"],"P":[],"aD":["P","p1"],"G":[],"aU":[],"aD.1":"p1","el.1":"p1","aD.0":"P"},"yT":{"a2":["~"]},"P4":{"bm":[]},"rh":{"da":["rh"]},"nK":{"da":["nK"]},"ry":{"da":["ry"]},"Dq":{"da":["Dq"]},"akb":{"fD":[]},"ND":{"bo":[],"aA":[]},"xR":{"da":["Dq"]},"zb":{"aq2":[]},"op":{"lO":[]},"xm":{"lO":[]},"xk":{"lO":[]},"xZ":{"bm":[]},"L8":{"bm":[]},"oT":{"eG":[]},"aev":{"eG":[]},"al4":{"Le":[]},"y9":{"qI":[]},"ut":{"qI":[]},"N9":{"bo":[],"aA":[]},"An":{"lf":[]},"BT":{"lf":[]},"uf":{"lf":[]},"IG":{"lf":[]},"a9n":{"uX":[]},"a9m":{"uX":[]},"a9o":{"uX":[]},"DX":{"uX":[]},"Bj":{"uY":[]},"a1I":{"uY":[]},"ahW":{"OS":[]},"po":{"a3":[],"o":[]},"PR":{"bR":[],"bA":[],"o":[]},"wW":{"a3":[],"o":[]},"apr":{"c8":[]},"ard":{"c8":[]},"k3":{"c8":[]},"fV":{"d2":["1"]},"dv":{"d2":["1"],"d2.T":"1"},"PS":{"a9":["po"]},"Rv":{"a9":["wW"]},"a_t":{"d2":["c8"],"d2.T":"c8"},"a_p":{"d2":["k3"]},"Ss":{"fV":["1"],"Fv":["1"],"d2":["1"],"d2.T":"1","fV.T":"1"},"St":{"fV":["1"],"Fv":["1"],"d2":["1"],"d2.T":"1","fV.T":"1"},"Qs":{"d2":["1"],"d2.T":"1"},"GP":{"a3":[],"o":[]},"acI":{"a9":["GP"]},"acH":{"bE":[],"aV":[],"o":[]},"GQ":{"a3":[],"o":[]},"PU":{"a9":["GQ"]},"GW":{"bE":[],"aV":[],"o":[]},"PD":{"a3":[],"o":[]},"Ur":{"a9":["PD"],"e0":[]},"Bt":{"a3":[],"o":[]},"Ry":{"a9":["Bt<1>"]},"Aa":{"a3":[],"o":[]},"PY":{"a9":["Aa"]},"Ki":{"bo":[],"aA":[]},"ahz":{"ax":[],"o":[]},"lI":{"bR":[],"bA":[],"o":[]},"As":{"bE":[],"aV":[],"o":[]},"Ar":{"bE":[],"aV":[],"o":[]},"wl":{"bE":[],"aV":[],"o":[]},"Az":{"bE":[],"aV":[],"o":[]},"be":{"bE":[],"aV":[],"o":[]},"fh":{"bE":[],"aV":[],"o":[]},"ik":{"bE":[],"aV":[],"o":[]},"kz":{"bE":[],"aV":[],"o":[]},"Kr":{"hl":["lU"],"bA":[],"o":[],"hl.T":"lU"},"aB":{"bE":[],"aV":[],"o":[]},"m6":{"hj":[],"aV":[],"o":[]},"up":{"hl":["fM"],"bA":[],"o":[],"hl.T":"fM"},"qO":{"hj":[],"aV":[],"o":[]},"o6":{"hj":[],"aV":[],"o":[]},"Es":{"hj":[],"aV":[],"o":[]},"bGY":{"bR":[],"bA":[],"o":[]},"BB":{"bE":[],"aV":[],"o":[]},"ck":{"bE":[],"aV":[],"o":[]},"uP":{"a3":[],"o":[]},"am9":{"jq":[],"bc":[],"Q":[]},"ama":{"bR":[],"bA":[],"o":[]},"a5b":{"bE":[],"aV":[],"o":[]},"WN":{"bE":[],"aV":[],"o":[]},"Ia":{"bE":[],"aV":[],"o":[]},"Xp":{"bE":[],"aV":[],"o":[]},"a60":{"bE":[],"aV":[],"o":[]},"a61":{"bE":[],"aV":[],"o":[]},"z0":{"bE":[],"aV":[],"o":[]},"a0c":{"bE":[],"aV":[],"o":[]},"a0r":{"bE":[],"aV":[],"o":[]},"a7r":{"bE":[],"aV":[],"o":[]},"I9":{"hj":[],"aV":[],"o":[]},"ep":{"bE":[],"aV":[],"o":[]},"a1K":{"bE":[],"aV":[],"o":[]},"qp":{"bE":[],"aV":[],"o":[]},"ahG":{"bP":[],"bc":[],"Q":[]},"a1f":{"bE":[],"aV":[],"o":[]},"a8x":{"bE":[],"aV":[],"o":[]},"a19":{"ax":[],"o":[]},"SB":{"hj":[],"aV":[],"o":[]},"agl":{"bP":[],"bc":[],"Q":[]},"a6b":{"ax":[],"o":[]},"Jq":{"hj":[],"aV":[],"o":[]},"of":{"hl":["i_"],"bA":[],"o":[],"hl.T":"i_"},"Bd":{"hl":["i_"],"bA":[],"o":[],"hl.T":"i_"},"a7n":{"hj":[],"aV":[],"o":[]},"a6u":{"aV":[],"o":[]},"a1P":{"bE":[],"aV":[],"o":[]},"Lf":{"bE":[],"aV":[],"o":[]},"lY":{"bE":[],"aV":[],"o":[]},"W2":{"bE":[],"aV":[],"o":[]},"a4_":{"bE":[],"aV":[],"o":[]},"WX":{"bE":[],"aV":[],"o":[]},"ts":{"bE":[],"aV":[],"o":[]},"K0":{"bE":[],"aV":[],"o":[]},"lP":{"ax":[],"o":[]},"fi":{"ax":[],"o":[]},"akN":{"a9":["uP"]},"wk":{"bE":[],"aV":[],"o":[]},"SL":{"P":[],"bp":["P"],"G":[],"aU":[]},"Nd":{"o":[]},"Nb":{"bc":[],"Q":[]},"aau":{"oL":[],"aU":[]},"ky":{"ax":[],"o":[]},"ZT":{"bE":[],"aV":[],"o":[]},"aeo":{"aA":[]},"tm":{"et":[],"bR":[],"bA":[],"o":[]},"ahA":{"ax":[],"o":[]},"a_2":{"ax":[],"o":[]},"IC":{"a3":[],"o":[]},"QM":{"a9":["IC"]},"ID":{"ax":[],"o":[]},"B1":{"a3":[],"o":[]},"R2":{"a9":["B1"]},"r5":{"cS":["dS"],"bo":[],"aA":[]},"B2":{"a3":[],"o":[]},"tr":{"a9":["B2"],"e0":[]},"Tc":{"a3":[],"o":[]},"rt":{"Eq":[],"k7":[]},"ady":{"bE":[],"aV":[],"o":[]},"aj5":{"P":[],"bp":["P"],"G":[],"aU":[]},"R5":{"hj":[],"aV":[],"o":[]},"ajX":{"a9":["Tc"],"bvF":[]},"rk":{"fV":["1"],"d2":["1"],"d2.T":"1","fV.T":"1"},"Uj":{"fV":["1"],"d2":["1"],"d2.T":"1","fV.T":"1"},"Uk":{"fV":["1"],"d2":["1"],"d2.T":"1","fV.T":"1"},"ak4":{"fV":["qS"],"d2":["qS"],"d2.T":"qS","fV.T":"qS"},"adU":{"fV":["o7"],"d2":["o7"],"d2.T":"o7","fV.T":"o7"},"amt":{"cS":["Av"],"bo":[],"aA":[],"e0":[]},"er":{"bo":[],"aA":[]},"tC":{"er":[],"bo":[],"aA":[]},"acR":{"e0":[]},"Jz":{"bo":[],"aA":[]},"wV":{"a3":[],"o":[]},"Rt":{"om":["er"],"bR":[],"bA":[],"o":[],"om.T":"er"},"F2":{"a9":["wV"]},"Bm":{"a3":[],"o":[]},"afK":{"a3":[],"o":[]},"afJ":{"a9":["wV"]},"a0_":{"ax":[],"o":[]},"JA":{"a3":[],"o":[]},"tq":{"c8":[]},"Ru":{"er":[],"bo":[],"aA":[]},"afL":{"a9":["JA"]},"a4Y":{"c8":[]},"a6g":{"c8":[]},"a_n":{"d2":["tq"],"d2.T":"tq"},"jp":{"iu":[]},"bG":{"jp":["1"],"iu":[]},"a3":{"o":[]},"aV":{"o":[]},"bc":{"Q":[]},"jF":{"bc":[],"Q":[]},"uh":{"bc":[],"Q":[]},"jq":{"bc":[],"Q":[]},"x2":{"jp":["1"],"iu":[]},"ax":{"o":[]},"bA":{"o":[]},"hl":{"bA":[],"o":[]},"bR":{"bA":[],"o":[]},"a1G":{"aV":[],"o":[]},"bE":{"aV":[],"o":[]},"hj":{"aV":[],"o":[]},"Ja":{"aV":[],"o":[]},"HH":{"bc":[],"Q":[]},"DI":{"bc":[],"Q":[]},"Mp":{"bc":[],"Q":[]},"bP":{"bc":[],"Q":[]},"a1F":{"bP":[],"bc":[],"Q":[]},"NS":{"bP":[],"bc":[],"Q":[]},"kW":{"bP":[],"bc":[],"Q":[]},"a77":{"bP":[],"bc":[],"Q":[]},"ahy":{"bc":[],"Q":[]},"ahB":{"o":[]},"mS":{"ax":[],"o":[]},"nb":{"a3":[],"o":[]},"D1":{"a9":["nb"]},"dC":{"x0":["1"]},"afR":{"bE":[],"aV":[],"o":[]},"x4":{"a3":[],"o":[]},"F9":{"a9":["x4"]},"JM":{"xP":[]},"ei":{"ax":[],"o":[]},"x9":{"et":[],"bR":[],"bA":[],"o":[]},"xa":{"a3":[],"o":[]},"RI":{"a9":["xa"],"e0":[]},"w5":{"b0":["au"],"b4":["au"],"b4.T":"au","b0.T":"au"},"pC":{"b0":["kC"],"b4":["kC"],"b4.T":"kC","b0.T":"kC"},"pL":{"b0":["eh"],"b4":["eh"],"b4.T":"eh","b0.T":"eh"},"w4":{"b0":["cY?"],"b4":["cY?"],"b4.T":"cY?","b0.T":"cY?"},"xE":{"b0":["bW"],"b4":["bW"],"b4.T":"bW","b0.T":"bW"},"yR":{"b0":["J"],"b4":["J"],"b4.T":"J","b0.T":"J"},"GJ":{"a3":[],"o":[]},"GM":{"a3":[],"o":[]},"GO":{"a3":[],"o":[]},"GL":{"a3":[],"o":[]},"GK":{"a3":[],"o":[]},"GN":{"a3":[],"o":[]},"IY":{"b0":["al"],"b4":["al"],"b4.T":"al","b0.T":"al"},"a17":{"a3":[],"o":[]},"BE":{"a9":["1"]},"A4":{"a9":["1"]},"acB":{"a9":["GJ"]},"acE":{"a9":["GM"]},"acG":{"a9":["GO"]},"acD":{"a9":["GL"]},"acC":{"a9":["GK"]},"acF":{"a9":["GN"]},"lN":{"bR":[],"bA":[],"o":[]},"K2":{"jq":[],"bc":[],"Q":[]},"om":{"bR":[],"bA":[],"o":[]},"Fc":{"jq":[],"bc":[],"Q":[]},"et":{"bR":[],"bA":[],"o":[]},"nD":{"ax":[],"o":[]},"lQ":{"pz":["au"],"aV":[],"o":[],"pz.0":"au"},"pz":{"aV":[],"o":[]},"Fe":{"bP":[],"bc":[],"Q":[]},"ST":{"iU":["au","P"],"P":[],"bp":["P"],"G":[],"aU":[],"iU.0":"au"},"S1":{"bR":[],"bA":[],"o":[]},"KD":{"a3":[],"o":[]},"amy":{"fH":["aI"],"fH.T":"aI"},"a_4":{"aI":[]},"agS":{"a9":["KD"]},"bu6":{"bR":[],"bA":[],"o":[]},"a6x":{"ax":[],"o":[]},"aht":{"aA":[]},"agV":{"bE":[],"aV":[],"o":[]},"ajd":{"P":[],"bp":["P"],"G":[],"aU":[]},"n0":{"lN":["hU"],"bR":[],"bA":[],"o":[],"lN.T":"hU"},"Sa":{"a3":[],"o":[]},"ah5":{"a9":["Sa"],"e0":[]},"Ex":{"es":[],"eD":[]},"ak9":{"bE":[],"aV":[],"o":[]},"ajl":{"P":[],"bp":["P"],"G":[],"aU":[]},"a45":{"ax":[],"o":[]},"Wf":{"a3":[],"o":[]},"acO":{"x0":["Ex"]},"ahe":{"ax":[],"o":[]},"a4U":{"ax":[],"o":[]},"bnd":{"lZ":[]},"x5":{"bR":[],"bA":[],"o":[]},"xO":{"a3":[],"o":[]},"n3":{"a9":["xO"]},"Fs":{"vv":[]},"Fr":{"vv":[]},"Sl":{"vv":[]},"Sm":{"vv":[]},"afW":{"bo":[],"B":["lo"],"aA":[],"B.E":"lo"},"afX":{"hm":["ao>?"],"bo":[],"aA":[]},"ea":{"bA":[],"o":[]},"Sp":{"bc":[],"Q":[]},"p5":{"iJ":[],"fk":["P"],"e_":[]},"a5o":{"hj":[],"aV":[],"o":[]},"FG":{"el":["P","p5"],"P":[],"aD":["P","p5"],"G":[],"aU":[],"aD.1":"p5","el.1":"p5","aD.0":"P"},"lW":{"aA":[]},"rs":{"a3":[],"o":[]},"Sr":{"a9":["rs"]},"xS":{"a3":[],"o":[]},"CF":{"a9":["xS"]},"vE":{"P":[],"aD":["P","fM"],"G":[],"aU":[],"aD.1":"fM","aD.0":"P"},"LS":{"a3":[],"o":[]},"vy":{"iS":["vy"],"iS.E":"vy"},"zy":{"bR":[],"bA":[],"o":[]},"vD":{"P":[],"bp":["P"],"G":[],"aU":[],"iS":["vD"],"iS.E":"vD"},"SU":{"P":[],"bp":["P"],"G":[],"aU":[]},"U5":{"hj":[],"aV":[],"o":[]},"alB":{"bP":[],"bc":[],"Q":[]},"G4":{"fM":[],"iJ":[],"fk":["P"],"e_":[]},"ahN":{"a9":["LS"]},"Fu":{"aV":[],"o":[]},"ahM":{"bP":[],"bc":[],"Q":[]},"aeu":{"bE":[],"aV":[],"o":[]},"JH":{"a3":[],"o":[]},"Oq":{"a3":[],"o":[]},"uc":{"jM":[]},"RB":{"a9":["JH"]},"RA":{"bo":[],"aA":[]},"afT":{"aA":[]},"TO":{"a9":["Oq"]},"TN":{"bo":[],"aA":[]},"buQ":{"eK":["1"],"iu":[]},"CH":{"ax":[],"o":[]},"LV":{"a3":[],"o":[]},"a5q":{"qP":[],"bo":[],"aA":[]},"xV":{"ni":[]},"vz":{"oM":[],"xV":[],"j_":[],"bo":[],"aA":[],"ni":[]},"ahQ":{"a9":["LV"]},"oC":{"eR":["1"],"h5":["1"],"dj":["1"]},"CS":{"bR":[],"bA":[],"o":[]},"Mv":{"a3":[],"o":[]},"SC":{"a9":["Mv"]},"uA":{"a3":[],"o":[]},"Pk":{"bR":[],"bA":[],"o":[]},"Nc":{"a3":[],"o":[]},"hm":{"bo":[],"aA":[]},"ajF":{"a9":["uA"]},"T6":{"a9":["Nc"]},"dG":{"hm":["1"],"bo":[],"aA":[]},"nJ":{"dG":["1"],"hm":["1"],"bo":[],"aA":[]},"T4":{"nJ":["1"],"dG":["1"],"hm":["1"],"bo":[],"aA":[]},"N8":{"nJ":["1"],"dG":["1"],"hm":["1"],"bo":[],"aA":[],"dG.T":"1","nJ.T":"1"},"N7":{"nJ":["H"],"dG":["H"],"hm":["H"],"bo":[],"aA":[],"dG.T":"H","nJ.T":"H"},"a7u":{"a3":[],"o":[]},"bYr":{"c15":["a2"]},"FJ":{"a9":["a7u<1>"]},"ajQ":{"bR":[],"bA":[],"o":[]},"ajC":{"dG":["uC?"],"hm":["uC?"],"bo":[],"aA":[],"dG.T":"uC?"},"Sc":{"lN":["bow"],"bR":[],"bA":[],"o":[],"lN.T":"bow"},"Fq":{"a3":[],"o":[]},"mk":{"a9":["Fq<1>"]},"CE":{"dj":["1"]},"h5":{"dj":["1"]},"aeL":{"d2":["k3"],"d2.T":"k3"},"eR":{"h5":["1"],"dj":["1"]},"Mh":{"eR":["1"],"h5":["1"],"dj":["1"]},"D_":{"eR":["1"],"h5":["1"],"dj":["1"]},"a7z":{"ax":[],"o":[]},"Np":{"fZ":["1"],"fZ.T":"1"},"Nq":{"bR":[],"bA":[],"o":[]},"qP":{"bo":[],"aA":[]},"FN":{"a3":[],"o":[]},"FL":{"eK":["iu"],"iu":[],"eK.T":"iu"},"Tq":{"a9":["FN"]},"Jp":{"ni":[]},"jz":{"kP":[],"jM":[]},"jA":{"jz":[],"kP":[],"jM":[]},"yu":{"jz":[],"kP":[],"jM":[]},"n7":{"jz":[],"kP":[],"jM":[]},"lc":{"jz":[],"kP":[],"jM":[]},"a9Y":{"jz":[],"kP":[],"jM":[]},"Te":{"bR":[],"bA":[],"o":[]},"rr":{"iS":["rr"],"iS.E":"rr"},"Ns":{"a3":[],"o":[]},"a7S":{"a9":["Ns"]},"oM":{"j_":[],"bo":[],"aA":[],"ni":[]},"yq":{"jM":[]},"yt":{"oM":[],"j_":[],"bo":[],"aA":[],"ni":[]},"a7T":{"ax":[],"o":[]},"X3":{"ax":[],"o":[]},"BX":{"ax":[],"o":[]},"JJ":{"ax":[],"o":[]},"Nt":{"a3":[],"o":[]},"Tg":{"bR":[],"bA":[],"o":[]},"yv":{"a9":["Nt"]},"Ti":{"a3":[],"o":[]},"ak_":{"a9":["Ti"]},"Th":{"bo":[],"aA":[]},"ajZ":{"bE":[],"aV":[],"o":[]},"ajk":{"P":[],"bp":["P"],"G":[],"aU":[]},"ajD":{"dG":["a5?"],"hm":["a5?"],"bo":[],"aA":[],"dG.T":"a5?"},"nh":{"c8":[]},"D2":{"a3":[],"o":[]},"pc":{"kj":[],"es":[],"eD":[]},"vM":{"lk":[],"kG":[],"es":[],"eD":[]},"vp":{"kM":[],"kG":[],"es":[],"eD":[]},"Dm":{"bo":[],"aA":[]},"oJ":{"a9":["1"]},"Cr":{"bo":[],"aA":[]},"yw":{"a3":[],"o":[]},"Dp":{"bR":[],"bA":[],"o":[]},"ak7":{"hL":[],"a9":["yw"],"aA":[]},"a7Y":{"aA":[]},"NK":{"a3":[],"o":[]},"akj":{"a9":["NK"]},"akk":{"lN":["O"],"bR":[],"bA":[],"o":[],"lN.T":"O"},"b1":{"uL":[]},"yG":{"a3":[],"o":[]},"NL":{"a3":[],"o":[]},"a1W":{"xl":["x"],"uL":[],"xl.T":"x"},"Dv":{"bo":[],"aA":[]},"Tu":{"a9":["yG"]},"NM":{"bo":[],"aA":[]},"Tt":{"a9":["NL"]},"akn":{"bR":[],"bA":[],"o":[]},"FQ":{"bE":[],"aV":[],"o":[]},"a8f":{"ax":[],"o":[]},"aku":{"bP":[],"bc":[],"Q":[]},"T1":{"P":[],"bp":["P"],"ME":[],"G":[],"aU":[]},"a8h":{"kP":[]},"a8i":{"bE":[],"aV":[],"o":[]},"ajm":{"P":[],"bp":["P"],"G":[],"aU":[]},"a8y":{"aV":[],"o":[]},"qZ":{"aV":[],"o":[]},"a8w":{"qZ":[],"aV":[],"o":[]},"a8t":{"qZ":[],"aV":[],"o":[]},"DA":{"bP":[],"bc":[],"Q":[]},"Kh":{"hl":["mV"],"bA":[],"o":[],"hl.T":"mV"},"a8r":{"ax":[],"o":[]},"aky":{"qZ":[],"aV":[],"o":[]},"akz":{"bE":[],"aV":[],"o":[]},"ajo":{"e4":[],"bp":["e4"],"G":[],"aU":[]},"O5":{"kg":["1","2"],"aV":[],"o":[]},"O6":{"bP":[],"bc":[],"Q":[]},"Oc":{"bo":[],"aA":[]},"a8I":{"bE":[],"aV":[],"o":[]},"FI":{"P":[],"bp":["P"],"G":[],"aU":[]},"a8H":{"bo":[],"aA":[]},"QE":{"bo":[],"aA":[]},"a8Q":{"ax":[],"o":[]},"N0":{"P":[],"bp":["P"],"G":[],"aU":[]},"D6":{"P":[],"bp":["P"],"G":[],"aU":[]},"a9e":{"bE":[],"aV":[],"o":[]},"a9d":{"bE":[],"aV":[],"o":[]},"a9q":{"bE":[],"aV":[],"o":[]},"AN":{"et":[],"bR":[],"bA":[],"o":[]},"bH2":{"et":[],"bR":[],"bA":[],"o":[]},"Tm":{"a3":[],"o":[]},"ahC":{"ax":[],"o":[]},"fs":{"ax":[],"o":[]},"ak6":{"a9":["Tm"]},"ajJ":{"ax":[],"o":[]},"Tn":{"bo":[],"aA":[]},"IF":{"c8":[]},"wu":{"c8":[]},"ww":{"c8":[]},"wv":{"c8":[]},"iL":{"c8":[]},"pT":{"iL":[],"c8":[]},"pW":{"iL":[],"c8":[]},"wN":{"iL":[],"c8":[]},"wI":{"iL":[],"c8":[]},"wJ":{"iL":[],"c8":[]},"kI":{"iL":[],"c8":[]},"tu":{"iL":[],"c8":[]},"pX":{"iL":[],"c8":[]},"pV":{"iL":[],"c8":[]},"wM":{"iL":[],"c8":[]},"pU":{"iL":[],"c8":[]},"qQ":{"c8":[]},"ayo":{"c8":[]},"qS":{"c8":[]},"o7":{"c8":[]},"ui":{"c8":[]},"uw":{"c8":[]},"nd":{"c8":[]},"v6":{"c8":[]},"mb":{"c8":[]},"v3":{"c8":[]},"a_o":{"c8":[]},"iX":{"iJ":[],"fk":["P"],"e_":[]},"vF":{"a3":[],"o":[]},"To":{"a3":[],"o":[]},"OV":{"a3":[],"o":[]},"Tr":{"a9":["vF"]},"Tp":{"a9":["To"]},"U0":{"a9":["OV"]},"HE":{"cS":["Av"],"bo":[],"aA":[],"e0":[]},"yU":{"a3":[],"o":[]},"R9":{"bR":[],"bA":[],"o":[]},"alD":{"a9":["yU"]},"Qq":{"aA":[]},"a9E":{"ax":[],"o":[]},"E8":{"bo":[],"aA":[]},"GS":{"a3":[],"o":[]},"Dc":{"a3":[],"o":[]},"PT":{"a9":["GS"]},"a8p":{"a3":[],"o":[]},"a3S":{"a3":[],"o":[]},"a7D":{"a3":[],"o":[]},"a8j":{"a3":[],"o":[]},"eB":{"bE":[],"aV":[],"o":[]},"ZU":{"a3":[],"o":[]},"W9":{"a3":[],"o":[]},"tX":{"a3":[],"o":[]},"Wd":{"a3":[],"o":[]},"Ed":{"a3":[],"o":[]},"Ee":{"a9":["Ed<1>"]},"Pj":{"cS":["Ef"],"bo":[],"aA":[]},"fu":{"a3":[],"o":[]},"G9":{"a9":["fu<1>"]},"Pt":{"a3":[],"o":[]},"zF":{"bR":[],"bA":[],"o":[]},"Sx":{"bR":[],"bA":[],"o":[]},"amo":{"a9":["Pt"],"e0":[]},"a6y":{"ax":[],"o":[]},"SD":{"aV":[],"o":[]},"aiK":{"bP":[],"bc":[],"Q":[]},"QF":{"jp":["1"],"iu":[]},"z7":{"hj":[],"aV":[],"o":[]},"amq":{"bP":[],"bc":[],"Q":[]},"a8b":{"hj":[],"aV":[],"o":[]},"Up":{"bR":[],"bA":[],"o":[]},"Pv":{"ax":[],"o":[]},"amr":{"bE":[],"aV":[],"o":[]},"ajw":{"P":[],"bp":["P"],"G":[],"aU":[]},"Eq":{"k7":[]},"amv":{"hl":["m8"],"bA":[],"o":[],"hl.T":"m8"},"ad_":{"bE":[],"aV":[],"o":[]},"T_":{"P":[],"bp":["P"],"G":[],"aU":[]},"p0":{"A":[],"cg":["A"]},"zJ":{"p0":[],"A":[],"cg":["A"]},"aaq":{"eG":[],"cg":["eG"]},"Rd":{"eG":[],"cg":["eG"]},"aap":{"br":[],"cg":["br?"]},"agI":{"cg":["br?"]},"rE":{"br":[],"cg":["br?"]},"aar":{"J":[],"cg":["J"]},"amw":{"J":[],"cg":["J"]},"RY":{"cg":["1?"]},"bQ":{"cg":["1"]},"bK":{"cg":["1"]},"aas":{"cS":["cz"],"bo":[],"aA":[]},"pI":{"mM":[]},"tx":{"mM":[]},"a4Z":{"ark":[]},"a0Y":{"bt0":[]},"JS":{"hg":[],"bm":[]},"a0B":{"aJ":[]},"afS":{"fH":["aJ"],"fH.T":"aJ"},"XQ":{"aJ":[]},"XR":{"aJ":[]},"XS":{"aJ":[]},"XT":{"aJ":[]},"XU":{"aJ":[]},"XV":{"aJ":[]},"XW":{"aJ":[]},"XX":{"aJ":[]},"XY":{"aJ":[]},"XZ":{"aJ":[]},"Y_":{"aJ":[]},"Y0":{"aJ":[]},"Y1":{"aJ":[]},"HV":{"aJ":[]},"Y2":{"aJ":[]},"Y3":{"aJ":[]},"HW":{"aJ":[]},"Y4":{"aJ":[]},"Y5":{"aJ":[]},"Y6":{"aJ":[]},"Y7":{"aJ":[]},"Y8":{"aJ":[]},"Y9":{"aJ":[]},"Ya":{"aJ":[]},"Yb":{"aJ":[]},"HX":{"aJ":[]},"Yc":{"aJ":[]},"Yd":{"aJ":[]},"Ye":{"aJ":[]},"Yf":{"aJ":[]},"Yg":{"aJ":[]},"Yh":{"aJ":[]},"Yi":{"aJ":[]},"Yj":{"aJ":[]},"Yk":{"aJ":[]},"Yl":{"aJ":[]},"Ym":{"aJ":[]},"Yn":{"aJ":[]},"Yo":{"aJ":[]},"Yp":{"aJ":[]},"Yq":{"aJ":[]},"Yr":{"aJ":[]},"Ys":{"aJ":[]},"Yt":{"aJ":[]},"Yu":{"aJ":[]},"Yv":{"aJ":[]},"Yw":{"aJ":[]},"Yx":{"aJ":[]},"Yy":{"aJ":[]},"Yz":{"aJ":[]},"YA":{"aJ":[]},"HY":{"aJ":[]},"YB":{"aJ":[]},"YC":{"aJ":[]},"YD":{"aJ":[]},"YE":{"aJ":[]},"YF":{"aJ":[]},"YG":{"aJ":[]},"YH":{"aJ":[]},"YI":{"aJ":[]},"YJ":{"aJ":[]},"YK":{"aJ":[]},"YL":{"aJ":[]},"YM":{"aJ":[]},"YN":{"aJ":[]},"YO":{"aJ":[]},"YP":{"aJ":[]},"YQ":{"aJ":[]},"YR":{"aJ":[]},"YS":{"aJ":[]},"YT":{"aJ":[]},"YU":{"aJ":[]},"YV":{"aJ":[]},"YW":{"aJ":[]},"YX":{"aJ":[]},"YY":{"aJ":[]},"YZ":{"aJ":[]},"Z_":{"aJ":[]},"Z0":{"aJ":[]},"Z1":{"aJ":[]},"Z2":{"aJ":[]},"Z3":{"aJ":[]},"Z4":{"aJ":[]},"Z5":{"aJ":[]},"Z6":{"aJ":[]},"Z7":{"aJ":[]},"Z8":{"aJ":[]},"HZ":{"aJ":[]},"Z9":{"aJ":[]},"Za":{"aJ":[]},"Zb":{"aJ":[]},"Zc":{"aJ":[]},"Zd":{"aJ":[]},"Ze":{"aJ":[]},"Zf":{"aJ":[]},"I_":{"aJ":[]},"Zg":{"aJ":[]},"Zh":{"aJ":[]},"Zi":{"aJ":[]},"Zj":{"aJ":[]},"Zk":{"aJ":[]},"Zl":{"aJ":[]},"Zm":{"aJ":[]},"Zn":{"aJ":[]},"Zo":{"aJ":[]},"Zp":{"aJ":[]},"Zq":{"aJ":[]},"Zr":{"aJ":[]},"Zs":{"aJ":[]},"I0":{"aJ":[]},"Zt":{"aJ":[]},"I1":{"aJ":[]},"Zu":{"aJ":[]},"Zv":{"aJ":[]},"Zw":{"aJ":[]},"a26":{"aE":[]},"a27":{"aE":[]},"a28":{"aE":[]},"a29":{"aE":[]},"a2a":{"aE":[]},"a2b":{"aE":[]},"a2c":{"aE":[]},"a2d":{"aE":[]},"a2e":{"aE":[]},"a2f":{"aE":[]},"a2g":{"aE":[]},"a2h":{"aE":[]},"a2i":{"aE":[]},"KR":{"aE":[]},"a2j":{"aE":[]},"a2k":{"aE":[]},"KS":{"aE":[]},"a2l":{"aE":[]},"a2m":{"aE":[]},"a2n":{"aE":[]},"a2o":{"aE":[]},"a2p":{"aE":[]},"a2q":{"aE":[]},"a2r":{"aE":[]},"a2s":{"aE":[]},"KT":{"aE":[]},"a2t":{"aE":[]},"a2u":{"aE":[]},"a2v":{"aE":[]},"a2w":{"aE":[]},"a2x":{"aE":[]},"a2y":{"aE":[]},"a2z":{"aE":[]},"a2A":{"aE":[]},"a2B":{"aE":[]},"a2C":{"aE":[]},"a2D":{"aE":[]},"a2E":{"aE":[]},"a2F":{"aE":[]},"a2G":{"aE":[]},"a2H":{"aE":[]},"a2I":{"aE":[]},"a2J":{"aE":[]},"a2K":{"aE":[]},"a2L":{"aE":[]},"a2M":{"aE":[]},"a2N":{"aE":[]},"a2O":{"aE":[]},"a2P":{"aE":[]},"a2Q":{"aE":[]},"a2R":{"aE":[]},"KU":{"aE":[]},"a2S":{"aE":[]},"a2T":{"aE":[]},"a2U":{"aE":[]},"a2V":{"aE":[]},"a2W":{"aE":[]},"a2X":{"aE":[]},"a2Y":{"aE":[]},"a2Z":{"aE":[]},"a3_":{"aE":[]},"a30":{"aE":[]},"a31":{"aE":[]},"a32":{"aE":[]},"a33":{"aE":[]},"a34":{"aE":[]},"a35":{"aE":[]},"a36":{"aE":[]},"a37":{"aE":[]},"a38":{"aE":[]},"a39":{"aE":[]},"a3a":{"aE":[]},"a3b":{"aE":[]},"a3c":{"aE":[]},"a3d":{"aE":[]},"a3e":{"aE":[]},"a3f":{"aE":[]},"a3g":{"aE":[]},"a3h":{"aE":[]},"a3i":{"aE":[]},"a3j":{"aE":[]},"a3k":{"aE":[]},"a3l":{"aE":[]},"a3m":{"aE":[]},"a3n":{"aE":[]},"a3o":{"aE":[]},"a3p":{"aE":[]},"a3q":{"aE":[]},"KV":{"aE":[]},"a3r":{"aE":[]},"a3s":{"aE":[]},"a3t":{"aE":[]},"a3u":{"aE":[]},"a3v":{"aE":[]},"a3w":{"aE":[]},"a3x":{"aE":[]},"KW":{"aE":[]},"a3y":{"aE":[]},"a3z":{"aE":[]},"a3A":{"aE":[]},"a3B":{"aE":[]},"a3C":{"aE":[]},"a3D":{"aE":[]},"a3E":{"aE":[]},"a3F":{"aE":[]},"a3G":{"aE":[]},"a3H":{"aE":[]},"a3I":{"aE":[]},"a3J":{"aE":[]},"a3K":{"aE":[]},"KX":{"aE":[]},"a3L":{"aE":[]},"KY":{"aE":[]},"a3M":{"aE":[]},"a3N":{"aE":[]},"a3O":{"aE":[]},"aav":{"aI":[]},"aaw":{"aI":[]},"aax":{"aI":[]},"aay":{"aI":[]},"aaz":{"aI":[]},"aaA":{"aI":[]},"aaB":{"aI":[]},"aaC":{"aI":[]},"aaD":{"aI":[]},"aaE":{"aI":[]},"aaF":{"aI":[]},"aaG":{"aI":[]},"aaH":{"aI":[]},"PE":{"aI":[]},"aaI":{"aI":[]},"aaJ":{"aI":[]},"PF":{"aI":[]},"aaK":{"aI":[]},"aaL":{"aI":[]},"aaM":{"aI":[]},"aaN":{"aI":[]},"aaO":{"aI":[]},"aaP":{"aI":[]},"aaQ":{"aI":[]},"aaR":{"aI":[]},"PG":{"aI":[]},"aaS":{"aI":[]},"aaT":{"aI":[]},"aaU":{"aI":[]},"aaV":{"aI":[]},"aaW":{"aI":[]},"aaX":{"aI":[]},"aaY":{"aI":[]},"aaZ":{"aI":[]},"ab_":{"aI":[]},"ab0":{"aI":[]},"ab1":{"aI":[]},"ab2":{"aI":[]},"ab3":{"aI":[]},"ab4":{"aI":[]},"ab5":{"aI":[]},"ab6":{"aI":[]},"ab7":{"aI":[]},"ab8":{"aI":[]},"ab9":{"aI":[]},"aba":{"aI":[]},"abb":{"aI":[]},"abc":{"aI":[]},"abd":{"aI":[]},"abe":{"aI":[]},"abf":{"aI":[]},"PH":{"aI":[]},"abg":{"aI":[]},"abh":{"aI":[]},"abi":{"aI":[]},"abj":{"aI":[]},"abk":{"aI":[]},"abl":{"aI":[]},"abm":{"aI":[]},"abn":{"aI":[]},"abo":{"aI":[]},"abp":{"aI":[]},"abq":{"aI":[]},"abr":{"aI":[]},"abs":{"aI":[]},"abt":{"aI":[]},"abu":{"aI":[]},"abv":{"aI":[]},"abw":{"aI":[]},"abx":{"aI":[]},"aby":{"aI":[]},"abz":{"aI":[]},"abA":{"aI":[]},"abB":{"aI":[]},"abC":{"aI":[]},"abD":{"aI":[]},"abE":{"aI":[]},"abF":{"aI":[]},"abG":{"aI":[]},"abH":{"aI":[]},"abI":{"aI":[]},"abJ":{"aI":[]},"abK":{"aI":[]},"abL":{"aI":[]},"abM":{"aI":[]},"abN":{"aI":[]},"abO":{"aI":[]},"abP":{"aI":[]},"PI":{"aI":[]},"abQ":{"aI":[]},"abR":{"aI":[]},"abS":{"aI":[]},"abT":{"aI":[]},"abU":{"aI":[]},"abV":{"aI":[]},"abW":{"aI":[]},"PJ":{"aI":[]},"abX":{"aI":[]},"abY":{"aI":[]},"abZ":{"aI":[]},"ac_":{"aI":[]},"ac0":{"aI":[]},"ac1":{"aI":[]},"ac2":{"aI":[]},"ac3":{"aI":[]},"ac4":{"aI":[]},"ac5":{"aI":[]},"ac6":{"aI":[]},"ac7":{"aI":[]},"ac8":{"aI":[]},"PK":{"aI":[]},"ac9":{"aI":[]},"PL":{"aI":[]},"aca":{"aI":[]},"acb":{"aI":[]},"acc":{"aI":[]},"a0C":{"aE":[]},"ah1":{"fH":["aE"],"fH.T":"aE"},"a0E":{"aI":[]},"amz":{"fH":["aI"],"fH.T":"aI"},"Ib":{"a3":[],"o":[]},"ZH":{"a9":["Ib"]},"aiu":{"ax":[],"o":[]},"am7":{"aA":[]},"aiw":{"eR":["~"],"h5":["~"],"dj":["~"],"eR.T":"~"},"a46":{"e0":[]},"Jy":{"a3":[],"o":[]},"afE":{"a9":["Jy"]},"Jg":{"a3":[],"o":[]},"afl":{"a9":["Jg"]},"KL":{"a3":[],"o":[]},"agX":{"a9":["KL"]},"Nn":{"a3":[],"o":[]},"ajW":{"a9":["Nn"]},"O0":{"a3":[],"o":[]},"akv":{"a9":["O0"]},"BZ":{"ax":[],"o":[]},"Cx":{"ax":[],"o":[]},"Cy":{"ax":[],"o":[]},"Cz":{"ax":[],"o":[]},"CA":{"ax":[],"o":[]},"CB":{"ax":[],"o":[]},"E7":{"ax":[],"o":[]},"IA":{"a3":[],"o":[]},"aeG":{"a9":["IA"]},"KM":{"a3":[],"o":[]},"agY":{"a9":["KM"]},"a8F":{"lW":[],"aA":[]},"P8":{"a3":[],"o":[]},"alG":{"a9":["P8"],"e0":[]},"O9":{"a3":[],"o":[]},"akF":{"a9":["O9"]},"m7":{"w7":[]},"Ou":{"m7":["d9"],"w7":[],"m7.T":"d9"},"Ow":{"m7":["cc"],"w7":[],"m7.T":"cc"},"Ox":{"ax":[],"o":[]},"Pr":{"a3":[],"o":[]},"amm":{"a9":["Pr"]},"a7e":{"bm":[]},"WR":{"Xn":[]},"Af":{"Xn":[]},"Ai":{"b7":["D"],"b7.T":"D"},"wi":{"bm":[]},"a8X":{"Op":[]},"Hv":{"cP":["h","h","1"],"ao":["h","1"],"cP.V":"1","cP.K":"h","cP.C":"h"},"a1S":{"bm":[]},"Wt":{"e0":[]},"pO":{"fZ":["pO"],"fZ.T":"pO"},"H5":{"i2":[]},"Hs":{"i2":[]},"LF":{"i2":[]},"On":{"i2":[]},"HJ":{"bm":[]},"wA":{"bo":[],"aA":[]},"Km":{"Ik":[]},"k1":{"bm":[]},"AU":{"bo":[],"aA":[]},"WI":{"ax":[],"o":[]},"Xi":{"aA":[]},"HG":{"a3":[],"o":[]},"Ql":{"a9":["HG"]},"fo":{"a3":[],"o":[]},"Hc":{"a3":[],"o":[]},"agj":{"a9":["fo"]},"ad5":{"a9":["Hc"]},"xv":{"a3":[],"o":[]},"agR":{"a9":["xv"]},"a6C":{"ax":[],"o":[]},"dW":{"bo":[],"aA":[]},"NF":{"bo":[],"aA":[]},"AJ":{"ax":[],"o":[]},"AK":{"ax":[],"o":[]},"a9b":{"ax":[],"o":[]},"xc":{"a3":[],"o":[]},"RJ":{"a9":["xc"]},"Ek":{"ax":[],"o":[]},"Wv":{"ax":[],"o":[]},"H1":{"ax":[],"o":[]},"Id":{"a3":[],"o":[]},"aeh":{"a9":["Id"]},"a02":{"ax":[],"o":[]},"wO":{"ax":[],"o":[]},"a04":{"ax":[],"o":[]},"Lb":{"a3":[],"o":[]},"ahf":{"a9":["Lb"]},"a01":{"ax":[],"o":[]},"Lc":{"a3":[],"o":[]},"Sd":{"a9":["Lc"]},"a6D":{"ax":[],"o":[]},"Pe":{"ax":[],"o":[]},"HQ":{"a3":[],"o":[]},"adD":{"a9":["HQ"]},"HR":{"a3":[],"o":[]},"adE":{"a9":["HR"]},"a7m":{"ax":[],"o":[]},"OJ":{"a3":[],"o":[]},"TV":{"a9":["OJ"]},"XF":{"ax":[],"o":[]},"a_b":{"ax":[],"o":[]},"It":{"a3":[],"o":[]},"QL":{"a9":["It"]},"a5j":{"ax":[],"o":[]},"a03":{"ax":[],"o":[]},"Ji":{"a3":[],"o":[]},"Jj":{"a9":["Ji"]},"Jk":{"a3":[],"o":[]},"afo":{"a9":["Jk"]},"Jl":{"a3":[],"o":[]},"afp":{"a9":["Jl"]},"Jh":{"a3":[],"o":[]},"afn":{"a9":["Jh"]},"OK":{"a3":[],"o":[]},"ale":{"a9":["OK"]},"JU":{"a3":[],"o":[]},"age":{"a9":["JU"]},"Mn":{"a3":[],"o":[]},"aiz":{"a9":["Mn"]},"KA":{"a3":[],"o":[]},"S0":{"a9":["KA"]},"Ps":{"a3":[],"o":[]},"amn":{"a9":["Ps"]},"Iq":{"a3":[],"o":[]},"aez":{"a9":["Iq"]},"wQ":{"ax":[],"o":[]},"a9T":{"ax":[],"o":[]},"aam":{"ax":[],"o":[]},"Py":{"ax":[],"o":[]},"Pz":{"ax":[],"o":[]},"PA":{"ax":[],"o":[]},"PB":{"ax":[],"o":[]},"QJ":{"a3":[],"o":[]},"a_d":{"ax":[],"o":[]},"aeC":{"a9":["QJ"]},"QK":{"a3":[],"o":[]},"a_e":{"ax":[],"o":[]},"aeD":{"a9":["QK"]},"lH":{"bo":[],"aA":[]},"y8":{"a3":[],"o":[]},"SA":{"a9":["y8"]},"Is":{"a3":[],"o":[]},"QI":{"a9":["Is"]},"P6":{"a3":[],"o":[]},"U6":{"a9":["P6"]},"Wo":{"bm":[]},"Hf":{"a3":[],"o":[]},"ad9":{"a9":["Hf"]},"yj":{"aA":[]},"a7F":{"fW":[]},"a7G":{"fW":[]},"a7H":{"fW":[]},"a7I":{"fW":[]},"a7J":{"fW":[]},"a7K":{"fW":[]},"a7L":{"fW":[]},"a7M":{"fW":[]},"a7N":{"fW":[]},"Cd":{"e3":[]},"Cp":{"kb":[]},"xL":{"e3":[]},"Lq":{"u6":[]},"a4f":{"bm":[]},"a4l":{"bm":[]},"a4m":{"bm":[]},"a4n":{"bm":[]},"Ch":{"bm":[]},"a4o":{"bm":[]},"a4p":{"bm":[]},"a4d":{"e3":[]},"Lk":{"e3":[]},"xK":{"e3":[]},"a4q":{"e3":[]},"Lm":{"e3":[]},"a4c":{"kb":[]},"Lg":{"kb":[]},"a4k":{"kb":[]},"a4C":{"kb":[]},"a4G":{"kb":[]},"a4I":{"kb":[]},"a4J":{"kb":[]},"Cj":{"e3":[]},"Ck":{"e3":[]},"Cl":{"e3":[]},"Cm":{"e3":[]},"Lp":{"e3":[]},"Lo":{"e3":[]},"a4H":{"e3":[]},"Lr":{"e3":[]},"a4s":{"u6":[]},"QG":{"f_":[],"ce":["D"],"b7":["cc"],"b7.T":"cc"},"bnk":{"iS":["bnk"],"iS.E":"bnk"},"vx":{"bc":[],"Q":[]},"m4":{"o":[]},"Cv":{"ax":[],"m4":[],"o":[]},"ahu":{"bc":[],"Q":[]},"vw":{"ax":[],"o":[]},"m3":{"ax":[],"m4":[],"o":[]},"NT":{"bc":[],"Q":[]},"a8e":{"m3":[],"ax":[],"m4":[],"o":[]},"tv":{"a3":[],"o":[]},"Rk":{"a9":["tv"]},"LM":{"a3":[],"o":[]},"ahF":{"a9":["LM"]},"a5f":{"ax":[],"o":[]},"tn":{"a3":[],"o":[]},"QH":{"a9":["tn"]},"wD":{"a3":[],"o":[]},"Rm":{"a3":[],"o":[]},"QU":{"a9":["wD"]},"Rn":{"a9":["Rm"]},"Be":{"ax":[],"o":[]},"x6":{"a3":[],"o":[]},"afY":{"a9":["x6"],"e0":[]},"GG":{"a3":[],"o":[]},"acv":{"a9":["GG"]},"to":{"a3":[],"o":[]},"IZ":{"a3":[],"o":[]},"aeA":{"a9":["to"]},"R6":{"a9":["IZ"]},"JO":{"a3":[],"o":[]},"RG":{"a9":["JO"]},"JP":{"a3":[],"o":[]},"afZ":{"a9":["JP"]},"JQ":{"a3":[],"o":[]},"ag_":{"a9":["JQ"]},"Ml":{"a3":[],"o":[]},"aiy":{"a9":["Ml"]},"od":{"a3":[],"o":[]},"Rl":{"a9":["od"]},"yk":{"a3":[],"o":[]},"Bc":{"ax":[],"o":[]},"ajL":{"a9":["yk"]},"o8":{"ax":[],"o":[]},"a5h":{"ax":[],"o":[]},"tt":{"c8":[]},"it":{"a3":[],"o":[]},"Hb":{"a3":[],"o":[]},"agi":{"a9":["it"]},"ad4":{"a9":["Hb"]},"kd":{"bo":[],"aA":[]},"n5":{"bo":[],"aA":[]},"P1":{"bo":[],"aA":[]},"GH":{"a3":[],"o":[]},"AQ":{"ax":[],"o":[]},"acw":{"a9":["GH"]},"HI":{"a3":[],"o":[]},"adA":{"a9":["HI"]},"Iu":{"a3":[],"o":[]},"aeE":{"a9":["Iu"]},"K8":{"a3":[],"o":[]},"RU":{"a9":["K8"]},"K9":{"a3":[],"o":[]},"agr":{"a9":["K9"]},"BN":{"a3":[],"o":[]},"agx":{"a9":["BN"]},"a5i":{"ax":[],"o":[]},"a5U":{"bm":[]},"a44":{"bm":[]},"a5S":{"ip":[],"bm":[]},"bs":{"aPb":["1"],"b6":["1"]},"KO":{"B":["1"],"B.E":"1"},"mN":{"fC":["1","h"],"b6":["h"],"fC.T":"1"},"KJ":{"fC":["1","2"],"b6":["2"],"fC.T":"1"},"Pa":{"fC":["1","v1<1>"],"b6":["v1<1>"],"fC.T":"1"},"NR":{"ha":[]},"wm":{"ha":[]},"a1Z":{"ha":[]},"a5_":{"ha":[]},"fL":{"ha":[]},"aao":{"ha":[]},"wg":{"xs":["1","1"],"b6":["1"],"xs.R":"1"},"fC":{"b6":["2"]},"yC":{"b6":["+(1,2)"]},"yD":{"b6":["+(1,2,3)"]},"NG":{"b6":["+(1,2,3,4)"]},"NH":{"b6":["+(1,2,3,4,5)"]},"NI":{"b6":["+(1,2,3,4,5,6,7,8)"]},"xs":{"b6":["2"]},"l0":{"fC":["1","1"],"b6":["1"],"fC.T":"1"},"NZ":{"fC":["1","1"],"b6":["1"],"fC.T":"1"},"wG":{"b6":["1"]},"a4X":{"b6":["h"]},"ly":{"b6":["h"]},"yH":{"b6":["h"]},"a6c":{"b6":["h"]},"a7d":{"b6":["h"]},"ka":{"fC":["1","D<1>"],"b6":["D<1>"],"fC.T":"1"},"Ku":{"fC":["1","D<1>"],"b6":["D<1>"]},"Mi":{"fC":["1","D<1>"],"b6":["D<1>"],"fC.T":"1"},"N4":{"fC":["1","2"],"b6":["2"]},"wf":{"BF":["1"],"m3":[],"ax":[],"m4":[],"o":[]},"HM":{"m3":[],"ax":[],"m4":[],"o":[]},"HN":{"m3":[],"ax":[],"m4":[],"o":[]},"HO":{"m3":[],"ax":[],"m4":[],"o":[]},"Kz":{"BF":["1"],"m3":[],"ax":[],"m4":[],"o":[]},"a1a":{"Q":[]},"fP":{"bR":[],"bA":[],"o":[]},"BF":{"m3":[],"ax":[],"m4":[],"o":[]},"RM":{"bc":[],"Q":[]},"zm":{"jq":[],"bc":[],"a1a":["1"],"Q":[]},"Qt":{"j1":["1","EF<1>"],"j1.D":"EF<1>"},"Uo":{"j1":["1","G8<1>"],"j1.D":"G8<1>"},"a4M":{"Cv":[],"ax":[],"m4":[],"o":[]},"a6o":{"bm":[]},"a6n":{"bm":[]},"Ij":{"b7":["1"],"b7.T":"1"},"aa1":{"dB":[]},"Hg":{"DN":["1"],"ce":["1"],"b7":["1"],"b7.T":"1"},"vf":{"b7":["1"],"b7.T":"1"},"DN":{"ce":["1"],"b7":["1"]},"G0":{"b7":["1"],"b7.T":"1"},"Om":{"eJ":["1","1"],"eJ.S":"1","eJ.T":"1"},"Ol":{"eJ":["1","1"],"eJ.S":"1","eJ.T":"1"},"Se":{"ce":["1"]},"Re":{"ce":["1"]},"a09":{"np":[],"da":["np"]},"F0":{"r0":[],"da":["a8N"]},"np":{"da":["np"]},"a8M":{"np":[],"da":["np"]},"a8N":{"da":["a8N"]},"a8O":{"da":["a8N"]},"a8P":{"bm":[]},"DE":{"ip":[],"bm":[]},"DF":{"da":["a8N"]},"r0":{"da":["a8N"]},"a8Z":{"ip":[],"bm":[]},"df":{"ra":["t"],"S":["t"],"D":["t"],"az":["t"],"B":["t"],"S.E":"t","B.E":"t","ra.E":"t"},"ra":{"S":["1"],"D":["1"],"az":["1"],"B":["1"]},"agt":{"ra":["t"],"S":["t"],"D":["t"],"az":["t"],"B":["t"]},"a7b":{"P":[],"G":[],"aU":[]},"aa2":{"bm":[]},"a78":{"P":[],"G":[],"aU":[]},"a6X":{"P":[],"G":[],"aU":[]},"Pq":{"a3":[],"o":[]},"aml":{"a9":["Pq"]},"aiJ":{"bE":[],"aV":[],"o":[]},"aiL":{"bE":[],"aV":[],"o":[]},"aiI":{"bE":[],"aV":[],"o":[]},"i3":{"uj":[]},"kU":{"uj":[]},"hv":{"uj":[]},"HF":{"uj":[]},"tU":{"mT":[]},"us":{"mT":[]},"ii":{"dZ":[]},"afg":{"dZ":[]},"a9L":{"dZ":[]},"aad":{"ii":[],"dZ":[]},"CI":{"ii":[],"dZ":[]},"a9w":{"ii":[],"dZ":[]},"a7A":{"ii":[],"dZ":[]},"HA":{"dZ":[]},"KN":{"dZ":[]},"CK":{"ii":[],"dZ":[]},"AO":{"ii":[],"dZ":[]},"a9v":{"ii":[],"dZ":[]},"a16":{"ii":[],"dZ":[]},"M4":{"dZ":[]},"D8":{"dZ":[]},"a7j":{"dZ":[]},"a7i":{"dZ":[]},"a7f":{"dZ":[]},"a7g":{"dZ":[]},"N6":{"dZ":[]},"a7h":{"dZ":[]},"z5":{"da":["z5"]},"a7a":{"P":[],"bp":["P"],"G":[],"aU":[]},"aae":{"bE":[],"aV":[],"o":[]},"En":{"bo":[],"aA":[]},"rn":{"b7":["1"],"b7.T":"1"},"Rb":{"rn":["1"],"b7":["1"],"b7.T":"1"},"Rh":{"jG":["1"]},"acf":{"vc":[]},"ack":{"bm":[]},"acm":{"ip":[],"bm":[]},"Et":{"b6":["h"]},"acg":{"bI":["D","h"],"bI.S":"D","bI.T":"h"},"mc":{"em":[]},"ny":{"em":[]},"nz":{"em":[]},"nA":{"em":[]},"j0":{"em":[]},"nB":{"em":[]},"iC":{"em":[]},"PP":{"em":[]},"vd":{"PP":[],"em":[]},"ach":{"B":["em"],"B.E":"em"},"bl0":{"B":["h"]},"blD":{"Bh":[],"AX":[],"io":[]},"bm4":{"Bh":[],"oe":[],"io":[]},"Bh":{"io":[]},"bKM":{"a3":[],"o":[]},"bHY":{"a3":[],"o":[]},"bHZ":{"a9":["bHY"]},"bR9":{"bR":[],"bA":[],"o":[]},"bPh":{"bR":[],"bA":[],"o":[]},"blS":{"jM":[]},"bH0":{"et":[],"bR":[],"bA":[],"o":[]},"aPb":{"b6":["1"]}}')) +A.bRh(v.typeUniverse,JSON.parse('{"jn":1,"kn":1,"va":1,"a8m":1,"a8n":1,"a_L":1,"a0m":1,"K_":1,"Bk":1,"a9W":1,"Eh":1,"UI":2,"HL":1,"Kw":1,"Ct":1,"ce":1,"a4N":1,"lp":1,"Oo":1,"al2":1,"acX":1,"acx":1,"akP":1,"aew":1,"p3":1,"Fy":1,"rw":1,"Rf":1,"amL":1,"Ei":2,"Uh":2,"KK":2,"akL":2,"akK":2,"TE":2,"TF":1,"TG":1,"Ui":2,"zf":2,"Xl":1,"Xv":2,"G_":1,"da":1,"vN":1,"Je":1,"Ge":1,"ZZ":1,"QX":1,"t1":1,"AA":1,"Qn":1,"Qo":1,"Qp":1,"LZ":1,"UD":1,"Qv":1,"cS":1,"mD":1,"Iw":1,"Me":2,"UT":1,"S5":1,"Gd":1,"HP":1,"Qr":1,"a1E":1,"fk":1,"hK":1,"MF":1,"I8":1,"FD":1,"SX":1,"D7":1,"V5":1,"V6":1,"pr":1,"a_s":1,"BE":1,"A4":1,"Fb":1,"bnd":1,"a9M":1,"a_3":1,"buQ":1,"oC":1,"hm":1,"ne":1,"T4":1,"Gf":1,"bMe":1,"CE":1,"a1Q":1,"Mh":1,"D_":1,"zr":1,"FC":1,"O5":2,"Tx":2,"ho":1,"e6":1,"Qq":1,"E9":1,"Uc":1,"Eg":1,"i1":1,"dy":1,"a4j":1,"LW":1,"uR":1,"a7l":1,"f0":1,"a21":1,"Ku":1,"N4":2,"Kz":1,"a1a":1,"RM":1,"aex":1,"amA":1,"FV":1,"FU":1,"JD":2,"Se":1,"Re":1,"aaf":2,"a_X":2,"XG":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",l:" ! #$%&' *+ -. 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ ^_`abcdefghijklmnopqrstuvwxyz | ~ ",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",B:" command requires the printer to be online, currently the printer is not online",D:" must not be greater than the number of characters in the file, ",v:" or improve the response time of the server.",_:"$remainingCount na character ang natitira",T:"% of the way to being a CircleBorder that is ",e:"' has been assigned during initialization.",o:", _deviceModulesStatusController.value.connectionState: ",t:", set isConnected: false, this.hashCode: ",M:"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",fq:": URI should have a non-empty host name: ",U:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",el:"Are you sure you want to delete the cloud device?",m:"Are you sure you want to delete the lan device?",b7:"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",ba:"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",C:"Device download status was pending... data ",p:"DeviceModel, updateDeviceModel, _deviceName: ",ge:"DevicePrepareToPrintViewModel setSelectMap:fileFilamentConfig: ",af:"Do you want to disconnect with current device?",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',w:"Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type",eP:"LavaDevice connect result: true, ConnectionChannel.unknown",cD:"LavaDevice connect result: true, ConnectionChannel.wcp",H:"LavaDeviceViewModel _realConnect, device.model.connected != true, setConnected: true",F:"LavaDeviceViewModel disconnectDevice, deviceModel.connected != true, setConnected: true",y:"MqttClient disconnect start, this.hashCode: ",dH:"MqttNormalConnection::connect - The connection to the message broker {",dq:"MqttNormalConnection::connectAuto - The connection to the message broker {",Q:"MqttPublishReceivedVariableHeader::_processProperties, message properties received are invalid",R:"MqttPublishReceivedVariableHeader::_processProperties, unexpected property typereceived, identifier is ",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.",ac:"SystemChrome.setApplicationSwitcherDescription",au:"TextInputClient.updateEditingStateWithDeltas",gP:"TextInputClient.updateEditingStateWithTag",r:"The `handler` has already been called, make sure each handler gets called only once.",a7:"The device communication failed, please check whether the device is normal and unresponsive.",cC:"The request was manually cancelled by the user.",a2:"There was a problem trying to load FontManifest.json",aj:"Unable to get current slicing details, go to the Prepare page to initiate slicing",d2:"UploadConverter, transformerAWSUploadPathParams, _fileBytes: ",a:"UploadConverter, transformerAWSUploadPathParams, _filePath: ",fQ:"UploadConverter, transformerAWSUploadPathParams, not support file upload in web or wasm, please use data stream",dV:"WcpClient _subscribeTopicsOnConnected error: ",u:"WcpClient _subscribeTopicsOnConnected, topic:",gr:"WcpClient not connected, ignore send data, status: ",P:"WcpClient publishMessage, this.hashCode: ",bW:"You cannot add items while items are being added from addStream",Z:"[AddDeviceMainPage] Bind Via IP onPressed, _isConnecting: ",fP:"[DEBUG]setInitiateModule: initiateModule: ",b1:"[DeviceControlPage] _onDeviceControl, online: ",fY:"[Device]LavaDevice _connectToOrca _authorizeResultStreamm, currentConnectionChannel: ",x:"[Device]LavaDevice _connectToOrca, currentConnectionChannel: ",A:"[Device]LavaDevice _handleAuthorizeResult tempR: ",I:"[Device]LavaDevice connect ConnectionChannel.cloud",ft:"[Device]LavaDevice connect ConnectionChannel.lan",aZ:"[Device]LavaDevice connect ConnectionChannel.unknown",dL:"[Device]LavaDevice connect ConnectionChannel.wcp",d:"[Device]LavaDevice internet connect fail, endpoint.endpoint: ",h:"[Device]LavaDevice lan connect fail, endpoint.ip: ",gQ:"[Device]LavaDevice query printer state request start",eW:"[Device]LavaDevice queryMachineStateManager error: ",fo:"[Device]try connect result, currentConnectionChannel:",j:"[FilamentExtruderMappingPage] _onDeviceControl, online: ",dd:"[FilamentExtruderMappingPage] _onSelectDevice, online: ",fO:"[HomeMyDevices] _onDeviceControl, online: ",b:"[LavaDeviceVM] preConnectCloudDevice error: ",L:"[LavaDeviceVM] setConsoleInitModule, module: ",bu:"[LavaDeviceVM], checkDeviceBindAuthState, deviceIsUnbind error: ",bl:"[ThemeVM] loadThemePreference, isDarkMode: ",aV:"] !!! showAuthorizationDialog, isDialogOpen: ",d5:"] 3 connectDevice !!! [device.authorizeResultStream.listen], updateAuthorizedResult: ",g:"] _handleDeviceError, device authorization removed, call showDeviceStateDialog",G:"] _handleDeviceError, device connect failed, call showDeviceStateDialog",f:"] _handleDeviceError, device network unavailable, call showDeviceStateDialog",K:"] _handleDeviceError, device no response, call showDeviceStateDialog",s:"] _handleDeviceError, device not found or unauthorized, call showDeviceStateDialog",X:"] showAuthorizationDialog, isDialogOpen: ",eK:"] showAuthorizationDialog, isDialogOpen: true, skip",ah:"^data:image\\/(png|jpeg|jpg|gif|bmp|webp|svg\\+xml);base64,([A-Za-z0-9+/=]+)$",gj:"_connectDevice: orcaControlViewModel.connectDevice",i:"_fetchCurrentConnectDevice: orcaControlViewModel.onDeviceControl",cn:"_getDeviceInfo: orcaControlViewModel.onDeviceControl",hd:"_inputIpConnectDevice: orcaControlViewModel.onDeviceControl",bB:"_onDeviceControl: orcaControlViewModel.onDeviceControl",k:"_onSelectDevice: orcaControlViewModel.onDeviceControl",f6:"application/vnd.oasis.opendocument.presentation",fW:"application/vnd.oasis.opendocument.spreadsheet",a_:"application/vnd.openxmlformats-officedocument.presentationml.presentation",dj:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",dn:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",d4:"custom.file.filament.set_mapping_complete",W:"dev.fluttercommunity.plus/connectivity_status",ai:"getCurrentOrcaConnectedDevice, wcp.getConnectedMachine is null, _lastConnectedDeviceModel: ",eE:"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.",N:"http://localhost:13619/profiles/Snapmaker/Snapmaker%20U1_cover.png",E:"max must be in range 0 < max \u2264 2^32, was ",bL:"onDeviceControl, 2, currentConnectedDeviceModel is the same as the deviceModel, skip",a6:"requestAuth error, appId or clientId not match",Y:"requestDeviceDownloadAndPrint Download done, path ",n:"this command requires the printer to be online, currently the printer is not online",b4:"this operation requires the printer to be online, currently the printer is not online",e1:"updateOrcaDeviceListToCache, 3 isLogout: ",er:"uploadFileToDeviceServerOrCloudServer error: ",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);",O:"} could not be made, a socket timeout has occurred",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.ar +return{cu:s("@<@>"),Rf:s("@"),vH:s("bFf"),od:s("d2"),gj:s("pp"),pC:s("iG"),kt:s("GI"),ZU:s("nY"),Jn:s("nY"),C8:s("cU"),so:s("cU"),m:s("cU"),Bs:s("cU"),ph:s("GW"),s1:s("H_"),vp:s("w2"),S7:s("WB"),jo:s("aq2"),pR:s("t5"),Pg:s("ii"),fk:s("ht"),M1:s("WJ"),Al:s("t7"),UL:s("Hg"),jj:s("t8"),m_:s("cY"),k:s("au"),r:s("iJ"),Xj:s("bFN"),pI:s("bkZ"),V4:s("d9"),Pt:s("ark"),LE:s("lD"),wY:s("dv"),nz:s("dv"),OZ:s("dv"),L5:s("dv"),vr:s("dv"),gv:s("dv"),fN:s("dv"),Tx:s("dv"),fn:s("dv"),sl:s("dv"),j5:s("dv"),_n:s("dv"),ZQ:s("dv"),f6:s("dv"),Ak:s("Xe"),p7:s("ij?,dj<@>>"),ES:s("bFX"),qk:s("Hz"),Kb:s("Xn()"),Hz:s("eY"),hP:s("jY"),n8:s("A"),AS:s("bYt"),IC:s("fU"),b8:s("da<@>"),V3:s("ti>"),a_:s("ti<@>"),BO:s("lE"),he:s("il"),c1:s("il"),oi:s("il"),Iw:s("fj"),qO:s("wn"),w:s("ai"),yf:s("ai"),eL:s("ai"),fF:s("kx"),Bx:s("AD"),A1:s("HN"),Gs:s("HO"),pU:s("aD>"),d1:s("XH"),ZC:s("hv"),ho:s("aJ"),H5:s("bGJ"),HY:s("hZ"),ip:s("Ia"),I7:s("AL"),fs:s("AM"),CG:s("aS"),KZ:s("tl"),Hw:s("kC"),qP:s("wt"),l4:s("bGY"),Uf:s("tm"),AG:s("bH0"),uy:s("bH2"),yS:s("AN"),Je:s("bYS"),aB:s("Ik"),xh:s("Im"),Cv:s("AS"),_T:s("AU"),CX:s("ch"),Ky:s("wA"),NI:s("lH"),OA:s("hx"),EX:s("fD"),JX:s("a_i"),hX:s("bYW"),I:s("lI"),ra:s("bYX"),Db:s("AX"),Tg:s("hz"),m3:s("blD"),bU:s("AY"),xm:s("k3"),Jj:s("bHF"),yN:s("a_v"),Co:s("IN>"),uL:s("mH"),zk:s("mI"),iG:s("a_B"),U2:s("IS"),RO:s("AZ"),t3:s("iN"),b_:s("iN"),aD:s("hf"),Tu:s("bj"),ML:s("fW"),A0:s("eh"),Ee:s("az<@>"),R:s("bc"),dq:s("bIa"),eV:s("pP"),m1:s("oc"),EM:s("wF"),IH:s("J6"),S9:s("a_R"),X8:s("a_S"),Q4:s("J8"),oy:s("wG"),TS:s("wG<~>"),Lt:s("dB"),I3:s("bd"),J:s("bm"),IX:s("hB"),gt:s("wI"),oB:s("wJ"),_w:s("pT"),HH:s("pU"),OO:s("kI"),cP:s("pV"),b6:s("wM"),P9:s("pW"),eI:s("wN"),iq:s("mK"),ik:s("k4"),k0:s("wQ"),pu:s("wR"),Ll:s("pY"),rq:s("iO"),JQ:s("mL"),yX:s("Bg"),jL:s("kJ"),cL:s("mM"),nZ:s("bt0"),vi:s("Bh"),hS:s("oe"),f8:s("bm4"),Ii:s("mN>"),vq:s("mN>"),TJ:s("mN<+(h,D)>"),US:s("i_"),N8:s("Jr"),s4:s("azj"),OE:s("azk"),Kw:s("azP"),mx:s("er"),l5:s("tC"),zq:s("Bp"),VW:s("wX"),FK:s("jm"),jT:s("JC"),c4:s("oj"),yO:s("wZ"),bE:s("ip"),Uy:s("aAa"),_8:s("q1"),Z9:s("a2"),xd:s("a2(h,ao)"),Ev:s("a2()"),L0:s("a2<@>"),T8:s("a2"),lC:s("a2"),qo:s("a2"),Sg:s("a2"),uz:s("a2<~>"),Fp:s("cR"),pl:s("cR"),Lu:s("hC"),El:s("hC"),Ih:s("hC"),SP:s("Bu"),nd:s("es"),uA:s("dC"),C1:s("dC"),Uv:s("dC"),jn:s("dC"),YC:s("dC"),lG:s("dC"),hg:s("dC"),Qm:s("dC"),UN:s("dC"),ok:s("dC"),lh:s("dC"),Bk:s("dC"),Pw:s("dC"),xR:s("x0"),zR:s("x1"),yi:s("jp>"),TX:s("x2"),bT:s("x2>"),R1:s("mT"),rQ:s("bZg"),GF:s("q4"),op:s("q4<~(tB)>"),bq:s("k5"),G7:s("a0L>"),rA:s("x4"),mS:s("x5"),AL:s("kL"),YX:s("q5"),zE:s("aU"),gc:s("JR"),xG:s("fF"),eh:s("hg"),Lk:s("btu"),F9:s("i1<@>"),g5:s("JT"),Oh:s("x9"),lu:s("btx"),oA:s("iP"),J2:s("BC"),aN:s("a12"),fE:s("a13"),OX:s("fY"),dW:s("iQ"),SG:s("ol"),Bc:s("tH"),WR:s("bZm"),ri:s("K1"),IS:s("jq"),og:s("et"),WB:s("bR"),U1:s("kN"),JZ:s("aCP"),XO:s("aCQ"),pT:s("aCR"),gD:s("tK"),vz:s("c8"),nQ:s("tL"),Ya:s("BI"),oF:s("fG"),FN:s("fG"),Pm:s("fG>"),OL:s("fG<@>"),JY:s("B<@>"),VG:s("B"),lY:s("E>"),QP:s("E"),NS:s("E"),Pv:s("E"),F:s("E"),Cs:s("E"),t_:s("E"),Ai:s("E"),LU:s("E>"),td:s("E"),wo:s("E"),IZ:s("E"),KV:s("E"),ZD:s("E"),xn:s("E"),KT:s("E"),qN:s("E"),bh:s("E"),sX:s("E"),UW:s("E"),E:s("E"),vl:s("E
  • "),Up:s("E"),SV:s("E"),lX:s("E"),Di:s("E"),HW:s("E"),Jg:s("E"),b7:s("E"),Ft:s("E"),JE:s("E"),bp:s("E"),z8:s("E"),Wq:s("E"),uf:s("E"),kZ:s("E>"),no:s("E"),Rh:s("E>"),RD:s("E>"),n9:s("E?>>"),mo:s("E>"),iQ:s("E"),AB:s("E"),DU:s("E"),om:s("E>"),XZ:s("E"),Fa:s("E"),fJ:s("E"),VB:s("E"),VO:s("E"),O_:s("E"),E5:s("E"),yY:s("E"),K0:s("E"),CE:s("E"),cN:s("E"),s9:s("E"),Y4:s("E"),_f:s("E"),X_:s("E>"),i1:s("E>"),zg:s("E>"),Zb:s("E>"),Eo:s("E"),H8:s("E"),ss:s("E"),a9:s("E>"),w3:s("E"),cS:s("E>"),Iq:s("E>"),bo:s("E>"),m0:s("E>"),H7:s("E>"),n4:s("E>"),Kg:s("E"),Xr:s("E"),rE:s("E"),bM:s("E>"),aU:s("E"),B5:s("E"),c0:s("E"),o:s("E"),vs:s("E"),tc:s("E"),f2:s("E"),jl:s("E"),yv:s("E"),wi:s("E"),g8:s("E>"),mQ:s("E"),EO:s("E"),nx:s("E"),OB:s("E"),zY:s("E"),OM:s("E>"),Gv:s("E>"),AT:s("E>"),m5:s("E>"),sb:s("E>"),B3:s("E>"),Vz:s("E>"),hc:s("E"),Sd:s("E"),H9:s("E"),Cg:s("E"),wc:s("E"),cD:s("E"),UY:s("E"),Id:s("E"),D9:s("E"),xX:s("E"),RW:s("E"),kG:s("E"),Am:s("E"),C6:s("E"),L7:s("E<+representation,targetSize(NY,R)>"),U4:s("E<+data,event,timeStamp(D,r,bj)>"),Nt:s("E<+domSize,representation,targetSize(R,NY,R)>"),AO:s("E"),vO:s("E"),Bw:s("E"),Ik:s("E

    "),xT:s("E"),TT:s("E"),Ry:s("E"),QT:s("E"),VM:s("E"),CK:s("E"),vj:s("E"),VC:s("E"),ZP:s("E"),D1:s("E"),u1:s("E"),q1:s("E"),QF:s("E"),o4:s("E"),Qo:s("E"),Qe:s("E"),zz:s("E"),fe:s("E"),kO:s("E"),N_:s("E"),zn:s("E"),EQ:s("E"),tm:s("E"),Ds:s("E"),X4:s("E"),O6:s("E"),Gl:s("E>"),s:s("E"),oU:s("E"),PL:s("E"),bt:s("E"),Jp:s("E"),Lx:s("E"),J9:s("E"),PF:s("E"),sD:s("E"),VS:s("E"),fm:s("E"),Ne:s("E"),FO:s("E>>"),q6:s("E>"),x0:s("E>"),XE:s("E"),Vg:s("E"),p:s("E"),GA:s("E"),Ec:s("E"),po:s("E"),Na:s("E"),SW:s("E"),TV:s("E"),TU:s("E"),Kj:s("E"),fa:s("E"),_Y:s("E"),CZ:s("E"),mz:s("E"),Kx:s("E"),zj:s("E"),IR:s("E"),m4:s("E"),Ei:s("E"),Rm:s("E"),ng:s("E"),jE:s("E"),qi:s("E"),uD:s("E"),M6:s("E"),au:s("E"),s6:s("E"),lb:s("E"),PN:s("E"),Z4:s("E"),D8:s("E"),mg:s("E"),jY:s("E"),cR:s("E"),NM:s("E"),HZ:s("E"),n:s("E"),ee:s("E<@>"),t:s("E"),i6:s("E"),tZ:s("E"),L:s("E"),K1:s("E"),ef:s("E"),JK:s("E"),cA:s("E"),Rs:s("E"),ny:s("E?>"),Fi:s("E"),_m:s("E"),Z:s("E"),a0:s("E"),Zt:s("E()>"),iL:s("E()>"),sA:s("E"),Nr:s("E"),qj:s("E<~()>"),SM:s("E<~(O,d0?)>"),ot:s("E<~(d2)>"),x8:s("E<~(lx)>"),LY:s("E<~(iH)>"),j1:s("E<~(bj)>"),s2:s("E<~(x_)>"),Jh:s("E<~(D)>"),ha:s("cs<@>"),bz:s("Kd"),v:s("aj"),lT:s("k8"),dC:s("cH<@>"),B:s("r"),Hf:s("iR"),Cl:s("mV"),D2:s("iu"),XU:s("oq(lO)"),SQ:s("BO"),Dk:s("xn"),jk:s("bG"),NE:s("bG"),km:s("bG"),ku:s("bG"),hA:s("bG"),A:s("bG>"),sY:s("bG>"),af:s("bG"),e:s("dW"),xj:s("ka"),Po:s("ka"),lv:s("ka<@>"),rf:s("Ks"),hz:s("lS"),jQ:s("d_"),JO:s("i3"),C5:s("bKr"),oq:s("iS>"),Pd:s("qh"),z_:s("qh"),oM:s("qh"),hT:s("mX"),NJ:s("bKw"),Rk:s("D"),a6:s("D"),ma:s("D"),Oc:s("D"),c8:s("D"),Px:s("D"),lf:s("D"),LX:s("D"),qC:s("D"),b5:s("D>"),le:s("D>"),pX:s("D>"),IU:s("D"),YN:s("D"),UX:s("D"),LF:s("D"),wk:s("D"),Xf:s("D"),I1:s("D"),xc:s("D"),yp:s("D"),Y_:s("D"),d0:s("D"),JF:s("D"),EE:s("D"),j:s("D<@>"),Cm:s("D"),Dn:s("D"),I_:s("aA"),da:s("dX"),ec:s("C_"),G:s("x"),bS:s("bu6"),KQ:s("mZ>"),tO:s("aO"),S_:s("aO"),YB:s("aO"),mT:s("aO"),YO:s("aO"),UH:s("aO"),DC:s("aO"),q9:s("aO"),sw:s("aO>"),Kc:s("aO>"),V5:s("aO>"),qE:s("aO>"),Dx:s("KI<@,@>"),kY:s("ao"),Rd:s("ao"),nf:s("ao"),LB:s("ao"),GU:s("ao"),Eg:s("ao"),a:s("ao"),_P:s("ao"),e3:s("ao"),f:s("ao<@,@>"),xE:s("ao"),pE:s("ao"),rr:s("ao<~(ca),bW?>"),C9:s("hF"),zm:s("ad"),OW:s("ad"),a4:s("ad"),WL:s("ad"),Gf:s("ad"),SR:s("ad"),rB:s("ad"),bK:s("ad"),qn:s("ad"),u3:s("ad,ma>"),Tr:s("ad"),E0:s("KO>"),iB:s("bKN"),jC:s("a24"),C:s("aE"),Od:s("xA"),xV:s("bW"),l:s("n0"),SA:s("u3"),tB:s("Cb"),xS:s("kS"),Pb:s("eG"),ZA:s("Le"),_h:s("ow"),wd:s("kU"),vb:s("Cd"),Md:s("xI"),Jr:s("qm"),nk:s("Lk"),AM:s("Ce"),Ki:s("xJ"),F3:s("xK"),Bl:s("kb"),Uq:s("Ci"),in:s("u4"),wf:s("hi"),QX:s("Cj"),Ty:s("Ck"),RN:s("xL"),mt:s("Cl"),ER:s("Cm"),e_:s("qn"),iS:s("Cn"),dB:s("Lo"),MC:s("u5"),qs:s("Lr"),Mh:s("Cp"),Wz:s("lU"),Lb:s("hj"),RZ:s("xN"),jW:s("u8"),A3:s("kX"),F4:s("hk"),u9:s("ox"),tw:s("xO"),uK:s("n3"),SK:s("Cv"),We:s("qo"),_A:s("hI"),K3:s("ea"),Jc:s("ea"),Tm:s("ea"),en:s("ea"),eq:s("ea"),ji:s("ea"),WA:s("ea"),kj:s("ea"),ke:s("a52"),P:s("aF"),vg:s("ua"),K:s("O"),xA:s("O(t)"),_a:s("O(t{params:O?})"),yw:s("bV"),fy:s("bV<~()>"),wS:s("bV<~(d2)>"),jc:s("bV<~(lx)>"),c:s("z"),gY:s("n4"),Tq:s("l0<+(h,eV)>"),mA:s("l0"),Jd:s("l0"),Aw:s("l0"),P8:s("kd"),PO:s("n5"),BR:s("bLO"),Ms:s("lW"),N1:s("CF"),A9:s("xT"),BB:s("LT"),iF:s("be"),B9:s("xV"),Mf:s("CH"),sd:s("bnd"),Q2:s("LX"),qA:s("oD"),Fw:s("hl"),IL:s("hl"),_X:s("b6<@>"),Ze:s("M_"),Mr:s("iy"),D3:s("M3"),zM:s("h_"),IF:s("Mc"),ix:s("fp"),v3:s("L"),YA:s("l4"),sv:s("qu"),lO:s("CO"),qa:s("c_E"),ge:s("y0"),Ko:s("y1"),kf:s("qx"),Au:s("oF"),pY:s("qy"),qL:s("ca"),GG:s("c_Q"),XA:s("qz"),n2:s("qA"),WQ:s("y2"),w5:s("qB"),DB:s("y3"),PB:s("y4"),Mj:s("y5"),xb:s("y6"),ks:s("iT"),oN:s("qC"),f9:s("bMe"),du:s("Mj"),bb:s("CS"),th:s("qE"),Es:s("h0"),C0:s("bMs"),yH:s("bA"),ax:s("a6p"),YK:s("qH"),eg:s("fL"),jU:s("D2"),o2:s("jy"),TK:s("ke"),pK:s("c_W"),Rp:s("+()"),_0:s("+(h,eV)"),H_:s("+(h,jm?)"),Yr:s("+(zn,a5)"),mi:s("+(O?,O?)"),pA:s("+(H?,h?)"),YT:s("I"),Bb:s("l7"),r0:s("bs"),u4:s("bs>"),VJ:s("bs<+(h,eV)>"),WV:s("bs"),nt:s("bs"),ZV:s("bs"),MD:s("bs"),Ly:s("bs"),OY:s("bs"),hq:s("bs"),vn:s("bs"),hC:s("bs"),MB:s("bs"),sE:s("bs"),lk:s("bs<@>"),n3:s("bs<~>"),nP:s("MB"),Qz:s("a6A"),MY:s("MD"),NW:s("ME"),x:s("P"),DW:s("yb"),f1:s("MP"),I9:s("G"),F5:s("aV"),GM:s("bp"),Wx:s("qJ"),nl:s("e4"),Ss:s("qK"),Cn:s("D6"),dw:s("N0"),Ju:s("yf"),E1:s("N1"),UM:s("nd"),mu:s("l8"),yk:s("aPb<@>"),Wd:s("D9"),Ol:s("yg"),k8:s("i6<@>"),dZ:s("N8"),yb:s("hm"),z4:s("fq"),k2:s("Na"),MV:s("e5"),o_:s("e5"),ad:s("Nd"),oj:s("De"),pO:s("dj<@>(Q,O?)"),O4:s("Dg"),Sv:s("yo"),nY:s("Ni"),BL:s("Ni"),Np:s("Dk"),ti:s("Np"),Cy:s("Nq"),gu:s("oM"),Lm:s("yv"),sm:s("Dm"),NF:s("bNe"),TB:s("nj"),qd:s("c06"),NU:s("c07"),hI:s("c08"),x9:s("hL"),mb:s("Ny"),Wu:s("Dp"),_S:s("eI"),KL:s("yA"),ZX:s("nk"),bu:s("ec"),UF:s("yB"),g3:s("nl"),mM:s("NI"),HS:s("uI"),n5:s("Dr<@>"),hh:s("cz"),Ro:s("cz<@>"),RY:s("dp"),jH:s("uK"),WE:s("Dt"),cZ:s("Du"),zU:s("uL"),yE:s("c0g"),nR:s("b1"),Mp:s("bE"),k7:s("m3"),FW:s("R"),Q3:s("NZ"),Ws:s("O_"),KN:s("a8o"),Dj:s("O2"),q:s("uM"),h5:s("Dy"),Xp:s("qY"),Gt:s("DA"),W:s("i8"),M0:s("qZ"),jB:s("uN"),lo:s("uO"),vo:s("oS"),lz:s("f_"),y3:s("np"),D_:s("r0"),Dt:s("DG>"),d:s("fM"),Km:s("d0"),MF:s("jF"),d2:s("a3"),Iz:s("ax"),NP:s("b7"),ZE:s("Op"),N:s("h"),Vc:s("bNX"),NC:s("nr"),YS:s("h(h?)"),Vh:s("DO"),Jy:s("uT"),ky:s("DP"),Yu:s("a92"),OJ:s("bO4"),wL:s("nt"),WT:s("cv"),Oa:s("cv"),FB:s("cv"),Vr:s("cv"),l6:s("cv"),re:s("cv>"),az:s("cv"),Q6:s("cv"),Ow:s("cv"),AH:s("cv"),E8:s("cv"),d9:s("cv"),hr:s("cv"),b9:s("cv<~>"),Jx:s("c0s"),U8:s("oT"),ew:s("oU"),if:s("OL"),Qr:s("OO"),iy:s("E0"),tq:s("m8"),cv:s("OU"),qY:s("nu"),bZ:s("bOk"),AU:s("v_"),em:s("J"),we:s("m9"),ZM:s("yS"),ZF:s("oY>"),Ag:s("oY<@>"),nM:s("P1"),qe:s("yW"),Mq:s("E6"),x7:s("Ea"),ZL:s("Pa"),MU:s("ma"),_:s("iX"),U6:s("bOF"),zW:s("dT"),kS:s("hP"),Ns:s("hP"),Ni:s("b0"),qU:s("b0"),Y:s("b0"),u:s("lh"),ns:s("r8"),w7:s("aV5"),rd:s("aV6"),W1:s("aV7"),D:s("cc"),pm:s("Ed"),MX:s("rb"),O:s("ex"),kk:s("oZ"),lQ:s("Pk"),G5:s("li"),r2:s("li"),N2:s("Ej<@>"),fS:s("z2"),gU:s("mb"),va:s("dy<@>"),Xu:s("v7"),xs:s("eK>"),V1:s("eK"),kK:s("eK"),BN:s("eK"),Z6:s("fu"),If:s("fu"),ID:s("fu"),D0:s("fu"),j3:s("fu"),HJ:s("fu"),GY:s("jL"),VD:s("c0S"),Hi:s("bwZ"),Dg:s("z7"),rS:s("jM"),X3:s("rd"),mr:s("En"),St:s("re"),lN:s("v9"),Hd:s("bh"),xY:s("ey"),FI:s("ey"),ZK:s("ey"),Ri:s("ey"),ow:s("ey"),kE:s("ey<~(O,d0?)>"),r7:s("ey<~(iP)>"),YE:s("Ep"),l7:s("o"),a7:s("Eq"),g:s("dq"),_E:s("p0"),y4:s("bK
    "),De:s("bK
    "),mD:s("bK"),li:s("bK"),W7:s("bK"),uE:s("bK"),Cp:s("bK"),XR:s("bK"),rc:s("bK"),WY:s("bK"),_o:s("bK"),RP:s("bK"),QN:s("o(Q,cz,o?)"),X5:s("e0"),Uh:s("aI"),aP:s("p1"),nS:s("mc"),mL:s("ny"),UR:s("nz"),h0:s("nA"),Gn:s("j0"),xo:s("em"),wG:s("hT"),Mw:s("nB"),a1:s("iC"),JC:s("PP"),L1:s("PR"),J_:s("ve"),CL:s("zb"),Tz:s("cd"),Cx:s("cd"),jx:s("cd"),X9:s("cd>"),BD:s("cd>>"),gW:s("cd>"),Cj:s("cd"),Io:s("cd"),br:s("cd"),L_:s("cd>"),zr:s("cd<@>"),vL:s("cd"),Tv:s("cd"),HA:s("cd"),h8:s("aq"),rs:s("aq"),L4:s("aq"),xt:s("aq"),ka:s("aq"),nj:s("aq>"),m6:s("aq"),BZ:s("aq>"),Ba:s("aq"),rM:s("aq"),Iy:s("aq"),x6:s("aq"),fO:s("aq"),YQ:s("aq"),pN:s("aq"),gI:s("aq"),bI:s("aq"),Mi:s("aq"),ff:s("aq"),xN:s("aq"),VY:s("aq"),zh:s("aq<@>"),yB:s("aq"),It:s("aq"),SE:s("aq"),E_:s("aq"),h:s("aq<~>"),BY:s("bPh"),MS:s("lm<@,cc>"),g9:s("lm<@,@>"),TR:s("lm<@,D>"),ZW:s("Ez"),B6:s("Qg"),Ie:s("vh"),EG:s("zd"),FR:s("ic"),C7:s("ED"),bY:s("QC"),TC:s("zg"),uC:s("id"),dA:s("rk"),Fb:s("rk"),Uz:s("rk"),Q8:s("QF>"),UJ:s("aeJ"),qr:s("zh"),VA:s("QQ"),AR:s("QT>"),IB:s("R4"),l3:s("R9"),Pl:s("Rb"),Sc:s("rn"),GN:s("afx"),Eh:s("Rt"),AI:s("F3"),h1:s("F4"),Lv:s("a_"),oV:s("a_"),Ic:s("a_"),qc:s("a_"),NO:s("a_"),wM:s("a_>"),XC:s("a_"),zs:s("a_>"),i_:s("a_"),A5:s("a_"),cO:s("a_"),ET:s("a_"),dH:s("a_"),ag:s("a_"),fB:s("a_"),Qy:s("a_"),tt:s("a_"),t8:s("a_"),yJ:s("a_"),Fq:s("a_"),tr:s("a_"),LR:s("a_<@>"),wJ:s("a_"),gg:s("a_"),EU:s("a_"),vC:s("a_"),X6:s("a_"),_U:s("a_"),YM:s("a_"),U:s("a_<~>"),cK:s("F6"),Qu:s("rq"),U3:s("F9"),wl:s("j3"),R9:s("vo"),Lp:s("vq"),Dc:s("jN"),Hs:s("ln"),Fy:s("vr"),Mg:s("RN"),pp:s("jO"),cB:s("nH"),Sx:s("rr"),pt:s("Fi"),Gk:s("S1"),PJ:s("Fj"),Fe:s("Sc"),xg:s("ahj"),Tp:s("vv"),Fn:s("vw"),ai:s("vx"),pi:s("p5"),Vl:s("vy"),KJ:s("rs"),eU:s("Fu"),gQ:s("vz"),sZ:s("Sw"),VE:s("ahR"),j4:s("ahS"),EP:s("zt"),Li:s("Sx"),y2:s("zu"),c_:s("SB"),bR:s("SD"),h7:s("p6"),zP:s("h7"),rj:s("SL"),l0:s("zx"),Lj:s("vD"),zd:s("SR"),SN:s("SU"),To:s("FG"),Sq:s("FH"),xL:s("FI"),im:s("vE"),An:s("zy"),Ez:s("lo"),Q:s("T8"),yd:s("Te"),jF:s("Tg"),Rt:s("FP"),kT:s("akq"),S8:s("TL"),sh:s("jS<@>"),mf:s("TP"),c6:s("zD"),mm:s("pa"),Hj:s("rx<~>"),NQ:s("ig"),JD:s("ig"),ij:s("ig"),bm:s("ig

    "),x_:s("ig"),HE:s("G1"),sV:s("pb<~>"),f4:s("U5"),i9:s("G4"),tH:s("bR9"),Wp:s("Uk"),_l:s("zF"),ps:s("Up"),GD:s("bQ
    "),mN:s("bQ
    "),tR:s("bQ"),Dm:s("bQ"),N5:s("bQ"),jZ:s("bQ"),b:s("bQ"),B_:s("bQ"),DH:s("amx"),y:s("H"),i:s("a5"),z:s("@"),LV:s("@(iH)"),C_:s("@(O)"),Hg:s("@(O,d0)"),ga:s("@(by)"),S:s("t"),s5:s("0&*"),ub:s("O*"),VF:s("t_?"),tX:s("br6?"),m2:s("H9?"),VH:s("ps?"),Vx:s("f4?"),sa:s("iI?"),eJ:s("w4?"),oI:s("br?"),YY:s("w5?"),CD:s("d9?"),Cq:s("lD?"),Ax:s("bru?"),JG:s("HB?"),cW:s("brv?"),eG:s("HC?"),GB:s("brw?"),VX:s("At?"),VI:s("Au?"),SF:s("Xs?"),MH:s("A?"),Ca:s("brA?"),YJ:s("fU?"),ms:s("pC?"),t4:s("Im?"),wI:s("ch?"),V2:s("lI?"),je:s("AX?"),y9:s("hz?"),dd:s("hf?"),pc:s("eh?"),Om:s("pL?"),Dv:s("bc?"),e8:s("B8?"),fd:s("J7?"),Zx:s("tx?"),pk:s("er?"),RC:s("JB?"),U5:s("jm?"),uZ:s("a2?"),eS:s("a0A?"),Mm:s("mT?"),_I:s("x5?"),gx:s("kM?"),lF:s("eP?"),IE:s("bty?"),Pr:s("tI?"),Ef:s("kN?"),NX:s("aj?"),LO:s("iu?"),EZ:s("D?"),kc:s("D<@>?"),wh:s("D?"),y6:s("x?"),DZ:s("mY?"),nA:s("ao?"),Xw:s("ao<@,@>?"),na:s("ao>?"),J1:s("ao?"),iD:s("bW?"),YV:s("xE?"),GE:s("eG?"),nG:s("xJ?"),IG:s("dY?"),X:s("O?"),Ff:s("buJ?"),dJ:s("n4?"),Zr:s("buL?"),KX:s("fK?"),uR:s("n8?"),xO:s("uh?"),CY:s("M5?"),Cr:s("M6?"),p9:s("M7?"),yZ:s("M8?"),ev:s("M9?"),Gr:s("Ma?"),BP:s("Mb?"),mc:s("fp?"),wb:s("Md?"),Qv:s("P?"),xP:s("P?(P)"),CA:s("yb?"),p2:s("bP?"),ym:s("qJ?"),IT:s("e4?"),_N:s("yv?"),LQ:s("ec?"),TZ:s("yF?"),pg:s("nm?"),tW:s("R?"),MR:s("i8?"),Z7:s("f_?"),lE:s("jF?"),B7:s("jG?"),Pq:s("b7?"),T:s("h?"),Gm:s("h?(@)"),aE:s("DO?"),f3:s("kj?"),p8:s("J?"),Dh:s("yR?"),qf:s("bwC?"),zV:s("r7?"),ir:s("b0?"),nc:s("cc?"),Wn:s("lk?"),V:s("by?"),Xk:s("j3?"),Ej:s("vx?"),av:s("Sz?"),Kp:s("vD?"),IJ:s("vE?"),JI:s("pb<@>?"),X7:s("H?"),zf:s("H(e3)?"),PM:s("a5?"),h2:s("t?"),Nw:s("~()?"),Ci:s("cX"),H:s("~"),M:s("~()"),CF:s("~(O,d0?)"),Vu:s("~(bj)"),Su:s("~(tB)"),xu:s("~(D)"),mX:s("~(O)"),hK:s("~(O,d0)"),Ld:s("~(ca)"),Sp:s("~(qI)"),HT:s("~(O?)")}})();(function constants(){var s=hunkHelpers.makeConstList +B.a2v=J.BJ.prototype +B.b=J.E.prototype +B.ho=J.Kc.prototype +B.e=J.BL.prototype +B.d=J.tO.prototype +B.c=J.qd.prototype +B.a2L=J.k8.prototype +B.a2M=J.r.prototype +B.n3=A.xN.prototype +B.jE=A.Lu.prototype +B.jF=A.Lv.prototype +B.er=A.Lw.prototype +B.ra=A.Ly.prototype +B.G=A.ox.prototype +B.N5=J.a64.prototype +B.tO=J.oZ.prototype +B.aB4=new A.apj(0,"unknown") +B.bJ=new A.mw(1,0,0,1,0,0,1) +B.Qf=new A.iF(0,1) +B.Qg=new A.iF(0,-1) +B.aB5=new A.iF(1,0) +B.io=new A.iF(-1,0) +B.a2=new A.iF(-1,-1) +B.O=new A.dh(0,0) +B.eF=new A.dh(0,1) +B.ip=new A.dh(0,-1) +B.oi=new A.dh(1,0) +B.Qh=new A.dh(1,1) +B.Qi=new A.dh(1,-1) +B.Qj=new A.dh(1.1,0) +B.Qk=new A.dh(0,-1.1) +B.Ql=new A.dh(-1.1,0) +B.Qm=new A.dh(0,0.8) +B.Qn=new A.dh(0,1.1) +B.kv=new A.dh(-1,0) +B.oj=new A.dh(-1,1) +B.Qo=new A.dh(-1,2) +B.eG=new A.dh(-1,-1) +B.Qp=new A.dh(-1,-2) +B.iq=new A.Wa(null) +B.p2=new A.A(4293128957) +B.vO=new A.A(4290502395) +B.p0=new A.A(4287679225) +B.Vo=new A.A(4284790262) +B.Va=new A.A(4282557941) +B.vu=new A.A(4280391411) +B.oQ=new A.A(4280191205) +B.kO=new A.A(4279858898) +B.UJ=new A.A(4279592384) +B.UG=new A.A(4279060385) +B.agt=new A.cR([50,B.p2,100,B.vO,200,B.p0,300,B.Vo,400,B.Va,500,B.vu,600,B.oQ,700,B.kO,800,B.UJ,900,B.UG],t.pl) +B.dT=new A.qk(B.agt,4280391411) +B.Qq=new A.nY(B.dT,t.ZU) +B.ok=new A.Wg(0,"normal") +B.ol=new A.Wg(1,"preserve") +B.ir=new A.Wh(0,"forward") +B.kw=new A.Wh(1,"reverse") +B.a9=new A.lx(0,"dismissed") +B.cR=new A.lx(1,"forward") +B.ci=new A.lx(2,"reverse") +B.am=new A.lx(3,"completed") +B.Qr=new A.A7(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.up=new A.A8(0,"success") +B.Qs=new A.A8(1,"error") +B.Qt=new A.A8(4,"loading") +B.uq=new A.A8(5,"toast") +B.ur=new A.A9(0,"dev") +B.us=new A.A9(1,"staging") +B.ut=new A.A9(2,"pre") +B.kx=new A.A9(3,"prod") +B.uu=new A.H_(0,"exit") +B.uv=new A.H_(1,"cancel") +B.bS=new A.Wp(0,"en") +B.uw=new A.Wp(1,"zh") +B.fR=new A.iH(0,"detached") +B.dB=new A.iH(1,"resumed") +B.is=new A.iH(2,"inactive") +B.ky=new A.iH(3,"hidden") +B.kz=new A.iH(4,"paused") +B.ux=new A.Ws(0,"cn") +B.c_=new A.Ws(1,"us") +B.Qu=new A.t4(0,"up") +B.Qv=new A.t4(1,"down") +B.Qw=new A.t4(2,"left") +B.Qx=new A.t4(3,"right") +B.Qy=new A.Wx(!1,127) +B.Qz=new A.Wy(127) +B.om=new A.H2(0,"polite") +B.on=new A.H2(1,"assertive") +B.it=new A.ht(0,"notAvailable") +B.bj=new A.ht(1,"authorizing") +B.eH=new A.ht(2,"authorized") +B.dC=new A.ht(3,"rejected") +B.QA=new A.ht(4,"timeout") +B.hz=A.a(s([]),t.s) +B.q=new A.a9i(1,"downstream") +B.i8=new A.iW(-1,-1,B.q,!1,-1,-1) +B.bH=new A.cW(-1,-1) +B.tx=new A.dS("",B.i8,B.bH) +B.uy=new A.H6(!1,"",B.hz,B.tx,null) +B.at=new A.Ab(0,"up") +B.dD=new A.Ab(1,"right") +B.ah=new A.Ab(2,"down") +B.cj=new A.Ab(3,"left") +B.aN=new A.WK(0,"horizontal") +B.aw=new A.WK(1,"vertical") +B.QB=new A.WM(null) +B.QC=new A.WL(B.QB,null,null,null,null) +B.QD=new A.H8(0,"all") +B.QE=new A.H8(3,"z") +B.QF=new A.H8(4,"xy") +B.QG=new A.Ha(null,null,null,null,null,null,null,null) +B.eJ=new A.aCW() +B.QH=new A.t7("flutter/keyevent",B.eJ,null,t.Al) +B.ox=new A.aSX() +B.QI=new A.t7("flutter/lifecycle",B.ox,null,A.ar("t7")) +B.bx=new A.aSm() +B.iu=new A.t7("flutter/accessibility",B.bx,null,t.Al) +B.QJ=new A.t7("flutter/system",B.eJ,null,t.Al) +B.lz=new A.Br(2,"previous") +B.QK=new A.w3(null,B.lz,0,0) +B.uz=new A.dV(12,"plus") +B.oo=new A.dV(13,"modulate") +B.uA=new A.dV(20,"hardLight") +B.uB=new A.dV(24,"multiply") +B.op=new A.dV(26,"saturation") +B.dE=new A.dV(3,"srcOver") +B.kA=new A.hu(3,"srcOver") +B.iv=new A.dV(5,"srcIn") +B.uC=new A.dV(6,"dstIn") +B.a6=new A.WZ(0,"normal") +B.B=new A.bg(0,0) +B.aH=new A.cY(B.B,B.B,B.B,B.B) +B.fp=new A.bg(4,4) +B.fS=new A.cY(B.fp,B.fp,B.B,B.B) +B.Ni=new A.bg(6,6) +B.Rw=new A.cY(B.Ni,B.Ni,B.B,B.B) +B.dW=new A.bg(8,8) +B.Ro=new A.cY(B.dW,B.dW,B.B,B.B) +B.ev=new A.bg(12,12) +B.uE=new A.cY(B.ev,B.ev,B.B,B.B) +B.Nh=new A.bg(20,20) +B.Rx=new A.cY(B.Nh,B.Nh,B.B,B.B) +B.Rn=new A.cY(B.B,B.B,B.B,B.ev) +B.i_=new A.bg(2,2) +B.oq=new A.cY(B.i_,B.i_,B.i_,B.i_) +B.dF=new A.cY(B.fp,B.fp,B.fp,B.fp) +B.ne=new A.bg(5,5) +B.Rl=new A.cY(B.ne,B.ne,B.ne,B.ne) +B.ng=new A.bg(7,7) +B.Rs=new A.cY(B.ng,B.ng,B.ng,B.ng) +B.uD=new A.cY(B.dW,B.dW,B.dW,B.dW) +B.Rm=new A.cY(B.B,B.B,B.ev,B.B) +B.nd=new A.bg(22,22) +B.Rt=new A.cY(B.nd,B.nd,B.nd,B.nd) +B.jK=new A.bg(40,40) +B.Ru=new A.cY(B.jK,B.jK,B.jK,B.jK) +B.nf=new A.bg(60,50) +B.Rv=new A.cY(B.nf,B.nf,B.nf,B.nf) +B.t=new A.A(0) +B.I=new A.X_(1,"solid") +B.Rz=new A.br(B.t,0,B.I,-1) +B.Ry=new A.br(B.t,2,B.I,-1) +B.p4=new A.A(4293454056) +B.RB=new A.br(B.p4,1,B.I,-1) +B.v=new A.A(4278190080) +B.bo=new A.X_(0,"none") +B.x=new A.br(B.v,0,B.bo,-1) +B.uF=new A.f4(B.x,B.x,B.x,B.x) +B.RE=new A.Hj(null,null,null,null,null,null,null) +B.RF=new A.Hk(null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.RG=new A.Ad(null,null,null,null,null,null,null,null,null,null,null,null,null) +B.als=new A.a7Q(0,"normal") +B.rw=new A.a6s(null) +B.RH=new A.Hm(B.als,B.rw) +B.NA=new A.a7Q(1,"fast") +B.RI=new A.Hm(B.NA,B.rw) +B.RJ=new A.au(0,105,0,40) +B.RK=new A.au(152,210,20,20) +B.kB=new A.au(0,1/0,0,1/0) +B.RP=new A.au(50,1/0,0,1/0) +B.RM=new A.au(280,1/0,0,1/0) +B.or=new A.au(85,1/0,18,1/0) +B.RL=new A.au(36,1/0,36,1/0) +B.uG=new A.au(0,1/0,48,1/0) +B.RO=new A.au(160,1/0,48,1/0) +B.RN=new A.au(280,1/0,140,1/0) +B.RS=new A.au(0,108,0,1/0) +B.kC=new A.au(120,180,0,1/0) +B.RQ=new A.au(0,200,0,1/0) +B.RR=new A.au(0,300,0,1/0) +B.RT=new A.au(0,500,0,1/0) +B.uH=new A.au(0,640,0,1/0) +B.uI=new A.au(1/0,1/0,1/0,1/0) +B.E=new A.X4(0,"rectangle") +B.RU=new A.bb(null,null,null,null,null,null,null,B.E) +B.kU=new A.A(4290624957) +B.RC=new A.br(B.kU,0,B.I,-1) +B.RD=new A.f4(B.x,B.x,B.RC,B.x) +B.uJ=new A.bb(null,null,B.RD,null,null,null,null,B.E) +B.Ug=new A.A(1006632960) +B.Jn=new A.z(0,4) +B.S1=new A.c6(0.5,B.a6,B.Ug,B.Jn,10) +B.acX=A.a(s([B.S1]),t.F) +B.RV=new A.bb(null,null,null,B.uD,B.acX,null,null,B.E) +B.bw=new A.X4(1,"circle") +B.uK=new A.bb(null,null,null,null,null,null,null,B.bw) +B.M=new A.Hn(1,"contain") +B.os=new A.Hn(2,"cover") +B.uL=new A.Hn(6,"scaleDown") +B.iw=new A.X1(0,"tight") +B.uM=new A.X1(5,"strut") +B.fT=new A.aqJ(0,"tight") +B.aI=new A.X5(0,"dark") +B.b_=new A.X5(1,"light") +B.fU=new A.Ho(0,"blink") +B.aL=new A.Ho(1,"webkit") +B.dG=new A.Ho(2,"firefox") +B.Su=new A.Ag(0,"release") +B.Sy=new A.are(1,"padded") +B.Sz=new A.Hp(null,null,null,null,null,null,null,null,null) +B.uN=new A.Hr(0,"normal") +B.SA=new A.Hr(1,"accent") +B.SB=new A.Hr(2,"primary") +B.TK=new A.Rc(A.ar("Rc>")) +B.SC=new A.Ai(B.TK) +B.kD=new A.tJ(A.bAf(),A.ar("tJ")) +B.SD=new A.tJ(A.bAf(),A.ar("tJ")) +B.SE=new A.apk() +B.cS=new A.Ww() +B.SF=new A.WQ() +B.ct=new A.aqd() +B.da=new A.WP() +B.uO=new A.ar4() +B.SG=new A.ar8() +B.SH=new A.Xs() +B.uP=new A.asx() +B.ot=new A.Zy() +B.SI=new A.aub() +B.SK=new A.ZZ() +B.aB6=new A.ZX() +B.SJ=new A.ZY() +B.SL=new A.a__() +B.SM=new A.a_0() +B.aB7=new A.a_3() +B.SN=new A.a_4() +B.J=new A.IF() +B.SP=new A.awi() +B.SQ=new A.aww() +B.SR=new A.axH() +B.uQ=new A.jk(A.ar("jk")) +B.SS=new A.jk(A.ar("jk

    ")) +B.uR=new A.a_L() +B.eI=new A.a_O() +B.an=new A.a_O() +B.ST=new A.ay9() +B.bT=new A.aSq() +B.SU=new A.ayi() +B.SV=new A.tt() +B.kE=new A.a0g() +B.aB8=new A.a0y() +B.SW=new A.aAR() +B.SX=new A.aB2() +B.SY=new A.aBf() +B.SZ=new A.a0M() +B.uS=new A.JY() +B.aT=new A.aCV() +B.c0=new A.aCX() +B.uT=function getTagFallback(o) { + var s = Object.prototype.toString.call(o); + return s.substring(8, s.length - 1); +} +B.T_=function() { + var toStringFunction = Object.prototype.toString; + function getTag(o) { + var s = toStringFunction.call(o); + return s.substring(8, s.length - 1); + } + function getUnknownTag(object, tag) { + if (/^HTML[A-Z].*Element$/.test(tag)) { + var name = toStringFunction.call(object); + if (name == "[object Object]") return null; + return "HTMLElement"; + } + } + function getUnknownTagGenericBrowser(object, tag) { + if (object instanceof HTMLElement) return "HTMLElement"; + return getUnknownTag(object, tag); + } + function prototypeForTag(tag) { + if (typeof window == "undefined") return null; + if (typeof window[tag] == "undefined") return null; + var constructor = window[tag]; + if (typeof constructor != "function") return null; + return constructor.prototype; + } + function discriminator(tag) { return null; } + var isBrowser = typeof HTMLElement == "function"; + return { + getTag: getTag, + getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag, + prototypeForTag: prototypeForTag, + discriminator: discriminator }; +} +B.T4=function(getTagFallback) { + return function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("DumpRenderTree") >= 0) return hooks; + if (userAgent.indexOf("Chrome") >= 0) { + function confirm(p) { + return typeof window == "object" && window[p] && window[p].name == p; + } + if (confirm("Window") && confirm("HTMLElement")) return hooks; + } + hooks.getTag = getTagFallback; + }; +} +B.T0=function(hooks) { + if (typeof dartExperimentalFixupGetTag != "function") return hooks; + hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag); +} +B.T3=function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("Firefox") == -1) return hooks; + var getTag = hooks.getTag; + var quickMap = { + "BeforeUnloadEvent": "Event", + "DataTransfer": "Clipboard", + "GeoGeolocation": "Geolocation", + "Location": "!Location", + "WorkerMessageEvent": "MessageEvent", + "XMLDocument": "!Document"}; + function getTagFirefox(o) { + var tag = getTag(o); + return quickMap[tag] || tag; + } + hooks.getTag = getTagFirefox; +} +B.T2=function(hooks) { + if (typeof navigator != "object") return hooks; + var userAgent = navigator.userAgent; + if (typeof userAgent != "string") return hooks; + if (userAgent.indexOf("Trident/") == -1) return hooks; + var getTag = hooks.getTag; + var quickMap = { + "BeforeUnloadEvent": "Event", + "DataTransfer": "Clipboard", + "HTMLDDElement": "HTMLElement", + "HTMLDTElement": "HTMLElement", + "HTMLPhraseElement": "HTMLElement", + "Position": "Geoposition" + }; + function getTagIE(o) { + var tag = getTag(o); + var newTag = quickMap[tag]; + if (newTag) return newTag; + if (tag == "Object") { + if (window.DataView && (o instanceof window.DataView)) return "DataView"; + } + return tag; + } + function prototypeForTagIE(tag) { + var constructor = window[tag]; + if (constructor == null) return null; + return constructor.prototype; + } + hooks.getTag = getTagIE; + hooks.prototypeForTag = prototypeForTagIE; +} +B.T1=function(hooks) { + var getTag = hooks.getTag; + var prototypeForTag = hooks.prototypeForTag; + function getTagFixed(o) { + var tag = getTag(o); + if (tag == "Document") { + if (!!o.xmlVersion) return "!Document"; + return "!HTMLDocument"; + } + return tag; + } + function prototypeForTagFixed(tag) { + if (tag == "Document") return null; + return prototypeForTag(tag); + } + hooks.getTag = getTagFixed; + hooks.prototypeForTag = prototypeForTagFixed; +} +B.uU=function(hooks) { return hooks; } + +B.a7=new A.aD3() +B.cu=new A.a1r() +B.T5=new A.aET() +B.j=new A.z(0,0) +B.eB=new A.km(B.j) +B.T6=new A.C1() +B.T7=new A.aI4() +B.T8=new A.Lt() +B.T9=new A.aK9() +B.Tb=new A.aKu() +B.Tc=new A.aKw() +B.Td=new A.aKy() +B.Te=new A.aKH() +B.ix=new A.O() +B.Tf=new A.a5l() +B.bg=new A.iV(0,"android") +B.aG=new A.iV(2,"iOS") +B.cr=new A.iV(4,"macOS") +B.v2=new A.aco() +B.J3=new A.cR([B.bg,B.v2,B.aG,B.ot,B.cr,B.ot],A.ar("cR")) +B.Tg=new A.a5r() +B.Th=new A.a5I() +B.ou=new A.LY() +B.b2=new A.m0(4,"keyboard") +B.uV=new A.ui() +B.Ti=new A.aMz() +B.aB9=new A.aMX() +B.Tk=new A.aN2() +B.uW=new A.uw() +B.Tl=new A.a7o() +B.Tm=new A.aPr() +B.Tn=new A.aPs() +B.To=new A.a7t() +B.Tp=new A.aQa() +B.Tq=new A.a7P() +B.Tr=new A.aQA() +B.uX=new A.qS() +B.Ts=new A.aRd() +B.a=new A.aRe() +B.Tt=new A.a8h() +B.uY=new A.Oe() +B.ow=new A.Oe() +B.ov=new A.Oe() +B.Tu=new A.aSa() +B.e8=new A.aSl() +B.fV=new A.aSp() +B.Tv=new A.a93() +B.Tw=new A.aU6() +B.Tx=new A.aUc() +B.Ty=new A.aUd() +B.Tz=new A.aUe() +B.TA=new A.aUi() +B.TB=new A.aUk() +B.TC=new A.aUl() +B.TD=new A.aUm() +B.uZ=new A.v3() +B.v_=new A.v6() +B.TE=new A.aVm() +B.a5=new A.a9Z() +B.ao=new A.Po() +B.fW=new A.aVt() +B.ia=new A.aaa(0,0,0,0) +B.aa6=A.a(s([]),A.ar("E")) +B.aBa=new A.aVC() +B.v0=new A.aao() +B.aiA={amp:0,apos:1,gt:2,lt:3,quot:4} +B.aeH=new A.ai(B.aiA,["&","'",">","<",'"'],t.w) +B.v1=new A.acf() +B.iy=new A.acz() +B.cT=new A.acA() +B.TF=new A.rg() +B.v3=new A.rg() +B.v4=new A.rg() +B.iz=new A.aZ4() +B.TG=new A.Qq() +B.TH=new A.ae4() +B.v5=new A.aeg(A.ar("aeg")) +B.fX=new A.aem() +B.TI=new A.b0x() +B.TJ=new A.b0B() +B.aBb=new A.QE() +B.cU=new A.aev() +B.kG=new A.b0L() +B.af=new A.b2x() +B.oy=new A.b2S() +B.oz=new A.afg() +B.oA=new A.b2T() +B.TL=new A.afS() +B.TM=new A.b8j() +B.TN=new A.b8k() +B.fY=new A.b8N() +B.X=new A.RZ() +B.TO=new A.agM() +B.TP=new A.agU() +B.TR=new A.ah0() +B.TQ=new A.ah1() +B.bU=new A.baf() +B.oB=new A.baQ() +B.TS=new A.bbD() +B.v6=new A.bcj() +B.aO=new A.ajN() +B.dH=new A.ajP() +B.TT=new A.bcW() +B.v7=new A.akf() +B.oC=new A.akg() +B.iA=new A.akU() +B.v8=new A.al_() +B.TU=new A.alF() +B.TW=new A.amy() +B.TV=new A.amz() +B.v9=new A.Xc(0,"pixel") +B.TX=new A.Xc(1,"viewport") +B.TY=new A.Ak(null,null,null,null,null,null,null) +B.xU=new A.fo("",100,100,B.M,null,null) +B.TZ=new A.ik(B.O,null,null,B.xU,null) +B.a26=new A.fo("assets/images/filamentDefault.png",null,null,B.M,null,null) +B.U_=new A.ik(B.O,null,null,B.a26,null) +B.aBy=new A.aXy(0,"material") +B.n=new A.A(4294967295) +B.uo=new A.nY(B.n,t.ZU) +B.U4=new A.kw(4,0,null,null,null,null,B.uo,null,null,null) +B.va=new A.ik(B.O,null,null,B.U4,null) +B.vb=new A.kw(2,0,null,null,null,null,null,null,null,null) +B.U0=new A.ik(B.O,null,null,B.vb,null) +B.fZ=new A.kw(4,0,null,null,null,null,null,null,null,null) +B.dI=new A.ik(B.O,null,null,B.fZ,null) +B.a23=new A.fo("assets/images/controlDefault.png",null,null,B.M,null,null) +B.U1=new A.ik(B.O,null,null,B.a23,null) +B.U2=new A.Ao(null,null,null,null,null,null,null,null,null) +B.U3=new A.Hx(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.iB=new A.hb(0,B.x) +B.vd=new A.Hy(null) +B.U5=new A.Hy(B.rw) +B.alA=new A.yx(2,"clear") +B.iC=new A.Hz(B.alA) +B.U6=new A.Xo(0,"difference") +B.ve=new A.Xo(1,"intersect") +B.h=new A.Aq(0,"none") +B.w=new A.Aq(1,"hardEdge") +B.by=new A.Aq(2,"antiAlias") +B.oD=new A.Aq(3,"antiAliasWithSaveLayer") +B.oE=new A.Av(0,"pasteable") +B.oF=new A.Av(1,"unknown") +B.ajO=new A.CJ(3,"close") +B.iD=new A.HF(B.ajO) +B.oG=new A.Aw(0,"back") +B.U7=new A.Aw(1,"route") +B.U8=new A.Aw(2,"mask") +B.kH=new A.Aw(3,"normal") +B.oH=new A.Xy(0,"mode") +B.p8=new A.an(4294967295) +B.Ua=new A.px(!1,B.p8) +B.Ub=new A.px(!1,null) +B.kI=new A.px(!0,null) +B.UK=new A.A(4279646828) +B.kT=new A.A(4289112496) +B.oS=new A.A(4280494125) +B.kS=new A.A(4285823618) +B.kQ=new A.A(4284046950) +B.vJ=new A.A(4286133033) +B.vP=new A.A(4291414473) +B.UQ=new A.A(4280296231) +B.vC=new A.A(4282204485) +B.vE=new A.A(4283125847) +B.Uc=new A.tg(B.aI,B.UK,B.kT,B.oS,B.kS,null,null,B.kQ,B.kS,B.vJ,B.vP,null,null,null,null,null,null,null,null,null,null,null,null,null,null,B.vJ,B.kT,null,null,B.UQ,B.kT,null,null,null,null,null,B.oS,null,null,B.kS,B.vC,B.vE,B.v,null,null,null,null,null,null,null) +B.kN=new A.A(4279002082) +B.h_=new A.A(4281545523) +B.iK=new A.A(4284900966) +B.Xc=new A.A(4294870016) +B.Xf=new A.A(4294916409) +B.p6=new A.A(4294309626) +B.vv=new A.A(4280558628) +B.vT=new A.A(4292467161) +B.vL=new A.A(4287598479) +B.Vu=new A.A(4285298058) +B.Ud=new A.tg(B.b_,B.kN,B.n,B.n,B.h_,null,null,B.iK,B.h_,B.Xc,B.vP,null,null,null,null,null,null,null,null,null,null,null,null,null,null,B.Xf,B.n,null,null,B.p6,B.vv,null,null,null,null,null,B.n,null,null,B.h_,B.vT,B.vL,B.Vu,null,null,null,null,null,null,null) +B.iM=new A.A(4291869951) +B.V2=new A.A(4281867890) +B.oY=new A.A(4283381643) +B.kX=new A.A(4293582335) +B.oR=new A.A(4280352861) +B.p1=new A.A(4291609308) +B.V0=new A.A(4281544001) +B.oX=new A.A(4283057240) +B.kW=new A.A(4293451512) +B.oO=new A.A(4280097067) +B.p5=new A.A(4293900488) +B.Vg=new A.A(4282983730) +B.oZ=new A.A(4284693320) +B.l0=new A.A(4294957284) +B.oU=new A.A(4281405725) +B.WP=new A.A(4294097077) +B.Vl=new A.A(4284486672) +B.VN=new A.A(4287372568) +B.vV=new A.A(4294565596) +B.oN=new A.A(4279505432) +B.kV=new A.A(4293320937) +B.oW=new A.A(4282991951) +B.V4=new A.A(4282071102) +B.UI=new A.A(4279176467) +B.oP=new A.A(4280097568) +B.US=new A.A(4280360742) +B.UX=new A.A(4281018672) +B.V1=new A.A(4281742395) +B.vQ=new A.A(4291478736) +B.VS=new A.A(4287860633) +B.vB=new A.A(4281478965) +B.p_=new A.A(4284960932) +B.Ue=new A.tg(B.aI,B.iM,B.V2,B.oY,B.kX,B.kX,B.iM,B.oR,B.oY,B.p1,B.V0,B.oX,B.kW,B.kW,B.p1,B.oO,B.oX,B.p5,B.Vg,B.oZ,B.l0,B.l0,B.p5,B.oU,B.oZ,B.WP,B.Vl,B.VN,B.vV,B.oN,B.kV,B.oW,B.oN,B.V4,B.UI,B.oP,B.US,B.UX,B.V1,B.vQ,B.VS,B.oW,B.v,B.v,B.kV,B.vB,B.p_,B.iM,B.oN,B.kV) +B.Vm=new A.A(4284636017) +B.Vy=new A.A(4286403168) +B.W6=new A.A(4289930782) +B.V8=new A.A(4282453515) +B.p7=new A.A(4294899711) +B.WB=new A.A(4293386476) +B.Wv=new A.A(4292794593) +B.X1=new A.A(4294439674) +B.WQ=new A.A(4294176247) +B.WE=new A.A(4293715696) +B.Vv=new A.A(4286149758) +B.WY=new A.A(4294307831) +B.Uf=new A.tg(B.b_,B.p_,B.n,B.kX,B.oR,B.kX,B.iM,B.oR,B.oY,B.Vm,B.n,B.kW,B.oO,B.kW,B.p1,B.oO,B.oX,B.Vy,B.n,B.l0,B.oU,B.l0,B.p5,B.oU,B.oZ,B.W6,B.n,B.vV,B.V8,B.p7,B.oP,B.WB,B.Wv,B.p7,B.n,B.X1,B.WQ,B.WE,B.kV,B.oW,B.Vv,B.vQ,B.v,B.v,B.vB,B.WY,B.iM,B.p_,B.p7,B.oP) +B.vg=new A.A(1087163596) +B.Uh=new A.A(134217728) +B.Ui=new A.A(144613022) +B.Uj=new A.A(1627389952) +B.Uk=new A.A(1660944383) +B.vm=new A.A(16777215) +B.Um=new A.A(167772160) +B.oJ=new A.A(1723645116) +B.Un=new A.A(1724434632) +B.oK=new A.A(1962934272) +B.vo=new A.A(2155905152) +B.ab=new A.A(2315255808) +B.Up=new A.A(2583691263) +B.au=new A.A(3019898879) +B.ai=new A.A(3707764736) +B.Ur=new A.A(4039164096) +B.eK=new A.an(4278190080) +B.UH=new A.A(4279161856) +B.UO=new A.A(4280051916) +B.vt=new A.A(4280361249) +B.oT=new A.A(4281348144) +B.vA=new A.A(4281415227) +B.V5=new A.A(4282074439) +B.cV=new A.A(4282532418) +B.eL=new A.A(4284506208) +B.iJ=new A.A(4284572001) +B.Vp=new A.A(4284809178) +B.vG=new A.A(4285361517) +B.h0=new A.A(4285887861) +B.VG=new A.A(4286940549) +B.VO=new A.A(4287466893) +B.h1=new A.A(4288256409) +B.vM=new A.A(4288585374) +B.W_=new A.A(4289506476) +B.Wk=new A.A(4291875024) +B.vR=new A.A(4292030255) +B.cW=new A.A(4292927712) +B.p3=new A.A(4293256939) +B.c1=new A.A(4293848814) +B.vU=new A.A(4294046193) +B.WR=new A.A(4294180868) +B.WU=new A.A(4294243572) +B.kZ=new A.A(4294309365) +B.l_=new A.A(4294638330) +B.Xn=new A.A(4294942976) +B.vX=new A.A(4294964637) +B.vY=new A.A(4294966759) +B.XU=new A.A(436207616) +B.vZ=new A.A(452984831) +B.cX=new A.A(520093696) +B.XV=new A.A(536870911) +B.w1=new A.asw(0,"jpeg") +B.XY=new A.AB(0,"unknown") +B.eM=new A.AB(1,"lan") +B.w2=new A.AB(2,"cloud") +B.dJ=new A.AB(3,"wcp") +B.w3=new A.HK(0,"none") +B.XZ=new A.HK(1,"waiting") +B.pa=new A.HK(3,"done") +B.dd=new A.lE(0,"unknown") +B.l1=new A.lE(1,"connecting") +B.av=new A.lE(2,"connected") +B.Y_=new A.lE(3,"connectedOffline") +B.aP=new A.lE(4,"connectedOnline") +B.iO=new A.lE(5,"disconnected") +B.Y0=new A.lE(6,"discontinue") +B.Y1=new A.fj(0,"bluetooth") +B.pb=new A.fj(1,"wifi") +B.Y2=new A.fj(2,"ethernet") +B.w4=new A.fj(3,"mobile") +B.pc=new A.fj(4,"none") +B.Y3=new A.fj(5,"vpn") +B.w5=new A.fj(6,"other") +B.pd=new A.tj(0,"wifi") +B.pe=new A.tj(1,"mobile") +B.w6=new A.tj(3,"other") +B.iP=new A.tj(4,"none") +B.Y4=new A.wm(!1) +B.Y5=new A.wm(!0) +B.l2=new A.lF(0,"cut") +B.l3=new A.lF(1,"copy") +B.l4=new A.lF(2,"paste") +B.l5=new A.lF(3,"selectAll") +B.w7=new A.lF(4,"delete") +B.pf=new A.lF(5,"lookUp") +B.pg=new A.lF(6,"searchWeb") +B.l6=new A.lF(7,"share") +B.ph=new A.lF(8,"liveTextInput") +B.pi=new A.lF(9,"custom") +B.Y6=new A.XF(null) +B.Y7=new A.HQ(null) +B.Y8=new A.HR(null) +B.w8=new A.o7(!1) +B.w9=new A.o7(!0) +B.ap=new A.wq(0,"start") +B.h3=new A.wq(1,"end") +B.l=new A.wq(2,"center") +B.cv=new A.wq(3,"stretch") +B.l7=new A.wq(4,"baseline") +B.wa=new A.eq(0.35,0.91,0.33,0.97) +B.wb=new A.eq(0.2,0,0,1) +B.aQ=new A.eq(0.4,0,0.2,1) +B.Y9=new A.eq(0.05,0,0.133333,0.06) +B.Yb=new A.eq(0.215,0.61,0.355,1) +B.wc=new A.eq(0.31,0,0.56,1) +B.eN=new A.eq(0,0,0.58,1) +B.e9=new A.eq(0.42,0,0.58,1) +B.bk=new A.eq(0.25,0.1,0.25,1) +B.ea=new A.eq(0.42,0,1,1) +B.Yc=new A.eq(0.208333,0.82,0.25,1) +B.Yd=new A.eq(0.67,0.03,0.65,0.09) +B.wd=new A.eq(0.18,1,0.04,1) +B.we=new A.eq(0,0,0.2,1) +B.iQ=new A.eq(0.075,0.82,0.165,1) +B.Yh=new A.eq(0.55,0.055,0.675,0.19) +B.wf=new A.eq(0.175,0.885,0.32,1.275) +B.Yi=new A.eq(0.77,0,0.175,1) +B.iI=new A.A(4282137668) +B.kY=new A.A(4293651445) +B.Yk=new A.dP(B.iI,null,null,B.iI,B.kY,B.iI,B.kY,B.iI,B.kY,B.iI,B.kY,0) +B.oI=new A.A(1279016003) +B.vi=new A.A(1290529781) +B.vk=new A.A(1614560323) +B.vl=new A.A(1626074101) +B.Yl=new A.dP(B.oI,"placeholderText",null,B.oI,B.vi,B.vk,B.vl,B.oI,B.vi,B.vk,B.vl,0) +B.l8=new A.dP(B.v,null,null,B.v,B.n,B.v,B.n,B.v,B.n,B.v,B.n,0) +B.iN=new A.A(4294375158) +B.kP=new A.A(4280427042) +B.Ym=new A.dP(B.iN,null,null,B.iN,B.kP,B.iN,B.kP,B.iN,B.kP,B.iN,B.kP,0) +B.iE=new A.A(1493172224) +B.kJ=new A.A(2164260863) +B.Yn=new A.dP(B.iE,null,null,B.iE,B.kJ,B.iE,B.kJ,B.iE,B.kJ,B.iE,B.kJ,0) +B.iR=new A.dP(B.h1,"inactiveGray",null,B.h1,B.h0,B.h1,B.h0,B.h1,B.h0,B.h1,B.h0,0) +B.iL=new A.A(4290295992) +B.kR=new A.A(4284177243) +B.Yo=new A.dP(B.iL,null,null,B.iL,B.kR,B.iL,B.kR,B.iL,B.kR,B.iL,B.kR,0) +B.oV=new A.A(4281648985) +B.vy=new A.A(4281389400) +B.vw=new A.A(4280584765) +B.vz=new A.A(4281391963) +B.wg=new A.dP(B.oV,"systemGreen",null,B.oV,B.vy,B.vw,B.vz,B.oV,B.vy,B.vw,B.vz,0) +B.h2=new A.A(4292269782) +B.Yp=new A.dP(B.h2,null,null,B.h2,B.cV,B.h2,B.cV,B.h2,B.cV,B.h2,B.cV,0) +B.p9=new A.A(678983808) +B.vj=new A.A(1366849664) +B.vf=new A.A(1031305344) +B.vn=new A.A(1719171200) +B.Yq=new A.dP(B.p9,"secondarySystemFill",null,B.p9,B.vj,B.vf,B.vn,B.p9,B.vj,B.vf,B.vn,0) +B.l9=new A.dP(B.v,"label",null,B.v,B.n,B.v,B.n,B.v,B.n,B.v,B.n,0) +B.oM=new A.A(4278221567) +B.vs=new A.A(4278879487) +B.vq=new A.A(4278206685) +B.vD=new A.A(4282424575) +B.wh=new A.dP(B.oM,"systemBlue",null,B.oM,B.vs,B.vq,B.vD,B.oM,B.vs,B.vq,B.vD,0) +B.iF=new A.A(268435456) +B.kK=new A.A(285212671) +B.Ys=new A.dP(B.iF,null,null,B.iF,B.kK,B.iF,B.kK,B.iF,B.kK,B.iF,B.kK,0) +B.iG=new A.A(3003121663) +B.kL=new A.A(2989502512) +B.Yt=new A.dP(B.iG,null,null,B.iG,B.kL,B.iG,B.kL,B.iG,B.kL,B.iG,B.kL,0) +B.oL=new A.A(343176320) +B.w0=new A.A(762738304) +B.w_=new A.A(678720640) +B.vh=new A.A(1115059840) +B.Yu=new A.dP(B.oL,"quaternarySystemFill",null,B.oL,B.w0,B.w_,B.vh,B.oL,B.w0,B.w_,B.vh,0) +B.UN=new A.A(4280032286) +B.UU=new A.A(4280558630) +B.wi=new A.dP(B.n,"systemBackground",null,B.n,B.v,B.n,B.v,B.n,B.UN,B.n,B.UU,0) +B.iH=new A.A(4042914297) +B.kM=new A.A(4028439837) +B.Yr=new A.dP(B.iH,null,null,B.iH,B.kM,B.iH,B.kM,B.iH,B.kM,B.iH,B.kM,0) +B.azJ=new A.aec(B.l9,B.iR) +B.u5=new A.aee(null,B.wh,B.wi,B.Yr,B.wi,!1,B.azJ) +B.eb=new A.AI(B.u5,null,null,null,null,null,null,null) +B.h4=new A.ZB(0,"base") +B.pj=new A.ZB(1,"elevated") +B.Yv=new A.au2(1,"latency") +B.Yw=new A.If(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.Yx=new A.Ig(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.Yy=new A.tl(0,"custom") +B.Yz=new A.tl(1,"attach") +B.wj=new A.tl(2,"notify") +B.wk=new A.tl(3,"toast") +B.YA=new A.tl(4,"mask") +B.wl=new A.ws(0,"uninitialized") +B.YB=new A.ws(1,"initializingServices") +B.wm=new A.ws(2,"initializedServices") +B.YC=new A.ws(3,"initializingUi") +B.YD=new A.ws(4,"initialized") +B.aBc=new A.aua(1,"traversalOrder") +B.YE=new A.ZS(!0,null) +B.h5=new A.ZV(0,"background") +B.wn=new A.ZV(1,"foreground") +B.aAG=new A.ahA(null) +B.h6=new A.tm(null,null,null,B.aAG,null) +B.i9=new A.J(!0,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.cs=new A.E_(0,"clip") +B.aX=new A.aUC(0,"parent") +B.aAH=new A.ahC(null) +B.wo=new A.AN(B.i9,null,!0,B.cs,null,B.aX,null,B.aAH,null) +B.pk=new A.wu(!1) +B.iS=new A.wu(!0) +B.pl=new A.wv(!1) +B.pm=new A.wv(!0) +B.pn=new A.ww(!1) +B.iT=new A.ww(!0) +B.wp=new A.Il(0,"x") +B.wq=new A.Il(1,"y") +B.wr=new A.Il(2,"z") +B.dK=new A.mB(0,"unknown") +B.cw=new A.mB(1,"wanReady") +B.iU=new A.mB(2,"wanOnline") +B.h7=new A.mB(3,"wanOffline") +B.cY=new A.mB(4,"lanReady") +B.iV=new A.mB(5,"lanOnline") +B.h8=new A.mB(6,"lanOffline") +B.YF=new A.mB(7,"error") +B.po=new A.hd(602009,"\u6388\u6743\u68c0\u6d4b\u5f02\u5e38",13,"authCheckException") +B.ws=new A.hd(602010,"\u8bbe\u5907\u8ba4\u8bc1\u68c0\u67e5\u533a\u57df\u5931\u8d25",14,"authCodeLocaleNotMatch") +B.de=new A.hd(602e3,"\u8bbe\u5907\u672a\u627e\u5230",4,"deviceNotFound") +B.df=new A.hd(602007,"\u8bbe\u5907\u672a\u6388\u6743",11,"deviceUnauthorized") +B.iW=new A.hd(502,"\u8bbe\u5907\u7f51\u7edc\u4e0d\u53ef\u7528",0,"deviceNetworkUnavailable") +B.iX=new A.hd(-1,"\u8bbe\u5907\u65e0\u54cd\u5e94",2,"deviceNoResponse") +B.wt=new A.hd(601005,"\u8bbe\u5907\u8bc1\u4e66\u5931\u6548",3,"deviceCertInvalid") +B.YP=new A.AT(0) +B.YQ=new A.AT(1) +B.aiD={isTransparent:0} +B.IP=new A.ai(B.aiD,[!0],t.yf) +B.YR=new A.Is(null) +B.YS=new A.a_c(0,"portraitUp") +B.iY=new A.a_f(0,"orca") +B.YT=new A.a_f(2,"orcaLocal") +B.la=new A.hx(1,"networkDisconnected") +B.dL=new A.hx(11,"deviceConnectFailed") +B.lb=new A.hx(12,"deviceAuthorizationRemoved") +B.Z4=new A.hx(2,"downloadModelFileFailed") +B.Z5=new A.hx(3,"uploadModelFileFailed") +B.eO=new A.hx(4,"offline") +B.h9=new A.hx(7,"unbound") +B.Z6=new A.hx(8,"authCheckException") +B.Z7=new A.hx(9,"authCodeLocaleNotMatch") +B.Z8=new A.jj(0,"idle") +B.wu=new A.jj(1,"working") +B.Z9=new A.jj(10,"autoUnloading") +B.Za=new A.jj(11,"manualLoading") +B.Zb=new A.jj(12,"offline") +B.Zc=new A.jj(2,"xyzCalibrating") +B.Zd=new A.jj(3,"bedLeveling") +B.Ze=new A.jj(4,"flowCalibrating") +B.Zf=new A.jj(5,"vibrationCalibrating") +B.Zg=new A.jj(6,"upgrading") +B.wv=new A.jj(7,"error") +B.Zh=new A.jj(8,"manualSpringScrewAdjusting") +B.Zi=new A.jj(9,"autoLoading") +B.bp=new A.Iv(3,"info") +B.Zj=new A.Iv(5,"hint") +B.Zk=new A.Iv(6,"summary") +B.aBd=new A.pE(1,"sparse") +B.Zl=new A.pE(10,"shallow") +B.Zm=new A.pE(11,"truncateChildren") +B.Zn=new A.pE(5,"error") +B.Zo=new A.pE(6,"whitespace") +B.eP=new A.pE(8,"singleLine") +B.dM=new A.pE(9,"errorProperty") +B.Zp=new A.AW(null,null,null,null,null,null,null,null,null,null,null,null,null) +B.iZ=new A.oa(0,"dialog") +B.pp=new A.oa(1,"custom") +B.pq=new A.oa(2,"attach") +B.lc=new A.oa(3,"notify") +B.ww=new A.oa(4,"allDialog") +B.wx=new A.oa(5,"allCustom") +B.wy=new A.oa(6,"allAttach") +B.Zq=new A.oa(7,"allNotify") +B.wz=new A.ob(0,"connectionTimeout") +B.wA=new A.ob(1,"sendTimeout") +B.wB=new A.ob(2,"receiveTimeout") +B.Zr=new A.ob(3,"badCertificate") +B.wC=new A.ob(4,"badResponse") +B.ld=new A.ob(5,"cancel") +B.pr=new A.ob(6,"connectionError") +B.wD=new A.ob(7,"unknown") +B.Zu=new A.kF(1,"horizontal") +B.wE=new A.kF(2,"endToStart") +B.ps=new A.kF(3,"startToEnd") +B.wF=new A.kF(4,"up") +B.pt=new A.kF(5,"down") +B.pu=new A.kF(6,"none") +B.Zv=new A.wC(null,null,null,null,null) +B.ha=new A.pF(1,null,null,null,null,null) +B.Zw=new A.wD(null) +B.le=new A.a_A(0,"down") +B.S=new A.a_A(1,"start") +B.Zx=new A.mJ(0,"path") +B.Zy=new A.mJ(2,"saveLayer") +B.ZA=new A.mJ(4,"clip") +B.ZC=new A.mJ(6,"text") +B.ZD=new A.mJ(7,"image") +B.ZE=new A.mJ(8,"pattern") +B.ZF=new A.mJ(9,"textPosition") +B.Zz=new A.mJ(3,"restore") +B.j_=new A.kH(null,B.Zz,null,null,null,null) +B.ZB=new A.mJ(5,"mask") +B.ZG=new A.kH(null,B.ZB,null,null,null,null) +B.ZH=new A.a_D(null) +B.ZI=new A.IR(null,null,null,null,null,null,null,null,null) +B.aBe=new A.awF(0,"textDirection") +B.ZJ=new A.IT(null,null,null) +B.y0=new A.eF(0.25,0.5,B.X) +B.aBf=new A.a_F(null,null,null,null,B.j,null) +B.F=new A.bj(0) +B.ZK=new A.bj(1e4) +B.bc=new A.bj(1e5) +B.bK=new A.bj(1e6) +B.ZL=new A.bj(1e7) +B.ZM=new A.bj(12e4) +B.ZN=new A.bj(12e5) +B.ZO=new A.bj(12e7) +B.pv=new A.bj(125e3) +B.ZP=new A.bj(14e4) +B.ZQ=new A.bj(15e3) +B.eQ=new A.bj(15e4) +B.ZR=new A.bj(15e5) +B.lf=new A.bj(15e6) +B.ZS=new A.bj(16667) +B.hb=new A.bj(167e3) +B.ZT=new A.bj(18e4) +B.ZU=new A.bj(18e5) +B.pw=new A.bj(2e4) +B.T=new A.bj(2e5) +B.dN=new A.bj(2e6) +B.wG=new A.bj(2e7) +B.ZV=new A.bj(225e3) +B.j0=new A.bj(25e4) +B.ZW=new A.bj(25e5) +B.ZX=new A.bj(2592e9) +B.ZY=new A.bj(2961926e3) +B.bl=new A.bj(3e5) +B.hc=new A.bj(3e6) +B.ZZ=new A.bj(35e4) +B.wH=new A.bj(375e3) +B.a__=new A.bj(4e4) +B.px=new A.bj(4e5) +B.c2=new A.bj(4e6) +B.a_0=new A.bj(45e3) +B.a_1=new A.bj(500) +B.hd=new A.bj(5e4) +B.ec=new A.bj(5e5) +B.wI=new A.bj(5e6) +B.j1=new A.bj(6e5) +B.a_2=new A.bj(6e6) +B.wJ=new A.bj(6048e8) +B.wK=new A.bj(7e4) +B.lg=new A.bj(75e3) +B.a_3=new A.bj(864e8) +B.a_4=new A.bj(-38e3) +B.a_5=new A.awG(0,"tonalSpot") +B.j2=new A.a_G(0,"idle") +B.a_6=new A.a_G(1,"loading") +B.lh=new A.a_H(0,"elevated") +B.he=new A.a_H(1,"outlined") +B.a_7=new A.eA(0,0,0,0) +B.a_8=new A.eA(0,4,0,4) +B.a_9=new A.eA(0,8,0,8) +B.a_a=new A.eA(12,16,12,8) +B.a_b=new A.eA(12,20,12,12) +B.a_c=new A.eA(12,4,12,4) +B.a_d=new A.eA(12,8,12,8) +B.py=new A.eA(16,0,24,0) +B.a_e=new A.eA(4,0,6,0) +B.a_f=new A.eA(8,0,12,0) +B.Z=new A.al(0,0,0,0) +B.a_g=new A.al(0,0,0,14) +B.a_h=new A.al(0,0,0,40) +B.wL=new A.al(0,0,8,0) +B.a_i=new A.al(0,10,0,10) +B.wM=new A.al(0,12,0,12) +B.a_j=new A.al(0,13,0,13) +B.a_k=new A.al(0,14,0,14) +B.a_l=new A.al(0,16,0,0) +B.wN=new A.al(0,16,0,16) +B.a_m=new A.al(0,18,0,18) +B.a_n=new A.al(0,20,0,0) +B.a_o=new A.al(0,20,0,20) +B.a_p=new A.al(0,2,0,2) +B.a_q=new A.al(0,48,0,0) +B.j3=new A.al(0,5,0,0) +B.a_r=new A.al(0,6,6,0) +B.dg=new A.al(0,8,0,8) +B.a_s=new A.al(10,0,10,0) +B.a_t=new A.al(10,10,10,10) +B.wO=new A.al(12,0,12,0) +B.a_u=new A.al(12,12,12,0) +B.dO=new A.al(12,12,12,12) +B.a_v=new A.al(12,18,12,18) +B.a_w=new A.al(12,4,12,4) +B.wP=new A.al(12,6,12,6) +B.wQ=new A.al(12,8,12,14) +B.wR=new A.al(12,8,12,8) +B.a_x=new A.al(14,0,0,0) +B.a_y=new A.al(14,14,14,14) +B.a_z=new A.al(15,5,15,10) +B.bV=new A.al(16,0,16,0) +B.a_A=new A.al(16,10,16,0) +B.a_B=new A.al(16,10,16,22) +B.wS=new A.al(16,12,16,12) +B.a_C=new A.al(16,13,16,13) +B.bW=new A.al(16,16,16,16) +B.a_D=new A.al(16,17,16,17) +B.a_E=new A.al(16,18,16,18) +B.a_F=new A.al(16,4,16,4) +B.wT=new A.al(16,8,16,8) +B.a_G=new A.al(20,0,0,0) +B.a_H=new A.al(20,0,20,3) +B.j4=new A.al(20,10,20,10) +B.wU=new A.al(20,20,20,20) +B.a_I=new A.al(20,24,20,24) +B.wV=new A.al(24,0,24,0) +B.a_J=new A.al(24,0,24,24) +B.a_K=new A.al(24,12,24,12) +B.a_L=new A.al(24,16,24,28) +B.wW=new A.al(24,17,24,17) +B.wX=new A.al(24,24,24,24) +B.a_M=new A.al(24,28,24,0) +B.a_N=new A.al(24,30,24,30) +B.a_O=new A.al(24,32,24,18) +B.a_P=new A.al(24,40,24,10) +B.a_Q=new A.al(24,50,24,10) +B.a_R=new A.al(25,10,25,10) +B.a_S=new A.al(2,0,0,0) +B.a_T=new A.al(2,0,2,0) +B.a_U=new A.al(2,17,2,12) +B.wY=new A.al(2,2,2,2) +B.a_V=new A.al(30,20,30,20) +B.a_W=new A.al(30,50,30,50) +B.a_X=new A.al(35,0,0,0) +B.a_Y=new A.al(40,0,40,0) +B.a_Z=new A.al(40,24,40,24) +B.pz=new A.al(40,32,22,32) +B.a0_=new A.al(40,40,40,40) +B.a00=new A.al(49,32,50,10) +B.a01=new A.al(4,0,0,0) +B.a02=new A.al(4,0,4,0) +B.a03=new A.al(4,2,4,2) +B.pA=new A.al(4,4,4,4) +B.aBg=new A.al(4,4,4,5) +B.aBh=new A.al(5,0,5,0) +B.a04=new A.al(6,2,6,2) +B.a05=new A.al(6,6,6,6) +B.li=new A.al(8,0,0,0) +B.lj=new A.al(8,0,8,0) +B.a06=new A.al(8,12,8,12) +B.a07=new A.al(8,2,8,5) +B.wZ=new A.al(8,4,8,4) +B.j5=new A.al(8,8,8,8) +B.x_=new A.al(0.5,1,0.5,1) +B.a08=new A.B6(null) +B.a09=new A.J3(0,"noOpinion") +B.a0a=new A.J3(1,"enabled") +B.lk=new A.J3(2,"disabled") +B.a0b=new A.a_N(null) +B.a3l=A.a(s([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0.2126,0.7152,0.0722,0,0]),t.n) +B.U9=new A.Xy(1,"matrix") +B.a0c=new A.B7(null,null,B.a3l,B.U9) +B.dh=new A.Ba(0,"http") +B.j6=new A.Ba(1,"openBusiness") +B.hf=new A.Ba(2,"permission") +B.b0=new A.Ba(3,"businessOperation") +B.x0=new A.Bc(null) +B.pB=new A.wI(!1,!1,!1,!1) +B.pC=new A.wI(!1,!1,!1,!0) +B.x1=new A.wJ(!1,!1,!1,!1) +B.x2=new A.wJ(!1,!1,!1,!0) +B.lv=new A.a0f(0,"tight") +B.YG=new A.a_b(null) +B.a0d=new A.Bd(1,B.lv,B.YG,null) +B.a0e=new A.Jf(null,null,null,null,null,null,null,null,null,null,null,null,null) +B.x3=new A.Be(null) +B.ll=new A.pT(!1,!1,!1,!1) +B.lm=new A.pT(!1,!1,!1,!0) +B.hg=new A.pT(!0,!1,!1,!1) +B.hh=new A.pT(!0,!1,!1,!0) +B.x4=new A.pU(!1,!1,!1,!1) +B.x5=new A.pU(!1,!1,!1,!0) +B.ln=new A.pU(!0,!1,!1,!1) +B.lo=new A.pU(!0,!1,!1,!0) +B.x6=new A.kI(!1,!1,!1,!1) +B.x7=new A.kI(!1,!1,!1,!0) +B.a0f=new A.kI(!1,!1,!0,!1) +B.a0g=new A.kI(!1,!1,!0,!0) +B.eR=new A.kI(!0,!1,!1,!1) +B.eS=new A.kI(!0,!1,!1,!0) +B.a0h=new A.kI(!0,!1,!0,!1) +B.a0i=new A.kI(!0,!1,!0,!0) +B.x8=new A.pV(!1,!1,!1,!1) +B.x9=new A.pV(!1,!1,!1,!0) +B.a0j=new A.pV(!0,!1,!1,!1) +B.a0k=new A.pV(!0,!1,!1,!0) +B.xa=new A.wM(!1,!0,!1,!1) +B.xb=new A.wM(!1,!0,!1,!0) +B.xc=new A.pW(!1,!1,!1,!1) +B.xd=new A.pW(!1,!1,!1,!0) +B.lp=new A.pW(!0,!1,!1,!1) +B.lq=new A.pW(!0,!1,!1,!0) +B.xe=new A.wN(!1,!0,!1,!1) +B.xf=new A.wN(!1,!0,!1,!0) +B.j7=new A.tu(!1,!1,!1,!1) +B.j8=new A.tu(!1,!1,!1,!0) +B.hi=new A.tu(!0,!1,!1,!1) +B.hj=new A.tu(!0,!1,!1,!0) +B.lr=new A.pX(!1,!1,!1,!1) +B.ls=new A.pX(!1,!1,!1,!0) +B.pD=new A.pX(!0,!1,!1,!1) +B.pE=new A.pX(!0,!1,!1,!0) +B.a0l=new A.Bf(0,"main") +B.a0m=new A.Bf(1,"cavity") +B.a0n=new A.Jh(null) +B.a0o=new A.ayL(1,"web") +B.aBi=new A.az5(0,"write") +B.a0p=new A.a0a(0,"direct") +B.a0q=new A.a0a(1,"api") +B.xg=new A.wS(0) +B.lt=new A.wS(1) +B.a0r=new A.wS(2) +B.xh=new A.wS(3) +B.a0s=new A.wS(4) +B.hk=new A.Jm(0) +B.eT=new A.Jm(1) +B.lu=new A.Jm(2) +B.xi=new A.jl("All nodes must have a parent.","",null) +B.a0t=new A.pZ(0) +B.a0u=new A.pZ(2) +B.a0v=new A.pZ(3) +B.a0w=new A.pZ(4) +B.xj=new A.pZ(6) +B.a0x=new A.wT(B.eK,null) +B.a0y=new A.Jn(null) +B.xk=new A.Jo(1,"low") +B.eU=new A.Jo(2,"medium") +B.a0z=new A.Jo(3,"high") +B.V=new A.R(0,0) +B.a0A=new A.a0d(B.V,B.V) +B.hl=new A.a0f(1,"loose") +B.a0B=new A.Js(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.xl=new A.Jt(0,"Start") +B.lw=new A.Jt(1,"Update") +B.lx=new A.Jt(2,"End") +B.xm=new A.Ju(0,"never") +B.xn=new A.Ju(1,"auto") +B.a0C=new A.Ju(2,"always") +B.a0D=new A.azn(1,"VERTICAL") +B.xo=new A.a0h(0,"TOP") +B.aBj=new A.a0h(1,"BOTTOM") +B.a0E=new A.Bl(0,"SHOWING") +B.a0F=new A.Bl(1,"DISMISSED") +B.xp=new A.Bl(2,"IS_APPEARING") +B.xq=new A.Bl(3,"IS_HIDING") +B.a0G=new A.azu(0,"FLOATING") +B.xr=new A.Jv(0,"success") +B.pF=new A.Jv(1,"error") +B.a0H=new A.Jv(2,"warning") +B.aBk=new A.azv(0,"top") +B.pG=new A.tB(0,"touch") +B.ly=new A.tB(1,"traditional") +B.aBl=new A.azR(0,"automatic") +B.xs=new A.azU("focus") +B.a0I=new A.mQ(0,"w100") +B.a0J=new A.mQ(1,"w200") +B.a0L=new A.mQ(2,"w300") +B.pI=new A.mQ(3,"w400") +B.u=new A.lL(3,400) +B.a0N=new A.mQ(4,"w500") +B.K=new A.lL(4,500) +B.a0O=new A.mQ(5,"w600") +B.bm=new A.lL(5,600) +B.xt=new A.mQ(6,"w700") +B.cZ=new A.lL(6,700) +B.a0P=new A.mQ(7,"w800") +B.pJ=new A.lL(7,800) +B.a0Q=new A.mQ(8,"w900") +B.xv=new A.ip("Invalid method call",null,null) +B.xw=new A.ip("Too many percent/permill",null,null) +B.a0R=new A.ip("Invalid envelope",null,null) +B.a0S=new A.ip("Expected envelope, got nothing",null,null) +B.cx=new A.ip("Message corrupted",null,null) +B.xx=new A.Br(0,"ltr") +B.xy=new A.Br(1,"rtl") +B.pK=new A.Br(3,"sandwich") +B.xz=new A.JE(0,"idle") +B.j9=new A.JE(1,"preparing") +B.hm=new A.JE(2,"playing") +B.d_=new A.a0x(0,"accepted") +B.bd=new A.a0x(1,"rejected") +B.xA=new A.x_(0,"pointerEvents") +B.hn=new A.x_(1,"browserGestures") +B.eV=new A.JG(0,"ready") +B.lA=new A.JG(1,"possible") +B.a0T=new A.JG(2,"defunct") +B.pL=new A.JI(0,"objectBoundingBox") +B.a0U=new A.JI(1,"userSpaceOnUse") +B.xB=new A.JI(2,"transformed") +B.lB=new A.a0I(0,"forward") +B.xC=new A.a0I(1,"reverse") +B.eW=new A.By(0,"push") +B.eX=new A.By(1,"pop") +B.di=new A.JN(0,"deferToChild") +B.aU=new A.JN(1,"opaque") +B.d0=new A.JN(2,"translucent") +B.xD=new A.x6(null) +B.a0X=new A.a0U(0,"notCompressed") +B.xE=new A.a0U(1,"decompressed") +B.a3=new A.aC3(0,"start") +B.a15=new A.tD(null) +B.pM=new A.db(57415,"MaterialIcons",null,!1) +B.xF=new A.db(57490,"MaterialIcons",null,!0) +B.xG=new A.db(57496,"MaterialIcons",null,!1) +B.a16=new A.db(57498,"MaterialIcons",null,!1) +B.lC=new A.db(57686,"MaterialIcons",null,!1) +B.xI=new A.db(57706,"MaterialIcons",null,!1) +B.xJ=new A.db(57912,"MaterialIcons",null,!1) +B.a1c=new A.db(58123,"MaterialIcons",null,!0) +B.a1e=new A.db(58173,"MaterialIcons",null,!1) +B.xK=new A.db(58195,"MaterialIcons",null,!1) +B.xL=new A.db(58198,"MaterialIcons",null,!1) +B.a1f=new A.db(58235,"MaterialIcons",null,!1) +B.xM=new A.db(58291,"MaterialIcons",null,!1) +B.pN=new A.db(58332,"MaterialIcons",null,!1) +B.a1g=new A.db(58372,"MaterialIcons",null,!1) +B.a1i=new A.db(58644,"MaterialIcons",null,!1) +B.a1n=new A.db(59083,"MaterialIcons",null,!1) +B.a1o=new A.db(59111,"MaterialIcons",null,!1) +B.a1p=new A.db(61757,"MaterialIcons",null,!1) +B.a1q=new A.db(62159,"MaterialIcons",null,!1) +B.a1r=new A.db(62638,"MaterialIcons",null,!1) +B.a1s=new A.db(983224,"MaterialIcons",null,!1) +B.pO=new A.ei(B.xG,null,null,null,null) +B.a1t=new A.a1_(B.pO) +B.a1u=new A.eP(null,null,null,null,null,B.n,null,null,null) +B.a1v=new A.eP(null,null,null,null,null,B.v,null,null,null) +B.xO=new A.eP(24,0,400,0,48,B.v,1,null,!1) +B.a1w=new A.ei(B.xK,20,null,null,null) +B.a19=new A.db(57791,"MaterialIcons",null,!1) +B.a1x=new A.ei(B.a19,null,B.dT,null,null) +B.xN=new A.db(58397,"MaterialIcons",null,!0) +B.Px=new A.eK("Sidemenu_icon1",t.kK) +B.a1y=new A.ei(B.xN,30,null,null,B.Px) +B.awb=new A.eK("Sidemenu_icon2",t.kK) +B.a1z=new A.ei(B.xN,30,null,null,B.awb) +B.XE=new A.A(4294962158) +B.Xu=new A.A(4294954450) +B.WJ=new A.A(4293892762) +B.Wy=new A.A(4293227379) +B.WH=new A.A(4293874512) +B.WS=new A.A(4294198070) +B.Wx=new A.A(4293212469) +B.We=new A.A(4291176488) +B.W7=new A.A(4290190364) +B.agw=new A.cR([50,B.XE,100,B.Xu,200,B.WJ,300,B.Wy,400,B.WH,500,B.WS,600,B.Wx,700,B.vR,800,B.We,900,B.W7],t.pl) +B.jB=new A.qk(B.agw,4294198070) +B.a1A=new A.ei(B.xJ,64,B.jB,null,null) +B.a1B=new A.ei(B.lC,14,B.n,null,null) +B.xP=new A.ei(B.pM,20,null,null,null) +B.a1b=new A.db(57965,"MaterialIcons",null,!1) +B.a1C=new A.ei(B.a1b,16,null,null,null) +B.a17=new A.db(57694,"MaterialIcons",null,!0) +B.XJ=new A.A(4294964192) +B.Xy=new A.A(4294959282) +B.Xt=new A.A(4294954112) +B.Xr=new A.A(4294948685) +B.Xp=new A.A(4294944550) +B.Xl=new A.A(4294940672) +B.X8=new A.A(4294675456) +B.WV=new A.A(4294278144) +B.WI=new A.A(4293880832) +B.Wz=new A.A(4293284096) +B.agx=new A.cR([50,B.XJ,100,B.Xy,200,B.Xt,300,B.Xr,400,B.Xp,500,B.Xl,600,B.X8,700,B.WV,800,B.WI,900,B.Wz],t.pl) +B.jC=new A.qk(B.agx,4294940672) +B.a1D=new A.ei(B.a17,null,B.jC,null,null) +B.a1d=new A.db(58136,"MaterialIcons",null,!1) +B.a1E=new A.ei(B.a1d,20,null,null,null) +B.a18=new A.db(57695,"MaterialIcons",null,!0) +B.a1F=new A.ei(B.a18,null,B.jC,null,null) +B.a1j=new A.db(58714,"MaterialIcons",null,!1) +B.a1H=new A.ei(B.a1j,48,null,null,null) +B.a1k=new A.db(58727,"MaterialIcons",null,!1) +B.a1G=new A.ei(B.a1k,20,null,null,null) +B.a1a=new A.db(57857,"MaterialIcons",null,!1) +B.xQ=new A.ei(B.a1a,null,null,null,null) +B.a1K=new A.ei(B.pN,null,null,null,null) +B.a1h=new A.db(58602,"MaterialIcons",null,!1) +B.a1J=new A.ei(B.a1h,48,null,null,null) +B.a1l=new A.db(58889,"MaterialIcons",null,!1) +B.a1I=new A.ei(B.a1l,16,null,null,null) +B.a1L=new A.ei(B.xL,20,null,null,null) +B.a1M=new A.ei(B.pM,40,B.v,null,null) +B.a1m=new A.db(59049,"MaterialIcons",null,!1) +B.aeP=new A.cR([50,B.l_,100,B.kZ,200,B.c1,300,B.cW,350,B.h2,400,B.kU,500,B.vM,600,B.h0,700,B.iJ,800,B.cV,850,B.oT,900,B.vt],t.pl) +B.eq=new A.qk(B.aeP,4288585374) +B.a1N=new A.ei(B.a1m,48,B.eq,null,null) +B.ja=new A.ei(B.xI,null,null,null,null) +B.xH=new A.db(57689,"MaterialIcons",null,!1) +B.UB=new A.A(4278241363) +B.a1O=new A.ei(B.xH,null,B.UB,null,null) +B.WC=new A.A(4293457385) +B.Wh=new A.A(4291356361) +B.VZ=new A.A(4289058471) +B.VE=new A.A(4286695300) +B.Vq=new A.A(4284922730) +B.Vi=new A.A(4283215696) +B.Vb=new A.A(4282622023) +B.V3=new A.A(4281896508) +B.UY=new A.A(4281236786) +B.UM=new A.A(4279983648) +B.agu=new A.cR([50,B.WC,100,B.Wh,200,B.VZ,300,B.VE,400,B.Vq,500,B.Vi,600,B.Vb,700,B.V3,800,B.UY,900,B.UM],t.pl) +B.dU=new A.qk(B.agu,4283215696) +B.a1P=new A.ei(B.xH,null,B.dU,null,null) +B.a1Q=new A.ei(B.lC,null,B.dU,null,null) +B.a1R=new A.JU(null) +B.a1S=new A.q7(null,null,null,null,null,null) +B.a1X=new A.aCu(0,"HtmlImage") +B.a1Y=new A.BD(0,"repeat") +B.a1Z=new A.BD(1,"repeatX") +B.a2_=new A.BD(2,"repeatY") +B.dj=new A.BD(3,"noRepeat") +B.a20=new A.it("assets/images/deviceNoResponse.webp",128,128,B.M,null) +B.a22=new A.it("assets/images/defaultEmpty.png",180,180,B.M,null) +B.a21=new A.it("assets/images/defaultEmpty.png",200,200,B.M,null) +B.xS=new A.it("assets/images/deviceAuthorizing.png",128,128,B.M,null) +B.a24=new A.it("assets/svgs/cloud.svg",24,24,B.M,null) +B.a27=new A.it("",100,100,B.M,null) +B.a2a=new A.fo("assets/svgs/device/instructions.svg",20,20,B.M,null,null) +B.a2b=new A.it("assets/svgs/iconEdit.svg",18,18,B.M,null) +B.a2d=new A.it("assets/images/expectation.webp",400,300,B.M,null) +B.a2e=new A.fo("assets/images/printtaskDefault.png",null,null,B.M,null,null) +B.a2g=new A.fo("assets/images/logo.png",26,26,B.M,null,null) +B.a2f=new A.it("assets/images/deviceAuthorized.png",128,128,B.M,null) +B.pP=new A.fo("assets/svgs/device/keyboardArrowDropDown.svg",null,null,B.M,null,null) +B.a2i=new A.fo("assets/images/defaultEmpty.png",null,null,B.M,null,null) +B.xT=new A.fo("assets/images/defaultEmpty.png",100,100,B.M,null,null) +B.a2j=new A.fo("assets/svgs/device/play.svg",32,32,B.M,null,null) +B.a2k=new A.fo("assets/svgs/device/stop.svg",32,32,B.M,null,null) +B.a2l=new A.it("assets/images/deviceRejected.png",128,128,B.M,null) +B.a2m=new A.fo("assets/svgs/device/pause.svg",32,32,B.M,null,null) +B.a2n=new A.fo("assets/svgs/device/videoPlay.svg",100,100,B.M,null,null) +B.a2o=new A.fo("assets/svgs/cloud.svg",24,24,B.M,null,null) +B.a2p=new A.fo("assets/svgs/device/addDevice.svg",16,16,B.M,null,null) +B.be=A.a(s([]),t.oU) +B.a2q=new A.q9("\ufffc",null,null,!0,!0,B.be) +B.a2r=new A.BH(null,!1,null,null,null,null) +B.aBm=new A.xe(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,!0,null,null,null) +B.eE=new A.ahv(B.x) +B.a2s=new A.xe(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,!0,B.Z,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,B.eE,!0,null,null,null) +B.a2t=new A.xe(null,null,null,null,null,null,null,null,null,null,"\u641c\u7d22\u5185\u5bb9...",null,null,null,null,null,null,null,null,null,null,!0,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,B.eE,!0,null,null,null) +B.ed=new A.xg(0,"next") +B.xV=new A.xg(1,"resolve") +B.xW=new A.xg(2,"resolveCallFollowing") +B.a2u=new A.xg(3,"reject") +B.xX=new A.xg(4,"rejectCallFollowing") +B.a2w=new A.eF(0.4,1,B.X) +B.a2x=new A.eF(0.0825,0.2075,B.X) +B.a2z=new A.eF(0,0.5,B.aQ) +B.a2y=new A.eF(0.5,1,B.aQ) +B.Yj=new A.eq(0.4,0,1,1) +B.a2A=new A.eF(0.185,0.6016666666666667,B.Yj) +B.Yg=new A.eq(0,0,0.65,1) +B.a2B=new A.eF(0.5555555555555556,0.8705555555555555,B.Yg) +B.Ya=new A.eq(0.1,0,0.45,1) +B.a2C=new A.eF(0.7038888888888889,1,B.Ya) +B.Ye=new A.eq(0.2,0,0.8,1) +B.a2D=new A.eF(0,0.4166666666666667,B.Ye) +B.xY=new A.eF(0.5,1,B.bk) +B.Yf=new A.eq(0.6,0.04,0.98,0.335) +B.a2E=new A.eF(0.4,0.6,B.Yf) +B.a2H=new A.eF(0,0.1,B.X) +B.xZ=new A.eF(0,0.25,B.X) +B.a2I=new A.eF(0,0.6666666666666666,B.X) +B.y1=new A.eF(0.1,0.33,B.X) +B.a2F=new A.eF(0.125,0.25,B.X) +B.a2G=new A.eF(0.6,1,B.X) +B.y_=new A.eF(0.75,1,B.X) +B.a2J=new A.eF(0.2075,0.4175,B.X) +B.a2K=new A.eF(0.72,1,B.aQ) +B.pQ=new A.a1j(null) +B.a2N=new A.a1k(null,null) +B.a2Q=new A.a1m(0,"rawKeyData") +B.a2R=new A.a1m(1,"keyDataThenRawKeyData") +B.dk=new A.Kj(0,"down") +B.pR=new A.aD6(0,"keyboard") +B.a2S=new A.k9(B.F,B.dk,0,0,null,!1) +B.pS=new A.oq(0,"handled") +B.jb=new A.oq(1,"ignored") +B.y2=new A.oq(2,"skipRemainingHandlers") +B.cy=new A.Kj(1,"up") +B.a2T=new A.Kj(2,"repeat") +B.mL=new A.x(4294967564) +B.a2U=new A.BO(B.mL,1,"scrollLock") +B.mK=new A.x(4294967562) +B.pT=new A.BO(B.mK,0,"numLock") +B.js=new A.x(4294967556) +B.a2V=new A.BO(B.js,2,"capsLock") +B.hp=new A.xn(0,"any") +B.dP=new A.xn(3,"all") +B.eY=new A.Kl(0,"ariaLabel") +B.lF=new A.Kl(1,"domText") +B.pU=new A.Kl(2,"sizedSpan") +B.pV=new A.xo(0,"notConnected") +B.y3=new A.xo(1,"modeNotAvailable") +B.lG=new A.xo(2,"authorizing") +B.hq=new A.xo(3,"notAuthorized") +B.lH=new A.xo(4,"authorized") +B.a2W=new A.a1s(!1,255) +B.a2X=new A.a1t(255) +B.a2Y=new A.a1D(2,"logout") +B.a2Z=new A.a1D(3,"deviceRefresh") +B.dQ=new A.qf(0,"debug") +B.y4=new A.qf(1,"info") +B.jc=new A.qf(2,"warning") +B.a30=new A.qe(0,0,"all") +B.a31=new A.qe(1e4,10,"off") +B.aj=new A.qe(2000,3,"debug") +B.y5=new A.qe(3000,4,"info") +B.lI=new A.qe(4000,5,"warning") +B.eZ=new A.qe(5000,6,"error") +B.a32=new A.qe(9999,9,"nothing") +B.f_=new A.tT(0,"opportunity") +B.a_=new A.tT(1,"prohibited") +B.f0=new A.tT(2,"mandatory") +B.ee=new A.tT(3,"endOfText") +B.pW=new A.d_(0,"CM") +B.lJ=new A.d_(1,"BA") +B.f1=new A.d_(10,"PO") +B.jd=new A.d_(11,"OP") +B.je=new A.d_(12,"CP") +B.lK=new A.d_(13,"IS") +B.jf=new A.d_(14,"HY") +B.pX=new A.d_(15,"SY") +B.ef=new A.d_(16,"NU") +B.pY=new A.d_(17,"CL") +B.pZ=new A.d_(18,"GL") +B.y6=new A.d_(19,"BB") +B.jg=new A.d_(2,"LF") +B.cz=new A.d_(20,"HL") +B.lL=new A.d_(21,"JL") +B.jh=new A.d_(22,"JV") +B.ji=new A.d_(23,"JT") +B.q_=new A.d_(24,"NS") +B.q0=new A.d_(25,"ZW") +B.q1=new A.d_(26,"ZWJ") +B.q2=new A.d_(27,"B2") +B.y7=new A.d_(28,"IN") +B.q3=new A.d_(29,"WJ") +B.lM=new A.d_(3,"BK") +B.q4=new A.d_(30,"ID") +B.lN=new A.d_(31,"EB") +B.jj=new A.d_(32,"H2") +B.jk=new A.d_(33,"H3") +B.q5=new A.d_(34,"CB") +B.lO=new A.d_(35,"RI") +B.lP=new A.d_(36,"EM") +B.lQ=new A.d_(4,"CR") +B.hr=new A.d_(5,"SP") +B.y8=new A.d_(6,"EX") +B.q6=new A.d_(7,"QU") +B.cA=new A.d_(8,"AL") +B.lR=new A.d_(9,"PR") +B.lS=new A.a1L(B.SK,A.ar("a1L")) +B.lT=new A.a1M(4,"multi") +B.a33=new A.a1M(5,"multiCompatible") +B.aBn=new A.aEZ(2,"platform") +B.a34=new A.BW(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.y9=new A.xt(0,"threeLine") +B.a35=new A.xt(1,"titleHeight") +B.a36=new A.xt(2,"top") +B.ya=new A.xt(3,"center") +B.a37=new A.xt(4,"bottom") +B.OL=new A.oS(2,"routeClose_nonAnimation") +B.ON=new A.oS(6,"continueLoading_nonAnimation") +B.a3b=A.a(s([B.OL,B.ON]),t.O6) +B.a3i=A.a(s(["1. \u0161tvr\u0165rok","2. \u0161tvr\u0165rok","3. \u0161tvr\u0165rok","4. \u0161tvr\u0165rok"]),t.s) +B.a38=A.a(s(["1\u129b\u12cd \u1229\u1265","2\u129b\u12cd \u1229\u1265","3\u129b\u12cd \u1229\u1265","4\u129b\u12cd \u1229\u1265"]),t.s) +B.yh=A.a(s(["EEEE d. MMMM y","d. MMMM y","d. MMM y","dd.MM.y"]),t.s) +B.a3a=A.a(s(["EEEE, d MMMM, y","d MMMM, y","d MMM, y","dd/MM/y"]),t.s) +B.a3d=A.a(s(["H.mm.ss zzzz","H.mm.ss z","H.mm.ss","H.mm"]),t.s) +B.a39=A.a(s(["prvi kvartal","drugi kvartal","tre\u0107i kvartal","\u010detvrti kvartal"]),t.s) +B.a3e=A.a(s(["{1} \u0915\u094b {0}","{1} \u0915\u094b {0}","{1}, {0}","{1}, {0}"]),t.s) +B.a3f=A.a(s(["\u043f\u0440\u0432\u043e \u0442\u0440\u043e\u043c\u0435\u0441\u0435\u0447\u0458\u0435","\u0432\u0442\u043e\u0440\u043e \u0442\u0440\u043e\u043c\u0435\u0441\u0435\u0447\u0458\u0435","\u0442\u0440\u0435\u0442\u043e \u0442\u0440\u043e\u043c\u0435\u0441\u0435\u0447\u0458\u0435","\u0447\u0435\u0442\u0432\u0440\u0442\u043e \u0442\u0440\u043e\u043c\u0435\u0441\u0435\u0447\u0458\u0435"]),t.s) +B.yb=A.a(s(["\u09a4\u09cd\u09b0\u09c8\u09ae\u09be\u09b8\u09bf\u0995","\u09a6\u09cd\u09ac\u09bf\u09a4\u09c0\u09af\u09bc \u09a4\u09cd\u09b0\u09c8\u09ae\u09be\u09b8\u09bf\u0995","\u09a4\u09c3\u09a4\u09c0\u09af\u09bc \u09a4\u09cd\u09b0\u09c8\u09ae\u09be\u09b8\u09bf\u0995","\u099a\u09a4\u09c1\u09b0\u09cd\u09a5 \u09a4\u09cd\u09b0\u09c8\u09ae\u09be\u09b8\u09bf\u0995"]),t.s) +B.a3h=A.a(s(["\u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a401","\u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a402","\u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a403","\u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a404"]),t.s) +B.yd=A.a(s(["CN","T2","T3","T4","T5","T6","T7"]),t.s) +B.yf=A.a(s(["S","M","T","K","T","P","L"]),t.s) +B.yc=A.a(s(["\u039a","\u0394","\u03a4","\u03a4","\u03a0","\u03a0","\u03a3"]),t.s) +B.yg=A.a(s(["\uc77c\uc694\uc77c","\uc6d4\uc694\uc77c","\ud654\uc694\uc77c","\uc218\uc694\uc77c","\ubaa9\uc694\uc77c","\uae08\uc694\uc77c","\ud1a0\uc694\uc77c"]),t.s) +B.ye=A.a(s(["Jan","Feb","Mas","Eph","Mey","Jun","Jul","Aga","Sep","Okt","Nov","Dis"]),t.s) +B.a3c=A.a(s([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),t.t) +B.q7=A.a(s(["{1} 'kl'. {0}","{1} 'kl'. {0}","{1}, {0}","{1}, {0}"]),t.s) +B.a3g=A.a(s(["Krisztus el\u0151tt","id\u0151sz\xe1m\xedt\xe1sunk szerint"]),t.s) +B.lU=A.a(s(["Linggo","Lunes","Martes","Miyerkules","Huwebes","Biyernes","Sabado"]),t.s) +B.a3j=A.a(s(["y '\u043e\u043d\u044b' MMMM'\u044b\u043d' d, EEEE '\u0433\u0430\u0440\u0430\u0433'","y '\u043e\u043d\u044b' MMMM'\u044b\u043d' d","y '\u043e\u043d\u044b' MMM'\u044b\u043d' d","y.MM.dd"]),t.s) +B.a3k=A.a(s(["\u09aa\u09c2\u09f0\u09cd\u09ac\u09be\u09b9\u09cd\u09a8","\u0985\u09aa\u09f0\u09be\u09b9\u09cd\u09a8"]),t.s) +B.a3m=A.a(s(["enne Kristust","p\xe4rast Kristust"]),t.s) +B.a3o=A.a(s(["Qu\xfd 1","Qu\xfd 2","Qu\xfd 3","Qu\xfd 4"]),t.s) +B.a3p=A.a(s([0,0]),t.t) +B.a3q=A.a(s([0,1]),t.n) +B.yi=A.a(s(["S","P","O","T","C","P","S"]),t.s) +B.a3r=A.a(s(["dop.","pop."]),t.s) +B.a3s=A.a(s([110,117,108,108]),t.t) +B.a3t=A.a(s([192,193,194]),t.t) +B.a3u=A.a(s(["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","wrze\u015bnia","pa\u017adziernika","listopada","grudnia"]),t.s) +B.a3v=A.a(s(["\uae30\uc6d0\uc804","\uc11c\uae30"]),t.s) +B.a3z=A.a(s(["1ste kwartaal","2de kwartaal","3de kwartaal","4de kwartaal"]),t.s) +B.a3A=A.a(s(["I k.","II k.","III k.","IV k."]),t.s) +B.yj=A.a(s(["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember"]),t.s) +B.yk=A.a(s([200,202]),t.t) +B.yl=A.a(s(["O","\u015e","M","N","M","H","T","A","E","E","K","A"]),t.s) +B.eg=A.a(s(["ene","feb","mar","abr","may","jun","jul","ago","sept","oct","nov","dic"]),t.s) +B.a3B=A.a(s([239,191,189]),t.t) +B.a3F=A.a(s(["1. \u043a\u0432.","2. \u043a\u0432.","3. \u043a\u0432.","4. \u043a\u0432."]),t.s) +B.a3C=A.a(s(["Suku pertama","Suku Ke-2","Suku Ke-3","Suku Ke-4"]),t.s) +B.a3E=A.a(s(["h:mm:ss a, zzzz","h:mm:ss a, z","h:mm:ss a","h:mm a"]),t.s) +B.q8=A.a(s(["\u7b2c1\u5b63","\u7b2c2\u5b63","\u7b2c3\u5b63","\u7b2c4\u5b63"]),t.s) +B.a3D=A.a(s(["janu\xe1r","febru\xe1r","marec","apr\xedl","m\xe1j","j\xfan","j\xfal","august","september","okt\xf3ber","november","december"]),t.s) +B.ym=A.a(s(["\u0399","\u03a6","\u039c","\u0391","\u039c","\u0399","\u0399","\u0391","\u03a3","\u039f","\u039d","\u0394"]),t.s) +B.a3G=A.a(s(["\u049a\u0430\u04a3\u0442\u0430\u0440","\u0410\u049b\u043f\u0430\u043d","\u041d\u0430\u0443\u0440\u044b\u0437","\u0421\u04d9\u0443\u0456\u0440","\u041c\u0430\u043c\u044b\u0440","\u041c\u0430\u0443\u0441\u044b\u043c","\u0428\u0456\u043b\u0434\u0435","\u0422\u0430\u043c\u044b\u0437","\u049a\u044b\u0440\u043a\u04af\u0439\u0435\u043a","\u049a\u0430\u0437\u0430\u043d","\u049a\u0430\u0440\u0430\u0448\u0430","\u0416\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d"]),t.s) +B.a3H=A.a(s(["\u043f\u0440\u0435\u0442\u043f\u043b\u0430\u0434\u043d\u0435","\u043f\u043e\u043f\u043b\u0430\u0434\u043d\u0435"]),t.s) +B.yn=A.a(s(["Oca","\u015eub","Mar","Nis","May","Haz","Tem","A\u011fu","Eyl","Eki","Kas","Ara"]),t.s) +B.yo=A.a(s(["P\xfchap\xe4ev","Esmasp\xe4ev","Teisip\xe4ev","Kolmap\xe4ev","Neljap\xe4ev","Reede","Laup\xe4ev"]),t.s) +B.yp=A.a(s(["\u0a10\u0a24\u0a35\u0a3e\u0a30","\u0a38\u0a4b\u0a2e\u0a35\u0a3e\u0a30","\u0a2e\u0a70\u0a17\u0a32\u0a35\u0a3e\u0a30","\u0a2c\u0a41\u0a71\u0a27\u0a35\u0a3e\u0a30","\u0a35\u0a40\u0a30\u0a35\u0a3e\u0a30","\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30\u0a35\u0a3e\u0a30","\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30\u0a35\u0a3e\u0a30"]),t.s) +B.a3I=A.a(s(["y\u5e74M\u6708d\u65e5EEEE","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5","y/M/d"]),t.s) +B.yq=A.a(s(["\u0a1c\u0a28","\u0a2b\u0a3c\u0a30","\u0a2e\u0a3e\u0a30\u0a1a","\u0a05\u0a2a\u0a4d\u0a30\u0a48","\u0a2e\u0a08","\u0a1c\u0a42\u0a28","\u0a1c\u0a41\u0a32\u0a3e","\u0a05\u0a17","\u0a38\u0a24\u0a70","\u0a05\u0a15\u0a24\u0a42","\u0a28\u0a35\u0a70","\u0a26\u0a38\u0a70"]),t.s) +B.a3J=A.a(s(["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"]),t.s) +B.a3K=A.a(s(["domingo","luns","martes","m\xe9rcores","xoves","venres","s\xe1bado"]),t.s) +B.yr=A.a(s(["\u12a5\u1211\u12f5","\u1230\u129e","\u121b\u12ad\u1230","\u1228\u1261\u12d5","\u1210\u1219\u1235","\u12d3\u122d\u1265","\u1245\u12f3\u121c"]),t.s) +B.a3L=A.a(s(["\u0441\u0456\u0447\u043d\u044f","\u043b\u044e\u0442\u043e\u0433\u043e","\u0431\u0435\u0440\u0435\u0437\u043d\u044f","\u043a\u0432\u0456\u0442\u043d\u044f","\u0442\u0440\u0430\u0432\u043d\u044f","\u0447\u0435\u0440\u0432\u043d\u044f","\u043b\u0438\u043f\u043d\u044f","\u0441\u0435\u0440\u043f\u043d\u044f","\u0432\u0435\u0440\u0435\u0441\u043d\u044f","\u0436\u043e\u0432\u0442\u043d\u044f","\u043b\u0438\u0441\u0442\u043e\u043f\u0430\u0434\u0430","\u0433\u0440\u0443\u0434\u043d\u044f"]),t.s) +B.a3M=A.a(s(["J","F","M","E","M","J","J","A","S","O","N","D"]),t.s) +B.ys=A.a(s(["\u053f","\u0535","\u0535","\u0549","\u0540","\u0548","\u0547"]),t.s) +B.a3N=A.a(s(["\u0b95\u0bbf.\u0bae\u0bc1.","\u0b95\u0bbf.\u0baa\u0bbf."]),t.s) +B.a3O=A.a(s(["pred Kr.","po Kr."]),t.s) +B.a3Q=A.a(s(["\u05dc\u05e4\u05e0\u05d9 \u05d4\u05e1\u05e4\u05d9\u05e8\u05d4","\u05dc\u05e1\u05e4\u05d9\u05e8\u05d4"]),t.s) +B.a3R=A.a(s(["\u1798\u17bb\u1793\u200b\u1782\u17d2\u179a\u17b7\u179f\u17d2\u178f\u179f\u1780\u179a\u17b6\u1787","\u1782\u17d2\u179a\u17b7\u179f\u17d2\u178f\u179f\u1780\u179a\u17b6\u1787"]),t.s) +B.yv=A.a(s(["niedz.","pon.","wt.","\u015br.","czw.","pt.","sob."]),t.s) +B.yu=A.a(s(["\u0906","\u0938\u094b","\u092e","\u092c\u0941","\u092c\u093f","\u0936\u0941","\u0936"]),t.s) +B.yt=A.a(s(["\u09b0","\u09b8\u09cb","\u09ae","\u09ac\u09c1","\u09ac\u09c3","\u09b6\u09c1","\u09b6"]),t.s) +B.a3P=A.a(s([0,0,32722,12287,65534,34815,65534,18431]),t.t) +B.yw=A.a(s(["ika-1 quarter","ika-2 quarter","ika-3 quarter","ika-4 na quarter"]),t.s) +B.lV=A.a(s(["D","S","T","Q","Q","S","S"]),t.s) +B.yx=A.a(s([304]),t.t) +B.a3S=A.a(s(["dom.","luns","mar.","m\xe9r.","xov.","ven.","s\xe1b."]),t.s) +B.yy=A.a(s(["7","1","2","3","4","5","6"]),t.s) +B.a3T=A.a(s(["EEEE, d \u05d1MMMM y","d \u05d1MMMM y","d \u05d1MMM y","d.M.y"]),t.s) +B.a3U=A.a(s(["pr. Kr.","po. Kr."]),t.s) +B.yz=A.a(s(["Yak","Dush","Sesh","Chor","Pay","Jum","Shan"]),t.s) +B.yA=A.a(s(["\u044f","\u0444","\u043c","\u0430","\u043c","\u044e","\u044e","\u0430","\u0441","\u043e","\u043d","\u0434"]),t.s) +B.yB=A.a(s(["J","F","M","A","M","J","J","O","S","O","N","D"]),t.s) +B.a3V=A.a(s(["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440.","\u043c\u0430\u0439","\u0438\u044e\u043d\u044c","\u0438\u044e\u043b\u044c","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."]),t.s) +B.Sx=new A.pu(6e5,"dialog.business_operation.no_permission",B.b0) +B.a3W=A.a(s([B.Sx]),A.ar("E")) +B.yC=A.a(s(["e diel","e h\xebn\xeb","e mart\xeb","e m\xebrkur\xeb","e enjte","e premte","e shtun\xeb"]),t.s) +B.a3X=A.a(s([3,4]),t.t) +B.yD=A.a(s(["\u0ab0","\u0ab8\u0acb","\u0aae\u0a82","\u0aac\u0ac1","\u0a97\u0ac1","\u0ab6\u0ac1","\u0ab6"]),t.s) +B.a3Z=A.a(s(["{0} 'do' {1}","{0} 'do' {1}","{0}, {1}","{0}, {1}"]),t.s) +B.a40=A.a(s(["Die","H\xebn","Mar","M\xebr","Enj","Pre","Sht"]),t.s) +B.lW=A.a(s([0,0,65490,45055,65535,34815,65534,18431]),t.t) +B.a4h=A.a(s(["{1} {0}\u0c15\u0c3f","{1} {0}\u0c15\u0c3f","{1} {0}","{1} {0}"]),t.s) +B.a4g=A.a(s(["sausio","vasario","kovo","baland\u017eio","gegu\u017e\u0117s","bir\u017eelio","liepos","rugpj\u016b\u010dio","rugs\u0117jo","spalio","lapkri\u010dio","gruod\u017eio"]),t.s) +B.k6=new A.r3(0,"left") +B.nB=new A.r3(1,"right") +B.bt=new A.r3(2,"center") +B.k7=new A.r3(3,"justify") +B.bn=new A.r3(4,"start") +B.nC=new A.r3(5,"end") +B.a4i=A.a(s([B.k6,B.nB,B.bt,B.k7,B.bn,B.nC]),A.ar("E")) +B.a4l=A.a(s(["eram\u0131zdan \u0259vv\u0259l","yeni era"]),t.s) +B.a4m=A.a(s(["\u043f\u0440.\u0425\u0440.","\u0441\u043b.\u0425\u0440."]),t.s) +B.a4n=A.a(s(["\u0644\u0647 \u0645\u06cc\u0644\u0627\u062f \u0685\u062e\u0647 \u0648\u0693\u0627\u0646\u062f\u06d0","\u0644\u0647 \u0645\u06cc\u0644\u0627\u062f \u0685\u062e\u0647 \u0648\u0631\u0648\u0633\u062a\u0647"]),t.s) +B.yF=A.a(s(["sun.","m\xe1n.","\xferi.","mi\xf0.","fim.","f\xf6s.","lau."]),t.s) +B.yE=A.a(s(["vas\xe1rnap","h\xe9tf\u0151","kedd","szerda","cs\xfct\xf6rt\xf6k","p\xe9ntek","szombat"]),t.s) +B.yG=A.a(s(["\u0906\u0907\u0924","\u0938\u094b\u092e","\u092e\u0919\u094d\u0917\u0932","\u092c\u0941\u0927","\u092c\u093f\u0939\u093f","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"]),t.s) +B.yH=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","dd/MM/y"]),t.s) +B.a4s=A.a(s(["s\xf8n","man","tir","ons","tor","fre","l\xf8r"]),t.s) +B.a4r=A.a(s([0,0,32754,11263,65534,34815,65534,18431]),t.t) +B.yI=A.a(s(["janu\xe1r","febru\xe1r","m\xe1rcius","\xe1prilis","m\xe1jus","j\xfanius","j\xfalius","augusztus","szeptember","okt\xf3ber","november","december"]),t.s) +B.a4t=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","dd-MM-y"]),t.s) +B.yJ=A.a(s(["\u0b9e\u0bbe","\u0ba4\u0bbf","\u0b9a\u0bc6","\u0baa\u0bc1","\u0bb5\u0bbf","\u0bb5\u0bc6","\u0b9a"]),t.s) +B.yK=A.a(s(["\u0e2d\u0e32","\u0e08","\u0e2d","\u0e1e","\u0e1e\u0e24","\u0e28","\u0e2a"]),t.s) +B.azT=new A.rm(0,0) +B.azW=new A.rm(1,0.05) +B.azV=new A.rm(3,0.08) +B.azX=new A.rm(6,0.11) +B.azU=new A.rm(8,0.12) +B.azY=new A.rm(12,0.14) +B.yL=A.a(s([B.azT,B.azW,B.azV,B.azX,B.azU,B.azY]),A.ar("E")) +B.a4u=A.a(s(["ap.","ip."]),t.s) +B.a4v=A.a(s(["vm.","nm."]),t.s) +B.a4w=A.a(s(["\u1798\u17bb\u1793 \u1782.\u179f.","\u1782.\u179f."]),t.s) +B.a4x=A.a(s(["Sebelum Masehi","Masehi"]),t.s) +B.a4y=A.a(s(["\u0b16\u0b4d\u0b30\u0b40\u0b37\u0b4d\u0b1f\u0b2a\u0b42\u0b30\u0b4d\u0b2c","\u0b16\u0b4d\u0b30\u0b40\u0b37\u0b4d\u0b1f\u0b3e\u0b2c\u0b4d\u0b26"]),t.s) +B.yM=A.a(s(["jan","feb","mar","apr","m\xe1j","j\xfan","j\xfal","aug","sep","okt","nov","dec"]),t.s) +B.lX=A.a(s(["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"]),t.s) +B.aw6=new A.iZ(601e3,"dialog.user_service.not_found",B.b0) +B.aw2=new A.iZ(601001,"dialog.user_service.frozen",B.b0) +B.aw1=new A.iZ(601002,"dialog.user_service.update_failed",B.b0) +B.aw5=new A.iZ(601003,"dialog.user_service.image_upload_failed",B.b0) +B.aw7=new A.iZ(601004,"dialog.user_service.file_upload_failed",B.b0) +B.aw4=new A.iZ(601005,"dialog.user_service.certificate_expired",B.b0) +B.aw3=new A.iZ(601006,"dialog.user_service.email_not_found",B.b0) +B.aw0=new A.iZ(601007,"dialog.user_service.phone_not_found",B.b0) +B.a4z=A.a(s([B.aw6,B.aw2,B.aw1,B.aw5,B.aw7,B.aw4,B.aw3,B.aw0]),A.ar("E")) +B.a4A=A.a(s(["priek\u0161pusdien\u0101","p\u0113cpusdien\u0101"]),t.s) +B.a4C=A.a(s([4,4]),t.t) +B.yN=A.a(s([4,5]),t.t) +B.yO=A.a(s(["\u0458\u0430\u043d\u0443\u0430\u0440","\u0444\u0435\u0431\u0440\u0443\u0430\u0440","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440\u0438\u043b","\u043c\u0430\u0458","\u0458\u0443\u043d","\u0458\u0443\u043b","\u0430\u0432\u0433\u0443\u0441\u0442","\u0441\u0435\u043f\u0442\u0435\u043c\u0431\u0430\u0440","\u043e\u043a\u0442\u043e\u0431\u0430\u0440","\u043d\u043e\u0432\u0435\u043c\u0431\u0430\u0440","\u0434\u0435\u0446\u0435\u043c\u0431\u0430\u0440"]),t.s) +B.a4D=A.a(s(["EEEE, d. MMMM y","d. MMMM y","d. MMM y","d. MM. yy"]),t.s) +B.a4E=A.a(s(["yan","fev","mar","apr","may","iyn","iyl","avg","sen","okt","noy","dek"]),t.s) +B.yP=A.a(s(["\u1303\u1295\u12e9\u12c8\u122a","\u134c\u1265\u1229\u12c8\u122a","\u121b\u122d\u127d","\u12a4\u1355\u122a\u120d","\u121c\u12ed","\u1301\u1295","\u1301\u120b\u12ed","\u12a6\u1308\u1235\u1275","\u1234\u1355\u1274\u121d\u1260\u122d","\u12a6\u12ad\u1276\u1260\u122d","\u1296\u126c\u121d\u1260\u122d","\u12f2\u1234\u121d\u1260\u122d"]),t.s) +B.a4F=A.a(s(["\u043d\u044f\u043c","\u0434\u0430\u0432\u0430\u0430","\u043c\u044f\u0433\u043c\u0430\u0440","\u043b\u0445\u0430\u0433\u0432\u0430","\u043f\u04af\u0440\u044d\u0432","\u0431\u0430\u0430\u0441\u0430\u043d","\u0431\u044f\u043c\u0431\u0430"]),t.s) +B.eh=A.a(s(["Lin","Lun","Mar","Miy","Huw","Biy","Sab"]),t.s) +B.a4G=A.a(s(["fyrir Krist","eftir Krist"]),t.s) +B.yQ=A.a(s(["\u0e2d\u0e32.","\u0e08.","\u0e2d.","\u0e1e.","\u0e1e\u0e24.","\u0e28.","\u0e2a."]),t.s) +B.a4J=A.a(s(["\u0399\u03b1\u03bd\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03ac\u03c1\u03b9\u03bf\u03c2","\u039c\u03ac\u03c1\u03c4\u03b9\u03bf\u03c2","\u0391\u03c0\u03c1\u03af\u03bb\u03b9\u03bf\u03c2","\u039c\u03ac\u03b9\u03bf\u03c2","\u0399\u03bf\u03cd\u03bd\u03b9\u03bf\u03c2","\u0399\u03bf\u03cd\u03bb\u03b9\u03bf\u03c2","\u0391\u03cd\u03b3\u03bf\u03c5\u03c3\u03c4\u03bf\u03c2","\u03a3\u03b5\u03c0\u03c4\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2","\u039f\u03ba\u03c4\u03ce\u03b2\u03c1\u03b9\u03bf\u03c2","\u039d\u03bf\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2","\u0394\u03b5\u03ba\u03ad\u03bc\u03b2\u03c1\u03b9\u03bf\u03c2"]),t.s) +B.yR=A.a(s(["\u0e27\u0e31\u0e19\u0e2d\u0e32\u0e17\u0e34\u0e15\u0e22\u0e4c","\u0e27\u0e31\u0e19\u0e08\u0e31\u0e19\u0e17\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e2d\u0e31\u0e07\u0e04\u0e32\u0e23","\u0e27\u0e31\u0e19\u0e1e\u0e38\u0e18","\u0e27\u0e31\u0e19\u0e1e\u0e24\u0e2b\u0e31\u0e2a\u0e1a\u0e14\u0e35","\u0e27\u0e31\u0e19\u0e28\u0e38\u0e01\u0e23\u0e4c","\u0e27\u0e31\u0e19\u0e40\u0e2a\u0e32\u0e23\u0e4c"]),t.s) +B.yS=A.a(s(["\u0a1c","\u0a2b\u0a3c","\u0a2e\u0a3e","\u0a05","\u0a2e","\u0a1c\u0a42","\u0a1c\u0a41","\u0a05","\u0a38","\u0a05","\u0a28","\u0a26"]),t.s) +B.a4Q=A.a(s(["RawSocketEvent.read","RawSocketEvent.write","RawSocketEvent.readClosed","RawSocketEvent.closed"]),t.s) +B.a4R=A.a(s(["\u0d15\u0d4d\u0d30\u0d3f.\u0d2e\u0d41.","\u0d0e\u0d21\u0d3f"]),t.s) +B.z=A.a(s([5,6]),t.t) +B.yT=A.a(s(["Y","D","S","C","P","J","S"]),t.s) +B.a4S=A.a(s(["I \u10d9\u10d5\u10d0\u10e0\u10e2\u10d0\u10da\u10d8","II \u10d9\u10d5\u10d0\u10e0\u10e2\u10d0\u10da\u10d8","III \u10d9\u10d5\u10d0\u10e0\u10e2\u10d0\u10da\u10d8","IV \u10d9\u10d5\u10d0\u10e0\u10e2\u10d0\u10da\u10d8"]),t.s) +B.a4U=A.a(s(["1-\u0447\u0435\u0439\u0440\u0435\u043a","2-\u0447\u0435\u0439\u0440\u0435\u043a","3-\u0447\u0435\u0439\u0440\u0435\u043a","4-\u0447\u0435\u0439\u0440\u0435\u043a"]),t.s) +B.a4V=A.a(s([65533]),t.t) +B.a4W=A.a(s(["1-\u056b\u0576 \u0565\u057c\u0574\u057d.","2-\u0580\u0564 \u0565\u057c\u0574\u057d.","3-\u0580\u0564 \u0565\u057c\u0574\u057d.","4-\u0580\u0564 \u0565\u057c\u0574\u057d."]),t.s) +B.a4X=A.a(s(["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentabr","oktabr","noyabr","dekabr"]),t.s) +B.yU=A.a(s(["\u09b0\u09ac\u09bf","\u09b8\u09cb\u09ae","\u09ae\u0999\u09cd\u0997\u09b2","\u09ac\u09c1\u09a7","\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf","\u09b6\u09c1\u0995\u09cd\u09b0","\u09b6\u09a8\u09bf"]),t.s) +B.a53=A.a(s(["y-'\u0436'., d-MMMM, EEEE","y-'\u0436'., d-MMMM","y-'\u0436'., d-MMM","d/M/yy"]),t.s) +B.a54=A.a(s(["\u1229\u12651","\u1229\u12652","\u1229\u12653","\u1229\u12654"]),t.s) +B.yV=A.a(s(["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"]),t.s) +B.a55=A.a(s(["{0} {1}","{0} {1}","{0}, {1}","{0}, {1}"]),t.s) +B.q9=A.a(s(["HH.mm.ss zzzz","HH.mm.ss z","HH.mm.ss","HH.mm"]),t.s) +B.yW=A.a(s(["\u06cc","\u062f","\u0633","\u0686","\u067e","\u062c","\u0634"]),t.s) +B.yX=A.a(s(["janv.","f\xe9vr.","mars","avr.","mai","juin","juil.","ao\xfbt","sept.","oct.","nov.","d\xe9c."]),t.s) +B.a56=A.a(s(["\u049b\u0430\u04a3\u0442\u0430\u0440","\u0430\u049b\u043f\u0430\u043d","\u043d\u0430\u0443\u0440\u044b\u0437","\u0441\u04d9\u0443\u0456\u0440","\u043c\u0430\u043c\u044b\u0440","\u043c\u0430\u0443\u0441\u044b\u043c","\u0448\u0456\u043b\u0434\u0435","\u0442\u0430\u043c\u044b\u0437","\u049b\u044b\u0440\u043a\u04af\u0439\u0435\u043a","\u049b\u0430\u0437\u0430\u043d","\u049b\u0430\u0440\u0430\u0448\u0430","\u0436\u0435\u043b\u0442\u043e\u049b\u0441\u0430\u043d"]),t.s) +B.a57=A.a(s(["tammi","helmi","maalis","huhti","touko","kes\xe4","hein\xe4","elo","syys","loka","marras","joulu"]),t.s) +B.a58=A.a(s(["urtarrilak","otsailak","martxoak","apirilak","maiatzak","ekainak","uztailak","abuztuak","irailak","urriak","azaroak","abenduak"]),t.s) +B.yY=A.a(s(["\u0906\u0907\u0924\u092c\u093e\u0930","\u0938\u094b\u092e\u092c\u093e\u0930","\u092e\u0919\u094d\u0917\u0932\u092c\u093e\u0930","\u092c\u0941\u0927\u092c\u093e\u0930","\u092c\u093f\u0939\u093f\u092c\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u092c\u093e\u0930","\u0936\u0928\u093f\u092c\u093e\u0930"]),t.s) +B.d1=A.a(s([6,6]),t.t) +B.a59=A.a(s(["K.a.","Kristo ondoren"]),t.s) +B.a5a=A.a(s(["\u09e7\u09ae\u0983 \u09a4\u09bf\u0983","\u09e8\u09af\u09bc\u0983 \u09a4\u09bf\u0983","\u09e9\u09af\u09bc\u0983 \u09a4\u09bf\u0983","\u09ea\u09f0\u09cd\u09a5\u0983 \u09a4\u09bf\u0983"]),t.s) +B.lY=A.a(s(["ned","pon","uto","sri","\u010det","pet","sub"]),t.s) +B.lZ=A.a(s(["\u042f","\u0424","\u041c","\u0410","\u041c","\u0418","\u0418","\u0410","\u0421","\u041e","\u041d","\u0414"]),t.s) +B.a5b=A.a(s(["h:mm:ss\u202fa zzzz","h:mm:ss\u202fa z","h:mm:ss\u202fa","h:mm\u202fa"]),t.s) +B.yZ=A.a(s(["D","L","M","X","J","V","S"]),t.s) +B.a5c=A.a(s(["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kes\xe4kuu","hein\xe4kuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu"]),t.s) +B.z_=A.a(s(["\u0ead\u0eb2","\u0e88","\u0ead","\u0e9e","\u0e9e\u0eab","\u0eaa\u0eb8","\u0eaa"]),t.s) +B.a5d=A.a(s(["pre nove ere","nove ere"]),t.s) +B.z0=A.a(s(["\u1010","\u1010","\u1021","\u1017","\u1000","\u101e","\u1005"]),t.s) +B.a5e=A.a(s(["EEEE, d MMMM y '\u0433'.","d MMMM y '\u0433'.","d MMM y '\u0433'.","dd.MM.y"]),t.s) +B.z1=A.a(s([72,84,84,80]),t.t) +B.a5f=A.a(s(["\u043f\u0440\u0435\u0434 \u043d\u0430\u0448\u0430\u0442\u0430 \u0435\u0440\u0430","\u043e\u0434 \u043d\u0430\u0448\u0430\u0442\u0430 \u0435\u0440\u0430"]),t.s) +B.m_=A.a(s(["Januar","Februar","M\xe4rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"]),t.s) +B.m0=A.a(s(["n","p","u","s","\u010d","p","s"]),t.s) +B.a5g=A.a(s(["1. kvt.","2. kvt.","3. kvt.","4. kvt."]),t.s) +B.a5h=A.a(s(["\u041d\u044f\u043c","\u0414\u0430\u0432\u0430\u0430","\u041c\u044f\u0433\u043c\u0430\u0440","\u041b\u0445\u0430\u0433\u0432\u0430","\u041f\u04af\u0440\u044d\u0432","\u0411\u0430\u0430\u0441\u0430\u043d","\u0411\u044f\u043c\u0431\u0430"]),t.s) +B.a5i=A.a(s(["\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044c","\u043b\u044e\u0442\u044b","\u0441\u0430\u043a\u0430\u0432\u0456\u043a","\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a","\u043c\u0430\u0439","\u0447\u044d\u0440\u0432\u0435\u043d\u044c","\u043b\u0456\u043f\u0435\u043d\u044c","\u0436\u043d\u0456\u0432\u0435\u043d\u044c","\u0432\u0435\u0440\u0430\u0441\u0435\u043d\u044c","\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a","\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434","\u0441\u043d\u0435\u0436\u0430\u043d\u044c"]),t.s) +B.a5j=A.a(s(["\u0d15\u0d4d\u0d30\u0d3f\u0d38\u0d4d\u200c\u0d24\u0d41\u0d35\u0d3f\u0d28\u0d4d \u0d2e\u0d41\u0d2e\u0d4d\u0d2a\u0d4d","\u0d06\u0d28\u0d4d\u0d28\u0d4b \u0d21\u0d4a\u0d2e\u0d3f\u0d28\u0d3f"]),t.s) +B.a5l=A.a(s(["f\xf6re Kristus","efter Kristus"]),t.s) +B.a5m=A.a(s(["dop.","odp."]),t.s) +B.a5n=A.a(s(["file","directory","link","unixDomainSock","pipe","notFound"]),t.s) +B.z2=A.a(s(["\u10d9","\u10dd","\u10e1","\u10dd","\u10ee","\u10de","\u10e8"]),t.s) +B.a5o=A.a(s(["\u0c95\u0ccd\u0cb0\u0cbf.\u0caa\u0cc2","\u0c95\u0ccd\u0cb0\u0cbf.\u0cb6"]),t.s) +B.a5p=A.a(s(["\u0c9c\u0ca8","\u0cab\u0cc6\u0cac\u0ccd\u0cb0","\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd","\u0c8f\u0caa\u0ccd\u0cb0\u0cbf","\u0cae\u0cc7","\u0c9c\u0cc2\u0ca8\u0ccd","\u0c9c\u0cc1\u0cb2\u0cc8","\u0c86\u0c97","\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82","\u0c85\u0c95\u0ccd\u0c9f\u0ccb","\u0ca8\u0cb5\u0cc6\u0c82","\u0ca1\u0cbf\u0cb8\u0cc6\u0c82"]),t.s) +B.m1=A.a(s([!1,!1,!1,!1,!1,!1,!1,!1,!1,!0,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!0,!1,!0,!1,!1,!1,!1,!1,!0,!0,!1,!1,!0,!1,!1,!0,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!0,!0,!0,!0,!0,!0,!0,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!0,!0,!0,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!0,!1,!0,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1,!1]),t.HZ) +B.z3=A.a(s(["\u064a","\u0641","\u0645","\u0623","\u0648","\u0646","\u0644","\u063a","\u0633","\u0643","\u0628","\u062f"]),t.s) +B.a5q=A.a(s(["\u041c\u042d\u04e8","\u041c\u042d"]),t.s) +B.ue=new A.T7(0,"named") +B.Q4=new A.T7(1,"anonymous") +B.a5r=A.a(s([B.ue,B.Q4]),A.ar("E")) +B.m2=A.a(s(["EEEE, d MMMM, y","d MMMM, y","d MMM, y","d/M/yy"]),t.s) +B.z4=A.a(s(["\u0cad\u0cbe\u0ca8\u0cc1\u0cb5\u0cbe\u0cb0","\u0cb8\u0ccb\u0cae\u0cb5\u0cbe\u0cb0","\u0cae\u0c82\u0c97\u0cb3\u0cb5\u0cbe\u0cb0","\u0cac\u0cc1\u0ca7\u0cb5\u0cbe\u0cb0","\u0c97\u0cc1\u0cb0\u0cc1\u0cb5\u0cbe\u0cb0","\u0cb6\u0cc1\u0c95\u0ccd\u0cb0\u0cb5\u0cbe\u0cb0","\u0cb6\u0ca8\u0cbf\u0cb5\u0cbe\u0cb0"]),t.s) +B.z5=A.a(s(["nede\u013ea","pondelok","utorok","streda","\u0161tvrtok","piatok","sobota"]),t.s) +B.a5s=A.a(s(["\u0411\u0456\u0437\u0434\u0456\u04a3 \u0437\u0430\u043c\u0430\u043d\u044b\u043c\u044b\u0437\u0493\u0430 \u0434\u0435\u0439\u0456\u043d","\u0431\u0456\u0437\u0434\u0456\u04a3 \u0437\u0430\u043c\u0430\u043d\u044b\u043c\u044b\u0437"]),t.s) +B.z6=A.a(s(["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"]),t.s) +B.z7=A.a(s(["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"]),t.s) +B.a5v=A.a(s(["\u0399\u03b1\u03bd\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u03a6\u03b5\u03b2\u03c1\u03bf\u03c5\u03b1\u03c1\u03af\u03bf\u03c5","\u039c\u03b1\u03c1\u03c4\u03af\u03bf\u03c5","\u0391\u03c0\u03c1\u03b9\u03bb\u03af\u03bf\u03c5","\u039c\u03b1\u0390\u03bf\u03c5","\u0399\u03bf\u03c5\u03bd\u03af\u03bf\u03c5","\u0399\u03bf\u03c5\u03bb\u03af\u03bf\u03c5","\u0391\u03c5\u03b3\u03bf\u03cd\u03c3\u03c4\u03bf\u03c5","\u03a3\u03b5\u03c0\u03c4\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u039f\u03ba\u03c4\u03c9\u03b2\u03c1\u03af\u03bf\u03c5","\u039d\u03bf\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5","\u0394\u03b5\u03ba\u03b5\u03bc\u03b2\u03c1\u03af\u03bf\u03c5"]),t.s) +B.a5w=A.a(s(["1T","2T","3T","4T"]),t.s) +B.z8=A.a(s(["\u0698","\u0641","\u0645","\u0622","\u0645","\u0698","\u0698","\u0627","\u0633","\u0627","\u0646","\u062f"]),t.s) +B.a5x=A.a(s(["\u0642\u0628\u0644\u200c\u0627\u0632\u0638\u0647\u0631","\u0628\u0639\u062f\u0627\u0632\u0638\u0647\u0631"]),t.s) +B.a5y=A.a(s(["sije\u010danj","velja\u010da","o\u017eujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac"]),t.s) +B.z9=A.a(s(["ian.","feb.","mar.","apr.","mai","iun.","iul.","aug.","sept.","oct.","nov.","dec."]),t.s) +B.za=A.a(s(["\u0ea1\u0eb1\u0e87\u0e81\u0ead\u0e99","\u0e81\u0eb8\u0ea1\u0e9e\u0eb2","\u0ea1\u0eb5\u0e99\u0eb2","\u0ec0\u0ea1\u0eaa\u0eb2","\u0e9e\u0eb6\u0e94\u0eaa\u0eb0\u0e9e\u0eb2","\u0ea1\u0eb4\u0e96\u0eb8\u0e99\u0eb2","\u0e81\u0ecd\u0ea5\u0eb0\u0e81\u0ebb\u0e94","\u0eaa\u0eb4\u0e87\u0eab\u0eb2","\u0e81\u0eb1\u0e99\u0e8d\u0eb2","\u0e95\u0eb8\u0ea5\u0eb2","\u0e9e\u0eb0\u0e88\u0eb4\u0e81","\u0e97\u0eb1\u0e99\u0ea7\u0eb2"]),t.s) +B.zb=A.a(s(["\u0436\u0435\u043a\u0441\u0435\u043d\u0431\u0456","\u0434\u04af\u0439\u0441\u0435\u043d\u0431\u0456","\u0441\u0435\u0439\u0441\u0435\u043d\u0431\u0456","\u0441\u04d9\u0440\u0441\u0435\u043d\u0431\u0456","\u0431\u0435\u0439\u0441\u0435\u043d\u0431\u0456","\u0436\u04b1\u043c\u0430","\u0441\u0435\u043d\u0431\u0456"]),t.s) +B.a5z=A.a(s(["Xaneiro","Febreiro","Marzo","Abril","Maio","Xu\xf1o","Xullo","Agosto","Setembro","Outubro","Novembro","Decembro"]),t.s) +B.zc=A.a(s(["\u0416","\u0414","\u0428","\u0428","\u0411","\u0416","\u0418"]),t.s) +B.zd=A.a(s(["domingo","segunda","ter\xe7a","quarta","quinta","sexta","s\xe1bado"]),t.s) +B.ajT=new A.l3(11e4,"dialog.permission.verification_code_error",B.hf) +B.ajQ=new A.l3(110001,"dialog.permission.login_failed",B.hf) +B.ajR=new A.l3(110002,"dialog.permission.authorization_missing",B.hf) +B.ajU=new A.l3(110003,"dialog.permission.token_expired",B.hf) +B.ajS=new A.l3(110004,"dialog.permission.authentication_failed",B.hf) +B.a5A=A.a(s([B.ajT,B.ajQ,B.ajR,B.ajU,B.ajS]),A.ar("E")) +B.m3=A.a(s(["\u0b1c\u0b3e\u0b28\u0b41\u0b06\u0b30\u0b40","\u0b2b\u0b47\u0b2c\u0b43\u0b06\u0b30\u0b40","\u0b2e\u0b3e\u0b30\u0b4d\u0b1a\u0b4d\u0b1a","\u0b05\u0b2a\u0b4d\u0b30\u0b47\u0b32","\u0b2e\u0b07","\u0b1c\u0b41\u0b28","\u0b1c\u0b41\u0b32\u0b3e\u0b07","\u0b05\u0b17\u0b37\u0b4d\u0b1f","\u0b38\u0b47\u0b2a\u0b4d\u0b1f\u0b47\u0b2e\u0b4d\u0b2c\u0b30","\u0b05\u0b15\u0b4d\u0b1f\u0b4b\u0b2c\u0b30","\u0b28\u0b2d\u0b47\u0b2e\u0b4d\u0b2c\u0b30","\u0b21\u0b3f\u0b38\u0b47\u0b2e\u0b4d\u0b2c\u0b30"]),t.s) +B.a5B=A.a(s(["\u5348\u524d","\u5348\u5f8c"]),t.s) +B.a5C=A.a(s(["y('e')'ko' MMMM'ren' d('a'), EEEE","y('e')'ko' MMMM'ren' d('a')","y('e')'ko' MMM d('a')","yy/M/d"]),t.s) +B.ze=A.a(s(["\u092a\u0939\u093f\u0932\u094b \u0938\u0924\u094d\u0930","\u0926\u094b\u0938\u094d\u0930\u094b \u0938\u0924\u094d\u0930","\u0924\u0947\u0938\u094d\u0930\u094b \u0938\u0924\u094d\u0930","\u091a\u094c\u0925\u094b \u0938\u0924\u094d\u0930"]),t.s) +B.nA=new A.DL(0,"miter") +B.tj=new A.DL(1,"round") +B.aok=new A.DL(2,"bevel") +B.a5D=A.a(s([B.nA,B.tj,B.aok]),A.ar("E

    ")) +B.a5E=A.a(s(["\u0924\u093f1","\u0924\u093f2","\u0924\u093f3","\u0924\u093f4"]),t.s) +B.zf=A.a(s(["Ahd","Isn","Sel","Rab","Kha","Jum","Sab"]),t.s) +B.zg=A.a(s(["\u0b1c\u0b3e","\u0b2b\u0b47","\u0b2e\u0b3e","\u0b05","\u0b2e\u0b07","\u0b1c\u0b41","\u0b1c\u0b41","\u0b05","\u0b38\u0b47","\u0b05","\u0b28","\u0b21\u0b3f"]),t.s) +B.zi=A.a(s(["\u65e5\u66dc\u65e5","\u6708\u66dc\u65e5","\u706b\u66dc\u65e5","\u6c34\u66dc\u65e5","\u6728\u66dc\u65e5","\u91d1\u66dc\u65e5","\u571f\u66dc\u65e5"]),t.s) +B.zh=A.a(s(["J","F","M","\xc1","M","J","J","A","Sz","O","N","D"]),t.s) +B.a5F=A.a(s([3614090360,3905402710,606105819,3250441966,4118548399,1200080426,2821735955,4249261313,1770035416,2336552879,4294925233,2304563134,1804603682,4254626195,2792965006,1236535329,4129170786,3225465664,643717713,3921069994,3593408605,38016083,3634488961,3889429448,568446438,3275163606,4107603335,1163531501,2850285829,4243563512,1735328473,2368359562,4294588738,2272392833,1839030562,4259657740,2763975236,1272893353,4139469664,3200236656,681279174,3936430074,3572445317,76029189,3654602809,3873151461,530742520,3299628645,4096336452,1126891415,2878612391,4237533241,1700485571,2399980690,4293915773,2240044497,1873313359,4264355552,2734768916,1309151649,4149444226,3174756917,718787259,3951481745]),t.t) +B.zj=A.a(s(["\u0644\u0648\u0645\u0693\u06cd \u0631\u0628\u0639\u0647","\u06f2\u0645\u0647 \u0631\u0628\u0639\u0647","\u06f3\u0645\u0647 \u0631\u0628\u0639\u0647","\u06f4\u0645\u0647 \u0631\u0628\u0639\u0647"]),t.s) +B.qa=A.a(s(["\u4e0a\u5348","\u4e0b\u5348"]),t.s) +B.a5G=A.a(s(["EEEE, d. MMMM y.","d. MMMM y.","d. MMM y.","d. M. y."]),t.s) +B.zk=A.a(s(["\u039a\u03c5\u03c1\u03b9\u03b1\u03ba\u03ae","\u0394\u03b5\u03c5\u03c4\u03ad\u03c1\u03b1","\u03a4\u03c1\u03af\u03c4\u03b7","\u03a4\u03b5\u03c4\u03ac\u03c1\u03c4\u03b7","\u03a0\u03ad\u03bc\u03c0\u03c4\u03b7","\u03a0\u03b1\u03c1\u03b1\u03c3\u03ba\u03b5\u03c5\u03ae","\u03a3\u03ac\u03b2\u03b2\u03b1\u03c4\u03bf"]),t.s) +B.ak=A.a(s(["AM","PM"]),t.s) +B.a5H=A.a(s(["EEEE d. MMMM y","d. MMMM y","d. M. y","dd.MM.yy"]),t.s) +B.zl=A.a(s(["\u0c06","\u0c38\u0c4b","\u0c2e","\u0c2c\u0c41","\u0c17\u0c41","\u0c36\u0c41","\u0c36"]),t.s) +B.a5I=A.a(s(["EEEE \u062f y \u062f MMMM d","\u062f y \u062f MMMM d","y MMM d","y/M/d"]),t.s) +B.Qe=new A.GH(null) +B.a5J=A.a(s([B.Qe]),t.p) +B.zm=A.a(s(["\u0c06\u0c26\u0c3f","\u0c38\u0c4b\u0c2e","\u0c2e\u0c02\u0c17\u0c33","\u0c2c\u0c41\u0c27","\u0c17\u0c41\u0c30\u0c41","\u0c36\u0c41\u0c15\u0c4d\u0c30","\u0c36\u0c28\u0c3f"]),t.s) +B.zn=A.a(s(["\u0908\u0938\u093e \u092a\u0942\u0930\u094d\u0935","\u0938\u0928\u094d"]),t.s) +B.a0Y=new A.is(200,"dialog.http.success",B.dh) +B.a13=new A.is(400,"dialog.http.bad_request",B.dh) +B.a0Z=new A.is(401,"dialog.http.unauthorized",B.dh) +B.a12=new A.is(403,"dialog.http.forbidden",B.dh) +B.a14=new A.is(404,"dialog.http.not_found",B.dh) +B.a11=new A.is(429,"dialog.http.too_many_requests",B.dh) +B.a10=new A.is(500,"dialog.http.internal_server_error",B.dh) +B.a1_=new A.is(503,"dialog.http.service_unavailable",B.dh) +B.a5K=A.a(s([B.a0Y,B.a13,B.a0Z,B.a12,B.a14,B.a11,B.a10,B.a1_]),A.ar("E")) +B.ei=A.a(s(["S","M","T","O","T","F","L"]),t.s) +B.a5L=A.a(s(["1\ubd84\uae30","2\ubd84\uae30","3\ubd84\uae30","4\ubd84\uae30"]),t.s) +B.zo=A.a(s(["\u056f\u056b\u0580","\u0565\u0580\u056f","\u0565\u0580\u0584","\u0579\u0580\u0584","\u0570\u0576\u0563","\u0578\u0582\u0580","\u0577\u0562\u0569"]),t.s) +B.a5N=A.a(s(["pirms m\u016bsu \u0113ras","m\u016bsu \u0113r\u0101"]),t.s) +B.a5O=A.a(s([B.om,B.on]),A.ar("E

    ")) +B.a5P=A.a(s(["K.a.","K.o."]),t.s) +B.zp=A.a(s(["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des"]),t.s) +B.a5Q=A.a(s(["EEEE, d MMMM y '\u0433'.","d MMMM y '\u0433'.","d.MM.y '\u0433'.","d.MM.yy '\u0433'."]),t.s) +B.a5R=A.a(s(["\u0c95\u0ccd\u0cb0\u0cbf\u0cb8\u0ccd\u0ca4 \u0caa\u0cc2\u0cb0\u0ccd\u0cb5","\u0c95\u0ccd\u0cb0\u0cbf\u0cb8\u0ccd\u0ca4 \u0cb6\u0c95"]),t.s) +B.zq=A.a(s(["\u0412","\u041f","\u0412","\u0421","\u0427","\u041f","\u0421"]),t.s) +B.XW=new A.A(637534208) +B.es=new A.z(0,3) +B.S2=new A.c6(0,B.a6,B.XW,B.es,8) +B.Uo=new A.A(251658240) +B.S3=new A.c6(0,B.a6,B.Uo,B.es,1) +B.a5S=A.a(s([B.S2,B.S3]),t.F) +B.a5T=A.a(s(["\u1001\u101b\u1005\u103a\u1010\u1031\u102c\u103a \u1019\u1015\u1031\u102b\u103a\u1019\u102e\u1014\u103e\u1005\u103a","\u1001\u101b\u1005\u103a\u1014\u103e\u1005\u103a"]),t.s) +B.zr=A.a(s(["HH:mm:ss (zzzz)","HH:mm:ss (z)","HH:mm:ss","HH:mm"]),t.s) +B.bD=A.a(s(["BC","AD"]),t.s) +B.zs=A.a(s(["{1}, {0}","{1}, {0}","{1} {0}","{1}, {0}"]),t.s) +B.zt=A.a(s(["\u897f\u5143\u524d","\u897f\u5143"]),t.s) +B.a5U=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","y/M/d"]),t.s) +B.a5V=A.a(s(["EEEE\u060c d MMMM\u060c y","d MMMM\u060c y","d MMM\u060c y","d/M/yy"]),t.s) +B.a5W=A.a(s(["pred Kristom","po Kristovi"]),t.s) +B.Sv=new A.Ag(1,"profile") +B.Sw=new A.Ag(2,"debug") +B.a5X=A.a(s([B.Sv,B.Sw]),A.ar("E")) +B.a5Y=A.a(s(["\u0996\u09cd\u09b0\u09bf\u09b8\u09cd\u099f\u09aa\u09c2\u09b0\u09cd\u09ac","\u0996\u09c3\u09b7\u09cd\u099f\u09be\u09ac\u09cd\u09a6"]),t.s) +B.a5Z=A.a(s(["CC","OC"]),t.s) +B.a6_=A.a(s(["Tr\u01b0\u1edbc CN","Sau CN"]),t.s) +B.a60=A.a(s(["tammik.","helmik.","maalisk.","huhtik.","toukok.","kes\xe4k.","hein\xe4k.","elok.","syysk.","lokak.","marrask.","jouluk."]),t.s) +B.a61=A.a(s(["1-\u0448\u044b \u043a\u0432\u0430\u0440\u0442\u0430\u043b","2-\u0433\u0456 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","3-\u0446\u0456 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","4-\u0442\u044b \u043a\u0432\u0430\u0440\u0442\u0430\u043b"]),t.s) +B.zu=A.a(s(["Ionawr","Chwefror","Mawrth","Ebrill","Mai","Mehefin","Gorffennaf","Awst","Medi","Hydref","Tachwedd","Rhagfyr"]),t.s) +B.m4=A.a(s(["\uc77c","\uc6d4","\ud654","\uc218","\ubaa9","\uae08","\ud1a0"]),t.s) +B.a62=A.a(s(["Ion","Chw","Maw","Ebr","Mai","Meh","Gor","Awst","Medi","Hyd","Tach","Rhag"]),t.s) +B.zv=A.a(s(["I","Ch","M","E","M","M","G","A","M","H","T","Rh"]),t.s) +B.a63=A.a(s(["Kabla ya Kristo","Baada ya Kristo"]),t.s) +B.zw=A.a(s(["\u1007\u1014\u103a","\u1016\u1031","\u1019\u1010\u103a","\u1027","\u1019\u1031","\u1007\u103d\u1014\u103a","\u1007\u1030","\u1029","\u1005\u1000\u103a","\u1021\u1031\u102c\u1000\u103a","\u1014\u102d\u102f","\u1012\u102e"]),t.s) +B.zx=A.a(s(["Januar","Februar","M\xe4rz","April","Mai","Juni","Juli","Auguscht","Sept\xe4mber","Oktoober","Nov\xe4mber","Dez\xe4mber"]),t.s) +B.zy=A.a(s(["\u0ea1.\u0e81.","\u0e81.\u0e9e.","\u0ea1.\u0e99.","\u0ea1.\u0eaa.","\u0e9e.\u0e9e.","\u0ea1\u0eb4.\u0e96.","\u0e81.\u0ea5.","\u0eaa.\u0eab.","\u0e81.\u0e8d.","\u0e95.\u0ea5.","\u0e9e.\u0e88.","\u0e97.\u0ea7."]),t.s) +B.a64=A.a(s(["1-\u0448\u044b \u043a\u0432.","2-\u0433\u0456 \u043a\u0432.","3-\u0446\u0456 \u043a\u0432.","4-\u0442\u044b \u043a\u0432."]),t.s) +B.a65=A.a(s(["af","am","ar","as","az","be","bg","bn","bs","ca","cs","cy","da","de","el","en","es","et","eu","fa","fi","fil","fr","gl","gsw","gu","he","hi","hr","hu","hy","id","is","it","ja","ka","kk","km","kn","ko","ky","lo","lt","lv","mk","ml","mn","mr","ms","my","nb","ne","nl","no","or","pa","pl","pt","ro","ru","si","sk","sl","sq","sr","sv","sw","ta","te","th","tl","tr","uk","ur","uz","vi","zh","zu"]),t.s) +B.zz=A.a(s(["\u0458\u0430\u043d.","\u0444\u0435\u0432.","\u043c\u0430\u0440.","\u0430\u043f\u0440.","\u043c\u0430\u0458","\u0458\u0443\u043d.","\u0458\u0443\u043b.","\u0430\u0432\u0433.","\u0441\u0435\u043f\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u0435\u043c.","\u0434\u0435\u043a."]),t.s) +B.a66=A.a(s(["Ch1","Ch2","Ch3","Ch4"]),t.s) +B.Wg=new A.A(4291282887) +B.Wc=new A.A(4290822336) +B.a67=A.a(s([B.Wg,B.Wc]),t.t_) +B.a69=A.a(s([48,13,10,13,10]),t.t) +B.a6a=A.a(s(["\u0b92\u0ba9\u0bcd\u0bb1\u0bbe\u0bae\u0bcd \u0b95\u0bbe\u0bb2\u0bbe\u0ba3\u0bcd\u0b9f\u0bc1","\u0b87\u0bb0\u0ba3\u0bcd\u0b9f\u0bbe\u0bae\u0bcd \u0b95\u0bbe\u0bb2\u0bbe\u0ba3\u0bcd\u0b9f\u0bc1","\u0bae\u0bc2\u0ba9\u0bcd\u0bb1\u0bbe\u0bae\u0bcd \u0b95\u0bbe\u0bb2\u0bbe\u0ba3\u0bcd\u0b9f\u0bc1","\u0ba8\u0bbe\u0ba9\u0bcd\u0b95\u0bbe\u0bae\u0bcd \u0b95\u0bbe\u0bb2\u0bbe\u0ba3\u0bcd\u0b9f\u0bc1"]),t.s) +B.a6b=A.a(s(["Tr\u01b0\u1edbc Thi\xean Ch\xfaa","Sau C\xf4ng Nguy\xean"]),t.s) +B.a6c=A.a(s(["Yan","Fev","Mar","Apr","May","Iyn","Iyl","Avg","Sen","Okt","Noy","Dek"]),t.s) +B.a6d=A.a(s(["1\u0c35 \u0c24\u0c4d\u0c30\u0c48\u0c2e\u0c3e\u0c38\u0c3f\u0c15\u0c02","2\u0c35 \u0c24\u0c4d\u0c30\u0c48\u0c2e\u0c3e\u0c38\u0c3f\u0c15\u0c02","3\u0c35 \u0c24\u0c4d\u0c30\u0c48\u0c2e\u0c3e\u0c38\u0c3f\u0c15\u0c02","4\u0c35 \u0c24\u0c4d\u0c30\u0c48\u0c2e\u0c3e\u0c38\u0c3f\u0c15\u0c02"]),t.s) +B.m5=A.a(s(["\u062c\u0646\u0648\u0631\u06cc","\u0641\u0631\u0648\u0631\u06cc","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u0626\u06cc","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u0626\u06cc","\u0627\u06af\u0633\u062a","\u0633\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"]),t.s) +B.a6e=A.a(s(["\u03c0\u03c1\u03bf \u03a7\u03c1\u03b9\u03c3\u03c4\u03bf\u03cd","\u03bc\u03b5\u03c4\u03ac \u03a7\u03c1\u03b9\u03c3\u03c4\u03cc\u03bd"]),t.s) +B.m6=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","d/M/yy"]),t.s) +B.zA=A.a(s(["I","F","M","A","M","I","I","A","S","O","N","D"]),t.s) +B.a6f=A.a(s(["\u0635","\u0645"]),t.s) +B.zB=A.a(s(["H:mm:ss (zzzz)","H:mm:ss (z)","H:mm:ss","H:mm"]),t.s) +B.YL=new A.hd(501,"\u8bbe\u5907\u8bf7\u6c42\u65e0\u54cd\u5e94",1,"deviceNetworkAbnormal") +B.YK=new A.hd(602001,"\u8bbe\u5907\u6ce8\u518c\u5931\u8d25",5,"deviceRegistrationFailed") +B.YH=new A.hd(602002,"\u8bbe\u5907\u7ed1\u5b9a\u5931\u8d25",6,"deviceBindingFailed") +B.YM=new A.hd(602003,"\u8bbe\u5907\u65e0\u6548",7,"deviceInvalid") +B.YO=new A.hd(602004,"\u56fe\u7247\u4e0a\u4f20\u5931\u8d25",8,"imageUploadFailed") +B.YN=new A.hd(602005,"\u6587\u4ef6\u4e0a\u4f20\u5931\u8d25",9,"fileUploadFailed") +B.YI=new A.hd(602006,"\u8bc1\u4e66\u66f4\u65b0\u5931\u8d25",10,"certificateUpdateFailed") +B.YJ=new A.hd(602008,"\u8bbe\u5907\u672a\u8fde\u63a5",12,"deviceDisconnected") +B.a6g=A.a(s([B.iW,B.YL,B.iX,B.wt,B.de,B.YK,B.YH,B.YM,B.YO,B.YN,B.YI,B.df,B.YJ,B.po,B.ws]),A.ar("E")) +B.a6h=A.a(s([13,10,48,13,10,13,10]),t.t) +B.a6i=A.a(s([72,84,84,80,47,49,46]),t.t) +B.a6j=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","d 'de' MMM 'de' y","dd/MM/yy"]),t.s) +B.m7=A.a(s(["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"]),t.s) +B.zC=A.a(s(["n","p","u","s","\u0161","p","s"]),t.s) +B.a6k=A.a(s(["przed nasz\u0105 er\u0105","naszej ery"]),t.s) +B.jl=A.a(s(["1. kvartal","2. kvartal","3. kvartal","4. kvartal"]),t.s) +B.f2=A.a(s(["EEEE, MMMM d, y","MMMM d, y","MMM d, y","M/d/yy"]),t.s) +B.zD=A.a(s(["\u0b9e\u0bbe\u0baf\u0bbf\u0bb1\u0bc1","\u0ba4\u0bbf\u0b99\u0bcd\u0b95\u0bb3\u0bcd","\u0b9a\u0bc6\u0bb5\u0bcd\u0bb5\u0bbe\u0baf\u0bcd","\u0baa\u0bc1\u0ba4\u0ba9\u0bcd","\u0bb5\u0bbf\u0baf\u0bbe\u0bb4\u0ba9\u0bcd","\u0bb5\u0bc6\u0bb3\u0bcd\u0bb3\u0bbf","\u0b9a\u0ba9\u0bbf"]),t.s) +B.a6l=A.a(s(["Dom.","Luns","Mar.","M\xe9r.","Xov.","Ven.","S\xe1b."]),t.s) +B.zE=A.a(s(["\u044f\u043d\u0443\u0430\u0440\u0438","\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440\u0438\u043b","\u043c\u0430\u0439","\u044e\u043d\u0438","\u044e\u043b\u0438","\u0430\u0432\u0433\u0443\u0441\u0442","\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438","\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438","\u043d\u043e\u0435\u043c\u0432\u0440\u0438","\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438"]),t.s) +B.zF=A.a(s(["jan.","feb.","mars","apr.","maj","juni","juli","aug.","sep.","okt.","nov.","dec."]),t.s) +B.zG=A.a(s(["\u0d89\u0dbb\u0dd2\u0daf\u0dcf","\u0dc3\u0db3\u0dd4\u0daf\u0dcf","\u0d85\u0d9f\u0dc4","\u0db6\u0daf\u0dcf\u0daf\u0dcf","\u0db6\u0dca\u200d\u0dbb\u0dc4\u0dc3\u0dca","\u0dc3\u0dd2\u0d9a\u0dd4","\u0dc3\u0dd9\u0db1"]),t.s) +B.zH=A.a(s(["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"]),t.s) +B.zI=A.a(s(["D","L","M","M","G","V","S"]),t.s) +B.U=A.a(s(["J","F","M","A","M","J","J","A","S","O","N","D"]),t.s) +B.b1=A.a(s(["h:mm:ss a zzzz","h:mm:ss a z","h:mm:ss a","h:mm a"]),t.s) +B.a6m=A.a(s(["pred Kristusom","po Kristusu"]),t.s) +B.a6n=A.a(s(["1. kv.","2. kv.","3. kv.","4. kv."]),t.s) +B.m8=A.a(s(["dim.","lun.","mar.","mer.","jeu.","ven.","sam."]),t.s) +B.zJ=A.a(s(["\u0458\u0430\u043d\u0443\u0430\u0440\u0438","\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440\u0438\u043b","\u043c\u0430\u0458","\u0458\u0443\u043d\u0438","\u0458\u0443\u043b\u0438","\u0430\u0432\u0433\u0443\u0441\u0442","\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438","\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438","\u043d\u043e\u0435\u043c\u0432\u0440\u0438","\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438"]),t.s) +B.a6o=A.a(s(["EEEE, d MMMM y '\u0433'.","d MMMM y '\u0433'.","d MMM y '\u0433'.","d.MM.yy"]),t.s) +B.m9=A.a(s(["P","E","T","K","N","R","L"]),t.s) +B.a6p=A.a(s(["1-\u0447\u0435\u0439.","2-\u0447\u0435\u0439.","3-\u0447\u0435\u0439.","4-\u0447\u0435\u0439."]),t.s) +B.zK=A.a(s(["\u4e00\u6708","\u4e8c\u6708","\u4e09\u6708","\u56db\u6708","\u4e94\u6708","\u516d\u6708","\u4e03\u6708","\u516b\u6708","\u4e5d\u6708","\u5341\u6708","\u5341\u4e00\u6708","\u5341\u4e8c\u6708"]),t.s) +B.a6q=A.a(s(["1\u5b63\u5ea6","2\u5b63\u5ea6","3\u5b63\u5ea6","4\u5b63\u5ea6"]),t.s) +B.a6r=A.a(s(["F1","F2","F3","F4"]),t.s) +B.a6s=A.a(s(["\u0441\u0456\u0447.","\u043b\u044e\u0442.","\u0431\u0435\u0440.","\u043a\u0432\u0456\u0442.","\u0442\u0440\u0430\u0432.","\u0447\u0435\u0440\u0432.","\u043b\u0438\u043f.","\u0441\u0435\u0440\u043f.","\u0432\u0435\u0440.","\u0436\u043e\u0432\u0442.","\u043b\u0438\u0441\u0442.","\u0433\u0440\u0443\u0434."]),t.s) +B.a6t=A.a(s(["p\u0159ed na\u0161\xedm letopo\u010dtem","na\u0161eho letopo\u010dtu"]),t.s) +B.zL=A.a(s(["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"]),t.s) +B.a6u=A.a(s(["am Vormittag","am Namittag"]),t.s) +B.aq=A.a(s(["{1} {0}","{1} {0}","{1} {0}","{1} {0}"]),t.s) +B.a6v=A.a(s(["Sul","Llun","Maw","Mer","Iau","Gwe","Sad"]),t.s) +B.aph=new A.uW(0,"solid") +B.Pa=new A.uW(1,"double") +B.apk=new A.uW(2,"dotted") +B.apm=new A.uW(3,"dashed") +B.apo=new A.uW(4,"wavy") +B.a6w=A.a(s([B.aph,B.Pa,B.apk,B.apm,B.apo]),A.ar("E")) +B.a6x=A.a(s(["\u092a\u094d\u0930\u0925\u092e \u0924\u093f\u092e\u093e\u0939\u0940","\u0926\u094d\u0935\u093f\u0924\u0940\u092f \u0924\u093f\u092e\u093e\u0939\u0940","\u0924\u0943\u0924\u0940\u092f \u0924\u093f\u092e\u093e\u0939\u0940","\u091a\u0924\u0941\u0930\u094d\u0925 \u0924\u093f\u092e\u093e\u0939\u0940"]),t.s) +B.zM=A.a(s(["af","am","ar","as","az","be","bg","bn","bs","ca","cs","cy","da","de","el","en","es","et","eu","fa","fi","fil","fr","gl","gsw","gu","he","hi","hr","hu","hy","id","is","it","ja","ka","kk","km","kn","ko","ky","lo","lt","lv","mk","ml","mn","mr","ms","my","nb","ne","nl","no","or","pa","pl","ps","pt","ro","ru","si","sk","sl","sq","sr","sv","sw","ta","te","th","tl","tr","uk","ur","uz","vi","zh","zu"]),t.s) +B.zN=A.a(s(["So.","Ma.","Di.","Wo.","Do.","Vr.","Sa."]),t.s) +B.a6y=A.a(s(["y- MMMM d- EEEE","y- MMMM d","y- MMM d","dd-MM-yy"]),t.s) +B.hs=A.a(s(["s\xf8ndag","mandag","tirsdag","onsdag","torsdag","fredag","l\xf8rdag"]),t.s) +B.zO=A.a(s(["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0932","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"]),t.s) +B.a6z=A.a(s(["I. negyed\xe9v","II. negyed\xe9v","III. negyed\xe9v","IV. negyed\xe9v"]),t.s) +B.a6F=A.a(s(["d.","l.","m.","m.","x.","v.","s."]),t.s) +B.a6G=A.a(s(["H\u6642mm\u5206ss\u79d2 zzzz","H:mm:ss z","H:mm:ss","H:mm"]),t.s) +B.zP=A.a(s(["dg.","dl.","dt.","dc.","dj.","dv.","ds."]),t.s) +B.a6H=A.a(s(["\u0c9c\u0ca8\u0cb5\u0cb0\u0cbf","\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cb5\u0cb0\u0cbf","\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd","\u0c8f\u0caa\u0ccd\u0cb0\u0cbf","\u0cae\u0cc7","\u0c9c\u0cc2\u0ca8\u0ccd","\u0c9c\u0cc1\u0cb2\u0cc8","\u0c86\u0c97","\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82","\u0c85\u0c95\u0ccd\u0c9f\u0ccb","\u0ca8\u0cb5\u0cc6\u0c82","\u0ca1\u0cbf\u0cb8\u0cc6\u0c82"]),t.s) +B.zQ=A.a(s(["\u0b9c\u0ba9.","\u0baa\u0bbf\u0baa\u0bcd.","\u0bae\u0bbe\u0bb0\u0bcd.","\u0b8f\u0baa\u0bcd.","\u0bae\u0bc7","\u0b9c\u0bc2\u0ba9\u0bcd","\u0b9c\u0bc2\u0bb2\u0bc8","\u0b86\u0b95.","\u0b9a\u0bc6\u0baa\u0bcd.","\u0b85\u0b95\u0bcd.","\u0ba8\u0bb5.","\u0b9f\u0bbf\u0b9a."]),t.s) +B.zR=A.a(s(["N","P","U","S","\u010c","P","S"]),t.s) +B.a6I=A.a(s(["y 'm'. MMMM d 'd'., EEEE","y 'm'. MMMM d 'd'.","y-MM-dd","y-MM-dd"]),t.s) +B.a6J=A.a(s(["\u0da2\u0db1","\u0db4\u0dd9\u0db6","\u0db8\u0dcf\u0dbb\u0dca\u0dad\u0dd4","\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca","\u0db8\u0dd0\u0dba\u0dd2","\u0da2\u0dd6\u0db1\u0dd2","\u0da2\u0dd6\u0dbd\u0dd2","\u0d85\u0d9c\u0ddd","\u0dc3\u0dd0\u0db4\u0dca","\u0d94\u0d9a\u0dca","\u0db1\u0ddc\u0dc0\u0dd0","\u0daf\u0dd9\u0dc3\u0dd0"]),t.s) +B.zS=A.a(s([0,0,26624,1023,65534,2047,65534,2047]),t.t) +B.zT=A.a(s(["1-\u0439 \u043a\u0432.","2-\u0439 \u043a\u0432.","3-\u0439 \u043a\u0432.","4-\u0439 \u043a\u0432."]),t.s) +B.jm=A.a(s([B.fR,B.dB,B.is,B.ky,B.kz]),t.QP) +B.e5=new A.nH(0,"leading") +B.cO=new A.nH(1,"title") +B.e6=new A.nH(2,"subtitle") +B.fN=new A.nH(3,"trailing") +B.a6K=A.a(s([B.e5,B.cO,B.e6,B.fN]),A.ar("E")) +B.zU=A.a(s(["M","S","S","R","K","J","S"]),t.s) +B.zV=A.a(s(["\u0b9c","\u0baa\u0bbf","\u0bae\u0bbe","\u0b8f","\u0bae\u0bc7","\u0b9c\u0bc2","\u0b9c\u0bc2","\u0b86","\u0b9a\u0bc6","\u0b85","\u0ba8","\u0b9f\u0bbf"]),t.s) +B.a6L=A.a(s(["{0} \u0b20\u0b3e\u0b30\u0b47 {1}","{0} \u0b20\u0b3e\u0b30\u0b47 {1}","{1}, {0}","{1}, {0}"]),t.s) +B.a6M=A.a(s(["d, MMMM y, EEEE","d MMMM, y","d MMM, y","dd-MM-yy"]),t.s) +B.zW=A.a(s(["dom.","seg.","ter.","qua.","qui.","sex.","s\xe1b."]),t.s) +B.a6N=A.a(s(["EEEE\u060c d MMMM y","d MMMM y","dd\u200f/MM\u200f/y","d\u200f/M\u200f/y"]),t.s) +B.a6O=A.a(s(["\u0441\u0442\u0443","\u043b\u044e\u0442","\u0441\u0430\u043a","\u043a\u0440\u0430","\u043c\u0430\u044f","\u0447\u044d\u0440","\u043b\u0456\u043f","\u0436\u043d\u0456","\u0432\u0435\u0440","\u043a\u0430\u0441","\u043b\u0456\u0441","\u0441\u043d\u0435"]),t.s) +B.zX=A.a(s(["\u0d1c","\u0d2b\u0d46","\u0d2e\u0d3e","\u0d0f","\u0d2e\u0d46","\u0d1c\u0d42\u0d7a","\u0d1c\u0d42","\u0d13","\u0d38\u0d46","\u0d12","\u0d28","\u0d21\u0d3f"]),t.s) +B.a6P=A.a(s(["\u10eb\u10d5. \u10ec.","\u10d0\u10ee. \u10ec."]),t.s) +B.a6Q=A.a(s(["Prvi kvartal","Drugi kvartal","Tre\u0107i kvartal","\u010cetvrti kvartal"]),t.s) +B.a6R=A.a(s(["1. \u0442\u0440\u0438\u043c\u0435\u0441\u0435\u0447\u0438\u0435","2. \u0442\u0440\u0438\u043c\u0435\u0441\u0435\u0447\u0438\u0435","3. \u0442\u0440\u0438\u043c\u0435\u0441\u0435\u0447\u0438\u0435","4. \u0442\u0440\u0438\u043c\u0435\u0441\u0435\u0447\u0438\u0435"]),t.s) +B.zY=A.a(s(["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie"]),t.s) +B.a6S=A.a(s(["I \u0443\u043b\u0438\u0440\u0430\u043b","II \u0443\u043b\u0438\u0440\u0430\u043b","III \u0443\u043b\u0438\u0440\u0430\u043b","IV \u0443\u043b\u0438\u0440\u0430\u043b"]),t.s) +B.a6T=A.a(s(["\u0633\u200c\u0645\u06f1","\u0633\u200c\u0645\u06f2","\u0633\u200c\u0645\u06f3","\u0633\u200c\u0645\u06f4"]),t.s) +B.zZ=A.a(s(["T","H","M","H","T","K","H","E","S","L","M","J"]),t.s) +B.a6U=A.a(s(["\u0642\u0628\u0644 \u0627\u0632 \u0645\u06cc\u0644\u0627\u062f","\u0645\u06cc\u0644\u0627\u062f\u06cc"]),t.s) +B.a6V=A.a(s(["\xd6\xd6","\xd6S"]),t.s) +B.a6W=A.a(s(["\u0642.\u0645","\u0645"]),t.s) +B.A_=A.a(s(["\u099c\u09be\u09a8\u09c1\u09f1\u09be\u09f0\u09c0","\u09ab\u09c7\u09ac\u09cd\u09f0\u09c1\u09f1\u09be\u09f0\u09c0","\u09ae\u09be\u09f0\u09cd\u099a","\u098f\u09aa\u09cd\u09f0\u09bf\u09b2","\u09ae\u09c7\u2019","\u099c\u09c1\u09a8","\u099c\u09c1\u09b2\u09be\u0987","\u0986\u0997\u09b7\u09cd\u099f","\u099b\u09c7\u09aa\u09cd\u09a4\u09c7\u09ae\u09cd\u09ac\u09f0","\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09f0","\u09a8\u09f1\u09c7\u09ae\u09cd\u09ac\u09f0","\u09a1\u09bf\u099a\u09c7\u09ae\u09cd\u09ac\u09f0"]),t.s) +B.A0=A.a(s(["\u0458\u0430\u043d","\u0444\u0435\u0431","\u043c\u0430\u0440","\u0430\u043f\u0440","\u043c\u0430\u0458","\u0458\u0443\u043d","\u0458\u0443\u043b","\u0430\u0432\u0433","\u0441\u0435\u043f","\u043e\u043a\u0442","\u043d\u043e\u0432","\u0434\u0435\u0446"]),t.s) +B.a6X=A.a(s(["1r trimestre","2n trimestre","3r trimestre","4t trimestre"]),t.s) +B.a6Y=A.a(s(["\u0642.\u0645.","\u0645."]),t.s) +B.A1=A.a(s(["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogo","Sep","Okt","Nov","Dis"]),t.s) +B.a6Z=A.a(s(["authorization","www-authenticate","cookie","cookie2"]),t.s) +B.a7_=A.a(s(["1-ci kvartal","2-ci kvartal","3-c\xfc kvartal","4-c\xfc kvartal"]),t.s) +B.a70=A.a(s(["\u1018\u102e\u1005\u102e","\u1021\u1012\u1031\u102e"]),t.s) +B.ht=A.a(s(["Ene","Peb","Mar","Abr","May","Hun","Hul","Ago","Set","Okt","Nob","Dis"]),t.s) +B.a71=A.a(s(["\u041d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0425\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0413\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0414\u04e9\u0440\u04e9\u0432\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0422\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0417\u0443\u0440\u0433\u0430\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0414\u043e\u043b\u043e\u043e\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u041d\u0430\u0439\u043c\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0415\u0441\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0410\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0410\u0440\u0432\u0430\u043d \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0410\u0440\u0432\u0430\u043d \u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440"]),t.s) +B.a72=A.a(s(["zzzz HH:mm:ss","z HH:mm:ss","H:mm:ss","H:mm"]),t.s) +B.a73=A.a(s(["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kes\xe4kuuta","hein\xe4kuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"]),t.s) +B.A2=A.a(s(["d","h","m","m","e","p","sh"]),t.s) +B.d2=A.a(s(["{1}, {0}","{1}, {0}","{1}, {0}","{1}, {0}"]),t.s) +B.a74=A.a(s(["p.K.","mb.K."]),t.s) +B.a75=A.a(s(["\u0e1b\u0e35\u0e01\u0e48\u0e2d\u0e19\u0e04\u0e23\u0e34\u0e2a\u0e15\u0e01\u0e32\u0e25","\u0e04\u0e23\u0e34\u0e2a\u0e15\u0e4c\u0e28\u0e31\u0e01\u0e23\u0e32\u0e0a"]),t.s) +B.ma=A.a(s(["\u041d\u044f","\u0414\u0430","\u041c\u044f","\u041b\u0445","\u041f\u04af","\u0411\u0430","\u0411\u044f"]),t.s) +B.a78=A.a(s(["\u0570\u0578\u0582\u0576\u057e\u0561\u0580","\u0583\u0565\u057f\u0580\u057e\u0561\u0580","\u0574\u0561\u0580\u057f","\u0561\u057a\u0580\u056b\u056c","\u0574\u0561\u0575\u056b\u057d","\u0570\u0578\u0582\u0576\u056b\u057d","\u0570\u0578\u0582\u056c\u056b\u057d","\u0585\u0563\u0578\u057d\u057f\u0578\u057d","\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580","\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580","\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580","\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580"]),t.s) +B.a79=A.a(s(["\u043f\u0440\u0432\u0438 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","\u0434\u0440\u0443\u0433\u0438 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","\u0442\u0440\u0435\u045b\u0438 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","\u0447\u0435\u0442\u0432\u0440\u0442\u0438 \u043a\u0432\u0430\u0440\u0442\u0430\u043b"]),t.s) +B.a7a=A.a(s(["\u0924\u093f\u0967","\u0924\u093f\u0968","\u0924\u093f\u0969","\u0924\u093f\u096a"]),t.s) +B.A3=A.a(s(["sk","pr","an","tr","kt","pn","\u0161t"]),t.s) +B.A4=A.a(s(["\u0ab0\u0ab5\u0abf\u0ab5\u0abe\u0ab0","\u0ab8\u0acb\u0aae\u0ab5\u0abe\u0ab0","\u0aae\u0a82\u0a97\u0ab3\u0ab5\u0abe\u0ab0","\u0aac\u0ac1\u0aa7\u0ab5\u0abe\u0ab0","\u0a97\u0ac1\u0ab0\u0ac1\u0ab5\u0abe\u0ab0","\u0ab6\u0ac1\u0a95\u0acd\u0ab0\u0ab5\u0abe\u0ab0","\u0ab6\u0aa8\u0abf\u0ab5\u0abe\u0ab0"]),t.s) +B.A5=A.a(s(["antes de Cristo","depois de Cristo"]),t.s) +B.A6=A.a(s(["\u0b30\u0b2c\u0b3f","\u0b38\u0b4b\u0b2e","\u0b2e\u0b19\u0b4d\u0b17\u0b33","\u0b2c\u0b41\u0b27","\u0b17\u0b41\u0b30\u0b41","\u0b36\u0b41\u0b15\u0b4d\u0b30","\u0b36\u0b28\u0b3f"]),t.s) +B.a7c=A.a(s(["Ion","Chwef","Maw","Ebr","Mai","Meh","Gorff","Awst","Medi","Hyd","Tach","Rhag"]),t.s) +B.a7d=A.a(s(["EEEE, d. MMMM y.","d. MMMM y.","d. MMM y.","dd. MM. y."]),t.s) +B.a7e=A.a(s(["1 \u0dc0\u0db1 \u0d9a\u0dcf\u0dbb\u0dca\u0dad\u0dd4\u0dc0","2 \u0dc0\u0db1 \u0d9a\u0dcf\u0dbb\u0dca\u0dad\u0dd4\u0dc0","3 \u0dc0\u0db1 \u0d9a\u0dcf\u0dbb\u0dca\u0dad\u0dd4\u0dc0","4 \u0dc0\u0db1 \u0d9a\u0dcf\u0dbb\u0dca\u0dad\u0dd4\u0dc0"]),t.s) +B.a7f=A.a(s(["\u0c15\u0c4d\u0c30\u0c40\u0c38\u0c4d\u0c24\u0c41 \u0c2a\u0c42\u0c30\u0c4d\u0c35\u0c02","\u0c15\u0c4d\u0c30\u0c40\u0c38\u0c4d\u0c24\u0c41 \u0c36\u0c15\u0c02"]),t.s) +B.A7=A.a(s(["{1} '\xe0' {0}","{1} '\xe0' {0}","{1}, {0}","{1} {0}"]),t.s) +B.A8=A.a(s(["\u1015\u1011\u1019 \u101e\u102f\u1036\u1038\u101c\u1015\u1010\u103a","\u1012\u102f\u1010\u102d\u101a \u101e\u102f\u1036\u1038\u101c\u1015\u1010\u103a","\u1010\u1010\u102d\u101a \u101e\u102f\u1036\u1038\u101c\u1015\u1010\u103a","\u1005\u1010\u102f\u1010\u1039\u1011 \u101e\u102f\u1036\u1038\u101c\u1015\u1010\u103a"]),t.s) +B.ej=A.a(s(["dom","lun","mar","mi\xe9","jue","vie","s\xe1b"]),t.s) +B.f3=A.a(s(["K1","K2","K3","K4"]),t.s) +B.a7g=A.a(s(["\u05dc\u05e4\u05e0\u05d4\u05f4\u05e6","\u05d0\u05d7\u05d4\u05f4\u05e6"]),t.s) +B.a7h=A.a(s(["trimestrul I","trimestrul al II-lea","trimestrul al III-lea","trimestrul al IV-lea"]),t.s) +B.A9=A.a(s(["\u0d1e\u0d3e\u0d2f\u0d7c","\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d7e","\u0d1a\u0d4a\u0d35\u0d4d\u0d35","\u0d2c\u0d41\u0d27\u0d7b","\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d02","\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f","\u0d36\u0d28\u0d3f"]),t.s) +B.a7i=A.a(s(["KK","BK"]),t.s) +B.a7j=A.a(s(["{1} \u0641\u064a {0}","{1} \u0641\u064a {0}","{1}, {0}","{1}, {0}"]),t.s) +B.a7k=A.a(s(["\u099c\u09be\u09a8\u09c1","\u09ab\u09c7\u09ac","\u09ae\u09be\u09b0\u09cd\u099a","\u098f\u09aa\u09cd\u09b0\u09bf\u09b2","\u09ae\u09c7","\u099c\u09c1\u09a8","\u099c\u09c1\u09b2\u09be\u0987","\u0986\u0997\u09b8\u09cd\u099f","\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0","\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0","\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0","\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0"]),t.s) +B.a7l=A.a(s(["KV1","KV2","KV3","KV4"]),t.s) +B.mb=A.a(s(["a. C.","d. C."]),t.s) +B.a7m=A.a(s(["1. fj\xf3r\xf0ungur","2. fj\xf3r\xf0ungur","3. fj\xf3r\xf0ungur","4. fj\xf3r\xf0ungur"]),t.s) +B.Aa=A.a(s(["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII"]),t.s) +B.vp=new A.A(419430400) +B.fj=new A.z(0,2) +B.RW=new A.c6(0.75,B.a6,B.vp,B.fj,1.5) +B.a7n=A.a(s([B.RW]),t.F) +B.Ab=A.a(s(["\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1\u0a86\u0ab0\u0ac0","\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1\u0a86\u0ab0\u0ac0","\u0aae\u0abe\u0ab0\u0acd\u0a9a","\u0a8f\u0aaa\u0acd\u0ab0\u0abf\u0ab2","\u0aae\u0ac7","\u0a9c\u0ac2\u0aa8","\u0a9c\u0ac1\u0ab2\u0abe\u0a88","\u0a91\u0a97\u0ab8\u0acd\u0a9f","\u0ab8\u0aaa\u0acd\u0a9f\u0ac7\u0aae\u0acd\u0aac\u0ab0","\u0a91\u0a95\u0acd\u0a9f\u0acb\u0aac\u0ab0","\u0aa8\u0ab5\u0ac7\u0aae\u0acd\u0aac\u0ab0","\u0aa1\u0abf\u0ab8\u0ac7\u0aae\u0acd\u0aac\u0ab0"]),t.s) +B.ch=new A.yV(0,"clamp") +B.k9=new A.yV(1,"repeated") +B.ka=new A.yV(2,"mirror") +B.fC=new A.yV(3,"decal") +B.Ac=A.a(s([B.ch,B.k9,B.ka,B.fC]),A.ar("E")) +B.mc=A.a(s(["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"]),t.s) +B.Ad=A.a(s(["Dydd Sul","Dydd Llun","Dydd Mawrth","Dydd Mercher","Dydd Iau","Dydd Gwener","Dydd Sadwrn"]),t.s) +B.ek=A.a(s(["E","F","M","A","M","J","J","A","S","O","N","D"]),t.s) +B.a7o=A.a(s(["\u0431.\u0437.\u0434.","\u0431.\u0437."]),t.s) +B.Ae=A.a(s(["\u091c\u093e\u0928\u0947\u0935\u093e\u0930\u0940","\u092b\u0947\u092c\u094d\u0930\u0941\u0935\u093e\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u090f\u092a\u094d\u0930\u093f\u0932","\u092e\u0947","\u091c\u0942\u0928","\u091c\u0941\u0932\u0948","\u0911\u0917\u0938\u094d\u091f","\u0938\u092a\u094d\u091f\u0947\u0902\u092c\u0930","\u0911\u0915\u094d\u091f\u094b\u092c\u0930","\u0928\u094b\u0935\u094d\u0939\u0947\u0902\u092c\u0930","\u0921\u093f\u0938\u0947\u0902\u092c\u0930"]),t.s) +B.ad5=new A.dX("en",null,"US") +B.a7p=A.a(s([B.ad5]),t.ss) +B.hu=A.a(s(["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"]),t.s) +B.a7r=A.a(s(["\u7b2c1\u56db\u534a\u671f","\u7b2c2\u56db\u534a\u671f","\u7b2c3\u56db\u534a\u671f","\u7b2c4\u56db\u534a\u671f"]),t.s) +B.a7q=A.a(s([0,0,32722,12287,65535,34815,65534,18431]),t.t) +B.Af=A.a(s([0,0,65490,12287,65535,34815,65534,18431]),t.t) +B.d3=A.a(s(["1st quarter","2nd quarter","3rd quarter","4th quarter"]),t.s) +B.Ag=A.a(s(["Min","Sen","Sel","Rab","Kam","Jum","Sab"]),t.s) +B.a7s=A.a(s(["1. nelj\xe4nnes","2. nelj\xe4nnes","3. nelj\xe4nnes","4. nelj\xe4nnes"]),t.s) +B.b6=A.a(s(["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]),t.s) +B.a7t=A.a(s(["\u05e8\u05d1\u05e2\u05d5\u05df 1","\u05e8\u05d1\u05e2\u05d5\u05df 2","\u05e8\u05d1\u05e2\u05d5\u05df 3","\u05e8\u05d1\u05e2\u05d5\u05df 4"]),t.s) +B.a7u=A.a(s(["\u0908\u0938\u093e-\u092a\u0942\u0930\u094d\u0935","\u0908\u0938\u0935\u0940 \u0938\u0928"]),t.s) +B.a7v=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","d/MM/yy"]),t.s) +B.Ah=A.a(s(["\u12a5\u1211\u12f5","\u1230\u129e","\u121b\u12ad\u1230\u129e","\u1228\u1261\u12d5","\u1210\u1219\u1235","\u12d3\u122d\u1265","\u1245\u12f3\u121c"]),t.s) +B.a7x=A.a(s(["e paradites","e pasdites"]),t.s) +B.a7w=A.a(s(["x.","f.","m.","a.","m.","x.","x.","a.","s.","o.","n.","d."]),t.s) +B.a7y=A.a(s(["\u0a88.\u0ab8.\u0aaa\u0ac2\u0ab0\u0acd\u0ab5\u0ac7","\u0a88.\u0ab8."]),t.s) +B.Ai=A.a(s(["EEEE, d. MMMM y.","d. MMMM y.","d. M. y.","d.M.yy."]),t.s) +B.a7z=A.a(s(["Th\xe1ng 1","Th\xe1ng 2","Th\xe1ng 3","Th\xe1ng 4","Th\xe1ng 5","Th\xe1ng 6","Th\xe1ng 7","Th\xe1ng 8","Th\xe1ng 9","Th\xe1ng 10","Th\xe1ng 11","Th\xe1ng 12"]),t.s) +B.Aj=A.a(s(["GN","FB","M\xc7","AB","MG","JN","JL","AG","ST","OC","NV","DS"]),t.s) +B.md=A.a(s(["jan.","fev.","mar.","abr.","mai.","jun.","jul.","ago.","set.","out.","nov.","dez."]),t.s) +B.a7A=A.a(s(["B.","B.E.","\xc7.A.","\xc7.","C.A.","C.","\u015e."]),t.s) +B.a7B=A.a(s(["\u0434\u0430 \u043d.\u044d.","\u043d.\u044d."]),t.s) +B.Ak=A.a(s(["1-\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","2-\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","3-\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","4-\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b"]),t.s) +B.a7C=A.a(s(["th\xe1ng 1","th\xe1ng 2","th\xe1ng 3","th\xe1ng 4","th\xe1ng 5","th\xe1ng 6","th\xe1ng 7","th\xe1ng 8","th\xe1ng 9","th\xe1ng 10","th\xe1ng 11","th\xe1ng 12"]),t.s) +B.a7D=A.a(s(["\u10eb\u10d5\u10d4\u10da\u10d8 \u10ec\u10d4\u10da\u10d7\u10d0\u10e6\u10e0\u10d8\u10ea\u10ee\u10d5\u10d8\u10d7","\u10d0\u10ee\u10d0\u10da\u10d8 \u10ec\u10d4\u10da\u10d7\u10d0\u10e6\u10e0\u10d8\u10ea\u10ee\u10d5\u10d8\u10d7"]),t.s) +B.Al=A.a(s(["Januari","Februari","Machi","Aprili","Mei","Juni","Julai","Agosti","Septemba","Oktoba","Novemba","Desemba"]),t.s) +B.ahT=new A.hi(0,"reserved1") +B.qJ=new A.hi(1,"connect") +B.qN=new A.hi(2,"connectAck") +B.mV=new A.hi(3,"publish") +B.mW=new A.hi(4,"publishAck") +B.mX=new A.hi(5,"publishReceived") +B.mY=new A.hi(6,"publishRelease") +B.mZ=new A.hi(7,"publishComplete") +B.qO=new A.hi(8,"subscribe") +B.qP=new A.hi(9,"subscribeAck") +B.qK=new A.hi(10,"unsubscribe") +B.qL=new A.hi(11,"unsubscribeAck") +B.mS=new A.hi(12,"pingRequest") +B.mT=new A.hi(13,"pingResponse") +B.mU=new A.hi(14,"disconnect") +B.qM=new A.hi(15,"auth") +B.a7E=A.a(s([B.ahT,B.qJ,B.qN,B.mV,B.mW,B.mX,B.mY,B.mZ,B.qO,B.qP,B.qK,B.qL,B.mS,B.mT,B.mU,B.qM]),A.ar("E")) +B.a7F=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","dd/MM/yy"]),t.s) +B.a7G=A.a(s(["EEEE, d-MMMM, y","d-MMMM, y","d-MMM, y","dd/MM/yy"]),t.s) +B.a7H=A.a(s(["{1} \u05d1\u05e9\u05e2\u05d4 {0}","{1} \u05d1\u05e9\u05e2\u05d4 {0}","{1}, {0}","{1}, {0}"]),t.s) +B.Am=A.a(s(["niedziela","poniedzia\u0142ek","wtorek","\u015broda","czwartek","pi\u0105tek","sobota"]),t.s) +B.a7I=A.a(s(["y MMMM d, EEEE","d MMMM y","d MMM y","dd/MM/y"]),t.s) +B.a7J=A.a(s(["\u1325\u12cb\u1275","\u12a8\u1230\u12d3\u1275"]),t.s) +B.An=A.a(s(["{1} 'um' {0}","{1} 'um' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.a7K=A.a(s(["\u0441\u0442\u0443","\u043b\u044e\u0442","\u0441\u0430\u043a","\u043a\u0440\u0430","\u043c\u0430\u0439","\u0447\u044d\u0440","\u043b\u0456\u043f","\u0436\u043d\u0456","\u0432\u0435\u0440","\u043a\u0430\u0441","\u043b\u0456\u0441","\u0441\u043d\u0435"]),t.s) +B.a7L=A.a(s(["EEEE d. MMMM y","d. MMMM y","d. M. y","d. M. y"]),t.s) +B.Ao=A.a(s(["S","M","\xde","M","F","F","L"]),t.s) +B.ck=A.a(s(["Before Christ","Anno Domini"]),t.s) +B.a7M=A.a(s(["\u0d9a\u0dca\u200d\u0dbb\u0dd2\u0dc3\u0dca\u0dad\u0dd4 \u0db4\u0dd6\u0dbb\u0dca\u0dc0","\u0d9a\u0dca\u200d\u0dbb\u0dd2\u0dc3\u0dca\u0dad\u0dd4 \u0dc0\u0dbb\u0dca\u0dc2"]),t.s) +B.Ap=A.a(s(["\u062c\u0646\u0648\u0631\u064a","\u0641\u0628\u0631\u0648\u0631\u064a","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u06cd","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u06cc","\u0627\u06ab\u0633\u062a","\u0633\u06d0\u067e\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"]),t.s) +B.Aq=A.a(s(["Y","F","M","A","M","I","I","A","S","O","N","D"]),t.s) +B.a7N=A.a(s(["{1} - {0}","{1} - {0}","{1}, {0}","{1}, {0}"]),t.s) +B.a7O=A.a(s(["H:mm:ss '\u0447'. zzzz","H:mm:ss '\u0447'. z","H:mm:ss '\u0447'.","H:mm '\u0447'."]),t.s) +B.Ar=A.a(s(["V","H","K","Sz","Cs","P","Sz"]),t.s) +B.As=A.a(s(["\u043d\u0435\u0434\u0435\u043b\u044f","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u044f\u0434\u0430","\u0447\u0435\u0442\u0432\u044a\u0440\u0442\u044a\u043a","\u043f\u0435\u0442\u044a\u043a","\u0441\u044a\u0431\u043e\u0442\u0430"]),t.s) +B.At=A.a(s(["\u0d1c\u0d28\u0d41\u0d35\u0d30\u0d3f","\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41\u0d35\u0d30\u0d3f","\u0d2e\u0d3e\u0d7c\u0d1a\u0d4d\u0d1a\u0d4d","\u0d0f\u0d2a\u0d4d\u0d30\u0d3f\u0d7d","\u0d2e\u0d47\u0d2f\u0d4d","\u0d1c\u0d42\u0d7a","\u0d1c\u0d42\u0d32\u0d48","\u0d13\u0d17\u0d38\u0d4d\u0d31\u0d4d\u0d31\u0d4d","\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31\u0d02\u0d2c\u0d7c","\u0d12\u0d15\u0d4d\u200c\u0d1f\u0d4b\u0d2c\u0d7c","\u0d28\u0d35\u0d02\u0d2c\u0d7c","\u0d21\u0d3f\u0d38\u0d02\u0d2c\u0d7c"]),t.s) +B.a7P=A.a(s(["HH 'h' mm 'min' ss 's' zzzz","HH 'h' mm 'min' ss 's' z","HH 'h' mm 'min' ss 's'","HH 'h' mm"]),t.s) +B.Au=A.a(s(["jaanuar","veebruar","m\xe4rts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember"]),t.s) +B.a7Q=A.a(s(["\u05dc\u05e4\u05e0\u05d4\u05f4\u05e1","\u05dc\u05e1\u05e4\u05d9\u05e8\u05d4"]),t.s) +B.Av=A.a(s(["\u0441","\u043b","\u0441","\u043a","\u043c","\u0447","\u043b","\u0436","\u0432","\u043a","\u043b","\u0441"]),t.s) +B.a7R=A.a(s(["pointerdown","pointermove","pointerleave","pointerup","pointercancel","touchstart","touchend","touchmove","touchcancel","mousedown","mousemove","mouseleave","mouseup","keyup","keydown"]),t.s) +B.a7S=A.a(s(["sv\u0113tdiena","pirmdiena","otrdiena","tre\u0161diena","ceturtdiena","piektdiena","sestdiena"]),t.s) +B.me=A.a(s(["\u65e5","\u6708","\u706b","\u6c34","\u6728","\u91d1","\u571f"]),t.s) +B.Aw=A.a(s(["\u043d\u0435\u0434","\u043f\u043e\u043d","\u0443\u0442\u043e","\u0441\u0440\u0435","\u0447\u0435\u0442","\u043f\u0435\u0442","\u0441\u0443\u0431"]),t.s) +B.a7T=A.a(s(["\u0908\u0938\u0935\u0940\u0938\u0928\u092a\u0942\u0930\u094d\u0935","\u0908\u0938\u0935\u0940\u0938\u0928"]),t.s) +B.Ax=A.a(s(["\u0c06\u0c26\u0c3f\u0c35\u0c3e\u0c30\u0c02","\u0c38\u0c4b\u0c2e\u0c35\u0c3e\u0c30\u0c02","\u0c2e\u0c02\u0c17\u0c33\u0c35\u0c3e\u0c30\u0c02","\u0c2c\u0c41\u0c27\u0c35\u0c3e\u0c30\u0c02","\u0c17\u0c41\u0c30\u0c41\u0c35\u0c3e\u0c30\u0c02","\u0c36\u0c41\u0c15\u0c4d\u0c30\u0c35\u0c3e\u0c30\u0c02","\u0c36\u0c28\u0c3f\u0c35\u0c3e\u0c30\u0c02"]),t.s) +B.a7U=A.a(s(["y. MMMM d., EEEE","y. MMMM d.","y. MMM d.","y. MM. dd."]),t.s) +B.a7V=A.a(s(["sv\u0113td.","pirmd.","otrd.","tre\u0161d.","ceturtd.","piektd.","sestd."]),t.s) +B.mf=A.a(s(["\u06cc\u06a9\u0634\u0646\u0628\u0647","\u062f\u0648\u0634\u0646\u0628\u0647","\u0633\u0647\u200c\u0634\u0646\u0628\u0647","\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647","\u067e\u0646\u062c\u0634\u0646\u0628\u0647","\u062c\u0645\u0639\u0647","\u0634\u0646\u0628\u0647"]),t.s) +B.a7W=A.a(s(["\u1014\u1036\u1014\u1000\u103a","\u100a\u1014\u1031"]),t.s) +B.a7X=A.a(s(["\u0b95\u0bbf\u0bb1\u0bbf\u0bb8\u0bcd\u0ba4\u0bc1\u0bb5\u0bc1\u0b95\u0bcd\u0b95\u0bc1 \u0bae\u0bc1\u0ba9\u0bcd","\u0b85\u0ba9\u0bcd\u0ba9\u0bcb \u0b9f\u0bcb\u0bae\u0bbf\u0ba9\u0bbf"]),t.s) +B.a7Y=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","d MMM y","dd/MM/yy"]),t.s) +B.Rk=new A.WZ(2,"outer") +B.St=new A.c6(0.2,B.Rk,B.vp,B.j,11) +B.a7Z=A.a(s([B.St]),t.F) +B.Ay=A.a(s(["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"]),t.s) +B.Az=A.a(s(["\u0ead\u0eb2\u0e97\u0eb4\u0e94","\u0e88\u0eb1\u0e99","\u0ead\u0eb1\u0e87\u0e84\u0eb2\u0e99","\u0e9e\u0eb8\u0e94","\u0e9e\u0eb0\u0eab\u0eb1\u0e94","\u0eaa\u0eb8\u0e81","\u0ec0\u0eaa\u0ebb\u0eb2"]),t.s) +B.AA=A.a(s(["\u1303\u1295\u12e9","\u134c\u1265\u1229","\u121b\u122d\u127d","\u12a4\u1355\u122a","\u121c\u12ed","\u1301\u1295","\u1301\u120b\u12ed","\u12a6\u1308\u1235","\u1234\u1355\u1274","\u12a6\u12ad\u1276","\u1296\u126c\u121d","\u12f2\u1234\u121d"]),t.s) +B.AB=A.a(s(["\u05d9\u05e0\u05d5\u05f3","\u05e4\u05d1\u05e8\u05f3","\u05de\u05e8\u05e5","\u05d0\u05e4\u05e8\u05f3","\u05de\u05d0\u05d9","\u05d9\u05d5\u05e0\u05d9","\u05d9\u05d5\u05dc\u05d9","\u05d0\u05d5\u05d2\u05f3","\u05e1\u05e4\u05d8\u05f3","\u05d0\u05d5\u05e7\u05f3","\u05e0\u05d5\u05d1\u05f3","\u05d3\u05e6\u05de\u05f3"]),t.s) +B.a83=A.a(s(["\u0431.\u0437.\u0447.","\u0431.\u0437."]),t.s) +B.AC=A.a(s(["1.","2.","3.","4.","5.","6.","7.","8.","9.","10.","11.","12."]),t.s) +B.AD=A.a(s(["zo","ma","di","wo","do","vr","za"]),t.s) +B.a84=A.a(s(["y, MMMM d, EEEE","y, MMMM d","y, MMM d","d/M/yy"]),t.s) +B.mg=A.a(s(["Enero","Pebrero","Marso","Abril","Mayo","Hunyo","Hulyo","Agosto","Setyembre","Oktubre","Nobyembre","Disyembre"]),t.s) +B.a85=A.a(s(["PG","PTG"]),t.s) +B.AE=A.a(s(["S","Ll","M","M","I","G","S"]),t.s) +B.dV=new A.M2(0,"nonZero") +B.fl=new A.M2(1,"evenOdd") +B.a86=A.a(s([B.dV,B.fl]),A.ar("E")) +B.AF=A.a(s(["\u091c\u093e\u0928\u0947","\u092b\u0947\u092c\u094d\u0930\u0941","\u092e\u093e\u0930\u094d\u091a","\u090f\u092a\u094d\u0930\u093f","\u092e\u0947","\u091c\u0942\u0928","\u091c\u0941\u0932\u0948","\u0911\u0917","\u0938\u092a\u094d\u091f\u0947\u0902","\u0911\u0915\u094d\u091f\u094b","\u0928\u094b\u0935\u094d\u0939\u0947\u0902","\u0921\u093f\u0938\u0947\u0902"]),t.s) +B.a87=A.a(s(["1kv","2kv","3kv","4kv"]),t.s) +B.a3_=new A.qf(3,"error") +B.a88=A.a(s([B.dQ,B.y4,B.a3_,B.jc]),A.ar("E")) +B.a89=A.a(s(["1-chorak","2-chorak","3-chorak","4-chorak"]),t.s) +B.el=A.a(s(["domingo","lunes","martes","mi\xe9rcoles","jueves","viernes","s\xe1bado"]),t.s) +B.aZ=A.a(s(["Q1","Q2","Q3","Q4"]),t.s) +B.a8a=A.a(s(["\u0c24\u0c4d\u0c30\u0c481","\u0c24\u0c4d\u0c30\u0c482","\u0c24\u0c4d\u0c30\u0c483","\u0c24\u0c4d\u0c30\u0c484"]),t.s) +B.AG=A.a(s(["\u09a6\u09c7\u0993\u09ac\u09be\u09f0","\u09b8\u09cb\u09ae\u09ac\u09be\u09f0","\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09f0","\u09ac\u09c1\u09a7\u09ac\u09be\u09f0","\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09f0","\u09b6\u09c1\u0995\u09cd\u09f0\u09ac\u09be\u09f0","\u09b6\u09a8\u09bf\u09ac\u09be\u09f0"]),t.s) +B.AH=A.a(s(["\u043d\u0435\u0434\u0456\u043b\u044f","\u043f\u043e\u043d\u0435\u0434\u0456\u043b\u043e\u043a","\u0432\u0456\u0432\u0442\u043e\u0440\u043e\u043a","\u0441\u0435\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440","\u043f\u02bc\u044f\u0442\u043d\u0438\u0446\u044f","\u0441\u0443\u0431\u043e\u0442\u0430"]),t.s) +B.AI=A.a(s(["\u10d8\u10d0\u10dc","\u10d7\u10d4\u10d1","\u10db\u10d0\u10e0","\u10d0\u10de\u10e0","\u10db\u10d0\u10d8","\u10d8\u10d5\u10dc","\u10d8\u10d5\u10da","\u10d0\u10d2\u10d5","\u10e1\u10d4\u10e5","\u10dd\u10e5\u10e2","\u10dc\u10dd\u10d4","\u10d3\u10d4\u10d9"]),t.s) +B.AJ=A.a(s(["S","V","K","B","G","B","L","R","R","S","L","G"]),t.s) +B.AK=A.a(s(["janv.","febr.","marts","apr.","maijs","j\u016bn.","j\u016bl.","aug.","sept.","okt.","nov.","dec."]),t.s) +B.a8b=A.a(s(["I ketvirtis","II ketvirtis","III ketvirtis","IV ketvirtis"]),t.s) +B.a8c=A.a(s(["n","p","w","\u015b","c","p","s"]),t.s) +B.a8d=A.a(s(["de gen.","de febr.","de mar\xe7","d\u2019abr.","de maig","de juny","de jul.","d\u2019ag.","de set.","d\u2019oct.","de nov.","de des."]),t.s) +B.a8e=A.a(s(["\u044f\u043d\u0432.","\u0444\u0435\u0432\u0440.","\u043c\u0430\u0440.","\u0430\u043f\u0440.","\u043c\u0430\u044f","\u0438\u044e\u043d.","\u0438\u044e\u043b.","\u0430\u0432\u0433.","\u0441\u0435\u043d\u0442.","\u043e\u043a\u0442.","\u043d\u043e\u044f\u0431.","\u0434\u0435\u043a."]),t.s) +B.a8f=A.a(s(["EEEE, dd MMMM y","d MMMM y","d MMM y","dd/MM/yy"]),t.s) +B.a8g=A.a(s(["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03b1\u03c1","\u0391\u03c0\u03c1","\u039c\u03b1\u0390","\u0399\u03bf\u03c5\u03bd","\u0399\u03bf\u03c5\u03bb","\u0391\u03c5\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03b5","\u0394\u03b5\u03ba"]),t.s) +B.a8h=A.a(s(["EEEE, d. MMMM y","d. MMMM y","d. MMM y","dd.MM.yy"]),t.s) +B.hv=A.a(s(["S","M","D","M","D","F","S"]),t.s) +B.a8i=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","d MMM y","d/M/y"]),t.s) +B.aa=A.a(s(["HH:mm:ss zzzz","HH:mm:ss z","HH:mm:ss","HH:mm"]),t.s) +B.AL=A.a(s(["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"]),t.s) +B.AM=A.a(s(["\u044f\u043d\u0432\u0430\u0440\u044c","\u0444\u0435\u0432\u0440\u0430\u043b\u044c","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440\u0435\u043b\u044c","\u043c\u0430\u0439","\u0438\u044e\u043d\u044c","\u0438\u044e\u043b\u044c","\u0430\u0432\u0433\u0443\u0441\u0442","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044c","\u043e\u043a\u0442\u044f\u0431\u0440\u044c","\u043d\u043e\u044f\u0431\u0440\u044c","\u0434\u0435\u043a\u0430\u0431\u0440\u044c"]),t.s) +B.qb=A.a(s(["\u0698\u0627\u0646\u0648\u06cc\u0647","\u0641\u0648\u0631\u06cc\u0647","\u0645\u0627\u0631\u0633","\u0622\u0648\u0631\u06cc\u0644","\u0645\u0647","\u0698\u0648\u0626\u0646","\u0698\u0648\u0626\u06cc\u0647","\u0627\u0648\u062a","\u0633\u067e\u062a\u0627\u0645\u0628\u0631","\u0627\u06a9\u062a\u0628\u0631","\u0646\u0648\u0627\u0645\u0628\u0631","\u062f\u0633\u0627\u0645\u0628\u0631"]),t.s) +B.mh=A.a(s(["1.\xba trimestre","2.\xba trimestre","3.\xba trimestre","4.\xba trimestre"]),t.s) +B.AN=A.a(s(["voor Christus","na Christus"]),t.s) +B.a8j=A.a(s(["\u062c\u0646\u0648\u0631\u064a","\u0641\u0628\u0631\u0648\u0631\u064a","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u06cd","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u06cc","\u0627\u06ab\u0633\u062a","\u0633\u067e\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"]),t.s) +B.a8k=A.a(s(["EEEE, d MMMM, y","d MMMM y","dd-MMM-y","dd/MM/yy"]),t.s) +B.a8l=A.a(s(["p.m.\u0113.","m.\u0113."]),t.s) +B.mi=A.a(s(["\u043d\u0434","\u043f\u043d","\u0432\u0442","\u0441\u0440","\u0447\u0442","\u043f\u0442","\u0441\u0431"]),t.s) +B.a8m=A.a(s(["gener","febrer","mar\xe7","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre"]),t.s) +B.a8n=A.a(s(["prie\u0161piet","popiet"]),t.s) +B.AO=A.a(s(["\u0a10\u0a24","\u0a38\u0a4b\u0a2e","\u0a2e\u0a70\u0a17\u0a32","\u0a2c\u0a41\u0a71\u0a27","\u0a35\u0a40\u0a30","\u0a38\u0a3c\u0a41\u0a71\u0a15\u0a30","\u0a38\u0a3c\u0a28\u0a3f\u0a71\u0a1a\u0a30"]),t.s) +B.em=A.a(s(["a.m.","p.m."]),t.s) +B.a8o=A.a(s(["sije\u010dnja","velja\u010de","o\u017eujka","travnja","svibnja","lipnja","srpnja","kolovoza","rujna","listopada","studenoga","prosinca"]),t.s) +B.a8p=A.a(s(["S1","S2","S3","S4"]),t.s) +B.a8q=A.a(s(["prie\u0161 Krist\u0173","po Kristaus"]),t.s) +B.AP=A.a(s(["G","F","M","A","M","G","L","A","S","O","N","D"]),t.s) +B.a8r=A.a(s(["SA","CH"]),t.s) +B.mj=A.a(s(["\u0627\u0644\u0623\u062d\u062f","\u0627\u0644\u0627\u062b\u0646\u064a\u0646","\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621","\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621","\u0627\u0644\u062e\u0645\u064a\u0633","\u0627\u0644\u062c\u0645\u0639\u0629","\u0627\u0644\u0633\u0628\u062a"]),t.s) +B.AQ=A.a(s(["\u056f\u056b\u0580\u0561\u056f\u056b","\u0565\u0580\u056f\u0578\u0582\u0577\u0561\u0562\u0569\u056b","\u0565\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056b","\u0579\u0578\u0580\u0565\u0584\u0577\u0561\u0562\u0569\u056b","\u0570\u056b\u0576\u0563\u0577\u0561\u0562\u0569\u056b","\u0578\u0582\u0580\u0562\u0561\u0569","\u0577\u0561\u0562\u0561\u0569"]),t.s) +B.AR=A.a(s(["\u0627\u0644\u0631\u0628\u0639 \u0627\u0644\u0623\u0648\u0644","\u0627\u0644\u0631\u0628\u0639 \u0627\u0644\u062b\u0627\u0646\u064a","\u0627\u0644\u0631\u0628\u0639 \u0627\u0644\u062b\u0627\u0644\u062b","\u0627\u0644\u0631\u0628\u0639 \u0627\u0644\u0631\u0627\u0628\u0639"]),t.s) +B.a8s=A.a(s(["\u0d9a\u0dcf\u0dbb\u0dca:1","\u0d9a\u0dcf\u0dbb\u0dca:2","\u0d9a\u0dcf\u0dbb\u0dca:3","\u0d9a\u0dcf\u0dbb\u0dca:4"]),t.s) +B.a8t=A.a(s(["SM","M"]),t.s) +B.AS=A.a(s(["\u043d","\u043f","\u0430","\u0441","\u0447","\u043f","\u0441"]),t.s) +B.AT=A.a(s(["J","V","M","A","M","J","J","A","S","O","N","D"]),t.s) +B.AU=A.a(s(["\u1007\u1014\u103a\u1014\u101d\u102b\u101b\u102e","\u1016\u1031\u1016\u1031\u102c\u103a\u101d\u102b\u101b\u102e","\u1019\u1010\u103a","\u1027\u1015\u103c\u102e","\u1019\u1031","\u1007\u103d\u1014\u103a","\u1007\u1030\u101c\u102d\u102f\u1004\u103a","\u1029\u1002\u102f\u1010\u103a","\u1005\u1000\u103a\u1010\u1004\u103a\u1018\u102c","\u1021\u1031\u102c\u1000\u103a\u1010\u102d\u102f\u1018\u102c","\u1014\u102d\u102f\u101d\u1004\u103a\u1018\u102c","\u1012\u102e\u1007\u1004\u103a\u1018\u102c"]),t.s) +B.a8u=A.a(s(["prije nove ere","nove ere"]),t.s) +B.a8v=A.a(s(["{1} 'am' {0}","{1} 'am' {0}","{1} {0}","{1} {0}"]),t.s) +B.a8w=A.a(s(["{1} 'om' {0}","{1} 'om' {0}","{1} {0}","{1} {0}"]),t.s) +B.AV=A.a(s(["saus.","vas.","kov.","bal.","geg.","bir\u017e.","liep.","rugp.","rugs.","spal.","lapkr.","gruod."]),t.s) +B.AW=A.a(s(["H:mm:ss (zzzz)","H:mm:ss z","H:mm:ss","H:mm"]),t.s) +B.AX=A.a(s(["n","p","t","s","\u010d","p","s"]),t.s) +B.a8x=A.a(s(["a h\uc2dc m\ubd84 s\ucd08 zzzz","a h\uc2dc m\ubd84 s\ucd08 z","a h:mm:ss","a h:mm"]),t.s) +B.a8y=A.a(s(["\u03c0.\u03bc.","\u03bc.\u03bc."]),t.s) +B.aoV=new A.Oz(0,"left") +B.aoW=new A.Oz(1,"right") +B.a8z=A.a(s([B.aoV,B.aoW]),A.ar("E")) +B.AY=A.a(s(["pr. Kr.","po Kr."]),t.s) +B.dl=A.a(s(["T1","T2","T3","T4"]),t.s) +B.a8A=A.a(s(["\u0698\u0627\u0646\u0648\u06cc\u0647\u0654","\u0641\u0648\u0631\u06cc\u0647\u0654","\u0645\u0627\u0631\u0633","\u0622\u0648\u0631\u06cc\u0644","\u0645\u0647\u0654","\u0698\u0648\u0626\u0646","\u0698\u0648\u0626\u06cc\u0647\u0654","\u0627\u0648\u062a","\u0633\u067e\u062a\u0627\u0645\u0628\u0631","\u0627\u06a9\u062a\u0628\u0631","\u0646\u0648\u0627\u0645\u0628\u0631","\u062f\u0633\u0627\u0645\u0628\u0631"]),t.s) +B.mk=A.a(s(["\u091c\u0928\u0935\u0930\u0940","\u092b\u0947\u092c\u094d\u0930\u0941\u0905\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u093f\u0932","\u092e\u0947","\u091c\u0941\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u091f","\u0938\u0947\u092a\u094d\u091f\u0947\u092e\u094d\u092c\u0930","\u0905\u0915\u094d\u091f\u094b\u092c\u0930","\u0928\u094b\u092d\u0947\u092e\u094d\u092c\u0930","\u0921\u093f\u0938\u0947\u092e\u094d\u092c\u0930"]),t.s) +B.AZ=A.a(s(["N","P","\xda","S","\u010c","P","S"]),t.s) +B.a8B=A.a(s(["{1} \u0b85\u0ba9\u0bcd\u0bb1\u0bc1 {0}","{1} \u0b85\u0ba9\u0bcd\u0bb1\u0bc1 {0}","{1}, {0}","{1}, {0}"]),t.s) +B.a8C=A.a(s(["EEEE, d MMMM, y","d MMMM, y","dd-MM-y","d-M-y"]),t.s) +B.a8D=A.a(s(["1\u0ca8\u0cc7 \u0ca4\u0ccd\u0cb0\u0cc8\u0cae\u0cbe\u0cb8\u0cbf\u0c95","2\u0ca8\u0cc7 \u0ca4\u0ccd\u0cb0\u0cc8\u0cae\u0cbe\u0cb8\u0cbf\u0c95","3\u0ca8\u0cc7 \u0ca4\u0ccd\u0cb0\u0cc8\u0cae\u0cbe\u0cb8\u0cbf\u0c95","4\u0ca8\u0cc7 \u0ca4\u0ccd\u0cb0\u0cc8\u0cae\u0cbe\u0cb8\u0cbf\u0c95"]),t.s) +B.a8E=A.a(s(["TO","TK"]),t.s) +B.B_=A.a(s(["Januwari","Februwari","Mashi","Ephreli","Meyi","Juni","Julayi","Agasti","Septhemba","Okthoba","Novemba","Disemba"]),t.s) +B.a8F=A.a(s(["1. ceturksnis","2. ceturksnis","3. ceturksnis","4. ceturksnis"]),t.s) +B.ae=new A.oX(0,"rtl") +B.i=new A.oX(1,"ltr") +B.a8G=A.a(s([B.ae,B.i]),A.ar("E")) +B.B0=A.a(s(["\u7d00\u5143\u524d","\u897f\u66a6"]),t.s) +B.f4=A.a(s(["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t.s) +B.a8H=A.a(s(["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]),t.ee) +B.hw=A.a(s(["v. Chr.","n. Chr."]),t.s) +B.a8I=A.a(s(["ikota yesi-1","ikota yesi-2","ikota yesi-3","ikota yesi-4"]),t.s) +B.B1=A.a(s(["nedelja","ponedeljak","utorak","sreda","\u010detvrtak","petak","subota"]),t.s) +B.a8J=A.a(s(["\uc81c 1/4\ubd84\uae30","\uc81c 2/4\ubd84\uae30","\uc81c 3/4\ubd84\uae30","\uc81c 4/4\ubd84\uae30"]),t.s) +B.b7=A.a(s(["January","February","March","April","May","June","July","August","September","October","November","December"]),t.s) +B.a8K=A.a(s(["S","L","M","K","M","C","L","S","W","P","L","G"]),t.s) +B.a8L=A.a(s(["1. \u010det.","2. \u010det.","3. \u010det.","4. \u010det."]),t.s) +B.B2=A.a(s(["\u05d9\u05d5\u05dd \u05d0\u05f3","\u05d9\u05d5\u05dd \u05d1\u05f3","\u05d9\u05d5\u05dd \u05d2\u05f3","\u05d9\u05d5\u05dd \u05d3\u05f3","\u05d9\u05d5\u05dd \u05d4\u05f3","\u05d9\u05d5\u05dd \u05d5\u05f3","\u05e9\u05d1\u05ea"]),t.s) +B.jn=A.a(s(["s\xf8n.","man.","tir.","ons.","tor.","fre.","l\xf8r."]),t.s) +B.a8M=A.a(s(["\u0421","\u041b","\u0411","\u041a","\u0422","\u0427","\u041b","\u0421","\u0412","\u0416","\u041b","\u0413"]),t.s) +B.a8N=A.a(s(["\u0d1e\u0d3e\u0d2f\u0d31\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d33\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d1a\u0d4a\u0d35\u0d4d\u0d35\u0d3e\u0d34\u0d4d\u0d1a","\u0d2c\u0d41\u0d27\u0d28\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d36\u0d28\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u200c\u0d1a"]),t.s) +B.a8O=A.a(s(["\u0da2\u0db1","\u0db4\u0dd9\u0db6","\u0db8\u0dcf\u0dbb\u0dca","\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca","\u0db8\u0dd0\u0dba\u0dd2","\u0da2\u0dd6\u0db1\u0dd2","\u0da2\u0dd6\u0dbd\u0dd2","\u0d85\u0d9c\u0ddd","\u0dc3\u0dd0\u0db4\u0dca","\u0d94\u0d9a\u0dca","\u0db1\u0ddc\u0dc0\u0dd0","\u0daf\u0dd9\u0dc3\u0dd0"]),t.s) +B.B3=A.a(s(["So","Mo","Di","Mi","Do","Fr","Sa"]),t.s) +B.qc=A.a(s(["EEEE, d. MMMM y","d. MMMM y","dd.MM.y","dd.MM.yy"]),t.s) +B.a8P=A.a(s(["ah:mm:ss [zzzz]","ah:mm:ss [z]","ah:mm:ss","ah:mm"]),t.s) +B.a8Q=A.a(s(["EEEE, MMMM d, y","MMMM d, y","MMM d, y","y-MM-dd"]),t.s) +B.B4=A.a(s(["\u0b30","\u0b38\u0b4b","\u0b2e","\u0b2c\u0b41","\u0b17\u0b41","\u0b36\u0b41","\u0b36"]),t.s) +B.B5=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","y-MM-dd"]),t.s) +B.B6=A.a(s(["\u041d","\u041f","\u0412","\u0421","\u0427","\u041f","\u0421"]),t.s) +B.a8R=A.a(s(["{1}\u060c \u0633\u0627\u0639\u062a {0}","{1}\u060c \u0633\u0627\u0639\u062a {0}","{1}\u060c\u200f {0}","{1}\u060c\u200f {0}"]),t.s) +B.a8S=A.a(s(["\u03a41","\u03a42","\u03a43","\u03a44"]),t.s) +B.a8T=A.a(s(["{1} 'kl'. {0}","{1} 'kl'. {0}","{1} {0}","{1} {0}"]),t.s) +B.B7=A.a(s(["\u0a9c\u0abe","\u0aab\u0ac7","\u0aae\u0abe","\u0a8f","\u0aae\u0ac7","\u0a9c\u0ac2","\u0a9c\u0ac1","\u0a91","\u0ab8","\u0a91","\u0aa8","\u0aa1\u0abf"]),t.s) +B.a8U=A.a(s(["\u0907. \u0938. \u092a\u0942.","\u0907. \u0938."]),t.s) +B.a8V=A.a(s(["y MMMM d, EEEE","y MMMM d","y MMM d","yy/M/d"]),t.s) +B.B8=A.a(s([0,0,32776,33792,1,10240,0,0]),t.t) +B.a8W=A.a(s([47,47,47,47,72,97,122,147]),t.t) +B.B9=A.a(s([72,84,84,80,47,49,46,49]),t.t) +B.a8X=A.a(s(["\u0434\u0430 \u043d\u0430\u0440\u0430\u0434\u0436\u044d\u043d\u043d\u044f \u0425\u0440\u044b\u0441\u0442\u043e\u0432\u0430","\u0430\u0434 \u043d\u0430\u0440\u0430\u0434\u0436\u044d\u043d\u043d\u044f \u0425\u0440\u044b\u0441\u0442\u043e\u0432\u0430"]),t.s) +B.a8Y=A.a(s(["\u0642\u0628\u0644 \u0627\u0644\u0645\u064a\u0644\u0627\u062f","\u0645\u064a\u0644\u0627\u062f\u064a"]),t.s) +B.Ba=A.a(s(["\u0a10","\u0a38\u0a4b","\u0a2e\u0a70","\u0a2c\u0a41\u0a71","\u0a35\u0a40","\u0a38\u0a3c\u0a41\u0a71","\u0a38\u0a3c"]),t.s) +B.a8Z=A.a(s(["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"]),t.s) +B.Bb=A.a(s(["s\xf6n","m\xe5n","tis","ons","tors","fre","l\xf6r"]),t.s) +B.Bc=A.a(s(["\u12a5","\u1230","\u121b","\u1228","\u1210","\u12d3","\u1245"]),t.s) +B.a9_=A.a(s(["EEEE, d MMMM y","d MMMM y","d/MM/y","d/MM/yy"]),t.s) +B.ml=A.a(s(["\u1010\u1014\u1004\u103a\u1039\u1002\u1014\u103d\u1031","\u1010\u1014\u1004\u103a\u1039\u101c\u102c","\u1021\u1004\u103a\u1039\u1002\u102b","\u1017\u102f\u1012\u1039\u1013\u101f\u1030\u1038","\u1000\u103c\u102c\u101e\u1015\u1010\u1031\u1038","\u101e\u1031\u102c\u1000\u103c\u102c","\u1005\u1014\u1031"]),t.s) +B.a90=A.a(s(["\u042f\u043d\u0432","\u0424\u0435\u0432","\u041c\u0430\u0440","\u0410\u043f\u0440","\u041c\u0430\u0439","\u0418\u044e\u043d","\u0418\u044e\u043b","\u0410\u0432\u0433","\u0421\u0435\u043d","\u041e\u043a\u0442","\u041d\u043e\u044f","\u0414\u0435\u043a"]),t.s) +B.a91=A.a(s(["\u0996\u09cd\u09f0\u09c0\u0983 \u09aa\u09c2\u0983","\u0996\u09cd\u09f0\u09c0\u0983"]),t.s) +B.a92=A.a(s(["\u091c\u0928","\u092b\u0947\u0947\u092c","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930","\u092e\u0947","\u091c\u0941\u0928","\u091c\u0941\u0932","\u0905\u0917","\u0938\u0947\u092a","\u0905\u0915\u094d\u091f\u094b","\u0928\u094b\u092d\u0947","\u0921\u093f\u0938\u0947"]),t.s) +B.Bd=A.a(s(["\u044f\u043d\u0443","\u0444\u0435\u0432","\u043c\u0430\u0440\u0442","\u0430\u043f\u0440","\u043c\u0430\u0439","\u044e\u043d\u0438","\u044e\u043b\u0438","\u0430\u0432\u0433","\u0441\u0435\u043f","\u043e\u043a\u0442","\u043d\u043e\u0435","\u0434\u0435\u043a"]),t.s) +B.Be=A.a(s(["\u049b\u0430\u04a3.","\u0430\u049b\u043f.","\u043d\u0430\u0443.","\u0441\u04d9\u0443.","\u043c\u0430\u043c.","\u043c\u0430\u0443.","\u0448\u0456\u043b.","\u0442\u0430\u043c.","\u049b\u044b\u0440.","\u049b\u0430\u0437.","\u049b\u0430\u0440.","\u0436\u0435\u043b."]),t.s) +B.a93=A.a(s(["\u0434\u043e \u043d. \u044d.","\u043d. \u044d."]),t.s) +B.Bf=A.a(s(["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0933\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"]),t.s) +B.Bg=A.a(s(["jaan","veebr","m\xe4rts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets"]),t.s) +B.a94=A.a(s(["tremujori i par\xeb","tremujori i dyt\xeb","tremujori i tret\xeb","tremujori i kat\xebrt"]),t.s) +B.a95=A.a(s(["de.","du."]),t.s) +B.a96=A.a(s(["die","h\xebn","mar","m\xebr","enj","pre","sht"]),t.s) +B.Bh=A.a(s(["domenica","luned\xec","marted\xec","mercoled\xec","gioved\xec","venerd\xec","sabato"]),t.s) +B.Bi=A.a(s(["Ocak","\u015eubat","Mart","Nisan","May\u0131s","Haziran","Temmuz","A\u011fustos","Eyl\xfcl","Ekim","Kas\u0131m","Aral\u0131k"]),t.s) +B.mm=A.a(s(["\u064a\u0648\u0646\u06cd","\u062f\u0648\u0646\u06cd","\u062f\u0631\u06d0\u0646\u06cd","\u0685\u0644\u0631\u0646\u06cd","\u067e\u064a\u0646\u0681\u0646\u06cd","\u062c\u0645\u0639\u0647","\u0627\u0648\u0646\u06cd"]),t.s) +B.a97=A.a(s(["gen.","febr.","mar\xe7","abr.","maig","juny","jul.","ag.","set.","oct.","nov.","des."]),t.s) +B.mn=A.a(s(["antes de Cristo","despu\xe9s de Cristo"]),t.s) +B.a98=A.a(s(["{1} 'klo' {0}","{1} 'klo' {0}","{1} 'klo' {0}","{1} {0}"]),t.s) +B.a9b=A.a(s(["xaneiro","febreiro","marzo","abril","maio","xu\xf1o","xullo","agosto","setembro","outubro","novembro","decembro"]),t.s) +B.Bj=A.a(s(["Ch\u1ee7 Nh\u1eadt","Th\u1ee9 Hai","Th\u1ee9 Ba","Th\u1ee9 T\u01b0","Th\u1ee9 N\u0103m","Th\u1ee9 S\xe1u","Th\u1ee9 B\u1ea3y"]),t.s) +B.a9c=A.a(s(["avanti Cristo","dopo Cristo"]),t.s) +B.a9d=A.a(s(["\u0434\u043e \u0420\u043e\u0436\u0434\u0435\u0441\u0442\u0432\u0430 \u0425\u0440\u0438\u0441\u0442\u043e\u0432\u0430","\u043e\u0442 \u0420\u043e\u0436\u0434\u0435\u0441\u0442\u0432\u0430 \u0425\u0440\u0438\u0441\u0442\u043e\u0432\u0430"]),t.s) +B.Bk=A.a(s(["\u09b0\u09ac\u09bf\u09ac\u09be\u09b0","\u09b8\u09cb\u09ae\u09ac\u09be\u09b0","\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0","\u09ac\u09c1\u09a7\u09ac\u09be\u09b0","\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0","\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0","\u09b6\u09a8\u09bf\u09ac\u09be\u09b0"]),t.s) +B.a9e=A.a(s(["\u092a\u0942\u0930\u094d\u0935\u093e\u0939\u094d\u0928","\u0905\u092a\u0930\u093e\u0939\u094d\u0928"]),t.s) +B.a9f=A.a(s(["B.","B.e.","\xc7.a.","\xc7.","C.a.","C.","\u015e."]),t.s) +B.Bl=A.a(s(["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"]),t.s) +B.a9g=A.a(s(["v.Chr.","n.Chr."]),t.s) +B.a9h=A.a(s(["Sul","Llun","Maw","Mer","Iau","Gwen","Sad"]),t.s) +B.a9i=A.a(s(["{1} 'n\xeb' {0}","{1} 'n\xeb' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.Bm=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","d MMM y","d/M/yy"]),t.s) +B.a9j=A.a(s(["\u042f\u043d\u0432\u0430\u0440\u044c","\u0424\u0435\u0432\u0440\u0430\u043b\u044c","\u041c\u0430\u0440\u0442","\u0410\u043f\u0440\u0435\u043b\u044c","\u041c\u0430\u0439","\u0418\u044e\u043d\u044c","\u0418\u044e\u043b\u044c","\u0410\u0432\u0433\u0443\u0441\u0442","\u0421\u0435\u043d\u0442\u044f\u0431\u0440\u044c","\u041e\u043a\u0442\u044f\u0431\u0440\u044c","\u041d\u043e\u044f\u0431\u0440\u044c","\u0414\u0435\u043a\u0430\u0431\u0440\u044c"]),t.s) +B.a9k=A.a(s(["da manh\xe3","da tarde"]),t.s) +B.a9l=A.a(s(["y\u5e74M\u6708d\u65e5 EEEE","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5","y/M/d"]),t.s) +B.hx=A.a(s(["1\uc6d4","2\uc6d4","3\uc6d4","4\uc6d4","5\uc6d4","6\uc6d4","7\uc6d4","8\uc6d4","9\uc6d4","10\uc6d4","11\uc6d4","12\uc6d4"]),t.s) +B.a9m=A.a(s(["\u0a08. \u0a2a\u0a42.","\u0a38\u0a70\u0a28"]),t.s) +B.a9n=A.a(s(["M\xd6","MS"]),t.s) +B.a9o=A.a(s(["leden","\xfanor","b\u0159ezen","duben","kv\u011bten","\u010derven","\u010dervenec","srpen","z\xe1\u0159\xed","\u0159\xedjen","listopad","prosinec"]),t.s) +B.Bn=A.a(s(["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","pa\u017a","lis","gru"]),t.s) +B.a9p=A.a(s(["EEEE \u0e97\u0eb5 d MMMM G y","d MMMM y","d MMM y","d/M/y"]),t.s) +B.a9q=A.a(s(["sausis","vasaris","kovas","balandis","gegu\u017e\u0117","bir\u017eelis","liepa","rugpj\u016btis","rugs\u0117jis","spalis","lapkritis","gruodis"]),t.s) +B.Bo=A.a(s(["bazar","bazar ert\u0259si","\xe7\u0259r\u015f\u0259nb\u0259 ax\u015fam\u0131","\xe7\u0259r\u015f\u0259nb\u0259","c\xfcm\u0259 ax\u015fam\u0131","c\xfcm\u0259","\u015f\u0259nb\u0259"]),t.s) +B.a9r=A.a(s(["\u0406 \u0442\u043e\u049b\u0441\u0430\u043d","\u0406\u0406 \u0442\u043e\u049b\u0441\u0430\u043d","\u0406\u0406\u0406 \u0442\u043e\u049b\u0441\u0430\u043d","IV \u0442\u043e\u049b\u0441\u0430\u043d"]),t.s) +B.Bp=A.a(s(["\u10d9\u10d5\u10d8","\u10dd\u10e0\u10e8","\u10e1\u10d0\u10db","\u10dd\u10d7\u10ee","\u10ee\u10e3\u10d7","\u10de\u10d0\u10e0","\u10e8\u10d0\u10d1"]),t.s) +B.Bq=A.a(s(["\u09a6\u09c7\u0993","\u09b8\u09cb\u09ae","\u09ae\u0999\u09cd\u0997\u09b2","\u09ac\u09c1\u09a7","\u09ac\u09c3\u09b9","\u09b6\u09c1\u0995\u09cd\u09f0","\u09b6\u09a8\u09bf"]),t.s) +B.a9s=A.a(s(["HH:mm:ss (zzzz)","HH:mm:ss z","HH:mm:ss","HH:mm"]),t.s) +B.Br=A.a(s(["\u0d12\u0d28\u0d4d\u0d28\u0d3e\u0d02 \u0d2a\u0d3e\u0d26\u0d02","\u0d30\u0d23\u0d4d\u0d1f\u0d3e\u0d02 \u0d2a\u0d3e\u0d26\u0d02","\u0d2e\u0d42\u0d28\u0d4d\u0d28\u0d3e\u0d02 \u0d2a\u0d3e\u0d26\u0d02","\u0d28\u0d3e\u0d32\u0d3e\u0d02 \u0d2a\u0d3e\u0d26\u0d02"]),t.s) +B.mo=A.a(s(["nedjelja","ponedjeljak","utorak","srijeda","\u010detvrtak","petak","subota"]),t.s) +B.mp=A.a(s(["\u0627\u062a\u0648\u0627\u0631","\u067e\u06cc\u0631","\u0645\u0646\u06af\u0644","\u0628\u062f\u06be","\u062c\u0645\u0639\u0631\u0627\u062a","\u062c\u0645\u0639\u06c1","\u06c1\u0641\u062a\u06c1"]),t.s) +B.a9t=A.a(s(["1. \u010detrtletje","2. \u010detrtletje","3. \u010detrtletje","4. \u010detrtletje"]),t.s) +B.a9u=A.a(s(["aC","dC"]),t.s) +B.Bs=A.a(s(["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","n\xebntor","dhjetor"]),t.s) +B.Bt=A.a(s(["\u1798","\u1780","\u1798","\u1798","\u17a7","\u1798","\u1780","\u179f","\u1780","\u178f","\u179c","\u1792"]),t.s) +B.Bu=A.a(s(["\u049a","\u0410","\u041d","\u0421","\u041c","\u041c","\u0428","\u0422","\u049a","\u049a","\u049a","\u0416"]),t.s) +B.Bv=A.a(s(["jan.","feb.","mar.","apr.","ma\xed","j\xfan.","j\xfal.","\xe1g\xfa.","sep.","okt.","n\xf3v.","des."]),t.s) +B.a0V=new A.JO(null) +B.a0W=new A.JP(null) +B.a2O=new A.BN(B.a0W,null) +B.akL=new A.Ml(null) +B.a2P=new A.BN(B.akL,null) +B.a9w=A.a(s([B.a0V,B.a2O,B.a2P]),t.p) +B.a9v=A.a(s(["1\u0ab2\u0acb \u0aa4\u0acd\u0ab0\u0abf\u0aae\u0abe\u0ab8","2\u0a9c\u0acb \u0aa4\u0acd\u0ab0\u0abf\u0aae\u0abe\u0ab8","3\u0a9c\u0acb \u0aa4\u0acd\u0ab0\u0abf\u0aae\u0abe\u0ab8","4\u0aa5\u0acb \u0aa4\u0acd\u0ab0\u0abf\u0aae\u0abe\u0ab8"]),t.s) +B.a9x=A.a(s(["\u043f\u0440\u0435\u0434\u0438 \u0425\u0440\u0438\u0441\u0442\u0430","\u0441\u043b\u0435\u0434 \u0425\u0440\u0438\u0441\u0442\u0430"]),t.s) +B.dm=A.a(s(["{1} 'at' {0}","{1} 'at' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.Bw=A.a(s(["janv\u0101ris","febru\u0101ris","marts","apr\u012blis","maijs","j\u016bnijs","j\u016blijs","augusts","septembris","oktobris","novembris","decembris"]),t.s) +B.a9y=A.a(s(["\u17a2\u17b6\u1791\u17b7\u178f\u17d2\u1799","\u1785\u17d0\u1793\u17d2\u1791","\u17a2\u1784\u17d2\u1782\u17b6\u179a","\u1796\u17bb\u1792","\u1796\u17d2\u179a\u17a0\u179f\u17d2\u1794\u178f\u17b7\u17cd","\u179f\u17bb\u1780\u17d2\u179a","\u179f\u17c5\u179a\u17cd"]),t.s) +B.Bx=A.a(s(["A","I","S","R","K","J","S"]),t.s) +B.f5=A.a(s(["am","pm"]),t.s) +B.a9z=A.a(s(["I \u10d9\u10d5.","II \u10d9\u10d5.","III \u10d9\u10d5.","IV \u10d9\u10d5."]),t.s) +B.a9A=A.a(s(["\u0ec4\u0e95\u0ea3\u0ea1\u0eb2\u0e94 1","\u0ec4\u0e95\u0ea3\u0ea1\u0eb2\u0e94 2","\u0ec4\u0e95\u0ea3\u0ea1\u0eb2\u0e94 3","\u0ec4\u0e95\u0ea3\u0ea1\u0eb2\u0e94 4"]),t.s) +B.hy=A.a(s(["f.Kr.","e.Kr."]),t.s) +B.By=A.a(s(["Son","Mso","Bil","Tha","Sin","Hla","Mgq"]),t.s) +B.a9B=A.a(s(["{1}, 'a' 'les' {0}","{1}, 'a' 'les' {0}","{1}, {0}","{1} {0}"]),t.s) +B.a9C=A.a(s(["y\u5e74M\u6708d\u65e5EEEE","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5","d/M/y"]),t.s) +B.Bz=A.a(s(["\u067e\u06c1\u0644\u06cc \u0633\u06c1 \u0645\u0627\u06c1\u06cc","\u062f\u0648\u0633\u0631\u06cc \u0633\u06c1 \u0645\u0627\u06c1\u06cc","\u062a\u06cc\u0633\u0631\u06cc \u0633\u06c1 \u0645\u0627\u06c1\u06cc","\u0686\u0648\u062a\u0647\u06cc \u0633\u06c1 \u0645\u0627\u06c1\u06cc"]),t.s) +B.BA=A.a(s(["ne","po","ut","st","\u0161t","pi","so"]),t.s) +B.BB=A.a(s(["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember"]),t.s) +B.a9D=A.a(s(["xan.","feb.","mar.","abr.","maio","xu\xf1o","xul.","ago.","set.","out.","nov.","dec."]),t.s) +B.a9E=A.a(s(["EEEE, d. MMMM y","d. MMMM y","d. MMM y","d.M.y"]),t.s) +B.BC=A.a(s(["CN","Th 2","Th 3","Th 4","Th 5","Th 6","Th 7"]),t.s) +B.a9F=A.a(s(["1:a kvartalet","2:a kvartalet","3:e kvartalet","4:e kvartalet"]),t.s) +B.mq=A.a(s(["Jan","Feb","M\xe4r","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"]),t.s) +B.a9G=A.a(s(["\u062c","\u0641","\u0645","\u0627","\u0645","\u062c","\u062c","\u0627","\u0633","\u0627","\u0646","\u062f"]),t.s) +B.a9H=A.a(s(["EEEE, dd MMMM y","dd MMMM y","dd MMM y","y/MM/dd"]),t.s) +B.en=A.a(s(["j","f","m","a","m","j","j","a","s","o","n","d"]),t.s) +B.BD=A.a(s(["text","multiline","number","phone","datetime","emailAddress","url","visiblePassword","name","address","none"]),t.s) +B.a9I=A.a(s(["\u0633\u0647\u200c\u0645\u0627\u0647\u0647\u0654 \u0627\u0648\u0644","\u0633\u0647\u200c\u0645\u0627\u0647\u0647\u0654 \u062f\u0648\u0645","\u0633\u0647\u200c\u0645\u0627\u0647\u0647\u0654 \u0633\u0648\u0645","\u0633\u0647\u200c\u0645\u0627\u0647\u0647\u0654 \u0686\u0647\u0627\u0631\u0645"]),t.s) +B.BE=A.a(s(["\u0a1c\u0a28\u0a35\u0a30\u0a40","\u0a2b\u0a3c\u0a30\u0a35\u0a30\u0a40","\u0a2e\u0a3e\u0a30\u0a1a","\u0a05\u0a2a\u0a4d\u0a30\u0a48\u0a32","\u0a2e\u0a08","\u0a1c\u0a42\u0a28","\u0a1c\u0a41\u0a32\u0a3e\u0a08","\u0a05\u0a17\u0a38\u0a24","\u0a38\u0a24\u0a70\u0a2c\u0a30","\u0a05\u0a15\u0a24\u0a42\u0a2c\u0a30","\u0a28\u0a35\u0a70\u0a2c\u0a30","\u0a26\u0a38\u0a70\u0a2c\u0a30"]),t.s) +B.a9J=A.a(s(["I kw.","II kw.","III kw.","IV kw."]),t.s) +B.BF=A.a(s(["\u091c\u0928\u0935\u0930\u0940","\u092b\u093c\u0930\u0935\u0930\u0940","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u093e\u0908","\u0905\u0917\u0938\u094d\u0924","\u0938\u093f\u0924\u0902\u092c\u0930","\u0905\u0915\u094d\u0924\u0942\u092c\u0930","\u0928\u0935\u0902\u092c\u0930","\u0926\u093f\u0938\u0902\u092c\u0930"]),t.s) +B.a9K=A.a(s(["\u0d1e","\u0d24\u0d3f","\u0d1a\u0d4a","\u0d2c\u0d41","\u0d35\u0d4d\u0d2f\u0d3e","\u0d35\u0d46","\u0d36"]),t.s) +B.a9L=A.a(s(["zzzz HH:mm:ss","z HH:mm:ss","HH:mm:ss","HH:mm"]),t.s) +B.BG=A.a(s(["S.M.","TM"]),t.s) +B.a9M=A.a(s(["click","scroll"]),t.s) +B.pH=new A.lL(0,100) +B.a0K=new A.lL(1,200) +B.a0M=new A.lL(2,300) +B.xu=new A.lL(8,900) +B.qd=A.a(s([B.pH,B.a0K,B.a0M,B.u,B.K,B.bm,B.cZ,B.pJ,B.xu]),A.ar("E")) +B.BH=A.a(s(["\u0d89\u0dbb\u0dd2\u0daf\u0dcf","\u0dc3\u0db3\u0dd4\u0daf\u0dcf","\u0d85\u0d9f\u0dc4\u0dbb\u0dd4\u0dc0\u0dcf\u0daf\u0dcf","\u0db6\u0daf\u0dcf\u0daf\u0dcf","\u0db6\u0dca\u200d\u0dbb\u0dc4\u0dc3\u0dca\u0db4\u0dad\u0dd2\u0db1\u0dca\u0daf\u0dcf","\u0dc3\u0dd2\u0d9a\u0dd4\u0dbb\u0dcf\u0daf\u0dcf","\u0dc3\u0dd9\u0db1\u0dc3\u0dd4\u0dbb\u0dcf\u0daf\u0dcf"]),t.s) +B.a9N=A.a(s(["\u0e95\u0ea11","\u0e95\u0ea12","\u0e95\u0ea13","\u0e95\u0ea14"]),t.s) +B.BI=A.a(s([0,0,26498,1023,65534,34815,65534,18431]),t.t) +B.a9O=A.a(s(["para Krishtit","mbas Krishtit"]),t.s) +B.mr=A.a(s(["\u0e21.\u0e04.","\u0e01.\u0e1e.","\u0e21\u0e35.\u0e04.","\u0e40\u0e21.\u0e22.","\u0e1e.\u0e04.","\u0e21\u0e34.\u0e22.","\u0e01.\u0e04.","\u0e2a.\u0e04.","\u0e01.\u0e22.","\u0e15.\u0e04.","\u0e1e.\u0e22.","\u0e18.\u0e04."]),t.s) +B.a9P=A.a(s(["cccc d. MMMM y","d. MMMM y","d.M.y","d.M.y"]),t.s) +B.a9Q=A.a(s(["\u0c15\u0c4d\u0c30\u0c40\u0c2a\u0c42","\u0c15\u0c4d\u0c30\u0c40\u0c36"]),t.s) +B.a9R=A.a(s(["1. hiruhilekoa","2. hiruhilekoa","3. hiruhilekoa","4. hiruhilekoa"]),t.s) +B.BJ=A.a(s(["\u043d\u0434","\u043f\u043d","\u0430\u045e","\u0441\u0440","\u0447\u0446","\u043f\u0442","\u0441\u0431"]),t.s) +B.BK=A.a(s(["ne","po","\xfat","st","\u010dt","p\xe1","so"]),t.s) +B.a9T=A.a(s(["EEEE, dd MMMM, y","d MMMM, y","d MMM. y","dd.MM.yy"]),t.s) +B.BL=A.a(s(["\u0c9c","\u0cab\u0cc6","\u0cae\u0cbe","\u0c8f","\u0cae\u0cc7","\u0c9c\u0cc2","\u0c9c\u0cc1","\u0c86","\u0cb8\u0cc6","\u0c85","\u0ca8","\u0ca1\u0cbf"]),t.s) +B.BM=A.a(s(["nedelja","ponedeljek","torek","sreda","\u010detrtek","petek","sobota"]),t.s) +B.BN=A.a(s(["\u0540","\u0553","\u0544","\u0531","\u0544","\u0540","\u0540","\u0555","\u054d","\u0540","\u0546","\u0534"]),t.s) +B.aa1=A.a(s(["\u063a.\u0645.","\u063a.\u0648."]),t.s) +B.BO=A.a(s(["\u043d\u0435\u0434\u0435\u0459\u0430","\u043f\u043e\u043d\u0435\u0434\u0435\u0459\u0430\u043a","\u0443\u0442\u043e\u0440\u0430\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0440\u0442\u0430\u043a","\u043f\u0435\u0442\u0430\u043a","\u0441\u0443\u0431\u043e\u0442\u0430"]),t.s) +B.BP=A.a(s(["\u0930\u0935\u093f\u0935\u093e\u0930","\u0938\u094b\u092e\u0935\u093e\u0930","\u092e\u0902\u0917\u0932\u0935\u093e\u0930","\u092c\u0941\u0927\u0935\u093e\u0930","\u0917\u0941\u0930\u0941\u0935\u093e\u0930","\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930","\u0936\u0928\u093f\u0935\u093e\u0930"]),t.s) +B.BQ=A.a(s(["\u0d89","\u0dc3","\u0d85","\u0db6","\u0db6\u0dca\u200d\u0dbb","\u0dc3\u0dd2","\u0dc3\u0dd9"]),t.s) +B.ms=A.a(s(["domingo","segunda-feira","ter\xe7a-feira","quarta-feira","quinta-feira","sexta-feira","s\xe1bado"]),t.s) +B.aa2=A.a(s(["eKr","pKr"]),t.s) +B.BR=A.a(s(["I","A","A","A","O","O","L"]),t.s) +B.BS=A.a(s(["\u0e21\u0e01\u0e23\u0e32\u0e04\u0e21","\u0e01\u0e38\u0e21\u0e20\u0e32\u0e1e\u0e31\u0e19\u0e18\u0e4c","\u0e21\u0e35\u0e19\u0e32\u0e04\u0e21","\u0e40\u0e21\u0e29\u0e32\u0e22\u0e19","\u0e1e\u0e24\u0e29\u0e20\u0e32\u0e04\u0e21","\u0e21\u0e34\u0e16\u0e38\u0e19\u0e32\u0e22\u0e19","\u0e01\u0e23\u0e01\u0e0e\u0e32\u0e04\u0e21","\u0e2a\u0e34\u0e07\u0e2b\u0e32\u0e04\u0e21","\u0e01\u0e31\u0e19\u0e22\u0e32\u0e22\u0e19","\u0e15\u0e38\u0e25\u0e32\u0e04\u0e21","\u0e1e\u0e24\u0e28\u0e08\u0e34\u0e01\u0e32\u0e22\u0e19","\u0e18\u0e31\u0e19\u0e27\u0e32\u0e04\u0e21"]),t.s) +B.aa3=A.a(s(["EEEE, d MMMM y '\u0440'.","d MMMM y '\u0440'.","d MMM y '\u0440'.","dd.MM.yy"]),t.s) +B.BT=A.a(s(["\u099c\u09be","\u09ab\u09c7","\u09ae\u09be","\u098f","\u09ae\u09c7","\u099c\u09c1\u09a8","\u099c\u09c1","\u0986","\u09b8\u09c7","\u0985","\u09a8","\u09a1\u09bf"]),t.s) +B.qe=A.a(s(["1. Quartal","2. Quartal","3. Quartal","4. Quartal"]),t.s) +B.aa4=A.a(s(["Jan","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"]),t.s) +B.BU=A.a(s(["\u10d8\u10d0\u10dc\u10d5\u10d0\u10e0\u10d8","\u10d7\u10d4\u10d1\u10d4\u10e0\u10d5\u10d0\u10da\u10d8","\u10db\u10d0\u10e0\u10e2\u10d8","\u10d0\u10de\u10e0\u10d8\u10da\u10d8","\u10db\u10d0\u10d8\u10e1\u10d8","\u10d8\u10d5\u10dc\u10d8\u10e1\u10d8","\u10d8\u10d5\u10da\u10d8\u10e1\u10d8","\u10d0\u10d2\u10d5\u10d8\u10e1\u10e2\u10dd","\u10e1\u10d4\u10e5\u10e2\u10d4\u10db\u10d1\u10d4\u10e0\u10d8","\u10dd\u10e5\u10e2\u10dd\u10db\u10d1\u10d4\u10e0\u10d8","\u10dc\u10dd\u10d4\u10db\u10d1\u10d4\u10e0\u10d8","\u10d3\u10d4\u10d9\u10d4\u10db\u10d1\u10d4\u10e0\u10d8"]),t.s) +B.aa5=A.a(s(["y\ub144 M\uc6d4 d\uc77c EEEE","y\ub144 M\uc6d4 d\uc77c","y. M. d.","yy. M. d."]),t.s) +B.aaf=A.a(s([]),t.QP) +B.BX=A.a(s([]),t.F) +B.BY=A.a(s([]),A.ar("E")) +B.aaa=A.a(s([]),t.E) +B.aab=A.a(s([]),t.fJ) +B.BW=A.a(s([]),A.ar("E")) +B.aa8=A.a(s([]),A.ar("E")) +B.aag=A.a(s([]),t.tc) +B.mt=A.a(s([]),t.jl) +B.aai=A.a(s([]),t.wi) +B.aah=A.a(s([]),A.ar("E>")) +B.aa7=A.a(s([]),t.Vz) +B.aaj=A.a(s([]),t.H9) +B.qg=A.a(s([]),t.AO) +B.jo=A.a(s([]),t.Bw) +B.aad=A.a(s([]),t.D1) +B.qh=A.a(s([]),t.QF) +B.BV=A.a(s([]),t.O6) +B.aac=A.a(s([]),t.fm) +B.aae=A.a(s([]),t.p) +B.aak=A.a(s([]),t.n) +B.qf=A.a(s([]),t.t) +B.C=A.a(s([]),t.ee) +B.aa9=A.a(s([]),t._m) +B.aal=A.a(s(["\u09aa\u09cd\u09f0\u09a5\u09ae \u09a4\u09bf\u09a8\u09bf\u09ae\u09be\u09b9","\u09a6\u09cd\u09ac\u09bf\u09a4\u09c0\u09af\u09bc \u09a4\u09bf\u09a8\u09bf\u09ae\u09be\u09b9","\u09a4\u09c3\u09a4\u09c0\u09af\u09bc \u09a4\u09bf\u09a8\u09bf\u09ae\u09be\u09b9","\u099a\u09a4\u09c1\u09f0\u09cd\u09a5 \u09a4\u09bf\u09a8\u09bf\u09ae\u09be\u09b9"]),t.s) +B.aam=A.a(s(["\u0644\u0647 \u0645\u06cc\u0644\u0627\u062f \u0648\u0693\u0627\u0646\u062f\u06d0","\u0645."]),t.s) +B.c3=A.a(s(["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sept","Oct","Nov","Dec"]),t.s) +B.tX=new A.fv(0,"DoubleQuote") +B.id=new A.fv(1,"SingleQuote") +B.bZ=new A.fv(2,"HebrewLetter") +B.nU=new A.fv(3,"CR") +B.nV=new A.fv(4,"LF") +B.u0=new A.fv(5,"Newline") +B.km=new A.fv(6,"Extend") +B.azk=new A.fv(7,"RegionalIndicator") +B.kn=new A.fv(8,"Format") +B.ko=new A.fv(9,"Katakana") +B.d8=new A.fv(10,"ALetter") +B.tY=new A.fv(11,"MidLetter") +B.tZ=new A.fv(12,"MidNum") +B.kk=new A.fv(13,"MidNumLet") +B.e2=new A.fv(14,"Numeric") +B.nT=new A.fv(15,"ExtendNumLet") +B.kl=new A.fv(16,"ZWJ") +B.u_=new A.fv(17,"WSegSpace") +B.PF=new A.fv(18,"Unknown") +B.aan=A.a(s([B.tX,B.id,B.bZ,B.nU,B.nV,B.u0,B.km,B.azk,B.kn,B.ko,B.d8,B.tY,B.tZ,B.kk,B.e2,B.nT,B.kl,B.u_,B.PF]),A.ar("E")) +B.aao=A.a(s(["s","l","m","k","m","c","l","s","w","p","l","g"]),t.s) +B.aap=A.a(s(["miloddan avvalgi","milodiy"]),t.s) +B.aaq=A.a(s(["\u0434\u043e \u043d\u0430\u0448\u043e\u0457 \u0435\u0440\u0438","\u043d\u0430\u0448\u043e\u0457 \u0435\u0440\u0438"]),t.s) +B.n5={name:0,index:1,unit:2,value:3,isSelected:4,isShowPointer:5} +B.agg=new A.ai(B.n5,["Tool1",0,"",0,!1,!1],t.yf) +B.agd=new A.ai(B.n5,["Tool2",1,"",1,!1,!1],t.yf) +B.age=new A.ai(B.n5,["Tool3",2,"mm",2,!1,!1],t.yf) +B.agf=new A.ai(B.n5,["Tool4",3,"mm",3,!1,!1],t.yf) +B.aar=A.a(s([B.agg,B.agd,B.age,B.agf]),t.H7) +B.aas=A.a(s(["antes de Cristo","despois de Cristo"]),t.s) +B.BZ=A.a(s(["\u0e44\u0e15\u0e23\u0e21\u0e32\u0e2a 1","\u0e44\u0e15\u0e23\u0e21\u0e32\u0e2a 2","\u0e44\u0e15\u0e23\u0e21\u0e32\u0e2a 3","\u0e44\u0e15\u0e23\u0e21\u0e32\u0e2a 4"]),t.s) +B.aat=A.a(s(["fm","em"]),t.s) +B.C_=A.a(s(["\u0570\u0576\u057e","\u0583\u057f\u057e","\u0574\u0580\u057f","\u0561\u057a\u0580","\u0574\u0575\u057d","\u0570\u0576\u057d","\u0570\u056c\u057d","\u0585\u0563\u057d","\u057d\u0565\u057a","\u0570\u0578\u056f","\u0576\u0578\u0575","\u0564\u0565\u056f"]),t.s) +B.C0=A.a(s(["\u099c","\u09ab","\u09ae","\u098f","\u09ae","\u099c","\u099c","\u0986","\u099b","\u0985","\u09a8","\u09a1"]),t.s) +B.C1=A.a(s(["\u043d\u0435\u0434\u0435\u043b\u0430","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0440\u0442\u043e\u043a","\u043f\u0435\u0442\u043e\u043a","\u0441\u0430\u0431\u043e\u0442\u0430"]),t.s) +B.C2=A.a(s(["\u0432\u043e\u0441\u043a\u0440\u0435\u0441\u0435\u043d\u044c\u0435","\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u044c\u043d\u0438\u043a","\u0432\u0442\u043e\u0440\u043d\u0438\u043a","\u0441\u0440\u0435\u0434\u0430","\u0447\u0435\u0442\u0432\u0435\u0440\u0433","\u043f\u044f\u0442\u043d\u0438\u0446\u0430","\u0441\u0443\u0431\u0431\u043e\u0442\u0430"]),t.s) +B.aau=A.a(s(["H \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 mm \u0e19\u0e32\u0e17\u0e35 ss \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 zzzz","H \u0e19\u0e32\u0e2c\u0e34\u0e01\u0e32 mm \u0e19\u0e32\u0e17\u0e35 ss \u0e27\u0e34\u0e19\u0e32\u0e17\u0e35 z","HH:mm:ss","HH:mm"]),t.s) +B.aav=A.a(s(["\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044f","\u043b\u044e\u0442\u0430\u0433\u0430","\u0441\u0430\u043a\u0430\u0432\u0456\u043a\u0430","\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a\u0430","\u043c\u0430\u044f","\u0447\u044d\u0440\u0432\u0435\u043d\u044f","\u043b\u0456\u043f\u0435\u043d\u044f","\u0436\u043d\u0456\u045e\u043d\u044f","\u0432\u0435\u0440\u0430\u0441\u043d\u044f","\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a\u0430","\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434\u0430","\u0441\u043d\u0435\u0436\u043d\u044f"]),t.s) +B.aaw=A.a(s(["\u0431\u0438\u0437\u0434\u0438\u043d \u0437\u0430\u043c\u0430\u043d\u0433\u0430 \u0447\u0435\u0439\u0438\u043d","\u0431\u0438\u0437\u0434\u0438\u043d \u0437\u0430\u043c\u0430\u043d"]),t.s) +B.C3=A.a(s(["\u0436\u0435\u043a\u0448\u0435\u043c\u0431\u0438","\u0434\u04af\u0439\u0448\u04e9\u043c\u0431\u04af","\u0448\u0435\u0439\u0448\u0435\u043c\u0431\u0438","\u0448\u0430\u0440\u0448\u0435\u043c\u0431\u0438","\u0431\u0435\u0439\u0448\u0435\u043c\u0431\u0438","\u0436\u0443\u043c\u0430","\u0438\u0448\u0435\u043c\u0431\u0438"]),t.s) +B.aax=A.a(s(["N","P","W","\u015a","C","P","S"]),t.s) +B.aay=A.a(s(["Sv\u0113td.","Pirmd.","Otrd.","Tre\u0161d.","Ceturtd.","Piektd.","Sestd."]),t.s) +B.C5=A.a(s(["S","P","A","T","K","P","\u0160"]),t.s) +B.C6=A.a(s(["\u043d","\u043f","\u0443","\u0441","\u0447","\u043f","\u0441"]),t.s) +B.mu=A.a(s(["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"]),t.s) +B.bq=A.a(s(["1","2","3","4","5","6","7","8","9","10","11","12"]),t.s) +B.C4=A.a(s(["\u091c\u0928\u0970","\u092b\u093c\u0930\u0970","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930\u0948\u0932","\u092e\u0908","\u091c\u0942\u0928","\u091c\u0941\u0932\u0970","\u0905\u0917\u0970","\u0938\u093f\u0924\u0970","\u0905\u0915\u094d\u0924\u0942\u0970","\u0928\u0935\u0970","\u0926\u093f\u0938\u0970"]),t.s) +B.C7=A.a(s(["\u10d9\u10d5\u10d8\u10e0\u10d0","\u10dd\u10e0\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8","\u10e1\u10d0\u10db\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8","\u10dd\u10d7\u10ee\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8","\u10ee\u10e3\u10d7\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8","\u10de\u10d0\u10e0\u10d0\u10e1\u10d9\u10d4\u10d5\u10d8","\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8"]),t.s) +B.aaA=A.a(s(["X","F","M","A","M","X","X","A","S","O","N","D"]),t.s) +B.C8=A.a(s(["1er trimestre","2e trimestre","3e trimestre","4e trimestre"]),t.s) +B.aaB=A.a(s(["\u0441","\u043b","\u0431","\u043a","\u0442","\u0447","\u043b","\u0441","\u0432","\u0436","\u043b","\u0433"]),t.s) +B.aaC=A.a(s(["eKr.","jKr."]),t.s) +B.C9=A.a(s(["\u0432\u0441","\u043f\u043d","\u0432\u0442","\u0441\u0440","\u0447\u0442","\u043f\u0442","\u0441\u0431"]),t.s) +B.mv=A.a(s(["janeiro","fevereiro","mar\xe7o","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"]),t.s) +B.Ca=A.a(s(["\u09a6","\u09b8","\u09ae","\u09ac","\u09ac","\u09b6","\u09b6"]),t.s) +B.aaD=A.a(s(["stycze\u0144","luty","marzec","kwiecie\u0144","maj","czerwiec","lipiec","sierpie\u0144","wrzesie\u0144","pa\u017adziernik","listopad","grudzie\u0144"]),t.s) +B.Cb=A.a(s([B.pW,B.lJ,B.jg,B.lM,B.lQ,B.hr,B.y8,B.q6,B.cA,B.lR,B.f1,B.jd,B.je,B.lK,B.jf,B.pX,B.ef,B.pY,B.pZ,B.y6,B.cz,B.lL,B.jh,B.ji,B.q_,B.q0,B.q1,B.q2,B.y7,B.q3,B.q4,B.lN,B.jj,B.jk,B.q5,B.lO,B.lP]),A.ar("E")) +B.Cd=A.a(s(["S","M","B","T","S","H","M"]),t.s) +B.Cc=A.a(s(["dg","dl","dt","dc","dj","dv","ds"]),t.s) +B.Ce=A.a(s(["\u091c","\u092b\u093c","\u092e\u093e","\u0905","\u092e","\u091c\u0942","\u091c\u0941","\u0905","\u0938\u093f","\u0905","\u0928","\u0926\u093f"]),t.s) +B.aaE=A.a(s(["de gener","de febrer","de mar\xe7","d\u2019abril","de maig","de juny","de juliol","d\u2019agost","de setembre","d\u2019octubre","de novembre","de desembre"]),t.s) +B.Cf=A.a(s(["januar","februar","mart","april","maj","juni","juli","august","septembar","oktobar","novembar","decembar"]),t.s) +B.Cg=A.a(s(["s\xf6ndag","m\xe5ndag","tisdag","onsdag","torsdag","fredag","l\xf6rdag"]),t.s) +B.aaF=A.a(s(["\u0570\u0578\u0582\u0576\u057e\u0561\u0580\u056b","\u0583\u0565\u057f\u0580\u057e\u0561\u0580\u056b","\u0574\u0561\u0580\u057f\u056b","\u0561\u057a\u0580\u056b\u056c\u056b","\u0574\u0561\u0575\u056b\u057d\u056b","\u0570\u0578\u0582\u0576\u056b\u057d\u056b","\u0570\u0578\u0582\u056c\u056b\u057d\u056b","\u0585\u0563\u0578\u057d\u057f\u0578\u057d\u056b","\u057d\u0565\u057a\u057f\u0565\u0574\u0562\u0565\u0580\u056b","\u0570\u0578\u056f\u057f\u0565\u0574\u0562\u0565\u0580\u056b","\u0576\u0578\u0575\u0565\u0574\u0562\u0565\u0580\u056b","\u0564\u0565\u056f\u057f\u0565\u0574\u0562\u0565\u0580\u056b"]),t.s) +B.aaG=A.a(s(["prije Krista","poslije Krista"]),t.s) +B.PK=new A.EE(0,"topLeft") +B.PN=new A.EE(3,"bottomRight") +B.azO=new A.rl(B.PK,B.PN) +B.azR=new A.rl(B.PN,B.PK) +B.PL=new A.EE(1,"topRight") +B.PM=new A.EE(2,"bottomLeft") +B.azP=new A.rl(B.PL,B.PM) +B.azQ=new A.rl(B.PM,B.PL) +B.aaH=A.a(s([B.azO,B.azR,B.azP,B.azQ]),A.ar("E")) +B.aaI=A.a(s(["I. n.\xe9v","II. n.\xe9v","III. n.\xe9v","IV. n.\xe9v"]),t.s) +B.Ch=A.a(s(["\u0b30\u0b2c\u0b3f\u0b2c\u0b3e\u0b30","\u0b38\u0b4b\u0b2e\u0b2c\u0b3e\u0b30","\u0b2e\u0b19\u0b4d\u0b17\u0b33\u0b2c\u0b3e\u0b30","\u0b2c\u0b41\u0b27\u0b2c\u0b3e\u0b30","\u0b17\u0b41\u0b30\u0b41\u0b2c\u0b3e\u0b30","\u0b36\u0b41\u0b15\u0b4d\u0b30\u0b2c\u0b3e\u0b30","\u0b36\u0b28\u0b3f\u0b2c\u0b3e\u0b30"]),t.s) +B.Ci=A.a(s(["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar"]),t.s) +B.aaJ=A.a(s(["\u0e01\u0e48\u0e2d\u0e19 \u0e04.\u0e28.","\u0e04.\u0e28."]),t.s) +B.Cj=A.a(s(["Robo ya 1","Robo ya 2","Robo ya 3","Robo ya 4"]),t.s) +B.aaK=A.a(s(["\u044f\u043d\u0432\u0430\u0440\u044f","\u0444\u0435\u0432\u0440\u0430\u043b\u044f","\u043c\u0430\u0440\u0442\u0430","\u0430\u043f\u0440\u0435\u043b\u044f","\u043c\u0430\u044f","\u0438\u044e\u043d\u044f","\u0438\u044e\u043b\u044f","\u0430\u0432\u0433\u0443\u0441\u0442\u0430","\u0441\u0435\u043d\u0442\u044f\u0431\u0440\u044f","\u043e\u043a\u0442\u044f\u0431\u0440\u044f","\u043d\u043e\u044f\u0431\u0440\u044f","\u0434\u0435\u043a\u0430\u0431\u0440\u044f"]),t.s) +B.aaL=A.a(s(["\u04af.\u04e9.","\u04af.\u0445."]),t.s) +B.b8=A.a(s(["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]),t.s) +B.aaM=A.a(s(["\u0434\u043f","\u043f\u043f"]),t.s) +B.Ck=A.a(s(["ig.","al.","ar.","az.","og.","or.","lr."]),t.s) +B.aaN=A.a(s(["\u0441\u0456\u0447","\u043b\u044e\u0442","\u0431\u0435\u0440","\u043a\u0432\u0456","\u0442\u0440\u0430","\u0447\u0435\u0440","\u043b\u0438\u043f","\u0441\u0435\u0440","\u0432\u0435\u0440","\u0436\u043e\u0432","\u043b\u0438\u0441","\u0433\u0440\u0443"]),t.s) +B.Cl=A.a(s(["\u0da2","\u0db4\u0dd9","\u0db8\u0dcf","\u0d85","\u0db8\u0dd0","\u0da2\u0dd6","\u0da2\u0dd6","\u0d85","\u0dc3\u0dd0","\u0d94","\u0db1\u0dd9","\u0daf\u0dd9"]),t.s) +B.aaO=A.a(s(["\u0a2a\u0a39\u0a3f\u0a32\u0a40 \u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a40","\u0a26\u0a42\u0a1c\u0a40 \u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a40","\u0a24\u0a40\u0a1c\u0a40 \u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a40","\u0a1a\u0a4c\u0a25\u0a40 \u0a24\u0a3f\u0a2e\u0a3e\u0a39\u0a40"]),t.s) +B.aaP=A.a(s(["ennen Kristuksen syntym\xe4\xe4","j\xe4lkeen Kristuksen syntym\xe4n"]),t.s) +B.aaR=A.a(s(["Xan.","Feb.","Mar.","Abr.","Maio","Xu\xf1o","Xul.","Ago.","Set.","Out.","Nov.","Dec."]),t.s) +B.Cm=A.a(s(["\u1303","\u134c","\u121b","\u12a4","\u121c","\u1301","\u1301","\u12a6","\u1234","\u12a6","\u1296","\u12f2"]),t.s) +B.aaS=A.a(s(["{1}, '\u0432\u043e' {0}","{1}, '\u0432\u043e' {0}","{1}, '\u0432\u043e' {0}","{1}, '\u0432\u043e' {0}"]),t.s) +B.aaT=A.a(s(["thg 1","thg 2","thg 3","thg 4","thg 5","thg 6","thg 7","thg 8","thg 9","thg 10","thg 11","thg 12"]),t.s) +B.mw=A.a(s(["\u043d","\u043f","\u0432","\u0441","\u0447","\u043f","\u0441"]),t.s) +B.Cn=A.a(s(["J","F","M","A","M","J","J","\xc1","S","O","N","D"]),t.s) +B.Co=A.a(s(["\u0ab0\u0ab5\u0abf","\u0ab8\u0acb\u0aae","\u0aae\u0a82\u0a97\u0ab3","\u0aac\u0ac1\u0aa7","\u0a97\u0ac1\u0ab0\u0ac1","\u0ab6\u0ac1\u0a95\u0acd\u0ab0","\u0ab6\u0aa8\u0abf"]),t.s) +B.aaU=A.a(s(["y\u5e74M\u6708d\u65e5EEEE","y\u5e74M\u6708d\u65e5","y/MM/dd","y/MM/dd"]),t.s) +B.aaV=A.a(s(["\u0434\u043e \u043d. \u0435.","\u043d. \u0435."]),t.s) +B.aaW=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","dd.MM.y"]),t.s) +B.aaX=A.a(s(["\u0e81\u0ec8\u0ead\u0e99\u0e97\u0ec8\u0ebd\u0e87","\u0eab\u0ebc\u0eb1\u0e87\u0e97\u0ec8\u0ebd\u0e87"]),t.s) +B.aaY=A.a(s(["\u0406 \u0442\u049b\u0441.","\u0406\u0406 \u0442\u049b\u0441.","\u0406\u0406\u0406 \u0442\u049b\u0441.","IV \u0442\u049b\u0441."]),t.s) +B.aaZ=A.a(s(["y MMMM d, EEEE","y MMMM d","y MMM d","y-MM-dd"]),t.s) +B.ab_=A.a(s(["\u12d3\u1218\u1270 \u12d3\u1208\u121d","\u12d3\u1218\u1270 \u121d\u1215\u1228\u1275"]),t.s) +B.hJ=new A.kS(0,"controlModifier") +B.hK=new A.kS(1,"shiftModifier") +B.hL=new A.kS(2,"altModifier") +B.hM=new A.kS(3,"metaModifier") +B.qz=new A.kS(4,"capsLockModifier") +B.qA=new A.kS(5,"numLockModifier") +B.qB=new A.kS(6,"scrollLockModifier") +B.qC=new A.kS(7,"functionModifier") +B.J7=new A.kS(8,"symbolModifier") +B.Cp=A.a(s([B.hJ,B.hK,B.hL,B.hM,B.qz,B.qA,B.qB,B.qC,B.J7]),A.ar("E")) +B.Cq=A.a(s(["\u10d8","\u10d7","\u10db","\u10d0","\u10db","\u10d8","\u10d8","\u10d0","\u10e1","\u10dd","\u10dc","\u10d3"]),t.s) +B.ab0=A.a(s(["1. nelj.","2. nelj.","3. nelj.","4. nelj."]),t.s) +B.ab1=A.a(s(["EEEE 'den' d. MMMM y","d. MMMM y","d. MMM y","dd.MM.y"]),t.s) +B.ab2=A.a(s(["\u043f.\u043d.\u0435.","\u043d.\u0435."]),t.s) +B.ab3=A.a(s(["janu\xe1ra","febru\xe1ra","marca","apr\xedla","m\xe1ja","j\xfana","j\xfala","augusta","septembra","okt\xf3bra","novembra","decembra"]),t.s) +B.Cr=A.a(s(["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ago","Sep","Okt","Nov","Des"]),t.s) +B.Cs=A.a(s(["\u0ea7\u0eb1\u0e99\u0ead\u0eb2\u0e97\u0eb4\u0e94","\u0ea7\u0eb1\u0e99\u0e88\u0eb1\u0e99","\u0ea7\u0eb1\u0e99\u0ead\u0eb1\u0e87\u0e84\u0eb2\u0e99","\u0ea7\u0eb1\u0e99\u0e9e\u0eb8\u0e94","\u0ea7\u0eb1\u0e99\u0e9e\u0eb0\u0eab\u0eb1\u0e94","\u0ea7\u0eb1\u0e99\u0eaa\u0eb8\u0e81","\u0ea7\u0eb1\u0e99\u0ec0\u0eaa\u0ebb\u0eb2"]),t.s) +B.Ct=A.a(s(["\u0642\u0628\u0644 \u0645\u0633\u06cc\u062d","\u0639\u06cc\u0633\u0648\u06cc"]),t.s) +B.ab4=A.a(s(["\u0a2a\u0a42.\u0a26\u0a41.","\u0a2c\u0a3e.\u0a26\u0a41."]),t.s) +B.Cu=A.a(s(["avant J\xe9sus-Christ","apr\xe8s J\xe9sus-Christ"]),t.s) +B.Cv=A.a(s(["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"]),t.s) +B.ab5=A.a(s(["Thg 1","Thg 2","Thg 3","Thg 4","Thg 5","Thg 6","Thg 7","Thg 8","Thg 9","Thg 10","Thg 11","Thg 12"]),t.s) +B.ab6=A.a(s(["EEEE, d MMMM 'de' y","d MMMM 'de' y","d MMM y","d/M/yy"]),t.s) +B.Cw=A.a(s(["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"]),t.s) +B.mx=A.a(s(["janvier","f\xe9vrier","mars","avril","mai","juin","juillet","ao\xfbt","septembre","octobre","novembre","d\xe9cembre"]),t.s) +B.Cx=A.a(s(["\u0cad\u0cbe\u0ca8\u0cc1","\u0cb8\u0ccb\u0cae","\u0cae\u0c82\u0c97\u0cb3","\u0cac\u0cc1\u0ca7","\u0c97\u0cc1\u0cb0\u0cc1","\u0cb6\u0cc1\u0c95\u0ccd\u0cb0","\u0cb6\u0ca8\u0cbf"]),t.s) +B.ab7=A.a(s(["\u0458\u0430\u043d-\u043c\u0430\u0440","\u0430\u043f\u0440-\u0458\u0443\u043d","\u0458\u0443\u043b-\u0441\u0435\u043f","\u043e\u043a\u0442-\u0434\u0435\u043a"]),t.s) +B.eo=A.a(s(["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"]),t.s) +B.fk=new A.z(1,0) +B.aiT=new A.z(1,1) +B.cH=new A.z(0,1) +B.ajg=new A.z(-1,1) +B.rf=new A.z(-1,0) +B.ajh=new A.z(-1,-1) +B.re=new A.z(0,-1) +B.aiV=new A.z(1,-1) +B.my=A.a(s([B.fk,B.aiT,B.cH,B.ajg,B.rf,B.ajh,B.re,B.aiV]),t.yv) +B.Cy=A.a(s(["\u0a9c\u0abe\u0aa8\u0acd\u0aaf\u0ac1","\u0aab\u0ac7\u0aac\u0acd\u0ab0\u0ac1","\u0aae\u0abe\u0ab0\u0acd\u0a9a","\u0a8f\u0aaa\u0acd\u0ab0\u0abf\u0ab2","\u0aae\u0ac7","\u0a9c\u0ac2\u0aa8","\u0a9c\u0ac1\u0ab2\u0abe\u0a88","\u0a91\u0a97\u0ab8\u0acd\u0a9f","\u0ab8\u0aaa\u0acd\u0a9f\u0ac7","\u0a91\u0a95\u0acd\u0a9f\u0acb","\u0aa8\u0ab5\u0ac7","\u0aa1\u0abf\u0ab8\u0ac7"]),t.s) +B.Cz=A.a(s(["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."]),t.s) +B.ab8=A.a(s(["\uc624\uc804","\uc624\ud6c4"]),t.s) +B.CA=A.a(s(["Su.","M.","Tu.","W.","Th.","F.","Sa."]),t.s) +B.CB=A.a(s(["duminic\u0103","luni","mar\u021bi","miercuri","joi","vineri","s\xe2mb\u0103t\u0103"]),t.s) +B.mz=A.a(s(["H:mm:ss zzzz","H:mm:ss z","H:mm:ss","H:mm"]),t.s) +B.hA=A.a(s(["\u65e5","\u4e00","\u4e8c","\u4e09","\u56db","\u4e94","\u516d"]),t.s) +B.mA=A.a(s(["Jumapili","Jumatatu","Jumanne","Jumatano","Alhamisi","Ijumaa","Jumamosi"]),t.s) +B.ab9=A.a(s(["Kuartal ke-1","Kuartal ke-2","Kuartal ke-3","Kuartal ke-4"]),t.s) +B.aba=A.a(s(["\xee.Hr.","d.Hr."]),t.s) +B.CC=A.a(s(["sunnudagur","m\xe1nudagur","\xferi\xf0judagur","mi\xf0vikudagur","fimmtudagur","f\xf6studagur","laugardagur"]),t.s) +B.abb=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","d.MM.y"]),t.s) +B.abc=A.a(s(["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]),t.ee) +B.abd=A.a(s(["{1} \u1793\u17c5\u200b\u1798\u17c9\u17c4\u1784 {0}","{1} \u1793\u17c5\u200b\u1798\u17c9\u17c4\u1784 {0}","{1}, {0}","{1}, {0}"]),t.s) +B.CD=A.a(s(["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"]),t.s) +B.CE=A.a(s(["jan.","feb.","mar.","apr.","mai","jun.","jul.","aug.","sep.","okt.","nov.","des."]),t.s) +B.abe=A.a(s(["H:mm:ss (zzzz)","H:mm:ss (z)","HH:mm:ss","HH:mm"]),t.s) +B.abf=A.a(s(["\u7b2c\u4e00\u5b63\u5ea6","\u7b2c\u4e8c\u5b63\u5ea6","\u7b2c\u4e09\u5b63\u5ea6","\u7b2c\u56db\u5b63\u5ea6"]),t.s) +B.CF=A.a(s(["jan.","febr.","m\xe1rc.","\xe1pr.","m\xe1j.","j\xfan.","j\xfal.","aug.","szept.","okt.","nov.","dec."]),t.s) +B.jp=A.a(s(["a.\xa0m.","p.\xa0m."]),t.s) +B.abg=A.a(s(["\u17a2\u17b6\u1791\u17b7\u178f\u17d2\u1799","\u1785\u1793\u17d2\u1791","\u17a2\u1784\u17d2\u1782\u17b6\u179a","\u1796\u17bb\u1792","\u1796\u17d2\u179a\u17a0\u179f\u17d2\u1794\u178f\u17b7\u17cd","\u179f\u17bb\u1780\u17d2\u179a","\u179f\u17c5\u179a\u17cd"]),t.s) +B.abh=A.a(s(["Sv\u0113tdiena","Pirmdiena","Otrdiena","Tre\u0161diena","Ceturtdiena","Piektdiena","Sestdiena"]),t.s) +B.CG=A.a(s(["{1} 'u' {0}","{1} 'u' {0}","{1} {0}","{1} {0}"]),t.s) +B.aBo=A.a(s(["mqtt"]),t.s) +B.abi=A.a(s(["mqtt","mqttv5"]),t.s) +B.CH=A.a(s(["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december"]),t.s) +B.abj=A.a(s(["\u043f\u0440\u0435 \u043d\u043e\u0432\u0435 \u0435\u0440\u0435","\u043d\u043e\u0432\u0435 \u0435\u0440\u0435"]),t.s) +B.d4=A.a(s(["D","L","M","M","J","V","S"]),t.s) +B.abk=A.a(s(["EEEE, y. 'gada' d. MMMM","y. 'gada' d. MMMM","y. 'gada' d. MMM","dd.MM.yy"]),t.s) +B.abl=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","dd/MM/yy"]),t.s) +B.abm=A.a(s(["i. e.","i. sz."]),t.s) +B.CI=A.a(s(["\u17a2","\u1785","\u17a2","\u1796","\u1796","\u179f","\u179f"]),t.s) +B.abn=A.a(s(["\u0442\u0430\u04a3\u043a\u044b","\u0442\u04af\u0448\u0442\u04e9\u043d \u043a\u0438\u0439\u0438\u043d\u043a\u0438"]),t.s) +B.abo=A.a(s(["\u0db4\u0dd9.\u0dc0.","\u0db4.\u0dc0."]),t.s) +B.abp=A.a(s(["HH:mm:ss, zzzz","HH:mm:ss z","HH:mm:ss","HH:mm"]),t.s) +B.CJ=A.a(s(["\u0b9e\u0bbe\u0baf\u0bbf.","\u0ba4\u0bbf\u0b99\u0bcd.","\u0b9a\u0bc6\u0bb5\u0bcd.","\u0baa\u0bc1\u0ba4.","\u0bb5\u0bbf\u0baf\u0bbe.","\u0bb5\u0bc6\u0bb3\u0bcd.","\u0b9a\u0ba9\u0bbf"]),t.s) +B.mB=A.a(s(["\u1798\u1780\u179a\u17b6","\u1780\u17bb\u1798\u17d2\u1797\u17c8","\u1798\u17b8\u1793\u17b6","\u1798\u17c1\u179f\u17b6","\u17a7\u179f\u1797\u17b6","\u1798\u17b7\u1790\u17bb\u1793\u17b6","\u1780\u1780\u17d2\u1780\u178a\u17b6","\u179f\u17b8\u17a0\u17b6","\u1780\u1789\u17d2\u1789\u17b6","\u178f\u17bb\u179b\u17b6","\u179c\u17b7\u1785\u17d2\u1786\u17b7\u1780\u17b6","\u1792\u17d2\u1793\u17bc"]),t.s) +B.abq=A.a(s(["\u0554\u0580\u056b\u057d\u057f\u0578\u057d\u056b\u0581 \u0561\u057c\u0561\u057b","\u0554\u0580\u056b\u057d\u057f\u0578\u057d\u056b\u0581 \u0570\u0565\u057f\u0578"]),t.s) +B.abr=A.a(s(["Cyn Crist","Oed Crist"]),t.s) +B.abs=A.a(s(["D","L","M","M","X","V","S"]),t.s) +B.CK=A.a(s(["ned\u011ble","pond\u011bl\xed","\xfater\xfd","st\u0159eda","\u010dtvrtek","p\xe1tek","sobota"]),t.s) +B.CL=A.a(s(["\u1007","\u1016","\u1019","\u1027","\u1019","\u1007","\u1007","\u1029","\u1005","\u1021","\u1014","\u1012"]),t.s) +B.CM=A.a(s(["1-\u0440 \u0441\u0430\u0440","2-\u0440 \u0441\u0430\u0440","3-\u0440 \u0441\u0430\u0440","4-\u0440 \u0441\u0430\u0440","5-\u0440 \u0441\u0430\u0440","6-\u0440 \u0441\u0430\u0440","7-\u0440 \u0441\u0430\u0440","8-\u0440 \u0441\u0430\u0440","9-\u0440 \u0441\u0430\u0440","10-\u0440 \u0441\u0430\u0440","11-\u0440 \u0441\u0430\u0440","12-\u0440 \u0441\u0430\u0440"]),t.s) +B.abt=A.a(s(["\u0399\u03b1\u03bd","\u03a6\u03b5\u03b2","\u039c\u03ac\u03c1","\u0391\u03c0\u03c1","\u039c\u03ac\u03b9","\u0399\u03bf\u03cd\u03bd","\u0399\u03bf\u03cd\u03bb","\u0391\u03cd\u03b3","\u03a3\u03b5\u03c0","\u039f\u03ba\u03c4","\u039d\u03bf\u03ad","\u0394\u03b5\u03ba"]),t.s) +B.mC=A.a(s(["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"]),t.s) +B.CO=A.a(s(["\u043d\u0435\u0434.","\u043f\u043e\u043d.","\u0432\u0442\u043e.","\u0441\u0440\u0435.","\u0447\u0435\u0442.","\u043f\u0435\u0442.","\u0441\u0430\u0431."]),t.s) +B.CN=A.a(s(["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"]),t.s) +B.CP=A.a(s(["sekmadienis","pirmadienis","antradienis","tre\u010diadienis","ketvirtadienis","penktadienis","\u0161e\u0161tadienis"]),t.s) +B.abu=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","d 'de' MMM 'de' y","dd/MM/y"]),t.s) +B.abv=A.a(s(["\u0908\u0938\u093e-\u092a\u0942\u0930\u094d\u0935","\u0908\u0938\u094d\u0935\u0940"]),t.s) +B.CQ=A.a(s([1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,262144,524288,1048576,2097152,4194304,8388608,16777216,33554432,67108864,134217728,268435456,536870912,1073741824,2147483648]),t.t) +B.abw=A.a(s(["1.\xa0cet.","2.\xa0cet.","3.\xa0cet.","4.\xa0cet."]),t.s) +B.CR=A.a(s(["\u0436\u0435\u043a.","\u0434\u04af\u0439.","\u0448\u0435\u0439\u0448.","\u0448\u0430\u0440\u0448.","\u0431\u0435\u0439\u0448.","\u0436\u0443\u043c\u0430","\u0438\u0448\u043c."]),t.s) +B.abx=A.a(s(["extruder","extruder1","extruder2","extruder3","virtual_sdcard","print_stats","display_status","gcode_move","heater_bed","toolhead","webhooks","idle_timeout","job","printer_info","file_metadata","led cavity_led","fan","fan_generic cavity_fan","print_task_config","motion_report","purifier","filament_feed left","filament_feed right","machine_state_manager","filament_detect"]),t.s) +B.hB=A.a(s([0,0,24576,1023,65534,34815,65534,18431]),t.t) +B.aby=A.a(s(["prijepodne","popodne"]),t.s) +B.abz=A.a(s(["{1} '\xe0s' {0}","{1} '\xe0s' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.CS=A.a(s(["ISonto","UMsombuluko","ULwesibili","ULwesithathu","ULwesine","ULwesihlanu","UMgqibelo"]),t.s) +B.hC=A.a(s(["{1} {0}","{1} {0}","{1}, {0}","{1}, {0}"]),t.s) +B.CT=A.a(s(["1.er trimestre","2.\xba trimestre","3.er trimestre","4.\xba trimestre"]),t.s) +B.CU=A.a(s(["\u0da2\u0db1\u0dc0\u0dcf\u0dbb\u0dd2","\u0db4\u0dd9\u0db6\u0dbb\u0dc0\u0dcf\u0dbb\u0dd2","\u0db8\u0dcf\u0dbb\u0dca\u0dad\u0dd4","\u0d85\u0db4\u0dca\u200d\u0dbb\u0dda\u0dbd\u0dca","\u0db8\u0dd0\u0dba\u0dd2","\u0da2\u0dd6\u0db1\u0dd2","\u0da2\u0dd6\u0dbd\u0dd2","\u0d85\u0d9c\u0ddd\u0dc3\u0dca\u0dad\u0dd4","\u0dc3\u0dd0\u0db4\u0dca\u0dad\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca","\u0d94\u0d9a\u0dca\u0dad\u0ddd\u0db6\u0dbb\u0dca","\u0db1\u0ddc\u0dc0\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca","\u0daf\u0dd9\u0dc3\u0dd0\u0db8\u0dca\u0db6\u0dbb\u0dca"]),t.s) +B.abA=A.a(s(["EEEE dd MMMM y","dd MMMM y","dd MMM y","y-MM-dd"]),t.s) +B.CV=A.a(s(["Pazar","Pazartesi","Sal\u0131","\xc7ar\u015famba","Per\u015fembe","Cuma","Cumartesi"]),t.s) +B.CW=A.a(s(["1\u0b2e \u0b24\u0b4d\u0b30\u0b5f\u0b2e\u0b3e\u0b38","2\u0b5f \u0b24\u0b4d\u0b30\u0b5f\u0b2e\u0b3e\u0b38","3\u0b5f \u0b24\u0b4d\u0b30\u0b5f\u0b2e\u0b3e\u0b38","4\u0b30\u0b4d\u0b25 \u0b24\u0b4d\u0b30\u0b5f\u0b2e\u0b3e\u0b38"]),t.s) +B.abB=A.a(s(["Domingo","Luns","Martes","M\xe9rcores","Xoves","Venres","S\xe1bado"]),t.s) +B.abC=A.a(s(["\u0b95\u0bbe\u0bb2\u0bbe.1","\u0b95\u0bbe\u0bb2\u0bbe.2","\u0b95\u0bbe\u0bb2\u0bbe.3","\u0b95\u0bbe\u0bb2\u0bbe.4"]),t.s) +B.abD=A.a(s(["\u0a08\u0a38\u0a35\u0a40 \u0a2a\u0a42\u0a30\u0a35","\u0a08\u0a38\u0a35\u0a40 \u0a38\u0a70\u0a28"]),t.s) +B.abE=A.a(s(["abans de Crist","despr\xe9s de Crist"]),t.s) +B.CX=A.a(s(["\u043d\u044f\u0434\u0437\u0435\u043b\u044f","\u043f\u0430\u043d\u044f\u0434\u0437\u0435\u043b\u0430\u043a","\u0430\u045e\u0442\u043e\u0440\u0430\u043a","\u0441\u0435\u0440\u0430\u0434\u0430","\u0447\u0430\u0446\u0432\u0435\u0440","\u043f\u044f\u0442\u043d\u0456\u0446\u0430","\u0441\u0443\u0431\u043e\u0442\u0430"]),t.s) +B.CY=A.a(s(["led","\xfano","b\u0159e","dub","kv\u011b","\u010dvn","\u010dvc","srp","z\xe1\u0159","\u0159\xedj","lis","pro"]),t.s) +B.CZ=A.a(s(["jan\xfaar","febr\xfaar","mars","apr\xedl","ma\xed","j\xfan\xed","j\xfal\xed","\xe1g\xfast","september","okt\xf3ber","n\xf3vember","desember"]),t.s) +B.abF=A.a(s(["1-\u056b\u0576 \u0565\u057c\u0561\u0574\u057d\u0575\u0561\u056f","2-\u0580\u0564 \u0565\u057c\u0561\u0574\u057d\u0575\u0561\u056f","3-\u0580\u0564 \u0565\u057c\u0561\u0574\u057d\u0575\u0561\u056f","4-\u0580\u0564 \u0565\u057c\u0561\u0574\u057d\u0575\u0561\u056f"]),t.s) +B.D_=A.a(s(["\u039a\u03c5\u03c1","\u0394\u03b5\u03c5","\u03a4\u03c1\u03af","\u03a4\u03b5\u03c4","\u03a0\u03ad\u03bc","\u03a0\u03b1\u03c1","\u03a3\u03ac\u03b2"]),t.s) +B.abG=A.a(s(["\u0996\u09cd\u09b0\u09bf\u09b8\u09cd\u099f\u09aa\u09c2\u09b0\u09cd\u09ac","\u0996\u09cd\u09b0\u09c0\u09b7\u09cd\u099f\u09be\u09ac\u09cd\u09a6"]),t.s) +B.YX=new A.hw(602e3,"dialog.device_service.not_found",B.b0) +B.YY=new A.hw(602001,"dialog.device_service.register_failed",B.b0) +B.YZ=new A.hw(602002,"dialog.device_service.bind_failed",B.b0) +B.Z3=new A.hw(602003,"dialog.device_service.invalid",B.b0) +B.Z0=new A.hw(602004,"dialog.device_service.image_upload_failed",B.b0) +B.Z1=new A.hw(602005,"dialog.device_service.file_upload_failed",B.b0) +B.YW=new A.hw(602006,"dialog.device_service.certificate_update_failed",B.b0) +B.YV=new A.hw(602007,"dialog.device_service.unauthorized",B.b0) +B.Z2=new A.hw(602008,"dialog.device_service.not_connected",B.b0) +B.Z_=new A.hw(602009,"dialog.device_service.authorization_check_failed",B.b0) +B.YU=new A.hw(602010,"dialog.device_service.auth_code_locale_not_match",B.b0) +B.abH=A.a(s([B.YX,B.YY,B.YZ,B.Z3,B.Z0,B.Z1,B.YW,B.YV,B.Z2,B.Z_,B.YU]),A.ar("E")) +B.bv=new A.id(0,"icon") +B.bI=new A.id(1,"input") +B.aY=new A.id(2,"label") +B.bP=new A.id(3,"hint") +B.bQ=new A.id(4,"prefix") +B.bR=new A.id(5,"suffix") +B.aS=new A.id(6,"prefixIcon") +B.bB=new A.id(7,"suffixIcon") +B.d9=new A.id(8,"helperError") +B.dA=new A.id(9,"counter") +B.e3=new A.id(10,"container") +B.abI=A.a(s([B.bv,B.bI,B.aY,B.bP,B.bQ,B.bR,B.aS,B.bB,B.d9,B.dA,B.e3]),A.ar("E")) +B.D0=A.a(s(["ned","pon","uto","sre","\u010det","pet","sub"]),t.s) +B.abJ=A.a(s(["\u092a\u0939\u0932\u0940 \u0924\u093f\u092e\u093e\u0939\u0940","\u0926\u0942\u0938\u0930\u0940 \u0924\u093f\u092e\u093e\u0939\u0940","\u0924\u0940\u0938\u0930\u0940 \u0924\u093f\u092e\u093e\u0939\u0940","\u091a\u094c\u0925\u0940 \u0924\u093f\u092e\u093e\u0939\u0940"]),t.s) +B.aR=A.a(s(["S","M","T","W","T","F","S"]),t.s) +B.abL=A.a(s(["{1} '\u043e' {0}","{1} '\u043e' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.abK=A.a(s(["{1} '\u0443' {0}","{1} '\u0443' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.D1=A.a(s(["\u0cad\u0cbe","\u0cb8\u0ccb","\u0cae\u0c82","\u0cac\u0cc1","\u0c97\u0cc1","\u0cb6\u0cc1","\u0cb6"]),t.s) +B.D2=A.a(s(["\u0436\u0441","\u0434\u0441","\u0441\u0441","\u0441\u0440","\u0431\u0441","\u0436\u043c","\u0441\u0431"]),t.s) +B.D3=A.a(s(["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec"]),t.s) +B.abM=A.a(s(["\xeenainte de Hristos","dup\u0103 Hristos"]),t.s) +B.D4=A.a(s(["{1} 'nang' {0}","{1} 'nang' {0}","{1}, {0}","{1}, {0}"]),t.s) +B.D5=A.a(s(["hh:mm:ss a zzzz","hh:mm:ss a z","hh:mm:ss a","hh:mm a"]),t.s) +B.abN=A.a(s(["\u043c\u0430\u043d\u0430\u0439 \u044d\u0440\u0438\u043d\u0438\u0439 \u04e9\u043c\u043d\u04e9\u0445","\u043c\u0430\u043d\u0430\u0439 \u044d\u0440\u0438\u043d\u0438\u0439"]),t.s) +B.rb={name:0,unit:1,value:2,index:3} +B.aeL=new A.ai(B.rb,["10mm","mm",10,0],t.yf) +B.aeK=new A.ai(B.rb,["1mm","mm",1,1],t.yf) +B.aeJ=new A.ai(B.rb,["0.1mm","mm",0.1,2],t.yf) +B.abO=A.a(s([B.aeL,B.aeK,B.aeJ]),t.H7) +B.abP=A.a(s(["\u043f. \u043d. \u0435.","\u043d. \u0435."]),t.s) +B.D6=A.a(s(["dom","lun","mar","mer","gio","ven","sab"]),t.s) +B.abQ=A.a(s(["\u0d1e\u0d3e","\u0d24\u0d3f","\u0d1a\u0d4a","\u0d2c\u0d41","\u0d35\u0d4d\u0d2f\u0d3e","\u0d35\u0d46","\u0d36"]),t.s) +B.qi=A.a(s(["\u099c\u09be\u09a8\u09c1\u09af\u09bc\u09be\u09b0\u09c0","\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09af\u09bc\u09be\u09b0\u09c0","\u09ae\u09be\u09b0\u09cd\u099a","\u098f\u09aa\u09cd\u09b0\u09bf\u09b2","\u09ae\u09c7","\u099c\u09c1\u09a8","\u099c\u09c1\u09b2\u09be\u0987","\u0986\u0997\u09b8\u09cd\u099f","\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0","\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0","\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0","\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0"]),t.s) +B.D7=A.a(s(["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"]),t.s) +B.abR=A.a(s(["\u062c\u0646\u0648\u0631\u064a","\u0641\u06d0\u0628\u0631\u0648\u0631\u064a","\u0645\u0627\u0631\u0686","\u0627\u067e\u0631\u06cc\u0644","\u0645\u06cd","\u062c\u0648\u0646","\u062c\u0648\u0644\u0627\u06cc","\u0627\u06ab\u0633\u062a","\u0633\u067e\u062a\u0645\u0628\u0631","\u0627\u06a9\u062a\u0648\u0628\u0631","\u0646\u0648\u0645\u0628\u0631","\u062f\u0633\u0645\u0628\u0631"]),t.s) +B.D8=A.a(s(["S","M","D","W","D","V","S"]),t.s) +B.abS=A.a(s(["\u044f\u043d\u0432.","\u0444\u0435\u0432.","\u043c\u0430\u0440.","\u0430\u043f\u0440.","\u043c\u0430\u0439","\u0438\u044e\u043d.","\u0438\u044e\u043b.","\u0430\u0432\u0433.","\u0441\u0435\u043d.","\u043e\u043a\u0442.","\u043d\u043e\u044f.","\u0434\u0435\u043a."]),t.s) +B.D9=A.a(s(["Jan.","Feb.","Mrt.","Apr.","Mei","Jun.","Jul.","Aug.","Sep.","Okt.","Nov.","Des."]),t.s) +B.abT=A.a(s(["\xc71","\xc72","\xc73","\xc74"]),t.s) +B.Da=A.a(s(["\u099c\u09be\u09a8\u09c1","\u09ab\u09c7\u09ac\u09cd\u09f0\u09c1","\u09ae\u09be\u09f0\u09cd\u099a","\u098f\u09aa\u09cd\u09f0\u09bf\u09b2","\u09ae\u09c7\u2019","\u099c\u09c1\u09a8","\u099c\u09c1\u09b2\u09be\u0987","\u0986\u0997","\u099b\u09c7\u09aa\u09cd\u09a4\u09c7","\u0985\u0995\u09cd\u099f\u09cb","\u09a8\u09f1\u09c7","\u09a1\u09bf\u099a\u09c7"]),t.s) +B.abU=A.a(s(["\u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0433\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0434\u04e9\u0440\u04e9\u0432\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0442\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0437\u0443\u0440\u0433\u0430\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0434\u043e\u043b\u043e\u043e\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u043d\u0430\u0439\u043c\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0435\u0441\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0430\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440","\u0430\u0440\u0432\u0430\u043d \u043d\u044d\u0433\u0434\u04af\u0433\u044d\u044d\u0440 \u0441\u0430\u0440","\u0430\u0440\u0432\u0430\u043d \u0445\u043e\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440"]),t.s) +B.abV=A.a(s(["chwarter 1af","2il chwarter","3ydd chwarter","4ydd chwarter"]),t.s) +B.Db=A.a(s(["dum.","lun.","mar.","mie.","joi","vin.","s\xe2m."]),t.s) +B.Dc=A.a(s(["\u05d0\u05f3","\u05d1\u05f3","\u05d2\u05f3","\u05d3\u05f3","\u05d4\u05f3","\u05d5\u05f3","\u05e9\u05f3"]),t.s) +B.abW=A.a(s(["\u0d1e\u0d3e\u0d2f\u0d31\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d24\u0d3f\u0d19\u0d4d\u0d15\u0d33\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d1a\u0d4a\u0d35\u0d4d\u0d35\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d2c\u0d41\u0d27\u0d28\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d35\u0d4d\u0d2f\u0d3e\u0d34\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d35\u0d46\u0d33\u0d4d\u0d33\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u200c\u0d1a","\u0d36\u0d28\u0d3f\u0d2f\u0d3e\u0d34\u0d4d\u200c\u0d1a"]),t.s) +B.Dd=A.a(s(["f\xf8r Kristus","etter Kristus"]),t.s) +B.abX=A.a(s(["p.n.e.","n.e."]),t.s) +B.De=A.a(s(["Paz","Pzt","Sal","\xc7ar","Per","Cum","Cmt"]),t.s) +B.abY=A.a(s([48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70]),t.t) +B.abZ=A.a(s(["\u03c0.\u03a7.","\u03bc.\u03a7."]),t.s) +B.ac_=A.a(s(["Yanvar","Fevral","Mart","Aprel","May","Iyun","Iyul","Avgust","Sentabr","Oktabr","Noyabr","Dekabr"]),t.s) +B.du=new A.iV(1,"fuchsia") +B.dv=new A.iV(3,"linux") +B.dw=new A.iV(5,"windows") +B.ac0=A.a(s([B.bg,B.du,B.aG,B.dv,B.cr,B.dw]),A.ar("E")) +B.Df=A.a(s(["\u062d","\u0646","\u062b","\u0631","\u062e","\u062c","\u0633"]),t.s) +B.aA6=new A.ko(0,1) +B.aAe=new A.ko(0.5,1) +B.aA8=new A.ko(0.5375,0.75) +B.aAb=new A.ko(0.575,0.5) +B.aAg=new A.ko(0.6125,0.25) +B.aAf=new A.ko(0.65,0) +B.aAc=new A.ko(0.85,0) +B.aAa=new A.ko(0.8875,0.25) +B.aAd=new A.ko(0.925,0.5) +B.aA9=new A.ko(0.9625,0.75) +B.aA7=new A.ko(1,1) +B.ac1=A.a(s([B.aA6,B.aAe,B.aA8,B.aAb,B.aAg,B.aAf,B.aAc,B.aAa,B.aAd,B.aA9,B.aA7]),A.ar("E")) +B.Dg=A.a(s(["\u0c1c\u0c28\u0c35\u0c30\u0c3f","\u0c2b\u0c3f\u0c2c\u0c4d\u0c30\u0c35\u0c30\u0c3f","\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f","\u0c0f\u0c2a\u0c4d\u0c30\u0c3f\u0c32\u0c4d","\u0c2e\u0c47","\u0c1c\u0c42\u0c28\u0c4d","\u0c1c\u0c41\u0c32\u0c48","\u0c06\u0c17\u0c38\u0c4d\u0c1f\u0c41","\u0c38\u0c46\u0c2a\u0c4d\u0c1f\u0c46\u0c02\u0c2c\u0c30\u0c4d","\u0c05\u0c15\u0c4d\u0c1f\u0c4b\u0c2c\u0c30\u0c4d","\u0c28\u0c35\u0c02\u0c2c\u0c30\u0c4d","\u0c21\u0c3f\u0c38\u0c46\u0c02\u0c2c\u0c30\u0c4d"]),t.s) +B.ac2=A.a(s(["trim. I","trim. II","trim. III","trim. IV"]),t.s) +B.Dh=A.a(s(["p. n. e.","n. e."]),t.s) +B.Di=A.a(s(["Jan.","Feb.","M\xe4rz","Apr.","Mai","Juni","Juli","Aug.","Sept.","Okt.","Nov.","Dez."]),t.s) +B.ac3=A.a(s(["I kwarta\u0142","II kwarta\u0142","III kwarta\u0142","IV kwarta\u0142"]),t.s) +B.Dj=A.a(s(["EEEE d MMMM y","d MMMM y","d MMM y","d/M/yy"]),t.s) +B.ac4=A.a(s([7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21]),t.t) +B.ac5=A.a(s(["y \u0569. MMMM d, EEEE","dd MMMM, y \u0569.","dd MMM, y \u0569.","dd.MM.yy"]),t.s) +B.ac6=A.a(s(["\u043f\u0440.\u043e\u0431.","\u0441\u043b.\u043e\u0431."]),t.s) +B.qj=A.a(s([!0,!1]),t.HZ) +B.ac7=A.a(s([0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,0]),t.n) +B.ac8=A.a(s(["\u0996\u09cd\u09f0\u09c0\u09b7\u09cd\u099f\u09aa\u09c2\u09f0\u09cd\u09ac","\u0996\u09cd\u09f0\u09c0\u09b7\u09cd\u099f\u09be\u09ac\u09cd\u09a6"]),t.s) +B.QL=new A.dV(0,"clear") +B.QM=new A.dV(1,"src") +B.R0=new A.dV(2,"dst") +B.Rg=new A.dV(4,"dstOver") +B.Rh=new A.dV(7,"srcOut") +B.Ri=new A.dV(8,"dstOut") +B.Rj=new A.dV(9,"srcATop") +B.QN=new A.dV(10,"dstATop") +B.QO=new A.dV(11,"xor") +B.QP=new A.dV(14,"screen") +B.QR=new A.dV(15,"overlay") +B.QT=new A.dV(16,"darken") +B.QV=new A.dV(17,"lighten") +B.QX=new A.dV(18,"colorDodge") +B.QZ=new A.dV(19,"colorBurn") +B.R2=new A.dV(21,"softLight") +B.R4=new A.dV(22,"difference") +B.R6=new A.dV(23,"exclusion") +B.R9=new A.dV(25,"hue") +B.Rc=new A.dV(27,"color") +B.Re=new A.dV(28,"luminosity") +B.ac9=A.a(s([B.QL,B.QM,B.R0,B.dE,B.Rg,B.iv,B.uC,B.Rh,B.Ri,B.Rj,B.QN,B.QO,B.uz,B.oo,B.QP,B.QR,B.QT,B.QV,B.QX,B.QZ,B.uA,B.R2,B.R4,B.R6,B.uB,B.R9,B.op,B.Rc,B.Re]),A.ar("E")) +B.aca=A.a(s(["d","l","m","m","j","v","s"]),t.s) +B.Dk=A.a(s(["\u0c1c","\u0c2b\u0c3f","\u0c2e\u0c3e","\u0c0f","\u0c2e\u0c47","\u0c1c\u0c42","\u0c1c\u0c41","\u0c06","\u0c38\u0c46","\u0c05","\u0c28","\u0c21\u0c3f"]),t.s) +B.acb=A.a(s(["m.a.","milodiy"]),t.s) +B.Dl=A.a(s(["Sunntig","M\xe4\xe4ntig","Ziischtig","Mittwuch","Dunschtig","Friitig","Samschtig"]),t.s) +B.acc=A.a(s(["EEEE, MMMM d, y","MMMM d, y","MMM d, y","d/M/yy"]),t.s) +B.Dm=A.a(s(["\u0d1c\u0d28\u0d41","\u0d2b\u0d46\u0d2c\u0d4d\u0d30\u0d41","\u0d2e\u0d3e\u0d7c","\u0d0f\u0d2a\u0d4d\u0d30\u0d3f","\u0d2e\u0d47\u0d2f\u0d4d","\u0d1c\u0d42\u0d7a","\u0d1c\u0d42\u0d32\u0d48","\u0d13\u0d17","\u0d38\u0d46\u0d2a\u0d4d\u0d31\u0d4d\u0d31\u0d02","\u0d12\u0d15\u0d4d\u0d1f\u0d4b","\u0d28\u0d35\u0d02","\u0d21\u0d3f\u0d38\u0d02"]),t.s) +B.Dn=A.a(s(["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"]),t.s) +B.Do=A.a(s(["V","H","K","Sze","Cs","P","Szo"]),t.s) +B.acj=A.a(s(["H \u0ec2\u0ea1\u0e87 m \u0e99\u0eb2\u0e97\u0eb5 ss \u0ea7\u0eb4\u0e99\u0eb2\u0e97\u0eb5 zzzz","H \u0ec2\u0ea1\u0e87 m \u0e99\u0eb2\u0e97\u0eb5 ss \u0ea7\u0eb4\u0e99\u0eb2\u0e97\u0eb5 z","H:mm:ss","H:mm"]),t.s) +B.ack=A.a(s(["{1} \u0a8f {0} \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7","{1} \u0a8f {0} \u0ab5\u0abe\u0a97\u0acd\u0aaf\u0ac7","{1} {0}","{1} {0}"]),t.s) +B.acl=A.a(s(["Milattan \xd6nce","Milattan Sonra"]),t.s) +B.acm=A.a(s(["1. \xe7eyrek","2. \xe7eyrek","3. \xe7eyrek","4. \xe7eyrek"]),t.s) +B.acn=A.a(s(["1\u03bf \u03c4\u03c1\u03af\u03bc\u03b7\u03bd\u03bf","2\u03bf \u03c4\u03c1\u03af\u03bc\u03b7\u03bd\u03bf","3\u03bf \u03c4\u03c1\u03af\u03bc\u03b7\u03bd\u03bf","4\u03bf \u03c4\u03c1\u03af\u03bc\u03b7\u03bd\u03bf"]),t.s) +B.aco=A.a(s(["\u0a88\u0ab8\u0ab5\u0ac0\u0ab8\u0aa8 \u0aaa\u0ac2\u0ab0\u0acd\u0ab5\u0ac7","\u0a87\u0ab8\u0ab5\u0ac0\u0ab8\u0aa8"]),t.s) +B.acp=A.a(s(["EEEE\u0e17\u0e35\u0e48 d MMMM G y","d MMMM G y","d MMM y","d/M/yy"]),t.s) +B.mD=A.a(s(["a.C.","d.C."]),t.s) +B.Dp=A.a(s(["jan","shk","mar","pri","maj","qer","korr","gush","sht","tet","n\xebn","dhj"]),t.s) +B.acq=A.a(s(["1-\u0440 \u0443\u043b\u0438\u0440\u0430\u043b","2-\u0440 \u0443\u043b\u0438\u0440\u0430\u043b","3-\u0440 \u0443\u043b\u0438\u0440\u0430\u043b","4-\u0440 \u0443\u043b\u0438\u0440\u0430\u043b"]),t.s) +B.Dq=A.a(s(["yanvar","fevral","mart","aprel","may","iyun","iyul","avqust","sentyabr","oktyabr","noyabr","dekabr"]),t.s) +B.Dr=A.a(s(["P","P","S","\xc7","P","C","C"]),t.s) +B.Ds=A.a(s(["\u178f\u17d2\u179a\u17b8\u1798\u17b6\u179f\u1791\u17b8 1","\u178f\u17d2\u179a\u17b8\u1798\u17b6\u179f\u1791\u17b8 2","\u178f\u17d2\u179a\u17b8\u1798\u17b6\u179f\u1791\u17b8 3","\u178f\u17d2\u179a\u17b8\u1798\u17b6\u179f\u1791\u17b8 4"]),t.s) +B.acr=A.a(s(["\u0e81\u0ec8\u0ead\u0e99 \u0e84.\u0eaa.","\u0e84.\u0eaa."]),t.s) +B.acs=A.a(s(["\u0ca4\u0ccd\u0cb0\u0cc8 1","\u0ca4\u0ccd\u0cb0\u0cc8 2","\u0ca4\u0ccd\u0cb0\u0cc8 3","\u0ca4\u0ccd\u0cb0\u0cc8 4"]),t.s) +B.Dt=A.a(s(["\u0930\u0935\u093f","\u0938\u094b\u092e","\u092e\u0902\u0917\u0933","\u092c\u0941\u0927","\u0917\u0941\u0930\u0941","\u0936\u0941\u0915\u094d\u0930","\u0936\u0928\u093f"]),t.s) +B.act=A.a(s(["a h.mm.ss zzzz","a h.mm.ss z","a h.mm.ss","a h.mm"]),t.s) +B.Du=A.a(s(["Su.","M\xe4.","Zi.","Mi.","Du.","Fr.","Sa."]),t.s) +B.Dv=A.a(s(["\u05d9\u05d5\u05dd \u05e8\u05d0\u05e9\u05d5\u05df","\u05d9\u05d5\u05dd \u05e9\u05e0\u05d9","\u05d9\u05d5\u05dd \u05e9\u05dc\u05d9\u05e9\u05d9","\u05d9\u05d5\u05dd \u05e8\u05d1\u05d9\u05e2\u05d9","\u05d9\u05d5\u05dd \u05d7\u05de\u05d9\u05e9\u05d9","\u05d9\u05d5\u05dd \u05e9\u05d9\u05e9\u05d9","\u05d9\u05d5\u05dd \u05e9\u05d1\u05ea"]),t.s) +B.qk=A.a(s([0,0,65498,45055,65535,34815,65534,18431]),t.t) +B.ajq=new A.lV(1e5,"dialog.open_business.email_verification_failed",B.j6) +B.ajr=new A.lV(100001,"dialog.open_business.sms_verification_failed",B.j6) +B.ajs=new A.lV(100002,"dialog.open_business.file_upload_failed",B.j6) +B.ajt=new A.lV(100003,"dialog.open_business.file_info_not_found",B.j6) +B.acu=A.a(s([B.ajq,B.ajr,B.ajs,B.ajt]),A.ar("E")) +B.acv=A.a(s(["\u0d9a\u0dca\u200d\u0dbb\u0dd2.\u0db4\u0dd6.","\u0d9a\u0dca\u200d\u0dbb\u0dd2.\u0dc0."]),t.s) +B.acw=A.a(s(["tremujori I","tremujori II","tremujori III","tremujori IV"]),t.s) +B.acx=A.a(s(["v.C.","n.C."]),t.s) +B.acz=A.a(s(["\u0e81\u0ec8\u0ead\u0e99\u0e84\u0ea3\u0eb4\u0e94\u0eaa\u0eb1\u0e81\u0e81\u0eb0\u0ea5\u0eb2\u0e94","\u0e84\u0ea3\u0eb4\u0e94\u0eaa\u0eb1\u0e81\u0e81\u0eb0\u0ea5\u0eb2\u0e94"]),t.s) +B.acy=A.a(s(["1-ci kv.","2-ci kv.","3-c\xfc kv.","4-c\xfc kv."]),t.s) +B.Dw=A.a(s(["sij","velj","o\u017eu","tra","svi","lip","srp","kol","ruj","lis","stu","pro"]),t.s) +B.Dx=A.a(s(["Z","M","D","W","D","V","Z"]),t.s) +B.Dy=A.a(s(["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."]),t.s) +B.acA=A.a(s(["1e kwartaal","2e kwartaal","3e kwartaal","4e kwartaal"]),t.s) +B.acB=A.a(s(["d MMMM y, EEEE","d MMMM y","d MMM y","dd.MM.yy"]),t.s) +B.Dz=A.a(s(["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"]),t.s) +B.DA=A.a(s(["\u0c1c\u0c28","\u0c2b\u0c3f\u0c2c\u0c4d\u0c30","\u0c2e\u0c3e\u0c30\u0c4d\u0c1a\u0c3f","\u0c0f\u0c2a\u0c4d\u0c30\u0c3f","\u0c2e\u0c47","\u0c1c\u0c42\u0c28\u0c4d","\u0c1c\u0c41\u0c32\u0c48","\u0c06\u0c17","\u0c38\u0c46\u0c2a\u0c4d\u0c1f\u0c46\u0c02","\u0c05\u0c15\u0c4d\u0c1f\u0c4b","\u0c28\u0c35\u0c02","\u0c21\u0c3f\u0c38\u0c46\u0c02"]),t.s) +B.acC=A.a(s(["ledna","\xfanora","b\u0159ezna","dubna","kv\u011btna","\u010dervna","\u010dervence","srpna","z\xe1\u0159\xed","\u0159\xedjna","listopadu","prosince"]),t.s) +B.DB=A.a(s(["ned.","pon.","tor.","sre.","\u010det.","pet.","sob."]),t.s) +B.acD=A.a(s(["y '\u0436'. d MMMM, EEEE","y '\u0436'. d MMMM","y '\u0436'. dd MMM","dd.MM.yy"]),t.s) +B.DC=A.a(s(["\u0416","\u0414","\u0421","\u0421","\u0411","\u0416","\u0421"]),t.s) +B.acE=A.a(s(["1Hh","2Hh","3Hh","4Hh"]),t.s) +B.acG=A.a(s(["EEEE, d MMMM y","d MMMM y","d.M.y","d.M.yy"]),t.s) +B.DD=A.a(s(["su","ma","ti","ke","to","pe","la"]),t.s) +B.DE=A.a(s(["\u091c\u093e","\u092b\u0947","\u092e\u093e","\u090f","\u092e\u0947","\u091c\u0942","\u091c\u0941","\u0911","\u0938","\u0911","\u0928\u094b","\u0921\u093f"]),t.s) +B.acI=A.a(s(["e.\u0259.","y.e."]),t.s) +B.acK=A.a(s(["\u0caa\u0cc2\u0cb0\u0ccd\u0cb5\u0cbe\u0cb9\u0ccd\u0ca8","\u0c85\u0caa\u0cb0\u0cbe\u0cb9\u0ccd\u0ca8"]),t.s) +B.acH=A.a(s(["\u12d3/\u12d3","\u12d3/\u121d"]),t.s) +B.acJ=A.a(s(["1. \u0442\u0440\u0438\u043c.","2. \u0442\u0440\u0438\u043c.","3. \u0442\u0440\u0438\u043c.","4. \u0442\u0440\u0438\u043c."]),t.s) +B.DF=A.a(s(["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe."]),t.s) +B.acL=A.a(s(["p\u0159. n. l.","n. l."]),t.s) +B.DG=A.a(s(["\u0b9c\u0ba9\u0bb5\u0bb0\u0bbf","\u0baa\u0bbf\u0baa\u0bcd\u0bb0\u0bb5\u0bb0\u0bbf","\u0bae\u0bbe\u0bb0\u0bcd\u0b9a\u0bcd","\u0b8f\u0baa\u0bcd\u0bb0\u0bb2\u0bcd","\u0bae\u0bc7","\u0b9c\u0bc2\u0ba9\u0bcd","\u0b9c\u0bc2\u0bb2\u0bc8","\u0b86\u0b95\u0bb8\u0bcd\u0b9f\u0bcd","\u0b9a\u0bc6\u0baa\u0bcd\u0b9f\u0bae\u0bcd\u0baa\u0bb0\u0bcd","\u0b85\u0b95\u0bcd\u0b9f\u0bcb\u0baa\u0bb0\u0bcd","\u0ba8\u0bb5\u0bae\u0bcd\u0baa\u0bb0\u0bcd","\u0b9f\u0bbf\u0b9a\u0bae\u0bcd\u0baa\u0bb0\u0bcd"]),t.s) +B.c4=A.a(s(["1\u6708","2\u6708","3\u6708","4\u6708","5\u6708","6\u6708","7\u6708","8\u6708","9\u6708","10\u6708","11\u6708","12\u6708"]),t.s) +B.mE=A.a(s(["\u516c\u5143\u524d","\u516c\u5143"]),t.s) +B.acM=A.a(s(["1-ch","2-ch","3-ch","4-ch"]),t.s) +B.DH=A.a(s(["j","sh","m","p","m","q","k","g","sh","t","n","dh"]),t.s) +B.acO=A.a(s(["Bh:mm:ss [zzzz]","Bh:mm:ss [z]","Bh:mm:ss","Bh:mm"]),t.s) +B.acN=A.a(s(["{1} \u0930\u094b\u091c\u0940 {0}","{1} \u0930\u094b\u091c\u0940 {0}","{1}, {0}","{1}, {0}"]),t.s) +B.DI=A.a(s(["jan.","feb.","mar.","apr.","maj","jun.","jul.","avg.","sep.","okt.","nov.","dec."]),t.s) +B.acP=A.a(s(["{1}, {0}","{1}, {0}","{1}, {0}","{1} {0}"]),t.s) +B.DJ=A.a(s(["yan","fev","mar","apr","may","iyn","iyl","avq","sen","okt","noy","dek"]),t.s) +B.acQ=A.a(s(["a h:mm:ss zzzz","a h:mm:ss z","a h:mm:ss","a h:mm"]),t.s) +B.acR=A.a(s(["\u0441\u0456\u0447\u0435\u043d\u044c","\u043b\u044e\u0442\u0438\u0439","\u0431\u0435\u0440\u0435\u0437\u0435\u043d\u044c","\u043a\u0432\u0456\u0442\u0435\u043d\u044c","\u0442\u0440\u0430\u0432\u0435\u043d\u044c","\u0447\u0435\u0440\u0432\u0435\u043d\u044c","\u043b\u0438\u043f\u0435\u043d\u044c","\u0441\u0435\u0440\u043f\u0435\u043d\u044c","\u0432\u0435\u0440\u0435\u0441\u0435\u043d\u044c","\u0436\u043e\u0432\u0442\u0435\u043d\u044c","\u043b\u0438\u0441\u0442\u043e\u043f\u0430\u0434","\u0433\u0440\u0443\u0434\u0435\u043d\u044c"]),t.s) +B.DK=A.a(s(["\u0c9c\u0ca8\u0cb5\u0cb0\u0cbf","\u0cab\u0cc6\u0cac\u0ccd\u0cb0\u0cb5\u0cb0\u0cbf","\u0cae\u0cbe\u0cb0\u0ccd\u0c9a\u0ccd","\u0c8f\u0caa\u0ccd\u0cb0\u0cbf\u0cb2\u0ccd","\u0cae\u0cc7","\u0c9c\u0cc2\u0ca8\u0ccd","\u0c9c\u0cc1\u0cb2\u0cc8","\u0c86\u0c97\u0cb8\u0ccd\u0c9f\u0ccd","\u0cb8\u0cc6\u0caa\u0ccd\u0c9f\u0cc6\u0c82\u0cac\u0cb0\u0ccd","\u0c85\u0c95\u0ccd\u0c9f\u0ccb\u0cac\u0cb0\u0ccd","\u0ca8\u0cb5\u0cc6\u0c82\u0cac\u0cb0\u0ccd","\u0ca1\u0cbf\u0cb8\u0cc6\u0c82\u0cac\u0cb0\u0ccd"]),t.s) +B.acS=A.a(s(["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua"]),t.s) +B.acT=A.a(s(["1. \u010dtvrtlet\xed","2. \u010dtvrtlet\xed","3. \u010dtvrtlet\xed","4. \u010dtvrtlet\xed"]),t.s) +B.acU=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","d.M.yy"]),t.s) +B.acV=A.a(s(["EEEE, d 'de' MMMM 'de' y","d 'de' MMMM 'de' y","dd/MM/y","dd/MM/yy"]),t.s) +B.DL=A.a(s(["av. J.-C.","ap. J.-C."]),t.s) +B.mF=A.a(s(["\u0930","\u0938\u094b","\u092e\u0902","\u092c\u0941","\u0917\u0941","\u0936\u0941","\u0936"]),t.s) +B.mG=A.a(s(["\u0458","\u0444","\u043c","\u0430","\u043c","\u0458","\u0458","\u0430","\u0441","\u043e","\u043d","\u0434"]),t.s) +B.acW=A.a(s(["yb","yh"]),t.s) +B.DM=A.a(s(["\u05d9\u05e0\u05d5\u05d0\u05e8","\u05e4\u05d1\u05e8\u05d5\u05d0\u05e8","\u05de\u05e8\u05e5","\u05d0\u05e4\u05e8\u05d9\u05dc","\u05de\u05d0\u05d9","\u05d9\u05d5\u05e0\u05d9","\u05d9\u05d5\u05dc\u05d9","\u05d0\u05d5\u05d2\u05d5\u05e1\u05d8","\u05e1\u05e4\u05d8\u05de\u05d1\u05e8","\u05d0\u05d5\u05e7\u05d8\u05d5\u05d1\u05e8","\u05e0\u05d5\u05d1\u05de\u05d1\u05e8","\u05d3\u05e6\u05de\u05d1\u05e8"]),t.s) +B.DN=A.a(s(["E","P","M","A","M","Hun","Hul","Ago","Set","Okt","Nob","Dis"]),t.s) +B.acY=A.a(s(["\u0e01\u0e48\u0e2d\u0e19\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07","\u0e2b\u0e25\u0e31\u0e07\u0e40\u0e17\u0e35\u0e48\u0e22\u0e07"]),t.s) +B.DO=A.a(s(["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."]),t.s) +B.DP=A.a(s(["\u5468\u65e5","\u5468\u4e00","\u5468\u4e8c","\u5468\u4e09","\u5468\u56db","\u5468\u4e94","\u5468\u516d"]),t.s) +B.acZ=A.a(s(["\u0bae\u0bc1\u0bb1\u0bcd\u0baa\u0b95\u0bb2\u0bcd","\u0baa\u0bbf\u0bb1\u0bcd\u0baa\u0b95\u0bb2\u0bcd"]),t.s) +B.ad_=A.a(s(["\u0574.\u0569.\u0561.","\u0574.\u0569."]),t.s) +B.ad0=A.a(s(["\u091c\u0928","\u092b\u0947\u092c","\u092e\u093e\u0930\u094d\u091a","\u0905\u092a\u094d\u0930","\u092e\u0947","\u091c\u0941\u0928","\u091c\u0941\u0932","\u0905\u0917","\u0938\u0947\u092a","\u0905\u0915\u094d\u091f\u094b","\u0928\u094b\u092d\u0947","\u0921\u093f\u0938\u0947"]),t.s) +B.DQ=A.a(s(["EEEE, d MMMM y","d MMMM y","d MMM y","dd/MM/y"]),t.s) +B.DR=A.a(s(["U","O","M","A","M","E","U","A","I","U","A","A"]),t.s) +B.DS=A.a(s(["\u17a2\u17b6\u1791\u17b7\u178f\u17d2\u1799","\u1785\u1793\u17d2\u1791","\u17a2\u1784\u17d2\u1782\u17b6\u179a","\u1796\u17bb\u1792","\u1796\u17d2\u179a\u17a0","\u179f\u17bb\u1780\u17d2\u179a","\u179f\u17c5\u179a\u17cd"]),t.s) +B.DT=A.a(s(["1\xba trimestre","2\xba trimestre","3\xba trimestre","4\xba trimestre"]),t.s) +B.ad1=A.a(s(["d MMMM y EEEE","d MMMM y","d MMM y","d.MM.y"]),t.s) +B.DU=A.a(s(["janv.","f\xe9vr.","mars","avr.","mai","juin","juill.","ao\xfbt","sept.","oct.","nov.","d\xe9c."]),t.s) +B.k5=new A.DK(0,"butt") +B.th=new A.DK(1,"round") +B.ti=new A.DK(2,"square") +B.ad2=A.a(s([B.k5,B.th,B.ti]),A.ar("E")) +B.ad3=A.a(s(["f.h.","e.h."]),t.s) +B.ad4=new A.KA(null) +B.ad6=new A.dX("en",null,null) +B.ql=new A.dX("und",null,null) +B.D=new A.KE(0,"ignored") +B.A=new A.tY(0,"debug") +B.a0=new A.tY(1,"info") +B.f=new A.tY(2,"warning") +B.p=new A.tY(3,"error") +B.DZ=new A.x(113) +B.bE=new A.x(4294967304) +B.jr=new A.x(4294967323) +B.bF=new A.x(4294967423) +B.qo=new A.x(4294967558) +B.cB=new A.x(4294968066) +B.cC=new A.x(4294968067) +B.f8=new A.x(8589934848) +B.hD=new A.x(8589934849) +B.dq=new A.x(8589934850) +B.dR=new A.x(8589934851) +B.f9=new A.x(8589934852) +B.hE=new A.x(8589934853) +B.fa=new A.x(8589934854) +B.hF=new A.x(8589934855) +B.hG=new A.x(8589935088) +B.hH=new A.x(8589935090) +B.hI=new A.x(8589935092) +B.ep=new A.x(8589935094) +B.aew=new A.aFp("longPress") +B.aex=new A.C2(B.j) +B.jN=new A.cu(B.aH,B.x) +B.aBp=new A.C4(1,null,B.jN) +B.ar=new A.I(0,0,0,0) +B.aey=new A.qi(B.j,B.ar,B.ar,B.ar) +B.o=new A.tZ(0,"start") +B.cD=new A.tZ(1,"end") +B.ac=new A.tZ(2,"center") +B.bX=new A.tZ(3,"spaceBetween") +B.mM=new A.tZ(4,"spaceAround") +B.jz=new A.tZ(5,"spaceEvenly") +B.aE=new A.a20(0,"min") +B.k=new A.a20(1,"max") +B.E1=new A.x(42) +B.IJ=new A.x(8589935146) +B.a6A=A.a(s([B.E1,null,null,B.IJ]),t.L) +B.Iu=new A.x(43) +B.IK=new A.x(8589935147) +B.a6B=A.a(s([B.Iu,null,null,B.IK]),t.L) +B.Iv=new A.x(45) +B.IL=new A.x(8589935149) +B.a6C=A.a(s([B.Iv,null,null,B.IL]),t.L) +B.Iw=new A.x(46) +B.fb=new A.x(8589935150) +B.a6D=A.a(s([B.Iw,null,null,B.fb]),t.L) +B.Ix=new A.x(47) +B.IM=new A.x(8589935151) +B.a6E=A.a(s([B.Ix,null,null,B.IM]),t.L) +B.Iy=new A.x(48) +B.qr=new A.x(8589935152) +B.a9U=A.a(s([B.Iy,null,null,B.qr]),t.L) +B.Iz=new A.x(49) +B.jv=new A.x(8589935153) +B.a9V=A.a(s([B.Iz,null,null,B.jv]),t.L) +B.IA=new A.x(50) +B.fc=new A.x(8589935154) +B.a9W=A.a(s([B.IA,null,null,B.fc]),t.L) +B.IB=new A.x(51) +B.jw=new A.x(8589935155) +B.a9X=A.a(s([B.IB,null,null,B.jw]),t.L) +B.IC=new A.x(52) +B.fd=new A.x(8589935156) +B.a9Y=A.a(s([B.IC,null,null,B.fd]),t.L) +B.ID=new A.x(53) +B.qs=new A.x(8589935157) +B.a9Z=A.a(s([B.ID,null,null,B.qs]),t.L) +B.IE=new A.x(54) +B.fe=new A.x(8589935158) +B.aa_=A.a(s([B.IE,null,null,B.fe]),t.L) +B.IF=new A.x(55) +B.jx=new A.x(8589935159) +B.aa0=A.a(s([B.IF,null,null,B.jx]),t.L) +B.IG=new A.x(56) +B.ff=new A.x(8589935160) +B.a99=A.a(s([B.IG,null,null,B.ff]),t.L) +B.IH=new A.x(57) +B.jy=new A.x(8589935161) +B.a9a=A.a(s([B.IH,null,null,B.jy]),t.L) +B.acd=A.a(s([B.f9,B.f9,B.hE,null]),t.L) +B.mJ=new A.x(4294967555) +B.a9S=A.a(s([B.mJ,null,B.mJ,null]),t.L) +B.dn=new A.x(4294968065) +B.a4Y=A.a(s([B.dn,null,null,B.fc]),t.L) +B.a4Z=A.a(s([B.cB,null,null,B.fd]),t.L) +B.a5_=A.a(s([B.cC,null,null,B.fe]),t.L) +B.dp=new A.x(4294968068) +B.a4B=A.a(s([B.dp,null,null,B.ff]),t.L) +B.qp=new A.x(4294968321) +B.a5t=A.a(s([B.qp,null,null,B.qs]),t.L) +B.ace=A.a(s([B.f8,B.f8,B.hD,null]),t.L) +B.a5k=A.a(s([B.bF,null,null,B.fb]),t.L) +B.f6=new A.x(4294968069) +B.a50=A.a(s([B.f6,null,null,B.jv]),t.L) +B.mI=new A.x(4294967309) +B.II=new A.x(8589935117) +B.a4T=A.a(s([B.mI,null,null,B.II]),t.L) +B.f7=new A.x(4294968070) +B.a51=A.a(s([B.f7,null,null,B.jx]),t.L) +B.qq=new A.x(4294968327) +B.a5u=A.a(s([B.qq,null,null,B.qr]),t.L) +B.acf=A.a(s([B.fa,B.fa,B.hF,null]),t.L) +B.jt=new A.x(4294968071) +B.a52=A.a(s([B.jt,null,null,B.jw]),t.L) +B.ju=new A.x(4294968072) +B.a4_=A.a(s([B.ju,null,null,B.jy]),t.L) +B.acg=A.a(s([B.dq,B.dq,B.dR,null]),t.L) +B.aez=new A.cR(["*",B.a6A,"+",B.a6B,"-",B.a6C,".",B.a6D,"/",B.a6E,"0",B.a9U,"1",B.a9V,"2",B.a9W,"3",B.a9X,"4",B.a9Y,"5",B.a9Z,"6",B.aa_,"7",B.aa0,"8",B.a99,"9",B.a9a,"Alt",B.acd,"AltGraph",B.a9S,"ArrowDown",B.a4Y,"ArrowLeft",B.a4Z,"ArrowRight",B.a5_,"ArrowUp",B.a4B,"Clear",B.a5t,"Control",B.ace,"Delete",B.a5k,"End",B.a50,"Enter",B.a4T,"Home",B.a51,"Insert",B.a5u,"Meta",B.acf,"PageDown",B.a52,"PageUp",B.a4_,"Shift",B.acg],A.ar("cR>")) +B.a4e=A.a(s([42,null,null,8589935146]),t.Z) +B.a4f=A.a(s([43,null,null,8589935147]),t.Z) +B.a4j=A.a(s([45,null,null,8589935149]),t.Z) +B.a4k=A.a(s([46,null,null,8589935150]),t.Z) +B.a4o=A.a(s([47,null,null,8589935151]),t.Z) +B.a4p=A.a(s([48,null,null,8589935152]),t.Z) +B.a4q=A.a(s([49,null,null,8589935153]),t.Z) +B.a4H=A.a(s([50,null,null,8589935154]),t.Z) +B.a4I=A.a(s([51,null,null,8589935155]),t.Z) +B.a4K=A.a(s([52,null,null,8589935156]),t.Z) +B.a4L=A.a(s([53,null,null,8589935157]),t.Z) +B.a4M=A.a(s([54,null,null,8589935158]),t.Z) +B.a4N=A.a(s([55,null,null,8589935159]),t.Z) +B.a4O=A.a(s([56,null,null,8589935160]),t.Z) +B.a4P=A.a(s([57,null,null,8589935161]),t.Z) +B.a8_=A.a(s([8589934852,8589934852,8589934853,null]),t.Z) +B.a43=A.a(s([4294967555,null,4294967555,null]),t.Z) +B.a44=A.a(s([4294968065,null,null,8589935154]),t.Z) +B.a45=A.a(s([4294968066,null,null,8589935156]),t.Z) +B.a46=A.a(s([4294968067,null,null,8589935158]),t.Z) +B.a47=A.a(s([4294968068,null,null,8589935160]),t.Z) +B.a4c=A.a(s([4294968321,null,null,8589935157]),t.Z) +B.a80=A.a(s([8589934848,8589934848,8589934849,null]),t.Z) +B.a42=A.a(s([4294967423,null,null,8589935150]),t.Z) +B.a48=A.a(s([4294968069,null,null,8589935153]),t.Z) +B.a41=A.a(s([4294967309,null,null,8589935117]),t.Z) +B.a49=A.a(s([4294968070,null,null,8589935159]),t.Z) +B.a4d=A.a(s([4294968327,null,null,8589935152]),t.Z) +B.a81=A.a(s([8589934854,8589934854,8589934855,null]),t.Z) +B.a4a=A.a(s([4294968071,null,null,8589935155]),t.Z) +B.a4b=A.a(s([4294968072,null,null,8589935161]),t.Z) +B.a82=A.a(s([8589934850,8589934850,8589934851,null]),t.Z) +B.IO=new A.cR(["*",B.a4e,"+",B.a4f,"-",B.a4j,".",B.a4k,"/",B.a4o,"0",B.a4p,"1",B.a4q,"2",B.a4H,"3",B.a4I,"4",B.a4K,"5",B.a4L,"6",B.a4M,"7",B.a4N,"8",B.a4O,"9",B.a4P,"Alt",B.a8_,"AltGraph",B.a43,"ArrowDown",B.a44,"ArrowLeft",B.a45,"ArrowRight",B.a46,"ArrowUp",B.a47,"Clear",B.a4c,"Control",B.a80,"Delete",B.a42,"End",B.a48,"Enter",B.a41,"Home",B.a49,"Insert",B.a4d,"Meta",B.a81,"PageDown",B.a4a,"PageUp",B.a4b,"Shift",B.a82],A.ar("cR>")) +B.aeA=new A.cR([0,"FontWeight.w100",1,"FontWeight.w200",2,"FontWeight.w300",3,"FontWeight.w400",4,"FontWeight.w500",5,"FontWeight.w600",6,"FontWeight.w700",7,"FontWeight.w800",8,"FontWeight.w900"],A.ar("cR")) +B.aiK={"deleteBackward:":0,"deleteWordBackward:":1,"deleteToBeginningOfLine:":2,"deleteForward:":3,"deleteWordForward:":4,"deleteToEndOfLine:":5,"moveLeft:":6,"moveRight:":7,"moveForward:":8,"moveBackward:":9,"moveUp:":10,"moveDown:":11,"moveLeftAndModifySelection:":12,"moveRightAndModifySelection:":13,"moveUpAndModifySelection:":14,"moveDownAndModifySelection:":15,"moveWordLeft:":16,"moveWordRight:":17,"moveToBeginningOfParagraph:":18,"moveToEndOfParagraph:":19,"moveWordLeftAndModifySelection:":20,"moveWordRightAndModifySelection:":21,"moveParagraphBackwardAndModifySelection:":22,"moveParagraphForwardAndModifySelection:":23,"moveToLeftEndOfLine:":24,"moveToRightEndOfLine:":25,"moveToBeginningOfDocument:":26,"moveToEndOfDocument:":27,"moveToLeftEndOfLineAndModifySelection:":28,"moveToRightEndOfLineAndModifySelection:":29,"moveToBeginningOfDocumentAndModifySelection:":30,"moveToEndOfDocumentAndModifySelection:":31,"transpose:":32,"scrollToBeginningOfDocument:":33,"scrollToEndOfDocument:":34,"scrollPageUp:":35,"scrollPageDown:":36,"pageUpAndModifySelection:":37,"pageDownAndModifySelection:":38,"cancelOperation:":39,"insertTab:":40,"insertBacktab:":41} +B.ND=new A.qQ(!1) +B.NE=new A.qQ(!0) +B.jR=new A.a7R(1,"page") +B.NC=new A.nh(B.at,B.jR) +B.NB=new A.nh(B.ah,B.jR) +B.SO=new A.k3() +B.Ta=new A.a4Y() +B.Tj=new A.a6g() +B.aeB=new A.ai(B.aiK,[B.pk,B.pn,B.pl,B.iS,B.iT,B.pm,B.hg,B.hh,B.hh,B.hg,B.hi,B.hj,B.ll,B.lm,B.j7,B.j8,B.lp,B.lq,B.eR,B.eS,B.xe,B.xf,B.xa,B.xb,B.eR,B.eS,B.ln,B.lo,B.x1,B.x2,B.pB,B.pC,B.uZ,B.ND,B.NE,B.NC,B.NB,B.lr,B.ls,B.SO,B.Ta,B.Tj],A.ar("ai")) +B.E0=new A.x(32) +B.adp=new A.x(33) +B.adq=new A.x(34) +B.adr=new A.x(35) +B.ads=new A.x(36) +B.adt=new A.x(37) +B.adu=new A.x(38) +B.adv=new A.x(39) +B.adw=new A.x(40) +B.adx=new A.x(41) +B.ady=new A.x(44) +B.adz=new A.x(58) +B.adA=new A.x(59) +B.adB=new A.x(60) +B.adC=new A.x(61) +B.adD=new A.x(62) +B.adE=new A.x(63) +B.adF=new A.x(64) +B.aeq=new A.x(91) +B.aer=new A.x(92) +B.aes=new A.x(93) +B.aet=new A.x(94) +B.aeu=new A.x(95) +B.aev=new A.x(96) +B.qt=new A.x(97) +B.IN=new A.x(98) +B.qu=new A.x(99) +B.ad7=new A.x(100) +B.DV=new A.x(101) +B.DW=new A.x(102) +B.ad8=new A.x(103) +B.ad9=new A.x(104) +B.ada=new A.x(105) +B.adb=new A.x(106) +B.adc=new A.x(107) +B.add=new A.x(108) +B.ade=new A.x(109) +B.DX=new A.x(110) +B.adf=new A.x(111) +B.DY=new A.x(112) +B.adg=new A.x(114) +B.adh=new A.x(115) +B.E_=new A.x(116) +B.adi=new A.x(117) +B.qm=new A.x(118) +B.adj=new A.x(119) +B.qn=new A.x(120) +B.adk=new A.x(121) +B.jq=new A.x(122) +B.adl=new A.x(123) +B.adm=new A.x(124) +B.adn=new A.x(125) +B.ado=new A.x(126) +B.E2=new A.x(4294967297) +B.mH=new A.x(4294967305) +B.E3=new A.x(4294967553) +B.E4=new A.x(4294967559) +B.E5=new A.x(4294967560) +B.E6=new A.x(4294967566) +B.E7=new A.x(4294967567) +B.E8=new A.x(4294967568) +B.E9=new A.x(4294967569) +B.Ea=new A.x(4294968322) +B.Eb=new A.x(4294968323) +B.Ec=new A.x(4294968324) +B.Ed=new A.x(4294968325) +B.Ee=new A.x(4294968326) +B.Ef=new A.x(4294968328) +B.Eg=new A.x(4294968329) +B.Eh=new A.x(4294968330) +B.Ei=new A.x(4294968577) +B.Ej=new A.x(4294968578) +B.Ek=new A.x(4294968579) +B.El=new A.x(4294968580) +B.Em=new A.x(4294968581) +B.En=new A.x(4294968582) +B.Eo=new A.x(4294968583) +B.Ep=new A.x(4294968584) +B.Eq=new A.x(4294968585) +B.Er=new A.x(4294968586) +B.Es=new A.x(4294968587) +B.Et=new A.x(4294968588) +B.Eu=new A.x(4294968589) +B.Ev=new A.x(4294968590) +B.Ew=new A.x(4294968833) +B.Ex=new A.x(4294968834) +B.Ey=new A.x(4294968835) +B.Ez=new A.x(4294968836) +B.EA=new A.x(4294968837) +B.EB=new A.x(4294968838) +B.EC=new A.x(4294968839) +B.ED=new A.x(4294968840) +B.EE=new A.x(4294968841) +B.EF=new A.x(4294968842) +B.EG=new A.x(4294968843) +B.EH=new A.x(4294969089) +B.EI=new A.x(4294969090) +B.EJ=new A.x(4294969091) +B.EK=new A.x(4294969092) +B.EL=new A.x(4294969093) +B.EM=new A.x(4294969094) +B.EN=new A.x(4294969095) +B.EO=new A.x(4294969096) +B.EP=new A.x(4294969097) +B.EQ=new A.x(4294969098) +B.ER=new A.x(4294969099) +B.ES=new A.x(4294969100) +B.ET=new A.x(4294969101) +B.EU=new A.x(4294969102) +B.EV=new A.x(4294969103) +B.EW=new A.x(4294969104) +B.EX=new A.x(4294969105) +B.EY=new A.x(4294969106) +B.EZ=new A.x(4294969107) +B.F_=new A.x(4294969108) +B.F0=new A.x(4294969109) +B.F1=new A.x(4294969110) +B.F2=new A.x(4294969111) +B.F3=new A.x(4294969112) +B.F4=new A.x(4294969113) +B.F5=new A.x(4294969114) +B.F6=new A.x(4294969115) +B.F7=new A.x(4294969116) +B.F8=new A.x(4294969117) +B.F9=new A.x(4294969345) +B.Fa=new A.x(4294969346) +B.Fb=new A.x(4294969347) +B.Fc=new A.x(4294969348) +B.Fd=new A.x(4294969349) +B.Fe=new A.x(4294969350) +B.Ff=new A.x(4294969351) +B.Fg=new A.x(4294969352) +B.Fh=new A.x(4294969353) +B.Fi=new A.x(4294969354) +B.Fj=new A.x(4294969355) +B.Fk=new A.x(4294969356) +B.Fl=new A.x(4294969357) +B.Fm=new A.x(4294969358) +B.Fn=new A.x(4294969359) +B.Fo=new A.x(4294969360) +B.Fp=new A.x(4294969361) +B.Fq=new A.x(4294969362) +B.Fr=new A.x(4294969363) +B.Fs=new A.x(4294969364) +B.Ft=new A.x(4294969365) +B.Fu=new A.x(4294969366) +B.Fv=new A.x(4294969367) +B.Fw=new A.x(4294969368) +B.Fx=new A.x(4294969601) +B.Fy=new A.x(4294969602) +B.Fz=new A.x(4294969603) +B.FA=new A.x(4294969604) +B.FB=new A.x(4294969605) +B.FC=new A.x(4294969606) +B.FD=new A.x(4294969607) +B.FE=new A.x(4294969608) +B.FF=new A.x(4294969857) +B.FG=new A.x(4294969858) +B.FH=new A.x(4294969859) +B.FI=new A.x(4294969860) +B.FJ=new A.x(4294969861) +B.FK=new A.x(4294969863) +B.FL=new A.x(4294969864) +B.FM=new A.x(4294969865) +B.FN=new A.x(4294969866) +B.FO=new A.x(4294969867) +B.FP=new A.x(4294969868) +B.FQ=new A.x(4294969869) +B.FR=new A.x(4294969870) +B.FS=new A.x(4294969871) +B.FT=new A.x(4294969872) +B.FU=new A.x(4294969873) +B.FV=new A.x(4294970113) +B.FW=new A.x(4294970114) +B.FX=new A.x(4294970115) +B.FY=new A.x(4294970116) +B.FZ=new A.x(4294970117) +B.G_=new A.x(4294970118) +B.G0=new A.x(4294970119) +B.G1=new A.x(4294970120) +B.G2=new A.x(4294970121) +B.G3=new A.x(4294970122) +B.G4=new A.x(4294970123) +B.G5=new A.x(4294970124) +B.G6=new A.x(4294970125) +B.G7=new A.x(4294970126) +B.G8=new A.x(4294970127) +B.G9=new A.x(4294970369) +B.Ga=new A.x(4294970370) +B.Gb=new A.x(4294970371) +B.Gc=new A.x(4294970372) +B.Gd=new A.x(4294970373) +B.Ge=new A.x(4294970374) +B.Gf=new A.x(4294970375) +B.Gg=new A.x(4294970625) +B.Gh=new A.x(4294970626) +B.Gi=new A.x(4294970627) +B.Gj=new A.x(4294970628) +B.Gk=new A.x(4294970629) +B.Gl=new A.x(4294970630) +B.Gm=new A.x(4294970631) +B.Gn=new A.x(4294970632) +B.Go=new A.x(4294970633) +B.Gp=new A.x(4294970634) +B.Gq=new A.x(4294970635) +B.Gr=new A.x(4294970636) +B.Gs=new A.x(4294970637) +B.Gt=new A.x(4294970638) +B.Gu=new A.x(4294970639) +B.Gv=new A.x(4294970640) +B.Gw=new A.x(4294970641) +B.Gx=new A.x(4294970642) +B.Gy=new A.x(4294970643) +B.Gz=new A.x(4294970644) +B.GA=new A.x(4294970645) +B.GB=new A.x(4294970646) +B.GC=new A.x(4294970647) +B.GD=new A.x(4294970648) +B.GE=new A.x(4294970649) +B.GF=new A.x(4294970650) +B.GG=new A.x(4294970651) +B.GH=new A.x(4294970652) +B.GI=new A.x(4294970653) +B.GJ=new A.x(4294970654) +B.GK=new A.x(4294970655) +B.GL=new A.x(4294970656) +B.GM=new A.x(4294970657) +B.GN=new A.x(4294970658) +B.GO=new A.x(4294970659) +B.GP=new A.x(4294970660) +B.GQ=new A.x(4294970661) +B.GR=new A.x(4294970662) +B.GS=new A.x(4294970663) +B.GT=new A.x(4294970664) +B.GU=new A.x(4294970665) +B.GV=new A.x(4294970666) +B.GW=new A.x(4294970667) +B.GX=new A.x(4294970668) +B.GY=new A.x(4294970669) +B.GZ=new A.x(4294970670) +B.H_=new A.x(4294970671) +B.H0=new A.x(4294970672) +B.H1=new A.x(4294970673) +B.H2=new A.x(4294970674) +B.H3=new A.x(4294970675) +B.H4=new A.x(4294970676) +B.H5=new A.x(4294970677) +B.H6=new A.x(4294970678) +B.H7=new A.x(4294970679) +B.H8=new A.x(4294970680) +B.H9=new A.x(4294970681) +B.Ha=new A.x(4294970682) +B.Hb=new A.x(4294970683) +B.Hc=new A.x(4294970684) +B.Hd=new A.x(4294970685) +B.He=new A.x(4294970686) +B.Hf=new A.x(4294970687) +B.Hg=new A.x(4294970688) +B.Hh=new A.x(4294970689) +B.Hi=new A.x(4294970690) +B.Hj=new A.x(4294970691) +B.Hk=new A.x(4294970692) +B.Hl=new A.x(4294970693) +B.Hm=new A.x(4294970694) +B.Hn=new A.x(4294970695) +B.Ho=new A.x(4294970696) +B.Hp=new A.x(4294970697) +B.Hq=new A.x(4294970698) +B.Hr=new A.x(4294970699) +B.Hs=new A.x(4294970700) +B.Ht=new A.x(4294970701) +B.Hu=new A.x(4294970702) +B.Hv=new A.x(4294970703) +B.Hw=new A.x(4294970704) +B.Hx=new A.x(4294970705) +B.Hy=new A.x(4294970706) +B.Hz=new A.x(4294970707) +B.HA=new A.x(4294970708) +B.HB=new A.x(4294970709) +B.HC=new A.x(4294970710) +B.HD=new A.x(4294970711) +B.HE=new A.x(4294970712) +B.HF=new A.x(4294970713) +B.HG=new A.x(4294970714) +B.HH=new A.x(4294970715) +B.HI=new A.x(4294970882) +B.HJ=new A.x(4294970884) +B.HK=new A.x(4294970885) +B.HL=new A.x(4294970886) +B.HM=new A.x(4294970887) +B.HN=new A.x(4294970888) +B.HO=new A.x(4294970889) +B.HP=new A.x(4294971137) +B.HQ=new A.x(4294971138) +B.HR=new A.x(4294971393) +B.HS=new A.x(4294971394) +B.HT=new A.x(4294971395) +B.HU=new A.x(4294971396) +B.HV=new A.x(4294971397) +B.HW=new A.x(4294971398) +B.HX=new A.x(4294971399) +B.HY=new A.x(4294971400) +B.HZ=new A.x(4294971401) +B.I_=new A.x(4294971402) +B.I0=new A.x(4294971403) +B.I1=new A.x(4294971649) +B.I2=new A.x(4294971650) +B.I3=new A.x(4294971651) +B.I4=new A.x(4294971652) +B.I5=new A.x(4294971653) +B.I6=new A.x(4294971654) +B.I7=new A.x(4294971655) +B.I8=new A.x(4294971656) +B.I9=new A.x(4294971657) +B.Ia=new A.x(4294971658) +B.Ib=new A.x(4294971659) +B.Ic=new A.x(4294971660) +B.Id=new A.x(4294971661) +B.Ie=new A.x(4294971662) +B.If=new A.x(4294971663) +B.Ig=new A.x(4294971664) +B.Ih=new A.x(4294971665) +B.Ii=new A.x(4294971666) +B.Ij=new A.x(4294971667) +B.Ik=new A.x(4294971668) +B.Il=new A.x(4294971669) +B.Im=new A.x(4294971670) +B.In=new A.x(4294971671) +B.Io=new A.x(4294971672) +B.Ip=new A.x(4294971673) +B.Iq=new A.x(4294971674) +B.Ir=new A.x(4294971675) +B.Is=new A.x(4294971905) +B.It=new A.x(4294971906) +B.adG=new A.x(8589934592) +B.adH=new A.x(8589934593) +B.adI=new A.x(8589934594) +B.adJ=new A.x(8589934595) +B.adK=new A.x(8589934608) +B.adL=new A.x(8589934609) +B.adM=new A.x(8589934610) +B.adN=new A.x(8589934611) +B.adO=new A.x(8589934612) +B.adP=new A.x(8589934624) +B.adQ=new A.x(8589934625) +B.adR=new A.x(8589934626) +B.adS=new A.x(8589935144) +B.adT=new A.x(8589935145) +B.adU=new A.x(8589935148) +B.adV=new A.x(8589935165) +B.adW=new A.x(8589935361) +B.adX=new A.x(8589935362) +B.adY=new A.x(8589935363) +B.adZ=new A.x(8589935364) +B.ae_=new A.x(8589935365) +B.ae0=new A.x(8589935366) +B.ae1=new A.x(8589935367) +B.ae2=new A.x(8589935368) +B.ae3=new A.x(8589935369) +B.ae4=new A.x(8589935370) +B.ae5=new A.x(8589935371) +B.ae6=new A.x(8589935372) +B.ae7=new A.x(8589935373) +B.ae8=new A.x(8589935374) +B.ae9=new A.x(8589935375) +B.aea=new A.x(8589935376) +B.aeb=new A.x(8589935377) +B.aec=new A.x(8589935378) +B.aed=new A.x(8589935379) +B.aee=new A.x(8589935380) +B.aef=new A.x(8589935381) +B.aeg=new A.x(8589935382) +B.aeh=new A.x(8589935383) +B.aei=new A.x(8589935384) +B.aej=new A.x(8589935385) +B.aek=new A.x(8589935386) +B.ael=new A.x(8589935387) +B.aem=new A.x(8589935388) +B.aen=new A.x(8589935389) +B.aeo=new A.x(8589935390) +B.aep=new A.x(8589935391) +B.aeC=new A.cR([32,B.E0,33,B.adp,34,B.adq,35,B.adr,36,B.ads,37,B.adt,38,B.adu,39,B.adv,40,B.adw,41,B.adx,42,B.E1,43,B.Iu,44,B.ady,45,B.Iv,46,B.Iw,47,B.Ix,48,B.Iy,49,B.Iz,50,B.IA,51,B.IB,52,B.IC,53,B.ID,54,B.IE,55,B.IF,56,B.IG,57,B.IH,58,B.adz,59,B.adA,60,B.adB,61,B.adC,62,B.adD,63,B.adE,64,B.adF,91,B.aeq,92,B.aer,93,B.aes,94,B.aet,95,B.aeu,96,B.aev,97,B.qt,98,B.IN,99,B.qu,100,B.ad7,101,B.DV,102,B.DW,103,B.ad8,104,B.ad9,105,B.ada,106,B.adb,107,B.adc,108,B.add,109,B.ade,110,B.DX,111,B.adf,112,B.DY,113,B.DZ,114,B.adg,115,B.adh,116,B.E_,117,B.adi,118,B.qm,119,B.adj,120,B.qn,121,B.adk,122,B.jq,123,B.adl,124,B.adm,125,B.adn,126,B.ado,4294967297,B.E2,4294967304,B.bE,4294967305,B.mH,4294967309,B.mI,4294967323,B.jr,4294967423,B.bF,4294967553,B.E3,4294967555,B.mJ,4294967556,B.js,4294967558,B.qo,4294967559,B.E4,4294967560,B.E5,4294967562,B.mK,4294967564,B.mL,4294967566,B.E6,4294967567,B.E7,4294967568,B.E8,4294967569,B.E9,4294968065,B.dn,4294968066,B.cB,4294968067,B.cC,4294968068,B.dp,4294968069,B.f6,4294968070,B.f7,4294968071,B.jt,4294968072,B.ju,4294968321,B.qp,4294968322,B.Ea,4294968323,B.Eb,4294968324,B.Ec,4294968325,B.Ed,4294968326,B.Ee,4294968327,B.qq,4294968328,B.Ef,4294968329,B.Eg,4294968330,B.Eh,4294968577,B.Ei,4294968578,B.Ej,4294968579,B.Ek,4294968580,B.El,4294968581,B.Em,4294968582,B.En,4294968583,B.Eo,4294968584,B.Ep,4294968585,B.Eq,4294968586,B.Er,4294968587,B.Es,4294968588,B.Et,4294968589,B.Eu,4294968590,B.Ev,4294968833,B.Ew,4294968834,B.Ex,4294968835,B.Ey,4294968836,B.Ez,4294968837,B.EA,4294968838,B.EB,4294968839,B.EC,4294968840,B.ED,4294968841,B.EE,4294968842,B.EF,4294968843,B.EG,4294969089,B.EH,4294969090,B.EI,4294969091,B.EJ,4294969092,B.EK,4294969093,B.EL,4294969094,B.EM,4294969095,B.EN,4294969096,B.EO,4294969097,B.EP,4294969098,B.EQ,4294969099,B.ER,4294969100,B.ES,4294969101,B.ET,4294969102,B.EU,4294969103,B.EV,4294969104,B.EW,4294969105,B.EX,4294969106,B.EY,4294969107,B.EZ,4294969108,B.F_,4294969109,B.F0,4294969110,B.F1,4294969111,B.F2,4294969112,B.F3,4294969113,B.F4,4294969114,B.F5,4294969115,B.F6,4294969116,B.F7,4294969117,B.F8,4294969345,B.F9,4294969346,B.Fa,4294969347,B.Fb,4294969348,B.Fc,4294969349,B.Fd,4294969350,B.Fe,4294969351,B.Ff,4294969352,B.Fg,4294969353,B.Fh,4294969354,B.Fi,4294969355,B.Fj,4294969356,B.Fk,4294969357,B.Fl,4294969358,B.Fm,4294969359,B.Fn,4294969360,B.Fo,4294969361,B.Fp,4294969362,B.Fq,4294969363,B.Fr,4294969364,B.Fs,4294969365,B.Ft,4294969366,B.Fu,4294969367,B.Fv,4294969368,B.Fw,4294969601,B.Fx,4294969602,B.Fy,4294969603,B.Fz,4294969604,B.FA,4294969605,B.FB,4294969606,B.FC,4294969607,B.FD,4294969608,B.FE,4294969857,B.FF,4294969858,B.FG,4294969859,B.FH,4294969860,B.FI,4294969861,B.FJ,4294969863,B.FK,4294969864,B.FL,4294969865,B.FM,4294969866,B.FN,4294969867,B.FO,4294969868,B.FP,4294969869,B.FQ,4294969870,B.FR,4294969871,B.FS,4294969872,B.FT,4294969873,B.FU,4294970113,B.FV,4294970114,B.FW,4294970115,B.FX,4294970116,B.FY,4294970117,B.FZ,4294970118,B.G_,4294970119,B.G0,4294970120,B.G1,4294970121,B.G2,4294970122,B.G3,4294970123,B.G4,4294970124,B.G5,4294970125,B.G6,4294970126,B.G7,4294970127,B.G8,4294970369,B.G9,4294970370,B.Ga,4294970371,B.Gb,4294970372,B.Gc,4294970373,B.Gd,4294970374,B.Ge,4294970375,B.Gf,4294970625,B.Gg,4294970626,B.Gh,4294970627,B.Gi,4294970628,B.Gj,4294970629,B.Gk,4294970630,B.Gl,4294970631,B.Gm,4294970632,B.Gn,4294970633,B.Go,4294970634,B.Gp,4294970635,B.Gq,4294970636,B.Gr,4294970637,B.Gs,4294970638,B.Gt,4294970639,B.Gu,4294970640,B.Gv,4294970641,B.Gw,4294970642,B.Gx,4294970643,B.Gy,4294970644,B.Gz,4294970645,B.GA,4294970646,B.GB,4294970647,B.GC,4294970648,B.GD,4294970649,B.GE,4294970650,B.GF,4294970651,B.GG,4294970652,B.GH,4294970653,B.GI,4294970654,B.GJ,4294970655,B.GK,4294970656,B.GL,4294970657,B.GM,4294970658,B.GN,4294970659,B.GO,4294970660,B.GP,4294970661,B.GQ,4294970662,B.GR,4294970663,B.GS,4294970664,B.GT,4294970665,B.GU,4294970666,B.GV,4294970667,B.GW,4294970668,B.GX,4294970669,B.GY,4294970670,B.GZ,4294970671,B.H_,4294970672,B.H0,4294970673,B.H1,4294970674,B.H2,4294970675,B.H3,4294970676,B.H4,4294970677,B.H5,4294970678,B.H6,4294970679,B.H7,4294970680,B.H8,4294970681,B.H9,4294970682,B.Ha,4294970683,B.Hb,4294970684,B.Hc,4294970685,B.Hd,4294970686,B.He,4294970687,B.Hf,4294970688,B.Hg,4294970689,B.Hh,4294970690,B.Hi,4294970691,B.Hj,4294970692,B.Hk,4294970693,B.Hl,4294970694,B.Hm,4294970695,B.Hn,4294970696,B.Ho,4294970697,B.Hp,4294970698,B.Hq,4294970699,B.Hr,4294970700,B.Hs,4294970701,B.Ht,4294970702,B.Hu,4294970703,B.Hv,4294970704,B.Hw,4294970705,B.Hx,4294970706,B.Hy,4294970707,B.Hz,4294970708,B.HA,4294970709,B.HB,4294970710,B.HC,4294970711,B.HD,4294970712,B.HE,4294970713,B.HF,4294970714,B.HG,4294970715,B.HH,4294970882,B.HI,4294970884,B.HJ,4294970885,B.HK,4294970886,B.HL,4294970887,B.HM,4294970888,B.HN,4294970889,B.HO,4294971137,B.HP,4294971138,B.HQ,4294971393,B.HR,4294971394,B.HS,4294971395,B.HT,4294971396,B.HU,4294971397,B.HV,4294971398,B.HW,4294971399,B.HX,4294971400,B.HY,4294971401,B.HZ,4294971402,B.I_,4294971403,B.I0,4294971649,B.I1,4294971650,B.I2,4294971651,B.I3,4294971652,B.I4,4294971653,B.I5,4294971654,B.I6,4294971655,B.I7,4294971656,B.I8,4294971657,B.I9,4294971658,B.Ia,4294971659,B.Ib,4294971660,B.Ic,4294971661,B.Id,4294971662,B.Ie,4294971663,B.If,4294971664,B.Ig,4294971665,B.Ih,4294971666,B.Ii,4294971667,B.Ij,4294971668,B.Ik,4294971669,B.Il,4294971670,B.Im,4294971671,B.In,4294971672,B.Io,4294971673,B.Ip,4294971674,B.Iq,4294971675,B.Ir,4294971905,B.Is,4294971906,B.It,8589934592,B.adG,8589934593,B.adH,8589934594,B.adI,8589934595,B.adJ,8589934608,B.adK,8589934609,B.adL,8589934610,B.adM,8589934611,B.adN,8589934612,B.adO,8589934624,B.adP,8589934625,B.adQ,8589934626,B.adR,8589934848,B.f8,8589934849,B.hD,8589934850,B.dq,8589934851,B.dR,8589934852,B.f9,8589934853,B.hE,8589934854,B.fa,8589934855,B.hF,8589935088,B.hG,8589935090,B.hH,8589935092,B.hI,8589935094,B.ep,8589935117,B.II,8589935144,B.adS,8589935145,B.adT,8589935146,B.IJ,8589935147,B.IK,8589935148,B.adU,8589935149,B.IL,8589935150,B.fb,8589935151,B.IM,8589935152,B.qr,8589935153,B.jv,8589935154,B.fc,8589935155,B.jw,8589935156,B.fd,8589935157,B.qs,8589935158,B.fe,8589935159,B.jx,8589935160,B.ff,8589935161,B.jy,8589935165,B.adV,8589935361,B.adW,8589935362,B.adX,8589935363,B.adY,8589935364,B.adZ,8589935365,B.ae_,8589935366,B.ae0,8589935367,B.ae1,8589935368,B.ae2,8589935369,B.ae3,8589935370,B.ae4,8589935371,B.ae5,8589935372,B.ae6,8589935373,B.ae7,8589935374,B.ae8,8589935375,B.ae9,8589935376,B.aea,8589935377,B.aeb,8589935378,B.aec,8589935379,B.aed,8589935380,B.aee,8589935381,B.aef,8589935382,B.aeg,8589935383,B.aeh,8589935384,B.aei,8589935385,B.aej,8589935386,B.aek,8589935387,B.ael,8589935388,B.aem,8589935389,B.aen,8589935390,B.aeo,8589935391,B.aep],A.ar("cR")) +B.jZ=new A.b1(B.dp,!1,!1,!1,!1,B.D) +B.k_=new A.b1(B.dn,!1,!1,!1,!1,B.D) +B.k0=new A.b1(B.cB,!1,!1,!1,!1,B.D) +B.k1=new A.b1(B.cC,!1,!1,!1,!1,B.D) +B.aAV=new A.FS(2,"up") +B.azz=new A.nC(B.aAV) +B.aAW=new A.FS(3,"down") +B.azA=new A.nC(B.aAW) +B.aAU=new A.FS(1,"left") +B.PI=new A.nC(B.aAU) +B.aAT=new A.FS(0,"right") +B.PH=new A.nC(B.aAT) +B.aeE=new A.cR([B.jZ,B.azz,B.k_,B.azA,B.k0,B.PI,B.k1,B.PH],t.Fp) +B.aiw={in:0,iw:1,ji:2,jw:3,mo:4,aam:5,adp:6,aue:7,ayx:8,bgm:9,bjd:10,ccq:11,cjr:12,cka:13,cmk:14,coy:15,cqu:16,drh:17,drw:18,gav:19,gfx:20,ggn:21,gti:22,guv:23,hrr:24,ibi:25,ilw:26,jeg:27,kgc:28,kgh:29,koj:30,krm:31,ktr:32,kvs:33,kwq:34,kxe:35,kzj:36,kzt:37,lii:38,lmm:39,meg:40,mst:41,mwj:42,myt:43,nad:44,ncp:45,nnx:46,nts:47,oun:48,pcr:49,pmc:50,pmu:51,ppa:52,ppr:53,pry:54,puz:55,sca:56,skk:57,tdu:58,thc:59,thx:60,tie:61,tkk:62,tlw:63,tmp:64,tne:65,tnf:66,tsf:67,uok:68,xba:69,xia:70,xkh:71,xsj:72,ybd:73,yma:74,ymt:75,yos:76,yuu:77} +B.cE=new A.ai(B.aiw,["id","he","yi","jv","ro","aas","dz","ktz","nun","bcg","drl","rki","mom","cmr","xch","pij","quh","khk","prs","dev","vaj","gvr","nyc","duz","jal","opa","gal","oyb","tdf","kml","kwv","bmf","dtp","gdj","yam","tvd","dtp","dtp","raq","rmx","cir","mry","vaj","mry","xny","kdz","ngv","pij","vaj","adx","huw","phr","bfy","lcq","prt","pub","hle","oyb","dtp","tpo","oyb","ras","twm","weo","tyj","kak","prs","taj","ema","cax","acn","waw","suj","rki","lrr","mtm","zom","yug"],t.w) +B.aiv={multiply:0,screen:1,overlay:2,darken:3,lighten:4,"color-dodge":5,"color-burn":6,"hard-light":7,"soft-light":8,difference:9,exclusion:10,hue:11,saturation:12,color:13,luminosity:14} +B.R8=new A.hu(24,"multiply") +B.QQ=new A.hu(14,"screen") +B.QS=new A.hu(15,"overlay") +B.QU=new A.hu(16,"darken") +B.QW=new A.hu(17,"lighten") +B.QY=new A.hu(18,"colorDodge") +B.R_=new A.hu(19,"colorBurn") +B.R1=new A.hu(20,"hardLight") +B.R3=new A.hu(21,"softLight") +B.R5=new A.hu(22,"difference") +B.R7=new A.hu(23,"exclusion") +B.Ra=new A.hu(25,"hue") +B.Rb=new A.hu(26,"saturation") +B.Rd=new A.hu(27,"color") +B.Rf=new A.hu(28,"luminosity") +B.aeF=new A.ai(B.aiv,[B.R8,B.QQ,B.QS,B.QU,B.QW,B.QY,B.R_,B.R1,B.R3,B.R5,B.R7,B.Ra,B.Rb,B.Rd,B.Rf],A.ar("ai")) +B.cl=new A.kc(0,"success") +B.ahU=new A.kc(1,"noMatchingSubscribers") +B.ahV=new A.kc(2,"unspecifiedError") +B.ahW=new A.kc(3,"implementationSpecificError") +B.ahX=new A.kc(4,"notAuthorized") +B.ahY=new A.kc(5,"topicNameInvalid") +B.ahZ=new A.kc(6,"packetIdentifierInUse") +B.r7=new A.kc(7,"packetIdentifierNotFound") +B.ai_=new A.kc(8,"quotaExceeded") +B.ai0=new A.kc(9,"payloadFormatInvalid") +B.d6=new A.kc(10,"notSet") +B.aeG=new A.cR([0,B.cl,16,B.ahU,128,B.ahV,131,B.ahW,135,B.ahX,144,B.ahY,145,B.ahZ,146,B.r7,151,B.ai_,153,B.ai0,255,B.d6],A.ar("cR")) +B.aeI=new A.cR([B.k0,B.PI,B.k1,B.PH],t.Fp) +B.tD=new A.v4(2,"down") +B.Zt=new A.tq(B.tD) +B.nJ=new A.v4(0,"up") +B.Zs=new A.tq(B.nJ) +B.IQ=new A.cR([B.k_,B.Zt,B.jZ,B.Zs],t.Fp) +B.ah0=new A.eS(0,"success") +B.ah1=new A.eS(1,"unspecifiedError") +B.ahc=new A.eS(2,"malformedPacket") +B.ahf=new A.eS(3,"protocolError") +B.ahg=new A.eS(4,"implementationSpecificError") +B.ahh=new A.eS(5,"unsupportedProtocolVersion") +B.ahi=new A.eS(6,"clientIdentifierNotValid") +B.ahj=new A.eS(7,"badUsernameOrPassword") +B.ahk=new A.eS(8,"notAuthorized") +B.ahl=new A.eS(9,"serverUnavailable") +B.ah2=new A.eS(10,"serverBusy") +B.ah3=new A.eS(11,"banned") +B.ah4=new A.eS(12,"badAuthenticationMethod") +B.ah5=new A.eS(13,"topicNameInvalid") +B.ah6=new A.eS(14,"packetTooLarge") +B.ah7=new A.eS(15,"quotaExceeded") +B.ah8=new A.eS(16,"payloadFormatInvalid") +B.ah9=new A.eS(17,"retainNotSupported") +B.aha=new A.eS(18,"qosNotSupported") +B.ahb=new A.eS(19,"useAnotherServer") +B.ahd=new A.eS(20,"serverMoved") +B.ahe=new A.eS(21,"connectionRateExceeded") +B.mQ=new A.eS(22,"notSet") +B.aeM=new A.cR([0,B.ah0,128,B.ah1,129,B.ahc,130,B.ahf,131,B.ahg,132,B.ahh,133,B.ahi,134,B.ahj,135,B.ahk,136,B.ahl,137,B.ah2,138,B.ah3,140,B.ah4,144,B.ah5,149,B.ah6,151,B.ah7,153,B.ah8,154,B.ah9,155,B.aha,156,B.ahb,157,B.ahd,159,B.ahe,255,B.mQ],A.ar("cR")) +B.air={circle:0,path:1,rect:2,polygon:3,polyline:4,ellipse:5,line:6} +B.IR=new A.ai(B.air,[A.bWS(),A.bWV(),A.bWY(),A.bWW(),A.bWX(),A.bWT(),A.bWU()],A.ar("ai")) +B.aiB={KeyA:0,KeyB:1,KeyC:2,KeyD:3,KeyE:4,KeyF:5,KeyG:6,KeyH:7,KeyI:8,KeyJ:9,KeyK:10,KeyL:11,KeyM:12,KeyN:13,KeyO:14,KeyP:15,KeyQ:16,KeyR:17,KeyS:18,KeyT:19,KeyU:20,KeyV:21,KeyW:22,KeyX:23,KeyY:24,KeyZ:25,Digit1:26,Digit2:27,Digit3:28,Digit4:29,Digit5:30,Digit6:31,Digit7:32,Digit8:33,Digit9:34,Digit0:35,Minus:36,Equal:37,BracketLeft:38,BracketRight:39,Backslash:40,Semicolon:41,Quote:42,Backquote:43,Comma:44,Period:45,Slash:46} +B.qv=new A.ai(B.aiB,["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","1","2","3","4","5","6","7","8","9","0","-","=","[","]","\\",";","'","`",",",".","/"],t.w) +B.dc=new A.A(855638016) +B.RZ=new A.c6(-1,B.a6,B.dc,B.fj,1) +B.db=new A.A(603979776) +B.Se=new A.c6(0,B.a6,B.db,B.cH,1) +B.Sh=new A.c6(0,B.a6,B.cX,B.cH,3) +B.a3w=A.a(s([B.RZ,B.Se,B.Sh]),t.F) +B.Sq=new A.c6(-2,B.a6,B.dc,B.es,1) +B.Si=new A.c6(0,B.a6,B.db,B.fj,2) +B.Sj=new A.c6(0,B.a6,B.cX,B.cH,5) +B.ach=A.a(s([B.Sq,B.Si,B.Sj]),t.F) +B.Sr=new A.c6(-2,B.a6,B.dc,B.es,3) +B.Sk=new A.c6(0,B.a6,B.db,B.es,4) +B.Sl=new A.c6(0,B.a6,B.cX,B.cH,8) +B.aci=A.a(s([B.Sr,B.Sk,B.Sl]),t.F) +B.S_=new A.c6(-1,B.a6,B.dc,B.fj,4) +B.Sm=new A.c6(0,B.a6,B.db,B.Jn,5) +B.Sn=new A.c6(0,B.a6,B.cX,B.cH,10) +B.a3x=A.a(s([B.S_,B.Sm,B.Sn]),t.F) +B.S0=new A.c6(-1,B.a6,B.dc,B.es,5) +B.Jo=new A.z(0,6) +B.S4=new A.c6(0,B.a6,B.db,B.Jo,10) +B.S5=new A.c6(0,B.a6,B.cX,B.cH,18) +B.a3y=A.a(s([B.S0,B.S4,B.S5]),t.F) +B.rc=new A.z(0,5) +B.So=new A.c6(-3,B.a6,B.dc,B.rc,5) +B.rd=new A.z(0,8) +B.S6=new A.c6(1,B.a6,B.db,B.rd,10) +B.S7=new A.c6(2,B.a6,B.cX,B.es,14) +B.a76=A.a(s([B.So,B.S6,B.S7]),t.F) +B.Sp=new A.c6(-3,B.a6,B.dc,B.rc,6) +B.Jp=new A.z(0,9) +B.S8=new A.c6(1,B.a6,B.db,B.Jp,12) +B.S9=new A.c6(2,B.a6,B.cX,B.es,16) +B.a77=A.a(s([B.Sp,B.S8,B.S9]),t.F) +B.aiR=new A.z(0,7) +B.Ss=new A.c6(-4,B.a6,B.dc,B.aiR,8) +B.aiM=new A.z(0,12) +B.Sa=new A.c6(2,B.a6,B.db,B.aiM,17) +B.Sb=new A.c6(4,B.a6,B.cX,B.rc,22) +B.a5M=A.a(s([B.Ss,B.Sa,B.Sb]),t.F) +B.RY=new A.c6(-5,B.a6,B.dc,B.rd,10) +B.aiN=new A.z(0,16) +B.Sc=new A.c6(2,B.a6,B.db,B.aiN,24) +B.Sd=new A.c6(5,B.a6,B.cX,B.Jo,30) +B.aaz=A.a(s([B.RY,B.Sc,B.Sd]),t.F) +B.aiL=new A.z(0,11) +B.RX=new A.c6(-7,B.a6,B.dc,B.aiL,15) +B.aiP=new A.z(0,24) +B.Sf=new A.c6(3,B.a6,B.db,B.aiP,38) +B.Sg=new A.c6(8,B.a6,B.cX,B.Jp,46) +B.a3Y=A.a(s([B.RX,B.Sf,B.Sg]),t.F) +B.mN=new A.cR([0,B.BX,1,B.a3w,2,B.ach,3,B.aci,4,B.a3x,6,B.a3y,8,B.a76,9,B.a77,12,B.a5M,16,B.aaz,24,B.a3Y],A.ar("cR>")) +B.aiF={"Cache-Control":0} +B.IS=new A.ai(B.aiF,["no-cache, no-store, must-revalidate"],t.w) +B.hO=new A.dQ(0,"normalDisconnection") +B.ahn=new A.dQ(1,"disconnectWithWillMessage") +B.ahy=new A.dQ(2,"unspecifiedError") +B.ahI=new A.dQ(3,"malformedPacket") +B.ahJ=new A.dQ(4,"protocolError") +B.ahK=new A.dQ(5,"implementationSpecificError") +B.ahL=new A.dQ(6,"notAuthorized") +B.ahM=new A.dQ(7,"serverBusy") +B.ahN=new A.dQ(8,"serverShuttingDown") +B.ahO=new A.dQ(9,"keepAliveTimeout") +B.aho=new A.dQ(10,"sessionTakenOver") +B.ahp=new A.dQ(11,"topicFilterInvalid") +B.ahq=new A.dQ(12,"topicNameInvalid") +B.ahr=new A.dQ(13,"receiveMaximumExceeded") +B.ahs=new A.dQ(14,"topicAliasInvalid") +B.aht=new A.dQ(15,"packetTooLarge") +B.ahu=new A.dQ(16,"messageRateTooHigh") +B.ahv=new A.dQ(17,"quotaExceeded") +B.ahw=new A.dQ(18,"administrativeAction") +B.ahx=new A.dQ(19,"payloadFormatInvalid") +B.ahz=new A.dQ(20,"retainNotSupported") +B.ahA=new A.dQ(21,"qosNotSupported") +B.ahB=new A.dQ(22,"useAnotherServer") +B.ahC=new A.dQ(23,"serverMoved") +B.ahD=new A.dQ(24,"sharedSubscriptionsNotSupported") +B.ahE=new A.dQ(25,"connectionRateExceeded") +B.ahF=new A.dQ(26,"maximumConnectTime") +B.ahG=new A.dQ(27,"subscriptionIdentifiersNotSupported") +B.ahH=new A.dQ(28,"wildcardSubscriptionsNotSupported") +B.mR=new A.dQ(29,"notSet") +B.aeN=new A.cR([0,B.hO,4,B.ahn,128,B.ahy,129,B.ahI,130,B.ahJ,131,B.ahK,135,B.ahL,137,B.ahM,139,B.ahN,141,B.ahO,142,B.aho,143,B.ahp,144,B.ahq,147,B.ahr,148,B.ahs,149,B.aht,150,B.ahu,151,B.ahv,152,B.ahw,153,B.ahx,154,B.ahz,155,B.ahA,156,B.ahB,157,B.ahC,158,B.ahD,159,B.ahE,160,B.ahF,161,B.ahG,162,B.ahH,255,B.mR],A.ar("cR")) +B.aiy={"application/vnd.android.package-archive":0,"application/epub+zip":1,"application/gzip":2,"application/java-archive":3,"application/json":4,"application/ld+json":5,"application/msword":6,"application/octet-stream":7,"application/ogg":8,"application/pdf":9,"application/php":10,"application/rtf":11,"application/vnd.amazon.ebook":12,"application/vnd.apple.installer+xml":13,"application/vnd.mozilla.xul+xml":14,"application/vnd.ms-excel":15,"application/vnd.ms-fontobject":16,"application/vnd.ms-powerpoint":17,[u.f6]:18,[u.fW]:19,"application/vnd.oasis.opendocument.text":20,[u.a_]:21,[u.dj]:22,[u.dn]:23,"application/vnd.rar":24,"application/vnd.visio":25,"application/x-7z-compressed":26,"application/x-abiword":27,"application/x-bzip":28,"application/x-bzip2":29,"application/x-csh":30,"application/x-freearc":31,"application/x-sh":32,"application/x-shockwave-flash":33,"application/x-tar":34,"application/xhtml+xml":35,"application/xml":36,"application/zip":37,"audio/3gpp":38,"audio/3gpp2":39,"audio/aac":40,"audio/x-aac":41,"audio/midi":42,"audio/x-midi":43,"audio/x-m4a":44,"audio/m4a":45,"audio/mpeg":46,"audio/ogg":47,"audio/opus":48,"audio/wav":49,"audio/x-wav":50,"audio/webm":51,"font/otf":52,"font/ttf":53,"font/woff":54,"font/woff2":55,"image/bmp":56,"image/gif":57,"image/jpeg":58,"image/png":59,"image/svg+xml":60,"image/tiff":61,"image/vnd.microsoft.icon":62,"image/webp":63,"text/calendar":64,"text/css":65,"text/csv":66,"text/html":67,"text/javascript":68,"text/plain":69,"text/xml":70,"video/3gpp":71,"video/3gpp2":72,"video/mp2t":73,"video/mpeg":74,"video/ogg":75,"video/webm":76,"video/x-msvideo":77,"video/quicktime":78} +B.aeO=new A.ai(B.aiy,[".apk",".epub",".gz",".jar",".json",".jsonld",".doc",".bin",".ogx",".pdf",".php",".rtf",".azw",".mpkg",".xul",".xls",".eot",".ppt",".odp",".ods",".odt",".pptx",".xlsx",".docx",".rar",".vsd",".7z",".abw",".bz",".bz2",".csh",".arc",".sh",".swf",".tar",".xhtml",".xml",".zip",".3gp",".3g2",".aac",".aac",".midi",".midi",".m4a",".m4a",".mp3",".oga",".opus",".wav",".wav",".weba",".otf",".ttf",".woff",".woff2",".bmp",".gif",".jpg",".png",".svg",".tiff",".ico",".webp",".ics",".css",".csv",".html",".js",".txt",".xml",".3gp",".3g2",".ts",".mpeg",".ogv",".webm",".avi",".mov"],t.w) +B.y={d:0,E:1,EEEE:2,LLL:3,LLLL:4,M:5,Md:6,MEd:7,MMM:8,MMMd:9,MMMEd:10,MMMM:11,MMMMd:12,MMMMEEEEd:13,QQQ:14,QQQQ:15,y:16,yM:17,yMd:18,yMEd:19,yMMM:20,yMMMd:21,yMMMEd:22,yMMMM:23,yMMMMd:24,yMMMMEEEEd:25,yQQQ:26,yQQQQ:27,H:28,Hm:29,Hms:30,j:31,jm:32,jms:33,jmv:34,jmz:35,jz:36,m:37,ms:38,s:39,v:40,z:41,zzzz:42,ZZZZ:43} +B.afX=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","M/d","EEE, M/d","LLL","MMM d","EEE, MMM d","LLLL","MMMM d","EEEE, MMMM d","QQQ","QQQQ","y","M/y","M/d/y","EEE, M/d/y","MMM y","MMM d, y","EEE, MMM d, y","MMMM y","MMMM d, y","EEEE, MMMM d, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h\u202fa","h:mm\u202fa","h:mm:ss\u202fa","h:mm\u202fa v","h:mm\u202fa z","h\u202fa z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.qQ=new A.dY(0,"payloadFormatIndicator") +B.qR=new A.dY(1,"messageExpiryInterval") +B.qW=new A.dY(2,"contentType") +B.r2=new A.dY(3,"responseTopic") +B.r3=new A.dY(4,"correlationdata") +B.r4=new A.dY(5,"subscriptionIdentifier") +B.n1=new A.dY(6,"sessionExpiryInterval") +B.r5=new A.dY(7,"assignedClientIdentifier") +B.r6=new A.dY(8,"serverKeepAlive") +B.n2=new A.dY(9,"authenticationMethod") +B.n_=new A.dY(10,"authenticationData") +B.Jf=new A.dY(11,"requestProblemInformation") +B.Jg=new A.dY(12,"willDelayInterval") +B.Jh=new A.dY(13,"requestResponseInformation") +B.qS=new A.dY(14,"responseInformation") +B.n0=new A.dY(15,"serverReference") +B.d5=new A.dY(16,"reasonString") +B.qT=new A.dY(17,"receiveMaximum") +B.qU=new A.dY(18,"topicAliasMaximum") +B.qV=new A.dY(19,"topicAlias") +B.qX=new A.dY(20,"maximumQos") +B.qY=new A.dY(21,"retainAvailable") +B.bG=new A.dY(22,"userProperty") +B.qZ=new A.dY(23,"maximumPacketSize") +B.r_=new A.dY(24,"wildcardSubscriptionAvailable") +B.r0=new A.dY(25,"subscriptionIdentifierAvailable") +B.r1=new A.dY(26,"sharedSubscriptionAvailable") +B.c8=new A.dY(27,"notSet") +B.agh=new A.cR([1,B.qQ,2,B.qR,3,B.qW,8,B.r2,9,B.r3,11,B.r4,17,B.n1,18,B.r5,19,B.r6,21,B.n2,22,B.n_,23,B.Jf,24,B.Jg,25,B.Jh,26,B.qS,28,B.n0,31,B.d5,33,B.qT,34,B.qU,35,B.qV,36,B.qX,37,B.qY,38,B.bG,39,B.qZ,40,B.r_,41,B.r0,42,B.r1,255,B.c8],A.ar("cR")) +B.ais={alias:0,allScroll:1,basic:2,cell:3,click:4,contextMenu:5,copy:6,forbidden:7,grab:8,grabbing:9,help:10,move:11,none:12,noDrop:13,precise:14,progress:15,text:16,resizeColumn:17,resizeDown:18,resizeDownLeft:19,resizeDownRight:20,resizeLeft:21,resizeLeftRight:22,resizeRight:23,resizeRow:24,resizeUp:25,resizeUpDown:26,resizeUpLeft:27,resizeUpRight:28,resizeUpLeftDownRight:29,resizeUpRightDownLeft:30,verticalText:31,wait:32,zoomIn:33,zoomOut:34} +B.agi=new A.ai(B.ais,["alias","all-scroll","default","cell","pointer","context-menu","copy","not-allowed","grab","grabbing","help","move","none","no-drop","crosshair","progress","text","col-resize","s-resize","sw-resize","se-resize","w-resize","ew-resize","e-resize","row-resize","n-resize","ns-resize","nw-resize","ne-resize","nwse-resize","nesw-resize","vertical-text","wait","zoom-in","zoom-out"],t.w) +B.ai4=new A.i4(0,"grantedQos0") +B.ai5=new A.i4(1,"grantedQos1") +B.ai9=new A.i4(2,"grantedQos2") +B.aia=new A.i4(3,"noSubscriptionExisted") +B.aib=new A.i4(4,"unspecifiedError") +B.aic=new A.i4(5,"implementationSpecificError") +B.aid=new A.i4(6,"notAuthorized") +B.aie=new A.i4(7,"topicFilterInvalid") +B.aif=new A.i4(8,"packetIdentifierInUse") +B.aig=new A.i4(9,"quotaExceeded") +B.ai6=new A.i4(10,"sharedSubscriptionsNotSupported") +B.ai7=new A.i4(11,"subscriptionIdentifiersNotSupported") +B.ai8=new A.i4(12,"wildcardSubscriptionsNotSupported") +B.r8=new A.i4(13,"notSet") +B.agj=new A.cR([0,B.ai4,1,B.ai5,2,B.ai9,17,B.aia,128,B.aib,131,B.aic,135,B.aid,143,B.aie,145,B.aif,151,B.aig,158,B.ai6,161,B.ai7,162,B.ai8,255,B.r8],A.ar("cR")) +B.Ja=new A.xH(0,"success") +B.agY=new A.xH(1,"continueAuthentication") +B.agZ=new A.xH(2,"reAuthenticate") +B.jD=new A.xH(3,"notSet") +B.agk=new A.cR([0,B.Ja,24,B.agY,25,B.agZ,255,B.jD],A.ar("cR")) +B.Jz=new A.L(16) +B.JA=new A.L(17) +B.jG=new A.L(18) +B.JB=new A.L(19) +B.JC=new A.L(20) +B.JD=new A.L(21) +B.JE=new A.L(22) +B.JF=new A.L(23) +B.JG=new A.L(24) +B.Mr=new A.L(65666) +B.Ms=new A.L(65667) +B.Mt=new A.L(65717) +B.JH=new A.L(392961) +B.JI=new A.L(392962) +B.JJ=new A.L(392963) +B.JK=new A.L(392964) +B.JL=new A.L(392965) +B.JM=new A.L(392966) +B.JN=new A.L(392967) +B.JO=new A.L(392968) +B.JP=new A.L(392969) +B.JQ=new A.L(392970) +B.JR=new A.L(392971) +B.JS=new A.L(392972) +B.JT=new A.L(392973) +B.JU=new A.L(392974) +B.JV=new A.L(392975) +B.JW=new A.L(392976) +B.JX=new A.L(392977) +B.JY=new A.L(392978) +B.JZ=new A.L(392979) +B.K_=new A.L(392980) +B.K0=new A.L(392981) +B.K1=new A.L(392982) +B.K2=new A.L(392983) +B.K3=new A.L(392984) +B.K4=new A.L(392985) +B.K5=new A.L(392986) +B.K6=new A.L(392987) +B.K7=new A.L(392988) +B.K8=new A.L(392989) +B.K9=new A.L(392990) +B.Ka=new A.L(392991) +B.ajX=new A.L(458752) +B.ajY=new A.L(458753) +B.ajZ=new A.L(458754) +B.ak_=new A.L(458755) +B.Kb=new A.L(458756) +B.Kc=new A.L(458757) +B.Kd=new A.L(458758) +B.Ke=new A.L(458759) +B.Kf=new A.L(458760) +B.Kg=new A.L(458761) +B.Kh=new A.L(458762) +B.Ki=new A.L(458763) +B.Kj=new A.L(458764) +B.Kk=new A.L(458765) +B.Kl=new A.L(458766) +B.Km=new A.L(458767) +B.Kn=new A.L(458768) +B.Ko=new A.L(458769) +B.Kp=new A.L(458770) +B.Kq=new A.L(458771) +B.Kr=new A.L(458772) +B.Ks=new A.L(458773) +B.Kt=new A.L(458774) +B.Ku=new A.L(458775) +B.Kv=new A.L(458776) +B.Kw=new A.L(458777) +B.Kx=new A.L(458778) +B.Ky=new A.L(458779) +B.Kz=new A.L(458780) +B.KA=new A.L(458781) +B.KB=new A.L(458782) +B.KC=new A.L(458783) +B.KD=new A.L(458784) +B.KE=new A.L(458785) +B.KF=new A.L(458786) +B.KG=new A.L(458787) +B.KH=new A.L(458788) +B.KI=new A.L(458789) +B.KJ=new A.L(458790) +B.KK=new A.L(458791) +B.KL=new A.L(458792) +B.rm=new A.L(458793) +B.KM=new A.L(458794) +B.KN=new A.L(458795) +B.KO=new A.L(458796) +B.KP=new A.L(458797) +B.KQ=new A.L(458798) +B.KR=new A.L(458799) +B.KS=new A.L(458800) +B.KT=new A.L(458801) +B.KU=new A.L(458803) +B.KV=new A.L(458804) +B.KW=new A.L(458805) +B.KX=new A.L(458806) +B.KY=new A.L(458807) +B.KZ=new A.L(458808) +B.fm=new A.L(458809) +B.L_=new A.L(458810) +B.L0=new A.L(458811) +B.L1=new A.L(458812) +B.L2=new A.L(458813) +B.L3=new A.L(458814) +B.L4=new A.L(458815) +B.L5=new A.L(458816) +B.L6=new A.L(458817) +B.L7=new A.L(458818) +B.L8=new A.L(458819) +B.L9=new A.L(458820) +B.La=new A.L(458821) +B.Lb=new A.L(458822) +B.n8=new A.L(458823) +B.Lc=new A.L(458824) +B.Ld=new A.L(458825) +B.Le=new A.L(458826) +B.Lf=new A.L(458827) +B.Lg=new A.L(458828) +B.Lh=new A.L(458829) +B.Li=new A.L(458830) +B.Lj=new A.L(458831) +B.Lk=new A.L(458832) +B.Ll=new A.L(458833) +B.Lm=new A.L(458834) +B.n9=new A.L(458835) +B.Ln=new A.L(458836) +B.Lo=new A.L(458837) +B.Lp=new A.L(458838) +B.Lq=new A.L(458839) +B.Lr=new A.L(458840) +B.Ls=new A.L(458841) +B.Lt=new A.L(458842) +B.Lu=new A.L(458843) +B.Lv=new A.L(458844) +B.Lw=new A.L(458845) +B.Lx=new A.L(458846) +B.Ly=new A.L(458847) +B.Lz=new A.L(458848) +B.LA=new A.L(458849) +B.LB=new A.L(458850) +B.LC=new A.L(458851) +B.LD=new A.L(458852) +B.LE=new A.L(458853) +B.LF=new A.L(458854) +B.LG=new A.L(458855) +B.LH=new A.L(458856) +B.LI=new A.L(458857) +B.LJ=new A.L(458858) +B.LK=new A.L(458859) +B.LL=new A.L(458860) +B.LM=new A.L(458861) +B.LN=new A.L(458862) +B.LO=new A.L(458863) +B.LP=new A.L(458864) +B.LQ=new A.L(458865) +B.LR=new A.L(458866) +B.LS=new A.L(458867) +B.LT=new A.L(458868) +B.LU=new A.L(458869) +B.LV=new A.L(458871) +B.LW=new A.L(458873) +B.LX=new A.L(458874) +B.LY=new A.L(458875) +B.LZ=new A.L(458876) +B.M_=new A.L(458877) +B.M0=new A.L(458878) +B.M1=new A.L(458879) +B.M2=new A.L(458880) +B.M3=new A.L(458881) +B.M4=new A.L(458885) +B.M5=new A.L(458887) +B.M6=new A.L(458888) +B.M7=new A.L(458889) +B.M8=new A.L(458890) +B.M9=new A.L(458891) +B.Ma=new A.L(458896) +B.Mb=new A.L(458897) +B.Mc=new A.L(458898) +B.Md=new A.L(458899) +B.Me=new A.L(458900) +B.Mf=new A.L(458907) +B.Mg=new A.L(458915) +B.Mh=new A.L(458934) +B.Mi=new A.L(458935) +B.Mj=new A.L(458939) +B.Mk=new A.L(458960) +B.Ml=new A.L(458961) +B.Mm=new A.L(458962) +B.Mn=new A.L(458963) +B.Mo=new A.L(458964) +B.ak0=new A.L(458967) +B.Mp=new A.L(458968) +B.Mq=new A.L(458969) +B.hT=new A.L(458976) +B.hU=new A.L(458977) +B.hV=new A.L(458978) +B.hW=new A.L(458979) +B.jH=new A.L(458980) +B.jI=new A.L(458981) +B.hX=new A.L(458982) +B.jJ=new A.L(458983) +B.ak1=new A.L(786528) +B.ak2=new A.L(786529) +B.Mu=new A.L(786543) +B.Mv=new A.L(786544) +B.ak3=new A.L(786546) +B.ak4=new A.L(786547) +B.ak5=new A.L(786548) +B.ak6=new A.L(786549) +B.ak7=new A.L(786553) +B.ak8=new A.L(786554) +B.ak9=new A.L(786563) +B.aka=new A.L(786572) +B.akb=new A.L(786573) +B.akc=new A.L(786580) +B.akd=new A.L(786588) +B.ake=new A.L(786589) +B.Mw=new A.L(786608) +B.Mx=new A.L(786609) +B.My=new A.L(786610) +B.Mz=new A.L(786611) +B.MA=new A.L(786612) +B.MB=new A.L(786613) +B.MC=new A.L(786614) +B.MD=new A.L(786615) +B.ME=new A.L(786616) +B.MF=new A.L(786637) +B.akf=new A.L(786639) +B.akg=new A.L(786661) +B.MG=new A.L(786819) +B.akh=new A.L(786820) +B.aki=new A.L(786822) +B.MH=new A.L(786826) +B.akj=new A.L(786829) +B.akk=new A.L(786830) +B.MI=new A.L(786834) +B.MJ=new A.L(786836) +B.akl=new A.L(786838) +B.akm=new A.L(786844) +B.akn=new A.L(786846) +B.MK=new A.L(786847) +B.ML=new A.L(786850) +B.ako=new A.L(786855) +B.akp=new A.L(786859) +B.akq=new A.L(786862) +B.MM=new A.L(786865) +B.akr=new A.L(786871) +B.MN=new A.L(786891) +B.aks=new A.L(786945) +B.akt=new A.L(786947) +B.aku=new A.L(786951) +B.akv=new A.L(786952) +B.MO=new A.L(786977) +B.MP=new A.L(786979) +B.MQ=new A.L(786980) +B.MR=new A.L(786981) +B.MS=new A.L(786982) +B.MT=new A.L(786983) +B.MU=new A.L(786986) +B.akw=new A.L(786989) +B.akx=new A.L(786990) +B.MV=new A.L(786994) +B.aky=new A.L(787065) +B.MW=new A.L(787081) +B.MX=new A.L(787083) +B.MY=new A.L(787084) +B.MZ=new A.L(787101) +B.N_=new A.L(787103) +B.agl=new A.cR([16,B.Jz,17,B.JA,18,B.jG,19,B.JB,20,B.JC,21,B.JD,22,B.JE,23,B.JF,24,B.JG,65666,B.Mr,65667,B.Ms,65717,B.Mt,392961,B.JH,392962,B.JI,392963,B.JJ,392964,B.JK,392965,B.JL,392966,B.JM,392967,B.JN,392968,B.JO,392969,B.JP,392970,B.JQ,392971,B.JR,392972,B.JS,392973,B.JT,392974,B.JU,392975,B.JV,392976,B.JW,392977,B.JX,392978,B.JY,392979,B.JZ,392980,B.K_,392981,B.K0,392982,B.K1,392983,B.K2,392984,B.K3,392985,B.K4,392986,B.K5,392987,B.K6,392988,B.K7,392989,B.K8,392990,B.K9,392991,B.Ka,458752,B.ajX,458753,B.ajY,458754,B.ajZ,458755,B.ak_,458756,B.Kb,458757,B.Kc,458758,B.Kd,458759,B.Ke,458760,B.Kf,458761,B.Kg,458762,B.Kh,458763,B.Ki,458764,B.Kj,458765,B.Kk,458766,B.Kl,458767,B.Km,458768,B.Kn,458769,B.Ko,458770,B.Kp,458771,B.Kq,458772,B.Kr,458773,B.Ks,458774,B.Kt,458775,B.Ku,458776,B.Kv,458777,B.Kw,458778,B.Kx,458779,B.Ky,458780,B.Kz,458781,B.KA,458782,B.KB,458783,B.KC,458784,B.KD,458785,B.KE,458786,B.KF,458787,B.KG,458788,B.KH,458789,B.KI,458790,B.KJ,458791,B.KK,458792,B.KL,458793,B.rm,458794,B.KM,458795,B.KN,458796,B.KO,458797,B.KP,458798,B.KQ,458799,B.KR,458800,B.KS,458801,B.KT,458803,B.KU,458804,B.KV,458805,B.KW,458806,B.KX,458807,B.KY,458808,B.KZ,458809,B.fm,458810,B.L_,458811,B.L0,458812,B.L1,458813,B.L2,458814,B.L3,458815,B.L4,458816,B.L5,458817,B.L6,458818,B.L7,458819,B.L8,458820,B.L9,458821,B.La,458822,B.Lb,458823,B.n8,458824,B.Lc,458825,B.Ld,458826,B.Le,458827,B.Lf,458828,B.Lg,458829,B.Lh,458830,B.Li,458831,B.Lj,458832,B.Lk,458833,B.Ll,458834,B.Lm,458835,B.n9,458836,B.Ln,458837,B.Lo,458838,B.Lp,458839,B.Lq,458840,B.Lr,458841,B.Ls,458842,B.Lt,458843,B.Lu,458844,B.Lv,458845,B.Lw,458846,B.Lx,458847,B.Ly,458848,B.Lz,458849,B.LA,458850,B.LB,458851,B.LC,458852,B.LD,458853,B.LE,458854,B.LF,458855,B.LG,458856,B.LH,458857,B.LI,458858,B.LJ,458859,B.LK,458860,B.LL,458861,B.LM,458862,B.LN,458863,B.LO,458864,B.LP,458865,B.LQ,458866,B.LR,458867,B.LS,458868,B.LT,458869,B.LU,458871,B.LV,458873,B.LW,458874,B.LX,458875,B.LY,458876,B.LZ,458877,B.M_,458878,B.M0,458879,B.M1,458880,B.M2,458881,B.M3,458885,B.M4,458887,B.M5,458888,B.M6,458889,B.M7,458890,B.M8,458891,B.M9,458896,B.Ma,458897,B.Mb,458898,B.Mc,458899,B.Md,458900,B.Me,458907,B.Mf,458915,B.Mg,458934,B.Mh,458935,B.Mi,458939,B.Mj,458960,B.Mk,458961,B.Ml,458962,B.Mm,458963,B.Mn,458964,B.Mo,458967,B.ak0,458968,B.Mp,458969,B.Mq,458976,B.hT,458977,B.hU,458978,B.hV,458979,B.hW,458980,B.jH,458981,B.jI,458982,B.hX,458983,B.jJ,786528,B.ak1,786529,B.ak2,786543,B.Mu,786544,B.Mv,786546,B.ak3,786547,B.ak4,786548,B.ak5,786549,B.ak6,786553,B.ak7,786554,B.ak8,786563,B.ak9,786572,B.aka,786573,B.akb,786580,B.akc,786588,B.akd,786589,B.ake,786608,B.Mw,786609,B.Mx,786610,B.My,786611,B.Mz,786612,B.MA,786613,B.MB,786614,B.MC,786615,B.MD,786616,B.ME,786637,B.MF,786639,B.akf,786661,B.akg,786819,B.MG,786820,B.akh,786822,B.aki,786826,B.MH,786829,B.akj,786830,B.akk,786834,B.MI,786836,B.MJ,786838,B.akl,786844,B.akm,786846,B.akn,786847,B.MK,786850,B.ML,786855,B.ako,786859,B.akp,786862,B.akq,786865,B.MM,786871,B.akr,786891,B.MN,786945,B.aks,786947,B.akt,786951,B.aku,786952,B.akv,786977,B.MO,786979,B.MP,786980,B.MQ,786981,B.MR,786982,B.MS,786983,B.MT,786986,B.MU,786989,B.akw,786990,B.akx,786994,B.MV,787065,B.aky,787081,B.MW,787083,B.MX,787084,B.MY,787101,B.MZ,787103,B.N_],A.ar("cR")) +B.rV=new A.b1(B.dn,!1,!1,!0,!1,B.D) +B.rS=new A.b1(B.cB,!1,!1,!0,!1,B.D) +B.rT=new A.b1(B.cC,!1,!1,!0,!1,B.D) +B.rU=new A.b1(B.dp,!1,!1,!0,!1,B.D) +B.Oj=new A.b1(B.dn,!1,!1,!1,!0,B.D) +B.Og=new A.b1(B.cB,!1,!1,!1,!0,B.D) +B.Oh=new A.b1(B.cC,!1,!1,!1,!0,B.D) +B.Oi=new A.b1(B.dp,!1,!1,!1,!0,B.D) +B.Oc=new A.b1(B.cB,!0,!1,!1,!1,B.D) +B.Od=new A.b1(B.cC,!0,!1,!1,!1,B.D) +B.Oe=new A.b1(B.cB,!0,!0,!1,!1,B.D) +B.Of=new A.b1(B.cC,!0,!0,!1,!1,B.D) +B.t1=new A.b1(B.E0,!1,!1,!1,!1,B.D) +B.t2=new A.b1(B.mI,!1,!1,!1,!1,B.D) +B.IW=new A.cR([B.rV,B.J,B.rS,B.J,B.rT,B.J,B.rU,B.J,B.Oj,B.J,B.Og,B.J,B.Oh,B.J,B.Oi,B.J,B.k_,B.J,B.k0,B.J,B.k1,B.J,B.jZ,B.J,B.Oc,B.J,B.Od,B.J,B.Oe,B.J,B.Of,B.J,B.t1,B.J,B.t2,B.J],t.Fp) +B.aiJ={"123":0,"3dml":1,"3ds":2,"3g2":3,"3gp":4,"7z":5,aab:6,aac:7,aam:8,aas:9,abw:10,ac:11,acc:12,ace:13,acu:14,acutc:15,adp:16,aep:17,afm:18,afp:19,ahead:20,ai:21,aif:22,aifc:23,aiff:24,air:25,ait:26,ami:27,apk:28,appcache:29,application:30,apr:31,arc:32,asc:33,asf:34,asm:35,aso:36,asx:37,atc:38,atom:39,atomcat:40,atomsvc:41,atx:42,au:43,avi:44,avif:45,aw:46,azf:47,azs:48,azw:49,bat:50,bcpio:51,bdf:52,bdm:53,bed:54,bh2:55,bin:56,blb:57,blorb:58,bmi:59,bmp:60,book:61,box:62,boz:63,bpk:64,btif:65,bz:66,bz2:67,c:68,c11amc:69,c11amz:70,c4d:71,c4f:72,c4g:73,c4p:74,c4u:75,cab:76,caf:77,cap:78,car:79,cat:80,cb7:81,cba:82,cbr:83,cbt:84,cbz:85,cc:86,cct:87,ccxml:88,cdbcmsg:89,cdf:90,cdkey:91,cdmia:92,cdmic:93,cdmid:94,cdmio:95,cdmiq:96,cdx:97,cdxml:98,cdy:99,cer:100,cfs:101,cgm:102,chat:103,chm:104,chrt:105,cif:106,cii:107,cil:108,cla:109,class:110,clkk:111,clkp:112,clkt:113,clkw:114,clkx:115,clp:116,cmc:117,cmdf:118,cml:119,cmp:120,cmx:121,cod:122,com:123,conf:124,cpio:125,cpp:126,cpt:127,crd:128,crl:129,crt:130,cryptonote:131,csh:132,csml:133,csp:134,css:135,cst:136,csv:137,cu:138,curl:139,cww:140,cxt:141,cxx:142,dae:143,daf:144,dart:145,dataless:146,davmount:147,dbk:148,dcm:149,dcr:150,dcurl:151,dd2:152,ddd:153,deb:154,def:155,deploy:156,der:157,dfac:158,dgc:159,dic:160,dir:161,dis:162,dist:163,distz:164,djv:165,djvu:166,dll:167,dmg:168,dmp:169,dms:170,dna:171,doc:172,docm:173,docx:174,dot:175,dotm:176,dotx:177,dp:178,dpg:179,dra:180,dsc:181,dssc:182,dtb:183,dtd:184,dts:185,dtshd:186,dump:187,dvb:188,dvi:189,dwf:190,dwg:191,dxf:192,dxp:193,dxr:194,ecelp4800:195,ecelp7470:196,ecelp9600:197,ecma:198,edm:199,edx:200,efif:201,ei6:202,elc:203,emf:204,eml:205,emma:206,emz:207,eol:208,eot:209,eps:210,epub:211,es3:212,esa:213,esf:214,et3:215,etx:216,eva:217,evy:218,exe:219,exi:220,ext:221,ez:222,ez2:223,ez3:224,f:225,f4v:226,f77:227,f90:228,fbs:229,fcdt:230,fcs:231,fdf:232,fe_launch:233,fg5:234,fgd:235,fh:236,fh4:237,fh5:238,fh7:239,fhc:240,fig:241,flac:242,fli:243,flo:244,flv:245,flw:246,flx:247,fly:248,fm:249,fnc:250,for:251,fpx:252,frame:253,fsc:254,fst:255,ftc:256,fti:257,fvt:258,fxp:259,fxpl:260,fzs:261,g2w:262,g3:263,g3w:264,gac:265,gam:266,gbr:267,gca:268,gdl:269,geo:270,gex:271,ggb:272,ggt:273,ghf:274,gif:275,gim:276,glb:277,gltf:278,gml:279,gmx:280,gnumeric:281,gph:282,gpx:283,gqf:284,gqs:285,gram:286,gramps:287,gre:288,grv:289,grxml:290,gsf:291,gtar:292,gtm:293,gtw:294,gv:295,gxf:296,gxt:297,h:298,h261:299,h263:300,h264:301,hal:302,hbci:303,hdf:304,heic:305,heif:306,hh:307,hlp:308,hpgl:309,hpid:310,hps:311,hqx:312,htke:313,htm:314,html:315,hvd:316,hvp:317,hvs:318,i2g:319,icc:320,ice:321,icm:322,ico:323,ics:324,ief:325,ifb:326,ifm:327,iges:328,igl:329,igm:330,igs:331,igx:332,iif:333,imp:334,ims:335,in:336,ink:337,inkml:338,install:339,iota:340,ipfix:341,ipk:342,irm:343,irp:344,iso:345,itp:346,ivp:347,ivu:348,jad:349,jam:350,jar:351,java:352,jisp:353,jlt:354,jnlp:355,joda:356,jpe:357,jpeg:358,jpg:359,jpgm:360,jpgv:361,jpm:362,js:363,json:364,jsonml:365,kar:366,karbon:367,kfo:368,kia:369,kml:370,kmz:371,kne:372,knp:373,kon:374,kpr:375,kpt:376,kpxx:377,ksp:378,ktr:379,ktx:380,ktz:381,kwd:382,kwt:383,lasxml:384,latex:385,lbd:386,lbe:387,les:388,lha:389,link66:390,list:391,list3820:392,listafp:393,lnk:394,log:395,lostxml:396,lrf:397,lrm:398,ltf:399,lvp:400,lwp:401,lzh:402,m13:403,m14:404,m1v:405,m21:406,m2a:407,m2v:408,m3a:409,m3u:410,m3u8:411,m4a:412,m4b:413,m4u:414,m4v:415,ma:416,mads:417,mag:418,maker:419,man:420,mar:421,mathml:422,mb:423,mbk:424,mbox:425,mc1:426,mcd:427,mcurl:428,md:429,markdown:430,mdb:431,mdi:432,me:433,mesh:434,meta4:435,metalink:436,mets:437,mfm:438,mft:439,mgp:440,mgz:441,mid:442,midi:443,mie:444,mif:445,mime:446,mj2:447,mjp2:448,mjs:449,mk3d:450,mka:451,mks:452,mkv:453,mlp:454,mmd:455,mmf:456,mmr:457,mng:458,mny:459,mobi:460,mods:461,mov:462,movie:463,mp2:464,mp21:465,mp2a:466,mp3:467,mp4:468,mp4a:469,mp4s:470,mp4v:471,mpc:472,mpe:473,mpeg:474,mpg:475,mpg4:476,mpga:477,mpkg:478,mpm:479,mpn:480,mpp:481,mpt:482,mpy:483,mqy:484,mrc:485,mrcx:486,ms:487,mscml:488,mseed:489,mseq:490,msf:491,msh:492,msi:493,msl:494,msty:495,mts:496,mus:497,musicxml:498,mvb:499,mwf:500,mxf:501,mxl:502,mxml:503,mxs:504,mxu:505,"n-gage":506,n3:507,nb:508,nbp:509,nc:510,ncx:511,nfo:512,ngdat:513,nitf:514,nlu:515,nml:516,nnd:517,nns:518,nnw:519,npx:520,nsc:521,nsf:522,ntf:523,nzb:524,oa2:525,oa3:526,oas:527,obd:528,obj:529,oda:530,odb:531,odc:532,odf:533,odft:534,odg:535,odi:536,odm:537,odp:538,ods:539,odt:540,oga:541,ogg:542,ogv:543,ogx:544,omdoc:545,onepkg:546,onetmp:547,onetoc:548,onetoc2:549,opf:550,opml:551,oprc:552,org:553,osf:554,osfpvg:555,otc:556,otf:557,otg:558,oth:559,oti:560,otp:561,ots:562,ott:563,oxps:564,oxt:565,p:566,p10:567,p12:568,p7b:569,p7c:570,p7m:571,p7r:572,p7s:573,p8:574,pas:575,paw:576,pbd:577,pbm:578,pcap:579,pcf:580,pcl:581,pclxl:582,pct:583,pcurl:584,pcx:585,pdb:586,pdf:587,pfa:588,pfb:589,pfm:590,pfr:591,pfx:592,pgm:593,pgn:594,pgp:595,pic:596,pkg:597,pki:598,pkipath:599,plb:600,plc:601,plf:602,pls:603,pml:604,png:605,pnm:606,portpkg:607,pot:608,potm:609,potx:610,ppam:611,ppd:612,ppm:613,pps:614,ppsm:615,ppsx:616,ppt:617,pptm:618,pptx:619,pqa:620,prc:621,pre:622,prf:623,ps:624,psb:625,psd:626,psf:627,pskcxml:628,ptid:629,pub:630,pvb:631,pwn:632,pya:633,pyv:634,qam:635,qbo:636,qfx:637,qps:638,qt:639,qwd:640,qwt:641,qxb:642,qxd:643,qxl:644,qxt:645,ra:646,ram:647,rar:648,ras:649,rcprofile:650,rdf:651,rdz:652,rep:653,res:654,rgb:655,rif:656,rip:657,ris:658,rl:659,rlc:660,rld:661,rm:662,rmi:663,rmp:664,rms:665,rmvb:666,rnc:667,roa:668,roff:669,rp9:670,rpss:671,rpst:672,rq:673,rs:674,rsd:675,rss:676,rtf:677,rtx:678,s:679,s3m:680,saf:681,sbml:682,sc:683,scd:684,scm:685,scq:686,scs:687,scurl:688,sda:689,sdc:690,sdd:691,sdkd:692,sdkm:693,sdp:694,sdw:695,see:696,seed:697,sema:698,semd:699,semf:700,ser:701,setpay:702,setreg:703,"sfd-hdstx":704,sfs:705,sfv:706,sgi:707,sgl:708,sgm:709,sgml:710,sh:711,shar:712,shf:713,sid:714,sig:715,sil:716,silo:717,sis:718,sisx:719,sit:720,sitx:721,skd:722,skm:723,skp:724,skt:725,sldm:726,sldx:727,slt:728,sm:729,smf:730,smi:731,smil:732,smv:733,smzip:734,snd:735,snf:736,so:737,spc:738,spf:739,spl:740,spot:741,spp:742,spq:743,spx:744,sql:745,src:746,srt:747,sru:748,srx:749,ssdl:750,sse:751,ssf:752,ssml:753,st:754,stc:755,std:756,stf:757,sti:758,stk:759,stl:760,str:761,stw:762,sub:763,sus:764,susp:765,sv4cpio:766,sv4crc:767,svc:768,svd:769,svg:770,svgz:771,swa:772,swf:773,swi:774,sxc:775,sxd:776,sxg:777,sxi:778,sxm:779,sxw:780,t:781,t3:782,taglet:783,tao:784,tar:785,tcap:786,tcl:787,teacher:788,tei:789,teicorpus:790,tex:791,texi:792,texinfo:793,text:794,tfi:795,tfm:796,tga:797,thmx:798,tif:799,tiff:800,tmo:801,toml:802,torrent:803,tpl:804,tpt:805,tr:806,tra:807,trm:808,tsd:809,tsv:810,ttc:811,ttf:812,ttl:813,twd:814,twds:815,txd:816,txf:817,txt:818,u32:819,udeb:820,ufd:821,ufdl:822,ulx:823,umj:824,unityweb:825,uoml:826,uri:827,uris:828,urls:829,ustar:830,utz:831,uu:832,uva:833,uvd:834,uvf:835,uvg:836,uvh:837,uvi:838,uvm:839,uvp:840,uvs:841,uvt:842,uvu:843,uvv:844,uvva:845,uvvd:846,uvvf:847,uvvg:848,uvvh:849,uvvi:850,uvvm:851,uvvp:852,uvvs:853,uvvt:854,uvvu:855,uvvv:856,uvvx:857,uvvz:858,uvx:859,uvz:860,vcard:861,vcd:862,vcf:863,vcg:864,vcs:865,vcx:866,vis:867,viv:868,vob:869,vor:870,vox:871,vrml:872,vsd:873,vsf:874,vss:875,vst:876,vsw:877,vtu:878,vxml:879,w3d:880,wad:881,wasm:882,wav:883,wax:884,wbmp:885,wbs:886,wbxml:887,wcm:888,wdb:889,wdp:890,weba:891,webm:892,webmanifest:893,webp:894,wg:895,wgt:896,wks:897,wm:898,wma:899,wmd:900,wmf:901,wml:902,wmlc:903,wmls:904,wmlsc:905,wmv:906,wmx:907,wmz:908,woff:909,woff2:910,wpd:911,wpl:912,wps:913,wqd:914,wri:915,wrl:916,wsdl:917,wspolicy:918,wtb:919,wvx:920,x32:921,x3d:922,x3db:923,x3dbz:924,x3dv:925,x3dvz:926,x3dz:927,xaml:928,xap:929,xar:930,xbap:931,xbd:932,xbm:933,xdf:934,xdm:935,xdp:936,xdssc:937,xdw:938,xenc:939,xer:940,xfdf:941,xfdl:942,xht:943,xhtml:944,xhvml:945,xif:946,xla:947,xlam:948,xlc:949,xlf:950,xlm:951,xls:952,xlsb:953,xlsm:954,xlsx:955,xlt:956,xltm:957,xltx:958,xlw:959,xm:960,xml:961,xo:962,xop:963,xpi:964,xpl:965,xpm:966,xpr:967,xps:968,xpw:969,xpx:970,xsl:971,xslt:972,xsm:973,xspf:974,xul:975,xvm:976,xvml:977,xwd:978,xyz:979,xz:980,yang:981,yin:982,z1:983,z2:984,z3:985,z4:986,z5:987,z6:988,z7:989,z8:990,zaz:991,zip:992,zir:993,zirz:994,zmm:995} +B.agm=new A.ai(B.aiJ,["application/vnd.lotus-1-2-3","text/vnd.in3d.3dml","image/x-3ds","video/3gpp2","video/3gpp","application/x-7z-compressed","application/x-authorware-bin","audio/aac","application/x-authorware-map","application/x-authorware-seg","application/x-abiword","application/pkix-attr-cert","application/vnd.americandynamics.acc","application/x-ace-compressed","application/vnd.acucobol","application/vnd.acucorp","audio/adpcm","application/vnd.audiograph","application/x-font-type1","application/vnd.ibm.modcap","application/vnd.ahead.space","application/postscript","audio/x-aiff","audio/x-aiff","audio/x-aiff","application/vnd.adobe.air-application-installer-package+zip","application/vnd.dvb.ait","application/vnd.amiga.ami","application/vnd.android.package-archive","text/cache-manifest","application/x-ms-application","application/vnd.lotus-approach","application/x-freearc","application/pgp-signature","video/x-ms-asf","text/x-asm","application/vnd.accpac.simply.aso","video/x-ms-asf","application/vnd.acucorp","application/atom+xml","application/atomcat+xml","application/atomsvc+xml","application/vnd.antix.game-component","audio/basic","video/x-msvideo","image/avif","application/applixware","application/vnd.airzip.filesecure.azf","application/vnd.airzip.filesecure.azs","application/vnd.amazon.ebook","application/x-msdownload","application/x-bcpio","application/x-font-bdf","application/vnd.syncml.dm+wbxml","application/vnd.realvnc.bed","application/vnd.fujitsu.oasysprs","application/octet-stream","application/x-blorb","application/x-blorb","application/vnd.bmi","image/bmp","application/vnd.framemaker","application/vnd.previewsystems.box","application/x-bzip2","application/octet-stream","image/prs.btif","application/x-bzip","application/x-bzip2","text/x-c","application/vnd.cluetrust.cartomobile-config","application/vnd.cluetrust.cartomobile-config-pkg","application/vnd.clonk.c4group","application/vnd.clonk.c4group","application/vnd.clonk.c4group","application/vnd.clonk.c4group","application/vnd.clonk.c4group","application/vnd.ms-cab-compressed","audio/x-caf","application/vnd.tcpdump.pcap","application/vnd.curl.car","application/vnd.ms-pki.seccat","application/x-cbr","application/x-cbr","application/x-cbr","application/x-cbr","application/x-cbr","text/x-c","application/x-director","application/ccxml+xml","application/vnd.contact.cmsg","application/x-netcdf","application/vnd.mediastation.cdkey","application/cdmi-capability","application/cdmi-container","application/cdmi-domain","application/cdmi-object","application/cdmi-queue","chemical/x-cdx","application/vnd.chemdraw+xml","application/vnd.cinderella","application/pkix-cert","application/x-cfs-compressed","image/cgm","application/x-chat","application/vnd.ms-htmlhelp","application/vnd.kde.kchart","chemical/x-cif","application/vnd.anser-web-certificate-issue-initiation","application/vnd.ms-artgalry","application/vnd.claymore","application/java-vm","application/vnd.crick.clicker.keyboard","application/vnd.crick.clicker.palette","application/vnd.crick.clicker.template","application/vnd.crick.clicker.wordbank","application/vnd.crick.clicker","application/x-msclip","application/vnd.cosmocaller","chemical/x-cmdf","chemical/x-cml","application/vnd.yellowriver-custom-menu","image/x-cmx","application/vnd.rim.cod","application/x-msdownload","text/plain","application/x-cpio","text/x-c","application/mac-compactpro","application/x-mscardfile","application/pkix-crl","application/x-x509-ca-cert","application/vnd.rig.cryptonote","application/x-csh","chemical/x-csml","application/vnd.commonspace","text/css","application/x-director","text/csv","application/cu-seeme","text/vnd.curl","application/prs.cww","application/x-director","text/x-c","model/vnd.collada+xml","application/vnd.mobius.daf","text/x-dart","application/vnd.fdsn.seed","application/davmount+xml","application/docbook+xml","application/dicom","application/x-director","text/vnd.curl.dcurl","application/vnd.oma.dd2+xml","application/vnd.fujixerox.ddd","application/x-debian-package","text/plain","application/octet-stream","application/x-x509-ca-cert","application/vnd.dreamfactory","application/x-dgc-compressed","text/x-c","application/x-director","application/vnd.mobius.dis","application/octet-stream","application/octet-stream","image/vnd.djvu","image/vnd.djvu","application/x-msdownload","application/x-apple-diskimage","application/vnd.tcpdump.pcap","application/octet-stream","application/vnd.dna","application/msword","application/vnd.ms-word.document.macroenabled.12",u.dn,"application/msword","application/vnd.ms-word.template.macroenabled.12","application/vnd.openxmlformats-officedocument.wordprocessingml.template","application/vnd.osgi.dp","application/vnd.dpgraph","audio/vnd.dra","text/prs.lines.tag","application/dssc+der","application/x-dtbook+xml","application/xml-dtd","audio/vnd.dts","audio/vnd.dts.hd","application/octet-stream","video/vnd.dvb.file","application/x-dvi","model/vnd.dwf","image/vnd.dwg","image/vnd.dxf","application/vnd.spotfire.dxp","application/x-director","audio/vnd.nuera.ecelp4800","audio/vnd.nuera.ecelp7470","audio/vnd.nuera.ecelp9600","application/ecmascript","application/vnd.novadigm.edm","application/vnd.novadigm.edx","application/vnd.picsel","application/vnd.pg.osasli","application/octet-stream","application/x-msmetafile","message/rfc822","application/emma+xml","application/x-msmetafile","audio/vnd.digital-winds","application/vnd.ms-fontobject","application/postscript","application/epub+zip","application/vnd.eszigno3+xml","application/vnd.osgi.subsystem","application/vnd.epson.esf","application/vnd.eszigno3+xml","text/x-setext","application/x-eva","application/x-envoy","application/x-msdownload","application/exi","application/vnd.novadigm.ext","application/andrew-inset","application/vnd.ezpix-album","application/vnd.ezpix-package","text/x-fortran","video/x-f4v","text/x-fortran","text/x-fortran","image/vnd.fastbidsheet","application/vnd.adobe.formscentral.fcdt","application/vnd.isac.fcs","application/vnd.fdf","application/vnd.denovo.fcselayout-link","application/vnd.fujitsu.oasysgp","application/x-director","image/x-freehand","image/x-freehand","image/x-freehand","image/x-freehand","image/x-freehand","application/x-xfig","audio/x-flac","video/x-fli","application/vnd.micrografx.flo","video/x-flv","application/vnd.kde.kivio","text/vnd.fmi.flexstor","text/vnd.fly","application/vnd.framemaker","application/vnd.frogans.fnc","text/x-fortran","image/vnd.fpx","application/vnd.framemaker","application/vnd.fsc.weblaunch","image/vnd.fst","application/vnd.fluxtime.clip","application/vnd.anser-web-funds-transfer-initiation","video/vnd.fvt","application/vnd.adobe.fxp","application/vnd.adobe.fxp","application/vnd.fuzzysheet","application/vnd.geoplan","image/g3fax","application/vnd.geospace","application/vnd.groove-account","application/x-tads","application/rpki-ghostbusters","application/x-gca-compressed","model/vnd.gdl","application/vnd.dynageo","application/vnd.geometry-explorer","application/vnd.geogebra.file","application/vnd.geogebra.tool","application/vnd.groove-help","image/gif","application/vnd.groove-identity-message","model/gltf-binary","model/gltf+json","application/gml+xml","application/vnd.gmx","application/x-gnumeric","application/vnd.flographit","application/gpx+xml","application/vnd.grafeq","application/vnd.grafeq","application/srgs","application/x-gramps-xml","application/vnd.geometry-explorer","application/vnd.groove-injector","application/srgs+xml","application/x-font-ghostscript","application/x-gtar","application/vnd.groove-tool-message","model/vnd.gtw","text/vnd.graphviz","application/gxf","application/vnd.geonext","text/x-c","video/h261","video/h263","video/h264","application/vnd.hal+xml","application/vnd.hbci","application/x-hdf","image/heic","image/heif","text/x-c","application/winhlp","application/vnd.hp-hpgl","application/vnd.hp-hpid","application/vnd.hp-hps","application/mac-binhex40","application/vnd.kenameaapp","text/html","text/html","application/vnd.yamaha.hv-dic","application/vnd.yamaha.hv-voice","application/vnd.yamaha.hv-script","application/vnd.intergeo","application/vnd.iccprofile","x-conference/x-cooltalk","application/vnd.iccprofile","image/x-icon","text/calendar","image/ief","text/calendar","application/vnd.shana.informed.formdata","model/iges","application/vnd.igloader","application/vnd.insors.igm","model/iges","application/vnd.micrografx.igx","application/vnd.shana.informed.interchange","application/vnd.accpac.simply.imp","application/vnd.ms-ims","text/plain","application/inkml+xml","application/inkml+xml","application/x-install-instructions","application/vnd.astraea-software.iota","application/ipfix","application/vnd.shana.informed.package","application/vnd.ibm.rights-management","application/vnd.irepository.package+xml","application/x-iso9660-image","application/vnd.shana.informed.formtemplate","application/vnd.immervision-ivp","application/vnd.immervision-ivu","text/vnd.sun.j2me.app-descriptor","application/vnd.jam","application/java-archive","text/x-java-source","application/vnd.jisp","application/vnd.hp-jlyt","application/x-java-jnlp-file","application/vnd.joost.joda-archive","image/jpeg","image/jpeg","image/jpeg","video/jpm","video/jpeg","video/jpm","text/javascript","application/json","application/jsonml+json","audio/midi","application/vnd.kde.karbon","application/vnd.kde.kformula","application/vnd.kidspiration","application/vnd.google-earth.kml+xml","application/vnd.google-earth.kmz","application/vnd.kinar","application/vnd.kinar","application/vnd.kde.kontour","application/vnd.kde.kpresenter","application/vnd.kde.kpresenter","application/vnd.ds-keypoint","application/vnd.kde.kspread","application/vnd.kahootz","image/ktx","application/vnd.kahootz","application/vnd.kde.kword","application/vnd.kde.kword","application/vnd.las.las+xml","application/x-latex","application/vnd.llamagraphics.life-balance.desktop","application/vnd.llamagraphics.life-balance.exchange+xml","application/vnd.hhe.lesson-player","application/x-lzh-compressed","application/vnd.route66.link66+xml","text/plain","application/vnd.ibm.modcap","application/vnd.ibm.modcap","application/x-ms-shortcut","text/plain","application/lost+xml","application/octet-stream","application/vnd.ms-lrm","application/vnd.frogans.ltf","audio/vnd.lucent.voice","application/vnd.lotus-wordpro","application/x-lzh-compressed","application/x-msmediaview","application/x-msmediaview","video/mpeg","application/mp21","audio/mpeg","video/mpeg","audio/mpeg","audio/x-mpegurl","application/vnd.apple.mpegurl","audio/mp4","audio/mp4","video/vnd.mpegurl","video/x-m4v","application/mathematica","application/mads+xml","application/vnd.ecowin.chart","application/vnd.framemaker","text/troff","application/octet-stream","application/mathml+xml","application/mathematica","application/vnd.mobius.mbk","application/mbox","application/vnd.medcalcdata","application/vnd.mcd","text/vnd.curl.mcurl","text/markdown","text/markdown","application/x-msaccess","image/vnd.ms-modi","text/troff","model/mesh","application/metalink4+xml","application/metalink+xml","application/mets+xml","application/vnd.mfmp","application/rpki-manifest","application/vnd.osgeo.mapguide.package","application/vnd.proteus.magazine","audio/midi","audio/midi","application/x-mie","application/vnd.mif","message/rfc822","video/mj2","video/mj2","text/javascript","video/x-matroska","audio/x-matroska","video/x-matroska","video/x-matroska","application/vnd.dolby.mlp","application/vnd.chipnuts.karaoke-mmd","application/vnd.smaf","image/vnd.fujixerox.edmics-mmr","video/x-mng","application/x-msmoney","application/x-mobipocket-ebook","application/mods+xml","video/quicktime","video/x-sgi-movie","audio/mpeg","application/mp21","audio/mpeg","audio/mpeg","video/mp4","audio/mp4","application/mp4","video/mp4","application/vnd.mophun.certificate","video/mpeg","video/mpeg","video/mpeg","video/mp4","audio/mpeg","application/vnd.apple.installer+xml","application/vnd.blueice.multipass","application/vnd.mophun.application","application/vnd.ms-project","application/vnd.ms-project","application/vnd.ibm.minipay","application/vnd.mobius.mqy","application/marc","application/marcxml+xml","text/troff","application/mediaservercontrol+xml","application/vnd.fdsn.mseed","application/vnd.mseq","application/vnd.epson.msf","model/mesh","application/x-msdownload","application/vnd.mobius.msl","application/vnd.muvee.style","model/vnd.mts","application/vnd.musician","application/vnd.recordare.musicxml+xml","application/x-msmediaview","application/vnd.mfer","application/mxf","application/vnd.recordare.musicxml","application/xv+xml","application/vnd.triscape.mxs","video/vnd.mpegurl","application/vnd.nokia.n-gage.symbian.install","text/n3","application/mathematica","application/vnd.wolfram.player","application/x-netcdf","application/x-dtbncx+xml","text/x-nfo","application/vnd.nokia.n-gage.data","application/vnd.nitf","application/vnd.neurolanguage.nlu","application/vnd.enliven","application/vnd.noblenet-directory","application/vnd.noblenet-sealer","application/vnd.noblenet-web","image/vnd.net-fpx","application/x-conference","application/vnd.lotus-notes","application/vnd.nitf","application/x-nzb","application/vnd.fujitsu.oasys2","application/vnd.fujitsu.oasys3","application/vnd.fujitsu.oasys","application/x-msbinder","application/x-tgif","application/oda","application/vnd.oasis.opendocument.database","application/vnd.oasis.opendocument.chart","application/vnd.oasis.opendocument.formula","application/vnd.oasis.opendocument.formula-template","application/vnd.oasis.opendocument.graphics","application/vnd.oasis.opendocument.image","application/vnd.oasis.opendocument.text-master",u.f6,u.fW,"application/vnd.oasis.opendocument.text","audio/ogg","audio/ogg","video/ogg","application/ogg","application/omdoc+xml","application/onenote","application/onenote","application/onenote","application/onenote","application/oebps-package+xml","text/x-opml","application/vnd.palm","application/vnd.lotus-organizer","application/vnd.yamaha.openscoreformat","application/vnd.yamaha.openscoreformat.osfpvg+xml","application/vnd.oasis.opendocument.chart-template","application/x-font-otf","application/vnd.oasis.opendocument.graphics-template","application/vnd.oasis.opendocument.text-web","application/vnd.oasis.opendocument.image-template","application/vnd.oasis.opendocument.presentation-template","application/vnd.oasis.opendocument.spreadsheet-template","application/vnd.oasis.opendocument.text-template","application/oxps","application/vnd.openofficeorg.extension","text/x-pascal","application/pkcs10","application/x-pkcs12","application/x-pkcs7-certificates","application/pkcs7-mime","application/pkcs7-mime","application/x-pkcs7-certreqresp","application/pkcs7-signature","application/pkcs8","text/x-pascal","application/vnd.pawaafile","application/vnd.powerbuilder6","image/x-portable-bitmap","application/vnd.tcpdump.pcap","application/x-font-pcf","application/vnd.hp-pcl","application/vnd.hp-pclxl","image/x-pict","application/vnd.curl.pcurl","image/x-pcx","application/vnd.palm","application/pdf","application/x-font-type1","application/x-font-type1","application/x-font-type1","application/font-tdpfr","application/x-pkcs12","image/x-portable-graymap","application/x-chess-pgn","application/pgp-encrypted","image/x-pict","application/octet-stream","application/pkixcmp","application/pkix-pkipath","application/vnd.3gpp.pic-bw-large","application/vnd.mobius.plc","application/vnd.pocketlearn","application/pls+xml","application/vnd.ctc-posml","image/png","image/x-portable-anymap","application/vnd.macports.portpkg","application/vnd.ms-powerpoint","application/vnd.ms-powerpoint.template.macroenabled.12","application/vnd.openxmlformats-officedocument.presentationml.template","application/vnd.ms-powerpoint.addin.macroenabled.12","application/vnd.cups-ppd","image/x-portable-pixmap","application/vnd.ms-powerpoint","application/vnd.ms-powerpoint.slideshow.macroenabled.12","application/vnd.openxmlformats-officedocument.presentationml.slideshow","application/vnd.ms-powerpoint","application/vnd.ms-powerpoint.presentation.macroenabled.12",u.a_,"application/vnd.palm","application/x-mobipocket-ebook","application/vnd.lotus-freelance","application/pics-rules","application/postscript","application/vnd.3gpp.pic-bw-small","image/vnd.adobe.photoshop","application/x-font-linux-psf","application/pskc+xml","application/vnd.pvi.ptid1","application/x-mspublisher","application/vnd.3gpp.pic-bw-var","application/vnd.3m.post-it-notes","audio/vnd.ms-playready.media.pya","video/vnd.ms-playready.media.pyv","application/vnd.epson.quickanime","application/vnd.intu.qbo","application/vnd.intu.qfx","application/vnd.publishare-delta-tree","video/quicktime","application/vnd.quark.quarkxpress","application/vnd.quark.quarkxpress","application/vnd.quark.quarkxpress","application/vnd.quark.quarkxpress","application/vnd.quark.quarkxpress","application/vnd.quark.quarkxpress","audio/x-pn-realaudio","audio/x-pn-realaudio","application/x-rar-compressed","image/x-cmu-raster","application/vnd.ipunplugged.rcprofile","application/rdf+xml","application/vnd.data-vision.rdz","application/vnd.businessobjects","application/x-dtbresource+xml","image/x-rgb","application/reginfo+xml","audio/vnd.rip","application/x-research-info-systems","application/resource-lists+xml","image/vnd.fujixerox.edmics-rlc","application/resource-lists-diff+xml","application/vnd.rn-realmedia","audio/midi","audio/x-pn-realaudio-plugin","application/vnd.jcp.javame.midlet-rms","application/vnd.rn-realmedia-vbr","application/relax-ng-compact-syntax","application/rpki-roa","text/troff","application/vnd.cloanto.rp9","application/vnd.nokia.radio-presets","application/vnd.nokia.radio-preset","application/sparql-query","application/rls-services+xml","application/rsd+xml","application/rss+xml","application/rtf","text/richtext","text/x-asm","audio/s3m","application/vnd.yamaha.smaf-audio","application/sbml+xml","application/vnd.ibm.secure-container","application/x-msschedule","application/vnd.lotus-screencam","application/scvp-cv-request","application/scvp-cv-response","text/vnd.curl.scurl","application/vnd.stardivision.draw","application/vnd.stardivision.calc","application/vnd.stardivision.impress","application/vnd.solent.sdkm+xml","application/vnd.solent.sdkm+xml","application/sdp","application/vnd.stardivision.writer","application/vnd.seemail","application/vnd.fdsn.seed","application/vnd.sema","application/vnd.semd","application/vnd.semf","application/java-serialized-object","application/set-payment-initiation","application/set-registration-initiation","application/vnd.hydrostatix.sof-data","application/vnd.spotfire.sfs","text/x-sfv","image/sgi","application/vnd.stardivision.writer-global","text/sgml","text/sgml","application/x-sh","application/x-shar","application/shf+xml","image/x-mrsid-image","application/pgp-signature","audio/silk","model/mesh","application/vnd.symbian.install","application/vnd.symbian.install","application/x-stuffit","application/x-stuffitx","application/vnd.koan","application/vnd.koan","application/vnd.koan","application/vnd.koan","application/vnd.ms-powerpoint.slide.macroenabled.12","application/vnd.openxmlformats-officedocument.presentationml.slide","application/vnd.epson.salt","application/vnd.stepmania.stepchart","application/vnd.stardivision.math","application/smil+xml","application/smil+xml","video/x-smv","application/vnd.stepmania.package","audio/basic","application/x-font-snf","application/octet-stream","application/x-pkcs7-certificates","application/vnd.yamaha.smaf-phrase","application/x-futuresplash","text/vnd.in3d.spot","application/scvp-vp-response","application/scvp-vp-request","audio/ogg","application/x-sql","application/x-wais-source","application/x-subrip","application/sru+xml","application/sparql-results+xml","application/ssdl+xml","application/vnd.kodak-descriptor","application/vnd.epson.ssf","application/ssml+xml","application/vnd.sailingtracker.track","application/vnd.sun.xml.calc.template","application/vnd.sun.xml.draw.template","application/vnd.wt.stf","application/vnd.sun.xml.impress.template","application/hyperstudio","application/vnd.ms-pki.stl","application/vnd.pg.format","application/vnd.sun.xml.writer.template","text/vnd.dvb.subtitle","application/vnd.sus-calendar","application/vnd.sus-calendar","application/x-sv4cpio","application/x-sv4crc","application/vnd.dvb.service","application/vnd.svd","image/svg+xml","image/svg+xml","application/x-director","application/x-shockwave-flash","application/vnd.aristanetworks.swi","application/vnd.sun.xml.calc","application/vnd.sun.xml.draw","application/vnd.sun.xml.writer.global","application/vnd.sun.xml.impress","application/vnd.sun.xml.math","application/vnd.sun.xml.writer","text/troff","application/x-t3vm-image","application/vnd.mynfc","application/vnd.tao.intent-module-archive","application/x-tar","application/vnd.3gpp2.tcap","application/x-tcl","application/vnd.smart.teacher","application/tei+xml","application/tei+xml","application/x-tex","application/x-texinfo","application/x-texinfo","text/plain","application/thraud+xml","application/x-tex-tfm","image/x-tga","application/vnd.ms-officetheme","image/tiff","image/tiff","application/vnd.tmobile-livetv","application/toml","application/x-bittorrent","application/vnd.groove-tool-template","application/vnd.trid.tpt","text/troff","application/vnd.trueapp","application/x-msterminal","application/timestamped-data","text/tab-separated-values","application/x-font-ttf","application/x-font-ttf","text/turtle","application/vnd.simtech-mindmapper","application/vnd.simtech-mindmapper","application/vnd.genomatix.tuxedo","application/vnd.mobius.txf","text/plain","application/x-authorware-bin","application/x-debian-package","application/vnd.ufdl","application/vnd.ufdl","application/x-glulx","application/vnd.umajin","application/vnd.unity","application/vnd.uoml+xml","text/uri-list","text/uri-list","text/uri-list","application/x-ustar","application/vnd.uiq.theme","text/x-uuencode","audio/vnd.dece.audio","application/vnd.dece.data","application/vnd.dece.data","image/vnd.dece.graphic","video/vnd.dece.hd","image/vnd.dece.graphic","video/vnd.dece.mobile","video/vnd.dece.pd","video/vnd.dece.sd","application/vnd.dece.ttml+xml","video/vnd.uvvu.mp4","video/vnd.dece.video","audio/vnd.dece.audio","application/vnd.dece.data","application/vnd.dece.data","image/vnd.dece.graphic","video/vnd.dece.hd","image/vnd.dece.graphic","video/vnd.dece.mobile","video/vnd.dece.pd","video/vnd.dece.sd","application/vnd.dece.ttml+xml","video/vnd.uvvu.mp4","video/vnd.dece.video","application/vnd.dece.unspecified","application/vnd.dece.zip","application/vnd.dece.unspecified","application/vnd.dece.zip","text/vcard","application/x-cdlink","text/x-vcard","application/vnd.groove-vcard","text/x-vcalendar","application/vnd.vcx","application/vnd.visionary","video/vnd.vivo","video/x-ms-vob","application/vnd.stardivision.writer","application/x-authorware-bin","model/vrml","application/vnd.visio","application/vnd.vsf","application/vnd.visio","application/vnd.visio","application/vnd.visio","model/vnd.vtu","application/voicexml+xml","application/x-director","application/x-doom","application/wasm","audio/x-wav","audio/x-ms-wax","image/vnd.wap.wbmp","application/vnd.criticaltools.wbs+xml","application/vnd.wap.wbxml","application/vnd.ms-works","application/vnd.ms-works","image/vnd.ms-photo","audio/webm","video/webm","application/manifest+json","image/webp","application/vnd.pmi.widget","application/widget","application/vnd.ms-works","video/x-ms-wm","audio/x-ms-wma","application/x-ms-wmd","application/x-msmetafile","text/vnd.wap.wml","application/vnd.wap.wmlc","text/vnd.wap.wmlscript","application/vnd.wap.wmlscriptc","video/x-ms-wmv","video/x-ms-wmx","application/x-ms-wmz","application/x-font-woff","font/woff2","application/vnd.wordperfect","application/vnd.ms-wpl","application/vnd.ms-works","application/vnd.wqd","application/x-mswrite","model/vrml","application/wsdl+xml","application/wspolicy+xml","application/vnd.webturbo","video/x-ms-wvx","application/x-authorware-bin","model/x3d+xml","model/x3d+binary","model/x3d+binary","model/x3d+vrml","model/x3d+vrml","model/x3d+xml","application/xaml+xml","application/x-silverlight-app","application/vnd.xara","application/x-ms-xbap","application/vnd.fujixerox.docuworks.binder","image/x-xbitmap","application/xcap-diff+xml","application/vnd.syncml.dm+xml","application/vnd.adobe.xdp+xml","application/dssc+xml","application/vnd.fujixerox.docuworks","application/xenc+xml","application/patch-ops-error+xml","application/vnd.adobe.xfdf","application/vnd.xfdl","application/xhtml+xml","application/xhtml+xml","application/xv+xml","image/vnd.xiff","application/vnd.ms-excel","application/vnd.ms-excel.addin.macroenabled.12","application/vnd.ms-excel","application/x-xliff+xml","application/vnd.ms-excel","application/vnd.ms-excel","application/vnd.ms-excel.sheet.binary.macroenabled.12","application/vnd.ms-excel.sheet.macroenabled.12",u.dj,"application/vnd.ms-excel","application/vnd.ms-excel.template.macroenabled.12","application/vnd.openxmlformats-officedocument.spreadsheetml.template","application/vnd.ms-excel","audio/xm","application/xml","application/vnd.olpc-sugar","application/xop+xml","application/x-xpinstall","application/xproc+xml","image/x-xpixmap","application/vnd.is-xpr","application/vnd.ms-xpsdocument","application/vnd.intercon.formnet","application/vnd.intercon.formnet","application/xml","application/xslt+xml","application/vnd.syncml+xml","application/xspf+xml","application/vnd.mozilla.xul+xml","application/xv+xml","application/xv+xml","image/x-xwindowdump","chemical/x-xyz","application/x-xz","application/yang","application/yin+xml","application/x-zmachine","application/x-zmachine","application/x-zmachine","application/x-zmachine","application/x-zmachine","application/x-zmachine","application/x-zmachine","application/x-zmachine","application/vnd.zzazz.deck+xml","application/zip","application/vnd.zul","application/vnd.zul","application/vnd.handheld-entertainment+xml"],t.w) +B.c9={} +B.agq=new A.ai(B.c9,[],A.ar("ai")) +B.IZ=new A.ai(B.c9,[],A.ar("ai")) +B.ago=new A.ai(B.c9,[],A.ar("ai")) +B.mO=new A.ai(B.c9,[],A.ar("ai")) +B.agn=new A.ai(B.c9,[],A.ar("ai")) +B.IY=new A.ai(B.c9,[],A.ar("ai>")) +B.IX=new A.ai(B.c9,[],t.w) +B.cF=new A.ai(B.c9,[],t.yf) +B.J0=new A.ai(B.c9,[],A.ar("ai")) +B.J_=new A.ai(B.c9,[],A.ar("ai")) +B.agp=new A.ai(B.c9,[],A.ar("ai")) +B.J1=new A.ai(B.c9,[],A.ar("ai>")) +B.aiE={png:0,jpeg:1,jpg:2,webp:3,gif:4,bmp:5} +B.a1T=new A.tF(0,"png") +B.xR=new A.tF(1,"jpeg") +B.a1U=new A.tF(2,"webp") +B.a1V=new A.tF(3,"gif") +B.a1W=new A.tF(4,"bmp") +B.agr=new A.ai(B.aiE,[B.a1T,B.xR,B.xR,B.a1U,B.a1V,B.a1W],A.ar("ai")) +B.aiH={svg:0,g:1,a:2,use:3,symbol:4,mask:5,pattern:6,radialGradient:7,linearGradient:8,clipPath:9,image:10,text:11,tspan:12} +B.ags=new A.ai(B.aiH,[A.bWQ(),A.bAt(),A.bAt(),A.bWR(),A.bAu(),A.bAu(),A.bWO(),A.bWP(),A.bWN(),A.bWL(),A.bWM(),A.bAv(),A.bAv()],A.ar("ai")) +B.aiC={BU:0,DD:1,FX:2,TP:3,YD:4,ZR:5} +B.dS=new A.ai(B.aiC,["MM","DE","FR","TL","YE","CD"],t.w) +B.ain={Abort:0,Again:1,AltLeft:2,AltRight:3,ArrowDown:4,ArrowLeft:5,ArrowRight:6,ArrowUp:7,AudioVolumeDown:8,AudioVolumeMute:9,AudioVolumeUp:10,Backquote:11,Backslash:12,Backspace:13,BracketLeft:14,BracketRight:15,BrightnessDown:16,BrightnessUp:17,BrowserBack:18,BrowserFavorites:19,BrowserForward:20,BrowserHome:21,BrowserRefresh:22,BrowserSearch:23,BrowserStop:24,CapsLock:25,Comma:26,ContextMenu:27,ControlLeft:28,ControlRight:29,Convert:30,Copy:31,Cut:32,Delete:33,Digit0:34,Digit1:35,Digit2:36,Digit3:37,Digit4:38,Digit5:39,Digit6:40,Digit7:41,Digit8:42,Digit9:43,DisplayToggleIntExt:44,Eject:45,End:46,Enter:47,Equal:48,Esc:49,Escape:50,F1:51,F10:52,F11:53,F12:54,F13:55,F14:56,F15:57,F16:58,F17:59,F18:60,F19:61,F2:62,F20:63,F21:64,F22:65,F23:66,F24:67,F3:68,F4:69,F5:70,F6:71,F7:72,F8:73,F9:74,Find:75,Fn:76,FnLock:77,GameButton1:78,GameButton10:79,GameButton11:80,GameButton12:81,GameButton13:82,GameButton14:83,GameButton15:84,GameButton16:85,GameButton2:86,GameButton3:87,GameButton4:88,GameButton5:89,GameButton6:90,GameButton7:91,GameButton8:92,GameButton9:93,GameButtonA:94,GameButtonB:95,GameButtonC:96,GameButtonLeft1:97,GameButtonLeft2:98,GameButtonMode:99,GameButtonRight1:100,GameButtonRight2:101,GameButtonSelect:102,GameButtonStart:103,GameButtonThumbLeft:104,GameButtonThumbRight:105,GameButtonX:106,GameButtonY:107,GameButtonZ:108,Help:109,Home:110,Hyper:111,Insert:112,IntlBackslash:113,IntlRo:114,IntlYen:115,KanaMode:116,KeyA:117,KeyB:118,KeyC:119,KeyD:120,KeyE:121,KeyF:122,KeyG:123,KeyH:124,KeyI:125,KeyJ:126,KeyK:127,KeyL:128,KeyM:129,KeyN:130,KeyO:131,KeyP:132,KeyQ:133,KeyR:134,KeyS:135,KeyT:136,KeyU:137,KeyV:138,KeyW:139,KeyX:140,KeyY:141,KeyZ:142,KeyboardLayoutSelect:143,Lang1:144,Lang2:145,Lang3:146,Lang4:147,Lang5:148,LaunchApp1:149,LaunchApp2:150,LaunchAssistant:151,LaunchControlPanel:152,LaunchMail:153,LaunchScreenSaver:154,MailForward:155,MailReply:156,MailSend:157,MediaFastForward:158,MediaPause:159,MediaPlay:160,MediaPlayPause:161,MediaRecord:162,MediaRewind:163,MediaSelect:164,MediaStop:165,MediaTrackNext:166,MediaTrackPrevious:167,MetaLeft:168,MetaRight:169,MicrophoneMuteToggle:170,Minus:171,NonConvert:172,NumLock:173,Numpad0:174,Numpad1:175,Numpad2:176,Numpad3:177,Numpad4:178,Numpad5:179,Numpad6:180,Numpad7:181,Numpad8:182,Numpad9:183,NumpadAdd:184,NumpadBackspace:185,NumpadClear:186,NumpadClearEntry:187,NumpadComma:188,NumpadDecimal:189,NumpadDivide:190,NumpadEnter:191,NumpadEqual:192,NumpadMemoryAdd:193,NumpadMemoryClear:194,NumpadMemoryRecall:195,NumpadMemoryStore:196,NumpadMemorySubtract:197,NumpadMultiply:198,NumpadParenLeft:199,NumpadParenRight:200,NumpadSubtract:201,Open:202,PageDown:203,PageUp:204,Paste:205,Pause:206,Period:207,Power:208,PrintScreen:209,PrivacyScreenToggle:210,Props:211,Quote:212,Resume:213,ScrollLock:214,Select:215,SelectTask:216,Semicolon:217,ShiftLeft:218,ShiftRight:219,ShowAllWindows:220,Slash:221,Sleep:222,Space:223,Super:224,Suspend:225,Tab:226,Turbo:227,Undo:228,WakeUp:229,ZoomToggle:230} +B.agy=new A.ai(B.ain,[458907,458873,458978,458982,458833,458832,458831,458834,458881,458879,458880,458805,458801,458794,458799,458800,786544,786543,786980,786986,786981,786979,786983,786977,786982,458809,458806,458853,458976,458980,458890,458876,458875,458828,458791,458782,458783,458784,458785,458786,458787,458788,458789,458790,65717,786616,458829,458792,458798,458793,458793,458810,458819,458820,458821,458856,458857,458858,458859,458860,458861,458862,458811,458863,458864,458865,458866,458867,458812,458813,458814,458815,458816,458817,458818,458878,18,19,392961,392970,392971,392972,392973,392974,392975,392976,392962,392963,392964,392965,392966,392967,392968,392969,392977,392978,392979,392980,392981,392982,392983,392984,392985,392986,392987,392988,392989,392990,392991,458869,458826,16,458825,458852,458887,458889,458888,458756,458757,458758,458759,458760,458761,458762,458763,458764,458765,458766,458767,458768,458769,458770,458771,458772,458773,458774,458775,458776,458777,458778,458779,458780,458781,787101,458896,458897,458898,458899,458900,786836,786834,786891,786847,786826,786865,787083,787081,787084,786611,786609,786608,786637,786610,786612,786819,786615,786613,786614,458979,458983,24,458797,458891,458835,458850,458841,458842,458843,458844,458845,458846,458847,458848,458849,458839,458939,458968,458969,458885,458851,458836,458840,458855,458963,458962,458961,458960,458964,458837,458934,458935,458838,458868,458830,458827,458877,458824,458807,458854,458822,23,458915,458804,21,458823,458871,786850,458803,458977,458981,787103,458808,65666,458796,17,20,458795,22,458874,65667,786994],t.eL) +B.Jl={AVRInput:0,AVRPower:1,Accel:2,Accept:3,Again:4,AllCandidates:5,Alphanumeric:6,AltGraph:7,AppSwitch:8,ArrowDown:9,ArrowLeft:10,ArrowRight:11,ArrowUp:12,Attn:13,AudioBalanceLeft:14,AudioBalanceRight:15,AudioBassBoostDown:16,AudioBassBoostToggle:17,AudioBassBoostUp:18,AudioFaderFront:19,AudioFaderRear:20,AudioSurroundModeNext:21,AudioTrebleDown:22,AudioTrebleUp:23,AudioVolumeDown:24,AudioVolumeMute:25,AudioVolumeUp:26,Backspace:27,BrightnessDown:28,BrightnessUp:29,BrowserBack:30,BrowserFavorites:31,BrowserForward:32,BrowserHome:33,BrowserRefresh:34,BrowserSearch:35,BrowserStop:36,Call:37,Camera:38,CameraFocus:39,Cancel:40,CapsLock:41,ChannelDown:42,ChannelUp:43,Clear:44,Close:45,ClosedCaptionToggle:46,CodeInput:47,ColorF0Red:48,ColorF1Green:49,ColorF2Yellow:50,ColorF3Blue:51,ColorF4Grey:52,ColorF5Brown:53,Compose:54,ContextMenu:55,Convert:56,Copy:57,CrSel:58,Cut:59,DVR:60,Delete:61,Dimmer:62,DisplaySwap:63,Eisu:64,Eject:65,End:66,EndCall:67,Enter:68,EraseEof:69,Esc:70,Escape:71,ExSel:72,Execute:73,Exit:74,F1:75,F10:76,F11:77,F12:78,F13:79,F14:80,F15:81,F16:82,F17:83,F18:84,F19:85,F2:86,F20:87,F21:88,F22:89,F23:90,F24:91,F3:92,F4:93,F5:94,F6:95,F7:96,F8:97,F9:98,FavoriteClear0:99,FavoriteClear1:100,FavoriteClear2:101,FavoriteClear3:102,FavoriteRecall0:103,FavoriteRecall1:104,FavoriteRecall2:105,FavoriteRecall3:106,FavoriteStore0:107,FavoriteStore1:108,FavoriteStore2:109,FavoriteStore3:110,FinalMode:111,Find:112,Fn:113,FnLock:114,GoBack:115,GoHome:116,GroupFirst:117,GroupLast:118,GroupNext:119,GroupPrevious:120,Guide:121,GuideNextDay:122,GuidePreviousDay:123,HangulMode:124,HanjaMode:125,Hankaku:126,HeadsetHook:127,Help:128,Hibernate:129,Hiragana:130,HiraganaKatakana:131,Home:132,Hyper:133,Info:134,Insert:135,InstantReplay:136,JunjaMode:137,KanaMode:138,KanjiMode:139,Katakana:140,Key11:141,Key12:142,LastNumberRedial:143,LaunchApplication1:144,LaunchApplication2:145,LaunchAssistant:146,LaunchCalendar:147,LaunchContacts:148,LaunchControlPanel:149,LaunchMail:150,LaunchMediaPlayer:151,LaunchMusicPlayer:152,LaunchPhone:153,LaunchScreenSaver:154,LaunchSpreadsheet:155,LaunchWebBrowser:156,LaunchWebCam:157,LaunchWordProcessor:158,Link:159,ListProgram:160,LiveContent:161,Lock:162,LogOff:163,MailForward:164,MailReply:165,MailSend:166,MannerMode:167,MediaApps:168,MediaAudioTrack:169,MediaClose:170,MediaFastForward:171,MediaLast:172,MediaPause:173,MediaPlay:174,MediaPlayPause:175,MediaRecord:176,MediaRewind:177,MediaSkip:178,MediaSkipBackward:179,MediaSkipForward:180,MediaStepBackward:181,MediaStepForward:182,MediaStop:183,MediaTopMenu:184,MediaTrackNext:185,MediaTrackPrevious:186,MicrophoneToggle:187,MicrophoneVolumeDown:188,MicrophoneVolumeMute:189,MicrophoneVolumeUp:190,ModeChange:191,NavigateIn:192,NavigateNext:193,NavigateOut:194,NavigatePrevious:195,New:196,NextCandidate:197,NextFavoriteChannel:198,NextUserProfile:199,NonConvert:200,Notification:201,NumLock:202,OnDemand:203,Open:204,PageDown:205,PageUp:206,Pairing:207,Paste:208,Pause:209,PinPDown:210,PinPMove:211,PinPToggle:212,PinPUp:213,Play:214,PlaySpeedDown:215,PlaySpeedReset:216,PlaySpeedUp:217,Power:218,PowerOff:219,PreviousCandidate:220,Print:221,PrintScreen:222,Process:223,Props:224,RandomToggle:225,RcLowBattery:226,RecordSpeedNext:227,Redo:228,RfBypass:229,Romaji:230,STBInput:231,STBPower:232,Save:233,ScanChannelsToggle:234,ScreenModeNext:235,ScrollLock:236,Select:237,Settings:238,ShiftLevel5:239,SingleCandidate:240,Soft1:241,Soft2:242,Soft3:243,Soft4:244,Soft5:245,Soft6:246,Soft7:247,Soft8:248,SpeechCorrectionList:249,SpeechInputToggle:250,SpellCheck:251,SplitScreenToggle:252,Standby:253,Subtitle:254,Super:255,Symbol:256,SymbolLock:257,TV:258,TV3DMode:259,TVAntennaCable:260,TVAudioDescription:261,TVAudioDescriptionMixDown:262,TVAudioDescriptionMixUp:263,TVContentsMenu:264,TVDataService:265,TVInput:266,TVInputComponent1:267,TVInputComponent2:268,TVInputComposite1:269,TVInputComposite2:270,TVInputHDMI1:271,TVInputHDMI2:272,TVInputHDMI3:273,TVInputHDMI4:274,TVInputVGA1:275,TVMediaContext:276,TVNetwork:277,TVNumberEntry:278,TVPower:279,TVRadioService:280,TVSatellite:281,TVSatelliteBS:282,TVSatelliteCS:283,TVSatelliteToggle:284,TVTerrestrialAnalog:285,TVTerrestrialDigital:286,TVTimer:287,Tab:288,Teletext:289,Undo:290,Unidentified:291,VideoModeNext:292,VoiceDial:293,WakeUp:294,Wink:295,Zenkaku:296,ZenkakuHankaku:297,ZoomIn:298,ZoomOut:299,ZoomToggle:300} +B.agz=new A.ai(B.Jl,[4294970632,4294970633,4294967553,4294968577,4294968578,4294969089,4294969090,4294967555,4294971393,4294968065,4294968066,4294968067,4294968068,4294968579,4294970625,4294970626,4294970627,4294970882,4294970628,4294970629,4294970630,4294970631,4294970884,4294970885,4294969871,4294969873,4294969872,4294967304,4294968833,4294968834,4294970369,4294970370,4294970371,4294970372,4294970373,4294970374,4294970375,4294971394,4294968835,4294971395,4294968580,4294967556,4294970634,4294970635,4294968321,4294969857,4294970642,4294969091,4294970636,4294970637,4294970638,4294970639,4294970640,4294970641,4294969092,4294968581,4294969093,4294968322,4294968323,4294968324,4294970703,4294967423,4294970643,4294970644,4294969108,4294968836,4294968069,4294971396,4294967309,4294968325,4294967323,4294967323,4294968326,4294968582,4294970645,4294969345,4294969354,4294969355,4294969356,4294969357,4294969358,4294969359,4294969360,4294969361,4294969362,4294969363,4294969346,4294969364,4294969365,4294969366,4294969367,4294969368,4294969347,4294969348,4294969349,4294969350,4294969351,4294969352,4294969353,4294970646,4294970647,4294970648,4294970649,4294970650,4294970651,4294970652,4294970653,4294970654,4294970655,4294970656,4294970657,4294969094,4294968583,4294967558,4294967559,4294971397,4294971398,4294969095,4294969096,4294969097,4294969098,4294970658,4294970659,4294970660,4294969105,4294969106,4294969109,4294971399,4294968584,4294968841,4294969110,4294969111,4294968070,4294967560,4294970661,4294968327,4294970662,4294969107,4294969112,4294969113,4294969114,4294971905,4294971906,4294971400,4294970118,4294970113,4294970126,4294970114,4294970124,4294970127,4294970115,4294970116,4294970117,4294970125,4294970119,4294970120,4294970121,4294970122,4294970123,4294970663,4294970664,4294970665,4294970666,4294968837,4294969858,4294969859,4294969860,4294971402,4294970667,4294970704,4294970715,4294970668,4294970669,4294970670,4294970671,4294969861,4294970672,4294970673,4294970674,4294970705,4294970706,4294970707,4294970708,4294969863,4294970709,4294969864,4294969865,4294970886,4294970887,4294970889,4294970888,4294969099,4294970710,4294970711,4294970712,4294970713,4294969866,4294969100,4294970675,4294970676,4294969101,4294971401,4294967562,4294970677,4294969867,4294968071,4294968072,4294970714,4294968328,4294968585,4294970678,4294970679,4294970680,4294970681,4294968586,4294970682,4294970683,4294970684,4294968838,4294968839,4294969102,4294969868,4294968840,4294969103,4294968587,4294970685,4294970686,4294970687,4294968329,4294970688,4294969115,4294970693,4294970694,4294969869,4294970689,4294970690,4294967564,4294968588,4294970691,4294967569,4294969104,4294969601,4294969602,4294969603,4294969604,4294969605,4294969606,4294969607,4294969608,4294971137,4294971138,4294969870,4294970692,4294968842,4294970695,4294967566,4294967567,4294967568,4294970697,4294971649,4294971650,4294971651,4294971652,4294971653,4294971654,4294971655,4294970698,4294971656,4294971657,4294971658,4294971659,4294971660,4294971661,4294971662,4294971663,4294971664,4294971665,4294971666,4294971667,4294970699,4294971668,4294971669,4294971670,4294971671,4294971672,4294971673,4294971674,4294971675,4294967305,4294970696,4294968330,4294967297,4294970700,4294971403,4294968843,4294970701,4294969116,4294969117,4294968589,4294968590,4294970702],t.eL) +B.agA=new A.ai(B.Jl,[B.Gn,B.Go,B.E3,B.Ei,B.Ej,B.EH,B.EI,B.mJ,B.HR,B.dn,B.cB,B.cC,B.dp,B.Ek,B.Gg,B.Gh,B.Gi,B.HI,B.Gj,B.Gk,B.Gl,B.Gm,B.HJ,B.HK,B.FS,B.FU,B.FT,B.bE,B.Ew,B.Ex,B.G9,B.Ga,B.Gb,B.Gc,B.Gd,B.Ge,B.Gf,B.HS,B.Ey,B.HT,B.El,B.js,B.Gp,B.Gq,B.qp,B.FF,B.Gx,B.EJ,B.Gr,B.Gs,B.Gt,B.Gu,B.Gv,B.Gw,B.EK,B.Em,B.EL,B.Ea,B.Eb,B.Ec,B.Hv,B.bF,B.Gy,B.Gz,B.F_,B.Ez,B.f6,B.HU,B.mI,B.Ed,B.jr,B.jr,B.Ee,B.En,B.GA,B.F9,B.Fi,B.Fj,B.Fk,B.Fl,B.Fm,B.Fn,B.Fo,B.Fp,B.Fq,B.Fr,B.Fa,B.Fs,B.Ft,B.Fu,B.Fv,B.Fw,B.Fb,B.Fc,B.Fd,B.Fe,B.Ff,B.Fg,B.Fh,B.GB,B.GC,B.GD,B.GE,B.GF,B.GG,B.GH,B.GI,B.GJ,B.GK,B.GL,B.GM,B.EM,B.Eo,B.qo,B.E4,B.HV,B.HW,B.EN,B.EO,B.EP,B.EQ,B.GN,B.GO,B.GP,B.EX,B.EY,B.F0,B.HX,B.Ep,B.EE,B.F1,B.F2,B.f7,B.E5,B.GQ,B.qq,B.GR,B.EZ,B.F3,B.F4,B.F5,B.Is,B.It,B.HY,B.G_,B.FV,B.G7,B.FW,B.G5,B.G8,B.FX,B.FY,B.FZ,B.G6,B.G0,B.G1,B.G2,B.G3,B.G4,B.GS,B.GT,B.GU,B.GV,B.EA,B.FG,B.FH,B.FI,B.I_,B.GW,B.Hw,B.HH,B.GX,B.GY,B.GZ,B.H_,B.FJ,B.H0,B.H1,B.H2,B.Hx,B.Hy,B.Hz,B.HA,B.FK,B.HB,B.FL,B.FM,B.HL,B.HM,B.HO,B.HN,B.ER,B.HC,B.HD,B.HE,B.HF,B.FN,B.ES,B.H3,B.H4,B.ET,B.HZ,B.mK,B.H5,B.FO,B.jt,B.ju,B.HG,B.Ef,B.Eq,B.H6,B.H7,B.H8,B.H9,B.Er,B.Ha,B.Hb,B.Hc,B.EB,B.EC,B.EU,B.FP,B.ED,B.EV,B.Es,B.Hd,B.He,B.Hf,B.Eg,B.Hg,B.F6,B.Hl,B.Hm,B.FQ,B.Hh,B.Hi,B.mL,B.Et,B.Hj,B.E9,B.EW,B.Fx,B.Fy,B.Fz,B.FA,B.FB,B.FC,B.FD,B.FE,B.HP,B.HQ,B.FR,B.Hk,B.EF,B.Hn,B.E6,B.E7,B.E8,B.Hp,B.I1,B.I2,B.I3,B.I4,B.I5,B.I6,B.I7,B.Hq,B.I8,B.I9,B.Ia,B.Ib,B.Ic,B.Id,B.Ie,B.If,B.Ig,B.Ih,B.Ii,B.Ij,B.Hr,B.Ik,B.Il,B.Im,B.In,B.Io,B.Ip,B.Iq,B.Ir,B.mH,B.Ho,B.Eh,B.E2,B.Hs,B.I0,B.EG,B.Ht,B.F7,B.F8,B.Eu,B.Ev,B.Hu],A.ar("ai")) +B.aiI={af:0,am:1,ar:2,as:3,az:4,be:5,bg:6,bn:7,bs:8,ca:9,cs:10,cy:11,da:12,de:13,de_CH:14,el:15,en:16,en_AU:17,en_CA:18,en_GB:19,en_IE:20,en_IN:21,en_NZ:22,en_SG:23,en_US:24,en_ZA:25,es:26,es_419:27,es_MX:28,es_US:29,et:30,eu:31,fa:32,fi:33,fil:34,fr:35,fr_CA:36,gl:37,gsw:38,gu:39,he:40,hi:41,hr:42,hu:43,hy:44,id:45,is:46,it:47,ja:48,ka:49,kk:50,km:51,kn:52,ko:53,ky:54,lo:55,lt:56,lv:57,mk:58,ml:59,mn:60,mr:61,ms:62,my:63,nb:64,ne:65,nl:66,no:67,or:68,pa:69,pl:70,ps:71,pt:72,pt_PT:73,ro:74,ru:75,si:76,sk:77,sl:78,sq:79,sr:80,sr_Latn:81,sv:82,sw:83,ta:84,te:85,th:86,tl:87,tr:88,uk:89,ur:90,uz:91,vi:92,zh:93,zh_HK:94,zh_TW:95,zu:96} +B.afv=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd-MM","EEE d/M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","MM-y","y-MM-dd","EEE y-MM-dd","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af5=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","M/d","EEE\u1363 M/d","LLL","MMM d","EEE\u1363 MMM d","LLLL","MMMM d","EEEE\u1363 MMMM d","QQQ","QQQQ","y","M/y","d/M/y","EEE\u1363 d/M/y","MMM y","d MMM y","EEE\u1363 MMM d y","MMMM y","d MMMM y","y MMMM d, EEEE","QQQ y","QQQQ y","H","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afm=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/\u200fM","EEE\u060c d/\u200fM","LLL","d MMM","EEE\u060c d MMM","LLLL","d MMMM","EEEE\u060c d MMMM","QQQ","QQQQ","y","M\u200f/y","d\u200f/M\u200f/y","EEE\u060c d/\u200fM/\u200fy","MMM y","d MMM y","EEE\u060c d MMM y","MMMM y","d MMMM y","EEEE\u060c d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af8=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd-MM","EEE, dd-MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM-y","dd-MM-y","EEE, dd-MM-y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM, y","EEEE, d MMMM, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","a h","a h:mm","a h:mm:ss","a h:mm v","a h:mm z","a h z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afe=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd.MM","dd.MM, EEE","LLL","d MMM","d MMM, EEE","LLLL","d MMMM","d MMMM, EEEE","QQQ","QQQQ","y","MM.y","dd.MM.y","dd.MM.y, EEE","MMM y","d MMM y","d MMM y, EEE","MMMM y","d MMMM y","d MMMM y, EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aeW=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d.M","EEE, d.M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","LLL y","d MMM y","EEE, d MMM y","LLLL y","d MMMM y '\u0433'.","EEEE, d MMMM y '\u0433'.","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm.ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afo=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d.MM","EEE, d.MM","MM","d.MM","EEE, d.MM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y '\u0433'.","MM.y '\u0433'.","d.MM.y '\u0433'.","EEE, d.MM.y '\u0433'.","MM.y '\u0433'.","d.MM.y '\u0433'.","EEE, d.MM.y '\u0433'.","MMMM y '\u0433'.","d MMMM y '\u0433'.","EEEE, d MMMM y '\u0433'.","QQQ y '\u0433'.","QQQQ y '\u0433'.","HH '\u0447'.","HH:mm '\u0447'.","HH:mm:ss '\u0447'.","HH '\u0447'.","HH:mm '\u0447'.","HH:mm:ss '\u0447'.","HH:mm '\u0447'. v","HH:mm '\u0447'. z","HH '\u0447'. z","m","m:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afP=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d-M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM, y","EEE, d MMM, y","MMMM y","d MMMM, y","EEEE, d MMMM, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afl=new A.ai(B.y,["d.","ccc","cccc","LLL","LLLL","L","d.M.","EEE, d.M.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y.","MM/y","d.M.y.","EEE, d.M.y.","MMM y.","d. MMM y.","EEE, d. MMM y.","LLLL y.","d. MMMM y.","EEEE, d. MMMM y.","QQQ y.","QQQQ y.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm (v)","HH:mm (z)","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afk=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","LLL 'de' y","d MMM 'de' y","EEE, d MMM y","LLLL 'de' y","d MMMM 'de' y","EEEE, d MMMM 'de' y","QQQ y","QQQQ y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","H:mm v","H:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afy=new A.ai(B.y,["d.","ccc","cccc","LLL","LLLL","L","d. M.","EEE d. M.","LLL","d. M.","EEE d. M.","LLLL","d. MMMM","EEEE d. MMMM","QQQ","QQQQ","y","M/y","d. M. y","EEE d. M. y","LLLL y","d. M. y","EEE d. M. y","LLLL y","d. MMMM y","EEEE d. MMMM y","QQQ y","QQQQ y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","H:mm v","H:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afL=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","MMMM d","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af2=new A.ai(B.y,["d.","ccc","cccc","MMM","MMMM","M","d.M","EEE d.M","MMM","d. MMM","EEE d. MMM","MMMM","d. MMMM","EEEE d. MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE d.M.y","MMM y","d. MMM y","EEE d. MMM y","MMMM y","d. MMMM y","EEEE 'den' d. MMMM y","QQQ y","QQQQ y","HH","HH.mm","HH.mm.ss","HH","HH.mm","HH.mm.ss","HH.mm v","HH.mm z","HH z","m","mm.ss","s","v","z","zzzz","ZZZZ"],t.w) +B.IU=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d.M.","EEE, d.M.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM y","d. MMM y","EEE, d. MMM y","MMMM y","d. MMMM y","EEEE, d. MMMM y","QQQ y","QQQQ y","HH 'Uhr'","HH:mm","HH:mm:ss","HH 'Uhr'","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH 'Uhr' z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afd=new A.ai(B.y,["d","ccc","cccc","MMM","MMMM","L","d/M","EEE d/M","MMM","d MMM","EEE d MMM","MMMM","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE d/M/y","MMM y","d MMM y","EEE d MMM y","LLLL y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.jA=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","M/d","EEE, M/d","LLL","MMM d","EEE, MMM d","LLLL","MMMM d","EEEE, MMMM d","QQQ","QQQQ","y","M/y","M/d/y","EEE, M/d/y","MMM y","MMM d, y","EEE, MMM d, y","MMMM y","MMMM d, y","EEEE, MMMM d, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afQ=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE, dd/MM/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afG=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","MM-dd","EEE, MM-dd","LLL","MMM d","EEE, MMM d","LLLL","MMMM d","EEEE, MMMM d","QQQ","QQQQ","y","MM/y","y-MM-dd","EEE, y-MM-dd","MMM y","MMM d, y","EEE, MMM d, y","MMMM y","MMMM d, y","EEEE, MMMM d, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afb=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd/MM","EEE, dd/MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE, dd/MM/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aeQ=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aga=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd/MM","EEE, dd/MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM, y","MMMM y","d MMMM y","EEEE, d MMMM, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afc=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, dd/MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","d/MM/y","EEE, dd/MM/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afw=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd/MM","EEE, dd/MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE, dd/MM/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afh=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","MM/dd","EEE, MM/dd","LLL","dd MMM","EEE, dd MMM","LLLL","d MMMM","EEEE, dd MMMM","QQQ","QQQQ","y","MM/y","y/MM/dd","EEE, y/MM/dd","MMM y","dd MMM y","EEE, dd MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aft=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ y","QQQQ 'de' y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","H:mm v","H:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afH=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ 'de' y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afF=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE d 'de' MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d 'de' MMM 'de' y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afD=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d 'de' MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d 'de' MMM 'de' y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afp=new A.ai(B.y,["d","ccc","cccc","MMMM","MMMM","M","d.M","EEE, d.M","MMMM","d. MMM","EEE, d. MMM","MMMM","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM y","d. MMM y","EEE, d. MMMM y","MMMM y","d. MMMM y","EEEE, d. MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afS=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","M/d","M/d, EEE","LLL","MMM d","MMM d, EEE","LLLL","MMMM d","MMMM d, EEEE","QQQ","QQQQ","y","y/M","y/M/d","y/M/d, EEE","y MMM","y MMM d","y MMM d, EEE","y('e')'ko' MMMM","y('e')'ko' MMMM'ren' d","y('e')'ko' MMMM'ren' d('a'), EEEE","y('e')'ko' QQQ","y('e')'ko' QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH (z)","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af1=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","M/d","EEE M/d","LLL","d LLL","EEE d LLL","LLLL","d LLLL","EEEE d LLLL","QQQ","QQQQ","y","y/M","y/M/d","EEE y/M/d","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQQ y","QQQQ y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","H:mm v","HH:mm (z)","H (z)","m","m:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag8=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d.M.","EEE d.M.","LLL","d. MMM","ccc d. MMM","LLLL","d. MMMM","cccc d. MMMM","QQQ","QQQQ","y","L.y","d.M.y","EEE d.M.y","LLL y","d. MMM y","EEE d. MMM y","LLLL y","d. MMMM y","EEEE d. MMMM y","QQQ y","QQQQ y","H","H.mm","H.mm.ss","H","H.mm","H.mm.ss","H.mm v","H.mm z","H z","m","m.ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afR=new A.ai(B.y,["d","EEE","EEEE","LLL","LLLL","L","dd/MM","EEE dd/MM","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE dd/MM/y","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH 'h'","HH:mm","HH:mm:ss","HH 'h'","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH 'h' z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aeX=new A.ai(B.y,["d","EEE","EEEE","LLL","LLLL","L","M-d","EEE M-d","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","y-MM","y-MM-dd","EEE y-MM-dd","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH 'h'","HH 'h' mm","HH 'h' mm 'min' ss 's'","HH 'h'","HH 'h' mm","HH 'h' mm 'min' ss 's'","HH 'h' mm v","HH 'h' mm z","HH 'h' z","m","mm 'min' ss 's'","s","v","z","zzzz","ZZZZ"],t.w) +B.afA=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d 'de' MMM","EEE, d 'de' MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM 'de' y","d 'de' MMM 'de' y","EEE, d 'de' MMM 'de' y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag6=new A.ai(B.y,["d","EEE","EEEE","LLL","LLLL","L","d.M.","EEE, d.M.","LLL","d. MMM","EEE d. MMM","LLLL","d. MMMM","EEEE d. MMMM","QQQ","QQQQ","y","y-M","d.M.y","EEE, y-M-d","MMM y","y MMM d","EEE, d. MMM y","MMMM y","d. MMMM y","EEEE, d. MMMM y","QQQ y","QQQQ y","H","HH:mm","HH:mm:ss","H","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afY=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM, y","EEE, d MMM, y","MMMM y","d MMMM, y","EEEE, d MMMM, y","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag5=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d.M","EEE, d.M","LLL","d \u05d1MMM","EEE, d \u05d1MMM","LLLL","d \u05d1MMMM","EEEE, d \u05d1MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM y","d \u05d1MMM y","EEE, d \u05d1MMM y","MMMM y","d \u05d1MMMM y","EEEE, d \u05d1MMMM y","QQQ y","QQQQ y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","HH:mm v","HH:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.agb=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag2=new A.ai(B.y,["d.","ccc","cccc","LLL","LLLL","L.","dd. MM.","EEE, dd. MM.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y.","MM. y.","dd. MM. y.","EEE, dd. MM. y.","LLL y.","d. MMM y.","EEE, d. MMM y.","LLLL y.","d. MMMM y.","EEEE, d. MMMM y.","QQQ y.","QQQQ y.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH (z)","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afr=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","M. d.","M. d., EEE","LLL","MMM d.","MMM d., EEE","LLLL","MMMM d.","MMMM d., EEEE","QQQ","QQQQ","y.","y. M.","y. MM. dd.","y. MM. dd., EEE","y. MMM","y. MMM d.","y. MMM d., EEE","y. MMMM","y. MMMM d.","y. MMMM d., EEEE","y. QQQ","y. QQQQ","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","HH:mm v","HH:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag3=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd.MM","dd.MM, EEE","LLL","d MMM","d MMM, EEE","LLLL","MMMM d","d MMMM, EEEE","QQQ","QQQQ","y","MM.y","dd.MM.y","d.MM.y \u0569., EEE","y \u0569. LLL","d MMM, y \u0569.","y \u0569. MMM d, EEE","y \u0569\u2024 LLLL","d MMMM, y \u0569.","y \u0569. MMMM d, EEEE","y \u0569. QQQ","y \u0569. QQQQ","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","HH:mm v","HH:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aeU=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH.mm","HH.mm.ss","HH","HH.mm","HH.mm.ss","HH.mm v","HH.mm z","HH z","m","mm.ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afV=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d.M.","EEE, d.M.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y","M. y","d.M.y","EEE, d.M.y","MMM y","d. MMM y","EEE, d. MMM y","MMMM y","d. MMMM y","EEEE, d. MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","v \u2013 HH:mm","z \u2013 HH:mm","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afT=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE d/M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE d/M/y","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afI=new A.ai(B.y,["d\u65e5","ccc","cccc","M\u6708","M\u6708","M\u6708","M/d","M/d(EEE)","M\u6708","M\u6708d\u65e5","M\u6708d\u65e5(EEE)","M\u6708","M\u6708d\u65e5","M\u6708d\u65e5EEEE","QQQ","QQQQ","y\u5e74","y/M","y/M/d","y/M/d(EEE)","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5(EEE)","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5EEEE","y/QQQ","y\u5e74QQQQ","H\u6642","H:mm","H:mm:ss","H\u6642","H:mm","H:mm:ss","H:mm v","H:mm z","H\u6642 z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afi=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d.M","EEE, d.M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM. y","d MMM. y","EEE, d MMM. y","MMMM, y","d MMMM, y","EEEE, d MMMM, y","QQQ, y","QQQQ, y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aeY=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd.MM","dd.MM, EEE","LLL","d MMM","d MMM, EEE","LLLL","d MMMM","d MMMM, EEEE","QQQ","QQQQ","y","MM.y","dd.MM.y","dd.MM.y, EEE","y '\u0436'. MMM","y '\u0436'. d MMM","y '\u0436'. d MMM, EEE","y '\u0436'. MMMM","y '\u0436'. d MMMM","y '\u0436'. d MMMM, EEEE","y '\u0436'. QQQ","y '\u0436'. QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aff=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE d/M","LLL","d MMM","EEE d MMM","LLLL","MMMM d","EEEE d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE d/M/y","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afn=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","d/M, EEE","LLL","MMM d","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, M/d/y","MMM y","MMM d,y","EEE, MMM d, y","MMMM y","MMMM d, y","EEEE, MMMM d, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aeZ=new A.ai(B.y,["d\uc77c","ccc","cccc","LLL","LLLL","M\uc6d4","M. d.","M. d. (EEE)","LLL","MMM d\uc77c","MMM d\uc77c (EEE)","LLLL","MMMM d\uc77c","MMMM d\uc77c EEEE","QQQ","QQQQ","y\ub144","y. M.","y. M. d.","y. M. d. (EEE)","y\ub144 MMM","y\ub144 MMM d\uc77c","y\ub144 MMM d\uc77c (EEE)","y\ub144 MMMM","y\ub144 MMMM d\uc77c","y\ub144 MMMM d\uc77c EEEE","y\ub144 QQQ","y\ub144 QQQQ","H\uc2dc","HH:mm","H\uc2dc m\ubd84 s\ucd08","a h\uc2dc","a h:mm","a h:mm:ss","a h:mm v","a h:mm z","a h\uc2dc z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afM=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd-MM","dd-MM, EEE","LLL","d-MMM","d-MMM, EEE","LLLL","d-MMMM","d-MMMM, EEEE","QQQ","QQQQ","y","y-MM","y-dd-MM","y-dd-MM, EEE","y-'\u0436'. MMM","y-'\u0436'. d-MMM","y-'\u0436'. d-MMM, EEE","y-'\u0436'., MMMM","y-'\u0436'., d-MMMM","y-'\u0436'., d-MMMM, EEEE","y-'\u0436'., QQQ","y-'\u0436'., QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af6=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE d MMM","LLLL","MMMM d","EEEE d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afu=new A.ai(B.y,["dd","ccc","cccc","LLL","LLLL","MM","MM-d","MM-dd, EEE","MM","MM-dd","MM-dd, EEE","LLLL","MMMM d 'd'.","MMMM d 'd'., EEEE","QQQ","QQQQ","y","y-MM","y-MM-dd","y-MM-dd, EEE","y-MM","y-MM-dd","y-MM-dd, EEE","y 'm'. LLLL","y 'm'. MMMM d 'd'.","y 'm'. MMMM d 'd'., EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm; v","HH:mm; z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag7=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd.MM.","EEE, dd.MM.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y. 'g'.","MM.y.","d.MM.y.","EEE, d.M.y.","y. 'g'. MMM","y. 'g'. d. MMM","EEE, y. 'g'. d. MMM","y. 'g'. MMMM","y. 'gada' d. MMMM","EEEE, y. 'gada' d. MMMM","y. 'g'. QQQ","y. 'g'. QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afE=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d.M","EEE, d.M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM y '\u0433'.","d MMM y '\u0433'.","EEE, d MMM y '\u0433'.","MMMM y '\u0433'.","d MMMM y","EEEE, d MMMM y","QQQ y '\u0433'.","QQQQ y '\u0433'.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af_=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","d/M, EEE","LLL","MMM d","MMM d, EEE","LLLL","MMMM d","MMMM d, EEEE","QQQ","QQQQ","y","y-MM","d/M/y","d-M-y, EEE","y MMM","y MMM d","y MMM d, EEE","y MMMM","y, MMMM d","y, MMMM d, EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afK=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","LLLLL","MMMMM/dd","MMMMM/dd. EEE","LLL","MMM'\u044b\u043d' d","MMM'\u044b\u043d' d. EEE","LLLL","MMMM'\u044b\u043d' d","MMMM'\u044b\u043d' d. EEEE","QQQ","QQQQ","y","y MMMMM","y.MM.dd","y.MM.dd. EEE","y '\u043e\u043d\u044b' MMM","y '\u043e\u043d\u044b' MMM'\u044b\u043d' d","y '\u043e\u043d\u044b' MMM'\u044b\u043d' d. EEE","y '\u043e\u043d\u044b' MMMM","y '\u043e\u043d\u044b' MMMM'\u044b\u043d' d","y '\u043e\u043d\u044b' MMMM'\u044b\u043d' d, EEEE '\u0433\u0430\u0440\u0430\u0433'","y '\u043e\u043d\u044b' QQQ","y '\u043e\u043d\u044b' QQQQ","HH '\u0446'","HH:mm","HH:mm:ss","HH '\u0446'","HH:mm","HH:mm:ss","HH:mm (v)","HH:mm (z)","HH '\u0446' (z)","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afz=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM, y","EEE, d, MMM y","MMMM y","d MMMM, y","EEEE, d MMMM, y","QQQ y","QQQQ y","HH","H:mm","H:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aeR=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d-M","EEE, d-M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M-y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afZ=new A.ai(B.y,["d","ccc\u1014\u1031\u1037","cccc\u1014\u1031\u1037","LLL","LLLL","L","d/M","d-M- EEE","LLL","d MMM","MMM d- EEE","LLLL","MMMM d","MMMM d \u101b\u1000\u103a EEEE\u1014\u1031\u1037","QQQ","QQQQ","y","M/y","dd-MM-y","d/M/y- EEE","MMM y","y- MMM d","y- MMM d- EEE","y MMMM","y- MMMM d","y- MMMM d- EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","v HH:mm","z HH:mm","z HH","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.IV=new A.ai(B.y,["d.","ccc","cccc","LLL","LLLL","L.","d.M.","EEE d.M.","LLL","d. MMM","EEE d. MMM","LLLL","d. MMMM","EEEE d. MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE d.M.y","MMM y","d. MMM y","EEE d. MMM y","MMMM y","d. MMMM y","EEEE d. MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afU=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","MM-dd","MM-dd, EEE","LLL","MMM d","MMM d, EEE","LLLL","MMMM d","MMMM d, EEEE","QQQ","QQQQ","y","y-MM","y-MM-dd","y-MM-dd, EEE","y MMM","y MMM d","y MMM d, EEE","y MMMM","y MMMM d","y MMMM d, EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag1=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d-M","EEE d-M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","M-y","d-M-y","EEE d-M-y","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afC=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, dd-MM.","LLL","d MMM","EEE, d MMM","LLLL","MMMM d","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afB=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d.MM","EEE, d.MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM.y","d.MM.y","EEE, d.MM.y","LLL y","d MMM y","EEE, d MMM y","LLLL y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afj=new A.ai(B.y,["d","EEE","EEEE","LLL","LLLL","L","MM-dd","MM-dd, EEE","LLL","MMM d","EEE, MMM d","LLLL","MMMM d","EEEE, MMMM d","QQQ","QQQQ","y","y-MM","y-MM-dd","y-MM-dd, EEE","y MMM","y MMM d","y MMM d, EEE","y MMMM","\u062f y \u062f MMMM d","EEEE \u062f y \u062f MMMM d","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH (z)","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afW=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, dd/MM","LLL","d 'de' MMM","EEE, d 'de' MMM","LLLL","d 'de' MMMM","EEEE, d 'de' MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE, dd/MM/y","MMM 'de' y","d 'de' MMM 'de' y","EEE, d 'de' MMM 'de' y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQ 'de' y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afs=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd/MM","EEE, dd/MM","LLL","d/MM","EEE, d/MM","LLLL","d 'de' MMMM","cccc, d 'de' MMMM","QQQ","QQQQ","y","MM/y","dd/MM/y","EEE, dd/MM/y","MM/y","d/MM/y","EEE, d/MM/y","MMMM 'de' y","d 'de' MMMM 'de' y","EEEE, d 'de' MMMM 'de' y","QQQQ 'de' y","QQQQ 'de' y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af4=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd.MM","EEE, dd.MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM.y","dd.MM.y","EEE, dd.MM.y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag0=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd.MM","EEE, dd.MM","LLL","d MMM","ccc, d MMM","LLLL","d MMMM","cccc, d MMMM","QQQ","QQQQ","y","MM.y","dd.MM.y","ccc, dd.MM.y '\u0433'.","LLL y '\u0433'.","d MMM y '\u0433'.","EEE, d MMM y '\u0433'.","LLLL y '\u0433'.","d MMMM y '\u0433'.","EEEE, d MMMM y '\u0433'.","QQQ y '\u0433'.","QQQQ y '\u0433'.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afx=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","M-d","M-d, EEE","LLL","MMM d","MMM d EEE","LLLL","MMMM d","MMMM d EEEE","QQQ","QQQQ","y","y-M","y-M-d","y-M-d, EEE","y MMM","y MMM d","y MMM d, EEE","y MMMM","y MMMM d","y MMMM d, EEEE","y QQQ","y QQQQ","HH","HH.mm","HH.mm.ss","HH","HH.mm","HH.mm.ss","HH.mm v","HH.mm z","HH z","m","mm.ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af3=new A.ai(B.y,["d.","ccc","cccc","LLL","LLLL","L.","d. M.","EEE d. M.","LLL","d. M.","EEE d. M.","LLLL","d. MMMM","EEEE d. MMMM","QQQ","QQQQ","y","M/y","d. M. y","EEE d. M. y","M/y","d. M. y","EEE d. M. y","LLLL y","d. MMMM y","EEEE d. MMMM y","QQQ y","QQQQ y","H","H:mm","H:mm:ss","H","H:mm","H:mm:ss","H:mm v","H:mm z","H z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aeS=new A.ai(B.y,["d.","ccc","cccc","LLL","LLLL","L","d. M.","EEE, d. M.","LLL","d. MMM","EEE, d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y","M/y","d. M. y","EEE, d. M. y","MMM y","d. MMM y","EEE, d. MMM y","MMMM y","d. MMMM y","EEEE, d. MMMM y","QQQ y","QQQQ y","HH'h'","HH:mm","HH:mm:ss","HH'h'","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH'h' z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af9=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d.M","EEE, d.M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M.y","d.M.y","EEE, d.M.y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","QQQ, y","QQQQ, y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a, v","h:mm a, z","h a, z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.IT=new A.ai(B.y,["d","EEE","EEEE","LLL","LLLL","L","d.M.","EEE, d.M.","LLL","d. MMM","EEE d. MMM","LLLL","d. MMMM","EEEE, d. MMMM","QQQ","QQQQ","y.","M.y.","d.M.y.","EEE, d.M.y.","MMM y.","d. MMM y.","EEE, d. MMM y.","MMMM y.","d. MMMM y.","EEEE, d. MMMM y.","QQQ y.","QQQQ y.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af0=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE d/M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE d MMMM","QQQ","QQQQ","y","y-MM","y-MM-dd","EEE, y-MM-dd","MMM y","d MMM y","EEE d MMM y","MMMM y","d MMMM y","EEEE d MMMM y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afN=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE, d/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM y","EEE, d MMM y","MMMM y","d MMMM y","EEEE, d MMMM y","y QQQ","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag9=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","dd-MM, EEE","LLL","MMM d","MMM d, EEE","LLLL","d MMMM","MMMM d, EEEE","QQQ","QQQQ","y","M/y","d/M/y","EEE, d/M/y","MMM y","d MMM, y","EEE, d MMM, y","MMMM y","d MMMM, y","EEEE, d MMMM, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","a h","a h:mm","a h:mm:ss","a h:mm v","a h:mm z","a h z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afO=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","d/M, EEE","LLL","d MMM","d MMM, EEE","LLLL","d MMMM","d MMMM, EEEE","QQQ","QQQQ","y","M/y","d/M/y","d/M/y, EEE","MMM y","d, MMM y","d MMM, y, EEE","MMMM y","d MMMM, y","d, MMMM y, EEEE","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aeT=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE d/M","LLL","d MMM","EEE d MMM","LLLL","d MMMM","EEEE\u0e17\u0e35\u0e48 d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE d/M/y","MMM y","d MMM y","EEE d MMM y","MMMM G y","d MMMM G y","EEEE\u0e17\u0e35\u0e48 d MMMM G y","QQQ y","QQQQ G y","HH","HH:mm \u0e19.","HH:mm:ss","HH","HH:mm \u0e19.","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afJ=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","d/MM EEE","LLL","d MMM","d MMMM EEE","LLLL","d MMMM","d MMMM EEEE","QQQ","QQQQ","y","MM/y","dd.MM.y","d.M.y EEE","MMM y","d MMM y","d MMM y EEE","MMMM y","d MMMM y","d MMMM y EEEE","y QQQ","y QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag_=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","LL","dd.MM","EEE, dd.MM","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","MM.y","dd.MM.y","EEE, dd.MM.y","LLL y '\u0440'.","d MMM y '\u0440'.","EEE, d MMM y '\u0440'.","LLLL y '\u0440'.","d MMMM y '\u0440'.","EEEE, d MMMM y '\u0440'.","QQQ y","QQQQ y '\u0440'.","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.agc=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","d/M","EEE\u060c d/M","LLL","d MMM","EEE\u060c d MMM","LLLL","d MMMM","EEEE\u060c d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE\u060c d/M/y","MMM y","d MMM\u060c y","EEE\u060c d MMM\u060c y","MMMM y","d MMMM\u060c y","EEEE\u060c d MMMM\u060c y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","h a","h:mm a","h:mm:ss a","h:mm a v","h:mm a z","h a z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.aeV=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","LL","dd/MM","EEE, dd/MM","LLL","d-MMM","EEE, d-MMM","LLLL","d-MMMM","EEEE, d-MMMM","QQQ","QQQQ","y","MM.y","dd/MM/y","EEE, dd/MM/y","MMM, y","d-MMM, y","EEE, d-MMM, y","MMMM, y","d-MMMM, y","EEEE, d-MMMM, y","y, QQQ","y, QQQQ","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm (v)","HH:mm (z)","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.af7=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","dd/M","EEE, dd/M","LLL","d MMM","EEE, d MMM","LLLL","d MMMM","EEEE, d MMMM","QQQ","QQQQ","y","M/y","d/M/y","EEE, dd/M/y","MMM y","d MMM, y","EEE, d MMM, y","MMMM 'n\u0103m' y","d MMMM, y","EEEE, d MMMM, y","QQQ y","QQQQ 'n\u0103m' y","HH","H:mm","HH:mm:ss","HH","H:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afa=new A.ai(B.y,["d\u65e5","ccc","cccc","LLL","LLLL","M\u6708","M/d","M/dEEE","LLL","M\u6708d\u65e5","M\u6708d\u65e5EEE","LLLL","M\u6708d\u65e5","M\u6708d\u65e5EEEE","QQQ","QQQQ","y\u5e74","y\u5e74M\u6708","y/M/d","y/M/dEEE","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5EEE","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5EEEE","y\u5e74\u7b2cQ\u5b63\u5ea6","y\u5e74\u7b2cQ\u5b63\u5ea6","H\u65f6","HH:mm","HH:mm:ss","H\u65f6","HH:mm","HH:mm:ss","v HH:mm","z HH:mm","zH\u65f6","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afq=new A.ai(B.y,["d\u65e5","ccc","cccc","LLL","LLLL","M\u6708","d/M","d/M\uff08EEE\uff09","LLL","M\u6708d\u65e5","M\u6708d\u65e5EEE","LLLL","M\u6708d\u65e5","M\u6708d\u65e5EEEE","QQQ","QQQQ","y\u5e74","M/y","d/M/y","d/M/y\uff08EEE\uff09","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5EEE","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5EEEE","y\u5e74QQQ","y\u5e74QQQQ","H\u6642","HH:mm","HH:mm:ss","ah\u6642","ah:mm","ah:mm:ss","ah:mm [v]","ah:mm [z]","ah\u6642 z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.ag4=new A.ai(B.y,["d\u65e5","ccc","cccc","LLL","LLLL","M\u6708","M/d","M/d\uff08EEE\uff09","LLL","M\u6708d\u65e5","M\u6708d\u65e5 EEE","LLLL","M\u6708d\u65e5","M\u6708d\u65e5 EEEE","QQQ","QQQQ","y\u5e74","y/M","y/M/d","y/M/d\uff08EEE\uff09","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5 EEE","y\u5e74M\u6708","y\u5e74M\u6708d\u65e5","y\u5e74M\u6708d\u65e5 EEEE","y\u5e74QQQ","y\u5e74QQQQ","H\u6642","HH:mm","HH:mm:ss","ah\u6642","ah:mm","ah:mm:ss","ah:mm [v]","ah:mm [z]","ah\u6642 z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.afg=new A.ai(B.y,["d","ccc","cccc","LLL","LLLL","L","MM-dd","MM-dd, EEE","LLL","MMM d","EEE, MMM d","LLLL","MMMM d","EEEE, MMMM d","QQQ","QQQQ","y","y-MM","y-MM-dd","y-MM-dd, EEE","MMM y","MMM d, y","EEE, MMM d, y","MMMM y","MMMM d, y","EEEE, MMMM d, y","QQQ y","QQQQ y","HH","HH:mm","HH:mm:ss","HH","HH:mm","HH:mm:ss","HH:mm v","HH:mm z","HH z","m","mm:ss","s","v","z","zzzz","ZZZZ"],t.w) +B.agB=new A.ai(B.aiI,[B.afv,B.af5,B.afm,B.af8,B.afe,B.aeW,B.afo,B.afP,B.afl,B.afk,B.afy,B.afL,B.af2,B.IU,B.IU,B.afd,B.jA,B.afQ,B.afG,B.afb,B.aeQ,B.aga,B.afc,B.afw,B.jA,B.afh,B.aft,B.afH,B.afF,B.afD,B.afp,B.afS,B.af1,B.ag8,B.jA,B.afR,B.aeX,B.afA,B.ag6,B.afY,B.ag5,B.agb,B.ag2,B.afr,B.ag3,B.aeU,B.afV,B.afT,B.afI,B.afi,B.aeY,B.aff,B.afn,B.aeZ,B.afM,B.af6,B.afu,B.ag7,B.afE,B.af_,B.afK,B.afz,B.aeR,B.afZ,B.IV,B.afU,B.ag1,B.IV,B.jA,B.afC,B.afB,B.afj,B.afW,B.afs,B.af4,B.ag0,B.afx,B.af3,B.aeS,B.af9,B.IT,B.IT,B.af0,B.afN,B.ag9,B.afO,B.aeT,B.jA,B.afJ,B.ag_,B.agc,B.aeV,B.af7,B.afa,B.afq,B.ag4,B.afg],A.ar("ai>")) +B.amL=new A.b1(B.bE,!1,!1,!1,!1,B.D) +B.amM=new A.b1(B.bE,!1,!0,!1,!1,B.D) +B.amT=new A.b1(B.bF,!1,!1,!1,!1,B.D) +B.amU=new A.b1(B.bF,!1,!0,!1,!1,B.D) +B.amN=new A.b1(B.bE,!1,!0,!0,!1,B.D) +B.amO=new A.b1(B.bE,!1,!1,!0,!1,B.D) +B.amV=new A.b1(B.bF,!1,!0,!0,!1,B.D) +B.amW=new A.b1(B.bF,!1,!1,!0,!1,B.D) +B.J2=new A.cR([B.amL,B.J,B.amM,B.J,B.amT,B.J,B.amU,B.J,B.amN,B.J,B.amO,B.J,B.amV,B.J,B.amW,B.J],t.Fp) +B.tk=new A.fr(1,"close") +B.tp=new A.fr(2,"moveToAbs") +B.tq=new A.fr(3,"moveToRel") +B.OW=new A.fr(4,"lineToAbs") +B.OX=new A.fr(5,"lineToRel") +B.tr=new A.fr(6,"cubicToAbs") +B.ts=new A.fr(7,"cubicToRel") +B.tt=new A.fr(8,"quadToAbs") +B.tu=new A.fr(9,"quadToRel") +B.aoP=new A.fr(10,"arcToAbs") +B.aoQ=new A.fr(11,"arcToRel") +B.aoR=new A.fr(12,"lineToHorizontalAbs") +B.aoS=new A.fr(13,"lineToHorizontalRel") +B.aoT=new A.fr(14,"lineToVerticalAbs") +B.aoU=new A.fr(15,"lineToVerticalRel") +B.tl=new A.fr(16,"smoothCubicToAbs") +B.tm=new A.fr(17,"smoothCubicToRel") +B.tn=new A.fr(18,"smoothQuadToAbs") +B.to=new A.fr(19,"smoothQuadToRel") +B.agC=new A.cR([90,B.tk,122,B.tk,77,B.tp,109,B.tq,76,B.OW,108,B.OX,67,B.tr,99,B.ts,81,B.tt,113,B.tu,65,B.aoP,97,B.aoQ,72,B.aoR,104,B.aoS,86,B.aoT,118,B.aoU,83,B.tl,115,B.tm,84,B.tn,116,B.to],A.ar("cR")) +B.aip={aliceblue:0,antiquewhite:1,aqua:2,aquamarine:3,azure:4,beige:5,bisque:6,black:7,blanchedalmond:8,blue:9,blueviolet:10,brown:11,burlywood:12,cadetblue:13,chartreuse:14,chocolate:15,coral:16,cornflowerblue:17,cornsilk:18,crimson:19,cyan:20,darkblue:21,darkcyan:22,darkgoldenrod:23,darkgray:24,darkgreen:25,darkgrey:26,darkkhaki:27,darkmagenta:28,darkolivegreen:29,darkorange:30,darkorchid:31,darkred:32,darksalmon:33,darkseagreen:34,darkslateblue:35,darkslategray:36,darkslategrey:37,darkturquoise:38,darkviolet:39,deeppink:40,deepskyblue:41,dimgray:42,dimgrey:43,dodgerblue:44,firebrick:45,floralwhite:46,forestgreen:47,fuchsia:48,gainsboro:49,ghostwhite:50,gold:51,goldenrod:52,gray:53,grey:54,green:55,greenyellow:56,honeydew:57,hotpink:58,indianred:59,indigo:60,ivory:61,khaki:62,lavender:63,lavenderblush:64,lawngreen:65,lemonchiffon:66,lightblue:67,lightcoral:68,lightcyan:69,lightgoldenrodyellow:70,lightgray:71,lightgreen:72,lightgrey:73,lightpink:74,lightsalmon:75,lightseagreen:76,lightskyblue:77,lightslategray:78,lightslategrey:79,lightsteelblue:80,lightyellow:81,lime:82,limegreen:83,linen:84,magenta:85,maroon:86,mediumaquamarine:87,mediumblue:88,mediumorchid:89,mediumpurple:90,mediumseagreen:91,mediumslateblue:92,mediumspringgreen:93,mediumturquoise:94,mediumvioletred:95,midnightblue:96,mintcream:97,mistyrose:98,moccasin:99,navajowhite:100,navy:101,oldlace:102,olive:103,olivedrab:104,orange:105,orangered:106,orchid:107,palegoldenrod:108,palegreen:109,paleturquoise:110,palevioletred:111,papayawhip:112,peachpuff:113,peru:114,pink:115,plum:116,powderblue:117,purple:118,red:119,rosybrown:120,royalblue:121,saddlebrown:122,salmon:123,sandybrown:124,seagreen:125,seashell:126,sienna:127,silver:128,skyblue:129,slateblue:130,slategray:131,slategrey:132,snow:133,springgreen:134,steelblue:135,tan:136,teal:137,thistle:138,tomato:139,transparent:140,turquoise:141,violet:142,wheat:143,white:144,whitesmoke:145,yellow:146,yellowgreen:147} +B.WM=new A.an(4293982463) +B.X5=new A.an(4294634455) +B.vr=new A.an(4278255615) +B.VA=new A.an(4286578644) +B.WO=new A.an(4293984255) +B.WZ=new A.an(4294309340) +B.XA=new A.an(4294960324) +B.XD=new A.an(4294962125) +B.Uv=new A.an(4278190335) +B.VJ=new A.an(4287245282) +B.VY=new A.an(4289014314) +B.Wu=new A.an(4292786311) +B.Vk=new A.an(4284456608) +B.Vz=new A.an(4286578432) +B.Wl=new A.an(4291979550) +B.Xj=new A.an(4294934352) +B.Vn=new A.an(4284782061) +B.XL=new A.an(4294965468) +B.Wr=new A.an(4292613180) +B.Ut=new A.an(4278190219) +B.Uz=new A.an(4278225803) +B.W8=new A.an(4290283019) +B.vN=new A.an(4289309097) +B.Uw=new A.an(4278215680) +B.Wb=new A.an(4290623339) +B.VL=new A.an(4287299723) +B.Vj=new A.an(4283788079) +B.Xk=new A.an(4294937600) +B.VV=new A.an(4288230092) +B.VK=new A.an(4287299584) +B.WD=new A.an(4293498490) +B.VP=new A.an(4287609999) +B.Ve=new A.an(4282924427) +B.vx=new A.an(4281290575) +B.UC=new A.an(4278243025) +B.VT=new A.an(4287889619) +B.Xe=new A.an(4294907027) +B.UA=new A.an(4278239231) +B.vF=new A.an(4285098345) +B.UP=new A.an(4280193279) +B.W5=new A.an(4289864226) +B.XO=new A.an(4294966e3) +B.UT=new A.an(4280453922) +B.vW=new A.an(4294902015) +B.Ws=new A.an(4292664540) +B.X2=new A.an(4294506751) +B.Xv=new A.an(4294956800) +B.Wp=new A.an(4292519200) +B.vK=new A.an(4286611584) +B.Ux=new A.an(4278222848) +B.W1=new A.an(4289593135) +B.WN=new A.an(4293984240) +B.Xi=new A.an(4294928820) +B.Wi=new A.an(4291648604) +B.Vh=new A.an(4283105410) +B.XT=new A.an(4294967280) +B.WL=new A.an(4293977740) +B.WA=new A.an(4293322490) +B.XH=new A.an(4294963445) +B.Vx=new A.an(4286381056) +B.XN=new A.an(4294965965) +B.W0=new A.an(4289583334) +B.WK=new A.an(4293951616) +B.Ww=new A.an(4292935679) +B.X7=new A.an(4294638290) +B.vS=new A.an(4292072403) +B.VQ=new A.an(4287688336) +B.Xq=new A.an(4294948545) +B.Xm=new A.an(4294942842) +B.UR=new A.an(4280332970) +B.VI=new A.an(4287090426) +B.vI=new A.an(4286023833) +B.W3=new A.an(4289774814) +B.XS=new A.an(4294967264) +B.UE=new A.an(4278255360) +B.V_=new A.an(4281519410) +B.X6=new A.an(4294635750) +B.VB=new A.an(4286578688) +B.Vr=new A.an(4284927402) +B.Uu=new A.an(4278190285) +B.W9=new A.an(4290401747) +B.VR=new A.an(4287852763) +B.V6=new A.an(4282168177) +B.Vw=new A.an(4286277870) +B.UD=new A.an(4278254234) +B.Vf=new A.an(4282962380) +B.Wf=new A.an(4291237253) +B.UL=new A.an(4279834992) +B.X0=new A.an(4294311930) +B.XB=new A.an(4294960353) +B.Xz=new A.an(4294960309) +B.Xx=new A.an(4294958765) +B.Us=new A.an(4278190208) +B.Xb=new A.an(4294833638) +B.VD=new A.an(4286611456) +B.Vt=new A.an(4285238819) +B.Xo=new A.an(4294944e3) +B.Xg=new A.an(4294919424) +B.Wo=new A.an(4292505814) +B.WG=new A.an(4293847210) +B.VU=new A.an(4288215960) +B.W2=new A.an(4289720046) +B.Wq=new A.an(4292571283) +B.XG=new A.an(4294963157) +B.Xw=new A.an(4294957753) +B.Wj=new A.an(4291659071) +B.Xs=new A.an(4294951115) +B.Wt=new A.an(4292714717) +B.W4=new A.an(4289781990) +B.VC=new A.an(4286578816) +B.Xd=new A.an(4294901760) +B.Wa=new A.an(4290547599) +B.V9=new A.an(4282477025) +B.VM=new A.an(4287317267) +B.X4=new A.an(4294606962) +B.WT=new A.an(4294222944) +B.UZ=new A.an(4281240407) +B.XK=new A.an(4294964718) +B.VX=new A.an(4288696877) +B.Wd=new A.an(4290822336) +B.VH=new A.an(4287090411) +B.Vs=new A.an(4285160141) +B.vH=new A.an(4285563024) +B.XP=new A.an(4294966010) +B.UF=new A.an(4278255487) +B.Vd=new A.an(4282811060) +B.Wm=new A.an(4291998860) +B.Uy=new A.an(4278222976) +B.Wn=new A.an(4292394968) +B.Xh=new A.an(4294927175) +B.Ul=new A.an(16777215) +B.V7=new A.an(4282441936) +B.WF=new A.an(4293821166) +B.WX=new A.an(4294303411) +B.X_=new A.an(4294309365) +B.XQ=new A.an(4294967040) +B.VW=new A.an(4288335154) +B.agD=new A.ai(B.aip,[B.WM,B.X5,B.vr,B.VA,B.WO,B.WZ,B.XA,B.eK,B.XD,B.Uv,B.VJ,B.VY,B.Wu,B.Vk,B.Vz,B.Wl,B.Xj,B.Vn,B.XL,B.Wr,B.vr,B.Ut,B.Uz,B.W8,B.vN,B.Uw,B.vN,B.Wb,B.VL,B.Vj,B.Xk,B.VV,B.VK,B.WD,B.VP,B.Ve,B.vx,B.vx,B.UC,B.VT,B.Xe,B.UA,B.vF,B.vF,B.UP,B.W5,B.XO,B.UT,B.vW,B.Ws,B.X2,B.Xv,B.Wp,B.vK,B.vK,B.Ux,B.W1,B.WN,B.Xi,B.Wi,B.Vh,B.XT,B.WL,B.WA,B.XH,B.Vx,B.XN,B.W0,B.WK,B.Ww,B.X7,B.vS,B.VQ,B.vS,B.Xq,B.Xm,B.UR,B.VI,B.vI,B.vI,B.W3,B.XS,B.UE,B.V_,B.X6,B.vW,B.VB,B.Vr,B.Uu,B.W9,B.VR,B.V6,B.Vw,B.UD,B.Vf,B.Wf,B.UL,B.X0,B.XB,B.Xz,B.Xx,B.Us,B.Xb,B.VD,B.Vt,B.Xo,B.Xg,B.Wo,B.WG,B.VU,B.W2,B.Wq,B.XG,B.Xw,B.Wj,B.Xs,B.Wt,B.W4,B.VC,B.Xd,B.Wa,B.V9,B.VM,B.X4,B.WT,B.UZ,B.XK,B.VX,B.Wd,B.VH,B.Vs,B.vH,B.vH,B.XP,B.UF,B.Vd,B.Wm,B.Uy,B.Wn,B.Xh,B.Ul,B.V7,B.WF,B.WX,B.p8,B.X_,B.XQ,B.VW],A.ar("ai")) +B.aiG={type:0} +B.agE=new A.ai(B.aiG,["line"],t.w) +B.aiz={Abort:0,Again:1,AltLeft:2,AltRight:3,ArrowDown:4,ArrowLeft:5,ArrowRight:6,ArrowUp:7,AudioVolumeDown:8,AudioVolumeMute:9,AudioVolumeUp:10,Backquote:11,Backslash:12,Backspace:13,BracketLeft:14,BracketRight:15,BrightnessDown:16,BrightnessUp:17,BrowserBack:18,BrowserFavorites:19,BrowserForward:20,BrowserHome:21,BrowserRefresh:22,BrowserSearch:23,BrowserStop:24,CapsLock:25,Comma:26,ContextMenu:27,ControlLeft:28,ControlRight:29,Convert:30,Copy:31,Cut:32,Delete:33,Digit0:34,Digit1:35,Digit2:36,Digit3:37,Digit4:38,Digit5:39,Digit6:40,Digit7:41,Digit8:42,Digit9:43,DisplayToggleIntExt:44,Eject:45,End:46,Enter:47,Equal:48,Escape:49,Esc:50,F1:51,F10:52,F11:53,F12:54,F13:55,F14:56,F15:57,F16:58,F17:59,F18:60,F19:61,F2:62,F20:63,F21:64,F22:65,F23:66,F24:67,F3:68,F4:69,F5:70,F6:71,F7:72,F8:73,F9:74,Find:75,Fn:76,FnLock:77,GameButton1:78,GameButton10:79,GameButton11:80,GameButton12:81,GameButton13:82,GameButton14:83,GameButton15:84,GameButton16:85,GameButton2:86,GameButton3:87,GameButton4:88,GameButton5:89,GameButton6:90,GameButton7:91,GameButton8:92,GameButton9:93,GameButtonA:94,GameButtonB:95,GameButtonC:96,GameButtonLeft1:97,GameButtonLeft2:98,GameButtonMode:99,GameButtonRight1:100,GameButtonRight2:101,GameButtonSelect:102,GameButtonStart:103,GameButtonThumbLeft:104,GameButtonThumbRight:105,GameButtonX:106,GameButtonY:107,GameButtonZ:108,Help:109,Home:110,Hyper:111,Insert:112,IntlBackslash:113,IntlRo:114,IntlYen:115,KanaMode:116,KeyA:117,KeyB:118,KeyC:119,KeyD:120,KeyE:121,KeyF:122,KeyG:123,KeyH:124,KeyI:125,KeyJ:126,KeyK:127,KeyL:128,KeyM:129,KeyN:130,KeyO:131,KeyP:132,KeyQ:133,KeyR:134,KeyS:135,KeyT:136,KeyU:137,KeyV:138,KeyW:139,KeyX:140,KeyY:141,KeyZ:142,KeyboardLayoutSelect:143,Lang1:144,Lang2:145,Lang3:146,Lang4:147,Lang5:148,LaunchApp1:149,LaunchApp2:150,LaunchAssistant:151,LaunchControlPanel:152,LaunchMail:153,LaunchScreenSaver:154,MailForward:155,MailReply:156,MailSend:157,MediaFastForward:158,MediaPause:159,MediaPlay:160,MediaPlayPause:161,MediaRecord:162,MediaRewind:163,MediaSelect:164,MediaStop:165,MediaTrackNext:166,MediaTrackPrevious:167,MetaLeft:168,MetaRight:169,MicrophoneMuteToggle:170,Minus:171,NonConvert:172,NumLock:173,Numpad0:174,Numpad1:175,Numpad2:176,Numpad3:177,Numpad4:178,Numpad5:179,Numpad6:180,Numpad7:181,Numpad8:182,Numpad9:183,NumpadAdd:184,NumpadBackspace:185,NumpadClear:186,NumpadClearEntry:187,NumpadComma:188,NumpadDecimal:189,NumpadDivide:190,NumpadEnter:191,NumpadEqual:192,NumpadMemoryAdd:193,NumpadMemoryClear:194,NumpadMemoryRecall:195,NumpadMemoryStore:196,NumpadMemorySubtract:197,NumpadMultiply:198,NumpadParenLeft:199,NumpadParenRight:200,NumpadSubtract:201,Open:202,PageDown:203,PageUp:204,Paste:205,Pause:206,Period:207,Power:208,PrintScreen:209,PrivacyScreenToggle:210,Props:211,Quote:212,Resume:213,ScrollLock:214,Select:215,SelectTask:216,Semicolon:217,ShiftLeft:218,ShiftRight:219,ShowAllWindows:220,Slash:221,Sleep:222,Space:223,Super:224,Suspend:225,Tab:226,Turbo:227,Undo:228,WakeUp:229,ZoomToggle:230} +B.J4=new A.ai(B.aiz,[B.Mf,B.LW,B.hV,B.hX,B.Ll,B.Lk,B.Lj,B.Lm,B.M3,B.M1,B.M2,B.KW,B.KT,B.KM,B.KR,B.KS,B.Mv,B.Mu,B.MQ,B.MU,B.MR,B.MP,B.MT,B.MO,B.MS,B.fm,B.KX,B.LE,B.hT,B.jH,B.M8,B.LZ,B.LY,B.Lg,B.KK,B.KB,B.KC,B.KD,B.KE,B.KF,B.KG,B.KH,B.KI,B.KJ,B.Mt,B.ME,B.Lh,B.KL,B.KQ,B.rm,B.rm,B.L_,B.L8,B.L9,B.La,B.LH,B.LI,B.LJ,B.LK,B.LL,B.LM,B.LN,B.L0,B.LO,B.LP,B.LQ,B.LR,B.LS,B.L1,B.L2,B.L3,B.L4,B.L5,B.L6,B.L7,B.M0,B.jG,B.JB,B.JH,B.JQ,B.JR,B.JS,B.JT,B.JU,B.JV,B.JW,B.JI,B.JJ,B.JK,B.JL,B.JM,B.JN,B.JO,B.JP,B.JX,B.JY,B.JZ,B.K_,B.K0,B.K1,B.K2,B.K3,B.K4,B.K5,B.K6,B.K7,B.K8,B.K9,B.Ka,B.LU,B.Le,B.Jz,B.Ld,B.LD,B.M5,B.M7,B.M6,B.Kb,B.Kc,B.Kd,B.Ke,B.Kf,B.Kg,B.Kh,B.Ki,B.Kj,B.Kk,B.Kl,B.Km,B.Kn,B.Ko,B.Kp,B.Kq,B.Kr,B.Ks,B.Kt,B.Ku,B.Kv,B.Kw,B.Kx,B.Ky,B.Kz,B.KA,B.MZ,B.Ma,B.Mb,B.Mc,B.Md,B.Me,B.MJ,B.MI,B.MN,B.MK,B.MH,B.MM,B.MX,B.MW,B.MY,B.Mz,B.Mx,B.Mw,B.MF,B.My,B.MA,B.MG,B.MD,B.MB,B.MC,B.hW,B.jJ,B.JG,B.KP,B.M9,B.n9,B.LB,B.Ls,B.Lt,B.Lu,B.Lv,B.Lw,B.Lx,B.Ly,B.Lz,B.LA,B.Lq,B.Mj,B.Mp,B.Mq,B.M4,B.LC,B.Ln,B.Lr,B.LG,B.Mn,B.Mm,B.Ml,B.Mk,B.Mo,B.Lo,B.Mh,B.Mi,B.Lp,B.LT,B.Li,B.Lf,B.M_,B.Lc,B.KY,B.LF,B.Lb,B.JF,B.Mg,B.KV,B.JD,B.n8,B.LV,B.ML,B.KU,B.hU,B.jI,B.N_,B.KZ,B.Mr,B.KO,B.JA,B.JC,B.KN,B.JE,B.LX,B.Ms,B.MV],A.ar("ai")) +B.aix={matrix:0,translate:1,scale:2,rotate:3,skewX:4,skewY:5} +B.agF=new A.ai(B.aix,[A.bWZ(),A.bX3(),A.bX0(),A.bX_(),A.bX1(),A.bX2()],A.ar("ai,mw)>")) +B.VF=new A.A(4286755327) +B.Vc=new A.A(4282682111) +B.UW=new A.A(4280908287) +B.UV=new A.A(4280902399) +B.aeD=new A.cR([100,B.VF,200,B.Vc,400,B.UW,700,B.UV],t.pl) +B.aBq=new A.a22(B.aeD,4282682111) +B.agG=new A.KQ(null,null,null,null,null,null,null,null) +B.XM=new A.A(4294965700) +B.XI=new A.A(4294963574) +B.XF=new A.A(4294962776) +B.XC=new A.A(4294961979) +B.Xa=new A.A(4294826037) +B.X9=new A.A(4294688813) +B.X3=new A.A(4294551589) +B.WW=new A.A(4294278935) +B.agv=new A.cR([50,B.vY,100,B.XM,200,B.vX,300,B.XI,400,B.XF,500,B.XC,600,B.Xa,700,B.X9,800,B.X3,900,B.WW],t.pl) +B.J5=new A.qk(B.agv,4294961979) +B.agH=new A.xA(0,"padded") +B.mP=new A.xA(1,"shrinkWrap") +B.bL=new A.xB(0,"canvas") +B.fg=new A.xB(1,"card") +B.qw=new A.xB(2,"circle") +B.qx=new A.xB(3,"button") +B.fh=new A.xB(4,"transparency") +B.agI=new A.L0(0,"none") +B.agJ=new A.L0(1,"enforced") +B.agK=new A.L0(2,"truncateAfterCompositionEnds") +B.agL=new A.a3Y(null) +B.agM=new A.L6(null) +B.aBr=new A.L7(48,null) +B.agN=new A.L7(48,B.bV) +B.agO=new A.L7(50,B.bV) +B.agP=new A.Ca(null) +B.agQ=new A.lT("popRoute",null) +B.qy=new A.n2("plugins.flutter.io/shared_preferences",B.bT) +B.agR=new A.n2("dev.fluttercommunity.plus/package_info",B.bT) +B.agS=new A.n2("flutter/service_worker",B.bT) +B.aBs=new A.n2("dev.fluttercommunity.plus/device_info",B.bT) +B.J6=new A.n2("plugins.flutter.io/path_provider",B.bT) +B.agT=new A.n2("com.snapmaker.lavaapp/mdns",B.bT) +B.agU=new A.kT(0,"xPositive") +B.agV=new A.kT(1,"xNegative") +B.agW=new A.kT(2,"yPositive") +B.agX=new A.kT(3,"yNegative") +B.qD=new A.kT(4,"zPositive") +B.qE=new A.kT(5,"zNegative") +B.qF=new A.kT(6,"xyHome") +B.J8=new A.kT(7,"xyzHome") +B.J9=new A.kT(8,"zHome") +B.hN=new A.qm(0,"connected") +B.qG=new A.qm(1,"disconnected") +B.ah_=new A.qm(2,"connecting") +B.Jb=new A.qm(3,"disconnecting") +B.Jc=new A.Lj(0,"subscribing") +B.qH=new A.Lj(1,"subscribed") +B.Jd=new A.Lj(2,"subscribedFailed") +B.qI=new A.Cf(1,"disconnected") +B.Je=new A.Cf(2,"connecting") +B.c7=new A.Cf(3,"connected") +B.ahm=new A.Cf(4,"faulted") +B.ahP=new A.Cg(0,"unsolicited") +B.ahQ=new A.Cg(1,"solicited") +B.ahR=new A.Cg(2,"brokerSolicited") +B.ahS=new A.Cg(3,"none") +B.b9=new A.xM(0,"atMostOnce") +B.cG=new A.xM(1,"atLeastOnce") +B.hP=new A.xM(2,"exactlyOnce") +B.ai1=new A.xM(3,"reserved1") +B.ai2=new A.xM(4,"failure") +B.ai3=new A.aJf(0,"sendRetained") +B.hQ=new A.a4O(0,"latestPointer") +B.r9=new A.a4O(1,"averageBoundaryPointers") +B.aih=new A.LB(null,null,null,null,null,null,null,null,null,null,null) +B.aii=new A.LC(null,null,null,null,null,null,null,null,null,null) +B.hR=new A.a4T(0,"traditional") +B.n4=new A.a4T(1,"directional") +B.aij=new A.u9(!0) +B.aik=new A.LD(null,null,null,null,null,null,null,null,null,null,null,null,null) +B.fi=new A.a4W(null) +B.Ji=new A.xQ(0,"success") +B.ail=new A.xQ(1,"failure") +B.Jj=new A.xQ(2,"warning") +B.Jk=new A.xQ(3,"error") +B.aim=new A.xQ(4,"alert") +B.Jm=new A.iw(B.j,B.j) +B.aiO=new A.z(0,20) +B.aiQ=new A.z(0,26) +B.aiS=new A.z(11,-4) +B.aiU=new A.z(1,3) +B.aiW=new A.z(22,0) +B.aiX=new A.z(3,0) +B.aiY=new A.z(3,-3) +B.aiZ=new A.z(1/0,1/0) +B.aj_=new A.z(6,6) +B.aV=new A.z(0,-0.005) +B.Jq=new A.z(9,9) +B.Jr=new A.z(7.2,12.6) +B.aj2=new A.z(14.4,9) +B.aj4=new A.z(5,10.5) +B.aj6=new A.z(17976931348623157e292,0) +B.aj8=new A.z(0,-0.25) +B.ajb=new A.z(15.299999999999999,4.5) +B.ajc=new A.z(2.6999999999999997,8.1) +B.ajd=new A.z(0,0.79) +B.aji=new A.z(-3,0) +B.ajj=new A.z(-3,3) +B.ajk=new A.z(-3,-3) +B.ajl=new A.z(-50,0) +B.ajm=new A.z(3.6,9) +B.ajo=new A.z(-0.3333333333333333,0) +B.ajp=new A.z(1/0,0) +B.bM=new A.qq(0,"iOs") +B.n6=new A.qq(1,"android") +B.rg=new A.qq(2,"linux") +B.Js=new A.qq(3,"windows") +B.dr=new A.qq(4,"macOs") +B.aju=new A.qq(5,"unknown") +B.kF=new A.aCY() +B.Jt=new A.l_("flutter/textinput",B.kF) +B.rh=new A.l_("flutter/navigation",B.kF) +B.ajv=new A.l_("flutter/processtext",B.bT) +B.ajw=new A.l_("flutter/mousecursor",B.bT) +B.bz=new A.l_("flutter/platform",B.kF) +B.ajx=new A.l_("flutter/keyboard",B.bT) +B.ri=new A.l_("flutter/restoration",B.bT) +B.Ju=new A.l_("flutter/menu",B.bT) +B.ajy=new A.l_("flutter/spellcheck",B.bT) +B.ajz=new A.l_("flutter/backgesture",B.bT) +B.ajA=new A.l_("flutter/undomanager",B.kF) +B.ajB=new A.oB(0,"unknown") +B.rj=new A.oB(1,"home") +B.Jv=new A.oB(2,"deviceControl") +B.ajC=new A.oB(3,"deviceControlOld") +B.ajD=new A.oB(4,"preUpload") +B.ajE=new A.oB(5,"preUploadAndPrint") +B.ajF=new A.oB(6,"testPrintUploadTask") +B.ajG=new A.oB(7,"testDownloadFile") +B.ajH=new A.aLX(3,"monitor") +B.ajI=new A.xR(0,null) +B.ajJ=new A.xR(1,null) +B.rk=new A.a5k(0,"portrait") +B.rl=new A.a5k(1,"landscape") +B.ajK=new A.LQ(null) +B.aBt=new A.a5p(0,"start") +B.ajL=new A.a5p(1,"end") +B.a2h=new A.fo("assets/images/deviceNotConnected.png",null,null,B.M,null,null) +B.n7=new A.be(B.Z,B.a2h,null) +B.Jw=new A.CG(null) +B.cm=new A.a5O(0,"fill") +B.ajM=new A.a5P(0,"fill") +B.aJ=new A.a5O(1,"stroke") +B.ajN=new A.a5P(1,"stroke") +B.Jx=new A.ug(1/0) +B.et=new A.CJ(0,"move") +B.cn=new A.CJ(1,"line") +B.ca=new A.CJ(2,"cubic") +B.d7=new A.a5V(0,"nonZero") +B.ajP=new A.a5V(1,"evenOdd") +B.co=new A.xY(0,"created") +B.bA=new A.xY(1,"active") +B.hS=new A.xY(2,"pendingRetention") +B.ajV=new A.xY(3,"pendingUpdate") +B.Jy=new A.xY(4,"released") +B.ajW=new A.Me(null) +B.N0=new A.ul(0,"baseline") +B.N1=new A.ul(1,"aboveBaseline") +B.N2=new A.ul(2,"belowBaseline") +B.N3=new A.ul(3,"top") +B.hY=new A.ul(4,"bottom") +B.N4=new A.ul(5,"middle") +B.akz=new A.CN(B.V,B.hY,null,null) +B.rn=new A.n9(0,"ZERO") +B.aF=new A.n9(1,"ONE") +B.fn=new A.n9(2,"TWO") +B.cp=new A.n9(3,"FEW") +B.cb=new A.n9(4,"MANY") +B.aD=new A.n9(5,"OTHER") +B.N6=new A.d3(0,0) +B.N7=new A.qw(0,"cancel") +B.ro=new A.qw(1,"add") +B.akA=new A.qw(2,"remove") +B.fo=new A.qw(3,"hover") +B.akB=new A.qw(4,"down") +B.na=new A.qw(5,"move") +B.N8=new A.qw(6,"up") +B.br=new A.oF(0,"touch") +B.cI=new A.oF(1,"mouse") +B.cq=new A.oF(2,"stylus") +B.eu=new A.oF(3,"invertedStylus") +B.cc=new A.oF(4,"trackpad") +B.ds=new A.oF(5,"unknown") +B.nb=new A.CQ(0,"none") +B.akC=new A.CQ(1,"scroll") +B.akD=new A.CQ(3,"scale") +B.akE=new A.CQ(4,"unknown") +B.akF=new A.Mg(null,null,null,null,null,null,null,null,null,null,null,null,null) +B.N9=new A.a6a(0,"auto") +B.akG=new A.a6a(1,"top") +B.a2c=new A.fo("assets/svgs/device/extruderBackground.svg",null,null,B.os,null,null) +B.akH=new A.up(0,0,0,0,null,null,B.a2c,null) +B.Na=new A.l5(0,"incrementable") +B.rp=new A.l5(1,"scrollable") +B.rq=new A.l5(10,"link") +B.rr=new A.l5(2,"button") +B.Nb=new A.l5(3,"textField") +B.rs=new A.l5(4,"checkable") +B.Nc=new A.l5(5,"heading") +B.Nd=new A.l5(6,"image") +B.nc=new A.l5(7,"dialog") +B.rt=new A.l5(8,"platformView") +B.ru=new A.l5(9,"generic") +B.Ne=new A.CU(0,"start") +B.akI=new A.CU(1,"pause") +B.akJ=new A.CU(2,"resume") +B.akK=new A.CU(3,"cancel") +B.rv=new A.oH(0,"unknown") +B.akM=new A.oH(1,"ready") +B.akN=new A.oH(2,"standby") +B.akO=new A.oH(3,"printing") +B.Nf=new A.oH(4,"paused") +B.akP=new A.oH(5,"cancelled") +B.akQ=new A.oH(6,"error") +B.akR=new A.oH(7,"completed") +B.aBu=new A.aNf(0,"humanReadable") +B.akS=new A.Mn(null) +B.akT=new A.CX(null,null,null,null,null) +B.akU=new A.Mr(null,null,null,null,null,null) +B.Ng=new A.bg(1,1) +B.akV=new A.bg(1/0,1/0) +B.akW=new A.bg(1.5,1.5) +B.akX=new A.bg(-1/0,-1/0) +B.akY=new A.ke(0) +B.akZ=new A.ke(1) +B.Nj=new A.ke(2) +B.al_=new A.b3(0,0) +B.al0=new A.b3(0,!0) +B.Nk=new A.b3(!1,"jsonrpc is not 2.0") +B.jV=new A.eI(32,"scrollDown") +B.jU=new A.eI(16,"scrollUp") +B.al1=new A.b3(B.jV,B.jU) +B.jX=new A.eI(8,"scrollRight") +B.jW=new A.eI(4,"scrollLeft") +B.al2=new A.b3(B.jX,B.jW) +B.al3=new A.b3(!1,!1) +B.al4=new A.b3(!1,null) +B.al5=new A.b3(!1,!0) +B.al6=new A.b3(B.jU,B.jV) +B.u1=new A.eV('"',1,"DOUBLE_QUOTE") +B.al7=new A.b3("",B.u1) +B.al8=new A.b3(B.jW,B.jX) +B.Nl=new A.b3(null,null) +B.al9=new A.b3(!0,!1) +B.Nm=new A.b3(!0,null) +B.ala=new A.b3(!0,!0) +B.Nn=new A.SH(0,0,1) +B.alb=new A.kf(0,0,0,0) +B.alc=new A.I(-1/0,-1/0,1/0,1/0) +B.jL=new A.I(-1e9,-1e9,1e9,1e9) +B.ald=new A.kf(-1e9,-1e9,1e9,1e9) +B.aBv=new A.aNY(1,"onEdge") +B.No=new A.D4(0,"start") +B.rx=new A.D4(1,"stable") +B.ale=new A.D4(2,"changed") +B.alf=new A.D4(3,"unstable") +B.dX=new A.MI(0,"identical") +B.alg=new A.MI(2,"paint") +B.cd=new A.MI(3,"layout") +B.alh=new A.a7c(0,"raster") +B.ali=new A.a7c(1,"picture") +B.fq=new A.Db(0,"json") +B.ry=new A.Db(1,"stream") +B.alj=new A.Db(2,"plain") +B.nh=new A.Db(3,"bytes") +B.jM=new A.nf(0,0,0,0) +B.Np=new A.yk(null) +B.alk=new A.a7s(10) +B.hZ=new A.bg(28,28) +B.Rp=new A.cY(B.hZ,B.hZ,B.B,B.B) +B.aln=new A.cu(B.Rp,B.x) +B.rz=new A.cu(B.oq,B.x) +B.Nq=new A.cu(B.dF,B.x) +B.Rq=new A.cY(B.ev,B.ev,B.ev,B.ev) +B.all=new A.cu(B.Rq,B.x) +B.Rr=new A.cY(B.hZ,B.hZ,B.hZ,B.hZ) +B.alm=new A.cu(B.Rr,B.x) +B.Nr=new A.aPt(0,"none") +B.jO=new A.De(0,"pop") +B.i0=new A.De(1,"doNotPop") +B.Ns=new A.De(2,"bubble") +B.alo=new A.lZ("/flushbarRoute",null) +B.i1=new A.lZ(null,null) +B.r=new A.aVz(1,"down") +B.t6=new A.aB(32,null,null,null) +B.a29=new A.fo("assets/svgs/device/deviceControl.svg",20,20,B.M,null,null) +B.a7b=A.a(s([B.t6,B.a29]),t.p) +B.alp=new A.qO(B.aN,B.o,B.k,B.l,null,B.r,null,B.a7b,null) +B.a28=new A.it("assets/svgs/recentDocuments.svg",20,20,B.M,null) +B.a3n=A.a(s([B.t6,B.a28]),t.p) +B.Nt=new A.qO(B.aN,B.o,B.k,B.l,null,B.r,null,B.a3n,null) +B.a25=new A.it("assets/svgs/myDevice.svg",20,20,B.M,null) +B.aaQ=A.a(s([B.t6,B.a25]),t.p) +B.Nu=new A.qO(B.aN,B.o,B.k,B.l,null,B.r,null,B.aaQ,null) +B.jP=new A.yn(0,"get") +B.cJ=new A.yn(1,"post") +B.Nv=new A.yn(2,"put") +B.Nw=new A.yn(3,"download") +B.Nx=new A.yn(4,"delete") +B.alq=new A.Ng(1333) +B.rA=new A.Ng(2222) +B.alr=new A.Nj(null,null) +B.fr=new A.yp(0,"idle") +B.Ny=new A.yp(1,"transientCallbacks") +B.Nz=new A.yp(2,"midFrameMicrotasks") +B.i2=new A.yp(3,"persistentCallbacks") +B.rB=new A.yp(4,"postFrameCallbacks") +B.P=new A.No(0,"englishLike") +B.fs=new A.No(1,"dense") +B.bY=new A.No(2,"tall") +B.jQ=new A.Nr(0,"idle") +B.rC=new A.Nr(1,"forward") +B.rD=new A.Nr(2,"reverse") +B.aBw=new A.a7R(0,"line") +B.aBx=new A.ys(0,"explicit") +B.ew=new A.ys(1,"keepVisibleAtEnd") +B.ex=new A.ys(2,"keepVisibleAtStart") +B.jS=new A.a7U(0,"manual") +B.alt=new A.a7U(1,"onDrag") +B.NF=new A.Dl(0,"left") +B.NG=new A.Dl(1,"right") +B.alu=new A.Dl(2,"top") +B.NH=new A.Dl(3,"bottom") +B.alv=new A.Dn(null,null,null,null,null,null,null,null,null,null,null) +B.alw=new A.Nu(null,null,null,null,null,null,null,null,null,null,null,null) +B.alx=new A.Nv(null,null,null,null,null,null,null,null,null,null) +B.aly=new A.Nw(null,null) +B.bs=new A.m0(0,"tap") +B.NI=new A.m0(1,"doubleTap") +B.cK=new A.m0(2,"longPress") +B.ni=new A.m0(3,"forcePress") +B.b3=new A.m0(5,"toolbar") +B.b4=new A.m0(6,"drag") +B.nj=new A.m0(7,"scribble") +B.alz=new A.yx(0,"startEdgeUpdate") +B.ft=new A.yx(1,"endEdgeUpdate") +B.alB=new A.yx(4,"selectWord") +B.alC=new A.yx(5,"selectParagraph") +B.rE=new A.Do(0,"previousLine") +B.rF=new A.Do(1,"nextLine") +B.nk=new A.Do(2,"forward") +B.nl=new A.Do(3,"backward") +B.ey=new A.Nz(2,"none") +B.NK=new A.uG(null,null,B.ey,B.qg,!1) +B.NJ=new A.uG(null,null,B.ey,B.qg,!0) +B.a8=new A.uH(0,"next") +B.ad=new A.uH(1,"previous") +B.ag=new A.uH(2,"end") +B.rG=new A.uH(3,"pending") +B.jT=new A.uH(4,"none") +B.rH=new A.Nz(0,"uncollapsed") +B.alD=new A.Nz(1,"collapsed") +B.alE=new A.eI(1048576,"moveCursorBackwardByWord") +B.NL=new A.eI(128,"decrease") +B.alF=new A.eI(16384,"paste") +B.fu=new A.eI(1,"tap") +B.alG=new A.eI(2048,"setSelection") +B.alH=new A.eI(2097152,"setText") +B.alI=new A.eI(256,"showOnScreen") +B.alJ=new A.eI(262144,"dismiss") +B.NM=new A.eI(2,"longPress") +B.rI=new A.eI(32768,"didGainAccessibilityFocus") +B.alK=new A.eI(4096,"copy") +B.alL=new A.eI(4194304,"focus") +B.alM=new A.eI(512,"moveCursorForwardByCharacter") +B.alN=new A.eI(524288,"moveCursorForwardByWord") +B.NN=new A.eI(64,"increase") +B.rJ=new A.eI(65536,"didLoseAccessibilityFocus") +B.alO=new A.eI(8192,"cut") +B.alP=new A.eI(1024,"moveCursorBackwardByCharacter") +B.NO=new A.eb(1024,"isObscured") +B.NP=new A.eb(1048576,"isReadOnly") +B.rK=new A.eb(128,"isEnabled") +B.NQ=new A.eb(131072,"isToggled") +B.alQ=new A.eb(134217728,"isExpanded") +B.NR=new A.eb(16384,"isImage") +B.alR=new A.eb(16777216,"isKeyboardKey") +B.NS=new A.eb(16,"isTextField") +B.nm=new A.eb(1,"hasCheckedState") +B.NT=new A.eb(2048,"scopesRoute") +B.NU=new A.eb(2097152,"isFocusable") +B.alS=new A.eb(256,"isInMutuallyExclusiveGroup") +B.alT=new A.eb(262144,"hasImplicitScrolling") +B.NV=new A.eb(2,"isChecked") +B.NW=new A.eb(32768,"isLiveRegion") +B.rL=new A.eb(32,"isFocused") +B.NX=new A.eb(33554432,"isCheckStateMixed") +B.NY=new A.eb(4096,"namesRoute") +B.alU=new A.eb(4194304,"isLink") +B.NZ=new A.eb(4,"isSelected") +B.O_=new A.eb(512,"isHeader") +B.O0=new A.eb(524288,"isMultiline") +B.rM=new A.eb(64,"hasEnabledState") +B.O1=new A.eb(65536,"hasToggledState") +B.alV=new A.eb(67108864,"hasExpandedState") +B.nn=new A.eb(8192,"isHidden") +B.O2=new A.eb(8388608,"isSlider") +B.O3=new A.eb(8,"isButton") +B.alW=new A.nl("_InputDecoratorState.suffix") +B.alX=new A.nl("_InputDecoratorState.prefix") +B.O4=new A.nl("RenderViewport.twoPane") +B.alY=new A.nl("RenderViewport.excludeFromScrolling") +B.alZ=new A.oO(0,"initial") +B.i3=new A.oO(1,"ready") +B.rN=new A.oO(2,"downloading") +B.rO=new A.oO(3,"uploading") +B.i4=new A.oO(4,"sending") +B.no=new A.oO(5,"success") +B.am_=new A.oO(6,"error") +B.np=new A.oO(7,"disabled") +B.Y=new A.dq(4,"selected") +B.O5=new A.hC([B.Y],t.El) +B.O6=new A.hC([B.dr,B.rg,B.Js],A.ar("hC")) +B.aiu={click:0,keyup:1,keydown:2,mouseup:3,mousedown:4,pointerdown:5,pointerup:6} +B.am0=new A.kx(B.aiu,7,t.fF) +B.aio={click:0,touchstart:1,touchend:2,pointerdown:3,pointermove:4,pointerup:5} +B.am1=new A.kx(B.aio,6,t.fF) +B.O7=new A.hC([B.br,B.cq,B.eu,B.cc,B.ds],t.Lu) +B.am2=new A.hC([32,8203],t.Ih) +B.aiq={serif:0,"sans-serif":1,monospace:2,cursive:3,fantasy:4,"system-ui":5,math:6,emoji:7,fangsong:8} +B.am3=new A.kx(B.aiq,9,t.fF) +B.am4=new A.hC([B.bg,B.aG,B.du],A.ar("hC")) +B.N=new A.dq(0,"hovered") +B.am5=new A.hC([B.N],t.El) +B.a4=new A.dq(2,"pressed") +B.am6=new A.hC([B.a4],t.El) +B.R=new A.dq(1,"focused") +B.am7=new A.hC([B.R],t.El) +B.am8=new A.kx(B.c9,0,A.ar("kx")) +B.jY=new A.kx(B.c9,0,A.ar("kx")) +B.am9=new A.hC([10,11,12,13,133,8232,8233],t.Ih) +B.ait={"writing-mode":0,"glyph-orientation-vertical":1,"glyph-orientation-horizontal":2,direction:3,"text-anchor":4,"font-family":5,"font-style":6,"font-variant":7,"font-weight":8,"font-stretch":9,"font-size":10,"font-size-adjust":11,font:12,kerning:13,"letter-spacing":14,"word-spacing":15,fill:16,"fill-rule":17,"fill-opacity":18,stroke:19,"stroke-width":20,"stroke-linecap":21,"stroke-linejoin":22,"stroke-miterlimit":23,"stroke-dasharray":24,"stroke-dashoffset":25,"stroke-opacity":26,visibility:27,"marker-start":28,marker:29,"color-interpolation":30,"color-interpolation-filters":31,"color-rendering":32,"shape-rendering":33,"text-rendering":34,"image-rendering":35,color:36,"color-profile":37,"clip-rule":38,"pointer-events":39,cursor:40} +B.ama=new A.kx(B.ait,41,t.fF) +B.amb=new A.hC([B.eu,B.cq,B.br,B.ds,B.cc],t.Lu) +B.amc=new A.aRB(0,"onlyForDiscrete") +B.rP=new A.qU(0,"auto") +B.cL=new A.qU(1,"open") +B.fv=new A.qU(2,"compact") +B.O8=new A.a8c(0,"open") +B.O9=new A.a8c(1,"close") +B.c5=new A.KE(1,"locked") +B.amd=new A.b1(B.fb,!1,!0,!1,!1,B.c5) +B.ame=new A.b1(B.fb,!0,!0,!1,!1,B.c5) +B.ns=new A.b1(B.f6,!1,!1,!1,!1,B.D) +B.nr=new A.b1(B.f7,!1,!1,!1,!1,B.D) +B.nq=new A.b1(B.jt,!1,!1,!1,!1,B.D) +B.Ob=new A.b1(B.dn,!1,!0,!1,!1,B.D) +B.rQ=new A.b1(B.cB,!1,!0,!1,!1,B.D) +B.rR=new A.b1(B.cC,!1,!0,!1,!1,B.D) +B.Oa=new A.b1(B.dp,!1,!0,!1,!1,B.D) +B.nu=new A.b1(B.f6,!1,!0,!1,!1,B.D) +B.nt=new A.b1(B.f7,!1,!0,!1,!1,B.D) +B.t_=new A.b1(B.jt,!1,!0,!1,!1,B.D) +B.ami=new A.b1(B.dn,!1,!0,!1,!0,B.D) +B.Ok=new A.b1(B.cB,!1,!0,!1,!0,B.D) +B.Ol=new A.b1(B.cC,!1,!0,!1,!0,B.D) +B.amh=new A.b1(B.dp,!1,!0,!1,!0,B.D) +B.On=new A.b1(B.f6,!0,!1,!1,!1,B.D) +B.Om=new A.b1(B.f7,!0,!1,!1,!1,B.D) +B.amg=new A.b1(B.dn,!0,!0,!1,!1,B.D) +B.amf=new A.b1(B.dp,!0,!0,!1,!1,B.D) +B.amk=new A.b1(B.f6,!0,!0,!1,!1,B.D) +B.amj=new A.b1(B.f7,!0,!0,!1,!1,B.D) +B.rZ=new A.b1(B.dn,!1,!0,!0,!1,B.D) +B.rW=new A.b1(B.cB,!1,!0,!0,!1,B.D) +B.rX=new A.b1(B.cC,!1,!0,!0,!1,B.D) +B.rY=new A.b1(B.dp,!1,!0,!0,!1,B.D) +B.aml=new A.b1(B.ff,!1,!0,!1,!1,B.c5) +B.amn=new A.b1(B.jy,!1,!0,!1,!1,B.c5) +B.amm=new A.b1(B.ff,!0,!0,!1,!1,B.c5) +B.Or=new A.b1(B.qt,!1,!1,!1,!0,B.D) +B.Ot=new A.b1(B.qu,!1,!1,!1,!0,B.D) +B.Ou=new A.b1(B.qm,!1,!1,!1,!0,B.D) +B.Os=new A.b1(B.qn,!1,!1,!1,!0,B.D) +B.amo=new A.b1(B.jq,!1,!1,!1,!0,B.D) +B.amp=new A.b1(B.jq,!1,!0,!1,!0,B.D) +B.t0=new A.b1(B.qt,!0,!1,!1,!1,B.D) +B.ams=new A.b1(B.IN,!0,!1,!1,!1,B.D) +B.Op=new A.b1(B.qu,!0,!1,!1,!1,B.D) +B.amq=new A.b1(B.DV,!0,!1,!1,!1,B.D) +B.amr=new A.b1(B.DW,!0,!1,!1,!1,B.D) +B.amt=new A.b1(B.DX,!0,!1,!1,!1,B.D) +B.amu=new A.b1(B.DY,!0,!1,!1,!1,B.D) +B.amx=new A.b1(B.E_,!0,!1,!1,!1,B.D) +B.Oq=new A.b1(B.qm,!0,!1,!1,!1,B.D) +B.Oo=new A.b1(B.qn,!0,!1,!1,!1,B.D) +B.amv=new A.b1(B.jq,!0,!1,!1,!1,B.D) +B.amw=new A.b1(B.jq,!0,!0,!1,!1,B.D) +B.c6=new A.KE(2,"unlocked") +B.amG=new A.b1(B.jv,!1,!1,!1,!1,B.c6) +B.amA=new A.b1(B.fc,!1,!1,!1,!1,B.c6) +B.amE=new A.b1(B.jw,!1,!1,!1,!1,B.c6) +B.amz=new A.b1(B.fd,!1,!1,!1,!1,B.c6) +B.amy=new A.b1(B.fe,!1,!1,!1,!1,B.c6) +B.amF=new A.b1(B.jx,!1,!1,!1,!1,B.c6) +B.amD=new A.b1(B.fc,!0,!1,!1,!1,B.c6) +B.amC=new A.b1(B.fd,!0,!1,!1,!1,B.c6) +B.amB=new A.b1(B.fe,!0,!1,!1,!1,B.c6) +B.amH=new A.b1(B.fb,!1,!1,!1,!1,B.c6) +B.amI=new A.b1(B.fb,!0,!1,!1,!1,B.c6) +B.amJ=new A.b1(B.mH,!1,!1,!1,!1,B.D) +B.amK=new A.b1(B.mH,!1,!0,!1,!1,B.D) +B.amP=new A.b1(B.ff,!1,!1,!1,!1,B.c6) +B.amR=new A.b1(B.jy,!1,!1,!1,!1,B.c6) +B.amQ=new A.b1(B.ff,!0,!1,!1,!1,B.c6) +B.amS=new A.b1(B.jr,!1,!1,!1,!1,B.D) +B.nv=new A.b1(B.ju,!1,!1,!1,!1,B.D) +B.t3=new A.b1(B.ju,!1,!0,!1,!1,B.D) +B.an4=new A.b1(B.jv,!1,!0,!1,!1,B.c5) +B.amZ=new A.b1(B.fc,!1,!0,!1,!1,B.c5) +B.an2=new A.b1(B.jw,!1,!0,!1,!1,B.c5) +B.amY=new A.b1(B.fd,!1,!0,!1,!1,B.c5) +B.amX=new A.b1(B.fe,!1,!0,!1,!1,B.c5) +B.an3=new A.b1(B.jx,!1,!0,!1,!1,B.c5) +B.an1=new A.b1(B.fc,!0,!0,!1,!1,B.c5) +B.an0=new A.b1(B.fd,!0,!0,!1,!1,B.c5) +B.an_=new A.b1(B.fe,!0,!0,!1,!1,B.c5) +B.an6=new A.R(1e5,1e5) +B.Ov=new A.R(10,10) +B.an8=new A.R(16,8) +B.an9=new A.R(18,18) +B.ana=new A.R(22,22) +B.anb=new A.R(28,28) +B.anc=new A.R(80,47.5) +B.Ow=new A.R(32,4) +B.and=new A.R(34,22) +B.Ox=new A.R(40,40) +B.ane=new A.R(48,36) +B.Oy=new A.R(48,48) +B.ang=new A.R(77.37,37.9) +B.Oz=new A.R(1/0,44) +B.anh=new A.R(1/0,46) +B.t4=new A.R(1/0,48) +B.ax=new A.aB(0,0,null,null) +B.ani=new A.aB(109,null,null,null) +B.OA=new A.aB(10,null,null,null) +B.dY=new A.aB(12,null,null,null) +B.fw=new A.aB(16,null,null,null) +B.t5=new A.aB(20,null,null,null) +B.anj=new A.aB(23,null,null,null) +B.ank=new A.aB(24,null,null,null) +B.fx=new A.aB(2,null,null,null) +B.anl=new A.aB(30,30,null,null) +B.anm=new A.aB(30,null,null,null) +B.ann=new A.aB(40,40,null,null) +B.ce=new A.aB(4,null,null,null) +B.ano=new A.aB(5,null,null,null) +B.nw=new A.aB(6,null,null,null) +B.OB=new A.aB(7,null,null,null) +B.anp=new A.aB(80,100,null,null) +B.cf=new A.aB(8,null,null,null) +B.OC=new A.aB(20,20,B.vb,null) +B.vc=new A.kw(2,0,null,null,null,null,B.uo,null,null,null) +B.anq=new A.aB(16,16,B.vc,null) +B.anr=new A.aB(24,24,B.vc,null) +B.ba=new A.aB(null,10,null,null) +B.dZ=new A.aB(null,12,null,null) +B.ans=new A.aB(null,13,null,null) +B.OD=new A.aB(null,14,null,null) +B.ant=new A.aB(null,160,null,null) +B.aK=new A.aB(null,16,null,null) +B.anu=new A.aB(null,18,null,null) +B.i5=new A.aB(null,20,null,null) +B.t7=new A.aB(null,23,null,null) +B.k2=new A.aB(null,24,null,null) +B.OE=new A.aB(null,30,null,null) +B.anv=new A.aB(null,31,null,null) +B.t8=new A.aB(null,32,null,null) +B.anw=new A.aB(null,34,null,null) +B.anx=new A.aB(null,36,null,null) +B.fy=new A.aB(null,40,null,null) +B.any=new A.aB(null,42,null,null) +B.OF=new A.aB(null,43,null,null) +B.anz=new A.aB(null,4,null,null) +B.k3=new A.aB(null,6,null,null) +B.bf=new A.aB(null,8,null,null) +B.ez=new A.aB(null,null,null,null) +B.anA=new A.a8q(0,"tapAndSlide") +B.anB=new A.a8q(2,"slideOnly") +B.anC=new A.Dx(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.OG=new A.a8s(0,0,0,0,0,0,!1,!1,null,0) +B.anD=new A.O4(2,16,16,1) +B.anE=new A.O4(7,25,30,1) +B.nx=new A.DB(0,"fade") +B.anF=new A.DB(1,"scale") +B.anG=new A.DB(2,"centerFade_otherSlide") +B.anH=new A.DB(3,"centerScale_otherSlide") +B.fz=new A.O7(0,"dialogDismiss") +B.anI=new A.O7(1,"dialogAppear") +B.anJ=new A.O7(2,"none") +B.t9=new A.O8(0,"normal") +B.OH=new A.O8(1,"block") +B.anK=new A.O8(2,"ignore") +B.anL=new A.aS2(1,"enabled") +B.OI=new A.uO(0,"custom") +B.OJ=new A.uO(1,"attach") +B.ta=new A.uO(2,"notify") +B.ny=new A.uO(3,"loading") +B.tb=new A.uO(4,"toast") +B.anM=new A.Oa(0,"down") +B.anN=new A.Oa(1,"move") +B.tc=new A.Oa(2,"up") +B.OK=new A.oS(0,"openDialog_nonAnimation") +B.anO=new A.oS(1,"closeDialog_nonAnimation") +B.OM=new A.oS(3,"maskClose_nonAnimation") +B.anP=new A.oS(7,"continueKeepSingle") +B.anQ=new A.aS9(1,"enabled") +B.anR=new A.kh(0,"smart") +B.anS=new A.kh(1,"toast") +B.anT=new A.kh(10,"allDialog") +B.OO=new A.kh(11,"allNotify") +B.anU=new A.kh(2,"allToast") +B.as=new A.kh(3,"loading") +B.anV=new A.kh(4,"custom") +B.anW=new A.kh(5,"attach") +B.anX=new A.kh(6,"dialog") +B.td=new A.kh(7,"notify") +B.anY=new A.kh(8,"allCustom") +B.anZ=new A.kh(9,"allAttach") +B.nz=new A.DC(0,"normal") +B.OP=new A.DC(1,"last") +B.te=new A.DC(2,"onlyRefresh") +B.ao_=new A.DC(3,"multi") +B.OQ=new A.a8G(0,"fixed") +B.tf=new A.a8G(1,"floating") +B.ao0=new A.nn(0,"action") +B.ao1=new A.nn(1,"dismiss") +B.ao2=new A.nn(2,"swipe") +B.ao3=new A.nn(3,"hide") +B.ao4=new A.nn(4,"remove") +B.OR=new A.nn(5,"timeout") +B.ao5=new A.DD(null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.auh=new A.fs("\u5df2\u53d1\u8d77\u6253\u5370\u4efb\u52a1",null,null,null,null,null,null,null,null,null) +B.ao6=new A.yI(B.auh,null,null,null,null,null,null,null,null,null,null,null,null,B.c2,null,null,null,B.w,null) +B.OS=new A.Od(0,"permissive") +B.ao7=new A.Od(1,"normal") +B.ao8=new A.Od(2,"forced") +B.tg=new A.a8Q(null) +B.k4=new A.Of(null,null,null,null,!1) +B.ao9=new A.Oi(0,"criticallyDamped") +B.aoa=new A.Oi(1,"underDamped") +B.aob=new A.Oi(2,"overDamped") +B.W=new A.Oj(0,"loose") +B.OT=new A.Oj(1,"expand") +B.OU=new A.Oj(2,"passthrough") +B.aoc=new A.nq("",-1,"","","",-1,-1,"","asynchronous suspension") +B.aod=new A.nq("...",-1,"","","",-1,-1,"","...") +B.OV=new A.jE(B.x) +B.bN=new A.ev("") +B.aoe=new A.Os(0,"butt") +B.aof=new A.Os(1,"round") +B.aog=new A.Os(2,"square") +B.aoh=new A.Ot(0,"miter") +B.aoi=new A.Ot(1,"round") +B.aoj=new A.Ot(2,"bevel") +B.aol=new A.a90(0,"deviceFilamentInfo") +B.aom=new A.a90(1,"deviceList") +B.fA=new A.DQ(B.IX,null,null,B.Ub,null,null,B.bJ,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.aon=new A.ed(0) +B.aoy=new A.ed(0) +B.aow=new A.ed(0) +B.aou=new A.ed(0) +B.aov=new A.ed(0) +B.aot=new A.ed(0) +B.aox=new A.ed(0) +B.aos=new A.ed(0) +B.aop=new A.ed(0) +B.aor=new A.ed(0) +B.aoo=new A.ed(0) +B.aoq=new A.ed(0) +B.aoz=new A.ed(1) +B.aoA=new A.ed(10) +B.aoB=new A.ed(11) +B.aoC=new A.ed(12) +B.aoD=new A.ed(13) +B.aoE=new A.ed(14) +B.aoF=new A.ed(15) +B.aoG=new A.ed(16) +B.aoH=new A.ed(2) +B.aoI=new A.ed(3) +B.aoJ=new A.ed(4) +B.aoK=new A.ed(5) +B.aoL=new A.ed(6) +B.aoM=new A.ed(7) +B.aoN=new A.ed(8) +B.aoO=new A.ed(9) +B.fB=new A.fr(0,"unknown") +B.OY=new A.nt(null,null,null,null,null,null,null,null,null) +B.aoX=new A.hp("_notificationCallStackDepth=") +B.aoY=new A.hp("Intl.locale") +B.aoZ=new A.hp("_listeners=") +B.ap_=new A.hp("_reentrantlyRemovedListeners=") +B.ap0=new A.hp("_clientToken") +B.ap1=new A.hp("_count") +B.ap2=new A.hp("_listeners") +B.ap3=new A.hp("_notificationCallStackDepth") +B.ap4=new A.hp("_reentrantlyRemovedListeners") +B.ap5=new A.hp("_removeAt") +B.ap6=new A.hp("call") +B.ap7=new A.hp("_count=") +B.cg=new A.oT("basic") +B.dt=new A.oT("click") +B.OZ=new A.oT("text") +B.P_=new A.a98(0,"click") +B.ap8=new A.a98(1,"alert") +B.ap9=new A.a99(3,"edgeToEdge") +B.apa=new A.a99(4,"manual") +B.apb=new A.oU(B.v,null,B.b_,null,null,B.b_,B.aI,null) +B.apc=new A.oU(B.v,null,B.b_,null,null,B.aI,B.b_,null) +B.P0=new A.aTB(2,"fill") +B.P1=new A.aTC(1,"label") +B.apd=new A.DT(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.P2=new A.aTO("tap") +B.ape=new A.OK(null) +B.aW=new A.a9i(0,"upstream") +B.P3=new A.a9j(0) +B.P4=new A.a9j(-1) +B.H=new A.uV(0,"alphabetic") +B.ay=new A.uV(1,"ideographic") +B.apf=new A.DV(null) +B.tv=new A.DW(3,"none") +B.P5=new A.ON(B.tv) +B.P6=new A.DW(0,"words") +B.P7=new A.DW(1,"sentences") +B.P8=new A.DW(2,"characters") +B.apg=new A.aTS(3,"none") +B.P9=new A.yN(0,"solid") +B.api=new A.yN(1,"double") +B.apj=new A.yN(2,"dotted") +B.apl=new A.yN(3,"dashed") +B.apn=new A.yN(4,"wavy") +B.m=new A.r4(0) +B.Pb=new A.yM(0) +B.tw=new A.r4(1) +B.app=new A.yM(1) +B.apq=new A.r4(2) +B.apr=new A.yM(2) +B.aps=new A.r4(4) +B.apt=new A.yM(4) +B.tA=new A.iW(0,0,B.q,!1,0,0) +B.apu=new A.dS("",B.tA,B.bH) +B.ty=new A.yO(0,"character") +B.apv=new A.yO(1,"word") +B.Pc=new A.yO(2,"paragraph") +B.apw=new A.yO(3,"line") +B.apx=new A.yO(4,"document") +B.apK=new A.a9u(0,"proportional") +B.Pd=new A.OQ(B.apK) +B.apy=new A.jH(0,"none") +B.apz=new A.jH(1,"unspecified") +B.apA=new A.jH(10,"route") +B.apB=new A.jH(11,"emergencyCall") +B.Pe=new A.jH(12,"newline") +B.nD=new A.jH(2,"done") +B.apC=new A.jH(3,"go") +B.apD=new A.jH(4,"search") +B.apE=new A.jH(5,"send") +B.apF=new A.jH(6,"next") +B.apG=new A.jH(7,"previous") +B.apH=new A.jH(8,"continueAction") +B.apI=new A.jH(9,"join") +B.Pf=new A.yP(0,null,null) +B.Pg=new A.yP(10,null,null) +B.tz=new A.yP(1,null,null) +B.apJ=new A.yP(2,!1,!1) +B.a1=new A.a9u(1,"even") +B.apL=new A.E_(1,"fade") +B.al=new A.E_(2,"ellipsis") +B.Ph=new A.E_(3,"visible") +B.i6=new A.b_(0,B.q) +B.nE=new A.OX(0,"left") +B.nF=new A.OX(1,"right") +B.i7=new A.OX(2,"collapsed") +B.apM=new A.OY(null,null,null) +B.apN=new A.OZ(B.j,null) +B.aq3=new A.J(!0,B.v,null,null,null,null,18,B.K,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.aqn=new A.J(!0,B.h_,null,null,null,null,16,B.K,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.Pi=new A.J(!0,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,B.tw,null,null,null,null,null,null,null,null) +B.arH=new A.J(!0,B.ab,null,null,null,null,11,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.arG=new A.J(!0,B.ab,null,null,null,null,17,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.arE=new A.J(!0,B.ai,null,null,null,null,14,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.arF=new A.J(!0,B.v,null,null,null,null,17,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.arT=new A.J(!0,B.ai,null,null,null,null,16,B.u,null,null,null,null,1.4,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.arU=new A.J(!0,null,null,null,null,null,13,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.tB=new A.J(!0,null,null,null,null,null,14,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.Pj=new A.J(!1,B.l9,null,"CupertinoSystemText",null,null,17,null,null,-0.41,null,null,null,null,null,null,null,B.m,null,null,null,null,null,null,null,null) +B.as5=new A.J(!0,null,null,null,null,null,null,B.u,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.nG=new A.J(!0,null,null,null,null,null,null,B.cZ,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.asQ=new A.J(!0,B.n,null,null,null,null,16,B.K,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.asR=new A.J(!0,B.n,null,null,null,null,24,B.cZ,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.Uq=new A.A(3506372608) +B.XR=new A.A(4294967040) +B.at1=new A.J(!0,B.Uq,null,"monospace",null,null,48,B.xu,null,null,null,null,null,null,null,null,null,B.tw,B.XR,B.Pa,null,"fallback style; consider putting your text in a Material",null,null,null,null) +B.atp=new A.J(!0,B.n,null,null,null,null,10,B.cZ,null,null,null,null,1.4,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.Pk=new A.J(!1,null,null,null,null,null,14,B.u,null,-0.15,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.atA=new A.J(!1,null,null,null,null,null,15,B.u,null,-0.15,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.arq=new A.J(!0,B.ab,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity displayLarge",null,null,null,null) +B.arX=new A.J(!0,B.ab,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity displayMedium",null,null,null,null) +B.arr=new A.J(!0,B.ab,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity displaySmall",null,null,null,null) +B.atH=new A.J(!0,B.ab,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity headlineLarge",null,null,null,null) +B.asu=new A.J(!0,B.ab,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity headlineMedium",null,null,null,null) +B.aqh=new A.J(!0,B.ai,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity headlineSmall",null,null,null,null) +B.atP=new A.J(!0,B.ai,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity titleLarge",null,null,null,null) +B.aru=new A.J(!0,B.ai,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity titleMedium",null,null,null,null) +B.arz=new A.J(!0,B.v,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity titleSmall",null,null,null,null) +B.asE=new A.J(!0,B.ai,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity bodyLarge",null,null,null,null) +B.asd=new A.J(!0,B.ai,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity bodyMedium",null,null,null,null) +B.ath=new A.J(!0,B.ab,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity bodySmall",null,null,null,null) +B.apO=new A.J(!0,B.ai,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity labelLarge",null,null,null,null) +B.asJ=new A.J(!0,B.v,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity labelMedium",null,null,null,null) +B.aq7=new A.J(!0,B.v,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedwoodCity labelSmall",null,null,null,null) +B.atQ=new A.h4(B.arq,B.arX,B.arr,B.atH,B.asu,B.aqh,B.atP,B.aru,B.arz,B.asE,B.asd,B.ath,B.apO,B.asJ,B.aq7) +B.as2=new A.J(!1,null,null,null,null,null,112,B.pH,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike displayLarge 2014",null,null,null,null) +B.apY=new A.J(!1,null,null,null,null,null,56,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike displayMedium 2014",null,null,null,null) +B.arY=new A.J(!1,null,null,null,null,null,45,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike displaySmall 2014",null,null,null,null) +B.asl=new A.J(!1,null,null,null,null,null,40,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike headlineLarge 2014",null,null,null,null) +B.aqc=new A.J(!1,null,null,null,null,null,34,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike headlineMedium 2014",null,null,null,null) +B.art=new A.J(!1,null,null,null,null,null,24,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike headlineSmall 2014",null,null,null,null) +B.arM=new A.J(!1,null,null,null,null,null,20,B.K,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike titleLarge 2014",null,null,null,null) +B.ar7=new A.J(!1,null,null,null,null,null,16,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike titleMedium 2014",null,null,null,null) +B.as7=new A.J(!1,null,null,null,null,null,14,B.K,null,0.1,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike titleSmall 2014",null,null,null,null) +B.ard=new A.J(!1,null,null,null,null,null,14,B.K,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike bodyLarge 2014",null,null,null,null) +B.arA=new A.J(!1,null,null,null,null,null,14,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike bodyMedium 2014",null,null,null,null) +B.ars=new A.J(!1,null,null,null,null,null,12,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike bodySmall 2014",null,null,null,null) +B.arW=new A.J(!1,null,null,null,null,null,14,B.K,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike labelLarge 2014",null,null,null,null) +B.aqU=new A.J(!1,null,null,null,null,null,12,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike labelMedium 2014",null,null,null,null) +B.asZ=new A.J(!1,null,null,null,null,null,10,B.u,null,1.5,null,B.H,null,null,null,null,null,null,null,null,null,"englishLike labelSmall 2014",null,null,null,null) +B.atR=new A.h4(B.as2,B.apY,B.arY,B.asl,B.aqc,B.art,B.arM,B.ar7,B.as7,B.ard,B.arA,B.ars,B.arW,B.aqU,B.asZ) +B.atL=new A.J(!0,B.ab,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond displayLarge",null,null,null,null) +B.aqv=new A.J(!0,B.ab,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond displayMedium",null,null,null,null) +B.arm=new A.J(!0,B.ab,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond displaySmall",null,null,null,null) +B.at6=new A.J(!0,B.ab,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond headlineLarge",null,null,null,null) +B.asS=new A.J(!0,B.ab,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond headlineMedium",null,null,null,null) +B.aqm=new A.J(!0,B.ai,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond headlineSmall",null,null,null,null) +B.at8=new A.J(!0,B.ai,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond titleLarge",null,null,null,null) +B.atb=new A.J(!0,B.ai,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond titleMedium",null,null,null,null) +B.atB=new A.J(!0,B.v,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond titleSmall",null,null,null,null) +B.ata=new A.J(!0,B.ai,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond bodyLarge",null,null,null,null) +B.ara=new A.J(!0,B.ai,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond bodyMedium",null,null,null,null) +B.aq6=new A.J(!0,B.ab,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond bodySmall",null,null,null,null) +B.atK=new A.J(!0,B.ai,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond labelLarge",null,null,null,null) +B.aro=new A.J(!0,B.v,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond labelMedium",null,null,null,null) +B.asY=new A.J(!0,B.v,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackRedmond labelSmall",null,null,null,null) +B.atS=new A.h4(B.atL,B.aqv,B.arm,B.at6,B.asS,B.aqm,B.at8,B.atb,B.atB,B.ata,B.ara,B.aq6,B.atK,B.aro,B.asY) +B.asC=new A.J(!0,B.au,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity displayLarge",null,null,null,null) +B.atn=new A.J(!0,B.au,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity displayMedium",null,null,null,null) +B.asD=new A.J(!0,B.au,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity displaySmall",null,null,null,null) +B.att=new A.J(!0,B.au,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity headlineLarge",null,null,null,null) +B.as1=new A.J(!0,B.au,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity headlineMedium",null,null,null,null) +B.aso=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity headlineSmall",null,null,null,null) +B.ar6=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity titleLarge",null,null,null,null) +B.aqe=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity titleMedium",null,null,null,null) +B.aqH=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity titleSmall",null,null,null,null) +B.asz=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity bodyLarge",null,null,null,null) +B.atl=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity bodyMedium",null,null,null,null) +B.aq8=new A.J(!0,B.au,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity bodySmall",null,null,null,null) +B.aqI=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity labelLarge",null,null,null,null) +B.aqR=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity labelMedium",null,null,null,null) +B.aqa=new A.J(!0,B.n,null,".AppleSystemUIFont",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedwoodCity labelSmall",null,null,null,null) +B.atT=new A.h4(B.asC,B.atn,B.asD,B.att,B.as1,B.aso,B.ar6,B.aqe,B.aqH,B.asz,B.atl,B.aq8,B.aqI,B.aqR,B.aqa) +B.as4=new A.J(!0,B.au,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView displayLarge",null,null,null,null) +B.arh=new A.J(!0,B.au,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView displayMedium",null,null,null,null) +B.atE=new A.J(!0,B.au,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView displaySmall",null,null,null,null) +B.aqf=new A.J(!0,B.au,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView headlineLarge",null,null,null,null) +B.aqF=new A.J(!0,B.au,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView headlineMedium",null,null,null,null) +B.asI=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView headlineSmall",null,null,null,null) +B.aqy=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView titleLarge",null,null,null,null) +B.aqO=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView titleMedium",null,null,null,null) +B.as6=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView titleSmall",null,null,null,null) +B.asG=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView bodyLarge",null,null,null,null) +B.aqu=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView bodyMedium",null,null,null,null) +B.aqA=new A.J(!0,B.au,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView bodySmall",null,null,null,null) +B.atu=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView labelLarge",null,null,null,null) +B.atI=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView labelMedium",null,null,null,null) +B.atj=new A.J(!0,B.n,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteMountainView labelSmall",null,null,null,null) +B.atU=new A.h4(B.as4,B.arh,B.atE,B.aqf,B.aqF,B.asI,B.aqy,B.aqO,B.as6,B.asG,B.aqu,B.aqA,B.atu,B.atI,B.atj) +B.at0=new A.J(!0,B.ab,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino displayLarge",null,null,null,null) +B.asW=new A.J(!0,B.ab,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino displayMedium",null,null,null,null) +B.atF=new A.J(!0,B.ab,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino displaySmall",null,null,null,null) +B.aqQ=new A.J(!0,B.ab,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino headlineLarge",null,null,null,null) +B.at2=new A.J(!0,B.ab,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino headlineMedium",null,null,null,null) +B.apX=new A.J(!0,B.ai,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino headlineSmall",null,null,null,null) +B.aqj=new A.J(!0,B.ai,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino titleLarge",null,null,null,null) +B.aqG=new A.J(!0,B.ai,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino titleMedium",null,null,null,null) +B.asL=new A.J(!0,B.v,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino titleSmall",null,null,null,null) +B.apT=new A.J(!0,B.ai,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino bodyLarge",null,null,null,null) +B.asy=new A.J(!0,B.ai,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino bodyMedium",null,null,null,null) +B.asi=new A.J(!0,B.ab,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino bodySmall",null,null,null,null) +B.at4=new A.J(!0,B.ai,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino labelLarge",null,null,null,null) +B.aqE=new A.J(!0,B.v,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino labelMedium",null,null,null,null) +B.asf=new A.J(!0,B.v,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackCupertino labelSmall",null,null,null,null) +B.atV=new A.h4(B.at0,B.asW,B.atF,B.aqQ,B.at2,B.apX,B.aqj,B.aqG,B.asL,B.apT,B.asy,B.asi,B.at4,B.aqE,B.asf) +B.atw=new A.J(!1,null,null,null,null,null,57,B.u,null,-0.25,null,B.ay,1.12,B.a1,null,null,null,null,null,null,null,"dense displayLarge 2021",null,null,null,null) +B.apW=new A.J(!1,null,null,null,null,null,45,B.u,null,0,null,B.ay,1.16,B.a1,null,null,null,null,null,null,null,"dense displayMedium 2021",null,null,null,null) +B.apZ=new A.J(!1,null,null,null,null,null,36,B.u,null,0,null,B.ay,1.22,B.a1,null,null,null,null,null,null,null,"dense displaySmall 2021",null,null,null,null) +B.asX=new A.J(!1,null,null,null,null,null,32,B.u,null,0,null,B.ay,1.25,B.a1,null,null,null,null,null,null,null,"dense headlineLarge 2021",null,null,null,null) +B.atO=new A.J(!1,null,null,null,null,null,28,B.u,null,0,null,B.ay,1.29,B.a1,null,null,null,null,null,null,null,"dense headlineMedium 2021",null,null,null,null) +B.aqJ=new A.J(!1,null,null,null,null,null,24,B.u,null,0,null,B.ay,1.33,B.a1,null,null,null,null,null,null,null,"dense headlineSmall 2021",null,null,null,null) +B.ar3=new A.J(!1,null,null,null,null,null,22,B.u,null,0,null,B.ay,1.27,B.a1,null,null,null,null,null,null,null,"dense titleLarge 2021",null,null,null,null) +B.are=new A.J(!1,null,null,null,null,null,16,B.K,null,0.15,null,B.ay,1.5,B.a1,null,null,null,null,null,null,null,"dense titleMedium 2021",null,null,null,null) +B.aq1=new A.J(!1,null,null,null,null,null,14,B.K,null,0.1,null,B.ay,1.43,B.a1,null,null,null,null,null,null,null,"dense titleSmall 2021",null,null,null,null) +B.ar_=new A.J(!1,null,null,null,null,null,16,B.u,null,0.5,null,B.ay,1.5,B.a1,null,null,null,null,null,null,null,"dense bodyLarge 2021",null,null,null,null) +B.ate=new A.J(!1,null,null,null,null,null,14,B.u,null,0.25,null,B.ay,1.43,B.a1,null,null,null,null,null,null,null,"dense bodyMedium 2021",null,null,null,null) +B.atf=new A.J(!1,null,null,null,null,null,12,B.u,null,0.4,null,B.ay,1.33,B.a1,null,null,null,null,null,null,null,"dense bodySmall 2021",null,null,null,null) +B.asa=new A.J(!1,null,null,null,null,null,14,B.K,null,0.1,null,B.ay,1.43,B.a1,null,null,null,null,null,null,null,"dense labelLarge 2021",null,null,null,null) +B.aqp=new A.J(!1,null,null,null,null,null,12,B.K,null,0.5,null,B.ay,1.33,B.a1,null,null,null,null,null,null,null,"dense labelMedium 2021",null,null,null,null) +B.asM=new A.J(!1,null,null,null,null,null,11,B.K,null,0.5,null,B.ay,1.45,B.a1,null,null,null,null,null,null,null,"dense labelSmall 2021",null,null,null,null) +B.atW=new A.h4(B.atw,B.apW,B.apZ,B.asX,B.atO,B.aqJ,B.ar3,B.are,B.aq1,B.ar_,B.ate,B.atf,B.asa,B.aqp,B.asM) +B.aC=A.a(s(["Ubuntu","Cantarell","DejaVu Sans","Liberation Sans","Arial"]),t.s) +B.atg=new A.J(!0,B.au,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki displayLarge",null,null,null,null) +B.asT=new A.J(!0,B.au,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki displayMedium",null,null,null,null) +B.atM=new A.J(!0,B.au,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki displaySmall",null,null,null,null) +B.atq=new A.J(!0,B.au,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki headlineLarge",null,null,null,null) +B.as_=new A.J(!0,B.au,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki headlineMedium",null,null,null,null) +B.arb=new A.J(!0,B.n,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki headlineSmall",null,null,null,null) +B.atJ=new A.J(!0,B.n,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki titleLarge",null,null,null,null) +B.asq=new A.J(!0,B.n,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki titleMedium",null,null,null,null) +B.aq0=new A.J(!0,B.n,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki titleSmall",null,null,null,null) +B.ato=new A.J(!0,B.n,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki bodyLarge",null,null,null,null) +B.arf=new A.J(!0,B.n,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki bodyMedium",null,null,null,null) +B.at9=new A.J(!0,B.au,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki bodySmall",null,null,null,null) +B.as0=new A.J(!0,B.n,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki labelLarge",null,null,null,null) +B.atr=new A.J(!0,B.n,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki labelMedium",null,null,null,null) +B.apP=new A.J(!0,B.n,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteHelsinki labelSmall",null,null,null,null) +B.atX=new A.h4(B.atg,B.asT,B.atM,B.atq,B.as_,B.arb,B.atJ,B.asq,B.aq0,B.ato,B.arf,B.at9,B.as0,B.atr,B.apP) +B.at_=new A.J(!0,B.au,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond displayLarge",null,null,null,null) +B.aqM=new A.J(!0,B.au,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond displayMedium",null,null,null,null) +B.atG=new A.J(!0,B.au,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond displaySmall",null,null,null,null) +B.asK=new A.J(!0,B.au,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond headlineLarge",null,null,null,null) +B.aqr=new A.J(!0,B.au,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond headlineMedium",null,null,null,null) +B.apQ=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond headlineSmall",null,null,null,null) +B.asP=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond titleLarge",null,null,null,null) +B.aqS=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond titleMedium",null,null,null,null) +B.at7=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond titleSmall",null,null,null,null) +B.apR=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond bodyLarge",null,null,null,null) +B.asx=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond bodyMedium",null,null,null,null) +B.ash=new A.J(!0,B.au,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond bodySmall",null,null,null,null) +B.aqk=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond labelLarge",null,null,null,null) +B.aqs=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond labelMedium",null,null,null,null) +B.apS=new A.J(!0,B.n,null,"Segoe UI",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteRedmond labelSmall",null,null,null,null) +B.atY=new A.h4(B.at_,B.aqM,B.atG,B.asK,B.aqr,B.apQ,B.asP,B.aqS,B.at7,B.apR,B.asx,B.ash,B.aqk,B.aqs,B.apS) +B.arO=new A.J(!0,B.ab,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView displayLarge",null,null,null,null) +B.atz=new A.J(!0,B.ab,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView displayMedium",null,null,null,null) +B.aqD=new A.J(!0,B.ab,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView displaySmall",null,null,null,null) +B.atm=new A.J(!0,B.ab,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView headlineLarge",null,null,null,null) +B.asj=new A.J(!0,B.ab,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView headlineMedium",null,null,null,null) +B.ar1=new A.J(!0,B.ai,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView headlineSmall",null,null,null,null) +B.asv=new A.J(!0,B.ai,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView titleLarge",null,null,null,null) +B.ase=new A.J(!0,B.ai,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView titleMedium",null,null,null,null) +B.arJ=new A.J(!0,B.v,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView titleSmall",null,null,null,null) +B.ar2=new A.J(!0,B.ai,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView bodyLarge",null,null,null,null) +B.aqK=new A.J(!0,B.ai,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView bodyMedium",null,null,null,null) +B.arK=new A.J(!0,B.ab,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView bodySmall",null,null,null,null) +B.arC=new A.J(!0,B.ai,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView labelLarge",null,null,null,null) +B.arj=new A.J(!0,B.v,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView labelMedium",null,null,null,null) +B.ar9=new A.J(!0,B.v,null,"Roboto",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackMountainView labelSmall",null,null,null,null) +B.atZ=new A.h4(B.arO,B.atz,B.aqD,B.atm,B.asj,B.ar1,B.asv,B.ase,B.arJ,B.ar2,B.aqK,B.arK,B.arC,B.arj,B.ar9) +B.asg=new A.J(!1,null,null,null,null,null,112,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall displayLarge 2014",null,null,null,null) +B.ati=new A.J(!1,null,null,null,null,null,56,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall displayMedium 2014",null,null,null,null) +B.asc=new A.J(!1,null,null,null,null,null,45,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall displaySmall 2014",null,null,null,null) +B.arR=new A.J(!1,null,null,null,null,null,40,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall headlineLarge 2014",null,null,null,null) +B.aqL=new A.J(!1,null,null,null,null,null,34,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall headlineMedium 2014",null,null,null,null) +B.arN=new A.J(!1,null,null,null,null,null,24,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall headlineSmall 2014",null,null,null,null) +B.arB=new A.J(!1,null,null,null,null,null,21,B.cZ,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall titleLarge 2014",null,null,null,null) +B.arL=new A.J(!1,null,null,null,null,null,17,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall titleMedium 2014",null,null,null,null) +B.asm=new A.J(!1,null,null,null,null,null,15,B.K,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall titleSmall 2014",null,null,null,null) +B.arl=new A.J(!1,null,null,null,null,null,15,B.cZ,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall bodyLarge 2014",null,null,null,null) +B.atD=new A.J(!1,null,null,null,null,null,15,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall bodyMedium 2014",null,null,null,null) +B.aqT=new A.J(!1,null,null,null,null,null,13,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall bodySmall 2014",null,null,null,null) +B.arg=new A.J(!1,null,null,null,null,null,15,B.cZ,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall labelLarge 2014",null,null,null,null) +B.arD=new A.J(!1,null,null,null,null,null,12,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall labelMedium 2014",null,null,null,null) +B.ark=new A.J(!1,null,null,null,null,null,11,B.u,null,null,null,B.H,null,null,null,null,null,null,null,null,null,"tall labelSmall 2014",null,null,null,null) +B.au_=new A.h4(B.asg,B.ati,B.asc,B.arR,B.aqL,B.arN,B.arB,B.arL,B.asm,B.arl,B.atD,B.aqT,B.arg,B.arD,B.ark) +B.aqx=new A.J(!1,null,null,null,null,null,112,B.pH,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense displayLarge 2014",null,null,null,null) +B.atc=new A.J(!1,null,null,null,null,null,56,B.u,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense displayMedium 2014",null,null,null,null) +B.aqi=new A.J(!1,null,null,null,null,null,45,B.u,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense displaySmall 2014",null,null,null,null) +B.arP=new A.J(!1,null,null,null,null,null,40,B.u,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense headlineLarge 2014",null,null,null,null) +B.arV=new A.J(!1,null,null,null,null,null,34,B.u,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense headlineMedium 2014",null,null,null,null) +B.ats=new A.J(!1,null,null,null,null,null,24,B.u,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense headlineSmall 2014",null,null,null,null) +B.aq2=new A.J(!1,null,null,null,null,null,21,B.K,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense titleLarge 2014",null,null,null,null) +B.arI=new A.J(!1,null,null,null,null,null,17,B.u,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense titleMedium 2014",null,null,null,null) +B.ar5=new A.J(!1,null,null,null,null,null,15,B.K,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense titleSmall 2014",null,null,null,null) +B.as3=new A.J(!1,null,null,null,null,null,15,B.K,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense bodyLarge 2014",null,null,null,null) +B.arn=new A.J(!1,null,null,null,null,null,15,B.u,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense bodyMedium 2014",null,null,null,null) +B.aqw=new A.J(!1,null,null,null,null,null,13,B.u,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense bodySmall 2014",null,null,null,null) +B.arZ=new A.J(!1,null,null,null,null,null,15,B.K,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense labelLarge 2014",null,null,null,null) +B.aq4=new A.J(!1,null,null,null,null,null,12,B.u,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense labelMedium 2014",null,null,null,null) +B.arQ=new A.J(!1,null,null,null,null,null,11,B.u,null,null,null,B.ay,null,null,null,null,null,null,null,null,null,"dense labelSmall 2014",null,null,null,null) +B.au0=new A.h4(B.aqx,B.atc,B.aqi,B.arP,B.arV,B.ats,B.aq2,B.arI,B.ar5,B.as3,B.arn,B.aqw,B.arZ,B.aq4,B.arQ) +B.aq5=new A.J(!0,B.au,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino displayLarge",null,null,null,null) +B.atd=new A.J(!0,B.au,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino displayMedium",null,null,null,null) +B.aty=new A.J(!0,B.au,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino displaySmall",null,null,null,null) +B.aqZ=new A.J(!0,B.au,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino headlineLarge",null,null,null,null) +B.arS=new A.J(!0,B.au,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino headlineMedium",null,null,null,null) +B.aql=new A.J(!0,B.n,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino headlineSmall",null,null,null,null) +B.ary=new A.J(!0,B.n,null,"CupertinoSystemDisplay",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino titleLarge",null,null,null,null) +B.aqd=new A.J(!0,B.n,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino titleMedium",null,null,null,null) +B.aqW=new A.J(!0,B.n,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino titleSmall",null,null,null,null) +B.aqN=new A.J(!0,B.n,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino bodyLarge",null,null,null,null) +B.ar4=new A.J(!0,B.n,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino bodyMedium",null,null,null,null) +B.asw=new A.J(!0,B.au,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino bodySmall",null,null,null,null) +B.asp=new A.J(!0,B.n,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino labelLarge",null,null,null,null) +B.ar8=new A.J(!0,B.n,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino labelMedium",null,null,null,null) +B.aqq=new A.J(!0,B.n,null,"CupertinoSystemText",null,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"whiteCupertino labelSmall",null,null,null,null) +B.au1=new A.h4(B.aq5,B.atd,B.aty,B.aqZ,B.arS,B.aql,B.ary,B.aqd,B.aqW,B.aqN,B.ar4,B.asw,B.asp,B.ar8,B.aqq) +B.aqg=new A.J(!1,null,null,null,null,null,57,B.u,null,-0.25,null,B.H,1.12,B.a1,null,null,null,null,null,null,null,"englishLike displayLarge 2021",null,null,null,null) +B.arc=new A.J(!1,null,null,null,null,null,45,B.u,null,0,null,B.H,1.16,B.a1,null,null,null,null,null,null,null,"englishLike displayMedium 2021",null,null,null,null) +B.atk=new A.J(!1,null,null,null,null,null,36,B.u,null,0,null,B.H,1.22,B.a1,null,null,null,null,null,null,null,"englishLike displaySmall 2021",null,null,null,null) +B.ast=new A.J(!1,null,null,null,null,null,32,B.u,null,0,null,B.H,1.25,B.a1,null,null,null,null,null,null,null,"englishLike headlineLarge 2021",null,null,null,null) +B.asO=new A.J(!1,null,null,null,null,null,28,B.u,null,0,null,B.H,1.29,B.a1,null,null,null,null,null,null,null,"englishLike headlineMedium 2021",null,null,null,null) +B.aqo=new A.J(!1,null,null,null,null,null,24,B.u,null,0,null,B.H,1.33,B.a1,null,null,null,null,null,null,null,"englishLike headlineSmall 2021",null,null,null,null) +B.as9=new A.J(!1,null,null,null,null,null,22,B.u,null,0,null,B.H,1.27,B.a1,null,null,null,null,null,null,null,"englishLike titleLarge 2021",null,null,null,null) +B.asA=new A.J(!1,null,null,null,null,null,16,B.K,null,0.15,null,B.H,1.5,B.a1,null,null,null,null,null,null,null,"englishLike titleMedium 2021",null,null,null,null) +B.at3=new A.J(!1,null,null,null,null,null,14,B.K,null,0.1,null,B.H,1.43,B.a1,null,null,null,null,null,null,null,"englishLike titleSmall 2021",null,null,null,null) +B.atC=new A.J(!1,null,null,null,null,null,16,B.u,null,0.5,null,B.H,1.5,B.a1,null,null,null,null,null,null,null,"englishLike bodyLarge 2021",null,null,null,null) +B.asn=new A.J(!1,null,null,null,null,null,14,B.u,null,0.25,null,B.H,1.43,B.a1,null,null,null,null,null,null,null,"englishLike bodyMedium 2021",null,null,null,null) +B.atN=new A.J(!1,null,null,null,null,null,12,B.u,null,0.4,null,B.H,1.33,B.a1,null,null,null,null,null,null,null,"englishLike bodySmall 2021",null,null,null,null) +B.ari=new A.J(!1,null,null,null,null,null,14,B.K,null,0.1,null,B.H,1.43,B.a1,null,null,null,null,null,null,null,"englishLike labelLarge 2021",null,null,null,null) +B.aqb=new A.J(!1,null,null,null,null,null,12,B.K,null,0.5,null,B.H,1.33,B.a1,null,null,null,null,null,null,null,"englishLike labelMedium 2021",null,null,null,null) +B.arx=new A.J(!1,null,null,null,null,null,11,B.K,null,0.5,null,B.H,1.45,B.a1,null,null,null,null,null,null,null,"englishLike labelSmall 2021",null,null,null,null) +B.au2=new A.h4(B.aqg,B.arc,B.atk,B.ast,B.asO,B.aqo,B.as9,B.asA,B.at3,B.atC,B.asn,B.atN,B.ari,B.aqb,B.arx) +B.atv=new A.J(!0,B.ab,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki displayLarge",null,null,null,null) +B.aqt=new A.J(!0,B.ab,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki displayMedium",null,null,null,null) +B.arp=new A.J(!0,B.ab,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki displaySmall",null,null,null,null) +B.asr=new A.J(!0,B.ab,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki headlineLarge",null,null,null,null) +B.asH=new A.J(!0,B.ab,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki headlineMedium",null,null,null,null) +B.apU=new A.J(!0,B.ai,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki headlineSmall",null,null,null,null) +B.aqY=new A.J(!0,B.ai,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki titleLarge",null,null,null,null) +B.aq_=new A.J(!0,B.ai,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki titleMedium",null,null,null,null) +B.as8=new A.J(!0,B.v,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki titleSmall",null,null,null,null) +B.asU=new A.J(!0,B.ai,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki bodyLarge",null,null,null,null) +B.arv=new A.J(!0,B.ai,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki bodyMedium",null,null,null,null) +B.asV=new A.J(!0,B.ab,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki bodySmall",null,null,null,null) +B.at5=new A.J(!0,B.ai,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki labelLarge",null,null,null,null) +B.ass=new A.J(!0,B.v,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki labelMedium",null,null,null,null) +B.asF=new A.J(!0,B.v,null,"Roboto",B.aC,null,null,null,null,null,null,null,null,null,null,null,null,B.m,null,null,null,"blackHelsinki labelSmall",null,null,null,null) +B.au3=new A.h4(B.atv,B.aqt,B.arp,B.asr,B.asH,B.apU,B.aqY,B.aq_,B.as8,B.asU,B.arv,B.asV,B.at5,B.ass,B.asF) +B.asB=new A.J(!1,null,null,null,null,null,57,B.u,null,-0.25,null,B.H,1.12,B.a1,null,null,null,null,null,null,null,"tall displayLarge 2021",null,null,null,null) +B.aqP=new A.J(!1,null,null,null,null,null,45,B.u,null,0,null,B.H,1.16,B.a1,null,null,null,null,null,null,null,"tall displayMedium 2021",null,null,null,null) +B.asN=new A.J(!1,null,null,null,null,null,36,B.u,null,0,null,B.H,1.22,B.a1,null,null,null,null,null,null,null,"tall displaySmall 2021",null,null,null,null) +B.aq9=new A.J(!1,null,null,null,null,null,32,B.u,null,0,null,B.H,1.25,B.a1,null,null,null,null,null,null,null,"tall headlineLarge 2021",null,null,null,null) +B.atx=new A.J(!1,null,null,null,null,null,28,B.u,null,0,null,B.H,1.29,B.a1,null,null,null,null,null,null,null,"tall headlineMedium 2021",null,null,null,null) +B.aqB=new A.J(!1,null,null,null,null,null,24,B.u,null,0,null,B.H,1.33,B.a1,null,null,null,null,null,null,null,"tall headlineSmall 2021",null,null,null,null) +B.apV=new A.J(!1,null,null,null,null,null,22,B.u,null,0,null,B.H,1.27,B.a1,null,null,null,null,null,null,null,"tall titleLarge 2021",null,null,null,null) +B.aqC=new A.J(!1,null,null,null,null,null,16,B.K,null,0.15,null,B.H,1.5,B.a1,null,null,null,null,null,null,null,"tall titleMedium 2021",null,null,null,null) +B.aqV=new A.J(!1,null,null,null,null,null,14,B.K,null,0.1,null,B.H,1.43,B.a1,null,null,null,null,null,null,null,"tall titleSmall 2021",null,null,null,null) +B.arw=new A.J(!1,null,null,null,null,null,16,B.u,null,0.5,null,B.H,1.5,B.a1,null,null,null,null,null,null,null,"tall bodyLarge 2021",null,null,null,null) +B.asb=new A.J(!1,null,null,null,null,null,14,B.u,null,0.25,null,B.H,1.43,B.a1,null,null,null,null,null,null,null,"tall bodyMedium 2021",null,null,null,null) +B.aqX=new A.J(!1,null,null,null,null,null,12,B.u,null,0.4,null,B.H,1.33,B.a1,null,null,null,null,null,null,null,"tall bodySmall 2021",null,null,null,null) +B.ar0=new A.J(!1,null,null,null,null,null,14,B.K,null,0.1,null,B.H,1.43,B.a1,null,null,null,null,null,null,null,"tall labelLarge 2021",null,null,null,null) +B.ask=new A.J(!1,null,null,null,null,null,12,B.K,null,0.5,null,B.H,1.33,B.a1,null,null,null,null,null,null,null,"tall labelMedium 2021",null,null,null,null) +B.aqz=new A.J(!1,null,null,null,null,null,11,B.K,null,0.5,null,B.H,1.45,B.a1,null,null,null,null,null,null,null,"tall labelSmall 2021",null,null,null,null) +B.au4=new A.h4(B.asB,B.aqP,B.asN,B.aq9,B.atx,B.aqB,B.apV,B.aqC,B.aqV,B.arw,B.asb,B.aqX,B.ar0,B.ask,B.aqz) +B.au5=new A.fs("\u5ef6\u65f6\u6444\u5f71",null,null,null,null,null,null,null,null,null) +B.au6=new A.fs("Go to TestDownloadFile",null,null,null,null,null,null,null,null,null) +B.au7=new A.fs("Go to DeviceControl",null,null,null,null,null,null,null,null,null) +B.au8=new A.fs("Go to TestPrintUploadTask",null,null,null,null,null,null,null,null,null) +B.au9=new A.fs("Go to PreUploadAndPrint",null,null,null,null,null,null,null,null,null) +B.aua=new A.fs("\u8017\u6750\u914d\u7f6e\u5185\u5bb9\uff08\u8bf7\u6839\u636e\u5b9e\u9645\u63a5\u53e3\u5b8c\u5584\uff09",null,null,null,null,null,null,null,null,null) +B.aub=new A.fs("\u6b63\u5728\u4e0a\u4f20...",null,null,null,null,null,null,null,null,null) +B.auc=new A.fs("Go to Home",null,null,null,null,null,null,null,null,null) +B.aud=new A.fs("\u91cd\u8bd5",null,null,null,null,null,null,null,null,null) +B.aue=new A.fs("\u4e0b\u8f7d\u6587\u4ef6",null,null,null,null,null,null,null,null,null) +B.auf=new A.fs("\u81ea\u52a8\u8c03\u5e73",null,null,null,null,null,null,null,null,null) +B.aug=new A.fs("\u914d\u7f6e\u8017\u6750",null,null,null,null,null,null,null,null,null) +B.aui=new A.fs("Go to DeviceControlOld",null,null,null,null,null,null,null,null,null) +B.auj=new A.fs("\u53d1\u8d77\u6253\u5370",null,null,null,null,null,null,null,null,null) +B.auk=new A.fs("Go to PreUpload",null,null,null,null,null,null,null,null,null) +B.nH=new A.fs("",null,null,null,null,null,null,null,null,null) +B.aul=new A.fs("\u6324\u51fa\u6d41\u91cf\u6821\u51c6",null,null,null,null,null,null,null,null,null) +B.Pl=new A.P0(0,"system") +B.aum=new A.P0(1,"light") +B.Pm=new A.P0(2,"dark") +B.aje=new A.z(0.05,0) +B.ajf=new A.z(0.133333,0.06) +B.aj0=new A.z(0.166666,0.4) +B.aj7=new A.z(0.208333,0.82) +B.aja=new A.z(0.25,1) +B.aun=new A.P2(B.aje,B.ajf,B.aj0,B.aj7,B.aja) +B.ajn=new A.z(0.056,0.024) +B.aj5=new A.z(0.108,0.3085) +B.aj9=new A.z(0.198,0.541) +B.aj3=new A.z(0.3655,1) +B.aj1=new A.z(0.5465,0.989) +B.Pn=new A.P2(B.ajn,B.aj5,B.aj9,B.aj3,B.aj1) +B.k8=new A.P3(0) +B.auo=new A.P3(0.5) +B.aup=new A.P4(null) +B.tC=new A.P5(0,"clamp") +B.auq=new A.P5(1,"repeated") +B.aur=new A.P5(2,"mirror") +B.aus=new A.P6(null) +B.aut=new A.P7(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.auu=new A.P9(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null) +B.auv=new A.Pb(0.01,1/0) +B.dx=new A.Pb(0.001,0.001) +B.auw=new A.Pc(0,"darker") +B.fD=new A.Pc(1,"lighter") +B.e_=new A.Pc(2,"nearer") +B.Po=new A.Pf(!1,!1,!1,!1) +B.aux=new A.Pf(!0,!1,!1,!0) +B.auy=new A.Pf(!0,!0,!0,!0) +B.auz=new A.Pg(null,null,null,null,null,null,null,null,null) +B.Pp=new A.Ph(0,"identity") +B.Pq=new A.Ph(1,"transform2d") +B.nI=new A.Ph(2,"complex") +B.Pr=new A.v4(1,"right") +B.tE=new A.v4(3,"left") +B.Ps=new A.a9N(0,"closedLoop") +B.auA=new A.a9N(1,"leaveFlutterView") +B.auB=A.bz("wN") +B.nK=A.bz("lk") +B.auC=A.bz("wM") +B.auD=A.bz("pT") +B.nL=A.bz("apr") +B.tF=A.bz("ard") +B.auE=A.bz("bkZ") +B.Pt=A.bz("d9") +B.auF=A.bz("o7") +B.auG=A.bz("aJ") +B.auH=A.bz("wu") +B.auI=A.bz("wv") +B.auJ=A.bz("tq") +B.tG=A.bz("k3") +B.auK=A.bz("mG") +B.kb=A.bz("B2") +B.auL=A.bz("tt") +B.auM=A.bz("ayo") +B.auN=A.bz("azj") +B.auO=A.bz("azk") +B.auP=A.bz("mR") +B.auQ=A.bz("aCP") +B.auR=A.bz("aCQ") +B.auS=A.bz("bJz") +B.auT=A.bz("aCR") +B.auU=A.bz("aj") +B.auV=A.bz("bG>") +B.auW=A.bz("lR") +B.tH=A.bz("mY") +B.tI=A.bz("bu6") +B.bu=A.bz("aE") +B.auY=A.bz("pU") +B.auX=A.bz("pW") +B.auZ=A.bz("O") +B.av_=A.bz("xS") +B.nM=A.bz("n8") +B.av0=A.bz("oE") +B.av1=A.bz("ui") +B.tJ=A.bz("kM") +B.av2=A.bz("pV") +B.av3=A.bz("y9") +B.av4=A.bz("uw") +B.av5=A.bz("nd") +B.av6=A.bz("ng") +B.av7=A.bz("nh") +B.av8=A.bz("qS") +B.av9=A.bz("uK") +B.ava=A.bz("yG") +B.nN=A.bz("h") +B.avb=A.bz("oW") +B.tK=A.bz("kj") +B.avc=A.bz("v3") +B.avd=A.bz("aV5") +B.ave=A.bz("aV6") +B.avf=A.bz("aV7") +B.tL=A.bz("cc") +B.avg=A.bz("v6") +B.avh=A.bz("mb") +B.avi=A.bz("aai") +B.avj=A.bz("aI") +B.avk=A.bz("ww") +B.avl=A.bz("wJ") +B.avm=A.bz("qQ") +B.avn=A.bz("nC") +B.avo=A.bz("Ex") +B.avp=A.bz("mk<@>") +B.avq=A.bz("pc") +B.avr=A.bz("vp") +B.avs=A.bz("oV") +B.tM=A.bz("@") +B.avt=A.bz("IF") +B.avu=A.bz("tu") +B.avv=A.bz("pX") +B.avw=A.bz("kI") +B.avx=A.bz("vM") +B.avy=A.bz("qv") +B.avz=A.bz("wI") +B.RA=new A.br(B.v,1,B.I,-1) +B.avA=new A.jK(B.fS,B.RA) +B.avB=new A.a9Q(0,"undo") +B.avC=new A.a9Q(1,"redo") +B.avD=new A.Ef(!1,!1) +B.avE=new A.a9S(0,"scope") +B.tN=new A.a9S(1,"previouslyFocusedChild") +B.avF=new A.ex(11264,55297,B.i,t.O) +B.avG=new A.ex(1425,1775,B.ae,t.O) +B.avH=new A.ex(1786,2303,B.ae,t.O) +B.avI=new A.ex(192,214,B.i,t.O) +B.avJ=new A.ex(216,246,B.i,t.O) +B.avK=new A.ex(2304,8191,B.i,t.O) +B.avL=new A.ex(248,696,B.i,t.O) +B.avM=new A.ex(55298,55299,B.ae,t.O) +B.avN=new A.ex(55300,55353,B.i,t.O) +B.avO=new A.ex(55354,55355,B.ae,t.O) +B.avP=new A.ex(55356,56319,B.i,t.O) +B.avQ=new A.ex(63744,64284,B.i,t.O) +B.avR=new A.ex(64285,65023,B.ae,t.O) +B.avS=new A.ex(65024,65135,B.i,t.O) +B.avT=new A.ex(65136,65276,B.ae,t.O) +B.avU=new A.ex(65277,65535,B.i,t.O) +B.avV=new A.ex(65,90,B.i,t.O) +B.avW=new A.ex(768,1424,B.i,t.O) +B.avX=new A.ex(8206,8206,B.i,t.O) +B.avY=new A.ex(8207,8207,B.ae,t.O) +B.avZ=new A.ex(97,122,B.i,t.O) +B.aw_=new A.Pl(0,"idle") +B.Pu=new A.Pl(1,"uploading") +B.Pv=new A.Pl(2,"success") +B.eA=new A.Pn(!1) +B.aw8=new A.Pn(!0) +B.Pw=new A.Pp(null) +B.aw9=new A.aa0(0,"nonStrict") +B.awa=new A.aa0(1,"strictRFC4122") +B.awc=new A.eK("dismissible",t.kK) +B.bb=new A.nw(0,"monochrome") +B.awd=new A.nw(1,"neutral") +B.awe=new A.nw(2,"tonalSpot") +B.awf=new A.nw(3,"vibrant") +B.awg=new A.nw(4,"expressive") +B.fE=new A.nw(5,"content") +B.fF=new A.nw(6,"fidelity") +B.awh=new A.nw(7,"rainbow") +B.awi=new A.nw(8,"fruitSalad") +B.Py=new A.v8(B.j,0,B.F,B.j) +B.tP=new A.v8(B.j,1,B.F,B.j) +B.tQ=new A.aa5(0,"triangles") +B.awj=new A.aa5(2,"triangleFan") +B.awk=new A.Ps(null) +B.Pz=new A.aa9(1,"forward") +B.awl=new A.aa9(2,"backward") +B.awm=new A.aVI(1,"focused") +B.kc=new A.rd(0,0) +B.awn=new A.rd(-2,-2) +B.tR=new A.Px(0,"mqtt") +B.ib=new A.Px(1,"mqtts") +B.e0=new A.Px(2,"mqttsConnected") +B.e1=new A.bx(0,"startMachineFind") +B.awo=new A.bx(11,"getConnectedMachine") +B.awp=new A.bx(12,"getPrinterInfo") +B.awq=new A.bx(13,"getMachineSystemInfo") +B.awr=new A.bx(14,"sendGCodes") +B.aws=new A.bx(16,"matchinePrintStart") +B.awt=new A.bx(17,"matchinePrintPause") +B.awu=new A.bx(18,"matchinePrintResume") +B.awv=new A.bx(19,"matchinePrintCancel") +B.aww=new A.bx(20,"machineFilesRoots") +B.awx=new A.bx(21,"machineFilesMetadata") +B.awy=new A.bx(22,"machineFilesThumbnails") +B.awz=new A.bx(23,"machineFilesGetDirectory") +B.awA=new A.bx(24,"cameraStartMonitor") +B.awB=new A.bx(25,"cameraStopMonitor") +B.awC=new A.bx(26,"getFileFilamentMapping") +B.awD=new A.bx(27,"setFilamentMappingComplete") +B.awE=new A.bx(28,"finishFilamentMapping") +B.awF=new A.bx(3,"disconnectMachine") +B.awG=new A.bx(32,"filesGetStatus") +B.awH=new A.bx(33,"systemDeviceInfo") +B.awI=new A.bx(34,"startCloudPrint") +B.awJ=new A.bx(35,"pullCloudFile") +B.awK=new A.bx(36,"cancelPullCloudFile") +B.awL=new A.bx(37,"userLogin") +B.awM=new A.bx(38,"userLogout") +B.kd=new A.bx(39,"subscribeUserLoginState") +B.awN=new A.bx(4,"stopMachineFind") +B.awO=new A.bx(40,"getUserLoginState") +B.awP=new A.bx(41,"createProject") +B.awQ=new A.bx(42,"openProject") +B.awR=new A.bx(43,"getRecentProjects") +B.awS=new A.bx(44,"openRecentFile") +B.awT=new A.bx(45,"deleteRecentFiles") +B.ke=new A.bx(46,"subscribeRecentFiles") +B.awU=new A.bx(47,"getLocalDevices") +B.kf=new A.bx(49,"subscribeLocalDevices") +B.awV=new A.bx(5,"getMachinState") +B.awW=new A.bx(50,"renameDevice") +B.awX=new A.bx(52,"deleteDevices") +B.awY=new A.bx(56,"getActiveFile") +B.awZ=new A.bx(57,"switchTab") +B.nO=new A.bx(6,"subscribeMachineState") +B.ax_=new A.bx(60,"setCache") +B.ax0=new A.bx(61,"getCache") +B.ax1=new A.bx(63,"updateMachineFilamentInfo") +B.PA=new A.bx(64,"subscribeCacheKey") +B.ax2=new A.bx(69,"writeFileLog") +B.ax3=new A.bx(7,"unSubscribeMachineState") +B.ax4=new A.bx(70,"createMqttClient") +B.ax5=new A.bx(71,"mqttConnect") +B.ax6=new A.bx(72,"mqttDisconnect") +B.tS=new A.bx(73,"mqttSubscribe") +B.ax7=new A.bx(75,"mqttPublish") +B.ax8=new A.bx(76,"mqttSetEngine") +B.ax9=new A.bx(77,"setDeviceName") +B.axa=new A.bx(78,"setControlLed") +B.axb=new A.bx(79,"setControlPrintSpeed") +B.axc=new A.bx(8,"getMachineObjects") +B.axd=new A.bx(80,"setBedMeshAbortProbeMesh") +B.axe=new A.bx(81,"setControlPurifier") +B.axf=new A.bx(82,"setControlMainFan") +B.axg=new A.bx(83,"setControlGenericFan") +B.axh=new A.bx(84,"setControlBedTemp") +B.axi=new A.bx(85,"setControlExtruderTemp") +B.axj=new A.bx(86,"setFilesThumbnailsBase64") +B.axk=new A.bx(87,"setExceptionQuery") +B.axl=new A.bx(88,"getFileListPage") +B.tT=new A.bx(89,"subscribeApplicationLifecycle") +B.axm=new A.bx(9,"setSubscribeFilter") +B.axn=new A.bx(90,"webviewUnsubscribe") +B.axo=new A.bx(92,"uploadCameraTimelapse") +B.axp=new A.bx(93,"deleteCameraTimelapse") +B.axq=new A.bx(94,"serverClientManagerSetUserinfo") +B.axr=new A.bx(95,"exit") +B.cM=new A.Eo(0,"debug") +B.eC=new A.Eo(1,"info") +B.az=new A.Eo(2,"warning") +B.Q=new A.Eo(3,"error") +B.kg=new A.z8(0,"notConnected") +B.PB=new A.z8(1,"modeNotAvailable") +B.nP=new A.z8(2,"authorizing") +B.fG=new A.z8(3,"notAuthorized") +B.kh=new A.z8(4,"authorized") +B.fH=new A.re(0,"connected") +B.ki=new A.aak(0,"connected") +B.tU=new A.re(1,"disconnected") +B.kj=new A.aak(1,"disconnected") +B.axs=new A.re(2,"connecting") +B.axt=new A.re(3,"disconnecting") +B.ic=new A.bK(0,t.XR) +B.axu=new A.bK(2,t.XR) +B.nQ=new A.bK(24,t.XR) +B.fI=new A.bK(B.OV,t.li) +B.an5=new A.R(1/0,1/0) +B.fJ=new A.bK(B.an5,t.W7) +B.bO=new A.bK(B.t,t.De) +B.PC=new A.bK(B.t,t.rc) +B.axv=new A.bK(B.n,t.De) +B.nR=new A.bK(B.Ox,t.W7) +B.anf=new A.R(64,40) +B.tV=new A.bK(B.anf,t.W7) +B.nS=new A.bK(B.j5,t.mD) +B.fK=new A.dq(3,"dragged") +B.tW=new A.dq(5,"scrolledUnder") +B.L=new A.dq(6,"disabled") +B.cN=new A.dq(7,"error") +B.axw=new A.aav(B.i) +B.axx=new A.aaw(B.i) +B.axy=new A.aax(B.ae) +B.axz=new A.aay(B.i) +B.axA=new A.aaz(B.i) +B.axB=new A.aaA(B.i) +B.axC=new A.aaB(B.i) +B.axD=new A.aaC(B.i) +B.axE=new A.aaD(B.i) +B.axF=new A.aaE(B.i) +B.axG=new A.aaF(B.i) +B.axH=new A.aaG(B.i) +B.axI=new A.aaH(B.i) +B.axJ=new A.aaI(B.i) +B.axK=new A.PE(B.i) +B.axL=new A.aaJ(B.i) +B.axM=new A.aaK(B.i) +B.axN=new A.aaL(B.i) +B.axO=new A.aaM(B.i) +B.axP=new A.aaN(B.i) +B.axQ=new A.aaO(B.i) +B.axR=new A.aaP(B.i) +B.axS=new A.aaQ(B.i) +B.axT=new A.aaR(B.i) +B.axU=new A.PF(B.i) +B.axV=new A.aaS(B.i) +B.axW=new A.aaT(B.i) +B.axX=new A.aaU(B.i) +B.axY=new A.aaV(B.i) +B.axZ=new A.aaW(B.i) +B.ay_=new A.aaX(B.i) +B.ay0=new A.aaY(B.i) +B.ay1=new A.aaZ(B.i) +B.ay2=new A.ab_(B.i) +B.ay3=new A.ab0(B.i) +B.ay4=new A.ab1(B.i) +B.ay5=new A.ab2(B.i) +B.ay6=new A.ab3(B.i) +B.ay7=new A.ab4(B.i) +B.ay8=new A.ab5(B.i) +B.ay9=new A.ab6(B.i) +B.aya=new A.ab7(B.i) +B.ayb=new A.ab8(B.i) +B.ayc=new A.ab9(B.i) +B.ayd=new A.aba(B.i) +B.aye=new A.PG(B.i) +B.ayf=new A.abb(B.i) +B.ayg=new A.abc(B.i) +B.ayh=new A.abd(B.ae) +B.ayi=new A.abe(B.i) +B.ayj=new A.abf(B.i) +B.ayk=new A.abg(B.i) +B.ayl=new A.PH(B.i) +B.aym=new A.abh(B.i) +B.ayn=new A.abi(B.i) +B.ayo=new A.abj(B.i) +B.ayp=new A.abk(B.ae) +B.ayq=new A.abl(B.i) +B.ayr=new A.abm(B.i) +B.ays=new A.abn(B.i) +B.ayt=new A.abo(B.i) +B.ayu=new A.abp(B.i) +B.ayv=new A.abq(B.i) +B.ayw=new A.abr(B.i) +B.ayx=new A.abs(B.i) +B.ayy=new A.abt(B.i) +B.ayz=new A.abu(B.i) +B.ayA=new A.abv(B.i) +B.ayB=new A.abw(B.i) +B.ayC=new A.abx(B.i) +B.ayD=new A.aby(B.i) +B.ayE=new A.abz(B.i) +B.ayF=new A.abA(B.i) +B.ayG=new A.abB(B.i) +B.ayH=new A.abC(B.i) +B.ayI=new A.abD(B.i) +B.ayJ=new A.abE(B.i) +B.ayK=new A.abF(B.i) +B.ayL=new A.abG(B.i) +B.ayM=new A.abH(B.i) +B.ayN=new A.abI(B.i) +B.ayO=new A.abJ(B.i) +B.ayP=new A.abK(B.i) +B.ayQ=new A.abL(B.i) +B.ayR=new A.abM(B.i) +B.ayS=new A.abN(B.i) +B.ayT=new A.abO(B.i) +B.ayU=new A.abP(B.ae) +B.ayV=new A.abQ(B.i) +B.ayW=new A.PI(B.i) +B.ayX=new A.abR(B.i) +B.ayY=new A.abS(B.i) +B.ayZ=new A.abT(B.i) +B.az_=new A.abU(B.i) +B.az0=new A.abV(B.i) +B.az1=new A.abW(B.i) +B.az2=new A.abX(B.i) +B.az3=new A.abY(B.i) +B.az4=new A.PJ(B.i) +B.az5=new A.abZ(B.i) +B.az6=new A.ac_(B.i) +B.az7=new A.ac0(B.i) +B.az8=new A.ac1(B.i) +B.az9=new A.ac2(B.i) +B.aza=new A.ac3(B.i) +B.azb=new A.ac4(B.i) +B.azc=new A.ac5(B.i) +B.azd=new A.ac6(B.ae) +B.aze=new A.ac7(B.i) +B.azf=new A.ac8(B.i) +B.azg=new A.ac9(B.i) +B.PD=new A.aca(B.i) +B.PE=new A.acb(B.i) +B.azh=new A.PL(B.i) +B.azi=new A.PK(B.i) +B.azj=new A.acc(B.i) +B.dy=new A.vb(0,"start") +B.azl=new A.vb(1,"end") +B.azm=new A.vb(2,"center") +B.azn=new A.vb(3,"spaceBetween") +B.azo=new A.vb(4,"spaceAround") +B.azp=new A.vb(5,"spaceEvenly") +B.ie=new A.PN(0,"start") +B.azq=new A.PN(1,"end") +B.azr=new A.PN(2,"center") +B.azs=new A.eV("'",0,"SINGLE_QUOTE") +B.azt=new A.rf(1,"CDATA") +B.azu=new A.rf(10,"PROCESSING") +B.azv=new A.rf(11,"TEXT") +B.azw=new A.rf(2,"COMMENT") +B.azx=new A.rf(3,"DECLARATION") +B.azy=new A.rf(4,"DOCUMENT_TYPE") +B.PG=new A.rf(7,"ELEMENT") +B.b5=new A.Ew(0,"forward") +B.kp=new A.Ew(1,"reverse") +B.u2=new A.acT(0,"top") +B.PJ=new A.acT(1,"bottom") +B.aBz=new A.aZW(0,"elevated") +B.azB=new A.Qj(0,"checkbox") +B.azC=new A.Qj(1,"radio") +B.azD=new A.Qj(2,"toggle") +B.aBA=new A.b_6(0,"material") +B.azE=new A.Qm(0,"inside") +B.azF=new A.Qm(1,"higher") +B.azG=new A.Qm(2,"lower") +B.XX=new A.A(67108864) +B.a68=A.a(s([B.XX,B.t]),t.t_) +B.azH=new A.nF(B.a68) +B.azI=new A.nF(null) +B.u3=new A.zg(0,"backButton") +B.u4=new A.zg(1,"nextButton") +B.azK=new A.p2(0,"size") +B.PO=new A.p2(1,"images") +B.PP=new A.p2(2,"shaders") +B.PQ=new A.p2(3,"paints") +B.azL=new A.p2(4,"paths") +B.azM=new A.p2(5,"textPositions") +B.azN=new A.p2(6,"text") +B.dz=new A.p2(7,"commands") +B.ig=new A.aeV(0,"horizontal") +B.ih=new A.aeV(1,"vertical") +B.e4=new A.QV(0,"ready") +B.kq=new A.QW(0,"ready") +B.PR=new A.QV(1,"possible") +B.u6=new A.QW(1,"possible") +B.kr=new A.QV(2,"accepted") +B.ii=new A.QW(2,"accepted") +B.aA=new A.EY(0,"initial") +B.fL=new A.EY(1,"active") +B.azS=new A.EY(2,"inactive") +B.PS=new A.EY(3,"defunct") +B.eD=new A.Rd(B.dt,"clickable") +B.azZ=new A.Rd(B.OZ,"textable") +B.aA_=new A.afy(1,0,"forward") +B.aA0=new A.afy(-1,1,"backward") +B.u7=new A.Rp(0,"none") +B.aA1=new A.Rp(1,"forward") +B.aA2=new A.Rp(2,"reverse") +B.u8=new A.zk(0,"ready") +B.nW=new A.zk(1,"possible") +B.PT=new A.zk(2,"accepted") +B.nX=new A.zk(3,"started") +B.aA3=new A.zk(4,"peaked") +B.nY=new A.F7(0,"idle") +B.aA4=new A.F7(1,"absorb") +B.nZ=new A.F7(2,"pull") +B.PU=new A.F7(3,"recede") +B.fM=new A.vo(0,"pressed") +B.ij=new A.vo(1,"hover") +B.PV=new A.vo(2,"focus") +B.aA5=new A.b7w(0,"standard") +B.aBB=new A.b89(0,"material") +B.bh=new A.zn(0,"minWidth") +B.aM=new A.zn(1,"maxWidth") +B.bi=new A.zn(2,"minHeight") +B.bC=new A.zn(3,"maxHeight") +B.aB=new A.mj(1) +B.fO=new A.hU(0,"size") +B.PW=new A.hU(1,"orientation") +B.o_=new A.hU(11,"accessibleNavigation") +B.aAh=new A.hU(12,"invertColors") +B.PX=new A.hU(13,"highContrast") +B.o0=new A.hU(16,"boldText") +B.ik=new A.hU(17,"navigationMode") +B.o1=new A.hU(18,"gestureSettings") +B.e7=new A.hU(2,"devicePixelRatio") +B.cP=new A.hU(4,"textScaler") +B.u9=new A.hU(5,"platformBrightness") +B.cQ=new A.hU(6,"padding") +B.o2=new A.hU(7,"viewInsets") +B.aAi=new A.hU(9,"viewPadding") +B.aAj=new A.b9W(0,"value") +B.PY=new A.vu(1/0,1/0,1/0,1/0,1/0,1/0) +B.aAk=new A.eW(B.hJ,B.hp) +B.lD=new A.xn(1,"left") +B.aAl=new A.eW(B.hJ,B.lD) +B.lE=new A.xn(2,"right") +B.aAm=new A.eW(B.hJ,B.lE) +B.aAn=new A.eW(B.hJ,B.dP) +B.aAo=new A.eW(B.hK,B.hp) +B.aAp=new A.eW(B.hK,B.lD) +B.aAq=new A.eW(B.hK,B.lE) +B.aAr=new A.eW(B.hK,B.dP) +B.aAs=new A.eW(B.hL,B.hp) +B.aAt=new A.eW(B.hL,B.lD) +B.aAu=new A.eW(B.hL,B.lE) +B.aAv=new A.eW(B.hL,B.dP) +B.aAw=new A.eW(B.hM,B.hp) +B.aAx=new A.eW(B.hM,B.lD) +B.aAy=new A.eW(B.hM,B.lE) +B.aAz=new A.eW(B.hM,B.dP) +B.aAA=new A.eW(B.qz,B.dP) +B.aAB=new A.eW(B.qA,B.dP) +B.aAC=new A.eW(B.qB,B.dP) +B.aAD=new A.eW(B.qC,B.dP) +B.aAF=new A.ahz(null) +B.aAE=new A.ahB(null) +B.il=new A.dM(0,0) +B.aAI=new A.Sy(0,"none") +B.aAJ=new A.Sy(1,"static") +B.PZ=new A.Sy(2,"progress") +B.aAK=new A.FB(null,null,null,null,!0) +B.acF=A.a(s([B.aAK]),t.Rm) +B.Q_=new A.aiE(B.acF) +B.fP=new A.vC(0,"drag") +B.fQ=new A.vC(1,"armed") +B.ua=new A.vC(2,"snap") +B.o3=new A.vC(3,"refresh") +B.ub=new A.vC(4,"done") +B.o4=new A.vC(5,"canceled") +B.uc=new A.j5(1,"add") +B.Q0=new A.j5(10,"remove") +B.aAL=new A.j5(11,"popping") +B.aAM=new A.j5(12,"removing") +B.ud=new A.j5(13,"dispose") +B.aAN=new A.j5(14,"disposing") +B.o5=new A.j5(15,"disposed") +B.aAO=new A.j5(2,"adding") +B.Q1=new A.j5(3,"push") +B.Q2=new A.j5(4,"pushReplace") +B.Q3=new A.j5(5,"pushing") +B.aAP=new A.j5(6,"replace") +B.ks=new A.j5(7,"idle") +B.aAQ=new A.j5(8,"pop") +B.o6=new A.ks(0,"body") +B.o7=new A.ks(1,"appBar") +B.uf=new A.ks(10,"endDrawer") +B.o8=new A.ks(11,"statusBar") +B.o9=new A.ks(2,"bodyScrim") +B.oa=new A.ks(3,"bottomSheet") +B.im=new A.ks(4,"snackBar") +B.ob=new A.ks(5,"materialBanner") +B.ug=new A.ks(6,"persistentFooter") +B.oc=new A.ks(7,"bottomNavigationBar") +B.od=new A.ks(8,"floatingActionButton") +B.uh=new A.ks(9,"drawer") +B.kt=new A.FM(0,"ready") +B.ku=new A.FM(1,"possible") +B.Q5=new A.FM(2,"accepted") +B.oe=new A.FM(3,"started") +B.aAR=new A.rt(B.V,B.ax,B.hY,null,null) +B.an7=new A.R(100,0) +B.aAS=new A.rt(B.an7,B.ax,B.hY,null,null) +B.aBC=new A.bdP(0,"material") +B.ui=new A.TJ(0,"open") +B.Q6=new A.TJ(1,"waitingForData") +B.Q7=new A.TJ(2,"closing") +B.uj=new A.akQ(0,"trailing") +B.Q8=new A.akQ(1,"leading") +B.uk=new A.FZ(0,"idle") +B.aAX=new A.FZ(1,"absorb") +B.ul=new A.FZ(2,"pull") +B.um=new A.FZ(3,"recede") +B.aBD=new A.ber(0,"material") +B.aAY=new A.al1(0,"material") +B.aAZ=new A.al1(1,"adaptive") +B.Q9=new A.G3(0,"first") +B.aB_=new A.G3(1,"middle") +B.Qa=new A.G3(2,"last") +B.un=new A.G3(3,"only") +B.aB0=new A.U2(B.l9,B.iR) +B.of=new A.U8(0,"leading") +B.og=new A.U8(1,"middle") +B.oh=new A.U8(2,"trailing") +B.aB1=new A.alP(0,"minimize") +B.aB2=new A.alP(1,"maximize") +B.Qb=new A.Uz(0,"inSpace") +B.Qc=new A.Uz(1,"inWord") +B.Qd=new A.Uz(2,"atBreak") +B.aB3=new A.amL(B.aO,A.bUO())})();(function staticFields(){$.hV=null +$.bFQ=A.bu("_instance") +$.byn=null +$.bzI=0 +$.ms=A.a([],t.kZ) +$.bmj=A.a([],t.no) +$.btf=0 +$.bte=0 +$.bwb=0 +$.bho=0 +$.rK=A.a([],A.ar("E")) +$.bjJ=A.a([],t.nx) +$.lq=null +$.bJl=A.bu("_instance") +$.qM=null +$.aT8=null +$.bwV=null +$.bwW=null +$.bpI=A.a([],t.cD) +$.rJ=A.a([],t.qj) +$.Vm=B.wl +$.Gi=null +$.bmC=null +$.bAK=null +$.bAz=null +$.byd=null +$.bxC=0 +$.a6w=null +$.aAP=A.bu("_programCache") +$.bmm=0 +$.bml=0 +$.aAO=null +$.bmn=null +$.buI=null +$.a8l=null +$.cQ=null +$.NE=null +$.byN=null +$.bw_=A.w(A.ar("OR"),A.ar("a9s")) +$.bi2=null +$.byQ=-1 +$.byP=-1 +$.byR="" +$.byO="" +$.byS=-1 +$.aox=A.w(t.N,t.B) +$.byz=null +$.byY=1 +$.ja=null +$.byX=1 +$.boL=A.w(t.S,A.ar("rD")) +$.b8P=null +$.zT=A.a([],t.jl) +$.aoI=null +$.bv4=null +$.aNa=0 +$.y7=A.bTx() +$.brb=null +$.bra=null +$.bzX=null +$.bzm=null +$.bAF=null +$.biI=null +$.bjt=null +$.bpw=null +$.bbE=A.a([],A.ar("E?>")) +$.Gj=null +$.Vn=null +$.Vo=null +$.bp0=!1 +$.ab=B.aO +$.bwK="" +$.bwL=null +$.byE=A.w(t.N,t.xd) +$.bPL=A.w(t.S,A.ar("c1h")) +$.bQw=null +$.bz1=A.w(t.C_,t.B) +$.brE=null +$.blU=null +$.bI1=A.bu("_deviceLocale") +$.xw=null +$.bIB=A.bu("_instance") +$.blE=null +$.oh=A.bUH() +$.bm9=0 +$.bIP=A.a([],A.ar("E")) +$.btZ=null +$.aol=0 +$.bhB=null +$.boR=!1 +$.iq=null +$.boA=!0 +$.boz=!1 +$.yZ=A.a([],A.ar("E")) +$.ix=null +$.oK=null +$.btX=0 +$.cp=null +$.a81=null +$.brR=0 +$.brQ=A.w(t.S,t.I7) +$.blh=A.w(t.I7,t.S) +$.aR3=0 +$.h2=null +$.DS=null +$.bnS=null +$.bwo=1 +$.aw=null +$.pA=null +$.wo=null +$.bxI=1 +$.bnc=-9007199254740992 +$.bJN=A.a([0,0,0],t.t) +$.bJO=A.a([0,0,0,0],t.t) +$.bPU=A.w(t.da,A.ar("a2")) +$.bQg=A.w(t.da,A.ar("a2")) +$.byt=!1 +$.bRE=A.w(t.da,A.ar("a2")) +$.brT=null +$.bli=null +$.atS=null +$.ft=null +$.cC=null +$.bHq=A.bu("contextCustom") +$.bHp=A.bu("contextAttach") +$.blv=A.bu("contextNotify") +$.bsa=A.bu("contextToast") +$.bsb=null +$.bul=null +$.bvx=null +$.au8=null +$.btH=null +$.btG=null +$.bpL="en_US" +$.boS=null +$.eo=0 +$.eL=0 +$.bU_=null +$.fe=0 +$.rH=0 +$.bij=0 +$.ZE=!1 +$.f2=A.bu("config") +$.Wk=null +$.t2=null +$.apS="" +$.br3=null +$.br4="com.snapmaker.lavaapp" +$.apz=A.w(t.N,t.z) +$.bng=A.w(t.N,t.D) +$.aMl=A.w(t.N,t.D) +$.aMk=A.w(t.N,t.D) +$.bnf=null +$.LG=A.w(t.N,A.ar("Xd")) +$.LH=function(){var s=t.N +return A.w(s,s)}() +$.bsj=null +$.LE=null +$.aUO=null +$.pD=null +$.ji=A.w(t.N,t.aB) +$.av6=A.w(t.N,t.a) +$.av7=null +$.asU=A.a([],t.Jg) +$.asW=A.w(t.N,t.Y_) +$.blb=A.a([],t.s) +$.asV=A.w(t.N,t.z) +$.bla=A.w(t.S,t.N) +$.Vw="" +$.ZQ=A.w(t.N,A.ar("yW?")) +$.au6=A.w(t.N,t.y) +$.ZP=A.w(t.N,t.Nw) +$.bxt=A.w(t.N,t.l7) +$.Q2=A.w(t.N,t.D) +$.ad7=0 +$.Q0=A.w(t.N,t.CG) +$.aEm=2 +$.aeB=function(){var s=t.N +return A.w(s,s)}() +$.bmL=A.bn(A.ar("~(a1U)")) +$.bmM=A.bn(A.ar("~(LR)")) +$.bJf=function(){var s=t.n +return A.a([A.a([0.001200833568784504,0.002389694492170889,0.0002795742885861124],s),A.a([0.0005891086651375999,0.0029785502573438758,0.0003270666104008398],s),A.a([0.00010146692491640572,0.0005364214359186694,0.0032979401770712076],s)],t.zg)}() +$.bJd=function(){var s=t.n +return A.a([A.a([1373.2198709594231,-1100.4251190754821,-7.278681089101213],s),A.a([-271.815969077903,559.6580465940733,-32.46047482791194],s),A.a([1.9622899599665666,-57.173814538844006,308.7233197812385],s)],t.zg)}() +$.JK=A.a([0.2126,0.7152,0.0722],t.n) +$.bJb=A.a([0.015176349177441876,0.045529047532325624,0.07588174588720938,0.10623444424209313,0.13658714259697685,0.16693984095186062,0.19729253930674434,0.2276452376616281,0.2579979360165119,0.28835063437139563,0.3188300904430532,0.350925934958123,0.3848314933096426,0.42057480301049466,0.458183274052838,0.4976837250274023,0.5391024159806381,0.5824650784040898,0.6277969426914107,0.6751227633498623,0.7244668422128921,0.775853049866786,0.829304845476233,0.8848452951698498,0.942497089126609,1.0022825574869039,1.0642236851973577,1.1283421258858297,1.1946592148522128,1.2631959812511864,1.3339731595349034,1.407011200216447,1.4823302800086415,1.5599503113873272,1.6398909516233677,1.7221716113234105,1.8068114625156377,1.8938294463134073,1.9832442801866852,2.075074464868551,2.1693382909216234,2.2660538449872063,2.36523901573795,2.4669114995532007,2.5710888059345764,2.6777882626779785,2.7870270208169257,2.898822059350997,3.0131901897720907,3.1301480604002863,3.2497121605402226,3.3718988244681087,3.4967242352587946,3.624204428461639,3.754355295633311,3.887192587735158,4.022731918402185,4.160988767090289,4.301978482107941,4.445716283538092,4.592217266055746,4.741496401646282,4.893568542229298,5.048448422192488,5.20615066083972,5.3666897647573375,5.5300801301023865,5.696336044816294,5.865471690767354,6.037501145825082,6.212438385869475,6.390297286737924,6.571091626112461,6.7548350853498045,6.941541251256611,7.131223617812143,7.323895587840543,7.5195704746346665,7.7182615035334345,7.919981813454504,8.124744458384042,8.332562408825165,8.543448553206703,8.757415699253682,8.974476575321063,9.194643831691977,9.417930041841839,9.644347703669503,9.873909240696694,10.106627003236781,10.342513269534024,10.58158024687427,10.8238400726681,11.069304815507364,11.317986476196008,11.569896988756009,11.825048221409341,12.083451977536606,12.345119996613247,12.610063955123938,12.878295467455942,13.149826086772048,13.42466730586372,13.702830557985108,13.984327217668513,14.269168601521828,14.55736596900856,14.848930523210871,15.143873411576273,15.44220572664832,15.743938506781891,16.04908273684337,16.35764934889634,16.66964922287304,16.985093187232053,17.30399201960269,17.62635644741625,17.95219714852476,18.281524751807332,18.614349837764564,18.95068293910138,19.290534541298456,19.633915083172692,19.98083495742689,20.331304511189067,20.685334046541502,21.042933821039977,21.404114048223256,21.76888489811322,22.137256497705877,22.50923893145328,22.884842241736916,23.264076429332462,23.6469514538663,24.033477234264016,24.42366364919083,24.817520537484558,25.21505769858089,25.61628489293138,26.021211842414342,26.429848230738664,26.842203703840827,27.258287870275353,27.678110301598522,28.10168053274597,28.529008062403893,28.96010235337422,29.39497283293396,29.83362889318845,30.276079891419332,30.722335150426627,31.172403958865512,31.62629557157785,32.08401920991837,32.54558406207592,33.010999283389665,33.4802739966603,33.953417292456834,34.430438229418264,34.911345834551085,35.39614910352207,35.88485700094671,36.37747846067349,36.87402238606382,37.37449765026789,37.87891309649659,38.38727753828926,38.89959975977785,39.41588851594697,39.93615253289054,40.460400508064545,40.98864111053629,41.520882981230194,42.05713473317016,42.597404951718396,43.141702194811224,43.6900349931913,44.24241185063697,44.798841244188324,45.35933162437017,45.92389141541209,46.49252901546552,47.065252796817916,47.64207110610409,48.22299226451468,48.808024568002054,49.3971762874833,49.9904556690408,50.587870934119984,51.189430279724725,51.79514187861014,52.40501387947288,53.0190544071392,53.637271562750364,54.259673423945976,54.88626804504493,55.517063457223934,56.15206766869424,56.79128866487574,57.43473440856916,58.08241284012621,58.734331877617365,59.39049941699807,60.05092333227251,60.715611475655585,61.38457167773311,62.057811747619894,62.7353394731159,63.417162620860914,64.10328893648692,64.79372614476921,65.48848194977529,66.18756403501224,66.89098006357258,67.59873767827808,68.31084450182222,69.02730813691093,69.74813616640164,70.47333615344107,71.20291564160104,71.93688215501312,72.67524319850172,73.41800625771542,74.16517879925733,74.9167682708136,75.67278210128072,76.43322770089146,77.1981124613393,77.96744375590167,78.74122893956174,79.51947534912904,80.30219030335869,81.08938110306934,81.88105503125999,82.67721935322541,83.4778813166706,84.28304815182372,85.09272707154808,85.90692527145302,86.72564993000343,87.54890820862819,88.3767072518277,89.2090541872801,90.04595612594655,90.88742016217518,91.73345337380438,92.58406282226491,93.43925555268066,94.29903859396902,95.16341895893969,96.03240364439274,96.9059996312159,97.78421388448044,98.6670533535366,99.55452497210776],t.n) +$.bvB=A.a([0,21,51,121,151,191,271,321,360],t.n) +$.bN4=A.a([45,95,45,20,45,90,45,45,45],t.n) +$.bN5=A.a([120,120,20,45,20,15,20,120,120],t.n) +$.bvC=A.a([0,41,61,101,131,181,251,301,360],t.n) +$.bN6=A.a([18,15,10,12,15,18,15,12,12],t.n) +$.bN7=A.a([35,30,20,25,30,35,30,25,25],t.n) +$.mz=function(){var s=t.n +return A.a([A.a([0.41233895,0.35762064,0.18051042],s),A.a([0.2126,0.7152,0.0722],s),A.a([0.01932141,0.11916382,0.95034478],s)],t.zg)}() +$.bl2=function(){var s=t.n +return A.a([A.a([3.2413774792388685,-1.5376652402851851,-0.49885366846268053],s),A.a([-0.9691452513005321,1.8758853451067872,0.04156585616912061],s),A.a([0.05562093689691305,-0.20395524564742123,1.0571799111220335],s)],t.zg)}() +$.Ay=A.a([95.047,100,108.883],t.n) +$.bLb=!1 +$.Gg=A.bu("_response") +$.fR=B.rj +$.bxs=A.w(t.N,t.l7) +$.Q1=A.w(t.N,t.D) +$.ad6=0 +$.Q_=A.w(t.N,t.CG) +$.bmN=!1 +$.buO=null +$.bys=null +$.bhA=null +$.big=A.a([99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],t.t) +$.jV=A.a([82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125],t.t) +$.bU1=A.a([1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145],t.t) +$.nP=A.a([1353184337,1399144830,3282310938,2522752826,3412831035,4047871263,2874735276,2466505547,1442459680,4134368941,2440481928,625738485,4242007375,3620416197,2151953702,2409849525,1230680542,1729870373,2551114309,3787521629,41234371,317738113,2744600205,3338261355,3881799427,2510066197,3950669247,3663286933,763608788,3542185048,694804553,1154009486,1787413109,2021232372,1799248025,3715217703,3058688446,397248752,1722556617,3023752829,407560035,2184256229,1613975959,1165972322,3765920945,2226023355,480281086,2485848313,1483229296,436028815,2272059028,3086515026,601060267,3791801202,1468997603,715871590,120122290,63092015,2591802758,2768779219,4068943920,2997206819,3127509762,1552029421,723308426,2461301159,4042393587,2715969870,3455375973,3586000134,526529745,2331944644,2639474228,2689987490,853641733,1978398372,971801355,2867814464,111112542,1360031421,4186579262,1023860118,2919579357,1186850381,3045938321,90031217,1876166148,4279586912,620468249,2548678102,3426959497,2006899047,3175278768,2290845959,945494503,3689859193,1191869601,3910091388,3374220536,0,2206629897,1223502642,2893025566,1316117100,4227796733,1446544655,517320253,658058550,1691946762,564550760,3511966619,976107044,2976320012,266819475,3533106868,2660342555,1338359936,2720062561,1766553434,370807324,179999714,3844776128,1138762300,488053522,185403662,2915535858,3114841645,3366526484,2233069911,1275557295,3151862254,4250959779,2670068215,3170202204,3309004356,880737115,1982415755,3703972811,1761406390,1676797112,3403428311,277177154,1076008723,538035844,2099530373,4164795346,288553390,1839278535,1261411869,4080055004,3964831245,3504587127,1813426987,2579067049,4199060497,577038663,3297574056,440397984,3626794326,4019204898,3343796615,3251714265,4272081548,906744984,3481400742,685669029,646887386,2764025151,3835509292,227702864,2613862250,1648787028,3256061430,3904428176,1593260334,4121936770,3196083615,2090061929,2838353263,3004310991,999926984,2809993232,1852021992,2075868123,158869197,4095236462,28809964,2828685187,1701746150,2129067946,147831841,3873969647,3650873274,3459673930,3557400554,3598495785,2947720241,824393514,815048134,3227951669,935087732,2798289660,2966458592,366520115,1251476721,4158319681,240176511,804688151,2379631990,1303441219,1414376140,3741619940,3820343710,461924940,3089050817,2136040774,82468509,1563790337,1937016826,776014843,1511876531,1389550482,861278441,323475053,2355222426,2047648055,2383738969,2302415851,3995576782,902390199,3991215329,1018251130,1507840668,1064563285,2043548696,3208103795,3939366739,1537932639,342834655,2262516856,2180231114,1053059257,741614648,1598071746,1925389590,203809468,2336832552,1100287487,1895934009,3736275976,2632234200,2428589668,1636092795,1890988757,1952214088,1113045200],t.t) +$.nQ=A.a([2817806672,1698790995,2752977603,1579629206,1806384075,1167925233,1492823211,65227667,4197458005,1836494326,1993115793,1275262245,3622129660,3408578007,1144333952,2741155215,1521606217,465184103,250234264,3237895649,1966064386,4031545618,2537983395,4191382470,1603208167,2626819477,2054012907,1498584538,2210321453,561273043,1776306473,3368652356,2311222634,2039411832,1045993835,1907959773,1340194486,2911432727,2887829862,986611124,1256153880,823846274,860985184,2136171077,2003087840,2926295940,2692873756,722008468,1749577816,4249194265,1826526343,4168831671,3547573027,38499042,2401231703,2874500650,686535175,3266653955,2076542618,137876389,2267558130,2780767154,1778582202,2182540636,483363371,3027871634,4060607472,3798552225,4107953613,3188000469,1647628575,4272342154,1395537053,1442030240,3783918898,3958809717,3968011065,4016062634,2675006982,275692881,2317434617,115185213,88006062,3185986886,2371129781,1573155077,3557164143,357589247,4221049124,3921532567,1128303052,2665047927,1122545853,2341013384,1528424248,4006115803,175939911,256015593,512030921,0,2256537987,3979031112,1880170156,1918528590,4279172603,948244310,3584965918,959264295,3641641572,2791073825,1415289809,775300154,1728711857,3881276175,2532226258,2442861470,3317727311,551313826,1266113129,437394454,3130253834,715178213,3760340035,387650077,218697227,3347837613,2830511545,2837320904,435246981,125153100,3717852859,1618977789,637663135,4117912764,996558021,2130402100,692292470,3324234716,4243437160,4058298467,3694254026,2237874704,580326208,298222624,608863613,1035719416,855223825,2703869805,798891339,817028339,1384517100,3821107152,380840812,3111168409,1217663482,1693009698,2365368516,1072734234,746411736,2419270383,1313441735,3510163905,2731183358,198481974,2180359887,3732579624,2394413606,3215802276,2637835492,2457358349,3428805275,1182684258,328070850,3101200616,4147719774,2948825845,2153619390,2479909244,768962473,304467891,2578237499,2098729127,1671227502,3141262203,2015808777,408514292,3080383489,2588902312,1855317605,3875515006,3485212936,3893751782,2615655129,913263310,161475284,2091919830,2997105071,591342129,2493892144,1721906624,3159258167,3397581990,3499155632,3634836245,2550460746,3672916471,1355644686,4136703791,3595400845,2968470349,1303039060,76997855,3050413795,2288667675,523026872,1365591679,3932069124,898367837,1955068531,1091304238,493335386,3537605202,1443948851,1205234963,1641519756,211892090,351820174,1007938441,665439982,3378624309,3843875309,2974251580,3755121753,1945261375,3457423481,935818175,3455538154,2868731739,1866325780,3678697606,4088384129,3295197502,874788908,1084473951,3273463410,635616268,1228679307,2500722497,27801969,3003910366,3837057180,3243664528,2227927905,3056784752,1550600308,1471729730],t.t) +$.nR=A.a([4098969767,1098797925,387629988,658151006,2872822635,2636116293,4205620056,3813380867,807425530,1991112301,3431502198,49620300,3847224535,717608907,891715652,1656065955,2984135002,3123013403,3930429454,4267565504,801309301,1283527408,1183687575,3547055865,2399397727,2450888092,1841294202,1385552473,3201576323,1951978273,3762891113,3381544136,3262474889,2398386297,1486449470,3106397553,3787372111,2297436077,550069932,3464344634,3747813450,451248689,1368875059,1398949247,1689378935,1807451310,2180914336,150574123,1215322216,1167006205,3734275948,2069018616,1940595667,1265820162,534992783,1432758955,3954313e3,3039757250,3313932923,936617224,674296455,3206787749,50510442,384654466,3481938716,2041025204,133427442,1766760930,3664104948,84334014,886120290,2797898494,775200083,4087521365,2315596513,4137973227,2198551020,1614850799,1901987487,1857900816,557775242,3717610758,1054715397,3863824061,1418835341,3295741277,100954068,1348534037,2551784699,3184957417,1082772547,3647436702,3903896898,2298972299,434583643,3363429358,2090944266,1115482383,2230896926,0,2148107142,724715757,287222896,1517047410,251526143,2232374840,2923241173,758523705,252339417,1550328230,1536938324,908343854,168604007,1469255655,4004827798,2602278545,3229634501,3697386016,2002413899,303830554,2481064634,2696996138,574374880,454171927,151915277,2347937223,3056449960,504678569,4049044761,1974422535,2582559709,2141453664,33005350,1918680309,1715782971,4217058430,1133213225,600562886,3988154620,3837289457,836225756,1665273989,2534621218,3330547729,1250262308,3151165501,4188934450,700935585,2652719919,3000824624,2249059410,3245854947,3005967382,1890163129,2484206152,3913753188,4238918796,4037024319,2102843436,857927568,1233635150,953795025,3398237858,3566745099,4121350017,2057644254,3084527246,2906629311,976020637,2018512274,1600822220,2119459398,2381758995,3633375416,959340279,3280139695,1570750080,3496574099,3580864813,634368786,2898803609,403744637,2632478307,1004239803,650971512,1500443672,2599158199,1334028442,2514904430,4289363686,3156281551,368043752,3887782299,1867173430,2682967049,2955531900,2754719666,1059729699,2781229204,2721431654,1316239292,2197595850,2430644432,2805143e3,82922136,3963746266,3447656016,2434215926,1299615190,4014165424,2865517645,2531581700,3516851125,1783372680,750893087,1699118929,1587348714,2348899637,2281337716,201010753,1739807261,3683799762,283718486,3597472583,3617229921,2704767500,4166618644,334203196,2848910887,1639396809,484568549,1199193265,3533461983,4065673075,337148366,3346251575,4149471949,4250885034,1038029935,1148749531,2949284339,1756970692,607661108,2747424576,488010435,3803974693,1009290057,234832277,2822336769,201907891,3034094820,1449431233,3413860740,852848822,1816687708,3100656215],t.t) +$.nS=A.a([1364240372,2119394625,449029143,982933031,1003187115,535905693,2896910586,1267925987,542505520,2918608246,2291234508,4112862210,1341970405,3319253802,645940277,3046089570,3729349297,627514298,1167593194,1575076094,3271718191,2165502028,2376308550,1808202195,65494927,362126482,3219880557,2514114898,3559752638,1490231668,1227450848,2386872521,1969916354,4101536142,2573942360,668823993,3199619041,4028083592,3378949152,2108963534,1662536415,3850514714,2539664209,1648721747,2984277860,3146034795,4263288961,4187237128,1884842056,2400845125,2491903198,1387788411,2871251827,1927414347,3814166303,1714072405,2986813675,788775605,2258271173,3550808119,821200680,598910399,45771267,3982262806,2318081231,2811409529,4092654087,1319232105,1707996378,114671109,3508494900,3297443494,882725678,2728416755,87220618,2759191542,188345475,1084944224,1577492337,3176206446,1056541217,2520581853,3719169342,1296481766,2444594516,1896177092,74437638,1627329872,421854104,3600279997,2311865152,1735892697,2965193448,126389129,3879230233,2044456648,2705787516,2095648578,4173930116,0,159614592,843640107,514617361,1817080410,4261150478,257308805,1025430958,908540205,174381327,1747035740,2614187099,607792694,212952842,2467293015,3033700078,463376795,2152711616,1638015196,1516850039,471210514,3792353939,3236244128,1011081250,303896347,235605257,4071475083,767142070,348694814,1468340721,2940995445,4005289369,2751291519,4154402305,1555887474,1153776486,1530167035,2339776835,3420243491,3060333805,3093557732,3620396081,1108378979,322970263,2216694214,2239571018,3539484091,2920362745,3345850665,491466654,3706925234,233591430,2010178497,728503987,2845423984,301615252,1193436393,2831453436,2686074864,1457007741,586125363,2277985865,3653357880,2365498058,2553678804,2798617077,2770919034,3659959991,1067761581,753179962,1343066744,1788595295,1415726718,4139914125,2431170776,777975609,2197139395,2680062045,1769771984,1873358293,3484619301,3359349164,279411992,3899548572,3682319163,3439949862,1861490777,3959535514,2208864847,3865407125,2860443391,554225596,4024887317,3134823399,1255028335,3939764639,701922480,833598116,707863359,3325072549,901801634,1949809742,4238789250,3769684112,857069735,4048197636,1106762476,2131644621,389019281,1989006925,1129165039,3428076970,3839820950,2665723345,1276872810,3250069292,1182749029,2634345054,22885772,4201870471,4214112523,3009027431,2454901467,3912455696,1829980118,2592891351,930745505,1502483704,3951639571,3471714217,3073755489,3790464284,2050797895,2623135698,1430221810,410635796,1941911495,1407897079,1599843069,3742658365,2022103876,3397514159,3107898472,942421028,3261022371,376619805,3154912738,680216892,4282488077,963707304,148812556,3634160820,1687208278,2069988555,3580933682,1215585388,3494008760],t.t) +$.yl=A.a([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],t.t) +$.kq=A.a([4294967295,2147483647,1073741823,536870911,268435455,134217727,67108863,33554431,16777215,8388607,4194303,2097151,1048575,524287,262143,131071,65535,32767,16383,8191,4095,2047,1023,511,255,127,63,31,15,7,3,1,0],t.t) +$.aRx=null +$.bwS=A.a([],t.t) +$.bo4=0 +$.bwQ=0 +$.bwR=0 +$.bwP=!1 +$.bTY=A.w(A.ar("w7"),A.ar("ti<~>")) +$.bhi=null +$.a79=A.w(A.ar("Mt"),A.ar("a6t")) +$.bgf=A.w(A.ar("Fz"),t.EP) +$.bgl=A.w(A.ar("Fz"),A.ar("a2")) +$.bO3=A.C(["xx-small",10,"x-small",12,"small",14,"medium",18,"large",22,"x-large",26,"xx-large",32],t.N,t.i) +$.bug=null +$.bue=null +$.buf=null +$.bnx=A.w(t.D2,t.M) +$.bnv=A.w(t.D2,A.ar("rc")) +$.bnw=null +$.bP_=A.bu("_jsLoaded") +$.bP5="" +$.a7="[Wcp]" +$.p_=null +$.bvA=$.apz})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal,r=hunkHelpers.lazy +s($,"bYp","bpR",()=>A.aKd(8)) +s($,"bZ2","dz",()=>{var q,p=A.pj(self.window,"screen") +p=p==null?null:A.pj(p,"width") +if(p==null)p=0 +q=A.pj(self.window,"screen") +q=q==null?null:A.pj(q,"height") +return new A.a_P(A.bNE(p,q==null?0:q))}) +r($,"bIY","bBp",()=>A.Bs()) +s($,"c3r","bqA",()=>{var q=A.bzG() +A.bsr(q,"width",0) +A.bsr(q,"height",0) +A.bsn(A.pj(q,"style"),"absolute") +return q}) +s($,"c1p","bks",()=>A.aKd(4)) +r($,"c2O","ap1",()=>new A.aRt()) +s($,"c0R","bCR",()=>A.buA(A.a([0,1,2,2,3,0],t.t))) +s($,"c2S","bE9",()=>A.bps(A.bps(A.bps(self.window,"Image"),"prototype"),"decode")!=null) +s($,"c2b","bqj",()=>8589934852) +s($,"c2c","bDD",()=>8589934853) +s($,"c2d","bqk",()=>8589934848) +s($,"c2e","bDE",()=>8589934849) +s($,"c2i","bqm",()=>8589934850) +s($,"c2j","bDH",()=>8589934851) +s($,"c2g","bql",()=>8589934854) +s($,"c2h","bDG",()=>8589934855) +s($,"c2o","bDM",()=>458978) +s($,"c2p","bDN",()=>458982) +s($,"c3p","bqy",()=>458976) +s($,"c3q","bqz",()=>458980) +s($,"c2s","bDQ",()=>458977) +s($,"c2t","bDR",()=>458981) +s($,"c2q","bDO",()=>458979) +s($,"c2r","bDP",()=>458983) +s($,"c2f","bDF",()=>A.C([$.bqj(),new A.bhU(),$.bDD(),new A.bhV(),$.bqk(),new A.bhW(),$.bDE(),new A.bhX(),$.bqm(),new A.bhY(),$.bDH(),new A.bhZ(),$.bql(),new A.bi_(),$.bDG(),new A.bi0()],t.S,A.ar("H(oi)"))) +s($,"c3G","bkA",()=>A.bVn(new A.bjR())) +r($,"bZh","bkk",()=>new A.a0N(A.a([],A.ar("E<~(H)>")),A.blR(self.window,"(forced-colors: active)"))) +s($,"bZ3","bC",()=>A.bIi()) +r($,"c_F","bCb",()=>{var q=t.N,p=t.S +q=new A.aMJ(A.w(q,t._8),A.w(p,t.B),A.bn(q),A.w(p,q)) +q.b_f("_default_document_create_element_visible",A.byB()) +q.agh("_default_document_create_element_invisible",A.byB(),!1) +return q}) +r($,"c_G","bCc",()=>new A.aML($.bCb())) +s($,"c_N","bCg",()=>new A.aPH()) +s($,"c_O","bq3",()=>new A.Xm()) +s($,"c_P","pm",()=>new A.b56(A.w(t.S,A.ar("FA")))) +s($,"c2J","ap",()=>new A.a0R()) +s($,"c3E","bEo",()=>A.aT_(65532)) +s($,"bZj","bBr",()=>A.bB("[a-z0-9\\s]+",!1,!1,!1)) +s($,"bZk","bBs",()=>A.bB("\\b\\d",!0,!1,!1)) +s($,"c3K","zX",()=>A.bHN(A.Vt(0,0))) +s($,"c0i","bCu",()=>{var q=A.bVm("flt-ruler-host"),p=new A.a7w(q),o=A.pj(q,"style") +A.bsn(o,"fixed") +A.bHL(o,"hidden") +A.bHJ(o,"hidden") +A.bHK(o,"0") +A.bHI(o,"0") +A.bHM(o,"0") +A.bHH(o,"0") +A.bS0($.bC().gaVi().ghq().c,"appendChild",q) +A.bXn(p.gdj()) +return p}) +s($,"c2X","bqq",()=>A.bOO(A.a([B.avV,B.avZ,B.avI,B.avJ,B.avL,B.avW,B.avG,B.avH,B.avK,B.avX,B.avY,B.avF,B.avM,B.avN,B.avO,B.avP,B.avQ,B.avR,B.avS,B.avT,B.avU],A.ar("E>")),null,A.ar("oX?"))) +r($,"c3Q","VW",()=>A.bOP("000a!E000b000cF000d!D000w!R000y!A0013!B0018!M001a!N001c001lO001m!L001n!M001t002iK002n!P002p003eK003p!F004q!K004t!I0051!K0053!L0056!K005c005yK0060006uK006w00k7K00ke00lbK00lc00ofG00og00okK00om00onK00oq00otK00ou!M00ov!K00p2!K00p3!L00p400p6K00p8!K00pa00ptK00pv00s5K00s700w1K00w300w9G00wa010vK010x011yK01210124K0126!K0127!L0128013cK013d!M013e!K013l014tG014v!G014x014yG01500151G0153!G015c0162C0167016aC016b!K016c!L016o016tI01700171M0174017eG017g!I017k018qK018r019bG019c019lO019n!O019o!M019q019rK019s!G019t01cjK01cl!K01cm01csG01ct!I01cv01d0G01d101d2K01d301d4G01d601d9G01da01dbK01dc01dlO01dm01doK01dr!K01e7!I01e8!K01e9!G01ea01f3K01f401fuG01fx01idK01ie01ioG01ip!K01j401jdO01je01kaK01kb01kjG01kk01klK01ko!M01kq!K01kt!G01kw01lhK01li01llG01lm!K01ln01lvG01lw!K01lx01lzG01m0!K01m101m5G01mo01ncK01nd01nfG01nk01nuK01pc01pwK01py01qfK01qr01r5G01r6!I01r701s3G01s401tlK01tm01toG01tp!K01tq01u7G01u8!K01u901ufG01ug01upK01uq01urG01uu01v3O01v501vkK01vl01vnG01vp01vwK01vz01w0K01w301woK01wq01wwK01wy!K01x201x5K01x8!G01x9!K01xa01xgG01xj01xkG01xn01xpG01xq!K01xz!G01y401y5K01y701y9K01ya01ybG01ye01ynO01yo01ypK01z0!K01z2!G01z501z7G01z901zeK01zj01zkK01zn0208K020a020gK020i020jK020l020mK020o020pK020s!G020u020yG02130214G02170219G021d!G021l021oK021q!K021y0227O02280229G022a022cK022d!G022p022rG022t0231K02330235K0237023sK023u0240K02420243K02450249K024c!G024d!K024e024lG024n024pG024r024tG024w!K025c025dK025e025fG025i025rO0261!K02620267G0269026bG026d026kK026n026oK026r027cK027e027kK027m027nK027p027tK027w!G027x!K027y0284G02870288G028b028dG028l028nG028s028tK028v028xK028y028zG0292029bO029d!K029u!G029v!K029x02a2K02a602a8K02aa02adK02ah02aiK02ak!K02am02anK02ar02asK02aw02ayK02b202bdK02bi02bmG02bq02bsG02bu02bxG02c0!K02c7!G02cm02cvO02dc02dgG02dh02doK02dq02dsK02du02egK02ei02exK02f1!K02f202f8G02fa02fcG02fe02fhG02fp02fqG02fs02fuK02g002g1K02g202g3G02g602gfO02gw!K02gx02gzG02h102h8K02ha02hcK02he02i0K02i202ibK02id02ihK02ik!G02il!K02im02isG02iu02iwG02iy02j1G02j902jaG02ji!K02jk02jlK02jm02jnG02jq02jzO02k102k2K02kg02kjG02kk02ksK02ku02kwK02ky02m2K02m302m4G02m5!K02m602mcG02me02mgG02mi02mlG02mm!K02ms02muK02mv!G02n302n5K02n602n7G02na02njO02nu02nzK02o102o3G02o502omK02oq02pdK02pf02pnK02pp!K02ps02pyK02q2!G02q702qcG02qe!G02qg02qnG02qu02r3O02r602r7G02sx!G02t002t6G02tj02tqG02ts02u1O02wh!G02wk02wsG02x402x9G02xc02xlO02yo!K02zc02zdG02zk02ztO0305!G0307!G0309!G030e030fG030g030nK030p031oK031t032cG032e032fG032g032kK032l032vG032x033wG0346!G036z037iG037k037tO03860389G038e038gG038i038kG038n038tG038x0390G039e039pG039r!G039s03a1O03a203a5G03a803b9K03bb!K03bh!K03bk03cqK03cs03m0K03m203m5K03m803meK03mg!K03mi03mlK03mo03nsK03nu03nxK03o003owK03oy03p1K03p403paK03pc!K03pe03phK03pk03pyK03q003rkK03rm03rpK03rs03tmK03tp03trG03uo03v3K03vk03xxK03y003y5K03y904fgK04fj04fzK04g0!R04g104gqK04gw04iyK04j204jcK04jk04jwK04jy04k1K04k204k4G04kg04kxK04ky04l0G04lc04ltK04lu04lvG04m804mkK04mm04moK04mq04mrG04ok04pfG04pp!G04ps04q1O04qz04r1G04r2!I04r404rdO04rk04u0K04u804ucK04ud04ueG04uf04vcK04vd!G04ve!K04vk04xhK04xs04ymK04yo04yzG04z404zfG04zq04zzO053k053tO054w055iK055j055nG0579057iG057k058cG058f!G058g058pO058w0595O059s05a8G05c005c4G05c505dfK05dg05dwG05dx05e3K05e805ehO05ez05f7G05fk05fmG05fn05ggK05gh05gtG05gu05gvK05gw05h5O05h605idK05ie05irG05j405k3K05k405knG05kw05l5O05l905lbK05lc05llO05lm05mlK05mo05mwK05n405oaK05od05ofK05ow05oyG05p005pkG05pl05poK05pp!G05pq05pvK05pw!G05px05pyK05pz05q1G05q2!K05q805vjK05vk05x5G05x705xbG05xc0651K06540659K065c066dK066g066lK066o066vK066x!K066z!K0671!K0673067xK0680069gK069i069oK069q!K069u069wK069y06a4K06a806abK06ae06ajK06ao06b0K06b606b8K06ba06bgK06bk06bqR06bs06buR06bw!G06bx!Q06by06bzI06c806c9N06ck!N06cn!L06co06cpF06cq06cuI06cv!P06db06dcP06dg!M06dw!P06e7!R06e806ecI06ee06enI06ep!K06f3!K06fk06fwK06hc06i8G06iq!K06iv!K06iy06j7K06j9!K06jd06jhK06jo!K06jq!K06js!K06ju06jxK06jz06k9K06kc06kfK06kl06kpK06ku!K06lc06mgK079207ahK08ow08q6K08q808riK08rk08v8K08vf08viK08vj08vlG08vm08vnK08w008x1K08x3!K08x9!K08xc08yvK08z3!K08zj!G08zk0906K090g090mK090o090uK090w0912K0914091aK091c091iK091k091qK091s091yK09200926K09280933G094f!K09hc!R09hh!K09ii09inG09ip09itJ09iz09j0K09ll09lmG09ln09loJ09ls09oaJ09oc09ofJ09ol09prK09pt09seK09sw09trK09v409vjJ0a1c0a2mJ0a2o0a53J0vls0wi4K0wk00wl9K0wlc0wssK0wsw0wtbK0wtc0wtlO0wtm0wtnK0wu80wviK0wvj0wvmG0wvo0wvxG0wvz0wwtK0wwu0wwvG0www0wz3K0wz40wz5G0wzs0x4vK0x4y0x56K0x6d0x6pK0x6q!G0x6r0x6tK0x6u!G0x6v0x6yK0x6z!G0x700x7mK0x7n0x7rG0x7w!G0x8g0x9vK0xa80xa9G0xaa0xbnK0xbo0xc5G0xcg0xcpO0xcw0xddG0xde0xdjK0xdn!K0xdp0xdqK0xdr!G0xds0xe1O0xe20xetK0xeu0xf1G0xf40xfqK0xfr0xg3G0xgg0xh8K0xhc0xhfG0xhg0xiqK0xir0xj4G0xjj!K0xjk0xjtO0xk5!G0xkg0xkpO0xkw0xm0K0xm10xmeG0xmo0xmqK0xmr!G0xms0xmzK0xn00xn1G0xn40xndO0xob0xodG0xps!G0xpu0xpwG0xpz0xq0G0xq60xq7G0xq9!G0xr40xreK0xrf0xrjG0xrm0xroK0xrp0xrqG0xs10xs6K0xs90xseK0xsh0xsmK0xsw0xt2K0xt40xtaK0xtc0xuxK0xv40xyaK0xyb0xyiG0xyk0xylG0xyo0xyxO0xz416lfK16ls16meK16mj16nvK1dkw1dl2K1dlf1dljK1dlp!C1dlq!G1dlr1dm0C1dm21dmeC1dmg1dmkC1dmm!C1dmo1dmpC1dmr1dmsC1dmu1dn3C1dn41dptK1dqr1e0tK1e1c1e33K1e361e4nK1e5s1e63K1e681e6nG1e6o!M1e6r!L1e6s!M1e741e7jG1e7n1e7oP1e8d1e8fP1e8g!M1e8i!N1e8k!M1e8l!L1e9c1e9gK1e9i1ed8K1edb!I1edj!N1edo!M1edq!N1eds1ee1O1ee2!L1ee3!M1ee91eeyK1ef3!P1ef51efuK1eg61ehpJ1ehq1ehrG1ehs1eimK1eiq1eivK1eiy1ej3K1ej61ejbK1eje1ejgK1ek91ekbI1ekg1ekrK1ekt1eliK1elk1em2K1em41em5K1em71emlK1emo1en1K1eo01ereK1etc1eusK1eyl!G1f281f30K1f341f4gK1f4w!G1f5s1f6nK1f711f7uK1f801f91K1f921f96G1f9c1fa5K1fa81fb7K1fbc1fbjK1fbl1fbpK1fcw1fh9K1fhc1fhlO1fhs1firK1fiw1fjvK1fk01fl3K1flc1fmrK1fr41fzqK1g001g0lK1g0w1g13K1g5c1g5hK1g5k!K1g5m1g6tK1g6v1g6wK1g70!K1g731g7pK1g801g8mK1g8w1g9qK1gbk1gc2K1gc41gc5K1gcg1gd1K1gdc1ge1K1gg01ghjK1ghq1ghrK1gjk!K1gjl1gjnG1gjp1gjqG1gjw1gjzG1gk01gk3K1gk51gk7K1gk91gl1K1gl41gl6G1glb!G1gm81gn0K1gn41gnwK1gow1gp3K1gp51gpwK1gpx1gpyG1gqo1gs5K1gsg1gt1K1gtc1gtuK1gu81gupK1gxs1gzsK1h1c1h2qK1h341h4iK1h4w1h5vK1h5w1h5zG1h681h6hO1hfk1hgpK1hgr1hgsG1hgw1hgxK1hj41hjwK1hk7!K1hkg1hl1K1hl21hlcG1ho01hokK1hpc1hpyK1hq81hqaG1hqb1hrrK1hrs1hs6G1ht21htbO1htr1htuG1htv1hv3K1hv41hveG1hvh!I1hvx!I1hw01hwoK1hww1hx5O1hxc1hxeG1hxf1hyeK1hyf1hysG1hyu1hz3O1hz8!K1hz91hzaG1hzb!K1hzk1i0iK1i0j!G1i0m!K1i0w1i0yG1i0z1i2aK1i2b1i2oG1i2p1i2sK1i2x1i30G1i321i33G1i341i3dO1i3e!K1i3g!K1i4g1i4xK1i4z1i5nK1i5o1i5zG1i66!G1i801i86K1i88!K1i8a1i8dK1i8f1i8tK1i8v1i94K1i9c1iamK1ian1iayG1ib41ibdO1ibk1ibnG1ibp1ibwK1ibz1ic0K1ic31icoK1icq1icwK1icy1iczK1id11id5K1id71id8G1id9!K1ida1idgG1idj1idkG1idn1idpG1ids!K1idz!G1ie51ie9K1iea1iebG1iee1iekG1ieo1iesG1iio1ik4K1ik51ikmG1ikn1ikqK1ikw1il5O1ila!G1ilb1ildK1im81injK1ink1io3G1io41io5K1io7!K1iog1iopO1itc1iumK1iun1iutG1iuw1iv4G1ivs1ivvK1ivw1ivxG1iww1iy7K1iy81iyoG1iys!K1iz41izdO1j0g1j1mK1j1n1j1zG1j20!K1j281j2hO1j4t1j57G1j5c1j5lO1jb41jcbK1jcc1jcqG1jfk1jhbK1jhc1jhlO1ji71jieK1jih!K1jik1jirK1jit1jiuK1jiw1jjjK1jjk1jjpG1jjr1jjsG1jjv1jjyG1jjz!K1jk0!G1jk1!K1jk21jk3G1jkg1jkpO1jmo1jmvK1jmy1jo0K1jo11jo7G1joa1jogG1joh!K1joj!K1jok!G1jpc!K1jpd1jpmG1jpn1jqqK1jqr1jqxG1jqy!K1jqz1jr2G1jrb!G1jrk!K1jrl1jrvG1jrw1jt5K1jt61jtlG1jtp!K1juo1jw8K1k3k1k3sK1k3u1k4uK1k4v1k52G1k541k5bG1k5c!K1k5s1k61O1k6q1k7jK1k7m1k87G1k891k8mG1kao1kauK1kaw1kaxK1kaz1kc0K1kc11kc6G1kca!G1kcc1kcdG1kcf1kclG1kcm!K1kcn!G1kcw1kd5O1kdc1kdhK1kdj1kdkK1kdm1kehK1kei1kemG1keo1kepG1ker1kevG1kew!K1kf41kfdO1ko01koiK1koj1komG1kts!K1kw01lllK1log1lriK1ls01lxfK1o1s1oviK1ovk1ovsI1s001sg6K1z401zjsK1zk01zkuK1zkw1zl5O1zo01zotK1zow1zp0G1zpc1zqnK1zqo1zquG1zr41zr7K1zrk1zrtO1zs31zsnK1zst1ztbK20cg20e7K20hs20juK20jz!G20k0!K20k120ljG20lr20luG20lv20m7K20o020o1K20o3!K20o4!G20og20ohG2dc0!J2dlw2dlzJ2fpc2fsaK2fsg2fssK2fsw2ft4K2ftc2ftlK2ftp2ftqG2fts2ftvI2jxh2jxlG2jxp2jxuG2jxv2jy2I2jy32jyaG2jyd2jyjG2jze2jzhG2k3m2k3oG2kg02kicK2kie2kkcK2kke2kkfK2kki!K2kkl2kkmK2kkp2kksK2kku2kl5K2kl7!K2kl92klfK2klh2kn9K2knb2kneK2knh2knoK2knq2knwK2kny2kopK2kor2kouK2kow2kp0K2kp2!K2kp62kpcK2kpe2kytK2kyw2kzkK2kzm2l0aK2l0c2l16K2l182l1wK2l1y2l2sK2l2u2l3iK2l3k2l4eK2l4g2l54K2l562l60K2l622l6qK2l6s2l6zK2l722l8fO2lmo2lo6G2lob2lpoG2lpx!G2lqc!G2lqz2lr3G2lr52lrjG2mtc2mtiG2mtk2mu0G2mu32mu9G2mub2mucG2mue2muiG2n0g2n1oK2n1s2n1yG2n1z2n25K2n282n2hO2n2m!K2ncw2ne3K2ne42ne7G2ne82nehO2oe82ojoK2ok02ok6G2olc2on7K2on82oneG2onf!K2onk2ontO2pkw2pkzK2pl12plrK2plt2pluK2plw!K2plz!K2pm12pmaK2pmc2pmfK2pmh!K2pmj!K2pmq!K2pmv!K2pmx!K2pmz!K2pn12pn3K2pn52pn6K2pn8!K2pnb!K2pnd!K2pnf!K2pnh!K2pnj!K2pnl2pnmK2pno!K2pnr2pnuK2pnw2po2K2po42po7K2po92pocK2poe!K2pog2popK2por2pp7K2ppd2ppfK2pph2pplK2ppn2pq3K2q7k2q89K2q8g2q95K2q9c2qa1K2qcm2qdbH2qrf2qrjG2sc02sc9Ojny9!Ijnz4jo1rGjo5cjobzG",231,B.aan,B.PF,A.ar("fv"))) +s($,"bYi","bB1",()=>{var q=t.N +return new A.aqK(A.C(["birthday","bday","birthdayDay","bday-day","birthdayMonth","bday-month","birthdayYear","bday-year","countryCode","country","countryName","country-name","creditCardExpirationDate","cc-exp","creditCardExpirationMonth","cc-exp-month","creditCardExpirationYear","cc-exp-year","creditCardFamilyName","cc-family-name","creditCardGivenName","cc-given-name","creditCardMiddleName","cc-additional-name","creditCardName","cc-name","creditCardNumber","cc-number","creditCardSecurityCode","cc-csc","creditCardType","cc-type","email","email","familyName","family-name","fullStreetAddress","street-address","gender","sex","givenName","given-name","impp","impp","jobTitle","organization-title","language","language","middleName","additional-name","name","name","namePrefix","honorific-prefix","nameSuffix","honorific-suffix","newPassword","new-password","nickname","nickname","oneTimeCode","one-time-code","organizationName","organization","password","current-password","photo","photo","postalCode","postal-code","streetAddressLevel1","address-level1","streetAddressLevel2","address-level2","streetAddressLevel3","address-level3","streetAddressLevel4","address-level4","streetAddressLine1","address-line1","streetAddressLine2","address-line2","streetAddressLine3","address-line3","telephoneNumber","tel","telephoneNumberAreaCode","tel-area-code","telephoneNumberCountryCode","tel-country-code","telephoneNumberExtension","tel-extension","telephoneNumberLocal","tel-local","telephoneNumberLocalPrefix","tel-local-prefix","telephoneNumberLocalSuffix","tel-local-suffix","telephoneNumberNational","tel-national","transactionAmount","transaction-amount","transactionCurrency","transaction-currency","url","url","username","username"],q,q))}) +s($,"c3L","VV",()=>new A.aBS()) +s($,"c2W","bEb",()=>A.aKd(4)) +s($,"c2U","bqp",()=>A.aKd(16)) +s($,"c2V","bEa",()=>A.bKY($.bqp())) +r($,"c3H","zW",()=>A.bHO(A.pj(self.window,"console"))) +r($,"bYY","bBf",()=>{var q=$.dz(),p=A.aSx(null,null,!1,t.i) +p=new A.a_q(q,q.gnR(0),p) +p.a8j() +return p}) +s($,"c24","bkv",()=>new A.bhQ().$0()) +r($,"c25","bDx",()=>new A.bhR()) +s($,"c2_","bDt",()=>A.bB("^\\d+$",!0,!1,!1)) +s($,"c1c","bqf",()=>A.LA(0)) +s($,"c1l","bD4",()=>A.bQA()) +s($,"c26","bDy",()=>new A.O()) +s($,"c1F","bDg",()=>A.bts()) +s($,"bYG","VF",()=>A.bVV("_$dart_dartClosure")) +s($,"c1d","Gw",()=>A.LA(0)) +s($,"c3C","bkz",()=>B.aO.Ny(new A.bjE(),A.ar("a2"))) +s($,"c0z","bCB",()=>A.r9(A.aV4({ +toString:function(){return"$receiver$"}}))) +s($,"c0A","bCC",()=>A.r9(A.aV4({$method$:null, +toString:function(){return"$receiver$"}}))) +s($,"c0B","bCD",()=>A.r9(A.aV4(null))) +s($,"c0C","bCE",()=>A.r9(function(){var $argumentsExpr$="$arguments$" +try{null.$method$($argumentsExpr$)}catch(q){return q.message}}())) +s($,"c0F","bCH",()=>A.r9(A.aV4(void 0))) +s($,"c0G","bCI",()=>A.r9(function(){var $argumentsExpr$="$arguments$" +try{(void 0).$method$($argumentsExpr$)}catch(q){return q.message}}())) +s($,"c0E","bCG",()=>A.r9(A.bwG(null))) +s($,"c0D","bCF",()=>A.r9(function(){try{null.$method$}catch(q){return q.message}}())) +s($,"c0I","bCK",()=>A.r9(A.bwG(void 0))) +s($,"c0H","bCJ",()=>A.r9(function(){try{(void 0).$method$}catch(q){return q.message}}())) +s($,"c_r","bC4",()=>A.bn2(4)) +s($,"c2y","bDV",()=>A.aT_(254)) +s($,"c2k","bDI",()=>97) +s($,"c2w","bDT",()=>65) +s($,"c2l","bDJ",()=>122) +s($,"c2x","bDU",()=>90) +s($,"c2m","bDK",()=>48) +s($,"c12","bq9",()=>A.bPb()) +s($,"bZf","rV",()=>A.ar("a_").a($.bkz())) +s($,"bZe","bBq",()=>A.bPS(!1,B.aO,t.y)) +s($,"c1g","bqg",()=>new A.O()) +s($,"c1C","bDe",()=>A.LA(4096)) +s($,"c1A","bDc",()=>new A.bgb().$0()) +s($,"c1B","bDd",()=>new A.bga().$0()) +s($,"c14","bqa",()=>A.bLu(A.e7(A.a([-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-2,-2,-2,-2,-2,62,-2,62,-2,63,52,53,54,55,56,57,58,59,60,61,-2,-2,-2,-1,-2,-2,-2,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-2,-2,-2,-2,63,-2,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-2,-2,-2,-2,-2],t.t)))) +r($,"c13","bCY",()=>A.LA(0)) +s($,"bZ0","bBg",()=>A.C(["iso_8859-1:1987",B.cu,"iso-ir-100",B.cu,"iso_8859-1",B.cu,"iso-8859-1",B.cu,"latin1",B.cu,"l1",B.cu,"ibm819",B.cu,"cp819",B.cu,"csisolatin1",B.cu,"iso-ir-6",B.cS,"ansi_x3.4-1968",B.cS,"ansi_x3.4-1986",B.cS,"iso_646.irv:1991",B.cS,"iso646-us",B.cS,"us-ascii",B.cS,"us",B.cS,"ibm367",B.cS,"cp367",B.cS,"csascii",B.cS,"ascii",B.cS,"csutf8",B.a5,"utf-8",B.a5],t.N,A.ar("pN"))) +s($,"c1E","VT",()=>A.bRA()) +s($,"c1y","bDa",()=>A.bB("^[\\-\\.0-9A-Z_a-z~]*$",!0,!1,!1)) +s($,"c1z","bDb",()=>typeof URLSearchParams=="function") +s($,"c23","hr",()=>A.rT(B.auZ)) +s($,"c0l","rW",()=>{A.bMp() +return $.aNa}) +s($,"c2L","bE4",()=>A.bSi()) +s($,"c1n","bD6",()=>{var q=A.bw0() +q.mF(0) +return q}) +s($,"c1m","bD5",()=>A.bGU().a) +s($,"c28","bDA",()=>new A.O()) +s($,"c_L","bq2",()=>A.bQC()) +s($,"c_K","bkp",()=>A.bQB()) +s($,"c_M","bCf",()=>A.bQD()) +s($,"c_J","bq1",()=>{$.bkp() +return!1}) +s($,"c_H","bCd",()=>{$.bkp() +return!1}) +s($,"c_I","bCe",()=>{$.bkp() +return!1}) +s($,"c_R","bkq",()=>{var q=new A.b8O(A.bux(8)) +q.are() +return q}) +s($,"bZ1","fS",()=>A.bFO(A.buA(A.a([1],t.t)).buffer,0,null).getInt8(0)===1?B.an:B.eI) +s($,"c35","ap3",()=>new A.as2(A.w(t.N,A.ar("rj")))) +s($,"bYk","bB2",()=>new A.aqN()) +r($,"c33","bH",()=>$.bB2()) +r($,"c2I","bkw",()=>B.SX) +r($,"bYo","bpQ",()=>$.bB8()) +s($,"c1W","bDr",()=>new A.O()) +s($,"bYw","bpS",()=>new A.O()) +r($,"bGp","bB6",()=>{var q=new A.aIu() +q.qr($.bpS()) +return q}) +s($,"bYT","bpX",()=>new A.O()) +r($,"bHa","bY8",()=>{var q=new A.aIw() +q.qr($.bpX()) +return q}) +s($,"c2K","bE3",()=>A.buB(A.a([13,10],t.t))) +s($,"c2G","bE1",()=>A.bMw(null)) +s($,"bZd","bkj",()=>B.eA.Wl(B.pQ,t.X)) +s($,"c1f","bD0",()=>A.buB(B.a3s)) +r($,"bZ_","lu",()=>{var q=new A.awM("\ud83c\udf0e Easy Localization"),p=$.bEi() +q.f=p +q.a=q.ayk() +return q}) +r($,"c3d","bEi",()=>new A.biJ()) +s($,"c2T","bqo",()=>A.blZ()) +s($,"bZ8","bBk",()=>new A.O()) +s($,"c2a","bDC",()=>A.bnN(1,1,500)) +r($,"bYe","bB_",()=>new A.Wi(B.F,B.F)) +s($,"c38","bEf",()=>new A.ae1()) +s($,"c2u","bDS",()=>A.iY(B.fk,B.j,t.c)) +s($,"c2n","bDL",()=>A.iY(B.j,B.ajo,t.c)) +r($,"c1e","bD_",()=>A.bGX(B.azI,B.azH)) +s($,"c39","bEg",()=>new A.Zz()) +s($,"c1V","bDq",()=>A.bTP($.bH().gf9())) +s($,"bYq","aW",()=>A.bO(0,null,!1,t.Nw)) +s($,"c1b","VR",()=>new A.vi(0,$.bCZ())) +s($,"c1a","bCZ",()=>A.bTE(0)) +s($,"c1Y","VU",()=>A.ej(null,t.N)) +s($,"c1Z","bqi",()=>A.bw0()) +s($,"c27","bDz",()=>A.bB("^ *(?:[-+*] |[0-9]+[.):] )?",!0,!1,!1)) +s($,"c11","bCX",()=>A.LA(8)) +s($,"c0k","bCv",()=>A.bB("^\\s*at ([^\\s]+).*$",!0,!1,!1)) +s($,"c3n","bqw",()=>A.bry(4294967295)) +s($,"c3m","bqv",()=>A.bry(3707764736)) +s($,"c3c","bqt",()=>new A.aey()) +s($,"c1t","bD7",()=>A.iY(0.75,1,t.i)) +s($,"c1u","bD8",()=>A.k0(B.auo)) +s($,"bZn","bBt",()=>A.k0(B.bk)) +s($,"bZo","bBu",()=>A.k0(B.a2G)) +r($,"c0v","bCx",()=>new A.aUs(new A.aUt(),A.bY()===B.aG)) +s($,"c1O","bDo",()=>{var q=t.i +return A.a([A.bwF(A.iY(0,0.4,q).m3(A.k0(B.Y9)),0.166666,q),A.bwF(A.iY(0.4,1,q).m3(A.k0(B.Yc)),0.833334,q)],t.x0)}) +s($,"c1N","ap_",()=>A.aV2($.bDo(),t.i)) +s($,"c1G","bDh",()=>A.iY(0,1,t.i).m3(A.k0(B.a2F))) +s($,"c1H","bDi",()=>A.iY(1.1,1,t.i).m3($.ap_())) +s($,"c1I","bDj",()=>A.iY(0.85,1,t.i).m3($.ap_())) +s($,"c1J","bDk",()=>A.iY(0,0.6,t.PM).m3(A.k0(B.a2J))) +s($,"c1K","bDl",()=>A.iY(1,0,t.i).m3(A.k0(B.a2x))) +s($,"c1M","bDn",()=>A.iY(1,1.05,t.i).m3($.ap_())) +s($,"c1L","bDm",()=>A.iY(1,0.9,t.i).m3($.ap_())) +s($,"c18","bqd",()=>A.k0(B.a2z).m3(A.k0(B.rA))) +s($,"c19","bqe",()=>A.k0(B.a2y).m3(A.k0(B.rA))) +s($,"c16","bqb",()=>A.k0(B.rA)) +s($,"c17","bqc",()=>A.k0(B.alq)) +s($,"c0_","bCl",()=>A.iY(0,0.75,t.i)) +s($,"c_Y","bCj",()=>A.iY(0,1.5,t.i)) +s($,"c_Z","bCk",()=>A.iY(1,0,t.i)) +s($,"c1i","bD1",()=>A.iY(0.875,1,t.i).m3(A.k0(B.ea))) +s($,"c3t","bEm",()=>new A.a3Q()) +s($,"c0x","bCz",()=>A.bOv()) +s($,"c0w","bCy",()=>new A.afm(A.w(A.ar("Fa"),t.we),5,A.ar("afm"))) +s($,"c_n","bkn",()=>A.bLt(4)) +r($,"c00","bCm",()=>B.Ur) +r($,"c02","bCo",()=>{var q=null +return A.bnV(q,B.oT,q,q,q,q,"sans-serif",q,q,18,q,q,q,q,q,q,q,q,q,q,q)}) +r($,"c01","bCn",()=>{var q=null +return A.bne(q,q,q,q,q,q,q,q,q,B.k6,B.i,q)}) +s($,"c1x","bD9",()=>A.bKZ()) +s($,"c03","bCp",()=>A.aT_(65532)) +s($,"c1v","VS",()=>A.aT_(65532)) +s($,"c1w","Gx",()=>$.VS().length) +s($,"c2v","ap0",()=>98304) +s($,"c0a","bkr",()=>A.oN()) +s($,"c09","bCr",()=>A.bn2(0)) +s($,"c0b","bCs",()=>A.bn2(0)) +s($,"c0c","bCt",()=>A.bL_().a) +s($,"c3I","vX",()=>{var q=t.N,p=t.L0 +return new A.aME(A.w(q,A.ar("a2")),A.w(q,p),A.w(q,p))}) +s($,"bYj","aoO",()=>new A.aqM()) +s($,"bZp","bBv",()=>A.C([4294967562,B.pT,4294967564,B.a2U,4294967556,B.a2V],t.S,t.SQ)) +s($,"bZy","bBz",()=>{var q=t.G +return A.C([B.dq,A.cI([B.hH],q),B.dR,A.cI([B.hH],q),B.fa,A.cI([B.ep],q),B.hF,A.cI([B.ep],q),B.f9,A.cI([B.hI],q),B.hE,A.cI([B.hI],q),B.f8,A.cI([B.hG],q),B.hD,A.cI([B.hG],q)],q,A.ar("cz"))}) +s($,"bZx","bBy",()=>{var q=t.G +return A.C([B.hH,A.cI([B.dq,B.dR],q),B.ep,A.cI([B.fa,B.hF],q),B.hI,A.cI([B.f9,B.hE],q),B.hG,A.cI([B.f8,B.hD],q)],q,A.ar("cz"))}) +s($,"c_V","aoU",()=>new A.aNo(A.a([],A.ar("E<~(qI)>")),A.w(t.v3,t.G))) +s($,"c_U","bCi",()=>{var q=t.v3 +return A.C([B.aAt,A.cI([B.hV],q),B.aAu,A.cI([B.hX],q),B.aAv,A.cI([B.hV,B.hX],q),B.aAs,A.cI([B.hV],q),B.aAp,A.cI([B.hU],q),B.aAq,A.cI([B.jI],q),B.aAr,A.cI([B.hU,B.jI],q),B.aAo,A.cI([B.hU],q),B.aAl,A.cI([B.hT],q),B.aAm,A.cI([B.jH],q),B.aAn,A.cI([B.hT,B.jH],q),B.aAk,A.cI([B.hT],q),B.aAx,A.cI([B.hW],q),B.aAy,A.cI([B.jJ],q),B.aAz,A.cI([B.hW,B.jJ],q),B.aAw,A.cI([B.hW],q),B.aAA,A.cI([B.fm],q),B.aAB,A.cI([B.n9],q),B.aAC,A.cI([B.n8],q),B.aAD,A.cI([B.jG],q)],A.ar("eW"),A.ar("cz"))}) +s($,"c_T","bq4",()=>A.C([B.hV,B.f9,B.hX,B.hE,B.hU,B.dq,B.jI,B.dR,B.hT,B.f8,B.jH,B.hD,B.hW,B.fa,B.jJ,B.hF,B.fm,B.js,B.n9,B.mK,B.n8,B.mL],t.v3,t.G)) +s($,"c_S","bCh",()=>{var q=A.w(t.v3,t.G) +q.n(0,B.jG,B.qo) +q.G(0,$.bq4()) +return q}) +s($,"bZa","bBm",()=>new A.Bj("\n",!1,"")) +s($,"bZ9","bBl",()=>A.bIF(A.bB("[0-9]",!0,!1,!1))) +s($,"c0u","dt",()=>{var q=$.bkt() +q=new A.a9t(q,A.cI([q],A.ar("OS")),A.w(t.N,A.ar("bvF"))) +q.c=B.Jt +q.gatK().tq(q.gaEB()) +return q}) +s($,"c1q","bkt",()=>new A.ahW()) +s($,"c0J","aoY",()=>{var q=new A.a9R() +q.a=B.ajA +q.gaMm().tq(q.gaCL()) +return q}) +s($,"bYJ","bkh",()=>{var q,p,o,n=t.vz,m=A.w(t.zU,n) +for(q=t.nR,p=0;p<2;++p){o=B.qj[p] +m.G(0,A.C([A.hM(B.bE,!1,!1,!1,o),B.pk,A.hM(B.bE,!1,!0,!1,o),B.pn,A.hM(B.bE,!0,!1,!1,o),B.pl,A.hM(B.bF,!1,!1,!1,o),B.iS,A.hM(B.bF,!1,!0,!1,o),B.iT,A.hM(B.bF,!0,!1,!1,o),B.pm],q,n))}m.n(0,B.k0,B.hg) +m.n(0,B.k1,B.hh) +m.n(0,B.jZ,B.hi) +m.n(0,B.k_,B.hj) +m.n(0,B.rQ,B.ll) +m.n(0,B.rR,B.lm) +m.n(0,B.Oa,B.j7) +m.n(0,B.Ob,B.j8) +m.n(0,B.rS,B.eR) +m.n(0,B.rT,B.eS) +m.n(0,B.rU,B.ln) +m.n(0,B.rV,B.lo) +m.n(0,B.rW,B.x6) +m.n(0,B.rX,B.x7) +m.n(0,B.rY,B.x4) +m.n(0,B.rZ,B.x5) +m.n(0,B.Oc,B.lp) +m.n(0,B.Od,B.lq) +m.n(0,B.Oe,B.xc) +m.n(0,B.Of,B.xd) +m.n(0,B.amf,B.x8) +m.n(0,B.amg,B.x9) +m.n(0,B.nv,B.pD) +m.n(0,B.nq,B.pE) +m.n(0,B.t3,B.lr) +m.n(0,B.t_,B.ls) +m.n(0,B.Oo,B.w9) +m.n(0,B.Op,B.w8) +m.n(0,B.Oq,B.uV) +m.n(0,B.t0,B.uX) +m.n(0,B.amv,B.v_) +m.n(0,B.amw,B.uW) +m.n(0,B.t1,B.J) +m.n(0,B.t2,B.J) +return m}) +s($,"bYI","bpT",()=>$.bkh()) +s($,"bYK","bB9",()=>$.bpT()) +s($,"bYM","bpU",()=>A.C([B.amX,B.lm,B.amY,B.ll,B.aml,B.j7,B.amZ,B.j8,B.an_,B.xd,B.an0,B.xc,B.amm,B.x8,B.an1,B.x9,B.amn,B.lr,B.an2,B.ls,B.an3,B.j7,B.an4,B.j8,B.amd,B.iS,B.ame,B.iT,B.amy,B.hh,B.amz,B.hg,B.amP,B.hi,B.amA,B.hj,B.amB,B.lq,B.amC,B.lp,B.amQ,B.a0j,B.amD,B.a0k,B.amR,B.pD,B.amE,B.pE,B.amF,B.hi,B.amG,B.hj,B.amH,B.iS,B.amI,B.iT],t.zU,t.vz)) +s($,"bYN","bBb",()=>{var q=A.qg($.bkh(),t.zU,t.vz) +q.G(0,$.bpU()) +q.n(0,B.nr,B.eR) +q.n(0,B.ns,B.eS) +q.n(0,B.nt,B.x6) +q.n(0,B.nu,B.x7) +return q}) +s($,"bYP","bpV",()=>{var q,p,o,n=t.vz,m=A.w(t.zU,n) +for(q=t.nR,p=0;p<2;++p){o=B.qj[p] +m.G(0,A.C([A.hM(B.bE,!1,!1,!1,o),B.pk,A.hM(B.bE,!0,!1,!1,o),B.pn,A.hM(B.bE,!1,!1,!0,o),B.pl,A.hM(B.bF,!1,!1,!1,o),B.iS,A.hM(B.bF,!0,!1,!1,o),B.iT,A.hM(B.bF,!1,!1,!0,o),B.pm],q,n))}m.n(0,B.k0,B.hg) +m.n(0,B.k1,B.hh) +m.n(0,B.jZ,B.hi) +m.n(0,B.k_,B.hj) +m.n(0,B.rQ,B.ll) +m.n(0,B.rR,B.lm) +m.n(0,B.Oa,B.j7) +m.n(0,B.Ob,B.j8) +m.n(0,B.rS,B.lp) +m.n(0,B.rT,B.lq) +m.n(0,B.rU,B.eR) +m.n(0,B.rV,B.eS) +m.n(0,B.rW,B.xe) +m.n(0,B.rX,B.xf) +m.n(0,B.rY,B.xa) +m.n(0,B.rZ,B.xb) +m.n(0,B.Og,B.eR) +m.n(0,B.Oh,B.eS) +m.n(0,B.Oi,B.ln) +m.n(0,B.Oj,B.lo) +m.n(0,B.Ok,B.x1) +m.n(0,B.Ol,B.x2) +m.n(0,B.amh,B.pB) +m.n(0,B.ami,B.pC) +m.n(0,B.amx,B.uZ) +m.n(0,B.nr,B.ND) +m.n(0,B.ns,B.NE) +m.n(0,B.nt,B.pB) +m.n(0,B.nu,B.pC) +m.n(0,B.nv,B.NC) +m.n(0,B.nq,B.NB) +m.n(0,B.t3,B.lr) +m.n(0,B.t_,B.ls) +m.n(0,B.Os,B.w9) +m.n(0,B.Ot,B.w8) +m.n(0,B.Ou,B.uV) +m.n(0,B.Or,B.uX) +m.n(0,B.amo,B.v_) +m.n(0,B.amp,B.uW) +m.n(0,B.amq,B.eS) +m.n(0,B.t0,B.eR) +m.n(0,B.amr,B.hh) +m.n(0,B.ams,B.hg) +m.n(0,B.amt,B.hj) +m.n(0,B.amu,B.hi) +m.n(0,B.t1,B.J) +m.n(0,B.t2,B.J) +return m}) +s($,"bYL","bBa",()=>$.bpV()) +s($,"bYR","bBd",()=>{var q=A.qg($.bkh(),t.zU,t.vz) +q.n(0,B.nv,B.pD) +q.n(0,B.nq,B.pE) +q.n(0,B.nr,B.a0h) +q.n(0,B.ns,B.a0i) +q.n(0,B.nt,B.a0f) +q.n(0,B.nu,B.a0g) +q.n(0,B.Om,B.ln) +q.n(0,B.On,B.lo) +q.n(0,B.amj,B.x4) +q.n(0,B.amk,B.x5) +return q}) +s($,"bYQ","bpW",()=>{var q,p,o,n=t.vz,m=A.w(t.zU,n) +for(q=t.nR,p=0;p<2;++p){o=B.qj[p] +m.G(0,A.C([A.hM(B.bE,!1,!1,!1,o),B.J,A.hM(B.bF,!1,!1,!1,o),B.J,A.hM(B.bE,!0,!1,!1,o),B.J,A.hM(B.bF,!0,!1,!1,o),B.J,A.hM(B.bE,!1,!0,!1,o),B.J,A.hM(B.bF,!1,!0,!1,o),B.J,A.hM(B.bE,!1,!1,!0,o),B.J,A.hM(B.bF,!1,!1,!0,o),B.J],q,n))}m.G(0,B.IW) +m.n(0,B.Oo,B.J) +m.n(0,B.Os,B.J) +m.n(0,B.Op,B.J) +m.n(0,B.Ot,B.J) +m.n(0,B.Oq,B.J) +m.n(0,B.Ou,B.J) +m.n(0,B.t0,B.J) +m.n(0,B.Or,B.J) +return m}) +s($,"bYO","bBc",()=>{var q=A.qg(B.IW,t.zU,t.vz) +q.G(0,B.J2) +q.n(0,B.amS,B.J) +q.n(0,B.amJ,B.J) +q.n(0,B.amK,B.J) +q.n(0,B.rZ,B.J) +q.n(0,B.rY,B.J) +q.n(0,B.rQ,B.J) +q.n(0,B.rR,B.J) +q.n(0,B.rW,B.J) +q.n(0,B.rX,B.J) +q.n(0,B.Ok,B.J) +q.n(0,B.Ol,B.J) +q.n(0,B.nv,B.J) +q.n(0,B.nq,B.J) +q.n(0,B.ns,B.J) +q.n(0,B.nr,B.J) +q.n(0,B.t3,B.J) +q.n(0,B.t_,B.J) +q.n(0,B.nu,B.J) +q.n(0,B.nt,B.J) +q.n(0,B.On,B.J) +q.n(0,B.Om,B.J) +return q}) +r($,"c1o","bqh",()=>new A.ahy(B.aAE,B.aA)) +s($,"c1k","bD3",()=>A.iY(1,0,t.i)) +s($,"c_t","nU",()=>A.blZ()) +s($,"c1j","bD2",()=>A.dA(16667,0,0)) +s($,"c05","bCq",()=>A.bnN(0.5,1.1,100)) +s($,"bYs","bkg",()=>A.Vz(0.78)/A.Vz(0.9)) +s($,"c1X","bDs",()=>A.aFf(A.cI([B.hG],t.G))) +s($,"c2P","bE6",()=>A.aFf(A.cI([B.hH],t.G))) +s($,"c1P","bDp",()=>A.aFf(A.cI([B.hI],t.G))) +s($,"c2C","bDY",()=>A.aFf(A.cI([B.ep],t.G))) +s($,"bZw","bBx",()=>{var q=t.w3 +return A.C([B.hG,A.a([B.f8,B.hD],q),B.hH,A.a([B.dq,B.dR],q),B.hI,A.a([B.f9,B.hE],q),B.ep,A.a([B.fa,B.hF],q)],t.G,A.ar("D"))}) +s($,"bYH","bB8",()=>{var q=null,p=new A.b9R(A.bGq(B.oB.gagQ(0),$.aoW()),A.bWx(),B.TS,B.oB),o=t.N,n=new A.a7p(p,A.w(o,t._A),q) +n.aqV(q) +n.Pm(q) +p.a=n +n=p.b +p=p.acC(0,n==null?p.b=p.acC(0,B.oB.gagQ(0)).acb(".tmp_").b:n) +p.aca() +p=new A.aIf(p.Vq("cache")) +n=A.bJn() +p=new A.asy(new A.a4Z(),p,B.ZX,200,n) +o=new A.aud(A.w(o,A.ar("b7")),p,A.bFP(p)) +o.aqF(p) +return o}) +r($,"c34","ap2",()=>new A.arl()) +r($,"bIQ","bpY",()=>{var q=new A.aVe() +q.qr(B.ix) +return q}) +s($,"c3l","bqu",()=>A.bmp(B.a65,t.N)) +s($,"c3a","bEh",()=>{var q=null +return A.C(["af",A.b9(B.a4v,B.abA,B.aq,B.AN,B.acx,6,5,B.BB,"af",B.U,B.D8,B.a3z,B.D9,B.f3,B.zN,B.BB,B.U,B.D8,B.D9,B.zN,B.Bl,B.aa,B.Bl,B.z,q),"am",A.b9(B.a7J,B.a7I,B.aq,B.ab_,B.acH,6,5,B.yP,"am",B.Cm,B.Bc,B.a38,B.AA,B.a54,B.yr,B.yP,B.Cm,B.Bc,B.AA,B.yr,B.Ah,B.b1,B.Ah,B.z,q),"ar",A.b9(B.a6f,B.a6N,B.a7j,B.a8Y,B.a6W,5,4,B.m7,"ar",B.z3,B.Df,B.AR,B.m7,B.AR,B.mj,B.m7,B.z3,B.Df,B.m7,B.mj,B.mj,B.b1,B.mj,B.yN,"\u0660"),"as",A.b9(B.a3k,B.a8C,B.aq,B.ac8,B.a91,6,5,B.A_,"as",B.C0,B.Ca,B.aal,B.Da,B.a5a,B.Bq,B.A_,B.C0,B.Ca,B.Da,B.Bq,B.AG,B.act,B.AG,B.d1,"\u09e6"),"az",A.b9(B.ak,B.acB,B.aq,B.a4l,B.acI,0,6,B.Dq,"az",B.bq,B.yy,B.a7_,B.DJ,B.acy,B.a9f,B.Dq,B.bq,B.yy,B.DJ,B.a7A,B.Bo,B.aa,B.Bo,B.z,q),"be",A.b9(B.ak,B.a6o,B.abK,B.a8X,B.a7B,0,6,B.aav,"be",B.Av,B.AS,B.a61,B.a6O,B.a64,B.BJ,B.a5i,B.Av,B.AS,B.a7K,B.BJ,B.CX,B.abp,B.CX,B.z,q),"bg",A.b9(B.ac6,B.a5Q,B.d2,B.a9x,B.a4m,0,3,B.zE,"bg",B.yA,B.mw,B.a6R,B.Bd,B.acJ,B.mi,B.zE,B.yA,B.mw,B.Bd,B.mi,B.As,B.a7O,B.As,B.z,q),"bn",A.b9(B.ak,B.m2,B.aq,B.abG,B.a5Y,6,5,B.qi,"bn",B.BT,B.yt,B.yb,B.a7k,B.yb,B.yU,B.qi,B.BT,B.yt,B.qi,B.yU,B.Bk,B.b1,B.Bk,B.z,"\u09e6"),"bs",A.b9(B.aby,B.a5G,B.CG,B.a8u,B.Dh,0,6,B.Cf,"bs",B.en,B.zR,B.a6Q,B.AL,B.a7l,B.lY,B.Cf,B.en,B.m0,B.AL,B.lY,B.mo,B.aa,B.mo,B.z,q),"ca",A.b9(B.jp,B.ab6,B.a9B,B.abE,B.a9u,0,3,B.aaE,"ca",B.Aj,B.Cc,B.a6X,B.a8d,B.a5w,B.zP,B.a8m,B.Aj,B.Cc,B.a97,B.zP,B.D7,B.AW,B.D7,B.z,q),"cs",A.b9(B.a5m,B.a5H,B.aq,B.a6t,B.acL,0,3,B.acC,"cs",B.bq,B.AZ,B.acT,B.CY,B.aZ,B.BK,B.a9o,B.bq,B.AZ,B.CY,B.BK,B.CK,B.mz,B.CK,B.z,q),"cy",A.b9(B.acW,B.abl,B.a8v,B.abr,B.a5Z,0,3,B.zu,"cy",B.zv,B.AE,B.abV,B.a7c,B.a66,B.a9h,B.zu,B.zv,B.AE,B.a62,B.a6v,B.Ad,B.aa,B.Ad,B.z,q),"da",A.b9(B.ak,B.ab1,B.a8T,B.hy,B.hy,0,3,B.CN,"da",B.U,B.ei,B.jl,B.Cz,B.a5g,B.jn,B.CN,B.U,B.ei,B.Cz,B.a4s,B.hs,B.q9,B.hs,B.z,q),"de",A.b9(B.ak,B.qc,B.An,B.hw,B.hw,0,3,B.m_,"de",B.U,B.hv,B.qe,B.Di,B.aZ,B.DO,B.m_,B.U,B.hv,B.mq,B.B3,B.lX,B.aa,B.lX,B.z,q),"de_CH",A.b9(B.ak,B.qc,B.An,B.hw,B.hw,0,3,B.m_,"de_CH",B.U,B.hv,B.qe,B.Di,B.aZ,B.DO,B.m_,B.U,B.hv,B.mq,B.B3,B.lX,B.aa,B.lX,B.z,q),"el",A.b9(B.a8y,B.Dj,B.a7N,B.a6e,B.abZ,0,3,B.a5v,"el",B.ym,B.yc,B.acn,B.a8g,B.a8S,B.D_,B.a4J,B.ym,B.yc,B.abt,B.D_,B.zk,B.b1,B.zk,B.z,q),"en",A.b9(B.ak,B.f2,B.dm,B.ck,B.bD,6,5,B.b7,"en",B.U,B.aR,B.d3,B.f4,B.aZ,B.b6,B.b7,B.U,B.aR,B.f4,B.b6,B.b8,B.b1,B.b8,B.z,q),"en_AU",A.b9(B.f5,B.m6,B.dm,B.ck,B.bD,0,6,B.b7,"en_AU",B.U,B.CA,B.d3,B.aa4,B.aZ,B.b6,B.b7,B.U,B.CA,B.f4,B.b6,B.b8,B.b1,B.b8,B.z,q),"en_CA",A.b9(B.em,B.a8Q,B.dm,B.ck,B.bD,6,5,B.b7,"en_CA",B.U,B.aR,B.d3,B.c3,B.aZ,B.b6,B.b7,B.U,B.aR,B.c3,B.b6,B.b8,B.b1,B.b8,B.z,q),"en_GB",A.b9(B.f5,B.DQ,B.dm,B.ck,B.bD,0,3,B.b7,"en_GB",B.U,B.aR,B.d3,B.c3,B.aZ,B.b6,B.b7,B.U,B.aR,B.c3,B.b6,B.b8,B.aa,B.b8,B.z,q),"en_IE",A.b9(B.em,B.yH,B.dm,B.ck,B.bD,0,3,B.b7,"en_IE",B.U,B.aR,B.d3,B.c3,B.aZ,B.b6,B.b7,B.U,B.aR,B.c3,B.b6,B.b8,B.aa,B.b8,B.z,q),"en_IN",A.b9(B.f5,B.a8k,B.dm,B.ck,B.bD,6,5,B.b7,"en_IN",B.U,B.aR,B.d3,B.c3,B.aZ,B.b6,B.b7,B.U,B.aR,B.c3,B.b6,B.b8,B.b1,B.b8,B.d1,q),"en_NZ",A.b9(B.f5,B.a9_,B.dm,B.ck,B.bD,0,6,B.b7,"en_NZ",B.U,B.aR,B.d3,B.c3,B.aZ,B.b6,B.b7,B.U,B.aR,B.c3,B.b6,B.b8,B.b1,B.b8,B.z,q),"en_SG",A.b9(B.f5,B.m6,B.dm,B.ck,B.bD,6,5,B.b7,"en_SG",B.U,B.aR,B.d3,B.c3,B.aZ,B.b6,B.b7,B.U,B.aR,B.c3,B.b6,B.b8,B.b1,B.b8,B.z,q),"en_US",A.b9(B.ak,B.f2,B.dm,B.ck,B.bD,6,5,B.b7,"en_US",B.U,B.aR,B.d3,B.f4,B.aZ,B.b6,B.b7,B.U,B.aR,B.f4,B.b6,B.b8,B.b1,B.b8,B.z,q),"en_ZA",A.b9(B.f5,B.a9H,B.dm,B.ck,B.bD,6,5,B.b7,"en_ZA",B.U,B.aR,B.d3,B.c3,B.aZ,B.b6,B.b7,B.U,B.aR,B.c3,B.b6,B.b8,B.aa,B.b8,B.z,q),"es",A.b9(B.jp,B.Bm,B.d2,B.mn,B.mb,0,3,B.eo,"es",B.ek,B.yZ,B.CT,B.eg,B.dl,B.ej,B.eo,B.ek,B.yZ,B.eg,B.ej,B.el,B.AW,B.el,B.z,q),"es_419",A.b9(B.jp,B.Bm,B.zs,B.mn,B.mb,0,3,B.eo,"es_419",B.ek,B.aca,B.mh,B.eg,B.dl,B.ej,B.eo,B.ek,B.d4,B.eg,B.ej,B.el,B.aa,B.el,B.z,q),"es_MX",A.b9(B.jp,B.a7Y,B.zs,B.mn,B.mb,6,5,B.eo,"es_MX",B.ek,B.d4,B.CT,B.eg,B.dl,B.ej,B.eo,B.ek,B.d4,B.eg,B.ej,B.el,B.aa,B.el,B.z,q),"es_US",A.b9(B.jp,B.a8i,B.d2,B.mn,B.mb,6,5,B.eo,"es_US",B.ek,B.d4,B.mh,B.eg,B.dl,B.ej,B.eo,B.ek,B.d4,B.eg,B.ej,B.el,B.b1,B.el,B.z,q),"et",A.b9(B.ak,B.a8h,B.aq,B.a3m,B.aa2,0,3,B.Au,"et",B.AT,B.m9,B.jl,B.Bg,B.f3,B.m9,B.Au,B.AT,B.m9,B.Bg,B.m9,B.yo,B.aa,B.yo,B.z,q),"eu",A.b9(B.ak,B.a5C,B.aq,B.a59,B.a5P,0,3,B.a58,"eu",B.DR,B.BR,B.a9R,B.DF,B.acE,B.Ck,B.acS,B.DR,B.BR,B.DF,B.Ck,B.Dz,B.zr,B.Dz,B.z,q),"fa",A.b9(B.a5x,B.a5U,B.a8R,B.a6U,B.a6Y,5,4,B.a8A,"fa",B.z8,B.yW,B.a9I,B.qb,B.a6T,B.mf,B.qb,B.z8,B.yW,B.qb,B.mf,B.mf,B.zB,B.mf,B.a4C,"\u06f0"),"fi",A.b9(B.a4u,B.a9P,B.a98,B.aaP,B.aaC,0,3,B.a73,"fi",B.zZ,B.yf,B.a7s,B.a60,B.ab0,B.DD,B.a5c,B.zZ,B.yf,B.a57,B.DD,B.a3J,B.a3d,B.a8Z,B.z,q),"fil",A.b9(B.ak,B.f2,B.D4,B.ck,B.bD,6,5,B.mg,"fil",B.ht,B.eh,B.yw,B.ht,B.aZ,B.eh,B.mg,B.DN,B.eh,B.ht,B.eh,B.lU,B.b1,B.lU,B.z,q),"fr",A.b9(B.ak,B.yH,B.A7,B.Cu,B.DL,0,3,B.mx,"fr",B.U,B.d4,B.C8,B.yX,B.dl,B.m8,B.mx,B.U,B.d4,B.yX,B.m8,B.mC,B.aa,B.mC,B.z,q),"fr_CA",A.b9(B.em,B.B5,B.A7,B.Cu,B.DL,6,5,B.mx,"fr_CA",B.U,B.d4,B.C8,B.DU,B.dl,B.m8,B.mx,B.U,B.d4,B.DU,B.m8,B.mC,B.a7P,B.mC,B.z,q),"gl",A.b9(B.em,B.a6j,B.a3Z,B.aas,B.mD,0,3,B.a9b,"gl",B.a7w,B.a6F,B.mh,B.a9D,B.dl,B.a3S,B.a5z,B.aaA,B.abs,B.aaR,B.a6l,B.abB,B.aa,B.a3K,B.z,q),"gsw",A.b9(B.a6u,B.qc,B.aq,B.hw,B.hw,0,3,B.zx,"gsw",B.U,B.hv,B.qe,B.mq,B.aZ,B.Du,B.zx,B.U,B.hv,B.mq,B.Du,B.Dl,B.aa,B.Dl,B.z,q),"gu",A.b9(B.ak,B.m2,B.ack,B.aco,B.a7y,6,5,B.Ab,"gu",B.B7,B.yD,B.a9v,B.Cy,B.aZ,B.Co,B.Ab,B.B7,B.yD,B.Cy,B.Co,B.A4,B.D5,B.A4,B.d1,q),"he",A.b9(B.a7g,B.a3T,B.a7H,B.a3Q,B.a7Q,6,5,B.DM,"he",B.bq,B.Dc,B.a7t,B.AB,B.aZ,B.B2,B.DM,B.bq,B.Dc,B.AB,B.B2,B.Dv,B.mz,B.Dv,B.yN,q),"hi",A.b9(B.f5,B.m6,B.a3e,B.a7u,B.abv,6,5,B.BF,"hi",B.Ce,B.mF,B.abJ,B.C4,B.a5E,B.zO,B.BF,B.Ce,B.mF,B.C4,B.zO,B.BP,B.b1,B.BP,B.d1,q),"hr",A.b9(B.ak,B.a7d,B.CG,B.aaG,B.a3U,0,6,B.a8o,"hr",B.AC,B.zR,B.jl,B.Dw,B.a87,B.lY,B.a5y,B.AC,B.m0,B.Dw,B.lY,B.mo,B.a9s,B.mo,B.z,q),"hu",A.b9(B.a95,B.a7U,B.aq,B.a3g,B.abm,0,3,B.yI,"hu",B.zh,B.Ar,B.a6z,B.CF,B.aaI,B.Do,B.yI,B.zh,B.Ar,B.CF,B.Do,B.yE,B.mz,B.yE,B.z,q),"hy",A.b9(B.ak,B.ac5,B.d2,B.abq,B.ad_,0,6,B.aaF,"hy",B.BN,B.ys,B.abF,B.C_,B.a4W,B.zo,B.a78,B.BN,B.ys,B.C_,B.zo,B.AQ,B.aa,B.AQ,B.z,q),"id",A.b9(B.ak,B.a8f,B.aq,B.a4x,B.a8t,6,5,B.Cv,"id",B.U,B.zU,B.ab9,B.zH,B.f3,B.Ag,B.Cv,B.U,B.zU,B.zH,B.Ag,B.zL,B.q9,B.zL,B.z,q),"is",A.b9(B.ad3,B.a9E,B.q7,B.a4G,B.hy,0,3,B.CZ,"is",B.Cn,B.Ao,B.a7m,B.Bv,B.a6r,B.yF,B.CZ,B.Cn,B.Ao,B.Bv,B.yF,B.CC,B.aa,B.CC,B.z,q),"it",A.b9(B.ak,B.a7F,B.hC,B.a9c,B.mD,0,3,B.Dn,"it",B.AP,B.zI,B.DT,B.Ay,B.dl,B.D6,B.Dn,B.AP,B.zI,B.Ay,B.D6,B.Bh,B.aa,B.Bh,B.z,q),"ja",A.b9(B.a5B,B.aaU,B.aq,B.B0,B.B0,6,5,B.c4,"ja",B.bq,B.me,B.a7r,B.c4,B.aZ,B.me,B.c4,B.bq,B.me,B.c4,B.me,B.zi,B.a6G,B.zi,B.z,q),"ka",A.b9(B.ak,B.a9T,B.d2,B.a7D,B.a6P,0,6,B.BU,"ka",B.Cq,B.z2,B.a4S,B.AI,B.a9z,B.Bp,B.BU,B.Cq,B.z2,B.AI,B.Bp,B.C7,B.aa,B.C7,B.z,q),"kk",A.b9(B.ak,B.acD,B.d2,B.a5s,B.a7o,0,6,B.a56,"kk",B.Bu,B.DC,B.a9r,B.Be,B.aaY,B.D2,B.a3G,B.Bu,B.DC,B.Be,B.D2,B.zb,B.aa,B.zb,B.z,q),"km",A.b9(B.ak,B.Dj,B.abd,B.a3R,B.a4w,6,5,B.mB,"km",B.Bt,B.CI,B.Ds,B.mB,B.Ds,B.DS,B.mB,B.Bt,B.CI,B.mB,B.DS,B.abg,B.b1,B.a9y,B.z,q),"kn",A.b9(B.acK,B.acc,B.aq,B.a5R,B.a5o,6,5,B.DK,"kn",B.BL,B.D1,B.a8D,B.a6H,B.acs,B.Cx,B.DK,B.BL,B.D1,B.a5p,B.Cx,B.z4,B.D5,B.z4,B.d1,q),"ko",A.b9(B.ab8,B.aa5,B.aq,B.a3v,B.bD,6,5,B.hx,"ko",B.hx,B.m4,B.a8J,B.hx,B.a5L,B.m4,B.hx,B.hx,B.m4,B.hx,B.m4,B.yg,B.a8x,B.yg,B.z,q),"ky",A.b9(B.abn,B.a53,B.aq,B.aaw,B.a83,0,6,B.AM,"ky",B.lZ,B.zc,B.a4U,B.abS,B.a6p,B.CR,B.a9j,B.lZ,B.zc,B.a90,B.CR,B.C3,B.aa,B.C3,B.z,q),"lo",A.b9(B.aaX,B.a9p,B.d2,B.acz,B.acr,6,5,B.za,"lo",B.bq,B.z_,B.a9A,B.zy,B.a9N,B.Az,B.za,B.bq,B.z_,B.zy,B.Az,B.Cs,B.acj,B.Cs,B.z,q),"lt",A.b9(B.a8n,B.a6I,B.aq,B.a8q,B.AY,0,3,B.a4g,"lt",B.AJ,B.C5,B.a8b,B.AV,B.a3A,B.A3,B.a9q,B.AJ,B.C5,B.AV,B.A3,B.CP,B.aa,B.CP,B.z,q),"lv",A.b9(B.a4A,B.abk,B.aq,B.a5N,B.a8l,0,6,B.Bw,"lv",B.U,B.yi,B.a8F,B.AK,B.abw,B.a7V,B.Bw,B.U,B.yi,B.AK,B.aay,B.abh,B.aa,B.a7S,B.z,q),"mk",A.b9(B.a3H,B.acG,B.aaS,B.a5f,B.ab2,0,6,B.zJ,"mk",B.mG,B.mw,B.a3f,B.zz,B.ab7,B.CO,B.zJ,B.mG,B.mw,B.zz,B.CO,B.C1,B.aa,B.C1,B.z,q),"ml",A.b9(B.ak,B.a84,B.aq,B.a5j,B.a4R,6,5,B.At,"ml",B.zX,B.a9K,B.Br,B.Dm,B.Br,B.A9,B.At,B.zX,B.abQ,B.Dm,B.A9,B.abW,B.b1,B.a8N,B.d1,q),"mn",A.b9(B.aaL,B.a3j,B.aq,B.abN,B.a5q,6,5,B.abU,"mn",B.Aa,B.ma,B.acq,B.CM,B.a6S,B.ma,B.a71,B.Aa,B.ma,B.CM,B.ma,B.a5h,B.zr,B.a4F,B.z,q),"mr",A.b9(B.ak,B.m2,B.acN,B.a7T,B.a8U,6,5,B.Ae,"mr",B.DE,B.mF,B.a6x,B.AF,B.a7a,B.Dt,B.Ae,B.DE,B.mF,B.AF,B.Dt,B.Bf,B.b1,B.Bf,B.d1,"\u0966"),"ms",A.b9(B.a85,B.a7v,B.hC,B.BG,B.BG,0,6,B.yj,"ms",B.yB,B.Bx,B.a3C,B.A1,B.a8p,B.zf,B.yj,B.yB,B.Bx,B.A1,B.zf,B.z7,B.b1,B.z7,B.z,q),"my",A.b9(B.a7W,B.a6y,B.aq,B.a5T,B.a70,6,5,B.AU,"my",B.CL,B.z0,B.A8,B.zw,B.A8,B.ml,B.AU,B.CL,B.z0,B.zw,B.ml,B.ml,B.a72,B.ml,B.z,"\u1040"),"nb",A.b9(B.em,B.yh,B.q7,B.Dd,B.hy,0,3,B.mc,"nb",B.U,B.ei,B.jl,B.CE,B.f3,B.jn,B.mc,B.U,B.ei,B.zp,B.jn,B.hs,B.aa,B.hs,B.z,q),"ne",A.b9(B.a9e,B.a8V,B.hC,B.zn,B.zn,6,5,B.mk,"ne",B.ad0,B.yu,B.ze,B.mk,B.ze,B.yG,B.mk,B.a92,B.yu,B.mk,B.yG,B.yY,B.aa,B.yY,B.z,"\u0966"),"nl",A.b9(B.em,B.a4t,B.a8w,B.AN,B.a9g,0,3,B.Cw,"nl",B.U,B.Dx,B.acA,B.Dy,B.f3,B.AD,B.Cw,B.U,B.Dx,B.Dy,B.AD,B.z6,B.aa,B.z6,B.z,q),"no",A.b9(B.em,B.yh,B.q7,B.Dd,B.hy,0,3,B.mc,"no",B.U,B.ei,B.jl,B.CE,B.f3,B.jn,B.mc,B.U,B.ei,B.zp,B.jn,B.hs,B.aa,B.hs,B.z,q),"or",A.b9(B.ak,B.f2,B.a6L,B.a4y,B.bD,6,5,B.m3,"or",B.zg,B.B4,B.CW,B.m3,B.CW,B.A6,B.m3,B.zg,B.B4,B.m3,B.A6,B.Ch,B.b1,B.Ch,B.d1,q),"pa",A.b9(B.ab4,B.m6,B.hC,B.abD,B.a9m,6,5,B.BE,"pa",B.yS,B.Ba,B.aaO,B.yq,B.a3h,B.AO,B.BE,B.yS,B.Ba,B.yq,B.AO,B.yp,B.b1,B.yp,B.d1,q),"pl",A.b9(B.ak,B.abb,B.hC,B.a6k,B.abX,0,3,B.a3u,"pl",B.aao,B.a8c,B.ac3,B.Bn,B.a9J,B.yv,B.aaD,B.a8K,B.aax,B.Bn,B.yv,B.Am,B.aa,B.Am,B.z,q),"ps",A.b9(B.aa1,B.a5I,B.aq,B.a4n,B.aam,5,4,B.Ap,"ps",B.a9G,B.aR,B.zj,B.Ap,B.zj,B.mm,B.abR,B.bq,B.aR,B.a8j,B.mm,B.mm,B.zB,B.mm,B.a3X,"\u06f0"),"pt",A.b9(B.ak,B.abu,B.aq,B.A5,B.mD,6,5,B.mv,"pt",B.U,B.lV,B.DT,B.md,B.dl,B.zW,B.mv,B.U,B.lV,B.md,B.zW,B.ms,B.aa,B.ms,B.z,q),"pt_PT",A.b9(B.a9k,B.acV,B.abz,B.A5,B.mD,6,2,B.mv,"pt_PT",B.U,B.lV,B.mh,B.md,B.dl,B.zd,B.mv,B.U,B.lV,B.md,B.zd,B.ms,B.aa,B.ms,B.z,q),"ro",A.b9(B.em,B.aaW,B.d2,B.abM,B.aba,0,6,B.zY,"ro",B.zA,B.d4,B.a7h,B.z9,B.ac2,B.Db,B.zY,B.zA,B.d4,B.z9,B.Db,B.CB,B.aa,B.CB,B.z,q),"ru",A.b9(B.ak,B.a5e,B.d2,B.a9d,B.a93,0,3,B.aaK,"ru",B.lZ,B.zq,B.Ak,B.a8e,B.zT,B.C9,B.AM,B.lZ,B.zq,B.a3V,B.C9,B.C2,B.aa,B.C2,B.z,q),"si",A.b9(B.abo,B.aaZ,B.aq,B.a7M,B.acv,0,6,B.CU,"si",B.Cl,B.BQ,B.a7e,B.a6J,B.a8s,B.zG,B.CU,B.Cl,B.BQ,B.a8O,B.zG,B.BH,B.q9,B.BH,B.z,q),"sk",A.b9(B.ak,B.a7L,B.acP,B.a5W,B.a3O,0,3,B.ab3,"sk",B.en,B.zC,B.a3i,B.yM,B.aZ,B.BA,B.a3D,B.en,B.zC,B.yM,B.BA,B.z5,B.mz,B.z5,B.z,q),"sl",A.b9(B.a3r,B.a4D,B.hC,B.a6m,B.AY,0,6,B.CH,"sl",B.en,B.AX,B.a9t,B.DI,B.a8L,B.DB,B.CH,B.en,B.AX,B.DI,B.DB,B.BM,B.aa,B.BM,B.z,q),"sq",A.b9(B.a7x,B.acU,B.a9i,B.a9O,B.a74,0,6,B.Bs,"sq",B.DH,B.A2,B.a94,B.Dp,B.acw,B.a40,B.Bs,B.DH,B.A2,B.Dp,B.a96,B.yC,B.a3E,B.yC,B.z,q),"sr",A.b9(B.ak,B.Ai,B.aq,B.abj,B.abP,0,6,B.yO,"sr",B.mG,B.C6,B.a79,B.A0,B.a3F,B.Aw,B.yO,B.mG,B.C6,B.A0,B.Aw,B.BO,B.aa,B.BO,B.z,q),"sr_Latn",A.b9(B.ak,B.Ai,B.aq,B.a5d,B.Dh,0,6,B.Ci,"sr_Latn",B.en,B.m0,B.a39,B.D3,B.a6n,B.D0,B.Ci,B.en,B.m0,B.D3,B.D0,B.B1,B.aa,B.B1,B.z,q),"sv",A.b9(B.aat,B.B5,B.aq,B.a5l,B.hy,0,3,B.CD,"sv",B.U,B.ei,B.a9F,B.zF,B.f3,B.Bb,B.CD,B.U,B.ei,B.zF,B.Bb,B.Cg,B.aa,B.Cg,B.z,q),"sw",A.b9(B.ak,B.DQ,B.aq,B.a63,B.a7i,0,6,B.Al,"sw",B.U,B.aR,B.Cj,B.Cr,B.Cj,B.mA,B.Al,B.U,B.aR,B.Cr,B.mA,B.mA,B.aa,B.mA,B.z,q),"ta",A.b9(B.acZ,B.m2,B.a8B,B.a7X,B.a3N,6,5,B.DG,"ta",B.zV,B.yJ,B.a6a,B.zQ,B.abC,B.CJ,B.DG,B.zV,B.yJ,B.zQ,B.CJ,B.zD,B.acQ,B.zD,B.d1,q),"te",A.b9(B.ak,B.a6M,B.a4h,B.a7f,B.a9Q,6,5,B.Dg,"te",B.Dk,B.zl,B.a6d,B.DA,B.a8a,B.zm,B.Dg,B.Dk,B.zl,B.DA,B.zm,B.Ax,B.b1,B.Ax,B.d1,q),"th",A.b9(B.acY,B.acp,B.aq,B.a75,B.aaJ,6,5,B.BS,"th",B.mr,B.yK,B.BZ,B.mr,B.BZ,B.yQ,B.BS,B.mr,B.yK,B.mr,B.yQ,B.yR,B.aau,B.yR,B.z,q),"tl",A.b9(B.ak,B.f2,B.D4,B.ck,B.bD,6,5,B.mg,"tl",B.ht,B.eh,B.yw,B.ht,B.aZ,B.eh,B.mg,B.DN,B.eh,B.ht,B.eh,B.lU,B.b1,B.lU,B.z,q),"tr",A.b9(B.a6V,B.ad1,B.aq,B.acl,B.a9n,0,6,B.Bi,"tr",B.yl,B.Dr,B.acm,B.yn,B.abT,B.De,B.Bi,B.yl,B.Dr,B.yn,B.De,B.CV,B.aa,B.CV,B.z,q),"uk",A.b9(B.aaM,B.aa3,B.abL,B.aaq,B.aaV,0,6,B.a3L,"uk",B.aaB,B.B6,B.Ak,B.a6s,B.zT,B.mi,B.acR,B.a8M,B.B6,B.aaN,B.mi,B.AH,B.aa,B.AH,B.z,q),"ur",A.b9(B.ak,B.a5V,B.aq,B.Ct,B.Ct,6,5,B.m5,"ur",B.U,B.aR,B.Bz,B.m5,B.Bz,B.mp,B.m5,B.U,B.aR,B.m5,B.mp,B.mp,B.b1,B.mp,B.z,q),"uz",A.b9(B.a8E,B.a7G,B.d2,B.aap,B.acb,0,6,B.a4X,"uz",B.Aq,B.yT,B.a89,B.a4E,B.acM,B.yz,B.ac_,B.Aq,B.yT,B.a6c,B.yz,B.yV,B.abe,B.yV,B.z,q),"vi",A.b9(B.a8r,B.a3a,B.a55,B.a6b,B.a6_,0,6,B.a7C,"vi",B.bq,B.yd,B.a3o,B.aaT,B.aZ,B.BC,B.a7z,B.bq,B.yd,B.ab5,B.BC,B.Bj,B.aa,B.Bj,B.z,q),"zh",A.b9(B.qa,B.a3I,B.aq,B.mE,B.mE,6,5,B.zK,"zh",B.bq,B.hA,B.abf,B.c4,B.a6q,B.DP,B.zK,B.bq,B.hA,B.c4,B.DP,B.hu,B.a9L,B.hu,B.z,q),"zh_HK",A.b9(B.qa,B.a9C,B.aq,B.mE,B.mE,6,5,B.c4,"zh_HK",B.bq,B.hA,B.q8,B.c4,B.aZ,B.mu,B.c4,B.bq,B.hA,B.c4,B.mu,B.hu,B.a8P,B.hu,B.z,q),"zh_TW",A.b9(B.qa,B.a9l,B.aq,B.zt,B.zt,6,5,B.c4,"zh_TW",B.bq,B.hA,B.q8,B.c4,B.q8,B.mu,B.c4,B.bq,B.hA,B.c4,B.mu,B.hu,B.acO,B.hu,B.z,q),"zu",A.b9(B.ak,B.f2,B.aq,B.bD,B.bD,6,5,B.B_,"zu",B.a3M,B.Cd,B.a8I,B.ye,B.aZ,B.By,B.B_,B.U,B.Cd,B.ye,B.By,B.CS,B.aa,B.CS,B.z,q)],t.N,t.fs)}) +s($,"c3o","bqx",()=>A.bmp(B.zM,t.N)) +s($,"c3s","bqB",()=>A.bmp(B.zM,t.N)) +s($,"c1r","aoZ",()=>A.bMK(10,A.bvE()+10,A.bvD().a.a-20,A.bN9()-A.bvE()-A.bvD().r.d-20)) +r($,"c0h","fg",()=>A.bHr().gjW()) +s($,"c3J","bEp",()=>{var q=t.K +return new A.aTc(new A.arj(A.w(q,A.ar("a2")),A.w(q,t.V4)))}) +s($,"c3O","bEr",()=>new A.aMN(A.w(t.N,A.ar("a2?(d9?)")))) +s($,"bYh","bB0",()=>A.bB("^[\\w!#%&'*+\\-.^`|~]+$",!0,!1,!1)) +s($,"c21","bDv",()=>A.bB('["\\x00-\\x1F\\x7F]',!0,!1,!1)) +s($,"c3N","bEq",()=>A.bB('[^()<>@,;:"\\\\/[\\]?={} \\t\\x00-\\x1F\\x7F]+',!0,!1,!1)) +s($,"c2B","bDX",()=>A.bB("(?:\\r\\n)?[ \\t]+",!0,!1,!1)) +s($,"c2F","bE0",()=>A.bB('"(?:[^"\\x00-\\x1F\\x7F]|\\\\.)*"',!0,!1,!1)) +s($,"c2E","bE_",()=>A.bB("\\\\(.)",!0,!1,!1)) +s($,"c3B","bEn",()=>A.bB('[()<>@,;:"\\\\/\\[\\]?={} \\t\\x00-\\x1F\\x7F]',!0,!1,!1)) +s($,"c3P","bEs",()=>A.bB("(?:"+$.bDX().a+")*",!0,!1,!1)) +s($,"c3e","bEj",()=>A.b9(B.ak,B.f2,B.d2,B.ck,B.bD,6,5,B.b7,"en_US",B.U,B.aR,B.d3,B.f4,B.aZ,B.b6,B.b7,B.U,B.aR,B.f4,B.b6,B.b8,B.a5b,B.b8,B.z,null)) +r($,"c3D","bqD",()=>{var q=",",p="\xa0",o="%",n="0",m="+",l="-",k="E",j="\u2030",i="\u221e",h="NaN",g="#,##0.###",f="#E0",e="#,##0%",d="\xa4#,##0.00",c=".",b="\u200e+",a="\u200e-",a0="\u0644\u064a\u0633\xa0\u0631\u0642\u0645\u064b\u0627",a1="\u200f#,##0.00\xa0\xa4;\u200f-#,##0.00\xa0\xa4",a2="#,##,##0.###",a3="#,##,##0%",a4="\xa4\xa0#,##,##0.00",a5="INR",a6="#,##0.00\xa0\xa4",a7="#,##0\xa0%",a8="EUR",a9="USD",b0="\xa4\xa0#,##0.00",b1="\xa4\xa0#,##0.00;\xa4-#,##0.00",b2="CHF",b3="\xa4#,##,##0.00",b4="\u2212",b5="\xd710^",b6="[#E0]",b7="\u200f#,##0.00\xa0\u200f\xa4;\u200f-#,##0.00\xa0\u200f\xa4",b8="#,##0.00\xa0\xa4;-#,##0.00\xa0\xa4" +return A.C(["af",A.aQ(d,g,q,"ZAR",k,p,i,l,"af",h,o,e,j,m,f,n),"am",A.aQ(d,g,c,"ETB",k,q,i,l,"am",h,o,e,j,m,f,n),"ar",A.aQ(a1,g,c,"EGP",k,q,i,a,"ar",a0,"\u200e%\u200e",e,j,b,f,n),"ar_DZ",A.aQ(a1,g,q,"DZD",k,c,i,a,"ar_DZ",a0,"\u200e%\u200e",e,j,b,f,n),"ar_EG",A.aQ("\u200f#,##0.00\xa0\xa4",g,"\u066b","EGP","\u0623\u0633","\u066c",i,"\u061c-","ar_EG","\u0644\u064a\u0633\xa0\u0631\u0642\u0645","\u066a\u061c",e,"\u0609","\u061c+",f,"\u0660"),"as",A.aQ(a4,a2,c,a5,k,q,i,l,"as",h,o,a3,j,m,f,"\u09e6"),"az",A.aQ(a6,g,q,"AZN",k,c,i,l,"az",h,o,e,j,m,f,n),"be",A.aQ(a6,g,q,"BYN",k,p,i,l,"be",h,o,a7,j,m,f,n),"bg",A.aQ(a6,g,q,"BGN",k,p,i,l,"bg",h,o,e,j,m,f,n),"bm",A.aQ(d,g,c,"XOF",k,q,i,l,"bm",h,o,e,j,m,f,n),"bn",A.aQ("#,##,##0.00\xa4",a2,c,"BDT",k,q,i,l,"bn",h,o,e,j,m,f,"\u09e6"),"br",A.aQ(a6,g,q,a8,k,p,i,l,"br",h,o,a7,j,m,f,n),"bs",A.aQ(a6,g,q,"BAM",k,c,i,l,"bs",h,o,e,j,m,f,n),"ca",A.aQ(a6,g,q,a8,k,c,i,l,"ca",h,o,a7,j,m,f,n),"chr",A.aQ(d,g,c,a9,k,q,i,l,"chr",h,o,e,j,m,f,n),"cs",A.aQ(a6,g,q,"CZK",k,p,i,l,"cs",h,o,a7,j,m,f,n),"cy",A.aQ(d,g,c,"GBP",k,q,i,l,"cy",h,o,e,j,m,f,n),"da",A.aQ(a6,g,q,"DKK",k,c,i,l,"da",h,o,a7,j,m,f,n),"de",A.aQ(a6,g,q,a8,k,c,i,l,"de",h,o,a7,j,m,f,n),"de_AT",A.aQ(b0,g,q,a8,k,p,i,l,"de_AT",h,o,a7,j,m,f,n),"de_CH",A.aQ(b1,g,c,b2,k,"\u2019",i,l,"de_CH",h,o,e,j,m,f,n),"el",A.aQ(a6,g,q,a8,"e",c,i,l,"el",h,o,e,j,m,f,n),"en",A.aQ(d,g,c,a9,k,q,i,l,"en",h,o,e,j,m,f,n),"en_AU",A.aQ(d,g,c,"AUD","e",q,i,l,"en_AU",h,o,e,j,m,f,n),"en_CA",A.aQ(d,g,c,"CAD",k,q,i,l,"en_CA",h,o,e,j,m,f,n),"en_GB",A.aQ(d,g,c,"GBP",k,q,i,l,"en_GB",h,o,e,j,m,f,n),"en_IE",A.aQ(d,g,c,a8,k,q,i,l,"en_IE",h,o,e,j,m,f,n),"en_IN",A.aQ(b3,a2,c,a5,k,q,i,l,"en_IN",h,o,a3,j,m,f,n),"en_MY",A.aQ(d,g,c,"MYR",k,q,i,l,"en_MY",h,o,e,j,m,f,n),"en_NZ",A.aQ(d,g,c,"NZD",k,q,i,l,"en_NZ",h,o,e,j,m,f,n),"en_SG",A.aQ(d,g,c,"SGD",k,q,i,l,"en_SG",h,o,e,j,m,f,n),"en_US",A.aQ(d,g,c,a9,k,q,i,l,"en_US",h,o,e,j,m,f,n),"en_ZA",A.aQ(d,g,c,"ZAR",k,q,i,l,"en_ZA",h,o,e,j,m,f,n),"es",A.aQ(a6,g,q,a8,k,c,i,l,"es",h,o,a7,j,m,f,n),"es_419",A.aQ(d,g,c,"MXN",k,q,i,l,"es_419",h,o,e,j,m,f,n),"es_ES",A.aQ(a6,g,q,a8,k,c,i,l,"es_ES",h,o,a7,j,m,f,n),"es_MX",A.aQ(d,g,c,"MXN",k,q,i,l,"es_MX",h,o,e,j,m,f,n),"es_US",A.aQ(d,g,c,a9,k,q,i,l,"es_US",h,o,e,j,m,f,n),"et",A.aQ(a6,g,q,a8,b5,p,i,b4,"et",h,o,e,j,m,f,n),"eu",A.aQ(a6,g,q,a8,k,c,i,b4,"eu",h,o,"%\xa0#,##0",j,m,f,n),"fa",A.aQ("\u200e\xa4#,##0.00",g,"\u066b","IRR","\xd7\u06f1\u06f0^","\u066c",i,"\u200e\u2212","fa","\u0646\u0627\u0639\u062f\u062f","\u066a",e,"\u0609",b,f,"\u06f0"),"fi",A.aQ(a6,g,q,a8,k,p,i,b4,"fi","ep\xe4luku",o,a7,j,m,f,n),"fil",A.aQ(d,g,c,"PHP",k,q,i,l,"fil",h,o,e,j,m,f,n),"fr",A.aQ(a6,g,q,a8,k,"\u202f",i,l,"fr",h,o,a7,j,m,f,n),"fr_CA",A.aQ(a6,g,q,"CAD",k,p,i,l,"fr_CA",h,o,a7,j,m,f,n),"fr_CH",A.aQ(a6,g,q,b2,k,"\u202f",i,l,"fr_CH",h,o,e,j,m,f,n),"fur",A.aQ(b0,g,q,a8,k,c,i,l,"fur",h,o,e,j,m,f,n),"ga",A.aQ(d,g,c,a8,k,q,i,l,"ga","Nuimh",o,e,j,m,f,n),"gl",A.aQ(a6,g,q,a8,k,c,i,l,"gl",h,o,a7,j,m,f,n),"gsw",A.aQ(a6,g,c,b2,k,"\u2019",i,b4,"gsw",h,o,a7,j,m,f,n),"gu",A.aQ(b3,a2,c,a5,k,q,i,l,"gu",h,o,a3,j,m,b6,n),"haw",A.aQ(d,g,c,a9,k,q,i,l,"haw",h,o,e,j,m,f,n),"he",A.aQ(b7,g,c,"ILS",k,q,i,a,"he",h,o,e,j,b,f,n),"hi",A.aQ(b3,a2,c,a5,k,q,i,l,"hi",h,o,a3,j,m,b6,n),"hr",A.aQ(a6,g,q,a8,k,c,i,b4,"hr",h,o,a7,j,m,f,n),"hu",A.aQ(a6,g,q,"HUF",k,p,i,l,"hu",h,o,e,j,m,f,n),"hy",A.aQ(a6,g,q,"AMD",k,p,i,l,"hy","\u0548\u0579\u0539",o,e,j,m,f,n),"id",A.aQ(d,g,q,"IDR",k,c,i,l,"id",h,o,e,j,m,f,n),"in",A.aQ(d,g,q,"IDR",k,c,i,l,"in",h,o,e,j,m,f,n),"is",A.aQ(a6,g,q,"ISK",k,c,i,l,"is",h,o,e,j,m,f,n),"it",A.aQ(a6,g,q,a8,k,c,i,l,"it",h,o,e,j,m,f,n),"it_CH",A.aQ(b1,g,c,b2,k,"\u2019",i,l,"it_CH",h,o,e,j,m,f,n),"iw",A.aQ(b7,g,c,"ILS",k,q,i,a,"iw",h,o,e,j,b,f,n),"ja",A.aQ(d,g,c,"JPY",k,q,i,l,"ja",h,o,e,j,m,f,n),"ka",A.aQ(a6,g,q,"GEL",k,p,i,l,"ka","\u10d0\u10e0\xa0\u10d0\u10e0\u10d8\u10e1\xa0\u10e0\u10d8\u10ea\u10ee\u10d5\u10d8",o,e,j,m,f,n),"kk",A.aQ(a6,g,q,"KZT",k,p,i,l,"kk","\u0441\u0430\u043d\xa0\u0435\u043c\u0435\u0441",o,e,j,m,f,n),"km",A.aQ("#,##0.00\xa4",g,c,"KHR",k,q,i,l,"km",h,o,e,j,m,f,n),"kn",A.aQ(d,g,c,a5,k,q,i,l,"kn",h,o,e,j,m,f,n),"ko",A.aQ(d,g,c,"KRW",k,q,i,l,"ko",h,o,e,j,m,f,n),"ky",A.aQ(a6,g,q,"KGS",k,p,i,l,"ky","\u0441\u0430\u043d\xa0\u044d\u043c\u0435\u0441",o,e,j,m,f,n),"ln",A.aQ(a6,g,q,"CDF",k,c,i,l,"ln",h,o,e,j,m,f,n),"lo",A.aQ("\xa4#,##0.00;\xa4-#,##0.00",g,q,"LAK",k,c,i,l,"lo","\u0e9a\u0ecd\u0ec8\u200b\u0ec1\u0ea1\u0ec8\u0e99\u200b\u0ec2\u0e95\u200b\u0ec0\u0ea5\u0e81",o,e,j,m,"#",n),"lt",A.aQ(a6,g,q,a8,b5,p,i,b4,"lt",h,o,a7,j,m,f,n),"lv",A.aQ(a6,g,q,a8,k,p,i,l,"lv","NS",o,e,j,m,f,n),"mg",A.aQ(d,g,c,"MGA",k,q,i,l,"mg",h,o,e,j,m,f,n),"mk",A.aQ(a6,g,q,"MKD",k,c,i,l,"mk",h,o,a7,j,m,f,n),"ml",A.aQ(d,a2,c,a5,k,q,i,l,"ml",h,o,e,j,m,f,n),"mn",A.aQ(b0,g,c,"MNT",k,q,i,l,"mn",h,o,e,j,m,f,n),"mr",A.aQ(d,a2,c,a5,k,q,i,l,"mr",h,o,e,j,m,b6,"\u0966"),"ms",A.aQ(d,g,c,"MYR",k,q,i,l,"ms",h,o,e,j,m,f,n),"mt",A.aQ(d,g,c,a8,k,q,i,l,"mt",h,o,e,j,m,f,n),"my",A.aQ(a6,g,c,"MMK",k,q,i,l,"my","\u1002\u100f\u1014\u103a\u1038\u1019\u101f\u102f\u1010\u103a\u101e\u1031\u102c",o,e,j,m,f,"\u1040"),"nb",A.aQ(b8,g,q,"NOK",k,p,i,b4,"nb",h,o,a7,j,m,f,n),"ne",A.aQ(a4,a2,c,"NPR",k,q,i,l,"ne",h,o,a3,j,m,f,"\u0966"),"nl",A.aQ("\xa4\xa0#,##0.00;\xa4\xa0-#,##0.00",g,q,a8,k,c,i,l,"nl",h,o,e,j,m,f,n),"no",A.aQ(b8,g,q,"NOK",k,p,i,b4,"no",h,o,a7,j,m,f,n),"no_NO",A.aQ(b8,g,q,"NOK",k,p,i,b4,"no_NO",h,o,a7,j,m,f,n),"nyn",A.aQ(d,g,c,"UGX",k,q,i,l,"nyn",h,o,e,j,m,f,n),"or",A.aQ(d,a2,c,a5,k,q,i,l,"or",h,o,e,j,m,f,n),"pa",A.aQ(b3,a2,c,a5,k,q,i,l,"pa",h,o,a3,j,m,b6,n),"pl",A.aQ(a6,g,q,"PLN",k,p,i,l,"pl",h,o,e,j,m,f,n),"ps",A.aQ("\xa4#,##0.00;(\xa4#,##0.00)",g,"\u066b","AFN","\xd7\u06f1\u06f0^","\u066c",i,"\u200e-\u200e","ps",h,"\u066a",e,"\u0609","\u200e+\u200e",f,"\u06f0"),"pt",A.aQ(b0,g,q,"BRL",k,c,i,l,"pt",h,o,e,j,m,f,n),"pt_BR",A.aQ(b0,g,q,"BRL",k,c,i,l,"pt_BR",h,o,e,j,m,f,n),"pt_PT",A.aQ(a6,g,q,a8,k,p,i,l,"pt_PT",h,o,e,j,m,f,n),"ro",A.aQ(a6,g,q,"RON",k,c,i,l,"ro",h,o,a7,j,m,f,n),"ru",A.aQ(a6,g,q,"RUB",k,p,i,l,"ru","\u043d\u0435\xa0\u0447\u0438\u0441\u043b\u043e",o,a7,j,m,f,n),"si",A.aQ(d,g,c,"LKR",k,q,i,l,"si",h,o,e,j,m,"#",n),"sk",A.aQ(a6,g,q,a8,"e",p,i,l,"sk",h,o,a7,j,m,f,n),"sl",A.aQ(a6,g,q,a8,"e",c,i,b4,"sl",h,o,a7,j,m,f,n),"sq",A.aQ(a6,g,q,"ALL",k,p,i,l,"sq",h,o,e,j,m,f,n),"sr",A.aQ(a6,g,q,"RSD",k,c,i,l,"sr",h,o,e,j,m,f,n),"sr_Latn",A.aQ(a6,g,q,"RSD",k,c,i,l,"sr_Latn",h,o,e,j,m,f,n),"sv",A.aQ(a6,g,q,"SEK",b5,p,i,b4,"sv",h,o,a7,j,m,f,n),"sw",A.aQ(b0,g,c,"TZS",k,q,i,l,"sw",h,o,e,j,m,f,n),"ta",A.aQ(b3,a2,c,a5,k,q,i,l,"ta",h,o,a3,j,m,f,n),"te",A.aQ(b3,a2,c,a5,k,q,i,l,"te",h,o,e,j,m,f,n),"th",A.aQ(d,g,c,"THB",k,q,i,l,"th",h,o,e,j,m,f,n),"tl",A.aQ(d,g,c,"PHP",k,q,i,l,"tl",h,o,e,j,m,f,n),"tr",A.aQ(d,g,q,"TRY",k,c,i,l,"tr",h,o,"%#,##0",j,m,f,n),"uk",A.aQ(a6,g,q,"UAH","\u0415",p,i,l,"uk",h,o,e,j,m,f,n),"ur",A.aQ(d,g,c,"PKR",k,q,i,a,"ur",h,o,e,j,b,f,n),"uz",A.aQ(a6,g,q,"UZS",k,p,i,l,"uz","son\xa0emas",o,e,j,m,f,n),"vi",A.aQ(a6,g,q,"VND",k,c,i,l,"vi",h,o,e,j,m,f,n),"zh",A.aQ(d,g,c,"CNY",k,q,i,l,"zh",h,o,e,j,m,f,n),"zh_CN",A.aQ(d,g,c,"CNY",k,q,i,l,"zh_CN",h,o,e,j,m,f,n),"zh_HK",A.aQ(d,g,c,"HKD",k,q,i,l,"zh_HK","\u975e\u6578\u503c",o,e,j,m,f,n),"zh_TW",A.aQ(d,g,c,"TWD",k,q,i,l,"zh_TW","\u975e\u6578\u503c",o,e,j,m,f,n),"zu",A.aQ(d,g,c,"ZAR",k,q,i,l,"zu",h,o,e,j,m,f,n)],t.N,t.vg)}) +r($,"bSm","bku",()=>A.bwI("initializeDateFormatting()",$.bEj())) +r($,"bVt","ap5",()=>A.bwI("initializeDateFormatting()",B.afX)) +s($,"c32","bqs",()=>48) +s($,"c_v","bko",()=>A.Gq(2,52)) +s($,"c_u","bC6",()=>B.d.dZ(A.Vz($.bko())/A.Vz(10))) +s($,"c2z","bqn",()=>A.Vz(10)) +s($,"c2A","bDW",()=>A.Vz(10)) +s($,"c3F","bqE",()=>A.C(["en_ISO",A.h8(),"af",A.eN(),"am",A.zS(),"ar",A.bpF(),"ar_DZ",A.bpF(),"ar_EG",A.bpF(),"as",A.zS(),"az",A.eN(),"be",A.bX4(),"bg",A.eN(),"bm",A.jW(),"bn",A.zS(),"br",A.bX5(),"bs",A.bjM(),"ca",A.bjN(),"chr",A.eN(),"cs",A.bAB(),"cy",A.bX6(),"da",A.bX7(),"de",A.h8(),"de_AT",A.h8(),"de_CH",A.h8(),"el",A.eN(),"en",A.h8(),"en_AU",A.h8(),"en_CA",A.h8(),"en_GB",A.h8(),"en_IE",A.h8(),"en_IN",A.h8(),"en_MY",A.h8(),"en_NZ",A.h8(),"en_SG",A.h8(),"en_US",A.h8(),"en_ZA",A.h8(),"es",A.aoG(),"es_419",A.aoG(),"es_ES",A.aoG(),"es_MX",A.aoG(),"es_US",A.aoG(),"et",A.h8(),"eu",A.eN(),"fa",A.zS(),"fi",A.h8(),"fil",A.bAA(),"fr",A.bpG(),"fr_CA",A.bpG(),"fr_CH",A.bpG(),"fur",A.eN(),"ga",A.bX9(),"gl",A.h8(),"gsw",A.eN(),"gu",A.zS(),"haw",A.eN(),"he",A.bAC(),"hi",A.zS(),"hr",A.bjM(),"hu",A.eN(),"hy",A.bX8(),"id",A.jW(),"in",A.jW(),"is",A.bXa(),"it",A.bjN(),"it_CH",A.bjN(),"iw",A.bAC(),"ja",A.jW(),"ka",A.eN(),"kk",A.eN(),"km",A.jW(),"kn",A.zS(),"ko",A.jW(),"ky",A.eN(),"ln",A.bpE(),"lo",A.jW(),"lt",A.bXb(),"lv",A.bXc(),"mg",A.bpE(),"mk",A.bXd(),"ml",A.eN(),"mn",A.eN(),"mr",A.eN(),"ms",A.jW(),"mt",A.bXf(),"my",A.jW(),"nb",A.eN(),"ne",A.eN(),"nl",A.h8(),"no",A.eN(),"no_NO",A.eN(),"nyn",A.eN(),"or",A.eN(),"pa",A.bpE(),"pl",A.bXg(),"ps",A.eN(),"pt",A.bAD(),"pt_BR",A.bAD(),"pt_PT",A.bjN(),"ro",A.bXe(),"ru",A.bAE(),"si",A.bXh(),"sk",A.bAB(),"sl",A.bXi(),"sq",A.eN(),"sr",A.bjM(),"sr_Latn",A.bjM(),"sv",A.h8(),"sw",A.h8(),"ta",A.eN(),"te",A.eN(),"th",A.jW(),"tl",A.bAA(),"tr",A.eN(),"uk",A.bAE(),"ur",A.h8(),"uz",A.eN(),"vi",A.jW(),"zh",A.jW(),"zh_CN",A.jW(),"zh_HK",A.jW(),"zh_TW",A.jW(),"zu",A.zS(),"default",A.jW()],t.N,A.ar("n9()"))) +s($,"bYf","bpP",()=>new A.Wt(A.a([],A.ar("E<@(iH)>")),A.aSx(null,null,!1,A.ar("iH")))) +r($,"c3h","bkx",()=>$.bBj()) +s($,"bZ6","bBi",()=>A.bKD()) +s($,"bZ7","bBj",()=>new A.az6()) +s($,"bZs","bBw",()=>new A.aEL(A.aSx(null,null,!1,t.a))) +s($,"c2M","d8",()=>A.bNs()) +s($,"bYU","bBe",()=>new A.AU($.aW())) +s($,"bYm","bB3",()=>new A.ar9(A.aSx(null,null,!1,A.ar("bYl")),B.SG)) +s($,"bYV","bki",()=>{var q=new A.avg(A.w(t.N,t.z)) +q.H1() +return q}) +s($,"c3g","bEl",()=>A.btj(null,A.ar("a9"))) +s($,"c_s","bC5",()=>new A.baR()) +s($,"bZv","ac",()=>{var q=new A.aFa(),p=new A.aRG(),o=q.b=new A.atI(A.ej(null,A.ar("LR"))),n=new A.baB(),m=new A.aFc(n,p,o),l=n.me() +m.a=A.lM(A.a([l,p.me(),o.me()],t.mo),!1,t.H) +q.a=m +q.gaWR().aVe("Logger initialized.") +return q}) +r($,"bYv","bB5",()=>B.Ud.abO(B.p4)) +r($,"bYu","bB4",()=>B.Uc.abO(B.p4)) +r($,"bZu","Gu",()=>$.bB5()) +r($,"bZt","bkl",()=>$.bB4()) +r($,"bZB","bpZ",()=>{var q=null +return A.cG(q,q,!0,"background",new A.aFE(),q,new A.aFF(),q)}) +r($,"bZH","bBC",()=>A.cG(new A.aFW(),A.dK(3,3,4.5,7),!1,"on_background",new A.aFX(),null,new A.aFY(),null)) +r($,"c_9","bBX",()=>{var q=null +return A.cG(q,q,!0,"surface",new A.aHL(),q,new A.aHM(),q)}) +r($,"c_g","hX",()=>{var q=null +return A.cG(q,q,!0,"surface_dim",new A.aHH(),q,new A.aHI(),q)}) +r($,"c_a","hW",()=>{var q=null +return A.cG(q,q,!0,"surface_bright",new A.aHv(),q,new A.aHw(),q)}) +r($,"c_f","bC1",()=>{var q=null +return A.cG(q,q,!0,"surface_container_lowest",new A.aHD(),q,new A.aHE(),q)}) +r($,"c_e","bC0",()=>{var q=null +return A.cG(q,q,!0,"surface_container_low",new A.aHB(),q,new A.aHC(),q)}) +r($,"c_b","bBY",()=>{var q=null +return A.cG(q,q,!0,"surface_container",new A.aHF(),q,new A.aHG(),q)}) +r($,"c_c","bBZ",()=>{var q=null +return A.cG(q,q,!0,"surface_container_high",new A.aHx(),q,new A.aHy(),q)}) +r($,"c_d","bC_",()=>{var q=null +return A.cG(q,q,!0,"surface_container_highest",new A.aHz(),q,new A.aHA(),q)}) +r($,"bZS","bBN",()=>A.cG(new A.aGz(),A.dK(4.5,7,11,21),!1,"on_surface",new A.aGA(),null,new A.aGB(),null)) +r($,"c_h","bC2",()=>{var q=null +return A.cG(q,q,!0,"surface_variant",new A.aHJ(),q,new A.aHK(),q)}) +r($,"bZT","bBO",()=>A.cG(new A.aGw(),A.dK(3,4.5,7,11),!1,"on_surface_variant",new A.aGx(),null,new A.aGy(),null)) +r($,"bZG","bkm",()=>{var q=null +return A.cG(q,q,!1,"inverse_surface",new A.aFU(),q,new A.aFV(),q)}) +r($,"bZE","bBA",()=>A.cG(new A.aFO(),A.dK(4.5,7,11,21),!1,"inverse_on_surface",new A.aFP(),null,new A.aFQ(),null)) +r($,"bZY","bBT",()=>A.cG(new A.aGT(),A.dK(1.5,3,4.5,7),!1,"outline",new A.aGU(),null,new A.aGV(),null)) +r($,"bZZ","bBU",()=>A.cG(new A.aGQ(),A.dK(1,1,3,4.5),!1,"outline_variant",new A.aGR(),null,new A.aGS(),null)) +r($,"c_8","bBW",()=>{var q=null +return A.cG(q,q,!1,"shadow",new A.aHt(),q,new A.aHu(),q)}) +r($,"c_3","bBV",()=>{var q=null +return A.cG(q,q,!1,"scrim",new A.aHb(),q,new A.aHc(),q)}) +r($,"c__","VG",()=>A.cG(new A.aH7(),A.dK(3,4.5,7,7),!0,"primary",new A.aH8(),null,new A.aH9(),new A.aHa())) +r($,"bZK","bBF",()=>A.cG(new A.aGf(),A.dK(4.5,7,11,21),!1,"on_primary",new A.aGg(),null,new A.aGh(),null)) +r($,"c_0","VH",()=>A.cG(new A.aGW(),A.dK(1,1,3,4.5),!0,"primary_container",new A.aGX(),null,new A.aGY(),new A.aGZ())) +r($,"bZL","bBG",()=>A.cG(new A.aG4(),A.dK(4.5,7,11,21),!1,"on_primary_container",new A.aG5(),null,new A.aG6(),null)) +r($,"bZF","bBB",()=>A.cG(new A.aFR(),A.dK(3,4.5,7,7),!1,"inverse_primary",new A.aFS(),null,new A.aFT(),null)) +r($,"c_4","aoR",()=>A.cG(new A.aHp(),A.dK(3,4.5,7,7),!0,"secondary",new A.aHq(),null,new A.aHr(),new A.aHs())) +r($,"bZO","bBJ",()=>A.cG(new A.aGt(),A.dK(4.5,7,11,21),!1,"on_secondary",new A.aGu(),null,new A.aGv(),null)) +r($,"c_5","VK",()=>A.cG(new A.aHd(),A.dK(1,1,3,4.5),!0,"secondary_container",new A.aHe(),null,new A.aHf(),new A.aHg())) +r($,"bZP","bBK",()=>A.cG(new A.aGi(),A.dK(4.5,7,11,21),!1,"on_secondary_container",new A.aGj(),null,new A.aGk(),null)) +r($,"c_i","aoS",()=>A.cG(new A.aHZ(),A.dK(3,4.5,7,7),!0,"tertiary",new A.aI_(),null,new A.aI0(),new A.aI1())) +r($,"bZU","bBP",()=>A.cG(new A.aGN(),A.dK(4.5,7,11,21),!1,"on_tertiary",new A.aGO(),null,new A.aGP(),null)) +r($,"c_j","VN",()=>A.cG(new A.aHN(),A.dK(1,1,3,4.5),!0,"tertiary_container",new A.aHO(),null,new A.aHP(),new A.aHQ())) +r($,"bZV","bBQ",()=>A.cG(new A.aGC(),A.dK(4.5,7,11,21),!1,"on_tertiary_container",new A.aGD(),null,new A.aGE(),null)) +r($,"bZC","aoP",()=>A.cG(new A.aFK(),A.dK(3,4.5,7,7),!0,"error",new A.aFL(),null,new A.aFM(),new A.aFN())) +r($,"bZI","bBD",()=>A.cG(new A.aG1(),A.dK(4.5,7,11,21),!1,"on_error",new A.aG2(),null,new A.aG3(),null)) +r($,"bZD","aoQ",()=>A.cG(new A.aFG(),A.dK(1,1,3,4.5),!0,"error_container",new A.aFH(),null,new A.aFI(),new A.aFJ())) +r($,"bZJ","bBE",()=>A.cG(new A.aFZ(),A.dK(4.5,7,11,21),!1,"on_error_container",new A.aG_(),null,new A.aG0(),null)) +r($,"c_1","VI",()=>A.cG(new A.aH3(),A.dK(1,1,3,4.5),!0,"primary_fixed",new A.aH4(),null,new A.aH5(),new A.aH6())) +r($,"c_2","VJ",()=>A.cG(new A.aH_(),A.dK(1,1,3,4.5),!0,"primary_fixed_dim",new A.aH0(),null,new A.aH1(),new A.aH2())) +r($,"bZM","bBH",()=>A.cG(new A.aGb(),A.dK(4.5,7,11,21),!1,"on_primary_fixed",new A.aGc(),new A.aGd(),new A.aGe(),null)) +r($,"bZN","bBI",()=>A.cG(new A.aG7(),A.dK(3,4.5,7,11),!1,"on_primary_fixed_variant",new A.aG8(),new A.aG9(),new A.aGa(),null)) +r($,"c_6","VL",()=>A.cG(new A.aHl(),A.dK(1,1,3,4.5),!0,"secondary_fixed",new A.aHm(),null,new A.aHn(),new A.aHo())) +r($,"c_7","VM",()=>A.cG(new A.aHh(),A.dK(1,1,3,4.5),!0,"secondary_fixed_dim",new A.aHi(),null,new A.aHj(),new A.aHk())) +r($,"bZQ","bBL",()=>A.cG(new A.aGp(),A.dK(4.5,7,11,21),!1,"on_secondary_fixed",new A.aGq(),new A.aGr(),new A.aGs(),null)) +r($,"bZR","bBM",()=>A.cG(new A.aGl(),A.dK(3,4.5,7,11),!1,"on_secondary_fixed_variant",new A.aGm(),new A.aGn(),new A.aGo(),null)) +r($,"c_k","VO",()=>A.cG(new A.aHV(),A.dK(1,1,3,4.5),!0,"tertiary_fixed",new A.aHW(),null,new A.aHX(),new A.aHY())) +r($,"c_l","VP",()=>A.cG(new A.aHR(),A.dK(1,1,3,4.5),!0,"tertiary_fixed_dim",new A.aHS(),null,new A.aHT(),new A.aHU())) +r($,"bZW","bBR",()=>A.cG(new A.aGJ(),A.dK(4.5,7,11,21),!1,"on_tertiary_fixed",new A.aGK(),new A.aGL(),new A.aGM(),null)) +r($,"bZX","bBS",()=>A.cG(new A.aGF(),A.dK(3,4.5,7,11),!1,"on_tertiary_fixed_variant",new A.aGG(),new A.aGH(),new A.aGI(),null)) +s($,"c0V","bCS",()=>$.Gv()) +s($,"c0U","Gv",()=>{var q,p,o,n,m,l,k,j,i,h,g=63.66197723675813*A.wj(50)/100,f=A.bpC(0.1,50),e=$.Ay[0],d=$.Ay[1],c=$.Ay[2],b=e*0.401288+d*0.650173+c*-0.051461,a=e*-0.250268+d*1.204414+c*0.045854,a0=e*-0.002079+d*0.048952+c*0.953127,a1=A.bmQ(0.59,0.69,0.9999999999999998),a2=1-0.2777777777777778*A.bVG((-g-42)/92) +if(a2>1)a2=1 +else if(a2<0)a2=0 +q=A.a([a2*(100/b)+1-a2,a2*(100/a)+1-a2,a2*(100/a0)+1-a2],t.n) +e=5*g +p=1/(e+1) +o=p*p*p*p +n=1-o +m=o*g+0.1*n*n*A.Gq(e,0.3333333333333333) +l=A.wj(f)/$.Ay[1] +e=A.bXB(l) +k=0.725/A.Gq(l,0.2) +j=[A.Gq(m*q[0]*b/100,0.42),A.Gq(m*q[1]*a/100,0.42),A.Gq(m*q[2]*a0/100,0.42)] +d=j[0] +c=j[1] +i=j[2] +h=[400*d/(d+27.13),400*c/(c+27.13),400*i/(i+27.13)] +return new A.aVL(l,(40*h[0]+20*h[1]+h[2])/20*k,k,k,a1,1,q,m,A.Gq(m,0.25),1.48+e)}) +s($,"c22","bDw",()=>{var q=t.N +return new A.aII(A.w(q,q),A.a([],A.ar("E")))}) +r($,"c3x","h9",()=>A.Ll(B.agh)) +r($,"c3u","bky",()=>A.Ll(B.agk)) +r($,"c3v","zV",()=>A.Ll(B.aeM)) +r($,"c3w","ap6",()=>A.Ll(B.aeN)) +r($,"c3y","mt",()=>A.Ll(B.aeG)) +r($,"c3z","Gy",()=>A.Ll(B.agj)) +s($,"c_q","bC3",()=>new A.aJd()) +s($,"c_w","bC7",()=>new A.O()) +s($,"c3A","bqC",()=>A.btj(null,t.uK)) +s($,"c_x","aX",()=>new A.aLP()) +s($,"c_z","bq_",()=>new A.O()) +r($,"bLR","bC8",()=>{var q=new A.aIx() +q.qr($.bq_()) +return q}) +s($,"c37","ap4",()=>new A.XD($.bq6(),null)) +s($,"c0o","aoW",()=>new A.aN_(A.bB("/",!0,!1,!1),A.bB("[^/]$",!0,!1,!1),A.bB("^/",!0,!1,!1))) +s($,"c0q","aoX",()=>new A.aX4(A.bB("[/\\\\]",!0,!1,!1),A.bB("[^/\\\\]$",!0,!1,!1),A.bB("^(\\\\\\\\[^\\\\]+\\\\[^\\\\/]+|[a-zA-Z]:[/\\\\])",!0,!1,!1),A.bB("^[/\\\\](?![/\\\\])",!0,!1,!1))) +s($,"c0p","VQ",()=>new A.aVn(A.bB("/",!0,!1,!1),A.bB("(^[a-zA-Z][-+.a-zA-Z\\d]*://|[^/])$",!0,!1,!1),A.bB("[a-zA-Z][-+.a-zA-Z\\d]*://[^/]*",!0,!1,!1),A.bB("^/",!0,!1,!1))) +s($,"c0n","bq6",()=>A.bO0()) +s($,"c_B","bC9",()=>new A.O()) +r($,"c_A","bq0",()=>{var q=new A.aIy() +q.qr($.bC9()) +return q}) +s($,"c0Z","bCU",()=>new A.aWR().$0()) +s($,"c1_","bCV",()=>A.pj(A.pj(A.pj(A.bXD(),"window"),"navigator"),"geolocation")) +s($,"c10","bCW",()=>new A.aWS().$0()) +s($,"c_C","bCa",()=>new A.O()) +s($,"c0y","bCA",()=>new A.a4X("newline expected")) +s($,"c2R","bE8",()=>A.u_(A.bp8(),new A.bii(),!1,t.N,t.eg)) +s($,"c2H","bE2",()=>{var q=t.N +return A.ya(A.bNu(A.bp8(),A.bp9("-",null),A.bp8(),q,q,q),new A.bi9(),q,q,q,t.eg)}) +s($,"c2N","bE5",()=>{var q=t.eg +return A.u_(A.bMh(A.bG5(A.a([$.bE2(),$.bE8()],A.ar("E>")),null,q),q),A.bWF(),!1,A.ar("D"),A.ar("ha"))}) +s($,"c2D","bDZ",()=>{var q=t.T,p=A.ar("ha") +return A.bvg(A.bNt(A.bLC(A.bp9("^",null),t.N),$.bE5(),q,p),new A.bi8(),q,p,p)}) +s($,"c_D","aoT",()=>A.blZ()) +s($,"c29","bDB",()=>!t.Cm.b(A.a([],t.Z))) +s($,"c0f","bq5",()=>new A.O()) +r($,"bNA","aoV",()=>{var q=new A.aIz() +q.qr($.bq5()) +return q}) +r($,"c0L","bCM",()=>new A.XI()) +r($,"c0M","bCN",()=>new A.XI()) +s($,"c0K","bCL",()=>{var q,p=J.mU(256,t.N) +for(q=0;q<256;++q)p[q]=B.c.fk(B.e.hY(q,16),2,"0") +return p}) +s($,"bYy","bB7",()=>A.bMx()) +s($,"bZb","bBn",()=>A.buR()) +s($,"bZc","bBo",()=>{var q=A.buR() +q.sxL(B.uC) +q.snO(B.a0c) +return q}) +s($,"c1D","bDf",()=>A.bY0()) +s($,"bZ5","bBh",()=>{var q=A.bux(4) +B.jE.akP(q,0,1056964608) +return q}) +s($,"c0N","zU",()=>A.LA(8)) +s($,"c30","bqr",()=>A.bB("\\s",!0,!1,!1)) +s($,"c0r","bCw",()=>A.bB(" +",!0,!1,!1)) +s($,"c3_","bEe",()=>A.bB("^( *,?([^(]+)\\(([^)]*)\\))*$",!0,!1,!1)) +s($,"c2Z","bEd",()=>A.bB(" *,?([^(]+)\\(([^)]*)\\)",!0,!1,!1)) +s($,"c0Q","bCQ",()=>A.bB("^([\\d.]+)(-([0-9A-Za-z\\-.]+))?(\\+([0-9A-Za-z\\-.]+))?$",!0,!1,!1)) +s($,"c0O","bCO",()=>A.bB("^[0-9A-Za-z\\-.]+$",!0,!1,!1)) +s($,"c0P","bCP",()=>A.bB("^[0-9A-Za-z\\-]+$",!0,!1,!1)) +s($,"c0T","bq7",()=>new A.O()) +r($,"bOV","bY9",()=>{var q=new A.baC() +q.qr($.bq7()) +return q}) +s($,"c0W","bCT",()=>new A.aVP()) +s($,"c0Y","bq8",()=>new A.O()) +r($,"bOZ","bYa",()=>{var q=B.c.gbC("")?".":"" +q=new A.aIA(new A.aVR(q)) +q.qr($.bq8()) +return q}) +s($,"c2Y","bEc",()=>A.bB("[&<\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]|]]>",!0,!1,!1)) +s($,"c2Q","bE7",()=>A.bB("['&<\\n\\r\\t\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]",!0,!1,!1)) +s($,"c20","bDu",()=>A.bB('["&<\\n\\r\\t\\u0001-\\u0008\\u000b\\u000c\\u000e-\\u001f\\u007f-\\u0084\\u0086-\\u009f]',!0,!1,!1)) +s($,"c3f","bEk",()=>new A.ace(new A.biR(),5,A.w(A.ar("vc"),A.ar("b6")),A.ar("ace>")))})();(function nativeSupport(){!function(){var s=function(a){var m={} +m[a]=1 +return Object.keys(hunkHelpers.convertToFastObject(m))[0]} +v.getIsolateTag=function(a){return s("___dart_"+a+v.isolateTag)} +var r="___dart_isolate_tags_" +var q=Object[r]||(Object[r]=Object.create(null)) +var p="_ZxYxX" +for(var o=0;;o++){var n=s(p+"_"+o+"_") +if(!(n in q)){q[n]=1 +v.isolateTag=n +break}}v.dispatchPropertyName=v.getIsolateTag("dispatch_record")}() +hunkHelpers.setOrUpdateInterceptorsByTag({WebGL:J.BJ,AnimationEffectReadOnly:J.r,AnimationEffectTiming:J.r,AnimationEffectTimingReadOnly:J.r,AnimationTimeline:J.r,AnimationWorkletGlobalScope:J.r,AuthenticatorAssertionResponse:J.r,AuthenticatorAttestationResponse:J.r,AuthenticatorResponse:J.r,BackgroundFetchFetch:J.r,BackgroundFetchManager:J.r,BackgroundFetchSettledFetch:J.r,BarProp:J.r,BarcodeDetector:J.r,Body:J.r,BudgetState:J.r,CacheStorage:J.r,CanvasGradient:J.r,CanvasPattern:J.r,CanvasRenderingContext2D:J.r,Client:J.r,Clients:J.r,CookieStore:J.r,Coordinates:J.r,Credential:J.r,CredentialUserData:J.r,CredentialsContainer:J.r,Crypto:J.r,CryptoKey:J.r,CSS:J.r,CSSVariableReferenceValue:J.r,CustomElementRegistry:J.r,DataTransfer:J.r,DataTransferItem:J.r,DeprecatedStorageInfo:J.r,DeprecatedStorageQuota:J.r,DeprecationReport:J.r,DetectedBarcode:J.r,DetectedFace:J.r,DetectedText:J.r,DeviceAcceleration:J.r,DeviceRotationRate:J.r,DirectoryEntry:J.r,webkitFileSystemDirectoryEntry:J.r,FileSystemDirectoryEntry:J.r,DirectoryReader:J.r,WebKitDirectoryReader:J.r,webkitFileSystemDirectoryReader:J.r,FileSystemDirectoryReader:J.r,DocumentOrShadowRoot:J.r,DocumentTimeline:J.r,DOMError:J.r,DOMImplementation:J.r,Iterator:J.r,DOMMatrix:J.r,DOMMatrixReadOnly:J.r,DOMParser:J.r,DOMPoint:J.r,DOMPointReadOnly:J.r,DOMQuad:J.r,DOMStringMap:J.r,Entry:J.r,webkitFileSystemEntry:J.r,FileSystemEntry:J.r,External:J.r,FaceDetector:J.r,FederatedCredential:J.r,FileEntry:J.r,webkitFileSystemFileEntry:J.r,FileSystemFileEntry:J.r,DOMFileSystem:J.r,WebKitFileSystem:J.r,webkitFileSystem:J.r,FileSystem:J.r,FontFace:J.r,FontFaceSource:J.r,FormData:J.r,GamepadPose:J.r,Geolocation:J.r,Position:J.r,GeolocationPosition:J.r,Headers:J.r,HTMLHyperlinkElementUtils:J.r,IdleDeadline:J.r,ImageBitmapRenderingContext:J.r,ImageCapture:J.r,InputDeviceCapabilities:J.r,IntersectionObserver:J.r,IntersectionObserverEntry:J.r,InterventionReport:J.r,KeyframeEffect:J.r,KeyframeEffectReadOnly:J.r,MediaCapabilities:J.r,MediaCapabilitiesInfo:J.r,MediaDeviceInfo:J.r,MediaError:J.r,MediaKeyStatusMap:J.r,MediaKeySystemAccess:J.r,MediaKeys:J.r,MediaKeysPolicy:J.r,MediaMetadata:J.r,MediaSession:J.r,MediaSettingsRange:J.r,MemoryInfo:J.r,MessageChannel:J.r,Metadata:J.r,MutationObserver:J.r,WebKitMutationObserver:J.r,MutationRecord:J.r,NavigationPreloadManager:J.r,Navigator:J.r,NavigatorAutomationInformation:J.r,NavigatorConcurrentHardware:J.r,NavigatorCookies:J.r,NavigatorUserMediaError:J.r,NodeFilter:J.r,NodeIterator:J.r,NonDocumentTypeChildNode:J.r,NonElementParentNode:J.r,NoncedElement:J.r,OffscreenCanvasRenderingContext2D:J.r,OverconstrainedError:J.r,PaintRenderingContext2D:J.r,PaintSize:J.r,PaintWorkletGlobalScope:J.r,PasswordCredential:J.r,Path2D:J.r,PaymentAddress:J.r,PaymentInstruments:J.r,PaymentManager:J.r,PaymentResponse:J.r,PerformanceEntry:J.r,PerformanceLongTaskTiming:J.r,PerformanceMark:J.r,PerformanceMeasure:J.r,PerformanceNavigation:J.r,PerformanceNavigationTiming:J.r,PerformanceObserver:J.r,PerformanceObserverEntryList:J.r,PerformancePaintTiming:J.r,PerformanceResourceTiming:J.r,PerformanceServerTiming:J.r,PerformanceTiming:J.r,Permissions:J.r,PhotoCapabilities:J.r,PositionError:J.r,GeolocationPositionError:J.r,Presentation:J.r,PresentationReceiver:J.r,PublicKeyCredential:J.r,PushManager:J.r,PushMessageData:J.r,PushSubscription:J.r,PushSubscriptionOptions:J.r,Range:J.r,RelatedApplication:J.r,ReportBody:J.r,ReportingObserver:J.r,ResizeObserver:J.r,ResizeObserverEntry:J.r,RTCCertificate:J.r,RTCIceCandidate:J.r,mozRTCIceCandidate:J.r,RTCLegacyStatsReport:J.r,RTCRtpContributingSource:J.r,RTCRtpReceiver:J.r,RTCRtpSender:J.r,RTCSessionDescription:J.r,mozRTCSessionDescription:J.r,RTCStatsResponse:J.r,Screen:J.r,ScrollState:J.r,ScrollTimeline:J.r,Selection:J.r,SpeechRecognitionAlternative:J.r,SpeechSynthesisVoice:J.r,StaticRange:J.r,StorageManager:J.r,StyleMedia:J.r,StylePropertyMap:J.r,StylePropertyMapReadonly:J.r,SyncManager:J.r,TaskAttributionTiming:J.r,TextDetector:J.r,TextMetrics:J.r,TrackDefault:J.r,TreeWalker:J.r,TrustedHTML:J.r,TrustedScriptURL:J.r,TrustedURL:J.r,UnderlyingSourceBase:J.r,URLSearchParams:J.r,VRCoordinateSystem:J.r,VRDisplayCapabilities:J.r,VREyeParameters:J.r,VRFrameData:J.r,VRFrameOfReference:J.r,VRPose:J.r,VRStageBounds:J.r,VRStageBoundsPoint:J.r,VRStageParameters:J.r,ValidityState:J.r,VideoPlaybackQuality:J.r,VideoTrack:J.r,VTTRegion:J.r,WindowClient:J.r,WorkletAnimation:J.r,WorkletGlobalScope:J.r,XPathEvaluator:J.r,XPathExpression:J.r,XPathNSResolver:J.r,XPathResult:J.r,XMLSerializer:J.r,XSLTProcessor:J.r,Bluetooth:J.r,BluetoothCharacteristicProperties:J.r,BluetoothRemoteGATTServer:J.r,BluetoothRemoteGATTService:J.r,BluetoothUUID:J.r,BudgetService:J.r,Cache:J.r,DOMFileSystemSync:J.r,DirectoryEntrySync:J.r,DirectoryReaderSync:J.r,EntrySync:J.r,FileEntrySync:J.r,FileReaderSync:J.r,FileWriterSync:J.r,HTMLAllCollection:J.r,Mojo:J.r,MojoHandle:J.r,MojoWatcher:J.r,NFC:J.r,PagePopupController:J.r,Report:J.r,Request:J.r,Response:J.r,SubtleCrypto:J.r,USBAlternateInterface:J.r,USBConfiguration:J.r,USBDevice:J.r,USBEndpoint:J.r,USBInTransferResult:J.r,USBInterface:J.r,USBIsochronousInTransferPacket:J.r,USBIsochronousInTransferResult:J.r,USBIsochronousOutTransferPacket:J.r,USBIsochronousOutTransferResult:J.r,USBOutTransferResult:J.r,WorkerLocation:J.r,WorkerNavigator:J.r,Worklet:J.r,IDBFactory:J.r,IDBIndex:J.r,IDBKeyRange:J.r,IDBObserver:J.r,IDBObserverChanges:J.r,SVGAnimatedAngle:J.r,SVGAnimatedBoolean:J.r,SVGAnimatedEnumeration:J.r,SVGAnimatedInteger:J.r,SVGAnimatedLength:J.r,SVGAnimatedLengthList:J.r,SVGAnimatedNumber:J.r,SVGAnimatedNumberList:J.r,SVGAnimatedPreserveAspectRatio:J.r,SVGAnimatedRect:J.r,SVGAnimatedString:J.r,SVGAnimatedTransformList:J.r,SVGMatrix:J.r,SVGPoint:J.r,SVGPreserveAspectRatio:J.r,SVGRect:J.r,SVGUnitTypes:J.r,AudioListener:J.r,AudioTrack:J.r,AudioWorkletGlobalScope:J.r,AudioWorkletProcessor:J.r,PeriodicWave:J.r,WebGLActiveInfo:J.r,ANGLEInstancedArrays:J.r,ANGLE_instanced_arrays:J.r,WebGLBuffer:J.r,WebGLCanvas:J.r,WebGLColorBufferFloat:J.r,WebGLCompressedTextureASTC:J.r,WebGLCompressedTextureATC:J.r,WEBGL_compressed_texture_atc:J.r,WebGLCompressedTextureETC1:J.r,WEBGL_compressed_texture_etc1:J.r,WebGLCompressedTextureETC:J.r,WebGLCompressedTexturePVRTC:J.r,WEBGL_compressed_texture_pvrtc:J.r,WebGLCompressedTextureS3TC:J.r,WEBGL_compressed_texture_s3tc:J.r,WebGLCompressedTextureS3TCsRGB:J.r,WebGLDebugRendererInfo:J.r,WEBGL_debug_renderer_info:J.r,WebGLDebugShaders:J.r,WEBGL_debug_shaders:J.r,WebGLDepthTexture:J.r,WEBGL_depth_texture:J.r,WebGLDrawBuffers:J.r,WEBGL_draw_buffers:J.r,EXTsRGB:J.r,EXT_sRGB:J.r,EXTBlendMinMax:J.r,EXT_blend_minmax:J.r,EXTColorBufferFloat:J.r,EXTColorBufferHalfFloat:J.r,EXTDisjointTimerQuery:J.r,EXTDisjointTimerQueryWebGL2:J.r,EXTFragDepth:J.r,EXT_frag_depth:J.r,EXTShaderTextureLOD:J.r,EXT_shader_texture_lod:J.r,EXTTextureFilterAnisotropic:J.r,EXT_texture_filter_anisotropic:J.r,WebGLFramebuffer:J.r,WebGLGetBufferSubDataAsync:J.r,WebGLLoseContext:J.r,WebGLExtensionLoseContext:J.r,WEBGL_lose_context:J.r,OESElementIndexUint:J.r,OES_element_index_uint:J.r,OESStandardDerivatives:J.r,OES_standard_derivatives:J.r,OESTextureFloat:J.r,OES_texture_float:J.r,OESTextureFloatLinear:J.r,OES_texture_float_linear:J.r,OESTextureHalfFloat:J.r,OES_texture_half_float:J.r,OESTextureHalfFloatLinear:J.r,OES_texture_half_float_linear:J.r,OESVertexArrayObject:J.r,OES_vertex_array_object:J.r,WebGLProgram:J.r,WebGLQuery:J.r,WebGLRenderbuffer:J.r,WebGLRenderingContext:J.r,WebGL2RenderingContext:J.r,WebGLSampler:J.r,WebGLShader:J.r,WebGLShaderPrecisionFormat:J.r,WebGLSync:J.r,WebGLTexture:J.r,WebGLTimerQueryEXT:J.r,WebGLTransformFeedback:J.r,WebGLUniformLocation:J.r,WebGLVertexArrayObject:J.r,WebGLVertexArrayObjectOES:J.r,WebGL2RenderingContextBase:J.r,ArrayBuffer:A.xN,ArrayBufferView:A.hk,DataView:A.Lu,Float32Array:A.Lv,Float64Array:A.a4P,Int16Array:A.a4Q,Int32Array:A.Lw,Int8Array:A.a4R,Uint16Array:A.a4S,Uint32Array:A.Ly,Uint8ClampedArray:A.Lz,CanvasPixelArray:A.Lz,Uint8Array:A.ox,HTMLAudioElement:A.bM,HTMLBRElement:A.bM,HTMLBaseElement:A.bM,HTMLBodyElement:A.bM,HTMLCanvasElement:A.bM,HTMLContentElement:A.bM,HTMLDListElement:A.bM,HTMLDataListElement:A.bM,HTMLDetailsElement:A.bM,HTMLDivElement:A.bM,HTMLEmbedElement:A.bM,HTMLFieldSetElement:A.bM,HTMLHRElement:A.bM,HTMLHeadElement:A.bM,HTMLHeadingElement:A.bM,HTMLHtmlElement:A.bM,HTMLIFrameElement:A.bM,HTMLImageElement:A.bM,HTMLLabelElement:A.bM,HTMLLegendElement:A.bM,HTMLLinkElement:A.bM,HTMLMapElement:A.bM,HTMLMediaElement:A.bM,HTMLMenuElement:A.bM,HTMLMetaElement:A.bM,HTMLModElement:A.bM,HTMLOListElement:A.bM,HTMLObjectElement:A.bM,HTMLOptGroupElement:A.bM,HTMLParagraphElement:A.bM,HTMLPictureElement:A.bM,HTMLPreElement:A.bM,HTMLQuoteElement:A.bM,HTMLScriptElement:A.bM,HTMLShadowElement:A.bM,HTMLSlotElement:A.bM,HTMLSourceElement:A.bM,HTMLSpanElement:A.bM,HTMLStyleElement:A.bM,HTMLTableCaptionElement:A.bM,HTMLTableCellElement:A.bM,HTMLTableDataCellElement:A.bM,HTMLTableHeaderCellElement:A.bM,HTMLTableColElement:A.bM,HTMLTableElement:A.bM,HTMLTableRowElement:A.bM,HTMLTableSectionElement:A.bM,HTMLTemplateElement:A.bM,HTMLTimeElement:A.bM,HTMLTitleElement:A.bM,HTMLTrackElement:A.bM,HTMLUListElement:A.bM,HTMLUnknownElement:A.bM,HTMLVideoElement:A.bM,HTMLDirectoryElement:A.bM,HTMLFontElement:A.bM,HTMLFrameElement:A.bM,HTMLFrameSetElement:A.bM,HTMLMarqueeElement:A.bM,HTMLElement:A.bM,AccessibleNodeList:A.W4,HTMLAnchorElement:A.Wb,HTMLAreaElement:A.Wu,Blob:A.t8,BluetoothRemoteGATTDescriptor:A.WY,BroadcastChannel:A.X6,HTMLButtonElement:A.X9,CDATASection:A.o4,CharacterData:A.o4,Comment:A.o4,ProcessingInstruction:A.o4,Text:A.o4,CSSKeywordValue:A.XJ,CSSNumericValue:A.HS,CSSPerspective:A.XK,CSSCharsetRule:A.dO,CSSConditionRule:A.dO,CSSFontFaceRule:A.dO,CSSGroupingRule:A.dO,CSSImportRule:A.dO,CSSKeyframeRule:A.dO,MozCSSKeyframeRule:A.dO,WebKitCSSKeyframeRule:A.dO,CSSKeyframesRule:A.dO,MozCSSKeyframesRule:A.dO,WebKitCSSKeyframesRule:A.dO,CSSMediaRule:A.dO,CSSNamespaceRule:A.dO,CSSPageRule:A.dO,CSSRule:A.dO,CSSStyleRule:A.dO,CSSSupportsRule:A.dO,CSSViewportRule:A.dO,CSSStyleDeclaration:A.AF,MSStyleCSSProperties:A.AF,CSS2Properties:A.AF,CSSImageValue:A.lG,CSSPositionValue:A.lG,CSSResourceValue:A.lG,CSSURLImageValue:A.lG,CSSStyleValue:A.lG,CSSMatrixComponent:A.mA,CSSRotation:A.mA,CSSScale:A.mA,CSSSkew:A.mA,CSSTranslation:A.mA,CSSTransformComponent:A.mA,CSSTransformValue:A.XL,CSSUnitValue:A.XM,CSSUnparsedValue:A.XN,HTMLDataElement:A.ZL,DataTransferItemList:A.ZM,DedicatedWorkerGlobalScope:A.ZW,HTMLDialogElement:A.a_j,DOMException:A.a_u,ClientRectList:A.IL,DOMRectList:A.IL,DOMRectReadOnly:A.IM,DOMStringList:A.a_x,DOMTokenList:A.a_z,MathMLElement:A.bv,SVGAElement:A.bv,SVGAnimateElement:A.bv,SVGAnimateMotionElement:A.bv,SVGAnimateTransformElement:A.bv,SVGAnimationElement:A.bv,SVGCircleElement:A.bv,SVGClipPathElement:A.bv,SVGDefsElement:A.bv,SVGDescElement:A.bv,SVGDiscardElement:A.bv,SVGEllipseElement:A.bv,SVGFEBlendElement:A.bv,SVGFEColorMatrixElement:A.bv,SVGFEComponentTransferElement:A.bv,SVGFECompositeElement:A.bv,SVGFEConvolveMatrixElement:A.bv,SVGFEDiffuseLightingElement:A.bv,SVGFEDisplacementMapElement:A.bv,SVGFEDistantLightElement:A.bv,SVGFEFloodElement:A.bv,SVGFEFuncAElement:A.bv,SVGFEFuncBElement:A.bv,SVGFEFuncGElement:A.bv,SVGFEFuncRElement:A.bv,SVGFEGaussianBlurElement:A.bv,SVGFEImageElement:A.bv,SVGFEMergeElement:A.bv,SVGFEMergeNodeElement:A.bv,SVGFEMorphologyElement:A.bv,SVGFEOffsetElement:A.bv,SVGFEPointLightElement:A.bv,SVGFESpecularLightingElement:A.bv,SVGFESpotLightElement:A.bv,SVGFETileElement:A.bv,SVGFETurbulenceElement:A.bv,SVGFilterElement:A.bv,SVGForeignObjectElement:A.bv,SVGGElement:A.bv,SVGGeometryElement:A.bv,SVGGraphicsElement:A.bv,SVGImageElement:A.bv,SVGLineElement:A.bv,SVGLinearGradientElement:A.bv,SVGMarkerElement:A.bv,SVGMaskElement:A.bv,SVGMetadataElement:A.bv,SVGPathElement:A.bv,SVGPatternElement:A.bv,SVGPolygonElement:A.bv,SVGPolylineElement:A.bv,SVGRadialGradientElement:A.bv,SVGRectElement:A.bv,SVGScriptElement:A.bv,SVGSetElement:A.bv,SVGStopElement:A.bv,SVGStyleElement:A.bv,SVGElement:A.bv,SVGSVGElement:A.bv,SVGSwitchElement:A.bv,SVGSymbolElement:A.bv,SVGTSpanElement:A.bv,SVGTextContentElement:A.bv,SVGTextElement:A.bv,SVGTextPathElement:A.bv,SVGTextPositioningElement:A.bv,SVGTitleElement:A.bv,SVGUseElement:A.bv,SVGViewElement:A.bv,SVGGradientElement:A.bv,SVGComponentTransferFunctionElement:A.bv,SVGFEDropShadowElement:A.bv,SVGMPathElement:A.bv,Element:A.bv,AbortPaymentEvent:A.bd,AnimationEvent:A.bd,AnimationPlaybackEvent:A.bd,ApplicationCacheErrorEvent:A.bd,BackgroundFetchClickEvent:A.bd,BackgroundFetchEvent:A.bd,BackgroundFetchFailEvent:A.bd,BackgroundFetchedEvent:A.bd,BeforeInstallPromptEvent:A.bd,BeforeUnloadEvent:A.bd,BlobEvent:A.bd,CanMakePaymentEvent:A.bd,ClipboardEvent:A.bd,CloseEvent:A.bd,CompositionEvent:A.bd,CustomEvent:A.bd,DeviceMotionEvent:A.bd,DeviceOrientationEvent:A.bd,ErrorEvent:A.bd,ExtendableEvent:A.bd,ExtendableMessageEvent:A.bd,FetchEvent:A.bd,FocusEvent:A.bd,FontFaceSetLoadEvent:A.bd,ForeignFetchEvent:A.bd,GamepadEvent:A.bd,HashChangeEvent:A.bd,InstallEvent:A.bd,KeyboardEvent:A.bd,MediaEncryptedEvent:A.bd,MediaKeyMessageEvent:A.bd,MediaQueryListEvent:A.bd,MediaStreamEvent:A.bd,MediaStreamTrackEvent:A.bd,MIDIConnectionEvent:A.bd,MIDIMessageEvent:A.bd,MouseEvent:A.bd,DragEvent:A.bd,MutationEvent:A.bd,NotificationEvent:A.bd,PageTransitionEvent:A.bd,PaymentRequestEvent:A.bd,PaymentRequestUpdateEvent:A.bd,PointerEvent:A.bd,PopStateEvent:A.bd,PresentationConnectionAvailableEvent:A.bd,PresentationConnectionCloseEvent:A.bd,ProgressEvent:A.bd,PromiseRejectionEvent:A.bd,PushEvent:A.bd,RTCDataChannelEvent:A.bd,RTCDTMFToneChangeEvent:A.bd,RTCPeerConnectionIceEvent:A.bd,RTCTrackEvent:A.bd,SecurityPolicyViolationEvent:A.bd,SensorErrorEvent:A.bd,SpeechRecognitionError:A.bd,SpeechRecognitionEvent:A.bd,SpeechSynthesisEvent:A.bd,StorageEvent:A.bd,SyncEvent:A.bd,TextEvent:A.bd,TouchEvent:A.bd,TrackEvent:A.bd,TransitionEvent:A.bd,WebKitTransitionEvent:A.bd,UIEvent:A.bd,VRDeviceEvent:A.bd,VRDisplayEvent:A.bd,VRSessionEvent:A.bd,WheelEvent:A.bd,MojoInterfaceRequestEvent:A.bd,ResourceProgressEvent:A.bd,USBConnectionEvent:A.bd,IDBVersionChangeEvent:A.bd,AudioProcessingEvent:A.bd,OfflineAudioCompletionEvent:A.bd,WebGLContextEvent:A.bd,Event:A.bd,InputEvent:A.bd,SubmitEvent:A.bd,EventSource:A.a_Z,AbsoluteOrientationSensor:A.am,Accelerometer:A.am,AccessibleNode:A.am,AmbientLightSensor:A.am,Animation:A.am,ApplicationCache:A.am,DOMApplicationCache:A.am,OfflineResourceList:A.am,BackgroundFetchRegistration:A.am,BatteryManager:A.am,CanvasCaptureMediaStreamTrack:A.am,FileReader:A.am,Gyroscope:A.am,XMLHttpRequest:A.am,XMLHttpRequestEventTarget:A.am,XMLHttpRequestUpload:A.am,LinearAccelerationSensor:A.am,Magnetometer:A.am,MediaDevices:A.am,MediaQueryList:A.am,MediaRecorder:A.am,MediaSource:A.am,MediaStream:A.am,MediaStreamTrack:A.am,MIDIAccess:A.am,NetworkInformation:A.am,OffscreenCanvas:A.am,OrientationSensor:A.am,PaymentRequest:A.am,Performance:A.am,PermissionStatus:A.am,PresentationConnectionList:A.am,PresentationRequest:A.am,RelativeOrientationSensor:A.am,RemotePlayback:A.am,RTCDTMFSender:A.am,ScreenOrientation:A.am,Sensor:A.am,ServiceWorker:A.am,ServiceWorkerContainer:A.am,ServiceWorkerRegistration:A.am,SharedWorker:A.am,SpeechRecognition:A.am,webkitSpeechRecognition:A.am,SpeechSynthesis:A.am,SpeechSynthesisUtterance:A.am,VR:A.am,VRDevice:A.am,VRDisplay:A.am,VRSession:A.am,VisualViewport:A.am,Worker:A.am,WorkerPerformance:A.am,BluetoothDevice:A.am,BluetoothRemoteGATTCharacteristic:A.am,Clipboard:A.am,MojoInterfaceInterceptor:A.am,USB:A.am,IDBOpenDBRequest:A.am,IDBVersionChangeRequest:A.am,IDBRequest:A.am,IDBTransaction:A.am,AnalyserNode:A.am,RealtimeAnalyserNode:A.am,AudioBufferSourceNode:A.am,AudioDestinationNode:A.am,AudioNode:A.am,AudioScheduledSourceNode:A.am,AudioWorkletNode:A.am,BiquadFilterNode:A.am,ChannelMergerNode:A.am,AudioChannelMerger:A.am,ChannelSplitterNode:A.am,AudioChannelSplitter:A.am,ConstantSourceNode:A.am,ConvolverNode:A.am,DelayNode:A.am,DynamicsCompressorNode:A.am,GainNode:A.am,AudioGainNode:A.am,IIRFilterNode:A.am,MediaElementAudioSourceNode:A.am,MediaStreamAudioDestinationNode:A.am,MediaStreamAudioSourceNode:A.am,OscillatorNode:A.am,Oscillator:A.am,PannerNode:A.am,AudioPannerNode:A.am,webkitAudioPannerNode:A.am,ScriptProcessorNode:A.am,JavaScriptAudioNode:A.am,StereoPannerNode:A.am,WaveShaperNode:A.am,EventTarget:A.am,File:A.iO,FileList:A.Bg,FileWriter:A.a0b,FontFaceSet:A.a0o,HTMLFormElement:A.a0q,Gamepad:A.jo,GamepadButton:A.a0w,History:A.a0O,HTMLCollection:A.x7,HTMLFormControlsCollection:A.x7,HTMLOptionsCollection:A.x7,ImageBitmap:A.a11,ImageData:A.BC,HTMLInputElement:A.a1d,HTMLLIElement:A.a1p,Location:A.a1T,MediaKeySession:A.a3V,MediaList:A.a3W,MessageEvent:A.u3,MessagePort:A.Cb,HTMLMeterElement:A.a40,MIDIInputMap:A.a41,MIDIOutputMap:A.a42,MIDIInput:A.xG,MIDIOutput:A.xG,MIDIPort:A.xG,MimeType:A.jt,MimeTypeArray:A.a43,Document:A.bX,DocumentFragment:A.bX,HTMLDocument:A.bX,ShadowRoot:A.bX,XMLDocument:A.bX,DocumentType:A.bX,Node:A.bX,NodeList:A.LJ,RadioNodeList:A.LJ,Notification:A.a50,HTMLOptionElement:A.a5d,HTMLOutputElement:A.a5n,HTMLParamElement:A.a5Q,Plugin:A.jw,PluginArray:A.a66,PresentationAvailability:A.a6e,PresentationConnection:A.a6f,HTMLProgressElement:A.a6l,RTCDataChannel:A.Ne,DataChannel:A.Ne,RTCPeerConnection:A.Df,webkitRTCPeerConnection:A.Df,mozRTCPeerConnection:A.Df,RTCStatsReport:A.a7v,HTMLSelectElement:A.a7X,SharedArrayBuffer:A.Dt,SharedWorkerGlobalScope:A.a8a,SourceBuffer:A.jB,SourceBufferList:A.a8K,SpeechGrammar:A.jC,SpeechGrammarList:A.a8S,SpeechRecognitionResult:A.jD,Storage:A.a8W,CSSStyleSheet:A.iz,StyleSheet:A.iz,HTMLTextAreaElement:A.a9k,TextTrack:A.jI,TextTrackCue:A.iB,VTTCue:A.iB,TextTrackCueList:A.a9B,TextTrackList:A.a9C,TimeRanges:A.a9D,Touch:A.jJ,TouchList:A.a9H,TrackDefaultList:A.a9I,URL:A.a9X,VideoTrackList:A.aa7,WebSocket:A.aan,Window:A.PM,DOMWindow:A.PM,ServiceWorkerGlobalScope:A.z9,WorkerGlobalScope:A.z9,Attr:A.acY,CSSRuleList:A.adX,ClientRect:A.QP,DOMRect:A.QP,GamepadList:A.afP,NamedNodeMap:A.Sg,MozNamedAttrMap:A.Sg,SpeechRecognitionResultList:A.akJ,StyleSheetList:A.akW,IDBCursor:A.I6,IDBCursorWithValue:A.ZC,IDBDatabase:A.ZN,IDBObjectStore:A.a57,IDBObservation:A.a58,SVGAngle:A.Wc,SVGLength:A.kQ,SVGLengthList:A.a1J,SVGNumber:A.kY,SVGNumberList:A.a56,SVGPointList:A.a67,SVGStringList:A.a8Y,SVGTransform:A.lg,SVGTransformList:A.a9K,AudioBuffer:A.WE,AudioContext:A.H4,webkitAudioContext:A.H4,AudioParam:A.WF,AudioParamMap:A.WG,AudioTrackList:A.WH,BaseAudioContext:A.Hd,OfflineAudioContext:A.a59}) +hunkHelpers.setOrUpdateLeafTags({WebGL:true,AnimationEffectReadOnly:true,AnimationEffectTiming:true,AnimationEffectTimingReadOnly:true,AnimationTimeline:true,AnimationWorkletGlobalScope:true,AuthenticatorAssertionResponse:true,AuthenticatorAttestationResponse:true,AuthenticatorResponse:true,BackgroundFetchFetch:true,BackgroundFetchManager:true,BackgroundFetchSettledFetch:true,BarProp:true,BarcodeDetector:true,Body:true,BudgetState:true,CacheStorage:true,CanvasGradient:true,CanvasPattern:true,CanvasRenderingContext2D:true,Client:true,Clients:true,CookieStore:true,Coordinates:true,Credential:true,CredentialUserData:true,CredentialsContainer:true,Crypto:true,CryptoKey:true,CSS:true,CSSVariableReferenceValue:true,CustomElementRegistry:true,DataTransfer:true,DataTransferItem:true,DeprecatedStorageInfo:true,DeprecatedStorageQuota:true,DeprecationReport:true,DetectedBarcode:true,DetectedFace:true,DetectedText:true,DeviceAcceleration:true,DeviceRotationRate:true,DirectoryEntry:true,webkitFileSystemDirectoryEntry:true,FileSystemDirectoryEntry:true,DirectoryReader:true,WebKitDirectoryReader:true,webkitFileSystemDirectoryReader:true,FileSystemDirectoryReader:true,DocumentOrShadowRoot:true,DocumentTimeline:true,DOMError:true,DOMImplementation:true,Iterator:true,DOMMatrix:true,DOMMatrixReadOnly:true,DOMParser:true,DOMPoint:true,DOMPointReadOnly:true,DOMQuad:true,DOMStringMap:true,Entry:true,webkitFileSystemEntry:true,FileSystemEntry:true,External:true,FaceDetector:true,FederatedCredential:true,FileEntry:true,webkitFileSystemFileEntry:true,FileSystemFileEntry:true,DOMFileSystem:true,WebKitFileSystem:true,webkitFileSystem:true,FileSystem:true,FontFace:true,FontFaceSource:true,FormData:true,GamepadPose:true,Geolocation:true,Position:true,GeolocationPosition:true,Headers:true,HTMLHyperlinkElementUtils:true,IdleDeadline:true,ImageBitmapRenderingContext:true,ImageCapture:true,InputDeviceCapabilities:true,IntersectionObserver:true,IntersectionObserverEntry:true,InterventionReport:true,KeyframeEffect:true,KeyframeEffectReadOnly:true,MediaCapabilities:true,MediaCapabilitiesInfo:true,MediaDeviceInfo:true,MediaError:true,MediaKeyStatusMap:true,MediaKeySystemAccess:true,MediaKeys:true,MediaKeysPolicy:true,MediaMetadata:true,MediaSession:true,MediaSettingsRange:true,MemoryInfo:true,MessageChannel:true,Metadata:true,MutationObserver:true,WebKitMutationObserver:true,MutationRecord:true,NavigationPreloadManager:true,Navigator:true,NavigatorAutomationInformation:true,NavigatorConcurrentHardware:true,NavigatorCookies:true,NavigatorUserMediaError:true,NodeFilter:true,NodeIterator:true,NonDocumentTypeChildNode:true,NonElementParentNode:true,NoncedElement:true,OffscreenCanvasRenderingContext2D:true,OverconstrainedError:true,PaintRenderingContext2D:true,PaintSize:true,PaintWorkletGlobalScope:true,PasswordCredential:true,Path2D:true,PaymentAddress:true,PaymentInstruments:true,PaymentManager:true,PaymentResponse:true,PerformanceEntry:true,PerformanceLongTaskTiming:true,PerformanceMark:true,PerformanceMeasure:true,PerformanceNavigation:true,PerformanceNavigationTiming:true,PerformanceObserver:true,PerformanceObserverEntryList:true,PerformancePaintTiming:true,PerformanceResourceTiming:true,PerformanceServerTiming:true,PerformanceTiming:true,Permissions:true,PhotoCapabilities:true,PositionError:true,GeolocationPositionError:true,Presentation:true,PresentationReceiver:true,PublicKeyCredential:true,PushManager:true,PushMessageData:true,PushSubscription:true,PushSubscriptionOptions:true,Range:true,RelatedApplication:true,ReportBody:true,ReportingObserver:true,ResizeObserver:true,ResizeObserverEntry:true,RTCCertificate:true,RTCIceCandidate:true,mozRTCIceCandidate:true,RTCLegacyStatsReport:true,RTCRtpContributingSource:true,RTCRtpReceiver:true,RTCRtpSender:true,RTCSessionDescription:true,mozRTCSessionDescription:true,RTCStatsResponse:true,Screen:true,ScrollState:true,ScrollTimeline:true,Selection:true,SpeechRecognitionAlternative:true,SpeechSynthesisVoice:true,StaticRange:true,StorageManager:true,StyleMedia:true,StylePropertyMap:true,StylePropertyMapReadonly:true,SyncManager:true,TaskAttributionTiming:true,TextDetector:true,TextMetrics:true,TrackDefault:true,TreeWalker:true,TrustedHTML:true,TrustedScriptURL:true,TrustedURL:true,UnderlyingSourceBase:true,URLSearchParams:true,VRCoordinateSystem:true,VRDisplayCapabilities:true,VREyeParameters:true,VRFrameData:true,VRFrameOfReference:true,VRPose:true,VRStageBounds:true,VRStageBoundsPoint:true,VRStageParameters:true,ValidityState:true,VideoPlaybackQuality:true,VideoTrack:true,VTTRegion:true,WindowClient:true,WorkletAnimation:true,WorkletGlobalScope:true,XPathEvaluator:true,XPathExpression:true,XPathNSResolver:true,XPathResult:true,XMLSerializer:true,XSLTProcessor:true,Bluetooth:true,BluetoothCharacteristicProperties:true,BluetoothRemoteGATTServer:true,BluetoothRemoteGATTService:true,BluetoothUUID:true,BudgetService:true,Cache:true,DOMFileSystemSync:true,DirectoryEntrySync:true,DirectoryReaderSync:true,EntrySync:true,FileEntrySync:true,FileReaderSync:true,FileWriterSync:true,HTMLAllCollection:true,Mojo:true,MojoHandle:true,MojoWatcher:true,NFC:true,PagePopupController:true,Report:true,Request:true,Response:true,SubtleCrypto:true,USBAlternateInterface:true,USBConfiguration:true,USBDevice:true,USBEndpoint:true,USBInTransferResult:true,USBInterface:true,USBIsochronousInTransferPacket:true,USBIsochronousInTransferResult:true,USBIsochronousOutTransferPacket:true,USBIsochronousOutTransferResult:true,USBOutTransferResult:true,WorkerLocation:true,WorkerNavigator:true,Worklet:true,IDBFactory:true,IDBIndex:true,IDBKeyRange:true,IDBObserver:true,IDBObserverChanges:true,SVGAnimatedAngle:true,SVGAnimatedBoolean:true,SVGAnimatedEnumeration:true,SVGAnimatedInteger:true,SVGAnimatedLength:true,SVGAnimatedLengthList:true,SVGAnimatedNumber:true,SVGAnimatedNumberList:true,SVGAnimatedPreserveAspectRatio:true,SVGAnimatedRect:true,SVGAnimatedString:true,SVGAnimatedTransformList:true,SVGMatrix:true,SVGPoint:true,SVGPreserveAspectRatio:true,SVGRect:true,SVGUnitTypes:true,AudioListener:true,AudioTrack:true,AudioWorkletGlobalScope:true,AudioWorkletProcessor:true,PeriodicWave:true,WebGLActiveInfo:true,ANGLEInstancedArrays:true,ANGLE_instanced_arrays:true,WebGLBuffer:true,WebGLCanvas:true,WebGLColorBufferFloat:true,WebGLCompressedTextureASTC:true,WebGLCompressedTextureATC:true,WEBGL_compressed_texture_atc:true,WebGLCompressedTextureETC1:true,WEBGL_compressed_texture_etc1:true,WebGLCompressedTextureETC:true,WebGLCompressedTexturePVRTC:true,WEBGL_compressed_texture_pvrtc:true,WebGLCompressedTextureS3TC:true,WEBGL_compressed_texture_s3tc:true,WebGLCompressedTextureS3TCsRGB:true,WebGLDebugRendererInfo:true,WEBGL_debug_renderer_info:true,WebGLDebugShaders:true,WEBGL_debug_shaders:true,WebGLDepthTexture:true,WEBGL_depth_texture:true,WebGLDrawBuffers:true,WEBGL_draw_buffers:true,EXTsRGB:true,EXT_sRGB:true,EXTBlendMinMax:true,EXT_blend_minmax:true,EXTColorBufferFloat:true,EXTColorBufferHalfFloat:true,EXTDisjointTimerQuery:true,EXTDisjointTimerQueryWebGL2:true,EXTFragDepth:true,EXT_frag_depth:true,EXTShaderTextureLOD:true,EXT_shader_texture_lod:true,EXTTextureFilterAnisotropic:true,EXT_texture_filter_anisotropic:true,WebGLFramebuffer:true,WebGLGetBufferSubDataAsync:true,WebGLLoseContext:true,WebGLExtensionLoseContext:true,WEBGL_lose_context:true,OESElementIndexUint:true,OES_element_index_uint:true,OESStandardDerivatives:true,OES_standard_derivatives:true,OESTextureFloat:true,OES_texture_float:true,OESTextureFloatLinear:true,OES_texture_float_linear:true,OESTextureHalfFloat:true,OES_texture_half_float:true,OESTextureHalfFloatLinear:true,OES_texture_half_float_linear:true,OESVertexArrayObject:true,OES_vertex_array_object:true,WebGLProgram:true,WebGLQuery:true,WebGLRenderbuffer:true,WebGLRenderingContext:true,WebGL2RenderingContext:true,WebGLSampler:true,WebGLShader:true,WebGLShaderPrecisionFormat:true,WebGLSync:true,WebGLTexture:true,WebGLTimerQueryEXT:true,WebGLTransformFeedback:true,WebGLUniformLocation:true,WebGLVertexArrayObject:true,WebGLVertexArrayObjectOES:true,WebGL2RenderingContextBase:true,ArrayBuffer:true,ArrayBufferView:false,DataView:true,Float32Array:true,Float64Array:true,Int16Array:true,Int32Array:true,Int8Array:true,Uint16Array:true,Uint32Array:true,Uint8ClampedArray:true,CanvasPixelArray:true,Uint8Array:false,HTMLAudioElement:true,HTMLBRElement:true,HTMLBaseElement:true,HTMLBodyElement:true,HTMLCanvasElement:true,HTMLContentElement:true,HTMLDListElement:true,HTMLDataListElement:true,HTMLDetailsElement:true,HTMLDivElement:true,HTMLEmbedElement:true,HTMLFieldSetElement:true,HTMLHRElement:true,HTMLHeadElement:true,HTMLHeadingElement:true,HTMLHtmlElement:true,HTMLIFrameElement:true,HTMLImageElement:true,HTMLLabelElement:true,HTMLLegendElement:true,HTMLLinkElement:true,HTMLMapElement:true,HTMLMediaElement:true,HTMLMenuElement:true,HTMLMetaElement:true,HTMLModElement:true,HTMLOListElement:true,HTMLObjectElement:true,HTMLOptGroupElement:true,HTMLParagraphElement:true,HTMLPictureElement:true,HTMLPreElement:true,HTMLQuoteElement:true,HTMLScriptElement:true,HTMLShadowElement:true,HTMLSlotElement:true,HTMLSourceElement:true,HTMLSpanElement:true,HTMLStyleElement:true,HTMLTableCaptionElement:true,HTMLTableCellElement:true,HTMLTableDataCellElement:true,HTMLTableHeaderCellElement:true,HTMLTableColElement:true,HTMLTableElement:true,HTMLTableRowElement:true,HTMLTableSectionElement:true,HTMLTemplateElement:true,HTMLTimeElement:true,HTMLTitleElement:true,HTMLTrackElement:true,HTMLUListElement:true,HTMLUnknownElement:true,HTMLVideoElement:true,HTMLDirectoryElement:true,HTMLFontElement:true,HTMLFrameElement:true,HTMLFrameSetElement:true,HTMLMarqueeElement:true,HTMLElement:false,AccessibleNodeList:true,HTMLAnchorElement:true,HTMLAreaElement:true,Blob:false,BluetoothRemoteGATTDescriptor:true,BroadcastChannel:true,HTMLButtonElement:true,CDATASection:true,CharacterData:true,Comment:true,ProcessingInstruction:true,Text:true,CSSKeywordValue:true,CSSNumericValue:false,CSSPerspective:true,CSSCharsetRule:true,CSSConditionRule:true,CSSFontFaceRule:true,CSSGroupingRule:true,CSSImportRule:true,CSSKeyframeRule:true,MozCSSKeyframeRule:true,WebKitCSSKeyframeRule:true,CSSKeyframesRule:true,MozCSSKeyframesRule:true,WebKitCSSKeyframesRule:true,CSSMediaRule:true,CSSNamespaceRule:true,CSSPageRule:true,CSSRule:true,CSSStyleRule:true,CSSSupportsRule:true,CSSViewportRule:true,CSSStyleDeclaration:true,MSStyleCSSProperties:true,CSS2Properties:true,CSSImageValue:true,CSSPositionValue:true,CSSResourceValue:true,CSSURLImageValue:true,CSSStyleValue:false,CSSMatrixComponent:true,CSSRotation:true,CSSScale:true,CSSSkew:true,CSSTranslation:true,CSSTransformComponent:false,CSSTransformValue:true,CSSUnitValue:true,CSSUnparsedValue:true,HTMLDataElement:true,DataTransferItemList:true,DedicatedWorkerGlobalScope:true,HTMLDialogElement:true,DOMException:true,ClientRectList:true,DOMRectList:true,DOMRectReadOnly:false,DOMStringList:true,DOMTokenList:true,MathMLElement:true,SVGAElement:true,SVGAnimateElement:true,SVGAnimateMotionElement:true,SVGAnimateTransformElement:true,SVGAnimationElement:true,SVGCircleElement:true,SVGClipPathElement:true,SVGDefsElement:true,SVGDescElement:true,SVGDiscardElement:true,SVGEllipseElement:true,SVGFEBlendElement:true,SVGFEColorMatrixElement:true,SVGFEComponentTransferElement:true,SVGFECompositeElement:true,SVGFEConvolveMatrixElement:true,SVGFEDiffuseLightingElement:true,SVGFEDisplacementMapElement:true,SVGFEDistantLightElement:true,SVGFEFloodElement:true,SVGFEFuncAElement:true,SVGFEFuncBElement:true,SVGFEFuncGElement:true,SVGFEFuncRElement:true,SVGFEGaussianBlurElement:true,SVGFEImageElement:true,SVGFEMergeElement:true,SVGFEMergeNodeElement:true,SVGFEMorphologyElement:true,SVGFEOffsetElement:true,SVGFEPointLightElement:true,SVGFESpecularLightingElement:true,SVGFESpotLightElement:true,SVGFETileElement:true,SVGFETurbulenceElement:true,SVGFilterElement:true,SVGForeignObjectElement:true,SVGGElement:true,SVGGeometryElement:true,SVGGraphicsElement:true,SVGImageElement:true,SVGLineElement:true,SVGLinearGradientElement:true,SVGMarkerElement:true,SVGMaskElement:true,SVGMetadataElement:true,SVGPathElement:true,SVGPatternElement:true,SVGPolygonElement:true,SVGPolylineElement:true,SVGRadialGradientElement:true,SVGRectElement:true,SVGScriptElement:true,SVGSetElement:true,SVGStopElement:true,SVGStyleElement:true,SVGElement:true,SVGSVGElement:true,SVGSwitchElement:true,SVGSymbolElement:true,SVGTSpanElement:true,SVGTextContentElement:true,SVGTextElement:true,SVGTextPathElement:true,SVGTextPositioningElement:true,SVGTitleElement:true,SVGUseElement:true,SVGViewElement:true,SVGGradientElement:true,SVGComponentTransferFunctionElement:true,SVGFEDropShadowElement:true,SVGMPathElement:true,Element:false,AbortPaymentEvent:true,AnimationEvent:true,AnimationPlaybackEvent:true,ApplicationCacheErrorEvent:true,BackgroundFetchClickEvent:true,BackgroundFetchEvent:true,BackgroundFetchFailEvent:true,BackgroundFetchedEvent:true,BeforeInstallPromptEvent:true,BeforeUnloadEvent:true,BlobEvent:true,CanMakePaymentEvent:true,ClipboardEvent:true,CloseEvent:true,CompositionEvent:true,CustomEvent:true,DeviceMotionEvent:true,DeviceOrientationEvent:true,ErrorEvent:true,ExtendableEvent:true,ExtendableMessageEvent:true,FetchEvent:true,FocusEvent:true,FontFaceSetLoadEvent:true,ForeignFetchEvent:true,GamepadEvent:true,HashChangeEvent:true,InstallEvent:true,KeyboardEvent:true,MediaEncryptedEvent:true,MediaKeyMessageEvent:true,MediaQueryListEvent:true,MediaStreamEvent:true,MediaStreamTrackEvent:true,MIDIConnectionEvent:true,MIDIMessageEvent:true,MouseEvent:true,DragEvent:true,MutationEvent:true,NotificationEvent:true,PageTransitionEvent:true,PaymentRequestEvent:true,PaymentRequestUpdateEvent:true,PointerEvent:true,PopStateEvent:true,PresentationConnectionAvailableEvent:true,PresentationConnectionCloseEvent:true,ProgressEvent:true,PromiseRejectionEvent:true,PushEvent:true,RTCDataChannelEvent:true,RTCDTMFToneChangeEvent:true,RTCPeerConnectionIceEvent:true,RTCTrackEvent:true,SecurityPolicyViolationEvent:true,SensorErrorEvent:true,SpeechRecognitionError:true,SpeechRecognitionEvent:true,SpeechSynthesisEvent:true,StorageEvent:true,SyncEvent:true,TextEvent:true,TouchEvent:true,TrackEvent:true,TransitionEvent:true,WebKitTransitionEvent:true,UIEvent:true,VRDeviceEvent:true,VRDisplayEvent:true,VRSessionEvent:true,WheelEvent:true,MojoInterfaceRequestEvent:true,ResourceProgressEvent:true,USBConnectionEvent:true,IDBVersionChangeEvent:true,AudioProcessingEvent:true,OfflineAudioCompletionEvent:true,WebGLContextEvent:true,Event:false,InputEvent:false,SubmitEvent:false,EventSource:true,AbsoluteOrientationSensor:true,Accelerometer:true,AccessibleNode:true,AmbientLightSensor:true,Animation:true,ApplicationCache:true,DOMApplicationCache:true,OfflineResourceList:true,BackgroundFetchRegistration:true,BatteryManager:true,CanvasCaptureMediaStreamTrack:true,FileReader:true,Gyroscope:true,XMLHttpRequest:true,XMLHttpRequestEventTarget:true,XMLHttpRequestUpload:true,LinearAccelerationSensor:true,Magnetometer:true,MediaDevices:true,MediaQueryList:true,MediaRecorder:true,MediaSource:true,MediaStream:true,MediaStreamTrack:true,MIDIAccess:true,NetworkInformation:true,OffscreenCanvas:true,OrientationSensor:true,PaymentRequest:true,Performance:true,PermissionStatus:true,PresentationConnectionList:true,PresentationRequest:true,RelativeOrientationSensor:true,RemotePlayback:true,RTCDTMFSender:true,ScreenOrientation:true,Sensor:true,ServiceWorker:true,ServiceWorkerContainer:true,ServiceWorkerRegistration:true,SharedWorker:true,SpeechRecognition:true,webkitSpeechRecognition:true,SpeechSynthesis:true,SpeechSynthesisUtterance:true,VR:true,VRDevice:true,VRDisplay:true,VRSession:true,VisualViewport:true,Worker:true,WorkerPerformance:true,BluetoothDevice:true,BluetoothRemoteGATTCharacteristic:true,Clipboard:true,MojoInterfaceInterceptor:true,USB:true,IDBOpenDBRequest:true,IDBVersionChangeRequest:true,IDBRequest:true,IDBTransaction:true,AnalyserNode:true,RealtimeAnalyserNode:true,AudioBufferSourceNode:true,AudioDestinationNode:true,AudioNode:true,AudioScheduledSourceNode:true,AudioWorkletNode:true,BiquadFilterNode:true,ChannelMergerNode:true,AudioChannelMerger:true,ChannelSplitterNode:true,AudioChannelSplitter:true,ConstantSourceNode:true,ConvolverNode:true,DelayNode:true,DynamicsCompressorNode:true,GainNode:true,AudioGainNode:true,IIRFilterNode:true,MediaElementAudioSourceNode:true,MediaStreamAudioDestinationNode:true,MediaStreamAudioSourceNode:true,OscillatorNode:true,Oscillator:true,PannerNode:true,AudioPannerNode:true,webkitAudioPannerNode:true,ScriptProcessorNode:true,JavaScriptAudioNode:true,StereoPannerNode:true,WaveShaperNode:true,EventTarget:false,File:true,FileList:true,FileWriter:true,FontFaceSet:true,HTMLFormElement:true,Gamepad:true,GamepadButton:true,History:true,HTMLCollection:true,HTMLFormControlsCollection:true,HTMLOptionsCollection:true,ImageBitmap:true,ImageData:true,HTMLInputElement:true,HTMLLIElement:true,Location:true,MediaKeySession:true,MediaList:true,MessageEvent:true,MessagePort:true,HTMLMeterElement:true,MIDIInputMap:true,MIDIOutputMap:true,MIDIInput:true,MIDIOutput:true,MIDIPort:true,MimeType:true,MimeTypeArray:true,Document:true,DocumentFragment:true,HTMLDocument:true,ShadowRoot:true,XMLDocument:true,DocumentType:true,Node:false,NodeList:true,RadioNodeList:true,Notification:true,HTMLOptionElement:true,HTMLOutputElement:true,HTMLParamElement:true,Plugin:true,PluginArray:true,PresentationAvailability:true,PresentationConnection:true,HTMLProgressElement:true,RTCDataChannel:true,DataChannel:true,RTCPeerConnection:true,webkitRTCPeerConnection:true,mozRTCPeerConnection:true,RTCStatsReport:true,HTMLSelectElement:true,SharedArrayBuffer:true,SharedWorkerGlobalScope:true,SourceBuffer:true,SourceBufferList:true,SpeechGrammar:true,SpeechGrammarList:true,SpeechRecognitionResult:true,Storage:true,CSSStyleSheet:true,StyleSheet:true,HTMLTextAreaElement:true,TextTrack:true,TextTrackCue:true,VTTCue:true,TextTrackCueList:true,TextTrackList:true,TimeRanges:true,Touch:true,TouchList:true,TrackDefaultList:true,URL:true,VideoTrackList:true,WebSocket:true,Window:true,DOMWindow:true,ServiceWorkerGlobalScope:true,WorkerGlobalScope:false,Attr:true,CSSRuleList:true,ClientRect:true,DOMRect:true,GamepadList:true,NamedNodeMap:true,MozNamedAttrMap:true,SpeechRecognitionResultList:true,StyleSheetList:true,IDBCursor:false,IDBCursorWithValue:true,IDBDatabase:true,IDBObjectStore:true,IDBObservation:true,SVGAngle:true,SVGLength:true,SVGLengthList:true,SVGNumber:true,SVGNumberList:true,SVGPointList:true,SVGStringList:true,SVGTransform:true,SVGTransformList:true,AudioBuffer:true,AudioContext:true,webkitAudioContext:true,AudioParam:true,AudioParamMap:true,AudioTrackList:true,BaseAudioContext:false,OfflineAudioContext:true}) +A.Ct.$nativeSuperclassTag="ArrayBufferView" +A.Sh.$nativeSuperclassTag="ArrayBufferView" +A.Si.$nativeSuperclassTag="ArrayBufferView" +A.u8.$nativeSuperclassTag="ArrayBufferView" +A.Sj.$nativeSuperclassTag="ArrayBufferView" +A.Sk.$nativeSuperclassTag="ArrayBufferView" +A.kX.$nativeSuperclassTag="ArrayBufferView" +A.TB.$nativeSuperclassTag="EventTarget" +A.TC.$nativeSuperclassTag="EventTarget" +A.U3.$nativeSuperclassTag="EventTarget" +A.U4.$nativeSuperclassTag="EventTarget"})() +Function.prototype.$0=function(){return this()} +Function.prototype.$1=function(a){return this(a)} +Function.prototype.$2=function(a,b){return this(a,b)} +Function.prototype.$3$1=function(a){return this(a)} +Function.prototype.$2$1=function(a){return this(a)} +Function.prototype.$1$1=function(a){return this(a)} +Function.prototype.$3=function(a,b,c){return this(a,b,c)} +Function.prototype.$4=function(a,b,c,d){return this(a,b,c,d)} +Function.prototype.$3$3=function(a,b,c){return this(a,b,c)} +Function.prototype.$2$2=function(a,b){return this(a,b)} +Function.prototype.$1$2=function(a,b){return this(a,b)} +Function.prototype.$1$0=function(){return this()} +Function.prototype.$5=function(a,b,c,d,e){return this(a,b,c,d,e)} +Function.prototype.$1$5=function(a,b,c,d,e){return this(a,b,c,d,e)} +Function.prototype.$6=function(a,b,c,d,e,f){return this(a,b,c,d,e,f)} +Function.prototype.$8=function(a,b,c,d,e,f,g,h){return this(a,b,c,d,e,f,g,h)} +Function.prototype.$2$3=function(a,b,c){return this(a,b,c)} +Function.prototype.$2$0=function(){return this()} +convertAllToFastObject(w) +convertToFastObject($);(function(a){if(typeof document==="undefined"){a(null) +return}if(typeof document.currentScript!="undefined"){a(document.currentScript) +return}var s=document.scripts +function onLoad(b){for(var q=0;q \ No newline at end of file + \ No newline at end of file diff --git a/resources/web/image/logo.png b/resources/web/image/logo.png index f2e03b4851..9460537013 100644 Binary files a/resources/web/image/logo.png and b/resources/web/image/logo.png differ diff --git a/resources/web/image/logo2.png b/resources/web/image/logo2.png index 7b07e35360..99827ab5a7 100644 Binary files a/resources/web/image/logo2.png and b/resources/web/image/logo2.png differ diff --git a/resources/web/include/globalapi.js b/resources/web/include/globalapi.js index 0553483e1a..dcd8cf4afe 100644 --- a/resources/web/include/globalapi.js +++ b/resources/web/include/globalapi.js @@ -327,7 +327,7 @@ function clearCookie(name) { /*--------Studio WX Message-------*/ function IsInSlicer() { - let bMatch=navigator.userAgent.match( RegExp('BBL-Slicer','i') ); + let bMatch=navigator.userAgent.match( RegExp('SM-Slicer','i') ); return bMatch; } diff --git a/resources/web/login/js/globalapi.js b/resources/web/login/js/globalapi.js index 3d56015018..bb5b90a50f 100644 --- a/resources/web/login/js/globalapi.js +++ b/resources/web/login/js/globalapi.js @@ -260,7 +260,7 @@ function clearCookie(name) { /*--------Studio WX Message-------*/ function IsInSlicer() { - let bMatch=navigator.userAgent.match( RegExp('BBL-Slicer','i') ); + let bMatch=navigator.userAgent.match( RegExp('SM-Slicer','i') ); return bMatch; } diff --git a/resources/web/preset_bind/24/24.css b/resources/web/preset_bind/24/24.css new file mode 100644 index 0000000000..a648916098 --- /dev/null +++ b/resources/web/preset_bind/24/24.css @@ -0,0 +1,183 @@ +#Content +{ + overflow-y:auto; +} + +.BlockBanner +{ + padding: 0px; + border-bottom:#009688 1px solid; + width: 100%; +} + +.BlockBanner a +{ + display: inline-block; + background-color:#009688; + line-height: 40px; + height: 40px; + padding: 0px 24px; + color: #fff; +} + +.PrinterArea +{ + padding: 10px; + display: flex; + flex-wrap: wrap; +} + +.PrinterBlock +{ + width: 160px; + text-align: center; + padding: 10px; +} + +.PrinterBlock img +{ + width:160px; + height: 160px; +} + +.PName +{ + font-weight: 700; + text-align:left; +} + +.pNozzel +{ + display: flex; + align-items: center; + justify-content:flex-start; + color: #5A5A5A; + padding-left: 10px; +} + +.pNozzel input[type="radio"] { + vertical-align: middle; + margin-right: 5px; + cursor: pointer; +} + +.pNozzel input[type="radio"] { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + width: 16px; + height: 16px; + border: 2px solid #009688; + border-radius: 50%; + outline: none; + margin-right: 8px; + position: relative; +} + +.pNozzel input[type="radio"]:checked { + background-color: #009688; + border-color: #009688; +} + +.pNozzel input[type="radio"]:checked:after { + content: ''; + width: 6px; + height: 6px; + background: white; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + border-radius: 50%; +} + +/*-----Notice-----*/ +#NoticeMask +{ + background-color: #000; + position: absolute; + top: 0px; + left: 0px; + right: 0px; + bottom: 0px; + opacity: 0.05; + display: none; +} + +#NoticeBody +{ + display: none; + width: 400px; + border-width: 1px; + border-style: solid; + border-radius: 4px; + background-color: inherit; + position: absolute; + left: 50%; + top: 200px; + margin-left: -200px; +} + +#NoticeBar +{ + background-color:#00f0d8; + height: 40px; + line-height: 40px; + color: #fff; + text-align: center; +} + +#NoticeContent +{ + padding: 4mm 10mm; +} + + +#NoticeBtns +{ + margin-top: 4mm; + display: flex; + justify-content:space-around; +} + +.search { + width: 100%; + position: relative; + display: flex; + } + + .searchTerm { + width: 100%; + border: 3px solid #009688; + /*border-right: none;*/ + padding: 5px; + height: 20px; + border-radius: 5px 5px 5px 5px; + outline: none; + color: #9DBFAF; + } + + .searchTerm:focus{ + color: #009688; + } + + /*Resize the wrap to see the search bar change!*/ + .wrap{ + width: 30%; + padding-bottom: 5px; + padding-left: 42px; + } + +/* 修改确定按钮的样式和位置 */ +#AcceptArea { + display: flex; + justify-content: flex-end; /* 改为右对齐 */ + padding: 20px 40px; /* 增加右边距,让按钮不贴边 */ +} + +.NormalBtn { + min-width: 80px; /* 设置最小宽度 */ + text-align: center; +} + +/* 移除GrayBtn样式 */ diff --git a/resources/web/preset_bind/24/24.js b/resources/web/preset_bind/24/24.js new file mode 100644 index 0000000000..d7548dee8b --- /dev/null +++ b/resources/web/preset_bind/24/24.js @@ -0,0 +1,429 @@ +function OnInit() +{ + //let strInput=JSON.stringify(cData); + //HandleStudio(strInput); + + TranslatePage(); + + RequestProfile(); +} + + + +function RequestProfile() +{ + var tSend={}; + tSend['sequence_id']=Math.round(new Date() / 1000); + tSend['command']="request_userguide_profile"; + + SendWXMessage( JSON.stringify(tSend) ); +} + +function HandleStudio( pVal ) +{ +// alert(strInput); +// alert(JSON.stringify(strInput)); +// +// let pVal=IsJson(strInput); +// if(pVal==null) +// { +// alert("Msg Format Error is not Json"); +// return; +// } + + let strCmd=pVal['command']; + //alert(strCmd); + + if(strCmd=='response_userguide_profile') + { + HandleModelList(pVal['response']); + } +} + +function ShowPrinterThumb(pItem, strImg) +{ + $(pItem).attr('src',strImg); + $(pItem).attr('onerror',null); +} + +function HandleModelList( pVal ) +{ + if( !pVal.hasOwnProperty("model") ) + return; + + pModel=pVal['model']; + + let nTotal=pModel.length; + let ModelHtml={}; + for(let n=0;n'+ +''+ +'
    '+ +'
    '+ +''; + + $('#Content').append(HtmlNewVendor); + } + + let ModelName=OneModel['model']; + + //Collect Html Node Nozzel Html + if( !ModelHtml.hasOwnProperty(strVendor)) + ModelHtml[strVendor]=''; + + let NozzleArray=OneModel['nozzle_diameter'].split(';'); + let HtmlNozzel=''; + for(let m=0;m' + + '' + nNozzel + '' + + 'mm nozzle'; + } + + let CoverImage=OneModel['cover']; + ModelHtml[strVendor]+='
    '+ +'
    '+ +'
    '+OneModel['model']+'
    '+ HtmlNozzel +'
    '; + } + + //Update Nozzel Html Append + for( let key in ModelHtml ) + { + $(".OneVendorBlock[vendor='"+key+"'] .PrinterArea").append( ModelHtml[key] ); + } + + + //Update Checkbox + $('input').prop("checked", false); + for(let m=0;m' + + '
    ' + + ' ' + sVV + '' + + '
    ' + + '
    ' + + '
    ' + + ''; + + $('#Content').append(HtmlNewVendor); + } + + //Collect Html Node Nozzel Html + if (!ModelHtml.hasOwnProperty(strVendor)) + ModelHtml[strVendor] = ''; + + let NozzleArray = OneModel['nozzle_diameter'].split(';'); + let HtmlNozzel = ''; + for (let m = 0; m < NozzleArray.length; m++) { + let nNozzel = NozzleArray[m]; + HtmlNozzel += '
    ' + + '' + + '' + nNozzel + '' + + 'mm nozzle
    '; + } + + let CoverImage = OneModel['cover']; + ModelHtml[strVendor] += '
    ' + + '
    ' + + '
    ' + OneModel['model'] + '
    ' + HtmlNozzel + '
    '; + } + + //Update Nozzel Html Append + for (let key in ModelHtml) { + let obj = $(".OneVendorBlock[vendor='" + key + "'] .PrinterArea"); + obj.empty(); + obj.append(ModelHtml[key]); + } + + // 更新radio选中状态 + $('input[type="radio"]').each(function() { + let strModel = $(this).attr("model"); + let strVendor = $(this).attr("vendor"); + let strNozzel = $(this).attr("nozzel"); + + if(ModelNozzleSelected[strVendor] && + ModelNozzleSelected[strVendor][strModel] && + ModelNozzleSelected[strVendor][strModel][strNozzel]) { + $(this).prop("checked", true); + } + }); + + TranslatePage(); +} + +function OnExitFilter() { + + let nTotal = 0; + let ModelAll = {}; + for (vendor in ModelNozzleSelected) { + for (model in ModelNozzleSelected[vendor]) { + for (nozzel in ModelNozzleSelected[vendor][model]) { + if (!ModelNozzleSelected[vendor][model][nozzel]) + continue; + + if (!ModelAll.hasOwnProperty(model)) { + //alert("ADD: "+strModel); + + ModelAll[model] = {}; + + ModelAll[model]["model"] = model; + ModelAll[model]["nozzle_diameter"] = ''; + ModelAll[model]["vendor"] = vendor; + } + + ModelAll[model]["nozzle_diameter"] += ModelAll[model]["nozzle_diameter"] == '' ? nozzel : ';' + nozzel; + + nTotal++; + } + + } + } + + var tSend = {}; + tSend['sequence_id'] = Math.round(new Date() / 1000); + tSend['command'] = "save_userguide_models"; + tSend['data'] = ModelAll; + + SendWXMessage(JSON.stringify(tSend)); + + return nTotal; + +} + +// +function OnExit() +{ + let ModelAll={}; + + let ModelSelect=$("input:checked"); + let nTotal=ModelSelect.length; + + if( nTotal==0 ) + { + ShowNotice(1); + + return 0; + } + + for(let n=0;n0) + { + var tSend={}; + tSend['sequence_id']=Math.round(new Date() / 1000); + tSend['command']="user_guide_finish"; + tSend['data']={}; + tSend['data']['action']="finish"; + + SendWXMessage( JSON.stringify(tSend) ); + } +} + + + + diff --git a/resources/web/preset_bind/24/index.html b/resources/web/preset_bind/24/index.html new file mode 100644 index 0000000000..4916c63dd5 --- /dev/null +++ b/resources/web/preset_bind/24/index.html @@ -0,0 +1,120 @@ + + + + + +引导_P21 + + + + + + + + + + + + +
    +
    Printer Selection
    +
    +
    + +
    +
    + + + +
    +
    +
    Confirm
    +
    + +
    +
    +
    error
    +
    +
    At least one printer must be selected.
    +
    +
    ok
    +
    +
    +
    + + + + + diff --git a/resources/web/preset_bind/css/common.css b/resources/web/preset_bind/css/common.css new file mode 100644 index 0000000000..411b219ee4 --- /dev/null +++ b/resources/web/preset_bind/css/common.css @@ -0,0 +1,199 @@ +* +{ + padding: 0; + border: 0; + margin: 0; + font-family: "system-ui", "Segoe UI", Roboto, Oxygen, Ubuntu, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-sans; + user-select: none; +} + +html +{ + height:100%; + background-color: #626262; +} + +body +{ + height:100%; + max-height: 660px; + max-width: 820px; + padding: 0; + border: 0; + margin: 0; + overflow: hidden; + background-color: #fff; + font-size: 14px; + line-height: 22px; +} + +.TextPoint +{ + font-size:1px; +} + +.ZScrol::-webkit-scrollbar {/*滚动条整体样式*/ + width: 12px; /*高宽分别对应横竖滚动条的尺寸*/ + height: 12px; + padding: 2px; +} + +.ZScrol::-webkit-scrollbar-thumb {/*滚动条里面小方块*/ + border-radius: 6px; + -webkit-box-shadow: inset 0 0 5px rgba(0,0,0,0.2); + box-shadow: inset 0 0 5px rgba(0,0,0,0.2); + background-color: #AAAAAA; +} + +.ZScrol::-webkit-scrollbar-track {/*滚动条里面轨道*/ + -webkit-box-shadow: inset 0 0 5px rgba(0,0,0,0.2); + box-shadow: inset 0 0 5px rgba(0,0,0,0.2); + border-radius: 10px; + background: #EDEDED; +} + +/*----Three Part----*/ +body +{ + display:flex; + flex-direction: column; +} + + +#Title +{ + height: 12%; + display: flex; + text-align: center; + flex-direction:column; + justify-content: center; +} + +#Title div +{ + font-size:28px; + line-height: 28px; + color: #009688; + padding: 0px 10mm; +} + + +#Content +{ + height: 76%; + padding: 20px 40px; + overflow-x: hidden; + overflow-y: auto; + text-align: left; + font-size: 14px; + line-height: 22px; + color: #464646; + position: relative; + display:flex; + flex-direction: column; +} + +#Content div +{ + +} + + +#AcceptArea +{ + height:12%; + padding: 0mm 10mm; + text-align: left; + display: flex; + justify-content:flex-end; + align-items: center; +} + + +/*--Btn--*/ +.NormalBtn +{ + padding: 3mm 9mm; + font-size: 14px; + text-align: center; + background-color: #009688; + border-radius: 16px; + color: #fff; + cursor: pointer; + margin-left: 10px; +} + +.NormalBtn:hover +{ + background-color:#4db6ac; +} + +.GrayBtn +{ + padding: 3mm 9mm; + font-size: 14px; + text-align: center; + border: 1px solid #575757; + border-radius: 18px; + color: #575757; + cursor: pointer; + margin-left: 10px; +} + +.GrayBtn:hover +{ + background-color:#E8E8E8; +} + +.SmallBtn +{ + padding: 2px 4mm; + font-size: 14px; + text-align: center; + background-color: #D9D9D9; + border-radius: 6px; + color: #000; + cursor: pointer; + display: inline-block; +} + +.SmallBtn:hover +{ + background-color: #CCCCCC; +} + + +.SmallBtn_Green +{ + padding: 2px 4mm; + font-size: 14px; + text-align: center; + background-color: #009688; + border-radius: 6px; + color: #fff; + cursor: pointer; + display: inline-block; +} + +.SmallBtn_Green:hover +{ + background-color: #4db6ac; +} + +/*---HyperLink---*/ +.HyperLink +{ + color: #009688; + text-decoration: underline; + font-weight: 700; + cursor: pointer; +} + + + +/*----------------Light Mode-------------------*/ + + + + + diff --git a/resources/web/preset_bind/css/dark.css b/resources/web/preset_bind/css/dark.css new file mode 100644 index 0000000000..a950db95d4 --- /dev/null +++ b/resources/web/preset_bind/css/dark.css @@ -0,0 +1,74 @@ +* +{ + color: #efeff0; + border-color: #B9B9BC; +} + +body +{ + background-color:#3E3E45; + color: #efeff0; +} + +.ZScrol::-webkit-scrollbar-thumb {/*滚动条里面小方块*/ + background-color: #939594; +} + +.ZScrol::-webkit-scrollbar-track {/*滚动条里面轨道*/ + background: #161817; +} + +#Title div +{ + color: #009688; +} + +/*-----Button-----*/ +.GrayBtn +{ + border: 1px solid #B9B9BC; + color: #B9B9BC; +} + +.GrayBtn:hover +{ + background-color:#E8E8E8; + color: #565656; +} + +/*-------Text------*/ + +.TextS1 +{ + +} + +.TextS2 +{ + color:#B9B9BC; +} + +/*---Policy---*/ +.TextArea1 +{ + background-color: #4A4A51; + color: #BEBEC0; +} + +/*----Region---*/ +.RegionItem:hover +{ + background-color:#4C4C55; +} + +.RegionSelected:hover +{ + background-color:#009688; + color: #fff; +} + +/*----Menu----*/ +#Title div.TitleUnselected +{ + color: #BEBEC0; +} diff --git a/resources/web/preset_bind/css/home.css b/resources/web/preset_bind/css/home.css new file mode 100644 index 0000000000..c086b41a84 --- /dev/null +++ b/resources/web/preset_bind/css/home.css @@ -0,0 +1,35 @@ +#FullArea +{ + height:100%; +} + + +#LoadProgress +{ + position:fixed; + top: 0px; + left: 0px; + width: 100%; + height: 3mm; + display: none; +} + +#PercentTip +{ + width:70%; + height: 100%; + background-color: #335DFC; +} + + +#PageArea +{ + width:100%; + height: 100%; +} + +#IEPage +{ + height:100%; + width: 100%; +} diff --git a/resources/web/preset_bind/css/test.css b/resources/web/preset_bind/css/test.css new file mode 100644 index 0000000000..f37ded3189 --- /dev/null +++ b/resources/web/preset_bind/css/test.css @@ -0,0 +1,58 @@ +* +{ + padding: 0; + border: 0; + margin: 0; +} + + +html,body +{ + height:100%; + padding: 0; + border: 0; + margin: 0; + overflow: hidden; + background-color: #fff; +} + +#PageArea +{ + height:100%; + width: 100%; +} + +.swiper { + height: 100%; + top: 0px; + left: 0px; + bottom: 35px; +} + +.swiper-slide { + font-size: 18px; + height: 100%; + width: 100%; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +.swiper-slide iframe +{ + width:100%; + height: 100%; + overflow-y: hidden; +} + +.CBtn +{ + padding: 3mm 100m; + background-color: #77EFF9; + display: inline-block; + height: 30px; + width: 150px; + text-align: center; + z-index: 99; + position: absolute; + top:30px; +} \ No newline at end of file diff --git a/resources/web/preset_bind/js/common.js b/resources/web/preset_bind/js/common.js new file mode 100644 index 0000000000..b0aafeaf37 --- /dev/null +++ b/resources/web/preset_bind/js/common.js @@ -0,0 +1,21 @@ +function ClosePage() { + var tSend = {}; + tSend['sequence_id'] = Math.round(new Date() / 1000); + tSend['command'] = "close_page"; + SendWXMessage(JSON.stringify(tSend)); +} + +document.onkeydown = function (event) { + var e = event || window.event || arguments.callee.caller.arguments[0]; + + if (window.event) { + try { e.keyCode = 0; } catch (e) { } + e.returnValue = false; + } +}; + +window.addEventListener('wheel', function (event) { + if (event.ctrlKey === true || event.metaKey) { + event.preventDefault(); + } +}, { passive: false }); diff --git a/resources/web/preset_bind/js/globalapi.js b/resources/web/preset_bind/js/globalapi.js new file mode 100644 index 0000000000..2d62ae0a28 --- /dev/null +++ b/resources/web/preset_bind/js/globalapi.js @@ -0,0 +1,339 @@ + +/*------------------ Date Function ------------------------*/ +function GetFullToday( ) +{ + var d=new Date(); + + var nday=d.getDate(); + var nmonth=d.getMonth()+1; + var nyear=d.getFullYear(); + + var strM=nmonth+''; + if( nmonth<10 ) + strM='0'+nmonth; + + var strD=nday+''; + if( nday<10 ) + strD='0'+nday; + + return nyear+'-'+strM+'-'+strD; +} + +function GetFullDate() +{ + var d=new Date(); + + var tDate={}; + + tDate.nyear=d.getFullYear(); + tDate.nmonth=d.getMonth()+1; + tDate.nday=d.getDate(); + + tDate.nhour=d.getHours(); + tDate.nminute=d.getMinutes(); + tDate.nsecond=d.getSeconds(); + + tDate.nweek=d.getDay(); + tDate.ndate=d.getDate(); + + var strM=tDate.nmonth+''; + if( tDate.nmonth<10 ) + strM='0'+tDate.nmonth; + + var strD=tDate.nday+''; + if( tDate.nday<10 ) + strD='0'+tDate.nday; + + var strH=tDate.nhour+''; + if( tDate.nhour<10 ) + strH='0'+tDate.nhour; + + var strMin=tDate.nminute+''; + if( tDate.nminute<10 ) + strMin='0'+tDate.nminute; + + var strS=tDate.nsecond+''; + if( tDate.nsecond<10 ) + strS='0'+tDate.nsecond; + + tDate.strdate=tDate.nyear+'-'+strM+'-'+strD; + tDate.strFulldate=tDate.strdate+' '+strH+':'+strMin+':'+strS; + + return tDate; +} + + +function Unixtimestamp2Date( nSecond ) +{ + var d=new Date(nSecond*1000); + + var tDate={}; + + tDate.nyear=d.getFullYear(); + tDate.nmonth=d.getMonth()+1; + tDate.nday=d.getDate(); + + tDate.nhour=d.getHours(); + tDate.nminute=d.getMinutes(); + tDate.nsecond=d.getSeconds(); + + tDate.nweek=d.getDay(); + tDate.ndate=d.getDate(); + + var strM=tDate.nmonth+''; + if( tDate.nmonth<10 ) + strM='0'+tDate.nmonth; + + var strD=tDate.nday+''; + if( tDate.nday<10 ) + strD='0'+tDate.nday; + + tDate.strdate=tDate.nyear+'-'+strM+'-'+strD; + + return tDate.strdate; +} + + +//------------Array Function------------- +Array.prototype.in_array = function (e) { + let sArray= ',' + this.join(this.S) + ','; + let skey=','+e+','; + + if(sArray.indexOf(skey)>=0) + return true; + else + return false; + } + + + +//------------String Function------------------ +/** +* Delete Left/Right Side Blank +*/ +String.prototype.trim=function() +{ + return this.replace(/(^\s*)|(\s*$)/g, ''); +} +/** +* Delete Left Side Blank +*/ +String.prototype.ltrim=function() +{ + return this.replace(/(^\s*)/g,''); +} +/** +* Delete Right Side Blank +*/ +String.prototype.rtrim=function() +{ + return this.replace(/(\s*$)/g,''); +} + + +//----------------Get Param------------- +function GetQueryString(name) +{ + var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); + var r = window.location.search.substr(1).match(reg); + if (r!=null) + { + return unescape(r[2]); + } + else + { + return null; + } +} + +function GetGetStr() +{ + let strGet=""; + + //获取当前URL + let url = document.location.href; + + //获取?的位置 + let index = url.indexOf("?") + if(index != -1) { + //截取出?后面的字符串 + strGet = url.substr(index + 1); + } + + return strGet; +} + + +/*--------------------JSON Function------------*/ + +/* +功能:检查一个字符串是不是标准的JSON格式 +参数: strJson 被检查的字符串 +返回值: 如果字符串是一个标准的JSON格式,则返回JSON对象 + 如果字符串不是标准JSON格式,则返回null +*/ +function IsJson( strJson ) +{ + var tJson=null; + try + { + tJson=JSON.parse(strJson); + } + catch(exception) + { + return null; + } + + return tJson; +} + +/*-----------------------Ajax Function--------------------*/ +/*对JQuery的Ajax函数的封装,只支持异步 +参数说明: + url 目标地址 + action post/get + data 字符串格式的发送内容 + asyn true---异步模式;false-----同步模式; +*/ +function HttpReq( url,action, data,callbackfunc) +{ + var strAction=action.toLowerCase(); + + if( strAction=="post") + { + $.post(url,data,callbackfunc); + } + else if( strAction=="get") + { + $.get(url,callbackfunc); + } +} + +/*---------------Cookie Function-------------------*/ +function setCookie(name, value, time='',path='') { + if(time && path){ + var strsec = time * 1000; + var exp = new Date(); + exp.setTime(exp.getTime() + strsec * 1); + document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString() + ";path="+path; + }else if(time){ + var strsec = time * 1000; + var exp = new Date(); + exp.setTime(exp.getTime() + strsec * 1); + document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString(); + }else if(path){ + document.cookie = name + "=" + escape(value) + ";path="+path; + }else{ + document.cookie = name + "=" + escape(value); + } +} + +function getCookie(c_name) +{ + if(document.cookie.length > 0) { + c_start = document.cookie.indexOf(c_name + "=");//获取字符串的起点 + if(c_start != -1) { + c_start = c_start + c_name.length + 1;//获取值的起点 + c_end = document.cookie.indexOf(";", c_start);//获取结尾处 + if(c_end == -1) c_end = document.cookie.length;//如果是最后一个,结尾就是cookie字符串的结尾 + return decodeURI(document.cookie.substring(c_start, c_end));//截取字符串返回 + } + } + + return ""; +} + +function checkCookie(c_name) { + username = getCookie(c_name); + console.log(username); + if (username != null && username != "") + { return true; } + else + { return false; } +} + +function clearCookie(name) { + setCookie(name, "", -1); +} + + +/*--------Studio WX Message-------*/ +function IsInSlicer() +{ + let bMatch=navigator.userAgent.match( RegExp('SM-Slicer','i') ); + + return bMatch; +} + + + +function SendWXMessage( strMsg ) +{ + let bCheck=IsInSlicer(); + + if(bCheck!=null) + { + window.wx.postMessage(strMsg); + } +} + +/*------CSS Link Control----*/ +function RemoveCssLink( LinkPath ) +{ + let pNow=$("head link[href='"+LinkPath+"']"); + + let nTotal=pNow.length; + for( let n=0;n0) + RemoveCssLink(DarkCssPath); + } + else + { + if(nNow==0) + AddCssLink(DarkCssPath); + } +} + +SwitchDarkMode( "../css/dark.css" ); \ No newline at end of file diff --git a/resources/web/preset_bind/js/home.js b/resources/web/preset_bind/js/home.js new file mode 100644 index 0000000000..78b1b96b7b --- /dev/null +++ b/resources/web/preset_bind/js/home.js @@ -0,0 +1,12 @@ + + + +function NextSlide() +{ + $('.swiper-button-next').click(); +} + +function PreSlide() +{ + $('.swiper-button-prev').click(); +} \ No newline at end of file diff --git a/resources/web/preset_bind/js/jquery-2.1.1.min.js b/resources/web/preset_bind/js/jquery-2.1.1.min.js new file mode 100644 index 0000000000..e150866a71 --- /dev/null +++ b/resources/web/preset_bind/js/jquery-2.1.1.min.js @@ -0,0 +1,4 @@ +/*! jQuery v2.1.1 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ +!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l=a.document,m="2.1.1",n=function(a,b){return new n.fn.init(a,b)},o=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,p=/^-ms-/,q=/-([\da-z])/gi,r=function(a,b){return b.toUpperCase()};n.fn=n.prototype={jquery:m,constructor:n,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=n.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return n.each(this,a,b)},map:function(a){return this.pushStack(n.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},n.extend=n.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||n.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(a=arguments[h]))for(b in a)c=g[b],d=a[b],g!==d&&(j&&d&&(n.isPlainObject(d)||(e=n.isArray(d)))?(e?(e=!1,f=c&&n.isArray(c)?c:[]):f=c&&n.isPlainObject(c)?c:{},g[b]=n.extend(j,f,d)):void 0!==d&&(g[b]=d));return g},n.extend({expando:"jQuery"+(m+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===n.type(a)},isArray:Array.isArray,isWindow:function(a){return null!=a&&a===a.window},isNumeric:function(a){return!n.isArray(a)&&a-parseFloat(a)>=0},isPlainObject:function(a){return"object"!==n.type(a)||a.nodeType||n.isWindow(a)?!1:a.constructor&&!j.call(a.constructor.prototype,"isPrototypeOf")?!1:!0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(a){var b,c=eval;a=n.trim(a),a&&(1===a.indexOf("use strict")?(b=l.createElement("script"),b.text=a,l.head.appendChild(b).parentNode.removeChild(b)):c(a))},camelCase:function(a){return a.replace(p,"ms-").replace(q,r)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=s(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(o,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(s(Object(a))?n.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){return null==b?-1:g.call(b,a,c)},merge:function(a,b){for(var c=+b.length,d=0,e=a.length;c>d;d++)a[e++]=b[d];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=s(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(c=a[b],b=a,a=c),n.isFunction(a)?(e=d.call(arguments,2),f=function(){return a.apply(b||this,e.concat(d.call(arguments)))},f.guid=a.guid=a.guid||n.guid++,f):void 0},now:Date.now,support:k}),n.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function s(a){var b=a.length,c=n.type(a);return"function"===c||n.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var t=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+-new Date,v=a.document,w=0,x=0,y=gb(),z=gb(),A=gb(),B=function(a,b){return a===b&&(l=!0),0},C="undefined",D=1<<31,E={}.hasOwnProperty,F=[],G=F.pop,H=F.push,I=F.push,J=F.slice,K=F.indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]===a)return b;return-1},L="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",M="[\\x20\\t\\r\\n\\f]",N="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",O=N.replace("w","w#"),P="\\["+M+"*("+N+")(?:"+M+"*([*^$|!~]?=)"+M+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+O+"))|)"+M+"*\\]",Q=":("+N+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+P+")*)|.*)\\)|)",R=new RegExp("^"+M+"+|((?:^|[^\\\\])(?:\\\\.)*)"+M+"+$","g"),S=new RegExp("^"+M+"*,"+M+"*"),T=new RegExp("^"+M+"*([>+~]|"+M+")"+M+"*"),U=new RegExp("="+M+"*([^\\]'\"]*?)"+M+"*\\]","g"),V=new RegExp(Q),W=new RegExp("^"+O+"$"),X={ID:new RegExp("^#("+N+")"),CLASS:new RegExp("^\\.("+N+")"),TAG:new RegExp("^("+N.replace("w","w*")+")"),ATTR:new RegExp("^"+P),PSEUDO:new RegExp("^"+Q),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+L+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ab=/[+~]/,bb=/'|\\/g,cb=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),db=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)};try{I.apply(F=J.call(v.childNodes),v.childNodes),F[v.childNodes.length].nodeType}catch(eb){I={apply:F.length?function(a,b){H.apply(a,J.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function fb(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],!a||"string"!=typeof a)return d;if(1!==(k=b.nodeType)&&9!==k)return[];if(p&&!e){if(f=_.exec(a))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return I.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName&&b.getElementsByClassName)return I.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=9===k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(bb,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+qb(o[l]);w=ab.test(a)&&ob(b.parentNode)||b,x=o.join(",")}if(x)try{return I.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function gb(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function hb(a){return a[u]=!0,a}function ib(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function jb(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function kb(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||D)-(~a.sourceIndex||D);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function lb(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function mb(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function nb(a){return hb(function(b){return b=+b,hb(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function ob(a){return a&&typeof a.getElementsByTagName!==C&&a}c=fb.support={},f=fb.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=fb.setDocument=function(a){var b,e=a?a.ownerDocument||a:v,g=e.defaultView;return e!==n&&9===e.nodeType&&e.documentElement?(n=e,o=e.documentElement,p=!f(e),g&&g!==g.top&&(g.addEventListener?g.addEventListener("unload",function(){m()},!1):g.attachEvent&&g.attachEvent("onunload",function(){m()})),c.attributes=ib(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ib(function(a){return a.appendChild(e.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(e.getElementsByClassName)&&ib(function(a){return a.innerHTML="
    ",a.firstChild.className="i",2===a.getElementsByClassName("i").length}),c.getById=ib(function(a){return o.appendChild(a).id=u,!e.getElementsByName||!e.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if(typeof b.getElementById!==C&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){var c=typeof a.getAttributeNode!==C&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return typeof b.getElementsByTagName!==C?b.getElementsByTagName(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return typeof b.getElementsByClassName!==C&&p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(e.querySelectorAll))&&(ib(function(a){a.innerHTML="",a.querySelectorAll("[msallowclip^='']").length&&q.push("[*^$]="+M+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+M+"*(?:value|"+L+")"),a.querySelectorAll(":checked").length||q.push(":checked")}),ib(function(a){var b=e.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+M+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ib(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",Q)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===e||a.ownerDocument===v&&t(v,a)?-1:b===e||b.ownerDocument===v&&t(v,b)?1:k?K.call(k,a)-K.call(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,f=a.parentNode,g=b.parentNode,h=[a],i=[b];if(!f||!g)return a===e?-1:b===e?1:f?-1:g?1:k?K.call(k,a)-K.call(k,b):0;if(f===g)return kb(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?kb(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},e):n},fb.matches=function(a,b){return fb(a,null,null,b)},fb.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return fb(b,n,null,[a]).length>0},fb.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},fb.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&E.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},fb.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},fb.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=fb.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=fb.selectors={cacheLength:50,createPseudo:hb,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(cb,db),a[3]=(a[3]||a[4]||a[5]||"").replace(cb,db),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||fb.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&fb.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(cb,db).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+M+")"+a+"("+M+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||typeof a.getAttribute!==C&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=fb.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||fb.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?hb(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=K.call(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:hb(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?hb(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:hb(function(a){return function(b){return fb(a,b).length>0}}),contains:hb(function(a){return function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:hb(function(a){return W.test(a||"")||fb.error("unsupported lang: "+a),a=a.replace(cb,db).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:nb(function(){return[0]}),last:nb(function(a,b){return[b-1]}),eq:nb(function(a,b,c){return[0>c?c+b:c]}),even:nb(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:nb(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:nb(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:nb(function(a,b,c){for(var d=0>c?c+b:c;++db;b++)d+=a[b].value;return d}function rb(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function sb(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function tb(a,b,c){for(var d=0,e=b.length;e>d;d++)fb(a,b[d],c);return c}function ub(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function vb(a,b,c,d,e,f){return d&&!d[u]&&(d=vb(d)),e&&!e[u]&&(e=vb(e,f)),hb(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||tb(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:ub(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=ub(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?K.call(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=ub(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):I.apply(g,r)})}function wb(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=rb(function(a){return a===b},h,!0),l=rb(function(a){return K.call(b,a)>-1},h,!0),m=[function(a,c,d){return!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d))}];f>i;i++)if(c=d.relative[a[i].type])m=[rb(sb(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return vb(i>1&&sb(m),i>1&&qb(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&wb(a.slice(i,e)),f>e&&wb(a=a.slice(e)),f>e&&qb(a))}m.push(c)}return sb(m)}function xb(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=G.call(i));s=ub(s)}I.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&fb.uniqueSort(i)}return k&&(w=v,j=t),r};return c?hb(f):f}return h=fb.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=wb(b[c]),f[u]?d.push(f):e.push(f);f=A(a,xb(e,d)),f.selector=a}return f},i=fb.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(cb,db),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(cb,db),ab.test(j[0].type)&&ob(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&qb(j),!a)return I.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,ab.test(a)&&ob(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ib(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),ib(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||jb("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ib(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||jb("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),ib(function(a){return null==a.getAttribute("disabled")})||jb(L,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),fb}(a);n.find=t,n.expr=t.selectors,n.expr[":"]=n.expr.pseudos,n.unique=t.uniqueSort,n.text=t.getText,n.isXMLDoc=t.isXML,n.contains=t.contains;var u=n.expr.match.needsContext,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^.[^:#\[\.,]*$/;function x(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(w.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return g.call(b,a)>=0!==c})}n.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?n.find.matchesSelector(d,a)?[d]:[]:n.find.matches(a,n.grep(b,function(a){return 1===a.nodeType}))},n.fn.extend({find:function(a){var b,c=this.length,d=[],e=this;if("string"!=typeof a)return this.pushStack(n(a).filter(function(){for(b=0;c>b;b++)if(n.contains(e[b],this))return!0}));for(b=0;c>b;b++)n.find(a,e[b],d);return d=this.pushStack(c>1?n.unique(d):d),d.selector=this.selector?this.selector+" "+a:a,d},filter:function(a){return this.pushStack(x(this,a||[],!1))},not:function(a){return this.pushStack(x(this,a||[],!0))},is:function(a){return!!x(this,"string"==typeof a&&u.test(a)?n(a):a||[],!1).length}});var y,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,A=n.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:z.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||y).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof n?b[0]:b,n.merge(this,n.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:l,!0)),v.test(c[1])&&n.isPlainObject(b))for(c in b)n.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}return d=l.getElementById(c[2]),d&&d.parentNode&&(this.length=1,this[0]=d),this.context=l,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):n.isFunction(a)?"undefined"!=typeof y.ready?y.ready(a):a(n):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),n.makeArray(a,this))};A.prototype=n.fn,y=n(l);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};n.extend({dir:function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&n(a).is(c))break;d.push(a)}return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),n.fn.extend({has:function(a){var b=n(a,this),c=b.length;return this.filter(function(){for(var a=0;c>a;a++)if(n.contains(this,b[a]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=u.test(a)||"string"!=typeof a?n(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&n.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?n.unique(f):f)},index:function(a){return a?"string"==typeof a?g.call(n(a),this[0]):g.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(n.unique(n.merge(this.get(),n(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function D(a,b){while((a=a[b])&&1!==a.nodeType);return a}n.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return n.dir(a,"parentNode")},parentsUntil:function(a,b,c){return n.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return n.dir(a,"nextSibling")},prevAll:function(a){return n.dir(a,"previousSibling")},nextUntil:function(a,b,c){return n.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return n.dir(a,"previousSibling",c)},siblings:function(a){return n.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return n.sibling(a.firstChild)},contents:function(a){return a.contentDocument||n.merge([],a.childNodes)}},function(a,b){n.fn[a]=function(c,d){var e=n.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=n.filter(d,e)),this.length>1&&(C[a]||n.unique(e),B.test(a)&&e.reverse()),this.pushStack(e)}});var E=/\S+/g,F={};function G(a){var b=F[a]={};return n.each(a.match(E)||[],function(a,c){b[c]=!0}),b}n.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):n.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(b=a.memory&&l,c=!0,g=e||0,e=0,f=h.length,d=!0;h&&f>g;g++)if(h[g].apply(l[0],l[1])===!1&&a.stopOnFalse){b=!1;break}d=!1,h&&(i?i.length&&j(i.shift()):b?h=[]:k.disable())},k={add:function(){if(h){var c=h.length;!function g(b){n.each(b,function(b,c){var d=n.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&g(c)})}(arguments),d?f=h.length:b&&(e=c,j(b))}return this},remove:function(){return h&&n.each(arguments,function(a,b){var c;while((c=n.inArray(b,h,c))>-1)h.splice(c,1),d&&(f>=c&&f--,g>=c&&g--)}),this},has:function(a){return a?n.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],f=0,this},disable:function(){return h=i=b=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,b||k.disable(),this},locked:function(){return!i},fireWith:function(a,b){return!h||c&&!i||(b=b||[],b=[a,b.slice?b.slice():b],d?i.push(b):j(b)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!c}};return k},n.extend({Deferred:function(a){var b=[["resolve","done",n.Callbacks("once memory"),"resolved"],["reject","fail",n.Callbacks("once memory"),"rejected"],["notify","progress",n.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return n.Deferred(function(c){n.each(b,function(b,f){var g=n.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&n.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?n.extend(a,d):d}},e={};return d.pipe=d.then,n.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&n.isFunction(a.promise)?e:0,g=1===f?a:n.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&n.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;n.fn.ready=function(a){return n.ready.promise().done(a),this},n.extend({isReady:!1,readyWait:1,holdReady:function(a){a?n.readyWait++:n.ready(!0)},ready:function(a){(a===!0?--n.readyWait:n.isReady)||(n.isReady=!0,a!==!0&&--n.readyWait>0||(H.resolveWith(l,[n]),n.fn.triggerHandler&&(n(l).triggerHandler("ready"),n(l).off("ready"))))}});function I(){l.removeEventListener("DOMContentLoaded",I,!1),a.removeEventListener("load",I,!1),n.ready()}n.ready.promise=function(b){return H||(H=n.Deferred(),"complete"===l.readyState?setTimeout(n.ready):(l.addEventListener("DOMContentLoaded",I,!1),a.addEventListener("load",I,!1))),H.promise(b)},n.ready.promise();var J=n.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===n.type(c)){e=!0;for(h in c)n.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,n.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(n(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f};n.acceptData=function(a){return 1===a.nodeType||9===a.nodeType||!+a.nodeType};function K(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=n.expando+Math.random()}K.uid=1,K.accepts=n.acceptData,K.prototype={key:function(a){if(!K.accepts(a))return 0;var b={},c=a[this.expando];if(!c){c=K.uid++;try{b[this.expando]={value:c},Object.defineProperties(a,b)}catch(d){b[this.expando]=c,n.extend(a,b)}}return this.cache[c]||(this.cache[c]={}),c},set:function(a,b,c){var d,e=this.key(a),f=this.cache[e];if("string"==typeof b)f[b]=c;else if(n.isEmptyObject(f))n.extend(this.cache[e],b);else for(d in b)f[d]=b[d];return f},get:function(a,b){var c=this.cache[this.key(a)];return void 0===b?c:c[b]},access:function(a,b,c){var d;return void 0===b||b&&"string"==typeof b&&void 0===c?(d=this.get(a,b),void 0!==d?d:this.get(a,n.camelCase(b))):(this.set(a,b,c),void 0!==c?c:b)},remove:function(a,b){var c,d,e,f=this.key(a),g=this.cache[f];if(void 0===b)this.cache[f]={};else{n.isArray(b)?d=b.concat(b.map(n.camelCase)):(e=n.camelCase(b),b in g?d=[b,e]:(d=e,d=d in g?[d]:d.match(E)||[])),c=d.length;while(c--)delete g[d[c]]}},hasData:function(a){return!n.isEmptyObject(this.cache[a[this.expando]]||{})},discard:function(a){a[this.expando]&&delete this.cache[a[this.expando]]}};var L=new K,M=new K,N=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,O=/([A-Z])/g;function P(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(O,"-$1").toLowerCase(),c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c}catch(e){}M.set(a,b,c)}else c=void 0;return c}n.extend({hasData:function(a){return M.hasData(a)||L.hasData(a)},data:function(a,b,c){return M.access(a,b,c)},removeData:function(a,b){M.remove(a,b) +},_data:function(a,b,c){return L.access(a,b,c)},_removeData:function(a,b){L.remove(a,b)}}),n.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=M.get(f),1===f.nodeType&&!L.get(f,"hasDataAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=n.camelCase(d.slice(5)),P(f,d,e[d])));L.set(f,"hasDataAttrs",!0)}return e}return"object"==typeof a?this.each(function(){M.set(this,a)}):J(this,function(b){var c,d=n.camelCase(a);if(f&&void 0===b){if(c=M.get(f,a),void 0!==c)return c;if(c=M.get(f,d),void 0!==c)return c;if(c=P(f,d,void 0),void 0!==c)return c}else this.each(function(){var c=M.get(this,d);M.set(this,d,b),-1!==a.indexOf("-")&&void 0!==c&&M.set(this,a,b)})},null,b,arguments.length>1,null,!0)},removeData:function(a){return this.each(function(){M.remove(this,a)})}}),n.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=L.get(a,b),c&&(!d||n.isArray(c)?d=L.access(a,b,n.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=n.queue(a,b),d=c.length,e=c.shift(),f=n._queueHooks(a,b),g=function(){n.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return L.get(a,c)||L.access(a,c,{empty:n.Callbacks("once memory").add(function(){L.remove(a,[b+"queue",c])})})}}),n.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.lengthx",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var U="undefined";k.focusinBubbles="onfocusin"in a;var V=/^key/,W=/^(?:mouse|pointer|contextmenu)|click/,X=/^(?:focusinfocus|focusoutblur)$/,Y=/^([^.]*)(?:\.(.+)|)$/;function Z(){return!0}function $(){return!1}function _(){try{return l.activeElement}catch(a){}}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.get(a);if(r){c.handler&&(f=c,c=f.handler,e=f.selector),c.guid||(c.guid=n.guid++),(i=r.events)||(i=r.events={}),(g=r.handle)||(g=r.handle=function(b){return typeof n!==U&&n.event.triggered!==b.type?n.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(E)||[""],j=b.length;while(j--)h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o&&(l=n.event.special[o]||{},o=(e?l.delegateType:l.bindType)||o,l=n.event.special[o]||{},k=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},f),(m=i[o])||(m=i[o]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,p,g)!==!1||a.addEventListener&&a.addEventListener(o,g,!1)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),n.event.global[o]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=L.hasData(a)&&L.get(a);if(r&&(i=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=Y.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=i[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&q!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete i[o])}else for(o in i)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(i)&&(delete r.handle,L.remove(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,m,o,p=[d||l],q=j.call(b,"type")?b.type:b,r=j.call(b,"namespace")?b.namespace.split("."):[];if(g=h=d=d||l,3!==d.nodeType&&8!==d.nodeType&&!X.test(q+n.event.triggered)&&(q.indexOf(".")>=0&&(r=q.split("."),q=r.shift(),r.sort()),k=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=r.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:n.makeArray(c,[b]),o=n.event.special[q]||{},e||!o.trigger||o.trigger.apply(d,c)!==!1)){if(!e&&!o.noBubble&&!n.isWindow(d)){for(i=o.delegateType||q,X.test(i+q)||(g=g.parentNode);g;g=g.parentNode)p.push(g),h=g;h===(d.ownerDocument||l)&&p.push(h.defaultView||h.parentWindow||a)}f=0;while((g=p[f++])&&!b.isPropagationStopped())b.type=f>1?i:o.bindType||q,m=(L.get(g,"events")||{})[b.type]&&L.get(g,"handle"),m&&m.apply(g,c),m=k&&g[k],m&&m.apply&&n.acceptData(g)&&(b.result=m.apply(g,c),b.result===!1&&b.preventDefault());return b.type=q,e||b.isDefaultPrevented()||o._default&&o._default.apply(p.pop(),c)!==!1||!n.acceptData(d)||k&&n.isFunction(d[q])&&!n.isWindow(d)&&(h=d[k],h&&(d[k]=null),n.event.triggered=q,d[q](),n.event.triggered=void 0,h&&(d[k]=h)),b.result}},dispatch:function(a){a=n.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(L.get(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(g.namespace))&&(a.handleObj=g,a.data=g.data,e=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==e&&(a.result=e)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!==this;i=i.parentNode||this)if(i.disabled!==!0||"click"!==a.type){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>=0:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h]*)\/>/gi,bb=/<([\w:]+)/,cb=/<|&#?\w+;/,db=/<(?:script|style|link)/i,eb=/checked\s*(?:[^=]|=\s*.checked.)/i,fb=/^$|\/(?:java|ecma)script/i,gb=/^true\/(.*)/,hb=/^\s*\s*$/g,ib={option:[1,""],thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};ib.optgroup=ib.option,ib.tbody=ib.tfoot=ib.colgroup=ib.caption=ib.thead,ib.th=ib.td;function jb(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function kb(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function lb(a){var b=gb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function mb(a,b){for(var c=0,d=a.length;d>c;c++)L.set(a[c],"globalEval",!b||L.get(b[c],"globalEval"))}function nb(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(L.hasData(a)&&(f=L.access(a),g=L.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)n.event.add(b,e,j[e][c])}M.hasData(a)&&(h=M.access(a),i=n.extend({},h),M.set(b,i))}}function ob(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function pb(a,b){var c=b.nodeName.toLowerCase();"input"===c&&T.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}n.extend({clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=n.contains(a.ownerDocument,a);if(!(k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(g=ob(h),f=ob(a),d=0,e=f.length;e>d;d++)pb(f[d],g[d]);if(b)if(c)for(f=f||ob(a),g=g||ob(h),d=0,e=f.length;e>d;d++)nb(f[d],g[d]);else nb(a,h);return g=ob(h,"script"),g.length>0&&mb(g,!i&&ob(a,"script")),h},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,k=b.createDocumentFragment(),l=[],m=0,o=a.length;o>m;m++)if(e=a[m],e||0===e)if("object"===n.type(e))n.merge(l,e.nodeType?[e]:e);else if(cb.test(e)){f=f||k.appendChild(b.createElement("div")),g=(bb.exec(e)||["",""])[1].toLowerCase(),h=ib[g]||ib._default,f.innerHTML=h[1]+e.replace(ab,"<$1>")+h[2],j=h[0];while(j--)f=f.lastChild;n.merge(l,f.childNodes),f=k.firstChild,f.textContent=""}else l.push(b.createTextNode(e));k.textContent="",m=0;while(e=l[m++])if((!d||-1===n.inArray(e,d))&&(i=n.contains(e.ownerDocument,e),f=ob(k.appendChild(e),"script"),i&&mb(f),c)){j=0;while(e=f[j++])fb.test(e.type||"")&&c.push(e)}return k},cleanData:function(a){for(var b,c,d,e,f=n.event.special,g=0;void 0!==(c=a[g]);g++){if(n.acceptData(c)&&(e=c[L.expando],e&&(b=L.cache[e]))){if(b.events)for(d in b.events)f[d]?n.event.remove(c,d):n.removeEvent(c,d,b.handle);L.cache[e]&&delete L.cache[e]}delete M.cache[c[M.expando]]}}}),n.fn.extend({text:function(a){return J(this,function(a){return void 0===a?n.text(this):this.empty().each(function(){(1===this.nodeType||11===this.nodeType||9===this.nodeType)&&(this.textContent=a)})},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=jb(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=jb(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?n.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||n.cleanData(ob(c)),c.parentNode&&(b&&n.contains(c.ownerDocument,c)&&mb(ob(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(n.cleanData(ob(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return J(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!db.test(a)&&!ib[(bb.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(ab,"<$1>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(ob(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,n.cleanData(ob(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,m=this,o=l-1,p=a[0],q=n.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&eb.test(p))return this.each(function(c){var d=m.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(c=n.buildFragment(a,this[0].ownerDocument,!1,this),d=c.firstChild,1===c.childNodes.length&&(c=d),d)){for(f=n.map(ob(c,"script"),kb),g=f.length;l>j;j++)h=c,j!==o&&(h=n.clone(h,!0,!0),g&&n.merge(f,ob(h,"script"))),b.call(this[j],h,j);if(g)for(i=f[f.length-1].ownerDocument,n.map(f,lb),j=0;g>j;j++)h=f[j],fb.test(h.type||"")&&!L.access(h,"globalEval")&&n.contains(i,h)&&(h.src?n._evalUrl&&n._evalUrl(h.src):n.globalEval(h.textContent.replace(hb,"")))}return this}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=[],e=n(a),g=e.length-1,h=0;g>=h;h++)c=h===g?this:this.clone(!0),n(e[h])[b](c),f.apply(d,c.get());return this.pushStack(d)}});var qb,rb={};function sb(b,c){var d,e=n(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:n.css(e[0],"display");return e.detach(),f}function tb(a){var b=l,c=rb[a];return c||(c=sb(a,b),"none"!==c&&c||(qb=(qb||n("